From 11e6c04d7ee196c794d19ae43ad4d1ad57786d3d Mon Sep 17 00:00:00 2001
From: Bertrand Bellenot <bertrand.bellenot@cern.ch>
Date: Wed, 6 Nov 2013 11:37:46 +0100
Subject: [PATCH] From Gordon Watts: build iconv and glib (needed by gdk) from
 source

---
 graf2d/win32gdk/CMakeLists.txt                |    89 +-
 graf2d/win32gdk/Module.mk                     |    63 +-
 graf2d/win32gdk/gdk/dll/glib-1.3.dll          |   Bin 360316 -> 0 bytes
 graf2d/win32gdk/gdk/dll/iconv-1.3.dll         |   Bin 747486 -> 0 bytes
 graf2d/win32gdk/gdk/lib/glib-1.3.lib          |   Bin 402760 -> 0 bytes
 graf2d/win32gdk/gdk/src/gdk/gdkevents.c       |     4 -
 graf2d/win32gdk/gdk/src/gdk/makefile.msc      |     2 +-
 .../gdk/src/gdk/win32/gdkcolor-win32.c        |    10 -
 .../win32gdk/gdk/src/gdk/win32/gdkdnd-win32.c |     3 +-
 .../gdk/src/gdk/win32/gdkdrawable-win32.c     |     3 +-
 .../gdk/src/gdk/win32/gdkevents-win32.c       |    17 +-
 .../gdk/src/gdk/win32/gdkfont-win32.c         |    10 +-
 .../win32gdk/gdk/src/gdk/win32/gdkim-win32.c  |     1 -
 .../gdk/src/gdk/win32/gdkmain-win32.c         |     1 -
 .../gdk/src/gdk/win32/gdkpixmap-win32.c       |     2 +-
 .../gdk/src/gdk/win32/gdkproperty-win32.c     |     2 +-
 .../gdk/src/gdk/win32/gdkregion-win32.c       |     1 -
 .../gdk/src/gdk/win32/gdkselection-win32.c    |     1 -
 .../gdk/src/gdk/win32/gdkwindow-win32.c       |     7 -
 graf2d/win32gdk/gdk/src/glib/config.h         |   182 +
 graf2d/win32gdk/gdk/src/glib/config.h.win32   |   182 +
 graf2d/win32gdk/gdk/src/glib/galloca.h        |     2 +-
 graf2d/win32gdk/gdk/src/glib/garray.c         |   670 +
 graf2d/win32gdk/gdk/src/glib/garray.h         |    14 +-
 graf2d/win32gdk/gdk/src/glib/gasyncqueue.c    |   443 +
 graf2d/win32gdk/gdk/src/glib/gasyncqueue.h    |     2 +-
 graf2d/win32gdk/gdk/src/glib/gbacktrace.c     |   300 +
 graf2d/win32gdk/gdk/src/glib/gbacktrace.h     |     2 +-
 graf2d/win32gdk/gdk/src/glib/gbsearcharray.c  |   213 +
 graf2d/win32gdk/gdk/src/glib/gbsearcharray.h  |   148 +
 graf2d/win32gdk/gdk/src/glib/gcache.c         |   212 +
 graf2d/win32gdk/gdk/src/glib/gcache.h         |     2 +-
 graf2d/win32gdk/gdk/src/glib/gcompletion.c    |   294 +
 graf2d/win32gdk/gdk/src/glib/gcompletion.h    |    10 +-
 graf2d/win32gdk/gdk/src/glib/gconvert.c       |  1321 ++
 graf2d/win32gdk/gdk/src/glib/gconvert.h       |    64 +-
 graf2d/win32gdk/gdk/src/glib/gdataset.c       |   631 +
 graf2d/win32gdk/gdk/src/glib/gdataset.h       |     2 +-
 graf2d/win32gdk/gdk/src/glib/gdate.c          |  1445 ++
 graf2d/win32gdk/gdk/src/glib/gdate.h          |    60 +-
 graf2d/win32gdk/gdk/src/glib/gerror.c         |   254 +
 graf2d/win32gdk/gdk/src/glib/gerror.h         |     2 +-
 graf2d/win32gdk/gdk/src/glib/gfileutils.c     |   820 +
 graf2d/win32gdk/gdk/src/glib/gfileutils.h     |    10 +-
 graf2d/win32gdk/gdk/src/glib/ghash.c          |   696 +
 graf2d/win32gdk/gdk/src/glib/ghash.h          |    90 +-
 graf2d/win32gdk/gdk/src/glib/ghook.c          |   640 +
 graf2d/win32gdk/gdk/src/glib/ghook.h          |    74 +-
 graf2d/win32gdk/gdk/src/glib/giochannel.c     |  2256 +++
 graf2d/win32gdk/gdk/src/glib/giochannel.h     |   269 +-
 graf2d/win32gdk/gdk/src/glib/giounix.c        |   583 +
 graf2d/win32gdk/gdk/src/glib/giowin32.c       |  1463 ++
 graf2d/win32gdk/gdk/src/glib/glib-object.h    |     3 +-
 graf2d/win32gdk/gdk/src/glib/glib.def         |   703 +
 graf2d/win32gdk/gdk/src/glib/glib.h           |    86 +-
 graf2d/win32gdk/gdk/src/glib/glib.rc          |    30 +
 .../win32gdk/gdk/src/glib/glibconfig-bogus.h  |   202 +
 graf2d/win32gdk/gdk/src/glib/glibconfig.h     |   175 +-
 .../win32gdk/gdk/src/glib/glibconfig.h.win32  |   169 +
 graf2d/win32gdk/gdk/src/glib/glibintl.h       |    28 +
 graf2d/win32gdk/gdk/src/glib/glist.c          |   876 +
 graf2d/win32gdk/gdk/src/glib/glist.h          |    13 +-
 graf2d/win32gdk/gdk/src/glib/gmacros.h        |    12 +
 graf2d/win32gdk/gdk/src/glib/gmain.c          |  3203 ++++
 graf2d/win32gdk/gdk/src/glib/gmain.h          |    50 +-
 graf2d/win32gdk/gdk/src/glib/gmarkup.c        |  1735 ++
 graf2d/win32gdk/gdk/src/glib/gmarkup.h        |    20 +-
 graf2d/win32gdk/gdk/src/glib/gmem.c           |  1262 ++
 graf2d/win32gdk/gdk/src/glib/gmem.h           |   154 +-
 graf2d/win32gdk/gdk/src/glib/gmessages.c      |  1185 ++
 graf2d/win32gdk/gdk/src/glib/gmessages.h      |    30 +-
 graf2d/win32gdk/gdk/src/glib/gnode.c          |  1064 ++
 graf2d/win32gdk/gdk/src/glib/gnode.h          |     4 +-
 graf2d/win32gdk/gdk/src/glib/gobject/gtype.h  |   401 +
 graf2d/win32gdk/gdk/src/glib/gpattern.c       |   300 +
 graf2d/win32gdk/gdk/src/glib/gpattern.h       |    58 +
 graf2d/win32gdk/gdk/src/glib/gprimes.c        |    83 +
 graf2d/win32gdk/gdk/src/glib/gprimes.h        |     2 +-
 graf2d/win32gdk/gdk/src/glib/gqsort.c         |   282 +
 graf2d/win32gdk/gdk/src/glib/gqsort.h         |     4 +-
 graf2d/win32gdk/gdk/src/glib/gquark.h         |    10 +-
 graf2d/win32gdk/gdk/src/glib/gqueue.c         |   263 +
 graf2d/win32gdk/gdk/src/glib/gqueue.h         |     2 +-
 graf2d/win32gdk/gdk/src/glib/grand.c          |   403 +
 graf2d/win32gdk/gdk/src/glib/grand.h          |     6 +-
 graf2d/win32gdk/gdk/src/glib/grel.c           |   449 +
 graf2d/win32gdk/gdk/src/glib/grel.h           |     2 +-
 graf2d/win32gdk/gdk/src/glib/gscanner.c       |  1707 ++
 graf2d/win32gdk/gdk/src/glib/gscanner.h       |    17 +-
 graf2d/win32gdk/gdk/src/glib/gshell.c         |   658 +
 graf2d/win32gdk/gdk/src/glib/gshell.h         |     2 +-
 graf2d/win32gdk/gdk/src/glib/gslist.c         |   767 +
 graf2d/win32gdk/gdk/src/glib/gslist.h         |     8 +-
 .../gdk/src/glib/gspawn-win32-helper.c        |   231 +
 graf2d/win32gdk/gdk/src/glib/gspawn-win32.c   |   984 +
 graf2d/win32gdk/gdk/src/glib/gspawn.c         |  1404 ++
 graf2d/win32gdk/gdk/src/glib/gspawn.h         |    13 +-
 graf2d/win32gdk/gdk/src/glib/gstrfuncs.c      |  1428 ++
 graf2d/win32gdk/gdk/src/glib/gstrfuncs.h      |   192 +-
 graf2d/win32gdk/gdk/src/glib/gstring.c        |   750 +
 graf2d/win32gdk/gdk/src/glib/gstring.h        |    65 +-
 graf2d/win32gdk/gdk/src/glib/gthread.c        |   823 +
 graf2d/win32gdk/gdk/src/glib/gthread.h        |   124 +-
 graf2d/win32gdk/gdk/src/glib/gthreadpool.c    |   678 +
 graf2d/win32gdk/gdk/src/glib/gthreadpool.h    |    26 +-
 graf2d/win32gdk/gdk/src/glib/gtimer.c         |   261 +
 graf2d/win32gdk/gdk/src/glib/gtimer.h         |    20 +-
 graf2d/win32gdk/gdk/src/glib/gtree.c          |  1066 ++
 graf2d/win32gdk/gdk/src/glib/gtree.h          |    66 +-
 graf2d/win32gdk/gdk/src/glib/gtypes.h         |   350 +
 graf2d/win32gdk/gdk/src/glib/gunibreak.c      |    55 +
 graf2d/win32gdk/gdk/src/glib/gunibreak.h      |  2815 +--
 graf2d/win32gdk/gdk/src/glib/gunichartables.h |   372 +-
 graf2d/win32gdk/gdk/src/glib/gunicode.h       |   137 +-
 graf2d/win32gdk/gdk/src/glib/gunicollate.c    |   235 +
 graf2d/win32gdk/gdk/src/glib/gunicomp.h       |   667 +
 graf2d/win32gdk/gdk/src/glib/gunidecomp.c     |   413 +
 graf2d/win32gdk/gdk/src/glib/gunidecomp.h     |  4798 +++--
 graf2d/win32gdk/gdk/src/glib/guniprop.c       |   912 +
 graf2d/win32gdk/gdk/src/glib/gutf8.c          |  1523 ++
 graf2d/win32gdk/gdk/src/glib/gutils.c         |  1136 ++
 graf2d/win32gdk/gdk/src/glib/gutils.h         |    95 +-
 graf2d/win32gdk/gdk/src/glib/gwin32.c         |   837 +
 graf2d/win32gdk/gdk/src/glib/gwin32.h         |    25 +-
 graf2d/win32gdk/gdk/src/glib/makefile.msc     |   133 +
 graf2d/win32gdk/gdk/src/iconv/aliases.h       |  1714 ++
 graf2d/win32gdk/gdk/src/iconv/aliases2.h      |    40 +
 graf2d/win32gdk/gdk/src/iconv/aliases_aix.h   |    18 +
 .../gdk/src/iconv/aliases_aix_sysaix.h        |    24 +
 graf2d/win32gdk/gdk/src/iconv/aliases_dos.h   |    48 +
 graf2d/win32gdk/gdk/src/iconv/aliases_extra.h |    12 +
 graf2d/win32gdk/gdk/src/iconv/aliases_osf1.h  |     2 +
 .../gdk/src/iconv/aliases_osf1_sysosf1.h      |     4 +
 .../win32gdk/gdk/src/iconv/aliases_sysaix.h   |  1765 ++
 .../win32gdk/gdk/src/iconv/aliases_syshpux.h  |  1769 ++
 .../win32gdk/gdk/src/iconv/aliases_sysosf1.h  |  1735 ++
 .../gdk/src/iconv/aliases_syssolaris.h        |  1753 ++
 graf2d/win32gdk/gdk/src/iconv/armscii_8.h     |   116 +
 graf2d/win32gdk/gdk/src/iconv/ascii.h         |    44 +
 graf2d/win32gdk/gdk/src/iconv/atarist.h       |   158 +
 graf2d/win32gdk/gdk/src/iconv/big5.h          |  4160 +++++
 graf2d/win32gdk/gdk/src/iconv/big5_2003.h     |   476 +
 graf2d/win32gdk/gdk/src/iconv/big5hkscs1999.h |   197 +
 graf2d/win32gdk/gdk/src/iconv/big5hkscs2001.h |   215 +
 graf2d/win32gdk/gdk/src/iconv/big5hkscs2004.h |   231 +
 graf2d/win32gdk/gdk/src/iconv/c99.h           |   125 +
 graf2d/win32gdk/gdk/src/iconv/canonical.h     |   109 +
 graf2d/win32gdk/gdk/src/iconv/canonical_aix.h |     9 +
 .../gdk/src/iconv/canonical_aix_sysaix.h      |     9 +
 graf2d/win32gdk/gdk/src/iconv/canonical_dos.h |    15 +
 .../win32gdk/gdk/src/iconv/canonical_extra.h  |     7 +
 .../win32gdk/gdk/src/iconv/canonical_local.h  |     2 +
 .../gdk/src/iconv/canonical_local_sysaix.h    |     2 +
 .../gdk/src/iconv/canonical_local_syshpux.h   |     2 +
 .../gdk/src/iconv/canonical_local_sysosf1.h   |     2 +
 .../src/iconv/canonical_local_syssolaris.h    |     2 +
 .../win32gdk/gdk/src/iconv/canonical_osf1.h   |     2 +
 .../gdk/src/iconv/canonical_osf1_sysosf1.h    |     2 +
 .../win32gdk/gdk/src/iconv/canonical_sysaix.h |   109 +
 .../gdk/src/iconv/canonical_syshpux.h         |   109 +
 .../gdk/src/iconv/canonical_sysosf1.h         |   109 +
 .../gdk/src/iconv/canonical_syssolaris.h      |   109 +
 graf2d/win32gdk/gdk/src/iconv/ces_big5.h      |    70 +
 graf2d/win32gdk/gdk/src/iconv/ces_gbk.h       |    65 +
 graf2d/win32gdk/gdk/src/iconv/cjk_variants.h  |  4241 +++++
 graf2d/win32gdk/gdk/src/iconv/cns11643.h      |    41 +
 graf2d/win32gdk/gdk/src/iconv/cns11643_1.h    |   893 +
 graf2d/win32gdk/gdk/src/iconv/cns11643_15.h   |  1083 ++
 graf2d/win32gdk/gdk/src/iconv/cns11643_2.h    |  1112 ++
 graf2d/win32gdk/gdk/src/iconv/cns11643_3.h    |   974 +
 graf2d/win32gdk/gdk/src/iconv/cns11643_4.h    |    61 +
 graf2d/win32gdk/gdk/src/iconv/cns11643_4a.h   |   460 +
 graf2d/win32gdk/gdk/src/iconv/cns11643_4b.h   |   668 +
 graf2d/win32gdk/gdk/src/iconv/cns11643_5.h    |  1278 ++
 graf2d/win32gdk/gdk/src/iconv/cns11643_6.h    |   968 +
 graf2d/win32gdk/gdk/src/iconv/cns11643_7.h    |   988 +
 graf2d/win32gdk/gdk/src/iconv/cns11643_inv.h  | 15412 ++++++++++++++++
 graf2d/win32gdk/gdk/src/iconv/config.h        |   458 +
 graf2d/win32gdk/gdk/src/iconv/converters.h    |   297 +
 graf2d/win32gdk/gdk/src/iconv/cp1046.h        |   157 +
 graf2d/win32gdk/gdk/src/iconv/cp1124.h        |   102 +
 graf2d/win32gdk/gdk/src/iconv/cp1125.h        |   129 +
 graf2d/win32gdk/gdk/src/iconv/cp1129.h        |   121 +
 graf2d/win32gdk/gdk/src/iconv/cp1131.h        |   132 +
 graf2d/win32gdk/gdk/src/iconv/cp1133.h        |   110 +
 graf2d/win32gdk/gdk/src/iconv/cp1161.h        |    89 +
 graf2d/win32gdk/gdk/src/iconv/cp1162.h        |    70 +
 graf2d/win32gdk/gdk/src/iconv/cp1163.h        |    63 +
 graf2d/win32gdk/gdk/src/iconv/cp1250.h        |   139 +
 graf2d/win32gdk/gdk/src/iconv/cp1251.h        |   131 +
 graf2d/win32gdk/gdk/src/iconv/cp1252.h        |   103 +
 graf2d/win32gdk/gdk/src/iconv/cp1253.h        |   122 +
 graf2d/win32gdk/gdk/src/iconv/cp1254.h        |   146 +
 graf2d/win32gdk/gdk/src/iconv/cp1255.h        |   380 +
 graf2d/win32gdk/gdk/src/iconv/cp1256.h        |   153 +
 graf2d/win32gdk/gdk/src/iconv/cp1257.h        |   139 +
 graf2d/win32gdk/gdk/src/iconv/cp1258.h        |   288 +
 graf2d/win32gdk/gdk/src/iconv/cp437.h         |   156 +
 graf2d/win32gdk/gdk/src/iconv/cp737.h         |   141 +
 graf2d/win32gdk/gdk/src/iconv/cp775.h         |   142 +
 graf2d/win32gdk/gdk/src/iconv/cp850.h         |   124 +
 graf2d/win32gdk/gdk/src/iconv/cp852.h         |   143 +
 graf2d/win32gdk/gdk/src/iconv/cp853.h         |   151 +
 graf2d/win32gdk/gdk/src/iconv/cp855.h         |   128 +
 graf2d/win32gdk/gdk/src/iconv/cp856.h         |   134 +
 graf2d/win32gdk/gdk/src/iconv/cp857.h         |   138 +
 graf2d/win32gdk/gdk/src/iconv/cp858.h         |    61 +
 graf2d/win32gdk/gdk/src/iconv/cp860.h         |   149 +
 graf2d/win32gdk/gdk/src/iconv/cp861.h         |   156 +
 graf2d/win32gdk/gdk/src/iconv/cp862.h         |   155 +
 graf2d/win32gdk/gdk/src/iconv/cp863.h         |   156 +
 graf2d/win32gdk/gdk/src/iconv/cp864.h         |   188 +
 graf2d/win32gdk/gdk/src/iconv/cp865.h         |   156 +
 graf2d/win32gdk/gdk/src/iconv/cp866.h         |   125 +
 graf2d/win32gdk/gdk/src/iconv/cp869.h         |   137 +
 graf2d/win32gdk/gdk/src/iconv/cp874.h         |   111 +
 graf2d/win32gdk/gdk/src/iconv/cp922.h         |    99 +
 graf2d/win32gdk/gdk/src/iconv/cp932.h         |   240 +
 graf2d/win32gdk/gdk/src/iconv/cp932ext.h      |   709 +
 graf2d/win32gdk/gdk/src/iconv/cp936.h         |   126 +
 graf2d/win32gdk/gdk/src/iconv/cp936ext.h      |    99 +
 graf2d/win32gdk/gdk/src/iconv/cp943.h         |    29 +
 graf2d/win32gdk/gdk/src/iconv/cp949.h         |   128 +
 graf2d/win32gdk/gdk/src/iconv/cp950.h         |   284 +
 graf2d/win32gdk/gdk/src/iconv/cp950ext.h      |   161 +
 graf2d/win32gdk/gdk/src/iconv/dec_hanyu.h     |   115 +
 graf2d/win32gdk/gdk/src/iconv/dec_kanji.h     |    71 +
 graf2d/win32gdk/gdk/src/iconv/encodings.def   |  1025 +
 .../win32gdk/gdk/src/iconv/encodings_aix.def  |    97 +
 .../win32gdk/gdk/src/iconv/encodings_dos.def  |   127 +
 .../gdk/src/iconv/encodings_extra.def         |    57 +
 .../gdk/src/iconv/encodings_local.def         |    29 +
 .../win32gdk/gdk/src/iconv/encodings_osf1.def |    37 +
 graf2d/win32gdk/gdk/src/iconv/euc_cn.h        |    72 +
 graf2d/win32gdk/gdk/src/iconv/euc_jisx0213.h  |   268 +
 graf2d/win32gdk/gdk/src/iconv/euc_jp.h        |   191 +
 graf2d/win32gdk/gdk/src/iconv/euc_kr.h        |    74 +
 graf2d/win32gdk/gdk/src/iconv/euc_tw.h        |   116 +
 graf2d/win32gdk/gdk/src/iconv/flags.h         |   156 +
 graf2d/win32gdk/gdk/src/iconv/flushwc.h       |    37 +
 graf2d/win32gdk/gdk/src/iconv/gb12345.h       |    67 +
 graf2d/win32gdk/gdk/src/iconv/gb12345ext.h    |  1796 ++
 graf2d/win32gdk/gdk/src/iconv/gb18030.h       |   382 +
 graf2d/win32gdk/gdk/src/iconv/gb18030ext.h    |   300 +
 graf2d/win32gdk/gdk/src/iconv/gb18030uni.h    |   249 +
 graf2d/win32gdk/gdk/src/iconv/gb2312.h        |  2571 +++
 graf2d/win32gdk/gdk/src/iconv/gbk.h           |   169 +
 graf2d/win32gdk/gdk/src/iconv/gbkext1.h       |   853 +
 graf2d/win32gdk/gdk/src/iconv/gbkext2.h       |  1174 ++
 graf2d/win32gdk/gdk/src/iconv/gbkext_inv.h    |  2343 +++
 .../win32gdk/gdk/src/iconv/georgian_academy.h |   106 +
 graf2d/win32gdk/gdk/src/iconv/georgian_ps.h   |   123 +
 graf2d/win32gdk/gdk/src/iconv/hkscs1999.h     |  3005 +++
 graf2d/win32gdk/gdk/src/iconv/hkscs2001.h     |   683 +
 graf2d/win32gdk/gdk/src/iconv/hkscs2004.h     |   679 +
 graf2d/win32gdk/gdk/src/iconv/hp_roman8.h     |   119 +
 graf2d/win32gdk/gdk/src/iconv/hz.h            |   163 +
 graf2d/win32gdk/gdk/src/iconv/iconv.c         |   592 +
 graf2d/win32gdk/gdk/src/iconv/iconv.h         |   242 +
 graf2d/win32gdk/gdk/src/iconv/iconv_open1.h   |   201 +
 graf2d/win32gdk/gdk/src/iconv/iconv_open2.h   |    89 +
 graf2d/win32gdk/gdk/src/iconv/iso2022_cn.h    |   324 +
 graf2d/win32gdk/gdk/src/iconv/iso2022_cnext.h |   590 +
 graf2d/win32gdk/gdk/src/iconv/iso2022_jp.h    |   216 +
 graf2d/win32gdk/gdk/src/iconv/iso2022_jp1.h   |   264 +
 graf2d/win32gdk/gdk/src/iconv/iso2022_jp2.h   |   693 +
 graf2d/win32gdk/gdk/src/iconv/iso2022_jp3.h   |   538 +
 graf2d/win32gdk/gdk/src/iconv/iso2022_kr.h    |   222 +
 graf2d/win32gdk/gdk/src/iconv/iso646_cn.h     |    58 +
 graf2d/win32gdk/gdk/src/iconv/iso646_jp.h     |    60 +
 graf2d/win32gdk/gdk/src/iconv/iso8859_1.h     |    41 +
 graf2d/win32gdk/gdk/src/iconv/iso8859_10.h    |   106 +
 graf2d/win32gdk/gdk/src/iconv/iso8859_11.h    |    52 +
 graf2d/win32gdk/gdk/src/iconv/iso8859_13.h    |   109 +
 graf2d/win32gdk/gdk/src/iconv/iso8859_14.h    |   127 +
 graf2d/win32gdk/gdk/src/iconv/iso8859_15.h    |    81 +
 graf2d/win32gdk/gdk/src/iconv/iso8859_16.h    |   116 +
 graf2d/win32gdk/gdk/src/iconv/iso8859_2.h     |   112 +
 graf2d/win32gdk/gdk/src/iconv/iso8859_3.h     |   118 +
 graf2d/win32gdk/gdk/src/iconv/iso8859_4.h     |   112 +
 graf2d/win32gdk/gdk/src/iconv/iso8859_5.h     |    95 +
 graf2d/win32gdk/gdk/src/iconv/iso8859_6.h     |    98 +
 graf2d/win32gdk/gdk/src/iconv/iso8859_7.h     |   111 +
 graf2d/win32gdk/gdk/src/iconv/iso8859_8.h     |   107 +
 graf2d/win32gdk/gdk/src/iconv/iso8859_9.h     |    85 +
 graf2d/win32gdk/gdk/src/iconv/isoir165.h      |   159 +
 graf2d/win32gdk/gdk/src/iconv/isoir165ext.h   |   800 +
 graf2d/win32gdk/gdk/src/iconv/java.h          |   137 +
 graf2d/win32gdk/gdk/src/iconv/jisx0201.h      |    66 +
 graf2d/win32gdk/gdk/src/iconv/jisx0208.h      |  2415 +++
 graf2d/win32gdk/gdk/src/iconv/jisx0212.h      |  2189 +++
 graf2d/win32gdk/gdk/src/iconv/jisx0213.h      |  5924 ++++++
 graf2d/win32gdk/gdk/src/iconv/johab.h         |   139 +
 graf2d/win32gdk/gdk/src/iconv/johab_hangul.h  |   262 +
 graf2d/win32gdk/gdk/src/iconv/koi8_r.h        |   153 +
 graf2d/win32gdk/gdk/src/iconv/koi8_ru.h       |   159 +
 graf2d/win32gdk/gdk/src/iconv/koi8_t.h        |   143 +
 graf2d/win32gdk/gdk/src/iconv/koi8_u.h        |   161 +
 graf2d/win32gdk/gdk/src/iconv/ksc5601.h       |  3022 +++
 graf2d/win32gdk/gdk/src/iconv/libiconv.rc     |    38 +
 graf2d/win32gdk/gdk/src/iconv/localcharset.c  |   502 +
 graf2d/win32gdk/gdk/src/iconv/localcharset.h  |    49 +
 graf2d/win32gdk/gdk/src/iconv/loop_unicode.h  |   527 +
 graf2d/win32gdk/gdk/src/iconv/loop_wchar.h    |   458 +
 graf2d/win32gdk/gdk/src/iconv/loops.h         |    25 +
 graf2d/win32gdk/gdk/src/iconv/mac_arabic.h    |   132 +
 .../gdk/src/iconv/mac_centraleurope.h         |   139 +
 graf2d/win32gdk/gdk/src/iconv/mac_croatian.h  |   165 +
 graf2d/win32gdk/gdk/src/iconv/mac_cyrillic.h  |   136 +
 graf2d/win32gdk/gdk/src/iconv/mac_greek.h     |   135 +
 graf2d/win32gdk/gdk/src/iconv/mac_hebrew.h    |   132 +
 graf2d/win32gdk/gdk/src/iconv/mac_iceland.h   |   162 +
 graf2d/win32gdk/gdk/src/iconv/mac_roman.h     |   167 +
 graf2d/win32gdk/gdk/src/iconv/mac_romania.h   |   165 +
 graf2d/win32gdk/gdk/src/iconv/mac_thai.h      |   128 +
 graf2d/win32gdk/gdk/src/iconv/mac_turkish.h   |   163 +
 graf2d/win32gdk/gdk/src/iconv/mac_ukraine.h   |   143 +
 graf2d/win32gdk/gdk/src/iconv/makefile.msc    |    83 +
 graf2d/win32gdk/gdk/src/iconv/mulelao.h       |    96 +
 graf2d/win32gdk/gdk/src/iconv/nextstep.h      |   141 +
 graf2d/win32gdk/gdk/src/iconv/pt154.h         |   118 +
 graf2d/win32gdk/gdk/src/iconv/relocatable.c   |   493 +
 graf2d/win32gdk/gdk/src/iconv/relocatable.h   |    83 +
 graf2d/win32gdk/gdk/src/iconv/riscos1.h       |    96 +
 graf2d/win32gdk/gdk/src/iconv/rk1048.h        |   145 +
 .../win32gdk/gdk/src/iconv/shift_jisx0213.h   |   310 +
 graf2d/win32gdk/gdk/src/iconv/sjis.h          |   132 +
 graf2d/win32gdk/gdk/src/iconv/tcvn.h          |   291 +
 graf2d/win32gdk/gdk/src/iconv/tds565.h        |   107 +
 graf2d/win32gdk/gdk/src/iconv/tis620.h        |    52 +
 graf2d/win32gdk/gdk/src/iconv/translit.def    |  3918 ++++
 graf2d/win32gdk/gdk/src/iconv/translit.h      |  4411 +++++
 graf2d/win32gdk/gdk/src/iconv/ucs2.h          |    68 +
 graf2d/win32gdk/gdk/src/iconv/ucs2be.h        |    51 +
 graf2d/win32gdk/gdk/src/iconv/ucs2internal.h  |    51 +
 graf2d/win32gdk/gdk/src/iconv/ucs2le.h        |    51 +
 graf2d/win32gdk/gdk/src/iconv/ucs2swapped.h   |    60 +
 graf2d/win32gdk/gdk/src/iconv/ucs4.h          |    69 +
 graf2d/win32gdk/gdk/src/iconv/ucs4be.h        |    46 +
 graf2d/win32gdk/gdk/src/iconv/ucs4internal.h  |    43 +
 graf2d/win32gdk/gdk/src/iconv/ucs4le.h        |    46 +
 graf2d/win32gdk/gdk/src/iconv/ucs4swapped.h   |    53 +
 graf2d/win32gdk/gdk/src/iconv/uhc_1.h         |  1725 ++
 graf2d/win32gdk/gdk/src/iconv/uhc_2.h         |  1022 +
 graf2d/win32gdk/gdk/src/iconv/utf16.h         |   113 +
 graf2d/win32gdk/gdk/src/iconv/utf16be.h       |    80 +
 graf2d/win32gdk/gdk/src/iconv/utf16le.h       |    80 +
 graf2d/win32gdk/gdk/src/iconv/utf32.h         |    93 +
 graf2d/win32gdk/gdk/src/iconv/utf32be.h       |    55 +
 graf2d/win32gdk/gdk/src/iconv/utf32le.h       |    55 +
 graf2d/win32gdk/gdk/src/iconv/utf7.h          |   355 +
 graf2d/win32gdk/gdk/src/iconv/utf8.h          |   128 +
 graf2d/win32gdk/gdk/src/iconv/vietcomb.h      |   467 +
 graf2d/win32gdk/gdk/src/iconv/viscii.h        |   141 +
 354 files changed, 157073 insertions(+), 4171 deletions(-)
 delete mode 100755 graf2d/win32gdk/gdk/dll/glib-1.3.dll
 delete mode 100755 graf2d/win32gdk/gdk/dll/iconv-1.3.dll
 delete mode 100644 graf2d/win32gdk/gdk/lib/glib-1.3.lib
 create mode 100644 graf2d/win32gdk/gdk/src/glib/config.h
 create mode 100644 graf2d/win32gdk/gdk/src/glib/config.h.win32
 create mode 100644 graf2d/win32gdk/gdk/src/glib/garray.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gasyncqueue.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gbacktrace.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gbsearcharray.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gbsearcharray.h
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gcache.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gcompletion.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gconvert.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gdataset.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gdate.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gerror.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gfileutils.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/ghash.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/ghook.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/giochannel.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/giounix.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/giowin32.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/glib.def
 create mode 100644 graf2d/win32gdk/gdk/src/glib/glib.rc
 create mode 100644 graf2d/win32gdk/gdk/src/glib/glibconfig-bogus.h
 create mode 100644 graf2d/win32gdk/gdk/src/glib/glibconfig.h.win32
 create mode 100644 graf2d/win32gdk/gdk/src/glib/glibintl.h
 create mode 100644 graf2d/win32gdk/gdk/src/glib/glist.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gmain.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gmarkup.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gmem.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gmessages.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gnode.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gobject/gtype.h
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gpattern.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gpattern.h
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gprimes.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gqsort.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gqueue.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/grand.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/grel.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gscanner.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gshell.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gslist.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gspawn-win32-helper.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gspawn-win32.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gspawn.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gstrfuncs.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gstring.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gthread.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gthreadpool.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gtimer.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gtree.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gtypes.h
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gunibreak.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gunicollate.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gunicomp.h
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gunidecomp.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/guniprop.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gutf8.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gutils.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/gwin32.c
 create mode 100644 graf2d/win32gdk/gdk/src/glib/makefile.msc
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/aliases.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/aliases2.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/aliases_aix.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/aliases_aix_sysaix.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/aliases_dos.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/aliases_extra.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/aliases_osf1.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/aliases_osf1_sysosf1.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/aliases_sysaix.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/aliases_syshpux.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/aliases_sysosf1.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/aliases_syssolaris.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/armscii_8.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/ascii.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/atarist.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/big5.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/big5_2003.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/big5hkscs1999.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/big5hkscs2001.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/big5hkscs2004.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/c99.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/canonical.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/canonical_aix.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/canonical_aix_sysaix.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/canonical_dos.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/canonical_extra.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/canonical_local.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/canonical_local_sysaix.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/canonical_local_syshpux.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/canonical_local_sysosf1.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/canonical_local_syssolaris.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/canonical_osf1.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/canonical_osf1_sysosf1.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/canonical_sysaix.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/canonical_syshpux.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/canonical_sysosf1.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/canonical_syssolaris.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/ces_big5.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/ces_gbk.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cjk_variants.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cns11643.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cns11643_1.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cns11643_15.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cns11643_2.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cns11643_3.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cns11643_4.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cns11643_4a.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cns11643_4b.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cns11643_5.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cns11643_6.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cns11643_7.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cns11643_inv.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/config.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/converters.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp1046.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp1124.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp1125.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp1129.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp1131.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp1133.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp1161.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp1162.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp1163.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp1250.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp1251.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp1252.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp1253.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp1254.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp1255.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp1256.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp1257.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp1258.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp437.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp737.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp775.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp850.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp852.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp853.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp855.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp856.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp857.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp858.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp860.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp861.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp862.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp863.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp864.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp865.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp866.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp869.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp874.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp922.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp932.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp932ext.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp936.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp936ext.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp943.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp949.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp950.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/cp950ext.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/dec_hanyu.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/dec_kanji.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/encodings.def
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/encodings_aix.def
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/encodings_dos.def
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/encodings_extra.def
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/encodings_local.def
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/encodings_osf1.def
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/euc_cn.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/euc_jisx0213.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/euc_jp.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/euc_kr.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/euc_tw.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/flags.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/flushwc.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/gb12345.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/gb12345ext.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/gb18030.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/gb18030ext.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/gb18030uni.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/gb2312.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/gbk.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/gbkext1.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/gbkext2.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/gbkext_inv.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/georgian_academy.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/georgian_ps.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/hkscs1999.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/hkscs2001.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/hkscs2004.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/hp_roman8.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/hz.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iconv.c
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iconv.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iconv_open1.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iconv_open2.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso2022_cn.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso2022_cnext.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso2022_jp.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso2022_jp1.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso2022_jp2.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso2022_jp3.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso2022_kr.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso646_cn.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso646_jp.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso8859_1.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso8859_10.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso8859_11.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso8859_13.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso8859_14.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso8859_15.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso8859_16.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso8859_2.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso8859_3.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso8859_4.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso8859_5.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso8859_6.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso8859_7.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso8859_8.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/iso8859_9.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/isoir165.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/isoir165ext.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/java.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/jisx0201.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/jisx0208.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/jisx0212.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/jisx0213.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/johab.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/johab_hangul.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/koi8_r.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/koi8_ru.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/koi8_t.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/koi8_u.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/ksc5601.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/libiconv.rc
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/localcharset.c
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/localcharset.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/loop_unicode.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/loop_wchar.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/loops.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/mac_arabic.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/mac_centraleurope.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/mac_croatian.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/mac_cyrillic.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/mac_greek.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/mac_hebrew.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/mac_iceland.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/mac_roman.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/mac_romania.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/mac_thai.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/mac_turkish.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/mac_ukraine.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/makefile.msc
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/mulelao.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/nextstep.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/pt154.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/relocatable.c
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/relocatable.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/riscos1.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/rk1048.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/shift_jisx0213.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/sjis.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/tcvn.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/tds565.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/tis620.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/translit.def
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/translit.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/ucs2.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/ucs2be.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/ucs2internal.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/ucs2le.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/ucs2swapped.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/ucs4.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/ucs4be.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/ucs4internal.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/ucs4le.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/ucs4swapped.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/uhc_1.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/uhc_2.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/utf16.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/utf16be.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/utf16le.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/utf32.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/utf32be.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/utf32le.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/utf7.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/utf8.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/vietcomb.h
 create mode 100644 graf2d/win32gdk/gdk/src/iconv/viscii.h

diff --git a/graf2d/win32gdk/CMakeLists.txt b/graf2d/win32gdk/CMakeLists.txt
index 409f97726a0..c3affb78b1e 100644
--- a/graf2d/win32gdk/CMakeLists.txt
+++ b/graf2d/win32gdk/CMakeLists.txt
@@ -4,52 +4,107 @@
 ############################################################################
 ROOT_USE_PACKAGE(gui/gui)
 include_directories(${FREETYPE_INCLUDE_DIRS} ${CMAKE_CURRENT_SOURCE_DIR}/gdk/src 
-                    ${CMAKE_CURRENT_SOURCE_DIR}/gdk/src/gdk ${CMAKE_CURRENT_SOURCE_DIR}/gdk/src/glib)
+					${CMAKE_CURRENT_SOURCE_DIR}/gdk/src/gdk
+					${CMAKE_CURRENT_BINARY_DIR}/gdk/src/glib)
+
+set(iconvlib  ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/iconv-1.3.lib)
+set(iconvdll  ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${CMAKE_CFG_INTDIR}/iconv-1.3.dll)
+set(iconvliba ${CMAKE_CURRENT_BINARY_DIR}/gdk/src/iconv/iconv-1.3.lib)
+set(iconvdlla ${CMAKE_CURRENT_BINARY_DIR}/gdk/src/iconv/iconv-1.3.dll)
+
+set(gliblib  ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/glib-1.3.lib)
+set(glibdll  ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${CMAKE_CFG_INTDIR}/glib-1.3.dll)
+set(glibliba ${CMAKE_CURRENT_BINARY_DIR}/gdk/src/glib/glib-1.3.lib)
+set(glibdlla ${CMAKE_CURRENT_BINARY_DIR}/gdk/src/glib/glib-1.3.dll)
 
 set(gdklib   ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/gdk-1.3.lib)
-set(glib     ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/glib-1.3.lib)
 set(gdkdll   ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${CMAKE_CFG_INTDIR}/gdk-1.3.dll)
 set(gdkliba  ${CMAKE_CURRENT_BINARY_DIR}/gdk/src/gdk/gdk-1.3.lib)
 set(gdkdlla  ${CMAKE_CURRENT_BINARY_DIR}/gdk/src/gdk/gdk-1.3.dll)
+
 if(winrtdebug)
   set(nmcxxflags "${CMAKE_CXX_FLAGS}" DEBUG=1)
 else()
   set(nmcxxflags "${CMAKE_CXX_FLAGS}")
 endif()
 
+# Build iconv
+
+add_custom_command( OUTPUT ${iconvliba} ${iconvdlla}
+					COMMAND cmake -E copy_directory ${CMAKE_CURRENT_SOURCE_DIR}/gdk gdk
+					COMMAND echo "*** Building ${iconvliba}"
+					COMMAND cmake -E chdir gdk/src/iconv 
+							nmake -nologo -f makefile.msc NMCXXFLAGS=${nmcxxflags} VC_MAJOR=${VC_MAJOR}
+				  )
+
+add_custom_command( OUTPUT ${iconvlib} ${iconvdll}
+					COMMAND cmake -E copy_if_different ${iconvliba} ${iconvlib}
+					COMMAND cmake -E copy_if_different ${iconvdlla} ${iconvdll}
+					DEPENDS ${iconvliba} ${iconvdlla}
+				  )
+
+add_custom_target(iconv DEPENDS ${iconvlib})
+set_target_properties(iconv PROPERTIES FOLDER Builtins)
+
+# Build glib
+
+add_custom_command( OUTPUT ${glibliba} ${glibdlla}
+					COMMAND echo "*** Building ${glibliba}"
+					COMMAND cmake -E chdir gdk/src/glib 
+							nmake -nologo -f makefile.msc NMCXXFLAGS=${nmcxxflags} VC_MAJOR=${VC_MAJOR}
+					DEPENDS iconv
+				  )
+
+add_custom_command( OUTPUT ${gliblib} ${glibdll}
+					COMMAND cmake -E copy_if_different ${glibliba} ${gliblib}
+					COMMAND cmake -E copy_if_different ${glibdlla} ${glibdll}
+					DEPENDS ${glibliba} ${glibdlla})
+
+add_custom_target(glib DEPENDS ${gliblib})
+set_target_properties(glib PROPERTIES FOLDER Builtins)
+
+# Build gdk
+
 add_custom_command( OUTPUT ${gdkliba}
-                    COMMAND cmake -E copy_directory ${CMAKE_CURRENT_SOURCE_DIR}/gdk gdk
-					COMMAND cmake -E copy_if_different gdk/lib/glib-1.3.lib ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
-					COMMAND cmake -E copy_if_different gdk/dll/glib-1.3.dll ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${CMAKE_CFG_INTDIR}
-					COMMAND cmake -E copy_if_different gdk/dll/iconv-1.3.dll ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${CMAKE_CFG_INTDIR}
 					COMMAND echo "*** Building ${gdkliba}"
-		            COMMAND cmake -E chdir gdk/src/gdk/win32 
-					        nmake -nologo -f makefile.msc NMCXXFLAGS=${nmcxxflags} VC_MAJOR=${VC_MAJOR}
-		            COMMAND cmake -E chdir gdk/src/gdk 
-					        nmake -nologo -f makefile.msc NMCXXFLAGS=${nmcxxflags} VC_MAJOR=${VC_MAJOR}
+					COMMAND cmake -E chdir gdk/src/gdk/win32 
+							nmake -nologo -f makefile.msc NMCXXFLAGS=${nmcxxflags} VC_MAJOR=${VC_MAJOR}
+					COMMAND cmake -E chdir gdk/src/gdk 
+							nmake -nologo -f makefile.msc NMCXXFLAGS=${nmcxxflags} VC_MAJOR=${VC_MAJOR}
+					DEPENDS glib
 				  )
 
 add_custom_command( OUTPUT ${gdklib} ${gdkdll}
-                    COMMAND cmake -E copy_if_different ${gdkliba} ${gdklib}
+					COMMAND cmake -E copy_if_different ${gdkliba} ${gdklib}
 					COMMAND cmake -E copy_if_different ${gdkdlla} ${gdkdll}
 					DEPENDS ${gdkliba} )
 
 add_custom_target(GDKLIB DEPENDS ${gdklib})
 set_target_properties(GDKLIB PROPERTIES FOLDER Builtins)
 
+#
+# ROOT Dicts for the win32gdk library
+#
+
 ROOT_GENERATE_DICTIONARY(G__Win32gdk TGWin32.h TGWin32GL.h LINKDEF LinkDef.h)
 ROOT_GENERATE_ROOTMAP(Win32gdk LINKDEF LinkDef.h DEPENDENCIES)
 
-ROOT_LINKER_LIBRARY(Win32gdk *.cxx *.c G__Win32gdk.cxx LIBRARIES Core Graf ${FREETYPE_LIBRARIES} 
-                    ${gdklib} ${glib} Glu32.lib Opengl32.lib)
-add_dependencies(Win32gdk GDKLIB)
+#
+# The library itself
+#
+
+ROOT_LINKER_LIBRARY(Win32gdk *.cxx *.c G__Win32gdk.cxx LIBRARIES Cint Core Graf ${FREETYPE_LIBRARIES} 
+					${gdklib} ${gliblib} Glu32.lib Opengl32.lib)
+
+add_dependencies(Win32gdk GDKLIB glib)
+
 if(builtin_freetype)
   add_dependencies(Win32gdk FREETYPE)
 endif()
 					
 install(FILES  ${gdkdlla}
-               gdk/dll/glib-1.3.dll
-               gdk/dll/iconv-1.3.dll
-               DESTINATION bin)
+			   ${glibdlla}
+			   ${iconvdlla}
+			   DESTINATION bin)
 
 ROOT_INSTALL_HEADERS()
diff --git a/graf2d/win32gdk/Module.mk b/graf2d/win32gdk/Module.mk
index 4c5cfdd9177..d1e96810ac1 100644
--- a/graf2d/win32gdk/Module.mk
+++ b/graf2d/win32gdk/Module.mk
@@ -15,7 +15,32 @@ WIN32GDKDIRI := $(WIN32GDKDIR)/inc
 GDKVERS      := gdk/src
 GDKDIRS      := $(MODDIR)/$(GDKVERS)/gdk
 GDKDIRI      := $(MODDIR)/$(GDKVERS)/gdk
+GLIBDIR      := $(MODDIR)/$(GDKVERS)/glib
 GLIBDIRI     := $(MODDIR)/$(GDKVERS)/glib
+ICONVDIR     := $(MODDIR)/$(GDKVERS)/iconv
+
+##### iconv-1.3.dll #####
+ICONVDLLA    := $(call stripsrc,$(ICONVDIR))/iconv-1.3.dll
+ICONVLIBA    := $(call stripsrc,$(ICONVDIR))/iconv-1.3.lib
+ICONVDLL     := bin/iconv-1.3.dll
+ICONVSRC     := $(wildcard $(ICONVDIR)/*.c)
+
+ICONVNMCXXFLAGS:= "$(OPT) $(BLDCXXFLAGS) -FI$(shell cygpath -w '$(ROOT_SRCDIR)/build/win/w32pragma.h')"
+ifeq (yes,$(WINRTDEBUG))
+ICONVNMCXXFLAGS += DEBUG=1
+endif
+
+##### glib-1.3.dll #####
+GLIBDLLA    := $(call stripsrc,$(GLIBDIR))/glib-1.3.dll
+GLIBLIBA    := $(call stripsrc,$(GLIBDIR))/glib-1.3.lib
+GLIBDLL     := bin/glib-1.3.dll
+GLIBLIB     := $(LPATH)/glib-1.3.lib
+GLIBSRC     := $(wildcard $(GLIBDIR)/*.c)
+
+GLIBNMCXXFLAGS:= "$(OPT) $(BLDCXXFLAGS) -FI$(shell cygpath -w '$(ROOT_SRCDIR)/build/win/w32pragma.h')"
+ifeq (yes,$(WINRTDEBUG))
+GLIBNMCXXFLAGS += DEBUG=1
+endif
 
 ##### gdk-1.3.dll #####
 GDKDLLA      := $(call stripsrc,$(GDKDIRS)/gdk-1.3.dll)
@@ -49,8 +74,8 @@ WIN32GDKLIB  := $(LPATH)/libWin32gdk.$(SOEXT)
 WIN32GDKMAP  := $(WIN32GDKLIB:.$(SOEXT)=.rootmap)
 
 # GDK libraries and DLL's
-GDKLIBS      := lib/glib-1.3.lib
-GDKDLLS      := bin/glib-1.3.dll bin/iconv-1.3.dll
+GDKLIBS      := $(GLIBLIB)
+GDKDLLS      := $(GLIBDLL) $(ICONVDLL)
 
 # used in the main Makefile
 ALLHDRS     += $(patsubst $(MODDIRI)/%.h,include/%.h,$(WIN32GDKH))
@@ -66,23 +91,47 @@ INCLUDEFILES += $(WIN32GDKDEP)
 include/%.h:    $(WIN32GDKDIRI)/%.h
 		cp $< $@
 
-lib/%.lib:      $(WIN32GDKDIR)/gdk/lib/%.lib
-		cp $< $@
+$(ICONVLIBA):     $(ICONVSRC)
+		$(MAKEDIR)
+ifneq ($(ROOT_OBJDIR),$(ROOT_SRCDIR))
+		@$(RSYNC) --exclude '.svn' --exclude '*.o' --exclude '*.lib' --exclude '*.dll' $(ICONVDIR) $(dir $(call stripsrc,$(ICONVDIR)))
+endif
+		@(echo "*** Building $@..."; \
+		  unset MAKEFLAGS; \
+		  cd $(call stripsrc,$(ICONVDIR)); \
+		  nmake -nologo -f makefile.msc \
+		  NMCXXFLAGS=$(ICONVNMCXXFLAGS) VC_MAJOR=$(VC_MAJOR));
+
+$(GLIBLIBA):     $(GLIBSRC) $(ICONVLIBA)
+		$(MAKEDIR)
+ifneq ($(ROOT_OBJDIR),$(ROOT_SRCDIR))
+		@$(RSYNC) --exclude '.svn' --exclude '*.o' --exclude '*.lib' --exclude '*.dll' $(GLIBDIR) $(dir $(call stripsrc,$(GLIBDIR)))
+endif
+		@(echo "*** Building $@..."; \
+		  unset MAKEFLAGS; \
+		  cd $(call stripsrc,$(GLIBDIR)); \
+		  nmake -nologo -f makefile.msc \
+		  NMCXXFLAGS=$(GLIBNMCXXFLAGS) VC_MAJOR=$(VC_MAJOR));
+
+$(ICONVDLL):      $(ICONVLIBA)
+		cp $(ICONVDLLA) $@
 
-bin/%.dll:      $(WIN32GDKDIR)/gdk/dll/%.dll
+$(GLIBLIB):      $(GLIBLIBA)
 		cp $< $@
 
+$(GLIBDLL):      $(GLIBLIBA)
+		cp $(GLIBDLLA) $@
+
 $(GDKLIB):      $(GDKLIBA)
 		cp $< $@
 
 $(GDKDLL):      $(GDKLIBA)
 		cp $(GDKDLLA) $@
 
-$(GDKLIBA):     $(GDKSRC)
+$(GDKLIBA):     $(GDKSRC) $(GLIBLIB)
 		$(MAKEDIR)
 ifneq ($(ROOT_OBJDIR),$(ROOT_SRCDIR))
 		@$(RSYNC) --exclude '.svn' --exclude '*.o' --exclude '*.lib' --exclude '*.dll' $(GDKDIRS) $(dir $(call stripsrc,$(GDKDIRS)))
-		@$(RSYNC) --exclude '.svn' $(WIN32GDKDIR)/gdk/lib $(call stripsrc,$(WIN32GDKDIR)/gdk)
 endif
 		@(echo "*** Building $@..."; \
 		  unset MAKEFLAGS; \
diff --git a/graf2d/win32gdk/gdk/dll/glib-1.3.dll b/graf2d/win32gdk/gdk/dll/glib-1.3.dll
deleted file mode 100755
index b3d65ec5007b1d03e4e7dc48a16b645388a0cf7c..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 360316
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

diff --git a/graf2d/win32gdk/gdk/dll/iconv-1.3.dll b/graf2d/win32gdk/gdk/dll/iconv-1.3.dll
deleted file mode 100755
index 4463871dc6aae7435ca74b922d3d554d98c2d003..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 747486
zcmeZ`n!v!!z`(%5z`*eTKLf)K1_*F~P<Y7(1_lN``CWVrTR6`u?qKves~D1zS*%b{
zl%HOdn5&SSn3tDdqL7rTP*j?ykeR38;vcM#o1c=Z$IHv50yR0nm4U&Bk)7eG#XU;~
zCT<3HW(I}_3~Y+rj7;VXn>ZL4)SwCl7#J8p_y7k;Kmg2Ug1DOz>VA*}LjX5Kkbwd0
zF9rq%Ca_u%0n!gOhT#GS!xWH)2OJD%Kr}A=frBAO4woeP;(8^i6(tM|3?=J1ApY9G
z0e3gdR0Rfx1ih5Rl0*gu1__WL$nQ)H3=CVqVE_^VV+RI?1A3_tg<wBj-~joWfnghl
zItRT>h&r&JA3)XZz)*KUuP8MqKbZmI_YWKl3<?Yk47)JY1?d%+BqlL1Fen^gWMB~B
zWMDYN$iQ$5RUH!(14LbMNs&(~0|UbYE(V4)1_p*XTwwRZ2#`7$dz7Y62!wV%ZGIyV
z7Tg`n)BKyUl=a2`bsP-MNB;aT6$t)c%JCv)9S1|_vF0Nzt+z{AUnGHeA9_<?M8};x
z#KX{A#t_>1)bPN`!yvl(jYPMrK$k#A=>LY={|q$(-L5?R+d}_$3hV&o(AO-62VOIr
zJly#WWM{2FeK~)(D^FLbKnFJYH!8s>hRLHE_VNrf1H;SX%nS^@TfikmL+$^A<vfN5
zUTy|StYc<iXsG>vzdWkBR)n#hYsdfp|Np<7!OXzW?JD5VCD8Dxq2ZT(8JFRKm(3tE
z${4^-`QPwJo`2h^&Qk{;v32_jICe=kd~V?1cDnO2=jl#~9iXiDG8kmOAH@9k{OzFp
z)?6#XRL=*o!vthpi5iMM<x1VI0?h}QVD^>^HPrrpP%aE|OM}JyGUnGD6ATZ${K*7z
z9#2>3|At5WP-pO<IOFue$84Opx_t$j4>F;-4OE7|+|I<n@NyFq14HMxhT8w%`P+9g
zFfcUNiZIs;KwLMCiGiVa8z^Og?1sC?2+e&E_cFufLGJwkb8kP)y`D(!Wrw;~2;IFr
z816;#1T&f^K$XzTPmBx<FW)kPBk(tW`)!C9Sn7EpUbxK207`c#?sr0SKg2%>_e1={
zg5sYaF#oi}{8Pz@2!Cd%e<aZTBZSRAFi#@<gXBpTG*7ZJFfhF21$mMK;>o}K?cX4t
zWQC>FcMKq>AW~|1Aes*y!F+@d4Z(bb4;8_DR=AG^8*2amDHj5TT7yM%8PjWa!viln
zz_vgV93#}ja_AnGz~*6CD4=*4777RtBZUGhS}3qFFfhF4dd*>Y;5ADxD8IzsIC&US
zo;1IaXa*GzJjY%CfD4Y~-ZF;9T7m!U3=HL*$6fz`^5JVgkjQ_i2q^WxwgHRCL)3th
z(rYcS$bV+AE>O6?2ARxI12P2c08YaLFRw9x@=Ld?h_&mVT4+ge2plqhJeq&7^0%)8
zaadXnL>UDBKR7GOAh1Q0L13mRgFu}qgFvz<gMf!91E{QPKET=)D$wxAzT;xU$%YP&
zgSi514ZgxG-L5>%2UxI32`PZ3n6XJQf~A<SNC|RuyYe_-kq|flF2n>n1iC~2bY4J|
zwV-mDqdS13GxX1K*B_wV-}wz(E;7BYXs-RkP$JeHD!{*usXJ7_iGLdxsQBYxyzp8G
zB6{!v2ULRbM5pVQW>*2GW>=Aa&8|O~8f(A&|Hr^k%Jf>JvG&Wq{|pSJ><y)V7+*_H
z=yv7l4*k+8(Cx|ra!mk7cj%AK3$Nv0x53IEs5m%RcOKFPOEbXI065|p7|N|0YXv~&
zmKcH@Tqg@QR^Z?(jt)?WgF>N009-D=7J1DBHtIF^1W<Z{)i$A>PlLf)6(L$-{sSd*
z{%w-IJi?tE5Cb6P%WF2M`(po~yF~|V4jw1)zvhHEfvxi!QeB5+zpnuQHbJP>oi`6Y
z<mi<VgjOuCNw6PWX@XKgcPJz*AU?ohKe%4T693HgTraOOFff3_3!DzDATbV&ZfH8_
z4i#uV!~_jD0mchpJ~Nar!Fb`d87RCVIuAaOK++6T4Aabkq#2f$Seji${xrM(V1cD2
zw$~OQ^H9^1>V)RnFAOzO;5fugRhr<~R(`4e|NnnzdjOv9z%ha?eSwpe7pQiuvjm$f
zaPXA`Bw2xj6_k%aITw^IU<t1I04TF|2<!kCFM_c6=IHzeb^*i5!_f4`T;~We6BbTL
zkuJb^3Q~phZ<7Qk0w|vuo*u!b<4g}=C)-1eC)LUPuX!Qq8yqa4A_7w8g3>6|%@}DE
z>O3Z>b79U0ITz%72}l|SyBV7PnL599Bk~X2y%@<BQpTZ#HZzzf0SjVW?rjFQ4^a~}
zD0|kkzf5KXmFM8}ECorGNJ$b@u8D!t7eofFY=fmiR&f0cOM;xBBJJgG1_lO@{B;Hf
z{<cj}&TR$;{`RGi%A1+LZ#tOuhoM9foJp7<Woq*wSZ)E?E(-~NxB`e1AZkFF;zMKY
zhyS-37|M7-jQb1><t(o`LFLKIg`j!}T&y-8V$k^izw_e3hg{vE9~uuas4y_}%5Zf`
zz*Bv9=#S<@ES(o#=f7qL=kM44p!)F(*koalKR_mP86J4;_gV!U9$<q}%j@PtOq~~A
z>w@(o7yB<K{rmqPZWTBs!82GlN<9uOz4=>I7#SFjyZ!;yJ>9Mx%@r~XrMjT_s*~<^
z<vGUi4^)^PWBA|f$^)%j{xCty^Ov8%^)swO@B!;Ggr$DudZ62t<G6zisKwA7`UmXx
zm!PKZYY~wDz^;6`i~-jEeK`png#!Qo3o!7vw}K;1gt@Mw+f{%SG!oKz=-?}^-X?|{
z3=EyFKM<mgkN$&N_)QFVKoVcT?)U*K9vr$te}GGn<^xRKp<iIa;8NoYNCL%ypy-i6
z&5xXh2VS#+!yDF5dZQ8y4L6X-`TLH66M+E#Hi6CykfZ~uvU^1sJ41go*8cc^oq?gO
z6vVjAz)+q8&Uz`}wjdLd7D#IAm0|3R{Q^o0pyb8}Vt^6_>udJjG6ur~uX7-tLrH93
zkP{myltG?w?k!_@Z2+~jOccZb8N_3F;I+nU321r;rLP~Ipr#2pYF<P7OQ3WEZmVFV
z8_-}>xgE&Ub;@9eKx#TrLIIZ};41GWDDS-%?k!`0#P2jj{5B!tx4aS@4mpTeM2g!#
z2vO9y{Q<W14=fTLx<dbeqL2q1x9}(j$L$YTaV7bh4_g0#-Se8r_{3;^_3|)v`r?jH
zXpIc2nIKUKuBv-wn1)V#g5wYrnc(uC1KNtCb$r6&(4jjN9<iW~IXv4kcZWiv7E;6G
zi%-zVWaH=m?f?G&X9r;r|NnQ;K*Rs{|NsBD2bFaUEB-Ts<UklQ?(xPY7*uj1H^#eN
z|1>{fZaq-K{c<m;SHuP?uU<1w=yv_#VCgDS%lgs?GH?MJTKV2k`<<c2xy$wYffvmD
z+b-<%Qe+U|-^Rk#75cs55vUt}`A6rW=0}XJmr6iQRsL<E-%(3-r_Kv6|1p8O*Wa~E
zJ-S_gG#_AsSaTZOp%-vyu+S|9jkg?U&<2+_(3U#5PGRc2@bUl?1H*q;f&Z>QU_CVO
z_{B;lP#OOL<nM0RKb@{`j=R19b=8i$J^_gxcYOe&p!owjxC8QzLz!qp?f0m1e*SH)
z-+Kf0cZS}1*~<WSU_zOAL+$sfazU_^$IedQJFiQ@<zqwbcl|P<hT89z<vd`?2$s&+
zJFg=eYQJljavpcRV+RUKPmnS&7Ze?@t-4*`sQhU?Py*`x{$d1;jXYogb0Fgl-*rpb
z;2r}x_GQJt|Np`EfrTG*yS{0Dz})<Uu|&T42V;>|^ADzyh~^*6{4Jp3=H+})@dFu;
z>UO<z@Bve&>zkKd;QFiE^#i!Le$)Ku59fvM&^rfTv2-5fyx8gc;lJyXZr3}_5BNI|
z9el*ndAa#CQ)ld(*P&RnFrjH-25DgfX<-IwQNqx|d8jiKWWjOQH=v5~HAA=S6KmHO
zrOM5<FPKWDK}`%$jUfbLfNBiR<E}5jEjgywvfZvfx<el@Ug!;Av<wv~W_`IDG;-nm
z@BjZ^(0CarBw7!Yvb_+U&A~9Cx%LH1X@0lwhl4K#I(_eS$9~}7e!DaFMq}+AaGk^t
zVt{O5d(8<--!JaZ;$Ud3y#a2J2!R-&DueSiH#B`19(WxCE`UMJ8$@I022%a=8q^W)
z4*dX4-fubsI6zMJeE_NrFM!++O}OB)7*x}MdZ6(B-40m)uKA4#Bu~n8hJtE?PEfl3
z0*Zck&SZLB-(35nzTC3g^~b>%%)6{0nNFbF_eb+Xc0`Vo1oyx})d489U;bleV0i5c
zPCwvgj`n|7p61#g+NFx1daa%t?68+Nm>C#A{pDi}x{yi@G^}~t^$W-dSO#MNS<l}d
z1|Fiq=LG&1BSr=W!`mSB<*HEUM&WQS>u!)85MMU`U@YV6cKy<PfQj+OYqoCJFAj`1
zI$ghj2S&cs@<ZIJ19EFGXuJkoXn{1PcDw#j`P1q8p}F>hWI1<N=!b?wjvb-zUpqF}
zelRZQ?(+T6aL~QO_x)>w=GqUo<y>8^A6Wi$xW0d_&|Le$u9WSV>wE3jBF(iQ>`OV1
zxxUwb&Cy%N@M8ZA4#=SF`wjs}u+^7q67UZvIFxn&yMl&}AQ8v|Zj$|X<pGttp?^99
zWI)3b7hWcVhDzf=!=aG;3Tm`~Mw8T!yM6!_T8Kd500#;)I7pfgFm<|qd0pB04Xj>(
zp*+3Y^#@Xeu?yT_^nHO4MQv0(>2`f_@PR;g=o3)R{Bhj%11Pt_EMqEzSjGmmj1^=V
z4><i89(cI{9Qh*Fu3u^eA+a$JG!_bRKg<Zm5>rsgBn&E<vcV-2sLlKGA-Et1#nYjK
zub4VQ-$N7D%PXKFt3-|Azwd``*AJbCdU-%Y0u0@*KQ6!MJjlQ8WT)?wZr3LVUodsJ
zzVCK@()<8i=CE{L;9=@?{qqtu{tZeGSoI&`-*%}p^hp;efpmvHIrxgD;~>Yy4qu2t
z{JkQeb~i)k1s>*3*FUd)h%<u?*$jJ_8KHk(^StPu#(|g*crRJb)!_Qx@wF$&eGRqm
zjlq2P*OpMeEtvo3wI-BrSIPxWijq*iJ(#Z#EwA*ap`=Ghc()!X;b^Y?02%>feOZar
zD}to5*9_gUC%|I@urU}&5d*33`CCB4^ALkT8Hop+`(JZ`;~P9>0_k~JyZ$JKj^Foy
zVhhx%VL)hu<-ae@wO=Gbx$6syV~6YK*G|o~UyLDqcM#vGx%LY<_k987zR$0fnrpw<
zm9igm{jB|33^cw1_U~tyf9<D2{ref5|KK?bGLFZFG~NL!%j$%{g|z_xb}sDWY0&-*
ztQ)6<tSPM%I)*3kngg7$U$aj@HXk$|EW%hP-|Z^Ezg-}$GxT5DLEnF%(w~2O=s%cd
z)bSFiea&wqU{>mbtppj8*6E630wMcrMVRXZA^z(Ic@LCjq5YTF?9loOW*<ncFhp%9
zbeM=6)PINg3qHOH9^)2auJh`473dZK*E@d>zL0=4OFJ(%K4kdMz`%K;JM>TEBM`Im
z;=zX;VE(~J5|Bo~AFwTdV75T|QyA_6haGcWK)0(vr|X|?R|;*xJsyKR_ZL$F3Ie3L
zzn6C*9c=hi+*xpW1ZrxQmax8D&j4yUf=8y0yM6%`zo7KUTF3PgR6v091Ed;)&5!g!
zw0DPoVY~op6@w-m^~-n~YX4i7vo*N>zwlbEq4vK6SR@K8a`LrEL+$?rut*hHWaVq7
z*OvU-T>tL`%?xy&(hmL7%QF>JYg~T7>H6cp>z9}1|B=QMc|a*&U<Y{KKoC@4A7_YR
zU|;}eRM0>gw0#enVW=+`2R8&@Q=2dEfm%*CAz{GE-**)3e4b+rpeByPF^1A^SAl~s
zctGuTesEd<buyc4|8SObbcOzDIArje4NQlFI-mjvUvQwPWCp9`1FJB2%>(IggLyFZ
zEGX((2&f0OL_tY~r}+RYSSf}hAc4U18Zuk*nz^?OKCcU!Yk<rFqfXd@LMXKJDJU~C
zFff#ZM(@F0KuGYhPJoP;PrwNlFt9M*U~*(!!eGl7#kibd1w#U39AgS&CF5F#TE=R|
z4GgS|x0#$6w=mc-Ml&8~+QE>>7|)o>SjBjksgALRF@*6T!yyJH#v=@tjBJd@8F&~^
zGDt9<W{_e$%W#f?k5PcpnbDo`GQ$;y0LE(!*BK%h^B8Y26foXlxXX~lc%LDZ@gc(_
z24==53|5TnjL#W(8DBC;GQMVzW_-)=j)9+1kkN(FgYh%N7luH_Zw%iVA{p};e=!s?
z{$cpbkj!|K2{h-82%Co5|MSav;34!{29%ya`K7lj0hH!MICrklV-VoqF2V(yJ!d$1
z7-!&2m@r`h0|Ubn28QJ;KnZv)1H%T;G7(Vn1o1)m;30-13=GE^PBNTkIC~Bxa`_6w
zwd)KFw;1l+Ww_7q@Dalk28QPhFBx7lyamlaGJO8R@a;PT!!L$Ee?iI*KVG=;*fS98
z#EbLqFM#`b3=F4Uop}Qi!-<bRWnfskm4RXL=8GR07%qWE^FV5^eq~@d@PL8g#*by&
z7#LRVTDkMyzty`zG9Y~O=WWn<D~P#f&-(rA_JLR+yd6X!<3;}&HZkmFfUZ9{=K3Er
zQwZvZm4ixbq$F1KI<T=;03=hU+*m76&&a?~E(IF<0R{N36Z#AST`U3}uK!<afy<l5
zT7msc3=Cy5jkN;znHU(rv&F0qfB*mAwZZ_V7PQQvL=>FW|HD=>a6$4PBt7?*G4$?H
z2f23vgBs%vro{|P82<iO0jFOB#yCbfMia)h41fQF(yuz>CWg%nTNt)7s4{M6*uh}P
z7|$rrXv(;k;qU(%#sdtX^!xY!5e6<s4#wjQCm2pLoMJf5aE1Yte$O-f{eO|+5(6mx
zDuC0k4C76PTMV}u?l9yq#xUMzc)$QkzkmNfVc=%uWPHx>g5f2@D~8t$Zx}%7_dUbk
z{~sAXF@VyqA~^lZGX7-v#qgWq4?`|vEcWyZs`5c;7M4P7UK@dm)7}Z75bb3V+Ld7l
zO2RAxX`QZr(i&_3{QX}7%J=-+LqW9`sOy24|HYrW!RdQ3YWm)^dCOLY?cnuldl?uG
zK-2e$lc!FfIeYFr!^KOG^nLTz?K=z%_a8vh_luXWUcY(!?mffDPmuKe^Ve_Cu=KHK
zpo9vFDFnXpWA$!OI$gGH;YOI~%AE`hYxcl+`00E9R_#JoaTlDA;3DhyGcYhL`VZkl
z$_M21D*{ee@G4{iXgs47mV^~x1*teZ39m4MCCk@-p#F&fJ0k-_nH(&wi-HvX`1k++
zE)HY3Le<7vf$NybTmzKM8{o>o$sDp+2cFE~i+SMbn}yMWF^q8ug9f8DIDIED3Nb1%
zrh&`n^$d{mIh=6|gC?U5w0st3RAx+P^kS@I^k!rLm(Pb8jxZc$IL4sI2rHk(z~!?R
zqX45TqYtAQ;}wRh450G)215}eBz<QvW-;DpU<8-Xj~SjYJY{&spw9>^pT)uDvo@n3
zqZ^|yqdDUjhOZ2u^7#itF(V{>XEJ7EPv7{<XAcul;wHCzUXP`GK78cpF$Sdanc>RS
zYu9fuK+-S6!$*&wJblK1R6a9&`TFhq4+cp31(l_+RC?kC1H*+6ptN`9&8b(A^u@pc
zDP5OtJ^!A8;rMfi=;hCg7#KhWFoX*#p&9n>hZoWei#J0g7#Kk59+dL${=N4PB6jm9
zgl1r1z*9amfXZhEip%E=Q+S#sSU!80!PJ5iF0th^BMTD?GYbm~D+?P7I|~O3Ckqz~
zHwzETS_VEAeii{1K^7qvVHOb<Q5G>4aTW;{Nfs#<X%-n4Sr$1Kc@_m0MHVF%Wfm0{
zRTecCbrua4O%^Q{Z5ACCT^2nSeHH^2Llz?zV-^z@Qx-E8a~2C0OBO2@YZe<8TNXPO
zdlm;4M;0d*XBHP0R~9!GcNPy8PZlp0Zx$aGUlu<We-<&tK$akuV3rV;P?j*3aFz&`
zNR}v;XqFh3<qUBw@hp(?13Ib-Y7P@>UvQXXq+d`Qf`NenQcA6b&6M?miYW$$g^Lz1
zS-Ncbij}KYuVGlXe#1sk`MYiVj-9)9@7cR=|AB*tK<W25to*$IDt|%g7gYY<y$33P
zLFxB7O8E;)zu@xs-+zev@sxk{pz<#kx%>n58bA$g0aj3jvx~<97VWRiz~vukq7GdC
z#j`Lll!MDZhCl!R@6tdh<ZY}K5L0AeC}lb3`u_tsxrl*_U3fW%G#-h!1-5|U?|%>k
z)$br0hI!aP^*fA*PD`^vMC952{#RsEVpC>QVN+#OV^e3-VAEvNV$){RVbf*PW7B6d
zU^8ShVl!qlVKZejV>4&7V6$Yig6amD;lSp|=EUaA=ECO6=EmmE=E3I4=EdgC=ELU8
z=EvsG7QhzB7KEf8qz4&8!XG955Uk%lEI~<#*!mrmx|YC-3{dKV3|v9$50Jzf5P`s;
z*5G~y-02Fe@&Tk=gr}<yA0aJFh<}jNlOQ-^VfE>2wDur4F(KN6Syu4G1TSyc*`V#g
za5h+b@W;>p|95r3)q)cczVZfl3w{BEgo32PVsI*2#sKQytYrB6e>KAz22lDDRoK9=
zkpa{`Y+-I?Ze!lg(81iv+{L_`p@(@dLmzWL^91IJ%#)ZWGf!cj$~=vEI`a(Xnas18
zXEV=Xp36Lsc|P+3=7r3E|1V}<!n~Au8S`@H70fG{S23?<Uc<bWc^&h5<_*jnnKv<S
zX5PZQm3bTUcIF+-JDGPe?`Gb^yq9?&^M2+7%m<kdF&}0=!hDqZ81r%F6U-->Pcffn
zKEr&L`5g0KX#OQF{d8E9l74W99Y|&Y1H)nl22lCLuzC%s|FdxusO|#w7j}dC2cX2V
zW$QME9Xoe1>|wxGUNKw-*S9#zs}G>|BCNdn3#|gzgNj9v$=K>Qg6%g@xr$VNov?u?
zIY|4ho*CMHJI@R&zZyX0*9(L~Q2UKv0h%o36=2Eo!~OsNcUjoN%mXJ&g6+4z{}(ZU
z`X@^nVCnBV10?;eV*s_^An6a(KiS5xonZ&VPKNIcyBYQ{>}A*oPPNFT38`#xg$t|~
zSue3(X1&6CmGv6yb=DiKH(777-e$eSdYAPc>wVS-tPfcqu|8&f!upi;8S8V_7pyN?
zU$KJh;ZxvOz?S~XOi+6x9Cid#o78J?{{(5xI(&U9;r<D%egvgI<ob~TR6jxz2`0G;
zQwT+5*97SJB9?OQGr0Zt^B0l^Si)quk6Hc^Opo6|12c&JgoiyW{XqK@=UJiY@jWXn
zJsSK1^@kA(LFthlmLA37>G20BJ)VFo!;>CCSs5#qV}$i@VeNld{}$AbhV^e@?SIVv
ztvn;Fe+z5>!}_<Ne)fOp_yJP+b-oNbeg40<%K$be;{ZxRpf>+&&{Pw0=NE6|V8Vn6
z;QlDAJp}2G;%N^t{6`N2NF>8XT_8LViPonC3E{!_{-LCc^Pm`q)K~C&G5d7@X#S(I
zRsbXmZa;y#sF3y(C?IxaIKmSKD89u(-AvFhNjzvs1+=Mw^#!P#xdN^XPkeWNgVz6`
z@jXy~QHxQ7(Ts69gEgZ7V*+CuV=d!ahAc)e@c166zo^Zq$!N~Foxz4tkTH=low1Hl
zR3V$un?V2ZJi`SBQ2!A$J_1TV8H|Yj<6VY(421fR?-@QYfclT1@exq^$z(+IAOAA^
zW3XU^gey||A=LivaDt^J$Pg%j1O#e5F)%PJ2S+ZbegiWYK=m7h1!*V2`j6)?Fo5eb
z25|rJ?mf`>9w@!R`j78FFff414+e1m@$WzISR8WyaplfMn;007`;U;m;L@#2wjlbC
z%eMVzU|0bjg8{h$+<#n;)PDpCLNKT|3hIMi{|@UcBK05F?1AP#JnglR*OsuxKbG;k
z70&Q9DFhq86IFmV?DyhHfUxp)0fVdpr2dmr0M&mt7*;ZbF~aJ<V+^qNmyE(z22lO?
zgJCB_I3uk7d&a=RsK>~_$i@g7zmQ-Q0*_x*GKw)OF`6-IF<LVwFgi23GG1ozVFabW
z>kLJVj*L-^S&VlWsu^n;?=!G6>N7GjvNM9lFC-a-!Q&TIjN**SjOL8mj5dskj4q6B
zjGq~N8A0jqJ3}#}6Js=EHsc?L8pb+CNd=PAABQW6>2J~EB@D}!Gpq#HZw#RRAH&vd
z+ZlEu>bE0D*Mrg@B*GaOE;C%cb{#Yx4H|y~2|jtcAC&$;Oc4Ie@b%kwP}%{Fza4r6
z8V^4F7$gB2zksB%)2|^T&LC0PIP<x83=9WB^Vtjx3}@dmFfg2d50bw5^WsP7z{M5t
z;th}>DAnBpSCEL36E?DZ13cfvaOxFgNaH^P!<L0hv7|$s<s*138FhRO+!57qgQrDs
z`3S2I5$&@Vp!$%*9i|LV@<b{hndF$|7Bg@$ax-$tEoW$uTglKQ$1V3sZY{$)h6+YG
zIe9q+Mny&kIY+r|3}JGOa^Z5#atU&u<yz!g<r3u}<HxY^HO%qj5|sKiOYQ~(tbV=A
zPzE1A#$CUbqSUY1az7Yg_3K}Taz-rm>wKj86%=f}pg9kBSehiceucFE89?cifnhCZ
z%MK|1!BgcR255X3Wqbl!A2ZwlxA(#0!=UmJ-j4*24}bl}@B=hH@fS1&yJRWYAT$Ep
z%Yceq_;BwZs2>U9V%Faa7lFhX7?!Pu(8%Nl`1mriC^CD?R%9NGy&bfI0L<A9>P>)I
z*Fo(#FbkPjv18S)z2IpS$mlhsyg)8*LCqb+e924D{Lafu@bw0;vR558@GJ)!PX<NY
zt`i=xg!~fZMacX|V=ZF*Ssm0c0FS?b$DcJkVd`Il#<TN5?FZ0!Hh4+~-2R*ZYCm`&
zltKDK|7D@=&vrRj`;+0(|Npx(5DG#0?Y$hdKlB}>4BQ?Oc=-SSt`Bf!c=8*1w88lc
z7#1>s>W4K7OBoUvmop?Xu4Gt+rGHe*2&o_H7<V%4V%W_P#2Cz2!MGn<t{}G$%9I;w
z|L-pc1v{uAiJ1A*@FpV{ELgZ`F~d?&`d_tr&00wR15!Tkf{ddu>;Ww<g(rz+pn@6B
zLomQeWXleyd-0?XQ0e!w8Y6vx%0p06gtQkS>BAcy-=Ix<AlWiOSTf@1as|)2nKaf4
z_=8dc$N+Fk04JCYpp@_eVE|~rZVjwnUjmLuNcjvOu){h3#=^+T=*YN6VKqGdB$(tB
zK=a2{;Q8Z?3_OfZjJ1ri3ZVMEj**v9k_i@nu=zL8{4pEjF$T=?6EuGenSTS#A4f43
zz~|p27^RqC{S(mqF+1Zk2F(76AfpQ-Wd02_e;mzN$OtPxB^jleu$7+#=8s?az)}%u
z?aP%6OBq1zOK^#_4b;8_r5{lF$#8_>7<_z}fdM?f#=rn7KOy}Yh9?Zq5alNWcz%t6
z0aSi6fXdIqj~6b2%&~3S37VgPq&cGdFOd0Th$aRGhO1v;=^0Yqp{HkP?ar`o&ARpb
zx9nh8wF@?H!N9<<bv5Di4JydNYj@%087Rer`$LH22~OV}e(>}S8lM&i&8LCNGkMUo
zF}OT?0h&*Hflvk+p9b}h!RCP*2H@llZWw$(D8!Q7$sC_%P-Rl(Q58@XQI$}YQB_gZ
zQ8iJuQEgCdQSDIeQJtVVQFW5)WK{*_1*(!tQc505DN3nI3m6oYH!y5s*v{~sAwV@y
zHApp(C0I2?HB>cBHC#19HBvQ7HCi=BHC8oFHC{DAHBpt3B}p||HAOX5HBB{LHA6L1
zHA^*HHAi(NgCBSX#0@<E;lg6f;)*c?;t!t#F=H`e@nP|1F=z2$@n!L3acA*j(F4!G
zsDbBSR9J*rR54~?^x<<bVk|-|IxN~O;w&00x-6P3>MUBA^CJv3Nb`H({i@(n*sB55
z5P9K`nt2!}5E}oP1xuNr;th1P1;bpB$UG210iF-*pD=(%Gm#8>_~`rdCr`iqf=*|D
z`1JY9*Jm#t|NH&-|IZ(P9(+7_==$*^N3Y$2PKRH(bot8FV<!&ZyM6cm%^P<PTm+4l
zf{cTkKNYlh1|&ip25oi2rE<nh28PMAA+j*@8yFfP0t^fcptbVN3=9k{3=9mQ1zv4X
znRX}*+LsPuc7g~71_saydMFc4Em*h+J{<+A?zU`&&ql#jAsF2Z3=H7alMD<Dpw(mj
z6DERofWZ}j*0F*(p`i0HBtZ2Zcn`V+%A~=|*PwM=ptWlgklRC`23I+vJ>(GxD-TfH
zL-6^ia29y`1vH+!0<Iq19uik#U?>BXAL&XA43P2R7k5F^_CYXXq2qD#%Fy<Zx-!hX
z2Y3Ge-xYyS2x<@gSAn*NmaD?XhZ$~znoV$J;A)h>_%OA~j}Vp+RnYt;qWqZ1f?R&E
zuq3O3=3f!z#{`z4SAJ-O494<f3j?@52PJa`YLp+~@c^)Cq!WABLiE7O2Zo_n{xB?M
zU_hD<XV}UBnqAtxhXLG%hIkK7(y{#M2!$0CILe>tsO8TKxO%+hPe&NcSOVqG4TM5`
z<<ASavVkst;#d&v7i{GZAInf{zpRKD+~v<cDwjX7@g8_~Bghz5<qrdBIS!)y!RC27
zmOmU(u!4fP@+SkX9&h=>5e+kzK=~7aP>8Sm$$%>(ru<o>@b|xz!r%XL3Tg@p3W^GU
z{~IVIFj^`^F{UuqGFCGF{SR8dA)_FxprjzIAfoX1zmj4iqm@E5V=7}EV-@29hT}|-
z_3JE*p!tOr3@aJp;PVTh^}ib#AnVs5<3~FfSQ+CPcQe>B-es~IjO*7KYB1La>4Rt7
z0~$b!e>Gx3MG)S_LEMH1UL*F;z=ztfGC=cRp!UWJ`1}I{1GvS{zyKbfV1TawMOr@z
zS^rDI`u3$eA+rr6uW#S856}Aco;jfP?On6({p$sH2|>9NX?=VD{Pp|$;N3*f86O}8
za12}D&cMJh4b<nFIH`$Y@{|^awsz1~6;SU9q7>FwV(5l+ywLhFX!}vNfci0@4j-%=
z1L|*phc&?C72siw6>;$VmJeP}2VM^k8lD5MhX;>WfY-x!#KRT3HP#A%*Q0>Uvj@%p
zgUti4M_GYTCJ#0bJdVeH%=Lf6Yd%naN(r_QZzi4$i8XOdm@t8fg_%W4A(#c0Ki4Q2
zC~&e^DsZvzuyC{RvjnkV=FdnLD}^YQ7?x<3c$NhWd@OM+94t#1Ca{3=CnL*B1{N0B
z{2x0DX#S6lC5&Yv3nYIAvWO{$u<T}tU}0qmWeEq5P7LJwP)K|ujV}|*pC=M%l0Omi
zgA5Gd@n=~6T+z_DYVW4?i@SRIdKnh>le%6MZT;1Mh8+`{ckSD}f6uHr^X4)v0*%c<
zG6Iq0QcxBEAASW{hDhD~bp({ZmO)M+0XYrap9hT$LHhIH{N<4Z&o=eo`~V*xKx?08
zAQXn-$zL4FaP#!R=E3t<$7?xI{sJ#_1?9J$q~tf~`XfmFH;ECJzm73M>c1eyzyE6)
zLF=$k^Vc0FNc|Vg`1gMuV+H2=2!>kFcD?!KY_B2bF}b3g6>9n#r7lS!m{y_t5pWd`
z6Brmk<uD>~bioJg5Mm$}D7F|7<uOPIia{e*3=Fs|fGC2ETtRp+at4G!#qt}pYa4vH
z5v=?cX{;3hFVo?M%%{AZ2}yk5DHYIqiRqv@IPm&b$dpP7Jh2qP)=S_j-#t>{YVnot
z83<)GDBsc3AE^EH_rIkADCI#gYWf4UzyAKWg3B*p0Ii!vUEc^>U%QS0d3`OUd>{1d
zYYCO_E7Az&84}xH(Dnal>pwu{J9K7o%fdyV5fG}ZuSL&i;PQDr0|Ry1Kg5*J8X53p
z4=JA~F@nywJm&hp`E?$sJjJy>*8`yuUw&DEP)139A)<W7mOqfo=fD3e7zwSfBzgTL
zLyZi4e=B$f@+D|J;Y-l@WuWzi;2p45Nd1KqnHcF6yonsKS@0!j+#b9mytfQ=y7PI^
zdA2CEM#1YW@Tt!#P@54eH#xFErh`^)g5C1k?X^Qg?f>`Xpz(dsybo*-quy%`$b28%
z1Oe#UPYpB^U=<ED{Gsbfu7lT;K;}cStta^oUQfb6&Gntg_1e9Ec<VJtJ%mO=>NSWU
zz3MN}`uUf4AXOBo#w`QYU!e3+4y(UFjV0I`R8ai|uH3-&7kCY-M>Z^Tz6AAy!0jFI
zLR3)y1YFmF`zPRqs2y;%uXAAAdO`gYa5o0rKLK}RIC5Y{zIFwh2kyv#%ma61z~+HF
zG8zblpk=S%W)>T`8v~lI#ovoTT2Bs5IMDU4==B?@eTA=n1La@T`VF!^Wt9Rs>-YCF
zY+&8Ux`}l&>lW6ntlL<(v+iKs$@=&IZq_}lds+9f?q@x~dXV)H>tWUptRGoFv3_R#
z0$zI$DOo@y)z|M6s^2<tK{=Xw;|t*RGqC+5ko7a*@de2GMo@BuWD!)7==J*$ZMgFn
zqCdm{-oFgmKL^nRAqlPjzXDoY4(iXKSDa8j#1!!U07}}Spz;!Fkr)r?7<15J0igO2
zoRQTVYX#8eLpkzc8SCX?<n=<}`jit?pMp;ogJn(7m>oE4%79jwfwN`?!UWJPGN}G&
ztQA-f+mG-az8@g~v>%}ZuKG2ozr+q&e+kO(;A{-e@8JCiFA&Ng{iRi)bw!~5(Gp01
z37oM(d}@qOtWl_AlTtwKKUK0>Dg-gMvCUxXU|Y|I+J0ThrldHL%}ODdkw<}7VHev1
z1|Bxh`m-eri2S{e4K_Z3eSeNL8*F{DJljDwMH2QGUT1*qFof+Ze8Aws_J{$tw-B*@
z3AD@b9m9JD*iOSQ44}P+-x&hgeli5HfzA&A?a#TyhGl#L&-#muLQv*LRM&*pUo2oC
zYyZu4NWK8wIr9j_1g~FWV0iZ)#QDO&@SWi&1NeLZ^!_7Ao-_=pXQ9~<g94d_HuwiR
zI{?@IM^G~Zq=n(m-Fx>Rf?67H-hzfmzJB`wUhWK*!%Kh{Re*96NL4RGKZpWhXulZL
z)&g<i7}ALaok9Q=0%iAA3=9XLTsQ@)sWJP>AnCdDs9pYm?o9w6VTMxvfLwsI9^*t2
zy!=^-T>gOj#-RFrI;d|9uHV6ZV~t{%`qwp$wF1YO7#Ki@)cx;xoeNsk3fcv#2s$?b
zv<nn;>Jcks7brrP8|1zMaKQsIA6)Q&%?B4e86|M@soj1+ou7cTA677cPQ$@AKLKe!
ztY^5*^!Gn#|1zX}`THL<{)ub<18o1_;M)Iy<$N7N?S~VkpdyBP?FUf#!?0|5FJyjV
zE@*!QsQu6nX+MCHKf{pT9|86Oc<B^`1tb46z$Py!X;+XjKjBdh&qny?Cp0SH3i0*F
zJrK$$>5pTS><|H5?R(JpDX9I7o<Cvjd(ikPsDBPye~w)LV_Sa?%b%eAxuEsuko~#)
z86f*VK<k%5=c^#rFEcPh&JPk`yvV@G4B8*J0DOKBV*kf_MrLN@^~<31RS@+*BQxau
zAVJ2D49d)){c#Jy=LaG7e{5h}t$=0yGNJsLQAySO2|gd_C}jOI!&%VzKn&pdK~O~s
z+MfhIALuD${W1gid?3jASFrv%0|R7l5-i!n_7lO^FQJVu!_=YEpjs1M48n)B4<KyN
z`eqmlOv9H+LsAna30B2`yMJ-!4Fl*9ItB*NmJWzwbP{}U0;b6j5%BmM1GUEA>_Ghn
zX-3eE3XmhYK>dGE9}C|92aOPbdISs%4B+#+K%INYd0h_w|Nr0hq6(I$!PP&wzYea?
z)f;OCwu9<(@On&eeeO{WR}0$o02$u_nGIT~4XU5Py$x{v4DM~5fUAF94H{MlDFgK%
z)Ir<u!TkpY@Oo~9vJkNSIL8ZWVD`V(Zmbnp4eDlq#tZ(vCb{}YK2IKX{NOmlABL9<
zpflVaFg#^=4nEuK1;cxWcMNa9XDXd!c*byy;S0kzhEEK?8GbVSXSl|2hv5gqVul+G
z*BK@;K4f^y@R{Kk!$*dT467J+G3;kp$FPQBFT);&g$%11b~8ZMhcl_FsDjQRJHW7#
zAz3w0HC#1TbrHi-2GF{46IC5m8C3>V8`Z}QhZ&+&LsT<W(^L~w15|TVmoR)_xBxz{
z>;!`$_(Z4k3=*n5svW8=s>>M8Ff^!MX1LFAh2avzSB9$$TN(Z_+ykFpc9Y>R!(E2;
z3|ko1GHhfJSJ=m}jbS;%cZMAd8yHqFfHog)X4u5AKy?9hJwM9)C!YSriCR$MLQ4PQ
z|JuEC&hNYX_2-Ud>sEbO`R>QZzkl98`||7i@8#>)tp2=W`_^s8`}!v}T$ym`^1W-<
zZ(LmZ_`##6Gw02H{qohUw=W*HE@(d1(l)WZtEr>2cVSQWg(XuLO@1=v+wAF!r!~HL
zKH~_|0`FT43=E*m0BTx;4vhr$nn9TrI%UZKx}6HdKL{ci7#NO1X=Li`F7Q^&-3$yT
z7#Q|2fbO{5$-r=$f#DPb1NihmWW@{&4EGrr7(fGZpzGGaQX4jcE;#`+K?Ep2f@nxT
z4%hl<Q0L)g6=)a&HZcXtU*PsQIDdgBJ~is$`5~yWR=^N6tPaW#S6@3f)(U_}1wh>S
zuR(i)K$|4Mt?y5-K?4K07BhFi%>=I<5bSmZU26tAlaCE_f68mTJFF4uJ5e=BHB2>B
z6_&nZRHMQBCJ^Zxv|11~eS`KofOb7Zsz#^=sRpZNt7fUf(l=;#MT07#^PL!30$EsC
zLRi>Y!dXBo5jHSLDs5+wQW8^KLPYvDp3qSHe?9ofL(ph;Z`TB728K?K*Pz=~AOZo<
zVQh{@)Rd1{e*=mo$k9)rcxGULY>#F51t~8XJ}@wRVqk#oto_E&(Ad=6(%RPE(b?7A
z)7uAHPCt3d)M?Xa%$zlQ&fIzPLHp5=7wDspUom`SVED|y@D*a$cLs)^kOLnfwGAdo
z{rqwD+Q}W;cVD@DV&C39$Bv)bx^3shOQ+9YICbMXq5J_l%=R8x`2&=*!Sl8#{Z-H=
zE2RD^R}(CMyacV<gM>e*B7&U<gMOYBT>a}f*m+i<4D{!<e`Boxcsl{8zbX&fP5|z&
zg0~ZNAarR!`m4C|)(W^vaNfeV-wre0U?QM>@u0&;FM{ixhYSzEb=6~VUG<XT1-QO?
z%kYK)G?w&{;WNW0a9#D4;TLEChT#u`g2D#y{>$YIN($Q;?lY`oSjnKIxCL|$tkN-t
z8w_$v8yP@*mX<PXWnfYgRN_}Uz^ttVs>#$8pE3Mk*w3(#VGV<n(j-O?B{n5cji#os
zfZ+hcVTP;VJ({33d!W^Opi#K*45w88GgL6TC@f*HRIpND{LS=RQDHlSl!Basfx;n%
zQw#?gPBWZ<p1gSmeCp=k|CgXOmLcOYraMgQ8E!D$WV*$)gW)dIZKmUx=f4tc|F(cK
zD%JX@rw%S!e0vMSk~J%LA3wyf;s@xght*q`J^aJ4=L7=-!-3P!pPp%GT-Wrn`PqxN
zuU@}lX!-c={n=KA^<O@HZew6r-qGIK-PN<Nx4&<~#L1JUOl6ohWBSb5v##x*J7?Z}
z28J83oD9j&*vNCB`5kN$C}N=c4n+XY0nOQBjw`{^7ev`NP$33kLdl=Me*gOpDb_Ar
zWME*pa`h3zrOS^Q7CZoL=ROHl#Q-|{7Q(&*%H0qqD7P{&fQI-%6WrSv7#KjamteUa
z44_O4W`b&G&}oif4u}Aa+kt4T7+YNpQV7}(0p3e~4^$H)pC<+0hlJKYE&{cm{gB$v
zpbQT3J7_`^dLG`3R(LT2x_zs$RzM%LzgDfWR$w})fh^nYD!_UHw7=G)4XzS2c!;td
zL>+eiEx0`mX&)n$pGF=}JHX7q0J_29|IU}7&1$fvN}y`n9kdh>Jf07pL3@EP0km!r
zI-W1D2;0x32;a|i@BjZ@3hglGfy=l5AZ4KTIAVVk14x+$LYX<ZJ$_0RI$wYNwHm0r
z{r?NP5sLjcd?OU=|Npxtz%^1-zA-Q|GM;2$VFb0SA2P5q@-RMO;ALcEWM_QIP{~-u
z$jA7WfuB)`QJ7JT@iT)sBd9G7D&M3Sr5PdRn*`%x2GsIRl5qt?f|4?$9-}^^79*&9
z(`Gbd1eI@2jMj`cjJAw+jFya6jINAsjLwXp^38?Ooe@#Kc`ybrUS$Ym^kGCV-+UQE
z7(*E&7(wM*Bx4w3IAa1MsC-LgjAD#tJjjs3n96vTp_Z|ZF$;Vub~gAt?0m)o#zMv-
z#$v|141XES8LJr`8EY7o7_pXbc-r3{ouI;vl=k;2@cC|_@{0jfelbAC%0Wx)Kn+|5
z(8<*dp!?_<K;3A_nWy0L3)E_9`@yiBp&h!95Hzq2+4%=9zZe+iFwFnSz|h#lz|hjs
z1G;yJp|gA9WCn&QQyCbh%~-U0E_8hBA9Rz!#w`pC;Nx3C3mktj?A-@C0h58@&yIsf
z_8&M3$`R*pFfg1s2ih8a|H18hphH_37#==hV0iHol+)jSU|{(88FY3Rh{w=B;rHLy
zZ$M1c@(HxNhyhVPffRr-w0we<doY@T0i}FmKrNpbKwG*QK;;Ym_B-e#7Vu&9p!@<F
zswe~HfAGR!aQ+9k-&b_O@*_B(!`mmvK?CKW`Mm!xL2Hna^S?c6{_p69nee&<+Kp|j
z6#&nigXY^-y^aIf56<YI{sXw>0`5P6Gx`aHZnMT(fq2aQk_$llC0`(v@gvFu&_SQq
z!TFpYwT}Q>&jAZiG@8=(%Uy<nX}?@x_`q<F;UB|a20FK2G<rc<e8Ac-caYmJ3+`dG
zU+yBeUmn~aa_tuewDJLb#TvMPKoA4be!*Y9_<-6idW;MVp!^LlU%(9)r1GT?Ryw?7
z23>FjD%e1$`h%M<pz>%ssQCg`4{pA2^uyI(MsAOQ*R!f)wqH6B>K7xcM{2)-`d!H7
z7h3ye1>A(!DTwk5SNr7wLN%zo0vBso+Al8<%19}%p!QQ*K4JE+5*T6qt6D}x|B6is
z*1t+*g!QlL7}5GyjH?-V7*YFI0*oRG$o;Fo|5q}=`d7yob~6Yg^{?0&4>IsFqV}%@
z8PWS!2bfPYfcjUb7@jd;ZGQ+s*YLsC_SvAUDL*lh`sEV?!;&>OG5S}a20gTYb+74V
z^WR^%`&a*P^{=3r8n!<PaefL^0+WJ{tYAvOL{R%<kn`PPa%eQ{$UYQdXnzcv{vcAA
z{VxWF-wdGjKnx5F4^aAFxXLeR`vznlX88ph0cD_B{|kTl1-f1MC1@xVrTm%>FOR_O
zBag|Xl}8>^;OeoLM?b;iKzPcd47drzlt&8?s_~UaD-g;^DUZ<FO)xI?%O}M64-@Dn
z6+GiV%#87jl#Kr*F(xz8fBa_}^~)!M<39`-<39{2<39`-<r4#J{0He02vFW7h)F7+
zKv$(e2S(5gCOBS1pnMu?<3m&^pI%Idmp4SUmtM?(tH)kG?Ict_am<97Kur1MfKZLE
zeDXjjqeA&a>HQw4?I$)C$oMo9OAt$f5;IFM3v7Hkj0Mzw;(*WfaI!?QaIr+OfcBAs
z#&1x^r@2|8S$J4tSVCD)$8Y2mKyyU=Eb%O2ilCVzfAHyA<lir{1k3zstqipN)C)Ni
zi(@vZKmv`~yyouw29<-gt?<sRf$D%$42u^32VGIN5;}eZI$v%p()i8Y)$4W~T)u1j
zo_(j!GTgXDXnqNOJ_)q=5j3U(Ua#@@-+hLAYu4{Pzh(D<z5CCcW4L*nfq?-!z5+VA
z?mEK)l=jCRq*7%Sm<@6>GR7ER0jmNL7~{VnL7bS-_%HtaEd}a7ffhZYv_C*|#Ypo<
z8FOH{?Imb53O+sqYKDQwXRm?BZD4b)pb?uRFG1sJusJ5sehcs%6L`M`_|B9LxS6l3
zVB^E^^$zNw(H-#k3}kc{p%!%BBR_1sRvk2~3tm6*0W@CAFc;>`*XrQ$8F0r4v?KyN
zunRu86FlCd0apkfw;^x-i5mHP0t;+>7JvSp$TAf3_ltRy<!^?8&fhrm95#tX;86vz
z3`OMvtc(DggqR<KaKYrDD<3=-z%m{M<pX$+I--2YfSXCUd|+4zv;Q@|@<9Tj41f9H
z0ar*t`EZ0`C&MO&lMI`|^V6-&kooBr<`v*8F(LEQiy4#@LG#l}3VRt06hQMg%NW+e
z=chq;@62GH%{-5J0W)NNdNK1V=H(0tN*fs3nI|&C=BFn?Z|DKt&ohU48S`rJT|8@;
z=Q6Khn9sbB*+XdwGi-i(Df4pXHs%iIU`AmDQKaz`(A_^h%ze<id(JTTGoJ<D-*W<d
zf6p=I&CJ`GcQWsT-{1qfzvmqDLGb-OJD5*0A7Vbve3W?`Gw24N3CtUqvD}|RXnvYw
zF{rqp-uNy9!z6|+v)A;1+6Qx1Fs$3y1Uep)fuWJ%1Ow>c69xvv{0=x@fe6U?C*b*M
zhEC8qk>LIbWbTH6VJ5?@YYcN4K=ace#SGo;XV;&*4qn-M|L=ya3m0wMzGLyuT}yT!
zTzYuf5r$RAPVYIhZ~yAO2X5cF`|shS=TDygdhzw;>o;%Ty?X!Q)A!F`em?v0_}lM4
z_a1!2I0pdKzF@crnqLOBFBljWFo2F%LCoLG0J{M9{56T~0<`&H(B74opaB`!vMVg}
z!5vFr+3qE1nO0-1Krkb8!uI@2(85vBO_87_CMuwPm!P$d(x4e)$dyBIy{{AD?Fo4O
zZ;o33dn|=n1YW@fp4I`aN0|&>!Q~E`u0gHkcYvmAI^ep%xtO%snF$kUIle%v^(AtQ
z@{9(IhKzBH@g$5d{QXar^(7~kQ8)h{T(p>h;P?Us>r24-=N70P4`#s#q~SuC5E_j<
z&WU{t0i=P@I08rw0|VyxCduOm(Dfv+b_0w?>t77e_$E>FGaf5o`5Se92DC&QJYS3$
z4+ZbPUV%_g)Odr&O1SyNjyHfyAjJ9-54Z`$j5ib@RO1_O=s+kVWxN48{&a*v{x>D-
z-ynNLAml3esU{FUaiknv*B(~y-=@Do^D{eGw}bb4Z(&6qU(ouk{d+&_2G&ii8(DXQ
z_knL_C4YZ6#C4E<Ez0_A^!XWw*H)mSzZP<D8{`zZjMW&W6sZ4)e1$Y8xIb!m0RQ^l
zQ;-admuvtXO$}N<0#XHTeZbon43PD27~`J|(D6@(o40S>KY#YznbUU}?i>THhXa{`
zgz=15z*HgiLtrbrPck6(mw=VQHf%C5fbVVxi-DJTLs`hwaS#U*?zq-#gJxJT*Q27%
z$G%tt&yS#aQF#3i-+zs`4-UNl+G8zDJ$StqxS0T&?*tDMK>Gin`)@iB${_2t;QOza
zLDp-D|AwyD@`tb2dcgv^Zw{^zlw63sfBgu<0tU?dw~K8xQv3cbgPH=UeGgiHx*NRy
z^gDe0DI^tx$SgJx3Bx>4UIJSpTM}C`TMAn$TN+zBTLxPu+u#3)`(1NM+J6n(eGRka
z?|;}nZ2b4T*0EKxwXt1gTf(-Ut%GeM)NM1^u<pM`&wr@%qc7HB<UH`@h=}u8UXyZu
z5K_Vg9m5VvnlKD&8iU&RP2lxgAQ{a3hiKn}*Pk*>pUE(5HZ1>vv{3W@Sde)j4BN-K
zW9L%Tz0Tm3@Sj0S7(mO|;g?~9R!}l9Fn}frp^~uqPZ0M9h=5>FUV^Yt$^Q%t-!RsH
zLN+wOFX=0P9Rq9W%YjDip!fJeSAJ$}fM-C{###aJy|wbN9m`^%Mm>1P@(F}8@cD~s
zpp8kO^-+_-`HHj_IHbqg^P~UAq#sj%%=pp$qwmMWA5(rz{{foypZVkOe<g*MADus1
zf3*E*|IzWI>qqa82|p(PnDzs-;u^I7n30c(kC~5!kCl&&kDZT$kCTs!kDHH&kC%^+
zkDpI~PmoWDPnb`HPn1uLPn=JJPm)iHPnu7LPnJ)PPo7VKPmxcFPnl1JPnA!NPn}PL
zPm@oJPn%DNPnS=RPoK|#&ydfE&zR4I&y>%M&z#SK&yvrI@Bcq;@M*2~d=7k$d`^7M
zd@g*hd~SU1d>(wBd|rIsd_H`>d`gP`d;xrcd_jD{d?9?Hd|`ayd=Y$+e4sIYSPq4h
zvv}(_)cobKiK_W)0W1;y24y2?B7}%RvL5pN-H;0tHiPyj6LEhx$P~2uyBXdi#@j*C
zU<?~XzYE%E2wFAS3tDT*FcEs=0|Ub(&<2soGdh}QcDBswYMtHPHm9c@dhh@w{NVKz
zw*D<>5jHH<gZj7NVQ=t;2Jp1|iOsN7|8g?qWTF4O&;`Zue6R(@44*)o2jMEg2Lgfj
z>4WkIxPpS@4^Rc=u?1$}Ygf>CJGdhYTA%ptwJC^S{{w3L{2wsm8`wb?D<JfN4g~uD
z4|)yZZE&^{LtS=A{Qcqw7!EO<0PmqY$8eru3&UxqV@xX;?l9eCxXrLcVLbzAMeYWM
z;|$LkE;4*%Sje!SVF?4|N~lSUix?g;ykhvm@SEWw!%Of!zXuF27(OxlWO%~xn&BJ6
zABLk0?-*_{9AkLO@Rs2R!!w2>3~#_AVJ8{hgLmc~WH`+5m;tn!@GJvp$HOIts|;Tm
z5*QO1Z!uIb{s*ry+|B?xJ8vI@h{7I*z2IGhs~Hxk?q=A?fMtAXKE~-?Hm{Aq=YdTC
zMJMP8;T2m6W)Y<Glwdt6?DT>i`*-i!!?1TXWTVlB&Hoq}R($^QiGktQ-|s)Z?p*j_
z(Zd@TE^k?UXUWoMPnRu!yzRyF`!8=XTw42f-R+GZ?wvSt;L({Y*SDTLdhqPcs~7J+
z*?#KSp;zY^uAM%9`241i?;%Tg!TA7%03D8lA^_(=ZV5nb-+||zK!;SoRe>0wdJU03
zpjiNXaTwB3JfOuj;CUT*`wZ9mx)<AE>G~z8u?trZy1x~C9}&3!2A<DZ0Nx(39i|?9
zo(_0f9jHAA-Zl$v&w;lEbRd*L&eIW5fUdv)202e>35>rUa{lN7(E5B(ee(yLF>us3
z(Ebx>uMTMEDdYx2#Qya&&|Nqe7?AG=M%-O^k6|mrb%yT@E1~zdxhO1Un8di8VF`nz
zf{emy`2L=C48q`Zy|*(gW7x)^qySnAFRQSdK~2FxVGYB6hMf$jnYJ(>MqXAhYyz)7
z+spvj-y@>15qcN)1BQnTj~E~~B_j68zhOAW@Rnf}cz@FehK~%6j5ip97<Vy1?)(DX
z>G=$LW1=DBABMjSPK-Yof*J2K{A2hJzFiv<|0L8eD|QgfJfyVW8Wt{EykhCr<tG+A
zUcHZD!%>EdC(j(3yKT$q1Fv^qx_o6nWINzP^!<SIUP5*R{stXSb@SH8+o1Dm9z1&T
z^x5+_Z{NNDF#qSL&tJZM|MM4P|IiDhrV=O<FuX#k)WAX{5zD};v6l`Lpy%2g2JKOT
zb-uvrj~zdC?g;3{9|nev7eFE_L3fGmWZ1MBv;k-jNCb>Ql@pi&x_lnY08Mr?FfgnG
zT_lFlo<pnOK-ZqW1PuX0Gj|!Negk*I5cQkJE?72%Ew2YJhy}I(5E&M{AhrXp@^uMp
zpF60217}!p{RYmk9J^r#zV-#xXZ)apvOvaxSG$7qKX^V@1ECJImj~B2ngqBqeAyXS
z_%C2^RA0`}$*Req!LXZQHG_zP9z!gv4udX3Jgb^Q3~MxN9IGK~BC8Q=600$5GOGz|
z3acq=Dytc58ml>LI;#b12CF4&CaV=|7OORDHmeP54y!F|E~_1D9;-cTKC1(30jncx
zA*&N>5vwz6F{=w}39Bn>DXSZ68LK;MIjaY21*<1(C94-}6{|OEHLDM64XZC}Evp}E
z9jiZUJ!=4K18X2_BWn<A6KgPQGiwNI3u`EAD{B~Q8>^&(I_CNbg7-h~0p(B7atg?a
zlnf^iD<~={tEj5|U%Es~d-a-?`jC>j7u3#SfVS^I7i>cAfQF_q1_lO5!rruH+m2m(
z_8mBM<k*Q*XU<)?bmiKOTX*g~c=Y7ii&t;nefad{+mBzM{T&P&*00*QmSOYO?K^kx
z-GA`#(c>pipFMx^^404%Z{NND@bS~<FJHfX|MBzJ?>~S4h3vY4+66j20i|QZuny{P
zXuC}wwEc_+sZs)M!~v)43C*<v@?|p3wF3I(pcL4A;K8n*y|DBLz9#}CS0(|?0OkD9
zbBsX~6VUx(;Q9=dK0yJ3bid>ZxH+#u_wVV0j)eo&PyL`{;lTCN1<<i@ClJaY_wT{e
zJGkA4l-~Ej-1QpNesffZw%-<l(>0mxH_-iO=;yzI?vDs!>}BX<=x3O~0O|*U`bv=d
zBS7cBfbNe7W}M3~j{)oX*$Ut@RHeEhCuc)f>16DOC9BtJp!-G3#2ae=KSSCXE+7Ej
z8O{mSM(hHf21qXgk`h4sy&)_J32N-4oqs~^Ii$GC2Z%+W)Bs^2lh6SKDxN<C+A#T&
zjgf%?wD}Tz{s<`XfzKalKG3jB;{Ys$yaZiDjhsHYK?N@8&=RrNpgjxEz)WZty^QHK
z?08d9L$48f<0)vq4P1hQ=i4@bn_LJBK%3ei`?J9fFHrgim*e2{3NFW2z!ihrXXgbN
z7|MhjYX!auFff#Jb-4<#eCTlf|Jn++fEZ*SctaN0K5!9#0%3$Oq||}!#{#v_@ZQG&
zZJ$w^zAp$|6u2aCS>TGmRe@^)9|f)p+z_}aa7*B}z#V~40(S-O3EUTWAn;J&k-%qx
z#{y3To(en@crNfl;HAJTf!6|W1l|g~6Zj(VUf_ekS5N}~hS^@K#hPC{4#D$_DLB7?
za?R6n1!(r@?E)P)1G*Bj1EG+ow~PTQPi*#?Fxc}C^!(8i;QJ!agH9j4at(5r@!fm(
zA3S{g<oLO(kDlV5zozc_Kt`Z-ZoD}2U&dj0{(Ax1!Be6J%4?u3T85VYp5n-Vpw)+X
z@?QtS0??(D`19WjxMFbq1I~Y-`sX_+|AFftgZH5O8;`&o{Ti+Q0cS>Veg<bo4}?Nc
z{R19$Kx9KQ>z@S-jeJdffB(1efkv#_`8xRi{_g^_d%+|~6ojYnP34=$H=XbA|CxNV
z_-6CX;hW1hk8eKT-~S8w7V$0S`}=<>-{1es!FpElt>*jte=XlSzV&<?_%`xw;@ix(
zg>Nh0HoonAJNS0;{r$h2Zx7#Iu-XHB2l)>19p*d2_xJxXzQ6xZ@SWs4#dn(T4BuI>
z`~|*?e3$qx^IhS)%6E<LI^PYxn_%%fe0RY#Mt&w@{NTk=P~OJ7M1|<_1BQi*7?v<F
zEMEbdzXfg9XMo&4!~oj;yLTV>oKA+L496K5PMrpwF9yy*;7$+2ZO|Mwc>ags8N&<k
zg{=$>$m3^!{v!7eU@aiDA>SbIVhT_*5PTfY0`OvrdOqkB$$iiW7kJ5J!^i*scWE4l
zr8RJy1vJv%6$-y1o4vP;0Wx3KTgK44M;%m`LefVIA1Gz4;_Kq;<%6XJ)N}wz1xxvs
z^R4Cs#XKm@{QVD#fArYj!?%%dH#GMD{zt?=a?FEL0w{*pD&UI$MGR{gmSG=1f~`-6
zmccJUd$(VLrVT*#G58#KE7b8MjuQmagU@R>Nc{&s9iHj61;hmKA@D3hyE-sU0Od!1
zq)8E!`^OhBfLh#;xq!c*W07z*Zzh1!*J1{SC7>(Z8Ndx~28NZZR<B`zj@5!LyJFbR
zu!DhN*-nOCyZ0YBb@0&PBcKEA7*3x&16te+x{v!d131auLQP+w0a-}?0kzX%=}QDW
z5DA-7cv;WDzyL14z{M!2`~r1ck?yOBI|)lu(DDnM_`vNEP~roZU*N>oflvr4zt)0=
zeL&^ceQ;U?g%?s<L>>R^#8Pk9fE)@s#0VPCuU%eSbbf27{lB2hprQ8v?{ck%+W)u8
z_!?^e-z(>MEdz-^X#L#VmB0&X??U=mT!sf;vq9uf9){ReD^On!x@Q2<X?gAP+6ufL
znE{l!^c!mhqCx&sYpfNp0*QcX7(0*%(`!h+5@<NI0Cv(8Qh5Sx7(w$F==?`WUQvV3
z!$bHm61Dvg6NS+W7zSc~1ZF$_`4K-pf2{K(QGC(hvKwRyB>j;vewA^WU}hy{{EC69
z^B?b!=0AQx4z7aV&&I$oc?zgR1>H-~irPP}NADklrb1sAg37DLS^;p`4w_$B06qTz
z*Yw31L`H<Q=|TAw+>HgdHz3W3vv6gQ^(x@=%t0Bk0h|$WjJM(_p%@q#88*o=Gq5mh
zky|Cl&cMOI$-u?H&A`LJ%fQFL&mh1c$RNZZ%<xT4ltGL^oI!%&hny6HG=mI-EW;N$
zd4>gY>*O}bZIfFfw@hw@+#0z(ay#Vq$sLe8BzHvanA`=qOLAA_uF2hydn9*D?vC6&
zxl?lI<j%;Qkb5SV!T3b(liXE?^>Q2Kw#zM*TQ0X!Zmry2xt((R<qpanmOCnUT<)UW
zWx1<z*X16_EnvJUcUSJd+-bQFaxdgw$-R+V$aq_BJtO4&)58pl<d_&Y%WaiA!Eln{
z6vHk#(D<<i<7YVm#+P!Jz$ZB^l>09CTJEhJXbkzM+*i4~3=ictFv3Q47t1j-zL#4q
z_k!Ui!z+f}a&H*kGH5cMloMq9C<hzMJui1w?y1~QhF=VsjL+r%GCY=hCx?;#<;!99
zS1*syE{$`b)XpQ=$?;kbyq*OVMK#>eQmj+pHR#}dP$3BG=7ZIvj2_{LIH)kFeGf{N
zCr+MXI0GKfyma{rD8=2p#lUcvfdSM$0m;93`HJDqTM!F$qdWrx!_Qv~44|ru;V7sr
z4Uzz3*!ibm4ia$=_k;(MD%{Muu-t@O309dc@Bvt`^nTE$YY+=IztV8^$di^OtxMaM
zu|02J-ng)75z{f&<IRgZSDt>|v7&2L_v)TCy=(i{&3->)$E@!&zxA)5uwmlHNt-5b
zow{$@w&~k9-<$Gp-j6wdc3s?keb0^m&vt&Ce_rm6$TdmmibP2Kg6db$kU_a2XuPXj
zYDWr#fK#`xz~vvEhngQTwq7cgc+CoqUzE!Cb^2=`*th|xLIodS3a(H=z0X}Q&ckyu
zXaIJ;9JJB*UygwRRCx)oCOia9YhHjU10|jkQuFsMh9`2&44@qI4r~5?A@@P<liWAC
zA98mYzQ{>1NHW0kw;Y2!!vTgxa)%iXGAxkWCbvfJ1j8=5J#r@*cE}x*JHv27PJ{6*
z!zsB-4CmyoGF)ajBX<Lw#~;Yul6xd~lL3^+7cej}f=*Vu!mxmGJ);04Gb3ciav|de
zMnT36atzFz%*@P;%*xCU7#7PtW_ZZ3P;QglMmbPkUN5&rZXLK>StYkb?tt8Oa2c^$
zZmHZ_xfcwF<aW#Lm3zss6IxpAmpd-^hT){#5xISGm*g}V-!hz*`^0cX?!4SrhR+OV
zp(V*hIY>G3Q0}(eW4WIU*W{kdWitL^cnU5X-pjp|`zZHW?z`MixxWlw<t`A)-yD}n
z%ikVg^(5qPP*w(|cU-ukc~KKcuDxq9Loax?W75<mpn7U9BLjmN1H;xGD?t+)3}-H^
zVz>@I0`30e)u3hN?>|HH|3YZ16l4km!*b|pNDv-^?1!xaKnRh<nh!pOm?SM=#Y;hx
zq+k}9SO)E)!Pn1i038$yk^=SoK{O@?A1(kbE-|Q<osHX$oH}^?(22t*+fE<Yw|@7o
zJ^S~z9_zl?ajx_Ht*b{boxObXO3$^v8x!wMdouaq{};EPK6v)w`Sh2w-_Ce7^YyGZ
zbKWt1nfFof2g_I1Z*1R%ehU8*|0nWW6x2arK<@v6%MTN1`BBF3j{&9pkj7SifEPTx
zu7I}e!Q++SA_TlY2Q-_$>%?VP+3-3LT>gNDBtZuogNhsQ!N%a?26C|R6}Vb_#f`>Q
zm@<6D4WwK|Y4?G~*<wohx?OpWgEwKmmWABsRaXkC?~XIrDKId+MjxMs9nS<Z57cIt
zZ>|-HDUoch6{ssgYrk7S+f$$e{z`efU3rc%#6a5rAkTtKF9r3jk1^CiL^(j}A^l-U
zpWqE>(ydFNBlJJWXEo*xwf{+Wul{Q#a2G`e+z|zJdcd`J*MWbC?g(o86=FBYZ_;4D
ziGuwGDaB#EH1M)7u)jd!aDTah`zv6dLHrB#nO<Y9K*E0p2Jm#^{QnFLu=Z!eAqQBG
z1*N}=k?i3D3<it_Oa?sv`TqYlkoqtEU;aPi|Jep}47M;h{9nOf_y6&K`~QCp{u#_Q
zm}kIjaMzF3fX#s2;E#c*f`9`5{}=`t12Kh||7r@V3b1|-$A8ZMA_k%c*8gq)NB@ug
z&tbr6z-7Q~z+=E`z-Pd3AYdS9!2MrHX(M?4UiN>2lFWa(|7l9;N^(jjN=|AHY8x1g
z6pR&^6`%fR`476gg7rW1f42Wz{}ui(XJAufRXeSEUiF;nan)n03so1WZdTo-x>t3N
zs<ncU!6d~AiW3zlD+(Kc`X-o|Ly23dO{ra}NvT;$OG#4+U4^=mhSC~_ONv(%8I+hY
zWFe{*l$I(9DKjatD<vugDP<{TD@iHYD#<FDDrqa}py|<8G*HM_%T>!#1KlmY4Lsuy
zGUdH0h{TNr{tNyW`Y-%n<iF^DvH#-#CH_nPM^&x(U+KT{f0h5L|JDAh|JV4h`Cse5
z_J5uKy8re5>;E_SZ}{Knzwv*Q|EB-V{+s`|_;2~&3dID+|4#p%|GWHm{qOeQ{lCY5
z&;MTkz5o0C_x<np-~WHW|G@u2|AYUB{15#f_CNf8#Q(_uQE>f^22KXf1}+A!25tuK
z1|9~U23`i<20jM927U(q1_1_v20;eF1|bHa24M!_1`!6422lpl1~CS)25|=Q1_=g<
z21y3V1}O%q25AQA1{nsK23ZE#1~~?~26+bg1_cI%21N$N1|<fi24x221{DUC22}>t
z1~mq?26YDY1`P&{22BRd1}z4y25koI1|0^S23-c-20aG727Lzo1``Y>8cZ^nj3Wgs
zG+1P?*kFmlQiEj%%MDf-tTb3<u-aga!CHfL2I~zr7;H4yWU$#_i@{cdZ3f#7b{On5
z*k!QWV2{CGgM9}34GtI_G&p2%*x-o4QG;U!#|=&xoHRIPaN6LE!C8ZI2Imbf7+f^C
zWN_KwiosQbYX;X1ZW!D&xMgtL;EusvgL?+|4IUUgG<an2*x-r5Q-fy)&kbG}yfk=a
z@Y>*w!CQlO2Ja0%7<@GNWboPGi@{feZx}w9$UKP|v>S0M^EBq^%rlrlI}K+u&taa+
zJdb%k^8)6D%!`?qFfV0Z#=IQ7_YgJ3{QbX?c@y(y@J_;Q%-flFFz<x#BizRf+DQo6
zM|hO^81r%F6U-->(e+cpN8YE+$Rfrf&LY7g$s)xf%_74h%Ob}j&!WJh$fCre%%Z}g
z%A&@i&Z5Dh$)d%g&7#Ai%c94k&w}4}0~SLTBNk&86BbjJKo&C=a~2C0OBO2@YZe<8
zTNXPOdlo_`b>lXlL6u3BM^!*oLRCanMpZ{uMb$*rMwL;OS(RT^SXEk8Tvb`sSXEoq
zTGd-sK~-N>L)Bc>UR74rKvh-MLe)tXUf5z`%<&ToWsb6+b|6GLQ6u?Vq|$`a7MbRN
zs#OUOlU4KHrlz$lYx+8Sa)x^N!qmc~+0hpwtJ}WJNUGge+c#S*X@1T2j?U<<ah%E1
z(>yYcPwk!VpZ?U3%iq_3uD@r%r!e!#E0K&*oH6$k_!A2fh0|CwcNO@T7L@+3TwD9T
z_HYAVOL7NOcj$zw3D&_={g(RO58u>qaKifv2EUIHi}EZc7*%OBcQ@(JaSSX7-W&2T
z<U!c)NYVIDGhXLDY0zy=npQAv!L;AgxkEk&w@05Z*js<7|HZWY;F!6)ss#NeSNv&I
z%aaIW36;&3YPFv8G;(EdTJD{a{;5u36aBm=e46Ip%ro<0@U~Ec=)!n~w9jcQ85TL8
zb2M|KOHP#eRhi8A*c9E7(DioGrrgz~r^=4bT$aGt-POBkYG3Bs;I=@aaDxb!$Su*|
z;xrOgCVxrZpCgjrS0GXtS$MV3zL>GDtm$IY^wxw4(UYX-W=8Bujml9i{TZkinHt#;
ze<yxV(yvslEcNUy+1<ql>%%&A=JL%wGH+qbw4CZ@mO$^AZHdPk%Q6y+BK>~(R|ID!
zXy*A>eV)$kCl>t9FVx@Gf1!V||AL_R!JJ|Ikq4u;ML&$bSlOO7Cw*JGPxj`V?1DqZ
zy_NeaZK~R<H#XgFVredKe&2k#IjwzDmuA?Co@f1j6Xd3MwH@()5hIusS!7-Mv~h3K
zzqSKCN2dwTygKu=pOpXO&U;~A5vL-4$Gwi%N|=(6lyD(YDCt6yWvb)sw6qNw<+%j~
zKBaACrL{|&eztc{?VC2Y=VRc$AhF2JA)BMcVlxt(GS}z!R-A4L?<ne8K6%HioZJ;N
zZ?-KC|DS%Yjc-zOP<t3l$mO_)Njp<)GAuH7XBQRks>rUI)p@BiyO+8D?S#csr%cP7
zo)*11rZ&@ehTn|Y$qLolS@l`lGI;02=NARd4J}A`lVqLCo_8@Xx<#PVrC-F)a?ZD4
z=}fDvmg!m<F@cAxHnrTD*fTjgOk=K625Yln%hDQ-prcLCO6vTY{TBpYislNs5%fIh
zckHZCt%zrlJ<&6wZ$}r!RmLq&kWWlb+?RMeIVtsGdT_?C47=>$?C>0={OS3w`5Q_k
zN*|YTm;bL?Sgly|vevBrL;c)_w5EB@n>){Rt?p@=5IAM>)QM9UO--G4dAi0-i6#p_
z?T{TYXJS_t`;^&~uZ($J&)s`)n&6C(84)uW{rUV0gXe^1g#8M4kK~L#5<MY?C$28;
zO#HiKtMu!sk5c8+PiGv-h|e;JJDM$?Q=3y?>QR{-%}~WqyEneSQ=)52PkHZ|KH2_9
zGx%oN%x>_j4PXeI962XiKdB+<O^Q|af})9~?v*R+f4A@HD(GI5e5!fDbj}dwkkz3f
z84+0pUFsF3>1XGa1TTt~Y7A&&n;_xm>UZ2v(En7hMaa5n;ds@Az*O6Gr<|gk$2k=R
z%q3-2>#8`arE34xq}4u8jV{_9>>BeT_EOS=B*|ojyr?$AuDiWICNbtOtBjhx!f&<T
z8o$~83;ZtzxCef#Dh&J<7!s@)Tp#>8cui<?#KRc#c&~W<gn)$H1o`C1RPU^VIfshg
z7QHY3(ZJfs(d5_qeZs@Z|EGt~jGFbq?{1)OOk-MZrbEo9w9?GZ;((0Cnxg?vg51OZ
z#i~tSlB%3-n{86kSh=^-yZTh^&ZaZX^&Rn@mfaWoFHV#XX_yr2XBO}@*edvX(X`^1
z<<FYd_Z^#gV&<ip<$+R(acvtytE$QZE=RjhXq{%{cRTC(#K0Jjm>J3Qt0w1^Oi%1z
zRn=A4F|DaaJfom4Fe7L3ry%K&)vdx^OX|<|J)Dph+|l7!dB}fXfMAeIU~s5z_^aaX
z@W9BV_?Gz6gtEl+#FdGglC4s5QuEWCGKBNeN^Prt*Z9=Vto5$TuIFp^YChY>(Ushl
z*8R6nYDWLu9Zl!@U(9X~l22+*Igmednq$Vq0EO(ToRIvIs(@OD4&^S6^lyHa0cruM
z0X2aZLCHbOL;1s5BhEzqirbX<Bk^-mQL;>?W>#&{nj*bok&66^%37ZCl?~mUlHHGb
zF7+i(D4kq2Ep&$PtcrQgf%Ahm2Uo|b#Y^W+$ZIM7SL|GC-o()Lt1DodpC5O?li-?=
zUtt#`Q=&h{u8vcWw@7kLU7sG7ccJK1&6bXZ4G$YWH2bx+cfIH}pLBd$`V8UuQ~W0R
z@%noNdxqGB=tuR$FN~j`usowLE2^ZiVqVvhuJY~)6XX0&&R*hI<G<ctGC(ZAGcYG`
ze$dXKe?hZ?9|sGD@P%}S28J&RuZ;|ej*ae*ej58c_IqqaTyxy4xb1Ng@j(ebiPMvA
zBrQ+2PGw4SPWzIUo35BKJ>zs{e2!LbX0CqT+&rVw_OhG``>F>uthExgakU$3MH`qK
z);DZy2x;tZ)M^T9_UTCMknUd8^QY(3gwlzHlk6-0Oj<J4cN*)AnKN(9vYs0qv^wZ}
zFh|JMi0?@c^0Rv4`*+Us4zv#P3i%u6P*pxLVeX}QF2$Vr1&xBGf8%c@teADXXitAi
zHuH>Aejmb8!uLf)MP(!$PvlQyOS8<_nDIULYN=IiUX#=8*?s~3Cxh8S^JAaIzKi{x
zJ~OAdgsCE+Yue=d9RcCX<Fu2v2CNC_4P;0^84?$<J90yGX1s6G!erZw;%tt*+JfT~
z8;V3L)GBf-`%(>R?=&Cm;Ow70EhR`JJRm)*eqqm+K&No6X;u+knOhn*h497x37=Z=
zYi^9cS5S9|U5ZAUNcz|Gma4F7rCR;TF&S%TTUJX3cLkaU-H-m3v@YdYif;O@?3Jw-
zr%fokHrpqeZSv~b`^$pTIQ?b>911Rsd66(FB{?-d<5}UUV&&55)lGF%+nT#?_f$+2
zn7Jl(by|1!Rlh5KR{r(=RzW|4KLtMyy&d*C;&kN6$p4W6(Y`TEaoTa$<7E@rll4<$
zqSvSHO?{C%H$5r4I-5Vowb--rVC9b*$y)8&MGZ`ipBtxj#&u<OrFHdmz3V#ObEoIb
zv_CWQv%CFl{CoWa0>h(!MSCPNCOf4mW}nX6onu$Dx8zFc!3wKNo(AKFSB+Cz=Jf~U
z)X(FOkLcE(`>X0lUvKp5Y0Q2fgTIFxMxKmX65W|lpU0NJuk=;V{Ah;O2h~LZU()9`
zCB}HQ%GL2T%?xCT$w*G?os*hZXjds-%i18@eX1{S!tu6M6XXMa1zE)er`Hsi7Wqs(
zF;RQ+)22hwhVefWto^P9cSL(98K!q-zbtxCtXGxYxVSfH;<TAUf!BkxLjFg0BwJ>!
zsb!dcE9_iwM#%JN!<c)q@BA4P|0Nma9;iHB=~U}mcd7nuqkPkZ7PpR~&I#Qmefs@|
z6TBzpOguJi&cp+L{{F6kj=_`T`I4@rJLYibB^RsJot@Y`=}NF<<o@W3xv`acb+c>g
zBIXzV3JmV}(0|JRcZ_P<n)1h0GEM(y9t&I*|0Xp*vorg1?zFs={C{O4wGU%UC$vvw
zoAE4AHpn4qV%p6#sl07*muidZf26H%{oeYcYh}>Q;Nr;sxC!y02~Q@aOxqqHA9y!N
zA=o|mP4J5lw@|}S@vw}@eUUa%Tcg=x_+tcPq+(j)y5b(h6~xykwItn6>Paq7W>4cu
z(@iT&t4m*$A)jTMwI`<|moqOS&!$kVFum}2DPwtT1!HAu<%h}#Rf5&aYb<N0HC$`%
zZt-l5?fBdw-(}Mk(pB7**mJLE$;7ltb(1Bg%$YW0I+q`ZpPXN~-}JzOpmX6S5oaQl
zqAlW%Cj3iDOb<(U$=y~|T$)_9qot^O$3%t6hGAdA|IK)t#G5%S`)y%JU3o)M)3eU|
zGeX-p_FKnT_&@aD>dzjk5Op{DW%S{AzeN4y4XNH~?=og*R^)!nH7?y*DqkK~`K;2o
z_HpC-rd6%0I<2}^_s#A%ns9d_`}AFY2mP3XN+aGxaK}iM+Q#@ba&;Z;Po9=LUA6jr
z7srgGiJ!w(1dC6w3~35ija!jylG9a?Sl(UppuV8PX+p?Efyok+`=`Z~9GS%)n;Bb>
zx+r}`@9k-M$)4$wnMa$&XB?RJucIZuD&<GCn4eBTY^i?QkwCMcM?se(8{^dz1d{Ai
zOH$?2O42@Mh-D;av*r~Q$(P<P+gB6T@FC)FM}6mluE|}eyJRO!niw=aa(ZVfUlm*9
z?rFMlcM_zMmZplNO-TP-?px(sV^_!3xTYti_hD~*-^vR1pqoiclbup#B<XfFR~@Kc
z)AedvSuIbKXZuY*k3i?(gy6-|Ofh0HcVpF(+><t>2xpjNoXl~}70<n#9+U4^SX+2H
zwZ3X?^{ra3x)t?RjnYk)P0L#Iy3X}{?X8$lK4I;oiIbYAuAA)})DmiuZ&sKQ*jgD{
zx4H3LjZau$#EO_z$^X*+rbT7mEb1@qE9I*UtGr)1y+)zdrIx+Tq|16*;sk~H&jU(>
z&ICUS<_uUB`Yysh(zd8OIweLn_;JGLgqY;!Wc%dZ$!Akurv6NO9D6qNZ>DJe)51=_
zm!&_-CRg3BIbS=cHnG98IifkIWlziR)}tK-y^IrbCrqC#GhJxb`GDyWeTkPFO<Os7
z6($_^F9~oDDh|$1@Jx<R*U8)5D?j17e_YI|p7W`*YJ-BOb(94jPL7Dqj^>KtO$kho
znQ+ZdDpD)5ASbZPE>tvPY2=55;G~1;rcI%l4%3dz)R-0Q&ld47TA*QLjDB2eyh4I^
zqDj*Kv=2G=^3FBXH(qJ#?%2`8FhOrZ*R<R7ZqI(~_aRt4Qm49iqR)(<bMNM<7X$~p
zgtkUUB+W~@oU|zCeZEqOc$dYLgZcluESjGO{%Cs@{4&_hKV-s&{;WvD#=o(zs`mHa
z$}sQwQRFelHfuwdrC&raTUc87(WFJm&r<!eALd5qtu1(4{=RBe_3m2RhGPw<+opC!
zPktPBJi;!1ZR)hNhODjG=B3BGR05us8-z>8rzTXTCFFc5m8#0C|I#SY?mA)f%#+nI
zr9Z0ztB<q@On6y2smiSRVU$C;uHPrWnb8m8_a@n-eN2CmligO{Vcq37@$;k$GsUyi
z3bcx!H-)#X?_u<F3p^dz9r`s|EY3KtF-|1jG(J0iOZ=xq!Q@40vgvvGK}A-jR^=rP
zmW>sSW$pXB?sT>Ge(s$$seCHajHh#s28AboDHBca$T?elxM$tu;%Tb6b0YXM&t(4X
zpEdb*snmq12&RlJ$-gt5{dMwhr0?!mYu!>CGTA<}AU`YodxTE3POVlESIFauTjs9y
z^Yf1hC=GB9n%CnIq7pGHS~hNK+}gPBaq{s!30sq_k}o8$&v3|Tujs4fu6j`G-o(`P
ztjncOc*2eex)X0q<eUFACnDuhN@?nsyp}TQ>dXljC-2Jp6tXjZNs4d(+kTfx6@l3i
znvtO~)8l^U_Seaj?&*2d7d>NVfvo@j?2Y*brN5{71qy_iMubPKiA;!@6hA#RCS5VF
zy6k@Q+a8e#e<%1(R;{qASQWG^PCmROQYb+vAS!T8;MqWiAc4@3h=_>r$f?oaV!C7Z
zBuq`xO({%w&e)T2KjV7Yjokda*}3@zCklh(Z<Ll-dRB*22UTCIDXcXJN^Z$)ebUO;
z#nSE8!{5g|fq#PJl(K2MGYn?kn0hwgY7kEdQv_ek^2B*5a=Dw!pH_WoU}*`S&^qZs
z4EtRB;OX(3<LBg77A2SOuY6K{Df>;)+Aijd#H=5Ija4R@UNPV1yly%g?Kx4dpdu_k
z=6FI{YEMp7kK+X48G#|k(|9L&L@u7t8tCiyDsW~iUw1@7RkHWwq|7ZdS?bD5!-Eqt
z@Ao~P7Ms)KXA>h3|FWMc_+n3ILuK3lxTmSbeyM>?k@hj~rvLWqiaZ<N+x0MiLuFFs
z^XS4B?c$AvC2?QltCMG?94?$u<Lvh*&fD)!_@c0t35WA}YyUPFH|}rT)IYs*N!yp$
zuB5do?VaW6k8<pC%}Puv+@ebB*EX%0`Pu()+})%}$>FK_>4(dFiq16bYS8TWoyZ&T
zGkj81YesQqO5xw4?LD6&9`s~QlblfB{-pAGxn_&Le`-)v@Y$sE>8EmP%cfLMtubqA
zX?@*)H%%d*tw_3Vb@RcQ%jW$J+*n;yv7@@Z!K3;`R$^RFLttq_X?9@Jq@KL0vgs3F
z%@Xi0sGpPMU%hnd%Q;nHkr7YY_DnPJR|)b8J{x>Hm@Q5xWnyZ5x?PT6jz`h@qPN8%
zrH*wvO)pzl_8h4`HZikMXvX^)w#k`kS*1_PE>t+TzH8G84h&WcX^w1<tBK!~;F(mJ
zv^r@*>Xqy>Ih#t?l})U;QF*$yynboJ>W-aVyL;*<#7)0FgFDNjW@dn0%)0pY^c&fx
zC7k7b_15!GrHfZt26vafos||pxA9~1j0T(dqwz_lZq+su(lcI1&W;kOtt->%{_39<
zFPUYY!<7H1B%?B;Bebis=YHJz<fEmRDz7(bO#U=!PRrXi-8lzCa^ibZV{%0cmiJul
zv7X_d`mKc5?}p!laP7#ns58+k0-59H#EB)8C6%WxPt8lq%QY)fs}5+K)i|>$rh7rp
zv!0S(nQ1Q5*7>haNz0aNN^Hq$eKCPCCOC7&jH;IKR(}8dpq25ialGmMm6eU`oo$_8
zbH(FBlXm2s_scArG@C8RI;13QbHtLwyd<f@yvWX)do|LvAEvdZ#x+R#mHL+kIz%ML
z6~}SKA4ym9vu*918a=JJhH=L4fP)cXWy>p6gO-*HwzgIK2XIEZ7agyDQM;@EO26-f
z{r)F|G@}^f*G|9dFW&TO5_5QHa%Q%6>75Rdey6JYL6ajw6S<PsrJc>TuX)+59Pq=R
zHP|i0Fv2r(ZuEzk_c5BW)8aNJr6=2^?o8!Qznb$f=VyUYg?8P&hRsbpEpJ+w+J!o`
zy1aUpO}I4a?~KoLa_0K`E%fUR2n+HGUlC~=cO(90ynWJ^H0ksU>6bDl1uE9AYFN?8
z(B0Fszo%}J(KLk+of+c6R|8^#S43<|F-cD^N-KA(dN%QJ(88RyY=#J*xR6Ml^xyRl
z1CNzuro5;KnZ0}7>F}MA>S?pm&t<<1xtSRnH>YuG`l{Lg(u3y2W-Rl2?0+J7XOedM
z>YO9}YyETU_RnMYOG<3W)6N%eEe_F2cb)w?c53ySm}Aj0?Ou5oTSTfj8fQlK)(GY(
zl-~?eic~C&FS=c>K0R?RcV>N*MAXti-jLc5zO?&g-}`4w`ZDKLWNgvVJm0{R8T)JB
z)Fw^eHLoH?F^j3WB{DwxcD8i!r?O48;texfi~=>%Z_ayHmX!WKh;^n)jCE37&4wQT
z&}|9awGC4lgX8_S1<FKP6`3`ho2VN9sJtb(GM=S&O{;NNZ(rE-&*|%0gQsvNawP7|
z2`YQrWznx68tAVTcs%HI@Y3koxCIGKiPw@j({H7x=k?^86`L0umIhQ_?U>Q!HDTg}
zuM>_;>unc}?C^{9=kx3AvhNp|u{NM4Zd&Bd=pAvll7A&1Ou3Whm3bqRJ9k^&ltPWt
z^;KQ<3=N(wCtDgj6}!3mQYX|-<C<BQI5Ej6yE&&M_e}kt`UAPG^}E`Cbfl(lY_^&4
zeVTM`Vy$gU*2F@;(%^ttmh9L0XIpjKmUn6f@rR_w_@%GNU@K`Zc~pA7<6*~{iI1jL
zOzVzsFFsx6*RmivwX`$HF?UWLXGvsfcEzNcwrO{&dgpKR&r3X-8q?P1x6bcYfTG`-
zz<1FzQyVk(<jNO2m8~t8sd`?M-*l;~X2SW2rPCy4%nrI(s~s>SczXKj+zW-qB`+Ga
z`WH_NpEG}6LWyI<%v}B2xEW9U%>29kw+C(v+7&C4u&LOl@^X{Or0vtbP2-wAeO}W1
zWoaeZ;z5gpP81yKI2q@iFd<Pn-?PxJ=1XmU!@Cyc2|AOVLh@%{&gv{U)bqaAX!@2Q
z$EZ_rEb-#$HJMW~vvT?KlZyTny{%?!sB7?UKQ|#aaPqvC%I*fE$=AAc1A0OVyRx#6
z^sqNxOjwZqY3@wF8GZtDvbzqpX0$S7*5ysF2yMhYK2M1ZPrQJisGpXfp`V$bji0@r
zlV6x$gkO_it6z3cm!D7*Z+xHMJiqyV3;Y)OZSdRdx6SXI-&wySe#iU{`Ca$B=l9m{
zzTbC0PX8!>1OI6MSpRT;cmFc~4*!1t8UEG&nf?X-6aDl3+x(~bO9Wo=zwdv}|Azl<
z|BL>&{4e-F@qg+s6`&Cy5}*~J8o(ML<NwWHF+ejwC*Ys|dw;<IwgBe<_W<Vf(13sd
zkASFvuz;L^ihzcISpls9TLLx(oD4V>usPsRz_oyT0Z#+o20RXU7w|LSYXD~;V<1zY
zSfFU2NT5`pVxU!^d7w?8b)bEqLts##Phd!3Qs9rO%)qR`yugOQrobCvJ%OEp{ecq$
zCkIXqoEEqwa9QA@z?Ffk0#^ra4%`^HDR4vJ*1)}iM*~j=-VS^a7~1wS@NM9Sz^{S-
z0$GB%gG7S(g4Bbwg7kungDivmgIt2VgM5PGf<l6_f=YrigNlRdgKC3%gQf&c3Mvfh
z2$~qQqJMe+nxM5odxEwG9Sk}fbUo-^(Bq(IL2qX~2>KlKHRwms&mgv7j$n&Y-e7@X
z{$SBysbJ+`{b0jj<6w(mhhVp0*I;o!&tTu+Yk_gWnZbF%5|P!x<-twC(}EWSFAH88
zye@b{@V4N?!9q1Rr`-?!llHFgUGR(Gx52-H8AEJC971$LbVF=H^g_%+G(%)V{6hLe
zN<;cW;zJ5U%0mi5CWTaoG=!9ew1i9uX$v_XvM6Ln$kLECAxA<^gsccz9damSNyxsC
zJs~$jo`yUN;SUuF{TuQw<ZZ~WkVhewp$?(Rp+2E{p)sMZp<$unp%$UWp|PPeLmNWZ
zhjfL`53LTZ3!M=<FLYgKO=xrI%Fy=E6`{96kA~h4Jra5+^hxNIP?50jp<-eGLjQ(J
zhy4uo3kwLlUuY6$7G@M?5tbd65~d%P6P6X$7S<5f6}BL3N?3o`(y(=5+rqYl9SYkM
zb};O4*nzMUVdugwhFuQ39`-KmXBb2H|1g$t&Tx)!?r`34;c$s?vGC)eGU00B=HV9M
ze&N>P4&nacnc)Y*JHivg>%%+4Cx<Tx-yFUqd{y{{@WbK9!mos13cnoA6>%;6aX5E`
zWQ1%)QG{YdQiOLzLBxUVpa|QD%81s8oe}dRR!8iLxEHZIVn@Wfh@%mgBQ8c<kGL6e
zBjRbqorot9_aoj%{EGM)@jK#A#NP;}NUlhMNa@IB8LE*wk-Cvakrt75k(a7MBLgD+
zBBLTBB9kH$BGV&tA~Pc^A{!&;M#lNC_Fo*iDe_q4i^w~Xy^%K~Z$+v`$wvuB$wYBR
zNkutC<wSW#nMRpKB}HXL&5GI+wJ+*))S;-oQIDgpM?H&r8Fek{SJdw)o@nl9v1p^{
z3sG9pX3=)h&e5*X4$*<pq0v#%(b1{Vnb8H&#nGkF71153RnZO6&C$!EcSIkKJ|2BC
z`bzYL=qJ(7q8~-yi+&pYI{HKOx9HE&tTF5{95K8x!Z8XlN--KS7BQAFjxlaAelfu@
z0WtnDh0!@Nc`-?TWigd8Juwqwro_ySTphDJW?RgjnC&q~WA?=ykGUE1GUjj0ub8(n
zJ+ZH1xMM|Q#baY)<zuB|1!F~Gm13o0C1WLGePV-R{bIdib7G5Q%VOJOTVk7H7sbwv
zT@$-5c5m#2*zK`<Vo%1NjlCRuDfU|I?bz3`pJKnpa>q%<NyZ7rNynMRna8=rImbD~
z`Nf6Dg~Y|jCB>!0xyO~pmBm%X?U`2}w;=9d+@ZJ=aTnsw$6bqi9CtVFR^08lM{y71
zUc|kOdlUCD?sMFSxG!-(;{L@k$8*NV#>d2S#|y@b#cRgv##_WY#(Tv3#QVkT#|OrT
z#fQg7#wW(-#uvwz$2Z3}#n;Do#dpL{jBk&h7e6z8M*M>K74d81_rza|{~iA%{zv@B
z_`C6&6aL35CL|<CCI}>GCh#Q~CP*iUCTJ(9CGaO$B}64SCS)a)C&VXsCAcN{CL|{~
zC!{1eCFCSzCqyPRCiEsePiRh<mC%wfJ7HSF^n^(X%M-d29wzKac#v>8VN1e?_`M0o
z61FDXNbpS*O=L^_mhe4+A@NJXuLR~q#l+tU9}{>J`4Zg|?GiN-)f2rE?GtShbrMYy
zZ4;dmT@s5E%M&9KBNL+%vlB}a^Al4O3lrlLV-tfDOA}`%PD^Z0T$4B@aaLki;>5(&
ziR%*2B%Vq<nfN{NMB?GZV~M*GPbXH^pG|z0_&D)f;;+OniT@M-CjLqMm&lOBk;IwA
zo5YhOk|doZm!z1am86$skYto(oaC6~mlT(joD`jukd%>Blhl;dnN*iFDQR-jw4^IZ
z%}G;|t|whg+MRSh>3`C(q$?>WlI|p(NjjBuDCv08?4*-PJjw5pJ|?LrGbM8*zfby_
z6p(C}?3*l;;-5S%xi7gPd3ADG^5W$F<j&;z$y<}NlQWa|CBIBQkbErpaq`LJOUd7o
zk0gtwn53|!2&br}n5D?3il=C#@Ta7w<foLS_@!v2PEDDdvNUC7N=M3`lv^p6QjVq^
zPuZPvBjr%a$CT$OoJ|i>9;U2GdYtk;MJM%J%9oT+DZf$}Qvaq%q{^hSrmCbWr)sB~
zq?)Fhr<$c&q<WWnq=u!2ruwEvq{gMjrWU1Eq&B5Cr*?JEPMx2+I(2*M;nZWP2UCxv
zo=LrwdOP)I>VwpWsUK5|(z()@(|)HGr<<mkrJ1D3r1_`0q<N+}rp2Yjrlq8%r)8wY
zrzNEoq&25?r1hnBrnRKaNSm8>Fl}er$+UfGd(w`i?MS<pb}Q{cntj@{w3lfg(!QpB
zPvcJ)OP5PmOIJ^~n68&@pKg}!m~N47p6-?&m!6OwnVy`UlHQqKkiIg#COs>?C%rp;
zS^C2C*7WV^@6)%Wze(Sm{xW?>`jhl~>37o~rN2wxnSL()So-tyIazWUZW)>x4jH}~
zMj3t?n=`aCA~TXR$}{RS=4bS0tj(B`F*jp&MsvoxteqJp8Cx?JWbDe|&+N^p%V5kr
zmBEpDBSR@uE%RXpPv+T-D;du-u4b5J3T3inUe9=(p_=(K<3Yyz42?{!OsP!eOvTJ&
z8I_sknK79anc0~knRS_YnU<L)nYNjcnFg7OnQ@u1nT?rQnVT}#WnReKpLsCza^}9w
zbD1xqPi5ZC+?{zib9ts-*2K&OnR7CyW^T#6m-!--DN8!*e<oM<&&*Gm&of!GHfG9Y
zz0DNKdY#FYC6skAOF2t8%O#5^t0>DXt0K!iD=8~7D=o_-%OXoDYeH6U)`F~-tVLOi
zv!-W>x9!e4oOLK`N7m-7HCgwvE@s`&T9tJx>s8k8EY@tXwqIF7*<#s-v*oibvdy#a
zlv!rKo8g}Aob8z%kR6#Fk{z8LpPiUpkzJWxpWTq%lHHu$n>{0YYWBSBCE2U8S7)!!
z-juyDdvo^o>^<4XvQKAU&c2`hCi`{v=j`{{`{r@v2<M38Nav{JDCflGgytmWWaTvF
z^ybXUY0R0OQ<syGQ=Bs?XF|@AoR2w|bN1$3&pDcNH)mbW#+-dQyK-*lywACr^D0L^
z*SEtgS3B1>*CJOk*EH8SS16Y!H#v85Zc1)cZe?y{ZeQ-y+$Z_1xj%D7^SJW1<{r;|
zmb)YOSniwLd%0(FU*ulOJ(~L~_h#;s+^e~-a^L0Z=H=z-<w@oh<;CaO<tgW7=V|Aa
z<@x5x=Q-zD<@x2Q<o(Z+&9lgB%3GB;BkyG1_Pon^d-K-k9m(62cO~y?UVq-wyhC~O
z^BnU9^L+~5<o(F|muH{<DbFzfeV$SNnLN9E;r#D;ZTVIC75R<%4f*-`(fObAbMu?>
zYw{!V`|>B|AIeY5-<-cVe_{TT{GIv7@>k{G&%c`gCjUzQjr@=K@A7Zwa~5zH{K^+B
zU@YJ-_?ItTAXQM3FIyl{AYWimU{_#N5Ll30FtcD%!TN%a1#1d+6l^Y7S8%`Jbiv(%
zn+2SOe+y&^B@0svLkl|!(+ZOceG0=0a|-(le;2kCPAyzfxTf%W;m*Q+g_jCX7G5bl
zSNNdtP2uyxuZ4dKe-{2P<Sh~?k}lFH(k;>{GAJ@CvM#bIvM+Kdax3yKiYO{6sw-+L
zYAk9mnp8BcXi?GfqMb#XiVhbYD>_niuIN(HqoM~z4~u>leJ|n<5HIE`mMIo1mMu0Z
z)-Tp9RxP$G_AB-;zA-PnIIB3LxS+VAxU{&sxT^R>@#f-l#k-3S6hAF~SA4H{Q3-2F
zeu-+yk7A<|tCG+X`;z#Q$P&krn3Bwrf|BHttdg>lx{~gac_qtBPL-T5xl;16_(93z
zlIJBaOWu`yD)~_IvE)a|_Y#&;=2F&Do>IP2-cr$0;ZnI$wNjl@n^Koj-%_tq&(i2p
zx6-K6%+i$7^wR9o+|r8DveLHF_R^BluF}rZrqU^;vr6ZdE-hVLdZ=`B>EY6?rF%<v
zl<q0rSbDbfROzMCo28FS@0I>5{a^a0l(FnX>95jHrJqZ=%XrH;%jC<{%M{8K%aqDg
z%1p`(%B;)W%RI{5%3{hQ$`Z?x$}-9_%d*PS%W}#J%8JU$$|}lg${Na=%R0)s%lgWu
zl}#?2SvIR|L)n(H9c4Sqc9k6}J6m?G>{8jivWI0)%bu6LD${TKUB*$)Ud~dkS*}tp
zSFT#FRxVv`UT#tDULIARQJ!5MU7lKAUtU*US>9LPT|TjVLHWG$4dvU)cb4xj-&4M~
ze0TZr^0VdF%Wsw6DSur4uKZ6qPlZs0TBSmTR;6o2UqwkpTSZO9tcsqB#T8pCR#mL8
zxL9$l;&jE8ihUJ(Dvnm1s(4fJyy8~H--<64?3F^5f|Zh$I+fa$4wVU&;g#`~QI(;U
z!If2&^_5+fb1Roude2`~xvp|^<<81ol_x8&Rz9zMQ~9v+aV19;Z<R!qWR*gdd{slG
zVU=~2U6py2b5(eiXH{ZVQdMTv-1!Anl~uJ>9aYn-rdG|UnpU;4>O|Fss%=$AtBzFd
zuWFufyy{fd*{btZSF0{p-K@G*b+_ta)uXCsRd1_4R54ZaS94XfRU21JR7+ONRhw38
zRGU=?R998ARQpzQSNl}ER+m<%R+m(#R~J+lR_9dbRnM)SQ9Zx9w|Y+Xtm^LSN!9(;
zvDGuHPgftTK2v?ZdQ0`O>buo1s|9OBYMxa;txl+6s9~=WuK8U3y;{76x8_^5a*cY8
zR*ig(d5w0BZH-Tjb4^H%e~m*;KuttVd`(JCSWRk8PEBb|bIpXBB{gen7S*h-Sy;28
zW^>J^nvFH<YIfG_tvOJ0wB}IFjhag}cWNHhSkHc6^Qq=b&9|CgHEgv^wKBD$wOqBX
zwcfRQwMMn}wWhUhwZ*kzwSKilwHdW}wf?oqwUcW*YolxXYiny~*Y2uaSG%}&Ywhvc
zy|t@rZR-}*uCKjQyQ6k~?S|SLwRdZu)ZVN8UHhr_VJ&MNSDkX5Vx3T(VV!&(XB~H)
zQk`2}TAg*BX`N-AbDepeQJqy?dR=T?SY2FQWL;EUWnETXW?fBPbzO7a)!N#+b^Y~q
z9d(^`J#~}nCe%%?n^HHeuCH!(-JCj$daHWZdY^jVdcXRB`oQ|o`jGmF`uO^U`i%O_
z`t<sW`lkA}`sVtM`u6&s`YHAE>gU$as$X2czJ62v&iZxr+v<1J7j_@5KUROL{%ZY|
z`iJ$;>R;A>uK!toX9imXO9OX<P=iE+WP?nDVuMD5eS>v_SA$zaP(wsRR6~42QbR^V
zaYIo<K|@(XWkYR4eM3t_TSIHZ?1sq=vl`YmObA@laJ%7Y!_9`f4M!SoHC$`pY<%DF
zu|c{~vr)NGztOv~dzxFLU1M-#VB?>L!p6MD)W)>NlE&u7j>fLWhQ_AG1&vc1mozSJ
zjBlLWxUz9W<JQJ~jXN6mHXdj^)VQnhWaHV!i;XuMZ#150yw!NW@j>JB#$S!U8~-&j
zHZe7^HnBHxHSsnHG>J87Hfc9mG#NKJG(|Q=G{rVWHN`ijG$l1<G-WkqH|aGMHkCJ3
zG}SfrHce_;-88>xchj1thfR;0?l)a(`qK2d=~vU_X6EMKO+TCNHL*3{Y2s|Y*<{*m
z(k#|&)NI)7&}`Wp(Cpf*->ls%-Yn7F+B~ayRrCDjMa|Qim7DvT+nc+ZYnrz<7dMwS
zFKF&;UeWxeS-9nO^SS1~&CD$~nz>sJHh*tsZ+X!CshPJ$sYRh>Z?i=UTkG%U+!n1C
zo0h27mX`9C?3T4Hc`Z#XnJsQDIxYDvl`W<%r&^L)cDC$qncs4=<!sCDmRl_sS`M}x
zYq{34utl-;f6JE^@m7geomTl)(N>YxKP?We$*mEs9<7e8Ol{t+p{)(AOIkZxC$@IA
zu4v6|ozgnH^;K(o>zvl|*1FaSttVS|wVrR?*?OV%YU|zBr>%Edf3|Y93Ab^#{cHWz
z%GRdTCe>!pX5Z%97U~z$7T=cMR@gSVZE@SmwpDH2Z9Q$<+Sa!nX*<@oq3vXwa>wen
zD{c4MUbekyyWe)Z?R}e2J6k(PJ3~8j`|mcvcFuO*_MdHB?I!K^?dI*)?W*mX?NaRt
z?eXmu?LO^(?IrEu?HTQP?UC)l?aA#~?W`S(+UK`7wXbhK-M+W|K>LOEYtvS@A8Fs*
ze!Try`|kGl?Vs8owDWiHcKmDq*8aVnuj5j?V24<TXopgVVuxXeS%+nZdWUs~ONUcO
zP)B4(Tt`wzc1L4JUB|qR(vI4WtsO-jO&!xaCUvaqnAx$Yqqk#8$A*sm9UD6icO2=s
z(s85XX2;!*pB+q{e>%Q&yy*DU!P3do$<-;`>D(#TsoJU4som+=>C$Q4Y1V1c>C-9O
zna~;6nbw)oncJDwncrE`S>9RK+1%OD+0{9@b4KUF&Xt|ZI@ffr@7&b6t8;JX{>}rP
zw>s~1-tBze`K9wmCv%rrmp~U!mvonGmui<;mt$9SS5TK*mq%AkS8i8MS5jANS5sF@
z*NU!%T@$;Ob}j3g)wQ_mNY~k}LtVGJUUz-&dfxS<>tmNl_k*rSUEjOzb=~gb>1OYi
z>VDWI)-BL2-mTDW+`W3bTDNw$UAIQJW4BMYf45(^XLne4bazyDc6WStPIrEHNq22`
zLw8SiU-zW$$=%bsXLir(w(4>0vG4Kd@#*pF3Fry!N$SbzspzTdY3k|hY3=Fi>Fw$3
znbK3!Gowc~X>HG{p1nPrdN%j0>)F<GqUT`Glb**tw|f5e{ObAL!_v#z%hk)?%iqh}
zE70pVU%2;dk4UdrZ+dTTZ((n7Z)5Mw-b20ndUy4n@4eM~t@ljt?cUS9uX<ni-tT?f
z`=^(qkF)Q8uWX-OpFp2{pHrV{pFy8VpI4uIpJ$&>UqGKnUu0iOUqYW&Uvgh)Us+#K
zUrk?QUwdC`UrS$iUsvDczKMNP`eyd6>RZ^irf);vvA&Ic`}&Udo#;E=cf0R#-=DtU
zeXsle^>OvH_KWrl^-J~(_sjIl_e=Nl^sDt7_gnW{_Ph2w_1pFP^n3QZ_51aQ_s8@n
z^(XhI^v~&^-@mwjZU6fI?ftj<pY}iMf7SoKzkR}&e%1*;`+xNdP7s}-IDvP9+yt=+
z+!NF%m`yO9U^(GOzyE}Q34s%WCh$%0oM1O0Y(m6@xCt2(@+Xu{STU_=LeqrW35^pP
zCUi~coX|gE#f0?}Hcr?&;n9RA6Fib`PhgrTG*NP*(L{rZUK7J6Modhem^v|YV)4YH
ziQN-BCpJx7G;#IB^%GZ3+&Xc~#9b2)OguR8<iyhxFHF2P@&3ez6K_xaGx6)hZxiJv
z{huf@NoSJiB*95>lfoytPV$_TGRb4o)JgV}ye9=rnlowIq{)+JPl}p!e$viK+b6x8
z#6S7hB$vs0lO-oBO_rLhJlSfp>16B4F_RM}*G$fv95#8w<TaDmPM$J(=j3aXuTOq4
z`RU{vlMhe6JNd%o6O*4zmYO0mMR*GH6!s|sQ_QAlPcfaMIK^s;<CLH&E>ohXBuq(~
z5;rAlisqz(DWy}&r_@e~no={RZc5{n`YBCQ+oyI-oicUW)EQG}PF*l{#nk0f*G}Ct
zb@$YrQ}<0hHT7Hm;i+e*o|$@e>XoV2rrw$QaO%^kkESY4)0n0=O@ErxG@ohy)4ZpZ
zPm7rrH!XHr{Is-bMbmPo^-h~HZR)h?(^gGeK5gT)P180^+cIt2v>nrSPCGa4^t6-H
z&Q9~~yfck=`qgPar?E_Do6a#^csk#7!Rh?d#imP6SDCIg-C(-qbld56(_N;!P4}4Y
zG~IK0%=ComDbv%YXH35ols&z0dgb)i={3_Er&mpHo8CRWfBJ;!bEdDDzHIv9>6@o-
znSOZsvFRtKpPqha`rGOL^FK|$U-fPJ*XjH-cxG74P?@1P!+eJA47VBnGrVVH&&Z!q
zFr#or$&BI|t7fd9v2n(>8AoOuo^fo(%Neg{Fwf+iDKt}Lro>FenX)tGW~$6on5i>U
zZ>H@`yO~ZiJ!iVk44COXGjL|mOrM#dGpEm-F>~q6wKLbv+%xn3%-b{X&b%@6;>@=*
z-_86u^V7`VGk?rvoW(zjb=ISqlC!jDna^^a<uuD-mh&vTS)sFhXGPBnpA|nVX;$j2
zlv$axvS($@T03jQtUa?1%sM~o;;hTFuFSeO>;9}qvmVcSHtYSY*R$Tu`ZDX|tnaga
z&tjV`F<WZ3{A{J!%Cl8xtIyV$tvOq3w%%<0*+#QnW;@UJpY1!_Z+779h}k8xC(mx4
zJ#qH5+0$pwpS@uAirHIcADDe=_RiVIW}lyZarULzk7qxc{bcr)*$-!1&G|I@<LnQ!
zMdygj;hZBphi4Ak9F93cbGYWP%+Z@8Jx6tp${fWx26No!7|n5;V>c&iPQsk@Ic0My
z<~*PCX3mE>oO3zmzMjK8mu;@rT(!CD=PJ*YpX)MLbgs}`$GP@%?dH18^_UwwH*Rjq
z+`zd3b0g;#&F!4qK6mxp{JB+gXU$zQcjeqobC1kDICuBl9dmchJvR6J+(UD3&b>VM
z$J}Rg-_CtM_wQV(dD8Rb=9SK?oL4)qabCx~?s+})Ce52VZ{obU^OnwAId8|jRrA))
zOPqdY-nn__=Ute0W!{~6_vYQ5_h8=Bc`xR@pZ8_nw|U>^{harE-k*7Y=dsV{n7_SD
zbiU$zo%we2z2*na51F4lKYo6~{KWZb^V8?&%+H!%KEG&w+5D;V=geO)Uq9k_X5@sF
zk~@Jj3qw1fHlyrGR4C(UsQs@|CiR-3q4vK%e;eq;?S|U_C1o5hFM|%mDr0D_6=CG>
z+r_}Z(CsSV0NTv>uc7vz0)HFmN|lD%e|7xrGZ`2dz?%}C?spzyyu^5@^WwpWESd*<
zSvY$G?(=VR{nyJQ(CPal?YQf=zyBL+e>8#)R8(uM{jrgWfdO;?<B!fmy(~hzG;S~m
z@NWm7v-It?I^=wn#@ZkCpzY}r-L5}a>wf+J-z&nfW5r#NLJ_94&d_gZjkVwY{x1O?
zgv!4?^joLE4kpkEG}6#xQw$Hh7TEFs|NsB5Il=o?A^S72Y>a^lIVct?7AaOJ>MQyv
zWh=%h>MB+$#VaN#Dyk`|DXXcdsj8`|sjF$IX{u?dX{+g|>8k0e>8ly28LAnn8LOG7
znW~wonX6f-IjT9SIjgy-xvIITxvP1od8&D-d8_%T`KtM;`Ktw}1*!$91*?Uqg{p<A
zg{wuVsjDlhE2%51tEj80tEp?KYpQFhYpd(1>#FOi>#G~68>$<r8>^eBo2r|so2y%>
zTdG^BTdUis+p62C+p9aMJE{k&2dM|Ehp30Dhp9)XN2*7uN2|xE$EwGv$Ezo(C#ol@
zC#$EZr>du^r>keEXR2qZXRGI^=c?za=c^Z}7pjM=+bP;AIw`s-x+{7pdMcJHRVcYC
zx+oSa<tXMVYAEF?7J+vhYANX|`6~G-`76aM1t=vbSt(g7#VV#Mr7NW?#wd9yc`G?8
zIVfc+WhrGSW+<g8B`GB-CMu;WrYR;Xr6}1c*(=#7*(${<#VILj=x8Wu=xQiy=xL~E
z=xeBH7;30$7-*<#*l3t*7-?u~*lAd5m}qEdSZLU47;9*0SZUa6m}+QiSZg?Fm}w|0
zDJiKcsVJ!{sVONc)hSjh)+*L0)+tpfRw`yGW-68`l`54eDJm){Dl3{RS}Iy8S}O)A
z1}larhAM_BhAT!WMk+=rMk{J6=_&ar`YJjqDyk@{D66QbsH&)`sH<qGXsT$bXshU`
z=&I<c=&Km07^)bl7^|45n5vkmn5$T*SgKg5SgY8m*s9p6*sD0GII1|QIIFm*xT?6R
zxT|=mc&d1*c&qrR_^SA+_^Sk{1gZq71gnIogsOz8gsViTM5;uoM61N8#Hz%p#H%Ez
zB&sB-B&(#Tq^hK;q^o48WU6GTWUJ(;<f`PU<f{~@6si=d6su?}>L{8jnkg!(Dyb@~
zs;H`}s;R20YN%?eYN=|g>Zt0f>Z$6h8mJno8mStqny8wpnyH$rTBus8TB%yA+Nj#9
z+Ns*BI;c9TI;lFVx~RIUx~aOWdZ>D;dZ~J=`l$M<`l<S>2B-$A2B`+ChNy<BhN*_D
zMyN)rMyW=t#;C@s#;L}uCa5N=CaET?rl_W>rm3c@W~gSWW~pYY=BVbX=BehZ7N{1g
z7O57imZ+AhmZ_>K+9(<;nkeQNR5_d5)Oe@a8Ca*<*%*a*+WRU6=o{u4D+j1JI0c27
zT6v}0+4(tnsRX1ss|Hk=sRhKE7&xcfs0U~SXa<<Nhnt$aC%ZXY7<+qWY6WE2X$P1Z
zrJ5C3WcsLu75LV=shXIY>ICQpSo_)fW;p5xlvx+M83ouG##_W$q#1bod-)q%DH<3D
zm;{&xn0T876j`Jj6nWQ})|%FtCb`)7nFm+|SO)moTiN>A+XdJJ*ak$HDq9s8SqE4J
zXnMI>yIR{h*$0GrraM?DIs`Zcq&g+~c^Nnc*crK)r90=FI|rz^XPdYLcpD^G<d{@>
z8hJ#T78<1oIJ)Mzy9L;IB>CyuyIYrAI~WDJC^>rt_!uO+SlgOdsrdRi*&BHV*!j8!
zxCi7}c?7701_T5L1O_-6S$la0_y-hQcv!2Mgar5mB>PoZ`vwFBga-HpD4O{iD497L
zsfJd1=XsV`=-Zq7MR-}5t2(6^1=~gj#0A6zga_z5MFqqLL<hurMFi;C7kkGCBm}6~
z<^}|~n|Wpg6nL2#<piV!<Oc*fx>&@xyC>uY#JVO2lv$KoBnCv;WCrAW`8uZt6q+Xm
zWCf%I1o~wMIQplV6_^(U6b6(A_!$Ivl>`(Aln0arq_`BBR|L4)s5zy&l$liqn3+}u
z)C8D%r<ogCmwQwPxLP^;)&(dB)&{s()!JH`s|5O+DF!M9>buoADx3Lws|MQosRe2V
zst5WxY6NNp>I7;BdU%<e>ILct>Ko|>me?2t8U`8!h6NZ0*4df_s`^Iym<5^!S_GO0
zS_WDLmKc~?Sex6}Ry(VhWjK^u<XPGTdic1xR$5yJ+6KnCmKxgy*14HDIs`ff>UdOG
zSo=E#s+rk%nK>1jnYtF6I|sT1Cb`8Mx(C);xdpmec?9OAc?LRqdj)z2`UGa$`PitN
z_y_t1+WPnfMtKGV1_lNN#=C|Eh6IKN1_vfvg$HK&r1(VyYB)p&M%hLM);QbyCAhi<
zMF*;uxSGWT#(8Jh);PrlrntoiCIspkCkCpU`M6aX2G}ZkBn2kA`r9W5>Uc#tD4A%Q
zqy(k~TA8N?7W-w|+IskSr3Y5{W&~yi*12W{YC6<em6&G-dRpgOrn%$>sypRd<pt&k
z8aU<z76zJmr&tyQmYT;|<+_&y76n#&X4zE-rWlt776<w}mIsyvx)>*z*97YNRRq=s
zRs~iD`ukN{I2)DtmD)zQrdlcmDF>zcY5S`NRavM6=^LvBg?Zb!sQE^EsRxA?7`SN!
zX_*-NDB5WTrF-cHX*p;G1(<0EX`ASo>jmit83Y*yMcY(c#Q9|Sl)Dvr83h>!nFg5$
znFUz{*&6wH*H~EwMLH_kX_{FDMSEBW*#y}J*#)V1W|*ZK*t^*W+1h40I0iWcDcdDl
zI0xBzxCF&`m^kG*X_)1?89L{=`+2(sWjUCdy9ap$=@^z8<eF$W1)3K6dIy;sc?D^i
z`2-dE_yz^})mWHW_yq+7`3J?@TN=h01_lKMnOg)0<(V2;hXj>)n_5Mgs`~~w+I!U6
zxZ7sfl-iWpI(UQ!IU5E#)>^n)q?<(tDLU6VX`89o#RNqKxfrE6S=e}6s~Hv;r&)Sg
z#|Fg(d78Qzr(1fM#=EE*8oJr}C|Xwfy1Uj{=$oepC7XG9$9kj%#hD}qB?YAfr3OWt
zCfe(IB?rX^C0ir}srVOpWw<0+6j){i#k%DL)!CHU<Ok&jDf?sv6$j-76$ZIk*!vU(
zl?0Uq6<9g>X9r~ll?D|ARRk#qR|VAtDF#;u*#&1>85&mxsRoxBs06DTczG%X*94UZ
z)dqQ3sRfrC=m)C@YXqy>WqRud>jdk&>IG{Dn;4o|8Q5zEC%I|`D;bysEBmV3Sp{1L
z8w5K$83yM&nFXua83(8M*qECKTLha1TL&8jI|jQ2I|bVYy9XOOdIl?5+6UJ<I|thY
z>zd@5q#C;fI|P@Rdj)$02RnM1>X^9(mzcR2`UU$0tA_*zdk6am`v&`12LuNPM+Aoj
zhXxxtyBY-rhXiZb85@QN#~CFB*Vx4c#{|a)#|PUQS~^AsM+H|ICkE%6qy#4fCkN|!
zg}PaIqy?u2yBenlX9Z^lX9QciX9wp5=LP2m7X%jv7Y64C7X_CDmj;&wmj_n_y9U<S
z_*xemRT#K9R|czC`5VO9R|UIU6k65<R|h9})dnku)CDVrD2J4rCm5=PsD-G8XoN($
zYKE8^#9P^#`#WoeXou*A=!K+M1)7<A>xAfsI9e%N8i%M_89N(<M7fxRB-tB<n1<M!
zn}wK%s8~7}TZUMLSch1I7>3w{*oLHdXWQ9_IE2`RIE7faXBdQeI)~KSS=z+97no#Q
zMS2^#RhaubIfl4|xH!3nxP^FxWV+~?D3&A|7JKE`dAO!o`Gwee#rl;Pd4*Ux`i3OC
zdb*~#T6*}pcv^Xelo^`2dWX1&1laqB_}S{31%zaH)jGPl1cmr}2Zuz2=zE2S1cro!
zgoUVCd3r^LxH^{_<=RDuM1^En#)QO$#D*k<goY%AB!<L?_*n<qhd3sO*f``Gq_{`B
zq=uw~q=lr1WQ1gf1bStKxEW=K*!UV4dj@&f+B@ZhWc!%-<b|X=nY%hTg?r|Q6ogb8
zTG<qa1Q-;B6o(`k7Mdium3WnhggTamIG9I!mxiReR)$oBREJcB)EL%;Xxi0<s5;k%
z7<-l5M!PD8s#+?AD!Rvc1p27DYlm8xy87z-=!7YUs)f2bS$KQ7s)wd}ds%7OX@mw?
z`&(NYcvxsV1RCgs>V|5CS{Uk^XokA_7<y_LR2l?Y2N@_E7=;>y+V~iU8iwkJ8rtiH
zMtP-Jn1@<~YTKEF>iGM(n}w=dS%yY<T7{a1TKmMgTZbBX+JriU+J?Ft*@s%&*o9V_
z`-HlNI)$b<JBB)kx`eugx`!5-c!qj}dWGiM`G&^0xEgwg`i1(3289NM28IS%2ZyRz
zhJ;pGTR4S=hJ{91t6K*7Xqb9hgoj2LM}%5BMTRPeMTJI(#)QU&#)l?^7C5OJX4*Iz
zggY9TnA&JqrnxHG8k%G{XSrAySell4IoSl6W;@u}X!s_E#+Z6r85t)V>ezW0C55{A
zdfKMgB!?E81i5MYq=cr1MtY`)YM7LprG*-q7};lsDq4FQWrb#h=7eU3YP<W!7~AKD
zI{4*<7KGM0=Z7jgR9go)mD`kh<~aD;6o%^B6@?au1{+v81=*K`8oTM)>D!ft<~kVI
zm4%jvCiql@x|u22R)$uE#@OiCm$-%4S9mD7dzw{;=9|`p)|vUc85jjy*M=&EDTdXW
z)rDHP8aR2ode}rbR{5%gsfLBQ8C$D|X@qHpm6&LSX@}_;Sv#hf=!R+d1UW?->xUVJ
z#hd7b8H5>!8HJgInTFZA>6xV(nT1)0S%#H+m3gJRT7-qznuitH+k|CVIfXfg*@hV#
z+l9G@xrMogIfglexr9}Cd53v~d4(1EdWPAD72ErSnOpgW`Gp0B1%&yBWw=^}g@*-)
z1%-u#g@#3hrTImMg@r|hC748q#fHU%#f8O(<vA$Zrr0JsYFb)YX;~JSCWKj9d08Ze
zsrfj&CxvNS>X@iI2bqOfM|(PYB!`unq=hNEq=u!0rH5s^B-@8tdpQI<DVZv{WQ1jg
z<=a_$=Y(a4Wrfvx7KcT7=Z58nWqap^6@+Pc6o%P(6@?j_*n8=_mxPsu=~$YWl!aMX
zxcF-NmYGz9DZA)e8rsEs7}-_W=D1XPS-R?3#&}kSMY=j!d0XVVI2+{I>RY<|R)tlE
z1-jRSmHX-X*M-%Fxf?5ntAwkDD~CIH8r!LdtA#6tYlLftYlZ8EYlrKE>xHKn=DFyH
zSDBX?nYkN;SGz@f8HVfm8-+V~nT9I{7zP;Fl)9OP$C|3RR2i6ut9cn%1~})t<oj4!
z_*htkTZY?*r`o8x=$l!EYkRsmTZh|(8<^RK+l4!Xm$^EIJB2%kn}i#OyM#NMt9$xb
znR}|acze2ro7lM-x`n%k7x^T3c!k#*>Nt3YdxSfghdB9#`-FRktNW!|RNDH6`?%WK
zI=BUf2ZZ~F2Zg6u1c%pnM%#vjS9&<Qsk<1shK6gKn%L`jmYb-#hlPh(TX|c1*BM5K
zXF5lOmmBFuM1>o;M}~)oS6Rk}Cx>T-Cx*wkriI6PCWNPkr~8FlhdRZD$C+k?>pG+w
zCWTiRrH31urG#gN=Y*GqmxLFF7lc>%6@?p_8Cq7^R)%MX=ZD9KR~Z$Dmxc#AYgkzr
z<%U;;mxmjhX*#7DJDcZ)SB2MxD@NGbs7DmIREMiZR2nHqs6^C-D@CMRX!)9&L>j6^
zSh?#OBznYz>qHntr21$^WV-4_6xiuUguA)>YeyJHR9kvGgcxW=XhcLg)`Xi_yE)lL
zL_1nUm`0dIq}f<T*hH8|sM=aZm_*e0RQuRP*hhpK7)KPDsTr7=SVuTVI7PTectp5G
zct$uzxJGzIct<!y)L6SjggF^m8bz4eM?_?L`9=6g1Vn^KghkYPo1270xSE?72S!-<
z1xJJ#ghu#81VuzfxS0D!#QJLc#zZ7U)HzoAB}T+WL`OtL#77u-nYg)`Cq=|YBu7-6
z8yaOtSeRr+WJPFNWkjS!q(<aKq(tOJR2vmU<VR?@6h{<Bq({`47e$msltz?CltffS
zR7O-qWO>y@R7cp`>N%tt)fm-A*c<pb)I~VwC`KllD@EozC`YP9TA8Xwszs_thCBIM
zB>LERXW42*7C6}EC3$4o_*!X3x;v?R6*}oeYDMZsYDelt8hV)<#Caxr=tmkwn%Y^L
z8bq2$n%Nmfy12*r8b_K$T0~~KnnoI1#yPk}ns^jBrFiH@Re2S<lzLl7DjH=uyF{8e
z+eNxYIz+lhI!8K1=DXWO)*4ww7Md12nMGPgnpj3VnA<r<2DulRdKjl0E82TT`bBz0
z)|&fADp_Y*s@d8`)>`{SMp*ksx)^vwYPuAgnwWV<sv9_4nb{Y)gm?r-#yM&^X<G+H
zhC~KLCVJVr#5h)a`Pn2y#z$7z*O^B~TH0l}8M=o@#yVEm#6()yg+)e32D^twDw@X{
z$3|-V`B|AdM@7asm|CXTry1HfMnt-rx|{pE#6`wCCPpSlnmc7irbMPiI(innq(|!b
zdiYwJ=ozF&CPh}5q#I^Ldiv%>T00d-=0;{k7Dfg~=0z4oI(cNfW=G~ndYBhl#X6Kn
zs=1a#CU}=dmPPvcC^;mV*G8IJS4CDv8o8Ug8M;<S)<ouey1FY{7dixZdm5`o)kS*w
zsz)hDsYE3>Dn;2xszoVAX-DZqsk`b$saR`9*_i4_X+#-E8ATaJnM9dI7226bSw@*h
zSws~?T1Qz$RYclE8AL@|+eX<%IYik<IY!kPnOW9&={xvYI7hif1$oAsx<<J~g}A#%
znVNY<c|=*6m{~`-d778ldqo*IXt>6EdPn(0`9@iI#fG{$_;^NGrFuAf__{j!`9}rV
z1Vot`gqZm{BzOi!Ia#|qM_ZfQ2SwF-l^e!bheicQg+*EVg+x_5ghv@UMMPDZL`6kL
zMMuR%Rh!hfnK|c}##$#j#@HGd#6~F@B}SQBCPZmlS=q%$S=%}IXjz3D_&KCS89KNd
zhT5ii7g^cZsXL@bB}b)1Wjm`yXGPUnTUcg9Wky-pr$^~q=R{>k6+{(A<whwP=SAg5
zg?c1<dYKnR89CV61v$H$6-Sjvc^j2Pl|_|CW!ri<yBbtPRYqyK6#6+^XM5RtD@9jF
z)kW1tRYfUA$GO!+DM#nnsziJHR=BH1t4C`@YesvSc^Fz+YDH^D7uqH{Mg-Y8+B!x!
zxmy(l<eBUG)_K)=>O>b?*}LdQ>-*bzYrE)0*O=%>8$?I>sQ8q5$9St+8%1Z^1bUl9
zn@5{PSDGZ48b_N(TSQmdSNnPzBv{!v#o83xSx5W1T1IO-Sw$Dw#roJp+eT;jIz?Mq
zhPvBF=eWj2B}Mt0y1P3@+u6BzxJOrc*hRZUJ4gFF<a!7DrF;7r#aVm!yG57UgH}BI
zTlhqKMf)0gMEgaDM0+?ndWA(Rd4@(8xZ8VMo0K~^*ao}k`36P@L<dFtM~6rIMtesG
zM|(!+I9K?%*_2pWS><~>8vD6;xp^8EIhZ(TnMX!jTh<syN0%5UM#n`LJ9r!GSa})y
zTg61DntPk)x<*C28N^1%NBf%TnA@0mn<hn9S`~VmTPH^wc;-hN8>K{-MyEzQ`Q=2%
zyO%_#N1GUAM%!3sM`uN+MHfcf+vSF2Sk(AtM3=ZI8|zvnL>ELS8s|k9Md!KJnHa@*
z`jki4n$$%*cq_&z$Ee3tMr%3eyK2YOL~Fz-#aP<w#27nh#n_qz_?Jbi#Y7lXL|ggP
zMl0F7yA(&O##Gts#}pbXS{TMuMH|Fu##Be^#^}Y^$N0Ia#8}7J#zeUI_?CHE#CSQ`
z#n?NV#yG_|#^k#>#ALa-#F)o;m|4Zd+9tT$#CV&T#F)hx#~AoW8C%9U$Cw(YTg4iN
z#2EUA$5`2i#e~KL#kj>J$GFBs#0126$9Tke#stPFmH5TjT6(yoIQqo6$9To~`eu3i
z$3(^?#ze)W$E3z2#Kgx0xTHG9#ze;?#bm^kdgR4q#^l7L#gsT(c*ew}#5mab`&7ha
z$0%7S8^s$3$2i&*#FWQW+7ub<Ip@X{#gxUEnfaKO#3-72yA{Wj#^lEo#v~YfI@iQh
z#bjDk#wf-{L|4bu#?-~=#A?LmMytoF#VW^U#i+)r#A?N=`Rm43n`y>s$Ethi#Tv!x
z#}@k<#Ky%K$C|{N8k)tXn=9IcnyDDY`&z`B$6CeOnueL#nb^kK#M;IB8JRoV$J(1X
z#yZ40#X85j#Kv2jIw)EdcqVzd_?KD-SQYuX#=6BOSi8r1#CpYg#zuI@+2+`|SbN9%
z#wy$U#QMeh#|Fd(#s<ZP#0JNP#;O{5IfuonS^F4=$2z(CgeaRv#74&Ecx8CIyG6yO
zc~pA@`$Wga#>T|P$Hv7b#wJ=D`Xt3B$Euj7#HPij#-`d^dU_eUdX&02+9sO1dFa_>
z#5$N%7#6vu$J$v2J7>lg#%9GjIwhGF#b%hRnij<7#b(DQ_&T^my5+={#1_XYo9h}`
zTjj>)$A){CIF)<X#MZ|88)<me`Y6UJ+c?=(#MZ@T7@C`v##Y6aI25|4dz8m2dRNA(
z#3{v9$0~VyxF?&cy5>5o#wo`|I+ewG8~XVg#OcSCIq1aY_?o$?#ksop7}{HE#;M!t
z#p%Xr#A(N67;D9Oy6gFs*p)h%#hJwUdK$(V$5|OVSQ`1;8Yg)s`l=XP+ndH&#W~v<
z_?pKV#aYC~`4zi5xtSS<8rsD<#yR_?_<F=S#o5P&__@Y;*}BL1#1*=F#ks^;ID5xA
z#JR=!#?=@&$N9zC*vH$ddg)nN$9cwCxtcj-8V6dr*xAN8+4`8<#0ACW+FDs8#zn`K
znEJbh#l^?z8yFc{8b!qEIQho~#yMIh#l^;j#>K>G`$WaX#RXWn+F3e>#OeEn#|6X{
zxdz8Y#s&J@+0=O_$LV?G$5~q>*rvwm`#D(_#pM|k#HGY##pT5L`=-a~xn{-{#%0I3
z`=rGw+0?~l8E3@h#^uH3I7K;?#nr@B#c8@K$Ct-d#3jU4np%0<+mu@x`<KKi#b+9(
zIaazmnpF8I`UJUD$JNFeIV#3i#udjon`D~n$7{t`I3yb<+8W2}#Ot_d#z(sN#H+=t
z#_Ppv#H+{a#w$9g#2dsL#ygpq#hb>P$6LiayPCvX#3!3qIvK@VyIaQF#oNT&$2-Ma
z$7fk;xLd}R_}a!h#+N!d#B0ZA=DWsw#=FNm$GgOP#Jk1&dHThB$9u*5#)r81$Co<i
zI;lDY#0SL(#+Swg$EUl6#0MCaxT+ebn8w)zS*iP{*=HGs#fQd6##=eZ#D~X6$4A9G
zxJDY3`o+a-7$(HW$H&G;#4CFz#V5vR8>Yk?c_qi2`ncN}JG$9b`(?#fI;6#C$LAPk
z#wWU`#%IKP*adpz#0T0`IpoKu$E%y?#s~No#H*F~+ZM(b#p}73#Fxe!yO+9_$5+OO
z`jy33#OE3o$43WO#iu)3Sl7f?$E(;!2GzzZCgjD}#VaLLxhp5AB&a5+CB(UCB&a87
zCTJzZ+a!DD_-H5SB!oGt*ytwcCFmyvdAWNSB!s)`x)>&;8|9k1`Iz~b7@7D7d24x@
zI~XN6yD3{3Cxlp;CYU6cC735zB-oi+CRin?Sa^8YB$V1&Cs>%-CfFy~B{(DmS~w<T
znmIVuS~@4VBseAH+IYBGnz<$DIJ+j8`X{-2CU_@!B!u{QCHN$`_yr{RCzLtsx~p3F
zCHN*7`WpELCgd5GSteNrB?KpgCOF%MCxj(LB={OfB}68~Bt$3JSZMh9n5h|MnI)QJ
z_{Ak8BqSyT8pS49T06SLC!{3g*(4>{nR|L9C)6cmCfHh}nx-Yx`WpC^Ib|edC4~8f
zo7H%Dxo0QjCKM#(B;+S#S@;?jCKTA`CB*oZB&d`WC6p$lCln{xSd}G|C)D{?BvdA(
zCR8Q3n5f!RC)6a=CRiIPCR%$cC90SxC#oc>CaNcDB&sC_duk<WCh8<=C+a5ZB^o5^
zCstY-B^oBWngrY1xEd!~I9OR%8k!^q`X+msCc3y9`#M|N+Iu^j1nIeC7?~xSC)y-h
zC0ZsrMX4EEBt{u%d3bpk`q?I0C&oCdIcR(6dfF%I`1zVUB-$m0c{nCIB}N;R*|{gW
zB<8v~C#soxCAucMC3+@$B&vEkIXXJpn|deuB>E=$C;BCZ8HOijcmyT}Cx#~4*@q>D
zBs$mxBnBlqd3xGKCPpMiC92uzTa~*;CwjZYCMx>HBxX7$C8i{%CWbgCCnhAuCB`Qv
zCT1k2C8j54CT1t*B<3dOC1xcSB<3d;Cc65SBo-wWCnlNH`FMGiC6*?ZCsriZBvvL?
zB~~ZaCe|e?CMhK;C+T|xxT+)-xtn;ZCaEQ9xvCqxSgI#!BxxpTT5Bh1CFvyTCS`i)
zCFv(+78@iPCK)B^SsN#XxyO6^8HO90B$*|dCKb3^I#|Y<Cpr39B)OS{dsrq}C0QrM
z_=Nh{xnw!oCMDT=**PTHC)p*{dbpctTDT=SC)wK@`8XxHB)KLzCb=hhB<Z^(o1{8>
zCV3_KCZ*fExcMaodwVDOBn2h~B>5)=Cj}*iB!wk~Ci!}W*}D0KCz-oNBt<60CPgR3
zBt<2~CB-KtBqb)9`y?e5_#`L!IcK?Nn^`-jBw3jSIHV@oTBRkWC#hM4T4g4MxrSN!
znW}huyNA2RSY{`A+Zp+}TB=(pd*mkNCuLjYC6&1pCYc-OBxQLR80J_7`4=P=C3$;A
zI+P@pCKV_78CNG&C8^ugB$X%CCRHRwc$6hoCMhK=CMSB=C1o3^Br7NT*r_HvJE|wE
zC2J&SBxNOOC2J;Y*kt+z*=Q%5n>(1Qn<iVE_!=e~B)d53ChI4A+dA0mCF>+>x%=AL
zc!pb5xEduJCwnGGnA!T9I+`R08I`*zdYL9ynVKbABwHqHx?3e%C)*@PngtuVx@p*^
zSlcFR+Ikr|d)g&ud$>9}COai(x;xt2Cnq{PB>UOL7-*V0Cs(+*B)dE4`Y3z4Cc7nv
zI=lOMB)cc)+ju1x82Bc8Cx;mMnfoNWSr%EQdHE%Wcn2g0I`|t}8R;1KCkG}6C70U;
zC;J<RCTE$anT92onuRCVIQY6HIFwpNBqup%J4PkPBu6GkCo7r9CaamJn+EyDCnqH9
z873!}87CztCZ{IHC8s58`lTmlB$tF_C1)mQC+8%a`sF6)7x>%dCFduH+gi94Bx^Vq
zCfhg{C99g*2gW)Z+jy81Co83tC1;qHCaa{BBnQ}4Bv&SDyH+K~8AsWtc-ACmIF%<?
zC)XxdTdAe!d8&C-x<;9)rYNVFdekMyIaj+@xt3X3q-dmQrRb*UrD&(<q-dt7rzocQ
zdxaXArWmD|r<kP_yQ}+HTN|WUrkJD{r|72`rg)mzI@dZVdDx|>cqBSlr}%r=rv!UN
zJ6omLq}Zl7q`26)xw)peq&TLS`Fo}KrFf^fr+B3JrZ}a926?79r}(4<rFfb6rv#(~
zri7#fr<8ewrquZ5dPSv#r-Y>hIYg#Jr$nU0r^KYhrnsfVr6i;zrnq?}r6l?InQ59Q
zr<izU*c<qyq!{~^xVt%;xck~V7-XiTr=+GRngrTqrDUX}rR1gLrsSk#r{t#;q*yr=
zrWB_Xr36`6IF_c=xR#`prI>o<IJ#Swr+D~Prc|X=r_`jRTGyudn`fD7nJT6h`*>K^
zrKqH)`PjG{dnVf|rv}@2TBccNnwohjrMf#hd6!$ITgSSnr^fq5T4|&@*=wZ+*%?@A
zrfS*RS$H_ArfR3Er3RSmr5dGXo9m{UrFvQB`q~&6r)HZPq#CByy6UIuq-q$aIA~Z{
zfOn~xqz0NBJ6WdYIl84frP`!Aq*mF)8d#?~r@E(lTZZ|Bx!9(<rdp-iIoqe&8hH8G
zrAC|Oc;q?;_~qN?rFx{+Ik=>Hrh2DVy7;AfrG|KUn|S-g8Th8w`uU{h8|JwAr-r2l
zq=u&kr&har*@UJBrADL%rn=awdi&Uhq$Z@sq{gSlrY5FFr#hwvJ9vA<rADSIItH0*
z+p5}|Ii{qhrKYDQr>3Sxr6#3jrDmp9d25?zq~@e%r{<>?rrKENrWU0Zr<SBvrCPg|
zrIx0ar&gp^rdFrcr23fDrq-n@rYWT<r>Uf=rm3ZAq^YNArfH>Vr|G5Xr0J$5S_PYj
zIU9Qv*!sHXdg!O+Mi`_SrKS2BrkSJ}rv>|(rqy|vrCFv~q?xB#r5TwkIXar!rCF!h
zq}iuAq}irv8mb#Pr8%d$q$T<4*t(^;re)f@r+K7#rlp$rns}vor^R|F`-b?M`}<n@
zrG?n|runC7+5|cUr1@Be`vj&1r3I&jq=lww+2s0!r`bD)rA4Miq(!A!J4C0&q*;2!
zrsX@vrNyV!`6Z<#rX{2qxFn~k*{7tXrdjx>rKP83re&n5dQ`gE`D=P)rv=+-dFG^L
zrTLkJSY%k|d1zTUd*`R+rukX=TV@($SVg+W8<eCuI7hfgJC&ssrIn@?q!p*Bd52om
z8Wg5gq*bO_x>=j4rQ5n^THBa;IJo)i`IM)HI0TzkrPZWWr`4vZIor7#x+teBrPrl}
z+NXM|rmLg}SO)u>rfa5ar5D&}q*qv~r)#GhxhQ!lJH|NaryHc}r0b^Zr3YG?r5mNE
zdFFU)cp9dgq#LKZc$<TE9y(g4Tc_Kn+oW5i+q>JQ+oc;Bxu!d$JEl9OD>}KPJEyy)
zyQh1kJKJX(d8UW^Y1`=9W?6?jd!>7)8yfng`=<M)`=<w_+nQ-b1*WGu1f_f11g9GW
zgrvuL#h9o#M%Wg5>e+^-2U&)t`*@_JN2Gf?mAczogr}=IMy6M}M5jlk$EL@CcR$9b
z`<o=DC#5H+8(Mk#rKYRf7Z|3cr>AG67a3%xXQiimy4&QWYZ@CFWT)q)`?<T=hZ(7R
z$C}5O<)&vDDVr1;7NuwT#X7lo)}@CV)udOY7pCW@7o;cK<d~H^2f76smZTS_SEiSy
zSEL8{l&41+)f!i)*QSS<D`)6r=w@gem}C?hXlH0;sAi~SfEGF>J6AiYXQ*XpW)wJv
znmZb5WCU9lI$C8|XG9w58ChiLWte5yW|(J~W|XBHXXs}Hm>6c*WEf@GWf)}CxM%uW
zX832gXH?s}nZ}wqWkef=*tupzSp~X!W#oA|W<(i<S!jBCXV_<WWCUe6XSifoxp`)|
zWoUT&WF#0kWcX$HW@NjEWW;CG87E}~WQ1nq`Nn00`fB-AIA<Fdd8TA2x)~b8W<+Kb
zIR<A$XC!3kxN8|iWF%%(c*bOeXN216+v?av__%wfXB1>aWt1CN*rjG<WfVK6W#neW
zJLhGD`6g#r7-weWWa#+hXJlk#XJ~pW`WI(ZWfWyN+XQC#c`5l+W>jR9WRzx@8J1@h
zW`w$wWz-ocIXQb(XDDVydemiv*?HP1XWE&mWLA3CW`t$bWcd3lxfOeAXBuW2WvXVD
zx$9@DXKH2|XKG~XWEL5wy6I*bWU6JVIcjC9Tf5pDn3woe`V`rkXPRdE`I}^x`kG~0
zWLjq0WLjk^yIE)Ydgx^q+uCM2WtKQPW-4VmXL>r?WjbWqXBx&T#kyv?WS05bB)Mg}
zXL@9YTZEW;WyS`Unp*i4n|WvYWac^hW>&db86+D8Wd>*ZW!hT%XF9nDWCmtNXNG1*
zWQJshWrk-)*hFSJI)|A%8OLPW8z*MQW+r4>dBkPLXL@)>c_d}lI^|?$WM&(sWomh+
zXQpJPW@csPW@cw*W+rDwIG1E<`4nXqXXa%VWEN)TXQnw=`d4IDW-4ZB*;i-QWtL@@
zW-4XH7}aDdXVqp_Wg5GbXJ)voXIcBIWvOQAWocv?WTp8UXK7_=XX$4dWf^8^X6a<v
zW|?J~WSM4JWm#uw89SL;W~pRZWZ7hyXW3;rWZ7pqWjSU=Wx8cKXSrm#X1QnOn0sb<
zWEt3oSgOZ)Wd+(=8hd928HU^WWQAJ#W+fWfdirH$*@tEYW#u~uX9Z-%nfYghWto}B
zImKi}WSKgJXGLWNW<_VkX61WCX2oSCWCdG<WH}ndXGL3;`6Xs0WtBQA`6XwW`le*1
zW~F$gWjR<W`(<b4WJTCzWu^P3XJuyDI@H-`WaVZld*x^4W#t%adlzKYWEEu<XO(1?
zW>scYWmROAWff+XXH{pJ7ibvOWyPD-W+`PWW~*c?XRBr#+Nx!%XKQ5JIfVOaW~+F)
zxoc%>XKP#NnCfI_TRXbzW(OGSWgBFd`|4-A*&AjXWgBM)nwVspW}9W3X9pTvWLsui
zWfvJ~*js1YWZPytSX8^%Wrv%G**j*dxH)7Sn%ifWJL#G_Wjkj_+U1(NWb1gxJCvE0
z`gl3IX1m)LI7ivJWqW3OW!qUfIeBD9+u3=#XXjW48~SBOnCDsNTKoF@X8UBTJNlYB
z`&${u*m-9MWCv#ZXGd5#_~u)yyN6^uI5;_*`G#lbSlBxRXGdh`T7+hYWd~&^Ie5D1
zJI5LocsQGyxI|}1X8SlhIs}<SWk=h4`8oK<WT$7Fx};?%XJ==pWG7_TxWs42W-Iy@
zSSM!3Wv6DB*g9HNIk|dA873L1x@Bf(WT(01W+!FmWank;SY%~~S%%u=XGi!JWtV0b
zXPbH!WG9%FWS3=EWtV4HW>;iaXB*noX4hnAcq-;Zn%8A3<tXR4m^!9a+NtE^S*Yfy
z<=9#KMXBd#<QUm%=4j<;=ji0<=4d<X<rw7X=cu_E=IDAG<rwFf<e26}xy9O<<z!px
z1(@ep<k)*!<~Zh9<=Es{=h)`BdE4dK=Q!jz<>(rxyJUJMS%q8rd&V32dAQ~Tn}j;J
z<ap*(Iw$+M=Xm7knR?|UyT>~fdf2+U<+yw282RLA_&d3{`WISz=NLN0<Y+inxCMCn
z=h#~pS;yI>y6al_<@n}gc{<tzxd!G0<wRHp<OJu0<b>rYJB8+?nMCA-=S1d2=fvj3
z<%Bu-+r;Mt87JhFIVR>L<z##6n<nR&xkMYL<P_SJ+3Px`=cMJN=H%vN=Vat$<z(jM
z<dmBh<b*pE=0sZL<>cpR`kT9GIu_-W<`n0Y<V5<ayH(_r<&@`C=4j^D<kaR==Tzm?
zx+vzV<|^gZ<tXQ><Z9=t<wiJY<Z9)r=j!Gf+v?=%<?81e<r?N1<eKCf=a%`H<(lT2
z=UU`i<yz)?*jwl3n%U&q<=W>u<l5#s=7!lg<r<h8o9kIP=N7oxxw_=K=bG5K<+|oZ
znS1008++x(Sb63K<@)6M<)(Uh=lbRb=KALvng-+s=SI0l_?g&-<SO}w<%Z@)<~sUD
z<mMWO=f>nl=SJlkxyI(k<;LgcSgM*Q<R<1O<$BsD=jz&|<fi5-2Gs?o<rbu-=c+hs
z+dH^t<c4~MxYSu{I%^qLc!%4^nJ1csd1dBi=Vs+57?ru@<d(Y|yXNKw+2-du`PAhW
z<`(68x+FN2J8HNU<c6A7=9cBE=4rYmI2Y&ExdgkG<W}S+*r&VuxHvhK=ju7BIF;sV
z8YuZ!<t93r+Ird7<W}eA8`S3Nd#dL}yJg!)I#-yf<(d218-{x&8Y$)}<tgW><XO8Z
zJ0}}x<Z0$9m)JUK<rN$HIO<zO`D*9sxK=oZ+vw!!=cU@}=4m@>Ii?tR`x)jHc^Kyz
z<r(CqB!`&f<(lT1<eBAJ_$IpPd7I}&+F0aS=2_(_x@H+fT3Y$r<(ZgU=h@_yc!n5T
z`r4a?xZ3AA<T>UkxjN@L<psOB<eAwf*hIS*Iv3gG*t_Pr<;B{&=XvCL=H>gE+j{4D
z<waQ*TRK?#<)zvB=K17hI^|n9I~aIa+WP0k+XdwX<OSx1<OSzd*@fnX<%Q=3cm!J|
z+C=0<=BfC(+UEKA_(kO<nMLO*yT;{J7<=2t<i+MCxP*Gwm?h*T=EdhF=f%4@8>i=`
z<fY{$<@x8Q=4JauS>)%LxMt<$=4Iy<<Q3*+=9T4@7-r<@dgSCK*hO1<c&C`T+1j}2
zI+o<+<rU{S`&hV?<`w1XI9BFW<dx^?dso|5<;8o27`k~DIaiq0<i%R*SXbxe+UMCT
z<}2q{+bQL%<OiF%dM4Q@``6`FSlRol<*Vka=hx<Cx`n!iyXfRQJ8R@?=Ifek=NnjP
z<tN%z8XM%>TU9!GxmX+P<?H7=yXfW{=9}kR<y+?Kx*Fvh=bPnQ<U5#I=bPr6<lE;v
z<U8iu<=f^b*=f1i<h$mB7AH96S2(%lyXSl6hnjfgSNVkGd*%D)d*}P)`{f7Z2j&Om
zhvo<8hvi4)hv!?mr29nX>p4c{yLd(CYa81bhMR<$#N@~3$K}W8C*((%gc`?Lnt3GU
zC*~*T#~7yNr{<^Rr{`zoyBlQW=j3PS=jG?-=jZFW733G@7v~q{=XjRnm*%HhmF1V`
zdwP32su*}XRpjS-R_9md$6HqAJ6X7T)#fV})a5G`C>loC*VsmyC>Nx;s}?93suZ}m
z`1)zP)#R)B8Cpd9R+^dkX_zNDDW<Cx=oshQhZ$=WXcnj!q?pHACEF<*M*3+N=;dh@
z=oRP`=oaV~7!>6A85S57csf{n)Y_+;So!7}S=dHfm=>566kD4W7#C<*TNUVLg$0${
zTNJ4J6}o8~COeqfn0q-G=K5v(S{JywR@>MV*cSNM+ZE*bSr#}HI2AY+*cUh#xD-@5
zCK<UFSopXVxEE;o8%BE+coujS_!W2;_!RgS_!qc1l>4|k1QZl|1QrAr`}hPE1Q&!9
zgd2wyMB0ZJsF+6-#1upoL>CkrM;62u#1(iL#1|wKq}U}ExSOUFBo`zV6lTYGr52<W
zq!(lqWENx<M44n4<P<2o=M`8R6&4f}s2Dn$xqDf;C|M;~rrXBY7Z(&2IQeFn1bM``
z)!6&_MVprulooh<>$n9NmKT&11bSxqRuohgR2O79MH|N$R~2NM7+GYQ*t;h9#aPr7
z)E3kgC>AOgDixM{suZdgsuijiY8Gk~Y894v_@rst8<}bs>J;h(S;q!@R2x_ulvo>h
z*V*Y7#{1|M#`roJI$G-&<{23j8WtKCniQH98WoxrMw^%yS`=CqS`}Is+7{Xr+7~(%
z+7&t!Iu<$?I++#QxD>h;CR(}`+8O)1yBB&CMmcA@c^1~X`#41y=9%T26+8PC7MSH5
z`4)N?`V@K<MilxN1{4Ms1{H=B1{X%!h8Bhw8k>d{Ry!J7L>BrwMHTA0MHeO%#udgE
z#uvsECKV<YrW87xB^Ra^rWIxsrWa-wW*24^)>!5g<`&u*=N0A`7TOmS78Vv278fR2
zmK2s2mKBy4Rumd~R28auRu@(l))v+j))guiDHSOfsT8ResTHXgX%uM|X%%S~=@jV}
z=@psA>K9d{n3yUW8(A3^85F7d7#Eoo85NlpC3%|_Rhz2%n-^IY*%??BX?t0KPs6Y+
zvMaJL%JbH>uCmg1bSQEzax8KwDztDaaxHQzaxd~O(y~r*@+tBx@+k5uiZ>4^@-Ol$
zGB$`R3M&dP3NDH)3N1=9_VJG>3MmRI3M`5#iZ6;QiY@Z=j4moRNGM7w$~X2cGB->q
zN-jz)(seHIj`B+_N-Ih)$|%Y#vUbTTGWW<Y$}Y+&GW2%w32-YYDlD>d%PYz)(lV+n
zswgToEGsH4DlV!vE-Esz(KJf7tSPE4swyfksx7K3QY}^~Rx8#uR4i61F0r)qQ7$&}
z)-F~r)+yF3)+mlK*Dcm7)-Tp7E-5l7PINITHZ3+THY&C#HY^66_-IvZS!`2mTWnYC
z>2F<}?UZX}U+hrqSnO2nTx??DQtVo+Z{t?%UhGlqS?p8nRczz$U7YXdTO94@S6t`r
zUmRE*R2)#8Yw7Eg>|Gv~5L@l7Z4^=*U>aH+RvcbjY8g=+k`V2a>=aoXT^v;$Qyg0y
zR~%oQP@GttRGeI#Qk+_xR-9g(QLN$`Ymrs#>zG}fQ>^HjTbx&Ho*b2vTaaH|P+U}8
zTwGFI;8$2&T3l9KQCwbJRa{+MS#0K4Q(Rjdl3Z7;rC6d^pjfO}s_3QYtyrcQqo|^&
zs%WohplqmYq-?BgqHL;crfjZkp=_zFuBf4yteB{nqNu4@uIQ-jr0lHhqU@^drtGfl
zq3o&brR=TjqwK5fr|hpBpd6?iq#Udqq8zFmrW~#up&Y3krR=BZuV|oXq^PHusGOvn
ztem2ps+^{ruAHHqshp*pt(>ErtDL8tuUw#9s9dC6tX!g8s$8aAu3Vv9sa&NTpy;d^
zsA#B|uh{vG0Xq<2WB}bfjEs8(*%*QuxEL51xELB3xEUB2xEUH4co-On!2kYBGyG;&
zVfgponBh0G4FdxM0y8n#GW`GV%kckyEW`i*xeWjR*D^3MOn~l3t7BkbsAEVpZe>Vj
z=w#sK09`gu8s=c=V_*Pbj(!FP2JD!hVKM^)5*A?q-69Ray_~ZdSW@OQG|DeyFi=>@
zz`(GQfrVie!(pBc3=9k#7|t+&F0kCfpun(|fdL0*VSsLz!=Sb?@K4yoFw^n~gXPRK
z3^Qk5VPN67#=yXUiJ2L0Fz^`MVK{K&Ap--$Lk5Nh&^4it7!nwsFfbrtR)%K`3?RG&
zbid+DhWGz}FxU(HXJBA};D7)582|s5WBmVLkMaM1JI4S2{TTTx!WjSkPi6f7zm)O+
z|5nET|EDtk|G$*6zG4Gocm6KM&(4P#om7r9y3Ib%sPp0)<AcZd7+DzZGjcgRVoZ&H
z!)SK<8)JDTBa<f!E7SEi0!$wsOEOs`$T1z|P-bF!rpd%?qQ}J0pwAR&YQ}Wpfeq8@
zI(H_9CQqi!839ZlE5n$aG^3fAUnDXmG^8-exMVU-UR%Uub)bSN!?lhnVO0xLSX(z!
zmHjj(2c{WJ9nEu@5=9m<DF`fKDp6d;q^Pi#iHUt96NABKracZjnN*hTXG(H8!n7jc
zB$EQy876V2i%cc0H<*}MZZWmYdBF6$`Yn^F$R{S1`rk~C1R0rAw{bDQXA)vAm6u`u
zub|3YV5P(CU}3;~Sk0U{Io*NzrmrXSBn4mQ4Q|2AC;6k9XY5I44)924wrI;`wqH=n
z+@V~>EY?xa%xTxgY!uYPyh>>j^ODE2nC~(yVAeUlf;nyBdgg~}+nBjqb~AJJA7Xy3
zeujBo=v8LNL${cBcRpqoVR*{y(E5@&G5G_tC&w3Np8CJc7rK~P?EVX|oM)9_k@~O9
z!n{I*#j#4C#i81a#ns)Gg{i@wg@M(P<+X(uOW=(_7FLE}7L%D#EIfq?EYq3OSr`~I
zSkjUUSXfkwSuQk`vjj3!u`nE{Vc~LaWGS4`&T_(_hlPWomxUo>0?SOk=`0N2=dm=z
zFJ*CLSkAJ6VHJzOlyxi;3>#P)lD4ooFl}SGz`2`+p=mEm7~>%pmVl!yj2y>V1Z2;!
z2(X@KIoNWAMS$Tdi>kv-mH>e}Ec}j-Sh{>)vT!=QVc}i&nMHE-Zx)}4jI0L~Sy>x7
zIayne@Ut>A2(kvTiLo*?h_kYAOS5t?$gs+?D6(=gD6@KcXt2gi&|~FfFkqb^X3Cn%
zW6i3dWXCGh;>2pK;=#(y<HI`5J%p8oE1Xr;DTY;pA&#|ULJ}*3XDTa)e>UqPkpk9L
zmn&HfZq&23+jX$AwDqti%1>ckQa6{i&2bUygu^RXH?yv1T^hcFRYGwOtDMRqRu8S?
ztQvx+Sy{Z!vpR5HVwD!V$(q1>kJX{$AuAWt6IQ0FFIg3v-m)eLd|-8E`ohY<@|D#^
z<R>db!!K3_hF`2KJbzgk82+*{6fm%{NwKmWWZ+=)V&Y+A;NfFqkP>8bU=U(s5fNo`
zb&zD!WRPLoyjPvAf=ic8o7I?Y<!)QH1^eCDY8-snDw{*t{s_ge$-YQo`{td;mU*;{
z?c4iiHZPWTHc`bMHm3hm*^=MRXVZ3A!e)G7HJcODIyMG@^=!fno7kA7x3is!+|Rav
z;UF6W(;+tI<tN!3b<VLhcwA)r)PI|eh3PIE1H)Z5hKL7jtOAeO7$!Yq^I&+vHbvqs
z8>7N|HkN=-Yz-#g*cgm{viW5EXM5$z&b}{0fZazzl-)^Bnq6UqJo`ySRrZ|$I_w)7
z4A|uuOxSDwJF?Geac6%Z;=_JWBar<8V<<acdknkhnq+o<;VkyscgxtN_SLih?(AfL
zu&AGXQQ%Z|rqEgJr;HY|yV<Q|@1C@QeZTB(_I~HX?9Az>*d>h4vuhY!W<OwjlU<PG
z4!iQo$LtITp0cM}y=8yg|DBzQ<tMwJ4g-g38yko1ej$#945A!TRx%t{dXza%vT1VE
z7#easU@+m}nrg+-&1lbYo6m#8`*9$LLQg11lVBu=z=t@FDYfYw8q4!I)|@Qk`0Y@~
z(c;p?5zN-XF(Imt!^LG1#|it{9E=QeI6N5Uaa{Sjf`hSqJxBPPog7X__HoE|9_47x
zKFguud5MG5@fwHIr8^w5Y>znpMZV==ka*9bWc8Kf$@c#o^R2l!nLh|{zB(Yz*(NN@
z$<(C4+0d!N$?!yjlVOt%=RyGk&IWH&&LccloSc^(IbAy4IM>Sua+-LAaYi=9aJup&
za&kGPat5$ua5^l=<~$*g&*@-T%o*TP&dK6X$;rT2#o5qQ%jv+{z{$bb#Hr)b&S{X<
z%gHJ=iF294bWRc0*_`JmEanVLS;eWyu!fVta6PBQoUNQ6PVeJXSa^u@QSvEHAAxh6
zTN$r#_5|PNY@YRqbJLDjoQ+2BIjd%T=WOBn&H3Dzm5YgogX_!{0WOINB3ug>N^uoT
zkmr)?QsZKIpv86Nun|`viy7A}XIrjAicVZE9&TI$!QNbxnEbgM%tE*vnZmjDeop4%
zT%E=B;YAVGf!ZprOG}%$oDQ{fd0*=1vR^WTYyE|VTnnU@aV<1i!{y$ziR%XQ4z8dh
z`?#c2k8w@8be7BN#1$?XhU;7>9By;5@jc)YF@DD7pZJbTdeb+q4u&6G7Y_X8(ptd8
zJ!1t2_tAy?+}UE{+yQ#B+*?{zxVsN%akH@LavT3N=Vp<!;m%`q<_=us$<4sx#cfd*
z#LfODihD<KGB=w`I=7KT4tJwNKDXG3QtqyrT5itdX6^>fc5aqcJ=`iX6S?P{n#s-Q
zw}3lAeHr%z&Q;tD&1<>c7&dUTG;Zb=OxVudD6os0H{<{}2j^jKK89o5TxZU3Gq9fH
zX5hKNZNPGw+hxIZ?rw(L+%4&kxI2QLb4zx;<&JCn$}Q3Tn>$jEnJ2-KokyUDn`hq~
zQJ%yMX&#wQMIMG3Dm)wvsyqyh>O8YJba*5f^mryX8u73@nDH!pV#~wI>d3>J;?Bco
z=*#2F7sA8l5y8XtKZ(akEQ4o-RvwRDYbg&mLj@0mL={iVsRkYez80RG%pM*ihJGFf
zu}M4;VKaFqFwf;t2wcdcA+?N$p<y|Xir{LVhY}lk)SS2T1jX*>S;cpZX952i9*uRE
zd8&Wi=V5St#KV#DjK`t#6;H#7cRVf!KJl<l_{QV7@ehwm3j^;F6;@soDQ;e?1VLVg
z3BtTn4odR6HOcW>F(~o!N~rU)9n|4fV$kCim}$%#@W6ssP}G(;+`*Z*iNTduip7(c
zi^+%ApCORfpfikD_(m+RmrD{aQ&$?V(%U@V0|JG-tPUl-3<9OROpN8c9354>jD~f*
z3~r6QEKJS33?JHgIoP{-89MuT85T|CWnh@d%cL}gmw{<2uYlN0UMGgxybc0$c^QHh
z@Fp-V=KT`1nwLRg4X;4!23~`vExZhZ+jyCrcJgvK@8#XvaG3XD!6{yaS?75j6fW{I
za$M$RFul&3`sX3<LCNR5EUVx0wlRI=6-oNW+s^Qd*M;E^Z|ej`J{Kkyz8D8izE&<i
zK6WD!z6N7SJ_Z&kz5_cH_!Q2m@m)Be&1Y~xpRa+zfRBUKm`|10l5YZ+EuRB}9UlXe
zJs%H;6CZ1;2OoojC!b=9A0LxrAYTSkC?5kuD4z;LIA2Xm93K-yJfFh7G(O3;96nEn
z0zM9oB0dI(V!jrJQa(n7az2KZN<IOBYQD2hO?<~0JNPUL`uMc2PUFjvoWs{IyOb|r
z-&#H)yDfZQ_4e`IY&^<$<lI?4A(e}K8XQ;n^osBDtx<W*XX5>ekB8|kpX`;dd`wzD
z`4}30@l9v=&nL*i#D7GPo!>=}o4-w5h~KqVn*XM!GQTIA20w#?CjZ2C1AZS>GyWqt
zZ25P&xbTa3dh$<_4&Y}v5zJr66v5vh8pGen5XaBJlfa+Fna0m>D3hPTBb%SeA(vm#
zppf5lS0#UgLN$MbOg;aaNA3I^0-gLU0^R&341N3$87A?Iv`phyV3^L&pfH1<Va9BJ
z5rKL9hYFVPuVPur-_f>?Um;`@e-h7jeqol~{0$TL^9v{(<Zp5~!q3KZoZms_G(SVg
zIsRtm%lt2&+~HSMe8}I>@`T^`$s2wKg}3|%Tt4!1KKsGX%=L#~t&vgSmJo*kBL|lN
zV<x}Agy~`ej1Ce4Z9fzQd>?5DG%{!j@Nwx21THfZkYcnFc+==8z;Mh}z_G<sV8_}Z
z0iA780{Kgl1svNm1wwiY1em-_1ri0T1TvWF1QK?)34|;32rLMgAYjZgRp7viSpr+O
zFA-o;SuP;NxJuyitjz)p3R?sUm39f7VAw0rsBl1FUc)hgE}qi@4G%8}aBjFN5ZHK2
zz);|xfQG|E0Y0tg0!usJ32e*!F2I-cS3uQ;NzmmYhhS?1k6?(euwbc<wBSa06+!kJ
z+Jd@mMuIgrtOXrC>;?TCT?O-$d;}Sq`~*4Xg$VNeh!!+|n<m)MlO?EDS|lhuxl&Ms
zqejq(uSt;QM4O<WM~~pLys3g-I<o}}(iRCGP+Km@xNEH-&*d$Gu@bul85js-2iARp
z3I&G*jT=u0Hu|3zT*`b^@J;AFL4lM<f)a;c2)Zc06-*NOBxu6$RnVF1mmsIqf5B=A
zcA=%hd_qi&0zw`uM1>q!#D!dr$_lYHDhl0wq%HJ8%1FpV*Fs2bn}d)Ti;GZ1fTxf{
zp1+V$L$HvLVT8~V_IM!%o<t#zrW7GArwkznk8C09hC-nPk5VDw_8KAH)+QkhlXf9V
z<{lx<r&EMnm1hZYwJ#7_sk&T9B4(}7vhwXhM{gbwVu(8`^n&@cP$R=xA%^9bghI~V
z5<2GiK!`!(kr2zGXF>@(-UxANe-ct)_$)N<)?cAl9L&N}e4N5HP6EOQ1Vw~7Iwge5
znB|2P+f;;E8P$au7}SMVNazSJa5EJ4IASKu%4;pGq+lnk6yhxGG0{VqvCBtzx<;_@
zjEX2>4u)u9R<Q(OCBsx<2d50-297LYzh5Q7i`XiKML24N1t&EMGbuC+v&`-k4$_+-
z?94V*m?2=gu)u^_!j24cgm<+r5q2_IA*`UVN|@V!lkfu8ZNePtyM-GZ_6kpAJtRC?
z>ZEYM{Y%0OY*&Pt7Tpk5G`J&d!1h46!SAW?5uR7VCs^JIvn=>1%-HZ*m?7b-u;G<I
z!VMh%gqgS)MHpmQL^K%KL?rrnL>w9TL@s2BiU^#N5)t^MAj06SBI2vABf=(XD5Ah*
zEHa_PT!bOYT4Y6&gNUcAn@B*Tmk5i3j|fA9uLw&=fCz_9h{#2bND)?sXc5MSSdk-M
z$s!65(nXROvPAkA@<g1tibO&UDnxp+>P7fCTSS&V=oVqqoFH<<X{v~b$4rsU4f93p
z8kUL}Y+fV6#JEmGrg)pk6p`H`ya@+H6nGAcIB*^lkuo?f;&9-cNZ^tyB2y0B6gk!V
zP~-&bGm%5n-iq)n`6R-~@L7b#<h#fThF>BAjDJLULzzWSuH+WgP~jJik`WViVw4m$
z_fQb^t<n_b7tj;kVq_|+<!UWjZRjG(I>}RX%8me0mzXfo>lyK)U9PF3(*truFY1+u
zI!jiGayZqBGF@sCb(q^B>M)~6bh^SMQO=O*qP}c%MHv_f<A#<6qE4a9L={<9in7V9
z6J-$JB&t%jQ&b>vuW0-KlcINbUJ;$2dQX%q=80&m%4<;uoA;s{)_xa_WcV%0fQBz<
zFo?}&U=>qh;SghB;uPax<QC&_;S*z-AtdIoMqG@mS5{18f}$8hyQ&!D15Ggo7A-MD
z23@f!;wEB>O%`I34Ax>H0`_8?blk+Gn7qW8=J<;-I|PX(*hY%6bi|19aKwu-RHle&
zh-He|>?#s-Xe$%rI9(%FQq&^WFri&cj-gwO0fuk%i*-DlD%L({u9%6#LNOthC1NS-
z)`(41-z=8>VvpGGXD7t^9nOiR1z!_e_U?gLeei2B?Z;olo^1UqHouKcoQZ*5+@qC8
zT#1oioXJH<oPk4FTuf0ye1U?rI17V}I17`UID>+`I4gsqI76MfcnG7mxQ>{i_!>qt
z@fIy>@m2wQagiPuaRXKl@x#A^#hrIXi=SeM7f+awEY6USDsJSEDb662Ek2<kPuzgJ
zSiI4vLOg__TAazDR$P;zK|D*gL!3dOQ@nwxTb!YxN1TPBS6o1CqBxJ}G;xQ98RCrW
zbHsgbE)`edSt%}{u|_;VVuLtiz-DoUfNkOo0^7weu<RCZDA+H~$aGMggYmHVVa1c;
zMvQ0085qurcQBk6mt?;x&ctzDJc0GLxDdl#aXz2N;;bys#20>eE6&95PMm>E+`#Z&
zytnVWcog$r@x6+y5-d?%5*;S|5(R=H5^4<M5)3dbAR)nYR91qeLqS4xhq?sg4_%2G
z5fh2Gs<sjdZ(SueNc%{1vIa_AmyVYBT$Lt~B$Xq<!&@kEl&f6g;?o8Rub?)G2`rrw
ztjYZnA<R=GT!LmwgljL75E5H1QM6*61f$?a2~W-K5)uqMB|JFyN^l75mtaUZD3Q}~
zTq1Acd5M13YZ5{Rw<IQ5K9F$u@l3+N^R+}n$2$pWhEEa<Fx>i8!inL#L<GYx35FSe
zC0JfDONtb5NNR}jO3EgRND2o^NirnJNUBIFN-k$mlVm``2bi@a6$<qwB?OElix|x%
z)mPd}vLrZ3vUR#kDjo2a<YDrYWZ(>tY;*{g)K!R(T+kCMX~LH*$-sbw6;mY{1v4ZC
z8?q&(4i-xKys4C&#8E5hz)&a2(Ap@u=6IJRn?#?a-Ggb8LaehS85(9w3NXx(<ZzfL
zd9GoJBxCL>Ndcxcl8$W~CBrzjNy;(qmQ-ihFBxEdOwyL)jHJ<nOOmX9HzW@*-j-}(
zxhL7k@Icam@sT7019rSX>bYbj!)wVC&L1UJI=)JJ$o`gOIPp(1h>=N(xrjqbcml5!
z3k$zgLz9pc1B<YfK$p0b2(OG(Sc9Sz2a~dt!vZxa7IkeY1_o^@1|K~s1_n&5u-I6N
zNzz<u-2ywQ1T|+VhWlPp0w4UPM5`mD6dPltE?6Z?H8`e8X)t6+F$-i%F?i%kF`Oxs
z5@{%rIxkWqb%dc_ib0`4O2MF6iV^D=X^T|V{RvY4|1XgG|9^wj|M&Z){{KHO_22%k
z6axc(tib>|zpWX3BAX`@1H*CGKcLa>##-=bXt_$atH8k*EWIMFAkiHiZj1uGJWQRw
ze_kpwGB7~LpFxV57#Pab8*2sPSr{0~<xq8TAauQEU|^U4QZElxFRzTLUc(-4%Wjx@
z6{z}rHB9v<?BMFVVe0jv>i-*Hs?V^2sec^@8vg~k#}}%8{d`RI8m4gddNB3>7#PYF
z8*2sL|7Tz*mq7JzhAd2dbL}4n{+74klkWcTZw~;SF88b3RiOC+f2Zpg{_U>6x_!S~
z{?U1;`4MC5CH|Jf3=9lAK+_5!;Rn3||I-vhe}R;#hK4dQ@NW<O)%a-Ds{j8xFQy%Q
z$=G>_@l;wTRDrQEOu?BmPz6jV3i$b93O;;*DqulYumx;>+QC;God+2&rgi%M>URCZ
zzg+-iJtO!my%PeA0?@PcK6ShD@NW<O1XA81(Cy0O&=vZr1A0y#zu|$`+>itESU}-*
z^6&(_0N>qLH<*qy?O?dcbeCy8!)>NpOmz$`%&pAmIu<f4W7yAtE=mc17sD!sl?>|`
zloXdRh$-TA{sc<wp@!Zz<__jg<}T({%zyv)F#rAE$Gn>P@Be;yD6L^$%e;<xJ@YB%
z3Cw4h4>6x*KFz#=`5auHGB+@>Ftf0*u(GhRu(NQmaI$c*aI^5R@Uif-P-ZSncMwZ3
zO9)FSOBhQyO9V?KOB72qOAJdKOFRo~{_7Zn0OQ~PYK(vX8!`U<@5pG+`1ijT;|+!&
z#=rm581E5G7ta_389y+nGa51)Gg>e@F*-1MGI}%qU<hWs&yddekDz{-OUa=RG8|wy
z!f=RziSaBW10xILQHH||Y>XU?JdDQ~xET2uPcocfIL&a1L5fj~QHW83@$Y{bMma_$
zMg>L{#<L7(7|t`CV>r)fz^KKj$Ed+*!f3{5$!N=H&FIYN&gjZ`k>N7KC5CGZR~Rlb
z1~B?CUS$Yjj9?67jAD#oOkj*-Okqr7yv1;n;SR%Xh8)Jrj0KEYj75xjj2VpA8E-S*
zWW35)!g!aVg0YOTlChStni1894;daXJYjgmz|44#k&%&=@hQV&26jeHMqb9}4BU+T
zj4v5pFuZ1X#URZn&M3?%$@rB~mQkMZ?|(%`RmQgrZy4S)ykoe)`1ijyqduc1qbZ{~
zqZOkaqYa}AqX(lK<41<i44)XjF??aT#2Cov%lMTclrfSqoH3d)mNAhro-vg%nei9H
zPli7XzZr5FuP_!eW-}Hu<}+q8-eA1Lc#H8GV=3cbhW`xZj8%+vj5Un7^DvViiyx~W
zkDrjAyq~h4il2s`wx6D#zMp}gsh@+Nqo0ePyI-JRlwXWrvR{T@reBF)sb8gEy<e~2
zG{5P7bN$x)?eshBcfs$L-)+AKeh>W~`MvOa@AuK~v)@<0zkdJx{`)cbGx;<7bNF-n
z^Y{z-i~5WCi~CFZ>-ih{C-@utoBEskTl!o3+xa{AJNbL~d-{9(`}ha>hxmv2NBGD4
zC;Mml=lJLO7y6g`SNK=@SNYfa*ZDX4H~F{txB7Sbclr1D_xVropX5K;e~SNf|C#=?
z{O9@4_uu5d-G8V5ZvQ?0d;RzMAMiiuf7Jh&{|Wz-{-^!V_@DJZ?|;evj{gJyNB$rD
zKl%Uh|LgzXpCN!TfF*!EfGdC}fG<EGKsZ1=Kq5doKqf#oKrTQjKs`V&z#zaVz&OA(
zz#+gfz$w5rz%9Tlz$d^jATS^(AUGgAATj`S5@1q5azI)@dO%h{ZUE>+KkI<TfaZXf
zfVP0HfWCnKfC&MU0wxDc378fzJ77-0yny)u3j!7fEDBf^us&czz|MeO0eb@u1RM@H
z5^y}=Ou)H-3jvn{t_0i&xD#+U;C{fPfF}XZ0$v2X40s>#G2mOkuYi96%z<oy?13DC
z+<`oSyn%dyp8^B|#RDY+r2}OGWdr2`l>^lSH3D@4bp!PS4Fin>O~5DoSq3@<dIkCi
z1_y=)h6hFj#s{VZrUljoHV3u@b_eza&Ip_vxG->W;M%|)fx80t1nvvmA9yJ6MBw?r
zi-DH{F9%)?yb*XW@KNB?z;}V40zU_S3H%<&7{nCB8YC1X93&bf79<g*6r>Sk7-SS=
z8e|jX8sr%i8WbKB5fl{^6BHkm5R@2{7L*rM9#j!j8PpKe6x15j71R?nIcRFow4muh
zGlFIX%?Vl(v@~d0(DI=5K^ua$1#J)75wt64chKIT13^cEjs=|vIumq0=wi^7pld<5
zgYE=940;;$BIsq%tDrYQAA&vxeF^#&^gW0nm^qj$m^+v!STI;PSRz<DSSDC5SUy-4
ze43kPuy(Lcux_wHuu-sSuuZUSuwAfIuurgeaAa_FaAI(BaB6T)aBgr>aAj~^aC2~b
za7S=o@Z{hr!83#B1}_X=61*ySb@2M&O~G4&w+3$y-VwYjcyI85;G@CkgD(YN4!#<E
zEBJ2kz2FDI&w`%^e+^~|5e|_GQ4CQJ(FoBB(GM{UF$pmZaSm|_aS!ng@ehd$NrIjj
zmKl;Ak{gm2QW8=h(iqYl(i+kc(izelGBIRo$h43-A@f5PhAazN9<nlIRmj?qbs-x=
zwukHt*%h)oWPix9kW(RNL(YXf2zeFqCggp{w~#*}|3dzUFoZIOvW9Yma)$DR@`mz-
ziiT>1YKIzynueN%T8G+%+J-uYx`%p(dWHIi280HNMubL%Mu*0QCWI!2ri7-2)`vER
zHifo@c7*nY_J>XkofJAbbV}&-(8ZxkLf3|F3f&)iF!XTfvCxyDr$f(#o(sJgdMWgB
z==IPWp|?Ztg+2;>8Tu{se<*7hM;KQaZx~+~f0#g+V3<&tWS9>4)GE_3^DxUW>oA)z
z+c5huhcL%5=P;Krw=mBz?=asm|FDp-xUht<#IU5W<gm1`%rMYtP=#SdVWnX$VXa{u
zVclUpVN=6qhRq6_8#XU&e%P|G<zXwrR)(z(TNAc6Y-8Bwu<c>{!j6WW3_BHeI_!Md
zg|IVWXTxrW-3hxJc0cT4*pslQVb8*zhrI~<81_2sZP>T4?_rGLOyTU|T;V+7g5jd!
zQsL6!vf&EhO5w`jGom!ZwZJDr>4zJKn}mbTaIz0~4R;Io3HJ>T3Qq!^m=vB7o*kYW
zo)?}UUJzawUL0N$UK(B=UKw5$UL9T&UKidN-W=W&J|%p5_{{KG;d8?0hR+M1AHFbr
zYWVW-72zwx*M#o~-y42B{6zSf@blqU!|#UQ3x5*+Ec|)+%ka11AHu(ee+&N+{x|$z
z`2TR`2$l$r2+oLy;XDz%5z-NI5%LiV5o!_Y5xNmZ5tb455uOn~5x(G)j6x&gBN8K0
zBGMx=A}S(kBI+X=A{rywBRV2FBf27bB6=hGBPK*liI^5KH)27=!iYr?%OX}rY>e0x
zaU^0-#G!~25oaULMO=uu6mccuTEwl0yAcl~9!0#2_#D9+$ri~S$rC9QDI6&h>DVS4
zsTc`5nMfm2Khhx5IMOuIEYd#GInpgMC^9%QGBP?cHZm?UJ`!{iPj+N(WPW5(B<LKS
z%E;=-n#k_Rp2)t)Ns&_{r$^3@ToSoFa&6?g$n}vMA~#2FkK7fxC-PwA;m9MACn8Tp
zo{hW|c{lQ2<o(FUkxwF@N4|@EANeuzQ{<P(?~x2qEKxjByit5nLQ%p|a#5g@chsXa
zqO_uPqYR>4qFkfgqdcN~q5`5qqvE2Hqf(>NqjIClqpG4nXUB9$O^BKtH7#mp)SRe!
zQS+k~L@kP19<?TFW7MXo%~4yUc0}!p+8wn&>PXbFs1s4=qi#jriFy$AH0o8<yQr^G
z-=h9TF+?*)b3}_rn?y@SOGnE_D@LnE>qc8dJ4Sm)`$PvthegLlXGG^k=SSB>*GAVx
z*GD%-w?wx^cSZL_Pl%ovJvn+x^t9*|(JQ0ZM6ZorAH6YpQ}p)eUD11@4@4h~J{x^L
z`dak$=o`^Dqi;n&h<+daG5SmN-)No~@ff)n`55IGwHVD9?HHXHy%>WSqZrc|vzW-3
zsF;|Tq?qKG^q7p8%$VGmf|!z+(wM54>X@3C+L-p3j+m~P{+LNIb7SVmEQnbYvp8m1
z%&M48F<WA`#_WnY8FM=3Qq0|$>oM<QKE`~C`4Ynz%NENUD-^38s~oEms}`#sYZz-1
zYZ+@BYY#p<#4Xk%HZ(RcHZs;LHa<2XHZe9SHYGMIHaE5)wlcOVwl20lwlTIjwj;JH
zc2ex**eS77V`s+Bj-4O7Aa;4|>evmjTVi*_?u<Pgdp!1Z?1k8Ku{UCG#y*IB68kdt
zN9@m7hB)>(-Z-H+kvP#fi8%Q<g*d%9jX0w?(>S|0@3??C&$z(2u(*i0=(w1;xVVhC
zthnsB9Po)01#t~=-En<!i{h5VEsa|dw<>N;+{U=gaeL$T#qEzf7I!A@blkbPi*c9Y
zuEbr9yAyXW?rGfXIHq{Ec=mXXc)obac$s+Fc*S_7c;$GNc#U}Nc%68?c!PM8c(Zux
zc-wgUc!zkGc-MIMc;EPd_>lOB_~`hA_~iJM`1JVv_@a2w2@VzURq?g)b@83?z486=
z)8gmE&y8OczdU|*{F3-J@$2I^#BYq>5q~89c>Ia@lkunHFT`JrzZ8Et{!0A4_=oY2
z;$OtSjDHpXCjM>wyZHC<pW;8qe~bSW|0kY3fh&PGK{!DqK|DbsK`KE$K_x*q!8pM*
z!6Cst!6U&l!6zXwAtWIzAv_^AAu%C6p)jE?p+2E0p)H{!p(~*;VPeAMgsBNL66Pk%
zOIVb!Bw=a7ii8ab8xyuC>`vI1a46wO!ij{F38xZHC!9+-pKvANYQoKg+X;6Q?j<}*
zc$)Aj;cLQ=gg*&?6POa&6S)$35(N?k6NM6m6Galm62%iG6J-+R5|t9Q615Wz5)Bhg
z6G5jQSSC6`PcDc{Oi0X0EK00MtWK;+tWRu6Y)ouUY)R}+>`k1MI5}~8;*7*OiE|U@
zCoV`_nz$lyRpQ#j9f>;=_aq)jJeYVW@m%8h#H)#S67MG7OT3@>F!531^Td~lPZQrH
zzD<0e$e6^O#FE6GB%CCgB$K3&1UivGJxMc3JION1HpwZ;Imso-Ey*V-ASn=f0zgz!
zOj1e`Xs3R0QdLrIQg2dUQh(Bfq-9Afk~Sx8OWK~aD`{WS{-h&G=aQ}_T}!%^^eX97
z(wC$^Nq>`=lUb6vlDU(4lLeB6lf{xHk~NdHl68|!lg*MXlWmegyXKvfU6S3By^_6?
z{gQ){gOfv&Ba)+&Q<Kw@bCPqD3zJKdOOq>-Ym#e|>yw+3Taw$8yOJj)Pf4DdJTrM#
z^1S3F$;*=0Ca+6gpS(BuVDi!A6Upb2FD743zLI=3`A+hK<fqB6lHVkMO8%VuHTg&K
z&t%RNt`vb3p%jr6i4?gMg%qU}l@!$!%@nN^{S<=~(-hkj`xNgK|CGR#pp@X0kd&yD
zXz+gVc<^rV<doc$;*^q<>Xh1))|B>?{*(zR6H{iS%uJb`GB;&@%EFYzDa%q;q^wEV
zoU%7%U&{WJBPl0SPNkeqIg@fO<wDBEl&dM%Q=X(eO?jE}D&=j;hm@}=-&204{7+#_
zWl7~o<xJ&D<xdq(6-gCKl}wdRl}nXRRZ3M$)lAh(HB7ZiwMn&21?}ASObtj4N)1Vk
zPfbWoPt8uPO07+8Ol?i=N}ZHCHFZYn+|&iBi&K}Su1npNx;b@A>i*P2sV7oTrk+c^
zka{KcTI!9|`>7vNKc#+2{hInS^<V1$RE9K`G>$aRG~P79G@&%nG_f?<G`Td`?rJsY
zzG|H`y)=U~!!+YG%QW*ehcwqTw=}ObpR~X<zqIhQh_uMG=(L!$gtWx8-)UKC*=adx
zb!o+ErD^qP<!PWD$kk~LX*FrxX+3GZX%o^WrOiy6l{PzVPTKsm1!+st)~0Pt+myC7
zZFk!Kv;%2}(hjGcNIR2uF715Um9*Pw_tRday-s_R_Ac#L8f!XxI$yeQx@5Xcx<a~A
zx^cQ)x+{1mu}^wPdT4rVdRlr;dR}@-dRcmPdSiM^dS7~f`o#3f>C@6@q|Z#BoxUM`
zWBR7_t?9ed_oVMl|CxRu{ZRVh^rPt~(od#eO23|dGyP8b!}MqAAJRXie@p+K9+V-H
zA(<hYA)ld<p$^{9tDj+zVVGf@VVz;0;gaE+;g#W&5t<R65s?v{k)4s3k)KhJQJ7Jb
zQJPViQI%1hQIpY>(UQ@Y(UCDNV@AfTj5!$#GZtqo%~+YSDq~&7ri|SgM>9@joXI$!
zaUtVk#^sD_88<WTWZcbon(-pzRmSU#HyLj;K4g5%_?q!8<9EiNjK3LdnVgwinF5)D
znZlW3nc|s-nZ}u>nHHJWnNFFmnVy+`nc<nynaSWCrD>TNnVFe6;60>8nN^w9ne~|s
znZ22lGN)zE$XuAYG;>+zip<rSYctnpZqMA2xhr!|=F!X(nHMv!WnRyGl=(FCUFQ4D
zkC~q{zh?f+WXNL7V$R~v63i0KlFE|JQpi#P?=v;ZGRZQ}vd*&0vd?nOa?A3}^2+kd
z3djn~3d#!23d@SlO36yk%E~ItD$c6QYRqcRYRhWR>dflSnwT{^Yi`!Otod0>vsP!V
z&)Sf+F>6cK-mHCD`?HQ^oy<CsbtdaV)|ITQS=X}eWZlhrlJz|6P1c93k6E9x{$%~l
zV#;RDX3J*J=FH~L7RVON7SEQ>mdjSj*2vb**2&ff@8Pu0w$FCU_R99n4$2P8j>wM9
zPRLHr&d$!uF32v;uFbB?Zpv=Wo}N8Bdw%wU>_yp&vsYxV%wChdHhW$6hU^{LJG1v@
z@5?@%eI)y2_L=N!*|)MEW<Sn;mi;{YUG~T9@7X`I|7SDhu;j4jaOUvl@Z|{P2<1rT
z$mgi#fc8D=<mlxX=a}Z0<yhrd=h)|X<#^}#=J@9X<%EFu6vpIa=j7((=al4><y7QU
z=2Yjj=CtLs=XB;w$(fonJ!eMFoSgYN8*(<~Y{@y4b1dg<&iR}RITv#-<y^_RmUAoT
zPR@gz=Q%HPUgx~Yd6)Ak=SvPtE_*IlE?+Kxu3)Zku2imCu6nLUZh8)A&!AzhWv)%G
zeQr2-*Ir_7YHoUNer`c-O>R?ed+x;CNx4&Ur{zx1osqjLcTMh=-0itLbNA-%&pncR
zBKK78x!m))*K%*?-p#$A`ylsG?$g|tx$kp7<bKKhmis4{A&(_bE>9^>J<ll5EYC8}
zI?pE0CC?SSo6S4VKQAyZC@(lKBriNKCNDNGE-xuBIWHrxIIlXdHm^5ta^B3m1$oQ!
z*5<9t+nBdGZ+G7QyaRa$^A6`7&pVNKD(`IGxxDjvuk+sKz03QV_dD-z9!ow)K36_Z
zK5xEQzC^xMzI47?zGl8wzJ9&|ct4nRzD>SvzCU<pS8#rKeq??Wc>h*neo{VYk5+Ad
zU4C<ZdwxfLcYaTPZ~lb*N%@oWr{qt|pOrs9e?k7z{AKye^H=1r%U_?rA%AQBw){Q$
zNAr*8pU6Lze=Gl9{)_yV`5*GX=Ksw9lm9oLp@6l3t$@9Nw?Mo=p+LDnzrduxyuh-+
z2E0cKvM0*BAfzA^yvNC}Af+I+Ag3U&ptPW@pst{?ptYc_U`oN%f@uZQ3uY9|E?82q
zx?n@W#)2&c+Y3$=Tr9X;aHZgC!L@=L1$PRb6#Ob+E@UZWEo3WXFXS%dDdaDdD^w`d
zF4Qg5F9hv7vM6*cbS-o%bT9NO^ezl23@QvSj4F&Nj4Mni%qXlZY$$9kY%lC7oK!fg
zaCYH>!bOGa3pW&QD%@PSt8jnefx?4@M+#3Do+-Rsc&+ee;jO|ug+B`a6*3gD7jYDE
z76})L7fBV#7ReW>6loXf7nu}U6j>HI7C99;7r7Ss75Nth6a^QB7KIf>6~z?A6(tlU
z7iAP>7v&Y@7Znzj7gZEh7u6Ki7qt|17WEeO6-_RhU9_TTZPB`-jYV6E_7xp0I$m_L
z=uFYoqH9GritZOZE&5#arRZ1D@1lQ2OvNn4ti|lb+{L`bLdC+x62+3ma>Yu;D#hx>
z8pS%rhQ&t3ro~pp*2T8P&c(jP0mVVZVZ{;fy)U30FPX*J#W}@!#regB#pT77#WlqZ
z#f`<y#jV9{#eKySiYFIOEuLOHqj*m7yyE%A3yK#NFD+hHysCJ0@!I08#oLQ_7VjzE
zTfD#cXz{V)lf|ct&lI08zEpg<_*(JJ;=9EUiys$1D}G-5viM8!*W&NRKZ}1A|1SPp
z{J)r?gt3IBguR5TM6g7vM7l(!M6E=lM6*PzM7u<%M7Kn*M8CwK#IVG&#G%Bw#HGZo
z#J$A3#J41{B&a03B(@}}B&{U9B%>s|B)255q_Cu@q@kp-q_w22q`joGq`zcB$;6UL
zB{NE9mdq-dQ!>9~LCM0B#U;y1R+OwPSyi&SWL?Snl8q&sO175lEZJSMzvM*8$&xcA
z7fLRd+$gzKa=YYS$^DWiB`-=|mAo!_U-G5oSIO^^KPCT5*h+;;#Y)9X6-pILRZ7)M
zHA}Th^-Il4ElX`n?Mm%S9ZH=`-Ag@6{YnE$gG$3o<4WU86HD_;3rj0Yt4ga&Yf5WN
z>q;9-TT3UDPAZ*TI<<6W>73F<rAtb;l<q3sUwWYQVCj+4W2I+G&y}7py<U2!^nU4s
z(ubu_N}rd$DScP^zVu`1&r*gmrZVO-mNND-jxw$?o-+P2p)%nz(K4|z$uj9OnKIcj
zxiaN4)iSj*%`)9GqcY<%(=v-P%QCAnn=-F5hcd@9=Q5Wv*D}vC@3PRc$g=pdl(N*a
z+_Jo~{IbHblCs9K*0P?m-m<A>v&-g`%`KZ>wxDcL+2XP#WlPJJl`St@QMRgVZQ0(k
zgJnm{PL`c6J5zS9>`K|qvIk|)%3hScDf>|NvFuyf&$2&d4CQR)T;+V_LggamqUGY{
zlI2q6GUZC;8s)m>dgc1%CgrB(X62UUw&ix^PUWuUZslI(zU6-9{^ddCVddfFG39aP
z@#P8SN#!Z!>E&7FIpqcAMdiiiCFND+wdD=vE#*Dsz2#HNr<PAEpH)7;d{O!G@>S*Q
z%GZ}~EZ<tbul#WN$?}Wkm&&h}-z>jZe!u)d`IGWz<*&-$lz%AySpKE_NBQq^)(W-?
z&I;ZNz6!w#*$Tx9r3&Q=-3q-5g9_6M^9tt*mkRd^j|!g(zlxxWn2NZHgo?z9<cgGv
zjEby^yo#!dx{9uf{)#CTGb$EV%&nMLF~4F-#fpkG6>BRtRBWu+RI#~Ycg5a{{T0V6
zPE?$%I8$-1;!?%simMgZDxOr_uDD<EpyFZ0vx-+0pDI3AFjRi4_+Ig=;&;XW3bsm~
zN`XqLN|{QzO8H8KO4UmBO3g~$O2bN%O4CZ~O4~~NN|#F4O1Da{O7BYl%D~Ey%81J7
z%9zUZ%FN2_%A(53%IeCR%DT$#%AU%Jm6I!{R8Fm&Rym_`cIBMPg_SERS5~gBTwl4d
za!cio%H5TRDvwkiuRKwCs`7m0mC9?Cw<_;e-m832`Ka<~<*Ulqm2WFQR{p5`Q^{1t
zT*Y3+S;bYwQzcj>S|wd2SEX2`UZq{7TcuxRP-RkOT4hmXS!Gq_Qsr9ZUgc5cQx#ej
zRux$lQx#hkUzJdmT9savRh3&+T2)b1SJhC}RMlG5R@GJ2T{WR<V%3zYc~uLl7FVsQ
z+FZ4@YG>8%sy$W5s!mp&sXAA6vFdi!i>jAZudCiveXROY^}FhC)xRqCYLROBYUOJ6
zYRzh`YVB&>YQ1XxYJ+OSYLjZ)YWr%3YR78#YQO5x>V)c)>a^<2>a6PA>ip`W>f-A1
z>Xz!x>b~j;)f20yRnM-TSG}NmY4w`w_0=1yH&t(~-d4S<dUy4n>b=#6s*hHms6JJF
zrTSX+_3E3|x2kVfzo>py{i*s(_1Eej)jz9$RsX5}SIt<%RKr}uQo~lmS;Jk!Q^Qxo
zUn5x~U87K=TBBB@QKM61SYupcQe#$QSz}e>R^wF@S`%0kR1;hiSrb(gT@zCiTN784
zSd(0nUXxjqTa#B)P*YS>SyNL}Thmt4UejMQrDk5uf|_MD8)~-IY_Hi>v%6+b&HkDr
zHOFgC)SRq2TXVkVa?O>Rt2NhaZr0qYxm)wB=4H+6ny)p?wd}PVwVbv5wSu)mwZgSx
zwX(HxwaT?>wOX~hwT87ewYIf(wGOq8weGbZwZ651wZXOFwUM<^wK27^wW+n~wOO?V
zwH38hwbixtwT-n+wavAywQaQ>wcWKnwY{|yYp2ytubo>vuXb7O^4e9kn`^h#Zm->0
zd#Lts?UCA}wa04D)Sj(9S9`toW-UYAquQsn&uU-QzOH>+`?2<G?YG*WwZCdP>ICWp
z>qP6s>tyO=>lEtL>on?g>U8V$>x}En>g?-W>RjvG>-_2h>VoPb>f-AX>yqkH>$2<e
z>hkM~>niH%>Kg0X>e}nN>U!%Y)=jOOQ8%k@Zr!{(n|kYd+j_ft`+DbkmwNYl|N5Z%
z;QHwLnEKfI#QNm=l={^AwEEoo!us0!y88P1hWhUM-unLf3H1}}r`1odpHsiEeo_6h
z`c?I7>$lYJso!6Jp#E_EiTZQ(=j(6R->-jM|Fr%^{hRuC_3!IH)&HvhTmP^Ae?5Bx
zM*~*_Zv$Tge}iCyaDzyLSc7bXT!VarLW4?!T7yo5UV}k{NrP#Fd4pwxRfA1~U4uh|
zOG83KN<&&hZbM;1X+vW}M?+u3oQ8P~%Nmw9tZvxRu(RPr!`X)O4VN0OG+b@C-f*Mg
zLBrdIcMTsJJ~e!9_}1{V;a9`I2IfZYMzKcmMu|q5M!80XMwLeOMx923M$<;CMw>?0
zM)yXqMxVx@#_-03#>B?-#*D_y#@xpI#`4C-#tDrrjjfGsjopoXjnf)uG|q0E*SM&0
zUE`+4EseVyPd6TJJlc4w@m%Bi#;c9j8*ew>ZM@g`u<=Rb>&7>Y9~wV4ero*M_^t6r
z<Il#wjsF`NnwXpTn}nN0nk1W~nq-?4o0OU~nv9xEnyi|fn_QY)o7|eboBW#mn*y7{
znqry~nv$E+n{t~<nyQ;>o9deyni`v$n_8OMn>w4in);e1Hce@o)-<DOR@3aJ1x*W^
z7B?+vTHdsxX=T%@rgcplnl?3UY1-bjt7%WuzNY<6$C@rQU2VG6^q}cc)03tbO|P2X
zHob59*7UvUZ_~dfhGxcQ_GXS|u4eA$kY?#-*=D(B`DVptrDmOG-DbUJgJ$Dq^Jc4N
zn`YZ)r)KA7muB~7-)6t&z~<2Au;%dQg64|m+UEM^hUTW`mgctR-sVZoQ<|qX&uE_6
zJiB>L^W5fT&C8otHm_;k*Sx>^K=bkDlg;OwFEn3lzS4ZRIk@>n^Q-1>%|DudHveg6
zY+-BRYT<7YY!PjdY+2i^-(uO~+Tz~g(c;zO+v496*b>wd))LVY*%H+f(~{7V(vsSe
z-jdZ)&{Et|(o)t^(Nfb=+tS$5+A^tSa?8|~c`eIYR<x{aS=F+>Wn;^hmR&7-TlTda
zXgSn!yyZm8nU?b{ms{?%Ja2i`^1kIm%g2^aE#F&=T7R|tZu#57)XLn--pbR;*DBB|
z(<;}h)T-R7(yH33-m2BA-KyVe+-lNl)@tAC*6QCH&>Gkp)Ee9x)*9Iw(;C|v*BalN
z(3;qq)SA+o-J0K8*;>_F-CEmP-`d#P+S=CI+1lOO)7sxUxphYC+}8Q63tAVoE^S@j
zx}|kn>-N?it$SMcw(e`)-+HL^c<ZUw)2-)P*S6khz14cZ^+D^i))%dBTR*pcYyH#u
zzm=hlrH!?Xw~en&piQt%s7<0xvQ4^8u1&E`y-l;ttj(g$s?Da&w#}i<sm-k|s4ciH
ztS!7PqAjv5wk@G8u`Q`Bxh<tFvn{7Bzpb>btgXDQs;#$eV%xN~8Ev!L=CmzrTh_L`
zZAIJKwvBC@+qSfAZQI_qqitu~{<Z^c2ip#}9c{bVcB$=Z+x50vZFkxpv^{Qn+V;Gy
zqwQDQpSHhkEbXlA?Csp`eC_=00`0=>BJGmxa_#c%itWnn8tr=R`t648M(vjER_!+J
zw(WN94(-nEuI;|<5$&<<iR~%vsqOjgh3!S{)$PsgE$yxCZSC#t9qpa%-R(W?6WS-Y
zPi>#xKBIkR`@HrA?Tg!&x36hm+rF-SWBb<jeeL_(54N9ZKiPh&{apLi_G|4o+i$hs
zX}{n8sQq#KllE8buiM|Ye{BEU{-ga@`~P;v4(1NF4$cm)4(<+t4#^Io4&e@w4v7w_
z4(Se=4!I8b4vh}o4!sV84x<j!4yz8E4#y7X4%ZHk4$ls+4(|@Xj=+x4j<Al1j;M~9
zj`)s*j+Bnfj>3-0j_Qtvju{=ZI%apw>6qWKpkqbHs*YV9dpq`Z9OyXJak}G7$Jvf^
z9Tz(;bzJVa-EptudB^*X4;>#nzIJ@?VC-b;<n83^<nI*i6zi1el<bu1l<8FHRO?jl
z)aW$mH0(6$H0`wPwCc3$bm(;IbnSHO^z8KS4C)N;jOvW;jOk45OzKST%<jzVEa)um
zEbXl7tnRGotnKXV?CqS;Ii+)I=j_foo%1^vbS~}O(7B~^Yv;Dk?VWo%uXJARyw-WW
z^G4^>&X=99JKuJG?EKvMt@CH+-_HM?EM2T!>|Oj_f?YygB3+_ga$O2tN?j^lYF*l0
zI$io*rd{S;wq15z4qeV&u3he3o?X6OeqF&`VO`-}5nVA|v0aH>sa@$^rCnuR<z1Cs
zRbACxbzSvc4PDJ$ZC%}6{aq8fCUs5gn%*_DYkt@Au9aQuy4H7X?%LM1y=!;ZzOKVv
z$GT2*o$NZ*b+PMm*OjiTUDvzrcHQrK)Agb2OV`(~Z(V=7{&%r<vvqTK3wFzN%XQ0l
zb9L)>8+4m@+jKj1J9oQuyLP*EdvphN2X}{bM|S&m$8{%n=XRHMS9Di)*L2r)H+Hvl
zw{~}T_jdPpPwAf8J*RtK_xx^)9?Krv9=jgb9`_#49`7Fip1_{qo{*mKo`|04p4gtq
zp5&gCp0u8fp3I)yp5mU;p0b|mp1Pj4p7x&Zo(VmZdM5YG?3vv&r)Npe&YoR8M|+O-
zoa{N>bH3+V&()rrJ$HK^_PpqM)APRPL(iw4uRY&;e)Rn7`QO9X%iPP^E7U9AE8Uyg
zo7tPwo7Y?4+tl0A+tJ(GJE3=C@6_ITz4Ln)^e*dN-MglDeeb5;t-afOclPe?J<xl!
z_gL@o-V?p2de8M<?7h-^wfB1O&E6-yPkW#DzUlqYyQlYK@2B1`y?=Wd`&jx|``G%p
z`vm($`o#Ja`V{+=`jq?B`qcXj`;7a{`po+*`Yiiw`yBcl`@H*n`~3R+`$GDn`(pZH
z`{Mc%`;z)H`*Qkn`||q=`U?9h`>Oh?`<nWi`#Sq3^iArU+Bd6jcHi8-d3}remiMjf
zTids;Z*$+)zFmF0`wsLS>^t0dr0;m&`M!&NSNiVsz36+__o44&-}k<seZTtN_A&G`
z^|SYL^z-)%^o#Y2_e=E4^(*u%_AB?R_N(`6^y~EN_UrYV^qcmZ^_%xw^*i)C_B;2x
z_xtw;_6PL`_lNX{_DA%`_Q&<7_RsBK(7&*MN&nLRW&K<GxApJn-`9Vj|6u>I{!{&@
z`_J}Y=)cr|x&LbagZ{_;Px@c<zw7_l|F!>H|L^{P{Y(>BCU8vPnIJJidV<CT%?bJw
zv?l0G(4AmB!DNE@1p5ij6I>?vOo*NkJ0WR8+Jy88ITH#dluW3c&^n=GLidE834IeL
zOqe=h`h*!1W=@zrVZnrj6BbQaI$^_vO%pax*fL?;guN5aOxQQ!@Ps21j!rl};lzZi
z6RuCVG2!NfI}`3sxIf|Pgi8~?O?W-w{e%w_zD)Qx;r|4Ni7XRYC$dfCn8-U(V4}!G
zv5DdnB_>Kul$j_uQDLI$M5T$!6V)ebPSl&IKhbca$wae><`XR^T1~W>Xgkq)qWeUT
ziT)FVCx%aqoESARdSc?ll!@sRb0?NetejXiv3g?T#O8^u6Wb<sP3)UEapL5OQzlNG
zIAh|xi3=w#o48`)nu%*CuA8`F;>L-aCT^a%ZQ|~UdnWFkxPRiIiH9d1op^cTm5J9U
z-kf-A;=PGaCO)0`a^kCrZzjH-_-^9+i616@ocMj>&xyY${+-A$iE$FkB-Tl6lh`M5
zPU4!xGf7~Q&?MnWVv{5$$xM=+q&!JwlIkS2Ng9*%Ch1Qym}ET3bduR5i%FJ~tR~q^
zvYX^E$!U`FB)3WKle{MRPV$@NKPhlh#H7ecF_U5^B}_`3lsYMWQpTjrNqLj<ClyR8
zom4idd{V`v%1PCeY9`fAs-M&`sdG}-q~1w=lO|1?K56Ep`I8n*S~6+rq~()VOj<o@
z{iIEkwoTeGY1gFPllDy7J8A!<1CtI;IyC9<q@$CLO*%g5#H7=c&P+Nx>D;6XlP*uX
zI_dhP8<TEMx-;qSr2CT|OnNx!@ua7do=<u)>CL2flRixPIqCPL|C1OdGfn20%sW|d
zvdCo7$ug5=C(BKipR71pWwPpI^~su(wI&-+HkoWT*?hA5WRJ<7lLICPP7azJIyroD
z#N?>Sag$Rfr%q0voH;pba_;2($pw=OCl^mHnOruxYI5!5`pFHG8z(nS?wH&)xqEW&
z<o?N%CQqF_WAg0D^CmBxym<1G$;&3Mn7n%OmdRTuZ=1Yp^2*5vCm)%7bn>yu$0whh
zd}{LP$!8{?oqT!n&B=Er-<y1Y@}tSmCO@D2bMp7eKPLa0{Co1>$&6E&rm#%mn8G=Q
zcM9JW{wbnU#HNT(k)NVBMSqIn6r(A|Q%t5<PqCk3JH>g5>lBYEUQ>LggieW^5;G-!
zO5&8{DH&6;r{qq_o031Ja7xjXmMP6sDyCLWt()31wPR|})ZVFmQ|C^dH+BBhg;SSJ
zT{(62)HPGLOx-qh*VMgJ_fI`G^~BVZQ%_I5F!kcpOH(gTy*c&P)VovfO}#($!PF;H
zpG}pWCO1uKn#wfQX=>ASrWsB%o@PGHVw&YNt7$gVY^OO+3z`-(Eo@r&w1{bm)AFX3
zOsk$&Gp%k~{j|nuP1BmEwM^@rHgVdtX|txyoi=~kl4(n)Et|G-+PZ1$r){3LYuc%4
zm!@rsy)o_9w7b*pO}jts<+S(HK2G~JjcGdbbk^yd)1{_MPnVspI9+MF@^p>qhSQCw
zJ5G0=?ls+Sy8rah>EY8OrbkVWo}N5CeR|gPyy?Z$%chr4ub5svy>@#2^oHr3)2B|K
zHhuc^nbT)YpErH}^hMLxOkX#B<Md6_w@%+SeaG~j(|1kZGkxFm{nHOlKQjI3^yAY{
zPCqsM%=EL<&rQED{o?d1)2~mzG5zNByVLJYe=z;_^oP@*On*Q9<Mc1nzfb=${nvE%
z8C)|YXYkJ8n;|koY=+DXxfu#GlxL{T(4L_;Lw|<B45JywGfZcw&aj)|GQ)j_*Nng!
zK{JA9gv|(_5ji7jM$(Mr8L2bUW@OFCnX!7t+8OI+Y?!fS#`YOIX6%}=d&d45hh`j|
zabm`q84qVXp7C_Xvl-84yqfWO#<v+vGudZy%oLm{I#X<>_)Mvp(lcdd%Fk4qsWwx6
zruIz3nMN~>XPV43ooPAKYNqu}o0$$X9cQ}Dbf4)l(|4xd%#fK8Gb3k4&y1NFH#2@_
z!pzw-=gyozbJ@%dGdIrMG;{0BoilgM+&gps%)>KJ&b&PH%FLTHZ_T_j^WMzoGhfYo
zJ@d`X4>P~a{5tdJ%)c}L&19OzJd0%(_bi@S0<#2XiOrImr7%lrmhvo>S?aTNXX(u{
zo@F}AY?j3=_gRj!TxNOA@}A{0%WqcTtdLn@vtnnhnzd%ux>@UIZJM=Z*4A0uX6>A{
zd)B^L`)3`Tb$HgXStn+ln{{E<rCC>JU7K}%*6mq$W<8koWY*JJ&u6`y^=8(mS)XTp
zo%M6puUUU*{h!4!n{hVNZ06Z4vsq_z%;ucUJ)37X?`*!=0<(o?i_MmtEj?Riw!&<+
z+1j&pXB*EpnQc1Te75CmtJ$`*J!X5)_L&_zJ8X9N?C9BXvlC}0&rY44HalZ>*6i%r
zIkR(T=glsjT{^pbcE#+<+4Zv<X1C04o!vIOeRk*UuG!tQduR90o-ljL>{+wt&Ym}W
z+3e-BSI%BDd&BIFvp3D&K6}UP-Lv=1-Zy*y?1Qt9&pt8x-0Tapug|_Q`|j-fv!Bj>
zKKs?|*R$Wx{yh8p>>sm#&i*y~@9h7x8Rjs};hw`kM{thV9EmxSbEM|T%#oX;G)H-k
z+8p&c8gn$~Xw5O4V>-udj`<whIgWFj=eW#qo#Q#jYmVO>|2YA3g6D+H37Zo!Cwflo
zoVYphbCTy|&dHh+Gbeja#+<x41#^n#l+G!iQ$6R|oKJJU&-pordoI&l!MWmdCFaV^
zm7Oa$SAVX-T%)<hb4})2&9#~9I@flt(_H7d?sL872G0$d8$UOBZqnS;xtVjb=4Q_=
zm|Hftd~WsJnz?mzo9DL7ZJXOQw|8#e+(~mM&z(AV+T7`LXUttVch%fAbJxw?ICtyZ
zopblh-9Pv6+~adk&OJ5v%G|4Sug$$a_txBdbMMc6F!$-)=W}1qeLeTx+z)d<&;2s@
z-(0SFO!L_1@y!#MCpb@Np6EQWd6M&F=E=^hnpZuqW?sX*rg_ctTIRLRYoFIQuYcaO
zc{AqCo;Ppal6foUt(muO-uihP=53z0W!~0#$L5`wcY5B{dH3f%nfH9&n|W{Ny_@%8
z-p6^L=6#*_W8VLHO!JxNbI#|VFEC$lzR-M;`C{|M=S$9)nlC+He!kLtwfS1}wdd>4
zH=J)Y-(<e|e9QS(^KIta&bOcMINy1`%Y4`QZu8ye2hR_kA2vUHe#HE!`LXlk=4Z^$
zoS!>CZ+`y#g87B>i|3clubN*wzkmLO`4i_)nm=X!wE5HL&zrw+{-XJd=P#Y#`3<tK
zsM}SbOQ0k4e?#qmr4oyV+W)F$91XSq)ys5VGc?rx*8uah%jCd3ef~BlMh1|0ZW+%@
zbHx54$nGR5Mh1p%R{;l*f&Ut6|0(ddF@u%=tK)C~$-uzCzb*8Cuhad`LyVUg4|QHV
z_>e{OU@r@2Z@_*2ZLa@%c?3Frf219E{r2~NW9^Ttj0_CrYK^r&)-f<Jl#6w{{%Ah1
zs8@tx$BTH-CKnOVPMvQrn;94wI=?m6{&>&Cz)-H<So>olh#}GK`h!*L-~az04J#55
z8eWHj_PaFJ{%B-{s%HZ2hXSh?_zO|5k%XjP6{=oK2C|Ll2W#Cgh_Z|ngtD~8+HZgV
zmxx0)-F)kW?z54G?!PiT@LB+}-G*}l$UMUXuNh7r?k!{J-J=fLwq>s5q*S2ftdy&i
zqm-v)qGYI)t>mJlq@}2(qNSy!tfi@?sHvxAq-CgOqGhb*pk=S+q~)j;pcSMQs1>3W
zp%tv9qnWIgq?M|bqE)12py{Wnq^+o}qOGN^tgWf-sHvxIq;05eqHV10plz@1r0uBf
ztQnvkq#dXoq8*_ftnH(jtevEts-2=;q#dAHtgWu4uC1!2s;!}=p{=c@t*xV_qph!{
zudS=4t8JiVpsl3oq-m~Yu5G4erfs2Rp>3*Vs%@oZrERTct!=Ait8JrYr)8(DqUoaP
zuH~-ns^zNfrsbyXqUEZors<~Xq2;0NspYBduIZ)arR}5TqwTHbt*xo)si~pqq3NsT
ztL?AlukEMhr|qSwt?3O~wyGVb6{fAL>8ly36{#Jq6|Ehm6{Q`c6{8)i6{{Vu6|Wtq
z6{ihal9iy9pslaz4?dtcQ!7(DO)E`1TPquMXuCG(0PRApLT%6_U9ncFR;hNmR=IYW
zR++Y%mYTM+ma{f!iE+ACx^{t9fp)G|u6DjwzIL8gp0=g7fs($Gk&>B`sgkjhg_5OG
zqFRz#vRaB-x>}}Mj#`;os#=y>p<0nzv08~*wOWN*salm<xmu-Kjhd6Xv$~7AtGb)I
zySj(Er@EKAx4MtIuezUlk$SOuiF&DenR>Z;g?goWm3p;$je4zmoqC~CzLKJWl7X^;
zih-(unt{53hJhw1;0<&PbPe<j^bHIQ3=ND7j15c-ObyHo%nd9IEDfv-tPN}oYz^!T
z><t_Y91WZdoDEzITn*d|+zmVoJPo`IybXK|d=2~z{0#yO0u6!;f(=3pLJh(U!VMw}
zA`PMpq77mUVh!R95)2Xzk_?g!QVdcJ(hSlKG7K^evJA2fatv|}@(l6~3Jl^63Jr=3
ziVaE(N)5^k$_*+EDh;X(stsxkY7OcP6b+ROl?_!4RSne))eSWaH4U{4wGDL)bq)0l
z^$iUS4GoP9jSWo<O%2Tq%?&LKEe)*<tqpAqZ4K=V?F}6a9Sxlfoef<KT@Bp~-3>hq
zJq^7Ky$yW~eGUB#{S5;Q0}X==gAGFrLk+_W!wn-0BMqYrqYYyWV-4dB%M9ZU6ATj#
zlMIs$Qw&oL(+txMGYm5gvkbEha}0A0^9=J13k(YliwuhmOAJd5%MB|GD-Ej*s|{-m
zYYpoR6^)dPl#Nu3RE^Y()QvQZG>x>3w2gF(bdB_k^o<OR42_J8jEzi;OpVNp%#AFJ
zERC#;tc`4pY>n)U?2R0Z9F3feoQ+(JT#W*a+>G3fJd8Yzyo|h!e2jdJ{EYmK0*r!;
zf{j9qLXE<V!i^$~B8{SqqK#sVVvXXA;*AoF5{;6Kl8sV~QjOA#(v32VGL5o~vW;?#
za*gtg@{J0N3XO`4ij7K)N{z~l%8e?FDvhd)szLXw8r2yo8Y>wq8><+r8mk$r8*3PA
z8fzJA8|xVB8tWPB8ygrK8XFlK8=DxL8k-rL8(SD#8e17#8`~J$8rvD$8#@>~8ao*~
z8@m|08oL?08+#ag8haUg8~Ygh8v7ah8wVH%8V4B%8;2N&8iyH&8%G#N8b=vN8^;*O
z8pj#O8z&ei8YdYi8>bkj8mAej8)q128fO`28|N738s{138y6TC8W$NC8<!ZD8kZTD
z8&?=t8dn)t8`l`u8rK;snkbnlo2Zzmny8tmn`oG5nrNA5o9LM6n&_G6n;4iFni!cF
zo0yoGnwXhbn3$Vbnpl}wo7kAxn%J4xn>d&_nmCy_o4A;`nz)&`n|PRbns}LboA{Xc
zn)sRcn*^8yngp2yn}nEznuM8zn?#sInnamIo5YyJn#7sJn<SVdnk1Pdo1~benxvVe
zn`D?|nq-+|o8*|}n&g?}n-rK7niQE7o0OQ8nv|K8n^c%onpBxoo79-pn$(#nnktzp
zo2r<qnyQ(qn`)S9f(k@a9aCLXJyU&C15-m&BU58j6H`-DGgEU@3sXx|D^qJz8&g|T
zJ5zg82UAB=CsSur7gJYLH&b_04^vN5FH>(*A5&jbKU06x0MkIzAk$#e5Ytf8Fw=0;
z2-8T@DAQ=u7}HqOIMaC31k*&*B-3Qm6w_4GG}Cm`4AV^0EYob$9MfFWJkxyB0@Fg%
zBGY2i64O%CGShO?3e!r{D${Dy8q-?SI#We6B{O9+6*E;cH8XWH4Kqzpp>C#Qrfa5W
zrf+6oW@u()W^86+W@=_;W^QI-W@%<+W^HC;W@~0=W^d+T=4j?*=4|F-=4$3<=5FR;
z=4s|-=56L<=4<9>=5H2Y7HAe^7Hk$`7HSq|7H$?{7HJk`7Ht+|7Hbw~7H^hdmS~n_
zmTZ<{mTHz}mTs0|mT8t{mTi_}mTOjER%iw~FSp37*sR2?)U3>`+^oW^(yYp?+N{>B
z&aB2v(Ok(~*<8h3)m+V7-CV;QTq&9BnCqJBnd_Sym>ZfKnH!s%n46lLnVXwim|L1#
znOmFNnA@7$ncJH?m^+#~nLC@in7f+0nY){Nn0uOgnR}c2nERUhnfsdum<O5%nFpJP
zn1`B&nTMMvm`9jLnn#&Oo5z^Pn#Y;Pn<ttlnJ1g4n5UYjnWvj)m}i=2nP;2lnCF_;
zndh13n-`cDnirWDo0piEnwOcEn^%}unpc@uo7b4vnk!l;StwhmSg2a4S*TlRSZIPO
zQVSgmT?;)6eG3B%LklAdV+#`tQwuW-a|;U#OA9LtYYQ6-TMIi2dkY5(M++wlXA2h#
zR|_`_cMA^-PYW*#Zwns_Ukg8r0E<8ie~TcCV2cooP>V2&aEl0wNQ)?oXp0z&Sc^D|
zc#8y!M2jSgWQ!DwREu<r42w*QEQ@T59E)6wJd1pb0*gY6B8y^+5{pucGK+GH3X4jM
zDvN518jD(sItxWhB}-*X6-!l1HA{6%4NFZ+ElX`n9ZOwHJxhH{14~0oBTHjT6H8M|
zGfQ(z3rkB&D@$uj8%tYDJ4<^@2TMmwCrf8b7fV-5H%oU*4@*x=FH3JrA4^|L&`mf2
zmVuT*mcf=GmZ6qmmf@BWmXVfGmeH0mma&#`mhqMemWh^0mdTbWmZ_F$mg$xmmYJ4W
zmf4m$mbsRBmid+imW7r@mc^DOmZg?umgSZemX(%OmerOumbI33mWozNR?1c?R;pHN
zR_az7R+^w@i<OR*u9cpZzLkNMp_Q?fiIu69nU%Sfg_V(&rInSHwUv#Pt(BdXy_JKN
zqm`4Dvz3dLtCgFTyOoEPr<IqLx0R2Tua%#bzg2)$pjD7nuvLgvs8yI%xK)Hzq*atv
zv{j5%tW}&<yj6l#qE(VrvQ>&zs#Tg*x>bf%rd5_zwpET*u2r5@zEy!$p;eJpu~msx
zsa2U(xmAT#rB#(xwN;H(tyP_sqP3E>vbBn}s<oQ6y0wP2CaAe(tz)fgt!J%oZD4I^
zZDeh1ZDMU|ZDwt5ZDDO`ZDnn3ZEI~~ZD(z7?O^R_?PTq2?PBd}?QZR1?P=|0?Pl$5
z?PKk0?Pu+89bg@39b_GB9c~?J9bz439bp}59c3MD9b+A99cLYHonW14on)PConoD8
zoo1bGonf76on@VEonxJAooAhIU0_{kU1VL7R%~5jU20usU2a`rU1eQqU2R=sU29!u
zt!SfUqimyMqiUmOqi&;NqiLgMqiv&Oqi3UQqi<tiV`yVyV`O7&V`^h&V{T(%V`*b$
zV{Kz&V{2n)V{hYN<7ne#<80$%<7(q(<8I?&<7wk%<89+(<7?w*<8KpS6J!%;6KoS=
z6KWG?6K)e>6KNA=6KxY?6KfM^6K|7XlW3D<lWdb>lWLP@lWvn?lWCJ>lWmh@lWUV_
zlW$XCQ)p9UQ*2XWQ)*LYQ*KjXQ)yFWQ*BdYQ)^RaqiCySt8A-ct7@xet8S}ds|jl4
z+UnTq+UnWr+Zx##*c#dz+nU&#+M3y#+gjLK+FIFK+uGRL+S=LL+d9}f+B(@f+q&4g
z+Pc}g+j`h~+Irb~+xpo0+WOi0+XmPM+6LJM+lJVN+J@PN+eX+%+D6$%+s4?&+Q!+&
z+a}m1+9ug1+oss2+NRm2+h*8i+Gg2i+veEj+UD8j+ZNas+7{Us+m_gt+Lqat+g8|C
z+E&?C+t%3D+Sb`B+9}y7+o{;8+Ns&8+iBQof|}-bI(E8tdUpDD26l#aMs~(_CU&NF
zW_IRw7Iv0)R(95QHg>jlc6Ro54t9=qPIk_AE_SYVZg%c=9(JB~UUuGgK6bu#es=zL
z0d|3QL3Y7*A$Fm5VRqqm5q6PwQFhUGF?O+badz=`33iEgNp{J0DR!xLX?E#$8Fra=
zS$5fWId-{rd3O1B1$KpYMRvt@C3dBDWp?Fu6?T<&Rd&^Ob#^s&wRVd3O7_b3D)y@O
zYWC{(8ups@TK3xZI`+EudiMJE2KI*bM)t<`CibTGX7=Xx7WS6*R`%BRHukpmcJ}u6
z4)%`rPWI0BF7~eWZuai>9`>I0UiRMhKK8!$e)j(M0rr9RLH5D+A@-s6VfNwn5%!Vx
zQTEaHG4`?carW`{3HFKhN%qP1DfX%MY4+*%8TOg>S@zlXIrh2sdG`7C1@?vZMfSz^
zCHAHEW%lLv750_(Rrb~PHTJdkb@qx5N)E~nDh{d+Y7XiS8V;HcS`OL{Iu5!HdJg&y
z1`dV}Mh?afCJv?!W)9{K77msURu0w<HV(E9b`JIq4i1hEP7clvE)K2^ZVv7a9uA%k
zUJl+4J`TPPeh&T)0S<u<K@PzVAr7GqVGiLA5e|_KQ4Y}#F%Gc~aSrhg2@Z)4Ne;;l
zDGsR)X%6WQ84j5aSq|9_IS#oFc@Fsw1rCJ{MGnOdB@U$yWe(*I6%LgSRSwk-H4e27
zbq<P-N{-5oDvqj-YL4oT8jhNdT8`R|I*z)IdXD;z29Ab~MvlggCXS|#W{&2L7LJyV
zR*u$=HjcKAc8>Or4vvnFPL9rwE{?8_ZjSDb9*&-lUXI?5K90VQevbZ*0gi!=L5{(W
zA&#MrVUFRB5ss0LQI64$F^;j0agOnh366=5Nsh^mDUPX*X^!cR8IGBbS&rF`IgYuG
zd5-yx1&)P|MUKUeC61+zWsc>J6^@mTRgTq;HIB88b&iToN>0j7Do(0SYEJ4-8cv!{
zT29(dI!?MydQJvT`c8&UMoz{~CQhbK=1yi#7EYE<R!-JVHcqxqc1{jXj!sTaE>5ma
z?oJ*~o=#p)K2FX~Zcg4#zD|Bl{!Rf-flfhA!A>Dgp-y2=;Z6}wkxo%g(M~Z=u}*PL
z@lFX&iB3sQ$xbOwsZME5=}s9=nNC?w*-kl5xlZ;@c~1FG1x|%dMNY*|B~GPIWlrTz
z6;72-RZi7THBPlobxw-TO3up8D$c6TYR>A;8qS)aPN}nwv#ztAv%a%|v!Sz*v$3;@
zv#GP0v$?aSvz4>8vyHQ@vz@cOvxBpvvy-#4vx~E<vzxQKvxl>VvzN2CvyZc{v%j;S
zbAWT8bC7eebBJ@ObC`3ubA)rGbCh$mv!`>6bF6cmbG&ncbE0#SbFy=abE<QibGmbe
zbEb2abGCDibFOoqbG~zdbD?vQbFp)YbE$KgbGdVcbER{YbG37gbFFiov!aWVi?WM~
zi>iy7i@J-3i>8Z~i?)l7i>`~Fi@uA2i=m5=i?NG|i>Zs5i@A%1i=~T|i?xf5i>-^D
zi@l43i=&H^i?fT1i>r&9i@S@5i>Hg1i?@r9i?55Hi@!^NOQ1`TOR!6bOQ=hjOSnsf
zOQcJbOSDUjORP(rOT0^hOQK7XOR`IfOR7tnOS(&jOQuVfOSVgnORh_vOTJ5iOQB1V
zOR-CdOQ}nlOSwyhOQlPdOSMalORY<ti=wNNtFo(#tE#J-tGcU(t0rj3!d1sr*HzC|
z-_^j?(ACJ**ww_<)YZ(@+||O>($&h<+SSI@*456{-qpd?(bdV-+116>)z!__-POa@
z)78t>+tt_A$JNi(-!;HB&^5?4*fqp8)HTdC+%>{A(lyF8+BL>C)-}#G-ZjBB(KX36
z*)_#A)iupE-8I8C(>2RA+cn2E*EP>I-?hNC(6z|5*tNv9)V0jD+_l2B(zVL9+O@{D
z*0s)6(M`!s*-gbw)lJP!-A%(y6ExJ~rsJmTrst;bX5eP%X5?n<X5wb*X69z@X5nV(
zX60t>X5(h-X6I(_=HTY&=H%w==Hlk+=H}+^=Hce)=H=$?=Huq;=I7?`7T^}>7UUM}
z7UCA_7UmZ27U34@7UdT07ULG{7Uvf4mf&XQp6Hh3mh6_|mg<(~mhP6}mg$z|mhG0~
zmg|=1mhV>JR_IpbR_s>dR_a#fR_<2eR_RvdR_#{fR_j*hrs%HZuI#SjuIjGluI{ek
z4jwRa*KyZ%*K^l*H*hy}H*z<2H*q(0H+Q#iw{*91w|2L2w{^F3w|94NcXW4hcXoGi
zcXfAjcX#)2_jLDi_jdPj_jUJk_jeC)4|ET54|Wf64|NZ74|k7nk93c6k9Lo7k9Ci8
zk9SXSPjpXmPj*jnPjydoPj}C7&vegn&vwso&vnmp&v!3yFLW<*FLp0+FLf_-FL$qS
zuXL|+uXe9-uXV3;SM*TwQ1(#qQ1wvrQ1{UA01s<<=y>RQ=y~XS7<d?Z7<m|bn0T0a
zn0c6cSa?`^Sb11`*m&4_*m>A{ICwaEIC(gGxOljFxOupHczAevczJkx_;>_+_<Hzx
z_<IC+1bPH{gm{E{gn5K}M0iAcM0rGe#CXJd#CgPfBzPoxBzYuzq<Exyq<N%!WO!tH
zWO-zJ<ap$I<ay+K6nGSR6nPYTlz5bSlzEhURCrW+RC!c;)Ogf-)Ojd+DtRh<s(7k;
zs(Gq=YItgbhT}YSJas+wJoP;dJPkdKJdHg~JWV~#Jk32VJS{z~Jgq%#JRLo4J?%X0
zJsmuqJe@sVJY7BAJl#D#JUu<VJiR@AJbgX=JpDZbJOe$0JcB($JVQOhJi|RBJR?1$
zJfl5hJYzlMJmWnRJQF>WJd-_BJX1Z>JkvchJTpDBJhMG>JaawsJo7yZJPSRGJc~U`
zJWD;xJj*>RJS#n`JgYrxJZnAcJQcl^yp+9Eyi~o^ywtrkyugEqUOHa7UV2{oUIt!<
zUPfNVUM60qUS?kAUKU=KURGY#UN&B~UUpvgUJhQ4UQS-lUM^m)UT$9QULIbaUS3|_
zUOryFUVdKwUIAW#UO`^LULjtgUSVG0UJ+iAUQu4rUNK&=UU6RWUI|`_UP)fbUMXIw
zUTI$GUKw7QURhq*UO8U5UU^>mUIku-UPWHTUL{_oUS(e8UKL)IUR7SzUNv5|UUgoI
z-b&ue-YVXz-fG_J-WuMTpn*?s9dBK4J#T$)18+lbBX47G6K_**GjDTm3vWwrD{pIW
z8*f{0J8ye$2X9AjCvRtO7jIW@H*a@u4{uLzFK=&eA8%i8KW~5U0PjHWAn#!B5bsd$
zFz;~h2=7SmDDP<R81Go`IPZAx1n)%eB=2PJ6z^2;H1Blp4DU?uEbnaZ9PeE3Jnww(
z0`EfaBJX1F67N#)GVgNl3hzqqD(`CV8t+=~I&VcEB_CxU6(3a}H6L{!4IfR=z^#vt
zkFJlNkG_wAkD-r|kFk%5kExHDkGYS9kEM^5kF}4DkFAfLkG+qBkE4&1kF$@9kE@TH
zkGqeDkEf59kGGGHkFSrPkH1fVPoPhbPq0sjPpD6rPq<HnPoz(jPqa^rPpnUzPrOfp
zPohtfPqI&nPpVIvPr6TrPo__nPqt5vPp(g%PrgrqPoYndPq9ylPpMCtPq|NpPo+<l
zPqj~tPpwa#kD{-Vud=U-ud1(_uez^>FL;pISI1Y^SI<}9*T5HaW4p1hiLa@znXkF8
zg|DTrm9Mq0jjye*ov*#GgRi5nldrR{i?6G%o3FdChp(rvm#??4kFT$<pRd1ffN!90
zkZ-VWh;OKGm~Xgmgm0v8ly9_ejBl)OoNv5uf^VX4l5etaif^iKns2&qhHs{CmT$Ii
zj&H7So^QTyfp4L2k#DhYiEpWInQysog>R*Am2b6gjc=`Qov)&wlAns7s-K#lx}S!h
zrk^rsVBAl~PZxRuj-j8CpRu2bpQ)djpShofpQWFbpS7QjpRJ#rpFQ|=949|#KNmk&
zKQ}*jKMy}oKQBLTKOa9|KR-WzzW~2LzaYP0zYxDrzc9aWzX-obzbL<GzZkz*zc{~m
zzXZQTza+n8zZAbzzcjye@aZ~Pe%XFGez|^me))a{euaKTe#PJucgp<A{VMz_{i^(`
z{c8Mb{p$P_{gwQc{Z;%`{nh-{{WbhGK?D2#I{v!;dj9(U2L6WrM*hbBCjO@WX8z{>
z7XFt0R{qxhHvYE$cK-JM4*rh*PX5mRF8;3mZvO7zb9cPJC-3<B`}zC(2lxm22l)s4
zhxmv3hxv#5NBBqjNBKwl$N0zk$N9(mC-^7&C;2D)r}(G(r}?M*XZUCOXZdIQ=lJLP
z=lSRR7x)+Y7x|a?m-?6a7sF5PsrIh{pWdSwpcJ4Spc0@OpcbGWpb?-MpcSAUpc9}M
zpdVlmU>Kkq06JsGB)~MlJisErGQcXpI>0QzCcrkpF2Ejo@{V(W3;6UM_W+Lo&j7Cg
z?*N|w-vGY=|9}AKSv(;Dp#fn5;Q<i=kpWQw(E%|5u>o=5(|HmDK<D$M1f+t`=*bAk
z49E(|4#)|}4af_~2cOqd6i^&c5>OgY7Em5g5l|UW6;K^e6Hpsa7oZrZ6sR1i5~v!e
z20l?oGf*o~8+@*gUZ8%UL7-uvQ6S`W9kW35K#M@jK&wFOK$}3@K)XQuK!-rbK&L?G
zK$k$*K(|2mK#xGrK(9dWK%YS0K)*o$z<|KOz@Wh3z>vVuz%cNMJduG>fzg36fw6&c
zf$@O}fr)`hfysd>fvJIMf$4!6fti6>f!TpMfw_Tsf%$<2frWuZfyIF(fu(_Ef#rb}
zft7((fz^REfwh5kfr>#&LCQfYL8?J&LFz#oL7G8YLE1q&LApVDLHa=kL7-E5jDt*q
zOoPmV%!4d~EQ73qtb=TVY=i8A?1LPF9D|&KoP%6~T!Y+#+=D!VJcGP~yn}p#e1rUg
z{DT650)v8rf`dYWLW9DBKxh0!21Nx$2gL-%2E_%%gU|X&3Q7)22}%u03rY{l2+9n~
z3d#=33Ca!13(5~F2r3LJ3MvjN2`U4h2UHqV8B`Ti9aIxk8&nsh7_1bm9IO(o8mtCA
zu}2GfW{+O5ey~BXVX#rKaj;3SX|P$ad9X#WWw2GSHS{DO`(TG)$6%*m=U|s$*I>6`
z_h64;&tR`$?_i%`-(bIB|KNb&z~G?Z;NXzp(BQD(@ZgBx$l$2p=-`;(*x<O}_~3-#
z#Nedh<lvOx)Znz>^x%x(%;2oxZ19;tdBOR?1;K^EMZv|vCBdb^Wx?ga6~UFkRl(K4
zHNmyPb-{`uN+HT2Dj}*NYTy%pG()sPv_o`4bVKw)^g|3n3`2~-=l__6n1@(|ScX`I
zSclkz*oN4J7>C%0ID|NcIDyXwat(0{aS!nb@eJ__@ec6`@eT0{@ec_I2@DAe2@VMf
z2@MGg2@i<~i42Jfi4KVgi4BPhi4RE#NeoE}Ne)Q~NexL0Ne{^g$qdN~$$_3Llpj(M
zQW#PcQXEneQW{bgQXWzfQW;VeQXNtgQX5hiq8O?asvN2ksv4>msvfElstKCN3)KnL
z4b=<P4>bri3^fWh4mAk{ogHKzY7uG~Y6U$*$S%}A)FIR{)G5?C)Fsq4)GgFK)B}8~
zkawt0sBfrWs6Y60p`g&<(2&s3(6G?((1_4T@L5AKp|PQHq4D4ohmt~*LsLRiL(@Xj
zLo-4%L$gA&LvuoNL-RuOLkmI+LyJO-LrX$SL(4+TLn}fnL#sloLu*27L+e5n!<535
z!&Jgl!_>mm!!*J)K~tS!I$^qDdSUuu24RL_Mq$QbCSj&wW?|-G7GaiQR?t(2?4aik
zIe||eat(72^9b_{^9u70a|`nc^9}P0^A8IM3k(Yi3l0kj3kwSmiwFx1iwuhjiw=tk
ziw%nli-(_3loFO2mKK&CmJya2mKByAmJ^m6mKT;ERuBd{v#2<%B&;;7EUY}NBCIm3
zDy%xJCagBBE=&=Awvbx5dbmb7c&avBCtNpNFI+#|AlxwA2z=I%X}DRqdALQmWw=$i
zb+`@m>>-D6$8e``=WrMBDMaq!9^szhUg6&0^N9Sy{lf#o1H*&DgTq6@L&L+u!^0!O
zBg3P@qr+puW5eUZ<HHle6T_3jQ^Hfj)56okGr}{&v%<5(bCAw2DuSM1R2E(yUJ+gy
zZWoaZJ;|sxye?cZLMcKyLM1{KeCCiwgl2?Rgm#2Zgl>dhgnooUgkgkHgmHvVgh_;H
zgjs}nghhm9gjIxfgiVBPgnfiVgkywLgmZ*TglmLbgnNWXglB|Tgm;8*gdh0CqQHot
zh~S8jh|q|zi13Jrh{%Yji0Fuzh}ej@i1>(vh{TAbh~$Wrh}4KQ@To?b5m^!05jhdL
z5qS~$5d{&25k(Qj5hW3&5oHnO5fu@Y5mgb@5j7FD5p@xYkxJk*ic}-jBGn@`K$GH;
zI+41Odf+pQ3?q#qjU!FKCl{GVT0~k#T18q%+C*wb+D6(%+DAG>Iz~E0I!C%hx<<N1
zx<`6MdPaIhdPn+1`bPRi`bP#t27=Ez3W*Gj42ukpjEIbkjEanojDenfln|L1nG~5E
znG%^AnHE_RnI4%DnHiZCnH`xEnH!lGnIBmYSr}OqSqwfGsXVeGvNEy?d^%EXWL>0U
zloI$fBh@IiDA0*UnxLutD4i(XD7`5CD1#`&D5EIjD3d7DD6^<E3-c(8D9b3TDC;Pj
zDBCEzDElafD90$LC};2)NN(U$kUXQjqP(MWqkN)#qx_=$qXMD=qk^J>qe7xWqr#%X
zqavarqoSgsqhg|BqvE3CqY|PLqmrVMqf(+$qtc?%qcWm0qq3s1qjIA1qVl5(q6(vm
zqKczRqDrI6qROKxqAH_6rz+J%)kf7tDMl+rD@UtDt46Cut4C`@Yl0RdMC(NBM(aiE
zM;k;NMjJ&NN1H^OMw>;OM_WW&Mq5Q&N83c(M%zW(M>|A2Mmt42N4rG3M!QA3M|(tj
zMtenrPE_)Z_KWt94u}qn4vG$r4v7wp4vP+tj);zoj*5<sj){(qj*E_uPKZv7PKr*B
zPKi#9PK!>D&WO&8&Wg^C&WX;A&WkRHE{raUE{@KRE{QIUE{iUYu86LTu8OXPp3$Tj
zqZFeYqY|SUqZXqcqY<MCT0jw_6QdiW7o#6z5Mvl)6k{A?0zPfYJjNo%GR7*#I>si(
zHpVW-KE@%&F~%vzImRW%HO4K*J;o!(GsY{%JH{u*H^wi<KPDh1FeWG_I3^?}G$t%2
zJSGBsVpDWXOiXM{TugjSLQEp~^rn=U)R;8r8BSR-*)cgWxiNV$`7s4Cg)v1j#o#lY
z%3{i6Dq<?(XFJu!D8?#*PiayGpVOofs|i~85vvoc8><(qA8Qb67;6-39BUG58fzA7
z9%~V68EX}59cvS78*3M9AL|h72tLutCDt|8E!I8OBi1w4E7m*KC)PLCFV;UcAT}^I
zC^k4YBsMfQEH*qgA~rHMDmFScCN?%UE*5t7Q*vxdY-(&;Y<g@)Y-Vg$Y<6r;Y;J5`
zY<_G(Y+-CsY;kN!Y-wy+Y<X-2_<X49*qYed*t%H7IHfq{IF&fnIJG$SIE^?>&|;N1
zojBb%y*T|igE+%Dqd4O@lQ`2jvpDlOi#W?T`#7sO>o}V@+c>*8hd9SLr#R<0mpIor
zw>bAWk2udbzc{Zr?>L`0-#GucfVjZ8pt#_;khsveu(<HJh`7kODDat4v2k&6@o@=p
ziE&AB$#E%hsc~s>>2VoxnMfx|<;NAp6~q<B6~~ptmBy9DmB&@YRmN4tRmauD)yCDu
z!On<MjaQ3TkJpIT1TD6S*NNAS*NfMWH;6ZiH;gxqH;FfmH;Xrqw}`ilw~Dupw~4on
zw*#Ld<rwc2?;H<0OUf<YJ>DbUGu|uSJKiVWH{LJaKRzHnFg_?gI6fpkG(IdoJU${m
zGCnFkIzA>oHa<T-E<Qd!AwDra34HQYYJ6IJdVEHFW_(tBc6?5JZhT&RL409+QG9Vc
z=sc>j`11IQ_{#XI`0Dr?@X1t)2}%jd2`UMy32F)I2^tBSpv6H6ItjW7dI|ao1__1<
zMhV6VCJCkqW(npA773OKRteS#HVL)~b_w<g4hfD4P6^HlE(xv)ZqSpbyb`<<d=h*U
z{1W^V0ullff)augLJ~s3XHi8YL?%QfL?^@~#3rO9#3jThBqSszBqby#q$Z>#q$gw~
zWF}-KWGCb#<R;`L<R=s)6ebiU6epA<lqQrVlqXaqR3=m<R43FV)F#v=C?+Z;DkrKW
zswS!>swZkBYJwIwCF&&VCh8^XgU_8ZN;FP1fu25Pk!YD{m1v!4lW3c0muR2pkm#7`
zl<1u30zQ+<J<%i4Gtn#2JJBc6H_<QAKQSONFfk}GBr!BGEHOASJTW3MGBGMKIx!|O
zHZd+SJ~1INF)=AIIWZ+MH8CwQJuxFOGchYMJ259QH!&|UKd~UOFtI4HII$$LG_fqP
zJh39NGO;SLI<YpfE>STFbS9NbQca?6l4_D#l6sOxl4g=tl6I0#l75mwl3|ijl3tQ=
zl1Y+jl39{@l0}kbl2wv*l1-9rl3kL0l0%Xs_#7+OB)24&B=;nbB+n$TB=01jB;O>z
zB>$uU@X1!eNg+w0NnuIhNfAkrNl{7BNij*WNpVT>NeM}bNl8h`NhwLGNoh&xNf}9*
zNm)tRNjXWmNqI^6Nd-xTNkvJ;NhL|8No7gpNfk+zNmWVJNi|8eNp(qz$x6w}$tuaJ
z$!f{!$r|AEuC$YNl68~ylJ%1fk`0rMl8uv1z$ajtCtD<2CR-(2C)*_3Cfg<3Cp#p=
zPQ-Fec1w0o_DJ>wpN!>`?3?VD?4KNv90)xlD>OMQIXpQcIWjpaIXXEeIW{>iIX*cd
zIWajYIXO86e12AXaz=7ya#nIS_#~~o<ox7<<ig~l<YMrdT4l-Q$rZ_!$yLeK;M2A0
zk`+^wQj}9br(vn3sHbRv&&1MB(Mi!w(F322Wtd`=Vw_@<Vwz%>VxD4=Vwqx<Vx3}>
zVw+-@VxQuW;+W!;;+*1=;+o=?;-2D>;+f)=;+^7?;+x`^;-3<b0y|MFG$kx0JS8F}
z5`MN;TnglLt)!IXl$4azl(dxel#G<jl&qBOl$?~@l)RMul!BDPlp^riTcs&wDdi~@
zDU~TzDb*=8DYYqeDT=8|smiG;sj8`Jsp_d3shX);soJSJsk*6psrsn~sfMXWsm7@$
zsivvcsb;C>sTQf0(9^W+QteY6QXNyBQk_#>Qe9KsQr%NMQaw|>QoU1sQhihXQv*`{
zQUg<iQiD@NQbSY2Qo~atQX^BNQlnF2Qe#u&z-MqJrY5B(r>3N)rlzH4q^754re>vP
zr{<*Qrsk#Qrxv6ZrWU0Zr<SCark16ar&gp^rdFlaq*kZarq-px&e&2-Q%h4%(}16}
zrJJUgrVl=C%P7q_%_Pk<%`DA4%_7Y*%__}0%_hw@%`VM8%^}S(%_+?}%>{fGmwTE=
znrE6<ns=H{ns1t4ntxhAT3}jGT5wuOT4-8WS~&QOt|;&+U9o9#Y4PB*x{}h8(^Aq>
z)6&w?(=yUBp(l6crsbvOrxm0XrWJwD@G66z;Z>DZomP`pn^u>mn68wroUW3tny!|v
zp01Iu30nM^u9L2tu9vQ#Zjf%6Zj^4EZjx@AZkBGIZjo-8Zk2AGZj)}CZkKMK?vU=7
z?v(DF?vn1B?w0PJ?vd`9?v?JH?vw7D?w9VL9*`cG9+V!O4m!^(EIm9uB0VxaDm^+q
zCOtMiE<HXyAw4lYDLpwoB|SAgEj=qeJv}2mGd(*!Cp|YkFFilKAiXfXD7_eb23UD|
zMS5j=X?j(9b$U&DZMsHAUAkh1QigJdN``8NT84UtW`<UVHuzjGy$s07UPc+l873K~
z8D<&g85S9q8CDtA88#WV8Fm@=84eka8BQ6_;B&v+GTbvfGCVW9GQ2Z<GJG@qGW;_F
zG6FM#GJ-QgGD0)Lz-NL*W<+H~XT)U0X2fO0XC!1KW+Y`KXQX7LW~61LXJlk#W@Ke#
zXXIq$BApyooKccdno*Wfo>2imL##HVE<-U>DN{L9B~vw1EmJ*HBU2N!R5ep4Q#VsD
zQ$N!n(=gL0(>T*4(=^j8(>&86(=yX4(>l{8(>BvC(>~K7(=pR2(>c>6(>2pA(>>E8
z(=*d6(<jq6(>v2I(?2sHGcYqKGdMFOGc+?SGdwdQGcq$OGdeRSGd43WGd?pRGchv>
zeyUhH_*}89%<RmZ%-qbp%zWqxW5t;znWdR!ndO-knU&!4#%eNaGwU)Hvy`%wvsAKF
zv(&QGvox|aLCb2hbh31_^s@A`46+QfjIxZgOtMU~%(Be0EV3-Ktg@`LY_e>#Kxc|M
zWI1LzWjSZLfKL~5&+-7DFy@`*ljWP`m*o#VX)HJ^1bo_9cveJKWL8vGbXH7OY*t)W
zd{#nMVpdXCa#l)KYF1iSdR9hOW>!{Kc2-VSZdP7aepW$NVOCLAaaKuIX;xWQc~(VM
zWmZ*IbyiJQZB|{DVzyGYa<)pgYPMRodbUQkCTMAJwobNgwqCY=wn4UGwo$fmwh8#G
zG4pJTY|Ct`Z0l^BY};(RZ2N47Y{zV;Z0Bs3Y}ahJZ1-%BY|rd~Y_DwZY@cl3?4WGF
zZ2#=Q?BMK>?9lA6?C|V}?8xk>?C9*6?6~aM?D*`2?8NM(?Bwi}?9}YE?DXu6?9A+}
z?Ck8^?7Zy!?40a^?85A#?BeW_?6U0A?DFi2?8@w_?CR_q@X2P1IZ8RoIVw4-Igr!H
zz)PHSbaHfa^m6ob3~~%}jB<=~Ou*-pndeyKSb|R}v&pf|vCFZ~amaDZamsPdamjJb
zam#Vf@yPK6pI_#a<Co)~<C_zZ6POc}6Py#06Pgp26P^>16PXj06P**26Ppv46Q7fi
zlbDl~lbn;1lbVy3lb(~2lbMs1lbw^3lbe&5lb=(NQ<zhfQ=C(hQ<_tjQw~1=tSYBE
zrzWR1r!Ge^S1DIHS0z^!dV-lIXmNF}POfe)=p-|PT*F+WT;p7mT+>{$T=QIuT+3Xm
zT<ct$T-#i`T>D&yT*q9eT<2VuT-RK;T=!g$T+dvuT<=_;T;E*3T>spF+`!zR+~C}h
z+|b;x-0<9p+{oOh-00kx+*t70XbHKAxk<Unxwy}l2d%-!gB?H@en4>0F%AZXR&Iv>
z|D_q~{%bP)|8L1q|KEe*|NjVv^Z(NrzMn5<`2W9|;lKSvhX4N;GW`F)k>P*+0R{#J
zH2mN&!+-e;3=9kx7!(*TGBA*c8yGGzFz8=rU|=8)7hHe9zzDi;`_FR*Mury*EH&>K
z7#I-v&;8#F3=F9F&wUO?1_lmB2L?_?+;@M2LY0frM1YTxr9psE;-na(B7+3uWCj^V
zCJ}i?4rV1rgC;db1_gD-0}5J<3=P_h3`{zV91OaQj64R6?2V?3S`Vxlc_kegpD?*G
zGB~(1uJZC@WR(tK3~7vH<P3>pY)VgMGz-gRoO`T{k%6I%v8Ae(F?n}8Ba1*MBP&BU
zBkP6<jFUsAGj>+aXKZm;#Hh=$oH0FQJ!4<fR>rd`dl;D+_Ay2sIm#G&;~XP<%VkDJ
zwd;&C1MV_PZhXQR()^0i&E-AgiOTPcjaB~`J2tW~Sut}lv9$0qt!NZt3SbanVsH>;
zlJJmZVo;Q3;!==fVz{cz#L}q7r01x^q~f5@G>5^MNsYmbDTmRTiG|UYNln0!NrB0k
zX~9%aCT9m<rUvE!CRLG8rWc|yOdlE&nGWh^Fa=J`V+xWeW>ONbWV*~y$HXbq%*1uG
zi)n%NL?+dO=}asVvzQpT<}hg)EM#JFTEf)fxPnPSX$_N5&qk&#symnz8+J44q#R^A
z$Z&*7f#E0<3&Sxc4we&4O|55{j2JF3%~)`iiNWC-)0M1yOacuLn6#9iF(plS&2%X3
z6H`;)4<?6{KTHe^f0!7jFfcn@U}07+=3!P~;ALju;b%^<5M^#slVWD}RbUQgP+?|h
zP-S*IsLec&!GKvp!I+t)!Iar6%7(em)0vrt$(7lm!JS#*sV_4-Qy?>gKoIlFUD3?Z
zt5TQ+9MYKm7v(XlF%&WzNR}}xJgZ?oVBO5z<<QQou&<AqanoexPnxrt4>8PRZWCF|
ztfaGo+4kBdW{C&enG+0lGqW)4VP5j`2=nf^^UPcVmzXzvyUpAr{D7H3@ey;w#AnP3
z2``y1DZOV-eE5x7!uSs}!-@aQ2NjrESen>a7&dXSC^qo2OkxydVVEew(!5=kB~U?;
z#hpowg-t+{MI=#=B~-<Pg^kIag@eI@B|*Z5MMlAaMXJ%2C9}bc#e>0zh38c;3)hMW
zmK3Qt7KVsKmL(0TEE67Nv2=>$vq-6yvamd;WSMcGj%6A{6N_L$I}49P7t0LQ2`r2Z
z6InJ0PGeDYn8~t2VJ=I9&q5Xkjzuh<msYa03an+(>)px{(72O@L1Z_JqRW1k1cgH^
z%#24_8njNbC@Gv_5nw#W!X$B##l_(Y3&X+dEDRrRvjn+3V2NgU%EGYu6-%4Qdlu#e
zpIHvD|6pNk_{Acm@Rx-_;2%rF0Y+AjD0bFV25wdc5EkQO?NJtCHMEgtZD^HeWm%xa
z>dT_eYQmz;%D|<|+M-~<%HUwgD#l>K>ZD-K%EDm5dV|B3RcMhDs}HL?t5TCUtGG%a
zE90>+RxZ{kR-3Lw)<%vLR#E0m)(($cRz~ImRzap>RtDx$)<%U2R+GkBRz}ALRuzY4
zRtBzCR_DkbR)*S1tc(nkSs6X1u`)1BV>J<-!^-twA*(~gQdYBo)vO8}Ygri>*0LUP
z+{DUYw3SsZaxZJ(io>iM6;7}Ua-LzG*>I87B=rU>!=l@)4hHvFr_6Z5%FOtjbprPr
zR(Xd{tZd(Zv-*fIur;VKv(0GbWD`)}X47EcWor}`V!Nau&ep^r$;Na*hRwxQkxeU6
zoy~+%o2}WyfKBAQ1)D*Z9h(Y+1DlGWD_e_*C)@p?U^W(>Ft*1`F>Fap32Y1wiENAl
z$!sh$GuWgx^4NMdma-|TR<SV%*Rru6Xkt_N(9X7OQ$HI6LqFRrhRJLi0@K)fx#qAj
zD9vMw5m?L?F0zVEV8L284wVgT3=cN5F*0mnb70)YcH+n$HUWoyYzZs}*%(+3v56QQ
zW0TN1&F0B?o{d565?g}MHMTgPdu%eCkJ%Cop0gQke8)D0<rABs+Yh#Y2Y=ZZ6#lU(
zIWn<Z39z#(ig2^*Fbl9VunDn?I*PNKw#l(8E>L1;=ulyo+oQ|QtzgJ5p<&9tpuvKj
zd9^*em!Jzf#{&;`fjB?*#SB6025RB#3p--ih1!$YBTi+qyEx^tGno{!cQBQ(i#AlS
zH*!?7GpN+EE3q`Nt0=axdpdNm%QW<`vp7#+4{V&u&cHC0-Sp5Lc0uKZ>}d(h+2i6i
zvUf9WV^0j(!`>u)h@DyHIQxp*7uXpsuCTMtyUi}BaF1QB<1st$#aHYC9dFqgB0sV-
z@O)-p;P8!|L+B?vE5mPg4u`+&3j`TC3=~*690J%m0ywxhgbwg=cyWtxFffR4s9Q*L
z=rSvEv<RtkI5DVm9A(nsU|`VU5Ljfu(Xi2!gS*3u!$8E2V+p4-2g3<B4s|&{ju6Hm
z4hPXN4lTDB4i=6$4uy$H9NtEm916Di9LW}C91d)i9H$xTI2ah}IJ7vMIaHk5IT|=R
zIVyxFaIp7G<6u;n!QsL<n<HuEB8~>pWgH5OD>x1@tmaTTu%1K9VKWDJ!*&iOmE9bI
zjQcpIo;b>p;C6~5o#O(>1eVJjTn^VbPI2AgV0!V8L!sjdhwy_}91g<oI0_BEa7+;R
z&cSZ*hvQ5W6KAsrJEy=*9?pag0Zs=MVNMrCan42$X->ric}^7uMb3r}6;9q_9Ztq%
zLrw`HQ%(mKbIwx^Hk?gO4xA=QZk()5UYrL4{W&vwLOB`ML~@Eq#c?*QNa76OPUn2U
zl+C$eVj(93Lm{UqLkXwLf(p)Xk$TR?s8&u9hIY;gM|wE9So%2+9Gt?*G-(DW1H%l?
zh6A%X7d6c1WE5D)*}|}x^BUtyP6m<HoD&vp;1oEzmD6FxPEOUPeVl;;hd2cpj&L$K
z9OZ0bIL_%Jb%xWR`x588f?J$CjCVOXG#+p=C_LokV0z5inDCsFtK&6i_tP(&3=Cg5
z88W_eGHCtc6fphI>A=g(<*<x{%Tt1vi=ly!t1nHAi%n39iy=XVtHV->E4D?G>)}BI
zu0#P7t_7?XTnsK&Tnx-MT#81HTn`o8xEdJTxi}lVxF!hsaY^`xav3B<av21~awRw<
za3wJ$bA8~<<PzY>=9<iq&&9w}z*Qw!&LzN5!NtH*$@ODKBNu~16Bpx(HZEqyPOe8h
z{amdfQ@I!!r*knd&EQ%nFo%nUXFeBe!y+!;mgQW+5^K0T#5Qs<Fl^*vaNNw*$h@7a
zW62&afsXxL0?dcF^bVZh$_zQr#d-27SJTYfTmnh=xi~l;axo-6;SzFq&ebIJnk%94
zJ(mK*2QCSpuUuO+esl3SGjLB4WaU=V;pXO0;N^CGD8ha4mJD~3kOFtMgBthBi+bFt
zI;PwUHd%8g%yQ)RQF7xx#pKPsVO=oyWR?hSCZ1^Sfd8r7%uE^FH#PFP+Z2kqk7QPH
zvoX|gKW=K~W}n{8?R|bKw_4Y1ZU*6b+?;2ZatrjX;ue^*p4)+81NRYz&D@jQc5ypA
z+RxqTc!az4z)5bVhSS_kb(gr67_M;Z3f<xsVYtIB&~l$U_`);ph6yjZCtvu$&BXMH
zd+yZV+&NV&JQ+%yJUZe6Jl1>?JPJ+HJO&RGc!U^~c$5s(cocSM^ZZpc<zY}T<57yT
z;Spf6<8c&p;&B#o=W%rL=Gh_^#KZD1oTnfumM7&&3eS-XSv*rk3V38y%6J3~s(1=o
z>Umm@wD2f7wDWK<b@Hek>gNd*nZhH?Ig=+LX&w)g!U7(?grz(S8CLMj2wca*60ng+
z+I0sHgUc=+hL$}%0uK-J2pJyZ;a_o<ry=+fPfo`To?w={JZE~I@Hh%Q=V83^hG(JD
zM;@aU-+2mp{_+S(GVwNWvGTG+aq%)p@bFeiitsXZOY#bF%JNQWRpt#y(co3p(c@(j
zH013OGv`(Eu;y)A;lOLi?#8=8(3>}5Qy}j`l`vif$4K5(o_Jnihh$z(fizwXscc?{
zpnP5?jzV4r=~7;yj4Iv+hH74chFac^cdfj_3%Yol9r}0`82WhwmrdjCVVKD);53KV
z*<&HE;)JEVsWxkQRaiIjUf|o#%fPym*ChNPZ``fZybN4tc@qUM@kX)T;B{cR#j98M
zgtsf{6)&sNd)@;LpLhivzVJFSeB(Vh=P&Ps#msy=)VTN@xOn*#82I=)nuYoN5+wON
zRAl*>3KaR871j8<%yjt{uo&<$_L}nLS=#X(N^s^oz~aVtg2{`orXYx~fhmM9MJI|c
zi7lRwkui~Pu|Yat<HlS*kA?!i4GtxItc?|XYA5RWI2;@K4ym;9DW&%CF)$E;e@x_?
z(J+;d$6^*=mBIo(rUy&-7+0*|J1nr4&rM|$pTLBze4Gb&@iBDl;nTQyh>zvTalVG9
zXZfNYT;U50xXHIM>>-~Z!(%=MhR1w?3eWkJ7+&%*Ilkdz2zbYLfa4<{1M_D-hK1kw
zwlMzYV@&wR=j+DG&%wdYe;|;Df1-c@zoLi;{{j&S{uTx){^rGs{0$6B{6!ub{EnWw
z{45Uo{30Ai{2FI0_!nf@@(W2g@~1EM;^%De<(E(k;%8$F<riUz;IB9l&+jCV#NVlq
z#xJlUi+{FT5q}VG1^;aKM*gW+I{6(Ky7(1Ydih0{PT@b0FoVCDcOE~(i$(lw1<Uz6
zP1f?yN!ZN)i(w}}1H(>!#)W(NLlqA3n^>RXKVWp8pW(no{>G-O{K5)1`59Pm^E(LN
z=XYv(%&)}sjGv+5IX?r_3;qR5-|@SNf92oE@{2#xkWoO1fmuMufnC6%oku_@MNpu1
zqPPHufTTb}i;O_Kj<P^cfQA5LfVRM%9%F%+1`7d)1}g#oPc8!D9bN(q>-+_hW`zlG
zEQ}IZst_-5;bXc$i%*UKLu<Z(qhhgu$AoeL!-N_EcJF3^CZ;w42h(l=cZPm}Gs@Eh
z<R{G&c)+qqfI)GIfRpG-fkTSx1a>uV6VPVZC9q87fWS(IBLWO2#|1W=I4dA|=&}IU
z!5ac>W%mU%6&?#PC_WW1YIrHY#_>krhxAv0mCk<zIt!Qtl@728GP!dLCQK6)l+h6v
z<Z6`>^x{(zl)bMj$dG6ts48MAsO4`fm^9TzP>{)8kcrDnkdeV#kYR3sAR}wAAVW%+
zAY)C8AfHE~U_(Q);9`b!L8k{ff(hb9f(IGP1l8SY1yh@v1zTh~1o=FA1vPD^2r?*5
z6EvJLM^KSrp5RA;C4vkLO9VeKt`t<zS}W+aXtUskhV6o84toScXB-w>kZ@dZWzspp
z6NXm=7cpEHd~oi*pl8Pu!J|#D1RD;$6FlMZS<r+1hv2RS{{<NY7=#KZun8sba0xM8
z;1gm{;1_BX5E80UloXP2k`v-kP!MtmRuwW@p)F)^!9a+Cfe4&zBDA2(QfQX8qfmsh
zyHJLQkI(@Qe<5C}P$2<^Fd+uE2%&_oSfK=^L?Nb$sX|K+<_K{y<qNfN6bUgfpkjrf
zG9iYBav>4LY9ZwV4ML7HT7{NKbqhUoog}o0X}Zt`f!RXh3JZjaIF<?pF{}_e&#+GD
zl=4;~<`=t#1S$>)v28jg#LRbEh==K%kZR6Vp_ZguLK-~xgl0E95fT!3F2s=dN~oFb
zy-;i87omfWKZRBoG6{cRVHfUh;1RY<6cJWn5EW*CVFfYaVg_m91V?#cXB|~xT?S2I
zNk={5BoAX@5kYfd22M+1hVAykGa8(QB?R1r88keEj|lh(3o`i&D@29}FXWCAR%eJ4
zj!j4v-XWMRykv8+utG<faNvPz;X=hm;ftZ2!fOvr6ux9OQ@EpXu5bt6BH>92%Y+5^
zRtaahY!J3`+$QW)xJTH3$5CM&h7-aw+|CIbe7h#xtaV5Dv)EH%U&A-T6$d{HXNLa~
zKKq1KgvppoWbt7kk%zlwL>ST)MOvCvMK*Toh`8)E5qV$fAhL3^r^xESKoQ2SP!U$e
zND-qC2_l==(nM}BWQjB|=ZY+MEfv|YtVSeyNs9>k+8z-V&xs;Y+%rT9Smua)vRfv?
zacQ;45r%al4f<O|#2)VvdC+h`gyFy;5xEs7MKnaui6~6EB*OLbrU)CuZ4n8EyCMwa
zV&?}U0)<aS7#_S3agur~60qcxhy(XG5&mcYMFJU^L>XW>fkm`LfK#-~Tu_vWK}hrp
zqqr!OgQTdy4LMOcCS_5lB^sgyhx9}_SPVoNSPVs3o|=m?G+Bx=u~>`hFxiVT=s1b;
zF}jIzF?fh_9q|=iz#Amm;Swf#Vr8r-BU8NSgJWr;ECHFKY1fNIH<i_hPR?!>6>jJh
zoy6KF+K@6yG$3fYXy%D|qPh-?MJKQ<6FtYaRy0RsvnT@t63*BrI<a@JsEXi0Q3i&C
zqOVwvi+V7e6m4NVBl>90711LcH$?5^9*Q1Ld?6}u`@JY5!v|3Y7+&#N)PdoPsQR)$
zq8v>BL?yyl#2REc#0-=8#AGCd#he|)#pWi+iDfV<iA{>p6bn+&6=PsP!&eN&N={jd
zc{$pNJ(X}3+bHBMrn4+a%)UBK%vCBy%uyplY=>ID7=vVy*aMGpv8>ugu@%kjVjtH{
z6cbFDCU!t*mRS4E#bQm4%f%WOt`S?%vr(*L`3^DGjy+;d;fKY}u%8lpq;Ou$>ezL$
z$e$0zIQ*ZBE#-J4#=w9bJ21QzYhn5z#=`MQtf}ya7(>HPF<BD^@ii>0;t~xU;yQeM
z;s+x{#3NFq#NRL~h%<$#h$~If6z^cu75{L=M0}x_mAIsXop_6jlX$w3mpB6h7A)f{
zzV|?=xPxb;xWL6YaZ83IaR<&+afOC-@d*Vv;_8h>;yg`d;@A5c#9ew?#iwoS6aU39
zMf^qT9C3!n3&pinmWwkqtPsEMuwGn`0dj6lGx$F2YDVPyu)#N5OQGKMeBu!7rsvmT
zpj)IB7#PZw8*2sh6&V=H(bO*34OgoLQVY6q8gzs7`uPkPH%NDEfT<l`H%NO-1|4d{
zB9PYU`U!HF4fY$Pc?}P|=7bz+!_@ih<Y6r52{F`IHq`!CDHZB=<vGr<l!1ZawIcL9
zoQB%}b*0>3aXSSDhS!`RtG0#y?-T&vt^Jw>azM@mP+Zpv)R)UQ*9xeVNH*6B)RhQ#
zyYh5}3Uok~T7b^eX{;3hnP1A=?aFhEK?P!nTw|>O$n;V{uxK4blmnz5Vm#vf9R>qN
z115vt1}B-0Gp%4?HefXnRfzj9rl6)Ep&+RsqadpwVjyb3VZdp?Wx#E~W58>`XTWbD
zW*}}LU?6C)k>NVScLp;hbtMfYK_z}AEhSAQ4kdFXDW#=Ks!9q<Ldr9hw3YOf5|w<E
zJd|veWR((>@|5zGQj}7a<djU6Oq86|9Mm>27%3PlFe|eBU&8R<|HJ<V3d<S96xq~R
z)lRFPS3ReCT=kghLe&MTn^iZdS}ROaoS-;Sak8SY0qTvvn7j^^PL(c|Zj~ODUX?zT
zew7I-6ICXuOjenqGF4@o%5;?(Dl=7PsmxX>Q7Kg^Qz=)eP^na@QmIy{QK?m_Q>j;J
zP-#?YQfXFcQE63aQ)yR8P)SrtQb|@xQAt%vQ%P6JP{~vQ*{WcKd2$L!JV7y0F-b95
zF-0*|F-<XDF+(v^F-tL95hTa>pXopI|EK?1|FivP|IhKC^FP;r?*BahdH?hM=l?J8
zU+}-sf8qZk|3&|c{TKf)@n7=4)PL#!GXG`&%l()Cukc^-ztVr@|0@4g|Ev91|F7|1
z^S{=A?f*Leb^q)A*Z*(u-|)ZDf8+lq|4sj!{Wt$_@!#^l)qm^%Hvet^+x@ry@9^L8
zztex`|1SSs|GWKn|L^hN^S{@B@BcpkegFIY_x~U8Kk$Fh|KR^2|3m+W{SW^i@jvo^
z)c@%JG5=%#KmJe2`8x4LoUnuMe4ToO27^X}CWB^!7K2uUHiLG94uejEE`x4^9)n(k
zK7)RP2?i4lCK*h|kvbL{EHYSZu*6`g!7_v81}h9!8mux{ZLr2*t-(5j^#&UZHX3X)
z*le)HV5`A4gY5=840amqGT3df$6&9)K7;)R2Mi7x95Og;aKzxK!7+p51}6+o8k{mX
zZE(imtid^h^9C0TE*e}ixNLC6;HtqjgX;!23~n0SGPrGU$KbBPJ%jrO4-6g}JTiD}
z@WkM$!83#B1}_X=8oV-iZScn6t-(8k_XZyfJ{o*7_-ydS;H$wm3?EEnp2R$vc?$DX
z=4s5+nP)K1WS+%5n|TiNT;_Sq^O+YgFJxZKyo7lv^D^e;%qy5zV%(v=k$DsIX67x-
zTbZ{pZ)e`Yypwqs^KRxn%zK&lG4E$Sz<iMTF!K@Sqs+&ck29ZOK8c|ply1qz0xW_o
zLM*~8A}pdTj4Wa-;w%y@k}Ogz(kwD8vMh2e@+=B0iY!Vj$}B1@sw`?O>MR;8nk-r@
z+AKOOx-5Du`UGxlH()VjF=8=hF<~)f31l&2F=w%0v1GAgv1YMhv1PGiv1f5$ab$5~
zab|I0ab<C1acA*h@nrF0@n-R1@n!L2@yBC6BjZDcbBqrdgc)BlNHe}*&}MwgaDnj+
zgD>M}hD(f}7_u3EF<fE%$#9MF2IDQpJB)uAUNK+`Csso?Lv}+BLrz03LvBMJLtaBZ
zLw-X6LqS6!Lt#S^Ls3I9Lvce1LrFs^Luo@9Ls>&PLwQ35L(DU!u$hiej6s!Al}VLZ
zl|_|Rl}(jhl|z+Nl}nXdl}D9Vl~0vlRX|lxRY+A>RYX-(RZLY}RYFx#RZ3M_RYp}-
zRZdl2RY6rzRY_G@RYg@*RZUf0RYO%1bV!=2j;gMzo~pj8fvTaZk*cw(iK?lpnX0*}
zg{q~hm8!L>jjFAxovOX6gQ}ydld7|-i>j-to2t92hpMNlm#VjF=QpoV`)P;6HImPT
zaE2ZTnONpiX4CqvysoLY!mwz@wBG3&Ii1nJ{5g}Sr|pRO)!>n_u7N4-T-ndSu+%k$
zAM0B>HU*?co=V)DzqZLIIVkCEuzCnvb#~yA(l4=Bl1}%QP47yQY={lFn4VN`QB+%Y
zKE1BYEv3L;wf9bvc-6$zx5YXs#Ys9%jWg=gJ&N*@&Lo-mKQ8eKo)>hgZrKFAxVDTr
znGKB>>n>#+t>|eBoZ1_p(sQrrUIS~eP-kjTOY6^Rcl{M33TMuZ-k7vBX-isVPwyPI
zqWtuU6`K+QgT;e8`p-1T_AZ>l8*rkCJ@R#eWZ~+LkjVE<I_VnKnz7&ObW6YHr1kyi
zx0zr)|4O#xM3L&6_~jMXT5MadX5Y-dmdzN~9{02K?bO&*uK1(z^ZO4*9BQne5It?}
z^qu`;^*X(dN&Ee81jhxh=wI2ty5DyKdq!6LjK++PYje62wS%<Ea^ibZFXg|;+ZXMT
zQX04+@JPC(-^t3FnVSoamX^isE`HFwHswXq)+vv2qJj?x@uwV`GNoGIUpmgLNvyG}
zQ6=wGPVubJ<e1=JA*me?!g>9e<5IKjYhFwcOL&$dQ+%)^Al)}fsW+!wv+wxC%=kOa
zimd`O4+T$c>&||g@FJnU;B1p&(`CQqIp<r?rrfOgoB1=%vw3Q8SoL!Mo<Q$hr<mNn
zOUWmLb(+nZpQdlAuuZuiJtgK{?DOtpNng^ddKgl6C407a&lK-bsQ)x&xu3waB{O)^
z#EPxLWn(Pj>ZjHRENEy7j!ShdH4Ie@XzguDnm0u@-6$+C|52=I$fSa_{`{mRDT|Y<
z<2&-dOnBV5p<f~<Bkf~+XO73T#@?Kci76i{&xJ>32_$)hMEG%6y-aAyztvrzBsZaZ
z){{!+kT0c-$&$edIrsae;|pe4H`LGX@VAOd={;J%G<9!*Yv889>^An;1<`wxawe9P
z^7JWGF(y`4ANTuF*IF*<_qI_s=vQE2){5ZvK9;HHrya~onHH7lP_ZK5dbvQ#vrd-C
z$H{kN>#J-t75pumW`r8~tt*{gl@!+%_kOB$kYz|$L0PiO)TVINH2ci<iR_`DbJy1?
zbr>gosM}hq(R{Gt%(Qv^9*N&e&UU9{TLlI5DrRRj6t;W}V+%g#C+&AJaC%MmME07)
z{`GwitLIdur-;O^31DkvEZbT0Cig*oV0uLKkLc4C>r#YMRwZjEOHS2I+1DRZtyvbF
zq#o%OQklItz$8g6t}XkqpLuV0M{B&^1ce0KhNDTAexboXChSN)*6=J<FUQUQUBbiM
zd)=1tr`v+#6_cX^6PuGW7=n_MJ^F+KX2+CQ{)sjSvaZ^b5Io^}+4lJ9@hxRJefb5|
zWuDcm%0CBAo}d!p=l><|RliTFboG&<CAs(OA4Y9Wni^*i-qfN~EgL5vFEl}<e!+~U
z<l}iWDs~oB1V&F^9d26c>~B#zJ?>dTLgazm{n?!re}b=0I~~Xv)S1i`GI<Jf&zWA!
zqWKkN?Qi>edmaQc`n@lE7u-3eYzE(a-Kn#p7j-N7$@r}aOl~=pxFU!<W4eEK!tOx1
z+?c>=Nz+pkr@8frPq<O~cS3UcrR=VvH$}g@O(QDHeR^Zk9j4A|SQe+4H!1Rc)!TCG
zsavzxrt;OZMFa-QPx~3YGD0Jys4p$Ge#Voqxl{g?IZkL#J{BSsX%#s;d{duk`mbKo
zCdZ%;38E4I+Fr!C&O72icgD_c)u^(Bmf)Hs{|QVJ>t|*r@HE&58aIf<l+HBF?eR0{
zy%-!-?_Vw8@9)Pj?P|`2;+L&#aapCm>$$T2l~0=DSobjSS;5)hEB(yPn!W3ba%bMo
z@e1GEv@>;8gME_Gv=x#6{q}e7s<TV|)EqZGG4$Syr43raf4dbzb~Vh8+mU10yQV2>
zqGpJ64qMRny7+LZ!n&N!8t=%ze*fcD5?9q2_%X(;PG@TW5W_w7+>G_5e+!f*tPhl}
z-`njO`6MvfUoAvCvOIN3Luqtb(xIdY{jPEHIcnAX{x|%2)AMpy<@Q%@>=2LFE}fOs
z+W+4F&cx-Z`i+5&bK(LTOM3Hz+B&^^c_Ui`ZurSeGb^fWl<z$gy|~+DT6?5a{e+OR
zFut&--Il3MnKP$cE9=ZFijydHOTU=@ziMtnS+9KJvC5>><lc@zsh~wuEb3=BY^s|c
zqo0?MezUr}?8dDA#wqnzYvfV_rrK9|g**-M$!1L9NV1*xxnX8$QBdae=oXudCvA+=
zrc8S?Maz#R<Yt{^#{FK=hA(Ne;&#>_3b${Vp7Au+I(2?fZo;hjv;Eif<pi#d7LI=z
z8<+DjNwK#uaOISLLGyF&H(f7U6yB1q+bbVAr~i2K)R5k41OL4_DbW`rh37vBKGn8j
zmU+*@2G`WO8Nb4gPtyy!QxXvLFq$cusWZ&)LXuX(uZ-fr8PN*@4|OiAZkriU|31N|
zK)=^Bus%+DLP5!qPTg?VilF%U^M6gv=(m~uu)CtnDdSH1t6tMy+n}!gTX|<QSf{?7
z@HcEu`p=Hz{U<_p%*u=|&sED=>bE(%eOB_s6^ZL7yqvBbvNiWo^xwd)(9rr1^?Oo$
zlRu{JOYBYHDh$u@%+Zg`P1kC=8qpV))$=<0?u6P%@rLignYpDQb3@CU&o^6S?5pev
z3H9d)xm4EK!!&Jk&W_ydUV+Y(c~-slVHf9JE$xVZP?VAICuD`6R#sw1P(nffk&qh&
zm2LL(v~v5SCE^#=b%w6@Hz~FWnH4M<z!y>z;^+4_KC0wfM0U%=hLZLRMW<@Q^3>z~
z+H^vfBu(;Lm1CZ?vFUn<U$9;A#XRd$p&+r~yWJNuyW$xV-sSp-D`l@Q4$ipIFI=CL
zyf{H6^i^q6k7(iI+-1?#aY4;KiAU!Bst9jauW2v)5cn;@r_edgC(bv4ucx3uHMz5Y
zZ+ue1m9~3f2eYRnq$hd?KS)SRv+w;|DdqpNz&&Sk_owa~bt%pKX;D#5vjcO#=Q{RS
z=Suo#7i@19OS+iAJ6*lEqVjj3UHGqXtMrOe+p71KQ>%L#QfL0`Kajt)TXEi-$d`4T
z^_(G%={GVa_WRZxn|3N#HDO<AQBHC2$*ARZD#;H5xf(yl-fwA0Y6wh@=JU_3bPC#$
z;Fo(O`cU-3?hW0KQqRP@PMaM0ylzz;XV~_1%gAE?ZP5#YqMEyA*!3Ef?wjHsU{m$o
zZ(DlZtb<WC*%!;A!o^~&s=rM2E364z*-+3_5y?`o-h3eAP5Q=)@`}eviOCJsZ~e1^
z&IblG-_9(V^tIQp_h6^q)V0;${89r9ngWCJXA0!C<}J_t756pZP9$55TW)+#TWNPo
zMn+iVrf!Ac!im1qJX?h_87tKazcnoJJ2k;Qw`CT4)SfWbln+y0moN2~YJ6C9sk3UP
zN&UUL`k=_v(uwu`&Hb-~r&Ya8UYgui_M<Yq!)%&X((0h5rjU$+^z!8F^0!rtxtHr6
zcV37TN;=uPw8^JbKH#+9($d%6UNQe-y{ng`UYvN!Pc=8bQ@vJg>QO(9p4<J!)4kIg
zD=+rHDX7S`joB3B)|?c`*Bo75mbPQg8oyHs`)W4VoUfbem)4!1)-fY;dUHfhYRuG@
z_>-k!)9+W^t2z+4zF<bxtK_n(1$EPk-%fY+t0;)|3!1nxI572j>Yql|roIrvm|3L@
zrr$`qS+uv*HKuabsb+_mhLD%#c7E$}q8ctG<t4v}Ef2igE7zw#^`rmO;O7Zz3etlD
zlAY(tN2vvvmzM`Ws%uTrPVG#Zkt`BmT6D5=bKrsQyLIm2XPTE!nH?w{@;l~~|KqBt
z+=mnTXElUQ3rP%KAHop-GPykSePBi+SCCf3jUc~p-U{yW?Q!La4{D;5rY9}(n_9r!
z@IC2CLBjO%@Y_xA)4yh1t(ZRJV&&(E%^~lDP4c`0t%DXt|Lb1g;2gRvyf`5+TsNeu
zDj*>wdU^7Kq{qR@Nynqtr@sxEU-hi1eB$J|Cmj}%>%#exU-Z6j2oEo>Ug`fjes8p0
zwqkHV^`RoSjQ{0k<=<1c2KM`1Dcc{jw5qhlFVb;#LqNw&^~C19lyJ5*x8x6DZ;~>T
zF2{*XYYsn|)E=tX?$x-sKP_})b8326@7<QHDE^FRN$;u!rxgUw$v5cvn|z}4QX*UZ
zp@OG*tR+)2{}i2yJ2yc*Ju5dZd2>)w5o1G+|I^5<i8l-8=3WX4@cTY3cWPbhsS5pC
z#lT77hf=y5s%u{5e9VZ;+#Wb1ctu8I(YbjatA7;jt`yE^EAdM|GjYiro664SkY@f6
z@eEtP&ftwfb`@>Gnn4`_-ToK+AC;c2npCqiXWO*dLCqyELtgraG;C_V*IzL8WSmUG
z{9K8+=v0fwe^a~@_7ohhTUT>3urXs}O@5P#Ut9nAiFIk~{8)Qdrg$~n3YcDcuJCE}
z-u|@wHovBn<f+%<W~Pb<9qKqyusDdX*tleR`u7U4=_Y==C)}HJI`?*<W3Oz;xui|S
zADh2TYngv|ikbhc`ZIy01*Oy0#<b0N7W~9-P9A5;mdxym{+W@b5<x0uj=7)Ha|372
z_imUOVpF}ps%=_J_@gBEX*HQFQA{b9tNHW2r!8wr3T~Y-A+EDvb8<?se_P|6$@6+D
zjHbWub?U937nk2s85-|4O)sfrmT1V`DU1D&rl!Uu#)#Gjw&~||$F~<h$@^dTEJivx
zEBaYpX>g(6g5=cFg-Ln+YW^4fmgQ`#+tn@Gva3D3-g<)a)Rol>XZ`4~ZIRAxn{}tI
zBXak=*~N?%O>H@|nr2CdiHDpHFYsG7FD&>(KWF2l@<}t_wLQ!eZvB&%l&GDr*)yq0
zyZKX@aL&#6z0KOitj$tWZ)e{wKQ<*ln5lVEplw`Fk43MC-|FI7>8%-M6FH}+6fVr+
zET0tRIQ4vXU%h(Th3K7;v!Y&1{XX@LA5Y87mNi-T%M7MU7ca|*kJc}rH8FAeotp3c
zGCivC#Wgo7k9MBPk!e2`?G$%1L!ta@-PAzez>`6mQLObz)2}z3Pi`r{(0ZxTDsN`o
z%t*o3+ycRz{Ym@F{8QH_{GG~|HoskY-rFg>A+;eoJ)oUCf^CXfa~fY%WTu47-kGGG
zzPfou#Ep5Ya}@ILMf*(S?ujqDkbXQVv1p~=vB<O8lOxupg~r_v3Qg2Ve^-`Po?hfu
z^*`xVNI=MfDT^n_L~X7U%W?KAixg<^hzt)lFWoooRG31tU}H_f&#BjPlR_G2wg$e8
z`rEKBQh2&nz|$O?nEOcy{`SGujcgNk<!QH`NGgfjSFtsvI{9n7L{$Am`FZv+{>e@a
zwb6N@UQ>Oiw&t!#c#wXt=x$(R^z)>9InhPAN$aNUtrKnx&Ycs;5?>OzDo7}yIC5HA
zK->IMt>kBk?`wW_KMPUMR-Lyc`)X@wNLj#=oUG6-y*fpraiR%kC1;Z+CHoZ3h<DDj
z%VkK7$iGo`q2f<jNU2KD?ciX)d2t6*wHmH9%uZ?x(Fj^s(A#mb_hC*&$gPH-;a@sJ
zdb6haPR#V5owGgkSeZe^ilm<fefhcZZ(43;)Kq-0UeU;%?msU*c|%2hxKM@V^va~w
zNgY9^CD*f4LhTwim98tZ48B+TJHRm}r~7!de}H?@^jSA%Fy%ig$*62kSz7)lY2pm+
z-h&|#4MBcc;Xj*rTZ-e}27W6!((NCU82%@xeTG|<NrlVo*Zos#!h!;meoZ;%*Vdfa
z^0IkT%aw4Gbms89w6t8qp1Wy+1@h@u*<u+|NxLJN{f-2(<zGtg&nXK$o#7sto}E_8
z7c0;hF#me0N2O!s#98INO)+tPjQ;u|fss5F8DSzhNBWuLYjYmwtnQwWT##U!TUwNs
z)Hmhm6zAZB{dLv%{nUEu{I1N~IA!w`-=LWM<O#01COv`?KCuefp4qF?qeDU(d+KLK
zn73NRFG_OHvYc9!+LDl(vAjIQZ-xK!*csE;q}-@~8*|>jw~9T8rCG#JKcTs5*_5sR
zoBW<tnv^^V+Szm|WpCx(=*FC&>DB#8Id%c{!K``bQcBVca*igH&-mWm7H3mZUUj-s
z!f)dQ<`SozTVdW4kLGmuS_L0#`;@l6&m*RAmO|dOV6&+1`HOpZ2XllkpW&Q7d*aEQ
zjKEW+pOe-USp>}uvZ|j_U{O{Q>@{zDW?sdCX*WBT)SDF^F6<1voc^TbNrXh|_OO-R
zWitzsuGalbcw6u$;-KFyzq9err~md_(#;&y6}h@DB<ZZ*(^S4Bi{_Ip$<4j(Qwq1`
z?To%uH$CuV@|E<?2FqsA4xzxR=%&bx{l$K<IjMoFo%#KG)4W>aN(82Un7S<YX_I06
zq!giCjh4K|!*k*yqI)_04hGBlC#MExTn<(D6G@phD?8~>RD4NM)5_d;8P5aynwcsb
z(k+8#=4`Cn9grFtR~TI#ly<84b(3d$VT?jhZDDrDtEr*Wj;18`Zf<M|4b5>+(yN~o
zq2lir>fh^=#^om!^SNVDhF>yo)$@Yhre8tdrVGZr2-!N}Y+X{MSMTvQo+jR=v|g7K
zmYBfA&Ro07eck32#--IE7XGXIKISS!9j%M2?8sRdT^1!(y05`6Q9SQMgnX%LX;G1T
z@aH<l^4n#ZL3bLI!#Uy%Bi|M6O|8$n-fa<6*yb4gx%^+!x6}iE_h&S;&5J(P{VDiS
zdA+}1Oxdi{k^J#im9Hbj{QjqR`@Kz?+$B3<e~^CKozR>xrU_U5di_sLESSlk!xZP7
zuq66e=hberRPUr|GdrUHM|ULag<cO<E2|CEX<d}QIio9kQqtu9E5Sld7jyed)BOB;
z3!>*2u5X=~b~CN0o}vBhJcapjG5YBr`UNxM(|MDwRkcQJiz`Sq%nwa458`bINh#>i
zEM<)o&iIlfGyP1kZ4qOSNls!pUzJ|Sn)0d{GEHB)Ln}nm4;HLXotk16CYx}u@<*_&
zUv+j{!>{Pap|``V{B8V;W`2&XOSfoXN@$wFIH5awPxseunUsj8dntcI&o`w`yzZ}1
zD?ed=&F6r?i1m5<qfd4>H&jfV(=xrfwyk?w|FoxdmuK}=G{%HiIZaqTExs}`IzE}Z
z`eMu447O0sdVvz9TE?jkNj?$R{F<XHBSRu`i{+BN`}q6LHC$<0lk_3@Lr&a8tw_d%
zf*jv)uN19b?Xs77(cukQA4+rcb$d8^(!$?oPwLoQu_*ax@Y;fuoQMdm6sCv=8M7M&
zLa)_G1nlZNlRLlnbwPjf?A$AP&+1rOoHLjw+{i7PwxT;cva;w&YhB}>(yp%c86iPR
zeS%XjB+r=P(pM82?EgQlKkRD4)LiEv&lt_f-?`Zl2Bk8kISC?7ZjFM;iRq8}t;#?5
zn)Du=A{N&gtP^s$z#->*Tui`PzqN5z$?i>369O{wCT=e03Ar;RCH`quS%zzJQ1$(~
z+ok0JQ<F?0`6v7cJY3mW^)GBvyvT&6+=LkUaDkAJK;OJaVJng+&!}${ZP)5#m>?ID
zA9JAbT2e%kVWa6hhiQ4UYG&zXE{(jLWEU!yd_3f4n@uir)U%Q~9a-68kv={8@pXAC
zi)&|C_<b+viJo3zn;exkt?YEd>}by@cE8ZZteo!Rg?^psf%OgXzfz^sZ^XAmGDe+^
zT^C;%{A~K&e%FjIVfvx>6RiAv^S{&`Z{lmY5-IPm<!=|WrcNtes<k-8zw~fJQ>g!J
zUw_>^;U3PIg2e1#`7+JCuD15n-&1$iS%(-`an-(?`Y`lh{ksy`WbyWexpS)olNP3?
z2R}@1&Uqah6S888k6&WWn{Mxz2dQ(KmS@<7n1r0pPRpL+=alRbEZ4;Azs^4{oGa<y
zw3M{WqW?h)gXSl^?-og$SvVoRzB8!eZ+StQb(lqn;?$}lhN}Dop1970xs9TccM@6(
z-xsXP3&?3GYROvLp&OUrw>fG~=;JBkxxZ^>PUBBHR@YZv*QOjSH+@=vd)mX81^#b~
zxc!y|^G6DYG$d<G^$5J_H)qb0x*Z`Zy&)auO`oRr<*LP>iLy(}oVKA@uXulORb%VS
zh4rhV%cliQ+h6yiY*BF8)R{9kR=adY<R$uDsZXtZ*8Mr*Y{+WA${F8d6SK|-2!<r~
zsJFycuuS&~dKa=djA3d=?$+pIxxs1tF|pB#8PggnLItZmQbRIl`?+WPwRcbV50+21
zN?A2wPU^u1fu5Ox8!{?_f3}}UJd*P}N2w<;W>xF@CZ4Iv*|YmMr2dXS9RJYYwL?BF
zwNbP9S3*gkU{H5>Qv9L`J{^-LR>b+It0!EJbP4<x_@jX%xH9L+w5~!y|9AfL>TT1H
zhH^|jP&uvRaozj~o+O6pQEd`o)iWl<@8~|#5<c-}@Y~e>xR}zEguL4Ns8@Aw>oWV7
zhc1p@lW;n<rI>R<a+zlNt-6xwvs=@mOR8Q?bLco7)L*zN{!Qwm?%&b*vmVBFW=H3&
z?Oxx_HQ{J~ckrGhwRyVp9744H_BKTp&1n;hjqF&Tdvw~xkXe4)x;YE?hHy^1U+^>c
zLYb<cNQF@Q%9w9)3|(_(@J;J0*q`GPxiZ<N+_ys{zqrXD;%Z?}uvEptX^f$1@dkxk
zqNRFzW;JK)Me5IcUYU`ela%kju(Ye5JJ)!cdd>&GOQqF;<{5VR4HF6)r$v^PxTmPc
zq)wPvrQCBXa!m+BQ+{(}CqsilreBy@gL%=piQ59>{Yqy{OP2Ec7W_HQyHO@`Q!azw
z&j{<_Ysnv{%=PE;Pwtp7!#py4!tcsgejgepmNw<giGC3o8_$~A*d`V5DK^sYarslf
zs-}ra!f6vHRL1Q0tBgO^XfdIsVRh*;zbhU5iAS@K#e4dlDqEEIxO-hUSI@<6ruaYg
zXX?+@nKoxPKM32N{du~{wBM2PA>XFF&OI8PH`6jkG=9Rgg5Zx$hFK+11@orFY1Hp*
zR%uafNpE&<Ki8ksd!no`e%g$j3Wc=$Ay1Q%{SP;uDBTfvb{bdT&$j-M&pAE07CH3^
z$AdIVYvUyR7bHB7SBWt!T{q#tl$}L8b1d>aCvv8r4*nb*=zntJ$L<rsHF1afpXB!W
z9V%<fjBArhWNV7_zvpi^p=J(eqHLZ>UhA|DKf|aO)A;=AV|G@yN5AdfTi;oHKfJr?
z-~`4H_X)d0U&Snp=SVcl{#dlBp|h(b_j2^rj+PnOJ-M@t=W*pN33Luz9NyS5Kln@X
z)c&_&5g}~h_QezOB<k<<Uu?2Z)JRC0_91OqU03hn-lbDE$1JJgNMDw~I!&TsqTllg
z48a-G90M=(m$b%C3{CqwJv3T2*rLKI-8SQ7NL|5(=-U3?K#lN?AwsE5X>q;Iz5I<i
zEx8l!*ZdFs-MTpaW$MEGC2fs;Sz!tjn##%wo)#+izD$w~`kQ0Z%a<@OqA&4ZT0*a1
z(&kX*Jl*v4{)bb3Ow}l7%~+Ay9pdY^qu@k$L`rvRYjjJMRltkr-Q^FnE4yaY?8`Y{
zwlZ~kziw=3j71wqMnbSe(#@*qyuWqwSr4iT;*Ika;(L-;<c6hl_zA?R^<MWo&|p$F
zXWH!~-L$%-JvpVl>4ll~Zh`F$Z-VnC%t-na@}X^JKWl^dRPolE{gJt6i|41xm$Q_r
zSNv|2>+P7b%ztY7&eBue?9=s=-KUyP+tH$&>{#9y|DmYUPb8rv^?g!uwtcF4-0{+j
z6ApIIZJL{|pK2H)(f+i2Q3F$>V~)4q@j9P|FJ-)$)3Vc(Yyw*R9m3g@ld|{qz6ySk
zx})xTyj1e`<j;*?8uRL9;%>&61y!ZJtdy$K=$%<`rSx9j?wm<gx_(E?9>mX|Qr>Z*
z?ri1$hO-kt`HB0>H)Vv}i#5tU)4jB&q<=<(RNSPHjb$^VZPJ#^dQhyDal6ehU90#<
z_w8<h2|ufD7vvQlNm^NM7-sDk-tsYhWzc~(z1|;F0;~P~U*yDAR?nK8q*e4cN!U-U
zBBy^tN>uN$>dcImxT76yk@HgCMQkhL%T%5Ew?CpcA)KL}t>;*vXY$RY;9#E&r4q(w
zpNTG^4&^lkUb&TlD?(g)|3{wAJCYj{tzCP?ueRoLUO@D#M&7*eXy(~hGqn1qNB^m_
zPS{$vb3#F{f8^QZ`<0t}gM!behE*Qzww`vRZugX?I+L)@i45sk^;|Kf6ExDE#RmA_
zOOFbO@ec@J9*39<?)BsGa|jgh`yb~TEb2GIPtMP1c20C=n1<i3N_#)iV0S;=Nb91!
zV1b<bVNV*S&%B&nS1vx^%x}J*!2B4$Ouxx~9Zk{EIidVvNBnw&=LRnhUK+eEICXk#
zuT=2YV6|YqV7uU$-n8K4V5T6BAif~oAY<@Zgg!xWL5V>zLF-#;gPMXGgC+z`4r&Sv
zso(8)*zcs@A-@-X5B*;I-Sd<7|LmvapW^@3Pt{-DpVMF4Kh8hh-y${2Kh{6qKiuEQ
z-`2m(zr=r{f2V)5f4_g7f3^QA{~G@_{!{#)`M>ag<$u)wmj7e_JN_5_@B9Do*9`Cp
z`0TF}z#pI&pd0YdUnYPjKs7)kpf12UAT+=uz%L*tpgLe_!192V0lNaO1+WFa4R{mq
zEZ|)Ldmwk<T|e8L2>(?7bN&nFyXBPB<OTkXJvnd2%*H^G$e%&H!R%cE!LI`)BSQlh
z_=N>-_RH&7(y`S~r14TmL#0VHbH|SQ)qxuW_Xh3>JRUeLa8cmWzy;mQx|esa>fX}5
zwR?N_q3*-or@PO0pX<KVeYyKe_qFaD-8Z}Mbl>lO(EX(QMfc0@cikVlKX-rY{@MMf
z`+qk>4^t0I4|@+!4}Xtfk5G?Dk7$ork7SQ@k3^4bk9?0pk7AE%k9v<*k9Ln<kA9C)
zk8zJ_k6BM<a8<DEG^J^Z(+sC+O|zY5GtFt5=d_S%@zc_$<xDG@Rx+()TJN;!(>6?-
zK4JERxf5niSTkYage?;`PuMnL*MuDtHcU7_;pl{Y6D~|RGU51y%M+eWcr@Y8gzFP-
zgYWMBH-TlM(nPt5$`cJI>QA(s=seMFB5#mW<f5Q8L2HBd1^o}X5Ogi*L(u);cZFxm
zzr=kF{1d1@ds{GLd{pWCSfB8f;S0m-BKAZajkp-08Lktq6>c1E84fx(FDBeN+$lUW
zyfr*Kye+&YygEE1JU6^7yf}Pq_>%CR@J-?8!<UC|37;IkApC0hjqqFHH^VQ5?+E`A
z{yzLi_>=Iv;oK3t5r4zqhBHLSMMy@tL?}e0M&v{^Ms!BZifD*fF;jB>|HR6s+NS!Z
z{-&;`6-_NoeN7XarZ>%OTHUmxX<yTZrV~x4njSaJXxiSiuIY5snWlqHE1R}7Eo@rV
zG{5Oc)48T4O%Izmo4+?bY2t5YZ@$y?rRh@BjV7Mv-%XdB1e>Lr*_uU~MVlWqU2T$S
z4s4EYj%ns-p44p9Y|?DlJi9rrS-;u8*}d7hIlkGUS-d%+S-07$*|<5aIkh>XS-Ls1
zIj1?RIk!2lc|&tW^XBF)%?p}WHBWAy)7;uz)4Z*DWpi!wj^^s-8O`&WS2XWx-qU=r
znX%<*^NnWq2#FT%mb=Y=o3Ay?v{<wVwy?EaX};gg-@@GTqxom^tLCH42b$GdJ~TgU
zj%f*OiE4>#DQ;<R>1e5H>1?TJv1xH@$!sZW>1pX}F>J|gIoNWx<wDD|mc1>PTTZp?
zZ`sxIpk-mp&Xz4L(_5alJZ|A><t?>n{m^3BD&K0=8rEvv`oHB*OJu7@Yes8IYg}tp
z>!Nb!)}q$x)+MbgTH9OuTPs`Fwa#g6ZQa?ry>&zD<<^6(cUu3qs<*MWX|{>A*|hzO
z<A}G3bc{4_2#t)2jELk9R*F%L(TOpM@kz=`nxC{g=~U9Kr0YrVl9ZCaC0QnWCp#yv
zP5zc#m|T_Im%Jr8H+fBRS8`_Zy5v2{pOSwhKS=(cd?fi^^10-olw-;Jl3i0AQ@B&4
zQxsBoQq)ouQ{qxuQgTzKrBtPCPuY<&Gi6uGfs_j=*HfOPJWAnARZZ1P<&M7;FIg%W
zA0PZN_;2vb;1|KagM~uGLfAsQp=WxAg*b;OhJ=SihA4*^g*1gs2`LXL3`q%@6*4=d
zC8R7QEo5%Ug^;x&heEc5TnbqpvMl6s$d!<yki{WaLw1Mk4>=QZGvrptosg9wt3sB9
z+zmM&axX+W^m&Lv=-&{L(9a>D(>?h^1w++CwL;TF`$M;edWPnPI);XZ+J^>&+Ju^i
zhC$EPG!8WgjS1}zy%gFUx-oQTXh&#c=={*S&}*R+L#spYhwcsC7dj<$X6UQX@1Z9{
z<-;z9z7Bm8dL{H(=-tpGq3=VVhJFhD9C{}7Z0L*7uc1#ur}WE(afI=NF@~vxDTn<F
zWe8Ib(+!IVvkVIl(+TqpOA3n&iwW}y3khorO9?9s%Lbo~*%~%EY<<|3u<K!W!yblx
z4SOB-GwgpDOE_0JXShr_f1G5TNSt7tA^40p^Ej8dkhti$xVXf)o|vkb-k1q7(_%Ve
zX2i^lnHV!GW=_o3m_;#rW7fp1j@cNqIObr?_Lw6vmtvm8oQ`=K!xYOLs~)Qss~4*h
zD;LWaD;*mVYZq%0Ya5#r8y%Y;8ylM)>mBPAn;BaY+Y~!9c5ZBO&-U1(vBmM_@lEmV
z@tyHK@l)ex#?Ogg5x+KmYy6)0q>jY+wM83>wiInI+EH}4=wQ*gqO(Ppie41GFM3(@
zspw15_aesP&qd6|zlweri5CkOD;9GV%N5HOixw*tTNbMp>l9lQ8x{u?`xb{6Clu!t
z=NH!%OE;-TKA)iy$rPD9Gks>p%*>ftGqY#r%q*E%KC^aa!_1bM?K8V(_RgFzbK=a&
zGpEd)I<p~eVqACJw78{l3*vUhZH?O(w>d7j_fp)&xZ80r;$Fq=YCIBuGX7fp`FQ4p
zckwI<596Q2|BGi$U`u!v|2F<dykvrDf?9%f0)GN;f@Xqt0#|~4f+F~owd#bb1gC_o
zgxZ8@39}N`Cd^G}PMDO?lQ28sO~USkjR|)XZX_H_xRtOaK_O8sQ8ZCG@k;_jB446*
zqE}*R;+n)MiOUnWCtgYXns_&U^R$;!Ur+rw_4CxPQ@>69Gxgt8=4mX`*rstz<C?}j
zjb|F~H2!Hq(?q9<O%tCcIZbMsj-P#zXp(78NKQ<SSI**`)|?4BQ*wI1=c$zBl;yPL
ztjxKPb0ueO&i9-jIUjSb=WNP(kaI2PSI+C4cR3q#F6X?@`IlpvtDeh~>zwP6%bv@U
zE1AoetDWnctCwq<E0yb?8<ZQ8Yn(eVH$Qh??t<L7+{w99a$|B6a%*yvbEWc*=N`?y
zm&=#8KleedVBWLbySX=W#qw6?^5m_{)y~Vy^UKT5+msid*OnKY7m{a`r<&)IcRz1q
z-i*8ldAj+J@|NZ;&)b`~J8yg5^}H>4=kxmW4&}|yOUif4ch6VJ7tQ~fr=M?@@10+g
zua(c4ubJPO-<#i)Uy)ywUz1;ze=+}L{_^~t`P=dj<v+}Smwzw+LH_%EsRHE!=>p3F
z(*pm3xPpf0mguR`lcSeL?}*kfoj1!Q<w^9rXoJoV(e8ch-P`&v_h0RQ+W)TqN&n0K
zXZ@f1U-Yw1V41)@L2ZKI1l|c^6BH+yPB5FGJ3)Vf%Y?uQK@$QdWK4*dkTfBB!p^jk
z3AGcNCUi__p3prZAU-@kEIuOMI%ai9KulyzVRUj#TFjn$t$59N-T0Cwn|SNlc`=QV
z&5^y4D<fA$E{>cYc`9;s<h;lwk(VMjMXry$9=R`)HHt0jZX`$4<H#G4KO=dfIHQcB
zOriv%l%s^B9HP>ryrM#*Y@(8)N~7L1tcsc)RUTCpwJ+**)TXFQQCFgNL_LUl9Q85k
zTGX?s8&P+nIHSd*#iEU(&7&QnMPp=QqM}oyi=zXhgQJt8OJ|kOs+d(ZtA1APtcF>Q
zvs!0$%<7soVb-KslV?qvHDlK7S#xI1oi%^ff?11ZEuOV>*78~N>lW56u3K8SqHbl~
z+PV#O`|1wV9jrT4ce3tu-I=-zbyw=H*WIprQ1`IzMcwPVcXjXUKGuDz<E{Tz_p9!A
z-M>1<dZv2jdiHvbdhU9jdj5LBdZBvpddYg3dg*%kdc}IBdgXeRdewThdi8p(dhL3h
zdfj^cdV_kydZT*ddei!<xcbuDv38|XC-fChEM8Z<sCa(y`Qk&x7mK$SZ!SJie6sjN
z@zdg)#WgdyN?sN}FTPj2tN2qfe~DH}bctGtYKcaPL5W_8PKk7hREc9rOi6f2Xh~#A
zc}Z?bUCEr1zLJKL#*+4u?vi;WD@s<DOek4ia;aoj$*bwFr@xu*lOCKNm+q0CnZ7i=
zJv}SEIDJO?^7PX573uTR*QR%;m#5dHe@N%dxRK74@iKiwI#0&U^sVW)(l@8yO=rkB
zoW3LdQ9577!SuiBpmW3$G7>ZVGLkY}GEy>{Gh{PDGtx2~Gtx60GVC(EGCVUhGqz^*
zXOv`=XH3q>&N!5jm-#0{K2ss{XNF4VhYapa#?0`{#~A{dg_)L_37Jlrv6(HI*_jQQ
zGcqeOO)}49wr6%^p3CgaOv_BptjwI9xjb`s=IYF~nO8D5W**Eum3cpNYUYE?-pv1*
z`dM!?#j_-`QnNl~x@6g9EyxPUiq104>dUIkvdz-SipZ+TnwT{qYh~8-tkqfO#X-f5
z*-hE)*)7?VvL|QvX3xr=oxL!7Rd#lNZhv8aQGaoNX@6ONMSppJWq(zFO@Cc~V}DbB
zOMiQRcYkkxUw?o9jQ&~u=lZyl#FM0x<dc+=6q8hwRFZU(o;SWP`BL(~guhg<RJhb6
z^<C=w)DNj#X_9G0>C9=OX$)zt1>e(T(@fF~)6CLL)7To~(?Zf5)BMxI(h}3c)5_CY
z(t6UCr_D{<mv%etPTI4ymuW`5#=T~}*1fj94!y3uZoMA8p1tn9zP+Knk-f(|Pj#N|
zJkxou^L*!p&WoLSMe~bdi_(hni|UH%i&~1hi+YRtizXFuBpW4fNVZS8k;2mOD*JQx
z-|Vm1KeJhL*mKx&cymN^ByuEkq;eE<G;>sPv~rAcOjAQsvr~PGf{Mb542qK4#DeBG
z%xRe1u&045eQ(3YhSd#g8@4oTZ+PDDqTyx3tA^VRhZ>GF+-x}8aJ@kw{cgkShK~(j
z8s0YWHu5!oYWUM2nl98B)nnEu*QnDd(P-4@(dg3{+*r~W*%;MW*qG3m*;vz9+nC#!
z-sl^#HL9brsc~ZC)x5=xs~XQVs->T5+}(Jvaap5Ewt2Q?wsW>yc4YR&8JA{Uo^f@?
z%^A05Y|eIwKa~Bsb3$t1{K=_%Qjet`Nj;o;CiPtErPOPw4Fz)wrWMRB*j;d-V0*#p
zf{g_)3QiRW6bcuL73von78V!A6lN5<78VtH6;>2h70xK!T)4GxMd5<N2ZdJ(pBMft
zlr7RI$|;a2Oe@@3XqRN0<P1K6)4I~3(yh|7GP*LRGPp9TGO04WGNCfRGQF~@vbD0S
za#rQ?%FUG*<1fV9B*Z2}C8Q@fCPXGAC#+6jOXN+AO<b8cH}Q1h#YDEGhKBlv$vNM0
z{^Wiu|546R!C4_*AyFY%u{u?^LZ(8t!m`4u!n#7f!lpvCLZ?ExLbJlJBDW%}BD_Ma
zBA~*(!lxpuVs^#kidhxy6>};URxGaARI#&SX~mU_n-wQ3-c)?5V6FU8AzZ0aDOYJy
zIeY%kdB5lVnfI}brJT3?XBm4rN4ZqFQn_TgZn;{yX}LvtKzU%fd%1IYRCz{uQh925
zeR*$rZFxg^Px-|1`Q;1BH<WKJ-&<}~>QL%e>Rswl8eLjcT3Om$8d0BEA7Ag$l~G?(
zUszvR-&kK)f41ytnNdgUl(s4DQ@W>gP3f7^JEechgeg;|OrJ7!%B(4~r_7nMc*>F~
ztEa4*vUbXvDeI?fn6hcgmMPn&Y@f1Y%FZdfrtF!rcgp@LN2Z*Za&pS4DW|8LnR0f@
zxhWT>T%2-g%GD{?rd*$LbIOe=x2N2ja(~K$DUYT+neueX^C>T;yqfZI%Ihibro5l>
zdCHe5U#EPZ@^i|cDSxN@pTazqX)4=P_Nkmxxu)_?<(tYsRcNa4RFSEoQ^lrAOqHH0
zJ5_F~{8Xi>T2r;BYEIReYB<$ss>xKdspeBHrrJ!kn`%GRX{zZ|m#MB(-KKg@^_l87
z)qiTx)ZnQhQ^Tf)PmP!wIW>A}+|>A~u~QSLCQVJ5nmRRYYWmcSshLx=re;sgnVLVf
zaB9)i;;B|spO?QWKRNAc<=e`~m9Hz=s@!9ltC*_fszj<RtIVqctIp3`I<ugvqpYuN
za@owXC1v+Y9+c>mD$G-wr!h}+p4L3=c{=lq<{8d2n`bf4e4gbzt9f?w9OpUBbD8Hh
z&wZZ9JkNRF^L*y{%?q3tIxl=))V%0<G4tZ)CC^Knmp(6JUgo^4dD-)F<`vG%omV_>
zQt6b^X{8HF=a#N1U0k}kbW7=u(j%oCOE;7rE<IFwt@Lc^<I)$U&q|+^zAk-U%3Sub
z^iS#kQh_ptGS)JlGVwC5GSxDPGSM>0GU+m#GNm$wGKVtVGJ`VvGSf2WGP^S4GT*Ye
zvXHWvvaqu3vi!1B_0Os*sw%4*s@keLs-{*gt6EUCrfNmi+N#Y}DIJ*|MIE&r^&L$e
zi#m>VZ1339akAr4$GMKj9Zx$xc1U&p>3Grcuj509Vy9%MaHn)9SEos*cBfgVV`o}t
zb!T_!(}qoDTgvW~3pI!|h&9MGC^RTFs5YoIs5fXfXfzl$a5tDXI5)U8_%;MJWHuBw
zG<R0aXqeGFqjN^jjNTdjGp5X#HDmUSc{AqESU6+RjHNS{&G2mtY0GKLYpZXoYO86h
zZd=jT+t%H-rfqK9^0viotJ)^Ft!&%YcBE}<+qt$4ZM)hwwykeF*>=8dOWVt~k8PjY
z-nM;iyU-@wey{CI+x@m1Z5P{^+u7THv~jd^wez-fwkx+=x68Gww(GS^wcE9Ow41aW
zwrjSVx7)WjwJWvPw%4^+w<ok0wEMK@wRg7%w<ovPw5PO3wx_mFZeQQNqWx0)vG$Jk
z*7mjS)7zWdSGPZHU(>#|eRKQi_RH;i+b^~sXg}3{yZu%BgZ6jrVjaRA|Ju1aq&pNl
zEIVvE%<7%$UFu!y1)6?U{jK7tX0B$b7Om#0)~@EScCWUm)~c4Q)~hzGR;X63R;f0w
zwyTz_j;M~RcC9Y0_Nk7oPN>eSuC7k1E~+l9o>0B4dU^GZ>NVAKt5;OFR<Ej_Q@yBq
zb@i6&i`56K&s5*7zE%CS`dRg>YMz>Z)qkq_Ys6}}YvgORYSd~hY8-1EYW_7cHZe7^
zG`(qb=}>G^YEo{}ZPIVjXwq)7XtHiHZZc`IYjSDwZ1QgMZ;EP)Z^~$@>uBxh=(y2w
zzay@5ZvFiF<@M|9H`H&cuc`4&omexsW=_q#nng96YWCFZtvOh8yyi^J*_snIM{BOv
zyr{`*T9LND{#^al`ls~|>z~!XtbbSkx&B8@dF`^=b+ztwv+H)u+cK}Xx21PV@5J7X
zz3IKVz3x4pJzf(7Ci+eEpO`W+X=38Uf{B?E^C#9$teaRgv1DT9#GZ+*6DLgUoj7sg
zqKS(qu9~=Z;<}0JCvKg%W#X=hp*?l;cJ#jPW$laX%k10QyT5l&@2=h>z1MoL_ulHg
z*L$w_eDCevW4&*BzxV#=ecb!A_jm7;Ue3P1y&`?Gee!)eeR_S$efoV?eGYw=eWrc3
zeTIFWeU5!jeSv*JeO`S9ePw+$effPQeXV`{eN*}-^v&s;*H_Wg)YH||+B2hPO3&=n
zYn}HxZ*|`3eA@ZC^L?jXms)r5^q12<PkTR&Z93z0j_Lf<`KD`4*PU)K-EMlr{O0+s
z^V{aP&+nMuIlpUu&-{P$xaafE-#Km1w7t{LO}jL0fBA!HeUsKrIx)#^a@OQillv#z
zP05~8Kc{I<>zuYZ?Q=TjC|7mQ>6<fQ&cr#B=1iG0b<V6gv**m4Gk?y4ISc13nzMM$
z(mBiKET6Mt&dNEf=d7KxZq9}|8|Q4Avw6;zIa}v!o3nk+t~tBs?3uH7&XGAs=Ny}J
ze9oykr{|oRb9T<TIp^nGm~(l~l{r`ET%U7e&doV@=G>igf6k*hHPc(CPn<q!`jqMG
zr>~yAc>1R4Tc&TEwPDuwSrPNL&Du3<&#Z&94$L|_>(H#zv(C)AILmdm^KAFop0hn>
z`_2xW{bC01Oud<*Gec(HpY?Fovsv$Fy`J@Z*4tS>XK~EtpDjFFezx-Lz4P|Xv#x8J
z*FLXfUiZ97^R7*vJ8%BH+w<<syF2f}y!-PW&3ifT`Mjs|Ud?+yPiel+eEs>B^Udem
z&bOQIG9R>$_l-oit3a1PN9g~C+W!h=JPoz~HOr)5vw-&FHq`#t=Wn~lz`)Q@`@g)5
z_2p>>1_sC$@2w0B4Bf5*4j`TX8fyP3@VCtatNT~S-#&$bfq{Qp=>J})`<;gvFEJkK
zym;^-i{`;z7S7&)`~2Hn|Ml_+bo%~CJMQ}J@BhZyAC0UG4CRWAwLk2b85qh%yIp^D
z9_nQg+I8X<eB1N4*Gdx_Ykz!{hiv-(!CLq0|NmYQh8-RcL25*p(mF%Gr8U-m`}@B{
z9JFtFd+4`LfgMbs{ms(Q{mq64UJLB_|NsC0*PIhT{)6l{2A!0N9cL)!D5@(aD>^7T
zDynEGX=rGuX;^9KXlQ8|Xy|D;DVk^)X;^9~YN%?cYiMfdY8YxLYiMieYZz;oYM5!5
zYglNgDXJ<eswt@{tEs4|s;Q}|t7)ids%fcdtLdoes_Cies~M;nsu`&ntC^^os+p;o
zt68WysyV4StGTGTs=2ATt9ht-s(Gn-tNEz;s`;t;s|Bb9ss*V9tA(hAs)ebAt3{}(
zt1GH2sVl3isH>{0scWcfs%xohtLv!is_Uuis~e~rsvD^rtDC5ss+*~st6QjBs#~dB
ztJ|pCs@tjCt2?MWst2kEsRyfvsE4YDsYj?ssz<3utH-Fvs>i9vt0$-@swb%@tEZ@^
zs;8-^t7oWZs%NQZtLLcas^_Was~4yjs)ws<De5TdDe5a4C>kp2DrSRs6;~>zDds8`
zDitXeE0rjfDwQdfD^(~}Dpe^}E7d4fE7mAhDb^}_DY`4VDf%czD8?!JEBYzAD7q?o
zDtageDF!PhD8?%~D|#!2D~2hCDn=@XD8?wpDn=<rD+Vh1Dh4P<Dn%(pE5#_qD#a<q
zD<vo;DkUkoD!D1SD|sk+DtRe+EBPq-D)}k-D+MS8Dg`M8D}^Y9DupS9D@7<7Dj6vm
zE14*nDw!#nD_JO6Dp@I6E7>U7D%mO7D>*1RDmf`RE4e7CXsT+eX{u{#XliO|X=-cg
zXzFU}Y3gelXc}r7X&P&qXqsx8X_{+VXj*DoX<BRAXxeJpY1(T#XgX>-X*z4VXu4{;
zX}W8AXnJaTX?kn=X!>gUY5HphXa;HqX$EVCXohNrX@+Y?Xhv#AX+~?tXvS*BX~t_N
zXeMeVX(nr?Xr^kWX{KvtXl80=X=ZEYXy$6>Y36H|DV8c$D3&XhC>ARgC>ALeD&{NZ
zDJCf<Dk>@}DJm;!C~7L2D4HsoDVi%<C|W97DOxMqDcUR6DH<snE7~a9Dk`cdsVJ+c
zsHm!_si>=HsA#Hasc5U{sOYNbspzX1s2HjksTix6sF<plshF!+s9364saUJnsMxC5
zso1MHs5q)PsW_{+sJN=Qskp0nsCcS)sd%gSsQ9Y*srah|s06A6sRXNpsD!G7sf4RU
zs6?tnsYI*9sKlzosl;R5ub!ont&*dXtCFXZuTr2=s8Xa-tU{Z;oj$6*s(z~essXBj
zszIv3sv)YOs$r_(su8M@s!^)Zsxhjus&T6EstKxzs!6KJswt|es%fg}su`-8s#&Vp
zsyV8;s(GsUss*Zrszs{BswJwWs%5Gwimn=N8txh%8lD<n8r~W{8onBS8vYsq8i5)?
z8o?SN8lf6t8sQod8j%`N8qpdt8nGI28u1zl8i^W78p#?d8mSs-8tEDt8kriYN@+^z
zN*PL-N?A(TN;yioN_k4wL5gPaZbiPHp|u|Vo=*Ns5!Oc8!735O#v0*4?&=W^UIp&e
zhNeLwCfa89-kK3wX10$0fvTRm5oH#3ficMeVTtB?CXtRd5gEQJrdodGVPy`HcKQ+C
zF3xs_5hl*5L3&|Pe(Is6R%+&94wh~~uI}z3mfpreLG}@@c13PRK?eTm{+V755k*cx
zPMID$?%s|W!Ihy-UUg=Q5mCYA_HH4n){YUWetLEq5$=JS0k#qOk!8MC_SUwlRtZ5>
zMhRACF1h}ib}GJ(j^XZwktLDd9+?qQK}KF)9yt+N5pEG>w!Ur!#@P{twwbme9>FFN
zPGLp?;oe@=-aesb7M}i5kp&T2?s*YaCV7q_LAep`LHQBx&Sim-VMP(85p_1vHhvzl
z=1%6tZWR%ZL79H`HZ|s|=CJ`$VXndX)``}I5sID$e%dC*5#F9<5#dhd5r%%15qd@r
zmdcTt25F8to}gPiRU$J?wN0)4d`%U@OTvSLQ+@oblp<py6M}0a3e3yH>msTm6eE*e
z%z{fIVk4^~Qe6Wa3Id}I0&UbHRU>sG^&+(+Exj}&&BEf0H6m*re7v+G)guie4b3zy
z9fBPEot#{3b3zl0JlwPGbtCm7v;6X`!rYS$BTaJ6Od=KS<0Ads>l`d1!@X<GO(V@C
zl?@YvEhAk6%pyUzNNGA6M;6<}1!!6%+u251MH(A8MY=?q8QMo$niku6_!L<M1UW}$
z*lHWQMrPZ&MOsJ3yVylKMmj|5g_?#XyL&`N+IU6UM0!VRyLm>Ig)93i+WJJ=xSIO<
zM!H9;8rRvITGTjH7?hcS?wwLH35bk0aWn{wH1#a>4~lek42#tB42=wl43CWV*0fc3
z3kKgsmFf}WP-&(d;T5745*CnR93JZ7pJeH6pX3~5=IomnSrBP#YHFrpm+hhL;ccL8
zS?QP*Y2#pI8DZ%iP+^$j7H^kg>JeTMm}V2_WowfbnH~}45@KQNk!TbdV&I(UtP~aR
zVG>Ydr|BAHsT`#lq7qddsbiLHUTIhpnQB~SS7vV*l;U7)Ru@?tX>FI_W)rR$W$9RC
zn&DV#6KWFcSnFb8V`QFho)c;3rfctQ?Pcm29UfrmYhzGmTyE_Zt#6eQVrE)w8Ws`Y
z5oR9X9v-1@Zyg;G;S-=|ZI>P3Sn6055^7;$Qfh4H8Q>b}TJ2C^7#ZPbX=@r4;TERk
zt?yyv>0{z!Ut$TmPb}Tc(I(5M+&?zLz&*fH**4C{%Pj$X$5@>~x}CCDiH)H}o<&lG
zw{1#9azu?Q=)N&EM+1)>12xNFn?gU^=wL^Ev#Ky1*GOB?9aR+$N_M^u4$*F2T1HO6
z$<Eq=PSK$b&e4YUHZD=_F3}m0;hrXz1%4hOH3mT@kpY>J-f`KH1`+z!hKAwBei4Bo
z#<uzP*8Twz-sXW3s%{nTwn0G=DK2_m>h5Y0wVvsIG1l1zTGqM&28Jo&_Tj3gB~Jb>
znnvbEsfI@JHlZ5!I!>VxhE5?7A$|!_4t^#Pdd`Z$%6=v`CLV!Kxprm&iBT!;>c&N8
zH9l1i<qnpCiGl7BaYm^Qg;pLBx*>`FpnKSy{VR;!?Ytv=qE$U2{OdgYjKYG`j0|i7
zgSEX)%$3Yjy%arSyiyDc0s>uKqw7qg>|HHW>~bB=;!WeN!vbt0Lp=<X%{=Wje2nAG
zy@G=MBg}$at?az*e9YquOikiTgF}qVEv(}Gt+Z@PO?7;$or|qX9GrZM{4L^L{T-Yv
z;|rW>?cyDMe9MD;%^l-i;tS0^4Z_Sq%yq14eM0OFy-VCQ!d&B%{EUrj{7g;U{R*rS
z{cHmr;!8}tjMFTv<6T`Kw<uY=+Q&P^8-_T?Te(O0MYwpy`^U$GdB#V@oB6q0`Nez0
z$GK*EmRQv|hugWu`^HDOs)hPm`PkV8J6NQIxyRdCs@vB%g6>=jh>wm>1<!eSh9}3T
z#Am0f2L;7z+DC_Y*oVaX_{YY31;)jz8<@KV$ERAwn??K9S%!wh$LIK~8l=Yu#=8ZE
zf^TSwiPyA-+{=^}pAl~ooNi&}niU`Asp0725@%oG9}}7vZ($T~l@sq6of25$ZEK=t
zP#Ev#Qxu;YpBbMWpC4ZkZ)**@wMp4J+DpSvJweM@EkQA%E<Vz?CcY{@z}_X?$Fm|{
z(V#ZII$kM3Bf-O5(ap@$$e}de&ebKNGQP|Oa<7wWfJs7%k70tEy?%nFpLT+qr=Eje
zLavp8m1aU&ym5j>g06{Wf|0+6l|e#PfKEbnNO^p^t8PMhuvvn6f=fbTfK7sDf>(lF
zf>wfxr(=Rqf`^xLf@y-cpR>1bf?I-9f_H*d0_ZL%SMUu`J_*(dA>N?-o`Mnr68vle
z6PzquBeDYWo%|DQ6G9S#6T%Z>5+V}H!VHXa!mYid5~}?otr8Pr6Lf=;5~33#6XFvR
z65<k463X3lBC<o$5<I<96C5odw?ic-*juIhWF=JkXD2v$IM@ccfbNPaad+{~ONg*G
zizo`pPjK~(GAm3l2vK(kG*R~}NGMA1v8=MR@hwgWaVtqM3Q_YYODIh!PjK{A^@<7!
zkB*Fvh)%Zz-5(cW8WkNKt!Nw{U14n=mJnTOXKfx3t><H8Z)#l;9&Dd!pJ-$36Biw9
zknI;?ZW-?6rs81flOCNIZRM66oe^E`niZWH?O>l4of>UvqT`_CloXv3?HiCA9qUjO
zon%%V9TaV0sU4CN9cW(=9T=TvnjM{LpBG&iT^X%tsccZ_<ZhfFT@fAR2D+WDJi08p
zF1je#%BVJ4C8j#MD!L{*!L`y_IYu?c*(cD<Ar^F7ovC}KnR<*`jAo3Ap^vG7eSDyk
znMO>NcX4)%cb&JRPql|uOrDQ+OmMV*j82TPUA32PjF+dSi><p}Oj$@;fVNAhSx9u0
zA?P+eJ1YkddoNE9<M2vPcl!z}n;@$sH4_U%6AKsr^hh=TB;VY~1T)JZYfH-{^Q2;v
z93O3;B6FjN>_BTPbuV*Ym!K5;0GmWJ&@F5>(UE~^ZhkI#<}v0q_6gyoZZ?J<afY_x
zK3;L2aXF^3o=ygOuG+3XE}1s9-p*E)sp%e7skOd_;dT}oPJtfPsa|H@Hno9@X?e~n
zX?3ZpY2m((<~6Ccsmf`wE*fd-Y0l1ZZdz&PE=p-OUdgu3mTGCC0s4NLX$EO(L0Y!D
zY5Hk_4n9HZHil_sLEhnYzHz>4PTFZYY4)~yX~t<rX=Z5_Y56W5E?IW@p5|!<W+~2@
z!Jr$6lss(HEYn=w3Vp59Y|=8V?b58$%pFvM?bAv;L3a?91=u>fI6I{|rn#pX`j=#T
zrMafX*=Ty2+64Q1q<N<Kf$t;oP75{lN%K#Oc5zGdO$$m3NefO3O{<6m-A@!89-9`I
z7H%I95*D6jlJ6ar<{aS{t`y+!9G_-q<763~rXHwd<?o~&k?ob28k1IPp5{^NVw76v
zQsZr$suP+Q9N}eT;OCv?n`LF1YLXfi9%-2treRj#>m8(KXzG<=T<qy<UmXzSWtQq>
z9pkTK86Ki$l^$5*A7o>m8taj3UuGER?P}v<Qxz2B9Aj^7;pD7mr4$n9uJ4j#6liIk
z>fxv#YLjZ0nr;$e=HzV<Xk!}bm1LgcscmcLR}iik5b0TM7Lk@@V`m)T8JVVJ>=Wk^
z>>H;P<QL~_=O3rzRTC6%oRymBqG)I2SL70Ar{R`t6l_=Hp6!!k8|!D~<>;1^Y7<}?
znwwhU<>2e;l%MM2RFGPc>g#Lk85yLJm=m1kUFfEhsGbPA)lEM!*GM}t$^vw=n?a(L
zsbQjVqD5j*pjo16Vz#4sqC<#LqE(`qfk|Sey=9_xqFtg*qHCDFzipy@qOVi7Sw*m~
zd#ZVz9q7(C_r!GLOt&}_r$CQHw?x-O=R~JO2SbZcmqgIrZ(fO2`N4@niDvGeiGGOz
zi6M!BiN1;ciJ)8HKzG1_Zh%wti%r)si48LfG%{APEDrZ{kF(RW4EM`3@{hK%2@LY^
z_BF`&PmavB4KfVyvN2Nk);3r3QueP%@CpU3t8jF!_Azv<Oh^vXH*yJ!HmxvG4Ab||
zH>gQaOjI_mO{hySbdGgaN~|>Zw^mNHc7fb*XK3PSVe6LVqGS{l5S{L99UklwoNVcz
zq#vH+9&Bi25|~sJpyw2jlw_|K9Bvwvlx3RhTx+3c5$x)39+DKC<Y87BuId|+6qZ!u
zWomC39GVoKr03}25S<j2q~+k}2)P^1BRV)x$ydYHIZib~%icFSC#cFz%he?=+)yvx
z*2^$n*RnQ9)gs#}$~eZ<H8jjQ$Y0UAIJGFXBsImi)I;CY-n}f<ASW#~)6&q?#tCvu
zm~T*4qF;cXZ)%{IQMO@`VXmuls6lW{Vr*h`kfpJ=VWn?*Xk4P1U9CxcVvJQnqLH<y
zQ(|IHfUR#*qO+;HYjR>rVr6h@qHbVXqLN>FqLXPxVyLxCKtfW4VM<V9lBbQ2M{-hK
zPHm2Ud{UBKSdFimvvYD#80cO*_u!nQ9Q)j))FcPvJeRyA=YTS+%%nJTV{08BZ|{_(
zH1NH5<)EAHLW+}gU8_Q!Tpf(^lZuk`9c{c7O)HZOZ3>e@0xUyHlfo>^l7ig}l48OY
zb1RZmbL)}<y-Xbgti$Y+trWf0a+PzHa>K0Eb4vnLa^tMZ%@mW3%nE(fEtUKg-Gl54
z%|JKk)h5*>g}NvuI|i#KySS_PYbKjpX(UHkgYMJQN>)oQ@^cHev33rra?!}G2~bTg
zb=FPRH#ACive8MlH_dc6NY=8;_bs;0@X=2;Ojh^TOV;#@wazw8wF@%xHMTU=P7XBE
zF^#v(Fw6EgPxi5P_wWj^NX|3X%&iJe3D(NBOil_iO^yo=urN+GOO7`;Nmg>OO122`
zFtJW{wJ!He^|W=-&aHKdw$`(^_p?bhv(Gmy53x(u&9zU~w9?77O?F5&v(huO2yiw4
z-Am-?;FxUe>Xd90W00F=k>jVHl^#&(73N{??`a(5mtq^2Tx6}0Wg8mn2D$@FCrdj^
zFH1Ko!d5@a&dJfF+(g|vEhja{-n`N~$uK>~!xMC8QkYjjoU2h)h_{=&L6J$YM}V(|
zeYCxbyGfX)LtvbSXMUiHYr27%v8zXtL791#Yq42SXn?VejjnN_U7$f&P_mb5xS6k+
znWcSnsJcbCYfxOIeW;UzyNb1jVU}yPtGbW6VVJ3gOK_Z3V5V`AbGdm*n6hbsk%>#D
zi>^aRT!w**Yl35_WsF^fub+XxZ&+M_on3fnTtH~7L6VEIQ-O_Xu%&~dtC~?^h=zl+
zS9n}asDY)fho*OAoUOfyn|io`m$OTlage1&SWT9RL7IJuPn55Hn4goMpOTMWK(LFE
zX+&IUsJTtBwTgj}YmP}_Xl+(hoSJWrZ<=3BoT0CpgKc<poST7(Rj_BVONO19k&i=x
zccG27wYh1jYg$}#T&!JuoViJ?Z9-hGi<^IfX`ES<SBYtAoLgvOoUc!vo2#oyP?24*
zldX@1aj<QKy_;`TV75t0Tx?u=TwRudQ&OBmn7V0+QAS)*Ty9)pT!Kepcz#@lbD~eG
zkzG(;Ty|WjpSp>*y`5c<ZDyQaNL*Z2oV`O%T(ME6g}RfYZE0LZoVJmQNtTJ4XIWgJ
zcd|u!Tvc3UoRd$YL7s_Ks(wJWkz#g9T(W0zT$F)gP`RPLPeGiDw^nF%T&#(jOKn`8
zv!aV)ypLl|T)v%=o2zk|hn06-oJzb=xVf>jqqn=NQKpG@c#exwymGv1ys?#9e4K-`
zXQWY@yLx<#yGFcHcCfcryk@+kk(aA>d`yU=hfaKfoo>8(n0c02cBofPgo}l$rK@>e
zsF$UBfNx2FX^FFkoq4vcfsd_`W0;|aagc?QXM~wWwuxP>m$Q3yXtBAApLS@mp>a;U
zfoYDpnZILIsbN5BXs}<tZIZFJg;}U=uD_Y3w^M+vxmk{;SBR@+jzx~MlX*^UfK`rl
zPHH&lCb1m1I6n`YP!CO0Pdl5i^bozk!T`t(Z>Cm;UZwU`z7APd26kDh4%S(<M&-^K
z*5N@Ve)d^5S<YGR0mi{rCXUWU;eny<Uana#S?*bGS?OUR{@z)B)>XECo<3QYo^}3S
zS$-kDS^inMzMffrS$TeO*7nAsZU%N$e(CP&b^%%LVGfS5A%R(T{y|xJUiz-41|eC&
zS@9)SE}Dk%si9f<USV0`paGt&$SmuSDtGgs8Vjea7^51eijXv)yl|(GfMDnBV%IwJ
zkZg1BxNI+nYF~ZhD7TtyI~Nl_O&2@E+K^JOoUmZG6tgPpgaAX&;1CTDZwtE&8&B(u
zJcr-_7o$`Yn+%UoS2Np;3a=Q8QXdnCyg>U5rwkh_UBeh#+brh{H}GA8p5Cbj+BTM!
zjv3{?UKwS6xuIc>E*WOd)s|{u9vKN<X(0|7t{LtbmhQ>so*A+BK^fs0p&2nY{x;DW
zaT!q=RfZ7;#x6b<Np5x?i5~tLAsJyAg_aQ+rQy{sF&UXgff>0rPWHYTm0=Z*g+}oi
zj$V-&Dxq11)}ekG0T~8n!5Og`77pcJ8s0H(r4E@H$^k_gSz(~HOqGG&R+Sco79k<|
z8F?8w83mR>K4}?hens{c289^~84lqo8JfPzo)*^8wpkgVn+{VmOij}>T-~!Xax)BU
z^};JMN;3?6%QCDSGcwGb3k*POpOh_wJpG&#{L&nXy<>e$0}{Q8GjePyGvb_6-O4RX
z3?jmHZ1P=QeAF^^J(V((9GvazGQusZGgLDDf|N6j!c4=}GtF&lGHNpvGsAp!f{ZdX
zGqp^tO|&yL0#q~WjCC@T9kennGc7XpGOIE)GIi_?Gp#aJo%AzZEp#(uf<ZSXnrFIa
zx;eOJ8f02$78=-Os)mB@OmxgFbTsp@%>><>Xq;)5X=v?`S#IN!>6Yo0>6aO8<dLao
z?w#qA=@_c)5|No`<(a7*9FiHH8Ib9p>F6Gm8JX!}9GqF;@0(d}9F`fCY2u^nADS7H
z8J!uI8JHQH8K3FpZ0_!7VrK0SpqyjwS{)3!sV~|s&mMGJpH_f{dxnKZj%8SFsJDr&
zQHo!>TcU5NiGz2%O;ToZW>#QoW~E6=rg31BSAbDQW?E)?rg2ziCgfH|{TxeIKeOVX
zJkv;P!<^)xWIqcRduKZ{%Lorcf5Sk-I@bV0ZD+$!m25{VD<4(x&4y~(n%UafTG=|;
z{$8dLh0dzZ6>hrOUM`S(4nxhW%nh@X+>NtUtV#n74UDo)vb9V-oHE=^v-P~=lO2Mi
zBNcsh!;0M#B9pDHtdf$o{S%ViJuR(F0uz(7JoGJfZ6l1M{TzHiH`JE+>iQVlfbOY{
z3aECAGLLun3JUW}NzO?w@^my#Pfm7AO*YO=OE&gQb2YWJc1}*VbyabUbP6}hO;)qk
zbty=Wva3!mO%ApSF!v4i3kwc)v@{8g2(%0+bJy}PF^Y1|ORh=IPu4ImPcBKeGFNgf
zOOAEbFsgA&a8U|RbO7CfTbr!uQ=DuU>}+U~TbNvwT#;-Q;Otf$QkR@ytDd5kQXHt9
zqM1_eVdAfmqL-5DWMWoitCW&yrIn(SQfn3$W|X3vqL`9r9qX&)?&(_YsFGsru48L!
ztD52-o@At*;%uXzl5K5}qTy<ok{qgRZ<S)6Vx3}}66WS+<?WzoVUnU4qHI-XYm;K{
zTj^5mpXO;F9O!SH0=i{4)5p&z#KAPhz|kxvz|YY-*tFO~-PS!+$5Y9|E5#?pCD1BJ
z*DA!yIVIQBH{2nm*55uQ#?i|s-7DNB#K$AWJ;gD_B}LaXGT1GpGAP-^#5&K@&Lqd$
zH!#=7G&j{<Bg8u;G~6jg)z&p7E!Z=q!qYA#HMq{*)2t@M*eE>3$<H^%#xL3;EXB*-
zFF429!!;ts#n(S2BqcPZ&MM8{J~SvLAjK~w)mO_)*+I=VIK{&vJ;fv>IwjvRGbKGJ
zJ|!VV%RkmTDkU%_H6_L)IVIgCDJ3zb#yBG-(bOkAEk(yVDBRztB0D9e%+fb3G9@OZ
z$|)|z+sVZtz^T;G$j8q#KSkdy(XBK^(<#RxHZU(m&m}jdETtr+&M7vfAf?XBCA2W5
zDlj`GC#5Jw+t1t8(A~-@E5*yv%*W8UI;A+JDy251CdJR#%D6nGGNmFV$JN#$BSb0H
z#XtpgZ?KJOs$yzgN{OLHswVgbVXf3iH|<p2RGn1)RK3&$OM_Iy)B@|ooC0Sz(;(|i
z$Gi|1JGbz#kYFRb9LFquCo_}qKoesl4{Lje9Pcpu9LF5joHRRopD0%wJGY!VLzf(l
z&}37m95cscW9J+TZ)b-(pCCt%oHVOohoUf_Ks$S5^H5LsoFr=>pITcF4^96}-)z@R
zbI(8vE6*IS90zOfoTMBp!$@;WTc4b?K;Il|kHDPZ9AE2H8~+@0Pb=r-oY2sKoZ_&c
z96#_aoc5j?{xJbMfzcjeIi-F%UQs!bId%r1n>kZ*Y&_f@V{#G#qjT~@VsqT0<8pKi
z<8u;n)WRKHZL;+YO6)8w^n=0-Dou?ebi8Aeb==Yn+*~cex0yNwD!UeC8M&Cc_&F43
zIlAQg6=aoU)p#nqNBGqFfo@IJ@lSUs&$2gz-JM#PrRR~IXkng{n44%44!Zx_C%7=N
z(7qrs$kg1hII$?P#;PRI+%nLv#wFIu&9*eLJki0-(O<)>EU_ZACb%N827EtwmP1{l
zVv@T9=$>%Zq!35tB#opxBc&u?XD1`|B()@!B+Vr4B+r1{Fb!v&q;P+|q<pJ{OkL33
z;nv0>21)u!iJ73=!;O;^eN2)}lj;JzoC<?WeL?pKJKAMArKBgPr}>&XC#9QPhxsQu
zW~OJPm!vBjWu>R3=cH$+TY090rlxC}r>Ezo7pG^2<)#;<7p5l|l%^NCyE^1L6gU>7
zm!+3^D`hBVIEGiHSEg5|m#5dI*QVE`hdM^O*Sb2p=DI6qsAZ^TsArU0RivwA6nJQP
zYG$Nb)&**0Xl3YT=w+xof^Hwy$uP;#&M?d{%>b<)HqS82@VC?{&@C`<%QCR{i1+pN
z1KpEr@8)S@oRuD084I~D*UQ2nzSOh8r^>V1(>YkpTg^hRz{$`eHQ&cGINT=7Gu<@6
zCDT+dPuDswT|ZCL*eK61FWuH4&)m=7wZzdc+BmN`AjB!dO~>3MFWb1<+B7dF-7HVf
zHmNYf%QGmdAi5x?z|Aq&!p|<Qz|b|epfE6@z{eoVHa;l6K;I<8Jgp$LK-n#^AgRFF
zB)K3jG}<S~&d4UCAiW@^K+#Ak%p%y_PRApwpghngEZQowz}n2jSIte)F}onIAh)2P
zAg932I={fwr>G#*IK;5HproLzAkn0-puC`}prW9(pthj0pr)X%K(Wx#Po+?~u*|W#
zAl9qUq|ngNN3Br3P^Zu@RI||7L#a@^P@_<_P^(bWKo`7j)u2$XP$|%;(6}()(%m%N
zAkrW=#Kknk*2`MGAkIRgK*K<@AkSB;K)XQ2Ej28qFtxDQIXXBnEW=elI4#IA&)UE=
z)Gsi>Ccvt~-rd5{)W=oH%iGy0&)!AJEGJjR*)S}@KR?&cHO5TQD>t_ww=mbn*~C6C
zw<NbHH!U>Yxj45hS2<KUurxQoxjeVTKF6*ix7;T>&^5d)v?jMYw=%aXw>DSJPTyNG
z&(=&S&%vcGH_q1G$k|La&niMWPc1LgxyV>OPbJUNUn8&FNi$C?Pdm=o&CR_u%+u7!
zTRTtNS0~RPR5#D1%spD!M8`R;(84P?NGq%;Kf=!0wm9F%Oxr-;%PiMCx6)7Fyx86%
zH`~d;(=xZr&Dh>1x570bP%|8KYi?4YeXc{UORh(*TdrSjMyO}5d#+t>rmLG<re{!y
zW3E%KbFOP{rGuhLhGjr*V6IoLe{O}JnYT}_Z*Hl7P;QZ<QLuNexktWDfooW9zNx8`
zu0f`^o?%FCwr`SYXl`(Bcy5&`=#Jf(Tpz<S*F2l3TpOP(qv+gh7gv)~gZSJihYS;6
z*VtSa`?y?H7trmy$+_W<?$#EzNx3PxX}PJn>A7}ZSviFc>7Lm+d2Ts5xo){R1vzQq
z#W{sJpxcC%!wWt0yi0P5ax(qPatz%ZY)W&iP0OsybIK#DZLOUuaw>C_Eg<&`=LYLV
zWIM#V`&cCh*m_&}23ph@=DUZ5x!Gqsm*z(}Cxw^i2OCGY=LUL&RpgiD*IK(7huXRY
zC0Hx^*W_2{SLXW|hj<!z*X73<c!t&H=NgBWdH5+6C>Ge6M%mO@r&>6<C>LaVs}*Pj
z+S}#1n-!WDhT3bISQJ|OhPdm7S{7Or`n#(H`G;8-2HF~!*xJRI1p39>+ZI;Y+Z5Ut
z+7&t!Iu_PBDmhkp*@ar!S=u>;D%tD%nij^}dYcu7ITyPW`&zgayBB*IxE6aB7kYaa
zs|9!&dKCK?2bzW#2Nj1D2NzeH+Z*~7dlg5S1{4PthZg%5C)?CIh80H@`xJYa=Gn#+
ztC$zq*M%AR7MR2vMHELCTX@D6#}y|Q#}_9TClyB*XW8c)ClqVC7ujSN+gqj->l)Qr
zCwu1>XBNj;<`t(Frxj-vCpv+4Yh@JI+NAgw6sH##73+p;xfK@|7Hc@gT9g)-6i1ts
z6_*!R6k9oDIuyEA7grTWnA8<l7S|Nl7Aux0mv~w$m8g{18G&|h=-GrjCq^bX_>=^O
zN1OYVC_8$(g_#(K29)@h1eQd32bDO6B!nfHTR2)f2AAmAC7FbjgqCRAg_T5?gqK8>
z)LKQ9M3y93xckJEL>UD;Cx@8Z$CjA5W|o-xd-_FqmwT7k`iDn5lm=v#WS8WWB$peS
z=ayuL=ap2ZIoMUD<ycjxdHdI-*@T$c)TY&?`Pu||82c%v+nXq*n|MZAc)G-fM>&O?
z+lIOMxtOcDDyPT$tE8)@tEHPeW`-AdTKMaSg@&o8=Nf3FYo^C|<_GE8X{8q%#Casz
zYNxw-=%lAvS6HY7>ZYeVRoHpi8vE*{>!;`0r3R#X2l)8d7^G|1lm{55R|FWP8>c&&
zn53Jg*LmvrB{-X>I~o=mTclg2M~6FvTBZ9qS%q7t+oap3XW67WJ2}{;+ox;VIHWtK
zo23VsIi)+NyQEuL$C<i0B^bJ<n})ch+go^~yQk-vd!|<yd8K=&`=tA(`=$G*2c)Y9
zmwE@L2c-w6hopOYhNg$5ho?uRN2Yt)My1;ohg%qW*cUq#I~K=TR`_N_7+S?Sndd2+
zTjp8hg&J7rg@xvaJBQik6?oa?+2uLp+2<7n+PFJ7Ct9RCx|PHSxR*rxTX}etc$RpT
zc$ZW~)>#y$76d1h`1mCnn-t~+C6;9PCzbfPhnS|Aq?9C=q?V+Wq?Z_3*&Ae(=$hvS
zX$Sc`*w`y)$A@}k6&F^RDSP|6q!(rsR$F8ix>&h}1Q}!%W*6oZ<`(7^<`)(g78HiM
z78O>Rl@#g)xyN~V#~3S_Dp{7elopm1x;R!l8ibV>RupPETDV2qRTlc2R23TK8s;W=
z#|1fhM}#JM#5*Y3IA*H^B!#(~MOZjw`&rm$s~LM*YKN7Wdzq)(*qMWFa<??_w|C91
z4F=ul?q}|l?UG&Q86M^vY82p~ZQ&P?tzl|x7?iE*6XqJ69he>O>X)tJ6`EabP-SHv
zkz5G70X{6-AuTdH!`>q(JUb>k$08!z$~Gdv+#ohP#ziMA!KBQ|(k3c9Iy)gG%Pqtu
zK3m<jG}6#0CEL{&bSu1$MWAnLc4D@%qmo;(Pg=HtgGEq!w!Vd~MMk!@d$Dg;Ht42!
zkAR}=yzIj4N{^brob1eOON&VVRG0khg6t?C58omK(9Q8iMhO<>**S);J}NG%{*~EE
zIYq8j*{+`PNp;zNzKS`~hUURBLABY{**3-oSs~%tB_+m=VNPM0p<Z_CB^p5*C7LB#
zCEj-N!3my;o=(MSUPV4;NhaPIe$ipNC3+?LB}OH-R>mdC1_mXDB}%rTMrI}EC23{`
zM*jXLB|0XiB^D)?CF;IbCDtW2B|+Y{C3YqDC2=J-ju|%Eo^gStsm3v(K_)Re2BtAl
zww5tY5#}+)!C{_OF=jE=F-p!hF|IMTG4Xz?Vg50`F+nkDw%Se>G2StLF?KOQ=B@_r
zF?IotF&fr3<~}iQG4?Uh?)HHWF<vnNF}i+EG0rg_F`h9YMu9P*-sU0EG4U~KK4~%O
z&M`5L_K`7F24<G2F~Kn|F<~(!9trl=p0<Wc!BH`xG1hKzF;3z7&SvI;?wZa?F%dD@
zF(EOrF{*aqF$porF)1+>F^MrsvFS0{HZCU0&gn)~F-0-?F*PxHF$F;xM&TaG9@R0q
zG37C(G0Ju&F|kI)F=aLxF)r4{4k0#~F<CK%F=a88F(#&w9_iL~F|{$;!HTiUv8u6!
zK`OCovFfp!L7rBcv1YM`u_mzwv3_nv4*H%sF?zA)u>~>uu@<p9v6ivMvAVHZE*i1M
z4%&`dvD&dlv4z&Au^PcvvDUHb&Oxy@v4OF+mZ5f4c3xIqv97W9vED|`vEH#NMxn8G
zu>o!Yu_3WZj&A0DvHr0xv9__kv4K9Gu}-lb&Ngm(em=1tv5v8Bu`y1X!CJw=u_gW$
z9%-@eu?ev$PKmMMu@zyFu@SKa7GbgeZn|bkv6WVdA?dLJCQ-4~_Q|pFv9Ym{rqQu6
zv2n5bwkffxv8Az|&Pm=yv566ZZY8lLp~bNUu{p8%u^F*>0TCW~v6-=1u|?jwvA%|8
z4%Rk>vE{L4vDvYCuGO(BamsNOvH8x`PKlwWezmbaMj0;gUUu$Pu{E)Eu}X1T27ZP*
zacXg9w)q~4ajJ2eaT;;zak_CnA;xi9ae8r)4vL0mafWe5acY64ar$uvakc>_ak*ZW
zaTamran^CEwh=~I&Q@_&t~POzK3e9fA+~Y$aY`<ZadvSIaaN&Dae75c)<#YSuI^6y
zMVSGy!M53H#s)=(MY>+;R>no9MJ7cl-d6rbMJ8VUK{-y&eilV#2IfU}MgB&PfmTH}
zMVTSiMP^0zMYctjMeao|MQ%l2MNUNyMXp8FVU9(W?(v=;MQ)Y`rp`s4MFB-&Md8+=
zMKQkFVL?S9MMW0gMSew<PO+grMZQJ;MZrapMK-}%W`$lU=HW#VMNvhuMbSkuMS+2V
zMV`L?ewty)MbXX)MfwgoMR7%mMHxj&Md?LpMVUqMMJYvDMLNN$MWseXMcM(SMIP3b
zMFmA=MHNL=Ma4yhMb%c-rujwXMY%<JMcGAa#mdD>#U({i9@Ryv#TCxAMe4<x#VW-$
zMcTz$#j#F$#RkQS#fHT?#rnl{MY_dC#U{lX#m2>^#pVGP#g&nk#pcB+9%jW>#n#0R
zCeC>_#kR#-fjT8_0RaIqfqwpBw$6b`R+))TK~9C1M!AO0g$|xB#zm2;-Y$h9VXlP^
zC2oZ}A?}3^29708B{e3|uGT&&0SUeyg~gH9hI;-g7G8zkh0aESjt1eLg+7ITg=LY6
zLCPV{C6*p8CBB9Jg~|2-g&~Dug@J{Eo{6r>PBoUng`tJPmeGY_R<#C^g%O28g;9m!
zg*hHxzOjY2sWF9dh4F={{;nm(wh4uah2?%)LDhvu7S%S<mT8ue&cR+8Sq=`Rc9~gO
zS=m`RS-DwxS@~J+w$-JzrFEq>rAfAmWvV7hWy)nnIU#{rkt$_Yc}Agi!7)BAUJj|M
zW%_oSZmLmkHkxKO7XBWpHfmAoQDHvL9vV@#Zl-~mL1uyOHb%B7)|ydTQ67QXQMm#6
zX3<Xm-nr%(p3dgwb}C^yQMyqMZt3A>UYeot-ua<=QSo73CI(UZQQ1L;QASb5Q6XL?
zQQBUnQD#y8#`$69Q3lp}rWR3_QF)g7ff+$oQO*`w{`p4MQ8rQ8wlRMB!M0Jwes)oz
z!Kv2vQKsGj-VRaO?s;L3QKqhrW=>H)=6?3hQ7%!s-mX#QrfyMAj@IGsQ5HT~L540K
zQMIOl)}B$u0bWtwQMP_QQNB@rQRPN~QT|aGfdNsW&OuSZQ6W*GQPu&fL6rt!QQGd|
zQRTLZ&Jj_OQMJzIK2cH8QFadDZZT1@Q6}zjQSnh8mbuoJW)&rsCCR>)r3u-^{`S@m
zR;nS9i6y04hDAoDrRAl8R%N9|&XuJVr6z`1p;i`#mTpD`A-?`G2Hv5i)?Q)e<_11y
zZi$9gmNj9CmWt+8Hc?s8S(QG;mN8k?CdSTz<`Gu0StTKHSz$Ku*6~?!juuYwAztAL
zS&3OGSxH&RS#h4m7A|I~Sy^7bp1vlLNlC70S*8va;ptgA;WZw?5xx;|A(bI6o_fK-
z774~lo@FJWR^=t};e{mz79pYj76oq3#ziGM#<n5l?j<F~CEh+N9;GG8;r6Z$rPig+
zrB0<*VUDGCAugpprTzvLrk<r<r7^CqrEaC}rQW3pb{?fw76GNfrRnxXmNuonrRGi*
zK9x3prT(RXrKx5?rJ<#^r6Hx(!8yh%K4GQdrHOVCrSU$|r5;9+;gO|Lr7@*Rr3t0+
zrLm=nrE#SxrKzRKKK7{=rpculrOG~OrRk-1r7ni{rLLwaMmeRKrQv3|rCFufrBNnX
zA$g^h#`&d%r3Ix$rNyPWo?4dG?#X7JK5AK}#&sb%mX!gynOfm_nPE=39w}D&nFX1J
znTcUVnZ=o<nI)NJndO;@?iHC4A(feawpE$cnf|slnHm;$j<uOah9TCamUWqmSxQ;T
zSrz8GHYr|y3Hl+n{^p@7S#hDNS&jiVmhL8zhK3GlhUtbGhPK8T9*(K;hMtc3CK~P$
z!If?nfwh*UPP)O~AvLy6six-6sg~ABp%u1fA*y~lj*-S?K5nTlsUE3bsqU%%rXFrJ
zrmm@FUY@BT&aQ^aHs;~pzP{dGUco*-sotq+E{cKXfxf8$sTRHkVg9MHrgpx8sa9qh
zzA2WjUV+Au-Z>#bsafWJsiCQLCSj?;sUfMcLGey*hDpJ(W;x#Bsb#^Lh9zcEsS&A>
zsSc*DK{2Uusj;a>?#e;YsYxMGp$Vyl;fbj+hSh;dsVS++si~<ELEfhE>7`K>QDxxW
z|Na5)E_nt90hLi+!CF>I(S`0cQPok=p0!bm(Q)B*QBjVn(Ivs^(JIjz(Kfc84$9GL
z(aK?((Yn!k(K^viRx0+|(OS{&A@)Z4(Uq14(bmRlrZ#4V(WPca(Vm7T(Z<oH(dN-+
z(H7B`(N@v^!Br)t?#|&Ut~DjKCDkQvcKHFp=Ds0XK1!vEr5aXsC1Ktwr9lo^##+9r
zrOKrywi>0HrM|Wn&WZMk-dd$<rRt>xE;^+)Cb{9^CfcQXrMjj1rGWu~&YB(urG}+O
zrN*TurKY9krDmlTrJhD1!M<Mk4iRAnLH3RXwptbyHg09^WgcaoWnN`IW!`0(<-TQp
zWiENHd2V^xp(<t`dG2|hd0u&{?%sJmc?RZXroMUpd473r76EyIc|m#6W_rfKVQwy_
zhG7<<6DjONLfxzFBK?dl!}3D&BJ#rXR9z$UqVn|Iqx1CLWAfCEV)Nqi;`0*n67#ac
zlk$@DB5YFfyo0NJbc|9RQ}fi^b)D1l((^L%GV`+Xvh#BCa`W=?^79Jv3iFEcO7e>H
zO7nDm9i7VZ%JVAn6hkZXjQy+fs`F~{YV#EH>++QHOD(FLmGf2doowxcDveb0)$-Nz
zD}prgYr{12ecZJ2wew9Jb@HqHE4=mcb@Qu?D=hW%4f2x$4D*fh)6DGyjPp(MP4f#q
z5`4_^&GRktE%UAN6GE-?b4|3IZSrmN?egvOYyBMZ6Pzqe%)(1;-Tj^O9rK;?UGmk<
zYHX71e4Jgur)~J>d*plOd*wU17v}q#dFT7&`{uiu**W{=2jmCl2jv%q2IrT%gydJa
zgyx6kr&yF5gy%=(N9IT6N9V`n$L7c7o7yGj$LA;HC*>#S`#PrNr{<^Sr{`znXXa<+
zXXoeSM>yo>>pJG;=jRvXC;6)wyE?ljJ9@e$hZ=hM8JiS&xF-krdnBjWcqV%#yE!X`
zhPh;0y83x1mpS_+tD6^F1X=ke`z5=C_$LP>dj|$42PFq5ha`suh9*}VSv!O!YdeG|
zM<hokM<qumn_DDB1)HTrB}b)2<$0t=IhdCOmIf7vhTCR@XGEn(DH#O&W=7dsc-h!G
zsW>?qXGLi_8Mv6*#`$MQIeEq!=0sVTS%uUZ=SF#kg!(7D=0)X46+~q@hWf<%rw1!K
z6-K3c7e%Fc*9DbW6i4YBnECsM=6aVzxg@JP+Lt+$IhF;wSa>7{MhCbC>f88QmgKvc
zSOq(kRU12(6`H!1Wd*C3X$ESRX_O^9hC3)3=K5s>XqT1wYn2s*>XcbJmssnS>6XR0
zL^x`B+xY938I&28nK^|RRJt0KCAh1VS=brbrJA~%+uH{@r#bsX<XcqQss;ua7?c~9
z>jW4W7?m5Bo0NOG``ek9o0Z2Ig7&6cmaF*rdT3i&WLRccWjNWD1o?+Vcp3+(nq|4y
z6z2IGduIpar>FaRTSl7I7N!{Zc-IxGgy=fuIJ&qQ+9?)=+9(w%7pW9E2bsFL`>GZh
z2D{oP`KT4C7lj7qnQ0Vh7R8%t6=@gM80i%07O8urn``E1<!I;V<mkES=IG^knj3pr
zB>9&Il=~V5mIs#ym0Kq%+1Mo6CfOy~CpjcJCRv(S2dUWld8rz@dpjl7n7Md3CwbV`
z8oDHvnYkuKy0|4p`NvwiCn-93B$XL?CKWq+C3z=RIQb;`Cix|Wds#%JMkf2K78u0j
zI;n+(_!<UA8`rv<8reG~q*;3<rX{6?*d?c_gopa3rp4N%q@|^$r{y`>*=D4rIjLJ^
zre&oC8D|En+GnTbyXB<irsbvSy5*;-dlsY>rWK`GrWU7_q$N3(rj?~-gq5dNq`6yK
zms^$FmD`jnTG^L7lslC>mb;WYm%Em`mAjW`c*k3Wl!umwl}D6Em4}x{mq(U|hsTu1
zmdBOHmnW2aM{7ltr{-GL+GkmNmb<%olzWx?lzW%^mRtGxm8-iX2m6;9I|Y;lmIajs
zmxYvtm1!G>mqnCCmPM6Cm&KIDmc^BM`Nx+flqHrWl_i&@lodFnmZg=Ymt~Y?mSvS?
zm*te@mgSY@mlc#1mKBv1mz9)h*p-%*m6exOlvR0DmQ|Him(`TjmerLhmMfJjm#dVk
zmaCPkmur;g8ETemm1~#ll<Ss9JL;9|mlwL|7pU176jVA}xLOAq78n&67nl^77T5&l
z1ezC^6{v><`C1fM6<8Kn7uXbJTi6z4SlJcW7i8Kw6y%sW7C03+7q}Fddbk$26}T6a
zxOx<L7I+odmU|cY6!;eS75Eo~TLlyZ76cUp7lagq7K9Z<6sQJ=7ep3Vm0CKbl&6-b
zm8X|yl$$tZm1mb1I~A1Vmt;C6mM4|FS*Ju6d1W}L6hv9+y6d>)l;@V`l^2xfmlu|o
zloyv5m6w*6m1pK=<!0yFl-ZWqm8qH8MYvd6M;OKwdzF`0lvkElmsgd$8`hN9me-YM
zyP4#~8XK3Hl%+VDmYJ2AmsylqmRXf4dsvrMIcivD<YrmMM=B~SDJv_dE2=81DXS}M
zC~GQfDQhe1DC;WgDeEg6C>tspDH|)BD4QyqDVr->C|fF9DO)SsDBCLADcdVMC_5@U
zDLX5>D7z}VDZ49sD0?b<DSIpXDElh=Df=r2C<iJBDF-WuD2FPCDTgaZC`T$sDMu^E
zD90+tDaR`(C?_f>DJLtZD5ol?DW@xEC}%2XDQ7F^DCa8YDd#H}C>JUhDHki3D3>ai
zDVHl(C|4?1DOW4kDAy`$gYQhOQ&v&NzJHW~XfT11nSq&sm4ShQm7#%wje*&mm!U^Y
zn1P8wgn@%YjDdkeoPmKsoPj|>f`NfSf`NfUl7WE%3wDrV2o+UiU|=8*H!vwPFffpY
z|NS>&_|0t1@bAAD!*Awb1_lNMW?~3o`2RnJ;s5^<hX4Ot82<mC!ob8Z0lFV|Dgy(<
zRE7lO*$fU0a~OCz7BDa{kcK%J7BV<6EMj0l!~gl$F)%PdFh9d41_oTXaSH=e$_|Ew
z{s$O7C>&*A5IoMnz;K+w_`q2P1_mf*I>(^EaGrqy2WDZoz`#Id{Ga(2!-xOR82<nN
z#_*q?iIIT;JO2M)i1Gh_CC2~%jTry`cVhg{@5ji%fQgwI0vLH1f*22+2xnwqK;Q(1
zNJa)E%*xQa4U}km_k+l2M*aU8jK3N385yAX-~T$s|Nr|K|No!I`2YVp#{d8KG4eAU
zV*L02BIE!64;lae|H%0NKO@us|AI{Q9Fj~A{;M$k|8K(dpV^Lyfq{JdpBY;Y^I+<(
z4`!;aPhi?&o5>XVzJzJT?>eT~&z(%pOubCp4ilLie$QmG>s`e3y?Q;9PR~}R|9OX)
zemy?RWF>o*>FtVpOia(7Fg2fl%k;J98&jz1KPHa{%*?C*3o!4TB*7ecLxEXhwL0@8
z4ISo}*Ugy~8Z4PDj@UCdfAwJYdLGEk<r>D!upyFJWO@Q~Qh6pbLr4yD$HgLM1(8x_
z1%Yzr11D;j6%`wp85kOvR|vN;v+#5>Gc<HDJFxUHA1Ii}tidsb`2fdsW)_AS%uEb3
znHd^pF;{CZVJ;F`#jH}fk@>gvUS@UUqs&jF&M=$KxXk?C;x6;WSx=dnG+r<ZuXx9t
zx&J5g`BY|>WBNQSg4x0>C)dle@SCWx1P5rbENU}gVOe0z!p3OE!ui66h2P$dh3|kj
zO9z)fi)&*DivU9?3*)gUmc)e#EDzPvS-f3xSs2b0v8*~?&GPO_E6e>;6Igb)&SWXE
zTF9cXbQw#I^I8^%jtwkq_B&WEbsu1<{C}3^z4c9&sP9i$-oJRya{Bjg7PDv;R!?3o
z*1yuCtRak&tnVz9SwnAVvzF?au-@2j&nmUjjrIEHAlCig;#nW0r?c{G$z?s%RKzOG
zQN}v=N<C}$g*MhGwjS0*feEaiN@lV?h+M!rzkfBW(B@674Gf!ES7q&HH848B8n@vD
zYt`IKtZNc(urgo1&&qJ}G3yM27p!4j?^ziNKCw;^{>~~Q|Buy4f{88R02><z13Mc>
z11DR905=;03lH0bH^OY<8j@_r&y?6A*frP~CTOv7d^cj_^s``V{o=sZ{Ku0mczrP2
z35f`{8i{x|9*!io`&qecB8&xWJSR%oOqSQO2`*@46HsqsJF3ycrsOn%O_*g0n<B$B
zHUWc~Y(kE6*%TxeurW9+WYcC^#>R7O4I2aVIyMG@^=wKE8`+c?HnRytY-jUi+RZj)
z!2z~{X~)?%yt}|QN&Gt7w9^mRKCwP$Q)PI?7NPus?VjpSwlhxu*(}a;u(NpausiVZ
zv(Gn`WY-XsWoPJ8VE-ko$<8%Vk6n|=h&@ceoZXSlnq7g#mc50=f&D{^8#@Do8#@b+
zCp!a+7rTz5KRcUHFnfq#1iLp^96J+3JUatZ0{a1mBz6XdB=#u`sqBmlY3#fA7qi!h
zRkLfWG_voW-NU}3ej0l{&wTdE$1B;t2&`x4eXy0?$Z;1t<NSl{L2bv`i%ie6ZxOh{
zF7*E%yZZST?8;7W*|QIPVP|Ul!Omv*m;JIlI|q*yFUP8dA{;^-;v6hYk{m^<3LK0a
zN*re#)Hwn?v^g#$8FC0Dm~b@6Sa2|CT5~YWvgZ(BaNuBJaO7Z6a^_%QaOP-WaN$r;
zaN}Ue@Z@-QI+$Z#LKH{d#3YVl`&^C#356U@mgO8K0@WM_9`zh-42>Kyd%HO<_DtgV
zeQh4cLxsg0FPv9#FtDxR@Z;FX!N9ti<HC`h9P+(~I97F@<aoI3A_tS$RSrgmYaDMC
z?{S2gJ>%$>ddsn0{s+fW;r|>=sVtle3^+I|HVJSZSC-(MoTI?0^irL({)rK1iIo-S
z<9-)Tg&7{4d>X!-s%pWUbN0t^dhXBQlrYNW3|Ujc>AACpQ%tgnGl8d#Q)z22=fU68
zIV0KTayma=%Bj$@g7YTFI!=a$^_&c$n>m#fwsE#F?&Ms^u!obuV;`r0!U4_(;Uk<4
z4#zlIcu#SPF`VUeU^vIA&~Sm%;qML3=e>_O%|c#s&Uo;iv%C5yryS>h&J+JQxjZik
za0#-BaJ}o5<1&|2<5JqC%k`z)g6r;l7p^y-{kd*^h~R2-j^lEAlgee^o6p6fR?L<2
ztCmagKqFUQQU})|o?foj>(jVg8E0{=EnmttGjuIiz@yDvt`6I|xYhP@g)BVGr9R^n
zmt@2RE@zW#TmnmOaeZQa$R*<Vl&eAM1s4PRYpyK}@43>PzH$i^{o-0E%D}Cfz{=g~
z$i*GPz{}0Rz{}0Z#LvybD9EjFLX^AUv@Ey6WF_vTEKP172|ezq3`X1y5~keUvuwFH
zt#ajNH1g!Gx)H>Egdvps>E{IQ!z`)XzE^U&Efy7XFI-s3T@+By%{8Ni`%g;`chJE}
z+!tMDa8D7K!+l6$0e6GrVr~JaW!wx5%eWb=R&hHpt>K<~X)8CQ{%-D#D-Llx>^;eC
zq;ihi_wsda?+f?1m6t!`UVGsk_av^*+zU&8bFW#;!t;`mi$|(~k4L^-l1FutJdgAO
zRi1_S^?6PynD8*Mne+4%+w;_id-GT`1n~Ulj^??*5XY0%kj&G;kjispVK$E@Lmm&S
zRxytXYdH_6Lluv*SObqzMk^0%LkEwbLN|}#q6s`K3=?@Kq)g-S^q9@lB)ov<s`3gR
z1Ie{K4VoKyCUI=#VG7yFBiON*hf!fa56gl>JPa&{c^Vpz@i4WX;!#RC$1{Q90uLki
z6&@vqYdlOsH+cjd?(j4-+~;AGdd$PXfE&+ec*)b^_KxR-&}SY7rY}5ySbp;`Nd4ov
zr^mtT!^6wV#KO<Jqd|mMZG{x?A1)<crXDq34J9q!2MhFhtNX2ZuN`;cHC6QDJ<b-$
zyYWX9uP}Q8Z)j3FZ{FkrUdgU9-d}l*ynMgAc@4xS@c#6e!K;6E5%25Tb-a@zw(z$2
z?c!bFv!7S5>ICnrx0iY4!fx|=9(%+)LGT%`O7I(As~2B*Z=Yx2Q)y)3`zXQ9=aekS
z7aSqM*Ci##r%<BIcUeV?&w7<Hp9rftpG1N+Uqq)PAA^T8AHxAxzKkX>KE{cDd`nt_
z`L5|i^R;y(@a;O1!B@^)z$d^|#OKmf#%IA$$tSq3fzQjKh3|ky2OmRVH=j#FKc9%`
z6h49CS$qrvv-z4B=JI(kE#PBiTFl4hu#AuSz$!il1_);2S<A=4u#QiGX#*d_giU-5
z4x9NHc5LTMytt1~(d{r_iP0%Oh9Bqox~#AB@w49LW9WX!cVYJ{z6PbYd<<;w`7+tR
z@i{d7;B#j9&8HCZpN}Dck^h1t8$XXKH@`p&AHP7e5I>`!D8B}i1V4v^6u$w34F5t0
z1%3u5MScecC4L44Wqt-xHU7t|4fq=jP550_S@9n`<jAjb%$;9&jUPWtLjXU+hG71S
z%#r+Zi3$9zPO1FNpL6-=%a-$Vxm5GNsA%R_i|gi}ba)a!gTiF~R)%T(j2mY0GdRrV
zpWwBC->G8>Kg+3={JlKu`B|55<7al-#lKK#KR*k@0sf4(WBiOfC;3xCFYs3iT;peA
zxX!=e-hF-sg$Mix9iH%ad%WUj40y}m!2E%qf#oAV1H(stmVht(u?K$hUugKxFR*|~
zfNMIZfWmG8f%U#p0*W^k1q9^O1QJ*@1w@+l1Ux#71g<T!7O=kIB4A(aFR({FLZHMm
zUf>RIx`6PcTmfy7Vu6L-RRX1Y%>tGey9GE6`UL_4CJS(MOcP+poF#C@bD@A2(^3He
zhvfod4XXuGo^BSn-nmCW;lO?YvEX9@leEtYFtl9|a9w;|;DP8}fo_I}0?a&51@a`{
z3NSqSC}3FdU4X6Om%vgnMnTOL?1Bsm9D)rJ+=6SWL<Bt^N(r(XDF|NMswMcs$WU-%
zyp`a>0DHlw3a)|-HC}=Z0zQHbMS+4{b0Y;;F~kbWJEaIJ@ns4cGUW;~2<8h;VJQ|=
zVki~la3~iPV5krjh^ZBHW^NKZ@uypG>B32Z4XjfIjaz05GO)}MY+#rx$dR{L&|7Pj
zpjzX4!5gc#3o>f%7WB<HBsjt4m>?&^3BitC=LH=YE(kU;ToPnpxFmS7{gz;~;zPk_
z8(#?~8h#MuX!s<^!0}no;m~)%%msf18I~~$Mf7qA8F}#u6~>ASafQkXEtsV&6t1fy
z#Ok0gw9Ly)NKwI3XrqC>&@p>YAt6Q|p+f=zLR@O0LP;)BLQMg2LJc#Lgd7@DgbuKz
z3o$fi3Nb6>2r)1~u!KdS5Cc<@(6W!!LMAQ^LVQK-LW@lMgdR+qBE;A@U5J5mrVs<m
zEFlJlSwgKH^Mx1~kg&r7p$3M9LJUys;ILSTfq?+#SR&NKuuO;n39~RP7h>pGDfEB;
z4x#tYj|%<&e^qGz|0hE4-+vPN|Cdqt|8D`|fBWTx|Nqw$u4gqDHes+5-rVXW%;xSP
zEav1Z%oGwREbt^ucv3@@Fze<-VWp5XVS~mj;bf-*VQz_1;cAOI;jhB&!cW=zg<q|l
zA?#x_Us!~7u`mPMQemcs<-#|m)(d;=-7akY?vU`bFQ<j$3$6$ssJkP)Y5#NKc+-!<
zF3)}l$Gb9$Fic<;adYGlaggN|v1StyS(qdxBK%K9gtb*ugvnA*#DmpHgoDRa#9zcl
zgn_|Eq{GBfL?XgXq};$yMD#|e2;bf~k>B2#A``muL>O8NMHmj2h{!&x6%l#cD$=&O
zSET6wOp)2ii$o^<T_dvZ=5~?lj{PE&xQ>YYyL>@plgxFIhMjjss>Gj(oNRg{B7Wzq
z$nXCwq79auq6tpCqCAnpqKy0!qW8^JL>Eud77f^FD5}h6Cd#gCBO3L?Rg}rlQ}hF)
zpD2@Ikf;MguxOK9q$rnFyl56{s%T4ej%b5Wz9>^ep{U663Q-}oT2b!>&7zqC9iogA
zx<wfTdPKWgCW<miOc8CcpDoJ4K3~+qX_2S^;}TI3zg40e8rF$2NNf-lIJ#A|k!go0
zQ`2ryO@aNQ0!#-*89EM&Dli-obz(Rs+Q4)|ltJ*6D8qxZqQWkhL|G!Pi8B4WC(3T~
zR8+&@rRa?5A4Q8<zKdQw#~>zrnnO$=iAPM{SwyT?T}Et8sEU}Lla|<|69!@p!KPvz
zOcr964z^-}6)s{rnqFcZ4ZdOwJA=eDRKmm@d7{MlIO4<<U6RBYoKnO%SklBYII_gp
z7;?l|g!07<4NAl&FqMnhMK_AIK4=#+)9e#-5tt|@qA^vhNnnOpn$tWnljbF2HjFF9
zq=Pq#v9N3w<K^2aro^*XERf-Vm=MDuF@^(2#2groiZOH?7xQ8`CB}e+zumts<{olS
zETiMG7ze`>u||exVhk|s@LY_6@r4)z0~9m86k}j}Eyls{MvMUmZeVyT#=!7a%z@#Z
z7y}Y^5cnX*z<|L2-~Si;`<++3{=ba)zyI3e|9@MF|NrkL{{L^J`2YPG;{X3wi2rA3
z5I-c;Dz3oNF3!f&EzZH-FRmgsMO=V!nm7Xk9{gaY_`m-v#Q*=_A^!jW3GvGME8_Px
z?u!3pcr0$j^Fmyx;k7si!y9p{t6#+<Zu}8H^oB)3VlKDD3VmS-g=rEJ0uN*)c&;f+
zD5+^kOy@V0U}G|oaM)xi5jw$MVo`&$gkXTX1j7t32^JO~2?hsW2?hqj_`vTliU0r8
zB>ufGk@$VTNrHpBO~N^;M`D}fWC`ov^Ce31S4wm$ua~G_w_D=+n`09056(&?L|&Gd
zw&12jKj#Apoy2Dn1`A$E@N&MFSf%w%!tcsIiE4jN$xTNDB)cudC6BF?mlQ};mK0%7
zm1J;Im*i>Cl4N4ik@WayD%qN1EopbnRr34eK*<GG;gak;F_Jt_k|YgSQY9O{<w!CK
z<Vi9x5XJ%w`H~C{1(FO51(FO7g^~;mg^~=6MUo5*IIu&pBm)B!vy@0OFqB9#G?Yp*
zFd$);GD!!9a!Cek*r7s_fdPs+DkT{hDkUHMZ;{;lZ=&S?{|hDm|KBKCU%y}S`R_B5
z`~TmT{Qv!x<p2M_B>%tXl&bqLF7^Gss?_&yMpE~GJ4pT8?<eKo5F*9EfCImemik|x
zB~|~wQtJD*Rw*`@PN}*blcl~|&yzCjSS&S7e6`dUh7D2)E4N8a6y77%z_3@!v*?J_
z=TGOQR2VKwF}7cmI^lF%>hj~KQXT;>r5IFROR+kCkYZr?Am!urO-h~Vw^W3{e<=kG
zCTTH7Hfhck+|nWpywVI%e85gbI)g!6ngI`f@Lx&#|8@iE+kb7PzcaW<Gk~yztF+#6
zKj{X>0BHt>0BHt=KxsyXAZZ4NU}**h2sU5{m0s~bLHhfaZ0XNy%cTD^H%KcmHc2xu
zkbpn5N&o&oRr>qfh0^E$u9M!+xJ~-7=w4}ciNn%djmM>(R-BP$;5sMG(Rfjsqv5hN
zN5fTV7Kt0u`xZZv7GiiJ%|H!2;hFTa%=gmfcYaF$&t{YPZ!0YG<By!o&(B&iEDWIY
z7qw*=7_?;=8gyjx_gl)md+sXp?|!h%qS$De8}_L(+y}B`S~&A$cor1NI4~5;2xL~s
z2t2Bl5!%@zv$U;Sh9Rn7h9P5;OefPc8P*B2WE!&O%Lp(mkYQ$6B*Os04U1)d%CD1Q
z=-VX2$bfD9aI?(6|A%D$|Gy;j|NkSI|NlS9{Qu7+`@ddLmVp63)@BIpeA@g*0&*Cp
zBohO}ao0bfA=AcMfp``MhH{l|SAl~sSb9ZTL83c40+|GQd6+tV|GfOjz`y_<|8A@m
z_%F}EP^R8kE8wrjz)&uSs%wQ8T-R;}28IbB_4-it`bL=QJv`v*yJ6~mq3Yky!Bn5&
z2vh$$4iq0C^XEd<ub+>pUIU?C52pSf14Ef&W39mZ|B!<@k$s(^2{XUB_74Mp%UcEp
zhHlqC{M!SV(mF$bb-M~QKj80l{ldT9^;fs=m&-po4>dnxY`w(aa+raEVFx2fx$l?D
z4|)UsrzwX10x44s4P{{9-yZs_@zJVP|NnPhOgs3JvGWk)DUg9+1;)lO1!vAc6)>SF
z;OB=a`0xR$fCX8>7O?qg2VZe?9%Q_j*6I5T>}COw>5SlGNj=1w1o*eJ2&8qoeu5k|
z`U#}GL!jH0$Du3qQwQ|iQGUY%uel)yj<SHl>*Qf*#P{w|2PKP*@@tqk$QQ^9GrnYy
zW_-b*&G?q#0^=J7U&hZ2ml!`WWHbI^xWf38;Tq!&##@Yc82>Q5V%W%RFXzJO!T6KW
z{XgO+HTtvm1@G{)^Op-a9w0GsM$Vm_!#S~e%kp05EzM6&ToNZS%_AbX<!cRl{FJ2H
zl&GST&?TV`VJ%_uu_udqX5NeZ8yOe1yY5Nd&$^kj&KJ5Sc_r0U&MMX}=_pxMa-$?Y
zeQVaK!o}GQ{ge9Rd(CFAC|cYe)M$}?VaD{1^&O#|T;;c>L`_YYsxr@EUckKAc?t9Q
z+GDD3*1xZJsdMc!>r3j3>8qITHd}kX<9xMJHNQ38nvD|!&IarZy3!dQdVI>XDKn;=
zpK^K1l_}4r7*Ca%sxVc3s_j(gsd-aNrZ&uJnbS3A@|<aNrq7u%XXc#!a}LZoIOo!w
z+jAbwc|50Jde!uW)7MR3F+F8w+RTcXl{2en*3E31**vpvroe28*^5#e=E+Q)I8SK)
z=b&jhF1gZq>3L20Z}QhAoQV6?UmxBUI<F<6g*ApdPB2z7_FC-b$aPUuX7#7eD+nz8
zUnrX?n6*EHJ*_XTI88MtsI0sERoT=T4eh!e?bQJ_Yx_#49!i}MyrWXoU(w&%f06%^
zfJp&d!G{A^1S<5lhtCS18vZ&wHX<sbFk)(iK@3kkZ#-XoQOxm}HSrno@$o`YsZlLa
zN1~<_zbbxLY+fQ-5>hfVJtyNw#=p!*Md@ily@xx`cB-e8r^x2mH-=<in^9Hpu|T0P
zII%rvZEj=U*1ReCv-52${VLfiA}gj;+^Jx$6swA>dQf_&s;q3%j8D}DHL*2w=d7uz
zXu8<^s^vhvT)kpna9_xDp83D0fKuoIqk~3=j1C(eF*<5=%;>n$38Rxnr;JV;JurS~
z{K)vR@e|{x#?OqO8^17qY5dCgwecI{x5n>`-y450{%HKk__OgB<FCfwjK3TIF#c)$
z%lNnPALGBq|BNGyBaNesqm5&XV~yjC<Bb!H6OEIMlZ{i1Q;pM%(~UEXGmW#1vyF3%
zbB*(i^NkCP%?(yeh@0jV!5m?iqnZ0W&!qKOi%l|XtU&#ny7nTyLWw4^rkv8xrK+<V
zI+xY7`W1v8n~1Ic;P<mnck<IJ)rovKFQ`o>xIM5x@IwH%zp_8Gf1-btf42W?|F8Zg
z0ZIYi{EGs%`K=2Sh`g1p6J!*$#eYW7?w~zEXM=79eGfVod_1@yJSTi(`26sB;rqhR
zg!4u4M0^eBjIfDtj&O}|i?EFdj_8PJiTDw*Hq0S1I5Ia<D`shkY^YgieyDHgtgty@
z-@^pLCBwzz6yr4Fvf@f&YGPKz%!@f3b2;X5%=4K4F)XnRu~M--v3{{pv8}O_V<*KP
ziai+{)UiIEEpkPwW06zQp19L-Z>IjAD%Hh4O?aC0v^CMoqhn)~;@?HqL`{n-j+z&>
zHtJT?t0?K{u;`*$&9gdZ_0H;>HFegqSyPK=7B48?SiH1&S@E^v55<3r9~Y~X@RhKa
zd@KG{Y*eCO;!@&NQdm+^l2p=GGQVU&$&8XsB`>DCrq55WPCt?UF5Nq0L55I<d`4Er
zo{Zla`57BC4raX05YD`qA((kN<4uNk=8KGdnVFdmnfaOVnMs+ZnUR@$GLL57%Dj`w
zo%J*`Eo)lVmaMx)A7ey{t%|2+r^o+m_+7$W8k3rts+RvF^>->~nr&KAT3lLAT5no+
zT3~N@Z*oz2(Z=M&q=cmAq$f#-lVp<BlGi8yOIAt|N_m?ioGy_b(Ri`({ERCzuFsg3
zIiuiC!LI_ILYczTh4Mvr3+AS}C5a~-Pq>`0A>n3%NTPjCdQMButeo7O6*<Rpw&r-|
zTI34mTIFiw2IQLLhUO;bF3L^Kjm}NU-I6;iFD9=jZ$VyrUSHnHyu*3s`8V=j<%Q*!
z=Evu6$={PNQovilQ(#lzT<KovRT)rOR5_z^LFJOlKjpv6l`0e}94n$KN-MTiJghLT
zjPLqgCS9&m-d4W4d~JD3X?|&QW^Mi5vS(#)$`nigRk~Ewm(43vpQks^V4lf5-+4jv
zg6D<I3!4`?FL7SdywrL5^GfC|DrG6-D3dL_Sk+q9SGBlmN7cTnd*ucV-81@T%$%`!
zMspi$dqn&B_DAj99akEB>%FS|s_UyKSHG|3tocwaTEkqUP-E59*0HMNK*xy=wa&86
ziS^A*dzzLv2{-?1VrY(Sc5QZPmTg|vJhS;<vsBBUX3ZAMmK81MTjsYMYWdz$(7L&G
zQR|IqJ6a#K-l|_$x20}R-L*Qddgth@Ue}<Ep1hvi9<e^PKJ~tUz8Mo1OxQc&#Dv2W
zZcX?<L24q;M1_e?6Sww1nb6krv2$bh?(XB=uev#V<a(H<U&vr9Zk*pV|JbC7Qy}d%
zq_fVo$~YQo|Ld1Yy=G{r{a?x7b`N}h`Tx2yj+d7~ZL~7zQRllr%@9|Vqs|wDm4c2s
zpUFVtQRizF7#PacU}v67bi4jw4fz8($$UjNs97NbY8!oft<qb@&{+GUSqajt`oS7>
zAEGKFAEAn@^UizA7@+MB4Q(}TD{UQZEo}pBJ#7<hBW+7<Rc&=`O>J9kJ8fNULv3ws
zeQjfHQ*ASCb8QQ4du=6cYi%2C6>Vj0MeS65MSUfGWqlQWRed#mb$tzeO?@qWZG9bm
zAAMhaKYf4w0R2GyApKzd5dBd7F#T}-2>nR?DE(;t82woNIQ@A21pP$)B>iOl6n$NN
zJ$-$B1ARk%BYk6i6Ma*CGktS?3w=v{D}8Hy8+}`SJAHe72Yp9<Cw*sq7kyWKH+^?~
z4}DL4FMV%)#i}wL<*FKeiz+1@y(*n5Wjz%=-6~Z*WgY!0!zzO+H9fm3qblPnvnmxG
z(<+lH^QuZ64Lx-|Rh=pw?JCVGttxFj%PK8Bn=0F?=sNqVY8{6v$10~P=c-^`mnuy?
zjVeVwMIF~Fx2lAy#HysKl&V^t<f>YI3!OM!OC2j6Yn{}pw5sT;^s0=i%qov6_o`T3
zT|Iq0Jw5L#uPV<fpDN!f1HFK%O#Q$r|0=(#psKK{4E^A$kgCusL!Iy{BRxYsW4*|#
zh$<7ks4BH;t18v1n5x*SxT-W=dmXcC2OT>-M;&`T%WCs#2R(~wt7_}&bX`Y1n`+x?
zyXwd~`)cEAqv}N6_$pI9lWI%7ysG@F!m5I*qADxB;;NFW(ki{0vZ{)z@~Q&;s;Xq&
z6y3@y8=dN^nyT6=#p=2$rE2BsRNW-qtg7s)oT}U^eI2dpXkG1U6CE=>b3F?^(`s8i
zqZ%7MYdzKK)S4*WjGDBX^qS0?tePl2Jso$Qlo}5mj~e$H&l*!5?;5WfpBmqqe0{$f
zw;KPNz?y)XK)oP6Go7Fsvl{c7Ox@%fKV9|eI$g^etC|8`>l&LHyBgaXUp@PpB3;nU
z8-=>TH6b-hRms)<I;qtjdMVXu)#=q))!Ee<)j8Fkdim9v)dkhL)%m)G)s=N6)n(O{
z)kW3i)n0me)uq+N)w#MA)k-xr)yg$>)rvLM)wR_@wNW)HHC5HBHEK2LHJUZvdKxu(
zx>_~bH99o`I#D{IdWJPYI@VRedd0d~`q?!(HTgBUHPLz@y6QT4H3c<AHJUnwH5xjl
zHRUzg`js^$HDxuSy2UjWHB~irHPtnWwY4=hH8FZhwPCs{wOTsix~jFYdg`?rwaT?>
zwc0vydRn!bwK}yq`nt6`Iu<qBwR*J%wfeOYy777mdb&D>wMMm(x~8=zwZ^q(wc&cv
zHCehbHAyuQda*TeHSsl(dL{aSItevyIyt(DH5%2L)#f@bHLf+q`r$gZI=VGJdR2A$
zH3l_KdhXR8)m}QD)!x-U)n3)U)dAJcdM<i?)gjfP)&AAN)j`#6dV$s6I^oq})vkJx
z)e+V1dNI{e)zQ_l)jm22)p6DF)xJ83)qXlAHKsM;wWT^LRoS`$wdMMOwb`{<dKLOP
zwYjx<wI#YadQr8}wIQ{kwPm_twO+OHI^MNDwZ65bx_-6(wWYNVwf42idQP>Dwa&FE
zdM>rDwW)e;wP||pwdr~uwTXJ>wHCFOwMlwbwbr$sIySYowRW{idJ(l5dXcr6dIhzG
zwMDhXwI#Lrwb^>Ab!v5)I_h;*x*Bzwb=q}#db)L5bvku=b@_VLx&?aG`bB!iIypKa
zb)j`mI$?F;b<R3P`Yt*Vb%pxndMb6nwPtl?dRaQbb=f*)waRtIH5ED`dXYMzHDNVn
z`lb5%b;Ww-b(VD&b=Gw@byjr_b@p|3b+&a*b&ho<daiZObuM*ob?$XWItjY*x?Xi2
zb>4M(`kr;AdOmfz`o4Akb$)e$bwPFNRn@gMwHZ3KwH3M%I(4;*bxL)Wx+>KMbul`I
zb+I}|b;fljb#XeTbyfQQdI5ShI)!z5)t<HGIz@HGbtQGBb!Bzsbuo2ub+L5?bvk-Z
zHGX=|HK96Db@6o-dI@!jb$L3uI!SevdIdW9IyJh%Iw3lFbuqfhbt!de`l)s4b!l}O
zb@_Ffb=h@lI$3oAx;b^Zb#?l+b#--$x=OlrI?B2#x~jSfI%>K#dK$W#x>~yGy4t!r
zx`{eTI=Z@gy0yAG)w<RC)dtlDI)>Hh`T=znbya$Hx`jISx(>Qdx{kU@)#bGnwYhrb
zx|Ow6wc$0<IuSKtdXY8Gx-Pn|x^BAex*ocox?Z|=I^Mbt)sEFp)y~x})fu|3)vh{j
z)jqnux|RB2Iz>AAx(2$2x<<Ojx+c1&x@NkCdgi(ox|X_Dy4Jcjy0*H>Ix)4ewQ;ra
zwJACYwW&IZwMn(fwJEi!wP`x(I%&1(wHdXUwOO_Px`DcCRn>Yyy2UyrI@NVGbq?CF
z^@R-N19Mge9x*Nk1_mw$4h|j$1`b{Z1_oXR0Yw1@1_l8J1`a_61_tanR1~^KlL^cE
zOl)g5L1F?@pmmXGoeXIP1_mVDAj81GKt0UJAj`mjgqa!S85odo1A_ts1Bv)QzYYTf
z0|ETsgyH{x7Y0TKR|W<g`2YV<hX3^`3=9pa3=9mZ3=Rxw3=9lu3@i-k3=BwEfgyu|
z0g4?Mvlti{P%#Hb4ub+iE&~@sJ_CbCAp-*g1T%3IGcd4}FfcGcFbhK|g8)Mr0|N|m
zlrtnSR5CDtutOCC3qv)707DG}0}^IosAXVasAXVdsAmvhXaF?{85$It7#J8Jn316w
zbX^W!+|U3TA8ch{aBOE_U}$IHVCZ0Az=j1n8CV#)7!(*l1AAzgv4??yp@)G%s-J;D
zVFCjK%R~kShKURv43ilcSf(&A2td}^g4Wt%!;B2m7#Kj<VLHPB22g{RbgaNIi-7?b
zR+!DezyMj}%b+lqp@Cr@14F}n20^5?y8;ZLCN*Kq$gqTg0SOB*EM;I2S<b+qu!4bs
z0TnketYlzdSjoW1w3>l|0SybRVPI@n$I!sAo<ZTrW(Ed^%?wNqTNxMxK+9jZF)(m!
zXHa0+!N3u;hk=0siVgNL<S-s);7~cnz`$^ffr;Tbg8<`61_g#w3=G&X<7oy5hBFL|
zpmoFo=NK3m&M`1DoM+%*xWK@maFKz50TpvFTw-7VVTa2M3=UTq7!<BDFfd$YU}3n%
zz<`V$t}`ew++g4kxWypAaGSxw;VuJ1!hHq?hWiWx3=bF>SROJkusmX5V1Qzd#|#V%
z5X`~wgu#K~DFXu<ZV-6Rz`%fs6&PMHFn}=2O9n=UR}2gwtneCisS<;Tz&i#8hIb4M
z4(}Nl7(XyDFnnO>VEDwq!SI=(gW)R!Q^R)#LxJB6Ol|)e7#N_~fq{{Mg^`hg0fH46
zm>78&SQr_gn1zXr(Sd=TkpYG|I2aokI2oB3xfvN4kT44mBLf2h3o!69G6?W7GH?no
zGB6-;LxBh*1A_=73xg;l0}MBaF*YztFfuS8;R#ZV3=G(D1A{ap10n1n!^p@W%h<pm
z$H>8?z{tRWzyb`4j0{MagF%T=fkBy(fef6$qQ=O;pvK6|puxz%puxz&pvfq}pvA}l
z#T*RUj0_Cgi~<Zgj0`X=pv&mMpvTA{pwGy_fCD!eFfuV1GBO}z2O~xX1|vom24lt+
z22(}`G~A$I&d9)k11nfCGBDu40+x&nOje8x3|5Q`4c3ed3O0-^jCPC+40enx4EBr+
zFwE)5*udn>$iM)_3NDNc3@(fe4z7$X0v?PU44#Y(89s~*4EQkzBXm7{gFmAJLjWTK
zLjYp~Lm(pqM-U?eLl7fFQwSpi0~9lcGBPlPGBP-XF)}bfFiS%OBLf2zb3oV2Pl;h<
zU_f9-hFC_X2?>l$42g`~3@MBZlIe^LoSBRa44I5v3OS4n9J!1N40()<pmp?3g^Vms
zC5#LVC5#*lrHl>?WsD3U98kfiz);D^AX3e!z)-`;;84rRz){D@#8A)3fQB6y8W<U%
z*ny#uk%6I+(SV_ukpUlOY++<zXkip!Xk}zT!U_y+j2sN@j0`Z$(!t2UfP@t~85J11
z7#R-qFfuSeaDzf0BLhPp;{=8Yj1H`m85tO-Fe)%iW%OW}&d4AzgOPy&fteU)GBPmF
zW)xtZ$0)$GfKicSF{2T~GDZd@%%ZS@QGj73BLg<fv5Jv_0SOzdVQgSn%gDm8j<LyM
zBO?RLCPqhwEsP2bTNyc+wlgv??qF=-+0DqnfWQt6dl(xS_A)Xs>}7Ol*w4tou%A(Z
z;Q%8G!$C#?j>C)!3`ZCR1dcH>FhH@uaYhD)<BSXjCm978PBAiou)t|X1_mU|a)yzC
z;S3{#<2gnK1|)27fsujX0wWX4B}N8;%Zv;HR~Q)`t}!w&5P^GcGBPkgal<V}28LUV
z3=Ov#85kg#jo~gM1Is-|4u<=T4Ga$$8yFrkGJr7SBSr>>M~n<ij~N*ho-nd7JY{5H
zc*^L&@QhJ_;W;A%2(!FkWMII=25fH_6B*t!GBJE$WMKHf=)mxik;CN+qoc|X#s-I9
zj0z0D83j82F}5%;Fo`fQF$pj*GqEtRFflQ*F*z`DFflZ8F)_06FtIT3GBJQKBOen3
z10NFu2R{=Bg8&l)g8-8gi!c)d0|YZMh%gCE5NBdwKwuUI2_^<4%*Y_g#K9oNB)}-c
z#GoL{#K3^SEDUl?3=DEi4h;%S3=9fP3=WD+3=BwEL5ayhM3sqwLyd`nMV*O(LxYJy
zK$D4q0TVlLXfrV|XfrWr=rS=dK(T`!69a=D6N7{SlLLbx69a=G6Dxx;69a=W6BC08
z69bzW69a=8lLCV|69a=elK_JS69a<<lLLb#69WhfSTQj%STiv&STk`j*f23bF^7U3
zQ-_Na6C;B&69a=Y6N`W=69a=Q69c0glOTf!69c0s69WShcJN|iVDMscVDM&QfMNj#
zA0`F|UnT|y2v%_LXJTORXX0Q8U}A6#Vq#zjVqy{qVPaswfnCCw7zDzZ7#PBt7#bp&
z8W<v(I2fXs7|?M;G!rXBEE5M)Jd*-L0uv)cA`>G+5)%VM5)-3B3KIhZDs~V^V`5-H
z#R?4ROblpPfFXm40ULJ6WD=0bVPas&VRB%|WfBm`XJTL~U}9h?WMXtEW@2D~VucbW
z1_mfrC}m<`C}m<|C}U!PVn&8?CI+@jCWeM8CI$vn%*as9#6ScVV5nhY0AYt(CI$v5
zW~yUiXsBmmV5nzeVQge#V8D%;7@C+Ekgx+|3ljrF3ljrND-#0)5@u{;;$UcJVqj=z
zYGCMKVi4$LVqieR4qZ%)4Bbo|3cXAW3=nL<(9gu6FoB7I0SPlrWO87b#KZu_ObnBm
z7(h5+DiZ_4R3-+NX-o`E)0r5UW-u`@%wXbRn90P*FpG%+h7ZhPVql!h#K16@$)#Zd
z69dBnCI*&;ObrZ+m>7_-0K;M?1|-bLu!M;Lidh(zGI202XJTN0U`B=&Obj?M3&Tn#
z1}NrWSjEJE2P-(NVParF!;EX07#JX!kzpMZ1H(Ed4u<ti3?SUFfr)`(0}~6wMkWRj
z=Ger<z_5vlL18l!0|NxJFl=FBfMN%RtxOFJ+n5+yKsSZ%U}9w4#l*mXi5(brGciE1
z0>d6A28KOM4h(yl7#a34F(6?Mg#%0i3<sGQ7!EQqF&tuI0AZHHObiT2xZwyB0|S+@
zz)>b9j^j)X3@4ZvK$ztu69dCZCI+TcObiaEnHU(*aN;>828MG?4h-j+7>K}(3>TOf
zpt!B!3KIj%RVD@o;;;k5HKs!hH<=t5ZZRn^+-BkwxW~l8aG!|*87n+sVqhR0Gcr76
zVqtj1#K7=~NrB-p69Y14dBViNKm=xd%EZX{oQXl<1rrD3D<%e(*GvKoZ<rVw-ZC)=
zyklYz{m8_~@QI0m;S&=J!)GQ2JlKKZ3ljqc*a2n#<yR&K2Ey2h@dpzF0|YlT{9=+|
z`OD<M@Q;as<3AGv!+$0Q0S4wq1}0_>1r}xw23BSU7B*%^2M%Tf1}<g>Tv&jcnW2G)
zxq*R~nS)b+nSlWbI|wo}FyO(ALd*;d5X{0L%*=p>1sFt_85l&E8Ck`d85kg#$x(`#
zfdL6KN;5Ms5P>~pnN^q+m^l~}nHfO1L5cYygBmjf0UW@f!OY;T!^{(4z|6ov9%f-M
zWadaRWj0{4V0K`zWM;sD85yma6&P%o9T;qx9T@DG8K{T_Ssa;9D7!N=Ft{@_G<YyG
zGk7txaQHBDg4fsiF*7hg@C1iIW<iEvW=4fj=2)c|X7z?dW&wsIW=4i&W+sLdW(G9O
z#E{C&0Kx)k%q$G)%nTeE%nS?}%uEcK%nV4FjUk(v0Sz}WK;~MTYeg9O`_7`Qjr-5Y
zz)&uWy2_2C8n#O8<x)^brd9xyZp+jfYX$Z*V=6yU1y>I0H-Xly$uclNl!GpZMl;=`
z1g_j2YC32M9msTh15DE`3gF5?qXQt*4WXw0H^x+cA|I~&B?AKkNI7W19mw?mHJHjh
zGU3WWv&talwb1o;=O<yVx8p!42Mzgw*Z)n1s>imT??eX7_}3Wg`TDV}=j%YI$5_wj
zk7YgIngE#j!)raCMhR$2ot*W2o!=m7z1vlw!9t@n0F>tIyt<*Q1%5Zw{#GcnZm9k3
zP;Pq6^@nzs>+cTNpIJ=3u0I00U3mh!T{!|?B;Ei2zxjwj=YdYwKcH|e;pz_k(|O_L
zKJdB&k$`Sj0fb`DCN#y|5XGP&-w9w>XqCo;T@i%p3af_N-*x3CS&SfIgn4&e;pTm5
zuKmJT!u>)@n+;kEf!ah2uPqG^yf&QxTE7Tc%Bb1xisq;V_uz*70Xye4D_H%>!-()f
z)3WypT+5H<+8+!h#?7@qm`Ye*%+X?F=yv4+g{BB-Ic0-|LK!!N;ZV->nx{MTN9To?
zZ43+yo!`Ko3FvkG4++RrgkK<L+Bet!U@YN$;i1I_E)T&s+-o(|{;w-n0f&)Tw=2&v
z1}%{BU7`PB%Qkf&{#2cS;Zfz^2v>t0@|xk~VYEpbBrcO5iyx~Wn;*ZQke|4pyq|)f
zqMx##nxCeho}a#-p`Wpzsh_!@jh};`qo0$Xi=UgHmtUY?s9(5WlwY)8l3%i4ieIW<
zx?hH0mS47Cj$f`{o?pISkza{lsb862xnG4}rC*g_wO@^2tzW%ggI}XxlV7u6i(ji>
zyI+^z1ixv1)BR@p&GDP-H_vae-zvZLejEHY`fc&s=C|E%hu==WJ$`%r_W7OgJL7lW
z?}FbYzgvE{{qFcZ@O$L<%<sA1OTV{%@BH5Tef0a{_rvd}-!H#Ee*gR!{F(fj{aO53
z{n`B4{W<)({dxR_{Du8R{6+o6{AK)Q{T2O{{WbhG{dN3x{q_6}{f+%i{muO?{jL4&
z{O$c6{2l$B{9XKA{oVaN{5}1>{Js5s{Db^M{KNbc{geFD{4@Ns{ImUY{qy__{fqod
z{mcC;{44#d{A>Li{2Tq7{9FCo{M-Gz{CoWS{3rNN@}KNK)qk4*4F8$_v;61y&-0(}
zzYw%G(tox8TK^6H8~r!=Z}#8fzs-NU{|^71{=58l`|t7J>%Y(cfd4`NL;lD7kNcnS
zKk0wk|BU}x|4aUt{jd06^}ptS)Bm>r1OG?<PyC<yKlgv_|Hl7=|0n-1{$KsS`G5ES
z>HpjRkN;o)|NaaCi~&pm%mFL`tO0BR>;W7BoB><`+yQ(60s(>n!U3WIVgcd-(gCso
zasdhfN&(6NDgo*N+5!3j1_6cvMghhFCIO}aW&!2_76Fz4)&aHw_5lt7jsZ>qE&;9q
zZULSFUIE?#z5xLNfdN4Q!2uxwVFBR*5do0_(E+gmaRKoG2?2=#Ndd_LDFJB#=>Zu5
znE_b=*#Wr$c>(zW1p$QtMFGVDB>|-Y6#<n2RRJ{twE>L*O##gTEdgx-?E#$uT>;$z
zJpp|I{Q(mKCI(Cjm>e)AU~0g$faw7<0%iux3YZ-*Ctz;Cyny)u3j!7fEDBf>uq<Fz
z!0Ldt0qX+R2W$w~7_d2DOTgBEZ2{W@b_DDU*b}ffU|+!gfCB*s0}cfo4mc8UG~igk
z@qiNnCj(9eoDMh>a5msvz=eQ|0ha<U2V4ob8gM<}M!?O0+W~h1?grcoxF7H!;9<a{
zfX4w(0-grE2zVLrD&Td%`+yGt9|JxGd<pm#@IBy1z|VkR0e=Gi2K)>7AHWdE7|0aJ
z9LN&L8psjI8ORmL6UZCL7swwd5GWWZ94Hbf8YmVh9w-qg87LJf9Vinh8z>hjAE*$h
z6sR1i5~v!e7N{Pm5vUoc6{sDk6Q~=g7pNa-5NH@^6lff15@;G|7HA%55oj4`6=)r3
z6KES~7w8n|9_SV56X+M{9~clA6c`*B9vBfA85kWH8yFWDAD9rB7?>QG5||d49+(-J
z6__7b6j&8l7g!(I9M}@r7T6xx71$lv7uX*-A#h^g<iII`GXiG?&JCOwI6rV<;Nrk#
zfy)C|1g;ER6}UEVUEr3$9f3OocLnYX+#h%_@KE64z@vdD0#5~=4LlckA@EY*<-jX}
zR|BsFUJtwxcr)-;;GMvGf%gL+1wIaZ8u%>mdEkq{mw~SW-vqu3{22Ht@JrzLz<+@(
zL99WXLEJ$+LHt1iLBc^IL83u2L2^OzL5e|2LCQg@L25zjL0UmNLHa?4K}JC)L8d`A
zL3TkdL9Rh=LGD2wL7qY0L4HC0K|w*mL7_q6K@mZbK~X``L9s#cK?y-gLCHZWL1{r5
zLD@k$LAgPBK?OmDLB&BOL8U=uLFGXeL6t#OLDfMuL3Ke5LCrxeL9Ib;LG3}EL0v)J
zK|MjeL485}K@)=}1x*Q>8Z<3vdeDrZnL)FH<^(MXS{k%0XnD}Op!Go;g0=*04cZp8
zJ!nVJ&Y)f3RkeGA4g?(xIuvvy=xETfpc6r-g3bh;4LTQeKImf5<)AA;SA(tx-3+=F
zbUWxy(A}VWK@Wl+20aRT9P~8kS<v&K7eOzBUIo1ldK2_E=v~nJppQYHf<6a*3HloJ
zE$DmDkD%W{e}eu7F$OaQGY7K-vj=kqa|Lq;^91t+3kC}X3kQn?O9V>?%LK~>%Lgk3
zs|2eCs|RZYYX)lv>jdit>jxVI8wMK%8wZ;Nn+BT&n+ID2+XUMNI|Mrgy9B!hdk6aj
z`vwODhXh9iM+Qd+#|EbcX9Q;j=LF{l7X_CER|Z!H*96xF*9A8OHwHHcw+D9wcLnza
z_Xkf1o)|nScyjQR;Az3rgJ%ZM4xSS{FL*)l!r&#r%Y#=1uMS=lyf%1!@P^=x!JC3N
z2X6`98oWJtNAS+zUBP>T_Xh6^J`j93_(<^4V9<KxbHV3>F9cr-z8rit_*U?p;Jd;1
zf*%Gy3Vt5^CHPnHzu^DD3?WP*tRd_n+#w<%5+RZyQXw)SN+BvCsv%k-1|h~FW+CPw
zRw1?__92cTP9ZKKt|9Iro*_OVz9D`g{vm-OQ6aG*aUt;`2_cCg$swsB=^>dRSs~dW
zIU%_rc_H~B1tBFNl_6Cjbs_a3jUmk;ts(6p9U+||T_L?86GJA4Ob?k6GACqS$o!B6
zAqztmg)9wO7qTH_Q^?kkZ6Vu3c82T<*%Pua<Z#H*kW(S2L#~C~2)P~dAmm}lqmaiT
zPeNXYya{<9@*(77$d{0>A>Ts2hx`cn8S*>iUkF1eQz&yNODJn7M<`b)cPLLNZzx}=
zP^fUIXsB4Ic&J3EWT;fAOsH(AT&R4gVyJ4UTBt^-W~g?kZm3bHNvLV4S*S&*WvErC
zb*OEqL#R`zYp8puN2qtGPpEIGU#Nd*U}#WiaA-(qcxXguWN1`qbZBg7Txfh~LTFNG
za%e_qW@vV3erQ2xVQ5ikacD_sWoT7sZD@UHYiL_&PiSvwU+9F;NuiTNr-n`oogO+X
zbav>x&;_9jLl=cE4qXzuG;~?$iqMszt3p?Yt_fWmx-N8m=!Vcup<6<?h3*L56}l&M
zf9QeGgQ15)4~HHLJsx@@^i=5S&~u^ZLobA04ZR+EBlKqIt<c+{_d*|pJ_>yv`ZDxw
z=)2Glp&vuPgnkSC5&ARqSLpB1KcW9anZlUESi)Gt*uvPuxWc%@c*6w31jB^Fgu_I_
zM8m|w#KR=Rq{3vvWWyA~6vLFlRKwK5G{Q8)w8FH*^uqMR48n}VOvB8>EW)h9Y{G2A
z?7|$v9K)Q#oWoqgT*KVL+`~M=Jj1-gyu<v%0>T2rg2IBsLc_wsqQauXV#DIX;=>Zc
z62p?iQp3{1(!+AY^1|}N3c`xQio;66O2f*-D#9wms={i+>cZ;78p0aGn!=jHTEg1H
zI>I``y284{dcu0cCWK84n-n%BY--rFu<2nl!e)le3Y#4^Cv0xmys-IU3&IwLEecx_
zwlr*6*z&LyVJpK{g{=--6Sg*NUD$@OjbWR@HivBq+ZwhlY)9D6uw7xh!}f;l3)>%d
zAnah+p|HbYN5YPV9Sb`ib|UO#*y*q{VQ0h6g`E$(5Oy)_QrP9Nt6|r|ZiL+oyA$>}
z>}lAuu;*bf!d`~G3VRdwF6@2Sr?Agq-@?9!{RsOV_9u)XoH3j!oHd+1oI9K+oHv{=
zoIhM3TrgZHTsT}LTr^xPTs&MNTrylLTsmAfTrON8TrpfJTqRsJTrFHZTszz_+$h{6
z+%()Q+&tVO+$P*M+&<hf+&SDO+%?=S+#}pG+&erdJUBcgJTyEkJR&?YJSjXmJT*K$
zJSRLaydb<VyePaRyfnNbyfVBhyf(Zpygs}kyfM5zyd%6byeqsnyf3^zd_wrd@G0R_
z!>5H$51$b}GkjL~obb8f^TOwcFAZN2zAAi8`1<e-;Tyv@hi?tv7QQ`vXZWu0-Qjz}
z_lEBa-yeP;{9yQz@T1|!!jFfa2tOHqD*R0N+3*YD7sD@yUkkq;emne5_`UFl;g7-}
zhd&K}7XCc^Mfl6`SK+V2--N#l{}BE${8RYn@UP+D!oP?A4*wJWFZ_QvV+3;qO9X2K
zM+9dCR|HQ4Uj%=IK!i|)aD+&NScG_lM1)j?bc9TVY=nG-QiO7ZYJ^&ZdW1%VW`uTx
zPK0iRUW9&xVT4hHafC^PS%i6nMTBL9RfKhfO@wWPU4(svLxf|56Lgn`dxS@XXM|UT
zcZ6Sre?&k;P(*M<Xhc{<ctm7GR77+{Ohjx%d_+P-Vnk9zazsi*T10w8Mnq;rRzz+@
zUPOLGK}2ChQABY>NknNxSwwk6MMPypRYY|}O+;-(eMD14OGH~ldqhV>S44M2PegA-
zUqpYzgoud|QzE8DOpBNvF(YDj#GHt^5ep&~Ml6b09I+%~X~eRK<q@kQR!6LfSR1h}
zVtvGhh>a1OA~r{CiP##kEn<7bj)<KRyCQZ+?2XtLu|MKK#G#185l149MI4Vf5pgo&
zRK)3sGZAMa&PAM$xDatE;&Q~5h-(qoBW^_8jJOqXJK|2n-H3Y;_ah!eJdAi0@i^jX
z#IuO!5icTMM!br68}UBkW5lP3FA-lOzDN9s_!aRx;!niih<_3PBN!qXBbg&vBiSN3
zA~_?uBDo`ZBKaZ(A_XIbB84NxBPAlGBV{AyA{8PPBb6eRBh?}`B6T7SB8?)ABTXaC
zBCR8BBkdyXBOM~0BV8liBE2GgB7GwRB7-7>BO@cDBV!_CBjY0DBNHQ&BU2*NBGV%?
zA~PeiBC{iNB6B12BJ(2)A`2snB1<F7Bda2-BWoh-BI_d?B3mOnBfBGeBKsoyBPT>o
zjGPiVHF8GetjO7sb0X(P&W~IWxiE53<g&=+k!vE?MsA4Q7`ZueOXSwbZIRm}cSP=r
z+!MJsa)0E3$b*rGA`eF%i98y4Jn}^3$;dO2XCu!=o{zj5c`fp0<n73Nk@q7XL_Ums
z6!|3bS>*G`myxd`Uq`-;d>8pX@<Zgu$WM`<Bfms`jr<n*J@QB7ugE`<e<S}zGDI;&
zaYb=Q@ka4Q@ka?n2}OxSiAIS<iAPCBNkvIV$wtXVDMl$psYHQJv)72yiqekKiPDYI
zi_(uWh%$~cjWUk{oj-3CWgTT3Wfx^1<rw7@<s9V_<r?K4<q_o_1vxj~KPn(9FbZ;F
zd{|U?6zGij=qS+1@St<y6QUBMlA}_hQlrwMGNLl0vZHdMa-$&U`W8kNMHNR?L{&yr
zN7Y2tM%6_%L^Vb=MKwpYM72h>MYTtDM0G}WMRiB@MD<4XMfFEbh?*ERIciGO)Tn7u
z)1ziY&5W88H8*Nr)cmLgQ46CMMJ<k6616mHS=92V6;UgrR!6OgS{t=4YJJp(sEtuu
zqP9hCkJ=fvD{6Pto~XT1`=bs-9gaE@bu{W&)bXejQKzC#N1cs27j-`BLe#~m%TZUO
zu1DRBx)pUh>TcA%sQXcmqMk%Ojd~vSBI;Gto2a)@@1ovEeTe!L^*QQG)YqtQQQxC}
zME#8V74<vnPt@P2e^LLV7@`@YnWCAaS)y5^*`nE_Iik6uxubcad87HF`J)A*1*3(c
zg`-8HMWZF6C8MRHrK4q{WuxVy<)am%6{D4+m7`UnRio9S)uT0{HKVnnwWD>w=ZEV@
z8$=sM8%LYM&j+`Twu!clwu`opc8qq4c8+$5c8zw6c8~Um_Kfz5_Kx<6_Ko(7_KyyV
z4vUV9PKZv7PLIxr&W_HF&Wp~EE{ZORE{iUYu86LTu8yvWu8XdZZi;S;?uzb>?u(uf
zJu!Mx^pxmn(etC1N3V!p8NDWYZS=b6_0b!nH$`uc-W9z&dQbF$=!4ORqfbPij6M~8
zI{Iw%x#;uJ7o)F4UyZ&NeLea{^v&p7(YK@TL_dgr6#Y2*S@iShm(j1HUq`=*ejEKh
z`eXE`=+Dt#qQ6Fei~b({H~L>RLkv?4a|~+?dkjYmcMMMqZwz0IK#Wj~aEy42WQ=r-
zT#S5-LX2XJa*SGxMvP{RR*ZIxZj4@xevCnkQH*hnX^dHnd5m+6ON?8LdyEhG4w~SY
zkeINT@R*30sF>)On3&j@_?V=al$i9GjF`-rteEVWoS590f|#P1;+T?{(wMTC@|cR4
z>X@3C+L*eShM4A<mYCL<wwU&q&X}&4?wG!q{+LNIlVhgF%#E2BGe2fQ%)*!@F-v2X
z#Vn6m5wj|0UCjEJ4KbTyw#00U*%`AdW_Qe<n0+w^Vh+U|jyW20EarI3iI|fyr(({;
zoQ*jbb3W!m%*B|?F;`-)#$1cJ9&;n+R?O{~J27`-?#0}Xc@Xmmyf^P<%<GspG4EpD
z$9#<W6!SUeOU&1pZ!zCve#HEY`4#gg=5NfunEx>hv5c`Sv8=Hiv7E77vD~pdvAnVT
zu>!Gzu|l!Jv7)i!u@bS8u~M-zv9hu9u?n$@u}a`uY&2rEVzpy+V)bJUVhv-BVvS=>
zW6fgCV=ZDWV?npm*u>h$I>b80I>kE2y2QH1y2X0LddB+3f^MP-hz*PliVcnpi4Bbn
ziw%#BjE#x~-69hon-H5An-rTIn-ZHEn--fMn-QB8n;V-KTM%0qTNGOyTN+yyTOL~x
zTNzswTOC^yTN_&!TOZpH+Zfv%+Y;Lv+ZNj%+Y#Ft+ZEd#+Y{Rx+ZWp(J0W&r?4;Pq
zu~TBF#!ic!9y=p;R_yH9IkEF%=f^IHT^PG4c5&>I*rl<{VwcCRh+P@GDt2}3n%K3m
z>tff(Ziw9&yD4^a?3UQAvD;#I#O{pU6}vljPwd{<eX;vv55yjfJrsL5_DJlp*yFJ$
zVo%1Niai~BCiYzH`Pd7w7h^BQUXHyIdo}i2?Dg0iu{UFH#omd%ANwHoaqN@WSFvwm
z-^PB3{Tll%_DAf`*k7@~WB<hdk7bBsiDQrBjN^*qj^mBvixY|yjuVfQi<6I2h*OMH
zic^kLiBpZ!h|`SIiqnqM0pE3F6lWY~5@#A`7H1h}6=xS`ALkI~80Q@47Uv%45$74_
z73Ur28|N429~Tf87#9>592XWB9v2Z885b276Bip7AD0l99G4Q88kZKA9+wf98J888
z9hVcA8<!WCA6F1p7*`rs9#<Jx7uOiq6xSTr8rKom8P^ln8`l>%DQ-sG?6|pc3*#2W
zEsk3fw<2z3+^V?Mackn%#jTIq5VtXIQ{0xgU2(hP_QdUt+aGrz?qJ-ZxWjQr;*Q20
zi#r~7BJOnDnYgoY=i<)CU5L99cQx*M+>N-Kakt{`#NCa%7k5AILEOW*M{$qip2R(k
zdlvUR?q%HTxHoZc<KD%+kNXh!G44~`=eVzNKjMDI{f_$+_cx9;o-Lj|o->{YyiZvm
zUMOB9UMyZRUMgNDUN&AXUNIhY54%ddM!a^sPP|^cLA+7CalA>qX}npydAvoub-Zo7
zUA%p~W4u$mbG%EuYrI>$d%Q=yXS`Rucf3!$Z@gc;e|%tkNPJ{`RD5)NOnh8?e0)ND
za(rrhdVEHFc6?rZetc1UNqlL1S$su&ReWuHU3`6fb9`HTZ+u^TfBeMw$?;R-r^U~T
zpB+CpeqQ|i_yzHc;ups+iC-GOEPi?X%J|jsYvR|(Z;0O*zbSrm{FeA_@jK#o#_x*X
z9ltMrfBb>?gYk#rkH?>gKNWvE{#^X!_$%>O<8Q^^j=vLsFaCb~qxi@1Pvf7(zleVs
z|0e!@{D=5Y@t@<r#D9zb9{)4`SNxxN_5_Xu&IIlRo&<pe!35z1@dSwksRX$M`2?i|
z<ph-kodn$ky##{<!vv!Q;{=lgvjp=5iv-IAs|4Ewy99>>mju@Yw*>bDj|9&IuLPe2
zzXbn;z=Yt0kc6;=@Pvqj=!BSrxP<tGgoMO|)P%HzyoADpqJ)x!(uDGax`c*=#)PJX
z)`Yf%_Jodvu7vJ{zJ&gS2?-MuCMQfyn4T~rVP?Xdgn0=I6BZ>bNm!b&JYi+Rs)Th3
z8xl4rY)#mfusvaC!mfn93HuWECmcvPm~bfJaKe#<;|V7cP9~g5IGb=T;e5h{gi8sR
z6Rsp&OSqnJGvRi^y@ZDej}jgyJV|((@G9YB!l#6<3EvZbB>YbJlkhj;U&8+crbOmM
zmPFP>_C&5k?nItMfkeSXp+w<CkwmdX@kEJ4$wcWynMBz{xkSZ8r9{<4jYQ2vtwfzf
z-9)`a{X~OA!$hM*<3y80(?qjG^F)h8%S5Y0>qMJG+eEuWheXFjr$pyOmqgb@w?y|u
z&qVJ;-$eh!fW)B0;KY!`u*C4hh{VXmsKn^Rn8dim_{4<7#Kh#pl*H7;w8YHBti<fZ
zoW$J3yu|#(!o;G);>41~vcwATJ-gM3HHo!}b&2(f4T+73O^MBkEs3p(ZHeuP9f_TZ
zU5P!3y@~ya6A~vTPD-4dI5lxv;`GEBi8B*tCC*NqlQ=JNe&T|}g^7z27bh-BT$;En
zaaH2##I=d*64xhgNZgpXDRFb+mc*@z+Y)yq?o8a3xI1xA;@-sli3bu7CLT^al6W-n
zSmN=-lZj^%&nBKrJfC<W@p9tT#A}Jy6K^EmOuUtNJMm89-Nbu|_Y)r^K1_U+_&D)N
z;?u<Ei7yggCca91o%km4ZQ{Gc_lX}8KPG-k{G9kD@mu2e#2<-26MrTCPW+SjH}PL0
zLlR>WQxbC$OA>1mdlF}oaFR%pWRgshY?54(LXvWlT9SH_2KY8%-6Z`agCx+c!KO)O
zNft?#NmfbLNj6DNNiIpQNp4AAN&ZOzNufz$N#RM6Nl{5LNwG<BN%2VuNr_2GNhwLG
zNf}9nNkvH|Nu^2UNfk*|N!3ZUNsUQONzF;ENo`5(NgYYuNj*uuNqtHENfVN$B+X2k
zlQcJJUee;EWl77ERwk`VTAQ>kX?@a$q)kbileQ#nOWK~aBWYLCzN7<52a^sbolZKR
zbTR2_(%qzcNe_}9COt`dmGnC4L(-?DuSq|WekT1&`klm(%$&@U%$m%W%$3ZY%#+NU
z%%3cfER-yqERrmmES@ZpESU`2Rj!__nXHqno2-{?kZhQ2oNSV8nrxPAo@|k9oothA
zmu#QxknEW3lI))Bk?fTm2)mCX8F33oOmb{;LUKxSYI0g~Ml$G5_nhSX<bvd)<l^L#
z<kIAd<jUll<l5xA<oe{s<mTj-<ksZ2<nH9&<cZ0Xlcyw4O`e`SGkI3>?BqGgbCc&K
z&re>Myd-&9^6KRE$s3b5C2vjMmb^20ck<rk{mBQC4<;W<KAe0s`FQe)<WtF~lg}hy
zOun3aCHZRd_2e7LH<NEA-%h@hd^h=i@}uM@$xoA?B|lGok^DOOP4c_s_sJiUKPG=p
z{+j$f`DgO4<lo7ElK&+$r?8~3rLd=Pq;RHirSPWkr3j`7rHH18rHH3Uq)4VnrO2kp
zrzoW;r>LZ;rl_ZAq-dsSr|6~Vrx>IdrWmCdr<kUgrI>^7ZMRObNwG_DNO4MWPVr3f
zPVq_cP4P?dPYFl~ObJd2O$kd0Pl-&4N{LR1Nr_DX-IAV|l9ZC1l9G~|l9rN@l9d9w
z&pa<BKcyh0Fr_G^IHe?|G^H%1Jf%9NCZ#r|E~P%DA*C^;Ii)S7Bc(H?E2TT7C#5%~
zFQq?aLdxWnDJj!aW~9tYnVm8xWp2v+lm#gZQx>HxPFb3=EM<Ahij-9;t5epeY)sjd
zvN>f-%C?l9DZ5klrtC}EpK>teaLSRCV=2c|PNbYnIhArc<xI-?l#3~sQ?8_3O}UnG
zGv!vw?UXwycT?`CJV<$%@;K#b%JY;LDKArArMymglkzs@UCR5E4=Ep0KBat4`I7QA
z<y*@4lpiTSQ+}oVPWhAaH|1Z-{}jelrc~xsmQ>bMwp8|1j#REx?o^&s-c-I+{#1cf
z!BpW?kyO!Cu~hL?$yBLS=~S6i*;Khy`Ba5e#Z)EGt?l5O+CewAYo+R>>ZTf`8m1bh
z8mF44TBX{g+NL_BI;J|MI;Xm%x~00OdZl`&`lkA&2BZdoZ)FNkjYy43jY*A9O-M~l
zO-W5nO;628%}mWo%}vcq%}*^%Elw>>ElaIPtxT;-txl~;txc^<txs)8ZA@)SZBA`T
zZB1=U?MUrR?Mm%U?Mv-Xos>Eyb!zIg)ETL>Qs<`5OI?t<D0Ok_veXr+t5Vmbu1npR
zx+!&Y>Xy{4soPSwr|wAImAX51U+VtU1F45nkEfnUJ(+qc^=#^e)QhQ?Q?I06O}&wN
zGxb*L?bJJ|cT?}B-cNm)`Z)DT>Z{b(sh?6mr+!KOn))O4XX@|NKdFCH|E2y<WlUp9
zV@+dE<4EI7<4)sE6G#(G6G{_H6Hk*!lS-3LlSz|HQ%qAzQ%+M!Q%loK(@N7$(@E1y
zGe|Q^Gfp#4vq-Z{vr4m0vrV&4b4YVab4hbeb4zni^GNed^Gfqg^Ggdz3rvehi%g47
zi%E-3i%UyLOG-;lOHE5p%S_8k%T5E`paQx#r8uoLts<>5tvanHtv0Pbts$*3tvRhV
ztu3u1tuw7FtvjtZtuL)VZ9>|lw8?2x(x#@(NSm29D{Xe#oV0mq^V1fjElgXKwm5A`
z+S0UTX)DuKrL9g|leRW(ecFb!jcJ?GHm7Y(+m^OHZAaR!wB2cY()On9PdkuyFzry<
z;j|-ZN7Ig_9Zx%vb~5c$+Uc}2X=l^UrJYZ^kajWcQrhLTD`{8LuBBa1yODM)?Oxjb
zv<GPq(;lTgPJ5E}H0^oXi?mm1uhZV7y-j<U_CD=n+SjyiX+P3_rTtF(o5q;Vl+K*a
zlFpjWmd>8elg^jUpDvg#lrEeumM)PlnJ$$slP;I8kgk}nl&+kvlCGMrp01g$mu`>_
zy1&;f-8|hQ-7+0?PcP_xUdMEobk}tEbgy*pbl>!#^pNyW=uNv(>Cx%2=}GCy=_%=H
z>FMd&={f0n>4oVf>1F8^>6PhK>DB4A=?&>k>CNe_>22v9>0RkP>AmTF>HX;w(<h}*
zPM?xKEq!MC?DYBR3(^;+FG*jPzA}AH`nvRu>6_BGr0-1MmA*TDPx{{Ued+tt52PPT
zKbn3l{doF`^pokQ(od(KNk5x@F8ylywe;)hx6|*ZKTLm|{v`cb`t$S`>95jXr@u{q
zm;NdJYx=kJ@996%f2RLR|DFCP{a-p`22%!e21^E825*KyhERq`hG>RFhGd3RhIEEZ
zhFpexhC+r?hH{2VhH8ddhI)oZhIWPy_|AL%41)~A43iAg46_WY4C@U04EGH04Brg@
zjG&CLjPQ(zjL3|rjOdJ*jM$90jQEVKjGT<zjJ%BejDn29jG~O<jM9vXjLM9vjOvV<
zjM|L4jQWg*jHZm1jP{I<jLwX%jP8t{jNXjCj0qVNGbUwB$(WikEn`N;%#2wXvoq#o
z%*~jWF+XEL#=?xn8A~#jW~|Ium9aWwO~$&6jTxIVwq$I}*q*T?V`s*$jNKV~GWKTd
z%h;cBFynB>k&L4m$1;v*oX9wpaVFzj#`%m385c7yXI#m+mT^7fX2$J|I~jK~?q%H1
zc$o1h<4MNTjAt3oGhSr8%y^aYI^#{o+l==apE5pYe98Eh@jc^5#_x>38UHf=XE0<k
zWin^7WU^(lXL4k6W^!fnWb$VUW(sGDWQt~rWr}A?WJ+dAWlCqtWXfjBWh!PWWh!T?
zW~ybXXKG|>W@=?>XX<3?W$I@dW*TK0XPRc3WtwMNWLjlfXWC@iWjbU!W;$oOWV&X$
zWx8j2WO`<LWqN1&Wcp_MW%_3ZWCmsiWd>)4W`<=(WJYF2XU1g4XC`JQWu|1NW~OIm
zWM*b&W#(k&X69!WWEN!>XO?7^W|n1EWmad_X4YlaXEtUwXSQZ`Wp-!wWcFqDXHLkR
zm^mqPa^|$m>6tS#XJyXKoR>L2b3x|9%te`tGnZs8&0LnbGILetn#^^X>oYfGZpz%8
zxixcJ=8nvrnY%LgWbVz}m$^UlK<1&$!<k1ik7gdrJf3+X^JM1f%(I#2GcRUd%DkL;
zHS=2L^~@WYH^FD^+|9g~`7rZQ=HtvKnNKsHWj@b*k@+(7Rp#r=H<|A;-)DZv{FwPU
z^GoK}%x{_BGk;|M%>0%4JM&NGzf6WK#w?~R<}8*h)-1Lx_AHJp&MfXMo-E!hzAXMM
zfh@r+p)BDnku1?Hu`J0fsVwO%nJn2Xxhw_n4TUOMs#$7T>RFmu+F3eTx><Tz23bZ~
z##ts=W?AN07Fm{AR$10rHd*#r4q1*_PFc=bu32tb9$B7QURmB*K3Tq5ep&umfmuOW
z!C4_$p;=*B;aO2xF<G%$aar+M3E-P1Q?k;s(z7zMGEr_6Eyya$D$Xj&D$Od(D$lCO
zs>-U)s?Dm)s?Tc7YRYQPYRziPYR~G(>dflO>dxxP>dorUnv^v;Yf9GCtZ7*@vSwz@
z%9@=uCu?rjysY_I3$qqwEzVk!wKQv4*7B?sS*x<vX06LwpS2-tW7eju%~@Nrwq|Y1
z+Mcx|YiHK3tle3Avi4@}%i5oHAnRb(p{&DMN3xD)9m_hNbt3Cz)~T%1S!c4&W}VAA
zpLHSYV%DXs%UM^lu4Y}!x}J3->t@!itlL?4vhHTx%etTSAnRe)qpZhSPqLn7J<EEY
z^&;zK)~l@7S#Pr5X1&XLpY<W@W7emv&skrxzGi*P`kwV8>u1)ltlwFGvi@fM%le<i
zkj<FQl+B#YlFgdUmd&2ck<FRSmCc>alg*pWm(8CokS&-klr5Ysk}aAomMxwwku8}m
zl`WkulP#Mqmo1;Inyr?tk*%4nm93qvldYSrm#v>|kZqW4oNbbAnr)VCk!_uAlWm)A
zpY4$Cm<_t=+cn!G8+3!WZ?<2ye|A82V0KV;aCS&`Xm(h3cy>fK=*I4t?AYwM?D*`2
z?8NMh?9A-!?40b}?7Zy!?1JpV?4s=A?2_!#?6U0g?27EF?Aq+Q?E376?AGj#?4Int
z?EdTt*%Py;WKYeWo;@RbX7-%yx!Low=Vvd-UX;B!dr9`v>}A=@vsYxV%wC<nCVOr6
zy6pAY8?rZMZ_3`5y(4>P_O9&R*?Y40X79^BkbOA&NcOSp<Jl*&PiCLWK9hYe`$G1`
z>>Js)vhQTy&Ayj?Kl?%UqwL4oPqLq8Kg)ie{UZBi_M7at+3&JHWPi;5l>H_9TlV+t
zAKAaMe`o*6{+Infn<0lWhbf0Shb4z2hckyOhdYNShc8DcM?6O+M>a<;M<GW!M-_Z0
zoNkU`j&Y7zj(Lt{j#Z9zj!lkTj(v`Ej!TYfjz^Anj!%wnj$e*{PGC+@PH;|GPDD;*
zPE<}(PI69aPFhZSPIgXCPHs+KPJT{dPH|3YPI*p6PE}5IPEAgIPD4&hPJ2#QPIpdk
zPG8Q%oJl!TbEf4?&zX@kD`!s5+?;ti3vw3atjJlDvp#1-&X%05Iooo!=j_TkkaIBS
zP|o3;V>!ojPUM`<Ih%7X=X}n^oJ%=3a&G3_%DIzsH|KuNlbmNc&vRbpyvcc+^C{;`
z&d;3xISjc>xy-q&xoo){xtzINxxBgjxdOR@xx%?3xuUsZxe~cDxw5(PxeB?8xk|ap
zxhlD8xf;2exjMPJx%#;VxhA=0x#qbRxmLOMxemEbxh}b$xjwl8xuLmXx#77HxzV|?
zx$(J)xk<Sxxv9D7xf!|HxjDJHxdpj}xkb6fxuv;fxs|z9xz)L~xpleqxed9Exy`vP
zxox@axm~&4xxKmlxf60H<xb0;o;xFVX6~%qIk}5+m*%d?U7NchcVq76+%37=a<}L1
z%-xl{J9kg+-rRk;2XhbQ9?m_HdouS_?%CXPx#x2)<X+0XoO>nrYVP&iTe-J$@8sUk
zeU$q+_i66)+!whob6@4Y&3&KyA@@`6m)x(p-*SKC{>uHE`!Dx@E<+w;9#bB39!nlu
z9(x`~9%mkR9)F%to^YOMo<yExo^+l}o?M=Mo>HD#o_d}}o>rbto?f0oo?)JGo@t(0
zo_U^So^_s0o^768o_(G}o@1U<o@<_4o_n4L_`Xl?JfA%OJjflNp?TqXpgTNc@?!Ji
z@<2CtCgmmPrR1gNA#Umf-O~xXrL#D%B(F5DEU!GTBCj$Jb~|T7USnQUUQ1qkUPoS6
zUUyzkUT<Ds-o(5~d6V;|<W0?+mNz|bX5Os4*?DvG=H)HOTbQ>vZ%N*=ycKyX^H%4r
z$y=MZE^kBL=De+WJMwns?aAAhw?FSd-r>9>c}Me(<(<eonRhDhOy1eNb9oo?F6CXz
zyODP@?{?muyt{di^PcCu%6pynChu+DyS(>#AM!rteaics_ciZZ-uJv8dB5_0=l#k1
zoA)p8e;z|VV?J{}OFnBpdp<`#S3Y+>Pd;xxU%o)TV7^ekSiX3^M80IcRK9e+OulTs
zT)uq1V!l$oaz5mqQH^|^e7$^wd?WB3qOjXTt@Ca2ZS(E(9l-a5I_JCOyF%{<^~v|k
z_s@si2O69ok`KBGG#q*dXl#CbenNg?esVtO=1=5%KlAeo@(c5e^Gox~^2_rp^Q-e~
z^Xu~K^BeLT^PBRU^IP-V^4s&f^1Ji<^C#p_%%7A$Ie$w2)ck4r)AMKK&&;2dKRbVJ
z{=EG8`3v$F<uA@(lD{;6S^kRrmHDgkSLd(EUz@)!e|`Rj{EhjW^0(w~&EKBCBY#)^
z?)*LZd-M0@@6SJ&e>ne0{?Ytn`N#85<e$nvoqs0(Z2r0Y^Z6I@FXvy$znXt7|9bw7
z{G0i=@^9zg$-kR_KmSqw<NPQ2PxGJUKhJ-W|1$qo{_FfV`ET<-<bTZnl>a&ZOa9mV
zZ~5Qzf8_tn|CRqc|4;tk{D1lX^BD>l3z!O+3s?$R3)l+S3pffm3%Cln3wR263-}87
z3j_*;3WN(p3PcOU3d9Q}3M30;3S<l93ginE3KR>J3RDVI3)BkK3p5He3$zNf3v>!}
z3-k)~3k(Vj3m`WxniZHAfbLlY-Lhy~0J>q(p}-M(yP_-jZbit=irxjj1%3qqC^ssG
z7eo|97DN?97sM3A7Q`1M6eJcT6(kp=6r>iU6{Htr6l4};7338Z78Df}7nBr~7gQEh
z6;v107Bm(#6*L#L6toqz7jzVK7xWbL7W5ZPD419<xnO$1jDlGOvkT@G%r96_u&`iJ
z!Qz4?1xpK-6)Z1UQLwULRl$aWO$A#DwiawF*j2EvV1L1pf};h;3XT_?EI3_orr>PB
zxq|Zr7YZ&GTq?L+aHZgC!L@?x1-A<B6x=PiSMZ?VVZoz<#|2LdUKPA6_)ze%;8Vfp
zf-ePM3%(WnDEL+IyWmg3zk>e-426t^OohyaEQPFvY=!KF9EIG4JcYc4e1-glf`vkb
zB8B3G(uFdGvW0Sm@`Vb8iiJvr%7rS0s)g!>8iksLT7}w$I)%E0dWA-X#)T$@riJE(
z7KN6DR)yAuHifo@c7^tZ4uy_|PKC~eE`@G|?u8zOo`v3ppj+Yt3Ihv+3WEzn3PTIS
z3d0K{3L^`n3Zn~S3*!qD3KI*H3X=;{3o{F|3bPAy3Udqd3kwPh3rh-13(E@23o8q&
z3u_AN3hN6S3L6WX3Y!aC3)>3Y3p)xs3%d(@3VRFt3MUj!ESyw0xo~RXw8H6yvkGSy
z&MBN*IInPF;iAIDg-Z&T7A`AXUbwPwRpIKwwT0^n*B5Rm+*r7&a7*E~!tI4S3U?Lm
zF5FYNw{TzK{=x%=2MZ4s9w|Ipc&zYv;fcbNg{KNn7oI6RTX??kLgB^2ONEyUuN7V|
zyis_w@K)jN!aId`3-1-)FML?|sPJ*&lfq|(FA854zAAiO_@?k};rqf5g&zw)6@D)K
zQuwv-TjBS@ABDdPe;58K{9E|1@P8pg5n~Zk5pxks5o-~95l0bc5mym+5l<0s5nmC1
zkwB4Pkx-Fvkw}qfkyw#<kwlSXkyMd%kxY?Xk$jOtkzx_#&RNwW&^@!7McPHWMS4a0
zMMg!&MJ7d7MK(otMGi%vb3mPoT#8(a+=@Jlyo$Vw{EGaG0*V5Qf{Q|mLW{zSB8sAl
zVv6F55{i<GQi@WGGK#W_vWs$xa*GOz3X6)1N{Y&g%8M$Bs*7rhYKxkRnu}VC+KSqX
zI*K}rdW!mrCKOF9np`xcXll{4qUl95ie?tgDw<t1r)X}`yrKm~3yT&NEiPJ8w6thh
z(ek1dMJtO|6|F8>SG2KcQ_<$4twp<vb{Fj_+FP`*Xn)axqN7E}ijEhZEIL(my68;N
z`J#(Omy50xT`js+bff52(e0v8&>7t-!QHL`T@oF!{~K!mH}JP@2OZQ?`+os{`&!V^
zJm5`ApaW_^`yxQf{x#J8vj?3G`LC`_0CYCwKZe?>hT4Ds%9vgk@ox+L$G^?@f8)XW
z|NsAYo?tw{c%t+0!N;tcr+ZnXI}bM0{$r@+=ylxBc;PkMgkHx3j2Ajxf219E{r2~N
zW9^Uq;tUMsqTQ}PIuG}<Nbl~L3f^}jk=E(@4SJL#=m=^4?XllFB_NwG1Pl+n=GpQ8
z|NsB5Stl4Cc+Joqd*dYR80k|?r<rat2`h*ys4AE$uqtvYPE(w&I74x!qNtL*lCn~e
zQkqh_(tf1?)j-uC)nL^S)lk(i)o|4a)kxJS)o9fi)mYUy)p*qe)kM`K)nwHa)l}6q
z)pXSi)lAha)oj%q)m+s))qK?g)k4)G)ne5~)h5+u)fUxO)i%|3)ehB8)h^X;)gIMe
z)jrjJ)yb+;RHv%$QQfQhNcFMm6V<1xoN7~*gbZX2<P1Qk|6*cA10@4x0~G^R12qG6
z0}TUBgT+RD#{I@~jOQB9GhS$X#Q2=?MdM4xSB(w+J^KIT|KI<LiiSpi{|hKU%=%+6
z+hC5tUxR-JYzA`;<{5bY^ZMug&*z`-Kfize{{sF6{tNmS@-OsX*uU_9k^iFpMgNQW
z7yB>nU;Mv>e~JH+{w4oQ`Iq`H?O(>f%zs(`vj0I$#YVDY^}(H@yG8el9u++<dQ$YX
z=vmS8qE|()i@p|pEBaaVx9DHd|00HBrec<2)?&6|_F|4=&SLIjo?_l&{$hb*!D69e
zkz$Er$zrKu`C^4)<zkg$wPN*Rjbhzm{bGY+qhjM?(_*t?t77Y7n_}ByhhoQKr()+~
zmtxmqw_^8Vk7CbauVU|FpJKma|Kh;n;Np<t(BiP-h~miNsN(42nBv&txZ?QY#Nwpl
z<l>a#)Z(<_^x}--%;K!#?BcxQg5tvBqT=G>lH$_hvf}dMisH)Rs^aS6n&R5x`r?M-
z#^R>p=Hk}kw&ITBuHv5J-s1k^3B{9&Cl^mCo?1M;ct-Ke;#tLWisu&3D_&5%uy}Ft
z67c!I%ZpbOuPR<syta5_@s{GP#oLN^6z?qFQ@po$U-ACpgT;r7j}#v*K306Z_;m4^
z;&a89iZ2&mDZW~Kt@wKJjpAFyw~Ox--z~mh{IK{@@#Eqr#m|ag6u&BdUHqo_UGe+k
z55*sgKNo)~{#yL4_<Qk>;-AI8ihmdXDgImhulRp4LkVLEQwd86dkIGgcL`4kZwX(C
zV2MzPaEVBXXo*;fc!@-bWQk0PY>8Zne2GGdVu^BzN{M=jW{Gx*Zi#-0VTn<Rd5J}d
zWr<aZb%||>U5R~(Ly1#~bBRldYl&Nldx=MhXNgydcZpAlZ;4-te@Q?|U`bF(a7jo>
zSV=@lY)L{%Vo6d-a!E=_YDrp2dPzn}W=U2_c1cc2UP*pQVM$R*aY;!@X-P#%Wl2>@
zbxBQ0ZApDeQ%OrnYe`#4M@eT%S4mGvZ%Kd2#F9xRlS`(QOf8vKGQDI*$;^^jC9_NB
zf=^FgShA>OamkXBr6tQsR+X$SSyQsMWL?Snk_{yrOE#5kF4<DDwPah#_L3bXJ4<$#
z>?zq>vae)+$$^rCC5K85mmDcMT5_!9c*%*9lO?B0PM4f1Ia_kB<b276l8YsmORkh$
zExA^5z2rv8&5~Osw@dDp+%I`p^0ef6$%~SgC9g_em%J%?Tk@ggW67tI&m~_=ew6$y
z`Bn0}<WI@pl7A%(rHrLarOc(QrEI0_r5vT4rCg=lr97p4r2?fwr6Q%GrDCPxrP8Ic
zrE;YTrHZ9WrOKr$rD~<>rCOzWr6#3jrIw{OrM9K^rH-XerOu@;rEaC}rJki;rM{&B
zrGceErNO14rD3Jvr4gmErE#V4r3s~prAej9r75N9r5UA}rP-x9rMabfrTL`=rG=%%
zrKP21rRAknrPZZ1rM0DXr46NxrA?(RrLCpyr5&Z6rCp^xrM;znr4vdgmrgC6Q98SH
zPU*bTMWxG1mzS<6U0J%SbZzOj((R?YN_Us;FFjCtu=H5z>C!W$=St6)UMRg-db#v^
z>CMtxrFTm2mfkOYQ2Ma+Y3a+-H>Gb&-<7^E{Z#t7^lRz2((k1|N`IC9F8y2juav2b
zrHrkNy^N!bvy8ipw~Vihzf7=9s7$y_q)e<#s!XO#woI-}u}ry4y-cG_r%bO*zs#`A
z2z-Aw==N;uGTSo8GN&?^GS@P<GWRl%GS4!vGVe0KGXJsw=pE;wWr+LDW6NMSo2Qf^
z-)auI)4ZSzcB6SI_&#&cUFJ1q^<@oZjb+Vct!15MU1dFGy=DDn6Uru)O(~mNHoa^{
z*{rhJWpm2rmdz`hU$&rZVcDXx#bry&mX$3pTT!;MY*pFnvNdIE%hs1|DBE1NwQO72
z_OcyiJIi*J?JnC>wzq6w*@3cyWrxd-lpQZSS$4YYOxfkKt7SLKZk63ByIXdz>_OSX
zvPWf)%bt`yD|=q{qU>eatFqT+Z_3`5eJJ}}_O<L=+4r(vWxvb*mi;edC}%2XE@v%g
zE9WZbDd#KaFBd2mEEg&lE*B{mEf*^nFPA8nE|)2nEte}-gx<`qUakeckzKFcpxm(B
zsNA^Rq};OHy4<$huH3%dsobU9wcM@TqujIHtK7TXr`)&PuiU>ps64nFatnQUc|>_+
zc?|si`IPeX^33wA^4#*g^8E6G^1||>^5XIm@NMa!ThXh^tIKQ38_S!@o6FnE+six3
zJIlMuyUY8_CzMYvpHe=xd|LVR@)_kb%V(9(E}v6Aw|rjt!t%xCOUjp(uK=Ixy{>$H
z`Nr~1<y*?Pm2WTKQNFW$SNWduedPzr50)P)KU{vK{Al^H^5f+v%1@S`DnDI*ru<y_
z`SJ_p7t1e|UoO8=ezp8s`Hk|M<+sZ3mftJCU;d!{VfmBtXXP)-UzNWv|4{z1{8Rat
z@~`FJ%YT;tD*s*nr<}QhrGmABt%ALRqk^k~yMnKRze1owxI(l-vO>B-u0o+gu|lar
zr9z`Zt3ta%uR_1Vu)?UqxWcr;tira!zQVD>slvI!rNXVkqr$VotHQg&x5B?7up+o3
zq#~jsvLdP?x+10`t|Go7p(3#&sUo=|r6RQ=ts=c5qaw2+zoMX`u%f7<xT2(@w4$t{
zqN1{*s-n80wxX`0zM`R`v7)J>xuT__wW6(}qoS*#yQ05hLdB$tDHT&Ird7<Wm|HQg
zVnM~CiX|1xDppjitXNgCx?)Ym+KP1*>npZaY^&H_v7=&F#qNqd6?-f8R~)D~RB^cC
zNX4;=;}s_=&QzSOI9GAL;$p?6ipv$(Dy~=DsJK;eyW&p8-HLk^_bVP$Jgj(B@wnni
z#nXys70)YPR=lcsUGcW!UB&x~4;3FPK39CL_*U_w;%CM0ia!;9EB;mduVAQTs${NY
zsbs5UujHuYtmLZXuH>oYt>mlZuN0^htQ4vgsT8dgs}!%4sFbXfs+6vjsg$jhuT-d1
ztW>I0u2ij5t5mPlsMM^~s?@I3sno61tJJSFs5GoJsx+=Ntu(7Nue7MNthBAPuXL((
zu5_t%t#q&Ss`Re(sr0S%tMso7s0^$Ostl<Nt&FIQtW2y-u1u*+tIVv-s?4s;sm!Y^
zs4T23sw}Q7sVuE5tE{Z7uB@r7t*oo8uWYJpu57Dpuk5Jotn9ArsqC%ntDI0dv2s%7
z<jN_PQ!A%cPOqF%IkR$h<($g7mGdg+S1zbrSh=WjapjWArIpJnS5&U7TvfTca!uvh
z%5|0ND>qbbtlU(&rE+WKw#x05J1X~7?yo#ld8G1a<?+fBm8UAtRGzCmUwNVOa^;oE
zYn9h4Z&u!_yj^*x@^0n5$_JGXD<4%pt$b1Ws`5?cyULH1pDI6BeyRLg`K|JM<<H7r
zm47P#RsOGJtYWERtzxg@sN$^Rs^Y2QuM(&dtP-jct`e;htCFaatdg#hsgkXduTrd1
zs#2*^tx~H}uhOUjp9Nl}Q>9y_SEXNNP-R$URAo|ST4h#cQDs$SSLILzITzfe%C*Y9
z%A?A&%B#v7e7?6|m48)0RZtb=RPV5=h^ok{sH$k_Io|Qmlf#p%QmRs`(x4}WXF<=~
zhMd=3R8?G6S_L_kyRNFKs<o=Us<W!As=KPEs;{cQYC_fIswq`7t7cWru9{c1uxe4&
z;;JQ8%d1vat*TmGwXSM?)rP8#Rhz1|RBf%=R<*rqN7c@%T~)iQ_Ehby+E;a;>R{EO
zs>4-Bs*YA2t2$nFqUvPTsj4$oXRFRtov*r3b+PJF)#a)yRadL7SKX+(Rdu`SPSxG2
zhgFZNo>V=rdQtVV>Q&Y2sy9{dsy<YGtol^-x#~;R*Q#$-->ZI9{jT~`^{<Mdnz5Rx
znzfp}nzNdxnzx#-TA*5}TDV%QTD)4KTB=&6TDDrgTCo~*+PHePCiI+PqiU0C(`vJ7
z^J>d#>uTF-`)b6g!ET__tgC&i{i=hjL#xB9BdcS;CsZd^Cs(Ibr-IJ~&#2A>pADW<
zom-t>T~J+I4LT9LqPnWOrn<JezPhoxsk*tkrMj)Uy}F~iv%0IgySk^kue!f_V)dlz
z$<@=UXH?Iuo>e`&dS3PX>IKz{tCv(StzK8XzIsFTrs~brTdTKKZ?E22y{me6^`7dz
z)%&XVS0AW8RDHPmNcGX`6V)fHPgS3;K3jdR`h4|;>PyvEs;^dGtG-@+qxyFBo$7nl
z_p2XNKdOFQ{iOPN^^5A4)vv4HRKKl$U;Ux_Q}yTSFV$bGzg7RJ{#pI2`gir;>i^XY
zHH<Y(HOw_EHLNvkH5@gZHC#2kHGDM!HG(xlHNrI_HKH}*H4-(FHBvRwH8M4_HF7ly
zHHtM#HOe(AHL5ilHJUY`bIo;Y^lJ2L3~CH(jB1Q)OlnNQr>}#~TnC-FZd+ql<5c5Z
z13E?At;W5^qsFtwtH!&=r^c_wzb2q2uqLP`xF)0qbV7D`O+-y(O;k;EO-v2sJo1E^
z#G0g<<eHS4RPagg8Q`<vLFcCD*5uXX*A&zg))dv0)|Azh*HqM0f=@}WuW6`htZAxg
zu4$=ht!b-iuj#1is_Cxjsp+lhtLd+qP&2t^O3k#InKiR&X4fpJSy;2UW?9YhniVxG
zYgX5+saadIzGg$smYS_K+iJGg?5NpQv%6-0&4HRjHHT}C)EuihS#!GPT+R8K3pE#O
zF4bJFxl(hZ=2p$^n!7dkY97`+s(D=Vq~>YOvzq5MFKb@aysmju^S0()&4-$gHJ@re
z*L<n@TJx>ud(F?9Up0Sf{?`1f`Cr3O%UH`)%UsJ+%Ua7;%U;V-%UR1^%Tvo+%U8=^
zD^M#~D^x37D^e?3D^@FBD^V+1D^)99D^n|5D_1LDt5~aCt5U04t5&N~t68g6t5d5B
zKK0$O)~MFF)}+?7)~ptC20G{jbQ|#b=k~P@wT`t;wa&FJwXU^pweGbZwVt(Jwcg;9
z)j{W~2h;}E2Gs_G&s`6z4X=%;jjWBTjjn~Am7P$FbWS$>jO^^%oZ8&l{944R>ZP@1
zwH39MwN<s%wKcW1wRN@iwGFk6wN16nwJo)+wQaTSwH>vcwOzH{wLP`HwSBeywG(P5
z)=sLOTsx(9YVEYz>9sRzXV%WDon1Spc5dyw+WEB$Y8Tcns$E>Wq;_fT^4b-(D{EKP
zuC85EyS8?H?S|TowVP@;*KVoZTDz@wd+m<eowd7ach~Nz-CMh_c7N@G+Jm)+Y7f^Q
zsXbbItoC^AiQ1F3r)p2vo~b=sd#?6;?S<NlwU=ry*Iuc;T6?YbdhLzco3*!UZ`a<b
zy<2;)_I~Yy+K07|Y9H4=seM}etoC{Bi`tj9uWDb{zNvj%`>ytV?T6ZrwV!G~*M6z}
zTKlc`d+m?fpS8bgf7kx0{agF5_J1uy9b+9+9djK^9cvw19eW)|9cLX^9d{j19d8|9
z9e<rbonW0%op7B<ooJm{op_x@on)O<ophZ{oot<4oqU}_9q6og<vNu*&{_5BbsBY=
zby{`Wbvkvrb$WIBbp~~Ybw+i@btZMDb!K(ubryA&byjsYb+&bOb@p`*bxz<j=3VRD
z>OAT^>%8i`>wM~b>-_5c>jJ<h%Lmti&b9}gY#&h<Sr=6oT^CaqTNhUsUk5rBKB+Fb
zE~PHDF0C%TE~759E~_rPE~hTHF0U@XuAr{4t_bOL`HH&Ax~jVBx|+J$y1Kghx`w*O
zy5_o;y4Je3y7sz`y3V?;y6(E3y573Jy8gNebrb6*)lIIOQa813THW-z8Fe%3X4TE9
zn_D-p4s=h;ZtzVlPwL*({jB4v7pRx3H?Oy>x30ITx2?CUx371ocdU1=cdK`=_o(-*
z_p0}<_o?@-_pA4>52_EY537%?kFJlYkFAfZPpD6>PpMC>PpeO_&#up@&#lj|FQ_lB
zFRd@DFR!ntud1)Euc@!Cudi>YZ>n#uZ>evsZ>w*w@2Kyr@2>By@2{UwKe2vN{p9+o
z_0#I7*UzY*SwFjePW^)VMfHp8m)0+<Us1oZepUVI`Ze`y>(|w9tlwO}rG9Juw)*Y$
zyXtq>@2fvhf2jU&{gL`(^~dW^)Ss+BU4ORzeEo&`i}jc4FV|nIzg~Z{{#O0%`aAV^
z>+jV+s()Pnr2cvRi~3jfuj}8`zpZ~?|Ec~<{nz?$_227%)c>siRsXmCU;Y1jrUv!~
zjt0&Kt_Hpa{szGY;RdM&=?2*bxd!<L#RlaDl?Lqwod(?oy$1aTg9f7plLpHMs|K3}
zy9S2_#|D=M*9P|nj|R^MzXtz?fQG<^;D*qKu!iu4$cE^Kn1<MfxQ6(Kgoeb1q=w{%
zl!nxXw1)JCjE3xnoQB+nyoUUSf`+1o;)arj(uT5z@`j3r%7&_j>V}$z+J?G@#)hVb
z)`pITu7=)*zJ~sW2@Mk)CN)fHnA$MCVP?a;hQ$rb8kRS#Xjs#*p<#2w)`o2jI~sO2
z>~1*PaJ=C}!^wtI4W}E<H(Y4A*l?-ga>JE|s|`0A?l(MWc+~K?;aS7GhOZ6Z8-6zY
zZur;mzk#8Vv5~ovrIEFfy^*7lyOF0+v{AfKvQfHGrct(0zEPo3u~Df}xlyH2wNb56
zy-}l4vr(&2yHU4MuhF2<xY4B1w9&lLveBy1y3wZ5w$Z-Pq0zC?snNO7rO~y~z0tGL
zx6!ZBzcHvWtTDVXqA|KLrZKiLt}(tbu`#JJxiO_Ntudo9t1-JVr!l{=sIj=Qw6UzQ
zys@IOv9Y<arLncKt+Bnav$4Cer?I!OuW>@-q{hjOQyQl>PHUXrIJ0q9<GjZCjSCtV
zHZE#h(zvv7dE?5))s1T!*EX(eT;I5%abx4A#x0Fo8@DxXZ`{$ivvE)3-o|~6`x}om
z9&J3{c%t!S<LSn;jprKAH(qGG*m$Y&a^sc8tBuzhuQ%RkyxDlG@pj{##=DL88t*qg
zXnffCsPReT)5d3wFB)GqzHWTi_`dN&<HyENjb9tTHGXgW(fG6RSL5Ht|BcK|>`fd^
zoK0L!+)aE<{7r&Q!cC%0Vol;r5>1j#Qcbc=3Qa0as!eK5>P?zWdQC=6R!ufdwoUd;
z4o!|tPEF2Du1#)D9!*|NK25$&eoX;QflWb8!A&7ep-o{;;Z2cE(M>T;u}yJJ2~CMj
zNlnR3DNU(OX-(-(nN3+u*-bf3xlM&lrA=i`<xLe$)lD@`4NZ+r%}uRMZB6Y>olQMW
z6PhMBO=+6iG_7e?)9j{sO$(Y9H7#yh-n6M{Yty!-T}`{2_B8EpI?!~e>2TB0rejSf
zn=Uk6Yr5HVtLbjjqo(IgFPdI9y=r>X^tS0;(}$){O`n^-HhpXQ(e$h7Pt)I~e@*|J
z7@E17xtn>L1)7DLg`35iC7LChWt-)i<(n0n6`Pfsm77(XRh!kCHJi1X^_mTujhfAy
zt($F|?V9bI9h;q+U7B5+J(|6my_<cSeVhH7gPTK}!<xgJBbp<dW1Ewj3z`d?i<*m@
zOPWiY%bF{jtD5VY>zf;z8=IS&o10sj+nYO@yPCV3dzyQj`<o{;Pi&sjJhgdR^YrGK
z&9j>4HqUQf*u1EDar2VqrOnHlmp89zUfaB`d42QN=H1Qvn)f#!YChb2r1@C$iRP2d
zr<>0<pKHF*e6jgb^X2BN&DWc6Hs5N#-F&b4QS;;GC(X~ApEti~e%<`0`EB#N=J(B?
zo4+)FZT{B$z4=%3@8&<v|C;|dGqf<Zu(q(baI|o?aJ2}u2(<{eh_r~dh_#5fNVZ6|
zNVmwf$hRo8D7GlID7R>~Xtij!=(Omz=(Xs#7_=C*7`K?Tn6{X;n73HAShZNU*tOWV
zIJ7vnIJG#pxU{&oxVLz;c(!=8c(?ep__p}9__qYK1hoXWgtUaVgtbJp#J0q>#J420
zB(<cpq_(8Bq_<?WWVPhA<hK;G6t$GJl($s2RJYW$)V9>M)VDOWG`2Liw6wIgw6%1#
z^tSZ3OlX<dGO1;9%aoR>Ez??Nw9IOm-7>djUd#NJ1uctO7Pl;ES=zF!WqHermX$55
zT2{BLX<6H{u4O~Z#+J=3TU)lZY;W1!vZrNV%Yl|dEr(l<wj66Y-g2Vlbjz8Rb1mmv
zF11`~x!Q8Q<wncRmRl{iTkf>nYkAo6sO3q^^OhGaFI!%<yl#2h@~-85%g2^aEuUMy
zw0v#(*7CjON6XKaUoF2|{<i#UVQ6J+Wol(^Wocz?Wou<`<!I$><!a?_<!$9_<!=>e
z6>1e}6>Sx3m1vc0m2Q=3m2H)4RcKXeRc=*jRc%#kRd3a3)oj&j)os;l)o(RuHEcC%
zHEuO&HElI(wQIF+b!c^Lb!v5Kb!~NPb#L`<^=b8O^=tKS4QLH)4QdT;4QUN+4R4KT
zjcSc<jcJW-jc-k8O>9kSO>RwXO>0eW&1}tT&2G(U&27zV&2KGeEo?1rEp07pEpM%8
zt!b@ot#55;ZES67ZEkIA?P%?6?P~3A?P=|8?Q5OTI<a+9>*Urcty5d4wN7uH(K@qr
zR_ol>d9CwX7ql*HUDUd`b!qFe*5$1$TUWQPX<gg8v2|1H=GHB(TU)oa?r7cBy1R8x
z>)zIVt@~RKv>s|b+<K(-XzQ`o<E<xJPqm(IJ=1!&^<3-4)=RBdTCcTUZ@tlav-MW%
z?bf@k_ge3_K4^W|`l$7B>(ka}t<PIuw7zP6-TJ2WZR@+%_pKjVKem2q{oMMc^=s?5
z*6*!9T7S0wYW>stxAk8uLmOioQyX&|OB-7odmBd^XB$@=cN<R|ZyR45f15y?P@8a@
zNSkPzc$-9<WSdl*bel|@Y@1x0e49d>Vw+N%a+^w<YMWY{Mw?cfcAHL{Zkt}4ew#s?
zVVhB#ahpk-X`5M_d7EXMRhxC2ZJS-2eVap@W1CZ(bDK+>Ynxk}dz(j_XPZ}>cbiXJ
zP+M?YXj@oYcw0nUWLtDwOj~SQd|N_WVq0=sN?U4MT3dQsMq6fER$Fdcep^9XQCo3a
zNn2@KSzCEqMO$-QOIvGOTU&cuM_XrGUt53Mgtm!oliH@VO>3LpHluB3+pM<PZS&gZ
zw=HN}*tV!`Y1^{4)op9r*0pVF+uXLjZAaVAw%u)e+V-~XYun#;u<cOW;kKh~C)&=m
zoo&0+cDe0p+qJgqZMWL)wB2oc(DtzHQQPCTr)|&Lp0~Ydd)4;3?M>VJwy$m9+P=5_
zYWv;xr|oas|2D>UmUh;5ws!7zo_4-={&s<O!FG{$v3ALJ>2}$6`F4eNm3Fmu^>&SR
zt#<8pop#-J{dR+PqjuwV({{6Vi+0O)t9F}q+jfU`$9AW7=XRHN*LJsduXgWt-**4@
zfcC)lp!SgV(DtzQi1w)V==PZQ*!H;g`1Zv1r1rG-^!AMQ%=WDI?Dm}Y-1hwT!uF!}
z;`Y+^^7e}M%J!=E`u2wQ#`c!>w)Xb+&i1bMp7y@>{`Lv&6Wb@XPiddpKCOL5`^@%P
z?X%nGw9jpy*S?^AVf&)?#qCSlm$ol!U*5j5eO3Fq_6_YD+c&juY2Vhqy?saf&i38y
zd)oK4?{7cYeyII$`;qpe?Z?|sw4ZE0(|)%7T>JU<3+-3hueM)nzutbM{bu{E_B-u&
z+wZmCZ-3bSsQq#KllEur&)Z+LzifZq{-*tH`}_6}?H}7ewSR8^(*CvmTl@F+AML-|
zf4Bc>|J(k*ouPxVgQ<h1gSCULgS~^JgR_IXgQtVHgRg_XL!d*jL#RWfL%c(xL$X7v
zL#9KvL#{)<L!m>tL#0EtL#;!-L!(2pL#so(L#IQxL$5=>!=S^k!??qw!?eS!!@R?y
z!>Yr&!?we&!@k3@!>Pl$!>z-;!=uBq!>hx)!>_}?BcLO&Bd8;|BeWx|Bcda!Bf2A|
zBeo;1BfcY{BdsI7Bda5~Bfq1tqqw7_qqL)}qoSj-qpG92qo$*wqq(E4qrIcEqpPE*
zqpzdCV?xKoj>#QUI;M6^@0igsvtw4r?2fq|^E&2tEa+I+vAAPt$Fh#)9V<FkcC6}H
z)3L5&eaD85O&yy%wsdUm*w(S5V`s;%j@=!5JN9+#?>NwLxZ_C2@s1N6r#en|oas2*
zalYe1$Hk7z9oIUpciif@-EpVmZpXcj2OSSPo^?F$c-ir)<8{ZIj<+4}I^K7D>iF96
zt>b&gua4gxe>?tnFmy6@GIz3cvUaj{vUhTHa&~fe@^tcc@^$ie3U-Qgigt>1ig!wM
z%5=(h%5}<jDs(D!DtD@Ms&%S&YIJIL>U8RM>UHXO8g?3W8h4s@ns-`sT6S7>T6fxX
z+IHG?+IKp1I(0gCx^}vCx_5eXdUkqsdUyJC`gZzt`gaC&26hH@26u*ZhIWQ^hIdAE
zMs`MZMt8<^#&#xjCUz!uCU>TErgo-xW^`tDW_4zF=5*$E=5^+G7IYSN7IhYPmUNbO
zmUWhQR&-W&R&~~N)^^r)Hgq<1wsf|3ws&@Pc6N4kc6au4_ICDl_IFO`oY*<3b8_dD
z&Z(W#I;VHe=$zR(t8;eeoX)wO^E&5uF6dm?xu|n-=aSB)oy$6xcdqDM*}1B7b?2JS
zwVmra*LQB{+}OFPb93jG&aIu>I=6T3=-k=4t8;hfp3c3U`#Se`9_R$!7JRw$O6S$i
z>zy|`Z+719yxV!d^Fims&PSb3I-hsG=zQ7vs`E|f+s=2LA38sFe(L<v`L**~=l9MZ
zoj*H&b^h-B)A_gaU+4c$#xABV<}Q{l)-JX#jxNqFt}gB_o-W=lzApYQfiA%=p)TPr
zkuK3Lu`cm0i7v@5sV?a*nJ(Ebxi0xGg)YS|r7q<zl`hpTwJ!B8jV{eDtuE~@oi5!j
zy)OMOgD%4^qb}nvlP=RPvo7;4i!RG9t1jy<n=acf`!0tr$1bNX=Ps8n*Dkj%_b$&a
zuP*N{pDy1nzb^l-fUdx<pswJqkgm|Ku&(f~h_1-4sIKU)n6B8axUTrFgs#M{q^{(y
zl&;jSw6657jIPYCtgh^?oUYuiysrGNg08}@qORhulCILOvaa&3ims}z>aLou+OE2;
z`mTnq#;&HW=B}2m)~>d$_O6bu?yjD$-mbo`{;mmK6T2pLP3fB2HLYuU*Nm>2U9-Ao
zcg^XV+cmFie%FGog<Xrf7I!V_TH3X&YkAj-u9aP@x>k3s=~~;hu4{eQhOUiWo4Pi4
zZRy(DwXJJ=*N(28UAww=ckSug+qJK2f7gMogI$NZ4tE{tI@)!t>v-3Ru9ID-x=weU
z={nnWuIqf)g|3TTm%1)@UFo{ob*<}q*Nv{5UAMY!ciri_+jXz&e%FJphh2}l9(O(I
zdfN4@>v`9Uu9sb}x?Xp^>3ZAsuIqi*hpvxZpSnJGed+qz^{wlB*N?8BUB9}1cm3)5
z+x4&Oe-}eHV>eSbb2m#jYd2drM>l6TS2uSzPd9HjUpIfZK(}DGP`7ZmNVjOWShsk$
zM7LzORJU}uOt);eT(^9;LbqbKQnzxqO1EmadbdWmX17+icDGKqZns{yez!rlVYgAY
zakojgX}4LodACKkWw%wgb+=8oZMR*weYZomW4BYcbGJ*kYqwjsd$&ioXSY|kcehWs
zZ?|8!e|JE4V0Tb=aCb;|Xm?n5cy~m1WOr0|baza5Y<FCDe0M^3Vs}z^a(7C1YIk~f
zMt5d+R(E!HZg*aHes@84VRun?ad$~~X?Iz7d3Qy3Wp`C~b$3m7ZFgOFeRo55V|P<`
zb9YO3Yj<0Bdv`~7XLnb3cXv;BZ+BmJfA@s$iQSXBCwEWjp4vUFdwTbb?wQ@Qx@ULK
z>7Ls?uX}#?nr_Jbwimh~H{4qESoT=;SohfU*!I}<*!MW}IQ2O9xb(R8c=UMnc=!1B
z`1Sbr1oQ;<1oZ^>g!F{<g!e@BMD|4Y#Pr1W#P!7YB=jWrr1Yfrr1hltWb|bA<n-kB
z<n`qD6!aAK6!nz!l=hVMl=oEk)b!N$)b-T&H1ss~H21XhwDq+2bo6xh^!D`i^!H5Y
znb<R_XL8Tfo@qVPduH~`>Y3d$r)O@@yq@_z3wjpzEb3X@v!rKf&$6E7Ju7-v_N?kz
z-Ls}=ZO^)%^*tMUHuh}l+1#_GXKT;4p6xw5dUp2g>e=11r)O`^zMlO(2YL?n9O^mT
zbEM~J&#|84Jtulj_MGZD-E*erY|pu#^F0@OF7{mNx!iN5=W5Tjp6fj~dT#dI>bc!>
zr{`|Zy`K9$4|*Q<JnDJe^Q7l#&$FKAJuiA*_PpwO-SejBZO^-&_dOqaKK6X-`P}oR
z=WEZmp6@+BdVco&>iOOCr{{0azn=d+484rKOufv#EWNC~Y`yHg9KD>qT)o`AJiWZV
ze7*d=0=<I0LcPMhBE6!$V!h(M61|eWQoYi>GQA4DfxSV!;l1&_sl6G!nY~%PIlXzk
z`Mrg`MZFchmAzHH)x9;nwY_z{^}P+fO})*%ZN2Ti9lf2sJ-xlXeZBp?6M850PVSxB
zJFRzm?~LA=y|a2}_s;2^+dHp!LGQxeMZHUUm-a5}UEaH*cV+LY-qpQpde`=@>s{Zw
zp?6d7w%+Z%J9~Hc?(IF$d$9LV@6q1ly(fB4_MYlJ+k2t+Qt##7E4^2HZ}i^mz0>=k
z_hIj&-lx6KdY|{c?0wt&uJ=Rl$KFr9UwXgw{^|YK`@ff=kFk%bkGYSfkFAfrkE4&f
zkGGGnPoPh*PpD70Pqa_0PrOf}PqI&{Pr6U0PoYn-Po+<_PpwbAPoqz}Pq)vY&#2G1
z&!o?+&%Do~&$`d1&#uqD&$-XF&#lj=&$rL7&%ZCAFSswHFSIYLFT5|JFRCxPFQzZH
zFRm}XFQG57FR3rNFQqTFFTF3LFRL%RFR!n#ueh(Yue`6Kud=VIuez_cudc75uc@!O
zucfc8ucNQCudA=SucxoKudi=n-=x0DeN+3U^-b@a(KoYiR^RNtxqb8d7W6IbThzC>
zZ%N<MzGZ#O`&RU=>|52hwr^eEhQ5t`oBOu(ZSC9Ex4myi-_E|>eS7-$_U-H2-*=$z
zVBev>!+l5kj`khvJKlGq?_}SpzSDhY`p)*9@4L`<vF}pf<-RL@SNpE@UGKZmceC$S
z-|fCTeRuor_1*7#(D$(KQQzafCw))*p7lNNd(ro@?^WOHzBheu``-1v@B7gAvF}sg
z=e{p}U;DoGeee6x_p|R;-|xOZeSiD@_5JT-=x6L_>Syj}>1XX{>u2xh=;!R`>gVp~
z>F4d|>*wzm=ojo4>KE=8=@;!6>lg2r=$Gu5>X+`9>6h)7>zD6W=vVAl>R0Yp=~wMn
z>sRmB=-2Gm>eueq>DTSo>(}o$=r`;)>NoB;={M~+>o@PW=(p^*>bLH<>9_5->$mTB
z=y&XQ>UZvU>38jS>v!+>==bdR>i6#V>G$pT>-X;u=nw1<>JRP@=@0D>>ksdb=#T7=
z>W}V^>5uJ?>yPhG=uhlV>QC-Z=}+y?>Tl@p>7Ud;w|_zZ!v015OZu1gFY904zp8&t
z|Jwd_{p<TT^>6Oq(!aHTd;gC9UH!ZJ_w?`YKhS@;|5*RY{!{&@`_J^B?LXgtssCF4
z_5NG^5BeYWKkk3t|EB+a|HuAM{a^aO_J8aD)&INyPyfIE|NZO}I41B+;F};kL3Dz|
z1jz|96O<>YOi-PmK0#xG<^-(?+7omp7)&snU^Kyag2@E)36>MACfH7}pWraTd4lT%
zw+S8-JSTWf@Sfl^!EZvygwP3L6Cx)>O^BHgJ0WgD{Dg!Fi4#&Lq)kYlkU1f1LiU85
z3HcKWCKOI6novBUY(n{jiV2kyswPxVsF_eVp>aaXgw_dd6WS+qPUxD@Gog1v--P}N
z6DCZWFlEBD2{R_lnlNX=yb1FsESRul!qN%LC#;yTa>D8fYbR`)uzkXw3415(pKxHp
zp$Ug49Gh@r!pRAzC!CpZcEY6zS0-GYaBaek2{$L)ns9Hz{Rs~yJf84m!qW*aC%l^Q
zX2QD(A0~X9@M*&53126CoA7<Y&k4UK{GRY<!v6^j6B#EmPh_3QHj#ZI$3)JFTobt`
z@=WBN$TyLHqQFGKi9!>FCyGoIohUX@e4@lesfp4PWhTl_l%J?DQE{TmMAeCE6V)eb
zOw^pHHBoz_&P3gbdJ_#M8cj5wXfn}sqS-|Ai53&BCR$IlnP@xFZle7}hl!38ohG_W
zbe-rv(PLuZ#Nde`6GJD4O^lcrIWc--%*6PK2@}&Mrccb6m_0FfV)4YPiPaNpCN@lL
zoY*w6d1A}Nwuv1RyC(Kc?4LM!;*^O~Cr+C<ed3IXGbhfOICtW_iSs8en7DA_l8H+v
zE}OV~;);nYC$65jX5xm48z*j>xOw8XiQ6acn7DJ|?umOQ?wz=A;{J&TCLWx4XyW0C
zM<yPfcx>W{iKi!Cn0RU8<%w4&UY&St;`NC)Cf=NQYvS#RcPHMPcz@!9i4P|}n)rC)
zlZj6!KAZS_;){tdC%&5adg7ajZzsN+_<rJti619^n)rF*mx*5|ew+Ax;*W_xC;poF
zd*Yvoe<%K%_<th9B*sZhlb9#5Ok$nHHi>-_$0W{4T$8vb@l4{K#5ak5lE5UvNkWr^
zCy7iFog_9%e3HZ@$w^X^q$kNtlAR<sNq&;TB*jTelawc^Oj4bsHc5Sw#w5*2T9dRV
z=}gj{q&G=_lEEayNk)^5Cz(t#on$u2e3Hc^%Sl#~tS8w_vYli%$$pZ<B*#fklbk2H
zOmdy%HpzXG$0W~5UX#2h`AqVi<TuHGQoy9ZNkNl>CxuK3ofI}Hd{V@u$VpL?q9?^n
zik%cUDSlGIq{K-{laeQ;OiG=UHYt5l#-z+iS(CCS<xI+*ls74VQo*FcNkx;2CzVbr
zn^ZojVp8R#s!7$8Y9`fAs+&|lsbNy%q^3#DlUgRVPHLOfKB;3;=cKMl-IIDI^-k)a
zG-1-jNs}f`o-}3B)JfAOO`kMl(#%P-Ce5BSXVTnB^Cr!ov|!T0NsA^ep0s4r(n-rE
zEuXYv(#lDzCas>dX42Y8>nClPv~kj=Nt-8anY4A%wn^J3?U=N4(ymFnC+(TEchbH|
z`zIZkba2w4NrxvLnRIm0u}Q}#ot$)P(&<TOCY_yhZqoTl7babtbZOG%NmnLaopf!|
z^+`7--JEo5((OriCf%KMZ_@oq4<<dF^k~xKNlzv{o%C$d^GPozy`1!F((6fYCcT~X
zZqoZnA0~aA^l8%PNna*?o%C(e_enn{{hah`((g%sCjFiCZ_@us43ilrGfifm%rcpE
zGTUVK$sCh8Cv#2ap3F0ucQW5({>cK91t$wl7M?6JS#+}4Wbw%olO-ohO_rW4Gg)@B
z++_L53X>HlD@|6OtTI`3vf5<z$r_V2Cu>dCo~$!jce37O{mBNC4JR8-HlA!U*>tkm
zWb?@ulPxD(O}3tFGud{s{bYy9j+31xJ5P3*>^j+PvioF@$)1zFCVNlzne02+Z?ga7
zfXRWAgC+-04w)P}Ic#$H<cP_UlcOd_PmY-!J2`H0{N#kmiIbBiCr?h9oH{vea{A<q
z$(fV0C+AGgot!s0e{#X(!pTLGizk;%E}dL9xqNcP<jToaldC7!Os<_=H@SXt!{o-v
zO_Q4^w@hxG+%~y=a>wM($z7AXC-+S5o!mEh!sLmQCrzF_dCKIelc!CdK6%FEnUiNt
zo;`Wa<hhgQO`bn_!Q_RL7foI~dCBCZlb20iK6%CDm6KOZUOjou<h7I6O<q5F!{m*V
zH%;C=dCTOjlebOYK6%IFos)M>-aUEG<h_&kP2NBGz~qCI4^2Ki`N-s>laEb4KKaDt
zlao(RJ~R33<a3kHPrfku;^a${FHgQQ`Re5BlW$DEIr-M)+mr81zB~Ee<olB!Onx}|
z(d5UIpG<x_`Pt;>lV41JIr-J(*OT8&emnWy<oA<5O#V3e)8x;SzfAr*`P=00lYdP9
zIr-P*-;@7L{yX{K<o}ZyrZ7%nn!-GVWeV#QwkhmWIHqt;;hMrdg=Y%y6uv3^Qv{|6
zP7#_SJVj)R=oGOj;!`B1NKTQOB0WWBitH4*De_YkrYKHPnxZ^KWs2$)wJGXTG^S`y
z(VC(?MQ4ic6ul|>Qw*jUPBEHdJjG;+=@hdm=2I-DSWdB;Vm-xXitQBpDGpN{r#MY<
zp5ijab&A^*_bDDzJg0a~@t)!{#dnI|6#pp!Qv#<1O$nY7G9`3M*p%=o5mO?kL`{jF
z5;G-sO5BwADG5^&rzA~Do{};pbxPWl^eGurGN)us$(fQnC2vapl!7URQ;Mb(PbryF
zI;Ct%`IL$&l~bywR8OgyQahz?O8u0EDUDN_rZi7!nKE(8v?(*D9G`N2%H=6nrretH
zY|8H`GE)_%s!uhZYCF|=s>f9Csi9M&rY20yn_4opbZYt3im8=TtEN^@t(jUowQg#|
z)W)ezQ=6x@Ol_UoHnn|f$JEZLT~oWK_Dt=a+Bda->V&Bir%swWdFqs@Q>RXwI(_Pl
zsWYd}nmT*xoT+oC&YL=a>Vl~Yr!Jbhc<Pd=OQ$ZIx_s)2sVk?hn!0-GnyG82uA91k
z>V~Nsr*4|MdFqy_Tc>WDx_#=7sXM3cn!0=Ho~e7M?wh)Q>Vc^TryiPmc<Pa<N2eZ}
zdVK1MsVAqNntFQbnW<-|o|}4p>V>Hnr(T+RdFqv^SEpW^dVT7RsW+$IntFTcovC-H
z-kW-V>Vv5dr#_ncc<Pg>Pp3Yc`h4n}ssE?4PZORdF->}!+%$!0%F|S)sZLXyranz$
zn&vd^X*$z%r|C~Km}WlBVw&YNt7&%A9H%)?^P1*2&3{_pw4iCh)54~OPm7oqIW1~h
z%(U2Panll}B~MG8mNqSWTJE&GY5CI%rWH;ro>nofa$422>S;C8YNyprtDn{|t#Mk@
zwB~6o)7qzXPV1W1Gp%ph#A%bJO`bM&+O%o2rp=x<ciOyZ^QSGCws6{_X^W>VnYMJ=
zvS}-(t(>-M+UjX*rmdZ}Zrb{38>elWwq@GZY1^mmn6_)$?rHm{9h!D{+KFkWrk$R4
zVcNxMm#1Bsc5T}AX*Z_boOWy4?P+(W-JN!C+Wlz{r#+hXc-oU`Pp3Vb_I%pwX>X>z
zo%U|phiM<DeVX=V+Sh46ru~}sd)l9Af2aMQ#x$LII_q?<>D<$KrVC6LoGvt7WV+~d
z@#zxNC8tYGm!2*=U4FX4bj9gP)0L;IOjn(*HeG$X#&pf;+S7HW>rL06ZaCd|y2*6Y
z>1NZ-r&~?8o^CVUcDns^hv|;fou)facbV=w-EF%2bdTwt)4is9PxqPbJKb-(|MY<A
zfzv~#hfWWl9x**?dd&3L>G9K(r>9I$o1Q*BV|v!~?CCkvbEoG`&!1i}y>NQb^wR0&
z(<`P|POq9?J-v2%-SqnD4bvN^H%)Jz-ZH&ydi(T_>7CQNruR(mo8CWt!t}}0r%s<X
zefsp7(`QYeJ$=sfxzp!OpFe%!^hMK`OkX;E+4SYpS4>|yebw|e)7MSkFn#0n&C|C|
z-!^^w^c~Z8PTw_s_w+r}_fFq8egE_W(+^HRH2v`OBh!ygKQ{gN^b^xhPCqsM^z<{+
z&rUx#{rvO`(=SfHH2w1QE7Pw|zc&5)^c&M}PQNw%_Vhc`?@qrr{r>a^(;rTMH2v}P
zC)1x!e=+^t^!L+0O#e9j)ATRXzfb=${pa*w(|=F@GyU)Mf7Aa@XPCh_gJ}ly43-(J
zGuURZ&)}HBIfH8k_Y9sHyfgS_@XrvKAvi;5hVTrL8KN`9W{A&_m?1esYKHU-nHjP(
z<YvgvP?(`OLurQc43!zGGt_3N&(N5mIYVoP_6(gFx-;}<=+7{iVK~ERhVcxO8KyJL
zW|+^gm|;1?YKHX;n;Et<>}J@{aG2pZ!)b=|43`<MGu&pl&+wSxIm2s)_Y9vIzBBx0
z_|FKK5jZ1gM(~V~8KE=6W`xg(m=QT6YDV;om>ID%;%3CpNSKj0BWXtRjFcIvGty?H
z&&ZgOIU{RE_Kchvxij)+<j*LWQ8=S$M)8c28QnAbW=xtfb;isYi)XBuv2w<$8LMZk
znXz`px*6+dY?!fe#-<sYXKb0Vb;h<C+h^>Uv2(_*8M|lfnXz}qz8U*x9GG!%#-SO9
zXB?SvbjGn6$7h_FadO6~8K-BQnQ?Z;`56~xT$yog#`PJuXWW@_cgBMm4`)1@@p#6Q
z8Bb?CoAGkSs~N9nyqWQK#=9BsXMC9PamJ?^pJ#lT@pZ<x8Q*98nDKMQuNl8*{F(80
z#=jZ=XE4lUoXIqkc_zzD)|qTG*=KUh<ebShlY1u5Oum`?GX-Y~%@m#~GE;P>*i7-6
z5;G-dO3jp>DKk@crrb>VnF=!%XDZE9o~bfZb*9=(^_dzoHD_wg)Sjs`Q+KBROoN$*
zGmT~%&or57I@4^X`AmzMmNTtpTF<nZX*<(yru|HZnT|7^W;)Mwndv&yZKnH7kC~n`
zy=HpP^qJ{9({HB#%z&AJGlOOZ&kUOxJ~Luw<jkm<(KBOa#?FkJ89y^&X5!4GnJF{V
zW){z^m{~cqdS>0srkTw%J7@OH?3+1j=IohsX3m{CZ|3}&3uZ2yxoGC%nM-Cao4I`E
z%9*QXuAaGO=GvL-X0D&PVdln}n`UmFxn<_oncHS=pSfe^&Y8Pr?w+}4=H8k6X6~PP
zVCKP@hh`q0d1U6%na5@xpLt^D$(g5So}PJT=GmF&W}csUVdlk|mu6m`d1dC+nb&4s
zpLt{E&6&4m-ky19=G~e1X5OFqVCKV_k7hoe`DEtPna^fEpZQ|u%bBlczMlDJ=G&R?
zX1<^KVdlq~pJslZ`DNzUncrr9pZR0v&zZkw{+{_~=HHqBX8xbaFpF^((=6s$EVEc=
zvCU$i#W9O>7S}B9Sv<3NXYtMApCvF$aF)<4;aMWHL}!W35}ze8OLCUfEa_P?vt(z<
z&61y`FiUZk(k$g!Dzj8)sm)TKr7=r$mewroSvs?HXX(w-pJg!1aF)?5<5?!NOlO(R
zGM{BJ%W{_0EbCb|vutPC&9a~6Fw1e4(=6v%F0))`xy^E)<uS{1me(xrSw6FTXZg+Y
zpA|4Ga8}T);8`KFLT81|3ZE4*D{@xUtms)Wvtnn(&5ECuFe`CZ(yZiJDYH^%rOis8
zl`$)GR@SWSSw*v&XLZi%oz*vM%B-ogX3knRYvrs}vsTYqGi&Xvb+gvb+B9qPtSz&)
z&e}O^_pH6M_RZQq>+q~2vyRO=KI_D+le13EIy>v!tn;%j%(^t|%B-uiuFbkW>*lOm
zvu@A2GwbfGd$S(QdNk|ttS7Uc&U!xU#jKaJUd?(l>)osmvp&xHH0$%MFSEYR`ZnwP
ztRJ&}&H6Lz@2r2b{?B5V%{ZHBHp^_**=)1fXLHWxn$10%XEyI_zS#n^1!oJ*7MU$N
zTWq%YY>C;Dv!!NB&z6}jJ6mqH!feIaO0!jFtIk%Ntv*|0w&rZD+1j&pX6w$@n{6=L
zaJKPmli8-T&1Rd=wwP@>+iJG$Y`fX^vmIu;&Gwq@J=<rt-|T?dL9>Hrht3Y09X>l^
zcI51++0nCOX2;Hsn;kzpVRqu|q}j={Q)Z{mPMe)RJ7ad{?5x?@vvX$W&d!^iKf7Rd
z;q0Q>#j{Ihm(DJmT|T>FcIE7<+10aaX4lTHn_WM<VRqx}rrFK2TV}V;ZkydcyJL3e
z?5^3}vwLRu&hDGtKYPOLiL)ooo;-WX?5VS-&7MAc#_XB1XU(2Hd(P~+v**p8KYPLK
zg|ipUUOaor?4`4p&0aox#q5={SIu5Md(G^%v)9dDKYPRMjk7n+-aLED?5(r6&E7tH
z$LyW6cg@~Cd(Z5>v-i#3Kl{M!gR>9KK0N!#?4z@f%|1T+#O#x^Pt86(`^@aKv(L>w
zKl{S$i?c7yzC8QN?5ne{&AvYS#_XH3Z_U0v`_AmUv+vEmKl{P#hqE8eemwih?5DGz
z&3-=n#q5`}U(J3!`_1gPv)|2rKl{V%kF!6`{yh83?60%G&Hg_7$Lyc8f6e|q`_JsZ
zv;WQhKbv6=;~b_r%yU@gu+Cwd!#;;&4(A-MIoxx2=J3wpo5MdxV2<D%p*g~HMCORj
z5t}1EM`DiT9H}|db7bbo&XJoVKSyDX;vA(p%5zlasLoNFqdrGtj^-S#Iofk{=IGAR
zo1;I+V2<G&qdCTNOy-!*F`HvP$6}7<9IH9jb8P0=&as<gKgVH?;~b|s&U0MmxXy8#
z<37h@j^`Y&Io@-8=J?L>o8vzxU{2tipgF;FLgs|d37Zo>Ct^<IoTxd`b7JPi&WW27
zKPO>M;+&*8$#YWXq|Qm3lRhV7PUf7fIoWe^=H$-Fo0C7MU{2wjqB+HLO6HW#DVtM1
zr(#a!oT@q1b86?*&1sm^Jf~$&=bWxNJ#+f!OrA4s&h$Am=FFTkch0IgYv!z<vvbbA
zIs4}vm~(K>p*bh!oSbuU&ZRlG=G>n1V9vuikLNs@^K{O$InU?3nDcVZt2wXdyqWWM
z&bvA9=X{v+an7eXpXYp;^L5U*Ip62}nDcYauQ|Wx{F(E2&c8YT=P=A=oXa$qc`nOb
z*12qR+2?Z1<($hkmwPVHT;92SbNS~A%oUs~G*@`8$XwC6VspjkO3am<D>YYouFPE7
zxpH&m=PJxqoU1ffd9KP_)wybO)#qx=)tsv}S9`9`T-~{PbM@yM%r%^AG}m~p$z0R9
zW^>KwTFkYaYc<z;uFYKAxps5y=Q_-Foa;2#d9KS`*ST(U-RFAD^_=T9*L$wdT;I8V
zbN%NA%nh6yG&gu|$lTDmVROUhM$C<z8#On2Zp_@+xp8yj=O)ZeoSQT^d2Y(w)VXPM
z)8}T)&77MxH+yc*+}yc&bMxmG%q^T-G`Dze$=uSpWpm5tR?MxOTQ#?OZq3}<xpi~v
z=Qhl3oZB?Fd2Y+x*12tS+vj%7?VQ^+w|j2S+}^o;bNlB`m^*Rqq`8ylPMJG(?zFkn
z=gycrbMCCUv**s4J9qB9x%1~Pn7eT9qPdIbE}6S@?y|Yd=dPH$a_*|RtLLtnyLRrn
zx$Ea{n7eWArn#HvZkfAv?zXwx=kA!hbMCIWyXWqiyLaxsx%=lHn0s*Up}B|W9+`V|
z?y<SY=bo5*a_*_Qr{|uTdv@-*x##Czn0s;VrMZ{qUYUD!?zOqs=iZombMCFVx98rO
zdw1@=x%cNjnEP<<qq&dgKAHP;?z6ei=f0Txa_+0Sujjs*`*!ZTx$ozGnEP?=r@5c!
zewq7q?zg$$=l+=cbMCLXzvup$`*-fYx&P-f%wwF#G>>^6%RJV3Z1dRXam?eK$2E_8
z9?v}9d3^Ku=LyUcoF_C-c%H~S(RpI?#OF!Olbk0tPkNrrJlT12^Hk=k&(oV{FwbP3
z^*oz-4)c8H1<VVY7d$UyUf8_Id9m~2=OxTboR>5&bza`Q{CP$5O6HZ$E1Oq7uVP;1
zysCNC^J?bR&TE+0IInqL%e>ZkZSy+kb<OLU*E_FoUjMua^Cr%lGH>d<Y4fJfn=x<Z
zyjk;R&zm!E-n<3#7S3BVZ}Ge(^OnwAK5xammGf53TRm^hytVVz&09Zj!@Q02HqF~S
zZ|l5m^S001Id9jzJ@fX@J23CyyhHO2&pSHr*u3NOPRu(s@ASMg^DfN0H1G1ftMjhS
zyFTycyj%0`&3icS@w_MVp3QqP@AbSl^WM&TH}Au|kMlmw`#kT<ysz`V&HFy@$Gl(j
z{?7Y9k6}LJe5U!#^I7Jz&S#s?KA&Sg=X|dDJoEYI3(gmsFEU?rzSw+;`BL+x=gZ8O
zoi8_Ee!k*-<@qY}Rp+bCSD&vjUvs|JeC_$V^Y!K%%r~5GG~al>$$ZoKX7erPTg|tb
zZ$IB*zT<qS`OfoQ=ex~!pYJi>bH3Mn@A*FSedqhl_n#j$KX`t~{LuMf^TX#y%#WNO
zH9vZO%>3B-ar5KnC(KWrpEN&te#-pR`Dydh=V#2%oS!v6dw$OR-1&L)^XC`LFPvXA
zzj%Jh{L=Yl^ULQ~%&(kZHNSd(&HUQ=b@LnNH_h*z-#5R1{)G7x=TDkHdH$67Q|C{c
zKYjj;`E%yaoj-5>!ugBlFP^_-{?hq6KP!Ju{rUXo$DcgEcz^Nz;{PT1OZb<_FNt6B
zzZ8Bc{!;#>@=N`f#xKoZnCCAn=WhdDYuQly{~v$*7WnxKi@{f23OIC0bi`sif1$Ra
z_TPdsrq`u7&tK@g2|jv(7jpChckea^1_lO<^B3OhF))-%bi4jwP5Ai#f3FO~ju%Hk
zM=;1Rr*+1D!*K+Ih~a_P0^s{BA?Gl#z>i^YSmC(BX+_LR=M^q1TvxcQa9`oEB66kY
z3a=I3D|}Y?uJBvozan5o;EJFXlU4+;2w4%jB5XzYiij1FE236JuZUR@yCQBy{ECDX
zi7S#;B(F$Wk-8#nMf!@26`3otR%EZpS&_RUZ$<u!f)#};idGb_C|OauqHIO^ii#DL
zE2>shuc%p3yP|GI!-~cgO)HvLw5(`d(YB&}MaPQH6<sU3SM;ptUD3Cqf5n6q6IZ0J
zoVIfEiYY6mu5eiCxYB8*^GcVMt}ESEy07$DnYc1(W!lR0l?f}8SEj6tTIspcYo+%}
zpOwBV{Z{&~3|JYsGH7M+%8-=~jfl0@ZjJ7Z9*v%jUX9+3K8?POpjFoaje(6pjlqo}
zjiJ!>*O84;NNcbY;H$7x8`B!o8#5X+p=+^o8}l0T8w(l>!E3Th;H$DL8><?t8*3VC
z8|xYy8XFs%kXC7TG<G(2!B=YcH%@4rh_YIH26(;p?8Z5bbCFhUF9xsMUe>t0aYf_G
z##I=rw>P7#-`>@@8@`77K;yy2Lyd>QYq^g>S970gJl%MPq!rzdp=-LIgI9IGYJA=J
zrtvM(+V0PdUr^R}|8D%#__y(2BW$I%3wW)zdy_|#XOmZxcN1jAwtrIq+M4Z%rpTr!
z_`2<QjFsCNO_}hu+j&j-O$AMbO+`(`O(pPk+?7pL;I-VfO?BY)+)Yi*O)bzh-5pJx
zO<hghO+8J$O?^%MO%s|XHcf)B@t)o^qiH61rT3hsxlQw$<~J>9S_oe8y`*Vr)3T=J
zO)HvKHmzz}-L$4@ZPU7@^-UX^Ha2Z)+T64SydHde(~hQ{&{g4koA!ZMh93m44L<^2
z9e%v&MAONpQ%$Fv&NQ8EI@ff*=|a=Rrb|tio31onZMxQUz3B#c?fC7cJ56_+?ls+S
zdeHQ+=~2_;rYB8Lo1VeflfQ<pD1YDdq3I)dRrwe2y7KQ$Kbn3v{c8FRU0v<~ULo$>
z3|b@Z*6iNw(d^lbSSjw`9MBxt9Ml}#9MX(fGal6(-5k>#+Z@*%-<;5#*qqdy+?>*!
z+ML#$-ki~#*__p!-JH{$+nm>&kG8hFytx9rzP!4*rn$Dc4rz^fYjYcTop~pGrFkE8
zt@)(p$?)~&Gr%j(XE)Djp4&XHd4BT(w3X*8npZZjYF-Urfxe-6WAmow&COeyw>EEU
z-rl^Ud1v#k=H1PEn)iZNrXOfN2wk0iwE0-`aqtTDQ_ZKF&wy8{pNFqgztViQ`C9Y!
z<{Qw}>UWy&Hs5Q$-~6EYA#~mPQ|QX|m(8z`R<D0({@DDf8L@`_NApkUI`+TK|C$|I
z5Npoeu&z1}L|S(q-V)Ig*%H+f-4fFRTY;X~lGKunv<f}5C95U7C8s49x*EN(rKqL2
zrKF{_rL3jArJ|*>rK+VGx-uQKF1-o9GQGW}qouQ@tEIc8r=_>04`Y@3^p+VdGr=p>
z=fKyhFT}H2eLZ-+`lgo6EnA>#)_1h*Y}o}~xxTk$U(5cM11$%^>(`IKSFoRKIR#$D
zeipor{X)ydmP;*{!K>M?p{!@W+j6hve#-;!s`ke%Pg<U~JVRRB{sy|b{R58m?SH^4
z+#xH_om*jR&^=l`TfJJbuS5?6uSJi9uSSnUT92O63R#h!fn`m4QEPE)34C38WouPy
zHF$M;9ej0qOKWRuTWdSo8ufl0tJG(=&OuwLz682feMRfa)>Y8;>g!t9w{AdLwZ6S|
zN9#_smFox5)~=sKTD^Y0^#XVW`{mXvtyfW2vEM;k$NmJqlKmwSYuSH8SF__@TkhND
z*XG|A&=v?@WgddG&O8db(mW2j);y^#8Ev(Bc3VzcZd)FB&3Pf(s`JXWs<!I3nzq`u
zy0(V4#<nK3b?9Af-EBQ>y-4fPC$~*$n~Jg~eNNk4q;=_w+m?XWrY~<>(YCT}Rom*e
zHQ-h1>)ST8Z3M4X-_o|VZ5wpO`Yxn3>j$8#){nFuZ9CR>yzNBW$+lB%r@<@O&$XRz
zyU=zKypsJ2bS?XhwwrCY+HQkawBKvH4`0>(1ir5QC3I!`+qQRY@7q4KeQf*G_POl~
zbe;Q;wx95|?*H0Q*QmR<d$fDDgI22hwEMRE!B?vXL)WW^w@0)`qO4g@0Iyn4Zck}X
z#aO$Z*Ph>A0A0Uc(q7tL24BNo-ComP+g{fWTFKtj-rU~O-U?pN-q8+P(cazO)831;
zs(mtaUHf#jmF@E}*0!$zuWn!6zNUR``?~h^&{gi6+qblDg|Bqq1zzjE7rfg20MdH*
zW6%}vr`k^=t$M%MeyRO3+S>Qq@YU}R;OpO?!dJk*g06vohjkVFPxw0cf9(#?_317h
zt{up0)O|X9QP!!4fLE%AcSLkVqODd>>`3ZJ?nvoK1+QDr=*aBI>d5ZM>B#NK>&WjY
z=qT(cg0EsPM_R{T+fmoi(9zh@)Y070($NZD)7}AI)!yCF)6olG***!nwtX7X>h?KE
z>)RJ~Ebdr>vc`RN$C{3{&~@$`kyg5Ihp%<t17Gcau;UPT#rx5YW8hWqC*kYf&p}td
zU+TErai!xbc>Vj0j+;np;O~Q1!9VJF-0`I2DR?#f3$*p{A38pEeCqhz@ddgr{zu18
z@Y?u49e+FibvSf7f>*D*kg<L}t}`BG4SO2VtJtgI>)0DRn>w4pYuVcdWHtN2&O@Dt
zJCAf8?L5|byz@lo$<9-qr#sJdp6xu>dA{>P=f%!TosiY;*P!d&Z*|`8ywiEN^B#QF
z`{T|holiTT!PmaOhOT~p4_*KM8OI8E^i}8{U9?_@UWv349djLeXIB@-TJ*`obTzs|
zH}%$ory;Ef&mn3}IHfDX7j!S|Uevv~dr9}w?q%J}yH|9t>|WKqx_eFc+U|AT>$^8}
zZ|vUGy}5f!_tx%h-P^l&bnoom)xEoWPxs#Leck)J4|E^wKGc1<`$+fE?ql7@yH9kV
z>^{|fy8BG`+3s`Q=esX-U+lireYyKe_toxe-PgNsbl>d0)qT7BPWRpJd)@cDA9O$L
ze$@TA`$_lH?q}W4yI*v_?0(h#y8BJ{+wOPW@4G*Af9(F${ki)~_t)-k-QT-^bpP!B
z)&0BsPxs&Mf87o}jy<py>ux>nJsv%t;C1Uh7%SI9dthtVqfl0_C-x+vtzggU$wphn
zUJPHyUeQz8Qw3km4qD6J1YXVF3SH0M+0)h2-P41%s(lJ{UHgn-wX)rz*Rj{B*SXiF
z*R|KJ*S*)H*R$8F*SpuJ*SFWN*S|Laym~#jH>5YTH>@|jH=;MPH>x+fH>NkXH?B9n
zH=#GNH>o$dH>EeVH?21vy23rXH>Wojyvn@*yw1J2x1_hUx2(4uZN+;-ZzFicdrNOC
zeARnbZ#UA)_le-O?^Cd@exDCr|GpT{3iyq^n|e3*Zt2|$UJ1XWcW3Xe-rc=>diVD3
z>)j7s6Mwk(Nbk|!WAK&nr+d%zp6xx?d%pKV??w0;`D?w`!RzF2_1^Bi(|fn~UhjSA
ziuuRAPoS&jU-Z80ebxKA_YHXU{Cnv7`Om#ydcXF5>;2yQqxWa;uioFie|rD+{_Az<
zbL?~KbMA8iuYY&%^XT*J^Xl{NL#%`k><dC!4IhbfJ$xE?MSLcBO?*yYZeLzseqTXf
zVP8>SabHPaX<r%A3i%r78u>=(D*4vFw!U_>mGb?46QHZ*r=YEupVK$DZywGy^Q-&T
zfY;5h2d|vpgtm5m7m=&y&(VDSJT+IZr}d}zXY^<GXZ2_I=k(|H=k@3J7xWkQ7xfqS
zm-LtRm-UzTSM*o*SM^u-*Ywx+*Y!8_H}*I6H}|*nxAwR7xA%ASclLMnclY=7_xAVo
z_xDfepV&XCe{%nn{;B=b`lt8L=%3j?tABR?oc_7}^ZMsQSIIAiuajTVzp{T-|7!SZ
z`3?OW;Vb61f!ECMgsz(3+rJOIa{gfdq5i}DNBWQUAL~Efe*$S0{ki`0{TKQ#_FwA1
z+<&G2DtJZxjsBbcxB74Q-|4^Gf3N>Oczyk&{>S}K`k(ec>wn(=qW@+8tNz#hZ~EW%
zzw3YB{{g(}{xfvl{rCPK{Xe0r@BjAy>vx#oIKgRx^8^?0T6*^hh}HDI6Z|IlPY9S0
zI3Z|4Fmz>o_=E`X>iTGu_4P>;k|(50NCmI5&w#J9&z+EmwAQ|4LMhsM``QV06B;Ho
zPH39Y3}1KO0bY6EjkNZD;)F>PCQq0$Vd{iw6Q)m?F=6I}SrcYYm@{E6bS3`635zBy
z2Cv6o23?WAYQpLXYbLCnux`To2^%JCoUm!a<_TLSY@M)e!uAO}ChVNBYr<~uYW;oS
z_4)_FEB22}I6C3jgyZ0K`=_8Q_s>l@KjFfJixVzQxC~vxe;vAt|MrAC6YfIS@;{vL
z2)dsC*@Wj4UVvBizn<`B!rKY&CcKBQ?f(K@-Two=zW?upe-j{U?w!G_?%lxa?mZ`Z
zP4u4VGtqaV-$eh30TTl!2EkY2hlAJRM}b%4$4-m`ugFiFm^3kYV#>r+=-T|uiCGh~
zC+1AdotQT<e`3MJ!ihx_izk*$ES*?3v3z31#7gM8{o09jNNe|7C$>#&pV%?6b7I%T
z?uk7Ud%^4YCrq3;aT3~U{#g@eqpav(G;uM?s{U2rb^U86uA8_XzPf+Q#I5iZ{=0Cl
z@jpKC#Ke;mPfa{M@yx`t6VFXNKk>rEi&)qE-=WH?e+N3Pxi7)G>K@;k`#uU+-LE5K
z-Teu=uDqwk%J(dy*S_Ol`QASuYu``dSp9yD>g(TWv;I7r$Q9^__2;cq+NQKm>6p?v
zrE5y}l%6TQQ~IX#Pnj@f;*?2KCQq3%W$Kh^Q>IUuF=ghISyN_DnKNbXlzCI;PgyW!
z;gm&F7Ef6+W$Bb<Q<hIzF=geHRZ~_^Su<trlyy_qPuVbK<CINPHc#0yW$Tn}Q?^gp
zF=gkJT~l^X*)wJDlzmh7PdPB<;FLpC4o^8U<>-`SQ;ttLG3DfxQ&Ub)IWy(#lyg(g
zPq{GV;*?9^74cW6T$^%z%8e;Er`(!yd&-?Dcc<K&a(~K$DG#SSn(}zclPOQ9Je%@-
z%8My4r@Wf-ddizAZ>PMQ@_x#PDIceNn(}$dmnmPTe4Fxp%8w~Or~I1od&-|Ff2aJL
z;xN^5s?${GsV-Apr@BpbpXxEybE?-=@2NgheW&_O^`9CrHE?Rs)ZnQhQ$weQO%0zK
zF*R~()YRyyF;iow#!Zc%nlLqSYSPr?sVP%ar>0F!pPDf>b86Pq?5R0ZbEoD_&7WE@
zwQy?D)MD^@{jy=dV*ka|ms4L&eLeNf)VEXLO?^N0!_<#cKTZ8S^~=<+Q@>69KJ~}c
zpHqKL{XO;1)W1{zO?8;&IL&FA^E8)fuG8G6xli+$<~hx4n)fuHX};h!`~lEa{2|jq
zkyi3YL)Y@hPfM7VI4x;f^0bs`pf&yJ(=w)IPRp8>JuL@mb$`*c;%Oz*N~e`gD@R-B
zk67j3I<0M5`?L=5TL128J=1!p^-b%aHUYZke+qcj|MY1yrp*Me{hxz%_5X5=_5T~d
zI{-F=_W*1I?*iBf-UqN}+TLmVrtP10VA?_Oj({W6j!ru^?fA44(@ui-2Ar98cG|gV
z=fQgfE`fImT*bOi-~rlBffv(WPJ0F4FYq3^W8gD*&%n27->3bU_7lEy;NLW2*7yfa
z4+gLE4+F3CkDMMgJsP~)KW=*b^n~e&)04of{!^jr{xh+x{4btfGQD(q8PfXy8t@JP
z#QOhMq#Xd=(|e}(LU#d7oIYv#<mpqOdjV#k?FLu?-Vd-CZAZZB>1(F1oxX1Rdhou0
zP183|-$IAI0nesCpZ;R{%jvJCzn=bP`dg%(0-vXUnf`V9H;nxP^joc8I-_hx`HYGg
zl{2blRL`iHQ9Gk<M#GH88BH^qXSB>{ozXU<eMZNO&KX@Zx@Yvv=$+9wqkqPP853tr
znlX9Clo?ZJOq(%%#*7&=XUv*0d&Zm@b7#z(F@MH_84G7Dnz4Ask{L^9ESs^Ms=ENr
zf%gGioN;N!<r!CITm|n3xH04Aj9buM0rzIyN81_je8vlsb_Wo<LO*0?D4tdN$um=C
zrp`>8nLaaPX6DSSnb|XQX6DY!o0&heU}oXWqM5}rOJ<hNESp&lUddlIvwCLD%-WfC
zGaF_$g4gu7%xs<6HnV+Z$IQ-|T{F99_RQ>^**CL)=7gCOXHJ?qdFGUvQ)f<_Ieq4g
znKN;${9g)Q`@dpHt^TLg+WVYYxwG<S<<BaZRXD3?R`INoS*5eeW|hyXm{mEeYF72E
znpw58>Si^}YMj+Ht9e$-tkzj=v)X5M%<7!gHLH784|vsn|EvkKCeE5PYchEK{<K-s
zXU&*3bJna`vuDkjHFws$S@UNtn6+@$qFIY)Et$1+*0Nd4XRSb6;lE+lM))fKZL_w|
z+A(YAtX;Eq&)NfB?|)#{!C8mEtNxE7t@}Sc>kNGD|HWCCW?hD_|G$B<1K|Fw2eTf+
zcL6+u?*n)}>&>jUv);{mk7YN&&so1_{f6!caG32l+iAA*Y?s-tv)yL9&-R$@30<@A
zJKJxz|LlO-f#8+<Av9ULKeAWuI}Fge`5NfT`Nla-;MMc3bK2&#&*=cKqVJy5GpBb>
z-<<wA6Xr~uGilD`IaB6Lg|DigHD~smIdkUDnKx(toCR|h&RH~P@th@dmd;r=XZf5J
zb5_n-HD~plHFMU^SvP0>oDFj}&e=3)^PDYnw$9l$XZxHTb9T<zHD~vnJ#+RVt;s(;
z=g6F+bB@h94qlyqYR>67XXc!pb8gQ0ITyfd^)Ju4GUw`?Yjdv8xiRM^c;)_`Id|vW
zn{yw$g8vcOYxoCt1^vigKkqQlah}sW=XoykT<5vXbD!ri&vTyFJnwlv^L*#|&GVlZ
zFfS0g9zJwl*u3z05%VJFMa_$z7c(z*UL1UNeDb`Md8zZ#=B3Zen3p*(YhL!eoO!w6
z74rr23g;EgE5^ERz7D){z6ri|zI|Q?c>R1g$_n~P^Cn|iML&1mym|9cR?;uSvzC4f
zbT$1B@Ot{)^Y+Z!J8vJ-s`?}Fb@eBqE9=kBJ2&tAybJR#f>+pIfv&N?0bXT)d)}RS
zcjw)kcYof4c@O730<XA#I`7%M=ks37dpYkFeC7RnENkz7&igg*_q;#z{?7Y154J+y
z1;-lsfcb$mTqoZEUMb%^zh!>w{I>b+^E>8u&hMJvJ--L%>iL=TXU(4tT|+;A{sN?R
z^vmWipTA=M%K5A2ub#hV{@VHL=C7Z>VgAPXo91txzh(Z``P=4ipTA@N&iT9M@1DPB
z{@(ff=I@_>VE)1Rhvpxie`NmA`N!rTpMPTh$@!<|pPqka{@MBG=AWN`VgAMWm*!ud
ze`WsF`Pb%OpMPWi&H1<H-=2SG{@wZa=HH+HVE)7TkLEv~|78Bt`OoG*pZ{Y1%lWV7
zzn=eQ{@eNQ=D(l+VgASYpXPs_|7HHy`QPS$pZ{b2&-uUR|DOM6{@?lk<~uBKT;R08
zd4bCU*9C41+!uH(@Lb@vz<Ytu0^bFG3;Y)ZEC^f>v><pv$b!%XVGF_+L@bD05VatB
zLCk{K1#t`F7bGl5T#&RNc|pp8)CFk^(idbb$Xt-MAbUa1g4_jp3-T8fEGS%1w4iuF
z$%4`aWeds|R4k}mP_>|XLCu2N1$7G=7BntsTF|_pWkKtLwgv4AIu>*;=vvUdpl3nv
zg1!a)3nna>xM0$P$qS||n7Uxvg6RupESR}q)`Hm!<}8@IVBUiH3l=O`xM0zO#S4}!
zSh`@@g5?WVELgc<)q>Rv)+|`NVBLcC3pOm+xM0(Q%?q|H*t%fbg6#`-EZDhV*Mi*(
z_AJ=DVBdoM3l1zexZu!&!wZfqIJ)52g5wKLEI7H~)PmCs&MY{);M{`q3ob0UxZu))
z%L}e7xVqrlg6j)zEV#Mg)`Hs$?ku>w;NF7!3mz<ZxZu%(#|xe;c)H-(g69ifEO@!#
z)q>Xx-Yj^#;N61v3qCCPxZu-*&kMdR_`2ZRg6|7{Ecm(L*Mi>*{w(;r;NJp=RgSBi
zRynV7S>?LQZI$~fk5!(lyjFRy@>%7(%5Rnbs(@92tAbVquL@Zex+-i{_^OCik*lIs
zMX!ok6}u{KRs5=iRf(&TRwb`WS(UmfZB_cJj8&PdvQ}lU%2}1WDsNT(s)AL8tBO_?
zuPRwpx~gnd`KpRlm8+^&Rj;a9RlBNgRl};rRZXj!SGBBaUDdX#eO1S*&Q)Ejx>xnA
z>Rr{hs(;mlRTEcDS~YpqlvPt#O<Og6)r?g$SIt^Ad)1s(b63q<HGkEDRSv5iS39kC
zUhT5lb+y}S_thS&Jy(0J_FnC?+IO|zYX8*%s{>aDtqxutvO08i*y`}r5vwCtN3D)t
z9kV)ib=>Os)d{N;S0}AbUY)W!b#>b6^wk-wGgoJ=&R(6fI(K#6>ipFOs|!~btu9_&
zvbuD2+3NDu6{{;(SFNsIU9-A&b=~TQ)s3s0RyVJ1S>3w2ZFT$Vj@6y3yH<Cv?pfWt
zx^H#=>IthSuAa1d^6Dw8r>>s1div@at7opBwR-mIIjiTcp0|4b>IJJE);O+lTI0ON
zWsU0^w>9o-Jl1%w@mk}(#%GQ18oxFEYXa5;t_fNbye4E#=$f!K;cFt+M6QWi6TK#8
zP3)SuHSuc_)+DY;T9dpcWliduv^D8#GS+0S$y$@WCTC6Vn!GjnYYNsBt|?kmyryJL
z>6)@N<!dU|RIaI7Q@y5UP3@YxH4SST*EFqZUemIsbxqrv_B9=AI@ffq>0Z;brgu%>
zn*KEt)=XS8Y0cy{Q`SsfGi}ZEH8a-CTr+FU>@{=N%w02Y&HObB);O$nT<f&fd9BM@
z*R^hI-Pd}o^<3+<)_bkbTHm#PYyH;-tPNZnv^IEc$lB1gVQa(JMy!oo8?`oiZOq!(
zwQ+0X*Cwn@T${8ud2Pzt)U|1A)7NIK&0L$cHhXQ(+T68yYxCC@tSwwyw6=I{$=cGj
zWoygVR;;aDTeY@&ZOz)+wRLM7);6wfTHCy~Wo_%)wzchRJJxot?ONNtwr6ec+P<~@
zYbUIoxOURo$!n*qow|0~+UaX&tev@b*4o)?=d7K(cHY|gYZt6_Sm(ITX`S;rmvye|
z+}63T^H}G(&TF0bI-hmE>-^UFuM1cgxGrd2@Vbz7q3godg|CZP7r8EKUG%z`b+PN>
z*2S+&SeLjiX<hQVly#}=($=M~%UGAWE^A%(x}0^n>+;s+uPazrxUOhj@w$?ArR&Pp
zm9MK<SGlfgUG=(}b+zm2)-|kaT-UU&d0or8)^%;`+Shfg>s;5hu6te2y54nt>-yJC
zST}Lqq;-?mO<6Z}-L!Sn*UeZrbKR_Uv)9d8H+S8<b@SIPSm&_balO-e=k+e@UDvy<
zcVF+Z-gCXzdhhi<>wVYzt@mFaus(2o(E8x@A?riehpi7^AF)1ieboBs^)c&X*T=1o
zU!Sl(aedPI<n<}*Q`e`hPhX$0K68E6`t0>N>vPxVt<PUyu)c78(fZ=`CF@Jqm#r^f
zU$MS&ebxHv^)>5j*VnCYSl_t5X?^qhmi4Xc+t#<Q?^xftzH5E=`kwW@>-*OCub;4f
z;`&MJC$FEfe(L&Z>!+`uv3}<IS?g!7pR<1M`g!Z;uV1j<VT0oarwz^<TsF9FaNFR%
z!DEBx2Cog?8+<nSZt&aSzad~l;D(?L!5cz0gl-7i5WXQ|L*$024bdB7HpFg-+YrAY
zVMF4Eqz%a%QZ}S+NZXLUA!9@4hO7<Q8*(<}Zphn^zoB45;fA6O#T!aClx`^7P`;sJ
zL*<654b>ZJHq>sY+t9F~aYNIF<_#?yS~s+9Xy4GWp>spmhVBhL8+teNZRp=HVZ+1?
zlQvA=FlEEk4bwJE-!Nmt%nh?P%-%3(!`uz?Hq76!V1vU($Bj-Koj1B{blvE-(S4)G
zM$e628@)IBZ1mmex6yxNz{bFhK^ucNhHMPo7`8EdW5mYDjZqt;H^yv?-59qqeq+MM
z#EnTClQ*VpOx>8aF@0mk#>|ab8?!g&Y|P!5w=sWX!N$UkMH`DZmTWBDShlfzW5veG
zja3_~H`Z*d-B`D=VPoUQrj5-TTQ;_CY}?qrv14QB#;%Rs8+$hPZtUCGzj4CGi5n+v
zoV;<$#;F^pZJfSw#>SZ&XKkFlan8oM8|Q7Dzj47vhfR)~oHjXca@pj%$!(MSCXY>?
zo4hu8Z}QpXyUA~p|E7RVft!Lh1#b%36uK#FQ~0KcO_7_THbrlW*%Z4eZd3fGgiVQ?
zk~Sr8O4*dUDQ#2wri@LQo3b`#Z_3$}yD4u|{-%OWg`0{t6>lopRJy5bQ~9QfO_iIf
zHdSw`*;Ko!Zd1di#!XF|nm4s<YTeYfseMz&rp`@Wo4PmkZ0g<Ax2b>AgiRASP1-bh
z)09n9H%;3#ebbChGdIoJG<(yWO>;NR+cbaEf=v#a9XC5|cHZo=*>$tqX7|k=n>{ys
zZT8;mv)OmE-)8^K0h<Fi2W<}C9I`odbJ*ta%@La;H%D!b-W;<zc5~e3_{|BM6E`Pq
zPTridIdyZ|=Jd@On=?0OZO-1DvpIKj-sb$x1)B>u7i})yT(Y@zbJ^zd%@vy~H&<=0
z-dwY}c5~h4hRuzen>IIZZrR+rxova%=8nyso4Yo5Z|>RLySZ<3|K<ssCvKj!dGh8d
zo2PD`wt4#I8JlNrp0#=Q<~f_^Zl1S!{^kXn9kw`baoXa%#bt}@7Pl?#TRgUSZt>dU
zy~SsX?-su;{#ydJ1a1l161*j3OX!xcE#X@twnT1;+7i7bW=rgrxGnKp61F66N!pUU
zC1p$Mmb5MDTQas}Zpqq`y(MQ$?v}hQ`CAIM6mBWnQoN;POX-%fE#+G(wp4DZ+ETrx
zW=rjsx-AV`8n-lUY2MPZrFBc&mi8?jTROLNZRy_9v!!=S-<JL@6Shp;GHJ`?EmO8k
z-7;;<^er>C%-k|-%j_+4w#?l!Z_E5G3${3Hb=>N-)p@JSR@bd=Tiv&MZ1vpgwbgs8
z&sN{9ep~&w25b%78niWdYsl8ntzlckw?=G@+#0ntdTY$q*sXC}<F_VkP28HaHF;~w
z*3_+OThq5@Y|Y%7wKaQd&eq(md0X?h7HlotTC}xzYsuEqtz}!ww^nSe+*-A@dTY(r
z+O2h48@4uXZQ9zrwPkDT*0!zfTRXOPZtdFIy|rg+@7BJp{aYt&ow#+<*2!C^Y@NDw
z+Sch?XKbChb=KC|Tjy+@yLH~y`CAukb=c;(&1swSHkWO#+uXLfZ}ZsZxy@^v_cotx
zzT5n^`ELu@7Pu{FTky7!ZK2!3wuNtt*cQ1hYFqTSm~FA!;<m+aOW2mUEoocwwv=tD
z+tRkBZ_C)0xh-p3_O_gDx!dx#<!>w4R=BNbTk*D%ZKd1Fwv}(I*jBl%YFqWTnr*e)
z>b5m(Yuwhft$AC^w$^QJ+uFBvZ0p?CwXJ(w&$ixeecSrCP1rVZ+oWxiw@ukLb=$OU
z)3?poHgnsoZL_z{**16EylwNhE!gI;-Eq6qcIWLb+g-Q2ZFk@9vE6gK*LLsiKHGh_
z`)&8%9<V)dd(iga?IGJkw})*H-yX3&a(mSF=<PAvW4Fg`kKdlKJ#l-|_T=p;+f%ov
zZBO5xu|0Ep*7oe}Ioor$=WWm5Ua-Azd(rmd?Iqhwx0h`%-(Io3a(mVG>g_e#Yq!^J
zZ`j_ry=i;%_Ll9f+uOFcZ|~UNxxH(9_x7Icz1#b?_ivxDed6{>+b3_IvVH3IY1^l7
zpRs-B_F3C!Z=bV$?)G`x=Wk!I-C>904yPT?J6v|S?r_`TzQbdO=MJwO-aCAD`0nuA
z;lCqbN8pa29l<+7c7*N-+Y!DaVn^hTs2$NeVs^yth}#jrBVkA4j-(yQJ5qL}?nv8_
zz9VBt=8mi#**kJ}<nGAZk-wv0N8yg59mP9Jc9iZY+flxwVn^kUsvXrkYIfA_sN2!7
zqj5*mj^-ULJ6d<N?P%Z8v7>WG*N*NTJv(}L^zG>1F=5BV9g}uU-Z5pz)E(1yOy4nM
z$IKnGcFf)}XUE(f^LEVNv0#V8PRE^2JDqpB>~!7fw$pv5$4<|kUOT;a`t0=G>9^B=
zXTZ+Dok2T;cZTc?-5Itsd}qYY$emF;qj$#ajNKWxGk#~n&cvNbJCk>&>`dL6wljTa
z#?H*0Sv#|L=IqSfnYS~4XTi?Gokcr~cb4od-C4G?d}qbZ%AHj^t9RDytle3+vteiB
z&ZeEsJ6m?P?rhuHzO!Rz=gzL3-8*}B_U`Q4*}rqb&WSrG?VP-G%Fd}fr|q1+bH>h@
zJ7?{jy>rgaxjX0WoWFCyPKRBNyPS48?{eAYy31{s`!0`Np1ZtudGGSs<-5yom;bJS
zU4grTb_MSW*%i7gY*+ZMh+UDpqIN~^irE#rD{fc(u7q8QyOMS#?@HN~x+`s0`mT&!
znY*%fW$((_mAfl%SN^VoU4^@fb`|d`*;Tr$Y*+cNid~hvs&-ZHs@YY$t8Q1ruEt$W
zyP9{k>}uWBwyS+t$F9y@UAww>_3Y~1)wipE*MwaYcTL(gdDoO(Q+G|<HGS8NT{Cyh
z+BJLEoLzHw&D%A9*MeORyB&8s?RMVnvfFjH+iv&W9=knvd+qk#?X%l=x8H96-2uA;
zcL(hb-W{?#ba&Y9@ZAx+BX>vbj@})!J9c;6?)cpayAyXO?M~jEvO9Hm+V1q-8M`xg
zXYJ13owGZ4ci!&&-37Y~cNgt0-d(c0ba&bA^4%4?D|c7zuHId<yLNZo?uOlsyPI}5
z?{3-My1Q+6`|gh2ox8hsckk}m-MhPQcmM7QyC?3Rw0rXIDZ8icp0<1X?issh?w+-K
z_U<{m=kA`jd;abPyB+p8?s3}VyvJpa>mIi~?t47;c<%Aq<GsgckMAD8J^p(F_5|(;
z+7rAdWKZaxusz{>BKAb?iP{srCuUFVp13{ndlL2}?n&B{yeDN(>YlVc>3cHvWbVn@
zlf5TrPwt+)J^6bI_7v_Z+EcuzWKZdyvOVQ{D)v<FsoGP$r)E#>p1M5^dm8sN?P=cA
zvZr-V+n)A49eX<WbnWTh)3c{{Pv4&YJrnj!+%sv<<ULdNOx-hW&-6Vr_RQQfYtQUG
zbN0;LGjGrQJqz|Y>~-AhwAXpB%U;*LZhPJLdhGSw>$TT=ug_lJy?%TB_Xg|@+#9qv
zcyGww(7j=M!}mt)jocfxH+pZ(-q^iyd*k;e>`mO8v^RNg%HGtyX?xT6X6((}o3%H4
zZ_eJ_y?J}{_ZI9e+*`D_cyGzx(!FJS%lB67t=wC+w|Z~Q-rBu&dmHvP?rqxJytid<
z>)y7#?Rz`+cJA%k+r77EZ|~l|z5RP9?47uG(%#8?r|g}&ciP_RduQyOxp&sy*?Z^g
zox6A5-uZhM>~+}ZxX)>y^FEh-uKV2fx$pDX=ef^opZ7kWeZKqr_WAD%*cZ4jXkYNY
zkbR;1!uEyli`W;rFKS=(zL<Tn`{MS+?@QR1xG!m6^1hUPsr%CQrSHqwm$@%%U-rJ7
zeYyMc_T}#@*jKo(XkYQZl6|H7%J!A-tJqh$uWDcQzM6ft`|9>J>}%ZDw6A$z%f8lq
zZTs5yb?och*R`*EU(deYeSQ1-_f6P0ao?nUllM*8H+A2%ebe{N*f(?EtbMch&Dl41
z-@JYE_bu4xu-|dN(|+guF8f{gyX|-1@3G%=zt?{6{XYAB_xtVl-yg6)aDUML;Qb-{
zL-&X658ofLKXQN6{^<QN`(yXV?T_D|us?Bs(*ETADf?6Rr|nPQpRqr4f7br&{W<${
z_vh`;-(Rr5aDUPM;{7H2OZS)UFW+CWzjA-o{_6cT`)l{t?QhuMxW8$C^Zu6ot^3>d
zx9{)R-?_hQfA{{L{k{A9_V@3fuz%wIN&6@7pR#}I{%QNC@1L=M=KfjxXYZf0fA0Qy
z`{(apu;1Z;;{m4w&Ieo$xE^pj;C{g4fad|P1KtOG4)`AMJK%pH;6UJkpaa1NLJou;
z2s;pdAmTvefv5w~2VxGy9*8>-e<0yN;(??C$p=ynq#j5+kbWTJK<0t01K9_14&)xl
zJCJ{%;6UMlq65VTN)D7BC_7MopyEK~fvN-52Wk$~9;iFeaG>!((}Cs#EeBc;v>j+a
z&~c#iK-Yop13d?N5A+@AKQQ6I!~>HKOg=E>z|;fN4op8V<G{=VvkuHYFz3MB1M?2d
zKd|6{!$HS`P6wS2x*T*p=yuTkpvOVagI)){5BePRJ?MAP|6stuz=J^tgAaxr3_Tcj
zF#KS|!N`MA2cr+h9E?2}cQF27!okFYNe7b;rW{N?n07GzV8+4BgINc&59S=qJ(zbe
z|6swv!h=Nziw~9@EIn9uu>4@f!ODYG2dfX(9IQQ9cd+4L<H4qb%?Dc!wjOLd*nY6%
zVCTWEgWU&v4)z}GJJ^44!oi6LCmo!8aLU1{2d5pJesIRYnFnVboPBW4!MO+L9h`q~
z!9j;Zj)$BMIUjO4<a)^MkozHzL!O7c4tXE)IpllD?~wnYfJ1?Yf(`{A3ON*dDC|)9
zp@>6~hoTNeABs5?dnoQu{Go(HiHDL7B_B#TlzJ%bQ2L>aLz#!N4rL$8Ih1=S?@<1s
zf<uLeiVhVYDmheosO(Vrp^8J5hpG-$AF4T2d#LVE!=c7QO^2EfwH#_a)OM)-P{*Op
zLtTfu5A_`CJ=Axo|Ima(6Aw)~H2Kh!LsJh;J2d^!j6*XI%{nyu(40ea56wF?|ImU%
z4u>5NI~{gD>~h%ku-jqx!ybn{4|^T<KJ0VY_psk#|HA=?0}lrs4n7=mIP`GX;qb!|
zha(S19gaR6b2#>J+~N4c35OF8Cml{coN_qzaN6PY!x@J&4`&_DKAdwn_i*0f{KEx@
z3lA3^E<Rjxxb$$@;qt>3hbs?P9j-oHbGY_!-QkAAjfa~KHy>^}+<Lg}aQoqo!<~n_
z4tF2!Iox}=?{NR&35O>ho^*Kf;VFlw9-el1`r#ReXC9t)c=q8rhvy!icX<Bc1&1Au
zI3962;(WyAi0cuzBko5$j(8sNI^uoA=ZNnSza#!f0*(Y82|5ydB;-iwk+37-M<R|y
z9*H^<eI({c?2))5@kbJlBpyjRl6)lPNa~TaBk4ynj$|ImI+A@P=Sc36yd(KX3XT*W
zDLPVoq~u8Hk+LJ@M=Fj~9;rG~eWd0{?UA}84M!S}G#zO^(sHErNZXP2BOOONk8~aB
zKGJif_ekH7{v#8POgu8_$mAnaj!Zo=?a1^aGmgwWGV93fBXf?-Ju>ge{38pFI2?66
z>U7lksLN5;qi#ptk9r*SJnD7S`>4-R-=ls<{f`D54LlljH27%9(a@t|N5hXs9F060
zbu{{D%+c7RaYy5iCLB#XnshYzXv)#lqiILek7gXrJeqYh`)JP5+@pC%^N$uBEj(Iu
zwD@Sr(bA)3N6U{^9IZTBb+r0u&C%MUbw?YHHXdy{+I+O-XzS6oqwPmKj&>gHI@*1-
z=V<TIzN7s|Cmfx4bkfnuN2eT}dUV>+=|^WAoq2TD(b-4m9G!b~-qHC-7aVms=6KBM
znDa50W3I>Cj=3N6IOciG>zMa3pJTqq{Eqn_3pf^dEa+J9v5;e-$HI<<AB#8^c`WK!
z^s$&@vB%<$#UD#JmUt}bSn{!yW2wi|j-?;VIF@-V>sa=&oMXAi@{Z*nD>znotms(r
zv65q@$I6bCAFDW4d93PK^|6{`wa4m?H5_X^)^x1-Sj(~2V{OOUk98dDJl1ur`&iGh
z-eY~o`j1UGHu2b`W0Q|fIX3m!v}4nc%{Vsm*sNo-kIgwY_t?B+^N%e!=5XBcxYKdx
z<1WWtkGmarKkjkd^SIY>@8dqleUJMc_dgzRJn(qX@!;bj$3u^Y9S=VqaXj*P)bZ%!
zF~?(%#~qJ9o^U+zc+&CY<0;2ekEb0^Kb~<s^LW<r?BhAdbC2g8&p%#pyzqF@@#5np
z$4ifw9WOs#alG<))$!`%HOFg@*Bx&--gvy}c=Pd=<E_Wrj<+B0INo`@>v;F^p5wj8
z`;PY?pKyHQ@kz%gAD?o3>hWpEryrkjeCF|4$7dg(bA0acdB^7;UvS*vgyRXP6V4}G
zPPm?MJK=u9<Amo4uM^%Ud`|eD@H^puBH%>eiJ%j~Cqhnyo(MY;ej?&T<cX*g(I;X~
z#GZ&d5q~1#MB<606Uir1PNbelJCS}O<3#3(tP|NMa!%x)$UBjLqToc~iJ}w5CrVC~
zo+vv}exl+;<%y~j)hB9B)Sjq2(Qu;iMAM1p6D=oNPqdwAKhbfb^F-H)?h`#HdQbG7
z=sz*x#KaSmPE0;A<;2tz(@so3G2_I{6SGdtJ~8LS+!OOo%s;W<gu_Y4lTIg{Pr96R
zJ?VDR{iMf9&y!v!y-)g_^gZc!(*I<@$-t9ACxcIhoD4k~b~5~A#L38$Q75BM#+-~j
z8Fw=NWWveBlSwC&Po|tqJ(+eg{ba_;%#&Fsvrp!n%srWRGXG@3$-<LGCyP&(oGd+A
zcC!3r#mUN(RVS-Y)|{+8S$DGGWaG)Elg%evPPU$GJK27+<7DT_u9Mv-drtPA>^s?i
za>B`pCnuepd~(XksVAqMoPKh~$(bi-ot%Ag&dIqa=bfB?a=}T5Q;w&cPC1`)IpuoF
z?Uef|k5itfyiR$a@;T*u%I}o_sen^~r-Duep9(n@dMfNx_^F6fk*A_gMW2c}6?-b~
zRQ#!gQ;DaNP9>j8IhA@U?Ns`yj8mDXvQA~6$~l#LD(_VOse)65r;1J$pDH<3daCSH
z`KgLim8YssRiCOkReP%LRKuypQ%$FuPqmzCJ=J!q{Zz-P&Qo2dx=;0->OIwWs{ho4
zQxi{3IyL#!lv7hrO*=LH)QnRzPt7_t`_!CMb5G4XHUHFtQx2ycPdlA<KJ9Ya^|ae*
z_tPGyJx_a`_CD=%+V`~IY5&s!rvpz1oen-7ays;M*y-@o5vL<hN1cv79dkPNblmCq
z(+Q^&PbZyDKAmzp^>o_l^wSxqGf!uo&OV)UI`?$m>HO0LrwdOPoi09Ia=P?%+3E7r
z6{jmtSDmgtU30qjblvHO(~YN_PB))!Io*1??R5L;j?<l|yH0nX?m69iy6<%V=?SMN
zo}P4i^64q3r=Fg6div=Zr)Qp?b$a&cIj85Io_Biw=>?}9&N!ZNI^%rC<&5hYw=?c%
zJkEHY@jByu#^;Rh8NW0BX9CUyo(Vb=d?w^f=$WuH;b$VwM4pK{6MZJ;OzfGsGx28<
z&Lo~mI+J`R<xJ|Cv@_{vGR|b4$vTsLCg)7<nY=UkX9~^~o+&z0e5T|~>6x-K<!36+
zRGz6iQ+=l9OzoMvGYw}N&orHBKGSlh^-SBD_A?!4I?r^S=|0nQruR(Wnf@~q&P+Tr
z>CEIaQ_f61GwsauGc(T2JTvRe>@#!D%sn&j%=|M8&N!TPJnMAU`K-%X*RyVC-OqZQ
z^*rl!*88l_S>LmMXZ_CxoDDo1bT;^G$l1`dVQ0h7Mx2d28+A7NY|Po%vvFtR&nBEr
zJezbj`E1JB)U#=4)6Zs{%{-fRHv4SO+1#^vXY<b%oGm<Cbhh|x$=TAgWoOIJR-COo
zTXnYjY|Yu)vvp@1&NiNHI@^4<<!tNOwzKVLJI;2V?K<0iw&!f`*}k*=XD6JUcy`j+
z$!DjWoqBfK+39CzoSk`g*4f!-=bW8;cHY_fXBV7xIOllI>74U9mvgS?+|Ie5^El^u
z&g-1_IiGXB=lst3p9?q_crNH%@VSt4q36QRg`bN!7kMt~T=cn^bFt^*&c&ZgIG1=X
z>0I);lyj-)($1xy%Q%;LF6&(Oxtw#k=km_wpDQ?5c&_MN@wt+7rRU1dm7l9PS9z}L
zT=lt{bG7H{&NZBCJlAxt`CQAn)^ly=+Rt^I>pa(WuKQfix!!Yq=lai0I5+X!q;r$c
zO*uF9+_ZDk&&@bD^W3a+v(L>rH}~AUbMwzFIOlNQ@x0S{=kqS-UC+CncR%lO-t)ZI
zdGGT+=Y7xno%cT<a6a&S(D~r=A?HKShn){UA8|hNeAM~q^D*aR&&QpQKc8?u@qE(x
z<nt-#Q_rWJPd}e=KJ$Fm`RwyK=X1~JozFjCaK7+-(fQ)@CFe`emz^&^Uva+jeAW5t
z^EKyd&)1!AINx}_>3s9~mh-LW+s?P2?>OIizUzGV`JVH==ljn0pPz7k;`vGEC!e2k
ze(L#Y=ck{aaen6cS?6b;pL2fh`FZE(pI>m^;ez7@rwh&(TrRj?aJ%4s!Q+DG1+NR<
z7kn=GUhuo%e<9#P;Dw+I!52a<gkA`{5Pl)zLga<03(*&1F2r7lyAXdN;X>ktqzlOx
zQZA%kNV|}JA>%^kg{%wN7jiD-UdX$Uf1%();f10L#TQC0lwK&iP=2A}Lgj_33)L5D
zF4SJAyU=i<@j}yu<_j$sS}(L+Xur^Lq4Pr5h3*SI7kV%BUFg3s;ljiVlP*lYFy+G3
z3)3!4zcAy%%nP$F%)T(^!rTk<F3i8M;DW<N$BRxEoiDmvbiL?y(fy*wMbC>~7rig~
zT=c!@chUc1z{S9eK^KEBhFlE27<MuIV#LMBi%}P&FUDMqy%={f{$j$##EVH6lP{)R
zOud+PG5uo3#mtLY7qc(sT+F?gcQOBB!NtOhMHh=NmRu~oSaz}eV#USEi&Yn^FV<YF
zy;yg#;bP;(ri;xNTQ0U<Y`fTgvEyRr#jcCp7ke)DUhKQre{sUai5DkboP2T0#i<vk
zU7UV##>JTzXI-3qan8lL7w27^e{sP@hf9u^oGv+Ea=GMs$?cN+C67y<m%J`{U-G%+
zd&%#T|D}LSftP|V1z!re6nZJ_Quw8aOOcnNE=6C8xfFXT?o#}vgiDE+k}f4*O1YGJ
zDeY4FrHo6Nm$EKpU&^_ZdnxZy{-uITg_nvh6<;d3RC=lGQu(EdOO=<ZE>&Nuxm0_p
z?oz|0#!F3?nlH6nYQ5BUsr^#NrOr!Tm%1<YT<X2lcd7r<gi8}IO}aGs(v(Y6FHO5N
z{nCs}GcV1$H2cz=OLH&HyEOmOf=dpU9WOgwcE0R#+4Zv9W%tV-mpw0gUG~20bJ_Q@
z-(~;H0ha?W2VD-n9CA7Ia@ghY%Mq6&FGpRDz8rHo_Hx|i_{#~G6E7!SPQILSIrVbd
z<@C!LmoqPCUCzFob2;~N-sSwu1(ypi7hNvCTynYea@pnb%N3U^FIQczzFc#;_Hy0j
zhRcnYn=UtBZn@lgx$ScM<&Mjpm%A=^U+%fwd%5p&|K$mnCtjX(dGh5cm#1Eyc6s{c
z8JA~Xo^^Tl<vEw<UY>V({^bRi9j-WDak}Ds#pR0Y6}KzyS3ItGUh%r(eZ}XB?-jo*
z{#OF71YQZc5_~1(O6ZlaE8$lnu0&pmx)OaQ=1T09xGV8j60Rg(NxG7JCFM%$m9#7A
zS2C_-Udg(WeI@5g?v=bN`Bw_A6kaL1QhcT4O6irdE9F-zu2f#Bx>9|m=1T3Ax+@J=
z8m}~6X};2OrS(eNmG&zgS30kBUFp8kbEWr6-<AF=6Ru3WGU>|XD^spay)x~}^eZ#2
z%)Bz|%Iqt1uFSnM@5=lu3$8d^b-e0y)%mK+RoAO-SKY6AT=l%_b=CW-&sE>6epmgk
z23!ri8gw=IYRJ{lt6^8euSQ&ryc%^i`fAM8*sF0@<F6)MO}v_PHTi1F)zqtLSJSU%
zT+O_ibv65H&ehzjc~|qV7F;d7T6DGeYRT2ot7TWquU1^Gyjpd&`fAP9+N*U}8?H89
zZMxcgwdHE-)wZkcS39nDUhTTteYNLm@72Dm{Z}Vkop^Q9)yY?<T%CG#+STb-XI!0m
zb=K9{SLa-vdv)H``BxWQb-3nu&FPx+HJ59y*W9kTU-P);dClvZ_cfnuzSsP&`CkjT
z7I-b_TJW`yYoXV|u7zKVxE6UW>RR-*m}{}u;;zMCOSqPJE$LeFwUleA*V3+~U(2|b
zc`fT&_O+aAx!3Zp<zFkfR(P%GTJg1#Yo*u9u9aV_xK??s>RR=+nrpS!>aI0hYrNKU
zt@&EZwbpBG*V?ajT<g5nb*=ka&$Zrbeb@T0O}IAk+N5ifuT8l&_1d&+)343AHuKu7
zYqPJ-xi<IOyleBXEx6`z-SN89b?56Y*Ilo>U3b6kaozK}*LCmfKG%J(`(5|H9&kPI
zdeHUY>mk=euZLX^zaDWt@_N+u=<6}pW3R_ukH4O9J@I<d_2la**Hf>jT~EKBaXs^T
z*7fY`IoETq=UvagUU0qedeQab>m}Dqua{jfzg}^@@_N<v>gzSvYp>T`Z@Augz3F=M
z^_J_c*W0eQU+=iydA;j;_w}CZz1RD$_g|lIed6^=*C$_}a((LcY1gM;pK*QW^;y?v
zU!QY*?)7=s=U-oN-QkAg4W}E<H(YMG-f+9&e#7I2=MAqL-Zy-1_}=il;eR9GM&OO0
z8^Je1ZiL<lyAggP;zs0+s2kBYVs6CVh`SMgBjHBkjiejNH&Sk--blNVek0>X=8dcy
z**9`-<le};k$<D$M&XU38^t$DZj|0AyHS3l;zs3-svFfeYHrltsJqc{qwz-5jpiFI
zH(GDB-DtnjaijA_*NyHQJvVx9^xf#cG2zC<8<TEKzA@#-)Em=oOusSX#>^YDZp^+h
z=f>O{^KQ()vEYWoO~;!~H=S>~+;qL^cGLZ)$4$?hUN^mO`rP!r>37rrX28wBn?W~&
zZ-(3qy%}~h{AR?>$eU3&qi@FCjJ+9mGyZ16&BU8YH<NFs+)TZhb~F8E#?8!|SvRw9
z=G@G^nRhe)X2H$En?*N^Z<gFFy;*j%{AR_?%9~X;t8doati4%xv*Bjr&8C~pH(PGD
z-fX+sezW6d=gqF0-8Xw~_TKEf*?)7w&51WB-JE=L%FU@ar`?=>bH>e?H)q|PeRIyu
zxi{zCoPTq{O@~{Kx14S{-*UO-dduyW`z?=Kp0~VidEfH6<$KHTmjA7QTY<NNZUx^8
zxfOaV>{j@#h+C1jqHaasin$egEACeOt%O^Nw~}rp-%7cadMoW#`mKyxnYXfTW#7uV
zm3u4iR{pJmTZOlZZWZ4uxm9|r>{j`$id&Vps%}-^s<~BrtL|3At;SnTx0-LY+-kkm
zcB}nX$F0s=UAMY#_1x;c)px7^)`VLVZ%w*2`PP(MQ*TYXHT~9%TQhIXx;6XOoLh5m
z&AT=K)`D9Ow;gXg-FCk1a@+N`+imyT9=APjd)@ZF?Q`4rw%=|4+X1%&ZwK8Dz8!Kq
z^mf?o@Y@l$BX39Dj=mjpJN9<m?fBaXw-awC-A=xpay#{Q+U@k)8MiZUXWh=eopU?)
zcHZs$+Xc4^Zx`JzzFl&=^mf_p^4k@+D{oibuD)G!yY_b7?S|Wpx0`M^-)_0xdb{m*
z`|Xa~owvJgci-;0-Fv(5cK_`Ow<q47bbIpcDYvKIo_2fs?HRXc-kx=P_U$>h=iZ)o
zd;aYOw;k>{-f_C)e8=UE>m9c{?sq)yc;4~4<9)~Hj_)16JN|b9?gZWmx)XdS<WA_F
zush**BJM=qiMkVgC+1G<owz&kcM|R--buQXd?)2j>YcPZ>31^jWZucTlYJ-WPVSw&
zJNb7C?iAiBx>J0o<WA|GvODE>D(+O?sk&2rr{+%Wow_>>cN*_B-D$qla;No9+nx41
z9d|nKblvH`({rcyPT!sWI}`3qyff*}<U3RDOuaMh&h$Go?##S1>(1;ubMDN&Gw;s)
zI}7eO+;zO`bl3T=%U##IZg<`9dffHA>vh-ruFqZHyMA~5?*`lryc={k_-@GE(7R!G
z!|z7ijl3ImH~MbO-PpTvcjNCS+)ccjbT|2K%H7nvX?N4_X57uZn{_w)ZqD7@yLor>
z?-txGyjyg)_-@JF(z|7M%kNg)t-M=xxB70)-P*f#cN^|D-fg<ue7EIp>)p1y?RPuw
zcHZr}+kLm^ZtvZ`yZv`3+?{xL(%s2-r`(--ciP?QcW2z4d3V;`*>~sMoqKoQ-T8MH
z+;zC;c+csc^F5b)uJ_#Tx!?1+=XuZTp7%YUd%pMl?)l#fxEFXY=w9%>kb9x`!tRCN
zi?|ngFX~?Oy_kEk_u}rw-%GfccrWQ*^1YOMsrS<ErQgfAmw7MiUiQ75d%5@W?&aSr
zxL0_u=w9)?l6$51%I=lltGHKruj*d)y_$Qq_v-F7+-tnobg%hd%e~fnZTH&mb=>Q`
z*LAP^UeCSWdwuu%?@hQj@!q6+lkZKrH}&4Md(-dDxHt3Otb4QX&AB)C-n@JB?=86J
zaNqI1(|zarF85vUyWMxc?{VMrzSn*4`#$%5@B7{NzaMZv@P5$!;QJx>L+^*(55FIA
zKk|Om{pkBK_hawJ-H*SYa6j>W(*5N7Dfd(Fr`=D#pK(9)e%Af$`#JY>@8{jmzh7{_
z@P5(#;`=4{OYfK6FTY=Lzw&<7{p$NQ_iOLh-EX+xc)#g>^Zl0lt@qpRx8Lu$-+905
ze)s*J`@Q%3?)TrHaDU?cN%tq;pK^cd{b~27-=A@R=KWdsXWyT5fA0Nx_vhbVaNps9
z;{&G$&JSE3xIS=u;Qqklf#(CS2i^~S9{4`+d*J^d;6dPnpa;PZLLP)Z2zwCzAmTyf
zgQy454`Lp~K8Sk|{~+N(;)A3I$q!N<q&`S{kp3X!LFR+32iXsD9^^jAdyxO2;6dSo
zq6ftfN*<IxD0@);pyEO0gQ^GB4{9FNKB#-p@SyQQ(}U&*Ee~2Bv^{8l(D9)2LDz%s
z2R#pZAM`!we=y;}#0QfeOnxxs!PE!S9!!5Q<H5`avmVTTFz3PC2lF1xf3V<z!$Zf1
zP7j?Qx;%7!==RY4p~pkdhh7i8ANoA>edzbl|6#zxz=uH(gCB-G41E~(F#KV}!^nqG
z52GK(JdAx9_b~op!o$ReNe`1BraVl2nD#LJVaCJEhglD^ALcyFeVF$!|6#$y!iPl<
ziyxLeEPYt^u>4`g!^($M533*6Jgj|K_psq%<HM$h%@121wmxio*#5BNVdulHhusf*
z9`-)$d)WVQ!o!IVCq10}aLU7}52rnx{&2>_nGa_@oc(al!?_RVJ)Hk=!9#~fj*pxk
zIX`lF<od|%k^3W$N1l(o9(h0VdF1=Z?~(tbfJcFkf*u7w3V9UzDC|-Aqlib5kD?w$
zKZ<!2`zY>F{G)_NiI0*VB|l1el=>*`QTn5dN12bZ9%Vnud6fGo?@|7vf=7jqiXIg|
zDtT1;sO(Ysql!nBkE$M3KdO0D`>5_w!=uJWO^=!%wLEHl)b^<TQOBdsM_rG)AN4%y
zebo1;|Ivg;6CX`_H2Kk#M^hh7do=ygj7Kvc&3ZKZ(VRzfAI*C-|Iva+4v!rlJ3V%O
z?DE+4vD;(!#~zP8AA3Fae(dwu_p#q&|HlE310M%H4t^Z+IP`JY<M783k0T#PJ&t}H
z^Emc#+~fGi36B#WCp}JnobovJaoXeb#~F_^A7?$zew_0-_i^6i{Ko~43m+FfE`D6{
zxb$(^<MPK9k1HQnJ+6LS^SJhL-Q$MGjgOliH$QH9-1@lfar@(r$DNP69(O<PdEEQB
z?{WX*36Cc}p7eO~<0+4)KA!e?`r{doXFi_wc=qEtkLNy~_jvx}1&<w`I6iTD;{3$r
ziR%-$C+<%?o_Id-dgA@W=ZWtVzbF1r0-gju33?LzB;-lxldvb@Pa>W~K8bn~{Uqi|
z?31`B@lO(-BtA)clKdp)N$QidC+SZzo@74BdXoJl=Sl99yeIij3Z4``DSA@;q~uBI
zld>n}Pb!{NKB;<A{iNne?UTAE4Nn@MG(Bm4((<JBN!ye5Cml~ZpL9Lxe$w-#_etNA
z{wEWjOnfrw$>b+fo=kl*?aA~fGoH+RGV96gCv%?6eKPOK{3i>ZI6QTH>h#q4smoK>
zr*2Q(pL#s?eCqYo`>D@U-=}_0{htOr4SX8(H27)A)6l13Ps5)^JdJ!B^)&iv%+uJX
zaZlr)COl1in)EdJY0A^or)f{qpJqJGe46z%`)SV8+^2a@^Pd(xEqq$^wD@Vs)6%D9
zPs^WHJgt0M^|bnF&C}Yabx#|fHa=~7+WfTTY3tLrr|nNWo_0R%dfNT8=V|ZLzNh_9
zCp?|_bkftwPp3Sc`gGdU=}%`oo%wXu)7ekwJe~V=-qZO{7d&-%=J?F%ne#K3XRgoO
zp1D8sc;@-c>zVg6pJ%?${GRzg3wRdzEa+MAvyf+@&%&OCKZ|%4`7G*L^s|^}vCrb3
z#Xn1UmiR2`S@N@#XQ|K9o~1v_c$WDr>sj`*oM*Yu@}A{CD|lA;tms+svyx|}&&r;a
zKdX3F`K;<$^|P91wa@CFH9Tv4*7U6TS<AE5XKl~gpLIOzeAe}>`&rMk-e-N!`kzgB
zHu2e{XOo{zc{cUgv}e<w&3HER*{o-?pUrtT_u0H>^Peqv=J4F{xzls!=Pu7(pSwMG
zf9~<z^SRe^@8>?xeV_Y1_kSMnJn(tY^Wf(p&qJSwJr92#@jUW*)br@)G0$V4$32gK
zp71>JdD8Rb=PA!qpQk-ff1dF?^Lf_u?B_YpbD!ru&wpO<yzqI^^Wx_v&r6?|JuiP=
z@x1bR)${7-HP36G*FA4|-uS%fdGqs@=dI7%p0_{mc;5NE>v{L{p69*K`=0kdpYVL*
z^GVMqKcDh^>ho#Or$3+ZeCG36&u2fM^L*~}dC%uRU+~=Fh2smS7tSwSUbwz+d*S}V
z<Avu7uNU4gd|vpz@O$C^BH%^fi=Y?5FG5~~z6g5}{vzT<<cp{m(Jx|N#J-4o5&t6L
zMdFL37s)SDUZlQAdy)Pk<3;9+tQXlYa$e-V$a|6hqTog0i=r3BFG^mNz9@T9{-WYV
z<%_Bp)h}vZ)V`>D(eR@2MbnGs7cDPZU$nhwf6?)x^F`N-?iW2TdSCRt=zlTc#l#nr
zUQB*5<;Bz&(_Tz}G2_L|7qec>elh38+!ym+%zv@qg~Ln7mrgI8U%I?>ed+en{iVlC
z&zD{=y<hsg^nK~~(*I?^%fOdGFN0r(ybOIA_A>ls#LLK+Q7@xk#=MMu8TT^&Wx~tE
zmq{;^U#7fFeVO(${bk0>%$Hd&vtQ=C%zc^nGXG`4%fgpMFN<H6yexfL_OkqC#mmZ<
zRWGYw*1W8JS@*KxW#h}Hm(4F*Uben$d)fZ7<7MZ|u9w{}dtUaw?0eb&a>C1rFDJd6
z{Bp|6sV}F!oc?mg%b71{y`24W&da$k=e?Z&a=}Z7SB|foUOB&VdFA@b?Unm0k5`_r
zyk2>~@_FU^%I}r`tAJO5uYz6$zY2L3`YP;I_^XIlk*}g&MZb!975gggRs5@jSBbBZ
zUM0Uud6oJq?N$1#j8~bjvR-As%6XOhD(_YPtAbaBuZmt3zbbiE`l{?z`KyXom9MH^
zRlllvRr{*$Rl}>sS52>)U$wkyebx4={Z+@S&R1Qpx?lCY>V4Jss{hr5R})`NdNujg
zlvh(<O?x%{)r?m&U(I?o`_-IRb6?GSHUHIuR}QZoUpu{ae(mzw^|jk;_tze;Jzsmh
z_I~a2+V{2JYyZ~)uLEBPy$*gI@;dZ&*z54u5w9a(N4<`I9rHT&b=>Rt*9or^Unjjz
zex33<^>y0o^w$}$Ghb)D&VHTqI`?(n>-^URuM1xny)J%T^1AeO+3WJx6|XB_SG}%&
zUGuv3b=~WR*Nv~6UN^sPdENTD?RER>j@O;9yIyy{?s?t&y6<)W>j|$XzMk}Y^6M$D
zr@o%{div`buV=oV^?LT}Ij`rwp7(nG>jkeJ-Z;K-dgJ`Y<&Enbw>R!@Jl=S|@p|L^
z#^;Ui8^1UHZvx%~z6p90{3hg0=$o)N;cp_|M81i76a6OUP3)VvH}P*0-Xy+BdXxMn
z<xT3Fv^VK*GTvmq$$FFhCg)A=o4hyqZwlTNzA1WB{HEkh>6@}Q<!>t9RKBTtQ~jpq
zP3@byHw|wZ-!#2xe$(=%^-bHG_BS1GI^T4?>3-AmruR+XoBlTw-b{Qm>CNOfQ{GH{
zGwsdvH#6SMd^79K>^F1X%zZQO&HOhD-Z;E<eCzbq`K`-a*SBtO-QRk=^?d8~*88o`
zTi>^SZ~fl}ybXLC^fvfy$lK7jVQ<6VM!b!D8}&B&ZOq%)w{dUd-zL0Ge4F$(`EAPE
z)VFDG)8A&i&3v2nHv4VP+uXN#Z}Z<4ye)iN^tSkI$=lMmWpB&hR=llzTlKd3ZOz--
zw{>qD-Zs8%dfWWA<!$TRwzutXJKlD_?Rwk&w&!i{+rGE`ZzsH+_;%9U$#18;o%(j#
z+v#s-yq)=W*4x={=e(W!cHZ0hZx_6Ec<1=e>7DaCmv^r3+}^pr^LXd^&g-4`JD+#H
z@BH5RzYBO5_%7&O@Vk(Aq3^=pg};k<7x^ygUG%${cd_r{-o?L5c$fGt>0R=>ly|A`
z(%z-N%XpXhF6&+PyPS8q@ABT|zbklG_^#+(@w<|DrSHn#mA|WaSNX2$UG=+~ceU^8
z-Zi{yeAo1@`CZGq)^~01+TV4&>wMSsuKQijyWV$w@A}_OcsKFgq<53wO?fx<-L!Yp
z-_3Y8^WCg>v)|2mH}~DVck|yZc<1om@x9Y~=l3q}UEjOCcYp8k-t)cJd++x??|t9<
zz4w0~@ILT;(EH%`A@4)qhrJJfAMrl&eboEt_c8Bd-^aa=f1mI^@qN<!<o7A>Q{Sh(
zPk*2BKJ$In`|S5Q?{nYhz0ZGN@V@YU(fi`}CGSh$m%T54U-7>3ebxKw_ciZp-`Blw
zc;EQG>3#G2miMji+upao?|9$&zUzJW`=0l`@B7~Ozn}1a;`>SOC%>Qae(L*a@29_?
z@qXs}S?_1RpYwk1`+4u@zhCg);e+D`rw`5_Tt2vdaQoo?!Q+GH2d@v_AACOee(?L?
z{~_Q*;D?|O!5>0CgnkJ75dI<JL*$33578fDKE!^A`w;&j;X~qwqz}m-Qa+@9Nc)if
zA>%{lhpZ3TA96nAe#rZf|DoVR;fJCR#UDyOlzu4tQ2wFfL*<9657i%PKGc4w`_S;A
z@k7&x<_|3&T0gXXX#ddhq4Pu6hwcwOA9_FZedzx%;lsoalRixTFy+J457RzO|1jgj
z%n!3Z%>FRv!`u(^KFt5H;Df_Q$B#}Qoj<yKbp7b|(fy;xN6(L5AH6^NeDwY3_tF1j
zz{kLkK_7!ZhI|bD81^yzW5mbEk5M0^KgN8F{TTN#{$s+&#E(fIlRu_>O#PVlG5ur4
z$IOpeAG1H^e9Zlr_c8xt!N<anMIVblmV7MzSoX2}W5vhHk5wP5Kh}J#{aE+0;bY^+
zrjN}ZTRygaZ2Q>$vEyUs$F7gvAA3Ibe(d|$|8c^{i619@ocwXh$EhEueVqPr#>bf-
zXMLRgan8rNALo6X|8c=bhfj{5oIW{!a{1)?$?cQ-Cy!5_pS(VKfAaa{`^oQ<|EGXY
zfuDjt1%C?p6#6ObQ~0NdPm!OZK1F|u`4syp?o<4yginc|l0GGWO8J!fDeY7Gr;JaT
zpRzt>f6Dok`zh~J{-=UZg`bK(6@M!ERQjpxQ~9TgPnDmlK2?9J`BeL<?o-33#!pS3
znm@ICYW>vqsr^&Or_N7ZpSnNweCqww_o@HWgijMcP5LzX)09tBKTZ2I{nLz3Ge6Dx
zH2c$>Pjf%b`!xU4f=>>g9X~sLcK+=0+4ZyAXZOz@pFKZ&efIwB^V#>a-)H~N0iOdu
z2Yn9y9P&BzbJ*wb&k>&^KSzCz{v7i;_H*3l_|FNS6F(<?PX3(oIrVee=k(7RpEEya
zea`-z^Evl(-sk+!1)mE)7kw`NT=Kc}bJ^$e&lR65KUaOO{#^69_H*6mhR=<kn?5&x
zZu#8$x$SfN=Z?>vpSwPHfA0C*`?>FP|K|yxCw`vvdGhBepQnDF_Idi}8J}l<p7nY5
z=Q*F}exCPv{^tds9lkhzar)x?#pR3Z7q>6&Up&5ee)0O^{l({t?-#!>{$B#V1bzwn
z68t6POX!!dFX3MzzC?bB`V##m=1c6CxG(Wv622sUN&1rfCFM)%m$WbGUoyUAe#!ch
z{Uzs1?w7nT`CkgY6n-iCQv9XlOX-)gFXdk<zEpmx`cnO+=1c9Dx-Si18oxAsY5vmk
zrS(hOm-a6mUpl{Zed+$v^QHGo-<SR`6TVFRGU?0YFH^ou{W9&#^e;2M%=|Lz%j_?6
zzRdkH@5}rz3%)pfb^Pk|)%mN-SJ$s@U){fYeD(b5_0{{U&sX2Ceqa5+27C?t8uT^z
zYslBouVG)qzeaqG{2KK&`fJSB*spP4<G&_+P5helHTi4G*VM0RU(>&4e9iot^)>rz
z&ez<pd0+Ft7JM!ITJ*K}YsuHruVr7$zgB#${95(3`fJVC+OKtA8@@JvZTi~$wdHH;
z*S4?iUpu~be(n0&{k7+7@7KPs{a+`1o%nUq*U4X}e4YAr+Sln{XMCOcb=KF}U*~+C
z`*q&e`Ck`&b@=A^&FP!-H<xd&-`u{rfAjd}`OWK__cxz!zTf=5`F{)e7WggbTkyA#
zZ=v79zJ-5__!jvs>Ra@;m~XM);=aXyOZb-fE$LhGx0G+G-_pLNf6Mrm`7P^P_P3mG
zx!>}><$o*qR`{*xTk*G&Z>8VLzLkHg_*VI?>Ra`<ns2q=>b^C6Yy8&qt@&Hax7KfM
z-`c-*eCzzy^{x9`&$r%hec$@OP53tP+oW%kzfJiz_1m;>)4$F5HuKx8Z?nJ6`8N04
zyl?ZrE%@f}-SNBAcjxae-(A1EeRu!v@!j*g*LUylKHq)6`+fKS9`HTzd(ijb?;+nq
zzlVJf{~qx@@_W?x=<hM#W536JkN=+VJ@I?e_vG&>-&4P*eNX?M@jdf<*7xl1Ip1@?
z=Y7xrUhuu}d(rpe?<L<$zn6V4|6cLE@_W_y>hCq*YrofhZ}{H$z3F@N_m=Oi-`l>o
zfA9F-`Mv9V_xGOfz2E!3_kW-8ed6~?-zR^c@_p*}Y2T-RpYeU>_gUX(f1mSx?)Q1$
z=YL=D-QkDh52qi_KU{ve{&4%@{=?&k=MS$R-amYP`2O(w;r}DxN8pd3AHhFDeuVxA
z`w{*l;z#6<s2|ZkVt&N_i2D)$BjHElkE9>TKT>|A{z&_g{v+c@=8vo&**|iA<o?L}
zk^iIMN8yj6AH_dPew6+w`%(U*;z#9=svp%qYJSxIsQc0Iqwz=6kLDjOKU#mZ{b>Ku
z@uTxc*N^TWJwJMX^!@1nG2zF=ACrDe{xRjp)F0D+O#d<C$IKtIe$4(c=f~V1^M1_#
zvEYZpPsg85Kb?QN{B-^4_S5~R$4}3nUO&Bm`uz0$>G#wBXTZ<EpFux^e}?=F{TcQ%
z{Aa|^$e&R^qkqQyjQtt+GyZ47&%~ceKa+o^{7n6s_A~uw#?Q>3SwFLX=KRe4nfEjQ
zXTi_HpG7~5f0q0#{aN<2{Ab0_%AZv~tAEz~to>Q{v*Bms&!(TvKU;pb{%rf%{<Gs}
z=g+R6-9LMN_Wtbq+5dCG&xt=L{ha)B%Fn4kr~RD%bH>k^KWF`%{d3OGxj*Oqod0vd
zPlsQQznp$K|8n`|`pfN?`!A1Qp1-_)dH?eH<@?L;m;bMTUxB}Zeg*#u`4##r>{s}&
zh+mPvqJBmHiuo1$EAChPuY_NTzmk3>|4R9l`YY{M`mc;%nZL4rW&g_gmHR92SN^Yp
zUxmMleii>J`BnO>>{t1(ieHt#s(w}fs`*v>tL|6Buf|_ZznXuw{A&Hx_N)C@$FI&`
zUB9}2_5AAn)%UCa*Mwgae@*%|`PY<RQ-4kSHT~C&Uo(Hr`ZfF4oL_T)&HFX~*MeUT
zza4)&{dWHC^4s;d+i&;Z9=|<*d;RwQ?ep9Bx8HC7-vPe^e+T^z{vGl=^mo|r@ZS-?
zBY#Kzj{Y6<JN9?n@A%&dzY~8a{Z9U!@;mi++VAw=8NV}sXZ_Cpo%1{Qci!*(-vz%5
ze;55O{$29B^mp0s^4}G|D}Pu0uKr!~yY_e8?}p!vzngwH|8Du+`n&CS`|pn5oxi(&
zcmMAB-TS-mcmMARzbF2l^n3E}DZi)wp7wkC?-{>m{+{)F_U}2r=l-7ed;aeQza9QK
z{&D)_{Kw^w>mRp2?teV~c>eMF<Ne3ykMAG9KmLCL{sjIB`V;&o<WK0Ius`8{BK}1F
ziTV@$C+1J=pSVBqe-i#A{z>|i{3qp4>Yubf>3=f*Wd6zell>>>Pwt<*Kly(O{uKTx
z`cwR;<WK3JvOnd2D*jadsrpm>r{+)XpSnK{e;WTZ{b~Nw@~8Dr+n@G79e+Cibp7f6
z)AOhIPv4*ZKNJ2;{4?p#<UdpXO#L(M&-6bt{>=O{>(A^zbN<ZzGw;v*KMVdi{B`{6
z^w;^X%U{>OZhzhXdi?eL>-E?Bug_oKzkYxH{|5XG{2TN)_;1MH(7$1S!~aJ7jr<$+
zH~MeP-`Kx#f8+lq{7w9u^f&o$%HPz#X@ArIX8g_koAo#QZ_eM`zj=T2{}%i${9E+5
z_;1PI(!XVY%l}sVt^8Z{xB73*-`c-*e;fWb{%!i({I}(A>)*D&?SDJ|cK+@9+x@ra
zZ|~o}zx{tF{GIrB(%;E{r~IAzciP|Se`oxi`FGae*?;H!o%?s*-}!$R{B`)}_|NH|
z^FNn=uK(Qrx&QO{=lRd;pZ7nXf4=|x{`vn4U74{mb7j`b?3Fnyb64iA%wJisvT$Y5
z%HowJD@#|Ftt?+zv9fYy)ynFXH7jdZ)~#$<*|@T4W%J6Gm8~n=R<^I~SQ)l5d}Z$z
zH3rbdfqT?J6d9O@iGhJ>0@N601_lOZ22BPw1_cIo1_cHV1_lzb0uvVl0|OTW69YE`
z0}gzEnV*4y0XJ4?5M<zB5Mp3}VipErh64<u3=B}Lz#zuJ0KyFu(117t0|O@h|6iTq
z|9^7^eg<oXfB(H0EEs$l7(m#-pMik^f^8Ur85lsA3C&0pZV1BxhA;+}gh+;e%t;Ik
z3^;H_8Uq6Z7F>|Yz`%gOObl5J3^*_cLpB2gIru;>14BUp0~13b0|P@LgMdRZgBk-Y
ze#;n28mbvu8tNFl54AF^66j(GXPLmTh-WIpp1%tjzU*Jiu%Bfs!@;6G3>+={87>!}
zWMG(hhJjV)BE!)~HyMP&A29rte8o^>@R5P5_y@zPQw)sT<+&L{82A|7a>W>zsmn1w
z4^d~#y>7%PreV%_zuuMcxV1lH4ObZBR*6`~ue&lB|NECRzRsv)oZHdL_<!{z#&W$m
zjQ3x!WW4`=JEOh%A;x?6&N2S~e~&Tz%?rlgpT9ExuV-P}|67R3zF(H<`gbiR`|svV
zzyG^2{rw-x^uIoZspU!*Q}62%rrT|`Oe{wlnQolvWRiY5iRo1OY$k!@3z_s%S2F#*
zzK!Wk_yMMA4o8^`W}RlTyl{!>-IUu*W&sbGKAe8Vv}XMmrr64VOuyr~nScJ1VE!hq
z#Qfoa2J=UIW9IU&_RPELyqMqrk7WL5nZi6TE{|F6W;yeg-Hpuu4SSeFEhaMyYR_a=
zFrCNjQni%1`{-Kc`%ycXC+|7PyubV$^Unj<m~~6;F}E>1WEME`lzAz~D`o-l_sk|N
zpP5fC`Nh2L6AKH|6Hb=Z|3p~?k4dwvQdef_x~RpX?x4@|G|YlUgU5!&fzzHveug{C
zXYW83+u9hGH{UZ@lC<+#O7tsOmi}yFnfJbrg|~Yui~O>AEC~gRS>F1rVX6PWn<aGW
zVV3h}&#^4@zsAy<bcZE){xg<8I`3KjoBd`<KhMUxvXr0of4>ZC{u_1H*AEO>_dd5_
zop0~K`u%@6>-YLp*82Cwtp9&EvE~bRv%a`KmGz9|9M<JOma+cN-@^KxV-M@MjmKE4
zxX-cHFkfX|6L6c={P{E1=I8HOKY#zjsxXz2?e#xCw$J90Y^Ng>+1|zLvc11y!De;c
ziS6!QKeji&quB2K&tQ9hzLf3lzDBnD&->W^@1M(d<?jl%&z76m{{K0^_W%8Pw!8oD
zvfcgvn(h7a?`+%tGP7sL^Rf45inIF*%CYCZP-o9H(PQWRWzK%<zYF{FJAUknw?f&C
z_r|jyH%Mduy|sva|L1!4gj22T*WXQK|6e+fo%PL9_OE#x*suNF!@lzUarS*bFSFnO
z{gA!-_d9m}>L2X?|8sEs{w&Jz|F;Uq<$d}bKi^t&tbXUlvE^$3$KU_)9RL63aoGQ_
z;rRc*ha>y{Opbs5S8%vEtmbHbxtZh2?Y$f>DTg@18%}UEd_K?7CUcd8`~7{6Px3E0
z&hGod@h{;o$J$DE&fZh}oZj!HINvfTaNaOb<Gi!ikaLQ?73bedH_o5u0y%XagmZpA
zn#dU%m&N(^dpYOtzpb3TxB58$eV@Z=yni|8`t6%J_2=&8d_VsbXZ_=Aod2&q=KP=f
zp7Z_xf1JPn^K$*aE6w%)zcyF>e=Dy0_dU4&PY>miG>PU)oS(uqF)xR!=RhHs{rp<4
z+GFipr{7QJI=_8B*U$fJxfVNZ=F%(P!^NU`fJ^TFX)f_SSGfNFe8jc!`&+L6zkYM+
zTeEUMDB|G`EfeLIi<IU5`%;tp-+v2kp?eP8D^GfGmpl#R_IMD+9rY%j`|qqQ?)dX%
z-0i+~+!lA*xN|1=ao-i2&fOqAhr9de5^kA-RowT}w{d^Gevtdt&C}e;4i~t$Ib7p@
ze)b{v>fl%0+uS~JzkK$Gd;Vt*p1WRxJa#PNJj;G6^6Zh(<hfsM#-sM#f#-j{KhOVF
z(L8tWXYf@2E9Hs%-^BBO`vji%_vi7{zgfjozkdhM?@vc~UjDzxv;Y4Cp8NIhc=j`W
z<B=%(!*g;qD{s0yKW|BkDDT5>^1SAZs=V8D^?2X?wBi*ka^OAj%!Bu?YalOoM;NbC
zLKLqsPdu+Ge;RM)o&w&z!j-%Sit2fP-|Xg{%sP?xp8Z_j!nw<MZ9i}1t<u=RyX)T(
z-k^??ylJa0@~)S?&AV&=bKWmEKk}}Q`^|eJorUk&az4I2rzQB_N2~Dh{?g@pz0Z=b
z{;nI}{~y78-v8tIX70`8d*55a7x$`;@7DZIzN&pw_*Va4$oK#MM!tW4_w)V!cb4zI
z`AxollZSlwbKdaHo%)q;^K%CNtp7ax_0J{wOHvj2eM2?*|D84EZ&kP9xBl<RFU8}>
zZ}U5nf0K41|MA#t{<yeO{@(TV{9n_%_?fFG@vpU;!>_k{8GrWsP5id^_wm>7JI()o
z?+yO{|6lO`Kl+7#|6eA7BwbE{e;0%W{K91f_B*KxoV{%zut~>UV2i$kz?}#Wfgt?=
zf!wdr0&!i*0>MF90%HG41fJG62t4R$6}Xk#FYqLOra+v+d;!z@s|5c3+%8buvtOWL
z#bJRX|IZ09e7P*3|Nnu&)cV%~<^O*QSjRC7Ui&W~`0J{);O$@Pg5UO=2;O;VCwO<d
zr{J&pFu`~ClLg<!<_Z4(Un`hDyF+l>_Q`^^Z{`VV-B~7h{@F&s`fGaybHASy{JZ+9
z;JfmNg8%Nn7yKRnNAUk|ZlU@*38BALDnfVX8wln9w-fsJ#Y^b!{|KSKZ&QWd?Jp9l
z`Cl*e?`gNt|Npav{{LSs^#A{Eq5uC+3;q9pTj>A)*FyjQ{}xL4&njHKQ$X1Kt+ep}
zzgoh~zm0|eKXnjRyyzyp`E#J~-{0}V?)6#1H^WPWnZMQu|1ItizJ7O#uzdV{;g*6W
z!kQMVgiqbuB5d(<udpBc5#cvK&IzxYdtG>9&OPC0r7wh8C%zT_$nshE{L6pBY}?sH
zE*SBMh%^a^<Sv&Isotm}62Dnr<YKFth^UaY$itP+BHJu|MDpK7h}>S2Byv<dOGL#W
zPvmx8l?dPSW|6&fdPUYOpC(fJbb-kI?$shXx3`EK3EeI7`qy!h=kqU%EHAq&@_+kl
zk^lBTMW)xXi2lnH5RI;u7S+70ELvHvC+cc#Cff1GPW1g>AJN^l5u(Tcr;5G{%oE+Z
zze?2pdYkC~b(2MR&z~>)`qe7Y_dQ!g|Gz&hTKoT^==Q(&M1TE#E&6l+579sNEMouv
zi-`UIuOjyMv!U4c{|;jJ|N4pj&yNxNzdu{-zk9jZJiP|7dpo<uy3bA#`_DdKtn|oo
zu@ApCiv2IyE2i&qM6CYqMX~=s?~6_Q@j`5W{Wq~a|Cz<_ujUv3zg|{cf1if<=Uc|&
z@2efe-`Dtv|9clHe*JHn`1k!K;^+T2iO22l6aW8ruK51{YsCNG-!1<C)d_K#kaObo
z=WdDb4t*kSY5P|Ew&i#6H^B@Nzw7xV{`*Ty=>1WZcsNf_qH3?D#2+3<iG)Y)5?^-*
zONh5eOWa(TERk!IBk})!wM5nb4vByMQzZWHUo4Tob)CfC@?8?YO^-?xeLgSoE8>R4
zpS@2c;_kke`2GK%#PmuI$$y_kC1<aalWcphA^G>exn#Vez2yJ<ev)?kqa;hVr%3)=
zUnp7sr%v+!?_SCO|L02nUcX9mk^N>#{rdfq@8i!%e$BWldEe!pWWc5;lK0f!O1^*i
zLvsFaR;kxD0#e({Wu!DCm8FiTYe^mG(U)?*VJ6kR&0b3Rle^TL+(4--ucM{nN>Ze{
zE@n#|(<_$xcD`O}{rYaH@8vV3{!d#XrM+#f)YiW{rQYv9F7>khveay;+fo{3kEHI~
zzn6Ns=7&`76-Md*m3-2>V#KB8UnxqL{MVKK^Vw2*;xk9-|FXW)=la8?f7Yi+N4?CI
zz7}3C{r`TObp7+m(!s5>q_@j0k^XUZowTOc7HRRbd!_Rh9FdM&e_mSZ{!Qus%}=E3
z-+z*>@BJ%Xn#3v-`d?7y!ConuyB}3$&iyr%`Tx#dCi}Oy%-#QyGT-;7%e?<zCi8xA
zqs*Q^Ju>FZlVzgf=E&6lS}Aj;db7;`--l%C|6i2(KJm89ma9)>Zq~h*Q4jqt^Y0q7
z?562FviZ9uWWW7alP!1Em)-y0PPX>HkL>^dF|v9UDY8rM<;qI>mB`LJS10?uzDM@|
z_t~=hZI{bVi{B{wKXR|^@}gt1XSZIE?OSwR_Uo#Lvhk^}WmjDKB>QXsf7!^b9CG*W
zi^}<(mzT3VpepzFpOKvHdpo(WH$CO%?hcWwU7sLVpPnPPzrIS&{&&0F|GKGif9@}m
z`~QEF-2eZF<enctEBF8J9l1!p$8x84zmxme`&};f6ob5cE|>hjI&t~`-&E!Q|2C2T
z|KCNvs@z}x|NnUT|Nryl|NpO-|G&RazW)DQ`Tzgd%K!hrSAPHg)AIlS-<JRX|F!)8
z|G(w`|L0ct|6f|+|9@?T|NpHO{{Qz@`2Rghq4s}<!vFsj3jhCiDE$9FL*e)T<qH4H
zw<<6=Y*P@B*r~w4uv5W-VV8n{z#at#ro9RbEc+A~9S$fkFdR^5_;p<2^#3agK2>)V
ze(rdt@N(}*g}<x+D!iBGP|U3tQT*j2t9W;{hT{1;6U8}u?G(Q}_f%{-9-zqeCR|bK
zN4%nFSeoMI!}*G@e^o2~|JkYdw|=^!+SB=p+ntsxo)BE4n903aaY6qsMf=7>ioOoV
z6&IX3tGHY8n&N_8cNPEVzgFD2@0;TOM~q5GesU?r%@t94!ziWnt4dYr?=b_V?Z0f4
zzJK;q+VDC^>Hq&ErSj9cO3#;9D0Q4~P<o}_sr1olf)dM?sY>~!3zYs>tyTJOw@c}f
z<Uys^LMN3feJ(2XGF(+knR7=em+6s`quO(&mh$&XxnF-NG3xwN@_o#%T<<2R-1<U7
z*{oJc`GvBkG7E#2a{Vz=<@tLZl|L`@R{r-POj+SXlyXdVvhsSrT;)4IE0llSX;NOw
z-l_ce+*D=$e+!iVo?D~5|Nm~~+J{G#zaBlWJoVR2<?1Dml<VKVSN>c7SNU}Wo66gp
zf+}0$rB$ZAS5x_yZ>;kFy^~65wXe$G=TR#42a;93|HxO_zqdx^{l6}i*Bhs(_}4E`
z`Tu;K%6qGwDs_L4sr;?Ita9!BeU<lr->UpC|E+TWKbPv>{}QV8f7Mj~zcW$&FYl=O
zX19;(@8uDye;E^0e;m$Ky?(w_H9ezNwdZ%cs-9t=>Kl`3s_*A6Qhl&zm1@zAO{&4G
zcBx+6dqg$Y{G4k2nwzTSf1jxy+y7B@UHdQ9%hy=c%IgKy{=3PjUB9iNw(qlv+Q;t>
zYWH^gsQup?rS|=IhT8P+C2BwaH>v%8+pl)+{4BNnzsuDQE?KKqCBI$m<h288yWgKx
zdwu<;TJ8I1YBTqKP&-}oOYQJKR`n-qc-4RZmRA4tQC0o!XG8UM|LxS@{`XP;Zy%+;
z|9__X|MGJ6t^Zrp|Noz&{{R0H_5c63sB<c8SKqPvfco_E)9T;<-%_vp|3dx${~zlA
z|8r>k-!HE5|DT%1|Nmwh|Npyb{Qn!O@&9MC#`ph48vp+{Y5e~`N#p<jMH>JAZ_@bx
z|B%N2|CcoC|3B3D|No=L{{IY`|NjeU{{OF_`TxIx=Kl9~n*aa%Y5xBor}_VXo+g7p
zz9th#p=JX^ktQQUu_gmci6#R>i6#S6sV0L%nI;26nI^;kI!)WRotpQ5PuKkUd9mjA
zAL})5zucwy{@)4B|Nn1j{{R0%^Z)-Jn*aZEX#M{$q4od2hSvZ87Fz%1U9}h)+_V^=
zxUIoUOW}H;7Tf=5t+SugwBFViYkmLUq;*uQQ){{UBrRLvSz6DN7HfrHSgmzGbDP$C
z`9oTtHBW2Zy?IS5<HKF8pMPIz?f3nvwJQI=R%|`D_Ph1s+W*s4w159L(*D2SQTzY@
zK<)qk6Se>UFVz13zft@D|B2fF|1Z@3|9_+Q|NjTI|Np<JZO?K;n}OkmHlx5TZ5D+)
z+TXvt(B3omleXu+-`Yo5{%dznVAUzR!>`j2D6FF)ETOYQUQuWMGHspAcvGE%Z+1GD
z=XvOyj}OuL^etW|^lFCAM(qNfmJOvkzSea*CCA%!EW`SB-p`w@^ZNfvo&S5c>wK<1
zqVxCfC7tbzH+8CJKh`;@`BH~N=B-Zr(eFAxJ~Qclmgdnt|65YGo>NKp?|TE?|Nk9y
z|Njrr{r^8f_y7L_-T(g^bpQXKp!@&-0^R@rH|YNVe?a&B|MR;4_utd~|Nout|NVb;
z|NrOJ`~Ocy@Be=tz5oAh^#1?%(fj{DM(_Xs9KHYlYxMr_@7DYOf41KL|Eu->|K6qd
z|Nkky|MfTZ{{Mfe_y7M-z5o9?_5c5t(BJ=GUH|`obN&DS-Sz+f57+<yKVAR-|8o8R
z``h&Y|DUG+|Nk=m|KGRj|NnnfU!LKVz7ykFeFg>yZfH2KFTrw2-+|$>J_E-UeFlar
z`V0bB^&1(k>vJgF)aT&5qp!enPoL4@f&Pa2SNi|||I+{epUdF?e<_3i|FsPM|F<&u
z|KH2tzd*17Lqmu`14F0*hi9b0&)um8jqce7Tt^BF&XrdiWWH!N;QrrdFh6XDLEf81
z2KE0p8f@#`Wx&I`-{AKDvj+bvZWx&FeQcm3^U`4Z`mYB6Z!;VI+QVn~|G%8!=B*lr
zH~tzME`M)tc>lVO;mdy!hTp=I4PXB+H2nX+(eVHOiH7zEXBkfazufTu|LunV{~tH}
z|Npw-|NqYo|NsAP`2Rn<(f|MAM)C|YMhqTuMk-8-MjZdOjQ;<(GWx&Y)99i_fKmOw
zIHUjn^NjxAuQmGjzsKnR{@F(V|F1Us|9`j9`Tr-4!WqsPad=-g;t9H8#PH{y(fxmK
zjQ;=sWAy(&kMaNiGRFV^>lpw4Z)5!bzmM_%|1rk@|K}M0|6gPL|9_A1|NnE0|MRaf
zW?@)q%#pO#*nnw+vBSR|#x}1G8sB(++W2eTb>qF^kBt9+{b2mP?yvFpdTx{N^^zvP
zpR1WT#^{*5{cmOR|G$^X|Nl`Y|Nm#1{QqBN^8bIA$^ZYeO#c60W%B?3E|dTNPnrDx
zf6L_m|5qme|Nk=i|DVhB|9>gd|Npg2|Npl#{r}&~^nZSYspPbH(-X?6rVLXuOc@Sk
zo3b+(n6mMdnEw9XZ2JHIWYhou7n}b7zuENv|HG#L|6ex!|NpV+|Noy&|Nmz;`~P3q
z?Eimdv;Y5%&Hn#)Hv9iS*zEuRWV8SOi_QN3Z#Mh?f3n&C|BKE3*KabL;IP$9P-3SU
zqrz^p*hPoU)DN6A`(l5^toqvnv(NEw%=Z8PZT5Z|oB4ZLLG!n6Qsz;W%I5!<>YM+c
zZew2d*Tei*eu#Pf)Ohpv|MSfM{I4<p|G&rlfBkH8wg(H${}-+?w_`vVIE8XHnlms!
zvA`yC1_m_DwAq}2VY9gc!xnP}G~B?j)trf8n>oXWUFK4a`^{%FLybhCj+rwsATT4t
zadU=$=ghzVyJKF@|J<B`fp%DgA++;p^BalgS`kM6zDgzrhU2b(K*RBkwF3Vc85qjc
z8fyjaGchof%XYg89DKpjE7A&*-f^OgS)iAPsnhq*OAkf{29R=jsPg?vn94iy;mReU
z%2lAs`PDF$b0CzzVt|;g&%jWo4zk98fuURu)iEn_;HK|pU|^U4Qf3HMf8Q8WeFj2(
zH%z@RRQ>w-nCf4o!pwgi*IS|n_U#X-di`IR>R0%~)$763|7Bn(Q*5jic>kY)p<Dvh
z{U`ij>YHo-Fz~m$Wnf_FcKyS@J%A~#GxS%tt3dMu{!Z5~{M%iBb^Cs~{G;<w^CQOA
zOZ+W|85kILFoKl(e!2XhH{gGoV(2fBGS$#f1_u7^p}!g*ty=Z}f9J)tgD)974>6ts
z83<NjYz$Ly<_uH;6N&<Uewcy}AD{|YkQHnJo1b>@6-Vbm#*1m4zQ4e3766&fc&L{}
zXjcY1vjG2g7J;-**H7K9Jp9{3KY^5Y2z0yhICO=6>JZq$#K6Gtn&0riYwjKY|NsC0
zngtYICl5m>c6uT6L#F@C{#pLB`e*;o;h*h4JNOLM-~WIATmQ59Xa3LPpW(m1|Be5d
z{0n6I``?ApgYobGL?&?BRtfHQ73h-ai2dJC`+r#pcSG&}6(y`M|1&T!KvMlXQ1H15
zIDpjrYpDHaU&h~1`>(D{?ln8q84b1n82EelGB7YS)c*Td#`<y-Xd-A^=s*5#zW*B!
z*8l(izw-p+0mc)ZhYvnx)jZwHBHeiqq^Xv@*Kt4Nh1aaTjt3Yobh`dXJMQ}J@BhZy
zA0K5H7|L}TYk!EyKoZ6eEs%&rx9bnq*N^}I@0DTLkuebzd@{^wow46uYc<yX$d-kw
zEtG{Mq93eN9zoPjK~kI6So`ho{}NCr^KXy+)+qrAWf8*zuLUN6!WSCUh6i3VbjRK}
z2}(quOwF)&1(;&k2c;oA5V;#e1SE>U2T<fu3bzRpCNMC3TE@WeW!cwd50*V#_F>t_
zWsjCUUiNO;`(@9TJzw@@+0$h&mc3l|YT4^$5EH@i1}&4efaau*yZ!^00`{OHNx89B
zz@L$Up<JrlRe<%tzyJSxMHqIRm;?$e5m1Kt_c{Wkgo%NnOtrCAARSbE$$->u_zO|{
z0$Ht2=eNdM0sViFpcQcc2MJmM)(eaf)f$r#CZ{#m{$nVSha~2I$cgzMEHMjpeltAq
zng<fbtl;oIdARc%#8054D9{lKN{S8qZKaH$6!rffe|t6~BsJD^f%UzNhsZ48Z@U0a
zb^pKfw;zM0Q-O}qe+{+&7nYhg)c#viD%|bLbDUv2s3ZX8rkBcKz5iB~N`NIq6c`x5
z3E(9cBLf52Jq@-07L-+i(sFr8m+OC)h7Q+1UB3Ss4mNc7{>@_Qb^R02?aC9-?aC4G
z!lCis|K=kCod-Hye>B(rU?}104*k)2;Uy?Hbh-Wq>2&?q;fk)U@y~x$ZQKxTZJ_eD
zq4s}6nNmaT{{`hTSxnuo0to9i>O=G$>b&qewxRa_a<IC880t6+5$a4EYX2`P)$Ru6
zVMy5gTTmv`Q2TFHxfm#>wuS!d?K-c(z|hG74v5z*pp<{|@B~PlG}a3IHeg^V$!e?>
z5LIAcC`p94sn_)%BnT=mqXmIObL|hN63!P9nyd_<`~)gTU@@1$2r9dIx<dao9BP1-
zbpOF@u;nk^85tPREU5Sa@eDkS?Z6gry!fuc%FtT|E~jATbHL4q8xBo*FG1A?IDQ*z
z1@aZ4^;4xHq<-Q##;^!d><Tm-GK6W_#lXPO`3=oEwdiqY4t5Ubiwux+O4N|u^SZjX
zjG@~V<X?36yiRDW6#ym6Qe|)eae|ZfYp>34-L5>x7#4zDbBtjLI8<JnG}a1$QfjF>
zSS>F^tz7RmP>F!7eicMLGzuZ|3<f;^84Z{W`2PPkkp3_AU;aPie}jK&3aSbL{{sI7
z{oBqE@-OsX*uU_9hW|tqjQ$BLfNBm9=J?O~A5^<U|Bw9-szpQ$L=8YSjevom0jOr-
zGT=4<)i@jmoCcuUhsS`|0JJ`W&w$?mv_>NGU(~<oe=+}J|Hb{2P>@uRQIJ)THIOqf
zQZQ9u{?GQG>%X<aat3CD)2ioHH>++^J*Ud1#;SH)^_c2H)di}1RrjbaHeyw@Q~3Me
z{{P?qpp_P&RTiMt7V-ZQ{w4n7{?GgWI>UE{jSNysGXLfN%l=PON>@ryl2Zy&N>obv
zm;5i~U)sOae>O^*N?J-wl@yfZmG&!LGQMc6t)!=9s$`<%pys6JsK%)_QE{^3B*h7e
z(-fyG&QzSCD5enepZ~wje^I53e=Pr>{ueTM@c-d|*8d9snH4z|Gyi4%%l>!Oc#iR0
z<9WvCj29aB8TT6>G2Xxs85kWH7Z@9u7?>RRJoIJBxtd1RCe>!u7S&eOHr0034%L3u
zKGj~;9@TEuF4ay|8&wlk9aR-o8PzGO46013Q&o9X1yn^;B~)`&^Hd8|^Hl>><5aU$
z6ICCnK309I`b4!*wMeyC6%;$P!~*{X{|o&W{x9-h^uO4D@&6M4CI2TVCMqT=CM%{W
zrYfc>rYmMBW-2NgC>bals2Hdks2QjmXc%Z3{Qd6|{P(}&f2IG*|5g60{#X02{$Jz2
z=6|jK+W&R_>;BjKum9iRzu|wQ|Hl7K{+s?c`)~f=;=kp8tN)Jwo&G!jclq!7-|fHq
ze~<s3|GoZu|M&Ut``_=s|Nnshf&YX42mcTGANoJ+fB651|B?Tr{!e6{#5|dK3iDLv
zY0T4^XE4uXp2a+yc@Fbj=6THXnHMlGWM0g?gn23RGUnyXE0|X@Z)D!YyqS3m^H%0<
z%-flFFz;mE#k`w&5A$B;ea!or4=^8OKFoZC`6%--=HtvKm`^gZ8nPL(8*&(O8gdzO
z8}b<P8uA(P8wwZ-8VVT-8;Tf;8j2Z;8%h{T8cG>T8_F2U8p;{U8!8wo8Y&qo8>$$p
z8mbwp8)_J88s20&$#jb8IMZn+eDRi`lBklTlB|-VlB$xXlCF}WlBrUnQmRs>Qm#^=
zQmIm<Qms;>Qmay+Sg2T}Sgcs0SgKg2Sgu&1SgDBKu7L3wR2Ws5RG3v*R9IEmRM=HG
zR5(?*RJc`mRCrbRRQOc{R0LIoRD@MTR76$8RK!&zR3ufTRHRj8RAg1;ROD3@RbVDz
zry2Yr{TTh2{ha+`{o4F`{C4@-2c`yQ2R;a72x1JH9V8m;7#tIPBAC;U+mFMK%TL?S
z!tY_AtDlEoykDGOpWi}1hd}0_UqQ~nCxagc%ZI;?5RFuiERGC_4vY?t{t?X|qZDHi
zQy6nM_G#?L*iW&aWB<h##r=!pju(#iO%n7I@Z<H<^)v9Z^z-(!jOp;3=r`4GlHU}+
zMSchU4)`7RJLY%X@2uY`ztet4{G0<F1JeU@1M>oN0;dOl3uFso58?>=9rQ2ge~?(P
zWw1xEd$4P8TyRV9>EKhrXM^8FXhv#BYDMZshC~a-sKi*s<i~u8t&aO2ClW6je>k2a
z$t=k`$uCJiwLNuu>XOu*sZUcsq;aHcq$^}6WmjgO&c2d;JDWepBqzH-tH`X#y2!mK
zvM9P}O;LBTq@S3dsGo?RgrBvaub;o4pWjoz8-7>(uKHc`yYBbc?}^_{zk7bJfi8ia
zfn9-X0)Gbn3j7hs6|^8|eh_OgTd;VrZ18<QuVByM#NdSB{NTLc-NEmJp9FsneiQsI
z_+{{m;6K4Xg1-j84t^H=D)>|I$KVgaPlMkE{|>$#b}LLQQZLdlvLv!BGBmn5+9u{j
z?DN=Xu}pEyam8^pag6a2@#67E<GGT8lR}b$k^+;Kranv6OV>%)O4m-;O;64~n=P0l
zkYkbKnB$ORm$Sa8rMR>BPRX+piBkDejZ)20gHpp%qf+D2?$X+_b!Gd@-j&@he^mat
z+^TY4Wl7cPDmg!SzaYP0zf8ZGeoOq8`7QPP@5kvc>Cfda>d)&h;4kRU@Bhi~o8NE0
z4}PEh{`xWcbNhP+x(B)idIV+!76$ePZU__)5)2Xw;tLWBS{%d?tQf2iTo7Cs%o)NT
z!V|(3A`rqD!X3gAA{fFO!V$t8!WY68A{6o<>|WU2FynB8aE)-?aGh}daLsVZNU2Ek
zNQ=mp$co73$lA!t$fn4~$nfZh==SK2=+@}Y=wH!dF_kg*V%g%#;!5K9<E7(o#$Su)
zOX5l5O%g~-PKr*7NHR-(nffC2P3qg!PiddiIMZ#@P0|h1P16;#Q?jeG#d2bE!gC^X
z;&T#m0&+rg5_6(+d~^JA3JT(jVvFj^epVIN{HQUj@2cNh&)C4+z|$bqVBApO(Am)4
z(9`g^@m1sJ#y^cbP0~&BO?gd4O?6G#Z4Mni9myT_or=?p{8sq+`uqF4`-l6-`J4Dh
z`-l1)_y_n0`rG<j`CIrq`-k}3_`CTh`^Wev`0M-o`J4Gi`p5cv_(%Es1bPSh29^eH
z3)~*48l)1W8Kf1Y5wtpJWzediH9^Y3#lfY)vLU)5av^phY9W3h>LG3+&LPGj9wAO4
z(jl55ULlqt)*%)ldLgDEW+4h8HX#lnh9TM^@*z4QufjfrJqddq<`o_o?hx)9?jG(J
zZWkU9?jLR){yxGka&F|L$Q6<EA{R%_jGPwP8@VKMa%5NJ(#Y88nCPhJ=;)s4?&$t#
zofwB0#~Aw<yO;?v6Jw^t^u)Z5<%#Q$Yme)S`yR&<FCU*0pA=snUm1TR{!IM!__OgJ
z<6p=Bh<_C?lq8tck~BSOT2ez&SyE?GZc<lLO;TM_Wm0j{q@?_$8A*9bQ<EkqO-yP_
zvP`v3wMhM#`Xwzs-7nogJs>?WJtjRYJucld-7P&KJvco)JvIA$wo^`A&di*~oQ|B%
zoYtJ#IaxVXITLaUa(Z$ya;D`>%Bjt1&MC^N%PGle%PGt0&6$!jBc~~+te~c#wxFUQ
zsVK21q3B4_p`vNUI;GmB=A{;;O=a)P9+w}iJW#p6vaITNO=$hJhRF?c8)h`jZkW}u
zsUg2<Qd4(RZ&P>YrA~$}^B%XJ(4M(HDZK@~n|oLHo$8z2zoGw7|FQm~{YUyA#!j5D
zXu_%q%O)(I;5qTw#4{6(rs+*HoTfERXPTN{m|wA9x8H2Pd48+?*7)W7&-L&1FZQqZ
z&+(t_-|gS#-|S!DU+UlCpXp!iKh3|+zu$kNf0choU{GLaU}j)>U|C>A;NHN$f!0A5
zLFPeLK?Xs3L1saYLHmMs2L%O(1P2EP2B!s=2Ui4F244%l5_~<lIHWXWT1Z96)R2ad
z>X7n~mXJvyZ6P%w6G93@%0hZVW`!h$WQ25w)Q0qh{0eIhFAvWO&kRotPYX{8uL+ll
z^o(?m^oVqc42j$qxjXVo<j%--kryM6MP7(J8+khNa^$JV^^uz+FGU`WjE_!<PL7@)
zJu7-f^qlCK(X*qaVmxA8W87l4$1IH55wkL8b<D<?%`p;jQgLE&qH)r3f^ijbv*M=5
z&54^DH!bd4oLankyk>kud}Dlld`<k__y_TS<G;rLkLOPiNzhL)O%O}aN)Sy@Oi)kI
zOwdk{P7q5HO|nn2OL9o6Pdb@&Ch17h{-i@mJCiOY-A-DabUEot(&?lVNh^}}ChbYO
zkaRQYc+%OVtx30%HYVLjx|Vc3=~&X5q;pAjsmoLMr2a}3NfS=vNn=Z6O5;moNaIfv
zP2);qPvcGJPR~v6PM?}ym_8@HIK4c*J$-Ka^z{7ng7o_I&h)zU3F)Qjv(hK0*Q95q
z7o{s_r)8&S*JlgoNasAxd6DxuXJgKpoToXPbN1%!%h{9jC}(xf)tt*YJ93WX?94fs
zvo7a)&e5EYIs0>V=RC~0opUN@P0stAJ2}^K9^_0d=qs31&{Z(AK&MEz$fC%jD7`4N
z=s?lAqMJq6i!KzcEM8GOzj$@=(qh}vxur8pXO*^;9V+`&_NDA;`QLK8N{33v%9E8R
zDyyn0tA17es|l&^sqe05ZP?YYv|&-h#)gFrs~c7}Y-w24u)g7G<G)7Urp--rn`Snx
zZQ9#3ziDUF#-=q*OPkg=?Pyxuw4rHV)AlC6w!${qpp1^wedqeG^k3}XI$_6zjT5#_
zI6m>>#PX>PQ)Q+(OtYV6J<VmB)3lw_UQ7#`9yfiy-&((Qeh>Y(`mguj@BhI6qW^jS
zyZ(p$xB1`jzwdv_|GNJ={|o*{{15rx@;~Q)&wsmrc;KYKiGd3O{eql>yn=j#e1g1#
z+=Gq>oeVl0bTEiFI6SyIcvkT3;58u!LRN&F3pp9GBV<{~=8)qdheGy-tO_|8awOzL
z$oi1gAsa(>hpY@)9<o2=e^^s^cld(v#o>#>&xNlGpBx?<85rpw=@%Igc_;El<p0RW
zkuM^dqn<{-io6y1ERr$mcVuSt;^<}3OQIJ=FO6o5@r&_~@s070xfydQ=6kGcoNAnW
zTy5NfxMgv_;yB`U<5S~1;#=dp;=AM9<9p&e<AoAr6BH6u6ZjG|5_}U15;78!65JA;
z6LJ!=6S5Lg5*(B6B#9++CjUu#o5Yy>F6nO)d-BJm?@8~I-X#4?`jRA=%#>`O>YBPb
zb#LmURMj-yG=((vH2pOBG>tUFG?ldPY5&tNr+-Ypl71omP5QR<_32;JU#7oLKazei
zeM|bS^rz`N($A;gOaGj{A^m3hqx8G!m(sJco3q=pw`O0;zMd_gb25iJ*C<yj*D+T$
zmnYXSS1wmP*E-iW*DlvAS337=j%BWTu0^h9u3oNbE?=&8?&^YF1)B@j6s#{;Td<>G
zUBQw9gQB9M{GyVgmqibX9u{pcK2^NCcvJD&;seE-i=|3+OZ`iIO8rW`OIMdJDP3B+
zsC02@MOj-}ds#=>iLzs5hs%zZF_!-<`%%VO&Rzbm>`xhc`JHm63Xuw)3f>C0O3zA<
zO83g0mAfi0R$i(+U0Gk%SoOc^Z&hs#Q!Q&PLoH`5do4>XTdhTXU;X}ifd<|N!3ML2
zYYk5uZZ#ZkIMQ&Y;bFt=hI0+~8lE)VZTQlt)bzZGxtX>3antRlXH6{4Pn(#UIh!vv
zU2po>#MpeN=}ObZrh847o9;KgZ(?f>Xsc|iZmVkZ?a1zE?7Y&+(Z$ro+%>OfK~G6<
zaqpJivwdg!KJ-89f7Jh~|7ri*{@49a`d{>)ns9Ey!3l>acu(}2cy?mb)PQN;(|o4+
zPD`4eIsNqXx6?mQXPmKO#_bvRXH1(pb7q9!W<Q<)-T>u*_x@@DssTUzH3P%~*aB<<
z<O8GvgaQNue)%&5hy-W^eDqfg;0}-skO=tf|IS}GKr7&%zjgp;KuzG1z@>qU0?!7X
z2|N~fIxs9KCMYB*Iw&?sE4V&*e(>Dj`@t_l1VR}@%|ri$JPr92!WQ}~L?rZO$lH*I
zA)KM_LSBVD3sDbc5B(d$AIcog5`HNBO8DvU!{M9}{E^|25s^`mf>9DtGEwqT(ow=u
zZz2_<l%q7GRHJyJIHR(oBVsm0Z;sv;y(M~G^w#K|(L179Vgh4AV*+B{#{7->9rG&Y
zMa+koZ!wIqUt-?H>c(lut&Uq8w>-`;ep39z_zCfm3CRhm2>}VA3AqWG3Hb>v3G)+X
zCG;jtN$5#vO_-M8p7c41Bl&-lU$R}YesXBCQ?gsKf3jz?RdPVGZL(IfcCtpYZ?aFa
zN2+J)%+!OaM^l~BJk$KsoYR8Re9~Og9MgWJiKL6Bi>E7QSY&u)xMc)qSY|k7gk)%D
zY|aqR@W}|wu+8|A9+2UXVUyvUp_Sp9A)FzR;h52t-I={TTRBHPM<YiqM<wS&PFC*J
z+>YG#+_c<^-16MW+{w8)xt+Orxly?#xtX~=xm~%HxvjaWxl?ja72GIzQgE~2M8Ww2
z%c9DnKSe)_{uccx`d-vl{I;00<X!QD;#bA@ibG0cOJho-N+V16l^!iUUb?AtbLrmF
zJ*7KK50&mH?JnC;cB<@b*|{>!a`|$Fa*gtr<pve%6&4k;6($wt6{;1w6$%yd6-E`I
zl>wCrmGPBfm2s7^mEo09l}{=kS3a-2U-_)^W#x^^ma2}bn^kPpg4LZhinZdk+_hY_
z3bjhLBDDgwqP0@BGPS(5lC{#cR`v1qQ|gb_AFO9<U}=zO5N(ib5O1(;uy6R-z|{Dm
zfwl2%!<PoO#vcuz8#o&OHgGlmX?Wl8w((6PLz6(0R+Dy<Mw3p{?k4T#pyrTfuV#zp
zfM(BT(`J)q|7N3R%Vx7?@n(l+!)A?U=jM>MuC`TeliQZGt!(RQTiiCMt)Qd4qp_o@
zqqd{6L!wKdi?55POSFrtOT0_CORS5(OR&qMr>dv2XJOBxp7P!`eV6*K^que9*v~kD
zZNm3{h6%s=zw|Rt_}kAq;Ya_}2@faSo$zQv&_v&fJ`-<DygTvw#5)sjPHdi<G%a~r
z;<V^#vC~qfMNEsEwtL#68Ea;)m~~^8>TILgHnZ#essd^QVglR)oCACUq5?bvQUl5Y
z`~pG)N&`v)$^-lZ_yh6-asy%lrv`oq%nHg6x)gLX=tj`hAc0{1V98+nV25D4;KRXx
z(%eF`LeoNBLgPXcL!CptLJdR1Lj6NSL-j*bLM=k|LSsU8LX$&{LmflILpj2^!#Tt6
zhqFd-MX*IY2!9g(E1W69G~#>s&v1pvq)4+U$0*OJw5Y5ohbWt<q^PJUw<xcug6QMX
zN28BKABx@|eJq+Yh9ibOCLty!CN_pWmMxYqRytNJRw-66Rx?&4Rx(y4Ry|fc_ED@w
zoLQW4oO#^#xE*oZ;<m=^i!+Tkj}MQ}iO-DBj-MVsGk#wDjQEA|3*zU**C#Aa=uB9U
zup;4f!j^<*340TcChShwns6s!Pr{9as|m*v?kDU>xRr1`K`Kc)$s=h&^77=O<Y~!^
zl9wizC#NURNM4m(n7lH%Gr2i=c5-&|isY8$j^vri3zOF*PfG4jZb+_9&P>iou1bzg
z4NDD7jZ6(sjSuxtjYthm4N0AoIy-eu>iN{usb^BprN*X3rKO~0q@|_BrTt919weRK
zn6W-%QO4wqtr_(hWf>bYmS;@Q*pShjaU^4HMq5T}#*~b?87ng8XDrNU$}q~_mHj&V
zO}2JUU+$jV&$%~qH|0LeJ(K$+_jm5ET-Lnfxu<j2=U&WRmwPYwXYP*N@3~)dkLF&=
zmCD<idn@;K?v316xgT@i<-W*0mU|?3RqmVI{khL_e->~Sauxn9cwb;!R9n<oBvUM1
zELJRBELq%M%v!=#!d${u@~@b;<Uz@|lJ6xlrAno#rD>%}r3Iz^rB_O?mToOQReH9x
zuk1?MrLx;)=H+(fHsxmJ7Ufpu*%i(eeif;e8I`$}zbhwIO|4R>)~J@Q)~QyjmaLYm
z)~lXWGreYNja#jAZDFlmt!1rEtwXIrt#PeOt$wXjtx>IEt!@3h`dRg7>d)0*s+Vc-
zYH(}NZxm}(Zq#nnY&2+8X=G|LZ8C2%YqD(WYo6CUqq(AaQS-Fsz0IqeCpC99Pj2pP
zUeH|LT-{vL+}6CjIkYV+{&?Ggwry=k+P1bGYdhVxv2A_Z$+qB*c^w@ct2-ujOzY_F
z=<b-@+25(vCEKOkrP^iKrQ0RnCEcae<=GR}v$AJR&+48PJ*#?__oVlx_3rE4)qA_|
zexKw7-U(6@#3v|Eke?tsL12RD1i1+c6Zj`6O%R(PJwar`iwSQh{GAX!@!Z6(6Q50d
zJn{L&w-aAZ?3|i4t#n%Pw2Em3(@Lh5O)H<4Gwr~%SJPfjdr)=1ifIP(jHua9=akN?
zpSN`0?s<y>dIMSmW(G_QXb6}VFe6}A07Lr6z@ng%pwghspnE}ggKh^!1uqS*4s8fs
z9$FLH6*@O`Mrc#$oX}OFQ$pKAyF;5pH;1kZogZo!x+!#4=<d)pp&LW%LOVlOht3S;
z4cCv*iZF>#i7<#Tj8Ke_jZldA8SyJ3A+kJbR#bh|q^Q|Z%cF{;3!^VZpNYO4eIc4F
zhC9YE#wRu))+E+F_HV3foNb&#oO4`V+^M*OafjlL#M#8>#;=TD6~7|>V#33OO$pl)
z9wf*lDkuI*5Ka7$@H^p4LPp}p1ir*?37m-xi9(6;NuEiIlY5fSCm%?DnS3(&Sn}EA
zOUaLuFC;%qzLxwp`CW2Z@|WaS$+we(Qf?*xOpZ%UOHE2mPMw%KA$5IfURps~Nm^N2
ze%i#es<gVa^0a?x|I_5tWz&CUT+MipaU<h;25aX1jISB*GM;Dr%(#^CDdTa*>5Q`(
zyqQ9oe3>URZe`?U{?4$=w#v56o{>E*dr$WJY`q-)9Gx8fJd3=LJjFbty!1S;JcT^f
zJmoy;yy(1$Je9n#yu3W!Jhi<1Jd-@%JgYpNJm);wJiENpd7XKZd474xc`kWHd6{|f
zd6I=vg=&Qcg^Gn{g?WWCg+4_sMGZw}#j3?7#hS%dC0ZrMB}yf#C8i~2B_<{MCDJ8o
zB^o8FrD~<wrCFtqN^h4wF1=ZLqx4?sgVO4<nzCtSlgqZ0-6``ge_I|~kyDXh!CS>q
z#a+c(#ZWb)YI@bQs;5<tt30d2s@<vss)MRSs(q`ytNp73tLN7&t%<7*sLiMit<|p0
zt1YTctWB#;sx7E3u5AguQh&9cyCJBdwIQ@Iq|v)Eu+gv4veB*4uF<D4xUr;Bs7a>j
zWixZjk7nMM2hB&Dxmyl4zi<B7{G~a(g{$R5Gf&Hz=D*FKnol)bwD7gCwA^WCZ@JQZ
zzd5??e%sBqw{2J2Znr&YyU=#8ExhAk$Dxjm9nGE7I<31Bx<b3+x@@`}yF$96y8^o0
zx=gyPy3D%5x)OVude-;s>Dk<~x94Eb?w$iZTY9$lZ0p(Iv!kc0x3#yi_gwGY-qXFe
zdN1~#>Al^1toL`{kG?;BbNclrm`*U9U@^gHg4qP7iC-shPW(3^d1C6s^AklTiB3|U
z#5qZB67M8|N$isZCrz2!Kec=6#Ho{~PMX>`wQE}6wC-uO(^{vsP3xUjG_7UY!D&aQ
z9hr7)+VN@cr+u1sW;*K(wiz5Vp3itS<Nb`6Gd|6DJ7e9<wKEUTJ3H^<ye7Z30b2t$
z1#AvD8n7>5O~Cem-2v+ZjtA5Sl?T-Z-4A*e^d#s}(BmNe;QOI3LNA9t3q2QlC-ive
z#n8v0PeR{^-U@vfdNlM{=+n@Xp+e!p;c*dx5fKsL5m6B#5!n$w5xEgw5lIn25#AB$
zkq4trMxBY;7qvHPPt@k9Ls6TeGGp^&ec~$PPR5;x6N-<FUlYGBUMi74(IZhl@pFQ7
z;?D%eM2<wiM4v>LMBhZaM3Y4IMBYTUMDs+&B&8(b6uT6;6s;896x$S?6#f*M6p<9(
z6tfhu6!8?cl$_N0sT)$Kr*)>ar*))FOKVA+k=C2WoIWKpH!~`;JToCPB(pTrAhRjc
zD>EZAJ2NgbII}XdEi*PVIWs!bJ-aCTK=%IZ%h`Xk7v-(byPUTz?@-=^yt#SD^N!{%
z&6|<8CvR8Y>b#42)AHuz9m%_rw<>RW-j+PS!pOqR!jwYK!t}zJ!kogiLZ8Ca!ni`W
z!i>VOLaU;nBJ*O`V*6sd;{1}RlF*X)lDHDb68n<KlIW6{lCsi@Qiie*rHo~tN<WtV
zD*a#jrSx;@y|Vjd(dF6YY2|U{$>o*hS>-w9G3BY{8Rbdk@5=isHdIWnm{HMF(OFSb
zF|lHDMSVq8WqoC1rB2J<N|`FDDupVMD)}n8s`*t5s>-VmR3}vDRi{^Ptl3<%wPtc{
zW$nb;#@hbc=-Ryc%=)bQqWYEfE9#fjhc!erv^BIe6gCz#Ry3wI<~0^KW;a$gRyC$I
zvNpLlHMNwt*tQt9l(wX`WVd*><g`S$*tD3oB(@~CWVYnCxV6N!#k9q@{cIC%=V)hd
zXK4S|_PdR#ow=Q@ovS^v<9^4Lj+-5KI&O5_?ReO6s^e<MrH(nBk2|xwin@xs(z-Ic
z3cA|6YPyoU7IYPMwRYupC3WR><#bhcRd?BSWppL=boF%hoa#B=bE4-+&!(QkJ%@UZ
z_B`yp-}|EXeedVqU%jt-pY%TK-PFh2&)NU4kE?%v|E7NL30@O|Cpb+AnP4*^bV9%c
z_X++J{3iHL2%KOy!Eu7nMDd9^6SF2}PCPl$d{X!%i%GVV946UKik{>>DP>aNB$G*=
zlYA$+PO_Y2KPhU`jHxrGO_?@z+SzHRr=6U3YTEZ{zo-42_HA0&^pfdi(*<S-&Jdo#
zHA83y&x}7azRdVL<KK+UGdIrMGV|fAmvfrt@y!>WuQ304z`KB_0oMZF2HXm`8gM?~
zV!+3Ma{(^{k^(;mHU~8Y83wNn{ujy+CLJao_BT`{j4g~aj5mxg?0cwKn0y#Vm_XRK
zP>FD{@Y0C7h~|jN5nU0L5v>um5q~38Bb6dmBC{ehBOgXRi+UM#J?dK2ji|>_rP24I
zpGQB8ej5EO`bG4k=qJ(lqj_VJVp?L`W257e<3i)Y<3i#t$6br#ig$}Ih~F9So@k%w
zomifjl$e|tpBR-Gkyx6jmDHXRkrI-!B&8xHKBX!pFeN?3BqcYcI;ALeVe0kNYpILU
zR;0~Mo0GXBb86<n%ypTUGf!vE&fK24J9BmBmdp#8XEWDkp2=L6c{p=%rf0TKwsDSe
zzDWMRJmLH=d7All`3m_u`TY4z`AYf!^WNvN<s0T(<QwHH=ZofR=j-Qp<ZI=>$z#m_
zly@fYd)}17nT555U4<=$lM3yMCKXL9aw!fdPAN$)$to!*$t__iomi?~##_c+##ts@
z_OR@6Sxb3sd3||e`N4|$70W9&SFEg9T+vtAU)fu!S7lhWs%mA`+p70f3#+GAcUPBI
zPp_U^J*B$8dPjA8bxZZmn!PpqYIfIdsGU>0w{~Ccg4$EHTWUAeZmiu^yQp@5?bg~I
zwQFlH)gG^1Q(I8~p#EX~{rb3usD}22fX0T#{>F~RuEzStrpD)uzZ%(_M4IH9yqiw8
z>~A^Na-?Nu%e<CNEpu8<x9n&+&~mwDLd%|(i!G;G?AvA9t=pB_RohM4CE7#V&D%BG
zKX)*7e(Ctx@uTB!$BPcB&i5V5x_Y|ibuI4d?OND1xob(+s;;G7E4pTMP3)T0wY)2<
zr?;o4=W@@*o=ZL1y)%2K_WtP==@;r3?HBG}+@CNZVnWP><Oz`z;wB_bh@B8UL2{zR
zM7fEj6DuZ`Pb`^OF=@@DhDoiHW=xtkse01nNpmKxm{c=q;-rOBS4>?wb@9}tQ<qGg
zIc?6g+0)KUyEKhqdd>9K>EEV{&ybk0e#XWb%rjYM^33F%d2r_XSsP|Oo8>s$Y4(>n
z-{yRtvuB?5e6RT|feeAa1HK0Q3}6c62;>Z84ZIWB9@G)k8Pprp74#u!Q?Oo`b(m$C
zQJ8(0Ntk9>aF}0Mcvwl8S(tv9L0Ch?{D^rGn<M5#tczF~u`D7tk~8{u6nFI3D4uAJ
z=y%a?qF+Y8j!ub5jhP!eB{nH8J}xotQQWP#`*C;U9>+b1^N25u-yXj;zAQ04F)uMT
zF*LC$u_mz~F*~s?ae3l|#MOy?iE9#PB`!&vlDIBWFDWx6KczBdUdpDFj+6;08&a00
zOir1avNB~-%DR-bDXUXvrL0MrnX)Klb4qDyd1^)Ky0q14ThcbBDQC%Ny~t$DlFO3J
z`kSekC7i{T^*NI%i#6+QreIb;wqN#=?4#MovhDM0@>}u)^V9M}^4s!r^P}@C^7Hch
z@~iR-@>BAs=SSpU&CAbE$dAvTU$~}lW8sRzu%g*Te#PO%nI+vN%_Vgu4JGxZ3T2vQ
z@?|PzYGsOLN@cUkc9lIT>nm?B?<t>H-d%pW;%LRLic=N)Dy~-Sskl&KUu9F}P-R<X
zUS(aizG_|7+UkwfN2<3}AFDoIeXx2#^_l8ZH4kdP)V{C%U3;VUP3_&<7qyRTZ`Izb
zeOWuN_Gay;+Ml(h_2u>J>tEKZHOy|D(>S+rLF25(8I9ttwyjdF?^<+Pbz6m71zVL{
z6<bAG-?XT<{%>JxZE7!RFKbU|PiwDe&uEWq4{!Hr4{nd{i0u&QWbYK}6z&x5<m%kh
zb*bxk*O9KNU8lQ#bZzQ7*>$LEf7gbtYh7o%wsr07y4~f|<JXhZ^PuNm&$FH<J#Tv6
z_B`r&+;gYrRnNno+}`=Ui+i>E1o~wAl=}GlH2dWH6#L}*cJ;~jOZUt7Yxb-4YxT?Y
z%k``FXHLkQkTD^5Liq%PiMkWjCmK#{pV&FEdt&p%qmy<|+CJ&kq$iUOPTD+a&!kI}
zj!*h9Y15>&Q#Vd!na(zyeLCm#gz3H0yQlY0SDc|eLuSV28C)}kX9~@fn0a^Rg_-wf
z-ky1J=GB>(X5O5+eb&2K?`NsccAf1qyL@*3Y__?abD8I^oVRb@xp^xhg60baN(71o
z3IvJ<HUzE;yc;+%XmZf!pvbW7u*$H^u#~Whu&l6*u+*@^u>7!`u%xiEu!9l%B92EK
zjmV3XjW&s{i2e}G7vmMbDRE-r%EYe3vx(ah_a&Z6JdtRSbTs8)%ITEdDSJ|Gr5s5)
zo^mMVY|8$WODR`U_NA1h9!oo!wlnQW+VQj<X|`DwSyow*S=m_;S(aHYSxH%mS>9Rh
zS*BU>Ssq!D+2z@+IfwE$<}b`YoWCUhVE*#_&G`rNcjj-)UzWche@p(p!jpv;3NIC&
zD7;#@v+!Ku&B8l{hYODsW)#mUSzI!sWPZuKl1C*xrM#skWfo;tWzWl=mMtisS3bXd
zY59waTNQ6Ao>wfZ^sVx%a;x&G@~+xdb+cNq=4ADg>f6;1t6x?>tG-%ut%j>ku#Tfn
zx=y)Hu1>a&vreF{vVK$jhx(88@9H%gHaD(pT+#Tuk)tW1DYD6{HL}&CHKR4N)w$KP
zHMcdZHLkU}eSZ7A_C@Wz?TH;)okpFio!Xs>ovS*Rbw2C*)%CjTV;4jBov!Cy@4EhV
zF?KU`fA4zR^||X?*PpKJp4^_vJzsiU`V9L_`keYK`%L?+`}O-R`i=Wn^e^i#olr8N
zVnWe`nh8}COeRj6s4&@V@{dWzll3PnP5v`Udos&psmTJ9)g~)W7M-j&S#t93smrIW
zn6_%#)oFaw1*eNm=bbJ*oqu}t^qA>s(`QUKm|-!)dWQK7-5HiMRAvaw)R-wZQ+lT2
zOsSb~XFi(wapsO$duIKf^>&uV?1{5Q=PJ)to2xNbXs-0!8}qKr>zzMmzE+@opkkm=
z;MbtOu!gV+VXa~9Vf|rOBQ8f=j5rrz5Umxh5?vK-9+MHXCw5ot-q;<n*>OJcd*e?g
z9!fl(_$={sqEV7b(z%pVDK}Ccq<lzumhvX$W6GnHw<%4j&8aujuBA0(P04D>T9h>>
z>vq=Sth%h}Srf7rWW{8!%f6M(k#i&eWB&d82l==2pX9&Jf1lrw|0e%o{>%KU`S0>S
z<UcRGU-+)@S>e;dw}o#CzZ5<wG%a!~Dkv^0URkoCWLe3I61Os^GM}<nWt+=am2W6t
zQ@*@>ZTb81?-jo)zEr%gV60qTxvDa}YJU}b4R6iA>hIM&HJ~Hy@6_C@c~o=1=4Q>^
z8ofHZI=4FWI-@%0I_)~!I>S2GI>$PbI?FnbI@3D)I{iAA`p@-$>I)l+8VVZn8;To_
zH6Cu<)p)4!K;!<#y^SXu_cgv~<ZLQzTGiUpTGu+Kbz<w3*7dEkTiaV#w05;FYfW!E
z(0;LfbNi+CW9_Tkcen3qKhb`=-MZ7P)1}j*)3$R>CttUCw`8|;H&?epw`?~{w?MaJ
zk9|*Z&##`pJ%4(B^!)Bw(d*gg-RIHg)#uW0*YDKt+Hc=qKcRL)%Y?=WO%oa>SWa9#
zao)r^6MZK)P1cxPI@xP->SXW95|isD=S+^CTrfFma>(RUQ%_GlGxfyOV^cRy+cE9h
zG@0pg(-%y?Jl$=^wi%`~8E5^Uxo-CA*{f!+oozkWes1@?^YiY_yEE_Zyxa5a=6lb7
z6g)L-UD(Zt8xa=Kaq*86jg!8ld`kJ3!j}3g<#)>Wl<lc^($vy7XRXOPoV7b^N7kXN
zby@4P;<GEV*JpDUa2Nc`XDj%XFId1|@VoF&;lIKkh2_Pi#mh_fmxz{zl|_^VmF+Fx
zU%tD1PdQ)Zy2`|=q^g9fBUMMMv}@FBv})vPlxq}gp4Wubh1SK@Mb#zN1=U5?dDQ=`
z|6O0+P}Xp^@q8m!)A`nwt!G;=w4Q9;(7LO2XY2d+H|?L=AGEi1ZtDEfsnKoOt<$aD
z9nizt8`+oKm)4ik7vC4!cc9O+-?zVgLi2=<39BcrnRsF1l*wI_r%hfodGq9Tlh;h%
zFnPx0S(B$vzB2XN)C*IuPJJ}(&a|7;Zcn>6O=bGx>C2|Co&IyW?+pJLJ~RAg1kczt
z!)~ViOxu}yGndZfn{{v&^K7=+{<HmN`_4W!`{eAuvro)EFgtK=?A(O859W!^*O_k|
zxHN1<*u9AR5sxCiMo*akChk+>_r!0BUlSQp`BNXH-A#L%bvNr)*5xee0{H@s0;vMo
z0?`7A0=6RFqKKkJMHR(W#d}Lml{_wKFKsK0FH0;tUM^X=u`;_Vv&yc<zQ&@)w#K~1
zp(eX7x301-vo5QyxURK+Tm8=Z9rZUFU$)+Debsuk^-1f~*6*#q+gUq!JAStRYftEm
z?+ojV>vZgn>5l03?2hX8>-O(<>yGT^=;i9I=_~4M?<?!e>8t81=?m%i>tEa7HKBXL
z#)<1DKAe1U^8Lw&C!d&nXY$?2*Cs!je0K7U$xkL<pZsF-ovB-<J)WjDU444u^gGjk
zPmh}sF(Z1$o*Aw)J!gu|lAOgm`^D_%v#-s*J-c&m;@qOSS#xvdPMSA;-sE{(=KToT
z9=0uPOW2;UClL<O&e65e-=a^({z&|lD3L0XDw+B$O+EchmR*5Cfl+}#QFZb8lBBZK
zGPO#rN}WpW%Hvhvs(fmkYkX_o*L<j1*I!##Q`c1IQ_s+Ft1+$Vck9nq!M0zmY;D|a
z>}_0aA|0X~DV@7Ie{>df=X9ra=Xb|<XLs}W^7eN2HTJdkHT7+oczUA56y_;^CqJBO
zF#X7kpqYU)SIpF&WiZQpmgy|vIlOZ!=WU($VxIo|`1#566X%-;S_B>pI}mm#Oe8WV
z=4|Yr#D9shsWPckQ(vb2&SJ^_m9;6`r$D-BdC|3!D<zp_m&*fc`s;e?_SB2F>9$F=
zDR(G!D0awqWOe3r?(Hn;F7K}G7Vhop>+S3Ai|=3GziXo26yqtTQ>>;~Ofj0GJ>}6<
zi|Llrji&#fo<1XWM)*wES<bT@X4%a;KPzN*;B4JFs&m%Q-7@#k+#Pf0&U-&ka(>MG
zwE5}tZ33+WPlTNcI~i6VeI@o%tY7^9M3q#o?8NNAf{22K;wL3trFmsJWt%G#YT|3^
z8fqKvHx_l~cmC;Y=oaf0@158;xi7KbW1`EHz$rmfY^U2zKRo^5^z0d-Gec+j&bl;9
zYPRPb!#Q?ytmj;wdws6S{G9n&^QX)|6Lu|@AxSw^J5?+7O`1UVt&&q!DK*J8sWp@9
zrqxZUd(>#rX5VJm(bYX+LjQ#1DG5_jresXdpAj=NYF6~D@L88<U72-pR>++2Ibn02
z&YeH+%e;$WFC%nP;|dDPips8+2h?}en{`-rBy~*gp42_9ySz!d_rS!gDNfTprn^i(
zHoag*{4Ax}5wqjx{G9u1Zq2;fdF=Dc=NHZY94D5YT#!?fS7Y6ApmSm0!HGpv3Z@j!
zh?{wBmh$W~^HK_KmCx!fpK@|~(yY{3bL!@Fuj)HGv35$`l$t5!b1LS1pBK_oKSgSu
zMp4!*!`agF<mMICVA=1XP{z?v`(Le0=`}+`?SH2dsfODB&irix;N2SkYs<J^vNA&V
zXMmQ#^Y^`CU|>Mr)1biLb{V`G<X;_s`$@<Sr2oB6_d5?UUSd4ddGX*w7R`gbES$Xo
z_xZQE{_Eut==4QwIFjXIU?^8>to`vBv~@<b+x15$c#l@cbkOb=@E)yiufu!6>+KtB
zf7}EqS8uHSVFzM>w<SIL4A~FUF&m@<ywm2}Yt>%xez+f>6d~JYez2-RmAybx2HlY)
z4%&^eJ@i|r0AvxrG<1KJ;epozJHXq&I46M2gKW>}En|T0|8nw+@%tJm72Fie?#JWj
z?$_&gJuEM#IG*3HJ&?~&&u_BdA-|J;C;Vmv{t3zn-WjYA&K#)|DG>8N_F?Mg>@(RS
zIrc?{el~tD{O<U@^n2)c*YB1ePY`F2Ot4R|Qn+%sc%*)0V{}WjP>gj<NlbAJOI$--
zQ{2gT&ZK}O(HyfJ=N$VS>zs8(8;ZJ$cT{#Y$W7z(m+;r||LP~=|Iv@Z|GOWDzpOu#
zKdZlzzpy`x{}(?Y|BZpdK>|U`f|P>ggMEX$g4shJhTRX-3)c!a3Ac%Ch^&chjjWEW
zi!6_<j|__zjZuxMiK&XIj;V{eA6pvN62}xT6<-p6HU3Kc`S_TmxTKV%#H6&Oq@>8C
zgrumX)FkuN_o?qv?b0pNEz+&it<vq&ZPJa?C34(yf^uSV{Byi=LUO!wd~ym4;)=Eu
zZ7u36)+((pE3FEwuV|`iYG|r$s&DdbtLvOOVfus_6J}4CGC^sY$~1*(%G1L9t^Jey
zJ^h3IQ~d4x)BS_|<NY1|Bm8y!js5NY6aD)GcLvG?$pt9}tqoci#2K6%Tol|F+#hTZ
zVjiLu5)$GXA{inRq8cI*VjJQg;uxY4q7vdB@-FOo*wZk_aMy63aL;h>@St$ENQcN}
zkuxF}L{5+Fi(C{rA+kSmdE~;#zUWEO8ZlZiy)peU9WmW8oiUSQx?<X5CdW*Tc@WDL
z#~0Tf*BRFn*Adqn#~LpiUlCsxe<}WA{Dt_p@h{@v#ea@}82=>xas03N_wnE3f5$T<
ze2KS8YEJ4&>PzZRnv&F>RG3tqRFzba)R@$fRGw6uRFqVb^da?2>gUu?sb5oF)7{e}
z(?ipJ(mm2+(|yyU(!J9!WJ~5q<y7RP=Va%!<aFos=M?7T=Va#0%E`@X&zYJtCnqhZ
zI43oyI;StEq@b!GxoCgU-lD@r$BGUX?J7E2G_`no@#Nwu#gmGyN-ayLluj*eEVHdN
zX_(qDvtdHRq=q>S6Po&)TATWsCN@oO>S}6kYH6zIIoZFzfBuAp6P8YxH(~jN1rrRW
zX-w0fraR5pZ-#%3f2)73e}jL!f0=)Yf2V(of4RSp|8)N>|5^T({*C?>{uBJ?_)qbl
z=Re86$$zSUwtt@gyudwy`vOgajDn1V+=2{)_5^VSa|hc5PYRwA+#XUN(ik!^q$#8$
zBs-)kq%I^iBqyXKBrT*jBtIlEBq3x*NODMeNJ_}}u%BW1;YH!O;o0GZ;RWGk;SJ%X
z;nm^A;U(co;Thqz;XIM9ky|5oMV^m57r80&Oyt4HZIOE-4@X{$+!(nx@<8N?$Ssk_
zBa@<2qbEmCjdqD~k69P9BxXU()|mA%D`M8f%#T?dvo>Z?%&M5>F>_;<#%zn(5VI^s
zJWeD|GEO62DPB2VB|ap+DZVbgHvV4x(|FwkwFJooqXg~*lLW2=@dV=psRX$Modl%>
z-UNXJy#(O|!33TJ&IFkRktExswMko&E+*|uT9vdd=~U9Xq|Hg|lXfSqOxlpNBgr;(
zMe6QU&a^+NENMb%9BIE(nbWw_c+*(Z{-z4138Z~X<4SK$&q?n~pOjvfUY$N8y)C^Z
zy(GOiy(hgYeSZ4H^qJ|+>9y&N=@sdf=~L2Gvm3JOvhQWf=1k6clk+;~UCzy%Z8=wR
z*5*9V*`9MD=TOeBoWnWCa^B{A%DI$tH)l&uSI*p=hMapj2XYK@&*mJ@*^u)y=X}n~
zoQpYA3T70v7ECT^D`+X0STL=isbE$?b3s<owW8BSH;PUc-6^_MbfxH4(V3!)MN5ho
z7OyQ{R=lWqLGha6xy5%&UX<9EI+WU#_LR;jU0?RO>|@!7vae-7%Kw!AEdO2ptNeSp
zQ>A_7(aMUd>Z;#Wr8R$ROdI+e)-^0{*wL`HVQqs#(}Jc0O{<$`HO*+6-L$o7dDFV4
zJx%kPb~SBjTG6zyX=T%)rX@{>o3=GAYAR^UZ_91VYYXeS)PK7Fa{t->YyDUIulH}7
zuw}yf37aQum|!{0cACvJt7*>D&iWtqzwE!s|D^wE|AYQl{O|bR^xy5j+5fixasO-n
zyZjIM@AQA;?-Jx0bRg(ZkZo{H@butm!83zr1n&x27_v5GX~_AI!y&xQ+e6lcTnpJ2
zax~;v$byi9kUb%bLiU9eh1?6-5VAFVUikd*CE-2c)5GV6&kmmwJ|nz8d}jF4@LAzg
z!@orEMg~VdjJy~5E|MYYW8~e)Uy*+!|3rR^d=mL7@_Xd%$d{3yBfmyIi2N7%CGu_L
zifEsh3o$oh&cs}gIURF5=3dOLn3FNbV@}0fi@6+gCFXq0iI`(C=VI>1{D}D(s~D#g
zryQpcrxLdzZb{stxY==w<Cey;$Lqz1#ka+qCs-zgBormYCAcO8C%7kgCPXLrBse5E
zCB!GFB)B9*B%~$eB{(HHC!J5?P3BJin#7mPocucJXA*xhPx6nXZ%GWv!pS1Zzmi0g
ze<yuNa!hqjU6r~&)htah%_z+@O(sn(O)1SdO*_phO*YLW%`#0djXzx={b2g1^b_g3
z((k12PXCd9BmF@7_VlCauhXBT-%sC~el~q``uFs2>F?4Xryok+nSL()dHRR+P3eEq
zkEOp&Ka;*L{aO0$^k3;G(@&)zPJfktI$a~XDZ3?mTlTf=8`%%C6>=1FG;&RHb#vu&
zZF22%g>t!aZ{-;0vgAtUTIEXR3g$B8%H}%dGUiI;n&&d-^5;6_vgaz~>g00dD&=zK
z3gm7tm|w83U}M3Cf`tWJ3bq!kEO0FHEb=PKDJm!`F3Kx9RrI9jMbYb``$eyco)tYV
zYArrfe5m+D@zLU)#oLOv7H=tjUA({ec=5jC!^OvncNCv4epB+UM6cAn)T4BH>8jGo
zvLj_2<;>+Q<*emg<=@MGm;EYxUjCw-twOLusDiaZpn|`GuY$9Jxk9+YtJ0^^yVAAN
zrSfX!*~;^k*DB9dHdNJBU94iLW~{ENsi>)}sjq3MX{=$c<)~$>ji{ek-&?=0p1pyu
zfxkhd!Mx!{!|{d(4Hp|uG#qNU&~UWjal_4qI}N8At~Q)(INxx+;aS7khX0L<O;eg~
zHvMb**~H%bqKTpTYLiv->!xc>Uz*-DJ#6~a^tFkn`FGQ|rVmZ8nw~U0X!_Okx#?|F
zd0R<aO<QrBV~1ZydPi1AX2<1DmM-?LqTa{-5BuNsKj{BBVef?f6Ru7;I$__0;}cF#
zI5FYM#LE*yruk0`oEALIYntCQxd7Gx_5k4kr2vBf>42~PU;K>&%mZ`+zWIOm7Y~pL
zPzX>DFb&WTFbv=ehzgt%I63fC;E}+ifhPjb1ttbX1qB7g1;q!21|<cZ4dM%)7pxZg
zC`3F|DD-*A=a45MQlbAtSVB2MUxx^WvW9*P;R^j7@;&57$b%5RQ07qXP{wek@H62?
z5m&=6h3^VK7QQ!pPxy}TZQ=XFkB46f-x+=|oG;QVQZh;`N;gU`N;HZ;N<4}yN-oMc
zDkpk*^xEh((abSnF(EN;V*baxi}@JyJ%%CnXN+c?M%;?Hb#bfW*2Edd8^ou_$0kH2
zq$fBgEK2A|Xh@ip(3mhcp*dk{!t8|U3GE4U68aJ(liZR%B?%;lCF>-+B)cY?B|9fS
zNw!S(PWDQ+N!CnuOg2f5NDfJkOx8_yPc}}DN)Al6NDfbSNcKqfN_9&;mU=k#Na~?f
zueA6y_q4z?p>*MN`3$KH&kUms;|%Kz?+pJ8u?)iunGDkm?F`)v{S3bhmkg5(*$kl!
zkqosAjSRgE-wdk^)eMCUooxMV-E6~blkD8=riPB}XW37(Ut~Ydew6(@TQ#RDH#s*Y
zw=9=8H!*ioZbWWUZf<UV?!?^Q-1oWlxox>|x#_tHxzlqCa%*zqbDMH!<m%^U<aX!Q
z<u>HD<cj4s=T_&|=9cD8$h}i=x!_{K-Gb8vmi3Pct`}S?xL5F?;7Y;Sf};h;3XT`t
zDmYj0u)wLPqNu#6tcaobSJ9WEe?{MlJ{SEiVl2K~e6#pz@wMVT#m|c$7r!jNQ+%oT
zcJY<syT!MPuNU7aeo=g{<bKJQlCLF-rO~DFr5j2QmhLV+QhK0tf9bZ;U8P-RC(C5Z
zrOO4%h0BG?mCFUoMaw12rOK7c)ytJDbSji8Oe^#&G%EBev?~-VG%JiNv?>fMLMo#x
z{VQWCgDZn711n!wzNvgr`L6P9<*Uj&mG>&|R<>1jR<%}jSM^kNRkc^$s1m4VsTQtg
zt>&-hsOGBXtLCg0s&1*7SkqP0Q`1q?Thm%2S1Vg9Sj$%{Q7cv}Tq|EIRLft>QyWvC
zSRYrPP#;?#T|cdUQvKojL-hyh#Tx7yEE|3`d}{dF@U?-l@pl75BV&_(lWLQ3vu?9X
zvt)B%vubl#vwgE;vs$xEvr@BDvtP4xvsN=lvrV&avsklAvqH0ZvwpK?vwO2^vrlty
zvs|-Ivv;$4vqy7qTTt7gwiRvD+Irh2w#{p6Z=2rM*4EuNtF5(dY1_=Ug>B2*rnb#!
z>ua0aHlb}wn{$UtM{Y-HM_ETvM?*(pM}0?rM{`GAM@dIbhftS$Pk2vt&yt?SJ!QQW
zy<2;?_ipRG*mt?_U;o#BrV0Q1fA_OY_|yNb|JsBH6K+npHR17u`xBl{xG~}OgzFRT
zOn5ROV4~kd|A|*8KAL!IV$8JoX?vzUo^gMc{_J|cf`F`m#DKVfgn-}x?||5Vq5zKo
z-vGye=m4*PqyW(X*MRtd%z*5G<bad_w*ZHLyny0>@PNR83xU}|xj{KWc|q5LE(hrb
z&j~IKEeo{?^$iUOH3`)U4Gc{RH48NjH3$s~bq(bSH404)^$WEO^$67swGMR%^$z6<
zXAl1!E)wx5{9E{)@Gs#E5pTo)hI2&x2<MLY9DY8WJ>p&X<M2=6Ps87YKMd!K_!BM=
z@jRR{f+yl*_{;DQ;k*$n5iyYoQ4vw0QRz`}Q5I3AQMpk8QSni!Q8`h;Q7KX3QO;4Z
zQ9)5IQPEKzQGHQ%QNB@@Q9e-xQJGQhQGromQBF}YQAN>t(FdasL`TNR#d62W#!AI1
z#PY;y#PY_f#j3{g#~Q>6#VW_j$Lht}#hJuyjN1~oGj3Dd<~Xx>i}=~`)8gmHcO^_n
zXiM0aupwbr!sUc33Fi}@B-~86n{XmwW5Vr(?Fpw6_9q-pIGb=F!6-R3xhuITxi)!k
z^1S4=$#avZC$CQKOU_SjPo9vRm%Ki?G<i;PZt}Y1n&c(P*2(jeE0SB28<Qs{_a+x4
z2dAD*O-)Noi%yG7i%CmLlSr@3XwR6CF()H8BQIlJ#_Ei)%>0bS8EZ0DW|U@>WNgal
z&nVBBlu?tBol%srDx)EzFrzMGcE+@f?u-Q)of%6qDl)1wCT8?xbY;|Lm}MJhn`c{O
zPt5Mm?#=GY?#b55Igq<LcT4W(+>*RCxi51c<!;aYmU|_aA@4-)gWUVM*K+seKFz(8
zdpGxX?w8zCxqEZp=6=ZCm3uY!Q11EMlergiKjmJ|{hNC|_iXOt+}*jq3U~{@7l;>r
zDc~vmP{307xj>-sPr?5JwnE`ThQc2O-wL=3nF{#|>x!z2YKrQMWQ)a%*^32>C5pL<
zIg0-m@fXV#cNBjs{!#q3n5BfV<Zm&12}8-R;y=azi+M`8OTH9yl%$j<m!2!VRC>Pj
zbm^JWi=`Jz`^!4ZE|*!B>zC`68<rcDo0J=u+m@@ATbG-bdsGBfcvkpUcvbjRs8zUD
z1XQF{rdMWGW>qFvW>+Rw?yme*`J?h%<@d_|swq_ys!Xe`t4*p^s|~7^s#U6ut0k(n
zs%5JUtF^0jtM#jmsx7Les+Fs!)Xb=vR<pRqwAQxPqSma|s@Anur&hDpvDUrTuGYTR
ztJb<!qc*vIYW<x0x%IQ_Pt~8UKU;sH{$l;{`t$WC>*X8d8l)TC8=M<F8YCK38zmd1
z8+9Ay8+97x8WkHw8`T?S8<iRbn=G1)o2;5lnv9xCnkF<aZeG#c+g#OL+`Oc@q`AMj
zv3Y9q%;wVODa|XJYnz*!dz$Aq&u(7T+}&K)ytH|Jb4T;^<_*pD&C8nGo7Xj$HAl9E
zwe4@)-gc<%VB68QU2PlMPPFZ8+uXLJ?M&O2w%u)e+77qvZQIut)X~{7wPQucqK;J^
zvpObrEbN%yF{5L7$IOn|9n(9Obgb#<>6qNn*U{8@t@CE*)lP#h^)8(*xh~5d>z<gN
z*q+*+r9HL1)xDLydwLJ`?(E&)d$9LL-@U%OeRuk<_dV!)*rzgqdxGEunF%}-6eql&
z@M^+`3123Bn(%qTl?ksWyqWNFLfFKJiBS`SCx%XZGx5vBj}t#n{4w###GeyiO?*A^
z`@|O$-%YHV+BUUgYR$CVY1z{Xr{z!EKP_uI%Z#Tprq7%mFg0LGz`TI&fW-mL0X+eI
z0doT~0_Frv3TO&w4~P%E5-1cb7`!BSdGN&06`@N**M^pdx`r(ZogCT`+8??#v@vvX
z=%mmkp|znsq02(+L#Ku=4DAc$3D=A;kC2Rzi%^eHj?jqs8txIH8X*%Q9bp_{A7K`u
z7hxG;5uqEQ6JZ^Z7`Z-bO4R(Qs;EU#^P(!EmPOS>Esa_eH8pBolzCK3R9DpWsOG5d
zsFhLGQMFM$QFEgDqb5hqjd~S*Hu`k*mFSDnr=rhA^TZg$n8!NDX2&|lddJ$wn#Kmk
z`o)IE8pm422F2RO8pcM(I>lPXdd6DB+Qb^gn#DTAy2iT1ImSiAFN<FqzdHV8!p?*<
z36B!aB^*f*N&J++l_-|Tn)o$AIPpiqpM-x22NReRB@$&51rq-!uq1LPdL>Os-k7{0
z`CRhT<QK{BlMg4)P5GRBD)~Y3x8$qIpOU{OC#Kv_-j{qg`A+hY<QvJClMf{yPd<};
zI{8HMhve(YH<OK0(^IojQ&MA6Gg4Dids647&P!dFdLi{vYE4>BT6J1OT47pcT2@+7
z8e=+7=H(2Q%sUxcnQt;)Wqi!w&%BoLJ>zx8lZ<Z}!kGe@pEDk2uxFmh;K(e<+>#-f
z`99-VhDhd*j0+imGyY_}$l%W8$`sE$mvJKFZpOWgXBl5IE@rT0UdecwA)2Y0c|5~1
z+dA7m+a`NT_VnzT*;BLkW`D^3l>Ir|Am>l6Tb_HKe4b}sN1jcdZJujhQl566eV$`p
zY+iAmOrCL`cb-FDV4igzbDmyaTwX?AOkQH1VV*`_LSA8BcAjOPQl3Fxa9(PjdR|3d
zN?v(hXkKMrP+nS|X`WeLRGvbiT%ms9?*hF-!$Rdk)k390qeA&YjY6wJ=|b<KsG^Rd
z&Z4%W)}rnrp<?c0gJPv(!(!uN^<tx9-D0(3<zmxfo?^Wcof3l*?GmvPsS?E!-4eqR
zl@jF=*%HkXg%YEZ-zEB``K39f&r5HWJ}iA!dbjj`>66myrBll$mE9_HD|at<DfcaR
zE%z$-EB7w<DZf|#raYk{r6RQ=rXshZup+A>ucDwLvm&D+t|F<Tq_ViOsIs7vsfw$L
zxr(QXrD|r?v#KXmUe)f^F4Z2@KGlBJ4%HFWuGNcb=GCmISy&TMn_rt;8(bS!n_in$
z>tCB&8&jKI8&n%on^_xJ8(-^JYgcbypIV<*zo>pe{lfa|^??ok4FL`R8m=@rH+nS&
zHTpNYH`+G(Hd-}4Ykb%Ez41rm&qkIen<m>P`=-(+>*n*#Kbw_X4m7`L7HWCk{G|C$
z^S5S!mSfE)nqN0RZr<O_*mAe|Y4eTd|IH7ZPdA@yzSjJ;`D8O^3xCVKX2BM=mP5^-
zo3A$iYChh4vH4ZAaLcUb!_9A+-!&g;{@r}N`BAfU%kAcW%{ST}wLNRQ-1fNbR@<w#
zyKS%A?zFvWd)aoq?M2(gHjj?5j?j)>9oIW{cI@al(6O&$TgRS`?HzkNHgzy|p6r;~
zIiquW=iSa*owqyvx_rAVyCS<By2866x?H+kyMnqrx&phrx_r9)yW)Eqdm4In_3Z1}
z(6h5=YfnpWLvLsAjo!<>XM2zLUhBQnd%pK-@6Fy5z1Mq>_P+1?-uJ8TXWz5FcYRO$
zzV<!ud(ro;?{(kDzBhee`d;?wPB59EKY?wc&P0}p|0n#Jz%lXXgx?bwCo)WApU66q
zd1B(kl!@^ZlO`riWSqn`Np%wQB&kVillUj`Ok$WMH0l4uzZ2Oeu}o5*#574}lFB5>
zN#c`OCy7m}p4vOLXX=Eh?bGU}bxiA=);z6Y+M#JDrX8O4aoUGzInxWK=S^pyv2w=i
z8PDeYoY(Bv;<wFjZ@~V5V*%>|js%<v*b;Ce;84JZfP(?M0yYMm4mcUGEnr8$^}wp2
zilFMCnxMm>w?of_UI;xMdMfm8=z-8Hp+`brhVBo&6xthlKJ;qnqtI)iCqh4ko(;Vj
zdMH#RJUAjFA|=8<!Z*S*B0nND!Y?8=A~GU1B09o0A~~Wk;!ni!s3TFQqjp8@h}syn
zHEKiD{-_gCyQ7XpZI3z-bt-C0)V8RzQ9Gk1L|u!%5q&dSKE^nvFg7{XD>gN@C^jcH
zE;b`JJvJ%!L#%(CUz}H*Z=84B(YP~l$Kp=M9glN}Umw3V{(FLFqF17JqHCgAqEVt=
zqFbVVqJN@hqC=uWQpQB(B-JF9q@&3nlV2wbqzI*OrYNMSq!_0-r^u&>rbwh%rkJNF
zr6{NHq^PABq-dl#rkJMar*Nf6r8uOhrl_ZIr#w%VPSHzIOyNt(Po0!{IkhdVCv9rl
zgtYFouC$qHQ_?EZ6w=c&<1;NX{W6m>3p4FAT{E*XEi;`m!!si@t1>+@Ju^)+b25!H
zZ8K9dKV(#7nq+2XI%MW&x@4ARMr1l>mSp;5T4#D^nrFsj`ez1a8f6A$>StDG+GM(A
zyJkCQJ7s%hJ7&+${+<0N`)Bs|>>t^)^RDHc$m`ELkT*YXa^94@1$i6ucIF++yOg&#
z?_l1%ypws`^ETw2&0CgtK5tXrzP!VEck*uJ&CHvW*O%9uw<K?2-u}GJc^C3d<xS69
zm$x|2y)dLOs4%%Oq0q4~wlJx%sIa0it1z+9sW76@xzM|?pfJ8LpfI@5rO>x9s?fiv
zx2UIRV$p=6z9O4qr()}3t73;@uVT+)mlCfM?~<UBz>@G1hZ6sifD*qFrxLdk-;$7$
zhb8|@{+0YKku9w(EiY}(d|%36#$5Kj^k3<p(x0V2N(IV(mwqdKTl%&1Z|Tgktz~!1
zLd)aJ6Uu|i!^)$|Gt1M<L&_t|bITu;w^z)nm{QSS(NZzBqP3!}VqrydMP<dziiV15
z71b3rl}(kkm6er(RT5Q_RYFzbRiaf&Rl-%$RRUFus}@zwt9o6PR-ICvTU}C}SzT0}
zT3uXSSY1$^SY1(FR-IhEsb)*f`kIc~w%Uf;-rD-w*4nDtzS`>A=GvOtp4ut3Ew#0^
zlWKG8v+L9AGwO5dm(?$=UtWK^{!YDOLrP;pV|imtV`gJ?V^U*LqhfkoV_9Q*V}7Gc
zV`8IhlV_7llS7kJlWWt*7W<a4ma>-0mj0IBmeiKO7KfI$mh={b7T=cImZ+A<mXem@
zme>~d*0>h)7ONJMmZ}!#mWmdm7S|TdmYdDqE&44^ExIl7Ed?!>Eq*ONEkP~$Ek|4W
zTC7{#Tg+OFTQXYeT3lMRTM}AATJl-~TDaR;+P}B)wEt?m*7mi{xBW*OUpr?zWBa!@
z-gegZYaORM&UT#ZxYu#J<5tI+jtd>FowGadcRuZW()qCSLFc2+JDtxu%evaS>bnxV
z?7Palnz~xLO1ql78oNrms=91?ynDQQQhQQ*(t6r@T6$W0&h%vTX7*0(?dk37?eFdF
zo!mR6cS7%^-VePGdf)VZ?0wgJq4#C)<K9QT&wD@hzV7|f%hvzDkFlSjpS7R8pQE3t
zpSwS3g8c-S37!*dCkRaBoyb2?aH7~mk%`<B`6lK~%%A8nDQJ?xB&$hjlZ+>&PKuk<
zJV|eo*Ce+|xs!4x`A<rils+kclG&uhNd=P(CxuK(o)j>tXp-Ng;7LA{!X_C_nm={U
z)Ok~9Pn|Sv^0bN5rcXOJ?bo!w(|%0*I<0tm`SgnEMbr6b@Xp|yv1Z1%89!&NpSfw~
zhM8MuuAQ}dR`l#wbKcH*KBr;c-+9jht^`~UcoFb9;C8^PfV%-t0xk!<3HT83KHzb{
zgMb@>4MB}TFN0nO83eBhRu2;m;|UWA`xD9^CKJXOCLG2T_A692j3w-U=+Ds3h?<BA
z5i=s%A{ry=BT6E=BdQ|WBPK@lMU+J}MRY_|M@)(6kN6jn9eF3}UDVU4t5L6_ZbiL~
zdL8vS>QU5#sM}F*qV7fAjk+22BI<rrdGv$m$I;0#O|cEJwXtonRk4k+<*{9{ov|IU
zb+I+Ey|I<C^|29gk#WIsH{veFU5`5#cPH*@+|9U4aaZD8;+^C3<G01@Bx)o&CdMTe
zCKe|KB?c!JCFUeHB$gzGBvvIxC#EJ^CuSukCWa+yCaEWBCuyhnrbMU2rj(?Vr4*$U
zr_`pDrlh4TOYuu-N{LH}N%2kzPDw}!NU2Y;PsvHiPKiuOO({<)PF;|?Fl|BF{4~~d
zmUN}`jhWjrPi8L2JeN5wb3^8u%srVCGiPS@WiHR`&0LweFLQn7{>&qpdo!10Udh~<
zc`9>O=K0LcnUgbDWiHH|mw7XDdgg@8Lz!DMmu4Qz^vd?l_RgM{JwJOv_TlU!+5fW7
z<$cZjn8%#2n*SruJpXr|UOs2OU%q6%RK9w?M80*tQ2yIIu6(on;{2a^@A7o>9r6wG
zZSqa?U+1ys^W{6|v*!QJ`<7>!FO&Z#&njO&pEqAFpCex}zrAomVP|1OVQXPiVSizD
zVOwEi;q*e6qTr(GMN^9=7daRE76%sl6epDwmlT$imK2qwm*kZ&lrohvm)4d}C>1N?
zDB~#;EfXx`DibN&QPx;qQ{GzMRGwGfP@Z32SKeH{sbW>dmWs6%D=O+LR#(icSX!~5
zVok-OiX{~@D!VGXE2mXXt(;OhxpI1CN9Cl-36<JaUR4HF`c)cLYE>($R#&a5dRNs^
zJ*T>>dSdm2>S@)z)jid-tNW^3t7lZV1kJ2oQr%R&yJmmQo|;`X%WJpS9;#hjyQ=nJ
z?Sa~(wR3CF)gGxmR(rbkOzryGowd_y_teg>T~@oUc4h6t+LN`#^^fWw*FUYlSFh3#
z+Yr;x+1S?D+}PgO+t}0C-6+~Ly=6(u!j}0hyIRh*9BNt9vaV%y%g&Z9EeBi9wybKI
z)v~eWLd)Ei<t@8g7PU-iIo@)nWp>NTmh~+wTCTOsXxY|szGXqn^_D9wms)POY-pL-
zlGtY4uH3HCp55-yuGcQtuGlWwF5T|juG8+=ZrASCuF!7OuGOyFZqqK*Zq;tsZrbkD
zuGX&JZqcsNF4b<(F4+FP<9Wx&j!zxGI{tOM>-f|0t>bschmJQLuRG>;F6^A&Ij{3&
z=j+ZFovXWMc6E16>gw;B)@9q1(UaM8wdZ`#^`2?HoPA7v|9g4+{`PY9G54|evGuX`
z{p)4uW9bv<7wqTj=j~UXC^J!EqS8e9iLw)=CaO$SoG3l9YGTpE%8A7jmrhzTsch2h
zNmY{;Oqw!j)ui4@%O=g5w0ctIr0J9DCoP`zZc^W*rb$yLEt*t2sbkW@NnMlLCiP63
zIcfQ%x=HPmR!*8bse6*{q<Pa8PWwMCVtVcLs_Avpo2NHSZ<<~`y=8ji^!n-Nrk|ZI
zHe>CKbu*Y|GR$P3Id|rqnTKcYoVk1Eu9=5s?wxsj=Ehl%XFZ=~H`{)8!tBJ^@v}e9
z`84P2oaOWW2QUX31pWwM3uF)c7Vs~CJCG;vZva<dcTi8z$DsE?9$`*lK4GR|j$vM5
zo?&ib5n)kb4q?V&wqZJ9c3~D_T47dUQsJv3=0<FcSP-!|VtvG#h@}w=BmPJHkNOhz
zH|l%Tw<zZ5A5l!vKcg6<*`ryb`J>ZgX2wpBogX_Xc2Vr)*r~A#V&}vzjGYxbFE%qS
zHZCD9Chl|X?YMh!592)JH^p}+HYZjlZcN;exG1qRadzV5#Px}56Xz#RN?et=FtIl=
zEpc<AZc<)KLCUn01u3m5(^KZ8^rv*Ebfxs9EKZr9l9948WkyO_YE^1wYIW+S)Xk||
z(>A27Oxu*UJ#AIm`ZR_twk+|ir<p%8MYBF;KFL(b`k(nG^HHXBmTcC)O!cf!neQ@1
zvc6|N&veM*$a<FfJCir-Pv+}P&McNJi7eGD{;Y4AYFX@AUoyqA0<)K9FV0?+y)2tC
zhau;GHdBsczFK}=etZ70{7Lz}`JMSa`APZy`K|d;`P1^t@^kW=@<a2B@`LgN^276|
z<WJ6z&1c9@%+JoR%}>vtkRP1iou8RspFcG}IlnwVE5AB_Q{no;*@YVl7ZlDaTv@oa
zaBkt!!g+;D3KtfxDx6ceyl`{jjG|dZ5ye5pamDe)3B|F+(Zz|yQN@wPNyY6Yoh4l*
zZ6%E*wI!`39VIm-l_ead?4@<3s%3Izl4Y`GGG)qTQe_%t(q(hX=9bMXn_bph-e2BX
z-cf$GVt2*)iZc}#E6!D1sW?$_xZ+5~$%<K(3o92?&Z%5fIlHnf+p=m?)t0KwRokmi
zSMRG{Q+=*_ef7@jQ`K9mkJg;1Ia71G=6mh!+E=yDYp>TntYxnIRr{>=TkXf%54G=V
z@7I>quc_ZqzqbBu{p<Qy^>6B*)xW4uX-IEa+&I5+UgOlpMU68Xr#Ff<`8NeO1vLdU
z`85SLskB<R^0zXyYPRyVa<=le%C~a0s<+Ct{%+B3{nf(J%G3I#MXU8wi)icjme(zx
zTmG~NwZ3Y3*&^2ZuSKI(wpFi{sr7G*T<f<M!&bG{=PfT<KD4}V`Pm}Ts?ciC%H1m2
zs^6N_7S^8Jp3+|4{;<8cJ)%9NJ-R)pJ+VEiJ+M8lJ-0opJ)qsMJ-$7*J-<Dty{bL0
zJ*GXi-M_uMy|g{4J-t1%J*tDXlc!Uple<&AQ=(I{ldV&%Q?Qe-le2SC=aSCFoo_oo
zbiV04-*v2ON7v=9i(OZ`u6FJ2y56;~>p<7ht{Yv4yLNT$?Yh}z*W=sM-}AKRe$UOG
z7d^Ln?)E(IS<pMDcVX}BUWGp8KGi;zKD|ECKIuNOKEXc8KD9peK9N45K8ZfzKAAr8
zKB+#PewBWSeyM(ie&v3#e)0a|2?Z1KC!|lvo}fQbd!pt<t%*hx)h6mqY@OIPv1?-E
z#HNWY6B{O8m~?p3kx2(8-JG;-()mdrC*7ZPW75k>*C*YbbY{}~NrxuAm~?8=iAm=s
zJ)3lP($z^PCq0;SZ_@Kg7bjhwv~|+MNve~NP1-W4X6l-$tEaA;x?$>)X^W;^p2j+z
zV>;9HsOeqP`=)nHzcBs$bh#O_Gt_2i&d`{lFhhEV`ixC8IA;EuAvjZHrr1pJnW8iA
z%se~u{LITUugp9*^W@BHGjGg1J@fj^Gcz~OdNb?wtk1JP&H6aYZMO65^w}k|3umXz
zE}LCCyI^+4?3CF#v;WNbHRtb~|8u_2VV}z|_vf77b2#R*&Sja~Jn!;6{`ms)Wdel*
z#RH`R1q1H|ngl-#E(l8q%L^+GOAAX5%MB|Eiwi3clL?m&KM}Dv;$+1Bh+PqfBKAZa
zix7{NjFyg8j24L&juwa(i`IyiidKl0i+&%yCU#@&%Gl+xTVprGu8Un2yCQZ|?AqA%
zv0Gx(<1*sX;_~BO#yyXF7WX3VX`FZbp7`DIa}!r2PD?zRxFzve;=#l-iMtZ_C+<k>
zNxYtNE#*SW`IM6>ds8}74yW8s`J8ey#W=M-wI+2@>WQ>{X$R6yrJYVYpSCw`ciOJB
zGil1{CRu4&o>}QxMp+qIc3H7mxmjgd(OH368d*_U)>-yhj#*h*DOmwo{#hYe`B|A+
z30XE-aamzmp;^9Jepzl=q1hqXVcE;GS7ooxK9PMqn<a-ihb?Dq{^|V1`N#A3<e$qw
zksp_TB!6%Iy!=!7EAm+imgcX^-<7{6e^vhZ{Qdbm@)zZw%wL^<Hh+Eoru+^0M+*-X
z?l0U?c&+e2;laYwg;xqs6&^1<U%0pMM&X{qV}-X0Zx_xjnpc!roK~D(oKu`yoL!t%
zTwgM)WI@T4l1U{~OBR-Jmo}8@m+6)nmf4mWm)Vq=mKl{9l<h8iRyM1AZu!FUIpwp<
z7nLtApISb%e0uraikB5nD_&LHt9V>-yW(NRql&i`_bVP$EU9#<@~CpJ+E%rrYHQWT
zs_j+xsvlQBufAJ-wfbrGt?C!mKdY})zp8#zeW&_$^^NNL)t73n)LgH*P;;?Hs7|p?
zypE?%zD}V|xQ?$*rcSg@s!pknyN<t3td6%%q)xR?rOvs&y1u5qs(xer`+BVg&4!$Y
zjg8A1*EQ~J+}gOhaYN&p#x0GT8n-ttZ~W94+7#9l-W1mA+M3<!+Zx=O*c#F5(CXHj
z((2fn)aue2*y`Sz+-lbv-CEe{*P7Q_+8WxL-kQ+b)0);A+ZxiE+M3gv+?Lvw(zc|1
zc6)#O^!CZ^liEAl8{4O~&uFh~Z*O1R-r7E)ePa9E_LlZ3?Q_~^wRg75b*gn5bn15M
zb*gt7b}Dshb}D!3cj|P?cYf@A(DkV6Q`eWSuU&V$M7p1J-S7I)b)xHD*Tb$CUH`k@
zcm3{~*fXhTLeJNpcRe3_KJ<L<$?47OUD~_6*SOEF&!W$v&$Z92&!*3|&#}*-&%SSO
zpIN_NziGcwzh%F9ze#`Dgvtrk6WS*HnqWN9bfVeB$rC3`oH(&}V*f<-$#Ro9Cd*G|
zo6JACYO=*-o5|9Xl_v{LW}NIcS$8tuWZucAC&^C!HA#5#&q?1WnM`JytTOrkB+bc|
zlT9aUO%|EVGnsqxze${v87BXpBsO`^)U#9fP2D+l*VJuO_fOqAb??-b)2>Y8o-Q<9
zVEWAI)2C0F{$cu$>83OEXBf>;nJGV0eWvEjc{AV5d^7Xu%qKHH%zQla)y$VOpU>Pm
zYyYe*vv$w=HtW}{pR>NtGM?QqyLEQ^?3&qiv#Vz}&7M4a((DPdt7cD~T|2vDw(4B*
zxe9aT=8DYKoGUw5Vy@C$fw_`%<>z+HYn#_TZ{57L^RCXjHt*Lwq4~D+)dE!ml>$`)
z6#_K_zXVMV>j~=(YYS@$YYwXmYYM9mYYe*<aV6q>#H9$`Xw_(=Xys^~X!U5dX#Hrt
z=<4W?(VwEX$L7Rk#qEnfoVYb{PvY~$2Z>J;pCrCWyqEYs<z>p_l-DUwQeLDqrZ%K*
zOTCqPDXlkaT2^D$(yY#``B}5G7G}-MYR{US)t5Cjt2t{$){?A=S@l`VvSwwqX7yxE
z%8Jfjo6VVXCVyrAm;5XFkMr;3zs-N1|1AGr{-^xA`H%8n<UcI@SooswQ{j`s4~35k
zi;MG$^NXjKY${n@GNEKu$=Z^QB}+@zmk5*!mI{^fm$sBTmwA+VmbsTLDSKJAwS0B?
zrt<CO+se0;Z!BL?{-OMH#or31%HI`#D*jh|s$i}BS@ExerE+!UiprR(=&G=)h^mmP
zsH%Nc2dWNMvDWa{e5z)s`Ct9Jny=<dHFwSDYNi^_8s-|tnjh7FtJ!KkRDY}%sNt%4
zQKMUDQ|DA?T<0;vqE4&Mv(BN;y-u^vr_P|xy3VZ5rOv9(wZ6W-uD-VZOZ}&Morc|w
zM;gyGo@zYWc)W2><IBeArl_Wvrsmd$*8bMzty5bUw05^HZmn)z(mJbkUTb-4O>1ZC
z!q%$Riq`PfzSe22ZLPhnGh64jHnuKmZEEdkZEdY=Eo+_8I-zxbYew6?_Eqg`+mE(y
zXkXL5vwds(p7wR^C)*FVA8J3-zP){Y`;qoj?OWQnweN4=(Z09+Ui+qY(@x_~n@+n<
z$IhTm^G>JEwVmrb*L8mC{M;$mEzvF3E!fT4&E2ik&EGB5E!xfA&D+h<&DJf`E!-{D
z?cY<-Q`A$~lixG7XG+h{p8Q_FKHt9JzJNZTKKDN7euw_n33U@JCeE6;XyWXNGbhfU
zxNzd!i3=t!oZLKl{p6I%VUyh_*G!I>95cCWvghQ0$$^s-Cg)D>pX@U^YjWk}@X4W*
zgC_e=E}UFGxq5Qq<haSnlhY^rO^%#=eCmOzC#N2sdUWdcsq3a~n6_q`!gTrR64Pa;
zOHQ9Pec|*u)8|c}JN@ePE7Lztcbwre!)u1;4A&XXGgN14&(xWzHPd*e(M<iBx-$)D
z8qAzAbMefDGnr=nn)zks_nALu{+Rh~=I@z*Xa1Y{XD0KkeY5_}`a6qp_McfEvuDj-
zF?-(Z*|V3;UO0Q{>?O0?W-pq(VD|di#&aF#rq4B-t2bAFuHjsZxdwAx=Q_=Go@+PP
ze6GV>+qqxsb?0`?>zvm+Z^OJ3^KQ-iJ@5ZKmHEo^mF9=cUohV=P&ZI7a7Ngiu<2p5
z!sdp}3@eDViO!74ia8LQ8<!V%Bk_LX+r)Q?9}{0Cen@<scrEc|;{Ozu)W0b|QW#U2
zQ~#t)NxhwVEA4jLjkKd#JG1s?J<K|mwJU2|*7mI9SzEH!X2oTn%;wHvFW@QQEnqBQ
zEf6W-EBK$!Q1Clnt>91o_k6Ab#-jg)KMR?Q{uY)M?<hG?vbE%3$-a_pCA&)wm57uI
zm&TN(ltq>Wlm(ZCmqnE=E8AQ4rtDDpu5zAA;YyK8&Pstwp-REZwUuis<Evz9G;1Vl
z6l&yabZca5)M_+plxkFK3~FNP0_wu*lItSslIr5?0_zg$!s~+Tw$^X1|6c#2zO><D
z<E6$6jqy!!O<P)zwH|0a+<K^WbL-aDy{*SvkF@S@J>7b)^+fB@){U*(S}(P#wC!l!
z-ny?fv+a5Nv-U^rx7%O0ziNNle!u;5`;+!7?RVNQx4&(_(f+vodi%|G#*Q!TFWT?6
z2X}gR`gi(tx^)J026lROYIUo3D|Z`r8+4m?yLan%+jQG?8+NO9n|G^qn|14Tt8`m;
z+jd)ZJN1<I%<P%bGri|u4@)moFGFukUs7K}UwB_wUtC{mUwU73UsPXWUu<7yUr3)@
zzk9z&zjwdJM5~F`6YVChn7DM}@`>vwu9~=Ya?j*RlebTvJ$dfr&dJLs_f1|kdEVq@
zlc!GZm^^dx{K*ZIdna$4JaO`-$x9}$n7n23;>nk$UY>e!>gH+Jr`?)%DE9ue8`JJi
zQ=YCgU3L1J>FcJin7(@YlIg3aFPgq|`t|8Ir(c_XWBRY@0W$(;1kKnn!*Qm~Oskpv
zv$$t*&f=ZLGD~n4*DTgq?6cTr9hh}z7RPLs*{riQXPeIUn(Z^&d-n0!$7Ua%y?^$>
z*;{Atn0<Nnw%JE!@0`7NcFf%1x&Cv#=0?x;o*OwgY_8AT@VP;AL*~ZMjhGuXw{Kq0
zy!-PQ=QGR~o3A=wd%o6u&G{PheddSGHwiQioEG#wXiM<wu(e^!!j^}v3R@F)E8=d%
z?FgYr+i1IJ`{={51#$c1e<!l13Z(L;a;Ea6@};(<-b=lkdN1vH)`P4wSr@ZzW}VKu
zpLHkeLe}f7^I2!J?qwxpZ^-7!kt|RzP$&>9&@NCcP%2O^&@2!yP$`fp;3?uNVlQGU
zVl7%)w5(`J(c+?oMW;)SmTWIMTq0JQP<FEXRQZwekL9wJ(v^ypGL_<$a+Mn@)2lM7
zjB9LaENgUXtZUxXys9ayE3K=jE2t~4%de}dE2=B0%c%3N_o{EMZ>!&4|F`~MeMQ6d
z#;c9oO({)@P03BKTR*nGZN1t0u=Pdjt=8+UZ(2XK{%F0?dcXB?>z&q%tsh#SwZ3n?
z*ZQcHq2pIObH}&#@9mr&JRRH}Y#o2vIXeEgb9FFvBy~o0Mt6pHCU(YjMs&t@Ms{{|
zZtvXI`K>dc+oRj7+o3zSJFGjT+q*loJFwfSJE%Ln+qtK_r>tjI4_hyLFK6$X-c`M8
zdsp}7_Eq#1_ht3v_f_{D>I>=*?Dy{v=nwAS((f?Qe&U9SYbV~De0=ix$%iK2ntWmM
z&&h8lpP77f^2*82CZC#oW%9epk0)Q9d}Q*u$p<E1n!I%K^U1YSZ%w^D_2D$l>DtqE
zrfW=Bo4$Ga_UYTE-<^JM`u*uKGa_fi&Iq5ef5zS!yJzg1;W5*Frt{2YGndblnk70*
zb(ZWbm08lWlx8W+QlF(fOKz6TERk7<W^vEvn$0(xXSVt5SF>NwelYvq>?gCI&3-id
z!|W@wug`un`_Al}v!BksI{V@5TeHjOHqPyu+cLLfZsFX9xfOHU=628RnOi$Idv3|x
z(zyk5Gv~I>EuLFFw`p$v+{(H2bKB=;%$+iC;=BX%{>;;z?=atSzVH07`Qh^;=9>p^
z3fmgCIqY$SYxJ?$<FW7J-p3t?KN$ZrQ9M;FRWwyN^?vG$w8v>r(mrQ>$a<CaBI{??
z$E<f*@3U+QObhf2%nM8k3=5nJEDG!ktO_g(v<e&wtP6|_91DbtM2c1v)fU$j?<!ec
zwyJDj+1s)+<>$)Jm!B>FRIXa7T&Z5EQK?d?S-Gh)uPUc1x9WS9XN^aVSB-m(Yt6fw
z>bknR#=3^OUG@L#D;sV%-fYZh%4||<``^mg_ODgCjiK#ZD@z+^8*3X++uv5n4uKBA
z4)G4*4zZ5p&a}>*o!>hXy0f}tyED3zyHmT<yK}qO^|tkO^tJRw_J{R{_lNdJ^hfpg
zPH>*+IC1;LtrIs*+&qzcitv=*lNF}$PZ62&Z?fnVfhihOB&YCB`8t_l%J<3aQ~0Kc
zO%a;%Ycl7QACqmSa83C?`OjpYDc>dwPGOsJZ|Z}o_owPj*Pp&~`tIp}r~jLtFe7P3
z@{ITy2WK3b5irwlX5>ttncg#lXBy2inPoUjXO`A1vss$6^k!Mi(w%jD)~Q*?W(mv|
znk_h+dk)8(@3UFw2+jF1+hGp-9KJbhbHwL}%;B6ff9}k=OXkj<J8ABWxfABjp1WY~
zl(}=}u9`c2?!vjV<}RAMV(z@Ti|6j2yK?Tdxy$A*pF4Bj?0K{1J)QSt-t&3S<{8Y_
zn;$(tVSe2F*!hw3C(gGDv<#dPG(G5W*xs;xVII-$(Whh2$9|0an<$;il>H}*Ir~Qz
zL$-5)OMzE`M}cR7Yk^yVY>`xvWKmtQcxhJIg>v0W!%F?ikec9{Pc>b2?R6b>-F0ns
zy>-6zyXy@a?lwxaX|<`f$+s!D$+StfskiC1DYhxJX|~C=skUi$$aY9~D0HZF$aH9T
zcy;7<W_IRvW_SMTtn9AncI~d}uI?7-73p2y+t=6A7uO%%AKULX(Pg6R#GMoEr&v!h
zo1!_zc8b9i%PCq@%%|u~ahPH_<>}NXQy)(?oo+RK|MZ8`Q)Zl;acstc84)wXW?Ig&
zo#i&mWtP({$5~dh>}Q>wB|2Mtw#00)*;ccIW^2!pog*_xXO8k5jX9cgROTqo**<sM
z+&yy-&OJW&)ZFuP_su;z_wd}^bGObtH+SdUU31sWJu!FV+_iJh%-uZq?A%RrtLDv_
z_j=yDd2i=Q&zG1lHQ#W)-~811Df1`I-|2TO>}c5Ou);|1XrJh-u@_@M#VMvLq^hMV
zrE+I;WOHWo=7bi66@(WA704CI7p*L+FTPQ7wd7{W^^)AOwPmK2TPh2x3ai3vVrn95
zqHCgRzSMlInONsv-(G*OF}um6&9u$9O{dMM&8$tQL!(2jL#sozqp)*-=f2M0ops$U
z-A&zX-L2jA-J-oy`=<2G>YLOzp>JB>^uC1tq<;5_K2rjwcun!1;y=ZGit7}QDV|f@
zrr1w^JUweh=8V%bLS{zK^qUntD`b|>EdN;^v%F?`&I+0pFzdoB$=TYot!IbL4xQ~b
z$77ED9G5wkbByOW&as(eKF4H^(Hz@3W^-=Oy)^gU+*@-`&%H4B&fJT0@6UZX_vYLi
zbFa<)I``__yK}eA`!LURzVUpc`A+k*=TDu#XufUW%%B$$&m)Q=eWP#0>Ua3ZGbS-7
zu_S4xs-{j$eVrzlEtJileJVS;AgVyAsHwQIxVgBX>`HlhO<K*=x|}AfHitILHk&rX
zHtROKHiHhM4!sWJj<U{@&f?C0oju)s-QC?C-L5^7y)*h!`jh+jOiY>*Iwf{W_>{OQ
zN2VX0&M+fvR^%+X+48d$W(UoQm=iF^YmV<6?>V7!BIo$b@tgB|?)SOx=RThMdhU<8
zPv(A``*7~NxzFZ)n)_kyqq%S9ewq7u?u)r^=N_7OVcw^CpXag7mzi%d-+aE=eCPT8
z^9$z}%+H&jKmT&r*)YH8+!)=|w`uRvgtOxd5({Dr5(<=yZkIeQxms>fxxI2*Wme7f
zy3YFCCg(Pb4)YGv4)2aB-BY{g_08{F&^Nbl-^9HW4^7OTk})N7%F}6X)19ZgPd`5W
z>GZf+S7$}ePM(uKCv8sBoVYm&bC~A+o6A0rc^=z5)_Dx`80T@$`#<;ZT$XtY=E==>
zn_n`&bbi_VD`9%6J5nXGC9}n|rLvO>)QVOW-6+3VZdsXGlU?(zW>(#dy4iIz>mD>d
zY;<dLZ}VuY?5ygn>8$Sj-#MduX7|#*C4Gzg@}}fY$)8d<rFe?x^r9K@Gc)Go&B>j^
zJ&$*uz&!qWLh}UYEu8mt9_M`b`4#i4=U2_IoG%xiR*+v~)3K>{S>NG_B~vP<luap}
zk}ykecFCOLIfZjd=ZMS`p7(7Y*Zd{(GYV1*zSm^6*>%`<*mun9p3}3k?_{6%^x_#M
zGtSINoVj{t%B-|m>9bU3i_R0D=P{o>NiJKx$fs>ZU(=L^DUDMyXJyQioafy(zq@%#
z<(%#FO3SimRn3u|msyZipjotJUfq1p`7`E2?pi~-|4xCwZ8ih={<|Xn_KEP@7#q-c
zJ(s0{ZeuJ@;NKQX{BGxmvJ4F6h)vEJ$C+UlQGSE&MTXpt7>d}7Y<S?cICMWUbT6{u
zf!DD6`>@{&1QXTpGxM|eYxQIGWASSWoEB&ioEf|=Sj(^7&(rTwpqpR6-yXkxerbV^
z16hLR1pWQb6v-9Y5PdtgDy}~6OI$#FV0>b{?6klCll_wX7W=gZ9`!r#ch2vOUrS(H
zAm}coCxNU%^Md9E{S9IWwhI3H-z_*cxGi{l@ZbMug8%+M7pxfm_di1%PrP}OMUqLX
zY3hU2zyEuSr~5td1L=P5_xJxZFbl-H5!M~p6F4*QY2e@g+(94_mSE;!_Taz&<$~jb
zbAvmBcLiSv{`>!1@b}=K!GHgM2?nWA31^9vh%|~ch%|}(`@b~u@BgOgpV1;QAUOnX
zjBAeLjSq_d`~Ot@@p#LmzyJM{o~P=kS7lq~fK-|1xa7Fz^b}7jEi0QmVbTPUn4+J8
zpORmOU#H&;zn^~Z!S4Lw$L7!M|Htp0pP2vO{~G=>{_Orz{=fXh{k;PJ{x1sr`+rN|
z=D<yXfB(M-{QF-dh(Aa)NFr!O(BJ>w!T!O2{|5yB{oft@_y4}&zyB`<i-r6T{`;RH
z<nMph5aAHf5Rk2p!%V}?!VSZX!rw)(MuzzP{cjct694<ZD)R6DHZZ#_Iyhb;=I?*o
zm<qT*8)E+c=ZJ%-{QLiF9A7+yeL4PC{NMk#<NyBWPl`>7PfAY;PYRg-_y6nESE+yh
zo2UQ%Z<KD9u9ST)`|tmVoWPv&9GjfK|D$sL{twQ{FDNR=D*%~OT(GfdQ_<i5{ly^O
z-~Tq1fB*M3^fmnbU)}Wge_`*={%I3tP5Ap?#jnus@BcY|uKr&Bmj34cfBzf#JNf_p
z@8a+6|M$Oxzp1~We_-I>{{ex1;Pf*$@bCYvfja`<1S$uq2dM?g2WbZ>1Z@f09Q60U
zYOr;12{?`+cKU+D#|likg!qIghe(AOg?NW3hW!0+65<&W5TX=f9}*Z66`~*V_y5bV
zPhp?K-iN&ndlU97%p?5of0uCkaGUVp@UZZ||Kr1*!z04O!yzWSh5!9;8~*pdQ+P;t
zX!ys7PZ1v?xFeU%`xs^$`S<^n$ezf*|L1^1etzWN|Fa|i{_l*O75Vpn2Pid1|NZ|j
z`hWD_XziH4|65}EV&;J3q&4PiEGIZVxa0o*pA<JCjyeACf4TVN_`m<3$N!6e7Jn!H
zT>Rhvf8y`Qzlr}A|M&l=_z&?v<Ny8_P6D~gI>{!f3C#NYzaptS>F@t}NlTMvC(TKk
znbe!qnlv}56e{~I6{P;}|F3D$>3{!+qz9${{U4F;lJ1qBnEv;Fea^(3c{zXo=jGJo
z%+D#!`TIXCXHiaN&fotFbN>Ecm9rq{@Bhkz@`Ad8zyC`MstZzz{{G)xw5RBJ(axfM
zMcax%X3v1e`rrSPOB>4m{%<ZjP<F5kB=e>GYx&>*XR6Lt{i>PYFtK5J!<2@<|J#~+
zn*RQu+VuB-PTSxATl@F*AMgMB|6u>h2}{5^>+k;+6V#`vP1BxcJk4a9<}_QszyIg@
zP4@5d2br1c-{-%;f06$}|M~ul{r~<i^8fq4$3G05UM7IazyIF`{tMI(`upD|$Rx-z
zXlKyYp#4Fi!GHgk1y==64*vW9VDO>ftHG@yfB(maOb+P`sSNoyuRkO+Bsb*m|0y9^
zAzh$U6!tspN7&#0f5N_nrG__#Cx@qp|NWmAUJ+goP8Xjeyd!<UvHth}+Q`5Ek3|0c
ze<*STROIjf{gHqFpN!lQxdtk-J@R_w-~S2GfB#R5o)<kOdVciW=)eCNVkE)o!867y
z=I{UAF$clCzyEi}%!}C)vn%FXtZ<xATzTBz|1;wL{+}5)H||H=-~T`3{{Cl+SB(Gr
zUo}1ynv+}No8t`<*c1N#H%kD8)8GFu<82c-!0cT~o09(i-=6d&X*o1iTupkIbT?^P
z(!r#oNe7bdCp}2Im-P34XX@Yo%Tjlx{{8<y_3wZ2G>J6Ew1268|MR5({hysaExjqd
zEB){P#p!?lFG}xE|NH-EdPBNewt99(c4qe9|BcyOvM*+X?3MwSnjqHS|I>4Fa_;B+
z{r@WG@Bb$`H*z-RoXa_p^Y?#uK}W%ag8qWP|Jw^X3wjG03;zD^0hcBY;8c}blvb1h
zW}Pj%Ty(qW@Bi~f%ZnEm&ny1>e?2(Gtty^V{P(|8sY|JKsblHi|FcWymHz#Ir1Eg(
zu}YBL$1DH-KLuu;uPUo4srg^?rv@Y*S-+wIL~m&L`+sx8-~US*wlyqoSkv(L|FVYk
zV7{g!O?J(5nm{TbcvaKi|0luxWlfvF^xywy`fv81>c7!{zJL3KzyH@x*g3&`+TZ_<
z)9j{gn-(}dd3v~CrQasM4SwtWHu_!izv}<@|33d6{u}%^`kw%&;$!}2{Ga+i_TS>4
z75Ml6{J_8e4+j4Ie<<*9plgr^xOVdglShM21sw@e4~__~4gUN8Zt$JpTfsMjcZU4^
ze<5T`$f=OO{}+ec3Rx2J_y4Alc_H&dwt`ab|Fa=~|DOr@`=23vP58v{zVP1gN#P5_
zCxkBxUlIQI|D5n?;mg5k805dN5r6-4Msh^{{T~EQsrMuQ{(l|$KJr84)kxkbmZ+bR
zOi@1~A4T4bd>)w<4brhX`tN_~82y;P|83Gh{J;M%#@vZ{7V|LXY|P*Pk7Dk|JdODs
z`zuy1?(hGF;4<z{-0wJja5_x`lYjrmB>esFmk<a}oyrM@2{j2p34i}5BzPqxCj9*`
z0ZpY4)BpaLPZm#pm86)=lFXX?_rGDPOR7Wa-~Udj`%?e@*G!X6`}<!xO(#t%%^=M>
zO)kwm%_8mZf4+2(?icCT(*OQHp1vnNC}V&6)%1Vq$<4ph|Nh^Y&X~cP!H{u1{qKLR
z>}+tV1*v}sW+~_X&k@OG%@xjN%T>(%`(HG7ea@F0rd-$DzyH;8|NeK${rg`fcWJ@j
z|BDO${$EtEyI?`VDsb9eQLwFGQ^9gDduM@O(ck|zMSuV2g46NyqPInV|Gz1ETJ)&s
z@BbskdyCH(pDaFDe4+U7|8vD}OJ0}!{r|qivoxU8t<<aZ?|<LYWu+iD{r$fJOdl`%
z4=Pp5o|SV|{Qb{T!Ck>#@%O)I1xLl-|CcMTR9>jOURhHG(otL0T-8+d_y3iut5uh)
zE>vBr`d9U*s=TJArW%|BKx$yPzy5N=-~Xo@E;ao9&)N8>;eNxhhQI$+n!Y#PXu1nd
z?LV6Sfa#Y_fB(O0`uqPv6JPVAChq3HO_hOVZGZn)w1LbjZL4kj``@V}t>f?io=(=T
zzyH~~{{Ele^Y{P9{^$KK```B;ny_cW-~Y!Z8~~T{XD6JT@b~|b34i}LPW}7;%^ahE
zpZ>A||NU74KKL^S{Qb`q@W=m?ze)f{fLVZEz~BD@0Tuz40e}6&0)G214qO(v5M0(D
z4?G!|5R?)W8I&579uyvw9Q5~paM0iX=Y#(KKNoZ%=wi?ra6bC`pEvYN$lw3Mq3=V!
zhWrd+3S|fdxmqIhL&!I9o{<dw`=2%ZWcc6z+r!U7bH~2$-Qj=#-wr<!ekA;8_{H#3
z;RnDnicwlofB(xy{r%4!1u_MMmB1{OsK5V3q70+{{@0I^iV^~gse#Eo(YvF!N3+JT
z#RSC!gG>2eF|T9({{I~FHRff^`<TD~wc-ro^x|~l^yAjYtpw$pIHUN!_{s78@%{-j
z6aN0MOZfZ0B*8nOIH44rZ^9B*CUhq(OZfYLa>BZVc?ruCT*3K9FZu8Ppk#yO=;Xiu
zC6lE=IVL$a**w`aIXL<6|CnU^WN&brpgZ;N|5>R4X>MtLX%1<B|9hu-r2YM$kmi!+
zoA&p=d4@^`$Y0VKW*L9~>tsk~gk`vA*k#CN{QWPQp_HMX5t$K@5t?C;p`4+Yt(|R<
zos<3de|PrZ|1Yy&Wk1c%&IRc%&J73CvAJQn{khS(GP$#IXXnn${rkT$w-78-lpB*f
zE%!*l?SeA}7YZI1+%Ne1|60Mjf~(*>1Tv$l=<olpMNHr_|55Rq;;Y3!i|-dd1M@-h
zPl_KFe=Y&BKsc;4v^1hLyfm)#FgVw2DgFC@Bbar%>`a+f`QQIy<^1I!mG<S@<$UET
z<$wPxmP?f11&gUvm{t7!A5j@u`S*WP<*mw_m4E*~tbAJeqVjg--~W#)KY;5KknUSm
zcdP#Xzg=|)oa1<_xvNF0`)b;1{{C;TX|Cyp=QEXBkm|qxRcn*#C)dxcpI#5*AE`f9
z&(#28IW*WbST}rY_}}oZfu)hTk-ZTl`W-B%+w}LpdXr|8d~<j+NECz>!7Pd92rvy2
z`TM`6ZGPMAw$8R?ZIjyi+ZMF>cT{v#b>wwaceHdAcYxIJc5!z}c7a$h{Ij2P0>^~E
z|L;u*oCp%TJ@Nj;dlRosd@!+fYQnV0X@CERO#_MV1(QwzkpX}Iy9A^K1O<cy6b1wY
zR0q@qL<E3TR0iY(R0OODycl>sFe9ie=t|Jv{|kbT1poaX5$Y3~5&HMPCpfRghH8fX
z{T~t<9QyZvROsLTR-yKx+M%z)|Negu&Q*8A|Aqhke=q!5_}~98!vBXeM|_W1mLVVc
z_kVO`Y-Aj`cG8ae``;RzpAw_2qVl4=qq4y~*C@ZJj40cv!YKQw{HW5XzyFJ)bfO}o
zLZbYmlEErYMF0JNIQsAZ=$OQqzyB3uxnenE|NhsB<%k9OK`T}?_V0gzSmD^e|Mg=f
zV*mbs9BUb88fO(}1j>p3L27o#?TRyrw}jSUfB(-&`1}6?I4A!7e?4JU!r%W36P6_W
z{r@iE@Bimu@q1vhF1b4yq`xw`EqQYC-~YwQS;>F@=Oq9AU!VN<|EA<!VA-_flH|Yt
zqf-C=_e=Fn?M>}VU7Py%|MApQsek{UO#S=+acX$l-~Y*J>1k5wlIddL+HGFOwu~7W
z#TkG9&&ue_*q(7aV`)ZC#=(phaL%2YQI#<><M00+89OryGXDNI&Hnp;LiX<Lx8OSN
z@Bf3jhjY(?^WfTCmb}0Jcjo^6|2+5ae~vu1yubgs@;2oD{r@AEC-3k7jk$mSGv%@8
zapp1RiRb;#70Ltohq;iwkg@P<!N&rQ!cPVKg@6D5gXUSOVu515Vy2SM;5_;pO#b~Z
zU8-D~SejA#_kVinWpIw10IJXaUoE>{cCE~y{O^CY^1uHb%K!eC1LwuR|J^J8{`am3
ztnjaJs&K3L`#-NTr}9(f-~S&gzgB*({0YsAv#KUnO{{td&WDQCGSy<$;?-u=^3{L;
zPp+9+GplA!&ENl?wSWJc)SB1+{jXd5_rDJ~PkMk!YjA!9`G=!Hs^RZ{*@nOWJsVsb
zTpDJB^RQN<9ymuDHvauD)o9Wv4(9#+FWX$$+|u08T-3a<`S1VA=84UJ|Icq;3(l3w
z&42&5HqU9^-W<^u)%N#)c-yA7zyH^P>&d_WT|4G<OzBwM(ciJOV`ay(j;@Xc9TPex
zbx!P@()stlT9;9m1~{k6bp8FW-KEg=_rE5X|M$OQmsQW-|Is}WJvBXl|1axV*R!@K
zwfFD;y57J4YkKQ@t9tkLf_!qIcX#jFzV&_A`anDgz6oXvP2iiLI^pks;R)|1{QbXr
z!uJV(|3^*?nfPhqhlx)oegl^T?Nk5$j{@iVJTUq9f915l{~ykHHskOABl9lJYw-K~
zztOKhV0u7DKqt5aXbeaI*Tzn9m%;R<z-xiUL4W@jK<nNW!OMb=22T&Y2QCMug>DJ`
z`@c2x@Bi7M3qt??j|~0$zYQ$2KC}u<|NTEN^zZ+bq5R=|;ZhNQ|I0`G{cjT?5n&gh
z7V-DLRm9)_N)dnm|BgtGOo{yae?`>dsHUinsD)9jQ8S|c{+}83_kU+pW7M>$25`=w
z2qr<Ha30PA@!F#nME(6=8TI#nTh!{PRZ&Z#dZX&1{{FuTZsq>{FBcOZ6BpwWYZv?X
zzelW0?BD;<vA*EaB0To*|KM2v*uVd+W8J_aZgK8$fB$>L9f;c-w?FRhf5G^_|Lx+f
z<NyA*f|eJ{<NyADmGJjJd!kYzPa??v%?Z~ME+zc^|2W}k!b@;TA(;3VOv@!IBq}D#
zCH?*XDEVIUGjRC;((xnt@Be?v2b1?Fe^0)c9G{wynh37RFM`S1wCuEcaErV+tuZY(
zEfdU^OMeS44M6&tGyneom+>@1E|Vz}#OKUBmBEnt_djE%MCPN6^BI5t>t!Cz_@D9j
zzf9)gjKBZ$v;Y3j%l`X+U-sYsU$S*`{{G*VTbd`A_xHa<-rxTod4K===l%Wfl$VuP
zkoON<lH}(7{a>9|mlv7$_kVca-~SDH0eOG_Yvz^ZY32FkX%+tcZ(68RXkI8=2(sUz
z@b7<<LhVB1LiIwG!oUA@3yq4Ji<*ksi`a@)iY<z@igk*$i~s)DFV-j)2iNeDB^D)r
z|I3$%l-QJfFP140Es-d(EcscY0xnPf{?9ATEiEkVEB*WbDOBX||0!jg%l`hqS@!q8
zN4aOYGq`MVD!*U;_kVIlS;gP~@fB$mX_bZG(xj}irLwg0e<gd>-~W77oZvDA<WdlR
zUiGLdv>L>6t`4uxsdlOkuKxSq5iGL2W<kxenk6+QwSWId*8csUP#a#GQ(IS?Qv3IR
zRBdc6NY~&0WwpMwrL}+mU#`CfE_D(b{2E*vtsDRT_h@u#^lWr!6lrv9{QLiX<F`iU
zroaE+Hvj#9t68GuQZq-(-~S9P5L3ik+?qvNE;qBb$hR=Hh_#$;e%Ac=e{9>;wujIX
z=I{S^ZSEaz;F^DT$KU_^JGONE{lB&2@Bdky&fu~n3QYd}Z`x(i<<#Zb72D<AWeXMi
z`#+&4uBX1IuBW-@@BfWG?cg${qqiAMxAk`SHuawBy#(f6={?!I0bH{D{r{=&N#Ezb
zS0G;B-~V&_wI^sz`1@aDg60GraEsq+g24py3Dy(-{^tUhGk^d8o2W49?|<$|fB#EN
zQkwMlzw{)INq_(IO%k32^6Av6AoB13o@v$7>ZdhM`}@BMS{{MK-%Wcv?eG6L)8eP+
zPyhQrcREN6hCj@JuvX3j(GO;A2anF43D^_x_y4MZodJLUuMRjIa5kVWur8<)Tt+<%
zdJyzHs3CZD@T%aI!4HC8h5r429b6V23>6Lk`#&e*@Bf&HfQZD1tcc8ru!w|+w21f!
z<;b+i3~;;TT-4wHN23md%a;pa5@a(7mqeFE--*5+eJlEQ^xyvqF}bm6v48)k#OB5R
z{htu)6dx6z2QDED60H)o5}gwz6Acsp{<j5}5P$!3q!^`Gr2PGFnDY0(WXj+Ff+-*~
zHB)54^xywBDS!XFrMQE6Rw?W$fB$Ev{{3H&nw$Ff|C7|o;1U3&qaVzgl=k<3U)taQ
zZs6Px5{F<zFyAio@Bf-i=ghzVi!=ZJ4+V?0X8L9ZWV&ajXPRZEWF}_*{a>5ulI@UP
zm|dJb2iA_r{`>z|wqcGDc+_V{-io}x|0m|{&ing+7Py_T5=?H*%gK9@_xJzZyjywC
z^45UG{{Fw2_c-rm-tD}<|MS5mf=A)s|6YaJg@6D17ls#>fW`j)cP$Jo%q{%;Kd>mE
z$gk+{f5+m#|MiO9ivRvsFZui5qa?V*w&d^s*pjf4zyIY*+)JEGB1$|<{{HtVaV@bc
z`TL)-R1RDkRF%FfWh$FqHUr%5`1?P$Jf%FiJfgg*VnRh%#ozx`6}1(A|94kZRDi;z
zx1ytBQbl7$U1c-4Z20@X0ZQ|O%LUo0zyB9jEvfqZ|7F#ys=xn}s<W&A{*SBv`@a%g
zCgfLVfa!JMcEsQR8*2XkpHTbve^>3_|J}7SYp2%!{oh_&Q9Hf1vvvlwgjftN7ykag
zTOZ!=_kVI@R$~sdy%F13+W7Z>eB<B$wT-!8F~=tVmX?;k|La@+{`Y9nYN>81YDsC)
zYl&$IZu$G)vE@X|-~UN14J~#p%`Js3fB$>6gtkOL%aA{9f7?Xc|Na+i{|_xQB0A1@
zJOGy%AiqEF%<5|B`ujh>E4AzI|B9~Kt`2bNkkVDx_4j{zS8`8B&)@%Nd;b1E+4J}R
zTX0zb(g(pCL1n;ymi~GD3;LZWxJ~ew;5xx!f)BV9;F%~qQFP+p|Jf7MC&o?+on$)c
z@Bhe2`jc!X^-qeKlr<@7Qv9UsNqLj3C%H^=oHT3d-~ThA<v{<mzyGH}OMoxa{!IJ(
zKXm%v|CP|3|8Dx%>3{!o&-nZQGdTBupYeaj*BO8RznSq7%%3&$@Bc@$Y-h*Lelh3o
z|JQTg&v`eeah}Nh3jsF+?gZQj`1}81z-w@8=1ah%fO}xp-~V60?U}#--v+%3`upD~
z`0xL9!5f1A{{J1y9L62?_dk2s-~T^C|NhqqlMDO%Um{E}EHI2UOgwy2#NYot5r6+z
zM6^T{N34yQ9x*kdJfbLKT10PzK;+;5Igx+=KacwR{|UIPcps$}1`4?kQPr`3|2KnM
z6y32sv48(p#0G);9~a`z$Nl}kIerVctoZxCI`QxS{KUpYn?$EXi$vqZzyA{wGZSkQ
z+Y)t>G?M=Q_euHtKRl%dTrPyBB&8IlWTk|qSf@0m{Qd8rQkRkfmI2xM_kSU{^{_N;
zR@$7jzyFt|{r$frtv~Z<=84QnnVZ0+z~BFmGY@25%e<I5KXXy$C8*fL%&VDm!R#5C
zfB%<cFU<b?|3ltqaL$&_=gF7NH_6w?7tjCu-zDEEpCw-~|5u(@{=~w*!oUB!3wsOe
z3wsLd3Tq0R3;+J_0O#~6MSuT?76%vm7l#z*l%$rVl_ZvAmt>TbmHhpmQ1bVGNeNpi
zU)kUP?BM*nv+VEx?PZV3{{Am1FE1}EFD?K3zoNXb{O|v&^60|q@?{n4Dt3T#^56d(
zE7n*1{oh&H4$i@vRe%3$RsH?1TcuO=_rFoq-~Vr_K2$YU&#P{({`-GY_22)CtLIlw
zuKxSKt$Ihzc4+<uh1QAMZMA>@U#$K6e?{%;+Q0ud*PgBY`~Q6H5^(-?tk176gyvw7
z>c9V$8=@Qj{!eU(Z)gPP*_KA(roaEantZ?`YJdOlZJFBg_y44p!!3XRPitA)vbAM%
z%i@+NEjL=Ow*39Sy=867t(M6xX6+EuY}>Wl-P<kO|NeJvmu>(1|9{7;j=%rEcKrR%
z(D}B5x$`AB|Gw({`+s&<U)Q3pzyIfSP3fA@wX$msXe<t#gXe<sZx6`43q99*uJp|4
zoz*)Xnt!?bIQkg-w)Ac8`}==k|DyiC|Dz`S{hv4?9-MPkCst1^n^-gP@Bhw8-zIIG
zw06>@NsW_QCjI@tZqkHF^T2iX-~WrIE{En<kR1!A&7C%X+J$L<|6c^>+{o#F|EEB6
ztmKTp|3zkq&X5A<PmpT1nScNPn87&n@Be)>_srZrbKA@VGyneIF%u;B_y3WZfB)~F
z`S<^=Sx;uYob_VXt65KH{r#^t8zk!hCP6F+-a8LM|NYMw`1k+!fWQC$1n>qj2Hpz1
z8F)LeEvPT(U666`#^AsI-NSUlLc;$3_YMmRGYoSH3kwSf(+>Ol-#5%W%s*^V#P*24
z|2IYa{l6+=Ys7|#zyG&HEQwei@%O)4<iDuD|5>8{{{Iv8_di=SSM;wa-e`tsK4|Y@
zV(j1l{jn2bXT&avogKS4c3SL{*eGybj*I*Ie@A?HVoc()#HooLiGTkuPV7(o`#&Y|
z@Bhfeip0PFTNB$8=Yd-QGZN>3Y5k;zl-VhLDZMFEQjVqk{l6lmIpy#FohfZ8TT<4i
zOicOve^tuDl;tVg(l)34{l6z|P1@i8Yt#6${{ENAlF9;w1$Wlp|L-$-vOZ)gW&Qns
zBlGWnp{!q-fB$P`{rxWhR-u{oGxJrZPL@j6-~TT&gR=dzgTXbtKz?d|X+Fpd5WbNA
z_kT>jZGK_?-~SWyx$`UY8}s|~|Nf86FUkM=e_i3<|BDOPf^+lg!exbv3jhB96ck<*
zS~RoBySNJ6hX4D&r=$hUYATsrQeE=*KPR|$2AK}RUFCoOPbmNU|5(N4iUSpwDvnni
zs`&eVe&yWCd6j?vJ68SuZ&77c<pi#S?W#6Zt*hP)u4ngy$+Oje|8D}bKxRSkk(#qL
zhiZ=19IiQ8bG+v7{~xt~|G%w$1kSU6|KF))s$;DC`~O<)-~Uf)|JDBe&rtWL_HXUq
z|6gnW*Z%$gy7p;pMg6+^=k<U8r#56Yq%~wTWH(G{T-Z3Naa!YKaK2`2{rmq%%isTB
zTmJrMX@%JO_rG*2bE|QyN$Xp1t!vu)_dhFKt`?f73)}zxkLh^U!QUy}`S<_I&ZV92
zIyZLx{ePzGT-V?K+q?e$-`e%EYfIPP|C_rGcCGI^)pY@!kN^Jf1LxwGJ-2)Q{(s%G
zr1$UtMZI&OIr;B@tv(HKExe;|Ti?#U?R`r9+WqSNlKo5i|Nh_H|M!34ge-8b?wHs!
zasQ+pllD!zGwCTf4_}#dZPMTWw<f)v^m)?lNq_(Eob+hY>q+aU{{6pc>Sk!(UOa6n
zI6s4Y$~FD(|Muyf(|e}BpRP4SX~y6G@-zPamz??c|EZa`pn3P+%o8&o%>4U*+pMj#
z{{H_m>+k>U*_pG8W+%`7`=592-~WtrdFKB8|6>lwynl0;=C;iH`+xPkRr6#6#RC8S
z*AA2mln$H_G$lv`Jma4p_V<5v*x&#0VTs^+6Qm1*4@aDe*d1{o;z$Hzq<pkQv|zMo
z^xywN(K6A0|0_jTMlXx~`+sxn>eyFtfB#2=>(cFs=Mr}&?oB+Ocp!0R;`GG7|92-|
zNIa5gnDqDm<&*>Pdh$-n#gr2%fB#=iIh+QvYk%6&w7>t)rX5UUOaJ>{B|SOIDJv-J
z?|<hk<E+2`bF#v-{{HvL$^+*tkov#>&9nagFU<1FGRyk=KRD~}f7h%6uxw0LM0Pkh
zr$N;H{l6QW+xCIUzyG)9U(TPO|M&m){IB`j3;+J#UHJF^#lpY;cNPBqzpd~LIImqU
zoDI%V(@GYV%q`(6<tzRBzp+%O%)HF3%)0FF|Al2BvuBk5{XY%d|NZ;_TE**%zyI%4
z{QbYQa%H8-jNmHQs=xpJtN#AqTeZ9DBRF@xseTL2NtbK>{(o5W_rGKv$dteT)$7#2
zth|Qx;MBji@$dgtjS|p0?eG8mR-e|t|D9U@{*P%bXpL|E`#-AHyVbt6tNri)?)HW4
zec-e|vpudOzC)#RdFQLHzg<7O9(O$jr|dUi5@ge-p1=R!gGRcbsoJ{Fx$p0Pqdvoa
zgZ{t&b^C4lm-jF22dVt~-+bcKiG36Q{+~AS?|;|HT$90~lf);>OlF^KIN4~j&SZnh
z%#&Fs|NVbx>fir6rvCkZ5So@(PumVo%c9doz%>)kbn)qb|4*L&_x~j@-)x5A4C5I#
zGxTOy&G`G@cE;cTTW2WERGz6YQ)Z^@%)kE^%>4WR{md6LUqjRS!<o;(tRJ(!g8QG%
zv!~2%nf>>F_w4@JfB*N){`<dk_TT?~&>Bl+F8|!W|Apsr%>}#o|KI;wbEW3~{jWY(
zY_8(mzyDk3t(kXh-qCs2=LOII`(GnaJ@9_u-~Xn;n}h%U?+U98>kRw*|7^sCh`;}}
zqm83AqfMg?qs^nuV)n)U{l7Ez@BiJgfB!#9yq$PA@lN8c#J~S<g6os};B@^k<?sJ@
zDS!WOO}&zKHSO>J3uzbA&ZS)kr|;UVuB^ZRmuLO`KQpT-s{@=;+p_-tpOG~e%<j+n
z`+rr|-~X}MfB$pk{QZAD|62Z2Xo|g=e=Gl0{@?%K!2HLBfB(NM{QLiP;rqhRg|EQr
z72?;z;=ljbmHhp`x#aKvHQ@ByT<TipSLRZ-xNK?JvhpS6fB&y6Uk^>OA1Z!Se60BU
z-xHiR|NcKz^{MJ})vxNm|G!oLsg|hWs1X9U)Na?@0@Hv0>(u#z)2Uniw|eb{l7=0P
zC&20T@Bc}ylUx7(uWw!5IvrdhuK|;P|DS9B`~NIBbslWr*nYhI?|+BRzyIw!Ej$1I
zckYC^dUfaD|MK0O-8|hOzC+L7|I>Q@{{PnVz31<Lw?2Pxsr&c8ZNFoG+T@DKv6C|=
zmrSmmoHw~>a`EJ($sUt~C&y3DnEdyD{p9S)fBzqu`uG3(X=|r#0;fT#>C)gd2Qqo~
z^!ac$h!4UJGyeW}pYiwqc6giV@Bc;M)W$IDGnoDgCil)_n9Vf%?|+lop0nrA{`-IN
z?6b3H&YlZSbCz@e{&xYVHd8RUe%{~z`hg(R`{w`sKR;}C*u1c5VN=2ug#G<*4Q|a?
zMIVgyjgO803{E>BmETgHro2jdp2C{?_y13DTKfBcb=KRgO<5bVwr1_iI+%4L>+k;q
zS$ncJW*y1e4^A;01<VD1^92f+3WN*({{L0TP_(mTPs!i^(Pe>U{$;Prc9j49zq9;c
z`GN9%<=mBj|Fc(eRdQ7R{m)y;Rw-J!9^7*O`~NFA_VsH1{+F)#`(LU?1svDUY952>
z*gF5Zw7Tdz_xdf+cKEM)J@8!GIdIHNg3G8gt(#i^{@>kt5E|<*+uyZ+XusCZ*Kw=e
zqtmO?uhX}4W9Np>&7FV$TXY+B|NXDq{rA5~_uv1T-6h~!ml<3lt?Z2e$M*idgMD88
zYx@8G@0?&e(PrYxi3=wG{Xb#y-~W>*cTZkBdH3WU;PPnB<Qr43Lrb05=_{w-g2!*j
zjKBXwXL!%}``>=XPI%l}%ru+nF!S$!>zS4_mw@AyV;0Y>zyAeh{r%5A`|tltv;Y1-
zG<)~#GqX>FW7c<W@?5{UfBy%}4W0Y<f85-^|0m4bG;ia)zyD9oW16o%Uv2*1|LemZ
zMBIt^``;2Avo+D5!E|=aky!3jj#MsiU+@l?e3*7W?OfKCtjAf`vmSwC5ESz_vaV)b
z0`uewbP7}pKIgL(aTJMyRy35HEID3sqGV;+vGSwk5|vVw3YCBVr&Xm?Wr5=iq#J}y
zYfQj#l~ecke_mZ--QWLL8m~1<H6=BrHkCEqZoSs}_y2Qn%zOcn?N{5`JO2LX@Av`E
zm+hT@|8MR53d)t;&fPxUfB$p$X7^?E74((%mG}Mqf4J}O|Cf_rO+G#O=;ULQ|NehF
z`SRqy|DS@x|Muk9lOIez2xi}f#skPjFuZB{mgyU(Z=L=L8ZTkcm~ff-_rKaK`B@UP
z6laOg`um>~9NI@`-=F>W|Kr(z|G%954lI&3w`%U+|9NvK&TXDsHn(nW?%cosr_Osk
z4`e>`e3tot|BKK6``;|^?|-x4zyF=UA@36H7F`#8D)vO|nb;3;fB(0pK23WLE`k64
z{{m`>gToqR!r%Y41%LmW75x1#R`mD3P!WHTc#&WcH+XHy*^&z-XG+eMTrBzfzq9o3
z|NJWN8W(UVLv+^H6?XsquisGBP~A`i&JTb8|7jIyV*-!<ylZ7{`}?1_O}LGtjlWHz
zLkQfDOz%wX+})Ykoz(sJe_r?B|B2my|EF~Ob_arUKy%-*zQ6zFr~LiTGDUm}#}w8n
zfB%1;EH{N|iqsV8De6;Xru_ZC6<nqnPyhShWV+$>9n*JB|NH+BIBXBk`1{{?=HLJN
z;2QGp|C6)+{y#D6$Sked7PA9p|NYN3=l5)uIe%vV1BdJ1|4ehf&6b|?bGGOlfjR$Y
zGtA)uw-l$&T?#J2Kz^Jt@8G<@|D)!o1nv&|`~O*lXY_Y)_+E(p`~Oh<-~WQ3Rc%@S
zvi@fM{m%$)ZFv{?7PuE&F3BiM2e*zcmK#(WRq9p#{Xcj9$*L1ofB%Qo1VY2GwXU<S
zudb!;@BgeO?Kb^3jkdr4#o9#MWZR^`VfFX_p3c(ln(n{<1$%{hWBPYb{QLh4IGyQE
z0lDtUH1p|Z)6=K#o4$AYqv;tl(q^2Pacai#8Fyy<{qH|><xHDdfB#$0IydX@f05b2
zv;Y3roAdX-JlKyQ-5cia1^aW|+#_?V!KrE9yubfh=l}hmIe+2&<6*MlUeT9h|NbwE
zXG;3}-!w@*RW4N?oQK)7*}#4cDUc~rDEd+L_kV0nM9ts-lj{7S<)eDX-~Wx>&E0?h
zyMW^rWS`R%-zgze{HFZ<?+kXm&2)$92f*<Ll8u@fIP35KyWp6!nDh6)>l~{&fB&08
zUHfs~-~W^6&jOFCJGNbq{rg`7?2^C#g9{=H{{B}i`ujh>%)D}IWl~LC%~x>v+P3}u
zuiMet+1uUTJ)v8wcP6-0{rf*2Y<t+0#3|8JqNc=5NuBcdza!Wkc{6fm<j(l}f7Q&G
zSrN1D&HDS_e@@_>zyE`wuJ|+8a{k}{c7cEYUkdyC-#=O;`|tmvs$yt4G!a~L@1OYh
ze-7A&XVYA#|NVbr`jhFgGyncqoc;H|&g^h-%8Q+oI45-u2RO_@e*gR5bv}q@O?sau
zoh_TKTBK5xTl4q7Q=2DfB~)iu=k)Hs|7Z8efO=z4Ux3s@aL$~+|MTbk{m(b=?|+W@
zvhx>%%}R)u0msqb|DS9A{-52wyzj`wzyGViE=!!1JnQ<bvN?bMFP;DQe|o{+|Er6<
z+G;!Jb_e&Q_E%5&`~U2WyEFd&H<&Gk<i_XIB<3xe_xFFz{J;O_)wN9d`(I|>-~WX*
zr@&$N_y6K~fB#p{nGUu+U^=!t-}u`WK=wE!@wZRIv&SK~q4r;0c{)jZ9GE0f_Be2`
zu%Pd85GU!rHP~(jOu9g^LditQP|--qSSepMS2a(yKs86TRHaO%T%|&#Ql(0zTBSy%
zR;5lwQB_G*Sye?<RaH$@T~$L>Q&me<TUAF@S5;3{U)4a>P}NA)Sk*+;RMkw?T-8F=
zQq@Y;TGd9?R@F|`Ue!U>QPoM+S=B|=Rn<+^Qqf#7Rw+d>RWVI5T~Sw2M=?t=TQOfz
zSt(0NNhw=NTSZ4jS4B@nU&TPhP{l~aSj9xeRLxAyT+KqwQq4-uTFpkyR?SW=LMc=!
zTq#T`QYlI)Mk!h;QOQ)vM#)pjL&;UiP03fuPbomjU&%$uR>@k)PRUZqO37WxOG(j5
z$w}Es#Yxpk%}L!!!%5Rg%Sqcw$4S>o&q?3Oz{$|b$jR8r#L3jj%*ouz!pYLf%E{Wv
z#>v*n&dJ`%!O77{QB6rrSxrSvRZUGzT}?wxQ%y@vTTMqzS4~e%U(G<xP|ZlqSj|Mu
zQrSw`M%h-`PT5}BT-i+7RM|w?SlLC{RoPwHP1!-&QQ2A9N!dr)SJ_WlMOjr@O<7%8
zLs?T<OIcglNZC-?Kv`c|Pgz%4N7+KzTDeBCTCr5IM6ph>R<TO4Qn5&}OtDzeL)lZ=
zTiHvwLa|&iL@7`ySSd(JQBhe@MX^vZNHJK^Ptjj7Ofg(BN-<i|OVL{~Rmn}!T`@y3
zQ_)n#OvPNqLd8<WO2t~mM#WY|P0?M|L)BB&OVwM|N7Yx=Pt{*FKs8V`NHthBL^V`3
zOf_6JLN!t~N;O(FMm1J7PBmUNK{Zh|Ni|tDMKx75O*LILLp4)1OEp_nQK?j^OsPPr
zP^n0%M5$b<Sjk7pTPa^j(M8!s#YJtQ>cVA;<}Ri#7A|Hk%N3Jc)+?@6Oms<bNpeke
zO>j+ijdxXYS9VWYl(;B)k^PbsZ^eZ=3oTueT{bADxExl@_SmSZw9v{W)g{ICh@!)C
z<%J6sRb6ac3>L0Xv~|&2nC6n|n(mtBs^YHd?z%YDTWNJ|u#(FnMKu?D7dscXg{})z
z7OA;AEJ^cLUR@Y*&Nydh-cGILYmV0)RTiqd=q}7~NnMogt>Lm#(ZR)VVWvyA%SOc<
zmn@f@g=ve_-7~zMmN+fX^iKD8bjfvbU#Q`(<*w<T<B{c^?VaJD>94k0b+!6xmDP2@
zHyn)*9Ld#mF<NN6FyAH5Ws_ooOPP!3!a|oKmo18$6-!)7U3?Z6yLd13TA1aU?V977
z>ze6W;Cf2&nBqyrLRV$C+=V9;^IY>?GhB-n7A!ofcw8}mQN|*3_xFk>?iTJp72hhF
zx_?y6UX;G5Y>}CJ-XcqPZTAm~R_<REa~J(k{HmC<sASP6MICoNcWZY8_g9L>?uPD0
z?!OejE51|IcQ05}zUZ~0u6yaC;zgeozbO_idZV~PS;e!|BVdWgl9kFu9{x+zJl&R5
zdAKgA^!Tk*>rvscNO_gA-;!m@o=d7dyq7pHsq@J9(DeMP<g&zP$zIi54^_`Rk1~&P
zk0r|glxjRmJboz^cq~^|_tf$%_E7TF@GSILs;um}TKSKXqUS>8#mbf5`&Cb?7J9oc
zKckxCUFPk-Jl}h#YPt6g)jg_*RS&8v`c!#uR^6&v<6YprP4$rKN!3#C-KtwuOT4$M
zR(S7Hby;5Q9k@Kt+hcjH_Yu`P?-Q!d%a5s^Qmyvhr@Be?fNGKVQPo`U<ElQ(J(qhg
z_ge0|yuv@nUw5_M>P4EXG|g6L`xpBw2I#Ebpt(+SrKa}kT>tf&OEs(gi~Otn|7jSl
zUZbhMda-7i{}N5()qgc={R{jn{qy}bRxi|Crm4Alt!BA@iT?`C8voUr%QXxA>-<ao
z^Zc{?O;?+&-l%C6q7ve<-Xz3#y=BNp-4D87b-(GVhq$aa2#Hwlvp#ISZHU`?!w~QF
zp6lJ$ztYtTd9CZe-af=EL@`7u<e#oeWbk_Z5WSE$x<(=Qj5R~P>so}Ehv<g9*ZraE
zy8flEPRLJP(~!5i${~L1)k0K5e(4&AXoT2=*oA!2wGIhf|3~+o?q6N!^`CTq>jtd<
ztQ)dEbiH=SGviyvHe1Rf?6=%EerjAAal^PW;*RlE<MN1`#x)VjkuF<a89Q#dV(he~
zHX?leOJnyfwp%J9ZX1_GTr<98{J{9K@kQgi#*dAk7*|C&Y}s%1(D;J!BV+F^YLU;4
zRU^+EJ8!ve{K8l<vM!=JLMhT`i`SN-2-hucTZ$v};!1ZOvf6E>9e3EOaA(oZomP9S
zwBq(!<?qyuJ7~4tYMYgQT)|F*IGs4dxUE(PtoB*$u+og%Wo3E5=73?ccJduZljKK^
zPaSoW^^)&9>LkB#G)jKyXm#L;qj9qNft!v7$+sLIJ3e%@J#g1iKl!$!Y4QWd=Z^Or
zpE;TxuscwbUYVYKv?_g}=XZ~a^wRVn9(hM|j+UqY_Q*Z@*Q4y{GS7merAL=~{_`kF
z|K?GY{?ns2{f|fC(M6tR>BZ?wJQsUbr~mROIjWp<#b5LEMSqnXr5x?kH~g>qpYvDD
z(LJr2bKbu$TO;R^|7Cx*9QB-={@47k`|F%mKW$uaILx5nK$sC|-~WY!VTJ{V!b~sh
z4>P!6a>23qWQ<esaq!J@M`IkXI9xdu<4|mT;Yi}q#GvaJ{0}EO7i(8+Pu-DfbSJ4Q
zx$1oOx$KDQ@an&L`46;QoLnkg%3X?Gi(Kv8ZQbqNZQLss>3C{;>UxGO30@MoMA=8l
zN5v;-xl%x-(n7r|CH2S}rD~-kR%JVDmFm*#lvM9&yO=Djba8N3^)X+q<5J^N<x=h9
z=w7u*&r{t;%}2whdYwav{Q=Vg^@Y9*Jr?>cT&Gy#TIyP{uyUc3`x@oY<thQn0gLq(
z>1jl2EUb0es#vu!e92i=%hjp@(d(T<BG)^HIE6&5_uXPvQ0D6F{#&tbQSG9dMUhMN
zJq<jgmaJ7ir>g05Ue$WF?P|N#OZArNxrM~7U#=Iweu<uYh--*T$O=9GEw7FJw$$#d
z+IiHfZs#k<<(~Sd^-dd{*32<4I1=V`Mc2jJMSr2`!oY>q3zZf}FNs{P8EG7+m{E0f
zv0|M|rE9rsg{ziN)N(x+eHUjJvxPwm6<w8Fm0iy$R=L(LJgw;NuDbZIqN}@``yWM>
z#cGQ^++Ez&7q3(H_g}9Zza(+V2IZI~MxKVAaZ6&Cn0gv}ns_EGG4P3AuJ3b2^`hz}
z)wtysR1JM}eRO={m+Sdx`@}9c@=*`iq-nqUvZ_vi!|KhN8Ufk?S^=5?Y5~rxSL<c0
z_X=63=Mj>+K56|bJ?{|D5TB4WdTaF(*00oCua~wyaeeaol=T5y%;U5o-x$9$erx>R
zSUXaAmr0!BF4H)(xWFyu$!{DT54?7K>-f&mBH7`9S@H_cm7dBON*ND*3{Pw2Xy@qU
z=;hq<zwNJ^V|3c=f<=L4f%%1<sTZ>^WdF<4d0^mTzA$8A@WL9`YFAJ9e~KE5%{?tV
z%{(nVH!5#ZPF|9<ByoAdauc7cs>VJ^%eQD61Z>sR5Aay+wpuqpFTj0u{`w7iIqS35
z=dRCNuM_#vIB1K0<OgHzXuU|?NUJ!@IEy&TWY+^O2W*mUldY4jlHCrh@>D#w+OzJc
z@#(w%`Z;&}b<SE9oQ`oR-j$kI>Efc|x=k^3p{lEzYuG~NMM{fmUF%#`7J0dER=%cs
zUDYsPqn=@;LF93(V^$Uy3|-V+72S*?mnfc9RB}^Wv`ERv-P?Vkl9gxb63^AXA)k!x
zlGk{uWGEjqIej$D<%-FjR~ecMHC)3NrY*Ulx=qtG(m2v2(#XZt#a>0*HFBYrtEQ`}
zn~Iy(;&Y0Nm9!V@F1GM7^)dG`^GRNA6yUYmI?mW7YN3v+`XY5VHMcFwmOe47v=(kx
z)L5kHrs3x6?&rQ$+1fLGiH&FKaw{Ke9~+;v<;DTqHN98+g}5JBs;KK4y-;(}5+(h`
z+myE}-&9RseoJ+y<_^u>n!7Yj0zMlDgly9D4++_F!pbI2W7kP5^<7>EJP&vrSnH{p
zp?Xa1nCWSQ9M>zmQ?(byEZm`}wMfg&aB=4HtmS5rp<6U}nYg&Q=)3B<#w|2(O<1VC
z$at}xPxf+KAA6sG)&8qZ1N>I|t_}?GK5#6|y3E~0$IaT!%+1ivz|Gvv)J@OL#!cT%
z+s(?&(#^t6*UfN|iJR^sy+y`u`ipGcjND8Yn=cM=k8%%lw_F_KzEmmF-QPXPJ=8tW
zJ;FWOJ-|KKJ={Ik-D<J*Vw1%Ol=mu^E%Ef+r)=wK?-}kH<XO3-Zb|8qqssf09X*{r
zk0^V2?otl(jPSJc^!HR*x<fhCvwVr0XZ4Z*&p^+e%6^_co&`&MJ%c?DDm!>8E)DTK
ztnA_G>RG&GkFtyBF=cnpnkC+z6-!E%<SudYJfvK^L}}@6W#y%L%U`R$QVsNZtNLE`
ziRyFJcd9`?CCe+8KU96HTDttD>M2cMpL3cHKF?Ggef)gfeVly?mp@W<^YQix@p-Iz
zN7dEmuIhbN51*XnUOu-~AE*{AuUsDN<L~oAHPokgxsT61RZpM%<>kv=e4KpVs0R4N
ztd3oMQgg578O`w3k*oJ>+5~t7SOj<mI0m={m<8<9Jfi6ua6!{OAbPcJK*;L2)yFgs
zYgz{cuHK{R5pY`5A>gd0cYt|-Q-FQIK~3j?<C-Tl?E+i^tO7z;C$COiZ5ePtGkEn;
z&4|_KHIM1Vg>2E=sTUrS6tZ0}C?qB%F=U@!Y)C>#`Fh0-2lXOCcIcI?uUN0N;fUT*
zy~_1bA&2$CLQ+F^>s7B038`9tLT``W0lmnOl#so8@gaxwPU<Z&DPDhEFD)cEWWU}v
zy|VSuAzSt8)~jyVrMFoxIV66|FXN0Yo{_6e+#_8g7n(RkE;aFv{Av8p_^)wjh+E_e
zle8_XO}-iX#iegqW8xEO7ik^2*u)}orAhP_`^dE>5nH|+FE??D{9*jtc#%ocmc%X2
zk&cnRk>Oj+cBO3bh>Y7}6Im8z8~MlBE7CP`nTb_o<QB`wFUDVu&so{*vW;_yyJ-~?
zcgM;u?y8kboL8K4qTw!!T^@0ltU}`)<2>VTS^aUmZ*|$~l+|^si&pM&cdhhxY3*{3
z3y%wkGv4JI=M?9#%Qwzs*FCEXR@ba<Se>!DZDk*K+RAB{TU=ONP~2H7pE&DX!Eyd^
z-f{Z7u2==e{c`-~7<gd0(|gAsjy}o0$*#$Zo&1x(IDU5g=(yC$Ir*>SCr7vB-;R#S
z-yQ!sE^_iau*}IT`GccN@>fUgUG~Y|$qSv_lRc9ClAV$jl^v3QI{F;&OkUz-nqiQk
zcWjU64o{6^n>@8L)G~H^s%LEV-0rD)Y?r6mF`W#ZW5yY}8Cu6Sc<N>7XKeN~$uK##
z(Q})pcE);7!wk&~<6{~bTReAq8Xhys2spOR)8LqS&O3j{)35z4P8;Uf=Gf)fo;JyO
z>2H?v(BCG<<@8&B<DB>YMmewi-}sy6yzqbIf8XEk^m(hN{^qCe`9JZ0>~DSgfxq)<
z%N*C!4yR3z*_^h>u{>>m+A8OnzjeWL|MOw?7fysZTyQTq6J}rFTyQ$f`hrt|U4dhP
zO@Uj%*|3vgt_8=#Tnf&GoeHzg@hG?u=1^c;V0*#i%B7eqF>b|IV=l*BjJXiwQG7ne
zv)J>B`<1gX=VDxoy^7t7&%{Juw<(Ldej@Q$;_1Ybi4oV2C!R`-ydHi%=DJSBzSRAx
zx)ldf_oN<7-J5D#rhDsk#@mdP$~PIwl}VLq_fjh_XJ5%qtxBm%tGbkZEca-x!~MwW
z=<2BI<GCg^TMA-p3Lk7P_*1Y-v3#Muo1I&Nd%XK{r8xIxN_LB*Jx?m@EIpyDwlvZ+
z##4K#*3#q3noFZRJ(j93)mW;u;)81K@{g)vJ~hh~S5z<e2}oUiO7FB@dPqiy`iAu;
zevtu@>rDJ3A6P}ix$JV@6_6a5yuvByfO&@bF|&*h{+GfohB@B9Rp{ZeQ!#PjdBqEg
zCX15Y)7@7prMjoMuTV;JPjYu$?6f%1eU*~^Vu!_Po`y^9mL_`|ERFX(rR=cOY^naz
z)5<nW6Fqg8o>h+ZJg0m{Il(i@Gu1Q2GtTq8ve8n<rA|wYms%_}UuwEE+UK9D>WWw&
z<rOhLYAY71MfpVfd{zCTs<Gme>UY&|s-IQ=sQy*`rTRlP!bfw(Z`C-TMQU0reyXah
z@C^v}@e8=BnYlV+^=-|Z)#<CVR)+-K)V!}*xcZvrEzLWc_cU*47OcLmc}erKrhh>8
z>cD`2fGe7JHFH-Nt<GDWwmLZAqUKdStqoW7Zt7joGuUuh?~<PWhHH8j8*b@khUA2p
zY%tw$QSZ8*@dk|z<{Pp@&gf}x2nyJ1azoE-!+E`|kaK!Q8@8C_Z7JLm7#SLQ#AK7n
z0h6%ELncLAPMDNzIb)K!<*><ill>;yTh5xCHaTdr$7HL?3#-j0QIWe$q9em2H<%nV
z*<q5urF6?SlanS9k!4%Xn*>FMMD8=$X_6Zf9J$-%l*u`hqbA2qHkx?tdTiyo>y6cG
ztAw~GR_?nJ<Kp82c0IF-iF;+`v+JqVbE}6|QE^|aK3jdTij0emi;Fv}_tq*pE;91H
z)g!A<Rv)eWc73(-+_lZgd)GUwmsabXqLbs2Ba_!UZFE}W6n-E$IW~EvQ+V<Qr|1Kr
z$sx&`ox+m0I)xqB<P?+~cOd3K#DSRP?M|zmwm8KeSmhLTAo4&&a>#+G<n>NFoScu@
z9XsM_k#Wk?>6pzi+l*tLXFd0M+Gkj19QL%&IplfT(<;OEm|ey}&*PqFJokFqWE}Oh
zI_7%pr003h{hlX0Esj}dobz-%=5oy8*a1)HoKOCaISx5r{D1npo&M?{aQcV8TTb9<
zy#m)9@6#Xszx&%CbIJMU?|b^QzvpSE9RJfkr`=Cq5A(WkGwe#3SHZO~?+cy<H^MwF
z_+0QQxE1DIa5?O1nCAuWD}Kc{VtlUn7T=8VDZU=#U3@LZzRa%dQ0kFX{ac4q^(yo$
z^llkcyvs<d)VQ}Oe_?)Hji-yDtMlS?PuHc+OI?=gu6UqXzPfx%Qe1Le(5{_M4jC6b
zfBE}fuw1xH(R7i^;tR@Et1DMqEp%JDSnZ+aZN0n@w_`_B)2qB(9NaD{nk~w3&vcLX
zsoWA1>68(Fz&XP)Blxtpi;=5|tFh~DMN?Ntw@Zo^i=5od7g;WHU!3Kh?Y>&cb7_X>
zMdf6lC2EO2Nj?cacl7jD=&y(f2oH!12n(oL{YW##Co~{Gq#&d)q<YH*lbS8HTT<e_
zS;a;M?+V$Ka3DT8@qlZFOU6Y{k7MpRz6ECzPvkDn_i=G{vtH!lwoxh9y};dj@p`4T
zO8M>^lr|}?Q7UpTbkB3oabKt8yEt@dv8T_{0?%v8H<fQFXL%NRdN0lQysCUzInOg}
zY4B3NrJ0^No`FlRDBo7TuAJ*x=vm@<N%@v?wx{C?;}w}cg+3N5HmI#sEArW*wp4A6
zn(GRO6&XIu)Y5#`s%=zD^|4*CNo}>7`HFRFrYlN(vVFFyZC0~iQQ(v3vq~-3XNB5w
zwH%);pJJbUpL8F!HS5*fRzwHru1N~`pcxhLLi35H;+ij-k2Q7H#0I?8ObAF0&|4E1
z@KG}{KzU6?$al@Bnks8l*F4vJr};_qo91WDH=6G?wby8_d8wHi@LKbg=2y*_fM=R1
z0a|O~12opug*?%7*iajyzUGl$QHcMB@(`~L5B2WpJ=QA@xvS^5p)8~%#BRe=z0#1%
z5bF)D8>&J)Hq?X!ZKw{h*`T!5V(Wdq2YS96yf-}4yKWK}xy<^S$x9QBttwknA`Q1b
zH!<Ft92p<^!Q_F-V-vlt>5*?uo|+^?W<+XjeP!~(M1QOG)|)2pOdgrsHL==y+2p;+
zeUnQjmRr*zpO}0!d1!Lg<d(@r6ZNgBkv3cJncOx>jJ#rEu=R~eQl$3QJ0>?wG`E^;
zeQjd2)qJbz*3`JaR;9asS*^8RXuZz5W><P#@~*^P5xZ7dFSm}~RlcieSLCjQT`R0t
zTd%jS-u296qxD&*v|Sl-o2-9WEwN78wbD9fSKO|&xXic>)|;*WSpBpr-W9d$w^jJA
zs$Gk$|5;_lh3#5nUAe1b*JA6X*59oTI_-DLNKQ*W>2$#9l+!V%eNJbb_BtJLN=;5l
zPEJ1LblfQ+IXyZ3z;36s14o^9IURONOg`bX$0;fKv{TA~>|I$0u6lZ9cxHHKJoLQo
zdDruj=L66Co{v56c)DfW_Vmf{Id;X<J;UqRBTtWvYo0ef?|I(vyzJ?JEcn<h&p-a&
zIST{+`7aJw8W3~ZGbiHoU;mKPzy0G*FAG=_uqYtx^ooF})5`;Vb3AgQPkZI~<iwti
zKfN;GVOYS0;0q7J?uP|lcocR!%>TljuqR=6!$L0j6+8>`yYMvZURc<LyD@>qw__f}
z+>d!27H}n?*zd}{m|HQAVjjl$7YALr6XSoyzaa2R@D+zL!&`~h<F21gJeGPq^+alV
zrP-Z~O3OR%Gpz1h%f6bedC%$o$=p-9OY*lC6hH8F@pJKaF>`fw+pJXVUgBQvS>ajc
zS?XEp<FR6!TDeb|&vv!60R1(Jq0jX`n`B1j#C<Z!jw?Lin^AP&iDy7T_=TY2$1x_i
zGApg`#8g`^ysT)u$j$AFV!3<3;!^iA_X_ta&q~jzrFWF8J?|>-Q1e-_Q_X8dg-?}F
zjZdXdtxvU&-wN*)zALf<(!sYKX9T>^`=M#H=9S({J@ruKP?b=%P>oR4(C`gfp_-v#
z8$vhaMSeB;Vv-x_xHTs-J2F2qE7E@JPU~&fd2w5<cUc$2?Xb>`%a7Y`UAOC;Q^|qz
zP8Xa?50o7!KH!%TmhsdxAR{E>nP+H5U`9}ee@1XdK+YEHz#RV^znte`fdx-up2nEo
zGOWm|)VdeoVz;Q$J#J~t(%7W|D{=x}>uHBZY>3=Y6j>Nq5Lp;k6t~+tJR_(e&}EOJ
zx$9L$`$b!ns@#JX2d=2|F<GOs`=V3Dfgl$P*R4wTl<zCYFRk%3U9-o!IPQ{D$d%yY
zV3%|kOV?|P?rtHAmAn+aYCY>bcd04)D*NtMQ}hj45xSxv;HPGOKyE-@fL^FhXw-)2
z4R7^yL*M8rg?=+}-dYk_8mYEhb$4;3%hrgD=bk}1!8xk}LW<8No=>#6l~J{=V6~!^
zYlzDY#p{Zpi>uwYEA3F)rnFNjYH{Myw589LA1Oakey03bS<UN#a?;X=%F13UUQd-@
zD64wCR8C%cQZ07HVYPi~s=mk6j;QTbJEeA3?S$GvHFe+PY8t+W)Q+m{Q9Gb^MorUK
z%QtStezntTD!yvIF)QL%gs+HLu|{jD)@rRKTFbQlY5vi)U$a(gmDVp!>or9IE3{T>
zE!X<1`CGFvV6oOhEt@q?YZhs()3RIRxW;*n?Hc3I<PAol@f+Uh>4$#MOW9x&`cW@&
zgL!Du2Gh__dh4~m=*4X?3^fRSulHHcEVMkbEYf?c$5!{PKTQ6Z{4=SDTx=S+wI*_@
zY0%cXNdK)>kt$K4TNR^znN&t<@BV4>-DJ7xZxgqz)sf3gm7*4zE;Ln+`fE}f>9^Hu
z>k8A5txHT#TVJw1Ze134*!r^dUh50i=d4dyo9(`6eac#6_aW;m)(5Q5TJN(~-+k5E
ze0O=A*6#DxSDg-8m&EDqK5A{UyEN{I^+{{v-N&pAcb~D=-F?$Z@!%b&D^4{Bt~pg5
zxb1YyDKmM$^$n-W1GNXTk}o@5cY5a;bL^|<8_$qqpFLlBe)9b0`O@>P=L^rUW04uJ
zJ)<%{dVcVH?-_Y4>ev_0)YECFlTWV;*boq!voRq1^qPS5)2jov24tSz91xPTEnscH
zrhqL0>jSb*XPl0>@H*^6*sHMjVbK>}gnbHo7xp>qZP?4Ok6}?4zJN}eiis!=zY<m)
zc_p+syg2mAg~X)m`%+G(THgAQ@iD{pPIjfuo$J|lcQUJPWb58LlN(p<d_T7ObgpTQ
z!GopwHVZ>tYTS1zy;2VIR*eeZnsYkL#mmjp&BIOI%OdoyQ@BfnOQegnYx>fJ6~zG?
zv|QJ?tf`2La@nhxywKat$L*$Kt$WPkjHR!YvzKaky-_ysO<Iw-;=G!kudeSoHErJu
zYC699z9j)}Ysvz)Xl>Nmq_tUVt5#{iH@&ZVX&bCUGdEa<W^BmXkiH>$t47o+)5xvr
zQJPU|Q4w3CwpPWhG_8)iZe6*vChnSbWt`P+>)p1yA2>a7%1(ahbl>ToQ|z&yp79y6
z8F3lkJ%4!So{rAg6|f_q;B<J-&VY!Vu$-8T?_poVzJ+ZMco7p>{5<Aj;-$nNVW(1~
zU3}dXJ$5VAxhJnM^vy}OU1;O#=T;t28)vuhmZJNj+ln5G_9$t2eNcX<tnKwy`MvT-
zWlgWVrMXK@ea(E0eN$JYuQ2l6sb%7uv7#ctW6ch&U0U0<c577z*oJ=B%h~W#&pPy%
zo=xZvz3dI!v{sw0GhJ`G##A>-CrT?yJ8G?I;?{(%_Ph0>9Cq97R*YAQSB`(|^wjCO
zQ(kgza$VdrrzcK-Jrj>59Q*CL*efApiPu7}#Ed_lzdRRtMdj=X_~#juvo|0*CoX4S
zKx9sA&fl=#VZXxug#8SQxnNxJDdTg7{hgcHXLFTm?H494Huu%>%3P7XqAI{=jrW?o
z4KXgZuKsR&mGYPBdVNyPU9m^2Iv^<{)+J@3=c1&=N*+$T^ONIT>|E_#1Kk4L_9-cQ
zd{!=8s^^ur;*#2BwJT}`D=d61eJ`q6`PKyN)$(2QN6#)af5UIRq^<f<8%zzNHku}H
zb>Ho}TP5CQ_X{VbgUh^@dL?JX=j;y%F8CJ~Rh)c1zIu7S!$QY}UW)=3UsWqyu}{k|
z>V|bevhu;W3n|wf%TgXXEi~{dTB`3=8xXMOuby#~W~@n+QIu-D%E9GcDH#bluJ_j{
z?pOM%Z0Pkx*~rVz_lDYaHCtb6UmM?RYGo@*S11PV*HQ_r3s4JG3RDhM4J_DDw81gd
zA=Ey!aKmO((<qB5v#3p`)=}nBTTHE@ETe8&-?aALtr4#luO5Hfx-j{bQ&I9urvm}W
z$5M_Z<*e{Z%qcpZnz1N+VR&@$%b3%tUoyUC=-+d24RZ5cbVt!=k%^a?SH;ppN<Wmp
zD}Pf?TYOOIfRd_*sh6>ribwk5%*EwP?R{^mRWEh${j0oC<)88`wX&rpOMfZXt+4X4
z@Tyt*Q~9^@Vil!j=3a`+{wOb3aq_KQx<tj&OL^HMm8B|GOC5bnmpc0{Q>j>?wDO(W
zL$&*AZ`EF?X$QLazEpdorXKiO&DGb-*TeUb+Fi9LYW}|O)ieU1s%Zv#`#x8TT60cI
zEAWn*kFQRkudk=CpYJoZ+iI`W+<ePdM6bE0_E_zKn!9h+iUV2)wG>yL)>^E8M$0Jh
zyw*`I!@%QOC$tjQRBkw>r5hNwrg(#EX!x4gHOI6LX}N{gZMdN26uMCVq*ln9e|kr>
z&T7T4NnB$P=p1Sm=n{HSYmvTwphu`_ph=){pnK>gEzeNBz{6Tq8!9$bZ-`k_w!tQ9
znf?m>Rr+3`0ioMX*Xb|Sw~N|ps<hER)Hig4{x;L)`l=iKLRaethOX7m*jlo|Cv=Ve
zdi|C9>Kna7?V}2}F44D*D%z^NQDdV+l;Xzxt!f*0njSLMjt|-G6y+YJ6Mw|iFY2!K
zE>pKC&nTCu9j3=jPny25K5qKZ+BM22Dj@2h=^g8%rjAkftWTIeu-<E$wN*1dZ1--{
zJ*M7Kp}X_8dPVIw^^ZDi>JfFov~sI&ly1CM{C(?)-TO=<cRNRwZH?OPySrqoQM_6F
zW9#x{llbS>7V)p0URqZs8^jyOzp{?o{o4AYwN-po@>}aq*3YcfQv7#UCtJopvHolw
zxLY;FJia9PgLUj~>-ZPekE{*jpIX1O);?IAT#>97|K2)rcUf}M?&RG8yY=H$QdW6=
zbJ9Hc&S|CBC#Nq?>IZcWessz|rkwJ@Nj)X+n8v}KUOC6~4l1RjXMA^B?Uj2>>tJ2-
zd#BG%X&I%-Z=BvbWn|PQE2h*We|1{#wZUtvS9;DKuj12r8Fi;~Gq!t`oKDMG<CT+9
zcx<;<Rz`M4&FLLp7XwmqOyi4=?efab+2oa)lXWaBXRX&puXSEqyz(=Wb22j&&m0ce
z=9O_QGpG1iPR?ep>|+@@hXRz(lpIqzQ-1n*KzPByfOX*)0t#}fPUq!>7Mu+@8Bmf_
zc6w=e#s!Tt=@*J}P6TM4Ssbo<=1jo(fMWrbr;Bq+Pv_<=2@fkc7m%M*m~%RyH0M;n
z(SRcXAqAHLmWRKNi7ZIGur@sT!s_s>3vXglE<_cq2~WGQGCa2URZPwW&`D%*#W4jj
z#nA-`#jC<23X(3QUdX<1JMnU2;+6O-F<0WQ#9sLnb0zUzO!O6}vJWxuW8#b7#(a#q
zlXxTXR^rvfYl$}#uP2&Rq+U0#Fsm@F$f^96kz08tHLL1Yc6L=lwOP%Ie7E~6^H=5D
zJzQ1f=z3Q%*iGF-!$Zv@d$Fd6jhD5T>aq`NfxZF0$!j+12Sx=&rR=te|KX&OqM7o`
z>5tQIr+r>!$M$*^WbF4UJ$5;uEJx=|Y(egY#A4^Nq+*ZzPOhm7(-!(ITA`w`Omo>s
zwP4>M-w<E(z{^@!v@|zv(hmv^j<SvaV(si2@8aSbu;`v*xLcT8h+C*z{$d@ElS-$R
zv^@?h<t#p;l)Lzp(lMnIN?IOAmCh&~SIS%L?B(O-<+Vv=y~=hK53e06mdhNywyNkY
zbNAY)vO&ewYnzIjSE#Rp*Jc&1Wh+%|z08*dc&$^}qT=M`;-$ZAm5SN2)hcUL{JlKA
z{Jhqx_<GrU*?D<;nJzP4X0ps;nc*^{Wri!YRwn!YRr{tE=UeFeN$scFZ?%7FIlgKu
zf2n;|%kurMrm=FNdbF?V%0FtUzA3(6)gpaORvN90@{RB{URmIq;hW?e=KDh}(Kp;T
z)3?a?s#cos7quAQc;5tHy_I>s`M$Zn>Au;%vA!081}n{1nyxfkslQTlW$v2WS}uV$
zfp&q;fzP!Z12^jjhq?vc(0ZWd6nJ0jj@A>cXIj>Q_JOW}p`j18Yy&+4Z)xSPDOlqW
z7!qm~cwOtB)-|o0T6eX!=(`6#(t51*RLe3jXN}QD<Bi#C^427W9?(w=O$yzne@tIz
zV??O_M$?U_Oi$<^(zn>SQ{Q~!Y5hI=aiI@Q_v<HwhKJg0Jga|DKPq&W{&xKx`q81s
z_0Q?YhVIkftDhR05*ij76B-|SN?&iI<;ElWk)d1l&*&f4KdOIH-(aKlMzf8lO%1n2
zN99N5MX7H~j?&zA*Yu|8HPaWSaZzDWYTJyq-8S`&kBWM1s<f>jDmUuB={eJyt=iji
zqMn+bHBF34je26LyzRPaT2w;R8PnRW_VLe6ubO5@-7tM-niZw8?W=Wo)Me9{sPw3$
zs5_>YOfQ%|G7X8!h>D1^i+^Am85J6p5)~g68+FArGwP!0J=0sJ->tt{>u%HAcHVTQ
zP2q0G_=4T*ZT?uVvH9!d62HM_vyF57LYqxC8*N<Ue^@)jd&C#-c8gzUv&6<Leyhz|
zn{75h@d5FxZC2T&?_OcE$i_21ZMS>;ZvCIu8N2s7|FU+9_m5xb>>ckD|J!<t%|EB5
zHvg>s;+NShwkg`3yE`~Of44=7=Ru=`OPsem?{VJXY?5-&*)V01v(>@H&RQwPDXW~#
zQp{6UJ6jyw;k?h;D8=rePRdH>rOpSO*Ez3uUgo^Zd86}g=grQx2X#{pcp0SVrR;a!
z=Df+-?4a?%<<3<ZTb)f));gOUT;uF<Q1!UeLH!i%l&fAlowqozaCSN9dhmi*#j%54
zXS_6yU-qiV2#mkzRh&_GOyzjhv7(F{UWdHSdmZ*V=T(+*$!ocd;&H9xH@!}IRc1U4
zD9=$oe%<SuS9QjffQp=}0ZPY@c^&sU;&syNsMjs8(u~TS@{F2{>SHIoG>>2L(mkVg
z{H&MhnHvEXX9_cFa<+!w4Y(6<FTmi8{+ZhWwK>*jRCASb4bLd&UJJMx@Hjv_S2I`d
z%&maG)>SzV0<H(xozcm?A5fB^n0wmG{*1{Pm0a618o64z>bYvUR%hyR9tBkA=;m6U
zF+Y=7kW{cGJi8#Hpx{D$L0ZAK@RWkM0;4mj1?3kuho=-L6r>j<7jFvR7+!WEvmpOM
zRzc;34dLs<Q;T<oCl_oFFTId*C9OF9N_O$rnC~&!*E5Q9um6bo5|eZNTTEtgPI2ay
z&oSx6S;ekpJHlPcvaWlTJxDCL4!R%eapL_%x3as578MT@A0^&P%)9Phb~e@e)`e7?
zTUNI&rk+o|lxkUVF4gefuZ;Z4pBX<gzGviB7F6EO&aKL+^1APR|9tMb+>5#9HHp=0
z@-O6i-Zy%%I^VL!q9(p(d%@oVSJ$F7+iiA*r!UM{sOxc7DcCE}E68h+da<u(V9A;n
zT4ifqY89{X3cR477MdP<Uf*`3`8Km{<x#~^FHNhWDx->`N~0>GN}^1*?Y1e53W+b-
zUAnt$cUXLQ{4SflHlgu5Z1&jfwDCS@nc{cwkhAYWgX6Usx4m)-^m3mB=;s>bJ_~pn
z@H}8o`0nsuF+XE+i}Q*vr#jwobB$PPxzb_dJ{yZ|mfIrZBjOJ`KS|81TAT0gni1->
zu_mfIYQN0^8>^H%UUeCJ!#!Lh+^koY_%2p|rR5!18)dcapiNY~b;^r?mjT&Ve#dy1
z{VVWvwOP4Dz0}tyuzbyHt<2CX`j_-C>t}^t)VJAYzs+`=Vzg59D^um@x~M}omAeny
z9C234RLuMn^EA=^*45N2slPKa7w%K^4RqWVaL~&&(k*b2zK5Pi@#3Pz1|EhU=atSW
z?NkZz+M}{tWtYlc729QHzN^%isjpXeUTL?o*4JreweM>6<?8Fyt9+IHR;n*mSMpn<
zUg^75y~elBccc0S^%d$BzU97(ehw=gSJthmTJu5co0jt0;J|>uw_2aHYSx4W`UQT}
z3JeShtX%U&t9Ffl;7_ffK*hD8f$y|FYkk*xuk}VtWv%MkA6j3vl-8QBaoboFnjM-K
z>a(#h)Mev!eb0?Kp;z@iHWq~XZgkz48|u9AhJJpi)3$e}s?l#v-<zsLYerww_ulx%
z^n<C(Hnr&2rW(<%+tj1g_MEb*-F?(Xbx(ABe0)s&37gY4%6nqt<KmO!&pMy9NsK>c
zbHt`*cT#-a?&CHpdmK}aI@_h#r`V>Paz5#N%-K05`e4|>6V3_okp}}0o^d|z?2uxU
z;*@gQ+2pwCan;QGUiZB2dMRgG9ydO2eq1H<O~CsAqg<CWZf6X0KLorEFv)!z;CRM3
z_f>$ynRfw21^ETX!jFbKpE(k~KfLzBfpF!ERTl~h>MrCK6c+3Y&nq|>eklBSxYEVK
zD~H4LuM}MQ8<TS-_ew!=(Ulj8`Nhu?pC|g1Syx<3b-ra);dJY7#=i`wJB5|bcm8DL
zSFOvps@YMnv%vnLx2utdu}7$v<FZZa;eo}WTG8f_De<ZCMsa6sTv8r-J@8Vw=;LbQ
zu~}W!&vm7WpZeNgTEDe!>fh2Y2`vrv*j5($(bRpL+cur(^mxrZY4PWr54t__IuWjR
z(YLIq($_V{E!HjCEzT{<EohOsNBQFGN@gAw9u<pA7hh7ksB}f?veGprQ;!QuSCu@L
z?Nf>O+OKk0CC<xp*>ROaDo0hqy&}9Ky`sEamnC|+EIX(Y<CWy)zU+X?F%_p}(OySX
zV!gt=61=>YS^2rI+^VkTXW(b(r|D<yr|q{_-OO)?x{lv*^%Lp`)OV^|`W;m_@iX!Z
zT6s*}bLA2BJ?dN3cdP6A8T)yyRQKDjzE6Fdy8lX3zeDQV)h+x^s%!Xptkn10rG8l5
z+)v9-&+nkR-%6jAd$r>Oa{|rQ?$BPRof^1CJ1%g!c1GY9?S<Nlwe{8-tX-!4M{Be8
zVeRC=723PBb=UsWI;ed}`>6IF?X}ulwKD@_0#gDD0wV*X0}a<|ueDmcR692?EpWf~
zBJKRZtiaXUd4Zd>S81mQ?$h3;t+h5W@QC(G?byKG+8ec#0=H{N1^(5_4pa|I2;88(
zUVDjl;K~EqCTn+U8?B89v|MYx)?)2DeZ8>v`mq}y>nn%phlOvvqaVESss3C2=#97a
zzv-8U#%)a57_jlH{s;Z|jUV+D!*s%)>xXT8q5nz$rGE0pC;IpF@9V$Of2JR@(SKt_
zXiexB{RjG5VQOJf8#TiW!fHdc!(Qv_hE;_|ZmbNwtN&16CG4~QEB#0M8eyto`fIC0
z>q3(@Mr=&nn6Pn$S?IQJrr%9}n<i{qW46-FZ`&fXg=WUlOU<^JeKL*Sw$*I8*-o>y
zW=7Gg&2*!kqAjAsx7kEnM}IcmWVXX>gV}boz->#+zL;(^TV`euZ5ti6ZM~UUwC}c<
zZ2{ZXnSC|2i}v2;5WUgNF<L+RkLhN!kZl!POr!0i|Cz2b`)T^u)GGRisa~{sv`O@0
zGo`S{HipqY+k&>mZHwO)w#{{qWwhg-XEuLqKH5~rTkI)|e_&G{|G~y?&r6$cHpTJh
zY<}2e#$U6^iO-I&i4Wd(!RC|AXPdnEtoVC2wtGtBZ`v5``C?NT|HkI0&1IV#HkWL)
z_7ucFwRz%v#ik_wuFY4Q{P<fo*KJ<d6vb!6*TuiKd1Yg`$7zq{9_u|Od-V65x5<tF
zZgbz}p^f>TcQ$Wr&e~MOSH)koxnuLhrZWDv&2yVyHt%h0_PFdZ-t*h$qK(6zAI?50
zsRzF~KXiWPeBZhJ;3wyc&NrMtIRA2f<eYKvs`Cryx6U`6vk$&<zUCZzu=L<v=X=h6
zDIcBRI~O0k<ow0C<ltB5@6JIfUMcwpf0^ELe&c-G**zsZ<+F2WN?^(bXU~+%gO{Dd
zQYsEUc0TW1cF;fNx$|}BfRqQ$ZYj0#FP$IRTyf4l_|Dlo<+Za%%2VgylsnEpowE*B
zAM{OG<63kuB;|wGJ1?u_%e>!s*&hGr<(i_A`NC_dci{22UcbF`Gu1NvjxY9hJO0dT
zk+=JCi_Gs{E4|G!-+QTNe)L-CZIJoO%Oq1P^Rw4Wug6|?$Nzd6X0Gsl;-#1Q(@Q_|
zwbwVVPhMZVoR4c}F84Oi{OV<We3iG&@uyzDymT^6GmSH!d;Re;%5**Maa=p|hnMeh
zm*XL4mU#Od{}bSJ{71l-fK`FZ1I=?&&Lo^!7x+8CDR)Vr|Czuu-vbs0+UIT$+!DAf
z@M}Q)nea2K1J?#x=PnHV74R{@BG(~zL!e{sr+{sND+AXD+U5G52{^MR(EZHj!00p1
zxnXB)bC(8w3)m6(IbdU;Rj${WzX6_S{sma(n&tisu*nTNW15?EW>etSz(s*q!{g3G
zo=H4&HeBc8$#BI&n~N3~OA0CrN(-)sKMF4{I3Io^d_~~RaE*)F7pn>!F1`q_D^M;x
z9d3QGw!rY>v+(EPcf;?5UkTT|Xm{~m_|xzw;rbUV3d#zug<lSLxp*P`akx_9!|<Ad
z>H_tPx5H0`p9wz~{viBTczJ=|#f#xa7w?BVUbMP+DZKPbMe)Yi!s11-)mPTW78h@c
zRlK?~w&u!`*s?2IWB<jhj#a-}RlFf~TkNXXqT)5N3u7ybm9JJ^*&MqpwzOE~>WbK<
zvDL-PV@rz5i`U04j@=Ynab;bs=GBtx{$-yNL&`$S%C9TlD7)@g_9?OA`uoHWi9uzr
z65k~TmepN<omhEY`9|&as_VgJ0cA=zUM9Xx{FqpM{Z8u5)JLf<w;rb6Pra4uf6KnY
z^_Jf)_glWVZl~H+loj7gwXJxZdN=h(>YGH5TW+^(Dz2w4$@ILlIP*bjab@ZC<(Vro
z7iBKXT$t&8=YICm%%ZA-s=L{y_e|~?-+Pd4e(z59z3jp&|NDOTFXvv#O{%_>yD{Io
zW_|vK{9Oel50q;c7cMMZRJf$j;bH1S$A_zn{9G+PDi_=Mol*~88M5-2w$0kKjo<Zu
z>Zfk}p`X6-m%elKZnNL|N!xar?J?VH_SZ%!;h)VSTjd1BgoU=X2N${gbN=gGbMTMz
zZ|8`Vg)WwvtG(BHTV<~CcFj#Y<C42GF!fCOnOEU2!(WHHU39&uQn)>~rda#xm&CBL
zC#lKR{;u(ERvyV-wtjYgp)12y76#g`&Di)y-*b=qp1OmPDT;@JkKYVZEetOUa1CB$
z?Qurk-tV+}#LDB^MS&-@iv$1Z8-*E$Wo<lUcEIeQ*?zN>ZTrj?+b*+JO;}>9lCacv
zv5V57b>8c}H+Y8}-xIhy&@FdY;NHMD;cvs=h3|;1EsiLAnp#}7UomoJN#IFs<1m-#
z)NN`B%Wb{)M5jchs2$qqy~*1>*CY2s`1|m$iJS5RT@NTGxK%Aq@j9UrwX!rYCMC%A
zly+I*Y3;h=VAr$iXSAKxE;U$Uu*e{9<3fXF28#`HHs)@0jdqJp+oqnd!gi(YDqG(@
z%UxEuEOXH~w8UkpOKi$!?*oDR1NQ|U4Ez-SF<h<ibGTy3&RE^6-x8mtUd;`0O>#?g
zbMQN;cwf=R<A%~nl~XE?ez7ahsh0<y)jp?f5@r#$+`v4{G|VjQu$g<bR)XIijRehv
z)wY_4v<_KkhPpmb3}2M&7P9EEqT-S?w?~SpZYgf5UJn%`7DX<)sdQKAzS09FHxGA@
zJ4#L-wTo{lsV=#v<m?f;%+8}`vAu`#5?7DgO12(pUJf3P9xfiYRc@-BQ7Q7etdi?>
zRwZTSRh58cmsAS8E~=D!-BPLa3SL(2Rk!%GO8BxouRAJ%%Syc}ynL2DRnPEJ^e*!{
zr;_be<#kOZ(<{sCvHE$HLa!RHyDAq{^1XbQm3W<3ul2gFQtXwyvd$~r>xxQ_*A0~?
z>VC_Dmc=ZKTo$%0dYP|Ztlu^D5I?`Quhm`svR8WeJyO4-enUOLFUaq<dZeGXpQoRf
zUxeRt^<ckS>UY!w{lfh2s=rdtU0D$r<LBo0QaxwoTlJgj@6{iu`}<v0_w!5e3-!xd
zd0G9scC=r--$V6h>ZvOe{i6JQ{G9wUSGxOMS9kV%r=Gs@qWT5(d+L|e<NPec!u{^6
zyZHI9)eL&0?zZ-x_CxJ}wNJEfYJ05pTKio4mG&F$Yuc58b%ARP41%6&ztz60eO23Y
zt@~QvwZ{#VgC1$$(!Qgu5mdGDzP3`(CG8j5-fLfLyRHpiTN@a>Ry*jtwr)^$pkdHU
z?TgxaK?e<9s4E6l1>VrUpsgRI9`smSCrB&kwzf*pWo^|UwV*57&$Md-A83cJ4P0Bk
zv3TQp1IIA8u*!{Uo60usFxY3X%V4d+27{Fbs|<X@?80^$95V0-vkJ@K=p44uz%^`>
z!5#ypO{$xUHoAwMHdt-o5N03d9k#;Yq`_W;QwB#2wiz5XP~5cN;Do_31D~+%2DV`~
zVJ=}_VTTPo!?qZBL|1G)W3bs^oq<!BUzl~6`lj6m2MlUAR&T7?m=%50?4()#w(#iC
z=&Egs+kK*sn;kPthz{6u#w;qjXxlxrS7x5kx6Q7Y<wPGb%i8w9EPGpKbZm4+ba3<q
zvqxsP%tE65qF<QhY<p<-*eonMF8Zn2IkWp_m(8A=B}aQlCq~~eyJmLXEF$`n*+nzo
z=+kB|&HSUUn&n29Y)g+mWtI}16rCM?$1E*+tHE8f)aWN>UePzrVxrHQMMu|ci;ND8
z4v1c3`^+qMkH+@%W@_7&w;!}E*cKFBzD;F&**4YfmD_5!X>M2F9<s+hAwJqPVYjVw
zLeQS|wnhnh31@9h5-bvo6KoPL+Mck@-jlm$o2_Glb;2QA?Syl-$8Gf!_So7b+_b%A
ztCMiX)*<15?IzpJwk`?VZTH#ku#MW|l;D-H#dfXjI@_>48*B{|_S)v{u}|<wh}e_4
zXTR-r+w-=%30G|`6VmpWC#3ATZEKcr)OM%sVO!sXleWifx7vCpT(-Snd&AZs;fSqI
zLiC=~wpND{_E;s@CdBMHW$T@=%l3p>;GUd4S8OlYUb9Wwle{Nm&qiCfgySy9T-LZG
zrx+YM>ayNtgG+A8IhTx-BQC~=R=VV+q@?U{S?99R<)lko$_1AbF6k+IU5Zll4w)S)
zOvz4hICS16K4rJdCYSv#r(KFuEDt57>~hgPwAm#q#qdyO$~Kn+E~i}9x@>nzN;&9~
zpOTic#U(XmwaZSIvo5X);hB3}ws`MzIpdO(vehLar646Lca_Uw7nehJhujYxa<M(+
zddU8e^&z)I7ra9<k9wc-_RI`BzRf!<GyJ$i=2q`(-VvEQy-#|l9^dVK)BCEoU8YCo
z?ZD7Xx6JL{$;YpFdu3kqzURHy`<Qpdndswpyf1mXW@ep9Iex_3KGQbSKQsRLA@BX(
z2fU+>-|&t(e%Jf9w{zxwZ}&{U%pKl`0}pz~9e2zO&J4(O$vo}7$2&0dthaZjZ>CLV
z?D6y7$GvxX`($4CzU6(``<!>l8K+Fo+%w*X0+Wtk_D(#Wc6^`rnZRp-KDk!|9|rp6
zUJkq-7@1pp=3HQ4Zt<C0fxp9Jb7OMv1fC9j78stJea1KUe&FN47lC&JF9rtW2IofS
zhUJ!?xe|E7yY5WRnG1o>1A}ra&xGc_4D`yq7kDJ_NuX9q)tO6y-nnN3{d12724$WM
zd=z*p@I+upZuOZ5f#qk82i^?45%@Ild|*WGzwoe&#)X=NYa+gdYZoqwFe=n7Tokc8
zc16Uxh~*Jq!k0#Dh}aaNQMfTeuh670<f36=#KqMS28GKad@ue8{~I1~aaDwVp-!QC
zp;qCa@MD4B!+(XZjaV4*HGEg>`iP(5D<cZegkIbmt5;%hRsX6|iRo3dt7;|tV~@rj
zj#Vj9Ezv1C7P~K2y~Ob9q1c15$76L%%&%&cXqOy_)i2R3F(^?kIT9OsYfo(CMa!#8
zlVZyjB`rzPxDj3UFL7bguSBgI>Ngfg{7#H1`<|$FBeHB+QdHTG#Gi?O6XVM?Z^V^p
z-}sa0TJb9NL#kWF^Hk>whl)?BE)_wy94lU?zDa$X`Y!cjYRIj{NiR~JD&D7V$$Xs}
zd~0=PY2~`ivdZn5Ycp462Hshdxgm3N=BCVTnJY8>@03(-%-ou}BXfP`!|X@d&$6Fq
z+uVDS{WSY=w$;6oD(ibG)i-m^9t7RLmU}(-Ms8}g`GYO_oAdV;B-HFK*jKQpU}>RB
ztx@gA!rO(F4?h&{E81Ta=BlwoZHb4+LnZYk+Dq=KBrQ|&j$fwg9k=YhO7b#gZx!!^
zW#ub>sQ*&`s{Tp+i+ah*f|aE!Q~mN+R<0~tne11zvT)@$^%TF)>L1jT{JyJyR8RB!
zss3I&ZtZ97n6*)Bt%4%frmjs|`%OE3tx=F^ka>`0kXg_t?T^|iYfXZ_Xn)mCUi(hl
zA}C|6aZv2q584`=ZW-J*xML6;<{x&^Kx@-YgL?)cVcMI{8(cLwXK=&7aFhO~D+U2!
zL1A|dG&h|!xL|P2KzGx1gZl=T4RkgIh8b)sivDP3u-$0;XS4Ta`rCh-y*2w~mKXin
z?7r<+v%+Z8?cdCPn(1x-Yo@dPli7DO-R*|k^P>x*|CoI+dt>&`%y|13vma*f%={Ak
z6JFYeCY0>CYx~Uhj%`rF6Wd3&wR;}h1|-z%d2XA(r)p2p9>u*6Z133yCOou#YFoXh
za!=u&;Dq8m<$GS(UURwYa^K~tOZXwB)Qc`YhbmJ14n1(GO?l>0k`j36u}j3E%Pvn`
zF1e_r1|7QRQkwGI#pXm+%5@jT)JHB?UGBKtaJk}Ao>G@mlTw+YoLZK0+r|G-bxP!+
zkOa>|4_$7$1RuKP^4vTBcywmo@tot2y<d7i^)5IboB721h4%yRqT`ReV=}Xj=N`{K
zo^kw{_e1aW<8hghnXkN~GT#Tj3H%ZGDey~RT<*KTZ-H88RnC45{2Zux_Ge&X?uWqd
zff{Gyb5+kOoqZknHZURgRp76{kAX=Sqb_cXur5rv7<2Jp#Qq4=!mSZIB6db>iLftp
zDBK)zC}MAfWuaN&o`_u$$ro)3_eGc&#$B{1OuM){!m4n4#DNIg!ov|qBJ2u{N-RrG
z#GZ?_xq2qnw8W&uu;f&%-BstS4p+@f%u0+)9Iu{@JsEpC*6FH6NpjiBB;6YcWr=00
zlak6-B<bB)p7bqsRZ`fk@2Tz;UsJ<xeMybH^EuU{BJ56iWyGD(J3BLXWk%czz7u}u
zRrbs5(yHM5FS2jt-p&oVZ~0(r{{8~zhfWWd6|O0At36N@?wanG;g`AAI!I}+RY`<v
zreA27YHFlw_S)j;_{>9!H7mbsKQMUhZCw)On&tOH`=|CR+pvV#LoZxn4n-eQOMT<5
zcQz?k_pE0{wCiiz7*{WkM@pU^8s6&OYTgf2QkE&MQd*Vmr@Si1@3;Cd?cBA0wQYlb
zYug0<(Y6bEZ1Bk7p+Q)f*``J2i_J@-7n(0Ik4PwuR@tk(H$36J?K@l5y>D#a+J3No
z<?_<yt;-vi*DeW}@4ZWpzw=JaeCz!?Q2*?oz~tPc5yv9_q<U5SPW_eoBlTx$S=H{$
zJGsjXs~^U?K2c0}d#b3jM0d$!r6)?+%QBZeQ%PHvzU+}o*0P5xxqeSow7egyXnH?a
zd7_fBY@x<K?Z4{FG}Kn*`Dv{x^jog6SVMi)5{*CV1%Ch3^Zk};XslYKu|&rq$T6sN
z?Q)%kIwfnD=@hJ8q+=hnRA;eH@!G<*FAbg<SZsP>5FHj377_N;;FUpmSY+69gEi()
z3|<>pZc^L3+<dk9D)Udae{HR|uQj*YzQX*YZDn*t^fL36=2g*_+smWNqL-SlGyh`y
z+g5#VRKhRY@3wk-V-hs?YVXzB`_ne@knY~kwqI?3*nYE(PWWRRnV_DkvG=3P2bXs)
zTB(|;pIqV(y?6QGos_AOnsn%k%V!sZv!A^`dZ*-89#78v<oz$O;&|2Z^5dzwe*;$p
zEe~26v?OR@(4wHlLCb<x2Az&L5pgoYvG91r*@!a{ry?%IUW~OV@w{qVay~Y-Y)w*1
znRkUxMMdS_%srW}v+w4nRd3JVmcJuE!)=95OjvdFdh<-TXNqyIQH!z{K2_3R@<!#A
z%4?MuD%##JRq~b@uUfC6yQ;)*t;R}?H5xjrR%n#@t=7<9RqR*fXSAx+Z=J>}4gFQ1
zo4z*atk+qm;}o=AXRVG)&<BHxwOe#H>9_|~uU)0HRi}LI8l7!An{`&}RIPOm+M%;j
z$1SLCZROgUwO<Y17<@Od+w|Vxm%(p?w+25Az8QQm_+gL~=CCOt%zcy1rcVZLo8B2X
zZu)5O$KbO;V%SC<+fA`y@nN>x_nL1q-(YUBccZ!erXA)E+jp98HCKw+Wxm~fi@DAA
zy6Da3HPMPO+syZw$A#5K?=jzPt{h{w*J|$)JN>=ZdyV!kwM$E|+`HN?_mJt{wRX$w
z5)xL~t+Y!_NKZ&Pl##H;E-qoQ-9o$NcK>Ws6BgO6uv=#rpOBJ}l#rZYyw_%LY=ZgT
zj6<b|3{!u*7^E(A%|G<jrR2~e*Ste%hYAmUbNTL4d}y)jKbJo)e_ejM{BTJ>w8T|6
zHT%#nmx4n^sXD2~sV1pehxAkRQdLjX9slB;nwgSWbG-KWPj96YX}M{ciYKa%XJr2J
z)=o{&{O0|``>VJ5iSORZCpHHep0z%^DQJCAX70I&tlV`$mS;0^&CYHJS{t+~Xk*ao
zpfy41xu$2Y#$JlBI(sqVazxg}OR+A6=OfZDIu+(zbSrc%yby6EBKx9q;mufwlC(0%
z61$RXu~%aKuU?P!zIrRxzT`&i<yhaV>ytJmElgXRq<>>y=H?`W8@?4AlhVu9C2dIB
zlC&r->ej#1m|L;8qHp<C{7sF!6LTm2PGx26orF8K_bRIH=ayGJ%)OWUAlIhmKtYz<
z293W4{|r=Omb$tZ`d6e^A1ugr+o++Wth8>Yj^esqIx6ctHZ3$<WT+aW7Gt}2z1<4e
z<*v(Ie|wi7`s4lAJ2O+`#MYoKLAGaeFJ6uCDD*7MyLd15cI=(lyRqAnwkBniElzur
zo#W;i<g#5oW~FPzp<K7ch8i)h+wJydCS)b#x#hb(Q_}U;@%9SZt+T<dz^%}&$gS8-
z&s*R7oyuDk^Ht@3TQoLlY}T+?WxC32mHN6pI(v0g*J-Tt3-SrlTIU<&9i+A{Im~a9
z@1}rF{+rUn(!!P)riP`21#Vhu=(b%u=79NrbIlm77|-qQ+jA1K6E@j7?{(U{(M~7E
zWv^-KYFD$=Rj$>C{&{Z;%FewOQE)Nn>iyWjihzowI~mm_Zd)~6_v*$h^vTMMUR1p7
zy~+obZ5ow+Ren~hD*UWh1qB5M1q1~KX|LO-qrYyyj(^ZH!|+YnVL4%;n+#&s7#4=*
zhpjbSVVD<|8<r8a+HjTOa>IhKpiL_cGsCjN3}cR%A2m0MIcR>^{J8ls^F!ud+x24f
zV|LjUCKM!WvCB)?Zda7B!>%}Ct6gqFe!@;W_r2TfHrwrRtvR&T)gsk8)hg9K)h>0X
z>vq=-u3KC;yV|5~bKT^+%XOoxZK`>yWoqrA^{(0{7W?F7F89gJT;h|Hsd-|Z>sHrg
zKKYp|e3tqw^4S@*H)wy*?x0;kJA(3Zb8-uFi*ok_<>zh>D#*>w+!vIaTX^wC#Px{#
z5jP|5Mcj_?D!dy}e6i@FccD*V$;CSnw<4TN9>j)T4ZiAB@;LTk?4wwhl8~z=H+Cf%
z-^ec8os?O&Cn>9JXVTszqZ`|kf-07z1y@v6?ntVxw7+L}ud?cGc2@PH+{|k02Rri<
zYm#bq6~!zH2|A!tl2DpZ>gMh7T&ZN)M->C_vSrnNp+R9m;Xx<O*BKUt8ONM3_uan7
zt~|kK?{2%Ygt|kDhj+Uc=N=9^5Ogr;P*B;$u&YmE!>{g3io10nbARUJ+%mWA8pUD0
zdn*$5xEh>T>7#d|B=<qY{-lGM<!<H6DwfswMFkzyi4KYkGFlfAwBE2JENWBqrqZyo
zFw>Y*<|Z)#+k>_TZuj52*Ul`aGGVW)L#ktHL8jq}!pzcKzru$RzJ*U?T}w=F97sBp
zS>a~ry-Q=KMy=ltjXJ;G8pn0wf?|VC>YUI?3Nl@n7-YOICg`xv5uKwt$w7y7;)9Oq
zBm|{wir=)!aGT*4!_9`<4dXUtY}#SC({Q8V2E)kh6=9WO>6>;LZZ%BZblE&~`)<Rk
zu=22&P05?inx8Qb-hR&fy!l1*3+7kNtzyh$tYc1_+r(Tkw~V=DZV{8TDSUg_-r&6l
z><-!Ov)gYMxHo9;VY{Pt$LtQ;9kHuQIOwW=_?YWH*F&xvhmX4+c6CbiN>x4Vn!4Zh
zfNN={Z>n3W+F|chm(-)KKB-4sJyM-hJyTD(uJhU8V|l{(gxLwx6DB7tPPnI9pRhf#
z+NU^kqfbfZdY@H3YkfBP6lJdQDbGC~bS%i_Y*lVW?vbFf+@nEmXDf4GMpR#X9Z`Al
zRm7u+XAw^$9!CTe1{V4kK8bi9@ggGfYEWUsRj-n_vC&uEOP<GimUx%MT=gh<6Z<08
zt>ks=v)EU$FJsMaSll?2lvkEtmQ!YZBe%@zhUJZeNz2m`ZpGgUsaTq}EbVaSvCJcx
zM>F4LJKd|Q+LeE(Ah~8m;mShe+Df;Spv+Cj?ZWq-bggnT@>cXWTX#z5v`%%{3A^e9
zzf_-+cd;wdj%QZ8RWGYqc2HxF#y*V$8v8Z&YAE@q23^syTz6jQjE?m>yLFd!%-311
zOApEjx}<Ya=Yq~zopU-@b<%=t*C~dphpUAjG2Cak$1rD;O86b~+OUI$M-7h~9yZ)-
zs2YCA@PJ`W*a<_8@MDHb;rk79Hz|kLg(Ypbi@9r_yghdNHS-(hx6I?W-!{K#ZXc7l
z{hoQk_Uq<n>}nFO*v0HUX?N8wa_=d-({{0YFWX(RJ8x$jQ=4$s?t)!i!bQ7tc2Ro`
z4_|TBJ$%D8G*$2L4xfnBYp&*pH4k5QJ?DDC^`h%3SJT5GsoIAP4hN^29QIE=>#B7)
zEY<9Ac<LF~^RCxj15<-iuezRg-Q`oBxyR>{>pq|A%>6#Qee6zDWN!DV%G~0!(`T>G
zHXr*Ft|tOgT~2KFsm$E!<8Y!j_hgWAo?@QY*|JREvloIc2G!(xob@?-KIl?VU2b*m
z>7WxqXM;`!spOpr@;>W%_FRxsp5mpD!cP$@m)=Bti1-%qJ>ql3mxzxM?;^qqgA3nA
zypK@26k7N-BA_JUYSPuOvF~I3OMFWbuYQm9EBO@rIrc;BkJvA<fh8Yff5v``b-rPD
z!{NrUB>NjSHx4H`-6$wKo^&$lMADI@qe(6|)}|%i3av=GwJL2*+RC(bY00-%r=83^
zlX)Vurt(zg>CCg4wUvrhb(Qb4UGII&cE0x^+vVPqT$=}n3sx1@xEU|`q@wJ9SVP5M
z)&G#jEuEV>nL#;0*+E%B*K}^^T-P~ms1<(R@SNdU!;^-Z;kw}l;rW{iHW`MWGCX6b
zAFda!6RsWp)VyfZWAppw4l!|iADBDFJT!k~{=__OyHiZ+_M3L`dvDlXx4UMSvNvh(
z9oNXzo36KAEe=Pe+8&Nhz2$0oIC-zfi4#8VCl2}?@~O+L$*j#h<#W>Kn9ot4BR+?H
zj{6+&xg2yO=vq*~*}${@XRiib3A!HiBSP&`cwtb<?^yLq!6m<9PbZy9DlBuou|6%V
z;#_8S_0wG22S*Ez6g*eV4ay68W*(bb>t^b0;%)40x5{?a5e@rQPOH@Y)%;yn6$ahW
zxvz6q$7x-DP(hHxI>&Xlb?)gnud@g**;Kr#a?>@#8-~{nO~Wr4mTjuuWE^f3UcSjJ
z+$6kWlX>`6!wZHN4X+qpHmuo{xjlV*_V%ppFU?<>zcA0){@mO-CUviB;w`&7cK7U5
z64Ul7C1&ouZKs@g*G@4pW3S`kXRdc$AGkhoO-y~{`q1^B>wVYw)Tgd-sV;|;Q<G8?
zQXjis@Hy|}eZu#|X`g@-{wEZ(&iS16QOXKBp_vzY_Eu2XS*<*^JdM1lv#NROdBJDH
z&;E?ix)fFTJK|SF%GEPIF@@2E5rvV3I+rvrEsFaW8&a|`ZgJe-*gvsnl1j>o%8JX<
zZl&JZkhU=`q9XlPc*TXxi<##$Q|>&=eV$wPp!`9d+Y2Q#@1q);{u=(rG+frXuY0Id
z6!bu+ILLFI$2!aK+lDs{?;Bc$-!i;sc*pRr;cN4^=0)3GVhXpvF?Ws8NK{W$OT2Ga
zu>GZLN@{AV+u;|k&t2UQU-VJQQqH>MbJ<5HPdhLA?83;~L3e}h1pSNn6R{}rZ$xaN
z{w2LjOX5OHmc}iM%eY!vR#v7|<$2HJo^6eyd)+d{<?gHe);-ekU+25dd!5g^2Zq++
z%A3_Tt8Z4>To+p#TfDt+uU6tiJI%xgb_IJq4|^Sc<r;EAHS3CxT2|-@gG-rLv#xsH
zP_DX^8G7HxL(BiTM&P>Apn!EHL63Ew=sYrfVrUco%<!e*b3^UTTAN=OJ~e!3XdC{@
z@UfxJ=8El=+rOE6$1Jq)h$-Lx!`vsPdb?Xp+4j%oi!8pFe>C@sagX_K{>$7m=C`?T
z%pdbl=0DB<ntwI_VE)d$YWqL)_vSC`s`pmxE#3RX?v<Tx;$yp~cG`)L?2Hnh*%>B2
zw=+)EOEgK;PpsT)kXW==C$VhrOFRF=8L3}geGdO{edGGk^|fnOYUttjuD*xM_r7(_
zObt2w#r3o62iH%o?_9OAzPqNSesc{x9CqS~Ps9nstouF*Ck(Q#`ds(X%(~-q+vlE-
zUe-;Y8$MAd;!fyhX=L5<(aw6{^T_9}&ov*Ntnd@DCrt9xvtmv>_IVhjn-_ETagbhK
z>e<+{26@kd?gi;*JqdaclyEjZ)i_T-&oIv@FQM>h(ET9OyyUZwg4RSXkK7m;SGY1V
zsc?PdvdG1en<Ar2k_*>GE{RMmToIXCxHNKAWJ=-M$PJOkmrO40h}#*rGHyfMy13k{
zktJK>R!3%ET@#mgbz59S$?CXOaa-ax#%+#U9=AO%tfb)Trnud4>*JzI!b{f1t%%zd
z7hhO-HUH}Qq<|ZKH_j$qPO2)qm~<hjrtDf$by?tz>q%FVD$1@VolB}LD=*ucb}7l{
z#*L&+Y5BMEZpBtaS8Pe!mbN)9rXsQ;sv@pJwJPn-^~`ITS28bWUd>Fsqf(_-RbAzC
z?{oI2Z0~z7awG1)%6*gjI`?I6_<j2axz#z<b`R`p>}nip_T=x*UtM^tU`?TFt;<8T
z+B=0-kGyMrJv>*P(C}ClwC<VCbDgI;A?t$Il?A=fd8zYC$8hs&!;gk~n+-O<H?#|X
zYiP9jo#6*V-OX<d{bFjjFSZDXS!&@Qv&5oqyW$SJ9ZEai*qJ6O?t5qV+HRSJ@;<Xf
zrG0gK-`YhS{_PrbI6L*HYfkDf*WA>k6Nx8`vR?Q+^?B}NoMn>r%qRbB;o01?&w~oi
z7N30)RCLxX?^V#tpuDrn%G)BhM{bTZzqBPXtuVcCYh+?c>D7{}u_Z|*aU}^QF(sCl
z;!8qrgxsht+Y`4VZF|~{O!X>_s&~0xvNIpP&2@ONw(wJ-pNG<Nb8qieCpEPFy;fBQ
zz11lXdaY9vR1s7gR2}q2rz*%P+%f!*p;!1<!{3H(;a?1Y8U8SI4R;U!Zs-vH&ComC
zBitw4GyJpRC&QnH&f)gqF5%{ztv7GASZ86KxYj~*M@UR`OhimvOl(YKjM|Rn7OO1O
zcdWDsjahB6#Ud<bg~djTO%~xX>n&npf?}d#)>s6_Y_QPVp|WGMh4v1UeGBcs*;yq1
zwfklF$?mtERpMtm&3*6f)b{D^D^C4kr@zlU@t>W>KD$JR#E*75`|K0H*jXn2vHNQG
z(@tyOcRQQJ4|a};!7;XpPKhe}O!pb@OFx{Sy2Ndn+X}ZeZrb}6x&3o3OkM7_+HJAh
zU)Qw5e_S&UCmc>XywYu<+fuip)VRY1scYTxQdha99RBH(aX9O6@?rC=k3P<MzkRH-
z7Wz75z40kI@yF+-Pwt6-K5u>UPPk{eWc~H|?qil^mt~t(aKa|bDJ%2DD<9{qA3pY3
zrdhvyEV3-K9JAj0yz_bO^V#Qv&lexJtc(+je66#-`h4>#Jn_k=_(b*z*DR%T?}M!K
zT=E?9-UQX0was(P`w?WG_aUg_tbLx!IsJ2=gWd(%<vHcO4bnSjlUIKBdyr+`x1g^<
zu6eryEb_F^eF=IURC?Ae?^BRfp2j)NbE@Zb&Z(cPJ6n79V^CIMeql!8k;vVV$0PSg
z9*rz0%q-jyxi9iW<iW^ek-H+TFCB`^E<6yKSD0J4CvtD(&d9@&IfbVpPewXivcGgZ
z?r>aYN#)hOamgjcB`4#uOVUdY#O0L~mYj}DD>)RGUvf6?RNTI}tdf+HqLQO=xh4DK
zGD^<Gfo?Q97FSSmB<@69)z!!ww~`(tsg^%Zsw-10zn%0b>28u*xpH~*jhjgkH<Zfn
zCp}D3DZiI=Cn@U2p|qrm<cj!;qFV_SCAapa?MW-Wbs#OJ;$YgYw4G^t({`sNR_sr^
znW<f+Rdp*f=gytX+nG95!S@30{mlNB{XIMI-q-9O*|k-_vV-o`RK3rQy6;%yT(dXd
zspfdW`ofKc>k2m%TGpCA^7p6<x@6!RZnz^pW|943`|=Z~BTGuo#noPoxuITuB<*mT
zZq@JX==&dXQ)*r+>G)fCztizswZ!PJ;bNnOMt<RojQ$zgY~E(E#D1y$2DgoFrKx49
z>)kfFt#d0$tvKP4Re7R3b+NB|-p?S9JcDzEh36vAM4pYj7zeuD>S$VO#j&)Hxv4cL
z3IaUz{B`|5=qLuqu6wVu%*b}LfB1HbrAGFf?KUUI?6TNlvC|?UX1V<e`(^fdhpSSz
zxNUaZ>Q<Rrk@_p>Pmtj`&%ED3=Oc>>pC-lLc#@P>aXc-fBE8~n=AZ1ksz8sAI!eJS
zjRM107%ew)+8hw>y!n8|A&cD>dn}S-_F5#z9JJVHvEL#k#(bYkqHChXzLoad+_t+F
z9bWG1o#mP3m9@losqZr1#lc4BmIQm{Ee!q_v?%y*P-)?X$l}71!pm``C70s1B-UMh
zmh?PHqdf73W_el3iL{ex_cHaWf;@sfg2VOwgTg=QnC)=c?3Nhfp%VOA=ZlVVuxfCq
z$5)-u@Kr|P;UVE+;pRJzTBOEU?l@v`*kXs9(#aLR-g#w(mm)7lDqg!1mvkfl&fn}X
zkIyQnG}MB>>8vsG-0ZPAB7C(`WVrk0;}*6%Y<8r_9J4rKVZ9?Q#%AAY`!)8f?A;Tq
zQ;QGRr21wlpIqg;($^<T?WFZS)sstuP0pE}TNZ47&h(tcxyzBxm#RuCOUg?sN~%kg
zuDwXoF4rnQm3BX~;7;M4qC5H3dDY<_fA#B9JrZkE{jwrFUMNO-M0uDlF<Ww4<C}`g
z^6x5E-fGLgs91WdF1PXis$%DD>-|H;+FN<KiNBHmS&gt&hW^p3B3AjYGV{0aH}#KP
zbwT5dhNXYdDr0|p?~qmI{^vEqSDn)^@c*Nu6|5cnPbY2N51rpS%XF9MCalv5UZtxa
zyj=IM&M%$Bb#d#~*)P>q4_=}BU1yQ5X0TrHVqK$PgW%M4KXr72Q`RliH4N4WUa1=w
z?z1^PJSIFUe4SBJczpN<Bd^Utn-jy=8?80kWRw=3628{nd-G<ajYiSoew%$a$A%|_
z`)^JTPhOWA?y~QaMP`iWj*}LrE!=mUvAAM!!Q!07MT@HzSuuGrrz|d8<it4c$c{O0
zan{0VM@CF;jOz}M9e#=1?Cth#u@6Xe-sif{ao>9TV{W$l{1Z3ZJM44Xx53^!F)(qf
zy>H?sd;ct-#EteriC&4GiTm94xK$rM<W_fhm)mi-{cfd)ce<&hX{8-;+v`?#SUs)$
zu<{Yrw4-iHX^LqF+|<&76Kf71cH8ZyoTibcnWl6kBr70G{bXp?T3@Y`Ykb%F24$`G
z4bIx=yTNz8Z(x@7IoorV=T-&VoLd_ln71Z4AkQbyH_tC`W$=n%|2(U6tAm#ZUyZyU
zSy@<7=y~a8<n2iJOV=V@F5QZ}5_vbWyzoxsjmUeE%Ga(()|Fh1yB()es#dC8s#L02
zT3d20?q*y~$*nk*YpSI;;;zT(l&9X%Eq|T#GU-)P`K>c)6}L{OWmY`Q)USGw`7irZ
zZb9{?!p(&)HPIec{@d-tveZlO#Km}IhG&HDuy^10ATrj&IM`#~PWxT<yY0iXstV&g
zto>K(W`%Dt%8&8fx5r*PEh4MBP@`0@{A^mhhmC*is_gJ<79ok+CnK{q`K}B0x|DIF
z@>YUJXyOUCsH{YfiyCWmO@cGlZ8HkroEILkIVU_fJU={i^H!tV7B?(zSro(+#T3R|
zw<wOeX|dOSpZ$LO({5@<&bXa&JL{&CcG6AvWOSC^$<4v*gEs|l3EmjIA^2hBqsYgR
zHHEc>_u}rx-H&^l^d{+iTGg!!Y3I_aZy8iQ%6yy|dhc`YzWkE~NgfW~nx)AecPtLr
z*WAjfd8K5r<h9aUr4)~MN^g`FsV-Lit)j7fp{kR&=5lB6KPtaeeyaRcarFMDvQ}4n
z`85rD|En6;H4;|Y`QOoS^1r0<K;xN)r~hLOH~;KaH#P2SJk&^Abw$I~-@*TuhP%I)
zzl(p)DqH`18aFhaYWVnj_&fXG)hGzRt>NhJ?SEP0k;W5^xK$ae%GS9C+XuS`y9961
z-LC5poV9M9u4S-uaP~U4V2|L#y1R5M)>#A}(zOY;3N{Viq+7J^pzb!^ow~<#OV)V?
zAJBCS-mQC7cZcpC-Tk_m>+;rZ&^@BNPd9&E)w=b%n{}OnZG+8%t%J>jy@EID9yhWJ
zu3WcQ_mF1!x>H7V;Ypi!867n`Xym)&ic#d|Ge+^74;e-8IBm4Y=z!66Bjt$mM#qc_
z!>=0cFgj<X6j2?%-Ka9WBD^;ItWjxrP54&bgZ3wk;#ci6QjFMdbl6BGVyDqXqwswf
zjBXf}hnIw3GrDAS(&&g$Rd`wWZlj{`%SOfFdyS$tCvP@h>$f9t$0Lg;7B4OSS}4bs
z$As*7XrU6T8vDlLv&Bz~fE~{)-dgzYh~1$U``hB1g<@=N%qNR?77r{+VxC&uwFuo&
z6H^!S%Hp|2Wz2VrvX~bZuk1fq#O-)*Q5qAzLn$_BM@7s%i^mpUEPh$2$KJPiZSm2f
zIwoSrAB(RRKP=*RRK;AhKWZPF_{jdX{X6^U#IyF#?9bWXvCl}nVV{~9x9_I?A^Yd{
z{`(^L<t09`zh(cy{;K_3H{X4q?Q;?@+uyg(PmD^uZvWB#g8fPREB5jGPS_u_4@-Pu
zf8PF$z4yMi_Hl{HiSdc)iI43Q5^vj|wvR|WZ2#2$z5OZsw8Ss=*X)D#U9yka7oM1%
z7`5-AeQsjFzPt8Gi7|;OiIIs}iTCW!*gvp8ZvWCgVqfgOuzh~}KG{d_J7WLFP4~zW
z_n6d=ZiYwRyWMg#NPFe>&+VC;McQAtCvKUEU)-L${dO}?(@(QHa^CH_o9U4cZZF&x
zyT5j`P5a}fbHpUg?#Mg0Z*I5UzPhO&S>b-o?Yo=tk!9}oM=rP}CORCs=XTf4EY0Z1
zL$}9npWK$ZTc%kYu}U*Ia@EZ!?WWs8ck49cG}APjwB_zU+&;V69MM1W!0o=9VcJDE
zy|kBZm)xGa=^eS_w#Z%Uh~*L8H0vW8M{c-Xar@<V*)1dMmapkamy;)bjZa#f-0XYN
zHzDhg?-}3ZtfRh(S=)TC_-^$*;cIhpi?8L$W4`Bo&-xzp-Q&B<*XiVL-*dh<eGmI4
zWm%ux=WBKHlCR^*)U3U}+kKDwW@Z_kjLk~R+V8v5*X(3`)=#&%tW&;bM`E(Fvr@87
z`yTM!;d|Nlh;LTbb>H-?Yrgg;FZf>dwL9s2@`kVN$veS!gD(W14?Z0no9BNnH1B@!
zz2I|hCxXue9}9LlcQg1@u+zB*!H0tn2A>VS9(*Y{K5s{`!?|n0KIh!dg`7*sd*pT`
zcz5u=;3vUHgZBjQ3f>+ZnRhNYA}=QIWbnn{puC5{PlH49yw4p7z7l*RcyI8d;OM-l
zysg1;dAEc22VV}}8GJnWP;gjYc;40EXTgtyZw33F^E(%GZd-70-j~RzORpo}MFw3`
zE&34oH1bX4r%0tDwW7Mh$V&m2o=1L<{22Kna#7T;$S0AX;$B567DZh88X0nFVU%W3
z*rh*_FC*VaevW(_xj5=y<nKu3B9$VIqGypyqST9iMEYL}z4R^eXXL{8H*p{1{>6QW
zdlC0GPN!7++QYb?alhjp#A%oQjr$sBRQf0GU7Shjv$(&J-{L;UJ&Ic#uUD#ZP4k+5
z>65rGak|$Q#ea``6=ztgTlypJb=;Epr*ZG&e#JeHdl_e1`Z&(G)Sz6eROgz(HG@)<
z^1n$rH$Er5OZt-ZFKJ2g;$*XO)AGC<Uz3(5|490flz-z>(#NFlNq>^wCw)u$on&18
zGb#IqVfn8l{c@x72WbnFb1Uj@-AKEWb|vk4TJ5d-Y1tJ|((a~RO?#SlFD<Vkzv5Av
z((P+$Srs`I7t?O0T~4dM^EmBc+NHExX{xthWfoN2PBW@9sWPl8yYoKtdFIp1mzmEp
zEAG_Xd7b$-)3nOGO6l&KOp7YBs&|=nca-mz-!ZOIyc>Nl>Yift!kpzf%GED2m*vFV
zTbr{aXLZi1oF|z}a~379%UPVWA}8YBnw&*BVfVi0Dpjw{3BPwZ|3~h(+%LIbbART#
z)*Q^=pMNC(P`>knqxo(%2lDkFxIH{ou%&Qo;kH8ehcyqk7OgFMujK3R9em5^rjcrd
zM(je%<Q)k+{#hjMC`hzVOWbFd=8$&V_j&NrsO3@1qRdK{#xG0$T$t*iyZoibD~%T#
z&o%t~PwAe}RbF4S?znE<I-g*_VBg@Ax+?24H$O9aZ1m75XR}(w6C>@2dq!`K@;ARX
zx^I-XStH_u(QBi-Mvsi%7`-rhYLvZMH{zYq1EZ|X1)E<Q-8RyR(2RI)l)L$r(H$eL
z2=$1x9Y(P$EDd8*cC5BsXQ>yf6T8@QjpZuK<(BI$H&|}6+-$kXQag63<r2${mb$Ua
zEcIixVpm!k#~Q@0wJc9u>hQz9Br$2<I`_p6U+s$$f7zEN{<HsMUy)dtn7r?s{ZIR{
z#P9Y?92PnJw*PCt(4janW8ZrBt?sMcH@Z8ft#x-#b2;LA#4XM9h-=ywcaJpBv{mlg
z-M!LW(wx&ayL+dtbYJ7X&3%*mZ{H8TPHApOJdPA)J@NhN`_wl#%m3sf-`Bp6ee<*K
z`u^}O$olI0&G(*fY1Ug`uanPx-}yfD{pI_~_l@rz-@>fVzOE-rvcCKJoc!pUm-XJ)
z^W;n4oU8}FFMPlFKJ)cE`O4S(WLDk=_n*N_LVg5)3H}(Io%cStIO|1lX5PEtjJ(gm
zAA%Q!{0{ya{3|#m?^E#dke9))f)|IR=B)@x&s!PtJ@~%w-{5b-3q$?{$DVr|oRqgL
zBsuSOa9ZA`sDHsrLn6<uk4ntbD%u&fHEMIzx~RQT(U)Q`=@rFaS{1b|YJ1e$s5Mc$
zqBcaWj@lTNbZJl2%BbB@JEC-ow2R^{=@xB?S`oE8-llYQ{EGPX@mu3p#amt57jId*
zBYtiC&iF0yyW`iy+m+guu8ZFjzbt-Nym_hRwN3FG<G01HjJGbezGh##A%1(jL+R#t
zvuh^TEK03PHz#jQ*0^1EV|((}<Q>TsH&!KYO5T&aH-25RRr#CXmC4(ZHzco3UXi>!
zd3SR0jWx-ulP$`(B$wPUFE71eS-w7bSMtlWS7|!8ODdkH6;`}YQ@>qW@iFaL+Ro(9
zX)n@>D&D1O-u{sGI_*>1+q5@n#TDf@v~PdR{FJGB_e-W_l~vW(%+HxBcRyst-rJb7
zC1*p9diACpwQALBmFmqo|8oE2#^3*)yFTY{?$(@NxvmdR<S)xVmhWD3JpW|=*@Cp1
zGX<v$(reUf?-qV7{8IR>FwNt%uG;#KMxTtbc4Y0#+_%hOTh6(HbPxaFGrEPFw^*9Q
zu5eiHP?_j^#3yZ4NKRh-x!k<uODUK1i!y35Jk-~p)eZ1JuX|26Ao#OU$>v{1dJ#X2
zz8RHo{%iEb=&O-_MA2sBh~mwqoBtUZMf@@PY4qL5Ai^->w^7+<v)HYcMLVoxk6K#A
z9=FWfQL<yVrA6#9%bXqCEG=UXS?;quV7bfkpk?+B)7ZV1#XI&`?y$_=ao93{N8yhB
zmfI~0cI>n?k3C{plepQTU|-R`^$r^y);O$oSm}_vZ-c`ohjkA5`_?*CB~~YHbqGn@
z>Av56m-}vazat0S!_xfHLeqA*uW|@X^H1C7zSlh<Ehue|yKkERk>Iq1bANqnvLa6g
zom}O&(l7kv62H2v6@LGG7y6ZDRb+*nT;})3w<@bLYmwh_zomZFS&RJwPllb`;!vIy
zadLIYrjY!+Z6U>Z>q6FqYz;{~mzTFCq#&;_Z*53X-sX_?Asa$AhSX*yo!b|6D$1nj
zXw>nj)JsN1`=bs=9g8w3GA=q9buj8s)QPAAQAeT-iw?x^k9R6P8t+o-aLuvwV7zPT
zp?Ldiw$~2FAB%Uo=3II(x$?%5<f<F{k`E-;+^D{>KlxDd;p8Lndy^|FzNh_4`;+!H
z?OWQ<wBKo!73CFW6+hCxq<zb@uF|~wJyYZEjvS5ZT{)W7+jDm26jd+GE37_~e>(qE
zzURa3g*ys&749soefU8s(<3nWgk^2wL3itN{o8-j+#Yy6bn(_)ZyQ^-qjZN&Z269D
z4t0q;9JV`@>^tNhp0?U=o!?r&HGbPec82T-Nj+y)ly)iQoN1BUHMi2^@h9U?#Mj-Z
zy<t<Xc+>Fq!t{S>KQe8qwC*O})2d#aw<u4e*46uhZcy-P%afL;EO$BVb~x$2)8VlD
zara~HC)^{_j=CRlKjj{BWTW4DznGI7{Pu+G3Q0S+JLGiKsrb|Jw&g~*7p4Eqw5{5m
zvm~#$`fUF0LO1V_;LzZUx?1aX)?d;M4z`S_-fSLGwb?AfHo`Q*E@Gjvb%aHPO@vj1
zNkq+N*Vwup_Oa(JU1F7YYVLH4b%=G0t=w_evU-Q=PP<s8o#!l_W6xMR#a8XmPO90b
zn^e1RpMy@4Vv=f-%Kq%M^X>;6)ROA<mF_$2aKu3?>6nA!{u2($`%gOTb=c!@%0V;f
zxWiEg^(5say`+N<haC1hRP578QrfSQq?B~dJuNLUE#XMyk(jjPBROfYX`x3V(=yUh
z)6&x-j>M%Ur$wbjr(JWu?0(w)f_wCl%(Uz7S!oGrF-H=QoOKU7a@GB!`xW;~?kQ<!
z+~d<?k8JT%%2v&eKe^2><)m)*RzLOZ<dYS7+x>L1H~Z;j$DK?%nSD|@JL6<hnp$?k
zNtJAkY^`j?Z2fHQ?9`K**_-^*PL`Zg%uhd8omX_O;9TB0mHeD@`$JUoPlp@{Dakt%
zaxA1S?|4Y@x!Sx_A?0}|LiUA}<z0)a$tyiqnU{G^IX~;%-jK3$2SZBp4ul*EIUJ&t
ze>CJ|$k`CJe4C<+QP-ocM4gGc5p^~y>(b?@>`UfFwnaCi^3SDTvMkEG<XmJ|bUW&5
zlvUBWD3_x1Q5T|Ii=2w8@-i=36y1q(E6TWJUvw+Vy2zo(vB<CVLj2A6Yw<VYJ+FC}
zUX1s;c0Jy`^m4p^>G}98@wekIMO}?Q7w=JeHr})JPP|v?t$5$kGw~kRd`d6HA5XrT
zd?EQ#^08#Qa;=+3lO4+)%GGXONj{T&GWmS6%FPqW8aGcRUrxT5tbEhH{6_M%<g>}w
zlg}la++LPmRk1eR^!C0S<;v5^OVVpAmZq;tH@j_oSFuv5a&h{a^mXaW(^saiPG6C}
zKE0+wrLwM~y5di!Q`N6bgS$F+|79B8U6|!iwJ7UvruN<6na)-ARg1Iq?mAZ4Rps8%
zu1>nAQ@uB5PtN|F13Ag}bgP%<t;#E@PQ1T7FX{fWyp?$?@;n|~%=f6dkbf@U{lWQs
z&j-~HvT8DG&KF!L$gc5zxTkP$p-FA_L#x`lhu;gg6}fv~u+-Xl(ej4-4!?6Dfu+9J
z0!nWtZ%9wMe<|O?dy%nygnR5Q_nYqO`R7A4^6$nwm7CmEeB@l~>HS(`v9az>k64|Z
zmn<(^YVAMmpt)Z^DK{<U$Q}3F?swgDPww>F<!6xXUZk1tQS>nWUi^dj`|&}g+Ba_{
zZ%W^ozC_hA!XaXbvEI%rmOA^j_n&n*<6w}ayZ^rX1NVFGsYmkD^3sg54YRAxT?n}!
zbvNo>lxNZ7_($>n*X}0YNxq%DIo<c+k3ui+uwcFQ;lWN3&JoLuml|KSG}!4E>l5o4
z>l^DG>lJIX({QI@(gg?o{UvF}Nft?$9ITQolWdYMI-GMbOEO9_NjmRfon)S5npBon
znpT`vo>rJvl$Lp<Anl=h`jI_;1t(3iO|y-&i%#zLD?GW^?{di1kh*h5`PV|U^Dl*H
z<(uRi<QwMe=3fla$-f?QC8YM8alX=dy?p)rhf$@M9!EWjD!%k2%B$!>RN%FsYhk5N
z;)6@WOG8UTO7A5<On#88ck_O-bNQC^t?8<j+tSr4EpEG3xl|p@NxheLPp|q=&g#6<
z>ayy~`CbolYy2L1dmHZzi1m+s<o?**Ec<DcY5udQr|~}CR!c7HMg~U&FE@6HSYdp_
z(sJi@OY@!AEKPS>?7ZS&pJch;WdCIcyCn1d2K$ZoUv;oeve^IB{e}B8_vh}f-JiI>
zaewLl%H1M+pI_<8;*;jtB`0r(+ze4WZ<c=}<W`94dGmbb^UtHoFTIG0C^fvfBYju;
z_Vk_UOR^5<+$;3;jtX9ByxMq`@omeXSi7A!Ev<G2#@?~C-FesYmgPeS_oSN+_Z{r_
zTkUsBa!tD7;E;63;gh>dlJ)-U4tD$RI^1%2;Bd|1o`Z9eTheU@$E3=%ckUHwU){gB
zE2b-@e{-)&`|Mtq_QU<Xd-jo!?$v2;-9Na0cdtqN>0X;=nSI#rq~AfmQ-0Ma5BMGR
zJMDME@3`MFzp9h_{f_umo;>7dlW&>-B;;kt>yQ^A4?`Y@ybXC3@-*aK$fJ-qAy)Yg
z`F8ntLhSRc^Y4b-54jieEaZ8J&UxE>?eiA-4?;dg`4rV%dKu+g6j1ao>UETVQT3(w
zQ6HjSMSYHX6ZJ95uc+pdchTFZkZZ5wqe~-8V@jh+U&TL<e-<Bl?PdIn`1i@4<<F9z
zCL7&!DSw^(D)~|J+vMlT9_3Gx-y}ayb}e@=f067~{xaF>_PgYL>6W*(D|e^wPq)6U
zQMor=x6<aeR;BIjJ?T1?2h!Cm-K#vS%<nGG@~B#xrCGTw%dJYk+OYa)jzRU2oDF&9
z)$8*rs@LYN$=jH>Dep?Y_k(qLR|+l`Tq?L+pjjL6@Ic}I!hMDJ3v(W>EBaYzUF+xV
z8ezZFVW-3X;v>rGwI^#%8k{#euYca~ykq{CDASu><z_bzrrY1PxcjTn-#gGhCOA6S
zBVvuQTf|yp_Xx+Gk1X$5y6+5*eQ5c>^1fwA>|@I(mah9>I6QNB<?!0!ql5eYw+`<e
zo;y5pc<11<-);W~hnEg-93DG(COvg{;^2|wmE^f!E&aFqU-v)mi#=4*%Z~hW|K+~W
zW08kyx_bH&kMn-#{Lc8D^|Q{l&9=(6$^IJhE#zZ}+4)Z)&iNksPWhhsF8QBBjL&}w
z`4Hlj@0M?R-ZkGn-{k!J5S7c{qJoN)E-POC5fxJOJL-GX*Qj4n!9_o#0*h2HM_!97
zO)PyIA9XFh^i6zhX+r6T<d4aplD*5#Z+=epDc7$&l72M(aQdP2W9fR8tFu;St;$-H
zwIXY6*72P5dna;^<rr0O&a156l6NitYQEB=0B`Rk@BQURG}0@MD4tR}WtVM!Uj1@d
zk=o_ZB8!^_m6}z?)q&og5t`|i=Z~lBFSlM|uzZ=S@$w+=Q11}$U~j|aOI3?jz11jK
z^<E>$zhqU2{~L{W8o~Y_H9ly3(kNb4xazv@Ro(dDE4nGciNSHfhU-&<jn*dwCkH15
zU(+>S9~*42-alf!@m6D>h~Nm-Eq)Q3jJFsEMyxa5XzUx|6|uoMAY!v|P=t4c`WCe<
z&n#bBhQ)gCOo)w%eQxQs({E==Y;0^&Y(#8mY<O&P><i22*tpoJ*!b92mWi>Eu}>|1
zcKYuR*zddFXMf=SPYymwUmQaB`y~Y=eRl9o3QP*y@1GR1KYYJ_`brP;^kp8kM=a8H
z(<_fG_oz8ib;KyW`p60o?R2g5x+A9PCh5lMhUsSMOFeYb_0kQ}9kQLXRZh8QJ7&9O
zyJV}Mvd>mK<(lo3{VT*b-#g#t{O=IIe4qTEAwNQ_&qoz~4~ZxWFZvVZpC4KDH!7y+
zUsQBaa_Rf{q|)@#)Y7z4zw(sQckv6OearpJt!^4t8da{#@~ZKy3HOd$6uaoFQb>f&
zl21yXl|CxjF8QLgN_DyF8r2o55#G_>rps5VMtQGRwOnqpJkmRGXZfnH8s9a-{Xc7b
z)A*th>L1}>x+=`SVwLIoo4R*(Z|PdB&j>bIpBZeo{*JEs`g^($bZyqB1>e`TUY{QP
z(ek$LHsk%qdyRJ(?=;?Le84y?LUYS*<L$<w5#bTLj1L;`F;0#BV)@4MljUd2v{?V0
zuPxtN-q3w-`N8s?WpGl^&fgA;qW?JjbV!d4P5R;R&*85_P|{+@?+%L`zd9^*{N)gm
z6uEzchw{<Y9veN@c&zeR>tUI$a&*0i>d|!`R_UJE9@*FYZu(vHyXxnaeZ}vR-wnUZ
zei!_%`)Qq892%7WCHY^-!qC4V-y8z-mxTTa3CIu5Ulh7HI<{y@^wMbU%OB!1O1~z5
zOSZXbee-+r$@CNH8?x4Coys|#b24XZUR8CBcXn`Aa8yKO#9`wj#)pixwnRkyungV#
z)AFljM(j7ske%NxmpQI*T;jOgF)V4RV|bFr(VtGX={D)=N3GL0d2IH$?RVGDFWWm?
z=ag@@Pxc+ZTYlQ7bWg1gT@ku6G(3M*=+e+-p&|M9=R@<Chlb@loL?EOdwEs#^5_-O
zaYf6bbuQ~){u2K&{&ReG>G$}o(y#G9;=jdziq9<lnfxpHN3!kBKgj{*f#s*uO)7sU
zpGr5b+?=%~%d2Wr*2b(eIVRN^_paw(E4W%v_aLuEtM+=qgTma0Hnp+dk^Xk+-c@nl
zIl-B+5lKPiQT~r~AL<@8HrNsy5gid9aokvUOI$=ug#H%2Erwf;8Rx_<w2Ii79h)1w
z%ql;2vDFf*UzT~X%dNt9{;>?(`PcHdWmatD&ZSoWEEidAag5!+*>R)eO2-|JYaF*Z
z?seSin2?mVKPG9FW5WIoj&VsD``0_hCnY9ra?IQxnG}_@&vB1q(*E6!YaLVf?{th!
zirb&OKRRib<7&rsj@um<`S116JG#x|q{k(XogSX)+DDIh*rz+D`=)RAFh8n))G6I1
z-7noa-SVi#QJ?hv9$P%T()W3|rC;#yPCw^y$m5KMNBUNe^B$)>w2of%a7foZ>YwhK
zZg^Dl=xz^_qlZ0?dl(-*?ctuj%VUSf5f7uIrbiEY9PltZdeq~D$61dDe*W37{2uv*
zW=Cd!_WSMk#xF42<kSbhJszf~g0jE+{qg(ar+@03-$MT%e$V{g`xzXyI2Dy`d@3ya
ziQh-RknGof!P!6kUidxq3(x-NXL;(e-&em+esBHm``z<<?)S?tBKxo3Q@@vf0og{U
z%ugAfO3shVKO1^7bYo~#zSH@D^O5=S`OfDZ&#w=S&EFlmHgsKRME;r3#Qc4sheP*<
z?up(RdN6c<=%&y$p~piL@=t_%oIe!md47B7*3b>1-sk<!yPV$<dNg!P=#kJ<p@HXP
z@?Fm#2t5|MCv;nAbbiozpY!khc7-P8Zw~c6Z*b~hbYjtg=zY-_qEm}ZFQ1J*8ht)`
zd-UOG+so-ic9+*jTU=fneJ<MQ@|oz<(YvE}MQ@1CEZP>mKl)U3PSM3^v&+S$c|{pT
zTcXV`?~Ps)y)HVwD7z@7XlwM5=+mKDMXRIpN{>aKj7}@EzPvL!w<x*D=Cb8wtIJ76
zhoVnJClqapJ|4X}+VJv@=zsC4*On#}lopk)PRJ?UnXoZoS;F#!4GC%2DofWV{Ec6i
zuqa_yLPcp=>EeXgYuggiudPVfnvimBd%~ai!qVt#I}$Rk#a&yIkbSMRbY()~wer$U
z2}#$Iuf<=>FI|$bIU(lS+JueKTM`x~BwQ;g&APTeCAaif{F;=dDIw*~H~%GXNLik;
zD#79Arj&&#PB(+gSEq!Q$CgKzuT6<5U!3B3b4kj|lyxa~H-E;5m2XeklJYQpRm!rI
zttr>iSENLiyWET@{~aGyzA<HUN_hFUl)uS~QrvF3-n^e4aQl3^MdjUem)owl&!$^e
z-bi=8eI?zl@?QG6^o!|cl@HQAZr@D5lWtS#SZQB*HT^=m?`^9}>&i3f=9T`pO)G6H
zZ>Kv{dfmRB{wUq4(($&_ZNJ->)7@|1N_V`Qb?;!-g{;F_r?M`kpUB#tbuP=VYIoMz
ztV3DOcYUjD?%LnIlyxM_?(WH~Gg(`+&SxFSI-0dJYj4)Ytm9eRvUX+d$vT#0d)KFG
zf0oN#*Sqd_o$gxQ-I3*XcVE_poGUrj)z@-z@0nI#%DItaRc%&nUVT32YK~>~<s6IZ
zb2+E8F6Nxgxt^1GKkt5Z^`5-_dAsxW=IzVdk+(B%TVB@vocp`-w&&GU*H&lWznLHO
z;C6oKgOCSd4{qh($@hQYQxp8)M!t8AZ%z1vn+3ND@@sAsC_Ow>c(Cwrp-%0QLhah4
zg%1m#6h1CAt$kFO|4{jneXVV+U9C&)hN6u{>x;G*nLUd3UtzW1@m%QR^ca7K^|`?b
z5k^~9TE*;KWmOQHl627VfMZ5da?&Bk)TH#Jw4|h@oc#gmHb<?FUh}x(an<9pM|8IB
zskrQf?D%ZEQ!&}G*%w03ho<CT3=KYiDKs@d^nBR)o6*;!4<tBUz8ZZkI=|>r^sVSC
z(Kn*^B)D95xV$eR_uBr1y3*YVwWWI#s!FR%Yf3LiCzS6>*^#m{C9XWNJigrfrq|6U
z=}*(0D}!%e&bpd)CCk6cruufyt(==VvHs2rUn>4k%JTT8^i%1(lJ#<{<?B@KmnV7K
zEKl~{pqk*lUUjW%qIbNv?Q*;2m8*Ve{MJbD|E2L$qh?jSf1H2yswDqE8j1eTb@PJ@
zf(wIR=swZS3x2BmO!u*_*_QMOlPz&OQzA|nr$%H%oHRDxk{pp3kra^@Q5d_{sxo$s
zRpQR|R;97)tO}BfW6NTTV#{MIVoPFEcNXqnZIzRB#Ib1q3CH67rTdRN7AEB;<s}_<
zJnDGNF*7MUsbGJ8QdW|~(VHIEJ#Kger3a@w9lhldn4XxOoSl^IdTO!1+bNe*OZ=~d
zMxDPL8hyT?sIcgEbWxGV<--XD*A6D+UpthbSXOv#cZy4;=iS;>o|l!%lKnFyP8nNn
z*<e)_Ta<Lt@w8(}QgKpgQd!a|$FTJ9^w9K_?2z=^9`2_+Po-vG4ZRaxT%=sKC*?p&
zO8MTD)bix=gDGj{`%|8!CzZQa7TmjCp!!h%QHp;}Y;|ni{+j*O`^%HgI-YT?NOC)R
z-y=FbBK@96RQer{$aMFkcRiN+r)A#=P0PO)nx3DLe?2raKjHk{=zz=RMI}X*Mfami
zi|$2N6!~8Exm;Ehc==euiG-4CrPox-jwh&=9Zfira5&{qN_zQ`l-KF*m9NsDr@K|Y
zNPn4rE$ez#K$ZVp`)Z%Nes}NW6x}PlXIpJoeK)7@eqFU<&4Ik4`;iX{YVH;k)u=tZ
zQ*f`Ku;y6d??Tr{b*obSJ&(quFZ1^~bu+Z8sJh7iW}3g^fvkLw%A#P!)qbaHii+>~
z)f5MBv^wXga^Qla(t-1ik3AlE#HPokKlFIy;eB+4|62d_?B)I|{Wtip_FwP6#($On
zI{%F9r1N(|lh5A@&B;$WpPhd@G&eu^@}ua7(X~YnqE9ANT|1p{HsMS{^)<D!QwgV2
zGRjY;oJq+nKb{hB^Hj=-l%pwG<;POuZ^zz#lOA_F;r6@qx9I_QZ)64Dy_r>dujJmn
zoZ|b+HA*#i^Y7&s*W54AcxYB@{ir0kGHH|lM*n-EcSA!jtCyWmIG1of<!s7@lyfP8
zH$5xgr+-NQn0`N}?B2mV&4&*PN`w86rk;NseIX(7c3E)1(ah{8(b?q}Q@kpJ@7~I~
zo#jw{KfgR!F-|FNlT}qxb<#!0nxv%kpra}2Pd%P_Jn@K6Pe@NrPfQOv6?$s3e^z#O
zcF?J?Q%^$+@*jlW56wLPBs4ES{k&T7!_a4;k3%1Yrk&5vS1FFU{4BbzDDv|2=%~vY
zm!3vPTvjetELJU!y{uFmeL4Pe^i8$v7Za`}TuQi_pi!oA{b1acgv$w$H}lGK%Ja)}
z%P*x|PPvj&P#$(O;%4gYujxLOpVNISKc#<3_pZF3btmg?*1fC;IZo9T_Z+Ls?;XxN
zl&4Y?`ylQ?%me?Lk{aFG<Ar|;{}xsRUvhlzvBiI@e@=F8_Vduf{KU(eWm?y-ro`MV
zEdP=2SNT2tXZpAF$2kwO9%hBz4Xk>UQ+==U-ou=#dq?vA6{<d}46eDS_NXd2eP>q0
zY2(dS89Qr}l#=U`E;~jaRY_J%);<t(R5>~1Xj*#Y(H9=!M`KUD^mrMXnx3AXksfh$
zyMNrNZT@-L`PtE@cKE*tEzB;;FUVFeeid4hU!4Cs^j+wi(6^zb`Pt`ninWSUFQ;AB
zEPffCa#_1L>2mVr7tz-fUPWsZzmC3@a3kSn!o7sj^1BHS67DD5Nw}S$RhD!!@n+i1
z8!4$bucwrh7nK*6C*Qo5@+Up>wtwaC^k3-#mCv%CW<}h6oK<)4QC4tOP}TFSqj{<|
zPjj5BpX5Brs<?kFFQ7*2p<eBY!i7cE!CR~zCe#GSAKm4@)BjC$#^uKe2G<`Yq~9zn
z|C|0VJ)}zUe!_!AMcEN*$*Re(Jl=R@rN8#bOwUe#>ydma=~UXOJ^uUr_xdNEI^dsh
zD(6(nsiN%t{=5CNP95|wKL0f|_xz90U!fmDzl44aEzhsYugU)u`Z=^Z|6AzK(C?wO
z`FZCn^WTS-<rkf=$S*lxa9OYTQ}l=E_tAxyzeZ<Y{u2E;I_L7cXx-ws(OH*2M(Y=w
zTz{5ee*IO#^MscPFA|<6yiRzR@FwAHf=-$7b?vez3GWl`raVY_l=3ho>*np0`zg0l
zvTxo=DKEd7l6&)B%G!)Y8G)7gw{vd?RW8g}ma!&dNyh4ooZBlh@@_BBSe3CfV{u0I
z?UfntvfgBcR=v*pnDss@>TX!otE?AUFS8=5-e!eYeaL#2^Cm~-zS8~YIqubObKI(5
z=e){st$vx~QvD+5Oy0S?vw5fT)N79CozA<ES9$+@-if@Ed1^He@`G!V9z4tstO=?~
zeDJWKwB~7H(L?jv;)jciENYh&EiKwyw5iCwc6U)ug#Ll|9`8JgvrDoM`Tq|65nX=1
z?0j9mLGicfpV5ZJR@Xlye2;#dQc=DxBk}H+tWQ}9cjNAU&U%-ldf%h^VqRE{Momaf
zXw9Pn{o0a;xe<A%o}^UYPkwO5*yun`dg9T;{`sehPnBjL@h?18aH{Ck-_Spy#>I*S
zN(GC;7KZ%`tvp|P`B(Jc=#tBSqJKvl6@N+il<+aZ`ugVto9mV3&r+VJRF&u7e40{t
zdqc+hj7=HAl^Zj@W_{24mZg6Gea@$x4>=!mF6C*~Jj#EZ|0G}MVOfnq?Xsf0h|*Ka
z1t!HWQj+do&eMDNtnjR{#v_l~{D^<icGq8~Y|co&`#I-IUO`0C(WCyy{3}kCWtV3!
z2~#alDOeo#HNpP+tCTk>uTyHvYs#z3Q|@|If639f?^%5<?`od@!}6NP1<G+BJd%%|
z^gr%@!oTkP+OQR2OT*TL)ts+Bzb;I@V0GB?u-fy>!d8W?3{xvu9kVQENzB@qr7;U*
zmd8|FuDZM^=3m0%m~}DAS86URUQxYLdwEriY4OUK6)}~U*TlG7|CaDG!S(u&1c&R3
z5`QNwOmw>bH{nmhuY~Uj`ek}$24%WsixWSkd`<bB@;#;G=8u#QDJm5oQ;KiCPx+Qo
za{FD%+Z5#r#frM}vYVwhov#<({F1UK<4{Ie<=%_~8Ame0EB9w?&nUgUE#q*;u8i{A
zJ2DPt?92$Q45_TVy(MF7#=eZI+q*OJ@BYgAn^kx>{ch%6rHZV(C3j2j=H1P>`#WoK
z_QLF+S<AB1?*7OsyBk%tD7*OXpRCBLrP)Pymt+^*{hsqJN9X?EoS!*=a(t?P<^0b1
zn)4&ayISkMcFn`QJ9!WCR3ALfyPsEg|8}181KpZ?d5`jRYHsHJ%etF)D^Kac^}HK-
zS~V~7U**5ef0_R-KlQ=${Imy8^D`cV*SyY;tcj?3mj5Q-=;4ckikg=N#t)wtJSi}F
z_^jY*!O6nNho=iq6-GaNS@@#xdEu+V(uWSUj<q|A_7pijQi;3b_}L@nXm0vPkF=vs
z>pyv998EuZ%Kx-~Rdz-88UM=c&0*>nwuNm7+a9()Y-5<#g-u~w!&EM4U(hPp6}B@>
zqhL$ejxfyv-7BgWlrCsp*%4z^taD{^j9IbSl?^f5Vs^$DU$HLU8nY>8SIov3^DEn9
z%!@UztdFrMHoan5yd}oy%GSgci7OM=B(6$alIVMVdE&;z)rlV04a+tsZb&pL+myI8
zab4p2M6c^>6aS?AOIe&+d9(WF@08k`sufF9f2Ax-t-HA>bxG=q)P<=lQ~##?Oi`;)
zy0tu2y&|%*>SpcjWr_DPu4Y76Ud)K8RKKHi=T^p*j8hp=mDe*aWn9isy>m3<Ovdeu
zy4yE0E@Y_Pxs!1^<5<Sc43#@4GOlHu&A6L!G9#k$c*ePm^BHTimG7+1-jH2+cTe`_
z>^0ddvbSch%ifs1Dtkxv^6d55Te7!h@62AAU3GVF_P*@x*}JnhWv|cOlxuq5x7zUj
z#@ubWTXOxXSLZIw{g)F^y*77U?yB5HxkmSw=kCg0oa<k`GS}?>irgi+8*-QCzR260
zyES)B?y}sMd9U-H=IPaZ%KMO~U-LfiUEcG&CwZ^(KIc8ldz1G)|4;s>{IB^@H9zwg
z6}-*+oc}j}alw!LkNLmzf8{SM_?Q1N?_2(d{4e>HHB~k5^K%}2DR^D*x!^;=$AVV{
zZwtN_yf1iH@TS1@;irN#g=Y(6AD%BfS9r1TLgAaj*M-ZAG#{-fGI+G5$hFq9*5c9L
zBClH2xag|wx#st)YierL;=Xuf9?eVN9j0@^^2(l=y)nCEwkK{&G%j16x+8H_s>-bg
z8L^e|mG?6=@5EIq-rJvjF#ACEj@-a%tNYP4-wG}j8a}drbg)Q0&VA`wf9(SO3wjr<
zuI!K57ZY%OXQJ9I)msUbF;!pkb{1*GRc9-m)+u<Hp>%IafqHV*PMa&%S9T?8+%l}y
zNY*VdDO*~gnVh|IPnd1-ftZ6awpVP5cPCnunU$HBnU<|d)u_<Ab2$4@_R;Jk*|AkS
zb9d+N$_=Xiny2|-S;6vxn3~IlZwsAjuR0!z*^~Gv<Eux}^1X@cQrD(x-qO9JcgN=b
zih|mj_=i^t-xcPk?+x1*b~vUWJ?p4u#rjl(J9~43tM}#Z$z55H@bG&<Vful@{fYY$
zH>7Ic(z>-Jb#v;b)QzcH6^}EHXUA0?%if>+Bky~jLCv?kH3h2+Ru$wvsL4JOV_Ehj
z<7vjvytM_^4}TO~EnHc2xTrSUs%&fOvy20|>k0}M>lfHvIheRD^?AmNjF%Z_vQ_S#
z$PTGKoqZ}hzUpLlVpT%bq1=PHq19p4cK3~He&rd~Y%JJRu%Tdmfnx2?f?ox{3+igF
z72YhoQFy)3_|c&vyW-I6MipnX59ew>Fs}KX=k(}Ek$tiIy+eui_y6Q2K73zT{!m-d
zOwmHoLD5msMbTB!L(x;wN6}X?Krv7;L@`t`LNQV?Mln`VT}eYpTS-SrQ%OrnPf=gd
zK+#CiSkXk$R54C5UNJ#2Q87s|Sy5L>Pf1_NUdchpQOQ}!NhwJwM=4h+Pf1HLM=@C`
zLn&9$PSIX5Ptib0NzqVARWV*kQAJ5bSw%%fRYgrjT}4AhQ$<TfLs4DPOvysYTuD<g
zQ^`@qNyS;kMa5OcO~qZsL&a0YOT}BoN5xmgPsLv)KqXKmNF`V$L?u)uOeI_;LM2iq
zN+m%_RVi8}MkQ7yP9<I?K_yWoNhMh&MI}`wO(k6=LnTusOC?(+M<rJ!PbFWaK&4Qn
zNTpb%M8!!lPRUs@O(|U|MTvoE(7?dR(9FQXz`(%5(7?dTz`(%D(7?dPz(68y;NxOo
zVB%(AU?3j<`!B`tn^~FR-+v>9-^{(+K#uO+4<fA@7#OS>B8;6F5*S<<R6INw7#K*y
z8cf~{3=Ej~KXWL<f97}w28MWs^UUcC3=Fuj!jWtSM!y0E1A$@&28Ln=7KRdr!weM+
z3`kgkp^|~2VFDVcV)*~Ri{bzOSqw}Jvl$qW@PFo|3?J;*GcYjV$E*UI7z72kF$f6k
zU=R@4#lXO@i-FN$4+GPagADu(M;ZS8zrtX^aE*bP;RXYb!5xMJCmu2|Fg#?iVR*{G
z!0?nIf$0SU0|NrHGa!fWYX<)R-x<sk{xSSxW@ltzAQ5wLFh2M%%=rJmGUI<{T}B25
z+F=d`Jw^s{@Bsrxh5}<oCI%Bm1_l#G0S7ZiHHHbjThu`5%aU>Te|N^>!vT!pxlxS%
zyHgq8ye?q8^SPRlhq<1S>re~h|KF1t_x)bLSod=c<N2^{jQ{^1WBl;_BIEDFcNqWg
zf6e&+{V&G<=Il%?8+n-i|CeF<|6hmc|9=~%`Tsnb{{D|(`u{(J>HptyCjJApO#jb!
zGyVTRo9X}m)lAwKHZlGGe~9Vt?+Z--|36^*|NjHid*NS9|NnC_|Nk$=T>oE_`M<q6
z^ZMT|%-`w*nR)(1GXMXd$^7qs1@rIvHs=5Tr!oKjy@dIH{buI>e-AN#e}94b|NjTf
zzw6&IfB*M~`F}k(%d=n+maqF1SpGlOWvLf6XZc_3!t(EbFw6b_Ni6n;*(}xRWh}q%
zx3K*GIFaS|`FSk=<yW)(`oELq&%a|V`~P2M`TPF~%l-OKEVutNuzJ>Wv0B^`V%`5u
zp7sB0UDo^WtXTK|^<e$^K9u$Qw<Ol}OR`!2|F35Ky}y%n|JP}(r#~%V{l9-bYv{Qh
ztarX2Vf|Qtf%U%MZC1Pb=d54%eP*ry&&2kBHb2|%|8i{k|8>~@|F>cL|KEr0|Nj^^
z;g&?U|N9Hr{{L@a`~JV5t^VjNw*UWEvHkzQi|zmSlWdMIXW72Lzs>f4|0}lt|9`Q~
zXJ=+V@Q;W6|9xrp>i?ST|G!(X*ReXVKltOx{{Md@`@jDg?En8)u-kRiv;Y6!&;I}4
zJobO>E7_0y-@^X?_hI(`KQFQ$_<x)I|NB?$-~az)zki&S<NtqAj{C2bIR1Y#;Q0C9
zj^p89PmVto!5r`H6FBC*&F1+1uae{Z{x**N|EF^N`MZci{`)$P`X9SE{{KJ4@xSp3
z$G`WFIR5W^&%yuW2gm>a9Gw3Hg*hMmm*f2ZUysxLhXv>V@9v!c|A%w_uTSF?{9nNN
z|9d^>|Ns4*4F9Kd{{O$6vwr_p&VT=paQ^>)h4cT%hn)Zaf8^Z%=O5?)=R92X|E0O^
z-d5+@|Id`G?!PnF*Xe#-fB(gBT`x@I+IYW^YkzGW*Zuk)uK)k%aMgcX$#wVtcCP;)
zk8u6}e}(J+|0i7k|9|27|DT2X|9=r~`F---|NiT7*Z;HOe)Zpz`~Uw)?*IQYx&QyK
z<X-*1jr;%qY25$+FXR4ye=GO@|3|t1|G&!p@c%>Z|NlR7|NQ@-`~QD_p8x;ldH(;`
z=h^??j_2=xU!LE4qj+rNQh5IVFX8$ByP4<D|A{<*D(CS0oV}dqf9+PD|M!pZ{J(#h
z=l$~sJiq_H=P5t`o5yr63-9Uwg1n#q%k$R%*5%#*--cHz-j%oTe;}{@hiKma|Fe02
z^Ox}+`rpWV|NjKuwEuH>f3IK3d-(rW-v9rP^8UYmnfL$y$Grdlf9759^@sQGZ!W&J
z|Dt^N_bc=L|8LB9|GyL8{`vsE`}^bg{=dxT`|nxC_y1iBUu=9o-@o^B`RxC%=KGtz
zo$vqOV|;u5U*<di{~_Ps{~!3~@Bhp9)SiR?|9=Vo|L@iLzu!0I|Nq~W|NZqK{{R1z
z`2YPa;NSPQhX3E=4*vh~)A(cmFXsQBzmfm{zXSaDKcD6QfBz2u`P(n}AOHW#|K~T8
z!1`}|0{{QZ3H<)AEAaontw7^{cY*(Pp#uN^rwaU6$`|<muTG%;f3Lv*|8oUwFDw=K
zUB6l2@Bc#r_ubD5{QrMf;P?MG0{{R25%}-MF8KeyxZv;qYJ&CuO$Gb!I||<a>o55K
zf4tzI|G9$y@7D<aukRLo|9_U?|NpB5@BQB)`2YV2!T<kn2s-|MB=|S~z2N)*{{;7c
z=MkzuFDbPDzlPBN{}w{;-@6IT{~sds|3SRa|Nr?y|Nqwu{j2T~dhma`(EtC-g}(pa
zCiMURF(KhU=Y{_Nzb~}^_gkUgUEhV6{xb;w|1Ti?|G$Fpe|tUQ2mdXF|Nr+C{{KHx
z`2O#7;r;*1gxR0e3jhD#EByZd9O3`(R}24l-X?tD{{i9u|1Svt|NlVv|Njrdr+@qs
z{{Nd(<okaKk^lcSMBe{57y19+UF84&a1r@mNh1H>7mEC!UoZ0if4|86|MNtC|6eQe
z`}b~<|Nl>m{Cj;vr2hRgkze0Gi~QfqDEfaszv%vI8PV_mv_!xEwGe&#-%a%2zYx*$
ze-cFh|1S`&|5Gda|9`LO{=c(D|NmYk`d@y#=>Px6Mce;f68-=Gk?8&ZA4M<!|0nu?
zJC9iTe<`v5|Fy(^|F;zT{@+9F_wO*Vzn7E5s{a>={e532cK>gW*uVd?#XkIBF82Tb
zb}{BX`^5hLKPUG8-(9i)+h2?E9C$DGfBs*w|NnW#|Noa2|MOp4{QrF`ab*Tu@jw5)
z#sB}07XM$LCI0_+rFcDalQ_eVcJcrJr;Go;w^aQ9|E=Qx{~s0q&wO6|*Z;fX|Np)b
z|NsAw`2YVr6950pNbC<(lTbLKCGr2arNsaLo)Z86M@szvpDFR%zDy$LL9N99|Gg6b
z|Id~9|7*2G{r_DO^~{GQ{{6osasU5AiSPeENc{iLAo*XMNAk~qDarr;wIu)lx01a7
z-&4~0fxqPc?{Sj<|K~~m|642h|9`LK|DUrZ_y1odx&HqSN$LMbB=7fMki1`iPxAfW
zH<JJV|B?LvpGWHdZ)vIj|Fxy=oi~??|L-dG`F5bx|2J_`fB$4l{r+Dib>FvD>i_;J
zQgi<=l&asqUaETk9;x4dPf6XseO;>l&l9Qt|G!8*{?91=|G%L0|Nn~8|Nk3Gv;VP@
zzW?7-`v3O`>Hq&Tr1$?Xm$q-Jm;V31U;6+5`O^RYub2M+f4{Uj!x8BN|IbPP|9?;V
z|NnQ=|NsA!{?E@P!|+Ey=Kp^Mng9O{Wd8qmkoo^VK<5Ad1eyQhIWjH(%VhrlZ<DG2
zKUL=c|D`hj|8JG~|Np4WfA5PjjE}F&-2eYf=KuY#GXMXx%KrZ^DqC-_B<t~8TlW8d
zYuW$*y=C|RkCJ`=KU4Pq|4Lc;BaO2A|4)$p|8KtR|NrY{zyIDV`~Sdk+5i8q%l`lW
zT=xF|Z?ZrCv&jAbFCzE<kCNQ~|3-4Z|2xY4pYJdC|9`yPfBRgyfA6d1{-5uZ`(Hmp
z?%)6Aa`o+-<o5qRDEHt0oZN@MH|75Se<>$_;Dg-%{|xf?|MSat{*#pd|5ro)KdX`a
zzyFT%_x}gT|NoyLFZwf6{{R0<`RV^!<^TVmD*yif68Zo4H_O-0KOq1A{{?yZ|99p8
z?|m)*|KBh9|K%JCssBY3uHRQwc>i8s;s19#g}eWK6#iF7Dg4jRQ22MhOriW=v%>#>
zlN9dHpRe%Weyzff|GN~9-#w~uzW$QJpZ^aO{@;D4Q2+0b!v6PMiqG$hE584$s`&rE
zsp6lH4vPQx`z!wW9i#aFe~#kc|J92B>$?<x{GYD)-+rm$hyNQD|NlRzSpWUJ;{X5m
z761Q#ulWD}f5rNLyh{J&rIh~u)lho>-(2bae>bK5|3j62|4&h>|6Qc?<5i8){r}xc
z|NqWXs{6k}ssH^JrR)C>DSiBZUg_W8yGn<jKUcba@3WG9{(q%Eyd28)|HYN}|4~ui
z|K3RX{{vg)|NniJ`~OENSN}^_{=d0I`M+(W@}J8+%ID|LP~QH1sdD=7jmr1W?^FI;
ze@40L-F4-i?;k7wum7a{=ih(jfB$$@_Wzer*>zrBCI7vN%K!CFD*yinsr>z)s8aJk
zPv!srI+aiVyH)o8pQZBn|8kZ8`?sn5|9?#7`?t#~yZ=8_dHeaT%6|J_Du4cSsM;?O
zQ2qa3LG?eQrs|vjW~%HTY*lOjd#gJC4^#dBKTY-j@nY5g|C?3iV|!Kq|DUT`|7Vrz
z`u*Eg=l?&d`mO$w>i+r%s=xogS6%-7x9a!#9BTjnOQ`*?S68e5W}-I#y`$RSzy509
z|HrBQf1j)N`+c?A|Nq@;|LbR|z3*S9w)g)Qwf+AOtGWI^r`G=emfH9KFV$|${iJsN
zKZAPxe}47<^JUflAJ<Zszi+1g|E-Jq_WgnC_WR@1|NqNXfB(Nmz4(2H`u+dY)$9K*
zRj=n<r~d!{KK1{OC)EG{zOMeC`Jwv1zwg!m|Nf^g{eewm-(dlb%XQKk2LDwx{@WXC
z-2d;S@&13H2K)aQjsNx88ascNYwWad(zyM9g2vx}^ECeLU!(E6ewW6-`zJL1AH1xw
z|NkS6KlSf5{{Q=@asDc&=KsGEn*aZ6X#W3ip=tixMf3mv5Y7MJlQsYUFV?*Oze%(H
z|3uB-{}*Wf|GZA~{{Ow2|No!W{Qm!r=CS`TH2?qqq51zmhZg^T5v~9Kl(qi<Gt&D1
z-%0ELW`C{!|Kqj%|L17^|6il^{eQRCzxWwi3=D*^!}|qVzy7Y(GXA|o>;3=ZTJQf~
z(|Ym$k=DPu_geoy|JC~cpI7_;KN;=+KQy)9|F_Wo|KCIV_unw>@BdS^qwW`I|NK>>
z{quOc_VK@ywLjmTul@i3dhIX&c5DCNe@gq`|C`$NtdF$+{Qsc+|38CH{R1wY|No_Q
z{<Ev<e0Xo5v+tj+j&Po<&j0_RI`%&jbpHR#*ZIG^M(6(iE}cLBXXu>&zf5QU|E)TI
zzaQ55{{EuQ`|tO4?%aQ^v%mhQPW^ul-R=8Db^mNv)ZKnhSNHvWYu&p4p1R+DhU!-S
zNzk?bpQro(f1U3C`d(dGrb)X0e=pSi|9_+I|M~;E|EtgG9{7D-_y7K9y8rHf(f$9Q
zMejZ%j~)jDuin4^GJ3!NYwP|0Z>{(Ly_a6&0zbX~|Ks%j{m<3=|G!qR{(q0&|NnFJ
z?sqQJ<M_8u@BjaOdjJ2Q)BFGbp5Fi8Z}tAa|DzZCfJOiRe-Zut|CROs?>Ex_|KCaf
zKd-O;g#Y3C|Np1!|NmdE|L=dB{_p=&^{rpb)Bj(;R{z)k-TMFkpVohT|GNJF|IhXR
z|NpLke?E)B|M$WM|9>kPJpXTC@bAC9!S(;X2LJcR7`*<UW$^!hl|kMA4ukXcQw{$9
zUt+ND|0aXq_WKP!{5xgv|Nkw6|Hq#j{Qv*m;J-Ap;qU)KhH>?Bh7bO08vd`hFwCoW
zG5lX2Z213wvf=v=d4~W0*BSo*-)Hzsf2QHS_sb0L|KDmT_h-N1|NrL=|JUC${P+K@
z;s5`C4e$QvHhTYG%IN=oO{4$+Esfs)b~pO}H_YhG|74?c@AHlR|F1Wa|KDTu|Nd;F
z|MDx0zWv{3#QyJq(bxayj1K?5W%U35E2H=Kz8n2N&uaYdpRn=!--^cZ|MiW}|F<>%
z|If!b?ti55yZNcc|Na&m|NGZy{Qh6RF(bnS<C=Z5jsMrLGX8&ehw<OP$Bf_qzGD2|
z{-JUC|M$lA|Nj|(&*wJz|6khV|9@?h|358F>i>I~{GT6Y^8bID$^ZXlCjWo8n*9Gi
z)#U&Gr6%A1Z!!7*|A@)o|Cdev|9@=q{{JVF|JxZ%|Nj>--TYtH^nb0k>Hq)MrVI>(
zal=1n)Bpd2O@IGQH2uH7!1VwB2GjcQeWw5a&oll1f1T<7|NBh$Z$EAN|KBas|Nmc^
z{;&UO`gc8>*?&19GX@4!{NcB(+5P`IX8-@&nEl`HZTA0vwAr738D`J_mzn+F-)eUM
z{}eO%FZ0a)uU}*K|NkDd|NbY<>VIE1`~UyB+0Xx9&HnFaG5;&eZ~m`d*8Kl-ZS(*8
zt<3K)cQg0j7ifO(cbxg>``PCI{#Tj*&+jn*|9^)0-+#-@|Nq`<{{Q_E^Z);^nA<bl
zGG~C{ANS4we|%$Zf9R|Ew|`6)|CqTg{=b*9`21hPqW-s;#s7b<7WV&xEx!LvwD|wO
z(8B(Iy+!}~Zj1l_XIuPVztZCW`Rx|}*B`a`|M{}T|NMs*AO63!u>b$tV*fu*%m4o+
zE&u=5wEX|y((?a*Ps`u`BP{>7r&#X4Uu5}5zSi>p|6a@df3qyt|6gIb|KB#t|G$n{
z{{Da2@^Ae^%m0txS^oe3&+>mfkJaA?VpjkEt63HQH@5o!&&lflp8zY@|It?e|7TnM
zudlNDU*Bo<@AfpS|Noa+{r|ts>ihd6R;T}8wEF-5q1E62AFTfWXRxjp=CXe9U)1{l
ze^u-M^(NN;|GQZ8{`a^3|3BXP|MxuW{ha02|NpjG|NlSD`hWdW>mUC&S^xci(E9)V
z3)YSGH?80Ae{TKv|2OOJf0%9T{|nmu|Epjl&!B3<KqhXm(Xx5}+rq~FzN^i?-$6F-
z|0mk~x6ilv|F_P@o}tBt0fr0OZSMb{W;6faVjKBC>ujR`@3xWubIj)d@2fWd|39_)
z_xrQW{{Kw2|91=6{;!v}{r_Lz_TP6~+wc3mZNL7HwEh1-)AsNEa@+sk+id@HPqa<{
zKhO65_cgY6|L?Nh|No@zjQ>|`>+2uc{(Jwy_V@q)wtv6#+Sxr2wafpnZ1?}Kk=_6Q
zPIlMd``i8BA7}Ubf3DsC-!*oB|99KTGfc2!fZ@;6?B4xfVt3zuqaDMJt#<GB9kl!Z
z{es<l@!NL)|G&1||Noa={(lbp-M>Zc|NmFDXJSyZXMo}Z<$Cu2|J&LB|L<o%|9_1A
z|NlAm|Nqz6|Nh@?|NsAN`_KPZ+W-Hz!~XmK<M#F6uiF2=|HS@3{|9>p1|+=ttNria
z%nsL|^E>?iD(mq7zplf-dTWRO^<EC&kB2$@zn|)`|8KEF{r@J1|LZ3>+@3w#;d{+;
zhrhSCIM}~C;86eetV6=;D-QqdA36NF_s-#e{2zydzu6qW)(boC-688}Rjuy$@4uO2
z@qcH>|BnM4-+zp8{KcQ<$iRRdKloqh`0sy%<Nxh_j(^|Jas2;$mE-Hz+Z^rx9CG~s
z|B~bB|MwmLzklcWU;ek__y1f@|G!H*{r|7&wC}H()BFFfPIbS7oc{h#bo&1~-|2sS
zof88CCRW(j>h!;Uiqro8i=F=e+vN1UVy{#E*Hcda|K4=^`SOX=|9_vI{vT&>{#(!I
z{P(}C^Z#ru=lB0Do&Wy#aQ=NS)cJdSk~2d>it~QMJZF0bw4q@zx5Sx&0fC?YZ*rEe
z>vjJAZ?<zi|1xI=2Ew@N|7Pd^{|`I=|9{!}|MUmW|Ng&s{%`-+nSlX6R%Qt8eA@g*
zqPbRtk-yKAiGks`>mSgNXk)Fwe+CAIa+PjZfrBqtdPQ16qB~yfVG-!%Ve0h#^HPzK
zfdM*x3R29-z)+^%SSxUznSr5P4pr9*gs#^N3=9)M>gA#8_bXvhzZGuFZkT#ysCs`j
zO!XNE_1!S_`cU=vjWN}8Y=)WtI<B`wjRE8yU#R-^^D)(Ttbwc7gQ@?^z)+^xSS#@U
zKLbO#1gd{Iroz-W*ZyJPZ+XkWz|igbhkttjQ(9-}uWna?<_G+pu3z}KyZ-9-{c`z7
z=b`3DjIEdWTMjcYFzjFiDfj(y`9W{M|1`zWUm#_wp`i>6{M$o+H9lIk>i_@Fi)ja6
zGIkzfJOwfktiae9rr^vOr~)Pw1^oOl1s^^@6|f*H*a9{`?cghp&V!5>(>i^Bf!!<s
zGM({IFN@Hw7bYwM{M%Us(mGu~b-VKLZx8(hQr;oZ?aJfO75b?|U<VTe1H)^6!vn9m
zcl`hV|Nm<iP<Wj@-1!Zh&QyY%Yeks&`#`aj#nkO85CGB{(Cx|*@S^zd|NqTL1Ue6N
zy8ZzLTPdgEf!8?`K>C|&|1gzsy;%92nE}l2cID{~<#FobYIxYtaq7S;wr*dZ=7UUK
zk`0d=I&L0#$=-39<8+4v$ZVLp`VNk6SDxkrOx>Y8&4-w}q#7RAcS!7D2051<;#7w2
z*c&GggEJ%=!C=7ipV5HHfbYMOg7kl>|MLGC{~P>MQ&3e1_?PlO=-+mRkbj~7!v2N-
zi}^3CVE9i&!T8_b|0e(Z|8e~1{BQct>|gZ%*#GALEdGfYh#FY_v-&4sAZTFy&*mSO
z0k?teKf8Y%2Al@={~Z4D81Nc6{&V`rXTWdZ{LkfI<iDtY(f?xp#r})?C!rvzAfq6w
zAZs9JV5(rG!2F->Ki7Y2h2;#)2B%fet8P}^q<T)3O^sFUxau+0g{liw_p0tuU2Mdv
zXs7V^zy1He|2_YC{qz0j_s{#E&%gM83I7uRasTK2f1Tkw!$t-vC7J(n|7HJ!W(*UQ
z<dlMx5|xtvCI3tLm-;X5pAC4nbg7bplDyJ>rAx*ajkT5ZluVUOlpNHY)Ew0~)g~%V
zR-B+XNpYIubj6v9GZa;ol$HMe|NEc+zs-M^|4SK!3>GmgW?=oV@Sj<cQ!(>j*1zn3
zSB>Ww&o!QBe9m~Gai4L&@e$(<44}Jc;{sy?69bb2pNGCIIakxD+N9d7+M?R3+NRpB
z+M(L7+Nav9+N0X7+NIj5YNKkRs-vo+Dx*3@l|hwBb*d_ls(`A9s)TB;YMyF=YQAcK
zYMg48YNF~R)yJw&RiCI9surmhs|x%V{4exh_`k@1(f?xq#s5qEm;4W#`%O_yRZLS%
zSIkh%R8%xjGEg>9F;F#7Gf+3sFwivk``;z_?|;SrO8=GrtNd5}ul8U4zs7&f|62dG
z|LgqM{jc|5|G&Y1!~aJAjsKhcH~nw+-~7MDf6M<?{~iB3{dfNF^56Bp+kf}}9{)Z6
zd;RzR@AKdHzu$lV{{jC4{|EgK{vYx`^ncj@@c$A2BmYPJpU6Ckc{1}9=Bdonn5Q$(
zV4lf5i+MKl9Ok*q^O)x|FJNBCyqI|j^HSzz%*&ZqFt23Z$h?VpGxHYat<2k)w=?fx
z-pRa+c{lSO=Dp1OnD;XuU_QuvnE43vQRZXJ$C*zspJZk=WHV$p<S^tk<TB(o<T2zm
z<TK<q6fhJt6fzVx6fqPv6f+bzlrWSulroeylrfYwlrxk!R4`ODR5DaHR54UFR5MgJ
z)G*XEyvcNu=@ip(rqfKIcpo^-;1}t~=*R5m>=*0T=GWu5%g;VAH84ByK_EjAW6<m%
z(O}2mnBWt^oPOMX9DZDW+I|*(4+CBOJpAJQ;{5vj7Wz2^G6($%at=Nj{5V)X{B?wA
zq<Um=WI%Laba3>KX#N<b7>k&~n7gr0V?V}ziv1k>FSaP|UmSP5aJ+Alpr3#rub-};
zfuE(Hx1VK9hu=iMseY6EruZ%LJLq@7@37x7zvF&q{Z9Fv_B-O|9OxLB9+(@L7nl<`
zJ@8u~TM&B?N6_z}e?k9)#DXn@J%ZhXU4!F-TY^sqp9(%3{3b#(Qae&BQa3UrS};Z>
z#wsR1=1XjK-2XU{c+vR7@f=BJN#03*N&2bnsnb)Jr0z_8n))G)BV8k1Av-C%GW&G)
zmF(Nu{5d8$*#%lfW<}OT?nRMB(M4;Dx{D?K#Qa44MEoTDto?lb{Qdm=p8DPJyW)4%
z@0#CrzsG)0{BHW)^K%V!3G58)3S1NTGw@g7k3g=V1wr$JScBPu#e-#o@B4WLdj=;4
zCj{pQ=LPQ$ejofK_;c`^;CI0<gI@&y3H}lMHTZS#v*1_3pMpOIe+YgW{5JS^@a?c$
zVPcVbk%o~ak!6vg(aq5|F)w1D$3BZ?ieru|j;o1djF*TPk3SmEl@y#5k`$B_n6xzY
zS*l*TPP$gQcDinQa`xG5!5o1ciyX%sha9_{^+hekoyB)bo|Q<H%9m=CYL*(58kQQB
z8kcsL)|Ra++h6vs>~{I1^3UZ~mHR47s!mtQ`N{hQ`33uB`pxuP;<wCiso#G;PJc;%
zE`L#fUVj09L4SV#Pk!J0e*1m!`|S7EkI|po-!srX&@Ip-Fe9)qus3i+pm>mAkWdg`
zkXX>-AdX<gU<L3l0nQNq5S|dO5P=ZJ5bh9`5Wx`M5RMS$5WWz$5TTF<VfVuBh8c$&
zglmNBhU<juhiisQMoLARM_NR-L{>yLN7hDGMm9w@Muta6M7KwGM7KtFM*oTyi>Zvc
z7t0n`7FQC-A1@6)kAN?UCy6&nASpR1Iw>N_EcIpT3-G;bpVB_3ai-g*o1`12o2Dyf
zr({=Wi{-@Tgy%%&#OEaB1muL~B<4it_~!WK6cof4#TM0-{j4gk`B7t5-&Mc2p0R<s
zfu}*J!MLHmp|hd8p{L<-<EzHcjei<>nxvcLoAR29n(CUe+Z;N4I+8o;I~AuH`K|Et
z_4oI8_Ye1v^EdI2_7C+p@DK10^tbi5^0)AJ_7Cy5@pto2_K)#T@YnbE^EdO4^pExT
z@Q?EM3G@#14J-}Z7Pvi7HAp2$Ge|2)BWQKd%Ai$2Yl4)6i-SvpWkYmB<U;I1)I$71
z)I;1toI{L5JVKm8q(d}Ayh1EPtV1k9^g>KS%t91GY(gAD3`4X-<U@2qUWI)KdlL3K
z%qu)F+#%dI+&$bc+%7yI+&|np{C$L7<lM+fkt-tSMJ|q<896PoH*!hj<jAhbrIE4G
zG0{=c(a}B8-O>HgIx!A0jxqKzb}<uTCdN#O>4|wA%M;fh*B;ju_dSj!UOql0J}JID
zzB2ws{F(Uc@n_>d#=nmL5&tS)C`mA>C24xnw4{clvZT(W+@!9gnxwj<%B13?NlE!h
zGm`R>rY22JnwZp<WSMH6YLWUe^-EfOx?j3~dO&($dQ5s)dR)3^x?6fedT@GpdTRFh
zY^R*KoS8X|IUPBjIjuRfbFy-(awg;y<n-iZ<V?$%lvA72oKuujms66{mQ$9~n=>V6
zMov>sSwT%fZ9zprQc+@2LeY_;Lq*eybxO5M%}Xsxo66poJuW|3d7yHCWm(nln$Y@b
z4U-$@Hq2<4-7u?RQ$v2!q^9ns-lp!(OPvf|<~?pbp*?eZQhEz|H}|gYJJmP4e?$MF
z{$u?|`;YWLjGZ`P(S%hKmQ7eZ!E@rViDxDnP1BoZI8AGs&NMZ@Fu!8IZok=n^ZZu(
zt?|qEpX=Z2U+iD+pW{E<zuUjfzuCXQztq3OKhwY3f0}=tf4~1k|0@5Gz@Wg;z|6q%
zz_P%Kz`cQg1FeHBg3N=gf((N6g3N*(gZ2gO4hjkm2@Vbp3{DF!53UHV489h8CHQ)9
zaY$*%w2+FBsUZy^)gk2}Eg_Ra+CpkVCWI7*l!f$!%nC^g$q4BVsSW81`4!e2ULKwm
zo*AAP4muaLCR`@cGtxcMBhn=@BywNm?#L^VJ0sUcUW_~zc_H#_<mt%Ek*6ZpM{bV1
z6nQi<J~|~jIeL2ZtmqlhbE0QP&yJRg@rZGaaf{g=voK~y%*vS6F&kqx$4JCU#fim<
z#!1Hs##O}4iklucCvIxow773^YVqpvn(+<sjq&yIHSu@jAH@HS{~G^4o<Bh(K|jGX
zK`cQlK{P=zK|Mh;K|4V@K`co$$v(+0$swse>15KGq$5fDlMW^AOuCeGJ85;&<)kY~
zr;|=3tw`FNv?u98(#@pfNoSL`Cf!Qfm~<oQTGI8TV@Ye0&L!EUE>GQ)`YTl=O*oAw
zjV+BSjW3NMjXzB^jVp~kjW?Y;JvY5OeQJ7P`keIQ^z!uf^ttKN)AQ2{((BVZ)9cbF
zq?e}8N}rrwlb)4cl&+kemYtqmpDmmto%1;7Mb77(jX7s>p5|=M*_*R3XHU+foYgs3
zb1vuX$T^a;Gv{E=x}57dM{_>r?9bVq^DyUj&Z(R=Iq!4s<Xp>nkTbQQuV7L^SHa8z
zog&>Liz1Jr^rFn714ZYGZWdiHx=^&Tct!F2;?>1Vi)~Bimd-4lRoYT^sO(eOm$Ikj
zf6MJE9V#6wPgb6&tg5Q4`c?I>CZxWnzPp~aVOPV_hD8k<8x}UKZdlo{rD0XW`i7^C
z{~CFlHaE>}n%T6rX>Zf~rkzb2o7OZfZCc;7qiJ!|hNgW@+nfB_3fp9ZGCEH8o$J5S
zf3bh-gdGz$PS`f#_{577%cnL>m6_%+&3>BoG?!^k({@gKF)e6%-1PZ=YyH;wJ@nt|
zzutep{{#Pv{^$Mg`XBb+=6}QgzW*uz>;CKfFZdtvKjeSQ|D69l|Ly+afs+C!1}+Hn
z3vv$f3i1u|3Gxnd4>}%nGU#y7!64q?@Zjp;S;4o1*MuAhSrKwB<YdT>kYyp8Lym_W
z3fUX7D&%0uk&qK1>qAzDYz)~QvNB|O$o`Q3VNK!P;S0hShc6007rriha(HNDV5EPf
zUt~Ze=xp2nk&h!^L^4M`jeHe(EAm++W7O}+%;?3@%c7S=FN$6o%^2es;~(Q2;~jG|
z=2Fb}SlKw$IQh8RxCL>`;(o<(#OubV#&^WG#&^Yc$G6A##COIECCDZyB&a6vC1@o0
zCKM!OBqSxcB{(O5?z_rLNJ(%^x|1Z9%$fWr>1`5Y^1GzJN$km>(+J-uy-E6)^d(6!
znJL*m)irf>>fY2xsj6wZX$ooTY5HmMX&PyUX)0;o)BdMlPXCyGCH+GBoAhnz>(jrc
zzf6ChekA>3`j+%t=}*&lq@Pc}m;O0@L;B71N9lLdFQsQ?H)pqHZ_U1xeLY(~=VT6d
zu2HU5u4ArhE>Esuu3WBou63?$u3fHKu5|9#9LrqwT#H=IT)kY=T)tfG+|>oU3N{z4
zDOg{ywqQrWx`HJI21P|h`9&o~FN+=&JuKQ@e5!bN@uuRl#RrNv7fY4umim|al=_u=
zm#!{dQo6KsQR(8+in6w{_Ogz$6J^KB4woG*V=Vt!_M?omoV)yA*`G4@@;l{B6(SWp
z6}%O0m7bLzmF|^0D|c01th`ity0X5ivFd--->TXgrdrlohFZ>A_F9%&wpxq&zWV+3
zEDZt;ybXd4W)0UGo;KWSINWfg;Y`EBhT9G28tyebX}H_)rBSKrc@uLpYxCo#+fC1!
zSel<UF*S2GUuwGE^s$Mt`A*Z7ri)GYnl3lpZ+hRv)*R4Q*;d_F)#lrg-O<>2rIVwJ
zsf)R5UeAJ_lHTIpExl*^&h&lgf7bt~|5g9f{<r<F`=9i`=sz{#+=PP@4o~o&=r!@|
z#HOhM)4ZqoO!J+VG(B_r>FIB$f1b`bW5tZyGw#orHgo382*1sKJOR7`$^q~F)dExl
ze)ww!hy}0(*aXN2NCgN52nPJ}X9y4p&<ObGuNc4`AQ>PL@Y(;Jzixn5z(0TO0M3A#
zz$Jl80~ZCJ4LlQgEbw$-SWrw*NKkZ8Y>-xPeenF?xxx2?UxWyRGKQLm{t0;+@+pKZ
z^jC;T=*y6|ArC`1L*IqG3V9Zy9?Bm2H-tZwIh-Z@Q23Sb)8U81IV1QZ!y_Xiqap>P
zB%)-Z<fEjcgrnX>DnuzqX-26=@kDV(Wk*NEY>3_*y)Al6^t$M+(L1AeM6<*M#)QTM
z#Jr998}mEnRm_W+4>8|j7-PT0yo=S1(~esmw>EBhoMHT=_=)io;v*B16H*fb5<(Ml
z6EYL>6Iv4HC(KIdO_-9<lhB$lEx|qMa}r1L|0KU;yJY?3&}64%w`Bih&t$9QfMnZb
ztz_+Fjbz_spJb0z&(xWz2UCxxI;DB0`KLLj1*Q3<xu!X${YVo@7flyWSIn@;@W^n>
z2+pv~aLNeD(9GDJA)eur5tw0{@g+SV!y&^a!#P7M!!<)VLn6a5qbs{JdwaHWj(Uzp
zj#`dN&WD_=+^M-8x$U`WxfQwPxskb(b8~V#bMtbea!YbEb9-{Taw~INb5nDt<en<H
zQShYTX2FSq^97bgl|_Gweir>L`cd?~sIB;IF=xrU;s?dAitiPNl*WQjyNN8_S9-Mc
zc<H9n&82%w_mu7|Jyg1*w7YCW*{QO#W#`H?%jL@z$~DSgmK#*4S6EcYR+v<nSEyF#
zRwz`+R~S`<Rt8iiRK{0^RmN4uR)$wbRX(YFT=~56e&w^umz6gvTdF#$ZdS2X3s!g5
zDAtPCa@TUzD%2{~iqs0!iq=Zi%GC1KO4dr(TGhwbPpLmzf3TjdL83vlL9#)-!M4G^
z;bQ|+<A(;;#<vY$8rT|tG<<I0X#Cs2)%d63eZ$+vH;oKU0!>;?+D#fwI!(Kqw3~yP
zLz=ysEt&(GJ)2FNO`83ijhZc+&6>rV9hwcBHJY89L)yC9R<%uTThg|&t*32q+nlz7
zj`EJij;4;<j>-;+E`ct-E}kyYF0L-|F5xb*F8(gTE{~q7p30tuJ&StEd)M?`>buf+
zzHehc;{>(|-}@OR{ObSG&phF8KkI}a{Zl7AoN#x-qX|J1eJA=%yfN|a#Oo99OuRX<
zd1}(M<Y|f1qNl}9OPLliEpFQGX^&>CnYm)tjajO*jb_`-uJfx3s11k-a1U?}@Ck?t
z@C--|C=2il2n{F=C<!PJ@DJb*$PdU3hzXn;_#rSWC_m^@(9NJ5L05wWg873bgYAPI
zg6)D22meWP3(X2m3v~&N3r!4l4)qE(3=IqQ4-E~~4^0WR2-ORX3DpTr4mA#S3=I$E
z2<Hyx48I@F8o?F87V#kbN%*gDrU=uB@8Lhg6(W-&&7vHmJfqU0vZ5TKY@(8)qN3cQ
zyrK%Ck4GPkJ`#N>dVln>XwDdp81|Tin3$N@81`7USiV^4Sg}~8SixA$Sdm!CSe01y
zSn=3Lu@-S=amI1xaogi|#BGb)8n-XbG~PTuJU%BrGd??hdi>1zdGRyi7sfA$pA%o7
zusESJVL`%*gwqLI5}qaOO*opcJ7H_WorFCJHxjNU980*Lup{AC!tn&DB<UoNqy@>#
zlZ%q4B`-=|np~coo;)LYRdQkS%H+=E=H%JQ*~u%CTar7HXC^O9UXwg2xj(rfxjH#B
zIU~6$IW{#cH83?YH9R#w)IT*MH8eFObx!K+)HSK+Q%|R!Nj;Yun--Opl9rK{mKK-x
zGwphibb4dP`iw;xlQXtv)Mu1sY|L1mF+F2LMsvoIjI|kU8Lb&pGUjHi$e5q8Frz8M
zD0^4->+Cn#+Bto>dvZVL-pt*U`!M%R?vvc#xxaE*^N#19&Rw5-F?U_=z1*L<J95A0
ze$73adns2cZ)@(Y+}F7`a$n_s%zc;pBKKJCk=#|eZ*uqNKFj@Cz*)#u__yGFfo)N3
zQDc!zv2?Lmv2d|uaeFaq30Dbo30uj(V&0MmCErTEm&lYVm8O=al_r%Il=hciDZN^{
zwe(c!+0wqUD`l6;ZkL&t+m+jto0VIXTa{;5I9K>pq*i8B=2rf$oK!WnN}*b#TDn@N
zTCG~LTCQ5JdQ#2wnyEEzwa&GLwR*LdwKla5wFb4uwJx>#wNAB0wT88}_4Ddy)t{+9
zSAVHqropShtwFz0tWmj9yHT^zpi!lfsmZj-yveM|vZ=3mUh|CRisnVl)0+1-uWp{y
z+|@j}xwCmeb9r-hb4_zw^YZ4<wygN$Z3o)6wH;~O+IFn%blb+Z^=&8Hf;;AQbabrl
znA9<?qqn2GV{&JIr&gD2mvWbCmtmJ~mwcCWmr|E!PgKv!o;5wIdsg(U>RH~C-ka9D
zuXk7P?Y{eck`s6*NKFu*pgci-g6sr=38E9^CMZncpP)2BY=ZOzkqIv*yq)lOLiogU
z6TeP;Hu3Sq=M&#fd^xdmYSy&UX~okjrWH&pnN~Kfd|J-51JhnjdpYev)%_}_8O$@H
zW<Q-%I<J1-(s{e*EehxjXbqSdFfpJZU|PV8fLQ?y=^q1&f=Yr)gEE8e1>Ft09TXM3
zG`KpnA#{0YO=wr>+|U`JO`&r_SA|XqZ4d1ZZ4TWWx-N8ns9or$&{?6oL)V0E46O_8
z3|$>MGn6-6KSC?QBtj*^Ai^+0F+w&%A>wDmuZV=m@~Bx+^-+_eW=AcLDvmCUz7%~X
z`f~JzXs#IU7{eH!*nn7*Sohe!v958paSn0LadmO0;ts|giaQc#6Q3KuGJaM3iuj8O
z4-+;eY)g2MAd{$^_$xs)@k7Gzgf9shi60aA62B#ICNd-nCCVpxCM{0xNj{%^Ao*qT
z$>d|nXOk}_KTf`o{4n`i^4sKh$z{o3l3yj?P7X@BmHaa~E;TJRDK$BDV(Ns{^{IJj
z1!*N|Woh|o6Vs~F>e9;7{-ym-lTVjT|CMny<3YxajO!V!nfEikX1vRIp7Ar|QpTr@
z#~G(H&Svmt3T5(Tp3JzFk(c>9!!Fw@+ctYf_O$Fh+3&OUa`ba_a`f{o@<Q?y^NjM+
z^StsD@>KJb^Q7~l^CI$8^1|}+@^tgm^78Xc@_h5G@^tc?^JMev@=oV<=1J!H<t692
z<Q3&*=Edhp7D^SW6&e&O7Md0270ML)6txsJ6qyyP7Mm1n7F(5Ql^B;Om8h1OmY9{8
zl<1d8m#CF!l&F@fm1dV_l|CxHUHZ86X6cR6d!-LbtIKN2rj<=D+fsI?%)k6?d2B^a
zMScZu6-O0!6>Akk)r_j?Rnw}TRz0rrtPZPos}86Rst&34t@f_=uMVu9U$e9(t~Q`H
zqc*fwyEd=3s5Y@Stv0E)ptiWSCG<-D)q3uRpoZ3l(8iEP@5aDJzedYOw??~0pT^+E
zl18B>nWmS`%q>5fd0QSdA8qDtIoSNZ`D62!=I|D-mJiK5EoYklHh*e9)ojti*TT|r
zr<uLwO7s2Z=(hW9H{0H}U1_`B_N47X+r75%j)NVCIyQDRcTVfH?n>wi?TYKN>2mA}
z>5A?O=yK~a>9XoF>k8{i>}l#*-?OJ@bI;zMgFU-@4)kp4+1|6QXMfL*p03{3-p1Z@
zy?1+0_ulHg*n6h;cJHy?-+e#&{`Af1*PCEE!El1b1fvON6PPA`oxnNq--P6esT0pn
z6qzJCNqG|IB)LhvlLRKQPZFFoWorM_?x_=}PM$hxYTwkZX?@eWr`1ktoz^z3cUsZ3
zmT3p49i4V$+OcWJr@f!{Y1*0TtTWhVaLjl<<JFA!GhWX4G~?}zbu-t_JUs90yo>Xi
z{MH6+4cHX0IpAo(zJN6W+XHq7tPeOIP#;ttR2y_Z=vmN{phrQEgY<*%hrS5C9QrKu
zT<D$9<DnNrABR2(eII%&^kL}H&|{%bLr;bZg$swrMFd7fM1)5~MTA6TNBBhKMtDUe
zMS#w8OOHGlbu#Kq)V`>_QG22`M;(gV6qOm9AL|oW8Fw=7M4V83Wc-@=b@5V({D~fk
z@`;}lq!WK8FeY*&`X%}#x+MB0+9jGKsweU$vL%`)Dkdo<38&bl$fand=%(1F=%nzc
z$fSs*@TQohh^2_9u%+ar&QINtIz6p3tv#(HZCYAO+KjZ`H0JavnYo!!ndO-YnIV~_
znFg6nnO>P0nc10fnZcQrnQfV|naP>aneN#|*$1-sXJ5|#o4qJ+ect7~ZFz_CCgjb{
zJDztmZ)x6)yghll@>b_v%$t@sC+|q!mAqAX%k#G6`4vVMW)`LtdKRV^#uVlhrWN`W
zrWVE(x)o*=h80>B1r?bWyB6CQ+ZE@RM3sb=#FxaCIF{I#M3zLC#FUhkR+KW7eJEut
z`&9a|^jGQs(l4c-OYfE4FN-eEE>A0uD^D)3EYB*>DUT^nEzc-VDt}krSFxdDdc};2
zo{G+jnu>`PlPl^gsw(R%8!L5M_EySNNmVISiB!o~$yLp-T2NJ9eV{s_I<GptdSlJz
znyodHYb$Ff);8Am*GAXo)o0dc)fd&TtY1;Tq&}=6qM@y!rJ=B~ps}JcwK1=;xG}r2
zvazZ$t&z3Ky{W0Cyv4S~u%)ymttGp~vn8h`y2Yl&v?Z}6xh1nDx5cd`t}Ui5zU^n5
za63mkdpkq>zqa3POzq6=Z0%g_ksbFtu5{e&xYKc?<8H^pj#C|1J1%w1>3rOo-Br|8
z+?Cdq*;UZh-c{3;+_j*qu&cEzw=1bDuPdjkva7nwt}CM}si&)_v*%RL@tzYsM|w8(
z9PT;PbF}AS@BQ8vz3+QJ_x|dA)%&FPS?{Jk=6=rpe|=p2^ZPgTdr$D15In(YLdXQ0
z3851LCb&=VpWrvacS7I<y9tgHgeHnl%$b-qF>~U{iRP2SCs|Cgo#ZgdZc_9l?@1|>
z0w<YF@|@&5$#s(DB>PEGlV(hvF>T7UsngC*J3Z~>v{Tc*Py0RX=d^Fr!lsu@FPknf
zLvV)h46YeMGk9kFnek=D-x>dAY@WGs=9ZZcXT6-$G>>n-@O*{&&ja2CJPo)O@HXI9
zz}0~B0T%;42Am6c8ITnCIj}jXDabH*ZScQPhA`<c@vy(4B4KP{oMF6Sd|}^1#lqyn
zIKl+NzJ*GJi-ng))I~H$OpfS^sElZhsEzm=p&F?asS=qLnHl*o>RHswsOwSJqHaVz
zjw+457yUf?Vf54JXVEXBA4NZjz8}pSlN8eu+a4PommC)w7akW9cRB7_99O(sd_nxq
zc=ts6MDN7%#H2*fy(dwL5s9UVT1o9G5h)=lOHwLQ;!~<p0#njcOj2@Fs#A(m7p7iM
zy_UKtZAIGLv^kk8GN)!9%v_gwIrDVp?9A<%yE9j3Zpplmc{X!x=9$c8nTInMXL@G)
zWE<xg=Zob3%M;H3lBbz(m#>holh2>el&_TkKkt1WTfSkwMZQtKa=vK3cD{aoN4{46
zn>@z+PkCqZzUNIToLN{~*j3n4IH}OCXj0L%BA4QT;*^r)lB|+~lH3xO(ut+&WxQqF
zWt?TgWe>|9m$j7Fme-djmLIH`U$MMmbH&Pv#T9*({gu6ydR2y1tEyI3y{&p*wXk|>
zb$4}X_4Mkw)l;hbt9MklSGQE}tl3+$uV#1chT1u`du#XAE~q_KyQOwh?Z(<&wTo)^
z*KV!dQM<PGQtk2DHMIrx59%M*->;8rh-zqW2xx3*>~HL7>}srUY-)Vo_^Xk<Nu)`x
z$-C)f%l?*QEk{~rw#;kU)H0{#bjyyG11*<ZCbaBnx!7{5#lBsp-MU?=UA5h$U7|g-
z-Mn41{c{IX=a-J39X~q$cD(42>U`g^tgEMMUf1HT-mZmRle?C5t?F9ZwW4cA*Tk+_
zUCX<&dU|_$dM@`|?77sF-8-{)YVV(3k$$0m(SG6n#r+8rA|}L4NS+WmA#Os_gxCqu
z6C@`}Oq82gI<aD6`NWcm6_Xk!wN9EbY1*XfNs}kdnY3b3&7_Hw7EWC;b>-B>Q<qL%
zGIi#(In!oOJ2UOlG=}Ll(_5#1n=U>>V#fLz8)q=jWSz+~lXK?5nd@h5nDuOy<7}td
zU*>$9^LfsmdDip2=CcGc1pW^A8t^lKDUc(OGmtg#PGEabM^I-_Z%|jzhoDWtdSTXK
zmSIL=_F*Prnqk3VeqrHZC1GY^`e6oP4H5Gr=0$9dm=m!sVr9g#h}=ld=-*M?(O;u@
zqB)}9MZbxD8T~psB_=gyZtRrUq`3IF#JERsx8m-{-Hm%3_aM$AzA%1!{MPug#Pr0x
z#Ms2p#HPfW#Dc`^#Ja@gi4zi6C-x<-Nt~6qBymdOx<tLC%#{3;%9MF2n^HPbCZudg
zS(-9AWopXGlu0S;Qr4!dPMMXmCS_*IqLj@krK#nq6{+jeR;O)A+nA=DC7<;olQBy!
zOET+krec<G7FX8iOr|W>thbqhSpnI8*-NsIW*^J8&#%dE$q&p=%MZzK%g@b^&acSN
z%kRst$}h-I$)BDdk$*KWKR+QqK7W4Un!=5RD+<GkW*7MthZkp-beA-j)Ri=p)R!uh
zX_m>Csg$XeDV8af%_`ef_N1(@yuG}qd}4Wb`RR(I6}u`<RqU&{TCu0%LWO;mO_f8H
zZIyYIb=CT+byaJtH&!31-co(6`grxh>IKzjs!!ECsQps=zV>(RjoLT0cWYnNKCZo0
zd$0Co?Y!EXwV!H#)|S?n*RQXCS+CYGyKzqA+{Oisvl?eKinrRfO0~Xg(P`Cf6>b%5
zRc=*m6={9bqT2eug{`%zy`;UYJ)u3Vy`nv%J+eK#-KRacJ-Q>dL!gtrQ>at8Q?!$-
zb5GZ$uH#)tx~6uW?)uTSsq19dp|1U18@jG_o$cDzwX^GXmrsvhPfpK+o_jsddY<&W
z>3Q4psONFdot{@c4|{TZ=l3q|)$SAMlkHRL<L}e#lkZdPlk3~nC)+RGFW;}(uhy^C
zFVipAuiBqEA#Xy)gxm?`6AUKmPE?<0II(?V=fv)b%@dDK+C6Feq*s&HOnNfu;H1ry
z_Ds4o>G-4%lQvCSJ9Xn!mg#KM*{5?(Pnh02y?c89bj2CkGh}9Lp20O!c&5-yiJ5n2
zUYL1*=IxmmXI`CoY39wD+h@I-^?sK6Y}eT?v&(1a&t{v;IhT3v%6a?dotw8JB51x)
zphTcZpg^E#U_;=lz`KDHgC+-k4vGxR4yz2y3`+^C2+In~2ulqs49gG82}=qq3p*IG
zFXDK_(TKcA*=UpKis%o~d@)|}n-V7`u1xGoJe#;JabM!8#1n}INk>x-rkqaMow6t8
zR?3l-<0*$y&Zg{7xs-AxWnW53>anzwX*<)7q#aM&k!G7^k!6(?nU$Rtk!6|Xl9iN|
znB|@2o@JU9pXHGinO&aEnsX?BWB$VY!}&|{59Tk=-<*FSe`o%-{AKwI^0(ygD?C|v
zq3}}SiNdReI}6Vh-YmRRc)0LLVMg(slEo!6O6Hf$D|uAHQ_5RvQf5(RRrb8>Y1xAE
zdFAuVmzKY%xK;6{;(5igO5ZBKDz_@1D(|XYRX3{zYfe@_slHwPu=-{7v+Aog*J`-x
z1nW5Jr0bOH<mzPWIO_!JD(g4Zf2jXh|E^x6VRPfk#ubgf8#$UHnj)LLS|eLMS~FTR
zTb)}yTXS2pTH{)q+vm5>YhTpf+n(5=)oIkJ+Ns^C*tx26S?9B^UtO=eK6Wv5-|2eZ
z^{(q*7h^Y5_xG;1U7x$Yb^Yne?#b<$-1DW!rO&X>q|d3(vd^^7x?jKFqTjfGMgOw?
z(g`IKDkc<7sF_eT!DQm3i3*d=CjXdZJXwFT(&Rsrv?sGnmYOUuS#7f7WYNiblO-qb
zp1OS6ifOB+U7f}^U2wYCbl&O0)A^@IPmh_NHhso)gBcbxtY?_d(4Ap9LuH1*OpTdx
zGo@!L&Xk(@cIKm*A7}2EwP)7vS#M`)%$_(~bguGTwYeH|h2~1ny)o~~yx#e9=4%DY
z2Py^{1%3_c3u_3Q5Y`&j9@ZarHR5u_#fWne2GLs4D$!NZ<}n#Ddt!IR?v33Mn;qv9
zzc>D5;-SRjiO&*GCxT9&KbLYU<wnYbln*J-Qr@I|OnH>@Hl-=GIrV1RwX}w;DOoL9
zi?Zfq-OgH^RhKnAYeLq7teEU|*|)Mea&F{*%)g)iApds$ll<5D@ADh--{e2cf0=(Z
z|6Trv{O5)D3*Qw!D|}k`w(w2im%;~yrbTW=1;s_hD@!(%EGt=2;#THV=2P~nY;*al
z@(tx{%9od~Eq`DBz2aBJmx}iljFrnPS5<~r?XP05;jQ^s{k@u}=0Wv?nmaZ3Y97_x
zuen)sw??nduFkE_yw0f3xlX&zw$8B5wa&55q|UO=qt3L>zD~c+rT%mMpZdavqK1No
z{D$I&V~vL!cQqbrJkYqmac|?v#(j-18abN^n^v{9wAQuGX`R?QrFDJl?AG?y6|G&Z
z>1_wvFSc)Pztn!LeRccp_Fe5K+E2Gzcbav&bXs)UcCP8<>lW{p?3V84>Q?BM?Plo~
z=yvR}?<wy2)$_OKPtT8@-#sgOJ^Q@-Jo>!)T>9<$o%&t-?fdH|)J|xb&^V!KLc;{h
ziHj%Bn>c5p@8qV*8k0*WdreNA>^)gxa^2*d$<dPwCPz&UnS5&M>8WR?o|t-U>c(k1
zrd^vRGhJ@_g6Ws1yUo}(!*nL&tp79D&0alw)$Fyit>@a$?Vfjj-o1Hu=G~old!F5V
z@A;2{r-rQyyBTpK!Xi30{&Avl(wCG^DgRQ~Qh%lVPWhg)J@rnSTKeX!HCczVc4zI#
zI+V38YkgLHc18C3Y|aAif`9pJ1;6qI3-}9u7yc>ySNNl_ytuS@dCC3~(bBN8h_axv
zz2*DMcbD%e=c`;-nOK!nl~8r0>S&dAje3n%ja-d#jbhF7nvlBCy12Tiy2QGmy2v_@
z`k(c`>&qL;8qPMJZ{%t^-@3B(Z0m*AldT(CceU<pUDo=({Z0F)_6O~4otrwpbZT^4
zcI$L&cL(&a_D1$4_oelv^u_mu_8sW+?Dy?&pU^y^W5Vi*YbIWpIAwCz<Y|)^P2N0t
z-Q+csH%y)}dDi6Vldnv@Hub{Pt5Y9MyEE<PwA<6}O;ee^c>1#GYp4I5?mNSOhR+PY
z8NoAl&9IwkKht)m-pr*l`DPuQ#XOsBw*PFu*}k(+%|1E%@9Yz^56ljn8#^~)?t^)v
z^L6GM2QCe}7jZx0QN-8i3G?5?eM<bE_$~2kB10;F>VveqX-~86X5GrVoF!c#U!YMS
zRUlg+S|CxtR>WHrQM9P2qPVJfZ^@~W$0hBhZKd&LiDk#jB`Y^pW>;la+11$BSk&0o
znAbSeWY^`^Rn}$JW!1IT7uRj8-&wz-{zl`=*1N5*TCcV~X?@!Iz4doHYX@(~&-Q=q
z37zqsVV!ZEj@>cc5#65MQQdys{@rffk=-1<T)j1YMSbmkWqmn)RedFWA^m>+Yx}z<
zbWhkgaoxm+lP^xbKl$+F6O->uzB~Ea<VTawPQEeu$>i&kUrfF;b<4EJ)3m0mPfwhF
zXZr8yaWf)jM9<hW!*!<TOtD##vv_B}nEibAwb{34cg{_mTQoOoZqD3E^QO<6Ja5aq
zA3-a^wufyC+Y+`X>`8<}v~zTA^tb4fu|E=jB}$}<q)MhfOH)sOlVw+6P+(LbP*h!f
zz9gwEwM?y2t5T;@yYhI|w<@0+=NjLd_cb4C*7euc)zmfB`P4Hs+-gi~`rZ1oRj}<>
zD_a|P8+#j9n@ERfM@r|e&L5ox-8tQ9-TB?|-Pzszy}Z4heT{vseNBB^CZ3)sF@<@`
z-^mZB8caVjBWPye%oQ`WXBo^gpJh5rcn<HJ%6VJoy_lyzKYo7l{KWa@ffj)W!w!TU
z3KNOUi8&klC-GmRY^qG^)YO-0zq44fe`RgT_9>7qT3&Rm<Vs0q+2!(pn*O?;x;^#c
zZMtnzZOR==9f}?D9a)_@oqIb=y34z3yM=qZ`g;4i`{Mi8_wSmhH^q30=@hFe7E_F-
zXis@G)ndBkbffA2r>D<Ioe@6Mb(Zrihgo*B&d&;&9XMNej_RECbGOVrG<V0`x%1x7
zlbjzjKW%>ce49Y)z!PDo!cK<OM_-A(6zdoNKT#!>D?2eeuppwKq4-HjS7}~ZPTA(l
zgqrx8x`x_@`;A4N`JI0{8@k1M#d|0AP3}wV_n7E1C2&g66x-=`(+^KSI6Zqt=*-Yr
zzOydPlA7%~$8e6_9P2rk=U$&{GCya2*8C~+&xBozWk^y^)lSt)eUm1TeXHbDRZ2~A
zO=`{Lx@mP&>K-*(wAr^Ac64=5n9x5Vc}l{Rlqnh0^Jm1&jG7faD}2`FSyyIVoE0)B
zd`{S$r*r4e`!erh*vkl=)VPAevZAu<<pK2_^=2KG9Z4ONyC-!|>n?AS?maLuYl_o!
zkLfPck4-O_5kE_5cEs%XIX~zAnp-okb{_lu^7%#cKgWq>Cl}<@<keVr9OzuwcW`3S
zl!7URGva1mo25Ma%)FF>TjjI5%cq>2o-`|U)||RI-K+YJPOP0$H>GAu`J9S5-{*z&
z)K8I`r%{wO%W$^zJh^#AHUA9e8q70bHE=X=GH^C<F>p0-GjKQXFz__+GVnI=G4M6;
zGw?SEFbFgVG6*&ZF$gsXGYB_`Fo-mWGKe;aF^DyYGl(}xFi12=GDtQ^F-SE?Ge|ec
zFvv8>GRQW_F~~K@Gsrh6Feo%AGAK4EF(@@CGblHxFsL-BGN?AFF{m}DGpILcFlaPr
zGH5nvF=#btGiW#HFz7VsGUztwG3YhuGw3&%U@*~OlEGwyg$9cZ78@)vSZc7$V7b8x
zgOvuW3|1SgF<5J`&S1U427`?Tn+!G^Y%$nsu+3n*!489+2D=P)8|*RIYp~B?zrg{6
zg9e8T4jUXXIBIar;JCpFgOdiQ3{D%IF*s{*&fvVk1%rzQmkcf&Trs$6aLwSl!3~3(
z2Dc1u8{9FtYjDrtzQF^7hX#)f9veI{cxv#>;JLvIgO>)c3|<?&F?eh6&fvYl2ZN6W
zpA0@5d@=ZH@XbJkMU;h+MT|w9MS?|=MT$k5MTSM0MTJF`MU6$BMT13?MT<q7MTbR~
zMUO?F#el_-#fZh2#e~I_C6L98#hk^0#gfH}#hS&2#g@g6#h%51#gWB{#hJy0#g)a4
z#ht~2#goO0#hb;4#h1m8#h)bs%lTL(Dy1rAD&;B_DwQf#D%C1ADzz%mjVrx-)Ir-?
zocv<^z6MGKHwCl%@%Xv>_4-{8<N1{rQykCl*B;2{r{_1>?~va~zY~5l0{;Z%1n&%1
z2xpGei4=(WANw$MbM~2RksSLXLq8k87k+pAUiv-syX$w$k0(eb*e6&iTsd4kQa`dW
zx+PjD#yX}XrZ|Qrt|6`|?qob?Qb3Yuj#-X#j(v`G&bp!vMP0=^D!Urwrt$ep`0Mz8
z^%L>`=*Qsy-H*dx)}P6r)nCb9*q_D!i=UAH#z5g9&LDxHWkE{8^1;5rUBT=j55w+<
z>4j^Bn}pj$HbmA$wnkP*)<u>_)<=d#i^izN)WlT9RL9iC+>b4dYl&lumx?cmzZ!of
z{(O8)Qe09>QX=@w?#QHsq^P9Sr1z=sQti?$(=F1i)2-6&({0j?(<O4;a)NSVa{P0=
zazb*vb9{0N3*w5l6m2c)E7mHlFDtDItgmRQX=-SyZK`kbZL8~?Ibr&Q853qtm@+|W
zn#weVY0A^W{H^_y{5}1H{Zsty{L}q|{Nw!{{UiK!{f+(Y{S*EB19t|>1jz*{2CWTR
z7sMHy99$IK7u+9g5Mmyp6%rES8X_4Y6QUX-5n>zSAL1CI5uy^}9`Y{idDzo1$8gth
zpK#A`@9>~-wn&G_Wsx%?7er2v?2B9!IU%w?a(U#!$iC=F(Hb#YF}*SUF&#18F`Y4!
zV!C45VkXB-jd>8u6~`CX9oHGx6W0;f8^;<i8($G$7Jn)JV*G{pxA8CH-^G89e;EHH
z{&D=T`1kSO<A299Bz%dtN@`B(N$N}LPnwd{o>Z7rom7=nkkpvekyM^kn^crkl4PFx
zA@xh@=hRQBUsGMv-P0q}L(_fIJ<?;-ebb}Tz0)sbOXf)BROF=RWaqTxbm#Qv6z1gT
zWaiAu$<1lcnVK^vCoQKqCpD)!r!S|ZpsFCbXn)b(qQgbUiVha-Dmq#;wRn2*<l-sC
zlZvfMEla1APAzRLv#m5~nA$M2VM4>ChB*xrn);hsoBEn2Hcf8oYHDt3X{zWs*}uPk
z{)B}SmQI*AVflmw6AY$lOw*sHJI&Z{hJTHJtADM3gMYh!nSY6Yr+<roxxbJ9bpI^>
zS^ky&js6w>6a44+Pw}7UKgqwzf2x1Bf1dxmz&(Nc0!@RAf{cUQf((Q91aSp(2ipWs
z3Z4?&9#S9D7&0-WDWoGLJESV4E+jQ1C!{1KEu=RjKO`|EA!J5Ka!7heO33%HpJDmo
zMd7*O+2MuZ1>t4k4dJEX)#1hACE-co8R50zJdv)ETO)Txo{u~ixhe8Y<iW^ok$WN!
zM_!BE7`Zp{K;((YEs@6~lcH0jCr3|>c8PJ1Sr@Y;W<ku>nDsF$V%EgWk69eEHfB-G
zs+i?5b7PjqY>U|tvn)nDP9#n;P9t6^UO8SRJ|w;=zAnBt{$Bjkc-;iG1jz)W1nvZr
z1g-?}1mgs$1i1vA1f>Mt1c3y-1mOh11fB%W1epYpB-^C5Nn4UGChbdFm9#DCRMNVn
z%}MK%b|<Y&+K{v($u@OG>h4s|v_GjVX+minX}?pM)40=k(^%8~rV6GBq<u@{N^eci
zN$*RalwOuzojxPIExjeZB)vDiC%r0te)`1pnd!~xwdsxN73r1fQ_@wl8?x)N?`6y8
zOwM_e^E&5U&dr={IahMl<~+~Yo^v7RP|mKL!#T%t-sXJDxs-D^XG>03&fJ`aoO?M3
zatw0M<{Z!2kn=O=e9p_9i#byYW)!p*OfG0EXepRjFs-1eU{*nMK~~YVqSHk;icS{Y
zDY{g2rRY}CnWBqDONtj3uPt6yyr_6V@tWef#dk|yl-QR#l-iZ{l+Gw!U-r4|W7&tY
zuVp{V|CIkM|6Ts8{Cl}mrG4em%8IJ$s^3+mHGgYN8~Pj8H7st}(Xh2)ZG%G7f~Esa
ztD9yu&1jn4w6$q@)4HZTP4k*|HEn5H(X_B>Wz(UiB~6E$wlytkDrn1Z%WcbR3+uVm
zf4cv2|JnX){a5?1_ivi8Wy1Oin<s3TU^&fpn$0w;Y0lHm`XBYb?7zwXr2lFEgZ@|i
z@A%*J-|fHI|F-{e|7-rc{11T6vG#Wf@(el<bSTI+xF&dd@U-BW!83w)g)9tN8?rRy
ze8}Mt-sbHg>q4%DYzsLWax7#)NI}S+kVPT;LW)A}g=`4f8a^+4e)y8`p7816bHitc
zPYIt9-XA_Qd};Ws@TuWnB6uT%BOgZIi+mT!5cM(gZsf1Xzmb0;zk%+Jj{F{ZJMv}Z
z=g6;-4<i3Xeu;b=xgy#p=0ePkm@_fgV@}81j=2|eE9PX(@t9LF*J3WmT!}d!b0X$g
z%(<BRF+XB{#)8gdSB_JNQ;FLUw<K;+-0Zl;aZBUa<Mrah;@jfQ6D$)#5{eSy5?m94
z6WkL#6QUD*5*!ko65<n75?m4@64Da#5}cBplg=mcCUYl$P2x*tPJW&AGl@T$C;3Ox
zw<LyS;bf8IUrD0Lzmq;BIi@<Nu1ejXYL=#$W|U@{CX=R?rj%x!rk!S$CYxrGW|^j!
z#-A>belY!0`ib;i>37n1r~gR5k$xb3d-~Dz*Xd8v@277~KbyWe{d@Yi^mplx(+{QZ
zOh1?YJpDuZru0AQ$I{=XpGjYr{w)1=`mgkp>8H{Ur@u-+ovxAHl--iOE&E#bjqC^6
z3OR~78o4I9y1DYXHo5k>Lb+VIw{nbgS#l+Ft#YMu1#=m4WpkZ!8FM9a&2yP^`Ewm|
z*>e?gb#gg!m2x?A1#-6+%rDqiu(4o6!NP(q1zQVN7C07p7I_ur6crQ|7v&Y5Dtc1%
zqUd$e{i0Vz&x#%wwHBW#K2&_7_-OIY;%&uSi?<ZNF5X{!ym(*n;o@V(JBm*izbScF
zqF3r(>QTD9bX93(*^x4ia^`ZDa@KOL^6zE8%YKzTFMm<aRv}m+RKZ#yP{CipSHW4q
zTp?WHRq0ddUFllsQhBxVY~}gNYnA6J8>;H6E><yAGgepCRMb?~)YmlBG}bWJa?~=`
zM$}KN@2%fg&)&e-z~3O!VBT<};dsM?hKmg+8V)sFXgJ#NxZ!5QorY5lR~t??oNu_^
z@T}o%!~aIbrYTJ~oBlQZY+`SI(ZtYvwaKdab<?$`FHLWn9yWby`r5?P{JZH}(}$*4
zO;4I0H2rG&-1N4oysf0IrmeWmvBR$;y(6n5v*U6nOBZ`rQSamahyCyRAM}5muy?}#
z30Ef^ov?4h@d>9VoS1NB;^m1U)BL9eP79vqHO+6DTmWkTdw_6&Qh-5#bih~tFaE{>
z<^ehZ-~7M(iwDRAC<Lenm<H$v7zXeKL<LR>oE&&6@JQg%z!QPz0uzIxf`WqLg5rZh
zgOY;I2Jr>Y3swt#6e1of6#6{mbI6krsnGu+ETJ5suR{bwSwlaDaE1O3`5y8k<Ut5u
zD03)xC}TKN_?d8{h^yh3!gqxq3*Q^QCwxcvw($Mo$HOm#?+iZ}&KKzwDH$aer5mLe
zB^t#aB_72UB^PBJl@q-@dTsQYXy%x(n2?w^G5=%U#e9tU9>Wm(Ge$E`BW^|9y0}$w
zYvPRK4dT<|V-unh(i0pL7A15fG$c$)XiS)!(3~(eVRpjwg!Y6v34IBYNp4A>k_3{&
zl68_@l3kO{lAV*EBwHqXCwnE^Bx@!+CYvNjB!?tNChI1<CmSb6B?l&3B!?$EBzq)#
zrMjgaOFf)=B=u0LS6Y0Uds<+cP`Yrse1=qpXNFORafWq<cZPq4ScYMSOonNOc7|?-
zeuiI$ONL2?Y=%&VNQPR5MuuL7Z-!NdYKB6FPPTrwZnj~zNp@~_Q$t7gv+O6?FR~wJ
zKgxcdt(sGno1B}HTb9e4o0vN(HzGGFH#avwcVcdD?)%*O+_v1f-1OXp-08Umxiz`*
zxlOq<a`kgFa=UZuavO46a>a6+bE|V}b4zn4<lZT`TyU}AZo%mS%lbzJ*9$Hc+$(rc
zaHZgE!O?<a1;-0+6`U)0Sm0DtQB+=3R>V;JtLRJ7zoKtNpNoDMF&1AgzFGXV_*(Iv
z;^)PWi(eMsDZW&EyZB1+-Qrut*NblyzbL*}a=+wD$=4Fa(&*Co(ha2tOLvzZDLqiS
zzjRyauF|fulV!5y(&Yl>!sSBc%H@LPqUDn1QsqkJ>gCE6Iu%M4rWN`X8WnmK+7*fw
znia+sS`~&BA(hdU{*^J6!IeRkft9Z--&8)Rd{_Cl@>S)X%6pY}E8D6%t6HnNt9q)s
zs@kh=R0&kGR0~(LR`XYLRC87HRdZGgRkzektm&%hsp+Wct!b^1tCg)4tmUhfs1>Uf
zu9dG9s^zccsg0>mtdFZtsE@6WuAf#vss3>Nq51>$Vhwf;mJPoeJ~jMo_}akO_`89j
zk+Dg?NwvwiS-07xS+Y5>S+zN=*}mDaS*=;7S*h8n*{@l;S*w|&*{0dIS*%&5S)tjy
zS-)Ac*}d7d*{3<US*}^9*}GZ2*`qnQEvRi#+lsbnZM|(1+vc^kw@q(rYwK>C)z;d!
zv~6bF!nWmYQ`=^=^|j4yo6t6;&AG#+Be$cpqpYK-qoJd)qrM}*qq(E5qokvzL#WHW
zC%mV+XGzcEp0eJG-mSgcd$;vo?7Q6eum5X5(}e&1zx!Dx{OSMJe{I5p2{$L)n(%nS
z{RvMe+?a5C!u1JvCOnxCFwt+K|HP{kA5FY9F=kr)v^~=v&$vHJe|EiJK|oeOVnAF#
zLO^hUcR*}FQGiE)Z-8S!bbwbtQh;cHYe0NJW<Yj8azILeTYy7AUO;g`ctBvlg~05f
z+@PGGyr64AmxFYJ=LDCAmWA4c`i2ICnuKbF28JeunuVH%8iWRgx`y(E8il5Y`h{AC
zdW7nRT8BD>dWUj_vxol<7m0Wj{w@4Y_?K{oh_~T?!#N^;gmXuH4nH5x9`P>xarme3
zr{QnHABOWq{0SF`cplCe!4vT@{AKuuaNY=(h?vNPsEDZ0sPw3~D2pi5sNAT4sQ9SV
zsGO+asFbMiDCelysGum9sOTt<sJ<w>DBmc{D4(c;sLUw$sKBVOD5t2HsG{h+=!4M*
zq9bGEV!2~wW2IshVtHaUVtHfLVpU`LV+~@3VwGd%WA$R~;!NT;#%+n)8Mi5JbDUYc
zMf~jeY4P*pyAmcOv?c6I*pRR*;c~*2g!2hc5^g5kO*oOTG2wQ?_JmUj`x6c)oJ}~8
zV3eGi+?CvvT${W%d0z6`<hjYylUFDACFdu%Cr?PuOJ1K`nmi{tH+fxhP4bdt>*V>#
z70Ip1jmZ;}dy@;2gHz9@rluvPMW;ok#iS*rNu*b1v}a7nn3Iv4k(aS9V|7MYW`4%v
zj5Qf6GfFc`GB#!OXOw45%Bac6&M3-QmC=w<m{FH8J7Zc#cgBK@&Wt4)6&ckT6Ek`;
zx-x1r%(9KM&9g1CCua9&_h$EH_hf739LQaryCrvXZb{yn+?TnJa<}Jx%e|7zkar^Y
zLGJzBYq|S!pXT1ly_<VG_e<`n+`YMPb3f$n%DtL<DEEBs$=nOMpK>qf{>{Cfdp7rR
z?(W=Q1-ymd3&ab*6z~*&C}1i4Tp&>Rr{I49TcL0vL*b8tZw1_iOoe=fbw$-hHAVGB
zvc=-X?8Sn`62)A_9L4{O_>1L=JBq&*|0w=i%u>Qw^0%11grVeD@t@-V#XKe4C0~j;
zN>WObOV5>FDm`C%y7Wxx#nKC<{bikHm&+{6^~-h34a<$nP0EeSZOc{5t;<czJt~4K
zJS%)FyefPu)GAyn0xD7}(<?J8vnrD-vnvxTcUS(Z{89O>@_S`})s(6URi@SM)h5-d
z)dtl{)hgA-)e_ZO)w0!w)!Nm%)%w*&)fUxK)ymaVYG%|-t65xQT5DTtQEOIfRqI--
zQ>$6)SnFPES8HGERcl?VQJY*pwSG?h-1^z|r|M7FpRK=8f3f~}{rUQn_3{mJ4blzn
z4bBZ74HAv2jgpPhjk=BUjXI5Tjf#z;jp~iEjY^GzO%_eYO;$}NO-4;6O%s|IH?L^!
zZLVrAZeG${(%j$N*gUm)W^-xtl;)Mqwav}VJ<W5QXE(2E?ryGYUfR6Axubb{^M>a7
z=4H+8&Fh-WnrAgfwuQCrZ`<B>sO@0e(Y9S}8`@5^?QGlJwxjJ#+m^Q7ZF|}dx9x4)
z*A~>#*)g?aMaQC!RUNZBCUz|BnBOs@V|mBSj@cd4JC<~;>FDX0+|k$3)OoG*X6MyT
zgD&+hoi4d9%O2~Vn4Z|4+McC7wY}B7mA!j<5B2Ws-QRn#_eS5nzPo*Q`mXmq=zG|w
zGJ$)7-~^coJQEZryr1xD!iNc8CVZOkdBT+muP3~j@Nz=f#E6Me6N4v)PJA=*%fycp
zKTrHI@yW!W6JJeyJ@Na*7Zcx2teV<3wPR|{wA^Xg(+a2MPuo8&YdXt}r!%I{oE<PV
zU`oKefbM|B0nGtD0et~;12O{U1WXEO3TO|A54;j66f79LBzSr7#LyL?OGDR&mWR5A
zEef3++7a3xx;3;hbaCjU&?TX@p*^9?LhD1PhAs^43*`ydj4+RojF5{^k5G=#i1-@r
z5uq9(6CoX89AO_}7NHkm8DSBj8=(_n9g!HhK59zT{HUs^MN#vjDx#J})kH0gS`#%j
zYF(6hR7+G>)byz4sP3qhQPokkQ9V&}qWYsIN6n3T6@51Pbo7<zi_xc|&qedZ7{r*z
zI>%<mI>vg(+Q*v42FCiuhQ=DlTEzy%+Qu5jM#ehDTE=?DTEyDK8pWE$I>frhy2Lrg
zMZ_<QUmCwU{$#?=gfj_`63!(YNf1f=l)#lJmdKj;H9<J>N5Y?ke+dT@m=h%uWfKJw
z|0l2{awmEvO-bIEydn8q^3&uO$?ua7C(lj!oO~+zLGrictI3~|za}T9+)v(@47%U@
zNb-&3%gKk5k0+l=KAn6b`9t#c<eSMxsp+X%sVS*3sTrxMsXeK4Q|G0wOTCbKDYYgo
zC#^cIA+0d2GA%2uD2*|lC-ZU!OXi&nt;{zWuQEPn@Mm7j_@41P<4MN14B<?H%+DDQ
zGuSiFWN>5_WNyh2%zU45EJGyoN5+MWzZrirUSx1*a%GBVp369qaW~^$#<Pqs85c9y
zGOuL3%n;2~%{-oAnQfhIpKX&pC3|}I%<QSzd$T`ef6D%xZIJUP*DcRIPd?8xuOrVU
z&o<9BFDXwu&pyvFFE+0@PbSYe&pXc{FEGzKk2y~-FD@@5FD5TB&oECTFCnimFFVgN
zPbtqJFE}qXPd%?9FD0)$FEp<*FDNf9&os|0FDg%=P_9tF@OOb;p<$tNp=zO0p;4iH
zp+=!qp>&~lQB+Y!QD;$GQEO3mkx(&ru|cs?v0<@sv3jvlv2L+iv2w9#F;B5xiB5?@
ziFS!tiBySViEfEuiAsrbiEN2xi9(4{$?p>V()`k#(&weON*|U!E4^EKzw}Az_0p+j
zlge(Dxs|(@yOjHuyOw*E`;~i_`;^}+e^Z`Nky4Rb5mS*{QCN{xkylYrky(*Z5m%8^
zQBql4SyWk2$yCKv#azWx#Zoo1>RHv3Dz9qmYL{w{YM*MqYKQ8GYS-#THS=m#)GVxt
zsLiiUt_`jYt4*)Xs`anUt&OS8t_`XUsm-hntc|brtF^1QuTQN{t6x;VpnhTf_4>dD
z|Av5ue+^d}oEyCwgBtxC-5YHieH*PBpEbT~{NDJZ@n<7TlTDLtlYLWZlXdg?=AX^V
zEeD!kGz+ynZ+_DJr}<m6K+Cb_6V0!iA2;uBW^B3J{IvN-^Z(|D&8M5sHD7D~+I+H^
zvxUFqUbA2eTg##5&&^kxe>ER(zS#V#S-9nJ^PA>(%}1JlH(zgl)GXa{yZK-9jkZT^
z&)P1xJ#M?z_Nwh}+v~PFZExCMwq0*~(RQ)Tqa&;%v}0Gt^^Tn#J30<@?CaRpv8Q8u
z$KH-j9gLkPJEnHd=$zhpxARu#?M}Zg-!99p$S#Mj@UDn1moC??pe~QDz%H*YpDzEd
z_@2g|hMrwL`+7F??Cjav)6(0}+u3`g_j2#q-s8R3dhhg}@4ec4v-d>r_1>es@B6;@
z{p$PK_pI+--_yRYeb4(|^nL4l-S@HYP2ZQkmwmbuOeW}0V4J8jk!9ll34bPVO#C_F
z_XNg?3=`QWvQA{4m^d+IV*JFUi3t-KCvi<uoy0szYLeO{{z*KO7$yl#`akjSM7BvR
zlhh|MO_G_UGD&ih_$1azVw0+;_D=1YI$>)2w7O{>(>kX$PivTVXxfQsho^m<_F-Di
z^n&Sm)7fXNobh_bvpGNKHT$*rZS&h3us`5fz`B4V0jC1C1e^#s6tE%SV8E_`jRB_v
zP6liX*b#6&uqvn`s5+=7=y2%m&@-VILQjXD3cVY8AoNP;k<gc+`$I2<_J*Dhy&C!`
z^jheN&`+UfLvMy23Ka<tj>w2eiSUo`jqr@fj|h$Mi-?Vgj7W`$j<AhLjwp=y6LCE1
zNYv@5T~RxtHb!lY+7Pur>O|D;sAEyvqYgx!irNyjE$VF4&Zr4d*P?Gk-;9=zF^(yW
zO^)@7O^q#z&54bR&4^8pO^W>x>mTPA=N0E0=N)%6?o8aVxYKdR;~e7G$FGh5p5U42
zm8hNQnrN12l&F{JmZ+cTpQxGWkf@N9F;O{5HAyAuX!6J8*U17YLMfan3Mncn#wpGz
z@+qPz5-FA`<|#@k$|*c4YAFUO8Yzw`rYZU<Tq#m14k@ZB>M7hQ&y%H7^imX4_)_vy
zC#7CaZA<G(o0>KutvjtNZD!h(w2Cx^^t8<QOp8pv%%sf1O#4jN%&bhyOsCB7%*f2D
zOpi>@Ow-JqOyf-3%+$;e85Nl(nVFdmnfaM6nPr&~nU0wynLe4;nckV^nK7CEnSq%`
znL(NQnbny#nQqyx+0NNc*&f-B*|W2GfBnw>ll?RMd-jj)*?HIUPUQ9H9mt!XH#u)g
z-h#Z1c{}rt<z33#n|Cm8Uf#*P?RgvW&gL!4JD;~HZ(rWwygPX}@@D2u%InMP&0CVU
zFmHd}=DZ7er}C!ft;<`S=Uy067*v>Cm{90g7+aWBSX5Y1m{piq=u{X{=v?SsSWp;W
z7*H5o=u+rg7**(B)LYb3G_hzxQD2cwu~V^iu~o4{u~)HYu}g_piFZj*NnlBMi9?Bh
zNkEBTiBpMNiEl|r$-|QWCI3qPmdKV?mX?<`XTC4xFJmtIUiz=}PwCInAEg3ize~TB
zzAgP)`nPmu+19eVWufKq<q73M<zeMf<(cK_<ss#f<+<e#%G)buRZOYquV|^5TG3k3
zR<W?6xuUXSW<^8Aw2JDAn#!ii+RDmG!77O=$ts~L@hZ_Or7Gbn=_-M$#Z`-{=2g9}
zN~=z(&aEz~&a5t~POUDkF03x7POPq|E~`$i-c+-tW_?XZZCh<aZEtOTZEI~+ZC`D5
zZF6l+ZBOl#+Lqed+DWy!_1X35^%?a!^~>s))-SKWU4N%uu_2`~p|QL%rZKZIx-qG-
zs8KOJuCc5!y)nPhr7^Klw#l=}rOBbmsmZnJV~c%DSW8(;WlMicZ%b-RV2eXbTT6P2
zL5puoZA(;3WJ^g)aZ79qduv>ad5cwxNlR6Wb4x{wQHyJfX3NcH?-u<Qrxx9o_?Che
z%ND;DpO&DO{Fb9FeJ$24?k#35#w{5wbuBI}+ARq!AuV|=0WI9^EbZUhc-nupU2FT=
z=G*?Gjjx@vow5B}8*e*n`?ZeK9cMevb=>Q?-EphqOvi<e*3Q|T_dB0<KIwee`JnSr
z=bg@Hon>8ZUG-gwUG`n&T}@prU8P;kU5#BOT~%E+J>ETDJ*hn@J!w5{JuN-0J!g6{
zdNX?`_V)Dl_4fDn_D=4d(mSDdQtyY}2fc54KlZ-sz0muz_i^u|-sioadSCZ`>1FHx
z-^bX`(9hb>-p|p`)X&`?G{Js?%LLB}wi5&<@=oNRC^%7UqR2$<iF_0DCgxA{m=rY0
zV3O6Ov`NO3QYXbtYM!Jw$!n6^q})k4ll&(oOiG`WKgn!T;-rE}hLb`jB~J>NR5ZzN
zQt%|7Nnw+WCe5EZXX?DEv!_m)HhJ2_Y15~joAztk-)TRleVtZ3y?lDb^rGqfGk9n4
z%~&(z+l-$x*3aBDbHmK7GuO^qJu7<lt2uAyJfG7r@9(^40apU92fPUQ9B@0}RlwbV
zCjplO-UNIIcpvaM;6cERz=oj4pqD|fgA9V#1gnRMhVg_6h5ZTT50eRF3=<Ax3i}l*
z8^#j$KlEp4XGBfJgoqgtZ4r$T^${fz-4Rt0?GY0r`Xb6Anj$(Psw1XE^hf-Q$d0@d
z^)BjZ)YYh0QMaPrM!k;u9Q7#bLDcQ2H&OSZ?nd2=dJ%O$syzBZ^yBE{n5Ni<*xJ~(
z*s9pZ*z(w}*v{CF*t*!7*xuO6*!tLrxX8HRxEpa7<F3b@i@OtdHST8IrMN3`F7eLs
z`SIK0brLla9TVdc3lobIgA#)iixP7Z8xl(rLlUbJqZ3mTtrN2n6BEM{HIvknw3D<`
zd{d%RVpB>|%2J9_ic@M+N>kEOmZkWmG^NC)#H4tq1g9jV1f<lb*r(*AWT!-?q^6Xo
z6sImoU6{5YZGIYSI!n4z`o_#{nI|(BWS+~MmboEwP3E4=iJ3Dq`!bhj_GYfk+?TmN
zbARTM%)OaQGOuLr%siDjEAxEj=FG{Nt1=g6&da=+IX!bi=Aq23nM*T|WqM`%W_xGP
z%buUTAp3Ckk?eoj=kmVheavIdSIz&CXP*B%PcNS{-!ES>Un*ZcUn1W+Unu`=9#_6u
zesTWKymxuJ`40I8`8N5c`LFZX^ZD|f^I7x%=6%bv%$LdklV_DLpU;~wm(P)}nBQJF
zp|G>Cp|G{Esj$DWy0ERVv2c2!OHpvq^rERnlZ%{-eTxH&eTtJxic1PhN=u4L(o6D6
z7)qH+nM-R+CzOhnag_0tiIxeLag~Xb?I>$3uPJXWZz|6#Zz#_%uPbjZ-&C=xVoSx^
ziWL=g6{{=eRV=MoP_d?BQN@yq8I@g?-IdcSr&dm>oLo7*vZHcR<%CM@Dz7SoD*Y;r
zDz&N=RjaGkRK2U}sGd{ZRXwqKLiM!j-s+y}+0}j3t<^KCTY_d*FR5;--d(f5W>3wo
zn&q|IYY){fu3c4ou=YUh(b~DS=W37C9;-cFd!}}M?atb1wR>vk*DkAFSG%%yVeQG<
z;`&GRkL#b-->X+?h;4{z=xl6jY;J6C>}~96>~0ion%=UcWns(wmR&99S`M|WX<65@
zx@Bj}mX?DpXIoaa%xc-#a-n5z%kq}pEsI*Fv>b0a(=xkdWy|`O6)o3VX0&W;Ip4CN
z<$BANmP;+STQ;;zY)Nc0ZdY#CXwPnUXxD3(YgcTSY?p3#Zr5pdY`1H7YgcGDYS(Jl
zZMSI`YPV`PY&UIpYFBGlZ?|YyX_sm@Xcuh%-toNSW5=hCUmgEC-gW%x_}1~e<3q=r
zj@KP?I~R7&@0{29vh#K4i_X<uGrPLGCUy09P3yAl$>_=Kx!QBS=X%eyUd}$IzW=?v
zeSdqo`k4FJ``G$e`~LMZ^s)2_^b7X$_4D>CPn4OcFi~lu{6yJ_QWI4sDo&K1ST(U|
zV&%l*iAyIfnN&7u_N1yw3nopOv}#iCq-B$4O<Fyva?<ok^^+D)dN-+WQq!cVlNL>?
zozyXD;iRrfZIgN?&78D+Qr)EXNh>GKozy)^chbCR3#a{`7BRhcde!v0>CMv{rZ-Km
zp58LOaeDpqbJNdG7n`wm#=03yGZ|*G&zw7R&dkFzch1~BbJxs6GxyFsK6B%&$FrW#
zvYTx`J7IR>?D*Lq=X{#;b<Xm6{{xr<4FZ1zum!RQehc^)z#YgF_&0znusf(H=ws0P
zAdfJoFrP5fFvl>jFwZczu!yjzFo!VXFxxPlFuO2|Fs(4FFsbm>5pyFpMl6U}9I-xP
zO~lfOg%STF{zrX@`Wy8<>RS|Z^p7Z}=$}!H(d^Nz(frZrF*9SQ$Ig$P6uT&Pa_rRD
z1+jBt7sk$tofn%K7aNxl7Zdln_IBL8xQB6`@tfki6Ppt&6E`MqNL-ZInK(Ofa^m{L
zwTbf+Cnc^*T$tFKn3lLXQ8y_sr66Tm%7T>El<6sRQu<T6Q@T=mQWmGoPsvExm@*@!
zEVU}NGPOE&Q|ji_t!W$5R;F!A+n%;6ZG9R;7F(8h*3--%nW9-AGoNHCWc|;4lldr9
zI!iX|U#5E2r_6VmB3a)vpJzH`ab!Kq{GG|0^(XUnCTA8)mPD3n7Jt^aOtmcbtS^~j
zS%KM0vlnMC%3hYun8T3sKbtAXF<&jeF26nhSpKB^-u%w|p8TYI|NPecsQhX9W%)Vz
zP5GhuMfpMb0r}ziQ}QS0$L2HSC+278*XF0^Psk6>@6ON6ug{;FpPXNwpOs&ozo~G2
z;q1Z<g$oL26|OAYS~$0GY2m!WC4~zMR~61FTwb`ja7NLrqKM+4;<)1Y;)LSZ;^^YU
z;;7=t;-upClFpK@lD3k@lG>8il8%y^lFAZ}QufliQq?lKGRZR8GMO^vGO03+GU>88
zWpm5smCY{eE$=VyEbk~kTd}+1e8riHixuZ8u2h_;I9ze0;$+3F%7v8+D(6%#s+?U}
zmTg(JscK8r=Bn-0r>pl>uc<y)y}o*9^{MKu)kkYi)SRg~UGu&6cI~U$=e5^sAJ#J0
z{i=Od`>pn4?T6ZTwfAew>etk7s9#(Ew*GbftNJ(f&+1>)r!=HDEN-0NIInSP<D$ly
zjnf;&n*5uBn}V7Gn*5pqn^an@TlrfVS~XkwS~**JTjg81TGd-+T7S1_xBhD3Xys}B
z(xTP+sYSH)d&}#V&n<sigj!#<ylfF`{nw(=D%+~p%GCO|MXvQ*i(#u;>+_ZuEgxFm
zxBP68XjN!6XytB|Y}Ic~Y71*mZck}1Z-3Zc+#b;$(jMI&)SlQL)gIU$*Ph#+)gI99
z*B;*<+n(Q^(_Yn{*B;ZJ+V0<8-Co+B)Slj+*&fxw+R4)?(#hQ^-YL;3*~!)^)+yM@
z*U8zrsB=l@;?B37A3EQ3p6@!=wWI5D*Tt?YU01tycU|w=*L9%lXxELd!(F?&_IBOu
zvg`5f>F;^kbHC?i&x@X0J$HMa_blk0)4Q;DcCSL8a-V9SN}pbzXrFYSSf5~@WS?4}
zdY?$2P@hDfaGy+{c%M|CPQOaOM88zOLcemqSig9G@q~g2`4iG7WKYnas6A10qSi#C
ziE0z|Cbmv&o7gq6abnZNmWd4$FHAZ->Byu5lWtDhHtGDNkCX0Cx-seHr0bLJPC7H`
z{iH*aUQ9YQ>BOXSlb%gFJL&4Alan4yx;N?hq>Ga-Pue=^;iO}ewoIy-x@PL?sq3b0
zn7U-zqG^|>u}<fh&NMx0de`*6=^fKAOg}$eZieg(wHcZ-G-fEwke;DFW77<dnZITT
z&J>v`HdB12=*&Aa&(1tQ^YY9qGtbRDIrG}g8#7POygu{H%+0gj%z8cR^Q=#^KF)HR
z?L0eucFF9**=e)OW|z(`n4K{@Wp>W&KXZP~`8((TobPkk=Q7OwIp_Brj=8LJS>`s+
zyF8D7zQBB$K;b~~K&e2%z<Yrv!4HEA!V<#r!ivMv!ji*s!-~S<!pg&B!llDcMC^??
z8L>ZNSHz)+JrTzu#G@snrK1(2MWThH1){~GHKL`W6{6*$-$$>B-59$vc6sd9*bTAk
zVpqkkh}{&sHg<jNme};TjJUM8{J58K&*PrOy@-1n=N-Q%es1E5#A%5~6SpKDOFWo(
zCUIBd{=^-LJ&D&-uBBW^IiGSeWp7Gn%HfpTDW6krrWmKzr`Dt{N<ERbFYQ3uskGB+
z=hOD4?M~a3b|y_Z-6Sh5%QGuI%P1=&%PuQ6D>thwD>^GMOCu{P%R0+G%P}h}D<vx+
z%Reh5D?ckUD<R7!D=sT6D>TbD%P-3<D>OSKJ1l#7_NwgF*(b7(XS3um=dk6h%|D&L
zIRAM5p8Rw9C-UR+kL2&opO=3se?>k^!P5M7`MdJh<gdy<pT9qUNB*MxlliOj&*rbs
z-;}>0|7hW%!u^Fi3a=F&C_Gqry6{Tjslwxh=L`21-YDEtc&zYN;qAh?Me~X>i_?nJ
zi*t%oi?fTfit9^el`JTkQZlJzYRSS9?$U-*{W9G$!!p}4<1(8v(=wwngR<Ra&&p<%
z&n;hAKBs(k`J(d0<x|UNmQOFgTk*2uX~nCGdlio>ZdW|4cvSJW;(o=0iY1jURUTFD
zRokj|RBf%=Shc<CUiIVZ=hb(suU0>;zE%CA`e*f(>Q~i|s_#_4uD(%yzxq<mm741{
z7iuon2-PXpiP!Pe$=4~=3D@z}$<&F~N!2OUao6$JiPiDeiPWjqsnj{wSJ&6nSJiK<
ze_yZFpxKbqu(5Gj<GRM3jawU6H*RQL)3~K^Q{(o=<&B>jLz}{y!kfZcU0btTeOrTD
z6I&x%9a`O5Q(7HclUiL`16$o&lUwatqgxAG{aW){OIt%*(_0f-ds@?4V_QR7Q(JRd
zliO0;Qrc#>_qR`PpWHsFy`#OceOmjB_R9A5_Qmb3?GxH3w$E*EX`j+Qr+rp?XS-ad
zTBkv$Zl_+SdZ%HhQm1C8a;JW$PN#h5$Ib^`kGei}ed+qzb+=2T`$^aRt`A)&y6$y7
z?0V7lzw3S1@2-hGlX@ofeC>JH^Reec&*z?;-n`zWy~}%z`|SEG`W*UP`^@@m`fU3g
z`waT*`}X#k_3QPU_8awE_M7*c^p{PjoKQWXZNje!#uH5^noXQMal*uj6MHB2PgI{Q
zH<@Fy{A9Mt{FAFDTTHf@EInCyve0D4$!?Q%C-Y6_oqT$d?BrjQR3{5h{yFLUB$LTZ
zlT{}FpQJh2a<b`Ut;r&jc_wpD{x^wpGQ;HGlf)+PnR<5WzNtH>?wY!7>i(%)r|zA)
za@v(?+|z}o3rwFmefsn%(?3lAG2L{A{tTlTDl_G0s?XG%IdA5>nQvx3o%v+uhnbIO
zzMA=R=JT05XYHT0W!COl-)8-q^>fzuS;n&)X1C66pItM%Zg%zTrrDEcPntbpcGc{u
zvukH}%vPN%K38F`++2~lnsa66O3YQ7D==4buKe7Nd2RFB=dGK!cHY%_*XI42Cp6!7
zzFMGapi-bpphBQ#;FqAuVLf5JVQpb8Va;K6VNGH6VU1zeBCbT7kGK?}8?72`6s;Vs
z6RjSt7Ofwx7hN6wG5S;V_Sl@bthjygyW<ZhZcW^i_&o7J;?u+@i7yiGCB9F2nesU0
zb;^^J7b%UY4XN8wZ>3&J>&=>$)tI$3t21kU*6gf>S@W{mvnFTtWlha$&RUVRBx_<;
zeb%z9Sy`=FJz0~oqO;d#bLO1MUzz_U|4RPj{5$z?^PlHG%fFZZDgSQ%qx={74+}pQ
zz9{@u_@wYd;iJOh;=JPg;^`%uN>-OlC|Omqwq#?;(vtNh0;PhbLZ$qrEv3$79%Y_o
z?qy5LUY2bwUtPYbe0%w}@-5{X%U6_tDF0mXw}Pqicg3HIPZg|{KP&!KuvD(DTu~WQ
z6<rlp6;TyZ6;-vb>Oj@OD%KkQnordXHUF!BSM$|;sphWvT+LL&S;JhzSo5R$Z#7%Z
zhw6{j0ySJUFKTq_Z0elqjO#pRSk!6NdDc19xz}md`P3QIS=X7>xzt(Jxz^X$*VWh7
zf2sdeuhX!*@kryD##4<)8;>{cX?)oj-4xXn)70GB(AwX+yme~pg4XWV#jVw?OIl~O
z&TB1it!eFSUD#UHTG1Nb+SfX*wXL<cb!O|_*2dOFtxc^Rt*xz<t!1q<S|_y5Z_Q}i
z*S@NKZTr#o4ee{%ceZbB-_yRX{bc*$_CxJw+PAl_Z$Hw0s(nlQw)Xw)JKFcQ-)rC0
zZrW+wY13)f>DU?6Y2NA7xwdnC=eo{Mou519x+S{Bx&^ygySclSy7{|>x<$L$yLr1g
zy4kvAx`n%?y8U|!dWw1qd-8jx_Dt#d*^}Sv*XP?8+!xU2)92pj-0#reI-zcY#l%??
z7fqZ!apuJN6BkaLJ8{9pg_D~nub-SUIc&1~<eJG5lVc{AP4=7|Fgb8?!sOh^{gZtr
zXHBl096mX8a?oV|$%T{4Cs$8SoE$efd2;&XhRJ@DBPSo9dSL3wsfVW?ow|MMx@jAx
zt(m4UU4FX6blK^W(`QXzIDO9adDG`kzdHTO^pDdWXSmGpn&COab%yf{)tTBeb!KYK
zG@fZRQ-7xJOv9N5GiS_PJageprdhvcewq1w=FgcwW`3Lbd*<Jn|7QM~$vkV{tbeoq
z&SISXXO_q8S+iHno;Q2;>}9hT&R#lu$?Ue-i)JsFy?(awT*tZTbIs=J&DEc4IM-sX
z!Ccq5PIH~-+RZhe>oC`L?$>(Vxn1)*=k?CpFz>{?Tl0R;`#(=*zVdvf`62Tc%r^|w
z4b%&q5jH1mdf2S6xnVQI3L<TyGh?!14#eih<;C4dyr1|s@m=D_#8-(Q5??1?OMIF5
zKZParZ_1Ap##H9iKPgjEZ>Qc$yPb9;?P%7{ti4$evyNr$%G#E-J?nVZmaMf|aoH!c
zxpUYHcnWw67z<bnL<;x{{^v6k{LWV^_>=!VpR0he=zrnQLgu2sg=NJ%N)D84Ejd`S
zuVh=v?vg_#BBjEmF=Z)bk!1m8!DZoPQDw`@_LjXVJ5;`_{C@>crEsN4C1<5TrBJ0{
z<=V<MmGM<FHJUY&H3~KIHM%vjHEJ~)HA*$AH3l^?bpdr@b;)%RbxC#cb%AvWb>Vfv
zbzAE<*MG17QD53{vGG#lg~s@%xTY<w$661x9&SC<y18|0>)zJmtw&n-x1Mf2*LtG$
zXzRw-ZLODDRoZs6Zg1V!n%VZe{aO2?_S@~R+h4UmZNK0Cx&2A|mG(RBm)qaA-)Mi_
zzNGzn`^|R7jxX&m+V8dpcY1gFclva?bp~_>c6xSdb*pzPcN=#bbend&ck6fCblY_s
zcB^)qcdK=qb?bGjbX#}Zc3X8j^_2F^?3vLsz2{#KOD|I|LvKu9QeQ$}cwbmwTwiKm
zdS7&3R9|9WY+q(yNS|B3d%s7&cfZC&tBKYV?Iy06xOC$3iR&k>nz(gx&*Vvyw@;ou
zdG6%S$;&7AO<py5-sEMIr%vveJah8=$-R>|PM$b<)8r+SS4`eAdGX|>lP^uZJoVz#
z&C{+=yEW}l?EPssrrn*UJY8wJ>hv|!*G*qBef9Ju(^pMjG=1sx>(g&ezc&5G^k35h
zW(3X%nz3Vs<4l{GRx|l$anItM#XE~-mf$R|S*)|zXR*yXFze1Nj@c};S!Zj`Hl6J?
z+h?}-?BlbK%|1MP|LlXax6a-%`||8<vyaT)IeYKyn7P4o{pWhkjh^d0H*#*+T%Wn&
zbA#rF%#EKLF*j;%-@KlA_vbOrXP7TGUv<9re69JK^EKxC%nzM!5@;GYE$DmDmf+Q4
zYr~d>Ee~52wkGUW#NCM75kir+(RR`H(T8IT;`Yb?PGnCNNaaoCOyx=COKnNLmwGq#
zUfT1l2U%ybE@s`#I-PYt>rU2%tk+rRv(9GS%Sy=Jkj;}LS)g8^P#{*IU7%Q?RG?g-
zSs-4ZQXo^HRlrlkRm5JzRK!}ev}jq;lA^^$3yV&d94*;ia=1jSG@<Nd`Kj_F<sZvs
zE2S$HD`hIhE9ELTRHj#DR2kRU)L7Q&)L7TNsd-gXR##eAQCCn`UYB22RaaD3QkPNZ
zUGG)jT;Eo|z5Z|gzxs-X>y1|%Q<@T+lAB()er$c)db9Om>x<S~t=C)Mw0>&+(R!ox
ze(U4bJFOR6KeRq;ecyVo^-(KB$FFwgj&JSX+c`UUI=DO7I{vhCbo_7U>R{?f>Wu1)
z?hNlt?2PG*=#1@*?Cj{=-np&wTW3JGN4HnELw9g@Sa(RbcXw!aV7F6uP<ME@b5D6s
zS<kE<wqEvL&fYb>t9sY=uI|n4tLQ84%j(PTtL{707t|lv@82KLAKbsC-(jNt#0?YI
zPP{ky_~i4G4^6%``NHI%liy4}Gx_G^m6M-MJ~jEu<ad)FPrf?&$mDaA4@|x^`T6A9
zskf%yp89Z_=5+1pI@2|#t4-fLef#un)9+5dH~s$fm>H2XVrPWU*gs?MjNLQ#&G4A%
zKGS*TvYE?gO3f0Tr8-M?mdY&YSxU1MW~t9oo+UR+W|qjTL$kPNbIs<P%`@A4_N&>i
zXFr&IZ}yYf&t^ZG{bBZ%+1F>knSE#W&Dl?9U!DDM_O03Fa~tP&&25?6F}HAT!`zCw
zZF9Tl_ROuFn?1K=Zt2{DxtViY=N8Ycp4&7xe{SX6`nm0MGv-d2H*wy9d4J~V&Ucva
zINx`E*!=MM5%bN1H-&8t+Z^^d!ZrF>?D5!laqr^}#2<|RnJAtrmMWSmoO(a?McU)E
zCuyIvK4iVhdXe=r>toittoK<q1*Qf11?B}N1%?Gq1r`PN1y%)?1r7z)1;z!A1;Rxl
zMJtMGi))H^m8>pXRkp9}ZP}UfbLHpD&z65GSFKd8RIk*iRH@Xg+*FxYl~a{l^}Wio
z#-qlo#=XY1=3Py7U0q#cT|?cj`v3Kn4YwO_HgY#*G-Wm^wf%2pZ2Q+L-Nw-Nt(B#X
zvyHWlr|oa6WQRb9V25~zaEDk&a%WoS&d%?h3Ef%UvE3Qn$=#{l>D{^A>w4SzI{I4r
zBKyPo!}~+~Bl@HIdnY(gbey<-;?{|qCT^a{Jw<rR@5u^N_@{_W`8Qc~iog_&DUwro
zr+l5vFy;GX_9=W*#HI*M`8Any%8$uhQ~po>Gnr?~x5<K2*rwc@`e5q)se04(r|+D;
zd-~t$|E4F*NScv6BYwug8HZ*B%=DWXIn!sR_srm#Mzc(28P3v~r8UcJmgX$ISr)T&
zXC0q)YSyt?0<(o?3(n@A!!hUkY}PqKbAHTrn8QAYZw}iW@i`)MIOoitJ9F-mxpU`E
znmc3egt@clE|@!I?wq-+=1!lxaPF+Ri{`GFJ8$mdx%=m?oI7pqvboFW&YU-U-mG~~
z=RKMCeBQHp2J`jiN6$}~A2&aCe&qa#^Q{6c17`$H4>}ySH*8;+N3?tN>DcqJALITe
zN~bbq|H)#`{*lFy?Ofne;8oyJ;91~W;8q}8Bvm9?R97rsnpJk8T({D&Qok~!Cb;HP
zO;=reT}NGaU0Ypmop1f_dV_|$jS_8IZE9`uZOUyjZIW&3ZF+5rZ3=CgZE|g@ZJHgj
z9nu{N9V#6%9oijU9l4#Eoq3(voxeIOyDPd~yQ{jZy9Ihhde`^%_4V|{^+)%|_Pb4V
zndmxk=S2G{)>F);Xil-6Vl%~HiscloDdtmjrZ`M7obq()lc|rVnohTxzJL0|=_xZ#
z&Nw#Xz>J8QVKXgf+0JsC<uc1@mg6j|S@yHe&Jvw1K3ih8*lerWL9?~z$j*_OqccZ&
zj>a6#IVy7$=WL(5ZSJ1A2j?E2dus0ax%=iGoqKrh?zvm%o}0UK?yk9O=AM|laqil=
zXXb96dv@-oxmEM#%zHiW-MqK+q~}Y_mzr-l-*0~E{FM2V=I``77Irl3bXZ}eceGFR
z)!2)%pW+l#6;jnwl~TF0IkGvkd2>Pw!V1C*f(qn{<cn4o)fe9=xmt3w<a$YN+1fJG
z$}N=zRfSdIH8C}jHPJOuHD78z)=aGPuWzrv*O=X8(q`Ib+@{lJ)MnPE)1lF!)}hs*
z+ELiKzjI&b@6NjJmhPtRw(i#M`fkzQseM!WX7x?#o6t9{Z+c%se^S5uM4u@EQ@o~l
zPw}7PKE-v4#}v;gZd2^1Kc1d7BXh>-86h*HXZp<wo)t37XO{mgk6B)`JZA;X3Yc|a
zmgH>h+19heW{1vpo8vLZevZo=%Q?n#9Ou}~F`r{H$7qi29J4vM=U$q7Z|<$Rr{`Xn
zduQ&&x%cP3oO^Tbjk(w6ew}-D?%lcD=6#rFI^TG{(R`=*+4HB)Uo_t~aAwepi02VS
zk-pJ4V)Z-x;~A5flUR~8Q&m%^rM^xR%ofV#&pwqMT@Y2ERMb@5SlnD(P<Ev}y(X<@
zYF$o~RhvVbWt&Z#VViZEU7JCNQHNfKaYtEaNoR5Azs{cSzV7bsj&9c;$=(@#DgDX)
zdnP7L37rx<C45TUlq1uRPG^`AHY;+L+-&*T3bTXeM9c}8<2A>3j`y6<IgxXG=J?I|
zJ@@<E_j4c5eLeTb+$VFt&3!oc-P~t$Kh6Cx_tD%pbHB{}Jom-iw{s88yD;z5ywCI4
z=F7~tm~TGcY`*h+|M`XU3+Cs|&!2xe>};4{bZ(4p>f5w;X~Nm@1&IZ*1qlVpMYl_y
zmRv2jsN7z;tum`-dR=FIZj*DHMTdEZX@_^ml<ukB^ZMrZE$Exuw{PO!iH9a;Psx~)
zIpygzx9QH)-KQU){&afWtgEvkXD81|pOZExX-?dnggH#}{>^2d$2^a19_u`Yd5rTo
z=l!4icP`7k1@q+QyUj0|Upl{R{*^Gj)E%i3*^=4f*;3g_1!_gBif)wOEVr!8tjVtV
zRx_(^M&0bXnRO2uA2zzRxwm<=Rd!Z&)^t{P{_mX8J+pgh-;%z?eR)%Ir{qs5oKif+
zb9&K?_?a1V^5*2u;hx7kPhcMZJfV4l^A^tgI*)U{`}~Ue)$^<7SI(CUPb<i;vFX^<
zyR7f<#F8l$Q_7~4PDz+mGN*V>;hfSrBJ+gjeVfNMf64reg4BZVHCb(T9kw0z9rL>9
z^sMYV+2=jIct**LGcyuruAZ4PD{WT#ES1@!^Tg+Q%x6!M%T_P)X<O0PG^Jrm<CM%<
z8ME|eOU~0Q@@|{o-8`jo&h~kwW!bZ;=E%;=EXXQYGOupF=lmJ-p?8dRy9#tkbj1E|
zsQtg7jH99U|M4=}*9;A{|4;C@F)}iMSU=0SUw&g?VCdb(z`(!&x&7`I0|P_1tAGPY
z@4trHfA%1~|LV%bL3;l!;BVW?0Mh&KUm5GmRSXOa{M$nR@o)3}-*_<o|NsA;Ck{Sf
zVm#3+a};Ev=IMivnHX<2)c#vg#@_2VkMY85)?UX0j2Ajxf219E{r2~NW9^T22?mC8
z<;L0{FT@!b%0;_fe{>%1Ws%;kaRYqKnnYTs>$le`y=4rIwLh}WAlJ<OV6Axm|9`Ix
z!wwD(RssI)GR$e6vER}fYrp;dUm^~^lr8pKr^F5>1_p-L($H<rh6i2?K<+r>oB+B{
z&G5i$$Yp0xdACLGi(D3MTo|$F^1^_H7Z+YyxNq^E#d{a;U%Y#<%VO8XZj0R)do1=`
z?6uf?vCm@P#eR$Z7Y8g3TpYAGcyY+$(8Xbk!xu*^j$9nIIC^o+;@HJ;i{lq3EKXdU
zv^aTj%Hq_;X^YbrXDrTKoV7T6an9o0#d(YK7Z)rpTwJucc=6`r8;@@~zUBDV<J*pJ
zKfdGm&f~j|?>@fg_}=6Dj_*Hy;P}DghmIdUe&qPk<HwF4KYrr)$>XPvpFV!(_}Sy<
zk6$=`@%W|VmycgLe)agZ<JXVhIDYf^t>d?k-#LEw_`T!zk3Ts6@c5(SkB>h&{`B~>
z<Ij)3IDYPU*usc~OBXI%xP0M?g{}*I7J4sSvvBpo4GRw~^jdUqq4%Pli*_yAy=c#(
zy^HoO+P~<)qJxVLE&8_b%fjyqzb^c-@aMwc3x6%Vvheo87Ym;+{JZea!Y2!#E_}1_
z?ZWp9-z|K+@Xo?p3-2zxvGC@?XA560e0luU@z=-S9DjTK-SPLwKOFyf{L}Hz$G;r^
zdi>k*@5g@}|9Sk^@!!Y)94}u~v8ZZM^`e?ZwTns@l`JY=RJ5pY(UL_=7cF13Y*F2!
zg^Lz1TC`}*qP2_GElOIHyeMT+>Y}to>5DQJWiBdMl)or%QSPFgMcIq87L_fkT(o!L
zo`u^MZe6&4;l72t7w%fPdExejTNbWZv~tnvMXMI=T)1Q5=Y<~@ep>i(p~FI_h0Y5%
zEnIS}aADEH+=Y1yOBa?ctXx>NFmqwnLf1v93)2>^T)1lC;YCLl9bI&6(eXtm7M)yl
zYSHOMOOGu(w*1(NV=IrXI=1@QnqzB^tvj~<*oI>pk8L`(`Pi0YTaRr!w*A<SV>^%S
zI=1`Ro@0BD?K`&r*nwjQj~zO8_}GzSM~@vlcKq0hV<(TDI(GWlnPX><ojZ2^*o9*k
zk6k);`Ph|XSC3sgcKz6mV>gf8I(GZmonv>8-8**w*n?vak3Bl}_}G(UPmeu2_Wan3
zV=s@rI`;b5n`3W}y*u{)*oR{uk9|7!`Pi3ZUypq|_WjtRV~dadIQH|{uVcTD{W<pc
z*uP^A#~qJ59d|zNa@_T}+i~~f9>+b8dmZ;a?sMGtxZiRA;{nG5j|UwOJ|1#B^my3u
z@Z%B3BacTNk3JrAJob3p@%ZBj#}khy9Zx=<ay<2T+VS+`8OJk^XC2Qzo^w3+c;4~+
z;|0eHj~5*;K3;OX^my6v^5Yf9E00$luRdOLy!LqA@rB119bbHW$?>JfmmObze8usV
z$5$O+eSFRFwa3>TUw?eV@rB1q7MCtATU@@lVsYi-s>RidYZliou3Nlt@uJ0x7cW`7
zbn&vq%NMU$ymIlX#j6*uS-f`fy2a}kZ&<u>@utO_7jId-b@8^v+ZXRxymRrc#RnFK
zE(%)|uqbd*(4vq<;fsP7y<Yfgq5mR>B~DA6m$;q`TN1J)d`ajMx08#P_@DGWxoFA4
zB~D8nmpUwUUixpzgQX9b9$pc#WXY0%lS`K*pM14!<LSsH%a*t-O*!ds(q&2X68Doa
zOO`KjUFyEnZRw+>kCz@<v1hI0633ISOX8NqE_t%_=!$h4yssSIw(-uUJ8nx>E;+Ws
zeTm1(_$8~BtXUFxa_y4UOP(%0zT(6R*VPG2)-8Fq^u^NWOJ6TLx#H9cx7F^e_paT1
z=h`=qB^#EkUlMe3<C5)5HZ9q_B;;i9$*oJaE!ncfYpM5ApQXM_J(mV7%{rNOGV^5M
z(!`}1C;gWCFZEcOdNTdw*QFayep>o%>8_LOPJUjx>ExHC-<Q5zy7A<XrCU$#Jh|=U
z=990MzFGQn>AR(?Pkvnbe(8s$yHD;ox&GwarE5;UUb^Mv_LFN*rk!$H{$*MEsgKKC
zmj7J#V_Ed6Kg+%^OE{HrD&^F#Wq+5wTjstz_SD|fZ<aYPf4l7KvTw_hPQ{)2z3lU{
zs8jEkrJizK?y>ySGKb}E%RekjKIOPP^Hj{Kf6L-eC7!ymV*lyWr!TBHbNcj(t1Hf}
z*m?TeiXEr-oIZT|;OToSZm!sTdh6-iE6%UjcKXoilc%q&*nN7->B}p&pT53g*Xc_u
z&aSw#;>hW{D^8p~cKX!mTPyaR-gNrF>5D6lo<6hU`023KUaKFReR0-vb>QmQ)$h)}
zIs5#q_v*K2AD@j}9k4oL^}VyN&OSUFvii~4yJw?U`>hUN?YsK^*(YaTpAB6dwEEfE
zsMRmeK0WKdI%ak7YM<2}tKXl!zV_hSi)*i~y>Q|Dg)0}XUO2M$?Alvv&#gUq;rQB9
z7w)XRymsH({cG=D*uUY-+S6-KUpT)u`pU7j*DhRLdu8pZwdXEezi{Hh$+b5wTv~hP
z!hyAi*B)AX^TLI-N7vq5dwcEW3pdu@zHs)!oeLK)+`4e-!ilxXSHiDs-Vk#o>B^=J
zp;xwTh`bVXWy^-JD?2yr+mL=G@XD?YX;-#xh`6$GL+};<E3sDsuJ~Pvx{`1u@yhlM
z(Kq6*_+E*>a&SY+l>-}mu7q4ky|QP+?hQLO?A@?_!-fqfHpkrvzj1VP{Eg5X5jT!(
zj=XVvbL@@a8$mZtZa%g7*yhul18>CKh`JGS<M8IN8>hA%*|z=8*=>989Jq6A+wpC?
z?i}5A_|EBVNAB#ub7tF?J14hoy|eGmo;y44oY=PQ&be*7?;N_b^UlFL+jef=xn<|i
z2Ol47+PQw`rw1E%etq!$!M_K8AN+W*Zs&&wYj%EquzlyZ2frR{*tvG+p9jAmY~A_g
z!H?Z<p1geWbNBb%AD+B@^6bgC-M@A}fAV$r-`%gCynga~_n+M#pS*kW{>iF+KVB@~
z_w~ifeXI9<d$D5Q_ZMGYlpWanru@L}H+$afdb9J*zBi=@cD&#D{>78+?<)?(AAbGu
z&ByCUZX7xI^}yGhquEC<eD_?ExMb&&9ZQ0j1}*)w^!L)gOMfl(TJE{rd-;PE_g6ez
z5w|*W(Y*^%iw<pwSrok};YRGD9XsO|c`ezs<loXqE4-KNU9x-0o+S>;e3n01@p#44
z6?fOJ+2?mMWNGM9$7NZk5?05resJObg~J>6EeSn&_H^Rv2W#)Gy}x$tzObcE%l4e~
zUGBF$`_#G9&sLm2{piBu3y;@6x$yA9leLf5K3x0sLdKQE8%OUrJp8wN-M*hMe3nEl
zIkMsG=AAp8PVQe4xioxf#M0+0e3$qwNm_DX$-yOumh3wjwKV&r+p_&9U6#2n+k4V|
zne(!oQ*Tz~p2|BFu-t!n@bbXrLCfE+c(dZl>5Hc?oxX7T-HKN$Uaok(;>C*hE0R}#
zID7eY#_Eq}Q&y+1PFtP2I%)Nb3(wcSzVLMI^9wK5K3n^8?aK?VE<C&N=EB9zM>k|%
z$-a_xCFjbq4d*tW-+W>7g>A?09J_Pk&dEC$x1HbS_|WO$?wz}KMm=`e<G9CZkISA<
zPd-0!-m`w+hJ9~89{zgh>&5T>OJbHrFZEb<;AH6Xu;n4k!<XluDme9V#nsavR(v{}
zv-<Pd?A4j8vsS;oaC}4Fl~WsXuRPs&a>I!YS2kbXd};HgZCAHl+jeE!<!#OnT^@dY
z;=1R{la2fKzo|U%?qleY<Ryofgq=LH<mi&vrEyC=mldA6cKZ71+|}<coY`=CL-LKJ
z8v#p>Es0-xc7yZDoRbMl51sU0=C$nL$%y5z*5+TizRmUFo}Is5{QZ1<$&J%r&R*DX
zZo~NvflE@BoLzKk$;l-rmLxAtTAF+E@X4<$KCSq&;`55U)mJwMEjhg;b!p1dqEp{i
zgr7`bnzqzuneVdVQ<2M~mVaOIW5v%E`K!O4eZAJ@<e4Q$PL`Z1J$3W+t<&Gnemnc~
z?2oers|&8YUHksRo3$x7u5C`e;r4LvPPaYpKSrF)SbA|o@RHOe=a!sZa(>D06~9*e
zSy8z9-P+$T{12rq$y!>uv}9@i(!8amON*E0EUj9ayEJoY#nSSnWlOV{7A-AYTD`Pj
zY4EbhWueQWmmNJBvCMB-;Ifcq0n5UdMJ@AR7PKsES<JG!Q`M)^m)D$%ULL!=ba}z@
zrKf67#V=1>zT{NK@`_U>%gdI>EYDqDcB*)J%JRJB`OC{s<t)!yp1r(q`NC6i%ZrvT
zK9#mSd3n{Tq~*&_r7q80p0Iq;smfEYPro|tzw+(r_ottnet!Dh>423FPd`2V^0enU
z@0Gsi{;qg-`ritlm98rtS3WxJveI*9(8|ZB@0@mCdH3}F({3w0R^C4S;B??h-<2;;
z2e0&6dGECQN~e_$E8m><Tj_D`_gU|Af6rE|Ua`7l_43uVtCy@UTK(s&^SQ;V{m(63
zUAfxzoYT4T)xXXzTkUnOX0^|`m8*+a*R8Hz?Qm}4YPWOl=c-mOT3xofboIZpF6aEt
zxm^6c_Tz<b7rv}@Soh_^`?WvU{#*O|!mqV|*Z#Zkb?w&+P8XdoeqZZ&@$*{ebw4hA
zT<do6=Y_u)zO8jy_v^x+wGJ2EFD|^|deLRwhqZq$e7^8w?WYUhFMPP*xUT%llMTzS
zJlb%7L(P@j8x~!8wxR4w^_8kCpVmIyu=L7`E5%n{Y+iZg`G%Vtu5GBha(TnDE4MbR
zx>9mw$(6esO0QI0sl9S<!<`K;Hay;NeZ!@VH#SsWdAi}jhQ(K|Zn(0c@Ji8@tQ*%i
z-`ZSy<K5<p8#gu=-nh5<$>zOVA8pRN@qY8|&5t*i-MD_I`bPeZv>U}Ya&J7`TzTW}
z=8v0SZN9(x&gSQvt8V1nD7sN{BjZN-jhma(Z#>xiVe^~KnKzzoe!KbQ=BJwrZoJ-n
z_0GjR5AK}0bNSBGZO^vd+ji&9i*4ucoV#=8&b>Q#w%xdM_Rjrn*Y4cfcInQ|JGbxL
zzw>z8={t9~UAS{&+mmg#?mXD`aNF~3x3|SFy1DJjok!d5-Z{JT#Lm!%fe*bO9@@EY
zXUN0-JN+I8JPdw#WasIfM|XNYJht=rPM?Qoc6vSZe|UJO$HS955AHm$)AwP}!&5um
zANuZbf9mqoeNXV7kUd^|oSypZ`S~PhkK0qvJswXz_BcOved@i(@#(K8-=AdP`1|DB
zlRr;>Kl$;*e~;gufIa`7Y})7W)b-`x7yI@(z1+5M*FMLWJNIqfw`1SteS7ygzx?-N
z&%Qq|cJFg}>F_de&;EUGFSqa8vhUcN6K|>yoP2Zq&CxeU-qapA{HE@}!8eEAR2^7&
zpyt4VHvxzCyx;YH|NFh~cfa5FKH>1EkDot=9r^O{!^f{5KYk26^zXCdm&hXyUm}i#
zABj40^y{&&w~pLAa{I`UuQ$G3|CW0+|7hOPo8L|xUH0SS(WO7${qQ_lyR>F${Ia-Z
z$4|yCJ9e^i`N~r(PL(gOTE6^L#qtlQKb{U*xoWk?MbC?_>)h6@x$<(u>kX@~yxLH6
z<J0Ds+g@#Zc<21ib2~ksdc1Uhnf)_;N#x1Alldo;mZdE_c`{{L^0E^rQ<o(!OIUX5
z<g(?9m)9;|b!zpgh0E8Ts$RbC)S6Ru%NH$Qx_rs<n&s<HMXvmJI(lW)N{2HME5lcQ
zJ^khMr_<k0e>?s8^q<pzPyago<8;`{-=||%I-dD?diCnim1|aqoQpcQX?4W8xO1WB
zBF{yii#->9F6><3xuA1vSFc~aZgudvm~$If2b>GO7<4iGqTj{9ivbryE=F8*U+1;X
z|6=Gx&vjlGH>}=uCG4W_MUQnp7dKvcv*E*rgICsH*?Z;VhW%HLUO9Q?z?Cgm_FOr2
z<;0bJS9V_6bY<C%4OhNy*nZ{PhEE&TUO9Ya>y^z{j$Qe@;mnn{8{Ti&eP!Df?{)7s
z?6`9L%IPbIt{l0t?#jX&t8T2k@oV#<8^1UI+`Qz*x6LbVEWWYyM(vF+n>XFqcw^m-
z&zrw*{;}En;_4e;H-Fi%_D0=}4L8=`*nH#toi#U>-*|rK%eL>^K5ct;=hdC3ciwFK
zw(ZfK58GbedAIHDwl{a)Z+my=^_|z-zHa+)=gFP7cOKvQxb5?{7k571iG6rsXY#|V
zJL4awJq&+%edooUF%LucL_bV<cxmUgoly@H9;QAFdw6AM+{2`Y84n{KCO*8pGyP%Y
z!^l0}Ps8_w?eTpY^wjTZ;M15rOZP?Z@p>BYG-{9kQ=g|1dwgH|zw~-}aG%f11N;15
z9^M!5^3Xodm)<Xz9ys%6$$_(P79TkMX3>FDZ-Ng69s2h1$H(s<6AvdHPCo4PCHlza
z@0Y%RI-0TM!jk37<Inxs{CD%GJ2!S_J`8>ub#lWgr!xuXA}{)^`}y(Ck<2A^OAAh>
zFUwdKyYl;nTRU&>yty-L$;Bm?mt0yBee%kZg-Z)hE?SzoENj{6lPi{QJe9c8`Aq!E
zgq3kCqb_b+y><2W)mv64o=aM}dA094zjglW&R+SqdCQF-8-8rNyYtS@tcS6Cj_f<|
z{?@lE-?Nu2Ub<xI#gjS9@|T@IdG=)9vI{3Kojh~0a9P2!+-2Fz&Yj%6e8ci>r*@v&
zacb4_P0QCW-+F5EsddX&E?={J%c<R`wx3$NeB<&h%Qv0cb!zqU^p*K5{m*!uDOeeN
z#^sFnnY5LzXHr)BoC!FSyfW~N*BRe4MJqE`hMWmHleaQwrRSOKmF{QU&Sb63SXsC-
zcV+5IzcV{mA6T7#ZpZ5MbIIq5&n2DPy*lUIzSRd;?^#`NZvX1Ab!F#L&ZV8pJy&?H
z^jy)o>~neNGR_@dopmnrT*<jzt5eS%TD^C5%(|qD(d!Z}2CNHR7k@G4V&cWXb<r0?
z)&;Fgz8JhNd|kx4sCAL+VlT#BOu2aF%FhjlZd|_d?25z2Cs+P$__g8fmAh9STyfs`
z>dK=lzc;vSe17HWm1|dCU%7wf)|Cra-dwqJ<@^<=jSsK9yK?W!r7PF3oV((<@%EJ)
zSN?3cc;)4lzZ-5|xq9Wr6^AXmZ|t~n^2Xj9r*1fHId<dljUzXX-#C5a@s+bT-0wPX
zId@~*jRQB1-f-OFvgOQ;^EY<g*nVT@jeR%v+;H7;;>P|P2XAb>@$1fyJ5JjjwmaYb
zdB^3h!`<(9-0pt6^Y_lbZGX4@+4lR6<K3Uz9JhbD^Y6~*JAdx{+U9ik>z&`*T<_*R
ze6;i7&c{2e9u_<-dzk&O@?pipnunzi@9ivk_+)49!}~j{A3oTb|FGy``NP78IS-2;
zhCWT)6Y(_sY1Gr0r}2Bjo`yV)eH#5V@@f3jxTnc`;`Su$N!pX}H2h`Q%g~n*F9Tl&
zy^MMp{PO6&n3vHnLtb8dv*N({H&@<VeiQj}`GHGs&b_(z=IWbe2QIuhwlCz+!S}yD
z{{HyqW6Y7*BhFt=d_Dg4_P0CVu6|$sBWFqOlDs8Xmn>a+`DD?u;$_>H?^wQV`PSvd
zD?`tet}Iy@cIL?H*mbEFKU{I$=)UFs6}K%<ch){UzHjA$>u=(Y6dWx&xom0i$+Bf7
z%SxA(FWa?z=kh(Lb}!$1D*Q~unX;7?E2~zPudH5Kx$?y7qpOdvKDqkX>a>gH=Q1v)
zUrb&Xzb;{2(z=v&iR;qVrLObZ`02{WE1nxYHo9;0-sraR>Wxb`JhxoDaqWipmMb?r
zws>v1e8c0e=UuP6&vw4sS@-b8&Nn+3K770L<<3_-pYMFVGi}d>8|iye_oVEJeR*Qv
zjW;*nq#TYvlE0*4*{Ri;7t`1IZS>vfv(aaZ@0RN~-tRoQuV6{c$!kkWPF^`#xvXZT
z_uaxJ*Oy#9x$o5eQ+t-*xZ$_O=kBTlMN3vJxv`}5<npBlmhWG_clo~Mk!R{wE?gOP
zrgr7I)fMN?u0Fl`%<8Ol8SAnyX0FS+7`N{8m4J<b8~rza*tzIo#-7YQiBDG_IQ0JT
z`@2V0{O~?`b4l@%@{?sJtCn3qdE?}@lQ&NuKXvHTkyFP`9X@qr`GHdhPaRx-X!+4o
zCr%w+e)3etnWQtZXBMwaJ(GMU=1k_9oHOZX63#4LnRaH`%EU7%XQI!<pUFP6eC3Lj
zac8p5ELyo_<?3@w&aFDP_}tQSwdbnOtvR>yT;;h7tCyc!ac<eUnsZg>&aYl{uI}8z
zb8FA#ughDPb1{2e-o=7-`4@}V6|O6|xb9rh#oTo{>vAs^UMyM{yfJ9w*DF7-{Js*h
z@!yq*jgD8NHim7C+Zes^`<2j*->!VQ;(YbTmGF&DS7SE*z4GTu?8aYLA~(8Rb-4Qc
z#=9GjZv<|+f8+g)n>XIvcy;5+jkh<R-MDw-!;L#PUf#HM<KvB>Ew69*-@SXof6K!g
z0b3s2czWZ}jTbk9?}pv=yBlyf^lr#q=k2#|1l@Jn?t3@z?#hQ79xi{l?%~phYaecW
zxa8rAhl?M6+_~)Gr=4pau70@c;rfTEPt%`f@5y+Y{50ul&eN=?S$lGyraaAjn*B8G
zY2wSYmkBRZU&g)6c$xAt^JVhO_?PJ~vtA~>y!B@Nfwc$L99VbY$ory?e?Pi>as85T
z<mA_TM^1gc_pRt?;nBO_P9DAXy<|!CvRfxlo!Yu0eq-s9RZCYcU9t4&@{)DocgvQP
zFR55^Ystmc>(2#msaz6!a`n<RODj&+EIWPb*zz-{)~(Dtvu5S$mAPkDuFOBPYUSFM
zmsVd{z4_dRa~scXI=AKA<<%t@i!YX~D_xhg(d}yD#^j9&8$-9aUJcvw`9}DbPd7rg
zMBR<K>$*MqZsgsFyIUT9-}!atx1F0FZhrWAXW`TQr@4Cyp62bz+4E&*?#t|#IWO~`
z-g&d(!0k6j-yeIQ_wwJzswHce)-AhzvUb_}m2TT_FIl(r>gtFsl_#rC-Z^<<`Gr&G
zPMutS_SE@P7f&5uzIo-Al^a)XSh?ferj^%LZ$G#5+_rPO&Rt(!xvunL`Ni^e6&EYk
zm0jF=&i$&_Rqv}FSJOA9ZA{siy3zA$#>S{E(OY7+#NLg+n|Rk_yZiRYEeUty?(TTF
z?ctt>KX&eYxa;B1o!cL7eYpE!!Jgu$J0BM9DS2ABr({p*)BHWfdx~EczASiI^fLct
z+F`dZ?q5!Sz5gxr*w&S&mfu)iz2wf4^-J%bJiYwVsom#puKu;NX34^3p4)4e++A{S
z$;PD{mfkzLXxZgcXO<V9DLPYpX4}f`D+|u-Sb1ypo^w?ftJYOs%-ra6HEW~q)z~db
zclSTs_we`5(miEQPwgvtx$!{p(Hq}O&g?yxz46NpukE3S&MiN?{PybVi@6(}H|K54
z*%-Iwz{5W~%l7!3ynpiQsq@RPoVu`l&&u*MWoLG;+_`es%F;7;SMNLbVD+8Vk5=DX
zeSh`C)wSzt)>W_bznZ_XXk)=fzpJGi3pWN_E!kMS@!O5BHxjqRZ%Nql{f77Ul)FCL
zlkb*4t=Mz$VfmiFJMX<IeYxqt-8T-OJid5-xxZx7((03!mS0)^=;V!4*H2wL_3-3_
zlS`IeUVd@;;$?eRR-D<l^6shor|zAqJag;Rjpf&t-#m5u)WcI(m)|+{^wfcsk4{}*
z{@~Q(Q~OsQT>0eG`ZJ5p)SX#(X62dZs}HSQb!P3E$E(+zIlS`3%3~`RpQ$;s^vv0n
z8_qmgz3j}>)hAc3ICJ*gv(?pSPOW^g`t-`<E6=Q4ex~Zo>N7`H)}C2%X5pEmEBBu}
zaPHK(g%?ksd$;=Bxg+P^u0D3|__>qkUanre?&!IL=a#HHf39v_?Zp%4YAzl=cjnxi
z)eF~sTD@r9g>!WmU$0)a?&InYtKY9)y6)n+<?CLpK6I{Z<C2TZF0Qz^V%@rR!B^K@
zTzs)&W8l@b>sGH@cQNSd(u-@>t-QE?-Rg_0)~&j@_Tuu3E7w(STy(K~W7Wpct8rIT
zw$yA~yfJl4!qrt9f8GeYx@hCljddGCt|nbgz3O>0`Rd;r3pcLVxMpMQ)gLz!uU2pT
zbtC2KpBs@^leUCkjkvme<Fbv>S66S0zq({&%+-|})3zjU`F$hmYVF4CE%{p<ZU%18
z-Qseya7*f4x0}J+Gq>byalh$t)9+^SmXPgUH~nuq-;CQHy1i(N<IRAZvD*u__-*&S
zS+d3T=D!<RTbyos-}K!cv^{-`&&`1C8CznuAAVSHH{<T1hdFoi?q=VO-kx<ge*2||
zQQIAM72ZAaFk*Y=-Q2tXcKUBmyPJO3aaZ{E$n9a<^Y5N`c=F-7hqZgIK6KyZw(G*f
znmtD!y6(F2(0P~3u8R*>J+0c4x8?G~#d}UatlqO|&#{N69v**q_MykF$~{iIs-B*I
zxNy&sJ!c-)?WufP_w?Mpil>WTu6(*;&$2yd_APt5=;@k06)#uqS@^W<<<h4sp4L8H
zy=Up3@|S1#Eq}Uv&&oYZp03@q_-W14>Zhmot$ted^1+)6`xd>dd-?Fq#eEB3*1X(u
z;QpJ+m(?$~9=N=3^MOnIwjZc{d4Avd_s8Eqe{<sf<2PZ4p1yhVX4`>BZ=Sum@czvE
zbMH^SKlT3X`_u2!4`&_DJe+Yj@rc)#q$7@>?jJex^}&&nqo<DE{C?~E?eDvOK3Gz7
za`Vz<%a$)&x@^U=Tgz`Q-+1Qy%5y8%UtGI!-Nw=_MRyanCvGpfTXwhf?)8V)9(wM&
z@o>%4b$hPt+i@WL(9Q!7mpnVQ>CDBI7gk<c`FZuFbC=I;xVT~6`i*5<0&hNAQn%#s
zlG>Bomu_3SW$D(XtCzhz`TFFlWsgrjIr-}3vy(4Qu3Yx?<eQVvPd;4!YWa)hA5OhJ
z_4U-V<=;--U;g>j)8+3^y*u@I`Il2qmS0|ZZ~4bl&rjW6{%-l3Q=d*fSpI1Fi&HO8
zy*l-F`Say(mcKsrdimYucb30g{&3~KGuzMHS^0kD<}<s_>^Zal%&V2V&ulsKV&#rA
z2hQAFx%bTDm5)|#J9B;Ijg{9{zFYZh<%5-1R_;7=f92Jc&sTm}dF9-bm0Qo;T6uTn
zy_IiPzFqlx<<pffSKeOvW%aFdj%$9b{<Yd+&9ifVS8u$yah>y;>*wyD`?vbux!dO+
zpL=@l`|97Toz`q#_u$;m)vjx9p8K<U)4Fe~ubsPl?&`T4=kA=_bkSwa!*h?$JvsMv
z^}%)fF797<VBMCBM=ow#mv;5o#RC_&Up#qn*Tp^SYOn6SxNqIob*C@xzqn)Fj*D9_
zZo9a1-O-C@F795p=i=^*hu0liw`JX~b$i#HxOnK|_H~;tp1OGO;^B+OFQ#AJzVY<N
zQycehth`!!wdm@ytGhOC+E{*d#g=Uw7hXNH@#Mzpt65i1Y+QUb^XlG>2RAOdT731;
z#yuM|u2yVWdbRNC@r@-{ms~xzG3e&zjrmu1Y&^Vi-^Ploc~^6;)?MAO@yNz48_T!U
zT-~~H<HiFUcW>OevEb^_jk#B=u9jU5xfy&j`)bO~sx4VJBX6ePEWca3CHrRH&6+JS
zH*;_1+^pLYdb4uN;w=leWZsOwxpYgx&5WCcH`i`iy(R5t>doYvu{W1&S+r&6#ju;(
z?}p#3-m+>-<=tglmT!r;nSZn5Zo<vzn=7{@-i*7sZcD-Tn!6kCZo9kcZqD}IcQdzF
z-L1Zxv^{(KlDm1^^S3X(yXo$ZyII>)wlBV0dw18}6?a$Ot-HJB?&`Z+@2<U@y8Y(E
zjO}ULci!D_cg@{}cY}AWzni;#`Q2rA)3+yYfA?_n-F0^t-F^A+*2AX{-#iT5wPwq!
zhd#T!cYS<#`{9d+cOE`}=)ddr!=#&^9zK2;v}@PX^?N=%eE%?H*V?BW_N;q)|KWp&
zcOO1_c<<rohkm;@?g`ixy6fS?w-28^-1yXM*Ooo2UT%B3_38GfTb^#+vwP2uJv;ZT
zf4b@Eo~H-*?BBEbY1GY4dv-qE@bu809Z!9CZQt|c;jTUV_8i!=ch8<Z+xF~!x_Qsx
zJva8<+_&=OqkZ@HUE6ne-|CmQ_g&q0XWxpKyANF7cW>XW1Iu47d--7B!+lF%E_u1<
zz`B>W_N{rj_rRe8uim_Qv;V-`H!t73eskc!;R7$;>^pGqK;)sdFCz}c9lG*9=1}aR
z>+dhWk2-YmefHt2@2|bT^gjBK(<j$YZl7E}xqr$z?EJ~^OUe=7FFs$qza$??J#zNz
zqazQGJpA_H+v9JikCq<2`~A_kJKxV9J#+N)(Um{m|9G;b=;r#DYnFXK^>O+8<sX(G
zJo9m-+nVR+UYv7ZbME4ibw}5oy?A-!`Hjo3UfXze<GGC&H(uFzVPo0Nvm4iM*|=rX
zmeQLQH#cl4zFB^=<YwXaJ$J))eR=qJ-;q6gpB~+FY|s9u`<@<ny7A?Pm+#-advoN#
z(E}czo-V1pxn;}dEqm|Yc>nmwz3<PK99wr|<MoYIH>+<JZU6c(eAlLz&zJ02`f25%
zGcV71thu?d=H}Kd#oG@)J@oX$oA^T?e!N(6_{`^(o@-v6JHGDH#S0fNUOchx{KeZF
z?`&Lg_3p-78*6XY-Q0IKa#zHzk8f_i_xj}d$^T2-Nv}08m+V}+ZrR#p>z8d<_U`1{
zlRr*<TK@aguTwuy{W<kz<;gQg&zw8+d*#oSr_LNZbN0-Sl@6;;oH=sl-^$ZxzOOuU
z=GV$UD=(Zmf9Cj^Z!5p9{JZk~xv%E}*7&Y@bME80;5FWBKAiJg6S(H{IiEE@&iSti
zTJ!eYr*q%Vy*u~%-1l=|&Rtk{a^0DA=ht1mcxv6{i|5vzUU%){*>!8K-ru<T>e{RK
zHa^~X<>IQV>#jc7xbo_wjSn|2zq#n<wk^B1Y~Ql<=8Bs;w(Q)pZ_Dw!%Wm%3viRo0
zn|rq`xmme=|J}0f<=acQAGv$@?t#12+YjB{z2(^5gLf;omu#=ve)Mk4t{)G-Km7JE
zYFG5GqfbvfJ+bHbo|8|HJUzAN*wd4H4nIBq^yR*1`*y$F^>XLSEibpee7^6=z8Cv8
zzkIrH+so}Q_q^Qk^3$8+2kyK-cHq|g+wT(&<sJ6^lzTYvOVF3JBLQEY9J&Af+|gA(
zR{walWaF|;%RVo^cqU}c#dS|MUfQsK%YiLtHm|%{v;Eh@pATOz*}Ux18K+f_tA3vQ
zb?*Ab8y7FFyS(noy7gC|Z9KH);Fc42tM31Pxc6n^q4Xnfmh4%&cj@k>`<Cunx^3CF
zlUtW<U-t3jhm)UAemeQ}<d$XcPkuT1_tf9z|4uod{<GZuw9{$V(_fc=TmF6dkL3<4
z98dpR?zqC?wA<;Q%Uw?YUjAkIzvbbpuAFgR<-5vnmD{R_RUWJEoC#ia{fy_TXJ?+D
zxqs%ynXpw)&IGRVU-k6N<1@F<Tt0K_jMu7wRW7UUow<AF>Y1Qb56@gX6T0ff8P`=l
zt8SiobS7k#`zr5M56(oNk6DwsChWY=`J^>o=cCuSo=;s9bpGEt$MY`df1e9HpLjlD
zjobN%^MB99pHDcSd_L;D_xa%SX=@_aB(BL_6SgK|jq~}eHOXsY&pVvYS(CoT^L+N2
zfb$;bQ`W?s4>=#VCh5HU`KUFK=l##euL(ULzUI%lj5Uwf#jf!??|a_qeBAl)^Py|r
zTzs|e?Zt-|@2`8k?$*V}7hhkzdGX7|tLr{re0TBv#k=cXtb2O#*~JeRpI>}*@y^A&
z7hhd`a`D=_TkAeuym#^0x<~7tu6wiY_PXcmUS52;?#8<7>uz7XfAPV(j~8EDd~or}
zx`*p-uDi4D$ki=Zw_e?O^~BYqSNC1rd-d(cgI6zH-Ej5d)x%e>UOjpB&Bo(bpKtuL
z@zcg{8^3Pcc=g=XD_754y?ph+)lF9~T|IR5)yD4|Phb78@zmALSAT5$wejrL-y2_U
z+;#Q*)%P2JZrpSA*wyV<cVGRoaog1w8$WJ*w{ic~d+QF|e7*7W#=|#n-aL2n+Lnu3
z_TId-<?PL4H!t5jw`KLst2d8q*?jZ(mSbD4Z&`cu{LKqDPi{H7W%tbsTejW2c=ODb
zlQ*y3+;DU2&Gk1=Z#i`H-rbEi&u`gv^U}>zTejcaa`WiTvs(^txw+-U&Eq%M+&r=6
z%FR7D_uV{w^VH2%H!p9wx@FVNoi`8Oys~A-%_BFj-#l~k#?5s%Kiyrn{lneccOTrn
zdH2oT(|0f3eRcQC-8*;B-+grV`Q6KRpWMB0_xjx%cUNqGefQ<vGk4$JeSi1k-8I{n
zY~OM9%H3youijm_edG4Gch_%Uz5UeP#oN!`-LU=c-II4$Zhv_9;@wr-Z{4lieq+ny
zyZdjRyZhqq((O<0F4}(o?%M6w?tZ?zeEYF`>$ZD6@^}>Y$n8<YquTB9yPO`yK5~B)
z`Y2^r?5^lX4v(T9<?jl7l=vujm*=CnUEYr(AEobdd6c~?ahLBS=SP1YhCj;KmGJ2A
z!_-~DkJ5IzJ_>l`^T_W}!mjv7dAs}{B|ZB0FyvA4uAE(2yBr^dJ<8mbv@7UQ%%iJM
zFFrl{^x@NcPtWdo`t-`v8+&d)z3}wb)2n;lJ$?Q3?$dKmA3c5Y^x~cyPcJ_`_4M4H
zYkQtQy}sx4)3;9_Jbm``%AUthUp>9K=klIAPtQMn|Mbk$7f&zjx%Tw>)AM`I?78&x
z(w@_MUOs*E^ybr3FAu%k_ww7m*ZV%~d$aG%%j+*+?K|@F?92O4&%OM(@9xX5`+n>@
z@bb&P+b{3Dy!7(o%aboJzr6MG=F9i{-tIg7^2E!dFK@j3zVF)0&-*^@yYO=V%Y!cu
zzr6bL{L6Ryj=j9{^7za12VCEtIPmq2<J(gQJl_6!^ZkwI+s|+Qy}5Y6<*nD-zi&<+
zaCrOW&4mN*Z-2fybKv)zA8#%l`1R)WfpZ6(-+p`J_SWfb@}cMNGY(}QN;>rH{p0sf
z-lrY9_x{oQ)I;~*ryoi=boc$k_fOvke)9Vi{weHJ$S40#MTY}E6&^l&Aox?k;fPN`
zpL{<(c%OgR=Tq31&@Z8%GLA%kiTV=qCE`o)my2J+zdS$k^vL<Im%g6+dg1G{BTv6Q
z`&M@J$+t(}&mVp8{o(gDKf;cE{_*k0rypN_?Ed+7$&O`_t6rW-Isf(I_lw^y{<!#e
z<MpdQFJ8NP<Lb?;w{G6va{K1pn|HR{+H&XSue(3)e!u(e?$^7Uw*S0auq*jd>Z8J4
zDUWXNxwYrR)B7*)y?pTU=RWVZmk+#npLHnmQ~A+%OZG3_xy)%r)T-!Jd24=M+`Rqb
zvtRqN54~TqYuW2FF{@skNj;yxChdH|nm-rct$Vxf-qkx-?_Rxq_14vUHy_@-x8?rL
zyIUUI{Czj=QTn5dN1va5dU|Ki$ERPOK79G;<>Qw=Z?7E4ITZEj#gX`vg=^B!zhC!n
z<NYm<Zf@PaWqanMtVehE+}rc?<&&2$-#`BTVM)Tt152G(c$_X;vu*pwB^l?7*JPf*
zdf?NNH)pcWJ6&?T^zY)|i_VuEE;(#+-1K0}<C{-zKE3I9&*`4Sy}x(=-QB)D`_cEO
z-=2Pb`s3;Im(O1Q-uL3=wFACyU%ik1^!(fBC5M(CTpGJ7@nqe}-OIk8^gQi#I&Rh5
zGbL-X&*z-~u<pw`mrI}5eO&ix-TkXhn;vg@xaHB7XE%#>eOa>b<l&`DP99sj_~g;0
zN0z#*SakBo$v-Fmopd;LblI_GzfT@q_VeW5lZTe=UAAx8k!8P5?pfx#V*j!O%MLG#
zJ{@`5=XBtT;L|=Ud{2j-4m$0>BJgzBim1~OE236-pY~l5b2?;2_zKsv?knO}gs$*A
z?X@CuMc8SN6`m`c&-$MZSP{J<_H@8$zZJnN-kphA5q>&oMeGW<6(Og+S45n4Ih(br
zYSq^>g{!>JCap?c<#hJ*neS(ESLLtzb*5}p#;UYc>8natxt}dq_4CZ{GkL3uSN%ET
zb+&X(<*MXWo@af}{y5`**5Pc<sxN1<SJkd6TJ`Bn>G_IPHLD!Yx}B|CRlX{7Rs5=y
zRo~7etnxei;mrFpf6sh8Q@!fzx{_7@&Lpl{w#Mgd&H07rmz*y@zx@2F^J~tRoG)8b
zy~gv>+BHkhuRULVzW98~rMfkX&R3kTI=^&H?fKd@1?N|sUwyu6&5AX-=U1(%ShH@;
z%Jcc>SFee?<Z-rUP5GL#^LgjjtXZ;V@%fc&manNizi>_A`9*6MuPHje?0n^#y7NAl
z{;qRgA9^YJQurmWOTL%fF1cUwTK{WZ*roVOuIs<8b6D?p$!Wd+rN~Pz>oYEST>7)_
z_d1XDu9wm-MO{k2lz1ulQqrZEOR1NVFL|yHx%6}0k9Cgg-Pb2va$6sG$$3-erGQJ`
zm;SBuUjKbv#HH9vshb{NeR?%$Q@|$oO^>fWx*EOd#nsSFzplDpbJ_I$>W8c8n;u;K
zb2VjC#HQp;ew*H0{de`-RsT(%n_RE`z3Ol+a8u+ar)#gS{=WMDs>`*wO>UcFHhsDJ
z>FVdJ!JFP)eS6ho)AOrt*St1;yqd8oY16Z-@ta~drEU6gHE~nWrJq+5HaT8%-SqWp
z_@<Xv!#0I%^4a9Q>G@6PYp<{Vx#_#fack73cU!*Q{IliN&DUF=Z}GhKcFV^tZ?=5h
z;(N>G*2kN_wtU(0_vVu=UbmcYz1Z^o=Jze3x592c-QscU=a%0$-`;$8^Y4~VH-Fyz
zeDn7fm#yz_zPS1F=IfiUw*0vHV~f+)UpIqqdEa`rCGgg#Eg!ao-+I5r@z$4{|8BZ(
zb-m?u>%&dwt^T)sZiU=>xy9j@+gA5mpSOJ5;&#h*>(`r4t_IxlyA^cn%}s}`iT4uj
zx!v2lJ^r5OJ+FJmw`bftv_0;g^Su+>_iYcl=W);bUh=&i+q3Q^-8;BF{N9=Er?(&7
zo_TNQ_RxDi_ag75-aET}_x6x`zW0u7KfFEQUevvmd+zrF@9o(heedM<1Ka)X?ceTt
zFZf>iy?<La><YV=^C;q8+P!1j{qODCero%NJudfR@5S6(^=R#`+DA(sE!vg$X#KA8
zUAd1oJleRc@X_K&#g8^WTK}kY*TP-F&(`g#-If1n-J`|3RzKSDsPs|Yqiv7YJgV7M
z^QdfB$*vW<svea;s(7^N(e_7MA64zz`KWH!@?8awem$*xRIzK#u9ds0cP)KX@@Unr
z<&T!^TDGfr*UCo=9~C`Xx@+U3Esv@nt$0+q>;9f)kA6N~`>5=Z%QL@ckM{UJi+uKE
zkM}eGXYcp8J$t?<=-G#tpZ9#)6Y|XYS=_U?dmirze-`~L;aTW2&u7o}yxj9~&zn6y
z&lWxMcozTc#h%xD5}!TT6ZY)))0k)X4|qL$xX1O`(>;HluHNPNEb5ulGlyrd_C!4U
z_cZWXz_ZwA?$6%s`TWvz|G#|>uU@}&-2eTh$A0JiUtjva{r%GE)vuQ?U;cRM^2+Vi
z-+ivHT=skIci;c-rQ80WFW<iW^z!dZ*ZofW|Lk+v|MBJDr*B@qf9d$@%ga|U{oXpi
zdiV0r%fPpf4_rTR`#|v9$hYBdZyvaH;NgL&w?S|390+?G`ZoIQqXTyjJU9^Y_Q`>J
z2c90daUkMtz}xTd3lDvH|LuMLp-=BWzkm1s+spUw3l6=0pL^)X`@BPM-oJhS@qO{3
zqC+3vR~(N2l=`XiaLlK&!^MZwKb0RYIUM&X@l(>L<WFgzzP^wBRC+k&Q^u!+PqAOJ
zjwF1^K9cbz{!7f4xGzaxQop2pN&gc4CG$w~m$WaLUlPAu{(9x>jjuPqUi*6e>(#F>
zk5n9e{q4oKm)~A}t33Mj`;+hMe|$N*_Q!@F>wbLw5q>Q7*y5i#KNtPH@blu&uS<?E
zb37GyI(|jciultBD-u^koQ*mgdN$~6$k`>U7Oe_9yLeUb*?_YPSB0MqJiByN<k|J-
zH=p0WX50DoYc{RfvS!<w&1*KD-*|rGnl0zIo?mx<>zWN~Hk>cNRB@^DQowqj^?8@d
zE>&L&T%U8P=u-Bj(o2PxeAoN0uey|VDfd$GrIJfEmkKWVt<T-$cP-$W&$WnaUf05}
zWp47g7JVz|TF$26Yhl--uK8aJxt6sldsE~!-)o-NqOS#B3%%xj&10+Q*3?`6TO)5J
z-HN#7vo+yX+^zUqUR#rI#oUUz<-IlbR^lz+ttqz(?v>xGytnY)t?k+OE^V*6cYXV!
zd*`;--pjpLcQ5DOo$VF(&Tn6Q@5=VVdpEb&+{?dLcCYAO-o1<4Z*0G|{qpwP+b?V{
zy?1rH-`47T#rI0?9elK9*WO2mAMJm%ZP&g>haT;EwCB;*T?ZcRezbkprd>xKZQhms
zEah3jv#e)1&%W$QdzSYs_gVI{!e`(2WIW4%_H|G4v(#tb_9Q(kdY1Xj>s8?X&{x5)
zy!U&)@_FU^%Hvh&{;>V-ufkphzVhGivp?XK->abgL9cxG`|bCC6|mp?RmiL0{o$`7
zUWM#`e&F4Kn72u96W+c$@bbX3195NP9C&@;#eu}Pv2WwwzCBQW==b}QL#2oQzAroU
z>;2F7IiLQ#&;3+&IQvu9r_4{)hjWf(eaZfE=j-jSua4aM`sUl)Z_mDO{PFF_o}ZP+
zj{W?$WZA0at9Gn;f8hI)6{~{Q-`)OWN#3R%yOK_BKVN(4=%Wt@elA(LYRCDV=hJQl
zY+Z8i-u7dUe(b3^{A)@2t=~&dE^|6{Vp-~nloiP<5>BsLwR%<b*<I)Np5L`*_xYV`
z_MG3nX3?dEm+CGBuaCVJcP)QY%(eJyL0bzp1#Zp0m31rQR_3joTg&b(y|?n-ihIlN
z?c8<p(TPX9b{&6I{H)~J&pnZ^qFxn!sy$rzso+!Ir~FT^kK}xL_wD<SKTDRLJic_<
zN#|28r_xR*olZQxW>xCx^cBgc(^jOPPB|TacHjBfvnglSuG+9F^=#tVq_Z(+*RP5@
zyKYtT*@Ux)&hK5bZ_Uy3`_CUaf8hL{HHXh1Jip@7(o4%PMXV2BAG&_YrInXL)`zWM
zb}9YZ;!CS8C0$FqmU=DkR^_dXYsuGgZ<TB+-jsMP<yz^cqD_UH60T)lE4WpDD`acg
zt>Rl@TT5@{-zvOSa;xZ8=+=r`!CUWdUwd!Oy;b)fZGX6Z-M!WKPCeSa>%sO7_txJ#
z`{?weUwiiKI`gRP+3!82&+4AlKC6CK^{o6^#k0z1HP044i+>gKD)v?Q{^(bUuM%Fx
zy-InT`u5|2PY06URv!BIzT!~b;f05DkK}#H{c`u~`)^f8UwnW5{pI%)OOKt8Twk^+
z>)Oes%TNAY;(99Qbk^zY(;25TR%D*eJ-c~T_Sy8aS!dJEZe5jmcGIejtG2AlIh%3z
z(3+!b&YeGd{>=IPYp$L@eg5E@^_MQ4zi|G@niJ<QpFef}%K3}uPo6)p=Gyt==MS&h
za%uIYZI{+v+IeZ$r8Sp!T-thR^QG;V;@8Kn-*{>5r45&MU)ppjZvFZ5QR`#YS6s`z
zmVGVfTJg1#YX#S;H<ey1x|V;fa#P;5@=aBn3a?dOi(X%`sr*{mwVF+Jw-(+?*t-1I
z%3F(WMQvSnYw4}%t%+NcwywApv9<PA^{vIXs&2(^t+}=2)~Z{PTjRFIY>nL-zV+qy
z?e|`6-+gc6y*>9f-P?R`@4a33cHG-}Z|l7+_x9a;x_#TdSKFU#f4%+9_UGH5Z9n&D
z->$v8E<gISXaBB)yRJNXy#2tg3y&^6I{)b6qt(w=JzM_FVQ<na$Gyv*{oAwR+0ti=
zo~?Yg_}P+YfA?g*O?#F4D*aX3+o=7?uOjxx?2q1`@+#w1<o?{ZUk_9r`gY*+fvmR~
zZ?oU#z5Q|^=WY61rw^_lN<TS#$p7N@VbNii57mbpKRADI|4{a+<kRBA#h>zyygl;q
z+nXbwzkT@j>Dz^)n|_>Hns;{3rM;JGH|@U{yMM{y>Z6-~oL-uLHeu2A^Eb}#yR`pO
z-KK?`R^K{w@8G=y_pUy=_UQVfL%Y^KTk|aQRowpg{Y7u{-xj<reCzqa<3r7%@=y1^
zo>_Wq&7w_*@10$G;L_qv$y-ylo?Ci;soSZn6`3oJueo`C&8-VdFD|{b^zzc|6*(*N
zPUoK9wyNlC!P&yIx6a=_e|pWyHK*2`Sd*|mWqtDcgO`%lC$2wqY1yXgYgN~lY+AZ0
zZENb*b+^{uTE6M+_M`XSZ9j7F#-nx5oc3nDDt^1{@Y2IIN3Sd`KD%Pm%}0lK<)1D%
zU2=BEs-3I0uR6cx!kV*d&aJs~{_goRYYtz^Sf9Cm^`?`T^4909KXvKorR?=t>r>aC
zxODu|kxRMjk6lVzpT2(0riIrQU0b`U=33pgCD#^TtG%{z)2dC|Ze?%H+PdLZ#@5ZZ
za<*={mAiH0t@N##TesfYbZh;sOZSf7`>_4<_D|ctZ~wOa^1X}qPTf0q@9e!V+b`TZ
zbMMN%)Azn^f4}|X_LKK+KRUka{-a~N?mRlW>%_hD_wGG9vFpL3yN_-?+W2hiv+d6|
zKil+d!!y^t&U-!fdhXrw%x&-bXYPBC?ArFsWpB=_>{rFFa$gm_%72xxzwlM!{-pf{
zukv2~I8gHT`+@SerEkmL{ygCOVc{Xa54DH<Khz!a`4I5I>%;QH6`xid&OhS)q2S27
zBlo}79sTmH_UNncUypt}dgkZFHTTZvZOz|$b?K>P?xzY*=dReb>e8CaYp$$WcJ1_~
z{PpWLExoqmR^is|w+gmiz2~)e_p=?(c0Swntm19phr%xfU%r03wzTwY!TO@D*X})h
z<h{4#RnUi`FV~muUUhxV{qr~0Tw8N>&6!Ju>x<SGuivm~`L*?%cHY{!sd(%4dq1}S
z+<tP`sa-yMQ}&m>O5R`j_Sb>n55-?@EX`X{akl*Io>gUM_pYiu`}F+nHMiD0KmY9f
z{WbU2++6eU{G;=a&p%l6;QXC6PtM<6bN<rhOBXL)xOC;x)l1hdox61QQtA4#_17<5
zy0qcijZ5Y0OV+Qtw({EQYiq8pySDb)rfXX_ZQ8VL(~4``H*LJOWz+g=n>X#bweQxh
zTf1-Vzjg4|p<8=z9k^Ap_4d67_io&~bMN83yZ3%=ci!=L`^|f|?w#A^w&UM+mmPn$
z-@oU&<K8{T9ly6b?Ra$W*`pVa9Ckc@bY|DfM`w3EfAr|l(?_o!o!<52k>B3^&-OhF
z-0Q!0&oke>d!GgDt$nrdRo$zyS5>bnUzNW~+n>Hab$`XH>Q^<dGWI(hT>SRWf$F#a
z4mckCdtlMqnzz3XEPPw_w(f21+t3e74lO;j=+NRrAs?zgtvp=$sp?b7m+~*AU&_8b
z`1=0H>+f5Bd_Vf*$Il;W$8IitxaRP!$M<e6&0n!^)r<2l&sVHJa;tQ!`wpjrOWxLe
zs`zqy>B6&BXKT*Zovl4veRlt<M{7Qve|!Gb`H$zHta-ZT!}<5;-<^Mb{>}N%=O3@B
zS-)ic;`I+N-M)15(!%vSuT`zTcj?ikCzl>vx^-#M`umseUaDOG^wQGxk1y4(zjLW>
zef9dCn|58>d~NHs?bmi(+jec&rrp=JTsv{AZ0m(vM{ixcb?nyhTjy_`yLI~3j!orT
zPu@Cnt77ZfTc>WlyZ7my-;NKD0(X44_x9e4d#~=jzW3yw?+%|G9y^}j^WPD$<JrBJ
z_dee9+Tp$9{k^C6K0Ugy>&v4z_r5*4vg`Y!&yOzddjIJ1t~ZZ9KKlCT-6PK(uOD67
z_4ZN7-h<B~_J-{}zw5-alh1<p9)EV~S?J!Ny@#J2cy{#Jp=XhMk32i}EPQX){uQql
zy;}Ba&8xMqR=!&GYWb@ruX6Th?qB?B>8tGht6#YtT=jP8Ti1im2iLrHIk@8O%D2nj
zu6-N!!TsR!x9i@nejD{6{KK+C(H~+z#C(YO5cy&8r&WjRJ}vrG`)SFig`cXv)PAY_
zQh22LOU;+MFGWX6juanx`1SGEM_<2v+xp|zk2_0?P9Ipc`0T+|hgK~*`{Vrg^Uv12
zT=Qbh^EF@2e>?y6{EJJ=*T1>+`qHaQ&n_)nziR#3_3PF@zx49bn)R#KuUx-k{h@0I
zuI;(Dd(+-)dp7O6w*T6}YkN0cy>;c*<y)6-eY+R5<MX|*_kwqX?D%re@$t_`zaCxR
zb#>RZUCxi49{+pv_tBq6zaKd~{_*JavkTA8Jv;mC%(L^)*1gKz?{RR$ThD{*-^PE4
z`>_1b(od@oFZ{Cb==X2ie{B1);^eC}uh$&D7PjN=(xMfGD+*RDIeTQ);Z^U}{5t>l
z{O|K`*1TQw^ZcLlTi1WS^!3u0OPkiezqDcf`t_UFZ(P4+{ijQBFTK0;@zRG&$F3c}
zcJ$hjYx_3UZoPKv#;seoYPMEwy?(2D>&;u0TOIFzzxV6jzk5+T{@nY0@5jBL_ab&U
z+z;Oovm<&(<c`1hJRf^Jc6oebm-}P4$2WJy?Y;CYesA>N*u7DEWA?6pRj_~Ks|~MQ
z9~bQ}+@H5UfB)9Eo8NjJ-12tY+f8pbzD@YB>d=ZqD-SLEwEWZB!)p#N{<7rDqAx$b
z{rq-ssmH0}6-&<^TXl5Rva=2s-mm$0{==GW>wjGOcInTh?d!i^`hDr=rC*m$Tsw7b
z|E81I4s2Sqb>Y^!t+#Kv+>hN6x5N3q(|xbUw|Cvz<^9;_apK;Dy<1;hes=ZQm1kRC
zZF;rs)#g{l`?tUKKDguU&bO-%tvOVB<l@o$OC2x#y|iQfuFX3)FWGwc*5a*qZn@sS
zv&;AK-CbozmVP<C?D(qXXFsj^xW?&%^96^?PM3GCce(6-+4Zv9W#`NPF6~<HaoO?m
z<!i?_-MMyn)75LoHyzw`;o9A67q6YWc68IBO;@g6zjkEPjcX@1-Mn`G+O=!9u3frz
z_S)%dx3As5_2kxrThDGS-+JcS!&^(Y-n+GC>!Vw%w?4kLcI%3*>$a}kx@zmPtxs<y
z?g+RaeBb@P&waQ1$veF6d)!aj;eX%nzW06K`=0k7?h3jeza#K|?Bf@^A|5~A<@Y$?
z@q=BVk3$}ZKYqF^=yBlVC%f+N3V!@(SLEa9$6=5CA3xrex%b|#n8!DtCGEZaEO~G0
z-h0okJ$tt6&a)fO5_V+lP1&2aH+^r}{=3hvKg-&C>)C-<yI&oBRkDBYtBU=HU+sFe
z{nfEofd?!1A9}UpRr&rsud4U&e6{aY)&7I8j=Vbk_RQNoZx6pc_}2g6iMRV-?SFgn
zt>3|YZ}+}E{`Sb*V{do8J@wY-;L*3|-X3}zaM1VQfw#Ngo_$-oKlwxAhx88{4yArb
z`LO9w)`yLUvOi>eSa&G%L(+%!ht?ii{VDB3&W9DBHXYt@c-5yhpH_a_czE66^@lef
zt~j#l%gQgyzbyN*;!F9F$|E0+JpKCQ>#uKrzWw|5_uKDpi;pfkdim(3qgRf;{r=|r
z?;ksU{P_`aEb>_H&$?r0maRDJdcp02%Z1Nt+%I@s@Vwx8+5fWd<=yMOFZ*2fyX<xO
z<fePqPH%c}?bN3G*IwLOzxCCv=eHhS+pzWJt+4wkJ3{WK?g+h~w&Ufl#K&=u6CS_X
z^?FzQ<NMDZJj>qu=-I<(iHlCXI{oVSs}rwk_Sfz|`6~Qi@WF_KAqT?_1|1ANxcSie
zx9dKw{j~Z^)sgBWj^Cesb@=}G$C96CmzAtodG^GrZ)<!md|Bgl;pdvKYksZyvBvwt
z_ci<1?^_>r`S|+a%aNB4uMfH$aXIYrq4h`BhhE;hKIHO=^+(sATz_nR;N^hJ;g=7r
z-?RSU`VZG$Ufa6$#kKRBu5G%!>E@;zo33nnbnWT2C)X})dUoyowTqh`Uwd=y?X^pr
zUR}Gs>FlPfo1R}gv+4D<ch`R3`gCj4)}Ob&-FkQH`>ico-`{$DD`&@-TN}6jy0v5L
zuB~rx?cDm|*5<80ZhgG<_15QG+qS;BwR`KiP20Eb*_yE<_I~{R#QUlDqwh!F&)Si2
zKjnVR{fPVF_ml2N-H*GUy(4o++Wqt$$@hyMzuT4dxMFX~<Bz*49)I7J`ndFQ(&O^S
zX^;Qy`n{{{alzxayT0!Fvg`A%pSzMD|Jqgf_}i{GyNVyb-}PbFk6js$(;ufi&Uu{q
zIQQ}2U6qeN?aF(c|2X^cpIy(N73{6tTe|njv!cCadp|tO+56&I$==t`o;@qxTfX<{
zv%<aapXKd+_w4Pns=Y-|bN9Y^_V`)#-dE4^_r83#X#ev4b^C9;I{)hStIMx$zFM(=
z;r=tPF1@<*>guaoug<-?_G<C|E3cOAU%LOotBbGBzPkQu$^Lt<?!LP9_S)O{gBRXL
z9?U#==WXJ_*n^kfrW{N^c<*h@!K-gm4?cK%_wB{E2?wJNW*ofnHu>PCw{ZvWzfC$A
zeemYnw1d~*-hP|+q2$BPL**Z~9NKy)|3le_!VkL+Z9kOzVcVhN52YV=94h)y@L|WN
z?T2?9-g0>B;VqvwecJYE*WvA-HhfzDY4fLzpSB&|`f1IVx+Aqm)_z(4W!;yBM_zw@
z@%81`=U-oa{dDBb*N;b>zF$3h{ph>z*N*P|;qcSx=f5A0KXZ<qTlRZR{-smvZ*BT>
z>+h}mud)t4e7pP5u1`BZEjse{tMm6CM?FuSTvfWl_d>$u=*#h!V=tdxA9p$C^2clc
zZaLh}yq|SHZ%6))jQiR5)9>f*aM)e2qv~<Z-jB~}_paRk=+%Q)4_`fb`}pmnx4S>>
zJiO<V%lDs0cl|iO?DVQrtNbtgS>tyh>GGNNpROfdzO(7;wa?eST)Vx=>9+H2$J@m_
za_{Hd&%0l=qj1NkXJ4Mx?fv}h@vBw)D?e0x*nN2Kr@e>w9NzHd-Pg}YE-VYU@OMq>
z<#X#(E+=0;yZ-mJzt_H9`+n{2rXSbtZTfTV=e1wg?r+++b^lhE+xhnk?$<qb-tD;C
zX?OMGn#Z+|e?I&5Y~kMT&%QnT@$BofwfmpETD^bG{%3Eq4?can;(gVJ>JNJk?LCxp
zaNno>pEiD3eB|P?OUwSPIkW2g`oIeZwq9Q5xHjlQ@CAppPHV3$3%PJ{ecI*A>o2Uo
zwBGUhgG~<C|6MD*zwq&*z3cWrd-e3y^SAH6UR_pvdevFywV@X>E?-%ne);Np=j)F)
zIbC<T{&17qZTH)*w-0VD*-^T~b@$@Oiyph|{{8IFv*)i04(1=sJ(zc}@L<h{{fG7)
zI`C=Jm!(IS9KE*e_r>xZhqjjOaNB)-*~*hQmfc*o`fS<h^3&xjN=}!ps9aHcx_U*`
zii*<}D=w}&ziRE-bE__|y1MGpstsq?oV~W{!m64TS5~b*yYB4SRnZsR*Ltjty%2sO
z>O%5`#0#El(=Yg}O}P+rA@YLf?W7AXYf~?TU5LNnw$^)X!Ug}ezH1{cc&&}Q;J4Ow
zZQ6xf>mRSbvHsfntjqV--(H_{`R@Ac%bAz+E<alTV7<rf{L8tQudlzk{?7XQ>mRQ7
zyZ&U8>vi|*9@hh|`&{?B?t4A(`qND>H@RK+zy5sFvrXRDJ+D9B^kUPAt%0}wZ=c%g
zb$j9clUx06d*42~_4L+&+sC*1-ge)8Y^%@hGh2^rJ-oI2e(C+{`^EPc-LJS`biaDX
z;vKd3%kJ0hsM%3>zj8;#j>`MBJI-#cxnFX>YRAGIi+1?z_So&ad)ecqkC#98+P&nl
z_wH4XS3X|x*mJkzbC>5U_BuabzIXB7C3~0db$I^o*|NP(&;LGq`Renljr%w3fBWkF
zt5>hyy?XKL<E!=iKfHSL>eH*&uSyQSc>C^c#lfnB<p;|SmL4oV`10+Ww?zlvzO6j?
z`t7T?2M!%PwD3dihq@1kJ{|nD@9>r{OO9;*^5LuN_hm<&f4cm<arD-*>#Krp`|Yki
z`2OwfWlz^XSs#4+%d0!f0@jAy4!s?A+kf|_{dbq$Se0?%+4_RZuQr9>Ua})#_vZaI
z2M-<E`sLoTo2#C$54wJCYvAtHk6oYNUv_@$;`>3nA1vE=HuFN@+M>&^*1uT)a{cS|
zg_pyxhg=W4{(95fO>Z^@Uw^kL^m@eY$lFo3m)&1}f9d@d_m}QiazA*t*K@b$p3l9X
zdpvi4{`J+jSKnW4*}rxF$G0EeetNt3!=evIJ{|pZ_|wuO+rDi7;`aUh_uW4pE~{Np
zd+^b+i0jd}9glgP@;>Ez>hUtaQ$D8_onCyp`t-un3s)>!QFFTLbmi&V({(HAPG?=%
zcJ|Jyt!KBNy}fGB+54+Dojq{&*x6^R4xfFzYUkPgXAhp;a`w@xyQ_AceX{ELs)ws?
zt=e~X$JwK2U#@z(>cOhLXWy*fefHj}7ppd(J#_ZS*`&2GYg5)Ht}VP!av^qY_Jy#u
z32T$rrmkIdq5MMV+JzS)*M_eRTAP2N?n3c}vI|Quq^+&J5VyAC!jcQ67b-8*T*$q!
z_(JuCoC^gP;@3v44PG0uHe_x3+Pn)(FGsJfy5M+j#pPe?%PudzTzh%b<yDvKF0Z^?
zak=L5*2{m_uf4qF^4s;BFPB_ibNSEu@9T>%e_j7&{m=EQFMnMBV|~$unA^)PS6%+S
zzWVaQ%m3DwUS5BB-Q{hUKd=9=e#_+zmzQ5&botx*PwUGszgxfY^859bm*cJ{Tu;4T
zdHv6(Pn%+||K0R&Q^xiD>!sI|u4i6%*j#?S==!fsKQ`rE&$=FS{r#rI>yg*LZ~D0@
z?RxU{FPn<5f83OEz3O_-_3Y~(HvQi8c~jK&`0EAN%dR_aj=r9LJ@@*zO%>M*ua{i^
zx+&*&!tLu@Yi}>Vz3TSWtr@o$-_E>Ue*4kZ;@kJPmfViLz2x?btqX6L-d=ON;P#38
z>u*2Xns>YE_RFnTwiex9dprAf%I*By$+r`4U)Z|zcGm3`w^!c2vGwlOn_C}lt-F0|
zYuW9z+n2V+-ClHi_3hN#54LW&U3fe9_QkDFx7OT#zO~}^ovqil-rIV4>yxdOx6^M|
z-%h%{?Do3b@wboPzk5G)$C>-5?r*)na>vp8H}4<3zj4Qn`}^-d-g^H2f&16)Z`iS7
z$Ey3A?w`JY`2L;y$L??2asB?<9VhQ!yua=Kh5HZhZ@ho${{8!_@890K^Zt(e>v!zA
zzwiFp`}gi|+Oc`ZhWo2`Y`K5y{+1nUcC6d6b;pDIm+zmuzx)2K`>S@WxxakJk^5`!
zAG*K&{_XqAc5J@C{{Geb>+UD)zWn&m<28>@J&xGD`|;7o(YyCOj@-Te@!7}g9v^(X
z_VND5CmtVryzBAS$D1E-d3^lwrN?_7NA2GJ`1Ir0-P;~-czob-;_lGhal3as-t;(p
z_m%r$yAMAO*`2&QX7`cDJ0EX+eCF}q$4R>{JdWRe{_)Aj=N?~tT>QM`dHVCT=Sk1E
z>|L|B?0M<)mG|SHCqIvUUhq8edHM6G=Mm3Sp65N!e7<e3|MT4E+xPChAN@S&dFb=%
z=P}QNp9enod%j_B>htw`H}6e&p7DI;-iqfn&sXmaf1dq3|9Qys%IBN*ZrtnheCyt#
z=V8yYo(DXSdmj0G?cQ~JbDq~euX<ki-1qsay`HZfUOT_uz2Eiq&sUDG-Cyt6zi0op
z{l8!Nymov2=T+!y|JOfWxxM@MYWse#*CDU>?+<+a_m#_QkJnDG!(Io!4tTwD|E~S}
z_Wybn{(A3z-`C!+{ay#Zb9m?aF6f=hyWeje-z_@$<*n~K|979?E<70c&hy=hg8}cH
z-mN<L^KH;;uXpb6zP=58x8&f`gWunJybF2f{qFDE<p&oZ^m+I1ZP>dXZ=K)yz5Dg{
z&)d_7zP(*}@W`RMgUb${IJEi0$`4CEtopF!!;TNzKb$&r^3duJJ3p-Zu<XN%56eHS
z{jll7(hqAsZ2WNi(E1NY4{i8x_|UOKS3hn2aOm*aPZvL({B-8il}`r_-~4px)2UCl
zK3)EF`0$a#*FT;9wEytI!^b|I`*h;djZfD;9shLx)4nf94`2AS{K(29%Z?oWvir-<
zFMGf2`m+Da!7r<htT}Sv%i1HWj~x24;>edHAHRP8`t8V`FW<iY{rctW@2|hU?)dWc
z>$VU7zJC7t<LjTVpT2s1|9a%-*Dv3_zk7an|L*bK=ljj0pT2+i{`LFk@87=PI{NYZ
zo*%A1-F~|NJpOa<PybV|R%NW+ae4b?hYe1fYpz#cf3<bTj_o^k?zr-}?s>%PsMnFN
zS04<2x9h{wpHG&ZJbUWwiL=MgzFxKR!tx8tE@ZCFUYoUc#f2l64_@AX*>S_6%WfO?
zTt0pI?B%_eoj07jeDd<{%Lgu>x_s>N;maNy&RpJi`S|6Xm)$qGY&d%P#N}O=T{k#w
z@Y%fdy7%T4*H>Tn*zC5s?)u8>%daoFzUKPc>+7#?xL$kRb@QU@3$L%c?!I~Pb<fQ%
zo0nbp-R!k_)%A~C_ut-f``y;(_xIl3c>B%PZMWZV-F17%?N3`@Z{2iz>+KI)H{afO
zd(Z9dw|Cy&ef#a!7x&-Ye{%oT{arhr-9NBn|Bih--rhgB<Is-B_dnb}ykqZ<Jv-jq
zKeFS|{ipZe-+z7o%j1`ickjsBefROF$M+tm?!Nu_$>TeZ(|2Ec{PA(d?st#hKfeAr
zclWc$4<0{%eCzS&$FCnheSGzC=I%F-b9R4t{OWPq?iY_AJx<wu^YO#SZy(=({P^*~
zy)W-?dcOPl#^-CFuX=uH?~3QyyB9t`uy^_M{d?CuU-^9J^DWQUJ>UF%_ukdd_dQ?q
zeDU*L&-d)z|9s!x1J5@+zwvn6^YzbnJm30!+4G%y_degXcggd;dsAL-f4=8=;_DrI
z5A4r=o&GxYb;9fX*GKlpyv}%?`8xh}-0PgzNv~sHC%?{n9sN4@b=K=c`w#9vyg%*r
z=?{_bHXe+97xgajUHZG2cLnd(9n5+c|1SGo+PmC$aql)C+;lMEUEaHhcRBCY987ta
z{4V2N^t%lQw;W7*m-%k%!PIwa53WCW{KL@?XFi<#aQ4H#563=S{E+|d(1-JfmOkJ6
z;nasC9}a%l^I`Xg3m*=A*#F_|p%Wj@96ERC@Q3ps?tQxd>Ez)%pN<`V^6Av!XP<6=
zI``qlr@NnyAAbDl>8A&uo_~7u>EWjnhmU?a_T|Kvbw}18Ir-)Imm^=CzPWyL{PydJ
z^S7TzejNFJ#N}JycmMBx-yOaMe0Tfi`~Bzl>)*eBzkT$__g~-l|M+!u-;cdNejklG
zmiKe{&t*SX{Cv7>)rIqyFI+xw+x^>tAJ3NMtX+L!<8{Byhi)Id{dw!r9S5Hu-g{*4
z(fxmpK3}%x!rN8rF08$fyY}Mc8<#ydT)TYb^6kr)E?>UvwZU)0oy)!(Ze6~9`RZlw
z4L%!gUJls2>3ZnqL)Sw#AGyBcdeG*>*Ee4e-n{?%?(2K6Z@<3py8q@~*LPmudi}ul
zJ=eEf-*!E4^TF%iww}Fx^7iT5$8I0JefajN+h=Z{xPAQgm#ts7p1*x|$EW*0?ti}j
z<^Iq6=XV_6ac;-Q`$uk{+HqpX_xs=OpWJbJ$JhJEcAVMq?QzL&rzeh2em^eT?eOIL
z;~$Unb{Fja`}phQqTPkNe?I>A_|N0w-M=26yPd!L(DReekL^AC{M6o~&ksL8^Ze-E
z)6b9ZJ+b%5^OJi|JwNvR`12FbOLrH%u6ccGfBEam*C+NDzAk-T@%q^Qll!Y*7r!of
zUG=)?b=m9V`-|QczT1AV{N2uj+YT1L+jX$yUFo}ucRLPV`*8Ea<quasT={VQ!;KGR
z?=F2fd-%<#_n$s~diCk`r+1$|d^&gd%;D3A-+p@e>C~4EM^1n7{Pz2Z_qRVsJid8-
zTX8h#`|_iIzyJCE`@6?a&!65uy?zFqda*2T?a}MsxBj|+;n1f~i&uni4%>X;_K&TX
zZeP6p`~HO;&QIK)xIS@ta_;$s=jWfF*?)Tf?t_)@s^3+;yLjl!r_Z0xeA#&9?~#!2
z!QZ2gEm^VtLjKwl*N<I4e*MbrtGAsWT)zG1zT*Rj2Tl(z?)Z2A?|qjCo=@DLcs#lM
z{NnRV&ud@TysLe8>Co3tXTNMZ;`1%^`^uyLzWe-Kx}tDx(b^3cHeM)L8?qs2L*Ryp
z4FMY>H{87(wjp>!_=eC8{u|;qM{YiIJ#KTt=BUlln@?Sj*nIkW?B<i#V>Y{NbK7>~
zw(GW^TmNo-vcvPit=s>$-o1VAw)3_Jw;$bpeEa(CYqy`=cG~vv_Wj!q+kS6#-*)@<
zo!d8WJ8t{4_19L92lsc}+HrNq(;e4#T-xz)$Gsg7c3j_aXUF9oS9SzE@O|L=!0W-I
z9f1!X@3^_c{ek}j?+1Pld>-80;r8Ih4xc9#yQ_EmJz2Wj_et&U^LzcDEZOb-WZCY@
z-M4qt?5^5fw|mj<^4-gKFW$Xyx7U+vdoS(1x%b-hTYDcpzy195-p9}HKEJy6-t#Ma
zA3i^~_x|&%&(H2%_4@MO3wv+uz4H9V^D}#|Kfn3>*7NIo?>v9-{K@m%doS%@`g-;2
z6|d`FuX(-j_43ze_g~(>_VxMwH}_xJzy9^g*BACLdVOpE;@3-F-`;;?|HZxM_HTH7
zXaCjx>t0{ne{KKu{f7@OdAIi6s&{MN9XPo3-RgIH4laLp<ly3WE8eYtx9s)GcZ=Tb
zJ-G1QzJnXy?LWBg-JyeZ?+zYZ_U_JyS0A2!c>dw`hs%d<eYke$>Y<k(9)7s@;mL=)
zAMSs6@!{ErD~H~Gc>Uqghc_P{fB5<7{9(t>{@<=0e(>S@r%Q)_eER$8%HgYrzkPD}
z?DYB9r$3+mefs^$`SZoY*AHJleBtngFWZlt`*P{a<u6;0T={bG%lR)mj%+z{^~<&+
zn~(fE;&9aOoA0-PZ-L(&kA{7Z{=VvH#P{&;QQsrKJO8+I)ai%A562(>j{ZG*@W-Ja
z4##|d`u$8lmV0dF&l5kFtvGxA-1VRb0Z*PjKX&lw!FL~AKD+!_zT)2Hs11pmLmmV_
zxU=`!^SgUDzPo;??AVGGr_bKMoV5A;^$XXZ-uBq`Y)9CG&<EiU0-ppuS+V=>{(F1x
z?ce%t)4MJ2HorT5@cjq3&#s@BoQ~NLz2U*-i`Spues<e)TjYbN2N4fm?0CLo)$WzM
zpFiLHdgJR&ukY{Q{%+g5Pai&h`0&B~^QxaKR}`-;SsS|{Zo{L?4=-Q3p0PP?bMof&
z&8eGHHhXP*b^GlOpKXEL-rNq}7PKvN+w0peZu@WZ-sZdQ<?WDd0o(kxz2EU}$D17=
zcD&m0ddJHh(GNnNtl7PG_v+ojPePx(dj975^Sy7MKiK>7`Te~w_debGZ11DJFP=Z#
z`|kPc=P&j?-uq<l*4Nu#Z+pGt^@IIeUY|a=<K2maXAYh^c=F)q58pm~{qW_(jYA%v
zJwM+#?DhHP;ax{|9try9bTs%|%=gtt*Bo{I;dE@(imc6<n`0itK3KPV=j&H{cfH>E
zZuN>y7s}R_u6=wte#4W?SFc~We);;l+Y#H|-VWdP{&v{5_y<W35*{QzNPQ6ZAnif&
zgOmpwc85J#zx&hk56@rkegFL9^EZ2Uzuxou>_MN;exJQR`+mOmCFEQF&owK`*FL@c
z{PMHQH?HSwzIHu(^UdqGu3x|Y`*y;%&$oZxj@}lx?bGeZZQpL^Jc!-)@%H!IUvB@p
z{o(eH+cDeXw|%`Gwe8c6j0Ycg<Uh!J@MFi%9R&|Q@5p`deMixQ%m>*IzU)YUkoBPO
z!Pgzd55Dc#xI6ku;*-cHNlzl4#6C%WlJF${N!*k0CoxZ=o_yT<Ztw5sjxU^FIK24r
z{MU2W7fvt!Ja>EX^SR55_j|wY{k-?{^Dlcp?EUim+w-r_|33fs{L|jId%r(F_WIHO
zy{{kdf42Y7>;12v?mztc$m@NtkH0?f`snK?`ycK<_<H}l3kS~~ym;{Z!F}&`zuWb0
z@4G$kTtD7B^!vlF4>u1vesuWw{e$zzKOgQM`uV}><Bt!w4&6EQ_rvW&|30{U4ElWU
zu>a@a&$kZ;etvNH?%{yX_Ya4BzIAxdk$p#Qe%X8E`j<P0Z+zK(#QCV}(XekWM?=3Q
zeqVbu;rqIyao=OVCw));?)D@8`>`K~e;oO7^heCGz@Gs>{eKqx-1l?!&%9%6S0rrs
zwd32~6R+<d3jMt1=eiZ|R#mR8Sev}z#pT2eFE1x;xPSfj_1w+(uHU_W=X&1e2iG57
zcfR9z$Mufe9iKZMcf9U6-T8Cd^N#l&mpkrv{@za7=5XiV?Zj=#+y3q-eNg_O>_PQ|
z-#aQElsu?>Q1#%?j(<C99;81>dy?`b^~vVlTX%2Ty=AxW3%?hhFT7s-*!y?y_r3r2
z{@m;R!sms@3x|Eb_x{@ZXRrH<Q?Fm_KlA$4{`0R-zdrf;-0PS7&%S=X|MJ0W2M@lx
za`3>rO9!tWbo=Q3(c|NTL!KWW9(r^*;&bHZ@XukNqdq@8eD}-kFL%D&`*Q2c{Vx&U
zBEN-yb32;yef`nY?;bzgf2?1Tvdv-Vw%u>`zuy1&aLp0-qZ?MFY;fEe{dw8xjVrdS
z*t}xXilwK|o;`o|{i=_v&YV4W_QR@+XD^(+bavZ?Ef;FmZoaU1ZQa`HwM*94u3fZt
z;o7Yis@7(0czyZf<@61C8!|V%yZqsD&W2Z)-(Jqxkh<Z`<?IdbFXwJZ+wl1Mv+D($
zt2UQyesaBTbNS|)%|)B@Hy3WM-Td@=>E?>fC7UZZKfhkRxp?!V>%MnVxB1^m-<G+}
z?@rpbtZf<F+;=X1;J>r(LBLMeoeLj$?OgQ0d8gA(-<>`?y?1)<^xIkcz-6b~PLG{C
zcJJQ3fA`Ma`*!cyy?yuI-Me-Ny>Q;=xG(sH%RZ-lfiD7HeAw^*;@$qY`!Bq9-S>X~
z#n+$qUwZv<|BZu(-(5d==ise_w+}u(bo1b$cb8v3I`rhwlfzFBKlpO*=-s2+R)n6)
z-w<>v_*CGjkW;HpFF(EJ^orBlSL|A`^7PIXt55G(arNx=vtL$SK6~x#m9w8#eO>i=
z)s72$F6_LpeC>+0yD#j$u>Zo+wfinCTl?<%t_z<o|Gxb5@|VkBFaNsy=W^kO@0UMc
zF4$1C;oIfEmw#MdxcTGtm)GB4|8RZL<`>srUEhA;&Gom}UtiDJ7Ix>#>+m}vcNTBX
z+ZKE$@=nB^>}@f3g6>4$3Aht=C-hG4wp9<7K3M%=*@GnymOlvGx$?n^2SGaz?mn<P
z?@8g4%qO`|4(-l)lJ%tEN%oVBC;3kzUwG{E`WW^i{6*-Cz&q~yqF#i&aNFm(FXF}3
z*Pr)adwu=&k#~0wdVlo!==(ADbIj*QUmkvm{uc8s>Ra0P4M%scShaTL+R_ar8yv1U
zUio*qc*EE0->!eUzGU;~>tC+N-$}d^dne&e{<gR~1>1`6hVBg68N74NgS8KepOij1
zw)^nzqq~pnE_qV)B=JSui})A5`x0J6zleF^wa<HB><gcLw_o3Ree?CL*I)MEczxpC
z(Rat+Jvey!-Ti|n-<^4P>fNz-_YV4h4EX5xG3evdL(dMye|~;A@MGNPXNRADdG=-h
zktbgse~JC(an$q2i66&*I3J5WcJfEz&-`P1R(x9(w)4P|y(?C)UAnn&+w();R~@`?
z;DXbYiVbBOsy4V>soYS$!THLH&3~>h-@J0O(~Z@e|6O;u@%{R$&CWM|UjKFd$Mt2K
z9dG=;{`Y$Bot!&acarWD-buZaf2ZtD-kr*ArQ4G4WZo&?mT{+ITh+GgJ4M@yx0T;1
zy;E{0?M~61vTY^XitnV{NxxHYXV;VM4>mkF{NT)k%?}cH9(WMGGjeC@&W#VEcE;>X
z+ZnwxW#`TZ>mDTS-0>i8=cxzDJ5M~=^WfNngq`ajoP2QP!RZGPJJWZ@?%eud?}LL6
zjy{Orx#hv82m2oEez5Do{s)I19Dh*p<oNC-PpY1r*?nR6+9z9|EPHZd_o^q`9-Q30
z@yWI)>z-_Qvh&HNCv{I&KDoI2?CzQ;tDl_Sz4Xbc-J72*dQ$o1-0mGus-LWXvgXP1
zC*@Ddo-BN_<;nTo+n>}vS^OkuU(~+PeM?>}e3AYlV4wfKuzjg7LiQEDNPdy>!f)T=
z7ZLkPUR1s)e(~;g{)_S#r7tpGB)zD85x%ePMa7HU7uhe;UgW)~ev$Q}>cyfL!TZWy
z)VwHqk@F&O--;&%FCzD4zWDO``~J_bKfHE%^LxMJn;);8-@JVN?e*XN4`1JZ?exas
z&A-=gU%z?%=(WRv7q36P{`=bbfa{wV2VD>R+yCtK``7ngKY0Chzte$V`=7u5{`%u<
z#{+j?KR)>L^`F;&_P>7Za^UCwAN#+){{8yf{wJ@0y?*-o)$2>|uD^SF@cF^J?;aj}
z^X~Dx8}Dwud-U$z!H4fIzI*WQ%DcDk-X45?@anr4?{2+&{_f?w3-6vCeD&_$yH^Kq
zzk74=$-5^9uf2Qv?*6;Sub;iU{O;w!*Y6%3Johf)W8}w|heAFke~kWk=UwW@(2p+;
z#eaNt=+mJOhY~-2JQV&h;$!T`q>pFcy*`xnG5urq$GDGCA2U8?eUAC~?$Fyq=ij|Q
zl=3m{<C{a7AA>)JeJuW*{Q33a!q17H-yF{QobmbN;iAt;pHn}-JY4cQ_jAGL_lLh6
z{&YC=bIRwphu<Ae`26bdi^Crd=YRfuIQw(y=dXv;Kj(e^{Ke_(*Drs*q<#MN<>eQL
zuZNGk{qpb2moJBoxP1Ng<@cArU!H$){QBw3_b;!%y#M0-_2-utU*3Fq_vOczgGWAo
zdG+PPm&9*r-~5keeDge-@-6F|-%+ol-bWL@rGN81n)=P>X#BV2Z%N<czGZ&fcr^EW
z!S|f+dEfKDXMWH6p8h@id&c)oM>ik!{^9$>=ZD{q2S>er+&}v8=;<G4ez+Vv^&|La
z(9e*c@y9}c#vKd$S@g5?XUWfuW5qv<jujj$JXU_}z|Vs}_y0Wk^T#Te8x?n!z9{?r
zbJd!))f-%IxZPN@xprICoyt3lx7BQ`zEiht(YA%#s<&nAyzt=MgYys0KDe~|>h9~i
zukF6P`^xU+FP6QC-nZh#$`>*FeBXG#`TWlFjn^Bu18#5p-gvz6dGr3=$9JFJeLnc^
z-KT>e-n~Eg;o!%E?r**x%KMn}G56!=L*EX4IaL0+;`6t|u3z21x_v!zB;aW7x14X;
z-+rxHbu!}A%VlAwB2R^%T6g;3ibE?loZi1;{pq!*53Ja?;>OwAXaBCcb@t}jKdXMP
za#(%m?7vmVF05O-e(i>}$1fbduy*Z{3r8;;y0B!!!VRuh7HwF%!R<=jhMEnv8y0U^
zyV>)`*3BL_yl-sW>~&-Hw)LAgZC<x|^X4s^H*9vlv3y(YoyB(+-C473#kQ5(YVOqC
zS$Jp3wq@H^ZCkqS@`H;HE<MQFnZ5JMgUp>bcHi24bNB8id!DR*vFe5U0gnUzZ#)lt
zd-vtt*LPnI=70Qt`0GK()yp=xU-7xIZS&e~OYSVYvwqvUZ5y_2+_v;i-p>4;xjS#~
z&e?hO!JXY}UIe`HI`Hja!N-!1KMxgt{B`KZq0*1P4;6o`{QUjUkHcqwIIZ5XdHd!~
z+g99JerNNxn-7Y27VNz7plIi{2ZcMYKiK=^?(X$3V)w0m5w|aX-?|qG`vTwi9q>L7
za3J`N&w-#f{s(*y{CxNO-S>mP-u*cE<K6dn<sZvF{y9|fvF`J)!?mBQKL0#i{ki6|
z$5+p<M~?&_&HEO3H0Wslw=GAv9xeRtdhGlU_haXNT=?O3Ed1x%pU$gGcJ6z!;YHwq
zpaU+e6Zic-ym4*tfk#I-t@XXJ^3LiztM1%=aO*+o&a$1iAKZCx;K|V^_jd1pa`4HC
zCx@RLe{$r>p(n?l+~2+V#l{!O`;zu;dXcg(>`myKkOLua{=ED5&hfp&`=1B@zFYY5
z@1fd{i$4B4RQ<8;W6j6Pj}C{cJ}&&c`17LAUSGYx7JS=&blXw?9|1o+j$Qnbd2I9A
zE!$2#Ir(Jki!CpH9dv&0^nU5b#UGb_T=MbH;U%A!eqQ#u@LSRMOFy=(4S(bEe(Tx?
zyCdE>9$x<O?_r;>zF$L*2L9N#cK7BzoBeKV-L`GpnmgOKRqd?VdH=zK2lpP7@2uEa
zy|Z%X=_e0&Kia+LMf$$&FSfnd{UUW=^no2O_P*HlV&{vreUS&E-h>{AeiQj7;y~De
zr~}~#T;F@WcYE*o{`bKvZ#~|-zjrz8blCN<^WhaASAJae(e3c6&kjdce0Dst{PW7s
z{|*O!_514oHQ;N}x3Ht3M@zmJf8TNR@lnrX3CALSuKT(E=k~R0?>u~P=E>P7k9R-W
zz3)ZFzCQ<7e{?^*_OsKGHJ{ggUj4cBThQ0wug8v*d@KG|`hCOC9cy>4UB1ENivNur
z+jei;xozE@z1wze+q121=c5OY9~^j5yK~{rMLW+wIrrr0?q|C%JlX%^#qP{~&v(Zh
zIQSxaU)H`uFOI%A{Nl)qoPCK0;t#|fh<%fAAm)wt`?xo;2jbuOz4v+V`#$Ks_u;_z
zA@76V2fX)x|M%d!k83}A9rifvd3epojh~&5Z1}wXv&)f)ui;-qzlMB0apd@s$ggGJ
zcOEVO7JjtsTiDm~?@x{<9*g|B@#n6!0XIV5?_PW9$;BrLZ^GY)z4tl1>GS5#Cy#9U
zxnjfqZTq%8dGPGPlATW<EZ(_v=ko_wo?Lr!^~sGVFLz&ma{0;4Cud%qe{u1}@fW9G
zoOqG9uW(=SzLPIby(rpu_Qi!4=U$ZTE7*7JMee@*eaQ#X-lV)qev|no<4yXTq&G<i
z65pi0NjVVpKJI<=``Gs}?<3#GzfXFf@ILXq!=Zl%Bi<*!-~4gg#~mNHf86+S>&Fcr
zH+}Ryy#C{sj|V<){p@<g?Z}qTJ3sILy#4dO&$~bG`n>n^j?ddZ@A;hYHSX)FBe7qT
zzb1Y?eI({<)Ys^*XOF~xJ#!@KYsI&^Z<XJok1qTcb+q<d&9}&-)!!nHR(-4ezVLh9
z_v-Jvk5+uI`M&u3qVJX8tG@3#8ua7&(cm9Xk3Ktk`G?oBvY%PUHvh~%w&my6pND@Q
z`dM}C?9Y`OUOss7;MMNeyKg<Y^djd?>AuthS#NURq#a0kpZ#X%N58`dKc{_7`I`E5
z(YKhROTNE4y65PNqc4wM`H^&N)rMUkJ+Ca=dHczm-FKc`d2#tg#(}bZ<@>I`xc1`e
zi@Z05ZwlVzzezuk@jmT+>ihKf{)hK`-1{-$@a~U?KOg#h^t1bsBcId1W`521y7=3&
zZ%e){{kHV`-lHKuLVtw)@IID&Y}?P(8!Gl?9@zJB+4mzqy{=RrTeG3)&Hj(aK7)>2
zSi9lwlY39z?tZuX=8LL*mHTeI$b5g`<DriSKL#HTIvjX7?&ykdu}4>aU-8}N*wr6<
zH@|xD@X7rr51u@Fareco7Y|=Neo?dU!HYXDZojzy;@*queYI~Y-juyr_@?|#@tevw
zC2xw}m%dr_rshr7f$BF^Z|dG;z0ZB0^S<PL{`=zhh3^aA=e^H<?|jJVkjo**L#6Le
zd_4W}<j1og&wV`hG2-y?k4HbA`FP~x;g8{mLl1`>KK1eZ=c}K+j$HVB`SbP9-bXHd
zKK1$J=WCzOem?#A%I7nmJ&$-CIsW;?=Zl}uea`us|26Dz?$_e4g<rG3mVM3odj3e!
z*SxRij+A~a`MUbss&5;=t^Ky)Tf)(G-`0Oy`EAX&_@n!eZu!3c`{wW4zHj=z?)$-`
z8^3S;e&Fbu?*(5sd|&&0)%Vrk_Z^M;5%VMdNA!<`ACW)8f4n{#`{V7=H%B9W#QnJS
z!}r+jA2)wo`*GvP^&e3`V}3^eto&K=v;1e(&*Ebx$4>n`_jBLo^>^MrSibZ1gEtQz
zJ$d}(<L>vnpFH`n`^AgbFP^@5^Ww>iXD^<=c=cl8zV|QQy{O&y^2OU1b^F%5$v?3C
zP4<B$Z&tlo`=;Q)$~Vj2tb4Qc&FVKf2Nu7{J&<=`#haDytKL_?uX|tfzU+PF`=#$|
z-@6`K{(i}Ow?oU`m%m^1e)0Q-?=OA4^6~n|iytEo-~4#t<E@X^KHm6v=i}9ncRybK
zc>ZJ5;oBdh5Bnaec>nS9i_iW?o_r2C^7ixd&v!rj9eMTn>E~ykZ+yQ0`Q7K&pC5mI
z|M}kMo1fo&zWw>-=LerZe7^J9=g6(k4?jQpT>G{9>!PpgzApV*^R?pZ@~?GY7k{n#
zy6S8B*M(n~eO>W&_1DU;>%VUJy7KGVuS>oj{C4D9;?cw3PJBD|E$QgqZ=1hu`j&EZ
z|F;9*_I%s&ZRfW&U$=fsKDztcu5a7E9s0KY+wSj2za9U!@7s=Vd%o}czT^9$qes6V
z{(kuAq3;L3@A|&|``+)zzVH0L|9j?-ydNn)(to@=n*F2b$ARyuKk|PR|H%50{3G{A
z&X2+$1wW2_&-jt_BkhOZG5=$UKc4-#`{U`4M?W6_xbx%wkLN!g{&?`?-j63gVt>Z{
zO!yi9GwEmI&zhgrKezwf@$=}<ieoj$&i|}Ewtw@5BPYKF91A>lVDq~ND|UW(vEj|e
zH|yW5e!uFy`=R?E*Sx>?@$=`vBf&>LeGWRZ@$2TVo4%g<mU{I4(HB3Ge_r}|aP!kA
zi}r1Pv+2#+_aR3v9y$K~^v^?^KkZ(;@5|?s9|yLrd!KUb;I<|EJPwuqIJE8Ki=qQt
z-fVqScwqf|pF>`UybpOEdhjvk@Yb(ezHa}z?dzo@r@x*3cII2!(G%axew6?Ca5Uv-
z?a$I<8}4j-v*G>M&+i{>eE;a<!;cj|f{vyBtoylg=cgB+Uu=J~YG>@>#~;ssOFw$y
z+qrL*KVJS=y>rX^&F?q8fAaCg$LAlPeSG>c?(nzIJHK8&vg7N;Z>PVX`hMi-$?r8k
zs()1d_`G|^8{b3UKmYiA=6mgrS3lBz?)-V>=a=1nhhBdC`T5efx*yB-ZGHdh<FC)Z
zKmYl>@9VCw8Atbi-ShRzk=<Xf9l3hs%D2nkGLL2*J$Cf$_oGJ_|5);4(T{~cLXN%u
z@#e?dAHm1ce`fv6{F(9d^3UP}sfYJ}z54C=(R1Ig{wz7L?fv=h3x9f@{Bzf9Vfezx
zh0zP+7bYxBUYN2lePPDJ?1ecC^A{E@EM8c$uzX>~!s>-J3y&>4zVOt-(+f{5Jh?Dt
zq3=Tfg@Fr$76va2Sy;QUZsEd(ixw_kxMbm(g=ZI@TX=8b{e=$}K3w={q0b`UMShDs
z7p`6CyvSqGx`nX|;}))8cz&Vd!V3#s7CJ6kzi7jvjf*xd+PrAXqOFUzE!w_l$0GNI
zZVRt2yuR?-LXU->i_R~)u;}8VON%Zqy0Yl%qHBw;FS@bl=Av7RZZEpC=<cF>i|#La
zu;}5UM~faWda~&0qGyYqFM6@aY0;5|FBiR9^m@^oMQ<0qTl9X>heaP3eOmN+(U(PE
z7kyjwebJ9aKNtO4^n1~tMSmClTja3Vak0~4=f#N&Ll-73^jkOq1AuPyA`Y)%U}0!x
zU}s=pU}tDx;9y{2;9zKA;ACJR5jXJhGB7alF)%O?kN^FbW%$jk#_;dIDZ_7OI|c>@
z1ZHBeXZRrR!SLgMD8v8%sSN-BmohLhOn~11RmQ-;P{tr(T*HvUP|u*^(G0p1jU=qW
z)W*QTfQkPzPhenRfZ+4YGZ+{c@Zck}88rPCF&GFeWnf@f%D}>~jNvc?=%zIUR$y4o
zz|epmL2DQo7_j62%-a|~*dJhEV8D-A1r9R^3La+=5ID&oAaI(2f#Ea*qr+JSrYDye
z_!+J-{QLiu!GPg812e-*1|EaA3<pkpVqjqS#9+e!x<&3ALju!J1_lNMW@qT#21+r#
z`$6O%2L1n>jOGafjQ^M=85tNP8UOv)VEq5zg7N=<561uhBN+ex&tT+F$YcEXzn1a;
z|6a!b|K~FP|G$>;|Np&=^$tfFAN;?-`2YU{#{bN(7#SF7hdCHtGcu5a54>e$DEPq0
z#PE@kf#D;gfWv1-HF)~^#@PLziK+N7H<LpKKNG*SIMbS!3QRtqHJKQgw3s*!=rYAr
znlag(vS%u*^knj2^JTiPAIbFLdkT{ka~9M86{Sq(?;DxymAjZ&HuNz?{+-Em>hofz
z|Nl2L&A+#w>F58mO#fHkV)|bDoQdJUOQtt{pP2T)`_FXyKQA-$1tI2NuF}j8f2lJ6
zyKl_=e!nC0Y5{lV*Z)JASN(}+wtt_){8y!vd2K}<b6I^CGtY+!%>UocWBzu274t8h
z&CEZ)A7IXYeVX~N{B`F2Qy(#xr@dj`zyBBWZ)-M|E&l{r)>X@}JQ7r5X<Vkkvd__g
z#Z<(M<#3T5OF^wW%fv!I7G{P3mTdJ%meb+MEawYySd83@S>E&3vfQfcU@7@CiG}Uo
zY?dv1m$J;a-^g;Rdnb!$-60l+h@&k1N@rN!yuQv7({+z!_uW@43GY9%Jm2<@g?|Yv
z>*P;-th>!6S?7f)vU*?8U|m1km{sJ61?!dX&a4{@JXl4zd{{a3gIF(ggtONDPi57Y
z%w@gxzlxRpcMI#s`U$MBtLL!3Kf0V%fMEse|Cw7@|NlMAdcE=-YdY&y*605pv!4F@
zp7sCX->eP}e_6lhbFua96=C~zUy*G(i#pqZFM4eMqpjJh-@3CszYxGy#}dx=;72^$
z{QtRZcH1l1{?)d!>2-9o{rx|St$yEfwtvkV*^YeM#TNegDBIs17uXuEU1O_#|ClX3
z{4HCD`)9V=|BUSS5A(49{~*D>(p-`KL9G`1p8{j{e0zKLS#LbpH~R#zH@1bc&$CZp
zkGY%0&ilQDUDBhHeeu5*c6Nq#_OSI6+5cP2VdtH(h<(TVwd}SIo7oe#?`A)D;|ROy
zgj4MMi>|W&w|~t3z5XM+VAT)y-QQU`{;w9|VE8Y^u`geZ!)B!(N6|k^j`!!?IHW)N
zb7bF+;^6v{$norO7DwIta*jE(8#n~MwR3oU=;in#HkD)Rzl9u4fy+2H9$(L~TXY9U
zd)`5g`@hd~*gv_+aW?r8$Nz(GIqK?ua=iY_#u;BL#93V~$NBG%HYfKqBhFX1Z8<fQ
zoH<_vdvo4559fUUH<k0NSw3gu-f~WfJ9V6U|8#LaxipFM|Nljt*X`GFKKQ?rGr#^A
z=a1DFIM>a-#d$OD3Fq&xA2~%o{^VR)$;9=0FF%(}lsMP=wMtyOZtHTbkvHS|Q|Q1|
z+3dmfy(WY!{%{=E|NFUI>8vGOv;H@5rMI+mnTYmsb>E-C_4(%#u43c0TzkLo;*yFx
z#O1L66qo&iOI-i|KjM1L_>$|u{ZCwX&;R3MC}rlpyqcH$@DDNWYwr}f|2k`P|KD!O
zy*|!`TiwZvd(G@%?zV3++}G99xc7W3<Zl07!@b?Kjr;7Xe(th|Gq|67F65s7Xf=0C
z$R_Sj>-TcoYai#nk$8^V`p-@79lIZMpa1`nySDl-_tgCyJP%~}c>dN(^Za*K<M|eE
z#PjdJBhUNGzC7oSgz{|bjpNy~HiPF*av{%a!AhRU`z<^dl)HGg?3==K`||>x=klw0
zj^EzKll=b>&y!zgc(gZN;rX6?pU3*`E1q3zzwj{r`@{3Uj*IvEe@WgwO!B<{jkI_z
z-<$IO`R~lj+Th0fyF8fp>z+7XUdANe@Ba&VfB$dbwc6j!8_qC+_y7I*yw&g5@Ye3#
z!P{~B0PmF($9X^hzsg(l_5ts^*w?)O!@l$K)-mwKui@gG_Fs&z{;Cq+J9|Aohl56Z
zKlAPQp8xmZn_V8xSKgP%w?8kJFZM|p-}(F|KKb}wzWN8#`R@N)%6I$vM!tWHJNX#?
zALOh4eU9(S|66?b<)85}{CLgx|Nn2k{@?8U)eOA+4Esg+W9sGk|NqzL|IBW|zu>h4
z|8rY!{{7!0`LF*@<KO?kl%F}FlK=1j4*s|Mr}FQ9zlgt{X%)Z2zfJsq@9yXS|MwjK
z&qp`-xijwZ%m04G|M>Se{=e&)1(wX`5qSGuQlPd<MS%Z@uE4%`mI7D#odjZc`wGne
z8zpf2Q>wsE>jHuLe{}+9UUvv&wNDWERXkhZ&(x&?f97u#m@lwH;QOzm0^9Fi6ga#4
zjzHay=K^Qnd=yCg{9C}@hE?$Ie-T0Z4YGpYUup{0u^9@kn`R}*_Rm?c?5eNe_4r7^
zi}uNapBLu}vY#&#+@9YgcyWG@piBK!!N}_Qf_E>k60}~wRdDah{etIfPYYW8zb^RT
z_d~(g-`)x`Zuunm|38z^uPR=l{oAF47!Jq?{pD8|s{d~$B>&%8=+D0Zq5o53gculN
zgzjuj6H0zxC}d|}BUJypOGuibPl(~gB%yD==L@}`w_51_j%`Bo{~r;uXE-Hvq587W
z|E~{)Zr^_=^xyuE(1*Y5!uuKcgcVu@h4=236*j-GDSYq0xp3}(7vazRe!@Np!NR}e
z;)Q?z&lCRrt6DhjU%Rj*Q@8M!%BjNlel8ULzI?6luh%<;Uo##MHu-;A`10#(!o}|&
z3146TPT1kVN8#N?zlHzb;Sj0+C?ax0UsmMJ4mA<(e+D9p?^=m)%R7n4_Irz*cMlcO
z-WV%#?|-()yZQ=|;#*B3|5bWKj+~w%68n9D$fwh*ME<_nCh~U60g<2k&x+jjy)JTh
z=0lO*-)}_fcmEWrUe7A}`>v2^<Vh(}|39jtTYnjdK3;Dv8lUSX`u~5JXsvycC__b>
z=<WX{qW`xwivF+b7hV5*j;KD<BGK9Z*NYy1zgu+a|Kp<n|6dnnXSgNGaQwdL|L^Za
zKmPwM`nR4_Y(Jx*7{eVgu|0p4#J=v=7yJL;UabDVpV)u9XfaKOI5CEODPsSB7KzpW
zZxs8T*DF@{cb3@y)62!?F|QM2c)VHc?(YL)|IeHeyZ`N`*#G}8#p(q=i81{6F81v=
zi}?HJg5oyUrN!U>(-ePy-&~ygfQ|V6x1Qqn|AmX6{hKWQwK`w?uS2=`|Nrgc@!Kbh
z-~Ycz+~DUb@%z7bh)=(BNc{7^^WvZO-xj~$|6F|k{jcKn;tUec-f~OS^NUFYo61Sl
zxTs3hwd+d={W6!>?dl-$;H{^`yz&qU@rFo=oBLBGLhJG+I`36T<R5I5aA#?gxK}k%
zBKG@SiT~lNBv>`qOMGwJDKYim5sA&y&q?TizA5ql{Bw!Y`JW`d7ygwH|IH!!&O}gB
z@|~3A8FOXH#P_<A*XCPD`n-3N?7!wCdG~juWN~$h<onzL$$!^tB@LG}OV-ErOJ1Ko
zOEQ{&vE+^a>m{4#ZkIe)eMs_+(n-nxcdkj=mOYScfB#zY`TZY~Z~wAN{r4A=`m;bv
zs@z&t>d$RMskgQ^Qg`Y-q*mq!NfmsJmild<A?2WxBUS&uTB^RKMJoJFpVanyv!v!c
zTP&sjX|2?2{_Rp*uO5_oz5cA!^S3vp^m`skefa-Ysy_IK)Q1-g(sOrmN&nv}E}iyY
zS-StZo^<0)Q)z*HHqte7T%`{__LaUkCsf*4Jyv=TPl|Nz|3c~Qe`=+-zweU1zhJWT
z|No1nx%aP?uKu@6`v2l%()Okoq|XRnmp(iFp|p9~Yiaf0-=wddXOzjQ<CY0{BP3(^
zR$8VeT~$WrkDko0Z&ot<<K1O;@dwE0uZxmdyEs|qUwxs>hd<RaCHGoo-v6H>!|-XQ
z%>LiYWfuM0D6`&nkIer)CuOF5yCkzS{;tg0&o5;9?LW)peEK6Jzkpfx{eL0Z{fttw
z8s$o|tOe?_rvHs)nQvLi{=DQO`|G&B?0)+gS=pErS*!mAvc_*JW!G<Sm7Vi%f~;B4
zblLe;i)4T8UoWfle7o%T`A1~`|G6Z)TmP=C?6zmJY;WJm{+0bHd%c!b?*4mWIpx<f
za%mq`<!;s)$Q|G{m9w?Am)n2eSI+fhh+Olo7`cnJX>u3l=E=2JSI8BgZ<hN!zhCa_
z;hA#0_ZQ3kJGxG8GtX8zrskb;l`js-9awi#uK4(6IsW{+a<zY7$=P#$lKc4ozg##Y
ztNiaIe)<2567pOAD$9Si){__BU?RWC*;@W`oU6RSe}DP^{L%9BU#H8z|5qx{{HaF%
zy?v*A=kLk#E6wM~&z!eZ{^z}o@;b|R${U*>lK*z_w7g#9MR~h_cjXmgAIpFL^j^O8
z>Ua6;nT!hm{|hSo|F5XPep^c+|G$O8|0B){^*8+$&b^OT;NO?3Q2nt$A?`z^!ufBl
z3fuorR`?z_U!mpw3Wd|xH!Ixd+pECw|Cqx6KUWm&-#t+H|Nn!+f8pN>|F3f@@~;<G
z{9CW6czmyp;xBn~MFs}K*x|XIqQzc!MdP1=im&VA6yN^KR(w%krdU?fp!j`rkK+6P
zvlZ9>TcNo9#wNx5{|6NJ|30Vq`^PQC@3)^T28q8@{Q2mI;)&LOiteTCN)sk<E4_a#
zuJmP|qEfECj*{LxGbJ-t8>KzpJ(NDzhbmPsh*h$$&r(WfEmTT)U8%HhSBny3TBp*D
zKa-X0BjzZ5Keb%xe)}e+v-|fcE%<*z>1^~RrTzaNDE-~`Mrrx`A4>1bS(WG97f{}A
zFQZ)kLtR;Yu7UEO?Ka9=Pq`|;zaOj|^*c^^+s6!L%QuC}^6zVv_y6uz{#`#)nU`UX
z^1oXvlz;Ets$B1PK>5G%8RY{}mz2Nmzpwmn{u|}}|9>mTGcc+!Ffgk8_{*zu>c6DQ
z-+VQdzvqor7#EnS{J-z2^67V=%KrQDD)s;KRBrvNQsL*QSK-*zs`7vT6qUbK3skPZ
zTch&&_fD0c=|@yt9-LH}{Qs)T^!pE0!sowH`Tp;h%6$$d)rR|As`vj%s2=^VqWbT<
zk?QaNj;hQVZmPf2gH(TI$EyCX&ry98U#9y1f17IY|H-QN+vlnNe!g1u@9Q0^%fBB{
zt=oT5_4xa{s-NYat2W*Lp!&b;uWH?WF13@D!fLg*<ka@P*H)V?XQK9?#zyUTxu@E`
z_F%Q&|C7}IOXsQG{$HaOW8bFsz`sxJfBjrFzW8No|I4?i?Z10a&HuwGwg3Nbsr~=|
zO6>>#XSIEc|Ek^p%dIZ+M@0Sae`WPrc|G-czpd2&@AXi>b1zsu-#%Xb_pWU9`ummY
z?|-+eOV>_Rf1@``y>I;z_3xiHsPk9vQh#^;nEEu?bLz*+Z>Y1^Jyiet|Gj$C&2Q@W
z>sd6O#qnwUKQ68D?w^Ln`$`jyuvs=5=l^?Y#QzJ|h`X1hk=L1}@#1HRM%<S=jU&(6
zG#DA$HEQ-v(x|tdr*Z%8YK^&9w`#n9c~E1G$q9|%dzUndzuwjO?)^f;zxuPr|9K3W
z|8{U|=DCY#{^pg_bp5ZX`FFLc=D*+0n%7_YY5u<(qxt=9rsn_p3eCTFTQy(TP1JmT
zey-;K?W;9k?%k$2@%;hK(%4g)HP^3dGB6Ov4ZrSazWe`5^W&D!nq~X{Yrfa#)+*m7
zrnSFZS!@4%1FgUR?X~t#_0n4REmZ4&X_A(8eV*3W<&|1Lxf-<?7*O$r-`!ewwWn$s
zf19sWKWmlN>c88x{#-k#_3Y;vt=Ic+YTdv8Tuc7TN3Flh{%HOG&!hd{OI*A9v$FQ~
zdIRmB|7^AYZ}ZZQkqy%RRv)kZ|7nhPwS2iYi%OL?>%J!Kc|Uu#AK#v#{ptP^?f3Z`
zwg3M;pj~<Gl=h#~SGE7Xex&{X{YPzihHu&oFg)X@w#UQ&+Tsl?Iwe^=I{z4ib?S5F
zbw2*p)~VlNrt|rqvyS`&Z=JG_p*qvv#p~EtXY2I7F4g(_zeVT&+KD=wPtVqQ-?Buf
z{^5F^RleJGKI}iFW555rj{UzoI{#n4(z*WshtB=~?7H>mMRb4vSJr*os-tUv-9mQ{
zyMylkb-ud%{~~nP|4r51UskC5{#TvuZu3svJM~j_cP*Z$`+wVN-S1)Bbblo5)xH1x
zly2hxtGf4n?(6>E@KV?H{}<i2wG4W{?0NM5%S-D0kx<n8|KCt={bL)w%g5dHn(qhb
zh5wGxt9_rT_y2u`UWIVI-hqD|df(%x>g_g}r}sE+g&yzsO?uzn@7Mcx{fypzhRb?$
zzuwdP{{4;Ky}++}5B@XgpZv$IU(YO}&loSQ|9-!w{>S+y`pXln^=03?>Hq&2tk2I7
zuFpUwZm@~b_x+u&FMqR8->SM=|M9<e{g?KW^y}};)3;|>qR#-s0n7B|zi!lL-?vL&
z_RkT0>7VEH<@Q|H|6ll6|7ZSt{e98D^rwY08%WRQG5B9EZSd#6rh#6&p~3U@wgz8c
zdm8wE4l($9KgmG#dA7kF?qUO%*eV0}@MeR%e<v8&znx<+p?rx!eeFhr6J6U4e*HRZ
z@bmL|11*Ki2Hx-Q8T|kH#^8MAcZ18T84Z_ma~M{A7cuPrtzfvfPs>oALEn%8hCiDc
z`u%k<443jSWa#iRT(d6NFr+NnaIJWX;s3LRhMWG^8tQ*(H(V7x!SMg>d4^03^9>oG
z_(1V8!&g5y8rtjaHthR#)bRiA%Z7W(?iybH|H|;+yYGfYb&N)P>v)a6KbJD9|E^*5
z_ne8*SAIJq1_mU&(#dG{ZC|6~OG1t6C&n9{`jKIDuCCaqs<zJP`SDJpy{D%bt-CYN
zsP6A-qq6?3Mwch<HTqn0!ssdEIU{|aYewa79~mVqeqnT*{iD&3xZg(KW!a1y6}gNb
zWD6P3F_18}vQ{*{_e<9}xZc9}>tQG3vx#2DyV!$_85pqR2Wk<<|MsOC|76ZJ-uk-2
zIQMar@#&X6#`<%n8sFQ$$hdj_YUBN@w;O+#KWu#U{{`dw+wU6xyZ_pF-QVxV@Bg!z
z)cqDV`TJhc<o_yNll^&?CJYRiSYeyJ$=P~ulX?5XOg1OQnS6{$GvWQ1XHxyQ+T`QQ
zR+GQ`CYc;QHp?V8eyNG=|4k<UGxwRC|9{5h%kLW|zwbOT`R@P0ghAn>iMikp6H$iW
zCJYAX<HLVV7#I-v_kSK!`F|3oU;n9^*7NC`GB6OvRsU^F|Nr+f{r^A4^#Als(|`Xf
zO#j=rnF=t3c0O%>Bhg$d!pPrO$;7~L-1QFw0|P^2t-yZ<28ME#ZdZYWFIaj-T0x>a
zG&Zmb^ztxu`u=$t$jHC|9e)QYW@KO}Q*W#lh-YD7D3?Rk^<q6-moy^-!vv6ed8qpR
zN|@?7R>IZ41`WT1)GI^P`>SE9Kd}O?em6|LK2-gEV@&lK%i!v}Vd{OM>etW5RR3Z=
zO#SP)-V!x%;QWND=l_MNKBN<_UJs`JF9SoFVq>j9{(lCBatYM%$>@NoZ?65rz~Azg
zfq|jh^$-8{0H(Cg&|lrI0?iNjJ6*r<Z+HFG?fd2OkIqBQj~H7o@wXgiU|`t62vY9*
z<?@5xfd6TVp}#=NR6|1<82Gn`{%U-*YSsV$ofp#%zGUn?#CQs1AXtI1F-*akGf)Lg
zC<^%bVG2HcfGS`?R<H$Ze%irT9GwRlFQ#?+{sOyM0AxDjp<WiDT^z2g0{q)q1kyTP
zKXtqE@NW<O1XA81(Cy0O&=vZrLtqCJ0|Ucre!~N=xp(~k|NsAM7EpMdJPb`(y?fL_
z$&SH*(SXTdJA<l%n!*YOW`ng1q6(@?HvesuBorhSWE5l-L<~d?I1D%qxD2=rcno+A
z_zd_B1PlZXHZoji_|A}^l%kZXB&TGew1L4$!B~M=QCsoB|A+sd{&!MyP*YG^swAY$
zq{Ob2s1&5MoWWXwO^sFUwCZ`)bE?NxkEt$HU7)&Ib(88|)jg_{6elQ7RGh3hMN!xw
zODS7PO37A9R>@RJTS-TWLy23dO{ra}NvT;$OG#5nT}eaf(f><|R}>kPn3c9L#Qi_c
zbc5+G(=Dc(Ogk8EGc9D;&v1cBPf1XTUug*gr=o$vLDd7Q+f}!zrl=*TC90*WrK=^Y
z%~U#}x>)ss>P6K_s!LRts;*F7uDVQhrD}#6zZ##KjGCO<HU<R+MTMz~(-mhbPE(wr
zn5&klmZg@XR&OL@B&K-WSV{4a@eN}|#lQbag^d51{xkn)`Oo^F?LYf}j{lthx&Cwi
z=lRe3pYK2ae}Vsk|Aqbw{}=f$`d{q7_<xE2lK-XtOaGVoFZ*Bazx;oN|BC;W{wx1i
z`LFt4?Z5hejsKeewf<}W*ZHseU+=&Ee}n&q|Be0||2O$>`rquo`G1T5mjA8(TmOId
z-}b-VfBXLq{~iB3{dfNF^56Bp+kf}}9{)Z6d;RzR@AKdHzu$lV{{jC4{|EgK{vYx`
z^ncj@@c$A2BmYPJkNzL?KlcCQ|AvM}hQ@{_hNgyQhUSJAhL(m_hSr8QhPH-whW3UI
zhK`0#hR%jAhOUNghVF(QhMtCAhTeughQ5Y=hW>^DhJl7bhQWp*hM|UGhT(=0hLMI*
zhS7#GhOvfmhVh08hKYtrhRKF0hN*^WhUtbGhM9(0hS`QWhPj4$hWUmChJ}VjhQ)>@
zhNXsOhUJD8hLwg@hSi2OhP8%uhV_OGhK+_zhRud8hOLHehV6zOhMk68hTVoehP{S;
zh6Rd+ibaaWiY1Drie-xBiWQ2LNU@ion5dYfn5>whn5vkjn68+in296{isOmQlb9zn
zPhp<QJdJre^9<&h%(IwhGtXh3%RG;HKJx<Rh0KeYmoP77UdFtfc?I)IW{@6aypeem
z^JeBP%v+haF>hzy!Mu}s7xQlBJ<NNV_c8BhKEQmC`7rYl=A+EVn2$4`U_ObWpFx#L
zl}A-TRYFxnRYp}uRYlcA)kc+3m06WvRajM8Ra{kB)mT+q)mqhCRY6r>RYTQW)m~Lr
z)j(BM)k4)tRY+A(RZ3M-RZLY>l~0vdRZdl2RZ&$*RZUf0RZ~?<RaaF{)lk())l}6?
z)l$_;)mGI`)j`!!)mha=)m7C^)m_y?)l=0=71=+;vZoqPGoEfNtT@B?i1A|MCB{pQ
zml@AAo@G4Sc#iR0<9WvOjTaa%G+tzU%DC6K&$!?Cym5zdr|}8n<;E+FHyCd;-ekPl
zc#H8?<88*<jdvLDG;T0%G;T6(Hf}NAWxU&XkMUmPea8EZCm2sOo@6}Pc#5%_;sN7>
z#$CqU#y!T@jE@?xHC|`D-uSlhO5;_=tBuzf-!;BqeA)Q0@k!%5#>b5D`{EeG1%_1&
zYK(vX8!`U<Z_nt+c!ME`aTmiqhBQVm#=rj)j1rBKjFOE~j8cu#jM9xVj53X~jIxb#
zjB<_gjPi{Nj0%m4jEap)j7p8ljLMBFj4F+)jH-<;s9aRJq;gs1ipo`$Ybw`OZm8T;
zxutSj<&Mf-m3u1pRUW83RC%QGSmlYzQ<Y~b&sAQiyi`e0NmNNvNmfZwNmWTxNmt2G
z$yCWw$yUix$yLcy*~<{D7^1j`VIM=ZVvJ&}Vw~bL20_LT4C;)AjK+)>j1G)Wj6WEH
z8SgXvV@PN8X7praFk&=fGGaDjF=91hGh#R5Fyb`gGU7JkG2%7iGvYTAFcLHpG7>ft
zF%mTrGZHtFFp@NqGLkl$qcT@zp2~cc1u6?w7O5;&S)#I3Wtqxyl@%&0RaU92R#~I6
zR%M;adX)_-8&x)`Y*yK#vQ?!-rBtO%rCg;#rBbCzrCOy%rB<a*rCy~$rBS6xWhcWX
zhRqBm3iS$&3QY>l3M~qb22KXf1}+A!25tuK1|9~U23`i<20jM927U(q1_1_v20;eF
z1|bHa24M!_1`!6422lpl1~CS)25|=Q1_=g<21y3V1}O%q25AQA1{nsK23ZE#1~~?~
z26+bg1_cI%21N$N1|<fi24x221{DUC22}>t1~mq?26YDY1`P&{22BRd1}z4y25koI
z1|0^S23-c-20aG727Lzo1``Y>8cZ^nY=AxOEHqeTu-IUU!BT@|2Fndr7_2l{Ww6>{
zjlo)jbq4DVHW+L)*krKTV2i<4gKY-e4R#ppG}vXZ+hC8uUW0uG`wb2l95gs&aM<98
z!BK-_2FDFf7@RaXWpLWyjKNuha|Y)PE*M-ixMXnI;EKUjgKGxY4Q?3RG`MAO+u)AD
zU4wfD_YEExJT!P@@Yvvq!Bc~02G0#%7`!xiW$@bIjlo-kcLwhbJ{Wv7_+;?e;ETam
zgKro<5MU8x5n>T$5n&N!VPp|w5oeKLkz|o#k!F!$k!6u%k!Mk0QDjkKQD#wLQDsqM
zQD@O$(PYtL(Pq(M(PhzN(PzOPCNNP07DE;z7Go9@7E_i$7Bd!e77G?j7AqEO78@2@
z7CRPu76%qb7AF>G78e#*7B?1m77rFr7B3cW79SR07C#n$mfkW3So>uS;~JJV>}xpI
zaIWE6Bd|trjnEq5H6m+7*NCkVUn99jYK`<7nKiO&6xOJ$(OILrMt_aL8pAafYb@8;
ztZ`W5y~cM<$eM^XF>4Ce6s{>*Q@*BRP1Tx)HH~YU*R-r@UDLLvb4}Np?lnDYCajsV
zX3m<qYv!+6ux8<!6>C<mS+!=(n)Pcotl6<<=bGJX_N>{v=HQwmYfh{=v*zlW>uVmY
zdAR1un&)d?ta-KO&6@XXKCJn;=JT4bYrd`dv*zy_hP5nf+1B!`<z36aR&cGvTA8&9
zYc<#Etkqp>vetC1#af%SE^A%ay07(I8?ZKHZN%EdwaII9*5<A)SPR-qTe`MvZS~rk
zwY6*O*EX(gTHCR<b8XMs32W!9ox66)+U;u(tUb8)$l4QYFRZ<|_VU_0YagtAvi8T?
zpKJfD{lAuB9pgHVb)4(C*YU0sS!b}$aGl9I^K};MtkyZKb6n@V&UKyJI<Iv;>p=I>
z2doQO7q%{DT`c$(?!<Me>oV45uFF|hu&!cV<+|#1HS22EwXADh*RyWVy1nc6tvj&p
z$htG@&aOMZ?!vl@>u!MW$a=Bv^}4s~zO4JP?$0{*^&IPY*9)xIS+Bd^V7<|Lll3<1
zZP(kccU<qZ-g&*pde8L%>toi(u1{H?y1sIK!}^x>9qT8opSXVN`Z?=&tlznQ&-w%F
zkFP(m{^a`8>(8z~xBkldJK%GqKCJ(^{>%Cw>lrpMZeZEKvq4~k$Of4WvKuruxNLCU
z;IYALgU<%P4Z#~iHiT{n-w?SW7QAnwVMEJ?o(;Vl`ZrA6Fk{2a4YM}P*)V^@f(;8d
zEZVSQ!^#b-H>}yPcEh?2>o;uNuzACl4O=(t*sy2Akqt*T9N%za!^sU7HeB3rWy6gP
z4>mmAz_F2YBlkw0jRG5mHVSW)*eJPCdZWxn*^SB@RW_<_)Yz!A(PX3PM)Qpp8!b0F
zY;@e{ve9E>z{bFhAsa(CMr@4Pn6R;8W97!0jSU-{Hg;_6+}ORbcjKgulQ&M;IAi0S
zjVm^u*?3{&m5p~c-rabA<BN?iH@?~UVdKw@zc>Ef$g+ub6UQd*O+1@KHi>Q$-z2$7
zVUx)wn@tg$Vm2jg%Gi{-sbo{>rkYJHn_4$@Zkn)Z;-)E^W^9_dY1XC%n-*?bylLsC
zWt&!QTC-`xrY)OJY&yB=%%%&QE^WH8>E@=}o9=FUwCTyFr<<N_da>#CrZ=13ZhE)r
z{ie^GzHIus>HDT1n|^Nkwdwb!|C<;#Gj3+t%&}Quv*2do%_5scH_L1e*&Mn#Y;(ls
z=*=;k<2J`{PT8EgIel~H=IqURn+rA<ZZ6qevAJP$<L2hgEt^|6_iUc9dCKMmn-^|g
zv3bqrBb$$IKC$`q<};hmZN9Mi%I2$^uW!D&`S#|!n;&d`viZg4Kbr-%NNkbWqOe6{
zi{=*XEhbw6wgheo*%GlOVN2qc<SnUNa<(*V>DV%N%aScCwyfE*b<6fGJGUIza%9Vi
zEf=<2-EwEk-7OEcJl^tT%d;(Sw!Gc)e#^%#KemW$72PVaReGz;R+X))Th+H}Y}MSV
zwbfv&;Z~Ea7F!**I&O8|>ax{!tM^u)t-f0WwuXSuhL7Kxur+b(f~^a;F4?+b>#D7*
zw{F<FaqH%-Tefc9x_j%Mt$Vi~*m`8^nXPBHp5J<5>&2}%w!YaauuX8A$To>>s@rt7
znQZgema;8l+njB4w=LMVWZUX(Yqo9Nc4ga#ZC|$i*v7D(aXagFjqRG-b++qoH`s2m
z-EzD2c9-oQ+kLi&Y!BU@usvma#`c2kh1-j_mu|1wUc0?vd&~Bo?Y-Okw@=tUar>n0
z)3#6FK4bgL?Q^y-*uG->%I&MSui3tK`<Crnx9`|~eEZ4mZ??bP{$cx<?SHoa-Tr?&
z!w$wB>^nGiaPHvQA+SSYhvW|F9kM%AcBt;q*rBt-WQXYv^BopDEO$8UaM=;KBX~#5
zj@TUuJ5qM!?8x1bzoT$R#g3XCy*pOy*sx>EjvYG=>^QjN@Q$N9&g{6b<I0Y^JMQmz
zxZ}l+m*Cy}pxx=ecl_PKvQuKG!cLo=wmThmy6p7X>Ay2@XT;9PoiRHTc4q9%+?l;I
zcW24Y(w!AMYj(EmY~9(uvvX(H&fcAUJJ;-7yK}?NEj#z@+`DuC&VxHo>^!;i%+7N=
z&+ojj^Wx4+J8$f~x%2kUyF2gge7N)R&L=yc?tHQH&CV}7zwZ3L^T*DgJAdtD*u}Vu
zW0&YIi(QtxY<4;9a@ysw%X63aF5g{#yMlLx><Zl#u`6a*%C6L1>ANy^W$r52Rk*8U
zSH-U8T`jv>ceU^8*|lQV%3Z5>t=Y9<*QQ-NcJ17?d)MAwM|Pdqbz|4fU4M2l>}J``
zyPJQv;BJZCGP@OaYwp(GZL-^Rx7lus-PXHpcH8c@+wHR3b+`L&&)vSe{dWiK4%r>C
zJ8^gN?ws8nyL)y|*u7-;irs5=Z`r+l_krC<cAwaNVfW?TKX(7z{b%?8-3)t}_HgXs
z+{3+xXAkcl{yl<wMD~d85!)laM`Dlk9+^F|d*t@W?@`&Kx<`GF<{sTW273(mnC!9G
z<FLnZkMkavJ+6B^_xSAb-4n1Uc2CQm);%42y7%<#>Dx19&(uBB_srZgYtMo`pgW<L
z?^&^D!=8<MHt*T8XX~Cld-m=*u;<90vwP0(xv=Nro~wIq?76e&%bu@$zU}$3=g%IN
zy{voL_j2wP*ekMEWv|X&2k=?;K6?Z9M(mB;o3b}!Z^Pcky)Ap&_jc^<+}pKx!rqB{
zC-0rQcjn$%d*|$3vUkJY9ec0ry}I|t-aC6=f=(FN`(rP|KIVO_`*`;8?i1K2vQK88
z>^}K@F8f^fdF=Dq=eI9pU+BK@eUba3_C@bY*q693Wnad=tbGOG-7+QnO7~UotJzn(
zuVG)yzMg%(`}+4y*f(+CjD0irt=M;A-^G1b_Fdn1W8Z^)kM}*<_jKQzeT@4#_H*u+
z*e|(XdcVwm+5Hat9rwHJ_t+n>KX8BO{we!6>_58y%>J|cFYLdv|IYsV`ycMNIS_at
z;y}!Sgaa7|G7n5RF!8{Y12YaRII!@*;sZ+$tU0ju!1@Cl4s1TK<-pbh+YanGu=l|J
z0|yQqJaF{Di32AOoH=mez>Nbp58OU*=fK?qPYygi@Z!Lm178k&J@Ea&&jSnxSq^d>
z6gVh)Q0AcQLAitS2Nez~A5=N0c2NDG&OzOS`UedT8Xhz|XmQZ;pv^&tgB}Mx4|*T;
zIp}*Z<Y4H*h=VZ)Qx2vcOh1@$F!Nx+!IFa&2U`#J9PB;VcW}bNDF>$=oO5vQ!TARl
z9$b2G#le*a*Bsn%aPPq*2SF!fTse6C;EjV14n8^f0=&!d^T9s{{~lyG#Bzw|5bq)W
zLxP7S4oM!8IV68b;gH55%|qIUbPwqtGCX8-$mEd6p@2hyhe8fT97;HpdMM{m?xBK1
zC5LJb)gG!p)Oe`lQ0Jiuhh`j_eQ53>(3$ot4y`$~_Ry9?TMunNwDZuNLw657IQ00?
zlS8i$y*c#u(ECFl4}ClI<IvATzYqO6#BiA7Fy~>O!@P%u4~rZYJuGop=CI0P)x#Qx
zH4nQU&N!TTIOlM|;iAJ8hbs@)9Iidwa=7Dg&*1}yZydgP_|D<`haVh%boj;LmxtdT
z{&M*1;U9-NjtCr4IihpK;E2f)n<KVIJdUIsNj;KrB<D!Uk<ufTM;eYyIWp(Sjw5@H
zygc&Z$j2jJj{G?C>&X8j3`ZG{@*EX7DsoijsK!yvqdG?oj#?bGJZgQ^_NdEI*P|Xs
zJ&$@F^*QQ$)bD8U(U7B|N5hXs9F060do=E7!qLQ|DMvGo791@+T70zRXz9_KqqRpH
zj<y_aKiYG&_h|poiASd%oqlx2(K$yK99?-7v}19{(Va(kAKi0w@6mlnj~qRE^w`nk
zM^79*dGyrLGe^%Iy>Rs6(JM!99DQ)~;nBxOpB{a4^zG4iM?W0>a`fBL???X}{d@G^
z(f>yojxio%J;rv7{TRnFo?`;XB#ucQlRhSMOy!vBF^yw7$8?YB9Wyv)e9YvS=`r(T
zmdC7*IUI95=5oyA7-%m>@Uf6%p~qs5#U4vImUArsSmCjXW0l8hjx`+XIM#Wr`&jR>
zDaWQBn{jN;u_ecr9$S8F<*^ONHXhq@Y{#*k$95e%aO~i*!^e&uJ9F&pu?xqp9J_Pu
z?y(2Q9v*vf?B%gH$37hUaqQ=@zsFdPvmWO-&U0Mkxae{5<C4b}jw>ElIj(Ws;JD#&
z<Kw2s&5zq0w>|D~+~v5}ai8P9$Ni579uGPmd_3fM=<%@Q;m0G6#~e>Mo^d?;c**h7
z;}yqij@KTqJKlV}<#_Ay_TwGLJCAoA?>j!>_{8H=j!!#2{rHUIvyLw~zVP_s<4cY&
zJ-+Ptn&WGaZ#cf?_@3i?kMBQz;P}DgCyt*ye&+bO;}?$KIDYr|ljARrzd6oug7E~)
z362w7Cj?Fio)A7EdP3}k%n8{O3MW)f=$z0!p?|{ggvAM)6AmXlPI#X1IpKRE<V3-V
z!V@JYDo#|LXgJY$qWMJYiMA8%C%RAcoaj9<<;2_*^G_^1vEsy@6MIh_IdS5|nG;t|
zTs?99#LW{APCPvE<iyt#e@^^8!Elo0B<o4GlRPJRPx7A>JSlNf=cLKWfRlkILrzAV
zOgNc%GWlfA$%2z5Cu>f2oa{W=b8^DT87F6+oPBcc$pa@3o;-5$_{kF|Po2DQ^5V(M
zC$FBocJk)QTPN?FynFJ&$ww!joP2)r&B?bX-=F+&^5e-LCx4#&bCTf{$0^QJ+^2X>
z@tzVnC2>mgl+P*OQvs(!PQ{#xJr#c{;Z)+Oj8nCzT29S4wdd5{QwL5RId$gL*;D6F
zT|9O9)QwX&PdzyG=G2!{9H#|Ni=37?t#DfLwBu=y)1Ie&P6wQhI30O9_H@eWiqn;+
z=bYYg`pW4ir=OpGd79@8?-_wJB4=dI$evL=qjX07jK&$wGdgGV&KR7rIAeLn`i#vP
z+cS1&T+X<j@i^miCge=$nea0aXClueoJl#8b|&LY!I{!CGtSIBGv~~LGb_%lJhS@D
znlo$9Y&o;_%#JgA&Kx;&^vv-yC(m3sbLGsFGjGm(IKz0B<1FV{p0fgHCC*Bol|Czb
zR^_b5S)H?%XJgJLoJ~2Kb2j&E{@KE_6=yrnPB}aE?2NN>&MrB-^z8DpE6;8?d*tky
zvlq_3IQ!=8hqFJ<{yh8p?BBC2=Qz&soD(@Gc~0S+;yIOb8s`ko8J;sfXL>H;T;#c!
zbMfaA&Ly79IG1@Y`&{n1l5?f!D$doMYdP0?uKir+xe4bco||%R#<>OO7M@#tZppc&
z=hmECd+y-5C+D7?dvWgdxi{y&ocnt2`?(+Iex74E&v>5YJjZ!~^MdDv&x@XyIj?YD
z<-E>$-ShhA4bB^$w>TeiKJ<LV`Iz%5=Tpz8pU*sBaK7+-$@z-&4d+|W_ncpNe#Q9>
z=Z~C!aQ@->C+A<B|8V}}`OoLSp8s>6;R4GA!3z=>bT61(Fuh=L!RCU?1=kDi7d$Tn
zTnM=kaUtPC&V}3y1s6&#)Lf{&(0F0Vg{2o(Tv&5q%Z05MwqMwJ;lPE17mi#wapB~J
z3l}b4xP0Ntg{v3tT)2DT!G$Lm-duQl;r)dV7d~G2ae?=u!9~N1CKoL(T3vLw=y=ij
zqRU0si#`{9F9uu;xfpXX_G0|S#ETghb1v3gY`NHRalyrf7nfXIadE@NjTbjx+<I}>
z#XT1fT)c7d%f%lT*)MTk61b#uN%xY$C6h}wmuxTDUvj+UaVh3f%B6-&jh9+3bzGWo
zY2u}+m*!kraB0b<HJ3JC+Hq;;r9GGSUpjE<(4`ZXPF^~F>B^-Wm+oA8a_Q-%50^e(
z`f};VC5Fq4mzgiKUgo*XdztUDz-5ukVwYtu%U+hhtZ-TJvg&1x%bJ&UE*o67xNLdZ
z`m)Vs+siJOT`$*MuD#rFx#e=t<=)HvmnU4FczMR<nV08WUT}HE<&~FLUtW88%jF%H
z_gp@58FZHA$;%fm-?;qn^5e^IF2B9};qsTue=h&M{QolJ6^<*iR~)XmT#31oa3$qR
z?v?y26;~>+)Lf~*(r~5eO2?JXE8SOmuS~hJ^2(Vj7p`2na_7qZD=)6Rx$@!4k1M~g
z{Jp|*mE$VURgtTrSH-W|T(!OGaMk6i&sE>6{#OI9MqG`&8gn(_YU<UDtC?4`ujXDY
zxmtR);%d#+maDB-+pl(9?YuhS>e8zxuAaPl=IVv3m#%_t)4hH5?$sw(pI&`&_082U
zSHE8Ue)Z>7hHH%1Sgvtg6SyXLP57F~HPLG_*A%X)T+_W~an16Y%{7N>uGc)Sd0z9r
z=6fyhTFAA~YZ2FCuBC(SH@jANt>jwswbpAr*Ltr_xHje5+-vi%Exfkk+L~({uI;?G
z``VFfN3Wf@cIMi}YoL29ZeDwE?a8$l*FIePdhO4(zt<S9vs@RvE^%G*y3BQj>l)WJ
zuWMh|y>4>d^t#1$o9iyu-LHFI54aw9J>+`W_3-Nv*CVedTu;27d_DDg=JlNG1=mZi
z*Ici?-gv#^dgt|?>l3cexIXjx?CW!{gXYU@{fqtG1AYc92znn}8uB!RGwfj0w&?b>
zZRy+7->3UzA1XdnYEyN)iKRKbqoc#D>qO7_-rs%C`mfHk4k`&|3CT)GN!*itzF4Yp
zSLdb9#Z#O8xq|jZR75_DEQ+g)JDzwT*)9D|dVR+9e7`d8@~;&fRsX9LYvwlOH5E3!
z?wUL`+iz~@_cW8d#T9R>qFV$y{n}SdzY*jYt`*@EE1$S8Q86hg^<uh9mUNy(>E_bM
zWgE(^YS&K)oDwu;>U`zkH8Dn|w;LQL&6pY;#1U~Pa$$^k?DjaTc(3^K#Q2=5(zenE
zHN~|XYkTTL8Wo!+wmNo7cmJ8>JI#I0X}|A&+yNg0{Ugj1?GiH*EmL1*3g#~@Z7aK0
z)?U4|>2wRj&*hW5r#6HxiVh5C{JFViXZ_ZR8Uee5U1MIvUP{VKzLoMkMImoZL3HKa
zUb#M|pS2TQC;gaI=l9JoHQ-<DuQ;~E@XW%-kT&<e(#hJh;`}BC6r?+3a0d1UO$u6+
zwWnNQ(v^9ugY*+V^?L-YOnjSsD#a$FCF?+bN8`fIDbrXZYKztsv6NQU=GLuj=<Y1(
zPM#1rw==0KCnP_h)~a5)t0vGZac;F_cle~9$!q*B`^yFF3t$U87<4wMKDZ#fIbv4a
z#Q3trHHqg^a#HitcBg$wo1W30+gk9kV1CKcl2au&OLHpTRNSxnR^?hdxmL8nzCpTi
zT60>rXus%$hm)CSSj>o;^<wrR|KL!oh``9?Xt$Uh2|`Iu85=TQWUR{bDXl0wS7BTA
zyC%D?rjDa)VV8YR-?Srhp9H@Q_6jKs`4x6CG9}tNW_8^6B=c0))S}b{Y3tJuX70`T
zQ#zrnuH3$AN<DMK!iN6FXH9>bJ~SU}HSE~Zv9yc%=bV1M$;YRq&$uy5c>ddv*{Pq>
z`ZFA=%zF~%eh5nm7mQ^~+n8}S<6oXe$-Isyvoms7ey*4`+dn6;FmQfQNc7X#fP~zH
zk4ejuty6CnS5+-;Th!A(-N^4@G)K~$^gAUND=#;<cWvr=(d#$Cd$QY%%W*F<|F^!K
z!1{AR;Ed=u(aDLwGVHQ_3iL~Elq{?cs6X0#pmTN4ov9i#^@3s(-Xt+i=<@drR1Cfu
z@i^{5nnmucf<r~uiUX=YHbhTJ3!a^vT_5Jx5a1PYFG4FpJ@G=)g-plU{m~M&8yn*L
zm-t-_SQD})lqY&Y?DJTyRKHZk4DYOmMSW%O%j0T))-P!EYrWsb-0#<aY6A1j&{?Zz
zOZd6^#rhrh`{-XD_%FyI_;K*l;Jy%%u+s2F;m4!fV=u)0NxYF1n7SkVW%}vNfb3)0
zZ?c_o=H^utTrZkd%v`d+{AGDrReddI!=FahCa$LYO-UWb-G6!x^a)PbI3Z=ywn>*}
zy3Tqz=la|^^SQ$vVoo(Ln7(@YmU+@4Gpd%<-|RTs_izG3gh$Mb<oQ+WqJ`rttJYQZ
zHLdAW3$O_K5mX+`5&k);D48q!aISgz(%|sojMlQgt5dDg4`&tR=XRax^Pb7}vplUL
zdrObaZ1$h8gLT9GB9A5i&U{tuTCuC@Xw|=((w6?t;$G7UE2jPqau0VeO{hN8EH{bc
zXGE5Fpm$JvkbKgOjMB`R(~br#33?KAIB`j;Wyb%^x)Sf|olUQsH+5QeU+njs$@%k?
z-}J~!DS~NzStccom3u2!Hq~|1cf@yc{ZyOG?SCp*HK8!6C`YO`t#*cAQsABP^$m>v
zeEwyD4S{z;Gs3LHe}(@E7m0L_oE&*1dO{3e?8n%;xHIt$N!L>!r^=<vr^ltA&Nz}0
zpJkP;oKu_Alyf|HMzLCnR!LLI;*yHe`qIXV_Z5zn?v);uRh3h#8ESXccGR;q=r;5;
zNObvkd-Rm|Do$3J{AfntOukwCvr=bGns=(U%%3ylT~bKK#fhs!tpd4!^8A#EdX~uh
z^L*0(B)*^gKLvgY{uKHt{B!XHk)NVJ#eRzal=%6tOY*1GPwAgBKc}V1{tPRW`zinP
z@ic{>{>fFz;lYYO`_mILi}RFznwKj7RQaj;lebpwr~1#Lj#FV0Q5rure`@{I{;BiR
z*-!UpdZ0(-hjf7ky`ROAC2_M-PE~%5&q+9uRGs`h`g-)LApM^uk(%*B2?jq6e;WOa
zEHVCR^3(LE*-!JI7C$e}wESuH)B2~)Purh%Kka`y{B->3^wat0;e3~$u0QuTZtDM-
z06ITAt<mGB=TG|>ub<vOeSU&Y^Ys52@H6n|%P7^Z>U4qHpr64%Lw<(-4Eq`W^KV1M
z&&Z!PF;8>sgLmagMVd8R`fc-b^IsP#5q>-(EPi|Hv($#Ht=YbLZ_D3T$<^GeJ>52`
z!)Rjk<lQOz@~et>l!i<Q3-t}(m3SrPc-q6<=)Bzgo%tV1og4NxI<_`<9`B0kmY+O1
zC%81En!hi0f<P!!L_|bV9DCBdlm{7QrPpdUx4)S8*smizFI+v6H)dmuSzK$pNz%iV
z&BebOyE}IDbWOWGuQhsm{N@Cq0EQrgAhB@Mi0}x$n1q;bG2OAt;wHuKNf1o#OcqaZ
z&iI*eDC<V9V&0X!C;9&h@03-RZ>+SgVrf~~`L^eCuSXyA1d$2B6aG%{om@8U&h$&!
zYy}ZTi;6Oelgsy4KB=Bv*U-H(;&?(@>fh9TX+1e|g(nN6dW2`>`ZZSF^;;8oHt=c?
zPssAb!t{WQ`x$b%HTio=H<v%H`qGfx(mE+7aC&M?`sDN*rN^s^o1=cZ^@vZ<osl1N
zpmA1{<AnSPypyKK&y9`DI#F0%=2`uum8DyKqQR{8&~J&+KQqf(>+Rciwg2eopAhp?
zI`?M5z2d}L+m_g$Srb3bjQiQ-R~pQcEtG9nAYG)}CO6L~XmNi)?9&vTRI%*W`OY<S
z>dv;NbnfjunRKI3zT;G!czRaupCZ<h{F0{jdlTCHd1DvEbG2*_T#%evy3UU+AT#h}
zU}J`0*1DRFHP37En=W-p_n)7*&EGumYmigOo4CA0yQHJ3x3d1_YgOK9Rqj|jHECAX
ztm*U4&6^!`EUi3Swm`cwso!b(ghYlU<y7T-&%(}<FSYp%?^@LQl_z*j-Ww<$v^a<-
z_e8;=j+1dssq3;2<=fSi7C-Sb^ZywZ|8rN&u2`9bO~ty^v+B>)yEVv7Fq!min#XjB
z8Hw||{g>yjtK2ei`?PyO2|qhhj-*`9ip!TM5GZ<H#@N8t7Sr~=m$lz$dj9NRb4%y-
zRMb~4s6E-tGP!=<<ayV+?nki1tEa0MoG(eJscTRS)F?<QI#qF~=T^^`p6}Dz{B8xj
zi@p{&Gxc1dQ`y>buZBM@H51fl_s+i&;TV+^Bb;?Bmp|XSOuyE=POjCW^T}lIX`Mlr
zQa`6}$#l$}lgD4cS&~o^S*lW&U7^z*HzPMtFR5bMG=J>?$=Fx9J8HH1yW?FF#WNCr
zwoSVf)ZK6=@JwJ_rcBko+K<hp({A}|2F(cO58(?<jai=Hm%bt+C%3WaM-f{|b4k+A
zN2NJ6mGwL7JDbmUJnT3#@xsJM(@xHo4XMk&P&lLHSL>?2#nZy)%%3+s{dBHz$%{s@
z={gmss}!my)nuk*m3%7QQ}Lo=&CHP5yXW1D4vkaDpVPRyxnlympKq{c)TLOz_@qSJ
z<jk}`Y5()I^OFnamFu(!w_0}y_q)!to+A^wGf6vrbq;59R%g}pg?=rOH{x%`OQ&zD
z4XK~hq}{x?S+0NPgwx?WBPT^&h*nRVmEM|hK0Bqbw0?Wf<DSL|uCqBByLx=4Im}u*
zFFsm0N4oe^+5Iw}mQ{h1JADJE2A&K$nK31YrCgzWf9;#vr0HAd9nBMLT^h(6QX9gT
zHaAT@bAI0bvWey5&4*g%w`WeAG3m>krjB*~lLGGt9gDP$3r(y@sZ3dyb|GCc>umPz
z?D(R@BF7So^4sO&4SSkcn;E(_x_f#w(kJAk7riS>D|f3}Ik!H0QjSujTKdeE{NTwE
zGb8WEoliDND^9n{(=NVVb-hVr^39;vvFj2~CvqhnPg<SwAT=^GE&Ft~V&V7V*iyGT
zxhAIOtk%U{`+L-<C(d0Fabuof0AG-Gh<|8%YFQ3fEq85PLswhF)c4c=2Tje%EGiC}
z6=fIW9qSXnE?z5rTSjuGO`c00XL)f=UwwNkU-$R^#OYt=ZI9WOz?--_(LeQf>Yr4>
zocB5Ni%%9mterCTShP&LKzD3VRPfm({*+BACg~Pgr*aMy&nuZyJ+(%<uB*|ksipOG
z|IcX$XPWqX1)mMR9egH9Cxsz(V(Q_{cR3OHZ;L}pmCBx!{VBUp@w-B&(ydmf=|TII
zexVufXB-Z?lC(5MB`+|)rtEa@#)(Oj-pz8JtsKxB;1#|iQX|Gat~}m8$u4zg>cLdb
zwC?mdnTPU@Rw&l4YG`QGZra?mu%)L>t4q9l*#x6$6Xx><eD+WN`7?Y*{GFsp$@%Hd
zd6I>P%g!|1YWULewL`M=L62s?@5HQW`u+v}(sAe0l`?9}>dIVZC&qDQWfop3%qmU!
z=~(C7`m*)T3;}=t>Vo>EQy&Jh#cj>7%kj&(owL5^NHufw)f}sm-vJ##2P1BzOwU?g
z5>~dnLcHzKRLkk9KjVTK<GZ?7^sn#lnxGoAwA^zJ$9zdYrhwAG=$P_2xiqV^Bk4yo
zHWx6K9xXjtdACZvUtuQ4th@e-5rz@pqVv*Hvjuaj@@n&+6l<5hY`)VW+!@m?($DXI
zH9#OZCU|o6%6Q)N{>sWm{brF?_Rh9W%YN(rr89-*=%knV{qXmUWQ=(q^C2cZ`BKK;
zf<=YeCE9gwTA13ECS02Ic@D4N4ZrvPtpQ;{`9W$S6G9$@Ye%L<MMalJpNXCmm-e$P
zsXTRgYF_TrJhLLTYWo_q`hdp3##xOHO*5NTHZylE=y}%jyQidgSMQ4ncP7eAbD4H?
z=JPq?!E8aAAthm(BSIqcBLBxPNz6+UNUO_{Dm+%!S#z&Ox^_*|!JZG((tk$#i^tc;
zA4<}U<xanqQB&bumorz?Z)SjKuvTzjaC2l*RD0Z}gsw!-q{^fTsqN{@Gp}S{%f6m{
zBYQ_q#!u6dU!_776DzJ(-l%M@IbHj(erbbU<Dte+%~I_zI(ByDbnotwoESI#_6+O!
zYr?dmbK-kaH)pNSj>-L)FIo^=w6=J8&*dKL850xDb0QiTXZiYd`_1;d>SyI|<6rN8
z-~WHWr{EvKY@v@sZ->2(NQxAUdL8{MnkD9QtajYYc-e%E<T<J9Q@^GEPG6f*ojo(>
zdX91)XMt-mQ-xinLuEqc!OEA_;<ZJ!Z4JClea#nJj<?<K2<VFIlI_0Jlh(Vof7OIP
zGw#ovJI^a9^QTC9*3TIMT0w;|$*G|^r;3$J=ax>dp3_n>(O`PH-=vgX*>Qy{TRHu*
ze|o0B%Mj0--z3qR-SIuSF<)rX`Wak)+XK!A$OpQGt_l?obBLCVc@Sd}*A=%Q?oiz4
zgusl%tcX0@B8Q>_ML)_?D>qhOssG&ZrL(vzvFBco%=Ea3y(NEpj)&&_OsrC>Eov$%
zk}p*)&HX7^-5T*bVoz*;+_tz0@u3NmlIoLvQzxd~O#6{0mhma0p(w5-uR5>xT5VDN
z(*~iY^{w@tle=UmJehQMp2B?5$lOTXxH}0VX~k(1(gSji=EmoLE?-%3tmX7X?a4R&
zP6c=bwuEv=FOGIks!KhcYLr)7$XMc1(q6K^B&Tdu<*nM#x)t?Rjhh=So21&_w3l{0
z?yZ<Gagyp3-<j)XX9Nevgk&Dc(ahD(<7t}RYTc>ZwW{mYwDkFjK|9knWlyX7*UsD9
zJT-QjY-(rjyTZJm=fW>Xu8CGp_>~}#B%c<ardj;6_;wj%c}{g$Ls3I&<ASb96UF=<
z1r=qB=dxB=RvXmj|J=~?CRjf#Fk)*oe~e(vqgaQe=46o+-L%aadvZE**XPL>EGf8D
zs8-rv+E*%BCRqKTTDwM}*0NToHMf<$&7_NWLgIw26ShzKHr;&Ib^n~0`1Fan^J{wQ
z#Ja_L<tJoE|BdBMInWX_;o*$-;_m2K33ciBa^<_0bumuhnPDDO@H4QWuVUKdf{yDG
z-}zq;{u_ELtSS6&#G$B;=+!X?VpQW86M2)olRA=RQp{2-QZ2K(vQ2U%a}D#K7rrd2
zC}uC&RH9avSbm@~yy{ie&YJ$(HMNO#^XfGl4Vx#l+-iB%I;~?v*Mx41ey0h|6LKa_
zo3wLM_q65HR!qA#jbS>+jA=73&yt#bCAcm^GO{3gfAq!NsQmebiX}TsS{wd0Ka6dU
zUls3^@FrC#BR?}Zt25g)_jB&!;(ujp%6+RvYLy#hnjD(Hv?RACbsgzypC~t(ZN`?F
zJW0VFANo@#vB#>%X2!;s%x%nQzncFq=~BH}XHln|UxeTDfV)BN!SzY(X_<Ab9dXlo
z{Uw9V!cIpniL!|Ci}8(NiW7`?PS~5OpXQXdFa1lpO!1>~tIDJGQ(DfpOzTYR%ItdB
z71~qP^CkRBG=F@4!rLU?%xT#%c`b#Pszci&y8rdvpYd;og@2>}L;va!g{U3THi;Wj
zGt&MP8kfdZ8rS+YK5m@RysGtFD|0(n*Xq96{e?e|_8UeniGCK{neZ~2JLYhFV@}b}
zkGb3hQl;ygzI7e&a||y2d2<?n&OE;({y~9pp{h|YVg!>Si}p6HYW~+2*&*9yKkeu=
z;hCIsW9M>3Y>wF*>k{`cK{WAUGE<gn9@E5-$$m2g=9JIxjNTE$ne3nDkzrGQa9Z#5
zkQwu5FHB|ZKHaxxs%hxTm}{|H<EE$ilznMFKJ{|Mo}_a{8goDR=|%D<Sf@2-Kd)4q
zJ3073$l-9YSn0%TY3p-)E9#nNOmmsu5?qrsEqPNeSDkmG?~LDBKK1M8O3jP+vkur6
zC=>ZJ;ajpnrd5$yL&?u`6Aj}_f0q4ZseRg%-?F>qX=`s^`Okd+il3D~pF}uEM<(1#
zmPpM_osm}c(<@Usi#wOGAgAzBDR0^4%7UuupI!AeKV3R&e@^Z`FtK)8-A}HWEa3~|
z_oOoBGn6f>oY%E>X4LGQ`7D9k5+^40W*uvE4lsyFi{~t4==#-F6D`*E%ikt&OPEXK
z%H*H9t73CA+X6fMBK_-sHvDY-*%aCIv-xLyc5F_|&#fh5m90P7n_QbLo9+8!``dm>
z%xwSJ@w4;iGQX~$_rojWh10r!_WWF3T3MIh-TRYmLiDVqVd@b-BITpDMECvt7T5oC
z!q0$Y>*R?)Z8O_*_UH8FPR{+BE0RCy=lue+!pOqOKMxmPEu8Yxzaqb4>d(^Z$F<Xb
z>eo&G>DzI?Z^qA=KWF`no;3UCw>fiu&iy&>XKO-h?);w{3m5!c_;cgbwZV&iF8;aX
z=jHUJKl?xnElbLpE;TLtxqIr<S+(<yq%Hq>u+Xz*#m|*Ly(3orT>W!LY+?MGp9*Px
zX_cAlGA(jG=a}U==HJSfF3>LsD7;@-P`vhMbjiA(S4vKl`BhD>TmN&z&yP(BUFZ5Y
z{`8o<>8IrM%|EyNbn?>**!q(r=wa~ZwA`Fi`CP^I<w;fRn(nqTwQc)(r6akkwmZ9L
z`_IjjcKj5cE-+(?AFuyO|4jiN!FD0WA-6)4B6dZjM@mOMiJqUZ^XI9=u+;ylDQU|y
zqH;FppD$Qb7*t$a&C$N3%V-Y!eD9d%9GBwGVyj83^HNLX%QCA(>$ut+0*^)<OnFx#
zT3S$cuzu=<v(rLms^vW^Sy{EJ>S^Q6wu*M?F3+f*=-JT=GZ-?Hb5|A%m*|vCuXtJe
zx?Z9&v~gauPmkU-!5JUY8sdMYcBW_LbQkLeFh^x&zbhAu%!xf4t6J<|y6flepHBmR
z2I@!XMox>o75OxJ&(FO-7sXyr5=)t!@-JoI&pT=Re|lsc`1!vurR3nxj;i%l?sai>
z3=IX1hkm|qZ|qd)j+}7#XTyY`nRSUq*(JI1b*h~k`!D*h4VWHyJm`3MXT;9v9dS;H
zQ!{&V)AP3FO({$&(J0j^EpD)AKH0+6H)Zm@$wz+n`33ry1!x7H2tFPBIk-Lga<oc}
zRAN)&m(=K@>BSBuhspvfCsyvPWUJj<-`#YzHLmSYzx#x*6JAYho%Ukd%W2nw(&OKz
z8m8%I#1xuU9h|^5W1`>DpFvskvM1zs7D_biXbNuio-lRVr)j^ZOSKx#p5WJ2cx0M$
z;QZi+A;RH8;fup(M;(be9IcUHpZF!YHODfyC~rcZL6LoNc*(`4#tzs1gbBxfCQXZ&
zAw8EPy{k8FlCQsKz`cONVBYX6k&IECF$IYe(sc8Tio8qS*B)-*Ye{RdZ;fw{?vUtY
z>JFW7db<DYV!w(0LV;O<$A9XFt_-b;UK(8!R~xr4Zb8ER1dc?`#3RWTshsI2eqKqx
zm45PPVrEk2&K&jJQ$H>8PXBzEZ&qwxeCB6NiDBv4pFw5kexCoiw)S76Ma$KW8C|!#
z-gX)EIrVu>u$xdd!E@rtiFuPR{Ji*+Gvd<E%h{a`n;I_vyz<jAFgwyR=IYODKU4CT
z7e8rW@4fz0d{Y0^8$WOUy!G?;&-w<wB$<MY+TQj%KNo~&Cb%bV&)(P7FlpnoNI&_I
z*SWf_1=BuHe>dY=^5dL|6Yd6{Ox)G@bM9P!sQ`w+Inn%y{}bP&ux1|3o>=<0d}Vz~
zQ-AC4_T-K|T?O5%C-(R~_2crt`}5vU^T-#G_kVthm5z^&S4?>D^Wo1&KOg_JD|%Y|
z<Yz(Y+0v&!e^);H$<tum(9-a*DX{tZ&lf-U_H6EHpYZbMtDj$H@XUPu^UY85f>ULu
z>d(~wsh8^B<#*7JIjA7`?a#d-55j&&9*q`_KO3Ky_wMKWpINo0%^!YFZtLy(_%nBU
z`SedeKmTO#i}J7Y{~7T#by1$hgbkB-&iw87CZa3yW~5`nm!DsMid233>EC>~CpFL|
z`1{WvKY#u_>z5f68oj^iil0@`ijb3$|04sU!=q!OlM_4=Pv^}n$SZ6s{$8@R^k9W{
zEo;N8MvZ3i)|0L8x{mjpnHJ;!D`-#H>Qs%int~k#rbT;edz*YF9+*}%w=nv7#*FN$
z{Ci~+V^*g{=WnUjsxj-hGmXRVx}QR@NyP4m_Ypaf>@mi1EpevtJ;|HW!qVll7H9Ef
z+vmF#{rVYD++FgZYI#jX<Ne0xja|(-Ey}G^TF<xM?GWx=GqHT?oN2v*Cqp#CH$?j;
z1*F?%OwO>)yPQ{BpjdaXV_^?xzxRB<`MO2@)n~h;CcFFl`5Of`gj|T68n-p6G(9g<
zJZoK!RNl=Zt>V3<JE~1<pEvz%4sZG18r`+Nr@c>d!j1{&rp3>H9K;p!FzQfrL`rGu
zm%JlIzkjxr`Bq6+`_|ai-LJ21*6u#llhXUJH@@#x|Ihx+2^S|j`&apI4#)_s2=oog
z3QCNqiAad#hzX6k9XC6{AW1l5e>O+X#(cj*g%X2Oi_*Z-qB5WA?&`JG$Ey45^1AH$
zJ^Sq^O`fDQS$oRwX;Cw>XUNTD57J7SkrbJmQg*89Ky_JdLh!zr>2VhMI}2vi2u|;t
zeQ(~<<f@dic1FLcerx?=0!jlsLJmjHigt)w8}~h~G5%<RRkD3*N$Q!@vb2h{f9V;S
zomt7*4mk&MU*yW?#pTHrEG+0N{#$HS8eQIA(O1b`Ra>>Mrmxn$iK**V*SsFxiCz<L
zOiY_}W|G2Ww&`KhW2Q6B;G1t2G%=_qR3$<-PCmXT;X?BIjQjbyl{(dD8+Wz-?fB8<
z($_mNW!mg%w$puPc+EfO?-qDEaAlBDm`Hqf{Ho-$DKAqU(|)D>Op{HYn{hqkZ>DH|
zUVeJv(?YGHRV7yCVU<yp_bU~urdCa_xnJW_TTs{D@Vj+MTS(Xbu9>}!eF_tDCp?~L
zJ?-kWr*qDyve#_xJv=!gnkyzK_-2x9v3kJt=y~xQ60#GoX57rxE77ZRs-077SeM<X
z)o0pQH(6pzfPX;vv)JWv+R0h<)_(r}{r*t_cO#E9WQAme{0sGuoEd#D_EubMnqm6K
zbghgRIYzl&dA<4D3mz1=m-^H&)#}tPs+DiL-Dcg@+Evio)o0vqIKgjX&_tIh7iRvf
zT3U0;pE2-Q;EC|}(Z6FN(`>V%a;N3J$>%A|FMV94)S)<`bi(Or|7S8b>-v52bL%)e
zu{QX2R(7UiPF2gih`z*sY44Nn76_IeFAb{O(c;<7(d+H^DtL8>LAXQs^?1f)_T>B&
z{nQt!RcUk6H>W3MC*;h^(aC>Wu3F()8D1$_yQqPw@pI$crtM7<?LA$8ezNrL>n)n_
zrA)HQyeg!wyn#LRN@!_>ezH=EXPS3fZpQ4)mTcABjd^E_GfEbgM3?R?eOM+}-d+Bz
zlCw^>?subp>+}w*u8Tdd`!@6&O;|fQd0O!__USGDAA?^-o{W-=^UF9^vaj@I<)o^`
zjc?mt^_=N_+dn^5H2v?-@8RM3cWd?gzfC?iZEO6e#Fl&!zZw4W0Vjj+hvvt=i&e}{
z$v#~%tNPzh&%RTAc@sR7?NS`dTdMRY*H6iszaeFP{<FdrCAUhBR0-8I)orSoQ8%lb
ztG9NFz)YW+mO=NUpQY%g>(#yuI2>FV5s?^~_$zTu>dmT2-P5``0~7;FgA7A$q8`K*
z#G53>rShbir7cQ3n|UP9C||5tv21dcWn*O1wdOr7TLV6XABcVtof*F{S*>Dg?VV=D
z*5ebuPV5T&njTiYrsqiD?#R6fp=~k&|9^%AS;f>QN+n%R`joOX^-P{Z8CPRMU;MP)
z)9(8@2hRxAjJz9rH05N@uiPoc^;ObM%UYlG2=tXtcs}vrRK;n>rvC{16w(&DGk!@*
zNB)*t`F`Ji(<vtd#A5d4{LYmw-Cb^5lTuUJb*M`&Vqc_KTzPU(QCDep`JJvkJwpAT
z<4V$g<kmJEY(Cu;IQ`mehF{J>|I?=CzR!D5`>acELfnKavt)zngI<J8No+~FowO)J
zC^IV4G;30UT48JjV<lhZrApqaX$=)kSDQSWJzJZ4T6>cwc28V4@v#5Ju(yTR%Ng2#
zbpD9G79W_tV#1@~sEDu8OA;Cr6H;vJ3K~>fn<uSHSrZ@<%aA@NVsFxlWWLObOu4M=
zyj^9dD|a_(ww&);(fhYwXrlMTITHmYOH7_M`SvukS-f)u{bEXED}Pl5R-dfat2@#X
z*;mr{qfcOhYMOnfbIGqjz4SZtTmv7(Ps{n#9@|mgu_a+^BXbLD@3mmd5R)*oD8rbp
zf(P|c4Q!2X8yEL>PK=-RX>Lit5x)h&zY}!wQery%RRW%b-i(QlOHG)Pu{-BT?!Lk+
zrC&-D%cQD2tB%+HuFb3e(zvosrvK!$%`=1My9XT&dOKrPC$rzBbhiAh{*R)krg!92
z<Vu&QSKOUgGx<pSlS;#?*YVf<mW0@au8UY2`5_@V=~|LmdT6F;lf$%)Gw;sS2?!2$
z39Sid{1uVJ^y^VdcG}(agZc0Cl}ap1#Jen}1ctDMrG<OM&r0;mjwo1Lu)B6@S5~BU
z<Dz7aa@&SgJs}agDZ4YLMhnK}=Q01vZ1oBJ5Udrckl>xzmR*qZAxEzIT*H;7W4#+D
zY@EUJ>v+nN{D~<nseXY1A@bpTUGa%!8LYo<mj+cA)=Euai#U^6->B8eFu`(0ML>Au
zn#ie1{1dch$0k-5U7MO1?iTeWwkv6E%CD62^hY^%xjIE=B_<W+^=q4M_lnO@333Xr
zPxmN#T(YufS-;>Ut!deTZ-af3GyPdYrzM1^&d#aN^(p#WBwp3tIkzV_zAyi0!HPz{
z#QpyM0gg%TMaQdO)V{3uov?Pg<g9HyS>eTT8`61OLc0_~#G;eq9>sCRH>d7uux;&}
z8a>U!pEZ~_m_N8J<W~rDICGp>!tA7tNukMXzaHkK<!&rBs<_vn-*~Snv1L<BZ--DP
z_k>rI{?3><+cj=W+TAq40=6RdUtj%egR<g-6NA$wvzYQ9m1I<AbX4{npK)Y{^Q?m*
z@>Ri^-@CkeR?Jv8vnGCZ(x%dNWve^tCpb;B47Q0s8h<9|OmR|acd1+Tzoxk}{rzkv
zaQlV&FAL_6JP~J*wmB!Xq`Wz;{XkE^1i9&=b1p_yL<h8qbZ?n^DLNyeH{oMyc#cy3
z;(V!s(E1Pc6Q@p^8Zhnh^r9e_{=b3RAv;2nL%TwEXKl^BQJdB@XHxmJ%6S|iCqgcj
zJ!xAq^~%(kX^Z?g{oh4Ci~1fLlrTLhH{CI#Ek{4kqJDORRujiB&R?uEmimPTYz~<m
z9u=7xy*c_sVtHnHu5!W8_Q#z?UC+CkCcK@wW7fVPiwv=Via7st_hz4t)qa8@>%yKD
zi%$GMopWaR%$YNT!{$dsw;6VAO8k~pU3{s}J$u!(@L8de3`N<!nbWWMe~D3x|B)D-
z_Bv;EK}+$@;(x`O<-X<4wMn(gb>>Y$9bCU2^>|LopAi^cQsvOWIO9yz1OJd<yU4#W
zcFC2wKZ{r!*&7!%pPytfV}+kfpkPpUcvAeKoO5}s1px)?3nmr5EY2+PYF^Zy*ugPj
z(S*g5SIo={43B@1ke;|XEwa_CZ~esX>3)8b{Axn3M*NDXjocce9&eW9k;Ijjp7uIB
zGxvOMSl*AkDftibU*^XaTqsg4i7I(eGPx|K@>Gpn-NS}uP1!B`Tm0JM+e+HYyR&-M
zOlFvoI^$x3SW@}Ks3`ul@40q)_9afU|Hj`+;IBRsA`u^#b2&#V_eKG0ZDkuzm-Sq+
z;GPiHXsfL3g3{97%6*j^o8C7Ub~$#h=qZ`b{p(ALcIvK*-4)qY7Jjor10t72SH~?*
zxSgDsothS$A(@w2xS@ojwq-)*EY&&Ixfk>7iXD4SP5lt)6SpGXH{n}?L84EhbDB%q
z(#(T7@p&inlJb2D=ajUU9jsQb32F{+51i0D?eIMP;Co@e<GSLL5~d`4PfSZ=PM?$Y
zE_YpiK|xk=R^7fvljbXJE4q&KGzS$GPm9jZVwv(Tq%ABq+9S0!^<>)ojNaU1xz<Hn
z8cHYn&RXv;889oDFT^IKGxTVveOynxZF*Ya-D1`Ww}U<hr9_;IU@7b`{9U-ARk*7o
zZAI(y(3Ui>Lc<o%;F+NZvm@j8#=lGMOmi>%*d^P)Z=RsPRm$mtw9@pplmx%-A9LLU
zzXfsxo8|s!xHwNVO*wl;!PQdckjfbLTCpyLY};(NY>SYB1l!!J^&Cyt0`3LQ3C#{W
z8}=rWGnyxEX5x%Q!=$*hXK6DFcNXp{Twb)ilA&r-eL+_!_{@)PSAi~pj?n)Nwf_~$
zcp7T|>y&9j&R=M#{jXof)lmE2qfGKOQ|Gsa+W(&XZETDT3=OsaYs*+){stYc4L&mD
zDd_A8R{;l*N&gyZ|0(ddonrv0`&Y-`euRO6fqz@*|6Zs2orf4NF&^r?c<>>M=D}VT
z&fb9g{M%gr_3{XG`u<2e?)vTT|Hj%MjjRj|<%*59KcYaVh=_K({^$fBB=O=D{2+;M
zuY)Eu*8bq-XJ9B-Z>;^Xo)2=K#t+uIU;qF2iZJY0aT%mogek2v^xJDy(E7N>+8?S)
zFlC=UK$LMjLnupYto`=)e~CEckcw}e0+4elq@l-97#?^numgNN1?L2id4>mGGn_n(
z*x#wAWTF(VsII82p{eMmXs1}NS)r+_6r`l0sH0S-siRS;QKnI)p|7N<p`>B2sHLH+
zp`)p&sjTUssHLf^sidi*p`xj(sivW(sjjJ^p`od%p{Z%0sjs20sjZ={si&c*sjg(8
zq@kp(q@|>*q^abn>ZFRk-`!i)N7Yx=Pt{*FKs8V`NHthBL^V`3Of_6JLN!q}Ni|tD
zMKx75O*LILLp4)1OEp_HM>SV9Pc>h)K($b{NVQnCM7314OtoCKLRDQyQAbHfSw}@j
zRYy%nLq}6bOGjHrM@LsjPe)(JK*vzWNXJ;mM8{OeOvhZuLdR0aO2=BqM#omiPRCxy
zLB~-iP$x(ySSLg$R3}U)LMKuuN+((;MkiJ$PA6U`K_^isNhet+MJH7!O($I^Lnl)w
zOD9_=M<-V&PbXieK&MbATt`b$Pf=gdK+#Y!SSdtFRZ&gROvzo*Loq_JQnO04TC+y8
zR<lmiQ_)mOMLj_&RVhg+Qr%0jT%$sxTBAmzR-;bC0DMk>v8oC9tN?RW3sp<-Ndn5M
zDypjB^8_@&CklX0P)JkERLoKgRf<pwQ;JjyS5j0`Qc_k5R#Z_60iVKPtYoB=r&yrq
zq8Om4tyrU2t5~gA1wNy}P{~!XP*GPgUolM4Q884}Nzqv`M=@8iLa|b@OtD<iQ7KR{
zNHJX_LnBioOCwt&M<Z7wPa|KWK%-EjNTXPzM59zAT{A;7Q!`65TQf&9S2IsDU$a27
zP_sz0ShGa4RMS_}Pt#vBKr>J?NHbV7L^D(~Ofy_FLNih`N;6tBMl)73PBUIJK{HV^
zNi$h9MKe`1P19GyPs3j$KqF8iNF!JyL?cuqOe0()LL*WmN+Vh$Mk7`uP9t6;K_gKk
zNh4V!MI%)sO+!&lM@>mhS4~;XL(N@HPfbP5NzGABUrkNTP0dx!P)$|MMa@~wKuulE
zM$J>rOU+!(Tg^w!NKI4CPR&=%Pt8)zUoAk*L`_32P%TK!Ld{k!SS>`&SWQbUR4q)+
zO3hv^TrEP)R83ngQY}i&S}j^FM$JJjRxM5~UJZ2KNs?N!T8f&PnwwIhVuGTxlDm?J
zlDCqVlBbf7QnF%_qLq@RQmSH#qJ@&VQoLfEqLWgzVyt3}qKlHNQj}t(qQ8=#Qh-vR
zlE0##qK%TRl7o`9lAV&hlCM&<QjAipQk0USqLQMrqK2Z0qN$>pqPe1lqNSphqP3!p
zqOD@KqLHGpqN0|Pma>+Lma3MTmb#XPmZp}LmbR9TmadkbmcEvOmZ6rBma&$JmZ_GR
zmbsRNmZg@JmbI3RmaUeZmc5pPmZO%Fma~?NmaCSVmb;dRmZz4NmbaFVmamqdmcLej
zR-jgpR<KrxR;X5(R=8G#R-{&xR<u@(R;*T>R=ie%R-#stR<c%#R;pH-R=QS(R;E^#
zR<>4-R<2f_R=!q&R-smrR<V|%wvx88wu-i@wwks&sEE+k($?12(bm=0)7IBE&^FXI
z(l*vM(KgjK(>B+((6-dJ(ze#N(YDpL)3(=k(00^z(stH%(RS5#({|VP(Du~!()QN&
z(e~B$)ArX6&<@lN(hk-R(GJxP(+<~;(2mrO(vH@S(T>%Q(~j3p&`#7&(oWV+(N5J)
z(@xjU(9YD(($3b-(azP*)6Ul}&@R+2(k|96(Js|4(^gbbQc+e>QBhS<Q&9&MbShdZ
z+A2CKx+;1q`YHx0hAKuX#wsQ%rYdGC<|-B{mMT^%)+#nCwkmci_9_l4jw((n&MGb{
zt}1RS?kXNCo+@4{-YPySzAAny{we_~fhs{N!73ptp(<f2;VKa-kt$It(JC=2u_|#Y
z@dQqy$X6*)DO4#^DaLW?gQ2F8rm?1prm3cxrn#ntrlqEprnRPxrmd!(roE<vrlY2l
zrn9DtrmLo#rn{zxrl+Qtrnjb#X1tQ2hLMJ`hKYu$hM9)BhJ}WuhLwi3hK+`;hMk7J
zhJ%KqhLeV~hKq))hMR`FhKGiyhL?u7hL1*^lBc?ty0^NIy05yGy0v<YdaQb!x|zDU
zx`ld(dZ>DsdboOox}v(0y0W^ey0*HGx~{sOy1u%Bx}my}y0N;6y1KfCx~968x~;mM
zda8Pwdb)asdZK!gda}B`x`Vo-x|6!Ix{JE2x|_PYx`(=-y1#mWdZ2ocda!zwdbE17
zQjWTsdV+esdZLnzdak;ux}|!SdbWDJdWuqtdY*cwdS;Gyeo&cFM0BoEyj{F?Wl2m*
zsakPDtXg7)pFxaPa%N$buYQeUuy$c!x=v7~Uu~g%oK>}DWsskCazb{MU%9txYND4<
zNMcrUjBb3kw|;18SVgKsoN|tDrg~Ocrge2@x=(&ufMc9aicdsgWxStCl~G!Cm2H)W
zk8gfxs8VoXj(SQ^j$v7~UtoZ}w@R)?u2Wo6SxjzejAepfh-pc5uxXe|PFhM<VUD+h
zcTrAOKvAV?PJBRCdUilyOlGuCZFqEIlv!AOvU8kEoT67wo^r5xo_~c$mPMXUp=zOD
zrcGsKYF18ItW&OPg;i=qw33%^U~XP^j%!>(vZq&Okzc4;nUkM;m`Sp3VN#Y;xO#Dx
zZ(g=hq-t$wSyHHJMX8TzscuSkdT60_foZ0vPiR$0VpzCij9XlORbp~+Vp&X$pG$OM
zMM_M5s$oo6XjHMIw{vt=WL~gEm0E3nwpxjok4ABHv3j(5S(<-QL6mn;x^s9zSzLx%
zYI>@&m%5K<mRW^rm0qD=ey+DcnSZ{2W?Xr&UwMp1bcMHKd}6Fusaa-DdR|^Zv3<O^
zk7GbkiB*C_e1cz4Ojd1Km{(S2hE8%ov5Hqkw0m4Zc35Fjs*g{#cXF0vd~R4kre$7o
zXmDUbs!4`(wpLb6RavP`K}fB2g0r7hfK_>Mgm1ZCN_<FqKy8j*P<~!`XiAn+MYgYf
zxM6jUuTe}+K&@Xvo|8{*KzV9Su~MFKWJ!d1rk<ZtWMPDVh<a*JsAiZ_NqAvIsBJ+&
zctD7Mcvg0HZEmz{jgxn1tw%{#MsaCeWqxpQj#I38en`5PS9N4<l~!0qNqM<WOnA6b
zyq#Y`uu4HrV!FR~v1YEFSAL0KS#_LsfO%+Po<>PUjJmg9R9b>+Zc$!kOiX1=aZyEO
zNnwpmKxMRHc#XGeL9KU5Xs)lSmv)#_fL(!Ykcy94m9I}#lz*8;W@&_<k8gNjNN#4f
zS5l-=t!}bUm`S91VsM^wfN^a~XokOYu2DdppGH(bMObZMMNma>Oj2xRwPUPla%`@P
zpQ3kiY;28wWp$9Ezeb8#NnMU!a&Ed~ZBmqRL`rOaL19@zRcWAqR7i|kjD5bpUt~g9
zWJr#8mc5rjXr_N|p}$W>N^VL-xO%O2mQh)OzinknTC{gyabTuqaY8^)W^z<el2Tbo
zVoFqKx_zmVzrL@szkzREp>lwJqH=|rmvwnokw;u`re|DSt%FxqrC(r3UQmc~q(*II
zxL>(lRhWN4cw)9|MOBP*Y<y*YdTOn5Sxuy7ZC-k6Xh6Q9uTr^Dp<$tsuXdEWS5mS~
zwMwK_UT{TKwTgdrOmdl4u3}N5pITKyWmryLiehDcb#|q4o=%pAS5--vZ&{6JNl1lS
zg;$(gQB-(9uxmtGR%~%pN=jK#nNxgiWSNguuzpHnrCLF-w@rdqNmYneZBnIqiBqjX
zO-^l+mu+o&mUDbiV3MCouy$=iyn9hWdR~B5v3HzBS!tqip>nyVm#V)@yg{OUfl8TK
zvRhStKyIx|Y<Z1+nr@tZRbi@2u4+(TtyyVVqEB30O?XbMuX&iUZ)inCYL<V1zfYE4
zmTp#IuxhY>xk{c&fKpLGfO1hqxp9DIv~_Tfms(+{cY1l8uS&T?MQm_@kD7mRS$Sei
za9x#pRb;lhzkXJJie+X*VMIhxf=OCUOkr_Aa&?hgbYVbIK#YH2u%S;xxrVn*wp~h0
ziBpVvfkRrZS9V55s&h<SZc%W#Pl%s(y0f=oqEUHqa8R&AX>5FPUSYaPtw&K%aY<fq
zQlL*(yj5m+q;F|ap?g(Dq*F+0nQLrOdVH?8S5>rWhFY*`t!HIYify$@xT{~NUs{-L
zs&8CzPC{-@j$L(jd_|&NWpRL3LQ+OZQf-h%YH(y+utkYYd2LKiMtVwlvPMo}RZ(h5
zfPPSFjB0>Mp<zvhk6UbDReZTdRcW4ITyeTixl49pu6BZZtZ|TikdK#rb!}>DtZzg~
zPH8}HMo>URWLlY4bV7M#gmOu2NnpNdq;{@(vUQ$`Z*hWeR%uRNhNicEp|6)_PIgg#
zZE>YzT11Xcu3uJshJTz|P)T}Npi^3MvO$VTglbt_v1)imxm!kBby{p)OjLwUltGq7
zvX)n6qG47}QC?MOUP)z6P<3@dt!+ZGpIe1qoNK&Ys%~ypRi3X}u3m0#fnuzFZbeOY
zM5T|ZuVz(jVrY_ou2QU5WkyzRYIbl)W>un3N=l-8MzmjOjA?msO>u#~pJ`!GzDGu3
zc8IrKLPc_BmQhVfLV~|)o>rA}no***S4y&VW>`{Daaf*FR#`w~j(3!XzjADJgkNQ7
zW?-^SkWPe8akXz)S!sHHMrE>fP;qf}azLDcUwK$$p<}5_jCE;XTv|*}TvBdXo_|(e
zK}~Xea7nOnqDf+KiCcVFrgpSinPswTwq}W$Z)K2fRB}+De~fpPPprRYhIO)4a#TWj
zo^ecRuv)ljS#)@4VpfQ9e0*(rKuE5ZcXUd1qLOz)uziX{wOy2Nie;EXeodlfnR~op
zN_tF2OjuP}a8zMYRc(@gXhlH0uXkxding~)cwJIdtX@=}mu0A8a&m@tv8I1{aA8P_
zUr|PBs$RNPSWdh{N=k-lL`;fhiCJM>l4)YTuX<ssU#xd>q)u^VfObxBTxNM`Wn5yO
zw@q?bMP77atyy_oNp4YOv_?T~Vo01$LUL|mut&UEq)u&czGF&ug-*0vjc$ZhS$uSG
zuzQ7{mt%!VkV%YXmA{v9O;%QRR#iYsZhEX|d~Uo=o@0KHk4mgpd_}NEp}B8Jer!r!
zypFd`W=@uOynUs9m|LipzouVBn0aAEUSwo^u}6iQUs`BdiECPDe!h2nje1Oam}f;$
zvTbsrze7P(PIzoVwN8#^L3ov8wL_3WYHF^ow?U<9xt_Ovlv#v&uu-*3t!|EDb!KW_
zW=U~zg=2w!oIyoGv3|O4v}u|~WkhUbMp%AQaC}lijYqg{ZGL>PPi1gHh<kKsTuDJd
zXk@B;O;}7ql0lSmaZa#ziEC|bvSDR)Ky;2xsY;PwgnvYNX=0gqP)@Z+Y(|P>P<VxP
zSXi8Gxn53UKxu+;R+yivPgzc4l3lV#O@VJ&WkI}ss=Z%gjX`c;t#z4yWmLAKmqk#a
zZ*X#2ZEjjsvQ|MrWm1iLMQUPYURio>mPw6MX-s%&K}KwDa80RwRJBi4uu4gIzH>-&
zb#Aq8LSB|}wNpxZS!|F`yl0JOYFUDDSzTg*cYanumP3?DMNzhMN_b{rO1@XPpI1#{
zv5R+Vva7dAmTjhIcyzX5uCtF_xpz%Tg?VIfaY%7Wd0@GDgrT34mr1pocUeJtXh2qo
zkG{87iGHSYX+&mbY;j?AsC8U*NpWpaty;NfY;cH%k7HD*PfDa$RdT9LaDkUgK!BHa
zRd#kodTL~Nph|IdNODa?RcNuce{ptAXh?94Z(3w!l44Rwc6owPN{vrSwRVYZK%tjK
zzC(CbUP*0ouv2wLs9v;LqIrdVf^&6NtWuI%UPf7InOAI5fLd&JY-Ngma!o)@iH%QI
zc}i+wd}4WdrDc9Zg=S@Bg>9Z&L~@E>X=H4Aq-BtEXlhhIRAgX;U!1p2Np)0aS#gGr
ze?dWQiAS`9Ur4flU}<5IZ??aMuUc|cplXp?kzY!6ux6oWQAECHnngr$m1(g`MRA}<
zT2w`5On6+pcaDF2NlBnpP*J>jqH<DAa9XZsbX7{6e}G?bXlb!txkrAnuYYNAs#8Ir
zS7DY~Kvbl5L3*}Bs%ec&il&cSt!b84s#Sb^Vqla-Vo64Auu76wQCgI7xo@pmad@6f
zsY--;kwv6sq-VZgn0L8ed})ShP-w7ENljEnWOlh{sZDWElxeV8hJTn<iD$W%k8?qo
zPjG;3aCLNocS>-1nN_H7aiVugwr+`5O-^}PMtYP_xnpWxLTzZ8pLUIPs78@$lBI7^
zmb-U}uYPo7zLjrfO>um>pHq~se`UHxMN)B*mrA@#NVtzvs<m%aeng&ntXh&of<c&9
zMO95*q(NLxY(`W<NM%^KZ$w;0QCNy=fL@74tZQyqab#RtvPQ5$bX2N+vSD;)sAEEO
zerADDcx^ytWL-dRj%KiCkxM~RQhsJ&Wn^YlhI5ollxs*;dV;S(vQe~4b#k$4WO}uC
zY)F7vnqERwt!Yd}f?;|=X-tG$u4SS_vO{G-W^`mqu~|%Jife&mvQLd~jdzhxk$*~b
zVPus>VQFn;LUp=%O-hYxb$YU8L`9ivOoWeqLV8I|evN-@zE+W4t&W#<t$VFedSF&b
zd`@6oigT)3q>XQCacHhpWO}Y?bxuWkLZpvdh-!Lis9kV%O;Ji|d__iXg}Yx_ZA3<d
zZ&-SiPqJ58ynBILfmK9FVL^#cX=;sYR&iEzY<Ns<TxF4aXh4KVfnuOiU`S*}m{+7>
zlzT){j9+m{sbyhsR90E3zg}&Smq~nVxK)*Uo^5GqMMiF7h;m?9VnwA_bftGlNKB+%
zUT%3_P+DSTd2VcUhH-Rxpg}@XNO)Ogcx*(iuXd5GuTzCik*=4Xm!7{<vUyBYv~^^$
zS8!QHT4`2UR%MyKf3TOnmqCzKp>eo#a&2)`Ty$JqesWTEUU|G%c!pnev~^)&rg@cH
zfVPiDUX^!cWvx$La6n34QD}&7yhTkwpl?x7d5BkJXk0|3uV$W2S+tL5K~0TkMqNow
zdR%x+oK8WVPol3?Vt%wylxm<wOj(3VV3KcEOnHG<fn7jMY*<KGa6qo2uW5Wmykdxv
zpI1g{c4%@ysbZ;mq;{%zT4AYcs&Zv?LUvi9cUGiQX<&FoU`1ACmT^>ketuzDs(oHc
zl6`<qRbZ)cx?QGUkx8^)O<t@?x=FZ6xt(ujl!1R_d0KI#pO&A8w|angfqQ^!N<ws0
zsCu|VURgy@X=biXq+6<TX-JfMQcZPCVTo5&My6jyW@?gUKv9TVpkI7RjaIOZPeOib
zYG^=BbXrZFcUG=pTymvSNSS{?SXO9Wp?8&Hs$poZe|D}>s7+{6t!{C2twE-GU~;Xo
zUrMcCm4TOfxuL&Onpur*QDVMcv0F@bWI~2UVp(Xde{5V}WLAoQk$rhul15Tka$s&{
zreT;-Tt<R+a7?y-yt7wLo^x$kwvm5Mq-|t;ghhy5c7AL@Y+-CstX-sAwXuI~o_30B
zR8E9Opk|UyoN0PNbW(mnp^1NCv|)m3d{AX=x^h}!wSl)@QMzwTMtHhId2)bal&z0u
zpigXFvR0s0hFMlsrB7N!nR|$LWKg7caCwAgR7GiAoPLpJg-3*Ao?~TkY*m(RnRTMQ
zZ%B!6ntzQ_bxeYFNobT&Wl?ombbMS<bWBBFc}8|skWFD!RaTT+lw-MBx_hcln0t(7
zqE?bxXn06KQFT^qLUFZiVR}+{t%sj^mP1W?ZGO3FxK(~^p>dpdMr?(9wMS@txMr+j
zrfyYaSxJ>vMP6Erk4<8Jf_-LfjbB=LqJLUpNpVVbN=jvNexAQwnNdPrjdoyFxJPw(
zl5$8zfkt?GqJ3~mzH4|=c6yCcN=8yZT1It7NlB_rNoa{#yk(73Ua41Vev-FJNJ3m~
zlv|2jMqGkPSx{DWrBgzRmw9?^R&1n6lvZA5wRf~>lwF}tuxGV@yhCt!a$0^sjYDQ|
zX-tlJxkXlGpht{lR$QT3xT(KJWL}O|tdg%@hHYYCkz-~}kZE*!aa}}UjZv<CiE_1L
zjdq@DNKr{-o>z6UuXRLpYI#LSnP#}BcVL=NfnG##WnHLEgh7#ZQbw^;eon4MdR>&A
zPfbyFR76r(ZeW;kLQsuIwqvkwLAifWZbXP@OkucnylSy;iG87AMOCJEb*NWJrB}H}
zSVoO)aa~?rx>K-Ou&z&4nNe6oP(-?FvSqq%flsw!wpxg9wQXp8VRe~FTz05Os!FwG
zNMf9Fig|cmg=t(+SZJkHdT4feXnMX~qFz;ISYDWQx_6FosEMCybzY)IxnH$yL~V6u
zjhVlDu1;R8k9t{Eno4O*t#PiWUq-%tVsurqw`RFowPlP$p+~NBzHXRbtzt$=wR&h-
zVQ^ZUk5NT-j9G0~YC@q;v~R3ONN%KRX?0pinn$f-n0;+<jbgq{dR|~?T2ZD!d_sg(
zjef0PL1MILs!6VMLPT<Prbd=|t$MXnW_fL7QcjFgMnPIdZDp-}nR<G7T5*VHNL5%-
zxI<!6bVQnMx_^OPu}+eCX+eTTZAP+sNKHmiRenWqm`P|rK|#53o>f+GmS?VZtWK(8
zZ9u$nPGEd)u0=&vxpqZDiB*VkN>rv<oPDH2WPX@Wq*hdFd}_IoPi1^UxOGTXt+7vW
zbWpsPUsPU7ihs4azjI!epKelOcxjbqs7^&>dS-EMgiCT^L25=-f=gapq*AtWwo{FD
zmUc!`Tz;-{Mxnn=NLGzqdQpu@m|l{3uuoM?m1%BrqE1F^MrOWkiG_c3rcR)HlxMb2
zhIyP#SZZ)=Ralgvmq(OZym4hvk&BnNU#YJ_twyM0VP=w7j7g3|l}5EjKu%O%WOYJT
zeq5DHf~CJ#Xi~U-l0~?0MpT(nepFITSwOXJV2ZC^U~Y_GMrDDiUrkzdcvwJbY+-qA
zS$T9;bxfvXWKpSWLP(ZVrA?M=P++w~x@vY+yi&4dxN~N0hJHqHk!H1Ogm<V%fPP?d
zxLbl!SV3-act}lnRJ>0}kwIXBPi?e)abSUUjX{!XT69ueyn8}^QKC;)m{Yo$pF?q-
zZ%}nbMRmD-hIxiru2qbQPkEt5MwypNN?1u+yn1|kyknwErgw~MrgFYowz79-a&@3e
zes;b|fU<8|hHAb~aBh@UcxX{-X?~<hWk{%hZE|#Cp;=B{b$GC0prN->ppmyzVPc7C
zrE{WFVtKYkyqC9ST3m%zWx1Dmu0?QIQDlf~UO|zOmvu}<p?Qv1szX_9ZE{GGPe^%c
zxO1>tgkxD*tb=b%s&}eOqCtj1Nmg-Qly$gal2&+iSbR#DmqvD7v{RXNer<?Hf@OwU
zzKU;2h+=e1bZm4?p0{^sO}3w-Z*aACWk{)JWNfByv|p@qx=&6{rH^+_f<{PiZhk~~
zQH582R7jX_WL|`0QE+@gR8~@LLPdmrxmi@WS42@|M0{1gzf)vTL12n`aY9v2zEP5G
zh+kw<iDrnCZ&Z3@kyfN#gl<fBQcYN;S5!!NiK35{zeTBYWJZ8%az(abk+r{WaAHP|
zpGiV;TzRZfQCV?xSzUO1MNzqCKvbGqsZDsYPjp&rtZ`s&eq2~dN`7KRtbazTmtu@*
zf=-QYje3Mdu32<Jn0~RUZ()>1M2e3|V1!pulzOQ~sajf2Xhmpolv{F2Txy(Ypjn`K
zpm9-LW^jQ?QAk0GcSv<wX;yMtTu6Lng<gS0V0>73fMQKvend=sW^8J8t!IK~m{y2S
zYC>j2fKrWJh;dSSoK1{bP-v;5pJr)gY*lP%L3~+MQFcmUk!4OztyW^BSAM=$X=RRX
zg;SApSx~rAWmrK~K|)z^rgM>Yh_RQNud{EIuYaUVS!|w5x=B(}d~~{DhF*<tYIc>4
zf0BQhZ$Z9YiEoHSv0`RXQFd{7LAZasze9#&MzX(BrdEJsv35X8h)up?M0{j;v29GM
zPhoCSVRVRTQks`uaGFnWVR~tlS6;PiVrG0?o>RF}gifq}fo+&}qFH5Wh-ZL$eoj(W
zw2xm#X=u4`a9y!!KwUz0d~BLZhOf6qzDZt0lx3i1yg{*xkGY>_erSAnu3MgMeppRO
zv{t@lMP_MavRk5kNJd;%fm5-5aI{x=O+>DHVnm5?m~O0HsB>X_UUpbyNm{shRCTO>
zta3zTR78PGenetOVNq^$XiTU}ak#fxQel2*bwqGLY-EA4cWkJ-uTFqfpi7}~YH4+1
zW<sq^jZ&0ylwweRP;OFYT#TP-QA$8ytVg1GbaK39u4|!xv39slVs^57o@Zi}S9L*R
zRa8N`Pf3)$Pp+S4Xi`;bKv;HsPECARc~+c>w_U!ekF9@EzIjrHPfbBWm|LMml6JPK
zcVL8HNqMnbxOJdbxmRv*cvXaJnNMI%Y;AmMrB_02kwI{AiDy(?npH(WMs-AJmU5U|
zS#(iNicv;XR7_D=wNa*SUUF4lOjc<^T5W+&xNB)bUTSn)Y(b=QW@VvEk#~Yhre%_0
za(0b|ubEGDfmNEOuXAx^qISM(dS-%au|tS`s9tPMrGt-Bs)b)rL|CO(VW6LTS$1??
zd}2g#d3tzVh)tk>s+qS%l#8!jm{n4QzfVGCc5Q7&c!YOSrd5V}vTu%Gj(wPVa#(yu
zZDO8AS#7L!MPNpFWuBjZj%sFTn5(Z<u5F;5zjcmbP^OPdWKE`BpiPc$szG^{k4vya
zSZ$bMqHUaJnM#yOm|Lk*qFbhGQD#X_Sa7y&PE1mETugy|wqLk?pmu3(WsH}buUS!D
zthtXxbY?)TpF_4%t#?IOmO-Ikv~#(Cw2F5^MR>JWwqk;>Urb0uZCQ|cQCXE%S$S1j
zgkecghO1Y$PhOIBl5TloMNY9|Ty08DvVN>Vthsk^hH_#;P+fsqW|4PsZe)yaLR7hB
zw4P6Nl)JBCtbT-Ya=u@2k#U7zLTzbIwrg-sO>|Iph*DfyszHHEXi08vvQtKBZcVs#
zu6CJ4kw;ltaBPvizfQJ;zeZYSt)qW@LQb4gf_+JTQemWfp@nx{rB!rkR8Cn;R7#b9
zf>EqyT5*1EaaDF&Wvo|RXq;C{d~KReX=zGwrgv_Ne{h6xY)*(}k$JqIcSLn$Ku~N+
zc}%)$igJy0v{g}UrdL2%scWQ3ih8bXR$ZD)xo&Afq={Ejg_FNsj!CMAuScFox~H#s
zWkz99WNEaims_M~gm$D&Zb(E_j7?H*O+rpxkb9<9T0xR^m0qb<b#;z?PDD*=h;wC9
zUS@b%Zf;zTPhN6JMn#oLtZ9ltL})}-iKSm+SdhP2fRbNcaYeCDjCX)ajhAmoxN=-V
zif3MIQeCM|NML9|gmXoBR(Pp>ghQ=vwpOS{x>sJhS8_#cNJLg-b$PC7s%}7Gp>2{!
za%iMhyiIgUMOC3$YJPE4bwZ*}WOk`pf=8ymw`X!*oLy3WjA~e6QeBv0q(ek>jBTz(
zylR$icx7=#u6wChVsds|kxxZrmRoRIw0>!UUtOkIbx~50zh!xGq<3O$lx0+PwxxGv
zZbE`XiA}9xe15WWf@Q5?fw!++u0v=+a#e0hW^QO~dRd5hYI?MNl6PK7cx-{TUtD@v
zm`|c{Mqa8?OhAHZsA6bzwRdH)w`z$;Rd`rxW=wTJZCSNylx=iUPPuPffoEBMoMCWY
zjdO-aVWD4cWl51)ie+g*OkuKWhINrjoKIAyS5$IjO;nakrAl&awO77NhEHgCwr-?$
zb!4zoXk1xYRA7QeW@V{<RZVtQf>E+-XmVj*sE==Cu46<_Rd%6GRZ?1NRaKIimw8Hb
zR#mA^wX=V1c2$LCd|{$WP<3fkKy-jzmSLp1S9)-2g;B6WQhZUWuTG_}uU?*BSXOvK
zx?Xmqzi&)+Zb4jjxN2N@d_Z(yv~s9XK}<}BS6YQ%OiWf#v~gy1xkj>Hcw&N;cVKEv
zfMcjvgl4izf@Y?BaBPfTg@un^Kv9HOvc8XQNMM;yfSZ?7sFk0)mqArTyj5v-YDvCn
ztd?(4a(Q(?xm9gqZC#l|plgOjN=BliPi~N1bW(z6m2aYjS3;3zVPRZ+flGx?UQwK9
zdT~->x_7cqa)rN6eqF6<jbT+}d{9DEiC3YrpG{G6j%tE-xqfzBs!F1^Z%L$DhM#X{
zVt!3>f@6}3pITg9c5HS+L3Bw;l1FfMiD_O$X?$pEm_c@OiEnaAiBVN)e!Q1qwtcQ=
zty+porEx({YI>l1WOzz!R(Xh3ly8(zWmKYlw5v}*j<t7joK~hsWOANuxQoAUfLcv;
zVNk7OV05x)uzyUhk9wSSnqrQnPh53Ux?_k&j8jrXad2v6v0HJpua2*CO?rq^plW4k
zhF`K*NK|}$b#i)jg@3X^X?lcbq<%$NzFDk(UWKnkoO(@7xna4rpJIt`o?fDJPMyDf
zMN&jYutr=;iBnE#q-$kxY++bUPC<=BuBBH>USg4DTv1p_Ty%VJbb3{Cgky<$Y-y2R
zNO71&tgC-~yj_uEnRj+gp?h(5LQQUTVrpJ#TyT|lp?-j6taG4YsasZJflgUuX?B5C
ztbLJdxl(jlk(F0zd8&6>UT}h{UqqOGh-ao>uv1Bzw_>4Dwo;*Swn;&Ww?T+ev3Ye)
zX?mVfNp5Mee^P;8o=>4gYH4_Ja;m?Zzj1LyN~M34zi(A?T2fJ7skK*3a*<zTm_c4@
ziBm*COrB3ds8^X+ZCHeViCUOlOh~kQcwLcip>tAPOni)PzIIw{rG1uOen3gFpH5nw
zUu9@Xa)7TzXl=P>Oj(>(OmdM)W=v38W?8aVx?ezfl#N$LUR+dpQFW4<k9AaLUQ}sJ
zc~+vMpJ9k$t!<iab$W$gVp4g2sk^^XNWM=-h<{#qxmto_SWIGaK}um^jCxpUiC<w#
zkwHLyj#Z^;c5aAEQhKIIwqlk|g_@sRWmJuEh-GkGmUd=hqJMB%i9?ouqLoipUP^&U
zabAc+QEH)cNl1cOwqkgOw{E3wW=e!{m1~l1jZ2PUgm#QdXlAx`MtFo?bz-1Hv|VX=
zT(y^5xrcv1VnAL=W{IC~Xtcj|td3tsrb&o<N_44Xm1bN;NO`_-uz7YxeoU!PZfLZB
zVL+i#sa~W`s9Tb9ZECf4d})$ynQ^IUfofuGsZvgDu1TpywQ{sqSfqDIYE`jCws}HM
zcut{yYGP<^cwk^rVr9NfY)n~dflEndW_59Xh>}lTxlO!pwt0Y4m~MuCzN&YocSe<)
zPkNermP)jze@#+Veq6RkX<SHXf<eA}l73`*Woo*Ye_*0VQgwc1RZ)z3LPkZFw~cpF
zSX^m*saalGl2>p|zDuBCzH4AyKw_jtLZGi@u}`{2n7W^7h)0S^uw{0scWjw*p}UV)
zW<g>?seW~!cS3b)Q9({lL3W;ZW`U1>xMFc>jY?ryf>C~8iDG$RVU1U<m!F?Uu~l(h
zu3A)1f^S8Tw_kQdWn^W7msgaUw})3=WlpqVKz?X(no@dXN@9vjO@3vGe_FYXpKFP7
zjBTu2iDE@qhGTSEfn`c=nO>z`tU-82gspc}rC&usWp09TvT=!1R$7r+L0EK3c6w20
zxLHU>rDJ$#YF4ICcxJF?Qgn^3uYr$JR#}QefO&ypURk(Tl6R7SReZL0m`RCmZcvJ5
zmQ{*UageWfSz4iEu1!W@UV4E~l2%G$X;f}rcwu06W=>{Gf_hX)ta6rfSV>rXlySaq
zQf+=lk!yZ>dTqF0dQ7}~Wm%+7d{mf9j733JXnBfDSWZb@zG8t^oJ~|sL`YR?jz&#d
zj(3D*b#O|hZ?J!sSBSrDg?mYSR&=F#NNRRaqDq!iRbq8+l~O^Wk8)Lcl3!A3W_Dsm
zdU!@fly^v3xocQvNL5vlPi(nWoQ9ueL0yVxN=S-xmPx){cv5w+uW5c}m0G23ynA_V
zMNNfvTt;+ka#EsOU_e<~c4d@%PDNa1MO<>JpL11ssz;7zv2}`GnpwVmjIEz@gnvMl
zzgKa1f_tD|rfr5xm4A|Jl|^Mjj6t<#M0~1xWnP(2Sw&J|PC`^rp-+&vzpa;jY<^i~
zoJo~#XnLVtoI{L9pl6_6MVWVHNK$EVVrE2Lg^#~VZJA#{Rk4p<nqFB!s8^s}O<`!J
zuW404Qh7;;uX4I-bYPNFcyhT~mSRAZUv{-xbX;_5L_(HUL_%tGm|K2UMQBR7UqnKF
zcy39WZ;4NGsaHy3j7Oz?je3Slgq^ouOnG=lfkUjXe{qaKWM-O8ic3~bN@_|)wY86J
zN{nxLWPGe&Za}1Rs&A#9ub;nuS#WJ`c1)N`s#$1kSZ1Y4dUBX|U`kj~XjNQAcveKH
ze{F<zgm-OBjYdLoXk@LjPi16QaA~P~epIk+ltzYrjB-J!uV#WyoK=Bgo>87}Sx}x^
zSZacGabl`>igLJ9be)&KzoLPXfwF;$fvSO;fx3Z)fu@0$fwqB;fv$m`fxdx(fuVts
zfw6&!fvJI+fw_T&fu(_!fwh5+fvtg^fxUr)!9d=lqiCpPsBEZWsA{NYsBWlXsA;HW
zsBNfYsB5TasBdUsIGFDeQ#4XCQZ`aCQZ-UDQa92t(lpXC(l*jD(lydE(l;_NGBh$W
zGBz?XGBq+YGB>g?vNW<XvNp0YvNf_ZvNv)tax`)>ayD`?ay4=@ayRlY@-*@?@;34@
z@-^}^@;3@F3N#8b3N{Kc3N;Ed3O9-{iZqHciZ+TdiZzNeiZ>$nR;e1JTBAB6MPnsn
zWn&d%Rbw?{bz==<O=B%%ZDSo{U1L3CePaV-Lt`UjV`CFzQ)4q@b7Ko*OJgfzYhxQ@
zTVp$8dt(P<M`I^rXJZ#*S7SG0cViD@Ph&4*Z(|>0Ut>RGf8zk-K;t0eVB-+uP~$M;
zaN`K$NaHBuXyX{;SmQY3c;f`)MB^mmWaAX$RO2+`bmI);Oyex$Y~vi`T;n|BeB%P+
zLgOOiV&f9yQsXk?a^ni)O5-ZyYU3K?TH`unMH3|xWfK(>RTDK6brTH}O%p8>Z4(_6
zT@yVMeG>x{LlYwtV-ph-Qxh{2a}x^_OA{*-YZDt2TN67IdlLr}M-wL#XA>6_R}(iA
zcM}g2PZKW_ZxbIAUlTtQf0F={K$9SoV3QD&P?Io|aFYm=NRud&Xp<O|Sd%!Dc#{N^
zM3W?wWRnz=RFgE5bdwB|Op`2=Y?B<5T$4PLe3Jr`LX#qsVv`b+Qj;>1a+3;^N|P#+
zYLgn1T9Y~xMN=hHWm6SXRZ}%nbyE#fO;asXZBrdnT~j?%eNzKdLsKJDV^b4TQ&Tfj
zb5jdbOH(UTYf~FjTT?qzds7EfM^h(LXHyqbS5r4rcT*2jPg5^bZ&M#rUsFF*f71Zd
zK+_=8VABxOP}4BeaMK9WNYg0OXww+eSkpMuc+&*aMAIbGWYZMWRMRxmbkhveOw%mW
zY||XmT+=+$eA5EcLenDCV$%}SQqwZia?=XaO4BOSYSS9iTGKjHMKdKcWiu5sRWmg+
zbu$e!O*1VsZ8IG+T{As1eKP|yLo*{YV>1&oQ!_I&b2AGwOEW7oYcm@&TQfT|dou?!
zM>8igXEPTwS2H&=cQX$&PcttwZ!;e=Uo$^5f3pCyK(ipTV6zajP_r<zaI*-rNV6!j
zXtNlzShF~@c(VkvM6)EbWU~~rRI@a*bh8YzOtUPrY_lA*T(dm0e6s?xLbD>XVzUyn
zQnNC%a<dAvO0z1nYO@-%TC+McMRO%{WpfpCRdY3Sb#o1KO>-@CZF3!SU2{EieRBhI
zLvtf@V{;R8Q*$$Ob8`!GOLHr8YjYcOTXQ>edvgbKM{_50XLA>GS93RWcXJPOPjfGG
zZ*w1WUvocmfAawIK=UB;VDk|3Q1dYJaPtWBNb@N3X!98JSo1jZc=H7FMDrx`Wb+jB
zRP!|Rbn^`JO!F-BZ1WuRT=P8heDebHLh~Z?V)GL7Qu8wNa`OuFO7kl7YV#WNTJt({
zMGGYhWeXJxRSPu>bqfs(O$#jxZ3`U>T?;)6eG3B%LklAdV+#`tQwuW-a|;U#OA9Lt
zYYQ6-TMIi2dkY5(M++wlXA2h#R|_`_cMA^-PYW*#Zwns_Ukg7Ae~SQ%K#L%YV2coo
zP>V2&aEl0wNQ)?oXp0z&Sc^D|c#8y!M2jSgWQ!DwREso=bc+m&Op7dwY>OO=T#G!5
ze2W5$LW?4cVv7=sQj0Q+a*GO!N{cFsYKt0+T8lahMN1`1WlI%HRZBHXbxRFPO-n6H
zZA%?XT}wSneM<vNLrWt|V@nfDQ%f^Tb4v?LOG_(DYfBqTTT44jdrJpPM@uJ5XG<4L
zS4%fbcS{dTPfIULZ%ZFbUrRqrf6D;NK+7P@V9OB8P|GmOaLWkGNXsb8Xv-MOSj#xe
zc*_LKM9U=0WXlxGRLeBWbju9OOv^0GY|9+WT+2Mme9HpMLdzn{V#^ZCQp+;Sa?1+K
zO3NzCYRekSTFW|1MJpvMWh)gcRVy_sbt?@kO)D)cZ7UrsT`N5+eJcYiLn|XIV=EIY
zQ!6tob1MrgODiiYYbzToTPr&&dn*SkM=K{QXDb&gS1UIwcPkGoPb)7gZz~@wUn@T=
zf2#niK&v3DV5<<TP^&PjaH|NbNUJETXsZ~jSgSazc&h}fM5`pLWUCabRI4<rbgK-j
zOsg!bY^xlrT&p~*e5(ShLaQRHVyhCXQmZnna;plfN~<cXYO5NnTB|xMMQbH%Wos2{
zRckeCb!!c4O=~S{ZEGECU28pSeQN`2Lu(^zV`~#@Q)@G8b88E0OKU4@Yik>8TWdRO
zdus=4M{6f*XKNR0S8F$GcWV!8Pirr0Z)+cGUu!>Wf9nA2K<gmuVCxX;Q0p-3aO()`
zNb4x;XzLj3SnD|Jc<Th~MC&B$Wa|{`RO>YBbn6W3OzSM`Z0j8BT<bjReCq=1LhB;y
zV(Sv?QtLA7a_b7~O6w}?YU>*7TI)J%MH?j>Wg8V6RU0)MbsG&EO&cv6Z5tgMT^l_c
zeH#NCLmML-V;d72QyViIa~lgAOB*X2Ya1IITN^tYdm9HEM;j*_XB!tAR~t7QcN-5I
zPa7{AZyO&QUmHIgf13cCK${?&V4Dz|P@6EDaGMC5NSi2|Xqy<DSerPTc$);9M4Kd=
zWSbP5RGT!LbejyDOq(p5Y?~aLT$?<be47HBLYpF+Vw)11QkycHa+?a9N}DR1YMUCH
zTAMl>MO!6XWm^?nRa-S%bz2QvO<OHnZCf2%U0Xd{eOm)tLt7(TV_OqjQ(H4zb6X2r
zOIs^jYg-#zTU$F@ds_!vM_VUbXImFrS6eq*cUuozPg^frZ(AQ*Ut2$0f7<}tK-(bO
zVA~MeP}?xuaN7vmNZTmeXxkXuSlc+;c-sWqMB60WWZM+mRNFM$blVKuOxrBmY}*{$
zT-!X`eA@!sLfazSV%rkiQrj}ya@z{qO4};iYTFvyTH88XMLQ)sWjhr+RXa61bvq3^
zO*<_+Z95%1T{}HHeLDj?LpvioV>=T&Q#&&|b2|$=OFJt&Ydae|TRS^Ddpid^M>{7w
zXFC@=S35U5cRLR|PdhI=Z#y45UpqfLf4cy?K)WEjV7m~zP`fa@aJvY*NV_PzXuBA@
zSi3m8c)J9<M7t!rWV;l*RJ%00bh`|@OuH<*Y`Yx0T)RBGe7gd>Lc1cnV!IN%QoAy{
za=Qw<O1mn%YP%Y{TDv+sMSCTCWqTESReLpib$bnaO?xeSZF?PiU3)!yeR~6YLwh58
zV|x>OQ+qReb9)PWOM5GOYkM1eTYEcudwU0aM|&rGXL}cWS9>>mcY6<ePkS$WZ+jnm
zUwc1$fBOLYK>Hy3VEYjJQ2Q|ZaQg`RNc$-JX!{uZSo=8pc>4tVMEfNBWcw8RRQojh
zbo&hZO#3YRZ2KJhT>CuxeES0XLi-~7V*3*NQu{Lda{CJVO8YANYWo`dTKhVCMF%AZ
zWd{`pRR=W(bq5UxO$RLpZ3i6(T?ah}eFp;vLkA-VV+RulQwK8#a|a6tO9v|lYX=(#
zTL(J_dj|&xM+YYdX9pJtR|hu-cLxs#PX{jtZwDU-Uk5)2e}@2vK!+fQV22QgP=_#w
zaEAzoNQWqgXonbwScf==c!vasM294YWQP=oREIQ&bcYOwOouFoY=<0&T!%b|e1`&u
zLWd%UVuuokQin2!a)%0sN{1?kYKIz!T8BCZMMot^Wk(f9RYx^Pbw>?HO-C(9ZATqP
zT}M4feMbXFLq{V=V@DH5Q%5sLb4LqDOGhh5YeySLTSq%bdq)RHM@J_|XGa%DS4THT
zcSjFLPe(6DZ$}?TUq?Sjf5!mFK*u1*V8;;0P{%OGaK{M8NXID0XvY}GSjRZWc*g|C
zM8_n@WXBZ8RL3;ObjJ+GOvfz8Y{wkOT*o}ee8&RELdPP<V#gB4QpYmKa>okCO2;b4
zYR4MKTE{v^MJFXEWhWIURVOtkbtercO(!iUZ6_TkT_-&!eJ2AaLnk9AV<!_QQztVg
zb0-TYOD8KQYbP5gTPHgwdnX4cM<*vIXD1gYS0^_ocP9@gPbV)YZzmroUnf5&f2RPa
zK&K$5V5bnLP^U1baHj~TNT(>LXr~ybSf@Crc&7xXM5iRDWTzCTRHrnjbf*lbOs6cT
zY^NNjT&Fyze5V4ZLZ>39Vy6<PQl~Pfa;FNXN~bEPYNr~fTBkZEMQ0^vWoH#<RcAG4
zb!QD{O=m4<ZD$>4U1vRKeP;t_LuVsrV`md*Q)e@0b7u=@OJ^%*YiAp0TW33GduIn{
zM`tHzXJ;2@S7$e8cV`c0PiHS@Z)YE8UuQpOf9C+_K<6OmVCN9$Q0Fk`aOVi;NarZ$
zXy+K`Sm!wBc;^J?MCT;uWakv;ROdA3bmt7`Oy?};Z08*3T<1LJeCGn^LgymqV&@X)
zQs*+~a_0)?O6Mx)YUdi~TIV`vMHeL(Wfv6}RTniEbr%g6O&2W}Z5JIET^BtUeHQ~4
zLl+|#V;2(_Qx`KAa~BI2OBX8_YZn_ATNgVQdlv^6M;9j-XBQV2R~I)IcNY&APZuv2
zZx<gIUl%_Yf0qE4K$jqwV3!b=P?s>5aF+;|NS7#=XqOn5SeH1Lc$Wm1M3*F&WS10|
zRF^cDbe9a5OqVQ|Y?mCDT$enTe3t^3LYE?!VwVz^QkOE9a+eC1N|!2^YL^<9T9-N(
zMOP(PWmgqfRaZ4vbyp2nO;;^fZC4#vT~|F<eOCilLsuhLV^<SbQ&%%rb5{#jOIIsb
zYgZdrTUR?*dshcnM^`6TXIB?jS64SzcUKQrPggHjZ&x2zUspd@f7bxlK-VDGVAl}W
zP}eZmaMuXeNY^OWXxA9mSl2k$c-I8iMAszOWY-keRM#}ubk_{mOxG;eY}XvuT-Q9;
zeAfckLf0bKV%HMaQr9xqa@PviO4lmaYS$XqTGu*PMK>ikWj7T!RW~&^bvF$+O*bt!
zZ8se^T{k^9eK!L)LpLKgV>c5wQ#Ug=b2ke&OE)VwYd0G=TQ@s5dp8F+M>i)oXEzr&
zS2s5|cQ+3=Pd6_&Z#N$|UpGHDf42a)K(`>bV7CyrP`5C*aJLAzNVh1rXtx-*ShqO0
zc((+%M7JcjWVaNzRJSy@bhiw*Ot&nzY_}Y@T(>;8e76F(LboEfVz&~vQnxa<a<>Y%
zO1CPvYPTA<TDLkkMRz54Wp@>KRd+Rab$1PSO?NGKZFe1aU3WcqeRl(QLw6&0V|NpG
zQ+G3Wb9W1OOLr@GYj+!WTX#Emdv^zSM|UT8XLlEOS9dpecXtnWPj@eOZ+9PeUw1!u
zfA;|QK=&Z`VD}LBQ1>wRaQ6uJNcSlBX!jWRSob*hc=rVNME4~3WcL*JRQELZboUJR
zO!qAJZ1)`ZT=zWpeD?zPLiZx~V)qjFQui|Va`y`NO7|-FYWEuVTK774MGqwpWe*h(
zRSz`}bq@^>O%E*(Z4Vs}T@O7EeGdZ<Lk}YlV-FJ#Qx7u_a}Ns-OAjj#YY!U_TMs)A
zdk+T>M-L|tXAc(-R}VK2cMlH_PY*8-Zx0_2Uk^VIe~$o<K#w4gV2==wP>(Q=aE}O&
zNRKFwXpb0=SdTc5c#i~+M2{qoWRDb&RF5=|bdL;=Oph#&Y>ym|T#r1De2)T;LXRSk
zVviD!Qjao^a*qm+N{=d!YL6O^T8}!90PisGbZ>v(3}0QpYJa5wi-3TD*np70(7=em
z=)jo3*uc2J_`rm~q`>6Bl)%)$w7`tO%)qR`?7-Z>{J?_1qQJ7is=%7S+Q7O%r6A=X
z^&pKP%^<BH?I7JCqaeE=ry%Dbmms$w_aKiT&mgZL?;zhGzaamhfS|yjprGKOkf6|@
zu%Pgu$e^g8xS;r;#Gs_0l%Uk0w4n5$jG)Y*tf1_mf}p~nqM+iSlAzL{@}P>Kw2+z*
z)lltFy-<rV-!Sj+lyKMRlxWo$)!5M3lGvKKx;W$b#Q2Q(!UWyK+{Dsk#T3mHy;Q?g
zqg2aO>r|UmmsG#hfYhMWu+*y5>eQOlx>Ut9l{ED<-8B6)gEYf5<23U$i!_@wmo&FD
z_cX7xptP{G$h4TW__V~dl(f{ew6u)0thDU3oV5J3!nC5a(zLR)^0dk{#dNiF&2+7F
zopjxFgLM0J$8@)J_jK=c-*o@<fb`(>`1F+YwDj`y^o)#*f{en9@{G!i>WsP!^-P^i
zpUm=1$E?(>lC1Kqnyk7km2CBF&1|h~t8D9R+ib^dr);-u_iUeR|LlP5!0e#xh-|eS
z^&G7n{TzcF!yKa=(;SN&s~m?M#~jxjw;azLubj}F*qpeW#GI6z^qh>G@|=pCsvN~!
zrCjCQyxizK+oGx>!(#Q4ypoc#vNDTukMiL1=!$|0#VVz$v?|RSMP(&rWn~p*Rb@40
zb!81@O=T@*ZDk#0U1dFGePsh>LuDgnV`UR%Q)M${b7c!<OJyr%Yh@c{TV*?Cdu0b@
zM`b5vXJr><S7kS4cV!P{Ph~G<Z)G24Uu8dKf8_w>K;<CiVC4|yP~|Y?aODW)NaZNy
zXk{J6Smik7c;y7;MCByqWaSj)ROK|~bma`?Oyw-)Y~>u~T;)9FeB}b=LggamV&xL$
zQspw`a^(u;O64l$YULW`T4gmQZ$%%)I>kC=U&R<@2BN_vRW^qE-$fW47(^Kw4@xmO
zFi0~rI?6LJFvv47F(@z`U{GS<YgA`o=hJ22VbEtdz+lM0Km**sV8p<vZ^6L8Ks^5U
z-<{z%a{$A?|M3jJnKKv|7!a6=A(P?%|4N4c|2rA}|DVb5|Nlw`CWZ;n^A}bzFfgoQ
zP%vK4kj$`|ftO=D0|NsB3pDIxkYm`(z<>vHFzsjXU^vL&#&MK^fdPUgDo!)}XTHkt
zpZPum1H*lW|I9BL7#I*(gyA&<0~Ggmeqvxs`Nps?{y&3(0W%{512ZEF0}G=u4;Lc?
z0~g~N20lgxCVoZ*1_4F}9GHbckdcAP_<y|u<A?t`jO+~hj0_))8UO!xX0&JUWMp9Q
zWc>d>lJP%tG9v>+G9&+oY{vips~P|Q?`Hh}e>UTP{^g7e45*leVFlxF=8cSJ47M{K
zKDnQfnc*NK0~9A5ILgQnaGa5W0fJc>PBJnuoMhZ>-dm!^aD|co{{u#AhNp}SQ2g)z
z7smhpS(yI+7h(GUUxn%ae-kEt1`DQt|J|AX{|{&S|397S|NnBP|Nq;W>KXc&7?AM4
z|8trC|6j}W|Nma5|NqZ2{r`WL>3{tjCI$xF`2YVuO#kIMnHd;R@&Esl%>Vn<m>C!-
z!}9-)ng9QHX8!*_nEC(zWaj_v`OKb{u=H8R+^t{FT;$xw%%ITD%);Hxtn*?Lv%}*V
z%nTZ{m`^y&V|IyL!ffujhPkYA8?yt;4(7=^`<Xv1KF(~xaEkdT$9ZO^ch{Ji8E!B$
zG~8qkFul)w;^8x9Wx2P^3{CHuJ&$~4j#~SV*-4X`h2a1zOF{z&i;No|%d91$EX)Ta
zS+rQ?SX{J}S=_E^v)r;ZWnthjW9ewNW>FBaV^LtRXDMKGW>HjdV_{<UWMMGyW?AD9
zz@pF=!jj|?$+AEphJ~Rko+X$mg@vUdjfIINgQZ0zhvj#5B@2r{HOrFvR+dMC-7JnO
z{VYouCb1}rOk+8qFq0*~YCa1?!6FtWhQ%z->Z@2zx^84?QrN;`;I@<HApZfD4x3{v
z0UD=RnA*;<s4Td|(xH5vg{|W@izMGe76yk$EUT1Wu%x{H$Rfk=g+=4+Zx)4x|5+X~
zv9NNtaI!KqakI`=7h#<jBE#y~sKB~;fjX-Ig9a-{s}5_Tf&nW7haoG6zB%g!4r^As
zeQvD$jNYsg-$PiLS46Tpa>cT8L?^Sdu%@vxF{HCHux7GqS>&@i1{AY0GL*0iNLH|N
zC|0uyGdHj@Ff_0#CAPA%u(Y#YaOh@b6zFATXy{{Aa+t^(&@hG7!(lor2g3|j27#HZ
z7un{sGMF!6ZHQaN%D}LSbpgW~R)HxSSS1)Xu`(oVVRc~I#yWvv2P;FvPSy~HJ**52
zdssOb_Odc??q?NXIKb+_aFCUO;UKF*z!6pffn%%;DkoT(e9o{kGMr^)WV^sBp?Q_n
zr|}jmgW?@lMvi-|ttn4fnHiq32D!XuRTOx~%EI}Pm4o3ED=))WRtAQztR0@eSQ#3A
zvobRLVVx+(#Fom=$;RNo#WtyhpUs#>gpHv`oNbb;ESngE0-HjR3Y!L#Ivd9YZ8ipH
zJvI&>Beq2jW^7uAZP^57II=P5xw0`dxUm(8`LMO*1+z6dgt1LH9K*JmC5f%ICW}o%
zF^^4#rHJhWQyH6rU?m%aR}Gs7R|A{0SqGa#XfGQ>=L9w`hDmHpGpDmDGR<Oh5SYW}
z#5A9cfn@=k3&SEd1}J9XS;{8Bu#Am?VHum4&}udYhSh9NOzYSf7}l{VNNr+sVA#yY
zz_Nvnfnf_9C&M<j&07z!NpKxuQx-kNwqW)}wioiZ*lGeEvQ;*}Wcw@dk!|jQA8g-l
zv#=+ya<ET&FU0P|B+4$pD9+AwU!FZNQ;l7TLzCTff<8MFlOa0;gCRRJgE2dklsWq<
zS37n_277h}CI@!LMrZaw4G;E)1aJ0BOabf-OhN1n3_<J+5+Ur24591{lOos|7$Vpk
zIHK4Y6r$N#S>o6kOq19d6q4Cp64Ke9dFHdvODJRa5vXE!(yC`y&}d@!SlG_KQJ{xi
zp`nkRk6|MFoa))^6I$l8FA!PGeo$it`vb?d>@4gX**$x<v-1k<W<SAmfL*BN2>Y(i
zGwcVL&a*3tTxMqoz0Q7s>o)rlyT|O!lU}kfmifTm?);sd+5Ip30wqQc4Fgt=1I(Np
zj2zq?3Jdr+7#jFFTnvOc7Pm@qFfd4Q@F~b~s46LQ*lgG3U}VtaP%tv$2<S2An8{$x
z5o_qov4FvqgK3H<2Qz~=hc{mkhtuOo4uzgrjs}J}j)@miIHt&Eb7(9s<e1}G!ErF5
zmV?cukwcihont~&FNcfEM2-&r=^P9U(>WX%W^f#tI-jGlbQy<x%Nh<Qm-QUM2exuF
zYwzLUVBE*S;IN;=Y0?o6LADbd%Q(+*FmRmbP%^s0(X#nA$6e{C91I^`a&#Sd$I-;}
zk%Nih69+@b7Y>G;9~=ymesd@?{N-qHWZ-P+Vddly=HztY<mFt>F3QQkAj%ooAj#>-
zBg@H@pul;7L79_bfhy+(0ZmR8107BV7d=h}20cy&Mtx4kCL>M;c2iCUMl()67i&&~
z3<pkD4rk6yDPEi+tbUx&1VT7PTp~CH8KO8D6k|9!<|J|+IGw?%@GzJ2kV7G-k3kvd
z7RMUSH3E&C&9gc<H_hnhY&4p}sWf9IXA8q@&P?OQoI-n6aUQs~k<<FX4$g%O_i+aE
z9O0DfI?c)O>H_D7(>FP9u-@mK;QWO1u;MFDR*!d_GG1ReFEIV!bTInE>B#VpbMAFc
zE>3NJt_?55xDM3HaRsR;b2%JR=kmUw$HlO~fNS*$3$BJP8?Kcm&Rh%)E?g%ay|@G#
ze7NLQg1Hzbg>hAT#Bnh&#BrTrNaA8^N#kNL&f?;CEZ~x6DB)sIDCKf!DCbgYsN$Nj
zpq{I3VJlZQLl>8URzKI0)~Q^Ljx)Jf*yeC4CM@7$VOYr3z_5smaluk929{-9JKWZC
z@xR>0wSajS7X!mCE(M9bTniiya0zf6;^MM6&c(=Zf{TIm6c@vavs^4J=efELUFG6p
zxXz`Zeuqnd^F9|(^Aj#6j%Qp949~a(lU{Q*2)yOuVR+BQ!SRuchv7392hTSy28M53
z4jezY1VnywxiI|Y;$~prW=Ub;J`ljc&Dg-jUB@EG-O?$>9l<8e?cgZK&2T`0d&v|v
z?xYnu+;=#Qxfvu(xfvKtxfvSGxw#lDxj7iDxF<N;akD!(aW8!0$<3(h%k7#H%>7O<
zn!A=Sg`2@6jho|l9=DiS3HJ()3U0lV4cwdzP23C;E!<6Bo!kr9dbv}wr*bnfOygz{
zo5}4FHlKS!^Ahd_#jCls7}jw!G_2=VVc5w1vtuVWllwkyCf~!{tN2fIGccUyZs@zf
zUA^NLcSz|YZV8oV+zvP2a5tRzz|F(*nVW&(Gq>Z0AKWTEf4QAl7<f#g*m<NFxOf;E
zxOoH)^7FVg2=f>*i1F}BNb|5Y%JVQWDDX@=tHC3Zpu@vhV#p(uXvQ;<!IEdj0XrTp
zCnp|$7Iz+n7B3#*S%ExE4#7N0U6DLWf0KAR8q;_h95Q$q1TuM;6?1twIP!TI4U2gc
zT*`P@*sFMib~NyGFt_k9bhh&_EbiuEVCd#yQtIOo5Sqxt;5LQFiD4R#Bf|`yhOoIj
zjzNofJ_N1gVNh7bBha>vN2F;J4~xJS9wxUPJY3Fuc}yD)@jOU4&ckryG>;?0Ssq4?
z^E?bDmv~ZhZt)xxywAh3`YBHv(@P!}r8hjx4DWat7~b);O!&mZ!0?Gj)ZrUXBhybF
zCZ^v!495R?7+4s19V}RQ75F%K4;<j(HDKW5ZDkPTWndNNRppiBz2GI!d!bQ<w?Rpr
zmxoD<mvx&VuS1e4Z>5?oZ$pwJ?<*#EUJedV-t@a6yp^pnywV(rybJDS@|w06@-jFS
z@%C_)^D<nl=3T|w$g8@jo!6nIi&sFjkJr~>GH(OJ6kZ{QX}n6kb9gf(7xDJ9uH<c)
zu!dL4YBO(2%MRYe)_uGO&K%)oQaHw|z;S|CulOSG5{0Y0Cfv7qSs3o{ii$ksWmI^~
z%h2?cH=N-WF9XMGUY3A&ye<qMc!h+%@Um9^=DpzXpO=$?k&nTFiI1U$h0lkTlh5S_
zKi@0|5k8SXNj@QNIX(slc|JxaMZN}6RX#=qbv_0T4L&ap9X^Ib`g{x=27F8oMtlke
zrhJ?;toRrhtoRxvZ25E^x$to?xbm?uxbd+txbr;_@a7X?@a0oz@aJPt2;gIw5zNOR
z5W?3~5XslX5Y5-Y6vxLPlgOv!lg7u$kj}?2F^f-uBZrU4A&<|2A)k*yrihQhrG&4U
zxsvZ-O(UP8Vk;j*OFJLagKj=1h915HE))2;9!=w8=9|r@*0_N00@D&c29BkCikhqV
zCQRGF$LO$$@6e8&e2z)`_!=1Y^RaOq<_lbQicg5~ET2x}B|e5@*Z3G%uJdi+xx?46
z=mDSRl4pDlZLjzk8ea1;dA;XzH2BQN!1RUBVb?FdaEAYUi~&si3JNUz4IS+K8&r7s
znH2c=g%}0-FEfervoJ{T3o=RbGcZW=H!#TXvpC4{H}NR(Gdxh`=P=OVXJF9a7ZlLu
z=U~v`=U~#~U(#sIzrewapU=sfpMk}O-{F8ge<On<KZA!e|5sgK{)zk{{OmWP`8C-R
z_-hza`57J3`Q2P|`Td%T`56wB@^c83^RpUM^P9bG<!|8W;CD#v<>#I}g<pVU8b1Tu
z41R?dbNRVWEaGoUSjK;fVHLlL!#aK@z0LfLLfiORChX+*kle@5z(5!~upZ=R5IDqd
z$Z(XO!RG}3Ql_)~3Za+y1zfK33ozf{XHmYxuN3l--=yIwKQq@$enz1;{MkaE`4=*N
z=Vws(!SAu)55EV?e|`s7W&wr<7J=Re+yWn@gajNkL<Q8^qy@xS<OL)Glm!@k)C7ze
zGzEkdbp@WV8VfM+nh9`pSqU&W*$6Or*a;XjI0+<hxC$`0dkZkO`U^0a1PO35h6-pr
zi575Gh!<dJOcYq5nl2y_lPj>mv{-=UMuh;AOpU+;rUrq949x-zOf3Qd2Ra1Y9D4;A
zGA0PHESoBj@M(@f*Y2eP3=B&Jww+ij@Q7if08_#i0XwE$0u2ni1sFQ_2^29O5ol~X
zDZs{XT7ZG!v_J>PIROT@ivkXgR|Hu2ZU`_a+!Rm}yC>iw@KAuE>xqE4(klUpk`Dq5
z3?Bp-ggyx{DSj1TVEQJ|!0|)CYsNnT1r`QD1_lN}K_M1FCI(hPmYH0Fp<051Of15J
z3<08o0s`WK3=HCevs~o_wKk{-GAvLN<Z{vy<Y3Yf<WM&hWMD89oX}t*D8ykd=+JH>
z$jD+R$n?lrP{F`W(16WLu%X9K@CZwg-~pCUK?a2|L57BKK?a8iLBkvIf(;A_f(%TF
zf(#<bf*cGff)Y&Wf(#7lf(;y*f&yK+f&vQpf(#A?g1n3+f()YNf(#5$>`)=NprKmO
zfw5LFfU!Z4MWIQMp`lrjg`q`|gQZPSfT3NGfuUWHaYC0Mi&vkZ0z<zbL&F3?9)?MR
zP8?GO9Svp*_Grx)<l|f-*m_{4Ae-ho!6Ocv1Q|Fs3koo75oBxFE@-f6uOJiSenAVx
zBZ3VKM+JGAPYEipoDp>3JTEB3a8Zz<;gX;L%N0SEhHHYSI_?O1Fx(SlVtXjaqVhzL
zk>RNz3&S%(4u<D~0*o&Oc|$)4o>=)^P($UnU=R<35Ca2)kf8^wkZ%%?kUo=;&;kQ7
zAq__<p=wqoA=XP8LQ_`g3AsoZ2_4F@6guQ;FC^~ZB6LyDM~G1}K!}4WNQmiBm=J?#
zq>#ge7@>&@2||o4NkYCX=|T()gmFVdrjV0po{$1dfe;f<u@D1WsSt}ug%CqRl~DWq
z7NMIv`-JARP7~q^nJpBnvPek4Vwune)ipvM4C{m#&~O09MxmJuTZI%@whJ*Z?GWN%
z+$F@}vRBAq#z7$ljl)7*jmL#J7)}T=w44%RbT}i#z;aedk>R}16!xn^3{BUC7#VH|
z1u)zaYEro;#K3S*h(YF|5Cg+QAx4{LLM#n0gcvwp3Nd)T5z=6KFJ$xMhtPqxzd{_R
znS~9KID{D%a0#<8a0@fQumrEL$3h`tb_P*l6$c4nAqFX72OT-#RwZTO{FS=Go1d8r
z^E=oGs|7j<x8-;WTNechb3cj{Ua~b&cz$b^uo6?Quup5Turg!0FcV9qFoQ#tFq2}f
zu!2IpFbhM2unJSNaDzgtFbhMQFhgCBFbhMkFpJnk;RTFSgd4PG2(t*x5@xtDPuPfI
zp>X4`mBP)2>xDa5HVG>*Y!+rv*dpBSuv3_UVW+S_%N}7xrv1VV9*2ZW7>)@uFdP%s
zWH>48C3sGlf#IC+38qWJ3=^&hvoKs07GSw9%piDESb*V{Fyqnt!r>=h2s1Fe5N6PQ
zBP_u2PME>ry|6;SCt(JG&%yyL--J61ehD)&{1)b5_#@2Z@K0EXfkDK9fl)+&fk}jc
zky%86gH=R<kzGW9fkT9igIk1wfm?)O0j~%H1Npdtflq|9OISpXQ9{H*QC5UWLP4Z~
zMM<PUKuv^=K|_QAh6OZ5m|S#3SUU7YL@i837=Kuc$gtRpyi{}(NyzaLF^~=t>0k{L
zY2t_!`COGEk|32S!qc8Fa+Ir7<RC+Zh*waZNCQK?2&+=FhzMhwh*Ln92%A!$$OM*&
zA`C00h%hir5n<GvA;Q2gL&Sk&mI#Ny91#YFIU*h%3q<loSBmsAt`}iY*dW5ly+y>K
zV26l+>mHE>9S1}h7?5z|ArU5q!y*$Hj*2kMI3dFJ;H-#1!9@`cv8y7SjyFXZ8E=a)
zFx(bVuzDaejp2z10}^&ndM=_+_(nvE>4OLp!$%SIML$Fs6n=^@HT)J~I{06Nfr&ws
zfrC->AOnl2rUHlPf*xK`6*fUp1_mU|C?v|jC@jjrAS^1uC?=}lAR)@Y0L3hlq75w4
zqD%s^qIM0+q5>?cq6`gcq6`dbq6`k|qD&2%q6{9|q6`e$q6|zrq7DqYq5_Qiq6`fB
zq6`WKqN)tWq6!QqqAVO{q76(Iq74j|q6`G^0wx>L2nKsm1||nl1`bD22S#U61`Zcd
z1_l>VCIvT9W&ux876va-1{iMg5fxzY6%}Cc6K!Dd7iD1Z7iD1&7G+=v7G-b=6=h(+
z#0rZdMHv_(MSB*+i7GI}iyC+&i*h8Si3&yLh%zwdiV85~i8eSEigGX%i83-2i!yMO
zh%)$;i?TFSiZ+SViZ(FRi83hEiz*6CzyX>>C$o2o{<oVZD!5^`D6{YaQAUl$q5^`;
zL>U;CiB4u+BU&xDO;m8hZc*mxheR2zPlyT$o)KNZa87jc)N7*I26sgRH#`<)5_~4g
zX!J_dK=7UD2BuG<f{b59xeR`aR_<UDV-sc<V>I9r6JX#LYhd6J6J`_;;}#GR6J!t*
zW0))@#;mO%CcvO5#=xK`HknmjEW5-&EO3LFn6j{q7^Ah5n1O(+7y|<o7kG#XZtxXj
z77h|)&<qt55R4FOP>dF1WQY-CFo+Wq-H;;2$DAp~Xpkdjz>p`#z?3g0$XFz%EKnxK
zz)&W}AY3WdnB5>IAkZYnz}zAx%-A6&EYKq+XfQ#HfpMZ31H(iygV5<>JCx>%F)+*(
zV=$O6Cb(gV7}NAsV(h=Sh*=5l65GJMUrd<su$UslQ85M(mOd%QYkg77Lhzc{2Ikvh
z!i@LDj0K;HF)}<8V-S8R#;W~ZOh)jF7z5*1F$RXOVhjS`!~{3|7Gn_pC&sA7ByJ$d
zF1~?@Tbz-BM_fRFPn>~)Pn<zeK%9|TSlmEBOx%D;Qe2o_UOZbwO<a&cL!3caTbxzf
zP`u=)wfK&H7ja=m4{>V&KXC>I1TMH4CceQdMqHRNLEKs(O<a&6L!4PKN1TBnN8BK?
zNPMGKrMMttjW~lqtvCZitvI7#gE%91i?{$ot2hHgtGF;@r?|F2pEv_UpEx7q1aSt1
ziQ)o+Q^XfAO&1qroF%SkFi$*k!%}f3#^vG+49mq0B-e;<VBaJz%(zY5+G3x$;D*EE
z%nV1x8IZ6r?`d&si_7AI8*Yd*Gu{?w5V#}GzyQI*j1R;W1RjYCFgzA#V0<FZ!0<#|
zfbp3)0|OKrybu?Zcq7il@K&6G;jOp;!#i;XhIitEj33378NP@!fbirW;*8vX#03QZ
ziyJU7N(eHtNN5{yNeFJ>mpCpgF2QImD`CK>Ako02B*DO-B*9>yA|bdzQ=(Z|UxHEF
zM8ZJOLSh56t%M+hy#$wmvxMLV4+$ngZwUqk9|;Bq9|;CVUkO3R010h@Pzk{WkrGV8
zu@a2hNfH7K$r22VDH4nfsS*qZ=@NnyvL%>=^CcLyOC$^gD<n3g)k`oi)JrfJG)f3=
zXp>;N+#|uBJw?JwaF)ad_5~8mjEf}{7?wydfUxj#3D)d&5*C7+B{neckPv3vBe6r^
zpacWMK?w%wqY|vzrzHd!&q^>bpO;`@I4{8<a6v+F!4(N6!Rr!?T(=|&Dj!K~SoA_d
zknyzym%uv-28MSM41ymd7#TiF2nc?Wn85H&LXh#N1Si992?h|J{9l4~H@oDgpF)xw
zl*A>48Kotyjg%!B6;ve|7$DdnQd@EZn}OtHMpH>^0~<-f1rCzRg07Mb46c#|f?kpv
znEWIK83H5)1cD?P7=k1jg~KEnnIk0y7^5W_7@{R7vnNSvi)Bg*Fl0$GGUiA!Fyu%Y
z2o^{(FcnG)GL}ec8dOROZm5%FV1QtQz-Gw}e4UcQtbLN!7SkjJH_Vn~W}Yv}z_>t?
zfdPUiGcJ|16j&w6z_3b^iFvIggY_m!1_lTgX51#J%&=3E0SOB*?2=?)*d@uxuv=2W
zV4tMmghP@{42LBd(6PV~Nd|@^l1zffB^jAdNir}%urT8}N$m|+B`Y`Fl~fjfEXip7
zQqn;1t>gx#kCK9nUnCVj{F1!6fl10)m_v%unor6=P)KS6v$&KXqm-0Fft*y}1{EnK
zVNEGU1#Kw-K|QGnjD}Kzj3!dt29{ES8|<W*COb<puJ)7?WAKq;VDyy|W(<^4GzgUv
z+z=(j#2hQdsF^5bV3;PgfhkLhfgwwZ!5~LUa!0Y0lXRsNqj8;-g<!Lk0du<)14Fx%
z0z-!s0|*OuOR*YHloAk}BE`Ufz>Ex2r5Gm9lwwt$CuP96P>O+ZkrX4tVkrTErBZ?h
zE2S71S4lB2tdcSiTqk9~v{8zYVUv`Az!oV6hAmPIg4?7R7@(MGyOeP2UMXgQ15$zl
zhou;Vk4Z6VpO!Kxzbv&Q`L>iW<9#V>gJ)6`H@uNrB=}K^k?FIPLG^E`58*7*!i*f!
z+6Da57e9zgKNggeW|UTzHYn7T-pOSkEzD>lZEavJ%{akMnn~D6no-+b+Cb1-dIOWc
zv@m<9w6;OCw4gz}G_!DuG^28cw1Hrb^aiE^X<^0^>D30+(t=wWrT+<bNi%ZxN*feT
zmfqn$TlzBVBI#;_RnmeR)=M)7Z<S_L+#xL>xLcZmVYjp}>jCL(gX7YI8_q~G37(f`
zG`=D&z;IQXf#IsOFzYSp*A|bZ1r|J$W@3CH&0z3KT0rov^aiGn(!va1q!kRlOBZhV
zC(XpjAj2TQC?mkYB*VbKBqPkoCc`bjB_k-nE5jfxAj7CFD#O44!IN2~WwOmwWTtM=
zmSGk)kYTholM!IFkYQl5lwn}7lwmNimJ!_GAj8b)EW@DSA|t@yD#O6&Cd0tsCc|Lh
zAtSiKSB8r@P=-+;SVn*$M23MeR7Q|7LWY?kN``?UN`^@|PKHrANk)JnS%!f*Rfd5f
zRfa(zO@@IXO@@InU50@nT}FT*LuLX~whRM9whV(ou8g2Tp-fwFg$!eLy^Miiv&;tO
z4w*p49vMZ3J{blO7M>`>XgyuVKybFq2B!Hkf(#2~1Oyh#FfuHWVG>>;!>GMhMnG_b
z3<J|f83u-pG7JKnWCS;CmtkVuDZ{|HOU6KOpUeiPLo$pEhh+o=j><4H9Ft)XJR!rV
zeO5+5@Pdp0(<K>U#%nU#47X$$KzQ;!8D{M#G6sS#WHvCpkr8J6AY*OtU50_-y9^V<
z4;coAA2J4#e`Pi>Gsy}wvdL--aLWpA5RheN6qaRR5SBF%6qnt=BrPk<C@-rhpd`z{
zpd`!0s3ObApeifCpeD<}pe8HKs3of{pf4-PU?|JPXe`U1U?OWEXd%0S$wpR?(O#C(
zz)4onz)hBk!CjVt!Clrs&|7u`lfSGmbBL_9LA0#kh6Gt=#$;Irg%nu^1_%~r&6Kq^
zD3BH0P%6tLSRu<GP$?_GSS`!IP%SIWSTCzB(kjcy&?d{k*e=V!&@L;$*eTn<)Gf=%
z&?C!W&?hUnVX`a}<5XD&foZY=4AW&97^ce#GtQP(7ML$9D6mMDY4UPeR_-;j0)p#h
z4H!1c3Nvn%)h^g08@S<+tg`S4Sw`z~vIYznWEo)C;F7H1hU>D-!gpjDwI9j~2tJWD
zV16OX$oNW@%ix`?;D*n#OpIS;85F+BGB7}}Aj1z?27#Zlf(!o2GE8QaW7TGt6JX$w
zV_@QxV_@KvV-Vny6P&;&#~>&m$EYbHCm<*;w}C-Qjsb)XWaI=lD9SMjtI8>AYs(o3
z>dS3lHj!gwFqKnaFq2~dVPQ)-R&9GZ13_oG4NUHG!i?T>)&hZYf(jvW48q}ZirTSq
zMuJIl4NNI=!VKwh8V1>Nf(!EHm;{UD7`aO23<N9XCNb5@2{JawDH^oM2{N?FF$s6c
zF>3eA83<06o4_<p?lSXSIc=fEa)JiS<(Pz5%Q0%>X#P&vAou_O0lEMGFUbA>|3L2l
z{||Ei|1-${|1Ti_|G$F#|NjQ^|NlG4|NkE#|Nno2{Qv(2^8f!g$p8O8LH_^$1@iy@
zZ;=1bkIQV3_#XLx|4+;R|9@Nl|NqzW|NsA%|Noy`;eWl90s{knoX-#nzH6l!d|8So
z69dC>*FT`uK8>{k@t`|SRJvUS4!&UN6=?;D?l|GgCeX{n)am=@r6MB(19bgMW39k{
zc?O0u^~PF(d^HA!aye98FWlg|KucC8fYj?l)!#S9RNvtOSHGKqfdQ=E7pi{#d`$Hm
zc5wCGF!ifp>aSx_Zw*ubIu5ix1mvC{Q1$%3Fx8(hf~(hqssG2oP^Q>eEAak5<l+|O
zP+DOKQ{P<shk?K4E%*|eKm6MRn9@2!e|5VGG(X_)bp67=-St<u@0ZIzIuA8JVr;#{
z-*T9Nfnf(DNV)Hq%MW@3{--I1{sJje4Gm>r;NKqltMSpQRsa8YUQ9dqlCkp;<0+7V
zU<Jm;Fa>AMKou~dDB$OZDfsXKs(=Mq!4|OjX$N0%bRJ~9nAYk0tK0Pt|8@b8>5SlO
zZaR3`1o*eJ2&8qoeu7*@^9iK9L!jH0$Du3qQwQ{38h*nAuel)?(y)NS>*QfjD#eZe
z{%2%jVdvl!6cQE{6PJ*bl9rK``-=?z%PS}<DgXVeqN=8@q51c(mbQ+rp8nsz28Kq)
zfB%B?GqbR=v2${9^YHTV3kd!d5&@ZnWDxUTR<^%?q4IzK{uMzo{yzgF6Iee7+yEhA
z(0w{^3{mj^KN~wp$^ZWlTmJtS5*88t{~uHTe?gE8#4rE<gY%e6Fw%ua&HQcmAlDUL
z=5N2k$iM)}fQK0w7`l;eD{?5~XsG>HS0?wGp`rF)1Ap6eu%>_i%6MM(Ao3soHrM~1
zhYmjC09{$sd6DyAr|*w$*B=L8aCIJTek|V^`vuHn1tl~2&d?9tzCW5D%6Iy{*|DO8
zO`tpU3;#YArcT!vJ5GSPA0XT(J6?dfZy?+U&9yHW_<Kabj(x(w-@^@NJz(JPVFa^Y
zFqBp|*FIq=HQLbu(b&bp)Zu!+q4xgY5*bi>*%o@gcb0)614E|-_yVJsj~N&kddnDI
z+cnodU?{cN;Q`k70ZE@qL+$<lC2}y`U0~fD5Zy~bc^#C#UN$g*LhuPgsRh^|gB==R
zgT5dcBm*``3}z6rGhWBPcItNJ>Gpl$*?H>VBPK=&(d+fU^AvOFlg`V%Ja<8*pXSA0
zkzNp^+xJ1^L54L9481afP_Mj}HazfJ99kYil0K*5f!D0y`<S|8ci_zejvbCYE-j7|
z+*;gQ9H%(WaGc}S;@#rY;@jfa;@=X`;<&(ZiQ|fp7RNP?8yvSd?r_}Wc);<9;|a$z
zju#SJ8e0~&9Bg^m;@Fzl+St0V^<eA6R>!u)w#K%FZ3o*PwmG&Zwl}sfY{yLEBH%<1
z$rF(D3d%4Tc|jPQm%zEQ^ILnOL>n|cL(*(BBLhQYtpF%u%G?@j1(FRJ7|LzCT?JUr
zpM%_FrBMzlHozBN{R4&n_RxRG#l}BqvGLNCk%8f*0mQifs~H&h+ms=k#n%}a_}j%G
znS+%f<p2Lp*Eik1Z#sSNbcfzK_=;(#s^=t?&I{ikVu>r)JDL|dT|acYzUe%4@D<Z>
z*E=A^-L7}OKk5vHnZkReoJ{~E_ORRcj^@SA(+6KOGT!REc<?0)a+2tV81@BfH<B)}
z#KD6v85vJ?UO4!I1>`{2H=V9OcJzTv4*k)^!o;JH#=q}E=Y@k0Sa&T1iTZv?<KHJD
z*m;oiV&@5v=r*wE2e@cjr!T$`do9+x4U`@Y54`4qq&cMY)>{Ut+cmP7x?KeVdR_ko
zbh~l{ys-cG|9|rlfzAV+u0NV<e=zX3fD$*j<bW0-{~<-lmu}ZDpd#c@^CNk1hUyYw
z>InS|7KIcg;QR^}{nYLHrTKyUu8a~kfi4z-4%d%hW&F)Q7)w}R1h_IWG}M0nTT<3g
z`{{2<K|}4wza?4St~{NtZyIVp|1S~lc74OYE%b9QG=Dd{zF}#o{REfzgevh7F7Xjr
zqTBUNcPNkMh0a5r7Z3hq>OAq93m!fUCl7ai1E*UR<Z_syM!DNnBmfjZ-L5>40P36i
z6C6N?IxoB|V`5<F{MJzWe*u5nS@6Aa|Nrr~gKB9|;;-idhx*F^CI-;Wb6?8CkPGhx
zWfl#!|NfO5b-Dg$Y3OkM)8+fG;b23D@82w@Ue`YXa0@G^{DND^%EZ9%n%(fg%Rh_^
z46kD$?ngD%5p1e8C?{?6{ogy0`#-2QXFSOWO16(#G%xpxNb_&={ntA){yqakFOP61
zw7gsiGLoyejKT20%eml+<bPjj71$%Z5RbHj>Xb5+DriAjU_<S{`{mx<t|A_wfO0@M
zTqhdha9C0*1v%UqTp9deEa7|+;mpJUDxV?6wHC;FZV=z_z)M+({r&u{{9yGWjIh9D
zhGcX2jeQIF+n#_!{@*|T_FLeBUWBP0lHOllV}QiZzc1wlpk~zpCeTHH-y3SbFDQ#_
zsQv!0Jh;pCA2js8V-0;_(cj?ENAW}**q$FuC9E$dJ25frU<R$U&Ou5~39mt6(Tr@L
zHP}8=NWA>R886>^XL3J=#S7S6k=HDS2VV2N<}f_)ngbF(uNk^yZ-B4xi*@u_2Tr#p
z!5Ar3U@|17!kk{h)gAhy^TNv_CI$wyTz~aGYE+fjG}nT?x5beO-1vY6zZny#3BuDA
z`mf<o1FU8DAIyeCqbSI5Mo^A{7by!O(G0h1sQt%KYtdW_&i;XDR$K<hFwZfDK1jO}
zUIFX^CBG6ibhm3pp~g^&KiKV@FMc>c(pPh>2oucxWiZ40p@xH<-tEc*imOnlM?k^;
z(g$Q4xcmgQ|L=q98&gPq6aE}j-)KNMs~>|npn4yiQ=nNMlxjhB9D@R+GU9cq1yvw#
zzCQ#N|7;zu-@8Kv8V`Y`L*Fa}$#%NF=yrYcJ@rNB#m-X)U$J#wM9s6^u5UCibhv)&
zcID{`{oZisD=hTCH5^(9t0Si~FfhFA1E)?zmT3ZY7+eKdLu7C`<{Q{CU}@4E^S#@Z
z=NJPtD8Iqn1P;pY5LbbM5}bY+x?@kAJUjuMRu#ff3fWpdPzhS5*HHWaei_qiHH?J(
zI1G}2Kt=9kP%EI1k%6Jh^?!%!KTx~3jIW{g-~2M!*KCmT5L6)Xx1ENR3a`poUmidU
z5PxtYfZY1|x1sj0J?Q?>zjb92u=_**GVu4df%X6WQ^xeV4rF3E2dJp1f6X=lMB8_`
z{%NTF%TUAK<@%T9z-v|zwZFslH~+TSKfN;24Yj{x%h-E^l{zlGX6+4D?6}b3`U50b
z&fewvn?(_%;Wx|S4%eTc(*6gc(CqF*_;op?{rhq@*eU<s^S4ceuzvElx5NCz4lbKt
z*THH5h=;fvYX8=iiN0p;En@(=vo@-s_V1rEme)a@-@rvs>A%Kf0-&nl6XPYuPmr5U
zKSCR@y_*;wfU2y&3^m-nVF&oP`Tk`*^_sIcY(IqA3GK)s)t|koH=^TC9-aU%j|{?s
zvrvnHnV}G$!HXkHXaNvl%f!&-`me(kR4_Bt3V@4enTFc$_sdvbi-6tR75cqH0NnF^
z*~y4edWqjgHJQI<H8^y@CD<n$)DjG|y98nzI0b!csQs=`R@YGby`;RNq4t|XSy4mn
zx4QBi{%x+`djsxwUO4!JvBUK%|F+m~&4=%I-r(OB`n}ide&;E0pS*;*`9NHU>z8g<
zo`%}5a^)Odp<f#gHNIv8(+44Ww4wHkT{&l0=$D2=4zJlKfEkXkEW48d+(7;hE@4(c
zIFJ$s6z$+bg%2FXFZ)5sp+pT-|FVKh4%au`yjL2L3Kn*dOOOi|kStok!VWE1&K-Ql
zqIs=XWGkqN2rXQ`f(w@~4TnC!9RAe~>LmxLmtgLOWa{436X0ma-FcrdVM2mRqDqoV
zvPz0ds!Ezlx=Myhrb?Ddwn~mlu1cOtKKvHL1jR(fB*kRK6vb4<G{tnq48=^vzyCdr
zMU0h<eT^lI)s2~r&5Q$$!;N{3)r^&mwT-=ut&Qgx&o!QB+-KZxe8hO6@!$Wbu-aJG
zK;A%1@vO0;;u52!M$3$r8?6AJDrIR@XIyJsV;rQEsHCl=rzEH(rL<H@K}lX|zmlnv
zrjnKtY=2BwolK|4<c>*qT2A`!E-*|xk@0iV?=;tV4ZnwefBYEynf)#O!~7@tclpoq
zpW=Vk-yuLL;J?3IfLlO8fK$MffG+_z0=xoK0_O(q3w#qO8Z;+pS<r!?+d&M$?7=F*
zMZuGUHwE7f=KD1#q$^})$p4VG(8%!A@HOEl!jFgZ{}T8$FJe;!cVuv6bYyH~a^#Z8
zU6EnY2cq>$Z$!U|mWx>yvn%FnjCyQvtl%%F*xcA1u{&cg#45&{#HYt^kG~fmo6wrj
zm2fZNYJx)Irv$-7^F)Kh8HvJ4%aXn(C#1|xIhW#>%8(|SW}U{Frk5s{rjnML7M>QF
zCiJT~ZD!hnv`uOI(|)D#rEC67OW&OylyM-PF~cR}e1`C^j7*VVGcq4#8f0Z>xn&h+
z)nz@(dXjZ5+dd~Ir!6Nx=T;6&ZhLNi?zG%Bx#x3#<bKNilWUn5lc%0%lea&wBY$iD
z*L>Cj_5zK9)`Haq{DmxqF@<i0?uDYi4i^3^+*q`)NTpcpS9$T?;*-VKiXRtWDrPVF
zTC7&0Rias<SCUlHSu($bu{6K5sccT!yt3J4%gV%mxs|UEQmpW+NU5l*FsPLHCHYJ0
z*OW@>U$ZMORz0th`SrSLUbXBmkJ^~p?X?SPuhj<Cxz{hOm;1%ooYY+3e7yNvvq#I8
zmf+UN*6ddKUmIE#ekuN9@A%pw)MegP*|ofDU)TLErC;B=g1hUxKlFU*5$Y}LRsMCp
zPvw{Duk;D`CaC=qov1$X*2L=*?@fF=@!iBH6Q53Gn<OxaYm(I@he<Y*{3b<C3Y=s)
zDSguNN#&C&COw~YebUWI7bdCyx;p8>q|1|3Co4|=JxSx2+~oh0WG6FCE|?rXdCBBs
zlkZLbG1+j6>lBYElcwJJsrhT}wDr@Br&~{Vp6)x{e|q5b(COhbQfFxW(*C7BQ|H&b
znSQfw&bl+Jbav6~{@EL6@1D&tr(kaOT-{%i^DfQ<<&Xl!Lh${+C5olsdwxOp{XY8t
z<Ujj=rvK=f8Jk*cc@?JL&`3;CQPEUsG~bNoo8gpiz-?CpaN89!e$&O!;rg}9^=pSK
z=ob3+619ff|8GEJvj5+eNrA>>|NrD~%Y$@f|CDjOOa^r+%E0|8{yr~gBNSoOmoC>Y
zkS48t88>)fR|?vG`^UiF3mV^QsQve+jP)gGXqA6k=s*5#u^@}@m&x^Z+k@J2Cm0Vf
zp6EOVs@c!=vVd#$&V#RIdb{g!%7VLMyuFV5885u%hP0o19S<;G=yXNgYwxeXz)-H)
zSo`BJXwFBX+w}+QjNkwN_nI*5c+m_Ryfa}->n#2DIvk?EvG&JpP3Zmh#}y&-A3s<(
z+=u8`(SoEywYNl#p|SQyyf#dk$~CC6c7!sN`|V4=bsB)Xny;my<Ee&N?ze|EOhD#G
z{)+nL^~?L0&oAF!e!u*G1^f#974$3km%}f|UrxWAf4Tf}{pI${{g=lt&tFs8r?$^%
zpWZ&ZeNOwN_Q~zhzb3R#Y@gOXv)!THvE8ZNx!tARwcV}Vz1^eTv)!xRyWOYVx81MZ
zzdfKmusx_fxV@phu|48fcY9BJYkOOJdwWNFXM1XUW_v<=a(iNXc6(NPN_$RwT6<o5
ze0y$tQhR!PMtfa*e|ukhZ+lUDaeIDyL3?3)X?sa~b9=_G%wJi*vVZ0L%Ker1tKe7u
zucBXtzY>2H|0?@c{;Tv?$*-zk6~8KfRsX8}Rr9OvSHrKyUroQ7f3^H-{nhrX{CE4W
zj$fU>x_)*4>iO0CtM6C;uSvfq{+j%2%CD)vru~}!YsRlxzh?fL`)l5>`M(zYTKH?x
zuf@NX{95{J*{|ilR{mP`YxS=+zt;X*_iO#HO}{q$+Wc$FudTnf{o4L($FKBXJAdu^
zwfoneUweP;`*q;g{$GcF9sYIj*U?``ejWRD{MU(JCx4y#b^6ztUuS=v`*rcx`CpfR
zUHNtCSMsk5zpnkd{_E<mo4;=Ty8Y|Uue-nQ{Yv|F|JTD`kA6M*_4L=XUypyK{CfWD
z<*(Pj-u!y|>;12Hzdro>`0LZJ&%eI>`ugkJuOGj@|N8ms*RMane*bd#?fBd2x65zm
z->$zse!Knl{O$hR>$mrBpWnW}{eJuZ4)`7TJLq@PuaMutzr%iq{|@~f`8(=&^zWG8
zvA^SgC;U$Qo$@>Bck=JF->JXTe`o&A_?`7T`*+Uo+~0Y>SNzKVUGTg3cj51%-zC4x
zepmdi{9X0C`ghIm#^24qTYk6xZvWl!yX$xN@7~`%zx#go|Bm@J;rGPflYdY7J@xmr
z-_w83_&xJ?!mnAsXaAn_d*1JbzZd<E{k8b_lHW^zFZ;dx_ln=Eey{$$=J(p)>wd5Q
zz2Wz!-&=og`@Q4$&fmL#@A|#x_x|4pe((Lg@AtvqhkqaXed_m--^YF*{eArR$=@e_
zpZ<OJ_qpHkzs~%=^!wWHE59%NzWDp<@AJP?f8G3j=l8wecYojhedG7_-*LYl{J#JD
z;qOPkAOC*x`|0mzzn}kp@%#1fH^1Nhe)s$R?+?E}{{Hm)^Y1UezyAL5``7Q^zyJJp
z_~Z1)@sIN#mp`t5-2Qm{asT7>$NSHNUoU@8_%-|2oL?J%-T3w5*Q;L<zvF(F{;vI9
z_q*YD)9<$5oxdmjp8I?L?*+eC{@(a|^Y1OcxBtHU`_}JQzrX$d{`==|&p+Y6!hVJP
z3jGDmxV?MSL7fi>c3@y+U}9imU_iqEnRyugGm9}WFc8K}Es_k3esT;743P6ASQr!-
zm>3ip7?7|6gAxNn1A6;LnSp@;JO2OQn1P?coPhy^7oh8d@huq`7!a6^$%cV}0XzP{
z=*YmpfQdO2oEZcdT^Y`BcriF|_%JZ2`7<;z1Trvya78Es!+~%HhJq*tCWdGR28L(`
z0R>1&+q)kWcCic$3{cD%$H2fqJZ55uXJ8OWVBlm(Vqkz_rep>NhGYf@h7<+{7-mUj
z5Me=_cfp{P#lXM-#SPgE3=G)}3=TOAEDX5}3=Fvpt_%eX3{cF-P{_c*P{<&_P{hE1
zj2Vj=7#NBf1Q<#f7|=0GDFXvTDT4q*83O|hE0i-ZFqAVeI8-n&FhH?DB?AKk1S>F9
zF)-l60@Vx-4Ydpm47Ci540Q|)9Q6zg3=rJN&<N^yGYBw%#>!AJ3qvz#FoA)Cp@o5g
zp@o5kp_PFFgcU#|L_}hib_NE44h9CMPSA)nDsJdvU|_(H9T;F~4I2$w)PMyu^)M(f
zfCeU!umEUmu#cgEaRLJa1BuuHH25@;frVib0|Pqdn9RVyfQmUZrZI3ZOlM#~!U7C4
z7#LX4{V<b(fdLacFwA0Lz=0VVW-~A_&S78>n9IPx0L2dT7#JAvV+V%$3=Av_7#J83
zSb<?70|OK{Ff3wVU|7V!!myZugJB5+g92z084WXohUJzsFv8DwS;4@-0KrTQD;WeB
zRxv0rfCiveGc<r^fzfaS!&(Lg5O!F{z`%e9E39W=V1Qr+mW>Py45(PaVKV~*!)68+
zhAj*X3|knO7`8GnGHhdLWY_^(C4z|=K_gALF$cpg1_lDyfdRDOhPqgRVGjcX4$O#r
zCXT{B1_lNwb^sN8c(4O#$d`D`$aIK7!QlvlfWt8cCXN#f3=Ah28kkNoC@`F6;9xkz
zzyQKbXBik7&M~kwTwq{eK*Bti7#JKbGcYh<Vh4sR3=HU)<0=Cq188OnfteVtGcX`w
z0frk4EDSdp7;xdn+YAg0L}11{3=9lV%m|vuMa3)(_ZS$^FeAf#1_#jiF9>ryWZ-ZB
zEyKW$MHrqkFp!BI7@jdOV8ad185kIzGcX9eU|?u~oM+^~@QQ%}9kYNIi$Sme!y5($
zY`6imw(2cI1H(H82Zr|y3<4h*7#Kb<Ff@E*U|@h?7QrtJ3=9z5!0?rULFhXJ1H*R)
z27w<83=CLs!%qeV1`;vjF9rq%2v%VD&A@<!6&U_7EMWM@zyQLG{}~t<FtGvy18CJ3
zBLfE`BLfE$BLf2}7HD8$WMDwx0}O183<B(o3=G&Y69We$0}MNGGBPj_kC_}m-B0XT
zfPsgR0Sz}W@G>$WV+B6&SyL_yf{YvtLW~Lw!i)_JB8&_SB8(1h5{wKC2+YDD$;bf0
zOj3*t4bqGZ4A?OfgA5}B2seNxj*)PK93uk*<(P#*o{=F!iP3=pwB&>^c3@CpWFP}G
zF{m;!fUtuaBLjmPqX2_CBLfR)rjdBe$e_u{fCUS1XfrY}P!BUP=rA^L=rJ-d5Q!bo
z>wOqspOFD{{ueT4G+<;9Fl1z4K*fv<MvM&%#*7RM#*7XOCX5VtFbe}{x)zFA%orIM
zh{p{K=8OzjFca2xm<1yfgC!#a7R<t6#mLZL&B(xjiW?Yg7#X10fx(uM0Ua~iF)}b<
z#{vxYj0_+w;K0bhfE#l#IWaPDfR<aJVnz%<xG**_fEHJghZPvy7#ToVz@3qSfqcxu
z;K9hi;KA4cJ^u}K1{@eOfkw(8xPif&k--5pGw;L5(BR9+z~Ia1z~INofCY0ffTnr<
z85tS^7#SF7hXome7#SFX7+DyC85yu(2Zj(v25RF5<o;hMBLf3=+`tgV$bbtwgflWQ
zAg}^M1Y-k3BqIZnxWOfc(I6p#k%1wB(Saq2k&yv3yqV0%AeP3+=#at4#FWL@z>v+@
zz?jR(zz7-z&0}m}$Y*4L;+0G#jExLsj0|0sj4TXQj0_1ij7ki3j0_;mSkKtN&;S}a
zWn^S%1g*3HV*!RHMh1o^MhAvwMh1r#Mh1o!Mh3=KMg|51W@2b#RAB62WMH5!W?=x$
zJX3%bx)>Q6x<RA9crgb@FC)i-35-e%lNcE&zzqzO85J0&Ffx#U8yKcCGT_1v(-;{T
zh{O({mB<9J&`d@K2Etf{VKyT}!yHBi1_);2n8(P#fQlIz<})(T0&^^2WMo*#$UqEc
zTExh}Ks-jA54xC<fdPt{mM}6f5QznrGBPkg@qy)x|Nn1i{BIAdQ<3STj4ce1b1z}%
zUlL1;K-P##fL0;!_swKR-v9Amfq|h+t+7^MzY+sOxh(3IjuY*$Ee<a;m>}yLl%dM&
zRWOxzAe37|m4h~bfJ~P+z*G*JLV#{F;eskRgznEck7d7zM+@9Bw;9p)i}Z(L+0Ri6
zSHBvjJ`8I9{zy#q9SHT+F!fPT_4i{j)q5b+d&AVnLDkQ%##GONP!DSUP5`Y(tAVOt
zUyrH&L=D{ipzaY^eG^pu{#H!&90>KGu02?NJ5>GoK1}r;)o}Ac!%krJ{ZRGy=V7Y%
zfUC#cPos}*KTQhE{MW?or%8sXA71-uGI~H$VC3wlfv#mnTW42;xw7tH24smSXl0!=
z69dCbG00lw1!X#*)p+HYI>PlKYpp;!UV_%*JwaWICj?rHSI*N=`>(xJ8n&M9-+jF6
z@jwME>hd)n@bb06upaMs8p6MzPJeG1!%NVh0?30UvJJKW-jwk-)c$){Cit2iI<3)A
z`|oEt(`yS*sR>(m3L3Y9tht4+>t6d1veF(DlJi09Hm5<?cQw?4mil$Tm-<0g8;da3
zLznuMqJ|X*IIILf^UZ%5YD2*5{Fq+*bi4BKZzFP*A1`8+A9v?BjCFpX^~Vg*6@I;C
z40zV~%}s-(C-@paP3RiG98o5uHGVZh-QZQMur+<In2Uz9bs^ynH%T9Ak`l5>3(6!K
zYQNtvM>Fp$<{H7zn^4W;Z`lqS)`zTeJ|}{@MsO=QO@me>BGw4<w}Hm`LF)wh+iSpa
z^G%_w47^sbfZA&XdBIBr9bR*T_XmMFuyuDYK_eoNlmuU39sUE7lHg%w3tj=u{^FZ3
z6GP`W<a7ucGX#hIKgbHduF(G-kky>vRkC3FK=liFH6rNX^2S;L$ZAB;C_C6B0my1Z
z&};yt7t-x2fLM>XV<o=zh#*-ytVe{Fe-hoU9NhsNouPk@yMhMt7~t-OZ3B?zZ@mg$
z9sQ&E0JEj5NG<D274Qmo0fz<)jnY)erhx_vr&1;8&evvF0p@1cAI#mZKO7($K7&fZ
z8DLWcnh!8FSa_AnA9n?9&|tt+d<?Y9A<yu@%j=-EAY0Tx^LL=^++d+n>JGEbp@bL4
zbShzbt$5t^4`^N#-8A->6^x+$4X@=454;5L&48F^c;ICv$QmAKdGr#r1*F^c4`{bd
zaq|zxBEIGyO#CgNW8}g6sTyj(Gt>k?R_nq`r{ziTocy7=_5(vHr{RH@N?`k%Yd<iS
zaJ`r*2x`KD*Q0WDhyLjd;OGwh;naEIC1{86Yc9hBFF%6{G|>8EEavlT!t*1-{6nCb
zv2RfGEpeGY2ejJ)WIkxZsTZ^#<wx@YCU9iD&II!X8Y~!U{2<}VP~!^8E^x1DB%)aj
zD&M@CYd?VYa~u|6VgMx@n1`AVF?C*etpoDUYc)vvc`;vriD3d<5jZ<^9?}l|(Rl&9
zUI)IH2$KF}Iz#_J0=L)o7i14nSt2}ezckl=VJN9<uKmJT!uG-yWO768FNT^NP+O*y
z9lYlGHR}!*P{@F`sfk#-eyD}+#{qS)dO_=n{xFm%f|ue;gLX9>W6*$XXgJ2;)a=T`
z3{AP<Z2t?C?IF=6(;fPu^TJEe=mnbd-mAj{2;#hYu=ChoEaL~2Cvf*M5^x`AARXd9
zMjY<*g1Qehx{bqqn?N(o&^>C<;8S0V>OTG!(6nlE?H5o4GVz0Ull@|-sc5ME%}`U+
zT>FQqln1h6hznf4?O;U-OlYm@3sQ*cOcnHC1m!}6GeMi0f1`)zYt{*d2VNuglOfUo
zC_+n&n`;G_>LKy>S__h%u*V!^QxQ9M^N`9k(E4}*r1A_j+THDnD9^r-TAm#SwF5yr
zsbFQ07r5{PMG<-l#QJg?NHJ(a)9}E{B}@$9{alcIr^4R~n$(6Ff>x%1N=Q&>Vw&i}
z#K7=64yH|`)Di3%7EtzPd#TRE0Lpm+%?FqpEL=)ekGuW>?J#L}6<}$0{lS7Ll>dPW
zKnY0r8XkDb$;1HK*2V<hulJhu<;j2l|3gYd{ua=Z08ptY0WKBKgIWbYnE6{kqna-_
zg8FAz%g6Rucos&KU!dMUsJ;c4kCi+)%Euaz+d$=4F{lo}Q9iy`hNp3a`A*2?uOu$>
zL31IX^6I59#C&i7LdwUNpgFg0S8(~50Es7tnsBu8ks}7pYCgjQFOP%Da!CCGE-ATQ
z%;d)6KX7sR5;SuU+OPH!)JT|sWIs{m^Mbo*_9K_i%G`v@=l@(3me1Fs;gJg|0Ac0x
zQjp2;@{fT)`IijJ5R{hBa!74sX!+-_1P>sH^I+vO8y89CGw3`4ipyuvh%F=m!K=6S
z<*4rCZvidufR@imoRIRFzX!CQ22@7#_kdRJfQsKzc1StRidIBJ%1c;!2C1aHpneHz
z|A6ZQG}qr$gzqN=hc15$sGR|I{SpqC>p{ITkn3wInrr_smvTW|&e2=Ou!9X-{SpaM
zR-%Pm*u(1=NPW$GjKQVZm4^jds1d4YI1CR!`qx<68{oP|2VB=ct2Y#jA@(sHV{n4h
zGQ6+34G+NkuW<7;Ky91=P+imQ`bQNsE#2w*qdW8u=nRn1FUMU$lj#ib`saN^?R#nd
z)>dZF4$%+r_H;fwh%W$YPxH4TH<O)8)u7FCNG0%rx!d&vv`uZr&cN`}g&AI-K-<--
z$6bFQ>LFweoFEOtAPu1QAfz4c3927{AZi(8^*7lV7+yYx<WIu`FW<Al9I3+J3TnT?
z>K}&^K^W7igzdE^Xg%?9*B{VIhq>7mVJOGT7B=vC6)(FXRW8`kj$lWCS{&%U<aikZ
zRUeI{UZb?U+x0{90dR%K`qB{MFhqU#1Jn|P)OR0P5CO&s@{cgYKVSzlH&{4>tp+7V
zO!YTeLH>u-4<P@ug6qc@tf2k`q+ZY~tphs*+%4jHxq=mbo)6f3rUnbJ*S=tnk4ljF
zptBz!?Qw8WxPjaQYK}nrMTnqded!5O51K%O>_3lZg~f*-f2$5?zQpwlsQV%fs;K$F
z6*Xv8+e^?gh6#oTUg|^CgRNnx$%DACO8~UFH}qW=W3THw#16}g#qh%Y1?bQc@V4}K
zETAJoUVx4xILHF3VZI!E0P4?h9_kGJ1Ih-_{=kRkL(H8QUhZdMV0g_3?Oz!lc)6Yh
z>|U()KL^?W9AUq2BNqGf5cWF~VZS|^{rW5n3@<oXn858X!vinnLGtkaU-X~<|C?)n
zu<^Iw1ZU14orii^rh>bk6S{Y^3H*PwVmF(B{vI}g^?TR^H1@Iy?AXgD;IWTQ;Kn{S
zfe8(@?-^>UAbkXQC#pRJ%@?5l;R<F@`f09x0qP%CGQ-;kJk1tdC0wA^v;}Vo(`)wQ
zuAucc44^|Gu!l0J8yU^a!0;M+9)UkIXg}(EhMHnDXPl6NS2c*pRAh!n<`*VVWRhk7
zZBRoLYX5ogu;_b+n)EK$_n`9v&?D6W-5sFz-AqV+goZ~Z6FfX{B`%P+Q$W`87#?^D
zDiy%>6F3_}+i!}Hq5{;v1*LKa5F-^*fx)B3BM2=_K<zhPkXvBww--z$TrX}i5_Auw
zHFpWtUIks62F}kPVEyfv6Tx{C+@8ego(q?;xTh9W_Mo`OlUVnFTEXD<EojjNntMQJ
z4ME$tINh@*9A3dg(hMkkKx4Yl{M=j%4xgRiEBwIY8@S>N5<Z|FD%d?ML2YDE{R0o5
z*Ck;0fx{;TQm!)81f#{5jxT)p4&okAdp7~>3f33K44?#z*8#6hz?*UPUa&JTfzC^s
zfFob+0G(F_8mRctc>&Zz1@C8q)bXG(3T$;eB)9dteu9i!><fTr`ZvwBZy5MnK<i$c
zYu|wKd*^@9lGqY8hKAZt4E#NymB!7rKQP+JFS=bttX*H!LQhJV&j!k?KL`w9fJg7Z
z4WdsS0?oAoTqRu1wF0~)EU!5`zu_%SWV%CNbY6IA!N$OV=9!nd=$=^y>idB_!}?;+
zKSqc@dO=+n(C|ko2c)gUHUZkcgLwox9(oN_L4wbV0I5c8pXz~%z5`6h7#tzv9pFk6
zxh3caQP36o2~=eXV2?nkS8`b~yz;9W-7BE=$KZHjeev-x%qyS?22eY;lo#R^=zcHk
z{$WG*4-*dmxIz5`YGje?pSdg;{>c-Cml)7=23kJ_^^YRVKRt`V@%4kTlov8g2J;W7
zi3A>H1}8LV{Ft#YFhIrwz!M4B$IGDOQQ$@<N^;`{CpT7beMC%pJHgDr@Dem(0PbJ?
zU@GN;I1$`G!0NtfpvEgS{ro@+Z+Ls%6B6FwMlHmBgwu;HGXwm{6lgwvHWNL3q4^jz
zfOhaVG`;kI`aKP`pBeajAmeL4n9)0Eusi@gZ|4$te5JYe2QzAVfp>JE<B{O@GsOL%
z@iWjs+Gh|0TQLVs_2r2A3sQW-3nfhvcySI*ETHkI=Gr$P&wTj>^9-o#0r3p9WMV;h
z2GmAIBp7~hLHQDN))Kh>ZLa;nLS)Ac+&U-CW1y8RXg+dZg6<<w%>wn265K~qz_U=G
z=m8D1HP`-NMfeER;XwEZ+J6QuoP?xDRvhsIEuVgXw3Fry&;oX7{fXwAovY#18#I1E
zn=GKd3Hb?&A5eQ95<lSmHnl(45WYc;A83y@1JtA?6fe$@4)qU^2_$*wHR60ecz+l%
zmWy0hy8b!%f}_**3#hWA%J?pLG#9k7m!U=l<18G0Pe@UJsPn?>GDvv_K0PO~q4xj3
z@@Vi39pt=_*Wu9k0JS?n1H_=iau$@CfX@fhgP%GEIsXd%(6J6bND>5D!w+s=U=I(p
z!_nq?KwJl(iDU;KIrTaLmL~o|8WO1sA;!biS%YURSzow(X9Vw$hR&P6RtLAAcyOLK
z^_s2o8~S)V-tar`4sjvKV_xv^Ybdh<ho1>@_-RAK58`%s^Sbc#AMlA_AQRx{aUrJ>
zv@q#}+6eb6G)!V3=E7%j*Pelx3s+|j4HJWJ&@h1}d}VM##+bl;%?))gN_arpcj#j{
zkTiRUf7_+b&@bH}o<OJThvTlGZ4{vMWkAX0bwllIY5vwya0~wpd_*E1+=T><=cw?v
zg0@aUI@=8vnx)ZTCNpScK<T(ExRC=Hd3eLp?fM2fv?C9y89_@sVT#>Lm5;l^h6Pwa
zXZyhvv%UNT8t(^BQGr!6HCSks8i1M14Hh1t@q`c1@dp%*tS@(h<|U*+eGE{09OPO*
z{#H<Xq1*LC>wyv;&|m`JOHjE9N<U!bU}Kp;9jbgVlNrQJ0Y_5v0VYKMz0l$>IQ|cG
zx;_CPXbL*ku7U~FjC}&CavHxdGIYCsIQRf`bn3xJ9Gn-rLw}%;BfM!o#L{`;r6Z`b
z2hwlB#K7>v{R<<g{cd>Rr6#z)`I@iP6x^8P1-05rK<Wg*XE1}?C;wdq{=2?`g%#IJ
z(9|-xzIv_NQ2Uy{R2DkAhN_PBC8)xA&Gee{rO3bk|9ipxn;)$QO8A<8F!Hy6_UpX_
zEz)hMea*n%1KJh|X*R=?f1e8^1EF{yG~e7@`vf$6()1bReY74oAGFN`9Wx{xJfNO1
zXb%ObeQ$UGyy&6Z^$on+37wv5uwdZt*$bI^2X%${dp3YM;ISeJ&{z?B^ADyHz1Kd5
z2VR0E`oZA?j#5N?&h><sMNeL9^p-&zOK=Yt{)FetC$B;6w-@t2fimP12JpxcXdJk?
z_6bu7$BXt);P@l#J8-}8wfk#MuzL&-ytaAa4bltg4^JRq0JwPq>c_q5yzrW-^BcVE
zaR8l7!O<On-kSsEZ;np%+zyG?Ue^bZBKeUMJYMfK*WO`(9invy6sc=Jf~slIVZM+)
z#1Dp2PDq26z4IG*<h#@L2DoE)qZZoUwnA>tGL(Q0fj-8-|KF7dnk>PE*aK*9jtAVl
zW_v9JN{^(Z6`AhP8=V(ko&`;kKqrZz{$ZL8k5;IEKzs3;Ywv*a=-m%6|A00THq<_3
z;O_w)mjTXg?7Kk?^w&&=x4}IH)?R1k*UY`nOb9PR+f(77HYsR+=L;i_c8DgpU&jpT
z__4ssM9{g1knrGxga@b$gM|lZ2EQxxA*eZwuMB~D9CSEz7Bl3yMX1LGIsU=QC#c6k
zt5}<B?=Y9JzIgH;>hacd;MOC^<43@(M-2QupdFy#qK0Q5I0)Dw>GK;n95{O2m|wH?
zmNE3YAq54r8xPu(0oI8!&j4@t!^6QH(jJ2p_qf9W?0rzT;1QAG0NSJ3Q2T(9zZJC7
z4icfDeX$L-Ab)`tGJ#i>u<zgiEgpfbr+_6{Xncas)C0GVKj4Z_knfrgFdt*^fcOJk
z`(W+(LVVDCfVnG_NI#&|-@U0jzz3^=$7t}iJJEABxD_hfTr0o;TP`R9b{{`9yP~fr
zAijM7vFQW2wII>y`sTRn3(ycUeE#QoL+x{E{#HBiQ1}Z(djT?o;m}~A!ryug+?aq&
z&uH?uf_9R_>RQKAby)rY&*r~i>2`eqZ8J!NW;c9T7#P6m5vIc(RR2R#5{8bKp!ozT
zP?sNE|AXgGT*2z0Q#UNluE;j*1gU=oDzc#J!A%Wam{lI2B@p1qhBRo9wbp^Ou7|XW
znnCNowE0`#fvX|NG6hdi`{oTOi=*phd+Ef=z%b!u5lk~PXz`fpao0DX@f38`94|#c
zLo#IyFP)IodxJdn2AiiiUOs{N|D_O;dLOWQQ0~Swe+yLoBgh~#IM95->OuWMO!X~L
z^_w8-9U3hB_*+4{(jkp3E>I&&=p|_3py7d+Js`#4@eOdGf*V@ZU?#YsRRFG)Q5sqt
z`tXL<1MtD^pazgDc%tM1Qwiq_iPwza`HpVaHwPa`bccR8_(%ZM*!qI2(e(n-=wbp*
zj)2DJe?sE>#rapDCJU&M=+EB@T9naT`-YXjJq4Ut-*h4-OLklVO_p4^!X|Lz3Y$R2
zRW^bCt84;0uCfW-zse?Hc;Mx7X4v`^BK*e_kHvqf;JFL1|14gS=RYOz#0jX?1o0m@
zkiqT|1vA0n4fa2%^~nL6KYI^}L2&YAs1ZRZ1I_AyMs>jB+b1FQ9at8dc`M=O&Bte6
z6G$1z{z`~>FZ^FJf>!5bfw<uD<L7*(HsGpQ1YD=^HP?P&F5xgd@X{UBAAn8*gWI()
zV1)$N%Wt5yI-vFgsQvpKt^EsE$NKUdXgUMb{&fMJVTIQI1)c5i610q`q4qfge-CKz
z7t&6GHwXJH;q4?us$35~rTPJ=snqlWl$g-kzoMvZ8hA&G*n|se4ukfJfX5#V54;3z
z0qu5u0dEh3ww6PtJ@|VbK*}CSdl+;k0qF4cAB-jPp!TpZs6A}d{DZl~>vcN3zxeV!
ze32d8pKW&V_S1vcj^NyhXfwyYgSUwvyjDSzoUj{7Cwu3&7x~XY?d1oM_A+SIM|151
zP<uK2Ikde@Y%oCD&930_2>TZjAnhe;pao$>8L$I3|M3E8{=+Anghn%Z6$nWhy{;D^
zP3ZaN@T763x%LbLY>oLD#uDxqS<e`u<IfGX7Z~_^K&x0ml{I1w5vb7bbUguXMxTJq
zk7%%hI+j0hHJ~p*8_=-vX^Gx41`5)eOn2ys&I>O$gNEdx&1tCLHuu9L73w$8Q4-Cy
zXF$#AzNes8CCFExvojiMFEa4=fZAc;JdC?J4f85wyy~SbsD>y}V*u*{wX}{gK-aTk
zwj)6Ul|;0sFMyhlpmyX%5QCUh0u6zUph0tJyBZn-JO99oYiJ0xgFF3aK<(<DC(sap
zwyQxQ0BKiWLT*>HL)z6$hL9#TE2v4$3~o=u!UEc!HUw7#UziB>D~N1QgS`(5hf5@e
z1E@%EsJ+0*-+Bt%O91%`bgoK6Ey!P>>Kxpz=7F@Uq3dfwtqVj#hV}>JL8UuL0|QtG
z_V@*f64$<l_z2v-Ce=?@LHmkpFEH`99)tS{bOsH?PoUXc@Jtg2#7}G!po_0zF$DEb
zKWK0X>Yq2b`U~2y{vT-KhUK^`xETm;k3&<oKUe`%S11MkVMW^Q0!^#B+tG6?=nxoa
zZhi0&npS&2i#j2>6*Pzfu4UOlOIsLTGZ}(bj4+n4_PT>QzwS&J@d-YS8tVTq%!JaZ
zE2O{l1>8`@-R~nezk+K7hThZ_(Q)zMdlA6>CP?3gn9&gQf*n*am&hRZqNKpF2JJ=R
zST6_Zr-8;=p<^77@nz`6PTw19zt{1%f|eb2gVtw*R&*4zz67mifQ`_92d&#HEe0tp
zmG5@tISx9f40AieOD%8;{$34QK?mDt!qn{gg9*9-x|ruBXy+%iet#X;Q2U*$RI1rk
z07Vh|OHlgn{Px=JwN69r_gb)Npe`M{LRN4a9)5q3;enT+`KZ_M^+nSELF<eDFqA^C
zar)jVfV5-^v?t_s_3Idfr<q;{pfwpJ&EV-3vf3H69?`uQG9Ct9Z>)JAy1oF}Y)Feh
zb^=@sUde-YV?ge^fsc<t;s=x-U==rXLG3erc*PA~@>x;?u7lWKY`w?GFaf;YHwzRs
zCG3!ib5?L?8hmXK@_r2HeiyJx32=I;1C8b!W2kL*<zd3V4Fj|r4eDP=*uYoQT6Vz0
z2JATg7SO0HxM9rtLgXGOFaKhwDFClUg}9OrJR%2=A87gY0o<_oPz#+!@B}%t6vdg<
zP-lYrs^H-$@NN-MwSl?Kfy?j!?7jso;R`amM7_CI0KRDvbVt`Q23UAN9LV(=>--7c
z`5S&cNK}D#O>PDi!Jzf?{}+^Hf#+{hkmhe*g3dkw^#@?N3o`#@4xaxqBryL~^BB^=
z1z7_c+XDB0oZ<HM@we)NoBSfo_0akNbYc%Yzaw8y13H$eq4wVf{&r|99dtj2Ku73r
za6gI}G}ZE}q4xIz{x;C4c0=v&fBfyB<HZ_ke=Xo|17*>M+F$?p+d)+n=<W#cT|utD
zK&#OHf=&VMZAt*;zaLB`X3amC>e)fPZl2d!pf<ki>tyhFHp+cM3m-wecA(Ss%WHQ`
z`HAxIcFq^@{2S<o3Z(mpLIaTG*}>~IU+aK&F_p3z9(b(;+W+tcw7#tJHZ;G2(;v3^
zR1J*T%~%~s>>lWJ1<w_OuB>^}dEq7K*gDuS=Lbk*TkA928DOQbO+arz&9T3?K-uC0
zL#Z)1K|sd$VDqKmr2P@PZ~~ONA&YJxX)*}pei3Ha{G&5u{t<o|%?I$cCa_8yZV0#?
z0yPHI`oX@QS^`=VK<0MkFnn*U4e>o_W)YO07nDVVQ*|iV6CB{8?RDS;<n(M0I&S)3
zT^V@$@4p3QYM|6z#`IbaQi#BNa|v;fL1B>5B+TcY)q=PPJ|~G|?y~d|#CW(mW9Zyv
z$xTq#4}KTTYh_4yc7<Y2Um~q%hZcm;^I;n+c1}9qu{$CtVR_B3s1VgO)o|4W)g0Ai
z)hN|W)mYUa)fClG)i~8G)kM_@)pXTp)nL_B)iBj~)oj%y)kxJ0)fm-4)d1C8)jZV#
z)qK^-s?hzRkh{JlI>4uB|AaJgK|#&m2TE_?V3z2J1r;0iWnAC`xg|mKEe*B*7Vx)$
zjy?bfHY@mkK~PTQ-{$+j@nAgotnGsjm>5s=%7AKn2F=q4A2TuD1nDbd?{%EV2)Yvn
z{gCZ!Gsu;pKc<+$&cdE@^8f!{8HODi&p-zO$S|jM#(smIg$<fM;NKqmtrK!p;%hO(
z1Fwak!3Ieuphbj`YodPs{PFYI&-Xv?{(SNC<Inp)-~9ag^YPDjKfnKc`t#+_Pd^|0
zeEsvw&qqI>|NQXt-p{u`zx{mj^VQGKKOg@5_4D`7zd!%{{P*+b&pSVF{k-<`_RkwX
zum6Nv1dSh1lK~U||1ZGs|GxqQBlP@T4hG~iNs!q}3=E)id5Ogw$a+C+>}U7lI@1?J
zoJEC!fdLb<z|Z$oWnf^ykFlQ%267t+gEsjRha0el5$KR)5;4m8P#O#j3?yJCaNAh|
zk`YS5^Ua_g5ujTf|EoX`ahb1*c`8fCJ=ifEFI_;VHPs6I4~Ht>AAzZy;}Tps=+e-}
zT7mzOQ04!lFqNOU2v-i;!v<0w4^<wYfT_IW0$e$$Wd%}R4prV?fvJ4ODY$abxeFlW
z)eH<}s*SY*>uVSo%4JZGw|Q|Aru=nG=QogQ_<1QEnCG8p9EYohpJy@=lGz3JPl9B2
z0i;`$UmSs{2Q{OH&;7s|&q2i)1?QQd)}NTIhtJB8+6vTY16}_GEv7*0qxjoET~$zR
z%HO^QylfO+C%pun1q?3i1v)|@g*`90uos8k&k8QLy})HX%WEg_eUHaVLG{6cGM3jy
zVE*wEEwl>veHdDe$O%~qWd>INvlLx@_D}dKIq<!kB~bNP);FQ8FVcki8eaGEgKa`z
z?*LzCbn+IO%V78Aowx{@Z)m9f2ln58xc~kgFVO;(2e2u{T5uBzvkFfI&(A?Z0&d^h
z-)KIAtZU+Y5dpOiY%*lri^%o?wEjj-518$#$BOXu@S4c>6tU~$Dr6y^BC$PH3w04Z
zuAuEH^!0JAO%UVZ>R{{RR4$;lr-)x42das%W2QB|Yed#gT>EQn)w*Zv!q@L#Z?IwM
z2BnSjHnMNZ-}GTq+UAFwUAL^=BDZzIR)%ef+YWD2-adc3;EvWEA9qCUyt31M*P&e+
zyJziY-qWz>-=6fnm-gE3+p$l1fAjul`yCD}KVWol<3W`}(+>$8t~z}Cu-lPUNBECU
zJF0eU#WA(xJB}NjU|?is0pF}GCL=4apr{PF#ajn-dAEtFg{8HPt-XVzle3Gfo4bdX
zkFTG9Kwxl4Xm~_qbWChqd_rPUa!P7idPZhec1~_VVR1=$WmR=eZ9{7t10xd)D;wxa
zZXRAfLC}rgl2URCiV*X)bPbJ+P0cJUt!!-VVCH*zL(C5f4U343iAzXKO$V8pS6Eb1
zT2=uvwyv=mY%nt`8|Xf9@O9!s!XjegQqnTAa`H;bs%q+*ko(7tOw7zJEUm0<?d%<$
zoI$Sl^z!!c3kVDf4hanlkBW|s1GzjaC%>SusJIN|Y{*68;A_MoCL``vmIL2$uA-{0
z0Wsdt$OP<qYa3fTM@Zm!f<h-CFbHINL}V0l@PNV?5)cBAyU!)T&Q(xUf(AFl$%rrq
zIoZY4!^_vtKM)+&;Gj;)$jpKSa%p)5IG7ng7prq{LT)@qx(XWRT+oH=$Yw)=#KzXn
z-oeq;-2)cjArSW_B!WT&9G4&$L*tHLKu}mj6n68wyaLF{8k*oc-XRV~HWZXlJUqR9
z{UPBT5d}&jkOY#Qlbe@c01jjDMeRKN0!SCJgQ5?X`n0rl^z;pkj7?0<%q`#v(9PWg
z6ocRt2#G_8tK;Gml2g*s86a0^bMt~th1~8ggA@)B2OEP@g%v2)>>Zq4pho)n2LuI&
zgoT66LnLW%+Jm~76`U%d7uX94i-}80gK~?Kng+zNhEUg9Ld}Nd7*8*6KmWj>;82L^
zaS4#@lAW7ZT*AP}#LCSp2ucwW;0wIv6ji|yrmJTFPG6w(3yLcw!=M=ioP@#71t*N8
zR8YzQCFD|2vS46gW#{08I#vW?HaKjdsn@{J#MB%uYoi1$ICIB?vvx)nDB6lkKq;;o
z9C_fNfEo_Dm>gmQQdooYh`xcLG1wkZkT`%61}M0FKuH7Ud{7<-1xN-16Eie``9X<I
zOk4tzp;2;(o<2Cep(i(xsa}wh0}_kStOriZU>8G@8y_USiAz8;pR$UYx`vLfp1y&x
zDX1K>vj;g6$uww55fL2|7oU&>PQ=-{pg=CEr~(BA8xJp^kg%wjI3)7qmB5jw4Kfi=
za=;OT$?2I{xuBAWfr*8Uos)+blI=k0SOyXb>flTV2?J2ZummLy2T<XIBV&NFb9yGI
zSS~6ltEfaNk0D_JDU=~u52Yvq2Q;{VLln=j!UCg!1BWp<RdDh034qfxsI-ukhZJwn
z5);YcpfVp+setPgl!O-+4k<Vj5<%e&GnkVbUK~qEN<p0qsz<=-Ob?V-EI^6O&JkM9
z;|k-H)HHAj3Ne@iY$~{DgBHgsV7H>ATWoGb%6Q;J2C4k=@(T(f21AoFFCRZ7d4OCD
zNgR6m;A#()v90YOSpv=fAhRKP8pUYr1|ww>l(Yv<9^eoG1v9vM!eR}${>GUqph1F?
zERf?6Tx~-_2Nc|}%mRtO_=H4s7YpDiD<GvkG-KO?(=?WR2sIjPFgphqH!MR#v!8+z
zI7dUPJ4odLDvnX|wLhrw5*7~4(~uy}E+{N22W4qU4Z^_<$sFiq5WXr8>ROa~1Z;SA
z4y?{&WrHPSQ87d+R)r*CM0pRcnn0NvY@{!!y#j4e#6k+>G*D3ws!0oriornvX$nD_
z02pBm$|V|_S~|#8iY=sd;pPErv4D%?$Y@BiO9fc~H5le%%yy6(IH!P3MT9iCSpiAa
z9-dyvZjXUE9@MS?RZd*oJiM^B5K6mK&(H`<>P6K2$W6}_kW)eBTVXM%bYo`Y;O0Rs
zk--%nq~1U_74AkzwSkd#lakZYGqWItJp(f<sOiQJO244eSV~$(9@GR<*FbKiSXx<w
zLlqor*iB7NONUgZ1;wSH<{NTQK$Eg4_L>yp0dQ*w+8zgIX;A!u(g(ab4sE(HfZE;Q
zI*(sa2vibF%YpNTrWUAff>lkhLKs?PVs&$3QgSLdBtUHd<kF2Bxqgy{H?vTxD04`e
z3@?EYafsY{16NYu<i^g;%P$}%E-NRmpbTnfYwLj9fUr`**~Qh}!`lbc|A6U7ZeoL5
ztq^Ax6_=EjfkL>t24pa(rvR!=g@nZ<z=ay9mjKCj`bH4bQM(A>RzxJIg8&UsSoa20
z!WR{TdJ455gIQQPxFFdMrF{&p^}q>FM;E!k1m|pc*@oN>0vE*K)>b;GB?M{HgK`Kg
zS%`^CfC3qunYBTNf?BcAvJKWaL^Oe*ZB2x!VD~dHBDV^`1qCFvK{|bK2ZK5`<`$OV
zZXYz6p#(a#bp>`V)L?MA$q5PzP$m%-lavPamQ+Dy1gIfzXk-d<tF5Dxiz}$m0VTCS
zh$A6I4!ER5D%POU2MJ?DWeRTCi-P)kvU1=+2KDtIc>_6fqXq~ptw5ZegzRE)7J)<{
zI5@yrMMfT+S0KRwX~II%2&A=zzvRGhF_O8UbPaVixa@>D9FnPFRW&5M!HFE|?x^Tk
zP$I-I7^CNevz~?~J8TXQkBG!D7~*0{DQQ_bX!}haTBE`W4scw8I*_PFg8MkoDmp18
z4Qwzw7dJT4#HB%HJWBNpZUWgLH@RU|a}=b#4M`NBJ{YLUU0hOCUDw#u+|mv*m=)Z+
zfmG9?5}@W4Xj}nO`hddK1k~||rC{XNF{CO51u3Xt%gD^hD*z2HR8&^iK(jO?xq(}T
z(2g0zcqJ88aI}G|JS=^G<k}8a*@4@dg+(A2vvF|o@MDQINQX}wxm^gVMIk}!<qhip
zLsCK%s1uS1s+d5nO-TLEz{Cu#OTo1hH2uPcaPUN%y9cOS3hJVVgNJbvz;zR(gI-)x
zUctb~1S&P5&2C{(mV<@@q~?Q`p5R^r;oJc(Ng+cEph5@~!YK6zQY#i39N=CV*7SxP
znc!v%sJ$E$n*i!Sf~slIpaNtZ1XN%`I!=(LF{C5{_y5sTFrw%T3y**l6bX>zmzf2w
zr9n<cE04jAPSj2{wB*E+;h>`-kO2m0nFmT0h>{-B+aoG8AR}hr@f*<S0(ATaG}e-w
z0vZT`IvB0~0F`W@5C&HvM#d)Q7B(P*+`WB#1Hj`SFuy}8)BJ*>;u7${SWSInb4x1&
zGfEADXcQ_as(@33sX1D;0ZL&Zp`aud59;RUfJQw)ZJ+9z+PeCN#+LSu&aUpBUT_$5
za`OlXiGW&Ipt1s%h>^!3VPy_{91=%c5Ij}^8ZB%91qCY`I~OP+gHweRw5bBBIY5me
zPzp9PhZMiyK|*LZ3ETt#C9OD6qZ>NDnFk7w(z5cZ>RPaiL4nM}2d?tKV+x>3Pgzw%
z3o_~fO$P8mCSUNlDX4%<0JW)da`TJ9t&|#2sn*)j+1=CIKVc#$Rj@&lnvk$4Y-9mc
zZ$MJ9E^<kMTqQxu3UHQ)iUCy_&?YRT%~A%+((vem6`YcgOpTeR;ngX)x#A8Elz^bH
z@CZno0+u(xr6+j4QU<(^Tc8U%o8Q3S_7%Li^Zx?=cF<Zl&?EzYALvRw@Kg_UUf%({
zd?Kn$2XuP+zXUL^s!R^dYv6AK9S8%S_u+Xt8+5i0WIY=HHrM~XGr(7B$Nu2o2A(r&
zC>Lm`{g+V2+UvCQHFK}ieh{&_)AdVt?2pbHpv3?;7!NSsIQW2>@kXx<LwD^L#`~SM
z9~x^v*o!eRlsk00@_<y{>y<I<yxCm)C8CV8H<GbeM*20&gkBlWeI4&Xb7wNf`#3(Z
z33S(f;NNCq-fJV*X#rWaB4BvnHRKEq=>9J7Y3-n;kR@sij*Vv<XE!A`zii&#(%S0Y
zcDZd~duGS`j=i1TUB2BnyO;Om_kQg?+&8g5c*6Y&YbTaY`aS97<mpo)r#_v!d0OLi
z=Nac`%$=D!>-DUiv)ku*&b>N!@x1K$ALs9109o$@N->CX1S!W$qLh9pqf($;59zu?
zi#{wpAn<q>cvK&fgrJQwXx43NZfR`;XJ6d*<0{E;nbgxeW$Lu)GiJ`3J!kH``3n{<
zTD)ZGvgIpQu3Eij?Ut?Ew(r=vYxkbL`}Q9=c<AtvqsNY)IC<*ynX{zZk9(*VG>`!)
zvmnE@kmR0}40FZ0^&2*B+KlX$W5;pXk3Jj<YL}31GvQdkZa=8(g1H{m49LU*sQ5+1
zVNY*g|AdLyLmt!5v<ZJuMF4Weq{-;102Ke&T|uw-M-4$({}PfGv4uably77VscHr)
z|KZNb*h3za|FDNVz49MwDS+%2SSrK}e@M4>pz<H2xsEOW!O{(=X@Z*nFw;CJ<RK*=
zvY%;F{=rIeNGX8q7Tm6&SNwyTw4kOVxZe)xpcEDrBi99}@sDVfqQ^gKPaD#~!agL0
z-A-J!7OMTo^)GTM0P3`1j81_Y!H^~}w){u0_{Sa=*lJ-&T0~8S$o_{69t>3e!&Q5y
zq+$<wQ2mFQ=FwXo5I-Z=`LL3Q^7aR6DS+%2+^!gi_79@|LvQ~aI0%b>Tq$2oomMR$
z;@Y2>r3Wl0gW?}z26D)QT0zJyPg=%5at97k7NNI)5T!7-R0s)wjA2al;YO79KQ&t+
zAp3F8dZ3ouu#g9J|FMTWX3L*8;ZII0c;NaUp!|oc70kd09`}NbSb_&R5alm)#1hLa
z1oko?TdM_k*$Ih3Q2b->e`4={fLcMI_-_D@dqB)U<Ue}FKlV{eY_%|?EWn)#ar+;+
z{)dd-;2zh+or6$U*rB)J5#=v>DnM`lAWC7_I2yTjqSjiZ`X3bk(Aha~`v*}9Bey(J
z>p#>!H}&dY?By?d3m#GaqNf5-D;T@~AtP(#Ov<2+Jb-dO?zST+?6BF7+YIa>56XYI
zMqbeUOq=!xIjvyI+h4@RKlT;`tQCwI{)qAyJ^mrnQUjI$aF^tu_@6KlTmD<KmOk;1
zy(~g41(4l>NQLO(51K)sN68B-1ySwCHhKuj!=SZ&$n76Q{f9l|agRAtxBO#Z$oav^
zz;KX<;hn!Y!=E=w4F9g{GrWIi!|?yV4@1tcFou?gF%0kg(;5C`6fpcdQpNE0T^mFE
z|0xVPS#ubsoL|bY&VN0_-*<Z${+&I+aQ@vD2LHbg7~cJR%kcI5Plh&k2F9OnxEcSQ
zmtcJVU!Af3zZv73e@={F-up4W`ya#jKPQ9n&y^y^_x~Fi|No!JnDc8k<CN}2jO+Z@
zFy48yjq%@+1B~b2pJn|2|1RVI|8E)p_y1yi=g-RY=Zyf<|7)^L@84-L)!#E``uE?B
z>Hql<rdR%POdtPbGW|PW#&rIF3)BC<lbPQATflVZ{TinK|MxKce{+(lZptO5_wOGt
z{r~fh>CL}iOmE(^F~2)6#QguCBJ=<MhRo+zSu?xeb!GnlKa~0Z`DEsI{&~!QGb)&W
zu+%Xheb>S4|7SAun}73}@BLrP{Qv)6=KoJlGJiU9k@@($JIwxno-@Ds_nG<3yT8o;
z{`0W>e<R8A>xweV<9B*2|Nq&t{QvLE^8bAd%RB#cmj7=`SpHpYU^)M+o5la{be4br
zm$AHmzlG)h|068_-(6z)_vb##`S)*F&j0<%^5zFK>y+0#tndCyvHpLf&id<$A!|3A
zIjeht9qXHaUaUvnhp_(tpThe8e+ldV|1GTjYCWv}Tc@$U`L~Gm$on;{@BZ&%{qyb^
z>;M1PSkEte!0LDPCF{F?-&p^@XJz~UUzF|NJ0-S%U-a1C|F>oP|KFGG&A&*tEALa-
z{{Jsw`}ePj?f?CWZ13OAV~hX0n(f`c9c=f`A7NYOf0pg<zuRp8|G#EC|Lhx^{|^TC
zH~)Cpj~o|af9EgH{^!3g`~Uy8?EnA!vj6`d%l_t5I{T61`RwoftJweiYiIxeej5A#
z|I66_|KG;`=HDUq`|mHXzyE)q{r|sr?EnA&V}JjThvWZ$8IJ$|bvXW?x8ivB+>PV!
z|4@$q|5G{M|1aVA|G$Of-M@((cmB`g`2T+$$N!vN9RI!?<9Pq>GROJ<4>{ibd&hC*
z{11+I{>+>fZ@4-C9TDX`|4)gt{;vV&|Njo0|IhnzzVnadta+2n`R_^|=lOS4oc@1W
zIp6)C%=z{Fe9m|Nt2qC@+s^s_{xQz~|F3cW|M!&h-M>$qSKj~Sd>7Bj_4kb^*S{+Y
zT<`zubN&Bk$Mx^OFW3L`(OmEH)4Be>DdzfjrH<?TyDl#OnUlHx|6k1Y|NKU-cm8|0
z{^}g#`Z47k*U@)3xcq-S;`;ONJ=gvJ|G57D=i~nWMw<KA6cz5{@ASF-|5$Oq`RB&%
z{yvcV|Nlhp|4(wce_bi(e*dqP`~RQG-2eYC=KlYF6ZgCLecXTFo#y`c^#*r;+XHU@
z*jL=|{(a~E`ksa7|9=sl|L>G|{{1)PdH>FiC;z_>&%1w-Jm3DO^Zfr`&htN~ndg^F
zHxDn{1Rnppvw7b9Th4Rj?0TMm_xJMr|9_U}|Npx@=a)U_@&EaWC+FW^o+Ibkc;Cef
z@!okS%lrSoE^q%k3ts=fF1+vl2l2jtpTPV7e*y2mH#NNf{&e!b|2LiY|NrH@IX^b=
zUU|8b_x=A9y#M}P<Ng2t8SnXbpLqZOW#oJJkB{%#c}c!^{wjR`|C{jr|L?+gew{y`
z|HnwaH@{N&jvUY7d*@%y_vcSD-~WG;`2PQ2#P|RICcd11d-;yNKf(9^{|&ysf1dLF
zKk|X^|9=Ml|NjN}-~5x|zw=*{|NnnW{{R0y`Tzfq<bVG^ga7~k3jTlp+xhRGpThqx
ze*ypB|Lghx|KHF5|NnXZ|Nrmv|NsA<|Nr}c{Qv*+3H*I0E%5J;hQR;-76SkOdkDPw
z7b0-QKUSd4KULt)n|y(PM=Ax*ziSon|2t9O-M@JP_xM)`sQGUY*z;zWz`r9$1kS&^
zAmIP!w!pi8F9h!Qe-T*c|4-oV8&1K0_r(R@zf%#+|7R%p?w_6Dm-C*2@BBjq|K`LC
z{tL+zeEGjj@c+M7!8iXV3f?<ESMZ(x3c<gBwhI2cc2MyAxif<Pe{Tr>|Nlbp|M_o%
z&)okD?tQ{3^zV#_(D8TjLg)Wz3;q9ZEp-3Cm(c(JQ9}RUqznBzQz-QQU7gVX|9wLL
z|IZWp|9_p(zyEuM{^y(&`gP}u(D{E4h5rBhAoTD5f1&s9d4=DdmlXd0Peb_se+%LB
z?_7k>{|yxW_dh}S{rf!O|NrZR|G(=I{{MfD@c;j7g#Z8DE&QhHsPLcnmxSNFzc2j%
z%^Tr=SH26M@Axn5K8Ic8%|Bt0Bj;sA^8D3AV&55x{QGM!a=yh~gnxyf$eVvrB3Js8
zMfCWyMP%NUi2Qp}FLJ)GQ^f7-B#}4&=7}6Rzg*;B{uYtHZw`q3yK-9O{JZNS{(m2f
zy!r7~<jVQ)BJa*Ki~f1TC;IP>l<4_)YNGysjYQx4vl9(D?=JezJ5ZGIU4-brZ>gf^
z`|?HIca)3j{Av(wIo~1r&VRD#pEYwu|J_?9`u^Q^(f|LCi@y1FNp#Bj+oJFMpNal`
z_gVDcnSY}1|MQCd|1T@{=9h+;$Z>tK_whDjvJBw4Zk1rjY&PgT3ee`$)eH>$ZQ77M
zx9d+ZFz~lSE&&xl+EmK%8Mdjk+w~9s_5h}|&d^`ou>#GH`8#93@Nakh)$RM`@{i6#
z&5sycFY&j4&I<ycasm>5&>QeSO)>NrNSSJAC<6ok_RwFAk5;Yv|G)EM+QFBMorf4t
zfeZvIFgAuMICBQ7fT{B^<LR`{ScnPy{4fO{K0p<)Ae*oSY<}9oR~(%O884=F`u+mD
zSs;xO;)Jw=FWC9FU+85K+Lgi1F2KLt_t)+d?Cb(*{M&dW`M1jmfbIGOx&eKA=qHdl
zpi{5FCp|zfyM8TXcmRHX7i7OYWUoB79db)g+&Cd{((Yv8$)zXnos>D{eyaM^ic@z_
zai6w2oqKxb>7%DVpH@ASerC#<^Jo5@F*%!fcGB5nXTP4+ITw3w*10q1n9f_D&pkiy
z{F(Fr&+A=CxiIy@nG38JjV|V0oPF`a#lIJ|F2!Byy>#@_?@M-<vo0^ZeEl--6^kqB
zSLR(gdF9^~y{jo#=UzQ^mF=4CweoALuRXdZdfo4O@Abd`CqVbNLKe`YuO$R850X<*
zR8j#ig9L3pGDKdD0$vse*?s|As03b<0v@U{gQ^5?%R?Pkg%0b1R`GzB+@Q8TL26O<
zGr)!&^bHIV?nD|Z1n;JRt`pFNEr`K16F#ml3);X3HdI&N$k>d55wrjev|L31GVy|C
z=?-M05sH~0XTpsHFUf^E0krB8tP-@mp9iW8w0KYsyebp!YsgpzY!ME~eyCd15CyN7
z1qBn>Ovnxu_{JshwjF42s%d~$$m<&!n;=37q!1cQSUPk%x?nTeP#lUy9Vp_#Dq%Yz
zkvG#pk_Tehq7hUjC^2Cj&qMSlQQZk$&;#%KAO)v3l9@<ef~*w;MJH&>BxIZrO(num
za0-Rmt*xUAN=vMu1&t6lih_GvC@CGXe#pkw&H<W|IY4oQFc6YE!0V+@;s|BYA=p@K
zTRK5zg4SMv%!I}})aU5Q1RhGr%hhE-*-{z2l~WtOLL2ONG(%yD37SYiF4fcmg(q~l
zlNY+66D`^yfvKl&09x#bv=0xo>jS(F7POiRB`F(&Z3ivo1jP`RV1m0=542|xwDXk*
zw$ln~IVi><X2KSzg3M$ChdVTkuy_aLR6TtLMo89x`3GB}0ND!$GLwas15$uMay%rK
zK-MElI!I~53=Jj}KY`X2L;bIXl#4+r9%)AiB$%M<(x6KK%`G6dV~He`^r;K69h~1F
z4h5~_g|4K7x)W5+fN~}%j-Z<*psqw4KnEpysA6okqm?0GBMptv(<j7Clz>7p6J;?o
zbbA{j#vyCaVYY*pGD6o8OM(3j4NXu~f`^x3Dxu@S;O%(OM4|}I>)<3}Y6en?SZfIO
z3uxF9vQrIK8GxtFK`KG9iKRjU=|BoqaG4BApxCMe(8gBi@<^DO5O+coJ$!Q}vai4@
zQ3_h{4o=W&R&Z4W4tCH=PEhF$PIY+P3EdzLHWQreL2E-1n-<Y)BW)craxqfDgp%oC
zWezwOgUdSn+1SL)9Gu@FK?L1e35!cm(gb@S9GfPlU>~tVcm0Ca(Lz#^GPrs{*+~Od
z3EtEM%^#2iiltD7s6@_jD6I=fngef_gsMc^Fov|pO$}5BgPmz?VhYL~$N?`b0^Vo`
zovu)a?y>`|l!KZHEgSftr7f)HLasevDmlT~16pgND1=12E-2(d%V1#%1blP=I0=Kd
z93k)JhMCC$-q-?7pU`>+sYcMy)PmG92zB5v0%vzf1rG@(Jp)6Oavo|TwvEoZpfVY}
zsRrtIltu%nNvW=(39h;z;R!3|A-he%He=h24D%7p^Uz`hnxIg_6COy|H|c?M8|ZWh
zaDE3R5FSXVLozVTEU3@*4Gh8Q6H<hLs~J%-<XQ%lMj;c_pn3-8PEfLkY}`UgBC3cq
z0!m9D%Rw0qo;<*%A}DvLYiPk%x`SG(;Kl1;mGJD2+*}23moP8{wZV|<4%ixO<o1n$
zp)sh111=dLSx5v_xx-9@7Vhvpoi?_R6atD&u;)cY#h_=Xpskx;z~A;4vTphqe>><r
zOGr->bk=jXtAGP&c{S*W90%}uXi;UF(DTp|!2GH**!gIPwbKjASix(jA&aKLXQLr4
znifG@G|dh=ud&w&b>TF4^>nXHE9i_dq=nO_JPZuw&fRDWr!~tspbMv&LF=YhsDb*2
zGRFHn)Y-ADo0b6CXL#T><P1l|eLM^(>!%m?E-YRYx!85d#3kiRlb3lepSrwpMfytL
zRWnz$uFhT)xOVQ^&UN|gLpL~X?A=(rDRQ&xmWf-+w<d4%+&*=C<Bs&5zPo1bYTcc^
zCvflFy`B5=_lF*EJlK1%_)z3w*CP{;lpn>`>qLklr$$I*!@4d=)gGb>0woMf<n^7{
z^kZAc0h!IZa`oEv8#iy=zH|59{Ra;pJ$~{OrXPPRPDl6L`3n~>UB;##l#ftd4k;oO
z6cPCoRNi9FiNARH>NU)MR8zoZCUPYW$-c%Wrs#8O==w2N5W!Y+<8nU}Gbq>M^FL@E
zFn0gra=(~3w8DWjn$hA9v_1ws{1N`gQeZ;$W1HVY_CN9r7V2t}GiR~89})iu`(f!1
z5{sy_LCB_{rXOVe5S_TwFShgt(T}Ck4=wJ%4Mj^($f3?}!u*eWH6tYDBfA`CKkoDg
zsfZyfuwm&3ITc{$ABg+;_#rxRr(az8kAo9Z!(r18sSYvokB6t1H^~3^R}f(L|C6WB
zp5yaBYWjigh5&^k_VNSdf7FzN8UNVJ4^T@4d-(yXWx<^etb6q!bGjh^gDQTI{ivp3
z+7By*M$1pc`YiPD8!bPvtp*w`KS4PkJ^$h>KR~tEX!(g)M}jDYN6SxG{X5$JgtWg%
zZ-0U=YTN@lHW<`xA`(CN$HnmfyadDhcd88je+?Pl{I_Gcf8Lv+&p(9W@4qC5|L+SK
z-v4i4`2T+b!<&C|7{0t;!SL?=R)+s?4l(?@a+cx$|GNzT|G#C(`SqP)%E^BWS^n&d
zf8Gc&{yQSW`2L?3<Nv>wjQ{_8GX6gw&iKwhiSf_Be8&Ix>lokv?`8b|Zw}-C|7#fk
zpWns!&i^Rm*FP5-|GmG@`2PPp#{d8RGQRuA#q{UD1k?Zj8ccuRm@xgj<G}R(zdzIe
zKe0^z|K~FOe_zA&|9=nD|9`WY{{LUi^#1=Yru@Ihng0L3&h-EMQ>J(4KQdLW`Nj0F
zg_-&MJAP*WKT^!={;4tF`)|Vh|Gx|K|2Kim|Bgg6pMRIm?Eklz`Q86U=J)UWng9Kt
z$NcxrD&~JzwlcqecZm7_-;2!u|375@|NaB>JOAIzfB$i^{QoDxa{iqPi~nB(mVf{4
zS>C_*W%>6%hUNdeES7&)N?G2&Yhro-cLK|se{)!_{9nQH|Njn_|2aok{#-f7a{k>d
z7XQD`Sl;~m#B${PZ<hc6xmo{$*4X^lVm<%Nl-2)_1M8cAKCD;XhqJ!(Ph$P^FQ4`Q
z|9aN*@48w2|4wIp^KUWhz4sef|NlS0`uE>C)_?!+vcCWShV}pdKdf*5aj;!^FU<Dt
zzarb;fBJ0y@7uARf9J*K|2K^7-M?hEf9DI>-kq;u`}@C}?f?JTZ0FxCXY>ENneEM=
zeQZb0A7^{#e~InSzx!<e@4sXF|NkG`|NngKZ+=O#A33kY{?1>Q{qH*~_W$oa+28*Q
zXaD~{o&C+fV)iSqYuW$(?_vM{Z#Mh?|Et;G|J%u4|MxiizyH_R|DS)t{?7kB``>?m
z+5f-i;duXFn&ba}ZH_np%sKA7cjkEaK7iwIPBh1_FKHa_-xYJ5|KG^*=3g(zmHufQ
z>--mR+<CK#<KK}j9OwTZ;`smn6374lk2wCH|G@Fi|2M~<H*B2$t_X6ze<#Oz{*M;t
zzke2-U(dU6zVr9z{QEDK^Z)%E&j0^wIRF3e;e7Xh7U%!>D>>iAZ{_@-bCC1bmD8N>
z|KH;L|Mw;5|NlQZ|G($pdY3Q4_5Ym`*S~9eT<_mmbNT=G;QIeRg6seJG_H64g<OB%
z)N<Xs($01M-DEERKl8Z${a?#<|NkDY|NqZ${eN?l>(`aXT<71t=kovio9oR#cJ3qZ
z1-akdm*f8bMw|QI6;tlB?;N=6|N3#i`5(=F{d_w2yZB=6zwa8j|9$P{KL2heckbV%
z-0%Kv;=Xr&ANRZeXSn~qxxxMK%46>H@7{Cg|NX<Q^M{q^%3FS(cju*f{=QM?`FF*L
zhada;faA#P1FmCVACSS%F3`)v)am;NJl8(d*9Wjc*9WXH0geCo{@Sf!N|p5i;Pn@%
z=MF1k+~bga@(1_^-b0-iUV?5FZm9j=P^JkwhPqrCL$Td{$Wgx_#h|mt!RJFSD60XT
zRb5^N8h)#X+>iD;7dqb$9*BdURlT4b(|VORa1&o!zBZl!I>De^hrop=%a1@#g$5mH
z%mTSV9_ClH^QL#6fcOr6HZk<P>5~i$ko#HD&VSyi32_cwy*>DD2+kJ~<&g8H!G46C
z|NIhkJ0Rq6X{7r({)5>&K=<RlPJ^7czM6rdEWEK+VDWVZhH}5gT7e}e7#PY`F+%su
z9f;*1Z)v|)1)ooiq3HM@gd+6wwjp;!2y}!(F7426sQn*P$_u`mX{7=K!)tEP{kJ^)
z+d}_$3V_$kybNSyV0a0-Gp3>T|MhY;4BL2h;I_R~1*uhFWMJrW{ommV8d<#oK7-<3
znbd2BhT4Dk`P=@1hhzW!EaP|y8jl6vPmDOb{0a23N6;-Ye;aE58i2I_tt*oTY5zNc
zzimHQ``>?MoG(H5A%n&{8*2aEDiv&~{kx!yyP@{)<#N`SGr_9<-7gpB-{$(ScY^x=
z|Nnb=ggQ>V=I#6jI^qJ%Vae=p{nJqUcS1Q&m+N1a^RFTIy@A+!J6wPBZ;SoYQ2RT!
zjITFXspG<H*!@tw!HOLhI$VE%<jUDWSJ)`NW(84)J6wN)E|>X%xL8u*5F#0JL(@Ab
zHFn3|K-}wP65L!XP+u<5Tq_V$A_Pt@0v*uM2VL6QSStXEn^H0G9ZWHhXaQZH2|2F<
zEq(gxLgE7>eeNj1OrM~;*1#5G9De@t6|VHJhH5^43+N^va2{ZN5mJJ3p7+b844|~|
zufz2_I7NJGsQs=`#@A5$U8hU}cHdG%?RU?z>W13ywPh@?i$UeZH-)n7hT3m+<*6XK
zaz6fTuHRWFg6=ux=`CXb^U4?*7&=`)@NbL#)_nMW=Z)^r58#zvCCtqS;yPU4gT~QA
zKOB6;2w5uCQ2XAuoTDrBeZwKc*KA<g8Mbx`Ts(Bgo`B!`1i5DobnjWW>mSws3?Q3+
zbcg-{E#M0Ma@_R;sQC%K`{sQ^?R)9cm~Ph(@EfA{GBPlL%CrUxl~PmirASN-7Mi76
zU?y{eg>$Jq%FWOpSh`(5KyQX_1bH&m@W9Ktpu3qM=d(1_zUM0i-AKe(0=hA{nUR43
z`O4T2Fx~7gK?~?Qzk%+HeUEluEL;)mOVC=n*P#1itw5OqeqSv3cH@$l-@!TOJwr__
z<W4d8jXP<F;l<>O=Gqqwr5uI_z^W%S*S=sZ;d&8S1ic@r+x5%A2OQm@KR6F{hW>%y
zWY!(}0d(yv=oZP>Jcb8e?uMl=aM*!vkE>;U3B3voWF9BNJb?xahME{im@?D^LlQjP
zWqbBP^4Nh+SBT3%5t`6k`+}*2^~K>rMh4stf?T&|0={lf@5S^&Muy%p(EY1eJpf);
z*Lg@g^aIj;t0uu94+elPVZ)YKAc5HH`U!H$lkXvTAiim?eZ#=tG97$*!yCpD&KD9O
z>%sR0e`4V8sRK*=U_if5^#%Cavlp=YRD;3ScHz8F^%L5Cs$7WsRI!JOOn2yu&I>O=
zH>5y<8SeIjO7MISbvx)X-sajjpkR(E09{Z8ayRIn)P~y64E#Ny@)>;Z9N%v69a5aI
z^6z#t=*C2jUT5alY@lwPGgGH4%v;dg-0Hy^LDy&Exir-odI=-wemAg@pj(8FG4TC&
z<$-1paMAV&QUr8`eg-kHMJ>eBuel)QDWrTpfheCPutu@#pMx(rI$ggs*ZyEYy<1Tj
zTu$?Y%jwr_;KaoMDqNuV3%ShGlH*orKh3kAYaaJJoht{G`PQ?{W1UyFko^*~GRtBi
zxjBj9uLb8Z>2RzOm-AjMCg;6aL9TRp?#@Tb=2o26hprZG|KU?~R!MH(VhOp@<tlQS
z3+3hZE%tn<D3`f#v+|Z@3l+-r?w(q;^cw@no=N5j7W_Ny4|&A|#8{_$rLV|1_riFd
z(YzNIcR3gx%Ga9yPSW_f3FoC#i#e2zUizc=>pmO9lzDD)l}}yeDxXU0ROz+q?aABw
zZsqy&2Wl;uc8SX~nA*9!-B`2KFD&+2gdFG2a5>JM6Veu>ZG3j={PzUTM6N{9hd;JO
zD4t%q{Z5nIgNJo;jdJSyE9DyHiuBa?&&i+vzEZAEPJMr&+=GWZ%+?;yzN34nTki7W
zF1gE#dDr*LO_1BOwGTv^reEum>z^kp|LK{_yxYqfb;5Ovtc!QgoHt|M9JzV(X35Q)
z*J;{i>XjexewN&vdHe_W$)zn+a#cR+<{IQ0>l$}-{k#qHR?k~APiEz+o7OisE!#bB
z*Sv*tX$x5vo?CxbVTIDwMK|P*F1Wg&@Amx#s}(mWn(vvcKW}~Xd^!0U3#Q3S=t{2r
zCC9no=)6-3pBC^ec{{IUy}x34YDH@OQ-+0t3+~NxS2(+Pq5RJUm*qGY9G{<~-?P<k
zzOq8O{u+HY_s6dmC}bZJTo)(@3N5XLsw<hdZ&|>)V4|FY{N@E0<Yp*@o%38EE5CWc
z)A?8CZ(qQ$KzqTo1+@zI7P!mbI<;z%k$i%@+(JVzIbr^h3l8&b=8J65p3l7Q-#iWP
z4ROcfwq{*<m9SVMv*G1=xqAICuc8*Lo^L2`Brm79dF9##Cl_?BziQ)sfJvcjUB~)}
z1=}@WtxVmnnr4z#kk<6fbF1n6i}M14mtB1@|GV7J1>5F7T~Mmv`JiOM#RVJ-MHj}+
zXIdzsXuIaw@x}8U)|elCJpcEZKl2zDirlw3q%1#qL)OAarxwiDzV&YY!TE~wMHbpD
zWLsdqkYj<R0_Va<@|qXT7R*xc*jlMDQ{k`z`^u$0*01jwDDPICUn*a=u1aB}%A}<-
z^Iy(?J^!-YuX#BOzA<RYwV!soD6oKk!JBy%>vk?!tbg+Ae>t|}HVd{Yomr$dKWfp(
z`ETVp7j9jkvS8nWkC#5&c{fjfK6k8mZ0z0U`3Dxn%wMwJ<^h+&`UT79FO&CtP_dwV
z!Ebqp?aW~N4lU4<zqjDU0{Mld{tq*oUaeVQuw8xr1vxqSuyeoVE5YvkB=50x?Ro+E
z>_cjDpggo~HQz$(g#rtW7FsP#o}aToR$gJg^n9xYD)Z$Q*e!@$P`v=8bEX3O%8l!f
z&P$ztbKW62P^wxn|Jb~^t<}f0<ZBn4ocDIY()o1@zAPv+SY_~V!{Y_VpWU4Ia=~}G
zh4Wv{J2ijJ{QdJ*&VMU!xnRkH<qMw8Up0TNyzLrLJSNPqUtqaVV*ZK+ujZ>ST)ANB
zf*11x6oVFOo%yyf&tdujAH~3h-b$yGSl4(d1}+R)_*@Q>HtiLI7J4cAEVNe)Sm?Jf
zd|}wa47t-QU%X3L7_;#E)`fEW=Cv+Vlv9~^Z@%s|P0f(>*yo#61icrfUQfOAl;aZ5
zJg#7)%d7mkUM4$N9Bx=xxA5q)?uEANIv1udWK-u;7hb+_P0PX_MfKB73%eB6Pv<E;
zU;KR8q=iQ=Ojy{odZps))o1T*x<5gC&g!TY4BHQ{-lKhd^_kT(6<@D*(rZ3{Mh=wA
zEX+jTuX}k$ZndKMo-GTf*~H$c+Ou)t!9DNyoL$JX_k`k$y)}EA_68g5HMq2Q$KGp-
z)Ak)$xM%O~h0^=H_RTsbzT=qUw0(CJ=kLF*IDbEfW2j??<IIC~dRE&XDL!8K5R4x!
z{QSms4U1;zwKt0I6jx-N$vF4o`I{GT_7}x^!-*STD87NpeO&l{p^=V>j+u_RPQdFE
zyWWE3-4}+dduc3L(V&z3zS-o|mVXQXF06mTq;%~egVME!EQ^>INh_5ua*{iGNp8pP
zOU+6Xl&p`wUDmm&bCLU^=tZnbhD!cQkxHeDv=(VEQdhE3TD?dOOnN7!q#S>uut-(O
zZGE^>xzhdQPfuJHZGIsQRqwdy?+w32c8k=M)Rk5*>RM#AsAo~hB9lcaN)s0`yw+VL
zxyV})6z@&@a&}uTl2$SV+X9M-WTir-UZp;zNlH_cJ|zBmr~@?}q{d&Vbdm7_sYR)a
z0?|}CDNS4yyJ%-B=d<=j1&jI=1C*XG&Ri6zl#F7Q?skVotV$4*A{Xf>g@fI#x9Qm;
zA+XP9olajQvB-9jJy>TUk}E(af!qaim5@@ilJ!w1r4*=2kc%Pig{cJj0ObC)F|Y1C
zSNgGN+5JC0|Igf9^l{N4xw8sa7wOFhg^kUkuZs>Y+M;w%Y3atzU{X!t%p#Aij}~oO
z<iGWzQs~wbi;geyR`gb4U2|LMlhWr!Y6@Ey9aWmDzd%29E6Ai3i>@m%ZNH|(w0+^C
zmy1q=)!ezTS!s*X(v5nX_AffTv3}89r5}rKEn2kbw9;**&tUS?qK%8@Dm`Dsu=w{P
z0Xde%0&>iY*S>qHZ)mV&!<x;;foT^l7QZzAx1B-n)P04;a*H(=>n=Wh+BEe1RmH_>
ziwzgM+uYozx7b+OQ8RO;5tx)(?6CNx_3DRKi;q1ITFh?t+e|Yp?%9+}Vshg10v2=Y
zz7Gz#8lwD7`PEk6#cqpzEUxbK2lFD7*Dd{|@%T=t^17wA8`}?G2^P5;GXMFpRONDw
z?{>58nH=gPOW&m^*WY}4F*+jd#@DqHnl_sl*VQWb9;;sbTeoPl`S}!slXprM7c2K3
z>rmdH{9v8srVo0b*DX<Aue{9cm|2N+`R*$xnig+btge1}#oEO)7ptD=doQ+jf%3t1
zPc?4q*(P3i*t>Y@^3UrQE}p7<aNYdHht_Rb+@^eN+lh6z)}7b8u&!tE-F0nnvznA2
ztm|B?Dz|0X;>8p89Xz@5!tMlv#Kq5cFW$9SUQTHqkGt|YPC35yhn0^gA6<M1N*)HY
z4=W#8?D^d7`On1}n;hreeD+T6wsP+Qv#mNS*Bz>It8sgk_3l-dT=%>!XE`;yZu^=>
zY(1;odw_FIv1^lSr)$^IhZ^<ArR5;4C{QZTTXfB{GGg~LpCx(f8_m~S{R-Up!e2Q=
z`IV{XmH2BXl-bn$b{i~Psq$?}k<Zfit5sc=EqN-k{;pi;jh^-E)Xr~fU*@#r+|tAi
zflIVi!_*XSRV*tBsJ$Se8mt<k8n5~$>gH1u70)HcDxOOMmWW^UUE;MwbV-xZp+m+h
zCQIy>yk2a(#B7P&5{qRgmWeD|wv1)zLzVe43U~LY^ez3h<k-?%OWkf6KDe`Vl8W~&
z-&=xeVPQ76A1~=qxn!{DeHWNaxRs^ieQU+ChGk2Z#4ek&ghA!olFauFs-8EP6{-{_
zEiG0QJl&UA`7TnWZ|Txy%TqO8|9>u~8mD^AmFZZ*GSg+>mZmM!RCBytw5(@Y>atBs
zBf$2zE-|~6pxUN7Pwk?5*9Hcal}n<Q%!vAUJA8@q#d(*jmMSm3r~)xVUj^Y)nPsPz
z>MeV@RCMXArSq1`FIj)<>w2zbTDRXl)mM>#hX;rq3=JF4WuD6}s)&JI0}&4ahuJ3;
znB5@}5fO79i7h+6^uV%cwV7&{)zaS!FFUCge%^MO{xX53>s35&sArnKEWG_mB?0Q*
zNR>TH>eR%JfkI&85|yPh3}+gK?N(p9d#U<7W)+uZA@f3&BNlI0Em?Ly<3UF9%lk|2
zJE~q;uUfKf<x<{do0qx1k6x0qRCcNOl9(l#OR^p&tTtb!wDjPz{AE{`7~KA;?6=!t
z>E5L^DmJ(CmxeA$UphfeR!8n=@G|M8+m`7syRPDRTVZL1s>ZUvi!Uy_yyWT9pd}?s
z%QghuW>#6fG;~>*YWUKOWfIF=m&vOr-pW&*xoqmPxl1lB$-aGe$<-wR%i?c;UV3xM
zde!YqV<O@sf*)us30^;O>Fg!KOYSV0vP>LoSO2n@WqGR6;Lrg1yG<1oPyTyPEjzSq
z?~<@3GnWW1*)eb5QdPOli&d5#T9&)?_0q*^yO%XC3|>;88h(D!vh$Y;FBvY&Q=O@n
z{{EBN7d77H_tf5~{nq=d_a$ES!GmSf=G{QzhrPJD?6I1J`iC=*z~on3E<4eE{R=-X
zyP<Xuu1i=+NPYU%Z)(5Q{;Dykb1(Nl{%YBEu-X6A#MH%?UswC2#=D$-`FpsEr(55v
zeS@k7v3`T~eFm$B@c*iDFBe?irU+_vd|k%B945*DHtox@Hbpjd;pH65nU}v+n|>9<
z<6Hh&?Vp-Bm=s(7NbT`5I}4%Rip%AfTe;dC4ZF~-e0fFqCim^H4u`0pQs2Dx<_Z&y
zq7`-4_12Bn3-{<hYt_+umal$F<DQ20v*qh_o^>xb0IU112x<pBSj)O%gT_{k;~IA~
zJpBF6KU%R{{pE@zjcLy|Ypi}YM}y-e(+cJlyEpc%a7c4}_H@q&<zE;5)wQ23U*5i4
zLQY}cqUDQL99VvT#e)^MRunG}Uhb%IV@2Z8>SwbSv#rqAP}k92GiUki<%?ESEZ?`H
zV0p)CE{(7YT`L|g-?rlP3jY;iD`M4Ou4r1GcOvYWfqIDg=CzR6pQqNf;qvlJ%Y#;=
zXq;OiyW)t(xrZtmEzj02pMD~J6Q6F3?$i^_o0FHPERR|~ZTaiVE0<TUSf{am#g^sO
z&u%Thr{40+EUoX^EOn6mQ#Bf&E!||LUbMo;)%WNm^&2Z*t@y4OuD)c2$mQyzo0bQz
z2v~7r`Lq>HdzY_Rv@qvN_KLXWH`ULrNPc#~t@d5w3M+M!6%uPwluO?UYMfoc=PKrL
z>xAo})yvbD8)!5>3t2I5#cmC^Lka2}C#SEdQeU_nWVY9e$Q7a*>sN?stXmPSz7-m_
z@#?FeMXPUs^42eJzc+KmvgLQw&pnJ@?yr7t#m41NR#dLIsh+Z8?~!h0_2rY)9amT`
zZ(9!1vlSdW{_3Yzv@CC3{!qF8c+B!MD`qI)*0X&WtG;`=+lu!ZUst@-_`0I#!p{|9
z%8&2tw%)V*oyPkW-!*=%_@?n|#h(=)SA5g>zM@_${=$zH44VH}|JC@vnrr1V#n5ZM
z&mgV-!wYUGcim=Mxl*4!vhAkuO8%9O*YcHZHc79PTDfta!b<s-%9_h|C}}R+AvwQD
z5!B8;zqnzyj=As74|{Z9T-n`z%Wh@XO3Rf-%Ero>D+5+uI`v_D-pYILoL06wX+Fr%
z%+d5a%(*`5Xu9T>wW*q0)`o#aK&l;ATCEJz%+T~Z?7eccrta!zn$K6x)l|`1?sMx*
znpW?sy{m4n{GrKub<IlGldXq$tZIYGeO+~Z)p{+4)st2x$d_sAu5OWkwbEY8VU^IT
zQ!7ud%#e#%cztExDuY#LS9YzOcvXH?h34~>6`Idhw#aW^`DW$omCsi7YO-EUUgfwd
zcNNEKp4C39kF8YFc3!QoWw`3m$~MipnjjZwt>#=Ut!23C(n@J9{Z-3X{nGlqYKNx7
zsvVm4S^=wARynNty|P`ich&2?tgCG0roa2Y%0SyqyKXi2YKzssHR3O{Yo@Kbu+nJN
zo>k1NS8Fn?p1pF_s*aWFhPfAHwOel(tyWyEwR+XccPk}VuUt9B(B+tk*6&p&TEA8m
zuUf6Se%0DlY^!uvm9Ao6^>Ni{t=1ctR!L|%uQp$;rgddindat|C0Zc6F04{nUAF4d
zMhPvY)g@X6+I6crRt2vPTAjW6@zM(IOw(4=Hq(x+^{XRSr@?u(t82h&-BxF<KC69I
z`?~fW?dRJ1N2f1La4HQuey#G<isg-`IxoysoU?ka;)K<=v_ETq(|&SzzV@@#^R%C>
z{<?a*_RH0NYc_3Mw|e#Jp6ERf7cE$*{c`oO)you*ufDDQX7%NmD|e1RT(WTY>Sc<1
zRtKgBJ>Qk)o9>tHpS~qmEHCBViiM3x_U>KRsC^dh3K07$)J1clHt*Gbvl=3P9qiIa
ztJ80-_1bpo?&^8k^WidgwDpfJ)ZV^&rsB$ld$n(`o~wNe?Cu3%)@SV}hyQ8wuHjz8
zx8|od@0!0F3@e4@IM#q#)u$G*uVGswEXTCw-s0b@e`^0*{b#kXj);!kAt5L!tYdem
zbcNI!$u%BwkZ~k&wFzo+N6#Hp(5a4HmtCDR=Z!p^rL3c(qr5?BjgpS?2DLS+Yi6nI
zYv``gUZc6j;Wdb@zUGr6tdI6d(FodG1F=lN{Wb{8Oef&A@0zvp5{eIxZI}OZH)T!m
znx_lB*0`;Cnj`<tV$I6c(K;UMoY(m4c&y7=le8vrjnkTpHEC<&*6dmPYvFV`$S9M?
z9Vd0IXI6LG*NU(GvL;~dH=S<X9^IX~X=!uQ)<5f57^EAldq($~?seUHCw8sfyS9C;
z&f3#!SFByW_U@WXYyPfTw06N-rL~vVzFhNS&4)Gb*UVTGp}Rx(*xK1B<~&?8eJ$_W
zb!$1+vaj`1et(&H?H_eec|CdY^feddB-dV)lUVz7&E7T5x-DzZpPsd5rB1N!yb~*R
zf^_Gdm@e0-0~!zessl22%Gy8be7aLlG_Do4TeYuvZT{NWwYqC{*G|*fvSzl<HywoA
zLA-9bPomZ`t$niQ@tPxR4zFQZdmmi0oLZi$nZEL?P6XJ!5T8T*y>?Cgn$2r2>t0z4
zlHIX(|C*IL*L1J1eYWQ4+M{b%>YUNN4koXyy}S1I+Q{XP*FIX?|NO(+_iOVOhu!$Q
zwp_Vr^RKmM(_cK7RX%mUKsi}2Wu3=-)pgqIB+ojpGhQb)zx#&AS-UfnPRHxr*vh(2
zU(alv!#a+2$F8{RMd@X)Q`0kB7o=Zd-Ek~uoxnOZJ^ghN>%!MHFH~Q*O0oGo|2jRe
zDu12mH5%t^)>*I9({tC$UMHh>W9!YWjCv{S81<6DVo~c1*VV~Y>Mh%O>ZF=nsXUXy
zLWOd@yQj+5i7hD7Tej0<-h+kBdRz4#uLJdk>h&J4iwN$z>>($u0~!l0+vsrU&ANx{
zR<FCGe{$pfbraqn)_b%rVEN>A^?F}|y+Ynz*}bmLyuo~>`E~Q9JGQMmx9;-l`|GAE
zFIc>2@qE2U>y|Cvvu>sGg>@^H&#zmtc!u&*4cmw77SGh%zphDn!{UkS=Ib3^SFhK+
z?$x@N>n5ygRc_S#yslMwwsNE1hjp*+gIZm0)F5p&XSrWc{%>&Gt^4U?m)^*Q@yp{^
z#IKBBf4|`9ksVydrkf*HGR*6l$0>Jk@w%AJF$Q;q)(fuZT4K81N8jLp^I7Bde(SZ?
zE3CI#Z>R6E-h92ydh7L;`X1}G7g_4ttyf*Izdmq%z<L8cP`FpBl^qRTAEM8aZ1nik
z=_q~oJ(2qEdt&rs_2bq@L&+F0J4QcteZu;9{bg6u)~Bv7TEF$|)n|X@dbVb)e>CsE
z+#3DIuXe7FmjCjqS^v%b4f<R3x2|tkKT-d4yy%0chsx(?&F5PZ|EvYfKPNYD{Y9k(
z>(9weUVl+(>iT6T<rPj|O<lmN*>>~4T(3g;`Z)_4*B@E1UBAR&^M*$Kt?L{0x2)d`
z=2fphvi|V;Z5t2H`(pTOW6!O+4O8?^Zk)eCbwkreHf2zceai-mrFI)H7=GXAy)k>^
zx{X;Iw{9@m=rn)gh6x+PHYn++ta-dXVFR1;OZ_Dq9vhSxpZ9(3YkThg#xom(HZW{*
z+i*m2?*`coS{r0lx;IoRpS)vzL2_fO!Lkj<H*VJ7uD^N1gAK109Mx7CJlqh!@x?~-
zjlVanH2ApT(}tVtpBgxA6g0HlSZJ_p1FS7~ae3kfro&<zuFPjLoObK|?MLfRf$cWj
zP-xJ)p~m3jhSv&Z1`ju+Z2YmYc;jlY9VHt+tY_Wu{pk_K;0=omqF!~W^r$R)|5sjl
zcPUu)stwi~>J6MW{@EC@@zchxjWQb}4Wl;B+L*kt#$e@!+6_uKsyA@moMtfX7N=X#
zu?7RnjaeHE553voyRmWOl8uu#?$^q_@Mk02hN=w>27(*?HbyP}w?5)Uy}{EB;ybqQ
zX565#(Z*29OyYQn;lGV9HoP^6+W6KWa$|)->&EvRR&QY0z_el7#=vW9Hw12MTUTo+
zwW-EXYLn6Kw~AjBCvH^S_<Vi*#+4giZ;;sl5~<&)w(*;m%duR;=^LkQoTCcrz0Fab
zVHmdi-3FD7pplt-i`qA?-@v?K)#_vG)0RJ3RJ>t|-ktUK8?J0*F!;Xl@kTrCZyV2U
z{JL@G6`KtgH$LC^Y-8nymmALO|KE6L<E4!Z1{XH2*>HaSa|7dzO1lF$e%a`~fqfI(
zCXr40Mn;>sH>qz@GcwpzV_3UUZqvdTrMuFbB#aC;iEq-`q`9e5>A@m?Bcn|cMrxb*
zjr2E}8(C~J17q_|EsO0o<tt09wBF>i$$Qh3a}SL5&TcX}vE|SvjpgD|Yi|2)&e-(q
z;rHbyl@m5SH2Sh7dvo*VTbq|{`L|`yRu7d!heQ^w-g0`=l}*<-y)-($rEE*_mX^(C
zTgq=6u6VfRo>7U@-J7ACu56jLW%j23o3@z$+ODx>&ZcXdu5OyU>F%aGo3?Ixvn9{?
z)|N~o7UM5l__rR|d~l1%)(=~jnp7Q|XLNka`AxGogKTBdH{EO}2b%B6-=e&A`sRIG
zc5kuUJbBCME%Ud`-27n6yUqPuSoFCz3vCg;FTeTHW>%A(CR$rJT9kTDJR7&^;^xZB
zGFv*f@NU_^<@RQAlgC?lFJ*0dV03Fsx$^I|)*HkuKJECcp1o<|CYjC3o0&Ere|T{V
z*W$OEk8BCt@@dQBE!A5@w#01NaN_YM|IPNBb2cSy_S>{+v+CwE7sO25x9Du$yhU>B
z$1U+&Y|l9wgY0eD9>3Xq^X|>RjNP{+Z;mmZaOLu*8Cx{AF4}a}L}u%Xoh~M_Tb)c~
zx3X;gWs-CAm$BHE_ghr9ZrQwNGt(AGF8#ViYV(3k^Ed6<{9EzV7O|~yo7FZ?+%jQ{
z!e-qqCpIZ<KD%Yd<`+g)$MQFY`j+|LJvVDppwWpf|2MO3{l4YT7Dr=N6RoY%Tje&(
zZcg0%bkpX|^Ne0@3N+fZ<+oz<7RAjAw=CU!bd!~d%+?1+d7FQ4QQ5p^Q}Sk=t#)#f
z#+;Y#Z}Qmkd=ulA?VB@=9vZQ1&fK!yB=@G<mU~-vY~k8kuqkk!>lUT0Terw>{k!GS
zCZ(;<HnnVF*s^PjmC4mDP9`o}IJUBy3T>6%?6t)R?2?^ZOb-1ue!9hUtI5`Li<vK|
zdxv?)c`rWwNq&~X&P9FmOSj%sj@TNx^~j>5N*5O~#;V@EsqDMeZ)=lj^zIuA(zGkI
zA+6eqtv*{%ZY|h)Eb~OBYgXZ_*xk{l(YtT%2C2vdw|gP1R@08HFjm{vxpI)1wz+bh
z;2F0*Q}6eG<#N{Vy4h{&{eJ4!d8SLQPu_YXRW(~JTPs`l^%T=3*CQXU*}8J;_N`mD
zZrZwbYoA=dT<NAuTg$he*lOtGe?~?xeqEy8?X5SrDjxi?jO!9;<n7zypQcXRQWWjY
z9&DSj?VG97wuWu0+fue!Z*y1vy-jVK<aV8H$G7=yTygB*R<3RQ+m;+K*rva2%|fPa
zv1UKEz1S9-k^kbm>4R<GOn+{5+2*{>dz<IBH`^M`PHsE0tz%o~w#;odW<RziY>VIa
zf9w5iQQPKhn`EYNbo#bmTZ7F`Zd<)A%YVWB&~0JcO16bLh99gp`y3@1b3C=@*^jMx
z+gy*XH9Kpz^jMqndgWu=u5CNGt!dj55MOTX@fF)bwzVmP$4s|LZVNVR+_uCa-SM;I
zzT-=_2`*W_Eo0kvQ~PbU+k&<^*sk$epSLA%=ew`lK5t8tvoVX^_G{bEZSKnK+x~6)
zyKV8pYf9G_NzH$8Lwvi~cD`*&+vT^*ZI|Bu{DP6D@6O^y`rGx)gKs#Wu(0aiWwzaP
z`vb-JUAuPsMqW(2^Gwr<Yj^z)o#kofl9p||Ry?@8bM6l29c}YHw|nhewKLD+@Ue*t
zWajPCgSJd8*j^udx=XJP+D<9m$!2nTXTnZxxdaP-OM{)a<G#h^-oJdAbyw^Txn0+H
zyxPUHW5$kaJ3u-bz%84zmeZ4ip9JrmzvF}QdMlX=7mR*wSKncJNohyqPKc_N=1X@R
z-nC=b@9omc|F(OqWVEQV$lJxb<Nx*xMq9Q&-QKxNTKVPnpWCPG_-qc6Nin~&Yn^5C
z<*(Z%cg0&g-*J1_J<HF#?(bM;{$kfEtNXiHti^X*?y5KbwBxd(%SNt6=eO_P?ri0M
z`i7<Qu8y0s>O#BgcLpn8-5Inaa0lN`L#yAr7H;RTc)mkhZjw3wPLEv~JE!d0zw^4K
z_b#hlb9Q~+$+*jSSHAh-W6Zlgn=@ME?PA;Swq4Ll{LIIl#g-R$Ho7$(W7x5Ld*b%B
z+hP8>zFkREd8M22#Ix&mecSP5r;O#IU2?mb*Ppi7Xm!A<@x&=8ZMJj8_Ql(|cW~|E
zu!!FwbE@80Y{$MGhjvXr@nUDVT*SNxu$vNgd~t6-5w+8E`vHqZyYB9KzVq8o{@wPw
zl6Fnno_FQyj;Jdc+l@4Jwy)lvwCn12iJkr1+jgeyOx>BZ!}-wMT~hN}EiUeC+%CK;
zK#pmb(+;uSn|3Dde6#D;t{+ycyMqrE=~b??+mgAR#UlA~>rSs-GajbwxVcj!VAA83
z?W?x8S`_b0*#6V9U{|oR&yG|J?_K5=%Day5oWE<gRsA`x9h-MO-?e{-!cNAWEju!H
zDDAwmGjm6PT<y-v9rLz7-EnzWqlNgHgS%>WvhP^5-Q42FPG@tj-Pu;>b}hC_x)fva
zdso&DX}L$roYse~nwa<R65Nrt!~MMWP6G@7(}_E_>`b+|zSC;Eu4U*>Evs|j(68EY
zW#`jfm#vb6vM$}*wQ|?rU7p+jZZ|Qv*kyhudB+SZ@oUp}rSHhzd28nZ3z?nzyBc@#
zS=`^XXU7NSjoVLIoVEak{{5W~w%^_f;%&5QJR!8}=Z-tuKQA=6pk<Z4OTemf7xNCm
z-5onQcgXLo*~MqEYFFW|2RnIoEZyF|lWRxkPPyGN7KXc;ckx?@@9x|Qa=p3Lp{vg3
zn!8kXUfm_DZnvXlC%*;D?t=*i*@mwVS^U~%<!^KTuVJutqIKr0zw-ACly1fE4%l6{
z(QbFd?qyF*ck|r-sm!)aeYcWz;%-nYX68og-O;8^TN}5k>{hZ4-ko8cxjPk%Gj{tf
z;<jtBZ`>c0U;iG|w+q)T-VLFPc7w{Caxhu4+dwZ!zvEcd?#kU8tvBtqRfmjS+N#%q
z$1rtQf>`y|3->J9J!AL0-RpLD?_Rxo((d)U+jq~}J$d)S-8I&mcGp;M+<k1f`$mWD
zpEdUE{;aWk_rcu<tlv21-gdgbWw*8R>WAldpWD4DV9gD)l}Sf$?7qIcdF#8~9DA6L
z+~56w_t)KNPO}g3?0IO-wTEL5`yO!{Wt+wWB4F~vGwnShHsUso2Xyu*?a|z0yvJyd
zsg2bh6C0~NXXI8ZZdhnyW4cFQIZ{7L|K>iW{kQi-*(C0X1mmbZ`TI)t6z?(HyLsV{
zeVsPk2RimF+_P!n@4a*PL44I{J!#Khn<e|54@m8oJ@9Jpk$p=0BKN<sV>x5}Y}1~N
zd#>yke7<#Ip}hA2zdh^s-PoVI-1^o`+gp2gEi_)aa{paB^#c+I{_N*G&|?>9Uv+Ge
z&654?dqei`T^M*EWPjzJRi{2}tK9oy@2|b~``h-%?OV6+;C`Kb>-KZl-QT}JjsL*!
zeRlhP>^r<afB&8RFYG?rf8D=$f0KQSz3_o4`<?e5T6kD7d_~Q^e|tFhrSEGEo_FPy
z&8@vp_Vd}X9cbVGZLjkF`u%GAHt&<%cV=J8{^|A%Cyn-lW8D7uewO`57oJ?WaewW;
z&qt3ed}T9pFVDUMiY|MX?a9%)y{~%TGd0kd`@FrZ`&{=<-}7Uy$v!{Z`};fhK2!T@
zE4nYwdZjHW<viW1vww~)+X0LH3-%}IuClX_ak#^{AEbtBANPSz`xfs#zi`E#g?m@;
z^WMw8&mh6;LEzqt3qAJs>`mG8d2j39BYTq%?6JGL|DoOgeYf`eEGpRlYd_b1!To=1
zK%upD@ooE=SB@!OTR3t5{5=V}!eH|?_j&HUYm@k3(cUSJQy$mbUERNYPws&wds8o$
z@7Gs$-}7(Z>%HG?)DOJh=jRaOkbc1BK!e@?eXIxm?SH*L<v@%rC=??OEZe`zhULt?
zed7C4lxN#B9jLYm+8eO<*1iV2hx<hKt>0U-qkUiJzR&|p_IU1@zZbNAsBzxrgS`7(
z_OIA0u+MF8?+e5IJ_i&I$R98|@L~TSn;yHWV~n=?dsps>vH!e3+WzzYWqU*RHt$nA
zaDCr`y`b>owrkuEp&Rz6+k)aS-L}bI_<;M~xqIjA%iOzs@8<m}%HQpn4%i*It$1gl
z;J)O&i){YxdA0A`9^bu22M+9=wcl%R@ZObsH5_yfh#uIwr`~SQzI%Hb?eq^!wVQb*
zbg!Q+$G+KnpYHSBA7lH%?(6<&`xr3m<Ni~rBF|d){o3<nAIOH;`ycI_W6QVi_nr<L
zv3>q~LGEbTe`)`ZJxlkv?|0i@vj4ly-F+ABbq-v#*En!%zv_B#`wjc&>|ea+!M;NI
zt9xAc-?s}n5PLvq?|nPJ1H$`X?(;uTx9{1$`}>aW^HiLE;KV_$bm?@D=ZC#cociaG
za<|Um+JRb!YX_bk%sB|ksmgl<oHUcNo}5*_y}18C-vLj>yaPc8rytZcJ7WfE!x(wU
zd+MG1c);@fy?0h}Mu$8db&|av?>oqQ=(?k{lggnl2XYSj%&T>%JMi{k<iX5?HjbAL
z9&{8x^yT2qgMSWgJh=YA;RA~fRy(BJ-TvsFB4oYBrbqMV88{v}n0oNe!G8zOI9@*Z
zV5{-Lq=O=kM-HkTeC}}RVD#fX4j_B-4$e7nPm#m1!*S-pY1^i4yMI8}QS`Ft!82w{
z96&9sX9pS_P8|q5Sm)S!ump_j4uaH&I?g=!`(XOzZFW;0&jp(h>ezAc?}4`m`d(=7
z-*s^3!Mz7wIEWt-aWpuXe?ZFd@<F*Z-#wO{dG26yP|ESl!4Gc_Ie>ik`heKMZK|qQ
z>JJ>;eft2&)^x{x$6p@kKltW=#6gA&2M=@}c;RsH;30?Wjw**hr1YWAdD0uL<aQm<
z-fDHo{Ls1iLOQ}aB5QQ!b*;<V*|}oo3air*heDkudrkM+eQM55KPb!hP|Ts|L(Qw1
zY-S%4kYBK1>!#X63!Ii8Dm~P6sPRz9%0-9LE;HGr9jbC#eyHnEmD7SlYY(kCbYXGT
zo$8qGI|mMxA9g%!c6i$%50$1(e-G8&(L9`YxZrT-o%Zz^hkqV&J)Ct|^03Qc>%+Xx
zy?5RoI&nziaPNlf!@<}3?)-4-y(8~jdbsBBze67m@i~_sZa8dz_{^c4JCpCkU#~tq
z=}y|=!oxcceLAG!oPT}Cp^t~&9eVf}GzXEha>ku`?;;OJ9IjQYIBazI&7t>)n4KFB
zR~^24=-wgI!`m<OIm;j3eyCP4`Ec%Gy~Co1XWvmgoPF3PV$PkJE29@LKC<;l(2=Yo
z=bcNAygu)JWW$kvhl`H5AK80^(<Q-W(UEh9&mLakTyn(f$oV5CE|y0?qtl<Yzpd6?
zzWPX?%atScN2Z+EaQMyc{3EBGLF$`bP8?Zyr1OZNOY#u`m*gW?pFMQ8Jo3=l<j94?
zr;dC&y!r6D!?O;rKXKZb(`C^S0T;m|Wk(hs*?D>PVb&vOj%+-<!ukB+lq1WI>^Q>f
za^lGTBm74`I$t@$=aO**q$A<T#KYxBJ{(?uc;?}XBNsGw9d19u>(YGW))AW{1xGF(
zzIEiIbKjAZE|-oluD3WZdX(oVqpRI{wxi!%?9P8b^8QGT253g?-4Q2$pYx!RaM?8_
z+m_2IA6+h|bkxV|d=UFJ*m(UN?dPk1KifNBN!{isXuZq?rEJ&Iqe|*lNBxe*9*uM@
zJi2JxN;$|nN6`yb8oo!ZG<=TQ9!)s9QqB#$`q9O;@Mz@9m2yt5p!JY(VDTW=*rS0*
zCojLcJN;<t(X68xN3C5;k20-yag99sKpC=1qW!3~YxdFL^{q#JS3FQI2Ctl`a&0@>
zdbH#yh~MPe1*JQW_PcW2>vQF}mvYSMnEJ7ZW4y=KTu47=bWHIW_puFbDbN2MO+8j{
z?B>y=W1yM-I8~-&Cy%-vQ#&Sn%>9_<#m}z0-<`Jo<huJ^;;~;xe;(a(6r$?dQO{#~
z$2bgwj;%ks@aU_f6PL;zvpyz%Y~4}UV=s@+KN^3m@EF^%wMVUwNw`@Z%R82PZ2Hk}
zT2nTv9D8x}^-<Pi9EP073fvA~TyQk=nAWi`M=u@CIX3O+@uO>w#vLm<mVC_qnBB2^
z7f-l`x*fi#eJuM}>9LYy7nNTaEj0nv9D(*VZfS|r6E{A*v*4m~)v;cSrenPpjmLWK
zfLdM^yC)ngR<2!q`cC(;S;sCZPCT~o*t}y)%+_v`-?q^;<@v5-JKT026MnzRZRfE~
zZaa=`JSP19#Ibzyyd7tc9Xw|1pOm!q$@CM)kKH?#sZsmxv0KgUq>$5B?i_n^OySJ+
zW9N_AuDR$|bNj}zq{WHB`q%!;DKBt3zF%4S+>GPXB9Gnl+bDlr?zq}<)#LidFCW)-
zZ$F-JJWx(t-t9*Cm6+q4$3HBKJHF?*<MDvw=EqZyryO5-^P%#?6$g)RJFb6x-to`p
zd5=#zzUug;<F}44INm0=W82N+ZN~$TL&~(z2V0NNyt3%H&hZV$R~|Pz{oGyQ*82HR
z+!b!UKmPi-xMjP?j}z}t=$y3oQ1dKIx}6mLWbKJPCyt-!J5i&-=X&cz#)<qBJ5Ka1
zUUlNyiFFR38bj-(;Ysb2|J`Bg`A){1Fx<ZKM9PW3CoY~~Iq7&J?1cCUp_9kdcX{kS
zA$8)xiHf}Hyqb5A_WOZd;+9{IOP&-x@%=DpZX;&xGj#^bGsm8vcnqEa30}M6dFToC
z6AULJkL)$pzE_b~^G@bOp2zMJc^<n?FrH92DRd(8#MEc)i*>**6gyFRV$O-#C%zrO
zaPZ6VBk#gbEZ-Y-A~UTjZPl{`^*JjXPGp_vJ+aQg$V2bs!4v=8?L8pAv^rsT;@@$Q
zxco`$6V@lKPOdw-<>bnf3r|j4IrZd?lN(O<opjs0@nrAGmXq?Q>QAmZS#dJ|q~A&B
zlMB~7oNPU5b28~<`APeekDeVqxoz?OlN_h2f_4PShx`h;d$s0F$+|P10ba|}m#5Et
zf7&y^Ywml!QxX?Ay*8g|KJ#kv>ldLXeNP#BWu4MJm2@iMl%1Eo*TK-wSNTrGdF7ru
zcJhkn<}<9PcKNKmYUSm5>f?@vlRl?@oIHE-gJ;$$>r?(-nWv<@JWm;&Vub2r^s)o%
zzwBdvC;U{q&x12kURI~nT$RCP&-;@m8Pi@Edu5(F?Rmy??)$`3PN&$sa!>s`8F=dN
z$%0ds8CDs#8IxZad-<RG;Awbj`(-w-xKqie)_EN})wbI3S=Z`Qr#7EDdTQ&b^<EoJ
z`8kC;f$BF9J=tsbsUxRWp4xTl_^G+4Z1x)5d!W7TRJqr&Qxm;5oSNvh{#4hgzEcmh
z*PdDm);HN}`l&L96Q|~!>OEENweHliQ)Lc^Pc@%%U-`<*?~eBT-uy}L)#Mf`l&$;b
z_2bn2`Fo<c?p*WoyK~R$$EkZ>-%h<c{p7T-_lDEOikp_WolZa9d%8=pN73CBGGZ1y
z|A;s9<wwW8ow`rI^-egGd1ljTk<(Xha(iz$ZD8TNtLpU0)9$9~;L$a<Gfk&IpMH7T
z@=QNiEX;fHY0=XUPWzk*IDO@`txuRw%9#hJ70*PTes&tPj+uLb)oJ<Dv8SchMV@I{
z1TrPeJMJ`tkJ;7Jr(@3Kosm1EedhLQZg1byuBV$WnR+u{ZoU$DT3vbhX`i*qXL!%l
zoOV02=5(QV{b`{y%%|H<M|(5+<evF=%Emk4jPsf3GdX9%*GHXR=52QMrFZU`RW@(-
zMV!8TTEyq#m4~MVeJ)<fI@4$&xJ&!Ys?#@*HJrY9+G*ixZ;3P4P5sYI*cEfS?zF_Z
zAfM1P@n_zhzJ9v$^mS9iGZAMT&a4Z4b=Bcaop;Ka0G}sUC!c<Qdc|qSGdA9DPuF>e
zov}MDcIM;hm)?wLR-R^5S^ECVnYb4xPF_9f>h<8v&NEBioqyLH(0bw9nNMf7p7|qh
z{rbW|&{_Z$ty^dAo%v)28SQ$0=87lhsU>H+&xoHodFJk!r1VvJtMj(z?RsbUa_<?P
zmkwU$cdTDR^esPg@XV?+u3qhD{9dj*^GNOSvbkqU&dfO@EBDi<$ans^A3pQX{X26=
zUc%4YFZ<klrT=Gs`7Ag$U+K@8Rp%C;TXt^IxrOJJo?CHl^|_trHlN#jZr{1}=Qf<%
zb8h3gZr^q1xb=3NTYhf)xwYqfeYc$3b#D7vy|bszF7o|x&d*5otdU=@-&{ZS^T*B|
zI(P8g(Q~`cojrHp-05={&Yd}T;+)$0Bj=`{J>^&XTy)*abCZ3~pOZa%{oKKGm(MLX
z0gWGboqKgw-S64CD}GyU+&g#Y+^ut~eQ){h_Y*j;fBELQOXsegYx2E+PFC*6ncL^G
z{BE3EZW8Ky_ng_eTtA^3kIr2@SLl2H+{1GZ&b>JI_?*PqC+D7?b2Hw!!^ijhIoGo_
ze$UVK_`UUec<0YK-t!lI|DV(G{c-O1xfG}k-_CtG_w(GpbDPcuo_F^9e(tI=!}-kh
z%4fHo`*rT!xxeS4{XU#~eeUbIPv;oVtDk*;?%`Q$g9H=MT$bax1-}2!UGsf)?&G=U
zbC-Nyont=Fa-QjYitlQ$+rOUUJkNJt<osD*@$-y+66b|)@|+htFMK`<Y{Ge8+jFev
z*PIhP&vE|nIsWtP=f7MO_2WAK*jM6wrr+mtYF8xBE1efQfAXC2`9Ho~=jG1-_5sD4
z)Onfn^5><`?^otIZs@o5T(s}Ab3W^2&nuqSJg?@r^_;#hC?1xaQ#)VoyZ5E&dDZjQ
z2FxZ2Cg*)$pM81m!r9Hf-_I5JX`k0RpLVX#Z<^ndbH9Bg{Ibs_`aM3UfByJ6z4LPN
zGZy?luX}#)*{kP#{T`p=KHqfC;~b0M=X0gLH^8dB&sF%U2MgUW@IUz6_`Iv1w!hJN
zlk?}!&GdbKPUXDe`P(~F&Rspb_=V2-8Gfec!+ckso8=3N0sXUHU>hg-DV*>3Q#h}2
z-glFiU!UKSbDe&s=h@Ed`x^PFpa0?W^US|9Y-d@|GMzQ?1IbT2$9|UOtkhYKv);a4
z=NQg%o_&8-=B&h7k+Y&_#m{a$%X?P#teT(UxgBSv&q|)<KC5`v^sLxffwRJAL2+@*
zSKz$WStDQnvxaBCoOL;CeAeJ>$T_F80_WV$+MIPbYk9WvoR9D1v-W2j&t{wrI2(I5
z&ado2!CAkvrM_9`(#|HGEk2ug7L?}7&c>ZB^lduZcDDI!<=IYOU%$k2J!kvRM*FIt
zo9SC~uH&rTxl6v+&h9%q%eUv;uCu4l?mc_u?2)r9ewpXip55<z=j@uZn|+<n>G&=>
zyZ-FXvy0EpIlKGphO-NNFP`0U_W0SGXRn{VarVvGIp=<!{dD&3*+0Ib=aSAnJ3H^}
zy|dq-e%XKS<5})=FV8+WYkuy<*@tHz`!b&6JSTll{+#SN?Q`Pi<j(c`O**H0j_aJ@
zx!QA<=S<ImLUr!B$>;RWxt(+MD>&D2F6vz9xuA1-eg~h|ohvw(f3Emkr{9co*8Tzh
zrB5mrzc{ktfP%Hnd9(8h)>h|FyMfwX-&`1vin;onx7`I<DRxK0@4T3+(|H)r<Gh)F
z>61;qLH@z#1Hm}xe1Ymowbt_m{uSrT&o`SbxF6+TalY+*j{;~PNyGW1^HKf<=gZD_
z_;=l0rRcOS{Cvsz4*$-`uA7bi?O?j&Qpcs~=O><@aK7jK((^0MFFC*X{QUC^&wI|R
zR^)oQ^ZYjd-50m`@4mS1{89fW=a2Y5Isf2%!n~j7|DJzy{@D2={zuQRJbdf?uk+K6
z-#GvAe5Bu<7dOxUKWM&{;{y8y?h9NOypCQtxp6zoQ@sl(uj*VlVL9os`URy6XLc1|
zNZsIkVeLJifbxJN_sTBVT&TO?0A^QS$Oy>4psc=f`R}K{HR@NT1!M&jTu20yAp!Xp
zN-rb^qy-dQ$iJ{(OMPShg^+-Zfb4)guxQqW4=XG#=&00Q$h_cm!6CpW;K)7S3py$#
z7rZab_G!H^+o$<L$A$I_y{p$>s0f^V(e&c1i?=Q;KDz!@U%>7Q+ZSK9UUNh0<@yVL
z7qc%~USthq59GdRE<bVM?!dhle{NoW;qIcS2;SG~+ruv2x+opUc<<)L1sB-@tu7u6
z;J(NVqAze><hXb+fc4_Oi<blM2VQ!0_9AG_{r-y&E?O@s4&=V~I)L#W`_gyw4KHe6
zlu#B7OuM-7LgK}f7vH%axWF99b}{@S-+~i?H!e0m+;`!{1-pw=FD|}l23Bc&asP#~
z_uen00=e%k2$+0v<;CWU2Cq)MnsBl9V$;R*7Z(InT#UH5<ifWL@fWYYslMp@@<`U@
zS6lqI`5z0|d+}Jn?u)z^g)g4I80uDV%q#H5MT?6EE(%<n7<ly+f8hO#UV$erzP<43
z!lR4%$M^#;Ulh4`=VJO|lX)L5zP<SS><8t%<@Wda=9Mf2%^yDB@_cKCG2bQLOTw1~
zE{O-dO8WIg3`}agOu1xv$vP<eQre}+O9!`mUDCXy7nFU;?2_Rn{auw-S(lVA8C<Hg
zO1`8QWPPdd(s{LlOJzajLBTO0cZ%V38JJ&rsp8UcPgra8!09gk?(;pDx-WSy?zx(E
zmF?Q5OB*j8_pAz%57{2_D<nAd?p5AJ@2@z?aV$!^^6l#K%j{S7TzP)!jGCIOj~9EG
z@U_6pk1jpDbncSFf=!{^*Ct>7aM{%R$mvQ&qs!ASD_v8&>b)ZAV8~@qZI^o1;!33=
z*JZEEQ!l$+o-e=b>V-=Zms|9@F3-5S=yJr>zgJAI_+9O|DjKru>MOU*Q2lEx7VCDF
zUpcpL+M!7Y9j~6ddf<xg)u5|ES5mIzhpY*Gde!Yt_-28t(`@HmY0-<g{OgkYWxmV2
zOQSBIzQlFq-IXa<Ot0L(JpXEubM~pwtC>f1a@Xhby_+2J<;uRxdoM>^nX^4cS>)>0
z%j_%sl(}^SuKvBmc6F;BXf2QHl{1$%URJpB@k&DQuB!~!?5}}BWJeIF{mygcY}lgf
z+f?r#<T#gmb>&s|dG(=xLItkHUfy!q;BwT}pO?Qa-m3Q{`0bV4%MQmcUbfsh`RX;d
z(^v8?AHURfHGYN3&iu=&S5q#FUOjf&?P}6h<*Ra6Wwz`I{&HpW<$H!x?QYv2KR(U2
z^>V^`<EuL^oxPNGS$Ewvx1=kAJ|bt%UhTSSb*=pB;>QlJKz4Xt*>w5fCEhE0f+t^r
zxKKXi?$wyfy_!E(e!N_L+3QA(@|DX?S9-2=Un#sIcscv>o~zbZS6tcsPDA<p)n(oc
zXQo`0yY}m<(bb=!S+_GTw_ouNWxD1S%5*L6GH7jD&gC7Kc3h6WY;&daO5)`?m(;H`
zTxGfTC6w#h<12<CAYT_;jlY}~a{tQoOLtZ#Trt1;R!wMm<mGLb=gS9N*0{1El=oVG
z@YAc}r$T&QUHyJ_btvz(pF!N$5`smq=wAi(OzgcrUxm!NaPF2@Sgfyd;qH~p%Nok2
zSEZm~E+6viifx$NwTLtM!E3ID_^gBKJ9xDul<V4wOY5)Ngl65gx@s6wA1ZK7>WWvW
z_tm1S%PxV^=lLMvYbBvyuKo<#bai#;hO4PrOJ9N1{kaMncbUHH@>R>L{Fe(BzH&>v
z{NT#{P`7KcS439c54F7(Di?b#=33rH_QTH<Syt98i3*Fp77oTy*Zi-A%K2UUzBuh#
z>b3rPRbij5=U;n#J?C1+^=9qk*Rrn_UcdG%?K<0y(Cfdi&%4feV`2Eg>z3E`ue*ku
zMOfYFxPIlD$c<gsdf%{JzjAHawPx+oYlb&eLKa<Tk5Inx?fQ(cEn#BUncrLASbqJ;
z^<UTCUvIfCaO2}O(d%<#Wbf+USaYrE`tNI3u2o$34wt{tbFKTD-|MMiAd~CES#O-U
z{^q)3xcm*?8x7ZV4vXHXyH<G3{&4j*@$0*<3*K-KXT7oiI`{R@*QQ<TyWV^K_jUCM
z%NtGCx~{2&oV_;1bl%qY*Unw9x!!QS>)MBF$FCo|?s0v^b&VT*H}bA|UjKA0``Y<y
ziZ}RgG=|N%-h9nHy#9LqwR2(0H~g+&y8iR}muq#`D|~bP)GyDymUvw;-23{E>)$t=
z3uC`AGu-mV`Rh#APhFcD<{EBwV`jMe4G_!h#=C3H&U5a#+;F;a@F8ea!|wQcm4>B)
zSM|3itAcid@GSYhHd!?!V$P$77qXS(Zj`El_DF16n5`Urqf{*>BKSedjpQ45ZkRpJ
zzd7&5tHoPygxx%?C98evhQv*wby<-o(w{ufyK&ii(}kj&Ki~P^jP-qTqxQy`8+UIc
z+~m30dSm;IhY@EUKDd#3<LHf>H_k_#d1!ny_U4udqnqwGg(97AvTxVE`Sr$^8)l1m
zSN_>>;s*aszMIb?oNqoo+jhg^rq9i{H=f*hbR*@a^v$jFo<#`Ve0oFnrqlNIH%e}{
z+<1KB*bS4Lb8fh8`MxFR#@ZX9k+nBVZl)-wF6Px-x!&Tr#g2A=PzwUoX6W$mym{~@
z<NCulkKCLUxhwMI%_)&bZ%&RpdXvxn*v;cNCxFFH-#mNs+|9j_CvH|A-!$*k&GR?6
z-@I`1K;)sDdv0!sym+(MbVB5;$dfm>-CQ1d;^vu~n<Ee1?7q1<^1#i$oBcN@M^3rP
z=RWP`jGN0N_ud4l+;wx!&4oAj-&}fg+0FGgH{INR)BE)M$Zt2dZu)Zb`OP0UAK$zl
z`R(Sto7W@X-+XrSZ{+`*Kf(C#O~$ANw;7@q++K8h@$H4T*WX@#d&TW#w>REidwbRG
z)wd&z*4*B3d*7{{x3}HibNh+=^W*X=Vat?vAGp2!_U_yJZ$F&B@Ai({`Oz0|pS=A>
z<?!uOw_oh>j6Qff=hmUy=_;phXQ@nDlDlN<?Gv{z-9CT&$n6WakKaCb`{?bnx4Uom
zFL`<U(e1~#uin1D`ugqXw{4^D-+p-e!R;Hj^P=zGetP@a?K`(`-oAGG%I({?FW<IU
zS$mu1_Vx8kZhyZ0?e@Lf(+rq4GN^vM{qFYL+qZ7NzWwI*``aIGf4%+b_L`_Kw^v1d
zx!n-``?ldy#ykIRv)}o9`=uAx9jRN)cUbPQ-Ql?N|MvIWucP?yJh}bz_Mh9VcXr)o
zy2EgX_m12h**kxt#O_E%tKNBWyEj_oj`SUYJ2AJ<MDgE&?Q@D(z4=u1j>MhKx2Ky)
z-r>2kH+sd3AGf9MJctsz^XoSE9icnIce-w!xy^USXSd89^*e%h6z{0qQM>anO7+gB
z+e&v7qm}O{L@VEszvH&FF<R@6&Yikw?K?l0Zn>>-r$$9^ndY7ADw@k|q7L5PdE4mD
z(%VkUqNDZh9J{T5NB2%xwBDVUQHFQ2mf3{<yqc(HdgtKo!l=8qjiWB!UU$1?>E!5@
zw@vOW+4So6MYqStI&bMlYu{NL_4~GVwAP(j(Q$V<@7z%4Tp53Bi}s#}PohNb9G9CA
z{oq+&^n+*OcZ#A{-Zr>ncBeTy?ykZe<2wvdjJG&$G2LRm)qBhTw!kf(TYR^Qq9@-L
zy(M-l!btp<@U4Q|T(=}{3Eh&u{qdIZZNFQxw^VN#-ja^;xqa=H<}LYK-=kK%(7mN~
zOZk>fl;>^7TV}UHZ$;mVxE+2g;FifPt6OfjSZ~MOintYWE9{nWRQ~OtTWz;mZl&F-
zzm<8b;8xA81-DvnmEJ0h%DX-FR?e-wTe-KAZYAG3d#mVH@vZDzk8UO2s<^%I*5X_9
zZq2$i&tS=|rMDPVXWUwGYvQd{QEP53yEW<7>03W;oxk<(*4n6s+ZS)`ytV1p$y>K?
zZMb#)*8W?EZe6-{<kq%Z$8WXXe(AO67Q^jtx9;5Hx_u_<^{wZ(L~b+QX1e_(s`vKW
zTMwfC+?sUz-L2_npKtxT_3Rek?R&TG-qN@|=eF2w+1m=yinqmYKa7&PEqPnuw&iWR
z+uG5Mw{@fIZtL8Rx*ZlBeLM2@)Y~z){cg{@U2;47_O#m$UYE~wtP!?bW#@1QMB3je
zzTC9NKn{G$!}DuiuTB}rd4W!RcwQU?YW;!QejqydPSl-<JMDKm=4l-+yOVck)1fVg
zrrbGsNbP;fokxeZ9BMxH!-@AW*J1s`+J|fI_#du2-0W;~<8PSkUAemvDi2i@?#kbl
zHB!2(cvt(b`d!VtT6gvDD&L)|^eRT<u7EyhZL!{6<GT)b1@za&7~D0zt8=$tp7~v~
zyOwuN?poiqxNCLS=&sXU$Gi4-UGKWwwYyuXoU*~@Zr?HCSm(P>Vhrzk-1WM<Py5Q9
zecG4rxZm}<8+6z6E>~>a-GICPcSG*Z^6l{pzAF@~ayLx*(~5I3hIhU1hTfg3v^GZL
zuJ2v7yFPc_7KFvxya>PR8|(Kz>Tcv+-Mi6uWA28Vs@}D|8*w-OZo=K$F>!YT6vSg=
z?<U?&y6blLQH;vnvoX$h1Mm9X4N%~YjlG+E*ZJ<>u(@~U-C1x4<mdT!7Tu9GT6ky8
zokuZ3cf(B?@4mUS;?CNbS9ez4S#@Xmoo#pi+*yBT^&OC(H{UrI^W@IKI~(roxwGZY
zt~)#K?7y@7&Vf67@0_~Ba`(iYBX>64Ieh2PowG5*u`+j$-#L0m;O^Bs7w_D<b1CN9
zoo9F6-gzDKJ;v|7*xh?~?%WZ%d-Kl2I}h$Wzw;%==Ec`LtapFk`E}>-oqu;gE)~Dq
z96c-gb_~~D_PZQ+dGGSymA+f;@b5s*-K@KXcMI;$ygT)-ypDp-I`BS=`}dpfHr`!v
zciG*tyQOz0-tE3yb?<O&@4ZcTH{R{MXK`<RZ0|jvdz0?{y#MR2<~@OXP4}wqh2EQW
z@9Ev{dk$+}2S{J+bL~HBa!)F-_+r<+uXj`KeYu-*Z^Mbn_a@$3bBgQU?z{f?D&rR2
zJ95|M-oksy_kP^{c|Yi$Mx55YuDGf9yyF(#TNC^J?$UeT?zY@(zPDq=j=MZ@1#wgF
z{f=GtY<=wEyQ}W$-@A8L=Uzcv*S%Hue%@VnFYumsT;;v`dvosf$IZOA`JU~C1NVaE
zAtzsKy0`J(ntSW-f%>227lP$CfX~B7yPtkP<NoZ0S@$#VXWyS`4qCyMf8R4c=YD*A
z!Ts|4756pcJMI_WpJ{$OF86-P{nGnY_lxeA-4~6ozF%`c=6>`2ru&We8}8TMue&cD
z-*(^ZzGQsMecR1v<Xi9mjjO&d6yI{6C%)~zReaz5&imc>d+&$e@4DZ9|3h5I{k;1<
z_w(;hyx)JH|Ni9rGVy))C)}TOfBJp4OB>Vgq`!H7X!o@E?#EN_&$$06F6aKt`}Ox{
z-B-NNaQ|^!!Tl-sEAJQIKXvc)y)*YN-Me`2%DqQ%o?usgyQg*kew^<8$8quZKi&I%
zFXjG^dq3~}x%cGW>w8J}f8F~VCwl+iJ<j`F_x<j3+-JYfdY}2eP`u=Qk^4OH()ZQw
ze~8n(FMD70zTADC`||f?;;rr*-?zT6f8XZ5#r?$luJ>K;+ue7&?|VPw{=E1l@oVqT
z1(T1SHk)OgXVeGnA($IKFMjR)d5akJSKMdRUw)rae_{Ok`|Iw5#FyM(4d$=BKWE{#
z`&;ktitkM5dax5r);zFG2zgNc;PCxJ_n+MNd(ikmR+(X)_k)%Pk`Ig?Bs>Uxp!}dd
z)-|E%!Lj=s585C6Sl6(g`9X{RM19c*kUb8d9jU4h9>&JsbC&zFF7v_r`%mvzJcxM^
z^guWv?txH399Z?|`#103gYSa)tM}#pga;ujE$qA=WGuOTe_wpagM<hD53&~IKe!)X
z^kA8M=>iKog9jJxAHUD{0Mu%Xzp*dg^1<EvRS!}ha6J%85Ponc-s-{neUT5C9ymU@
zAMg6$>bZmWIUj^S*n9uP{TugR-rpI&D<0&_UGbd{tRJX7kbS29(CXpp2Z7s{JrH^L
z^?}eslZQK$LA%<|Jdm{ptrgq*;8Mc92lpSCJ=A@8F5%t-wuk2uE<HH^z~iCV!*37P
zJ$UgTQH~RQa*ol%%MTLez9)cA(E-t%iJ}j8K3D@5<4ojw`24}-2NxggP~M%e_}PyK
zyB=J4;P!Ct1NVnBl%HzcUg!SM{Gm;v)5B*El;=%(*!gh&)@h0J9(F&has$n0<|OWZ
z_+V*z;_in_64yLD`tb0>9f=1X`dpm)Fyx{9%cO@pR4U(jKWu*(n>g=bm0Mck#)o@$
z3d)7Qj!m5QurP7WLu=)ey9*PSfaRt?tWP}fFg-En;TG+l+x3Y%9=hJBdszGMfcC=8
zrxH&;JORe19-fbQc;k-xkrgu*UrKC!axt;>$*siSiEU5XpY%LoP-0rt^`!Gj_mj(s
zzaKt)*zu%Lu4&$#hw@32pG<g?ys7`mq$e*QA)g5`Md{DO=}&r}OnuV#<Z|Mz#I`4>
zvL7C<f3o_?j3;ZKEPWE4bo9xrCkvj;eUg&2^2w4Xi=Rw<GVjT{C-ah)KY9Fc{*#$c
z);yX0WYv>hk2@W*o>-)udy<iK=E;dC+nyYLvgOInCug5*c(UWkfhYT)?0Ygb=|z%a
zifPKhCv%?cesb!`sV66&Xeb?ja{9@kC)=NFesb&yThh@dyPkMFKJ8}fzx4@U(#j{B
zp6Df=d9vrp-Y1~BL^V&)jA?OlU`kL*&Xe;`K0LYf<js>;Prg0*{N&D)TTdQ8dGW*r
zV#||9Pu@OpPI>)gZ_=|Tp#Dz84Y@}bpL~Dv@yY!sU!OdEa`nmkCl{V5C2xFE_vGFa
zu7hur1fH@xGCbvYD)^N1>Fh^$p9nqWdAjh)lPA}oa6kPGwZAYa`U%(5{1oA*jmbBj
zusmgcD)Q7NX)4%X>`&h(UVb7LBp&qZ$>t=1r`MjaJ!N|O_lZl&k0-oO^`9<!BKI^@
z-{`T}Q|+gkPo+|>JW+ir`c(d@%G3H}!>8|_NI%tis{2&t>Dr`?Pt=}DJym$B_;inh
zr=!<nrKgflL-ko68$8Xp(e~uelNXO=pK3hSdOGEa$<u@+W3Vcn$E;5so|->>_+;7>
zS4Zoo|DU*~*gmy*YV=g%spZql$y!hCo|Ys*LQe0g*;DbS^HZ#zN<M!4$nmNDQ`e_~
zPhIZor4&3pVX1Lpo86Ry2a_3}uG;STROPA1Q|DBn_bZ+}y~32@|MbC=mrrb-20UGt
z?EZ9ZvisAZr@l{vpZYx2c;xqV+T*yV@lXFfaeEs1G~sFN)BMN(pO`)ke;V;L`YGtF
zlX9g`PkfzYo`yYjdipn+<Eh=_sHe}Lq&&@f`ZSs2>9S=1r#GK`d6N9}=aaOjiBI{T
z&VQ2qlt1~(lg5;!ry1aIevt%9KYUO5pSnEtdD@d)@HGEvE>uP_<=~UNr#eaJp4@&?
z_;gm%>nER+emqHdobxo~X-QIXGAPY}=)jbmC#$v>Jym~No3a}oueTp@X2!oPd3xkY
z@l%aOsZTo{G#^1!2R%uDdjHYVC#6rzo|^dwocDT~`BeF7RLbrr>mL1ID4UY>)cfhh
z#7hq^C;m<}e|+WP-G?_GUVnJ=;nj!VAO3py{Na;_LXTcPeEiVu@y~}*kH0=-ex&?}
z<B{4U*GIgML>?(7)g?=$SUu%@bo|kuM}m(89<e4BJh9y^_h`{$zNC~#>W>&7sXk(P
zB>ITqk=3KMNlK5?9)&+Le+0@SNso*lg+8)<Wbr8Oky}z!O6`-JN4bw29@#&#d*lL2
zlTQL4nLJ8(!j=^MDC&`hlJ_HnN1l(|lRO^zKGI9dcx3rVC&}VT*`qa&7CfqY^zspZ
zvec7RkKR2x|LE}}<|n<6te&(!I{0Ygqh*hlKaO}j?a{<XXCAG5H2cxl$CDqed|dx%
zR+96R>PIskNj+ZusN&JmN02za|G4=P_mdTm8Xhfv^f}4pi4ZtXyn1x=k;UVWk4`*}
zOTPYi`=e=(KRkN+NHO5aBk#xWAH8_AGwEsa-^Y6%-F<ZF(a}fW9;rPMPf>reIqB`A
z-H#4Gy8r0eBcaD^kE<SMKGuJ%@mTt?;$w%$jE_YhYd+R~toOL)iA3_O#{!Sl9)~`0
ze9ZCKIXV9^`(ydX3Xe-4|9E8lSn_e|V~@w~k8eCKdmQpO<#EpAy5#v!q93n%obb5d
zam!=h$4!r)JYM)%<4ODDGmqCMuX{ZE@r=jiPnw?WNY;L``SJe8%aWO%ta;q^c*EnZ
zkA0pzdVJ^c-N$Die|UWF@x#X#A0K{v{PBgyB2Q#f8lMO}`TjWdiSU!$Ckjt0pZt6*
z`NZpq@e{KrMo)T@^`6*233-zIB<@M!lcFcj<@^;vC!vAp^3?jLu5xbkAnb~#FP^@9
z`s(THr=6*9pT2q8p8EDF!}@PeKR;cN`r+xM)K5<*rha<*<>}X_Kc4<fRe#-|`r#?l
zvtmWi`BRL~IF>LxJF?{0)4xxdpRqmr_jFS#>$8oitj`Xo3O(a`mZrq{jPDu$Gu~$$
z&v>3~NfmllzkT|)k59kZi#!v3Cisl~nfNn_XaApyJ(GO){%Nt|qSQN2r<=m|q#%0V
zZ*GC)u0NG}Cj3m`+5G#`&;C4Zc-r)|`DxqJj;HOZolpIjUVGY~y5Q-FrxQ~rJ?(os
z`RSCWJx{l7nDKOGs`~2{Pvb5;eY*1L+NYPFE`7TA>B6V0pX$Bdn7Zldnx|)<?t7Z1
zwDak<r<$+#Ki&Iu_tQO3A3i<vbW7^trw^Wfvp@Cp^wTR(FFd{U^y<@lsoJlfJe7Sm
zF+t{8*RvjZ$mwjxX|>NRp1CW>J#$iTUE{BwzdUfc!}8iwYH794dgN8XC%7d)Q`6{s
zrtxguo(y%zXBp}a&t^ZXc(&zP@w13$tSe*EV$<rMomlSqEHthDS?Du&WzA>(>(ew$
zpOrs@?EeMr2cDa@{@K)LY@VPMFd%bH(wd%mJWGA%_KeLlGi}wgDe96d)Y6Qfg{H+k
zGtij20-~ni**$fY74pxfZ&TASd$!_PlpOf%KaY%Oam(jFb44;gEp7d?na`r+CZuhA
z25PYwJnRRXT=gtoee;U$dkB}LrOgGaTkvegEB9yH({?=D2FBZ;ozzC&0sm_8>1U6h
zz0Toy`%&S?o4wEOKD+(Q$^6c<Y<)wQg15ET&McOGcRp?FTPO32&(1#U&pnc>_-@nM
zzUT?Jcc0w%OnT46c}~y8pF2L6N>_hwdK5(3KL7Hr)B&_UcHf?F&wi!-OH+Sd>cExm
z@m%S-;&TvR>bcAF_M4#IbU=*PbH?Z2pM8F&`~3J~kSgit#}-3mte>CM-j#;fs}JJ&
zro(pbLwJ7akbV3ow1b|X&<=ba^}I+?Q#1B?%=6&qkzjVn^J6~A>9Ca%NzXUBZa9|l
zT<=Bd^W5~p=h^9n>Cc~Mr{|_Wf4=Xz+u6=^@%Ihs;_tUU?|t6${N>ui&-Xsx`TVr!
z^5>^Lmpz|<;^cG3_&d+<KJR`$|M{fnCC~Hx49-t{?!0(T#FOXipFey4{P};~7tdcl
zfA!okeq;KZ=bN6tem*DS#Pic2+tSZG|F3)Y`Q_&~pWg$U^X~cE=O3THf9{_j`2P3v
zug}jeDSc7)qWneWi>enDFREYEyl8sS@S^!e%Zu6<jW6n7w7+P3VUf}CqUS~D3)PGX
zFH|xnyy$;nkkR$RWMz8#q!&6FT`#&{_<2oxG3A9+M#qZ`FUabm3@=OYDx--nzQlyx
z1@WvhCck+5YWj=3i!)x#eKG4rNXDEOGhfVp;h!<*g`HXci~Gy$H!ge;ow49WRK|iA
z)o13vSoEUq#gZ3GU)Y(2zF796HRF1g=(~9@mcL+p!SsUp1^Wxu7i=#$GNfK}y%2nn
z{zCW#-wUA^JTLfP2)roFxc*Awh4>4p42u_vFLW{tUKqWQdEvN!(?PWtDjBLTtY7H8
zfVj!_h4~9VFOwH;FMM7Ez3_Vx{K7vY<c05x;ulFTqB5diM7~IU(S9!bMb3+Y7bPzY
z<Ups*y;J-iwKp1c8r_8#+cS=3oXEKN;?j!`i}e;=ez6Y3e{to-`4`t-Tzzr<#gU8~
zFAitic(E>Hd&cpM6B##O90RkDW!!oJF$;8-C(PUx8E0PXda?G!x)<wTY<sce#hw?t
zUmSRGIOE8RV=qp;xcB1s`P(lxsDe&B+Ms$rBl)Gk%hZ=CFVkLzzsz`<_42xB_Dimp
zIWIqD<h}fmk^A!fi+34$FH2s|eOdIf@MXcv;+It~D_$yO*1U{KiO(#5S*^Ir|ILfi
zmoYCZUsk_-_@efudS>Ix`j<^F>t066H@w_(q2*=s%lwyJ4_Py7Uben$QWeTH&1`%r
z5!Ckb)S2UF(qBftY*JN!+4-{lW%|p$msihZzU+9}|FY|4&&%GIlU`1EIq~J>mmM#s
zyxe^8*_qUrWiMa6FnP)QvioIB3TI~d%c(CxzIgEB@ry?pfiIuFFwV4m`SOL$%U3U6
zzj*rs<oZu9<X--J@%P1_7yn;;dBO8C=q0F)#PX8wCG$)Em#mozF9lzUy%c^KDKGI-
zC{z8V=u4TG(k~TXYP>XmX`AW&((I-E%ea@0FP&dny|jDj@zV39>r1bfJ};AAetR+h
z<-C_UuX10lUw9-l?^W!pf>-&kie8zWOUf#FRs3pWX5Opltom0~rjY%WRi?+l`z)(p
z)xN5HRr;##Rl}=_S7op6W!Aj9n_2U!{8f)asejX}j#urkieELqYI~)Z75J*}RsXB*
zSG}($znb)F;;RX-gtNl4dS01l&3YvOX3c&z{ngA@L9gb$n(^vuW?<IbS9KSwUI}H*
zdNu!*`>Tboo?V&qYTBy>uNJ)m*?%Il@Ril8)>l(sHNIN>>T9N6*4$SbuUcLSWC>^W
zygIevXlDJZO)r<c+MikSYWXX^u%)k-y;9oU^{VsLnwM)|Zp=LLa?8ujFCiwmzS{Zn
zVCK7*`!kbXU3q!?<^7j8UtW4?_UgjRyP5Z1UVM4=<<ZROS2tezg8lXI<%gG{ue@G;
zeEIg}qnFvQvR*NQZ4H0L^y<gU|1bGp@x9`G#rn$UmD4N9SDVswU#Ywj$})c?_R0|)
z4%)9QUOB(Ad*$-V|5f}ezOd9+X|GaVtpktv9E-d1YQdWwftO#Mf7NjD+N-Otj=ti*
zxFhh$E6{k*vAC_T&Ig`(b^29dMr(%XyPL0Wy!tO!zW(Q{_pg|;m0n*|e)r1m#YN>;
zub#e&makv`<dyTHms!HuO0Vm-KfC}^QT;;s^~)@#Y~k0^ucw>dNQLZd1+i4Ydt7Ix
z{(O353HLLIh+4MpYbiKe>ov<WS?hxdhOa@S!E4LcX0QLqFFm8PCgQc<Yuj+o*Raz{
z%-0CY&3Wkly5>#oo4Pl7Z+5?Kc=P{V<C}_{jyEcAn%>mEX?fH7rtQt`?Co!Q-gLg{
zf7AZv=j#b?df#-v>3TEi&5SqKv&(Yky_x!E+MDg!-(OF8GyBcNH=uF9>e%X>Id3Mv
zS@mXl_V?Fw-=w|1@p}221#cK~R=!#C=5+RoH>X~&d9(Y?`ZsIe%*`%)v+s3h_Vzbh
z-fVoc_06U?o8Rnsv+m7?H{0IqdSmrwdG_|~18@3YuYPmt&GGD&Z%(|K{^rmdjhwx2
zj=$l}Ir@et=jfY#Z_0CyygByf@Eg6HgKsXqx%lSvo274xU&rN~f5VY;?#+caXWvM_
zS@h;i4*UDdZ*II<_Ga;$uh~1_Tz_->&6PJN-`sq2_06>$j{JG=@4vbG=I)z2Z|=RB
z|7On{)i-@_X1;m+=HZ)1Z}z{L^(OiCgEw=tuV>GDBan0CO;L8on}tySuFIbDChB$c
z>!jD^uQOifzb<)Q^}6wO^XtCXMcEZ^x?fLzJ?VAV>(yZsU&p`ceLdmz+SjvQZ+^Y%
z^}N^1UNgO!^E%;8?wi%GAz`;JyZX(p*Pw8Tc(X6-;OnY4hHot2oP4eP#{A8J*QZ_|
z&t`bD?e*W+mtJ3c{p$7A*RNkceEsD0^VfG@KYIP)b!YbN*DqdMz4`L`%InxS9B=sF
zWW4$QTKWz18{szsIpuG7a(Leez2SVr_{QnY|JMp{jB?oD>%P%=qxwekjr<##H^y)5
z-Yg09c;lJF@!tB4=^NKKHgCe-1m}dj34asxCjU*!oAfuyZ+vv*-@R6R^G4y_!8DGy
z&)=xLd$LgZozlDG&otj@ygQio`b}A`+Pmwys_zWmnZ7fACzEINPVb#duHieaclz&i
z-|Y%s|JLH2<-5agt>4+d`}NlLoz**=ck*u?-Z{T>d*}FW)mx8uak;MVVsl;JxxDjy
z=kw10UBElPcUPZzz2nSPdl&p}Nv`j^)w$a50^bF_yO#!PZ+X9qd>8sI{9V|)y0_8q
zV%|l*ZO_$yr~YnNu+H1~cd(X_e>&(yqub9C-X*?^c$fSx>Rr^kq<3-ejNjf%>(5nu
zcmD0kw<q4lzB~3d{axxizFgIJ=I=7znZ3(;7xFIi-PMEH@4n=^zx$l){x0WT!8@DW
z+;=ALxZdTz`~SA^-LA_;?+P=nXXzl>wk0>^UCFz&cem1t-^sppdS~~}N9XCAmv2C}
z9eMlh&6hWy-tgsKf6JL$_IAx%_P1<rmEX4Ku6`@}PUEfITeY`BZ{^?0zLkFa_pRvL
zr*Ch*)qiX7*6FRuTj#g-Z{^-uzYTaB{8si|;M;_^vAJ<?gWi75{qi>EZQ|Rax0Byy
zy{&tj|2F4s-rLT%U2n_ZzJ5F7?ZUUS-tK-o?d|^D18<kUUHSIZ+e2?Rz1{hC*V}_{
z_q;`f(w1DYch}xZy}SJO*4y`QpS}I`_Q%^_Z`t4de9QBW|DE(ZiFYZ=<txfPHhR>&
z+o96;u<l*?2@tR1U8cr`V^!~3-z|C9{I369`#W2?{8a&mr~9<LTlQ}0yES<`-W~Hv
zN{6h$1+i9vSL3eC+wqQd@h7u2KA=77AbNe?POwT)t8~}9m3eF4K}5H}MYq2D<oemw
z<f@09v`(wu-ggjs&$}b<et8^zcjn#6cQejhdUx^N&38B6eSGJmx%0rccW>WCE&TrO
z)4M0{Zohl=j`R7$cQ4<qyYcVc-*>s$-0ykb-@Im&bLNd_&b6F*?|I+<f5-Hm^S$7E
zzV{0sZ+F{sY|X-k^v>ss?-kxR-LZUc^8V;j(76O%rUCD}P5ZWfkMX_xDLwE#M9k~`
zr*!}K`PTLCL*57HH@t6r-}JuqeZl+o_s#Fy-Y4a^yid$;dH-u+$9vF;h?keGSyGta
z^}h3c)cdUW-S2ZR_Po!x4tgK*KJ<O~`}p^X`AP31-zU6}d7t(^=Y7`uqW9(R?|4nh
zpZR{m;(6=tc=hJbd_U{`?DwD*>QmlNecvEA|2=3meZVPDPHvE!^B#0M%cTvBDn(}y
zw<050EDZm_fR%xb;s1YjhX4OL7`Pa?8F(1}|L0}+|DTURfI*l+1guJoL4rYw;s1Xb
z23ZD01|^37|5X^&7&I8P7<3qP8T1(p8BD<HOc^W~tii1R|7{rl|94_=W^jS>L6*6K
z+3pOUVA_Ylm%*PQkRg~Ml;QvXaE2JLXe^lg|38i)0nAEaNM-o{Kb;|y;s5_^un5Sc
z|NrwC^5MK<hX4Od;5>+Y8ACamNF|(K!|?xq149!-D^#SN;s5_mhAxI~hF*q#2GBii
zlNqKn%mmBMX88Yq4#QlAg$#=r7Bl?+zm#D)!)k`L4FCVH1It5f+raSu|0ah2|F<!0
z2aE1t*vYVqVK<n)2Tbl|`2T+&!+tRP0K*}M|Njp&90Bu=Gn`~N#qj_CX)x~$!~g&1
z87?whVz|Qa|NnKc7|4#B47Z@{I}CTBtb0)U|Nr}7)?<eM|DP~CWq1bWfpo#}3$Vy5
zhX4QHFuY}W&+q}vhsk22zapvl&hUfbH^U!>zYPBv{xdKzGBdI<vNLir{{PR#$j!*Z
z$jivb2r`48Q4mZEgGmuaaWE~#`2W8&m<3WJ17*oF{{JrrW&i&#&!_-r|NpNDXDczP
z!`T{)|Nm<->N5WSugCcRzdl&pnDPIA6EF*8wkezi;+a8t7L5P@TS3_%ab#@GXv6sb
zza5gSJ>&oX&W!*6yC8|VBC#R5-55O>JsJQ1_h$V6--pqc(VsDZF_1BcF_<xgF_iKD
z|8Nu?5sZ;Y{3s|pnlT2-`u{%`%!*_D|39Ab|NjIq4`Ndy5*s4&|9>)L3S%l`8e=+R
z2IK$#nT%PC|Nmz*<}l_m<}v>NpU+qb)>F(_0;XZQKy(>n6=Mxpw2txr|9Zwo#{d6Y
z7+V?t|8HY#XY6F`0?YL>_A&M|P5`q(x+cO|Am0D~lNcvMMW!-NXZ-(v29)>z|13BQ
zqH;EvKL<?CWt`9W|NjEU|Nj><{{O!SECx}vm~jc?|Nl#oME?I@hQj;*e<kB8#?@$I
z5Z!CwqH7ud|6d2^L1Z^DZe;xbe>3A2#;uGy8TT;$|G$@UKjQ&3RS>lx@*v|8sN7K~
z{r~?l#{d71GoE5R$N2yM1*qsn#><S?82|sj&Ul0I|Nonew-|3jW$rNk|9=<CzQ_20
z@gd{?|Bo2||9=b>`~Uw5<NyCp8UO!(#`v7^HRBto_*=$zVAgvu`TzeXDE%2se*u&K
z|9@rt|Nk4~4=C>^<NyD^!0g|Qe;EJ&|I7IQKLZoUAOHU|GBGjz|IZBN{r}GbXMyC|
znAn*(nEwCggo<)8aYI@E|MN2a|IY{I@iPg4S%P2^r1SrOVJ0yo9!N|a%$ER@AU*_3
z!ue86|Nl!f$uP+>$$`b>!K5OX1gTYG`u|^<NtH>RNsH<Ke;p=WCPOA;CR3*W|IL~H
z|F>YWWU^xV|KEn`|9@Mk9y=&)&-DMl1CtZe|NqWRu23<MiEd2)|GP7JG5It7{~rJr
z4`llPKbYzN|4^oIrvLvVm?D{?n4+0tm|~gYnEwAyWJ+R6W=dsBWBUI;gDHzCn<<AW
z7pxCtS{~E?|M^V+{}(b9F%`o_OPR`;%9;NEuVDKBzly1vsg|jpsR=CG!qm#t!PLpr
z&D6ux3l;&H(#O=#^#A_^Fn=P`|NoPjrZ7!qn!z-a>Hq)POmo2E|NqZr`u~3()BpeT
znHDfD1dA;KlOPk8FfC*H|9=J3|Nm>4)-i2h+QhVlX)Dt<rvLwUfYt0}+Q)R5=@`>#
zrvLxXFr8((#B`bI|Nm=D*TJ&4nC>wB|9_9^KGOrHhfM$fKW2K$^o;2_Sneg$|NpPS
ztT$j1WZPS&4@@7SyiZJ@nZ7W6h4TLY{{?6LX8ObQpNWb2|9@6yHf9cH9%f!<kZwLO
zDa8E$zc833!Ys=C|GyZsB(oH=G_wq|EVCT50<$7mP6<r@|F6uf#;ne)!K}%w%d8I-
z1DR#c{Qti-vpur|^Z);jNa9Y+Ud%qszRdp2|NjTT#RHlD{|{jfW&Zy^mN||&p85a(
z6z2c`GvM<7|7SwkS<Ja$Rvz>J|M|=X%>VxvG8ZvdG5`PH#N5i<&iwy>Kl6033Xm%x
zcqa2~<~hv&|IcHdk0i5z`TzgL%uA3&mNTzlUdg<Mc|BBYBa{Z2vWfZs|IJ|j7Ur$Y
z|Nn1i-ogC;|4!yT%=^KjAT<Y}tfR~)m`^eP|9^)0Eb}?$|Nk#CUt<3M|0?tU|JRuR
z|G&=s|Njl<o6P_J--fCO=>_3C%y*d|F#rGm7%ct-Og;mXAlc_&)(hrW%x{?Ag4zH7
ze}K{;d35}d`TzgV%wL%Q|NqAPgZcmepUl7Ds(&;8VgAefAIfK7VPs)q`Tw7Vg_VVa
z1!fL6%m4p8EWB_&KbR!|CIwl9SpNSPWBLDIoaO(2Nfs#<Sr!GB|Nj+Plvq?))LArH
z{{Poz`Tt*+MUO=vtmFTGLze&ljadHwH)gS7`TySrDryU+?O7aHoWLw+7FRIs#^S-^
z$@2fdH_QM3K41}$yZl)G{|{sdVhLf1Vu@ynVfp_*mL;AgfhCdU|NkVgs$`b`|5L!M
zG?pxuY?d4_`~Ux3mOPdMmO_>ymSUFw|4Ui^|1V=Hhsss5RIyaEG_d^t-^9|)(#q1t
z($3Ps(#i7we-BG9SWO?x1eX8*C$UUnna(ncWiHDCmW3>fSQfJ^Vfp`mDa$gJl`N}R
zR<o>O`Tu_d%m4qIz<M^bY-RcXe><4HljZ;aT`c=p4uE+epBw?Rj<cKs(;$)4aMu6-
z7g(;a{QrLyDslr%-(<PX^8f!`FdL-)KFk0A4_N;Hf5`Ix|6{P|6PEw~pRxS^|D5Ij
z{}*5pkh=f>U$VSnd5y$}h`xi0ya&@C!Q}t{-&uaL{QnQSpBJL)56l1me_8(j{|AwW
zkYFhWRwh;!*8l%mS=m@Y0_?0DtemV|te~5Hd02T_`B(*6g;_;dMZvNl706hORh(6V
zRT3;G4JMIgk=ZgBvhr{d1=j!nmBBnUFsTkEVY)S0|Nqxw)n?T}5!HqB^uR0wFlos8
z|GzP-8JG>xZvkanvD!dc5OG@+9!Sg{D&oNE!s^QE#_G=c|Gx+8|NmZKac@>1*8l%~
zS^xj{WBva>5G)4L1;ar|BEe901eA_~(jc|bP<AYsjsue*@&Eth!R!Pu2@*+UO=A83
zKMl;!Vg3I<7tG3I{r^9owSct{%qs$u|Nj?5X^_4WB=-ORr6|1r|I3j0<w$Ih&j0@_
zpdyv5^{oH@x3acD`4HK5)^65`V3BEH^8f#tQ2PJ>S*){J=ddndT?iFf45gQ_{{O!e
z$_AOTjP?Kj6|DdNuVVfGe>IXgNNxj|zln7Vm<EYJ@OIY!|97zd|Gyhe93s1ibua5a
z)&s2n{~u&M%zBjd|Nj$EbthR*Ls@58|NlS7dLGJy=)1srk@XT-<T9B2|Njb<hR7qx
ztE~V3UxUhB2h%rL|Np-UX8r$vi}nBi+fX)4&mA!TE||OrCSfwj^nIwzLoodaO#c7>
znDzhvr>xId|Nno^`hxW}R1|baHnQHgQ1N%H@1d;!|39*RV*SGU70Um{`v3oT)*n#b
z|NlRstY56ZSwZ)0|AX@X!)UPajBFr^iS7S?W;PZu8^mX0<6z?i^SIc!!Sw(CJZ!w6
zJGR;W|L2E_{QoZiW(l(W|1ZQQ0%nV|Nq}jPDUxje|4YGnAQ5RePX^4AWs?Kb|Nkqp
zDM4AvQ2PIWb+-Tib=dy@*JaaV`~P2`&4BIye?z$J|Nll%wlSLtn<?A>|K?Es|Nj<n
zmL;1Nn>Cnc3nuN@?AaXI{{MFZ^PJiK|94^g|KAnN`~TmA&6_Qd?f?HEFh7_rk}Znu
z|Nm&VI50nvEd@-cvi<*`#+JkO|9?JP30o;!8CxY=4O=~11Ka=qtzZ>xZ2$jvvrS<8
z|9>)=KLbq8WShe_7tET+_W%E4wq<N9+5Z1u#kQJlEm(8|+h(?HU=}E>cCh{bzl-hv
z|J`hR*!Dq1_p=>@vJSBw2D6TUNsxLNKF)RmEOrV^o@4v}|2&ullSig6vR!4n#`gdJ
zb+#K|HMiOR|G&p}pX~wLGq&e!FWFwRy#<TEXZyhR|Nlp}Pi&vTe2^Jm*}k#;VEYB;
z|7QFD{|}f2x`+Kgm<3V;!3^yG|1+{Pu`{!?utP*xp)`cY#?Hac$<D>j4He~K=Vupy
zvj6`VWEX<6h1o^eMcKvJ|Noa@|Nmc-{r`U{_W%E-*=5-O|CfcTftV-<=PAHh|Nkqp
z|NpPV{{O!+lGy+MYV6wVI&cwPc0G0j_W%D4+5i7H28)`4Nszf_a2AM%4V%MNSg>2e
z**5I9?EnAUvD>pdfW;iaBuu{(l;_Ou3TC;1$^ZY|p)^FD2mAm3UMM0UaUXVn_CT;`
z5SRps{r?|=#Qy(349<&yvLe}I*#G~JW&i&_jy;||fjyD^|NkVgTr&Ir|0(RLU^d9C
zH1_}h)7dlF|NqZq|NlQ5ES|&u|9>8s1yTXR`Cwil`~Uw%?En9lfO%zL5+sX`E7_~q
z|NpPXkgs8{W3Olb|Gxn&)5QM&e+!uP|9>m{|Nre^b{Ck0nb^(V%ia$bnZo}6|1|d5
z?EnAI0rTgA$$4NBqIy1<y%0<;Vqe0(lzkcda`ylKSAs=Wfk}|cHSFuy*R%iszk&V#
z|E=uX*>|w-WZ%vH|NkELy-+m=*bhNjhuM#^A7?+oev<t(`~UxE+0V0IWWUUQh5ah~
zb@rR=x4^3Iu>b#mkNyAu`|J<d|Nno){{R0o_7`B8m+b%lzX7xU|9{K=4$6AZ{{R0+
z_D}4e!Tc}mU)lfv|Hl4<{r~@8V3Gg-e}n0N?Ek?u$juBKOdQM{|Npaa{Qu9&!N$SP
z0TTWHp94&Da`1p@kQgrqADGS0ApoZT{}+VPLLC49i*Wq^FU}zW6#=P7#*!TW|4Vbo
zawu>pbNv6W!twvVI+{uij{pC)(8Q2U(BUxPFyi?C-x#dM1WbbD&7drEFm1u{|Gy>2
z|NmBC9!MS)+i}=)IB+<j$T~xLZX6y^7OEZy&kHQ)&Edo0%klreKbRN5@&A7ym<3W3
z#PR=sFqjttCP8BV|A#`^VH^=)Ruo4JM=Zzx|8Za*L=B9L2a6?wNthUjPU1-BNa0B3
zNW+l%|34i`ECbBW0+av$=RoQI|8qJ1|1X5|KqeM({QqCfQOZ%qQNi*5e<g|>NFIc%
zIchl?u*!gBLAVjGEJy_iH-S|(gGmto|NmBwHje-Q+o2+z99<l}9DPt8L<NZK#}EOD
zLhwY6$#`TTYS76kU>#Gz<TQ@||EGgl$f{;SMP_l#=J@}A4wQ$i0>qvN7hk~f|Nlac
z|Nj?(MHYiekP2*g30B#qP|;-^%b~259IK(MwH)iftPNliWadVWO&tIKZ|2wn7XgVP
z<E>DcZBTj#$4-v_|93-qAeDQ-?0sPJ0LTCThruk6%n^>GaQ6TI$KdSaVAe@62~zj}
z{~09qS&nl^yz@xx|Nk!_@h(Ey*Ep_2SrD_3$s16ayBzm8?sGii`2YVg$4ib^V9~c6
z|Np<^`2YVsnD+rpegu=qCP3JqIlglI<oM0;m*XFr3I<L_P9{!}DrPVVV*UTm!ukI{
z8z(zdgp-qtlZTU!^Z$PVu!ta-6yg--6y+2Lv*kGD!8Am-D(C<IYMlT7>wv|KIL$aM
zIPEz9|F`FK;QasJ2`u{mzcZ&R=l}oSod5s(a{5EXAo>G2|Njr=3<HZrasK}w!x_u@
z|9>230$3yoOr~(Ab7pX6a%OY>|DVJ8|9>uLK3M$!{{qfp&N3*wlCz4lnzM%U|NjQg
zX3iGQPR{@T`#2|ZPU4)xIhAu7=l}mRIsgBk#W|aE4phhg|MNNj|6juS|NlzPb)1{w
zqFcbM?VSJr@8sOY`TzfJ&OKm}|Nr-L{{O#^^8n{T&O=a<BTyRRoB#ihg89e6<O$A`
zod5ry;{5;rH0S^SXTW0r|DT1@Fdf+GbDZZnFK}J~tGx;)uY*bKs&8=K<h;fC|Nm{y
zJ4mV?Be6mHo<RAppfpJAHRl^79!TW>|F@j~|G$HZzUTY^WkKXn$&Xm&K0!r4bN>JT
zh4U-tH_q>z|NsBs{0S8YnemJBH<b5>^Did@7f1|-+2K46E>12kFpryy2Tb#F{r}I;
zB>-l_)c^l4%q7Al$|a5_`v1QqhRFZ_Qe4tlL=k2YV#z{v%W?hxFVCd}<*9OMa{d3W
z!}b5aE|&pV%n(fCGR+t&YXYUQsWavJ|KE(u9IV0uO#c6G#pMWP!E|_l`JP}BCI+It
zxc>k5hKu@e`NG-%|NBAN{#*fE!BBQ6R|Ho)*Z=<sT!~N-kSQRX#FYXUN$1Ldv;Y6k
z=E~v9<@*0WkE;+WTEg}Je<_$<#`XVyIadXk4Kn5b|4Jlw6<0N!SHt!He=V3-$5qeu
z|9>Ob|Nl)~EnIC}|NnP#{r}$umg@$SJz(<x|6Z;>u70iwVBSP9If?84|H)kc|4#w)
zAT~nCX<XB}W<o`0asB^4n`;i&e6EFDOSu03UkVmq1|~tOS8%Q5S_S5<=KBAC4c9s_
z`~Uy-T$`Y*El?Vy8iBWRZR7g?e>+@m7uWy)d$|7p-^;ZhE(TJ4kn0E%|0vi0|0lTq
z|3Arfp6deFMXt+Gxhq^(x&HsZ!S(<DEv`FU_qZNG#UDdykV#Lto^t*F|BUN7T<j&B
z^@{5?oDEX@|NmPk{~eTuh(gHsT%Vz$U$}m9{o?w~_5c4LuK)l4a{cFG;D)IA|DOrY
z`v0Gqn}wSVi4Rl5!OhA2|344+|Np$){M>@vLfj%qs>Ha(x&Qx{fQm?hX&EpH(yst!
zDRQfGYl2z&+y>m{+!oxHU>-<?HJD|?ZOd)P{r|rMw==g3_y7N{U{R1fDt3d5yK{R&
z*<Mik|9@{N%ZK~_e_!tZ|NXfC|M%w(<PPEv=KlXb1S$(NF^v2F|8S^SB=`USQQZIk
zM{~z;$8sldCvhip|No!H{r`VDcP4i>cOG{kcL{encLh}a|Nm9o)!hI8*KpTz|Nmdd
zT@M%k|G$y@|Nka1zZp#a|KA3s+qpZrySe}W@8j+Vi%jC4%>DoW6z>23r-J#@xc~p3
z&i()YEbjmR=YU0EZUxcvxc~oOz`cn3|Nq6@OX0H1z^oPAtHJad?zP<i|F7fT$i12S
z|NpJr|Nrj*i-Ytd@J{Ys-2eaYMw8jYy%$YnKllIt2f$(n!6d|l!`w%pyrbOz{~v?0
zA#x|-yi;%%MCSkh)7=06pW!~oeV+RQ_eJhY+?O#_z*PSKe}()1|Eoyy*SN1E@osSc
z|9=b4zYS-B^xr|@fkgiQzt8;yEcz5oLd5?6e+K70hqFL(FSuWV`LDqwNCbi3aK8nM
zzUTf3ra>~F;4BdDGxz`hU%9_=|K$F~{r~?z?*H5jJd8X{JS;q{JZwB1JRmh7%mruh
z@Cfq!|1SjP3-kQ{F9K$Zf=Q5C2o~p&0E<ZS{Qob-^Z&mrm?zJp$fLre%A>~f|Gzp|
z<o|yS9&H{S9$hF8qFWDz2N8pi252%yXncsO|Nl*S{{J`UvEcdt-<s$De;c0v|Lu6}
zc^r8D|99kZ;&JA2<#FTr|KFX*6RzJ2%JSy%fwDkm`699Xk=P))|NjHgM1pz#{}15_
zg^Gspgo9ZTJpcbk@<f5z5PisG3{NarCXVO-|9CJfktc~KnI{FzPUZRkKOM}<0F(d!
zXY&02pT(06=H-D&m}vz(g*?S@ky0qDoTmcH0;#Lysp9$nznZ58E>_D^$MgSxJ)Hml
ze*;ewPYX{g&;S1&Je^?iE}sAYyTPm;FbOj0|NmZ|KAwp@|Nl?o`Tu_k&orLtJhOP_
zBFRHk{r^9YXFgPP5zqhsi^1$AVDkU}rBHeql>YyJIh+O2zXHl%$@BmJDlmHu&ss3O
zj%NeUMxOuwH-mW))gW>U&;S2hdA31Cw}a^&JUe-Ifmt9G2)vu;|NlKa`*`;A9N;;`
z^Z);0p8x-k@Eqeg&U1q2B$E15Jg1?&Gf?_0l>Yz!JeYNX=OWMl|Cf2L^8EjQjpqhf
z3}Merp4&YC|K9<N-sSoK{~pf+o<}_Y|33kX{Qv)q=LOFzo;N)I|G(vV$MgUH2dFs0
z1Q_ch&nKSGJYT@_-@xSm|37&C|NqJJ3(5nj{KNDA|6efwADI0A|341{FB2~dFDow_
zFGvMDF9(<gu{q%^5Dyu1p~&!{@Q~HP*u1=ay!^ZZyn?*Kydu1!ykfln|BLfVpy-oC
z;em8YVTgc4L0A?nBL^ns!K4D1{QqB(R|(8g;Z@~T<5lO?0P{e4G<mgnwRv@Tb$Ru9
zjd+cD|Nl4PHRUzqHRrX2s{yIQkFCLKZFv9xw*|8xs_l{35D{e3k=KRSmDi2eo!5ic
zlh=#ao7acem)DQipEm%nzChmp|AUcKgz$#)hVlOY9}X9bg0n#O#q$3DABQ6H|9?E3
zpTPV7e<E)Z@BjbFyeYh?aPf37D+5esg315?vw8pj&xNu<CL?ejRJ4G%2+BgpVPh5Z
z{{LUX`~QC_lIk)jyBtbG^i?47DtW7TtHJyl-df)O|Lb_`c^h~e!6Hpy5~2q?+05I5
zrlys*4KC6SXQAuv;O)dJ*Tvfn7VqW#|G$s7pLYW9MBYif|Nl?sody<%nKK>Eo5B14
z|4iQh|7Y>efs4(Bvta5W^nAGZ0yt|Sl(h&-FNV@fq4YA||NmF;uHs$IyOwu7@BjZB
zpyCh{H=^($V*med0*h|u-2$dzq9A%ZlE@AydncIQ1tvjicEed9-v9r5c=tg?_Csli
z_yOL7yoY%I|33^DJ;M9{|4}&a81Mi8$9ez%Kf(L||4H7{yl0>?=b<#jlncC<c>n*u
z%=`cU72d17*LZL8-U7?t=DoxF|NmVu`yQCQ&-;+~|NqClPkI0Ue+Cx$|Nl9de!=?^
zOoL2(4Q0LM{r~?R?|a_=|3C2l|NoKq|Nl==ng9R4f?3~qzw`d!{mJ|P|1aLZy#N3I
z1B){7G4e6-G4rwT{r}I(2Qu;he>OgLJ`TSB|2g^o|L1~={r}GmX7TX-|If?!|34p?
z$ItiwzW|>gpD^G5|Ds?KF+K@CNiggGe<{BI|E2ll_~fB{i0S|TEAlDvDf6kIiNa)I
zv?`w_pAJ}!E}tHs0iPk54UskC`~TmB&y3H4@Be>Gu(&mtgvcUD8x&DTIM0di|9@vb
z7ry`hUEyLNU7mbid_H{t|NHU<@%{fF&KJX%z?Z_8#+SjD30IfRm&2FG_y2!BTm+=E
zgs%*R4-)(TzZ@)9!B+{UL1I;4RyE)M|21G1NURpl0`U;Ifv*umrU@?6%-71-&iDU+
zCtRcp&g$m-|Gx*!>jjetGhwU=e3SU5@=fEL0hOQ0Hw(;~4JJXV=73rAz~uk`^Z6D)
zSs*zWUdXoyF1i@b`u~3k-%=#rGQQ<}|NpPxTZtqFGGP^%znX6i-#Whad>g^M&3s$=
zwt-n772Em#|K9=Ufkbxl?c&?Rx0i1pRCGU>KEU_?{~^A^VD|t2N1*gkzGG0<|NqC~
ztpEQ{AhG}dKLzKV<~zf8j_*92f06GJoDH%YgfBxyuJB#syA5UEfzlxPyL|uu-{brL
z{~_NKzNcXEXMF$vKL@iw^2qolhUjas$Q!=@|KIX`<oo~s6PW*n?+4%i|3ATOnEqcV
zJdo&bzCUPU|6qI={r~@e27Xrl|Nq(eK|0v^x%j#HdHDbT=i}$+|Nmcr|NnnMeqpfO
z|NkOT8l(~vi}H){|Nk$}|Np-PSe+!l6quF<lOXjnaF#5;Jih|JBLDyY%3v`Sel>n|
zFzf$+4JZxLp~e6Izc#-fSj2$ekpKUGBQP5z2f?Oje26HFG~+i1%UkeU@>}u$|8LE2
z1Li~IZTao_9gz4CQ5fmS@6PYR?+cdq1CuZr7##o>4Fr=gu~0BCg8%>jNH8mkKbk*=
z|NsA3{y6@4{sjI+{xtqf{{R28z_S1UXM^cHFbOlG0Et(K#D>Yk=prP!V*daCOW^!U
zD60xe|NmbNWz|4wh#7TYUOoT+|4m@l|NqVWE&Of#|Npo1ckp-dck}n~|Nr05Kaqbj
z|Ns9}_^0wu=bynpi+?u%|NnFO=kx#nzYwbL|Nlk&OW<sf>C2$J<xu+n{}pf+NFIb&
zqKK^KUyH<F2W4-7(jfIPyb&(8nSTqM{r~?~D0>_K4*viDck=J%-^ah7{{a6%{zLpn
z_>b}*<3G-S0;=XDl!loJp-=Ol;s5{tJXr1m|Ns9N!K};tSHLtx4T!vk!oLCK-GtKr
z|KH;O|Nl0e_y7ML{)b3BkO>g{7^~=0{{R1<@jvH(!T<mNEB^ogUn8k{!~X$^2QlUU
z|1bPs`M;rwe@Ei~;Q#;sClVi~?>GM+sOUck4I!b@3<8V-P$raOg7aAfSmA7lB!>W(
z05@2S2Tbw_@C*F^FCg&$zaW?oQT6}7kih@{!e9{*F!}$#sKEdKVqms7n1rdsMoWNI
zNP<a-ytKgo|1wa%tbiPp1(K5&P=N9j1(XE-|5q0H|6fHwRp9@BHK;g9mAb(H|C&hr
z|NpfFv<3eE*M*De3Fr$L2p9?&2^ho0Kss?@Q!J{?1pfcG5cvP!5-Mi}rELWM|F?y*
zVdmL^`SxHECiefogMcGg#983~e-|+8|9@A3|Nq?uJOsQ1{{Qz8@Dm6S2owkc%Y_Jp
z3WR}K|Nn=B=?H;HFpV(r|Nkg~|No=GqA_4H7EB^k#0kU;Bntfhp9B|AhO_?vPZ3BJ
zNEgUJ63K+Kv*4_3IP3raT!DNzuTbFs|6+mv|4X4FWdc<KH3GF@UY)@I|Mg(j|Njk8
z`v3nXf&c%T1zO;IggddZ+Q91C!6dSLCs?Fg;Q#+VfqpO>Av*!gpA05JqEiI^|DOux
zO#_qD!6ZoL|Nj{Rv!J}$V0w<gJTU$L|9pW30{{On1oIXNECJIHJxc|aL3t|#Rto(8
zzgpn`|MgIj|Nl3DSsTG5Nc|>(Z35c`cEI^Np{!j3|NrlXvj6|zE3jYS0GxMF;E=%o
z|Az&R2polr{r`Vl;Q#*<0w)Fj|34-0|Nm(ung9RKz<Fl{{{KHGa9-g5|BG-jkUK63
zT!Heh3fzRU{{O!%@c;iEfxA%teSrs17D&e<fu{oh|34S_|No`HTY(Q?nU7!+B#Vqc
zfki)qNr?Ctf&c%%3VcHn`Hu#^3;h58L*W1aUtl%A!Q@|o|Nj{TK?)fK|Nmze{QsXt
z@c(~Su*m=a>|mNxkQ+?%3jY7kCnyMJ3k!-1N`qN)f{KDFf~tc5|Emf9|F0paBWNIK
z2$lhv`v1Qvlx+s3A)@Aj7I40$;Q#+tP@XlIwgHp2U=pJK|9?9$&tA|$@c(~DL1)4L
z|6Rc%ZeY?~&_mD*%=-V|N6=R=0Ll&o(?MVoWKxJ=D3l#07$F!b`2T;DV6<QiR1Bmd
zR`CD-I3zwu41(hY|Nl=wkx4}1K~yDy#gf4!NF-G-P4NH!48i~ZGvQ(&@&Es`!2Db=
z`Tu_bl!nL^3Kk*pO9lV`FB2?B5~&cZ6s!`g5&ZwZ4lLRTCLwxJ$!5X-|J&iR9dH)1
zs!qXf6!Bg#uOCbzt3zf_5S$2?pCmY0a0;A<tO~@QDmWcOZU$6jrr<0n3#1Z+XAA!S
zKSyw(;9|igf=dOL2`(30A-Ga-6;#z4FuhiA9hhDZCPBJjcmr5uBbbDV;ifkssoNs>
z|NmCOZAc>j|8EELb_o9ezZ1*?nY3GQ51jq~|6aj;f(Hcu|34^rNbs=WF~JjHxszZL
zq#7BYLJ~cV#70&_n0*FC=UF7)IVk%)n7$x*QSg%BWx*?gR|T&LUKhL}`2YV+!CQiN
z1n&vn7knW2Q1Fr9W3Wn?olj7B&!M~*g8%=&hO%KQ(djo}`L|#aBKHo={vi1O|3|_9
z|386wpTQ(V9!7ovi+vOP|Nn>JPr=`Ue+2&u{uBH!$RNZh#3c0pKeG^v5StLY5KR65
z|J+Dyh$s(KgcnNlL1}&{4N)b4!V^T{{r@k7#)s$;0gH+X{r@j6Bmrha#6hH#(EtC^
zLUKa?|H}*g|F0mVh$atGqa^hIzp{{ukeZOXkd~01kiL+C(EtBNLdHV>|C<O|2w4i*
z2-yn#|8FPs|Gzzoeg`Pe5llOQNoOz#G8ckfpnO*-4H9)nVuScF?14iZCJ&=MG1PgX
ziFl*&VLE+;e1-gk{DlI9f`meZLWRPF{{Igb`u{&d=>Pvnu%0L|`Tu_`l>YxePACD+
z{{KHoC>e<dGZ#Xq2xWlfGKI3h^#A`kU^*8}Le%6Vu|Xn*LPaPd#X|r8m!OD%RFw+-
z|6e9lAyg^!|9_QGjZm#ngHWSTv(W$lEkdnAZ9@P5w+nR%bqoFf-vid$2PXT$BuM`R
zp~+zOR4_SBXu8n<|1-htSwjE+&jz#p|DOY;K|22bpDXnL|2!0t`6#^q{}%`?go-SJ
z(o2PwL0SL*FBe(?XaE1d5{do)|0<#X|5t-W)(EW?S|_v~%>Ms>gV6u~8=>q?V0tT<
z1i5It(EtBCgm%ICAhG}d_n`41qI-q*LB;oj=>uRAA_pQ53LO$UCUi>Z|NpZ>|NmbQ
zx`-wZQgaC`b{R}w0h3pSt_j@)vu+990n>Md?g{<>{{YN>2qr-~9|`^c|5)gW(EtBW
z;bI_hRQycn|NrMu`4><cS;b4C*FyjQzY%&1mU}Ps|NjS}PeNb7ysuyqr20FY1>*gH
z^L`5b68iuDFNiP1Bn*=K|DQ$p|9@8D|Nq&be0DI+CCm+`d4>P~=L56;{}+JLg2Mm*
zi-6gpU=n1GnDGDq;=&Se{{R1y!cxLAP`(_PRuEPc{{LSI%m(Q}#VT-dRbe$a8>B{E
zSX21_e=T7h;s5`2!7_Tn24LC{OoG%H!CC+R8w;C&d8S|zB>VrrnXtLAB@*9C*cQ&S
z7ykd>QP^47RoG3~9WDyd=LO~a3i}HOK-mzP|NjHw{9xe_I2$Azioyel{Qn;%94j1$
zAs#QBApHM-l5i?iCQUe9I19>#=*x!la^NhGOfH<44`mfVX^`yy|AoRu!X?6G!vFu5
z3s(qNLglK!bTycSsDqF-!nGJ;^}-Fp|NpnZ#arR5HsKE8PT~LmyM+J$?}m$lOzMU6
z`rs^(ct4mo0ZdK;lORzTo{S+f6)G|fO2bsn6rKeZnJqkDc!BW${|mu9m@J511QuB$
z{Qv(_;s5_vf_bZi|NmbDW`R`v|GyTA4H5bOe?5xWMlf$Pn1rd=4(9C;{{Md`n6+E@
z|NlK;7EA?*K7b(t5{2P|!iR(pBdItdd=$z%2BwdL$&+C6|Nqla`i$`Z|L27N|35GM
z|Nlkd%fkQvUlsoU|C;ds|2M%ZZh^_$U=n82T_oN;;rmFu2f|N~c>n)D6@DiC|NnF0
z7bv1Ib0G9fu-q#!2@(1K|235N7D~g!|NsAhA@Uh2@<sTo@c;kc!Mq<}@~80s|G$L)
z|NkxgPxwDrghAy0e?}1|5tw<*BLDxhh_J%>oFf1KbAfq$V3J=%08Ib?F9@YUI)&hD
z5jYDZ4#Hw0;&3quFiQ$d{{Js6A_Hap|1S$>$$?3bE>tWJ7gvC@ltljjSAp|X;Vg9#
z4G~Q!PfO(ge{GTf|8+(5MD#@rprR174MqO{H$oCI5itex%)lf>4R+F8!~&|u5=>ix
zNtjw|5gQR(5jzok5eE@RBpD|W7bwqF#0|=F7x93yJi)XVnDiF$1=BDS{lUBdkw7pF
z5e*Xg|33tY|NnoeNSH{tNQ6kF$p8OQBGF*E7%&+t5(lP1I^&_N1d;#$lfdj`krXfu
zl7-+@ku;G^kt{UPY>^x^5s>O!uvosx|NjLd|Nj??6p8%*Um{W}^8bICNV!M_ShiB+
z|Nm-{8j=71>qP2B8btp8Zxs3eze%K7<p2K`k^leOME?J82de~`h`=3aVx1ygBHd_W
z2-Q6zeQ>#ckqIIbMJ9>-|34Wn22wc%g$EKr$5TcA|DPc;Q)HIN9Fe&MRL=v;F94Ge
zbCw{nmx?SCSpny-gtI^@SHXF!MgIR^1LduS(i=oJiEI|xBC-w22k9UO?*QxH2_`}M
zcZ=*5`Tu_(n7<!Pf<z(s0F-|aN<%~sq3{l)@Q#3a$3;$p>Hq&viJTTW17-jJe^%t2
z$p8Q6MgIT4AoBnJC6UV_SKx9GvmxYFsOWW(|Nn15+5i9FgtH*3u#>k%?utABt9%G1
zL8>0XS&!kYCt%i7FbPugOyvLn7jPa(1cYCTycT&Q^8f!^u*^F!`CjDz{|{gmNX7sE
zpODxPkuPwOuW;7?|KCKuBk}(K{~_`Vg%8pD8!q-2&ieoVABYXY5Jmt0|7Q|q7KL-b
z3|7(q|2ahe|K}9t2Fvh*Nw5@@5I_<U6aD{R9L$#xl@gT~RRps^3YA3v|5p}O6;*?Z
zXo>#+uPv%8st@KHh#G=vkV+6X6*UL*Ektca|NnOsbrN+3^Ib&$|92I26aD|+UDN|C
z0#fZI>Mi>JzprSZXpm?KR5VmH49Wtj`2Rl~%!?L{6^#@9|36+d8O;CxKV38v%7UoN
z7R^E7|NoyWnkSks`u~3cn)v_!g`!2G#iAvm|NobQ<;uY%#2nmYg=nQ{6^6=cs7MW%
zZUB?G%xDyC5^WZ30jp^RlmGv>iFSx~L)riT_lWjF*?myDA52dcodTw(ivIsUUG)F|
z8DJj7o|$0wEYaDbbHFT!=v**+9+;dj`v3m|(S>04BGJWQdI^~P|9>fzhUohLf0^iV
zu*gc$RbYCx=>Pv~MAwO~7u_KG|Nlm?7)&jQ-UJre0w%YCNs#FO|Jy}(i2nb-Q*@W;
zZqYrWdqw~M-zWP2|9;W`{||^B6g?z*SoDbKQPC5kCq@7NKP7q^uJerOHPP#E-c8Zl
zqIcoEdtlZ>(f|J+i9Qki|Np7zGq4E6MhN*FD)JIczXFs0|Gx&)Z^0x)9f*7<`a$#~
zT<o*x7twE`KSclk{|OiSCHnvWZz%7t=syTclu3+P?EiljF;+2lF_1YR%qhk##v{fH
z=JSdD|IZI*35fmwFDNDqW{ZGHQ7{S8K^hhZ>yreNQerY<vS1df8S+SC3Sx>#JS8z@
zI8Q}P70gxxlL!+uQ23f+|NrZV>5A#0h$2+~|F17*AZCbF)=2FCe`B%#|4pE>rebDL
z7P5Y9Y;z=a7D#L>F>5g!BtAl~EmYJ_?EimzC>tc}Aol;iquBrdPDo<^|2vDhfcdUq
z(j82KRR90)fyDL{`~Tky%=ZJ65EcGNY={Vm3=j)M5)Tp!M&g0wL&X074;B0WKU^#V
zDiZ~zqoMTw|1o0!|Hs35AYK3eCx|7ArHQ4Zi9+O%$qcZHOtCDnTrew7?En9KFbi2#
zf!P25g>ca#IP3raVk9<5N10eTSfoO%Qmjs_UhMz>1~4BahZ{GFHHkHg{r}%0)++Y@
ze;b;Pb|}9??En8xD7#Cn7s>*e+9&q^e?Jl*BnHBhki@1Tv1f?QMB>d7n=SVL|2(M3
zLa{|+|Nk!*TL$HW%z@$MVk^L+E5-i*UnRC$Y%Q1vlU*<N|NjQDO=4T%qFdpt|Nplk
zv0*y4i|r8m|9_|0|Npz7vb&))NX0%ddq0@`|Nj7#2FZZ%K{Wm$vBP5j{~rO19tD%f
zz~uk`$Ho5tKOy%2|7j>6r28zCeGW>4#Qy(3kHotmb{UCx1<JlDc1!HG*#G}`!2J7Q
z5~3GEJ`j5-_6RKcSnLUyek%6=|1&TPq5?ubM-h2}!h@)QkS}q{yh4(BE%yKa8?m=Y
zBLDxt6MGNke-Qf!WkJmR|NoQNXB3eyC_I>||Np<j#lL}B-^G4_>Hq(Kiv9opOYAq8
z_XkYEbp3_${()$*|Nj}pK{AZuOyca~|NnD{bBgnc3xdUjz~uk`!s4RhV&dZB5>P%!
zJz*><E`_FE2F{limjkoq!Q}t{%Hk^G|NpCrt3&z!|7*foFq^c%B0A##|LcKS`e5?^
ze*-8DQwO3A#f`wC#^R>pW?&Xb6of6rt-yS1aeHxR@&Er_!8|uG`TxHMnD!F)6ZaPn
z6b}{;1M@-p{{Ih0V*mdiA^!h=lz6mwjCd?uJWf1GJViWB{Qv)SuvjLTgy{bNKTG`o
z{~V}DE|ks_|NlQ9%7&;b0P_mPi@<cT`2YW<VAlWtl~DTs|61`nI2)p?Uc3P;(kR{}
z{{Mfoc#C+Oc!ziwSgc3<|Nma`J}~?L{|Vv~p)82b|Np0oPZysdK2v<Q_#E;7|L38}
z&WG|BK<P!||Nk!*Un;%=%3lSgA*QVsUyH(rh=R!V;{X3|M3UPKXK#VCK<fVg--^WF
z4rcEZ-vy>2@-T8Yn%ExkLueu}mH+=A7C#D=J0|}B{|WK`|4%{r5H+X8&%pU-#sB|5
zC;tEc1@TMbm*JvU#Q*=lA%0W*miTS)JK}f6@4;mtCj9^Z2t(xm|Ho)zPsE>!|Ns9?
z{Qv*w;;+PCi~s-s2CCw%_&X@;qxk>-pTz(F{|x4T5&sINVYYlj;ekZIgGGLe{}uly
z{$HFyf>DA=0wn(bKeNRD|Ey3pL<E&&gUYc>{Qu7hW^+mW|IZC({r}G^@&7-c#Q*>N
z5&~cmK`{CMzYvuE|6f=_6wDTr`2SxV%#x6h2GcSUauV_q|NkpUC`u@SMNn;q@RTJ~
z!E)*n|Nm=(SrGC6|FxhzZ3$h8|Nr$Q{{J_SFqANcih@*`Nc{hADq$w^|Gzns=>Pu~
z5|&7OYb3U<#Q*<xP`<r{gT(*;juOri|Npyy#azK8$mIY3-N0;j2~Uat|Ggys|M!;g
zmGG1J|35$?NaFwhV2Kd0e5gbinEwAi0!sh?A0-hj@&A8}M65(SR4hT_|NkT?8)AC0
zL<$N&70OG4(iu=1q8dSFN@Rg$vL$jQ^1v*ZT)sqsM3F=>Sgc&)|Njb!|Nm>iJdlc7
ziU0rWp}Yo(Mlh=hO#c7h45k17Z;|Mf`2W94q8ly((hI^p6951A!A1MQtjQ8nB>w-O
z3TA`U{Qo~)Vg?cqA~sXv|Nq$%|NqaC`2T;d#Q*>EBo;|5kyt9RQsV#r)e>tZ)=T{V
zzd_>v|BVuxBsNQIk=QD+P2&Im?Gpe0?*N;%6HM-s*e$U~Vz0zLiTx4>B@Rm*kvJ-G
z3@r2i{|Slz|4&N%|9?v2|NqlavH$<iNc{hQPU3>Z6^W}7*Ceh>{QrLgDtA-jmc;-6
zx52zS5_cv3|Gy`3U*dtpLy1Qc|NlP$i$9fkCh<bzrNk?V*I+)#FK;B?L)jlBK1%%m
z|5@TInEy@UyTt$hKP3K0{FV6s{~uTkq#lYT7$lh_StS4eXO(1^<dWo;<duZVKq)>+
zen~;Fn2_ZE|H6_YlK=mUN{WF+#3ld#myrDbUkc3o|6fM(|9@FYdCC9(l_dZFSC;($
zUq$l&e>F)Bs65oj|C*Azl6sQ=|LaQ{NE%8SNg7L<N}5al|8F5_DQP8XEome9|G%xI
zy`%$NpCg#%1SXv&T_peica{AA-%Zj>(p%D3^8bH-$pFbf$zaJ4$xz8K$^ZYOB%>u`
zB>(@9m5h`8|35+U|NkV(WXb>kQzTO*(<IX+v%x0iNdEtyE14(x|9`&Z|NjMGu|moJ
z|BEDx!EBIwOTnyiF!}#~rDT<4wPX#H_y2#bWF3@UFZus}qhu49*DCq{f16~xWCxh{
z|9>Z#?w0J8><6<ZNdEsnQF0QPJy~+9<p2LOBxg#_lAI&?|NmUD=>PxoBo~8OOC<mQ
zUn=?k|8mKdlK=m&lKlUFwd6X<|Nl3FWkD|7EcyTc7RjxW+rT0_BzH>g0<(65$vu+$
zB>(^4FZuuf0Wkld<YCF9lK=mokUTAUR`MKJ>>`*1nf3qwB{2K4<W<RQlGnlP8<ID{
z^#A|2ByUUJk-R7Q|NjHY$C6JZpM%9;O1_qSBl-XTTgm_bKY&I4|NkWUS@Qq?Z<0SG
ze@gz6{4M!Ml0k}5ib;xDibaY|id~9Bic^Y9id%|DidTwHieE}VN>EBzN<>OjN=!;z
zN<vCfN=iyvN=8aSN>NH#N<~UlN=-^#N<&IhN=r&xN=HgpN>55(%0S9U%2>)o%2dis
z%3R7)%1X*w%2vuw%3jJr%2CQi%2mo;%0tRi%1g>u%1_E)Do`p|Dnu$&DqQOS{|Kol
zsc5MfsaUBvsd%YGsU)cssZ^<SsZ6OXscfknsa&Z%seGwIsUoRjsS>GDsWPc@sS2q|
zsVb>zsamNzsd}jfsYa<LsWz#0sSc@5sV=E*sUE3bseY*mQWK>nNlliTA~jWNn$!%b
znNqW)W=qYHnkzL=YN6C3sl`%Dq?So7ms%mUQfigd8mYBX>!j98ZIId|wN+}H)OM*I
zQoE#fOYN09AO(q$Ls0tv|07aIq3lyq|Nozn`v3o;)Mcq_Qa7NYx4`sWFbUBMBJZQ|
zA0Y7`LD^5Fo=UxtdMWh^$_MEK;WtumrT+haFZKWbN2yOzpQXM@{r~?<>bKM%sJg#W
z|DY_8>i@`W(9R0!|Nj}K|Nm!_W|n4=2B~0`W|L+Iv;P0*gwh~!F6saOdBA)=FbNVv
z#{ANP(!y9}{{I(25*L*glNLwfOF-F@P#R*Uw6qMIFDw23zZ{(R|G&Jng0!Oa|NqKh
zF%>YW3MT*mSCdwk{{LS?S`*5Lm<A!Wz+&29^8bGwDE<GxuC$)?|Nr`6zJatMnEwCY
zSo;5e6Y2l|O`&{<8UO#Af%)dr7SfhrmX-AX|F+V0U^Yz6|Nr*V4${sjVlLAE|GS}x
z{QvJE?J52Lzc*aePx}A=K<QxV5b1E~|NkSTqokvy<E8)qPm)fSPLWQNPM6M*{{KH4
zsy;_L56b%gKVSO)|3c~i|BIzdq)XwVWpEb4W$3JO=}NGwDll0MCP8Xyr2qe~m9CTi
z|Gz=HQTqS?X1EMUwgt><m2Q)6m+k<wyQTmC?*+3!^8f$$Be5YO2y%k-|Nj%=@{{1K
z|No~*PnG`vf131k>Hq&{B8fxv&cYCZi2wgTTl)Y1xzh8c7fLUZUM&6p{}So{|CdSs
z|G!*%mGo-q|NqxYuLJ8{4<<KAZvxXW-T(h@LE>+f{{Md)5`Vk&|NlFr|Nq}Dy+`{0
z|Gm=tqz^!44?$^|IftSABhvr>ACvz7|2UKnlRqJSQu-8%*lFqi|Iffh&caz2r2qfF
zD18aezYJ$x1+%V8|NnnO`lj^%|F@+7|GzDL2P_J+2bsPreNX!T|NGMa|38GQc?4(u
z|Nj`wej@!8OoMbjgR?+92!0M1djV#>lK%hyo%9FkkJ6vO{Lf$#r1q=ycj^ECe@OrT
z|5N(^|6fq?KT!Jr|9{d9GK@0+|1-(_|IaMLBEu&0|3AA7NGAuF<OGu-J{Oq94JQBp
z=Yi578D1ndh!4a3G6FJ!GD0$<V0kea37P-@CBbYdFexn~C!+{v!F0fAB_vU0I9o;L
z|9>?Zbtqp$Mib1^lKKB%8_a^~MyGZ0%Iaar>dP3&7|HzqZw!?&kuig^{{Od-v6T7$
z-x|!fmvNSHm+_GC1oIHK`XTZC!R$bpATW(k6Ab2ufJu;OD4Yf2L2wurvH$<WWg?Ko
zBf;zhFbUC>2xTY9{QsXKlM3dg$)w9<$Yjc7$>f9i5S7@;0+~X%nj$z0p|%)JtVE^^
zEK&|8A?hlS*#G}mL3uSYwKD(z*MWKUG7Vt55lljKVUkT~vMn;LGXMX#p^0MZgNSs<
zbb?iOfk}v1w@fdX*9Rv5|L>QXC^JcBvdk2jsWQ`KrpwHbnI-f8|6G~*G7DrD$}Eyu
zEVD#rsmwB&<uWT|R?4h`>RJn>L1wO#`Tu`C5+5W6!W-aXo8T;vI0$c%`Tu{b%r-Rf
z?NI&>DE<HcPB;ss3xapa?3URhvsY%H%zl{zGKXXi%N&vU|NpqmNtshvR73P2lc#0=
z|34#h7OUFxSVjN;zW^1#D04;TDwur@OoGh431@+LsQ4CG?zYVT|952Wg4qc9dvN{(
zFzcbr|NoC<o`c!{|G$uVCG$q+t;{<p|2>rc|NjG+^;zZ%nEnbT|Ns96r4i<Thl>1=
z`3Ysg<o>|<e`WrG*dPp*WRU&;pHcSze`eYL|5;=qf~>Ot|Fg;d|IaSVA^ZP7CsY(9
z$A!cO@gbO7mIo@%EBpUHpX~qt{IUX25kW95Br5`@LFz@}EJ-*EB>w-uwCw-?GH7BD
z85k)Gmz9IE<e@Z3g#w(d2xtBOuZ+Y7se)lu+5i95WYxj48nXZYYszYY*)Vx+Sv^^O
z+5i6yz@mm=5+Y{|W?O(shzN+Zl(j|^0g2kk+JZ&xWF5dXNDPJ@;UZ45|NlG7y1@A$
z6|S=X|GR-j++{svJ!QRQePsP)|Nr-w4Ui3#4Fb!6)P=xVp-@(sYy_AUCHwz>wCw-?
zv9fWp|NqB>#S&!y|4#(7KzboK35B05n*!#ig2^=5|Nqlv|NqYb^RmDsL>Gw6md!&G
z$(Q~Azd-i?|01|}vF!i<C9<Vpewl0qm<H(u;Yt)<6_{5e`~QEfY`tuwY?Ew@Y^&`5
z|LtILka`I2l>Ps|8!px(I|0rH$xngurpwNdoe5>nhSDH;7@i~h|Nla`_+r^5aP~4d
z3#N93>>Ans|JTW`m;L{LgX|{R|Nl2b)ohdf|9`ve|NlE>|Nq}5yBjRJU-qEv|Nn<&
zkIMf4e;h1w3QYe0e+EpS1(W~(pM%opp)|}k2z^2J|No0vWiEq7ugL!Ye@*uP|Lb5L
zNY4#83&i{X|Ca0>+5i9V%Kra<Pxk-+`?3#ZAAwaok$oonLiVNX|NpPSe2D5dvTtSI
zLHX}xKg$09|4H_<?En8?pkiO4^#A|gWq-*2|Nm3=m+WuZKeB&i|H=M`%Yn>dkYkc#
zmIJYnF^e3#-2eX^aB)sJ3#N(-F2XIx17|~Id6D>hNNk8KjN}K)2!cr=IT1NAFbgCr
z4rfWhSs-zISXxd-PF7A%PF_wyP7z6$lAN;K|Nkm*5j7}F9ZLWIuK{Nv%-59DlGDZ_
zu7gDkrb`ctoIX^{07}Eu8p{3uZz5+VXD;{uzXe#%3QWS}tx<RoQ5(7c|83#oc5?s!
z+rxPv6%KO$|2v|HI6-;Na{vFk$hpe7%l-fFA@~2kCsf=EO8@`wE$0JggUo_pUpYUx
zXaJZMC>JF6|9=RW9VQnJrXgx^lMzr=k#hh4M}gVVa{vFw$i>RVfq4*}@p1`ZULu%;
zh+!v_FjORiMN+_IDwzELKTYoc|8%(wx&Qw&p&}sDvZ3r8xjeaiC>tbRC|4v`ELS2|
zDpw}=|9_=i6_OlC9)zpq{{OF)tCOpT$~DS0Ls|d-w?J8~Q2PJ>HZZGGu3N58t{=<>
zneqSsM7jU}C&^8gn*tV_E;kcQL*yXjEV<co^W^5s{r|r}?*ISAa!cfv$*q)ICAS8u
za=qLJxs71<CNTN`|7N-W|F=Nd5Hn!pR;cJUC=C(cF1JH&H(X>7oCT4^B=^ew|9=3F
zs)KTe<&MZ5g{wFwcS7#}|C4Y&rirKIPRsrOe@5>A|Fd%c|DOY^JP#&O)m{XPU6Q*D
zrmx6dmAfu?L++;BZMi#g|Nq|ui-L6AhqFMu2XYTl`2YVuLgRx}JqC+Ck^BGusoekn
z&*Ywi`7h*NfoYJ6*I?Egx&Qy)f>|IjO#BW-?!DXxxsOnhPhk2pm_+FN0_A^$(*OT|
zm-`|2|Nl=o|NsAAa=(#y|Ns91^ZtU#|Ns9%X|S1c|Nk?{Gs^$}&m<4xGt2+~&jMzF
zcreT+|NlQbiYTW%w>*zLue^Y~i2VQmqVi($;_?z;71Hvu^8f$K%m4qcDF6Sz5?Bmo
zjw+O=Ca*59A^-osmb|w7|NlB*QC)dG`Tzg*<qg0*BY9&mZ7To&zoopD{Qv(p^0xB!
z@(%J&^3L)u@^11T@}BbE@_zFE@&WRJ@<H;!@*(n}U_D`AG8{}oY>t$Vg7c!mtQh%N
zFb$Chk#TT-g8cvgiSqydC(EZm#nR;e|Id)mlFyOPlh22W{r_Je|NnoX{Qv(&^8f!A
z%m4phBLDw?seGCI|NrIk74ntx)$;%U*T~n(|Nmbn|Nnoze1m+Ge2aXm{Qv)LP&3-)
zJLEg%|NrlT^1J2#|L>9SlmGv}A1X3Yev<rT`KeIeG${T5|8zKOru_f^v*qW=|NlQ%
z{{R1Z^8f$OmtP>iP=1m8Vz8PeU~;MaGWq55E96(ouLAQ|%de6D|9`Fg|Nrac*UN8|
z-z5M4|7Q6u^4sLM%m4qs1FQxVDj>WQ%-aPfLHynFd*t`Z@00)kf4}?z`Tze9${&Kt
z9hN@=W*wD3CjbBc3Hks3Pl5UW|DTrs|No5qS^59}&&i*czaW26{{R0=^8f!|mjD0%
zs{D2N|Nn2w-;)3T|29<p9WZ?tOx~0K|NnvfLooZ1{Qv)t!K^3p|NlRg|NsA){B!x2
z^8f$8lK=nzwfq~f-2eY?<=;VB@8v(pf0X|u|NsAI`LFWd<^TWxA^-pXFZti{|NsAy
z|NsB5{C{~?1vUkc&)60I|K|X+xD>b*coqKt=TrFqpI_nse?f)+|AiEU6+{&N{})vd
z1FHe)5LfvBUqa#ke@TV^|D~X!(hC3o%P7by{QobfAg`dP@c+LOSVmbv6-<Nlfv~#5
z|Nj~anhM$qI$&`<FsTnFLGu6q8-Uq{3jhBbgIOkE5+Vm8&A@yMh5!F86|5Aj!90-o
z|Nk}$|Nq-5*ef_FI4U@U#a+Q9L>581DR?OS|L>*Xt>CNRuMnURsPO-PFj!@XLMWL2
z|36G2LLpM&|Nm%(ScU)p;}!n@PlU?+|DU9gqL8YPu8^tl|9_6c|NnUk`3nF47b+A%
zRTL}y|6i)`|9_dn|NrF*l?qh~)e1EVwF-3#^$HCNjS9^QEefp)?Ft<VoeEtF-3mPl
zy$XE_{R$HlCMrx)n5-~WVVc5pg&7L76lN>TQJAYRUtxj5LWM;NixrkAELB*huv}q<
z!b*iz3ab^?D6Cajr?5d`qrxVI%?eu-wkm8>*siccVW+|_h208!74|9YS2&<>P~nim
zVTB_KM-`4K99KA@a8luv!fAyw3TGA0DO^yvsBl@~io#We>k2m%ZYtbTxUFzU;jY4c
zg$D``6&@)(R(PWDRN<MzbA=ZQFBM)XyjFOl@K)iy!Uu(q3ZE1{D|}V>rtn?ihr&;V
z-wJ;e{we%dU{GXIWL9KRWL0ESWLM-+<W%HR<W}TW<Wm$-6jT&a6jl^b6jPK?lvI>b
zlu?vblv9*fR8Uk@R8mw{R8a)Qk{Xx<vD6i{;OzhZbrt{r*HireUmq%FtoZ-GDVS}k
zXbYzQ|94dU|KAD92AKfE&M0Coimr<P|GS}x{r~R{<$EZ4DtamY|L+au`#|ac|9utz
z|Mye;|KDFRKrv7;7%Cp37^)ZsWru_52*pUnXvJ8?IK@Q8B*hf47|125ifM}JiW!QT
zidl-;ig}8Kibab5{}(HkD3&Y!|6ie4saU1>|9`b&jbg20o#Oxh^@<IOjfzc*&5A9G
zt&0Euw<)$Ob|`i!b}Rn>-=o+EHg|&JM8!#pQxvBuP6zX6D9%)zr8r0N|Nps)|NqZZ
zoUgb@af#wG#sB|TD6RynSf#jDah>9NFna@-{QrNW;%3GF|F?j7+Z4Ae?oiyRxC_kN
z4JP+0?o<5#f4|}Z#sB{gDjrt+|Nofc|NqAoPbmKXe^T+Z;#tN2|IaC&2dn-6|B~Wm
z#Vd-}6t64ZP`s^pNAaHGeZ_~0j}@ONK2?0K_(Jie;w#11if<I(D!x<vsQ6j&i{e+s
zZ;Ia)e<=P`{H6F?@sHwP#ea(b6&aKmm6(*6l~|P6l{l0*mAI6+m3WkRmH3qelmwMT
zlth)pl*E-Jlq8j;l%$npl;o7;l@yc|m6Vi}l~k0}m9&*~lysH!l=PJhltAGR!A45|
z{~JU3CQ7DImYI?{l=c6=1(ap0^#8w|l0B3M(G4OUkVG7zY$qt~45dNpP_c{B|NpK~
zSvN54uJr%Er;-<#4N>b2X8V9ihzN-ERq{s@0f`dA0bo6WVDkU}ASjJpSFlouQm9gx
zQn*rtQlwIpQZ!t344ehh8K?CBe}Yn?QZiID1xkbDh{35!X-erz8A_R8eOXG`VEX_6
z94MU&rP0mGLlMtcDg^V3l>YxORw@CrOTi?nzA~s-xl#p`g)0C5e-(y!jZz(4tO3kw
zRBBRc2D4g}{{L@PYE$Y|`v1RM>Hq&;rT_o?l=_t>DE<FG5v=0>|H(>Il>Yyp3g!L(
zKTT;mm_1Wz7MTA3f40*9|8te*DgFOHUul8T5~Za|%b+souKWLgIaFqa(*OUfq3rca
z8<aLGZG!SPD{WEw|9>l#2QgtAl(!R1?^4>Mv=7XJ$o~JoAI>|V^#A`MDDSY+|NqC7
zjw_u|I;nI@>9o>WrT_oWf#uFC{r`VK>Hq(WN|%%_D_v3g|Nkmj{5qJtp>#{>w$fcN
z`~Uy@O8@^qRC=uRROy-0bEW_PUqHoQD!l@;UMsy-`v3o((tD-<|3835{{R07ravkD
z|NmL(|Nk#a-;};9{r~?%>8H~F|G$*}D*gZePl-X9Q5ocZCNTN`KZ`Oelm!xH1GCw|
zB#6%eW^pS2|Ie+=qx}Cruk!!@e9HXF0?LBQLdwF*BFbXQlFCxbGRktw^2!RzipomL
z%E~Irs>*80>dG3*TFTnWI?B4rddm9B2FixYM#?72rpo5Z7Rpx2*2*@@w#s(O_R5aR
zPRh>8F3PUTZp!Y;9?G7|UdrCeK480jl>?N6l|z)nz`RK1|Nmo@W0m8T6P5q}Pf`B=
zKUFzHITI|G1158o^T2ezauJv=RW1Y570Q*$RbW=Na*cAW^8f#JU>?Yq|Nl22u|Xn@
z%1z4u|2HeQD7PxNDYwIAyOg`3>>lM_<^TWtz`TAi`Tzd}<;hUi|Nk?UXT#Yb6aW98
zt2_@bGGBRt@<J$Y5tLr6yj1!B|K(8LDku%n3n5o4|Np;6c@tP>Gnj;k|Np;5d7JWf
z6p<auyOeh;?}3Z$g|hZR=>y7#l#hVfN5SO(|HqV%E1yz6qx}E>S>^x#&w)kHEC2t0
zLHYmxOUhTk{Qv*2Lg{Nz8sviOVD=3#`Tzed<=e`4l>h&~tNj1}J*e3K|M$VH2VnA{
z^8f#jl%ImxApI|tUn;*+{{R0qTm&Qv!EZ3c-YWn9{|+qrUipLa|NkGsY=~+E`APY+
z@)za*|Gz_Je?V!33J~kJ^8f#Tl>aIJS7uOQRAE*DiJ@Z_6*d%cb`=g4P81Pj9b78h
zDm*FzIOYHU7X-@*sfdATgkC9?|No^`WK<N;#1SfBEJY+0N?^9K%K!grD*ykhtNj13
zp`r;E(^C2WUt2{7%m(Syhq4S*3{{L(OjQ2=H-(CTWFgoLE@BR4SwQLk|E-`bYZW^%
z%R%M;e@8G2q}LhF0`U;oRmDxk9V+JurM*=C|Myn$QSk-y{lFwdM}SJ8N{~v3N;p(3
zLgoMeC@34GA_j^5|9_lH0-T=&XMxnEf_dpGnPB?=|7?|9mH+?qRQ~_ZSNZ?HK&43K
z|Njz|GL;II|NpC0{{OF0sa2_0X;f)ZX;o=c=}_rZ=~C%d`TxIHr4MXEzsf|F|Nkec
zOi}s&f2ztfmH+>zgT+C1{r^8hWhR`rQ04#sMJoUQFIHKivQ%XSRD6TVMwS2nH>qq^
z*`l&l<^TWfDm$PuJ5_e6{Qtj4Wv|LUmH+?us~mueLreyd2UQNM{QrMM<^TVqD*yi<
zQ#r13Lgl2&DX_XTD*ykVQ~Ce@0+@GE<r0{_ta3%=s>(Gm`?|^vm76NJ!0iA3Z>u~|
zd8qP8<*~{WmH+>rs{H@|94hkyO21V3|Nj-3{aWP>n0}}7|NncH|NlRz{Qv)1<^TV$
zD*yj~1IzsX|3l>`l=TZjtNj1Ztor{yi|YUXtg39PAou_O&#uY=W^t<i|IY<xLBv5M
zH<Zt#`u{(#>i_?IszR#&{|l@B|1Y8{rYfQO|G%{A|Nk;zRkEu8|I4Y$tN#D5psJ{<
zq^hi{qN=K@4wlnU)l}62v;P0rQT_j4Pxb$QeN_WhL#UXM>i_@7s{j9+sQ&+N3KjeR
z-wez$2a^_H667Wjwp9K9-%9oWe|y#c{~e$*PO2`duBvXT|NpzI`l$MWMFUlXRYO!m
zRl`*O{|^U?M5_M(9|dOp{~ryd|NoBxvtm{M|BqKqP)!8$K=y!el4^?T|Np6Au{1E5
zu9~5mrJ4<9|Noz(nyZ?pnh)g_s{a39q*|={|9^>Usp|j#6{?kBnJU#9FkP!!r&<qY
zfz1B@zd`l?|3=j&)&KvS!J;jyt*ULR|NnQWcB}sX-vbtdsQmxG7s~5X{r|sTbpn_-
zN%jB#$zaz1|5H_`L0Qwm^b9aLQ*}0&o}>Ez{{q#8VD|t2i=gyk)upQc|1VQruKNG~
z3b5EpFu6)~wdxu$3u5~^)&KuDsQ&-INp*|rR@MLix2bMNlHH-YOLaGxzejbS>i_@y
zRS&5C|9?>Rkm?cD|NoDHWsa-<|9=9^I;r~q|0ysFWcF#*|NqaZ{{Md#DsoQsJd|}o
z^&*&cN%gYo|NmFO?En9-s$PS#uB+Zqy{URj_5c5Sst;8E|9`0Z2rTmiOoGgY;HPl@
zGu8k9pR4}={{kxV5=#I7|627eoDI?S4$gnC`v3n2)sL#5z#^Yjzo>py{RU?L0F%E|
ze}id|J_a>LH6}F>iy2I^fXV;=+0@w8{{QDt<5m0rpHJ=oe*viY|NnwemXMl=ni!P*
z|G&7}|Njzjo}`+rnxdMLnlfBOMNLgjTkZdUUA6!J^}wR~Y6fbCU>3-BBennkP1G#Z
z{{OdBvr@BGvjNN4s{Q|OulE1H1DNNi=A`DL=BoDpznhu|Sj1D!Tg^|+UoAi_P%TI;
zSS>^?R4q&`TrEN^QY}g?S}jH`RxM5~UM)c_Q7uU=SuI5^RV_^|OD$V1M=e(^Pc2`q
zP_0O<Sgk~@Os!n4LakD*O08P0My*z@Uadi`QLRa>Rjo~}U9Cf{Q>{y_SFKO2Uu}Zg
zM72q3Q`M%aO;?+tHcM@`+FZ4HYV*|=sx4AmqPA3Rx!MY~m1?WhR;#U1Tc@^OZG+lI
zwM}Z9)wZZ@RokYvU2TWjPPJWXyVdrn?N!^SwqNal+CjBLYKPU1s2x)~u69E0q}nO9
z(`skbE~s5pyQFqm?TXq}wd-m()NZTYQM;>lPwl?iL$yb0kJX;2Jym<I_CoEY+AFoU
zYVXwEt9?-WsP;+iv)Wg+?`l8PeyaUa`>pmz?XTKDwf|}i>Wu14>dfja>a6N)>g?(q
z>YVCa>OAVa>U`?_>H_M5>cZ+G>Z0mm>f-7W>XPbG>eA{m>ayx`>hkIe>Wb=0>MH80
z>T2rh>Kf{r>RRgB>N@JW>U!$>>IUjY>c;9O>Za;u>K5vj>Q?GD>bB~3>h|gm>i_>c
zsynGWtGlSXs=KMXt9z(>s(Yz>tNW<?s{5-4s0XSCsRyfvsE4YDsfVjas7I<tsYk2F
zsK=?tt0$-@swb%@tEZ@EsOPAI(g+0SsTZmL|6i<L0v0P(FH^5juT=m4zgoRU{r~@3
z^*Z(c{~Oes)LYbB!7Bd$Z&PoFvLGgOs&}jRsQ0T+P@ky&|NkWQ$?8+o|Noz=K23c(
zRNV~qS?d4)&r$#Xe;!z5zWV?F3)L5?FIHcoz7#C-|Nk;Dy+VDZ`YQGR|5vN8RbQvR
z9xS#&{r~@s>YLOzt8Y=?s=iHqr}{py_!0I0|BtKx|9?XLr1~lK|Nl>`p8<=XRX?YG
zUj2glMfFSSSJbbnUsJ!KepCIn`W^MV>i5*|t3ObGsQy^}iTYFZXX?+@U#P!Sf2ICf
z{f+ut^>^wY)IX|!Qva;}RsEa#cl96YKh=M!|5pE_{#X6KI)et22D1i>2CD{}2D=8Q
z2A2l6#{d7k8jw%`k$f6L8vp-`XozZvYe;HHgJoni{{NTN`2Sx{LqS7DLsjGde|509
z2ABlt($vs~vUN4|H1stLGz_79BPb101;WM}W*Yzhn?pq{G^{kNHEf|gJB|PU9W)#@
z{{Q#T@Pvwi^!)$t1Lg&Q$^ZWYHG(w${}0v()A;{CLgWAcD2@OBV>IG4{{K&cssQOq
z(fI#ARpbBvG>r_6Ot^TCMjn`*ukrtXfyV#;g&P0=S7=m%#cIGLNN>Hy|Njjd&0v13
zMw`a}|GgR$H2(jesPX^*B#kK=(=`77pP?~d<NyB!8VkXy7J*5S-v9rXK-tSQ{{LUD
z@&Eq{jsO2wLd8~VtOK*wYi!WisIggNtHw5sof^9|{{P>ju@@`@F$0y{r}6*)evJcQ
z`GXpV!1Q5_qhR_Nm^=X{5xP!loI(*fi^MwzW}nx%1g0T+u4-I^^RB~L|Nq}YVnbAd
z$lGAiI~xE0KLE4-|9`0QNaO$i#~T0tKhgOA|Eb0cjhA4Vw;EqGerx>y&!ows$)?G!
z3DOP1T$<dP|Nrx7^1?*~G{rQ<H6=Cw|CiE~28+sQ{{JrrX8r%K2&PrQBuGCDtAa(;
zz$8ozL~CgN|F5N~t*N8=|G%#0|NnZL`WR|J>Oj~4MaEFmSkn|m#7y)5e{)Ssu$UE?
z{Qut?O514Kf?0N&|NlFHS&o|j|2t{AX#W52s_CZb4i*F1^8ddl659*R_SW>%^aryb
zDgreB{}0j()(q2((2UfK(u~%O)r`}O*ZluKK{FAoE*VThRHs1Msha=)r)j2ZW@!HZ
zpQ)LpnXQ?l`Tu{e=KueBn*aajYZho0Y8Gi0YnDLOmui-2{{LUD`Tu_<ROJ8vDln^B
zvsSYn%!1g^pxLC^toi?ctLFdz?VA7pcYx)(G`lr>H79CL)tsg|Lvs#T45A)H&V}>m
zY0lSNpt(?U5m;o2=2FdNnkzI{Y5xDeT62x&TFv!f@r_{e|Nl*3db8&L|69PU|NpmY
zZUeKnYwpzCrTPE=Ud?@)`!x?}9@IRfd06v^=26Y#nkO_*YM#<Ot$9ZCtmZk*^O_el
zFKJ%ZyrOwc^Sb6u&0CtcHScKN)x4+qK=YyIBh6=;|NlSNe5v_L^R?z1&9|EGG(Tv5
z)cmCRS@WyrH_h*wKQw=8{?h!d`3Gz-$TuuntXiB}|NnDo{r}Ic1rp)W;?)w+`u|^0
zOGrx?Eb{-q2$&Yt64(0wUs6j>OCHSs|6f__|9=fFJuQ7L11&=>BQ0Ys6D?CMGc9v1
zOD!ucYb_hC|Nm{Z?6e%UT(n%Z+_e7xcL(eA(DKys((=~w)$-Hw*9z1M*82ZHMC<?m
zFs=Xp!@(**F8TjILMu`$N-G*F5~CHX6$fP}XeDd?|DUFnu9cycsg<Rbt(Bvdr}h7T
zzE*+O|Nn(r|Nj?jm1vb}{r_L4RjyT`RRz@tGPhc*9?ENk(*OTAY5o7-tkt5`s@1O5
zq4ocNr&gC%w^ol<uU4N{zt;c%6SV&SpQ!c!|0J-E$y!sirfN;onyxiNYbID^mey=A
z4Kja@*8l%=!Mu4||Nqa|S^#D*)>@*qTx*5aDy`L8Yqi#Ct=HP1wNY!6)@H4(THCa?
zYwgh5skKXMx7Hr5y;}RV4rm?JI;3@2>!{W-t>aoJv`%TA(K@SjPV2nZ1+9x(m$a^E
zUDdj#bzSR*)=jNjTDP_CXx-Jir*&WJ0oX2(D<Jrx)+4RQXkri<5cx#wsn#>F>~pP`
zTCcQTgV`XNH&E7Ft^fbuY5o8I0nGoX^;zqy*8l%M!90*U2>z?}PwT(d|NjiyjM^X(
zCT(Wz|NmLE|Nm#zX4mG_{{Np#n-?qtl10XR+Wgx8{|jgfLS==(v<R4lsT0-y|6fd7
z94saQCSfxF|4V91X-jL%X#f8&udN7{Qvs8zU=pDY!cv2Zs)K0_?f?HZwY9YW|JMcc
zA!_ur^|cMP|Nl3FiWzJF|8Jsgs%@riu5F=hsr~=IEm+1*`~QD?Z3pfD{~fje|98@M
z1&g|A|Nrj}W_f9QYybc6tNs7KADHj2{r`WUc93=mm=~%YrX8*wp&h9mr5&Rks~xAE
zq@Apts-3Q#p`EFnrJb#vqn)drr(K|3s9mI8qFt(8rd_FBrCqIEqg|_Ar(Lhzpxvn5
zq}{6BrroaHq1~z7rQNOl|9_8muXdkyzxG7!N!nAir)p2ro}oQcdzSWW?K#?WwdZNi
z*IuZ-2<!rgZ$ac@B>oa4Hc0OO{}o6gE45dHd27JrTJ3dUdOeujpuJIhv-WoFo!Yy!
z_iFD0i$P3)k^8j|Y9E4%AJ#q!W*yf)p?wO>0;xI;XPt$!K;q}L|NlP^6}beZLE``a
zUq<3xL1O>^e@**33jc=oZSDX6?`S{Ney06G`=$0P?f2UM|9{Z_s{Q}}H|?KrwST~@
zzuN!*{{yo?_AuyxNEl|+`Tw5@F2bzy|35372U5eO!=v;6Kd%lSiYUL10GKbR^Z&mP
zm<3WRtn>fB2$(0TBd#L>W=VocDKH6A1H#fe|NqM%iOA~6>nP~_|F5W{q@%2(qNA##
zrlXD||Np;+&j0_KI$AoqD5C%W>*?r&MGSR}bpHQ0)-eI|Kz3MySynpMVA@v44outY
z{QvKu;|OMhRQ><&r1Ss3i;k;~JCfM{{~kL3|9k3q>3Hk-==gzU{B{2S4+OLR{}0j$
z*7^TG1k4N73Df!iKU^mQ%mbMj31vm;MC<(jAEWdCe>_wqLFfPfM4cp^6rEI^G^p7B
z|LHoJV0M;Hj?Vx8c{=$z|Nj^26oJJ+=0R|=PAOQVOs5=7SLjsgRDoGFI(1<B|NnZO
z1~98pr%9(p=l}m!o&W#abpHQu*Xhvd(&^Uu|Gx(;|Nnn4nC=6U{W=rCG{hbVIaz0l
z&QzWM|EK9p*O>vAovAZRXSU89Fn_MjJTN_9X91W7>079?NM|ve2NGGLvs`DT&j0_b
zb=K%?)Y+u7S!avRR-J7++jai`-=VWpXP3@yojp4HboT2U&^f4cNau*oQJrHt$8}EV
zoYXm`b6V$&&RLyvI_GsR=v>sfq;p;8hR!XW+d6l3?&;jud7$%9=aJ51ohLd^b)M_I
z(0QrzO6RrC8=bd0?{wble9-x*^GWBk&KI3;I^T7E=={|ArSn_okIrA6e>(ql7<3tR
znRHon*>u@;IdnO7xpcX8d35=7`E><!1$BjVg>^-AMRmn=C3K~9rFCU=|NocOmD82i
zRn%3|Rn}F}Rn=9~{r_KG_y2!Q-T(i!b^rg@(bdxh`51!rbq#b4b^rf2(*6J67)cx=
ziy%#OO?Az5E#NAwpe!3OZ3`wLs_k_D|F_q5)OCW2xqxX`-T(jHz^woO-NCe{t{0g0
z*7X6?5Z(X(`|A3E`Tk%sKsQh~2+V@XBj{k=5ZzGSFeKS<FgrpwQa4)n|NmIsI4~cf
z<NyD7-T(g+bpQWP)J@V&*8TrK1*#%dHyz4?sLnv)fyA<O|Nqa?&4r8SL0N@hx=8o`
z|6<+$|4YC;ka`d<1@p>u%fa;j{}sBGx>dS0U|ubltk?bjzd^Sh%>MtsL$_16OSc=$
z>(TAi?bGeoouE5W_y7MXy8r)A)t#n09V`bjdj^y>6HL$2ovr)-|6JX9U>-;w8PC^U
z02f~fWi8TOto#4}65XY`%b_AGbyw-G2D8`d{{O!Y%tDy59?ajM`~Uw&-T(hL>23z|
zA@W;vx9k4@zfbr7|NXiLbPwqs);*$oRQI^<3Ek7WXLQf%p3}Xcdr9}Q?iJmuy4Q4X
z=-$-5rF&cVj_zIEd%E{^ALu^ReWd$X_lfRP-DkSbbzkVd)P1G<TKA3aTitiM?{z=u
ze$@S}`$hMg?swfEx<7S)>HgOJqx)C)pYDHM20cbSCOu|77ClxyHa&Jd4m~bCZap47
zUOhfNemwy_K|LWoVLd55X+0S|Sv@&Dc|8R^MLi|G|NoWsRP<E!)b!N#H1ss}K>pCy
z)6+B1Gt@KEGu1N(i-1He^epwP^#1?1hKqni|Npl^<J+R}?U8s6dQN)IV7`l<o1V8`
zfL@T^|Np^Y5s+EodeLBZf?kqdnqIbEo?a1{50d-;zf7+j&Z`8os=#Em-v9qKdbMCS
zL}i^`z25)-4PcQ*Fxd<yTfpT1|E+p$dhK9#2blc-zf-SE@Bja9z5oAv^m_IF|L=o}
z_v=m2n+Rr4)|&#R|Noz=H(hU*-v9rz_2%f!)td(vov*h*Z=v4*|BLnh|6c+Yfw%-h
zF4J2M7h3^mLFAChm2kOLa2B%s|NpDu;%oFafZ3b$w&-os+oiWhZ=c?Ny@PuH{~yx(
z|NpSw5xxKakAhVk(>tzrLhqE`88Gjx-Z{Ph|1auY()<7a3RvX-|Eqe}^sYnMH}q~o
zSumS#>D|%0t9MWDzTN}9M|zL-p6ET*d#3kX?}gq=y;pi~_5S~Vr}zK=d%gevKk0pj
z>iwekP4Bzj54~S{fA#)@#TfNL=COcD5Njx5Mg>Mi#$=|PB<9N0JjNQP;9y22W{qS`
z#zZC?8|J+H5=LESjUY{?I0I&FeO;zFBc?cGMs>zg#sEe=MjfU&L&kh2J3D4WeG_Iw
zeIsULeG^7|rUXZ(Esjiaj!boqOiGT7j!cfOjLu96u1s58nc`fTlw6q-Jejt5GR1i^
zDS0xwFxB}nCHOOK@n?$jXR7mOQu1f4VDx872xZz5$`lvMq!h}uC6Xy5gQ>WfDIt+*
zOCnQTB2!%=lTspMB2!{2V=_}hD$|x!rnpolrBtSbOr|ZFOmUe^N|}r)Om%ro3HeN0
z@|oiDnd<VHl=2y^81tDDN}0BlGR2iLDU~v9sbnh2U{b1NbYx6~VWut4Ok0wf;+&b{
zk{O*DA=rg6g%N~Z8B-b2FjJg6Q(QWuJ0l!3#d$ErWiWa$W-!%xGSy`=dNQJ5CQmP>
z%q*rjFQ&LGMsLP!Mjyr;bj-BHk7-LDqaPy}GpXk>`ZMN(Fq4u$lTtpDzbjLID$|xA
zrY%K`L5yI`v?Z8nOEFViFjHJHV=yBGhcK2fLNQZaC{tZ2V<;mWgF;sc%wviRXNoIl
zii>25t7KA&WZDwNw55tMiV=c?8PmW9f((jdtYcJSbYe^bhld+u8lx{`E@J>=0Zau`
zLO4@GIn$PKrY+@6O5sdO<xB~YObL~Yx=2uo5d^gv^O^PZ^jPxs^Ya<EFm2hwyk*N4
zMjJ*uX4lXlX1{zrrVw9d|BPH_LwyToV|@!|Q+*3&bA1aY8(qdYCS5zmFeV#YCR;m3
zT}FK-eOnO6&X&o>hRF^jRKuu^4tuw#F)%PN^zKmyQ49=B3@i+64FCUgGVn6+GYBz=
zFi0>+F~~9~GAJ|r|F6!V#h}Mv$Y8=?#$dr<#bCo=$Kc4|%;3i0#o)&f#1O&|&Je{A
z%aFj3%#g~E!H~s}%TT~j%uvQq$xy>k&(Ors!qCpp#n8(zfnhSkG=>=rvl!+wEMQp7
zu#90P!y1P544W9XGVEa3&9IN*0K;L1qYNh)PBWZixX5sY;X1=DhPw>+86Gh_Wq85x
zn&BP8M~2S~Um1Qd{AT#az{tqL$j->c$iv9TD8MMhD8eYlD9I?pD9@<GsKThmsKKbk
zsKcnoXuxR1Xu@d5Xu)U&3RXr3MkhuWMmI)JMju8$#sJ13#t_CZ#t6n}#yG|V#w5m6
z#tg<R#vH~x#sbD7#uCOd#tO!2#yZAE#umml#{d627`qsI82cC}Fiv8e!Z?j_2IDNo
zIgIle7cnkjT*kP9aTOz|{9DVoo^d1NX2z|II~aE}?qfX2c!cpd<4MNTjAt3oGhSl6
z%6NnEHsf8!`-~46A2U8>e9rii@ipUH#`lb$7{4-pXZ*?doAEE>e?~?o7AAHkP9|<9
zJ|;mX5higaDJEGa1tujX6(%(%4JMFXgs>KpDjg<0CIcoTBoTye6Re^Ld1RIulLcJ0
z6_X8|4N_yr<bc8liDAP|OfE#J!=@J|=Emefv>9GZJ{W5Km;x}wf|x=u#9;QJ(_u`J
zOfgLHOi4_sa6K7J*>H9qQvp*EQwdWUQw3ZMWJVQJ4O1P{|Njk4|Nl2ZWm=##NFIhe
znEwCoW$I^|1ecq}Gy~3tse;h+aELF0iZ6xI5Y@CKS2C?-+Q_t(4)*P2+QYPu=^!0!
z!X93Sng0JjhGzRoF#j}|JPRiO|G&U=8Or+q{~FUxIQtIM|Nr;kJcJz&pkj}p^b;uk
z3`)O%(l8yb(D-lA`0vp8AE0~>0S18*0R{m`UBJLFMSwwIf(V4q&cML%K$JmXiWm}K
zj6py_9KlZzXAoF`#D5^pAn-*3As-;gAh1Ca!Do?T5J-?h@V7`Y2t>#r_;X|#1SZHK
z_&M?n0tpI8d_@KU22}=u6io&Jkoz387zA>(5b_JO7zFMh@fEZg1bnm+@+H~~0(X%3
zE;<YXKDr2bA3X+v96bo1k%56BL!Uw5gaLxDVZ<QNVT|B&m@)`tm?8Kl%ozkaEFgSP
zm~vP#2;8tj@I7o81UzgZd?p44h7)!S0ypd-e2{${jtl}H91(mEX9j@|7YH9@-U(L*
z0ReXeKf{AT;D;v?-<v@|!Uw@$;maWK!w<oK5x^iI5RBk!gfa+B2uJW&L^22n#31+@
zaSQ@C;vsxykb4su1T2yve31JyQWykgq(b;0`4#C50yi=se2~0H7K1=U4ulVq@5o~i
zP$)p~Gm01l7L*|PC(0NEDk>2Cj4B3!h#Ca{L>+^GK?8&j3a=H73<3eo5I!h;GFlk~
zX0${2Ap1PJ7z93aL--)~X!J1%1WbVNLGmXiF$f4uMesAGGYD*$iQse0VGx)w7s3bW
ze=(myV8cQLpJNGwz>1{^{)y!b0v}dF_#pE$)-VV>SPS8U^{;0Tn6VMU2f5c{GlM|K
z76>0CpRtWWV8wO_AMC%K3<4Ru5qyum3<3`OAbgPi75f<kejI@CLH6A^#2`>{1i@c%
zj6tB|ID`*Ye}X~a#YqHz!YKxUKc^7<j57=Z31=aEuzSuk2zXqC@Im@LE;9&pTt)B`
zt}zH~xQ5^hTxSsIxsKp3;b#;`iDd+rFCg>wOk@-&xdGvW%;UMmD3EXq!PgLD5=hBp
zf~(J&%p}k=1;MxAVG~$V$Oe{YV_;yIP{k(TQ48UN{Qsq%P2ff&f*-S-O<>PTB>oyU
zfjjHi1RiW)69B0<*vKYOvxQB-XFG&HXFHof!+th_HOJV%<%_^^Hi13IA^Jh?4>-Xl
zaNz`kpKy{*z~?NRfXYQS0g!ydMK*zk8*BnG_aOW;_t*q-9<T|Vc?jVPJYp00^BAH3
z%@a0(o~H=D&KouXgSQC2%{w-MJMSQTP<gk-ja^`YJ3H9_ApQamb^#MF1pkOPyTAuu
zc7ZGY>|pmNanK4fGFUJqacDAFFi0_cV_3zQ#Sq5uoPm+yHKPCnvYny~&lx^4s53A!
zL^EVD_%JXs<THpeEMgR3U}IopU}H$);A3E9U}T75oCGEX7#QLD-!LMZL=Ky2BL_IF
z$ff^o;1KX-U|=9uKTO}R4IBcN6qxg61BZYT1^Qv`80_?$4IBb0c>MWv1BZY-9(i2;
zyGLR8qnmqu1BZY&9(P>Xz#$NZM;_fg82`cs4gqa4^uhEG7y9f54gr@z5Dteoa0qxZ
zFfi=dz#$+`1@~+sG99klz#$Nf$G#OLx@SI``dJ$|1f21hPpxz`Z3BmZ4jJ}zZQu}y
zB|%@~1`YvL64Vp&U&RLO^+w?a4gm)wdot1Z=;p?4;1Cc*QjablPGWxdC9*zp+Q1<o
zg2!HTcUW!U5O5<wJ-U7vUw;FKfDi@dsNo1t<qaGH9t;c&vKu%A!WkGC1U7I8XfZG_
za6<Y2)^iBR;j#DAdJX}9B>7kCA^95SZfem_)?-gM=;q&8&mmyTz`$^NJ@)!;?|Ke_
zKqU9V^lw`a$xo}-Q&t|$TaVhFn6jQjz#5Bved{>{qL9Sf(fIZ2vDe2{>p28K4KJ9x
zVRY_#4gqB(^I+of>p27hu!zItDW${Ka|no0V7~8q4gp;T1_rnF90C$p%(2EHuD6~;
zKm&_<LjF-+k6O+UQm;T{x<fZdcs+*zXd(bz9LDD+AkVy>L%;%$|9-6F5HLiN|Fn)n
zzz2!{8jTOL7e+r?$01;aq#h<th`zp#L%<7*zT@jS1VR}Y7<RAY5D38{kIUQ*>+rYV
zSFYm_a3aAxbbA)B;{f*`(Zy-apSuoH?$27sAs~a~{=Rki>)*C@90H(uq?&b*d{MlP
zL%;+{KQ4FYK<!CehuY4KUk54Aap@x@9=VP~05o0_wvMv;hmbvl<UQ7L2=EdS4us4h
zR^D|T{`LjT9E)`v0-9LdWe5!~?R6Xi?nv?~>#)~LF!Q9K=|*@Rhd>aLKA1d=W?Kho
zm;G9cTK~f2zpRDm|F9O4j$T6fFnJjLcrB#fd$5*6Knjn2F!kv4)wLV~k_-$CXV+q{
zpO3AD)Q3CQVy}16&BMjt2DJy5{D!q00<J{3f9YEC#vSIaMXhh9t;L=``qyHwhwIjI
z2-sk8U*%d3fe0k=Vl+N3|I$l5V=a00d(2u60Rtp|p}RK(&7a<Ae229h0<u{2o2}&#
zFvB8_ZobZ1NV^tYoLIgpj{G18O$Q=tN$cnFtmOcYi!!do-p;}0t{-c#=PO+5->f06
z{>5buvEq-{V6UI=tbvpZ=;mBqgTGyLX$^;fG*bK?UqfEGgl;b`{+>0EdTr+#4gp~#
zdvU3UiEmoNA;5t}{hBo#0x=8>4D;7O>hWo7AmvT>8V&(tEb3wA)#C_9m^`U;@ft|E
zkFGCc4Qc5XT|cS(IH><g)rYR$e+~9_Crq8k8V&&kEa7Xr275UT(?^IlUV}Pbrm+UK
zzE@boA)tuGUP9*Ll9z<0A6)V<abC21!3a&qF!>*=A@w?pPl*1wn!IwJkh!#yf3O--
zj$Wm)yU(pgt)Gvf@%OFf5MV)y|IMp81Wb|mD^?RXUOi_uq<+8^UK3VB(s9>nNV^WE
zu6Z^7`k`tyhX5y%dtmxtbpC1%0Z}~iFm(y5IRtnZ7#Lz!a|lEusrOk;+IWe}YREVf
z%v>04u^Rt4lj&;G#@%4%Qj1n!%^|=K8Yf##S-S$4djwZgR?o4n#@=4~y9zSS^m!Hb
ze(=*(#EpmCTZLLL!~Ai56>5116DLHUgxY&}6^8&f0|Ue6Rg~3B%U5A<ZxC_^F8Kwk
zAnk!!t2hKAk<$C*RU9be;jK`A;4%l7c=amOdIgs{YKv#Df{aU$YHs2x{N)TG^CDKE
zmRm6O?yD%Pcg$9C2<R~|FmS9w9sh!vPi^}1N=SMo*4&pXIRxyG(hsrvVCt@}#NMwx
zvywxA3yZmjS7Hy(-77f+K<heS=B{2z+Bp59m5_42ZzXlZxp^grfIgBxYFBay_%Sdr
z6tCnEFh>%Hxf@33t|TozCXwi0m_6up*h>8MG`e~i-+v{f{)X`#SE9BXVB+Ys`AXFM
zs<aYyJPBRBI5eKn#fjzf;PBs{71-+!V$H>+?&}H;0ec1phQ}))<>5srjY~bc_^}m`
za(ed)NPBS83ds6_<xp{S_4MY?f%*?-Zx7U+Fg`lnvI6_~QPm3k@s4f|vHZLh90HDb
z@)@z_z|>`|fXuJQu7LEbVd8}7z!lir7libo%R8+=%`fI8hMVpR?By-GJ>>GGR$y;$
z^O2ce*;a6X*Q4Qb55o!$0ag;?_v3Qn(%G}+sO1?h`>7><eL05!ACf<gFNcKVw&jp^
z^Rnfn)ypt<&0db$p6`d62a_MFbR9Gv3zp+g&+*H#_Zvc%V{b<g8y>#PA^kOXv~=RI
z95OCOtU3D2@%Ia1=BO;EPWb^dk5XC^nm#Ethgki>%dwZ^>_mnivGxphb$^yY$^}Z@
z`DPiUUGZQU_WW^i8EQR)%f184Annu*%SfvaahW$%#1|~1Z~ZXP;WA+vW##2SxxaN8
zq@1Rg{pHJ0>sw;&O<zV@I|gQM%rZ!S0LCA#bigvybtc2rpD=$ppru<AG(JonjMk(u
zeB_ov#y?=@4HPX3t>4&jr0efXNpt73rKsuV_EN|=>V>6{`fs58IchJY-9TwL99c?P
zyLjtT>bQeae^5*Rx~1gRBh<2g)STg!o<`$yG(JK5ZE2Mb<}V!_?bq(5sOySx`L}*4
zhky~%I2|r^qvE6ahL-tepwm~$Qu_9*2im{G)&2~${?Tyt=cvDETOP+k`_<GAXFn>p
z5A0~<PHOvmu$X7D6tW)DIl$7ylEE|BKi<N^)Kb^d%FxonlEFJT-Z|dX%)n3=%tc5e
zR2rHf*d`3Vj?T`JL7qN7p3V%;!2!+|rUt&DJ|Uhyo__A3jy|Xcnlm^DhdKwFFgW@J
zd&Wl?>zU{pTAEoP%ri7bu)$1Sh~p5Vh9*{qmX=6b%s~zZ8SEYG405=krG+^I+(~c`
zn1hVa^$gNAw6tV!4)zT8_i+sI^h5Rw$RM!65KAHc1Z#l=l&+zHnTeThsB^Hc3B(9f
zb9X00OA91TNamS=%mZ5s31LGtz7c|NW@4u2859QcnIVIhXK;Lkfsug)C<?%V0M%~_
z@&bfy4AKj+7UU%pBx?=L7@Pwv%#lRE`oR7$M~ZMmGb<wl0|N%<07D~F6ObN5O9u2X
zF+*5sXbN(k1;}|I*MSm<xfzHDa;%||o}s0sfvy3PdIJV`r+854=vo+n;@!{F+26(0
z&@eQ_4LMW{K*ky&^nt9guwVd(vaY9Jh-;9aqYpwF9zKRfpr|x}D1?wcu8?Q}`@$HB
z4NnfRur&l32o4fcOPC+P0d5KQ0W<+11-=o3bAY9>8AG_IpNoHZur4Top@tb6G57}S
zI!6W}xzYj}KTf{7&H;vo#$c1c_8EZk7$l2<+yIGANKAs0x-r-}&SpkN2B5rQsT<@E
z@ra>`muE0o93+A;6p<*67(yXo?BwYVG8^IxP}cAa_BS-O^zsajFfcMS0>u>A7EnA|
zz%==IhJ^UIGI%=qS{Q<I2-GY?Lr^pt85<gbqcOnP%p8>G9fKU5Ksi3Z(%1;Z_jGpk
zarARxa1M42bq?@$aq|uFatv_va}9Q7aP{#IiMKSefcV4I!rcjEoCP%MoLm`PoqZj3
z4Gm2gLPOki4b8yO=;7$&7Vha1;^FNW;^^(@=g8n2>f`F;=&x%CbFr?WuAweSi#bDY
z8G~y?h^wEAt4n;SpJzloD5=E<I68Z~y2QKr2l+aNfT(!5n?S{ut6xZvqmOH7kbeMj
z!hv}$7~)P)NP@F{FvR^9=8$kSfJ7QN`!R%g2Adff=oy(BS?U@>vXn6>#h4mEvJ`S+
zG-U{J4)ZfL2PI%o+BXJ!+Z<tru`$dHbBJzKIi$=432yHokQ*VfZD<N{B{&O!b1%s4
z&VG;#q8l9U7!cs<!r%ig9-vyxAjX7*BWZOHa&`4)2=#CVYcxX1h!Ab2U}qbeIf2s*
zC|NlB>AE{1nSl~f3?5Os?oPU(m<OeokkBA+&tMOT>7WSr({=K62RR;0c?SDKYyr6q
zR#tnsIt96gGr;2qlvK@-6@W_-h(1Gb!Deh`$l&eoX`vew3d*@ojy@qlp1z>a0)>iK
z0Eh)u4^bD&0QQ8gXRyC#kfE6=L$HUZTS&Z@XE0KvF*pbNIy!s$h4=@1FobyqJ9~N>
z>KW=9g8UWg9pvcg=gQz49PjPu=j92q7F=L}3t2CJ4@W0xxH0%Z3I%YkHv+o^l$K1*
z8GOtkDaaHO`=CI9*a8V#BLgENP=p5SItDv?dV+O=4S^JzMoz9^x9WmY7{nkmh(X}w
z04jt`!C4p@oS>lg4AM0+FlKP_bk}wB408oBz%(eA1o=CLcslxltpPdE$Q&fCYYHMw
z8Qfj{gWNqG{d66j9bH^~BOw+VLM$`{6^x+hVsH)y2P7yQL4}SXgAd48p27Yg&v*rZ
zN>@W8Q&7rA_z7g0i3NiXxIQy8V{i?1)^+v+1u}@~?1u;quK?s=HfBI%T##=;%>hsy
zXT$(5{UA;=Le^o<;A03$iHHnh1db*Ph<`wo1uQRHfSdryABbe&8>|aT(g-(s2Qm0q
zfNV5?Mhi5hFgOQ$1O)l}I{HD%4^RMryakE|C|lPxA_N}XW~K~&t`Q-@A+7-+Z|i!2
zDX##KBf!RZI)a!X9*&-%&;~^+ve!%*LW2=zA?hzfBU5;CFf_Jc0O@lL2blyml)*9B
z*I(BhTE>Ch<rSc7h-|VUgO_8NBZG4=D1!xo-R2FZyn`4VgM2|rQ`Z7n1EgjJ#j24R
zxSBD8xBzB4N|YEOQdU4P10+#6dw7ED6L?TTGcYLi8bQ)WNI0^M79dxFiZwrI;R<P=
zfD(nF0k|OnYG%QM$It+h-E~396jZpFBAjes05U??%m_?_D3B{WgLKV6p$<t6AQ7-<
zyn`4l%*?>K5LUNYFhJC}J9#sB1n7bT87c-z2cAK?rWOod0SusY<`Ko<?H}ao=*Iw6
z2nu7}Adpp{mNSTUb!7;$U<d{|m0?0?=hNmlGT~vt-LV|qr9935bj#D4|1p*&HXr#B
z7W~4Lhk>E_h(PD@#{Y>N3=H*Nt^aG>dRhL0hO>5QByk9I^9XeM{^?@w4*g@rRI1&4
z<VUybABTWmXU2dRA9x{}540XA6@+T)odD9+dEqsS;epo-y{R{%<Kj;q?)(OJM@ew=
zkuO;)FV@2}cDnv)uKmMMD*IvzF9Sp8f#VFIeOWs|2iCs)#>l|XyA9-!ZdZ;@*FC+i
z2RdDM9CzIS+9J{Ix~EH^BXoU3?Rth<)|cxU85kOB*C&*5HPo)JDraeMUH_olbw^j|
z`VIk*l2WGEQvZE7G}mrmC}n-w$jHF(-*wM_*B!67_m-$JG#~lV>w2I&bcg1lpkCJl
z0WXgK`~M#lDhE1Uw=~yoVJH<k?z#o!5-^ALr2``aL$~Xn?$9mWUM!s+JP7uw&Wi^h
zvh4DR<`C$P5#;Fh5oGD~5a^5$!B7$cQo<wH=^@eW%0s|=7Z?b7Pa5I9MGOe<O~C5E
z=YP@s$B*nkrq{^`*K#13$bJJkoTd55pDdOvP)IZ%;0Snek{g^HkVRzzUTlVlcDw#L
z?w|lVeWN?{Pv?c#(k~WqLt-3s;tn{*U$aAxo$rqAIC;3Yj3Ko1Y2%v~1_p*;a0>X-
zT+72yBGm25(`>=O-};S#f#Ed^*nhPm3?*FMt|HAA45e1D8IWDT5%9tg;sRt*nSdA4
z5K+SeFH1QX7+%h007q$ag$P4QV)KzdU~fxwa|L#Xih#*KLERA||1U$6#gFFN9}KnP
zFYa<dJOMgp6YPnX>Kq`0M8Mj*Lx1$jaCJ&_yGnG2N_2B|hyLh1t$Ddq0@*Db0WbQw
zu!USDMAY!W%ggKx3@^{I!}7y%*B_w7*zL;GEzlYIrQ1~iM1SaZ6#>z2K(+~VhQ4U7
z{Qyes`RpJE{pk+<5Y!#|C8#&_Nl<qv$Tuu--#lopeZWv303u5zUvNVGq{YC%aNP9=
zI5TRoGcYvQKKNfM`QjBP#LJ*~gGqC<GcbU?-+4$o^g(CngO^v>KpI{!luEwX3Dp1!
zBbbI;Y*0tN2<iqq=nd3S0&qv&X|BD)P{R5$gbkFOLB&pUg#rVA%Rg3#)&Pm-M=Y(E
z_**_QfI{z2x9gJtQ10z^{S)w_@$g?*4&KvTyN7|l<uoLMy8~o8Lw9t$zUg$`((U@9
z({;mf*ENvPTx0FJr-u1;+JxrX7YwCb$6Z%|y#6|I0yr&z9J;3SVy{RqNOiC8fo>75
zpzcsicdux!UBOV#^jfpqb%nL-i!#<17r;qk1*7YmZr2r>t}p((u6aG-<tA2Ge1gs2
z(HS7q?YgBCq-aB@>kE)6wURGtI3S^o9C&kCK@kIXU1RMNHUkERQl8_kD?sjgZP#1I
z&{+HA8%U7zxa$f~j(e@ySo`F^F9SoF0*Eo6fuUTy+w}=6!>0fLdqo&_c&uX=;NLI8
z)ENqPJAaQbxO`jDd8n5~XqQF+y8!=o7J;-**LnQgW9KzKW@z~TKdm!%PFiE?y#MuS
zjjr<;4EVRZ&g*ntaNKo?odGm{WI99FfCG91IH0#2cijPUV&}K!+8vB_Os_M+;mmp5
zbq_e4<H5lI3g#V1!Mp%hFoUDDp5?Vh=eKUxJ)nT*c##guB4rHSu6w{?y$2lDJ6`v{
zbYp?IDRd1ulsAAwc?&p{_b}9oy%1x^2<6v;Y0b5B7)qF4bNqK*@$&7z|Nk3npNK0k
zFz~naF))AvSqj8yZ-gZ*iRMR4t(Qt98f%|`WJ)-?U7x(>=q+Q|A)&y)@LI1s^iQ{!
zMDs(&){`YNjkQlC6&M&w*>`{{me;I15<tZn7r4CM0Xl4}({%+rKvrN)Xs`@o%nWwT
zd<F)FGL^>KC({`j7|NwV5uETJ9Kkz1LOBHZ_p@-lJjcku(D@DI4<-hNGWEvVC-O`T
z4CQj&p-&nQz4-h8e=m>FE{kxmYQdKaKs9iQ8px~rVe0QA)H^`cd%)BeAk_btg__?k
z2REPL5ybosn0in(3M#)FYoENAgR1|IP%rQhqJBmM)IFfXo1p6X6`<<v72xK7xDQdk
z0;c`}=n4~v``3V?s^t_U-uM+67|OI7YoA<KWMC*)1bhC&J&0zGNT_9VK$;=fpfuJ#
z;a7s%C$5CB?=D2kj3|hf*E!JotFiV;JWPE)Lj3}$`V}zsHVF0qRiNhEtHRA^xD7G?
z1WY{-RQ(Qceqr4)i;01u(-oR$pEEEp?C=QU5a<qF!FULq_15rj6X*=x@ZWU}C?$ak
zzAfPVxC5LY_Z)Yf0m+Zut~0D%HxzNaPKUI&!1<Evxa$<KJ>f{@U$^fJ##8*;K(!)f
z!8fJ3b_%HAQ|oq}0?CipnHfOiFWs(F!1-|sI6uyK-TxBQtOL0zbPG5??f~b<J>dK}
zg`rmdMH@3letfwc6d@pupaw^G=!>9?zyBE+u$91&jKTR@78+hJ%%R31)o8DyLDfsG
z*b8Z>98v-M+P>TM4#)>=FGQIc7$$VP-T}M+j;8C2Zr2Cat{=*HUi@ZaV1Sz6?fQVx
z^-H(w15MWtFWY|n{|~B}L%(zifNJK@4<K5kJM;~Rmgo+B(J26G2V8i~&^@=}|Ns9d
z4};sr63{lzkuTs1tb_?vsR<Y!c+EHg-hPIv0kwdBFqT*}|6r_VYduiH|2nw&2UCf~
zYadAbfvx@1?fa)&$U2aRf65{LZKpap3=h0^Ly`AV01FyI;#Z*Aih+MBSgD7C;eppu
zFBn0|>%egaP(=?(a%>R&Q1^g36}}wZp*)?Jd!7F`|KKV&>t<=K-pe8I|AE&&4gnCh
z*vBEDwvR(VWFLnB(>@M?4|_QT?(O9eIJ1{SVAoy_ffai>1SarrbL8qZVc4OO$RWVL
z-Gq(tGygV6P7Dza3=wt=5jG4FRtymq3=w7w5hipIMpS{<4E)<%1pgxhZP<EE<U2or
zx;$UNT^>-@g5uE5r#nFP@X13wpf+vu8;*qx2RH<pEf`8<!K`kE{};fF-T;<PQLtPE
z3q$GSlZPSwH<93lDf>ADnt%K+l{7riY@4y4Lx7=#Zx@JeKE&eCY{gLez4LJE?Gm1D
zmboCM|1Wr#erZ1PC1c7y4uKcOf#3gk$G(8ZTk{)^W?Pm690Clb{Kr{A43OhqOaiCH
z|EeJmI0Pn4_^%oRrG21u1e8vI(g6_q|Ns9WZ-R;n5IvZ10VtRTlY>UxLiZ4OYH<&A
zq&|bj1r7#KG6$V+1Hu*;I2b%Ga4<w%;9$s1&d)2;HPkcKOUcP$U|?9Whl8PKBL~Bo
zJsb=NHghl}fYe;zV5qpj!O(Vrg8_6W1S10zLr!KASSy?npPZ9loQmM)7o_IFdC4Up
zv*{iHBiKTn2cT2UAOUdT0SAK*5+5RpATu6tFqAytV5oV(!O-%6gJHr04u&~M>hZ}>
zW{6KMD$2_Tnf8w{F)6>Ogh7KTttd5>fgzeHH!&wCKN%#K%#@p&Tbx<~VmC1rmlP%E
z7J%3cAbYUj+~Tt2q7rDL1S=dRND2V~1_lWR1_mut15*=I3sW0Y2U8c&fmR9(44`w*
z4;q@8?lgUBy47r^J%a%Q2r;l58XLwKoihGxEM;P8y4>ut*-!IR7N0F_ti-LIt!r$$
zY&YB9vVCR8;K0BDI@4Inz}X<nK-bXND9WhP__)bW(_r%|^Ii*Qt75BJR)?)#SxvT1
zwpn6x)7IHO%YL#wLjc4cF~eZvX5&@HmyLfJhnZeBXSUF?2)3xQxMmq_(`>WK=CaK%
zn@G@MD+$Q<{4}gGUTl2Ic&W*EQ)M$Rvzz8pmcf=)mYr75tu(E-+dQ`6vNg8d3DQ>p
zu_xJJsljD~Uk1~R9-9c8dYTrS{xsWV@z{dPa;6nXy|As7ZL;k*JB9`Z2GH5O#RkU>
zJ{V3mK5YEcSlMKz=`C{>3uB8?i^UeFESN3Jtc-0+Z8qE7g1Bu0#BGxe4jX(nFf~jz
z>@xgm6l~gTdero@sg&7F^Us#bR;gB#t#(;y*<7|&w+ptbvRiD&umGZu%iy!2yHT;x
zETh9lmL{)E)y#s;I?aBX8(Sq?O}4sf#cZu*J>NzdtZOsKPa7cmBn_?@{x+;MK4tR7
zMA|gibdK3)b7c!Ji<_3Ktgl%AwpO<BvZ=JKwmWS1%1+q+f<40lh~G>Nrx_kLWHVwg
z)->K~B4+Arnq@lK^p4pz^EVcHmReT9Rx@otvD<FH-JanBB<(CQJZ+e6Jl*)Ysj!(9
z=&()!M(`N5i$SgdLjWT<eND1GVf({Y!!E+E!)}M&1bc=FjNr?SN{yBoT{HS?#Bc$^
zUu1F4;+MrGO9lZZuo)-K-kLEaFhR_)JYo66Qo}03s>3P)bjW%EM9p^NyT%L?m>59k
z0j@K+Yrtb@ZJ1>^)9{4h4?_*32+-Ud1H%D`+7+O*&A<#cTN`xXOan7Go&UDevX8Xy
zu-{?-!k%FQGuS=}0}lfQ!+4`^qaNcO#?Ooy4lsk=e8lXVnJh>z0}I%km7s$j4Iu1Z
zPy)HY0@iP2nqfM_^n~dTQw_5SGXrx52Uf89=_Y$k7!I&9fX<07vRGkp!-B)o!ZO2h
zhUE#%1)xK^8Q8$~ytEOswFMn+U%&>+N(`3_IgBifGK^*zoiO@gbisI$=|<B7raw&$
z&8p1UEmm7Rv|zQAwluUnZTZmhljR#bF8fOR>7c__8rZ;obTv*kK4SgNS{8IL?E*Fi
z(0vlOjk!!LO)^Yon4B>AVWMFgVcKE3!}Nuzgqeq#g85bJ&!BMLzy|hDt97?^zx8D6
z>DIHY=UXqfX1D+m-(<4GWRJ-KlOrZ4OwNG(|9}nbH%;^Nmj5hutzxXYt#(<xu#&L;
zV9mh54h{nyb5nB$1$MAMb4^{$d_n2P03w%Sl54`?0Fmo8O)<*_$pvsQ*f26Mcv$;b
zM_9*LXIST0S6J6rcUbpW&#<0jy~28p^$zPj)+embSl_U|WBtPVjr9-fKh_L395y^Q
z5;ih68a6sM7B)6E9yUHU5jHV488$gK6*e_C9X35SGi>JAtgu;Qv%_YO%?X<`HaBeU
z*u1cLWAnr2j}3<{kFA8QjID;Pj;)2Qjje~Rk8Ol)jBSQ(j%|f)jctc*kL?WGIkqco
z*Vyi`-D7*g_KfWf+dH-|Y~R@au>E7pVaH=9VJBm!VW(qfVP|9KVdrBPVHabUVV7f9
zVOL|<Vb^0f!)}h<3cEFSJM8w@ov=G&cf;<E-3z-nc0cU?*m2nN*h|>U*lXD9*jw1!
z*n8Of*hkpM*k{=1*jL!s*mv0X*w3(^W52?Fjr|V$J@zN;&)DCvzhnQx{*C<)`#+%g
zPvBs<!py+HVZdV`VIX6mVW4ARVPIq6VBlfkV-R2vVGv`GV31*uV^CpGW6)vHV=%#B
zhQS<z1qLe&));Is*kQ28;Do^$gBu2S3|<(#G5BHd$AH6-$56sh#!$gf!^ptM!pOnM
z!zjQg!YIKg!>GWh!l=Qh!)Suh45I}`D~vW6?JzoEbi(L@(G8;qMlXy$82vC}Fy=58
zFqSY@FxD_OFt#vuF!nGGFpe-zFwQV8Fs?9eFzzs(U_8Tkf$<9C4aPf+4;Y^?zF>UA
z_<`{Y;}6C^j2TQgOax3MOcYEsObkpcOdL!+Oae?IOcG2oObSdYOd3o&OeUDjFj-)-
z!eoQV4wC~WCrmDw+%S1y^1|eU$qy3-Qw~!BQwdWAQw>uCQwviEQxDSs(+JZ9(+txB
z(+blD(+<-KrZY?zn65D0V7kNffawX-3#K<rADF%{{b2gTl);R{Ou$USOu<aU%)rdT
z%)!jVEWj+nEWs?ptiY_otii0qY=YSgvjt`=%r=<qFgsv&!t8?C4YLPkFU&re{V-!N
z=P(yAmoQf_*DyCQw=j1w_b?AIk1$U#&oD1AuP|>g?=YWWKEr&0`3mz5<~z&}n4d7e
zV1C2=f%yyb59UA287w#~1S}*h6f86>3@j`x94tI60xTjd5-c(-3M?ut8Z0_2CRog{
zSYWZjVuQsFivt!XEG}5wuy|nc!s3I)4+{oM4od+`2}=b_4NC({3rhz}56b|{2+IV^
z49fz`3d;t|4$BFaGb|TauCUx-xx?~+<q69RmNzUPSiZ3QVEMz6!HUC5z)HeO!Air*
zz{<kP!OFubz$(Hj!79V5z^cNk!K%Y*g4GPG1y(DpHdyVjI$(9e>Vnk`s|QvutUg%%
zuwt<0uokeEuvW0vur{!^uy(Naunw?}uuibfur9E!ux_yKu%2K&!+L@B3hNElJFE{_
zpRm4QeZ%^J^$Y6{)<3}cTEIraM!`nI#=yqH#=*wJCcq}bCc!4drog7cropDeW`fNO
zn*}y2Y&O{JusL9J!sdd_4VwoxFKj;8{IFrL<**g7m9SN?)vz_NwXk)t^{@@Fjj&Cy
z&9E)7t*~vd?XaC-JHvK??F!oswmWPO*q*SxV0**%f$a<154JyS8SFUh1nea26znwY
z4D2lI9PB*o0_-B}66`YU3hXNE8tgjkCfLoeTVS`sZiC$py90J7>@L{duzO(l!tR6J
z4?6~X4toK633~;54SNH73wsB95BmW72>S&44EqB63i}584*LoAGwc`Gudv@>zr+53
z{R#UE_BZSw*uSv<VE@COp@4&d1Jp?~;4ly{kT6g%&@eDCumI<2P>u%W=K_NYg9d{R
zaBc?WWl&B&U~t0Vg24@g2L>+;J{bHkU@+t`6fl$k<zqtwLkmL(Ll46M!wAC!!wka$
z!wSO&!w$m<hBFKo7_KnfV7SBZfZ++l3x+og9~izc{9yRQkim$<NWe(KNWo~d92hMJ
zM#}-Zmjex><-llrV6;5|YUhvW_P~VEa$vL^7%c}zd^xaygCPPmi8I<SpyK!d0|Ubb
z4u%>A1_lSiGQ%pPxkh2e8s={1oR;R6>6X(ik6V7XG_gvznr?O6>XTKeZMAK^ZL@8=
zZMSW|?PS~OwzF;L+b*`<V0*~+itRJoAGTa}GIn})4t9ZdX?C;imfEee+irKp?xx*C
zyYF@^_A>UW_Gb2W_HOom_F?vM_6!F&z+-0M!FK^pFePH3U@*bxj8TTMfQgUE2D1u_
zEfy?RFRWCoTdZSjX4w3&xnRp<S7Ohg08w9Hu*QJL@QI;<QG-#0@f713rW_V77Dp@_
ztoK;k*#59%u@|tHv5&B4FyI7_-36E&u)JW+W0Pa!V%uQrW7lGTz@EW@lL2(+pn|~_
z0|CQ3h98V{j9-|<n9VSgF+XB{!JNlpg~b+&0~Rb+0#-g&A=U}tF}f=@4{T&?ci0}W
zy<jV1uV5bo>b){B1aLBd?!jU)5HQFwtT5bSxX0*((G?>J6BW=Hj%kT$gK3ZH3$rg~
z2Ie{z78WiR0Tyd4cUXS0oM1J_YK0YObkD@*g3TQp1v?$P45<4V7#I>b89;N02?jX^
zD-2u=0}NvfGYm@%8w`1jC5%IiKN$Zp<}j%-?JzxJnqZb=R$<m+_QRaT!olK>#S4os
z77Ug=mJ*grtTtG^vFfm%V!Z%7u6V>cz&6HqhOLR619<c<#je2ak3B;HCj;p2Lk<HM
z10TZ(!xX~;!#_qG#xBM_CJ`nnCIu!UW(sC8W+~<c<~8OW<~o)ZmL--oRvlJTtQJ_g
z*aUz_A(z-BfJXvb>?VN5?;AK7K=%px7(^IMF_>ex!f=b>0mCzf3yjwozc6kwnP4)<
zWQEBVlLE6E(5RC68S@+FPs|G}Yd~W(R%fhkSUs`&VD-o9h0PZm1Mo=X6Wap&8v7lf
zali?j3@Ho@44`qo7J~@}a||?$OhBV`#x2GZjOQ4yFy3N(!1#>u4$~v13}$o8R+w!u
zJ79LktixgoXza-HiRA~&Kb9O;B324kU#uByY;0U?LE(~NTVmT_3mTbhv1eESv7^Ue
zhQShp4d9W(79&VXEirB|?lGQWyu>)cG{<y>sf$^FS&UhRS&3PLnT>^qMT<p`<qXRu
zmK!YhSc1~d3hNEv@mNp_0*%Fj#zjRy{@B3D09p#DVPIn5U;qlKCx#ykb&O1m9gKa9
zL80@(<cBGXnShy$nT8oCghVW4EHx}mEFCOCp`&AMV&ecF1x~RkumO$Gy4XDckG6tx
z0RscW0Z7{1VsOCVkHH4RJ%%R?uNXcsgoMxs<0U2=O!k<ZFu7v#zyuUZPt4w!|1h_)
z^so%EoM0(nEn}@=-C}dVrpFePPS)6Mu|Hsc2ITGw5OW<2L8)bmp@&h3QG(GD;|<1p
zjDHxfG1*~q#N>jBg;|N2gSml4jztDEtz58b0FO~Gu|b3fXv}ws{RaCzpxpF;6EtPU
z@WJqpA%~HOk%Cc<$qJJa(-bpED#@@Yv1qX9v6x}8#A1WR9t+Uud5QG~>jdx!c8l!<
z@aXjx+XK+_!tjBU0d!~h83PW(5aS0XZ%i~yLFs_Qe1XLpiyan6EG{7B77t6%X!{py
z1Dgln5pNc|1p7Jm3=CZ0ISUn|7bag!7)*IgJxoo^9n5RYMJyF8V=TW|F<A3hOIWK|
z8(7;|dsv59Pq1dNv#|>Rk8CfoXAs~5mk%L^35KBZp~Y~5AuKn*a={am9cD+&E|}dh
z1C<jD<~-&S=0_|qSl+RGVfn?9!HUO9!YafH;kyn{94K&s=ZSg@PZ&-x<FInEvatb;
zqqo>kfW(mj7kG|uf#Dj%9fn5?FBsl2d|~*-kim$@NWw_P$iT?P2o!H~OmCP<Sm@Yf
zfaX#hxWMx(5e8q3IZRzlJ*?i?F$8dd=QbD&Yz#C&b0`U1;Bqy=bcWd#GXskT%RQDg
zR%fg^K>7<HYAX!Cm?>DqSTHm|%+oPsu(Yr$vC6RhW6v-F;w~0L2SW{$8>S*=8s;q)
z6D-bH_*g|)rC1eM!OE32Ry(W;Y}eRk*fT8P0?)sy7$z9*0hg=>COIZ=Od)yWk2!~h
zh(&+}EWEB*3)oDs6|ncQXV?JI=VExnSj6On`5P+<8x<Q5n-H4>@SI7D%>?j#$rhUf
zHVU>ewhgupc1P@9*fAV{xZA+U$M%lx4ZA;fKkOMUaDnSC6VT;=Buz|@DyClu)T{cW
zGBAKvf`IA=4*>=NB?bm?T>)Z)<_R01jse{T1!I?jw%kC)S0b?=BC+K_yN;l0vXI!@
zkl1&S*lbJ;plNon4jm+RAQC$piQR_8UXH|mfW&5IMwqFN#12Gar!q4zG%+wR>}O|S
zr~r$DCNdcqW<bUNiZC!Rv4G5(0(P4un0*4w)&;X=K&@^DCotO-%noB=U;u420x1e-
zftU|sA3$OwtHH(AVuk3nl0vu#WDc_WDXbv3S%U374Q5+`*~n^`*&ybC^n(0#2*hAu
zU_e%ri=+lwybLPtS<S%E%m%UxbZa96!%Q$6bYnaN!!a-$Vkj#+NDYLYi^SI9fVd$>
zje)_0gMmSXfr9~*#ymI}7#1+FgVSIrlnvVFmH}l8FfcGwLD`^nDIjw|+nzvrLGE+`
z>xB5lg@Ka+boUKJoQnZ;j{t<t4KAl4Y#s*CeWMUIAA<@s99$Uq89?`pL&PEMW)6^F
zI2l0eH$mbD7#QH@gVxW()Pu|bEuZcI`%9RiM1Vm6;x8ev>lT3BF9a?RH$mA5e+ePE
z4RkXl%r7F~wR9kRT^K|eKzF-A*kTNVa5qbU=jS2flHhs<#0I$s6f+<;EFJEFhQG54
z1H)mkJ2@Gqz}?9KcIP#)+aP_8M^HAxog83yg3JMhKS(dgd{CH!VjIHdVgM}_hp>4V
zK=-IY*t`s&yXPQmJ_eZEP{Uk+0ki}HqDGJbbXN(4Ed=g+K-j_zpu3VGY!PsK8NwE2
z$byH77z1b#8AM!yVLDt~l3^j7Eyb__&X#5XEu4p_mti;p7nfuB0%yxJ{D!lY7>pTV
zaiq*(3umh^_`%t#3?Xo~8bb=4t;w(i&emdB4QJ~y{D8Cd8JL)0<{K~w!r6ul;&8SR
zg9@B&$^cpq4{^U4Lp5C7n&B>-ZNu;!&bDRv24~wb{DHIW8Q7R%_Bu0w%0-BoE(|$v
zaW96)aJDzYD>&PS;SHSa%kTw_4arAbDESDMPC)qxrXG}Te=;*LyaA`rK!yn-uzVB%
zPM`n5X)*vQ9|eHhT9EP~0GvJ{ZVm(`NpSh*!Vm<{vn~w5NbC@>IS}=sNckv?0d&tN
zL_C}Ul&>M|2nNt{9|${=0n~hhu%j42_fbRG(F~wFtsv|ehH!YAi3RstAmVWhX>job
z2GGJth<GAH1zbD{To*#blNq|;;wcQEZDJ7dREEoN@ic~aaCSNaCp;}>FsQ)UnMi3h
zo52+>p2OgS#^&S%m3u)9fBygf53&or+=HnH#TP8i!^#;^PDnXluFk+9!wD+qxfmXZ
z!s3w=9FLH4h7%nAkaC6-DIPh&@dz>pRL+3(g52Q30J;SYmOi<W;t{o+0d2^DsOJN>
z_aSV422hHCumu=m;bA4nkO5~4F%-ht!VI7`4n(~OQoM*F#fun2CtSS*!vr{+7l|#&
z0NO?bF-Hoi{E=o@4_6Oi>x09b8yx14@aJLpffoKYU^RRUUy#H>Yu`ZTgYpr~4Innm
zd{7*1WME)$1;>Rl!xS-CTquF#0+Oecz;OYoo0O2^LJ1rfAoE=ql#%k33R2yqid43%
zF@RbJ5cTQ|YH&YlFo5oUgNSP~fR=SZ*jnIz3WTi<?t4PmIt*@by}AruP&UXfpm8XW
z8d!RZfTp*%iVO^iU_Y`mJb?R=4eUoqdSe6o5t7~@>+B%q24syK$Q*Eb6JrnnnePIw
z$zbV?g8{VU0wT@{PKgjU7gGCyhd~?aP8SAV2GH54AT=O2gO>7@f!!v^pdbzle*v)D
zAmJ|nb{i!81(3pD04e-IwLZ)}LP+5+4Au*>%Y{LNK?v>!QKWW`7*bq_Gw8zANFc?F
z6jEGB!^=02`$5A~AoF2i-VF_NZY2hWDPVuGGbF(MMSPfp%mIZtNH55IYKQqsu-gO~
z7Qo#``!JV+hb?u(d>=H-Yt<PTj)MKg#qa>`FXGEpkU5|*2kC``IqBsptljIvAjkkZ
z8vtUC5Cf<$2w@8&)l(u22jO8N%5W6U7GpREXNxmjgR><V?!(!V4A0<fDTWttwlu>V
zIGY!VEyDoX{SR@2ECVCFUXx?sM`M#)-opG2Dq~@80I^}_gYt_YBLl+?a2zQ!e35|V
zcj}e5p#BlWk7`KyT^%XEYcOcS!$*?=v}75gUW>sAF0Res31{mtc*EJc;IVCpdOe0P
zxVSz;6qF6}BWSD|qy|<dyoRRF&x#BTU%-B6X9$pl`JMPO0b~v+eS-9Y%qO-?0F7Hh
z)bk+ug%{pm0J#}d?}H9-P+<^c*Z_AM^~wZ9A58?Q+!jS@hlnwN4rqb6Q=9>``3l08
z0FRkM*pdt$&~SEPkYezMvO(^LwP9dkF2@CFYY8ebFsO5Z+FI-kEK;P0ImjGPn1l2}
z+yH8w!|EE`bssTd4!Tp>2JALLh6K3VXcOk38WQ4u)VdE*FH;`ofzU7)H)LRl1p7;X
zVGG<}{NOqr(%#?)*UOOh20v1r&JRu-Aag)r4$=#8GpMHx3v)qm>jNS#1l9{-3p0pA
z(*vlk2c-#!xF`cCoFQy6hIF_ZaR$&PDu}oQQomS|VKQ8e6jB*3&2SGcE`!wnl|}0R
z$}vd6%Tjp;WjI@bK^M+eWH5oVl^D$6Y-I*7I2(6=IR>sqogo#@)?_Gwv$Yr+;A~+e
zwl+g6TwI5t56;$Qn1jZKl>dTA?QJ2H_BJR7K-$|PDD7=fnCEhV`bSa>ACTJNuzC<w
z7r?>+#D=*O#D=*6WX3|!K@{NhW5y661Ix3f;PeA&6Pkk452Q_K3Qhx%_Npm3{XpUr
z)RKm!8FQpQkp%;2BnhI%k^#{su>!Z^A>!6Zb%YI4JJ1%XeQt+TU)UqH&mF<@P7rgP
zkkXzrLp(hFxFC(mxH1&O#oZWc;cR!LzO4rXtpDP|;0f9W1?|6kF)W3v_h#4xXZs+v
zF?^BQ5`GMz;~pSx^Jn-3S08|sh69oM$UzJu@U#)k02;T3=nY}efQyGR7{J-#4CZil
z1QI)v!5S`(V8i;(kUpISIK6?)2Z@8?s2iM?e86cBlCFGF(i^P54@y5U_kh?iH-OkM
zdqL^S3F-z|9WfPJUIpngFw6(1H%^8*vas|<{J0;;98h@$(hG7w?r}eEq;Xdsq;VBq
z@cIRaUOuFB#gA0q2{5F><4X{{?gFA-2&vyK%m6yg1tKnj)aDdr0G(9?5f=k(YlEgA
zailRl35GLp^CcOsz}cwf9-<7CMQU3@*pPVSLWxI2S%KPT2kozf#3?^YoWkmNP~5@V
z%pf+*UJx7Bwgkl~=n$u^;J8y{m>>s>I|Zb&LIJ6)P(Ugx6p+da(5M!ytWZKKE0mGO
zX;qN=@~TMf7B!@@LLF%wOarOUsEHJhS`5DMu+>ItL+T)n+3GSB!PV$7bi>*D4AbCj
z1Ejb%WLOIqH$uw$#ti%6;wB8BnHfkLFk?6m7dJ;5D?_kBc@Q*T0Lg<o;5dcEmo7Lz
zg3JM_fwgr(@dC38#D<N(f#T>E)Gk=QI}Ocu1-c9jSHW?|$&e!ti#y`;9mpI|z60q6
zxo0%rA;u)>k?&rE<4%zwK>-$bw9j{l`6>G5J4BlhHQ%j*rfnC7!JqFKxgmWb(<%lA
z4sKANh?~JmkwHKo%ob(vQe+Tt2D9ZDq7)ef!oh4Kh8#s${2GGGRY)7&5L~W8+VF-*
z<*FgLTm{($&YOy`F+<R(AFPZuMry;Gfb~N1uPIU+-VAB3!2-N57ox@%sXb<gRK_|m
zfW{IbY8;W~9h{KHuALdG;PK_c&<tn0F@TO{gXnc<0L^AY*d9n_tS7?~xOy+7^41$^
zj?4$Cy!At>PyHD#!Sx0(+=R1(81BH?!3>Y#>_{Yb6vHdHcr?QYI6H>nJDeTM@DI+8
zXW)Uhb6gk_k=k!b44`8)A^u8c(1)u@L28?&BF%TCf!EAJ)TblO(`7J#)+|88GZ~8E
z=43Hc!r8eDO>lM|LpPkA&oBwjE?}4eXBRTehqH?qmcrR3Nb`WD44dHM<qUh^>`I11
zaCSAr8#ud`;SZc$#~=lt%WGiJhqD_QeBtb7h9o$<1!=CZjiCiD-pSAdXLm6yfwOxU
z*239+4C~?Seg@D1c#yD~z;FaE9*4x9#Bc^KKAGVToIQo%5u81h;WeB+jo}NNJ)J=i
zKA$*)!2r&l$>0xX&td?r>43Ol4nrhdd@e&0oIQ^rAI@Hg#9jnm_W{wnm;rRU8ZsNw
zPc#O%4Iphl6O^_As1Ab6Z#po1N9qs4@+qjD07~<azGNi0&zQvx>OV#?y!rqCe=V3D
z&G6#?|Nk9eb_~Ol|Ns9_0JCEm9w3<sG6!N;JlHPKDX|R<2@H3T)WGru$X-xfK-xA_
zz-l0Eo2d*pkkrG%AEX`@o**_XtUzp7n1I?j6PXzpR)NdR-3$z>urhNOxXgs~TX%uW
z%)Q*8bsf9F<sPKpx(i%pLc(@8(p=IWq;hgESUp6|KJejc5cYngvCRVvpd%n5;zy9$
zrAOgoWiAZIk>*}cFeJjujgv_8eW#Gh%+n0za5ZO;`ln|ZI^g2xk;>1DNb`D^kjl@?
z49no^Z!v&Q9fi2_4$}DcT?R#Xp1sGQ31{DDuz<54FgU~6j~Kk+?8gj&aP|`h#5l=Q
zh9tQ7GlpC^`#DnC^@5=mF8-3C8P0yi&<SV1X6T2r-y)S=?-=I7#osf44o-#m>jM(|
zBLnCJO^Em>hU;+kpBe7K*<To5!r5OLKEc`Fkjk;|3>@&h{{xBr6KO5PF9r#?n%@j2
zaP}VtM>zX0LpYrMkD&n0{?AYcXEQLi!r6?B3*l@g#uacjGb5s`V`1D57iVKU0cUd{
zvAGx#<rohm2fWPTWmJK)`58UnYyrj;I9rIZ2hJ8|Tmff`FrI<4#TakE+2V}%;A{!T
z7jU*D<2yK8itz`WEzS53&X!>W?IVZ8mn<V63#{ED$0z}3%QMQs*@}!BaJCX7Xzd$B
zuQH<rTwI0G1I|`u^n$Zlk=SaC{%~=1#t1lDgE1b?*1}*z%HciWau`yU?gf{_kTQ86
zO8**ECPT``2jKD+Qf5A6c#l->!SWZVd;_ItNZI=xtRCbqP`?k94k6{|A8`2$DL?;$
z%V(GxSb77Q14=&-d)XL4WjMrMc1C1-VQB`W9u__zHq7tHY*2Zd!ot9C0$kqeF{Wt3
z%3EDV(3(w1d8^9^nh%1MvAT?)QDl(YTp0A=>i}IC^cg|@T!^><BVt{a5hJ3nVa$kF
z(_+Gi7~3~x41t$vW{imOJqt#}II|^VE?kWjBcd#|W<-qj*)X=l)z~tEPKt)O$Bq%P
zM$4WNHje7T;J}Dzi#jqQ`XJ7Xpi_Y%dR-WI!p(GLM6BI%Lt=X{o`tLNWJHYlcrha8
z9K9J~{dX4z2pf{#^cm6Dz}y1Y%SMdIYcoJ$2#I$yM$p;}NW7afenv`fuy6y#FU*}F
zHq1RBHp~s6c!#x_VdDwUp#7TlnhXqI!RdjW!9fd_9*Cb`1DONrvw-wM!Vr{OV0j;M
zejh}f6KTyMWPLY8oCj%*2QLF?y)Z}|<Yv%XDFGf(pG%M-2ktiN&GmrNImj;1+z0YH
z2gI5aF}QnN7{rm*W=J6Qtt64=;G|I2X@FM#g3O17xi$}^FX^Jqz+egX7dyiOxW9-G
zbC5ZpFbC-cnU6lFiO8FfHBk^XTuAL7Zlo~hLGl+b(wY-KBsM?XU!XOXpk67+Oi-By
zvMZPe)c)jT_=l7}VPOkOhp_oF5F4f!6u+SLnbF{I5N5ao4+qE^S4dez`Wjb|dq8dj
zt#L(^OJYdlkmB%ltu71_Nd09=B>y7f(S<=8ypIE7rVM-?iwlD+18g0O3xgce_%niy
z8a`qu;R9R0iX0{&Hf%l}6h5#r6PA8Tq3LI<CIdqYINaD76tqdtvmkRo=?A12;xFRz
zENFfKqMiq74u}^Xh9EbC^6Y%D+XNYW;BKQ{o<*J$N1mSrjg3RxCWaKh;_&$?klR$D
z<u)ulcR|C`L7Rc$1lY~&3?*<k6Q3VJ=77Qzq!;1_)bK>4N!0uZT7M2v&&}Wtb(;$V
z4^qE_7ip}U4~fms09tzh(TiZi(%U0wenhTokn<yK4F)K^!OQ`L4`?0fD{wdnGu(lP
z1NHJF%ndFKVo2*u#F56GB#_4WC6U&RNFj~$OEZ8D_=NZ!!AAAFD7ak*QUel)*$eV7
ztnC3}!^{Es9X3w{OB*b_kh1!%Dgy&IFQ^XUU~tia<u%Cu0?3#i<g7W!m>%S;IY`@y
z9o#<!nFC52AiW^>;ND-ri!_JAhcxE}ncs)#6+r5@3L*7dg^||ai6E`d5k*=DB8C*s
z;z(=YCBXZ0Am&Sg_q;;bQVeDAG%1ZV?kB_04;PnZm<nghA+1N1X8@fb4>3o9VKZEf
z5(A=rrOW{8wL{d1GhBtMQDt}nXR9I2muVoaAJAj~-I@f^tHr<q@ApC2koFQ}p9Q3C
z&joJV%khHhDQ=XuJuGj6(gVyKP<mivWMEJO$GaYbk1j0Ub&<v;biv~ikok07@Hhh`
z-gUw84sjc3bq=g8q>mK824KAqHIT7i2-^s0FM~0>>~di+L5g2fB(@pS+?hGjeg_Mr
zIJHC?o3%okyR>F_2@hu*q%l%kq&aSThCgsM2sS8Bfx->aMm0gnYp}JTpzwr^yMov-
zb3kDW8+V1}HA`q-JE6kB;0g|N4hA1RSeO%^*Fffg@)}4lBs@XA8d&(_-phkn1H*$9
z{tz~DS^}8~^E-$Q@)vCH3CLfdwbQX+_X{xOz}*j7!vks0K-Ta;(hTMr9*~(X;FJV&
zvmnyCTu568qDB}gjfo=FcVh54R*-vOZE09ImqNq2%7uZU5$sMjh821Y0;|DnS%wUK
zSeVOz(>bJklL4nyNckoMb{!<0%YfYgG7}W$AiWT`fqE}6_sb!rd3mHV4S60}3GQal
znsCq-SBN<(NNp+z8xj|CDEmG@=@6tI6c^}ir^8@>sWF_;XAt-ZX1g-1Fkldn;{%oF
zeheoJVE*+5`xg>NzF_}C;>Z`tzrJAqg6whu@5+Gr(I3f=0Z41P1CiFu1R=GzgOU0a
zAxLfSP^5J-VMyy?!Woj_c`yQLA3-ETHC#LjseFz>TK5u*l=mTQNErI#3`5vF4k-P=
z=FMU0$BYkBC(iX@U~mG5Asa)6A%j39m@UhoVFU|L;?obvOi=m(>4k(Xsp&@%sZLZv
z3QrZJHR`HJ^`IKkx&n2ieH@zLec})|Xd$t+k=h;*HY5x&(_tYWsD4pFDGy<L7C`9}
zbWR1xd=MM91^^V!p!lr<hoLUR3L^%A<zTio1BWq#z*R8YhoQlkK>#$+qQVfw&|wS<
z=Rl-%8;F!{1Ci2gAX2&o?RJBuThzTvpjF!-x4AHcBBk3fq;wn30Bb+HFhn4=JtC3T
zokk(0+i0Y88-p|+9*eZkC5~YZJPpT#_qambkidW#pGjf>?KgplCo^n?tB0^5aS@C&
zJ;T(4!g)JXFDyMv@<Y<|84CsmRen&Jz{cQV!XRJ+X3H{gn8L!D`1A}i6O^7odLeEm
zH9ga=JPZN*ON}AJltCaD%ywn)Fk=vC1GD`YGR$E99W4(*aR<t$_{zh1(DZZBf`MTb
zI1JesILsLY4uaXT3@6NC;Yob@0htL(KOnszH-N?&K$BY#_Q2MsH^Kf=W8kr15cmXU
zYcXh8FbHr9fbxztLx%;-zg9@)k`+?9WQ9~NSs|56pjsbRF4-W}r?yD-sU1?eWRFxX
zIUtowj!5N_6H>Y4j8rbUAeBq5Nad0n(wabb22dP8!rTLCO{pitBxo7p!r+axrql;%
zodbjoDVJ<;mP@d)Xi&KXo8yC(OUeR}a%rL+1A{&|Y}pt*EExpcz-(Ct4l7tV6Q8a?
zW`g_#(hKnyspZn}sAuEAVW`WHWyK&+4rUuNbXYM6ECI6}7;eDB)*dMh+asl6d!#gM
zkCcWTK-m<!M${204Lc#FVP~W?3>sO4rFmDRHlZ6*8^#@}P3VD?hCPweuoqIB&>N{u
z=!4WI^h0VB`XjXoA#6xmb;Oxg@s)vlplKDf!Ttm|4A~eutQiFEgW0kS9yX+>RgjsW
zv<lKYlGEyUa2V<`oUmaK5D)~FvBnH9Y#0PI!EAd53tI*OCotQM!NV37&aO!5))gt;
zx+0}pSEO_c+8GN=hwez})&nWsdLpG;FQl^98>#H|K`MKFk;+~_q;%_#lx_o%%HBYv
zHenD_n=lxuO&EgICJaMr6NV$T2_bAqdUnT|p7FH_qXZ#k?>83)hBR>4vN3SjF$mOx
z*|H2L>|o(ceAx>!6O^7oddW@CpphhqUL~Y5L74$`6ct2V6={#NI#M4;1F4TgNxwz`
zrC$RZy9Tw9Kq(011`r#)Uo#aPZn_K}_6!1tz-%jq74{4Qx4~=&h7<M-0$;#vcZM7G
zu&{MQO2ckQY1j=Z4Z9(wVbJI~EDd`grD0E`H0*_xhP{!}un$ri_C-p=en@H9A1Mt7
zAf@3zq%<6al!k+m(r^e;8V*HD!{JD2I07jRL)efs>_Ju<<`IIV;R+W91_>chxxvP;
z!hu1+3CtE@;BbV6voJWEA>%xdeczCA9$}<#hKx0V%mk%jkX}$+gXT;@6&{2wiWKHz
zNaH->NO2^|U<hwJNg<6@N`tBnXuSzxL;Nm^)9<jeTtICnX9fm_D6qd|88RFh1lqxD
zRfZLg3<6ugY-5HGaQ_;C{R<iAF+xgLMo9iOLUJ?cgbrA`GC}gADN?#JLrPcXNa@M~
zsZO^<It$1O$?w)kb3Hal>&k4A_SV@Ut-rMgpDhImb4R4~=EQ(l{{Ue_!q5a~7{b(p
z!Vor|4{Lv(fu^4@V+Mws;4oxk=x|~X_y}gpGI%({(hu=vAjnKm`T^;MxS!PaC++&h
zT*9C{qQ<bonL$7W%=TdDaDn;J9VyMYBc&O4q%`A>lx9G?abRi26DiGjA*C5_q%`A$
zlxBR9(u^NcJJ27g%nv{+ivp4M$^{|K2?it0k%cg1!}DDj(jJ*`r1>2P8<J)`ai$sA
zd=Mzjz|NL|r5RgcNSX7-l7Ybs9ENNR9IgxkNno}t!wFYdcoLsxKxTr{3`p-_OEcAA
zf2lEOxG@M!1+!flINTWo)`QvJ3<B;j|9T;%A1|cz<As!dypYllXy-gE{rDiIA77;O
z<A;=f{E^a608;u1L@INFkjk83q%tQ2smuvQDs#e+%A9bdGA9zL%!xuOb0BO;`tiY;
ze(;q!C!p!aA%ub9DmV<;7*@D52)qTeWf?L&VBtx8`T>~<N<SdI<fb1)ou!NvhAK#P
z7K9D)JLZ@$$X-yp2))i?6M>XDCp;Jg6u@i~1`SUJ0UI#eiowH^K_CLmwqwZfWDw{C
zvjZ7Ecrpkq1+&8$et5#dBn&Byg(0P}Fr+jVhLpxYCrQE5SOiiUi$qFeQAlYl8Yzv%
zAhnlbk@jH5A<fssBb`r`fK=urG9cFMB{9r|mrKb==clDGfX)*Hg_{dQD#LZSnlz;O
z%5<c8$qWW2`224s0~ef~%>X(#17c1NgD6}a!iL0G1kSVyQx7WZ#G!g&W!*jzNLjbR
zmVx0kI4;;2G`txEzJb|-3>n_Ac!8{YfwZq6XYxSWSD0t=fXoD^Rd3kdAJFO+SR4r<
z#gQ;l`$`099gY~%yuUcoe1`<m+7bvG;&&mOeh0OtLE#4SJLpUgeo;_bm0~#I%^;u&
zW-Bnf@MaKj2D7ypBz$20)j~>#T1e?o3n?9HA*Dmm$}pH8b&&k1i<A!akkX+(QaUt1
zN{5C>>Cgx%9U3F8+c#mzgr_A_q_z5H42V5V=1A-CEs)kTSR(Biw_;cgH^&-jZG$b+
z9$`DAd3FdJ66QKM!yLAT6BOphpytEUTZ||qy>&P+Fl2(moQ>gy4}(A>m@Uh&!WS0)
z#FvdAGePMMq!$#|gK3<37T8~E3><z80$adrSB4jU3<BrCY!8MHehdOHz-&K;AAT^u
z(|67SF&7qsl=ecA(q0%++6zZYdl5+E%#ldr$x%paW}=bG!x#p{`s7%KUC^}Q!Vrg4
zP9`v1fQu(0?L&vKA!!fyoG)z6FevT8)-c1;9-|l}?S1lRVBiu1l>;0MFZ>w<jKFMF
zh8F>_@CTj1%D@0A>r}vbA5zw-Amx1(aNY-*2}*k)y^ypA3Qbr!poUZqs3Vni8eqK;
z^;$@42DFj(GwL9Xhd|g6zpLTQcd+pjkl#V;2i(E_(qr%lWDtl2v#l9c1TqK|gV`Po
z96<~MonUqdLqrgRz<e+}oFOBKLEsdaUC1C13=5M2r1G!;943%;1qDc9Qh?+y(20St
za413whhn7iumr3Z5)P$E=OL6Kwf)MG+I|&C?UqWUdF?8s^E9d%>f!09hG8O{U5m8m
zs17OZ)g$eNZ(snO(+qJ>BhnhJCWc>dbDELr=vJh&GTIn;p>?YZ1B4BUuOgiB1yc`-
zFW4Dbu(Wy~npVYq7#LoF<AQ@hBZNWV516gWpb-j-7vj?@$V^aL1?h$Oaqy&7L2*!i
z)MMxfWe`vYv#l9kgfa*Of!P5J9bpUt8DMq{!;LTofjTfdp5a9pgTNFpyOLo-I4n#m
zkkV=eQd+G5r#Hx&p9-Y3S_vBdfsWf$A*I!7q_kQC)(Z)@TBNjEhm=<9k<w}dQd(_9
zN~=vsX|)+Ct+pVg)mEgm+J=-?+mX_02U1$?L`th&NNKejDXsP*rPV&9v<hKE(rOi1
zX?3MIq+Dh3VPMz{jte%16%h;qC%|lFh82;pc!8Yr1}Rq|=W0UARm^iWL1u!|Do8IR
z%u&zSgsqiwVNgXXSJjZ>R0FA8)kG>+wUEkH2pi&e6`X!YFIVq@{iVae5yc?z70k9|
z$cSPP;E@2OVLt|rXa)ggFguDNBAP+K3e1jW$cSbT2n4gs83bZrVN!;aR?CpmY8g1a
zLDFg&lD|MZh+ySv1yWkAL`thwV7-uVt42zzHArc-7AdXPA*I!Nq_o<AlvW#&(rOb@
zT5U#3t1U=rwG}C?wjrg}cBHi0fs|G|k<w~6Qd;dnN~;hyB)%$e#uvVFHC+OdR#`0>
z7z)5~!N#Bw%OKDKW-Bvj#KGc)__PW#6O>j#dLdy>YFb4-pAb|ZK+MrXTKA=mbiRQO
z()wpz@CrVNdVPjacs*r+#5P14TZ6D6VThULA?v=hQ07OF*L}gv2aN;3&Q$}s7qsqc
zCO8a@8CJwG2&@OQgBUvE83c}k*%1sY;u!>PgW1UpH{xO8oP?DAlaSJX5;zS*(ti?C
z`UkCaho%1%r1YPPl>XDedLdzwj+Fj0kkWr9()>sk()>s^(wJlp()>s+()>ss(%4Zx
z(%Ojvq%)Tak=ngQNNdH58TP{CsD$A#oL$Or8qO|9IxnIEX@4|?4T-xHoarCd?ghom
z4XBy0cEty1`scM|VE74+3pR!m2@C?flAy9nnc+ktEMACD{~$9#=^vyQ66PZ_{VRdP
z(3rs^i9x^u%(i66NMaE11GD`YIFcCzQo!s;28(1^I7c9*{|Kb?9|2Cokn|scl>R}v
z4wn9-kkWrNQu>bp>xINcEK>T9LrVYgNa;TTDg7rRrT-+P^q-8B{!@_Be=1V?PeV%o
z=}75611bGyB8@F%F`R^^PZx%42E<;}9HcX;av5&J)#Nigg0l;d&cB7QA^9Q-XTE@)
zmkY`lu=8?Z`Jz%1QZI;FGB7lO<A{wxBZWa=8kjA}kdXq5FXG3+KxTsS1xPO>E{Gck
z1FgM>s24>#!$AzGZ!UqfhfxygtXe6g`EhCZnY5ts5X3nTa!BLk@<?aOLD-Nm#2in9
z)C&?Q^#W}FBd9KbnGa&a_8)=58MF_2H8>0v8D69?2pj~nbr?KS83e9_*+vW*sSE;d
z!E9TG8L6;vwn54lHc0ux2AsAb`N9S%Uw}>(f#nN3q<mqIlrJ2>dLd!!h?Fm!kn)8y
zQoe9O$``IkXFR$g?O$_8I!Dw4X@0>I>3$6_q<rCxl>U8?(!Vd#xQ8Fo8A1LGcj0M1
z0O?$yK!(?F@nEEVE+Gux;NlQABu?#c<_nm5P<+A8h=%10CMih1kg{Z8;Fbc_5o`=A
z(ijBf!E9xQ73r|}BEG%=nF-1lAia>d7@75j2{;Um88k8&1iZj(O9qb&27v@H+m&HO
z27^Eum>s}yBLf!B{z&=4A1Pn>gVQ!7U-%>CivXm)Z6H#<2tvvi!C<|RxClYY7okY`
zA`B^Cgd^pP2&DQV5~-aTg*0yxjWll(gEVgvi!^T%hg4t0Bh?oPNcklZDZeBk)fdS~
z^+gI&eUXM#U!)_|7Z5fiUj*XJ7x?OnZfL&n4P;=L0*)g#h7*|#0;|AmJ_e2~27$|9
zwlIT67K6Y`Fk70zBMTOfQs8)m^o6Cs@d)V)OM&A85|2{gcm&x6$}b?jkT?SE>W7te
zGDvYMi_{mE1M7vTmq*%HqJR{Sib!<|>RK#ccp0LC)Q?bQh=Yr(Bb^tdfm8-+BF)8X
zA@v!x8QS1_br=w52k9c69i)d;PU<722Lq(DZ4Hsmw=_aJKi?SXd`nZLveXQzoU}kH
zCoPf6NeCN~9%L}m1ElU#LaF;erwfC^7F6HC?nwc$(aX|*;CQ!Y@W^Hm5RnFzpUw;&
z*$e{qV0I`2M-GEPD3~41ppnBMkPT+1F+}9R(n%^foj}(4q=M54WZX3sDV?Mu#WiT>
zGc0YSBc+WDr2L)<)(dh!=p<sqe)DXk{GNl9PI8g*dmd6fn2%Hs79gd8LZo`I2&o<{
zMvC7Oq<me9)ZZyXI-|H8X)k95QhZf1{D-HdDh6iwxN9}ixIqoloM|0{1YAu$1L#&d
zh~FV>NW7<G#5+h0C{AJOLG_~&)Erp-*dPt5AAOt{7&^gm$Hvf+%OEfp%vNUT$b-cr
z@%1CfOi+FY=>@p~w3iT6h(p*aNO6j5>}z<8Cu{<Tp)mtTK7+ssFx!D4BcDOw9+>UM
z(2>s|@CD2cWO$L!ARs3L%3rYz3I(t*k3q^iF-Um_(m#Tfu`x(_2Xuk}Ebqi2g>yVo
z-bp~pJBdhjWfD@}Nk$r5OF<f2OGO%6OG9dhrz4HCWgwmHoQX7tn}xLAG8^ff$sC4@
z@Vt<VbPq@#1L$mINSet<y8EL5>F$q01`cR?c3~(&$}h!8YYa*lq~U5xk<PR)XV8L+
zSAb7cg4hLNL-JG{&O8M=feEA@l&4_lhr{xeu?!?nZFgW`umQ&@8$(7RgFpb7t;~>7
z1dCtd^AyNTP@V$m1=&k_o}%4&aw^zgIt(X@7zC=pY%2zhVg`YUV74nmM=^uI9xywR
zA)|yr;1Zaf%dnsX77jT`={yH1o#%klDkPofAf<EAiBzz3o`;mq^O4dyWL^&vR)t9E
zya*|s7bB(f5~Orqij>aFkkWQJQhT5RsSQwx)CQ<R8c(Q3s_SbQPQlZ8Ez&(Wbx3Kx
z9_g;P2Bh;*8<EbpZ$e7{%}Dh{D}w+$J+~p9n+jn=(sLfp^b9*EAC#V9cR;|>^K)o=
zHnU`4_yCSOHii?W3<4~&pz=zY;Y1lM9*IxSATvSf8Kf5yM<cTjB?%5gV+N0M1_6CA
zJBUG}f<eF)%#L92s9+F?2D6hHDk@;%JUZqKNi*~rb1smDl;<1085k<TalyurQOO|C
z3uY@bWK_Z8h4}OjG82^kL3$y68JX#S5jYHu8D3N|2<!l}9T_~T83Z1K*#QhEsu=`+
zg4tmVFRB>?l;uEWPAr2)4TFFsn4Q58Q3DJAbfkJD9jP8kN2*8Ck?Ijp&j(hIWFplg
zSxEIrHdrqtj&hLdkzAyDBoC>tk&o2ZC_w6K6e9ICijevm#YlaP5~RAL6sgZx#&8^7
zca$TItyLiPFDjAdAFCK(>m*$ms*%pku3=Dv*AcZyXK2?kfNr;j__3bB4z8ww0e0tz
z3qvD=2VA^~App*9VF-t_TN$F!*pPZB6KA~xQxB?lVCUSz>K#8hNWNn?WMBvb$2A+n
ziCPAMOfXxS;Y1xQ-ign5ATvSv4x|_2UsCfO?b=bbV1MZ_Xw)+ZOaim57&_`11eSx@
zAq)l$F#iT4rSo8<bPgE@gS3}|k<vNnq%BxF4@FAnVMysb94VbgAf@w2q;wvI)Lx24
zYA?kgtz(ZxYCFXtjkm-j-CdQy0BXTO!aosdyd?>#?~shtrb<Ct|Cx%kHZKk7uGI{r
zwpJ#?9(aC%up#L%6lXewsRyOQeNerybhsOu4jG&o7!HHuf{lTrkwM@km@UPyq7fD^
zlHhoOjEPBt;{`G%CJ7E(NW4gb;{{|UC>?_ILc#%blM^hCq><uC25C%87OWSdUJhw}
zh&<9fyCTxsV<q?<d7%CRXyy%~R~bCc2?-NvoM8e}4+;~|{P<t6e^nW{nivGs<U!@I
z7K26;gMc-dZNbpd#2^p=W?M6?XkrjZ1+zmL0-9mr69Nt&$XF2Mj%LVMPzX}^gdq75
zG+Pe~lQ5((2}eq|ka<Rkzao*+Z4^?vjYdkhF-YkaHLYer<K2ZJ9;uz5fYi=UL`suM
zNM&_0Qrb&FYUigS&3&XH&3&XJjp=0~^=-3|*3v`RkT?p%8Atfe@~V`Fl%K4r3=FN{
zxL{+*XkieT17<5TWVFKKh4}IlWF{!xg7iYdoYeAjc#Q3A0f(V6!;4l1fwN$?BZEg9
zgTON|JAmOt8-u`qFguLlMH_>FgaRnP#4{+gGYA-h*+~o<?F<55V0IzHgmwmjWH7s&
zVMaSFUIuP$72+KJI;8eYJ<|Ma1Jb^>Mx=GrO-Spgn~}!ATae~NT9MXEw;`>OZbxd*
zbRe~7I+5BlT}bEZcQZJ^+Z#O$o^W<AQv0M2>HPeDhElki2@KV6_C%yJ^CvS*fQwII
zn1aTJ<VW0Vw_xf)W#%-fURXU+tpLf7r5Owi{ouG}WANx?5LgFhD>Ha>!Q!3x{0K4=
zlpjHQ$;*$lYtNhm`%8ymMHhp>dobIZp`)8YKtK_c7lIj1bTbGTg4vM_FS;27Lcr{J
zh7aAaaEL>yFXF)UDWtxLL#i+0km?K2N!+mdA_1wsNJOeHAnURqVU>(jU!)+_7pX|~
zMH*6lk&e{1$v_(a%tRU^%0g<xWFw7#<{-6Ua*@^?<{_;)%tu;tSb((Vun?(^C_)<l
zDP~}WrZE?W5(aKKyOco~&Mrr~)3XBU4nznWlAaTA)-SL-6G7=2cK;46J(nm#(sO7E
z149!y?${VKdKm;}gW1Xq8hx;MBtAWZ%mk%pkX}d}jm-LGD>w{|8CLW$2wVWO9T_<K
z83bN~*#Qh4{R{$ZN}zlc#;~HFK|m4Aj%Rq#&mdp}W+ySc=w}cJ2eV5U0w%!Xq8KSp
z6(i-TVx&A(jFhKJKvOr+wdJKqd8!O4PnCo9LgK3eDNj`*<*6#9JXMX9r)rS$R4r0I
zszYjb)icb3x6K-m+FFfB^QTQn?XG49*ctmS3@u1`rxj^WVjF`zJdd<97{b{dNd4SS
zq&r!<7((G{x{><1Jq*ck@jj%xrTQ82;NlQAB(Ig?%xf_9puAQ9)eFmOg-VdT#+b^$
z&;X88Hii=u83bm5*~$zjCc)yD_`C)(6O`9LdLeN)Lh~9p42>B)CNl^;1G7UJJf<)R
zFe!ubS2RP$6b1n~Fgt}|!4w7oD=<5qVZ{^%fiN(;l0jf9Ec}Pg-VMYW2GqS9h`iQ@
zbnj|A()xrB2H1TTE)1Ov@8Nl~3#o4EMw+wkLAn>Imq8Vpwp|$d7_{N+eg<PWdm@7s
zoIMF?JPN{w<RjdBJz(QkpnL>tAHwsIG9(}A#4<3{gX4~kA!8bYzzi^3nIU63EFMY7
zN6HM~GwMKkM{+*e1P()Eh8NQr1kQrlp$so(FbKQ=v!fX}W-<sctAO%U3WLK;1_3!R
zJDtH}CWC+_m|e-RVJ0m6NAnRREe+0m6s!WtM-}l53`yX)V`Jc$%^*+%W-Bvr%z?!t
z@%ad3Ca69F>4o^6)cQyRX+4-GQomITX%9Yx4Jkt~_m6<=1+AF@ogfHegUS%lUexJe
zf9Wt}%wZ7N3}zcKbj)E8I1gq!Fua(<An+Q@c4c6g%OJq63QFf*3>tG81eC$-7={UR
zVPO)D)CP-2YJ)|C+fk5l!f2#680aJ~SidF~sSOr~)CP+O>jk;lg&_f{4VH-121`O}
zgC!%i!BUXgV5vy`nlz;LSUS=@@2G1$5O<GeA@ysrk@__`Nd1~zq<&2vQrj#asclxk
zAPX=53z61r6d~0YB}jMbl``1C)kD~j_>INc)`F=A#V@SBfYlLps*tq3CYpi42OM{7
z3@_#}2&979$_y{&!{U+nv<)&7l(s>7A#pT#(sn)AUpfpP3m61uf!Rh384DN$wu0I2
z3=9hy1TKKtJ`55I83bN~*?|lm3mF91)IjMxnPJ01SeOjl+_VO~9g>BVwzHAab`Db7
z&P7Vwc}QtHAF2OdfHdA)h?KUAkkWQBQra#-O53GKX}b(5ZI>gZ?Fyu{U5S*otC7-n
z4N}^Mupwz1_x>q-X<I=JlD32W7#MWGamU8Mv6w-?8O&B@;8+5SN8-~q$V^b$2I(a)
zZ4Zwz;b?Fe8Z&e(VGt+*vmF^;EMXAn1+#q_JeD#DECaJc7&?|R2<!*5V;NQ~g@yUR
zt@lHW_og7#o2f|Sy=h4Mang~-elw8Hyv;;9+cpd7ti@~w*m>_R3^_>aW^)-}=c~9d
z<T1eZ`nfRVBh8N#Agu!|WcUfs<HZaN@G`#y>E0O#8<IzGuirzzUj~$JVdejIXdaoJ
z#=!6t97k*nCzde?`~$O<8BQ#R#TW5;1Y{;CkAU=o>;lclfd*C}?2)r3Rze+AUl=oZ
ztY8o@2D2R*R;*wU@B_1h88lWh2xNlUkqjOy83bCu>;#5_l?(#&!R%y)j+G1oyTI&H
zh7T)YaZ!TQrYb>dQ$fz?fV8PfklIwGpx}p&Yn36jsmhVsRFLx)AaPWQ)TXLJYExAs
zwW(^5>YZAodZ!MluBk^F*J?l-*J?x>*J?r<*J?%@*J?o;*J?$oU)qrBmv*Fatq!Dd
ztxlwItuCZ-t!|`otsbOttzM*Yt$w6&tqDluS`aoQua)6!YvCK$x}pxLkHo?l7#@P-
zl#L-{HG{xUFk6`+V+|~RiO*{wGeLO`q!$u*q_(wi)km60^Xytk_fBeqmIgr6k`4pt
z)If;6x=8n?=_BnYGC*P*BHa%KVMD?bvu^^~$AP-HT?bkog8D28NbD3S8`Qo9?Whpa
zfaJRuYZwG{z-&hbkF^W}QDC+=L&sVMff6t~fMLa227x{>JBH!GT3GlG?mi1*?mi7^
z?mivqoQDjg_FE>>dB0gm`7RqNujL@k-RC0B-RGgyO|bojE)0c8bN3K7Bpz}1LGaDp
zFV}$Ni`$M23|qi)!N%}n9fQCbFk6}7#d=u05T7qVW`gnsNG~LPQY&9*A?1s~f6l{G
za2OghWNcs%_zz|~GMw1JARws;$|DI3Gd9A)HXf-?iASnaAbo8}of3~!r+{)Gte>8U
zRHq~%)hWqH{qz*1Iwh4s9-3!e7}DVPc)Bp8Bi$>PfpnI5CQ^GW3u!%JHbW)coE)V4
z?sJjO*2`n)hN~$+ny)WpfZa0%O3xrRBn>CxEZae9Kxqk7&dh+C32R3gX+qL)lQ#o{
zEjVo17(6yH2n2)K$_yTxVc|@C8U~pOO2Z(%AbUq@J1PqthQ<shHZuq`f!US}FE%p>
z%mTCB89cTy2y6ngeHk*gFbJFiv%?rVw!p$X6e(?oBBkw6aQcL#?NFq&4Z5immbSx@
z(sl$=+KvS4g~Uq~QreD2YA?kgt(A>M>TARy^)=#=`WFcdu=9;w7!r~0e?eV;wGx{4
zTo_W2)|{jwtuskOI=?iX0aRZ?+?j!N$7LqNE4VpXNP8`Fkop?ANPP_m8<I!Dapn<x
zeT|3EJTlXbf#EGUj@TGhY-JE&(E^o4vJ4s9VDUx#d6FPAL3sqE7ve`!&-Wf4_shtD
z!%&yu#Wn^3Q!v|_!DBmvfFGFc!qBmuK_DH>_GMVH9Tv_$NcqACDPQ=2(>5eu_#ovA
z&`x7mzVJiJ7yd~3A^_>!)Ig+jQ-hGsO$|mGyADA*yD}81t%!PNIO6=?2&8@Jkx1!3
z3Te$%G*Z7i25BF9EYe=%IHa}Z@ks5T1f=#)B2xP&87YsXAnk93up#-v4`;sk2F+`r
zx&zjZg4G@MT9CS9QwRe?7dVdC7*_0H5Lf_aD>JOv35ze{>kg2apnL(+3&|HFv;DIj
z9EQdW8oL+-&V$*G3>~`|1fGN00Sp|w83g`=*<lPCyBP$;wLxW3JVU~61_6CAJCz}0
zH!S>9kn&3kQhrH6$}cHM`6U&p-<^h(U(%8CO9ogkB#ttX>X9s@dL$dE9?3zfM{<$s
zkvyb&Bp<0BDL|@63X#_F79s7qC`Q_IQG%2&N|EkCE<;NH<qU{3HY<_l!K;wgXhGPJ
ze36DTU$8>QwLtlT9m<B~3pZ^@zL57}U<d-o1sg-h9tMF-Fk6<vV=pXTh_5d|W`gns
zNG~MJNv$tvcOOI}*k5W4J$o4hW`WsS3@i3B2y6wj4H!=BWe_+AX4^4n>|+pk4raSC
zIP8Ok18weL5`dOnE(~5s>C+o2efl7c3;8mbz}5RPc){8J;C1+rFb_aFk0KE1%>N*y
zJHCUF))0mu^;<)c`mJF|drQNS_LfE<rQ1lPbQ^_~Zex)4Q^zv!K+~QJ1B4Apx47?e
zf~g0kTRx~>Si1cWO}7)185o3gK;;P=L&kmv0Ru2wkYUAsSbPzGJ{8DJP`U-_g@hq-
z=Tm`pT0qo`BE^ds(j2h_QW+wN)X$Panm>ZDAz^}f-W14uP#Y6=t`sOtKqvqCgZ(SR
zpmBgfARo+DV(>V?AkYtH>oTl3z#y<5%r<5?aezVKJeY0A@Z$h1d~A`*TU(^^))ri5
zLfR*`Nad{^Qh95SRNguumA8&yy&yNcFgPKlXJ@4J?1EI@x+2|y;)Zm7jyqBr>w(nY
z^hCOw-V3RH;*Hck_d#l(`y$;h;K%S8DZjwVMi+(vq<w9HNNd7_7<8d&&xIivX-!cG
zgEd?{3~66mID;Ep9KwdgsXfl}8Kxc-r?5S7uyp=T2U0$7&tPEq1CBd329HAw0^+)$
zG|$J-afm^{70i}qxN!&;r^KJ712P|!=0SQP@kQKOI*2qckCf&WkkY&oQae)_>5Oz0
zq_G7E8xlU4=gffI14{D+(D(v{PZ0wHLp<2OY77~N83d}pY#oM<!wdpb!EAGe7l#=H
zHh|f-3>-%o1Wtq5E({(=7zCby+5QX_M_^&)hm`*PkkY>&I1NM6zaLWi_eV<q0Z8dT
z5Gnl!f%Ssi4@xtL^JGGh(tjvY`VT`&|KUjKKLRQJM<S*FD5Ug{dY(MuevMe9^dE<m
z{^ODQo(T*>@U)u9pblpzF~H8CaA8PhFoBDwAg!ZIMN0GONc$r)7((FcA#6ze2H;Hp
zF!iAL4TI{1rGExJNct}_Wnkda1EqO3h8IT}1mwYNS%wwIVDU(N`vhbrD9wZPLgI+j
z_Q~+*&zge6P?tgDID>!>m~F?<aU2$&w5b<_p?MipFMvuKNcf}H3*dCX!oc9d;L4y2
zSMP>2Zt0G6-meGJyqG7_{!lLl&^!gid>^DT#~0}?BnTUlK5>`NpcU&Nb3pEb-IE1N
zpGna48Dr1DkPQw)HU^Fp3<6WYY!QZz6AS{Yz-$?Y6(?X}D-AAlAp1I{!DS9)U#B#<
z+<=rh(%>=&WIi~po`BsQBZE}_$Rd?La!C6+<-vMEZgyc%KsxJ85vj~kLK+`XMk;?)
zkjfubq_9;(YO81<wJkM~!d3^VywXJ)2i8NHm(*ui43ASoq`KP(iEWH@F9w7Si6dEz
zG6XV*rHuD1GKd--6g99hKv4a%0qPzQ8+IQDD6Y3LFfi-~$DJud+(`z3t6;VzL&r%5
zf!AQR7sHE_usHPu$0=klswX&3A$yBFk>b=7DPBOWcGx(NH&Q(MAk`zjNaH+yNaH;I
zNaH*KNO2m7)Nc(!ipOB2b8AD8&aDka+GiIAUULjdGvP@6*$AX~j6&+$MkC#e4Pis#
z$QvV$KxTr%b_q0`L1Bx2FE)cdq?`{`VqoCZ2bJ?23=>Yl!j>Hzwvhb74h~yLeql!n
zTXt~Rg3JNs7m!|%y)Iy#uyE!?3TG~){K5^^3sKL5lwWv}?&;%0>VNSg&6@}y-323r
zRQ?Dfg*k)`2_H_J;RD(e4RQl0d_eP$a^P?fXZQmT2Qjd3AZbht91f5)CWaIaVn}`w
zM=C2M7?`2q@4_I-zzJtdF@SnGAbUZ#RwLRfG7O-S1|lwtG=3<@02-l$h$|q?M=Qe1
z3XuC@=OV(&Nn>dIsv0veScCn=#*lHELBJ2pR%XaJ1B+|o$KOC^g5nya7vi3gIsTRe
z4nt#x7iSm*%E4?$29L800zF{1Cqu$nSlD_Xr5_KZ^y7h)ems!U59o$4Sl;nM$~)dj
zWfWu_8xsD$NPRs&q_(a<Qr-zbx+^vi=^lz8q;ZU32GGt+h?yY_pqq0b>`<h&E@4P>
z@!?4A;RuG=@U$I?RM$i!ofj9wunw*U!iMBcFPwQ3rXG~GVf6(pZ7+bP?Rq-~hLzwj
z=U~t{#~`pD%obqCIL9Dx70lLU$T$y+3mtG=K*}^7a9lvjG##Y4&;iE<$b4`*KM!jI
zfLcYcc+o?O7k#8M%>b+y5^kt>sKL(abYU<-y6eysY3#@hsqY41L&8T7XZV0-szG*v
z!Ut52y#o8!g5kw^1_4k*LxmxV;l%|80Wkwm*`CedaS;{{S>SMhlxbPuaDbF)SxDiK
zh2$5|ji)fb=OFn#7b#8VfvkkCpUFo`V+BZeofIPZy@(+go*s&k+BPLf<7TBucVd<?
zOopp3M@ny%NNW_U7+`gr3j>4=3Bw$mVF*(X3d0pp^I>UB+W=BOCOR=N7=go(je+A5
zgMb^D&Bx$zi9sL=%+_Y`xC{$h$en$VGzPh|50b_(@9YDa4@zSoy`Xq>VZeQVA0O0h
zE)04|@uH6u<_1XZNh73iHbzQgCP--v!iIzo?tApm(^xLpzh(?4E;9&B1G8foUR+@i
zSOsP$GiY385ZDK1moRi(g@p-i_NyAe!=wT!y;UOBn^j0>H&r8@-Bg3rey&A2yQvQ8
zoY;D#b7C8i&Z22V8t+2huiAoi24*Y6Rk+(AY)Clc-Zu(U4@!ryJ33+M@S*_&Lj%KF
zaJxd#5RxW2)fgCL4MF*un<3#EES$N(`5Kb;xWM@ulJ>Ze@--JY{ea8?r9F^dNZR8D
zn-5|0Amwphr1FgqtQVq&AL*`40i?P{5Y*L&mIJ~_ZDSFnco9RoFF+irZ3AIL!iooH
zo`toAKw$+M88QWjgEYeicsM}D;vnT4<Xme=`G$F}HN-EVUNNkElR;{;$ufw-<53Q&
zjjDj;Uqz(4RSD_b9u)@As4c{NRiryZ)sXzF0dK##FlaJ>b_jvggZzcwmh*+iyMhV>
zLj>5r91H^2Vew9UTODK$DBeMOL3WYTR!59O@*;%;A5y#vAjP{NQoIWx#k(-l8cPwR
z_Pi+47=i@S8B>x-Z4w9@l1^~9?O|;gP<U1`FfinU!%dc<2Oe&a@heC=kpbryNIH>0
z$}ciVX&!aV3emQgM@lEieSamSzKk-`xQYtWxQZHs4LpshBaN|WAcc<>(iu?NNNY`X
z81mtI^^o?w=)?P%Aip<3)xgS=HfUOUyP1JuA~;Og7&LA$2pj^lGZ<FfWf1rRW<O?L
z!p|t+!NI_=fZ-7{2LtRr%16vR3=9mAvgHvoXdVqRe)5P}gn@wpWIia3f%HPs*ke#o
zLCb_E%!qr_o-!lqwP(zT`L*ZFh`jTH8FqiJ3&Tt1XsBOY7+x{g!`ZKyTjA_C%!s{g
zZ<(jV#osZnfwSK;!^Rw37(Or~?n3&+3@e9S7(O#2?!5TI3_FM4h2b0X7q~g!k=Q?&
zVe21U7=9wLe>20@4!JP=VMd&F3}JH{fy(wL%>V!Y{|^eQ0}Kq{vR4!={+#(Ak~k<#
z7IA~rzhwUL|Nno;7|Sc>Z%Arj;REXX!`umC!`ud9!`uK$8=(80<&8k~$Uo*20*nHF
zV0J8fha00n3z(h4e!`7WU>BI3$FAYdDDVNyZe-{1U=&a@2I=i)&+uRra0jy|v9Iu8
z6sQNYbvZR+83ne2+2))nv9Ppc#tBMGkbGyx2}(<ld}qdqNK0m%ptJ-E6Bh<^P}don
zek?c<>BkbR9-_vI6V&sDu&p@}_t)5Py1?VhmJ_rB4x+}66E?=^!eGydxEH{I6E<ez
z!r;gW8jpggcjAQI>*~Vb%!x=3E}V$?b>$R;j-|UWxN#!J@ZC9K^Gz-c9-MJ-HJ+Rq
zaJCm`F`VtqSp#SLa881={gBuJoQvV&ft*L+>>$pkaCR^!8xyQv3*nT3vqL#8;OsC?
zKR7#_GZfB_Kw?KCv7<O6;cB9h*fE?5aB&11mY&ZTgVL=f=O3iB3X1EeU~x~*U;qFA
zhoo&U&M!!6K;iQNtj34)6OuSAOhD-w=4Ny@%$*={nA<>UJ`L(lSb6xv7}BO%GKql!
zR0x4~^1O&=6fiacrEL+06$y+2DPXn%gGLggz*I0hf*~V?QQ$b3-N3wOA}np!BbAf&
zNabWbQaM=<E+;|ug33vdUPu~iKq@C2k;=&?q;j&E*$1AUTbL2)xs@5we{W+hhO22u
zDg!&1=fcH1nPGh&7ltn8^>FcS=A&?S4^ny9%X|+m-p34E_vOOS&y1MQoxluRGvLB7
zkr{DL=_F<yc$%Edj5w!sDzh(Kd>S+2Y?kTFh&(crIR~z077}|lGwgg77lt`V?0L+H
zyfdG<0j?LqhLpFBILg}=l=2o7wvaU0hE(3Rqm;L>a0aC@m^(pinA<>Xm>WQ8uZfX?
z;T|~6EM)eW%qYNX3QA+M*-ji{6mSN!x3E1p%qUO+X76C*IKn6}6U+|dD7gVkW1$>~
z@-vhJQGSMUfbtZiE)L~Dl%HWB<<RmooC8sQMu62r(q1G7qWp~FK$M@+99HmnkKsV1
zy;u&!Tu&SaY;50!A)aFbTzvuu;vAAhj-_z%Bo5fvjtfIF2kfqP7lu?Mb~*>5F3#XU
zq_<2C#JRXx92W5S&F1ifvvWAI;OtxuSopgz<Z-ma#q*Ka1xV~dj&8V`A|!S(2dvC-
zVL-59<=X~RQ27?YfxUc7;6Rjbi5$q~8z_7r<y$fba`^@e6Hxkrxfz`eb0<g~<~C3o
zLqD_bfGMPWd#B34a0Z-~I2m|u!O{{3QlF6n+y;IGZtrm*wShUnZD5c&pz;c&7m{Yc
z)iN|)ae><{5OHp#J|hoUFGQRdsn5uVwD*c1=`J}zq&r517~J4#Mg*zfB#N}Q2f~K*
z1-Nkb83Uo_fWikf?(_s44w4KB@Nkd-hXbTdA^{EuNSj0gDI6q_{340eUzS4ZGfE@%
z1!R!=jB-eQC3&PiqXJT&Q3<KfsEpKSR6+8)8d9H89dDoU4>aEIO=VzUH3OA1Yz!xE
zF$$P~+0_gl4;ckgz-$c`4KXHYJ71jzR9Ha95Y$;fWeX%dsIwr-7IhX-*#a^jlpa8O
zA@Qrh0tyreTayJ*&S<e9+WFcnrqH->VbEcL-D~W^pv&R`7uREf^@Uv+^jR9<;sz{;
zcA6neKV0011-5U+g~6BwG*SX_g9!_4+}MS|lw~Jey*Ufwz7h+Tn{aVU7R23-)+`_3
z;x<TZTNYTm+J(UmiS59G*vst5f@l*$*pPZhlLdP_Uxx*`oev5VNWG)Sf@tUKvmm$g
zVc`SH`!IKc*f6(&*f2MM(mWd@14AV^uANyt#F+$^f!QzFI|7*mj)K`t94msD1b%_p
zsvI66Oagl5pfqF5@gjstAO*}mz_}uWNni$;eVS7vlSyDZn0=KqB@>o@t{}DTuOPMU
zuYlX?kh<v#QrrG2xDbKF*EOWJ{dKT<i1-bpw*5_{w*4)nw*76Sw*4KXw*6hCw*5V%
zw*7siw*3R7w*5n-w*4cdw*6zIw*3=M*xfNM3{N=`b<i_TXL#N5oYM!+e!&Sl7u|*7
z6%zXmQk(xRC+yr&7lwD7Tj6@&b6$h9KXAT*vp;fjK-;k{44*jV;Ox(ws&MufB=%P%
z_BT#VxSH=s>>r#4aB&11wT`=vqYeKQsSW=Or40`XA4nbd0;LTP3lmUUg}E7>4Ra?*
z9OgDqdNzZ)6V`@5V-Bg~SS%SBu0z>hKQJ&n1*cCoh85XN0+JS>^z6xyk<TPx31;^*
zh!n%pZ6CP&hm?DL;PM|*?)4#+|9#-{A7nnL+ym)_q|bg(u?MXOCm_{>6Orn{Nl0t<
zCL@*eQ;^E}sSL3Gy9>iKq&=|H84%+eGmy?RnTa%BJqzg^_1Q>kIp!eU^*j%0TzWpz
z-jD@I_Yy8bx*L5l5_<{KUiGC&?Bz&%sa7DZJ%+F$<=zC0dKoglF_{6m+(V3SOl3fn
zd(#+@%RN~5fYJkUS%+_YBN!als~9v&m;_qDY-vW0Y9@ibV75AAM>UhcH!xe5@kBL~
zfW9Rtomenh)G!I8gV{EW9yLq?-C(u{<B1w3fumryDN{!WlfZv4djZplUM2xcE0Esv
zOdJ!K1d74zTTD3<m;}~<*^ihSCcx6$Lncr?3u$jWWCGQ*koLwyCPY2^kO@@JLekhH
zCQu@Supcua>eeS<^$_u=Oo%r8GbThE{y7uqW?G1v7fhfra|rt-Qx3e2d&N`-XTN4b
z%;&ygLe!^knGp9My<<Y0&-tDSai+%yCd3)GADJ}Z<<%!9#Cd?9nIhogUziYW^{-4F
zaPe<Uv*7ISOgrH0A55p<?4L}J;Ot*ah_dlF(|5S|A0`H9S>eL)mq`rH{*T0FWLAfZ
zGckL>+04wDa5f8b7o5$?ya3K-W8MR2vol|UvpJY=!r7ciY%U}=H}hS%8XhDzFY^<)
zID(B@4nJYS-q-lWgy?JhW<u_3fWik-4*z9B?rXrp1eB*>ZboOr+zAqgxeZhfzk<3G
zRt_Hnr*lV!oXN0s?toOTIv|y+kb96J?EwdHxe6-7LFFn)FC=|Bf|5M6Ty;V!S6z|V
zZb)UUJJ=kEUJs<Uw<ppa)?P?#Z=^AKAEYsPUj{#TUhqR&Z{v@&)+hjp9gM^dVW@`d
z4P|JAv%?vB;Oq#7DR6cq(mK5;l(iFxF_{>K({S~%Nau&dA?@jlM`9-+-Cvo=@CL3o
z1!*0AD$-qJX-H?YL)dq%K>b-Kl=XX{G6zy_yEFVo8jAy!QP08ZJ;CKRDEvWbRTFA2
zD9ym;vtVq9Igu#lfcnA^d!reU(=99<Kzbh|nfV-v4I2{xrAg3v*R0l{ayW~jX9_GG
zW`ffpq`b`pr$b123%Q3Bk`6PG(hq1g7;Nk`8!5fzBe4q@K&ziX{srx|hxr$Dk0D|%
zqZnyTU>Ur>=E6{pv?j0uX^(#;QaY(ZI(xjDVII`KE(|qD>i}!PGs6%!)FajV%}8_B
zEl7LcT9NimL)bFbpt#Nk*U^yh&q0YtP`rc82ZcWfgV>;OhV_+TdEd$!(gs^%%)sCP
zWrwOUFnEFEf{meLDw9Apn61ssaTFFWT1exiT1exiTFi)gPzyX>3NjN^K7jOs+~C5X
zjWk}W!^{p3A6;gCI9rby5l8yWpjA8&y#~x?a5aX^L2$MaGvZ8L6QsE$Q>1ZJbELT>
z3#7RuOQg9ZYi8IOjtheg65E#f1l%q=B(?+d1-Q5)Gh(g*!iKb?bWp}ELH>p0BYl){
zOOPKS{YOKjaZ4kVaZ8wgLGcN5Cx{Jm8;A{a11PRxePmc%PlU#Aiy8yNY;c@{_6RTu
zoB^|QSUT94q2meJNaG3FNaG3FNaG3F;PC{InV|Ru>4n5m4$^o+E(^%N5b-<~MEvHn
zAmX=x1>|>#nnD&t{1&mm{OiI{%z}vDQWnHqVHwMGc=%Vaz{(sKhDsL1xo1@@pmGgj
zehmxaKCfCNb{z|%tgdH4#Azc7Y+Z*7LletwxLpu7Bz|*I#s@(Dg~V?G%J=}tkC6B+
zLK+_^Mj0P~`4<$AFn5C3Ft>r&FgJkW7sLno3l_hRpz-@^J_EyhaGbI+WUw;}DB6I^
zRd#lda%O=@Fq@CPqnue_BA6}5?oq)ka1zW`XJ1jlEbs=*)?<HB!7QL+3({-Fo>9px
z;0|VA<#^G{EKm<--{bJ;V;0yBX20b)(g#aFZ;-~i-yn^3zu`cX4{yL@-5@uE(ho>4
z$S*DoZ$V9LX#3$E(zy3~uwICo4@l$QA2|?Z_$Lm;*yCr82zY#b;Q*aF2GRSK1F?Vq
z8wX<E@H+=$-tY$pEFZZr{NzB)8~);ejnB9+{N_N+8~))y%p3mYK+GHd<4A$GY5#MS
z!PyL)eQ-7-=L|TT32A<inR5+XoQ3lcoXv*B=HR>x7w6>s0%vn^ibC6XE)3k9uzt4-
z0}rPUT%4CP1J35-tb?=pIa}du0VK8{5?hF~6Rt)Wi7mo80WOYUgYqA!K7x$5zsE7&
z&WJP?!Gtmv0SX^T8<+)UECLoLpnL#xGddgQPLMdvZJ@j}4eCx<-nn24sRvg^F)-W)
zr)M^XjET$w+;*V!&&x1nBC~)Mm@UGvU?MD?3xnGyknsm$aQg%@{veDr{vZr)pMcB<
zrE`#8NIC?yz+i0^Q3g=C0TCBtK$Mf>NOz4%FlfQkvm{cxSBe32`!qzaG}0af8KicI
zEYkjEIfl(}bL5fQs0s{c;o^!&dzqDy?!#4KK-{0MiZpJZ&cF{(dm2b=O{Du!w2;oF
z*FicfPZ#MdRtOtXu8M-&HXwh2(hn$nAmyqA%J>5)Od#c|6uA9U$Omc{Nu!KEz`_TV
z24L<4v0-<$fY{1V_k+>~sQ()Xj%$5}6O)()GQn(Ph8L5V1*U-677QAbnFZE>*$xa5
zlVRz>9-JN^?NxhldVsW7?UB-hJvcpp{N)1P1qw?8j!11(C$M^m8fOMEc)YkE%}2N*
zt<iEr>hHKCt&{XXS|{m=)MxQRN)O&hXN3A9omJw;0Bd8oF!&>}1CY`Tf(?ozP#%Zm
zQzw)-0+sn7zktFSW+sRYtJgqbehKPFSbjVV4qIaeohh)eH3Ek%B(E8P!xoa)jKE<9
z=?fTv!xq%01?4r6UXZ;m;M@WWXA`7wHbd%%nj@{lw?GPKOQd-&E2OzCYoxmuZ5Ti|
z=0WVTMH&yZLt6Lcz>o*^qYHy0(%w2Jq<(}eQa{2CDgSyPu|1L2xOySQi#O6)1U^W2
zd-)>u9sH2)v-U?iD<c5u%z;28b`TOf7%BgTAnkPxMY;<tj3EY^k6akSk?#MBV917x
zM>3Sd*-;E_aCQtsFPt5R#Exf}2p5O2A@hbNDCGkv?Lo>1E0nYcY7bns1C<GG;C?Zr
zujCFcD?srDO1H3iC{UV&ouvR{L(B|EF%x+V9Oh<_dYC&w>3K3E1H)%<8ct?7Fcp@D
zsdYwoI#L?WK-x=^2~O!Cf4MMZA+6`kM%ss!gEUT(i!?8ZdS(k^jbahfxpu`!V<06+
z<w+^h8INU1dq&EU&dR7jDqAX%&Oxe1I)AtZ=^U_Hq&w;Akj{8)K&p2dk?M{nq_YT`
z89?(FkZ@>0y2qpy=`7YZq`lbf43Y3O*2$0nXLm7V!r9#n`EYg*Lj|1O%TNbr_c64>
z*%KIg;OvPEQ{n7M471_v$qXyt>?sWE;Owakh`FR0413_>GZ_w`v03dwX*&g+J|Ss4
z6(wzh@&zayK<N{v7nD9>Z6{cHt85Qx|HO$fFz7+qZ|xWutnESVA2x=L>C6IoV74Da
z$82VS1z>g<!;9I>0$0FncV?MmuypQ*G(O;lG(O;lG(O-49v=YN1uCmSdO_}VVQ@zp
zAMik0PvwcUp2~|EvHsSZ8I;E%dVQD?<K(`~pmRSU;(pACHore}FT5NMV1}Ke=)w@l
zJRdF|gfu=7jI_2Yg!vp?O(@d((lBPkcwIR2SGbx;W?p!FMKO!Q+0o3P@h*tlVv*Ka
z#UZidnGt6TBp|Vqm|^G4yD%g(!|vIEu_0|I50o(nP#S=gW8NrZ4xn&@w4HpB#vJ@m
z#vEW_2ueS&^<W@2%xxex%nhJ)1-rKzmag7H)6!Zs28LhYbi&4vahzE|&jFOK^jLJ5
zS)gMMx=3RVx=3RVx=3RVy5KPfkeQ$~1JVl#Lp`K12YsY93<gMR7z|mI;PGO_0z1DK
zwDth8w!wr2G<pp&)072tVitsL&H~y^1z}sTAl9H-v2?=Cv}TzIXWOuV#zi6O?N}DV
z#qE*U4lIbZRgNr(b<WN#i1xV)(l`c$4T)cUlraZH{2HN*Ie`2KiC+_>F$YtWF$b7`
zLGcK4Cx{Jm8;A`XO990%`W?;g4v=zVxf%mQ2slpJ7&us11UkU%IA#G8Sp3E!l?ky(
zWkM`cnGg#u6F_Ey;uoYB5{7X|WkNhsnUH`~CL}T=;x~yI<adbPWM)MCrZB_&>%x%A
zjELWKW<>mEFeBnOiy0BW+02Oe&0$8wZyqyj51I=@J`%eCX}qxziCxUR1D+mAm|^!{
zyD&i5kob+qk$;m=@-N7bkoZkO%D<^7`4{G2P&~ri31Y+28;A{a1Ge~G2#sIvHU@?b
z;5cPtcwxdK@C3~6<an`%MS#;0l$R%PXzXPXa0avIaIDzNB9H-Qui?np$0D!@%-+qx
zv7bfY4w!wBgW~{;0HYH~Zw^<-6&3+CFuR(I<ti-ARB?d@gCPB>DlWu)YZVu$PXTH3
zS8;)Q(ja$&(hNv1B;KpJKoe0Ab`2LOk3iV9V7(A_9T#HmwVn$x_u9aPSbyHg1zJ-I
zQQyRcNE^*uh;>aZT!?X`RxZRiQX3ay9I2fPF^<&1g&0Tb<U))ib#Woak-E7M<48SR
zh_$u7T%h&U5cl+PA=aPwb0OByPT+#AEp%a+gv6f0g;;++l?$={d>R*G{rPk*#QO6Y
zT!{7OGr17!&u4KV)}PPjg01CtVVHx&o{Pku#|2y0?ZPl0iM@aew#M6q0l@~f$wBc2
z8852k!air(%Y~RT?c+k8djf?Iq#rtg3wh2I7ABxH4|6j*8|F@sILvLJe1X3H+!35s
zg&1<K!_ulCxPJ;stAgPEDWvZ&h}1t71ouxtZ7on*1?h#vqYx;mLdQIXk;Z~Vkj@+s
zMVj{%Lu%)XBke_!VDN#LEs{ug>qsGu14tw70heKz16MDL#Fj&v(?qaA@d6r$fwVJ4
z!2KzZ`$6Kcvk^ey1~U`HhMi#o3PV`=18W;ZI6>-;$hiy*@!;?T?P+2W=moQ_nK?LE
z1$Kkk4(u14S)uI&dv;Kn02v3cX9txDkZ}Nec0`$A&kiaRK<0zO8Kf8FP8S9Tkn^G8
z?8pw{K*XKc5o2!7>=y7aabXADK?YId%8s~Sz>OWzmv?7JtjYIahn1@?44&*;;pTX;
z!|F{J25<JuaB&}Y#N8{t><{7M{_Kdg83F8!@OEP$J816@#67|65^(VlBz7pf3|u@6
zi5<ZX8rOp8jbw+l<y;sbY)HN1$d0_$5fna<cB2bB@|qt|m_X_sH+ICDA9r@-H9xTM
z0i^+$J3(xi+dyoX8$f9TbPwz~a9l^TbGWh!`~tK2`7}1L3Wz&{>IgBuj18;;o?x~r
zAIC;kfiy7Nl<&kwR)J<P+l4P<6RW@iFguDbV>7G3UNHMB|CQsc0`I`=pZqV5vkGv#
zfXrkQa5(`>SF8e{bOp)3tOB5P1<Ajx0*G|QDga7XkT7He2}9Eoy8x)Xf{1f~)kD~v
z0*LyBO8`;7a0?*n7ajpb{lY7Ns9*R55cLbc0HS^o5J1!~f&z&8MMwZqzX%H;>K73K
zMExQvfT&-@1Q7L$xBz0FLP7vBPa!FQn5U2u0FA>#{3R`bs7GW35c3qW0<eCi3xhlo
zTTuWpPoX4$n5R${K+IF92q5MuR0R<86lwy9c?xxbI_S8)3xkFLY|P(<K@*9sg~Zkt
zfQ|pVFz6t$bp>E^0WJ&(HmDo}#UrHN;Sj)H???$C>K$nT<a!4bK9G7xRsgx)frSYu
z&BNS`&W5=YBo1>MC|{t@Q^>hM%FI=385lGmX_(=~DOQ0<Fnck>ip#75U10VrMviB!
z0=vQN$t)H;Y|!#^5>h{F5>h{F5>h{F61blQvI|sxg7iY-eKJx%YYI|7YbsJdYZ{9y
zyd0a(g6NOWU_s2s&16BWVVlK**n2XY1<@a$!-D9K&t-wt9WD&>SP*+Z=d+xI+qHlN
zHiqoNu#g3Dp8O)Db>NFx5asGp7D0G9xr{{;&R))<1ZS^gf%S7;7*-*%SF<4U(HbQ7
zIu=-8*o9#|iwoQw2pdwyPQlT4n~u_V1BDx;jGc+pcbkRMcY}o?D9ym!31Y+C24ch9
z07^@s{C*Lf9yYRc@UjW~2eWr@obY86kaq=@hZi|s_^}Cug4tg<Is(`PO2KR{&W=Df
zfi+<EQZ9}(Hi1WAb`v*8A)5e`8%S?AcSa$bfD)KJm3v7cEWJ(PMwF{lxDn;*6m9_q
z1_nqQehN3DT%8I&)Buv+rg4MvBZNI2tRBLi!Hp<aXL2LT)mflo9a<*O=0=pObGQ-Z
z>ReD)2C8NrH=<mf&y6To7jPrW)rH)Ma&-|mqFi0fjVM=_aKpmfg<&Z-D4ZegT*i%P
zw=d@gwM!x5E4UHu_Lba-cKa%BSR2)aVGR;{9XF!9UC)hZw{PG^wA(jwBiikoxDoC4
z&D@A~`xb6QyL~G+tPSkKunmd59f`ez8`d6nVc3bp-o*`T8@n(d*r?^_bZ+eB=W=dD
z`MH7{x%>o$52XBD#f@Bk!omcUo?&iAXT#hH5{J1Bl;+Xf?G|p3@{{p91A{v_t*S6+
zl&}fJfZ19M9wlr71z@%TLq-XkKr@(a!O&5{Ca@69c4Amj!X|J5%=Tb7QNkwh3e5In
zcu~S80NVJj!Vu2DQ3^}{Vc>oNq`evj?iWDXt6@m}f-rEu0OU4Mc?;4DNhje*{elRj
zenBMC9B~xVdbVh!K0*xA*)p+6XUN1M%{|2<^$QY^?hs5wy4N5HX>30kX|6C8=?=kk
zq`N#akjC&ck;d?|82-V_>TIO-=Q&7o#Cb?(3+FQ++N%W&X7IAK5a~SCBBcA&N|46w
z%aGXRNOMmW425uWDjDkG>?#J>zC0I(Y6ip_=30h@a5eQv>?Q_8er#sA2UpX^fXI*S
zNbC-VmvA+m3?Ja^ZU)4f=N^XNaB&D5QeQ-%%yS{y<k8?Ue^5FB<vY;&A~|=^TtF;%
z{9g;qjsvgBv;wo^89w~~|KAJDPGETR|Ns9eFguaq#sB~R)4}W{hA033|1SZvlNlZ$
ztrrEIDbxrS&t$ldB#yj~Nr91pp%1JkA4Lr;9>IB&k%3`0SWN|r8d$u5)WE_V#D;|@
zhz$!v5E~X&pghjX#K5q^9aIPPGia2v30w!W=P>k@vkCBefW#LwEG%aea00VeGi)no
z6DR|-w=mo&hvn1F;Cu>c|8EB8Q%L)NGg3a?49=&ZFn0m3+Jwz1Z$-+R+mQO~+mZ6-
z4hCy@`rnDP7jhTUeDQ9ibF}s&u@4~aB{_&R|9*%8v0wWz1FS#g!f>1+7oL_*Ff_y2
zCmFin>{ARA;OsLDh<!|Fk>;lmY)~2lr9DXbyd5R&!PfGD;svzVW1<Hr9qtCF!+Bu#
z9&kEb4QB5Jr$dN2`@rVx0E_Pjr%6!Qg6smF{Q_cx%!Iia#D>kCf#Q8BBLl-Ba6DdT
zXsCq6<27(RKJWmYe{u~e9<PDp5oD$d_{3*e+}%K$OTCH2zJ+ub*lqABUl6@_kj_TC
zi!|?lj{z};d>`ptmj_65`j3&;13y7p5BwDA%)Mtwdw-rY9EPWv7Yx_n?3YOE$zL(N
zhl{^vV1mc#8>D&Cw@B=FNOSrS_A7As-vGx2WNhaqIPO6H1;quZ4aVUKiqqTRc!cEN
zI}D%y|Njrk?{^tM^);k?xX17jseAyPjwTA$`xqsDVe6tnaSC%Yhz&dE1jL5T#e?D+
zc18hg>`2ZNQjb6OVPH`A1m$rKh6z=$G(h~>N+5GUbuLIR$iL`kD}mBHM4TI`&gDVc
zFU-e)7%$>S8h;Z&I{!xyX$`p$%6X@VG$Vqvwp<j6ErxWKqd3EIcw9>$tpkxnIulq1
zY0h01={{3Ar1f3$NcZ_FFfhZ@j3QDxQ9@eBrHaH>V?fMfsxwH#^=cy3*IG#TpK3GM
z!qw;?tq;*fS|6f^G|#S&G`DWR06KdC68?q^h<!#z4E=C3O_A7U3^U>4<_z=UY)gif
zaJCi0COF%g;TW84!*B-9wq>{hXWJpw@AgRbxC6sixEd!Uwlf2w9qz)Q2p_L-WkBp#
za%0egi@P&e!r2}S4sf<717c5;7XxBE#FqilhWBHDwR=Hpv{K=E0~jX4*?|l*;OroV
zS#WkR!#p@U1c@EWfY>J$#;^jeCIX2a$*=}44q-#q<e;AG1<E^+@k1eS*#e43P<aA6
z_tFMjCZLWXmqXJwDDT74IfxC~4-PR$2E`oMJQ_$1Xk8yfjV6j3P}>7irfH*;X|Oa2
z(hEytAT}snLCmp4F$a`>qQP#qWB86#zJc0)sbFyj@OU`HE=Lr*VCe*8J}iDgY*3s+
z%=ASu6BfT9HLy4Wv0-rmV#C58R5os8Vqj<imw~Yi9<{JCkg_|?L2(C)FBgU+q_#~m
z(%EP!Nb6D4k@m@EAgznbM5-UNkoq9mNaw}nAgx!-McRjz$ADO~QN)0ldo5-_jIoy>
zm35^^b!8dS`l50M#CUrJ(w>@12H0L07Y5X|Mu@$T^$dtHq6VbCNh4Cbs|o22h-RdI
zN()jyr4?zdQ5RC*q?@4%UWW8Az|IVDVdzC-_aUu?>t~n_S3d!1jnG7fcX07Z3_s!Q
z$qb;jF(e+RF!00k>{JF3IC~lrdpd&@Tzm$D3Y<NY!3oZu#ZV1r&t_<Zv*$4M!r5~f
zX2aR@7#6|V3z6817?#1sA?%spd=v-HcaVG(kCKl-X%f;W>H+5$NIvaBS?dc6Lr@+8
z`4^&oDp(Cf{Zz1CP?&(qB3L+p)Wh5fV#C}9%3rIY?u4~Hc0k)6-cAe*`@#86mf=f1
zEZ;%SCxrC(A?Fi9`umvY6N1bEwLL(3LGEz@?|y`}OXa}rSctehQrlGlDGw?kodvCo
z#74cF0C6v^8q)rBbq2)R1`VWj<C+YJaWE~0Gte^Gg+Ye_F+Zit@E0zwhjcfJK2p7J
zfV4)`m;rHSlnFyHJbjunM8Vl+NcWzbGqk|PEf|i&+13nK;A|VDIvTmYhOi;^ksM0j
z88i-g37p21z-jCbl>HZ}JO|x2@C+=j2`<k+fZ1B$J&(V@Y}9%L7FM7%1DeAE#TSST
zYd;{fL22neBLjn^7pT4J$Z(?(mS!OPZ6SS6$bMT$-xG7cEy#S(`eD$(5QOc7luq1`
z*zQPuPY<O1v#9%O5qloJ84zbi`5^6o^hH`D>W|cR4MJiEBduW$K`OUHk=S8KX)GLR
zJ#z%oS<sP4V@**=>qw)K#+qV~&O?YrI_n^g0kPID9;q#wz+ePVGl@v-R3vs91LE9|
zbR>2LLl9hVCQ`Ybg|y}~n_)LxO%76fGMC{2Ts)8AIh<X9#4cob4Ht*7b-Y0REXewK
zNEzsiQU-$3FeGhzpp;{<Jy4+Z25MhH%DoV<8c4Yp0xknVX$Dm8f$COBI*(@f`v3ob
zNIH)J_wQh8jzRM{$V^xm!q^b=)4=K>=BI(pf$4>XCrCZa?;tkJzo5ME3F>!Px$5l&
z>C?S;Vqge{vL6aCGQ@%N3me0WW;TI-Fk6&iMGKq2K``5sVMRNez-KVKnPEd0EKfCo
z^8%zCZUT=3K+54Ja9IkOcW45S=YZ@2mBS#tAosg~Z;*nO!!2NQAmXh^cRjQrt*LHD
z>g#ndq(j5ag`pGaEc7m<vCwX$J6n5@_SEzu^}qU%+8g~y<>~~ayQL-~rO!zWi1QgH
zGbBR8)`ejzLnWL&jiC|Fo{lsYG?M`|cM0+1EF|`9hB<KcbCB5ckk&2FXF$yVLfDYB
z(SlL-Lefb)xa<Yl1xkmYJ&%xiu1;_|hwR_!LP@Kz^}3++19K;c4Rafa4RZr1U2SG$
zVBqowm9YyMGJ4nqEWzx13>*{K1fsy~mkb>f*aRkk+3y%uOkfi@24;U^I5B}u;5nH6
zkHKRin*iv(PZb7rMvuvC0uDYPGtC(}rmzW=gV`R8C#J9otOv7iF>=gd6L=10zhXQw
zhfRRP7o`3dW5--J0Y@-fp2=fAn?Mzqox{Yjm`z|dm|e=0v6xL@513ugv}7?X4c8%^
zH&Tam-bfwz{18YQu0uL+q#o(Kkp`smMjFBDL1FH~(1di}NHY_x+;CxN0ZrpU=fzr?
z5OcL{Oo+Xc?M$F@17c1G6JqYHlL=N2x-fJxA?D7ynGkblJxqwXvtA~|+*uzJV(zS;
z2{CszfeEoDVImV^O~NE5#8~BIre*N-IfV%^FE*74asJXYCd7J!=}d^e`3xqc_AL`)
z?ZGUj5NLbPg<&=mZ2riFVGdIZTzoDQY+l}lVII>uxcGdg9dPynro(XdLZ&lt_97<G
zsW6Z*T!O@2#`GDkW;v4xGpzhs!DI?&uVe~?vsW?Yz}c&rI^gUzO!MIEwM<Ll>~%=&
z^+@auOe^7PHX^Y%F>Qd0BiNuk3mOlEtdVHMah}P1Cd3@y0+jPiK;Z)!`(1=`o(U{W
zKzSMFW^^{pogi_T+d%n!8`Pb!dgL-VADJ`6EQjSIGjJIWsSC`I>H;&Qy1)!v7l7&@
zP+b7h3yC9hP*V$<FD$_3K*TM<dLe8pq&<4pNbB)zkm?9Kr2Sv^NNfkB`8Y?UeR)nu
zV|~sH8{u_|3&Sor+m!)vzN;HjTgZcf6P_<T8C2nHFQmG|8)?sr57M}tFH+mv52=pu
zN17uDU;ve|5WfdAT!5P&!hpzkp$vE7;$aNW;OuY)CU`oJU~q@Cqmjn7Vi<zp;;|TP
zNc+bEqke(3?d`zz3#4st$AH|n2dzniw0T^S+V*bXw*7NoP`e9tUl=TGLFo;)KM2Hz
zxeb{ON{67aI5s~}nV-n8XC*A{C4kcmq-~!7PJ58HeF8ZBK+5n0aN2`}C+Ox{Sl);1
z7lVkWfz5%i(~;Wt8AxsWOeA&|(wIy(QrkWUyz3NVPA*dV%tva&6d|#Tk<RlkL0VH<
zio`BsK%7HW&H&0k5c4aL=9DXu+Wgf>ZT>nWc0JPEM*{=w3<MX3MkIC<17e*|Gt%C%
z7Nqf<R;2rv+Zf)#^GiDeY#zadp@Tsdo+djP5PNF67!YR~cQcg0)$|~>`H}a0O+XT#
zh&28@32FR!GEy693ex!VRHVIK(-;u-*K~%naC_%4+<~*_GJJ!x=OMA@GyH*zFJRz-
z=beQNT5$FvhIBZ4F+&lYy@a6$&R)te8O~mg#9qNL9WD-GOZkEFOA<J*LHa4l;Px9R
z-a&N)qMwoh?t{R@VeJiY-eF*1faK*86g9}_GlR->NPDsYtOnACY(Qxrg3<{jU$=w%
zAdtRH2e@wnvlkZcAbVl^^<Zp>`E$YQA?D8on*-Ae3v-ZqSonb0urLATeb_iH$i1Kn
z!_p7ZmobfCU~mJM3Bn99YhY!95I8SG>LVd=nE>gV2qBdTLf|q1WDY1lf%Jmh<H7*C
z85CANh#<{ZiXzQVNg(x8B$398q>%3WkVe`cDuZ;kp)AtbhH^;dfIQNjL<&fETq-hv
zPF;eyO$q643l*e#O%-X}NsR%qu2miBTtp3|a}hO>)}m`8&6(;Vjs5B|Al6qKAkA$V
zBJF)PLYgNvW_SuO2TYL8*D^yYA1sjenOY&ui-|KJ&P%sJ8WXldnsc{D8c%RQ8t-yM
z8t-yKs%M=UU}ulJFt{+3!t<{y1LEv!H>CM552XF1o(!-xQ7#N#3~S+fy^-o=AEdIy
z7in(GkKrm@y+6_zMF0chT)rR%(7AJvI1NTxqY{Et&V(}X!pnp(1`Rkn9BFPVg24zb
z9?4(}XGbx(!P(Ia0dO{Iy&nS?k7G!LvlAJT;Or!ZY&biap%RU)&j~7{AahKdV74f@
zjDnOoV&L)w<VR3>1!~hm$}xNJ`UIFb^0)^mULa~bQPjZV0#qh|#(W@ZLQ&Mf!V07Y
z=3fvS=4MbC0$SS~4=yXx8Sboul@*YBAJTqE1D6$$_Cp#{S&;@VD?n~`0gpbw%7+Z3
z@*x+ge8@wZyU9nokE{Tx?OKR*zC;lNXeAoN{9>d#2TK@WYfxPnN*O?RjziRxA>D6V
zj+FN+kmj<H&rGXEx+ks%>7KY+q%{(CNaKM`NbF{$xt<n=^YA?0ij?=;klF_ANavY!
zAdS6rBCU()LK@TVMmqPP2kG3BUZgR`KBRJB0)sI;e@$ethO;Lzz}DirFid7ZoO?eV
zi9G{p9(*PPVvXo5q&CKEq&E2+h9z+G=OVQ+<{^~>^BH!+)huAx4`(k#8mnBya2_tc
zm;td?e<{N)xcD-p@?kmBxaA54ME`mv(i*lkNM*%Z2E=)u5H=)lW`Nt_72vi+CIhI?
z2+2EH;JO%;mSA}kl79<P@)T$v3P=qoAA#;BfT(FhQ3IRf1E~RpIYiBD6g9}}i(u=@
zK<Z&`2IWmqpJh5YZ*F9GumP4gH-PJLNZ#B4&YO_-{04B|1i8%x+;fBF$4yB2aWhhW
z+=8^8WGmAB#oLh1A=!>pckf_8>}lPFRCn)2x{GQLQrmtn(z+A~8xsDTz~K*aCoG&n
zY>?k!`^Z3khn=elYul`cwry<V7#Q|~!$gF^U?VI{h(8kvWDclp1JVn!*9BaP!NN)u
zDXfssM3O{0??MXcd?ab4GED|4d}NXOK5`7s@bW<(=^P9Nq<LyZr1O-NkmjkCk=A#q
zBF$N=A<bE<Bdw>^K)M@R6RCXDLh1+UFd*)B(L<X1&_`<97$UW8jF8$k#z^Ix2~yj}
z6lwjfIZ`{v0;$}yL|P|ig*4`DjkFfmhCvFR_iY&vdm`)@wBh3RNORv#42Ux~To~-(
zYTS^{+>l`Kf{S}F_`}&=NNaw)k;*zBr2dpIQh&-1Y5dur0ddZ70K-AJnSn@co*;&E
zaPbhNdBaeowLM`-^XB0U|KaK*7!YT+M>0sj+Za(uYkQ&@bl~DKNbR3E2E^L?cm`*<
zngpb^J&8zbc#;@O;A)Z?s^IJth7LG86=^+B8pA@kcsc`O95RDp16(|d0W{_Y$zRzF
zh%w0=h7)i#xeTx~gk2c&7{0*8^BI1@*#!*$;Os&MPUx5$=-gBxIJ=lZ2F@;Fkb|>J
z88qPRG6r2ZyOKc<&aPrGhqJ30T+!H&@=6q3UO~!mF{HMfIF7cQH%d8=-0uUe^@7wj
zsO>b+dLB?%fyzKooI=zjqL>33=YgpKg*ik`E{Ymhc!JD<g$ala^B1UG^<rjVxDGBq
z>ltdcz{<}$q&lSzT&F<Vdv)MC1yaA%flEq|8(hGxD_EJ?fK+C-BGoT#NM&O?QhToh
zslC^U)ZXhtYVUO;wfB0E+Izi7?Y%yv_Fg~OMG&`5Kx*$zL|O+s8L2#+g4Eudiqzhl
zhSbKJg~XnX)ZUwe)ZUwmR36SlYVXZQD)$y3wf7bxwf7bwwf7bywfB}FwfB}HwfB}G
zwf9yawf9ycwf9ybwf9ydwei*?u{R*K_ckK6_ckGwft!)~dRrKl!^@?u4C~?SZAg8+
z?F_K}hAs>{7*4>|>_lqg?LsO8cO#82?PYijSHBObjkh1Ejdy_IFI>$*26lLva1?3W
z=@`;l$Kwo!a5X0wY~bvZNNXBTF{Hr7Pc!7e*=HDv;q0?W{kwAvpqVa68avO>23K=|
zp&!n^h*VBqVweLLzrwH>&c4b3TifHpaE)OLT>Lu2UO4*(!x1?9HWK>|QuzsCL&~TI
za2fRx+@@_rYST91Xw!D0lpEOFwDVBZU~kiIMp1*@Ck4e3q|7{tq6W175EO=>atY=~
z5F1u6fXb+IObiSH{-81K2Mj*jVP({Pq%!J0xQv37OZUNL6v#{$@TqgKa_J#bx%3FB
zTzZVu?tOyP?tO}M7T+_ZHt=%>eR%urCDOX<S4eB}UnAY4{RXMs3t>az=pi_cK<*@^
z-K*&j8PnsK%)np{4igoIIq)!128Rh`OivjcCXg{bWpJ24!bcfgZiCDLwR=H&L2hsX
zkI=!wN);)r)R4kT9cj#83+Wy%ZKQF29i+a1F4DcddPr?ueWd*+21xB&L!@zjBL>8r
zuQAftz6p3`1jNl|NaeXX(%78^(s-RE(%tS>NOzrBgLltB%&|o}^V|+;oZp@San_at
z(%uJ0q_at#koKLqAhmVfkj~6^XF%NX<jDX#e*iRY20Qc9g~1!CP3wcSZp{~IUcjHh
z5nk>EAgvJ!L>k`<Vu*&T31&ddUxy%#^@SnrK?`R<?EQ>DTJsr+G}ae|wB|FKVIJK4
z7zV`LcPvs}5XZ0ut|kGgUPwe*N0)@u9!^G@vrAzBtxto*ODe+?xH;)a<AIqBpW))!
zNPYYqq_w8G3<B^nGminW7d0QLUMN6nCl@jx=HH7L?BRNg8C>A(Ql$E#j3FE@Ud|8)
zXIC&F=IbjN^5NoDNbTwxh8nnd9YZsmUC#j9cMqCxf~~Ixtp(Z)SJT3<56*67K+Ng4
zF+7Khw==wjvpbO5(wz+d;o@BkyzusIH-i|Q-NT>^XZJGbz}fu_#&Gro20J)=B7+Z{
zJ&7S5&YsMW3ujMZD1o!5GStJ_(-?Z;?CA{C;OrR;i{b2<3~S)*Sqz)u?70kk;OzMf
zhv95ZhNE!yLWYZQ_F@Je7FhYVgh2?-Udo^gXD?$ghO?J5*udE<7<}ODl?-uk_9}){
zID0iiF`T`Ip$5)g%g_#IuVd(evo|n+PBMU`^NkEM;o_SZw!qn&8Fs<hTNn<)*;^UT
zz}edv?!npH8J@z~I~YF0**h8jz}dSP*jZuWu$zGg&fd!)3}^3Skc6}MGbqB@2N-PN
z?1KzWaP}bvA2|CkLkygKgdq#gKFUxGXCGszgR_q_G{D&>8G7LCQw-DL?9&W$;OsLD
zYvJs(3@701a}4L;?DGtF;Oq+wZ{X~U48P#)OAMex+#un9nE`Zo3WR-yL5K|&KGzsz
z;Oy%R>TvcA1|2y2CW9@UeTyLi&c4kM2WQ`5$bqx(GStA?_ZYh1?E4Ip;p_(t3*hXB
z42$6G#|&%W>?aJ{;q0djd*JM63}@l&=L|34>=z90;Ov(Sf8gv_3_R>G|Gs9Bg0tT+
zD8t!r84Td;cML{w_6G(VIQt`mJDmNA!3WO%%n%D_e_^PAv%fOb!P(y!n&9m3483sn
z4~E%r_D_Z-aP}{Tb#V4?h7EA`ABHV(_Fsmba5e+uUO1bP@id&x#CQeHW@dbZ#)h=h
zRKe}EK!4CYjvBbX9|vWF&JBRHY1P4PTF9J^2E%)#wcMaNooulB7KV5K|Nn>d(_6v&
zok8gh)b@jw=b&~ksO*KPpTO`Ou6`nldRW;DQV%L8A!aT?Q3EUAKx#nc4@AvI6g99i
z2c!m6CP3`nhh*=56!ow&0i+(3e<5a`K~V$Cn;<oyJOxp66GaUyzkt+$(m6!UGZZzj
zGz?M$N_!ABpHbAn(iKPzEIokOuy_RZ9iFf=FqDDY$?S{``(b?tHb&6e0LYj*8zbU8
z5H?1{c_3_zi1R?$8A0>up!jlO;9vyBDTK|*h&Z#0j}f*9*@c0h5p*XVM2!F=;(k&=
zM#P#%Ax6*|X^0wOM%cbH7X}f=dU*drlo7E%LW~h~TOdTeIO9~f8VN?&S!XT`l8mr3
zGhG;@7+1p8$S{KTuR-+6GQ#$(xiH8v!tQNxVUTA;%v&ii-i7N`WJIi=RAPkfwRd4q
zLt?8lBK9k3Fe3J5YBGZM<3sG#V$_1S*|ZrEXVmC0dcehX84>G;^%&#e;`)q;cB}y-
z;v8>7M#S0}BSyq|$R>=4a}`V(5$7SBF(S@GHfKbfv0%Z7I0M;|aU<MbD@Me+dOIYx
zJtJa`nFAwez7^s}M@HD%au)_CM%bP^7Y1iWL|fE_5ix%2%7~b=c4I`^kI85PZ>M=M
zTEp3%jEJ_V7b9YCrVpb(T#YXy?0gaz20uo`{Ix%07F<mLV+EWY$cWfK6~x#L7Y{>X
zhcm+VBDpX`Fe1ivBN=zY)kiTNg|nj>AHdl$j4$BqSjHc4b{r#OEH|E!1>R0eVC06g
z6B!X}P?H!X;NmHa@^E%4qdJ_O#%KX&r!(5a*%^$!aCRmmV*P3sV**?}n=u2<&S7kT
zvvU~{>ss>|XTZht84+t-3mBKc#S0l%!`VfQTj1<s#vO2WDdT=PyNvM^oL$a%1J15s
zd<bV(GQNhhYmwM>jBN0BT|J`!oZY}E4QDqp>ciPhj4p6?Gb5r++rk(D7jI=mv~SxO
zQ{dw5jM;E@2V)7G-N{%1XLmE!!`VHIpn3<AFM1g#z{UF*=fT<ijLYHd35*-z>?w>p
z;Owc4m*MPbjCbMe>5MPn>=}%R_U%kYL3kT)79*_Aa$%Uwr~wzB!>9*m&t)`$v*$5d
z!`bs0UEu5mjJ|O8LdHNidog1KoV|oG0nT2^m<eYuV=RZWmop;Tx+@sF;NokL*lQV=
z!o}Ayu7|VNGwy=3H!vdFx*HiE!^Jl-zJ{|mGyZ_Hw=n*Lv$ryW4o!o^%Qi-Ccsp=A
zqX?Y6gHZy`-o+>nXYXc2w1M|98o<T(GTOn}`xxEf?EQ>^aQ0zFMBDfXV=-L(C}S<0
zeT=aK&OXjK2hKjhxDn1i$+#2FKE-$d&OXg}49-5ocm~cs%Xk^iKF4?m&OXoh6wbcD
z_!7>(#P|WuzRdUo&c4FP2yY)=W#osmuQ5u%+1DB6;p|&T?AwfpwlstdX<KqIg3hOc
zv@JOqLFZUP+LoM*ptj`%aJ!L<5p=Evr2WIq2s$$d6nCI@Bd8q$X@3eag3ix@iNo3z
zptcaGzJ{pLLQw;&i$Q8YbsR*E6N(yG{RL73suv(?qEOVp%6yO-P+1C5lZ~PVR<457
zfXXq5nnn~gurdmy22>6})XYFp1IyzeHK4o$QL_O>4J==P)PT|+M9py&HL!FAQUi-G
z5E~Xppmw7cI|IXdaJ%t7<C<fzcH=#ycH=#8yAd*`dJo)g1cko~c=QU^pL&4QR(y!m
zR(y=qR(!$;TaW6(@RSiTw)~6{algQG&=J+p_5UvzJ>hM$SB#*&OAvcsGe*M2-!R6&
z*>4#^=O#haK-iG9_W&vFJw!@-55Z{<q#l;WKx|O>z{~-K4=jzr)?=K2j!WkmGca5P
zhZ_fjz;Rf(5q}m6$Q;nPG)OPVUi7n2KxrN#&W&_$4i9)t8zPQ+77F5wQvsyC$wEl`
zNrjQtk%}OVKZ_!<#gO)viX)v%CV@0>D9M00D^ePXErWE9F@z22C!(HH0rD4Q-7o4n
z6`=mYGjKT|0`7-`{0NGdTxk4);$<ch8|DU(IP$s2s~8v<SOY+FC<+XF;PE04o-cs(
zgXF>U1(11O$X;(q+LlKOTLn-z2$~KRk>&_c=L-=1Aa$g@09r_MzS<0kbBuM6&Y{vp
zI-^DpX>YGS(wwgW(z!H-NOJ)uNOJ+ENNfHfY^eZH|6LJjt+*1nFAob(Q22w`pm2ko
z1qw>%lb~S>OXrpWkogxrT?PhcaCova1e}1Sb2e~zLgruCz~Kp*e_=zKe_;cMC&(O7
zItS?m+3Ny6;R04}a3F;(CFxucC7oA5{Q_F!RD;Hbq)85x{Vd2~0#gqP6VN`3NU+}}
z7%ss5E)MoPBrS=9{SHY>;z)iM2m2l3UkRkNB#Go-StPa`(tMLVQd&|%N=wQ}X-Nes
zEvX`<B{ih9q|T5D_qzr|A)Kv=bk>;;(wYHXq;v&g=Y!LdBvM*}-1`Rd7btHcha2qf
zW>C1n?hJ*cr9Nm{3ansYm<<k36^4Y9u(U+{Tpq|AP+9`%1-XIPxjaL--?fnDF}0EQ
z=I9`mnYu{p)ASgk;Cl7Jt9>E%8X&F5FhnXdjga=^7$b$J3DP<6rbu@=nIn~-7D(rk
zS%OzGLhQ0)*a>%oHNzn|+lB!#reTk?Zp{H{pN=Eao!3rCYt@_?KEcg#LAs~R6=nVo
zc0L$r{thwL;e)g`!;e89K8E1W;0k94Ae}D}h_vn^h@k+kCYYfb&JIDkcPtd?Ovo^#
zH5lPY=SoE|Y=G;HMp}~=i?rr8j^QX=O+3RzI6DDpJw_t96$1(9B&0JWlabDNNn!W_
z*PF)h3(ihQT4$Sqv^FCXX{~-1gBW}qAe%uN&dz0!g|jso<l*dmq_zEpNNf0ukoN8s
zBdy6VVL+VMU5YdZSBA8ntsH63Q6<uuR8>gp)~XqH!rf4VwC<u7Y28IV!+E%x28LU3
zb|b@mIJ=1fG49cf#BOEaf%og%84%+eoeYR^j4p-<xSAe@SU9_vAsNo@W5|ND`xz?W
z><J8gaP~xo>2UTWhJ|qUWQG-R_7tSKwy6vo;o>tGcEZ^+8P3DmvltNL6|)(h!NnnL
zNIO#%+-`yNaWKcvw}8u1HSqX3q^+(FKBEs(A89bWMjK0q^n?7tXM}>%C#bxI<u6d(
z4O*K7QB#DX2DZl&qz1Ik1fr%1MGY*DKx$y&17gGc1uDZ|F*7h61eewG8GO#d%IbMY
zb>BRsx^Es*-8T=Z?gO>bV0HZhuwIZ~To@K2o!hw#>3)snNNXonAl2zB8DMu~xiG9k
zYOk(FDsR^ymA7k=_B5?S+Vi*`Y2EJzhSl&ga1+BOID0eFp5HA<XYy=gxCK|U9qD|D
z9Z2W<?L^wgv=@oJj{$K9*?y$*^8nI%wu21r@UrC)Lpq#&80jv&BS>o)jw0<>I)-#!
z-*Kcf`c5F7FL4s-Ox;rqpz}N-ad8G|FT+`+{gUU9%GL8o=dN5tTJv^^;S}7Rmyz}|
zTtPa!?<xcA>=DqqFT~!-n@H;!ZZU|%%aGehYklt_t@XXn;00In0BKL<L!`3q5d-4f
zfX577aP?1+)*C!U+F$t$>HNLt3@hR4UofnNvtJ>tReQ~_3oibK;Q*Zd7HO^TdxleR
z@ed4_;OvhKx8dwh3?Jd_&q(Wjzc3)ihrc7Se=sP)%bcG`Yj=M!AjW=wBdt&P!w>{l
z{}-uT{l^dw7yr)y8?SI-U|=kSi!(Bo!r9D>HE=cyV-uXs%Ge2KvoTJAv)LKv!`U2+
zTj6X@#(i)$7b9Zb0x#nkxHuo<1vECKTwQ=vt}X=kWgufm3&CsrAm!>paJhO5T*fW}
zpQQ{b_ZBnUK`K{4b77FOcNN18Byr?ECg^-lh?;{aYG8R2R8E4@FhtFL6g9B)2~q=!
zM~IpqC~9Ew2vP$J2M`<PcTm}Totc5*C%EhtVpO>ZD|-cz#$*JM#$*JM#$<$$=I?}&
z#$-g0#$?195$$0KM$m~1ka9qh(H365NiibE6J!`c=X62T$T9}P)yOf1z}fOh^L-FD
zB<_Tf#$H5_#$H4iLF0aqxD#Onos|tTA5_O7_bEVQ0w8fvn84cMus(%gAf$hKd;$Z5
zVj!r$ugA~;4=Y`8T?6T#>VoSjNdHt9sh-jW*Ha*KKz$03UXWcb;GI9PI!hm^k7j_h
zKF|<p4WtRu-XBw>v%JiZ`VQs{i2Ls>koNFeBK7gDkoM|YBb~u$gS3ammSF)r%<YiQ
zq_sy{v+am<PNNgjIgQRpcNV)K?dx}CxD7Yc4ZM;R5)K|n`}#eR*7$ib{DQ0ZM%vrr
z!+@9@^<@x%*9!qiYrF%I?vM>)(1WW9W-x`bLy*p}4P`)_Q4_}C4ObJ1bjD*8Lp)qO
znjs6$jzL=c7mIW*Qyfyg8IM$NCNjY87Y3cf2|N49g&`SfFH8zje<T&D50ZvdS7tEm
zg}WgWX-#+*(wgvWhU;)OIY|40a~WR1#q$~7!r28#eUL(={W3*J{f=U!b$}&EduPg!
z`Wod({fi0)eRv&I$zTp=S0SB?TaC1Lrk=qUuBL$@3eIjq+85lyfS7M>W$1&eX+t{0
zww+-UT)YFR-_eQG*XUw+23OO~@E*?YVfX`Q_ag0)>0{u4*Buj)*85Fjkb;X(VF-Y;
zry<pe(;4#M;xia};Ov<Uli=)G3^U>E*+~6}ISj|(;&YMu3-cK6z{Te?+=H_hGQ5DZ
z7c=~WvzIWi!sqywGH}4z%Nh9L?3E0vaP}$&9XNY61L#IpNS<BGU;!6j&)^4VZ(s<8
zvo|sz=0G<y#KXn6GL*vE+mP1vZD**1i|=6QfU|cq^upPD8D_xQ`xp@Op8FX#z{L+R
zAm%y`GVF(oA7VHPXCG!b2WKB)xB+J$W4HxpA7^*~XP;nr4riZacnfErV)zDUpJw<C
zXP;&G3uhZM{D-s8GjPD?4KFgt!r7M?)Zy&QNb3NvFnGYluQK?<+1D7N;Oy%RIdJw(
zhDJF17Q=iv`!>T0IQtI6W;pvU!wxw6KEr-E`vJo#IQt>Pc{uwK!wWe3F%tVJ0|$Iw
z?>PfMoc$7MUEga4Pq_FSh736S9YZdh{hk3akNJV23NHSU0WpvHiD4OB{4>LPIQt6&
zVjlA=!*00vH-`Oi_IHLOaP}{TlW_KLhUakh9|pvH<zI$>aB&D5(%#TVYAYHbwG|DJ
z+KL9?wxV4iXq?;t+y{rW(+n9vbBmDvxDj}57${G{+9Z(nWGlFB2@{8vZ=m)Ys9b`m
znU10cR<?lDfXW1jnoB5ZU}+4b29yRMY967efyFOK4J<rCY*;ve+DM?Gb#HK6h>@}3
z2CUu4fYfee0Jj?<<JAn{b|Yl&g8^v`80ZE>So?>GkrQ6mGc$s2&II`#v^EU3cgBT*
zlQ9;qhKmt#9wRp+VjP}_u?en*mvK6r&Bq8DA%K|4kF<_UfN?!sjUXf9>=7ZPHC-Z%
z`{8Ot8A0dLK+F+iMBMWz!T1)gMiOc5mK381yl$0dMD)$&k=P21mT)zSjLvYj5+i7D
zJH#$!#w5773M1@na~B3xM%X@g7X~#(L|a0g5wWL0gAs9_fF|Q=xH(#kh&=_`jEJ^`
z4kKc}tsWy{ubDn0V!y2cBjU_nLq<d!!<Z4a*V2W-gb{H*m?`6XxV>hKuyZq97|a>P
z;PtEpqXL|5jl{M=TCZix=n7Zkzz92Y!-c_-F%K^8#0bkTpmk!1GyPl`5oh4LBCWr2
zV?^u=aA!p93-Dmv12@wXX)Tr)<4L%<590+m+n4bgobAVW2hR3qM2uSoG9ua=L5%O<
zYJwTR!`UH>qVW1Ulo7GtHjELm-!>A79mVJdS09bE{wfA({Z%X@Vhl5mu@0_2p0Nea
zPGIbYvlEf}+DVLa;o`}RuyH&WhEztxIA<E;I=Gs2r2cpY;{mvMCgW*1JB#rpoSn`1
z3C_-8`~zp_Be4q@rQmgFA)^7DUBrlJhZHk<z{N`#5p9xE#t^u88Dlh@U5>OCtAa5X
zE?&u42xnI#t;MQgM6^$88C&6M>X6oA)ich9i#IUtgtHqN55d_@jEKDk{YdNyjEFYI
zM8=PB^^=g+VohcgfY-lM7!Ba;sf-qI_B2LBn_)VmA6$F}V+fo*lQA03p2e5~XU}HL
zg|p`{7Q)%{7%SlH`HY~o%8+tt0b>hXd?8~yoV}Q_56)h~I1SET%7|!_EMwdY7hleJ
z49;G`coxoHjl^EVco8lRVMFR-CZxVUGg9B58L98j4DS0w>SAW_nx71Cz0AUR0lp@j
zmGKPHSPiH?g4EYMj3<!9Vf72BP6U<b5H-puYG7qGNDZh=gQ#&tQ3ETlKx#nw8lol&
zMGY)pgVccX1w>5&iW*qH0I30`D~OuOC~9D72BZcSwjeevJVAB(O;!emc5t1(fidPD
ztWIB#RHv^8*XfXYd_A~Mhok|}3>mB*--t98v<Yb}Xd9zFynfuyh`3912P0zL!cL^M
zH@lI>dG;{I!}acE1f8S^v3DOM;+!G~8<HM2BBh5-Na<k{QhL~glpZ#L(*wv%SQ`w)
z289pId{Fp+&Y1*>!^VXcL&t>_-5D5GfWwWC;S4<7c#+11c#+11c#+11c){aBAag+D
zLLj{$^IgEJaA4udk2EeMfHW>7jC2;92zaL{M6W1#R0+ZsLplpi9BB`!1kzb>k_^7^
zu$5v6hO?!S=K5uj#+2lc=A-42&IeFHIv+q0>3n!4q;(_8NOL8sNc&0Ekj@8CM>-2m
z1L?dJO{D##+6?>P?$lub#TmrEx=82A>mkik>m!{lZ-8{Rsv**xHR{=MpW)^UF?@xy
zEf_#8R)}4e44@qh5VjT47?d>w;?7wc21R(A#};Wk$_|Nbk2E&rfOPJPBhna@6ViQ%
z&PZp?xghO7bwxUB&JF1fL{Fr1=e!s?;qLK9+J6dRL-GzkxL<RN8`NhJ0QYMk{S-kQ
zXK~nq`#7L*0L24r?=2|r!1fD(*wdl*g7OilUAhyTU;G(z9>B^OKX875tab4N=NCxd
z!4E0F_<{2a$S%;mNT9_o5Ox4k9tlOtBVkDAV}v8EZ;3!UA0ra!e2gfh^D&~4&c}#B
zS}PTcl>Xz8(tkWs`cFVwLzRSdUQja9T?r{j>)cWq5PM8Ak<xz_(!S|zhKulYn1ggC
zMlRCWX&%!3oB2rRU=$#o|5J#RK8ujf!6-($`=*2ewwBd}p$zGa`f>(DKcxcc9-K;~
zv|5F9c6}`pyN)3Yng(1LAZ$o_3jn9LQ{cKdkO6U4SP-}$4T@h-x&n>WL+Z6il=KGc
z8-mgpC=4NLP|s|60Sz~h8rZ!LAU4cBpfm~E7xNOFCYu<}JcOmmMx->^2u_obx~~zO
zCP8j<0iO&7E32E4(qRiyI&4Kc51|d|JcM?n^AI|a&O_)zIuD^6>Au$<q;%Vhw5ABc
zhJ<G`I6OgagM}N24f3x8G#o(wg@qfeF8c|s%Pu=GFfavy<~TSQ1RlY{f%vtiAag)<
z8Avb4-od!m6tTBU0;vv?M4GRcL1N1y&DYBz&37mut%*`Z%9~0Ii1SF5k>>7Ikk&q_
zB9;H@NNf$HIeJZ`^NO{Q&e76FnrGKRnhVfFIuk%2Y2MrbX<on(X+4q=(t0FgB(@0>
z+YE_qj&z0$gbk?|h+lIn9t5gWaId+A#S18{g6@Tftld=ruL%UDB~W?>twV#{t)>J%
z-`fmqrZTwPfT;n6zXMntvQ7pv#-)Z*o*>s#u(J_B_Tpm0&d&kmomY$u4DsMRV$Ja9
zF)WW*A(a(Y;IaZze_4Uc3P`zOg;almZjFVN8#YMgh657Y5oxWa6Vh5u7o>G8u1M=x
z+>q9>cp|N1@j_ak>5X)juMg6FroKpRHb10uoPv<rY{5wDTSAcPsZgXm5{A?^3rAYh
z5`na)B^v3@sTidE0%4bc<IV<L&O_qP7Cd$ei(gP(0AhpU3l!HNHYi?T=Yhk@w8=q`
zdD~EZ28May_~KxA^8^-O#FuFxb3kPpNH54Pa>_I#XxZz+z>m}p7hpileG4I-X(NoZ
zE>r|*J*^l6(tcH>IFdwSOCg=v0%4PqPhsang2Hw()Xg9^Y#bF7&Y(M9w}Qh{j-lr%
zEIehA(!VTH`j<sY|FTHwUk=oKgRXm*M@sX`NNg3P^skDP{xy)=a+*kMm9>!8Dr+P4
zUv!YxD(fP(<@Auwvew7BwzdNr4xn5IVxIx0PkC^;1WBI?;C3=7ZGg%s<n#$r4-yB3
zTOZUMSo(YoO`qKQ3=E&4>`yBh82*97mW@H<8JmE9FsLpTVyJlr3ui%aI78MO2!g{I
zvfe-tDVznt;S4eplx{(KL2hti0FA1{${b<P5I!{gMUdJmq70Hyce*f$A%(v<(%D23
zNZ~Arbl;pbQu>rZy7NK~X<e~A(%rQRNb3ZYkm^unB(@4t-%S;%-K&n&chg{a4tFzz
z4LSQ=7-j7}=$=7HogxN~J5ZQ_;tRC5ViCB%BLR*_$X!K}C}+{b)}ny&0<0YlVqb;Y
z3u43E0E+833=9lz;JDLb$au~skO*cQGn{zNCNLe$wq)RV!6vW+%(iFnc)=!c6U=sF
z=y<^<z#jsNcW;IjFW3ZJ!R$bW7cbZZYQXGp291|&0-M3?IEIXuYywxn>~w}1FJb9~
zTIWk=g3}c!tXvqf7{sCebz#Ux%8xk=ZgBBjq&g@M>Ab0Yr23@*slQ){bT45M(w&~g
zNcBPq(%O$w2E=?y8B%|_9H~E2!H@v&Yg956!P!+vXDnAE-Fs4lwC<u7=?v03hJA3o
z4M^-Jr1cfe3?JZXS{MZ3WB9E|XQa0wt!-#WIuox0X+2>l(w&=KNbGJTb`L`<-27f7
zb|2EZYXlpVwn1eP<W8SVlzsu|Oope%p!Qfbxa|Z<|1~IWB+z|KkUM?q!1sWI(g4Uz
zSeSs)JZzskIveIrka!Q&&7gcS3Cf0-f#7s&%%JlImTrxZ$~PmV^34dG4k7I*BXIc!
zDnCKx8%Qt6ZJ_cQRH;DNCP?*&8F)kuB5n@W3t?L#^{1?m)>BzCgu&CZEz<qAc1Z0g
zd!#kM4oK}HN2I$>P}f8u?%Z@mY8Sa7vE7l@N_j9K<`YrZME!xg%?IgT17D>56c9F~
z-Zw!h13~ElQU=<hl!2gqh>*I>0bB-x!Uq)Bpm+kYLGcK4Ka34gk9xNb><$-@8kjpl
zY}i?Cpfmuw7ydsu-UAs7-ooNN037d-@t**2yhGa00Z8#4fE0J25*b#P1tG<C7!o@i
zss4&UDzBoE_U6POjd{i*-GvdykO2?pc%-xP5|Gw`Co*)y)g&Rc!IF{M%xOq{$#kSO
zav4bHon|8Kqsc-VpUg%Y+sQ%dOXec211~^|_d=xc9|&7G6qLt<z;O+UuV9q;1*HdA
z{KD>W1H};+v`hoVKPXQbg+kiWlZ+V{tV2O{6BmQcJ6POtg5wU-CgB9f9i&adi4=F7
z;J5>s1In`?y&!vC7`Q;jL)#(TNO8xDlxO+CdLils7!Yk~L8P{{5K>!O1gR}8iqw`C
zL)w=rj>MKgYGX?x-R&ra)Si(>ieFhIwj5G>8^VU<J8m5LP6QkmAisd}7pT1*0FEOu
zl=2xi#{tSa$oC}TYm?`L<3)+#4m@5I!SMpgQ;Ohtf#fMgq<B$83R@+lxIk`)t0TpW
z22!5VM9Nb-NNsXmq&B%8Qd?0UsZDNx)FwAXYLgowty48d8b?JvmlC$0)P=zuJipKa
z4nt*d*h12|3eI#6(+f)H=zCEY!_v6{1H)=4J351bVKX>v*%&(Bvk6=RvjrG9KClTe
zhk^2fD6<C}yMPA=1H%Fa5oXZZZ%AGcVFsOp1j!2`%%D0KQh$jsgU&$$nGebfAibdU
z;KBf!^@o*dV$7iVM~JvMvmm^jkziJZvn81kd)uX$E#TtP%mr|^40A1<Ez68JmtKx}
zH(Xqv`3Rh?z>K&9T8SA}Cb%#tBe7MO5&QL2k=W|Yh_$#H%!qaxgbitvi!uL4no9-w
z5mFyXGXFyo2l-1p3{-YWGlR}>Pz1AOm_ci~A#D{|X5_WpF#m$`3(U<RHq4zMHq1Ss
zcn6&qstt}iE#?e%c7bRx+lcuDJG($JnEjWPLylcw1(-dF%|sOzzZ2O&@e9dQ6WKuV
z3&~Rx*%0wNkqs2Tkhq%!Dq^AK+hjIS9|R&kg$)s>Q`xlP;XjQHahJh#(6w_=y))Pl
zceTu9gY6@5VVI4?p34T>M+`B49vfo4(|k5iSpyMYz=pW*dm-C*xV?+m5OZ6L*>s@g
zzYD_>HYYfHDVrypy$p%H9ErV>Ed;J+6&vE*R0JF37Em}q+ND$3K<9Np+M?6gK;!?A
z_?^xMiffRYLFz%_18IxSWCNYu0TYLX11NrBZbN6o+yIJqSib;Puk8tg)N8gm3=BuW
zam~iCLXBPEJD4rR;Gxbgpb-wr<JTD*jA3cu8hB0|lE<%s=foj-{2F*p9FoVcf!Dc#
z%m?LhkY13RUBIicVR`%p(weuMjEMAbixH8>ZzG*wafcC+$L})2{O-bVkFg3KkM|it
z<1-Mu9x(2Ki$7#M3THoJMC9=&jIcZcIx7Rge#XcHkH_ao?3auZaPe1+pnL?e3&Muv
z@f(cT^Z0E>?0Nhyc#a;D$M1pX=pkv~K6s8EWIiYj!2An}Uzj^VY?wPiY?ymMajnA0
zz+eN8yElw0OxOi-!0fM#8m8<5Ens#%bA}_kz)mpxGINM4EPgM6%Wy~@zXUGBA$j}~
zQW<^;T!w?(=E8898B}pX*jJcAX&b`6id1f2V+N&Ri1>A8L>|Av47-QLh2bVMB9Gr<
zhWXcp;SLh}9y213-)BbT@dwPHFoKx>kQtH3A2B2H_+w^79)H4&$m36$5qbO>Gb|su
zFg!<Mzd&NYVn*cg*UYf|<-&kqgWLiN2S^^j#*E10*O?J{{06u@2e}!f9uz*1JbsIr
zntA*zIDWYqwz$FKmkZo3g5+N=aJvYSf4Pv_MO@%^5vV-?%D*7JAa}YjaD$>6S|;-#
zwTt+W+N=Cvy%6<+NO#r<A)R3^%#Z@lk0MC-&WJLU!NtXq`Wg}_?NV4f(1k&oVGCTn
zEYf~bIV83`(m0y}1LEvKMI^Q|5?cjn|2~8bY18uHXw!;=+g%|4g5nVrUJt`Tb+;@^
zn-+GzEhwMD+<?x01@#Lk|ANNQK!Zst3>pjz++lI24vsrW-c$$29VBn6BgLIMQuu2i
z#g`^heCZ;w^^n@M`bceBBcy(!F;YL#1gW2BiquauL%RRh9BFNU1yVcK5~)vNi?rX$
z4(Ut=dxp)>aByL8MCu#5F#LdvyCU`dA#9NdP?&3i;{wtK*238ahV{)s;rtJ3Cag|0
zj)2sO-)tEetRp~mpCZEo4_NpsfWse>cND<k56L?UNa3#l4u6n2ptJze3rZU<42no`
zp@cO4tc*1Ntb#OGu8K5Qu8uT6uEBuVSE$JVnn{D0uZ1)Ysf~1oh7MBy0(JZ!akrg5
zQd}4y%?leM_1}$<&dM-DiWhT+_s}qOVX$C8+<|U|G(KsKw2#b&Ar)SS+A=i4*$zm1
z#2k^%ig&_bL-L~%N`3^Dw~)J%b--x=a#ykr%3aBz^=yzkRn5V96LP1j1$ZviADn(H
zQPK>|U!Z&nb0>)119dYp8<dtNGBPmafzyl|gNYX`&A5Wo3?$FGg3}Bn&$=R|8CP(c
zfy5(dG#S=Laz{!h-bid8@QtYu^}a~y#Ge7tb_zgR3m1rVpF$+kSV0uhI-h8yb#5_8
zb3?I6=h(y{mC5l)V}J=r=dPq6jc=ziAodQVA&vQ@Be64(?*Ga}nkUUdx(6W}sZ2&5
z3(8|aoCllF-~f#m7ls0)d%z2k?kp%mx`U>e0dbCN2@<;uiCvDgW(>k^0;dyqa2kV@
zGae{u29ypV?Z7nfnlVWKE)8Wq<s<_G!$Pn*dEj|oNIJ|%Ip-PXFHjnTxf7iYTh9hc
zdwo#9!^*Lh&~hv<je%hsI87=u9Px&wNhNTagp^}S;4}#-$CQxLq!Ktyg3JMxV<5ed
z^ah$Sf~8Ltq<TaZsT@;7s#7$P)}d)3jbCXa)h{|oci8D7?eoPweuCKlVu)1l7$LPE
zjFHx)nINTG3#9$ORt!_%WtTP5c|kTv`+sd2mc!N9A?^RQM{0XGAdP!FG9bnioRQXK
zx*&~pyCTi?xG~&>o9~Wv$CC%ryq*`sOSl>hhSzYm55pHY+YjkJUw@=M!U0HY+X9j9
zcnU(g6C@nzUZ)78b!(AGcYj1Nq(Re|3qv$R2Amy>bf0(}(%Q>-h8DP*1f=<<M5Hq@
zk{Axa)g&X`-I;=P-bE_X-M(o^>u}PM?(fJzx;H!%X%BA}(%Bc;42;nE7tnohtZ;Td
zgD{+3fOM}%A<{kL5H@6unF_e>fSf<03eNkGa}rd+^GA?1c#!jFAoY|wO1=gSh(O8>
zfABsyP@V#{8)198L3tb$&JZ<;C~9D5iGb7~-`@?p4;@qvfbMrY56<tU3?F=9`Mm_3
z-ywBS2{^w)>Yx&&{9Xdi?;!Vp?!5&yRv_#$q<W_utR5m>gS76t7HOY;9nu{=^`Is!
zw7<}RH0IfeG|t(Cluw(H=F?k{+KR16^-CL4Tcrc(T(3@~eA<PyR;?SU4(dT#7u}0=
z|4tv$e*8&D?8!*$)}|okuc=6Do~JQ@`r42%LB01Dw#L$hVJ1T?Je|)%I<spw(wSXz
zkk0Iyi?ok^9@0Mg`3!Ava~3in_R%k5m<$(RjC8-`5{5Z&@nsB);q2uMh<$J?knYx5
ziL`cZ6~k$``qd1V;Ouos>*&@a-LnQ^L-I%&QXVNs$|L3AJn{lu_f>%BRUzrT5@n4O
zs1AkXqXv}p4?80il>R{&qGlS38dzL_<Y8_GvF||L56UAC85tPZBSCHZ%?wxkVR>W|
zQXbg^&LfbqtW8L19@H~|)qPu#>b|W=b>DWRx^D+ke`+Vvy4GDt>st39&BN|Rst5NW
z-Fv$qDNjMzkZ|6D6wX_b!g(t=oIz<4RJMT191t564zROcLE!+~dje}SfYiX)@{y2!
zkdZh8gC01n*cdbd*af1%>{qNF>(~X5)ptYH?=NIvm<CqE#^4deA#e!HHevJ#<q&ue
zW`{9agmVZ;MS;RUlF=iaL%;*fj%Vx$=MX3bvx^vKL~sa90JBROS440K>;bcD895?3
z1YUyKGZ<$?aR@L)gUp%DxFU)}zyQpi&v+t=1I2AI(V)H|s6=C6SQ8EL7l?=K{#{6F
zauczuDNO{~WzXOd%^?6X2Xsat$ej65^)@C93@Z~6c6|V=cVl4L$RQw@1eza#^abRg
zY|!{QNH3^;1yTcYj|;dL2TNn_Na^Y%6XI@&(@cnUN@tlsy?lt?^Gqi2_P|9ZP)`CP
zeu)WjM&)HD#CYiyB=%J#_BAHNI2(kmnZ&^0z~IUN8tgNJvO(#}F^PdejlrEkBMB1b
zp!5cEXBJq^X(mu!2Dt$w4svs85-5DmGl9m$VB#=0gVHC=ZRl*6dqC;74eCc&TCGn4
z#Y+oA&qfY`Dd4be2Iu7^P&O!>L9=_Ha0aOX+3Nys5yHZ`6{(KvL0SXW%ODT6%Y~s2
zX${ykq&z#F!5^+>2GSminGA^i+Ov@AzS&6a)j3G}Ddr;ev*s~0z|EWwUS$t)^8%zf
z_l4lOKZy7=B=#bt`S-<0YtNP-)q_is+NH~o+NCRy)}F0oK-}4}3Td8w4TChaEOlX6
zi?n}d9fKKMd_B?~a~qKEnA^zU3s<uVX<yG~r2g6#q;qDrG9<#)Z$mnBW;@bZZEKL&
zJCM$8+lf>U?m}AQv>WM;xjjf{vh8D72e)fK(*5!W84!ED4>5q&KSRR&2-3Nf#~8Ta
zZO9Wy>!40D$ic-=F{q-kw}JCQE4U0l0A{x_9QgnL|2;6fong=a|Nmct*&Pf!{{R2~
z3(W3h*z*7Xf5;xCE`|+A^M;_j25ECnXIPIU4ojb)JO!Hng{WDJq6T(G5J*ivG#o%|
zn43ZQ4s_=!YceRWoo6_(nL|J{8C0g70p~RZF#9aH-ZY1@L34sZVD>q1+cFc%2A$Lk
z2}95gF|a&%0lXRlB7PC6&b@>*_H_lR&v+GS?e{gL@#O1BcbeZo8e6`}Pzlddw~_M5
z9i;V3caiRMypNQ39w3cNJVatYLRy#dn1Kx%ZY~T@8F=CBXGrHVJ!g=Ii@#t{hqGTI
zo$vaJ!5l9B8tKmQH%Rx4zei$!K*|>%k=l@-8Oq@1d|_yYv%ey(1N@G3hT%_!sc<#F
z7#6|Vzmd*^{fCrC{v(}L$jFH3$1yP;gX?8xybNcvFy4Z**%)Da4O|%584>rAb1)+M
zWn7GiJjIQ4W&#hR6g(dZFlxiuf=Fy3M%ekBp!<&k;c7$~5$7q1F($ypB^VKREJ`BX
zWh2E{2UjD_2wT_Z!XV3txVv1AaXVa%JR{<cT?NMdaB)RO#J!3Vj5pxo%8Ym6Y*nOt
zZPXYM=N76nBF;w8VEhYLugS;^KPy0sQ2@@?W)z3Bbs1szbh|L<A+e2-*d~miJHjCO
z&Xf^xKcgAa-8bfpj&L(A7(sV@L)2R`#=ym`7>nU-8^&5V+ZKs!$A~!V$)0fmT#W<c
zGC13j5ph4GGvh9}xC<lVPDWS8lW=i&M#TBC9*hs*;+~AKb5>m#ycplY#eEpx!`Z%!
za`1Bo{1{c>Y=1@#I6DC8j0JZ_#C<nGjGk~cAxP&fgffQ1#lsk5;p}k6WH>v5F%!;?
zWGsWTqZn)9>=>lGZ(@<yag1$nHSvsybE2$~*ojDIG9)3fQy5pl^=30Nz|RxNVN`&#
za~aj(>^w$oIJ*#uUBsvkzn7$#(GboqVYGv@OBuc3>@vn+IJ=xN63(t-jEA$U84-8+
z)i5IN@~dTRg{!G&?0~Zy7!mjMH8O64i#IXufU}z!Pr%t#NO$wKGTwxXw=>>@vpX1{
z!`YpTZ{h4N#?NqeH{(w@yN409AO?~bdKq~+V0BqPqXe8i0f{{ci9MOo60T+nqdlBG
zl@YX-3S#Co#!$HUbjBDsdnRKXoIQ&%1<sz$SO{m&VXT0&=P`o%vJf-pGj_nm7c)+Q
zvzIWgfU}n}Zh^CxG46!3mopxOvsW;lgtJ#NUWBt(G2Vo;S2I3<v)5p->yklzfeYaF
z56EqxJ_2Y(WCvLMCb&Nf6NlB^pf(BUeBkL|HP66mmVnvM!F}G1VD<~}xcWXY`z3g6
z;S8Al3T3PSw3fq$6Xb?B;B%XAfz`YPp9ckT!#k97O}!Wy7+!$Y2rz=$X^^oCK}JwJ
z4dzZzeZ-mqGE;;R)Mk?evqc#}Z8kkHTZ|FZW|QLusS#&f^Z);UXRx?9;|ioU8?4R(
z`4?7(!`Wc<#whARY7)WXHjE4Y|NmbHX4^8(`~Uxc514JoI0wmmQ27jTr!&|M5O=zO
z-3D=|E7;8tce;W70&%Asihp6{GstbQyShMZSh)mZgYN2@4t7Hdiko3&5l9WVoB^vT
zL{S40UjY^`2D@_;m|X&PC&c}wV0S{?Uj}w3#Qo)9cS6?ER4~qfhjS(46r^x~m0ch=
z!163Q8<rP9;;{6L%m%fMUvMxm>`4K&jn^}-*aK@DuLG}@0;LTX@NL$x@?itgIUyUt
zYp5V<HZe-W+o+ov5q(bx8<Jl(fY0{;sR!j3P#+w`2Dt~O9^@WSfA<pDJv$iBz}>SQ
z?4GA7pmzIqu)SZPY*1SrWR44XS1rt)JCWSE3#=ZZW)Gtd+?{)o?h@M12wKw%QFDM1
zv7YA;()~e)8DVFMxG)@LM9e`SL%OH(1S9O83l|0m8{+q!IQ<S&5Ar)`uNg}!C@usU
zV)nwuUIf7X6v)_%0Jxt58+!q%fw&p83JvCWA+Q>VIAo3t!d5|A>!N|Q)>?}p4jv{t
zNc|2yr2e}B(tMK<(mnDfNaNLJNb6NBkoJ68Gr;zEx-i%<{D<3RhjcE7J<|CG5H@7o
zMgX)0fdMjZBf!AKz`!7p3L3W&V$ewB5O7EZjqNCb$96z|1f?s`m<fmtN>{KmJwRa#
zJJSQSey4UH2PoNqhQLPgFb#ps<ovucy<`S`eP{jRqGbJ?%p|aouA!bWSb#xKA1t7k
z%#fK^VpXDHpkt_MTLh-84GfG7;K16zz|b5HtQnFs5{tm<jUeicG_4J+4UNpL8FKRT
z(iLE)8AD_ZHSwEPnpd2eo|l>e*JpyH5AFs718V~VW4I$=c425XB|$TaYt0ZE4Uud`
zFs%&`wj;5io(7wR;Tm&<p$LOOUO@^^6tjvm@{3B~Az=a0ZlP(dYiwk0W?>B?&8-<A
zsxWM`gebQJMTeQGsj;aw12kyiF=l80QDbPJX{~E$WC4jbxJd|gu%rNrJ!>OVQ)`B_
zocu&+GJ(dsp{BKowShH5N`7flPAWJ>7$PFw0we_v7G!xu<Qf`*6eQ>87UZN>z`bl}
zs%cwnQIwjPV+Br$ItDt%M%J0RiRn<ju@OkXngON}$yu-{G=sVerUco3Sd5r!T7w-3
zQ-k49XxJNCXj(&DT9%)g0`a4zrY*>AmYNKDdit4p$vLGdsnEQX!2ru=@u09W1Z61=
zLmeYcTP>&-eSLR*cV}l^BRxw~JtJL1eJ4*peLX!;{?t!TPS(xIOw!LZwlLGp&CE+L
zH#W*GE=$&jC<ZCh(}R*2YG4j2E=fsAP1DO@C@3jP$xKTFJH!a=5Ks<hD9)@(g^C%0
zJz}ECP!5WCsGu=e&{C73JTtEZDrN!}Gtp#Vpt<u?i;D8{^)hI0Q9L++>0wiGNlH#;
zl3oTwN@f{2Kuy81VG2qX#TJF7`6bY_4NmJtsku-tEUD)p^noJBRL2CAM_~GlH6eKf
zs?S(c2d0naaaCMWl$n>Vm%)&npO=;iWt62Bm82FG>t!$$mn4=zlA0kX<$*Gdi6%%b
zBoqt{Kmnj(XrN;Z${vOWAb(X9gX*pL;*z4$<Ps}}+@zBH^5pom(!Atis}PV{Q2Ag|
zQBe^Ok+K4bnL+iNYucuPvKcf)tQpFaOY(D*khNQYf)1n|A_dlN3DpiN9Fg^dloh2G
zr<Q<K85+Wr8NscAg*398!L9_wkg-{2W?o8a1vECnk(&we3CPi=u!zb8hZDpOO&v26
zQ2CaRtkcpAEQHW%p{ZkNWT9hbVx6CslbBu%wZYI5TsG#Tm}g`JHn5~9F|Rl$vm~`B
zu_P6$-pCYeur)(sadKv+UIv7Q1uP^az|mz@0CKRACPP7aGKdW>)<6ZCi6%oaL;zO8
z8EP`*SrvdIfgu@ekD(^iTxf_x%`JlH14q4qj-er_5CUs7(PStsNwd()08?nLL2>}X
zW{5%@#xo@6m*zn;7(;1tu@T7N<YFT<gOS6Gp&aaTkV8NUQ4Izek(3HGBq<fm7>H~<
zrj{I-mK<zaa#At1m_Y0>!L-2yi(;6QOt3i#B#7Z86PS}susI1Nh^D0^&Cm?wCJ>G0
zsPbeZP+WsT3@nSPvpm@lSr+0{kUC7aLPb&amx4qgu7$ABY=_FDhe}DBIk?O%N=+__
zFG)<Y3f3?J*Mo_$My|D?sWm968fr3Bq-3J2W2i_<EKW5uLDmaOYUXIxLsX$8pzPd4
zaJDzmWXOhk9ij@J7)>-8GNCf1C28hpZqEegGf;sDu@F)UL30kW8KCr*nOBlpl$V$T
zikswOBN!LWmB=d5Yy(LZmnRk!q^3a4fb!6c0DH+&6P$}+D$rsox!43|Kg1|F7tO3v
zB$b%XF@YKnH3P~+GXm@!P?Ae7hN(w0DJ!uoQ7?l5M4{;ghrOXDL<-dpnZ@}Q7N(Z*
zhI$zca5lPjm>M(-Vd_DJ44fTrRGOCwN_>`}Y9EpKEWwG-QWI_qdYObUp&&6m)xZE^
zhLNT%!VDuLV^|7CQ*8uMZH%ni*bq}OcF!9ldEOYs18~<GqlF2i&_wc%aXj4F#^CxN
z;cST4L4`id)lkKTR>2y^;C2B*v7w<Qy0f9GL4Gs_Hy;qH%`w$t_adl#h1qU`-HYgD
zFG4xoXGWGfMu-?Rfp{6@E+b1FV`K^Jjxa?EXH)EsFhvVzm?KOfc7am`s91wX3{=7d
z5|oArN0{PBt)NmJW~v!>N0{Mogc&YJKqbsTjxa_|_vRSUX@<jLpz<5$Fmvn<LobXG
z%8{c8DJIMzE;fca3?6I{2_ww##3-DhnIF_dfmvsP-E|f?g3SWr2#{UI;LZRd{aRoo
zV5nkKScZnX7$Ski#TGci(-JAQS;AawY=#;=CSV63<zq`6p0Gsngc+zQkMIP<4CMR`
zRSeGGW}pT?La{kUsbq=6{e}ie9xyb3`M?NNu);&d&;W;f4Gj<uM$NW{2DmIlE(Z;9
z6oiK8B_S+P7($CFP&A`i2$2Ct9k>8PxZW6-Q;^FmLmUN`A+8e35Lz;UoB}S45f(ya
z4C6s^sHGN6mtj08-oT9~bbW@YV134*C_t*042{8+8*&PO8fKUZHVn<z=uKL95F!_l
zhVT;71g$=SRBT9T)(}^zX$UPHv3M3L1M;ddC_N**imTuRw};_Q#Zhz`;wn20p=Bi0
zDM-}_Oa@espam2}54MDZUWjJrXIjJ;>18lL7_iJ@0;(&JW6B7Y-=XTD{c31q6DkNV
zOu@w!%t){(xSjzOV#uOKV5fr$eiTt~sSB#GQA9x{n~4!>31Vmlb`~fBL7jkFfr14~
zVZJLx@g2nQQnX?Kq61L`Ao-*eA`0?}3CPXJ!D9+9osbMb_a4LmBQ)<pMd99qxeJR=
zir`);!seGEtez=?SO9JqBKZa;4EGMiUZ^m-(_zABZifk@IlibAt$0c<Ff=j+70VC?
zYCJ&2P*W6C5S(@pNgr7hly)Em5t1k*$%FGHR1`HB!GfSRJA{G7A%<uP0;&+%A;y{v
z$fAf4L=r`Jh#|HR0d)YtdW_%>0To#g)6v`cP=#QJKuaH(LyRCP6D>p_qUa7W!sZZA
z1qL=BUU`8F0Ek1-D=w%)utT6x19J$Z!ZHA-5>OU_830m??hy1U3~Vf@`hqaPAp))h
zz{NPkBuIr85Avu9dR+ppN-UvK162re2v{LZJC;NSt=T|6ffVRa`$29t00p!OsPT@R
z*&$^isL(-H3UU-udW0B@?rHQI3~T_X_JT0Lp0*0sKni{IDhjF)>^iWU!G$WaD4Ii{
z6&5Iq8iU$Ykf4Bwf}LjyN^?m5GX;kv+<WNN8rUjOX8^*$;$-xy45|>}WRQgrXFw_{
za4;h|4k`-j7MOxZ5fRNmBLjGek7O*uA24If!DG5s(E16i6x2_EFtE58y@vo*2zN82
zWri$@7R*Q;1Egex-YWnb0O}Gz7+4&F-Wh-@ggXRMgd>ZB(x@pYw;{!$p#i+dkE|5U
z&5*7EIJ=q}qt>j(@a`9qesC}&`3}7Ykz8N_E#)mt;q7i%S_TQBXFre_!e`KA0TVO=
zC0THd&j2<Uqu{bIgCs)>GkBxQ6qFl~!U58Y1eXdRRT%c0L6aINCz*n$T9A?&QV@bP
zgB=Pg>>*9#<N}x=q_PAzSdau!TyKWn?#fL}jxWm3P0Z8FV1TnxlLJB+)!7Jfu!}%W
zhqwq$0-i3AECB03qykhO;OGUH2535rKt@5Dm}ojcMuF2FnvOKkI4Zgh)I13?DLFN-
zq$n{bwX`U|05tTCA%+<uC|c0!YE125|AImYl7F!)0Q(z~tZ^s+c@t8$<5B>wsSqAU
zbtR_9Gm}$u67xU<sUQQPJWS8RBrp>IOa|^jL=r%e0>vC6f>5MTJ%ua<4iH2_K#>9&
zi0~(h6v#kKyD&YUT$G<!k_k`xFfOL|;WC*1hfBc&z!a@PV1yW60EIEC29Q&cA{6Q%
za5D<c^C<ezG6Jd`$V`Oy;c}S%2j}}t(3msGVNf2X?_m;{o`=bx`W=x4GZVo+F#x#;
z;Y(y)Xr4roLXBY*DUg8(FT$iSeVANXl$n#0nG7x5U|dW;!euZ$373NV65$n8IYgNZ
z3QrU{h(AFEJ2-Su<v<<<7y4M_P<;y5hw0VQ?4rcXJXqlc<zadhCV}Zsm<$$gqDX;!
z3GR1-U5hM*=1CMOR6n9fp?VP}h3UieqSVxEXiS3Hn7)GuWBLsu4)+<Nj6#wCwb6}1
z%@?r05E2kyftn@g5+H{o(gH*Wrn5^*i?TC|GoTKK@-UqalfZO5Oa_bdQKUdY4DKU<
z-H9TF>QZDWG~b~}feb_xu_#g?0}&YzCWYzwjMSu})N-ibAskGvL&Y(D4wb;-aby`#
z1IG-ly=4Y(Gl8-ql4^*5;TaK02HaFYR5nl<OfMxCB__d36bJ{?OHgr4FF_@+cnMhs
z-s1pAB~%8}DJ2<+poI`1FM^nu&H#&IIsz;VcLE{_Bg9id6As{ZFx+sEdT{7rQJ-c3
zAMS^%M|EyS0i>A;>T|%^Fb6}1#1X=%E=GuhoB$a=0y_;&0+d`K@rNb>N~{n^BP38=
zmzP>mQe2W+pqIe_W5V19={CScQJn@CMspdeIM`v}k_A;9;Vu+$a3DiGf+7x1ppg6s
z7f1C*Vo@$=ZA?5Ukl}2YM<9WW5JvS0LLBZD$Ot;R1h|0-2~9L9P(Fl|tf&$Y|A4a`
zLITy{>8bfe>6wXn@rlWaDXF=YdKnDpLNISYMqw~yQGJ6UjqntBq7%D3D4rm_f9&#z
z_`)g=_9vwIjv<f3y9J<yXK=*@#b8f@Lm17QFe#7|%+bcgjV(Zv$d;OjAS)<F>yRK@
zfh#BqiXn|PETI6C0@)6UdUOK~L46x=-yOvjAiJ;yOF=POCpxz@Cp9M#w2~6a0*3^o
zP%+eGfC-|;GE5X?ivd!J1u+ZFhU5Z6Lu2UpqM<Qld=VVd<|e2!ijb-U+*JqZ06PRR
z(gzyX0cl5d3B+(n_<=$Kl68<p5zd2(qNa$F%wjVm(7-f=ffjvGK~yct1s3LzVM+^g
z$S@<)fE`E(-H9MEw4ef;0d_VxmLQE#h#;zEWtpIYMK6N^!hi${D5XHsDY7Uikw6Mf
zs3@vCpn_nBfPxC#U4j`45;a5w6;v&%Q%aJ{K!X(^3f&n9F@z()VyI343xTWx*Cpl_
zsPS(E8LI(}J0cW<8i$bN4HrXlCs+*CmBFRCxrs%UhGteJpw)<=mF8d?wA9ihGcN_a
z9LN&1^wZGHy0kbo1+=`%Qd7s!Ovlj7+8Q*QXJ%p+p9QLtGK=#eY_w#75J$B;E3>%5
zz{mhJy#QmP>4Xbo)d;FSpei6M1t2K|6x|kR!=Pps;PE+2O$JO2#-Ql6052y;3}%@b
zTY?8pk#(TP4rKWqDEJ}E^gt|x;h?48pf#?+8Wx7A6Z2*k=CFbguDmoa(+CvUU=M&}
z+rkjEZWrMm(3(2XdS7ECAE4?2MZJZgjw$leBqKv>aBSk#1<p<uhB{`*x=bty=>k=u
z7KS?J$hwS-2<U=^vk5LQn1FJWg`tiGvayE724(~dPD`@_2eT!LJ`+q`sHvzJlJu=W
zF$7wqtOW}yL^6jgwuPqwL(l{iB+?8aQ&8Xt1CM7~pw)I32GH6Li+WJA*#doP7P3SI
z$u3B#0m}bImLLxrp{64va}%64K!Vx`H3^wo7+|;wHAy3!ij;hfP?MCIfteY)y{HKh
zoSlqNlav{Hk}@=kN6`fyDY7s^OHyc2h^`5dV4&IB5Ph}|EskNuRWhh#h89c7d1!?W
zLL4={q$e2}gHr&6ffPO95(lk%wlIbTHo9_1<d~q&ADEd#rshG-Bd|Saj)ED26fq{K
z>A~E@1ePG6icta>QmTNWg#nv1q#!UsO)-X`1OqK~uxWz%1f|R|Mr1r}dLVITf|@)G
zjm!|G2R2=n;G)3<EqNdc25fo|#RAO7sPUOuoS#`_Xa<^1gfUYqN+4^Yz!IqyB}kDB
z8lks9U)2Rl*9JO}B{G<L%o9QR7NiH1@Zj>OnGVVBcq63f1x?B$&CFPsgQpqMtilq-
zpgBt<eV|1=&?rQ<2~{Jw?l41(d_>)WQzN)-VPS?^LV%`w3E2oqIcBJ-z!;w0aaw2$
zYA{)VyoeH_D87NDFf-J&Vh&nyLdaF-;8bRYS^*gwBa$XgcUgi)8!gOq(5fI}bVBU}
z)j){q-UyM2aM}q;-)5j)9!T+xT_g6Ck5<MMf%fEpM=X*`)2uWs(8j9ZOLkx`LhHG}
zG@&e|1{Z>$rcrtlXiPLcDLb{I1k~b#vJe@}0$hrsHFC`iAgx?*u?W_R=4Oa7pn4g~
zLKv6`8tkz^o8_=Df-H=L8;HJa1Y%5lW?mVna}Rbdh=ZIpEkR*~6y$~`#)d}FIuW5A
zwSEK7Em)$j!A7KbT>8M}vL$G)6v;vpBJ_cpXqKS84oLb8kqb;vXo7u)l6fE*6V&)*
zz~v-x9<($-%k+o}9+y5yz63Sza2lNkYUo%RpcV^;7VvTbm(gjUOk`<*n&m+iFf_*_
z=|jy4$px0iW{^@J#zaa$pmv%iT2BJhqz0GxSk!|OoF!UE0#<6nm7|vaaA8n854^4e
zw*Cg<FmMACl6cVi5s*C!;Ql|7Qb<UElrq4LM)h)fQZ`y1f@EBC)b1rbw}aH9ngCOe
zlF{Mnlk<uV4b4ozLl{sdc-IF^Jl+ry!r)e)C1}VIDV3U7!uo31w3vWu087v`2a*<0
z5e<nHxQz%)Oh9F`r7>!2$<zeYwn5i}7B?`%K*bB(EyxXjP?2Sc*6=eo1NEO!O-3(d
z;D(`u5_GT!loB8TgH`~W8JfVF-UtKG;u0<aDZr4qC`A~kQGyhJhUO-ag+ie81oL)g
zUKv^;25#De3kMW~QA!X<Vnu7c7$Nd7Zk>p-jscG%aBPBF07%X^Migwgb%KjFOSD#w
z8KRYgTPIS<g<BCM=Yh%~RM(^C9k_l};iSxTP&*VvArfvPIC-JvOEW_waGh$Y$$+Xl
z8C-UnqjoFI%|PuQaAE|jMor*gA*42^r8#OQF*G(efK_Z@wWtw|NDWvd!P(RtwMl7g
z4ll_ubs)t)7D;%lLwt?m5Jbdckwl6+Ok>kP4RlL$)T+z?k0Zg63?BJ_ScMvk*~Q7G
zX5jHGC<_snkPMC1x-m2~gmu|4G(bFMff}7g#_+NQLxTy}FBYgVXkq~$R)A?hO#(1c
z<WyjR8fzBN?QoWw3^3Iw!H?9l#3~PoSPRrZHUuRsXzh$u7sUUd+=|^+aJ*VtpfweY
z4NT#&ht=4`WUF8eOAFMNf*EM651(UT?Gn(=Q%D@67L1UlxFM(`2(uM6Wn|@NBqqgY
zB<7`;f_9W<CFbVGXXa&=WG3c7CJ#U(bRfap)D#S{w9GtoWniKBy!;ZZhCl`5A=}-9
zH7wB@!Js~&fsUa8Xs2dwemulZRMiY%Cqk@2F@^!zD`=GuSPC>iYyv8rN{R~-i%MXd
zl#?<ceAt#|7~dGG9&8C%F=%fcXoo*oC5!`B2Hskln-5__IS^G)4n#kQgB0H2CX_L_
zEJa(HYziw$!Jb74HBieqwWt`}t^`fRAyqb@_9&<!4+$dVz(dt!f;=1vDYT8CA&wNT
zsCrOFQa~MPh(*Z0K}}eQU<2)ah6fvr0}d(^O@@-(0%$mc;|Q7(<5N;WC$;1kr@|Kg
zLeCE{)MNlR@+>XU@)xL=1M1B|QZm%Y0xJzeP%D`swKN$r698eLr4F!(h6d=JCzz4R
zV7Gz{hbzS1z=Rr(8V+zhC|h&kjnd+*Owbf2h(dE!F+9x_!;=yu(Sn>(0vCf?0P-ht
zT7bD8Y%*3Sq4fvgP69R0!41m-OJgHM7X-vaR2vrNR>2yE252p0ORyoJrW#Z)LPKf_
zR0B%b8N&yUz_y|cY=P@QkQFE)XAG}5;5tw%4!AH<%>gn6CDogl!W*nGm!ec1;93zp
zegy8Vfc=iD095aTj77;9h-L)b6)3vEbq7cn%CrVjOAo7KApKfU!xe{Pz*P>&Sd@7W
zaC;0|d0=;rDJT-beRv!On}Ws`K?bADe3&4rG92cD<~=~#P)40hObG>#IV_E!jyahi
zMys&fX8{@}#ODtSPzM;~Ake8Uh`}sF1EkhJ)}XfpH6_6sQIf3@QiBn@lVBCI8E791
zBp>0dnc*g&W>c^*TA={V>}XRu;9LhP6(Cwrje%=H@c~>*W^ulefsqlUctmi}>_w8m
zYC2k16N~BbD2G}g%mWR%A@Ok9Ylv-7&(Hv^CyK>lLtHk4$~c70=sjWZ0UzKZ7<B3l
z=x8Hwi3@5#fW{ypXV@TXFGty^0u6Qa-Yl$CM%IWDFrYdFJP8D0paloiRJ5KK+|y7!
zSY3kF|AOmDPA!gy41q#fXjZ~Ru^NirZ9w-P*e5W*V$5fOgBV=7f?5U8beNonJ)+TC
zis0TKD9Iz4juMavaYz-0;Kze%8Pqxh>=F}bs{u_VHjjf!Rg^{)rpLjyptvZbN-u*U
zqY5p2Gpexq7u;^aR-b27p{8e0oR@$Wh(Z`>rb7~pA<psw>}OCg!WCjKC7_054GZ+?
zUszaxQVytR3py|?wKyKcL~|WX1@;g?Yg-^vY=I?obCRX00VHyhK|-Kt1)aSDZdQZK
zUqeH*;=u&gu7+zsO$Tsc<hBFY5KsjPwhgru2XAcxS%VU6h#_aVfhf%YQ&4qe0q#QL
zPyp&OgI8MMu-6P+FBzJmcB)b8Wh|~W2iXg9ElOJmr4GcV3)C|O=|XAh7$Qa^u=@d0
z=Ng)#HPlh+axAu4g2rdi!Ui?jfvrPNNuUIPJsIJunm|c98?<2_!ay?+njdhL-%vfM
z4uk7KNesy8)&z7UM`=bfc-$FGLmJ4riJ5ueWDA~a0xzgzK#~Rxyn<y64be(mQ!~Wb
zIuH%03A!l199pU+=Yx;f1RbCRvL8O?8V|A?)HF9l8`6PK+C$7m$q^t|KplvZu)%{E
zAV;D!*-cClNep5bYPf;KK$S6=Mhg(|P@|zCTImn(H6UpL1rl5}N(>kq8i6M}K;;}n
z18N{a#9$so1PEI9+61;b3ROKg>_Gi@aDbq#9!ZAeI7`%lD<e?<9#n@IYeF@l21s&&
zr3v~mEYQS-tLlenK{W=h1tm1#=@H!F2A!7$?!==82}G+At}ZcHE7t601R58>R&RmN
z<U^|G!C4Ph)n*r=Wj`bdY<@Dr)!RkVhf?<@XJyBiB^G5S=9PfD+sIr{{DGI7BD>ni
z0Mx<<4^Jbj1r0@2KsBHQs*!;ur0;8?$pAZhQ7;3|j891{0Tt<nMrf6qxhZ^~1xy>b
z8~_hpf>fj00@(?NWCuhssK^8<M#**HRf3pG!Ao{Qic#tS$iN%AYVaxwkXqD|A9C0W
zreg3SUyyQRL?D122p(t!NuYFlv3myG^9HF!?aM-@-q7s?FK`1X#<0;S9@HlUNuhLI
zL8}!FbTEto%}ImQqV!iG>zFMx8B+6-^HVbO(yc-?40MbPG;NCw%}`JF1RwU9k8)zC
zu@T0Bosfe)t>NYs>!qZoF(^QcHPp0CP0fr4pUr7ypp%*z4>}gp$`H&-E;h0<g0YfP
zt&CypoK!0lDBHx!6vj$QwK9XTb5gC$!EDf3idGhIW>Tt^C7hF!YGnws)7;7sZYk_=
zKPyAH?a;&dtPEjpfFJp1We9f)ToKqwpac1=48bmfpPpl72zC{WZ)9Z%b{dRtY-I>`
z9gJ^cWdwE~jBjdX1a>5hZ)Rl#b|H*!Ze;{^AB=BdWdwE{jBjaW1a=yXZ)jj;gz7+J
zD<c#a8k$%cp*Ydd)XE6OjfQ4c#$ZQ+PmU?FG6uU4%qg`p20IVTDJr!x20ISCA>Y8t
z80<1I$I!|c>?|<H$jTV(BrwO=${6e%FvrBo80-`<$JELg><lo+%*q7p1Te?k$^`5L
zFvr5m1ndOx4ty&Ur~@p_%&bhn_Jg(^f%k!0nSh-D;-hSSwlV>`1|$yMENo>0b`nSg
zwn^5?1ne-75ZJKHL@N`p>p&u~&6ifDU^jw<pqmw~Ou-HXiGX(jTA6~~3gSbz##xzy
zT?`U|Y%H@fg*zLvz01lJ?rzXFEGtv6bKx77tW3d<g>C$?G6g#nzMsa*6zoj+whZV#
z8Y?rfQ{ln|#a3nzr$Y8fSebzx3fYoiWd?R5WV3;l8Q6W`y#Q8bV5dP=<6D`59R^zR
zZe<2`6Lei?R)Lin*in$xt_FryW?(l#xfWLDV7EZHhDKKAV2408C+At2gPj6daA;)?
zb_#4kl$ANyG0-U>D|4`OKyBEp0xNT{b3ntyR_0*mfCrJR%)w59)u$kJV8<W?46Q7{
z?m>tcSy_Oc1Tr`|&&mSq9#9`IJt^DD0_Gs_XcI^p>?D}(<UCM^*~$X!vWzM#3$Uv|
zCY6+1SwP$c?L=BxfSm^J23T2uT?JB?U1Vhmb`ZEJWMv6<3b>(SWeIi(%qoyVuw&Bl
zi{g`t^0QO(;z6?wnK`LN#qlK>i6!wV`FSPrIhon1@g+rxnK_wx=^z!kiN#iyCOV+A
z@e|WQ&4|RDoOoE}P;3<psvS`3Yh7?#%g8{JAu%U2u{af?Co>UzwzUzsDOYTfmzbMs
zrD13U9-sl8vTOv})L?964Ko?k=ztt6Z2~((+8SnHd`^CTc4>i?8`uEw>B=CJ3^f^w
zOTbemU}G6_QX!`_gNL$;tct*@jWogHpwn?pG#SeCi&Anji%YD+z>+Af10zH5kT2N9
z4B4rbRv<kfJ7Dfc9D|=<keUZ_jgFxvLrH#eeo89n;Ae;{(u(qPQALtdz~^8aLuYji
zbc|4%Fd$n&?Ma4Y&`b`*kR<SYk&y}LbZ)R*B2>;;6YdHtHx1Atc81L46p-y8w`Asl
znzW#ks*OxRT0x-%I)W`Psj?)sI43o&1biB`5%_Fzu;%>I61Wy~kQM_SBNI&qkTALy
z2B<%bz|!yodkr-iic*V9b4skB&dDn%DFRPPfo%p`3X#b#ErCfHgUvva%gjSI5ac9K
zIzwsIfCs}sBa?~A*`)>X;L$8_z=EdBAY!OCB*6udEGjNdiq9`CLADLF^#jy@1epUF
z^)y0hB7xJli6#TIX$?|psmYL&SPX9MTWT^CmnIdLWR{dd4j~5}2M>xZ(99D<UMcwC
zdlN*o#V6;0X8hbhXEY;3lS^`}ph88dg{7&*keC9UGhUQlnwy#j;)6|uX0rH<#NrI_
zyrBu`Eb`*~__D;D($r$BFbxA8V*})IJJ2mA8sJubMp<GGELji5D`NE0GILTH7#I{7
z7#RNjXJANYOiRoL2_Sg}RMLRBpnIr6_d_!?B!Zi)4B*>Zp&}qf#S9D{3=H6VhL{-=
z^YV*QiWwLp;39dTi=Y`87!nX7h9Gkp7(lmIL(IuDf{0Wg)EGlVK(|6e)Z`?BZi<J9
zGJ@6Vm84dbFhFbvi+~7-0ywD$>Pta+pc|5yv8hQaE`};$`2U}Q0jru+gh62UFiv4$
z0N*7A)5*Y~SCpEQpA6x%f?UX$BM0H3k}Oaz$SI(kz8DyUF+^11A_@#lAcasqjEYYz
zNv+5%VQ^poUE-|3z{CIx4Uh_u24+TBtbjxym};Q`O+TP}P9f<Bc3Tj{9vBJoDaaKd
z_aJ<VDq;<fK?STK4>HS>fq?-O(~JxX;B>|SzL6Ug0|*h&-BqAF=@24?3=9kpSRvs9
ziZccV(0$`m*pNlKL26J$W`XhrJF=RUpwx>ZvV(zvVF8NBagaGEB3Bp~7`|{IoAZ!?
zfgyksS>yu)1H%Rs5zq}_EL_NH_!t=&5>P~B85tP1ponNQGB8B&AnUSZWMG)Xi!9>F
z$iOgx4_PFVk%1wHA6X<5WS0Q4NF^f!gOwmign<DPgRP7V3|=TAlNcEoqEJNUgG>gC
zz~XBSC<%yy%z=sQWMp7Skwg|b%E-XrAcZUfx?4C0MdUpr1H%Fo5oRU^hC3)C;!F$-
z3ew2t=rA!b_@Ib5GBGfepooNm%s~;!WMW`&kwG@63}lWhvPd&XL=IVGDiZ?(DBmN}
z;c_Mhh818nurLJOEu0~btm`Bb1H%ch2u#gwkS+y~8kopikQ%TEEDZlMF)(B(BCFwN
zW?;}z0*S!XC^9oJtN@F^%rRzWVBk;&sey^OGBYqVpooMsGca_3MPTM+GBYrEs37aA
z1ev1>5`n4dW@cc>0E@s(o(s~Y22ukPSr1YJ7J=zH2r@?<S<OXe28I)05ty3C%nS@X
z8pvwCf_#c1!p_3L&;b^K>5^n&VDQjH)}_h9z`&se5`n3)W?^8+0*k<0=nFCjMI@eu
zf#C*N1g5JHq(&QL4op`g$Sxg_2u#gn76yhBU=f&_r7R2#FHl6bvoJ7N=z?^?)SLvF
z0~Udqa~tGlJ!CbnK_-JmU~2w?bm=3j;b&!FSb-v<$jZQQ0!74_m4V>~SOjK{D@d0C
zvN@rw3=ABGAQ70FbXEq246q2y&6OZsC?egg3=AK@A~0QZSs55Qj6mkVbgg4$VDK;o
ziNMqx1epUCfvLFy(q)3I<~b_^1BWR{1g7Q($X{R)m^s{R3=A4($ZF)+7#KLrkwpyI
z7#IY=A~0PpYzz!5z#=e{L)jP@GAuy4U}`eh7#L1~MPO>GL3UY!)WAe0urV-rpolC5
znS&y-i;aQd1B%FbHU@?tU=f&Ik3c3{Bb)pgWDZyariP83f#C#L1ZKM=I|IWD6cHVE
z1_lWmkU212_8>K25tyz3b_RwOw#aId*%=r(>_8$gHDw@OC?cKg3=AJoMCPzFF#G_E
z!0cKN(q)fq&K{7614sm><}^D4gNGwX1ZLMQkb6)>UV_}?gskQVI|D-miU>Og149Oi
zh!_V0gMc$g7tAhI4h9Ad7mx_dE+deLD@X*U#*u@8p#v-eQxm|!!0-Y^Bp#&34WtXE
zCXa)G;RcFGEl3xNNDl`C!vuGbE|^`jIT#pLcz{G;=BxyXc!ES=YCv~2b9jM7U}`|O
zG-sfQfbM7J@J3eil7oRE0!8E}D11;vI5`;@1bjfcV0KAzGB9ZPf<$0;sewfNKq4?T
zrko56E5IT!H7=YC3?2R;H87E2kQx+`Bu)l~8(<NbIfa}I3?~ARb=84H0zo1$HNBh+
z3?4xs5tzwyI2jl+P()U9GB9uiBdgiP$-rO%7J->_66A{zWHr}7=72?DYMyd3FuVYZ
z!0h@0vON@87c&<FLk5b75Elc(46q2y97Qe$h81DRy7WLI;UE#18e1*~28{@i2+S@Y
zE(Qh<6p?6<E)<b0E(V4hU=f%(m0S!ACnAx}>EL2u;D|yNnGUiGMPwPsF0cs9oUI^{
zXk=YSxEL5ZP(&_+OpZZT^9W=zipWPU28IZ*2+U*#ZU%;qSY%ziAdxtb2uzI(Hv<Dl
zJV*o<8rs|p3>hdQRv=v{BA(m~3@=bbBDfhC6cRw@z)VgDnUe?-ftg$a5=jDyz|=Hz
zGccS0i@?-O;$~pbNCv5ai7W)!jv}%FWKIgQn*H1i3=6;_Fq6-LOio2sa~mX*1`>g(
zdBx4Z;E@gzf!XyFWP1j(2nP=Xg9nO;I1d9u1y}@Tjv5aGLq;aDE@O~L7Dxo9#)*f4
z;RRR(W>+A{<ZO@{m`DN-1H%avk$jLY6p=a}1_q5BWL>>H3=9!q5tv<bK<4Bkt62dO
z$peYN)NBKplMfPs*?xqFfuRFM<Pr}9gFyjE4NTVq9tH-ELXZed*Bc%Nh818Dn3`Wa
z3=CXF$Z9xv85lHBM8tR*7&=fyRCpN}R-lL&@iH(36obrxne4#Jz>rY_5`ozs01_z$
ziNMq(@iH*H0E@uXl<+bzc$9(Ez(m@385mBWh|B=#LJ?WT%fO&ej;w1B$QLLg=Xe<y
zCZLEs;ALQ#0TzL|=M%{GN@R1m_!t;Gsz4$zH7a}z3@gAQFc;eKF)(yggVex8BKQ~>
zPN0Ys@i8#GKoRNVV_^6I7J-?(f{%egqZZkmT_BM<kO)l8IgssO5tv<%_!t;C>OpE?
zBHuvnK@s8NXJA-?A|l7n!0-S?#E74P;RT9_8$Sa>Km*8RnC(&g3=Ah4K_W1_azP?Z
zAQ70FCVmD6k7kevOwDwVNDH#a8h!?b3>1-r{0s~WP(-eQ+>9dfnxBC|pcP~e%q|82
z28N6_kO<5!A&^KrNCc)vO@M*n1y}^8#tJ0T0a61K@e^QR;OImaNfKaSa6l0$6JTKQ
zKoRK@U|`q)7J=C{4`fa^vN;<;B0V4xn3`iC7lK7#w%-<DVCX;*`2cbuiU=#{diGwB
zIWS#Pf(#5AC?fiT3=9*%A~3sL1Q{4!^dajC1Bvv5L||&N1Q{4SCV)g>Cf5lvFl3;J
zOaj?H5n0VLK?Vj16p>vZb5KOi2{JHj0E@uvdL+oez%d!woKGN;DIgJ;8Wtf2h7Pa@
z%spa43=A(&L^OmL7(AwebiveEfpnpW_y{pDtN@F^OpX&`U^p=iSyur_WI9L$rltjC
z@(hp&%;Xs$b5KOq2r)2d%tTgm0Hg~=<cbgjLjj7&3y=#@ME(ddFnj=uz-$)~W?;ye
zjcl?aNMsI31g6GBn1SI1SOn%mcVPwwkGUW<Fp(%>28Iq4kz8R0h7~9x4Z;iz55OWY
zlP7~ro`-DC5|GGzkO)l8c944(fJ9(+of2kXIDsN^SD1le#zK%9n63{X7cK&cz;yiw
zi7W<*z|;tcFfg0|i@?+<iZC#|KoKz#VPNoB0@4Lj<1E6!kbxo+BErDX0TzLooGQY=
zuwp5)u2PV$Wgrolns$&~U=f(fGeLGO2dROHtOl8kBC;1`GFSv=&Uui?3S?dPKq4za
zA}}@YMHm<~R)IudCNqdKFm#}Z2#PW=aI8jFqa@0}pn)P{EXu%;fFj}|%D|8T7J=Cn
z3Nm>OvN@@u3=AG?K_W0U<)RD>Jzx=-dpboK7*?Q&%oSx|IDsOv9^{^NAah{44vI1`
zIDkc9CSL}*XFal-S0IzYA}}?~Vhju#8<5q=h%qpDpoo}?F)*w^5%CjaU^syyk}k%;
z@B=IYGr0j|&L(7&r-(5ybfAc=5MyAt0TzMj+9Srmkg*wA*9DL+6p<%l3=A(&M1F`d
zFmP-^*2N>vz~F%*q9D$|PyrT!*<~Wm!0=)#vMwia28I>eKq4?TLE;Py8rwl4uy9Ti
zXJF_6i@?+ri8C;8>_Ar22vUP0G67^VSOlhPzBmIz+)iX&>p;3tMD~JQ2o{0qIwQ`&
zFku%+7fj@~I0M5U6p>fr3=A2&L26)b{st1+0}_GhVv%5AcmWoHsS%Q3VDQ)rQUeoF
zkYHd)0E@tM=}9m!XzW8)V=KYHkbxrN0}|N}QUlW!4YCU?0y8-aBys?x1}0Jovi%@P
z1g5J)f`NhK5J&{3W-3SxipV06$YGEgn6C8_3=Aj0A~0QhKz1Dgsey@{1o`49vdA?F
z28Ir>2+W+vAip02sey@nm0)1lfFi;!$-p3R99fNoBm+YaiioBp1B1p1kQ$in_L2+?
zE6yT|gi10nEcp)-f!UQN$-r=efsp|;Apx1usFY-2=rBVTnG8~cBC-}_mpQVU<B|*v
z92UqT4<$jPg~%emLGD3OBPs<NT|ri(FU7!+;tLXixezo5^1>e^0`pgx6a&MG0Avx+
ztcXSsvPhE@14Bj#vd9c628KP2AQ70!E2Tg!Sda+J<ULXh3@0`ri(HdpV0f?@S>%Hh
zs02V3;gV)xC^-QVftf5V&A`BO3Ry%~nt>q!MZ{j3f#C#L1ZI1%Gy{XjMUXC-NV+rw
zg9aND17h~145Wq~Bmz^@F3rHu;fO3UUz&kog%h&Kc91R?WRdgI3=A(&M4p3mMIfvB
z53)THSwvihfguGf0`sYw3<JZ8Xk<0^GN6$PWRVCN1_qI2kO)jyjtm2XMhZv-=8Gm7
z1_q97WRdwY3=AD8B70;&J#l0;H)R+YEOL-VzR55!c%X;~%Q7&WKoK#JWnk#2K-T38
zQd5g8k|oQ)z|nv#(k{!ukb@$!M3#Y}0W1RZ*A9@HW{@tJ$VpiShMpE=ky{|!TR|c)
zzrP3BwG|`+)Ae5#R9}EZU}{9<7#KRffka?xROA>KGQNXEU}`MoKqDv2NO?IFq$?d+
zq!6Sg16ib3j)7qXipWYi28I_XB1b`XWg_c(2vSpvEb<p*avidWq&x$|5wHl%%{uZ7
z3>l5cYMkU57^a|zM94EREC7qZbY;pjFq~*Y)>S3X!0-Y^q+6bWL8BR2%^Z0Kh6u0-
z%$&9I3=BFgAT=<No$?F}2U?Luj><DIbhLv+V4->!B+`v6@)cw|iU_X)1B1*qkQ$iD
z3JMGi8QVc3Fmo&v7#MUugG69zycHN2IKF^HU}};T7#IXpSdjC(0t3Sfun0^|FGyq!
zNDWM6wE_c!##&^NlM0}A9kR%CkbBl4i?Av(FmS9#7EuO?Y(N%qRAgZ2ID#w^ugJi_
zaug&2^F@gw14GVnWRX@yP)!69fw^!x$mAc$A}bXc7%mvIBKdS1NR25-1g7gK$eabp
zBDWP87&1^qK7w>DL{`JD#K3R@MMPGKfgxiNvKnKM$YNv>PbCJ1E8CGp;*}T}UZ9AS
zDlss)>;S2O`Mn9GW*0~V=H}^23=As{Ba5t2VqoC7hAeVWiGji54@d-N&P62#hK|1=
z5tuoTLB6nML(0p4Kz7+7i-;;SFmyN|i|Bzw9Faxbl^GZ~!jMH0Kq86AB9+Pv3>hdQ
zlav`4mViZIE?lGxDzTAuZBS-l@JK-x*$XlUMdT#NJt!g%lo=RSpon}?W?(phBEqi1
z!0-Y^L{f!;fg=@U7tB3+Dhv!7=^znUh&ih;F!Z5_#H%ncEJP8hQej}&h9WXWg@NG)
zSOjMBN)-l%hD?yjFp+~Q3=9*pkVP)2Ffe%JB8%KtVPN=@k1X;AWO5<0$WM^Jia{bU
zH}k79Fsvv+7EuL>lp~8+t1>Wbr~-+=+~cFlz>rY`5`mc$uL`QIkVPt085lYmkVPhg
zOhyq|tIEJ|0!8GwDg%Q@BeJfCAdzNdk>4P@T98FV)fgB~por+JF)(oSAgl2NsX-A*
zR%2l3=tWjjtH!|K(T^-L9c0dAWRZ<(3=A14BB#|D7?yxVVBvE|je#L%I!G5x<dqr&
z!=9PQB0oTC<{*o3t1~d%nTISQr_R9eU;(m-fjR?&!9rva7j*`PnkC305$X&KKFg6s
zveg+F=Aekwt1~b(tVdQeS)GAl%{F9_W$FwJ0^5;AwyHBQ>_HJZqRzk&umf4m6?F!N
z3n(H_)EO8Ob|S0!4szjMWDzb61_qUb$RaWt3=9n@BE}$*6Ub`3G#D6S&LN8=XfQCG
zK@rK;U|`6(fUKqrq~;>BNP`9ggTN(Zk$w#ZhCi2)MdoQRFub{fEV5pMfuZLrvd94q
z1_q65AQ4!;xTe9tPy-f$rG)1i3=A39k=6XtU|=|bA|j&6z`$_>S&g111A_;O2xuKm
z2Z~6NCIiC?6p<QD28I_XBGWV(7&LAoo4i4jfguA$<dh}@!wj$p%+0qo85nf#fONq`
zUTQKh7~Dk``L4;pU~>;ygiVWq;SP$3s1^f5$9<3*Sor8_F)(mEKo)V(Vqoz21`>hU
z<);N|XM#jvx{|dR7*2dg7AXdq!^e(PTXktMFqnvfL}2F3&|+X%AqEnGnX>_8mpHP>
zVJ*<gE073G*F}&n6_5x_*E1~!1`SnYk#8Uu8X}AEYBMl|n1V!L=16NZFl;eH7SYsZ
zU|3*|EMg84u|O7a)n;HYu|gIJ)@EQhVvQ`4rp>_c!4_GhQk#L{iaoMOw>ATVh66|h
z=8Kuy3=AIgkVV#jM4UK~!f-c8#1&cOj5Y&<g*&pyU62|Skq_Do3>_#Uj5-VqGdz%W
ziRge<Ss;t3>M$^Hcp{6KfpmExi@1Yyp@>B3Ffg1z5y{qJVDRup)>Wm$z@QO`EYb}U
z2|^Z`sl&j)vJfN!TDuEc<GNCZfuRRQWQPs|!-2)fY7T+ivj$n@k`4pI85EKGIt&ak
zYawcw;j4mSYi^kt9oBI$q;i97gkh?!3N9{zuh9mLtS~cL9AIPstr3RV#K52jQd3+~
z1QTIq+_nV9hS7Q{MXAXpW$^Xr%#0y0DHIyCy0~K<$fvM023kjrD)Lr`fdL|deH}Gy
z)igv6Xze!-iX9*hwZaEv7Rb$0Fx-p~i7(KDu6$=;0IydEX=3=P!@vMhgWVS(MLfC;
z3`f8w!%~#IE&~I|K8QK-@!-Ac3?l16AqG+d^E<?3klz<zu4zXsdxyA(kpsNq9AqO5
z>k+Yj9;6oJ789`T$nk{`fw>1Jf^{7})IA_qfc?cN05Tc{6XPBXyBPE`K}M^XZ(x9g
z8Z%796qNcvZikDQfVMQCh?vzNbU}9|*g$;>*JTb`HIAaoGzOsyV!MeAx`^2Xgb37R
z7YvhEAk;w2G4(+gG0{O6G0Q-RKuz|+FnJ3?4b)`N&JGk`m{_2zF>67HKur$8FnJF`
z4b)`N4iQw7LAx7JM9k(ObU{sy!7zCZLJid90CW)(19TBH(Eb7xyTE%=P((~Yr6`Js
z321i=s)!4^$)=#42`FmJ55U!c60VLeh=k;KP?~07u-0W@$btHci6K6%C>2x~Lh=PD
z=f)S86eZ^tFhD{TEE1nuRFs#`07)Al5s;Z)x(p03ze7w82iYaS0N&>U5h(zPFfcHI
zcD_JFx}fC-LSz|44U(=cAQ2RE&ge2Qz)~F(LwtNnPELG0xNb+7a|@)40onHVP!Ul0
zKx}8y1G$_*0HI3|Bm%c9J~uVDIJJZUlD|McP0a&^FjyCo3)S@)7$g{wL)Ao&fguGR
zs;SWQQvw$OncxJn3&n+gD7rvuV)Y=qnGkNy2I*o#_E()AWDgWVO^+U=T!Hv2K0Y-s
zB|aWx9MsM6xrsTT?L&|}2=W(5a-kk_N&tzh*JEISl^c){+Y7RtK>%tFNX<1p$bKxS
zU5QEgMI{UjkemWD`H3C_1FU3&nDYU=q8#Q6kOM(xfiT1z5Q{^ffdQ6!A-bgXLE<o7
zAhr&MhzE*Df<6O7dUCQ6XqRk3W=?8~9z%S5e0p9fTp&J~A>Jh?$2T!E&p9Y0xFoTt
zq_n`n(1-zY;sNyd4;T+}<_81#2n4tk=sX1InIjDGrOCyx6WgF1xSr%<qoh=XE(jM{
zHV0KUCl%RL6J(txC^D#~nk1p>Lp9X|*;LTc3kYMuJh*#6JY<8Rd=z<Pqe1dWW~XF=
zT2}F(W?Fm&3MVPCIMvJqB2!wDW{&ItbA-P@GT@_9Ai)Sb@d2Sax!4FU2zOO-u@Ur)
z2NZ=cF(h^H;~|h0A_S3D!gNE9q5-?d1SSSk2RcgvZW5RSlYt-Q0GCFHpsRr#mCq0l
zQ-MfI2ocbELIwuNYQQ2!$Rg<GLJrDDs4&KGi!t~>6l8OuB8JGi&}}k?#}~|fkP8bD
zdJxGLp#p3Qk`GKEb|d)!k-lNNOu^?bA<Q+!@PR4B6eM$@A|}YX&_l)y&0I4KbImZ!
zg^HLV%r(OZ2Xi!Y5y>3pBXbOMp(4fzb0H!|NPa@(5STfToBR-ZEHHdvfngI=#1vT<
zC{~bdvcT|@C7PdLM?oP>vBa<mDuR@XEHTVAG(a=h&;Y{^h6Wf$8yaAmgr3k1F;luB
zG+`qJDpUyB_lB5B+Ymi%8)7DILugt?HXJHs7>`vDDP*9U4O6kGG)#?0Rf(RE4bgLm
zA!Zgagysljhd_mp4L8LMSM+RRh?!3eq1gi2aHtSc&W5T&32H>{ft*7FO$|^Etki{a
zLCF+UOd)ek7~+w*Mn<SyV^ppwoC^y=u-;N+TT9{T4=RUZYbhit!fb_b;kH7#Fk7Kq
zn60Joumzi3gko(Gn!QC3%?R&8`7oQI@^GtRe3;!ZKFsnWgzez7cVPJr%7KM6lne7S
zGS`S99*GNzMJN{*mS8UA!WyVjLwHz1<xtEugoh=PEZkf}cxZuTVbvp)gW_Hzh(U%>
zTcKQ-dm&u7xv*Ogp^9Op2H0Fgi2>!JxEES@7{hgfWZ~u_3JtJcNPz*$xX4_Xo1n5V
zqY#A&R58e8P}C!HVcvt5DF~xLis8;cRG(nIu#y4FK?yc!_BVj~2g-$+3+0-k$il5b
zloMc+VPyoAgJKP|Ab?o|<-&Xe<(fgQfpFp0Ac_aD$*`Ig%0aOPQeVOY4a$Z22Ev7#
zi>OM$M#1V)C<nz{XnhHDK9mb{K9mcy2FiuSD})QT6;Z8%PrQPbIuJI(P76~+eFu>P
zM=&@dKyu~aL!Ck4WnqR0cMu!N3^PbTLV^P%2QtIJ1f~nb0~H;~1u!`yi1}uS5C@%W
z1wJqf>P`e7W)DIHWFE*aG!a9Fcr+0sbP-VCpsF##&;@cSs+zPUWOHC40#bu=J{XeA
zQN@vcfGUIR6HFPHYq7{ceTGd2R0?3a4cXPu)60<D3ll+hDNGF6jVNN!kV6rJx(ith
z<_i=tEP7$#4pWEhV%X_wNKS?eA-fqai0o)oL8uE+1Yu4@6@<DGRS;b}vMa&qH!~5*
zkuVWtH^Rh_orod^wE|fT=0FrNsQXaF(DWj^4tDq)lJnp~$nJv+B0CUO&;*hnPy}I4
zL=}X(5mgZCNVp)fE1~D%AvqEzg6u|^7_t*l#Go!j7K1quMGWdb6fvmtU}DIw1E0-@
z<TeN&*<}zBWOpHn7(>DhAp&y~k_gmxhzPRX&~pHhY=?;;+Yb{%b^(eQ)W;}dP&<*u
zU@k)u!=e|KYhmh;T?{#=5Xr$%0c7_=g^-<#EMy7^F(e_F!;pkv<ug<W*$I%75s{n#
z6+m_ZR0!D#$U<fiCqRXe4KK+^%tSI8%tbaBEP!k*LLe1lC|m&ME4V<K1(FJwrSP*H
zp|&FUFl!MaFniHN3>o6lM2wI{U^eBYR+JQ%q!vIef^%W^zy)B|pb8i=#G?urp$UNe
zi=qM)hj0OyE8vGyLY;x&!`y)ofjI<S1XLZOiJ3CQql$oBgAjq)o}QXtl%AQG7Y{uO
z6Y2;IVVGMmBw$X$E@8+Jk6pqDhXlx#7&<T<TTl#kC&=4y#V|2slM9OB-6dpo7;Y{o
zhWB?c)S;ON(rajd<a(%H6o(fS!@F9!kRwFF?q!IF@nFFT<AY2!0Oc2`YM759M~;Fu
zgFK7Og*1>2jZu17ATHP}NaGsLO$9Ym4MAL($&m9);lTst!eqe*nu4tbX|ym$?oNSt
zU^~Eu!gwJ6Lv+E+fE<JhHU#8$WUdiIJd_Iy2q+h9t^r&Y#5GKXb73ZfPF01Qi{KbB
z#Dh67Gr=5?5ukQ7f@2I-29g084wiu#4LxWzs{kG{2oac?tjyvH10w@OR~#;YrUKFl
z0w*m{6CA1xNz~YYAs#LYb2eN6c2+%-8kBSRLEeHZMwKzfr3VyE*!6(AE7)aFT!~_j
zNh&UT($bJ*P=mz~GVlNi79*H46j3v*qL$c15souNjPFDI0WuPLqdk&N6b~SR&=BoR
ze?)|#%OE^$h#2{RrV{w=H{elRGZV9T_)Rwq@sLA%Aqf|h_&`>mi-EiY6@#S*C>N0$
zpaK{k!6puhZ*1a7_Mn&p@*FnxmZ@;}qo@bPGgLh+mSM*cqukVDlmrfu%pyZGQxpmF
zL{tfwuTe~a$0D*QiaS6NiCYpf2>`boMJK2Tz^M}yOt>W>BeB?x1qCEdo#v^io<?zy
zC1i>PyRo2nz-cTfGLR+FV+6TO0~-&or64zyLq;0G8Pft(bAzv+M-+1qMM$|f(E^kx
zKsUJ~vK~Yc=vqnm<s&dfU_lhG8h|QSuq~K!kdzBD9E+SOZZknqhU5qo`;76}2Z}IU
z`qC_M+m{B;8E|*P!W?wIHt1@1M0QUEkH|qUONU=!1PVjAT3F(T3xJ9V1MtWgR3BIX
zT=gRffSdr=0&@W9;&hmKAT~@Keg!mAY=cT7Y~m&$n_%~GBdIq54SONPVb;KnKuRMh
zMkA65Tq$I<7@X!%lp-~2U>1Qc1V@yDa1%hnD6tGG3-HJy`w2rYDAnQCYlQ4?485R~
zhg&Zwec_e`M<KFDF`^450KQ=hk$emp;!#DCEukW?Sb<2xi%>8ZBfPMP8bQrLQ40zm
zOtqkJ!4w6B2c{?}956-G60z9^3Kg(gnCGEq+aod+D9vC9f-J@mG)ZKLhY7-h2F6FE
zDwqh0r$Gq{s{|-Cuu34i0L3Vf@3HDgOhz~lMF*(t!KwpP+QTGZ;e&jWFhe|;2e}~_
z$^qZ}i_Av4#2G4#at|?73}Oc4h<d0H*d(|J_;Ml0t-SC`27D?%?5bZ-xn*n!)r(>U
zsB{Nibqtk5whB!O$x0*{WUJx9fGh~VWtbrzbb|m=(;mu&=>px30Czo@1Cs$2uHf5Y
z;rY(O9Mmy_Uik?ZO-;cj3QF5>6JSXXE`UgTa3PfV2c>WvGN953>xHJE<cD1ks0PF?
z14^0LWlWL%isClYBqaZ$%B10vF-Hy~6g?K;NgimJqRLp{GR+d)(Z!|*ly9*62b6K(
zGAL0DkA1K-ymbV-QvxaJAPK=tKoWv3wL*v>8d1n%m^uw1*FJ(<hu|wTvI-D&CPFJp
zzXPrgYAYyJBlSa|T$o+Zn>r9ah1?8^;a4ORVD=()WsroRwjzmu+V`+zjwTFq1)4C_
z4EVK~4Ds*_Gr>%#Jjg30<#4A%xiB+9J_A=4FuUOba225Y13|8XXIN+=f!t6C*9TVy
zuQb8ekbrceBuh}28M}-rB*8+=MbTrL2u{jaWXvE*8H<cLPSebjahYa;Q;#L60R;0R
zO3=VV7VIf_k^qG>{O&eLA(~wTmj&IE2W=XHE*S*3<UqX#BymvTj}U?dGgJXIj3JvG
z;!y<|pnQ}N1l5!fWiZEsc+e&%+zE+>5Y13=kP{F>$WAbV_fwFZfDnY4g5rc^3z#s>
z3E=B!ki*Xeu`&x%5yI?*@L>92838GLk%X|Qf@THe`|23tk$Ipxxq<<7rA=OOPG(6w
zXm<n>7Zebn_6+JpbfBTLqC|)WunHs4kR6H|P(K+>ARb*Cs6B+D22^>W3Sek4iU$qI
zAzKd0Rw$S5fEEnHFZj?iGdE(0hh1c&XJ&535D&W(1aeOfLwrtV68K_+c+f>P2rhyJ
zxr7A4PcF$pm;$<41ip?Lym~o4J|#asJtsdYF(*EyB)_N_wD1`rlnfDqHfu7gK+OPf
zxPvZfDJqGN2Pt<6@ehjk@eB?Db2D=b;^QIfyW``FGpkbL^V2}8le0mKsdF<SnouP`
zQD0P+3f7;Sn3Z1?54w1zvbZEQH@+;js5mn}4=k5dTnsV_YB9`=jMT&eWV698fbKqs
zkI&7_%P)%0FGevaBQ-Gv6qdQgWywV)@rexa@tL`a>8bIcRmWhfic^zIK-MPaWTxkV
zZfOCFf|49)89JEbjN)&Q+aN3G<KyE|rN9n?ZjgwN2i;TwidQ6K!3v<O?LnKOKp}wU
zVl06S-FAQoWpF?shb1BuK@kPE1-x?uW(UO2NFkh)nFI@x_)O4MDh%=QIr)hxsYUT=
WIf?1TV1GkG6k#@!erRZ;n+pJT8Mvze

diff --git a/graf2d/win32gdk/gdk/lib/glib-1.3.lib b/graf2d/win32gdk/gdk/lib/glib-1.3.lib
deleted file mode 100644
index 2a12574b056cf1f1933d3f242ee4fcc2b80dbcd1..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 402760
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

diff --git a/graf2d/win32gdk/gdk/src/gdk/gdkevents.c b/graf2d/win32gdk/gdk/src/gdk/gdkevents.c
index ce2c84547b6..7c4bbd92184 100644
--- a/graf2d/win32gdk/gdk/src/gdk/gdkevents.c
+++ b/graf2d/win32gdk/gdk/src/gdk/gdkevents.c
@@ -604,10 +604,6 @@ gboolean
 gdk_check_typed_window_event(GdkWindow * w, gint type, GdkEvent * event)
 {
 
-   GList *cPtr;
-   GdkEventPrivate *pevent;
-   GList *head;
-
 //    GList *tmp_list = gdk_queued_events;
    GList *tmp_list = gdk_event_queue_find_first();
    while (tmp_list) {
diff --git a/graf2d/win32gdk/gdk/src/gdk/makefile.msc b/graf2d/win32gdk/gdk/src/gdk/makefile.msc
index c4d07b60dff..274620807f8 100644
--- a/graf2d/win32gdk/gdk/src/gdk/makefile.msc
+++ b/graf2d/win32gdk/gdk/src/gdk/makefile.msc
@@ -73,7 +73,7 @@ win32\gdk-win32.lib:
 	cd ..
 
 gdk-$(GTK_VER).dll : $(gdk_OBJECTS) gdk.def win32\gdk-win32.lib
-	$(CC) $(CFLAGS) -LD -Fegdk-$(GTK_VER).dll $(gdk_OBJECTS) win32\gdk-win32.lib ..\..\lib\glib-$(GLIB_VER).lib gdi32.lib user32.lib imm32.lib shell32.lib ole32.lib uuid.lib Msimg32.lib win32\gdk.res $(LDFLAGS) /def:gdk.def
+	$(CC) $(CFLAGS) -LD -Fegdk-$(GTK_VER).dll $(gdk_OBJECTS) win32\gdk-win32.lib $(GLIB)\glib-$(GLIB_VER).lib gdi32.lib user32.lib imm32.lib shell32.lib ole32.lib uuid.lib Msimg32.lib win32\gdk.res $(LDFLAGS) /def:gdk.def
 	$(MT_DLL)
 	$(CLEAN_MT)
 
diff --git a/graf2d/win32gdk/gdk/src/gdk/win32/gdkcolor-win32.c b/graf2d/win32gdk/gdk/src/gdk/win32/gdkcolor-win32.c
index d1c61ebfbc6..196dcf59ff8 100644
--- a/graf2d/win32gdk/gdk/src/gdk/win32/gdkcolor-win32.c
+++ b/graf2d/win32gdk/gdk/src/gdk/win32/gdkcolor-win32.c
@@ -165,7 +165,6 @@ terms specified in this license.
 static int alloc_color(Colormap colormap, XColor * color, gulong * pixelp)
 {
    PALETTEENTRY entry, closeEntry;
-   HDC hdc;
    unsigned int i;
 
    entry = *color;
@@ -333,7 +332,6 @@ static Colormap create_colormap(HWND w, Visual * visual, gboolean alloc)
 {
    char logPalBuf[sizeof(LOGPALETTE) + 256 * sizeof(PALETTEENTRY)];
    LOGPALETTE *logPalettePtr;
-   PALETTEENTRY *entryPtr;
    Colormap colormap;
    guint i;
    HPALETTE sysPal;
@@ -1263,7 +1261,6 @@ gboolean parse_color(Colormap map, const char *spec, GdkColor * colorPtr)
 static Colormap default_colormap()
 {
    static Colormap colormap;
-   gint i;
 
    if (colormap)
       return colormap;
@@ -1277,7 +1274,6 @@ GdkColormap *gdk_colormap_new(GdkVisual * visual, gint private_cmap)
    GdkColormap *colormap;
    GdkColormapPrivateWin32 *private;
    Visual *xvisual;
-   int size;
    int i;
 
    g_return_val_if_fail(visual != NULL, NULL);
@@ -1410,7 +1406,6 @@ GdkColormap *gdk_colormap_get_system(void)
 {
    static GdkColormap *colormap = NULL;
    GdkColormapPrivateWin32 *private;
-   gint i;
 
    if (!colormap) {
       private = g_new(GdkColormapPrivateWin32, 1);
@@ -1467,11 +1462,7 @@ gint gdk_colormap_get_system_size(void)
 void gdk_colormap_change(GdkColormap * colormap, gint ncolors)
 {
    GdkColormapPrivateWin32 *private;
-   GdkVisual *visual;
    XColor *palette;
-   gint shift;
-   int max_colors;
-   int size;
    int i;
 
    g_return_if_fail(colormap != NULL);
@@ -1532,7 +1523,6 @@ gdk_colors_alloc(GdkColormap * colormap,
 gboolean gdk_color_parse(const gchar * spec, GdkColor * color)
 {
    Colormap xcolormap;
-   XColor xcolor;
 
    g_return_val_if_fail(spec != NULL, FALSE);
    g_return_val_if_fail(color != NULL, FALSE);
diff --git a/graf2d/win32gdk/gdk/src/gdk/win32/gdkdnd-win32.c b/graf2d/win32gdk/gdk/src/gdk/win32/gdkdnd-win32.c
index 2a6041abf2b..b10fb20876d 100644
--- a/graf2d/win32gdk/gdk/src/gdk/win32/gdkdnd-win32.c
+++ b/graf2d/win32gdk/gdk/src/gdk/win32/gdkdnd-win32.c
@@ -591,7 +591,7 @@ gdk_dropfiles_filter(GdkXEvent * xev, GdkEvent * event, gpointer data)
    MSG *msg = (MSG *) xev;
    HANDLE hdrop;
    POINT pt;
-   gint nfiles, i, k;
+   gint nfiles, i;
    guchar fileName[MAX_PATH], linkedFile[MAX_PATH];
 
    if (text_uri_list_atom == GDK_NONE)
@@ -658,7 +658,6 @@ gdk_dropfiles_filter(GdkXEvent * xev, GdkEvent * event, gpointer data)
 
 void gdk_dnd_init(void)
 {
-   HRESULT hres;
 #ifdef OLE2_DND
    hres = OleInitialize(NULL);
 
diff --git a/graf2d/win32gdk/gdk/src/gdk/win32/gdkdrawable-win32.c b/graf2d/win32gdk/gdk/src/gdk/win32/gdkdrawable-win32.c
index 319cbe67039..b0c1a4bd7d1 100644
--- a/graf2d/win32gdk/gdk/src/gdk/win32/gdkdrawable-win32.c
+++ b/graf2d/win32gdk/gdk/src/gdk/win32/gdkdrawable-win32.c
@@ -177,7 +177,6 @@ gdk_win32_draw_rectangle(GdkDrawable * drawable,
    HDC hdc;
    HGDIOBJ oldpen_or_brush;
    POINT pts[4];
-   HBRUSH stipple;
    gboolean ok = TRUE;
 
    GDK_NOTE(MISC,
@@ -597,7 +596,7 @@ gdk_win32_draw_text_wc(GdkDrawable * drawable,
                        gint y, const GdkWChar * text, gint text_length)
 {
    GdkGCPrivate *gc_private;
-   gint i, wlen;
+   gint i;
    wchar_t *wcstr;
    gdk_draw_text_arg arg;
 
diff --git a/graf2d/win32gdk/gdk/src/gdk/win32/gdkevents-win32.c b/graf2d/win32gdk/gdk/src/gdk/win32/gdkevents-win32.c
index 94fda911ac9..273c5688368 100644
--- a/graf2d/win32gdk/gdk/src/gdk/win32/gdkevents-win32.c
+++ b/graf2d/win32gdk/gdk/src/gdk/win32/gdkevents-win32.c
@@ -283,8 +283,6 @@ void gdk_events_init(void)
 {
    GSource *source;
    HRESULT hres;
-   HMODULE user32, imm32;
-   HINSTANCE commctrl32;
 
    gdk_ping_msg = RegisterWindowMessage("gdk-ping");
    GDK_NOTE(EVENTS, g_print("gdk-ping = %#x\n", gdk_ping_msg));
@@ -389,8 +387,6 @@ gboolean gdk_events_pending(void)
 
 GdkEvent *gdk_event_get_graphics_expose(GdkWindow * window)
 {
-   MSG xevent;
-   GdkEvent *event;
    GdkWindowPrivate *private = (GdkWindowPrivate *) window;
 
    g_return_val_if_fail(window != NULL, NULL);
@@ -686,7 +682,6 @@ gint gdk_key_grab(gint keycode, gint mod, GdkWindow * window)
 void gdk_key_ungrab(gint keycode, gint mod, GdkWindow * window)
 {
    _Gdk_key_mod *key_mod;
-   int i;
 
    if (window == NULL) return;
    if (!GDK_IS_WINDOW(window)) return;
@@ -4212,7 +4207,6 @@ build_keypress_event(GdkWindowWin32Data * windata,
    bp = event->key.string;
    while (ucleft-- > 0) {
       int first;
-      int i;
       wchar_t c = *wcp++;
 
       if (c < 0x80) {
@@ -4765,9 +4759,6 @@ gdk_event_translate(GdkEvent * event,
                     MSG * xevent,
                     gboolean * ret_val_flagp, gint * ret_valp)
 {
-   DWORD pidActWin;
-   DWORD pidThis;
-   DWORD dwStyle;
    PAINTSTRUCT paintstruct;
    HDC hdc;
    HDC bgdc;
@@ -4781,15 +4772,12 @@ gdk_event_translate(GdkEvent * event,
    HCURSOR xcursor;
    GdkWindow *window, *orig_window, *newwindow;
    GdkColormapPrivateWin32 *colormap_private;
-   GdkEventMask mask;
    GdkPixmap *pixmap;
    GdkDrawablePrivate *pixmap_private;
    int button;
-   int i, j, n, k;
+   int i, j;
    gchar buf[256];
-   gchar *msgname;
    gboolean return_val;
-   gboolean flag;
 
    return_val = FALSE;
 
@@ -6462,10 +6450,7 @@ gdk_event_translate(GdkEvent * event,
 
 void gdk_events_queue(void)
 {
-   GList *node;
-   GdkEvent *event;
    MSG msg;
-   LRESULT lres;
 
    while (!gdk_event_queue_find_first()
           && PeekMessage(&msg, NULL, 0, 0, PM_REMOVE)) {
diff --git a/graf2d/win32gdk/gdk/src/gdk/win32/gdkfont-win32.c b/graf2d/win32gdk/gdk/src/gdk/win32/gdkfont-win32.c
index 8dd0d671976..dff4fc0daf7 100644
--- a/graf2d/win32gdk/gdk/src/gdk/win32/gdkfont-win32.c
+++ b/graf2d/win32gdk/gdk/src/gdk/win32/gdkfont-win32.c
@@ -229,7 +229,7 @@ static gchar *logfont_to_xlfd(const LOGFONT * lfp,
    /* Convert the facename Windows fives us from the locale-dependent
     * codepage to UTF-8.
     */
-   utf8_facename = g_filename_to_utf8(lfp->lfFaceName, NULL);
+   utf8_facename = g_filename_to_utf8(lfp->lfFaceName, -1, NULL, NULL, NULL);
 
    /* Replace characters illegal in an XLFD with hex escapes. */
    p = facename;
@@ -1103,7 +1103,7 @@ GdkWin32SingleFont *gdk_font_load_internal(const gchar * font_name)
       fdwClipPrecision = CLIP_DEFAULT_PRECIS;
       fdwQuality = PROOF_QUALITY;
       fdwPitchAndFamily = DEFAULT_PITCH;
-      lpszFace = g_filename_from_utf8(font_name, NULL);
+      lpszFace = g_filename_from_utf8(font_name, -1, NULL, NULL, NULL);
    } else if (numfields != 5) {
       g_warning("gdk_font_load: font name %s illegal", font_name);
       return NULL;
@@ -1287,7 +1287,7 @@ GdkWin32SingleFont *gdk_font_load_internal(const gchar * font_name)
          fdwPitchAndFamily = VARIABLE_PITCH;
       else
          fdwPitchAndFamily = DEFAULT_PITCH;
-      lpszFace = g_filename_from_utf8(family, NULL);
+      lpszFace = g_filename_from_utf8(family, -1, NULL, NULL, NULL);
    }
 
    for (tries = 0;; tries++) {
@@ -1385,7 +1385,6 @@ GdkFont *gdk_font_load(const gchar * font_name)
    GdkFontPrivateWin32 *private;
    GdkWin32SingleFont *singlefont;
    HGDIOBJ oldfont;
-   HANDLE *f;
    TEXTMETRIC textmetric;
 
    g_return_val_if_fail(font_name != NULL, NULL);
@@ -1428,7 +1427,6 @@ GdkFont *gdk_fontset_load(const gchar * fontset_name)
    GdkFontPrivateWin32 *private;
    GdkWin32SingleFont *singlefont;
    HGDIOBJ oldfont;
-   HANDLE *f;
    TEXTMETRIC textmetric;
    GSList *base_font_list = NULL;
    gchar *fs;
@@ -1611,7 +1609,7 @@ gdk_wchar_text_handle(GdkFont * font,
    GdkFontPrivateWin32 *private;
    GdkWin32SingleFont *singlefont;
    GSList *list;
-   int i, block;
+   int block;
    const wchar_t *start, *end, *wcp;
 
    wcp = wcstr;
diff --git a/graf2d/win32gdk/gdk/src/gdk/win32/gdkim-win32.c b/graf2d/win32gdk/gdk/src/gdk/win32/gdkim-win32.c
index d9f9e3730bc..5eaf4537e55 100644
--- a/graf2d/win32gdk/gdk/src/gdk/win32/gdkim-win32.c
+++ b/graf2d/win32gdk/gdk/src/gdk/win32/gdkim-win32.c
@@ -161,7 +161,6 @@ gchar *gdk_wcstombs(const GdkWChar * src)
    bp = mbstr;
    while (*wcp) {
       int first;
-      int i;
       GdkWChar c = *wcp++;
 
       if (c < 0x80) {
diff --git a/graf2d/win32gdk/gdk/src/gdk/win32/gdkmain-win32.c b/graf2d/win32gdk/gdk/src/gdk/win32/gdkmain-win32.c
index 98c91ce0c69..879cd21b279 100644
--- a/graf2d/win32gdk/gdk/src/gdk/win32/gdkmain-win32.c
+++ b/graf2d/win32gdk/gdk/src/gdk/win32/gdkmain-win32.c
@@ -63,7 +63,6 @@ int __stdcall DllMain(HINSTANCE hinstDLL, DWORD dwReason, LPVOID reserved)
 
 gboolean _gdk_windowing_init_check(int argc, char **argv)
 {
-   gint i, j, k;
 
    if (getenv("GDK_IGNORE_WINTAB") != NULL)
       gdk_input_ignore_wintab = TRUE;
diff --git a/graf2d/win32gdk/gdk/src/gdk/win32/gdkpixmap-win32.c b/graf2d/win32gdk/gdk/src/gdk/win32/gdkpixmap-win32.c
index 9db6316a0a1..a787ce4d585 100644
--- a/graf2d/win32gdk/gdk/src/gdk/win32/gdkpixmap-win32.c
+++ b/graf2d/win32gdk/gdk/src/gdk/win32/gdkpixmap-win32.c
@@ -874,7 +874,7 @@ GdkPixmap *gdk_pixmap_foreign_new(guint32 anid)
    GdkDrawablePrivate *private;
    HBITMAP xpixmap;
    SIZE size;
-   unsigned int x_ret, y_ret, w_ret, h_ret, bw_ret, depth_ret;
+   unsigned int w_ret, h_ret;
 
    /* check to make sure we were passed something at
       least a little sane */
diff --git a/graf2d/win32gdk/gdk/src/gdk/win32/gdkproperty-win32.c b/graf2d/win32gdk/gdk/src/gdk/win32/gdkproperty-win32.c
index d73ba843929..0686ea10596 100644
--- a/graf2d/win32gdk/gdk/src/gdk/win32/gdkproperty-win32.c
+++ b/graf2d/win32gdk/gdk/src/gdk/win32/gdkproperty-win32.c
@@ -208,7 +208,7 @@ gdk_property_change(GdkWindow * window,
 
 void gdk_property_delete(GdkWindow * window, GdkAtom property)
 {
-   gchar *prop_name, *type_name;
+   gchar *prop_name;
    extern void gdk_selection_property_delete(GdkWindow *);
 
    g_return_if_fail(window != NULL);
diff --git a/graf2d/win32gdk/gdk/src/gdk/win32/gdkregion-win32.c b/graf2d/win32gdk/gdk/src/gdk/win32/gdkregion-win32.c
index 31081ad00c2..8bb5afe6bd4 100644
--- a/graf2d/win32gdk/gdk/src/gdk/win32/gdkregion-win32.c
+++ b/graf2d/win32gdk/gdk/src/gdk/win32/gdkregion-win32.c
@@ -117,7 +117,6 @@ GdkOverlapType gdk_region_rect_in(GdkRegion * region, GdkRectangle * rect)
 {
    GdkRegionPrivate *private;
    RECT r;
-   int res;
 
    g_return_val_if_fail(region != NULL, 0);
 
diff --git a/graf2d/win32gdk/gdk/src/gdk/win32/gdkselection-win32.c b/graf2d/win32gdk/gdk/src/gdk/win32/gdkselection-win32.c
index 52731855da8..623fd98736c 100644
--- a/graf2d/win32gdk/gdk/src/gdk/win32/gdkselection-win32.c
+++ b/graf2d/win32gdk/gdk/src/gdk/win32/gdkselection-win32.c
@@ -158,7 +158,6 @@ gdk_selection_convert(GdkWindow * requestor,
                       GdkAtom selection, GdkAtom target, guint32 time)
 {
    HGLOBAL hdata;
-   GdkSelProp *prop;
    guchar *ptr, *data, *datap, *p;
    guint i, length, slength;
    gchar *sel_name, *tgt_name;
diff --git a/graf2d/win32gdk/gdk/src/gdk/win32/gdkwindow-win32.c b/graf2d/win32gdk/gdk/src/gdk/win32/gdkwindow-win32.c
index 4e84f0efc9a..96db3932ba0 100644
--- a/graf2d/win32gdk/gdk/src/gdk/win32/gdkwindow-win32.c
+++ b/graf2d/win32gdk/gdk/src/gdk/win32/gdkwindow-win32.c
@@ -1214,7 +1214,6 @@ gdk_window_set_geometry_hints(GdkWindow * window,
    RECT rect;
    DWORD dwStyle;
    DWORD dwExStyle;
-   int diff;
    int maxw, maxh;
 
    g_return_if_fail(window != NULL);
@@ -1317,10 +1316,6 @@ gdk_window_set_geometry_hints(GdkWindow * window,
 
 void gdk_window_set_title(GdkWindow * window, const gchar * title)
 {
-   gint titlelen;
-   wchar_t *wcstr;
-   gint wlen;
-   char *mbstr;
 
    g_return_if_fail(window != NULL);
    g_return_if_fail(GDK_IS_WINDOW(window));
@@ -1721,7 +1716,6 @@ GdkWindow *gdk_window_at_pointer(gint * win_x, gint * win_y)
 
 GList *gdk_window_get_children(GdkWindow * window)
 {
-   GdkWindowPrivate *private;
    GList *children;
 
    g_return_val_if_fail(window != NULL, NULL);
@@ -2015,7 +2009,6 @@ static void gdk_propagate_shapes(HANDLE win, gboolean merge)
 {
    RECT emptyRect;
    HRGN region, childRegion;
-   RECT rect;
    HWND *list = NULL;
    gint i, num;
 
diff --git a/graf2d/win32gdk/gdk/src/glib/config.h b/graf2d/win32gdk/gdk/src/glib/config.h
new file mode 100644
index 00000000000..801c796b3d0
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/config.h
@@ -0,0 +1,182 @@
+/* config.h.win32.  Handcrafted for Microsoft C and gcc -mno-cygwin */
+
+#if ! (defined(_MSC_VER) || defined(__GNUC__))
+#error Unrecognized Win32 compiler, edit config.h.win32 by hand
+#endif
+
+/* Define if using alloca.c.  */
+/* #undef C_ALLOCA */
+
+/* Define to empty if the keyword does not work.  */
+/* #undef const */
+
+/* Define to one of _getb67, GETB67, getb67 for Cray-2 and Cray-YMP systems.
+   This function is required for alloca.c support on those systems.  */
+/* #undef CRAY_STACKSEG_END */
+
+/* Define if you have a working `mmap' system call.  */
+/* #undef HAVE_MMAP */
+
+/* Define to empty, or __inline if that's what your compiler wants.  */
+#define inline __inline
+
+/* Define to `long' if <sys/types.h> doesn't define.  */
+/* #undef off_t */
+
+/* Define if you need to in order for stat and other things to work.  */
+/* #undef _POSIX_SOURCE*/
+
+/* Define as the return type of signal handlers (int or void).  */
+#define RETSIGTYPE void
+
+/* Define to `unsigned' if <sys/types.h> doesn't define.  */
+/* #undef size_t */
+
+/* If using the C implementation of alloca, define if you know the
+   direction of stack growth for your system; otherwise it will be
+   automatically deduced at run-time.
+ STACK_DIRECTION > 0 => grows toward higher addresses
+ STACK_DIRECTION < 0 => grows toward lower addresses
+ STACK_DIRECTION = 0 => direction of growth unknown
+ */
+/* #undef STACK_DIRECTION */
+
+/* Define if you have the ANSI C header files.  */
+#define STDC_HEADERS 1
+
+/* Other stuff */
+//#define ENABLE_NLS 1
+#define GTK_COMPILED_WITH_DEBUGGING "minimum"
+
+/* #undef HAVE_CATGETS */
+/* #undef HAVE_DIRENT_H */
+#define HAVE_GETTEXT 1
+/* #undef HAVE_IPC_H */
+/* #undef HAVE_LC_MESSAGES */
+/* #undef HAVE_PWD_H */
+/* #undef HAVE_SHM_H */
+/* #undef HAVE_STPCPY */
+/* #undef HAVE_XSHM_H */
+#define HAVE_SHAPE_EXT 1
+/* #undef HAVE_SYS_SELECT_H */
+/* #undef HAVE_SYS_TIME_H */
+/* #undef HAVE_XCONVERTCASE */
+
+/* #undef NO_FD_SET */
+
+/* #undef XINPUT_NONE */
+/* #undef XINPUT_GXI */
+/* #undef XINPUT_XFREE */
+#define XINPUT_WIN32 1
+
+/* Define as the return type of signal handlers (int or void).  */
+#define RETSIGTYPE void
+
+/* Define if you have the __argz_count function.  */
+/* #undef HAVE___ARGZ_COUNT */
+
+/* Define if you have the __argz_next function.  */
+/* #undef HAVE___ARGZ_NEXT */
+
+/* Define if you have the __argz_stringify function.  */
+/* #undef HAVE___ARGZ_STRINGIFY */
+
+/* Define if you have the broken_wctype function.  */
+/* #undef HAVE_BROKEN_WCTYPE */
+
+/* Define if you have the dcgettext function.  */
+/* #undef HAVE_DCGETTEXT */
+
+/* Define if you have the getcwd function.  */
+#define HAVE_GETCWD 1
+
+/* Define if you have the getpagesize function.  */
+#define HAVE_GETPAGESIZE 1
+
+/* Define if you have the lstat function.  */
+/* #undef HAVE_LSTAT */
+
+/* Define if you have the munmap function.  */
+/* #undef HAVE_MUNMAP */
+
+/* Define if you have the putenv function.  */
+#define HAVE_PUTENV 1
+#define putenv _putenv
+
+/* Define if you have the setenv function.  */
+/* #undef HAVE_SETENV */
+
+/* Define if you have the setlocale function.  */
+#define HAVE_SETLOCALE 1
+
+/* Define if you have the stpcpy function.  */
+/* #undef HAVE_STPCPY */
+
+/* Define if you have the strcasecmp function.  */
+#define HAVE_STRCASECMP 1
+#define strcasecmp _stricmp
+
+/* Define if you have the strchr function.  */
+#define HAVE_STRCHR 1
+
+/* Define if you have the strdup function.  */
+#define HAVE_STRDUP 1
+
+/* Define if you have the <argz.h> header file.  */
+/* #undef HAVE_ARGZ_H */
+
+/* Define if you have the <dirent.h> header file.  */
+/* #undef HAVE_DIRENT_H */
+
+/* Define if you have the <limits.h> header file.  */
+#define HAVE_LIMITS_H 1
+
+/* Define if you have the <locale.h> header file.  */
+#define HAVE_LOCALE_H 1
+
+/* Define if you have the <malloc.h> header file.  */
+#define HAVE_MALLOC_H 1
+
+/* Define if you have the <nl_types.h> header file.  */
+/* #undef HAVE_NL_TYPES_H */
+
+/* Define if you have the <pwd.h> header file.  */
+/* #undef HAVE_PWD_H */
+
+/* Define if you have the <string.h> header file.  */
+#define HAVE_STRING_H 1
+
+/* Define if you have the <sys/param.h> header file.  */
+/* #undef HAVE_SYS_PARAM_H */
+
+/* Define if you have the <sys/time.h> header file.  */
+/* #undef HAVE_SYS_TIME_H */
+
+/* Define if you have the <unistd.h> header file.  */
+/* #undef HAVE_UNISTD_H */
+
+/* Define if you have the <wchar.h> header file.  */
+#define HAVE_WCHAR_H 1
+
+/* Define if you have the <wctype.h> header file.  */
+#ifdef _MSC_VER
+#define HAVE_WCTYPE_H 1
+#endif                          /* _MSC_VER */
+
+/* Define if you have the i library (-li).  */
+/* #undef HAVE_LIBI */
+
+/* Define if you have the intl library (-lintl).  */
+/*#define HAVE_LIBINTL 1*/
+
+/* define if compiled symbols have a leading underscore */
+/* #undef WITH_SYMBOL_UNDERSCORE */
+
+/* Define if you have the Wintab programmer's kit */
+/* #define HAVE_WINTAB 1 */
+#undef HAVE_WINTAB
+
+/* Define if you have the <dimm.h> header file
+ * (available in the Platform SDK)
+*/
+/* #define HAVE_DIMM_H 1 */
diff --git a/graf2d/win32gdk/gdk/src/glib/config.h.win32 b/graf2d/win32gdk/gdk/src/glib/config.h.win32
new file mode 100644
index 00000000000..801c796b3d0
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/config.h.win32
@@ -0,0 +1,182 @@
+/* config.h.win32.  Handcrafted for Microsoft C and gcc -mno-cygwin */
+
+#if ! (defined(_MSC_VER) || defined(__GNUC__))
+#error Unrecognized Win32 compiler, edit config.h.win32 by hand
+#endif
+
+/* Define if using alloca.c.  */
+/* #undef C_ALLOCA */
+
+/* Define to empty if the keyword does not work.  */
+/* #undef const */
+
+/* Define to one of _getb67, GETB67, getb67 for Cray-2 and Cray-YMP systems.
+   This function is required for alloca.c support on those systems.  */
+/* #undef CRAY_STACKSEG_END */
+
+/* Define if you have a working `mmap' system call.  */
+/* #undef HAVE_MMAP */
+
+/* Define to empty, or __inline if that's what your compiler wants.  */
+#define inline __inline
+
+/* Define to `long' if <sys/types.h> doesn't define.  */
+/* #undef off_t */
+
+/* Define if you need to in order for stat and other things to work.  */
+/* #undef _POSIX_SOURCE*/
+
+/* Define as the return type of signal handlers (int or void).  */
+#define RETSIGTYPE void
+
+/* Define to `unsigned' if <sys/types.h> doesn't define.  */
+/* #undef size_t */
+
+/* If using the C implementation of alloca, define if you know the
+   direction of stack growth for your system; otherwise it will be
+   automatically deduced at run-time.
+ STACK_DIRECTION > 0 => grows toward higher addresses
+ STACK_DIRECTION < 0 => grows toward lower addresses
+ STACK_DIRECTION = 0 => direction of growth unknown
+ */
+/* #undef STACK_DIRECTION */
+
+/* Define if you have the ANSI C header files.  */
+#define STDC_HEADERS 1
+
+/* Other stuff */
+//#define ENABLE_NLS 1
+#define GTK_COMPILED_WITH_DEBUGGING "minimum"
+
+/* #undef HAVE_CATGETS */
+/* #undef HAVE_DIRENT_H */
+#define HAVE_GETTEXT 1
+/* #undef HAVE_IPC_H */
+/* #undef HAVE_LC_MESSAGES */
+/* #undef HAVE_PWD_H */
+/* #undef HAVE_SHM_H */
+/* #undef HAVE_STPCPY */
+/* #undef HAVE_XSHM_H */
+#define HAVE_SHAPE_EXT 1
+/* #undef HAVE_SYS_SELECT_H */
+/* #undef HAVE_SYS_TIME_H */
+/* #undef HAVE_XCONVERTCASE */
+
+/* #undef NO_FD_SET */
+
+/* #undef XINPUT_NONE */
+/* #undef XINPUT_GXI */
+/* #undef XINPUT_XFREE */
+#define XINPUT_WIN32 1
+
+/* Define as the return type of signal handlers (int or void).  */
+#define RETSIGTYPE void
+
+/* Define if you have the __argz_count function.  */
+/* #undef HAVE___ARGZ_COUNT */
+
+/* Define if you have the __argz_next function.  */
+/* #undef HAVE___ARGZ_NEXT */
+
+/* Define if you have the __argz_stringify function.  */
+/* #undef HAVE___ARGZ_STRINGIFY */
+
+/* Define if you have the broken_wctype function.  */
+/* #undef HAVE_BROKEN_WCTYPE */
+
+/* Define if you have the dcgettext function.  */
+/* #undef HAVE_DCGETTEXT */
+
+/* Define if you have the getcwd function.  */
+#define HAVE_GETCWD 1
+
+/* Define if you have the getpagesize function.  */
+#define HAVE_GETPAGESIZE 1
+
+/* Define if you have the lstat function.  */
+/* #undef HAVE_LSTAT */
+
+/* Define if you have the munmap function.  */
+/* #undef HAVE_MUNMAP */
+
+/* Define if you have the putenv function.  */
+#define HAVE_PUTENV 1
+#define putenv _putenv
+
+/* Define if you have the setenv function.  */
+/* #undef HAVE_SETENV */
+
+/* Define if you have the setlocale function.  */
+#define HAVE_SETLOCALE 1
+
+/* Define if you have the stpcpy function.  */
+/* #undef HAVE_STPCPY */
+
+/* Define if you have the strcasecmp function.  */
+#define HAVE_STRCASECMP 1
+#define strcasecmp _stricmp
+
+/* Define if you have the strchr function.  */
+#define HAVE_STRCHR 1
+
+/* Define if you have the strdup function.  */
+#define HAVE_STRDUP 1
+
+/* Define if you have the <argz.h> header file.  */
+/* #undef HAVE_ARGZ_H */
+
+/* Define if you have the <dirent.h> header file.  */
+/* #undef HAVE_DIRENT_H */
+
+/* Define if you have the <limits.h> header file.  */
+#define HAVE_LIMITS_H 1
+
+/* Define if you have the <locale.h> header file.  */
+#define HAVE_LOCALE_H 1
+
+/* Define if you have the <malloc.h> header file.  */
+#define HAVE_MALLOC_H 1
+
+/* Define if you have the <nl_types.h> header file.  */
+/* #undef HAVE_NL_TYPES_H */
+
+/* Define if you have the <pwd.h> header file.  */
+/* #undef HAVE_PWD_H */
+
+/* Define if you have the <string.h> header file.  */
+#define HAVE_STRING_H 1
+
+/* Define if you have the <sys/param.h> header file.  */
+/* #undef HAVE_SYS_PARAM_H */
+
+/* Define if you have the <sys/time.h> header file.  */
+/* #undef HAVE_SYS_TIME_H */
+
+/* Define if you have the <unistd.h> header file.  */
+/* #undef HAVE_UNISTD_H */
+
+/* Define if you have the <wchar.h> header file.  */
+#define HAVE_WCHAR_H 1
+
+/* Define if you have the <wctype.h> header file.  */
+#ifdef _MSC_VER
+#define HAVE_WCTYPE_H 1
+#endif                          /* _MSC_VER */
+
+/* Define if you have the i library (-li).  */
+/* #undef HAVE_LIBI */
+
+/* Define if you have the intl library (-lintl).  */
+/*#define HAVE_LIBINTL 1*/
+
+/* define if compiled symbols have a leading underscore */
+/* #undef WITH_SYMBOL_UNDERSCORE */
+
+/* Define if you have the Wintab programmer's kit */
+/* #define HAVE_WINTAB 1 */
+#undef HAVE_WINTAB
+
+/* Define if you have the <dimm.h> header file
+ * (available in the Platform SDK)
+*/
+/* #define HAVE_DIMM_H 1 */
diff --git a/graf2d/win32gdk/gdk/src/glib/galloca.h b/graf2d/win32gdk/gdk/src/glib/galloca.h
index 703802b58b2..7bc0a5fa34b 100644
--- a/graf2d/win32gdk/gdk/src/glib/galloca.h
+++ b/graf2d/win32gdk/gdk/src/glib/galloca.h
@@ -27,7 +27,7 @@
 #ifndef __G_ALLOCA_H__
 #define __G_ALLOCA_H__
 
-#include <g_types.h>
+#include <glib/gtypes.h>
 
 #ifdef  __GNUC__
 /* GCC does the right thing */
diff --git a/graf2d/win32gdk/gdk/src/glib/garray.c b/graf2d/win32gdk/gdk/src/glib/garray.c
new file mode 100644
index 00000000000..9a5758f8854
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/garray.c
@@ -0,0 +1,670 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <string.h>
+#include <stdlib.h>
+#include "glib.h"
+
+
+#define MIN_ARRAY_SIZE  16
+
+typedef struct _GRealArray  GRealArray;
+
+struct _GRealArray
+{
+  guint8 *data;
+  guint   len;
+  guint   alloc;
+  guint   elt_size;
+  guint   zero_terminated : 1;
+  guint   clear : 1;
+};
+
+#define g_array_elt_len(array,i) ((array)->elt_size * (i))
+#define g_array_elt_pos(array,i) ((array)->data + g_array_elt_len((array),(i)))
+#define g_array_elt_zero(array, pos, len) 				\
+  (memset (g_array_elt_pos ((array), pos), 0,  g_array_elt_len ((array), len)))
+#define g_array_zero_terminate(array) G_STMT_START{			\
+  if ((array)->zero_terminated)						\
+    g_array_elt_zero ((array), (array)->len, 1);			\
+}G_STMT_END
+
+static gint g_nearest_pow        (gint        num) G_GNUC_CONST;
+static void g_array_maybe_expand (GRealArray *array,
+				  gint        len);
+
+static GMemChunk *array_mem_chunk = NULL;
+G_LOCK_DEFINE_STATIC (array_mem_chunk);
+
+GArray*
+g_array_new (gboolean zero_terminated,
+	     gboolean clear,
+	     guint    elt_size)
+{
+  return (GArray*) g_array_sized_new (zero_terminated, clear, elt_size, 0);
+}
+
+GArray* g_array_sized_new (gboolean zero_terminated,
+			   gboolean clear,
+			   guint    elt_size,
+			   guint    reserved_size)
+{
+  GRealArray *array;
+
+  G_LOCK (array_mem_chunk);
+  if (!array_mem_chunk)
+    array_mem_chunk = g_mem_chunk_new ("array mem chunk",
+				       sizeof (GRealArray),
+				       1024, G_ALLOC_AND_FREE);
+
+  array = g_chunk_new (GRealArray, array_mem_chunk);
+  G_UNLOCK (array_mem_chunk);
+
+  array->data            = NULL;
+  array->len             = 0;
+  array->alloc           = 0;
+  array->zero_terminated = (zero_terminated ? 1 : 0);
+  array->clear           = (clear ? 1 : 0);
+  array->elt_size        = elt_size;
+
+  if (array->zero_terminated || reserved_size != 0)
+    {
+      g_array_maybe_expand (array, reserved_size);
+      g_array_zero_terminate(array);
+    }
+
+  return (GArray*) array;
+}
+
+gchar*
+g_array_free (GArray  *array,
+	      gboolean free_segment)
+{
+  gchar* segment;
+
+  g_return_val_if_fail (array, NULL);
+
+  if (free_segment)
+    {
+      g_free (array->data);
+      segment = NULL;
+    }
+  else
+    segment = array->data;
+
+  G_LOCK (array_mem_chunk);
+  g_mem_chunk_free (array_mem_chunk, array);
+  G_UNLOCK (array_mem_chunk);
+
+  return segment;
+}
+
+GArray*
+g_array_append_vals (GArray       *farray,
+		     gconstpointer data,
+		     guint         len)
+{
+  GRealArray *array = (GRealArray*) farray;
+
+  g_array_maybe_expand (array, len);
+
+  memcpy (g_array_elt_pos (array, array->len), data, 
+	  g_array_elt_len (array, len));
+
+  array->len += len;
+
+  g_array_zero_terminate (array);
+
+  return farray;
+}
+
+GArray*
+g_array_prepend_vals (GArray        *farray,
+		      gconstpointer  data,
+		      guint          len)
+{
+  GRealArray *array = (GRealArray*) farray;
+
+  g_array_maybe_expand (array, len);
+
+  g_memmove (g_array_elt_pos (array, len), g_array_elt_pos (array, 0), 
+	     g_array_elt_len (array, array->len));
+
+  memcpy (g_array_elt_pos (array, 0), data, g_array_elt_len (array, len));
+
+  array->len += len;
+
+  g_array_zero_terminate (array);
+
+  return farray;
+}
+
+GArray*
+g_array_insert_vals (GArray        *farray,
+		     guint          index,
+		     gconstpointer  data,
+		     guint          len)
+{
+  GRealArray *array = (GRealArray*) farray;
+
+  g_array_maybe_expand (array, len);
+
+  g_memmove (g_array_elt_pos (array, len + index), 
+	     g_array_elt_pos (array, index), 
+	     g_array_elt_len (array, array->len - index));
+
+  memcpy (g_array_elt_pos (array, index), data, g_array_elt_len (array, len));
+
+  array->len += len;
+
+  g_array_zero_terminate (array);
+
+  return farray;
+}
+
+GArray*
+g_array_set_size (GArray *farray,
+		  guint   length)
+{
+  GRealArray *array = (GRealArray*) farray;
+  if (length > array->len)
+    {
+      g_array_maybe_expand (array, length - array->len);
+      
+      if (array->clear)
+	g_array_elt_zero (array, array->len, length - array->len);
+    }
+#ifdef ENABLE_GC_FRIENDLY  
+  else if (length < array->len)
+    g_array_elt_zero (array, length, array->len - length);
+#endif /* ENABLE_GC_FRIENDLY */  
+  
+  array->len = length;
+  
+  g_array_zero_terminate (array);
+  
+  return farray;
+}
+
+GArray*
+g_array_remove_index (GArray* farray,
+		      guint index)
+{
+  GRealArray* array = (GRealArray*) farray;
+
+  g_return_val_if_fail (array, NULL);
+
+  g_return_val_if_fail (index < array->len, NULL);
+
+  if (index != array->len - 1)
+    g_memmove (g_array_elt_pos (array, index),
+	       g_array_elt_pos (array, index + 1),
+	       g_array_elt_len (array, array->len - index - 1));
+  
+  array->len -= 1;
+
+#ifdef ENABLE_GC_FRIENDLY
+  g_array_elt_zero (array, array->len, 1);
+#else /* !ENABLE_GC_FRIENDLY */
+  g_array_zero_terminate (array);
+#endif /* ENABLE_GC_FRIENDLY */  
+
+  return farray;
+}
+
+GArray*
+g_array_remove_index_fast (GArray* farray,
+			   guint   index)
+{
+  GRealArray* array = (GRealArray*) farray;
+
+  g_return_val_if_fail (array, NULL);
+
+  g_return_val_if_fail (index < array->len, NULL);
+
+  if (index != array->len - 1)
+    memcpy (g_array_elt_pos (array, index), 
+	    g_array_elt_pos (array, array->len - 1),
+	    g_array_elt_len (array, 1));
+  
+  array->len -= 1;
+
+#ifdef ENABLE_GC_FRIENDLY
+  g_array_elt_zero (array, array->len, 1);
+#else /* !ENABLE_GC_FRIENDLY */
+  g_array_zero_terminate (array);
+#endif /* ENABLE_GC_FRIENDLY */  
+
+  return farray;
+}
+
+void
+g_array_sort (GArray       *farray,
+	      GCompareFunc  compare_func)
+{
+  GRealArray *array = (GRealArray*) farray;
+
+  g_return_if_fail (array != NULL);
+  g_return_if_fail (array->data != NULL);
+
+  qsort (array->data,
+	 array->len,
+	 array->elt_size,
+	 compare_func);
+}
+
+void
+g_array_sort_with_data (GArray           *farray,
+			GCompareDataFunc  compare_func,
+			gpointer          user_data)
+{
+  GRealArray *array = (GRealArray*) farray;
+
+  g_return_if_fail (array != NULL);
+  g_return_if_fail (array->data != NULL);
+
+  g_qsort_with_data (array->data,
+		     array->len,
+		     array->elt_size,
+		     compare_func,
+		     user_data);
+}
+
+
+static gint
+g_nearest_pow (gint num)
+{
+  gint n = 1;
+
+  while (n < num)
+    n <<= 1;
+
+  return n;
+}
+
+static void
+g_array_maybe_expand (GRealArray *array,
+		      gint        len)
+{
+  guint want_alloc = g_array_elt_len (array, array->len + len + 
+				      array->zero_terminated);
+
+  if (want_alloc > array->alloc)
+    {
+      want_alloc = g_nearest_pow (want_alloc);
+      want_alloc = MAX (want_alloc, MIN_ARRAY_SIZE);
+
+      array->data = g_realloc (array->data, want_alloc);
+
+#ifdef ENABLE_GC_FRIENDLY
+      memset (array->data + array->alloc, 0, want_alloc - array->alloc);
+#endif /* ENABLE_GC_FRIENDLY */
+
+      array->alloc = want_alloc;
+    }
+}
+
+/* Pointer Array
+ */
+
+typedef struct _GRealPtrArray  GRealPtrArray;
+
+struct _GRealPtrArray
+{
+  gpointer *pdata;
+  guint     len;
+  guint     alloc;
+};
+
+static void g_ptr_array_maybe_expand (GRealPtrArray *array,
+				      gint           len);
+
+static GMemChunk *ptr_array_mem_chunk = NULL;
+G_LOCK_DEFINE_STATIC (ptr_array_mem_chunk);
+
+
+GPtrArray*
+g_ptr_array_new (void)
+{
+  return g_ptr_array_sized_new (0);
+}
+
+GPtrArray*  
+g_ptr_array_sized_new (guint reserved_size)
+{
+  GRealPtrArray *array;
+
+  G_LOCK (ptr_array_mem_chunk);
+  if (!ptr_array_mem_chunk)
+    ptr_array_mem_chunk = g_mem_chunk_new ("array mem chunk",
+					   sizeof (GRealPtrArray),
+					   1024, G_ALLOC_AND_FREE);
+
+  array = g_chunk_new (GRealPtrArray, ptr_array_mem_chunk);
+  G_UNLOCK (ptr_array_mem_chunk);
+
+  array->pdata = NULL;
+  array->len = 0;
+  array->alloc = 0;
+
+  if (reserved_size != 0)
+    g_ptr_array_maybe_expand (array, reserved_size);
+
+  return (GPtrArray*) array;  
+}
+
+gpointer*
+g_ptr_array_free (GPtrArray   *array,
+		  gboolean  free_segment)
+{
+  gpointer* segment;
+
+  g_return_val_if_fail (array, NULL);
+
+  if (free_segment)
+    {
+      g_free (array->pdata);
+      segment = NULL;
+    }
+  else
+    segment = array->pdata;
+
+  G_LOCK (ptr_array_mem_chunk);
+  g_mem_chunk_free (ptr_array_mem_chunk, array);
+  G_UNLOCK (ptr_array_mem_chunk);
+
+  return segment;
+}
+
+static void
+g_ptr_array_maybe_expand (GRealPtrArray *array,
+			  gint        len)
+{
+  if ((array->len + len) > array->alloc)
+    {
+#ifdef ENABLE_GC_FRIENDLY
+      guint old_alloc = array->alloc;
+#endif /* ENABLE_GC_FRIENDLY */
+      array->alloc = g_nearest_pow (array->len + len);
+      array->alloc = MAX (array->alloc, MIN_ARRAY_SIZE);
+      array->pdata = g_realloc (array->pdata, sizeof(gpointer) * array->alloc);
+#ifdef ENABLE_GC_FRIENDLY
+      for ( ; old_alloc < array->alloc; old_alloc++)
+	array->pdata [old_alloc] = NULL;
+#endif /* ENABLE_GC_FRIENDLY */
+    }
+}
+
+void
+g_ptr_array_set_size  (GPtrArray   *farray,
+		       gint	     length)
+{
+  GRealPtrArray* array = (GRealPtrArray*) farray;
+
+  g_return_if_fail (array);
+
+  if (length > array->len)
+    {
+      int i;
+      g_ptr_array_maybe_expand (array, (length - array->len));
+      /* This is not 
+       *     memset (array->pdata + array->len, 0,
+       *            sizeof (gpointer) * (length - array->len));
+       * to make it really portable. Remember (void*)NULL needn't be
+       * bitwise zero. It of course is silly not to use memset (..,0,..).
+       */
+      for (i = array->len; i < length; i++)
+	array->pdata[i] = NULL;
+    }
+#ifdef ENABLE_GC_FRIENDLY  
+  else if (length < array->len)
+    {
+      int i;
+      for (i = length; i < array->len; i++)
+	array->pdata[i] = NULL;
+    }
+#endif /* ENABLE_GC_FRIENDLY */  
+
+  array->len = length;
+}
+
+gpointer
+g_ptr_array_remove_index (GPtrArray* farray,
+			  guint      index)
+{
+  GRealPtrArray* array = (GRealPtrArray*) farray;
+  gpointer result;
+
+  g_return_val_if_fail (array, NULL);
+
+  g_return_val_if_fail (index < array->len, NULL);
+
+  result = array->pdata[index];
+  
+  if (index != array->len - 1)
+    g_memmove (array->pdata + index, array->pdata + index + 1, 
+	       sizeof (gpointer) * (array->len - index - 1));
+  
+  array->len -= 1;
+
+#ifdef ENABLE_GC_FRIENDLY  
+  array->pdata[array->len] = NULL;
+#endif /* ENABLE_GC_FRIENDLY */  
+
+  return result;
+}
+
+gpointer
+g_ptr_array_remove_index_fast (GPtrArray* farray,
+			       guint      index)
+{
+  GRealPtrArray* array = (GRealPtrArray*) farray;
+  gpointer result;
+
+  g_return_val_if_fail (array, NULL);
+
+  g_return_val_if_fail (index < array->len, NULL);
+
+  result = array->pdata[index];
+  
+  if (index != array->len - 1)
+    array->pdata[index] = array->pdata[array->len - 1];
+
+  array->len -= 1;
+
+#ifdef ENABLE_GC_FRIENDLY  
+  array->pdata[array->len] = NULL;
+#endif /* ENABLE_GC_FRIENDLY */  
+
+  return result;
+}
+
+gboolean
+g_ptr_array_remove (GPtrArray* farray,
+		    gpointer data)
+{
+  GRealPtrArray* array = (GRealPtrArray*) farray;
+  guint i;
+
+  g_return_val_if_fail (array, FALSE);
+
+  for (i = 0; i < array->len; i += 1)
+    {
+      if (array->pdata[i] == data)
+	{
+	  g_ptr_array_remove_index (farray, i);
+	  return TRUE;
+	}
+    }
+
+  return FALSE;
+}
+
+gboolean
+g_ptr_array_remove_fast (GPtrArray* farray,
+			 gpointer data)
+{
+  GRealPtrArray* array = (GRealPtrArray*) farray;
+  guint i;
+
+  g_return_val_if_fail (array, FALSE);
+
+  for (i = 0; i < array->len; i += 1)
+    {
+      if (array->pdata[i] == data)
+	{
+	  g_ptr_array_remove_index_fast (farray, i);
+	  return TRUE;
+	}
+    }
+
+  return FALSE;
+}
+
+void
+g_ptr_array_add (GPtrArray* farray,
+		 gpointer data)
+{
+  GRealPtrArray* array = (GRealPtrArray*) farray;
+
+  g_return_if_fail (array);
+
+  g_ptr_array_maybe_expand (array, 1);
+
+  array->pdata[array->len++] = data;
+}
+
+void
+g_ptr_array_sort (GPtrArray    *array,
+		  GCompareFunc  compare_func)
+{
+  g_return_if_fail (array != NULL);
+  g_return_if_fail (array->pdata != NULL);
+
+  qsort (array->pdata,
+	 array->len,
+	 sizeof (gpointer),
+	 compare_func);
+}
+
+void
+g_ptr_array_sort_with_data (GPtrArray        *array,
+			    GCompareDataFunc  compare_func,
+			    gpointer          user_data)
+{
+  g_return_if_fail (array != NULL);
+  g_return_if_fail (array->pdata != NULL);
+
+  g_qsort_with_data (array->pdata,
+		     array->len,
+		     sizeof (gpointer),
+		     compare_func,
+		     user_data);
+}
+
+/* Byte arrays 
+ */
+
+GByteArray* g_byte_array_new      (void)
+{
+  return (GByteArray*) g_array_sized_new (FALSE, FALSE, 1, 0);
+}
+
+GByteArray* g_byte_array_sized_new (guint reserved_size)
+{
+  return (GByteArray*) g_array_sized_new (FALSE, FALSE, 1, reserved_size);
+}
+
+guint8*	    g_byte_array_free     (GByteArray *array,
+			           gboolean    free_segment)
+{
+  return (guint8*) g_array_free ((GArray*) array, free_segment);
+}
+
+GByteArray* g_byte_array_append   (GByteArray *array,
+				   const guint8 *data,
+				   guint       len)
+{
+  g_array_append_vals ((GArray*) array, (guint8*)data, len);
+
+  return array;
+}
+
+GByteArray* g_byte_array_prepend  (GByteArray *array,
+				   const guint8 *data,
+				   guint       len)
+{
+  g_array_prepend_vals ((GArray*) array, (guint8*)data, len);
+
+  return array;
+}
+
+GByteArray* g_byte_array_set_size (GByteArray *array,
+				   guint       length)
+{
+  g_array_set_size ((GArray*) array, length);
+
+  return array;
+}
+
+GByteArray* g_byte_array_remove_index (GByteArray *array,
+				       guint index)
+{
+  g_array_remove_index((GArray*) array, index);
+
+  return array;
+}
+
+GByteArray* g_byte_array_remove_index_fast (GByteArray *array,
+					    guint index)
+{
+  g_array_remove_index_fast((GArray*) array, index);
+
+  return array;
+}
+
+void
+g_byte_array_sort (GByteArray   *array,
+		   GCompareFunc  compare_func)
+{
+  g_array_sort ((GArray *) array, compare_func);
+}
+
+void
+g_byte_array_sort_with_data (GByteArray       *array,
+			     GCompareDataFunc  compare_func,
+			     gpointer          user_data)
+{
+  g_array_sort_with_data ((GArray *) array, compare_func, user_data);
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/garray.h b/graf2d/win32gdk/gdk/src/glib/garray.h
index 30189d06c99..56b3937fef0 100644
--- a/graf2d/win32gdk/gdk/src/glib/garray.h
+++ b/graf2d/win32gdk/gdk/src/glib/garray.h
@@ -27,7 +27,7 @@
 #ifndef __G_ARRAY_H__
 #define __G_ARRAY_H__
 
-#include <g_types.h>
+#include <glib/gtypes.h>
 
 G_BEGIN_DECLS
 
@@ -58,9 +58,9 @@ struct _GPtrArray
  * order by moving the last element to the position of the removed 
  */
 
-#define g_array_append_val(a,v)	  g_array_append_vals (a, &v, 1)
-#define g_array_prepend_val(a,v)  g_array_prepend_vals (a, &v, 1)
-#define g_array_insert_val(a,i,v) g_array_insert_vals (a, i, &v, 1)
+#define g_array_append_val(a,v)	  g_array_append_vals (a, &(v), 1)
+#define g_array_prepend_val(a,v)  g_array_prepend_vals (a, &(v), 1)
+#define g_array_insert_val(a,i,v) g_array_insert_vals (a, i, &(v), 1)
 #define g_array_index(a,t,i)      (((t*) (a)->data) [(i)])
 
 GArray* g_array_new               (gboolean          zero_terminated,
@@ -91,7 +91,7 @@ GArray* g_array_remove_index_fast (GArray           *array,
 void    g_array_sort              (GArray           *array,
 				   GCompareFunc      compare_func);
 void    g_array_sort_with_data    (GArray           *array,
-				   GCompareFuncData  compare_func,
+				   GCompareDataFunc  compare_func,
 				   gpointer          user_data);
 
 /* Resizable pointer array.  This interface is much less complicated
@@ -119,7 +119,7 @@ void       g_ptr_array_add                (GPtrArray        *array,
 void       g_ptr_array_sort               (GPtrArray        *array,
 					   GCompareFunc      compare_func);
 void       g_ptr_array_sort_with_data     (GPtrArray        *array,
-					   GCompareFuncData  compare_func,
+					   GCompareDataFunc  compare_func,
 					   gpointer          user_data);
 
 
@@ -146,7 +146,7 @@ GByteArray* g_byte_array_remove_index_fast (GByteArray       *array,
 void        g_byte_array_sort              (GByteArray       *array,
 					    GCompareFunc      compare_func);
 void        g_byte_array_sort_with_data    (GByteArray       *array,
-					    GCompareFuncData  compare_func,
+					    GCompareDataFunc  compare_func,
 					    gpointer          user_data);
 
 
diff --git a/graf2d/win32gdk/gdk/src/glib/gasyncqueue.c b/graf2d/win32gdk/gdk/src/glib/gasyncqueue.c
new file mode 100644
index 00000000000..cb966b0ee0d
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gasyncqueue.c
@@ -0,0 +1,443 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * GAsyncQueue: asynchronous queue implementation, based on Gqueue.
+ * Copyright (C) 2000 Sebastian Wilhelmi; University of Karlsruhe
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * MT safe
+ */
+
+#include "glib.h"
+
+struct _GAsyncQueue
+{
+  GMutex *mutex;
+  GCond *cond;
+  GQueue *queue;
+  guint waiting_threads;
+  guint ref_count;
+};
+
+/**
+ * g_async_queue_new:
+ * 
+ * Creates a new asynchronous queue with the initial reference count of 1.
+ * 
+ * Return value: the new #GAsyncQueue.
+ **/
+GAsyncQueue*
+g_async_queue_new ()
+{
+  GAsyncQueue* retval = g_new (GAsyncQueue, 1);
+  retval->mutex = g_mutex_new ();
+  retval->cond = g_cond_new ();
+  retval->queue = g_queue_new ();
+  retval->waiting_threads = 0;
+  retval->ref_count = 1;
+  return retval;
+}
+
+/**
+ * g_async_queue_ref:
+ * @queue: a #GAsyncQueue.
+ *
+ * Increases the reference count of the asynchronous @queue by 1.
+ **/
+void 
+g_async_queue_ref (GAsyncQueue *queue)
+{
+  g_return_if_fail (queue);
+  g_return_if_fail (queue->ref_count > 0);
+  
+  g_mutex_lock (queue->mutex);
+  queue->ref_count++;
+  g_mutex_unlock (queue->mutex);
+}
+
+/**
+ * g_async_queue_ref_unlocked:
+ * @queue: a #GAsyncQueue.
+ * 
+ * Increases the reference count of the asynchronous @queue by 1. This
+ * function must be called while holding the @queue's lock.
+ **/
+void 
+g_async_queue_ref_unlocked (GAsyncQueue *queue)
+{
+  g_return_if_fail (queue);
+  g_return_if_fail (queue->ref_count > 0);
+  
+  queue->ref_count++;
+}
+
+/**
+ * g_async_queue_unref_and_unlock:
+ * @queue: a #GAsyncQueue.
+ * 
+ * Decreases the reference count of the asynchronous @queue by 1 and
+ * releases the lock. This function must be called while holding the
+ * @queue's lock. If the reference count went to 0, the @queue will be
+ * destroyed and the memory allocated will be freed. So you are not
+ * allowed to use the @queue afterwards, as it might have disappeared.
+ * The obvious asymmetry (it is not named
+ * g_async_queue_unref_unlocked) is because the queue can't be
+ * unlocked after dereffing it, as it might already have disappeared.
+ **/
+void 
+g_async_queue_unref_and_unlock (GAsyncQueue *queue)
+{
+  gboolean stop;
+
+  g_return_if_fail (queue);
+  g_return_if_fail (queue->ref_count > 0);
+
+  queue->ref_count--;
+  stop = (queue->ref_count == 0);
+  g_mutex_unlock (queue->mutex);
+  
+  if (stop)
+    {
+      g_return_if_fail (queue->waiting_threads == 0);
+      g_mutex_free (queue->mutex);
+      g_cond_free (queue->cond);
+      g_queue_free (queue->queue);
+      g_free (queue);
+    }
+}
+
+/**
+ * g_async_queue_unref:
+ * @queue: a #GAsyncQueue.
+ * 
+ * Decreases the reference count of the asynchronous @queue by 1. If
+ * the reference count went to 0, the @queue will be destroyed and the
+ * memory allocated will be freed. So you are not allowed to use the
+ * @queue afterwards, as it might have disappeared.
+ **/
+void 
+g_async_queue_unref (GAsyncQueue *queue)
+{
+  g_return_if_fail (queue);
+  g_return_if_fail (queue->ref_count > 0);
+
+  g_mutex_lock (queue->mutex);
+  g_async_queue_unref_and_unlock (queue);
+}
+
+/**
+ * g_async_queue_lock:
+ * @queue: a #GAsyncQueue.
+ * 
+ * Acquire the @queue's lock. After that you can only call the
+ * g_async_queue_*_unlocked function variants on that
+ * @queue. Otherwise it will deadlock.
+ **/
+void
+g_async_queue_lock (GAsyncQueue *queue)
+{
+  g_return_if_fail (queue);
+  g_return_if_fail (queue->ref_count > 0);
+
+  g_mutex_lock (queue->mutex);
+}
+
+/**
+ * g_async_queue_unlock:
+ * @queue: a #GAsyncQueue.
+ * 
+ * Release the queue's lock.
+ **/
+void 
+g_async_queue_unlock (GAsyncQueue *queue)
+{
+  g_return_if_fail (queue);
+  g_return_if_fail (queue->ref_count > 0);
+
+  g_mutex_unlock (queue->mutex);
+}
+
+/**
+ * g_async_queue_push:
+ * @queue: a #GAsyncQueue.
+ * @data: @data to push into the @queue.
+ *
+ * Push the @data into the @queue. @data must not be #NULL.
+ **/
+void
+g_async_queue_push (GAsyncQueue* queue, gpointer data)
+{
+  g_return_if_fail (queue);
+  g_return_if_fail (queue->ref_count > 0);
+  g_return_if_fail (data);
+
+  g_mutex_lock (queue->mutex);
+  g_async_queue_push_unlocked (queue, data);
+  g_mutex_unlock (queue->mutex);
+}
+
+/**
+ * g_async_queue_push_unlocked:
+ * @queue: a #GAsyncQueue.
+ * @data: @data to push into the @queue.
+ * 
+ * Push the @data into the @queue. @data must not be #NULL. This
+ * function must be called while holding the @queue's lock.
+ **/
+void
+g_async_queue_push_unlocked (GAsyncQueue* queue, gpointer data)
+{
+  g_return_if_fail (queue);
+  g_return_if_fail (queue->ref_count > 0);
+  g_return_if_fail (data);
+
+  g_queue_push_head (queue->queue, data);
+  g_cond_signal (queue->cond);
+}
+
+static gpointer
+g_async_queue_pop_intern_unlocked (GAsyncQueue* queue, gboolean tryit, 
+				   GTimeVal *end_time)
+{
+  gpointer retval;
+
+  if (!g_queue_peek_tail (queue->queue))
+    {
+      if (tryit)
+	return NULL;
+      if (!end_time)
+        {
+          queue->waiting_threads++;
+	  while (!g_queue_peek_tail (queue->queue))
+            g_cond_wait(queue->cond, queue->mutex);
+          queue->waiting_threads--;
+        }
+      else
+        {
+          queue->waiting_threads++;
+          while (!g_queue_peek_tail (queue->queue))
+            if (!g_cond_timed_wait (queue->cond, queue->mutex, end_time))
+              break;
+          queue->waiting_threads--;
+          if (!g_queue_peek_tail (queue->queue))
+	    return NULL;
+        }
+    }
+
+  retval = g_queue_pop_tail (queue->queue);
+
+  g_assert (retval);
+
+  return retval;
+}
+
+/**
+ * g_async_queue_pop:
+ * @queue: a #GAsyncQueue.
+ * 
+ * Pop data from the @queue. This function blocks until data become
+ * available.
+ *
+ * Return value: data from the queue.
+ **/
+gpointer
+g_async_queue_pop (GAsyncQueue* queue)
+{
+  gpointer retval;
+
+  g_return_val_if_fail (queue, NULL);
+  g_return_val_if_fail (queue->ref_count > 0, NULL);
+
+  g_mutex_lock (queue->mutex);
+  retval = g_async_queue_pop_intern_unlocked (queue, FALSE, NULL);
+  g_mutex_unlock (queue->mutex);
+
+  return retval;
+}
+
+/**
+ * g_async_queue_pop_unlocked:
+ * @queue: a #GAsyncQueue.
+ * 
+ * Pop data from the @queue. This function blocks until data become
+ * available. This function must be called while holding the @queue's
+ * lock.
+ *
+ * Return value: data from the queue.
+ **/
+gpointer
+g_async_queue_pop_unlocked (GAsyncQueue* queue)
+{
+  g_return_val_if_fail (queue, NULL);
+  g_return_val_if_fail (queue->ref_count > 0, NULL);
+
+  return g_async_queue_pop_intern_unlocked (queue, FALSE, NULL);
+}
+
+/**
+ * g_async_queue_try_pop:
+ * @queue: a #GAsyncQueue.
+ * 
+ * Try to pop data from the @queue. If no data is available, #NULL is
+ * returned.
+ *
+ * Return value: data from the queue or #NULL, when no data is
+ * available immediately.
+ **/
+gpointer
+g_async_queue_try_pop (GAsyncQueue* queue)
+{
+  gpointer retval;
+
+  g_return_val_if_fail (queue, NULL);
+  g_return_val_if_fail (queue->ref_count > 0, NULL);
+
+  g_mutex_lock (queue->mutex);
+  retval = g_async_queue_pop_intern_unlocked (queue, TRUE, NULL);
+  g_mutex_unlock (queue->mutex);
+
+  return retval;
+}
+
+/**
+ * g_async_queue_try_pop_unlocked:
+ * @queue: a #GAsyncQueue.
+ * 
+ * Try to pop data from the @queue. If no data is available, #NULL is
+ * returned. This function must be called while holding the @queue's
+ * lock.
+ *
+ * Return value: data from the queue or #NULL, when no data is
+ * available immediately.
+ **/
+gpointer
+g_async_queue_try_pop_unlocked (GAsyncQueue* queue)
+{
+  g_return_val_if_fail (queue, NULL);
+  g_return_val_if_fail (queue->ref_count > 0, NULL);
+
+  return g_async_queue_pop_intern_unlocked (queue, TRUE, NULL);
+}
+
+/**
+ * g_async_queue_timed_pop:
+ * @queue: a #GAsyncQueue.
+ * @end_time: a #GTimeVal, determining the final time.
+ *
+ * Pop data from the @queue. If no data is received before @end_time,
+ * #NULL is returned.
+ *
+ * To easily calculate @end_time a combination of g_get_current_time()
+ * and g_time_val_add() can be used.
+ *
+ * Return value: data from the queue or #NULL, when no data is
+ * received before @end_time.
+ **/
+gpointer
+g_async_queue_timed_pop (GAsyncQueue* queue, GTimeVal *end_time)
+{
+  gpointer retval;
+
+  g_return_val_if_fail (queue, NULL);
+  g_return_val_if_fail (queue->ref_count > 0, NULL);
+
+  g_mutex_lock (queue->mutex);
+  retval = g_async_queue_pop_intern_unlocked (queue, FALSE, end_time);
+  g_mutex_unlock (queue->mutex);
+
+  return retval;  
+}
+
+/**
+ * g_async_queue_timed_pop_unlocked:
+ * @queue: a #GAsyncQueue.
+ * @end_time: a #GTimeVal, determining the final time.
+ *
+ * Pop data from the @queue. If no data is received before @end_time,
+ * #NULL is returned. This function must be called while holding the
+ * @queue's lock.
+ *
+ * To easily calculate @end_time a combination of g_get_current_time()
+ * and g_time_val_add() can be used.
+ *
+ * Return value: data from the queue or #NULL, when no data is
+ * received before @end_time.
+ **/
+gpointer
+g_async_queue_timed_pop_unlocked (GAsyncQueue* queue, GTimeVal *end_time)
+{
+  g_return_val_if_fail (queue, NULL);
+  g_return_val_if_fail (queue->ref_count > 0, NULL);
+
+  return g_async_queue_pop_intern_unlocked (queue, FALSE, end_time);
+}
+
+/**
+ * g_async_queue_length:
+ * @queue: a #GAsyncQueue.
+ * 
+ * Returns the length of the queue, negative values mean waiting
+ * threads, positive values mean available entries in the
+ * @queue. Actually this function returns the number of data items in
+ * the queue minus the number of waiting threads. Thus a return value
+ * of 0 could mean 'n' entries in the queue and 'n' thread waiting.
+ * That can happen due to locking of the queue or due to
+ * scheduling.  
+ *
+ * Return value: the length of the @queue.
+ **/
+gint
+g_async_queue_length (GAsyncQueue* queue)
+{
+  gint retval;
+
+  g_return_val_if_fail (queue, 0);
+  g_return_val_if_fail (queue->ref_count > 0, 0);
+
+  g_mutex_lock (queue->mutex);
+  retval = queue->queue->length - queue->waiting_threads;
+  g_mutex_unlock (queue->mutex);
+
+  return retval;
+}
+
+/**
+ * g_async_queue_length_unlocked:
+ * @queue: a #GAsyncQueue.
+ * 
+ * Returns the length of the queue, negative values mean waiting
+ * threads, positive values mean available entries in the
+ * @queue. Actually this function returns the number of data items in
+ * the queue minus the number of waiting threads. Thus a return value
+ * of 0 could mean 'n' entries in the queue and 'n' thread waiting.
+ * That can happen due to locking of the queue or due to
+ * scheduling. This function must be called while holding the @queue's
+ * lock.
+ *
+ * Return value: the length of the @queue.
+ **/
+gint
+g_async_queue_length_unlocked (GAsyncQueue* queue)
+{
+  g_return_val_if_fail (queue, 0);
+  g_return_val_if_fail (queue->ref_count > 0, 0);
+
+  return queue->queue->length - queue->waiting_threads;
+}
+
diff --git a/graf2d/win32gdk/gdk/src/glib/gasyncqueue.h b/graf2d/win32gdk/gdk/src/glib/gasyncqueue.h
index 6e87425f7a8..0f1a80db996 100644
--- a/graf2d/win32gdk/gdk/src/glib/gasyncqueue.h
+++ b/graf2d/win32gdk/gdk/src/glib/gasyncqueue.h
@@ -27,7 +27,7 @@
 #ifndef __G_ASYNCQUEUE_H__
 #define __G_ASYNCQUEUE_H__
 
-#include <gthread.h>
+#include <glib/gthread.h>
 
 G_BEGIN_DECLS
 
diff --git a/graf2d/win32gdk/gdk/src/glib/gbacktrace.c b/graf2d/win32gdk/gdk/src/glib/gbacktrace.c
new file mode 100644
index 00000000000..7d131af7407
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gbacktrace.c
@@ -0,0 +1,300 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe ; except for g_on_error_stack_trace, but who wants thread safety 
+ * then
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <signal.h>
+#include <stdarg.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include "glib.h"
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_TIMES_H
+#include <sys/times.h>
+#endif
+#include <sys/types.h>
+
+#include <time.h>
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#endif /* HAVE_SYS_SELECT_H */
+
+#ifdef STDC_HEADERS
+#include <string.h> /* for bzero on BSD systems */
+#endif
+
+#ifdef G_OS_WIN32
+#  define STRICT		/* Strict typing, please */
+#  include <windows.h>
+#  undef STRICT
+#endif
+
+#ifndef NO_FD_SET
+#  define SELECT_MASK fd_set
+#else
+#  if defined(_IBMR2)
+#    define SELECT_MASK void
+#  else
+#    define SELECT_MASK int
+#  endif
+#endif
+
+
+#ifndef G_OS_WIN32
+static void stack_trace (char **args);
+#endif
+
+extern volatile gboolean glib_on_error_halt;
+volatile gboolean glib_on_error_halt = TRUE;
+
+void
+g_on_error_query (const gchar *prg_name)
+{
+#ifndef G_OS_WIN32
+  static const gchar *query1 = "[E]xit, [H]alt";
+  static const gchar *query2 = ", show [S]tack trace";
+  static const gchar *query3 = " or [P]roceed";
+  gchar buf[16];
+
+  if (!prg_name)
+    prg_name = g_get_prgname ();
+  
+ retry:
+  
+  if (prg_name)
+    fprintf (stdout,
+	     "%s (pid:%u): %s%s%s: ",
+	     prg_name,
+	     (guint) getpid (),
+	     query1,
+	     query2,
+	     query3);
+  else
+    fprintf (stdout,
+	     "(process:%u): %s%s: ",
+	     (guint) getpid (),
+	     query1,
+	     query3);
+  fflush (stdout);
+  
+  if (isatty(0) && isatty(1))
+    fgets (buf, 8, stdin); 
+  else
+    strcpy (buf, "E\n");
+
+  if ((buf[0] == 'E' || buf[0] == 'e')
+      && buf[1] == '\n')
+    _exit (0);
+  else if ((buf[0] == 'P' || buf[0] == 'p')
+	   && buf[1] == '\n')
+    return;
+  else if (prg_name
+	   && (buf[0] == 'S' || buf[0] == 's')
+	   && buf[1] == '\n')
+    {
+      g_on_error_stack_trace (prg_name);
+      goto retry;
+    }
+  else if ((buf[0] == 'H' || buf[0] == 'h')
+	   && buf[1] == '\n')
+    {
+      while (glib_on_error_halt)
+	;
+      glib_on_error_halt = TRUE;
+      return;
+    }
+  else
+    goto retry;
+#else
+  if (!prg_name)
+    prg_name = g_get_prgname ();
+  
+  MessageBox (NULL, "g_on_error_query called, program terminating",
+	      (prg_name && *prg_name) ? prg_name : NULL,
+	      MB_OK|MB_ICONERROR);
+  _exit(0);
+#endif
+}
+
+void
+g_on_error_stack_trace (const gchar *prg_name)
+{
+#ifdef G_OS_UNIX
+  pid_t pid;
+  gchar buf[16];
+  gchar *args[4] = { "gdb", NULL, NULL, NULL };
+
+  if (!prg_name)
+    return;
+
+  sprintf (buf, "%u", (guint) getpid ());
+
+  args[1] = (gchar*) prg_name;
+  args[2] = buf;
+
+  pid = fork ();
+  if (pid == 0)
+    {
+      stack_trace (args);
+      _exit (0);
+    }
+  else if (pid == (pid_t) -1)
+    {
+      perror ("unable to fork gdb");
+      return;
+    }
+  
+  while (glib_on_error_halt)
+    ;
+  glib_on_error_halt = TRUE;
+#else
+  abort ();
+#endif
+}
+
+#ifndef G_OS_WIN32
+
+static gboolean stack_trace_done = FALSE;
+
+static void
+stack_trace_sigchld (int signum)
+{
+  stack_trace_done = TRUE;
+}
+
+static void
+stack_trace (char **args)
+{
+  pid_t pid;
+  int in_fd[2];
+  int out_fd[2];
+  SELECT_MASK fdset;
+  SELECT_MASK readset;
+  struct timeval tv;
+  int sel, index, state;
+  char buffer[256];
+  char c;
+
+  stack_trace_done = FALSE;
+  signal (SIGCHLD, stack_trace_sigchld);
+
+  if ((pipe (in_fd) == -1) || (pipe (out_fd) == -1))
+    {
+      perror ("unable to open pipe");
+      _exit (0);
+    }
+
+  pid = fork ();
+  if (pid == 0)
+    {
+      close (0); dup (in_fd[0]);   /* set the stdin to the in pipe */
+      close (1); dup (out_fd[1]);  /* set the stdout to the out pipe */
+      close (2); dup (out_fd[1]);  /* set the stderr to the out pipe */
+
+      execvp (args[0], args);      /* exec gdb */
+      perror ("exec failed");
+      _exit (0);
+    }
+  else if (pid == (pid_t) -1)
+    {
+      perror ("unable to fork");
+      _exit (0);
+    }
+
+  FD_ZERO (&fdset);
+  FD_SET (out_fd[0], &fdset);
+
+  write (in_fd[1], "backtrace\n", 10);
+  write (in_fd[1], "p x = 0\n", 8);
+  write (in_fd[1], "quit\n", 5);
+
+  index = 0;
+  state = 0;
+
+  while (1)
+    {
+      readset = fdset;
+      tv.tv_sec = 1;
+      tv.tv_usec = 0;
+
+      sel = select (FD_SETSIZE, &readset, NULL, NULL, &tv);
+      if (sel == -1)
+        break;
+
+      if ((sel > 0) && (FD_ISSET (out_fd[0], &readset)))
+        {
+          if (read (out_fd[0], &c, 1))
+            {
+              switch (state)
+                {
+                case 0:
+                  if (c == '#')
+                    {
+                      state = 1;
+                      index = 0;
+                      buffer[index++] = c;
+                    }
+                  break;
+                case 1:
+                  buffer[index++] = c;
+                  if ((c == '\n') || (c == '\r'))
+                    {
+                      buffer[index] = 0;
+                      fprintf (stdout, "%s", buffer);
+                      state = 0;
+                      index = 0;
+                    }
+                  break;
+                default:
+                  break;
+                }
+            }
+        }
+      else if (stack_trace_done)
+        break;
+    }
+
+  close (in_fd[0]);
+  close (in_fd[1]);
+  close (out_fd[0]);
+  close (out_fd[1]);
+  _exit (0);
+}
+
+#endif /* !G_OS_WIN32 */
diff --git a/graf2d/win32gdk/gdk/src/glib/gbacktrace.h b/graf2d/win32gdk/gdk/src/glib/gbacktrace.h
index 38d667ff46a..93b51749ca9 100644
--- a/graf2d/win32gdk/gdk/src/glib/gbacktrace.h
+++ b/graf2d/win32gdk/gdk/src/glib/gbacktrace.h
@@ -27,7 +27,7 @@
 #ifndef __G_BACKTRACE_H__
 #define __G_BACKTRACE_H__
 
-#include <g_types.h>
+#include <glib/gtypes.h>
 
 G_BEGIN_DECLS
 
diff --git a/graf2d/win32gdk/gdk/src/glib/gbsearcharray.c b/graf2d/win32gdk/gdk/src/glib/gbsearcharray.c
new file mode 100644
index 00000000000..3343e8477dd
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gbsearcharray.c
@@ -0,0 +1,213 @@
+/* GObject - GLib Type, Object, Parameter and Signal Library
+ * Copyright (C) 2000-2001 Tim Janik
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+#define G_IMPLEMENT_INLINES 1
+#define __G_BSEARCHARRAY_C__
+#include "gbsearcharray.h"
+
+#include	<string.h>
+
+
+/* --- structures --- */
+GBSearchArray*
+g_bsearch_array_new (guint16             sizeof_node,
+		     GBSearchCompareFunc node_cmp_func,
+		     GBSearchArrayFlags  flags)
+{
+  GBSearchArray *barray;
+
+  g_return_val_if_fail (sizeof_node > 0, NULL);
+  g_return_val_if_fail (node_cmp_func != NULL, NULL);
+
+  barray = g_new0 (GBSearchArray, 1);
+  barray->sizeof_node = sizeof_node;
+  barray->cmp_nodes = node_cmp_func;
+  barray->flags = flags;
+
+  return barray;
+}
+
+void
+g_bsearch_array_destroy (GBSearchArray *barray)
+{
+  g_return_if_fail (barray != NULL);
+
+#if 0
+  if (barray->destroy_node)
+    while (barray->n_nodes)
+      {
+	barray->destroy_node (((guint8*) barray->nodes) + (barray->n_nodes - 1) * barray->sizeof_node);
+	barray->n_nodes--;
+      }
+#endif
+  g_free (barray->nodes);
+  g_free (barray);
+}
+
+static inline guint
+upper_power2 (guint number)
+{
+#ifdef	DISABLE_MEM_POOLS
+  return number;
+#else	/* !DISABLE_MEM_POOLS */
+  return number ? 1 << g_bit_storage (number - 1) : 0;
+#endif	/* !DISABLE_MEM_POOLS */
+}
+
+static inline gpointer
+bsearch_array_insert (GBSearchArray *barray,
+		      gconstpointer  key_node,
+		      gboolean       replace)
+{
+  gint sizeof_node;
+  guint8 *check;
+  
+  sizeof_node = barray->sizeof_node;
+  if (barray->n_nodes == 0)
+    {
+      guint new_size = barray->sizeof_node;
+      
+      if (barray->flags & G_BSEARCH_ARRAY_ALIGN_POWER2)
+	new_size = upper_power2 (new_size);
+      barray->nodes = g_realloc (barray->nodes, new_size);
+      barray->n_nodes = 1;
+      check = barray->nodes;
+    }
+  else
+    {
+      GBSearchCompareFunc cmp_nodes = barray->cmp_nodes;
+      guint n_nodes = barray->n_nodes;
+      guint8 *nodes = barray->nodes;
+      gint cmp;
+      guint i;
+      
+      nodes -= sizeof_node;
+      do
+	{
+	  i = (n_nodes + 1) >> 1;
+	  check = nodes + i * sizeof_node;
+	  cmp = cmp_nodes (key_node, check);
+	  if (cmp > 0)
+	    {
+	      n_nodes -= i;
+	      nodes = check;
+	    }
+	  else if (cmp < 0)
+	    n_nodes = i - 1;
+	  else /* if (cmp == 0) */
+	    {
+	      if (replace)
+		{
+#if 0
+		  if (barray->destroy_node)
+		    barray->destroy_node (check);
+#endif
+		  memcpy (check, key_node, sizeof_node);
+		}
+	      return check;
+	    }
+	}
+      while (n_nodes);
+      /* grow */
+      if (cmp > 0)
+	check += sizeof_node;
+      i = (check - ((guint8*) barray->nodes)) / sizeof_node;
+      n_nodes = barray->n_nodes++;
+      if (barray->flags & G_BSEARCH_ARRAY_ALIGN_POWER2)
+	{
+	  guint new_size = upper_power2 (barray->n_nodes * sizeof_node);
+	  guint old_size = upper_power2 (n_nodes * sizeof_node);
+	  
+	  if (new_size != old_size)
+	    barray->nodes = g_realloc (barray->nodes, new_size);
+	}
+      else
+	barray->nodes = g_realloc (barray->nodes, barray->n_nodes * sizeof_node);
+      check = ((guint8*) barray->nodes) + i * sizeof_node;
+      g_memmove (check + sizeof_node, check, (n_nodes - i) * sizeof_node);
+    }
+  memcpy (check, key_node, sizeof_node);
+  
+  return check;
+}
+
+gpointer
+g_bsearch_array_insert (GBSearchArray *barray,
+			gconstpointer  key_node,
+			gboolean       replace_existing)
+{
+  g_return_val_if_fail (barray != NULL, NULL);
+  g_return_val_if_fail (key_node != NULL, NULL);
+  
+  return bsearch_array_insert (barray, key_node, replace_existing);
+}
+
+void
+g_bsearch_array_remove_node (GBSearchArray *barray,
+			     gpointer       _node_in_array)
+{
+  guint8 *nodes, *bound, *node_in_array = _node_in_array;
+  guint old_size;
+  
+  g_return_if_fail (barray != NULL);
+  
+  nodes = barray->nodes;
+  old_size = barray->sizeof_node;
+  old_size *= barray->n_nodes;  /* beware of int widths */
+  bound = nodes + old_size;
+  
+  g_return_if_fail (node_in_array >= nodes && node_in_array < bound);
+
+#if 0
+  if (barray->destroy_node)
+    barray->destroy_node (node_in_array);
+#endif
+  bound -= barray->sizeof_node;
+  barray->n_nodes -= 1;
+  g_memmove (node_in_array, node_in_array + barray->sizeof_node, (bound - node_in_array) / barray->sizeof_node);
+  
+  if ((barray->flags & G_BSEARCH_ARRAY_DEFER_SHRINK) == 0)
+    {
+      guint new_size = bound - nodes;   /* old_size - barray->sizeof_node */
+      
+      if (barray->flags & G_BSEARCH_ARRAY_ALIGN_POWER2)
+	{
+	  new_size = upper_power2 (new_size);
+	  old_size = upper_power2 (old_size);
+	  if (old_size != new_size)
+	    barray->nodes = g_realloc (barray->nodes, new_size);
+	}
+      else
+	barray->nodes = g_realloc (barray->nodes, new_size);
+    }
+}
+
+void
+g_bsearch_array_remove (GBSearchArray *barray,
+			gconstpointer  key_node)
+{
+  gpointer node_in_array;
+  
+  g_return_if_fail (barray != NULL);
+  
+  node_in_array = g_bsearch_array_lookup (barray, key_node);
+  if (!node_in_array)
+    g_warning (G_STRLOC ": unable to remove unexistant node");
+  else
+    g_bsearch_array_remove_node (barray, node_in_array);
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gbsearcharray.h b/graf2d/win32gdk/gdk/src/glib/gbsearcharray.h
new file mode 100644
index 00000000000..1682a76064e
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gbsearcharray.h
@@ -0,0 +1,148 @@
+/* GObject - GLib Type, Object, Parameter and Signal Library
+ * Copyright (C) 2000-2001 Tim Janik
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
+ * Boston, MA 02111-1307, USA.
+ *
+ * gbsearcharray.h: binary searchable sorted array maintenance
+ */
+#ifndef __G_BSEARCH_ARRAY_H__
+#define __G_BSEARCH_ARRAY_H__
+
+#include        <gobject/gtype.h>
+
+G_BEGIN_DECLS
+
+/* helper macro to avoid signed overflow for value comparisions */
+#define	G_BSEARCH_ARRAY_CMP(v1,v2) ((v1) < (v2) ? -1 : (v1) > (v2))
+
+
+/* --- typedefs --- */
+typedef struct _GBSearchArray         GBSearchArray;
+typedef gint  (*GBSearchCompareFunc) (gconstpointer bsearch_node1,
+				      gconstpointer bsearch_node2);
+typedef enum
+{
+  G_BSEARCH_ARRAY_ALIGN_POWER2	= 1 << 0,
+  G_BSEARCH_ARRAY_DEFER_SHRINK	= 1 << 1
+} GBSearchArrayFlags;
+
+
+/* --- structures --- */
+struct _GBSearchArray
+{
+  GBSearchCompareFunc cmp_nodes;
+  guint16	      flags;
+  guint16             sizeof_node;
+  guint               n_nodes;
+  gpointer            nodes;
+};
+
+
+/* --- prototypes --- */
+GBSearchArray*	g_bsearch_array_new		(guint16	     sizeof_node,
+						 GBSearchCompareFunc node_cmp_func,
+						 GBSearchArrayFlags  flags);
+void		g_bsearch_array_destroy		(GBSearchArray	*barray);
+gpointer	g_bsearch_array_insert		(GBSearchArray	*barray,
+						 gconstpointer	 key_node,
+						 gboolean	 replace_existing);
+void		g_bsearch_array_remove		(GBSearchArray	*barray,
+						 gconstpointer	 key_node);
+void		g_bsearch_array_remove_node	(GBSearchArray	*barray,
+						 gpointer	 node_in_array);
+G_INLINE_FUNC
+gpointer	g_bsearch_array_lookup		(GBSearchArray	*barray,
+						 gconstpointer	 key_node);
+G_INLINE_FUNC
+gpointer	g_bsearch_array_get_nth		(GBSearchArray	*barray,
+						 guint		 n);
+G_INLINE_FUNC
+guint		g_bsearch_array_get_index	(GBSearchArray	*barray,
+						 gpointer	 node_in_array);
+
+
+/* initialization of static arrays */
+#define	G_STATIC_BSEARCH_ARRAY_INIT(sizeof_node, cmp_nodes, flags) \
+  { (cmp_nodes), (flags), (sizeof_node), 0, NULL }
+
+
+/* --- implementation details --- */
+#if defined (G_CAN_INLINE) || defined (__G_BSEARCHARRAY_C__)
+G_INLINE_FUNC gpointer
+g_bsearch_array_lookup (GBSearchArray *barray,
+			gconstpointer  key_node)
+{
+  if (barray->n_nodes > 0)
+    {
+      GBSearchCompareFunc cmp_nodes = barray->cmp_nodes;
+      gint sizeof_node = barray->sizeof_node;
+      guint n_nodes = barray->n_nodes;
+      guint8 *nodes = (guint8 *) barray->nodes;
+      
+      nodes -= sizeof_node;
+      do
+	{
+	  guint8 *check;
+	  guint i;
+	  register gint cmp;
+	  
+	  i = (n_nodes + 1) >> 1;
+	  check = nodes + i * sizeof_node;
+	  cmp = cmp_nodes (key_node, check);
+	  if (cmp == 0)
+	    return check;
+	  else if (cmp > 0)
+	    {
+	      n_nodes -= i;
+	      nodes = check;
+	    }
+	  else /* if (cmp < 0) */
+	    n_nodes = i - 1;
+	}
+      while (n_nodes);
+    }
+  
+  return NULL;
+}
+G_INLINE_FUNC gpointer
+g_bsearch_array_get_nth (GBSearchArray *barray,
+			 guint		n)
+{
+  if (n < barray->n_nodes)
+    {
+      guint8 *nodes = (guint8*) barray->nodes;
+
+      return nodes + n * barray->sizeof_node;
+    }
+  else
+    return NULL;
+}
+G_INLINE_FUNC
+guint
+g_bsearch_array_get_index (GBSearchArray *barray,
+			   gpointer       node_in_array)
+{
+  guint distance = ((guint8*) node_in_array) - ((guint8*) barray->nodes);
+
+  distance /= barray->sizeof_node;
+
+  return MIN (distance, barray->n_nodes);
+}
+#endif  /* G_CAN_INLINE || __G_BSEARCHARRAY_C__ */
+
+G_END_DECLS
+
+#endif /* __G_BSEARCH_ARRAY_H__ */
diff --git a/graf2d/win32gdk/gdk/src/glib/gcache.c b/graf2d/win32gdk/gdk/src/glib/gcache.c
new file mode 100644
index 00000000000..12e99a66b3c
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gcache.c
@@ -0,0 +1,212 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#include "glib.h"
+
+
+typedef struct _GCacheNode  GCacheNode;
+
+struct _GCacheNode
+{
+  /* A reference counted node */
+  gpointer value;
+  gint ref_count;
+};
+
+struct _GCache
+{
+  /* Called to create a value from a key */
+  GCacheNewFunc value_new_func;
+
+  /* Called to destroy a value */
+  GCacheDestroyFunc value_destroy_func;
+
+  /* Called to duplicate a key */
+  GCacheDupFunc key_dup_func;
+
+  /* Called to destroy a key */
+  GCacheDestroyFunc key_destroy_func;
+
+  /* Associates keys with nodes */
+  GHashTable *key_table;
+
+  /* Associates nodes with keys */
+  GHashTable *value_table;
+};
+
+
+static GCacheNode* g_cache_node_new     (gpointer value);
+static void        g_cache_node_destroy (GCacheNode *node);
+
+
+static GMemChunk *node_mem_chunk = NULL;
+G_LOCK_DEFINE_STATIC (node_mem_chunk);
+
+GCache*
+g_cache_new (GCacheNewFunc      value_new_func,
+	     GCacheDestroyFunc  value_destroy_func,
+	     GCacheDupFunc      key_dup_func,
+	     GCacheDestroyFunc  key_destroy_func,
+	     GHashFunc          hash_key_func,
+	     GHashFunc          hash_value_func,
+	     GEqualFunc         key_equal_func)
+{
+  GCache *cache;
+
+  g_return_val_if_fail (value_new_func != NULL, NULL);
+  g_return_val_if_fail (value_destroy_func != NULL, NULL);
+  g_return_val_if_fail (key_dup_func != NULL, NULL);
+  g_return_val_if_fail (key_destroy_func != NULL, NULL);
+  g_return_val_if_fail (hash_key_func != NULL, NULL);
+  g_return_val_if_fail (hash_value_func != NULL, NULL);
+  g_return_val_if_fail (key_equal_func != NULL, NULL);
+
+  cache = g_new (GCache, 1);
+  cache->value_new_func = value_new_func;
+  cache->value_destroy_func = value_destroy_func;
+  cache->key_dup_func = key_dup_func;
+  cache->key_destroy_func = key_destroy_func;
+  cache->key_table = g_hash_table_new (hash_key_func, key_equal_func);
+  cache->value_table = g_hash_table_new (hash_value_func, NULL);
+
+  return cache;
+}
+
+void
+g_cache_destroy (GCache *cache)
+{
+  g_return_if_fail (cache != NULL);
+
+  g_hash_table_destroy (cache->key_table);
+  g_hash_table_destroy (cache->value_table);
+  g_free (cache);
+}
+
+gpointer
+g_cache_insert (GCache   *cache,
+		gpointer  key)
+{
+  GCacheNode *node;
+  gpointer value;
+
+  g_return_val_if_fail (cache != NULL, NULL);
+
+  node = g_hash_table_lookup (cache->key_table, key);
+  if (node)
+    {
+      node->ref_count += 1;
+      return node->value;
+    }
+
+  key = (* cache->key_dup_func) (key);
+  value = (* cache->value_new_func) (key);
+  node = g_cache_node_new (value);
+
+  g_hash_table_insert (cache->key_table, key, node);
+  g_hash_table_insert (cache->value_table, value, key);
+
+  return node->value;
+}
+
+void
+g_cache_remove (GCache        *cache,
+		gconstpointer  value)
+{
+  GCacheNode *node;
+  gpointer key;
+
+  g_return_if_fail (cache != NULL);
+
+  key = g_hash_table_lookup (cache->value_table, value);
+  node = g_hash_table_lookup (cache->key_table, key);
+
+  g_return_if_fail (node != NULL);
+
+  node->ref_count -= 1;
+  if (node->ref_count == 0)
+    {
+      g_hash_table_remove (cache->value_table, value);
+      g_hash_table_remove (cache->key_table, key);
+
+      (* cache->key_destroy_func) (key);
+      (* cache->value_destroy_func) (node->value);
+      g_cache_node_destroy (node);
+    }
+}
+
+void
+g_cache_key_foreach (GCache   *cache,
+		     GHFunc    func,
+		     gpointer  user_data)
+{
+  g_return_if_fail (cache != NULL);
+  g_return_if_fail (func != NULL);
+
+  g_hash_table_foreach (cache->value_table, func, user_data);
+}
+
+void
+g_cache_value_foreach (GCache   *cache,
+		       GHFunc    func,
+		       gpointer  user_data)
+{
+  g_return_if_fail (cache != NULL);
+  g_return_if_fail (func != NULL);
+
+  g_hash_table_foreach (cache->key_table, func, user_data);
+}
+
+
+static GCacheNode*
+g_cache_node_new (gpointer value)
+{
+  GCacheNode *node;
+
+  G_LOCK (node_mem_chunk);
+  if (!node_mem_chunk)
+    node_mem_chunk = g_mem_chunk_new ("cache node mem chunk", sizeof (GCacheNode),
+				      1024, G_ALLOC_AND_FREE);
+
+  node = g_chunk_new (GCacheNode, node_mem_chunk);
+  G_UNLOCK (node_mem_chunk);
+
+  node->value = value;
+  node->ref_count = 1;
+
+  return node;
+}
+
+static void
+g_cache_node_destroy (GCacheNode *node)
+{
+  G_LOCK (node_mem_chunk);
+  g_mem_chunk_free (node_mem_chunk, node);
+  G_UNLOCK (node_mem_chunk);
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gcache.h b/graf2d/win32gdk/gdk/src/glib/gcache.h
index 74ef5b654b9..a9128b653a0 100644
--- a/graf2d/win32gdk/gdk/src/glib/gcache.h
+++ b/graf2d/win32gdk/gdk/src/glib/gcache.h
@@ -27,7 +27,7 @@
 #ifndef __G_CACHE_H__
 #define __G_CACHE_H__
 
-#include <glist.h>
+#include <glib/glist.h>
 
 G_BEGIN_DECLS
 
diff --git a/graf2d/win32gdk/gdk/src/glib/gcompletion.c b/graf2d/win32gdk/gdk/src/glib/gcompletion.c
new file mode 100644
index 00000000000..9a33ff5ca19
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gcompletion.c
@@ -0,0 +1,294 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#include "glib.h"
+#include <string.h>
+
+static void completion_check_cache (GCompletion* cmp,
+				    gchar**	 new_prefix);
+
+GCompletion* 
+g_completion_new (GCompletionFunc func)
+{
+  GCompletion* gcomp;
+  
+  gcomp = g_new (GCompletion, 1);
+  gcomp->items = NULL;
+  gcomp->cache = NULL;
+  gcomp->prefix = NULL;
+  gcomp->func = func;
+  gcomp->strncmp_func = strncmp;
+
+  return gcomp;
+}
+
+void 
+g_completion_add_items (GCompletion* cmp,
+			GList*	     items)
+{
+  GList* it;
+  
+  g_return_if_fail (cmp != NULL);
+  g_return_if_fail (items != NULL);
+  
+  /* optimize adding to cache? */
+  if (cmp->cache)
+    {
+      g_list_free (cmp->cache);
+      cmp->cache = NULL;
+    }
+
+  if (cmp->prefix)
+    {
+      g_free (cmp->prefix);
+      cmp->prefix = NULL;
+    }
+  
+  it = items;
+  while (it)
+    {
+      cmp->items = g_list_prepend (cmp->items, it->data);
+      it = it->next;
+    }
+}
+
+void 
+g_completion_remove_items (GCompletion* cmp,
+			   GList*	items)
+{
+  GList* it;
+  
+  g_return_if_fail (cmp != NULL);
+  g_return_if_fail (items != NULL);
+  
+  it = items;
+  while (cmp->items && it)
+    {
+      cmp->items = g_list_remove (cmp->items, it->data);
+      it = it->next;
+    }
+
+  it = items;
+  while (cmp->cache && it)
+    {
+      cmp->cache = g_list_remove(cmp->cache, it->data);
+      it = it->next;
+    }
+}
+
+void 
+g_completion_clear_items (GCompletion* cmp)
+{
+  g_return_if_fail (cmp != NULL);
+  
+  g_list_free (cmp->items);
+  cmp->items = NULL;
+  g_list_free (cmp->cache);
+  cmp->cache = NULL;
+  g_free (cmp->prefix);
+  cmp->prefix = NULL;
+}
+
+static void   
+completion_check_cache (GCompletion* cmp,
+			gchar**	     new_prefix)
+{
+  register GList* list;
+  register gsize len;  
+  register gsize i;
+  register gsize plen;
+  gchar* postfix;
+  gchar* s;
+  
+  if (!new_prefix)
+    return;
+  if (!cmp->cache)
+    {
+      *new_prefix = NULL;
+      return;
+    }
+  
+  len = strlen(cmp->prefix);
+  list = cmp->cache;
+  s = cmp->func ? cmp->func (list->data) : (gchar*) list->data;
+  postfix = s + len;
+  plen = strlen (postfix);
+  list = list->next;
+  
+  while (list && plen)
+    {
+      s = cmp->func ? cmp->func (list->data) : (gchar*) list->data;
+      s += len;
+      for (i = 0; i < plen; ++i)
+	{
+	  if (postfix[i] != s[i])
+	    break;
+	}
+      plen = i;
+      list = list->next;
+    }
+  
+  *new_prefix = g_new0 (gchar, len + plen + 1);
+  strncpy (*new_prefix, cmp->prefix, len);
+  strncpy (*new_prefix + len, postfix, plen);
+}
+
+GList* 
+g_completion_complete (GCompletion* cmp,
+		       gchar*	    prefix,
+		       gchar**	    new_prefix)
+{
+  gsize plen, len;
+  gboolean done = FALSE;
+  GList* list;
+  
+  g_return_val_if_fail (cmp != NULL, NULL);
+  g_return_val_if_fail (prefix != NULL, NULL);
+  
+  len = strlen (prefix);
+  if (cmp->prefix && cmp->cache)
+    {
+      plen = strlen (cmp->prefix);
+      if (plen <= len && ! cmp->strncmp_func (prefix, cmp->prefix, plen))
+	{ 
+	  /* use the cache */
+	  list = cmp->cache;
+	  while (list)
+	    {
+	      GList *next = list->next;
+	      
+	      if (cmp->strncmp_func (prefix,
+				     cmp->func ? cmp->func (list->data) : (gchar*) list->data,
+				     len))
+		cmp->cache = g_list_delete_link (cmp->cache, list);
+
+	      list = next;
+	    }
+	  done = TRUE;
+	}
+    }
+  
+  if (!done)
+    {
+      /* normal code */
+      g_list_free (cmp->cache);
+      cmp->cache = NULL;
+      list = cmp->items;
+      while (*prefix && list)
+	{
+	  if (!cmp->strncmp_func (prefix,
+			cmp->func ? cmp->func (list->data) : (gchar*) list->data,
+			len))
+	    cmp->cache = g_list_prepend (cmp->cache, list->data);
+	  list = list->next;
+	}
+    }
+  if (cmp->prefix)
+    {
+      g_free (cmp->prefix);
+      cmp->prefix = NULL;
+    }
+  if (cmp->cache)
+    cmp->prefix = g_strdup (prefix);
+  completion_check_cache (cmp, new_prefix);
+  
+  return *prefix ? cmp->cache : cmp->items;
+}
+
+void 
+g_completion_free (GCompletion* cmp)
+{
+  g_return_if_fail (cmp != NULL);
+  
+  g_completion_clear_items (cmp);
+  g_free (cmp);
+}
+
+void
+g_completion_set_compare(GCompletion *cmp,
+			 GCompletionStrncmpFunc strncmp_func)
+{
+  cmp->strncmp_func = strncmp_func;
+}
+
+#ifdef TEST_COMPLETION
+#include <stdio.h>
+int
+main (int   argc,
+      char* argv[])
+{
+  FILE *file;
+  gchar buf[1024];
+  GList *list;
+  GList *result;
+  GList *tmp;
+  GCompletion *cmp;
+  gint i;
+  gchar *longp = NULL;
+  
+  if (argc < 3)
+    {
+      g_warning ("Usage: %s filename prefix1 [prefix2 ...]\n", argv[0]);
+      return 1;
+    }
+  
+  file = fopen (argv[1], "r");
+  if (!file)
+    {
+      g_warning ("Cannot open %s\n", argv[1]);
+      return 1;
+    }
+  
+  cmp = g_completion_new (NULL);
+  list = g_list_alloc ();
+  while (fgets (buf, 1024, file))
+    {
+      list->data = g_strdup (buf);
+      g_completion_add_items (cmp, list);
+    }
+  fclose (file);
+  
+  for (i = 2; i < argc; ++i)
+    {
+      printf ("COMPLETING: %s\n", argv[i]);
+      result = g_completion_complete (cmp, argv[i], &longp);
+      g_list_foreach (result, (GFunc) printf, NULL);
+      printf ("LONG MATCH: %s\n", longp);
+      g_free (longp);
+      longp = NULL;
+    }
+  
+  g_list_foreach (cmp->items, (GFunc) g_free, NULL);
+  g_completion_free (cmp);
+  g_list_free (list);
+  
+  return 0;
+}
+#endif
diff --git a/graf2d/win32gdk/gdk/src/glib/gcompletion.h b/graf2d/win32gdk/gdk/src/glib/gcompletion.h
index d5fca3f3af4..eab0699b518 100644
--- a/graf2d/win32gdk/gdk/src/glib/gcompletion.h
+++ b/graf2d/win32gdk/gdk/src/glib/gcompletion.h
@@ -27,11 +27,7 @@
 #ifndef __G_COMPLETION_H__
 #define __G_COMPLETION_H__
 
-#include <glist.h>
-#include <stddef.h>		/* For size_t */
-#ifdef G_OS_UNIX
-#include <unistd.h>
-#endif
+#include <glib/glist.h>
 
 G_BEGIN_DECLS
 
@@ -42,7 +38,9 @@ typedef gchar*          (*GCompletionFunc)      (gpointer);
 /* GCompletion
  */
 
-typedef int (*GCompletionStrncmpFunc)(const char *s1, const char *s2, size_t n);
+typedef gint (*GCompletionStrncmpFunc) (const gchar *s1,
+					const gchar *s2,
+					gsize        n);
 
 struct _GCompletion
 {
diff --git a/graf2d/win32gdk/gdk/src/glib/gconvert.c b/graf2d/win32gdk/gdk/src/glib/gconvert.c
new file mode 100644
index 00000000000..d904335503f
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gconvert.c
@@ -0,0 +1,1321 @@
+/* GLIB - Library of useful routines for C programming
+ *
+ * gconvert.c: Convert between character sets using iconv
+ * Copyright Red Hat Inc., 2000
+ * Authors: Havoc Pennington <hp@redhat.com>, Owen Taylor <otaylor@redhat.com
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#include <iconv.h>
+#include <errno.h>
+#include <string.h>
+#include <stdlib.h>
+
+#include "glib.h"
+#include "config.h"
+
+#ifdef G_PLATFORM_WIN32
+#define STRICT
+#include <windows.h>
+#undef STRICT
+#endif
+
+#include "glibintl.h"
+
+GQuark 
+g_convert_error_quark()
+{
+  static GQuark quark;
+  if (!quark)
+    quark = g_quark_from_static_string ("g_convert_error");
+
+  return quark;
+}
+
+#if defined(USE_LIBICONV) && !defined (_LIBICONV_H)
+#error libiconv in use but included iconv.h not from libiconv
+#endif
+#if !defined(USE_LIBICONV) && defined (_LIBICONV_H)
+#error libiconv not in use but included iconv.h is from libiconv
+#endif
+
+/**
+ * g_iconv_open:
+ * @to_codeset: destination codeset
+ * @from_codeset: source codeset
+ * 
+ * Same as the standard UNIX routine iconv_open(), but
+ * may be implemented via libiconv on UNIX flavors that lack
+ * a native implementation.
+ * 
+ * GLib provides g_convert() and g_locale_to_utf8() which are likely
+ * more convenient than the raw iconv wrappers.
+ * 
+ * Return value: a "conversion descriptor"
+ **/
+GIConv
+g_iconv_open (const gchar  *to_codeset,
+	      const gchar  *from_codeset)
+{
+  iconv_t cd = iconv_open (to_codeset, from_codeset);
+  
+  return (GIConv)cd;
+}
+
+/**
+ * g_iconv:
+ * @converter: conversion descriptor from g_iconv_open()
+ * @inbuf: bytes to convert
+ * @inbytes_left: inout parameter, bytes remaining to convert in @inbuf
+ * @outbuf: converted output bytes
+ * @outbytes_left: inout parameter, bytes available to fill in @outbuf
+ * 
+ * Same as the standard UNIX routine iconv(), but
+ * may be implemented via libiconv on UNIX flavors that lack
+ * a native implementation.
+ *
+ * GLib provides g_convert() and g_locale_to_utf8() which are likely
+ * more convenient than the raw iconv wrappers.
+ * 
+ * Return value: count of non-reversible conversions, or -1 on error
+ **/
+size_t 
+g_iconv (GIConv   converter,
+	 gchar  **inbuf,
+	 gsize   *inbytes_left,
+	 gchar  **outbuf,
+	 gsize   *outbytes_left)
+{
+  iconv_t cd = (iconv_t)converter;
+
+  return iconv (cd, inbuf, inbytes_left, outbuf, outbytes_left);
+}
+
+/**
+ * g_iconv_close:
+ * @converter: a conversion descriptor from g_iconv_open()
+ *
+ * Same as the standard UNIX routine iconv_close(), but
+ * may be implemented via libiconv on UNIX flavors that lack
+ * a native implementation. Should be called to clean up
+ * the conversion descriptor from iconv_open() when
+ * you are done converting things.
+ *
+ * GLib provides g_convert() and g_locale_to_utf8() which are likely
+ * more convenient than the raw iconv wrappers.
+ * 
+ * Return value: -1 on error, 0 on success
+ **/
+gint
+g_iconv_close (GIConv converter)
+{
+  iconv_t cd = (iconv_t)converter;
+
+  return iconv_close (cd);
+}
+
+static GIConv
+open_converter (const gchar *to_codeset,
+                const gchar *from_codeset,
+		GError     **error)
+{
+  GIConv cd = g_iconv_open (to_codeset, from_codeset);
+
+  if (cd == (iconv_t) -1)
+    {
+      /* Something went wrong.  */
+      if (errno == EINVAL)
+        g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_NO_CONVERSION,
+                     _("Conversion from character set `%s' to `%s' is not supported"),
+                     from_codeset, to_codeset);
+      else
+        g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_FAILED,
+                     _("Could not open converter from `%s' to `%s': %s"),
+                     from_codeset, to_codeset, strerror (errno));
+    }
+
+  return cd;
+
+}
+
+/**
+ * g_convert:
+ * @str:           the string to convert
+ * @len:           the length of the string
+ * @to_codeset:    name of character set into which to convert @str
+ * @from_codeset:  character set of @str.
+ * @bytes_read:    location to store the number of bytes in the
+ *                 input string that were successfully converted, or %NULL.
+ *                 Even if the conversion was succesful, this may be 
+ *                 less than len if there were partial characters
+ *                 at the end of the input. If the error
+ *                 G_CONVERT_ERROR_ILLEGAL_SEQUENCE occurs, the value
+ *                 stored will the byte fofset after the last valid
+ *                 input sequence.
+ * @bytes_written: the stored in the output buffer (not including the
+ *                 terminating nul.
+ * @error:         location to store the error occuring, or %NULL to ignore
+ *                 errors. Any of the errors in #GConvertError may occur.
+ *
+ * Convert a string from one character set to another.
+ *
+ * Return value: If the conversion was successful, a newly allocated
+ *               NUL-terminated string, which must be freed with
+ *               g_free. Otherwise %NULL and @error will be set.
+ **/
+gchar*
+g_convert (const gchar *str,
+           gssize       len,  
+           const gchar *to_codeset,
+           const gchar *from_codeset,
+           gsize       *bytes_read, 
+	   gsize       *bytes_written, 
+	   GError     **error)
+{
+  gchar *res;
+  GIConv cd;
+  
+  g_return_val_if_fail (str != NULL, NULL);
+  g_return_val_if_fail (to_codeset != NULL, NULL);
+  g_return_val_if_fail (from_codeset != NULL, NULL);
+     
+  cd = open_converter (to_codeset, from_codeset, error);
+
+  if (cd == (GIConv) -1)
+    {
+      if (bytes_read)
+        *bytes_read = 0;
+      
+      if (bytes_written)
+        *bytes_written = 0;
+      
+      return NULL;
+    }
+
+  res = g_convert_with_iconv (str, len, cd,
+			      bytes_read, bytes_written,
+			      error);
+  
+  g_iconv_close (cd);
+
+  return res;
+}
+
+/**
+ * g_convert_with_iconv:
+ * @str:           the string to convert
+ * @len:           the length of the string
+ * @converter:     conversion descriptor from g_iconv_open()
+ * @bytes_read:    location to store the number of bytes in the
+ *                 input string that were successfully converted, or %NULL.
+ *                 Even if the conversion was succesful, this may be 
+ *                 less than len if there were partial characters
+ *                 at the end of the input. If the error
+ *                 G_CONVERT_ERROR_ILLEGAL_SEQUENCE occurs, the value
+ *                 stored will the byte fofset after the last valid
+ *                 input sequence.
+ * @bytes_written: the stored in the output buffer (not including the
+ *                 terminating nul.
+ * @error:         location to store the error occuring, or %NULL to ignore
+ *                 errors. Any of the errors in #GConvertError may occur.
+ *
+ * Convert a string from one character set to another.
+ *
+ * Return value: If the conversion was successful, a newly allocated
+ *               NUL-terminated string, which must be freed with
+ *               g_free. Otherwise %NULL and @error will be set.
+ **/
+gchar*
+g_convert_with_iconv (const gchar *str,
+		      gssize       len,
+		      GIConv       converter,
+		      gsize       *bytes_read, 
+		      gsize       *bytes_written, 
+		      GError     **error)
+{
+  gchar *dest;
+  gchar *outp;
+  const gchar *p;
+  gsize inbytes_remaining;
+  gsize outbytes_remaining;
+  gsize err;
+  gsize outbuf_size;
+  gboolean have_error = FALSE;
+  
+  g_return_val_if_fail (str != NULL, NULL);
+  g_return_val_if_fail (converter != (GIConv) -1, NULL);
+     
+  if (len < 0)
+    len = strlen (str);
+
+  p = str;
+  inbytes_remaining = len;
+  outbuf_size = len + 1; /* + 1 for nul in case len == 1 */
+  
+  outbytes_remaining = outbuf_size - 1; /* -1 for nul */
+  outp = dest = g_malloc (outbuf_size);
+
+ again:
+  
+  err = g_iconv (converter, (char **)&p, &inbytes_remaining, &outp, &outbytes_remaining);
+
+  if (err == (size_t) -1)
+    {
+      switch (errno)
+	{
+	case EINVAL:
+	  /* Incomplete text, do not report an error */
+	  break;
+	case E2BIG:
+	  {
+	    size_t used = outp - dest;
+
+	    outbuf_size *= 2;
+	    dest = g_realloc (dest, outbuf_size);
+		
+	    outp = dest + used;
+	    outbytes_remaining = outbuf_size - used - 1; /* -1 for nul */
+
+	    goto again;
+	  }
+	case EILSEQ:
+	  g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
+		       _("Invalid byte sequence in conversion input"));
+	  have_error = TRUE;
+	  break;
+	default:
+	  g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_FAILED,
+		       _("Error during conversion: %s"),
+		       strerror (errno));
+	  have_error = TRUE;
+	  break;
+	}
+    }
+
+  *outp = '\0';
+  
+  if (bytes_read)
+    *bytes_read = p - str;
+  else
+    {
+      if ((p - str) != len) 
+	{
+          if (!have_error)
+            {
+              g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_PARTIAL_INPUT,
+                           _("Partial character sequence at end of input"));
+              have_error = TRUE;
+            }
+	}
+    }
+
+  if (bytes_written)
+    *bytes_written = outp - dest;	/* Doesn't include '\0' */
+
+  if (have_error)
+    {
+      g_free (dest);
+      return NULL;
+    }
+  else
+    return dest;
+}
+
+/**
+ * g_convert_with_fallback:
+ * @str:          the string to convert
+ * @len:          the length of the string
+ * @to_codeset:   name of character set into which to convert @str
+ * @from_codeset: character set of @str.
+ * @fallback:     UTF-8 string to use in place of character not
+ *                present in the target encoding. (This must be
+ *                in the target encoding), if %NULL, characters
+ *                not in the target encoding will be represented
+ *                as Unicode escapes \x{XXXX} or \x{XXXXXX}.
+ * @bytes_read:   location to store the number of bytes in the
+ *                input string that were successfully converted, or %NULL.
+ *                Even if the conversion was succesful, this may be 
+ *                less than len if there were partial characters
+ *                at the end of the input.
+ * @bytes_written: the stored in the output buffer (not including the
+ *                 terminating nul.
+ * @error:        location to store the error occuring, or %NULL to ignore
+ *                errors. Any of the errors in #GConvertError may occur.
+ *
+ * Convert a string from one character set to another, possibly
+ * including fallback sequences for characters not representable
+ * in the output. Note that it is not guaranteed that the specification
+ * for the fallback sequences in @fallback will be honored. Some
+ * systems may do a approximate conversion from @from_codeset
+ * to @to_codeset in their iconv() functions, in which case GLib
+ * will simply return that approximate conversion.
+ *
+ * Return value: If the conversion was successful, a newly allocated
+ *               NUL-terminated string, which must be freed with
+ *               g_free. Otherwise %NULL and @error will be set.
+ **/
+gchar*
+g_convert_with_fallback (const gchar *str,
+			 gssize       len,    
+			 const gchar *to_codeset,
+			 const gchar *from_codeset,
+			 gchar       *fallback,
+			 gsize       *bytes_read,
+			 gsize       *bytes_written,
+			 GError     **error)
+{
+  gchar *utf8;
+  gchar *dest;
+  gchar *outp;
+  const gchar *insert_str = NULL;
+  const gchar *p;
+  gsize inbytes_remaining;   
+  const gchar *save_p = NULL;
+  gsize save_inbytes = 0;
+  gsize outbytes_remaining; 
+  gsize err;
+  GIConv cd;
+  gsize outbuf_size;
+  gboolean have_error = FALSE;
+  gboolean done = FALSE;
+
+  GError *local_error = NULL;
+  
+  g_return_val_if_fail (str != NULL, NULL);
+  g_return_val_if_fail (to_codeset != NULL, NULL);
+  g_return_val_if_fail (from_codeset != NULL, NULL);
+     
+  if (len < 0)
+    len = strlen (str);
+  
+  /* Try an exact conversion; we only proceed if this fails
+   * due to an illegal sequence in the input string.
+   */
+  dest = g_convert (str, len, to_codeset, from_codeset, 
+		    bytes_read, bytes_written, &local_error);
+  if (!local_error)
+    return dest;
+
+  if (!g_error_matches (local_error, G_CONVERT_ERROR, G_CONVERT_ERROR_ILLEGAL_SEQUENCE))
+    {
+      g_propagate_error (error, local_error);
+      return NULL;
+    }
+  else
+    g_error_free (local_error);
+
+  local_error = NULL;
+  
+  /* No go; to proceed, we need a converter from "UTF-8" to
+   * to_codeset, and the string as UTF-8.
+   */
+  cd = open_converter (to_codeset, "UTF-8", error);
+  if (cd == (GIConv) -1)
+    {
+      if (bytes_read)
+        *bytes_read = 0;
+      
+      if (bytes_written)
+        *bytes_written = 0;
+      
+      return NULL;
+    }
+
+  utf8 = g_convert (str, len, "UTF-8", from_codeset, 
+		    bytes_read, &inbytes_remaining, error);
+  if (!utf8)
+    return NULL;
+
+  /* Now the heart of the code. We loop through the UTF-8 string, and
+   * whenever we hit an offending character, we form fallback, convert
+   * the fallback to the target codeset, and then go back to
+   * converting the original string after finishing with the fallback.
+   *
+   * The variables save_p and save_inbytes store the input state
+   * for the original string while we are converting the fallback
+   */
+  p = utf8;
+
+  outbuf_size = len + 1; /* + 1 for nul in case len == 1 */
+  outbytes_remaining = outbuf_size - 1; /* -1 for nul */
+  outp = dest = g_malloc (outbuf_size);
+
+  while (!done && !have_error)
+    {
+      size_t inbytes_tmp = inbytes_remaining;
+      err = g_iconv (cd, (char **)&p, &inbytes_tmp, &outp, &outbytes_remaining);
+      inbytes_remaining = inbytes_tmp;
+
+      if (err == (size_t) -1)
+	{
+	  switch (errno)
+	    {
+	    case EINVAL:
+	      g_assert_not_reached();
+	      break;
+	    case E2BIG:
+	      {
+		size_t used = outp - dest;
+
+		outbuf_size *= 2;
+		dest = g_realloc (dest, outbuf_size);
+		
+		outp = dest + used;
+		outbytes_remaining = outbuf_size - used - 1; /* -1 for nul */
+		
+		break;
+	      }
+	    case EILSEQ:
+	      if (save_p)
+		{
+		  /* Error converting fallback string - fatal
+		   */
+		  g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
+			       _("Cannot convert fallback '%s' to codeset '%s'"),
+			       insert_str, to_codeset);
+		  have_error = TRUE;
+		  break;
+		}
+	      else
+		{
+		  if (!fallback)
+		    { 
+		      gunichar ch = g_utf8_get_char (p);
+		      insert_str = g_strdup_printf ("\\x{%0*X}",
+						    (ch < 0x10000) ? 4 : 6,
+						    ch);
+		    }
+		  else
+		    insert_str = fallback;
+		  
+		  save_p = g_utf8_next_char (p);
+		  save_inbytes = inbytes_remaining - (save_p - p);
+		  p = insert_str;
+		  inbytes_remaining = strlen (p);
+		}
+	      break;
+	    default:
+	      g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_FAILED,
+			   _("Error during conversion: %s"),
+			   strerror (errno));
+	      have_error = TRUE;
+	      break;
+	    }
+	}
+      else
+	{
+	  if (save_p)
+	    {
+	      if (!fallback)
+		g_free ((gchar *)insert_str);
+	      p = save_p;
+	      inbytes_remaining = save_inbytes;
+	      save_p = NULL;
+	    }
+	  else
+	    done = TRUE;
+	}
+    }
+
+  /* Cleanup
+   */
+  *outp = '\0';
+  
+  g_iconv_close (cd);
+
+  if (bytes_written)
+    *bytes_written = outp - str;	/* Doesn't include '\0' */
+
+  g_free (utf8);
+
+  if (have_error)
+    {
+      if (save_p && !fallback)
+	g_free ((gchar *)insert_str);
+      g_free (dest);
+      return NULL;
+    }
+  else
+    return dest;
+}
+
+/*
+ * g_locale_to_utf8
+ *
+ * 
+ */
+
+static gchar *
+strdup_len (const gchar *string,
+	    gssize       len,
+	    gsize       *bytes_written,
+	    gsize       *bytes_read,
+	    GError      **error)
+	 
+{
+  gsize real_len;
+
+  if (!g_utf8_validate (string, -1, NULL))
+    {
+      if (bytes_read)
+	*bytes_read = 0;
+      if (bytes_written)
+	*bytes_written = 0;
+
+      g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
+		   _("Invalid byte sequence in conversion input"));
+      return NULL;
+    }
+  
+  if (len < 0)
+    real_len = strlen (string);
+  else
+    {
+      real_len = 0;
+      
+      while (real_len < len && string[real_len])
+	real_len++;
+    }
+  
+  if (bytes_read)
+    *bytes_read = real_len;
+  if (bytes_written)
+    *bytes_written = real_len;
+
+  return g_strndup (string, real_len);
+}
+
+/**
+ * g_locale_to_utf8:
+ * @opsysstring:   a string in the encoding of the current locale
+ * @len:           the length of the string, or -1 if the string is
+ *                 NULL-terminated.
+ * @bytes_read:    location to store the number of bytes in the
+ *                 input string that were successfully converted, or %NULL.
+ *                 Even if the conversion was succesful, this may be 
+ *                 less than len if there were partial characters
+ *                 at the end of the input. If the error
+ *                 G_CONVERT_ERROR_ILLEGAL_SEQUENCE occurs, the value
+ *                 stored will the byte fofset after the last valid
+ *                 input sequence.
+ * @bytes_written: the stored in the output buffer (not including the
+ *                 terminating nul.
+ * @error: location to store the error occuring, or %NULL to ignore
+ *                 errors. Any of the errors in #GConvertError may occur.
+ * 
+ * Converts a string which is in the encoding used for strings by
+ * the C runtime (usually the same as that used by the operating
+ * system) in the current locale into a UTF-8 string.
+ * 
+ * Return value: The converted string, or %NULL on an error.
+ **/
+gchar *
+g_locale_to_utf8 (const gchar  *opsysstring,
+		  gssize        len,            
+		  gsize        *bytes_read,    
+		  gsize        *bytes_written,
+		  GError      **error)
+{
+#ifdef G_PLATFORM_WIN32
+
+  gint i, clen, total_len, wclen, first;
+  wchar_t *wcs, wc;
+  gchar *result, *bp;
+  const wchar_t *wcp;
+
+  if (len == -1)
+    len = strlen (opsysstring);
+  
+  wcs = g_new (wchar_t, len);
+  wclen = MultiByteToWideChar (CP_ACP, 0, opsysstring, len, wcs, len);
+
+  wcp = wcs;
+  total_len = 0;
+  for (i = 0; i < wclen; i++)
+    {
+      wc = *wcp++;
+
+      if (wc < 0x80)
+	total_len += 1;
+      else if (wc < 0x800)
+	total_len += 2;
+      else if (wc < 0x10000)
+	total_len += 3;
+      else if (wc < 0x200000)
+	total_len += 4;
+      else if (wc < 0x4000000)
+	total_len += 5;
+      else
+	total_len += 6;
+    }
+
+  result = g_malloc (total_len + 1);
+  
+  wcp = wcs;
+  bp = result;
+  for (i = 0; i < wclen; i++)
+    {
+      wc = *wcp++;
+
+      if (wc < 0x80)
+	{
+	  first = 0;
+	  clen = 1;
+	}
+      else if (wc < 0x800)
+	{
+	  first = 0xc0;
+	  clen = 2;
+	}
+      else if (wc < 0x10000)
+	{
+	  first = 0xe0;
+	  clen = 3;
+	}
+      else if (wc < 0x200000)
+	{
+	  first = 0xf0;
+	  clen = 4;
+	}
+      else if (wc < 0x4000000)
+	{
+	  first = 0xf8;
+	  clen = 5;
+	}
+      else
+	{
+	  first = 0xfc;
+	  clen = 6;
+	}
+      
+      /* Woo-hoo! */
+      switch (clen)
+	{
+	case 6: bp[5] = (wc & 0x3f) | 0x80; wc >>= 6; /* Fall through */
+	case 5: bp[4] = (wc & 0x3f) | 0x80; wc >>= 6; /* Fall through */
+	case 4: bp[3] = (wc & 0x3f) | 0x80; wc >>= 6; /* Fall through */
+	case 3: bp[2] = (wc & 0x3f) | 0x80; wc >>= 6; /* Fall through */
+	case 2: bp[1] = (wc & 0x3f) | 0x80; wc >>= 6; /* Fall through */
+	case 1: bp[0] = wc | first;
+	}
+
+      bp += clen;
+    }
+  *bp = 0;
+
+  g_free (wcs);
+
+  if (bytes_read)
+    *bytes_read = len;
+  if (bytes_written)
+    *bytes_written = total_len;
+  
+  return result;
+
+#else  /* !G_PLATFORM_WIN32 */
+
+  const char *charset;
+
+  if (g_get_charset (&charset))
+    return strdup_len (opsysstring, len, bytes_read, bytes_written, error);
+  else
+    return g_convert (opsysstring, len, 
+		      "UTF-8", charset, bytes_read, bytes_written, error);
+
+#endif /* !G_PLATFORM_WIN32 */
+}
+
+/**
+ * g_locale_from_utf8:
+ * @utf8string:    a UTF-8 encoded string 
+ * @len:           the length of the string, or -1 if the string is
+ *                 NULL-terminated.
+ * @bytes_read:    location to store the number of bytes in the
+ *                 input string that were successfully converted, or %NULL.
+ *                 Even if the conversion was succesful, this may be 
+ *                 less than len if there were partial characters
+ *                 at the end of the input. If the error
+ *                 G_CONVERT_ERROR_ILLEGAL_SEQUENCE occurs, the value
+ *                 stored will the byte fofset after the last valid
+ *                 input sequence.
+ * @bytes_written: the stored in the output buffer (not including the
+ *                 terminating nul.
+ * @error: location to store the error occuring, or %NULL to ignore
+ *                 errors. Any of the errors in #GConvertError may occur.
+ * 
+ * Converts a string from UTF-8 to the encoding used for strings by
+ * the C runtime (usually the same as that used by the operating
+ * system) in the current locale.
+ * 
+ * Return value: The converted string, or %NULL on an error.
+ **/
+gchar *
+g_locale_from_utf8 (const gchar *utf8string,
+		    gssize       len,            
+		    gsize       *bytes_read,    
+		    gsize       *bytes_written,
+		    GError     **error)
+{
+#ifdef G_PLATFORM_WIN32
+
+  gint i, mask, clen, mblen;
+  wchar_t *wcs, *wcp;
+  gchar *result;
+  guchar *cp, *end, c;
+  gint n;
+  
+  if (len == -1)
+    len = strlen (utf8string);
+  
+  /* First convert to wide chars */
+  cp = (guchar *) utf8string;
+  end = cp + len;
+  n = 0;
+  wcs = g_new (wchar_t, len + 1);
+  wcp = wcs;
+  while (cp != end)
+    {
+      mask = 0;
+      c = *cp;
+
+      if (c < 0x80)
+	{
+	  clen = 1;
+	  mask = 0x7f;
+	}
+      else if ((c & 0xe0) == 0xc0)
+	{
+	  clen = 2;
+	  mask = 0x1f;
+	}
+      else if ((c & 0xf0) == 0xe0)
+	{
+	  clen = 3;
+	  mask = 0x0f;
+	}
+      else if ((c & 0xf8) == 0xf0)
+	{
+	  clen = 4;
+	  mask = 0x07;
+	}
+      else if ((c & 0xfc) == 0xf8)
+	{
+	  clen = 5;
+	  mask = 0x03;
+	}
+      else if ((c & 0xfc) == 0xfc)
+	{
+	  clen = 6;
+	  mask = 0x01;
+	}
+      else
+	{
+	  g_free (wcs);
+	  return NULL;
+	}
+
+      if (cp + clen > end)
+	{
+	  g_free (wcs);
+	  return NULL;
+	}
+
+      *wcp = (cp[0] & mask);
+      for (i = 1; i < clen; i++)
+	{
+	  if ((cp[i] & 0xc0) != 0x80)
+	    {
+	      g_free (wcs);
+	      return NULL;
+	    }
+	  *wcp <<= 6;
+	  *wcp |= (cp[i] & 0x3f);
+	}
+
+      cp += clen;
+      wcp++;
+      n++;
+    }
+  if (cp != end)
+    {
+      g_free (wcs);
+      return NULL;
+    }
+
+  /* n is the number of wide chars constructed */
+
+  /* Convert to a string in the current ANSI codepage */
+
+  result = g_new (gchar, 3 * n + 1);
+  mblen = WideCharToMultiByte (CP_ACP, 0, wcs, n, result, 3*n, NULL, NULL);
+  result[mblen] = 0;
+  g_free (wcs);
+
+  if (bytes_read)
+    *bytes_read = len;
+  if (bytes_written)
+    *bytes_written = mblen;
+  
+  return result;
+
+#else  /* !G_PLATFORM_WIN32 */
+  
+  const gchar *charset;
+
+  if (g_get_charset (&charset))
+    return strdup_len (utf8string, len, bytes_read, bytes_written, error);
+  else
+    return g_convert (utf8string, len,
+		      charset, "UTF-8", bytes_read, bytes_written, error);
+
+#endif /* !G_PLATFORM_WIN32 */
+}
+
+/**
+ * g_filename_to_utf8:
+ * @opsysstring:   a string in the encoding for filenames
+ * @len:           the length of the string, or -1 if the string is
+ *                 NULL-terminated.
+ * @bytes_read:    location to store the number of bytes in the
+ *                 input string that were successfully converted, or %NULL.
+ *                 Even if the conversion was succesful, this may be 
+ *                 less than len if there were partial characters
+ *                 at the end of the input. If the error
+ *                 G_CONVERT_ERROR_ILLEGAL_SEQUENCE occurs, the value
+ *                 stored will the byte fofset after the last valid
+ *                 input sequence.
+ * @bytes_written: the stored in the output buffer (not including the
+ *                 terminating nul.
+ * @error: location to store the error occuring, or %NULL to ignore
+ *                 errors. Any of the errors in #GConvertError may occur.
+ * 
+ * Converts a string which is in the encoding used for filenames
+ * into a UTF-8 string.
+ * 
+ * Return value: The converted string, or %NULL on an error.
+ **/
+gchar*
+g_filename_to_utf8 (const gchar *opsysstring, 
+		    gssize       len,           
+		    gsize       *bytes_read,   
+		    gsize       *bytes_written,
+		    GError     **error)
+{
+#ifdef G_PLATFORM_WIN32
+  return g_locale_to_utf8 (opsysstring, len,
+			   bytes_read, bytes_written,
+			   error);
+#else  /* !G_PLATFORM_WIN32 */
+      
+  if (getenv ("G_BROKEN_FILENAMES"))
+    return g_locale_to_utf8 (opsysstring, len,
+			     bytes_read, bytes_written,
+			     error);
+  else
+    return strdup_len (opsysstring, len, bytes_read, bytes_written, error);
+#endif /* !G_PLATFORM_WIN32 */
+}
+
+/**
+ * g_filename_from_utf8:
+ * @utf8string:    a UTF-8 encoded string 
+ * @len:           the length of the string, or -1 if the string is
+ *                 NULL-terminated.
+ * @bytes_read:    location to store the number of bytes in the
+ *                 input string that were successfully converted, or %NULL.
+ *                 Even if the conversion was succesful, this may be 
+ *                 less than len if there were partial characters
+ *                 at the end of the input. If the error
+ *                 G_CONVERT_ERROR_ILLEGAL_SEQUENCE occurs, the value
+ *                 stored will the byte fofset after the last valid
+ *                 input sequence.
+ * @bytes_written: the stored in the output buffer (not including the
+ *                 terminating nul.
+ * @error: location to store the error occuring, or %NULL to ignore
+ *                 errors. Any of the errors in #GConvertError may occur.
+ * 
+ * Converts a string from UTF-8 to the encoding used for filenames.
+ * 
+ * Return value: The converted string, or %NULL on an error.
+ **/
+gchar*
+g_filename_from_utf8 (const gchar *utf8string,
+		      gssize       len,            
+		      gsize       *bytes_read,    
+		      gsize       *bytes_written,
+		      GError     **error)
+{
+#ifdef G_PLATFORM_WIN32
+  return g_locale_from_utf8 (utf8string, len,
+			     bytes_read, bytes_written,
+			     error);
+#else  /* !G_PLATFORM_WIN32 */
+  if (getenv ("G_BROKEN_FILENAMES"))
+    return g_locale_from_utf8 (utf8string, len,
+			       bytes_read, bytes_written,
+			       error);
+  else
+    return strdup_len (utf8string, len, bytes_read, bytes_written, error);
+#endif /* !G_PLATFORM_WIN32 */
+}
+
+/* Test of haystack has the needle prefix, comparing case
+ * insensitive. haystack may be UTF-8, but needle must
+ * contain only ascii. */
+static gboolean
+has_case_prefix (const gchar *haystack, const gchar *needle)
+{
+  const gchar *h, *n;
+  
+  /* Eat one character at a time. */
+  h = haystack;
+  n = needle;
+
+  while (*n && *h &&
+	 g_ascii_tolower (*n) == g_ascii_tolower (*h))
+    {
+      n++;
+      h++;
+    }
+  
+  return *n == '\0';
+}
+
+typedef enum {
+  UNSAFE_ALL        = 0x1,  /* Escape all unsafe characters   */
+  UNSAFE_ALLOW_PLUS = 0x2,  /* Allows '+'  */
+  UNSAFE_PATH       = 0x4,  /* Allows '/' and '?' and '&' and '='  */
+  UNSAFE_DOS_PATH   = 0x8,  /* Allows '/' and '?' and '&' and '=' and ':' */
+  UNSAFE_HOST       = 0x10, /* Allows '/' and ':' and '@' */
+  UNSAFE_SLASHES    = 0x20  /* Allows all characters except for '/' and '%' */
+} UnsafeCharacterSet;
+
+static const guchar acceptable[96] = {
+ /* X0   X1   X2   X3   X4   X5   X6   X7   X8   X9   XA   XB   XC   XD   XE   XF */
+  0x00,0x3F,0x20,0x20,0x20,0x00,0x2C,0x3F,0x3F,0x3F,0x3F,0x22,0x20,0x3F,0x3F,0x1C, /* 2X  !"#$%&'()*+,-./   */
+  0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x38,0x20,0x20,0x2C,0x20,0x2C, /* 3X 0123456789:;<=>?   */
+  0x30,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F, /* 4X @ABCDEFGHIJKLMNO   */
+  0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x20,0x3F, /* 5X PQRSTUVWXYZ[\]^_   */
+  0x20,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F, /* 6X `abcdefghijklmno   */
+  0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x3F,0x20  /* 7X pqrstuvwxyz{|}~DEL */
+};
+
+static const gchar hex[16] = "0123456789ABCDEF";
+
+/* Note: This escape function works on file: URIs, but if you want to
+ * escape something else, please read RFC-2396 */
+static gchar *
+g_escape_uri_string (const gchar *string, 
+		     UnsafeCharacterSet mask)
+{
+#define ACCEPTABLE(a) ((a)>=32 && (a)<128 && (acceptable[(a)-32] & use_mask))
+
+  const gchar *p;
+  gchar *q;
+  gchar *result;
+  int c;
+  gint unacceptable;
+  UnsafeCharacterSet use_mask;
+  
+  g_return_val_if_fail (mask == UNSAFE_ALL
+			|| mask == UNSAFE_ALLOW_PLUS
+			|| mask == UNSAFE_PATH
+			|| mask == UNSAFE_DOS_PATH
+			|| mask == UNSAFE_HOST
+			|| mask == UNSAFE_SLASHES, NULL);
+  
+  unacceptable = 0;
+  use_mask = mask;
+  for (p = string; *p != '\0'; p++)
+    {
+      c = *p;
+      if (!ACCEPTABLE (c)) 
+	unacceptable++;
+    }
+  
+  result = g_malloc (p - string + unacceptable * 2 + 1);
+  
+  use_mask = mask;
+  for (q = result, p = string; *p != '\0'; p++)
+    {
+      c = (unsigned char)*p;
+      
+      if (!ACCEPTABLE (c))
+	{
+	  *q++ = '%'; /* means hex coming */
+	  *q++ = hex[c >> 4];
+	  *q++ = hex[c & 15];
+	}
+      else
+	*q++ = *p;
+    }
+  
+  *q = '\0';
+  
+  return result;
+}
+
+
+static gchar *
+g_escape_file_uri (const gchar *hostname,
+		   const gchar *pathname)
+{
+  char *escaped_hostname = NULL;
+  char *escaped_path;
+  char *res;
+
+  if (hostname && *hostname != '\0')
+    {
+      escaped_hostname = g_escape_uri_string (hostname, UNSAFE_HOST);
+    }
+
+  escaped_path = g_escape_uri_string (pathname, UNSAFE_DOS_PATH);
+
+  res = g_strconcat ("file://",
+		     (escaped_hostname) ? escaped_hostname : "",
+		     (*escaped_path != '/') ? "/" : "",
+		     escaped_path,
+		     NULL);
+
+  g_free (escaped_hostname);
+  g_free (escaped_path);
+  
+  return res;
+}
+
+static int
+unescape_character (const char *scanner)
+{
+  int first_digit;
+  int second_digit;
+
+  first_digit = g_ascii_xdigit_value (*scanner++);
+  
+  if (first_digit < 0) 
+    return -1;
+  
+  second_digit = g_ascii_xdigit_value (*scanner++);
+  if (second_digit < 0) 
+    return -1;
+  
+  return (first_digit << 4) | second_digit;
+}
+
+static gchar *
+g_unescape_uri_string (const gchar *escaped,
+		       const gchar *illegal_characters,
+		       int          len)
+{
+  const gchar *in, *in_end;
+  gchar *out, *result;
+  int character;
+  
+  if (escaped == NULL)
+    return NULL;
+
+  if (len < 0)
+    len = strlen (escaped);
+
+    result = g_malloc (len + 1);
+  
+  out = result;
+  for (in = escaped, in_end = escaped + len; in < in_end && *in != '\0'; in++)
+    {
+      character = *in;
+      if (character == '%')
+	{
+	  character = unescape_character (in + 1);
+      
+	  /* Check for an illegal character. We consider '\0' illegal here. */
+	  if (character == 0
+	      || (illegal_characters != NULL
+		  && strchr (illegal_characters, (char)character) != NULL))
+	    {
+	      g_free (result);
+	      return NULL;
+	    }
+	  in += 2;
+	}
+      *out++ = character;
+    }
+  
+  *out = '\0';
+  
+  g_assert (out - result <= strlen (escaped));
+
+  if (!g_utf8_validate (result, -1, NULL))
+    {
+      g_free (result);
+      return NULL;
+    }
+  
+  return result;
+}
+
+/**
+ * g_filename_from_uri:
+ * @uri: a uri describing a filename (escaped, encoded in UTF-8)
+ * @hostname: Location to store hostname for the URI, or %NULL.
+ *            If there is no hostname in the URI, %NULL will be
+ *            stored in this location.
+ * @error: location to store the error occuring, or %NULL to ignore
+ *         errors. Any of the errors in #GConvertError may occur.
+ * 
+ * Converts an escaped UTF-8 encoded URI to a local filename in the
+ * encoding used for filenames. 
+ * 
+ * Return value: a newly allocated string holding the resulting
+ *               filename, or %NULL on an error.
+ **/
+gchar *
+g_filename_from_uri (const char *uri,
+		     char      **hostname,
+		     GError    **error)
+{
+  const char *path_part;
+  const char *host_part;
+  char *unescaped_hostname;
+  char *result;
+  char *filename;
+  int offs;
+
+  if (hostname)
+    *hostname = NULL;
+
+  if (!has_case_prefix (uri, "file:/"))
+    {
+      g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_NOT_ABSOLUTE_FILE_URI,
+		   _("The URI `%s' is not an absolute URI using the file scheme"),
+		   uri);
+      return NULL;
+    }
+  
+  path_part = uri + strlen ("file:");
+  
+  if (strchr (path_part, '#') != NULL)
+    {
+      g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_INVALID_URI,
+		   _("The local file URI `%s' may not include a `#'"),
+		   uri);
+      return NULL;
+    }
+	
+  if (has_case_prefix (path_part, "///")) 
+    path_part += 2;
+  else if (has_case_prefix (path_part, "//"))
+    {
+      path_part += 2;
+      host_part = path_part;
+
+      path_part = strchr (path_part, '/');
+
+      if (path_part == NULL)
+	{
+	  g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_INVALID_URI,
+		       _("The URI `%s' is invalid"),
+		       uri);
+	  return NULL;
+	}
+
+      unescaped_hostname = g_unescape_uri_string (host_part, "", path_part - host_part);
+      if (unescaped_hostname == NULL)
+	{
+	  g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_INVALID_URI,
+		       _("The hostname of the URI `%s' contains invalidly escaped characters"),
+		       uri);
+	  return NULL;
+	}
+      
+      if (hostname)
+	*hostname = unescaped_hostname;
+      else
+	g_free (unescaped_hostname);
+    }
+
+  filename = g_unescape_uri_string (path_part, "/", -1);
+
+  if (filename == NULL)
+    {
+      g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_INVALID_URI,
+		   _("The URI `%s' contains invalidly escaped characters"),
+		   uri);
+      return NULL;
+    }
+
+  /* DOS uri's are like "file://host/c:\foo", so we need to check if we need to
+   * drop the initial slash */
+  offs = 0;
+  if (g_path_is_absolute (filename+1))
+    offs = 1;
+  
+  result = g_filename_from_utf8 (filename + offs, -1, NULL, NULL, error);
+  g_free (filename);
+  
+  return result;
+}
+
+/**
+ * g_filename_to_uri:
+ * @filename: an absolute filename specified in the encoding
+ *            used for filenames by the operating system.
+ * @hostname: A UTF-8 encoded hostname, or %NULL for none.
+ * @error: location to store the error occuring, or %NULL to ignore
+ *         errors. Any of the errors in #GConvertError may occur.
+ * 
+ * Converts an absolute filename to an escaped UTF-8 encoded URI.
+ * 
+ * Return value: a newly allocated string holding the resulting
+ *               URI, or %NULL on an error.
+ **/
+gchar *
+g_filename_to_uri   (const char *filename,
+		     char       *hostname,
+		     GError    **error)
+{
+  char *escaped_uri;
+  char *utf8_filename;
+
+  g_return_val_if_fail (filename != NULL, NULL);
+
+  if (!g_path_is_absolute (filename))
+    {
+      g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_NOT_ABSOLUTE_PATH,
+		   _("The pathname '%s' is not an absolute path"),
+		   filename);
+      return NULL;
+    }
+
+  utf8_filename = g_filename_to_utf8 (filename, -1, NULL, NULL, error);
+  if (utf8_filename == NULL)
+    return NULL;
+  
+  if (hostname &&
+      !g_utf8_validate (hostname, -1, NULL))
+    {
+      g_free (utf8_filename);
+      g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
+		   _("Invalid byte sequence in hostname"));
+      return NULL;
+    }
+  
+  escaped_uri = g_escape_file_uri (hostname,
+				   utf8_filename);
+  g_free (utf8_filename);
+  
+  return escaped_uri;
+}
+
diff --git a/graf2d/win32gdk/gdk/src/glib/gconvert.h b/graf2d/win32gdk/gdk/src/glib/gconvert.h
index ce19b36722b..a6e9d78744f 100644
--- a/graf2d/win32gdk/gdk/src/glib/gconvert.h
+++ b/graf2d/win32gdk/gdk/src/glib/gconvert.h
@@ -28,7 +28,7 @@
 #define __G_CONVERT_H__
 
 #include <stddef.h>      /* For size_t */
-#include <gerror.h>
+#include <glib/gerror.h>
 
 G_BEGIN_DECLS
 
@@ -37,11 +37,14 @@ typedef enum
   G_CONVERT_ERROR_NO_CONVERSION,
   G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
   G_CONVERT_ERROR_FAILED,
-  G_CONVERT_ERROR_PARTIAL_INPUT
+  G_CONVERT_ERROR_PARTIAL_INPUT,
+  G_CONVERT_ERROR_NOT_ABSOLUTE_FILE_URI,
+  G_CONVERT_ERROR_INVALID_URI,
+  G_CONVERT_ERROR_NOT_ABSOLUTE_PATH
 } GConvertError;
 
 #define G_CONVERT_ERROR g_convert_error_quark()
-GQuark g_convert_error_quark();
+GQuark g_convert_error_quark (void);
 
 /* Thin wrappers around iconv
  */
@@ -51,39 +54,70 @@ GIConv g_iconv_open   (const gchar  *to_codeset,
 		       const gchar  *from_codeset);
 size_t g_iconv        (GIConv        converter,
 		       gchar       **inbuf,
-		       size_t       *inbytes_left,
+		       gsize        *inbytes_left,
 		       gchar       **outbuf,
-		       size_t       *outbytes_left);
+		       gsize        *outbytes_left);
 gint   g_iconv_close  (GIConv        converter);
 
 
 gchar* g_convert               (const gchar  *str,
-				gint          len,
+				gssize        len,            
 				const gchar  *to_codeset,
 				const gchar  *from_codeset,
-				gint         *bytes_read,
-				gint         *bytes_written,
+				gsize        *bytes_read,     
+				gsize        *bytes_written,  
+				GError      **error);
+gchar* g_convert_with_iconv    (const gchar  *str,
+				gssize        len,
+				GIConv        converter,
+				gsize        *bytes_read,     
+				gsize        *bytes_written,  
 				GError      **error);
 gchar* g_convert_with_fallback (const gchar  *str,
-				gint          len,
+				gssize        len,            
 				const gchar  *to_codeset,
 				const gchar  *from_codeset,
 				gchar        *fallback,
-				gint         *bytes_read,
-				gint         *bytes_written,
+				gsize        *bytes_read,     
+				gsize        *bytes_written,  
 				GError      **error);
 
 
 /* Convert between libc's idea of strings and UTF-8.
  */
-gchar*   g_locale_to_utf8 (const gchar *opsysstring, GError **error);
-gchar*   g_locale_from_utf8 (const gchar *utf8string, GError **error);
+gchar* g_locale_to_utf8   (const gchar  *opsysstring,
+			   gssize        len,            
+			   gsize        *bytes_read,     
+			   gsize        *bytes_written,  
+			   GError      **error);
+gchar* g_locale_from_utf8 (const gchar  *utf8string,
+			   gssize        len,            
+			   gsize        *bytes_read,     
+			   gsize        *bytes_written,  
+			   GError      **error);
 
 /* Convert between the operating system (or C runtime)
  * representation of file names and UTF-8.
  */
-gchar*   g_filename_to_utf8 (const gchar *opsysstring, GError **error);
-gchar*   g_filename_from_utf8 (const gchar *utf8string, GError **error);
+gchar* g_filename_to_utf8   (const gchar  *opsysstring,
+			     gssize        len,            
+			     gsize        *bytes_read,     
+			     gsize        *bytes_written,  
+			     GError      **error);
+gchar* g_filename_from_utf8 (const gchar  *utf8string,
+			     gssize        len,            
+			     gsize        *bytes_read,     
+			     gsize        *bytes_written,  
+			     GError      **error);
+
+gchar *g_filename_from_uri (const char *uri,
+			    char      **hostname,
+			    GError    **error);
+  
+gchar *g_filename_to_uri   (const char *filename,
+			    char       *hostname,
+			    GError    **error);
+
 
 G_END_DECLS
 
diff --git a/graf2d/win32gdk/gdk/src/glib/gdataset.c b/graf2d/win32gdk/gdk/src/glib/gdataset.c
new file mode 100644
index 00000000000..7d8d9afd47f
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gdataset.c
@@ -0,0 +1,631 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * gdataset.c: Generic dataset mechanism, similar to GtkObject data.
+ * Copyright (C) 1998 Tim Janik
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe ; FIXME: might still freeze, watch out, not thoroughly
+ * looked at yet.  
+ */
+
+#include        <string.h>
+#include	"glib.h"
+
+
+
+/* --- defines --- */
+#define	G_QUARK_BLOCK_SIZE			(512)
+#define	G_DATA_MEM_CHUNK_PREALLOC		(128)
+#define	G_DATA_CACHE_MAX			(512)
+#define	G_DATASET_MEM_CHUNK_PREALLOC		(32)
+
+
+/* --- structures --- */
+typedef struct _GDataset GDataset;
+struct _GData
+{
+  GData *next;
+  GQuark id;
+  gpointer data;
+  GDestroyNotify destroy_func;
+};
+
+struct _GDataset
+{
+  gconstpointer location;
+  GData        *datalist;
+};
+
+
+/* --- prototypes --- */
+static inline GDataset*	g_dataset_lookup		(gconstpointer	  dataset_location);
+static inline void	g_datalist_clear_i		(GData		**datalist);
+static void		g_dataset_destroy_internal	(GDataset	 *dataset);
+static inline gpointer	g_data_set_internal		(GData     	**datalist,
+							 GQuark   	  key_id,
+							 gpointer         data,
+							 GDestroyNotify   destroy_func,
+							 GDataset	 *dataset);
+static void		g_data_initialize		(void);
+static inline GQuark	g_quark_new			(gchar  	*string);
+
+
+/* --- variables --- */
+G_LOCK_DEFINE_STATIC (g_dataset_global);
+static GHashTable   *g_dataset_location_ht = NULL;
+static GDataset     *g_dataset_cached = NULL; /* should this be
+						 threadspecific? */
+static GMemChunk    *g_dataset_mem_chunk = NULL;
+static GMemChunk    *g_data_mem_chunk = NULL;
+static GData	    *g_data_cache = NULL;
+static guint	     g_data_cache_length = 0;
+
+G_LOCK_DEFINE_STATIC (g_quark_global);
+static GHashTable   *g_quark_ht = NULL;
+static gchar       **g_quarks = NULL;
+static GQuark        g_quark_seq_id = 0;
+
+
+/* --- functions --- */
+
+/* HOLDS: g_dataset_global_lock */
+static inline void
+g_datalist_clear_i (GData **datalist)
+{
+  register GData *list;
+  
+  /* unlink *all* items before walking their destructors
+   */
+  list = *datalist;
+  *datalist = NULL;
+  
+  while (list)
+    {
+      register GData *prev;
+      
+      prev = list;
+      list = prev->next;
+      
+      if (prev->destroy_func)
+	{
+	  G_UNLOCK (g_dataset_global);
+	  prev->destroy_func (prev->data);
+	  G_LOCK (g_dataset_global);
+	}
+      
+      if (g_data_cache_length < G_DATA_CACHE_MAX)
+	{
+	  prev->next = g_data_cache;
+	  g_data_cache = prev;
+	  g_data_cache_length++;
+	}
+      else
+	g_mem_chunk_free (g_data_mem_chunk, prev);
+    }
+}
+
+void
+g_datalist_clear (GData **datalist)
+{
+  g_return_if_fail (datalist != NULL);
+  
+  G_LOCK (g_dataset_global);
+  if (!g_dataset_location_ht)
+    g_data_initialize ();
+
+  while (*datalist)
+    g_datalist_clear_i (datalist);
+  G_UNLOCK (g_dataset_global);
+}
+
+/* HOLDS: g_dataset_global_lock */
+static inline GDataset*
+g_dataset_lookup (gconstpointer	dataset_location)
+{
+  register GDataset *dataset;
+  
+  if (g_dataset_cached && g_dataset_cached->location == dataset_location)
+    return g_dataset_cached;
+  
+  dataset = g_hash_table_lookup (g_dataset_location_ht, dataset_location);
+  if (dataset)
+    g_dataset_cached = dataset;
+  
+  return dataset;
+}
+
+/* HOLDS: g_dataset_global_lock */
+static void
+g_dataset_destroy_internal (GDataset *dataset)
+{
+  register gconstpointer dataset_location;
+  
+  dataset_location = dataset->location;
+  while (dataset)
+    {
+      if (!dataset->datalist)
+	{
+	  if (dataset == g_dataset_cached)
+	    g_dataset_cached = NULL;
+	  g_hash_table_remove (g_dataset_location_ht, dataset_location);
+	  g_mem_chunk_free (g_dataset_mem_chunk, dataset);
+	  break;
+	}
+      
+      g_datalist_clear_i (&dataset->datalist);
+      dataset = g_dataset_lookup (dataset_location);
+    }
+}
+
+void
+g_dataset_destroy (gconstpointer  dataset_location)
+{
+  g_return_if_fail (dataset_location != NULL);
+  
+  G_LOCK (g_dataset_global);
+  if (g_dataset_location_ht)
+    {
+      register GDataset *dataset;
+
+      dataset = g_dataset_lookup (dataset_location);
+      if (dataset)
+	g_dataset_destroy_internal (dataset);
+    }
+  G_UNLOCK (g_dataset_global);
+}
+
+/* HOLDS: g_dataset_global_lock */
+static inline gpointer
+g_data_set_internal (GData	  **datalist,
+		     GQuark         key_id,
+		     gpointer       data,
+		     GDestroyNotify destroy_func,
+		     GDataset	   *dataset)
+{
+  register GData *list;
+  
+  list = *datalist;
+  if (!data)
+    {
+      register GData *prev;
+      
+      prev = NULL;
+      while (list)
+	{
+	  if (list->id == key_id)
+	    {
+	      gpointer ret_data = NULL;
+
+	      if (prev)
+		prev->next = list->next;
+	      else
+		{
+		  *datalist = list->next;
+		  
+		  /* the dataset destruction *must* be done
+		   * prior to invokation of the data destroy function
+		   */
+		  if (!*datalist && dataset)
+		    g_dataset_destroy_internal (dataset);
+		}
+	      
+	      /* the GData struct *must* already be unlinked
+	       * when invoking the destroy function.
+	       * we use (data==NULL && destroy_func!=NULL) as
+	       * a special hint combination to "steal"
+	       * data without destroy notification
+	       */
+	      if (list->destroy_func && !destroy_func)
+		{
+		  G_UNLOCK (g_dataset_global);
+		  list->destroy_func (list->data);
+		  G_LOCK (g_dataset_global);
+		}
+	      else
+		ret_data = list->data;
+	      
+	      if (g_data_cache_length < G_DATA_CACHE_MAX)
+		{
+		  list->next = g_data_cache;
+		  g_data_cache = list;
+		  g_data_cache_length++;
+		}
+	      else
+		g_mem_chunk_free (g_data_mem_chunk, list);
+	      
+	      return ret_data;
+	    }
+	  
+	  prev = list;
+	  list = list->next;
+	}
+    }
+  else
+    {
+      while (list)
+	{
+	  if (list->id == key_id)
+	    {
+	      if (!list->destroy_func)
+		{
+		  list->data = data;
+		  list->destroy_func = destroy_func;
+		}
+	      else
+		{
+		  register GDestroyNotify dfunc;
+		  register gpointer ddata;
+		  
+		  dfunc = list->destroy_func;
+		  ddata = list->data;
+		  list->data = data;
+		  list->destroy_func = destroy_func;
+		  
+		  /* we need to have updated all structures prior to
+		   * invokation of the destroy function
+		   */
+		  G_UNLOCK (g_dataset_global);
+		  dfunc (ddata);
+		  G_LOCK (g_dataset_global);
+		}
+	      
+	      return NULL;
+	    }
+	  
+	  list = list->next;
+	}
+      
+      if (g_data_cache)
+	{
+	  list = g_data_cache;
+	  g_data_cache = list->next;
+	  g_data_cache_length--;
+	}
+      else
+	list = g_chunk_new (GData, g_data_mem_chunk);
+      list->next = *datalist;
+      list->id = key_id;
+      list->data = data;
+      list->destroy_func = destroy_func;
+      *datalist = list;
+    }
+
+  return NULL;
+}
+
+void
+g_dataset_id_set_data_full (gconstpointer  dataset_location,
+			    GQuark         key_id,
+			    gpointer       data,
+			    GDestroyNotify destroy_func)
+{
+  register GDataset *dataset;
+  
+  g_return_if_fail (dataset_location != NULL);
+  if (!data)
+    g_return_if_fail (destroy_func == NULL);
+  if (!key_id)
+    {
+      if (data)
+	g_return_if_fail (key_id > 0);
+      else
+	return;
+    }
+  
+  G_LOCK (g_dataset_global);
+  if (!g_dataset_location_ht)
+    g_data_initialize ();
+ 
+  dataset = g_dataset_lookup (dataset_location);
+  if (!dataset)
+    {
+      dataset = g_chunk_new (GDataset, g_dataset_mem_chunk);
+      dataset->location = dataset_location;
+      g_datalist_init (&dataset->datalist);
+      g_hash_table_insert (g_dataset_location_ht, 
+			   (gpointer) dataset->location,
+			   dataset);
+    }
+  
+  g_data_set_internal (&dataset->datalist, key_id, data, destroy_func, dataset);
+  G_UNLOCK (g_dataset_global);
+}
+
+void
+g_datalist_id_set_data_full (GData	  **datalist,
+			     GQuark         key_id,
+			     gpointer       data,
+			     GDestroyNotify destroy_func)
+{
+  g_return_if_fail (datalist != NULL);
+  if (!data)
+    g_return_if_fail (destroy_func == NULL);
+  if (!key_id)
+    {
+      if (data)
+	g_return_if_fail (key_id > 0);
+      else
+	return;
+    }
+
+  G_LOCK (g_dataset_global);
+  if (!g_dataset_location_ht)
+    g_data_initialize ();
+  
+  g_data_set_internal (datalist, key_id, data, destroy_func, NULL);
+  G_UNLOCK (g_dataset_global);
+}
+
+gpointer
+g_dataset_id_remove_no_notify (gconstpointer  dataset_location,
+			       GQuark         key_id)
+{
+  gpointer ret_data = NULL;
+
+  g_return_val_if_fail (dataset_location != NULL, NULL);
+  
+  G_LOCK (g_dataset_global);
+  if (key_id && g_dataset_location_ht)
+    {
+      GDataset *dataset;
+  
+      dataset = g_dataset_lookup (dataset_location);
+      if (dataset)
+	ret_data = g_data_set_internal (&dataset->datalist, key_id, NULL, (GDestroyNotify) 42, dataset);
+    } 
+  G_UNLOCK (g_dataset_global);
+
+  return ret_data;
+}
+
+gpointer
+g_datalist_id_remove_no_notify (GData	**datalist,
+				GQuark    key_id)
+{
+  gpointer ret_data = NULL;
+
+  g_return_val_if_fail (datalist != NULL, NULL);
+
+  G_LOCK (g_dataset_global);
+  if (key_id && g_dataset_location_ht)
+    ret_data = g_data_set_internal (datalist, key_id, NULL, (GDestroyNotify) 42, NULL);
+  G_UNLOCK (g_dataset_global);
+
+  return ret_data;
+}
+
+gpointer
+g_dataset_id_get_data (gconstpointer  dataset_location,
+		       GQuark         key_id)
+{
+  g_return_val_if_fail (dataset_location != NULL, NULL);
+  
+  G_LOCK (g_dataset_global);
+  if (key_id && g_dataset_location_ht)
+    {
+      register GDataset *dataset;
+      
+      dataset = g_dataset_lookup (dataset_location);
+      if (dataset)
+	{
+	  register GData *list;
+	  
+	  for (list = dataset->datalist; list; list = list->next)
+	    if (list->id == key_id)
+	      {
+		G_UNLOCK (g_dataset_global);
+		return list->data;
+	      }
+	}
+    }
+  G_UNLOCK (g_dataset_global);
+ 
+  return NULL;
+}
+
+gpointer
+g_datalist_id_get_data (GData	 **datalist,
+			GQuark     key_id)
+{
+  g_return_val_if_fail (datalist != NULL, NULL);
+  
+  if (key_id)
+    {
+      register GData *list;
+      
+      for (list = *datalist; list; list = list->next)
+	if (list->id == key_id)
+	  return list->data;
+    }
+  
+  return NULL;
+}
+
+void
+g_dataset_foreach (gconstpointer    dataset_location,
+		   GDataForeachFunc func,
+		   gpointer         user_data)
+{
+  register GDataset *dataset;
+  
+  g_return_if_fail (dataset_location != NULL);
+  g_return_if_fail (func != NULL);
+
+  G_LOCK (g_dataset_global);
+  if (g_dataset_location_ht)
+    {
+      dataset = g_dataset_lookup (dataset_location);
+      G_UNLOCK (g_dataset_global);
+      if (dataset)
+	{
+	  register GData *list, *next;
+	  
+	  for (list = dataset->datalist; list; list = next)
+	    {
+	      next = list->next;
+	      func (list->id, list->data, user_data);
+	    }
+	}
+    }
+  else
+    {
+      G_UNLOCK (g_dataset_global);
+    }
+}
+
+void
+g_datalist_foreach (GData	   **datalist,
+		    GDataForeachFunc func,
+		    gpointer         user_data)
+{
+  register GData *list, *next;
+
+  g_return_if_fail (datalist != NULL);
+  g_return_if_fail (func != NULL);
+  
+  for (list = *datalist; list; list = next)
+    {
+      next = list->next;
+      func (list->id, list->data, user_data);
+    }
+}
+
+void
+g_datalist_init (GData **datalist)
+{
+  g_return_if_fail (datalist != NULL);
+  
+  *datalist = NULL;
+}
+
+/* HOLDS: g_dataset_global_lock */
+static void
+g_data_initialize (void)
+{
+  g_return_if_fail (g_dataset_location_ht == NULL);
+
+  g_dataset_location_ht = g_hash_table_new (g_direct_hash, NULL);
+  g_dataset_cached = NULL;
+  g_dataset_mem_chunk =
+    g_mem_chunk_new ("GDataset MemChunk",
+		     sizeof (GDataset),
+		     sizeof (GDataset) * G_DATASET_MEM_CHUNK_PREALLOC,
+		     G_ALLOC_AND_FREE);
+  g_data_mem_chunk =
+    g_mem_chunk_new ("GData MemChunk",
+		     sizeof (GData),
+		     sizeof (GData) * G_DATA_MEM_CHUNK_PREALLOC,
+		     G_ALLOC_AND_FREE);
+}
+
+GQuark
+g_quark_try_string (const gchar *string)
+{
+  GQuark quark = 0;
+  g_return_val_if_fail (string != NULL, 0);
+  
+  G_LOCK (g_quark_global);
+  if (g_quark_ht)
+    quark = GPOINTER_TO_UINT (g_hash_table_lookup (g_quark_ht, string));
+  G_UNLOCK (g_quark_global);
+  
+  return quark;
+}
+
+GQuark
+g_quark_from_string (const gchar *string)
+{
+  GQuark quark;
+  
+  g_return_val_if_fail (string != NULL, 0);
+  
+  G_LOCK (g_quark_global);
+  if (g_quark_ht)
+    quark = (gulong) g_hash_table_lookup (g_quark_ht, string);
+  else
+    {
+      g_quark_ht = g_hash_table_new (g_str_hash, g_str_equal);
+      quark = 0;
+    }
+  
+  if (!quark)
+    quark = g_quark_new (g_strdup (string));
+  G_UNLOCK (g_quark_global);
+  
+  return quark;
+}
+
+GQuark
+g_quark_from_static_string (const gchar *string)
+{
+  GQuark quark;
+  
+  g_return_val_if_fail (string != NULL, 0);
+  
+  G_LOCK (g_quark_global);
+  if (g_quark_ht)
+    quark = (gulong) g_hash_table_lookup (g_quark_ht, string);
+  else
+    {
+      g_quark_ht = g_hash_table_new (g_str_hash, g_str_equal);
+      quark = 0;
+    }
+
+  if (!quark)
+    quark = g_quark_new ((gchar*) string);
+  G_UNLOCK (g_quark_global);
+ 
+  return quark;
+}
+
+G_CONST_RETURN gchar*
+g_quark_to_string (GQuark quark)
+{
+  gchar* result = NULL;
+  G_LOCK (g_quark_global);
+  if (quark > 0 && quark <= g_quark_seq_id)
+    result = g_quarks[quark - 1];
+  G_UNLOCK (g_quark_global);
+
+  return result;
+}
+
+/* HOLDS: g_quark_global_lock */
+static inline GQuark
+g_quark_new (gchar *string)
+{
+  GQuark quark;
+  
+  if (g_quark_seq_id % G_QUARK_BLOCK_SIZE == 0)
+    g_quarks = g_renew (gchar*, g_quarks, g_quark_seq_id + G_QUARK_BLOCK_SIZE);
+  
+  g_quarks[g_quark_seq_id] = string;
+  g_quark_seq_id++;
+  quark = g_quark_seq_id;
+  g_hash_table_insert (g_quark_ht, string, GUINT_TO_POINTER (quark));
+  
+  return quark;
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gdataset.h b/graf2d/win32gdk/gdk/src/glib/gdataset.h
index f9d15b3088f..e04a706c102 100644
--- a/graf2d/win32gdk/gdk/src/glib/gdataset.h
+++ b/graf2d/win32gdk/gdk/src/glib/gdataset.h
@@ -27,7 +27,7 @@
 #ifndef __G_DATASET_H__
 #define __G_DATASET_H__
 
-#include <gquark.h>
+#include <glib/gquark.h>
 
 G_BEGIN_DECLS
 
diff --git a/graf2d/win32gdk/gdk/src/glib/gdate.c b/graf2d/win32gdk/gdk/src/glib/gdate.c
new file mode 100644
index 00000000000..08b0334bb9d
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gdate.c
@@ -0,0 +1,1445 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#define DEBUG_MSG(x)	/* */
+#ifdef G_ENABLE_DEBUG
+/* #define DEBUG_MSG(args)	g_message args ; */
+#endif
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include "glib.h"
+
+#include <time.h>
+#include <string.h>
+#include <ctype.h>
+#include <stdlib.h>
+#include <locale.h>
+
+GDate*
+g_date_new ()
+{
+  GDate *d = g_new0 (GDate, 1); /* happily, 0 is the invalid flag for everything. */
+  
+  return d;
+}
+
+GDate*
+g_date_new_dmy (GDateDay day, GDateMonth m, GDateYear y)
+{
+  GDate *d;
+  g_return_val_if_fail (g_date_valid_dmy (day, m, y), NULL);
+  
+  d = g_new (GDate, 1);
+  
+  d->julian = FALSE;
+  d->dmy    = TRUE;
+  
+  d->month = m;
+  d->day   = day;
+  d->year  = y;
+  
+  g_assert (g_date_valid (d));
+  
+  return d;
+}
+
+GDate*
+g_date_new_julian (guint32 j)
+{
+  GDate *d;
+  g_return_val_if_fail (g_date_valid_julian (j), NULL);
+  
+  d = g_new (GDate, 1);
+  
+  d->julian = TRUE;
+  d->dmy    = FALSE;
+  
+  d->julian_days = j;
+  
+  g_assert (g_date_valid (d));
+  
+  return d;
+}
+
+void
+g_date_free (GDate *d)
+{
+  g_return_if_fail (d != NULL);
+  
+  g_free (d);
+}
+
+gboolean     
+g_date_valid (const GDate *d)
+{
+  g_return_val_if_fail (d != NULL, FALSE);
+  
+  return (d->julian || d->dmy);
+}
+
+static const guint8 days_in_months[2][13] = 
+{  /* error, jan feb mar apr may jun jul aug sep oct nov dec */
+  {  0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }, 
+  {  0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 } /* leap year */
+};
+
+static const guint16 days_in_year[2][14] = 
+{  /* 0, jan feb mar apr may  jun  jul  aug  sep  oct  nov  dec */
+  {  0, 0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334, 365 }, 
+  {  0, 0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335, 366 }
+};
+
+gboolean     
+g_date_valid_month (GDateMonth   m)
+{ 
+  return ( (m > G_DATE_BAD_MONTH) && (m < 13) );
+}
+
+gboolean     
+g_date_valid_year (GDateYear    y)
+{
+  return ( y > G_DATE_BAD_YEAR );
+}
+
+gboolean     
+g_date_valid_day (GDateDay     d)
+{
+  return ( (d > G_DATE_BAD_DAY) && (d < 32) );
+}
+
+gboolean     
+g_date_valid_weekday (GDateWeekday w)
+{
+  return ( (w > G_DATE_BAD_WEEKDAY) && (w < 8) );
+}
+
+gboolean     
+g_date_valid_julian (guint32      j)
+{
+  return (j > G_DATE_BAD_JULIAN);
+}
+
+gboolean     
+g_date_valid_dmy (GDateDay     d, 
+                  GDateMonth   m, 
+		  GDateYear    y)
+{
+  return ( (m > G_DATE_BAD_MONTH) &&
+           (m < 13)               && 
+           (d > G_DATE_BAD_DAY)   && 
+           (y > G_DATE_BAD_YEAR)  &&   /* must check before using g_date_is_leap_year */
+           (d <=  (g_date_is_leap_year (y) ? 
+		   days_in_months[1][m] : days_in_months[0][m])) );
+}
+
+
+/* "Julian days" just means an absolute number of days, where Day 1 ==
+ *   Jan 1, Year 1
+ */
+static void
+g_date_update_julian (const GDate *const_d)
+{
+  GDate *d = (GDate *) const_d;
+  GDateYear year;
+  gint index;
+  
+  g_return_if_fail (d != NULL);
+  g_return_if_fail (d->dmy);
+  g_return_if_fail (!d->julian);
+  g_return_if_fail (g_date_valid_dmy (d->day, d->month, d->year));
+  
+  /* What we actually do is: multiply years * 365 days in the year,
+   *  add the number of years divided by 4, subtract the number of
+   *  years divided by 100 and add the number of years divided by 400,
+   *  which accounts for leap year stuff. Code from Steffen Beyer's
+   *  DateCalc. 
+   */
+  
+  year = d->year - 1; /* we know d->year > 0 since it's valid */
+  
+  d->julian_days = year * 365U;
+  d->julian_days += (year >>= 2); /* divide by 4 and add */
+  d->julian_days -= (year /= 25); /* divides original # years by 100 */
+  d->julian_days += year >> 2;    /* divides by 4, which divides original by 400 */
+  
+  index = g_date_is_leap_year (d->year) ? 1 : 0;
+  
+  d->julian_days += days_in_year[index][d->month] + d->day;
+  
+  g_return_if_fail (g_date_valid_julian (d->julian_days));
+  
+  d->julian = TRUE;
+}
+
+static void 
+g_date_update_dmy (const GDate *const_d)
+{
+  GDate *d = (GDate *) const_d;
+  GDateYear y;
+  GDateMonth m;
+  GDateDay day;
+  
+  guint32 A, B, C, D, E, M;
+  
+  g_return_if_fail (d != NULL);
+  g_return_if_fail (d->julian);
+  g_return_if_fail (!d->dmy);
+  g_return_if_fail (g_date_valid_julian (d->julian_days));
+  
+  /* Formula taken from the Calendar FAQ; the formula was for the
+   *  Julian Period which starts on 1 January 4713 BC, so we add
+   *  1,721,425 to the number of days before doing the formula.
+   *
+   * I'm sure this can be simplified for our 1 January 1 AD period
+   * start, but I can't figure out how to unpack the formula.  
+   */
+  
+  A = d->julian_days + 1721425 + 32045;
+  B = ( 4 *(A + 36524) )/ 146097 - 1;
+  C = A - (146097 * B)/4;
+  D = ( 4 * (C + 365) ) / 1461 - 1;
+  E = C - ((1461*D) / 4);
+  M = (5 * (E - 1) + 2)/153;
+  
+  m = M + 3 - (12*(M/10));
+  day = E - (153*M + 2)/5;
+  y = 100 * B + D - 4800 + (M/10);
+  
+#ifdef G_ENABLE_DEBUG
+  if (!g_date_valid_dmy (day, m, y)) 
+    {
+      g_warning ("\nOOPS julian: %u  computed dmy: %u %u %u\n", 
+		 d->julian_days, day, m, y);
+    }
+#endif
+  
+  d->month = m;
+  d->day   = day;
+  d->year  = y;
+  
+  d->dmy = TRUE;
+}
+
+GDateWeekday 
+g_date_get_weekday (const GDate *d)
+{
+  g_return_val_if_fail (d != NULL, G_DATE_BAD_WEEKDAY);
+  g_return_val_if_fail (g_date_valid (d), G_DATE_BAD_WEEKDAY);
+  
+  if (!d->julian) 
+    {
+      g_date_update_julian (d);
+    }
+  g_return_val_if_fail (d->julian, G_DATE_BAD_WEEKDAY);
+  
+  return ((d->julian_days - 1) % 7) + 1;
+}
+
+GDateMonth   
+g_date_get_month (const GDate *d)
+{
+  g_return_val_if_fail (d != NULL, G_DATE_BAD_MONTH);
+  g_return_val_if_fail (g_date_valid (d), G_DATE_BAD_MONTH);
+  
+  if (!d->dmy) 
+    {
+      g_date_update_dmy (d);
+    }
+  g_return_val_if_fail (d->dmy, G_DATE_BAD_MONTH);
+  
+  return d->month;
+}
+
+GDateYear    
+g_date_get_year (const GDate *d)
+{
+  g_return_val_if_fail (d != NULL, G_DATE_BAD_YEAR);
+  g_return_val_if_fail (g_date_valid (d), G_DATE_BAD_YEAR);
+  
+  if (!d->dmy) 
+    {
+      g_date_update_dmy (d);
+    }
+  g_return_val_if_fail (d->dmy, G_DATE_BAD_YEAR);  
+  
+  return d->year;
+}
+
+GDateDay     
+g_date_get_day (const GDate *d)
+{
+  g_return_val_if_fail (d != NULL, G_DATE_BAD_DAY);
+  g_return_val_if_fail (g_date_valid (d), G_DATE_BAD_DAY);
+  
+  if (!d->dmy) 
+    {
+      g_date_update_dmy (d);
+    }
+  g_return_val_if_fail (d->dmy, G_DATE_BAD_DAY);  
+  
+  return d->day;
+}
+
+guint32      
+g_date_get_julian (const GDate *d)
+{
+  g_return_val_if_fail (d != NULL, G_DATE_BAD_JULIAN);
+  g_return_val_if_fail (g_date_valid (d), G_DATE_BAD_JULIAN);
+  
+  if (!d->julian) 
+    {
+      g_date_update_julian (d);
+    }
+  g_return_val_if_fail (d->julian, G_DATE_BAD_JULIAN);  
+  
+  return d->julian_days;
+}
+
+guint        
+g_date_get_day_of_year (const GDate *d)
+{
+  gint index;
+  
+  g_return_val_if_fail (d != NULL, 0);
+  g_return_val_if_fail (g_date_valid (d), 0);
+  
+  if (!d->dmy) 
+    {
+      g_date_update_dmy (d);
+    }
+  g_return_val_if_fail (d->dmy, 0);  
+  
+  index = g_date_is_leap_year (d->year) ? 1 : 0;
+  
+  return (days_in_year[index][d->month] + d->day);
+}
+
+guint        
+g_date_get_monday_week_of_year (const GDate *d)
+{
+  GDateWeekday wd;
+  guint day;
+  GDate first;
+  
+  g_return_val_if_fail (d != NULL, 0);
+  g_return_val_if_fail (g_date_valid (d), 0);
+  
+  if (!d->dmy) 
+    {
+      g_date_update_dmy (d);
+    }
+  g_return_val_if_fail (d->dmy, 0);  
+  
+  g_date_clear (&first, 1);
+  
+  g_date_set_dmy (&first, 1, 1, d->year);
+  
+  wd = g_date_get_weekday (&first) - 1; /* make Monday day 0 */
+  day = g_date_get_day_of_year (d) - 1;
+  
+  return ((day + wd)/7U + (wd == 0 ? 1 : 0));
+}
+
+guint        
+g_date_get_sunday_week_of_year (const GDate *d)
+{
+  GDateWeekday wd;
+  guint day;
+  GDate first;
+  
+  g_return_val_if_fail (d != NULL, 0);
+  g_return_val_if_fail (g_date_valid (d), 0);
+  
+  if (!d->dmy) 
+    {
+      g_date_update_dmy (d);
+    }
+  g_return_val_if_fail (d->dmy, 0);  
+  
+  g_date_clear (&first, 1);
+  
+  g_date_set_dmy (&first, 1, 1, d->year);
+  
+  wd = g_date_get_weekday (&first);
+  if (wd == 7) wd = 0; /* make Sunday day 0 */
+  day = g_date_get_day_of_year (d) - 1;
+  
+  return ((day + wd)/7U + (wd == 0 ? 1 : 0));
+}
+
+gint
+g_date_days_between (const GDate *d1,
+		     const GDate *d2)
+{
+  g_return_val_if_fail (d1 != NULL, 0);
+  g_return_val_if_fail (d2 != NULL, 0);
+
+  g_return_val_if_fail (g_date_valid (d1), 0);
+  g_return_val_if_fail (g_date_valid (d2), 0);
+
+  return (gint)g_date_get_julian (d2) - (gint)g_date_get_julian (d1);
+}
+
+void         
+g_date_clear (GDate       *d, guint ndates)
+{
+  g_return_if_fail (d != NULL);
+  g_return_if_fail (ndates != 0);
+  
+  memset (d, 0x0, ndates*sizeof (GDate)); 
+}
+
+G_LOCK_DEFINE_STATIC (g_date_global);
+
+/* These are for the parser, output to the user should use *
+ * g_date_strftime () - this creates more never-freed memory to annoy
+ * all those memory debugger users. :-) 
+ */
+
+static gchar *long_month_names[13] = 
+{ 
+  "Error", NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL 
+};
+
+static gchar *short_month_names[13] = 
+{
+  "Error", NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL 
+};
+
+/* This tells us if we need to update the parse info */
+static gchar *current_locale = NULL;
+
+/* order of these in the current locale */
+static GDateDMY dmy_order[3] = 
+{
+   G_DATE_DAY, G_DATE_MONTH, G_DATE_YEAR
+};
+
+/* Where to chop two-digit years: i.e., for the 1930 default, numbers
+ * 29 and below are counted as in the year 2000, numbers 30 and above
+ * are counted as in the year 1900.  
+ */
+
+static GDateYear twodigit_start_year = 1930;
+
+/* It is impossible to enter a year between 1 AD and 99 AD with this
+ * in effect.  
+ */
+static gboolean using_twodigit_years = FALSE;
+
+struct _GDateParseTokens {
+  gint num_ints;
+  gint n[3];
+  guint month;
+};
+
+typedef struct _GDateParseTokens GDateParseTokens;
+
+#define NUM_LEN 10
+
+/* HOLDS: g_date_global_lock */
+static void
+g_date_fill_parse_tokens (const gchar *str, GDateParseTokens *pt)
+{
+  gchar num[4][NUM_LEN+1];
+  gint i;
+  const guchar *s;
+  
+  /* We count 4, but store 3; so we can give an error
+   * if there are 4.
+   */
+  num[0][0] = num[1][0] = num[2][0] = num[3][0] = '\0';
+  
+  s = (const guchar *) str;
+  pt->num_ints = 0;
+  while (*s && pt->num_ints < 4) 
+    {
+      
+      i = 0;
+      while (*s && isdigit (*s) && i <= NUM_LEN)
+        {
+          num[pt->num_ints][i] = *s;
+          ++s; 
+          ++i;
+        }
+      
+      if (i > 0) 
+        {
+          num[pt->num_ints][i] = '\0';
+          ++(pt->num_ints);
+        }
+      
+      if (*s == '\0') break;
+      
+      ++s;
+    }
+  
+  pt->n[0] = pt->num_ints > 0 ? atoi (num[0]) : 0;
+  pt->n[1] = pt->num_ints > 1 ? atoi (num[1]) : 0;
+  pt->n[2] = pt->num_ints > 2 ? atoi (num[2]) : 0;
+  
+  pt->month = G_DATE_BAD_MONTH;
+  
+  if (pt->num_ints < 3)
+    {
+      gchar *casefold;
+      gchar *normalized;
+      
+      casefold = g_utf8_casefold (str, -1);
+      normalized = g_utf8_normalize (casefold, -1, G_NORMALIZE_ALL);
+      g_free (casefold);
+
+      i = 1;
+      while (i < 13)
+        {
+          if (long_month_names[i] != NULL) 
+            {
+              const gchar *found = strstr (normalized, long_month_names[i]);
+	      
+              if (found != NULL)
+                {
+                  pt->month = i;
+		  return;
+                }
+            }
+	  
+          if (short_month_names[i] != NULL) 
+            {
+              const gchar *found = strstr (normalized, short_month_names[i]);
+	      
+              if (found != NULL)
+                {
+                  pt->month = i;
+                  return;
+                }
+            }
+
+          ++i;
+        }      
+    }
+}
+
+/* HOLDS: g_date_global_lock */
+static void
+g_date_prepare_to_parse (const gchar *str, GDateParseTokens *pt)
+{
+  const gchar *locale = setlocale (LC_TIME, NULL);
+  gboolean recompute_localeinfo = FALSE;
+  GDate d;
+  
+  g_return_if_fail (locale != NULL); /* should not happen */
+  
+  g_date_clear (&d, 1);              /* clear for scratch use */
+  
+  if ( (current_locale == NULL) || (strcmp (locale, current_locale) != 0) ) 
+    {
+      recompute_localeinfo = TRUE;  /* Uh, there used to be a reason for the temporary */
+    }
+  
+  if (recompute_localeinfo)
+    {
+      int i = 1;
+      GDateParseTokens testpt;
+      gchar buf[128];
+      
+      g_free (current_locale); /* still works if current_locale == NULL */
+      
+      current_locale = g_strdup (locale);
+      
+      while (i < 13) 
+        {
+	  gchar *casefold;
+	  
+          g_date_set_dmy (&d, 1, i, 1);
+	  
+          g_return_if_fail (g_date_valid (&d));
+	  
+          g_date_strftime (buf, 127, "%b", &d);
+
+	  casefold = g_utf8_casefold (buf, -1);
+          g_free (short_month_names[i]);
+          short_month_names[i] = g_utf8_normalize (casefold, -1, G_NORMALIZE_ALL);
+	  g_free (casefold);
+	  
+          g_date_strftime (buf, 127, "%B", &d);
+	  casefold = g_utf8_casefold (buf, -1);
+          g_free (long_month_names[i]);
+          long_month_names[i] = g_utf8_normalize (casefold, -1, G_NORMALIZE_ALL);
+	  g_free (casefold);
+          
+          ++i;
+        }
+      
+      /* Determine DMY order */
+      
+      /* had to pick a random day - don't change this, some strftimes
+       * are broken on some days, and this one is good so far. */
+      g_date_set_dmy (&d, 4, 7, 1976);
+      
+      g_date_strftime (buf, 127, "%x", &d);
+      
+      g_date_fill_parse_tokens (buf, &testpt);
+      
+      i = 0;
+      while (i < testpt.num_ints)
+        {
+          switch (testpt.n[i])
+            {
+            case 7:
+              dmy_order[i] = G_DATE_MONTH;
+              break;
+            case 4:
+              dmy_order[i] = G_DATE_DAY;
+              break;
+            case 76:
+              using_twodigit_years = TRUE; /* FALL THRU */
+            case 1976:
+              dmy_order[i] = G_DATE_YEAR;
+              break;
+            default:
+              /* leave it unchanged */
+              break;
+            }
+          ++i;
+        }
+      
+#ifdef G_ENABLE_DEBUG
+      DEBUG_MSG (("**GDate prepared a new set of locale-specific parse rules."));
+      i = 1;
+      while (i < 13) 
+        {
+          DEBUG_MSG (("  %s   %s", long_month_names[i], short_month_names[i]));
+          ++i;
+        }
+      if (using_twodigit_years)
+	DEBUG_MSG (("**Using twodigit years with cutoff year: %u", twodigit_start_year));
+      { 
+        gchar *strings[3];
+        i = 0;
+        while (i < 3)
+          {
+            switch (dmy_order[i])
+              {
+              case G_DATE_MONTH:
+                strings[i] = "Month";
+                break;
+              case G_DATE_YEAR:
+                strings[i] = "Year";
+                break;
+              case G_DATE_DAY:
+                strings[i] = "Day";
+                break;
+              default:
+                strings[i] = NULL;
+                break;
+              }
+            ++i;
+          }
+        DEBUG_MSG (("**Order: %s, %s, %s", strings[0], strings[1], strings[2]));
+        DEBUG_MSG (("**Sample date in this locale: `%s'", buf));
+      }
+#endif
+    }
+  
+  g_date_fill_parse_tokens (str, pt);
+}
+
+void         
+g_date_set_parse (GDate       *d, 
+                  const gchar *str)
+{
+  GDateParseTokens pt;
+  guint m = G_DATE_BAD_MONTH, day = G_DATE_BAD_DAY, y = G_DATE_BAD_YEAR;
+  
+  g_return_if_fail (d != NULL);
+  
+  /* set invalid */
+  g_date_clear (d, 1);
+  
+  G_LOCK (g_date_global);
+
+  g_date_prepare_to_parse (str, &pt);
+  
+  DEBUG_MSG (("Found %d ints, `%d' `%d' `%d' and written out month %d", 
+	      pt.num_ints, pt.n[0], pt.n[1], pt.n[2], pt.month));
+  
+  
+  if (pt.num_ints == 4) 
+    {
+      G_UNLOCK (g_date_global);
+      return; /* presumably a typo; bail out. */
+    }
+  
+  if (pt.num_ints > 1)
+    {
+      int i = 0;
+      int j = 0;
+      
+      g_assert (pt.num_ints < 4); /* i.e., it is 2 or 3 */
+      
+      while (i < pt.num_ints && j < 3) 
+        {
+          switch (dmy_order[j])
+            {
+            case G_DATE_MONTH:
+	    {
+	      if (pt.num_ints == 2 && pt.month != G_DATE_BAD_MONTH)
+		{
+		  m = pt.month;
+		  ++j;      /* skip months, but don't skip this number */
+		  continue;
+		}
+	      else 
+		m = pt.n[i];
+	    }
+	    break;
+            case G_DATE_DAY:
+	    {
+	      if (pt.num_ints == 2 && pt.month == G_DATE_BAD_MONTH)
+		{
+		  day = 1;
+		  ++j;      /* skip days, since we may have month/year */
+		  continue;
+		}
+	      day = pt.n[i];
+	    }
+	    break;
+            case G_DATE_YEAR:
+	    {
+	      y  = pt.n[i];
+	      
+	      if (using_twodigit_years && y < 100)
+		{
+		  guint two     =  twodigit_start_year % 100;
+		  guint century = (twodigit_start_year / 100) * 100;
+		  
+		  if (y < two)
+		    century += 100;
+		  
+		  y += century;
+		}
+	    }
+	    break;
+            default:
+              break;
+            }
+	  
+          ++i;
+          ++j;
+        }
+      
+      
+      if (pt.num_ints == 3 && !g_date_valid_dmy (day, m, y))
+        {
+          /* Try YYYY MM DD */
+          y   = pt.n[0];
+          m   = pt.n[1];
+          day = pt.n[2];
+          
+          if (using_twodigit_years && y < 100) 
+            y = G_DATE_BAD_YEAR; /* avoids ambiguity */
+        }
+      else if (pt.num_ints == 2)
+	{
+	  if (m == G_DATE_BAD_MONTH && pt.month != G_DATE_BAD_MONTH)
+	    {
+	      m = pt.month;
+	    }
+	}
+    }
+  else if (pt.num_ints == 1) 
+    {
+      if (pt.month != G_DATE_BAD_MONTH)
+        {
+          /* Month name and year? */
+          m    = pt.month;
+          day  = 1;
+          y = pt.n[0];
+        }
+      else
+        {
+          /* Try yyyymmdd and yymmdd */
+	  
+          m   = (pt.n[0]/100) % 100;
+          day = pt.n[0] % 100;
+          y   = pt.n[0]/10000;
+	  
+          /* FIXME move this into a separate function */
+          if (using_twodigit_years && y < 100)
+            {
+              guint two     =  twodigit_start_year % 100;
+              guint century = (twodigit_start_year / 100) * 100;
+              
+              if (y < two)
+                century += 100;
+              
+              y += century;
+            }
+        }
+    }
+  
+  /* See if we got anything valid out of all this. */
+  /* y < 8000 is to catch 19998 style typos; the library is OK up to 65535 or so */
+  if (y < 8000 && g_date_valid_dmy (day, m, y)) 
+    {
+      d->month = m;
+      d->day   = day;
+      d->year  = y;
+      d->dmy   = TRUE;
+    }
+#ifdef G_ENABLE_DEBUG
+  else 
+    DEBUG_MSG (("Rejected DMY %u %u %u", day, m, y));
+#endif
+  G_UNLOCK (g_date_global);
+}
+
+void         
+g_date_set_time (GDate *d,
+		 GTime  time)
+{
+  time_t t = time;
+  struct tm tm;
+  
+  g_return_if_fail (d != NULL);
+  
+#ifdef HAVE_LOCALTIME_R
+  localtime_r (&t, &tm);
+#else
+  {
+    struct tm *ptm = localtime (&t);
+    g_assert (ptm);
+    memcpy ((void *) &tm, (void *) ptm, sizeof(struct tm));
+  }
+#endif
+  
+  d->julian = FALSE;
+  
+  d->month = tm.tm_mon + 1;
+  d->day   = tm.tm_mday;
+  d->year  = tm.tm_year + 1900;
+  
+  g_return_if_fail (g_date_valid_dmy (d->day, d->month, d->year));
+  
+  d->dmy    = TRUE;
+}
+
+void         
+g_date_set_month (GDate     *d, 
+                  GDateMonth m)
+{
+  g_return_if_fail (d != NULL);
+  g_return_if_fail (g_date_valid_month (m));
+
+  if (d->julian && !d->dmy) g_date_update_dmy(d);
+  d->julian = FALSE;
+  
+  d->month = m;
+  
+  if (g_date_valid_dmy (d->day, d->month, d->year))
+    d->dmy = TRUE;
+  else 
+    d->dmy = FALSE;
+}
+
+void         
+g_date_set_day (GDate     *d, 
+                GDateDay day)
+{
+  g_return_if_fail (d != NULL);
+  g_return_if_fail (g_date_valid_day (day));
+  
+  if (d->julian && !d->dmy) g_date_update_dmy(d);
+  d->julian = FALSE;
+  
+  d->day = day;
+  
+  if (g_date_valid_dmy (d->day, d->month, d->year))
+    d->dmy = TRUE;
+  else 
+    d->dmy = FALSE;
+}
+
+void         
+g_date_set_year (GDate     *d, 
+                 GDateYear  y)
+{
+  g_return_if_fail (d != NULL);
+  g_return_if_fail (g_date_valid_year (y));
+  
+  if (d->julian && !d->dmy) g_date_update_dmy(d);
+  d->julian = FALSE;
+  
+  d->year = y;
+  
+  if (g_date_valid_dmy (d->day, d->month, d->year))
+    d->dmy = TRUE;
+  else 
+    d->dmy = FALSE;
+}
+
+void         
+g_date_set_dmy (GDate     *d, 
+                GDateDay   day, 
+                GDateMonth m, 
+                GDateYear  y)
+{
+  g_return_if_fail (d != NULL);
+  g_return_if_fail (g_date_valid_dmy (day, m, y));
+  
+  d->julian = FALSE;
+  
+  d->month = m;
+  d->day   = day;
+  d->year  = y;
+  
+  d->dmy = TRUE;
+}
+
+void         
+g_date_set_julian (GDate *d, guint32 j)
+{
+  g_return_if_fail (d != NULL);
+  g_return_if_fail (g_date_valid_julian (j));
+  
+  d->julian_days = j;
+  d->julian = TRUE;
+  d->dmy = FALSE;
+}
+
+
+gboolean     
+g_date_is_first_of_month (const GDate *d)
+{
+  g_return_val_if_fail (d != NULL, FALSE);
+  g_return_val_if_fail (g_date_valid (d), FALSE);
+  
+  if (!d->dmy) 
+    {
+      g_date_update_dmy (d);
+    }
+  g_return_val_if_fail (d->dmy, FALSE);  
+  
+  if (d->day == 1) return TRUE;
+  else return FALSE;
+}
+
+gboolean     
+g_date_is_last_of_month (const GDate *d)
+{
+  gint index;
+  
+  g_return_val_if_fail (d != NULL, FALSE);
+  g_return_val_if_fail (g_date_valid (d), FALSE);
+  
+  if (!d->dmy) 
+    {
+      g_date_update_dmy (d);
+    }
+  g_return_val_if_fail (d->dmy, FALSE);  
+  
+  index = g_date_is_leap_year (d->year) ? 1 : 0;
+  
+  if (d->day == days_in_months[index][d->month]) return TRUE;
+  else return FALSE;
+}
+
+void         
+g_date_add_days (GDate *d, guint ndays)
+{
+  g_return_if_fail (d != NULL);
+  g_return_if_fail (g_date_valid (d));
+  
+  if (!d->julian)
+    {
+      g_date_update_julian (d);
+    }
+  g_return_if_fail (d->julian);
+  
+  d->julian_days += ndays;
+  d->dmy = FALSE;
+}
+
+void         
+g_date_subtract_days (GDate *d, guint ndays)
+{
+  g_return_if_fail (d != NULL);
+  g_return_if_fail (g_date_valid (d));
+  
+  if (!d->julian)
+    {
+      g_date_update_julian (d);
+    }
+  g_return_if_fail (d->julian);
+  g_return_if_fail (d->julian_days > ndays);
+  
+  d->julian_days -= ndays;
+  d->dmy = FALSE;
+}
+
+void         
+g_date_add_months (GDate       *d, 
+                   guint        nmonths)
+{
+  guint years, months;
+  gint index;
+  
+  g_return_if_fail (d != NULL);
+  g_return_if_fail (g_date_valid (d));
+  
+  if (!d->dmy) 
+    {
+      g_date_update_dmy (d);
+    }
+  g_return_if_fail (d->dmy);  
+  
+  nmonths += d->month - 1;
+  
+  years  = nmonths/12;
+  months = nmonths%12;
+  
+  d->month = months + 1;
+  d->year  += years;
+  
+  index = g_date_is_leap_year (d->year) ? 1 : 0;
+  
+  if (d->day > days_in_months[index][d->month])
+    d->day = days_in_months[index][d->month];
+  
+  d->julian = FALSE;
+  
+  g_return_if_fail (g_date_valid (d));
+}
+
+void         
+g_date_subtract_months (GDate       *d, 
+                        guint        nmonths)
+{
+  guint years, months;
+  gint index;
+  
+  g_return_if_fail (d != NULL);
+  g_return_if_fail (g_date_valid (d));
+  
+  if (!d->dmy) 
+    {
+      g_date_update_dmy (d);
+    }
+  g_return_if_fail (d->dmy);  
+  
+  years  = nmonths/12;
+  months = nmonths%12;
+  
+  g_return_if_fail (d->year > years);
+  
+  d->year  -= years;
+  
+  if (d->month > months) d->month -= months;
+  else 
+    {
+      months -= d->month;
+      d->month = 12 - months;
+      d->year -= 1;
+    }
+  
+  index = g_date_is_leap_year (d->year) ? 1 : 0;
+  
+  if (d->day > days_in_months[index][d->month])
+    d->day = days_in_months[index][d->month];
+  
+  d->julian = FALSE;
+  
+  g_return_if_fail (g_date_valid (d));
+}
+
+void         
+g_date_add_years (GDate       *d, 
+                  guint        nyears)
+{
+  g_return_if_fail (d != NULL);
+  g_return_if_fail (g_date_valid (d));
+  
+  if (!d->dmy) 
+    {
+      g_date_update_dmy (d);
+    }
+  g_return_if_fail (d->dmy);  
+  
+  d->year += nyears;
+  
+  if (d->month == 2 && d->day == 29)
+    {
+      if (!g_date_is_leap_year (d->year))
+        {
+          d->day = 28;
+        }
+    }
+  
+  d->julian = FALSE;
+}
+
+void         
+g_date_subtract_years (GDate       *d, 
+                       guint        nyears)
+{
+  g_return_if_fail (d != NULL);
+  g_return_if_fail (g_date_valid (d));
+  
+  if (!d->dmy) 
+    {
+      g_date_update_dmy (d);
+    }
+  g_return_if_fail (d->dmy);  
+  g_return_if_fail (d->year > nyears);
+  
+  d->year -= nyears;
+  
+  if (d->month == 2 && d->day == 29)
+    {
+      if (!g_date_is_leap_year (d->year))
+        {
+          d->day = 28;
+        }
+    }
+  
+  d->julian = FALSE;
+}
+
+
+gboolean     
+g_date_is_leap_year (GDateYear  year)
+{
+  g_return_val_if_fail (g_date_valid_year (year), FALSE);
+  
+  return ( (((year % 4) == 0) && ((year % 100) != 0)) ||
+           (year % 400) == 0 );
+}
+
+guint8         
+g_date_get_days_in_month (GDateMonth month, 
+                          GDateYear  year)
+{
+  gint index;
+  
+  g_return_val_if_fail (g_date_valid_year (year), 0);
+  g_return_val_if_fail (g_date_valid_month (month), 0);
+  
+  index = g_date_is_leap_year (year) ? 1 : 0;
+  
+  return days_in_months[index][month];
+}
+
+guint8       
+g_date_get_monday_weeks_in_year (GDateYear  year)
+{
+  GDate d;
+  
+  g_return_val_if_fail (g_date_valid_year (year), 0);
+  
+  g_date_clear (&d, 1);
+  g_date_set_dmy (&d, 1, 1, year);
+  if (g_date_get_weekday (&d) == G_DATE_MONDAY) return 53;
+  g_date_set_dmy (&d, 31, 12, year);
+  if (g_date_get_weekday (&d) == G_DATE_MONDAY) return 53;
+  if (g_date_is_leap_year (year)) 
+    {
+      g_date_set_dmy (&d, 2, 1, year);
+      if (g_date_get_weekday (&d) == G_DATE_MONDAY) return 53;
+      g_date_set_dmy (&d, 30, 12, year);
+      if (g_date_get_weekday (&d) == G_DATE_MONDAY) return 53;
+    }
+  return 52;
+}
+
+guint8       
+g_date_get_sunday_weeks_in_year (GDateYear  year)
+{
+  GDate d;
+  
+  g_return_val_if_fail (g_date_valid_year (year), 0);
+  
+  g_date_clear (&d, 1);
+  g_date_set_dmy (&d, 1, 1, year);
+  if (g_date_get_weekday (&d) == G_DATE_SUNDAY) return 53;
+  g_date_set_dmy (&d, 31, 12, year);
+  if (g_date_get_weekday (&d) == G_DATE_SUNDAY) return 53;
+  if (g_date_is_leap_year (year)) 
+    {
+      g_date_set_dmy (&d, 2, 1, year);
+      if (g_date_get_weekday (&d) == G_DATE_SUNDAY) return 53;
+      g_date_set_dmy (&d, 30, 12, year);
+      if (g_date_get_weekday (&d) == G_DATE_SUNDAY) return 53;
+    }
+  return 52;
+}
+
+gint         
+g_date_compare (const GDate *lhs, 
+                const GDate *rhs)
+{
+  g_return_val_if_fail (lhs != NULL, 0);
+  g_return_val_if_fail (rhs != NULL, 0);
+  g_return_val_if_fail (g_date_valid (lhs), 0);
+  g_return_val_if_fail (g_date_valid (rhs), 0);
+  
+  /* Remember the self-comparison case! I think it works right now. */
+  
+  while (TRUE)
+    {
+      
+      if (lhs->julian && rhs->julian) 
+        {
+          if (lhs->julian_days < rhs->julian_days) return -1;
+          else if (lhs->julian_days > rhs->julian_days) return 1;
+          else                                          return 0;
+        }
+      else if (lhs->dmy && rhs->dmy) 
+        {
+          if (lhs->year < rhs->year)               return -1;
+          else if (lhs->year > rhs->year)               return 1;
+          else 
+            {
+              if (lhs->month < rhs->month)         return -1;
+              else if (lhs->month > rhs->month)         return 1;
+              else 
+                {
+                  if (lhs->day < rhs->day)              return -1;
+                  else if (lhs->day > rhs->day)              return 1;
+                  else                                       return 0;
+                }
+              
+            }
+          
+        }
+      else
+        {
+          if (!lhs->julian) g_date_update_julian (lhs);
+          if (!rhs->julian) g_date_update_julian (rhs);
+          g_return_val_if_fail (lhs->julian, 0);
+          g_return_val_if_fail (rhs->julian, 0);
+        }
+      
+    }
+  return 0; /* warnings */
+}
+
+
+void        
+g_date_to_struct_tm (const GDate *d, 
+                     struct tm   *tm)
+{
+  GDateWeekday day;
+     
+  g_return_if_fail (d != NULL);
+  g_return_if_fail (g_date_valid (d));
+  g_return_if_fail (tm != NULL);
+  
+  if (!d->dmy) 
+    {
+      g_date_update_dmy (d);
+    }
+  g_return_if_fail (d->dmy);
+  
+  /* zero all the irrelevant fields to be sure they're valid */
+  
+  /* On Linux and maybe other systems, there are weird non-POSIX
+   * fields on the end of struct tm that choke strftime if they
+   * contain garbage.  So we need to 0 the entire struct, not just the
+   * fields we know to exist. 
+   */
+  
+  memset (tm, 0x0, sizeof (struct tm));
+  
+  tm->tm_mday = d->day;
+  tm->tm_mon  = d->month - 1; /* 0-11 goes in tm */
+  tm->tm_year = ((int)d->year) - 1900; /* X/Open says tm_year can be negative */
+  
+  day = g_date_get_weekday (d);
+  if (day == 7) day = 0; /* struct tm wants days since Sunday, so Sunday is 0 */
+  
+  tm->tm_wday = (int)day;
+  
+  tm->tm_yday = g_date_get_day_of_year (d) - 1; /* 0 to 365 */
+  tm->tm_isdst = -1; /* -1 means "information not available" */
+}
+
+void
+g_date_clamp (GDate *date,
+	      const GDate *min_date,
+	      const GDate *max_date)
+{
+  g_return_if_fail (date);
+  g_return_if_fail (g_date_valid (date));
+  if (min_date != NULL)
+    g_return_if_fail (g_date_valid (min_date));
+  if (max_date != NULL)
+    g_return_if_fail (g_date_valid (max_date));
+  if (min_date != NULL && max_date != NULL)
+    g_return_if_fail (g_date_compare (min_date, max_date) <= 0);
+
+  if (min_date && g_date_compare (date, min_date) < 0)
+    *date = *min_date;
+
+  if (max_date && g_date_compare (max_date, date) < 0)
+    *date = *max_date;
+}
+
+void
+g_date_order (GDate *date1,
+              GDate *date2)
+{
+  g_return_if_fail (date1 != NULL);
+  g_return_if_fail (date2 != NULL);
+  g_return_if_fail (g_date_valid (date1));
+  g_return_if_fail (g_date_valid (date2));
+
+  if (g_date_compare (date1, date2) == 1) {
+    GDate tmp = *date1;
+    *date1 = *date2;
+    *date2 = tmp;
+  }
+}
+
+gsize     
+g_date_strftime (gchar       *s, 
+                 gsize        slen, 
+                 const gchar *format, 
+                 const GDate *d)
+{
+  struct tm tm;
+  const gchar *charset;
+  
+  g_return_val_if_fail (d != NULL, 0);
+  g_return_val_if_fail (g_date_valid (d), 0);
+  g_return_val_if_fail (slen > 0, 0); 
+  g_return_val_if_fail (format != 0, 0);
+  g_return_val_if_fail (s != 0, 0);
+  
+  g_date_to_struct_tm (d, &tm);
+
+  if (g_get_charset (&charset))
+    {
+      gint retval = strftime (s, slen, format, &tm);
+      if (retval == 0)
+	{
+	  /* If retval == 0, the contents of s are undefined.  We define
+	   *  them. 
+	   */
+	  s[0] = '\0';
+	}
+
+      return retval;
+    }
+  else
+    {
+      gchar *locale_format;
+      gsize tmplen;
+      gchar *tmpbuf;
+      gsize tmpbufsize;
+      gsize convlen = 0;
+      gchar *convbuf;
+      GError *error = NULL;
+      
+      locale_format = g_convert (format, -1 , "UTF-8", charset,
+				 NULL, NULL, &error);
+      if (error)
+	{
+	  g_warning (G_STRLOC "Error converting format to %s: %s\n",
+		     charset, error->message);
+	  g_error_free (error);
+
+	  return 0;
+	}
+      
+      tmpbufsize = MAX (128, strlen (locale_format) * 2);
+      while (TRUE)
+	{
+	  tmpbuf = g_malloc (tmpbufsize + 1);
+	  tmplen = strftime (tmpbuf, tmpbufsize + 1, locale_format, &tm);
+	  if (tmplen == tmpbufsize + 1)
+	    {
+	      g_free (tmpbuf);
+	      tmpbufsize *= 2;
+	    }
+	  else
+	    break;
+	}
+      g_free (locale_format);
+
+      if (tmplen == 0)
+	{
+	  /* If retval == 0, the contents of s are undefined.  We define
+	   *  them. 
+	   */
+	  g_free (locale_format);
+	  s[0] = '\0';
+	  return 0;
+	}
+
+      convbuf = g_convert (tmpbuf, tmplen, "UTF-8", charset, NULL, &convlen, &error);
+      g_free (tmpbuf);
+      
+      if (error)
+	{
+	  g_warning (G_STRLOC "Error converting results of strftime to UTF-8: %s\n", error->message);
+	  g_error_free (error);
+	}
+      else
+	{
+	  /* Only copy whole characters into the buffer
+	   */
+	  gchar *in = convbuf;
+	  gchar *out = s;
+	  gchar *end = s + slen - 1;
+
+	  while (*in)
+	    {
+	      int len = g_utf8_skip[*(guchar *)in];
+	      if (out + len < end)
+		{
+		  out += len;
+		  in += len;
+		}
+	      else
+		break;
+	    }
+
+	  memcpy (s, convbuf, out - s);
+	  *out = '\0';
+	}
+
+      g_free (convbuf);
+
+      return convlen;
+    }
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gdate.h b/graf2d/win32gdk/gdk/src/glib/gdate.h
index c5fa2dc2c36..96d827f66b2 100644
--- a/graf2d/win32gdk/gdk/src/glib/gdate.h
+++ b/graf2d/win32gdk/gdk/src/glib/gdate.h
@@ -27,7 +27,7 @@
 #ifndef __G_DATE_H__
 #define __G_DATE_H__
 
-#include <gquark.h>
+#include <glib/gquark.h>
 
 G_BEGIN_DECLS
 
@@ -126,7 +126,7 @@ void         g_date_free                  (GDate       *date);
  * dates (the exceptions are the mutators, since you need those to
  * return to validity).
  */
-gboolean     g_date_valid                 (GDate       *date);
+gboolean     g_date_valid                 (const GDate *date);
 gboolean     g_date_valid_day             (GDateDay     day) G_GNUC_CONST;
 gboolean     g_date_valid_month           (GDateMonth month) G_GNUC_CONST;
 gboolean     g_date_valid_year            (GDateYear  year) G_GNUC_CONST;
@@ -136,20 +136,20 @@ gboolean     g_date_valid_dmy             (GDateDay     day,
                                            GDateMonth   month,
                                            GDateYear    year) G_GNUC_CONST;
 
-GDateWeekday g_date_get_weekday           (GDate       *date);
-GDateMonth   g_date_get_month             (GDate       *date);
-GDateYear    g_date_get_year              (GDate       *date);
-GDateDay     g_date_get_day               (GDate       *date);
-guint32      g_date_get_julian            (GDate       *date);
-guint        g_date_get_day_of_year       (GDate       *date);
+GDateWeekday g_date_get_weekday           (const GDate *date);
+GDateMonth   g_date_get_month             (const GDate *date);
+GDateYear    g_date_get_year              (const GDate *date);
+GDateDay     g_date_get_day               (const GDate *date);
+guint32      g_date_get_julian            (const GDate *date);
+guint        g_date_get_day_of_year       (const GDate *date);
 /* First monday/sunday is the start of week 1; if we haven't reached
  * that day, return 0. These are not ISO weeks of the year; that
  * routine needs to be added.
  * these functions return the number of weeks, starting on the
  * corrsponding day
  */
-guint        g_date_get_monday_week_of_year (GDate      *date);
-guint        g_date_get_sunday_week_of_year (GDate      *date);
+guint        g_date_get_monday_week_of_year (const GDate *date);
+guint        g_date_get_sunday_week_of_year (const GDate *date);
 
 /* If you create a static date struct you need to clear it to get it
  * in a sane state before use. You can clear a whole array at
@@ -178,8 +178,8 @@ void         g_date_set_dmy               (GDate       *date,
                                            GDateYear    y);
 void         g_date_set_julian            (GDate       *date,
                                            guint32      julian_date);
-gboolean     g_date_is_first_of_month     (GDate       *date);
-gboolean     g_date_is_last_of_month      (GDate       *date);
+gboolean     g_date_is_first_of_month     (const GDate *date);
+gboolean     g_date_is_last_of_month      (const GDate *date);
 
 /* To go forward by some number of weeks just go forward weeks*7 days */
 void         g_date_add_days              (GDate       *date,
@@ -204,19 +204,47 @@ guint8       g_date_get_days_in_month     (GDateMonth   month,
 guint8       g_date_get_monday_weeks_in_year  (GDateYear    year) G_GNUC_CONST;
 guint8       g_date_get_sunday_weeks_in_year  (GDateYear    year) G_GNUC_CONST;
 
+/* Returns the number of days between the two dates.  If date2 comes
+   before date1, a negative value is return. */
+gint         g_date_days_between          (const GDate *date1,
+					   const GDate *date2);
+
 /* qsort-friendly (with a cast...) */
-gint         g_date_compare               (GDate       *lhs,
-                                           GDate       *rhs);
-void         g_date_to_struct_tm          (GDate       *date,
+gint         g_date_compare               (const GDate *lhs,
+                                           const GDate *rhs);
+void         g_date_to_struct_tm          (const GDate *date,
                                            struct tm   *tm);
 
+void         g_date_clamp                 (GDate *date,
+					   const GDate *min_date,
+					   const GDate *max_date);
+
+/* Swap date1 and date2's values if date1 > date2. */
+void         g_date_order                 (GDate *date1, GDate *date2);
+
 /* Just like strftime() except you can only use date-related formats.
  *   Using a time format is undefined.
  */
 gsize        g_date_strftime              (gchar       *s,
                                            gsize        slen,
                                            const gchar *format,
-                                           GDate       *date);
+                                           const GDate *date);
+
+#ifndef G_DISABLE_DEPRECATED
+
+#define g_date_weekday 			g_date_get_weekday
+#define g_date_month 			g_date_get_month
+#define g_date_year 			g_date_get_year
+#define g_date_day 			g_date_get_day
+#define g_date_julian 			g_date_get_julian
+#define g_date_day_of_year 		g_date_get_day_of_year
+#define g_date_monday_week_of_year 	g_date_get_monday_week_of_year
+#define g_date_sunday_week_of_year 	g_date_get_sunday_week_of_year
+#define g_date_days_in_month 		g_date_get_days_in_month
+#define g_date_monday_weeks_in_year 	g_date_get_monday_weeks_in_year
+#define g_date_sunday_weeks_in_year	g_date_get_sunday_weeks_in_year
+
+#endif /* G_DISABLE_DEPRECATED */
 
 G_END_DECLS
 
diff --git a/graf2d/win32gdk/gdk/src/glib/gerror.c b/graf2d/win32gdk/gdk/src/glib/gerror.c
new file mode 100644
index 00000000000..eff62588a85
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gerror.c
@@ -0,0 +1,254 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+#include "glib.h"
+
+static GError* 
+g_error_new_valist(GQuark         domain,
+                   gint           code,
+                   const gchar   *format,
+                   va_list        args)
+{
+  GError *error;
+  
+  error = g_new (GError, 1);
+  
+  error->domain = domain;
+  error->code = code;
+  error->message = g_strdup_vprintf (format, args);
+  
+  return error;
+}
+
+/**
+ * g_error_new:
+ * @domain: error domain 
+ * @code: error code
+ * @format: printf()-style format for error message
+ * @Varargs: parameters for message format
+ * 
+ * Creates a new #GError with the given @domain and @code,
+ * and a message formatted with @format.
+ * 
+ * Return value: a new #GError
+ **/
+GError*
+g_error_new (GQuark       domain,
+             gint         code,
+             const gchar *format,
+             ...)
+{
+  GError* error;
+  va_list args;
+
+  g_return_val_if_fail (format != NULL, NULL);
+  g_return_val_if_fail (domain != 0, NULL);
+
+  va_start (args, format);
+  error = g_error_new_valist (domain, code, format, args);
+  va_end (args);
+
+  return error;
+}
+
+/**
+ * g_error_new_literal:
+ * @domain: error domain
+ * @code: error code
+ * @message: error message
+ * 
+ * Creates a new #GError; unlike g_error_new(), @message is not
+ * a printf()-style format string. Use this function if @message
+ * contains text you don't have control over, that could include
+ * printf() escape sequences.
+ * 
+ * Return value: a new #GError
+ **/
+GError*
+g_error_new_literal (GQuark         domain,
+                     gint           code,
+                     const gchar   *message)
+{
+  GError* err;
+
+  g_return_val_if_fail (message != NULL, NULL);
+  g_return_val_if_fail (domain != 0, NULL);
+
+  err = g_new (GError, 1);
+
+  err->domain = domain;
+  err->code = code;
+  err->message = g_strdup (message);
+  
+  return err;
+}
+
+/**
+ * g_error_free:
+ * @error: a #GError
+ *
+ * Frees a #GError and associated resources.
+ * 
+ **/
+void
+g_error_free (GError *error)
+{
+  g_return_if_fail (error != NULL);  
+
+  g_free (error->message);
+
+  g_free (error);
+}
+
+/**
+ * g_error_copy:
+ * @error: a #GError
+ * 
+ * Makes a copy of @error.
+ * 
+ * Return value: a new #GError
+ **/
+GError*
+g_error_copy (const GError *error)
+{
+  GError *copy;
+  
+  g_return_val_if_fail (error != NULL, NULL);
+
+  copy = g_new (GError, 1);
+
+  *copy = *error;
+
+  copy->message = g_strdup (error->message);
+
+  return copy;
+}
+
+/**
+ * g_error_matches:
+ * @error: a #GError
+ * @domain: an error domain
+ * @code: an error code
+ * 
+ * Returns TRUE if @error matches @domain and @code, FALSE
+ * otherwise.
+ * 
+ * Return value: whether @error has @domain and @code
+ **/
+gboolean
+g_error_matches (const GError *error,
+                 GQuark        domain,
+                 gint          code)
+{
+  return error &&
+    error->domain == domain &&
+    error->code == code;
+}
+
+#define ERROR_OVERWRITTEN_WARNING "GError set over the top of a previous GError or uninitialized memory.\n" \
+               "This indicates a bug in someone's code. You must ensure an error is NULL before it's set.\n" \
+               "The overwriting error message was: %s"
+
+/**
+ * g_set_error:
+ * @err: a return location for a #GError, or NULL
+ * @domain: error domain
+ * @code: error code 
+ * @format: printf()-style format
+ * @Varargs: args for @format 
+ * 
+ * Does nothing if @err is NULL; if @err is non-NULL, then *@err must
+ * be NULL. A new #GError is created and assigned to *@err.
+ **/
+void
+g_set_error (GError      **err,
+             GQuark        domain,
+             gint          code,
+             const gchar  *format,
+             ...)
+{
+  GError *new;
+  
+  va_list args;
+
+  if (err == NULL)
+    return;
+  
+  va_start (args, format);
+  new = g_error_new_valist (domain, code, format, args);
+  va_end (args);
+
+  if (*err == NULL)
+    *err = new;
+  else
+    g_warning (ERROR_OVERWRITTEN_WARNING, new->message);    
+}
+
+/**
+ * g_propagate_error:
+ * @dest: error return location
+ * @src: error to move into the return location
+ * 
+ * If @dest is NULL, free @src; otherwise,
+ * moves @src into *@dest. *@dest must be NULL.
+ **/
+void    
+g_propagate_error (GError       **dest,
+		   GError        *src)
+{
+  g_return_if_fail (src != NULL);
+  
+  if (dest == NULL)
+    {
+      if (src)
+        g_error_free (src);
+      return;
+    }
+  else
+    {
+      if (*dest != NULL)
+        g_warning (ERROR_OVERWRITTEN_WARNING, src->message);
+      else
+        *dest = src;
+    }
+}
+
+/**
+ * g_clear_error:
+ * @err: a #GError return location
+ * 
+ * If @err is NULL, does nothing. If @err is non-NULL,
+ * calls g_error_free() on *@err and sets *@err to NULL.
+ **/
+void
+g_clear_error (GError **err)
+{
+  if (err && *err)
+    {
+      g_error_free (*err);
+      *err = NULL;
+    }
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gerror.h b/graf2d/win32gdk/gdk/src/glib/gerror.h
index a7eb8fdab7d..ea0d25aaf5f 100644
--- a/graf2d/win32gdk/gdk/src/glib/gerror.h
+++ b/graf2d/win32gdk/gdk/src/glib/gerror.h
@@ -21,7 +21,7 @@
 #ifndef __G_ERROR_H__
 #define __G_ERROR_H__
 
-#include <gquark.h>
+#include <glib/gquark.h>
 
 G_BEGIN_DECLS
 
diff --git a/graf2d/win32gdk/gdk/src/glib/gfileutils.c b/graf2d/win32gdk/gdk/src/glib/gfileutils.c
new file mode 100644
index 00000000000..3ab354c4ca3
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gfileutils.c
@@ -0,0 +1,820 @@
+/* gfileutils.c - File utility functions
+ *
+ *  Copyright 2000 Red Hat, Inc.
+ *
+ * GLib is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * GLib is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with GLib; see the file COPYING.LIB.  If not,
+ * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ *   Boston, MA 02111-1307, USA.
+ */
+
+#include "config.h"
+
+#include "glib.h"
+
+#include <sys/stat.h>
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdarg.h>
+#include <string.h>
+#include <errno.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+#include <stdlib.h>
+
+#ifdef G_OS_WIN32
+#include <io.h>
+#ifndef F_OK
+#define	F_OK 0
+#define	X_OK 1
+#define	W_OK 2
+#define	R_OK 4
+#endif /* !F_OK */
+
+#ifndef S_ISREG
+#define S_ISREG(mode) ((mode)&_S_IFREG)
+#endif
+
+#ifndef S_ISDIR
+#define S_ISDIR(mode) ((mode)&_S_IFDIR)
+#endif
+
+#endif /* G_OS_WIN32 */
+
+#ifndef S_ISLNK
+#define S_ISLNK(x) 0
+#endif
+
+#ifndef O_BINARY
+#define O_BINARY 0
+#endif
+
+#include "glibintl.h"
+
+/**
+ * g_file_test:
+ * @filename: a filename to test
+ * @test: bitfield of #GFileTest flags
+ * 
+ * Returns TRUE if any of the tests in the bitfield @test are
+ * TRUE. For example, (G_FILE_TEST_EXISTS | G_FILE_TEST_IS_DIR)
+ * will return TRUE if the file exists; the check whether it's
+ * a directory doesn't matter since the existence test is TRUE.
+ * With the current set of available tests, there's no point
+ * passing in more than one test at a time.
+ *
+ * Return value: whether a test was TRUE
+ **/
+gboolean
+g_file_test (const gchar *filename,
+             GFileTest    test)
+{
+  if (test & G_FILE_TEST_EXISTS)
+    return (access (filename, F_OK) == 0);
+  else if (test & G_FILE_TEST_IS_EXECUTABLE)
+    return (access (filename, X_OK) == 0);
+  else
+    {
+      struct stat s;
+      
+      if (stat (filename, &s) < 0)
+        return FALSE;
+
+      if ((test & G_FILE_TEST_IS_REGULAR) &&
+          S_ISREG (s.st_mode))
+        return TRUE;
+      else if ((test & G_FILE_TEST_IS_DIR) &&
+               S_ISDIR (s.st_mode))
+        return TRUE;
+      else if ((test & G_FILE_TEST_IS_SYMLINK) &&
+               S_ISLNK (s.st_mode))
+        return TRUE;
+      else
+        return FALSE;
+    }
+}
+
+GQuark
+g_file_error_quark (void)
+{
+  static GQuark q = 0;
+  if (q == 0)
+    q = g_quark_from_static_string ("g-file-error-quark");
+
+  return q;
+}
+
+/**
+ * g_file_error_from_errno:
+ * @err_no: an "errno" value
+ * 
+ * Gets a #GFileError constant based on the passed-in errno.
+ * For example, if you pass in EEXIST this function returns
+ * #G_FILE_ERROR_EXIST. Unlike errno values, you can portably
+ * assume that all #GFileError values will exist.
+ *
+ * Normally a #GFileError value goes into a #GError returned
+ * from a function that manipulates files. So you would use
+ * g_file_error_from_errno() when constructing a #GError.
+ * 
+ * Return value: #GFileError corresponding to the given errno
+ **/
+GFileError
+g_file_error_from_errno (gint err_no)
+{
+  switch (err_no)
+    {
+#ifdef EEXIST
+    case EEXIST:
+      return G_FILE_ERROR_EXIST;
+      break;
+#endif
+
+#ifdef EISDIR
+    case EISDIR:
+      return G_FILE_ERROR_ISDIR;
+      break;
+#endif
+
+#ifdef EACCES
+    case EACCES:
+      return G_FILE_ERROR_ACCES;
+      break;
+#endif
+
+#ifdef ENAMETOOLONG
+    case ENAMETOOLONG:
+      return G_FILE_ERROR_NAMETOOLONG;
+      break;
+#endif
+
+#ifdef ENOENT
+    case ENOENT:
+      return G_FILE_ERROR_NOENT;
+      break;
+#endif
+
+#ifdef ENOTDIR
+    case ENOTDIR:
+      return G_FILE_ERROR_NOTDIR;
+      break;
+#endif
+
+#ifdef ENXIO
+    case ENXIO:
+      return G_FILE_ERROR_NXIO;
+      break;
+#endif
+
+#ifdef ENODEV
+    case ENODEV:
+      return G_FILE_ERROR_NODEV;
+      break;
+#endif
+
+#ifdef EROFS
+    case EROFS:
+      return G_FILE_ERROR_ROFS;
+      break;
+#endif
+
+#ifdef ETXTBSY
+    case ETXTBSY:
+      return G_FILE_ERROR_TXTBSY;
+      break;
+#endif
+
+#ifdef EFAULT
+    case EFAULT:
+      return G_FILE_ERROR_FAULT;
+      break;
+#endif
+
+#ifdef ELOOP
+    case ELOOP:
+      return G_FILE_ERROR_LOOP;
+      break;
+#endif
+
+#ifdef ENOSPC
+    case ENOSPC:
+      return G_FILE_ERROR_NOSPC;
+      break;
+#endif
+
+#ifdef ENOMEM
+    case ENOMEM:
+      return G_FILE_ERROR_NOMEM;
+      break;
+#endif
+
+#ifdef EMFILE
+    case EMFILE:
+      return G_FILE_ERROR_MFILE;
+      break;
+#endif
+
+#ifdef ENFILE
+    case ENFILE:
+      return G_FILE_ERROR_NFILE;
+      break;
+#endif
+
+#ifdef EBADF
+    case EBADF:
+      return G_FILE_ERROR_BADF;
+      break;
+#endif
+
+#ifdef EINVAL
+    case EINVAL:
+      return G_FILE_ERROR_INVAL;
+      break;
+#endif
+
+#ifdef EPIPE
+    case EPIPE:
+      return G_FILE_ERROR_PIPE;
+      break;
+#endif
+
+#ifdef EAGAIN
+    case EAGAIN:
+      return G_FILE_ERROR_AGAIN;
+      break;
+#endif
+
+#ifdef EINTR
+    case EINTR:
+      return G_FILE_ERROR_INTR;
+      break;
+#endif
+
+#ifdef EIO
+    case EIO:
+      return G_FILE_ERROR_IO;
+      break;
+#endif
+
+#ifdef EPERM
+    case EPERM:
+      return G_FILE_ERROR_PERM;
+      break;
+#endif
+      
+    default:
+      return G_FILE_ERROR_FAILED;
+      break;
+    }
+}
+
+static gboolean
+get_contents_stdio (const gchar *filename,
+                    FILE        *f,
+                    gchar      **contents,
+                    gsize       *length, 
+                    GError     **error)
+{
+  gchar buf[2048];
+  size_t bytes;
+  GString *str;
+
+  g_assert (f != NULL);
+  
+  str = g_string_new ("");
+  
+  while (!feof (f))
+    {
+      bytes = fread (buf, 1, 2048, f);
+      
+      if (ferror (f))
+        {
+          g_set_error (error,
+                       G_FILE_ERROR,
+                       g_file_error_from_errno (errno),
+                       _("Error reading file '%s': %s"),
+                       filename, strerror (errno));
+
+          g_string_free (str, TRUE);
+	  fclose (f);
+          
+          return FALSE;
+        }
+
+      g_string_append_len (str, buf, bytes);
+    }
+
+  fclose (f);
+
+  if (length)
+    *length = str->len;
+  
+  *contents = g_string_free (str, FALSE);
+
+  return TRUE;  
+}
+
+#ifndef G_OS_WIN32
+
+static gboolean
+get_contents_regfile (const gchar *filename,
+                      struct stat *stat_buf,
+                      gint         fd,
+                      gchar      **contents,
+                      gsize       *length,
+                      GError     **error)
+{
+  gchar *buf;
+  size_t bytes_read;
+  size_t size;
+      
+  size = stat_buf->st_size;
+
+  buf = g_new (gchar, size + 1);
+      
+  bytes_read = 0;
+  while (bytes_read < size)
+    {
+      gssize rc;
+          
+      rc = read (fd, buf + bytes_read, size - bytes_read);
+
+      if (rc < 0)
+        {
+          if (errno != EINTR) 
+            {
+              close (fd);
+
+              g_free (buf);
+                  
+              g_set_error (error,
+                           G_FILE_ERROR,
+                           g_file_error_from_errno (errno),
+                           _("Failed to read from file '%s': %s"),
+                           filename, strerror (errno));
+
+              return FALSE;
+            }
+        }
+      else if (rc == 0)
+        break;
+      else
+        bytes_read += rc;
+    }
+      
+  buf[bytes_read] = '\0';
+
+  if (length)
+    *length = bytes_read;
+  
+  *contents = buf;
+
+  return TRUE;
+}
+
+static gboolean
+get_contents_posix (const gchar *filename,
+                    gchar      **contents,
+                    gsize       *length,
+                    GError     **error)
+{
+  struct stat stat_buf;
+  gint fd;
+  
+  /* O_BINARY useful on Cygwin */
+  fd = open (filename, O_RDONLY|O_BINARY);
+
+  if (fd < 0)
+    {
+      g_set_error (error,
+                   G_FILE_ERROR,
+                   g_file_error_from_errno (errno),
+                   _("Failed to open file '%s': %s"),
+                   filename, strerror (errno));
+
+      return FALSE;
+    }
+
+  /* I don't think this will ever fail, aside from ENOMEM, but. */
+  if (fstat (fd, &stat_buf) < 0)
+    {
+      close (fd);
+      
+      g_set_error (error,
+                   G_FILE_ERROR,
+                   g_file_error_from_errno (errno),
+                   _("Failed to get attributes of file '%s': fstat() failed: %s"),
+                   filename, strerror (errno));
+
+      return FALSE;
+    }
+
+  if (stat_buf.st_size > 0 && S_ISREG (stat_buf.st_mode))
+    {
+      return get_contents_regfile (filename,
+                                   &stat_buf,
+                                   fd,
+                                   contents,
+                                   length,
+                                   error);
+    }
+  else
+    {
+      FILE *f;
+
+      f = fdopen (fd, "r");
+      
+      if (f == NULL)
+        {
+          g_set_error (error,
+                       G_FILE_ERROR,
+                       g_file_error_from_errno (errno),
+                       _("Failed to open file '%s': fdopen() failed: %s"),
+                       filename, strerror (errno));
+          
+          return FALSE;
+        }
+  
+      return get_contents_stdio (filename, f, contents, length, error);
+    }
+}
+
+#else  /* G_OS_WIN32 */
+
+static gboolean
+get_contents_win32 (const gchar *filename,
+                    gchar      **contents,
+                    gsize       *length,
+                    GError     **error)
+{
+  FILE *f;
+
+  /* I guess you want binary mode; maybe you want text sometimes? */
+  f = fopen (filename, "rb");
+
+  if (f == NULL)
+    {
+      g_set_error (error,
+                   G_FILE_ERROR,
+                   g_file_error_from_errno (errno),
+                   _("Failed to open file '%s': %s"),
+                   filename, strerror (errno));
+      
+      return FALSE;
+    }
+  
+  return get_contents_stdio (filename, f, contents, length, error);
+}
+
+#endif
+
+/**
+ * g_file_get_contents:
+ * @filename: a file to read contents from
+ * @contents: location to store an allocated string
+ * @length: location to store length in bytes of the contents
+ * @error: return location for a #GError
+ * 
+ * Reads an entire file into allocated memory, with good error
+ * checking. If @error is set, FALSE is returned, and @contents is set
+ * to NULL. If TRUE is returned, @error will not be set, and @contents
+ * will be set to the file contents.  The string stored in @contents
+ * will be nul-terminated, so for text files you can pass NULL for the
+ * @length argument.  The error domain is #G_FILE_ERROR. Possible
+ * error codes are those in the #GFileError enumeration.
+ *
+ * FIXME currently crashes if the file is too big to fit in memory;
+ * should probably use g_try_malloc() when we have that function.
+ * 
+ * Return value: TRUE on success, FALSE if error is set
+ **/
+gboolean
+g_file_get_contents (const gchar *filename,
+                     gchar      **contents,
+                     gsize       *length,
+                     GError     **error)
+{  
+  g_return_val_if_fail (filename != NULL, FALSE);
+  g_return_val_if_fail (contents != NULL, FALSE);
+
+  *contents = NULL;
+  if (length)
+    *length = 0;
+
+#ifdef G_OS_WIN32
+  return get_contents_win32 (filename, contents, length, error);
+#else
+  return get_contents_posix (filename, contents, length, error);
+#endif
+}
+
+/*
+ * mkstemp() implementation is from the GNU C library.
+ * Copyright (C) 1991,92,93,94,95,96,97,98,99 Free Software Foundation, Inc.
+ */
+/**
+ * g_mkstemp:
+ * @tmpl: template filename
+ *
+ * Open a temporary file. See "man mkstemp" on most UNIX-like systems.
+ * This is a portability wrapper, which simply calls mkstemp() on systems
+ * that have it, and implements it in GLib otherwise.
+ *
+ * The parameter is a string that should match the rules for mktemp, i.e.
+ * end in "XXXXXX". The X string will be modified to form the name
+ * of a file that didn't exist.
+ *
+ * Return value: A file handle (as from open()) to the file
+ * opened for reading and writing. The file is opened in binary mode
+ * on platforms where there is a difference. The file handle should be
+ * closed with close(). In case of errors, -1 is returned.
+ */
+int
+g_mkstemp (char *tmpl)
+{
+#ifdef HAVE_MKSTEMP
+  return mkstemp (tmpl);
+#else
+  int len;
+  char *XXXXXX;
+  int count, fd;
+  static const char letters[] =
+    "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
+  static const int NLETTERS = sizeof (letters) - 1;
+  glong value;
+  GTimeVal tv;
+  static int counter = 0;
+
+  len = strlen (tmpl);
+  if (len < 6 || strcmp (&tmpl[len - 6], "XXXXXX"))
+    return -1;
+
+  /* This is where the Xs start.  */
+  XXXXXX = &tmpl[len - 6];
+
+  /* Get some more or less random data.  */
+  g_get_current_time (&tv);
+  value = (tv.tv_usec ^ tv.tv_sec) + counter++;
+
+  for (count = 0; count < 100; value += 7777, ++count)
+    {
+      glong v = value;
+
+      /* Fill in the random bits.  */
+      XXXXXX[0] = letters[v % NLETTERS];
+      v /= NLETTERS;
+      XXXXXX[1] = letters[v % NLETTERS];
+      v /= NLETTERS;
+      XXXXXX[2] = letters[v % NLETTERS];
+      v /= NLETTERS;
+      XXXXXX[3] = letters[v % NLETTERS];
+      v /= NLETTERS;
+      XXXXXX[4] = letters[v % NLETTERS];
+      v /= NLETTERS;
+      XXXXXX[5] = letters[v % NLETTERS];
+
+      fd = open (tmpl, O_RDWR | O_CREAT | O_EXCL | O_BINARY, 0600);
+
+      if (fd >= 0)
+	return fd;
+      else if (errno != EEXIST)
+	/* Any other error will apply also to other names we might
+	 *  try, and there are 2^32 or so of them, so give up now.
+	 */
+	return -1;
+    }
+
+  /* We got out of the loop because we ran out of combinations to try.  */
+  return -1;
+#endif
+}
+
+/**
+ * g_file_open_tmp:
+ * @tmpl: Template for file name, as in g_mkstemp, basename only
+ * @name_used: location to store actual name used
+ * @error: return location for a #GError
+ *
+ * Opens a file for writing in the preferred directory for temporary
+ * files (as returned by g_get_tmp_dir()). 
+ *
+ * @tmpl should be a string ending with six 'X' characters, as the
+ * parameter to g_mkstemp() (or mkstemp()). However, unlike these
+ * functions, the template should only be a basename, no directory
+ * components are allowed. If template is NULL, a default template is
+ * used.
+ *
+ * Note that in contrast to g_mkstemp() (and mkstemp()) @tmpl is not
+ * modified, and might thus be a read-only literal string.
+ *
+ * The actual name used is returned in @name_used if non-NULL. This
+ * string should be freed with g_free when not needed any longer.
+ *
+ * Return value: A file handle (as from open()) to the file
+ * opened for reading and writing. The file is opened in binary mode
+ * on platforms where there is a difference. The file handle should be
+ * closed with close(). In case of errors, -1 is returned and
+ * @error will be set.
+ **/
+int
+g_file_open_tmp (const char *tmpl,
+		 char      **name_used,
+		 GError    **error)
+{
+  int retval;
+  const char *tmpdir;
+  char *sep;
+  char *fulltemplate;
+
+  if (tmpl == NULL)
+    tmpl = ".XXXXXX";
+
+  if (strchr (tmpl, G_DIR_SEPARATOR)
+#ifdef G_OS_WIN32
+      || strchr (tmpl, '/')
+#endif
+				    )
+    {
+      g_set_error (error,
+		   G_FILE_ERROR,
+		   G_FILE_ERROR_FAILED,
+		   _("Template '%s' invalid, should not contain a '%s'"),
+		   tmpl, G_DIR_SEPARATOR_S);
+
+      return -1;
+    }
+  
+  if (strlen (tmpl) < 6 ||
+      strcmp (tmpl + strlen (tmpl) - 6, "XXXXXX") != 0)
+    {
+      g_set_error (error,
+		   G_FILE_ERROR,
+		   G_FILE_ERROR_FAILED,
+		   _("Template '%s' doesn't end with XXXXXX"),
+		   tmpl);
+      return -1;
+    }
+
+  tmpdir = g_get_tmp_dir ();
+
+  if (tmpdir [strlen (tmpdir) - 1] == G_DIR_SEPARATOR)
+    sep = "";
+  else
+    sep = G_DIR_SEPARATOR_S;
+
+  fulltemplate = g_strconcat (tmpdir, sep, tmpl, NULL);
+
+  retval = g_mkstemp (fulltemplate);
+
+  if (retval == -1)
+    {
+      g_set_error (error,
+		   G_FILE_ERROR,
+		   g_file_error_from_errno (errno),
+		   _("Failed to create file '%s': %s"),
+		   fulltemplate, strerror (errno));
+      g_free (fulltemplate);
+      return -1;
+    }
+
+  if (name_used)
+    *name_used = fulltemplate;
+  else
+    g_free (fulltemplate);
+
+  return retval;
+}
+
+static gchar *
+g_build_pathv (const gchar *separator,
+	       const gchar *first_element,
+	       va_list      args)
+{
+  GString *result;
+  gint separator_len = strlen (separator);
+  gboolean is_first = TRUE;
+  const gchar *next_element;
+
+  result = g_string_new (NULL);
+
+  next_element = first_element;
+
+  while (TRUE)
+    {
+      const gchar *element;
+      const gchar *start;
+      const gchar *end;
+
+      if (next_element)
+	{
+	  element = next_element;
+	  next_element = va_arg (args, gchar *);
+	}
+      else
+	break;
+
+      start = element;
+      
+      if (is_first)
+	is_first = FALSE;
+      else if (separator_len)
+	{
+	  while (start &&
+		 strncmp (start, separator, separator_len) == 0)
+	    start += separator_len;
+	}
+
+      end = start + strlen (start);
+      
+      if (next_element && separator_len)
+	{
+	  while (end > start + separator_len &&
+		 strncmp (end - separator_len, separator, separator_len) == 0)
+	    end -= separator_len;
+	}
+
+      if (end > start)
+	{
+	  if (result->len > 0)
+	    g_string_append (result, separator);
+
+	  g_string_append_len (result, start, end - start);
+	}
+    }
+  
+  return g_string_free (result, FALSE);
+}
+
+/**
+ * g_build_path:
+ * @separator: a string used to separator the elements of the path.
+ * @first_element: the first element in the path
+ * @Varargs: remaining elements in path
+ * 
+ * Create a path from a series of elements using @separator as the
+ * separator between elements. At the boundary between two elements,
+ * any trailing occurrences of separator in the first element, or
+ * leading occurrences of separator in the second element are removed
+ * and exactly one copy of the separator is inserted.
+ * 
+ * Return value: a newly allocated string that must be freed with g_free().
+ **/
+gchar *
+g_build_path (const gchar *separator,
+	      const gchar *first_element,
+	      ...)
+{
+  gchar *str;
+  va_list args;
+
+  g_return_val_if_fail (separator != NULL, NULL);
+
+  va_start (args, first_element);
+  str = g_build_pathv (separator, first_element, args);
+  va_end (args);
+
+  return str;
+}
+
+/**
+ * g_build_filename:
+ * @first_element: the first element in the path
+ * @Varargs: remaining elements in path
+ * 
+ * Create a filename from a series of elements using the correct
+ * separator for filenames. This function behaves identically
+ * to g_build_path (G_DIR_SEPARATOR_S, first_element, ....)
+ *
+ * No attempt is made to force the resulting filename to be an absolute
+ * path. If the first element is a relative path, the result will
+ * be a relative path. 
+ * 
+ * Return value: a newly allocated string that must be freed with g_free().
+ **/
+gchar *
+g_build_filename (const gchar *first_element, 
+		  ...)
+{
+  gchar *str;
+  va_list args;
+
+  va_start (args, first_element);
+  str = g_build_pathv (G_DIR_SEPARATOR_S, first_element, args);
+  va_end (args);
+
+  return str;
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gfileutils.h b/graf2d/win32gdk/gdk/src/glib/gfileutils.h
index 9929ee152bf..f966e01451a 100644
--- a/graf2d/win32gdk/gdk/src/glib/gfileutils.h
+++ b/graf2d/win32gdk/gdk/src/glib/gfileutils.h
@@ -21,7 +21,7 @@
 #ifndef __G_FILEUTILS_H__
 #define __G_FILEUTILS_H__
 
-#include <gerror.h>
+#include <glib/gerror.h>
 
 G_BEGIN_DECLS
 
@@ -76,7 +76,7 @@ gboolean g_file_test         (const gchar  *filename,
                               GFileTest     test);
 gboolean g_file_get_contents (const gchar  *filename,
                               gchar       **contents,
-                              guint        *length,
+                              gsize        *length,    
                               GError      **error);
 
 
@@ -88,6 +88,12 @@ int     g_file_open_tmp      (const char   *tmpl,
 			      char        **name_used,
 			      GError      **error);
 
+gchar *g_build_path     (const gchar *separator,
+			 const gchar *first_element,
+			 ...);
+gchar *g_build_filename (const gchar *first_element,
+			 ...);
+
 G_END_DECLS
 
 #endif /* __G_FILEUTILS_H__ */
diff --git a/graf2d/win32gdk/gdk/src/glib/ghash.c b/graf2d/win32gdk/gdk/src/glib/ghash.c
new file mode 100644
index 00000000000..40be7d391dc
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/ghash.c
@@ -0,0 +1,696 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include "glib.h"
+
+
+#define HASH_TABLE_MIN_SIZE 11
+#define HASH_TABLE_MAX_SIZE 13845163
+
+
+typedef struct _GHashNode      GHashNode;
+
+struct _GHashNode
+{
+  gpointer   key;
+  gpointer   value;
+  GHashNode *next;
+};
+
+struct _GHashTable
+{
+  gint             size;
+  gint             nnodes;
+  GHashNode      **nodes;
+  GHashFunc        hash_func;
+  GEqualFunc       key_equal_func;
+  GDestroyNotify   key_destroy_func;
+  GDestroyNotify   value_destroy_func;
+};
+
+#define G_HASH_TABLE_RESIZE(hash_table)				\
+   G_STMT_START {						\
+     if ((hash_table->size >= 3 * hash_table->nnodes &&	        \
+	  hash_table->size > HASH_TABLE_MIN_SIZE) ||		\
+	 (3 * hash_table->size <= hash_table->nnodes &&	        \
+	  hash_table->size < HASH_TABLE_MAX_SIZE))		\
+	   g_hash_table_resize (hash_table);			\
+   } G_STMT_END
+
+static void		g_hash_table_resize	  (GHashTable	  *hash_table);
+static GHashNode**	g_hash_table_lookup_node  (GHashTable     *hash_table,
+                                                   gconstpointer   key);
+static GHashNode*	g_hash_node_new		  (gpointer	   key,
+                                                   gpointer        value);
+static void		g_hash_node_destroy	  (GHashNode	  *hash_node,
+                                                   GDestroyNotify  key_destroy_func,
+                                                   GDestroyNotify  value_destroy_func);
+static void		g_hash_nodes_destroy	  (GHashNode	  *hash_node,
+						  GDestroyNotify   key_destroy_func,
+						  GDestroyNotify   value_destroy_func);
+static guint g_hash_table_foreach_remove_or_steal (GHashTable     *hash_table,
+                                                   GHRFunc	   func,
+                                                   gpointer	   user_data,
+                                                   gboolean        notify);
+
+
+G_LOCK_DEFINE_STATIC (g_hash_global);
+
+static GMemChunk *node_mem_chunk = NULL;
+static GHashNode *node_free_list = NULL;
+
+/**
+ * g_hash_table_new:
+ * @hash_func: a function to create a hash value from a key.
+ *   Hash values are used to determine where keys are stored within the
+ *   #GHashTable data structure. The g_direct_hash(), g_int_hash() and 
+ *   g_str_hash() functions are provided for some common types of keys. 
+ *   If hash_func is NULL, g_direct_hash() is used.
+ * @key_equal_func: a function to check two keys for equality.  This is
+ *   used when looking up keys in the #GHashTable.  The g_direct_equal(),
+ *   g_int_equal() and g_str_equal() functions are provided for the most
+ *   common types of keys. If @key_equal_func is NULL, keys are compared
+ *   directly in a similar fashion to g_direct_equal(), but without the
+ *   overhead of a function call.
+ *
+ * Creates a new #GHashTable.
+ * 
+ * Return value: a new #GHashTable.
+ **/
+GHashTable*
+g_hash_table_new (GHashFunc    hash_func,
+		  GEqualFunc   key_equal_func)
+{
+  return g_hash_table_new_full (hash_func, key_equal_func, NULL, NULL);
+}
+
+
+/**
+ * g_hash_table_new_full:
+ * @hash_func: a function to create a hash value from a key.
+ * @key_equal_func: a function to check two keys for equality.
+ * @key_destroy_func: a function to free the memory allocated for the key 
+ *   used when removing the entry from the #GHashTable or #NULL if you 
+ *   don't want to supply such a function.
+ * @value_destroy_func: a function to free the memory allocated for the 
+ *   value used when removing the entry from the #GHashTable or #NULL if 
+ *   you don't want to supply such a function.
+ * 
+ * Creates a new #GHashTable like g_hash_table_new() and allows to specify
+ * functions to free the memory allocated for the key and value that get 
+ * called when removing the entry from the #GHashTable.
+ * 
+ * Return value: a new #GHashTable.
+ **/
+GHashTable*
+g_hash_table_new_full (GHashFunc       hash_func,
+		       GEqualFunc      key_equal_func,
+		       GDestroyNotify  key_destroy_func,
+		       GDestroyNotify  value_destroy_func)
+{
+  GHashTable *hash_table;
+  guint i;
+  
+  hash_table = g_new (GHashTable, 1);
+  hash_table->size               = HASH_TABLE_MIN_SIZE;
+  hash_table->nnodes             = 0;
+  hash_table->hash_func          = hash_func ? hash_func : g_direct_hash;
+  hash_table->key_equal_func     = key_equal_func;
+  hash_table->key_destroy_func   = key_destroy_func;
+  hash_table->value_destroy_func = value_destroy_func;
+  hash_table->nodes              = g_new (GHashNode*, hash_table->size);
+  
+  for (i = 0; i < hash_table->size; i++)
+    hash_table->nodes[i] = NULL;
+  
+  return hash_table;
+}
+
+/**
+ * g_hash_table_destroy:
+ * @hash_table: a #GHashTable.
+ * 
+ * Destroys the #GHashTable. If keys and/or values are dynamically 
+ * allocated, you should either free them first or create the #GHashTable
+ * using g_hash_table_new_full(). In the latter case the destroy functions 
+ * you supplied will be called on all keys and values before destroying 
+ * the #GHashTable.
+ **/
+void
+g_hash_table_destroy (GHashTable *hash_table)
+{
+  guint i;
+  
+  g_return_if_fail (hash_table != NULL);
+  
+  for (i = 0; i < hash_table->size; i++)
+    g_hash_nodes_destroy (hash_table->nodes[i], 
+			  hash_table->key_destroy_func,
+			  hash_table->value_destroy_func);
+  
+  g_free (hash_table->nodes);
+  g_free (hash_table);
+}
+
+static inline GHashNode**
+g_hash_table_lookup_node (GHashTable	*hash_table,
+			  gconstpointer	 key)
+{
+  GHashNode **node;
+  
+  node = &hash_table->nodes
+    [(* hash_table->hash_func) (key) % hash_table->size];
+  
+  /* Hash table lookup needs to be fast.
+   *  We therefore remove the extra conditional of testing
+   *  whether to call the key_equal_func or not from
+   *  the inner loop.
+   */
+  if (hash_table->key_equal_func)
+    while (*node && !(*hash_table->key_equal_func) ((*node)->key, key))
+      node = &(*node)->next;
+  else
+    while (*node && (*node)->key != key)
+      node = &(*node)->next;
+  
+  return node;
+}
+
+/**
+ * g_hash_table_lookup:
+ * @hash_table: a #GHashTable.
+ * @key: the key to look up.
+ * 
+ * Looks up a key in a #GHashTable.
+ * 
+ * Return value: the associated value, or NULL if the key is not found.
+ **/
+gpointer
+g_hash_table_lookup (GHashTable	  *hash_table,
+		     gconstpointer key)
+{
+  GHashNode *node;
+  
+  g_return_val_if_fail (hash_table != NULL, NULL);
+  
+  node = *g_hash_table_lookup_node (hash_table, key);
+  
+  return node ? node->value : NULL;
+}
+
+/**
+ * g_hash_table_lookup_extended:
+ * @hash_table: a #GHashTable.
+ * @lookup_key: the key to look up.
+ * @orig_key: returns the original key.
+ * @value: returns the value associated with the key.
+ * 
+ * Looks up a key in the #GHashTable, returning the original key and the
+ * associated value and a gboolean which is TRUE if the key was found. This 
+ * is useful if you need to free the memory allocated for the original key, 
+ * for example before calling g_hash_table_remove().
+ * 
+ * Return value: #TRUE if the key was found in the #GHashTable.
+ **/
+gboolean
+g_hash_table_lookup_extended (GHashTable    *hash_table,
+			      gconstpointer  lookup_key,
+			      gpointer	    *orig_key,
+			      gpointer	    *value)
+{
+  GHashNode *node;
+  
+  g_return_val_if_fail (hash_table != NULL, FALSE);
+  
+  node = *g_hash_table_lookup_node (hash_table, lookup_key);
+  
+  if (node)
+    {
+      if (orig_key)
+	*orig_key = node->key;
+      if (value)
+	*value = node->value;
+      return TRUE;
+    }
+  else
+    return FALSE;
+}
+
+/**
+ * g_hash_table_insert:
+ * @hash_table: a #GHashTable.
+ * @key: a key to insert.
+ * @value: the value to associate with the key.
+ * 
+ * Inserts a new key and value into a #GHashTable.
+ * 
+ * If the key already exists in the #GHashTable its current value is replaced
+ * with the new value. If you supplied a value_destroy_func when creating the 
+ * #GHashTable, the old value is freed using that function. If you supplied
+ * a key_destroy_func when creating the #GHashTable, the passed key is freed 
+ * using that function.
+ **/
+void
+g_hash_table_insert (GHashTable *hash_table,
+		     gpointer	 key,
+		     gpointer	 value)
+{
+  GHashNode **node;
+  
+  g_return_if_fail (hash_table != NULL);
+  
+  node = g_hash_table_lookup_node (hash_table, key);
+  
+  if (*node)
+    {
+      /* do not reset node->key in this place, keeping
+       * the old key is the intended behaviour. 
+       * g_hash_table_replace() can be used instead.
+       */
+
+      /* free the passed key */
+      if (hash_table->key_destroy_func)
+	hash_table->key_destroy_func (key);
+      
+      if (hash_table->value_destroy_func)
+	hash_table->value_destroy_func ((*node)->value);
+
+      (*node)->value = value;
+    }
+  else
+    {
+      *node = g_hash_node_new (key, value);
+      hash_table->nnodes++;
+      G_HASH_TABLE_RESIZE (hash_table);
+    }
+}
+
+/**
+ * g_hash_table_replace:
+ * @hash_table: a #GHashTable.
+ * @key: a key to insert.
+ * @value: the value to associate with the key.
+ * 
+ * Inserts a new key and value into a #GHashTable similar to 
+ * g_hash_table_insert(). The difference is that if the key already exists 
+ * in the #GHashTable, it gets replaced by the new key. If you supplied a 
+ * value_destroy_func when creating the #GHashTable, the old value is freed 
+ * using that function. If you supplied a key_destroy_func when creating the 
+ * #GHashTable, the old key is freed using that function. 
+ **/
+void
+g_hash_table_replace (GHashTable *hash_table,
+		      gpointer	  key,
+		      gpointer	  value)
+{
+  GHashNode **node;
+  
+  g_return_if_fail (hash_table != NULL);
+  
+  node = g_hash_table_lookup_node (hash_table, key);
+  
+  if (*node)
+    {
+      if (hash_table->key_destroy_func)
+	hash_table->key_destroy_func ((*node)->key);
+      
+      if (hash_table->value_destroy_func)
+	hash_table->value_destroy_func ((*node)->value);
+
+      (*node)->key   = key;
+      (*node)->value = value;
+    }
+  else
+    {
+      *node = g_hash_node_new (key, value);
+      hash_table->nnodes++;
+      G_HASH_TABLE_RESIZE (hash_table);
+    }
+}
+
+/**
+ * g_hash_table_remove:
+ * @hash_table: a #GHashTable.
+ * @key: the key to remove.
+ * 
+ * Removes a key and its associated value from a #GHashTable.
+ *
+ * If the #GHashTable was created using g_hash_table_new_full(), the
+ * key and value are freed using the supplied destroy_functions, otherwise
+ * you have to make sure that any dynamically allocated values are freed 
+ * yourself.
+ * 
+ * Return value: #TRUE if the key was found and removed from the #GHashTable.
+ **/
+gboolean
+g_hash_table_remove (GHashTable	   *hash_table,
+		     gconstpointer  key)
+{
+  GHashNode **node, *dest;
+  
+  g_return_val_if_fail (hash_table != NULL, FALSE);
+  
+  node = g_hash_table_lookup_node (hash_table, key);
+  if (*node)
+    {
+      dest = *node;
+      (*node) = dest->next;
+      g_hash_node_destroy (dest, 
+			   hash_table->key_destroy_func,
+			   hash_table->value_destroy_func);
+      hash_table->nnodes--;
+  
+      G_HASH_TABLE_RESIZE (hash_table);
+
+      return TRUE;
+    }
+
+  return FALSE;
+}
+
+/**
+ * g_hash_table_steal:
+ * @hash_table: a #GHashTable.
+ * @key: the key to remove.
+ * 
+ * Removes a key and its associated value from a #GHashTable without
+ * calling the key and value destroy functions.
+ *
+ * Return value: #TRUE if the key was found and removed from the #GHashTable.
+ **/
+gboolean
+g_hash_table_steal (GHashTable    *hash_table,
+                    gconstpointer  key)
+{
+  GHashNode **node, *dest;
+  
+  g_return_val_if_fail (hash_table != NULL, FALSE);
+  
+  node = g_hash_table_lookup_node (hash_table, key);
+  if (*node)
+    {
+      dest = *node;
+      (*node) = dest->next;
+      g_hash_node_destroy (dest, NULL, NULL);
+      hash_table->nnodes--;
+  
+      G_HASH_TABLE_RESIZE (hash_table);
+
+      return TRUE;
+    }
+
+  return FALSE;
+}
+
+/**
+ * g_hash_table_foreach_remove:
+ * @hash_table: a #GHashTable.
+ * @func: the function to call for each key/value pair.
+ * @user_data: user data to pass to the function.
+ * 
+ * Calls the given function for each key/value pair in the #GHashTable.
+ * If the function returns TRUE, then the key/value pair is removed from the
+ * #GHashTable. If you supplied key or value destroy functions when creating
+ * the #GHashTable, they are used to free the memory allocated for the removed
+ * keys and values.
+ * 
+ * Return value: the number of key/value pairs removed.
+ **/
+guint
+g_hash_table_foreach_remove (GHashTable	*hash_table,
+			     GHRFunc	 func,
+			     gpointer	 user_data)
+{
+  g_return_val_if_fail (hash_table != NULL, 0);
+  g_return_val_if_fail (func != NULL, 0);
+  
+  return g_hash_table_foreach_remove_or_steal (hash_table, func, user_data, TRUE);
+}
+
+/**
+ * g_hash_table_foreach_steal:
+ * @hash_table: a #GHashTable.
+ * @func: the function to call for each key/value pair.
+ * @user_data: user data to pass to the function.
+ * 
+ * Calls the given function for each key/value pair in the #GHashTable.
+ * If the function returns TRUE, then the key/value pair is removed from the
+ * #GHashTable, but no key or value destroy functions are called.
+ * 
+ * Return value: the number of key/value pairs removed.
+ **/
+guint
+g_hash_table_foreach_steal (GHashTable *hash_table,
+                            GHRFunc	func,
+                            gpointer	user_data)
+{
+  g_return_val_if_fail (hash_table != NULL, 0);
+  g_return_val_if_fail (func != NULL, 0);
+  
+  return g_hash_table_foreach_remove_or_steal (hash_table, func, user_data, FALSE);
+}
+
+static guint
+g_hash_table_foreach_remove_or_steal (GHashTable *hash_table,
+                                      GHRFunc	  func,
+                                      gpointer	  user_data,
+                                      gboolean    notify)
+{
+  GHashNode *node, *prev;
+  guint i;
+  guint deleted = 0;
+  
+  for (i = 0; i < hash_table->size; i++)
+    {
+    restart:
+      
+      prev = NULL;
+      
+      for (node = hash_table->nodes[i]; node; prev = node, node = node->next)
+	{
+	  if ((* func) (node->key, node->value, user_data))
+	    {
+	      deleted += 1;
+	      
+	      hash_table->nnodes -= 1;
+	      
+	      if (prev)
+		{
+		  prev->next = node->next;
+		  g_hash_node_destroy (node,
+				       notify ? hash_table->key_destroy_func : NULL,
+				       notify ? hash_table->value_destroy_func : NULL);
+		  node = prev;
+		}
+	      else
+		{
+		  hash_table->nodes[i] = node->next;
+		  g_hash_node_destroy (node,
+				       notify ? hash_table->key_destroy_func : NULL,
+				       notify ? hash_table->value_destroy_func : NULL);
+		  goto restart;
+		}
+	    }
+	}
+    }
+  
+  G_HASH_TABLE_RESIZE (hash_table);
+  
+  return deleted;
+}
+
+/**
+ * g_hash_table_foreach:
+ * @hash_table: a #GHashTable.
+ * @func: the function to call for each key/value pair.
+ * @user_data: user data to pass to the function.
+ * 
+ * Calls the given function for each of the key/value pairs in the #GHashTable.
+ * The function is passed the key and value of each pair, and the given
+ * @user_data parameter.
+ **/
+void
+g_hash_table_foreach (GHashTable *hash_table,
+		      GHFunc	  func,
+		      gpointer	  user_data)
+{
+  GHashNode *node;
+  gint i;
+  
+  g_return_if_fail (hash_table != NULL);
+  g_return_if_fail (func != NULL);
+  
+  for (i = 0; i < hash_table->size; i++)
+    for (node = hash_table->nodes[i]; node; node = node->next)
+      (* func) (node->key, node->value, user_data);
+}
+
+/**
+ * g_hash_table_size:
+ * @hash_table: a #GHashTable.
+ * 
+ * Returns the number of elements contained in the #GHashTable.
+ * 
+ * Return value: the number of key/value pairs in the #GHashTable.
+ **/
+guint
+g_hash_table_size (GHashTable *hash_table)
+{
+  g_return_val_if_fail (hash_table != NULL, 0);
+  
+  return hash_table->nnodes;
+}
+
+static void
+g_hash_table_resize (GHashTable *hash_table)
+{
+  GHashNode **new_nodes;
+  GHashNode *node;
+  GHashNode *next;
+  guint hash_val;
+  gint new_size;
+  gint i;
+
+  new_size = CLAMP(g_spaced_primes_closest (hash_table->nnodes),
+		   HASH_TABLE_MIN_SIZE,
+		   HASH_TABLE_MAX_SIZE);
+  new_nodes = g_new0 (GHashNode*, new_size);
+  
+  for (i = 0; i < hash_table->size; i++)
+    for (node = hash_table->nodes[i]; node; node = next)
+      {
+	next = node->next;
+
+	hash_val = (* hash_table->hash_func) (node->key) % new_size;
+
+	node->next = new_nodes[hash_val];
+	new_nodes[hash_val] = node;
+      }
+  
+  g_free (hash_table->nodes);
+  hash_table->nodes = new_nodes;
+  hash_table->size = new_size;
+}
+
+static GHashNode*
+g_hash_node_new (gpointer key,
+		 gpointer value)
+{
+  GHashNode *hash_node;
+  
+  G_LOCK (g_hash_global);
+  if (node_free_list)
+    {
+      hash_node = node_free_list;
+      node_free_list = node_free_list->next;
+    }
+  else
+    {
+      if (!node_mem_chunk)
+	node_mem_chunk = g_mem_chunk_new ("hash node mem chunk",
+					  sizeof (GHashNode),
+					  1024, G_ALLOC_ONLY);
+      
+      hash_node = g_chunk_new (GHashNode, node_mem_chunk);
+    }
+  G_UNLOCK (g_hash_global);
+  
+  hash_node->key = key;
+  hash_node->value = value;
+  hash_node->next = NULL;
+  
+  return hash_node;
+}
+
+static void
+g_hash_node_destroy (GHashNode      *hash_node,
+		     GDestroyNotify  key_destroy_func,
+		     GDestroyNotify  value_destroy_func)
+{
+  if (key_destroy_func)
+    key_destroy_func (hash_node->key);
+  if (value_destroy_func)
+    value_destroy_func (hash_node->value);
+  
+#ifdef ENABLE_GC_FRIENDLY
+  hash_node->key = NULL;
+  hash_node->value = NULL;
+#endif /* ENABLE_GC_FRIENDLY */
+
+  G_LOCK (g_hash_global);
+  hash_node->next = node_free_list;
+  node_free_list = hash_node;
+  G_UNLOCK (g_hash_global);
+}
+
+static void
+g_hash_nodes_destroy (GHashNode *hash_node,
+		      GFreeFunc  key_destroy_func,
+		      GFreeFunc  value_destroy_func)
+{
+  if (hash_node)
+    {
+      GHashNode *node = hash_node;
+  
+      while (node->next)
+	{
+	  if (key_destroy_func)
+	    key_destroy_func (node->key);
+	  if (value_destroy_func)
+	    value_destroy_func (node->value);
+
+#ifdef ENABLE_GC_FRIENDLY
+	  node->key = NULL;
+	  node->value = NULL;
+#endif /* ENABLE_GC_FRIENDLY */
+
+	  node = node->next;
+	}
+
+  if (key_destroy_func)
+    key_destroy_func (node->key);
+  if (value_destroy_func)
+    value_destroy_func (node->value);
+
+#ifdef ENABLE_GC_FRIENDLY
+      node->key = NULL;
+      node->value = NULL;
+#endif /* ENABLE_GC_FRIENDLY */
+ 
+      G_LOCK (g_hash_global);
+      node->next = node_free_list;
+      node_free_list = hash_node;
+      G_UNLOCK (g_hash_global);
+    }
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/ghash.h b/graf2d/win32gdk/gdk/src/glib/ghash.h
index 6a9a8e263ec..acc2d176ea6 100644
--- a/graf2d/win32gdk/gdk/src/glib/ghash.h
+++ b/graf2d/win32gdk/gdk/src/glib/ghash.h
@@ -27,54 +27,70 @@
 #ifndef __G_HASH_H__
 #define __G_HASH_H__
 
-#include <g_types.h>
+#include <glib/gtypes.h>
 
 G_BEGIN_DECLS
 
-typedef struct _GHashTable	GHashTable;
+typedef struct _GHashTable  GHashTable;
 
-typedef gboolean	(*GHRFunc)		(gpointer	key,
-						 gpointer	value,
-						 gpointer	user_data);
+typedef gboolean  (*GHRFunc)  (gpointer  key,
+                               gpointer  value,
+                               gpointer  user_data);
 
 /* Hash tables
  */
-GHashTable* g_hash_table_new		(GHashFunc	 hash_func,
-					 GEqualFunc	 key_equal_func);
-void	    g_hash_table_destroy	(GHashTable	*hash_table);
-void	    g_hash_table_insert		(GHashTable	*hash_table,
-					 gpointer	 key,
-					 gpointer	 value);
-gboolean    g_hash_table_remove		(GHashTable	*hash_table,
-					 gconstpointer	 key);
-gpointer    g_hash_table_lookup		(GHashTable	*hash_table,
-					 gconstpointer	 key);
-gboolean    g_hash_table_lookup_extended(GHashTable	*hash_table,
-					 gconstpointer	 lookup_key,
-					 gpointer	*orig_key,
-					 gpointer	*value);
-void	    g_hash_table_foreach	(GHashTable	*hash_table,
-					 GHFunc		 func,
-					 gpointer	 user_data);
-guint	    g_hash_table_foreach_remove	(GHashTable	*hash_table,
-					 GHRFunc	 func,
-					 gpointer	 user_data);
-guint	    g_hash_table_size		(GHashTable	*hash_table);
+GHashTable* g_hash_table_new		   (GHashFunc	    hash_func,
+					    GEqualFunc	    key_equal_func);
+GHashTable* g_hash_table_new_full      	   (GHashFunc	    hash_func,
+					    GEqualFunc	    key_equal_func,
+					    GDestroyNotify  key_destroy_func,
+					    GDestroyNotify  value_destroy_func);
+void	    g_hash_table_destroy	   (GHashTable	   *hash_table);
+void	    g_hash_table_insert		   (GHashTable	   *hash_table,
+					    gpointer	    key,
+					    gpointer	    value);
+void        g_hash_table_replace           (GHashTable     *hash_table,
+					    gpointer	    key,
+					    gpointer	    value);
+gboolean    g_hash_table_remove		   (GHashTable	   *hash_table,
+					    gconstpointer   key);
+gboolean    g_hash_table_steal             (GHashTable     *hash_table,
+					    gconstpointer   key);
+gpointer    g_hash_table_lookup		   (GHashTable	   *hash_table,
+					    gconstpointer   key);
+gboolean    g_hash_table_lookup_extended   (GHashTable	   *hash_table,
+					    gconstpointer   lookup_key,
+					    gpointer	   *orig_key,
+					    gpointer	   *value);
+void	    g_hash_table_foreach	   (GHashTable	   *hash_table,
+					    GHFunc	    func,
+					    gpointer	    user_data);
+guint	    g_hash_table_foreach_remove	   (GHashTable	   *hash_table,
+					    GHRFunc	    func,
+					    gpointer	    user_data);
+guint	    g_hash_table_foreach_steal	   (GHashTable	   *hash_table,
+					    GHRFunc	    func,
+					    gpointer	    user_data);
+guint	    g_hash_table_size		   (GHashTable	   *hash_table);
+
+#ifndef G_DISABLE_DEPRECATED
 
 /* The following two functions are deprecated and will be removed in
  * the next major release. They do no good. */
-void	    g_hash_table_freeze		(GHashTable	*hash_table);
-void	    g_hash_table_thaw		(GHashTable	*hash_table);
+#define g_hash_table_freeze(hash_table) ((void)0)
+#define g_hash_table_thaw(hash_table) ((void)0)
+
+#endif /* G_DISABLE_DEPRECATED */
 
 /* Hash Functions
  */
-gboolean g_str_equal (gconstpointer   v,
-                      gconstpointer   v2);
-guint    g_str_hash  (gconstpointer   v);
+gboolean g_str_equal (gconstpointer  v,
+                      gconstpointer  v2);
+guint    g_str_hash  (gconstpointer  v);
 
-gboolean g_int_equal (gconstpointer   v,
-                      gconstpointer   v2) G_GNUC_CONST;
-guint    g_int_hash  (gconstpointer   v) G_GNUC_CONST;
+gboolean g_int_equal (gconstpointer  v,
+                      gconstpointer  v2) G_GNUC_CONST;
+guint    g_int_hash  (gconstpointer  v) G_GNUC_CONST;
 
 /* This "hash" function will just return the key's adress as an
  * unsigned integer. Useful for hashing on plain adresses or
@@ -82,9 +98,9 @@ guint    g_int_hash  (gconstpointer   v) G_GNUC_CONST;
  * passing NULL into g_hash_table_new() as GHashFunc has the
  * same effect as passing g_direct_hash().
  */
-guint    g_direct_hash  (gconstpointer v) G_GNUC_CONST;
-gboolean g_direct_equal (gconstpointer v,
-                         gconstpointer v2) G_GNUC_CONST;
+guint    g_direct_hash  (gconstpointer  v) G_GNUC_CONST;
+gboolean g_direct_equal (gconstpointer  v,
+                         gconstpointer  v2) G_GNUC_CONST;
 
 G_END_DECLS
 
diff --git a/graf2d/win32gdk/gdk/src/glib/ghook.c b/graf2d/win32gdk/gdk/src/glib/ghook.c
new file mode 100644
index 00000000000..d04162fa162
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/ghook.c
@@ -0,0 +1,640 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * GHook: Callback maintenance functions
+ * Copyright (C) 1998 Tim Janik
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#include	"glib.h"
+
+
+/* --- defines --- */
+#define	G_HOOKS_PREALLOC	(16)
+
+
+/* --- functions --- */
+static void
+default_finalize_hook (GHookList *hook_list,
+		       GHook     *hook)
+{
+  GDestroyNotify destroy = hook->destroy;
+
+  if (destroy)
+    {
+      hook->destroy = NULL;
+      destroy (hook->data);
+    }
+}
+
+void
+g_hook_list_init (GHookList *hook_list,
+		  guint	     hook_size)
+{
+  g_return_if_fail (hook_list != NULL);
+  g_return_if_fail (hook_size >= sizeof (GHook));
+  g_return_if_fail (hook_size < 65536);
+  
+  hook_list->seq_id = 1;
+  hook_list->hook_size = hook_size;
+  hook_list->is_setup = TRUE;
+  hook_list->hooks = NULL;
+  hook_list->hook_memchunk = g_mem_chunk_new ("GHook Memchunk",
+					      hook_size,
+					      hook_size * G_HOOKS_PREALLOC,
+					      G_ALLOC_AND_FREE);
+  hook_list->finalize_hook = default_finalize_hook;
+}
+
+void
+g_hook_list_clear (GHookList *hook_list)
+{
+  g_return_if_fail (hook_list != NULL);
+  
+  if (hook_list->is_setup)
+    {
+      GHook *hook;
+      
+      hook_list->is_setup = FALSE;
+      
+      hook = hook_list->hooks;
+      if (!hook)
+	{
+	  g_mem_chunk_destroy (hook_list->hook_memchunk);
+	  hook_list->hook_memchunk = NULL;
+	}
+      else
+	do
+	  {
+	    GHook *tmp;
+	    
+	    g_hook_ref (hook_list, hook);
+	    g_hook_destroy_link (hook_list, hook);
+	    tmp = hook->next;
+	    g_hook_unref (hook_list, hook);
+	    hook = tmp;
+	  }
+	while (hook);
+      if (hook_list->hook_memchunk)
+	g_warning (G_STRLOC ": failed to clear hooklist, unconsolidated references on hooks left");
+    }
+}
+
+GHook*
+g_hook_alloc (GHookList *hook_list)
+{
+  GHook *hook;
+  
+  g_return_val_if_fail (hook_list != NULL, NULL);
+  g_return_val_if_fail (hook_list->is_setup, NULL);
+  
+  hook = g_chunk_new0 (GHook, hook_list->hook_memchunk);
+  hook->data = NULL;
+  hook->next = NULL;
+  hook->prev = NULL;
+  hook->flags = G_HOOK_FLAG_ACTIVE;
+  hook->ref_count = 0;
+  hook->hook_id = 0;
+  hook->func = NULL;
+  hook->destroy = NULL;
+  
+  return hook;
+}
+
+void
+g_hook_free (GHookList *hook_list,
+	     GHook     *hook)
+{
+  g_return_if_fail (hook_list != NULL);
+  g_return_if_fail (hook_list->is_setup);
+  g_return_if_fail (hook != NULL);
+  g_return_if_fail (G_HOOK_IS_UNLINKED (hook));
+  g_return_if_fail (!G_HOOK_IN_CALL (hook));
+
+  hook_list->finalize_hook (hook_list, hook);
+  g_chunk_free (hook, hook_list->hook_memchunk);
+}
+
+void
+g_hook_destroy_link (GHookList *hook_list,
+		     GHook     *hook)
+{
+  g_return_if_fail (hook_list != NULL);
+  g_return_if_fail (hook != NULL);
+
+  hook->flags &= ~G_HOOK_FLAG_ACTIVE;
+  if (hook->hook_id)
+    {
+      hook->hook_id = 0;
+      g_hook_unref (hook_list, hook); /* counterpart to g_hook_insert_before */
+    }
+}
+
+gboolean
+g_hook_destroy (GHookList   *hook_list,
+		gulong	     hook_id)
+{
+  GHook *hook;
+  
+  g_return_val_if_fail (hook_list != NULL, FALSE);
+  g_return_val_if_fail (hook_id > 0, FALSE);
+  
+  hook = g_hook_get (hook_list, hook_id);
+  if (hook)
+    {
+      g_hook_destroy_link (hook_list, hook);
+      return TRUE;
+    }
+  
+  return FALSE;
+}
+
+void
+g_hook_unref (GHookList *hook_list,
+	      GHook	*hook)
+{
+  g_return_if_fail (hook_list != NULL);
+  g_return_if_fail (hook_list->hook_memchunk != NULL);
+  g_return_if_fail (hook != NULL);
+  g_return_if_fail (hook->ref_count > 0);
+  
+  hook->ref_count--;
+  if (!hook->ref_count)
+    {
+      g_return_if_fail (hook->hook_id == 0);
+      g_return_if_fail (!G_HOOK_IN_CALL (hook));
+
+      if (hook->prev)
+	hook->prev->next = hook->next;
+      else
+	hook_list->hooks = hook->next;
+      if (hook->next)
+	{
+	  hook->next->prev = hook->prev;
+	  hook->next = NULL;
+	}
+      hook->prev = NULL;
+
+      if (!hook_list->is_setup)
+	{
+	  hook_list->is_setup = TRUE;
+	  g_hook_free (hook_list, hook);
+	  hook_list->is_setup = FALSE;
+      
+	  if (!hook_list->hooks)
+	    {
+	      g_mem_chunk_destroy (hook_list->hook_memchunk);
+	      hook_list->hook_memchunk = NULL;
+	    }
+	}
+      else
+	g_hook_free (hook_list, hook);
+    }
+}
+
+void
+g_hook_ref (GHookList *hook_list,
+	    GHook     *hook)
+{
+  g_return_if_fail (hook_list != NULL);
+  g_return_if_fail (hook != NULL);
+  g_return_if_fail (hook->ref_count > 0);
+  
+  hook->ref_count++;
+}
+
+void
+g_hook_prepend (GHookList *hook_list,
+		GHook	  *hook)
+{
+  g_return_if_fail (hook_list != NULL);
+  
+  g_hook_insert_before (hook_list, hook_list->hooks, hook);
+}
+
+void
+g_hook_insert_before (GHookList *hook_list,
+		      GHook	*sibling,
+		      GHook	*hook)
+{
+  g_return_if_fail (hook_list != NULL);
+  g_return_if_fail (hook_list->is_setup);
+  g_return_if_fail (hook != NULL);
+  g_return_if_fail (G_HOOK_IS_UNLINKED (hook));
+  g_return_if_fail (hook->ref_count == 0);
+  
+  hook->hook_id = hook_list->seq_id++;
+  hook->ref_count = 1; /* counterpart to g_hook_destroy_link */
+  
+  if (sibling)
+    {
+      if (sibling->prev)
+	{
+	  hook->prev = sibling->prev;
+	  hook->prev->next = hook;
+	  hook->next = sibling;
+	  sibling->prev = hook;
+	}
+      else
+	{
+	  hook_list->hooks = hook;
+	  hook->next = sibling;
+	  sibling->prev = hook;
+	}
+    }
+  else
+    {
+      if (hook_list->hooks)
+	{
+	  sibling = hook_list->hooks;
+	  while (sibling->next)
+	    sibling = sibling->next;
+	  hook->prev = sibling;
+	  sibling->next = hook;
+	}
+      else
+	hook_list->hooks = hook;
+    }
+}
+
+void
+g_hook_list_invoke (GHookList *hook_list,
+		    gboolean   may_recurse)
+{
+  GHook *hook;
+  
+  g_return_if_fail (hook_list != NULL);
+  g_return_if_fail (hook_list->is_setup);
+
+  hook = g_hook_first_valid (hook_list, may_recurse);
+  while (hook)
+    {
+      GHookFunc func;
+      gboolean was_in_call;
+      
+      func = (GHookFunc) hook->func;
+      
+      was_in_call = G_HOOK_IN_CALL (hook);
+      hook->flags |= G_HOOK_FLAG_IN_CALL;
+      func (hook->data);
+      if (!was_in_call)
+	hook->flags &= ~G_HOOK_FLAG_IN_CALL;
+      
+      hook = g_hook_next_valid (hook_list, hook, may_recurse);
+    }
+}
+
+void
+g_hook_list_invoke_check (GHookList *hook_list,
+			  gboolean   may_recurse)
+{
+  GHook *hook;
+  
+  g_return_if_fail (hook_list != NULL);
+  g_return_if_fail (hook_list->is_setup);
+  
+  hook = g_hook_first_valid (hook_list, may_recurse);
+  while (hook)
+    {
+      GHookCheckFunc func;
+      gboolean was_in_call;
+      gboolean need_destroy;
+      
+      func = (GHookCheckFunc) hook->func;
+      
+      was_in_call = G_HOOK_IN_CALL (hook);
+      hook->flags |= G_HOOK_FLAG_IN_CALL;
+      need_destroy = !func (hook->data);
+      if (!was_in_call)
+	hook->flags &= ~G_HOOK_FLAG_IN_CALL;
+      if (need_destroy)
+	g_hook_destroy_link (hook_list, hook);
+      
+      hook = g_hook_next_valid (hook_list, hook, may_recurse);
+    }
+}
+
+void
+g_hook_list_marshal_check (GHookList	       *hook_list,
+			   gboolean		may_recurse,
+			   GHookCheckMarshaller marshaller,
+			   gpointer		data)
+{
+  GHook *hook;
+  
+  g_return_if_fail (hook_list != NULL);
+  g_return_if_fail (hook_list->is_setup);
+  g_return_if_fail (marshaller != NULL);
+  
+  hook = g_hook_first_valid (hook_list, may_recurse);
+  while (hook)
+    {
+      gboolean was_in_call;
+      gboolean need_destroy;
+      
+      was_in_call = G_HOOK_IN_CALL (hook);
+      hook->flags |= G_HOOK_FLAG_IN_CALL;
+      need_destroy = !marshaller (hook, data);
+      if (!was_in_call)
+	hook->flags &= ~G_HOOK_FLAG_IN_CALL;
+      if (need_destroy)
+	g_hook_destroy_link (hook_list, hook);
+      
+      hook = g_hook_next_valid (hook_list, hook, may_recurse);
+    }
+}
+
+void
+g_hook_list_marshal (GHookList		     *hook_list,
+		     gboolean		      may_recurse,
+		     GHookMarshaller	      marshaller,
+		     gpointer		      data)
+{
+  GHook *hook;
+  
+  g_return_if_fail (hook_list != NULL);
+  g_return_if_fail (hook_list->is_setup);
+  g_return_if_fail (marshaller != NULL);
+  
+  hook = g_hook_first_valid (hook_list, may_recurse);
+  while (hook)
+    {
+      gboolean was_in_call;
+      
+      was_in_call = G_HOOK_IN_CALL (hook);
+      hook->flags |= G_HOOK_FLAG_IN_CALL;
+      marshaller (hook, data);
+      if (!was_in_call)
+	hook->flags &= ~G_HOOK_FLAG_IN_CALL;
+      
+      hook = g_hook_next_valid (hook_list, hook, may_recurse);
+    }
+}
+
+GHook*
+g_hook_first_valid (GHookList *hook_list,
+		    gboolean   may_be_in_call)
+{
+  g_return_val_if_fail (hook_list != NULL, NULL);
+  
+  if (hook_list->is_setup)
+    {
+      GHook *hook;
+      
+      hook = hook_list->hooks;
+      if (hook)
+	{
+	  g_hook_ref (hook_list, hook);
+	  if (G_HOOK_IS_VALID (hook) && (may_be_in_call || !G_HOOK_IN_CALL (hook)))
+	    return hook;
+	  else
+	    return g_hook_next_valid (hook_list, hook, may_be_in_call);
+	}
+    }
+  
+  return NULL;
+}
+
+GHook*
+g_hook_next_valid (GHookList *hook_list,
+		   GHook     *hook,
+		   gboolean   may_be_in_call)
+{
+  GHook *ohook = hook;
+
+  g_return_val_if_fail (hook_list != NULL, NULL);
+
+  if (!hook)
+    return NULL;
+  
+  hook = hook->next;
+  while (hook)
+    {
+      if (G_HOOK_IS_VALID (hook) && (may_be_in_call || !G_HOOK_IN_CALL (hook)))
+	{
+	  g_hook_ref (hook_list, hook);
+	  g_hook_unref (hook_list, ohook);
+	  
+	  return hook;
+	}
+      hook = hook->next;
+    }
+  g_hook_unref (hook_list, ohook);
+
+  return NULL;
+}
+
+GHook*
+g_hook_get (GHookList *hook_list,
+	    gulong     hook_id)
+{
+  GHook *hook;
+  
+  g_return_val_if_fail (hook_list != NULL, NULL);
+  g_return_val_if_fail (hook_id > 0, NULL);
+  
+  hook = hook_list->hooks;
+  while (hook)
+    {
+      if (hook->hook_id == hook_id)
+	return hook;
+      hook = hook->next;
+    }
+  
+  return NULL;
+}
+
+GHook*
+g_hook_find (GHookList	  *hook_list,
+	     gboolean	   need_valids,
+	     GHookFindFunc func,
+	     gpointer	   data)
+{
+  GHook *hook;
+  
+  g_return_val_if_fail (hook_list != NULL, NULL);
+  g_return_val_if_fail (func != NULL, NULL);
+  
+  hook = hook_list->hooks;
+  while (hook)
+    {
+      GHook *tmp;
+
+      /* test only non-destroyed hooks */
+      if (!hook->hook_id)
+	{
+	  hook = hook->next;
+	  continue;
+	}
+      
+      g_hook_ref (hook_list, hook);
+      
+      if (func (hook, data) && hook->hook_id && (!need_valids || G_HOOK_ACTIVE (hook)))
+	{
+	  g_hook_unref (hook_list, hook);
+	  
+	  return hook;
+	}
+
+      tmp = hook->next;
+      g_hook_unref (hook_list, hook);
+      hook = tmp;
+    }
+  
+  return NULL;
+}
+
+GHook*
+g_hook_find_data (GHookList *hook_list,
+		  gboolean   need_valids,
+		  gpointer   data)
+{
+  GHook *hook;
+  
+  g_return_val_if_fail (hook_list != NULL, NULL);
+  
+  hook = hook_list->hooks;
+  while (hook)
+    {
+      /* test only non-destroyed hooks */
+      if (hook->data == data &&
+	  hook->hook_id &&
+	  (!need_valids || G_HOOK_ACTIVE (hook)))
+	return hook;
+
+      hook = hook->next;
+    }
+  
+  return NULL;
+}
+
+GHook*
+g_hook_find_func (GHookList *hook_list,
+		  gboolean   need_valids,
+		  gpointer   func)
+{
+  GHook *hook;
+  
+  g_return_val_if_fail (hook_list != NULL, NULL);
+  g_return_val_if_fail (func != NULL, NULL);
+  
+  hook = hook_list->hooks;
+  while (hook)
+    {
+      /* test only non-destroyed hooks */
+      if (hook->func == func &&
+	  hook->hook_id &&
+	  (!need_valids || G_HOOK_ACTIVE (hook)))
+	return hook;
+
+      hook = hook->next;
+    }
+  
+  return NULL;
+}
+
+GHook*
+g_hook_find_func_data (GHookList *hook_list,
+		       gboolean	  need_valids,
+		       gpointer	  func,
+		       gpointer	  data)
+{
+  GHook *hook;
+  
+  g_return_val_if_fail (hook_list != NULL, NULL);
+  g_return_val_if_fail (func != NULL, NULL);
+  
+  hook = hook_list->hooks;
+  while (hook)
+    {
+      /* test only non-destroyed hooks */
+      if (hook->data == data &&
+	  hook->func == func &&
+	  hook->hook_id &&
+	  (!need_valids || G_HOOK_ACTIVE (hook)))
+	return hook;
+
+      hook = hook->next;
+    }
+  
+  return NULL;
+}
+
+void
+g_hook_insert_sorted (GHookList	      *hook_list,
+		      GHook	      *hook,
+		      GHookCompareFunc func)
+{
+  GHook *sibling;
+  
+  g_return_if_fail (hook_list != NULL);
+  g_return_if_fail (hook_list->is_setup);
+  g_return_if_fail (hook != NULL);
+  g_return_if_fail (G_HOOK_IS_UNLINKED (hook));
+  g_return_if_fail (hook->func != NULL);
+  g_return_if_fail (func != NULL);
+
+  /* first non-destroyed hook */
+  sibling = hook_list->hooks;
+  while (sibling && !sibling->hook_id)
+    sibling = sibling->next;
+  
+  while (sibling)
+    {
+      GHook *tmp;
+      
+      g_hook_ref (hook_list, sibling);
+      if (func (hook, sibling) <= 0 && sibling->hook_id)
+	{
+	  g_hook_unref (hook_list, sibling);
+	  break;
+	}
+
+      /* next non-destroyed hook */
+      tmp = sibling->next;
+      while (tmp && !tmp->hook_id)
+	tmp = tmp->next;
+
+      g_hook_unref (hook_list, sibling);
+      sibling = tmp;
+    }
+  
+  g_hook_insert_before (hook_list, sibling, hook);
+}
+
+gint
+g_hook_compare_ids (GHook *new_hook,
+		    GHook *sibling)
+{
+  if (new_hook->hook_id < sibling->hook_id)
+    return -1;
+  else if (new_hook->hook_id > sibling->hook_id)
+    return 1;
+  
+  return 0;
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/ghook.h b/graf2d/win32gdk/gdk/src/glib/ghook.h
index fe350e18e2d..e6bfb461480 100644
--- a/graf2d/win32gdk/gdk/src/glib/ghook.h
+++ b/graf2d/win32gdk/gdk/src/glib/ghook.h
@@ -27,10 +27,12 @@
 #ifndef __G_HOOK_H__
 #define __G_HOOK_H__
 
-#include <gmem.h>
+#include <glib/gmem.h>
 
 G_BEGIN_DECLS
 
+
+/* --- typedefs --- */
 typedef struct _GHook		GHook;
 typedef struct _GHookList	GHookList;
 
@@ -39,60 +41,63 @@ typedef gint		(*GHookCompareFunc)	(GHook		*new_hook,
 typedef gboolean	(*GHookFindFunc)	(GHook		*hook,
 						 gpointer	 data);
 typedef void		(*GHookMarshaller)	(GHook		*hook,
-						 gpointer	 data);
+						 gpointer	 marshal_data);
 typedef gboolean	(*GHookCheckMarshaller)	(GHook		*hook,
-						 gpointer	 data);
+						 gpointer	 marshal_data);
 typedef void		(*GHookFunc)		(gpointer	 data);
 typedef gboolean	(*GHookCheckFunc)	(gpointer	 data);
-typedef void		(*GHookFreeFunc)	(GHookList      *hook_list,
+typedef void		(*GHookFinalizeFunc)	(GHookList      *hook_list,
 						 GHook          *hook);
-
-/* Callback maintenance functions
- */
-#define G_HOOK_FLAG_USER_SHIFT	(4)
 typedef enum
 {
-  G_HOOK_FLAG_ACTIVE	= 1 << 0,
-  G_HOOK_FLAG_IN_CALL	= 1 << 1,
-  G_HOOK_FLAG_MASK	= 0x0f
+  G_HOOK_FLAG_ACTIVE	    = 1 << 0,
+  G_HOOK_FLAG_IN_CALL	    = 1 << 1,
+  G_HOOK_FLAG_MASK	    = 0x0f
 } GHookFlagMask;
+#define G_HOOK_FLAG_USER_SHIFT	(4)
 
-#define	G_HOOK_DEFERRED_DESTROY	((GHookFreeFunc) 0x01)
 
+/* --- structures --- */
 struct _GHookList
 {
-  guint		 seq_id;
-  guint		 hook_size;
-  guint		 is_setup : 1;
-  GHook		*hooks;
-  GMemChunk	*hook_memchunk;
-  GHookFreeFunc	 hook_free; /* virtual function */
-  GHookFreeFunc	 hook_destroy; /* virtual function */
+  gulong	    seq_id;
+  guint		    hook_size : 16;
+  guint		    is_setup : 1;
+  GHook		   *hooks;
+  GMemChunk	   *hook_memchunk;
+  GHookFinalizeFunc finalize_hook;
 };
-
 struct _GHook
 {
   gpointer	 data;
   GHook		*next;
   GHook		*prev;
   guint		 ref_count;
-  guint		 hook_id;
+  gulong	 hook_id;
   guint		 flags;
   gpointer	 func;
   GDestroyNotify destroy;
 };
 
-#define	G_HOOK_ACTIVE(hook)		((((GHook*) hook)->flags & \
+
+/* --- macros --- */
+#define	G_HOOK(hook)			((GHook*) (hook))
+#define	G_HOOK_FLAGS(hook)		(G_HOOK (hook)->flags)
+#define	G_HOOK_ACTIVE(hook)		((G_HOOK_FLAGS (hook) & \
 					  G_HOOK_FLAG_ACTIVE) != 0)
-#define	G_HOOK_IN_CALL(hook)		((((GHook*) hook)->flags & \
+#define	G_HOOK_IN_CALL(hook)		((G_HOOK_FLAGS (hook) & \
 					  G_HOOK_FLAG_IN_CALL) != 0)
-#define G_HOOK_IS_VALID(hook)		(((GHook*) hook)->hook_id != 0 && \
-					 G_HOOK_ACTIVE (hook))
-#define G_HOOK_IS_UNLINKED(hook)	(((GHook*) hook)->next == NULL && \
-					 ((GHook*) hook)->prev == NULL && \
-					 ((GHook*) hook)->hook_id == 0 && \
-					 ((GHook*) hook)->ref_count == 0)
+#define G_HOOK_IS_VALID(hook)		(G_HOOK (hook)->hook_id != 0 && \
+					 (G_HOOK_FLAGS (hook) & \
+                                          G_HOOK_FLAG_ACTIVE))
+#define G_HOOK_IS_UNLINKED(hook)	(G_HOOK (hook)->next == NULL && \
+					 G_HOOK (hook)->prev == NULL && \
+					 G_HOOK (hook)->hook_id == 0 && \
+					 G_HOOK (hook)->ref_count == 0)
+
 
+/* --- prototypes --- */
+/* callback mainenance functions */
 void	 g_hook_list_init		(GHookList		*hook_list,
 					 guint			 hook_size);
 void	 g_hook_list_clear		(GHookList		*hook_list);
@@ -104,7 +109,7 @@ void	 g_hook_ref			(GHookList		*hook_list,
 void	 g_hook_unref			(GHookList		*hook_list,
 					 GHook			*hook);
 gboolean g_hook_destroy			(GHookList		*hook_list,
-					 guint			 hook_id);
+					 gulong			 hook_id);
 void	 g_hook_destroy_link		(GHookList		*hook_list,
 					 GHook			*hook);
 void	 g_hook_prepend			(GHookList		*hook_list,
@@ -116,7 +121,7 @@ void	 g_hook_insert_sorted		(GHookList		*hook_list,
 					 GHook			*hook,
 					 GHookCompareFunc	 func);
 GHook*	 g_hook_get			(GHookList		*hook_list,
-					 guint			 hook_id);
+					 gulong			 hook_id);
 GHook*	 g_hook_find			(GHookList		*hook_list,
 					 gboolean		 need_valids,
 					 GHookFindFunc		 func,
@@ -140,15 +145,12 @@ GHook*	 g_hook_first_valid		(GHookList		*hook_list,
 GHook*	 g_hook_next_valid		(GHookList		*hook_list,
 					 GHook			*hook,
 					 gboolean		 may_be_in_call);
-
 /* GHookCompareFunc implementation to insert hooks sorted by their id */
 gint	 g_hook_compare_ids		(GHook			*new_hook,
 					 GHook			*sibling);
-
 /* convenience macros */
 #define	 g_hook_append( hook_list, hook )  \
      g_hook_insert_before ((hook_list), NULL, (hook))
-
 /* invoke all valid hooks with the (*GHookFunc) signature.
  */
 void	 g_hook_list_invoke		(GHookList		*hook_list,
@@ -163,11 +165,11 @@ void	 g_hook_list_invoke_check	(GHookList		*hook_list,
 void	 g_hook_list_marshal		(GHookList		*hook_list,
 					 gboolean		 may_recurse,
 					 GHookMarshaller	 marshaller,
-					 gpointer		 data);
+					 gpointer		 marshal_data);
 void	 g_hook_list_marshal_check	(GHookList		*hook_list,
 					 gboolean		 may_recurse,
 					 GHookCheckMarshaller	 marshaller,
-					 gpointer		 data);
+					 gpointer		 marshal_data);
 
 G_END_DECLS
 
diff --git a/graf2d/win32gdk/gdk/src/glib/giochannel.c b/graf2d/win32gdk/gdk/src/glib/giochannel.c
new file mode 100644
index 00000000000..bebab838caf
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/giochannel.c
@@ -0,0 +1,2256 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * giochannel.c: IO Channel abstraction
+ * Copyright 1998 Owen Taylor
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#include "config.h"
+#include "giochannel.h"
+
+#include <string.h>
+#include <errno.h>
+
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+
+#undef G_DISABLE_DEPRECATED
+
+#include "glib.h"
+
+#include "glibintl.h"
+
+#define G_IO_NICE_BUF_SIZE	1024
+
+/* This needs to be as wide as the largest character in any possible encoding */
+#define MAX_CHAR_SIZE		10
+
+/* Some simplifying macros, which reduce the need to worry whether the
+ * buffers have been allocated. These also make USE_BUF () an lvalue,
+ * which is used in g_io_channel_read_to_end ().
+ */
+#define USE_BUF(channel)	((channel)->encoding ? (channel)->encoded_read_buf \
+				 : (channel)->read_buf)
+#define BUF_LEN(string)		((string) ? (string)->len : 0)
+
+static GIOError		g_io_error_get_from_g_error	(GIOStatus    status,
+							 GError      *err);
+static void		g_io_channel_purge		(GIOChannel  *channel);
+static GIOStatus	g_io_channel_fill_buffer	(GIOChannel  *channel,
+							 GError     **err);
+static GIOStatus	g_io_channel_read_line_backend	(GIOChannel  *channel,
+							 gsize       *length,
+							 gsize       *terminator_pos,
+							 GError     **error);
+
+void
+g_io_channel_init (GIOChannel *channel)
+{
+  channel->ref_count = 1;
+  channel->encoding = g_strdup ("UTF-8");
+  channel->line_term = NULL;
+  channel->line_term_len = 0;
+  channel->buf_size = G_IO_NICE_BUF_SIZE;
+  channel->read_cd = (GIConv) -1;
+  channel->write_cd = (GIConv) -1;
+  channel->read_buf = NULL; /* Lazy allocate buffers */
+  channel->encoded_read_buf = NULL;
+  channel->write_buf = NULL;
+  channel->partial_write_buf[0] = '\0';
+  channel->use_buffer = TRUE;
+  channel->do_encode = FALSE;
+  channel->close_on_unref = FALSE;
+}
+
+void 
+g_io_channel_ref (GIOChannel *channel)
+{
+  g_return_if_fail (channel != NULL);
+
+  channel->ref_count++;
+}
+
+void 
+g_io_channel_unref (GIOChannel *channel)
+{
+  g_return_if_fail (channel != NULL);
+
+  channel->ref_count--;
+  if (channel->ref_count == 0)
+    {
+      if (channel->close_on_unref)
+        g_io_channel_shutdown (channel, TRUE, NULL);
+      else
+        g_io_channel_purge (channel);
+      g_free (channel->encoding);
+      if (channel->read_cd != (GIConv) -1)
+        g_iconv_close (channel->read_cd);
+      if (channel->write_cd != (GIConv) -1)
+        g_iconv_close (channel->write_cd);
+      if (channel->line_term)
+        g_free (channel->line_term);
+      if (channel->read_buf)
+        g_string_free (channel->read_buf, TRUE);
+      if (channel->write_buf)
+        g_string_free (channel->write_buf, TRUE);
+      if (channel->encoded_read_buf)
+        g_string_free (channel->encoded_read_buf, TRUE);
+      channel->funcs->io_free (channel);
+    }
+}
+
+static GIOError
+g_io_error_get_from_g_error (GIOStatus status,
+			     GError *err)
+{
+  switch (status)
+    {
+      case G_IO_STATUS_NORMAL:
+      case G_IO_STATUS_EOF:
+        return G_IO_ERROR_NONE;
+      case G_IO_STATUS_AGAIN:
+        return G_IO_ERROR_AGAIN;
+      case G_IO_STATUS_ERROR:
+        if (err->domain != G_IO_CHANNEL_ERROR)
+          return G_IO_ERROR_UNKNOWN;
+        switch (err->code)
+          {
+            case G_IO_CHANNEL_ERROR_INVAL:
+              return G_IO_ERROR_INVAL;
+            default:
+              return G_IO_ERROR_UNKNOWN;
+          }
+      default:
+        g_assert_not_reached ();
+        return G_IO_ERROR_UNKNOWN; /* Keep the compiler happy */
+    }
+}
+
+/**
+ * g_io_channel_read:
+ * @channel: a #GIOChannel. 
+ * @buf: a buffer to read the data into (which should be at least count bytes long).
+ * @count: the number of bytes to read from the #GIOChannel.
+ * @bytes_read: returns the number of bytes actually read. 
+ * 
+ * Reads data from a #GIOChannel. This function is depricated. New code should
+ * use g_io_channel_read_chars() instead.
+ * 
+ * Return value: %G_IO_ERROR_NONE if the operation was successful. 
+ **/
+GIOError 
+g_io_channel_read (GIOChannel *channel, 
+		   gchar      *buf, 
+		   gsize       count,
+		   gsize      *bytes_read)
+{
+  GError *err = NULL;
+  GIOError error;
+  GIOStatus status;
+
+  g_return_val_if_fail (channel != NULL, G_IO_ERROR_UNKNOWN);
+  g_return_val_if_fail (bytes_read != NULL, G_IO_ERROR_UNKNOWN);
+
+  status = channel->funcs->io_read (channel, buf, count, bytes_read, &err);
+
+  error = g_io_error_get_from_g_error (status, err);
+
+  if (err)
+    g_error_free (err);
+
+  return error;
+}
+
+/**
+ * g_io_channel_write:
+ * @channel:  a #GIOChannel.
+ * @buf: the buffer containing the data to write. 
+ * @count: the number of bytes to write.
+ * @bytes_written:  the number of bytes actually written.
+ * 
+ * Writes data to a #GIOChannel. This function is depricated. New code should
+ * use g_io_channel_write_chars() instead.
+ * 
+ * Return value:  %G_IO_ERROR_NONE if the operation was successful.
+ **/
+GIOError 
+g_io_channel_write (GIOChannel  *channel, 
+		    const gchar *buf, 
+		    gsize        count,
+		    gsize       *bytes_written)
+{
+  GError *err = NULL;
+  GIOError error;
+  GIOStatus status;
+
+  g_return_val_if_fail (channel != NULL, G_IO_ERROR_UNKNOWN);
+  g_return_val_if_fail (bytes_written != NULL, G_IO_ERROR_UNKNOWN);
+
+  status = channel->funcs->io_write (channel, buf, count, bytes_written, &err);
+
+  error = g_io_error_get_from_g_error (status, err);
+
+  if (err)
+    g_error_free (err);
+
+  return error;
+}
+
+/**
+ * g_io_channel_seek:
+ * @channel: a #GIOChannel. 
+ * @offset: an offset, in bytes, which is added to the position specified by @type
+ * @type: the position in the file, which can be %G_SEEK_CUR (the current
+ *        position), %G_SEEK_SET (the start of the file), or %G_SEEK_END (the end of the
+ *        file).
+ * 
+ * Sets the current position in the #GIOChannel, similar to the standard library
+ * function fseek(). This function is depricated. New code should
+ * use g_io_channel_seek_position() instead.
+ * 
+ * Return value: %G_IO_ERROR_NONE if the operation was successful.
+ **/
+GIOError 
+g_io_channel_seek  (GIOChannel   *channel,
+		    glong         offset, 
+		    GSeekType     type)
+{
+  GError *err = NULL;
+  GIOError error;
+  GIOStatus status;
+
+  g_return_val_if_fail (channel != NULL, G_IO_ERROR_UNKNOWN);
+  g_return_val_if_fail (channel->is_seekable, G_IO_ERROR_UNKNOWN);
+
+  switch (type)
+    {
+      case G_SEEK_CUR:
+      case G_SEEK_SET:
+      case G_SEEK_END:
+        break;
+      default:
+        g_warning ("g_io_channel_seek: unknown seek type");
+        return G_IO_ERROR_UNKNOWN;
+    }
+
+  status = channel->funcs->io_seek (channel, offset, type, &err);
+
+  error = g_io_error_get_from_g_error (status, err);
+
+  if (err)
+    g_error_free (err);
+
+  return error;
+}
+
+/* The function g_io_channel_new_file() is prototyped in both
+ * giounix.c and giowin32.c, so we stick its documentation here.
+ */
+
+/**
+ * g_io_channel_new_file:
+ * @filename: A string containing the name of a file.
+ * @mode: One of "r", "w", "a", "r+", "w+", "a+". These have
+ *        the same meaning as in fopen().
+ * @error: A location to return an error of type %G_IO_FILE_ERROR.
+ *
+ * Open a file @filename as a #GIOChannel using mode @mode. This
+ * channel will be closed when the last reference to it is dropped,
+ * so there is no need to call g_io_channel_close() (though doing
+ * so will not cause problems, as long as no attempt is made to
+ * access the channel after it is closed).
+ *
+ * Return value: A #GIOChannel on success, %NULL on failure.
+ **/
+
+/**
+ * g_io_channel_close:
+ * @channel: A #GIOChannel
+ * 
+ * Close an IO channel. Any pending data to be written will be
+ * flushed, ignoring errors. The channel will not be freed until the
+ * last reference is dropped using g_io_channel_unref(). This
+ * function is deprecated: you should use g_io_channel_shutdown()
+ * instead.
+ **/
+void
+g_io_channel_close (GIOChannel *channel)
+{
+  GError *err = NULL;
+  
+  g_return_if_fail (channel != NULL);
+
+  g_io_channel_purge (channel);
+
+  channel->funcs->io_close (channel, &err);
+
+  if (err)
+    { /* No way to return the error */
+      g_warning ("Error closing channel: %s", err->message);
+      g_error_free (err);
+    }
+  
+  channel->close_on_unref = FALSE; /* Because we already did */
+  channel->is_readable = FALSE;
+  channel->is_writeable = FALSE;
+  channel->is_seekable = FALSE;
+}
+
+/**
+ * g_io_channel_shutdown:
+ * @channel: a #GIOChannel
+ * @flush: if %TRUE, flush pending
+ * @err: location to store a #GIOChannelError
+ * 
+ * Close an IO channel. Any pending data to be written will be
+ * flushed if @flush is %TRUE. The channel will not be freed until the
+ * last reference is dropped using g_io_channel_unref().
+ *
+ * Return value:
+ **/
+GIOStatus
+g_io_channel_shutdown (GIOChannel *channel,
+		       gboolean    flush,
+		       GError    **err)
+{
+  GIOStatus status, result;
+  GError *tmperr = NULL;
+  
+  g_return_val_if_fail (channel != NULL, G_IO_STATUS_ERROR);
+  g_return_val_if_fail (err == NULL || *err == NULL, G_IO_STATUS_ERROR);
+
+  if (flush && channel->write_buf && channel->write_buf->len > 0)
+    {
+      GIOFlags flags;
+      
+      /* Set the channel to blocking, to avoid a busy loop
+       */
+      flags = g_io_channel_get_flags (channel);
+      /* Ignore any errors here, they're irrelevant */
+      g_io_channel_set_flags (channel, flags & ~G_IO_FLAG_NONBLOCK, NULL);
+
+      result = g_io_channel_flush (channel, &tmperr);
+
+      if (channel->partial_write_buf[0] != '\0')
+        {
+          g_warning ("Partial character at end of write buffer not flushed.\n");
+          channel->partial_write_buf[0] = '\0';
+        }
+    }
+  else
+    result = G_IO_STATUS_NORMAL;
+
+  status = channel->funcs->io_close (channel, err);
+
+  channel->close_on_unref = FALSE; /* Because we already did */
+  channel->is_readable = FALSE;
+  channel->is_writeable = FALSE;
+  channel->is_seekable = FALSE;
+
+  if (status != G_IO_STATUS_NORMAL)
+    {
+      g_clear_error (&tmperr);
+      return status;
+    }
+  else if (result != G_IO_STATUS_NORMAL)
+    {
+      g_propagate_error (err, tmperr);
+      return result;
+    }
+  else
+    return G_IO_STATUS_NORMAL;
+}
+
+/* This function is used for the final flush on close or unref */
+static void
+g_io_channel_purge (GIOChannel *channel)
+{
+  GError *err = NULL;
+  GIOStatus status;
+
+  g_return_if_fail (channel != NULL);
+
+  if (channel->write_buf && channel->write_buf->len > 0)
+    {
+      GIOFlags flags;
+      
+      /* Set the channel to blocking, to avoid a busy loop
+       */
+      flags = g_io_channel_get_flags (channel);
+      g_io_channel_set_flags (channel, flags & ~G_IO_FLAG_NONBLOCK, NULL);
+
+      status = g_io_channel_flush (channel, &err);
+
+      if (err)
+	{ /* No way to return the error */
+	  g_warning ("Error flushing string: %s", err->message);
+	  g_error_free (err);
+	}
+    }
+
+  /* Flush these in case anyone tries to close without unrefing */
+
+  if (channel->read_buf)
+    g_string_truncate (channel->read_buf, 0);
+  if (channel->write_buf)
+    g_string_truncate (channel->write_buf, 0);
+  if (channel->encoding)
+    {
+      if (channel->encoded_read_buf)
+        g_string_truncate (channel->encoded_read_buf, 0);
+
+      if (channel->partial_write_buf[0] != '\0')
+        {
+          g_warning ("Partial character at end of write buffer not flushed.\n");
+          channel->partial_write_buf[0] = '\0';
+        }
+    }
+}
+
+GSource *
+g_io_create_watch (GIOChannel  *channel,
+		   GIOCondition condition)
+{
+  g_return_val_if_fail (channel != NULL, NULL);
+
+  return channel->funcs->io_create_watch (channel, condition);
+}
+
+guint 
+g_io_add_watch_full (GIOChannel    *channel,
+		     gint           priority,
+		     GIOCondition   condition,
+		     GIOFunc        func,
+		     gpointer       user_data,
+		     GDestroyNotify notify)
+{
+  GSource *source;
+  guint id;
+  
+  g_return_val_if_fail (channel != NULL, 0);
+
+  source = g_io_create_watch (channel, condition);
+
+  if (priority != G_PRIORITY_DEFAULT)
+    g_source_set_priority (source, priority);
+  g_source_set_callback (source, (GSourceFunc)func, user_data, notify);
+
+  id = g_source_attach (source, NULL);
+  g_source_unref (source);
+
+  return id;
+}
+
+guint 
+g_io_add_watch (GIOChannel    *channel,
+		GIOCondition   condition,
+		GIOFunc        func,
+		gpointer       user_data)
+{
+  return g_io_add_watch_full (channel, G_PRIORITY_DEFAULT, condition, func, user_data, NULL);
+}
+
+/**
+ * g_io_channel_get_buffer_condition:
+ * @channel: A #GIOChannel
+ *
+ * This function returns a #GIOCondition depending on whether there
+ * is data to be read/space to write data in the
+ * internal buffers in the #GIOChannel. Only the flags %G_IO_IN and
+ * %G_IO_OUT may be set.
+ *
+ * Return value: A #GIOCondition
+ **/
+GIOCondition
+g_io_channel_get_buffer_condition (GIOChannel *channel)
+{
+  GIOCondition condition = 0;
+
+  if (channel->encoding)
+    {
+      if (channel->encoded_read_buf && (channel->encoded_read_buf->len > 0))
+        condition |= G_IO_IN; /* Only return if we have full characters */
+    }
+  else
+    {
+      if (channel->read_buf && (channel->read_buf->len > 0))
+        condition |= G_IO_IN;
+    }
+
+  if (channel->write_buf && (channel->write_buf->len < channel->buf_size))
+    condition |= G_IO_OUT;
+
+  return condition;
+}
+
+/**
+ * g_io_channel_error_from_errno:
+ * @en: An errno error number, e.g. EINVAL
+ *
+ * Return value: A #GIOChannelError error number, e.g. %G_IO_CHANNEL_ERROR_INVAL
+ **/
+GIOChannelError
+g_io_channel_error_from_errno (gint en)
+{
+#ifdef EAGAIN
+  g_return_val_if_fail (en != EAGAIN, G_IO_CHANNEL_ERROR_FAILED);
+#endif
+#ifdef EINTR
+  g_return_val_if_fail (en != EINTR, G_IO_CHANNEL_ERROR_FAILED);
+#endif
+
+  switch (en)
+    {
+#ifdef EBADF
+    case EBADF:
+      g_warning("Invalid file descriptor.\n");
+      return G_IO_CHANNEL_ERROR_FAILED;
+#endif
+
+#ifdef EFAULT
+    case EFAULT:
+      g_warning("File descriptor outside valid address space.\n");
+      return G_IO_CHANNEL_ERROR_FAILED;
+#endif
+
+#ifdef EFBIG
+    case EFBIG:
+      return G_IO_CHANNEL_ERROR_FBIG;
+#endif
+
+#ifdef EINVAL
+    case EINVAL:
+      return G_IO_CHANNEL_ERROR_INVAL;
+#endif
+
+#ifdef EIO
+    case EIO:
+      return G_IO_CHANNEL_ERROR_IO;
+#endif
+
+#ifdef EISDIR
+    case EISDIR:
+      return G_IO_CHANNEL_ERROR_ISDIR;
+#endif
+
+#ifdef ENOSPC
+    case ENOSPC:
+      return G_IO_CHANNEL_ERROR_NOSPC;
+#endif
+
+#ifdef ENXIO
+    case ENXIO:
+      return G_IO_CHANNEL_ERROR_NXIO;
+#endif
+
+#ifdef EOVERFLOW
+    case EOVERFLOW:
+      return G_IO_CHANNEL_ERROR_OVERFLOW;
+#endif
+
+#ifdef EPIPE
+    case EPIPE:
+      return G_IO_CHANNEL_ERROR_PIPE;
+#endif
+
+    default:
+      return G_IO_CHANNEL_ERROR_FAILED;
+    }
+}
+
+/**
+ * g_io_channel_set_buffer_size:
+ * @channel: a #GIOChannel
+ * @size: the size of the buffer. 0 == pick a good size
+ *
+ * Set the buffer size.
+ **/  
+void
+g_io_channel_set_buffer_size (GIOChannel	*channel,
+                              gsize		 size)
+{
+  g_return_if_fail (channel != NULL);
+
+  if (size == 0)
+    size = G_IO_NICE_BUF_SIZE;
+
+  if (size < MAX_CHAR_SIZE)
+    size = MAX_CHAR_SIZE;
+
+  channel->buf_size = size;
+}
+
+/**
+ * g_io_channel_get_buffer_size:
+ * @channel: a #GIOChannel
+ *
+ * Get the buffer size.
+ *
+ * Return value: the size of the buffer.
+ **/  
+gsize
+g_io_channel_get_buffer_size (GIOChannel	*channel)
+{
+  g_return_val_if_fail (channel != NULL, 0);
+
+  return channel->buf_size;
+}
+
+/**
+ * g_io_channel_set_line_term:
+ * @channel: a #GIOChannel
+ * @line_term: The line termination string. Use %NULL for auto detect.
+ *             Auto detection breaks on "\n", "\r\n", "\r", "\0", and
+ *             the unicode paragraph separator. Auto detection should
+ *             not be used for anything other than file-based channels.
+ * @length: The length of the termination string. If -1 is passed, the
+ *          string is assumed to be null terminated. This option allows
+ *          termination strings with embeded nulls.
+ *
+ * This sets the string that #GIOChannel uses to determine
+ * where in the file a line break occurs.
+ **/
+void
+g_io_channel_set_line_term (GIOChannel	*channel,
+                            const gchar	*line_term,
+			    gint         length)
+{
+  g_return_if_fail (channel != NULL);
+  g_return_if_fail (line_term == NULL || length != 0); /* Disallow "" */
+
+  if (line_term == NULL)
+    length = 0;
+  else if (length < 0)
+    length = strlen (line_term);
+
+  if (channel->line_term)
+    g_free (channel->line_term);
+  channel->line_term = line_term ? g_memdup (line_term, length) : NULL;
+  channel->line_term_len = length;
+}
+
+/**
+ * g_io_channel_get_line_term:
+ * @channel: a #GIOChannel
+ * @length: a location to return the length of the line terminator
+ *
+ * This returns the string that #GIOChannel uses to determine
+ * where in the file a line break occurs. A value of %NULL
+ * indicates auto detection.
+ *
+ * Return value: The line termination string. This value
+ *   is owned by GLib and must not be freed.
+ **/
+G_CONST_RETURN gchar*
+g_io_channel_get_line_term (GIOChannel	*channel,
+			    gint        *length)
+{
+  g_return_val_if_fail (channel != NULL, 0);
+
+  if (length)
+    *length = channel->line_term_len;
+
+  return channel->line_term;
+}
+
+/**
+ * g_io_channel_set_flags:
+ * @channel: a #GIOChannel
+ * @flags: the flags to set on the channel
+ * @error: A location to return an error of type #GIOChannelError
+ *
+ * Return value:
+ **/
+GIOStatus
+g_io_channel_set_flags (GIOChannel *channel,
+                        GIOFlags    flags,
+                        GError    **error)
+{
+  g_return_val_if_fail (channel != NULL, G_IO_STATUS_ERROR);
+  g_return_val_if_fail ((error == NULL) || (*error == NULL),
+			G_IO_STATUS_ERROR);
+
+  return (* channel->funcs->io_set_flags)(channel,
+					  flags & G_IO_FLAG_SET_MASK,
+					  error);
+}
+
+/**
+ * g_io_channel_get_flags:
+ * @channel: a #GIOChannel
+ *
+ * Gets the current flags for a #GIOChannel, including read-only
+ * flags such as %G_IO_FLAG_IS_READABLE.
+ *
+ * The values of the flags %G_IO_FLAG_IS_READABLE and %G_IO_FLAG_IS_WRITEABLE
+ * are cached for internal use by the channel when it is created.
+ * If they should change at some later point (e.g. partial shutdown
+ * of a socket with the unix shutdown () function), the user
+ * should immediately call g_io_channel_get_flags () to update
+ * the internal values of these flags.
+ *
+ * Return value: the flags which are set on the channel
+ **/
+GIOFlags
+g_io_channel_get_flags (GIOChannel *channel)
+{
+  GIOFlags flags;
+
+  g_return_val_if_fail (channel != NULL, G_IO_STATUS_ERROR);
+
+  flags = (* channel->funcs->io_get_flags) (channel);
+
+  /* Cross implementation code */
+
+  if (channel->is_seekable)
+    flags |= G_IO_FLAG_IS_SEEKABLE;
+  if (channel->is_readable)
+    flags |= G_IO_FLAG_IS_READABLE;
+  if (channel->is_writeable)
+    flags |= G_IO_FLAG_IS_WRITEABLE;
+
+  return flags;
+}
+
+/**
+ * g_io_channel_set_close_on_unref:
+ * @channel: a #GIOChannel
+ * @do_close: Whether to close the channel on the final unref of
+ *            the GIOChannel data structure. The default value of
+ *            this is %TRUE for channels created by g_io_channel_new_file (),
+ *            and %FALSE for all other channels.
+ *
+ * Setting this flag to %TRUE for a channel you have already closed
+ * can cause problems.
+ **/
+void
+g_io_channel_set_close_on_unref	(GIOChannel *channel,
+				 gboolean    do_close)
+{
+  g_return_if_fail (channel != NULL);
+
+  channel->close_on_unref = do_close;
+}
+
+/**
+ * g_io_channel_get_close_on_unref:
+ * @channel: a #GIOChannel
+ *
+ * Return value: Whether the channel will be closedi on the final unref of
+ *               the GIOChannel data structure. The default value of
+ *               this is %TRUE for channels created by g_io_channel_new_file (),
+ *               and %FALSE for all other channels.
+ **/
+gboolean
+g_io_channel_get_close_on_unref	(GIOChannel *channel)
+{
+  g_return_val_if_fail (channel != NULL, FALSE);
+
+  return channel->close_on_unref;
+}
+
+/**
+ * g_io_channel_seek_position:
+ * @channel: a #GIOChannel
+ * @offset: The offset in bytes from the position specified by @type
+ * @type: a #GSeekType. The type %G_SEEK_CUR is only allowed in those
+ *                      cases where a call to g_io_channel_set_encoding ()
+ *                      is allowed. See the documentation for
+ *                      g_io_channel_set_encoding () for details.
+ * @error: A location to return an error of type #GIOChannelError
+ *
+ * Replacement for g_io_channel_seek() with the new API.
+ *
+ * Return value:
+ **/
+GIOStatus
+g_io_channel_seek_position	(GIOChannel* channel,
+				 glong       offset,
+				 GSeekType   type,
+				 GError    **error)
+{
+  GIOStatus status;
+
+  /* For files, only one of the read and write buffers can contain data.
+   * For sockets, both can contain data.
+   */
+
+  g_return_val_if_fail (channel != NULL, G_IO_STATUS_ERROR);
+  g_return_val_if_fail ((error == NULL) || (*error == NULL),
+			G_IO_STATUS_ERROR);
+  g_return_val_if_fail (channel->is_seekable, G_IO_STATUS_ERROR);
+
+  switch (type)
+    {
+      case G_SEEK_CUR: /* The user is seeking relative to the head of the buffer */
+        if (channel->use_buffer)
+          {
+            if (channel->do_encode && channel->encoded_read_buf
+                && channel->encoded_read_buf->len > 0)
+              {
+                g_warning ("Seek type G_SEEK_CUR not allowed for this"
+                  " channel's encoding.\n");
+                return G_IO_STATUS_ERROR;
+              }
+          if (channel->read_buf)
+            offset -= channel->read_buf->len;
+          if (channel->encoded_read_buf)
+            {
+              g_assert (channel->encoded_read_buf->len == 0 || !channel->do_encode);
+
+              /* If there's anything here, it's because the encoding is UTF-8,
+               * so we can just subtract the buffer length, the same as for
+               * the unencoded data.
+               */
+
+              offset -= channel->encoded_read_buf->len;
+            }
+          }
+        break;
+      case G_SEEK_SET:
+      case G_SEEK_END:
+        break;
+      default:
+        g_warning ("g_io_channel_seek_position: unknown seek type");
+        return G_IO_STATUS_ERROR;
+    }
+
+  if (channel->use_buffer)
+    {
+      status = g_io_channel_flush (channel, error);
+      if (status != G_IO_STATUS_NORMAL)
+        return status;
+    }
+
+  status = channel->funcs->io_seek (channel, offset, type, error);
+
+  if ((status == G_IO_STATUS_NORMAL) && (channel->use_buffer))
+    {
+      if (channel->read_buf)
+        g_string_truncate (channel->read_buf, 0);
+
+      /* Conversion state no longer matches position in file */
+      if (channel->read_cd != (GIConv) -1)
+        g_iconv (channel->read_cd, NULL, NULL, NULL, NULL);
+      if (channel->write_cd != (GIConv) -1)
+        g_iconv (channel->write_cd, NULL, NULL, NULL, NULL);
+
+      if (channel->encoded_read_buf)
+        {
+          g_assert (channel->encoded_read_buf->len == 0 || !channel->do_encode);
+          g_string_truncate (channel->encoded_read_buf, 0);
+        }
+
+      if (channel->partial_write_buf[0] != '\0')
+        {
+          g_warning ("Partial character at end of write buffer not flushed.\n");
+          channel->partial_write_buf[0] = '\0';
+        }
+    }
+
+  return status;
+}
+
+/**
+ * g_io_channel_flush:
+ * @channel: a #GIOChannel
+ * @error: location to store an error of type #GIOChannelError
+ *
+ * Flush the write buffer for the GIOChannel.
+ *
+ * Return value: the status of the operation: One of
+ *   G_IO_CHANNEL_NORMAL, G_IO_CHANNEL_AGAIN, or
+ *   G_IO_CHANNEL_ERROR.
+ **/
+GIOStatus
+g_io_channel_flush (GIOChannel	*channel,
+		    GError     **error)
+{
+  GIOStatus status;
+  gsize this_time = 1, bytes_written = 0;
+
+  g_return_val_if_fail (channel != NULL, G_IO_STATUS_ERROR);
+  g_return_val_if_fail ((error == NULL) || (*error == NULL), G_IO_STATUS_ERROR);
+
+  if (channel->write_buf == NULL || channel->write_buf->len == 0)
+    return G_IO_STATUS_NORMAL;
+
+  do
+    {
+      g_assert (this_time > 0);
+
+      status = channel->funcs->io_write (channel,
+					 channel->write_buf->str + bytes_written,
+					 channel->write_buf->len - bytes_written,
+					 &this_time, error);
+      bytes_written += this_time;
+    }
+  while ((bytes_written < channel->write_buf->len)
+         && (status == G_IO_STATUS_NORMAL));
+
+  g_string_erase (channel->write_buf, 0, bytes_written);
+
+  return status;
+}
+
+/**
+ * g_io_channel_set_buffered:
+ * @channel: a #GIOChannel
+ * @buffered: whether to set the channel buffered or unbuffered
+ *
+ * The buffering state can only be set if the channel's encoding
+ * is %NULL. For any other encoding, the channel must be buffered.
+ *
+ * A buffered channel can only be set unbuffered if the channel's
+ * internal buffers have been flushed. Newly created channels or
+ * channels which have returned G_IO_STATUS_EOF
+ * not require such a flush. For write-only channels, a call to
+ * g_io_channel_flush () is sufficient. For all other channels,
+ * the buffers may be flushed by a call to g_io_channel_seek_position ().
+ * This includes the possibility of seeking with seek type %G_SEEK_CUR
+ * and an offset of zero. Note that this means that socket-based
+ * channels cannot be set unbuffered once they have had data
+ * read from them.
+ *
+ * On unbuffered channels, it is safe to mix read and write
+ * calls from the new and old APIs, if this is necessary for
+ * maintaining old code.
+ *
+ * The default state of the channel is buffered.
+ **/
+void
+g_io_channel_set_buffered	(GIOChannel *channel,
+				 gboolean    buffered)
+{
+  g_return_if_fail (channel != NULL);
+
+  if (channel->encoding != NULL)
+    {
+      g_warning ("Need to have NULL encoding to set the buffering state of the "
+                 "channel.\n");
+      return;
+    }
+
+  g_return_if_fail (!channel->read_buf || channel->read_buf->len == 0);
+  g_return_if_fail (!channel->write_buf || channel->write_buf->len == 0);
+
+  channel->use_buffer = buffered;
+}
+
+/**
+ * g_io_channel_get_buffered:
+ * @channel: a #GIOChannel
+ *
+ * Return Value: the buffering state of the channel
+ **/
+gboolean
+g_io_channel_get_buffered	(GIOChannel *channel)
+{
+  g_return_val_if_fail (channel != NULL, FALSE);
+
+  return channel->use_buffer;
+}
+
+/**
+ * g_io_channel_set_encoding:
+ * @channel: a #GIOChannel
+ * @encoding: the encoding type
+ * @error: location to store an error of type #GConvertError.
+ *
+ * Set the encoding for the input/output of the channel. The internal
+ * encoding is always UTF-8. The default encoding for the
+ * external file is UTF-8.
+ *
+ * The encoding %NULL is safe to use with binary data.
+ *
+ * The encoding can only be set under the following conditions:
+ *
+ * 1. The channel was just created, and has not been written to
+ *    or read from yet.
+ *
+ * 2. The channel is write-only.
+ *
+ * 3. The channel is a file, and the file pointer was just
+ *    repositioned by a call to g_io_channel_seek_position().
+ *    (This flushes all the internal buffers.)
+ *
+ * 4. The current encoding is %NULL or UTF-8.
+ *
+ * 5. One of the (new API) read functions has just returned G_IO_STATUS_EOF
+ *    (or, in the case of g_io_channel_read_to_end (), G_IO_STATUS_NORMAL).
+ *
+ * 6. One of the functions g_io_channel_read_chars () or g_io_channel_read_unichar ()
+ *    has returned G_IO_STATUS_AGAIN or G_IO_STATUS_ERROR. This may be
+ *    useful in the case of G_CONVERT_ERROR_ILLEGAL_SEQUENCE.
+ *    Returning one of these statuses from g_io_channel_read_line (),
+ *    g_io_channel_read_line_string (), or g_io_channel_read_to_end ()
+ *    does _not_ guarantee that the encoding can be changed.
+ *
+ * Channels which do not meet the above conditions cannot call
+ * g_io_channel_seek_position () with an offset of %G_SEEK_CUR,
+ * and if they are "seekable" cannot
+ * call g_io_channel_write_chars () after calling one
+ * of the API "read" functions.
+ *
+ * Return Value: %G_IO_STATUS_NORMAL if the encoding was succesfully set.
+ **/
+GIOStatus
+g_io_channel_set_encoding (GIOChannel	*channel,
+                           const gchar	*encoding,
+			   GError      **error)
+{
+  GIConv read_cd, write_cd;
+  gboolean did_encode;
+
+  g_return_val_if_fail (channel != NULL, G_IO_STATUS_ERROR);
+  g_return_val_if_fail ((error == NULL) || (*error == NULL), G_IO_STATUS_ERROR);
+
+  /* Make sure the encoded buffers are empty */
+
+  g_return_val_if_fail (!channel->do_encode || !channel->encoded_read_buf ||
+			channel->encoded_read_buf->len == 0, G_IO_STATUS_ERROR);
+
+  if (!channel->use_buffer)
+    {
+      g_warning ("Need to set the channel buffered before setting the encoding.\n");
+      g_warning ("Assuming this is what you meant and acting accordingly.\n");
+
+      channel->use_buffer = TRUE;
+    }
+
+  if (channel->partial_write_buf[0] != '\0')
+    {
+      g_warning ("Partial character at end of write buffer not flushed.\n");
+      channel->partial_write_buf[0] = '\0';
+    }
+
+  did_encode = channel->do_encode;
+
+  if (!encoding || strcmp (encoding, "UTF8") == 0 || strcmp (encoding, "UTF-8") == 0)
+    {
+      channel->do_encode = FALSE;
+      read_cd = write_cd = (GIConv) -1;
+    }
+  else
+    {
+      gint err = 0;
+      const gchar *from_enc = NULL, *to_enc = NULL;
+
+      if (channel->is_readable)
+        {
+          read_cd = g_iconv_open ("UTF-8", encoding);
+
+          if (read_cd == (GIConv) -1)
+            {
+              err = errno;
+              from_enc = "UTF-8";
+              to_enc = encoding;
+            }
+        }
+      else
+        read_cd = (GIConv) -1;
+
+      if (channel->is_writeable && err == 0)
+        {
+          write_cd = g_iconv_open (encoding, "UTF-8");
+
+          if (write_cd == (GIConv) -1)
+            {
+              err = errno;
+              from_enc = encoding;
+              to_enc = "UTF-8";
+            }
+        }
+      else
+        write_cd = (GIConv) -1;
+
+      if (err != 0)
+        {
+          g_assert (from_enc);
+          g_assert (to_enc);
+
+          if (err == EINVAL)
+            g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_NO_CONVERSION,
+                         _("Conversion from character set `%s' to `%s' is not supported"),
+                         from_enc, to_enc);
+          else
+            g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_FAILED,
+                         _("Could not open converter from `%s' to `%s': %s"),
+                         from_enc, to_enc, strerror (err));
+
+          if (read_cd != (GIConv) -1)
+            g_iconv_close (read_cd);
+          if (write_cd != (GIConv) -1)
+            g_iconv_close (write_cd);
+
+          return G_IO_STATUS_ERROR;
+        }
+
+      channel->do_encode = TRUE;
+    }
+
+  /* The encoding is ok, so set the fields in channel */
+
+  if (channel->read_cd != (GIConv) -1)
+    g_iconv_close (channel->read_cd);
+  if (channel->write_cd != (GIConv) -1)
+    g_iconv_close (channel->write_cd);
+
+  if (channel->encoded_read_buf && channel->encoded_read_buf->len > 0)
+    {
+      g_assert (!did_encode); /* Encoding UTF-8, NULL doesn't use encoded_read_buf */
+
+      /* This is just validated UTF-8, so we can copy it back into read_buf
+       * so it can be encoded in whatever the new encoding is.
+       */
+
+      g_string_prepend_len (channel->read_buf, channel->encoded_read_buf->str,
+                            channel->encoded_read_buf->len);
+      g_string_truncate (channel->encoded_read_buf, 0);
+    }
+
+  channel->read_cd = read_cd;
+  channel->write_cd = write_cd;
+
+  g_free (channel->encoding);
+  channel->encoding = g_strdup (encoding);
+
+  return G_IO_STATUS_NORMAL;
+}
+
+/**
+ * g_io_channel_get_encoding:
+ * @channel: a #GIOChannel
+ *
+ * Get the encoding for the input/output of the channel. The internal
+ * encoding is always UTF-8. The encoding %NULL makes the
+ * channel safe for binary data.
+ *
+ * Return value: A string containing the encoding, this string is
+ *   owned by GLib and must not be freed.
+ **/
+G_CONST_RETURN gchar*
+g_io_channel_get_encoding (GIOChannel      *channel)
+{
+  g_return_val_if_fail (channel != NULL, NULL);
+
+  return channel->encoding;
+}
+
+static GIOStatus
+g_io_channel_fill_buffer (GIOChannel *channel,
+                          GError    **err)
+{
+  gsize read_size, cur_len, oldlen;
+  GIOStatus status;
+
+  if (channel->is_seekable && channel->write_buf && channel->write_buf->len > 0)
+    {
+      status = g_io_channel_flush (channel, err);
+      if (status != G_IO_STATUS_NORMAL)
+        return status;
+    }
+  if (channel->is_seekable && channel->partial_write_buf[0] != '\0')
+    {
+      g_warning ("Partial character at end of write buffer not flushed.\n");
+      channel->partial_write_buf[0] = '\0';
+    }
+
+  if (!channel->read_buf)
+    channel->read_buf = g_string_sized_new (channel->buf_size);
+
+  cur_len = channel->read_buf->len;
+
+  g_string_set_size (channel->read_buf, channel->read_buf->len + channel->buf_size);
+
+  status = channel->funcs->io_read (channel, channel->read_buf->str + cur_len,
+                                    channel->buf_size, &read_size, err);
+
+  g_assert ((status == G_IO_STATUS_NORMAL) || (read_size == 0));
+
+  g_string_truncate (channel->read_buf, read_size + cur_len);
+
+  if ((status != G_IO_STATUS_NORMAL)
+    && ((status != G_IO_STATUS_EOF) || (channel->read_buf->len == 0)))
+    return status;
+
+  g_assert (channel->read_buf->len > 0);
+
+  if (channel->encoded_read_buf)
+    oldlen = channel->encoded_read_buf->len;
+  else
+    {
+      oldlen = 0;
+      if (channel->encoding)
+        channel->encoded_read_buf = g_string_sized_new (channel->buf_size);
+    }
+
+  if (channel->do_encode)
+    {
+      size_t errnum, inbytes_left, outbytes_left;
+      gchar *inbuf, *outbuf;
+      int errval;
+
+      g_assert (channel->encoded_read_buf);
+
+reencode:
+
+      inbytes_left = channel->read_buf->len;
+      outbytes_left = MAX (channel->read_buf->len,
+                           channel->encoded_read_buf->allocated_len
+                           - channel->encoded_read_buf->len - 1); /* 1 for NULL */
+      outbytes_left = MAX (outbytes_left, 6);
+
+      inbuf = channel->read_buf->str;
+      g_string_set_size (channel->encoded_read_buf,
+                         channel->encoded_read_buf->len + outbytes_left);
+      outbuf = channel->encoded_read_buf->str + channel->encoded_read_buf->len
+               - outbytes_left;
+
+      errnum = g_iconv (channel->read_cd, &inbuf, &inbytes_left,
+			&outbuf, &outbytes_left);
+      errval = errno;
+
+      g_assert (inbuf + inbytes_left == channel->read_buf->str
+                + channel->read_buf->len);
+      g_assert (outbuf + outbytes_left == channel->encoded_read_buf->str
+                + channel->encoded_read_buf->len);
+
+      g_string_erase (channel->read_buf, 0,
+		      channel->read_buf->len - inbytes_left);
+      g_string_truncate (channel->encoded_read_buf,
+			 channel->encoded_read_buf->len - outbytes_left);
+
+      if (errnum == (size_t) -1)
+        {
+          switch (errval)
+            {
+              case EINVAL:
+                if ((oldlen == channel->encoded_read_buf->len)
+                  && (status == G_IO_STATUS_EOF))
+                  status = G_IO_STATUS_EOF;
+                else
+                  status = G_IO_STATUS_NORMAL;
+                break;
+              case E2BIG:
+                /* Buffer size at least 6, wrote at least on character */
+                g_assert (inbuf != channel->read_buf->str);
+                goto reencode;
+              case EILSEQ:
+                if (oldlen < channel->encoded_read_buf->len)
+                  status = G_IO_STATUS_NORMAL;
+                else
+                  {
+                    g_set_error (err, G_CONVERT_ERROR,
+                      G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
+                      _("Invalid byte sequence in conversion input"));
+                    return G_IO_STATUS_ERROR;
+                  }
+                break;
+              default:
+                g_assert (errval != EBADF); /* The converter should be open */
+                g_set_error (err, G_CONVERT_ERROR, G_CONVERT_ERROR_FAILED,
+                  _("Error during conversion: %s"), strerror (errval));
+                return G_IO_STATUS_ERROR;
+            }
+        }
+      g_assert ((status != G_IO_STATUS_NORMAL)
+               || (channel->encoded_read_buf->len > 0));
+    }
+  else if (channel->encoding) /* UTF-8 */
+    {
+      gchar *nextchar, *lastchar;
+
+      g_assert (channel->encoded_read_buf);
+
+      nextchar = channel->read_buf->str;
+      lastchar = channel->read_buf->str + channel->read_buf->len;
+
+      while (nextchar < lastchar)
+        {
+          gunichar val_char;
+
+          val_char = g_utf8_get_char_validated (nextchar, lastchar - nextchar);
+
+          switch (val_char)
+            {
+              case -2:
+                /* stop, leave partial character in buffer */
+                lastchar = nextchar;
+                break;
+              case -1:
+                if (oldlen < channel->encoded_read_buf->len)
+                  status = G_IO_STATUS_NORMAL;
+                else
+                  {
+                    g_set_error (err, G_CONVERT_ERROR,
+                      G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
+                      _("Invalid byte sequence in conversion input"));
+                    status = G_IO_STATUS_ERROR;
+                  }
+                lastchar = nextchar;
+                break;
+              default:
+                nextchar = g_utf8_next_char (nextchar);
+                break;
+            }
+        }
+
+      if (lastchar > channel->read_buf->str)
+        {
+          gint copy_len = lastchar - channel->read_buf->str;
+
+          g_string_append_len (channel->encoded_read_buf, channel->read_buf->str,
+                               copy_len);
+          g_string_erase (channel->read_buf, 0, copy_len);
+        }
+    }
+
+  return status;
+}
+
+/**
+ * g_io_channel_read_line:
+ * @channel: a #GIOChannel
+ * @str_return: The line read from the #GIOChannel, not including the
+ *              line terminator. This data should be freed with g_free()
+ *              when no longer needed. This
+ *              is a null terminated string. If a @length of zero is
+ *              returned, this will be %NULL instead.
+ * @length: location to store length of the read data, or %NULL
+ * @terminator_pos: location to store position of line terminator, or %NULL
+ * @error: A location to return an error of type #GConvertError
+ *         or #GIOChannelError
+ *
+ * Read a line, including the terminating character(s),
+ * from a #GIOChannel into a newly allocated string.
+ * @length will contain allocated memory if the return
+ * is %G_IO_STATUS_NORMAL.
+ *
+ * Return value: a newly allocated string. Free this string
+ *   with g_free() when you are done with it.
+ **/
+GIOStatus
+g_io_channel_read_line (GIOChannel *channel,
+                        gchar     **str_return,
+                        gsize      *length,
+			gsize      *terminator_pos,
+		        GError    **error)
+{
+  GIOStatus status;
+  gsize got_length;
+  
+  g_return_val_if_fail (channel != NULL, G_IO_STATUS_ERROR);
+  g_return_val_if_fail (str_return != NULL, G_IO_STATUS_ERROR);
+  g_return_val_if_fail ((error == NULL) || (*error == NULL),
+			G_IO_STATUS_ERROR);
+  g_return_val_if_fail (channel->is_readable, G_IO_STATUS_ERROR);
+
+  status = g_io_channel_read_line_backend (channel, &got_length, terminator_pos, error);
+
+  if (length)
+    *length = got_length;
+
+  if (status == G_IO_STATUS_NORMAL)
+    {
+      g_assert (USE_BUF (channel));
+      *str_return = g_strndup (USE_BUF (channel)->str, got_length);
+      g_string_erase (USE_BUF (channel), 0, got_length);
+    }
+  else
+    *str_return = NULL;
+  
+  return status;
+}
+
+/**
+ * g_io_channel_read_line_string:
+ * @channel: a #GIOChannel
+ * @buffer: a #GString into which the line will be written.
+ *          If @buffer already contains data, the old data will
+ *          be overwritten.
+ * @terminator_pos: location to store position of line terminator, or %NULL
+ * @error: a location to store an error of type #GConvertError
+ *         or #GIOChannelError
+ *
+ * Read a line from a #GIOChannel, using a #GString as a buffer.
+ *
+ * Return value:
+ **/
+GIOStatus
+g_io_channel_read_line_string (GIOChannel *channel,
+                               GString	  *buffer,
+			       gsize      *terminator_pos,
+                               GError	 **error)
+{
+  gsize length;
+  GIOStatus status;
+
+  g_return_val_if_fail (channel != NULL, G_IO_STATUS_ERROR);
+  g_return_val_if_fail (buffer != NULL, G_IO_STATUS_ERROR);
+  g_return_val_if_fail ((error == NULL) || (*error == NULL),
+			G_IO_STATUS_ERROR);
+  g_return_val_if_fail (channel->is_readable, G_IO_STATUS_ERROR);
+
+  if (buffer->len > 0)
+    g_string_truncate (buffer, 0); /* clear out the buffer */
+
+  status = g_io_channel_read_line_backend (channel, &length, terminator_pos, error);
+
+  if (status == G_IO_STATUS_NORMAL)
+    {
+      g_assert (USE_BUF (channel));
+      g_string_append_len (buffer, USE_BUF (channel)->str, length);
+      g_string_erase (USE_BUF (channel), 0, length);
+    }
+
+  return status;
+}
+
+
+static GIOStatus
+g_io_channel_read_line_backend	(GIOChannel *channel,
+				 gsize      *length,
+				 gsize      *terminator_pos,
+				 GError    **error)
+{
+  GIOStatus status;
+  gsize checked_to, line_term_len, line_length, got_term_len;
+  gboolean first_time = TRUE;
+
+  if (!channel->use_buffer)
+    {
+      /* Can't do a raw read in read_line */
+      g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_FAILED,
+                   _("Can't do a raw read in g_io_channel_read_line_string"));
+      return G_IO_STATUS_ERROR;
+    }
+
+  status = G_IO_STATUS_NORMAL;
+
+  if (channel->line_term)
+    line_term_len = channel->line_term_len;
+  else
+    line_term_len = 3;
+    /* This value used for setting checked_to, it's the longest of the four
+     * we autodetect for.
+     */
+
+  checked_to = 0;
+
+  while (TRUE)
+    {
+      gchar *nextchar, *lastchar;
+      GString *use_buf;
+
+      if (!first_time || (BUF_LEN (USE_BUF (channel)) == 0))
+        {
+read_again:
+          status = g_io_channel_fill_buffer (channel, error);
+          switch (status)
+            {
+              case G_IO_STATUS_NORMAL:
+                if (BUF_LEN (USE_BUF (channel)) == 0)
+                  /* Can happen when using conversion and only read
+                   * part of a character
+                   */
+                  {
+                    first_time = FALSE;
+                    continue;
+                  }
+                break;
+              case G_IO_STATUS_EOF:
+                if (BUF_LEN (USE_BUF (channel)) == 0)
+                  {
+                    if (length)
+                      *length = 0;
+
+                    if (channel->encoding && channel->read_buf->len != 0)
+                      {
+                        g_set_error (error, G_CONVERT_ERROR,
+                                     G_CONVERT_ERROR_PARTIAL_INPUT,
+                                     "Leftover unconverted data in read buffer");
+                        return G_IO_STATUS_ERROR;
+                      }
+                    else
+                      return G_IO_STATUS_EOF;
+                  }
+                break;
+              default:
+                if (length)
+                  *length = 0;
+                return status;
+            }
+        }
+
+      g_assert (BUF_LEN (USE_BUF (channel)) != 0);
+
+      use_buf = USE_BUF (channel); /* The buffer has been created by this point */
+
+      first_time = FALSE;
+
+      lastchar = use_buf->str + use_buf->len;
+
+      for (nextchar = use_buf->str + checked_to; nextchar < lastchar;
+           channel->encoding ? nextchar = g_utf8_next_char (nextchar) : nextchar++)
+        {
+          if (channel->line_term)
+            {
+              if (memcmp (channel->line_term, nextchar, line_term_len) == 0)
+                {
+                  line_length = nextchar - use_buf->str;
+                  got_term_len = line_term_len;
+                  goto done;
+                }
+            }
+          else /* auto detect */
+            {
+              switch (*nextchar)
+                {
+                  case '\n': /* unix */
+                    line_length = nextchar - use_buf->str;
+                    got_term_len = 1;
+                    goto done;
+                  case '\r': /* Warning: do not use with sockets */
+                    line_length = nextchar - use_buf->str;
+                    if ((nextchar == lastchar - 1) && (status != G_IO_STATUS_EOF)
+                       && (lastchar == use_buf->str + use_buf->len))
+                      goto read_again; /* Try to read more data */
+                    if ((nextchar < lastchar - 1) && (*(nextchar + 1) == '\n')) /* dos */
+                      got_term_len = 2;
+                    else /* mac */
+                      got_term_len = 1;
+                    goto done;
+                  case '\xe2': /* Unicode paragraph separator */
+                    if (strncmp ("\xe2\x80\xa9", nextchar, 3) == 0)
+                      {
+                        line_length = nextchar - use_buf->str;
+                        got_term_len = 3;
+                        goto done;
+                      }
+                    break;
+                  case '\0': /* Embeded null in input */
+                    line_length = nextchar - use_buf->str;
+                    got_term_len = 1;
+                    goto done;
+                  default: /* no match */
+                    break;
+                }
+            }
+        }
+
+      /* If encoding != NULL, valid UTF-8, didn't overshoot */
+      g_assert (nextchar == lastchar);
+
+      /* Check for EOF */
+
+      if (status == G_IO_STATUS_EOF)
+        {
+          if (channel->encoding && channel->read_buf->len > 0)
+            {
+              g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_PARTIAL_INPUT,
+                           "Channel terminates in a partial character");
+              return G_IO_STATUS_ERROR;
+            }
+          line_length = use_buf->len;
+          got_term_len = 0;
+          break;
+        }
+
+      checked_to = MAX (use_buf->len - (line_term_len - 1), 0);
+    }
+
+done:
+
+  if (terminator_pos)
+    *terminator_pos = line_length;
+
+  if (length)
+    *length = line_length + got_term_len;
+
+  return G_IO_STATUS_NORMAL;
+}
+
+/**
+ * g_io_channel_read_to_end:
+ * @channel: a #GIOChannel
+ * @str_return: Location to store a pointer to a string holding
+ *              the remaining data in the #GIOChannel. This data should
+ *              be freed with g_free() when no longer needed. This
+ *              data is terminated by an extra null, but there may be other
+ *              nulls in the intervening data.
+ * @length: Location to store length of the data
+ * @error: A location to return an error of type #GConvertError
+ *         or #GIOChannelError
+ *
+ * Read all the remaining data from the file.
+ *
+ * Return value: %G_IO_STATUS_NORMAL on success. This function never
+ *               returns %G_IO_STATUS_EOF.
+ **/
+GIOStatus
+g_io_channel_read_to_end (GIOChannel	*channel,
+                          gchar        **str_return,
+                          gsize		*length,
+                          GError       **error)
+{
+  GIOStatus status;
+    
+  g_return_val_if_fail (channel != NULL, G_IO_STATUS_ERROR);
+  g_return_val_if_fail ((error == NULL) || (*error == NULL),
+    G_IO_STATUS_ERROR);
+  g_return_val_if_fail (channel->is_readable, G_IO_STATUS_ERROR);
+
+  if (str_return)
+    *str_return = NULL;
+  if (length)
+    *length = 0;
+
+  if (!channel->use_buffer)
+    {
+      g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_FAILED,
+                   _("Can't do a raw read in g_io_channel_read_to_end"));
+      return G_IO_STATUS_ERROR;
+    }
+
+  do
+    status = g_io_channel_fill_buffer (channel, error);
+  while (status == G_IO_STATUS_NORMAL);
+
+  if (status != G_IO_STATUS_EOF)
+    return status;
+
+  if (channel->encoding && channel->read_buf->len > 0)
+    {
+      g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_PARTIAL_INPUT,
+                   "Channel terminates in a partial character");
+      return G_IO_STATUS_ERROR;
+    }
+
+  if (USE_BUF (channel) == NULL)
+    {
+      /* length is already set to zero */
+      if (str_return)
+        *str_return = g_strdup ("");
+    }
+  else
+    {
+      if (length)
+        *length = USE_BUF (channel)->len;
+
+      if (str_return)
+        *str_return = g_string_free (USE_BUF (channel), FALSE);
+      else
+        g_string_free (USE_BUF (channel), TRUE);
+
+      if (channel->encoding)
+	channel->encoded_read_buf = NULL;
+      else
+	channel->read_buf = NULL;
+    }
+
+  return G_IO_STATUS_NORMAL;
+}
+
+/**
+ * g_io_channel_read_chars:
+ * @channel: a #GIOChannel
+ * @buf: a buffer to read data into
+ * @count: the size of the buffer. Note that the buffer may
+ *         not be complelely filled even if there is data
+ *         in the buffer if the remaining data is not a
+ *         complete character.
+ * @bytes_read: The number of bytes read. This may be zero even on
+ *              success if count < 6 and the channel's encoding is non-%NULL.
+ *              This indicates that the next UTF-8 character is too wide for
+ *              the buffer.
+ * @error: A location to return an error of type #GConvertError
+ *         or #GIOChannelError.
+ *
+ * Replacement for g_io_channel_read() with the new API.
+ *
+ * Return value:
+ **/
+GIOStatus
+g_io_channel_read_chars (GIOChannel	*channel,
+                         gchar		*buf,
+                         gsize		 count,
+			 gsize          *bytes_read,
+                         GError        **error)
+{
+  GIOStatus status;
+  gsize got_bytes;
+
+  g_return_val_if_fail (channel != NULL, G_IO_STATUS_ERROR);
+  g_return_val_if_fail ((error == NULL) || (*error == NULL),
+			G_IO_STATUS_ERROR);
+  g_return_val_if_fail (channel->is_readable, G_IO_STATUS_ERROR);
+
+  if (count == 0)
+    {
+      *bytes_read = 0;
+      return G_IO_STATUS_NORMAL;
+    }
+  g_return_val_if_fail (buf != NULL, G_IO_STATUS_ERROR);
+
+  if (!channel->use_buffer)
+    {
+      gint tmp_bytes;
+      
+      g_assert (!channel->read_buf || channel->read_buf->len == 0);
+
+      status = channel->funcs->io_read (channel, buf, count, &tmp_bytes, error);
+      
+      if (bytes_read)
+	*bytes_read = tmp_bytes;
+
+      return status;
+    }
+
+  status = G_IO_STATUS_NORMAL;
+
+  while (BUF_LEN (USE_BUF (channel)) < count && status == G_IO_STATUS_NORMAL)
+    status = g_io_channel_fill_buffer (channel, error);
+
+  /* Only return an error if we have no data */
+
+  if (BUF_LEN (USE_BUF (channel)) == 0)
+    {
+      g_assert (status != G_IO_STATUS_NORMAL);
+
+      if (status == G_IO_STATUS_EOF && channel->encoding
+          && BUF_LEN (channel->read_buf) > 0)
+        {
+          g_set_error (error, G_CONVERT_ERROR,
+                       G_CONVERT_ERROR_PARTIAL_INPUT,
+                       "Leftover unconverted data in read buffer");
+          status = G_IO_STATUS_ERROR;
+        }
+
+      if (bytes_read)
+        *bytes_read = 0;
+
+      return status;
+    }
+
+  if (status == G_IO_STATUS_ERROR)
+    g_clear_error (error);
+
+  got_bytes = MIN (count, BUF_LEN (USE_BUF (channel)));
+
+  g_assert (got_bytes > 0);
+
+  if (channel->encoding)
+    /* Don't validate for NULL encoding, binary safe */
+    {
+      gchar *nextchar, *prevchar;
+
+      g_assert (USE_BUF (channel) == channel->encoded_read_buf);
+
+      nextchar = channel->encoded_read_buf->str;
+
+      do
+        {
+          prevchar = nextchar;
+          nextchar = g_utf8_next_char (nextchar);
+          g_assert (nextchar != prevchar); /* Possible for *prevchar of -1 or -2 */
+        }
+      while (nextchar < channel->encoded_read_buf->str + got_bytes);
+
+      if (nextchar > channel->encoded_read_buf->str + got_bytes)
+        got_bytes = prevchar - channel->encoded_read_buf->str;
+
+      g_assert (got_bytes > 0 || count < 6);
+    }
+
+  memcpy (buf, USE_BUF (channel)->str, got_bytes);
+  g_string_erase (USE_BUF (channel), 0, got_bytes);
+
+  if (bytes_read)
+    *bytes_read = got_bytes;
+
+  return G_IO_STATUS_NORMAL;
+}
+
+/**
+ * g_io_channel_read_unichar:
+ * @channel: a #GIOChannel
+ * @thechar: a location to return a character
+ * @error: A location to return an error of type #GConvertError
+ *         or #GIOChannelError
+ *
+ * This function cannot be called on a channel with %NULL encoding.
+ *
+ * Return value: a #GIOStatus
+ **/
+GIOStatus
+g_io_channel_read_unichar     (GIOChannel   *channel,
+			       gunichar     *thechar,
+			       GError      **error)
+{
+  GIOStatus status = G_IO_STATUS_NORMAL;
+
+  g_return_val_if_fail (channel != NULL, G_IO_STATUS_ERROR);
+  g_return_val_if_fail (channel->encoding != NULL, G_IO_STATUS_ERROR);
+  g_return_val_if_fail ((error == NULL) || (*error == NULL),
+			G_IO_STATUS_ERROR);
+  g_return_val_if_fail (channel->is_readable, G_IO_STATUS_ERROR);
+
+  while (BUF_LEN (channel->encoded_read_buf) == 0 && status == G_IO_STATUS_NORMAL)
+    status = g_io_channel_fill_buffer (channel, error);
+
+  /* Only return an error if we have no data */
+
+  if (BUF_LEN (USE_BUF (channel)) == 0)
+    {
+      g_assert (status != G_IO_STATUS_NORMAL);
+
+      if (status == G_IO_STATUS_EOF && BUF_LEN (channel->read_buf) > 0)
+        {
+          g_set_error (error, G_CONVERT_ERROR,
+                       G_CONVERT_ERROR_PARTIAL_INPUT,
+                       "Leftover unconverted data in read buffer");
+          status = G_IO_STATUS_ERROR;
+        }
+
+      if (thechar)
+        *thechar = (gunichar) -1;
+
+      return status;
+    }
+
+  if (status == G_IO_STATUS_ERROR)
+    g_clear_error (error);
+
+  if (thechar)
+    *thechar = g_utf8_get_char (channel->encoded_read_buf->str);
+
+  g_string_erase (channel->encoded_read_buf, 0,
+                  g_utf8_next_char (channel->encoded_read_buf->str)
+                  - channel->encoded_read_buf->str);
+
+  return G_IO_STATUS_NORMAL;
+}
+
+/**
+ * g_io_channel_write_chars:
+ * @channel: a #GIOChannel
+ * @buf: a buffer to write data from
+ * @count: the size of the buffer. If -1, the buffer
+ *         is taken to be a nul terminated string.
+ * @bytes_written: The number of bytes written. This can be nonzero
+ *                 even if the return value is not %G_IO_STATUS_NORMAL.
+ *                 If the return value is %G_IO_STATUS_NORMAL and the
+ *                 channel is blocking, this will always be equal
+ *                 to @count if @count >= 0.
+ * @error: A location to return an error of type #GConvertError
+ *         or #GIOChannelError
+ *
+ * Replacement for g_io_channel_write() with the new API.
+ *
+ * On seekable channels with encodings other than %NULL or UTF-8, generic
+ * mixing of reading and writing is not allowed. A call to g_io_channel_write_chars ()
+ * may only be made on a channel from which data has been read in the
+ * cases described in the documentation for g_io_channel_set_encoding ().
+ *
+ * Return value:
+ **/
+GIOStatus
+g_io_channel_write_chars (GIOChannel	*channel,
+                          const gchar	*buf,
+                          gssize	 count,
+			  gsize         *bytes_written,
+                          GError       **error)
+{
+  GIOStatus status;
+  gssize wrote_bytes = 0;
+
+  g_return_val_if_fail (channel != NULL, G_IO_STATUS_ERROR);
+  g_return_val_if_fail ((error == NULL) || (*error == NULL),
+			G_IO_STATUS_ERROR);
+  g_return_val_if_fail (channel->is_writeable, G_IO_STATUS_ERROR);
+
+  if ((count < 0) && buf)
+    count = strlen (buf);
+  
+  if (count == 0)
+    {
+      if (bytes_written)
+        *bytes_written = 0;
+      return G_IO_STATUS_NORMAL;
+    }
+
+  g_return_val_if_fail (buf != NULL, G_IO_STATUS_ERROR);
+  g_return_val_if_fail (count > 0, G_IO_STATUS_ERROR);
+
+  /* Raw write case */
+
+  if (!channel->use_buffer)
+    {
+      gint tmp_bytes;
+      
+      g_assert (!channel->write_buf || channel->write_buf->len == 0);
+      g_assert (channel->partial_write_buf[0] == '\0');
+      
+      status = channel->funcs->io_write (channel, buf, count, &tmp_bytes, error);
+
+      if (bytes_written)
+	*bytes_written = tmp_bytes;
+
+      return status;
+    }
+
+  /* General case */
+
+  if (channel->is_seekable && (( BUF_LEN (channel->read_buf) > 0)
+    || (BUF_LEN (channel->encoded_read_buf) > 0)))
+    {
+      if (channel->do_encode && BUF_LEN (channel->encoded_read_buf) > 0)
+        {
+          g_warning("Mixed reading and writing not allowed on encoded files");
+          return G_IO_STATUS_ERROR;
+        }
+      status = g_io_channel_seek_position (channel, 0, G_SEEK_CUR, error);
+      if (status != G_IO_STATUS_NORMAL)
+        {
+          if (bytes_written)
+            *bytes_written = 0;
+          return status;
+        }
+    }
+
+  if (!channel->write_buf)
+    channel->write_buf = g_string_sized_new (channel->buf_size);
+
+  while (wrote_bytes < count)
+    {
+      gsize space_in_buf;
+
+      /* If the buffer is full, try a write immediately. In
+       * the nonblocking case, this prevents the user from
+       * writing just a little bit to the buffer every time
+       * and never receiving an EAGAIN.
+       */
+
+      if (channel->write_buf->len >= channel->buf_size)
+        {
+          gsize did_write = 0, this_time;
+
+          do
+            {
+              status = channel->funcs->io_write (channel, channel->write_buf->str
+                                                 + did_write, channel->write_buf->len
+                                                 - did_write, &this_time, error);
+              did_write += this_time;
+            }
+          while (status == G_IO_STATUS_NORMAL &&
+                 did_write < MIN (channel->write_buf->len, MAX_CHAR_SIZE));
+
+          g_string_erase (channel->write_buf, 0, did_write);
+
+          if (status != G_IO_STATUS_NORMAL)
+            {
+              if (status == G_IO_STATUS_AGAIN && wrote_bytes > 0)
+                status = G_IO_STATUS_NORMAL;
+              if (bytes_written)
+                *bytes_written = wrote_bytes;
+              return status;
+            }
+        }
+
+      space_in_buf = MAX (channel->buf_size, channel->write_buf->allocated_len - 1)
+                     - channel->write_buf->len; /* 1 for NULL */
+
+      /* This is only true because g_io_channel_set_buffer_size ()
+       * ensures that channel->buf_size >= MAX_CHAR_SIZE.
+       */
+      g_assert (space_in_buf >= MAX_CHAR_SIZE);
+
+      if (!channel->encoding)
+        {
+          gssize write_this = MIN (space_in_buf, count - wrote_bytes);
+
+          g_string_append_len (channel->write_buf, buf, write_this);
+          buf += write_this;
+          wrote_bytes += write_this;
+        }
+      else
+        {
+          const gchar *from_buf;
+          gsize from_buf_len, from_buf_old_len, left_len;
+          size_t err;
+          gint errnum;
+
+          if (channel->partial_write_buf[0] != '\0')
+            {
+              g_assert (wrote_bytes == 0);
+
+              from_buf = channel->partial_write_buf;
+              from_buf_old_len = strlen (channel->partial_write_buf);
+              g_assert (from_buf_old_len > 0);
+              from_buf_len = MIN (6, from_buf_old_len + count);
+
+              memcpy (channel->partial_write_buf + from_buf_old_len, buf,
+                      from_buf_len - from_buf_old_len);
+            }
+          else
+            {
+              from_buf = buf;
+              from_buf_len = count - wrote_bytes;
+              from_buf_old_len = 0;
+            }
+
+reconvert:
+
+          if (!channel->do_encode) /* UTF-8 encoding */
+            {
+              const gchar *badchar;
+              gsize try_len = MIN (from_buf_len, space_in_buf);
+
+              /* UTF-8, just validate, emulate g_iconv */
+
+              if (!g_utf8_validate (from_buf, try_len, &badchar))
+                {
+                  gunichar try_char;
+
+                  left_len = from_buf + try_len - badchar;
+
+                  try_char = g_utf8_get_char_validated (badchar, left_len);
+
+                  switch (try_char)
+                    {
+                      case -2:
+                        g_assert (left_len < 6);
+                        if (try_len == from_buf_len)
+                          {
+                            errnum = EINVAL;
+                            err = (size_t) -1;
+                          }
+                        else
+                          {
+                            errnum = 0;
+                            err = (size_t) -1;
+                          }
+                        break;
+                      case -1:
+                        g_warning ("Invalid UTF-8 passed to g_io_channel_write_chars().");
+                        /* FIXME bail here? */
+                        errnum = EILSEQ;
+                        err = (size_t) -1;
+                        break;
+                      default:
+                        g_assert_not_reached ();
+                        err = (size_t) -1;
+                        errnum = 0; /* Don't confunse the compiler */
+                    }
+                }
+              else
+                {
+                  err = (size_t) 0;
+                  errnum = 0;
+                  left_len = 0;
+                }
+
+              g_string_append_len (channel->write_buf, from_buf,
+                                   try_len - left_len);
+              from_buf += try_len - left_len;
+            }
+          else
+            {
+               gchar *outbuf;
+
+               left_len = from_buf_len;
+               g_string_set_size (channel->write_buf, channel->write_buf->len
+                                  + space_in_buf);
+               outbuf = channel->write_buf->str + channel->write_buf->len
+                        - space_in_buf;
+               err = g_iconv (channel->write_cd, (gchar **) &from_buf, &left_len,
+                              &outbuf, &space_in_buf);
+               errnum = errno;
+               g_string_truncate (channel->write_buf, channel->write_buf->len
+                                  - space_in_buf);
+            }
+
+          if (err == (size_t) -1)
+            {
+              switch (errnum)
+        	{
+                  case EINVAL:
+                    g_assert (left_len < 6);
+
+                    if (from_buf_old_len == 0)
+                      {
+                        /* Not from partial_write_buf */
+
+                        memcpy (channel->partial_write_buf, from_buf, left_len);
+                        channel->partial_write_buf[left_len] = '\0';
+                        if (bytes_written)
+                          *bytes_written = count;
+                        return G_IO_STATUS_NORMAL;
+                      }
+
+                    /* Working in partial_write_buf */
+
+                    if (left_len == from_buf_len)
+                      {
+                        /* Didn't convert anything, must still have
+                         * less than a full character
+                         */
+
+                        g_assert (count == from_buf_len - from_buf_old_len);
+
+                        channel->partial_write_buf[from_buf_len] = '\0';
+
+                        if (bytes_written)
+                          *bytes_written = count;
+
+                        return G_IO_STATUS_NORMAL;
+                      }
+
+                    g_assert (from_buf_len - left_len >= from_buf_old_len);
+
+                    /* We converted all the old data. This is fine */
+
+                    break;
+                  case E2BIG:
+                    if (from_buf_len == left_len)
+                      {
+                        /* Nothing was written, add enough space for
+                         * at least one character.
+                         */
+                        space_in_buf += MAX_CHAR_SIZE;
+                        goto reconvert;
+                      }
+                    break;
+                  case EILSEQ:
+                    g_set_error (error, G_CONVERT_ERROR,
+                      G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
+                      _("Invalid byte sequence in conversion input"));
+                    if (from_buf_old_len > 0 && from_buf_len == left_len)
+                      g_warning ("Illegal sequence due to partial character "
+                                 "at the end of a previous write.\n");
+                    else
+                      wrote_bytes += from_buf_len - left_len - from_buf_old_len;
+                    if (bytes_written)
+                      *bytes_written = wrote_bytes;
+                    channel->partial_write_buf[0] = '\0';
+                    return G_IO_STATUS_ERROR;
+                  default:
+                    g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_FAILED,
+                      _("Error during conversion: %s"), strerror (errnum));
+                    if (from_buf_len >= left_len + from_buf_old_len)
+                      wrote_bytes += from_buf_len - left_len - from_buf_old_len;
+                    if (bytes_written)
+                      *bytes_written = wrote_bytes;
+                    channel->partial_write_buf[0] = '\0';
+                    return G_IO_STATUS_ERROR;
+                }
+            }
+
+          g_assert (from_buf_len - left_len >= from_buf_old_len);
+
+          wrote_bytes += from_buf_len - left_len - from_buf_old_len;
+
+          if (from_buf_old_len > 0)
+            {
+              /* We were working in partial_write_buf */
+
+              buf += from_buf_len - left_len - from_buf_old_len;
+              channel->partial_write_buf[0] = '\0';
+            }
+          else
+            buf = from_buf;
+        }
+    }
+
+  if (bytes_written)
+    *bytes_written = count;
+
+  return G_IO_STATUS_NORMAL;
+}
+
+/**
+ * g_io_channel_write_unichar:
+ * @channel: a #GIOChannel
+ * @thechar: a character
+ * @error: A location to return an error of type #GConvertError
+ *         or #GIOChannelError
+ *
+ * This function cannot be called on a channel with %NULL encoding.
+ *
+ * Return value: a #GIOStatus
+ **/
+GIOStatus
+g_io_channel_write_unichar    (GIOChannel   *channel,
+			       gunichar      thechar,
+			       GError      **error)
+{
+  GIOStatus status;
+  gchar static_buf[6];
+  gsize char_len, wrote_len;
+
+  g_return_val_if_fail (channel != NULL, G_IO_STATUS_ERROR);
+  g_return_val_if_fail (channel->encoding != NULL, G_IO_STATUS_ERROR);
+  g_return_val_if_fail ((error == NULL) || (*error == NULL),
+			G_IO_STATUS_ERROR);
+  g_return_val_if_fail (channel->is_writeable, G_IO_STATUS_ERROR);
+
+  char_len = g_unichar_to_utf8 (thechar, static_buf);
+
+  if (channel->partial_write_buf[0] != '\0')
+    {
+      g_warning ("Partial charater written before writing unichar.\n");
+      channel->partial_write_buf[0] = '\0';
+    }
+
+  status = g_io_channel_write_chars (channel, static_buf,
+                                     char_len, &wrote_len, error);
+
+  /* We validate UTF-8, so we can't get a partial write */
+
+  g_assert (wrote_len == char_len || status != G_IO_STATUS_NORMAL);
+
+  return status;
+}
+
+/**
+ * g_io_channel_error_quark:
+ *
+ * Return value: The quark used as %G_IO_CHANNEL_ERROR
+ **/
+GQuark
+g_io_channel_error_quark (void)
+{
+  static GQuark q = 0;
+  if (q == 0)
+    q = g_quark_from_static_string ("g-io-channel-error-quark");
+
+  return q;
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/giochannel.h b/graf2d/win32gdk/gdk/src/glib/giochannel.h
index cf9f11526c2..1ff325b5b3a 100644
--- a/graf2d/win32gdk/gdk/src/glib/giochannel.h
+++ b/graf2d/win32gdk/gdk/src/glib/giochannel.h
@@ -27,8 +27,9 @@
 #ifndef __G_IOCHANNEL_H__
 #define __G_IOCHANNEL_H__
 
-#include <gmain.h>
-#include <g_types.h>
+#include <glib/gconvert.h>
+#include <glib/gmain.h>
+#include <glib/gstring.h>
 
 G_BEGIN_DECLS
 
@@ -37,6 +38,7 @@ G_BEGIN_DECLS
 
 typedef struct _GIOChannel	GIOChannel;
 typedef struct _GIOFuncs        GIOFuncs;
+
 typedef enum
 {
   G_IO_ERROR_NONE,
@@ -44,12 +46,39 @@ typedef enum
   G_IO_ERROR_INVAL,
   G_IO_ERROR_UNKNOWN
 } GIOError;
+
+#define G_IO_CHANNEL_ERROR g_io_channel_error_quark()
+
+typedef enum
+{
+  /* Derived from errno */
+  G_IO_CHANNEL_ERROR_FBIG,
+  G_IO_CHANNEL_ERROR_INVAL,
+  G_IO_CHANNEL_ERROR_IO,
+  G_IO_CHANNEL_ERROR_ISDIR,
+  G_IO_CHANNEL_ERROR_NOSPC,
+  G_IO_CHANNEL_ERROR_NXIO,
+  G_IO_CHANNEL_ERROR_OVERFLOW,
+  G_IO_CHANNEL_ERROR_PIPE,
+  /* Other */
+  G_IO_CHANNEL_ERROR_FAILED
+} GIOChannelError;
+
+typedef enum
+{
+  G_IO_STATUS_ERROR,
+  G_IO_STATUS_NORMAL,
+  G_IO_STATUS_EOF,
+  G_IO_STATUS_AGAIN
+} GIOStatus;
+
 typedef enum
 {
   G_SEEK_CUR,
   G_SEEK_SET,
   G_SEEK_END
 } GSeekType;
+
 typedef enum
 {
   G_IO_IN	GLIB_SYSDEF_POLLIN,
@@ -60,11 +89,44 @@ typedef enum
   G_IO_NVAL	GLIB_SYSDEF_POLLNVAL
 } GIOCondition;
 
+typedef enum
+{
+  G_IO_FLAG_APPEND = 1 << 0,
+  G_IO_FLAG_NONBLOCK = 1 << 1,
+  G_IO_FLAG_IS_READABLE = 1 << 2,	/* Read only flag */
+  G_IO_FLAG_IS_WRITEABLE = 1 << 3,	/* Read only flag */
+  G_IO_FLAG_IS_SEEKABLE = 1 << 4,	/* Read only flag */
+  G_IO_FLAG_MASK = (1 << 5) - 1,
+  G_IO_FLAG_GET_MASK = G_IO_FLAG_MASK,
+  G_IO_FLAG_SET_MASK = G_IO_FLAG_APPEND | G_IO_FLAG_NONBLOCK
+} GIOFlags;
+
 struct _GIOChannel
 {
-  guint channel_flags;
+  /*< private >*/
   guint ref_count;
   GIOFuncs *funcs;
+
+  gchar *encoding;
+  GIConv read_cd;
+  GIConv write_cd;
+  gchar *line_term;		/* String which indicates the end of a line of text */
+  guint line_term_len;		/* So we can have null in the line term */
+
+  gsize buf_size;
+  GString *read_buf;		/* Raw data from the channel */
+  GString *encoded_read_buf;    /* Channel data converted to UTF-8 */
+  GString *write_buf;		/* Data ready to be written to the file */
+  gchar partial_write_buf[6];	/* UTF-8 partial characters, null terminated */
+
+  /* Group the flags together, immediately after partial_write_buf, to save memory */
+
+  guint use_buffer     : 1;	/* The encoding uses the buffers */
+  guint do_encode      : 1;	/* The encoding uses the GIConv coverters */
+  guint close_on_unref : 1;	/* Close the channel on final unref */
+  guint is_readable    : 1;	/* Cached GIOFlag */
+  guint is_writeable   : 1;	/* ditto */
+  guint is_seekable    : 1;	/* ditto */
 };
 
 typedef gboolean (*GIOFunc) (GIOChannel   *source,
@@ -72,66 +134,163 @@ typedef gboolean (*GIOFunc) (GIOChannel   *source,
 			     gpointer      data);
 struct _GIOFuncs
 {
-  GIOError  (*io_read)         (GIOChannel   *channel, 
-				gchar        *buf, 
-				guint         count,
-				guint        *bytes_read);
-  GIOError  (*io_write)        (GIOChannel   *channel, 
-				gchar        *buf, 
-				guint         count,
-				guint        *bytes_written);
-  GIOError  (*io_seek)         (GIOChannel   *channel, 
-				gint          offset, 
-				GSeekType     type);
-  void      (*io_close)        (GIOChannel   *channel);
-  GSource * (*io_create_watch) (GIOChannel   *channel,
-				GIOCondition  condition);
-  void      (*io_free)         (GIOChannel   *channel);
+  GIOStatus (*io_read)           (GIOChannel   *channel, 
+			          gchar        *buf, 
+				  gsize         count,
+				  gsize        *bytes_read,
+				  GError      **err);
+  GIOStatus (*io_write)          (GIOChannel   *channel, 
+				  const gchar  *buf, 
+				  gsize         count,
+				  gsize        *bytes_written,
+				  GError      **err);
+  GIOStatus (*io_seek)           (GIOChannel   *channel, 
+				  glong         offset, 
+				  GSeekType     type,
+				  GError      **err);
+  GIOStatus  (*io_close)         (GIOChannel   *channel,
+				  GError      **err);
+  GSource*   (*io_create_watch)  (GIOChannel   *channel,
+				  GIOCondition  condition);
+  void       (*io_free)          (GIOChannel   *channel);
+  GIOStatus  (*io_set_flags)     (GIOChannel   *channel,
+                                  GIOFlags      flags,
+				  GError      **err);
+  GIOFlags   (*io_get_flags)     (GIOChannel   *channel);
 };
 
 void        g_io_channel_init   (GIOChannel    *channel);
 void        g_io_channel_ref    (GIOChannel    *channel);
 void        g_io_channel_unref  (GIOChannel    *channel);
+
+#ifndef G_DISABLE_DEPRECATED
 GIOError    g_io_channel_read   (GIOChannel    *channel, 
 			         gchar         *buf, 
-			         guint          count,
-			         guint         *bytes_read);
+			         gsize          count,
+			         gsize         *bytes_read);
 GIOError  g_io_channel_write    (GIOChannel    *channel, 
-			         gchar         *buf, 
-			         guint          count,
-			         guint         *bytes_written);
+			         const gchar   *buf, 
+			         gsize          count,
+			         gsize         *bytes_written);
 GIOError  g_io_channel_seek     (GIOChannel    *channel,
-			         gint           offset, 
+			         glong          offset, 
 			         GSeekType      type);
 void      g_io_channel_close    (GIOChannel    *channel);
-guint     g_io_add_watch_full   (GIOChannel    *channel,
-			         gint           priority,
-			         GIOCondition   condition,
-			         GIOFunc        func,
-			         gpointer       user_data,
-			         GDestroyNotify notify);
-GSource *g_io_create_watch      (GIOChannel   *channel,
-			         GIOCondition  condition);
-guint    g_io_add_watch         (GIOChannel    *channel,
-			         GIOCondition   condition,
-			         GIOFunc        func,
-			         gpointer       user_data);
+#endif /* G_DISABLE_DEPRECATED */
+
+GIOStatus g_io_channel_shutdown (GIOChannel      *channel,
+				 gboolean         flush,
+				 GError         **err);
+guint     g_io_add_watch_full   (GIOChannel      *channel,
+				 gint             priority,
+				 GIOCondition     condition,
+				 GIOFunc          func,
+				 gpointer         user_data,
+				 GDestroyNotify   notify);
+GSource * g_io_create_watch     (GIOChannel      *channel,
+				 GIOCondition     condition);
+guint     g_io_add_watch        (GIOChannel      *channel,
+				 GIOCondition     condition,
+				 GIOFunc          func,
+				 gpointer         user_data);
+
+/* character encoding conversion involved functions.
+ */
+
+void                  g_io_channel_set_buffer_size      (GIOChannel   *channel,
+							 gsize         size);
+gsize                 g_io_channel_get_buffer_size      (GIOChannel   *channel);
+GIOCondition          g_io_channel_get_buffer_condition (GIOChannel   *channel);
+GIOStatus             g_io_channel_set_flags            (GIOChannel   *channel,
+							 GIOFlags      flags,
+							 GError      **error);
+GIOFlags              g_io_channel_get_flags            (GIOChannel   *channel);
+void                  g_io_channel_set_line_term        (GIOChannel   *channel,
+							 const gchar  *line_term,
+							 gint          length);
+G_CONST_RETURN gchar* g_io_channel_get_line_term        (GIOChannel   *channel,
+							 gint         *length);
+void		      g_io_channel_set_buffered		(GIOChannel   *channel,
+							 gboolean      buffered);
+gboolean	      g_io_channel_get_buffered		(GIOChannel   *channel);
+GIOStatus             g_io_channel_set_encoding         (GIOChannel   *channel,
+							 const gchar  *encoding,
+							 GError      **error);
+G_CONST_RETURN gchar* g_io_channel_get_encoding         (GIOChannel   *channel);
+void                  g_io_channel_set_close_on_unref	(GIOChannel   *channel,
+							 gboolean      do_close);
+gboolean              g_io_channel_get_close_on_unref	(GIOChannel   *channel);
+
+
+GIOStatus   g_io_channel_flush            (GIOChannel   *channel,
+					   GError      **error);
+GIOStatus   g_io_channel_read_line        (GIOChannel   *channel,
+					   gchar       **str_return,
+					   gsize        *length,
+					   gsize        *terminator_pos,
+					   GError      **error);
+GIOStatus   g_io_channel_read_line_string (GIOChannel   *channel,
+					   GString      *buffer,
+					   gsize        *terminator_pos,
+					   GError      **error);
+GIOStatus   g_io_channel_read_to_end      (GIOChannel   *channel,
+					   gchar       **str_return,
+					   gsize        *length,
+					   GError      **error);
+GIOStatus   g_io_channel_read_chars       (GIOChannel   *channel,
+					   gchar        *buf,
+					   gsize         count,
+					   gsize        *bytes_read,
+					   GError      **error);
+GIOStatus   g_io_channel_read_unichar     (GIOChannel   *channel,
+					   gunichar     *thechar,
+					   GError      **error);
+GIOStatus   g_io_channel_write_chars      (GIOChannel   *channel,
+					   const gchar  *buf,
+					   gssize        count,
+					   gsize        *bytes_written,
+					   GError      **error);
+GIOStatus   g_io_channel_write_unichar    (GIOChannel   *channel,
+					   gunichar      thechar,
+					   GError      **error);
+GIOStatus   g_io_channel_seek_position    (GIOChannel   *channel,
+					   glong         offset,
+					   GSeekType     type,
+					   GError      **error);
+GIOChannel* g_io_channel_new_file         (const gchar  *filename,
+					   const gchar  *mode,
+					   GError      **error);
+
+/* Error handling */
+
+GQuark          g_io_channel_error_quark      (void);
+GIOChannelError g_io_channel_error_from_errno (gint en);
 
 /* On Unix, IO channels created with this function for any file
  * descriptor or socket.
  *
- * On Win32, use this only for files opened with the MSVCRT (the
- * Microsoft run-time C library) _open() or _pipe, including file
- * descriptors 0, 1 and 2 (corresponding to stdin, stdout and stderr).
+ * On Win32, this can be used either for files opened with the MSVCRT
+ * (the Microsoft run-time C library) _open() or _pipe, including file
+ * descriptors 0, 1 and 2 (corresponding to stdin, stdout and stderr),
+ * or for Winsock SOCKETs. If the parameter is a legal file
+ * descriptor, it is assumed to be such, otherwise it should be a
+ * SOCKET. This relies on SOCKETs and file descriptors not
+ * overlapping. If you want to be certain, call either
+ * g_io_channel_win32_new_fd() or g_io_channel_win32_new_socket()
+ * instead as appropriate.
  *
  * The term file descriptor as used in the context of Win32 refers to
  * the emulated Unix-like file descriptors MSVCRT provides. The native
  * corresponding concept is file HANDLE. There isn't as of yet a way to
- * get GIOChannels for file HANDLEs.
+ * get GIOChannels for Win32 file HANDLEs.
  */
 GIOChannel* g_io_channel_unix_new    (int         fd);
 gint        g_io_channel_unix_get_fd (GIOChannel *channel);
 
+
+/* Hook for GClosure / GSource integration. Don't touch */
+GLIB_VAR GSourceFuncs g_io_watch_funcs;
+
 #ifdef G_OS_WIN32
 
 #define G_WIN32_MSG_HANDLE 19981206
@@ -139,7 +298,8 @@ gint        g_io_channel_unix_get_fd (GIOChannel *channel);
 /* Use this to get a GPollFD from a GIOChannel, so that you can call
  * g_io_channel_win32_poll(). After calling this you should only use
  * g_io_channel_read() to read from the GIOChannel, i.e. never read()
- * or recv() from the underlying file descriptor or SOCKET.
+ * from the underlying file descriptor. For SOCKETs, it is possible to call
+ * recv().
  */
 void        g_io_channel_win32_make_pollfd (GIOChannel   *channel,
 					    GIOCondition  condition,
@@ -147,7 +307,6 @@ void        g_io_channel_win32_make_pollfd (GIOChannel   *channel,
 
 /* This can be used to wait a until at least one of the channels is readable.
  * On Unix you would do a select() on the file descriptors of the channels.
- * This should probably be available for all platforms?
  */
 gint        g_io_channel_win32_poll   (GPollFD    *fds,
 				       gint        n_fds,
@@ -160,25 +319,29 @@ void        g_main_poll_win32_msg_add (gint        priority,
 				       GPollFD    *fd,
 				       guint       hwnd);
 
-/* An IO channel for Windows messages for window handle hwnd. */
+/* Create an IO channel for Windows messages for window handle hwnd. */
 GIOChannel *g_io_channel_win32_new_messages (guint hwnd);
 
-/* An IO channel for C runtime (emulated Unix-like) file
- * descriptors. Identical to g_io_channel_unix_new above.
- * After calling g_io_add_watch() on a IO channel returned
- * by this function, you shouldn't call read() on the file
- * descriptor.
+/* Create an IO channel for C runtime (emulated Unix-like) file
+ * descriptors. After calling g_io_add_watch() on a IO channel
+ * returned by this function, you shouldn't call read() on the file
+ * descriptor. This is because adding polling for a file descriptor is
+ * implemented on Win32 by starting a thread that sits blocked in a
+ * read() from the file descriptor most of the time. All reads from
+ * the file descriptor should be done by this internal GLib
+ * thread. Your code should call only g_io_channel_read().
  */
-GIOChannel* g_io_channel_win32_new_fd (int         fd);
+GIOChannel* g_io_channel_win32_new_fd (gint         fd);
 
 /* Get the C runtime file descriptor of a channel. */
 gint        g_io_channel_win32_get_fd (GIOChannel *channel);
 
-/* An IO channel for a SOCK_STREAM winsock socket. The parameter
- * should be a SOCKET. After calling g_io_add_watch() on a IO channel
- * returned by this function, you shouldn't call recv() on the SOCKET.
+/* Create an IO channel for a winsock socket. The parameter should be
+ * a SOCKET. Contrary to IO channels for file descriptors (on *Win32),
+ * you can use normal recv() or recvfrom() on sockets even if GLib
+ * is polling them.
  */
-GIOChannel *g_io_channel_win32_new_stream_socket (int socket);
+GIOChannel *g_io_channel_win32_new_socket (gint socket);
 
 #endif
 
diff --git a/graf2d/win32gdk/gdk/src/glib/giounix.c b/graf2d/win32gdk/gdk/src/glib/giounix.c
new file mode 100644
index 00000000000..c2db911a874
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/giounix.c
@@ -0,0 +1,583 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * giounix.c: IO Channels using unix file descriptors
+ * Copyright 1998 Owen Taylor
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#include "glib.h"
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <stdio.h>
+#include <unistd.h>
+#include <errno.h>
+#include <string.h>
+#include <fcntl.h>
+
+/*
+ * Unix IO Channels
+ */
+
+typedef struct _GIOUnixChannel GIOUnixChannel;
+typedef struct _GIOUnixWatch GIOUnixWatch;
+
+struct _GIOUnixChannel
+{
+  GIOChannel channel;
+  gint fd;
+};
+
+struct _GIOUnixWatch
+{
+  GSource       source;
+  GPollFD       pollfd;
+  GIOChannel   *channel;
+  GIOCondition  condition;
+  GIOFunc       callback;
+};
+
+
+static GIOStatus	g_io_unix_read		(GIOChannel   *channel,
+						 gchar        *buf,
+						 gsize         count,
+						 gsize        *bytes_read,
+						 GError      **err);
+static GIOStatus	g_io_unix_write		(GIOChannel   *channel,
+						 const gchar  *buf,
+						 gsize         count,
+						 gsize        *bytes_written,
+						 GError      **err);
+static GIOStatus	g_io_unix_seek		(GIOChannel   *channel,
+						 glong         offset,
+						 GSeekType     type,
+						 GError      **err);
+static GIOStatus	g_io_unix_close		(GIOChannel   *channel,
+						 GError      **err);
+static void		g_io_unix_free		(GIOChannel   *channel);
+static GSource*		g_io_unix_create_watch	(GIOChannel   *channel,
+						 GIOCondition  condition);
+static GIOStatus	g_io_unix_set_flags	(GIOChannel   *channel,
+                       				 GIOFlags      flags,
+						 GError      **err);
+static GIOFlags 	g_io_unix_get_flags	(GIOChannel   *channel);
+
+static gboolean g_io_unix_prepare  (GSource     *source,
+				    gint        *timeout);
+static gboolean g_io_unix_check    (GSource     *source);
+static gboolean g_io_unix_dispatch (GSource     *source,
+				    GSourceFunc  callback,
+				    gpointer     user_data);
+static void     g_io_unix_finalize (GSource     *source);
+
+GSourceFuncs g_io_watch_funcs = {
+  g_io_unix_prepare,
+  g_io_unix_check,
+  g_io_unix_dispatch,
+  g_io_unix_finalize
+};
+
+static GIOFuncs unix_channel_funcs = {
+  g_io_unix_read,
+  g_io_unix_write,
+  g_io_unix_seek,
+  g_io_unix_close,
+  g_io_unix_create_watch,
+  g_io_unix_free,
+  g_io_unix_set_flags,
+  g_io_unix_get_flags,
+};
+
+static gboolean 
+g_io_unix_prepare (GSource  *source,
+		   gint     *timeout)
+{
+  GIOUnixWatch *watch = (GIOUnixWatch *)source;
+  GIOCondition buffer_condition = g_io_channel_get_buffer_condition (watch->channel);
+
+  *timeout = -1;
+
+  /* Only return TRUE here if _all_ bits in watch->condition will be set
+   */
+  return ((watch->condition & buffer_condition) == watch->condition);
+}
+
+static gboolean 
+g_io_unix_check (GSource  *source)
+{
+  GIOUnixWatch *watch = (GIOUnixWatch *)source;
+  GIOCondition buffer_condition = g_io_channel_get_buffer_condition (watch->channel);
+  GIOCondition poll_condition = watch->pollfd.revents;
+
+  return ((poll_condition | buffer_condition) & watch->condition);
+}
+
+static gboolean
+g_io_unix_dispatch (GSource     *source,
+		    GSourceFunc  callback,
+		    gpointer     user_data)
+
+{
+  GIOFunc func = (GIOFunc)callback;
+  GIOUnixWatch *watch = (GIOUnixWatch *)source;
+  GIOCondition buffer_condition = g_io_channel_get_buffer_condition (watch->channel);
+
+  if (!func)
+    {
+      g_warning ("IO watch dispatched without callback\n"
+		 "You must call g_source_connect().");
+      return FALSE;
+    }
+  
+  return (*func) (watch->channel,
+		  (watch->pollfd.revents | buffer_condition) & watch->condition,
+		  user_data);
+}
+
+static void 
+g_io_unix_finalize (GSource *source)
+{
+  GIOUnixWatch *watch = (GIOUnixWatch *)source;
+
+  g_io_channel_unref (watch->channel);
+}
+
+static GIOStatus
+g_io_unix_read (GIOChannel *channel, 
+		gchar      *buf, 
+		gsize       count,
+		gsize      *bytes_read,
+		GError    **err)
+{
+  GIOUnixChannel *unix_channel = (GIOUnixChannel *)channel;
+  gssize result;
+
+  if (count > SSIZE_MAX) /* At least according to the Debian manpage for read */
+    count = SSIZE_MAX;
+
+ retry:
+  result = read (unix_channel->fd, buf, count);
+
+  if (result < 0)
+    {
+      *bytes_read = 0;
+
+      switch (errno)
+        {
+#ifdef EINTR
+          case EINTR:
+            goto retry;
+#endif
+#ifdef EAGAIN
+          case EAGAIN:
+            return G_IO_STATUS_AGAIN;
+#endif
+          default:
+            g_set_error (err, G_IO_CHANNEL_ERROR,
+                         g_io_channel_error_from_errno (errno),
+                         strerror (errno));
+            return G_IO_STATUS_ERROR;
+        }
+    }
+
+  *bytes_read = result;
+
+  return (result > 0) ? G_IO_STATUS_NORMAL : G_IO_STATUS_EOF;
+}
+
+static GIOStatus
+g_io_unix_write (GIOChannel  *channel, 
+		 const gchar *buf, 
+		 gsize       count,
+		 gsize      *bytes_written,
+		 GError    **err)
+{
+  GIOUnixChannel *unix_channel = (GIOUnixChannel *)channel;
+  gssize result;
+
+ retry:
+  result = write (unix_channel->fd, buf, count);
+
+  if (result < 0)
+    {
+      *bytes_written = 0;
+
+      switch (errno)
+        {
+#ifdef EINTR
+          case EINTR:
+            goto retry;
+#endif
+#ifdef EAGAIN
+          case EAGAIN:
+            return G_IO_STATUS_AGAIN;
+#endif
+          default:
+            g_set_error (err, G_IO_CHANNEL_ERROR,
+                         g_io_channel_error_from_errno (errno),
+                         strerror (errno));
+            return G_IO_STATUS_ERROR;
+        }
+    }
+
+  *bytes_written = result;
+
+  return G_IO_STATUS_NORMAL;
+}
+
+static GIOStatus
+g_io_unix_seek (GIOChannel *channel,
+		glong       offset, 
+		GSeekType   type,
+                GError    **err)
+{
+  GIOUnixChannel *unix_channel = (GIOUnixChannel *)channel;
+  int whence;
+  off_t result;
+
+  switch (type)
+    {
+    case G_SEEK_SET:
+      whence = SEEK_SET;
+      break;
+    case G_SEEK_CUR:
+      whence = SEEK_CUR;
+      break;
+    case G_SEEK_END:
+      whence = SEEK_END;
+      break;
+    default:
+      whence = -1; /* Shut the compiler up */
+      g_assert_not_reached ();
+    }
+
+  result = lseek (unix_channel->fd, offset, whence);
+
+  if (result < 0)
+    {
+      g_set_error (err, G_IO_CHANNEL_ERROR,
+		   g_io_channel_error_from_errno (errno),
+		   strerror (errno));
+      return G_IO_STATUS_ERROR;
+    }
+
+  return G_IO_STATUS_NORMAL;
+}
+
+
+static GIOStatus
+g_io_unix_close (GIOChannel *channel,
+		 GError    **err)
+{
+  GIOUnixChannel *unix_channel = (GIOUnixChannel *)channel;
+
+  if (close (unix_channel->fd) < 0)
+    {
+      g_set_error (err, G_IO_CHANNEL_ERROR,
+		   g_io_channel_error_from_errno (errno),
+		   strerror (errno));
+      return G_IO_STATUS_ERROR;
+    }
+
+  return G_IO_STATUS_NORMAL;
+}
+
+static void 
+g_io_unix_free (GIOChannel *channel)
+{
+  GIOUnixChannel *unix_channel = (GIOUnixChannel *)channel;
+
+  g_free (unix_channel);
+}
+
+static GSource *
+g_io_unix_create_watch (GIOChannel   *channel,
+			GIOCondition  condition)
+{
+  GIOUnixChannel *unix_channel = (GIOUnixChannel *)channel;
+  GSource *source;
+  GIOUnixWatch *watch;
+
+
+  source = g_source_new (&g_io_watch_funcs, sizeof (GIOUnixWatch));
+  watch = (GIOUnixWatch *)source;
+  
+  watch->channel = channel;
+  g_io_channel_ref (channel);
+  
+  watch->condition = condition;
+
+  watch->pollfd.fd = unix_channel->fd;
+  watch->pollfd.events = condition;
+
+  g_source_add_poll (source, &watch->pollfd);
+
+  return source;
+}
+
+static GIOStatus
+g_io_unix_set_flags (GIOChannel *channel,
+                     GIOFlags    flags,
+                     GError    **err)
+{
+  glong fcntl_flags;
+  GIOUnixChannel *unix_channel = (GIOUnixChannel *) channel;
+
+  fcntl_flags = 0;
+
+  if (flags & G_IO_FLAG_APPEND)
+    fcntl_flags |= O_APPEND;
+  if (flags & G_IO_FLAG_NONBLOCK)
+#ifdef O_NONBLOCK
+    fcntl_flags |= O_NONBLOCK;
+#else
+    fcntl_flags |= O_NDELAY;
+#endif
+
+  if (fcntl (unix_channel->fd, F_SETFL, fcntl_flags) == -1)
+    {
+      g_set_error (err, G_IO_CHANNEL_ERROR,
+		   g_io_channel_error_from_errno (errno),
+		   g_strerror (errno));
+      return G_IO_STATUS_ERROR;
+    }
+
+  return G_IO_STATUS_NORMAL;
+}
+
+static GIOFlags
+g_io_unix_get_flags (GIOChannel *channel)
+{
+  GIOFlags flags = 0;
+  glong fcntl_flags;
+  GIOUnixChannel *unix_channel = (GIOUnixChannel *) channel;
+
+  fcntl_flags = fcntl (unix_channel->fd, F_GETFL);
+
+  if (fcntl_flags == -1)
+    {
+      g_warning (G_STRLOC "Error while getting flags for FD: %s (%d)\n",
+		 g_strerror (errno), errno);
+      return 0;
+    }
+
+  if (fcntl_flags & O_APPEND)
+    flags |= G_IO_FLAG_APPEND;
+#ifdef O_NONBLOCK
+  if (fcntl_flags & O_NONBLOCK)
+#else
+  if (fcntl_flags & O_NDELAY)
+#endif
+    flags |= G_IO_FLAG_NONBLOCK;
+
+  switch (fcntl_flags & (O_RDONLY | O_WRONLY | O_RDWR))
+    {
+      case O_RDONLY:
+        channel->is_readable = TRUE;
+        channel->is_writeable = FALSE;
+        break;
+      case O_WRONLY:
+        channel->is_readable = FALSE;
+        channel->is_writeable = TRUE;
+        break;
+      case O_RDWR:
+        channel->is_readable = TRUE;
+        channel->is_writeable = TRUE;
+        break;
+      default:
+        g_assert_not_reached ();
+    }
+
+  return flags;
+}
+
+GIOChannel *
+g_io_channel_new_file (const gchar *filename,
+                       const gchar *mode,
+                       GError     **error)
+{
+  int fid, flags;
+  mode_t create_mode;
+  GIOChannel *channel;
+  enum { /* Cheesy hack */
+    MODE_R = 1 << 0,
+    MODE_W = 1 << 1,
+    MODE_A = 1 << 2,
+    MODE_PLUS = 1 << 3,
+  } mode_num;
+  struct stat buffer;
+
+  g_return_val_if_fail (filename != NULL, NULL);
+  g_return_val_if_fail (mode != NULL, NULL);
+  g_return_val_if_fail ((error == NULL) || (*error == NULL), NULL);
+
+  switch (mode[0])
+    {
+      case 'r':
+        mode_num = MODE_R;
+        break;
+      case 'w':
+        mode_num = MODE_W;
+        break;
+      case 'a':
+        mode_num = MODE_A;
+        break;
+      default:
+        g_warning ("Invalid GIOFileMode %s.\n", mode);
+        return NULL;
+    }
+
+  switch (mode[1])
+    {
+      case '\0':
+        break;
+      case '+':
+        if (mode[2] == '\0')
+          {
+            mode_num |= MODE_PLUS;
+            break;
+          }
+        /* Fall through */
+      default:
+        g_warning ("Invalid GIOFileMode %s.\n", mode);
+        return NULL;
+    }
+
+  switch (mode_num)
+    {
+      case MODE_R:
+        flags = O_RDONLY;
+        break;
+      case MODE_W:
+        flags = O_WRONLY | O_TRUNC | O_CREAT;
+        break;
+      case MODE_A:
+        flags = O_WRONLY | O_APPEND | O_CREAT;
+        break;
+      case MODE_R | MODE_PLUS:
+        flags = O_RDWR;
+        break;
+      case MODE_W | MODE_PLUS:
+        flags = O_RDWR | O_TRUNC | O_CREAT;
+        break;
+      case MODE_A | MODE_PLUS:
+        flags = O_RDWR | O_APPEND | O_CREAT;
+        break;
+      default:
+        g_assert_not_reached ();
+        flags = 0;
+    }
+
+  create_mode = S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH;
+  fid = open (filename, flags, create_mode);
+  if (fid == -1)
+    {
+      g_set_error (error, G_FILE_ERROR,
+                   g_file_error_from_errno (errno),
+                   strerror (errno));
+      return (GIOChannel *)NULL;
+    }
+
+  if (fstat (fid, &buffer) == -1) /* In case someone opens a FIFO */
+    {
+      close (fid);
+      g_set_error (error, G_FILE_ERROR,
+                   g_file_error_from_errno (errno),
+                   strerror (errno));
+      return (GIOChannel *)NULL;
+    }
+
+  channel = (GIOChannel *) g_new (GIOUnixChannel, 1);
+
+  channel->is_seekable = S_ISREG (buffer.st_mode) || S_ISCHR (buffer.st_mode)
+                         || S_ISBLK (buffer.st_mode);
+
+  switch (mode_num)
+    {
+      case MODE_R:
+        channel->is_readable = TRUE;
+        channel->is_writeable = FALSE;
+        break;
+      case MODE_W:
+      case MODE_A:
+        channel->is_readable = FALSE;
+        channel->is_writeable = TRUE;
+        break;
+      case MODE_R | MODE_PLUS:
+      case MODE_W | MODE_PLUS:
+      case MODE_A | MODE_PLUS:
+        channel->is_readable = TRUE;
+        channel->is_writeable = TRUE;
+        break;
+      default:
+        g_assert_not_reached ();
+    }
+
+  g_io_channel_init (channel);
+  channel->close_on_unref = TRUE; /* must be after g_io_channel_init () */
+  channel->funcs = &unix_channel_funcs;
+
+  ((GIOUnixChannel *) channel)->fd = fid;
+  return channel;
+}
+
+GIOChannel *
+g_io_channel_unix_new (gint fd)
+{
+  struct stat buffer;
+  GIOUnixChannel *unix_channel = g_new (GIOUnixChannel, 1);
+  GIOChannel *channel = (GIOChannel *)unix_channel;
+
+  g_io_channel_init (channel);
+  channel->funcs = &unix_channel_funcs;
+
+  /* I'm not sure if fstat on a non-file (e.g., socket) works
+   * it should be safe to say if it fails, the fd isn't seekable.
+   */
+  /* Newer UNIX versions support S_ISSOCK(), fstat() will probably
+   * succeed in most cases.
+   */
+  if (fstat (unix_channel->fd, &buffer) == 0)
+    channel->is_seekable = S_ISREG (buffer.st_mode) || S_ISCHR (buffer.st_mode)
+                           || S_ISBLK (buffer.st_mode);
+  else /* Assume not seekable */
+    channel->is_seekable = FALSE;
+
+  unix_channel->fd = fd;
+
+  g_io_unix_get_flags (channel); /* Sets is_readable, is_writeable */
+
+  return channel;
+}
+
+gint
+g_io_channel_unix_get_fd (GIOChannel *channel)
+{
+  GIOUnixChannel *unix_channel = (GIOUnixChannel *)channel;
+  return unix_channel->fd;
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/giowin32.c b/graf2d/win32gdk/gdk/src/glib/giowin32.c
new file mode 100644
index 00000000000..425e710d43b
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/giowin32.c
@@ -0,0 +1,1463 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * giowin32.c: IO Channels for Win32.
+ * Copyright 1998 Owen Taylor and Tor Lillqvist
+ * Copyright 1999-2000 Tor Lillqvist and Craig Setera
+ * Copyright 2001 Andrew Lanoix
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/.
+ */
+
+/* Define this to get (very) verbose logging of all channels */
+/* #define G_IO_WIN32_DEBUG */
+
+#include "glib.h"
+
+#include <stdlib.h>
+#include <windows.h>
+#include <winsock.h>          /* Not everybody has winsock2 */
+#include <fcntl.h>
+#include <io.h>
+#include <process.h>
+#include <errno.h>
+#include <sys/stat.h>
+
+#include "glibintl.h"
+
+typedef struct _GIOWin32Channel GIOWin32Channel;
+typedef struct _GIOWin32Watch GIOWin32Watch;
+
+#define BUFFER_SIZE 4096
+
+typedef enum {
+  G_IO_WIN32_WINDOWS_MESSAGES,	/* Windows messages */
+  G_IO_WIN32_FILE_DESC,		/* Unix-like file descriptors from
+				 * _open() or _pipe(). Read with read().
+				 * Have to create separate thread to read.
+				 */
+  G_IO_WIN32_SOCKET		/* Sockets. A separate thread is blocked
+				 * in select() most of the time.
+				 */
+} GIOWin32ChannelType;
+
+struct _GIOWin32Channel {
+  GIOChannel channel;
+  gint fd;			/* Either a Unix-like file handle as provided
+				 * by the Microsoft C runtime, or a SOCKET
+				 * as provided by WinSock.
+				 */
+  GIOWin32ChannelType type;
+  
+  gboolean debug;
+
+  CRITICAL_SECTION mutex;
+
+  /* This is used by G_IO_WIN32_WINDOWS_MESSAGES channels */
+  HWND hwnd;			/* handle of window, or NULL */
+  
+  /* Following fields are used by both fd and socket channels. */
+  gboolean running;		/* Is reader thread running. FALSE if
+				 * EOF has been reached.
+				 */
+  gboolean needs_close;		/* If the channel has been closed while
+				 * the reader thread was still running.
+				 */
+  guint thread_id;		/* If non-NULL has a reader thread, or has
+				 * had.*/
+  HANDLE thread_handle;
+  HANDLE data_avail_event;
+
+  gushort revents;
+
+  /* Following fields used by fd channels for input */
+  
+  /* Data is kept in a circular buffer. To be able to distinguish between
+   * empty and full buffer, we cannot fill it completely, but have to
+   * leave a one character gap.
+   *
+   * Data available is between indexes rdp and wrp-1 (modulo BUFFER_SIZE).
+   *
+   * Empty:    wrp == rdp
+   * Full:     (wrp + 1) % BUFFER_SIZE == rdp
+   * Partial:  otherwise
+   */
+  guchar *buffer;		/* (Circular) buffer */
+  gint wrp, rdp;		/* Buffer indices for writing and reading */
+  HANDLE space_avail_event;
+
+  /* Following fields used by socket channels */
+  GSList *watches;
+  HANDLE data_avail_noticed_event;
+};
+
+#define LOCK(mutex) EnterCriticalSection (&mutex)
+#define UNLOCK(mutex) LeaveCriticalSection (&mutex)
+
+struct _GIOWin32Watch {
+  GSource       source;
+  GPollFD       pollfd;
+  GIOChannel   *channel;
+  GIOCondition  condition;
+  GIOFunc       callback;
+};
+
+static void
+g_io_channel_win32_init (GIOWin32Channel *channel)
+{
+#ifdef G_IO_WIN32_DEBUG
+  channel->debug = TRUE;
+#else
+  if (getenv ("G_IO_WIN32_DEBUG") != NULL)
+    channel->debug = TRUE;
+  else
+    channel->debug = FALSE;
+#endif
+  channel->buffer = NULL;
+  channel->running = FALSE;
+  channel->needs_close = FALSE;
+  channel->thread_id = 0;
+  channel->data_avail_event = NULL;
+  channel->revents = 0;
+  channel->space_avail_event = NULL;
+  channel->data_avail_noticed_event = NULL;
+  channel->watches = NULL;
+  InitializeCriticalSection (&channel->mutex);
+}
+
+static void
+create_events (GIOWin32Channel *channel)
+{
+  SECURITY_ATTRIBUTES sec_attrs;
+  
+  sec_attrs.nLength = sizeof(SECURITY_ATTRIBUTES);
+  sec_attrs.lpSecurityDescriptor = NULL;
+  sec_attrs.bInheritHandle = FALSE;
+
+  /* The data available event is manual reset, the space available event
+   * is automatic reset.
+   */
+  if (!(channel->data_avail_event = CreateEvent (&sec_attrs, TRUE, FALSE, NULL))
+      || !(channel->space_avail_event = CreateEvent (&sec_attrs, FALSE, FALSE, NULL))
+      || !(channel->data_avail_noticed_event = CreateEvent (&sec_attrs, FALSE, FALSE, NULL)))
+    {
+      gchar *msg = g_win32_error_message (GetLastError ());
+      g_error ("Error creating event: %s", msg);
+    }
+}
+
+static unsigned __stdcall
+read_thread (void *parameter)
+{
+  GIOWin32Channel *channel = parameter;
+  guchar *buffer;
+  guint nbytes;
+
+  g_io_channel_ref ((GIOChannel *)channel);
+
+  if (channel->debug)
+    g_print ("read_thread %#x: start fd:%d, data_avail:%#x, space_avail:%#x\n",
+	     channel->thread_id,
+	     channel->fd,
+	     (guint) channel->data_avail_event,
+	     (guint) channel->space_avail_event);
+  
+  channel->buffer = g_malloc (BUFFER_SIZE);
+  channel->rdp = channel->wrp = 0;
+  channel->running = TRUE;
+
+  SetEvent (channel->space_avail_event);
+  
+  while (channel->running)
+    {
+      LOCK (channel->mutex);
+      if (channel->debug)
+	g_print ("read_thread %#x: rdp=%d, wrp=%d\n",
+		 channel->thread_id, channel->rdp, channel->wrp);
+      if ((channel->wrp + 1) % BUFFER_SIZE == channel->rdp)
+	{
+	  /* Buffer is full */
+	  if (channel->debug)
+	    g_print ("read_thread %#x: resetting space_avail\n",
+		     channel->thread_id);
+	  ResetEvent (channel->space_avail_event);
+	  if (channel->debug)
+	    g_print ("read_thread %#x: waiting for space\n",
+		     channel->thread_id);
+	  UNLOCK (channel->mutex);
+	  WaitForSingleObject (channel->space_avail_event, INFINITE);
+	  LOCK (channel->mutex);
+	  if (channel->debug)
+	    g_print ("read_thread %#x: rdp=%d, wrp=%d\n",
+		     channel->thread_id, channel->rdp, channel->wrp);
+	}
+      
+      buffer = channel->buffer + channel->wrp;
+      
+      /* Always leave at least one byte unused gap to be able to
+       * distinguish between the full and empty condition...
+       */
+      nbytes = MIN ((channel->rdp + BUFFER_SIZE - channel->wrp - 1) % BUFFER_SIZE,
+		    BUFFER_SIZE - channel->wrp);
+
+      if (channel->debug)
+	g_print ("read_thread %#x: calling read() for %d bytes\n",
+		 channel->thread_id, nbytes);
+
+      UNLOCK (channel->mutex);
+
+      nbytes = read (channel->fd, buffer, nbytes);
+      
+      LOCK (channel->mutex);
+
+      channel->revents = G_IO_IN;
+      if (nbytes == 0)
+	channel->revents |= G_IO_HUP;
+      else if (nbytes < 0)
+	channel->revents |= G_IO_ERR;
+
+      if (channel->debug)
+	g_print ("read_thread %#x: read() returned %d, rdp=%d, wrp=%d\n",
+		 channel->thread_id, nbytes, channel->rdp, channel->wrp);
+
+      if (nbytes <= 0)
+	break;
+
+      channel->wrp = (channel->wrp + nbytes) % BUFFER_SIZE;
+      if (channel->debug)
+	g_print ("read_thread %#x: rdp=%d, wrp=%d, setting data_avail\n",
+		 channel->thread_id, channel->rdp, channel->wrp);
+      SetEvent (channel->data_avail_event);
+      UNLOCK (channel->mutex);
+    }
+  
+  channel->running = FALSE;
+  if (channel->needs_close)
+    {
+      if (channel->debug)
+	g_print ("read_thread %#x: channel fd %d needs closing\n",
+		 channel->thread_id, channel->fd);
+      close (channel->fd);
+      channel->fd = -1;
+    }
+
+  if (channel->debug)
+    g_print ("read_thread %#x: EOF, rdp=%d, wrp=%d, setting data_avail\n",
+	     channel->thread_id, channel->rdp, channel->wrp);
+  SetEvent (channel->data_avail_event);
+  UNLOCK (channel->mutex);
+  
+  g_io_channel_unref((GIOChannel *)channel);
+  
+  /* No need to call _endthreadex(), the actual thread starter routine
+   * in MSVCRT (see crt/src/threadex.c:_threadstartex) calls
+   * _endthreadex() for us.
+   */
+
+  CloseHandle (channel->thread_handle);
+
+  return 0;
+}
+
+static void
+create_thread (GIOWin32Channel     *channel,
+	       GIOCondition         condition,
+	       unsigned (__stdcall *thread) (void *parameter))
+{
+  channel->thread_handle =
+    (HANDLE) _beginthreadex (NULL, 0, thread, channel, 0,
+			     &channel->thread_id);
+  if (channel->thread_handle == 0)
+    g_warning (G_STRLOC ": Error creating reader thread: %s",
+	       strerror (errno));
+  WaitForSingleObject (channel->space_avail_event, INFINITE);
+}
+
+static GIOStatus
+buffer_read (GIOWin32Channel *channel,
+	     guchar          *dest,
+	     gsize            count,
+	     gsize           *bytes_read,
+	     GError         **err)
+{
+  guint nbytes;
+  guint left = count;
+  
+  LOCK (channel->mutex);
+  if (channel->debug)
+    g_print ("reading from thread %#x %d bytes, rdp=%d, wrp=%d\n",
+	     channel->thread_id, count, channel->rdp, channel->wrp);
+  
+  if (channel->wrp == channel->rdp)
+    {
+      UNLOCK (channel->mutex);
+      if (channel->debug)
+	g_print ("waiting for data from thread %#x\n", channel->thread_id);
+      WaitForSingleObject (channel->data_avail_event, INFINITE);
+      if (channel->debug)
+	g_print ("done waiting for data from thread %#x\n", channel->thread_id);
+      LOCK (channel->mutex);
+      if (channel->wrp == channel->rdp && !channel->running)
+	{
+	  UNLOCK (channel->mutex);
+          *bytes_read = 0;
+	  return G_IO_STATUS_NORMAL; /* as before, normal case ? */
+	}
+    }
+  
+  if (channel->rdp < channel->wrp)
+    nbytes = channel->wrp - channel->rdp;
+  else
+    nbytes = BUFFER_SIZE - channel->rdp;
+  UNLOCK (channel->mutex);
+  nbytes = MIN (left, nbytes);
+  if (channel->debug)
+    g_print ("moving %d bytes from thread %#x\n",
+	     nbytes, channel->thread_id);
+  memcpy (dest, channel->buffer + channel->rdp, nbytes);
+  dest += nbytes;
+  left -= nbytes;
+  LOCK (channel->mutex);
+  channel->rdp = (channel->rdp + nbytes) % BUFFER_SIZE;
+  if (channel->debug)
+    g_print ("setting space_avail for thread %#x\n", channel->thread_id);
+  SetEvent (channel->space_avail_event);
+  if (channel->debug)
+    g_print ("for thread %#x: rdp=%d, wrp=%d\n",
+	     channel->thread_id, channel->rdp, channel->wrp);
+  if (channel->running && channel->wrp == channel->rdp)
+    {
+      if (channel->debug)
+	g_print ("resetting data_avail of thread %#x\n",
+		 channel->thread_id);
+      ResetEvent (channel->data_avail_event);
+    };
+  UNLOCK (channel->mutex);
+  
+  /* We have no way to indicate any errors form the actual
+   * read() or recv() call in the reader thread. Should we have?
+   */
+  *bytes_read = count - left;
+  return (*bytes_read > 0) ? G_IO_STATUS_NORMAL : G_IO_STATUS_EOF;
+}
+
+static unsigned __stdcall
+select_thread (void *parameter)
+{
+  GIOWin32Channel *channel = parameter;
+  fd_set read_fds, write_fds, except_fds;
+  GSList *tmp;
+  int n;
+
+  g_io_channel_ref ((GIOChannel *)channel);
+
+  if (channel->debug)
+    g_print ("select_thread %#x: start fd:%d,\n\tdata_avail:%#x, data_avail_noticed:%#x\n",
+	     channel->thread_id,
+	     channel->fd,
+	     (guint) channel->data_avail_event,
+	     (guint) channel->data_avail_noticed_event);
+  
+  channel->rdp = channel->wrp = 0;
+  channel->running = TRUE;
+
+  SetEvent (channel->space_avail_event);
+  
+  while (channel->running)
+    {
+      FD_ZERO (&read_fds);
+      FD_ZERO (&write_fds);
+      FD_ZERO (&except_fds);
+
+      tmp = channel->watches;
+      while (tmp)
+	{
+	  GIOWin32Watch *watch = (GIOWin32Watch *)tmp->data;
+
+	  if (watch->condition & (G_IO_IN | G_IO_HUP))
+	    FD_SET (channel->fd, &read_fds);
+	  if (watch->condition & G_IO_OUT)
+	    FD_SET (channel->fd, &write_fds);
+	  if (watch->condition & G_IO_ERR)
+	    FD_SET (channel->fd, &except_fds);
+	  
+	  tmp = tmp->next;
+	}
+      if (channel->debug)
+	g_print ("select_thread %#x: calling select() for%s%s%s\n",
+		 channel->thread_id,
+		 (FD_ISSET (channel->fd, &read_fds) ? " IN" : ""),
+		 (FD_ISSET (channel->fd, &write_fds) ? " OUT" : ""),
+		 (FD_ISSET (channel->fd, &except_fds) ? " ERR" : ""));
+
+      n = select (1, &read_fds, &write_fds, &except_fds, NULL);
+      
+      if (n == SOCKET_ERROR)
+	{
+	  if (channel->debug)
+	    g_print ("select_thread %#x: select returned SOCKET_ERROR\n",
+		     channel->thread_id);
+	  break;
+	}
+
+      if (channel->debug)
+	g_print ("select_thread %#x: got%s%s%s\n",
+		 channel->thread_id,
+		 (FD_ISSET (channel->fd, &read_fds) ? " IN" : ""),
+		 (FD_ISSET (channel->fd, &write_fds) ? " OUT" : ""),
+		 (FD_ISSET (channel->fd, &except_fds) ? " ERR" : ""));
+
+      if (FD_ISSET (channel->fd, &read_fds))
+	channel->revents |= G_IO_IN;
+      if (FD_ISSET (channel->fd, &write_fds))
+	channel->revents |= G_IO_OUT;
+      if (FD_ISSET (channel->fd, &except_fds))
+	channel->revents |= G_IO_ERR;
+
+      if (channel->debug)
+	g_print ("select_thread %#x: resetting data_avail_noticed,\n"
+		 "\tsetting data_avail\n",
+		 channel->thread_id);
+      ResetEvent (channel->data_avail_noticed_event);
+      SetEvent (channel->data_avail_event);
+
+      LOCK (channel->mutex);
+      if (channel->needs_close)
+	{
+	  UNLOCK (channel->mutex);
+	  break;
+	}
+      UNLOCK (channel->mutex);
+
+      if (channel->debug)
+	g_print ("select_thread %#x: waiting for data_avail_noticed\n",
+		 channel->thread_id);
+
+      WaitForSingleObject (channel->data_avail_noticed_event, INFINITE);
+      if (channel->debug)
+	g_print ("select_thread %#x: got data_avail_noticed\n",
+		 channel->thread_id);
+    }
+  
+  channel->running = FALSE;
+  LOCK (channel->mutex);
+  if (channel->fd != -1)
+    {
+      /* DO NOT close the fd here */
+      channel->fd = -1;
+    }
+
+  if (channel->debug)
+    g_print ("select_thread %#x: got error, setting data_avail\n",
+	     channel->thread_id);
+  SetEvent (channel->data_avail_event);
+  UNLOCK (channel->mutex);
+  
+  g_io_channel_unref((GIOChannel *)channel);
+  
+  /* No need to call _endthreadex(), the actual thread starter routine
+   * in MSVCRT (see crt/src/threadex.c:_threadstartex) calls
+   * _endthreadex() for us.
+   */
+
+  CloseHandle (channel->thread_handle);
+
+  return 0;
+}
+
+static gboolean
+g_io_win32_prepare (GSource *source,
+		    gint    *timeout)
+{
+  GIOWin32Watch *watch = (GIOWin32Watch *)source;
+  GIOWin32Channel *channel = (GIOWin32Channel *)watch->channel;
+  
+  *timeout = -1;
+  
+  if (channel->type == G_IO_WIN32_FILE_DESC)
+    {
+      LOCK (channel->mutex);
+      if (channel->running && channel->wrp == channel->rdp)
+	channel->revents = 0;
+      UNLOCK (channel->mutex);
+    }
+  else if (channel->type == G_IO_WIN32_SOCKET)
+    {
+      channel->revents = 0;
+
+      if (channel->debug)
+	g_print ("g_io_win32_prepare: thread %#x, setting data_avail_noticed\n",
+		 channel->thread_id);
+      SetEvent (channel->data_avail_noticed_event);
+      if (channel->debug)
+	g_print ("g_io_win32_prepare: thread %#x, there.\n",
+		 channel->thread_id);
+    }
+
+  return FALSE;
+  /* XXX: why should we want to do this ? */
+  watch->condition = g_io_channel_get_buffer_condition (watch->channel);
+
+  return (watch->pollfd.revents & (G_IO_IN | G_IO_OUT)) == watch->condition;
+}
+
+static gboolean
+g_io_win32_check (GSource *source)
+{
+	MSG msg;
+  GIOWin32Watch *watch = (GIOWin32Watch *)source;
+  GIOWin32Channel *channel = (GIOWin32Channel *)watch->channel;
+  GIOCondition buffer_condition = g_io_channel_get_buffer_condition (watch->channel);
+
+  
+  if (channel->debug)
+    g_print ("g_io_win32_check: for thread %#x:\n"
+	     "\twatch->pollfd.events:%#x, watch->pollfd.revents:%#x, channel->revents:%#x\n",
+	     channel->thread_id,
+	     watch->pollfd.events, watch->pollfd.revents, channel->revents);
+
+  if (channel->type != G_IO_WIN32_WINDOWS_MESSAGES)
+	{
+     watch->pollfd.revents = (watch->pollfd.events & channel->revents);
+	}
+	else
+	{
+    return (PeekMessage (&msg, channel->hwnd, 0, 0, PM_NOREMOVE));
+	}
+
+  if (channel->type == G_IO_WIN32_SOCKET)
+    {
+      if (channel->debug)
+	g_print ("g_io_win32_check: thread %#x, resetting data_avail\n",
+		 channel->thread_id);
+      ResetEvent (channel->data_avail_event);
+      if (channel->debug)
+	g_print ("g_io_win32_check: thread %#x, there.\n",
+		 channel->thread_id);
+    }
+
+  return (watch->pollfd.revents & watch->condition);
+}
+
+static gboolean
+g_io_win32_dispatch (GSource     *source,
+		     GSourceFunc  callback,
+		     gpointer     user_data)
+{
+  GIOFunc func = (GIOFunc)callback;
+  GIOWin32Watch *watch = (GIOWin32Watch *)source;
+  
+  if (!func)
+    {
+      g_warning (G_STRLOC ": GIOWin32Watch dispatched without callback\n"
+		 "You must call g_source_connect().");
+      return FALSE;
+    }
+  
+  return (*func) (watch->channel,
+		  watch->pollfd.revents & watch->condition,
+		  user_data);
+}
+
+static void
+g_io_win32_finalize (GSource *source)
+{
+  GIOWin32Watch *watch = (GIOWin32Watch *)source;
+  GIOWin32Channel *channel = (GIOWin32Channel *)watch->channel;
+  
+  if (channel->debug)
+    g_print ("g_io_win32_finalize: channel with thread %#x\n",
+	     channel->thread_id);
+
+  channel->watches = g_slist_remove (channel->watches, watch);
+
+  SetEvent (channel->data_avail_noticed_event);
+  g_io_channel_unref (watch->channel);
+}
+
+#if defined(G_PLATFORM_WIN32) && defined(__GNUC__)
+__declspec(dllexport)
+#endif
+GSourceFuncs g_io_watch_funcs = {
+  g_io_win32_prepare,
+  g_io_win32_check,
+  g_io_win32_dispatch,
+  g_io_win32_finalize
+};
+
+static GSource *
+g_io_win32_create_watch (GIOChannel    *channel,
+			 GIOCondition   condition,
+			 unsigned (__stdcall *thread) (void *parameter))
+{
+  GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
+  GIOWin32Watch *watch;
+  GSource *source;
+
+  source = g_source_new (&g_io_watch_funcs, sizeof (GIOWin32Watch));
+  watch = (GIOWin32Watch *)source;
+  
+  watch->channel = channel;
+  g_io_channel_ref (channel);
+  
+  watch->condition = condition;
+  
+  if (win32_channel->data_avail_event == NULL)
+    create_events (win32_channel);
+
+  watch->pollfd.fd = (gint) win32_channel->data_avail_event;
+  watch->pollfd.events = condition;
+  
+  if (win32_channel->debug)
+    g_print ("g_io_win32_create_watch: fd:%d condition:%#x handle:%#x\n",
+	     win32_channel->fd, condition, watch->pollfd.fd);
+  
+  win32_channel->watches = g_slist_append (win32_channel->watches, watch);
+
+  if (win32_channel->thread_id == 0)
+    create_thread (win32_channel, condition, thread);
+
+  g_source_add_poll (source, &watch->pollfd);
+  
+  return source;
+}
+
+static GIOStatus
+g_io_win32_msg_read (GIOChannel *channel,
+		     gchar      *buf,
+		     gsize       count,
+		     gsize      *bytes_read,
+		     GError    **err)
+{
+  GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
+  MSG msg;               /* In case of alignment problems */
+  
+  if (count < sizeof (MSG))
+    {
+      g_set_error(err, G_IO_CHANNEL_ERROR, G_IO_CHANNEL_ERROR_INVAL,
+        _("Incorrect message size")); /* Correct error message? FIXME */
+      return G_IO_STATUS_ERROR;
+    }
+  
+  if (win32_channel->debug)
+    g_print ("g_io_win32_msg_read: for %#x\n",
+	     win32_channel->hwnd);
+  if (!PeekMessage (&msg, win32_channel->hwnd, 0, 0, PM_REMOVE))
+    return G_IO_STATUS_AGAIN;
+
+  memmove (buf, &msg, sizeof (MSG));
+  *bytes_read = sizeof (MSG);
+
+  return (*bytes_read > 0) ? G_IO_STATUS_NORMAL : G_IO_STATUS_EOF;
+}
+
+static GIOStatus
+g_io_win32_msg_write (GIOChannel  *channel,
+		      const gchar *buf,
+		      gsize        count,
+		      gsize       *bytes_written,
+		      GError     **err)
+{
+  GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
+  MSG msg;
+  
+  if (count != sizeof (MSG))
+    {
+      g_set_error(err, G_IO_CHANNEL_ERROR, G_IO_CHANNEL_ERROR_INVAL,
+        _("Incorrect message size")); /* Correct error message? FIXME */
+      return G_IO_STATUS_ERROR;
+    }
+  
+  /* In case of alignment problems */
+  memmove (&msg, buf, sizeof (MSG));
+  if (!PostMessage (win32_channel->hwnd, msg.message, msg.wParam, msg.lParam))
+    {
+      g_set_error(err, G_IO_CHANNEL_ERROR, G_IO_CHANNEL_ERROR_FAILED,
+        _("Unknown error")); /* Correct error message? FIXME */
+      return G_IO_STATUS_ERROR;
+    }
+
+  *bytes_written = sizeof (MSG);
+
+  return G_IO_STATUS_NORMAL;
+}
+
+static GIOStatus
+g_io_win32_no_seek (GIOChannel *channel,
+		    glong       offset,
+		    GSeekType   type,
+		    GError     **err)
+{
+  g_assert_not_reached ();
+
+  return G_IO_STATUS_ERROR;
+}
+
+static GIOStatus
+g_io_win32_msg_close (GIOChannel *channel,
+		      GError    **err)
+{
+  /* Nothing to be done. Or should we set hwnd to some invalid value? */
+
+  return G_IO_STATUS_NORMAL;
+}
+
+static void
+g_io_win32_free (GIOChannel *channel)
+{
+  GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
+  
+  if (win32_channel->debug)
+    g_print ("thread %#x: freeing channel, fd: %d\n",
+	     win32_channel->thread_id,
+	     win32_channel->fd);
+
+  if (win32_channel->data_avail_event)
+    CloseHandle (win32_channel->data_avail_event);
+  if (win32_channel->space_avail_event)
+    CloseHandle (win32_channel->space_avail_event);
+  if (win32_channel->data_avail_noticed_event)
+    CloseHandle (win32_channel->data_avail_noticed_event);
+  DeleteCriticalSection (&win32_channel->mutex);
+
+  g_free (win32_channel->buffer);
+  g_slist_free (win32_channel->watches);
+  g_free (win32_channel);
+}
+
+static GSource *
+g_io_win32_msg_create_watch (GIOChannel    *channel,
+			     GIOCondition   condition)
+{
+  GIOWin32Watch *watch;
+  GSource *source;
+
+  source = g_source_new (&g_io_watch_funcs, sizeof (GIOWin32Watch));
+  watch = (GIOWin32Watch *)source;
+  
+  watch->channel = channel;
+  g_io_channel_ref (channel);
+  
+  watch->condition = condition;
+  
+  watch->pollfd.fd = G_WIN32_MSG_HANDLE;
+  watch->pollfd.events = condition;
+  
+  g_source_add_poll (source, &watch->pollfd);
+  
+  return source;
+}
+
+static GIOStatus
+g_io_win32_fd_read (GIOChannel *channel,
+		    gchar      *buf,
+		    gsize       count,
+		    gsize      *bytes_read,
+		    GError    **err)
+{
+  GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
+  gint result;
+  
+  if (win32_channel->debug)
+    g_print ("g_io_win32_fd_read: fd:%d count:%d\n",
+	     win32_channel->fd, count);
+  
+  if (win32_channel->thread_id)
+    {
+      return buffer_read (win32_channel, buf, count, bytes_read, err);
+    }
+
+  result = read (win32_channel->fd, buf, count);
+
+  if (result < 0)
+    {
+      *bytes_read = 0;
+
+      switch(errno)
+        {
+#ifdef EAGAIN
+          case EAGAIN:
+            return G_IO_STATUS_AGAIN;
+#endif
+          default:
+            g_set_error (err, G_IO_CHANNEL_ERROR,
+                         g_io_channel_error_from_errno (errno),
+                         strerror (errno));
+            return G_IO_STATUS_ERROR;
+        }
+    }
+
+  *bytes_read = result;
+
+  return G_IO_STATUS_NORMAL; /* XXX: 0 byte read an error ?? */
+  return (result > 0) ? G_IO_STATUS_NORMAL : G_IO_STATUS_EOF;
+}
+
+static GIOStatus
+g_io_win32_fd_write (GIOChannel  *channel,
+		     const gchar *buf,
+		     gsize        count,
+		     gsize       *bytes_written,
+		     GError     **err)
+{
+  GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
+  gint result;
+  
+  result = write (win32_channel->fd, buf, count);
+  if (win32_channel->debug)
+    g_print ("g_io_win32_fd_write: fd:%d count:%d = %d\n",
+	     win32_channel->fd, count, result);
+
+  if (result < 0)
+    {
+      *bytes_written = 0;
+
+      switch(errno)
+        {
+#ifdef EAGAIN
+          case EAGAIN:
+            return G_IO_STATUS_AGAIN;
+#endif
+          default:
+            g_set_error (err, G_IO_CHANNEL_ERROR,
+                         g_io_channel_error_from_errno (errno),
+                         strerror (errno));
+            return G_IO_STATUS_ERROR;
+        }
+    }
+
+  *bytes_written = result;
+
+  return G_IO_STATUS_NORMAL;
+}
+
+static GIOStatus
+g_io_win32_fd_seek (GIOChannel *channel,
+		    glong       offset,
+		    GSeekType   type,
+		    GError    **err)
+{
+  GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
+  int whence;
+  off_t result;
+  
+  switch (type)
+    {
+    case G_SEEK_SET:
+      whence = SEEK_SET;
+      break;
+    case G_SEEK_CUR:
+      whence = SEEK_CUR;
+      break;
+    case G_SEEK_END:
+      whence = SEEK_END;
+      break;
+    default:
+      whence = -1; /* Keep the compiler quiet */
+      g_assert_not_reached();
+    }
+  
+  result = lseek (win32_channel->fd, offset, whence);
+  
+  if (result < 0)
+    {
+      g_set_error (err, G_IO_CHANNEL_ERROR,
+		   g_io_channel_error_from_errno (errno),
+		   strerror (errno));
+      return G_IO_STATUS_ERROR;
+    }
+
+  return G_IO_STATUS_NORMAL;
+}
+
+static GIOStatus
+g_io_win32_fd_close (GIOChannel *channel,
+	             GError    **err)
+{
+  GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
+  
+  if (win32_channel->debug)
+    g_print ("thread %#x: closing fd %d\n",
+	     win32_channel->thread_id,
+	     win32_channel->fd);
+  LOCK (win32_channel->mutex);
+  if (win32_channel->running)
+    {
+      if (win32_channel->debug)
+	g_print ("thread %#x: running, marking fd %d for later close\n",
+		 win32_channel->thread_id, win32_channel->fd);
+      win32_channel->running = FALSE;
+      win32_channel->needs_close = TRUE;
+      SetEvent (win32_channel->data_avail_event);
+    }
+  else
+    {
+      if (win32_channel->debug)
+	g_print ("closing fd %d\n", win32_channel->fd);
+      close (win32_channel->fd);
+      if (win32_channel->debug)
+	g_print ("closed fd %d, setting to -1\n",
+		 win32_channel->fd);
+      win32_channel->fd = -1;
+    }
+  UNLOCK (win32_channel->mutex);
+
+  /* FIXME error detection? */
+
+  return G_IO_STATUS_NORMAL;
+}
+
+static GSource *
+g_io_win32_fd_create_watch (GIOChannel    *channel,
+			    GIOCondition   condition)
+{
+  return g_io_win32_create_watch (channel, condition, read_thread);
+}
+
+static GIOStatus
+g_io_win32_sock_read (GIOChannel *channel,
+		      gchar      *buf,
+		      gsize       count,
+		      gsize      *bytes_read,
+		      GError    **err)
+{
+  GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
+  gint result;
+  GIOChannelError error;
+
+  if (win32_channel->debug)
+    g_print ("g_io_win32_sock_read: sockfd:%d count:%d\n",
+	     win32_channel->fd, count);
+#ifdef WE_NEED_TO_HANDLE_WSAEINTR /* not anymore with wsock2 ? */
+repeat: 
+#endif
+  result = recv (win32_channel->fd, buf, count, 0);
+
+  if (win32_channel->debug)
+    g_print ("g_io_win32_sock_read: recv:%d\n", result);
+  
+  if (result == SOCKET_ERROR)
+    {
+      *bytes_read = 0;
+
+      switch (WSAGetLastError ())
+	{
+	case WSAEINVAL:
+          error = G_IO_CHANNEL_ERROR_INVAL;
+          break;
+	case WSAEWOULDBLOCK:
+          return G_IO_STATUS_AGAIN;
+#ifdef WE_NEED_TO_HANDLE_WSAEINTR /* not anymore with wsock2 ? */
+	case WSAEINTR:
+          goto repeat;
+#endif
+	default:
+	  error = G_IO_CHANNEL_ERROR_FAILED;
+          break;
+	}
+      g_set_error(err, G_IO_CHANNEL_ERROR, error, _("Socket error"));
+      return G_IO_STATUS_ERROR;
+      /* FIXME get all errors, better error messages */
+    }
+  else
+    {
+      *bytes_read = result;
+
+      return G_IO_STATUS_NORMAL; /* XXX: 0 byte read an error ?? */
+      return (result > 0) ? G_IO_STATUS_NORMAL : G_IO_STATUS_EOF;
+    }
+}
+
+static GIOStatus
+g_io_win32_sock_write (GIOChannel  *channel,
+		       const gchar *buf,
+		       gsize        count,
+		       gsize       *bytes_written,
+		       GError     **err)
+{
+  GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
+  gint result;
+  GIOChannelError error;
+  
+  if (win32_channel->debug)
+    g_print ("g_io_win32_sock_write: sockfd:%d count:%d\n",
+	     win32_channel->fd, count);
+#ifdef WE_NEED_TO_HANDLE_WSAEINTR /* not anymore with wsock2 ? */
+repeat:
+#endif
+  result = send (win32_channel->fd, buf, count, 0);
+  
+  if (win32_channel->debug)
+    g_print ("g_io_win32_sock_write: send:%d\n", result);
+  
+  if (result == SOCKET_ERROR)
+    {
+      *bytes_written = 0;
+
+      switch (WSAGetLastError ())
+	{
+	case WSAEINVAL:
+	  error = G_IO_CHANNEL_ERROR_INVAL;
+          break;
+	case WSAEWOULDBLOCK:
+          return G_IO_STATUS_AGAIN;
+#ifdef WE_NEED_TO_HANDLE_WSAEINTR /* not anymore with wsock2 ? */
+	case WSAEINTR:
+          goto repeat;
+#endif
+	default:
+	  error = G_IO_CHANNEL_ERROR_FAILED;
+          break;
+	}
+      g_set_error(err, G_IO_CHANNEL_ERROR, error, _("Socket error"));
+      return G_IO_STATUS_ERROR;
+      /* FIXME get all errors, better error messages */
+    }
+  else
+    {
+      *bytes_written = result;
+
+      return G_IO_STATUS_NORMAL;
+    }
+}
+
+static GIOStatus
+g_io_win32_sock_close (GIOChannel *channel,
+		       GError    **err)
+{
+  GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
+
+  LOCK(win32_channel->mutex);
+  if (win32_channel->running)
+  {
+    if (win32_channel->debug)
+	g_print ("thread %#x: running, marking for later close\n",
+		 win32_channel->thread_id);
+    win32_channel->running = FALSE;
+    win32_channel->needs_close = TRUE;
+    SetEvent(win32_channel->data_avail_noticed_event);
+  }
+  if (win32_channel->fd != -1)
+  {
+    if (win32_channel->debug)
+       g_print ("thread %#x: closing socket %d\n",
+	     win32_channel->thread_id,
+	     win32_channel->fd);
+  
+    closesocket (win32_channel->fd);
+    win32_channel->fd = -1;
+  }
+  UNLOCK(win32_channel->mutex);
+
+  /* FIXME error detection? */
+
+  return G_IO_STATUS_NORMAL;
+}
+
+static GSource *
+g_io_win32_sock_create_watch (GIOChannel    *channel,
+			      GIOCondition   condition)
+{
+  return g_io_win32_create_watch (channel, condition, select_thread);
+}
+
+GIOChannel *
+g_io_channel_new_file (const gchar  *filename,
+                       const gchar  *mode,
+                       GError      **error)
+{
+  int fid, flags, pmode;
+  GIOChannel *channel;
+
+  enum { /* Cheesy hack */
+    MODE_R = 1 << 0,
+    MODE_W = 1 << 1,
+    MODE_A = 1 << 2,
+    MODE_PLUS = 1 << 3,
+  } mode_num;
+
+  g_return_val_if_fail (filename != NULL, NULL);
+  g_return_val_if_fail (mode != NULL, NULL);
+  g_return_val_if_fail ((error == NULL) || (*error == NULL), NULL);
+
+  switch (mode[0])
+    {
+      case 'r':
+        mode_num = MODE_R;
+        break;
+      case 'w':
+        mode_num = MODE_W;
+        break;
+      case 'a':
+        mode_num = MODE_A;
+        break;
+      default:
+        g_warning (G_STRLOC ": Invalid GIOFileMode %s.\n", mode);
+        return NULL;
+    }
+
+  switch (mode[1])
+    {
+      case '\0':
+        break;
+      case '+':
+        if (mode[2] == '\0')
+          {
+            mode_num |= MODE_PLUS;
+            break;
+          }
+        /* Fall through */
+      default:
+        g_warning (G_STRLOC ": Invalid GIOFileMode %s.\n", mode);
+        return NULL;
+    }
+
+  switch (mode_num)
+    {
+      case MODE_R:
+        flags = O_RDONLY;
+        pmode = _S_IREAD;
+        break;
+      case MODE_W:
+        flags = O_WRONLY | O_TRUNC | O_CREAT;
+        pmode = _S_IWRITE;
+        break;
+      case MODE_A:
+        flags = O_WRONLY | O_APPEND | O_CREAT;
+        pmode = _S_IWRITE;
+        break;
+      case MODE_R | MODE_PLUS:
+        flags = O_RDWR;
+        pmode = _S_IREAD | _S_IWRITE;
+        break;
+      case MODE_W | MODE_PLUS:
+        flags = O_RDWR | O_TRUNC | O_CREAT;
+        pmode = _S_IREAD | _S_IWRITE;
+        break;
+      case MODE_A | MODE_PLUS:
+        flags = O_RDWR | O_APPEND | O_CREAT;
+        pmode = _S_IREAD | _S_IWRITE;
+        break;
+      default:
+        g_assert_not_reached ();
+        flags = 0;
+        pmode = 0;
+    }
+
+
+  /* always open 'untranslated' */
+  fid = open (filename, flags | _O_BINARY, pmode);
+  if (fid < 0)
+    {
+      g_set_error (error, G_FILE_ERROR,
+                   g_file_error_from_errno (errno),
+                   strerror (errno));
+      return (GIOChannel *)NULL;
+    }
+
+  channel = g_io_channel_win32_new_fd (fid);
+
+  /* XXX: move this to g_io_channel_win32_new_fd () */
+  channel->close_on_unref = TRUE;
+  channel->is_seekable = TRUE;
+
+  switch (mode_num)
+    {
+      case MODE_R:
+        channel->is_readable = TRUE;
+        channel->is_writeable = FALSE;
+        break;
+      case MODE_W:
+      case MODE_A:
+        channel->is_readable = FALSE;
+        channel->is_writeable = TRUE;
+        break;
+      case MODE_R | MODE_PLUS:
+      case MODE_W | MODE_PLUS:
+      case MODE_A | MODE_PLUS:
+        channel->is_readable = TRUE;
+        channel->is_writeable = TRUE;
+        break;
+      default:
+        g_assert_not_reached ();
+    }
+
+  if (((GIOWin32Channel *)channel)->debug)
+    g_print ("g_io_channel_win32_new_file: fd = %ud\n", fid);
+
+  return channel;
+}
+
+GIOStatus
+g_io_win32_set_flags (GIOChannel     *channel,
+                      GIOFlags        flags,
+                      GError        **err)
+{
+  GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
+
+  g_set_error (err, 
+               G_IO_CHANNEL_ERROR, 
+               g_file_error_from_errno (EACCES), 
+               _("Channel set flags unsupported"));
+  return G_IO_STATUS_ERROR;
+}
+
+GIOFlags
+g_io_win32_fd_get_flags (GIOChannel     *channel)
+{
+  GIOFlags flags = 0;
+  struct _stat st;
+  GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
+
+  g_return_val_if_fail (win32_channel != NULL, 0);
+  g_return_val_if_fail (win32_channel->type == G_IO_WIN32_FILE_DESC, 0);
+
+  if (0 == _fstat (win32_channel->fd, &st))
+    {
+       /* XXX: G_IO_FLAG_APPEND */
+       /* XXX: G_IO_FLAG_NONBLOCK */
+       if (st.st_mode & _S_IREAD)    flags |= G_IO_FLAG_IS_READABLE;
+       if (st.st_mode & _S_IWRITE)   flags |= G_IO_FLAG_IS_WRITEABLE;
+       /* XXX: */
+       if (!(st.st_mode & _S_IFIFO)) flags |= G_IO_FLAG_IS_SEEKABLE;
+    }
+
+  return flags;
+}
+
+/*
+ * Generic implementation, just translating createion flags
+ */
+GIOFlags
+g_io_win32_get_flags (GIOChannel     *channel)
+{
+  GIOFlags flags;
+
+  flags =   (channel->is_readable ? G_IO_FLAG_IS_READABLE : 0)
+          | (channel->is_writeable ? G_IO_FLAG_IS_READABLE : 0)
+          | (channel->is_seekable ? G_IO_FLAG_IS_SEEKABLE : 0);
+
+  return flags;
+}
+
+static GIOFuncs win32_channel_msg_funcs = {
+  g_io_win32_msg_read,
+  g_io_win32_msg_write,
+  g_io_win32_no_seek,
+  g_io_win32_msg_close,
+  g_io_win32_msg_create_watch,
+  g_io_win32_free,
+  g_io_win32_set_flags,
+  g_io_win32_get_flags,
+};
+
+static GIOFuncs win32_channel_fd_funcs = {
+  g_io_win32_fd_read,
+  g_io_win32_fd_write,
+  g_io_win32_fd_seek,
+  g_io_win32_fd_close,
+  g_io_win32_fd_create_watch,
+  g_io_win32_free,
+  g_io_win32_set_flags,
+  g_io_win32_fd_get_flags,
+};
+
+static GIOFuncs win32_channel_sock_funcs = {
+  g_io_win32_sock_read,
+  g_io_win32_sock_write,
+  g_io_win32_no_seek,
+  g_io_win32_sock_close,
+  g_io_win32_sock_create_watch,
+  g_io_win32_free,
+  g_io_win32_set_flags,
+  g_io_win32_get_flags,
+};
+
+GIOChannel *
+g_io_channel_win32_new_messages (guint hwnd)
+{
+  GIOWin32Channel *win32_channel = g_new (GIOWin32Channel, 1);
+  GIOChannel *channel = (GIOChannel *)win32_channel;
+
+  g_io_channel_init (channel);
+  g_io_channel_win32_init (win32_channel);
+  if (win32_channel->debug)
+    g_print ("g_io_channel_win32_new_messages: hwnd = %ud\n", hwnd);
+  channel->funcs = &win32_channel_msg_funcs;
+  win32_channel->type = G_IO_WIN32_WINDOWS_MESSAGES;
+  win32_channel->hwnd = (HWND) hwnd;
+
+  /* XXX: check this. */
+  channel->is_readable = IsWindow (win32_channel->hwnd);
+  channel->is_writeable = IsWindow (win32_channel->hwnd);
+
+  channel->is_seekable = FALSE;
+
+  return channel;
+}
+
+GIOChannel *
+g_io_channel_win32_new_fd (gint fd)
+{
+  GIOWin32Channel *win32_channel;
+  GIOChannel *channel;
+  struct stat st;
+
+  if (fstat (fd, &st) == -1)
+    {
+      g_warning (G_STRLOC ": %d isn't a (emulated) file descriptor", fd);
+      return NULL;
+    }
+
+  win32_channel = g_new (GIOWin32Channel, 1);
+  channel = (GIOChannel *)win32_channel;
+
+  g_io_channel_init (channel);
+  g_io_channel_win32_init (win32_channel);
+  if (win32_channel->debug)
+    g_print ("g_io_channel_win32_new_fd: fd = %d\n", fd);
+  channel->funcs = &win32_channel_fd_funcs;
+  win32_channel->type = G_IO_WIN32_FILE_DESC;
+  win32_channel->fd = fd;
+
+
+  /* fstat doesn't deliver senseful values, but
+   * fcntl isn't available, so guess ...
+   */
+  if (st.st_mode & _S_IFIFO)
+    {
+      channel->is_readable  = TRUE;
+      channel->is_writeable = TRUE;
+      channel->is_seekable  = FALSE;
+    }
+  else
+    {
+      channel->is_readable  = !!(st.st_mode & _S_IREAD);
+      channel->is_writeable = !!(st.st_mode & _S_IWRITE);
+      /* XXX: pipes aren't seeakable, are they ? */
+      channel->is_seekable = !(st.st_mode & _S_IFIFO);
+    }
+
+  return channel;
+}
+
+gint
+g_io_channel_win32_get_fd (GIOChannel *channel)
+{
+  GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
+
+  return win32_channel->fd;
+}
+
+GIOChannel *
+g_io_channel_win32_new_socket (int socket)
+{
+  GIOWin32Channel *win32_channel = g_new (GIOWin32Channel, 1);
+  GIOChannel *channel = (GIOChannel *)win32_channel;
+
+  g_io_channel_init (channel);
+  g_io_channel_win32_init (win32_channel);
+  if (win32_channel->debug)
+    g_print ("g_io_channel_win32_new_socket: sockfd:%d\n", socket);
+  channel->funcs = &win32_channel_sock_funcs;
+  win32_channel->type = G_IO_WIN32_SOCKET;
+  win32_channel->fd = socket;
+
+  /* XXX: check this */
+  channel->is_readable = TRUE;
+  channel->is_writeable = TRUE;
+  channel->is_seekable = FALSE;
+
+  return channel;
+}
+
+GIOChannel *
+g_io_channel_unix_new (gint fd)
+{
+  struct stat st;
+
+  if (fstat (fd, &st) == 0)
+    return g_io_channel_win32_new_fd (fd);
+  
+  if (getsockopt (fd, SOL_SOCKET, SO_TYPE, NULL, NULL) != SO_ERROR)
+    return g_io_channel_win32_new_socket(fd);
+
+  g_warning (G_STRLOC ": %d is neither a file descriptor or a socket", fd);
+  return NULL;
+}
+
+gint
+g_io_channel_unix_get_fd (GIOChannel *channel)
+{
+  return g_io_channel_win32_get_fd (channel);
+}
+
+void
+g_io_channel_win32_set_debug (GIOChannel *channel,
+			      gboolean    flag)
+{
+  GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
+
+  win32_channel->debug = flag;
+}
+
+gint
+g_io_channel_win32_poll (GPollFD *fds,
+			 gint     n_fds,
+			 gint     timeout)
+{
+  int result;
+
+  g_return_val_if_fail (n_fds >= 0, 0);
+
+  result = (*g_main_context_get_poll_func (NULL)) (fds, n_fds, timeout);
+
+  return result;
+}
+
+void
+g_io_channel_win32_make_pollfd (GIOChannel   *channel,
+				GIOCondition  condition,
+				GPollFD      *fd)
+{
+  GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
+
+  if (win32_channel->data_avail_event == NULL)
+    create_events (win32_channel);
+  
+  fd->fd = (gint) win32_channel->data_avail_event;
+  fd->events = condition;
+
+  if (win32_channel->thread_id == 0)
+    if ((condition & G_IO_IN) && win32_channel->type == G_IO_WIN32_FILE_DESC)
+      create_thread (win32_channel, condition, read_thread);
+    else if (win32_channel->type == G_IO_WIN32_SOCKET)
+      create_thread (win32_channel, condition, select_thread);
+}
+
+/* Binary compatibility */
+GIOChannel *
+g_io_channel_win32_new_stream_socket (int socket)
+{
+  return g_io_channel_win32_new_socket (socket);
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/glib-object.h b/graf2d/win32gdk/gdk/src/glib/glib-object.h
index b4392431b74..aefdd2f8045 100644
--- a/graf2d/win32gdk/gdk/src/glib/glib-object.h
+++ b/graf2d/win32gdk/gdk/src/glib/glib-object.h
@@ -21,16 +21,17 @@
 
 /* topmost include file for GObject header files */
 #include	<gobject/gboxed.h>
-#include	<gobject/gbsearcharray.h>
 #include	<gobject/genums.h>
 #include	<gobject/gobject.h>
 #include	<gobject/gparam.h>
 #include	<gobject/gparamspecs.h>
 #include	<gobject/gsignal.h>
+#include	<gobject/gsourceclosure.h>
 #include	<gobject/gtype.h>
 #include	<gobject/gtypemodule.h>
 #include	<gobject/gtypeplugin.h>
 #include	<gobject/gvalue.h>
+#include	<gobject/gvaluearray.h>
 #include	<gobject/gvaluetypes.h>
 
 
diff --git a/graf2d/win32gdk/gdk/src/glib/glib.def b/graf2d/win32gdk/gdk/src/glib/glib.def
new file mode 100644
index 00000000000..c24f57e222a
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/glib.def
@@ -0,0 +1,703 @@
+EXPORTS
+	g_allocator_free
+	g_allocator_new
+	g_array_append_vals
+	g_array_free
+	g_array_insert_vals
+	g_array_new
+	g_array_prepend_vals
+	g_array_remove_index
+	g_array_remove_index_fast
+	g_array_set_size
+	g_array_sized_new
+	g_array_sort
+	g_array_sort_with_data
+	g_ascii_digit_value
+	g_ascii_strcasecmp
+	g_ascii_strncasecmp
+	g_ascii_strdown
+	g_ascii_strup
+	g_ascii_table
+	g_ascii_tolower
+	g_ascii_toupper
+	g_ascii_xdigit_value
+	g_async_queue_length
+	g_async_queue_length_unlocked
+	g_async_queue_lock
+	g_async_queue_new
+	g_async_queue_pop
+	g_async_queue_pop_unlocked
+	g_async_queue_push
+	g_async_queue_push_unlocked
+	g_async_queue_ref
+	g_async_queue_ref_unlocked
+	g_async_queue_timed_pop
+	g_async_queue_timed_pop_unlocked
+	g_async_queue_try_pop
+	g_async_queue_try_pop_unlocked
+	g_async_queue_unlock
+	g_async_queue_unref
+	g_async_queue_unref_and_unlock
+	g_atexit
+	g_basename
+	g_bit_nth_lsf
+	g_bit_nth_msf
+	g_bit_storage
+	g_blow_chunks
+	g_bsearch_array_destroy
+	g_bsearch_array_get_index
+	g_bsearch_array_get_nth
+	g_bsearch_array_new
+	g_bsearch_array_insert
+	g_bsearch_array_lookup
+	g_bsearch_array_remove
+	g_bsearch_array_remove_node
+	g_build_filename
+	g_build_path
+	g_byte_array_append
+	g_byte_array_free
+	g_byte_array_new
+	g_byte_array_prepend
+	g_byte_array_remove_index
+	g_byte_array_remove_index_fast
+	g_byte_array_set_size
+	g_byte_array_sized_new
+	g_byte_array_sort
+	g_byte_array_sort_with_data
+	g_cache_destroy
+	g_cache_insert
+	g_cache_key_foreach
+	g_cache_new
+	g_cache_remove
+	g_cache_value_foreach
+	g_clear_error
+	g_completion_add_items
+	g_completion_clear_items
+	g_completion_complete
+	g_completion_free
+	g_completion_new
+	g_completion_remove_items
+	g_convert
+	g_convert_error_quark
+	g_convert_with_fallback
+	g_datalist_clear
+	g_datalist_foreach
+	g_datalist_id_get_data
+	g_datalist_id_remove_no_notify
+	g_datalist_id_set_data_full
+	g_datalist_init
+	g_dataset_destroy
+	g_dataset_foreach
+	g_dataset_id_get_data
+	g_dataset_id_remove_no_notify
+	g_dataset_id_set_data_full
+	g_date_add_days
+	g_date_add_months
+	g_date_add_years
+	g_date_clear
+	g_date_compare
+	g_date_free
+	g_date_get_day
+	g_date_get_day_of_year
+	g_date_get_days_in_month
+	g_date_get_julian
+	g_date_get_monday_week_of_year
+	g_date_get_monday_weeks_in_year
+	g_date_get_month
+	g_date_get_sunday_week_of_year
+	g_date_get_sunday_weeks_in_year
+	g_date_get_weekday
+	g_date_get_year
+	g_date_is_first_of_month
+	g_date_is_last_of_month
+	g_date_is_leap_year
+	g_date_new
+	g_date_new_dmy
+	g_date_new_julian
+	g_date_set_day
+	g_date_set_dmy
+	g_date_set_julian
+	g_date_set_month
+	g_date_set_parse
+	g_date_set_time
+	g_date_set_year
+	g_date_strftime
+	g_date_subtract_days
+	g_date_subtract_months
+	g_date_subtract_years
+	g_date_to_struct_tm
+	g_date_valid
+	g_date_valid_day
+	g_date_valid_dmy
+	g_date_valid_julian
+	g_date_valid_month
+	g_date_valid_weekday
+	g_date_valid_year
+	g_direct_equal
+	g_direct_hash
+	g_error_copy
+	g_error_free
+	g_error_matches
+	g_error_new
+	g_error_new_literal
+	g_file_error_from_errno
+	g_file_error_quark
+	g_file_get_contents
+	g_file_open_tmp
+	g_file_test
+	g_filename_from_uri
+	g_filename_from_utf8
+	g_filename_to_uri
+	g_filename_to_utf8
+	g_find_program_in_path
+	g_free
+	g_get_charset
+	g_get_codeset
+	g_get_current_dir
+	g_get_current_time
+	g_get_home_dir
+	g_get_prgname
+	g_get_real_name
+	g_get_tmp_dir
+	g_get_user_name
+	g_getenv
+	g_hash_table_destroy
+	g_hash_table_foreach
+	g_hash_table_foreach_remove
+	g_hash_table_insert
+	g_hash_table_lookup
+	g_hash_table_lookup_extended
+	g_hash_table_new
+	g_hash_table_new_full
+	g_hash_table_remove
+	g_hash_table_size
+	g_hook_alloc
+	g_hook_compare_ids
+	g_hook_destroy
+	g_hook_destroy_link
+	g_hook_find
+	g_hook_find_data
+	g_hook_find_func
+	g_hook_find_func_data
+	g_hook_first_valid
+	g_hook_free
+	g_hook_get
+	g_hook_insert_before
+	g_hook_insert_sorted
+	g_hook_list_clear
+	g_hook_list_init
+	g_hook_list_invoke
+	g_hook_list_invoke_check
+	g_hook_list_marshal
+	g_hook_list_marshal_check
+	g_hook_next_valid
+	g_hook_prepend
+	g_hook_ref
+	g_hook_unref
+	g_iconv
+	g_iconv_close
+	g_iconv_open
+	g_idle_add
+	g_idle_add_full
+	g_idle_funcs
+	g_idle_remove_by_data
+	g_idle_source_new
+	g_int_equal
+	g_int_hash
+	g_io_add_watch
+	g_io_add_watch_full
+	g_io_channel_close
+	g_io_channel_error_from_errno
+	g_io_channel_error_quark
+	g_io_channel_flush
+	g_io_channel_get_buffer_condition
+	g_io_channel_get_buffer_size
+	g_io_channel_get_buffered
+	g_io_channel_get_close_on_unref
+	g_io_channel_get_encoding
+	g_io_channel_get_flags
+	g_io_channel_get_line_term
+	g_io_channel_init
+	g_io_channel_new_file
+	g_io_channel_read
+	g_io_channel_read_chars
+	g_io_channel_read_line
+	g_io_channel_read_line_string
+	g_io_channel_read_to_end
+	g_io_channel_read_unichar
+	g_io_channel_ref
+	g_io_channel_seek
+	g_io_channel_seek_position
+	g_io_channel_set_buffer_size
+	g_io_channel_set_buffered
+	g_io_channel_set_close_on_unref
+	g_io_channel_set_encoding
+	g_io_channel_set_flags
+	g_io_channel_set_line_term
+	g_io_channel_unix_get_fd
+	g_io_channel_unix_new
+	g_io_channel_unref
+	g_io_channel_win32_get_fd
+	g_io_channel_win32_make_pollfd
+	g_io_channel_win32_new_fd
+	g_io_channel_win32_new_messages
+	g_io_channel_win32_new_socket
+	g_io_channel_win32_new_stream_socket
+	g_io_channel_win32_poll
+	g_io_channel_win32_set_debug
+	g_io_channel_write
+	g_io_channel_write_chars
+	g_io_channel_write_unichar
+	g_io_create_watch
+	g_io_watch_funcs
+	g_list_alloc
+	g_list_append
+	g_list_concat
+	g_list_copy
+	g_list_delete_link
+	g_list_find
+	g_list_find_custom
+	g_list_first
+	g_list_foreach
+	g_list_free
+	g_list_free_1
+	g_list_index
+	g_list_insert
+	g_list_insert_before
+	g_list_insert_sorted
+	g_list_last
+	g_list_length
+	g_list_nth
+	g_list_nth_data
+	g_list_position
+	g_list_prepend
+	g_list_remove
+	g_list_remove_all
+	g_list_remove_link
+	g_list_reverse
+	g_list_sort
+	g_list_sort_with_data
+	g_locale_from_utf8
+	g_locale_to_utf8
+	g_log
+	g_log_default_handler
+	g_log_domain_glib
+	g_log_remove_handler
+	g_log_set_always_fatal
+	g_log_set_fatal_mask
+	g_log_set_handler
+	g_logv
+	g_main_context_add_poll
+	g_main_context_check
+	g_main_context_default
+	g_main_context_dispatch
+	g_main_context_find_source_by_funcs_user_data
+	g_main_context_find_source_by_id
+	g_main_context_find_source_by_user_data
+	g_main_context_new
+	g_main_context_get_poll_func
+	g_main_context_iteration
+	g_main_context_pending
+	g_main_context_prepare
+	g_main_context_query
+	g_main_context_remove_poll
+	g_main_context_set_poll_func
+	g_main_loop_is_running
+	g_main_loop_new
+	g_main_loop_quit
+	g_main_loop_ref
+	g_main_loop_run
+	g_main_loop_unref
+	g_malloc
+	g_malloc0
+	g_markup_error_quark
+	g_markup_escape_text
+	g_markup_parse_context_end_parse
+	g_markup_parse_context_free
+	g_markup_parse_context_get_position
+	g_markup_parse_context_new
+	g_markup_parse_context_parse
+	g_mem_chunk_alloc
+	g_mem_chunk_alloc0
+	g_mem_chunk_clean
+	g_mem_chunk_destroy
+	g_mem_chunk_free
+	g_mem_chunk_info
+	g_mem_chunk_new
+	g_mem_chunk_print
+	g_mem_chunk_reset
+	g_mem_init
+	g_mem_profile
+	g_mem_set_vtable
+	g_memdup
+	g_messages_init
+	g_mkstemp
+	g_mutex_init
+	g_node_child_index
+	g_node_child_position
+	g_node_children_foreach
+	g_node_copy
+	g_node_depth
+	g_node_destroy
+	g_node_find
+	g_node_find_child
+	g_node_first_sibling
+	g_node_get_root
+	g_node_insert
+	g_node_insert_after
+	g_node_insert_before
+	g_node_is_ancestor
+	g_node_last_child
+	g_node_last_sibling
+	g_node_max_height
+	g_node_n_children
+	g_node_n_nodes
+	g_node_new
+	g_node_nth_child
+	g_node_prepend
+	g_node_reverse_children
+	g_node_traverse
+	g_node_unlink
+	g_nullify_pointer
+	g_on_error_query
+	g_on_error_stack_trace
+	g_parse_debug_string
+	g_path_get_basename
+	g_path_get_dirname
+	g_path_is_absolute
+	g_path_skip_root
+	g_pattern_match
+	g_pattern_match_string
+	g_pattern_spec_free
+	g_pattern_spec_new
+	g_print
+	g_printerr
+	g_printf_string_upper_bound
+	g_propagate_error
+	g_ptr_array_add
+	g_ptr_array_free
+	g_ptr_array_new
+	g_ptr_array_remove
+	g_ptr_array_remove_fast
+	g_ptr_array_remove_index
+	g_ptr_array_remove_index_fast
+	g_ptr_array_set_size
+	g_ptr_array_sized_new
+	g_ptr_array_sort
+	g_ptr_array_sort_with_data
+	g_qsort_with_data
+	g_quark_from_static_string
+	g_quark_from_string
+	g_quark_to_string
+	g_quark_try_string
+	g_queue_free
+	g_queue_is_empty
+	g_queue_new
+	g_queue_peek_head
+	g_queue_peek_tail
+	g_queue_pop_head
+	g_queue_pop_head_link
+	g_queue_pop_tail
+	g_queue_pop_tail_link
+	g_queue_push_head
+	g_queue_push_head_link
+	g_queue_push_tail
+	g_queue_push_tail_link
+	g_rand_double
+	g_rand_double_range
+	g_rand_free
+	g_rand_int
+	g_rand_int_range
+	g_rand_new
+	g_rand_new_with_seed
+	g_rand_set_seed
+	g_random_double
+	g_random_double_range
+	g_random_int
+	g_random_int_range
+	g_random_set_seed
+	g_realloc
+	g_relation_count
+	g_relation_delete
+	g_relation_destroy
+	g_relation_exists
+	g_relation_index
+	g_relation_insert
+	g_relation_new
+	g_relation_print
+	g_relation_select
+	g_scanner_cur_line
+	g_scanner_cur_position
+	g_scanner_cur_token
+	g_scanner_cur_value
+	g_scanner_destroy
+	g_scanner_eof
+	g_scanner_error
+	g_scanner_get_next_token
+	g_scanner_input_file
+	g_scanner_input_text
+	g_scanner_lookup_symbol
+	g_scanner_new
+	g_scanner_peek_next_token
+	g_scanner_scope_add_symbol
+	g_scanner_scope_foreach_symbol
+	g_scanner_scope_lookup_symbol
+	g_scanner_scope_remove_symbol
+	g_scanner_set_scope
+	g_scanner_sync_file_offset
+	g_scanner_unexp_token
+	g_scanner_warn
+	g_set_error
+	g_set_prgname
+	g_set_print_handler
+	g_set_printerr_handler
+	g_shell_error_quark
+	g_shell_parse_argv
+	g_shell_quote
+	g_shell_unquote
+	g_slist_alloc
+	g_slist_append
+	g_slist_concat
+	g_slist_copy
+	g_slist_delete_link
+	g_slist_find
+	g_slist_find_custom
+	g_slist_foreach
+	g_slist_free
+	g_slist_free_1
+	g_slist_index
+	g_slist_insert
+	g_slist_insert_before
+	g_slist_insert_sorted
+	g_slist_last
+	g_slist_length
+	g_slist_nth
+	g_slist_nth_data
+	g_slist_position
+	g_slist_prepend
+	g_slist_remove
+	g_slist_remove_all
+	g_slist_remove_link
+	g_slist_reverse
+	g_slist_sort
+	g_slist_sort_with_data
+	g_snprintf
+	g_source_add_poll
+	g_source_attach
+	g_source_destroy
+	g_source_get_can_recurse
+	g_source_get_context
+	g_source_get_current_time
+	g_source_get_id
+	g_source_get_priority
+	g_source_new
+	g_source_ref
+	g_source_remove
+	g_source_remove_by_funcs_user_data
+	g_source_remove_by_user_data
+	g_source_set_callback
+	g_source_set_callback_indirect
+	g_source_set_can_recurse
+	g_source_set_priority
+	g_source_unref
+	g_spaced_primes_closest
+	g_spawn_async
+	g_spawn_async_with_pipes
+	g_spawn_command_line_async
+	g_spawn_command_line_sync
+	g_spawn_error_quark
+	g_spawn_sync
+	g_static_mutex_get_mutex_impl
+	g_static_private_free
+	g_static_private_get
+	g_static_private_init
+	g_static_private_set
+	g_static_rec_mutex_free
+	g_static_rec_mutex_init
+	g_static_rec_mutex_lock
+	g_static_rec_mutex_trylock
+	g_static_rec_mutex_unlock
+	g_static_rw_lock_free
+	g_static_rw_lock_init
+	g_static_rw_lock_reader_lock
+	g_static_rw_lock_reader_trylock
+	g_static_rw_lock_reader_unlock
+	g_static_rw_lock_writer_lock
+	g_static_rw_lock_writer_trylock
+	g_static_rw_lock_writer_unlock
+	g_stpcpy
+	g_str_equal
+	g_str_hash
+	g_strcanon
+	g_strcasecmp
+	g_strchomp
+	g_strchug
+	g_strcompress
+	g_strconcat
+	g_strdelimit
+	g_strdown
+	g_strdup
+	g_strdup_printf
+	g_strdup_vprintf
+	g_strdupv
+	g_strerror
+	g_strescape
+	g_strfreev
+	g_string_append
+	g_string_append_c
+	g_string_append_len
+	g_string_append_unichar
+	g_string_ascii_down
+	g_string_assign
+	g_string_chunk_free
+	g_string_chunk_insert
+	g_string_chunk_insert_const
+	g_string_chunk_new
+	g_string_down
+	g_string_equal
+	g_string_erase
+	g_string_free
+	g_string_insert
+	g_string_insert_c
+	g_string_insert_len
+	g_string_insert_unichar
+	g_string_new
+	g_string_new_len
+	g_string_prepend
+	g_string_prepend_c
+	g_string_prepend_len
+	g_string_prepend_unichar
+	g_string_printf
+	g_string_printfa
+	g_string_sized_new
+	g_string_truncate
+	g_string_up
+	g_strjoin
+	g_strjoinv
+	g_strlcat
+	g_strlcpy
+	g_strncasecmp
+	g_strndup
+	g_strnfill
+	g_strreverse
+	g_strsignal
+	g_strsplit
+	g_strrstr
+	g_strrstr_len
+	g_strstr_len
+	g_strtod
+	g_strup
+	g_thread_create_full
+	g_thread_error_quark
+	g_thread_functions_for_glib_use
+	g_thread_join
+	g_thread_exit
+	g_thread_pool_free
+	g_thread_pool_new
+	g_thread_pool_push
+	g_thread_self
+	g_thread_set_priority
+	g_thread_use_default_impl
+	g_threads_got_initialized
+	g_timeout_add
+	g_timeout_add_full
+	g_timeout_funcs
+	g_timeout_source_new
+	g_timer_destroy
+	g_timer_elapsed
+	g_timer_new
+	g_timer_reset
+	g_timer_start
+	g_timer_stop
+	g_trash_stack_height
+	g_trash_stack_peek
+	g_trash_stack_pop
+	g_trash_stack_push
+	g_tree_destroy
+	g_tree_height
+	g_tree_insert
+	g_tree_lookup
+	g_tree_new
+	g_tree_nnodes
+	g_tree_remove
+	g_tree_search
+	g_tree_traverse
+	g_try_malloc
+	g_try_realloc
+	g_tuples_destroy
+	g_tuples_index
+	g_ucs4_to_utf16
+	g_ucs4_to_utf8
+	g_unichar_break_type
+	g_unichar_digit_value
+	g_unichar_isalnum
+	g_unichar_isalpha
+	g_unichar_iscntrl
+	g_unichar_isdefined
+	g_unichar_isdigit
+	g_unichar_isgraph
+	g_unichar_islower
+	g_unichar_isprint
+	g_unichar_ispunct
+	g_unichar_isspace
+	g_unichar_istitle
+	g_unichar_isupper
+	g_unichar_iswide
+	g_unichar_isxdigit
+	g_unichar_to_utf8
+	g_unichar_tolower
+	g_unichar_totitle
+	g_unichar_toupper
+	g_unichar_type
+	g_unichar_validate
+	g_unichar_xdigit_value
+	g_unicode_canonical_decomposition
+	g_unicode_canonical_ordering
+	g_usleep
+	g_utf16_to_ucs4
+	g_utf16_to_utf8
+	g_utf8_casefold
+	g_utf8_collate
+	g_utf8_collate_key
+	g_utf8_find_next_char
+	g_utf8_find_prev_char
+	g_utf8_get_char
+	g_utf8_get_char_validated
+	g_utf8_normalize
+	g_utf8_offset_to_pointer
+	g_utf8_pointer_to_offset
+	g_utf8_prev_char
+	g_utf8_skip
+	g_utf8_strchr
+	g_utf8_strdown
+	g_utf8_strlen
+	g_utf8_strncpy
+	g_utf8_strup
+	g_utf8_to_ucs4
+	g_utf8_to_ucs4_fast
+	g_utf8_to_utf16
+	g_utf8_validate
+	g_vsnprintf
+	g_win32_closedir
+	g_win32_error_message
+	g_win32_ftruncate
+	g_win32_get_package_installation_directory
+	g_win32_get_package_installation_subdirectory
+	g_win32_getlocale
+	g_win32_opendir
+	g_win32_readdir
+	g_win32_rewinddir
+	glib_binary_age
+	glib_interface_age
+	glib_major_version
+	glib_mem_profiler_table
+	glib_micro_version
+	glib_minor_version
+
+; compatibility for older win32 apps, which should
+; not need an update because of simple function renaming
+; and vice versa, i.e.:
+; compatibility of Dia 0.87 with tml's latest Gtk+ version (2000-12-26)
+	g_dirname=g_path_get_dirname
+	g_string_sprintfa=g_string_printfa
+	g_string_sprintf=g_string_printf
diff --git a/graf2d/win32gdk/gdk/src/glib/glib.h b/graf2d/win32gdk/gdk/src/glib/glib.h
index 8b2ee4e769a..0febae39e4e 100644
--- a/graf2d/win32gdk/gdk/src/glib/glib.h
+++ b/graf2d/win32gdk/gdk/src/glib/glib.h
@@ -27,49 +27,49 @@
 #ifndef __G_LIB_H__
 #define __G_LIB_H__
 
-#include <galloca.h>
-#include <garray.h>
-#include <gasyncqueue.h>
-#include <gbacktrace.h>
-#include <gcache.h>
-#include <gcompat.h>
-#include <gcompletion.h>
-#include <gconvert.h>
-#include <gdataset.h>
-#include <gdate.h>
-#include <gerror.h>
-#include <gfileutils.h>
-#include <ghash.h>
-#include <ghook.h>
-#include <giochannel.h>
-#include <glist.h>
-#include <gmacros.h>
-#include <gmain.h>
-#include <gmarkup.h>
-#include <gmem.h>
-#include <gmessages.h>
-#include <gnode.h>
-#include <gprimes.h>
-#include <gqsort.h>
-#include <gquark.h>
-#include <gqueue.h>
-#include <grand.h>
-#include <grel.h>
-#include <gscanner.h>
-#include <gshell.h>
-#include <gslist.h>
-#include <gspawn.h>
-#include <gstrfuncs.h>
-#include <gstring.h>
-#include <gthread.h>
-#include <gthreadpool.h>
-#include <gtimer.h>
-#include <gtree.h>
-#include <g_types.h>
-#include <gunicode.h>
-#include <gutils.h>
-#ifdef G_OS_WIN32
-#include <gwin32.h>
+#include <glib/galloca.h>
+#include <glib/garray.h>
+#include <glib/gasyncqueue.h>
+#include <glib/gbacktrace.h>
+#include <glib/gcache.h>
+#include <glib/gcompletion.h>
+#include <glib/gconvert.h>
+#include <glib/gdataset.h>
+#include <glib/gdate.h>
+#include <glib/gerror.h>
+#include <glib/gfileutils.h>
+#include <glib/ghash.h>
+#include <glib/ghook.h>
+#include <glib/giochannel.h>
+#include <glib/glist.h>
+#include <glib/gmacros.h>
+#include <glib/gmain.h>
+#include <glib/gmarkup.h>
+#include <glib/gmem.h>
+#include <glib/gmessages.h>
+#include <glib/gnode.h>
+#include <glib/gpattern.h>
+#include <glib/gprimes.h>
+#include <glib/gqsort.h>
+#include <glib/gquark.h>
+#include <glib/gqueue.h>
+#include <glib/grand.h>
+#include <glib/grel.h>
+#include <glib/gscanner.h>
+#include <glib/gshell.h>
+#include <glib/gslist.h>
+#include <glib/gspawn.h>
+#include <glib/gstrfuncs.h>
+#include <glib/gstring.h>
+#include <glib/gthread.h>
+#include <glib/gthreadpool.h>
+#include <glib/gtimer.h>
+#include <glib/gtree.h>
+#include <glib/gtypes.h>
+#include <glib/gunicode.h>
+#include <glib/gutils.h>
+#ifdef G_PLATFORM_WIN32
+#include <glib/gwin32.h>
 #endif
 
 #endif /* __G_LIB_H__ */
diff --git a/graf2d/win32gdk/gdk/src/glib/glib.rc b/graf2d/win32gdk/gdk/src/glib/glib.rc
new file mode 100644
index 00000000000..c31875be4c2
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/glib.rc
@@ -0,0 +1,30 @@
+#include <winver.h>
+
+VS_VERSION_INFO VERSIONINFO
+  FILEVERSION 1,3,9,BUILDNUMBER
+  PRODUCTVERSION 1,3,9,0
+  FILEFLAGSMASK 0
+  FILEFLAGS 0
+  FILEOS VOS__WINDOWS32
+  FILETYPE VFT_DLL
+  FILESUBTYPE VFT2_UNKNOWN
+  BEGIN
+    BLOCK "StringFileInfo"
+    BEGIN
+      BLOCK "040904B0"
+      BEGIN
+	VALUE "CompanyName", "The GLib developer community"
+	VALUE "FileDescription", "GLib"
+	VALUE "FileVersion", "1.3.9.BUILDNUMBER"
+	VALUE "InternalName", "libglib-1.3-9"
+	VALUE "LegalCopyright", "Copyright � 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald. Modified by the GLib Team and others 1997-2000."
+	VALUE "OriginalFilename", "libglib-1.3-9.dll"
+	VALUE "ProductName", "GLib"
+	VALUE "ProductVersion", "1.3.9"
+      END
+    END
+    BLOCK "VarFileInfo"
+    BEGIN
+      VALUE "Translation", 0x409, 1200
+    END
+  END
diff --git a/graf2d/win32gdk/gdk/src/glib/glibconfig-bogus.h b/graf2d/win32gdk/gdk/src/glib/glibconfig-bogus.h
new file mode 100644
index 00000000000..b2def861498
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/glibconfig-bogus.h
@@ -0,0 +1,202 @@
+/* glibconfig.h.win32 */
+/* Handcrafted for Microsoft C and gcc -mno-cygwin ("mingw32"). */
+
+#ifndef __G_LIBCONFIG_H__
+#define __G_LIBCONFIG_H__
+
+#include <gmacros.h>
+
+#ifdef _MSC_VER
+/* Make MSVC more pedantic, this is a recommended pragma list
+ * from _Win32_Programming_ by Rector and Newcomer.
+ */
+
+#pragma warning(error:4002)
+#pragma warning(error:4003)
+#pragma warning(1:4010)
+#pragma warning(error:4013)
+#pragma warning(1:4016)
+#pragma warning(error:4020)
+#pragma warning(error:4021)
+#pragma warning(error:4027)
+#pragma warning(error:4029)
+#pragma warning(error:4033)
+#pragma warning(error:4035)
+#pragma warning(error:4045)
+#pragma warning(error:4047)
+#pragma warning(error:4049)
+#pragma warning(error:4053)
+#pragma warning(error:4071)
+#pragma warning(disable:4101)
+#pragma warning(error:4150)
+
+#pragma warning(disable:4244)	// No possible loss of data warnings
+#pragma warning(disable:4305)   // No truncation from int to char warnings
+
+#endif /* _MSC_VER */
+
+#include <limits.h>
+#include <float.h>
+
+#define G_MINFLOAT	FLT_MIN
+#define G_MAXFLOAT	FLT_MAX
+#define G_MINDOUBLE	DBL_MIN
+#define G_MAXDOUBLE	DBL_MAX
+#define G_MINSHORT	SHRT_MIN
+#define G_MAXSHORT	SHRT_MAX
+#define G_MAXUSHORT	USHRT_MAX
+#define G_MININT	INT_MIN
+#define G_MAXINT	INT_MAX
+#define G_MAXUINT	UINT_MAX
+#define G_MINLONG	LONG_MIN
+#define G_MAXLONG	LONG_MAX
+#define G_MAXULONG	ULONG_MAX
+
+G_BEGIN_DECLS
+
+typedef signed char gint8;
+typedef unsigned char guint8;
+typedef signed short gint16;
+typedef unsigned short guint16;
+#define G_GINT16_FORMAT "hi"
+#define G_GUINT16_FORMAT "hu"
+typedef signed int gint32;
+typedef unsigned int guint32;
+#define G_GINT32_FORMAT "i"
+#define G_GUINT32_FORMAT "u"
+
+#define G_HAVE_GINT64 1
+
+/* These are compiler specific */
+#ifdef _MSC_VER
+typedef __int64 gint64;
+typedef unsigned __int64 guint64;
+#define G_GINT64_CONSTANT(val)	(val##i64)
+#elif __GNUC__
+typedef long long gint64;
+typedef unsigned long long guint64;
+#define G_GINT64_CONSTANT(val)	(val##LL)
+#endif
+
+/* These depend on the C library. Using this file means the we
+ * use the (bundled) Microsoft msvcrt.dll.
+ */
+#define G_GINT64_FORMAT "I64i"
+#define G_GUINT64_FORMAT "I64u"
+
+typedef gint32 gssize;
+typedef guint32 gsize;
+
+#define GPOINTER_TO_INT(p)	((gint)(p))
+#define GPOINTER_TO_UINT(p)	((guint)(p))
+
+#define GINT_TO_POINTER(i)	((gpointer)(i))
+#define GUINT_TO_POINTER(u)	((gpointer)(u))
+
+#define g_ATEXIT(proc)	(atexit (proc))
+
+#define g_memmove(d,s,n) G_STMT_START { memmove ((d), (s), (n)); } G_STMT_END
+
+#define GLIB_MAJOR_VERSION 1
+#define GLIB_MINOR_VERSION 3
+#define GLIB_MICRO_VERSION 2
+
+#define G_OS_WIN32
+
+#ifdef	__cplusplus
+#define	G_HAVE_INLINE	1
+#else	/* !__cplusplus */
+#define G_HAVE___INLINE 1
+#endif
+
+#define G_THREADS_ENABLED
+/*
+ * The following program can be used to determine the magic values below:
+ * #include <stdio.h>
+ * #include <pthread.h>
+ * main(int argc, char **argv)
+ * {
+ *   int i;
+ *   pthread_mutex_t m = PTHREAD_MUTEX_INITIALIZER;
+ *   printf ("sizeof (pthread_mutex_t) = %d\n", sizeof (pthread_mutex_t));
+ *   printf ("sizeof (pthread_t) = %d\n", sizeof (pthread_t));
+ *   printf ("PTHREAD_MUTEX_INITIALIZER = ");
+ *   for (i = 0; i < sizeof (pthread_mutex_t); i++)
+ *     printf ("%u, ", ((unsigned char *) &m)[i]);
+ *   printf ("\n");
+ *   exit(0);
+ * }
+ */
+
+#define G_THREADS_IMPL_POSIX
+typedef struct _GStaticMutex GStaticMutex;
+struct _GStaticMutex
+{
+  struct _GMutex *runtime_mutex;
+  union {
+    /* The size of the pad array should be sizeof (pthread_mutex_t) */
+    /* This value corresponds to the 1999-05-30 version of pthreads-win32 */
+    char   pad[4];
+    double dummy_double;
+    void  *dummy_pointer;
+    long   dummy_long;
+  } aligned_pad_u;
+};
+/* This should be NULL followed by the bytes in PTHREAD_MUTEX_INITIALIZER */
+#define	G_STATIC_MUTEX_INIT	{ NULL, { { 255, 255, 255, 255 } } }
+#define	g_static_mutex_get_mutex(mutex) \
+  (g_thread_use_default_impl ? ((GMutex*) &((mutex)->aligned_pad_u)) : \
+   g_static_mutex_get_mutex_impl (&((mutex)->runtime_mutex)))
+/* This represents a system thread as used by the implementation. An
+ * alien implementaion, as loaded by g_thread_init can only count on
+ * "sizeof (gpointer)" bytes to store their info. We however need more
+ * for some of our native implementations. */
+typedef union _GSystemThread GSystemThread;
+union _GSystemThread
+{
+  /* The size of the data array should be sizeof (pthread_t) */
+  /* This value corresponds to the 1999-05-30 version of pthreads-win32 */
+  char   data[4];
+  double dummy_double;
+  void  *dummy_pointer;
+  long   dummy_long;
+};
+
+#define GINT16_TO_LE(val)	((gint16) (val))
+#define GUINT16_TO_LE(val)	((guint16) (val))
+#define GINT16_TO_BE(val)	((gint16) GUINT16_SWAP_LE_BE (val))
+#define GUINT16_TO_BE(val)	(GUINT16_SWAP_LE_BE (val))
+
+#define GINT32_TO_LE(val)	((gint32) (val))
+#define GUINT32_TO_LE(val)	((guint32) (val))
+#define GINT32_TO_BE(val)	((gint32) GUINT32_SWAP_LE_BE (val))
+#define GUINT32_TO_BE(val)	(GUINT32_SWAP_LE_BE (val))
+
+#define GINT64_TO_LE(val)	((gint64) (val))
+#define GUINT64_TO_LE(val)	((guint64) (val))
+#define GINT64_TO_BE(val)	((gint64) GUINT64_SWAP_LE_BE (val))
+#define GUINT64_TO_BE(val)	(GUINT64_SWAP_LE_BE (val))
+
+#define GLONG_TO_LE(val)	((glong) GINT32_TO_LE (val))
+#define GULONG_TO_LE(val)	((gulong) GUINT32_TO_LE (val))
+#define GLONG_TO_BE(val)	((glong) GINT32_TO_BE (val))
+#define GULONG_TO_BE(val)	((gulong) GUINT32_TO_BE (val))
+
+#define GINT_TO_LE(val)		((gint) GINT32_TO_LE (val))
+#define GUINT_TO_LE(val)	((guint) GUINT32_TO_LE (val))
+#define GINT_TO_BE(val)		((gint) GINT32_TO_BE (val))
+#define GUINT_TO_BE(val)	((guint) GUINT32_TO_BE (val))
+#define G_BYTE_ORDER G_LITTLE_ENDIAN
+
+#define GLIB_SYSDEF_POLLIN	= 1
+#define GLIB_SYSDEF_POLLOUT	= 4
+#define GLIB_SYSDEF_POLLPRI	= 2
+#define GLIB_SYSDEF_POLLERR	= 8
+#define GLIB_SYSDEF_POLLHUP	= 16
+#define GLIB_SYSDEF_POLLNVAL	= 32
+
+#define G_MODULE_SUFFIX "dll"
+
+G_END_DECLS
+
+#endif /* __G_LIBCONFIG_H__ */
diff --git a/graf2d/win32gdk/gdk/src/glib/glibconfig.h b/graf2d/win32gdk/gdk/src/glib/glibconfig.h
index b2def861498..e2e23be589a 100644
--- a/graf2d/win32gdk/gdk/src/glib/glibconfig.h
+++ b/graf2d/win32gdk/gdk/src/glib/glibconfig.h
@@ -1,43 +1,19 @@
-/* glibconfig.h.win32 */
-/* Handcrafted for Microsoft C and gcc -mno-cygwin ("mingw32"). */
+/* glibconfig.h.win32.in Merged from two versions generated by configure for gcc and MSVC.  */
+/* glibconfig.h
+ *
+ * This is a generated file.  Please modify 'configure.in'
+ */
 
 #ifndef __G_LIBCONFIG_H__
 #define __G_LIBCONFIG_H__
 
-#include <gmacros.h>
-
-#ifdef _MSC_VER
-/* Make MSVC more pedantic, this is a recommended pragma list
- * from _Win32_Programming_ by Rector and Newcomer.
- */
-
-#pragma warning(error:4002)
-#pragma warning(error:4003)
-#pragma warning(1:4010)
-#pragma warning(error:4013)
-#pragma warning(1:4016)
-#pragma warning(error:4020)
-#pragma warning(error:4021)
-#pragma warning(error:4027)
-#pragma warning(error:4029)
-#pragma warning(error:4033)
-#pragma warning(error:4035)
-#pragma warning(error:4045)
-#pragma warning(error:4047)
-#pragma warning(error:4049)
-#pragma warning(error:4053)
-#pragma warning(error:4071)
-#pragma warning(disable:4101)
-#pragma warning(error:4150)
-
-#pragma warning(disable:4244)	// No possible loss of data warnings
-#pragma warning(disable:4305)   // No truncation from int to char warnings
-
-#endif /* _MSC_VER */
+#include <glib/gmacros.h>
 
 #include <limits.h>
 #include <float.h>
 
+G_BEGIN_DECLS
+
 #define G_MINFLOAT	FLT_MIN
 #define G_MAXFLOAT	FLT_MAX
 #define G_MINDOUBLE	DBL_MIN
@@ -52,7 +28,9 @@
 #define G_MAXLONG	LONG_MAX
 #define G_MAXULONG	ULONG_MAX
 
-G_BEGIN_DECLS
+#define G_MININT64	((gint64)  0x8000000000000000)
+#define G_MAXINT64	((gint64)  0x7fffffffffffffff)
+#define G_MAXUINT64	((guint64) 0xffffffffffffffff)
 
 typedef signed char gint8;
 typedef unsigned char guint8;
@@ -64,89 +42,84 @@ typedef signed int gint32;
 typedef unsigned int guint32;
 #define G_GINT32_FORMAT "i"
 #define G_GUINT32_FORMAT "u"
+#define G_HAVE_GINT64 1          /* deprecated, always true */
 
-#define G_HAVE_GINT64 1
-
-/* These are compiler specific */
-#ifdef _MSC_VER
-typedef __int64 gint64;
+#ifndef _MSC_VER
+G_GNUC_EXTENSION typedef signed long long gint64;
+G_GNUC_EXTENSION typedef unsigned long long guint64;
+#else /* _MSC_VER */
+typedef signed __int64 gint64;
 typedef unsigned __int64 guint64;
-#define G_GINT64_CONSTANT(val)	(val##i64)
-#elif __GNUC__
-typedef long long gint64;
-typedef unsigned long long guint64;
-#define G_GINT64_CONSTANT(val)	(val##LL)
-#endif
+#endif /* _MSC_VER */
 
-/* These depend on the C library. Using this file means the we
- * use the (bundled) Microsoft msvcrt.dll.
- */
+#ifndef _MSC_VER
+#define G_GINT64_CONSTANT(val)	(G_GNUC_EXTENSION (val##LL))
+#else /* _MSC_VER */
+#define G_GINT64_CONSTANT(val)	(val##i64)
+#endif /* _MSC_VER */
 #define G_GINT64_FORMAT "I64i"
 #define G_GUINT64_FORMAT "I64u"
 
-typedef gint32 gssize;
+#define GLIB_SIZEOF_VOID_P 4
+#define GLIB_SIZEOF_LONG   4
+#define GLIB_SIZEOF_SIZE_T 4
+
+typedef gint32  gssize;
 typedef guint32 gsize;
 
-#define GPOINTER_TO_INT(p)	((gint)(p))
-#define GPOINTER_TO_UINT(p)	((guint)(p))
+#define GPOINTER_TO_INT(p)	((gint)   (p))
+#define GPOINTER_TO_UINT(p)	((guint)  (p))
 
-#define GINT_TO_POINTER(i)	((gpointer)(i))
-#define GUINT_TO_POINTER(u)	((gpointer)(u))
+#define GINT_TO_POINTER(i)	((gpointer)  (i))
+#define GUINT_TO_POINTER(u)	((gpointer)  (u))
 
-#define g_ATEXIT(proc)	(atexit (proc))
+#ifdef NeXT /* @#%@! NeXTStep */
+# define g_ATEXIT(proc)	(!atexit (proc))
+#else
+# define g_ATEXIT(proc)	(atexit (proc))
+#endif
+#define G_NATIVE_ATEXIT
 
 #define g_memmove(d,s,n) G_STMT_START { memmove ((d), (s), (n)); } G_STMT_END
 
 #define GLIB_MAJOR_VERSION 1
 #define GLIB_MINOR_VERSION 3
-#define GLIB_MICRO_VERSION 2
+#define GLIB_MICRO_VERSION 15
 
 #define G_OS_WIN32
+#define G_PLATFORM_WIN32
+
+
 
 #ifdef	__cplusplus
 #define	G_HAVE_INLINE	1
 #else	/* !__cplusplus */
+#ifndef _MSC_VER
+#define G_HAVE_INLINE 1
+#else /* _MSC_VER */
+
+#endif /* _MSC_VER */
 #define G_HAVE___INLINE 1
+#ifndef _MSC_VER
+#define G_HAVE___INLINE__ 1
+#endif /* not _MSC_VER */
+#endif	/* !__cplusplus */
+
+#ifndef _MSC_VER
+#ifndef __cplusplus
+# define G_HAVE_ISO_VARARGS 1
 #endif
 
-#define G_THREADS_ENABLED
-/*
- * The following program can be used to determine the magic values below:
- * #include <stdio.h>
- * #include <pthread.h>
- * main(int argc, char **argv)
- * {
- *   int i;
- *   pthread_mutex_t m = PTHREAD_MUTEX_INITIALIZER;
- *   printf ("sizeof (pthread_mutex_t) = %d\n", sizeof (pthread_mutex_t));
- *   printf ("sizeof (pthread_t) = %d\n", sizeof (pthread_t));
- *   printf ("PTHREAD_MUTEX_INITIALIZER = ");
- *   for (i = 0; i < sizeof (pthread_mutex_t); i++)
- *     printf ("%u, ", ((unsigned char *) &m)[i]);
- *   printf ("\n");
- *   exit(0);
- * }
- */
+#define G_HAVE_GNUC_VARARGS 1
+#endif /* not _MSC_VER */
+#define G_HAVE_GROWING_STACK 0
 
-#define G_THREADS_IMPL_POSIX
-typedef struct _GStaticMutex GStaticMutex;
-struct _GStaticMutex
-{
-  struct _GMutex *runtime_mutex;
-  union {
-    /* The size of the pad array should be sizeof (pthread_mutex_t) */
-    /* This value corresponds to the 1999-05-30 version of pthreads-win32 */
-    char   pad[4];
-    double dummy_double;
-    void  *dummy_pointer;
-    long   dummy_long;
-  } aligned_pad_u;
-};
-/* This should be NULL followed by the bytes in PTHREAD_MUTEX_INITIALIZER */
-#define	G_STATIC_MUTEX_INIT	{ NULL, { { 255, 255, 255, 255 } } }
-#define	g_static_mutex_get_mutex(mutex) \
-  (g_thread_use_default_impl ? ((GMutex*) &((mutex)->aligned_pad_u)) : \
-   g_static_mutex_get_mutex_impl (&((mutex)->runtime_mutex)))
+
+#define G_THREADS_ENABLED
+#define G_THREADS_IMPL_WIN32
+typedef struct _GMutex* GStaticMutex;
+#define G_STATIC_MUTEX_INIT NULL
+#define g_static_mutex_get_mutex(mutex) (g_static_mutex_get_mutex_impl (mutex))
 /* This represents a system thread as used by the implementation. An
  * alien implementaion, as loaded by g_thread_init can only count on
  * "sizeof (gpointer)" bytes to store their info. We however need more
@@ -154,8 +127,6 @@ struct _GStaticMutex
 typedef union _GSystemThread GSystemThread;
 union _GSystemThread
 {
-  /* The size of the data array should be sizeof (pthread_t) */
-  /* This value corresponds to the 1999-05-30 version of pthreads-win32 */
   char   data[4];
   double dummy_double;
   void  *dummy_pointer;
@@ -166,37 +137,33 @@ union _GSystemThread
 #define GUINT16_TO_LE(val)	((guint16) (val))
 #define GINT16_TO_BE(val)	((gint16) GUINT16_SWAP_LE_BE (val))
 #define GUINT16_TO_BE(val)	(GUINT16_SWAP_LE_BE (val))
-
 #define GINT32_TO_LE(val)	((gint32) (val))
 #define GUINT32_TO_LE(val)	((guint32) (val))
 #define GINT32_TO_BE(val)	((gint32) GUINT32_SWAP_LE_BE (val))
 #define GUINT32_TO_BE(val)	(GUINT32_SWAP_LE_BE (val))
-
 #define GINT64_TO_LE(val)	((gint64) (val))
 #define GUINT64_TO_LE(val)	((guint64) (val))
 #define GINT64_TO_BE(val)	((gint64) GUINT64_SWAP_LE_BE (val))
 #define GUINT64_TO_BE(val)	(GUINT64_SWAP_LE_BE (val))
-
 #define GLONG_TO_LE(val)	((glong) GINT32_TO_LE (val))
 #define GULONG_TO_LE(val)	((gulong) GUINT32_TO_LE (val))
 #define GLONG_TO_BE(val)	((glong) GINT32_TO_BE (val))
 #define GULONG_TO_BE(val)	((gulong) GUINT32_TO_BE (val))
-
 #define GINT_TO_LE(val)		((gint) GINT32_TO_LE (val))
 #define GUINT_TO_LE(val)	((guint) GUINT32_TO_LE (val))
 #define GINT_TO_BE(val)		((gint) GINT32_TO_BE (val))
 #define GUINT_TO_BE(val)	((guint) GUINT32_TO_BE (val))
 #define G_BYTE_ORDER G_LITTLE_ENDIAN
 
-#define GLIB_SYSDEF_POLLIN	= 1
-#define GLIB_SYSDEF_POLLOUT	= 4
-#define GLIB_SYSDEF_POLLPRI	= 2
-#define GLIB_SYSDEF_POLLERR	= 8
-#define GLIB_SYSDEF_POLLHUP	= 16
-#define GLIB_SYSDEF_POLLNVAL	= 32
+#define GLIB_SYSDEF_POLLIN =1
+#define GLIB_SYSDEF_POLLOUT =4
+#define GLIB_SYSDEF_POLLPRI =2
+#define GLIB_SYSDEF_POLLERR =8
+#define GLIB_SYSDEF_POLLHUP =16
+#define GLIB_SYSDEF_POLLNVAL =32
 
 #define G_MODULE_SUFFIX "dll"
 
 G_END_DECLS
 
-#endif /* __G_LIBCONFIG_H__ */
+#endif /* GLIBCONFIG_H */
diff --git a/graf2d/win32gdk/gdk/src/glib/glibconfig.h.win32 b/graf2d/win32gdk/gdk/src/glib/glibconfig.h.win32
new file mode 100644
index 00000000000..e2e23be589a
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/glibconfig.h.win32
@@ -0,0 +1,169 @@
+/* glibconfig.h.win32.in Merged from two versions generated by configure for gcc and MSVC.  */
+/* glibconfig.h
+ *
+ * This is a generated file.  Please modify 'configure.in'
+ */
+
+#ifndef __G_LIBCONFIG_H__
+#define __G_LIBCONFIG_H__
+
+#include <glib/gmacros.h>
+
+#include <limits.h>
+#include <float.h>
+
+G_BEGIN_DECLS
+
+#define G_MINFLOAT	FLT_MIN
+#define G_MAXFLOAT	FLT_MAX
+#define G_MINDOUBLE	DBL_MIN
+#define G_MAXDOUBLE	DBL_MAX
+#define G_MINSHORT	SHRT_MIN
+#define G_MAXSHORT	SHRT_MAX
+#define G_MAXUSHORT	USHRT_MAX
+#define G_MININT	INT_MIN
+#define G_MAXINT	INT_MAX
+#define G_MAXUINT	UINT_MAX
+#define G_MINLONG	LONG_MIN
+#define G_MAXLONG	LONG_MAX
+#define G_MAXULONG	ULONG_MAX
+
+#define G_MININT64	((gint64)  0x8000000000000000)
+#define G_MAXINT64	((gint64)  0x7fffffffffffffff)
+#define G_MAXUINT64	((guint64) 0xffffffffffffffff)
+
+typedef signed char gint8;
+typedef unsigned char guint8;
+typedef signed short gint16;
+typedef unsigned short guint16;
+#define G_GINT16_FORMAT "hi"
+#define G_GUINT16_FORMAT "hu"
+typedef signed int gint32;
+typedef unsigned int guint32;
+#define G_GINT32_FORMAT "i"
+#define G_GUINT32_FORMAT "u"
+#define G_HAVE_GINT64 1          /* deprecated, always true */
+
+#ifndef _MSC_VER
+G_GNUC_EXTENSION typedef signed long long gint64;
+G_GNUC_EXTENSION typedef unsigned long long guint64;
+#else /* _MSC_VER */
+typedef signed __int64 gint64;
+typedef unsigned __int64 guint64;
+#endif /* _MSC_VER */
+
+#ifndef _MSC_VER
+#define G_GINT64_CONSTANT(val)	(G_GNUC_EXTENSION (val##LL))
+#else /* _MSC_VER */
+#define G_GINT64_CONSTANT(val)	(val##i64)
+#endif /* _MSC_VER */
+#define G_GINT64_FORMAT "I64i"
+#define G_GUINT64_FORMAT "I64u"
+
+#define GLIB_SIZEOF_VOID_P 4
+#define GLIB_SIZEOF_LONG   4
+#define GLIB_SIZEOF_SIZE_T 4
+
+typedef gint32  gssize;
+typedef guint32 gsize;
+
+#define GPOINTER_TO_INT(p)	((gint)   (p))
+#define GPOINTER_TO_UINT(p)	((guint)  (p))
+
+#define GINT_TO_POINTER(i)	((gpointer)  (i))
+#define GUINT_TO_POINTER(u)	((gpointer)  (u))
+
+#ifdef NeXT /* @#%@! NeXTStep */
+# define g_ATEXIT(proc)	(!atexit (proc))
+#else
+# define g_ATEXIT(proc)	(atexit (proc))
+#endif
+#define G_NATIVE_ATEXIT
+
+#define g_memmove(d,s,n) G_STMT_START { memmove ((d), (s), (n)); } G_STMT_END
+
+#define GLIB_MAJOR_VERSION 1
+#define GLIB_MINOR_VERSION 3
+#define GLIB_MICRO_VERSION 15
+
+#define G_OS_WIN32
+#define G_PLATFORM_WIN32
+
+
+
+#ifdef	__cplusplus
+#define	G_HAVE_INLINE	1
+#else	/* !__cplusplus */
+#ifndef _MSC_VER
+#define G_HAVE_INLINE 1
+#else /* _MSC_VER */
+
+#endif /* _MSC_VER */
+#define G_HAVE___INLINE 1
+#ifndef _MSC_VER
+#define G_HAVE___INLINE__ 1
+#endif /* not _MSC_VER */
+#endif	/* !__cplusplus */
+
+#ifndef _MSC_VER
+#ifndef __cplusplus
+# define G_HAVE_ISO_VARARGS 1
+#endif
+
+#define G_HAVE_GNUC_VARARGS 1
+#endif /* not _MSC_VER */
+#define G_HAVE_GROWING_STACK 0
+
+
+#define G_THREADS_ENABLED
+#define G_THREADS_IMPL_WIN32
+typedef struct _GMutex* GStaticMutex;
+#define G_STATIC_MUTEX_INIT NULL
+#define g_static_mutex_get_mutex(mutex) (g_static_mutex_get_mutex_impl (mutex))
+/* This represents a system thread as used by the implementation. An
+ * alien implementaion, as loaded by g_thread_init can only count on
+ * "sizeof (gpointer)" bytes to store their info. We however need more
+ * for some of our native implementations. */
+typedef union _GSystemThread GSystemThread;
+union _GSystemThread
+{
+  char   data[4];
+  double dummy_double;
+  void  *dummy_pointer;
+  long   dummy_long;
+};
+
+#define GINT16_TO_LE(val)	((gint16) (val))
+#define GUINT16_TO_LE(val)	((guint16) (val))
+#define GINT16_TO_BE(val)	((gint16) GUINT16_SWAP_LE_BE (val))
+#define GUINT16_TO_BE(val)	(GUINT16_SWAP_LE_BE (val))
+#define GINT32_TO_LE(val)	((gint32) (val))
+#define GUINT32_TO_LE(val)	((guint32) (val))
+#define GINT32_TO_BE(val)	((gint32) GUINT32_SWAP_LE_BE (val))
+#define GUINT32_TO_BE(val)	(GUINT32_SWAP_LE_BE (val))
+#define GINT64_TO_LE(val)	((gint64) (val))
+#define GUINT64_TO_LE(val)	((guint64) (val))
+#define GINT64_TO_BE(val)	((gint64) GUINT64_SWAP_LE_BE (val))
+#define GUINT64_TO_BE(val)	(GUINT64_SWAP_LE_BE (val))
+#define GLONG_TO_LE(val)	((glong) GINT32_TO_LE (val))
+#define GULONG_TO_LE(val)	((gulong) GUINT32_TO_LE (val))
+#define GLONG_TO_BE(val)	((glong) GINT32_TO_BE (val))
+#define GULONG_TO_BE(val)	((gulong) GUINT32_TO_BE (val))
+#define GINT_TO_LE(val)		((gint) GINT32_TO_LE (val))
+#define GUINT_TO_LE(val)	((guint) GUINT32_TO_LE (val))
+#define GINT_TO_BE(val)		((gint) GINT32_TO_BE (val))
+#define GUINT_TO_BE(val)	((guint) GUINT32_TO_BE (val))
+#define G_BYTE_ORDER G_LITTLE_ENDIAN
+
+#define GLIB_SYSDEF_POLLIN =1
+#define GLIB_SYSDEF_POLLOUT =4
+#define GLIB_SYSDEF_POLLPRI =2
+#define GLIB_SYSDEF_POLLERR =8
+#define GLIB_SYSDEF_POLLHUP =16
+#define GLIB_SYSDEF_POLLNVAL =32
+
+#define G_MODULE_SUFFIX "dll"
+
+G_END_DECLS
+
+#endif /* GLIBCONFIG_H */
diff --git a/graf2d/win32gdk/gdk/src/glib/glibintl.h b/graf2d/win32gdk/gdk/src/glib/glibintl.h
new file mode 100644
index 00000000000..c7a1b6acce7
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/glibintl.h
@@ -0,0 +1,28 @@
+#ifndef __GLIBINTL_H__
+#define __GLIBINTL_H__
+
+#include "config.h"
+
+#ifdef ENABLE_NLS
+
+gchar *_glib_gettext (const gchar *str);
+
+#include <libintl.h>
+#define _(String) _glib_gettext(String)
+
+#ifdef gettext_noop
+#define N_(String) gettext_noop(String)
+#else
+#define N_(String) (String)
+#endif
+#else /* NLS is disabled */
+#define _(String) (String)
+#define N_(String) (String)
+#define textdomain(String) (String)
+#define gettext(String) (String)
+#define dgettext(Domain,String) (String)
+#define dcgettext(Domain,String,Type) (String)
+#define bindtextdomain(Domain,Directory) (Domain) 
+#endif
+
+#endif /* __GLIBINTL_H__ */
diff --git a/graf2d/win32gdk/gdk/src/glib/glist.c b/graf2d/win32gdk/gdk/src/glib/glist.c
new file mode 100644
index 00000000000..3935cb1b116
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/glist.c
@@ -0,0 +1,876 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include "glib.h"
+
+
+#ifndef DISABLE_MEM_POOLS
+struct _GAllocator /* from gmem.c */
+{
+  gchar         *name;
+  guint16        n_preallocs;
+  guint          is_unused : 1;
+  guint          type : 4;
+  GAllocator    *last;
+  GMemChunk     *mem_chunk;
+  GList		*free_lists; /* implementation specific */
+};
+
+static GAllocator	*current_allocator = NULL;
+G_LOCK_DEFINE_STATIC (current_allocator);
+
+/* HOLDS: current_allocator_lock */
+static void
+g_list_validate_allocator (GAllocator *allocator)
+{
+  g_return_if_fail (allocator != NULL);
+  g_return_if_fail (allocator->is_unused == TRUE);
+
+  if (allocator->type != G_ALLOCATOR_LIST)
+    {
+      allocator->type = G_ALLOCATOR_LIST;
+      if (allocator->mem_chunk)
+	{
+	  g_mem_chunk_destroy (allocator->mem_chunk);
+	  allocator->mem_chunk = NULL;
+	}
+    }
+
+  if (!allocator->mem_chunk)
+    {
+      allocator->mem_chunk = g_mem_chunk_new (allocator->name,
+					      sizeof (GList),
+					      sizeof (GList) * allocator->n_preallocs,
+					      G_ALLOC_ONLY);
+      allocator->free_lists = NULL;
+    }
+
+  allocator->is_unused = FALSE;
+}
+
+void
+g_list_push_allocator(GAllocator *allocator)
+{
+  G_LOCK (current_allocator);
+  g_list_validate_allocator (allocator);
+  allocator->last = current_allocator;
+  current_allocator = allocator;
+  G_UNLOCK (current_allocator);
+}
+
+void
+g_list_pop_allocator (void)
+{
+  G_LOCK (current_allocator);
+  if (current_allocator)
+    {
+      GAllocator *allocator;
+
+      allocator = current_allocator;
+      current_allocator = allocator->last;
+      allocator->last = NULL;
+      allocator->is_unused = TRUE;
+    }
+  G_UNLOCK (current_allocator);
+}
+
+static inline GList*
+_g_list_alloc (void)
+{
+  GList *list;
+
+  G_LOCK (current_allocator);
+  if (!current_allocator)
+    {
+      GAllocator *allocator = g_allocator_new ("GLib default GList allocator",
+					       128);
+      g_list_validate_allocator (allocator);
+      allocator->last = NULL;
+      current_allocator = allocator;
+    }
+  if (!current_allocator->free_lists)
+    {
+      list = g_chunk_new (GList, current_allocator->mem_chunk);
+      list->data = NULL;
+    }
+  else
+    {
+      if (current_allocator->free_lists->data)
+	{
+	  list = current_allocator->free_lists->data;
+	  current_allocator->free_lists->data = list->next;
+	  list->data = NULL;
+	}
+      else
+	{
+	  list = current_allocator->free_lists;
+	  current_allocator->free_lists = list->next;
+	}
+    }
+  G_UNLOCK (current_allocator);
+  list->next = NULL;
+  list->prev = NULL;
+  
+  return list;
+}
+
+GList*
+g_list_alloc (void)
+{
+  return _g_list_alloc ();
+}
+
+void
+g_list_free (GList *list)
+{
+  if (list)
+    {
+      GList *last_node = list;
+
+#ifdef ENABLE_GC_FRIENDLY
+      while (last_node->next)
+        {
+          last_node->data = NULL;
+          last_node->prev = NULL;
+          last_node = last_node->next;
+        }
+      last_node->data = NULL;
+      last_node->prev = NULL;
+#else /* !ENABLE_GC_FRIENDLY */
+      list->data = list->next;  
+#endif /* ENABLE_GC_FRIENDLY */
+
+      G_LOCK (current_allocator);
+      last_node->next = current_allocator->free_lists;
+      current_allocator->free_lists = list;
+      G_UNLOCK (current_allocator);
+    }
+}
+
+static inline void
+_g_list_free_1 (GList *list)
+{
+  if (list)
+    {
+      list->data = NULL;  
+
+#ifdef ENABLE_GC_FRIENDLY
+      list->prev = NULL;  
+#endif /* ENABLE_GC_FRIENDLY */
+
+      G_LOCK (current_allocator);
+      list->next = current_allocator->free_lists;
+      current_allocator->free_lists = list;
+      G_UNLOCK (current_allocator);
+    }
+}
+
+void
+g_list_free_1 (GList *list)
+{
+  _g_list_free_1 (list);
+}
+
+#else /* DISABLE_MEM_POOLS */
+
+#define _g_list_alloc g_list_alloc
+GList*
+g_list_alloc (void)
+{
+  GList *list;
+  
+  list = g_new0 (GList, 1);
+  
+  return list;
+}
+
+void
+g_list_free (GList *list)
+{
+  GList *last;
+  
+  while (list)
+    {
+      last = list;
+      list = list->next;
+      g_free (last);
+    }
+}
+
+#define _g_list_free_1 g_list_free_1
+void
+g_list_free_1 (GList *list)
+{
+  g_free (list);
+}
+
+#endif
+
+GList*
+g_list_append (GList	*list,
+	       gpointer	 data)
+{
+  GList *new_list;
+  GList *last;
+  
+  new_list = _g_list_alloc ();
+  new_list->data = data;
+  
+  if (list)
+    {
+      last = g_list_last (list);
+      /* g_assert (last != NULL); */
+      last->next = new_list;
+      new_list->prev = last;
+
+      return list;
+    }
+  else
+    return new_list;
+}
+
+GList*
+g_list_prepend (GList	 *list,
+		gpointer  data)
+{
+  GList *new_list;
+  
+  new_list = _g_list_alloc ();
+  new_list->data = data;
+  
+  if (list)
+    {
+      if (list->prev)
+	{
+	  list->prev->next = new_list;
+	  new_list->prev = list->prev;
+	}
+      list->prev = new_list;
+      new_list->next = list;
+    }
+  
+  return new_list;
+}
+
+GList*
+g_list_insert (GList	*list,
+	       gpointer	 data,
+	       gint	 position)
+{
+  GList *new_list;
+  GList *tmp_list;
+  
+  if (position < 0)
+    return g_list_append (list, data);
+  else if (position == 0)
+    return g_list_prepend (list, data);
+  
+  tmp_list = g_list_nth (list, position);
+  if (!tmp_list)
+    return g_list_append (list, data);
+  
+  new_list = _g_list_alloc ();
+  new_list->data = data;
+  
+  if (tmp_list->prev)
+    {
+      tmp_list->prev->next = new_list;
+      new_list->prev = tmp_list->prev;
+    }
+  new_list->next = tmp_list;
+  tmp_list->prev = new_list;
+  
+  if (tmp_list == list)
+    return new_list;
+  else
+    return list;
+}
+
+GList*
+g_list_insert_before (GList   *list,
+		      GList   *sibling,
+		      gpointer data)
+{
+  if (!list)
+    {
+      list = g_list_alloc ();
+      list->data = data;
+      g_return_val_if_fail (sibling == NULL, list);
+      return list;
+    }
+  else if (sibling)
+    {
+      GList *node;
+
+      node = g_list_alloc ();
+      node->data = data;
+      if (sibling->prev)
+	{
+	  node->prev = sibling->prev;
+	  node->prev->next = node;
+	  node->next = sibling;
+	  sibling->prev = node;
+	  return list;
+	}
+      else
+	{
+	  node->next = sibling;
+	  sibling->prev = node;
+	  g_return_val_if_fail (sibling == list, node);
+	  return node;
+	}
+    }
+  else
+    {
+      GList *last;
+
+      last = list;
+      while (last->next)
+	last = last->next;
+
+      last->next = g_list_alloc ();
+      last->next->data = data;
+      last->next->prev = last;
+
+      return list;
+    }
+}
+
+GList *
+g_list_concat (GList *list1, GList *list2)
+{
+  GList *tmp_list;
+  
+  if (list2)
+    {
+      tmp_list = g_list_last (list1);
+      if (tmp_list)
+	tmp_list->next = list2;
+      else
+	list1 = list2;
+      list2->prev = tmp_list;
+    }
+  
+  return list1;
+}
+
+GList*
+g_list_remove (GList	     *list,
+	       gconstpointer  data)
+{
+  GList *tmp;
+  
+  tmp = list;
+  while (tmp)
+    {
+      if (tmp->data != data)
+	tmp = tmp->next;
+      else
+	{
+	  if (tmp->prev)
+	    tmp->prev->next = tmp->next;
+	  if (tmp->next)
+	    tmp->next->prev = tmp->prev;
+	  
+	  if (list == tmp)
+	    list = list->next;
+	  
+	  _g_list_free_1 (tmp);
+	  
+	  break;
+	}
+    }
+  return list;
+}
+
+GList*
+g_list_remove_all (GList	*list,
+		   gconstpointer data)
+{
+  GList *tmp = list;
+
+  while (tmp)
+    {
+      if (tmp->data != data)
+	tmp = tmp->next;
+      else
+	{
+	  GList *next = tmp->next;
+
+	  if (tmp->prev)
+	    tmp->prev->next = next;
+	  else
+	    list = next;
+	  if (next)
+	    next->prev = tmp->prev;
+
+	  _g_list_free_1 (tmp);
+	  tmp = next;
+	}
+    }
+  return list;
+}
+
+static inline GList*
+_g_list_remove_link (GList *list,
+		     GList *link)
+{
+  if (link)
+    {
+      if (link->prev)
+	link->prev->next = link->next;
+      if (link->next)
+	link->next->prev = link->prev;
+      
+      if (link == list)
+	list = list->next;
+      
+      link->next = NULL;
+      link->prev = NULL;
+    }
+  
+  return list;
+}
+
+GList*
+g_list_remove_link (GList *list,
+		    GList *link)
+{
+  return _g_list_remove_link (list, link);
+}
+
+GList*
+g_list_delete_link (GList *list,
+		    GList *link)
+{
+  list = _g_list_remove_link (list, link);
+  _g_list_free_1 (link);
+
+  return list;
+}
+
+GList*
+g_list_copy (GList *list)
+{
+  GList *new_list = NULL;
+
+  if (list)
+    {
+      GList *last;
+
+      new_list = _g_list_alloc ();
+      new_list->data = list->data;
+      last = new_list;
+      list = list->next;
+      while (list)
+	{
+	  last->next = _g_list_alloc ();
+	  last->next->prev = last;
+	  last = last->next;
+	  last->data = list->data;
+	  list = list->next;
+	}
+    }
+
+  return new_list;
+}
+
+GList*
+g_list_reverse (GList *list)
+{
+  GList *last;
+  
+  last = NULL;
+  while (list)
+    {
+      last = list;
+      list = last->next;
+      last->next = last->prev;
+      last->prev = list;
+    }
+  
+  return last;
+}
+
+GList*
+g_list_nth (GList *list,
+	    guint  n)
+{
+  while ((n-- > 0) && list)
+    list = list->next;
+  
+  return list;
+}
+
+GList*
+g_list_nth_prev (GList *list,
+		 guint  n)
+{
+  while ((n-- > 0) && list)
+    list = list->prev;
+  
+  return list;
+}
+
+gpointer
+g_list_nth_data (GList     *list,
+		 guint      n)
+{
+  while ((n-- > 0) && list)
+    list = list->next;
+  
+  return list ? list->data : NULL;
+}
+
+GList*
+g_list_find (GList         *list,
+	     gconstpointer  data)
+{
+  while (list)
+    {
+      if (list->data == data)
+	break;
+      list = list->next;
+    }
+  
+  return list;
+}
+
+GList*
+g_list_find_custom (GList         *list,
+		    gconstpointer  data,
+		    GCompareFunc   func)
+{
+  g_return_val_if_fail (func != NULL, list);
+
+  while (list)
+    {
+      if (! func (list->data, data))
+	return list;
+      list = list->next;
+    }
+
+  return NULL;
+}
+
+
+gint
+g_list_position (GList *list,
+		 GList *link)
+{
+  gint i;
+
+  i = 0;
+  while (list)
+    {
+      if (list == link)
+	return i;
+      i++;
+      list = list->next;
+    }
+
+  return -1;
+}
+
+gint
+g_list_index (GList         *list,
+	      gconstpointer  data)
+{
+  gint i;
+
+  i = 0;
+  while (list)
+    {
+      if (list->data == data)
+	return i;
+      i++;
+      list = list->next;
+    }
+
+  return -1;
+}
+
+GList*
+g_list_last (GList *list)
+{
+  if (list)
+    {
+      while (list->next)
+	list = list->next;
+    }
+  
+  return list;
+}
+
+GList*
+g_list_first (GList *list)
+{
+  if (list)
+    {
+      while (list->prev)
+	list = list->prev;
+    }
+  
+  return list;
+}
+
+guint
+g_list_length (GList *list)
+{
+  guint length;
+  
+  length = 0;
+  while (list)
+    {
+      length++;
+      list = list->next;
+    }
+  
+  return length;
+}
+
+void
+g_list_foreach (GList	 *list,
+		GFunc	  func,
+		gpointer  user_data)
+{
+  while (list)
+    {
+      GList *next = list->next;
+      (*func) (list->data, user_data);
+      list = next;
+    }
+}
+
+
+GList*
+g_list_insert_sorted (GList        *list,
+                      gpointer      data,
+                      GCompareFunc  func)
+{
+  GList *tmp_list = list;
+  GList *new_list;
+  gint cmp;
+
+  g_return_val_if_fail (func != NULL, list);
+  
+  if (!list) 
+    {
+      new_list = _g_list_alloc ();
+      new_list->data = data;
+      return new_list;
+    }
+  
+  cmp = (*func) (data, tmp_list->data);
+  
+  while ((tmp_list->next) && (cmp > 0))
+    {
+      tmp_list = tmp_list->next;
+      cmp = (*func) (data, tmp_list->data);
+    }
+
+  new_list = _g_list_alloc ();
+  new_list->data = data;
+
+  if ((!tmp_list->next) && (cmp > 0))
+    {
+      tmp_list->next = new_list;
+      new_list->prev = tmp_list;
+      return list;
+    }
+   
+  if (tmp_list->prev)
+    {
+      tmp_list->prev->next = new_list;
+      new_list->prev = tmp_list->prev;
+    }
+  new_list->next = tmp_list;
+  tmp_list->prev = new_list;
+ 
+  if (tmp_list == list)
+    return new_list;
+  else
+    return list;
+}
+
+static GList *
+g_list_sort_merge (GList     *l1, 
+		   GList     *l2,
+		   GFunc     compare_func,
+		   gboolean  use_data,
+		   gpointer  user_data)
+{
+  GList list, *l, *lprev;
+  gint cmp;
+
+  l = &list; 
+  lprev = NULL;
+
+  while (l1 && l2)
+    {
+      if (use_data)
+	cmp = ((GCompareDataFunc) compare_func) (l1->data, l2->data, user_data);
+      else
+	cmp = ((GCompareFunc) compare_func) (l1->data, l2->data);
+
+      if (cmp <= 0)
+        {
+	  l->next = l1;
+	  l = l->next;
+	  l->prev = lprev; 
+	  lprev = l;
+	  l1 = l1->next;
+        } 
+      else 
+	{
+	  l->next = l2;
+	  l = l->next;
+	  l->prev = lprev; 
+	  lprev = l;
+	  l2 = l2->next;
+        }
+    }
+  l->next = l1 ? l1 : l2;
+  l->next->prev = l;
+
+  return list.next;
+}
+
+static GList* 
+g_list_sort_real (GList    *list,
+		  GFunc     compare_func,
+		  gboolean  use_data,
+		  gpointer  user_data)
+{
+  GList *l1, *l2;
+  
+  if (!list) 
+    return NULL;
+  if (!list->next) 
+    return list;
+  
+  l1 = list; 
+  l2 = list->next;
+
+  while ((l2 = l2->next) != NULL)
+    {
+      if ((l2 = l2->next) == NULL) 
+	break;
+      l1 = l1->next;
+    }
+  l2 = l1->next; 
+  l1->next = NULL; 
+
+  return g_list_sort_merge (g_list_sort_real (list, compare_func, use_data, user_data),
+			    g_list_sort_real (l2, compare_func, use_data, user_data),
+			    compare_func,
+			    use_data,
+			    user_data);
+}
+
+GList *
+g_list_sort (GList        *list,
+	     GCompareFunc  compare_func)
+{
+  return g_list_sort_real (list, (GFunc) compare_func, FALSE, NULL);
+			    
+}
+
+GList *
+g_list_sort_with_data (GList            *list,
+		       GCompareDataFunc  compare_func,
+		       gpointer          user_data)
+{
+  return g_list_sort_real (list, (GFunc) compare_func, TRUE, user_data);
+}
+
+static GList* 
+g_list_sort2 (GList       *list,
+	      GCompareFunc compare_func)
+{
+  GSList *runs = NULL;
+  GList *tmp;
+
+  /* Degenerate case.  */
+  if (!list) return NULL;
+
+  /* Assume: list = [12,2,4,11,2,4,6,1,1,12].  */
+  for (tmp = list; tmp; )
+    {
+      GList *tmp2;
+      for (tmp2 = tmp;
+	   tmp2->next && compare_func (tmp2->data, tmp2->next->data) <= 0;
+	   tmp2 = tmp2->next)
+	/* Nothing */;
+      runs = g_slist_append (runs, tmp);
+      tmp = tmp2->next;
+      tmp2->next = NULL;
+    }
+  /* Now: runs = [[12],[2,4,11],[2,4,6],[1,1,12]].  */
+  
+  while (runs->next)
+    {
+      /* We have more than one run.  Merge pairwise.  */
+      GSList *dst, *src, *dstprev = NULL;
+      dst = src = runs;
+      while (src && src->next)
+	{
+	  dst->data = g_list_sort_merge (src->data,
+					 src->next->data,
+					 (GFunc) compare_func,
+					 FALSE, NULL);
+	  dstprev = dst;
+	  dst = dst->next;
+	  src = src->next->next;
+	}
+
+      /* If number of runs was odd, just keep the last.  */
+      if (src)
+	{
+	  dst->data = src->data;
+	  dstprev = dst;
+	  dst = dst->next;
+	}
+
+      dstprev->next = NULL;
+      g_slist_free (dst);
+    }
+
+  /* After 1st loop: runs = [[2,4,11,12],[1,1,2,4,6,12]].  */
+  /* After 2nd loop: runs = [[1,1,2,2,4,4,6,11,12,12]].  */
+
+  list = runs->data;
+  g_slist_free (runs);
+  return list;
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/glist.h b/graf2d/win32gdk/gdk/src/glib/glist.h
index 8f8ae939933..e434d6951c1 100644
--- a/graf2d/win32gdk/gdk/src/glib/glist.h
+++ b/graf2d/win32gdk/gdk/src/glib/glist.h
@@ -27,7 +27,7 @@
 #ifndef __G_LIST_H__
 #define __G_LIST_H__
 
-#include <gmem.h>
+#include <glib/gmem.h>
 
 G_BEGIN_DECLS
 
@@ -42,7 +42,7 @@ struct _GList
 
 /* Doubly linked lists
  */
-void     g_list_push_allocator (GAllocator       *allocato);
+void     g_list_push_allocator (GAllocator       *allocator);
 void     g_list_pop_allocator  (void);
 GList*   g_list_alloc          (void);
 void     g_list_free           (GList            *list);
@@ -57,10 +57,15 @@ GList*   g_list_insert         (GList            *list,
 GList*   g_list_insert_sorted  (GList            *list,
 				gpointer          data,
 				GCompareFunc      func);
+GList*   g_list_insert_before  (GList            *list,
+				GList            *sibling,
+				gpointer          data);
 GList*   g_list_concat         (GList            *list1,
 				GList            *list2);
 GList*   g_list_remove         (GList            *list,
 				gconstpointer     data);
+GList*   g_list_remove_all     (GList            *list,
+				gconstpointer     data);
 GList*   g_list_remove_link    (GList            *list,
 				GList            *llink);
 GList*   g_list_delete_link    (GList            *list,
@@ -69,6 +74,8 @@ GList*   g_list_reverse        (GList            *list);
 GList*   g_list_copy           (GList            *list);
 GList*   g_list_nth            (GList            *list,
 				guint             n);
+GList*   g_list_nth_prev       (GList            *list,
+				guint             n);
 GList*   g_list_find           (GList            *list,
 				gconstpointer     data);
 GList*   g_list_find_custom    (GList            *list,
@@ -87,7 +94,7 @@ void     g_list_foreach        (GList            *list,
 GList*   g_list_sort           (GList            *list,
 				GCompareFunc      compare_func);
 GList*   g_list_sort_with_data (GList            *list,
-				GCompareFuncData  compare_func,
+				GCompareDataFunc  compare_func,
 				gpointer          user_data);
 gpointer g_list_nth_data       (GList            *list,
 				guint             n);
diff --git a/graf2d/win32gdk/gdk/src/glib/gmacros.h b/graf2d/win32gdk/gdk/src/glib/gmacros.h
index 633d7fa3cc8..896948e8735 100644
--- a/graf2d/win32gdk/gdk/src/glib/gmacros.h
+++ b/graf2d/win32gdk/gdk/src/glib/gmacros.h
@@ -31,6 +31,10 @@
 #ifndef __G_MACROS_H__
 #define __G_MACROS_H__
 
+/* We include stddef.h to get the system's definition of NULL
+ */
+#include <stddef.h>
+
 /* Here we provide G_GNUC_EXTENSION as an alias for __extension__,
  * where this is valid. This allows for warningless compilation of
  * "long long" types even in the presence of '-ansi -pedantic'. 
@@ -63,6 +67,8 @@
   __attribute__((const))
 #define G_GNUC_UNUSED                           \
   __attribute__((unused))
+#define G_GNUC_NO_INSTRUMENT			\
+  __attribute__((no_instrument_function))
 #else   /* !__GNUC__ */
 #define G_GNUC_PRINTF( format_idx, arg_idx )
 #define G_GNUC_SCANF( format_idx, arg_idx )
@@ -70,6 +76,7 @@
 #define G_GNUC_NORETURN
 #define G_GNUC_CONST
 #define G_GNUC_UNUSED
+#define G_GNUC_NO_INSTRUMENT
 #endif  /* !__GNUC__ */
 
 /* Wrap the gcc __PRETTY_FUNCTION__ and __FUNCTION__ variables with
@@ -141,6 +148,11 @@
  */
 #define G_N_ELEMENTS(arr)		(sizeof (arr) / sizeof ((arr)[0]))
 
+/* Macros by analogy to GINT_TO_POINTER, GPOINTER_TO_INT
+ */
+#define GPOINTER_TO_SIZE(p)	((gsize) (p))
+#define GSIZE_TO_POINTER(s)	((gpointer) (gsize) (s))
+
 /* Provide convenience macros for handling structure
  * fields through their offsets.
  */
diff --git a/graf2d/win32gdk/gdk/src/glib/gmain.c b/graf2d/win32gdk/gdk/src/glib/gmain.c
new file mode 100644
index 00000000000..fe152f3a427
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gmain.c
@@ -0,0 +1,3203 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * gmain.c: Main loop abstraction, timeouts, and idle functions
+ * Copyright 1998 Owen Taylor
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#include "config.h"
+
+/* uncomment the next line to get poll() debugging info */
+/* #define G_MAIN_POLL_DEBUG */
+
+#include "glib.h"
+#include <sys/types.h>
+#include <time.h>
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif /* HAVE_SYS_TIME_H */
+#ifdef GLIB_HAVE_SYS_POLL_H
+#  include <sys/poll.h>
+#  undef events	 /* AIX 4.1.5 & 4.3.2 define this for SVR3,4 compatibility */
+#  undef revents /* AIX 4.1.5 & 4.3.2 define this for SVR3,4 compatibility */
+#endif /* GLIB_HAVE_SYS_POLL_H */
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif /* HAVE_UNISTD_H */
+#include <errno.h>
+
+#ifdef G_OS_WIN32
+#define STRICT
+#include <windows.h>
+#endif /* G_OS_WIN32 */
+
+#ifdef G_OS_BEOS
+#include <net/socket.h>
+#endif /* G_OS_BEOS */
+
+/* Types */
+
+typedef struct _GTimeoutSource GTimeoutSource;
+typedef struct _GPollRec GPollRec;
+typedef struct _GSourceCallback GSourceCallback;
+
+typedef enum
+{
+  G_SOURCE_READY = 1 << G_HOOK_FLAG_USER_SHIFT,
+  G_SOURCE_CAN_RECURSE = 1 << (G_HOOK_FLAG_USER_SHIFT + 1)
+} GSourceFlags;
+
+#ifdef G_THREADS_ENABLED
+typedef struct _GMainWaiter GMainWaiter;
+
+struct _GMainWaiter
+{
+  GCond *cond;
+  GMutex *mutex;
+};
+#endif  
+
+struct _GMainContext
+{
+#ifdef G_THREADS_ENABLED
+  /* The following lock is used for both the list of sources
+   * and the list of poll records
+   */
+  GStaticMutex mutex;
+  GCond *cond;
+  GThread *owner;
+  guint owner_count;
+  GSList *waiters;
+#endif  
+
+  guint ref_count;
+
+  GPtrArray *pending_dispatches;
+  gint timeout;			/* Timeout for current iteration */
+
+  guint next_id;
+  GSource *source_list;
+  gint in_check_or_prepare;
+
+  GPollRec *poll_records;
+  GPollRec *poll_free_list;
+  GMemChunk *poll_chunk;
+  guint n_poll_records;
+  GPollFD *cached_poll_array;
+  guint cached_poll_array_size;
+
+#ifdef G_THREADS_ENABLED  
+#ifndef G_OS_WIN32
+/* this pipe is used to wake up the main loop when a source is added.
+ */
+  gint wake_up_pipe[2];
+#else /* G_OS_WIN32 */
+  HANDLE wake_up_semaphore;
+#endif /* G_OS_WIN32 */
+
+  GPollFD wake_up_rec;
+  gboolean poll_waiting;
+
+/* Flag indicating whether the set of fd's changed during a poll */
+  gboolean poll_changed;
+#endif /* G_THREADS_ENABLED */
+
+  GPollFunc poll_func;
+
+  GTimeVal current_time;
+  gboolean time_is_current;
+};
+
+struct _GSourceCallback
+{
+  guint ref_count;
+  GSourceFunc func;
+  gpointer    data;
+  GDestroyNotify notify;
+};
+
+struct _GMainLoop
+{
+  GMainContext *context;
+  gboolean is_running;
+  guint ref_count;
+};
+
+struct _GTimeoutSource
+{
+  GSource     source;
+  GTimeVal    expiration;
+  gint        interval;
+};
+
+struct _GPollRec
+{
+  gint priority;
+  GPollFD *fd;
+  GPollRec *next;
+};
+
+#ifdef G_THREADS_ENABLED
+#define LOCK_CONTEXT(context) g_static_mutex_lock (&context->mutex)
+#define UNLOCK_CONTEXT(context) g_static_mutex_unlock (&context->mutex)
+#define G_THREAD_SELF g_thread_self ()
+#else
+#define LOCK_CONTEXT(context) (void)0
+#define UNLOCK_CONTEXT(context) (void)0
+#define G_THREAD_SELF NULL
+#endif
+
+#define SOURCE_DESTROYED(source) (((source)->flags & G_HOOK_FLAG_ACTIVE) == 0)
+
+#define SOURCE_UNREF(source, context)                       \
+   G_STMT_START {                                           \
+    if ((source)->ref_count > 1)                            \
+      (source)->ref_count--;                                \
+    else                                                    \
+      g_source_unref_internal ((source), (context), TRUE);  \
+   } G_STMT_END
+
+
+/* Forward declarations */
+
+static void g_source_unref_internal             (GSource      *source,
+						 GMainContext *context,
+						 gboolean      have_lock);
+static void g_source_destroy_internal           (GSource      *source,
+						 GMainContext *context,
+						 gboolean      have_lock);
+static void g_main_context_poll                 (GMainContext *context,
+						 gint          timeout,
+						 gint          priority,
+						 GPollFD      *fds,
+						 gint          n_fds);
+static void g_main_context_add_poll_unlocked    (GMainContext *context,
+						 gint          priority,
+						 GPollFD      *fd);
+static void g_main_context_remove_poll_unlocked (GMainContext *context,
+						 GPollFD      *fd);
+static void g_main_context_wakeup_unlocked      (GMainContext *context);
+
+static gboolean g_timeout_prepare  (GSource     *source,
+				    gint        *timeout);
+static gboolean g_timeout_check    (GSource     *source);
+static gboolean g_timeout_dispatch (GSource     *source,
+				    GSourceFunc  callback,
+				    gpointer     user_data);
+static gboolean g_idle_prepare     (GSource     *source,
+				    gint        *timeout);
+static gboolean g_idle_check       (GSource     *source);
+static gboolean g_idle_dispatch    (GSource     *source,
+				    GSourceFunc  callback,
+				    gpointer     user_data);
+
+G_LOCK_DEFINE_STATIC (main_loop);
+static GMainContext *default_main_context;
+
+#if defined(G_PLATFORM_WIN32) && defined(__GNUC__)
+__declspec(dllexport)
+#endif
+GSourceFuncs g_timeout_funcs =
+{
+  g_timeout_prepare,
+  g_timeout_check,
+  g_timeout_dispatch,
+  NULL
+};
+
+#if defined(G_PLATFORM_WIN32) && defined(__GNUC__)
+__declspec(dllexport)
+#endif
+GSourceFuncs g_idle_funcs =
+{
+  g_idle_prepare,
+  g_idle_check,
+  g_idle_dispatch,
+  NULL
+};
+
+#ifdef HAVE_POLL
+/* SunOS has poll, but doesn't provide a prototype. */
+#  if defined (sun) && !defined (__SVR4)
+extern gint poll (GPollFD *ufds, guint nfsd, gint timeout);
+#  endif  /* !sun */
+#else	/* !HAVE_POLL */
+
+#ifdef G_OS_WIN32
+
+static gint
+g_poll (GPollFD *fds,
+	guint    nfds,
+	gint     timeout)
+{
+  HANDLE handles[MAXIMUM_WAIT_OBJECTS];
+  gboolean poll_msgs = FALSE;
+  GPollFD *f;
+  DWORD ready;
+  MSG msg;
+  UINT timer;
+  gint nhandles = 0;
+
+  for (f = fds; f < &fds[nfds]; ++f)
+    if (f->fd >= 0)
+      {
+	if (f->events & G_IO_IN)
+	  {
+	    if (f->fd == G_WIN32_MSG_HANDLE)
+	      poll_msgs = TRUE;
+	    else
+	      {
+#ifdef G_MAIN_POLL_DEBUG
+		g_print ("g_poll: waiting for %#x\n", f->fd);
+#endif
+		handles[nhandles++] = (HANDLE) f->fd;
+	      }
+	  }
+      }
+
+  if (timeout == -1)
+    timeout = INFINITE;
+
+  if (poll_msgs)
+    {
+      /* Waiting for messages, and maybe events
+       * -> First PeekMessage
+       */
+#ifdef G_MAIN_POLL_DEBUG
+      g_print ("PeekMessage\n");
+#endif
+      if (PeekMessage (&msg, NULL, 0, 0, PM_NOREMOVE))
+	ready = WAIT_OBJECT_0 + nhandles;
+      else
+	{
+	  if (nhandles == 0)
+	    {
+	      /* Waiting just for messages */
+	      if (timeout == INFINITE)
+		{
+		  /* Infinite timeout
+		   * -> WaitMessage
+		   */
+#ifdef G_MAIN_POLL_DEBUG
+		  g_print ("WaitMessage\n");
+#endif
+		  if (!WaitMessage ())
+		    g_warning (G_STRLOC ": WaitMessage() failed");
+		  ready = WAIT_OBJECT_0 + nhandles;
+		}
+	      else if (timeout == 0)
+		{
+		  /* Waiting just for messages, zero timeout.
+		   * If we got here, there was no message
+		   */
+		  ready = WAIT_TIMEOUT;
+		}
+	      else
+		{
+		  /* Waiting just for messages, some timeout
+		   * -> Set a timer, wait for message,
+		   * kill timer, use PeekMessage
+		   */
+		  timer = SetTimer (NULL, 0, timeout, NULL);
+		  if (timer == 0)
+		    g_warning (G_STRLOC ": SetTimer() failed");
+		  else
+		    {
+#ifdef G_MAIN_POLL_DEBUG
+		      g_print ("WaitMessage\n");
+#endif
+		      WaitMessage ();
+		      KillTimer (NULL, timer);
+#ifdef G_MAIN_POLL_DEBUG
+		      g_print ("PeekMessage\n");
+#endif
+		      if (PeekMessage (&msg, NULL, 0, 0, PM_NOREMOVE)
+			  && msg.message != WM_TIMER)
+			ready = WAIT_OBJECT_0;
+		      else
+			ready = WAIT_TIMEOUT;
+		    }
+		}
+	    }
+	  else
+	    {
+	      /* Wait for either message or event
+	       * -> Use MsgWaitForMultipleObjects
+	       */
+#ifdef G_MAIN_POLL_DEBUG
+	      g_print ("MsgWaitForMultipleObjects(%d, %d)\n", nhandles, timeout);
+#endif
+	      ready = MsgWaitForMultipleObjects (nhandles, handles, FALSE,
+						 timeout, QS_ALLINPUT);
+
+	      if (ready == WAIT_FAILED)
+		g_warning (G_STRLOC ": MsgWaitForMultipleObjects() failed");
+	    }
+	}
+    }
+  else if (nhandles == 0)
+    {
+      /* Wait for nothing (huh?) */
+      return 0;
+    }
+  else
+    {
+      /* Wait for just events
+       * -> Use WaitForMultipleObjects
+       */
+#ifdef G_MAIN_POLL_DEBUG
+      g_print ("WaitForMultipleObjects(%d, %d)\n", nhandles, timeout);
+#endif
+      ready = WaitForMultipleObjects (nhandles, handles, FALSE, timeout);
+      if (ready == WAIT_FAILED)
+	g_warning (G_STRLOC ": WaitForMultipleObjects() failed");
+    }
+
+#ifdef G_MAIN_POLL_DEBUG
+  g_print ("wait returns %d%s\n",
+	   ready,
+	   (ready == WAIT_FAILED ? " (WAIT_FAILED)" :
+	    (ready == WAIT_TIMEOUT ? " (WAIT_TIMEOUT)" :
+	     (poll_msgs && ready == WAIT_OBJECT_0 + nhandles ? " (msg)" : ""))));
+#endif
+  for (f = fds; f < &fds[nfds]; ++f)
+    f->revents = 0;
+
+  if (ready == WAIT_FAILED)
+    return -1;
+  else if (ready == WAIT_TIMEOUT)
+    return 0;
+  else if (poll_msgs && ready == WAIT_OBJECT_0 + nhandles)
+    {
+      for (f = fds; f < &fds[nfds]; ++f)
+	if (f->fd >= 0)
+	  {
+	    if (f->events & G_IO_IN)
+	      if (f->fd == G_WIN32_MSG_HANDLE)
+		f->revents |= G_IO_IN;
+	  }
+    }
+#if TEST_WITHOUT_THIS
+  else if (ready >= WAIT_OBJECT_0 && ready < WAIT_OBJECT_0 + nhandles)
+    for (f = fds; f < &fds[nfds]; ++f)
+      {
+	if ((f->events & G_IO_IN)
+	    && f->fd == (gint) handles[ready - WAIT_OBJECT_0])
+	  {
+	    f->revents |= G_IO_IN;
+#ifdef G_MAIN_POLL_DEBUG
+	    g_print ("g_poll: got event %#x\n", f->fd);
+#endif
+#if 0
+	    ResetEvent ((HANDLE) f->fd);
+#endif
+	  }
+      }
+#endif
+    
+  return 1;
+}
+
+#else  /* !G_OS_WIN32 */
+
+/* The following implementation of poll() comes from the GNU C Library.
+ * Copyright (C) 1994, 1996, 1997 Free Software Foundation, Inc.
+ */
+
+#include <string.h> /* for bzero on BSD systems */
+
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#endif /* HAVE_SYS_SELECT_H */
+
+#ifdef G_OS_BEOS
+#undef NO_FD_SET
+#endif /* G_OS_BEOS */
+
+#ifndef NO_FD_SET
+#  define SELECT_MASK fd_set
+#else /* !NO_FD_SET */
+#  ifndef _AIX
+typedef long fd_mask;
+#  endif /* _AIX */
+#  ifdef _IBMR2
+#    define SELECT_MASK void
+#  else /* !_IBMR2 */
+#    define SELECT_MASK int
+#  endif /* !_IBMR2 */
+#endif /* !NO_FD_SET */
+
+static gint 
+g_poll (GPollFD *fds,
+	guint    nfds,
+	gint     timeout)
+{
+  struct timeval tv;
+  SELECT_MASK rset, wset, xset;
+  GPollFD *f;
+  int ready;
+  int maxfd = 0;
+
+  FD_ZERO (&rset);
+  FD_ZERO (&wset);
+  FD_ZERO (&xset);
+
+  for (f = fds; f < &fds[nfds]; ++f)
+    if (f->fd >= 0)
+      {
+	if (f->events & G_IO_IN)
+	  FD_SET (f->fd, &rset);
+	if (f->events & G_IO_OUT)
+	  FD_SET (f->fd, &wset);
+	if (f->events & G_IO_PRI)
+	  FD_SET (f->fd, &xset);
+	if (f->fd > maxfd && (f->events & (G_IO_IN|G_IO_OUT|G_IO_PRI)))
+	  maxfd = f->fd;
+      }
+
+  tv.tv_sec = timeout / 1000;
+  tv.tv_usec = (timeout % 1000) * 1000;
+
+  ready = select (maxfd + 1, &rset, &wset, &xset,
+		  timeout == -1 ? NULL : &tv);
+  if (ready > 0)
+    for (f = fds; f < &fds[nfds]; ++f)
+      {
+	f->revents = 0;
+	if (f->fd >= 0)
+	  {
+	    if (FD_ISSET (f->fd, &rset))
+	      f->revents |= G_IO_IN;
+	    if (FD_ISSET (f->fd, &wset))
+	      f->revents |= G_IO_OUT;
+	    if (FD_ISSET (f->fd, &xset))
+	      f->revents |= G_IO_PRI;
+	  }
+      }
+
+  return ready;
+}
+
+#endif /* !G_OS_WIN32 */
+
+#endif	/* !HAVE_POLL */
+
+/**
+ * g_main_context_ref:
+ * @context: a #GMainContext
+ * 
+ * Increases the reference count on a #GMainContext object by one.
+ **/
+void
+g_main_context_ref (GMainContext *context)
+{
+  g_return_if_fail (context != NULL);
+  g_return_if_fail (context->ref_count > 0); 
+
+  LOCK_CONTEXT (context);
+  
+  context->ref_count++;
+
+  UNLOCK_CONTEXT (context);
+}
+
+static void
+g_main_context_unref_and_unlock (GMainContext *context)
+{
+  GSource *source;
+
+  context->ref_count--;
+
+  if (context->ref_count != 0)
+    {
+      UNLOCK_CONTEXT (context);
+      return;
+    }
+
+  source = context->source_list;
+  while (source)
+    {
+      GSource *next = source->next;
+      g_source_destroy_internal (source, context, TRUE);
+      source = next;
+    }
+  UNLOCK_CONTEXT (context);
+
+#ifdef G_THREADS_ENABLED  
+  g_static_mutex_free (&context->mutex);
+#endif
+
+  g_ptr_array_free (context->pending_dispatches, TRUE);
+  g_free (context->cached_poll_array);
+  
+  g_mem_chunk_destroy (context->poll_chunk);
+
+#ifdef G_THREADS_ENABLED
+  if (g_thread_supported())
+    {
+#ifndef G_OS_WIN32
+      close (context->wake_up_pipe[0]);
+      close (context->wake_up_pipe[1]);
+#else
+      CloseHandle (context->wake_up_semaphore);
+#endif
+    }
+#endif
+  
+  g_free (context);
+}
+
+/**
+ * g_main_context_unref:
+ * @context: a #GMainContext
+ * 
+ * Decreases the reference count on a #GMainContext object by one. If
+ * the result is zero, free the context and free all associated memory.
+ **/
+void
+g_main_context_unref (GMainContext *context)
+{
+  g_return_if_fail (context != NULL);
+  g_return_if_fail (context->ref_count > 0); 
+
+  LOCK_CONTEXT (context);
+  g_main_context_unref_and_unlock (context);
+}
+
+/**
+ * g_main_context_new:
+ * 
+ * Creates a new #GMainContext strcuture
+ * 
+ * Return value: the new #GMainContext
+ **/
+GMainContext *
+g_main_context_new ()
+{
+  GMainContext *context = g_new0 (GMainContext, 1);
+
+#ifdef G_THREADS_ENABLED
+  g_static_mutex_init (&context->mutex);
+
+  context->owner = NULL;
+  context->waiters = NULL;
+#endif
+      
+  context->ref_count = 1;
+
+      context->next_id = 1;
+      
+      context->source_list = NULL;
+
+#if HAVE_POLL
+      context->poll_func = (GPollFunc)poll;
+#else
+      context->poll_func = g_poll;
+#endif
+
+      context->cached_poll_array = NULL;
+      context->cached_poll_array_size = 0;
+      
+      context->pending_dispatches = g_ptr_array_new ();
+      
+      context->time_is_current = FALSE;
+
+#ifdef G_THREADS_ENABLED
+      if (g_thread_supported ())
+	{
+#ifndef G_OS_WIN32
+	  if (pipe (context->wake_up_pipe) < 0)
+	    g_error ("Cannot create pipe main loop wake-up: %s\n",
+		     g_strerror (errno));
+	  
+	  context->wake_up_rec.fd = context->wake_up_pipe[0];
+	  context->wake_up_rec.events = G_IO_IN;
+	  g_main_context_add_poll_unlocked (context, 0, &context->wake_up_rec);
+#else
+	  context->wake_up_semaphore = CreateSemaphore (NULL, 0, 100, NULL);
+	  if (context->wake_up_semaphore == NULL)
+	    g_error ("Cannot create wake-up semaphore: %s",
+		     g_win32_error_message (GetLastError ()));
+	  context->wake_up_rec.fd = (gint) context->wake_up_semaphore;
+	  context->wake_up_rec.events = G_IO_IN;
+#ifdef G_MAIN_POLL_DEBUG
+	  g_print ("wake-up semaphore: %#x\n", (guint) context->wake_up_semaphore);
+#endif
+	  g_main_context_add_poll_unlocked (context, 0, &context->wake_up_rec);
+#endif
+	}
+#endif
+
+  return context;
+}
+
+/**
+ * g_main_context_default:
+ * 
+ * Return the default main context. This is the main context used
+ * for main loop functions when a main loop is not explicitly
+ * specified.
+ * 
+ * Return value: the default main context.
+ **/
+GMainContext *
+g_main_context_default (void)
+{
+  /* Slow, but safe */
+  
+  G_LOCK (main_loop);
+
+  if (!default_main_context)
+    default_main_context = g_main_context_new ();
+
+  G_UNLOCK (main_loop);
+
+  return default_main_context;
+}
+
+/* Hooks for adding to the main loop */
+
+/**
+ * g_source_new:
+ * @source_funcs: structure containing functions that implement
+ *                the sources behavior.
+ * @struct_size: size of the #GSource structure to create
+ * 
+ * Create a new GSource structure. The size is specified to
+ * allow creating structures derived from GSource that contain
+ * additional data. The size passed in must be at least
+ * sizeof(GSource).
+ * 
+ * The source will not initially be associated with any #GMainContext
+ * and must be added to one with g_source_add() before it will be
+ * executed.
+ * 
+ * Return value: the newly create #GSource
+ **/
+GSource *
+g_source_new (GSourceFuncs *source_funcs,
+	      guint         struct_size)
+{
+  GSource *source;
+
+  g_return_val_if_fail (source_funcs != NULL, NULL);
+  g_return_val_if_fail (struct_size >= sizeof (GSource), NULL);
+  
+  source = (GSource*) g_malloc0 (struct_size);
+
+  source->source_funcs = source_funcs;
+  source->ref_count = 1;
+  
+  source->priority = G_PRIORITY_DEFAULT;
+
+  source->flags = G_HOOK_FLAG_ACTIVE;
+
+  /* NULL/0 initialization for all other fields */
+  
+  return source;
+}
+
+/* Holds context's lock
+ */
+static void
+g_source_list_add (GSource      *source,
+		   GMainContext *context)
+{
+  GSource *tmp_source, *last_source;
+  
+  last_source = NULL;
+  tmp_source = context->source_list;
+  while (tmp_source && tmp_source->priority <= source->priority)
+    {
+      last_source = tmp_source;
+      tmp_source = tmp_source->next;
+    }
+
+  source->next = tmp_source;
+  if (tmp_source)
+    tmp_source->prev = source;
+  
+  source->prev = last_source;
+  if (last_source)
+    last_source->next = source;
+  else
+    context->source_list = source;
+}
+
+/* Holds context's lock
+ */
+static void
+g_source_list_remove (GSource      *source,
+		      GMainContext *context)
+{
+  if (source->prev)
+    source->prev->next = source->next;
+  else
+    context->source_list = source->next;
+
+  if (source->next)
+    source->next->prev = source->prev;
+
+  source->prev = NULL;
+  source->next = NULL;
+}
+
+/**
+ * g_source_attach:
+ * @source: a #GSource
+ * @context: a #GMainContext (if %NULL, the default context will be used)
+ * 
+ * Adds a #GSource to a @context so that it will be executed within
+ * that context.
+ *
+ * Return value: the ID for the source within the #GMainContext
+ **/
+guint
+g_source_attach (GSource      *source,
+		 GMainContext *context)
+{
+  guint result = 0;
+  GSList *tmp_list;
+
+  g_return_val_if_fail (source->context == NULL, 0);
+  g_return_val_if_fail (!SOURCE_DESTROYED (source), 0);
+  
+  if (!context)
+    context = g_main_context_default ();
+
+  LOCK_CONTEXT (context);
+
+  source->context = context;
+  result = source->id = context->next_id++;
+
+  source->ref_count++;
+  g_source_list_add (source, context);
+
+  tmp_list = source->poll_fds;
+  while (tmp_list)
+    {
+      g_main_context_add_poll_unlocked (context, source->priority, tmp_list->data);
+      tmp_list = tmp_list->next;
+    }
+
+#ifdef G_THREADS_ENABLED
+  /* Now wake up the main loop if it is waiting in the poll() */
+  g_main_context_wakeup_unlocked (context);
+#endif
+
+  UNLOCK_CONTEXT (context);
+
+  return result;
+}
+
+static void
+g_source_destroy_internal (GSource      *source,
+			   GMainContext *context,
+			   gboolean      have_lock)
+{
+  if (!have_lock)
+    LOCK_CONTEXT (context);
+  
+  if (!SOURCE_DESTROYED (source))
+    {
+      GSList *tmp_list;
+      gpointer old_cb_data;
+      GSourceCallbackFuncs *old_cb_funcs;
+      
+      source->flags &= ~G_HOOK_FLAG_ACTIVE;
+
+      old_cb_data = source->callback_data;
+      old_cb_funcs = source->callback_funcs;
+
+      source->callback_data = NULL;
+      source->callback_funcs = NULL;
+
+      if (old_cb_funcs)
+	{
+	  UNLOCK_CONTEXT (context);
+	  old_cb_funcs->unref (old_cb_data);
+	  LOCK_CONTEXT (context);
+	}
+      
+      tmp_list = source->poll_fds;
+      while (tmp_list)
+	{
+	  g_main_context_remove_poll_unlocked (context, tmp_list->data);
+	  tmp_list = tmp_list->next;
+	}
+      
+      g_source_unref_internal (source, context, TRUE);
+    }
+
+  if (!have_lock)
+    UNLOCK_CONTEXT (context);
+}
+
+/**
+ * g_source_destroy:
+ * @source: a #GSource
+ * 
+ * Remove a source from its #GMainContext, if any, and mark it as
+ * destroyed.  The source cannot be subsequently added to another
+ * context.
+ **/
+void
+g_source_destroy (GSource *source)
+{
+  GMainContext *context;
+  
+  g_return_if_fail (source != NULL);
+  
+  context = source->context;
+  
+  if (context)
+    g_source_destroy_internal (source, context, FALSE);
+  else
+    source->flags &= ~G_HOOK_FLAG_ACTIVE;
+}
+
+/**
+ * g_source_get_id:
+ * @source: a #GSource
+ * 
+ * Return the numeric ID for a particular source. The ID of a source
+ * is unique within a particular main loop context. The reverse
+ * mapping from ID to source is done by g_main_context_find_source_by_id().
+ *
+ * Return value: the ID for the source
+ **/
+guint
+g_source_get_id (GSource *source)
+{
+  guint result;
+  
+  g_return_val_if_fail (source != NULL, 0);
+  g_return_val_if_fail (source->context != NULL, 0);
+
+  LOCK_CONTEXT (source->context);
+  result = source->id;
+  UNLOCK_CONTEXT (source->context);
+  
+  return result;
+}
+
+/**
+ * g_source_get_context:
+ * @source: a #GSource
+ * 
+ * Get the #GMainContext with which the source is associated.
+ * Calling this function on a destroyed source is an error.
+ * 
+ * Return value: the #GMainContext with which the source is associated,
+ *               or %NULL if the context has not yet been added
+ *               to a source.
+ **/
+GMainContext *
+g_source_get_context (GSource *source)
+{
+  g_return_val_if_fail (!SOURCE_DESTROYED (source), NULL);
+
+  return source->context;
+}
+
+/**
+ * g_source_add_poll:
+ * @source:a #GSource 
+ * @fd: a #GPollFD structure holding information about a file
+ *      descriptor to watch.
+ * 
+ * Add a file descriptor to the set of file descriptors polled for
+ * this source. This is usually combined with g_source_new() to add an
+ * event source. The event source's check function will typically test
+ * the revents field in the #GPollFD struct and return %TRUE if events need
+ * to be processed.
+ **/
+void
+g_source_add_poll (GSource *source,
+		   GPollFD *fd)
+{
+  GMainContext *context;
+  
+  g_return_if_fail (source != NULL);
+  g_return_if_fail (fd != NULL);
+  g_return_if_fail (!SOURCE_DESTROYED (source));
+  
+  context = source->context;
+
+  if (context)
+    LOCK_CONTEXT (context);
+  
+  source->poll_fds = g_slist_prepend (source->poll_fds, fd);
+
+  if (context)
+    {
+      g_main_context_add_poll_unlocked (context, source->priority, fd);
+      UNLOCK_CONTEXT (context);
+    }
+}
+
+/**
+ * g_source_remove_poll:
+ * @source:a #GSource 
+ * @fd: a #GPollFD structure previously passed to g_source_poll.
+ * 
+ * Remove a file descriptor from the set of file descriptors polled for
+ * this source. 
+ **/
+void
+g_source_remove_poll (GSource *source,
+		      GPollFD *fd)
+{
+  GMainContext *context;
+  
+  g_return_if_fail (source != NULL);
+  g_return_if_fail (fd != NULL);
+  g_return_if_fail (!SOURCE_DESTROYED (source));
+  
+  context = source->context;
+
+  if (context)
+    LOCK_CONTEXT (context);
+  
+  source->poll_fds = g_slist_remove (source->poll_fds, fd);
+
+  if (context)
+    {
+      g_main_context_remove_poll_unlocked (context, fd);
+      UNLOCK_CONTEXT (context);
+    }
+}
+
+/**
+ * g_source_set_callback_indirect:
+ * @source: the source
+ * @callback_data: pointer to callback data "object"
+ * @callback_funcs: functions for reference counting callback_data
+ *                  and getting the callback and data
+ * 
+ * Set the callback function storing the data as a refcounted callback
+ * "object". This is used to implement g_source_set_callback_closure()
+ * and internally. Note that calling g_source_set_callback_indirect() assumes
+ * an initial reference count on @callback_data, and thus
+ * @callback_funcs->unref will eventually be called once more
+ * than @callback_funcs->ref.
+ **/
+void
+g_source_set_callback_indirect (GSource              *source,
+				gpointer              callback_data,
+				GSourceCallbackFuncs *callback_funcs)
+{
+  GMainContext *context;
+  gpointer old_cb_data;
+  GSourceCallbackFuncs *old_cb_funcs;
+  
+  g_return_if_fail (source != NULL);
+  g_return_if_fail (callback_funcs != NULL || callback_data == NULL);
+
+  context = source->context;
+
+  if (context)
+    LOCK_CONTEXT (context);
+
+  old_cb_data = source->callback_data;
+  old_cb_funcs = source->callback_funcs;
+
+  source->callback_data = callback_data;
+  source->callback_funcs = callback_funcs;
+  
+  if (context)
+    UNLOCK_CONTEXT (context);
+  
+  if (old_cb_funcs)
+    old_cb_funcs->unref (old_cb_data);
+}
+
+static void
+g_source_callback_ref (gpointer cb_data)
+{
+  GSourceCallback *callback = cb_data;
+
+  callback->ref_count++;
+}
+
+
+static void
+g_source_callback_unref (gpointer cb_data)
+{
+  GSourceCallback *callback = cb_data;
+
+  callback->ref_count--;
+  if (callback->ref_count == 0)
+    {
+      if (callback->notify)
+	callback->notify (callback->data);
+      g_free (callback);
+    }
+}
+
+static void
+g_source_callback_get (gpointer     cb_data,
+		       GSource     *source, 
+		       GSourceFunc *func,
+		       gpointer    *data)
+{
+  GSourceCallback *callback = cb_data;
+
+  *func = callback->func;
+  *data = callback->data;
+}
+
+static GSourceCallbackFuncs g_source_callback_funcs = {
+  g_source_callback_ref,
+  g_source_callback_unref,
+  g_source_callback_get,
+};
+
+/**
+ * g_source_set_callback:
+ * @source: the source
+ * @func: a callback function
+ * @data: the data to pass to callback function
+ * @notify: a function to call when @data is no longer in use, or %NULL.
+ * 
+ * Set the callback function for a source.
+ **/
+void
+g_source_set_callback (GSource        *source,
+		       GSourceFunc     func,
+		       gpointer        data,
+		       GDestroyNotify  notify)
+{
+  GSourceCallback *new_callback;
+
+  g_return_if_fail (source != NULL);
+
+  new_callback = g_new (GSourceCallback, 1);
+
+  new_callback->ref_count = 1;
+  new_callback->func = func;
+  new_callback->data = data;
+  new_callback->notify = notify;
+
+  g_source_set_callback_indirect (source, new_callback, &g_source_callback_funcs);
+}
+
+/**
+ * g_source_set_priority:
+ * @source: a #GSource
+ * @priority: the new priority.
+ * 
+ * Set the priority of a source. While the main loop is being
+ * run, a source will 
+ **/
+void
+g_source_set_priority (GSource  *source,
+		       gint      priority)
+{
+  GSList *tmp_list;
+  GMainContext *context;
+  
+  g_return_if_fail (source != NULL);
+
+  context = source->context;
+
+  if (context)
+    LOCK_CONTEXT (context);
+  
+  source->priority = priority;
+
+  if (context)
+    {
+      source->next = NULL;
+      source->prev = NULL;
+      
+      tmp_list = source->poll_fds;
+      while (tmp_list)
+	{
+	  g_main_context_remove_poll_unlocked (context, tmp_list->data);
+	  g_main_context_add_poll_unlocked (context, priority, tmp_list->data);
+      
+	  tmp_list = tmp_list->next;
+	}
+      
+      UNLOCK_CONTEXT (source->context);
+    }
+}
+
+/**
+ * g_source_get_priority:
+ * @source: a #GSource
+ * 
+ * Gets the priority of a surce
+ * 
+ * Return value: the priority of the source
+ **/
+gint
+g_source_get_priority (GSource *source)
+{
+  g_return_val_if_fail (source != NULL, 0);
+
+  return source->priority;
+}
+
+/**
+ * g_source_set_can_recurse:
+ * @source: a #GSource
+ * @can_recurse: whether recursion is allowed for this source
+ * 
+ * Sets whether a source can be called recursively. If @can_recurse is
+ * %TRUE, then while the source is being dispatched then this source
+ * will be processed normally. Otherwise, all processing of this
+ * source is blocked until the dispatch function returns.
+ **/
+void
+g_source_set_can_recurse (GSource  *source,
+			  gboolean  can_recurse)
+{
+  GMainContext *context;
+  
+  g_return_if_fail (source != NULL);
+
+  context = source->context;
+
+  if (context)
+    LOCK_CONTEXT (context);
+  
+  if (can_recurse)
+    source->flags |= G_SOURCE_CAN_RECURSE;
+  else
+    source->flags &= ~G_SOURCE_CAN_RECURSE;
+
+  if (context)
+    UNLOCK_CONTEXT (context);
+}
+
+/**
+ * g_source_get_can_recurse:
+ * @source: a #GSource
+ * 
+ * Checks whether a source is allowed to be called recursively.
+ * see g_source_set_can_recurse.
+ * 
+ * Return value: whether recursion is allowed.
+ **/
+gboolean
+g_source_get_can_recurse (GSource  *source)
+{
+  g_return_val_if_fail (source != NULL, FALSE);
+  
+  return (source->flags & G_SOURCE_CAN_RECURSE) != 0;
+}
+
+/**
+ * g_source_ref:
+ * @source: a #GSource
+ * 
+ * Increases the reference count on a source by one.
+ * 
+ * Return value: @source
+ **/
+GSource *
+g_source_ref (GSource *source)
+{
+  GMainContext *context;
+  
+  g_return_val_if_fail (source != NULL, NULL);
+
+  context = source->context;
+
+  if (context)
+    LOCK_CONTEXT (context);
+
+  source->ref_count++;
+
+  if (context)
+    UNLOCK_CONTEXT (context);
+
+  return source;
+}
+
+/* g_source_unref() but possible to call within context lock
+ */
+static void
+g_source_unref_internal (GSource      *source,
+			 GMainContext *context,
+			 gboolean      have_lock)
+{
+  gpointer old_cb_data = NULL;
+  GSourceCallbackFuncs *old_cb_funcs = NULL;
+
+  g_return_if_fail (source != NULL);
+  
+  if (!have_lock && context)
+    LOCK_CONTEXT (context);
+
+  source->ref_count--;
+  if (source->ref_count == 0)
+    {
+      old_cb_data = source->callback_data;
+      old_cb_funcs = source->callback_funcs;
+
+      source->callback_data = NULL;
+      source->callback_funcs = NULL;
+
+      if (context && !SOURCE_DESTROYED (source))
+	{
+	  g_warning (G_STRLOC ": ref_count == 0, but source is still attached to a context!");
+	  source->ref_count++;
+	}
+      else if (context)
+	g_source_list_remove (source, context);
+
+      if (source->source_funcs->finalize)
+	source->source_funcs->finalize (source);
+      
+      g_slist_free (source->poll_fds);
+      source->poll_fds = NULL;
+      g_free (source);
+    }
+  
+  if (!have_lock && context)
+    UNLOCK_CONTEXT (context);
+
+  if (old_cb_funcs)
+    {
+      if (have_lock)
+	UNLOCK_CONTEXT (context);
+      
+      old_cb_funcs->unref (old_cb_data);
+
+      if (have_lock)
+	LOCK_CONTEXT (context);
+    }
+}
+
+/**
+ * g_source_unref:
+ * @source: a #GSource
+ * 
+ * Decreases the reference count of a source by one. If the
+ * resulting reference count is zero the source and associated
+ * memory will be destroyed. 
+ **/
+void
+g_source_unref (GSource *source)
+{
+  g_return_if_fail (source != NULL);
+
+  g_source_unref_internal (source, source->context, FALSE);
+}
+
+/**
+ * g_main_context_find_source_by_id:
+ * @context: a #GMainContext (if %NULL, the default context will be used)
+ * @id: the source ID, as returned by g_source_get_id()
+ * 
+ * Finds a #GSource given a pair of context and ID
+ * 
+ * Return value: the #GSource if found, otherwise, %NULL
+ **/
+GSource *
+g_main_context_find_source_by_id (GMainContext *context,
+				  guint         id)
+{
+  GSource *source;
+  
+  g_return_val_if_fail (id > 0, FALSE);
+
+  if (context == NULL)
+    context = g_main_context_default ();
+  
+  LOCK_CONTEXT (context);
+  
+  source = context->source_list;
+  while (source)
+    {
+      if (!SOURCE_DESTROYED (source) &&
+	  source->id == id)
+	break;
+      source = source->next;
+    }
+
+  UNLOCK_CONTEXT (context);
+
+  return source;
+}
+
+/**
+ * g_main_context_find_source_by_funcs_user_data:
+ * @context: a #GMainContext (if %NULL, the default context will be used).
+ * @funcs: the @source_funcs passed to g_source_new().
+ * @user_data: the user data from the callback.
+ * 
+ * Finds a source with the given source functions and user data.  If
+ * multiple sources exist with the same source function and user data,
+ * the first one found will be returned.
+ * 
+ * Return value: the source, if one was found, otherwise %NULL
+ **/
+GSource *
+g_main_context_find_source_by_funcs_user_data (GMainContext *context,
+					       GSourceFuncs *funcs,
+					       gpointer      user_data)
+{
+  GSource *source;
+  
+  g_return_val_if_fail (funcs != NULL, FALSE);
+
+  if (context == NULL)
+    context = g_main_context_default ();
+  
+  LOCK_CONTEXT (context);
+
+  source = context->source_list;
+  while (source)
+    {
+      if (!SOURCE_DESTROYED (source) &&
+	  source->source_funcs == funcs &&
+	  source->callback_funcs)
+	{
+	  GSourceFunc callback;
+	  gpointer callback_data;
+
+	  source->callback_funcs->get (source->callback_data, source, &callback, &callback_data);
+	  
+	  if (callback_data == user_data)
+	    break;
+	}
+      source = source->next;
+    }
+
+  UNLOCK_CONTEXT (context);
+
+  return source;
+}
+
+/**
+ * g_main_context_find_source_by_user_data:
+ * @context: a #GMainContext
+ * @user_data: the user_data for the callback.
+ * 
+ * Finds a source with the given user data for the callback.  If
+ * multiple sources exist with the same user data, the first
+ * one found will be returned.
+ * 
+ * Return value: the source, if one was found, otherwise %NULL
+ **/
+GSource *
+g_main_context_find_source_by_user_data (GMainContext *context,
+					 gpointer      user_data)
+{
+  GSource *source;
+  
+  if (context == NULL)
+    context = g_main_context_default ();
+  
+  LOCK_CONTEXT (context);
+
+  source = context->source_list;
+  while (source)
+    {
+      if (!SOURCE_DESTROYED (source) &&
+	  source->callback_funcs)
+	{
+	  GSourceFunc callback;
+	  gpointer callback_data = NULL;
+
+	  source->callback_funcs->get (source->callback_data, source, &callback, &callback_data);
+
+	  if (callback_data == user_data)
+	    break;
+	}
+      source = source->next;
+    }
+
+  UNLOCK_CONTEXT (context);
+
+  return source;
+}
+
+/**
+ * g_source_remove:
+ * @tag: the id of the source to remove.
+ * 
+ * Removes the source with the given id from the default main
+ * context. The id of a #GSource is given by g_source_get_id(),
+ * or will be returned by the functions g_source_attach(),
+ * g_idle_add(), g_idle_add_full(), g_timeout_add(),
+ * g_timeout_add_full(), g_io_add_watch, and g_io_add_watch_full().
+ *
+ * See also g_source_destroy().
+ *
+ * Return value: %TRUE if the source was found and removed.
+ **/
+gboolean
+g_source_remove (guint tag)
+{
+  GSource *source;
+  
+  g_return_val_if_fail (tag > 0, FALSE);
+
+  source = g_main_context_find_source_by_id (NULL, tag);
+  if (source)
+    g_source_destroy (source);
+
+  return source != NULL;
+}
+
+/**
+ * g_source_remove_by_user_data:
+ * @user_data: the user_data for the callback.
+ * 
+ * Removes a source from the default main loop context given the user
+ * data for the callback. If multiple sources exist with the same user
+ * data, only one will be destroyed.
+ * 
+ * Return value: %TRUE if a source was found and removed. 
+ **/
+gboolean
+g_source_remove_by_user_data (gpointer user_data)
+{
+  GSource *source;
+  
+  source = g_main_context_find_source_by_user_data (NULL, user_data);
+  if (source)
+    {
+      g_source_destroy (source);
+      return TRUE;
+    }
+  else
+    return FALSE;
+}
+
+/**
+ * g_source_remove_by_funcs_user_data:
+ * @funcs: The @source_funcs passed to g_source_new()
+ * @user_data: the user data for the callback
+ * 
+ * Removes a source from the default main loop context given the
+ * source functions and user data. If multiple sources exist with the
+ * same source functions and user data, only one will be destroyed.
+ * 
+ * Return value: %TRUE if a source was found and removed. 
+ **/
+gboolean
+g_source_remove_by_funcs_user_data (GSourceFuncs *funcs,
+				    gpointer      user_data)
+{
+  GSource *source;
+
+  g_return_val_if_fail (funcs != NULL, FALSE);
+
+  source = g_main_context_find_source_by_funcs_user_data (NULL, funcs, user_data);
+  if (source)
+    {
+      g_source_destroy (source);
+      return TRUE;
+    }
+  else
+    return FALSE;
+}
+
+/**
+ * g_get_current_time:
+ * @result: #GTimeVal structure in which to store current time.
+ * 
+ * Equivalent to Unix's <function>gettimeofday()</function>, but portable
+ **/
+void
+g_get_current_time (GTimeVal *result)
+{
+#ifndef G_OS_WIN32
+  struct timeval r;
+
+  g_return_if_fail (result != NULL);
+
+  /*this is required on alpha, there the timeval structs are int's
+    not longs and a cast only would fail horribly*/
+  gettimeofday (&r, NULL);
+  result->tv_sec = r.tv_sec;
+  result->tv_usec = r.tv_usec;
+#else
+  /* Avoid calling time() except for the first time.
+   * GetTickCount() should be pretty fast and low-level?
+   * I could also use ftime() but it seems unnecessarily overheady.
+   */
+  static DWORD start_tick = 0;
+  static time_t start_time;
+  DWORD tick;
+
+  g_return_if_fail (result != NULL);
+ 
+  if (start_tick == 0)
+    {
+      start_tick = GetTickCount ();
+      time (&start_time);
+    }
+
+  tick = GetTickCount ();
+
+  result->tv_sec = (tick - start_tick) / 1000 + start_time;
+  result->tv_usec = ((tick - start_tick) % 1000) * 1000;
+#endif
+}
+
+/* Running the main loop */
+
+/* HOLDS: context's lock */
+static void
+g_main_dispatch (GMainContext *context)
+{
+  guint i;
+
+  for (i = 0; i < context->pending_dispatches->len; i++)
+    {
+      GSource *source = context->pending_dispatches->pdata[i];
+
+      context->pending_dispatches->pdata[i] = NULL;
+      g_assert (source);
+
+      source->flags &= ~G_SOURCE_READY;
+
+      if (!SOURCE_DESTROYED (source))
+	{
+	  gboolean was_in_call;
+	  gpointer user_data = NULL;
+	  GSourceFunc callback = NULL;
+	  GSourceCallbackFuncs *cb_funcs;
+	  gpointer cb_data;
+	  gboolean need_destroy;
+
+	  gboolean (*dispatch) (GSource *,
+				GSourceFunc,
+				gpointer);
+
+	  dispatch = source->source_funcs->dispatch;
+	  cb_funcs = source->callback_funcs;
+	  cb_data = source->callback_data;
+
+	  if (cb_funcs)
+	    cb_funcs->ref (cb_data);
+	  
+	  was_in_call = source->flags & G_HOOK_FLAG_IN_CALL;
+	  source->flags |= G_HOOK_FLAG_IN_CALL;
+
+	  if (cb_funcs)
+	    cb_funcs->get (cb_data, source, &callback, &user_data);
+
+	  UNLOCK_CONTEXT (context);
+
+	  need_destroy = ! dispatch (source,
+				     callback,
+				     user_data);
+	  LOCK_CONTEXT (context);
+
+	  if (cb_funcs)
+	    cb_funcs->unref (cb_data);
+
+	 if (!was_in_call)
+	    source->flags &= ~G_HOOK_FLAG_IN_CALL;
+
+	  /* Note: this depends on the fact that we can't switch
+	   * sources from one main context to another
+	   */
+	  if (need_destroy && !SOURCE_DESTROYED (source))
+	    {
+	      g_assert (source->context == context);
+	      g_source_destroy_internal (source, context, TRUE);
+	    }
+	}
+      
+      SOURCE_UNREF (source, context);
+    }
+
+  g_ptr_array_set_size (context->pending_dispatches, 0);
+}
+
+/* Holds context's lock */
+static inline GSource *
+next_valid_source (GMainContext *context,
+		   GSource      *source)
+{
+  GSource *new_source = source ? source->next : context->source_list;
+
+  while (new_source)
+    {
+      if (!SOURCE_DESTROYED (new_source))
+	{
+	  new_source->ref_count++;
+	  break;
+	}
+      
+      new_source = new_source->next;
+    }
+
+  if (source)
+    SOURCE_UNREF (source, context);
+	  
+  return new_source;
+}
+
+/**
+ * g_main_context_acquire:
+ * @context: a #GMainContext
+ * 
+ * Tries to become the owner of the specified context.
+ * If some other context is the owner of the context,
+ * returns %FALSE immediately. Ownership is properly
+ * recursive: the owner can require ownership again
+ * and will release ownership when g_main_context_release()
+ * is called as many times as g_main_context_acquire().
+ *
+ * You must be the owner of a context before you
+ * can call g_main_context_prepare(), g_main_context_query(),
+ * g_main_context_check(), g_main_context_dispatch().
+ * 
+ * Return value: %TRUE if the operation succeeded, and
+ *   this thread is now the owner of @context.
+ **/
+gboolean 
+g_main_context_acquire (GMainContext *context)
+{
+#ifdef G_THREAD_ENABLED
+  gboolean result = FALSE;
+  GThread *self = G_THREAD_SELF;
+
+  if (context == NULL)
+    context = g_main_context_default ();
+  
+  LOCK_CONTEXT (context);
+
+  if (!context->owner)
+    {
+      context->owner = self;
+      g_assert (context->owner_count == 0);
+    }
+
+  if (context->owner == self)
+    {
+      context->owner_count++;
+      result = TRUE;
+    }
+
+  UNLOCK_CONTEXT (context); 
+  
+  return result;
+#else /* !G_THREAD_ENABLED */
+  return TRUE;
+#endif /* G_THREAD_ENABLED */
+}
+
+/**
+ * g_main_context_release:
+ * @context: a #GMainContext
+ * 
+ * Release ownership of a context previously acquired by this thread
+ * with g_main_context_acquire(). If the context was acquired multiple
+ * times, the only release ownership when g_main_context_release()
+ * is called as many times as it was acquired.
+ **/
+void
+g_main_context_release (GMainContext *context)
+{
+#ifdef G_THREAD_ENABLED
+  if (context == NULL)
+    context = g_main_context_default ();
+  
+  LOCK_CONTEXT (context);
+
+  context->owner_count--;
+  if (context->owner_count == 0)
+    {
+      context->owner = NULL;
+
+      if (context->waiters)
+	{
+	  GMainWaiter *waiter = context->waiters->data;
+	  gboolean loop_internal_waiter =
+	    (waiter->mutex == g_static_mutex_get_mutex (&context->mutex));
+	  context->waiters = g_slist_delete_link (context->waiters,
+						  context->waiters);
+	  if (!loop_internal_waiter)
+	    g_mutex_lock (waiter->mutex);
+	  
+	  g_cond_signal (waiter->cond);
+	  
+	  if (!loop_internal_waiter)
+	    g_mutex_unlock (waiter->mutex);
+	}
+    }
+
+  UNLOCK_CONTEXT (context); 
+
+  return result;
+#endif /* G_THREAD_ENABLED */
+}
+
+/**
+ * g_main_context_wait:
+ * @context: a #GMainContext
+ * @cond: a condition variable
+ * @mutex: a mutex, currently held
+ * 
+ * Tries to become the owner of the specified context,
+ * as with g_main_context_acquire. But if another thread
+ * is the owner, atomically drop @mutex and wait on
+ * @cond until wait until that owner releases
+ * ownership or until @cond is signaled, then
+ * try again (once) to become the owner.
+ * 
+ * Return value: %TRUE if the operation succeeded, and
+ *   this thread is now the owner of @context.
+ **/
+gboolean
+g_main_context_wait (GMainContext *context,
+		     GCond        *cond,
+		     GMutex       *mutex)
+{
+#ifdef G_THREAD_ENABLED
+  gboolean result = FALSE;
+  GThread *self = G_THREAD_SELF;
+  gboolean loop_internal_waiter;
+  
+  if (context == NULL)
+    context = g_main_context_default ();
+
+  loop_internal_waiter = (mutex == g_static_mutex_get_mutex (&context->mutex));
+  
+  if (!loop_internal_waiter)
+    LOCK_CONTEXT (context);
+
+  if (context->owner && context->owner != self)
+    {
+      GMainWaiter waiter;
+
+      waiter.cond = cond;
+      waiter.mutex = mutex;
+
+      context->waiters = g_slist_append (context->waiters, &waiter);
+      
+      if (!loop_internal_waiter)
+	UNLOCK_CONTEXT (context);
+      g_cond_wait (cond, mutex);
+      if (!loop_internal_waiter)      
+	LOCK_CONTEXT (context);
+
+      context->waiters = g_slist_remove (context->waiters, &waiter);
+    }
+
+  if (!context->owner)
+    {
+      context->owner = self;
+      g_assert (context->owner_count == 0);
+    }
+
+  if (context->owner == self)
+    {
+      context->owner_count++;
+      result = TRUE;
+    }
+
+  if (!loop_internal_waiter)
+    UNLOCK_CONTEXT (context); 
+  
+  return result;
+#else /* !G_THREAD_ENABLED */
+  return TRUE;
+#endif /* G_THREAD_ENABLED */
+}
+
+/**
+ * g_main_context_prepare:
+ * @context: a #GMainContext
+ * @priority: location to store priority of highest priority
+ *            source already ready.
+ * 
+ * Prepares to poll sources within a main loop. The resulting information
+ * for polling is determined by calling g_main_context_query ().
+ * 
+ * Return value: %TRUE if some source is ready to be dispatched
+ *               prior to polling.
+ **/
+gboolean
+g_main_context_prepare (GMainContext *context,
+			gint         *priority)
+{
+  gint n_ready = 0;
+  gint current_priority = G_MAXINT;
+  GSource *source;
+
+  if (context == NULL)
+    context = g_main_context_default ();
+  
+  LOCK_CONTEXT (context);
+
+  context->time_is_current = FALSE;
+
+  if (context->in_check_or_prepare)
+    {
+      g_warning ("g_main_context_prepare() called recursively from within a source's check() or "
+		 "prepare() member.");
+      UNLOCK_CONTEXT (context);
+      return FALSE;
+    }
+
+#ifdef G_THREADS_ENABLED
+  if (context->poll_waiting)
+    {
+      g_warning("g_main_context_prepare(): main loop already active in another thread");
+      UNLOCK_CONTEXT (context);
+      return FALSE;
+    }
+  
+  context->poll_waiting = TRUE;
+#endif /* G_THREADS_ENABLED */
+
+#if 0
+  /* If recursing, finish up current dispatch, before starting over */
+  if (context->pending_dispatches)
+    {
+      if (dispatch)
+	g_main_dispatch (context, &current_time);
+      
+      UNLOCK_CONTEXT (context);
+      return TRUE;
+    }
+#endif
+
+  /* If recursing, clear list of pending dispatches */
+  g_ptr_array_set_size (context->pending_dispatches, 0);
+  
+  /* Prepare all sources */
+
+  context->timeout = -1;
+  
+  source = next_valid_source (context, NULL);
+  while (source)
+    {
+      gint source_timeout = -1;
+
+      if ((n_ready > 0) && (source->priority > current_priority))
+	{
+	  SOURCE_UNREF (source, context);
+	  break;
+	}
+      if ((source->flags & G_HOOK_FLAG_IN_CALL) && !(source->flags & G_SOURCE_CAN_RECURSE))
+	goto next;
+
+      if (!(source->flags & G_SOURCE_READY))
+	{
+	  gboolean result;
+	  gboolean (*prepare)  (GSource  *source, 
+				gint     *timeout);
+
+	  prepare = source->source_funcs->prepare;
+	  context->in_check_or_prepare++;
+	  UNLOCK_CONTEXT (context);
+
+	  result = (*prepare) (source, &source_timeout);
+
+	  LOCK_CONTEXT (context);
+	  context->in_check_or_prepare--;
+
+	  if (result)
+	    source->flags |= G_SOURCE_READY;
+	}
+
+      if (source->flags & G_SOURCE_READY)
+	{
+	  n_ready++;
+	  current_priority = source->priority;
+	  context->timeout = 0;
+	}
+      
+      if (source_timeout >= 0)
+	{
+	  if (context->timeout < 0)
+	    context->timeout = source_timeout;
+	  else
+	    context->timeout = MIN (context->timeout, source_timeout);
+	}
+
+    next:
+      source = next_valid_source (context, source);
+    }
+
+  UNLOCK_CONTEXT (context);
+  
+  if (priority)
+    *priority = current_priority;
+  
+  return (n_ready > 0);
+}
+
+/**
+ * g_main_context_query:
+ * @context: a #GMainContext
+ * @max_priority: maximum priority source to check
+ * @timeout: location to store timeout to be used in polling
+ * @fds: location to store #GPollFD records that need to be polled.
+ * @n_fds: length of @fds.
+ * 
+ * Determines information necessary to poll this main loop.
+ * 
+ * Return value: the number of records actually stored in @fds,
+ *   or, if more than @n_fds records need to be stored, the number
+ *   of records that need to be stored.
+ **/
+gint
+g_main_context_query (GMainContext *context,
+		      gint          max_priority,
+		      gint         *timeout,
+		      GPollFD      *fds,
+		      gint          n_fds)
+{
+  gint n_poll;
+  GPollRec *pollrec;
+  
+  LOCK_CONTEXT (context);
+
+  pollrec = context->poll_records;
+  n_poll = 0;
+  while (pollrec && max_priority >= pollrec->priority)
+    {
+      if (pollrec->fd->events)
+	{
+	  if (n_poll < n_fds)
+	    {
+	      fds[n_poll].fd = pollrec->fd->fd;
+	      /* In direct contradiction to the Unix98 spec, IRIX runs into
+	       * difficulty if you pass in POLLERR, POLLHUP or POLLNVAL
+	       * flags in the events field of the pollfd while it should
+	       * just ignoring them. So we mask them out here.
+	       */
+	      fds[n_poll].events = pollrec->fd->events & ~(G_IO_ERR|G_IO_HUP|G_IO_NVAL);
+	      fds[n_poll].revents = 0;
+	    }
+	  n_poll++;
+	}
+      
+      pollrec = pollrec->next;
+    }
+
+#ifdef G_THREADS_ENABLED
+  context->poll_changed = FALSE;
+#endif
+  
+  if (timeout)
+    {
+      *timeout = context->timeout;
+      if (timeout != 0)
+	context->time_is_current = FALSE;
+    }
+  
+  UNLOCK_CONTEXT (context);
+
+  return n_poll;
+}
+
+/**
+ * g_main_context_check:
+ * @context: a #GMainContext
+ * @max_priority: the maximum numerical priority of sources to check
+ * @fds: array of #GPollFD's that was passed to the last call to
+ *       g_main_context_query()
+ * @n_fds: return value of g_main_context_query()
+ * 
+ * Pass the results of polling back to the main loop.
+ * 
+ * Return value: %TRUE if some sources are ready to be dispatched.
+ **/
+gboolean
+g_main_context_check (GMainContext *context,
+		      gint          max_priority,
+		      GPollFD      *fds,
+		      gint          n_fds)
+{
+  GSource *source;
+  GPollRec *pollrec;
+  gint n_ready = 0;
+  gint i;
+  
+  LOCK_CONTEXT (context);
+
+  if (context->in_check_or_prepare)
+    {
+      g_warning ("g_main_context_check() called recursively from within a source's check() or "
+		 "prepare() member.");
+      UNLOCK_CONTEXT (context);
+      return FALSE;
+    }
+  
+#ifdef G_THREADS_ENABLED
+  if (!context->poll_waiting)
+    {
+#ifndef G_OS_WIN32
+      gchar c;
+      read (context->wake_up_pipe[0], &c, 1);
+#endif
+    }
+  else
+    context->poll_waiting = FALSE;
+
+  /* If the set of poll file descriptors changed, bail out
+   * and let the main loop rerun
+   */
+  if (context->poll_changed)
+    {
+      UNLOCK_CONTEXT (context);
+      return 0;
+    }
+#endif /* G_THREADS_ENABLED */
+  
+  pollrec = context->poll_records;
+  i = 0;
+  while (i < n_fds)
+    {
+      if (pollrec->fd->events)
+	{
+	  pollrec->fd->revents = fds[i].revents;
+	  i++;
+	}
+      pollrec = pollrec->next;
+    }
+
+  source = next_valid_source (context, NULL);
+  while (source)
+    {
+      if ((n_ready > 0) && (source->priority > max_priority))
+	{
+	  SOURCE_UNREF (source, context);
+	  break;
+	}
+      if ((source->flags & G_HOOK_FLAG_IN_CALL) && !(source->flags & G_SOURCE_CAN_RECURSE))
+	goto next;
+
+      if (!(source->flags & G_SOURCE_READY))
+	{
+	  gboolean result;
+	  gboolean (*check) (GSource  *source);
+
+	  check = source->source_funcs->check;
+	  
+	  context->in_check_or_prepare++;
+	  UNLOCK_CONTEXT (context);
+	  
+	  result = (*check) (source);
+	  
+	  LOCK_CONTEXT (context);
+	  context->in_check_or_prepare--;
+	  
+	  if (result)
+	    source->flags |= G_SOURCE_READY;
+	}
+
+      if (source->flags & G_SOURCE_READY)
+	{
+	  source->ref_count++;
+	  g_ptr_array_add (context->pending_dispatches, source);
+
+	  n_ready++;
+	}
+
+    next:
+      source = next_valid_source (context, source);
+    }
+
+  UNLOCK_CONTEXT (context);
+
+  return n_ready > 0;
+}
+
+/**
+ * g_main_context_dispatch:
+ * @context: a #GMainContext
+ * 
+ * Dispatch all pending sources()
+ **/
+void
+g_main_context_dispatch (GMainContext *context)
+{
+  LOCK_CONTEXT (context);
+
+  if (context->pending_dispatches->len > 0)
+    {
+      g_main_dispatch (context);
+    }
+
+  UNLOCK_CONTEXT (context);
+}
+
+/* HOLDS context lock */
+static gboolean
+g_main_context_iterate (GMainContext *context,
+			gboolean      block,
+			gboolean      dispatch,
+			GThread      *self)
+{
+  gint max_priority;
+  gint timeout;
+  gboolean some_ready;
+  gint nfds, allocated_nfds;
+  GPollFD *fds = NULL;
+  
+  UNLOCK_CONTEXT (context);
+
+#ifdef G_THREADS_ENABLED
+  if (!g_main_context_acquire (context))
+    {
+      gboolean got_ownership;
+      
+      g_return_val_if_fail (g_thread_supported (), FALSE);
+
+      if (!block)
+	return FALSE;
+
+      LOCK_CONTEXT (context);
+      
+      if (!context->cond)
+	context->cond = g_cond_new ();
+          
+      got_ownership = g_main_context_wait (context,
+					   context->cond,
+					   g_static_mutex_get_mutex (&context->mutex));
+
+      if (!got_ownership)
+	{
+	  UNLOCK_CONTEXT (context);
+	  return FALSE;
+	}
+    }
+  else
+    LOCK_CONTEXT (context);
+#endif /* G_THREADS_ENABLED */
+  
+  if (!context->cached_poll_array)
+    {
+      context->cached_poll_array_size = context->n_poll_records;
+      context->cached_poll_array = g_new (GPollFD, context->n_poll_records);
+    }
+
+  allocated_nfds = context->cached_poll_array_size;
+  fds = context->cached_poll_array;
+  
+  UNLOCK_CONTEXT (context);
+
+  some_ready = g_main_context_prepare (context, &max_priority); 
+  
+  while ((nfds = g_main_context_query (context, max_priority, &timeout, fds, 
+				       allocated_nfds)) > allocated_nfds)
+    {
+      LOCK_CONTEXT (context);
+      g_free (fds);
+      context->cached_poll_array_size = allocated_nfds = nfds;
+      context->cached_poll_array = fds = g_new (GPollFD, nfds);
+      UNLOCK_CONTEXT (context);
+    }
+
+  if (!block)
+    timeout = 0;
+  
+  g_main_context_poll (context, timeout, max_priority, fds, nfds);
+  
+  g_main_context_check (context, max_priority, fds, nfds);
+  
+  if (dispatch)
+    g_main_context_dispatch (context);
+  
+#ifdef G_THREADS_ENABLED
+  g_main_context_release (context);
+#endif /* G_THREADS_ENABLED */    
+
+  LOCK_CONTEXT (context);
+
+  return some_ready;
+}
+
+/**
+ * g_main_context_pending:
+ * @context: a #GMainContext (if %NULL, the default context will be used)
+ *
+ * Check if any sources have pending events for the given context.
+ * 
+ * Return value: %TRUE if events are pending.
+ **/
+gboolean 
+g_main_context_pending (GMainContext *context)
+{
+  gboolean retval;
+
+  if (!context)
+    context = g_main_context_default();
+
+  LOCK_CONTEXT (context);
+  retval = g_main_context_iterate (context, FALSE, FALSE, G_THREAD_SELF);
+  UNLOCK_CONTEXT (context);
+  
+  return retval;
+}
+
+/**
+ * g_main_context_iteration:
+ * @context: a #GMainContext (if %NULL, the default context will be used) 
+ * @may_block: whether the call may block.
+ * 
+ * Run a single iteration for the given main loop. This involves
+ * checking to see if any event sources are ready to be processed,
+ * then if no events sources are ready and @may_block is %TRUE, waiting
+ * for a source to become ready, then dispatching the highest priority
+ * events sources that are ready. Note that even when @may_block is %TRUE,
+ * it is still possible for g_main_context_iteration() to return
+ * %FALSE, since the the wait may be interrupted for other
+ * reasons than an event source becoming ready.
+ * 
+ * Return value: %TRUE if events were dispatched.
+ **/
+gboolean
+g_main_context_iteration (GMainContext *context, gboolean may_block)
+{
+  gboolean retval;
+
+  if (!context)
+    context = g_main_context_default();
+  
+  LOCK_CONTEXT (context);
+  retval = g_main_context_iterate (context, may_block, TRUE, G_THREAD_SELF);
+  UNLOCK_CONTEXT (context);
+  
+  return retval;
+}
+
+/**
+ * g_main_loop_new:
+ * @context: a #GMainContext  (if %NULL, the default context will be used).
+ * @is_running: set to TRUE to indicate that the loop is running. This
+ * is not very important since calling g_main_run() will set this to
+ * TRUE anyway.
+ * 
+ * Create a new #GMainLoop structure
+ * 
+ * Return value: 
+ **/
+GMainLoop *
+g_main_loop_new (GMainContext *context,
+		 gboolean      is_running)
+{
+  GMainLoop *loop;
+  
+  if (!context)
+    context = g_main_context_default();
+  
+  g_main_context_ref (context);
+
+  loop = g_new0 (GMainLoop, 1);
+  loop->context = context;
+  loop->is_running = is_running != FALSE;
+  loop->ref_count = 1;
+  
+  return loop;
+}
+
+/**
+ * g_main_loop_ref:
+ * @loop: a #GMainLoop
+ * 
+ * Increase the reference count on a #GMainLoop object by one.
+ * 
+ * Return value: @loop
+ **/
+GMainLoop *
+g_main_loop_ref (GMainLoop *loop)
+{
+  g_return_val_if_fail (loop != NULL, NULL);
+  g_return_val_if_fail (loop->ref_count > 0, NULL);
+
+  LOCK_CONTEXT (loop->context);
+  loop->ref_count++;
+  UNLOCK_CONTEXT (loop->context);
+
+  return loop;
+}
+
+static void
+g_main_loop_unref_and_unlock (GMainLoop *loop)
+{
+  loop->ref_count--;
+  if (loop->ref_count == 0)
+    {
+      /* When the ref_count is 0, there can be nobody else using the
+       * loop, so it is safe to unlock before destroying.
+       */
+      g_main_context_unref_and_unlock (loop->context);
+  g_free (loop);
+    }
+  else
+    UNLOCK_CONTEXT (loop->context);
+}
+
+/**
+ * g_main_loop_unref:
+ * @loop: a #GMainLoop
+ * 
+ * Decreases the reference count on a #GMainLoop object by one. If
+ * the result is zero, free the loop and free all associated memory.
+ **/
+void
+g_main_loop_unref (GMainLoop *loop)
+{
+  g_return_if_fail (loop != NULL);
+  g_return_if_fail (loop->ref_count > 0);
+
+  LOCK_CONTEXT (loop->context);
+  
+  g_main_loop_unref_and_unlock (loop);
+}
+
+/**
+ * g_main_loop_run:
+ * @loop: a #GMainLoop
+ * 
+ * Run a main loop until g_main_quit() is called on the loop.
+ * If this is called for the thread of the loop's #GMainContext,
+ * it will process events from the loop, otherwise it will
+ * simply wait.
+ **/
+void 
+g_main_loop_run (GMainLoop *loop)
+{
+  GThread *self = G_THREAD_SELF;
+
+  g_return_if_fail (loop != NULL);
+  g_return_if_fail (loop->ref_count > 0);
+
+#ifdef G_THREADS_ENABLED
+  if (!g_main_context_acquire (loop->context))
+    {
+      gboolean got_ownership = FALSE;
+      
+      /* Another thread owns this context */
+      if (!g_thread_supported ())
+	{
+	  g_warning ("g_main_loop_run() was called from second thread but"
+		     "g_thread_init() was never called.");
+	  return;
+	}
+      
+      LOCK_CONTEXT (loop->context);
+
+      loop->ref_count++;
+
+      if (!loop->is_running)
+	loop->is_running = TRUE;
+
+      if (!loop->context->cond)
+	loop->context->cond = g_cond_new ();
+          
+      while (loop->is_running || !got_ownership)
+	got_ownership = g_main_context_wait (loop->context,
+					     loop->context->cond,
+					     g_static_mutex_get_mutex (&loop->context->mutex));
+      
+      if (!loop->is_running)
+	{
+	  UNLOCK_CONTEXT (loop->context);
+	  if (got_ownership)
+	    g_main_context_release (loop->context);
+	  g_main_loop_unref (loop);
+	  return;
+	}
+
+      g_assert (got_ownership);
+    }
+  else
+    LOCK_CONTEXT (loop->context);
+#endif /* G_THREADS_ENABLED */ 
+
+  if (loop->context->in_check_or_prepare)
+    {
+      g_warning ("g_main_run(): called recursively from within a source's check() or "
+		 "prepare() member, iteration not possible.");
+      return;
+    }
+
+  loop->ref_count++;
+  loop->is_running = TRUE;
+  while (loop->is_running)
+    g_main_context_iterate (loop->context, TRUE, TRUE, self);
+
+#ifdef G_THREADS_ENABLED
+  g_main_context_release (loop->context);
+#endif /* G_THREADS_ENABLED */    
+  
+  g_main_loop_unref_and_unlock (loop);
+}
+
+/**
+ * g_main_loop_quit:
+ * @loop: a #GMainLoop
+ * 
+ * Stops a #GMainLoop from running. Any calls to g_main_loop_run()
+ * for the loop will return.
+ **/
+void 
+g_main_loop_quit (GMainLoop *loop)
+{
+  g_return_if_fail (loop != NULL);
+  g_return_if_fail (loop->ref_count > 0);
+
+  LOCK_CONTEXT (loop->context);
+  loop->is_running = FALSE;
+  g_main_context_wakeup_unlocked (loop->context);
+
+  if (loop->context->cond)
+    g_cond_broadcast (loop->context->cond);
+  UNLOCK_CONTEXT (loop->context);
+}
+
+/**
+ * g_main_loop_is_running:
+ * @loop: a #GMainLoop.
+ * 
+ * Check to see if the main loop is currently being run via g_main_run()
+ * 
+ * Return value: %TRUE if the mainloop is currently being run.
+ **/
+gboolean
+g_main_loop_is_running (GMainLoop *loop)
+{
+  g_return_val_if_fail (loop != NULL, FALSE);
+  g_return_val_if_fail (loop->ref_count > 0, FALSE);
+
+  return loop->is_running;
+}
+
+/**
+ * g_main_loop_get_context:
+ * @loop: a #GMainLoop.
+ * 
+ * Returns the #GMainContext of @loop.
+ * 
+ * Return value: the #GMainContext of @loop
+ **/
+GMainContext *
+g_main_loop_get_context (GMainLoop *loop)
+{
+  g_return_val_if_fail (loop != NULL, NULL);
+  g_return_val_if_fail (loop->ref_count > 0, NULL);
+ 
+  return loop->context;
+}
+
+/* HOLDS: context's lock */
+static void
+g_main_context_poll (GMainContext *context,
+		     gint          timeout,
+		     gint          priority,
+		     GPollFD      *fds,
+		     gint          n_fds)
+{
+#ifdef  G_MAIN_POLL_DEBUG
+  GTimer *poll_timer;
+  GPollRec *pollrec;
+  gint i;
+#endif
+
+  GPollFunc poll_func;
+
+  if (n_fds || timeout != 0)
+    {
+#ifdef	G_MAIN_POLL_DEBUG
+      g_print ("g_main_poll(%d) timeout: %d\n", n_fds, timeout);
+      poll_timer = g_timer_new ();
+#endif
+
+      LOCK_CONTEXT (context);
+
+      poll_func = context->poll_func;
+      
+      UNLOCK_CONTEXT (context);
+      if ((*poll_func) (fds, n_fds, timeout) < 0 && errno != EINTR)
+	g_warning ("poll(2) failed due to: %s.",
+		   g_strerror (errno));
+      
+#ifdef	G_MAIN_POLL_DEBUG
+      LOCK_CONTEXT (context);
+
+      g_print ("g_main_poll(%d) timeout: %d - elapsed %12.10f seconds",
+	       n_fds,
+	       timeout,
+	       g_timer_elapsed (poll_timer, NULL));
+      g_timer_destroy (poll_timer);
+      pollrec = context->poll_records;
+      i = 0;
+      while (i < n_fds)
+	{
+	  if (pollrec->fd->events)
+	    {
+	      if (fds[i].revents)
+		{
+		  g_print (" [%d:", fds[i].fd);
+		  if (fds[i].revents & G_IO_IN)
+		    g_print ("i");
+		  if (fds[i].revents & G_IO_OUT)
+		    g_print ("o");
+		  if (fds[i].revents & G_IO_PRI)
+		    g_print ("p");
+		  if (fds[i].revents & G_IO_ERR)
+		    g_print ("e");
+		  if (fds[i].revents & G_IO_HUP)
+		    g_print ("h");
+		  if (fds[i].revents & G_IO_NVAL)
+		    g_print ("n");
+		  g_print ("]");
+		}
+	      i++;
+	    }
+	  pollrec = pollrec->next;
+	}
+      g_print ("\n");
+      
+      UNLOCK_CONTEXT (context);
+#endif
+    } /* if (n_fds || timeout != 0) */
+}
+
+/**
+ * g_main_context_add_poll:
+ * @context: a #GMainContext (or %NULL for the default context)
+ * @fd: a #GPollFD structure holding information about a file
+ *      descriptor to watch.
+ * @priority: the priority for this file descriptor which should be
+ *      the same as the priority used for g_source_attach() to ensure that the
+ *      file descriptor is polled whenever the results may be needed.
+ * 
+ * Add a file descriptor to the set of file descriptors polled * for
+ * this context. This will very seldom be used directly. Instead
+ * a typical event source will use g_source_add_poll() instead.
+ **/
+void
+g_main_context_add_poll (GMainContext *context,
+			 GPollFD      *fd,
+			 gint          priority)
+{
+  if (!context)
+    context = g_main_context_default ();
+  
+  g_return_if_fail (context->ref_count > 0);
+  g_return_if_fail (fd);
+
+  LOCK_CONTEXT (context);
+  g_main_context_add_poll_unlocked (context, priority, fd);
+  UNLOCK_CONTEXT (context);
+}
+
+/* HOLDS: main_loop_lock */
+static void 
+g_main_context_add_poll_unlocked (GMainContext *context,
+				  gint          priority,
+				  GPollFD      *fd)
+{
+  GPollRec *lastrec, *pollrec, *newrec;
+
+  if (!context->poll_chunk)
+    context->poll_chunk = g_mem_chunk_create (GPollRec, 32, G_ALLOC_ONLY);
+
+  if (context->poll_free_list)
+    {
+      newrec = context->poll_free_list;
+      context->poll_free_list = newrec->next;
+    }
+  else
+    newrec = g_chunk_new (GPollRec, context->poll_chunk);
+
+  /* This file descriptor may be checked before we ever poll */
+  fd->revents = 0;
+  newrec->fd = fd;
+  newrec->priority = priority;
+
+  lastrec = NULL;
+  pollrec = context->poll_records;
+  while (pollrec && priority >= pollrec->priority)
+    {
+      lastrec = pollrec;
+      pollrec = pollrec->next;
+    }
+  
+  if (lastrec)
+    lastrec->next = newrec;
+  else
+    context->poll_records = newrec;
+
+  newrec->next = pollrec;
+
+  context->n_poll_records++;
+
+#ifdef G_THREADS_ENABLED
+  context->poll_changed = TRUE;
+
+  /* Now wake up the main loop if it is waiting in the poll() */
+  g_main_context_wakeup_unlocked (context);
+#endif
+}
+
+/**
+ * g_main_context_remove_poll:
+ * @context:a #GMainContext 
+ * @fd: a #GPollFD descriptor previously added with g_main_context_add_poll()
+ * 
+ * Remove file descriptor from the set of file descriptors to be
+ * polled for a particular context.
+ **/
+void
+g_main_context_remove_poll (GMainContext *context,
+			    GPollFD      *fd)
+{
+  if (!context)
+    context = g_main_context_default ();
+  
+  g_return_if_fail (context->ref_count > 0);
+  g_return_if_fail (fd);
+
+  LOCK_CONTEXT (context);
+  g_main_context_remove_poll_unlocked (context, fd);
+  UNLOCK_CONTEXT (context);
+}
+
+static void
+g_main_context_remove_poll_unlocked (GMainContext *context,
+				     GPollFD      *fd)
+{
+  GPollRec *pollrec, *lastrec;
+
+  lastrec = NULL;
+  pollrec = context->poll_records;
+
+  while (pollrec)
+    {
+      if (pollrec->fd == fd)
+	{
+	  if (lastrec != NULL)
+	    lastrec->next = pollrec->next;
+	  else
+	    context->poll_records = pollrec->next;
+
+#ifdef ENABLE_GC_FRIENDLY
+	  pollrec->fd = NULL;  
+#endif /* ENABLE_GC_FRIENDLY */
+
+	  pollrec->next = context->poll_free_list;
+	  context->poll_free_list = pollrec;
+
+	  context->n_poll_records--;
+	  break;
+	}
+      lastrec = pollrec;
+      pollrec = pollrec->next;
+    }
+
+#ifdef G_THREADS_ENABLED
+  context->poll_changed = TRUE;
+  
+  /* Now wake up the main loop if it is waiting in the poll() */
+  g_main_context_wakeup_unlocked (context);
+#endif
+}
+
+/**
+ * g_source_get_current_time:
+ * @source:  a #GSource
+ * @timeval: #GTimeVal structure in which to store current time.
+ * 
+ * Gets the "current time" to be used when checking 
+ * this source. The advantage of calling this function over
+ * calling g_get_current_time() directly is that when 
+ * checking multiple sources, GLib can cache a single value
+ * instead of having to repeatedly get the system time.
+ **/
+void
+g_source_get_current_time (GSource  *source,
+			   GTimeVal *timeval)
+{
+  GMainContext *context;
+  
+  g_return_if_fail (source->context != NULL);
+ 
+  context = source->context;
+
+  LOCK_CONTEXT (context);
+
+  if (!context->time_is_current)
+    {
+      g_get_current_time (&context->current_time);
+      context->time_is_current = TRUE;
+    }
+  
+  *timeval = context->current_time;
+  
+  UNLOCK_CONTEXT (context);
+}
+
+/**
+ * g_main_context_set_poll_func:
+ * @context: a #GMainContext
+ * @func: the function to call to poll all file descriptors
+ * 
+ * Sets the function to use to handle polling of file descriptors. It
+ * will be used instead of the poll() system call (or GLib's
+ * replacement function, which is used where poll() isn't available).
+ *
+ * This function could possibly be used to integrate the GLib event
+ * loop with an external event loop.
+ **/
+void
+g_main_context_set_poll_func (GMainContext *context,
+			      GPollFunc     func)
+{
+  if (!context)
+    context = g_main_context_default ();
+  
+  g_return_if_fail (context->ref_count > 0);
+
+  LOCK_CONTEXT (context);
+  
+  if (func)
+    context->poll_func = func;
+  else
+    {
+#ifdef HAVE_POLL
+      context->poll_func = (GPollFunc) poll;
+#else
+      context->poll_func = (GPollFunc) g_poll;
+#endif
+    }
+
+  UNLOCK_CONTEXT (context);
+}
+
+/**
+ * g_main_context_get_poll_func:
+ * @context: a #GMainContext
+ * 
+ * Gets the poll function set by g_main_context_set_poll_func()
+ * 
+ * Return value: the poll function
+ **/
+GPollFunc
+g_main_context_get_poll_func (GMainContext *context)
+{
+  GPollFunc result;
+  
+  if (!context)
+    context = g_main_context_default ();
+  
+  g_return_val_if_fail (context->ref_count > 0, NULL);
+
+  LOCK_CONTEXT (context);
+  result = context->poll_func;
+  UNLOCK_CONTEXT (context);
+
+  return result;
+}
+
+/* HOLDS: context's lock */
+/* Wake the main loop up from a poll() */
+static void
+g_main_context_wakeup_unlocked (GMainContext *context)
+{
+#ifdef G_THREADS_ENABLED
+  if (g_thread_supported() && context->poll_waiting)
+    {
+      context->poll_waiting = FALSE;
+#ifndef G_OS_WIN32
+      write (context->wake_up_pipe[1], "A", 1);
+#else
+      ReleaseSemaphore (context->wake_up_semaphore, 1, NULL);
+#endif
+    }
+#endif
+}
+
+/**
+ * g_main_context_wakeup:
+ * @context: a #GMainContext
+ * 
+ * If @context is currently waiting in a poll(), interrupt
+ * the poll(), and continue the iteration process.
+ **/
+void
+g_main_context_wakeup (GMainContext *context)
+{
+  if (!context)
+    context = g_main_context_default ();
+  
+  g_return_if_fail (context->ref_count > 0);
+
+  LOCK_CONTEXT (context);
+  g_main_context_wakeup_unlocked (context);
+  UNLOCK_CONTEXT (context);
+}
+
+/* Timeouts */
+
+static void
+g_timeout_set_expiration (GTimeoutSource *timeout_source,
+			  GTimeVal       *current_time)
+{
+  guint seconds = timeout_source->interval / 1000;
+  guint msecs = timeout_source->interval - seconds * 1000;
+
+  timeout_source->expiration.tv_sec = current_time->tv_sec + seconds;
+  timeout_source->expiration.tv_usec = current_time->tv_usec + msecs * 1000;
+  if (timeout_source->expiration.tv_usec >= 1000000)
+    {
+      timeout_source->expiration.tv_usec -= 1000000;
+      timeout_source->expiration.tv_sec++;
+    }
+}
+
+static gboolean
+g_timeout_prepare  (GSource  *source,
+		    gint     *timeout)
+{
+  glong sec;
+  glong msec;
+  GTimeVal current_time;
+  
+  GTimeoutSource *timeout_source = (GTimeoutSource *)source;
+
+  g_source_get_current_time (source, &current_time);
+
+  sec = timeout_source->expiration.tv_sec - current_time.tv_sec;
+  msec = (timeout_source->expiration.tv_usec - current_time.tv_usec) / 1000;
+
+  /* We do the following in a rather convoluted fashion to deal with
+   * the fact that we don't have an integral type big enough to hold
+   * the difference of two timevals in millseconds.
+   */
+  if (sec < 0 || (sec == 0 && msec < 0))
+    msec = 0;
+  else
+    {
+      glong interval_sec = timeout_source->interval / 1000;
+      glong interval_msec = timeout_source->interval % 1000;
+
+      if (msec < 0)
+	{
+	  msec += 1000;
+	  sec -= 1;
+	}
+      
+      if (sec > interval_sec ||
+	  (sec == interval_sec && msec > interval_msec))
+	{
+	  /* The system time has been set backwards, so we
+	   * reset the expiration time to now + timeout_source->interval;
+	   * this at least avoids hanging for long periods of time.
+	   */
+	  g_timeout_set_expiration (timeout_source, &current_time);
+	  msec = timeout_source->interval;
+	}
+      else
+	{
+	  msec += sec * 1000;
+	}
+    }
+
+  *timeout = (gint)msec;
+  
+  return msec == 0;
+}
+
+static gboolean 
+g_timeout_check (GSource  *source)
+{
+  GTimeVal current_time;
+  GTimeoutSource *timeout_source = (GTimeoutSource *)source;
+
+  g_source_get_current_time (source, &current_time);
+  
+  return ((timeout_source->expiration.tv_sec < current_time.tv_sec) ||
+	  ((timeout_source->expiration.tv_sec == current_time.tv_sec) &&
+	   (timeout_source->expiration.tv_usec <= current_time.tv_usec)));
+}
+
+static gboolean
+g_timeout_dispatch (GSource    *source,
+		    GSourceFunc callback,
+		    gpointer    user_data)
+{
+  GTimeoutSource *timeout_source = (GTimeoutSource *)source;
+
+  if (!callback)
+    {
+      g_warning ("Timeout source dispatched without callback\n"
+		 "You must call g_source_set_callback().");
+      return FALSE;
+    }
+ 
+  if (callback (user_data))
+    {
+      GTimeVal current_time;
+
+      g_source_get_current_time (source, &current_time);
+      g_timeout_set_expiration (timeout_source, &current_time);
+
+      return TRUE;
+    }
+  else
+    return FALSE;
+}
+
+/**
+ * g_timeout_source_new:
+ * @interval: the timeout interval in milliseconds.
+ * 
+ * Create a new timeout source.
+ *
+ * The source will not initially be associated with any #GMainContext
+ * and must be added to one with g_source_attach() before it will be
+ * executed.
+ * 
+ * Return value: the newly create timeout source
+ **/
+GSource *
+g_timeout_source_new (guint interval)
+{
+  GSource *source = g_source_new (&g_timeout_funcs, sizeof (GTimeoutSource));
+  GTimeoutSource *timeout_source = (GTimeoutSource *)source;
+  GTimeVal current_time;
+
+  timeout_source->interval = interval;
+
+  g_get_current_time (&current_time);
+  g_timeout_set_expiration (timeout_source, &current_time);
+  
+  return source;
+}
+
+/**
+ * g_timeout_add_full:
+ * @priority: the priority of the idle source. Typically this will be in the
+ *            range btweeen #G_PRIORITY_DEFAULT_IDLE and #G_PRIORITY_HIGH_IDLE.
+ * @interval: the time between calls to the function, in milliseconds
+ *             (1/1000ths of a second.)
+ * @function: function to call
+ * @data:     data to pass to @function
+ * @notify:   function to call when the idle is removed, or %NULL
+ * 
+ * Sets a function to be called at regular intervals, with the given
+ * priority.  The function is called repeatedly until it returns
+ * FALSE, at which point the timeout is automatically destroyed and
+ * the function will not be called again.  The @notify function is
+ * called when the timeout is destroyed.  The first call to the
+ * function will be at the end of the first @interval.
+ *
+ * Note that timeout functions may be delayed, due to the processing of other
+ * event sources. Thus they should not be relied on for precise timing.
+ * After each call to the timeout function, the time of the next
+ * timeout is recalculated based on the current time and the given interval
+ * (it does not try to 'catch up' time lost in delays).
+ * 
+ * Return value: the id of event source.
+ **/
+guint
+g_timeout_add_full (gint           priority,
+		    guint          interval,
+		    GSourceFunc    function,
+		    gpointer       data,
+		    GDestroyNotify notify)
+{
+  GSource *source;
+  guint id;
+  
+  g_return_val_if_fail (function != NULL, 0);
+
+  source = g_timeout_source_new (interval);
+
+  if (priority != G_PRIORITY_DEFAULT)
+    g_source_set_priority (source, priority);
+
+  g_source_set_callback (source, function, data, notify);
+  id = g_source_attach (source, NULL);
+  g_source_unref (source);
+
+  return id;
+}
+
+/**
+ * g_timeout_add:
+ * @interval: the time between calls to the function, in milliseconds
+ *             (1/1000ths of a second.)
+ * @function: function to call
+ * @data:     data to pass to @function
+ * 
+ * Sets a function to be called at regular intervals, with the default
+ * priority, #G_PRIORITY_DEFAULT.  The function is called repeatedly
+ * until it returns FALSE, at which point the timeout is automatically
+ * destroyed and the function will not be called again.  The @notify
+ * function is called when the timeout is destroyed.  The first call
+ * to the function will be at the end of the first @interval.
+ *
+ * Note that timeout functions may be delayed, due to the processing of other
+ * event sources. Thus they should not be relied on for precise timing.
+ * After each call to the timeout function, the time of the next
+ * timeout is recalculated based on the current time and the given interval
+ * (it does not try to 'catch up' time lost in delays).
+ * 
+ * Return value: the id of event source.
+ **/
+guint 
+g_timeout_add (guint32        interval,
+	       GSourceFunc    function,
+	       gpointer       data)
+{
+  return g_timeout_add_full (G_PRIORITY_DEFAULT, 
+			     interval, function, data, NULL);
+}
+
+/* Idle functions */
+
+static gboolean 
+g_idle_prepare  (GSource  *source,
+		 gint     *timeout)
+{
+  *timeout = 0;
+
+  return TRUE;
+}
+
+static gboolean 
+g_idle_check    (GSource  *source)
+{
+  return TRUE;
+}
+
+static gboolean
+g_idle_dispatch (GSource    *source, 
+		 GSourceFunc callback,
+		 gpointer    user_data)
+{
+  if (!callback)
+    {
+      g_warning ("Idle source dispatched without callback\n"
+		 "You must call g_source_set_callback().");
+      return FALSE;
+    }
+  
+  return callback (user_data);
+}
+
+/**
+ * g_idle_source_new:
+ * 
+ * Create a new idle source.
+ *
+ * The source will not initially be associated with any #GMainContext
+ * and must be added to one with g_source_attach() before it will be
+ * executed.
+ * 
+ * Return value: the newly created idle source
+ **/
+GSource *
+g_idle_source_new (void)
+{
+  return g_source_new (&g_idle_funcs, sizeof (GSource));
+}
+
+/**
+ * g_idle_add_full:
+ * @priority: the priority of the idle source. Typically this will be in the
+ *            range btweeen #G_PRIORITY_DEFAULT_IDLE and #G_PRIORITY_HIGH_IDLE.
+ * @function: function to call
+ * @data:     data to pass to @function
+ * @notify:   function to call when the idle is removed, or %NULL
+ * 
+ * Adds a function to be called whenever there are no higher priority
+ * events pending.  If the function returns FALSE it is automatically
+ * removed from the list of event sources and will not be called again.
+ * 
+ * Return value: the id of the event source.
+ **/
+guint 
+g_idle_add_full (gint           priority,
+		 GSourceFunc    function,
+		 gpointer       data,
+		 GDestroyNotify notify)
+{
+  GSource *source;
+  guint id;
+  
+  g_return_val_if_fail (function != NULL, 0);
+
+  source = g_idle_source_new ();
+
+  if (priority != G_PRIORITY_DEFAULT)
+    g_source_set_priority (source, priority);
+
+  g_source_set_callback (source, function, data, notify);
+  id = g_source_attach (source, NULL);
+  g_source_unref (source);
+
+  return id;
+}
+
+/**
+ * g_idle_add:
+ * @function: function to call 
+ * @data: data to pass to @function.
+ * 
+ * Adds a function to be called whenever there are no higher priority
+ * events pending to the default main loop. The function is given the
+ * default idle priority, #G_PRIORITY_DEFAULT_IDLE.  If the function
+ * returns FALSE it is automatically removed from the list of event
+ * sources and will not be called again.
+ * 
+ * Return value: the id of the event source.
+ **/
+guint 
+g_idle_add (GSourceFunc    function,
+	    gpointer       data)
+{
+  return g_idle_add_full (G_PRIORITY_DEFAULT_IDLE, function, data, NULL);
+}
+
+/**
+ * g_idle_remove_by_data:
+ * @data: the data for the idle source's callback.
+ * 
+ * Removes the idle function with the given data.
+ * 
+ * Return value: %TRUE if an idle source was found and removed.
+ **/
+gboolean
+g_idle_remove_by_data (gpointer data)
+{
+  return g_source_remove_by_funcs_user_data (&g_idle_funcs, data);
+}
+
diff --git a/graf2d/win32gdk/gdk/src/glib/gmain.h b/graf2d/win32gdk/gdk/src/glib/gmain.h
index dd500c6e83c..cd952888712 100644
--- a/graf2d/win32gdk/gdk/src/glib/gmain.h
+++ b/graf2d/win32gdk/gdk/src/glib/gmain.h
@@ -20,8 +20,8 @@
 #ifndef __G_MAIN_H__
 #define __G_MAIN_H__
 
-#include <gslist.h>
-#include <gthread.h>
+#include <glib/gslist.h>
+#include <glib/gthread.h>
 
 G_BEGIN_DECLS
 
@@ -59,10 +59,13 @@ struct _GSourceCallbackFuncs
   void (*ref)   (gpointer     cb_data);
   void (*unref) (gpointer     cb_data);
   void (*get)   (gpointer     cb_data,
+		 GSource     *source, 
 		 GSourceFunc *func,
 		 gpointer    *data);
 };
 
+typedef void (*GSourceDummyMarshal) (void);
+
 struct _GSourceFuncs
 {
   gboolean (*prepare)  (GSource    *source,
@@ -71,7 +74,11 @@ struct _GSourceFuncs
   gboolean (*dispatch) (GSource    *source,
 			GSourceFunc callback,
 			gpointer    user_data);
-  void     (*destroy)  (GSource    *source); /* Can be NULL */
+  void     (*finalize) (GSource    *source); /* Can be NULL */
+
+  /* For use by g_source_set_closure */
+  GSourceFunc     closure_callback;	   
+  GSourceDummyMarshal closure_marshal; /* Really is of type GClosureMarshal */
 };
 
 /* Any definitions using GPollFD or GPollFunc are primarily
@@ -124,7 +131,9 @@ struct _GPollFD
 
 /* GMainContext: */
 
-GMainContext *g_main_context_get       (GThread      *thread);
+GMainContext *g_main_context_new       (void);
+void          g_main_context_ref       (GMainContext *context);
+void          g_main_context_unref     (GMainContext *context);
 GMainContext *g_main_context_default   (void);
 
 gboolean      g_main_context_iteration (GMainContext *context,
@@ -143,6 +152,13 @@ GSource      *g_main_context_find_source_by_funcs_user_data (GMainContext *conte
 
 /* Low level functions for implementing custom main loops.
  */
+void     g_main_context_wakeup  (GMainContext *context);
+gboolean g_main_context_acquire (GMainContext *context);
+void     g_main_context_release (GMainContext *context);
+gboolean g_main_context_wait    (GMainContext *context,
+				 GCond        *cond,
+				 GMutex       *mutex);
+
 gboolean g_main_context_prepare  (GMainContext *context,
 				  gint         *priority);
 gint     g_main_context_query    (GMainContext *context,
@@ -174,8 +190,10 @@ GMainLoop *g_main_loop_new        (GMainContext *context,
 			    	   gboolean      is_running);
 void       g_main_loop_run        (GMainLoop    *loop);
 void       g_main_loop_quit       (GMainLoop    *loop);
-void       g_main_loop_destroy    (GMainLoop    *loop);
+GMainLoop *g_main_loop_ref        (GMainLoop    *loop);
+void       g_main_loop_unref      (GMainLoop    *loop);
 gboolean   g_main_loop_is_running (GMainLoop    *loop);
+GMainContext *g_main_loop_get_context (GMainLoop    *loop);
 
 /* GSource: */
 
@@ -232,20 +250,16 @@ void g_get_current_time		        (GTimeVal	*result);
 
 /* ============== Compat main loop stuff ================== */
 
+#ifndef G_DISABLE_DEPRECATED
+
 /* Legacy names for GMainLoop functions
  */
 #define 	g_main_new(is_running)	g_main_loop_new (NULL, is_running);
 #define         g_main_run(loop)        g_main_loop_run(loop)
 #define         g_main_quit(loop)       g_main_loop_quit(loop)
-#define         g_main_destroy(loop)    g_main_loop_destroy(loop)
+#define         g_main_destroy(loop)    g_main_loop_unref(loop)
 #define         g_main_is_running(loop) g_main_loop_is_running(loop)
 
-/* Source manipulation by ID */
-gboolean g_source_remove                     (guint          tag);
-gboolean g_source_remove_by_user_data        (gpointer       user_data);
-gboolean g_source_remove_by_funcs_user_data  (GSourceFuncs  *funcs,
-					      gpointer       user_data);
-
 /* Functions to manipulate the default main loop
  */
 
@@ -254,6 +268,14 @@ gboolean g_source_remove_by_funcs_user_data  (GSourceFuncs  *funcs,
 
 #define g_main_set_poll_func(func)   g_main_context_set_poll_func (NULL, func)
 
+#endif /* G_DISABLE_DEPRECATED */
+
+/* Source manipulation by ID */
+gboolean g_source_remove                     (guint          tag);
+gboolean g_source_remove_by_user_data        (gpointer       user_data);
+gboolean g_source_remove_by_funcs_user_data  (GSourceFuncs  *funcs,
+					      gpointer       user_data);
+
 /* Idles and timeouts */
 guint		g_timeout_add_full	(gint           priority,
 					 guint          interval, 
@@ -271,6 +293,10 @@ guint	   	g_idle_add_full		(gint   	priority,
 					 GDestroyNotify notify);
 gboolean	g_idle_remove_by_data	(gpointer	data);
 
+/* Hook for GClosure / GSource integration. Don't touch */
+GLIB_VAR GSourceFuncs g_timeout_funcs;
+GLIB_VAR GSourceFuncs g_idle_funcs;
+
 #ifdef G_OS_WIN32
 
 /* This is used to add polling for Windows messages. GDK (GTK+) programs
diff --git a/graf2d/win32gdk/gdk/src/glib/gmarkup.c b/graf2d/win32gdk/gdk/src/glib/gmarkup.c
new file mode 100644
index 00000000000..bf7ff376c97
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gmarkup.c
@@ -0,0 +1,1735 @@
+/* gmarkup.c - Simple XML-like parser
+ *
+ *  Copyright 2000 Red Hat, Inc.
+ *
+ * GLib is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * GLib is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with GLib; see the file COPYING.LIB.  If not,
+ * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ *   Boston, MA 02111-1307, USA.
+ */
+
+#include "glib.h"
+
+#include <string.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <errno.h>
+
+#include "glibintl.h"
+
+GQuark
+g_markup_error_quark ()
+{
+  static GQuark error_quark = 0;
+
+  if (error_quark == 0)
+    error_quark = g_quark_from_static_string ("g-markup-error-quark");
+
+  return error_quark;
+}
+
+typedef enum
+{
+  STATE_START,
+  STATE_AFTER_OPEN_ANGLE,
+  STATE_AFTER_CLOSE_ANGLE,
+  STATE_AFTER_ELISION_SLASH, /* the slash that obviates need for end element */
+  STATE_INSIDE_OPEN_TAG_NAME,
+  STATE_INSIDE_ATTRIBUTE_NAME,
+  STATE_BETWEEN_ATTRIBUTES,
+  STATE_AFTER_ATTRIBUTE_EQUALS_SIGN,
+  STATE_INSIDE_ATTRIBUTE_VALUE,
+  STATE_INSIDE_TEXT,
+  STATE_AFTER_CLOSE_TAG_SLASH,
+  STATE_INSIDE_CLOSE_TAG_NAME,
+  STATE_INSIDE_PASSTHROUGH,
+  STATE_ERROR
+} GMarkupParseState;
+
+struct _GMarkupParseContext
+{
+  const GMarkupParser *parser;
+
+  GMarkupParseFlags flags;
+
+  gint line_number;
+  gint char_number;
+
+  gpointer user_data;
+  GDestroyNotify dnotify;
+
+  /* A piece of character data or an element that
+   * hasn't "ended" yet so we haven't yet called
+   * the callback for it.
+   */
+  GString *partial_chunk;
+
+  GMarkupParseState state;
+  GSList *tag_stack;
+  gchar **attr_names;
+  gchar **attr_values;
+  gint cur_attr;
+  gint alloc_attrs;
+
+  const gchar *current_text;
+  gssize       current_text_len;      
+  const gchar *current_text_end;
+
+  GString *leftover_char_portion;
+
+  /* used to save the start of the last interesting thingy */
+  const gchar *start;
+
+  const gchar *iter;
+
+  guint document_empty : 1;
+  guint parsing : 1;
+};
+
+/**
+ * g_markup_parse_context_new:
+ * @parser: a #GMarkupParser
+ * @flags: one or more #GMarkupParseFlags
+ * @user_data: user data to pass to #GMarkupParser functions
+ * @user_data_dnotify: user data destroy notifier called when the parse context is freed
+ * 
+ * Creates a new parse context. A parse context is used to parse
+ * marked-up documents. You can feed any number of documents into
+ * a context, as long as no errors occur; once an error occurs,
+ * the parse context can't continue to parse text (you have to free it
+ * and create a new parse context).
+ * 
+ * Return value: a new #GMarkupParseContext
+ **/
+GMarkupParseContext *
+g_markup_parse_context_new (const GMarkupParser *parser,
+                            GMarkupParseFlags    flags,
+                            gpointer             user_data,
+                            GDestroyNotify       user_data_dnotify)
+{
+  GMarkupParseContext *context;
+
+  g_return_val_if_fail (parser != NULL, NULL);
+
+  context = g_new (GMarkupParseContext, 1);
+
+  context->parser = parser;
+  context->flags = flags;
+  context->user_data = user_data;
+  context->dnotify = user_data_dnotify;
+
+  context->line_number = 1;
+  context->char_number = 1;
+
+  context->partial_chunk = NULL;
+
+  context->state = STATE_START;
+  context->tag_stack = NULL;
+  context->attr_names = NULL;
+  context->attr_values = NULL;
+  context->cur_attr = -1;
+  context->alloc_attrs = 0;
+
+  context->current_text = NULL;
+  context->current_text_len = -1;
+  context->current_text_end = NULL;
+  context->leftover_char_portion = NULL;
+
+  context->start = NULL;
+  context->iter = NULL;
+
+  context->document_empty = TRUE;
+  context->parsing = FALSE;
+
+  return context;
+}
+
+/**
+ * g_markup_parse_context_free:
+ * @context: a #GMarkupParseContext
+ * 
+ * Frees a #GMarkupParseContext. Can't be called from inside
+ * one of the #GMarkupParser functions.
+ * 
+ **/
+void
+g_markup_parse_context_free (GMarkupParseContext *context)
+{
+  g_return_if_fail (context != NULL);
+  g_return_if_fail (!context->parsing);
+
+  if (context->dnotify)
+    (* context->dnotify) (context->user_data);
+
+  g_strfreev (context->attr_names);
+  g_strfreev (context->attr_values);
+
+  g_slist_foreach (context->tag_stack, (GFunc)g_free, NULL);
+  g_slist_free (context->tag_stack);
+
+  if (context->partial_chunk)
+    g_string_free (context->partial_chunk, TRUE);
+
+  if (context->leftover_char_portion)
+    g_string_free (context->leftover_char_portion, TRUE);
+
+  g_free (context);
+}
+
+static void
+mark_error (GMarkupParseContext *context,
+            GError              *error)
+{
+  context->state = STATE_ERROR;
+
+  if (context->parser->error)
+    (*context->parser->error) (context, error, context->user_data);
+}
+
+static void
+set_error (GMarkupParseContext *context,
+           GError             **error,
+           GMarkupError         code,
+           const gchar         *format,
+           ...)
+{
+  GError *tmp_error;
+  gchar *s;
+  va_list args;
+
+  va_start (args, format);
+  s = g_strdup_vprintf (format, args);
+  va_end (args);
+
+  tmp_error = g_error_new (G_MARKUP_ERROR,
+                           code,
+                           _("Error on line %d char %d: %s"),
+                           context->line_number,
+                           context->char_number,
+                           s);
+
+  g_free (s);
+
+  mark_error (context, tmp_error);
+
+  g_propagate_error (error, tmp_error);
+}
+
+static gboolean
+is_name_start_char (gunichar c)
+{
+  if (g_unichar_isalpha (c) ||
+      c == '_' ||
+      c == ':')
+    return TRUE;
+  else
+    return FALSE;
+}
+
+static gboolean
+is_name_char (gunichar c)
+{
+  if (g_unichar_isalnum (c) ||
+      c == '.' ||
+      c == '-' ||
+      c == '_' ||
+      c == ':')
+    return TRUE;
+  else
+    return FALSE;
+}
+
+
+static gchar*
+char_str (gunichar c,
+          gchar   *buf)
+{
+  memset (buf, 0, 7);
+  g_unichar_to_utf8 (c, buf);
+  return buf;
+}
+
+static gchar*
+utf8_str (const gchar *utf8,
+          gchar       *buf)
+{
+  char_str (g_utf8_get_char (utf8), buf);
+  return buf;
+}
+
+static void
+set_unescape_error (GMarkupParseContext *context,
+                    GError             **error,
+                    const gchar         *remaining_text,
+                    const gchar         *remaining_text_end,
+                    GMarkupError         code,
+                    const gchar         *format,
+                    ...)
+{
+  GError *tmp_error;
+  gchar *s;
+  va_list args;
+  gint remaining_newlines;
+  const gchar *p;
+
+  remaining_newlines = 0;
+  p = remaining_text;
+  while (p != remaining_text_end)
+    {
+      if (*p == '\n')
+        ++remaining_newlines;
+      ++p;
+    }
+
+  va_start (args, format);
+  s = g_strdup_vprintf (format, args);
+  va_end (args);
+
+  tmp_error = g_error_new (G_MARKUP_ERROR,
+                           code,
+                           _("Error on line %d: %s"),
+                           context->line_number - remaining_newlines,
+                           s);
+
+  g_free (s);
+
+  mark_error (context, tmp_error);
+
+  g_propagate_error (error, tmp_error);
+}
+
+typedef enum
+{
+  USTATE_INSIDE_TEXT,
+  USTATE_AFTER_AMPERSAND,
+  USTATE_INSIDE_ENTITY_NAME,
+  USTATE_AFTER_CHARREF_HASH
+} UnescapeState;
+
+static gboolean
+unescape_text (GMarkupParseContext *context,
+               const gchar         *text,
+               const gchar         *text_end,
+               gchar              **unescaped,
+               GError             **error)
+{
+#define MAX_ENT_LEN 5
+  GString *str;
+  const gchar *p;
+  UnescapeState state;
+  const gchar *start;
+
+  str = g_string_new ("");
+
+  state = USTATE_INSIDE_TEXT;
+  p = text;
+  start = p;
+  while (p != text_end && context->state != STATE_ERROR)
+    {
+      g_assert (p < text_end);
+      
+      switch (state)
+        {
+        case USTATE_INSIDE_TEXT:
+          {
+            while (p != text_end && *p != '&')
+              p = g_utf8_next_char (p);
+
+            if (p != start)
+              {
+                g_string_append_len (str, start, p - start);
+
+                start = NULL;
+              }
+            
+            if (p != text_end && *p == '&')
+              {
+                p = g_utf8_next_char (p);
+                state = USTATE_AFTER_AMPERSAND;
+              }
+          }
+          break;
+
+        case USTATE_AFTER_AMPERSAND:
+          {
+            if (*p == '#')
+              {
+                p = g_utf8_next_char (p);
+
+                start = p;
+                state = USTATE_AFTER_CHARREF_HASH;
+              }
+            else if (!is_name_start_char (g_utf8_get_char (p)))
+              {
+                if (*p == ';')
+                  {
+                    set_unescape_error (context, error,
+                                        p, text_end,
+                                        G_MARKUP_ERROR_PARSE,
+                                        _("Empty entity '&;' seen; valid "
+                                          "entities are: &amp; &quot; &lt; &gt; &apos;"));
+                  }
+                else
+                  {
+                    gchar buf[7];
+
+                    set_unescape_error (context, error,
+                                        p, text_end,
+                                        G_MARKUP_ERROR_PARSE,
+                                        _("Character '%s' is not valid at "
+                                          "the start of an entity name; "
+                                          "the & character begins an entity; "
+                                          "if this ampersand isn't supposed "
+                                          "to be an entity, escape it as "
+                                          "&amp;"),
+                                        utf8_str (p, buf));
+                  }
+              }
+            else
+              {
+                start = p;
+                state = USTATE_INSIDE_ENTITY_NAME;
+              }
+          }
+          break;
+
+
+        case USTATE_INSIDE_ENTITY_NAME:
+          {
+            gchar buf[MAX_ENT_LEN+1] = {
+              '\0', '\0', '\0', '\0', '\0', '\0'
+            };
+            gchar *dest;
+
+            while (p != text_end)
+              {
+                if (*p == ';')
+                  break;
+                else if (!is_name_char (*p))
+                  {
+                    gchar ubuf[7];
+
+                    set_unescape_error (context, error,
+                                        p, text_end,
+                                        G_MARKUP_ERROR_PARSE,
+                                        _("Character '%s' is not valid "
+                                          "inside an entity name"),
+                                        utf8_str (p, ubuf));
+                    break;
+                  }
+
+                p = g_utf8_next_char (p);
+              }
+
+            if (context->state != STATE_ERROR)
+              {
+                if (p != text_end)
+                  {
+                    const gchar *src;
+                
+                    src = start;
+                    dest = buf;
+                    while (src != p)
+                      {
+                        *dest = *src;
+                        ++dest;
+                        ++src;
+                      }
+
+                    /* move to after semicolon */
+                    p = g_utf8_next_char (p);
+                    start = p;
+                    state = USTATE_INSIDE_TEXT;
+
+                    if (strcmp (buf, "lt") == 0)
+                      g_string_append_c (str, '<');
+                    else if (strcmp (buf, "gt") == 0)
+                      g_string_append_c (str, '>');
+                    else if (strcmp (buf, "amp") == 0)
+                      g_string_append_c (str, '&');
+                    else if (strcmp (buf, "quot") == 0)
+                      g_string_append_c (str, '"');
+                    else if (strcmp (buf, "apos") == 0)
+                      g_string_append_c (str, '\'');
+                    else
+                      {
+                        set_unescape_error (context, error,
+                                            p, text_end,
+                                            G_MARKUP_ERROR_PARSE,
+                                            _("Entity name '%s' is not known"),
+                                            buf);
+                      }
+                  }
+                else
+                  {
+                    set_unescape_error (context, error,
+                                        /* give line number of the & */
+                                        start, text_end,
+                                        G_MARKUP_ERROR_PARSE,
+                                        _("Entity did not end with a semicolon; "
+                                          "most likely you used an ampersand "
+                                          "character without intending to start "
+                                          "an entity - escape ampersand as &amp;"));
+                  }
+              }
+          }
+          break;
+
+        case USTATE_AFTER_CHARREF_HASH:
+          {
+            gboolean is_hex = FALSE;
+            if (*p == 'x')
+              {
+                is_hex = TRUE;
+                p = g_utf8_next_char (p);
+                start = p;
+              }
+
+            while (p != text_end && *p != ';')
+              p = g_utf8_next_char (p);
+
+            if (p != text_end)
+              {
+                g_assert (*p == ';');
+
+                /* digit is between start and p */
+
+                if (start != p)
+                  {
+                    gchar *digit = g_strndup (start, p - start);
+                    gulong l;
+                    gchar *end = NULL;
+                    gchar *digit_end = digit + (p - start);
+                    
+                    errno = 0;
+                    if (is_hex)
+                      l = strtoul (digit, &end, 16);
+                    else
+                      l = strtoul (digit, &end, 10);
+
+                    if (end != digit_end || errno != 0)
+                      {
+                        set_unescape_error (context, error,
+                                            start, text_end,
+                                            G_MARKUP_ERROR_PARSE,
+                                            _("Failed to parse '%s', which "
+                                              "should have been a digit "
+                                              "inside a character reference "
+                                              "(&#234; for example) - perhaps "
+                                              "the digit is too large"),
+                                            digit);
+                      }
+                    else
+                      {
+                        /* characters XML permits */
+                        if (l == 0x9 ||
+                            l == 0xA ||
+                            l == 0xD ||
+                            (l >= 0x20 && l <= 0xD7FF) ||
+                            (l >= 0xE000 && l <= 0xFFFD) ||
+                            (l >= 0x10000 && l <= 0x10FFFF))
+                          {
+                            gchar buf[7];
+                            g_string_append (str, char_str (l, buf));
+                          }
+                        else
+                          {
+                            set_unescape_error (context, error,
+                                                start, text_end,
+                                                G_MARKUP_ERROR_PARSE,
+                                                _("Character reference '%s' does not encode a permitted character"),
+                                                digit);
+                          }
+                      }
+
+                    g_free (digit);
+
+                    /* Move to next state */
+                    p = g_utf8_next_char (p); /* past semicolon */
+                    start = p;
+                    state = USTATE_INSIDE_TEXT;
+                  }
+                else
+                  {
+                    set_unescape_error (context, error,
+                                        start, text_end,
+                                        G_MARKUP_ERROR_PARSE,
+                                        _("Empty character reference; "
+                                          "should include a digit such as "
+                                          "&#454;"));
+                  }
+              }
+            else
+              {
+                set_unescape_error (context, error,
+                                    start, text_end,
+                                    G_MARKUP_ERROR_PARSE,
+                                    _("Character reference did not end with a "
+                                      "semicolon; "
+                                      "most likely you used an ampersand "
+                                      "character without intending to start "
+                                      "an entity - escape ampersand as &amp;"));
+              }
+          }
+          break;
+
+        default:
+          g_assert_not_reached ();
+          break;
+        }
+    }
+
+  /* If no errors, we should have returned to USTATE_INSIDE_TEXT */
+  g_assert (context->state == STATE_ERROR ||
+            state == USTATE_INSIDE_TEXT);
+
+  if (context->state == STATE_ERROR)
+    {
+      g_string_free (str, TRUE);
+      *unescaped = NULL;
+      return FALSE;
+    }
+  else
+    {
+      *unescaped = g_string_free (str, FALSE);
+      return TRUE;
+    }
+
+#undef MAX_ENT_LEN
+}
+
+static gboolean
+advance_char (GMarkupParseContext *context)
+{
+
+  context->iter = g_utf8_next_char (context->iter);
+  context->char_number += 1;
+  if (*context->iter == '\n')
+    {
+      context->line_number += 1;
+      context->char_number = 1;
+    }
+
+  return context->iter != context->current_text_end;
+}
+
+static void
+skip_spaces (GMarkupParseContext *context)
+{
+  do
+    {
+      if (!g_unichar_isspace (g_utf8_get_char (context->iter)))
+        return;
+    }
+  while (advance_char (context));
+}
+
+static void
+advance_to_name_end (GMarkupParseContext *context)
+{
+  do
+    {
+      if (!is_name_char (g_utf8_get_char (context->iter)))
+        return;
+    }
+  while (advance_char (context));
+}
+
+static void
+add_to_partial (GMarkupParseContext *context,
+                const gchar         *text_start,
+                const gchar         *text_end)
+{
+  if (context->partial_chunk == NULL)
+    context->partial_chunk = g_string_new ("");
+
+  if (text_start != text_end)
+    g_string_append_len (context->partial_chunk, text_start,
+                         text_end - text_start);
+
+  /* Invariant here that partial_chunk exists */
+}
+
+static void
+truncate_partial (GMarkupParseContext *context)
+{
+  if (context->partial_chunk != NULL)
+    {
+      context->partial_chunk = g_string_truncate (context->partial_chunk, 0);
+    }
+}
+
+static const gchar*
+current_element (GMarkupParseContext *context)
+{
+  return context->tag_stack->data;
+}
+
+static const gchar*
+current_attribute (GMarkupParseContext *context)
+{
+  g_assert (context->cur_attr >= 0);
+  return context->attr_names[context->cur_attr];
+}
+
+static void
+find_current_text_end (GMarkupParseContext *context)
+{
+  /* This function must be safe (non-segfaulting) on invalid UTF8 */
+  const gchar *end = context->current_text + context->current_text_len;
+  const gchar *p;
+  const gchar *next;
+
+  g_assert (context->current_text_len > 0);
+
+  p = context->current_text;
+  next = g_utf8_find_next_char (p, end);
+
+  while (next)
+    {
+      p = next;
+      next = g_utf8_find_next_char (p, end);
+    }
+
+  /* p is now the start of the last character or character portion. */
+  g_assert (p != end);
+  next = g_utf8_next_char (p); /* this only touches *p, nothing beyond */
+
+  if (next == end)
+    {
+      /* whole character */
+      context->current_text_end = end;
+    }
+  else
+    {
+      /* portion */
+      context->leftover_char_portion = g_string_new_len (p, end - p);
+      context->current_text_len -= (end - p);
+      context->current_text_end = p;
+    }
+}
+
+static void
+add_attribute (GMarkupParseContext *context, char *name)
+{
+  if (context->cur_attr + 2 >= context->alloc_attrs)
+    {
+      context->alloc_attrs += 5; /* silly magic number */
+      context->attr_names = g_realloc (context->attr_names, sizeof(char*)*context->alloc_attrs);
+      context->attr_values = g_realloc (context->attr_values, sizeof(char*)*context->alloc_attrs);
+    }
+  context->cur_attr++;
+  context->attr_names[context->cur_attr] = name;
+  context->attr_values[context->cur_attr] = NULL;
+  context->attr_names[context->cur_attr+1] = NULL;
+}
+
+/**
+ * g_markup_parse_context_parse:
+ * @context: a #GMarkupParseContext
+ * @text: chunk of text to parse
+ * @text_len: length of @text in bytes
+ * @error: return location for a #GError
+ * 
+ * Feed some data to the #GMarkupParseContext. The data need not
+ * be valid UTF-8; an error will be signaled if it's invalid.
+ * The data need not be an entire document; you can feed a document
+ * into the parser incrementally, via multiple calls to this function.
+ * Typically, as you receive data from a network connection or file,
+ * you feed each received chunk of data into this function, aborting
+ * the process if an error occurs. Once an error is reported, no further
+ * data may be fed to the #GMarkupParseContext; all errors are fatal.
+ * 
+ * Return value: %FALSE if an error occurred, %TRUE on success
+ **/
+gboolean
+g_markup_parse_context_parse (GMarkupParseContext *context,
+                              const gchar         *text,
+                              gssize               text_len,
+                              GError             **error)
+{
+  const gchar *first_invalid;
+  
+  g_return_val_if_fail (context != NULL, FALSE);
+  g_return_val_if_fail (text != NULL, FALSE);
+  g_return_val_if_fail (context->state != STATE_ERROR, FALSE);
+  g_return_val_if_fail (!context->parsing, FALSE);
+  
+  if (text_len < 0)
+    text_len = strlen (text);
+
+  if (text_len == 0)
+    return TRUE;
+  
+  context->parsing = TRUE;
+  
+  if (context->leftover_char_portion)
+    {
+      const gchar *first_char;
+
+      if ((*text & 0xc0) != 0x80)
+        first_char = text;
+      else
+        first_char = g_utf8_find_next_char (text, text + text_len);
+
+      if (first_char)
+        {
+          /* leftover_char_portion was completed. Parse it. */
+          GString *portion = context->leftover_char_portion;
+          
+          g_string_append_len (context->leftover_char_portion,
+                               text, first_char - text);
+
+          /* hacks to allow recursion */
+          context->parsing = FALSE;
+          context->leftover_char_portion = NULL;
+          
+          if (!g_markup_parse_context_parse (context,
+                                             portion->str, portion->len,
+                                             error))
+            {
+              g_assert (context->state == STATE_ERROR);
+            }
+          
+          g_string_free (portion, TRUE);
+          context->parsing = TRUE;
+
+          /* Skip the fraction of char that was in this text */
+          text_len -= (first_char - text);
+          text = first_char;
+        }
+      else
+        {
+          /* another little chunk of the leftover char; geez
+           * someone is inefficient.
+           */
+          g_string_append_len (context->leftover_char_portion,
+                               text, text_len);
+
+          if (context->leftover_char_portion->len > 7)
+            {
+              /* The leftover char portion is too big to be
+               * a UTF-8 character
+               */
+              set_error (context,
+                         error,
+                         G_MARKUP_ERROR_BAD_UTF8,
+                         _("Invalid UTF-8 encoded text"));
+            }
+          
+          goto finished;
+        }
+    }
+
+  context->current_text = text;
+  context->current_text_len = text_len;
+  context->iter = context->current_text;
+  context->start = context->iter;
+
+  /* Nothing left after finishing the leftover char, or nothing
+   * passed in to begin with.
+   */
+  if (context->current_text_len == 0)
+    goto finished;
+
+  /* find_current_text_end () assumes the string starts at
+   * a character start, so we need to validate at least
+   * that much. It doesn't assume any following bytes
+   * are valid.
+   */
+  if ((*context->current_text & 0xc0) == 0x80) /* not a char start */
+    {
+      set_error (context,
+                 error,
+                 G_MARKUP_ERROR_BAD_UTF8,
+                 _("Invalid UTF-8 encoded text"));
+      goto finished;
+    }
+
+  /* Initialize context->current_text_end, possibly adjusting
+   * current_text_len, and add any leftover char portion
+   */
+  find_current_text_end (context);
+
+  /* Validate UTF8 (must be done after we find the end, since
+   * we could have a trailing incomplete char)
+   */
+  if (!g_utf8_validate (context->current_text,
+                        context->current_text_len,
+                        &first_invalid))
+    {
+      gint newlines = 0;
+      const gchar *p;
+      p = context->current_text;
+      while (p != context->current_text_end)
+        {
+          if (*p == '\n')
+            ++newlines;
+          ++p;
+        }
+
+      context->line_number += newlines;
+
+      set_error (context,
+                 error,
+                 G_MARKUP_ERROR_BAD_UTF8,
+                 _("Invalid UTF-8 encoded text"));
+      goto finished;
+    }
+
+  while (context->iter != context->current_text_end)
+    {
+      switch (context->state)
+        {
+        case STATE_START:
+          /* Possible next state: AFTER_OPEN_ANGLE */
+
+          g_assert (context->tag_stack == NULL);
+
+          /* whitespace is ignored outside of any elements */
+          skip_spaces (context);
+
+          if (context->iter != context->current_text_end)
+            {
+              if (*context->iter == '<')
+                {
+                  /* Move after the open angle */
+                  advance_char (context);
+
+                  context->state = STATE_AFTER_OPEN_ANGLE;
+
+                  /* this could start a passthrough */
+                  context->start = context->iter;
+
+                  /* document is now non-empty */
+                  context->document_empty = FALSE;
+                }
+              else
+                {
+                  set_error (context,
+                             error,
+                             G_MARKUP_ERROR_PARSE,
+                             _("Document must begin with an element (e.g. <book>)"));
+                }
+            }
+          break;
+
+        case STATE_AFTER_OPEN_ANGLE:
+          /* Possible next states: INSIDE_OPEN_TAG_NAME,
+           *  AFTER_CLOSE_TAG_SLASH, INSIDE_PASSTHROUGH
+           */
+          if (*context->iter == '?' ||
+              *context->iter == '!')
+            {
+              /* include < in the passthrough */
+              const gchar *openangle = "<";
+              add_to_partial (context, openangle, openangle + 1);
+              context->start = context->iter;
+              context->state = STATE_INSIDE_PASSTHROUGH;
+            }
+          else if (*context->iter == '/')
+            {
+              /* move after it */
+              advance_char (context);
+
+              context->state = STATE_AFTER_CLOSE_TAG_SLASH;
+            }
+          else if (is_name_start_char (g_utf8_get_char (context->iter)))
+            {
+              context->state = STATE_INSIDE_OPEN_TAG_NAME;
+
+              /* start of tag name */
+              context->start = context->iter;
+            }
+          else
+            {
+              gchar buf[7];
+              set_error (context,
+                         error,
+                         G_MARKUP_ERROR_PARSE,
+                         _("'%s' is not a valid character following "
+                           "a '<' character; it may not begin an "
+                           "element name"),
+                         utf8_str (context->iter, buf));
+            }
+          break;
+
+          /* The AFTER_CLOSE_ANGLE state is actually sort of
+           * broken, because it doesn't correspond to a range
+           * of characters in the input stream as the others do,
+           * and thus makes things harder to conceptualize
+           */
+        case STATE_AFTER_CLOSE_ANGLE:
+          /* Possible next states: INSIDE_TEXT, STATE_START */
+          if (context->tag_stack == NULL)
+            {
+              context->start = NULL;
+              context->state = STATE_START;
+            }
+          else
+            {
+              context->start = context->iter;
+              context->state = STATE_INSIDE_TEXT;
+            }
+          break;
+
+        case STATE_AFTER_ELISION_SLASH:
+          /* Possible next state: AFTER_CLOSE_ANGLE */
+
+          {
+            /* We need to pop the tag stack and call the end_element
+             * function, since this is the close tag
+             */
+            GError *tmp_error = NULL;
+          
+            g_assert (context->tag_stack != NULL);
+
+            tmp_error = NULL;
+            if (context->parser->end_element)
+              (* context->parser->end_element) (context,
+                                                context->tag_stack->data,
+                                                context->user_data,
+                                                &tmp_error);
+          
+            if (tmp_error)
+              {
+                mark_error (context, tmp_error);
+                g_propagate_error (error, tmp_error);
+              }          
+            else
+              {
+                if (*context->iter == '>')
+                  {
+                    /* move after the close angle */
+                    advance_char (context);
+                    context->state = STATE_AFTER_CLOSE_ANGLE;
+                  }
+                else
+                  {
+                    gchar buf[7];
+                    set_error (context,
+                               error,
+                               G_MARKUP_ERROR_PARSE,
+                               _("Odd character '%s', expected a '>' character "
+                                 "to end the start tag of element '%s'"),
+                               utf8_str (context->iter, buf),
+                               current_element (context));
+                  }
+              }
+
+            g_free (context->tag_stack->data);
+            context->tag_stack = g_slist_delete_link (context->tag_stack,
+                                                      context->tag_stack);
+          }
+          break;
+
+        case STATE_INSIDE_OPEN_TAG_NAME:
+          /* Possible next states: BETWEEN_ATTRIBUTES */
+
+          /* if there's a partial chunk then it's the first part of the
+           * tag name. If there's a context->start then it's the start
+           * of the tag name in current_text, the partial chunk goes
+           * before that start though.
+           */
+          advance_to_name_end (context);
+
+          if (context->iter == context->current_text_end)
+            {
+              /* The name hasn't necessarily ended. Merge with
+               * partial chunk, leave state unchanged.
+               */
+              add_to_partial (context, context->start, context->iter);
+            }
+          else
+            {
+              /* The name has ended. Combine it with the partial chunk
+               * if any; push it on the stack; enter next state.
+               */
+              add_to_partial (context, context->start, context->iter);
+              context->tag_stack =
+                g_slist_prepend (context->tag_stack,
+                                 g_string_free (context->partial_chunk,
+                                                FALSE));
+
+              context->partial_chunk = NULL;
+
+              context->state = STATE_BETWEEN_ATTRIBUTES;
+              context->start = NULL;
+            }
+          break;
+
+        case STATE_INSIDE_ATTRIBUTE_NAME:
+          /* Possible next states: AFTER_ATTRIBUTE_EQUALS_SIGN */
+
+          /* read the full name, if we enter the equals sign state
+           * then add the attribute to the list (without the value),
+           * otherwise store a partial chunk to be prepended later.
+           */
+          advance_to_name_end (context);
+
+          if (context->iter == context->current_text_end)
+            {
+              /* The name hasn't necessarily ended. Merge with
+               * partial chunk, leave state unchanged.
+               */
+              add_to_partial (context, context->start, context->iter);
+            }
+          else
+            {
+              /* The name has ended. Combine it with the partial chunk
+               * if any; push it on the stack; enter next state.
+               */
+              add_to_partial (context, context->start, context->iter);
+
+              add_attribute (context, g_string_free (context->partial_chunk, FALSE));
+
+              context->partial_chunk = NULL;
+              context->start = NULL;
+
+              if (*context->iter == '=')
+                {
+                  advance_char (context);
+                  context->state = STATE_AFTER_ATTRIBUTE_EQUALS_SIGN;
+                }
+              else
+                {
+                  gchar buf[7];
+                  set_error (context,
+                             error,
+                             G_MARKUP_ERROR_PARSE,
+                             _("Odd character '%s', expected a '=' after "
+                               "attribute name '%s' of element '%s'"),
+                             utf8_str (context->iter, buf),
+                             current_attribute (context),
+                             current_element (context));
+
+                }
+            }
+          break;
+
+        case STATE_BETWEEN_ATTRIBUTES:
+          /* Possible next states: AFTER_CLOSE_ANGLE,
+           * AFTER_ELISION_SLASH, INSIDE_ATTRIBUTE_NAME
+           */
+          skip_spaces (context);
+
+          if (context->iter != context->current_text_end)
+            {
+              if (*context->iter == '/')
+                {
+                  advance_char (context);
+                  context->state = STATE_AFTER_ELISION_SLASH;
+                }
+              else if (*context->iter == '>')
+                {
+
+                  advance_char (context);
+                  context->state = STATE_AFTER_CLOSE_ANGLE;
+                }
+              else if (is_name_start_char (g_utf8_get_char (context->iter)))
+                {
+                  context->state = STATE_INSIDE_ATTRIBUTE_NAME;
+                  /* start of attribute name */
+                  context->start = context->iter;
+                }
+              else
+                {
+                  gchar buf[7];
+                  set_error (context,
+                             error,
+                             G_MARKUP_ERROR_PARSE,
+                             _("Odd character '%s', expected a '>' or '/' "
+                               "character to end the start tag of "
+                               "element '%s', or optionally an attribute; "
+                               "perhaps you used an invalid character in "
+                               "an attribute name"),
+                             utf8_str (context->iter, buf),
+                             current_element (context));
+                }
+
+              /* If we're done with attributes, invoke
+               * the start_element callback
+               */
+              if (context->state == STATE_AFTER_ELISION_SLASH ||
+                  context->state == STATE_AFTER_CLOSE_ANGLE)
+                {
+                  const gchar *start_name;
+		  /* Ugly, but the current code expects an empty array instead of NULL */
+		  const gchar *empty = NULL;
+                  const gchar **attr_names =  &empty;
+                  const gchar **attr_values = &empty;
+                  GError *tmp_error;
+
+                  /* Call user callback for element start */
+                  start_name = current_element (context);
+
+		  if (context->cur_attr >= 0)
+		    {
+		      attr_names = (const gchar**)context->attr_names;
+		      attr_values = (const gchar**)context->attr_values;
+		    }
+
+                  tmp_error = NULL;
+                  if (context->parser->start_element)
+                    (* context->parser->start_element) (context,
+                                                        start_name,
+                                                        (const gchar **)attr_names,
+                                                        (const gchar **)attr_values,
+                                                        context->user_data,
+                                                        &tmp_error);
+
+                  /* Go ahead and free the attributes. */
+		  for (; context->cur_attr >= 0; context->cur_attr--)
+		    {
+		      int pos = context->cur_attr;
+		      g_free (context->attr_names[pos]);
+		      g_free (context->attr_values[pos]);
+		      context->attr_names[pos] = context->attr_values[pos] = NULL;
+		    }
+                  context->cur_attr = -1;
+
+                  if (tmp_error != NULL)
+                    {
+                      mark_error (context, tmp_error);
+                      g_propagate_error (error, tmp_error);
+                    }
+                }
+            }
+          break;
+
+        case STATE_AFTER_ATTRIBUTE_EQUALS_SIGN:
+          /* Possible next state: INSIDE_ATTRIBUTE_VALUE */
+          if (*context->iter == '"')
+            {
+              advance_char (context);
+              context->state = STATE_INSIDE_ATTRIBUTE_VALUE;
+              context->start = context->iter;
+            }
+          else
+            {
+              gchar buf[7];
+              set_error (context,
+                         error,
+                         G_MARKUP_ERROR_PARSE,
+                         _("Odd character '%s', expected an open quote mark "
+                           "after the equals sign when giving value for "
+                           "attribute '%s' of element '%s'"),
+                         utf8_str (context->iter, buf),
+                         current_attribute (context),
+                         current_element (context));
+            }
+          break;
+
+        case STATE_INSIDE_ATTRIBUTE_VALUE:
+          /* Possible next states: BETWEEN_ATTRIBUTES */
+          do
+            {
+              if (*context->iter == '"')
+                break;
+            }
+          while (advance_char (context));
+
+          if (context->iter == context->current_text_end)
+            {
+              /* The value hasn't necessarily ended. Merge with
+               * partial chunk, leave state unchanged.
+               */
+              add_to_partial (context, context->start, context->iter);
+            }
+          else
+            {
+              /* The value has ended at the quote mark. Combine it
+               * with the partial chunk if any; set it for the current
+               * attribute.
+               */
+              add_to_partial (context, context->start, context->iter);
+
+              g_assert (context->cur_attr >= 0);
+              
+              if (unescape_text (context,
+                                 context->partial_chunk->str,
+                                 context->partial_chunk->str +
+                                 context->partial_chunk->len,
+                                 &context->attr_values[context->cur_attr],
+                                 error))
+                {
+                  /* success, advance past quote and set state. */
+                  advance_char (context);
+                  context->state = STATE_BETWEEN_ATTRIBUTES;
+                  context->start = NULL;
+                }
+              
+              truncate_partial (context);
+            }
+          break;
+
+        case STATE_INSIDE_TEXT:
+          /* Possible next states: AFTER_OPEN_ANGLE */
+          do
+            {
+              if (*context->iter == '<')
+                break;
+            }
+          while (advance_char (context));
+
+          /* The text hasn't necessarily ended. Merge with
+           * partial chunk, leave state unchanged.
+           */
+
+          add_to_partial (context, context->start, context->iter);
+
+          if (context->iter != context->current_text_end)
+            {
+              gchar *unescaped = NULL;
+
+              /* The text has ended at the open angle. Call the text
+               * callback.
+               */
+              
+              if (unescape_text (context,
+                                 context->partial_chunk->str,
+                                 context->partial_chunk->str +
+                                 context->partial_chunk->len,
+                                 &unescaped,
+                                 error))
+                {
+                  GError *tmp_error = NULL;
+
+                  if (context->parser->text)
+                    (*context->parser->text) (context,
+                                              unescaped,
+                                              strlen (unescaped),
+                                              context->user_data,
+                                              &tmp_error);
+                  
+                  g_free (unescaped);
+
+                  if (tmp_error == NULL)
+                    {
+                      /* advance past open angle and set state. */
+                      advance_char (context);
+                      context->state = STATE_AFTER_OPEN_ANGLE;
+                      /* could begin a passthrough */
+                      context->start = context->iter;
+                    }
+                  else
+                    {
+                      mark_error (context, tmp_error);
+                      g_propagate_error (error, tmp_error);
+                    }
+                }
+
+              truncate_partial (context);
+            }
+          break;
+
+        case STATE_AFTER_CLOSE_TAG_SLASH:
+          /* Possible next state: INSIDE_CLOSE_TAG_NAME */
+          if (is_name_start_char (g_utf8_get_char (context->iter)))
+            {
+              context->state = STATE_INSIDE_CLOSE_TAG_NAME;
+
+              /* start of tag name */
+              context->start = context->iter;
+            }
+          else
+            {
+              gchar buf[7];
+              set_error (context,
+                         error,
+                         G_MARKUP_ERROR_PARSE,
+                         _("'%s' is not a valid character following "
+                           "the characters '</'; '%s' may not begin an "
+                           "element name"),
+                         utf8_str (context->iter, buf),
+                         utf8_str (context->iter, buf));
+            }
+          break;
+
+        case STATE_INSIDE_CLOSE_TAG_NAME:
+          /* Possible next state: AFTER_CLOSE_ANGLE */
+          advance_to_name_end (context);
+
+          if (context->iter == context->current_text_end)
+            {
+              /* The name hasn't necessarily ended. Merge with
+               * partial chunk, leave state unchanged.
+               */
+              add_to_partial (context, context->start, context->iter);
+            }
+          else
+            {
+              /* The name has ended. Combine it with the partial chunk
+               * if any; check that it matches stack top and pop
+               * stack; invoke proper callback; enter next state.
+               */
+              gchar *close_name;
+
+              add_to_partial (context, context->start, context->iter);
+
+              close_name = g_string_free (context->partial_chunk, FALSE);
+              context->partial_chunk = NULL;
+              
+              if (context->tag_stack == NULL)
+                {
+                  set_error (context,
+                             error,
+                             G_MARKUP_ERROR_PARSE,
+                             _("Element '%s' was closed, no element "
+                               "is currently open"),
+                             close_name);
+                }
+              else if (strcmp (close_name, current_element (context)) != 0)
+                {
+                  set_error (context,
+                             error,
+                             G_MARKUP_ERROR_PARSE,
+                             _("Element '%s' was closed, but the currently "
+                               "open element is '%s'"),
+                             close_name,
+                             current_element (context));
+                }
+              else if (*context->iter != '>')
+                {
+                  gchar buf[7];
+                  set_error (context,
+                             error,
+                             G_MARKUP_ERROR_PARSE,
+                             _("'%s' is not a valid character following "
+                               "the close element name '%s'; the allowed "
+                               "character is '>'"),
+                             utf8_str (context->iter, buf),
+                             close_name);
+                }
+              else
+                {
+                  GError *tmp_error;
+                  advance_char (context);
+                  context->state = STATE_AFTER_CLOSE_ANGLE;
+                  context->start = NULL;
+
+                  /* call the end_element callback */
+                  tmp_error = NULL;
+                  if (context->parser->end_element)
+                    (* context->parser->end_element) (context,
+                                                      close_name,
+                                                      context->user_data,
+                                                      &tmp_error);
+
+                  
+                  /* Pop the tag stack */
+                  g_free (context->tag_stack->data);
+                  context->tag_stack = g_slist_delete_link (context->tag_stack,
+                                                            context->tag_stack);
+                  
+                  if (tmp_error)
+                    {
+                      mark_error (context, tmp_error);
+                      g_propagate_error (error, tmp_error);
+                    }
+                }
+
+              g_free (close_name);
+            }
+          break;
+
+        case STATE_INSIDE_PASSTHROUGH:
+          /* Possible next state: AFTER_CLOSE_ANGLE */
+          do
+            {
+              if (*context->iter == '>')
+                break;
+            }
+          while (advance_char (context));
+
+          if (context->iter == context->current_text_end)
+            {
+              /* The passthrough hasn't necessarily ended. Merge with
+               * partial chunk, leave state unchanged.
+               */
+              add_to_partial (context, context->start, context->iter);
+            }
+          else
+            {
+              /* The passthrough has ended at the close angle. Combine
+               * it with the partial chunk if any. Call the passthrough
+               * callback. Note that the open/close angles are
+               * included in the text of the passthrough.
+               */
+              GError *tmp_error = NULL;
+
+              advance_char (context); /* advance past close angle */
+              add_to_partial (context, context->start, context->iter);
+
+              if (context->parser->passthrough)
+                (*context->parser->passthrough) (context,
+                                                 context->partial_chunk->str,
+                                                 context->partial_chunk->len,
+                                                 context->user_data,
+                                                 &tmp_error);
+                  
+              truncate_partial (context);
+
+              if (tmp_error == NULL)
+                {
+                  context->state = STATE_AFTER_CLOSE_ANGLE;
+                  context->start = context->iter; /* could begin text */
+                }
+              else
+                {
+                  mark_error (context, tmp_error);
+                  g_propagate_error (error, tmp_error);
+                }
+            }
+          break;
+
+        case STATE_ERROR:
+          goto finished;
+          break;
+
+        default:
+          g_assert_not_reached ();
+          break;
+        }
+    }
+
+ finished:
+  context->parsing = FALSE;
+
+  return context->state != STATE_ERROR;
+}
+
+/**
+ * g_markup_parse_context_end_parse:
+ * @context: a #GMarkupParseContext
+ * @error: return location for a #GError
+ * 
+ * Signals to the #GMarkupParseContext that all data has been
+ * fed into the parse context with g_markup_parse_context_parse().
+ * This function reports an error if the document isn't complete,
+ * for example if elements are still open.
+ * 
+ * Return value: %TRUE on success, %FALSE if an error was set
+ **/
+gboolean
+g_markup_parse_context_end_parse (GMarkupParseContext *context,
+                                  GError             **error)
+{
+  g_return_val_if_fail (context != NULL, FALSE);
+  g_return_val_if_fail (!context->parsing, FALSE);
+  g_return_val_if_fail (context->state != STATE_ERROR, FALSE);
+
+  if (context->partial_chunk != NULL)
+    {
+      g_string_free (context->partial_chunk, TRUE);
+      context->partial_chunk = NULL;
+    }
+
+  if (context->document_empty)
+    {
+      set_error (context, error, G_MARKUP_ERROR_EMPTY,
+                 _("Document was empty or contained only whitespace"));
+      return FALSE;
+    }
+  
+  context->parsing = TRUE;
+  
+  switch (context->state)
+    {
+    case STATE_START:
+      /* Nothing to do */
+      break;
+
+    case STATE_AFTER_OPEN_ANGLE:
+      set_error (context, error, G_MARKUP_ERROR_PARSE,
+                 _("Document ended unexpectedly just after an open angle bracket '<'"));
+      break;
+
+    case STATE_AFTER_CLOSE_ANGLE:
+      if (context->tag_stack != NULL)
+        {
+          /* Error message the same as for INSIDE_TEXT */
+          set_error (context, error, G_MARKUP_ERROR_PARSE,
+                     _("Document ended unexpectedly with elements still open - "
+                       "'%s' was the last element opened"),
+                     current_element (context));
+        }
+      break;
+      
+    case STATE_AFTER_ELISION_SLASH:
+      set_error (context, error, G_MARKUP_ERROR_PARSE,
+                 _("Document ended unexpectedly, expected to see a close angle "
+                   "bracket ending the tag <%s/>"), current_element (context));
+      break;
+
+    case STATE_INSIDE_OPEN_TAG_NAME:
+      set_error (context, error, G_MARKUP_ERROR_PARSE,
+                 _("Document ended unexpectedly inside an element name"));
+      break;
+
+    case STATE_INSIDE_ATTRIBUTE_NAME:
+      set_error (context, error, G_MARKUP_ERROR_PARSE,
+                 _("Document ended unexpectedly inside an attribute name"));
+      break;
+
+    case STATE_BETWEEN_ATTRIBUTES:
+      set_error (context, error, G_MARKUP_ERROR_PARSE,
+                 _("Document ended unexpectedly inside an element-opening "
+                   "tag."));
+      break;
+
+    case STATE_AFTER_ATTRIBUTE_EQUALS_SIGN:
+      set_error (context, error, G_MARKUP_ERROR_PARSE,
+                 _("Document ended unexpectedly after the equals sign "
+                   "following an attribute name; no attribute value"));
+      break;
+
+    case STATE_INSIDE_ATTRIBUTE_VALUE:
+      set_error (context, error, G_MARKUP_ERROR_PARSE,
+                 _("Document ended unexpectedly while inside an attribute "
+                   "value"));
+      break;
+
+    case STATE_INSIDE_TEXT:
+      g_assert (context->tag_stack != NULL);
+      set_error (context, error, G_MARKUP_ERROR_PARSE,
+                 _("Document ended unexpectedly with elements still open - "
+                   "'%s' was the last element opened"),
+                 current_element (context));
+      break;
+
+    case STATE_AFTER_CLOSE_TAG_SLASH:
+    case STATE_INSIDE_CLOSE_TAG_NAME:
+      set_error (context, error, G_MARKUP_ERROR_PARSE,
+                 _("Document ended unexpectedly inside the close tag for "
+                   "element '%s'"), current_element);
+      break;
+
+    case STATE_INSIDE_PASSTHROUGH:
+      set_error (context, error, G_MARKUP_ERROR_PARSE,
+                 _("Document ended unexpectedly inside a comment or "
+                   "processing instruction"));
+      break;
+
+    case STATE_ERROR:
+    default:
+      g_assert_not_reached ();
+      break;
+    }
+
+  context->parsing = FALSE;
+
+  return context->state != STATE_ERROR;
+}
+
+/**
+ * g_markup_parse_context_get_position:
+ * @context: a #GMarkupParseContext
+ * @line_number: return location for a line number, or %NULL
+ * @char_number: return location for a char-on-line number, or %NULL
+ *
+ * Retrieves the current line number and the number of the character on
+ * that line. Intended for use in error messages; there are no strict
+ * semantics for what constitutes the "current" line number other than
+ * "the best number we could come up with for error messages."
+ * 
+ **/
+void
+g_markup_parse_context_get_position (GMarkupParseContext *context,
+                                     gint                *line_number,
+                                     gint                *char_number)
+{
+  g_return_if_fail (context != NULL);
+
+  if (line_number)
+    *line_number = context->line_number;
+
+  if (char_number)
+    *char_number = context->char_number;
+}
+
+static void
+append_escaped_text (GString     *str,
+                     const gchar *text,
+                     gssize       length)    
+{
+  const gchar *p;
+  const gchar *end;
+
+  p = text;
+  end = text + length;
+
+  while (p != end)
+    {
+      const gchar *next;
+      next = g_utf8_next_char (p);
+
+      switch (*p)
+        {
+        case '&':
+          g_string_append (str, "&amp;");
+          break;
+
+        case '<':
+          g_string_append (str, "&lt;");
+          break;
+
+        case '>':
+          g_string_append (str, "&gt;");
+          break;
+
+        case '\'':
+          g_string_append (str, "&apos;");
+          break;
+
+        case '"':
+          g_string_append (str, "&quot;");
+          break;
+
+        default:
+          g_string_append_len (str, p, next - p);
+          break;
+        }
+
+      p = next;
+    }
+}
+
+/**
+ * g_markup_escape_text:
+ * @text: some valid UTF-8 text
+ * @length: length of @text in bytes
+ * 
+ * Escapes text so that the markup parser will parse it verbatim.
+ * Less than, greater than, ampersand, etc. are replaced with the
+ * corresponding entities. This function would typically be used
+ * when writing out a file to be parsed with the markup parser.
+ * 
+ * Return value: escaped text
+ **/
+gchar*
+g_markup_escape_text (const gchar *text,
+                      gssize       length)  
+{
+  GString *str;
+
+  g_return_val_if_fail (text != NULL, NULL);
+
+  if (length < 0)
+    length = strlen (text);
+
+  str = g_string_new ("");
+  append_escaped_text (str, text, length);
+
+  return g_string_free (str, FALSE);
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gmarkup.h b/graf2d/win32gdk/gdk/src/glib/gmarkup.h
index 57a7c1e3947..3fba0d67717 100644
--- a/graf2d/win32gdk/gdk/src/glib/gmarkup.h
+++ b/graf2d/win32gdk/gdk/src/glib/gmarkup.h
@@ -21,12 +21,9 @@
 #ifndef __G_MARKUP_H__
 #define __G_MARKUP_H__
 
-#include <gerror.h>
+#include <glib/gerror.h>
 
-#ifdef __cplusplus
-extern "C"
-{
-#endif
+G_BEGIN_DECLS
 
 typedef enum
 {
@@ -75,7 +72,7 @@ struct _GMarkupParser
   /* text is not nul-terminated */
   void (*text)           (GMarkupParseContext *context,
                           const gchar         *text,
-                          gint                 text_len,
+                          gsize                text_len,  
                           gpointer             user_data,
                           GError             **error);
 
@@ -86,7 +83,7 @@ struct _GMarkupParser
   /* text is not nul-terminated. */
   void (*passthrough)    (GMarkupParseContext *context,
                           const gchar         *passthrough_text,
-                          gint                 text_len,
+                          gsize                text_len,  
                           gpointer             user_data,
                           GError             **error);
 
@@ -105,7 +102,7 @@ GMarkupParseContext *g_markup_parse_context_new   (const GMarkupParser *parser,
 void                 g_markup_parse_context_free  (GMarkupParseContext *context);
 gboolean             g_markup_parse_context_parse (GMarkupParseContext *context,
                                                    const gchar         *text,
-                                                   gint                 text_len,
+                                                   gssize               text_len,  
                                                    GError             **error);
                                                    
 gboolean             g_markup_parse_context_end_parse (GMarkupParseContext *context,
@@ -118,12 +115,9 @@ void                 g_markup_parse_context_get_position (GMarkupParseContext *c
 
 /* useful when saving */
 gchar* g_markup_escape_text (const gchar *text,
-                             gint         length);
-
+                             gssize       length);  
 
-#ifdef __cplusplus
-}
-#endif
+G_END_DECLS
 
 #endif /* __G_MARKUP_H__ */
 
diff --git a/graf2d/win32gdk/gdk/src/glib/gmem.c b/graf2d/win32gdk/gdk/src/glib/gmem.c
new file mode 100644
index 00000000000..43623aa04f5
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gmem.c
@@ -0,0 +1,1262 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdlib.h>
+#include <string.h>
+#include "glib.h"
+
+
+/* notes on macros:
+ * having DISABLE_MEM_POOLS defined, disables mem_chunks alltogether, their
+ * allocations are performed through ordinary g_malloc/g_free.
+ * having G_DISABLE_CHECKS defined disables use of glib_mem_profiler_table and
+ * g_mem_profile().
+ * REALLOC_0_WORKS is defined if g_realloc (NULL, x) works.
+ * SANE_MALLOC_PROTOS is defined if the systems malloc() and friends functions
+ * match the corresponding GLib prototypes, keep configure.in and gmem.h in sync here.
+ * if ENABLE_GC_FRIENDLY is defined, freed memory should be 0-wiped.
+ */
+
+#define MEM_PROFILE_TABLE_SIZE 4096
+
+#define MEM_AREA_SIZE 4L
+
+#ifdef	G_DISABLE_CHECKS
+#  define ENTER_MEM_CHUNK_ROUTINE()
+#  define LEAVE_MEM_CHUNK_ROUTINE()
+#  define IN_MEM_CHUNK_ROUTINE()	FALSE
+#else	/* !G_DISABLE_CHECKS */
+static GPrivate* mem_chunk_recursion = NULL;
+#  define MEM_CHUNK_ROUTINE_COUNT()	GPOINTER_TO_UINT (g_private_get (mem_chunk_recursion))
+#  define ENTER_MEM_CHUNK_ROUTINE()	g_private_set (mem_chunk_recursion, GUINT_TO_POINTER (MEM_CHUNK_ROUTINE_COUNT () + 1))
+#  define LEAVE_MEM_CHUNK_ROUTINE()	g_private_set (mem_chunk_recursion, GUINT_TO_POINTER (MEM_CHUNK_ROUTINE_COUNT () - 1))
+#endif	/* !G_DISABLE_CHECKS */
+
+#ifndef	REALLOC_0_WORKS
+static gpointer
+standard_realloc (gpointer mem,
+		  gsize    n_bytes)
+{
+  if (!mem)
+    return malloc (n_bytes);
+  else
+    return realloc (mem, n_bytes);
+}
+#endif	/* !REALLOC_0_WORKS */
+
+#ifdef SANE_MALLOC_PROTOS
+#  define standard_malloc	malloc
+#  ifdef REALLOC_0_WORKS
+#    define standard_realloc	realloc
+#  endif /* REALLOC_0_WORKS */
+#  define standard_free		free
+#  define standard_calloc	calloc
+#  define standard_try_malloc	malloc
+#  define standard_try_realloc	realloc
+#else	/* !SANE_MALLOC_PROTOS */
+static gpointer
+standard_malloc (gsize n_bytes)
+{
+  return malloc (n_bytes);
+}
+#  ifdef REALLOC_0_WORKS
+static gpointer
+standard_realloc (gpointer mem,
+		  gsize    n_bytes)
+{
+  return realloc (mem, n_bytes);
+}
+#  endif /* REALLOC_0_WORKS */
+static void
+standard_free (gpointer mem)
+{
+  free (mem);
+}
+static gpointer
+standard_calloc (gsize n_blocks,
+		 gsize n_bytes)
+{
+  return calloc (n_blocks, n_bytes);
+}
+#define	standard_try_malloc	standard_malloc
+#define	standard_try_realloc	standard_realloc
+#endif	/* !SANE_MALLOC_PROTOS */
+
+
+/* --- variables --- */
+static GMemVTable glib_mem_vtable = {
+  standard_malloc,
+  standard_realloc,
+  standard_free,
+  standard_calloc,
+  standard_try_malloc,
+  standard_try_realloc,
+};
+
+
+/* --- functions --- */
+gpointer
+g_malloc (gulong n_bytes)
+{
+  if (n_bytes)
+    {
+      gpointer mem;
+
+      mem = glib_mem_vtable.malloc (n_bytes);
+      if (mem)
+	return mem;
+
+      g_error ("%s: failed to allocate %lu bytes", G_STRLOC, n_bytes);
+    }
+
+  return NULL;
+}
+
+gpointer
+g_malloc0 (gulong n_bytes)
+{
+  if (n_bytes)
+    {
+      gpointer mem;
+
+      mem = glib_mem_vtable.calloc (1, n_bytes);
+      if (mem)
+	return mem;
+
+      g_error ("%s: failed to allocate %lu bytes", G_STRLOC, n_bytes);
+    }
+
+  return NULL;
+}
+
+gpointer
+g_realloc (gpointer mem,
+	   gulong   n_bytes)
+{
+  if (n_bytes)
+    {
+      mem = glib_mem_vtable.realloc (mem, n_bytes);
+      if (mem)
+	return mem;
+
+      g_error ("%s: failed to allocate %lu bytes", G_STRLOC, n_bytes);
+    }
+
+  if (mem)
+    glib_mem_vtable.free (mem);
+
+  return NULL;
+}
+
+void
+g_free (gpointer mem)
+{
+  if (mem)
+    glib_mem_vtable.free (mem);
+}
+
+gpointer
+g_try_malloc (gulong n_bytes)
+{
+  if (n_bytes)
+    return glib_mem_vtable.try_malloc (n_bytes);
+  else
+    return NULL;
+}
+
+gpointer
+g_try_realloc (gpointer mem,
+	       gulong   n_bytes)
+{
+  if (n_bytes)
+    return glib_mem_vtable.try_realloc (mem, n_bytes);
+
+  if (mem)
+    glib_mem_vtable.free (mem);
+
+  return NULL;
+}
+
+static gpointer
+fallback_calloc (gsize n_blocks,
+		 gsize n_block_bytes)
+{
+  gsize l = n_blocks * n_block_bytes;
+  gpointer mem = glib_mem_vtable.malloc (l);
+
+  if (mem)
+    memset (mem, 0, l);
+
+  return mem;
+}
+
+static gboolean vtable_set = FALSE;
+
+/**
+ * g_mem_is_system_malloc
+ * 
+ * Checks whether the allocator used by g_malloc() is the system's
+ * malloc implementation. If it returns %TRUE memory allocated with
+ * malloc() can be used interchangeable with memory allocated using
+ * g_malloc(). This function is useful for avoiding an extra copy
+ * of allocated memory returned by a non-GLib-based API.
+ *
+ * A different allocator can be set using g_mem_set_vtable().
+ *
+ * Return value: if %TRUE, malloc() and g_malloc() can be mixed.
+ **/
+gboolean
+g_mem_is_system_malloc (void)
+{
+  return vtable_set;
+}
+
+void
+g_mem_set_vtable (GMemVTable *vtable)
+{
+  if (!vtable_set)
+    {
+      vtable_set = TRUE;
+      if (vtable->malloc && vtable->realloc && vtable->free)
+	{
+	  glib_mem_vtable.malloc = vtable->malloc;
+	  glib_mem_vtable.realloc = vtable->realloc;
+	  glib_mem_vtable.free = vtable->free;
+	  glib_mem_vtable.calloc = vtable->calloc ? vtable->calloc : fallback_calloc;
+	  glib_mem_vtable.try_malloc = vtable->try_malloc ? vtable->try_malloc : glib_mem_vtable.malloc;
+	  glib_mem_vtable.try_realloc = vtable->try_realloc ? vtable->try_realloc : glib_mem_vtable.realloc;
+	}
+      else
+	g_warning (G_STRLOC ": memory allocation vtable lacks one of malloc(), realloc() or free()");
+    }
+  else
+    g_warning (G_STRLOC ": memory allocation vtable can only be set once at startup");
+}
+
+
+/* --- memory profiling and checking --- */
+#ifdef	G_DISABLE_CHECKS
+GMemVTable *glib_mem_profiler_table = &glib_mem_vtable;
+void
+g_mem_profile (void)
+{
+}
+#else	/* !G_DISABLE_CHECKS */
+typedef enum {
+  PROFILER_FREE		= 0,
+  PROFILER_ALLOC	= 1,
+  PROFILER_RELOC	= 2,
+  PROFILER_ZINIT	= 4
+} ProfilerJob;
+static guint *profile_data = NULL;
+static gulong profile_allocs = 0;
+static gulong profile_mc_allocs = 0;
+static gulong profile_zinit = 0;
+static gulong profile_frees = 0;
+static gulong profile_mc_frees = 0;
+static GMutex *g_profile_mutex = NULL;
+#ifdef  G_ENABLE_DEBUG
+static volatile gulong g_trap_free_size = 0;
+static volatile gulong g_trap_realloc_size = 0;
+static volatile gulong g_trap_malloc_size = 0;
+#endif  /* G_ENABLE_DEBUG */
+
+#define	PROFILE_TABLE(f1,f2,f3)   ( ( ((f3) << 2) | ((f2) << 1) | (f1) ) * (MEM_PROFILE_TABLE_SIZE + 1))
+
+static void
+profiler_log (ProfilerJob job,
+	      gulong      n_bytes,
+	      gboolean    success)
+{
+  g_mutex_lock (g_profile_mutex);
+  if (!profile_data)
+    {
+      profile_data = standard_malloc ((MEM_PROFILE_TABLE_SIZE + 1) * 8 * sizeof (profile_data[0]));
+      if (!profile_data)	/* memory system kiddin' me, eh? */
+	{
+	  g_mutex_unlock (g_profile_mutex);
+	  return;
+	}
+    }
+
+  if (MEM_CHUNK_ROUTINE_COUNT () == 0)
+    {
+      if (n_bytes < MEM_PROFILE_TABLE_SIZE)
+	profile_data[n_bytes + PROFILE_TABLE ((job & PROFILER_ALLOC) != 0,
+					      (job & PROFILER_RELOC) != 0,
+					      success != 0)] += 1;
+      else
+	profile_data[MEM_PROFILE_TABLE_SIZE + PROFILE_TABLE ((job & PROFILER_ALLOC) != 0,
+							     (job & PROFILER_RELOC) != 0,
+							     success != 0)] += 1;
+      if (success)
+	{
+	  if (job & PROFILER_ALLOC)
+	    {
+	      profile_allocs += n_bytes;
+	      if (job & PROFILER_ZINIT)
+		profile_zinit += n_bytes;
+	    }
+	  else
+	    profile_frees += n_bytes;
+	}
+    }
+  else if (success)
+    {
+      if (job & PROFILER_ALLOC)
+	profile_mc_allocs += n_bytes;
+      else
+	profile_mc_frees += n_bytes;
+    }
+  g_mutex_unlock (g_profile_mutex);
+}
+
+static void
+profile_print_locked (guint   *local_data,
+		      gboolean success)
+{
+  gboolean need_header = TRUE;
+  guint i;
+
+  for (i = 0; i <= MEM_PROFILE_TABLE_SIZE; i++)
+    {
+      glong t_malloc = local_data[i + PROFILE_TABLE (1, 0, success)];
+      glong t_realloc = local_data[i + PROFILE_TABLE (1, 1, success)];
+      glong t_free = local_data[i + PROFILE_TABLE (0, 0, success)];
+      glong t_refree = local_data[i + PROFILE_TABLE (0, 1, success)];
+      
+      if (!t_malloc && !t_realloc && !t_free && !t_refree)
+	continue;
+      else if (need_header)
+	{
+	  need_header = FALSE;
+	  g_print (" blocks of | allocated  | freed      | allocated  | freed      | n_bytes   \n");
+	  g_print ("  n_bytes  | n_times by | n_times by | n_times by | n_times by | remaining \n");
+	  g_print ("           | malloc()   | free()     | realloc()  | realloc()  |           \n");
+	  g_print ("===========|============|============|============|============|===========\n");
+	}
+      if (i < MEM_PROFILE_TABLE_SIZE)
+	g_print ("%10u | %10ld | %10ld | %10ld | %10ld |%+11ld\n",
+		 i, t_malloc, t_free, t_realloc, t_refree,
+		 (t_malloc - t_free + t_realloc - t_refree) * i);
+      else if (i >= MEM_PROFILE_TABLE_SIZE)
+	g_print ("   >%6u | %10ld | %10ld | %10ld | %10ld |        ***\n",
+		 i, t_malloc, t_free, t_realloc, t_refree);
+    }
+  if (need_header)
+    g_print (" --- none ---\n");
+}
+
+void
+g_mem_profile (void)
+{
+  guint local_data[(MEM_PROFILE_TABLE_SIZE + 1) * 8 * sizeof (profile_data[0])];
+  gulong local_allocs;
+  gulong local_zinit;
+  gulong local_frees;
+  gulong local_mc_allocs;
+  gulong local_mc_frees;
+
+  g_mutex_lock (g_profile_mutex);
+
+  local_allocs = profile_allocs;
+  local_zinit = profile_zinit;
+  local_frees = profile_frees;
+  local_mc_allocs = profile_mc_allocs;
+  local_mc_frees = profile_mc_frees;
+
+  if (!profile_data)
+    {
+      g_mutex_unlock (g_profile_mutex);
+      return;
+    }
+
+  memcpy (local_data, profile_data, 
+	  (MEM_PROFILE_TABLE_SIZE + 1) * 8 * sizeof (profile_data[0]));
+  
+  g_mutex_unlock (g_profile_mutex);
+
+  g_print ("GLib Memory statistics (successful operations):\n");
+  profile_print_locked (local_data, TRUE);
+  g_print ("GLib Memory statistics (failing operations):\n");
+  profile_print_locked (local_data, FALSE);
+  g_print ("Total bytes: allocated=%lu, zero-initialized=%lu (%.2f%%), freed=%lu (%.2f%%), remaining=%lu\n",
+	   local_allocs,
+	   local_zinit,
+	   ((gdouble) local_zinit) / local_allocs * 100.0,
+	   local_frees,
+	   ((gdouble) local_frees) / local_allocs * 100.0,
+	   local_allocs - local_frees);
+  g_print ("MemChunk bytes: allocated=%lu, freed=%lu (%.2f%%), remaining=%lu\n",
+	   local_mc_allocs,
+	   local_mc_frees,
+	   ((gdouble) local_mc_frees) / local_mc_allocs * 100.0,
+	   local_mc_allocs - local_mc_frees);
+}
+
+static gpointer
+profiler_try_malloc (gsize n_bytes)
+{
+  gulong *p;
+
+#ifdef  G_ENABLE_DEBUG
+  if (g_trap_malloc_size == n_bytes)
+    G_BREAKPOINT ();
+#endif  /* G_ENABLE_DEBUG */
+
+  p = standard_malloc (sizeof (gulong) * 2 + n_bytes);
+
+  if (p)
+    {
+      p[0] = 0;		/* free count */
+      p[1] = n_bytes;	/* length */
+      profiler_log (PROFILER_ALLOC, n_bytes, TRUE);
+      p += 2;
+    }
+  else
+    profiler_log (PROFILER_ALLOC, n_bytes, FALSE);
+  
+  return p;
+}
+
+static gpointer
+profiler_malloc (gsize n_bytes)
+{
+  gpointer mem = profiler_try_malloc (n_bytes);
+
+  if (!mem)
+    g_mem_profile ();
+
+  return mem;
+}
+
+static gpointer
+profiler_calloc (gsize n_blocks,
+		 gsize n_block_bytes)
+{
+  gsize l = n_blocks * n_block_bytes;
+  gulong *p;
+
+#ifdef  G_ENABLE_DEBUG
+  if (g_trap_malloc_size == l)
+    G_BREAKPOINT ();
+#endif  /* G_ENABLE_DEBUG */
+  
+  p = standard_calloc (1, sizeof (gulong) * 2 + l);
+
+  if (p)
+    {
+      p[0] = 0;		/* free count */
+      p[1] = l;		/* length */
+      profiler_log (PROFILER_ALLOC | PROFILER_ZINIT, l, TRUE);
+      p += 2;
+    }
+  else
+    {
+      profiler_log (PROFILER_ALLOC | PROFILER_ZINIT, l, FALSE);
+      g_mem_profile ();
+    }
+
+  return p;
+}
+
+static void
+profiler_free (gpointer mem)
+{
+  gulong *p = mem;
+
+  p -= 2;
+  if (p[0])	/* free count */
+    {
+      g_warning ("free(%p): memory has been freed %lu times already", p + 2, p[0]);
+      profiler_log (PROFILER_FREE,
+		    p[1],	/* length */
+		    FALSE);
+    }
+  else
+    {
+#ifdef  G_ENABLE_DEBUG
+      if (g_trap_free_size == p[1])
+	G_BREAKPOINT ();
+#endif  /* G_ENABLE_DEBUG */
+
+      profiler_log (PROFILER_FREE,
+		    p[1],	/* length */
+		    TRUE);
+      memset (p + 2, 0xaa, p[1]);
+
+      /* for all those that miss standard_free (p); in this place, yes,
+       * we do leak all memory when profiling, and that is intentional
+       * to catch double frees. patch submissions are futile.
+       */
+    }
+  p[0] += 1;
+}
+
+static gpointer
+profiler_try_realloc (gpointer mem,
+		      gsize    n_bytes)
+{
+  gulong *p = mem;
+
+  p -= 2;
+
+#ifdef  G_ENABLE_DEBUG
+  if (g_trap_realloc_size == n_bytes)
+    G_BREAKPOINT ();
+#endif  /* G_ENABLE_DEBUG */
+  
+  if (mem && p[0])	/* free count */
+    {
+      g_warning ("realloc(%p, %u): memory has been freed %lu times already", p + 2, n_bytes, p[0]);
+      profiler_log (PROFILER_ALLOC | PROFILER_RELOC, n_bytes, FALSE);
+
+      return NULL;
+    }
+  else
+    {
+      p = standard_realloc (mem ? p : NULL, sizeof (gulong) * 2 + n_bytes);
+
+      if (p)
+	{
+	  if (mem)
+	    profiler_log (PROFILER_FREE | PROFILER_RELOC, p[1], TRUE);
+	  p[0] = 0;
+	  p[1] = n_bytes;
+	  profiler_log (PROFILER_ALLOC | PROFILER_RELOC, p[1], TRUE);
+	  p += 2;
+	}
+      else
+	profiler_log (PROFILER_ALLOC | PROFILER_RELOC, n_bytes, FALSE);
+
+      return p;
+    }
+}
+
+static gpointer
+profiler_realloc (gpointer mem,
+		  gsize    n_bytes)
+{
+  mem = profiler_try_realloc (mem, n_bytes);
+
+  if (!mem)
+    g_mem_profile ();
+
+  return mem;
+}
+
+static GMemVTable profiler_table = {
+  profiler_malloc,
+  profiler_realloc,
+  profiler_free,
+  profiler_calloc,
+  profiler_try_malloc,
+  profiler_try_realloc,
+};
+GMemVTable *glib_mem_profiler_table = &profiler_table;
+
+#endif	/* !G_DISABLE_CHECKS */
+
+
+/* --- MemChunks --- */
+typedef struct _GFreeAtom      GFreeAtom;
+typedef struct _GMemArea       GMemArea;
+
+struct _GFreeAtom
+{
+  GFreeAtom *next;
+};
+
+struct _GMemArea
+{
+  GMemArea *next;            /* the next mem area */
+  GMemArea *prev;            /* the previous mem area */
+  gulong index;              /* the current index into the "mem" array */
+  gulong free;               /* the number of free bytes in this mem area */
+  gulong allocated;          /* the number of atoms allocated from this area */
+  gulong mark;               /* is this mem area marked for deletion */
+  gchar mem[MEM_AREA_SIZE];  /* the mem array from which atoms get allocated
+			      * the actual size of this array is determined by
+			      *  the mem chunk "area_size". ANSI says that it
+			      *  must be declared to be the maximum size it
+			      *  can possibly be (even though the actual size
+			      *  may be less).
+			      */
+};
+
+struct _GMemChunk
+{
+  const gchar *name;         /* name of this MemChunk...used for debugging output */
+  gint type;                 /* the type of MemChunk: ALLOC_ONLY or ALLOC_AND_FREE */
+  gint num_mem_areas;        /* the number of memory areas */
+  gint num_marked_areas;     /* the number of areas marked for deletion */
+  guint atom_size;           /* the size of an atom */
+  gulong area_size;          /* the size of a memory area */
+  GMemArea *mem_area;        /* the current memory area */
+  GMemArea *mem_areas;       /* a list of all the mem areas owned by this chunk */
+  GMemArea *free_mem_area;   /* the free area...which is about to be destroyed */
+  GFreeAtom *free_atoms;     /* the free atoms list */
+  GTree *mem_tree;           /* tree of mem areas sorted by memory address */
+  GMemChunk *next;           /* pointer to the next chunk */
+  GMemChunk *prev;           /* pointer to the previous chunk */
+};
+
+
+#ifndef DISABLE_MEM_POOLS
+static gulong g_mem_chunk_compute_size (gulong    size,
+					gulong    min_size) G_GNUC_CONST;
+static gint   g_mem_chunk_area_compare (GMemArea *a,
+					GMemArea *b);
+static gint   g_mem_chunk_area_search  (GMemArea *a,
+					gchar    *addr);
+
+/* here we can't use StaticMutexes, as they depend upon a working
+ * g_malloc, the same holds true for StaticPrivate
+ */
+static GMutex        *mem_chunks_lock = NULL;
+static GMemChunk     *mem_chunks = NULL;
+
+GMemChunk*
+g_mem_chunk_new (const gchar  *name,
+		 gint          atom_size,
+		 gulong        area_size,
+		 gint          type)
+{
+  GMemChunk *mem_chunk;
+  gulong rarea_size;
+
+  g_return_val_if_fail (atom_size > 0, NULL);
+  g_return_val_if_fail (area_size >= atom_size, NULL);
+
+  ENTER_MEM_CHUNK_ROUTINE ();
+
+  area_size = (area_size + atom_size - 1) / atom_size;
+  area_size *= atom_size;
+
+  mem_chunk = g_new (GMemChunk, 1);
+  mem_chunk->name = name;
+  mem_chunk->type = type;
+  mem_chunk->num_mem_areas = 0;
+  mem_chunk->num_marked_areas = 0;
+  mem_chunk->mem_area = NULL;
+  mem_chunk->free_mem_area = NULL;
+  mem_chunk->free_atoms = NULL;
+  mem_chunk->mem_tree = NULL;
+  mem_chunk->mem_areas = NULL;
+  mem_chunk->atom_size = atom_size;
+  
+  if (mem_chunk->type == G_ALLOC_AND_FREE)
+    mem_chunk->mem_tree = g_tree_new ((GCompareFunc) g_mem_chunk_area_compare);
+  
+  if (mem_chunk->atom_size % G_MEM_ALIGN)
+    mem_chunk->atom_size += G_MEM_ALIGN - (mem_chunk->atom_size % G_MEM_ALIGN);
+
+  rarea_size = area_size + sizeof (GMemArea) - MEM_AREA_SIZE;
+  rarea_size = g_mem_chunk_compute_size (rarea_size, atom_size + sizeof (GMemArea) - MEM_AREA_SIZE);
+  mem_chunk->area_size = rarea_size - (sizeof (GMemArea) - MEM_AREA_SIZE);
+
+  g_mutex_lock (mem_chunks_lock);
+  mem_chunk->next = mem_chunks;
+  mem_chunk->prev = NULL;
+  if (mem_chunks)
+    mem_chunks->prev = mem_chunk;
+  mem_chunks = mem_chunk;
+  g_mutex_unlock (mem_chunks_lock);
+
+  LEAVE_MEM_CHUNK_ROUTINE ();
+
+  return mem_chunk;
+}
+
+void
+g_mem_chunk_destroy (GMemChunk *mem_chunk)
+{
+  GMemArea *mem_areas;
+  GMemArea *temp_area;
+  
+  g_return_if_fail (mem_chunk != NULL);
+
+  ENTER_MEM_CHUNK_ROUTINE ();
+
+  mem_areas = mem_chunk->mem_areas;
+  while (mem_areas)
+    {
+      temp_area = mem_areas;
+      mem_areas = mem_areas->next;
+      g_free (temp_area);
+    }
+  
+  if (mem_chunk->next)
+    mem_chunk->next->prev = mem_chunk->prev;
+  if (mem_chunk->prev)
+    mem_chunk->prev->next = mem_chunk->next;
+  
+  g_mutex_lock (mem_chunks_lock);
+  if (mem_chunk == mem_chunks)
+    mem_chunks = mem_chunks->next;
+  g_mutex_unlock (mem_chunks_lock);
+  
+  if (mem_chunk->type == G_ALLOC_AND_FREE)
+    g_tree_destroy (mem_chunk->mem_tree);  
+
+  g_free (mem_chunk);
+
+  LEAVE_MEM_CHUNK_ROUTINE ();
+}
+
+gpointer
+g_mem_chunk_alloc (GMemChunk *mem_chunk)
+{
+  GMemArea *temp_area;
+  gpointer mem;
+
+  ENTER_MEM_CHUNK_ROUTINE ();
+
+  g_return_val_if_fail (mem_chunk != NULL, NULL);
+  
+  while (mem_chunk->free_atoms)
+    {
+      /* Get the first piece of memory on the "free_atoms" list.
+       * We can go ahead and destroy the list node we used to keep
+       *  track of it with and to update the "free_atoms" list to
+       *  point to its next element.
+       */
+      mem = mem_chunk->free_atoms;
+      mem_chunk->free_atoms = mem_chunk->free_atoms->next;
+      
+      /* Determine which area this piece of memory is allocated from */
+      temp_area = g_tree_search (mem_chunk->mem_tree,
+				 (GCompareFunc) g_mem_chunk_area_search,
+				 mem);
+      
+      /* If the area has been marked, then it is being destroyed.
+       *  (ie marked to be destroyed).
+       * We check to see if all of the segments on the free list that
+       *  reference this area have been removed. This occurs when
+       *  the ammount of free memory is less than the allocatable size.
+       * If the chunk should be freed, then we place it in the "free_mem_area".
+       * This is so we make sure not to free the mem area here and then
+       *  allocate it again a few lines down.
+       * If we don't allocate a chunk a few lines down then the "free_mem_area"
+       *  will be freed.
+       * If there is already a "free_mem_area" then we'll just free this mem area.
+       */
+      if (temp_area->mark)
+        {
+          /* Update the "free" memory available in that area */
+          temp_area->free += mem_chunk->atom_size;
+	  
+          if (temp_area->free == mem_chunk->area_size)
+            {
+              if (temp_area == mem_chunk->mem_area)
+                mem_chunk->mem_area = NULL;
+	      
+              if (mem_chunk->free_mem_area)
+                {
+                  mem_chunk->num_mem_areas -= 1;
+		  
+                  if (temp_area->next)
+                    temp_area->next->prev = temp_area->prev;
+                  if (temp_area->prev)
+                    temp_area->prev->next = temp_area->next;
+                  if (temp_area == mem_chunk->mem_areas)
+                    mem_chunk->mem_areas = mem_chunk->mem_areas->next;
+		  
+		  if (mem_chunk->type == G_ALLOC_AND_FREE)
+		    g_tree_remove (mem_chunk->mem_tree, temp_area);
+                  g_free (temp_area);
+                }
+              else
+                mem_chunk->free_mem_area = temp_area;
+	      
+	      mem_chunk->num_marked_areas -= 1;
+	    }
+	}
+      else
+        {
+          /* Update the number of allocated atoms count.
+	   */
+          temp_area->allocated += 1;
+	  
+          /* The area wasn't marked...return the memory
+	   */
+	  goto outa_here;
+        }
+    }
+  
+  /* If there isn't a current mem area or the current mem area is out of space
+   *  then allocate a new mem area. We'll first check and see if we can use
+   *  the "free_mem_area". Otherwise we'll just malloc the mem area.
+   */
+  if ((!mem_chunk->mem_area) ||
+      ((mem_chunk->mem_area->index + mem_chunk->atom_size) > mem_chunk->area_size))
+    {
+      if (mem_chunk->free_mem_area)
+        {
+          mem_chunk->mem_area = mem_chunk->free_mem_area;
+	  mem_chunk->free_mem_area = NULL;
+        }
+      else
+        {
+#ifdef ENABLE_GC_FRIENDLY
+	  mem_chunk->mem_area = (GMemArea*) g_malloc0 (sizeof (GMemArea) -
+						       MEM_AREA_SIZE +
+						       mem_chunk->area_size); 
+#else /* !ENABLE_GC_FRIENDLY */
+	  mem_chunk->mem_area = (GMemArea*) g_malloc (sizeof (GMemArea) -
+						      MEM_AREA_SIZE +
+						      mem_chunk->area_size);
+#endif /* ENABLE_GC_FRIENDLY */
+	  
+	  mem_chunk->num_mem_areas += 1;
+	  mem_chunk->mem_area->next = mem_chunk->mem_areas;
+	  mem_chunk->mem_area->prev = NULL;
+	  
+	  if (mem_chunk->mem_areas)
+	    mem_chunk->mem_areas->prev = mem_chunk->mem_area;
+	  mem_chunk->mem_areas = mem_chunk->mem_area;
+	  
+	  if (mem_chunk->type == G_ALLOC_AND_FREE)
+	    g_tree_insert (mem_chunk->mem_tree, mem_chunk->mem_area, mem_chunk->mem_area);
+        }
+      
+      mem_chunk->mem_area->index = 0;
+      mem_chunk->mem_area->free = mem_chunk->area_size;
+      mem_chunk->mem_area->allocated = 0;
+      mem_chunk->mem_area->mark = 0;
+    }
+  
+  /* Get the memory and modify the state variables appropriately.
+   */
+  mem = (gpointer) &mem_chunk->mem_area->mem[mem_chunk->mem_area->index];
+  mem_chunk->mem_area->index += mem_chunk->atom_size;
+  mem_chunk->mem_area->free -= mem_chunk->atom_size;
+  mem_chunk->mem_area->allocated += 1;
+
+outa_here:
+
+  LEAVE_MEM_CHUNK_ROUTINE ();
+
+  return mem;
+}
+
+gpointer
+g_mem_chunk_alloc0 (GMemChunk *mem_chunk)
+{
+  gpointer mem;
+
+  mem = g_mem_chunk_alloc (mem_chunk);
+  if (mem)
+    {
+      memset (mem, 0, mem_chunk->atom_size);
+    }
+
+  return mem;
+}
+
+void
+g_mem_chunk_free (GMemChunk *mem_chunk,
+		  gpointer   mem)
+{
+  GMemArea *temp_area;
+  GFreeAtom *free_atom;
+  
+  g_return_if_fail (mem_chunk != NULL);
+  g_return_if_fail (mem != NULL);
+
+  ENTER_MEM_CHUNK_ROUTINE ();
+
+#ifdef ENABLE_GC_FRIENDLY
+  memset (mem, 0, mem_chunk->atom_size);
+#endif /* ENABLE_GC_FRIENDLY */
+
+  /* Don't do anything if this is an ALLOC_ONLY chunk
+   */
+  if (mem_chunk->type == G_ALLOC_AND_FREE)
+    {
+      /* Place the memory on the "free_atoms" list
+       */
+      free_atom = (GFreeAtom*) mem;
+      free_atom->next = mem_chunk->free_atoms;
+      mem_chunk->free_atoms = free_atom;
+      
+      temp_area = g_tree_search (mem_chunk->mem_tree,
+				 (GCompareFunc) g_mem_chunk_area_search,
+				 mem);
+      
+      temp_area->allocated -= 1;
+      
+      if (temp_area->allocated == 0)
+	{
+	  temp_area->mark = 1;
+	  mem_chunk->num_marked_areas += 1;
+	}
+    }
+
+  LEAVE_MEM_CHUNK_ROUTINE ();
+}
+
+/* This doesn't free the free_area if there is one */
+void
+g_mem_chunk_clean (GMemChunk *mem_chunk)
+{
+  GMemArea *mem_area;
+  GFreeAtom *prev_free_atom;
+  GFreeAtom *temp_free_atom;
+  gpointer mem;
+  
+  g_return_if_fail (mem_chunk != NULL);
+  
+  ENTER_MEM_CHUNK_ROUTINE ();
+
+  if (mem_chunk->type == G_ALLOC_AND_FREE)
+    {
+      prev_free_atom = NULL;
+      temp_free_atom = mem_chunk->free_atoms;
+      
+      while (temp_free_atom)
+	{
+	  mem = (gpointer) temp_free_atom;
+	  
+	  mem_area = g_tree_search (mem_chunk->mem_tree,
+				    (GCompareFunc) g_mem_chunk_area_search,
+				    mem);
+	  
+          /* If this mem area is marked for destruction then delete the
+	   *  area and list node and decrement the free mem.
+           */
+	  if (mem_area->mark)
+	    {
+	      if (prev_free_atom)
+		prev_free_atom->next = temp_free_atom->next;
+	      else
+		mem_chunk->free_atoms = temp_free_atom->next;
+	      temp_free_atom = temp_free_atom->next;
+	      
+	      mem_area->free += mem_chunk->atom_size;
+	      if (mem_area->free == mem_chunk->area_size)
+		{
+		  mem_chunk->num_mem_areas -= 1;
+		  mem_chunk->num_marked_areas -= 1;
+		  
+		  if (mem_area->next)
+		    mem_area->next->prev = mem_area->prev;
+		  if (mem_area->prev)
+		    mem_area->prev->next = mem_area->next;
+		  if (mem_area == mem_chunk->mem_areas)
+		    mem_chunk->mem_areas = mem_chunk->mem_areas->next;
+		  if (mem_area == mem_chunk->mem_area)
+		    mem_chunk->mem_area = NULL;
+		  
+		  if (mem_chunk->type == G_ALLOC_AND_FREE)
+		    g_tree_remove (mem_chunk->mem_tree, mem_area);
+		  g_free (mem_area);
+		}
+	    }
+	  else
+	    {
+	      prev_free_atom = temp_free_atom;
+	      temp_free_atom = temp_free_atom->next;
+	    }
+	}
+    }
+  LEAVE_MEM_CHUNK_ROUTINE ();
+}
+
+void
+g_mem_chunk_reset (GMemChunk *mem_chunk)
+{
+  GMemArea *mem_areas;
+  GMemArea *temp_area;
+  
+  g_return_if_fail (mem_chunk != NULL);
+  
+  ENTER_MEM_CHUNK_ROUTINE ();
+
+  mem_areas = mem_chunk->mem_areas;
+  mem_chunk->num_mem_areas = 0;
+  mem_chunk->mem_areas = NULL;
+  mem_chunk->mem_area = NULL;
+  
+  while (mem_areas)
+    {
+      temp_area = mem_areas;
+      mem_areas = mem_areas->next;
+      g_free (temp_area);
+    }
+  
+  mem_chunk->free_atoms = NULL;
+  
+  if (mem_chunk->mem_tree)
+    g_tree_destroy (mem_chunk->mem_tree);
+  mem_chunk->mem_tree = g_tree_new ((GCompareFunc) g_mem_chunk_area_compare);
+
+  LEAVE_MEM_CHUNK_ROUTINE ();
+}
+
+void
+g_mem_chunk_print (GMemChunk *mem_chunk)
+{
+  GMemArea *mem_areas;
+  gulong mem;
+  
+  g_return_if_fail (mem_chunk != NULL);
+  
+  mem_areas = mem_chunk->mem_areas;
+  mem = 0;
+  
+  while (mem_areas)
+    {
+      mem += mem_chunk->area_size - mem_areas->free;
+      mem_areas = mem_areas->next;
+    }
+
+  g_log (g_log_domain_glib, G_LOG_LEVEL_INFO,
+	 "%s: %ld bytes using %d mem areas",
+	 mem_chunk->name, mem, mem_chunk->num_mem_areas);
+}
+
+void
+g_mem_chunk_info (void)
+{
+  GMemChunk *mem_chunk;
+  gint count;
+  
+  count = 0;
+  g_mutex_lock (mem_chunks_lock);
+  mem_chunk = mem_chunks;
+  while (mem_chunk)
+    {
+      count += 1;
+      mem_chunk = mem_chunk->next;
+    }
+  g_mutex_unlock (mem_chunks_lock);
+  
+  g_log (g_log_domain_glib, G_LOG_LEVEL_INFO, "%d mem chunks", count);
+  
+  g_mutex_lock (mem_chunks_lock);
+  mem_chunk = mem_chunks;
+  g_mutex_unlock (mem_chunks_lock);
+
+  while (mem_chunk)
+    {
+      g_mem_chunk_print ((GMemChunk*) mem_chunk);
+      mem_chunk = mem_chunk->next;
+    }  
+}
+
+void
+g_blow_chunks (void)
+{
+  GMemChunk *mem_chunk;
+  
+  g_mutex_lock (mem_chunks_lock);
+  mem_chunk = mem_chunks;
+  g_mutex_unlock (mem_chunks_lock);
+  while (mem_chunk)
+    {
+      g_mem_chunk_clean ((GMemChunk*) mem_chunk);
+      mem_chunk = mem_chunk->next;
+    }
+}
+
+static gulong
+g_mem_chunk_compute_size (gulong size,
+			  gulong min_size)
+{
+  gulong power_of_2;
+  gulong lower, upper;
+  
+  power_of_2 = 16;
+  while (power_of_2 < size)
+    power_of_2 <<= 1;
+  
+  lower = power_of_2 >> 1;
+  upper = power_of_2;
+  
+  if (size - lower < upper - size && lower >= min_size)
+    return lower;
+  else
+    return upper;
+}
+
+static gint
+g_mem_chunk_area_compare (GMemArea *a,
+			  GMemArea *b)
+{
+  if (a->mem > b->mem)
+    return 1;
+  else if (a->mem < b->mem)
+    return -1;
+  return 0;
+}
+
+static gint
+g_mem_chunk_area_search (GMemArea *a,
+			 gchar    *addr)
+{
+  if (a->mem <= addr)
+    {
+      if (addr < &a->mem[a->index])
+	return 0;
+      return 1;
+    }
+  return -1;
+}
+
+#else /* DISABLE_MEM_POOLS */
+
+typedef struct {
+  guint alloc_size;           /* the size of an atom */
+}  GMinimalMemChunk;
+
+GMemChunk*
+g_mem_chunk_new (const gchar  *name,
+		 gint          atom_size,
+		 gulong        area_size,
+		 gint          type)
+{
+  GMinimalMemChunk *mem_chunk;
+
+  g_return_val_if_fail (atom_size > 0, NULL);
+
+  mem_chunk = g_new (GMinimalMemChunk, 1);
+  mem_chunk->alloc_size = atom_size;
+
+  return ((GMemChunk*) mem_chunk);
+}
+
+void
+g_mem_chunk_destroy (GMemChunk *mem_chunk)
+{
+  g_return_if_fail (mem_chunk != NULL);
+  
+  g_free (mem_chunk);
+}
+
+gpointer
+g_mem_chunk_alloc (GMemChunk *mem_chunk)
+{
+  GMinimalMemChunk *minimal = (GMinimalMemChunk *)mem_chunk;
+  
+  g_return_val_if_fail (mem_chunk != NULL, NULL);
+  
+  return g_malloc (minimal->alloc_size);
+}
+
+gpointer
+g_mem_chunk_alloc0 (GMemChunk *mem_chunk)
+{
+  GMinimalMemChunk *minimal = (GMinimalMemChunk *)mem_chunk;
+  
+  g_return_val_if_fail (mem_chunk != NULL, NULL);
+  
+  return g_malloc0 (minimal->alloc_size);
+}
+
+void
+g_mem_chunk_free (GMemChunk *mem_chunk,
+		  gpointer   mem)
+{
+  g_return_if_fail (mem_chunk != NULL);
+  
+  g_free (mem);
+}
+
+void	g_mem_chunk_clean	(GMemChunk *mem_chunk)	{}
+void	g_mem_chunk_reset	(GMemChunk *mem_chunk)	{}
+void	g_mem_chunk_print	(GMemChunk *mem_chunk)	{}
+void	g_mem_chunk_info	(void)			{}
+void	g_blow_chunks		(void)			{}
+
+#endif /* DISABLE_MEM_POOLS */
+
+
+/* generic allocators
+ */
+struct _GAllocator /* from gmem.c */
+{
+  gchar		*name;
+  guint16	 n_preallocs;
+  guint		 is_unused : 1;
+  guint		 type : 4;
+  GAllocator	*last;
+  GMemChunk	*mem_chunk;
+  gpointer	 dummy; /* implementation specific */
+};
+
+GAllocator*
+g_allocator_new (const gchar *name,
+		 guint        n_preallocs)
+{
+  GAllocator *allocator;
+
+  g_return_val_if_fail (name != NULL, NULL);
+
+  allocator = g_new0 (GAllocator, 1);
+  allocator->name = g_strdup (name);
+  allocator->n_preallocs = CLAMP (n_preallocs, 1, 65535);
+  allocator->is_unused = TRUE;
+  allocator->type = 0;
+  allocator->last = NULL;
+  allocator->mem_chunk = NULL;
+  allocator->dummy = NULL;
+
+  return allocator;
+}
+
+void
+g_allocator_free (GAllocator *allocator)
+{
+  g_return_if_fail (allocator != NULL);
+  g_return_if_fail (allocator->is_unused == TRUE);
+
+  g_free (allocator->name);
+  if (allocator->mem_chunk)
+    g_mem_chunk_destroy (allocator->mem_chunk);
+
+  g_free (allocator);
+}
+
+void
+g_mem_init (void)
+{
+#ifndef DISABLE_MEM_POOLS
+  mem_chunks_lock = g_mutex_new ();
+#endif
+#ifndef G_DISABLE_CHECKS
+  mem_chunk_recursion = g_private_new (NULL);
+  g_profile_mutex = g_mutex_new ();
+#endif
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gmem.h b/graf2d/win32gdk/gdk/src/glib/gmem.h
index e9cdb867d8a..9d5b41850e9 100644
--- a/graf2d/win32gdk/gdk/src/glib/gmem.h
+++ b/graf2d/win32gdk/gdk/src/glib/gmem.h
@@ -27,37 +27,72 @@
 #ifndef __G_MEM_H__
 #define __G_MEM_H__
 
-#include <g_types.h>
+#include <glib/gtypes.h>
 
-/* optionally feature DMALLOC memory allocation debugger
+G_BEGIN_DECLS
+
+typedef struct _GAllocator GAllocator;
+typedef struct _GMemChunk  GMemChunk;
+typedef struct _GMemVTable GMemVTable;
+
+
+#if GLIB_SIZEOF_VOID_P > GLIB_SIZEOF_LONG
+#  define G_MEM_ALIGN	GLIB_SIZEOF_VOID_P
+#else	/* GLIB_SIZEOF_VOID_P <= GLIB_SIZEOF_LONG */
+#  define G_MEM_ALIGN	GLIB_SIZEOF_LONG
+#endif	/* GLIB_SIZEOF_VOID_P <= GLIB_SIZEOF_LONG */
+
+
+/* Memory allocation functions
  */
-#ifdef USE_DMALLOC
-#include "dmalloc.h"
-#endif
+gpointer g_malloc         (gulong	 n_bytes);
+gpointer g_malloc0        (gulong	 n_bytes);
+gpointer g_realloc        (gpointer	 mem,
+			   gulong	 n_bytes);
+void	 g_free	          (gpointer	 mem);
+gpointer g_try_malloc     (gulong	 n_bytes);
+gpointer g_try_realloc    (gpointer	 mem,
+			   gulong	 n_bytes);
 
-G_BEGIN_DECLS
 
-typedef struct _GAllocator      GAllocator;
-typedef struct _GMemChunk       GMemChunk;
+/* Convenience memory allocators
+ */
+#define g_new(struct_type, n_structs)		\
+    ((struct_type *) g_malloc (((gsize) sizeof (struct_type)) * ((gsize) (n_structs))))
+#define g_new0(struct_type, n_structs)		\
+    ((struct_type *) g_malloc0 (((gsize) sizeof (struct_type)) * ((gsize) (n_structs))))
+#define g_renew(struct_type, mem, n_structs)	\
+    ((struct_type *) g_realloc ((mem), ((gsize) sizeof (struct_type)) * ((gsize) (n_structs))))
 
-/* Provide macros for easily allocating memory. The macros
- *  will cast the allocated memory to the specified type
- *  in order to avoid compiler warnings. (Makes the code neater).
+
+/* Memory allocation virtualization for debugging purposes
+ * g_mem_set_vtable() has to be the very first GLib function called
+ * if being used
+ */
+struct _GMemVTable
+{
+  gpointer (*malloc)      (gsize    n_bytes);
+  gpointer (*realloc)     (gpointer mem,
+			   gsize    n_bytes);
+  void     (*free)        (gpointer mem);
+  /* optional */
+  gpointer (*calloc)      (gsize    n_blocks,
+			   gsize    n_block_bytes);
+  gpointer (*try_malloc)  (gsize    n_bytes);
+  gpointer (*try_realloc) (gpointer mem,
+			   gsize    n_bytes);
+};
+void	 g_mem_set_vtable (GMemVTable	*vtable);
+gboolean g_mem_is_system_malloc (void);
+
+/* Memory profiler and checker, has to be enabled via g_mem_set_vtable()
  */
+GLIB_VAR GMemVTable	*glib_mem_profiler_table;
+void	g_mem_profile	(void);
 
-#ifdef __DMALLOC_H__
-#  define g_new(type, count)		(ALLOC (type, count))
-#  define g_new0(type, count)		(CALLOC (type, count))
-#  define g_renew(type, mem, count)	(REALLOC (mem, type, count))
-#else /* __DMALLOC_H__ */
-#  define g_new(type, count)	  \
-      ((type *) g_malloc ((unsigned) sizeof (type) * (count)))
-#  define g_new0(type, count)	  \
-      ((type *) g_malloc0 ((unsigned) sizeof (type) * (count)))
-#  define g_renew(type, mem, count)	  \
-      ((type *) g_realloc (mem, (unsigned) sizeof (type) * (count)))
-#endif /* __DMALLOC_H__ */
 
+/* Memchunk convenience functions
+ */
 #define g_mem_chunk_create(type, pre_alloc, alloc_type)	( \
   g_mem_chunk_new (#type " mem chunks (" #pre_alloc ")", \
 		   sizeof (type), \
@@ -74,37 +109,6 @@ typedef struct _GMemChunk       GMemChunk;
   g_mem_chunk_free ((mem_chunk), (mem)); \
 } G_STMT_END
 
-/* Memory allocation and debugging
- */
-#ifdef USE_DMALLOC
-
-#define g_malloc(size)	     ((gpointer) MALLOC (size))
-#define g_malloc0(size)	     ((gpointer) CALLOC (char, size))
-#define g_realloc(mem,size)  ((gpointer) REALLOC (mem, char, size))
-#define g_free(mem)	     FREE (mem)
-
-#else /* !USE_DMALLOC */
-
-gpointer g_malloc      (gulong	  size);
-gpointer g_malloc0     (gulong	  size);
-gpointer g_realloc     (gpointer  mem,
-			gulong	  size);
-void	 g_free	       (gpointer  mem);
-
-#endif /* !USE_DMALLOC */
-
-void	 g_mem_profile (void);
-void	 g_mem_check   (gpointer  mem);
-
-/* Generic allocators
- */
-GAllocator* g_allocator_new   (const gchar  *name,
-			       guint         n_preallocs);
-void        g_allocator_free  (GAllocator   *allocato);
-
-#define	G_ALLOCATOR_LIST	(1)
-#define	G_ALLOCATOR_SLIST	(2)
-#define	G_ALLOCATOR_NODE	(3)
 
 /* "g_mem_chunk_new" creates a new memory chunk.
  * Memory chunks are used to allocate pieces of memory which are
@@ -128,19 +132,19 @@ void        g_allocator_free  (GAllocator   *allocato);
 #define G_ALLOC_ONLY	  1
 #define G_ALLOC_AND_FREE  2
 
-GMemChunk* g_mem_chunk_new     (gchar	  *name,
-				gint	   atom_size,
-				gulong	   area_size,
-				gint	   type);
-void	   g_mem_chunk_destroy (GMemChunk *mem_chunk);
-gpointer   g_mem_chunk_alloc   (GMemChunk *mem_chunk);
-gpointer   g_mem_chunk_alloc0  (GMemChunk *mem_chunk);
-void	   g_mem_chunk_free    (GMemChunk *mem_chunk,
-				gpointer   mem);
-void	   g_mem_chunk_clean   (GMemChunk *mem_chunk);
-void	   g_mem_chunk_reset   (GMemChunk *mem_chunk);
-void	   g_mem_chunk_print   (GMemChunk *mem_chunk);
-void	   g_mem_chunk_info    (void);
+GMemChunk* g_mem_chunk_new     (const gchar *name,
+				gint         atom_size,
+				gulong       area_size,
+				gint         type);
+void       g_mem_chunk_destroy (GMemChunk   *mem_chunk);
+gpointer   g_mem_chunk_alloc   (GMemChunk   *mem_chunk);
+gpointer   g_mem_chunk_alloc0  (GMemChunk   *mem_chunk);
+void       g_mem_chunk_free    (GMemChunk   *mem_chunk,
+				gpointer     mem);
+void       g_mem_chunk_clean   (GMemChunk   *mem_chunk);
+void       g_mem_chunk_reset   (GMemChunk   *mem_chunk);
+void       g_mem_chunk_print   (GMemChunk   *mem_chunk);
+void       g_mem_chunk_info    (void);
 
 /* Ah yes...we have a "g_blow_chunks" function.
  * "g_blow_chunks" simply compresses all the chunks. This operation
@@ -150,9 +154,21 @@ void	   g_mem_chunk_info    (void);
  *  much better name than "g_mem_chunk_clean_all" or something
  *  similar.
  */
-void g_blow_chunks (void);
+void	   g_blow_chunks (void);
+
+
+/* Generic allocators
+ */
+GAllocator* g_allocator_new   (const gchar  *name,
+			       guint         n_preallocs);
+void        g_allocator_free  (GAllocator   *allocator);
+
+/* internal */
+#define	G_ALLOCATOR_LIST	(1)
+#define	G_ALLOCATOR_SLIST	(2)
+#define	G_ALLOCATOR_NODE	(3)
+
 
 G_END_DECLS
 
 #endif /* __G_MEM_H__ */
-
diff --git a/graf2d/win32gdk/gdk/src/glib/gmessages.c b/graf2d/win32gdk/gdk/src/glib/gmessages.c
new file mode 100644
index 00000000000..f659dbc6803
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gmessages.c
@@ -0,0 +1,1185 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdlib.h>
+#include <stdarg.h>
+#include <stdio.h>
+#include <string.h>
+#include "glib.h"
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+#include <signal.h>
+#include <locale.h>
+#include <errno.h>
+
+#ifdef G_OS_WIN32
+typedef FILE* GFileDescriptor;
+#else
+typedef gint GFileDescriptor;
+#endif
+
+/* --- structures --- */
+typedef struct _GLogDomain	GLogDomain;
+typedef struct _GLogHandler	GLogHandler;
+struct _GLogDomain
+{
+  gchar		*log_domain;
+  GLogLevelFlags fatal_mask;
+  GLogHandler	*handlers;
+  GLogDomain	*next;
+};
+struct _GLogHandler
+{
+  guint		 id;
+  GLogLevelFlags log_level;
+  GLogFunc	 log_func;
+  gpointer	 data;
+  GLogHandler	*next;
+};
+
+
+/* --- prototypes --- */
+static gsize printf_string_upper_bound (const gchar *format,
+					gboolean     may_warn,
+					va_list      args);
+
+
+/* --- variables --- */
+
+static GMutex* g_messages_lock = NULL;
+
+const gchar	     *g_log_domain_glib = "GLib";
+static GLogDomain    *g_log_domains = NULL;
+static GLogLevelFlags g_log_always_fatal = G_LOG_FATAL_MASK;
+static GPrintFunc     glib_print_func = NULL;
+static GPrintFunc     glib_printerr_func = NULL;
+
+static GPrivate* g_log_depth = NULL;
+
+/* --- functions --- */
+#ifdef G_OS_WIN32
+#  define STRICT
+#  include <windows.h>
+#  undef STRICT
+#  include <process.h>          /* For _getpid() */
+
+static gboolean alloc_console_called = FALSE;
+
+static gboolean gonna_abort = FALSE;
+
+/* This default message will usually be overwritten. */
+/* Yes, a fixed size buffer is bad. So sue me. But g_error is never
+ * with huge strings, is it? */
+static char fatal_msg_buf[1000] = "Unspecified fatal error encountered, aborting.";
+static char *fatal_msg_ptr = fatal_msg_buf;
+
+/* Just use stdio. If we're out of memory, we're hosed anyway. */
+#undef write
+static inline int
+dowrite (GFileDescriptor fd,
+	 const void  *buf,
+	 unsigned int len)
+{
+  if (gonna_abort)
+    {
+      memcpy (fatal_msg_ptr, buf, len);
+      fatal_msg_ptr += len;
+      *fatal_msg_ptr = 0;
+      return len;
+    }
+
+  fwrite (buf, len, 1, fd);
+  fflush (fd);
+
+  return len;
+}
+
+#define write(fd, buf, len) dowrite(fd, buf, len)
+
+static void
+ensure_stdout_valid (void)
+{
+  HANDLE handle;
+
+  if (gonna_abort)
+    return;
+
+  if (!alloc_console_called)
+    {
+      handle = GetStdHandle (STD_OUTPUT_HANDLE);
+  
+      if (handle == INVALID_HANDLE_VALUE)
+	{
+	  AllocConsole ();
+	  alloc_console_called = TRUE;
+	  freopen ("CONOUT$", "w", stdout);
+	}
+    }
+}
+#else
+#define ensure_stdout_valid()	/* Define as empty */
+#endif
+
+static void
+write_unsigned (GFileDescriptor fd,
+		gulong          num,
+		guint           radix)
+{
+  char buffer[64];
+  gulong tmp;
+  char c;
+  int i, n;
+
+  g_return_if_fail (radix >= 2 && radix <= 36);
+  
+  if (!num)
+    {
+      write (fd, "0", 1);
+      return;
+    } 
+  
+  if (radix == 16)
+    write (fd, "0x", 2);
+  else if (radix == 8)
+    write (fd, "0", 1);
+	
+  n = 0;
+  tmp = num;
+  while (tmp)
+    {
+      tmp /= radix;
+      n++;
+    }
+
+  i = n;
+  while (num)
+    {
+      i--;
+      c = (num % radix);
+      if (c < 10)
+	buffer[i] = c + '0';
+      else
+	buffer[i] = c + 'a' - 10;
+      num /= radix;
+    }
+  
+  write (fd, buffer, n);
+}
+
+static void
+write_string (GFileDescriptor fd,
+	      gchar *string)
+{
+  write (fd, string, strlen (string));
+}
+
+static void
+g_log_write_prefix (GFileDescriptor fd,
+                    GLogLevelFlags mask)
+{
+  static GLogLevelFlags g_log_msg_prefix = G_LOG_LEVEL_ERROR | G_LOG_LEVEL_WARNING | G_LOG_LEVEL_CRITICAL | G_LOG_LEVEL_DEBUG;
+  static gboolean initialized = FALSE;
+  
+  g_mutex_lock (g_messages_lock);
+
+  if (!initialized)
+    {
+      const gchar *val;
+      initialized = TRUE;
+
+      val = g_getenv ("G_MESSAGES_PREFIXED");
+      
+      if (val)
+        {
+          static const GDebugKey keys[] = {
+            { "error", G_LOG_LEVEL_ERROR },
+            { "critical", G_LOG_LEVEL_CRITICAL },
+            { "warning", G_LOG_LEVEL_WARNING },
+            { "message", G_LOG_LEVEL_MESSAGE },
+            { "info", G_LOG_LEVEL_INFO },
+            { "debug", G_LOG_LEVEL_DEBUG }
+          };
+          
+          g_log_msg_prefix = g_parse_debug_string (val, keys, G_N_ELEMENTS (keys));
+        }
+    }
+  
+  g_mutex_unlock (g_messages_lock);
+  
+  if ((g_log_msg_prefix & mask) == mask)
+    {
+      gchar *prg_name;
+
+      prg_name = g_get_prgname ();
+
+      if (!prg_name)
+	write_string (fd, "(process:");
+      else
+	{
+	  write_string (fd, prg_name);
+	  write_string (fd, " (pid:");
+	}
+
+      write_unsigned (fd, getpid (), 10);
+      write_string (fd, "): ");
+    }
+}
+
+static inline GLogDomain*
+g_log_find_domain (const gchar *log_domain)
+{
+  register GLogDomain *domain;
+  
+  g_mutex_lock (g_messages_lock);
+  domain = g_log_domains;
+  while (domain)
+    {
+      if (strcmp (domain->log_domain, log_domain) == 0)
+	{
+	  g_mutex_unlock (g_messages_lock);
+	  return domain;
+	}
+      domain = domain->next;
+    }
+  g_mutex_unlock (g_messages_lock);
+  return NULL;
+}
+
+static inline GLogDomain*
+g_log_domain_new (const gchar *log_domain)
+{
+  register GLogDomain *domain;
+
+  domain = g_new (GLogDomain, 1);
+  domain->log_domain = g_strdup (log_domain);
+  domain->fatal_mask = G_LOG_FATAL_MASK;
+  domain->handlers = NULL;
+  
+  g_mutex_lock (g_messages_lock);
+  domain->next = g_log_domains;
+  g_log_domains = domain;
+  g_mutex_unlock (g_messages_lock);
+  
+  return domain;
+}
+
+static inline void
+g_log_domain_check_free (GLogDomain *domain)
+{
+  if (domain->fatal_mask == G_LOG_FATAL_MASK &&
+      domain->handlers == NULL)
+    {
+      register GLogDomain *last, *work;
+      
+      last = NULL;  
+
+      g_mutex_lock (g_messages_lock);
+      work = g_log_domains;
+      while (work)
+	{
+	  if (work == domain)
+	    {
+	      if (last)
+		last->next = domain->next;
+	      else
+		g_log_domains = domain->next;
+	      g_free (domain->log_domain);
+	      g_free (domain);
+	      break;
+	    }
+	  last = work;
+	  work = last->next;
+	}  
+      g_mutex_unlock (g_messages_lock);
+    }
+}
+
+static inline GLogFunc
+g_log_domain_get_handler (GLogDomain	*domain,
+			  GLogLevelFlags log_level,
+			  gpointer	*data)
+{
+  if (domain && log_level)
+    {
+      register GLogHandler *handler;
+      
+      handler = domain->handlers;
+      while (handler)
+	{
+	  if ((handler->log_level & log_level) == log_level)
+	    {
+	      *data = handler->data;
+	      return handler->log_func;
+	    }
+	  handler = handler->next;
+	}
+    }
+  return g_log_default_handler;
+}
+
+GLogLevelFlags
+g_log_set_always_fatal (GLogLevelFlags fatal_mask)
+{
+  GLogLevelFlags old_mask;
+
+  /* restrict the global mask to levels that are known to glib */
+  fatal_mask &= (1 << G_LOG_LEVEL_USER_SHIFT) - 1;
+  /* force errors to be fatal */
+  fatal_mask |= G_LOG_LEVEL_ERROR;
+  /* remove bogus flag */
+  fatal_mask &= ~G_LOG_FLAG_FATAL;
+
+  g_mutex_lock (g_messages_lock);
+  old_mask = g_log_always_fatal;
+  g_log_always_fatal = fatal_mask;
+  g_mutex_unlock (g_messages_lock);
+
+  return old_mask;
+}
+
+GLogLevelFlags
+g_log_set_fatal_mask (const gchar    *log_domain,
+		      GLogLevelFlags  fatal_mask)
+{
+  GLogLevelFlags old_flags;
+  register GLogDomain *domain;
+  
+  if (!log_domain)
+    log_domain = "";
+  
+  /* force errors to be fatal */
+  fatal_mask |= G_LOG_LEVEL_ERROR;
+  /* remove bogus flag */
+  fatal_mask &= ~G_LOG_FLAG_FATAL;
+  
+  domain = g_log_find_domain (log_domain);
+  if (!domain)
+    domain = g_log_domain_new (log_domain);
+  old_flags = domain->fatal_mask;
+  
+  domain->fatal_mask = fatal_mask;
+  g_log_domain_check_free (domain);
+  
+  return old_flags;
+}
+
+guint
+g_log_set_handler (const gchar	  *log_domain,
+		   GLogLevelFlags  log_levels,
+		   GLogFunc	   log_func,
+		   gpointer	   user_data)
+{
+  register GLogDomain *domain;
+  register GLogHandler *handler;
+  static guint handler_id = 0;
+  
+  g_return_val_if_fail ((log_levels & G_LOG_LEVEL_MASK) != 0, 0);
+  g_return_val_if_fail (log_func != NULL, 0);
+  
+  if (!log_domain)
+    log_domain = "";
+  
+  domain = g_log_find_domain (log_domain);
+  if (!domain)
+    domain = g_log_domain_new (log_domain);
+  
+  handler = g_new (GLogHandler, 1);
+  g_mutex_lock (g_messages_lock);
+  handler->id = ++handler_id;
+  g_mutex_unlock (g_messages_lock);
+  handler->log_level = log_levels;
+  handler->log_func = log_func;
+  handler->data = user_data;
+  handler->next = domain->handlers;
+  domain->handlers = handler;
+  
+  return handler_id;
+}
+
+void
+g_log_remove_handler (const gchar *log_domain,
+		      guint	   handler_id)
+{
+  register GLogDomain *domain;
+  
+  g_return_if_fail (handler_id > 0);
+  
+  if (!log_domain)
+    log_domain = "";
+  
+  domain = g_log_find_domain (log_domain);
+  if (domain)
+    {
+      register GLogHandler *work, *last;
+      
+      last = NULL;
+      work = domain->handlers;
+      while (work)
+	{
+	  if (work->id == handler_id)
+	    {
+	      if (last)
+		last->next = work->next;
+	      else
+		domain->handlers = work->next;
+	      g_free (work);
+	      g_log_domain_check_free (domain);
+	      return;
+	    }
+	  last = work;
+	  work = last->next;
+	}
+    }
+  g_warning ("g_log_remove_handler(): could not find handler with id `%d' for domain \"%s\"",
+	     handler_id,
+	     log_domain);
+}
+
+void
+g_logv (const gchar   *log_domain,
+	GLogLevelFlags log_level,
+	const gchar   *format,
+	va_list	       args1)
+{
+  va_list args2;
+  gchar buffer[1025];
+  register gint i;
+  
+  log_level &= G_LOG_LEVEL_MASK;
+  if (!log_level)
+    return;
+  
+  /* we use a stack buffer of fixed size, because we might get called
+   * recursively.
+   */
+#ifdef  HAVE_VSNPRINTF
+  vsnprintf (buffer, 1024, format, args1);
+#else	/* !HAVE_VSNPRINTF */
+  G_VA_COPY (args2, args1);
+  if (printf_string_upper_bound (format, FALSE, args1) < 1024)
+    vsprintf (buffer, format, args2);
+  else
+    {
+      /* since we might be out of memory, we can't use g_vsnprintf(). */
+      /* we are out of luck here */
+      strncpy (buffer, format, 1024);
+      buffer[1024] = 0;
+    }
+  va_end (args2);
+#endif	/* !HAVE_VSNPRINTF */
+  
+  for (i = g_bit_nth_msf (log_level, -1); i >= 0; i = g_bit_nth_msf (log_level, i))
+    {
+      register GLogLevelFlags test_level;
+      
+      test_level = 1 << i;
+      if (log_level & test_level)
+	{
+	  guint depth = GPOINTER_TO_UINT (g_private_get (g_log_depth));
+	  GLogDomain *domain;
+	  GLogFunc log_func;
+	  gpointer data = NULL;
+	  
+	  domain = g_log_find_domain (log_domain ? log_domain : "");
+	  
+	  if (depth)
+	    test_level |= G_LOG_FLAG_RECURSION;
+	  
+	  depth++;
+	  g_private_set (g_log_depth, GUINT_TO_POINTER (depth));
+
+	  g_mutex_lock (g_messages_lock);
+	  if ((((domain ? domain->fatal_mask : G_LOG_FATAL_MASK) | 
+		g_log_always_fatal) & test_level) != 0)
+	    test_level |= G_LOG_FLAG_FATAL;  
+	  g_mutex_unlock (g_messages_lock);
+
+	  log_func = g_log_domain_get_handler (domain, test_level, &data);
+	  log_func (log_domain, test_level, buffer, data);
+	  
+	  /* *domain can be cluttered now */
+	  
+	  if (test_level & G_LOG_FLAG_FATAL)
+	    {
+#if defined (G_ENABLE_DEBUG) && defined (SIGTRAP)
+	      if (!(test_level & G_LOG_FLAG_RECURSION))
+		G_BREAKPOINT ();
+	      else
+		abort ();
+#else /* !G_ENABLE_DEBUG || !SIGTRAP */
+#ifdef G_OS_WIN32
+	      MessageBox (NULL, fatal_msg_buf, NULL, MB_OK);
+#endif
+# if defined (_MSC_VER) && defined (_DEBUG)
+	      /* let's see the call stack ... */
+	      __asm int 3
+# endif
+	      abort ();
+#endif /* !G_ENABLE_DEBUG || !SIGTRAP */
+	    }
+	  
+	  depth--;
+	  g_private_set (g_log_depth, GUINT_TO_POINTER (depth));
+	}
+    }
+}
+
+void
+g_log (const gchar    *log_domain,
+       GLogLevelFlags  log_level,
+       const gchar    *format,
+       ...)
+{
+  va_list args;
+  
+  va_start (args, format);
+  g_logv (log_domain, log_level, format, args);
+  va_end (args);
+}
+
+void
+g_log_default_handler (const gchar    *log_domain,
+		       GLogLevelFlags  log_level,
+		       const gchar    *message,
+		       gpointer	       unused_data)
+{
+  GFileDescriptor fd;
+  gboolean in_recursion;
+  gboolean is_fatal;  
+  
+  in_recursion = (log_level & G_LOG_FLAG_RECURSION) != 0;
+  is_fatal = (log_level & G_LOG_FLAG_FATAL) != 0;
+  log_level &= G_LOG_LEVEL_MASK;
+  
+  if (!message)
+    message = "g_log_default_handler(): (NULL) message";
+  
+#ifdef G_OS_WIN32
+  /* Use just stdout as stderr is hard to get redirected from the
+   * DOS prompt.
+   */
+  fd = stdout;
+  gonna_abort = is_fatal;
+#else
+  fd = (log_level > G_LOG_LEVEL_MESSAGE) ? 1 : 2;
+#endif
+  
+  switch (log_level)
+    {
+    case G_LOG_LEVEL_ERROR:
+      /* use write(2) for output, in case we are out of memeory */
+      ensure_stdout_valid ();
+      write (fd, "\n", 1);
+      g_log_write_prefix (fd, log_level);
+
+      if (log_domain)
+	{
+	  write (fd, log_domain, strlen (log_domain));
+	  write (fd, "-", 1);
+	}
+      else
+	write (fd, "** ", 3);
+      if (in_recursion)
+	write (fd, "ERROR (recursed) **: ", 21);
+      else
+	write (fd, "ERROR **: ", 10);
+      write (fd, message, strlen (message));
+      if (is_fatal)
+	write (fd, "\naborting...\n", 13);
+      else
+	write (fd, "\n", 1);
+      break;
+    case G_LOG_LEVEL_CRITICAL:
+      ensure_stdout_valid ();
+      write (fd, "\n", 1);
+      g_log_write_prefix (fd, log_level);
+
+      if (log_domain)
+	{
+	  write (fd, log_domain, strlen (log_domain));
+	  write (fd, "-", 1);
+	}
+      else
+	write (fd, "** ", 3);
+      if (in_recursion)
+	write (fd, "CRITICAL (recursed) **: ", 24);
+      else
+	write (fd, "CRITICAL **: ", 13);
+      write (fd, message, strlen (message));
+      if (is_fatal)
+	write (fd, "\naborting...\n", 13);
+      else
+	write (fd, "\n", 1);
+      break;
+    case G_LOG_LEVEL_WARNING:
+      ensure_stdout_valid ();
+      write (fd, "\n", 1);
+      g_log_write_prefix (fd, log_level);
+
+      if (log_domain)
+	{
+	  write (fd, log_domain, strlen (log_domain));
+	  write (fd, "-", 1);
+	}
+      else
+	write (fd, "** ", 3);
+      if (in_recursion)
+	write (fd, "WARNING (recursed) **: ", 23);
+      else
+	write (fd, "WARNING **: ", 12);
+      write (fd, message, strlen (message));
+      if (is_fatal)
+	write (fd, "\naborting...\n", 13);
+      else
+	write (fd, "\n", 1);
+      break;
+    case G_LOG_LEVEL_MESSAGE:
+      ensure_stdout_valid ();
+
+      g_log_write_prefix (fd, log_level);
+
+      if (log_domain)
+	{
+	  write (fd, log_domain, strlen (log_domain));
+	  write (fd, "-", 1);
+	}
+      if (in_recursion)
+	write (fd, "Message (recursed): ", 20);
+      else
+	write (fd, "Message: ", 9);
+      write (fd, message, strlen (message));
+      if (is_fatal)
+	write (fd, "\naborting...\n", 13);
+      else
+	write (fd, "\n", 1);
+      break;
+    case G_LOG_LEVEL_INFO:
+      ensure_stdout_valid ();
+
+      g_log_write_prefix (fd, log_level);
+
+      if (log_domain)
+	{
+	  write (fd, log_domain, strlen (log_domain));
+	  write (fd, "-", 1);
+	}
+      if (in_recursion)
+	write (fd, "INFO (recursed): ", 17);
+      else
+	write (fd, "INFO: ", 6);
+      write (fd, message, strlen (message));
+      if (is_fatal)
+	write (fd, "\naborting...\n", 13);
+      else
+	write (fd, "\n", 1);
+      break;
+    case G_LOG_LEVEL_DEBUG:
+      ensure_stdout_valid ();
+
+      g_log_write_prefix (fd, log_level);
+
+      if (log_domain)
+	{
+	  write (fd, log_domain, strlen (log_domain));
+	  write (fd, "-", 1);
+	}
+      if (in_recursion)
+	write (fd, "DEBUG (recursed): ", 18);
+      else
+	write (fd, "DEBUG: ", 7);
+      write (fd, message, strlen (message));
+      if (is_fatal)
+	write (fd, "\naborting...\n", 13);
+      else
+	write (fd, "\n", 1);
+      break;
+    default:
+      /* we are used for a log level that is not defined by GLib itself,
+       * try to make the best out of it.
+       */
+      ensure_stdout_valid ();
+
+      g_log_write_prefix (fd, log_level);
+
+      if (log_domain)
+	{
+	  write (fd, log_domain, strlen (log_domain));
+	  if (in_recursion)
+	    write (fd, "-LOG (recursed:", 15);
+	  else
+	    write (fd, "-LOG (", 6);
+	}
+      else if (in_recursion)
+	write (fd, "LOG (recursed:", 14);
+      else
+	write (fd, "LOG (", 5);
+      if (log_level)
+	{
+	  gchar string[] = "0x00): ";
+	  gchar *p = string + 2;
+	  guint i;
+	  
+	  i = g_bit_nth_msf (log_level, -1);
+	  *p = i >> 4;
+	  p++;
+	  *p = '0' + (i & 0xf);
+	  if (*p > '9')
+	    *p += 'A' - '9' - 1;
+	  
+	  write (fd, string, 7);
+	}
+      else
+	write (fd, "): ", 3);
+      write (fd, message, strlen (message));
+      if (is_fatal)
+	write (fd, "\naborting...\n", 13);
+      else
+	write (fd, "\n", 1);
+      break;
+    }
+}
+
+GPrintFunc
+g_set_print_handler (GPrintFunc func)
+{
+  GPrintFunc old_print_func;
+  
+  g_mutex_lock (g_messages_lock);
+  old_print_func = glib_print_func;
+  glib_print_func = func;
+  g_mutex_unlock (g_messages_lock);
+  
+  return old_print_func;
+}
+
+void
+g_print (const gchar *format,
+	 ...)
+{
+  va_list args;
+  gchar *string;
+  GPrintFunc local_glib_print_func;
+  
+  g_return_if_fail (format != NULL);
+  
+  va_start (args, format);
+  string = g_strdup_vprintf (format, args);
+  va_end (args);
+  
+  g_mutex_lock (g_messages_lock);
+  local_glib_print_func = glib_print_func;
+  g_mutex_unlock (g_messages_lock);
+
+  if (local_glib_print_func)
+    local_glib_print_func (string);
+  else
+    {
+      ensure_stdout_valid ();
+      fputs (string, stdout);
+      fflush (stdout);
+    }
+  g_free (string);
+}
+
+GPrintFunc
+g_set_printerr_handler (GPrintFunc func)
+{
+  GPrintFunc old_printerr_func;
+  
+  g_mutex_lock (g_messages_lock);
+  old_printerr_func = glib_printerr_func;
+  glib_printerr_func = func;
+  g_mutex_unlock (g_messages_lock);
+  
+  return old_printerr_func;
+}
+
+void
+g_printerr (const gchar *format,
+	    ...)
+{
+  va_list args;
+  gchar *string;
+  GPrintFunc local_glib_printerr_func;
+  
+  g_return_if_fail (format != NULL);
+  
+  va_start (args, format);
+  string = g_strdup_vprintf (format, args);
+  va_end (args);
+  
+  g_mutex_lock (g_messages_lock);
+  local_glib_printerr_func = glib_printerr_func;
+  g_mutex_unlock (g_messages_lock);
+
+  if (local_glib_printerr_func)
+    local_glib_printerr_func (string);
+  else
+    {
+      fputs (string, stderr);
+      fflush (stderr);
+    }
+  g_free (string);
+}
+
+#ifndef MB_LEN_MAX
+#  define MB_LEN_MAX 8
+#endif
+
+typedef struct
+{
+  guint min_width;
+  guint precision;
+  gboolean alternate_format, zero_padding, adjust_left, locale_grouping;
+  gboolean add_space, add_sign, possible_sign, seen_precision;
+  gboolean mod_half, mod_long, mod_extra_long;
+} PrintfArgSpec;
+
+static gsize
+printf_string_upper_bound (const gchar *format,
+			   gboolean     may_warn,
+			   va_list      args)
+{
+  static const gboolean honour_longs = sizeof(long) > 4 || sizeof(void*) > 4;
+  gsize len = 1;
+
+  if (!format)
+    return len;
+
+  while (*format)
+    {
+      register gchar c = *format++;
+
+      if (c != '%')
+	len += 1;
+      else /* (c == '%') */
+	{
+	  PrintfArgSpec spec = { 0, };
+	  gboolean seen_l = FALSE, conv_done = FALSE;
+	  gsize conv_len = 0;
+	  const gchar *spec_start = format;
+
+	  do
+	    {
+	      c = *format++;
+	      switch (c)
+		{
+		  GDoubleIEEE754 u_double;
+		  guint v_uint;
+		  gint v_int;
+		  const gchar *v_string;
+
+		  /* beware of positional parameters
+		   */
+		case '$':
+		  if (may_warn)
+		    g_warning (G_GNUC_PRETTY_FUNCTION
+			       "(): unable to handle positional parameters (%%n$)");
+		  len += 1024; /* try adding some safety padding */
+		  conv_done = TRUE;
+		  break;
+
+		  /* parse flags
+		   */
+		case '#':
+		  spec.alternate_format = TRUE;
+		  break;
+		case '0':
+		  spec.zero_padding = TRUE;
+		  break;
+		case '-':
+		  spec.adjust_left = TRUE;
+		  break;
+		case ' ':
+		  spec.add_space = TRUE;
+		  break;
+		case '+':
+		  spec.add_sign = TRUE;
+		  break;
+		case '\'':
+		  spec.locale_grouping = TRUE;
+		  break;
+
+		  /* parse output size specifications
+		   */
+		case '.':
+		  spec.seen_precision = TRUE;
+		  break;
+		case '1':
+		case '2':
+		case '3':
+		case '4':
+		case '5':
+		case '6':
+		case '7':
+		case '8':
+		case '9':
+		  v_uint = c - '0';
+		  c = *format;
+		  while (c >= '0' && c <= '9')
+		    {
+		      format++;
+		      v_uint = v_uint * 10 + c - '0';
+		      c = *format;
+		    }
+		  if (spec.seen_precision)
+		    spec.precision = MAX (spec.precision, v_uint);
+		  else
+		    spec.min_width = MAX (spec.min_width, v_uint);
+		  break;
+		case '*':
+		  v_int = va_arg (args, int);
+		  if (spec.seen_precision)
+		    {
+		      /* forget about negative precision */
+		      if (v_int >= 0)
+			spec.precision = MAX (spec.precision, v_int);
+		    }
+		  else
+		    {
+		      if (v_int < 0)
+			{
+			  v_int = - v_int;
+			  spec.adjust_left = TRUE;
+			}
+		      spec.min_width = MAX (spec.min_width, v_int);
+		    }
+		  break;
+
+		  /* parse type modifiers
+		   */
+		case 'h':
+		  spec.mod_half = TRUE;
+		  break;
+		case 'l':
+		  if (!seen_l)
+		    {
+		      spec.mod_long = TRUE;
+		      seen_l = TRUE;
+		      break;
+		    }
+		  /* else, fall through */
+		case 'L':
+		case 'q':
+		  spec.mod_long = TRUE;
+		  spec.mod_extra_long = TRUE;
+		  break;
+		case 'z':
+		case 'Z':
+#if GLIB_SIZEOF_SIZE_T > 4
+		  spec.mod_long = TRUE;
+		  spec.mod_extra_long = TRUE;
+#endif /* GLIB_SIZEOF_SIZE_T > 4 */
+		  break;
+		case 't':
+#if GLIB_SIZEOF_PTRDIFF_T > 4
+		  spec.mod_long = TRUE;
+		  spec.mod_extra_long = TRUE;
+#endif /* GLIB_SIZEOF_PTRDIFF_T > 4 */
+		  break;
+		case 'j':
+#if GLIB_SIZEOF_INTMAX_T > 4
+		  spec.mod_long = TRUE;
+		  spec.mod_extra_long = TRUE;
+#endif /* GLIB_SIZEOF_INTMAX_T > 4 */
+		  break;
+
+		  /* parse output conversions
+		   */
+		case '%':
+		  conv_len += 1;
+		  break;
+		case 'O':
+		case 'D':
+		case 'I':
+		case 'U':
+		  /* some C libraries feature long variants for these as well? */
+		  spec.mod_long = TRUE;
+		  /* fall through */
+		case 'o':
+		  conv_len += 2;
+		  /* fall through */
+		case 'd':
+		case 'i':
+		  conv_len += 1; /* sign */
+		  /* fall through */
+		case 'u':
+		  conv_len += 4;
+		  /* fall through */
+		case 'x':
+		case 'X':
+		  spec.possible_sign = TRUE;
+		  conv_len += 10;
+		  if (spec.mod_long && honour_longs)
+		    conv_len *= 2;
+		  if (spec.mod_extra_long)
+		    conv_len *= 2;
+		  if (spec.mod_extra_long)
+		    {
+#ifdef G_HAVE_GINT64
+		      (void) va_arg (args, gint64);
+#else /* !G_HAVE_GINT64 */
+		      (void) va_arg (args, long);
+#endif /* !G_HAVE_GINT64 */
+		    }
+		  else if (spec.mod_long)
+		    (void) va_arg (args, long);
+		  else
+		    (void) va_arg (args, int);
+		  break;
+		case 'A':
+		case 'a':
+		  /*          0x */
+		  conv_len += 2;
+		  /* fall through */
+		case 'g':
+		case 'G':
+		case 'e':
+		case 'E':
+		case 'f':
+		  spec.possible_sign = TRUE;
+		  /*          n   .   dddddddddddddddddddddddd   E   +-  eeee */
+		  conv_len += 1 + 1 + MAX (24, spec.precision) + 1 + 1 + 4;
+                  if (may_warn && spec.mod_extra_long)
+		    g_warning (G_GNUC_PRETTY_FUNCTION
+			       "(): unable to handle long double, collecting double only");
+#ifdef HAVE_LONG_DOUBLE
+#error need to implement special handling for long double
+#endif
+		  u_double.v_double = va_arg (args, double);
+		  /* %f can expand up to all significant digits before '.' (308) */
+		  if (c == 'f' &&
+		      u_double.mpn.biased_exponent > 0 && u_double.mpn.biased_exponent < 2047)
+		    {
+		      gint exp = u_double.mpn.biased_exponent;
+
+		      exp -= G_IEEE754_DOUBLE_BIAS;
+		      exp = exp * G_LOG_2_BASE_10 + 1;
+		      conv_len += ABS (exp);	/* exp can be <0 */
+		    }
+		  /* some printf() implementations require extra padding for rounding */
+		  conv_len += 2;
+		  /* we can't really handle locale specific grouping here */
+		  if (spec.locale_grouping)
+		    conv_len *= 2;
+		  break;
+		case 'C':
+		  spec.mod_long = TRUE;
+                  /* fall through */
+		case 'c':
+		  conv_len += spec.mod_long ? MB_LEN_MAX : 1;
+		  (void) va_arg (args, int);
+		  break;
+		case 'S':
+		  spec.mod_long = TRUE;
+		  /* fall through */
+		case 's':
+		  v_string = va_arg (args, char*);
+		  if (!v_string)
+		    conv_len += 8; /* hold "(null)" */
+		  else if (spec.seen_precision)
+		    conv_len += spec.precision;
+		  else
+		    conv_len += strlen (v_string);
+		  conv_done = TRUE;
+		  if (spec.mod_long)
+		    {
+		      if (may_warn)
+			g_warning (G_GNUC_PRETTY_FUNCTION
+				   "(): unable to handle wide char strings");
+		      len += 1024; /* try adding some safety padding */
+		    }
+		  break;
+		case 'P': /* do we actually need this? */
+		  /* fall through */
+		case 'p':
+		  spec.alternate_format = TRUE;
+		  conv_len += 10;
+		  if (honour_longs)
+		    conv_len *= 2;
+		  /* fall through */
+		case 'n':
+		  conv_done = TRUE;
+		  (void) va_arg (args, void*);
+		  break;
+		case 'm':
+		  /* there's not much we can do to be clever */
+		  v_string = g_strerror (errno);
+		  v_uint = v_string ? strlen (v_string) : 0;
+		  conv_len += MAX (256, v_uint);
+		  break;
+
+		  /* handle invalid cases
+		   */
+		case '\000':
+		  /* no conversion specification, bad bad */
+		  conv_len += format - spec_start;
+		  break;
+		default:
+		  if (may_warn)
+		    g_warning (G_GNUC_PRETTY_FUNCTION
+			       "(): unable to handle `%c' while parsing format",
+			       c);
+		  break;
+		}
+	      conv_done |= conv_len > 0;
+	    }
+	  while (!conv_done);
+	  /* handle width specifications */
+	  conv_len = MAX (conv_len, MAX (spec.precision, spec.min_width));
+	  /* handle flags */
+	  conv_len += spec.alternate_format ? 2 : 0;
+	  conv_len += (spec.add_space || spec.add_sign || spec.possible_sign);
+	  /* finally done */
+	  len += conv_len;
+	} /* else (c == '%') */
+    } /* while (*format) */
+
+  return len;
+}
+
+gsize
+g_printf_string_upper_bound (const gchar *format,
+			     va_list      args)
+{
+  return printf_string_upper_bound (format, TRUE, args);
+}
+
+void
+g_messages_init (void)
+{
+  g_messages_lock = g_mutex_new();
+  g_log_depth = g_private_new(NULL);
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gmessages.h b/graf2d/win32gdk/gdk/src/glib/gmessages.h
index f5a11ad4b8f..9fc556fa721 100644
--- a/graf2d/win32gdk/gdk/src/glib/gmessages.h
+++ b/graf2d/win32gdk/gdk/src/glib/gmessages.h
@@ -28,13 +28,13 @@
 #define __G_MESSAGES_H__
 
 #include <stdarg.h>
-#include <g_types.h>
+#include <glib/gtypes.h>
 
 G_BEGIN_DECLS
 
 /* calculate a string size, guarranteed to fit format + args.
  */
-guint	g_printf_string_upper_bound (const gchar* format,
+gsize	g_printf_string_upper_bound (const gchar* format,
 				     va_list	  args);
 
 /* Log level shift offset for user defined
@@ -71,7 +71,7 @@ typedef void            (*GLogFunc)             (const gchar   *log_domain,
 
 /* Logging mechanism
  */
-extern          const gchar             *g_log_domain_glib;
+GLIB_VAR        const gchar             *g_log_domain_glib;
 guint           g_log_set_handler       (const gchar    *log_domain,
                                          GLogLevelFlags  log_levels,
                                          GLogFunc        log_func,
@@ -97,7 +97,7 @@ GLogLevelFlags  g_log_set_always_fatal  (GLogLevelFlags  fatal_mask);
 #ifndef G_LOG_DOMAIN
 #define G_LOG_DOMAIN    ((gchar*) 0)
 #endif  /* G_LOG_DOMAIN */
-#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
+#ifdef G_HAVE_ISO_VARARGS
 #define g_error(...)    g_log (G_LOG_DOMAIN,         \
                                G_LOG_LEVEL_ERROR,    \
                                __VA_ARGS__)
@@ -110,7 +110,7 @@ GLogLevelFlags  g_log_set_always_fatal  (GLogLevelFlags  fatal_mask);
 #define g_warning(...)  g_log (G_LOG_DOMAIN,         \
                                G_LOG_LEVEL_WARNING,  \
                                __VA_ARGS__)
-#elif __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 4)
+#elif defined(G_HAVE_GNUC_VARARGS)
 #define g_error(format...)      g_log (G_LOG_DOMAIN,         \
                                        G_LOG_LEVEL_ERROR,    \
                                        format)
@@ -123,7 +123,7 @@ GLogLevelFlags  g_log_set_always_fatal  (GLogLevelFlags  fatal_mask);
 #define g_warning(format...)    g_log (G_LOG_DOMAIN,         \
                                        G_LOG_LEVEL_WARNING,  \
                                        format)
-#else   /* !__GNUC__ */
+#else   /* no varargs macros */
 static void
 g_error (const gchar *format,
          ...)
@@ -170,12 +170,6 @@ void            g_printerr              (const gchar    *format,
                                          ...) G_GNUC_PRINTF (1, 2);
 GPrintFunc      g_set_printerr_handler  (GPrintFunc      func);
 
-/* deprecated compatibility functions, use g_log_set_handler() instead */
-typedef void            (*GErrorFunc)           (const gchar *str);
-typedef void            (*GWarningFunc)         (const gchar *str);
-GErrorFunc   g_set_error_handler   (GErrorFunc   func);
-GWarningFunc g_set_warning_handler (GWarningFunc func);
-GPrintFunc   g_set_message_handler (GPrintFunc func);
 
 /* Provide macros for error handling. The "assert" macros will
  *  exit on failure. The "return" macros will exit the current
@@ -186,8 +180,8 @@ GPrintFunc   g_set_message_handler (GPrintFunc func);
 
 #ifdef G_DISABLE_ASSERT
 
-#define g_assert(expr)
-#define g_assert_not_reached()
+#define g_assert(expr)		G_STMT_START{ }G_STMT_END
+#define g_assert_not_reached()	G_STMT_START{ }G_STMT_END
 
 #else /* !G_DISABLE_ASSERT */
 
@@ -236,10 +230,10 @@ GPrintFunc   g_set_message_handler (GPrintFunc func);
 
 #ifdef G_DISABLE_CHECKS
 
-#define g_return_if_fail(expr)
-#define g_return_val_if_fail(expr,val)
-#define g_return_if_reached() return
-#define g_return_val_if_reached(val) return (val)
+#define g_return_if_fail(expr)			G_STMT_START{ }G_STMT_END
+#define g_return_val_if_fail(expr,val)		G_STMT_START{ }G_STMT_END
+#define g_return_if_reached()			G_STMT_START{ return; }G_STMT_END
+#define g_return_val_if_reached(val)		G_STMT_START{ return (val); }G_STMT_END
 
 #else /* !G_DISABLE_CHECKS */
 
diff --git a/graf2d/win32gdk/gdk/src/glib/gnode.c b/graf2d/win32gdk/gdk/src/glib/gnode.c
new file mode 100644
index 00000000000..77143a8c432
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gnode.c
@@ -0,0 +1,1064 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * GNode: N-way tree implementation.
+ * Copyright (C) 1998 Tim Janik
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include "glib.h"
+
+#ifndef DISABLE_MEM_POOLS
+/* node allocation
+ */
+struct _GAllocator /* from gmem.c */
+{
+  gchar         *name;
+  guint16        n_preallocs;
+  guint          is_unused : 1;
+  guint          type : 4;
+  GAllocator    *last;
+  GMemChunk     *mem_chunk;
+  GNode         *free_nodes; /* implementation specific */
+};
+
+G_LOCK_DEFINE_STATIC (current_allocator);
+static GAllocator *current_allocator = NULL;
+
+/* HOLDS: current_allocator_lock */
+static void
+g_node_validate_allocator (GAllocator *allocator)
+{
+  g_return_if_fail (allocator != NULL);
+  g_return_if_fail (allocator->is_unused == TRUE);
+
+  if (allocator->type != G_ALLOCATOR_NODE)
+    {
+      allocator->type = G_ALLOCATOR_NODE;
+      if (allocator->mem_chunk)
+	{
+	  g_mem_chunk_destroy (allocator->mem_chunk);
+	  allocator->mem_chunk = NULL;
+	}
+    }
+
+  if (!allocator->mem_chunk)
+    {
+      allocator->mem_chunk = g_mem_chunk_new (allocator->name,
+					      sizeof (GNode),
+					      sizeof (GNode) * allocator->n_preallocs,
+					      G_ALLOC_ONLY);
+      allocator->free_nodes = NULL;
+    }
+
+  allocator->is_unused = FALSE;
+}
+
+void
+g_node_push_allocator (GAllocator *allocator)
+{
+  G_LOCK (current_allocator);
+  g_node_validate_allocator (allocator);
+  allocator->last = current_allocator;
+  current_allocator = allocator;
+  G_UNLOCK (current_allocator);
+}
+
+void
+g_node_pop_allocator (void)
+{
+  G_LOCK (current_allocator);
+  if (current_allocator)
+    {
+      GAllocator *allocator;
+
+      allocator = current_allocator;
+      current_allocator = allocator->last;
+      allocator->last = NULL;
+      allocator->is_unused = TRUE;
+    }
+  G_UNLOCK (current_allocator);
+}
+
+
+/* --- functions --- */
+GNode*
+g_node_new (gpointer data)
+{
+  GNode *node;
+
+  G_LOCK (current_allocator);
+  if (!current_allocator)
+    {
+       GAllocator *allocator = g_allocator_new ("GLib default GNode allocator",
+						128);
+       g_node_validate_allocator (allocator);
+       allocator->last = NULL;
+       current_allocator = allocator;
+    }
+  if (!current_allocator->free_nodes)
+    node = g_chunk_new (GNode, current_allocator->mem_chunk);
+  else
+    {
+      node = current_allocator->free_nodes;
+      current_allocator->free_nodes = node->next;
+    }
+  G_UNLOCK (current_allocator);
+  
+  node->data = data;
+  node->next = NULL;
+  node->prev = NULL;
+  node->parent = NULL;
+  node->children = NULL;
+  
+  return node;
+}
+
+static void
+g_nodes_free (GNode *node)
+{
+  GNode *parent;
+
+  parent = node;
+  while (1)
+    {
+      if (parent->children)
+	g_nodes_free (parent->children);
+
+#ifdef ENABLE_GC_FRIENDLY
+      parent->data = NULL;
+      parent->prev = NULL;
+      parent->parent = NULL;
+      parent->children = NULL;
+#endif /* ENABLE_GC_FRIENDLY */
+
+      if (parent->next)
+	parent = parent->next;
+      else
+	break;
+    }
+  
+  G_LOCK (current_allocator);
+  parent->next = current_allocator->free_nodes;
+  current_allocator->free_nodes = node;
+  G_UNLOCK (current_allocator);
+}
+#else /* DISABLE_MEM_POOLS */
+
+GNode*
+g_node_new (gpointer data)
+{
+  GNode *node;
+
+  node = g_new0 (GNode, 1);
+  
+  node->data = data;
+  
+  return node;
+}
+
+static void
+g_nodes_free (GNode *root)
+{
+  GNode *node, *next;
+  
+  node = root;
+  while (node != NULL)
+    {
+      next = node->next;
+      g_nodes_free (node->children);
+      g_free (node);
+      node = next;
+    }
+}
+#endif
+
+void
+g_node_destroy (GNode *root)
+{
+  g_return_if_fail (root != NULL);
+  
+  if (!G_NODE_IS_ROOT (root))
+    g_node_unlink (root);
+  
+  g_nodes_free (root);
+}
+
+void
+g_node_unlink (GNode *node)
+{
+  g_return_if_fail (node != NULL);
+  
+  if (node->prev)
+    node->prev->next = node->next;
+  else if (node->parent)
+    node->parent->children = node->next;
+  node->parent = NULL;
+  if (node->next)
+    {
+      node->next->prev = node->prev;
+      node->next = NULL;
+    }
+  node->prev = NULL;
+}
+
+GNode*
+g_node_copy (GNode *node)
+{
+  GNode *new_node = NULL;
+  
+  if (node)
+    {
+      GNode *child;
+      
+      new_node = g_node_new (node->data);
+      
+      for (child = g_node_last_child (node); child; child = child->prev)
+	g_node_prepend (new_node, g_node_copy (child));
+    }
+  
+  return new_node;
+}
+
+GNode*
+g_node_insert (GNode *parent,
+	       gint   position,
+	       GNode *node)
+{
+  g_return_val_if_fail (parent != NULL, node);
+  g_return_val_if_fail (node != NULL, node);
+  g_return_val_if_fail (G_NODE_IS_ROOT (node), node);
+  
+  if (position > 0)
+    return g_node_insert_before (parent,
+				 g_node_nth_child (parent, position),
+				 node);
+  else if (position == 0)
+    return g_node_prepend (parent, node);
+  else /* if (position < 0) */
+    return g_node_append (parent, node);
+}
+
+GNode*
+g_node_insert_before (GNode *parent,
+		      GNode *sibling,
+		      GNode *node)
+{
+  g_return_val_if_fail (parent != NULL, node);
+  g_return_val_if_fail (node != NULL, node);
+  g_return_val_if_fail (G_NODE_IS_ROOT (node), node);
+  if (sibling)
+    g_return_val_if_fail (sibling->parent == parent, node);
+  
+  node->parent = parent;
+  
+  if (sibling)
+    {
+      if (sibling->prev)
+	{
+	  node->prev = sibling->prev;
+	  node->prev->next = node;
+	  node->next = sibling;
+	  sibling->prev = node;
+	}
+      else
+	{
+	  node->parent->children = node;
+	  node->next = sibling;
+	  sibling->prev = node;
+	}
+    }
+  else
+    {
+      if (parent->children)
+	{
+	  sibling = parent->children;
+	  while (sibling->next)
+	    sibling = sibling->next;
+	  node->prev = sibling;
+	  sibling->next = node;
+	}
+      else
+	node->parent->children = node;
+    }
+
+  return node;
+}
+
+GNode*
+g_node_insert_after (GNode *parent,
+		     GNode *sibling,
+		     GNode *node)
+{
+  g_return_val_if_fail (parent != NULL, node);
+  g_return_val_if_fail (node != NULL, node);
+  g_return_val_if_fail (G_NODE_IS_ROOT (node), node);
+  if (sibling)
+    g_return_val_if_fail (sibling->parent == parent, node);
+
+  node->parent = parent;
+
+  if (sibling)
+    {
+      if (sibling->next)
+	{
+	  sibling->next->prev = node;
+	}
+      node->next = sibling->next;
+      node->prev = sibling;
+      sibling->next = node;
+    }
+  else
+    {
+      if (parent->children)
+	{
+	  node->next = parent->children;
+	  parent->children->prev = node;
+	}
+      parent->children = node;
+    }
+
+  return node;
+}
+
+GNode*
+g_node_prepend (GNode *parent,
+		GNode *node)
+{
+  g_return_val_if_fail (parent != NULL, node);
+  
+  return g_node_insert_before (parent, parent->children, node);
+}
+
+GNode*
+g_node_get_root (GNode *node)
+{
+  g_return_val_if_fail (node != NULL, NULL);
+  
+  while (node->parent)
+    node = node->parent;
+  
+  return node;
+}
+
+gboolean
+g_node_is_ancestor (GNode *node,
+		    GNode *descendant)
+{
+  g_return_val_if_fail (node != NULL, FALSE);
+  g_return_val_if_fail (descendant != NULL, FALSE);
+  
+  while (descendant)
+    {
+      if (descendant->parent == node)
+	return TRUE;
+      
+      descendant = descendant->parent;
+    }
+  
+  return FALSE;
+}
+
+/* returns 1 for root, 2 for first level children,
+ * 3 for children's children...
+ */
+guint
+g_node_depth (GNode *node)
+{
+  register guint depth = 0;
+  
+  while (node)
+    {
+      depth++;
+      node = node->parent;
+    }
+  
+  return depth;
+}
+
+void
+g_node_reverse_children (GNode *node)
+{
+  GNode *child;
+  GNode *last;
+  
+  g_return_if_fail (node != NULL);
+  
+  child = node->children;
+  last = NULL;
+  while (child)
+    {
+      last = child;
+      child = last->next;
+      last->next = last->prev;
+      last->prev = child;
+    }
+  node->children = last;
+}
+
+guint
+g_node_max_height (GNode *root)
+{
+  register GNode *child;
+  register guint max_height = 0;
+  
+  if (!root)
+    return 0;
+  
+  child = root->children;
+  while (child)
+    {
+      register guint tmp_height;
+      
+      tmp_height = g_node_max_height (child);
+      if (tmp_height > max_height)
+	max_height = tmp_height;
+      child = child->next;
+    }
+  
+  return max_height + 1;
+}
+
+static gboolean
+g_node_traverse_pre_order (GNode	    *node,
+			   GTraverseFlags    flags,
+			   GNodeTraverseFunc func,
+			   gpointer	     data)
+{
+  if (node->children)
+    {
+      GNode *child;
+      
+      if ((flags & G_TRAVERSE_NON_LEAFS) &&
+	  func (node, data))
+	return TRUE;
+      
+      child = node->children;
+      while (child)
+	{
+	  register GNode *current;
+	  
+	  current = child;
+	  child = current->next;
+	  if (g_node_traverse_pre_order (current, flags, func, data))
+	    return TRUE;
+	}
+    }
+  else if ((flags & G_TRAVERSE_LEAFS) &&
+	   func (node, data))
+    return TRUE;
+  
+  return FALSE;
+}
+
+static gboolean
+g_node_depth_traverse_pre_order (GNode		  *node,
+				 GTraverseFlags	   flags,
+				 guint		   depth,
+				 GNodeTraverseFunc func,
+				 gpointer	   data)
+{
+  if (node->children)
+    {
+      GNode *child;
+      
+      if ((flags & G_TRAVERSE_NON_LEAFS) &&
+	  func (node, data))
+	return TRUE;
+      
+      depth--;
+      if (!depth)
+	return FALSE;
+      
+      child = node->children;
+      while (child)
+	{
+	  register GNode *current;
+	  
+	  current = child;
+	  child = current->next;
+	  if (g_node_depth_traverse_pre_order (current, flags, depth, func, data))
+	    return TRUE;
+	}
+    }
+  else if ((flags & G_TRAVERSE_LEAFS) &&
+	   func (node, data))
+    return TRUE;
+  
+  return FALSE;
+}
+
+static gboolean
+g_node_traverse_post_order (GNode	     *node,
+			    GTraverseFlags    flags,
+			    GNodeTraverseFunc func,
+			    gpointer	      data)
+{
+  if (node->children)
+    {
+      GNode *child;
+      
+      child = node->children;
+      while (child)
+	{
+	  register GNode *current;
+	  
+	  current = child;
+	  child = current->next;
+	  if (g_node_traverse_post_order (current, flags, func, data))
+	    return TRUE;
+	}
+      
+      if ((flags & G_TRAVERSE_NON_LEAFS) &&
+	  func (node, data))
+	return TRUE;
+      
+    }
+  else if ((flags & G_TRAVERSE_LEAFS) &&
+	   func (node, data))
+    return TRUE;
+  
+  return FALSE;
+}
+
+static gboolean
+g_node_depth_traverse_post_order (GNode		   *node,
+				  GTraverseFlags    flags,
+				  guint		    depth,
+				  GNodeTraverseFunc func,
+				  gpointer	    data)
+{
+  if (node->children)
+    {
+      depth--;
+      if (depth)
+	{
+	  GNode *child;
+	  
+	  child = node->children;
+	  while (child)
+	    {
+	      register GNode *current;
+	      
+	      current = child;
+	      child = current->next;
+	      if (g_node_depth_traverse_post_order (current, flags, depth, func, data))
+		return TRUE;
+	    }
+	}
+      
+      if ((flags & G_TRAVERSE_NON_LEAFS) &&
+	  func (node, data))
+	return TRUE;
+      
+    }
+  else if ((flags & G_TRAVERSE_LEAFS) &&
+	   func (node, data))
+    return TRUE;
+  
+  return FALSE;
+}
+
+static gboolean
+g_node_traverse_in_order (GNode		   *node,
+			  GTraverseFlags    flags,
+			  GNodeTraverseFunc func,
+			  gpointer	    data)
+{
+  if (node->children)
+    {
+      GNode *child;
+      register GNode *current;
+      
+      child = node->children;
+      current = child;
+      child = current->next;
+      
+      if (g_node_traverse_in_order (current, flags, func, data))
+	return TRUE;
+      
+      if ((flags & G_TRAVERSE_NON_LEAFS) &&
+	  func (node, data))
+	return TRUE;
+      
+      while (child)
+	{
+	  current = child;
+	  child = current->next;
+	  if (g_node_traverse_in_order (current, flags, func, data))
+	    return TRUE;
+	}
+    }
+  else if ((flags & G_TRAVERSE_LEAFS) &&
+	   func (node, data))
+    return TRUE;
+  
+  return FALSE;
+}
+
+static gboolean
+g_node_depth_traverse_in_order (GNode		 *node,
+				GTraverseFlags	  flags,
+				guint		  depth,
+				GNodeTraverseFunc func,
+				gpointer	  data)
+{
+  if (node->children)
+    {
+      depth--;
+      if (depth)
+	{
+	  GNode *child;
+	  register GNode *current;
+	  
+	  child = node->children;
+	  current = child;
+	  child = current->next;
+	  
+	  if (g_node_depth_traverse_in_order (current, flags, depth, func, data))
+	    return TRUE;
+	  
+	  if ((flags & G_TRAVERSE_NON_LEAFS) &&
+	      func (node, data))
+	    return TRUE;
+	  
+	  while (child)
+	    {
+	      current = child;
+	      child = current->next;
+	      if (g_node_depth_traverse_in_order (current, flags, depth, func, data))
+		return TRUE;
+	    }
+	}
+      else if ((flags & G_TRAVERSE_NON_LEAFS) &&
+	       func (node, data))
+	return TRUE;
+    }
+  else if ((flags & G_TRAVERSE_LEAFS) &&
+	   func (node, data))
+    return TRUE;
+  
+  return FALSE;
+}
+
+static gboolean
+g_node_traverse_children (GNode		    *node,
+			  GTraverseFlags     flags,
+			  GNodeTraverseFunc  func,
+			  gpointer	     data)
+{
+  GNode *child;
+  
+  child = node->children;
+  
+  while (child)
+    {
+      register GNode *current;
+      
+      current = child;
+      child = current->next;
+      
+      if (current->children)
+	{
+	  if ((flags & G_TRAVERSE_NON_LEAFS) &&
+	      func (current, data))
+	    return TRUE;
+	}
+      else if ((flags & G_TRAVERSE_LEAFS) &&
+	       func (current, data))
+	return TRUE;
+    }
+  
+  child = node->children;
+  
+  while (child)
+    {
+      register GNode *current;
+      
+      current = child;
+      child = current->next;
+      
+      if (current->children &&
+	  g_node_traverse_children (current, flags, func, data))
+	return TRUE;
+    }
+  
+  return FALSE;
+}
+
+static gboolean
+g_node_depth_traverse_children (GNode		 *node,
+				GTraverseFlags	  flags,
+				guint		  depth,
+				GNodeTraverseFunc func,
+				gpointer	  data)
+{
+  GNode *child;
+  
+  child = node->children;
+  
+  while (child)
+    {
+      register GNode *current;
+      
+      current = child;
+      child = current->next;
+      
+      if (current->children)
+	{
+	  if ((flags & G_TRAVERSE_NON_LEAFS) &&
+	      func (current, data))
+	    return TRUE;
+	}
+      else if ((flags & G_TRAVERSE_LEAFS) &&
+	       func (current, data))
+	return TRUE;
+    }
+  
+  depth--;
+  if (!depth)
+    return FALSE;
+  
+  child = node->children;
+  
+  while (child)
+    {
+      register GNode *current;
+      
+      current = child;
+      child = current->next;
+      
+      if (current->children &&
+	  g_node_depth_traverse_children (current, flags, depth, func, data))
+	return TRUE;
+    }
+  
+  return FALSE;
+}
+
+void
+g_node_traverse (GNode		  *root,
+		 GTraverseType	   order,
+		 GTraverseFlags	   flags,
+		 gint		   depth,
+		 GNodeTraverseFunc func,
+		 gpointer	   data)
+{
+  g_return_if_fail (root != NULL);
+  g_return_if_fail (func != NULL);
+  g_return_if_fail (order <= G_LEVEL_ORDER);
+  g_return_if_fail (flags <= G_TRAVERSE_MASK);
+  g_return_if_fail (depth == -1 || depth > 0);
+  
+  switch (order)
+    {
+    case G_PRE_ORDER:
+      if (depth < 0)
+	g_node_traverse_pre_order (root, flags, func, data);
+      else
+	g_node_depth_traverse_pre_order (root, flags, depth, func, data);
+      break;
+    case G_POST_ORDER:
+      if (depth < 0)
+	g_node_traverse_post_order (root, flags, func, data);
+      else
+	g_node_depth_traverse_post_order (root, flags, depth, func, data);
+      break;
+    case G_IN_ORDER:
+      if (depth < 0)
+	g_node_traverse_in_order (root, flags, func, data);
+      else
+	g_node_depth_traverse_in_order (root, flags, depth, func, data);
+      break;
+    case G_LEVEL_ORDER:
+      if (root->children)
+	{
+	  if (!((flags & G_TRAVERSE_NON_LEAFS) &&
+		func (root, data)))
+	    {
+	      if (depth < 0)
+		g_node_traverse_children (root, flags, func, data);
+	      else
+		{
+		  depth--;
+		  if (depth)
+		    g_node_depth_traverse_children (root, flags, depth, func, data);
+		}
+	    }
+	}
+      else if (flags & G_TRAVERSE_LEAFS)
+	func (root, data);
+      break;
+    }
+}
+
+static gboolean
+g_node_find_func (GNode	  *node,
+		  gpointer data)
+{
+  register gpointer *d = data;
+  
+  if (*d != node->data)
+    return FALSE;
+  
+  *(++d) = node;
+  
+  return TRUE;
+}
+
+GNode*
+g_node_find (GNode	       *root,
+	     GTraverseType	order,
+	     GTraverseFlags	flags,
+	     gpointer		data)
+{
+  gpointer d[2];
+  
+  g_return_val_if_fail (root != NULL, NULL);
+  g_return_val_if_fail (order <= G_LEVEL_ORDER, NULL);
+  g_return_val_if_fail (flags <= G_TRAVERSE_MASK, NULL);
+  
+  d[0] = data;
+  d[1] = NULL;
+  
+  g_node_traverse (root, order, flags, -1, g_node_find_func, d);
+  
+  return d[1];
+}
+
+static void
+g_node_count_func (GNode	 *node,
+		   GTraverseFlags flags,
+		   guint	 *n)
+{
+  if (node->children)
+    {
+      GNode *child;
+      
+      if (flags & G_TRAVERSE_NON_LEAFS)
+	(*n)++;
+      
+      child = node->children;
+      while (child)
+	{
+	  g_node_count_func (child, flags, n);
+	  child = child->next;
+	}
+    }
+  else if (flags & G_TRAVERSE_LEAFS)
+    (*n)++;
+}
+
+guint
+g_node_n_nodes (GNode	      *root,
+		GTraverseFlags flags)
+{
+  guint n = 0;
+  
+  g_return_val_if_fail (root != NULL, 0);
+  g_return_val_if_fail (flags <= G_TRAVERSE_MASK, 0);
+  
+  g_node_count_func (root, flags, &n);
+  
+  return n;
+}
+
+GNode*
+g_node_last_child (GNode *node)
+{
+  g_return_val_if_fail (node != NULL, NULL);
+  
+  node = node->children;
+  if (node)
+    while (node->next)
+      node = node->next;
+  
+  return node;
+}
+
+GNode*
+g_node_nth_child (GNode *node,
+		  guint	 n)
+{
+  g_return_val_if_fail (node != NULL, NULL);
+  
+  node = node->children;
+  if (node)
+    while ((n-- > 0) && node)
+      node = node->next;
+  
+  return node;
+}
+
+guint
+g_node_n_children (GNode *node)
+{
+  guint n = 0;
+  
+  g_return_val_if_fail (node != NULL, 0);
+  
+  node = node->children;
+  while (node)
+    {
+      n++;
+      node = node->next;
+    }
+  
+  return n;
+}
+
+GNode*
+g_node_find_child (GNode	 *node,
+		   GTraverseFlags flags,
+		   gpointer	  data)
+{
+  g_return_val_if_fail (node != NULL, NULL);
+  g_return_val_if_fail (flags <= G_TRAVERSE_MASK, NULL);
+  
+  node = node->children;
+  while (node)
+    {
+      if (node->data == data)
+	{
+	  if (G_NODE_IS_LEAF (node))
+	    {
+	      if (flags & G_TRAVERSE_LEAFS)
+		return node;
+	    }
+	  else
+	    {
+	      if (flags & G_TRAVERSE_NON_LEAFS)
+		return node;
+	    }
+	}
+      node = node->next;
+    }
+  
+  return NULL;
+}
+
+gint
+g_node_child_position (GNode *node,
+		       GNode *child)
+{
+  register guint n = 0;
+  
+  g_return_val_if_fail (node != NULL, -1);
+  g_return_val_if_fail (child != NULL, -1);
+  g_return_val_if_fail (child->parent == node, -1);
+  
+  node = node->children;
+  while (node)
+    {
+      if (node == child)
+	return n;
+      n++;
+      node = node->next;
+    }
+  
+  return -1;
+}
+
+gint
+g_node_child_index (GNode   *node,
+		    gpointer data)
+{
+  register guint n = 0;
+  
+  g_return_val_if_fail (node != NULL, -1);
+  
+  node = node->children;
+  while (node)
+    {
+      if (node->data == data)
+	return n;
+      n++;
+      node = node->next;
+    }
+  
+  return -1;
+}
+
+GNode*
+g_node_first_sibling (GNode *node)
+{
+  g_return_val_if_fail (node != NULL, NULL);
+  
+  if (node->parent)
+    return node->parent->children;
+  
+  while (node->prev)
+    node = node->prev;
+  
+  return node;
+}
+
+GNode*
+g_node_last_sibling (GNode *node)
+{
+  g_return_val_if_fail (node != NULL, NULL);
+  
+  while (node->next)
+    node = node->next;
+  
+  return node;
+}
+
+void
+g_node_children_foreach (GNode		 *node,
+			 GTraverseFlags	  flags,
+			 GNodeForeachFunc func,
+			 gpointer	  data)
+{
+  g_return_if_fail (node != NULL);
+  g_return_if_fail (flags <= G_TRAVERSE_MASK);
+  g_return_if_fail (func != NULL);
+  
+  node = node->children;
+  while (node)
+    {
+      register GNode *current;
+      
+      current = node;
+      node = current->next;
+      if (G_NODE_IS_LEAF (current))
+	{
+	  if (flags & G_TRAVERSE_LEAFS)
+	    func (current, data);
+	}
+      else
+	{
+	  if (flags & G_TRAVERSE_NON_LEAFS)
+	    func (current, data);
+	}
+    }
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gnode.h b/graf2d/win32gdk/gdk/src/glib/gnode.h
index ba584948467..6d79ab0a471 100644
--- a/graf2d/win32gdk/gdk/src/glib/gnode.h
+++ b/graf2d/win32gdk/gdk/src/glib/gnode.h
@@ -27,7 +27,7 @@
 #ifndef __G_NODE_H__
 #define __G_NODE_H__
 
-#include <gmem.h>
+#include <glib/gmem.h>
 
 G_BEGIN_DECLS
 
@@ -72,7 +72,7 @@ struct _GNode
 				 ((GNode*) (node))->next == NULL)
 #define	 G_NODE_IS_LEAF(node)	(((GNode*) (node))->children == NULL)
 
-void     g_node_push_allocator  (GAllocator       *allocato);
+void     g_node_push_allocator  (GAllocator       *allocator);
 void     g_node_pop_allocator   (void);
 GNode*	 g_node_new		(gpointer	   data);
 void	 g_node_destroy		(GNode		  *root);
diff --git a/graf2d/win32gdk/gdk/src/glib/gobject/gtype.h b/graf2d/win32gdk/gdk/src/glib/gobject/gtype.h
new file mode 100644
index 00000000000..64f82851bb1
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gobject/gtype.h
@@ -0,0 +1,401 @@
+/* GObject - GLib Type, Object, Parameter and Signal Library
+ * Copyright (C) 1998-1999, 2000-2001 Tim Janik and Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+#ifndef __G_TYPE_H__
+#define __G_TYPE_H__
+
+extern const char *g_log_domain_gruntime;
+#include        <glib.h>
+
+G_BEGIN_DECLS
+
+/* Basic Type Macros
+ */
+#define G_TYPE_FUNDAMENTAL(type)                ((type) & 0xff)
+#define	G_TYPE_FUNDAMENTAL_MAX			(0xff)
+#define G_TYPE_DERIVE_ID(ptype, branch_seqno)   (G_TYPE_FUNDAMENTAL (ptype) | ((branch_seqno) << 8))
+#define G_TYPE_BRANCH_SEQNO(type)               ((type) >> 8)
+#define G_TYPE_FUNDAMENTAL_LAST                 ((GType) g_type_fundamental_last ())
+
+
+/* predefined fundamental and derived types
+ */
+typedef enum    /*< skip >*/
+{
+  /* standard types, introduced by g_type_init() */
+  G_TYPE_INVALID,
+  G_TYPE_NONE,
+  G_TYPE_INTERFACE,
+
+  /* GLib type ids */
+  G_TYPE_CHAR,
+  G_TYPE_UCHAR,
+  G_TYPE_BOOLEAN,
+  G_TYPE_INT,
+  G_TYPE_UINT,
+  G_TYPE_LONG,
+  G_TYPE_ULONG,
+  G_TYPE_ENUM,
+  G_TYPE_FLAGS,
+  G_TYPE_FLOAT,
+  G_TYPE_DOUBLE,
+  G_TYPE_STRING,
+  G_TYPE_POINTER,
+  G_TYPE_BOXED,
+  G_TYPE_PARAM,
+  G_TYPE_OBJECT,
+
+  /* reserved fundamental type ids,
+   * mail gtk-devel-list@redhat.com for reservations
+   */
+  G_TYPE_RESERVED_BSE_FIRST,
+  G_TYPE_RESERVED_BSE_LAST	= G_TYPE_RESERVED_BSE_FIRST + 15,
+  G_TYPE_RESERVED_LAST_FUNDAMENTAL,
+
+  /* derived type ids */
+  G_TYPE_CLOSURE		= G_TYPE_DERIVE_ID (G_TYPE_BOXED, 1),
+  G_TYPE_VALUE			= G_TYPE_DERIVE_ID (G_TYPE_BOXED, 2),
+  G_TYPE_VALUE_ARRAY		= G_TYPE_DERIVE_ID (G_TYPE_BOXED, 3),
+  G_TYPE_GSTRING		= G_TYPE_DERIVE_ID (G_TYPE_BOXED, 4),
+  G_TYPE_PARAM_CHAR		= G_TYPE_DERIVE_ID (G_TYPE_PARAM, 1),
+  G_TYPE_PARAM_UCHAR		= G_TYPE_DERIVE_ID (G_TYPE_PARAM, 2),
+  G_TYPE_PARAM_BOOLEAN		= G_TYPE_DERIVE_ID (G_TYPE_PARAM, 3),
+  G_TYPE_PARAM_INT		= G_TYPE_DERIVE_ID (G_TYPE_PARAM, 4),
+  G_TYPE_PARAM_UINT		= G_TYPE_DERIVE_ID (G_TYPE_PARAM, 5),
+  G_TYPE_PARAM_LONG		= G_TYPE_DERIVE_ID (G_TYPE_PARAM, 6),
+  G_TYPE_PARAM_ULONG		= G_TYPE_DERIVE_ID (G_TYPE_PARAM, 7),
+  G_TYPE_PARAM_UNICHAR		= G_TYPE_DERIVE_ID (G_TYPE_PARAM, 8),
+  G_TYPE_PARAM_ENUM		= G_TYPE_DERIVE_ID (G_TYPE_PARAM, 9),
+  G_TYPE_PARAM_FLAGS		= G_TYPE_DERIVE_ID (G_TYPE_PARAM, 10),
+  G_TYPE_PARAM_FLOAT		= G_TYPE_DERIVE_ID (G_TYPE_PARAM, 11),
+  G_TYPE_PARAM_DOUBLE		= G_TYPE_DERIVE_ID (G_TYPE_PARAM, 12),
+  G_TYPE_PARAM_STRING		= G_TYPE_DERIVE_ID (G_TYPE_PARAM, 13),
+  G_TYPE_PARAM_PARAM		= G_TYPE_DERIVE_ID (G_TYPE_PARAM, 14),
+  G_TYPE_PARAM_BOXED		= G_TYPE_DERIVE_ID (G_TYPE_PARAM, 15),
+  G_TYPE_PARAM_POINTER		= G_TYPE_DERIVE_ID (G_TYPE_PARAM, 16),
+  G_TYPE_PARAM_VALUE_ARRAY	= G_TYPE_DERIVE_ID (G_TYPE_PARAM, 17),
+  G_TYPE_PARAM_CLOSURE		= G_TYPE_DERIVE_ID (G_TYPE_PARAM, 18),
+  G_TYPE_PARAM_OBJECT		= G_TYPE_DERIVE_ID (G_TYPE_PARAM, 19)
+} GTypeFundamentals;
+
+
+/* Type Checking Macros
+ */
+#define G_TYPE_IS_FUNDAMENTAL(type)             (G_TYPE_BRANCH_SEQNO (type) == 0)
+#define G_TYPE_IS_DERIVED(type)                 (G_TYPE_BRANCH_SEQNO (type) > 0)
+#define G_TYPE_IS_INTERFACE(type)               (G_TYPE_FUNDAMENTAL (type) == G_TYPE_INTERFACE)
+#define G_TYPE_IS_CLASSED(type)                 (g_type_check_flags ((type), G_TYPE_FLAG_CLASSED))
+#define G_TYPE_IS_INSTANTIATABLE(type)          (g_type_check_flags ((type), G_TYPE_FLAG_INSTANTIATABLE))
+#define G_TYPE_IS_DERIVABLE(type)               (g_type_check_flags ((type), G_TYPE_FLAG_DERIVABLE))
+#define G_TYPE_IS_DEEP_DERIVABLE(type)          (g_type_check_flags ((type), G_TYPE_FLAG_DEEP_DERIVABLE))
+#define G_TYPE_IS_ABSTRACT(type)                (g_type_check_flags ((type), G_TYPE_FLAG_ABSTRACT))
+#define G_TYPE_IS_VALUE_ABSTRACT(type)          (g_type_check_flags ((type), G_TYPE_FLAG_VALUE_ABSTRACT))
+#define G_TYPE_IS_PARAM(type)                   (G_TYPE_FUNDAMENTAL (type) == G_TYPE_PARAM)
+#define G_TYPE_IS_VALUE_TYPE(type)              (g_type_check_is_value_type (type))
+#define G_TYPE_HAS_VALUE_TABLE(type)            (g_type_value_table_peek (type) != NULL)
+
+
+/* Typedefs
+ */
+typedef guint32                         GType;
+typedef struct _GValue                  GValue;
+typedef union  _GTypeCValue             GTypeCValue;
+typedef struct _GTypePlugin             GTypePlugin;
+typedef struct _GTypeClass              GTypeClass;
+typedef struct _GTypeInterface          GTypeInterface;
+typedef struct _GTypeInstance           GTypeInstance;
+typedef struct _GTypeInfo               GTypeInfo;
+typedef struct _GTypeFundamentalInfo    GTypeFundamentalInfo;
+typedef struct _GInterfaceInfo          GInterfaceInfo;
+typedef struct _GTypeValueTable         GTypeValueTable;
+typedef struct _GTypeQuery		GTypeQuery;
+
+
+/* Basic Type Structures
+ */
+struct _GTypeClass
+{
+  /*< private >*/
+  GType g_type;
+};
+struct _GTypeInstance
+{
+  /*< private >*/
+  GTypeClass *g_class;
+};
+struct _GTypeInterface
+{
+  /*< private >*/
+  GType g_type;         /* iface type */
+  GType g_instance_type;
+};
+struct _GTypeQuery
+{
+  GType		type;
+  const gchar  *type_name;
+  guint		class_size;
+  guint		instance_size;
+};
+
+
+/* Casts, checks and accessors for structured types
+ * usage of these macros is reserved to type implementations only
+ */
+/*< protected >*/
+#define G_TYPE_CHECK_INSTANCE(instance)				(_G_TYPE_CHI ((GTypeInstance*) (instance)))
+#define G_TYPE_CHECK_INSTANCE_CAST(instance, g_type, c_type)    (_G_TYPE_CIC ((instance), (g_type), c_type))
+#define G_TYPE_CHECK_INSTANCE_TYPE(instance, g_type)            (_G_TYPE_CIT ((instance), (g_type)))
+#define G_TYPE_INSTANCE_GET_CLASS(instance, g_type, c_type)     (_G_TYPE_IGC ((instance), (g_type), c_type))
+#define G_TYPE_INSTANCE_GET_INTERFACE(instance, g_type, c_type) (_G_TYPE_IGI ((instance), (g_type), c_type))
+#define G_TYPE_CHECK_CLASS_CAST(g_class, g_type, c_type)        (_G_TYPE_CCC ((g_class), (g_type), c_type))
+#define G_TYPE_CHECK_CLASS_TYPE(g_class, g_type)                (_G_TYPE_CCT ((g_class), (g_type)))
+#define G_TYPE_CHECK_VALUE(value)				(_G_TYPE_CHV ((value)))
+#define G_TYPE_CHECK_VALUE_TYPE(value, g_type)			(_G_TYPE_CVH ((value), (g_type)))
+#define G_TYPE_FROM_INSTANCE(instance)                          (G_TYPE_FROM_CLASS (((GTypeInstance*) (instance))->g_class))
+#define G_TYPE_FROM_CLASS(g_class)                              (((GTypeClass*) (g_class))->g_type)
+#define G_TYPE_FROM_INTERFACE(g_iface)                          (((GTypeInterface*) (g_iface))->g_type)
+
+
+/* debug flags for g_type_init_with_debug_flags() */
+typedef enum	/*< skip >*/
+{
+  G_TYPE_DEBUG_NONE	= 0,
+  G_TYPE_DEBUG_OBJECTS	= 1 << 0,
+  G_TYPE_DEBUG_SIGNALS	= 1 << 1,
+  G_TYPE_DEBUG_MASK	= 0x03
+} GTypeDebugFlags;
+
+
+/* --- prototypes --- */
+void                  g_type_init                    (void);
+void                  g_type_init_with_debug_flags   (GTypeDebugFlags  debug_flags);
+G_CONST_RETURN gchar* g_type_name                    (GType            type);
+GQuark                g_type_qname                   (GType            type);
+GType                 g_type_from_name               (const gchar     *name);
+GType                 g_type_parent                  (GType            type);
+guint                 g_type_depth                   (GType            type);
+GType                 g_type_next_base               (GType            leaf_type,
+						      GType            root_type);
+gboolean              g_type_is_a                    (GType            type,
+						      GType            is_a_type);
+guint                 g_type_fundamental_branch_last (GType            type);
+gpointer              g_type_class_ref               (GType            type);
+gpointer              g_type_class_peek              (GType            type);
+void                  g_type_class_unref             (gpointer         g_class);
+gpointer              g_type_class_peek_parent       (gpointer         g_class);
+gpointer              g_type_interface_peek          (gpointer         instance_class,
+						      GType            iface_type);
+gpointer              g_type_interface_peek_parent   (gpointer         g_iface);
+
+/* g_free() the returned arrays */
+GType*                g_type_children                (GType            type,
+						      guint           *n_children);
+GType*                g_type_interfaces              (GType            type,
+						      guint           *n_interfaces);
+
+/* per-type _static_ data */
+void                  g_type_set_qdata               (GType            type,
+						      GQuark           quark,
+						      gpointer         data);
+gpointer              g_type_get_qdata               (GType            type,
+						      GQuark           quark);
+void		      g_type_query		     (GType	       type,
+						      GTypeQuery      *query);
+
+
+/* --- type registration --- */
+typedef void   (*GBaseInitFunc)              (gpointer         g_class);
+typedef void   (*GBaseFinalizeFunc)          (gpointer         g_class);
+typedef void   (*GClassInitFunc)             (gpointer         g_class,
+					      gpointer         class_data);
+typedef void   (*GClassFinalizeFunc)         (gpointer         g_class,
+					      gpointer         class_data);
+typedef void   (*GInstanceInitFunc)          (GTypeInstance   *instance,
+					      gpointer         g_class);
+typedef void   (*GInterfaceInitFunc)         (gpointer         g_iface,
+					      gpointer         iface_data);
+typedef void   (*GInterfaceFinalizeFunc)     (gpointer         g_iface,
+					      gpointer         iface_data);
+typedef gboolean (*GTypeClassCacheFunc)	     (gpointer	       cache_data,
+					      GTypeClass      *g_class);
+typedef enum    /*< skip >*/
+{
+  G_TYPE_FLAG_CLASSED           = (1 << 0),
+  G_TYPE_FLAG_INSTANTIATABLE    = (1 << 1),
+  G_TYPE_FLAG_DERIVABLE         = (1 << 2),
+  G_TYPE_FLAG_DEEP_DERIVABLE    = (1 << 3)
+} GTypeFundamentalFlags;
+typedef enum    /*< skip >*/
+{
+  G_TYPE_FLAG_ABSTRACT		= (1 << 4),
+  G_TYPE_FLAG_VALUE_ABSTRACT	= (1 << 5)
+} GTypeFlags;
+struct _GTypeInfo
+{
+  /* interface types, classed types, instantiated types */
+  guint16                class_size;
+
+  GBaseInitFunc          base_init;
+  GBaseFinalizeFunc      base_finalize;
+
+  /* classed types, instantiated types */
+  GClassInitFunc         class_init;
+  GClassFinalizeFunc     class_finalize;
+  gconstpointer          class_data;
+
+  /* instantiated types */
+  guint16                instance_size;
+  guint16                n_preallocs;
+  GInstanceInitFunc      instance_init;
+
+  /* value handling */
+  const GTypeValueTable	*value_table;
+};
+struct _GTypeFundamentalInfo
+{
+  GTypeFundamentalFlags  type_flags;
+};
+struct _GInterfaceInfo
+{
+  GInterfaceInitFunc     interface_init;
+  GInterfaceFinalizeFunc interface_finalize;
+  gpointer               interface_data;
+};
+struct _GTypeValueTable
+{
+  void     (*value_init)         (GValue       *value);
+  void     (*value_free)         (GValue       *value);
+  void     (*value_copy)         (const GValue *src_value,
+				  GValue       *dest_value);
+  /* varargs functionality (optional) */
+  gpointer (*value_peek_pointer) (const GValue *value);
+  gchar	    *collect_format;
+  gchar*   (*collect_value)      (GValue       *value,
+				  guint         n_collect_values,
+				  GTypeCValue  *collect_values,
+				  guint		collect_flags);
+  gchar	    *lcopy_format;
+  gchar*   (*lcopy_value)        (const GValue *value,
+				  guint         n_collect_values,
+				  GTypeCValue  *collect_values,
+				  guint		collect_flags);
+};
+GType g_type_register_static		(GType			     parent_type,
+					 const gchar		    *type_name,
+					 const GTypeInfo	    *info,
+					 GTypeFlags		     flags);
+GType g_type_register_dynamic		(GType			     parent_type,
+					 const gchar		    *type_name,
+					 GTypePlugin		    *plugin,
+					 GTypeFlags		     flags);
+GType g_type_register_fundamental	(GType			     type_id,
+					 const gchar		    *type_name,
+					 const GTypeInfo	    *info,
+					 const GTypeFundamentalInfo *finfo,
+					 GTypeFlags		     flags);
+void  g_type_add_interface_static	(GType			     instance_type,
+					 GType			     interface_type,
+					 const GInterfaceInfo	    *info);
+void  g_type_add_interface_dynamic	(GType			     instance_type,
+					 GType			     interface_type,
+					 GTypePlugin		    *plugin);
+void  g_type_interface_add_prerequisite (GType			     interface_type,
+					 GType			     prerequisite_type);
+
+
+/* --- protected (for fundamental type implementations) --- */
+GTypePlugin*	 g_type_get_plugin		(GType		     type);
+GTypePlugin*	 g_type_interface_get_plugin	(GType		     instance_type,
+						 GType               implementation_type);
+
+GType		 g_type_fundamental_last	(void);
+gboolean         g_type_check_flags             (GType               type,
+						 guint               flags);
+GTypeInstance*   g_type_create_instance         (GType               type);
+void             g_type_free_instance           (GTypeInstance      *instance);
+void		 g_type_add_class_cache_func    (gpointer	     cache_data,
+						 GTypeClassCacheFunc cache_func);
+void		 g_type_remove_class_cache_func (gpointer	     cache_data,
+						 GTypeClassCacheFunc cache_func);
+void             g_type_class_unref_uncached    (gpointer            g_class);
+
+
+/*< private >*/
+gboolean	 g_type_check_instance          (GTypeInstance      *instance);
+GTypeInstance*   g_type_check_instance_cast     (GTypeInstance      *instance,
+						 GType               iface_type);
+gboolean         g_type_instance_is_a		(GTypeInstance      *instance,
+						 GType               iface_type);
+GTypeClass*      g_type_check_class_cast        (GTypeClass         *g_class,
+						 GType               is_a_type);
+gboolean         g_type_class_is_a              (GTypeClass         *g_class,
+						 GType               is_a_type);
+gboolean	 g_type_check_is_value_type     (GType		     type);
+gboolean	 g_type_check_value             (GValue		    *value);
+gboolean	 g_type_check_value_holds	(GValue		    *value,
+						 GType		     type);
+GTypeValueTable* g_type_value_table_peek        (GType		     type);
+
+
+/* --- debugging functions --- */
+G_CONST_RETURN gchar* g_type_name_from_instance	(GTypeInstance	*instance);
+G_CONST_RETURN gchar* g_type_name_from_class	(GTypeClass	*g_class);
+
+
+/* --- implementation bits --- */
+#ifndef G_DISABLE_CAST_CHECKS
+#  define _G_TYPE_CIC(ip, gt, ct) \
+    ((ct*) g_type_check_instance_cast ((GTypeInstance*) ip, gt))
+#  define _G_TYPE_CCC(cp, gt, ct) \
+    ((ct*) g_type_check_class_cast ((GTypeClass*) cp, gt))
+#else /* G_DISABLE_CAST_CHECKS */
+#  define _G_TYPE_CIC(ip, gt, ct)       ((ct*) ip)
+#  define _G_TYPE_CCC(cp, gt, ct)       ((ct*) cp)
+#endif /* G_DISABLE_CAST_CHECKS */
+#define _G_TYPE_CHI(ip)			(g_type_check_instance ((GTypeInstance*) ip))
+#define _G_TYPE_CVH(vl, gt)             (g_type_check_value_holds ((GValue*) vl, gt))
+#define _G_TYPE_CHV(vl)			(g_type_check_value ((GValue*) vl))
+#define _G_TYPE_IGC(ip, gt, ct)         ((ct*) (((GTypeInstance*) ip)->g_class))
+#define _G_TYPE_IGI(ip, gt, ct)         ((ct*) g_type_interface_peek (((GTypeInstance*) ip)->g_class, gt))
+#ifdef	__GNUC__
+#  define _G_TYPE_CIT(ip, gt)             ({ \
+  GTypeInstance *__inst = (GTypeInstance*) ip; GType __t = gt; gboolean __r; \
+  if (__inst && __inst->g_class && __inst->g_class->g_type == __t) \
+    __r = TRUE; \
+  else \
+    __r = g_type_instance_is_a (__inst, __t); \
+  __r; \
+})
+#  define _G_TYPE_CCT(cp, gt)             ({ \
+  GTypeClass *__class = (GTypeClass*) cp; GType __t = gt; gboolean __r; \
+  if (__class && __class->g_type == __t) \
+    __r = TRUE; \
+  else \
+    __r = g_type_class_is_a (__class, __t); \
+  __r; \
+})
+#else  /* !__GNUC__ */
+#  define _G_TYPE_CIT(ip, gt)             (g_type_instance_is_a ((GTypeInstance*) ip, gt))
+#  define _G_TYPE_CCT(cp, gt)             (g_type_class_is_a ((GTypeClass*) cp, gt))
+#endif /* !__GNUC__ */
+#define	G_TYPE_FLAG_RESERVED_ID_BIT	(1 << 30)
+extern GTypeDebugFlags			_g_type_debug_flags;
+
+G_END_DECLS
+
+#endif /* __G_TYPE_H__ */
diff --git a/graf2d/win32gdk/gdk/src/glib/gpattern.c b/graf2d/win32gdk/gdk/src/glib/gpattern.c
new file mode 100644
index 00000000000..a149273a0d3
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gpattern.c
@@ -0,0 +1,300 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997, 1999  Peter Mattis, Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+#include "gpattern.h"
+
+#include "gmacros.h"
+#include "gmessages.h"
+#include "gmem.h"
+#include "gutils.h" /* inline hassle */
+#include <string.h>
+
+
+/* --- functions --- */
+static inline gboolean
+g_pattern_ph_match (const gchar *match_pattern,
+		    const gchar *match_string)
+{
+  register const gchar *pattern, *string;
+  register gchar ch;
+
+  pattern = match_pattern;
+  string = match_string;
+
+  ch = *pattern;
+  pattern++;
+  while (ch)
+    {
+      switch (ch)
+	{
+	case '?':
+	  if (!*string)
+	    return FALSE;
+	  string++;
+	  break;
+
+	case '*':
+	  do
+	    {
+	      ch = *pattern;
+	      pattern++;
+	      if (ch == '?')
+		{
+		  if (!*string)
+		    return FALSE;
+		  string++;
+		}
+	    }
+	  while (ch == '*' || ch == '?');
+	  if (!ch)
+	    return TRUE;
+	  do
+	    {
+	      while (ch != *string)
+		{
+		  if (!*string)
+		    return FALSE;
+		  string++;
+		}
+	      string++;
+	      if (g_pattern_ph_match (pattern, string))
+		return TRUE;
+	    }
+	  while (*string);
+	  break;
+
+	default:
+	  if (ch == *string)
+	    string++;
+	  else
+	    return FALSE;
+	  break;
+	}
+
+      ch = *pattern;
+      pattern++;
+    }
+
+  return *string == 0;
+}
+
+gboolean
+g_pattern_match (GPatternSpec *pspec,
+		 guint         string_length,
+		 const gchar  *string,
+		 const gchar  *string_reversed)
+{
+  g_return_val_if_fail (pspec != NULL, FALSE);
+  g_return_val_if_fail (string != NULL, FALSE);
+  g_return_val_if_fail (string_reversed != NULL, FALSE);
+
+  switch (pspec->match_type)
+    {
+    case G_MATCH_ALL:
+      return g_pattern_ph_match (pspec->pattern, string);
+
+    case G_MATCH_ALL_TAIL:
+      return g_pattern_ph_match (pspec->pattern_reversed, string_reversed);
+
+    case G_MATCH_HEAD:
+      if (pspec->pattern_length > string_length)
+	return FALSE;
+      else if (pspec->pattern_length == string_length)
+	return strcmp (pspec->pattern, string) == 0;
+      else if (pspec->pattern_length)
+	return strncmp (pspec->pattern, string, pspec->pattern_length) == 0;
+      else
+	return TRUE;
+
+    case G_MATCH_TAIL:
+      if (pspec->pattern_length > string_length)
+	return FALSE;
+      else if (pspec->pattern_length == string_length)
+	return strcmp (pspec->pattern_reversed, string_reversed) == 0;
+      else if (pspec->pattern_length)
+	return strncmp (pspec->pattern_reversed,
+			string_reversed,
+			pspec->pattern_length) == 0;
+      else
+	return TRUE;
+
+    case G_MATCH_EXACT:
+      if (pspec->pattern_length != string_length)
+	return FALSE;
+      else
+	return strcmp (pspec->pattern_reversed, string_reversed) == 0;
+
+    default:
+      g_return_val_if_fail (pspec->match_type < G_MATCH_LAST, FALSE);
+      return FALSE;
+    }
+}
+
+GPatternSpec*
+g_pattern_spec_new (const gchar *pattern)
+{
+  GPatternSpec *pspec;
+  gchar *p, *t;
+  const gchar *h;
+  guint hw = 0, tw = 0, hj = 0, tj = 0;
+
+  g_return_val_if_fail (pattern != NULL, NULL);
+
+  pspec = g_new (GPatternSpec, 1);
+  pspec->pattern_length = strlen (pattern);
+  pspec->pattern = strcpy (g_new (gchar, pspec->pattern_length + 1), pattern);
+  pspec->pattern_reversed = g_new (gchar, pspec->pattern_length + 1);
+  t = pspec->pattern_reversed + pspec->pattern_length;
+  *(t--) = 0;
+  h = pattern;
+  while (t >= pspec->pattern_reversed)
+    {
+      register gchar c = *(h++);
+
+      if (c == '*')
+	{
+	  if (t < h)
+	    hw++;
+	  else
+	    tw++;
+	}
+      else if (c == '?')
+	{
+	  if (t < h)
+	    hj++;
+	  else
+	    tj++;
+	}
+
+      *(t--) = c;
+    }
+  pspec->match_type = hw > tw || (hw == tw && hj > tj) ? G_MATCH_ALL_TAIL : G_MATCH_ALL;
+
+  if (hj || tj)
+    return pspec;
+
+  if (hw == 0 && tw == 0)
+    {
+      pspec->match_type = G_MATCH_EXACT;
+      return pspec;
+    }
+
+  if (hw)
+    {
+      p = pspec->pattern;
+      while (*p == '*')
+	p++;
+      if (p > pspec->pattern && !strchr (p, '*'))
+	{
+	  gchar *tmp;
+
+	  pspec->match_type = G_MATCH_TAIL;
+	  pspec->pattern_length = strlen (p);
+	  tmp = pspec->pattern;
+	  pspec->pattern = strcpy (g_new (gchar, pspec->pattern_length + 1), p);
+	  g_free (tmp);
+	  g_free (pspec->pattern_reversed);
+	  pspec->pattern_reversed = g_new (gchar, pspec->pattern_length + 1);
+	  t = pspec->pattern_reversed + pspec->pattern_length;
+	  *(t--) = 0;
+	  h = pspec->pattern;
+	  while (t >= pspec->pattern_reversed)
+	    *(t--) = *(h++);
+	  return pspec;
+	}
+    }
+
+  if (tw)
+    {
+      p = pspec->pattern_reversed;
+      while (*p == '*')
+	p++;
+      if (p > pspec->pattern_reversed && !strchr (p, '*'))
+	{
+	  gchar *tmp;
+
+	  pspec->match_type = G_MATCH_HEAD;
+	  pspec->pattern_length = strlen (p);
+	  tmp = pspec->pattern_reversed;
+	  pspec->pattern_reversed = strcpy (g_new (gchar, pspec->pattern_length + 1), p);
+	  g_free (tmp);
+	  g_free (pspec->pattern);
+	  pspec->pattern = g_new (gchar, pspec->pattern_length + 1);
+	  t = pspec->pattern + pspec->pattern_length;
+	  *(t--) = 0;
+	  h = pspec->pattern_reversed;
+	  while (t >= pspec->pattern)
+	    *(t--) = *(h++);
+	}
+    }
+
+  return pspec;
+}
+
+gboolean
+g_pattern_match_string (GPatternSpec *pspec,
+			const gchar  *string)
+{
+  gchar *string_reversed, *t;
+  const gchar *h;
+  guint length;
+  gboolean ergo;
+
+  g_return_val_if_fail (pspec != NULL, FALSE);
+  g_return_val_if_fail (string != NULL, FALSE);
+
+  length = strlen (string);
+  string_reversed = g_new (gchar, length + 1);
+  t = string_reversed + length;
+  *(t--) = 0;
+  h = string;
+  while (t >= string_reversed)
+    *(t--) = *(h++);
+
+  ergo = g_pattern_match (pspec, length, string, string_reversed);
+  g_free (string_reversed);
+
+  return ergo;
+}
+
+gboolean
+g_pattern_match_simple (const gchar *pattern,
+			const gchar *string)
+{
+  GPatternSpec *pspec;
+  gboolean ergo;
+
+  g_return_val_if_fail (pattern != NULL, FALSE);
+  g_return_val_if_fail (string != NULL, FALSE);
+
+  pspec = g_pattern_spec_new (pattern);
+  ergo = g_pattern_match_string (pspec, string);
+  g_pattern_spec_free (pspec);
+
+  return ergo;
+}
+
+void
+g_pattern_spec_free (GPatternSpec *pspec)
+{
+  g_return_if_fail (pspec != NULL);
+
+  g_free (pspec->pattern);
+  g_free (pspec->pattern_reversed);
+  g_free (pspec);
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gpattern.h b/graf2d/win32gdk/gdk/src/glib/gpattern.h
new file mode 100644
index 00000000000..bd29ad7ac7c
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gpattern.h
@@ -0,0 +1,58 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997, 1999  Peter Mattis, Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+#ifndef __G_PATTERN_H__
+#define __G_PATTERN_H__
+
+#include <glib/gtypes.h>
+
+G_BEGIN_DECLS
+
+typedef enum
+{
+  G_MATCH_ALL,       /* "*A?A*" */
+  G_MATCH_ALL_TAIL,  /* "*A?AA" */
+  G_MATCH_HEAD,      /* "AAAA*" */
+  G_MATCH_TAIL,      /* "*AAAA" */
+  G_MATCH_EXACT,     /* "AAAAA" */
+  G_MATCH_LAST
+} GMatchType;
+
+typedef struct _GPatternSpec    GPatternSpec;
+struct _GPatternSpec
+{
+  GMatchType match_type;
+  guint      pattern_length;
+  gchar     *pattern;
+  gchar     *pattern_reversed;
+};
+
+GPatternSpec* g_pattern_spec_new       (const gchar  *pattern);
+void          g_pattern_spec_free      (GPatternSpec *pspec);
+gboolean      g_pattern_match          (GPatternSpec *pspec,
+					guint         string_length,
+					const gchar  *string,
+					const gchar  *string_reversed);
+gboolean      g_pattern_match_string   (GPatternSpec *pspec,
+					const gchar  *string);
+gboolean      g_pattern_match_simple   (const gchar  *pattern,
+					const gchar  *string);
+
+G_END_DECLS
+
+#endif /* __G_PATTERN_H__ */
diff --git a/graf2d/win32gdk/gdk/src/glib/gprimes.c b/graf2d/win32gdk/gdk/src/glib/gprimes.c
new file mode 100644
index 00000000000..0d63bb76c75
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gprimes.c
@@ -0,0 +1,83 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#include "glib.h"
+
+static const guint g_primes[] =
+{
+  11,
+  19,
+  37,
+  73,
+  109,
+  163,
+  251,
+  367,
+  557,
+  823,
+  1237,
+  1861,
+  2777,
+  4177,
+  6247,
+  9371,
+  14057,
+  21089,
+  31627,
+  47431,
+  71143,
+  106721,
+  160073,
+  240101,
+  360163,
+  540217,
+  810343,
+  1215497,
+  1823231,
+  2734867,
+  4102283,
+  6153409,
+  9230113,
+  13845163,
+};
+
+static const guint g_nprimes = sizeof (g_primes) / sizeof (g_primes[0]);
+
+guint
+g_spaced_primes_closest (guint num)
+{
+  gint i;
+
+  for (i = 0; i < g_nprimes; i++)
+    if (g_primes[i] > num)
+      return g_primes[i];
+
+  return g_primes[g_nprimes - 1];
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gprimes.h b/graf2d/win32gdk/gdk/src/glib/gprimes.h
index 5431b8929b8..0f1740cb16f 100644
--- a/graf2d/win32gdk/gdk/src/glib/gprimes.h
+++ b/graf2d/win32gdk/gdk/src/glib/gprimes.h
@@ -27,7 +27,7 @@
 #ifndef __G_PRIMES_H__
 #define __G_PRIMES_H__
 
-#include <g_types.h>
+#include <glib/gtypes.h>
 
 G_BEGIN_DECLS
 
diff --git a/graf2d/win32gdk/gdk/src/glib/gqsort.c b/graf2d/win32gdk/gdk/src/glib/gqsort.c
new file mode 100644
index 00000000000..040be793fbf
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gqsort.c
@@ -0,0 +1,282 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1991, 1992, 1996, 1997 Free Software Foundation, Inc.
+ * Copyright (C) 2000 Eazel, Inc.
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * This file was originally part of the GNU C Library, and was modified to allow
+ * user data to be passed in to the sorting function.
+ *
+ * Written by Douglas C. Schmidt (schmidt@ics.uci.edu).
+ * Modified by Maciej Stachowiak (mjs@eazel.com)
+ *
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with GLib
+ * at ftp://ftp.gtk.org/pub/gtk/.
+ */
+
+#include <string.h>
+
+#include "glib.h"
+
+/* Byte-wise swap two items of size SIZE. */
+#define SWAP(a, b, size)						      \
+  do									      \
+    {									      \
+      register size_t __size = (size);					      \
+      register char *__a = (a), *__b = (b);				      \
+      do								      \
+	{								      \
+	  char __tmp = *__a;						      \
+	  *__a++ = *__b;						      \
+	  *__b++ = __tmp;						      \
+	} while (--__size > 0);						      \
+    } while (0)
+
+/* Discontinue quicksort algorithm when partition gets below this size.
+   This particular magic number was chosen to work best on a Sun 4/260. */
+#define MAX_THRESH 4
+
+/* Stack node declarations used to store unfulfilled partition obligations. */
+typedef struct
+{
+  char *lo;
+  char *hi;
+}
+stack_node;
+
+/* The next 4 #defines implement a very fast in-line stack abstraction. */
+#define STACK_SIZE	(8 * sizeof(unsigned long int))
+#define PUSH(low, high)	((void) ((top->lo = (low)), (top->hi = (high)), ++top))
+#define	POP(low, high)	((void) (--top, (low = top->lo), (high = top->hi)))
+#define	STACK_NOT_EMPTY	(stack < top)
+
+
+/* Order size using quicksort.  This implementation incorporates
+ * four optimizations discussed in Sedgewick:
+ *
+ * 1. Non-recursive, using an explicit stack of pointer that store the next
+ *    array partition to sort.  To save time, this maximum amount of space
+ *    required to store an array of MAX_INT is allocated on the stack.  Assuming
+ *    a 32-bit integer, this needs only 32 * sizeof(stack_node) == 136 bits.
+ *    Pretty cheap, actually.
+ *
+ * 2. Chose the pivot element using a median-of-three decision tree.  This
+ *    reduces the probability of selecting a bad pivot value and eliminates
+ *    certain * extraneous comparisons.
+ *
+ * 3. Only quicksorts TOTAL_ELEMS / MAX_THRESH partitions, leaving insertion
+ *    sort to order the MAX_THRESH items within each partition.  This is a big
+ *    win, since insertion sort is faster for small, mostly sorted array
+ *    segments.
+ *
+ * 4. The larger of the two sub-partitions is always pushed onto the stack
+ *    first, with the algorithm then concentrating on the smaller partition.
+ *    This *guarantees* no more than log (n) stack size is needed (actually O(1)
+ *    in this case)!
+ */
+
+/**
+ * g_qsort_with_data:
+ * @pbase: start of array to sort
+ * @total_elems: elements in the array
+ * @size: size of each element
+ * @compare_func: function to compare elements
+ * @user_data: data to pass to @compare_func
+ *
+ * This is just like the standard C qsort() function, but
+ * the comparison routine accepts a user data argument.
+ * 
+ **/
+void
+g_qsort_with_data (gconstpointer    pbase,
+		   gint             total_elems,
+		   size_t           size,
+		   GCompareDataFunc compare_func,
+		   gpointer         user_data)
+{
+  register char *base_ptr = (char *) pbase;
+
+  /* Allocating SIZE bytes for a pivot buffer facilitates a better
+   * algorithm below since we can do comparisons directly on the pivot.
+   */
+  char *pivot_buffer = (char *) g_alloca (size);
+  const size_t max_thresh = MAX_THRESH * size;
+
+  g_return_if_fail (total_elems > 0);
+  g_return_if_fail (pbase != NULL);
+  g_return_if_fail (compare_func != NULL);
+
+  if (total_elems > MAX_THRESH)
+    {
+      char *lo = base_ptr;
+      char *hi = &lo[size * (total_elems - 1)];
+      /* Largest size needed for 32-bit int!!! */
+      stack_node stack[STACK_SIZE];
+      stack_node *top = stack + 1;
+
+      while (STACK_NOT_EMPTY)
+	{
+	  char *left_ptr;
+	  char *right_ptr;
+
+	  char *pivot = pivot_buffer;
+
+	  /* Select median value from among LO, MID, and HI. Rearrange
+	   * LO and HI so the three values are sorted. This lowers the
+	   * probability of picking a pathological pivot value and
+	   * skips a comparison for both the LEFT_PTR and RIGHT_PTR. */
+
+	  char *mid = lo + size * ((hi - lo) / size >> 1);
+
+	  if ((*compare_func) ((void *) mid, (void *) lo, user_data) < 0)
+	    SWAP (mid, lo, size);
+	  if ((*compare_func) ((void *) hi, (void *) mid, user_data) < 0)
+	    SWAP (mid, hi, size);
+	  else
+	    goto jump_over;
+	  if ((*compare_func) ((void *) mid, (void *) lo, user_data) < 0)
+	    SWAP (mid, lo, size);
+	jump_over:;
+	  memcpy (pivot, mid, size);
+	  pivot = pivot_buffer;
+
+	  left_ptr = lo + size;
+	  right_ptr = hi - size;
+
+	  /* Here's the famous ``collapse the walls'' section of quicksort.
+	   * Gotta like those tight inner loops!  They are the main reason
+	   * that this algorithm runs much faster than others. */
+	  do
+	    {
+	      while ((*compare_func)
+		     ((void *) left_ptr, (void *) pivot,
+		      user_data) < 0)
+		left_ptr += size;
+
+	      while ((*compare_func)
+		     ((void *) pivot, (void *) right_ptr,
+		      user_data) < 0)
+		right_ptr -= size;
+
+	      if (left_ptr < right_ptr)
+		{
+		  SWAP (left_ptr, right_ptr, size);
+		  left_ptr += size;
+		  right_ptr -= size;
+		}
+	      else if (left_ptr == right_ptr)
+		{
+		  left_ptr += size;
+		  right_ptr -= size;
+		  break;
+		}
+	    }
+	  while (left_ptr <= right_ptr);
+
+	  /* Set up pointers for next iteration.  First determine whether
+	   * left and right partitions are below the threshold size.  If so,
+	   * ignore one or both.  Otherwise, push the larger partition's
+	   * bounds on the stack and continue sorting the smaller one. */
+
+	  if ((size_t) (right_ptr - lo) <= max_thresh)
+	    {
+	      if ((size_t) (hi - left_ptr) <= max_thresh)
+		/* Ignore both small partitions. */
+		POP (lo, hi);
+	      else
+		/* Ignore small left partition. */
+		lo = left_ptr;
+	    }
+	  else if ((size_t) (hi - left_ptr) <= max_thresh)
+				/* Ignore small right partition. */
+	    hi = right_ptr;
+	  else if ((right_ptr - lo) > (hi - left_ptr))
+	    {
+				/* Push larger left partition indices. */
+	      PUSH (lo, right_ptr);
+	      lo = left_ptr;
+
+	    }
+	  else
+	    {
+				/* Push larger right partition indices. */
+	      PUSH (left_ptr, hi);
+	      hi = right_ptr;
+	    }
+	}
+    }
+
+  /* Once the BASE_PTR array is partially sorted by quicksort the rest
+   * is completely sorted using insertion sort, since this is efficient
+   * for partitions below MAX_THRESH size. BASE_PTR points to the beginning
+   * of the array to sort, and END_PTR points at the very last element in
+   * the array (*not* one beyond it!). */
+
+  {
+    char *const end_ptr = &base_ptr[size * (total_elems - 1)];
+    char *tmp_ptr = base_ptr;
+    char *thresh = MIN (end_ptr, base_ptr + max_thresh);
+    register char *run_ptr;
+
+    /* Find smallest element in first threshold and place it at the
+     * array's beginning.  This is the smallest array element,
+     * and the operation speeds up insertion sort's inner loop. */
+
+    for (run_ptr = tmp_ptr + size; run_ptr <= thresh;
+	 run_ptr +=
+	   size) if ((*compare_func) ((void *) run_ptr, (void *) tmp_ptr,
+				      user_data) < 0)
+	     tmp_ptr = run_ptr;
+
+    if (tmp_ptr != base_ptr)
+      SWAP (tmp_ptr, base_ptr, size);
+
+    /* Insertion sort, running from left-hand-side up to right-hand-side.  */
+
+    run_ptr = base_ptr + size;
+    while ((run_ptr += size) <= end_ptr)
+      {
+	tmp_ptr = run_ptr - size;
+	while ((*compare_func)
+	       ((void *) run_ptr, (void *) tmp_ptr,
+		user_data) < 0)
+	  tmp_ptr -= size;
+
+	tmp_ptr += size;
+	if (tmp_ptr != run_ptr)
+	  {
+	    char *trav;
+
+	    trav = run_ptr + size;
+	    while (--trav >= run_ptr)
+	      {
+		char c = *trav;
+		char *hi, *lo;
+
+		for (hi = lo = trav;
+		     (lo -= size) >= tmp_ptr; hi = lo)
+		  *hi = *lo;
+		*hi = c;
+	      }
+	  }
+      }
+  }
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gqsort.h b/graf2d/win32gdk/gdk/src/glib/gqsort.h
index 45fe333005f..12e7a05b13e 100644
--- a/graf2d/win32gdk/gdk/src/glib/gqsort.h
+++ b/graf2d/win32gdk/gdk/src/glib/gqsort.h
@@ -28,14 +28,14 @@
 #ifndef __G_QSORT_H__
 #define __G_QSORT_H__
 
-#include <g_types.h>
+#include <glib/gtypes.h>
 
 G_BEGIN_DECLS
 
 void g_qsort_with_data (gconstpointer    pbase,
 			gint             total_elems,
 			size_t           size,
-			GCompareFuncData compare_func,
+			GCompareDataFunc compare_func,
 			gpointer         user_data);
 
 G_END_DECLS
diff --git a/graf2d/win32gdk/gdk/src/glib/gquark.h b/graf2d/win32gdk/gdk/src/glib/gquark.h
index 69d5fb0889c..6b96dcf64d1 100644
--- a/graf2d/win32gdk/gdk/src/glib/gquark.h
+++ b/graf2d/win32gdk/gdk/src/glib/gquark.h
@@ -27,7 +27,7 @@
 #ifndef __G_QUARK_H__
 #define __G_QUARK_H__
 
-#include <g_types.h>
+#include <glib/gtypes.h>
 
 G_BEGIN_DECLS
 
@@ -35,10 +35,10 @@ typedef guint32 GQuark;
 
 /* Quarks (string<->id association)
  */
-GQuark    g_quark_try_string            (const gchar    *string);
-GQuark    g_quark_from_static_string    (const gchar    *string);
-GQuark    g_quark_from_string           (const gchar    *string);
-gchar*    g_quark_to_string             (GQuark          quark) G_GNUC_CONST;
+GQuark                g_quark_try_string         (const gchar *string);
+GQuark                g_quark_from_static_string (const gchar *string);
+GQuark                g_quark_from_string        (const gchar *string);
+G_CONST_RETURN gchar* g_quark_to_string          (GQuark       quark) G_GNUC_CONST;
 
 G_END_DECLS
 
diff --git a/graf2d/win32gdk/gdk/src/glib/gqueue.c b/graf2d/win32gdk/gdk/src/glib/gqueue.c
new file mode 100644
index 00000000000..b15adb4f9f8
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gqueue.c
@@ -0,0 +1,263 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * GQueue: Double ended queue implementation, piggy backed on GList.
+ * Copyright (C) 1998 Tim Janik
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * MT safe
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include "glib.h"
+
+
+G_LOCK_DEFINE_STATIC (queue_memchunk);
+static GMemChunk   *queue_memchunk = NULL;
+static GTrashStack *free_queue_nodes = NULL;
+
+GQueue*
+g_queue_new (void)
+{
+  GQueue *queue;
+
+  G_LOCK (queue_memchunk);
+  queue = g_trash_stack_pop (&free_queue_nodes);
+
+  if (!queue)
+    {
+      if (!queue_memchunk)
+	queue_memchunk = g_mem_chunk_new ("GLib GQueue chunk",
+					  sizeof (GNode),
+					  sizeof (GNode) * 128,
+					  G_ALLOC_ONLY);
+      queue = g_chunk_new (GQueue, queue_memchunk);
+    }
+  G_UNLOCK (queue_memchunk);
+
+  queue->head = NULL;
+  queue->tail = NULL;
+  queue->length = 0;
+
+  return queue;
+}
+
+void
+g_queue_free (GQueue *queue)
+{
+  g_return_if_fail (queue != NULL);
+
+  g_list_free (queue->head);
+
+#ifdef ENABLE_GC_FRIENDLY
+  queue->head = NULL;
+  queue->tail = NULL;
+#endif /* ENABLE_GC_FRIENDLY */
+
+  G_LOCK (queue_memchunk);
+  g_trash_stack_push (&free_queue_nodes, queue);
+  G_UNLOCK (queue_memchunk);
+}
+
+void
+g_queue_push_head (GQueue  *queue,
+		   gpointer data)
+{
+  g_return_if_fail (queue != NULL);
+
+  queue->head = g_list_prepend (queue->head, data);
+  if (!queue->tail)
+    queue->tail = queue->head;
+  queue->length++;
+}
+
+void
+g_queue_push_head_link (GQueue *queue,
+			GList  *link)
+{
+  g_return_if_fail (queue != NULL);
+  g_return_if_fail (link != NULL);
+  g_return_if_fail (link->prev == NULL);
+  g_return_if_fail (link->next == NULL);
+
+  link->next = queue->head;
+  if (queue->head)
+    queue->head->prev = link;
+  else
+    queue->tail = link;
+  queue->head = link;
+  queue->length++;
+}
+
+void
+g_queue_push_tail (GQueue  *queue,
+		   gpointer data)
+{
+  g_return_if_fail (queue != NULL);
+
+  queue->tail = g_list_append (queue->tail, data);
+  if (queue->tail->next)
+    queue->tail = queue->tail->next;
+  else
+    queue->head = queue->tail;
+  queue->length++;
+}
+
+void
+g_queue_push_tail_link (GQueue *queue,
+			GList  *link)
+{
+  g_return_if_fail (queue != NULL);
+  g_return_if_fail (link != NULL);
+  g_return_if_fail (link->prev == NULL);
+  g_return_if_fail (link->next == NULL);
+
+  link->prev = queue->tail;
+  if (queue->tail)
+    queue->tail->next = link;
+  else
+    queue->head = link;
+  queue->tail = link;
+  queue->length++;
+}
+
+gpointer
+g_queue_pop_head (GQueue *queue)
+{
+  g_return_val_if_fail (queue != NULL, NULL);
+
+  if (queue->head)
+    {
+      GList *node = queue->head;
+      gpointer data = node->data;
+
+      queue->head = node->next;
+      if (queue->head)
+	queue->head->prev = NULL;
+      else
+	queue->tail = NULL;
+      g_list_free_1 (node);
+      queue->length--;
+
+      return data;
+    }
+
+  return NULL;
+}
+
+GList*
+g_queue_pop_head_link (GQueue *queue)
+{
+  g_return_val_if_fail (queue != NULL, NULL);
+
+  if (queue->head)
+    {
+      GList *node = queue->head;
+
+      queue->head = node->next;
+      if (queue->head)
+	{
+	  queue->head->prev = NULL;
+	  node->next = NULL;
+	}
+      else
+	queue->tail = NULL;
+      queue->length--;
+
+      return node;
+    }
+
+  return NULL;
+}
+
+gpointer
+g_queue_pop_tail (GQueue *queue)
+{
+  g_return_val_if_fail (queue != NULL, NULL);
+
+  if (queue->tail)
+    {
+      GList *node = queue->tail;
+      gpointer data = node->data;
+
+      queue->tail = node->prev;
+      if (queue->tail)
+	queue->tail->next = NULL;
+      else
+	queue->head = NULL;
+      queue->length--;
+      g_list_free_1 (node);
+
+      return data;
+    }
+  
+  return NULL;
+}
+
+GList*
+g_queue_pop_tail_link (GQueue *queue)
+{
+  g_return_val_if_fail (queue != NULL, NULL);
+  
+  if (queue->tail)
+    {
+      GList *node = queue->tail;
+      
+      queue->tail = node->prev;
+      if (queue->tail)
+	{
+	  queue->tail->next = NULL;
+	  node->prev = NULL;
+	}
+      else
+	queue->head = NULL;
+      queue->length--;
+      
+      return node;
+    }
+  
+  return NULL;
+}
+
+gboolean
+g_queue_is_empty (GQueue *queue)
+{
+  g_return_val_if_fail (queue != NULL, TRUE);
+
+  return queue->head == NULL;
+}
+
+gpointer
+g_queue_peek_head (GQueue *queue)
+{
+  g_return_val_if_fail (queue != NULL, NULL);
+
+  return queue->head ? queue->head->data : NULL;
+}
+
+gpointer
+g_queue_peek_tail (GQueue *queue)
+{
+  g_return_val_if_fail (queue != NULL, NULL);
+
+  return queue->tail ? queue->tail->data : NULL;
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gqueue.h b/graf2d/win32gdk/gdk/src/glib/gqueue.h
index b71b6d61ef2..64fd6928222 100644
--- a/graf2d/win32gdk/gdk/src/glib/gqueue.h
+++ b/graf2d/win32gdk/gdk/src/glib/gqueue.h
@@ -27,7 +27,7 @@
 #ifndef __G_QUEUE_H__
 #define __G_QUEUE_H__
 
-#include <glist.h>
+#include <glib/glist.h>
 
 G_BEGIN_DECLS
 
diff --git a/graf2d/win32gdk/gdk/src/glib/grand.c b/graf2d/win32gdk/gdk/src/glib/grand.c
new file mode 100644
index 00000000000..2a60e5bd51d
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/grand.c
@@ -0,0 +1,403 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/* Originally developed and coded by Makoto Matsumoto and Takuji
+ * Nishimura.  Please mail <matumoto@math.keio.ac.jp>, if you're using
+ * code from this file in your own programs or libraries.
+ * Further information on the Mersenne Twister can be found at
+ * http://www.math.keio.ac.jp/~matumoto/emt.html
+ * This code was adapted to glib by Sebastian Wilhelmi <wilhelmi@ira.uka.de>.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/.  
+ */
+
+/* 
+ * MT safe
+ */
+
+#include <glib.h>
+#include <math.h>
+#include <stdio.h>
+
+G_LOCK_DEFINE_STATIC (global_random);
+static GRand* global_random = NULL;
+
+/* Period parameters */  
+#define N 624
+#define M 397
+#define MATRIX_A 0x9908b0df   /* constant vector a */
+#define UPPER_MASK 0x80000000 /* most significant w-r bits */
+#define LOWER_MASK 0x7fffffff /* least significant r bits */
+
+/* Tempering parameters */   
+#define TEMPERING_MASK_B 0x9d2c5680
+#define TEMPERING_MASK_C 0xefc60000
+#define TEMPERING_SHIFT_U(y)  (y >> 11)
+#define TEMPERING_SHIFT_S(y)  (y << 7)
+#define TEMPERING_SHIFT_T(y)  (y << 15)
+#define TEMPERING_SHIFT_L(y)  (y >> 18)
+
+struct _GRand
+{
+  guint32 mt[N]; /* the array for the state vector  */
+  guint mti; 
+};
+
+/**
+ * g_rand_new_with_seed:
+ * @seed: a value to initialize the random number generator.
+ * 
+ * Creates a new random number generator initialized with @seed.
+ * 
+ * Return value: the new #GRand.
+ **/
+GRand*
+g_rand_new_with_seed (guint32 seed)
+{
+  GRand *rand = g_new0 (GRand, 1);
+  g_rand_set_seed (rand, seed);
+  return rand;
+}
+
+/**
+ * g_rand_new:
+ * 
+ * Creates a new random number generator initialized with a seed taken
+ * either from /dev/urandom (if existing) or from the current time (as
+ * a fallback).
+ * 
+ * Return value: the new #GRand.
+ **/
+GRand* 
+g_rand_new (void)
+{
+  guint32 seed;
+  GTimeVal now;
+  static gboolean dev_urandom_exists = TRUE;
+  
+  if (dev_urandom_exists)
+    {
+      FILE* dev_urandom = fopen("/dev/urandom", "rb");
+      if (dev_urandom)
+	{
+	  if (fread (&seed, sizeof (seed), 1, dev_urandom) != 1)
+	    dev_urandom_exists = FALSE;
+	  fclose (dev_urandom);
+	}	
+      else
+	dev_urandom_exists = FALSE;
+    }
+  if (!dev_urandom_exists)
+    {  
+      g_get_current_time (&now);
+      seed = now.tv_sec ^ now.tv_usec;
+    }
+
+  return g_rand_new_with_seed (seed);
+}
+
+/**
+ * g_rand_free:
+ * @rand: a #GRand.
+ *
+ * Frees the memory allocated for the #GRand.
+ **/
+void
+g_rand_free (GRand* rand)
+{
+  g_return_if_fail (rand != NULL);
+
+  g_free (rand);
+}
+
+/**
+ * g_rand_set_seed:
+ * @rand: a #GRand.
+ * @seed: a value to reinitialize the random number generator.
+ *
+ * Sets the seed for the random number generator #GRand to @seed.
+ **/
+void
+g_rand_set_seed (GRand* rand, guint32 seed)
+{
+  g_return_if_fail (rand != NULL);
+
+  /* setting initial seeds to mt[N] using         */
+  /* the generator Line 25 of Table 1 in          */
+  /* [KNUTH 1981, The Art of Computer Programming */
+  /*    Vol. 2 (2nd Ed.), pp102]                  */
+  
+  if (seed == 0) /* This would make the PRNG procude only zeros */
+    seed = 0x6b842128; /* Just set it to another number */
+
+  rand->mt[0]= seed & 0xffffffff;
+  for (rand->mti=1; rand->mti<N; rand->mti++)
+    rand->mt[rand->mti] = (69069 * rand->mt[rand->mti-1]) & 0xffffffff;
+}
+
+/**
+ * g_rand_int:
+ * @rand: a #GRand.
+ *
+ * Return the next random #guint32 from @rand equaly distributed over
+ * the range [0..2^32-1].
+ *
+ * Return value: A random number.
+ **/
+guint32
+g_rand_int (GRand* rand)
+{
+  guint32 y;
+  static const guint32 mag01[2]={0x0, MATRIX_A};
+  /* mag01[x] = x * MATRIX_A  for x=0,1 */
+
+  g_return_val_if_fail (rand != NULL, 0);
+
+  if (rand->mti >= N) { /* generate N words at one time */
+    int kk;
+    
+    for (kk=0;kk<N-M;kk++) {
+      y = (rand->mt[kk]&UPPER_MASK)|(rand->mt[kk+1]&LOWER_MASK);
+      rand->mt[kk] = rand->mt[kk+M] ^ (y >> 1) ^ mag01[y & 0x1];
+    }
+    for (;kk<N-1;kk++) {
+      y = (rand->mt[kk]&UPPER_MASK)|(rand->mt[kk+1]&LOWER_MASK);
+      rand->mt[kk] = rand->mt[kk+(M-N)] ^ (y >> 1) ^ mag01[y & 0x1];
+    }
+    y = (rand->mt[N-1]&UPPER_MASK)|(rand->mt[0]&LOWER_MASK);
+    rand->mt[N-1] = rand->mt[M-1] ^ (y >> 1) ^ mag01[y & 0x1];
+    
+    rand->mti = 0;
+  }
+  
+  y = rand->mt[rand->mti++];
+  y ^= TEMPERING_SHIFT_U(y);
+  y ^= TEMPERING_SHIFT_S(y) & TEMPERING_MASK_B;
+  y ^= TEMPERING_SHIFT_T(y) & TEMPERING_MASK_C;
+  y ^= TEMPERING_SHIFT_L(y);
+  
+  return y; 
+}
+
+/* transform [0..2^32] -> [0..1] */
+#define G_RAND_DOUBLE_TRANSFORM 2.3283064365386962890625e-10
+
+/**
+ * g_rand_int_range:
+ * @rand: a #GRand.
+ * @begin: lower closed bound of the interval.
+ * @end: upper open bound of the interval.
+ *
+ * Return the next random #gint32 from @rand equaly distributed over
+ * the range [@begin..@end-1].
+ *
+ * Return value: A random number.
+ **/
+gint32 
+g_rand_int_range (GRand* rand, gint32 begin, gint32 end)
+{
+  guint32 dist = end - begin;
+  guint32 random;
+
+  g_return_val_if_fail (rand != NULL, begin);
+  g_return_val_if_fail (end > begin, begin);
+
+  /* All tricks doing modulo calculations do not have a perfect
+   * distribution -> We must use the slower way through gdouble for
+   * maximal quality. */
+   
+  if (dist <= 0x10000L) /* 2^16 */
+    {
+      /* This method, which only calls g_rand_int once is only good
+       * for (end - begin) <= 2^16, because we only have 32 bits set
+       * from the one call to g_rand_int (). */
+
+      /* we are using (trans + trans * trans), because g_rand_int only
+       * covers [0..2^32-1] and thus g_rand_int * trans only covers
+       * [0..1-2^-32], but the biggest double < 1 is 1-2^-52. 
+       */
+
+      gdouble double_rand = g_rand_int (rand) * 
+	(G_RAND_DOUBLE_TRANSFORM +
+	 G_RAND_DOUBLE_TRANSFORM * G_RAND_DOUBLE_TRANSFORM);
+      
+      random = (gint32) (double_rand * dist);
+    }
+  else
+    {
+      /* Now we use g_rand_double_range (), which will set 52 bits for
+         us, so that it is safe to round and still get a decent
+         distribution */
+       random = (gint32) g_rand_double_range (rand, 0, dist);
+    }
+ 
+  return begin + random;
+}
+
+/**
+ * g_rand_double:
+ * @rand: a #GRand.
+ *
+ * Return the next random #gdouble from @rand equaly distributed over
+ * the range [0..1).
+ *
+ * Return value: A random number.
+ **/
+gdouble 
+g_rand_double (GRand* rand)
+{    
+  /* We set all 52 bits after the point for this, not only the first
+     32. Thats why we need two calls to g_rand_int */
+  gdouble retval = g_rand_int (rand) * G_RAND_DOUBLE_TRANSFORM;
+  retval = (retval + g_rand_int (rand)) * G_RAND_DOUBLE_TRANSFORM;
+
+  /* The following might happen due to very bad rounding luck, but
+   * actually this should be more than rare, we just try again then */
+  if (retval >= 1.0) 
+    return g_rand_double (rand);
+
+  return retval;
+}
+
+/**
+ * g_rand_double_range:
+ * @rand: a #GRand.
+ * @begin: lower closed bound of the interval.
+ * @end: upper open bound of the interval.
+ *
+ * Return the next random #gdouble from @rand equaly distributed over
+ * the range [@begin..@end).
+ *
+ * Return value: A random number.
+ **/
+gdouble 
+g_rand_double_range (GRand* rand, gdouble begin, gdouble end)
+{
+  return g_rand_double (rand) * (end - begin) + begin;
+}
+
+/**
+ * g_random_int:
+ *
+ * Return a random #guint32 equaly distributed over the range
+ * [0..2^32-1].
+ *
+ * Return value: A random number.
+ **/
+guint32
+g_random_int (void)
+{
+  guint32 result;
+  G_LOCK (global_random);
+  if (!global_random)
+    global_random = g_rand_new ();
+  
+  result = g_rand_int (global_random);
+  G_UNLOCK (global_random);
+  return result;
+}
+
+/**
+ * g_random_int_range:
+ * @begin: lower closed bound of the interval.
+ * @end: upper open bound of the interval.
+ *
+ * Return a random #gint32 equaly distributed over the range
+ * [@begin..@end-1].
+ *
+ * Return value: A random number.
+ **/
+gint32 
+g_random_int_range (gint32 begin, gint32 end)
+{
+  gint32 result;
+  G_LOCK (global_random);
+  if (!global_random)
+    global_random = g_rand_new ();
+  
+  result = g_rand_int_range (global_random, begin, end);
+  G_UNLOCK (global_random);
+  return result;
+}
+
+/**
+ * g_random_double:
+ *
+ * Return a random #gdouble equaly distributed over the range [0..1).
+ *
+ * Return value: A random number.
+ **/
+gdouble 
+g_random_double (void)
+{
+  double result;
+  G_LOCK (global_random);
+  if (!global_random)
+    global_random = g_rand_new ();
+  
+  result = g_rand_double (global_random);
+  G_UNLOCK (global_random);
+  return result;
+}
+
+/**
+ * g_random_double_range:
+ * @begin: lower closed bound of the interval.
+ * @end: upper open bound of the interval.
+ *
+ * Return a random #gdouble equaly distributed over the range [@begin..@end).
+ *
+ * Return value: A random number.
+ **/
+gdouble 
+g_random_double_range (gdouble begin, gdouble end)
+{
+  double result;
+  G_LOCK (global_random);
+  if (!global_random)
+    global_random = g_rand_new ();
+ 
+  result = g_rand_double_range (global_random, begin, end);
+  G_UNLOCK (global_random);
+  return result;
+}
+
+/**
+ * g_random_set_seed:
+ * @seed: a value to reinitialize the global random number generator.
+ * 
+ * Sets the seed for the global random number generator, which is used
+ * by te g_random_* functions, to @seed.
+ **/
+void
+g_random_set_seed (guint32 seed)
+{
+  G_LOCK (global_random);
+  if (!global_random)
+    global_random = g_rand_new_with_seed (seed);
+  else
+    g_rand_set_seed (global_random, seed);
+  G_UNLOCK (global_random);
+}
+
diff --git a/graf2d/win32gdk/gdk/src/glib/grand.h b/graf2d/win32gdk/gdk/src/glib/grand.h
index 020ca1b7ce6..d743953f94c 100644
--- a/graf2d/win32gdk/gdk/src/glib/grand.h
+++ b/graf2d/win32gdk/gdk/src/glib/grand.h
@@ -27,7 +27,7 @@
 #ifndef __G_RAND_H__
 #define __G_RAND_H__
 
-#include <g_types.h>
+#include <glib/gtypes.h>
 
 G_BEGIN_DECLS
 
@@ -49,7 +49,7 @@ void    g_rand_free            (GRand      *rand);
 void    g_rand_set_seed        (GRand      *rand,
                                 guint32     seed);
 
-#define g_rand_boolean(rand) (g_rand_int ((rand)) & (1<<15))
+#define g_rand_boolean(rand) ((g_rand_int (rand) & (1 << 15)) != 0)
 
 guint32 g_rand_int             (GRand      *rand);
 gint32  g_rand_int_range       (GRand      *rand,
@@ -62,7 +62,7 @@ gdouble g_rand_double_range    (GRand      *rand,
 
 void    g_random_set_seed      (guint32     seed);
 
-#define g_random_boolean() (g_rand_boolean ((rand)))
+#define g_random_boolean() ((g_random_int () & (1 << 15)) != 0)
 
 guint32 g_random_int           (void);
 gint32  g_random_int_range     (gint32      begin,
diff --git a/graf2d/win32gdk/gdk/src/glib/grel.c b/graf2d/win32gdk/gdk/src/glib/grel.c
new file mode 100644
index 00000000000..69cad2c9973
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/grel.c
@@ -0,0 +1,449 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free
+ * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#include "glib.h"
+#include <stdarg.h>
+#include <string.h>
+
+typedef struct _GRealTuples        GRealTuples;
+
+struct _GRelation
+{
+  gint fields;
+  gint current_field;
+  
+  GHashTable   *all_tuples;
+  GHashTable  **hashed_tuple_tables;
+  GMemChunk    *tuple_chunk;
+  
+  gint count;
+};
+
+struct _GRealTuples
+{
+  gint      len;
+  gint      width;
+  gpointer *data;
+};
+
+static gboolean
+tuple_equal_2 (gconstpointer v_a,
+	       gconstpointer v_b)
+{
+  gpointer* a = (gpointer*) v_a;
+  gpointer* b = (gpointer*) v_b;
+  
+  return a[0] == b[0] && a[1] == b[1];
+}
+
+static guint
+tuple_hash_2 (gconstpointer v_a)
+{
+  gpointer* a = (gpointer*) v_a;
+  
+  return (gulong)a[0] ^ (gulong)a[1];
+}
+
+static GHashFunc
+tuple_hash (gint fields)
+{
+  switch (fields)
+    {
+    case 2:
+      return tuple_hash_2;
+    default:
+      g_error ("no tuple hash for %d", fields);
+    }
+  
+  return NULL;
+}
+
+static GEqualFunc
+tuple_equal (gint fields)
+{
+  switch (fields)
+    {
+    case 2:
+      return tuple_equal_2;
+    default:
+      g_error ("no tuple equal for %d", fields);
+    }
+  
+  return NULL;
+}
+
+GRelation*
+g_relation_new (gint fields)
+{
+  GRelation* rel = g_new0 (GRelation, 1);
+  
+  rel->fields = fields;
+  rel->tuple_chunk = g_mem_chunk_new ("Relation Chunk",
+				      fields * sizeof (gpointer),
+				      fields * sizeof (gpointer) * 128,
+				      G_ALLOC_AND_FREE);
+  rel->all_tuples = g_hash_table_new (tuple_hash (fields), tuple_equal (fields));
+  rel->hashed_tuple_tables = g_new0 (GHashTable*, fields);
+  
+  return rel;
+}
+
+static void
+g_relation_free_array (gpointer key, gpointer value, gpointer user_data)
+{
+  g_hash_table_destroy ((GHashTable*) value);
+}
+
+void
+g_relation_destroy (GRelation *relation)
+{
+  gint i;
+  
+  if (relation)
+    {
+      g_hash_table_destroy (relation->all_tuples);
+      g_mem_chunk_destroy (relation->tuple_chunk);
+      
+      for (i = 0; i < relation->fields; i += 1)
+	{
+	  if (relation->hashed_tuple_tables[i])
+	    {
+	      g_hash_table_foreach (relation->hashed_tuple_tables[i], g_relation_free_array, NULL);
+	      g_hash_table_destroy (relation->hashed_tuple_tables[i]);
+	    }
+	}
+      
+      g_free (relation->hashed_tuple_tables);
+      g_free (relation);
+    }
+}
+
+void
+g_relation_index (GRelation   *relation,
+		  gint         field,
+		  GHashFunc    hash_func,
+		  GEqualFunc   key_equal_func)
+{
+  g_return_if_fail (relation != NULL);
+  
+  g_return_if_fail (relation->count == 0 && relation->hashed_tuple_tables[field] == NULL);
+  
+  relation->hashed_tuple_tables[field] = g_hash_table_new (hash_func, key_equal_func);
+}
+
+void
+g_relation_insert (GRelation   *relation,
+		   ...)
+{
+  gpointer* tuple = g_chunk_new (gpointer, relation->tuple_chunk);
+  va_list args;
+  gint i;
+  
+  va_start(args, relation);
+  
+  for (i = 0; i < relation->fields; i += 1)
+    tuple[i] = va_arg(args, gpointer);
+  
+  va_end(args);
+  
+  g_hash_table_insert (relation->all_tuples, tuple, tuple);
+  
+  relation->count += 1;
+  
+  for (i = 0; i < relation->fields; i += 1)
+    {
+      GHashTable *table;
+      gpointer    key;
+      GHashTable *per_key_table;
+      
+      table = relation->hashed_tuple_tables[i];
+      
+      if (table == NULL)
+	continue;
+      
+      key = tuple[i];
+      per_key_table = g_hash_table_lookup (table, key);
+      
+      if (per_key_table == NULL)
+	{
+	  per_key_table = g_hash_table_new (tuple_hash (relation->fields), tuple_equal (relation->fields));
+	  g_hash_table_insert (table, key, per_key_table);
+	}
+      
+      g_hash_table_insert (per_key_table, tuple, tuple);
+    }
+}
+
+static void
+g_relation_delete_tuple (gpointer tuple_key,
+			 gpointer tuple_value,
+			 gpointer user_data)
+{
+  gpointer      *tuple = (gpointer*) tuple_value;
+  GRelation     *rel = (GRelation *) user_data;
+  gint           j;
+  
+  g_assert (tuple_key == tuple_value);
+  
+  for (j = 0; j < rel->fields; j += 1)
+    {
+      GHashTable *one_table = rel->hashed_tuple_tables[j];
+      gpointer    one_key;
+      GHashTable *per_key_table;
+      
+      if (one_table == NULL)
+	continue;
+      
+      if (j == rel->current_field)
+	/* can't delete from the table we're foreaching in */
+	continue;
+      
+      one_key = tuple[j];
+      
+      per_key_table = g_hash_table_lookup (one_table, one_key);
+      
+      g_hash_table_remove (per_key_table, tuple);
+    }
+  
+  g_hash_table_remove (rel->all_tuples, tuple);
+  
+  rel->count -= 1;
+}
+
+gint
+g_relation_delete  (GRelation     *relation,
+		    gconstpointer  key,
+		    gint           field)
+{
+  GHashTable *table = relation->hashed_tuple_tables[field];
+  GHashTable *key_table;
+  gint        count = relation->count;
+  
+  g_return_val_if_fail (relation != NULL, 0);
+  g_return_val_if_fail (table != NULL, 0);
+  
+  key_table = g_hash_table_lookup (table, key);
+  
+  if (!key_table)
+    return 0;
+  
+  relation->current_field = field;
+  
+  g_hash_table_foreach (key_table, g_relation_delete_tuple, relation);
+  
+  g_hash_table_remove (table, key);
+  
+  g_hash_table_destroy (key_table);
+  
+  /* @@@ FIXME: Remove empty hash tables. */
+  
+  return count - relation->count;
+}
+
+static void
+g_relation_select_tuple (gpointer tuple_key,
+			 gpointer tuple_value,
+			 gpointer user_data)
+{
+  gpointer    *tuple = (gpointer*) tuple_value;
+  GRealTuples *tuples = (GRealTuples*) user_data;
+  gint stride = sizeof (gpointer) * tuples->width;
+  
+  g_assert (tuple_key == tuple_value);
+  
+  memcpy (tuples->data + (tuples->len * tuples->width),
+	  tuple,
+	  stride);
+  
+  tuples->len += 1;
+}
+
+GTuples*
+g_relation_select (GRelation     *relation,
+		   gconstpointer  key,
+		   gint           field)
+{
+  GHashTable  *table = relation->hashed_tuple_tables[field];
+  GHashTable  *key_table;
+  GRealTuples *tuples = g_new0 (GRealTuples, 1);
+  gint count;
+  
+  g_return_val_if_fail (relation != NULL, NULL);
+  g_return_val_if_fail (table != NULL, NULL);
+  
+  key_table = g_hash_table_lookup (table, key);
+  
+  if (!key_table)
+    return (GTuples*)tuples;
+  
+  count = g_relation_count (relation, key, field);
+  
+  tuples->data = g_malloc (sizeof (gpointer) * relation->fields * count);
+  tuples->width = relation->fields;
+  
+  g_hash_table_foreach (key_table, g_relation_select_tuple, tuples);
+  
+  g_assert (count == tuples->len);
+  
+  return (GTuples*)tuples;
+}
+
+gint
+g_relation_count (GRelation     *relation,
+		  gconstpointer  key,
+		  gint           field)
+{
+  GHashTable  *table = relation->hashed_tuple_tables[field];
+  GHashTable  *key_table;
+  
+  g_return_val_if_fail (relation != NULL, 0);
+  g_return_val_if_fail (table != NULL, 0);
+  
+  key_table = g_hash_table_lookup (table, key);
+  
+  if (!key_table)
+    return 0;
+  
+  return g_hash_table_size (key_table);
+}
+
+gboolean
+g_relation_exists (GRelation   *relation, ...)
+{
+  gpointer* tuple = g_chunk_new (gpointer, relation->tuple_chunk);
+  va_list args;
+  gint i;
+  gboolean result;
+  
+  va_start(args, relation);
+  
+  for (i = 0; i < relation->fields; i += 1)
+    tuple[i] = va_arg(args, gpointer);
+  
+  va_end(args);
+  
+  result = g_hash_table_lookup (relation->all_tuples, tuple) != NULL;
+  
+  g_mem_chunk_free (relation->tuple_chunk, tuple);
+  
+  return result;
+}
+
+void
+g_tuples_destroy (GTuples *tuples0)
+{
+  GRealTuples *tuples = (GRealTuples*) tuples0;
+  
+  if (tuples)
+    {
+      g_free (tuples->data);
+      g_free (tuples);
+    }
+}
+
+gpointer
+g_tuples_index (GTuples     *tuples0,
+		gint         index,
+		gint         field)
+{
+  GRealTuples *tuples = (GRealTuples*) tuples0;
+  
+  g_return_val_if_fail (tuples0 != NULL, NULL);
+  g_return_val_if_fail (field < tuples->width, NULL);
+  
+  return tuples->data[index * tuples->width + field];
+}
+
+/* Print
+ */
+
+static void
+g_relation_print_one (gpointer tuple_key,
+		      gpointer tuple_value,
+		      gpointer user_data)
+{
+  gint i;
+  GString *gstring;
+  GRelation* rel = (GRelation*) user_data;
+  gpointer* tuples = (gpointer*) tuple_value;
+
+  gstring = g_string_new ("[");
+  
+  for (i = 0; i < rel->fields; i += 1)
+    {
+      g_string_printfa (gstring, "%p", tuples[i]);
+      
+      if (i < (rel->fields - 1))
+	g_string_append (gstring, ",");
+    }
+  
+  g_string_append (gstring, "]");
+  g_log (g_log_domain_glib, G_LOG_LEVEL_INFO, gstring->str);
+  g_string_free (gstring, TRUE);
+}
+
+static void
+g_relation_print_index (gpointer tuple_key,
+			gpointer tuple_value,
+			gpointer user_data)
+{
+  GRelation* rel = (GRelation*) user_data;
+  GHashTable* table = (GHashTable*) tuple_value;
+  
+  g_log (g_log_domain_glib, G_LOG_LEVEL_INFO, "*** key %p", tuple_key);
+  
+  g_hash_table_foreach (table,
+			g_relation_print_one,
+			rel);
+}
+
+void
+g_relation_print (GRelation *relation)
+{
+  gint i;
+  
+  g_log (g_log_domain_glib, G_LOG_LEVEL_INFO, "*** all tuples (%d)", relation->count);
+  
+  g_hash_table_foreach (relation->all_tuples,
+			g_relation_print_one,
+			relation);
+  
+  for (i = 0; i < relation->fields; i += 1)
+    {
+      if (relation->hashed_tuple_tables[i] == NULL)
+	continue;
+      
+      g_log (g_log_domain_glib, G_LOG_LEVEL_INFO, "*** index %d", i);
+      
+      g_hash_table_foreach (relation->hashed_tuple_tables[i],
+			    g_relation_print_index,
+			    relation);
+    }
+  
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/grel.h b/graf2d/win32gdk/gdk/src/glib/grel.h
index 5d92b43930c..562bd136017 100644
--- a/graf2d/win32gdk/gdk/src/glib/grel.h
+++ b/graf2d/win32gdk/gdk/src/glib/grel.h
@@ -27,7 +27,7 @@
 #ifndef __G_REL_H__
 #define __G_REL_H__
 
-#include <g_types.h>
+#include <glib/gtypes.h>
 
 G_BEGIN_DECLS
 
diff --git a/graf2d/win32gdk/gdk/src/glib/gscanner.c b/graf2d/win32gdk/gdk/src/glib/gscanner.c
new file mode 100644
index 00000000000..dd95b71a96f
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gscanner.c
@@ -0,0 +1,1707 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * GScanner: Flexible lexical scanner for general purpose.
+ * Copyright (C) 1997, 1998 Tim Janik
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include	<stdlib.h>
+#include	<stdarg.h>
+#include	<string.h>
+#include	<stdio.h>
+#include	"glib.h"
+#ifdef HAVE_UNISTD_H
+#include	<unistd.h>
+#endif
+#include	<errno.h>
+#ifdef G_OS_WIN32
+#include	<io.h>		/* For _read() */
+#endif
+
+/* --- defines --- */
+#define	to_lower(c)				( \
+	(guchar) (							\
+	  ( (((guchar)(c))>='A' && ((guchar)(c))<='Z') * ('a'-'A') ) |	\
+	  ( (((guchar)(c))>=192 && ((guchar)(c))<=214) * (224-192) ) |	\
+	  ( (((guchar)(c))>=216 && ((guchar)(c))<=222) * (248-216) ) |	\
+	  ((guchar)(c))							\
+	)								\
+)
+#define	READ_BUFFER_SIZE	(4000)
+
+
+/* --- typedefs --- */
+typedef	struct	_GScannerKey	GScannerKey;
+
+struct	_GScannerKey
+{
+  guint		 scope_id;
+  gchar		*symbol;
+  gpointer	 value;
+};
+
+
+
+/* --- variables --- */
+static GScannerConfig g_scanner_config_template =
+{
+  (
+   " \t\r\n"
+   )			/* cset_skip_characters */,
+  (
+   G_CSET_a_2_z
+   "_"
+   G_CSET_A_2_Z
+   )			/* cset_identifier_first */,
+  (
+   G_CSET_a_2_z
+   "_"
+   G_CSET_A_2_Z
+   G_CSET_DIGITS
+   G_CSET_LATINS
+   G_CSET_LATINC
+   )			/* cset_identifier_nth */,
+  ( "#\n" )		/* cpair_comment_single */,
+  
+  FALSE			/* case_sensitive */,
+  
+  TRUE			/* skip_comment_multi */,
+  TRUE			/* skip_comment_single */,
+  TRUE			/* scan_comment_multi */,
+  TRUE			/* scan_identifier */,
+  FALSE			/* scan_identifier_1char */,
+  FALSE			/* scan_identifier_NULL */,
+  TRUE			/* scan_symbols */,
+  FALSE			/* scan_binary */,
+  TRUE			/* scan_octal */,
+  TRUE			/* scan_float */,
+  TRUE			/* scan_hex */,
+  FALSE			/* scan_hex_dollar */,
+  TRUE			/* scan_string_sq */,
+  TRUE			/* scan_string_dq */,
+  TRUE			/* numbers_2_int */,
+  FALSE			/* int_2_float */,
+  FALSE			/* identifier_2_string */,
+  TRUE			/* char_2_token */,
+  FALSE			/* symbol_2_token */,
+  FALSE			/* scope_0_fallback */,
+};
+
+
+/* --- prototypes --- */
+static inline
+GScannerKey*	g_scanner_lookup_internal (GScanner	*scanner,
+					   guint	 scope_id,
+					   const gchar	*symbol);
+static gboolean	g_scanner_key_equal	  (gconstpointer v1,
+					   gconstpointer v2);
+static guint	g_scanner_key_hash	  (gconstpointer v);
+static void	g_scanner_get_token_ll	  (GScanner	*scanner,
+					   GTokenType	*token_p,
+					   GTokenValue	*value_p,
+					   guint	*line_p,
+					   guint	*position_p);
+static void	g_scanner_get_token_i	  (GScanner	*scanner,
+					   GTokenType	*token_p,
+					   GTokenValue	*value_p,
+					   guint	*line_p,
+					   guint	*position_p);
+
+static guchar	g_scanner_peek_next_char  (GScanner	*scanner);
+static guchar	g_scanner_get_char	  (GScanner	*scanner,
+					   guint	*line_p,
+					   guint	*position_p);
+static void	g_scanner_msg_handler	  (GScanner	*scanner,
+					   gchar	*message,
+					   gint		 is_error);
+
+
+/* --- functions --- */
+static inline gint
+g_scanner_char_2_num (guchar	c,
+		      guchar	base)
+{
+  if (c >= '0' && c <= '9')
+    c -= '0';
+  else if (c >= 'A' && c <= 'Z')
+    c -= 'A' - 10;
+  else if (c >= 'a' && c <= 'z')
+    c -= 'a' - 10;
+  else
+    return -1;
+  
+  if (c < base)
+    return c;
+  
+  return -1;
+}
+
+GScanner*
+g_scanner_new (const GScannerConfig *config_templ)
+{
+  GScanner *scanner;
+  
+  if (!config_templ)
+    config_templ = &g_scanner_config_template;
+  
+  scanner = g_new0 (GScanner, 1);
+  
+  scanner->user_data = NULL;
+  scanner->max_parse_errors = 0;
+  scanner->parse_errors	= 0;
+  scanner->input_name = NULL;
+  g_datalist_init (&scanner->qdata);
+  
+  scanner->config = g_new0 (GScannerConfig, 1);
+  
+  scanner->config->case_sensitive	 = config_templ->case_sensitive;
+  scanner->config->cset_skip_characters	 = config_templ->cset_skip_characters;
+  if (!scanner->config->cset_skip_characters)
+    scanner->config->cset_skip_characters = "";
+  scanner->config->cset_identifier_first = config_templ->cset_identifier_first;
+  scanner->config->cset_identifier_nth	 = config_templ->cset_identifier_nth;
+  scanner->config->cpair_comment_single	 = config_templ->cpair_comment_single;
+  scanner->config->skip_comment_multi	 = config_templ->skip_comment_multi;
+  scanner->config->skip_comment_single	 = config_templ->skip_comment_single;
+  scanner->config->scan_comment_multi	 = config_templ->scan_comment_multi;
+  scanner->config->scan_identifier	 = config_templ->scan_identifier;
+  scanner->config->scan_identifier_1char = config_templ->scan_identifier_1char;
+  scanner->config->scan_identifier_NULL	 = config_templ->scan_identifier_NULL;
+  scanner->config->scan_symbols		 = config_templ->scan_symbols;
+  scanner->config->scan_binary		 = config_templ->scan_binary;
+  scanner->config->scan_octal		 = config_templ->scan_octal;
+  scanner->config->scan_float		 = config_templ->scan_float;
+  scanner->config->scan_hex		 = config_templ->scan_hex;
+  scanner->config->scan_hex_dollar	 = config_templ->scan_hex_dollar;
+  scanner->config->scan_string_sq	 = config_templ->scan_string_sq;
+  scanner->config->scan_string_dq	 = config_templ->scan_string_dq;
+  scanner->config->numbers_2_int	 = config_templ->numbers_2_int;
+  scanner->config->int_2_float		 = config_templ->int_2_float;
+  scanner->config->identifier_2_string	 = config_templ->identifier_2_string;
+  scanner->config->char_2_token		 = config_templ->char_2_token;
+  scanner->config->symbol_2_token	 = config_templ->symbol_2_token;
+  scanner->config->scope_0_fallback	 = config_templ->scope_0_fallback;
+  
+  scanner->token = G_TOKEN_NONE;
+  scanner->value.v_int = 0;
+  scanner->line = 1;
+  scanner->position = 0;
+  
+  scanner->next_token = G_TOKEN_NONE;
+  scanner->next_value.v_int = 0;
+  scanner->next_line = 1;
+  scanner->next_position = 0;
+  
+  scanner->symbol_table = g_hash_table_new (g_scanner_key_hash, g_scanner_key_equal);
+  scanner->input_fd = -1;
+  scanner->text = NULL;
+  scanner->text_end = NULL;
+  scanner->buffer = NULL;
+  scanner->scope_id = 0;
+  
+  scanner->msg_handler = g_scanner_msg_handler;
+  
+  return scanner;
+}
+
+static inline void
+g_scanner_free_value (GTokenType     *token_p,
+		      GTokenValue     *value_p)
+{
+  switch (*token_p)
+    {
+    case G_TOKEN_STRING:
+    case G_TOKEN_IDENTIFIER:
+    case G_TOKEN_IDENTIFIER_NULL:
+    case G_TOKEN_COMMENT_SINGLE:
+    case G_TOKEN_COMMENT_MULTI:
+      g_free (value_p->v_string);
+      break;
+      
+    default:
+      break;
+    }
+  
+  *token_p = G_TOKEN_NONE;
+}
+
+static void
+g_scanner_destroy_symbol_table_entry (gpointer _key,
+				      gpointer _value,
+				      gpointer _data)
+{
+  GScannerKey *key = _key;
+  
+  g_free (key->symbol);
+  g_free (key);
+}
+
+void
+g_scanner_destroy (GScanner	*scanner)
+{
+  g_return_if_fail (scanner != NULL);
+  
+  g_datalist_clear (&scanner->qdata);
+  g_hash_table_foreach (scanner->symbol_table, 
+			g_scanner_destroy_symbol_table_entry, NULL);
+  g_hash_table_destroy (scanner->symbol_table);
+  g_scanner_free_value (&scanner->token, &scanner->value);
+  g_scanner_free_value (&scanner->next_token, &scanner->next_value);
+  g_free (scanner->config);
+  g_free (scanner->buffer);
+  g_free (scanner);
+}
+
+static void
+g_scanner_msg_handler (GScanner		*scanner,
+		       gchar		*message,
+		       gint		 is_error)
+{
+  g_return_if_fail (scanner != NULL);
+  
+  fprintf (stderr, "%s:%d: ", scanner->input_name, scanner->line);
+  if (is_error)
+    fprintf (stderr, "error: ");
+  fprintf (stderr, "%s\n", message);
+}
+
+void
+g_scanner_error (GScanner	*scanner,
+		 const gchar	*format,
+		 ...)
+{
+  g_return_if_fail (scanner != NULL);
+  g_return_if_fail (format != NULL);
+  
+  scanner->parse_errors++;
+  
+  if (scanner->msg_handler)
+    {
+      va_list args;
+      gchar *string;
+      
+      va_start (args, format);
+      string = g_strdup_vprintf (format, args);
+      va_end (args);
+      
+      scanner->msg_handler (scanner, string, TRUE);
+      
+      g_free (string);
+    }
+}
+
+void
+g_scanner_warn (GScanner       *scanner,
+		const gchar    *format,
+		...)
+{
+  g_return_if_fail (scanner != NULL);
+  g_return_if_fail (format != NULL);
+  
+  if (scanner->msg_handler)
+    {
+      va_list args;
+      gchar *string;
+      
+      va_start (args, format);
+      string = g_strdup_vprintf (format, args);
+      va_end (args);
+      
+      scanner->msg_handler (scanner, string, FALSE);
+      
+      g_free (string);
+    }
+}
+
+static gboolean
+g_scanner_key_equal (gconstpointer v1,
+		     gconstpointer v2)
+{
+  const GScannerKey *key1 = v1;
+  const GScannerKey *key2 = v2;
+  
+  return (key1->scope_id == key2->scope_id) && (strcmp (key1->symbol, key2->symbol) == 0);
+}
+
+static guint
+g_scanner_key_hash (gconstpointer v)
+{
+  const GScannerKey *key = v;
+  gchar *c;
+  guint h;
+  
+  h = key->scope_id;
+  for (c = key->symbol; *c; c++)
+    h = (h << 5) - h + *c;
+  
+  return h;
+}
+
+static inline GScannerKey*
+g_scanner_lookup_internal (GScanner	*scanner,
+			   guint	 scope_id,
+			   const gchar	*symbol)
+{
+  GScannerKey	*key_p;
+  GScannerKey key;
+  
+  key.scope_id = scope_id;
+  
+  if (!scanner->config->case_sensitive)
+    {
+      gchar *d;
+      const gchar *c;
+      
+      key.symbol = g_new (gchar, strlen (symbol) + 1);
+      for (d = key.symbol, c = symbol; *c; c++, d++)
+	*d = to_lower (*c);
+      *d = 0;
+      key_p = g_hash_table_lookup (scanner->symbol_table, &key);
+      g_free (key.symbol);
+    }
+  else
+    {
+      key.symbol = (gchar*) symbol;
+      key_p = g_hash_table_lookup (scanner->symbol_table, &key);
+    }
+  
+  return key_p;
+}
+
+void
+g_scanner_scope_add_symbol (GScanner	*scanner,
+			    guint	 scope_id,
+			    const gchar	*symbol,
+			    gpointer	 value)
+{
+  GScannerKey	*key;
+  
+  g_return_if_fail (scanner != NULL);
+  g_return_if_fail (symbol != NULL);
+  
+  key = g_scanner_lookup_internal (scanner, scope_id, symbol);
+  
+  if (!key)
+    {
+      key = g_new (GScannerKey, 1);
+      key->scope_id = scope_id;
+      key->symbol = g_strdup (symbol);
+      key->value = value;
+      if (!scanner->config->case_sensitive)
+	{
+	  gchar *c;
+	  
+	  c = key->symbol;
+	  while (*c != 0)
+	    {
+	      *c = to_lower (*c);
+	      c++;
+	    }
+	}
+      g_hash_table_insert (scanner->symbol_table, key, key);
+    }
+  else
+    key->value = value;
+}
+
+void
+g_scanner_scope_remove_symbol (GScanner	   *scanner,
+			       guint	    scope_id,
+			       const gchar *symbol)
+{
+  GScannerKey	*key;
+  
+  g_return_if_fail (scanner != NULL);
+  g_return_if_fail (symbol != NULL);
+  
+  key = g_scanner_lookup_internal (scanner, scope_id, symbol);
+  
+  if (key)
+    {
+      g_hash_table_remove (scanner->symbol_table, key);
+      g_free (key->symbol);
+      g_free (key);
+    }
+}
+
+gpointer
+g_scanner_lookup_symbol (GScanner	*scanner,
+			 const gchar	*symbol)
+{
+  GScannerKey	*key;
+  guint scope_id;
+  
+  g_return_val_if_fail (scanner != NULL, NULL);
+  
+  if (!symbol)
+    return NULL;
+  
+  scope_id = scanner->scope_id;
+  key = g_scanner_lookup_internal (scanner, scope_id, symbol);
+  if (!key && scope_id && scanner->config->scope_0_fallback)
+    key = g_scanner_lookup_internal (scanner, 0, symbol);
+  
+  if (key)
+    return key->value;
+  else
+    return NULL;
+}
+
+gpointer
+g_scanner_scope_lookup_symbol (GScanner	      *scanner,
+			       guint	       scope_id,
+			       const gchar    *symbol)
+{
+  GScannerKey	*key;
+  
+  g_return_val_if_fail (scanner != NULL, NULL);
+  
+  if (!symbol)
+    return NULL;
+  
+  key = g_scanner_lookup_internal (scanner, scope_id, symbol);
+  
+  if (key)
+    return key->value;
+  else
+    return NULL;
+}
+
+guint
+g_scanner_set_scope (GScanner	    *scanner,
+		     guint	     scope_id)
+{
+  guint old_scope_id;
+  
+  g_return_val_if_fail (scanner != NULL, 0);
+  
+  old_scope_id = scanner->scope_id;
+  scanner->scope_id = scope_id;
+  
+  return old_scope_id;
+}
+
+static void
+g_scanner_foreach_internal (gpointer  _key,
+			    gpointer  _value,
+			    gpointer  _user_data)
+{
+  GScannerKey *key;
+  gpointer *d;
+  GHFunc func;
+  gpointer user_data;
+  guint *scope_id;
+  
+  d = _user_data;
+  func = (GHFunc) d[0];
+  user_data = d[1];
+  scope_id = d[2];
+  key = _value;
+  
+  if (key->scope_id == *scope_id)
+    func (key->symbol, key->value, user_data);
+}
+
+void
+g_scanner_scope_foreach_symbol (GScanner       *scanner,
+				guint		scope_id,
+				GHFunc		func,
+				gpointer	user_data)
+{
+  gpointer d[3];
+  
+  g_return_if_fail (scanner != NULL);
+  
+  d[0] = (gpointer) func;
+  d[1] = user_data;
+  d[2] = &scope_id;
+  
+  g_hash_table_foreach (scanner->symbol_table, g_scanner_foreach_internal, d);
+}
+
+GTokenType
+g_scanner_peek_next_token (GScanner	*scanner)
+{
+  g_return_val_if_fail (scanner != NULL, G_TOKEN_EOF);
+  
+  if (scanner->next_token == G_TOKEN_NONE)
+    {
+      scanner->next_line = scanner->line;
+      scanner->next_position = scanner->position;
+      g_scanner_get_token_i (scanner,
+			     &scanner->next_token,
+			     &scanner->next_value,
+			     &scanner->next_line,
+			     &scanner->next_position);
+    }
+  
+  return scanner->next_token;
+}
+
+GTokenType
+g_scanner_get_next_token (GScanner	*scanner)
+{
+  g_return_val_if_fail (scanner != NULL, G_TOKEN_EOF);
+  
+  if (scanner->next_token != G_TOKEN_NONE)
+    {
+      g_scanner_free_value (&scanner->token, &scanner->value);
+      
+      scanner->token = scanner->next_token;
+      scanner->value = scanner->next_value;
+      scanner->line = scanner->next_line;
+      scanner->position = scanner->next_position;
+      scanner->next_token = G_TOKEN_NONE;
+    }
+  else
+    g_scanner_get_token_i (scanner,
+			   &scanner->token,
+			   &scanner->value,
+			   &scanner->line,
+			   &scanner->position);
+  
+  return scanner->token;
+}
+
+GTokenType
+g_scanner_cur_token (GScanner *scanner)
+{
+  g_return_val_if_fail (scanner != NULL, G_TOKEN_EOF);
+  
+  return scanner->token;
+}
+
+GTokenValue
+g_scanner_cur_value (GScanner *scanner)
+{
+  GTokenValue v;
+  
+  v.v_int = 0;
+  
+  g_return_val_if_fail (scanner != NULL, v);
+
+  /* MSC isn't capable of handling return scanner->value; ? */
+
+  v = scanner->value;
+
+  return v;
+}
+
+guint
+g_scanner_cur_line (GScanner *scanner)
+{
+  g_return_val_if_fail (scanner != NULL, 0);
+  
+  return scanner->line;
+}
+
+guint
+g_scanner_cur_position (GScanner *scanner)
+{
+  g_return_val_if_fail (scanner != NULL, 0);
+  
+  return scanner->position;
+}
+
+gboolean
+g_scanner_eof (GScanner	*scanner)
+{
+  g_return_val_if_fail (scanner != NULL, TRUE);
+  
+  return scanner->token == G_TOKEN_EOF;
+}
+
+void
+g_scanner_input_file (GScanner *scanner,
+		      gint	input_fd)
+{
+  g_return_if_fail (scanner != NULL);
+  g_return_if_fail (input_fd >= 0);
+
+  if (scanner->input_fd >= 0)
+    g_scanner_sync_file_offset (scanner);
+
+  scanner->token = G_TOKEN_NONE;
+  scanner->value.v_int = 0;
+  scanner->line = 1;
+  scanner->position = 0;
+  scanner->next_token = G_TOKEN_NONE;
+
+  scanner->input_fd = input_fd;
+  scanner->text = NULL;
+  scanner->text_end = NULL;
+
+  if (!scanner->buffer)
+    scanner->buffer = g_new (gchar, READ_BUFFER_SIZE + 1);
+}
+
+void
+g_scanner_input_text (GScanner	  *scanner,
+		      const gchar *text,
+		      guint	   text_len)
+{
+  g_return_if_fail (scanner != NULL);
+  if (text_len)
+    g_return_if_fail (text != NULL);
+  else
+    text = NULL;
+
+  if (scanner->input_fd >= 0)
+    g_scanner_sync_file_offset (scanner);
+
+  scanner->token = G_TOKEN_NONE;
+  scanner->value.v_int = 0;
+  scanner->line = 1;
+  scanner->position = 0;
+  scanner->next_token = G_TOKEN_NONE;
+
+  scanner->input_fd = -1;
+  scanner->text = text;
+  scanner->text_end = text + text_len;
+
+  if (scanner->buffer)
+    {
+      g_free (scanner->buffer);
+      scanner->buffer = NULL;
+    }
+}
+
+static guchar
+g_scanner_peek_next_char (GScanner *scanner)
+{
+  if (scanner->text < scanner->text_end)
+    {
+      return *scanner->text;
+    }
+  else if (scanner->input_fd >= 0)
+    {
+      gint count;
+      gchar *buffer;
+
+      buffer = scanner->buffer;
+      do
+	{
+	  count = read (scanner->input_fd, buffer, READ_BUFFER_SIZE);
+	}
+      while (count == -1 && (errno == EINTR || errno == EAGAIN));
+
+      if (count < 1)
+	{
+	  scanner->input_fd = -1;
+
+	  return 0;
+	}
+      else
+	{
+	  scanner->text = buffer;
+	  scanner->text_end = buffer + count;
+
+	  return *buffer;
+	}
+    }
+  else
+    return 0;
+}
+
+void
+g_scanner_sync_file_offset (GScanner *scanner)
+{
+  g_return_if_fail (scanner != NULL);
+
+  /* for file input, rewind the filedescriptor to the current
+   * buffer position and blow the file read ahead buffer. usefull for
+   * third party uses of our filedescriptor, which hooks onto the current
+   * scanning position.
+   */
+
+  if (scanner->input_fd >= 0 && scanner->text_end > scanner->text)
+    {
+      gint buffered;
+
+      buffered = scanner->text_end - scanner->text;
+      if (lseek (scanner->input_fd, - buffered, SEEK_CUR) >= 0)
+	{
+	  /* we succeeded, blow our buffer's contents now */
+	  scanner->text = NULL;
+	  scanner->text_end = NULL;
+	}
+      else
+	errno = 0;
+    }
+}
+
+static guchar
+g_scanner_get_char (GScanner	*scanner,
+		    guint	*line_p,
+		    guint	*position_p)
+{
+  guchar fchar;
+
+  if (scanner->text < scanner->text_end)
+    fchar = *(scanner->text++);
+  else if (scanner->input_fd >= 0)
+    {
+      gint count;
+      gchar *buffer;
+
+      buffer = scanner->buffer;
+      do
+	{
+	  count = read (scanner->input_fd, buffer, READ_BUFFER_SIZE);
+	}
+      while (count == -1 && (errno == EINTR || errno == EAGAIN));
+
+      if (count < 1)
+	{
+	  scanner->input_fd = -1;
+	  fchar = 0;
+	}
+      else
+	{
+	  scanner->text = buffer + 1;
+	  scanner->text_end = buffer + count;
+	  fchar = *buffer;
+	  if (!fchar)
+	    {
+	      g_scanner_sync_file_offset (scanner);
+	      scanner->text_end = scanner->text;
+	      scanner->input_fd = -1;
+	    }
+	}
+    }
+  else
+    fchar = 0;
+  
+  if (fchar == '\n')
+    {
+      (*position_p) = 0;
+      (*line_p)++;
+    }
+  else if (fchar)
+    {
+      (*position_p)++;
+    }
+  
+  return fchar;
+}
+
+void
+g_scanner_unexp_token (GScanner		*scanner,
+		       GTokenType	 expected_token,
+		       const gchar	*identifier_spec,
+		       const gchar	*symbol_spec,
+		       const gchar	*symbol_name,
+		       const gchar	*message,
+		       gint		 is_error)
+{
+  gchar	*token_string;
+  guint	token_string_len;
+  gchar	*expected_string;
+  guint	expected_string_len;
+  gchar	*message_prefix;
+  gboolean print_unexp;
+  void (*msg_handler)	(GScanner*, const gchar*, ...);
+  
+  g_return_if_fail (scanner != NULL);
+  
+  if (is_error)
+    msg_handler = g_scanner_error;
+  else
+    msg_handler = g_scanner_warn;
+  
+  if (!identifier_spec)
+    identifier_spec = "identifier";
+  if (!symbol_spec)
+    symbol_spec = "symbol";
+  
+  token_string_len = 56;
+  token_string = g_new (gchar, token_string_len + 1);
+  expected_string_len = 64;
+  expected_string = g_new (gchar, expected_string_len + 1);
+  print_unexp = TRUE;
+  
+  switch (scanner->token)
+    {
+    case G_TOKEN_EOF:
+      g_snprintf (token_string, token_string_len, "end of file");
+      break;
+      
+    default:
+      if (scanner->token >= 1 && scanner->token <= 255)
+	{
+	  if ((scanner->token >= ' ' && scanner->token <= '~') ||
+	      strchr (scanner->config->cset_identifier_first, scanner->token) ||
+	      strchr (scanner->config->cset_identifier_nth, scanner->token))
+	    g_snprintf (token_string, expected_string_len, "character `%c'", scanner->token);
+	  else
+	    g_snprintf (token_string, expected_string_len, "character `\\%o'", scanner->token);
+	  break;
+	}
+      else if (!scanner->config->symbol_2_token)
+	{
+	  g_snprintf (token_string, token_string_len, "(unknown) token <%d>", scanner->token);
+	  break;
+	}
+      /* fall through */
+    case G_TOKEN_SYMBOL:
+      if (expected_token == G_TOKEN_SYMBOL ||
+	  (scanner->config->symbol_2_token &&
+	   expected_token > G_TOKEN_LAST))
+	print_unexp = FALSE;
+      if (symbol_name)
+	g_snprintf (token_string,
+		    token_string_len,
+		    "%s%s `%s'",
+		    print_unexp ? "" : "invalid ",
+		    symbol_spec,
+		    symbol_name);
+      else
+	g_snprintf (token_string,
+		    token_string_len,
+		    "%s%s",
+		    print_unexp ? "" : "invalid ",
+		    symbol_spec);
+      break;
+      
+    case G_TOKEN_ERROR:
+      print_unexp = FALSE;
+      expected_token = G_TOKEN_NONE;
+      switch (scanner->value.v_error)
+	{
+	case G_ERR_UNEXP_EOF:
+	  g_snprintf (token_string, token_string_len, "scanner: unexpected end of file");
+	  break;
+	  
+	case G_ERR_UNEXP_EOF_IN_STRING:
+	  g_snprintf (token_string, token_string_len, "scanner: unterminated string constant");
+	  break;
+	  
+	case G_ERR_UNEXP_EOF_IN_COMMENT:
+	  g_snprintf (token_string, token_string_len, "scanner: unterminated comment");
+	  break;
+	  
+	case G_ERR_NON_DIGIT_IN_CONST:
+	  g_snprintf (token_string, token_string_len, "scanner: non digit in constant");
+	  break;
+	  
+	case G_ERR_FLOAT_RADIX:
+	  g_snprintf (token_string, token_string_len, "scanner: invalid radix for floating constant");
+	  break;
+	  
+	case G_ERR_FLOAT_MALFORMED:
+	  g_snprintf (token_string, token_string_len, "scanner: malformed floating constant");
+	  break;
+	  
+	case G_ERR_DIGIT_RADIX:
+	  g_snprintf (token_string, token_string_len, "scanner: digit is beyond radix");
+	  break;
+	  
+	case G_ERR_UNKNOWN:
+	default:
+	  g_snprintf (token_string, token_string_len, "scanner: unknown error");
+	  break;
+	}
+      break;
+      
+    case G_TOKEN_CHAR:
+      g_snprintf (token_string, token_string_len, "character `%c'", scanner->value.v_char);
+      break;
+      
+    case G_TOKEN_IDENTIFIER:
+    case G_TOKEN_IDENTIFIER_NULL:
+      if (expected_token == G_TOKEN_IDENTIFIER ||
+	  expected_token == G_TOKEN_IDENTIFIER_NULL)
+	print_unexp = FALSE;
+      g_snprintf (token_string,
+		  token_string_len,
+		  "%s%s `%s'",
+		  print_unexp ? "" : "invalid ",
+		  identifier_spec,
+		  scanner->token == G_TOKEN_IDENTIFIER ? scanner->value.v_string : "null");
+      break;
+      
+    case G_TOKEN_BINARY:
+    case G_TOKEN_OCTAL:
+    case G_TOKEN_INT:
+    case G_TOKEN_HEX:
+      g_snprintf (token_string, token_string_len, "number `%ld'", scanner->value.v_int);
+      break;
+      
+    case G_TOKEN_FLOAT:
+      g_snprintf (token_string, token_string_len, "number `%.3f'", scanner->value.v_float);
+      break;
+      
+    case G_TOKEN_STRING:
+      if (expected_token == G_TOKEN_STRING)
+	print_unexp = FALSE;
+      g_snprintf (token_string,
+		  token_string_len,
+		  "%s%sstring constant \"%s\"",
+		  print_unexp ? "" : "invalid ",
+		  scanner->value.v_string[0] == 0 ? "empty " : "",
+		  scanner->value.v_string);
+      token_string[token_string_len - 2] = '"';
+      token_string[token_string_len - 1] = 0;
+      break;
+      
+    case G_TOKEN_COMMENT_SINGLE:
+    case G_TOKEN_COMMENT_MULTI:
+      g_snprintf (token_string, token_string_len, "comment");
+      break;
+      
+    case G_TOKEN_NONE:
+      /* somehow the user's parsing code is screwed, there isn't much
+       * we can do about it.
+       * Note, a common case to trigger this is
+       * g_scanner_peek_next_token(); g_scanner_unexp_token();
+       * without an intermediate g_scanner_get_next_token().
+       */
+      g_assert_not_reached ();
+      break;
+    }
+  
+  
+  switch (expected_token)
+    {
+      gboolean need_valid;
+      
+    default:
+      if (expected_token >= 1 && expected_token <= 255)
+	{
+	  if ((expected_token >= ' ' && expected_token <= '~') ||
+	      strchr (scanner->config->cset_identifier_first, expected_token) ||
+	      strchr (scanner->config->cset_identifier_nth, expected_token))
+	    g_snprintf (expected_string, expected_string_len, "character `%c'", expected_token);
+	  else
+	    g_snprintf (expected_string, expected_string_len, "character `\\%o'", expected_token);
+	  break;
+	}
+      else if (!scanner->config->symbol_2_token)
+	{
+	  g_snprintf (expected_string, expected_string_len, "(unknown) token <%d>", expected_token);
+	  break;
+	}
+      /* fall through */
+    case G_TOKEN_SYMBOL:
+      need_valid = (scanner->token == G_TOKEN_SYMBOL ||
+		    (scanner->config->symbol_2_token &&
+		     scanner->token > G_TOKEN_LAST));
+      g_snprintf (expected_string,
+		  expected_string_len,
+		  "%s%s",
+		  need_valid ? "valid " : "",
+		  symbol_spec);
+      /* FIXME: should we attempt to lookup the symbol_name for symbol_2_token? */
+      break;
+      
+    case G_TOKEN_INT:
+      g_snprintf (expected_string, expected_string_len, "%snumber (integer)",
+		  scanner->token == G_TOKEN_INT ? "valid " : "");
+      break;
+      
+    case G_TOKEN_FLOAT:
+      g_snprintf (expected_string, expected_string_len, "%snumber (float)",
+		  scanner->token == G_TOKEN_FLOAT ? "valid " : "");
+      break;
+      
+    case G_TOKEN_STRING:
+      g_snprintf (expected_string,
+		  expected_string_len,
+		  "%sstring constant",
+		  scanner->token == G_TOKEN_STRING ? "valid " : "");
+      break;
+      
+    case G_TOKEN_IDENTIFIER:
+    case G_TOKEN_IDENTIFIER_NULL:
+      g_snprintf (expected_string,
+		  expected_string_len,
+		  "%s%s",
+		  (scanner->token == G_TOKEN_IDENTIFIER_NULL ||
+		   scanner->token == G_TOKEN_IDENTIFIER ? "valid " : ""),
+		  identifier_spec);
+      break;
+      
+    case G_TOKEN_EOF:
+      g_snprintf (expected_string, expected_string_len, "end of file");
+      break;
+
+    case G_TOKEN_NONE:
+      break;
+    }
+  
+  if (message && message[0] != 0)
+    message_prefix = " - ";
+  else
+    {
+      message_prefix = "";
+      message = "";
+    }
+  
+  if (expected_token != G_TOKEN_NONE)
+    {
+      if (print_unexp)
+	msg_handler (scanner,
+		     "unexpected %s, expected %s%s%s",
+		     token_string,
+		     expected_string,
+		     message_prefix,
+		     message);
+      else
+	msg_handler (scanner,
+		     "%s, expected %s%s%s",
+		     token_string,
+		     expected_string,
+		     message_prefix,
+		     message);
+    }
+  else
+    {
+      if (print_unexp)
+	msg_handler (scanner,
+		     "unexpected %s%s%s",
+		     token_string,
+		     message_prefix,
+		     message);
+      else
+	msg_handler (scanner,
+		     "%s%s%s",
+		     token_string,
+		     message_prefix,
+		     message);
+    }
+  
+  g_free (token_string);
+  g_free (expected_string);
+}
+
+static void
+g_scanner_get_token_i (GScanner	*scanner,
+		       GTokenType	*token_p,
+		       GTokenValue	*value_p,
+		       guint		*line_p,
+		       guint		*position_p)
+{
+  do
+    {
+      g_scanner_free_value (token_p, value_p);
+      g_scanner_get_token_ll (scanner, token_p, value_p, line_p, position_p);
+    }
+  while (((*token_p > 0 && *token_p < 256) &&
+	  strchr (scanner->config->cset_skip_characters, *token_p)) ||
+	 (*token_p == G_TOKEN_CHAR &&
+	  strchr (scanner->config->cset_skip_characters, value_p->v_char)) ||
+	 (*token_p == G_TOKEN_COMMENT_MULTI &&
+	  scanner->config->skip_comment_multi) ||
+	 (*token_p == G_TOKEN_COMMENT_SINGLE &&
+	  scanner->config->skip_comment_single));
+  
+  switch (*token_p)
+    {
+    case G_TOKEN_IDENTIFIER:
+      if (scanner->config->identifier_2_string)
+	*token_p = G_TOKEN_STRING;
+      break;
+      
+    case G_TOKEN_SYMBOL:
+      if (scanner->config->symbol_2_token)
+	*token_p = (GTokenType) value_p->v_symbol;
+      break;
+      
+    case G_TOKEN_BINARY:
+    case G_TOKEN_OCTAL:
+    case G_TOKEN_HEX:
+      if (scanner->config->numbers_2_int)
+	*token_p = G_TOKEN_INT;
+      break;
+      
+    default:
+      break;
+    }
+  
+  if (*token_p == G_TOKEN_INT &&
+      scanner->config->int_2_float)
+    {
+      *token_p = G_TOKEN_FLOAT;
+      value_p->v_float = value_p->v_int;
+    }
+  
+  errno = 0;
+}
+
+static void
+g_scanner_get_token_ll	(GScanner	*scanner,
+			 GTokenType	*token_p,
+			 GTokenValue	*value_p,
+			 guint		*line_p,
+			 guint		*position_p)
+{
+  GScannerConfig *config;
+  GTokenType	   token;
+  gboolean	   in_comment_multi;
+  gboolean	   in_comment_single;
+  gboolean	   in_string_sq;
+  gboolean	   in_string_dq;
+  GString	  *gstring;
+  GTokenValue	   value;
+  guchar	   ch;
+  
+  config = scanner->config;
+  (*value_p).v_int = 0;
+  
+  if ((scanner->text >= scanner->text_end && scanner->input_fd < 0) ||
+      scanner->token == G_TOKEN_EOF)
+    {
+      *token_p = G_TOKEN_EOF;
+      return;
+    }
+  
+  in_comment_multi = FALSE;
+  in_comment_single = FALSE;
+  in_string_sq = FALSE;
+  in_string_dq = FALSE;
+  gstring = NULL;
+  
+  do /* while (ch != 0) */
+    {
+      gboolean dotted_float = FALSE;
+      
+      ch = g_scanner_get_char (scanner, line_p, position_p);
+      
+      value.v_int = 0;
+      token = G_TOKEN_NONE;
+      
+      /* this is *evil*, but needed ;(
+       * we first check for identifier first character, because	 it
+       * might interfere with other key chars like slashes or numbers
+       */
+      if (config->scan_identifier &&
+	  ch && strchr (config->cset_identifier_first, ch))
+	goto identifier_precedence;
+      
+      switch (ch)
+	{
+	case 0:
+	  token = G_TOKEN_EOF;
+	  (*position_p)++;
+	  /* ch = 0; */
+	  break;
+	  
+	case '/':
+	  if (!config->scan_comment_multi ||
+	      g_scanner_peek_next_char (scanner) != '*')
+	    goto default_case;
+	  g_scanner_get_char (scanner, line_p, position_p);
+	  token = G_TOKEN_COMMENT_MULTI;
+	  in_comment_multi = TRUE;
+	  gstring = g_string_new ("");
+	  while ((ch = g_scanner_get_char (scanner, line_p, position_p)) != 0)
+	    {
+	      if (ch == '*' && g_scanner_peek_next_char (scanner) == '/')
+		{
+		  g_scanner_get_char (scanner, line_p, position_p);
+		  in_comment_multi = FALSE;
+		  break;
+		}
+	      else
+		gstring = g_string_append_c (gstring, ch);
+	    }
+	  ch = 0;
+	  break;
+	  
+	case '\'':
+	  if (!config->scan_string_sq)
+	    goto default_case;
+	  token = G_TOKEN_STRING;
+	  in_string_sq = TRUE;
+	  gstring = g_string_new ("");
+	  while ((ch = g_scanner_get_char (scanner, line_p, position_p)) != 0)
+	    {
+	      if (ch == '\'')
+		{
+		  in_string_sq = FALSE;
+		  break;
+		}
+	      else
+		gstring = g_string_append_c (gstring, ch);
+	    }
+	  ch = 0;
+	  break;
+	  
+	case '"':
+	  if (!config->scan_string_dq)
+	    goto default_case;
+	  token = G_TOKEN_STRING;
+	  in_string_dq = TRUE;
+	  gstring = g_string_new ("");
+	  while ((ch = g_scanner_get_char (scanner, line_p, position_p)) != 0)
+	    {
+	      if (ch == '"')
+		{
+		  in_string_dq = FALSE;
+		  break;
+		}
+	      else
+		{
+		  if (ch == '\\')
+		    {
+		      ch = g_scanner_get_char (scanner, line_p, position_p);
+		      switch (ch)
+			{
+			  guint	i;
+			  guint	fchar;
+			  
+			case 0:
+			  break;
+			  
+			case '\\':
+			  gstring = g_string_append_c (gstring, '\\');
+			  break;
+			  
+			case 'n':
+			  gstring = g_string_append_c (gstring, '\n');
+			  break;
+			  
+			case 't':
+			  gstring = g_string_append_c (gstring, '\t');
+			  break;
+			  
+			case 'r':
+			  gstring = g_string_append_c (gstring, '\r');
+			  break;
+			  
+			case 'b':
+			  gstring = g_string_append_c (gstring, '\b');
+			  break;
+			  
+			case 'f':
+			  gstring = g_string_append_c (gstring, '\f');
+			  break;
+			  
+			case '0':
+			case '1':
+			case '2':
+			case '3':
+			case '4':
+			case '5':
+			case '6':
+			case '7':
+			  i = ch - '0';
+			  fchar = g_scanner_peek_next_char (scanner);
+			  if (fchar >= '0' && fchar <= '7')
+			    {
+			      ch = g_scanner_get_char (scanner, line_p, position_p);
+			      i = i * 8 + ch - '0';
+			      fchar = g_scanner_peek_next_char (scanner);
+			      if (fchar >= '0' && fchar <= '7')
+				{
+				  ch = g_scanner_get_char (scanner, line_p, position_p);
+				  i = i * 8 + ch - '0';
+				}
+			    }
+			  gstring = g_string_append_c (gstring, i);
+			  break;
+			  
+			default:
+			  gstring = g_string_append_c (gstring, ch);
+			  break;
+			}
+		    }
+		  else
+		    gstring = g_string_append_c (gstring, ch);
+		}
+	    }
+	  ch = 0;
+	  break;
+	  
+	case '.':
+	  if (!config->scan_float)
+	    goto default_case;
+	  token = G_TOKEN_FLOAT;
+	  dotted_float = TRUE;
+	  ch = g_scanner_get_char (scanner, line_p, position_p);
+	  goto number_parsing;
+	  
+	case '$':
+	  if (!config->scan_hex_dollar)
+	    goto default_case;
+	  token = G_TOKEN_HEX;
+	  ch = g_scanner_get_char (scanner, line_p, position_p);
+	  goto number_parsing;
+	  
+	case '0':
+	  if (config->scan_octal)
+	    token = G_TOKEN_OCTAL;
+	  else
+	    token = G_TOKEN_INT;
+	  ch = g_scanner_peek_next_char (scanner);
+	  if (config->scan_hex && (ch == 'x' || ch == 'X'))
+	    {
+	      token = G_TOKEN_HEX;
+	      g_scanner_get_char (scanner, line_p, position_p);
+	      ch = g_scanner_get_char (scanner, line_p, position_p);
+	      if (ch == 0)
+		{
+		  token = G_TOKEN_ERROR;
+		  value.v_error = G_ERR_UNEXP_EOF;
+		  (*position_p)++;
+		  break;
+		}
+	      if (g_scanner_char_2_num (ch, 16) < 0)
+		{
+		  token = G_TOKEN_ERROR;
+		  value.v_error = G_ERR_DIGIT_RADIX;
+		  ch = 0;
+		  break;
+		}
+	    }
+	  else if (config->scan_binary && (ch == 'b' || ch == 'B'))
+	    {
+	      token = G_TOKEN_BINARY;
+	      g_scanner_get_char (scanner, line_p, position_p);
+	      ch = g_scanner_get_char (scanner, line_p, position_p);
+	      if (ch == 0)
+		{
+		  token = G_TOKEN_ERROR;
+		  value.v_error = G_ERR_UNEXP_EOF;
+		  (*position_p)++;
+		  break;
+		}
+	      if (g_scanner_char_2_num (ch, 10) < 0)
+		{
+		  token = G_TOKEN_ERROR;
+		  value.v_error = G_ERR_NON_DIGIT_IN_CONST;
+		  ch = 0;
+		  break;
+		}
+	    }
+	  else
+	    ch = '0';
+	  /* fall through */
+	case '1':
+	case '2':
+	case '3':
+	case '4':
+	case '5':
+	case '6':
+	case '7':
+	case '8':
+	case '9':
+	number_parsing:
+	{
+          gboolean in_number = TRUE;
+	  gchar *endptr;
+	  
+	  if (token == G_TOKEN_NONE)
+	    token = G_TOKEN_INT;
+	  
+	  gstring = g_string_new (dotted_float ? "0." : "");
+	  gstring = g_string_append_c (gstring, ch);
+	  
+	  do /* while (in_number) */
+	    {
+	      gboolean is_E;
+	      
+	      is_E = token == G_TOKEN_FLOAT && (ch == 'e' || ch == 'E');
+	      
+	      ch = g_scanner_peek_next_char (scanner);
+	      
+	      if (g_scanner_char_2_num (ch, 36) >= 0 ||
+		  (config->scan_float && ch == '.') ||
+		  (is_E && (ch == '+' || ch == '-')))
+		{
+		  ch = g_scanner_get_char (scanner, line_p, position_p);
+		  
+		  switch (ch)
+		    {
+		    case '.':
+		      if (token != G_TOKEN_INT && token != G_TOKEN_OCTAL)
+			{
+			  value.v_error = token == G_TOKEN_FLOAT ? G_ERR_FLOAT_MALFORMED : G_ERR_FLOAT_RADIX;
+			  token = G_TOKEN_ERROR;
+			  in_number = FALSE;
+			}
+		      else
+			{
+			  token = G_TOKEN_FLOAT;
+			  gstring = g_string_append_c (gstring, ch);
+			}
+		      break;
+		      
+		    case '0':
+		    case '1':
+		    case '2':
+		    case '3':
+		    case '4':
+		    case '5':
+		    case '6':
+		    case '7':
+		    case '8':
+		    case '9':
+		      gstring = g_string_append_c (gstring, ch);
+		      break;
+		      
+		    case '-':
+		    case '+':
+		      if (token != G_TOKEN_FLOAT)
+			{
+			  token = G_TOKEN_ERROR;
+			  value.v_error = G_ERR_NON_DIGIT_IN_CONST;
+			  in_number = FALSE;
+			}
+		      else
+			gstring = g_string_append_c (gstring, ch);
+		      break;
+		      
+		    case 'e':
+		    case 'E':
+		      if ((token != G_TOKEN_HEX && !config->scan_float) ||
+			  (token != G_TOKEN_HEX &&
+			   token != G_TOKEN_OCTAL &&
+			   token != G_TOKEN_FLOAT &&
+			   token != G_TOKEN_INT))
+			{
+			  token = G_TOKEN_ERROR;
+			  value.v_error = G_ERR_NON_DIGIT_IN_CONST;
+			  in_number = FALSE;
+			}
+		      else
+			{
+			  if (token != G_TOKEN_HEX)
+			    token = G_TOKEN_FLOAT;
+			  gstring = g_string_append_c (gstring, ch);
+			}
+		      break;
+		      
+		    default:
+		      if (token != G_TOKEN_HEX)
+			{
+			  token = G_TOKEN_ERROR;
+			  value.v_error = G_ERR_NON_DIGIT_IN_CONST;
+			  in_number = FALSE;
+			}
+		      else
+			gstring = g_string_append_c (gstring, ch);
+		      break;
+		    }
+		}
+	      else
+		in_number = FALSE;
+	    }
+	  while (in_number);
+	  
+	  endptr = NULL;
+	  switch (token)
+	    {
+	    case G_TOKEN_BINARY:
+	      value.v_binary = strtol (gstring->str, &endptr, 2);
+	      break;
+	      
+	    case G_TOKEN_OCTAL:
+	      value.v_octal = strtol (gstring->str, &endptr, 8);
+	      break;
+	      
+	    case G_TOKEN_INT:
+	      value.v_int = strtol (gstring->str, &endptr, 10);
+	      break;
+	      
+	    case G_TOKEN_FLOAT:
+	      value.v_float = g_strtod (gstring->str, &endptr);
+	      break;
+	      
+	    case G_TOKEN_HEX:
+	      value.v_hex = strtol (gstring->str, &endptr, 16);
+	      break;
+	      
+	    default:
+	      break;
+	    }
+	  if (endptr && *endptr)
+	    {
+	      token = G_TOKEN_ERROR;
+	      if (*endptr == 'e' || *endptr == 'E')
+		value.v_error = G_ERR_NON_DIGIT_IN_CONST;
+	      else
+		value.v_error = G_ERR_DIGIT_RADIX;
+	    }
+	  g_string_free (gstring, TRUE);
+	  gstring = NULL;
+	  ch = 0;
+	} /* number_parsing:... */
+	break;
+	
+	default:
+	default_case:
+	{
+	  if (config->cpair_comment_single &&
+	      ch == config->cpair_comment_single[0])
+	    {
+	      token = G_TOKEN_COMMENT_SINGLE;
+	      in_comment_single = TRUE;
+	      gstring = g_string_new ("");
+	      ch = g_scanner_get_char (scanner, line_p, position_p);
+	      while (ch != 0)
+		{
+		  if (ch == config->cpair_comment_single[1])
+		    {
+		      in_comment_single = FALSE;
+		      ch = 0;
+		      break;
+		    }
+		  
+		  gstring = g_string_append_c (gstring, ch);
+		  ch = g_scanner_get_char (scanner, line_p, position_p);
+		}
+	    }
+	  else if (config->scan_identifier && ch &&
+		   strchr (config->cset_identifier_first, ch))
+	    {
+	    identifier_precedence:
+	      
+	      if (config->cset_identifier_nth && ch &&
+		  strchr (config->cset_identifier_nth,
+			  g_scanner_peek_next_char (scanner)))
+		{
+		  token = G_TOKEN_IDENTIFIER;
+		  gstring = g_string_new ("");
+		  gstring = g_string_append_c (gstring, ch);
+		  do
+		    {
+		      ch = g_scanner_get_char (scanner, line_p, position_p);
+		      gstring = g_string_append_c (gstring, ch);
+		      ch = g_scanner_peek_next_char (scanner);
+		    }
+		  while (ch && strchr (config->cset_identifier_nth, ch));
+		  ch = 0;
+		}
+	      else if (config->scan_identifier_1char)
+		{
+		  token = G_TOKEN_IDENTIFIER;
+		  value.v_identifier = g_new0 (gchar, 2);
+		  value.v_identifier[0] = ch;
+		  ch = 0;
+		}
+	    }
+	  if (ch)
+	    {
+	      if (config->char_2_token)
+		token = ch;
+	      else
+		{
+		  token = G_TOKEN_CHAR;
+		  value.v_char = ch;
+		}
+	      ch = 0;
+	    }
+	} /* default_case:... */
+	break;
+	}
+      g_assert (ch == 0 && token != G_TOKEN_NONE); /* paranoid */
+    }
+  while (ch != 0);
+  
+  if (in_comment_multi || in_comment_single ||
+      in_string_sq || in_string_dq)
+    {
+      token = G_TOKEN_ERROR;
+      if (gstring)
+	{
+	  g_string_free (gstring, TRUE);
+	  gstring = NULL;
+	}
+      (*position_p)++;
+      if (in_comment_multi || in_comment_single)
+	value.v_error = G_ERR_UNEXP_EOF_IN_COMMENT;
+      else /* (in_string_sq || in_string_dq) */
+	value.v_error = G_ERR_UNEXP_EOF_IN_STRING;
+    }
+  
+  if (gstring)
+    {
+      value.v_string = gstring->str;
+      g_string_free (gstring, FALSE);
+      gstring = NULL;
+    }
+  
+  if (token == G_TOKEN_IDENTIFIER)
+    {
+      if (config->scan_symbols)
+	{
+	  GScannerKey *key;
+	  guint scope_id;
+	  
+	  scope_id = scanner->scope_id;
+	  key = g_scanner_lookup_internal (scanner, scope_id, value.v_identifier);
+	  if (!key && scope_id && scanner->config->scope_0_fallback)
+	    key = g_scanner_lookup_internal (scanner, 0, value.v_identifier);
+	  
+	  if (key)
+	    {
+	      g_free (value.v_identifier);
+	      token = G_TOKEN_SYMBOL;
+	      value.v_symbol = key->value;
+	    }
+	}
+      
+      if (token == G_TOKEN_IDENTIFIER &&
+	  config->scan_identifier_NULL &&
+	  strlen (value.v_identifier) == 4)
+	{
+	  gchar *null_upper = "NULL";
+	  gchar *null_lower = "null";
+	  
+	  if (scanner->config->case_sensitive)
+	    {
+	      if (value.v_identifier[0] == null_upper[0] &&
+		  value.v_identifier[1] == null_upper[1] &&
+		  value.v_identifier[2] == null_upper[2] &&
+		  value.v_identifier[3] == null_upper[3])
+		token = G_TOKEN_IDENTIFIER_NULL;
+	    }
+	  else
+	    {
+	      if ((value.v_identifier[0] == null_upper[0] ||
+		   value.v_identifier[0] == null_lower[0]) &&
+		  (value.v_identifier[1] == null_upper[1] ||
+		   value.v_identifier[1] == null_lower[1]) &&
+		  (value.v_identifier[2] == null_upper[2] ||
+		   value.v_identifier[2] == null_lower[2]) &&
+		  (value.v_identifier[3] == null_upper[3] ||
+		   value.v_identifier[3] == null_lower[3]))
+		token = G_TOKEN_IDENTIFIER_NULL;
+	    }
+	}
+    }
+  
+  *token_p = token;
+  *value_p = value;
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gscanner.h b/graf2d/win32gdk/gdk/src/glib/gscanner.h
index 8cee79b414e..951d3ff20d0 100644
--- a/graf2d/win32gdk/gdk/src/glib/gscanner.h
+++ b/graf2d/win32gdk/gdk/src/glib/gscanner.h
@@ -27,7 +27,7 @@
 #ifndef __G_SCANNER_H__
 #define __G_SCANNER_H__
 
-#include <ghash.h>
+#include <glib/ghash.h>
 
 G_BEGIN_DECLS
 
@@ -168,8 +168,8 @@ struct	_GScanner
   /* name of input stream, featured by the default message handler */
   const gchar		*input_name;
   
-  /* data pointer for derived structures */
-  gpointer		derived_data;
+  /* quarked data */
+  GData			*qdata;
   
   /* link into the scanner configuration */
   GScannerConfig	*config;
@@ -198,7 +198,7 @@ struct	_GScanner
   GScannerMsgFunc	msg_handler;
 };
 
-GScanner*	g_scanner_new			(GScannerConfig *config_templ);
+GScanner*	g_scanner_new			(const GScannerConfig *config_templ);
 void		g_scanner_destroy		(GScanner	*scanner);
 void		g_scanner_input_file		(GScanner	*scanner,
 						 gint		input_fd);
@@ -244,7 +244,6 @@ void		g_scanner_error			(GScanner	*scanner,
 void		g_scanner_warn			(GScanner	*scanner,
 						 const gchar	*format,
 						 ...) G_GNUC_PRINTF (2,3);
-gint		g_scanner_stat_mode		(const gchar	*filename);
 /* keep downward source compatibility */
 #define		g_scanner_add_symbol( scanner, symbol, value )	G_STMT_START { \
   g_scanner_scope_add_symbol ((scanner), 0, (symbol), (value)); \
@@ -256,10 +255,14 @@ gint		g_scanner_stat_mode		(const gchar	*filename);
   g_scanner_scope_foreach_symbol ((scanner), 0, (func), (data)); \
 } G_STMT_END
 
+#ifndef G_DISABLE_DEPRECATED
+
 /* The following two functions are deprecated and will be removed in
  * the next major release. They do no good. */
-void		g_scanner_freeze_symbol_table	(GScanner	*scanner);
-void		g_scanner_thaw_symbol_table	(GScanner	*scanner);
+#define g_scanner_freeze_symbol_table(scanner) ((void)0)
+#define g_scanner_thaw_symbol_table(scanner) ((void)0)
+
+#endif /* G_DISABLE_DEPRECATED */
 
 G_END_DECLS
 
diff --git a/graf2d/win32gdk/gdk/src/glib/gshell.c b/graf2d/win32gdk/gdk/src/glib/gshell.c
new file mode 100644
index 00000000000..3f6134b6be8
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gshell.c
@@ -0,0 +1,658 @@
+/* gshell.c - Shell-related utilities
+ *
+ *  Copyright 2000 Red Hat, Inc.
+ *  g_execvpe implementation based on GNU libc execvp:
+ *   Copyright 1991, 92, 95, 96, 97, 98, 99 Free Software Foundation, Inc.
+ *
+ * GLib is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * GLib is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with GLib; see the file COPYING.LIB.  If not, write
+ * to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#include "glib.h"
+#include <string.h>
+
+#ifdef _
+#warning "FIXME remove gettext hack"
+#endif
+
+#include "glibintl.h"
+
+GQuark
+g_shell_error_quark (void)
+{
+  static GQuark quark = 0;
+  if (quark == 0)
+    quark = g_quark_from_static_string ("g-shell-error-quark");
+  return quark;
+}
+
+/* Single quotes preserve the literal string exactly. escape
+ * sequences are not allowed; not even \' - if you want a '
+ * in the quoted text, you have to do something like 'foo'\''bar'
+ *
+ * Double quotes allow $ ` " \ and newline to be escaped with backslash.
+ * Otherwise double quotes preserve things literally.
+ */
+
+static gboolean 
+unquote_string_inplace (gchar* str, gchar** end, GError** err)
+{
+  gchar* dest;
+  gchar* s;
+  gchar quote_char;
+  
+  g_return_val_if_fail(end != NULL, FALSE);
+  g_return_val_if_fail(err == NULL || *err == NULL, FALSE);
+  g_return_val_if_fail(str != NULL, FALSE);
+  
+  dest = s = str;
+
+  quote_char = *s;
+  
+  if (!(*s == '"' || *s == '\''))
+    {
+      if (err)
+        *err = g_error_new(G_SHELL_ERROR,
+                           G_SHELL_ERROR_BAD_QUOTING,
+                           _("Quoted text doesn't begin with a quotation mark"));
+      *end = str;
+      return FALSE;
+    }
+
+  /* Skip the initial quote mark */
+  ++s;
+
+  if (quote_char == '"')
+    {
+      while (*s)
+        {
+          g_assert(s > dest); /* loop invariant */
+      
+          switch (*s)
+            {
+            case '"':
+              /* End of the string, return now */
+              *dest = '\0';
+              ++s;
+              *end = s;
+              return TRUE;
+              break;
+
+            case '\\':
+              /* Possible escaped quote or \ */
+              ++s;
+              switch (*s)
+                {
+                case '"':
+                case '\\':
+                case '`':
+                case '$':
+                case '\n':
+                  *dest = *s;
+                  ++s;
+                  ++dest;
+                  break;
+
+                default:
+                  /* not an escaped char */
+                  *dest = '\\';
+                  ++dest;
+                  /* ++s already done. */
+                  break;
+                }
+              break;
+
+            default:
+              *dest = *s;
+              ++dest;
+              ++s;
+              break;
+            }
+
+          g_assert(s > dest); /* loop invariant */
+        }
+    }
+  else
+    {
+      while (*s)
+        {
+          g_assert(s > dest); /* loop invariant */
+          
+          if (*s == '\'')
+            {
+              /* End of the string, return now */
+              *dest = '\0';
+              ++s;
+              *end = s;
+              return TRUE;
+            }
+          else
+            {
+              *dest = *s;
+              ++dest;
+              ++s;
+            }
+
+          g_assert(s > dest); /* loop invariant */
+        }
+    }
+  
+  /* If we reach here this means the close quote was never encountered */
+
+  *dest = '\0';
+  
+  if (err)
+    *err = g_error_new(G_SHELL_ERROR,
+                       G_SHELL_ERROR_BAD_QUOTING,
+                       _("Unmatched quotation mark in command line or other shell-quoted text"));
+  *end = s;
+  return FALSE;
+}
+
+/**
+ * g_shell_quote:
+ * @unquoted_string: a literal string
+ * 
+ * Quotes a string so that the shell (/bin/sh) will interpret the
+ * quoted string to mean @unquoted_string. If you pass a filename to
+ * the shell, for example, you should first quote it with this
+ * function.  The return value must be freed with g_free(). The
+ * quoting style used is undefined (single or double quotes may be
+ * used).
+ * 
+ * Return value: quoted string
+ **/
+gchar*
+g_shell_quote (const gchar *unquoted_string)
+{
+  /* We always use single quotes, because the algorithm is cheesier.
+   * We could use double if we felt like it, that might be more
+   * human-readable.
+   */
+
+  const gchar *p;
+  GString *dest;
+
+  g_return_val_if_fail (unquoted_string != NULL, NULL);
+  
+  dest = g_string_new ("'");
+
+  p = unquoted_string;
+
+  /* could speed this up a lot by appending chunks of text at a
+   * time.
+   */
+  while (*p)
+    {
+      /* Replace literal ' with a close ', a \', and a open ' */
+      if (*p == '\'')
+        g_string_append (dest, "'\\''");
+      else
+        g_string_append_c (dest, *p);
+
+      ++p;
+    }
+
+  /* close the quote */
+  g_string_append_c (dest, '\'');
+  
+  return g_string_free (dest, FALSE);
+}
+
+/**
+ * g_shell_unquote:
+ * @quoted_string: shell-quoted string
+ * @error: error return location or NULL
+ * 
+ * Unquotes a string as the shell (/bin/sh) would. Only handles
+ * quotes; if a string contains file globs, arithmetic operators,
+ * variables, backticks, redirections, or other special-to-the-shell
+ * features, the result will be different from the result a real shell
+ * would produce (the variables, backticks, etc. will be passed
+ * through literally instead of being expanded). This function is
+ * guaranteed to succeed if applied to the result of
+ * g_shell_quote(). If it fails, it returns NULL and sets the
+ * error. The @quoted_string need not actually contain quoted or
+ * escaped text; g_shell_unquote() simply goes through the string and
+ * unquotes/unescapes anything that the shell would. Both single and
+ * double quotes are handled, as are escapes including escaped
+ * newlines. The return value must be freed with g_free(). Possible
+ * errors are in the #G_SHELL_ERROR domain.
+ * 
+ * Shell quoting rules are a bit strange. Single quotes preserve the
+ * literal string exactly. escape sequences are not allowed; not even
+ * \' - if you want a ' in the quoted text, you have to do something
+ * like 'foo'\''bar'.  Double quotes allow $, `, ", \, and newline to
+ * be escaped with backslash. Otherwise double quotes preserve things
+ * literally.
+ *
+ * Return value: an unquoted string
+ **/
+gchar*
+g_shell_unquote (const gchar *quoted_string,
+                 GError     **error)
+{
+  gchar *unquoted;
+  gchar *end;
+  gchar *start;
+  GString *retval;
+  
+  g_return_val_if_fail (quoted_string != NULL, NULL);
+  
+  unquoted = g_strdup (quoted_string);
+
+  start = unquoted;
+  end = unquoted;
+  retval = g_string_new ("");
+
+  /* The loop allows cases such as
+   * "foo"blah blah'bar'woo foo"baz"la la la\'\''foo'
+   */
+  while (*start)
+    {
+      /* Append all non-quoted chars, honoring backslash escape
+       */
+      
+      while (*start && !(*start == '"' || *start == '\''))
+        {
+          if (*start == '\\')
+            {
+              /* all characters can get escaped by backslash,
+               * except newline, which is removed if it follows
+               * a backslash outside of quotes
+               */
+              
+              ++start;
+              if (*start)
+                {
+                  if (*start != '\n')
+                    g_string_append_c (retval, *start);
+                  ++start;
+                }
+            }
+          else
+            {
+              g_string_append_c (retval, *start);
+              ++start;
+            }
+        }
+
+      if (*start)
+        {
+          if (!unquote_string_inplace (start, &end, error))
+            {
+              goto error;
+            }
+          else
+            {
+              g_string_append (retval, start);
+              start = end;
+            }
+        }
+    }
+
+  return g_string_free (retval, FALSE);
+  
+ error:
+  g_assert (error == NULL || *error != NULL);
+  
+  g_free (unquoted);
+  g_string_free (retval, TRUE);
+  return NULL;
+}
+
+/* g_parse_argv() does a semi-arbitrary weird subset of the way
+ * the shell parses a command line. We don't do variable expansion,
+ * don't understand that operators are tokens, don't do tilde expansion,
+ * don't do command substitution, no arithmetic expansion, IFS gets ignored,
+ * don't do filename globs, don't remove redirection stuff, etc.
+ *
+ * READ THE UNIX98 SPEC on "Shell Command Language" before changing
+ * the behavior of this code.
+ *
+ * Steps to parsing the argv string:
+ *
+ *  - tokenize the string (but since we ignore operators,
+ *    our tokenization may diverge from what the shell would do)
+ *    note that tokenization ignores the internals of a quoted
+ *    word and it always splits on spaces, not on IFS even
+ *    if we used IFS. We also ignore "end of input indicator"
+ *    (I guess this is control-D?)
+ *
+ *    Tokenization steps, from UNIX98 with operator stuff removed,
+ *    are:
+ * 
+ *    1) "If the current character is backslash, single-quote or
+ *        double-quote (\, ' or ") and it is not quoted, it will affect
+ *        quoting for subsequent characters up to the end of the quoted
+ *        text. The rules for quoting are as described in Quoting
+ *        . During token recognition no substitutions will be actually
+ *        performed, and the result token will contain exactly the
+ *        characters that appear in the input (except for newline
+ *        character joining), unmodified, including any embedded or
+ *        enclosing quotes or substitution operators, between the quote
+ *        mark and the end of the quoted text. The token will not be
+ *        delimited by the end of the quoted field."
+ *
+ *    2) "If the current character is an unquoted newline character,
+ *        the current token will be delimited."
+ *
+ *    3) "If the current character is an unquoted blank character, any
+ *        token containing the previous character is delimited and the
+ *        current character will be discarded."
+ *
+ *    4) "If the previous character was part of a word, the current
+ *        character will be appended to that word."
+ *
+ *    5) "If the current character is a "#", it and all subsequent
+ *        characters up to, but excluding, the next newline character
+ *        will be discarded as a comment. The newline character that
+ *        ends the line is not considered part of the comment. The
+ *        "#" starts a comment only when it is at the beginning of a
+ *        token. Since the search for the end-of-comment does not
+ *        consider an escaped newline character specially, a comment
+ *        cannot be continued to the next line."
+ *
+ *    6) "The current character will be used as the start of a new word."
+ *
+ *
+ *  - for each token (word), perform portions of word expansion, namely
+ *    field splitting (using default whitespace IFS) and quote
+ *    removal.  Field splitting may increase the number of words.
+ *    Quote removal does not increase the number of words.
+ *
+ *   "If the complete expansion appropriate for a word results in an
+ *   empty field, that empty field will be deleted from the list of
+ *   fields that form the completely expanded command, unless the
+ *   original word contained single-quote or double-quote characters."
+ *    - UNIX98 spec
+ *
+ *
+ */
+
+static inline void
+ensure_token (GString **token)
+{
+  if (*token == NULL)
+    *token = g_string_new ("");
+}
+
+static void
+delimit_token (GString **token,
+               GSList **retval)
+{
+  if (*token == NULL)
+    return;
+
+  *retval = g_slist_prepend (*retval, g_string_free (*token, FALSE));
+
+  *token = NULL;
+}
+
+static GSList*
+tokenize_command_line (const gchar *command_line,
+                       GError **error)
+{
+  gchar current_quote;
+  const gchar *p;
+  GString *current_token = NULL;
+  GSList *retval = NULL;
+  
+  current_quote = '\0';
+  p = command_line;
+
+  while (*p)
+    {
+      if (current_quote == '\\')
+        {
+          if (*p == '\n')
+            {
+              /* we append nothing; backslash-newline become nothing */
+            }
+          else
+            {
+              /* we append the backslash and the current char,
+               * to be interpreted later after tokenization
+               */
+              ensure_token (&current_token);
+              g_string_append_c (current_token, '\\');
+              g_string_append_c (current_token, *p);
+            }
+
+          current_quote = '\0';
+        }
+      else if (current_quote == '#')
+        {
+          /* Discard up to and including next newline */
+          while (*p && *p != '\n')
+            ++p;
+
+          current_quote = '\0';
+          
+          if (*p == '\0')
+            break;
+        }
+      else if (current_quote)
+        {
+          if (*p == current_quote &&
+              /* check that it isn't an escaped double quote */
+              !(current_quote == '"' && p != command_line && *(p - 1) == '\\'))
+            {
+              /* close the quote */
+              current_quote = '\0';
+            }
+
+          /* Everything inside quotes, and the close quote,
+           * gets appended literally.
+           */
+
+          ensure_token (&current_token);
+          g_string_append_c (current_token, *p);
+        }
+      else
+        {
+          switch (*p)
+            {
+            case '\n':
+              delimit_token (&current_token, &retval);
+              break;
+
+            case ' ':
+            case '\t':
+              /* If the current token contains the previous char, delimit
+               * the current token. A nonzero length
+               * token should always contain the previous char.
+               */
+              if (current_token &&
+                  current_token->len > 0)
+                {
+                  delimit_token (&current_token, &retval);
+                }
+              
+              /* discard all unquoted blanks (don't add them to a token) */
+              break;
+
+
+              /* single/double quotes are appended to the token,
+               * escapes are maybe appended next time through the loop,
+               * comment chars are never appended.
+               */
+              
+            case '\'':
+            case '"':
+              ensure_token (&current_token);
+              g_string_append_c (current_token, *p);
+
+              /* FALL THRU */
+              
+            case '#':
+            case '\\':
+              current_quote = *p;
+              break;
+
+            default:
+              /* Combines rules 4) and 6) - if we have a token, append to it,
+               * otherwise create a new token.
+               */
+              ensure_token (&current_token);
+              g_string_append_c (current_token, *p);
+              break;
+            }
+        }
+
+      ++p;
+    }
+
+  delimit_token (&current_token, &retval);
+
+  if (current_quote)
+    {
+      if (current_quote == '\\')
+        g_set_error (error,
+                     G_SHELL_ERROR,
+                     G_SHELL_ERROR_BAD_QUOTING,
+                     _("Text ended just after a '\' character."
+                       " (The text was '%s')"),
+                     command_line);
+      else
+        g_set_error (error,
+                     G_SHELL_ERROR,
+                     G_SHELL_ERROR_BAD_QUOTING,
+                     _("Text ended before matching quote was found for %c."
+                       " (The text was '%s')"),
+                     current_quote, command_line);
+      
+      goto error;
+    }
+
+  if (retval == NULL)
+    {
+      g_set_error (error,
+                   G_SHELL_ERROR,
+                   G_SHELL_ERROR_EMPTY_STRING,
+                   _("Text was empty (or contained only whitespace)"));
+
+      goto error;
+    }
+  
+  /* we appended backward */
+  retval = g_slist_reverse (retval);
+
+  return retval;
+
+ error:
+  g_assert (error == NULL || *error != NULL);
+  
+  if (retval)
+    {
+      g_slist_foreach (retval, (GFunc)g_free, NULL);
+      g_slist_free (retval);
+    }
+
+  return NULL;
+}
+
+/**
+ * g_shell_parse_argv:
+ * @command_line: command line to parse
+ * @argcp: return location for number of args
+ * @argvp: return location for array of args
+ * @error: return location for error
+ * 
+ * Parses a command line into an argument vector, in much the same way
+ * the shell would, but without many of the expansions the shell would
+ * perform (variable expansion, globs, operators, filename expansion,
+ * etc. are not supported). The results are defined to be the same as
+ * those you would get from a UNIX98 /bin/sh, as long as the input
+ * contains none of the unsupported shell expansions. If the input
+ * does contain such expansions, they are passed through
+ * literally. Possible errors are those from the #G_SHELL_ERROR
+ * domain.
+ * 
+ * Return value: TRUE on success, FALSE if error set
+ **/
+gboolean
+g_shell_parse_argv (const gchar *command_line,
+                    gint        *argcp,
+                    gchar     ***argvp,
+                    GError     **error)
+{
+  /* Code based on poptParseArgvString() from libpopt */
+  gint argc = 0;
+  gchar **argv = NULL;
+  GSList *tokens = NULL;
+  gint i;
+  GSList *tmp_list;
+  
+  g_return_val_if_fail (command_line != NULL, FALSE);
+
+  tokens = tokenize_command_line (command_line, error);
+  if (tokens == NULL)
+    return FALSE;
+
+  /* Because we can't have introduced any new blank space into the
+   * tokens (we didn't do any new expansions), we don't need to
+   * perform field splitting. If we were going to honor IFS or do any
+   * expansions, we would have to do field splitting on each word
+   * here. Also, if we were going to do any expansion we would need to
+   * remove any zero-length words that didn't contain quotes
+   * originally; but since there's no expansion we know all words have
+   * nonzero length, unless they contain quotes.
+   * 
+   * So, we simply remove quotes, and don't do any field splitting or
+   * empty word removal, since we know there was no way to introduce
+   * such things.
+   */
+
+  argc = g_slist_length (tokens);
+  argv = g_new0 (gchar*, argc + 1);
+  i = 0;
+  tmp_list = tokens;
+  while (tmp_list)
+    {
+      argv[i] = g_shell_unquote (tmp_list->data, error);
+
+      /* Since we already checked that quotes matched up in the
+       * tokenizer, this shouldn't be possible to reach I guess.
+       */
+      if (argv[i] == NULL)
+        goto failed;
+
+      tmp_list = g_slist_next (tmp_list);
+      ++i;
+    }
+  
+  g_slist_foreach (tokens, (GFunc)g_free, NULL);
+  g_slist_free (tokens);
+  
+  if (argcp)
+    *argcp = argc;
+
+  if (argvp)
+    *argvp = argv;
+  else
+    g_strfreev (argv);
+
+  return TRUE;
+
+ failed:
+
+  g_assert (error == NULL || *error != NULL);
+  g_strfreev (argv);
+  g_slist_foreach (tokens, (GFunc) g_free, NULL);
+  g_slist_free (tokens);
+  
+  return FALSE;
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gshell.h b/graf2d/win32gdk/gdk/src/glib/gshell.h
index c433cbaeb48..b3f9d914807 100644
--- a/graf2d/win32gdk/gdk/src/glib/gshell.h
+++ b/graf2d/win32gdk/gdk/src/glib/gshell.h
@@ -21,7 +21,7 @@
 #ifndef __G_SHELL_H__
 #define __G_SHELL_H__
 
-#include <gerror.h>
+#include <glib/gerror.h>
 
 G_BEGIN_DECLS
 
diff --git a/graf2d/win32gdk/gdk/src/glib/gslist.c b/graf2d/win32gdk/gdk/src/glib/gslist.c
new file mode 100644
index 00000000000..18e08e42dc6
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gslist.c
@@ -0,0 +1,767 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include "glib.h"
+
+
+#ifndef DISABLE_MEM_POOLS
+struct _GAllocator /* from gmem.c */
+{
+  gchar         *name;
+  guint16        n_preallocs;
+  guint          is_unused : 1;
+  guint          type : 4;
+  GAllocator    *last;
+  GMemChunk     *mem_chunk;
+  GSList        *free_lists; /* implementation specific */
+};
+
+G_LOCK_DEFINE_STATIC (current_allocator);
+static GAllocator       *current_allocator = NULL;
+
+/* HOLDS: current_allocator_lock */
+static void
+g_slist_validate_allocator (GAllocator *allocator)
+{
+  g_return_if_fail (allocator != NULL);
+  g_return_if_fail (allocator->is_unused == TRUE);
+
+  if (allocator->type != G_ALLOCATOR_SLIST)
+    {
+      allocator->type = G_ALLOCATOR_SLIST;
+      if (allocator->mem_chunk)
+	{
+	  g_mem_chunk_destroy (allocator->mem_chunk);
+	  allocator->mem_chunk = NULL;
+	}
+    }
+
+  if (!allocator->mem_chunk)
+    {
+      allocator->mem_chunk = g_mem_chunk_new (allocator->name,
+					      sizeof (GSList),
+					      sizeof (GSList) * allocator->n_preallocs,
+					      G_ALLOC_ONLY);
+      allocator->free_lists = NULL;
+    }
+
+  allocator->is_unused = FALSE;
+}
+
+void
+g_slist_push_allocator (GAllocator *allocator)
+{
+  G_LOCK (current_allocator);
+  g_slist_validate_allocator (allocator);
+  allocator->last = current_allocator;
+  current_allocator = allocator;
+  G_UNLOCK (current_allocator);
+}
+
+void
+g_slist_pop_allocator (void)
+{
+  G_LOCK (current_allocator);
+  if (current_allocator)
+    {
+      GAllocator *allocator;
+
+      allocator = current_allocator;
+      current_allocator = allocator->last;
+      allocator->last = NULL;
+      allocator->is_unused = TRUE;
+    }
+  G_UNLOCK (current_allocator);
+}
+
+static inline GSList*
+_g_slist_alloc (void)
+{
+  GSList *list;
+
+  G_LOCK (current_allocator);
+  if (!current_allocator)
+    {
+      GAllocator *allocator = g_allocator_new ("GLib default GSList allocator",
+					       128);
+      g_slist_validate_allocator (allocator);
+      allocator->last = NULL;
+      current_allocator = allocator; 
+    }
+  if (!current_allocator->free_lists)
+    {
+      list = g_chunk_new (GSList, current_allocator->mem_chunk);
+      list->data = NULL;
+    }
+  else
+    {
+      if (current_allocator->free_lists->data)
+	{
+	  list = current_allocator->free_lists->data;
+	  current_allocator->free_lists->data = list->next;
+	  list->data = NULL;
+	}
+      else
+	{
+	  list = current_allocator->free_lists;
+	  current_allocator->free_lists = list->next;
+	}
+    }
+  G_UNLOCK (current_allocator);
+  
+  list->next = NULL;
+
+  return list;
+}
+
+GSList*
+g_slist_alloc (void)
+{
+  return _g_slist_alloc ();
+}
+
+void
+g_slist_free (GSList *list)
+{
+  if (list)
+    {
+      GSList *last_node = list;
+  
+#ifdef ENABLE_GC_FRIENDLY
+      while (last_node->next)
+	{
+	  last_node->data = NULL;
+	  last_node = last_node->next;
+	}
+      last_node->data = NULL;
+#else /* !ENABLE_GC_FRIENDLY */
+      list->data = list->next;  
+#endif /* ENABLE_GC_FRIENDLY */
+	
+      G_LOCK (current_allocator);
+      last_node->next = current_allocator->free_lists;
+      current_allocator->free_lists = list;
+      G_UNLOCK (current_allocator);
+    }
+}
+
+static inline void
+_g_slist_free_1 (GSList *list)
+{
+  if (list)
+    {
+      list->data = NULL;
+      G_LOCK (current_allocator);
+      list->next = current_allocator->free_lists;
+      current_allocator->free_lists = list;
+      G_UNLOCK (current_allocator);
+    }
+}
+
+void
+g_slist_free_1 (GSList *list)
+{
+  _g_slist_free_1 (list);
+}
+#else /* DISABLE_MEM_POOLS */
+
+#define _g_slist_alloc g_slist_alloc
+GSList*
+g_slist_alloc (void)
+{
+  GSList *list;
+  
+  list = g_new0 (GSList, 1);
+  
+  return list;
+}
+
+void
+g_slist_free (GSList *list)
+{
+  GSList *last;
+  
+  while (list)
+    {
+      last = list;
+      list = list->next;
+      g_free (last);
+    }
+}
+
+#define _g_slist_free_1 g_slist_free_1
+void
+g_slist_free_1 (GSList *list)
+{
+  g_free (list);
+}
+
+#endif
+
+GSList*
+g_slist_append (GSList   *list,
+		gpointer  data)
+{
+  GSList *new_list;
+  GSList *last;
+
+  new_list = _g_slist_alloc ();
+  new_list->data = data;
+
+  if (list)
+    {
+      last = g_slist_last (list);
+      /* g_assert (last != NULL); */
+      last->next = new_list;
+
+      return list;
+    }
+  else
+      return new_list;
+}
+
+GSList*
+g_slist_prepend (GSList   *list,
+		 gpointer  data)
+{
+  GSList *new_list;
+
+  new_list = _g_slist_alloc ();
+  new_list->data = data;
+  new_list->next = list;
+
+  return new_list;
+}
+
+GSList*
+g_slist_insert (GSList   *list,
+		gpointer  data,
+		gint      position)
+{
+  GSList *prev_list;
+  GSList *tmp_list;
+  GSList *new_list;
+
+  if (position < 0)
+    return g_slist_append (list, data);
+  else if (position == 0)
+    return g_slist_prepend (list, data);
+
+  new_list = _g_slist_alloc ();
+  new_list->data = data;
+
+  if (!list)
+    return new_list;
+
+  prev_list = NULL;
+  tmp_list = list;
+
+  while ((position-- > 0) && tmp_list)
+    {
+      prev_list = tmp_list;
+      tmp_list = tmp_list->next;
+    }
+
+  if (prev_list)
+    {
+      new_list->next = prev_list->next;
+      prev_list->next = new_list;
+    }
+  else
+    {
+      new_list->next = list;
+      list = new_list;
+    }
+
+  return list;
+}
+
+GSList*
+g_slist_insert_before (GSList  *slist,
+		       GSList  *sibling,
+		       gpointer data)
+{
+  if (!slist)
+    {
+      slist = g_slist_alloc ();
+      slist->data = data;
+      g_return_val_if_fail (sibling == NULL, slist);
+      return slist;
+    }
+  else
+    {
+      GSList *node, *last = NULL;
+
+      for (node = slist; node; last = node, node = last->next)
+	if (node == sibling)
+	  break;
+      if (!last)
+	{
+	  node = g_slist_alloc ();
+	  node->data = data;
+	  node->next = slist;
+
+	  return node;
+	}
+      else
+	{
+	  node = g_slist_alloc ();
+	  node->data = data;
+	  node->next = last->next;
+	  last->next = node;
+
+	  return slist;
+	}
+    }
+}
+
+GSList *
+g_slist_concat (GSList *list1, GSList *list2)
+{
+  if (list2)
+    {
+      if (list1)
+	g_slist_last (list1)->next = list2;
+      else
+	list1 = list2;
+    }
+
+  return list1;
+}
+
+GSList*
+g_slist_remove (GSList        *list,
+		gconstpointer  data)
+{
+  GSList *tmp, *prev = NULL;
+
+  tmp = list;
+  while (tmp)
+    {
+      if (tmp->data == data)
+	{
+	  if (prev)
+	    prev->next = tmp->next;
+	  else
+	    list = tmp->next;
+
+	  g_slist_free_1 (tmp);
+	  break;
+	}
+      prev = tmp;
+      tmp = prev->next;
+    }
+
+  return list;
+}
+
+GSList*
+g_slist_remove_all (GSList        *list,
+		    gconstpointer  data)
+{
+  GSList *tmp, *prev = NULL;
+
+  tmp = list;
+  while (tmp)
+    {
+      if (tmp->data == data)
+	{
+	  GSList *next = tmp->next;
+
+	  if (prev)
+	    prev->next = next;
+	  else
+	    list = next;
+	  
+	  g_slist_free_1 (tmp);
+	  tmp = next;
+	}
+      else
+	{
+	  prev = tmp;
+	  tmp = prev->next;
+	}
+    }
+
+  return list;
+}
+
+static inline GSList*
+_g_slist_remove_link (GSList *list,
+		      GSList *link)
+{
+  GSList *tmp;
+  GSList *prev;
+
+  prev = NULL;
+  tmp = list;
+
+  while (tmp)
+    {
+      if (tmp == link)
+	{
+	  if (prev)
+	    prev->next = tmp->next;
+	  if (list == tmp)
+	    list = list->next;
+
+	  tmp->next = NULL;
+	  break;
+	}
+
+      prev = tmp;
+      tmp = tmp->next;
+    }
+
+  return list;
+}
+
+GSList* 
+g_slist_remove_link (GSList *list,
+		     GSList *link)
+{
+  return _g_slist_remove_link (list, link);
+}
+
+GSList*
+g_slist_delete_link (GSList *list,
+		     GSList *link)
+{
+  list = _g_slist_remove_link (list, link);
+  _g_slist_free_1 (link);
+
+  return list;
+}
+
+GSList*
+g_slist_copy (GSList *list)
+{
+  GSList *new_list = NULL;
+
+  if (list)
+    {
+      GSList *last;
+
+      new_list = _g_slist_alloc ();
+      new_list->data = list->data;
+      last = new_list;
+      list = list->next;
+      while (list)
+	{
+	  last->next = _g_slist_alloc ();
+	  last = last->next;
+	  last->data = list->data;
+	  list = list->next;
+	}
+    }
+
+  return new_list;
+}
+
+GSList*
+g_slist_reverse (GSList *list)
+{
+  GSList *prev = NULL;
+  
+  while (list)
+    {
+      GSList *next = list->next;
+
+      list->next = prev;
+      
+      prev = list;
+      list = next;
+    }
+  
+  return prev;
+}
+
+GSList*
+g_slist_nth (GSList *list,
+	     guint   n)
+{
+  while (n-- > 0 && list)
+    list = list->next;
+
+  return list;
+}
+
+gpointer
+g_slist_nth_data (GSList   *list,
+		  guint     n)
+{
+  while (n-- > 0 && list)
+    list = list->next;
+
+  return list ? list->data : NULL;
+}
+
+GSList*
+g_slist_find (GSList        *list,
+	      gconstpointer  data)
+{
+  while (list)
+    {
+      if (list->data == data)
+	break;
+      list = list->next;
+    }
+
+  return list;
+}
+
+GSList*
+g_slist_find_custom (GSList        *list,
+		     gconstpointer  data,
+		     GCompareFunc   func)
+{
+  g_return_val_if_fail (func != NULL, list);
+
+  while (list)
+    {
+      if (! func (list->data, data))
+	return list;
+      list = list->next;
+    }
+
+  return NULL;
+}
+
+gint
+g_slist_position (GSList *list,
+		  GSList *link)
+{
+  gint i;
+
+  i = 0;
+  while (list)
+    {
+      if (list == link)
+	return i;
+      i++;
+      list = list->next;
+    }
+
+  return -1;
+}
+
+gint
+g_slist_index (GSList        *list,
+	       gconstpointer  data)
+{
+  gint i;
+
+  i = 0;
+  while (list)
+    {
+      if (list->data == data)
+	return i;
+      i++;
+      list = list->next;
+    }
+
+  return -1;
+}
+
+GSList*
+g_slist_last (GSList *list)
+{
+  if (list)
+    {
+      while (list->next)
+	list = list->next;
+    }
+
+  return list;
+}
+
+guint
+g_slist_length (GSList *list)
+{
+  guint length;
+
+  length = 0;
+  while (list)
+    {
+      length++;
+      list = list->next;
+    }
+
+  return length;
+}
+
+void
+g_slist_foreach (GSList   *list,
+		 GFunc     func,
+		 gpointer  user_data)
+{
+  while (list)
+    {
+      GSList *next = list->next;
+      (*func) (list->data, user_data);
+      list = next;
+    }
+}
+
+GSList*
+g_slist_insert_sorted (GSList       *list,
+                       gpointer      data,
+                       GCompareFunc  func)
+{
+  GSList *tmp_list = list;
+  GSList *prev_list = NULL;
+  GSList *new_list;
+  gint cmp;
+ 
+  g_return_val_if_fail (func != NULL, list);
+
+  if (!list)
+    {
+      new_list = _g_slist_alloc ();
+      new_list->data = data;
+      return new_list;
+    }
+ 
+  cmp = (*func) (data, tmp_list->data);
+ 
+  while ((tmp_list->next) && (cmp > 0))
+    {
+      prev_list = tmp_list;
+      tmp_list = tmp_list->next;
+      cmp = (*func) (data, tmp_list->data);
+    }
+
+  new_list = _g_slist_alloc ();
+  new_list->data = data;
+
+  if ((!tmp_list->next) && (cmp > 0))
+    {
+      tmp_list->next = new_list;
+      return list;
+    }
+  
+  if (prev_list)
+    {
+      prev_list->next = new_list;
+      new_list->next = tmp_list;
+      return list;
+    }
+  else
+    {
+      new_list->next = list;
+      return new_list;
+    }
+}
+
+static GSList *
+g_slist_sort_merge (GSList   *l1, 
+		    GSList   *l2,
+		    GFunc     compare_func,
+		    gboolean  use_data,
+		    gpointer  user_data)
+{
+  GSList list, *l;
+  gint cmp;
+
+  l=&list;
+
+  while (l1 && l2)
+    {
+      if (use_data)
+	cmp = ((GCompareDataFunc) compare_func) (l1->data, l2->data, user_data);
+      else
+	cmp = ((GCompareFunc) compare_func) (l1->data, l2->data);
+
+      if (cmp <= 0)
+        {
+	  l=l->next=l1;
+	  l1=l1->next;
+        } 
+      else 
+	{
+	  l=l->next=l2;
+	  l2=l2->next;
+        }
+    }
+  l->next= l1 ? l1 : l2;
+  
+  return list.next;
+}
+
+static GSList *
+g_slist_sort_real (GSList   *list,
+		   GFunc     compare_func,
+		   gboolean  use_data,
+		   gpointer  user_data)
+{
+  GSList *l1, *l2;
+
+  if (!list) 
+    return NULL;
+  if (!list->next) 
+    return list;
+
+  l1 = list; 
+  l2 = list->next;
+
+  while ((l2 = l2->next) != NULL)
+    {
+      if ((l2 = l2->next) == NULL) 
+	break;
+      l1=l1->next;
+    }
+  l2 = l1->next; 
+  l1->next = NULL;
+
+  return g_slist_sort_merge (g_slist_sort_real (list, compare_func, use_data, user_data),
+			     g_slist_sort_real (l2, compare_func, use_data, user_data),
+			     compare_func,
+			     use_data,
+			     user_data);
+}
+
+GSList *
+g_slist_sort (GSList       *list,
+	      GCompareFunc  compare_func)
+{
+  return g_slist_sort_real (list, (GFunc) compare_func, FALSE, NULL);
+}
+
+GSList *
+g_slist_sort_with_data (GSList           *list,
+			GCompareDataFunc  compare_func,
+			gpointer          user_data)
+{
+  return g_slist_sort_real (list, (GFunc) compare_func, TRUE, user_data);
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gslist.h b/graf2d/win32gdk/gdk/src/glib/gslist.h
index a31d0efc65e..32a3b245255 100644
--- a/graf2d/win32gdk/gdk/src/glib/gslist.h
+++ b/graf2d/win32gdk/gdk/src/glib/gslist.h
@@ -27,7 +27,7 @@
 #ifndef __G_SLIST_H__
 #define __G_SLIST_H__
 
-#include <gmem.h>
+#include <glib/gmem.h>
 
 G_BEGIN_DECLS
 
@@ -41,7 +41,7 @@ struct _GSList
 
 /* Singly linked lists
  */
-void     g_slist_push_allocator (GAllocator       *allocato);
+void     g_slist_push_allocator (GAllocator       *allocator);
 void     g_slist_pop_allocator  (void);
 GSList*  g_slist_alloc          (void);
 void     g_slist_free           (GSList           *list);
@@ -63,6 +63,8 @@ GSList*  g_slist_concat         (GSList           *list1,
 				 GSList           *list2);
 GSList*  g_slist_remove         (GSList           *list,
 				 gconstpointer     data);
+GSList*  g_slist_remove_all     (GSList           *list,
+				 gconstpointer     data);
 GSList*  g_slist_remove_link    (GSList           *list,
 				 GSList           *link);
 GSList*  g_slist_delete_link    (GSList           *list,
@@ -88,7 +90,7 @@ void     g_slist_foreach        (GSList           *list,
 GSList*  g_slist_sort           (GSList           *list,
 				 GCompareFunc      compare_func);
 GSList*  g_slist_sort_with_data (GSList           *list,
-				 GCompareFuncData  compare_func,
+				 GCompareDataFunc  compare_func,
 				 gpointer          user_data);
 gpointer g_slist_nth_data       (GSList           *list,
 				 guint             n);
diff --git a/graf2d/win32gdk/gdk/src/glib/gspawn-win32-helper.c b/graf2d/win32gdk/gdk/src/glib/gspawn-win32-helper.c
new file mode 100644
index 00000000000..59709b8d24c
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gspawn-win32-helper.c
@@ -0,0 +1,231 @@
+/* gspawn-win32-helper.c - Helper program for process launching on Win32.
+ *
+ *  Copyright 2000 Red Hat, Inc.
+ *  Copyright 2000 Tor Lillqvist
+ *
+ * GLib is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * GLib is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with GLib; see the file COPYING.LIB.  If not, write
+ * to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#undef G_LOG_DOMAIN
+#include "glib.h"
+#define GSPAWN_HELPER
+#include "gspawn-win32.c"	/* For shared definitions */
+
+static GString *debugstring;
+
+static void
+write_err_and_exit (gint fd,
+		    gint msg)
+{
+  gint en = errno;
+  
+  if (debug)
+    {
+      debugstring = g_string_new ("");
+      g_string_append (debugstring,
+		       g_strdup_printf ("writing error code %d and errno %d",
+					msg, en));
+      MessageBox (NULL, debugstring->str, "gspawn-win32-helper", 0);
+    }
+
+  write (fd, &msg, sizeof(msg));
+  write (fd, &en, sizeof(en));
+  
+  _exit (1);
+}
+
+#ifdef __GNUC__
+#  ifndef _stdcall
+#    define _stdcall  __attribute__((stdcall))
+#  endif
+#endif
+
+/* We build gspawn-win32-helper.exe as a Windows GUI application
+ * to avoid any temporarily flashing console windows in case
+ * the gspawn function is invoked by a GUI program. Thus, no main()
+ * but a WinMain(). We do, however, still use argc and argv tucked
+ * away in the global __argc and __argv by the C runtime startup code.
+ */
+
+int _stdcall
+WinMain (struct HINSTANCE__ *hInstance,
+	 struct HINSTANCE__ *hPrevInstance,
+	 char               *lpszCmdLine,
+	 int                 nCmdShow)
+{
+  int child_err_report_fd;
+  int i;
+  int fd;
+  int mode;
+  gint zero = 0;
+
+  SETUP_DEBUG();
+
+  if (debug)
+    {
+      debugstring = g_string_new ("");
+
+      g_string_append (debugstring,
+		       g_strdup_printf ("g-spawn-win32-helper: "
+					"argc = %d, argv: ",
+					__argc));
+      for (i = 0; i < __argc; i++)
+	{
+	  if (i > 0)
+	    g_string_append (debugstring, " ");
+	  g_string_append (debugstring, __argv[i]);
+	}
+      
+      MessageBox (NULL, debugstring->str, "gspawn-win32-helper", 0);
+    }
+
+  g_assert (__argc >= ARG_COUNT);
+
+  /* argv[ARG_CHILD_ERR_REPORT] is the file descriptor onto which
+   * write error messages.
+   */
+  child_err_report_fd = atoi (__argv[ARG_CHILD_ERR_REPORT]);
+
+  /* argv[ARG_STDIN..ARG_STDERR] are the file descriptors that should
+   * be dup2'd to stdin, stdout and stderr, '-' if the corresponding
+   * std* should be let alone, and 'z' if it should be connected to
+   * the bit bucket NUL:.
+   */
+  if (__argv[ARG_STDIN][0] == '-')
+    ; /* Nothing */
+  else if (__argv[ARG_STDIN][0] == 'z')
+    {
+      fd = open ("NUL:", O_RDONLY);
+      if (fd != 0)
+	{
+	  dup2 (fd, 0);
+	  close (fd);
+	}
+    }
+  else
+    {
+      fd = atoi (__argv[ARG_STDIN]);
+      if (fd != 0)
+	{
+	  dup2 (fd, 0);
+	  close (fd);
+	}
+    }
+
+  if (__argv[ARG_STDOUT][0] == '-')
+    ; /* Nothing */
+  else if (__argv[ARG_STDOUT][0] == 'z')
+    {
+      fd = open ("NUL:", O_WRONLY);
+      if (fd != 1)
+	{
+	  dup2 (fd, 1);
+	  close (fd);
+	}
+    }
+  else
+    {
+      fd = atoi (__argv[ARG_STDOUT]);
+      if (fd != 1)
+	{
+	  dup2 (fd, 1);
+	  close (fd);
+	}
+    }
+
+  if (__argv[ARG_STDERR][0] == '-')
+    ; /* Nothing */
+  else if (__argv[ARG_STDERR][0] == 'z')
+    {
+      fd = open ("NUL:", O_WRONLY);
+      if (fd != 2)
+	{
+	  dup2 (fd, 2);
+	  close (fd);
+	}
+    }
+  else
+    {
+      fd = atoi (__argv[ARG_STDERR]);
+      if (fd != 2)
+	{
+	  dup2 (fd, 2);
+	  close (fd);
+	}
+    }
+
+  /* __argv[ARG_WORKING_DIRECTORY] is the directory in which to run the
+   * process.  If "-", don't change directory.
+   */
+  if (__argv[ARG_WORKING_DIRECTORY][0] == '-' &&
+      __argv[ARG_WORKING_DIRECTORY][1] == 0)
+    ; /* Nothing */
+  else if (chdir (__argv[ARG_WORKING_DIRECTORY]) < 0)
+    write_err_and_exit (child_err_report_fd,
+			CHILD_CHDIR_FAILED);
+
+  /* __argv[ARG_CLOSE_DESCRIPTORS] is "y" if file descriptors from 3
+   *  upwards should be closed
+   */
+
+  if (__argv[ARG_CLOSE_DESCRIPTORS][0] == 'y')
+    for (i = 3; i < 1000; i++)	/* FIXME real limit? */
+      if (i != child_err_report_fd)
+	close (i);
+
+  /* __argv[ARG_WAIT] is "w" to wait for the program to exit */
+
+  if (__argv[ARG_WAIT][0] == 'w')
+    mode = P_WAIT;
+  else
+    mode = P_NOWAIT;
+
+  /* __argv[ARG_USE_PATH] is "y" to use PATH, otherwise not */
+
+  /* __argv[ARG_PROGRAM] is program file to run,
+   * __argv[ARG_PROGRAM+1]... is its __argv.
+   */
+
+  if (debug)
+    {
+      debugstring = g_string_new ("");
+      g_string_append (debugstring,
+		       g_strdup_printf ("calling %s on program %s, __argv: ",
+					(__argv[ARG_USE_PATH][0] == 'y' ?
+					 "spawnvp" : "spawnv"),
+					__argv[ARG_PROGRAM]));
+      i = ARG_PROGRAM+1;
+      while (__argv[i])
+	g_string_append (debugstring, __argv[i++]);
+      MessageBox (NULL, debugstring->str, "gspawn-win32-helper", 0);
+    }
+
+  if (__argv[ARG_USE_PATH][0] == 'y')
+    {
+      if (spawnvp (mode, __argv[ARG_PROGRAM], __argv+ARG_PROGRAM) < 0)
+	write_err_and_exit (child_err_report_fd, CHILD_SPAWN_FAILED);
+    }
+  else
+    {
+      if (spawnv (mode, __argv[ARG_PROGRAM], __argv+ARG_PROGRAM) < 0)
+	write_err_and_exit (child_err_report_fd, CHILD_SPAWN_FAILED);
+    }
+  write (child_err_report_fd, &zero, sizeof (zero));
+  write (child_err_report_fd, &zero, sizeof (zero));
+  Sleep (10000);
+  return 0;
+}
+
diff --git a/graf2d/win32gdk/gdk/src/glib/gspawn-win32.c b/graf2d/win32gdk/gdk/src/glib/gspawn-win32.c
new file mode 100644
index 00000000000..aa9e3072da1
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gspawn-win32.c
@@ -0,0 +1,984 @@
+/* gspawn-win32.c - Process launching on Win32
+ *
+ *  Copyright 2000 Red Hat, Inc.
+ *
+ * GLib is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * GLib is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with GLib; see the file COPYING.LIB.  If not, write
+ * to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Implementation details on Win32.
+ *
+ * - There is no way to set the no-inherit flag for
+ *   a "file descriptor" in the MS C runtime. The flag is there,
+ *   and the dospawn() function uses it, but unfortunately
+ *   this flag can only be set when opening the file.
+ * - As there is no fork(), we cannot reliably change directory
+ *   before starting the child process. (There might be several threads
+ *   running, and the current directory is common for all threads.)
+ *
+ * Thus, we must in most cases use a helper program to handle closing
+ * of (inherited) file descriptors and changing of directory. In fact,
+ * we do it all the time.
+ */
+
+/* Define this to get some logging all the time */
+/* #define G_SPAWN_WIN32_DEBUG */
+
+#include "glib.h"
+
+#include <string.h>
+#include <stdlib.h>
+#include <stdio.h>
+
+#include <windows.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <io.h>
+#include <process.h>
+#include <direct.h>
+
+#include "glibintl.h"
+
+#ifdef G_SPAWN_WIN32_DEBUG
+  static int debug = 1;
+  #define SETUP_DEBUG() /* empty */
+
+#else
+  static int debug = -1;
+  #define SETUP_DEBUG()					\
+    G_STMT_START					\
+      {							\
+	if (debug == -1)				\
+	  {						\
+	    if (getenv ("G_SPAWN_WIN32_DEBUG") != NULL)	\
+	      debug = 1;				\
+	    else					\
+	      debug = 0;				\
+	  }						\
+      }							\
+    G_STMT_END
+#endif
+
+enum
+{
+  CHILD_NO_ERROR,
+  CHILD_CHDIR_FAILED,
+  CHILD_SPAWN_FAILED,
+};
+
+enum {
+  ARG_CHILD_ERR_REPORT = 1,
+  ARG_STDIN,
+  ARG_STDOUT,
+  ARG_STDERR,
+  ARG_WORKING_DIRECTORY,
+  ARG_CLOSE_DESCRIPTORS,
+  ARG_USE_PATH,
+  ARG_WAIT,
+  ARG_PROGRAM,
+  ARG_COUNT = ARG_PROGRAM
+};
+
+#ifndef GSPAWN_HELPER
+
+static gboolean make_pipe            (gint                  p[2],
+                                      GError              **error);
+static gboolean fork_exec_with_pipes (gboolean              dont_wait,
+				      const gchar          *working_directory,
+                                      gchar               **argv,
+                                      gchar               **envp,
+                                      gboolean              close_descriptors,
+                                      gboolean              search_path,
+                                      gboolean              stdout_to_null,
+                                      gboolean              stderr_to_null,
+                                      gboolean              child_inherits_stdin,
+                                      GSpawnChildSetupFunc  child_setup,
+                                      gpointer              user_data,
+                                      gint                 *standard_input,
+                                      gint                 *standard_output,
+                                      gint                 *standard_error,
+				      gint                 *exit_status,
+                                      GError              **error);
+
+GQuark
+g_spawn_error_quark (void)
+{
+  static GQuark quark = 0;
+  if (quark == 0)
+    quark = g_quark_from_static_string ("g-exec-error-quark");
+  return quark;
+}
+
+/**
+ * g_spawn_async:
+ * @working_directory: child's current working directory, or NULL to inherit parent's
+ * @argv: child's argument vector
+ * @envp: child's environment, or NULL to inherit parent's
+ * @flags: flags from #GSpawnFlags
+ * @child_setup: function to run in the child just before exec()
+ * @user_data: user data for @child_setup
+ * @child_pid: return location for child process ID, or NULL
+ * @error: return location for error
+ * 
+ * See g_spawn_async_with_pipes() for a full description; this function
+ * simply calls the g_spawn_async_with_pipes() without any pipes.
+ * 
+ * Return value: TRUE on success, FALSE if error is set
+ **/
+gboolean
+g_spawn_async (const gchar          *working_directory,
+               gchar               **argv,
+               gchar               **envp,
+               GSpawnFlags           flags,
+               GSpawnChildSetupFunc  child_setup,
+               gpointer              user_data,
+               gint                 *child_pid,
+               GError              **error)
+{
+  g_return_val_if_fail (argv != NULL, FALSE);
+  
+  return g_spawn_async_with_pipes (working_directory,
+                                   argv, envp,
+                                   flags,
+                                   child_setup,
+                                   user_data,
+                                   child_pid,
+                                   NULL, NULL, NULL,
+                                   error);
+}
+
+/* Avoids a danger in threaded situations (calling close()
+ * on a file descriptor twice, and another thread has
+ * re-opened it since the first close)
+ */
+static gint
+close_and_invalidate (gint *fd)
+{
+  gint ret;
+
+  ret = close (*fd);
+  *fd = -1;
+
+  return ret;
+}
+
+typedef enum
+{
+  READ_FAILED = 0, /* FALSE */
+  READ_OK,
+  READ_EOF
+} ReadResult;
+
+static ReadResult
+read_data (GString     *str,
+           GIOChannel  *iochannel,
+           GError     **error)
+{
+  GIOError gioerror;
+  gint bytes;
+  gchar buf[4096];
+
+ again:
+  
+  gioerror = g_io_channel_read (iochannel, buf, sizeof (buf), &bytes);
+
+  if (bytes == 0)
+    return READ_EOF;
+  else if (bytes > 0)
+    {
+      g_string_append_len (str, buf, bytes);
+      return READ_OK;
+    }
+  else if (gioerror == G_IO_ERROR_AGAIN)
+    goto again;
+  else if (gioerror != G_IO_ERROR_NONE)
+    {
+      g_set_error (error,
+                   G_SPAWN_ERROR,
+                   G_SPAWN_ERROR_READ,
+                   _("Failed to read data from child process"));
+      
+      return READ_FAILED;
+    }
+  else
+    return READ_OK;
+}
+
+/**
+ * g_spawn_sync:
+ * @working_directory: child's current working directory, or NULL to inherit parent's
+ * @argv: child's argument vector
+ * @envp: child's environment, or NULL to inherit parent's
+ * @flags: flags from #GSpawnFlags
+ * @child_setup: function to run in the child just before exec()
+ * @user_data: user data for @child_setup
+ * @standard_output: return location for child output 
+ * @standard_error: return location for child error messages
+ * @exit_status: child exit status, as returned by waitpid()
+ * @error: return location for error
+ *
+ * Executes a child synchronously (waits for the child to exit before returning).
+ * All output from the child is stored in @standard_output and @standard_error,
+ * if those parameters are non-NULL. If @exit_status is non-NULL, the exit status
+ * of the child is stored there as it would be by waitpid(); standard UNIX
+ * macros such as WIFEXITED() and WEXITSTATUS() must be used to evaluate the
+ * exit status. If an error occurs, no data is returned in @standard_output,
+ * @standard_error, or @exit_status.
+ * 
+ * This function calls g_spawn_async_with_pipes() internally; see that function
+ * for full details on the other parameters.
+ * 
+ * Return value: TRUE on success, FALSE if an error was set.
+ **/
+gboolean
+g_spawn_sync (const gchar          *working_directory,
+              gchar               **argv,
+              gchar               **envp,
+              GSpawnFlags           flags,
+              GSpawnChildSetupFunc  child_setup,
+              gpointer              user_data,
+              gchar               **standard_output,
+              gchar               **standard_error,
+              gint                 *exit_status,
+              GError              **error)     
+{
+  gint outpipe = -1;
+  gint errpipe = -1;
+  GIOChannel *outchannel = NULL;
+  GIOChannel *errchannel = NULL;
+  GPollFD outfd, errfd;
+  GPollFD fds[2];
+  gint nfds;
+  gint outindex = -1;
+  gint errindex = -1;
+  gint ret;
+  GString *outstr = NULL;
+  GString *errstr = NULL;
+  gboolean failed;
+  gint status;
+  
+  g_return_val_if_fail (argv != NULL, FALSE);
+  g_return_val_if_fail (!(flags & G_SPAWN_DO_NOT_REAP_CHILD), FALSE);
+  g_return_val_if_fail (standard_output == NULL ||
+                        !(flags & G_SPAWN_STDOUT_TO_DEV_NULL), FALSE);
+  g_return_val_if_fail (standard_error == NULL ||
+                        !(flags & G_SPAWN_STDERR_TO_DEV_NULL), FALSE);
+  
+  /* Just to ensure segfaults if callers try to use
+   * these when an error is reported.
+   */
+  if (standard_output)
+    *standard_output = NULL;
+
+  if (standard_error)
+    *standard_error = NULL;
+  
+  if (!fork_exec_with_pipes (FALSE,
+                             working_directory,
+                             argv,
+                             envp,
+                             !(flags & G_SPAWN_LEAVE_DESCRIPTORS_OPEN),
+                             (flags & G_SPAWN_SEARCH_PATH) != 0,
+                             (flags & G_SPAWN_STDOUT_TO_DEV_NULL) != 0,
+                             (flags & G_SPAWN_STDERR_TO_DEV_NULL) != 0,
+                             (flags & G_SPAWN_CHILD_INHERITS_STDIN) != 0,
+                             child_setup,
+                             user_data,
+                             NULL,
+                             standard_output ? &outpipe : NULL,
+                             standard_error ? &errpipe : NULL,
+			     &status,
+                             error))
+    return FALSE;
+
+  /* Read data from child. */
+  
+  failed = FALSE;
+
+  if (outpipe >= 0)
+    {
+      outstr = g_string_new ("");
+      outchannel = g_io_channel_win32_new_fd (outpipe);
+      g_io_channel_win32_make_pollfd (outchannel,
+				      G_IO_IN | G_IO_ERR | G_IO_HUP,
+				      &outfd);
+    }
+      
+  if (errpipe >= 0)
+    {
+      errstr = g_string_new ("");
+      errchannel = g_io_channel_win32_new_fd (errpipe);
+      g_io_channel_win32_make_pollfd (errchannel,
+				      G_IO_IN | G_IO_ERR | G_IO_HUP,
+				      &errfd);
+    }
+
+  /* Read data until we get EOF on both pipes. */
+  while (!failed &&
+         (outpipe >= 0 ||
+          errpipe >= 0))
+    {
+      nfds = 0;
+      if (outpipe >= 0)
+	{
+	  fds[nfds] = outfd;
+	  outindex = nfds;
+	  nfds++;
+	}
+      if (errpipe >= 0)
+	{
+	  fds[nfds] = errfd;
+	  errindex = nfds;
+	  nfds++;
+	}
+
+      if (debug)
+	g_print ("%s:g_spawn_sync: calling g_io_channel_win32_poll, nfds=%d\n",
+		 __FILE__, nfds);
+
+      ret = g_io_channel_win32_poll (fds, nfds, -1);
+
+      if (ret < 0)
+        {
+          failed = TRUE;
+
+          g_set_error (error,
+                       G_SPAWN_ERROR,
+                       G_SPAWN_ERROR_READ,
+                       _("Unexpected error in g_io_channel_win32_poll() reading data from a child process"));
+              
+          break;
+        }
+
+      if (outpipe >= 0 && (fds[outindex].revents & G_IO_IN))
+        {
+          switch (read_data (outstr, outchannel, error))
+            {
+            case READ_FAILED:
+	      if (debug)
+		g_print ("g_spawn_sync: outchannel: READ_FAILED\n");
+              failed = TRUE;
+              break;
+            case READ_EOF:
+	      if (debug)
+		g_print ("g_spawn_sync: outchannel: READ_EOF\n");
+              g_io_channel_unref (outchannel);
+	      outchannel = NULL;
+              close_and_invalidate (&outpipe);
+              break;
+            default:
+	      if (debug)
+		g_print ("g_spawn_sync: outchannel: OK\n");
+              break;
+            }
+
+          if (failed)
+            break;
+        }
+
+      if (errpipe >= 0 && (fds[errindex].revents & G_IO_IN))
+        {
+          switch (read_data (errstr, errchannel, error))
+            {
+            case READ_FAILED:
+	      if (debug)
+		g_print ("g_spawn_sync: errchannel: READ_FAILED\n");
+              failed = TRUE;
+              break;
+            case READ_EOF:
+	      if (debug)
+		g_print ("g_spawn_sync: errchannel: READ_EOF\n");
+	      g_io_channel_unref (errchannel);
+	      errchannel = NULL;
+              close_and_invalidate (&errpipe);
+              break;
+            default:
+	      if (debug)
+		g_print ("g_spawn_sync: errchannel: OK\n");
+              break;
+            }
+
+          if (failed)
+            break;
+        }
+    }
+
+  /* These should only be open still if we had an error.  */
+  
+  if (outchannel != NULL)
+    g_io_channel_unref (outchannel);
+  if (errchannel != NULL)
+    g_io_channel_unref (errchannel);
+  if (outpipe >= 0)
+    close_and_invalidate (&outpipe);
+  if (errpipe >= 0)
+    close_and_invalidate (&errpipe);
+  
+  if (failed)
+    {
+      if (outstr)
+        g_string_free (outstr, TRUE);
+      if (errstr)
+        g_string_free (errstr, TRUE);
+
+      return FALSE;
+    }
+  else
+    {
+      if (exit_status)
+        *exit_status = status;
+      
+      if (standard_output)        
+        *standard_output = g_string_free (outstr, FALSE);
+
+      if (standard_error)
+        *standard_error = g_string_free (errstr, FALSE);
+
+      return TRUE;
+    }
+}
+
+/**
+ * g_spawn_async_with_pipes:
+ * @working_directory: child's current working directory, or NULL to inherit parent's
+ * @argv: child's argument vector
+ * @envp: child's environment, or NULL to inherit parent's
+ * @flags: flags from #GSpawnFlags
+ * @child_setup: function to run in the child just before exec()
+ * @user_data: user data for @child_setup
+ * @child_pid: return location for child process ID, or NULL
+ * @standard_input: return location for file descriptor to write to child's stdin, or NULL
+ * @standard_output: return location for file descriptor to read child's stdout, or NULL
+ * @standard_error: return location for file descriptor to read child's stderr, or NULL
+ * @error: return location for error
+ *
+ * Executes a child program asynchronously (your program will not
+ * block waiting for the child to exit). The child program is
+ * specified by the only argument that must be provided, @argv. @argv
+ * should be a NULL-terminated array of strings, to be passed as the
+ * argument vector for the child. The first string in @argv is of
+ * course the name of the program to execute. By default, the name of
+ * the program must be a full path; the PATH shell variable will only
+ * be searched if you pass the %G_SPAWN_SEARCH_PATH flag.
+ *
+ * @envp is a NULL-terminated array of strings, where each string
+ * has the form <literal>KEY=VALUE</literal>. This will become
+ * the child's environment. If @envp is NULL, the child inherits its
+ * parent's environment.
+ *
+ * @flags should be the bitwise OR of any flags you want to affect the
+ * function's behavior. The %G_SPAWN_DO_NOT_REAP_CHILD means that the
+ * child will not be automatically reaped; you must call waitpid() or
+ * handle SIGCHLD yourself, or the child will become a zombie.
+ * %G_SPAWN_LEAVE_DESCRIPTORS_OPEN means that the parent's open file
+ * descriptors will be inherited by the child; otherwise all
+ * descriptors except stdin/stdout/stderr will be closed before
+ * calling exec() in the child. %G_SPAWN_SEARCH_PATH means that
+ * <literal>argv[0]</literal> need not be an absolute path, it
+ * will be looked for in the user's PATH. %G_SPAWN_STDOUT_TO_DEV_NULL
+ * means that the child's standad output will be discarded, instead
+ * of going to the same location as the parent's standard output.
+ * %G_SPAWN_STDERR_TO_DEV_NULL means that the child's standard error
+ * will be discarded. %G_SPAWN_CHILD_INHERITS_STDIN means that
+ * the child will inherit the parent's standard input (by default,
+ * the child's standard input is attached to /dev/null).
+ *
+ * @child_setup and @user_data are a function and user data to be
+ * called in the child after GLib has performed all the setup it plans
+ * to perform (including creating pipes, closing file descriptors,
+ * etc.) but before calling exec(). That is, @child_setup is called
+ * just before calling exec() in the child. Obviously actions taken in
+ * this function will only affect the child, not the parent. 
+ *
+ * If non-NULL, @child_pid will be filled with the child's process
+ * ID. You can use the process ID to send signals to the child, or
+ * to waitpid() if you specified the %G_SPAWN_DO_NOT_REAP_CHILD flag.
+ *
+ * If non-NULL, the @standard_input, @standard_output, @standard_error
+ * locations will be filled with file descriptors for writing to the child's
+ * standard input or reading from its standard output or standard error.
+ * The caller of g_spawn_async_with_pipes() must close these file descriptors
+ * when they are no longer in use. If these parameters are NULL, the
+ * corresponding pipe won't be created.
+ *
+ * @error can be NULL to ignore errors, or non-NULL to report errors.
+ * If an error is set, the function returns FALSE. Errors
+ * are reported even if they occur in the child (for example if the
+ * executable in <literal>argv[0]</literal> is not found). Typically
+ * the <literal>message</literal> field of returned errors should be displayed
+ * to users. Possible errors are those from the #G_SPAWN_ERROR domain.
+ *
+ * If an error occurs, @child_pid, @standard_input, @standard_output,
+ * and @standard_error will not be filled with valid values.
+ * 
+ * Return value: TRUE on success, FALSE if an error was set
+ **/
+gboolean
+g_spawn_async_with_pipes (const gchar          *working_directory,
+                          gchar               **argv,
+                          gchar               **envp,
+                          GSpawnFlags           flags,
+                          GSpawnChildSetupFunc  child_setup,
+                          gpointer              user_data,
+                          gint                 *child_pid,
+                          gint                 *standard_input,
+                          gint                 *standard_output,
+                          gint                 *standard_error,
+                          GError              **error)
+{
+  g_return_val_if_fail (argv != NULL, FALSE);
+  g_return_val_if_fail (standard_output == NULL ||
+                        !(flags & G_SPAWN_STDOUT_TO_DEV_NULL), FALSE);
+  g_return_val_if_fail (standard_error == NULL ||
+                        !(flags & G_SPAWN_STDERR_TO_DEV_NULL), FALSE);
+  /* can't inherit stdin if we have an input pipe. */
+  g_return_val_if_fail (standard_input == NULL ||
+                        !(flags & G_SPAWN_CHILD_INHERITS_STDIN), FALSE);
+  
+  return fork_exec_with_pipes (!(flags & G_SPAWN_DO_NOT_REAP_CHILD),
+                               working_directory,
+                               argv,
+                               envp,
+                               !(flags & G_SPAWN_LEAVE_DESCRIPTORS_OPEN),
+                               (flags & G_SPAWN_SEARCH_PATH) != 0,
+                               (flags & G_SPAWN_STDOUT_TO_DEV_NULL) != 0,
+                               (flags & G_SPAWN_STDERR_TO_DEV_NULL) != 0,
+                               (flags & G_SPAWN_CHILD_INHERITS_STDIN) != 0,
+                               child_setup,
+                               user_data,
+                               standard_input,
+                               standard_output,
+                               standard_error,
+			       NULL,
+                               error);
+}
+
+/**
+ * g_spawn_command_line_sync:
+ * @command_line: a command line 
+ * @standard_output: return location for child output
+ * @standard_error: return location for child errors
+ * @exit_status: return location for child exit status
+ * @error: return location for errors
+ *
+ * A simple version of g_spawn_sync() with little-used parameters
+ * removed, taking a command line instead of an argument vector.  See
+ * g_spawn_sync() for full details. @command_line will be parsed by
+ * g_shell_parse_argv(). Unlike g_spawn_sync(), the %G_SPAWN_SEARCH_PATH flag
+ * is enabled. Note that %G_SPAWN_SEARCH_PATH can have security
+ * implications, so consider using g_spawn_sync() directly if
+ * appropriate. Possible errors are those from g_spawn_sync() and those
+ * from g_shell_parse_argv().
+ * 
+ * Return value: TRUE on success, FALSE if an error was set
+ **/
+gboolean
+g_spawn_command_line_sync (const gchar  *command_line,
+                           gchar       **standard_output,
+                           gchar       **standard_error,
+                           gint         *exit_status,
+                           GError      **error)
+{
+  gboolean retval;
+  gchar **argv = 0;
+
+  g_return_val_if_fail (command_line != NULL, FALSE);
+  
+  if (!g_shell_parse_argv (command_line,
+                           NULL, &argv,
+                           error))
+    return FALSE;
+  
+  retval = g_spawn_sync (NULL,
+                         argv,
+                         NULL,
+                         G_SPAWN_SEARCH_PATH,
+                         NULL,
+                         NULL,
+                         standard_output,
+                         standard_error,
+                         exit_status,
+                         error);
+  g_strfreev (argv);
+
+  return retval;
+}
+
+/**
+ * g_spawn_command_line_async:
+ * @command_line: a command line
+ * @error: return location for errors
+ * 
+ * A simple version of g_spawn_async() that parses a command line with
+ * g_shell_parse_argv() and passes it to g_spawn_async(). Runs a
+ * command line in the background. Unlike g_spawn_async(), the
+ * %G_SPAWN_SEARCH_PATH flag is enabled, other flags are not. Note
+ * that %G_SPAWN_SEARCH_PATH can have security implications, so
+ * consider using g_spawn_async() directly if appropriate. Possible
+ * errors are those from g_shell_parse_argv() and g_spawn_async().
+ * 
+ * Return value: TRUE on success, FALSE if error is set.
+ **/
+gboolean
+g_spawn_command_line_async (const gchar *command_line,
+                            GError     **error)
+{
+  gboolean retval;
+  gchar **argv = 0;
+
+  g_return_val_if_fail (command_line != NULL, FALSE);
+
+  if (!g_shell_parse_argv (command_line,
+                           NULL, &argv,
+                           error))
+    return FALSE;
+  
+  retval = g_spawn_async (NULL,
+                          argv,
+                          NULL,
+                          G_SPAWN_SEARCH_PATH,
+                          NULL,
+                          NULL,
+                          NULL,
+                          error);
+  g_strfreev (argv);
+
+  return retval;
+}
+
+static gint
+do_exec (gboolean              dont_wait,
+	 gint                  child_err_report_fd,
+         gint                  stdin_fd,
+         gint                  stdout_fd,
+         gint                  stderr_fd,
+         const gchar          *working_directory,
+         gchar               **argv,
+         gchar               **envp,
+         gboolean              close_descriptors,
+         gboolean              search_path,
+         gboolean              stdout_to_null,
+         gboolean              stderr_to_null,
+         gboolean              child_inherits_stdin,
+         GSpawnChildSetupFunc  child_setup,
+         gpointer              user_data)
+{
+  const gchar **new_argv;
+  gchar args[ARG_COUNT][10];
+  gint i;
+  int argc = 0;
+
+  SETUP_DEBUG();
+
+  while (argv[argc])
+    ++argc;
+
+  new_argv = g_new (gchar *, argc + 1 + ARG_COUNT);
+
+  new_argv[0] = "gspawn-win32-helper";
+  sprintf (args[ARG_CHILD_ERR_REPORT], "%d", child_err_report_fd);
+  new_argv[ARG_CHILD_ERR_REPORT] = args[ARG_CHILD_ERR_REPORT];
+
+  if (stdin_fd >= 0)
+    {
+      sprintf (args[ARG_STDIN], "%d", stdin_fd);
+      new_argv[ARG_STDIN] = args[ARG_STDIN];
+    }
+  else if (child_inherits_stdin)
+    {
+      /* Let stdin be alone */
+      new_argv[ARG_STDIN] = "-";
+    }
+  else
+    {
+      /* Keep process from blocking on a read of stdin */
+      new_argv[ARG_STDIN] = "z";
+    }
+
+  if (stdout_fd >= 0)
+    {
+      sprintf (args[ARG_STDOUT], "%d", stdout_fd);
+      new_argv[ARG_STDOUT] = args[ARG_STDOUT];
+    }
+  else if (stdout_to_null)
+    {
+      new_argv[ARG_STDOUT] = "z";
+    }
+  else
+    {
+      new_argv[ARG_STDOUT] = "-";
+    }
+
+  if (stderr_fd >= 0)
+    {
+      sprintf (args[ARG_STDERR], "%d", stderr_fd);
+      new_argv[ARG_STDERR] = args[ARG_STDERR];
+    }
+  else if (stderr_to_null)
+    {
+      new_argv[ARG_STDERR] = "z";
+    }
+  else
+    {
+      new_argv[ARG_STDERR] = "-";
+    }
+
+  if (working_directory && *working_directory)
+    new_argv[ARG_WORKING_DIRECTORY] = working_directory;
+  else
+    new_argv[ARG_WORKING_DIRECTORY] = "-";
+
+  if (close_descriptors)
+    new_argv[ARG_CLOSE_DESCRIPTORS] = "y";
+  else
+    new_argv[ARG_CLOSE_DESCRIPTORS] = "-";
+
+  if (search_path)
+    new_argv[ARG_USE_PATH] = "y";
+  else
+    new_argv[ARG_USE_PATH] = "-";
+
+  if (dont_wait)
+    new_argv[ARG_WAIT] = "-";
+  else
+    new_argv[ARG_WAIT] = "w";
+
+  for (i = 0; i <= argc; i++)
+    new_argv[ARG_PROGRAM + i] = argv[i];
+
+  /* Call user function just before we execute the helper program,
+   * which executes the program. Dunno what's the usefulness of this.
+   * A child setup function used on Unix probably isn't of much use
+   * as such on Win32, anyhow.
+   */
+  if (child_setup)
+    {
+      (* child_setup) (user_data);
+    }
+
+  if (debug)
+    {
+      g_print ("calling gspawn-win32-helper with argv:\n");
+      for (i = 0; i < argc + 1 + ARG_COUNT; i++)
+	g_print ("argv[%d]: %s\n", i, (new_argv[i] ? new_argv[i] : "NULL"));
+    }
+  
+  if (envp != NULL)
+    /* Let's hope envp hasn't mucked with PATH so that
+     * gspawn-win32-helper.exe isn't found.
+     */
+    spawnvpe (P_NOWAIT, "gspawn-win32-helper", new_argv, envp);
+  else
+    spawnvp (P_NOWAIT, "gspawn-win32-helper", new_argv);
+
+  /* FIXME: What if gspawn-win32-helper.exe isn't found? */
+
+  /* Close the child_err_report_fd and the other process's ends of the
+   * pipes in this process, otherwise the reader will never get
+   * EOF.
+   */
+  close (child_err_report_fd);
+  if (stdin_fd >= 0)
+    close (stdin_fd);
+  if (stdout_fd >= 0)
+    close (stdout_fd);
+  if (stderr_fd >= 0)
+    close (stderr_fd);
+
+  g_free ((void*)new_argv);
+
+  return 0;
+}
+
+static gboolean
+read_ints (int      fd,
+           gint*    buf,
+           gint     n_ints_in_buf,
+           gint    *n_ints_read,
+           GError **error)
+{
+  gint bytes = 0;
+  
+  while (bytes < sizeof(gint)*n_ints_in_buf)
+    {
+      gint chunk;
+
+      if (debug)
+	g_print ("%s:read_ints: trying to read %d bytes from pipe...\n",
+		 __FILE__,
+		 sizeof(gint)*n_ints_in_buf - bytes);
+
+      chunk = read (fd, ((gchar*)buf) + bytes,
+		    sizeof(gint)*n_ints_in_buf - bytes);
+
+      if (debug)
+	g_print ("... got %d bytes\n", chunk);
+          
+      if (chunk < 0)
+        {
+          /* Some weird shit happened, bail out */
+              
+          g_set_error (error,
+                       G_SPAWN_ERROR,
+                       G_SPAWN_ERROR_FAILED,
+                       _("Failed to read from child pipe (%s)"),
+                       g_strerror (errno));
+
+          return FALSE;
+        }
+      else if (chunk == 0)
+        break; /* EOF */
+      else
+	bytes += chunk;
+    }
+
+  *n_ints_read = bytes/sizeof(gint);
+
+  return TRUE;
+}
+
+static gboolean
+fork_exec_with_pipes (gboolean              dont_wait,
+                      const gchar          *working_directory,
+                      gchar               **argv,
+                      gchar               **envp,
+                      gboolean              close_descriptors,
+                      gboolean              search_path,
+                      gboolean              stdout_to_null,
+                      gboolean              stderr_to_null,
+		      gboolean              child_inherits_stdin,
+                      GSpawnChildSetupFunc  child_setup,
+                      gpointer              user_data,
+                      gint                 *standard_input,
+                      gint                 *standard_output,
+                      gint                 *standard_error,
+		      gint                 *exit_status,
+                      GError              **error)     
+{
+  gint stdin_pipe[2] = { -1, -1 };
+  gint stdout_pipe[2] = { -1, -1 };
+  gint stderr_pipe[2] = { -1, -1 };
+  gint child_err_report_pipe[2] = { -1, -1 };
+  gint status;
+  //gint bytes;
+  gint buf[2];
+  gint n_ints = 0;
+  
+  if (!make_pipe (child_err_report_pipe, error))
+    return FALSE;
+
+  if (standard_input && !make_pipe (stdin_pipe, error))
+    goto cleanup_and_fail;
+  
+  if (standard_output && !make_pipe (stdout_pipe, error))
+    goto cleanup_and_fail;
+
+  if (standard_error && !make_pipe (stderr_pipe, error))
+    goto cleanup_and_fail;
+
+  status = do_exec (dont_wait,
+		    child_err_report_pipe[1],
+		    stdin_pipe[0],
+		    stdout_pipe[1],
+		    stderr_pipe[1],
+		    working_directory,
+		    argv,
+		    envp,
+		    close_descriptors,
+		    search_path,
+		    stdout_to_null,
+		    stderr_to_null,
+		    child_inherits_stdin,
+		    child_setup,
+		    user_data);
+      
+  if (!read_ints (child_err_report_pipe[0],
+		  buf, 2, &n_ints,
+		  error))
+    goto cleanup_and_fail;
+        
+  if (n_ints == 2)
+    {
+      /* Error from the child. */
+      
+      switch (buf[0])
+	{
+	case CHILD_NO_ERROR:
+	  break;
+	  
+	case CHILD_CHDIR_FAILED:
+	  g_set_error (error,
+		       G_SPAWN_ERROR,
+		       G_SPAWN_ERROR_CHDIR,
+		       _("Failed to change to directory '%s' (%s)"),
+		       working_directory,
+		       g_strerror (buf[1]));
+	  goto cleanup_and_fail;
+	  
+	case CHILD_SPAWN_FAILED:
+	  g_set_error (error,
+		       G_SPAWN_ERROR,
+		       G_SPAWN_ERROR_FAILED,
+		       _("Failed to execute child process (%s)"),
+		       g_strerror (buf[1]));
+	  goto cleanup_and_fail;
+	}
+    }
+
+  /* Success against all odds! return the information */
+      
+  if (standard_input)
+    *standard_input = stdin_pipe[1];
+  if (standard_output)
+    *standard_output = stdout_pipe[0];
+  if (standard_error)
+    *standard_error = stderr_pipe[0];
+  if (exit_status)
+    *exit_status = status;
+  
+  return TRUE;
+
+ cleanup_and_fail:
+  close_and_invalidate (&child_err_report_pipe[0]);
+  close_and_invalidate (&child_err_report_pipe[1]);
+  close_and_invalidate (&stdin_pipe[0]);
+  close_and_invalidate (&stdin_pipe[1]);
+  close_and_invalidate (&stdout_pipe[0]);
+  close_and_invalidate (&stdout_pipe[1]);
+  close_and_invalidate (&stderr_pipe[0]);
+  close_and_invalidate (&stderr_pipe[1]);
+
+  return FALSE;
+}
+
+static gboolean
+make_pipe (gint     p[2],
+           GError **error)
+{
+  if (pipe (p) < 0)
+    {
+      g_set_error (error,
+                   G_SPAWN_ERROR,
+                   G_SPAWN_ERROR_FAILED,
+                   _("Failed to create pipe for communicating with child process (%s)"),
+                   g_strerror (errno));
+      return FALSE;
+    }
+  else
+    return TRUE;
+}
+
+#endif /* !GSPAWN_HELPER */
diff --git a/graf2d/win32gdk/gdk/src/glib/gspawn.c b/graf2d/win32gdk/gdk/src/glib/gspawn.c
new file mode 100644
index 00000000000..8dc0e4b131c
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gspawn.c
@@ -0,0 +1,1404 @@
+/* gspawn.c - Process launching
+ *
+ *  Copyright 2000 Red Hat, Inc.
+ *  g_execvpe implementation based on GNU libc execvp:
+ *   Copyright 1991, 92, 95, 96, 97, 98, 99 Free Software Foundation, Inc.
+ *
+ * GLib is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * GLib is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with GLib; see the file COPYING.LIB.  If not, write
+ * to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#include "glib.h"
+#include <sys/time.h>
+#include <sys/types.h>
+#include <sys/wait.h>
+#include <unistd.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <signal.h>
+#include <string.h>
+
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#endif /* HAVE_SYS_SELECT_H */
+
+#include "glibintl.h"
+
+static gint g_execute (const gchar  *file,
+                       gchar **argv,
+                       gchar **envp,
+                       gboolean search_path);
+
+static gboolean make_pipe            (gint                  p[2],
+                                      GError              **error);
+static gboolean fork_exec_with_pipes (gboolean              intermediate_child,
+                                      const gchar          *working_directory,
+                                      gchar               **argv,
+                                      gchar               **envp,
+                                      gboolean              close_descriptors,
+                                      gboolean              search_path,
+                                      gboolean              stdout_to_null,
+                                      gboolean              stderr_to_null,
+                                      gboolean              child_inherits_stdin,
+                                      gboolean              file_and_argv_zero,
+                                      GSpawnChildSetupFunc  child_setup,
+                                      gpointer              user_data,
+                                      gint                 *child_pid,
+                                      gint                 *standard_input,
+                                      gint                 *standard_output,
+                                      gint                 *standard_error,
+                                      GError              **error);
+
+GQuark
+g_spawn_error_quark (void)
+{
+  static GQuark quark = 0;
+  if (quark == 0)
+    quark = g_quark_from_static_string ("g-exec-error-quark");
+  return quark;
+}
+
+/**
+ * g_spawn_async:
+ * @working_directory: child's current working directory, or NULL to inherit parent's
+ * @argv: child's argument vector
+ * @envp: child's environment, or NULL to inherit parent's
+ * @flags: flags from #GSpawnFlags
+ * @child_setup: function to run in the child just before exec()
+ * @user_data: user data for @child_setup
+ * @child_pid: return location for child process ID, or NULL
+ * @error: return location for error
+ * 
+ * See g_spawn_async_with_pipes() for a full description; this function
+ * simply calls the g_spawn_async_with_pipes() without any pipes.
+ * 
+ * Return value: TRUE on success, FALSE if error is set
+ **/
+gboolean
+g_spawn_async (const gchar          *working_directory,
+               gchar               **argv,
+               gchar               **envp,
+               GSpawnFlags           flags,
+               GSpawnChildSetupFunc  child_setup,
+               gpointer              user_data,
+               gint                 *child_pid,
+               GError              **error)
+{
+  g_return_val_if_fail (argv != NULL, FALSE);
+  
+  return g_spawn_async_with_pipes (working_directory,
+                                   argv, envp,
+                                   flags,
+                                   child_setup,
+                                   user_data,
+                                   child_pid,
+                                   NULL, NULL, NULL,
+                                   error);
+}
+
+/* Avoids a danger in threaded situations (calling close()
+ * on a file descriptor twice, and another thread has
+ * re-opened it since the first close)
+ */
+static gint
+close_and_invalidate (gint *fd)
+{
+  gint ret;
+
+  ret = close (*fd);
+  *fd = -1;
+
+  return ret;
+}
+
+typedef enum
+{
+  READ_FAILED = 0, /* FALSE */
+  READ_OK,
+  READ_EOF
+} ReadResult;
+
+static ReadResult
+read_data (GString *str,
+           gint     fd,
+           GError **error)
+{
+  gssize bytes;        
+  gchar buf[4096];    
+
+ again:
+  
+  bytes = read (fd, &buf, 4096);
+
+  if (bytes == 0)
+    return READ_EOF;
+  else if (bytes > 0)
+    {
+      g_string_append_len (str, buf, bytes);
+      return READ_OK;
+    }
+  else if (bytes < 0 && errno == EINTR)
+    goto again;
+  else if (bytes < 0)
+    {
+      g_set_error (error,
+                   G_SPAWN_ERROR,
+                   G_SPAWN_ERROR_READ,
+                   _("Failed to read data from child process (%s)"),
+                   g_strerror (errno));
+      
+      return READ_FAILED;
+    }
+  else
+    return READ_OK;
+}
+
+/**
+ * g_spawn_sync:
+ * @working_directory: child's current working directory, or NULL to inherit parent's
+ * @argv: child's argument vector
+ * @envp: child's environment, or NULL to inherit parent's
+ * @flags: flags from #GSpawnFlags
+ * @child_setup: function to run in the child just before exec()
+ * @user_data: user data for @child_setup
+ * @standard_output: return location for child output 
+ * @standard_error: return location for child error messages
+ * @exit_status: child exit status, as returned by waitpid()
+ * @error: return location for error
+ *
+ * Executes a child synchronously (waits for the child to exit before returning).
+ * All output from the child is stored in @standard_output and @standard_error,
+ * if those parameters are non-NULL. If @exit_status is non-NULL, the exit status
+ * of the child is stored there as it would be by waitpid(); standard UNIX
+ * macros such as WIFEXITED() and WEXITSTATUS() must be used to evaluate the
+ * exit status. If an error occurs, no data is returned in @standard_output,
+ * @standard_error, or @exit_status.
+ * 
+ * This function calls g_spawn_async_with_pipes() internally; see that function
+ * for full details on the other parameters.
+ * 
+ * Return value: TRUE on success, FALSE if an error was set.
+ **/
+gboolean
+g_spawn_sync (const gchar          *working_directory,
+              gchar               **argv,
+              gchar               **envp,
+              GSpawnFlags           flags,
+              GSpawnChildSetupFunc  child_setup,
+              gpointer              user_data,
+              gchar               **standard_output,
+              gchar               **standard_error,
+              gint                 *exit_status,
+              GError              **error)     
+{
+  gint outpipe = -1;
+  gint errpipe = -1;
+  gint pid;
+  fd_set fds;
+  gint ret;
+  GString *outstr = NULL;
+  GString *errstr = NULL;
+  gboolean failed;
+  gint status;
+  
+  g_return_val_if_fail (argv != NULL, FALSE);
+  g_return_val_if_fail (!(flags & G_SPAWN_DO_NOT_REAP_CHILD), FALSE);
+  g_return_val_if_fail (standard_output == NULL ||
+                        !(flags & G_SPAWN_STDOUT_TO_DEV_NULL), FALSE);
+  g_return_val_if_fail (standard_error == NULL ||
+                        !(flags & G_SPAWN_STDERR_TO_DEV_NULL), FALSE);
+  
+  /* Just to ensure segfaults if callers try to use
+   * these when an error is reported.
+   */
+  if (standard_output)
+    *standard_output = NULL;
+
+  if (standard_error)
+    *standard_error = NULL;
+  
+  if (!fork_exec_with_pipes (FALSE,
+                             working_directory,
+                             argv,
+                             envp,
+                             !(flags & G_SPAWN_LEAVE_DESCRIPTORS_OPEN),
+                             (flags & G_SPAWN_SEARCH_PATH) != 0,
+                             (flags & G_SPAWN_STDOUT_TO_DEV_NULL) != 0,
+                             (flags & G_SPAWN_STDERR_TO_DEV_NULL) != 0,
+                             (flags & G_SPAWN_CHILD_INHERITS_STDIN) != 0,
+                             (flags & G_SPAWN_FILE_AND_ARGV_ZERO) != 0,
+                             child_setup,
+                             user_data,
+                             &pid,
+                             NULL,
+                             standard_output ? &outpipe : NULL,
+                             standard_error ? &errpipe : NULL,
+                             error))
+    return FALSE;
+
+  /* Read data from child. */
+  
+  failed = FALSE;
+
+  if (outpipe >= 0)
+    {
+      outstr = g_string_new ("");
+    }
+      
+  if (errpipe >= 0)
+    {
+      errstr = g_string_new ("");
+    }
+
+  /* Read data until we get EOF on both pipes. */
+  while (!failed &&
+         (outpipe >= 0 ||
+          errpipe >= 0))
+    {
+      ret = 0;
+          
+      FD_ZERO (&fds);
+      if (outpipe >= 0)
+        FD_SET (outpipe, &fds);
+      if (errpipe >= 0)
+        FD_SET (errpipe, &fds);
+          
+      ret = select (MAX (outpipe, errpipe) + 1,
+                    &fds,
+                    NULL, NULL,
+                    NULL /* no timeout */);
+
+      if (ret < 0 && errno != EINTR)
+        {
+          failed = TRUE;
+
+          g_set_error (error,
+                       G_SPAWN_ERROR,
+                       G_SPAWN_ERROR_READ,
+                       _("Unexpected error in select() reading data from a child process (%s)"),
+                       g_strerror (errno));
+              
+          break;
+        }
+
+      if (outpipe >= 0 && FD_ISSET (outpipe, &fds))
+        {
+          switch (read_data (outstr, outpipe, error))
+            {
+            case READ_FAILED:
+              failed = TRUE;
+              break;
+            case READ_EOF:
+              close_and_invalidate (&outpipe);
+              outpipe = -1;
+              break;
+            default:
+              break;
+            }
+
+          if (failed)
+            break;
+        }
+
+      if (errpipe >= 0 && FD_ISSET (errpipe, &fds))
+        {
+          switch (read_data (errstr, errpipe, error))
+            {
+            case READ_FAILED:
+              failed = TRUE;
+              break;
+            case READ_EOF:
+              close_and_invalidate (&errpipe);
+              errpipe = -1;
+              break;
+            default:
+              break;
+            }
+
+          if (failed)
+            break;
+        }
+    }
+
+  /* These should only be open still if we had an error.  */
+  
+  if (outpipe >= 0)
+    close_and_invalidate (&outpipe);
+  if (errpipe >= 0)
+    close_and_invalidate (&errpipe);
+  
+  /* Wait for child to exit, even if we have
+   * an error pending.
+   */
+ again:
+      
+  ret = waitpid (pid, &status, 0);
+
+  if (ret < 0)
+    {
+      if (errno == EINTR)
+        goto again;
+      else if (errno == ECHILD)
+        {
+          if (exit_status)
+            {
+              g_warning ("In call to g_spawn_sync(), exit status of a child process was requested but SIGCHLD action was set to SIG_IGN and ECHILD was received by waitpid(), so exit status can't be returned. This is a bug in the program calling g_spawn_sync(); either don't request the exit status, or don't set the SIGCHLD action.");
+            }
+          else
+            {
+              /* We don't need the exit status. */
+            }
+        }
+      else
+        {
+          if (!failed) /* avoid error pileups */
+            {
+              failed = TRUE;
+                  
+              g_set_error (error,
+                           G_SPAWN_ERROR,
+                           G_SPAWN_ERROR_READ,
+                           _("Unexpected error in waitpid() (%s)"),
+                           g_strerror (errno));
+            }
+        }
+    }
+  
+  if (failed)
+    {
+      if (outstr)
+        g_string_free (outstr, TRUE);
+      if (errstr)
+        g_string_free (errstr, TRUE);
+
+      return FALSE;
+    }
+  else
+    {
+      if (exit_status)
+        *exit_status = status;
+      
+      if (standard_output)        
+        *standard_output = g_string_free (outstr, FALSE);
+
+      if (standard_error)
+        *standard_error = g_string_free (errstr, FALSE);
+
+      return TRUE;
+    }
+}
+
+/**
+ * g_spawn_async_with_pipes:
+ * @working_directory: child's current working directory, or NULL to inherit parent's
+ * @argv: child's argument vector
+ * @envp: child's environment, or NULL to inherit parent's
+ * @flags: flags from #GSpawnFlags
+ * @child_setup: function to run in the child just before exec()
+ * @user_data: user data for @child_setup
+ * @child_pid: return location for child process ID, or NULL
+ * @standard_input: return location for file descriptor to write to child's stdin, or NULL
+ * @standard_output: return location for file descriptor to read child's stdout, or NULL
+ * @standard_error: return location for file descriptor to read child's stderr, or NULL
+ * @error: return location for error
+ *
+ * Executes a child program asynchronously (your program will not
+ * block waiting for the child to exit). The child program is
+ * specified by the only argument that must be provided, @argv. @argv
+ * should be a NULL-terminated array of strings, to be passed as the
+ * argument vector for the child. The first string in @argv is of
+ * course the name of the program to execute. By default, the name of
+ * the program must be a full path; the PATH shell variable will only
+ * be searched if you pass the %G_SPAWN_SEARCH_PATH flag.
+ *
+ * @envp is a NULL-terminated array of strings, where each string
+ * has the form <literal>KEY=VALUE</literal>. This will become
+ * the child's environment. If @envp is NULL, the child inherits its
+ * parent's environment.
+ *
+ * @flags should be the bitwise OR of any flags you want to affect the
+ * function's behavior. The %G_SPAWN_DO_NOT_REAP_CHILD means that the
+ * child will not be automatically reaped; you must call waitpid() or
+ * handle SIGCHLD yourself, or the child will become a zombie.
+ * %G_SPAWN_LEAVE_DESCRIPTORS_OPEN means that the parent's open file
+ * descriptors will be inherited by the child; otherwise all
+ * descriptors except stdin/stdout/stderr will be closed before
+ * calling exec() in the child. %G_SPAWN_SEARCH_PATH means that
+ * <literal>argv[0]</literal> need not be an absolute path, it
+ * will be looked for in the user's PATH. %G_SPAWN_STDOUT_TO_DEV_NULL
+ * means that the child's standad output will be discarded, instead
+ * of going to the same location as the parent's standard output.
+ * %G_SPAWN_STDERR_TO_DEV_NULL means that the child's standard error
+ * will be discarded. %G_SPAWN_CHILD_INHERITS_STDIN means that
+ * the child will inherit the parent's standard input (by default,
+ * the child's standard input is attached to /dev/null).
+ * %G_SPAWN_FILE_AND_ARGV_ZERO means that the first element of @argv is
+ * the file to execute, while the remaining elements are the
+ * actual argument vector to pass to the file. Normally
+ * g_spawn_async_with_pipes() uses @argv[0] as the file to execute, and
+ * passes all of @argv to the child.
+ *
+ * @child_setup and @user_data are a function and user data to be
+ * called in the child after GLib has performed all the setup it plans
+ * to perform (including creating pipes, closing file descriptors,
+ * etc.) but before calling exec(). That is, @child_setup is called
+ * just before calling exec() in the child. Obviously actions taken in
+ * this function will only affect the child, not the parent. 
+ *
+ * If non-NULL, @child_pid will be filled with the child's process
+ * ID. You can use the process ID to send signals to the child, or
+ * to waitpid() if you specified the %G_SPAWN_DO_NOT_REAP_CHILD flag.
+ *
+ * If non-NULL, the @standard_input, @standard_output, @standard_error
+ * locations will be filled with file descriptors for writing to the child's
+ * standard input or reading from its standard output or standard error.
+ * The caller of g_spawn_async_with_pipes() must close these file descriptors
+ * when they are no longer in use. If these parameters are NULL, the
+ * corresponding pipe won't be created.
+ *
+ * @error can be NULL to ignore errors, or non-NULL to report errors.
+ * If an error is set, the function returns FALSE. Errors
+ * are reported even if they occur in the child (for example if the
+ * executable in <literal>argv[0]</literal> is not found). Typically
+ * the <literal>message</literal> field of returned errors should be displayed
+ * to users. Possible errors are those from the #G_SPAWN_ERROR domain.
+ *
+ * If an error occurs, @child_pid, @standard_input, @standard_output,
+ * and @standard_error will not be filled with valid values.
+ * 
+ * Return value: TRUE on success, FALSE if an error was set
+ **/
+gboolean
+g_spawn_async_with_pipes (const gchar          *working_directory,
+                          gchar               **argv,
+                          gchar               **envp,
+                          GSpawnFlags           flags,
+                          GSpawnChildSetupFunc  child_setup,
+                          gpointer              user_data,
+                          gint                 *child_pid,
+                          gint                 *standard_input,
+                          gint                 *standard_output,
+                          gint                 *standard_error,
+                          GError              **error)
+{
+  g_return_val_if_fail (argv != NULL, FALSE);
+  g_return_val_if_fail (standard_output == NULL ||
+                        !(flags & G_SPAWN_STDOUT_TO_DEV_NULL), FALSE);
+  g_return_val_if_fail (standard_error == NULL ||
+                        !(flags & G_SPAWN_STDERR_TO_DEV_NULL), FALSE);
+  /* can't inherit stdin if we have an input pipe. */
+  g_return_val_if_fail (standard_input == NULL ||
+                        !(flags & G_SPAWN_CHILD_INHERITS_STDIN), FALSE);
+  
+  return fork_exec_with_pipes (!(flags & G_SPAWN_DO_NOT_REAP_CHILD),
+                               working_directory,
+                               argv,
+                               envp,
+                               !(flags & G_SPAWN_LEAVE_DESCRIPTORS_OPEN),
+                               (flags & G_SPAWN_SEARCH_PATH) != 0,
+                               (flags & G_SPAWN_STDOUT_TO_DEV_NULL) != 0,
+                               (flags & G_SPAWN_STDERR_TO_DEV_NULL) != 0,
+                               (flags & G_SPAWN_CHILD_INHERITS_STDIN) != 0,
+                               (flags & G_SPAWN_FILE_AND_ARGV_ZERO) != 0,
+                               child_setup,
+                               user_data,
+                               child_pid,
+                               standard_input,
+                               standard_output,
+                               standard_error,
+                               error);
+}
+
+/**
+ * g_spawn_command_line_sync:
+ * @command_line: a command line 
+ * @standard_output: return location for child output
+ * @standard_error: return location for child errors
+ * @exit_status: return location for child exit status
+ * @error: return location for errors
+ *
+ * A simple version of g_spawn_sync() with little-used parameters
+ * removed, taking a command line instead of an argument vector.  See
+ * g_spawn_sync() for full details. @command_line will be parsed by
+ * g_shell_parse_argv(). Unlike g_spawn_sync(), the %G_SPAWN_SEARCH_PATH flag
+ * is enabled. Note that %G_SPAWN_SEARCH_PATH can have security
+ * implications, so consider using g_spawn_sync() directly if
+ * appropriate. Possible errors are those from g_spawn_sync() and those
+ * from g_shell_parse_argv().
+ * 
+ * Return value: TRUE on success, FALSE if an error was set
+ **/
+gboolean
+g_spawn_command_line_sync (const gchar  *command_line,
+                           gchar       **standard_output,
+                           gchar       **standard_error,
+                           gint         *exit_status,
+                           GError      **error)
+{
+  gboolean retval;
+  gchar **argv = 0;
+
+  g_return_val_if_fail (command_line != NULL, FALSE);
+  
+  if (!g_shell_parse_argv (command_line,
+                           NULL, &argv,
+                           error))
+    return FALSE;
+  
+  retval = g_spawn_sync (NULL,
+                         argv,
+                         NULL,
+                         G_SPAWN_SEARCH_PATH,
+                         NULL,
+                         NULL,
+                         standard_output,
+                         standard_error,
+                         exit_status,
+                         error);
+  g_strfreev (argv);
+
+  return retval;
+}
+
+/**
+ * g_spawn_command_line_async:
+ * @command_line: a command line
+ * @error: return location for errors
+ * 
+ * A simple version of g_spawn_async() that parses a command line with
+ * g_shell_parse_argv() and passes it to g_spawn_async(). Runs a
+ * command line in the background. Unlike g_spawn_async(), the
+ * %G_SPAWN_SEARCH_PATH flag is enabled, other flags are not. Note
+ * that %G_SPAWN_SEARCH_PATH can have security implications, so
+ * consider using g_spawn_async() directly if appropriate. Possible
+ * errors are those from g_shell_parse_argv() and g_spawn_async().
+ * 
+ * Return value: TRUE on success, FALSE if error is set.
+ **/
+gboolean
+g_spawn_command_line_async (const gchar *command_line,
+                            GError     **error)
+{
+  gboolean retval;
+  gchar **argv = 0;
+
+  g_return_val_if_fail (command_line != NULL, FALSE);
+
+  if (!g_shell_parse_argv (command_line,
+                           NULL, &argv,
+                           error))
+    return FALSE;
+  
+  retval = g_spawn_async (NULL,
+                          argv,
+                          NULL,
+                          G_SPAWN_SEARCH_PATH,
+                          NULL,
+                          NULL,
+                          NULL,
+                          error);
+  g_strfreev (argv);
+
+  return retval;
+}
+
+static gint
+exec_err_to_g_error (gint en)
+{
+  switch (en)
+    {
+#ifdef EACCES
+    case EACCES:
+      return G_SPAWN_ERROR_ACCES;
+      break;
+#endif
+
+#ifdef EPERM
+    case EPERM:
+      return G_SPAWN_ERROR_PERM;
+      break;
+#endif
+
+#ifdef E2BIG
+    case E2BIG:
+      return G_SPAWN_ERROR_2BIG;
+      break;
+#endif
+
+#ifdef ENOEXEC
+    case ENOEXEC:
+      return G_SPAWN_ERROR_NOEXEC;
+      break;
+#endif
+
+#ifdef ENAMETOOLONG
+    case ENAMETOOLONG:
+      return G_SPAWN_ERROR_NAMETOOLONG;
+      break;
+#endif
+
+#ifdef ENOENT
+    case ENOENT:
+      return G_SPAWN_ERROR_NOENT;
+      break;
+#endif
+
+#ifdef ENOMEM
+    case ENOMEM:
+      return G_SPAWN_ERROR_NOMEM;
+      break;
+#endif
+
+#ifdef ENOTDIR
+    case ENOTDIR:
+      return G_SPAWN_ERROR_NOTDIR;
+      break;
+#endif
+
+#ifdef ELOOP
+    case ELOOP:
+      return G_SPAWN_ERROR_LOOP;
+      break;
+#endif
+      
+#ifdef ETXTBUSY
+    case ETXTBUSY:
+      return G_SPAWN_ERROR_TXTBUSY;
+      break;
+#endif
+
+#ifdef EIO
+    case EIO:
+      return G_SPAWN_ERROR_IO;
+      break;
+#endif
+
+#ifdef ENFILE
+    case ENFILE:
+      return G_SPAWN_ERROR_NFILE;
+      break;
+#endif
+
+#ifdef EMFILE
+    case EMFILE:
+      return G_SPAWN_ERROR_MFILE;
+      break;
+#endif
+
+#ifdef EINVAL
+    case EINVAL:
+      return G_SPAWN_ERROR_INVAL;
+      break;
+#endif
+
+#ifdef EISDIR
+    case EISDIR:
+      return G_SPAWN_ERROR_ISDIR;
+      break;
+#endif
+
+#ifdef ELIBBAD
+    case ELIBBAD:
+      return G_SPAWN_ERROR_LIBBAD;
+      break;
+#endif
+      
+    default:
+      return G_SPAWN_ERROR_FAILED;
+      break;
+    }
+}
+
+static void
+write_err_and_exit (gint fd, gint msg)
+{
+  gint en = errno;
+  
+  write (fd, &msg, sizeof(msg));
+  write (fd, &en, sizeof(en));
+  
+  _exit (1);
+}
+
+static void
+set_cloexec (gint fd)
+{
+  fcntl (fd, F_SETFD, FD_CLOEXEC);
+}
+
+static gint
+sane_dup2 (gint fd1, gint fd2)
+{
+  gint ret;
+
+ retry:
+  ret = dup2 (fd1, fd2);
+  if (ret < 0 && errno == EINTR)
+    goto retry;
+
+  return ret;
+}
+
+enum
+{
+  CHILD_CHDIR_FAILED,
+  CHILD_EXEC_FAILED,
+  CHILD_DUP2_FAILED,
+  CHILD_FORK_FAILED
+};
+
+static void
+do_exec (gint                  child_err_report_fd,
+         gint                  stdin_fd,
+         gint                  stdout_fd,
+         gint                  stderr_fd,
+         const gchar          *working_directory,
+         gchar               **argv,
+         gchar               **envp,
+         gboolean              close_descriptors,
+         gboolean              search_path,
+         gboolean              stdout_to_null,
+         gboolean              stderr_to_null,
+         gboolean              child_inherits_stdin,
+         gboolean              file_and_argv_zero,
+         GSpawnChildSetupFunc  child_setup,
+         gpointer              user_data)
+{
+  if (working_directory && chdir (working_directory) < 0)
+    write_err_and_exit (child_err_report_fd,
+                        CHILD_CHDIR_FAILED);
+
+  /* Close all file descriptors but stdin stdout and stderr as
+   * soon as we exec. Note that this includes
+   * child_err_report_fd, which keeps the parent from blocking
+   * forever on the other end of that pipe.
+   */
+  if (close_descriptors)
+    {
+      gint open_max;
+      gint i;
+      
+      open_max = sysconf (_SC_OPEN_MAX);
+      for (i = 3; i < open_max; i++)
+        set_cloexec (i);
+    }
+  else
+    {
+      /* We need to do child_err_report_fd anyway */
+      set_cloexec (child_err_report_fd);
+    }
+  
+  /* Redirect pipes as required */
+  
+  if (stdin_fd >= 0)
+    {
+      /* dup2 can't actually fail here I don't think */
+          
+      if (sane_dup2 (stdin_fd, 0) < 0)
+        write_err_and_exit (child_err_report_fd,
+                            CHILD_DUP2_FAILED);
+
+      /* ignore this if it doesn't work */
+      close_and_invalidate (&stdin_fd);
+    }
+  else if (!child_inherits_stdin)
+    {
+      /* Keep process from blocking on a read of stdin */
+      gint read_null = open ("/dev/null", O_RDONLY);
+      sane_dup2 (read_null, 0);
+      close_and_invalidate (&read_null);
+    }
+
+  if (stdout_fd >= 0)
+    {
+      /* dup2 can't actually fail here I don't think */
+          
+      if (sane_dup2 (stdout_fd, 1) < 0)
+        write_err_and_exit (child_err_report_fd,
+                            CHILD_DUP2_FAILED);
+
+      /* ignore this if it doesn't work */
+      close_and_invalidate (&stdout_fd);
+    }
+  else if (stdout_to_null)
+    {
+      gint write_null = open ("/dev/null", O_WRONLY);
+      sane_dup2 (write_null, 1);
+      close_and_invalidate (&write_null);
+    }
+
+  if (stderr_fd >= 0)
+    {
+      /* dup2 can't actually fail here I don't think */
+          
+      if (sane_dup2 (stderr_fd, 2) < 0)
+        write_err_and_exit (child_err_report_fd,
+                            CHILD_DUP2_FAILED);
+
+      /* ignore this if it doesn't work */
+      close_and_invalidate (&stderr_fd);
+    }
+  else if (stderr_to_null)
+    {
+      gint write_null = open ("/dev/null", O_WRONLY);
+      sane_dup2 (write_null, 2);
+      close_and_invalidate (&write_null);
+    }
+  
+  /* Call user function just before we exec */
+  if (child_setup)
+    {
+      (* child_setup) (user_data);
+    }
+
+  g_execute (argv[0],
+             file_and_argv_zero ? argv + 1 : argv,
+             envp, search_path);
+
+  /* Exec failed */
+  write_err_and_exit (child_err_report_fd,
+                      CHILD_EXEC_FAILED);
+}
+
+static gboolean
+read_ints (int      fd,
+           gint*    buf,
+           gint     n_ints_in_buf,    
+           gint    *n_ints_read,      
+           GError **error)
+{
+  gsize bytes = 0;    
+  
+  while (TRUE)
+    {
+      gssize chunk;    
+
+      if (bytes >= sizeof(gint)*2)
+        break; /* give up, who knows what happened, should not be
+                * possible.
+                */
+          
+    again:
+      chunk = read (fd,
+                    ((gchar*)buf) + bytes,
+                    sizeof(gint) * n_ints_in_buf - bytes);
+      if (chunk < 0 && errno == EINTR)
+        goto again;
+          
+      if (chunk < 0)
+        {
+          /* Some weird shit happened, bail out */
+              
+          g_set_error (error,
+                       G_SPAWN_ERROR,
+                       G_SPAWN_ERROR_FAILED,
+                       _("Failed to read from child pipe (%s)"),
+                       g_strerror (errno));
+
+          return FALSE;
+        }
+      else if (chunk == 0)
+        break; /* EOF */
+      else /* chunk > 0 */
+	bytes += chunk;
+    }
+
+  *n_ints_read = (gint)(bytes / sizeof(gint));
+
+  return TRUE;
+}
+
+static gboolean
+fork_exec_with_pipes (gboolean              intermediate_child,
+                      const gchar          *working_directory,
+                      gchar               **argv,
+                      gchar               **envp,
+                      gboolean              close_descriptors,
+                      gboolean              search_path,
+                      gboolean              stdout_to_null,
+                      gboolean              stderr_to_null,
+                      gboolean              child_inherits_stdin,
+                      gboolean              file_and_argv_zero,
+                      GSpawnChildSetupFunc  child_setup,
+                      gpointer              user_data,
+                      gint                 *child_pid,
+                      gint                 *standard_input,
+                      gint                 *standard_output,
+                      gint                 *standard_error,
+                      GError              **error)     
+{
+  gint pid;
+  gint stdin_pipe[2] = { -1, -1 };
+  gint stdout_pipe[2] = { -1, -1 };
+  gint stderr_pipe[2] = { -1, -1 };
+  gint child_err_report_pipe[2] = { -1, -1 };
+  gint child_pid_report_pipe[2] = { -1, -1 };
+  gint status;
+  
+  if (!make_pipe (child_err_report_pipe, error))
+    return FALSE;
+
+  if (intermediate_child && !make_pipe (child_pid_report_pipe, error))
+    goto cleanup_and_fail;
+  
+  if (standard_input && !make_pipe (stdin_pipe, error))
+    goto cleanup_and_fail;
+  
+  if (standard_output && !make_pipe (stdout_pipe, error))
+    goto cleanup_and_fail;
+
+  if (standard_error && !make_pipe (stderr_pipe, error))
+    goto cleanup_and_fail;
+
+  pid = fork ();
+
+  if (pid < 0)
+    {      
+      g_set_error (error,
+                   G_SPAWN_ERROR,
+                   G_SPAWN_ERROR_FORK,
+                   _("Failed to fork (%s)"),
+                   g_strerror (errno));
+
+      goto cleanup_and_fail;
+    }
+  else if (pid == 0)
+    {
+      /* Immediate child. This may or may not be the child that
+       * actually execs the new process.
+       */
+      
+      /* Be sure we crash if the parent exits
+       * and we write to the err_report_pipe
+       */
+      signal (SIGPIPE, SIG_DFL);
+
+      /* Close the parent's end of the pipes;
+       * not needed in the close_descriptors case,
+       * though
+       */
+      close_and_invalidate (&child_err_report_pipe[0]);
+      close_and_invalidate (&child_pid_report_pipe[0]);
+      close_and_invalidate (&stdin_pipe[1]);
+      close_and_invalidate (&stdout_pipe[0]);
+      close_and_invalidate (&stderr_pipe[0]);
+      
+      if (intermediate_child)
+        {
+          /* We need to fork an intermediate child that launches the
+           * final child. The purpose of the intermediate child
+           * is to exit, so we can waitpid() it immediately.
+           * Then the grandchild will not become a zombie.
+           */
+          gint grandchild_pid;
+
+          grandchild_pid = fork ();
+
+          if (grandchild_pid < 0)
+            {
+              /* report -1 as child PID */
+              write (child_pid_report_pipe[1], &grandchild_pid,
+                     sizeof(grandchild_pid));
+              
+              write_err_and_exit (child_err_report_pipe[1],
+                                  CHILD_FORK_FAILED);              
+            }
+          else if (grandchild_pid == 0)
+            {
+              do_exec (child_err_report_pipe[1],
+                       stdin_pipe[0],
+                       stdout_pipe[1],
+                       stderr_pipe[1],
+                       working_directory,
+                       argv,
+                       envp,
+                       close_descriptors,
+                       search_path,
+                       stdout_to_null,
+                       stderr_to_null,
+                       child_inherits_stdin,
+                       file_and_argv_zero,
+                       child_setup,
+                       user_data);
+            }
+          else
+            {
+              write (child_pid_report_pipe[1], &grandchild_pid, sizeof(grandchild_pid));
+              close_and_invalidate (&child_pid_report_pipe[1]);
+              
+              _exit (0);
+            }
+        }
+      else
+        {
+          /* Just run the child.
+           */
+
+          do_exec (child_err_report_pipe[1],
+                   stdin_pipe[0],
+                   stdout_pipe[1],
+                   stderr_pipe[1],
+                   working_directory,
+                   argv,
+                   envp,
+                   close_descriptors,
+                   search_path,
+                   stdout_to_null,
+                   stderr_to_null,
+                   child_inherits_stdin,
+                   file_and_argv_zero,
+                   child_setup,
+                   user_data);
+        }
+    }
+  else
+    {
+      /* Parent */
+      
+      gint buf[2];
+      gint n_ints = 0;    
+
+      /* Close the uncared-about ends of the pipes */
+      close_and_invalidate (&child_err_report_pipe[1]);
+      close_and_invalidate (&child_pid_report_pipe[1]);
+      close_and_invalidate (&stdin_pipe[0]);
+      close_and_invalidate (&stdout_pipe[1]);
+      close_and_invalidate (&stderr_pipe[1]);
+
+      /* If we had an intermediate child, reap it */
+      if (intermediate_child)
+        {
+        wait_again:
+          if (waitpid (pid, &status, 0) < 0)
+            {
+              if (errno == EINTR)
+                goto wait_again;
+              else if (errno == ECHILD)
+                ; /* do nothing, child already reaped */
+              else
+                g_warning ("waitpid() should not fail in "
+			   "'fork_exec_with_pipes'");
+            }
+        }
+      
+
+      if (!read_ints (child_err_report_pipe[0],
+                      buf, 2, &n_ints,
+                      error))
+        goto cleanup_and_fail;
+        
+      if (n_ints >= 2)
+        {
+          /* Error from the child. */
+
+          switch (buf[0])
+            {
+            case CHILD_CHDIR_FAILED:
+              g_set_error (error,
+                           G_SPAWN_ERROR,
+                           G_SPAWN_ERROR_CHDIR,
+                           _("Failed to change to directory '%s' (%s)"),
+                           working_directory,
+                           g_strerror (buf[1]));
+
+              break;
+              
+            case CHILD_EXEC_FAILED:
+              g_set_error (error,
+                           G_SPAWN_ERROR,
+                           exec_err_to_g_error (buf[1]),
+                           _("Failed to execute child process (%s)"),
+                           g_strerror (buf[1]));
+
+              break;
+              
+            case CHILD_DUP2_FAILED:
+              g_set_error (error,
+                           G_SPAWN_ERROR,
+                           G_SPAWN_ERROR_FAILED,
+                           _("Failed to redirect output or input of child process (%s)"),
+                           g_strerror (buf[1]));
+
+              break;
+
+            case CHILD_FORK_FAILED:
+              g_set_error (error,
+                           G_SPAWN_ERROR,
+                           G_SPAWN_ERROR_FORK,
+                           _("Failed to fork child process (%s)"),
+                           g_strerror (buf[1]));
+              break;
+              
+            default:
+              g_set_error (error,
+                           G_SPAWN_ERROR,
+                           G_SPAWN_ERROR_FAILED,
+                           _("Unknown error executing child process"));
+              break;
+            }
+
+          goto cleanup_and_fail;
+        }
+
+      /* Get child pid from intermediate child pipe. */
+      if (intermediate_child)
+        {
+          n_ints = 0;
+          
+          if (!read_ints (child_pid_report_pipe[0],
+                          buf, 1, &n_ints, error))
+            goto cleanup_and_fail;
+
+          if (n_ints < 1)
+            {
+              g_set_error (error,
+                           G_SPAWN_ERROR,
+                           G_SPAWN_ERROR_FAILED,
+                           _("Failed to read enough data from child pid pipe (%s)"),
+                           g_strerror (errno));
+              goto cleanup_and_fail;
+            }
+          else
+            {
+              /* we have the child pid */
+              pid = buf[0];
+            }
+        }
+      
+      /* Success against all odds! return the information */
+      
+      if (child_pid)
+        *child_pid = pid;
+
+      if (standard_input)
+        *standard_input = stdin_pipe[1];
+      if (standard_output)
+        *standard_output = stdout_pipe[0];
+      if (standard_error)
+        *standard_error = stderr_pipe[0];
+      
+      return TRUE;
+    }
+
+ cleanup_and_fail:
+  close_and_invalidate (&child_err_report_pipe[0]);
+  close_and_invalidate (&child_err_report_pipe[1]);
+  close_and_invalidate (&child_pid_report_pipe[0]);
+  close_and_invalidate (&child_pid_report_pipe[1]);
+  close_and_invalidate (&stdin_pipe[0]);
+  close_and_invalidate (&stdin_pipe[1]);
+  close_and_invalidate (&stdout_pipe[0]);
+  close_and_invalidate (&stdout_pipe[1]);
+  close_and_invalidate (&stderr_pipe[0]);
+  close_and_invalidate (&stderr_pipe[1]);
+
+  return FALSE;
+}
+
+static gboolean
+make_pipe (gint     p[2],
+           GError **error)
+{
+  if (pipe (p) < 0)
+    {
+      g_set_error (error,
+                   G_SPAWN_ERROR,
+                   G_SPAWN_ERROR_FAILED,
+                   _("Failed to create pipe for communicating with child process (%s)"),
+                   g_strerror (errno));
+      return FALSE;
+    }
+  else
+    return TRUE;
+}
+
+/* Based on execvp from GNU C Library */
+
+static void
+script_execute (const gchar *file,
+                gchar      **argv,
+                gchar      **envp,
+                gboolean     search_path)
+{
+  /* Count the arguments.  */
+  int argc = 0;
+  while (argv[argc])
+    ++argc;
+  
+  /* Construct an argument list for the shell.  */
+  {
+    gchar **new_argv;
+
+    new_argv = g_new0 (gchar*, argc + 1);
+    
+    new_argv[0] = (char *) "/bin/sh";
+    new_argv[1] = (char *) file;
+    while (argc > 1)
+      {
+	new_argv[argc] = argv[argc - 1];
+	--argc;
+      }
+
+    /* Execute the shell. */
+    if (envp)
+      execve (new_argv[0], new_argv, envp);
+    else
+      execv (new_argv[0], new_argv);
+    
+    g_free (new_argv);
+  }
+}
+
+static gchar*
+my_strchrnul (const gchar *str, gchar c)
+{
+  gchar *p = (gchar*) str;
+  while (*p && (*p != c))
+    ++p;
+
+  return p;
+}
+
+static gint
+g_execute (const gchar *file,
+           gchar      **argv,
+           gchar      **envp,
+           gboolean     search_path)
+{
+  if (*file == '\0')
+    {
+      /* We check the simple case first. */
+      errno = ENOENT;
+      return -1;
+    }
+
+  if (!search_path || strchr (file, '/') != NULL)
+    {
+      /* Don't search when it contains a slash. */
+      if (envp)
+        execve (file, argv, envp);
+      else
+        execv (file, argv);
+      
+      if (errno == ENOEXEC)
+	script_execute (file, argv, envp, FALSE);
+    }
+  else
+    {
+      gboolean got_eacces = 0;
+      const gchar *path, *p;
+      gchar *name, *freeme;
+      size_t len;
+      size_t pathlen;
+
+      path = g_getenv ("PATH");
+      if (path == NULL)
+	{
+	  /* There is no `PATH' in the environment.  The default
+	   * search path in libc is the current directory followed by
+	   * the path `confstr' returns for `_CS_PATH'.
+           */
+
+          /* In GLib we put . last, for security, and don't use the
+           * unportable confstr(); UNIX98 does not actually specify
+           * what to search if PATH is unset. POSIX may, dunno.
+           */
+          
+          path = "/bin:/usr/bin:.";
+	}
+
+      len = strlen (file) + 1;
+      pathlen = strlen (path);
+      freeme = name = g_malloc (pathlen + len + 1);
+      
+      /* Copy the file name at the top, including '\0'  */
+      memcpy (name + pathlen + 1, file, len);
+      name = name + pathlen;
+      /* And add the slash before the filename  */
+      *name = '/';
+
+      p = path;
+      do
+	{
+	  char *startp;
+
+	  path = p;
+	  p = my_strchrnul (path, ':');
+
+	  if (p == path)
+	    /* Two adjacent colons, or a colon at the beginning or the end
+             * of `PATH' means to search the current directory.
+             */
+	    startp = name + 1;
+	  else
+	    startp = memcpy (name - (p - path), path, p - path);
+
+	  /* Try to execute this name.  If it works, execv will not return.  */
+          if (envp)
+            execve (startp, argv, envp);
+          else
+            execv (startp, argv);
+          
+	  if (errno == ENOEXEC)
+	    script_execute (startp, argv, envp, search_path);
+
+	  switch (errno)
+	    {
+	    case EACCES:
+	      /* Record the we got a `Permission denied' error.  If we end
+               * up finding no executable we can use, we want to diagnose
+               * that we did find one but were denied access.
+               */
+	      got_eacces = TRUE;
+
+              /* FALL THRU */
+              
+	    case ENOENT:
+#ifdef ESTALE
+	    case ESTALE:
+#endif
+#ifdef ENOTDIR
+	    case ENOTDIR:
+#endif
+	      /* Those errors indicate the file is missing or not executable
+               * by us, in which case we want to just try the next path
+               * directory.
+               */
+	      break;
+
+	    default:
+	      /* Some other error means we found an executable file, but
+               * something went wrong executing it; return the error to our
+               * caller.
+               */
+              g_free (freeme);
+	      return -1;
+	    }
+	}
+      while (*p++ != '\0');
+
+      /* We tried every element and none of them worked.  */
+      if (got_eacces)
+	/* At least one failure was due to permissions, so report that
+         * error.
+         */
+        errno = EACCES;
+
+      g_free (freeme);
+    }
+
+  /* Return the error from the last attempt (probably ENOENT).  */
+  return -1;
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gspawn.h b/graf2d/win32gdk/gdk/src/glib/gspawn.h
index 57530cb6d4b..795bb3ce642 100644
--- a/graf2d/win32gdk/gdk/src/glib/gspawn.h
+++ b/graf2d/win32gdk/gdk/src/glib/gspawn.h
@@ -21,7 +21,7 @@
 #ifndef __G_SPAWN_H__
 #define __G_SPAWN_H__
 
-#include <gerror.h>
+#include <glib/gerror.h>
 
 G_BEGIN_DECLS
 
@@ -59,13 +59,14 @@ typedef void (* GSpawnChildSetupFunc) (gpointer user_data);
 typedef enum
 {
   G_SPAWN_LEAVE_DESCRIPTORS_OPEN = 1 << 0,
-  G_SPAWN_DO_NOT_REAP_CHILD = 1 << 1,
+  G_SPAWN_DO_NOT_REAP_CHILD      = 1 << 1,
   /* look for argv[0] in the path i.e. use execvp() */
-  G_SPAWN_SEARCH_PATH = 1 << 2,
+  G_SPAWN_SEARCH_PATH            = 1 << 2,
   /* Dump output to /dev/null */
-  G_SPAWN_STDOUT_TO_DEV_NULL = 1 << 3,
-  G_SPAWN_STDERR_TO_DEV_NULL = 1 << 4,
-  G_SPAWN_CHILD_INHERITS_STDIN = 1 << 5
+  G_SPAWN_STDOUT_TO_DEV_NULL     = 1 << 3,
+  G_SPAWN_STDERR_TO_DEV_NULL     = 1 << 4,
+  G_SPAWN_CHILD_INHERITS_STDIN   = 1 << 5,
+  G_SPAWN_FILE_AND_ARGV_ZERO     = 1 << 6
 } GSpawnFlags;
 
 GQuark g_spawn_error_quark (void);
diff --git a/graf2d/win32gdk/gdk/src/glib/gstrfuncs.c b/graf2d/win32gdk/gdk/src/glib/gstrfuncs.c
new file mode 100644
index 00000000000..94e96f187bf
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gstrfuncs.c
@@ -0,0 +1,1428 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/*
+ * MT safe
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#define _GNU_SOURCE		/* For stpcpy */
+
+#include <stdarg.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <locale.h>
+#include <ctype.h>		/* For tolower() */
+#if !defined (HAVE_STRSIGNAL) || !defined(NO_SYS_SIGLIST_DECL)
+#include <signal.h>
+#endif
+#include "glib.h"
+
+#ifdef G_OS_WIN32
+#include <windows.h>
+#endif
+
+/* do not include <unistd.h> in this place since it
+ * inteferes with g_strsignal() on some OSes
+ */
+
+static const guint16 ascii_table_data[256] = {
+  0x004, 0x004, 0x004, 0x004, 0x004, 0x004, 0x004, 0x004,
+  0x004, 0x104, 0x104, 0x004, 0x104, 0x104, 0x004, 0x004,
+  0x004, 0x004, 0x004, 0x004, 0x004, 0x004, 0x004, 0x004,
+  0x004, 0x004, 0x004, 0x004, 0x004, 0x004, 0x004, 0x004,
+  0x140, 0x0d0, 0x0d0, 0x0d0, 0x0d0, 0x0d0, 0x0d0, 0x0d0,
+  0x0d0, 0x0d0, 0x0d0, 0x0d0, 0x0d0, 0x0d0, 0x0d0, 0x0d0,
+  0x459, 0x459, 0x459, 0x459, 0x459, 0x459, 0x459, 0x459,
+  0x459, 0x459, 0x0d0, 0x0d0, 0x0d0, 0x0d0, 0x0d0, 0x0d0,
+  0x0d0, 0x653, 0x653, 0x653, 0x653, 0x653, 0x653, 0x253,
+  0x253, 0x253, 0x253, 0x253, 0x253, 0x253, 0x253, 0x253,
+  0x253, 0x253, 0x253, 0x253, 0x253, 0x253, 0x253, 0x253,
+  0x253, 0x253, 0x253, 0x0d0, 0x0d0, 0x0d0, 0x0d0, 0x0d0,
+  0x0d0, 0x473, 0x473, 0x473, 0x473, 0x473, 0x473, 0x073,
+  0x073, 0x073, 0x073, 0x073, 0x073, 0x073, 0x073, 0x073,
+  0x073, 0x073, 0x073, 0x073, 0x073, 0x073, 0x073, 0x073,
+  0x073, 0x073, 0x073, 0x0d0, 0x0d0, 0x0d0, 0x0d0, 0x004
+  /* the upper 128 are all zeroes */
+};
+
+#if defined(G_PLATFORM_WIN32) && defined(__GNUC__)
+__declspec(dllexport)
+#endif
+const guint16 * const g_ascii_table = ascii_table_data;
+
+gchar*
+g_strdup (const gchar *str)
+{
+  gchar *new_str;
+
+  if (str)
+    {
+      new_str = g_new (char, strlen (str) + 1);
+      strcpy (new_str, str);
+    }
+  else
+    new_str = NULL;
+
+  return new_str;
+}
+
+gpointer
+g_memdup (gconstpointer mem,
+	  guint         byte_size)
+{
+  gpointer new_mem;
+
+  if (mem)
+    {
+      new_mem = g_malloc (byte_size);
+      memcpy (new_mem, mem, byte_size);
+    }
+  else
+    new_mem = NULL;
+
+  return new_mem;
+}
+
+gchar*
+g_strndup (const gchar *str,
+	   gsize        n)    
+{
+  gchar *new_str;
+
+  if (str)
+    {
+      new_str = g_new (gchar, n + 1);
+      strncpy (new_str, str, n);
+      new_str[n] = '\0';
+    }
+  else
+    new_str = NULL;
+
+  return new_str;
+}
+
+gchar*
+g_strnfill (gsize length,     
+	    gchar fill_char)
+{
+  register gchar *str, *s, *end;
+
+  str = g_new (gchar, length + 1);
+  s = str;
+  end = str + length;
+  while (s < end)
+    *(s++) = fill_char;
+  *s = 0;
+
+  return str;
+}
+
+/**
+ * g_stpcpy:
+ * @dest: destination buffer
+ * @src: source string
+ * 
+ * Copies a nul-terminated string into the dest buffer, include the
+ * trailing nul, and return a pointer to the trailing nul byte.
+ * This is useful for concatenating multiple strings together
+ * without having to repeatedly scan for the end.
+ * 
+ * Return value: a pointer to trailing nul byte.
+ **/
+gchar *
+g_stpcpy (gchar       *dest,
+          const gchar *src)
+{
+#ifdef HAVE_STPCPY
+  g_return_val_if_fail (dest != NULL, NULL);
+  g_return_val_if_fail (src != NULL, NULL);
+  return stpcpy (dest, src);
+#else
+  register gchar *d = dest;
+  register const gchar *s = src;
+
+  g_return_val_if_fail (dest != NULL, NULL);
+  g_return_val_if_fail (src != NULL, NULL);
+  do
+    *d++ = *s;
+  while (*s++ != '\0');
+
+  return d - 1;
+#endif
+}
+
+gchar*
+g_strdup_vprintf (const gchar *format,
+		  va_list      args1)
+{
+  gchar *buffer;
+#ifdef HAVE_VASPRINTF
+  vasprintf (&buffer, format, args1);
+  if (g_mem_is_system_malloc ()) 
+    {
+      gchar *buffer1 = g_strdup (buffer);
+      free (buffer);
+      buffer = buffer1;
+    }
+#else
+  va_list args2;
+
+  G_VA_COPY (args2, args1);
+
+  buffer = g_new (gchar, g_printf_string_upper_bound (format, args1));
+
+  vsprintf (buffer, format, args2);
+  va_end (args2);
+#endif
+  return buffer;
+}
+
+gchar*
+g_strdup_printf (const gchar *format,
+		 ...)
+{
+  gchar *buffer;
+  va_list args;
+
+  va_start (args, format);
+  buffer = g_strdup_vprintf (format, args);
+  va_end (args);
+
+  return buffer;
+}
+
+gchar*
+g_strconcat (const gchar *string1, ...)
+{
+  gsize	  l;     
+  va_list args;
+  gchar	  *s;
+  gchar	  *concat;
+  gchar   *ptr;
+
+  g_return_val_if_fail (string1 != NULL, NULL);
+
+  l = 1 + strlen (string1);
+  va_start (args, string1);
+  s = va_arg (args, gchar*);
+  while (s)
+    {
+      l += strlen (s);
+      s = va_arg (args, gchar*);
+    }
+  va_end (args);
+
+  concat = g_new (gchar, l);
+  ptr = concat;
+
+  ptr = g_stpcpy (ptr, string1);
+  va_start (args, string1);
+  s = va_arg (args, gchar*);
+  while (s)
+    {
+      ptr = g_stpcpy (ptr, s);
+      s = va_arg (args, gchar*);
+    }
+  va_end (args);
+
+  return concat;
+}
+
+gdouble
+g_strtod (const gchar *nptr,
+	  gchar **endptr)
+{
+  gchar *fail_pos_1;
+  gchar *fail_pos_2;
+  gdouble val_1;
+  gdouble val_2 = 0;
+
+  g_return_val_if_fail (nptr != NULL, 0);
+
+  fail_pos_1 = NULL;
+  fail_pos_2 = NULL;
+
+  val_1 = strtod (nptr, &fail_pos_1);
+
+  if (fail_pos_1 && fail_pos_1[0] != 0)
+    {
+      gchar *old_locale;
+
+      old_locale = g_strdup (setlocale (LC_NUMERIC, NULL));
+      setlocale (LC_NUMERIC, "C");
+      val_2 = strtod (nptr, &fail_pos_2);
+      setlocale (LC_NUMERIC, old_locale);
+      g_free (old_locale);
+    }
+
+  if (!fail_pos_1 || fail_pos_1[0] == 0 || fail_pos_1 >= fail_pos_2)
+    {
+      if (endptr)
+	*endptr = fail_pos_1;
+      return val_1;
+    }
+  else
+    {
+      if (endptr)
+	*endptr = fail_pos_2;
+      return val_2;
+    }
+}
+
+G_CONST_RETURN gchar*
+g_strerror (gint errnum)
+{
+  static GStaticPrivate msg_private = G_STATIC_PRIVATE_INIT;
+  char *msg;
+
+  //
+  // Removed a lot fo code as errors are not common on windows that actually would mean anythign here...
+  //
+
+  msg = g_static_private_get (&msg_private);
+  if (!msg)
+    {
+      msg = g_new (gchar, 64);
+      g_static_private_set (&msg_private, msg, g_free);
+    }
+
+  sprintf (msg, "unknown error (%d)", errnum);
+
+  return msg;
+}
+
+G_CONST_RETURN gchar*
+g_strsignal (gint signum)
+{
+  static GStaticPrivate msg_private = G_STATIC_PRIVATE_INIT;
+  char *msg;
+
+  //
+  // A lot of code removed by GTW - this will be building only on win32, and signals are... not really the thing
+  // here!
+  //
+
+  msg = g_static_private_get (&msg_private);
+  if (!msg)
+    {
+      msg = g_new (gchar, 64);
+      g_static_private_set (&msg_private, msg, g_free);
+    }
+
+  sprintf (msg, "unknown signal (%d)", signum);
+  
+  return msg;
+}
+
+/* Functions g_strlcpy and g_strlcat were originally developed by
+ * Todd C. Miller <Todd.Miller@courtesan.com> to simplify writing secure code.
+ * See ftp://ftp.openbsd.org/pub/OpenBSD/src/lib/libc/string/strlcpy.3
+ * for more information.
+ */
+
+#ifdef HAVE_STRLCPY
+/* Use the native ones, if available; they might be implemented in assembly */
+gsize
+g_strlcpy (gchar       *dest,
+	   const gchar *src,
+	   gsize        dest_size)
+{
+  g_return_val_if_fail (dest != NULL, 0);
+  g_return_val_if_fail (src  != NULL, 0);
+  
+  return strlcpy (dest, src, dest_size);
+}
+
+gsize
+g_strlcat (gchar       *dest,
+	   const gchar *src,
+	   gsize        dest_size)
+{
+  g_return_val_if_fail (dest != NULL, 0);
+  g_return_val_if_fail (src  != NULL, 0);
+  
+  return strlcat (dest, src, dest_size);
+}
+
+#else /* ! HAVE_STRLCPY */
+/* g_strlcpy
+ *
+ * Copy string src to buffer dest (of buffer size dest_size).  At most
+ * dest_size-1 characters will be copied.  Always NUL terminates
+ * (unless dest_size == 0).  This function does NOT allocate memory.
+ * Unlike strncpy, this function doesn't pad dest (so it's often faster).
+ * Returns size of attempted result, strlen(src),
+ * so if retval >= dest_size, truncation occurred.
+ */
+gsize
+g_strlcpy (gchar       *dest,
+           const gchar *src,
+           gsize        dest_size)
+{
+  register gchar *d = dest;
+  register const gchar *s = src;
+  register gsize n = dest_size;
+  
+  g_return_val_if_fail (dest != NULL, 0);
+  g_return_val_if_fail (src  != NULL, 0);
+  
+  /* Copy as many bytes as will fit */
+  if (n != 0 && --n != 0)
+    do
+      {
+	register gchar c = *s++;
+	
+	*d++ = c;
+	if (c == 0)
+	  break;
+      }
+    while (--n != 0);
+  
+  /* If not enough room in dest, add NUL and traverse rest of src */
+  if (n == 0)
+    {
+      if (dest_size != 0)
+	*d = 0;
+      while (*s++)
+	;
+    }
+  
+  return s - src - 1;  /* count does not include NUL */
+}
+
+/* g_strlcat
+ *
+ * Appends string src to buffer dest (of buffer size dest_size).
+ * At most dest_size-1 characters will be copied.
+ * Unlike strncat, dest_size is the full size of dest, not the space left over.
+ * This function does NOT allocate memory.
+ * This always NUL terminates (unless siz == 0 or there were no NUL characters
+ * in the dest_size characters of dest to start with).
+ * Returns size of attempted result, which is
+ * MIN (dest_size, strlen (original dest)) + strlen (src),
+ * so if retval >= dest_size, truncation occurred.
+ */
+gsize
+g_strlcat (gchar       *dest,
+           const gchar *src,
+           gsize        dest_size)
+{
+  register gchar *d = dest;
+  register const gchar *s = src;
+  register gsize bytes_left = dest_size;
+  gsize dlength;  /* Logically, MIN (strlen (d), dest_size) */
+  
+  g_return_val_if_fail (dest != NULL, 0);
+  g_return_val_if_fail (src  != NULL, 0);
+  
+  /* Find the end of dst and adjust bytes left but don't go past end */
+  while (*d != 0 && bytes_left-- != 0)
+    d++;
+  dlength = d - dest;
+  bytes_left = dest_size - dlength;
+  
+  if (bytes_left == 0)
+    return dlength + strlen (s);
+  
+  while (*s != 0)
+    {
+      if (bytes_left != 1)
+	{
+	  *d++ = *s;
+	  bytes_left--;
+	}
+      s++;
+    }
+  *d = 0;
+  
+  return dlength + (s - src);  /* count does not include NUL */
+}
+#endif /* ! HAVE_STRLCPY */
+
+/**
+ * g_ascii_strdown:
+ * @str: a string
+ * @len: length of @str in bytes, or -1 if @str is nul-terminated.
+ * 
+ * Converts all upper case ASCII letters to lower case ASCII letters.
+ * 
+ * Return value: a newly allocated string, with all the upper case
+ *               characters in @str converted to lower case, with
+ *               semantics that exactly match g_ascii_tolower. (Note
+ *               that this is unlike the old g_strdown, which modified
+ *               the string in place.)
+ **/
+gchar*
+g_ascii_strdown (const gchar *str,
+		 gint         len)
+{
+  gchar *result, *s;
+  
+  g_return_val_if_fail (str != NULL, NULL);
+
+  if (len < 0)
+    len = strlen (str);
+
+  result = g_strndup (str, len);
+  for (s = result; *s; s++)
+    *s = g_ascii_tolower (*s);
+  
+  return result;
+}
+
+/**
+ * g_ascii_strup:
+ * @str: a string
+ * @len: length of @str in bytes, or -1 if @str is nul-terminated.
+ * 
+ * Converts all lower case ASCII letters to upper case ASCII letters.
+ * 
+ * Return value: a newly allocated string, with all the lower case
+ *               characters in @str converted to upper case, with
+ *               semantics that exactly match g_ascii_toupper. (Note
+ *               that this is unlike the old g_strup, which modified
+ *               the string in place.)
+ **/
+gchar*
+g_ascii_strup (const gchar *str,
+	       gint         len)
+{
+  gchar *result, *s;
+
+  g_return_val_if_fail (str != NULL, NULL);
+
+  if (len < 0)
+    len = strlen (str);
+
+  result = g_strndup (str, len);
+  for (s = result; *s; s++)
+    *s = g_ascii_toupper (*s);
+
+  return result;
+}
+
+gchar*
+g_strdown (gchar *string)
+{
+  register guchar *s;
+  
+  g_return_val_if_fail (string != NULL, NULL);
+  
+  s = (guchar *) string;
+  
+  while (*s)
+    {
+      if (isupper (*s))
+	*s = tolower (*s);
+      s++;
+    }
+  
+  return (gchar *) string;
+}
+
+gchar*
+g_strup (gchar *string)
+{
+  register guchar *s;
+
+  g_return_val_if_fail (string != NULL, NULL);
+
+  s = (guchar *) string;
+
+  while (*s)
+    {
+      if (islower (*s))
+	*s = toupper (*s);
+      s++;
+    }
+
+  return (gchar *) string;
+}
+
+gchar*
+g_strreverse (gchar *string)
+{
+  g_return_val_if_fail (string != NULL, NULL);
+
+  if (*string)
+    {
+      register gchar *h, *t;
+
+      h = string;
+      t = string + strlen (string) - 1;
+
+      while (h < t)
+	{
+	  register gchar c;
+
+	  c = *h;
+	  *h = *t;
+	  h++;
+	  *t = c;
+	  t--;
+	}
+    }
+
+  return string;
+}
+
+/**
+ * g_ascii_tolower:
+ * @c: any character
+ * 
+ * Convert a character to ASCII lower case.
+ *
+ * Unlike the standard C library tolower function, this only
+ * recognizes standard ASCII letters and ignores the locale, returning
+ * all non-ASCII characters unchanged, even if they are lower case
+ * letters in a particular character set. Also unlike the standard
+ * library function, this takes and returns a char, not an int, so
+ * don't call it on EOF but no need to worry about casting to guchar
+ * before passing a possibly non-ASCII character in.
+ * 
+ * Return value: the result of converting @c to lower case.
+ *               If @c is not an ASCII upper case letter,
+ *               @c is returned unchanged.
+ **/
+gchar
+g_ascii_tolower (gchar c)
+{
+  return g_ascii_isupper (c) ? c - 'A' + 'a' : c;
+}
+
+/**
+ * g_ascii_toupper:
+ * @c: any character
+ * 
+ * Convert a character to ASCII upper case.
+ *
+ * Unlike the standard C library toupper function, this only
+ * recognizes standard ASCII letters and ignores the locale, returning
+ * all non-ASCII characters unchanged, even if they are upper case
+ * letters in a particular character set. Also unlike the standard
+ * library function, this takes and returns a char, not an int, so
+ * don't call it on EOF but no need to worry about casting to guchar
+ * before passing a possibly non-ASCII character in.
+ * 
+ * Return value: the result of converting @c to upper case.
+ *               If @c is not an ASCII lower case letter,
+ *               @c is returned unchanged.
+ **/
+gchar
+g_ascii_toupper (gchar c)
+{
+  return g_ascii_islower (c) ? c - 'a' + 'A' : c;
+}
+
+/**
+ * g_ascii_digit_value:
+ * @c: an ASCII character
+ *
+ * Determines the numeric value of a character as a decimal
+ * digit. Differs from g_unichar_digit_value because it takes
+ * a char, so there's no worry about sign extension if characters
+ * are signed.
+ *
+ * Return value: If @c is a decimal digit (according to
+ * `g_ascii_isdigit'), its numeric value. Otherwise, -1.
+ **/
+int
+g_ascii_digit_value (gchar c)
+{
+  if (g_ascii_isdigit (c))
+    return c - '0';
+  return -1;
+}
+
+/**
+ * g_ascii_xdigit_value:
+ * @c: an ASCII character
+ *
+ * Determines the numeric value of a character as a hexidecimal
+ * digit. Differs from g_unichar_xdigit_value because it takes
+ * a char, so there's no worry about sign extension if characters
+ * are signed.
+ *
+ * Return value: If @c is a hex digit (according to
+ * `g_ascii_isxdigit'), its numeric value. Otherwise, -1.
+ **/
+int
+g_ascii_xdigit_value (gchar c)
+{
+  if (c >= 'A' && c <= 'F')
+    return c - 'A' + 10;
+  if (c >= 'a' && c <= 'f')
+    return c - 'a' + 10;
+  return g_ascii_digit_value (c);
+}
+
+/**
+ * g_ascii_strcasecmp:
+ * @s1: string to compare with @s2
+ * @s2: string to compare with @s1
+ * 
+ * Compare two strings, ignoring the case of ASCII characters.
+ *
+ * Unlike the BSD strcasecmp function, this only recognizes standard
+ * ASCII letters and ignores the locale, treating all non-ASCII
+ * characters as if they are not letters.
+ * 
+ * Return value: an integer less than, equal to, or greater than
+ *               zero if @s1 is found, respectively, to be less than,
+ *               to match, or to be greater than @s2.
+ **/
+gint
+g_ascii_strcasecmp (const gchar *s1,
+		    const gchar *s2)
+{
+  gint c1, c2;
+
+  g_return_val_if_fail (s1 != NULL, 0);
+  g_return_val_if_fail (s2 != NULL, 0);
+
+  while (*s1 && *s2)
+    {
+      c1 = (gint)(guchar) g_ascii_tolower (*s1);
+      c2 = (gint)(guchar) g_ascii_tolower (*s2);
+      if (c1 != c2)
+	return (c1 - c2);
+      s1++; s2++;
+    }
+
+  return (((gint)(guchar) *s1) - ((gint)(guchar) *s2));
+}
+
+/**
+ * g_ascii_strncasecmp:
+ * @s1: string to compare with @s2
+ * @s2: string to compare with @s1
+ * @n:  number of characters to compare
+ * 
+ * Compare @s1 and @s2, ignoring the case of ASCII characters and any
+ * characters after the first @n in each string.
+ *
+ * Unlike the BSD strcasecmp function, this only recognizes standard
+ * ASCII letters and ignores the locale, treating all non-ASCII
+ * characters as if they are not letters.
+ * 
+ * Return value: an integer less than, equal to, or greater than zero
+ *               if the first @n bytes of @s1 is found, respectively,
+ *               to be less than, to match, or to be greater than the
+ *               first @n bytes of @s2.
+ **/
+gint
+g_ascii_strncasecmp (const gchar *s1,
+		     const gchar *s2,
+		     guint n)
+{
+  gint c1, c2;
+
+  g_return_val_if_fail (s1 != NULL, 0);
+  g_return_val_if_fail (s2 != NULL, 0);
+
+  while (n && *s1 && *s2)
+    {
+      n -= 1;
+      c1 = (gint)(guchar) g_ascii_tolower (*s1);
+      c2 = (gint)(guchar) g_ascii_tolower (*s2);
+      if (c1 != c2)
+	return (c1 - c2);
+      s1++; s2++;
+    }
+
+  if (n)
+    return (((gint) (guchar) *s1) - ((gint) (guchar) *s2));
+  else
+    return 0;
+}
+
+gint
+g_strcasecmp (const gchar *s1,
+	      const gchar *s2)
+{
+#ifdef HAVE_STRCASECMP
+  g_return_val_if_fail (s1 != NULL, 0);
+  g_return_val_if_fail (s2 != NULL, 0);
+
+  return strcasecmp (s1, s2);
+#else
+  gint c1, c2;
+
+  g_return_val_if_fail (s1 != NULL, 0);
+  g_return_val_if_fail (s2 != NULL, 0);
+
+  while (*s1 && *s2)
+    {
+      /* According to A. Cox, some platforms have islower's that
+       * don't work right on non-uppercase
+       */
+      c1 = isupper ((guchar)*s1) ? tolower ((guchar)*s1) : *s1;
+      c2 = isupper ((guchar)*s2) ? tolower ((guchar)*s2) : *s2;
+      if (c1 != c2)
+	return (c1 - c2);
+      s1++; s2++;
+    }
+
+  return (((gint)(guchar) *s1) - ((gint)(guchar) *s2));
+#endif
+}
+
+gint
+g_strncasecmp (const gchar *s1,
+	       const gchar *s2,
+	       gsize n)     
+{
+#ifdef HAVE_STRNCASECMP
+  return strncasecmp (s1, s2, n);
+#else
+  gint c1, c2;
+
+  g_return_val_if_fail (s1 != NULL, 0);
+  g_return_val_if_fail (s2 != NULL, 0);
+
+  while (n && *s1 && *s2)
+    {
+      n -= 1;
+      /* According to A. Cox, some platforms have islower's that
+       * don't work right on non-uppercase
+       */
+      c1 = isupper ((guchar)*s1) ? tolower ((guchar)*s1) : *s1;
+      c2 = isupper ((guchar)*s2) ? tolower ((guchar)*s2) : *s2;
+      if (c1 != c2)
+	return (c1 - c2);
+      s1++; s2++;
+    }
+
+  if (n)
+    return (((gint) (guchar) *s1) - ((gint) (guchar) *s2));
+  else
+    return 0;
+#endif
+}
+
+gchar*
+g_strdelimit (gchar	  *string,
+	      const gchar *delimiters,
+	      gchar	   new_delim)
+{
+  register gchar *c;
+
+  g_return_val_if_fail (string != NULL, NULL);
+
+  if (!delimiters)
+    delimiters = G_STR_DELIMITERS;
+
+  for (c = string; *c; c++)
+    {
+      if (strchr (delimiters, *c))
+	*c = new_delim;
+    }
+
+  return string;
+}
+
+gchar*
+g_strcanon (gchar       *string,
+	    const gchar *valid_chars,
+	    gchar        substitutor)
+{
+  register gchar *c;
+
+  g_return_val_if_fail (string != NULL, NULL);
+  g_return_val_if_fail (valid_chars != NULL, NULL);
+
+  for (c = string; *c; c++)
+    {
+      if (!strchr (valid_chars, *c))
+	*c = substitutor;
+    }
+
+  return string;
+}
+
+gchar*
+g_strcompress (const gchar *source)
+{
+  const gchar *p = source, *octal;
+  gchar *dest = g_malloc (strlen (source) + 1);
+  gchar *q = dest;
+  
+  while (*p)
+    {
+      if (*p == '\\')
+	{
+	  p++;
+	  switch (*p)
+	    {
+	    case '0':  case '1':  case '2':  case '3':  case '4':
+	    case '5':  case '6':  case '7':
+	      *q = 0;
+	      octal = p;
+	      while ((p < octal + 3) && (*p >= '0') && (*p <= '7'))
+		{
+		  *q = (*q * 8) + (*p - '0');
+		  p++;
+		}
+	      q++;
+	      p--;
+	      break;
+	    case 'b':
+	      *q++ = '\b';
+	      break;
+	    case 'f':
+	      *q++ = '\f';
+	      break;
+	    case 'n':
+	      *q++ = '\n';
+	      break;
+	    case 'r':
+	      *q++ = '\r';
+	      break;
+	    case 't':
+	      *q++ = '\t';
+	      break;
+	    default:		/* Also handles \" and \\ */
+	      *q++ = *p;
+	      break;
+	    }
+	}
+      else
+	*q++ = *p;
+      p++;
+    }
+  *q = 0;
+  
+  return dest;
+}
+
+gchar *
+g_strescape (const gchar *source,
+	     const gchar *exceptions)
+{
+  const guchar *p;
+  gchar *dest;
+  gchar *q;
+  guchar excmap[256];
+  
+  g_return_val_if_fail (source != NULL, NULL);
+
+  p = (guchar *) source;
+  /* Each source byte needs maximally four destination chars (\777) */
+  q = dest = g_malloc (strlen (source) * 4 + 1);
+
+  memset (excmap, 0, 256);
+  if (exceptions)
+    {
+      guchar *e = (guchar *) exceptions;
+
+      while (*e)
+	{
+	  excmap[*e] = 1;
+	  e++;
+	}
+    }
+
+  while (*p)
+    {
+      if (excmap[*p])
+	*q++ = *p;
+      else
+	{
+	  switch (*p)
+	    {
+	    case '\b':
+	      *q++ = '\\';
+	      *q++ = 'b';
+	      break;
+	    case '\f':
+	      *q++ = '\\';
+	      *q++ = 'f';
+	      break;
+	    case '\n':
+	      *q++ = '\\';
+	      *q++ = 'n';
+	      break;
+	    case '\r':
+	      *q++ = '\\';
+	      *q++ = 'r';
+	      break;
+	    case '\t':
+	      *q++ = '\\';
+	      *q++ = 't';
+	      break;
+	    case '\\':
+	      *q++ = '\\';
+	      *q++ = '\\';
+	      break;
+	    case '"':
+	      *q++ = '\\';
+	      *q++ = '"';
+	      break;
+	    default:
+	      if ((*p < ' ') || (*p >= 0177))
+		{
+		  *q++ = '\\';
+		  *q++ = '0' + (((*p) >> 6) & 07);
+		  *q++ = '0' + (((*p) >> 3) & 07);
+		  *q++ = '0' + ((*p) & 07);
+		}
+	      else
+		*q++ = *p;
+	      break;
+	    }
+	}
+      p++;
+    }
+  *q = 0;
+  return dest;
+}
+
+gchar*
+g_strchug (gchar *string)
+{
+  guchar *start;
+
+  g_return_val_if_fail (string != NULL, NULL);
+
+  for (start = (guchar*) string; *start && g_ascii_isspace (*start); start++)
+    ;
+
+  g_memmove (string, start, strlen ((gchar *) start) + 1);
+
+  return string;
+}
+
+gchar*
+g_strchomp (gchar *string)
+{
+  gchar *s;
+
+  g_return_val_if_fail (string != NULL, NULL);
+
+  if (!*string)
+    return string;
+
+  for (s = string + strlen (string) - 1; s >= string && g_ascii_isspace ((guchar)*s); 
+       s--)
+    *s = '\0';
+
+  return string;
+}
+
+/**
+ * g_strsplit:
+ * @string: a string to split.
+ * @delimiter: a string which specifies the places at which to split the string.
+ *     The delimiter is not included in any of the resulting strings, unless
+ *     max_tokens is reached.
+ * @max_tokens: the maximum number of pieces to split @string into. If this is
+ *              less than 1, the string is split completely.
+ * 
+ * Splits a string into a maximum of @max_tokens pieces, using the given
+ * @delimiter. If @max_tokens is reached, the remainder of @string is appended
+ * to the last token. 
+ *
+ * As a special case, the result of splitting the empty string "" is an empty
+ * vector, not a vector containing a single string. The reason for this
+ * special case is that being able to represent a empty vector is typically
+ * more useful than consistent handling of empty elements. If you do need
+ * to represent empty elements, you'll need to check for the empty string
+ * before calling g_strsplit().
+ * 
+ * Return value: a newly-allocated %NULL-terminated array of strings. Use g_strfreev()
+ *    to free it.
+ **/
+gchar**
+g_strsplit (const gchar *string,
+	    const gchar *delimiter,
+	    gint         max_tokens)
+{
+  GSList *string_list = NULL, *slist;
+  gchar **str_array, *s;
+  guint n = 0;
+  const gchar *remainder;
+
+  g_return_val_if_fail (string != NULL, NULL);
+  g_return_val_if_fail (delimiter != NULL, NULL);
+  g_return_val_if_fail (delimiter[0] != '\0', NULL);
+
+  if (max_tokens < 1)
+    max_tokens = G_MAXINT;
+  else
+    --max_tokens;
+
+  remainder = string;
+  s = strstr (remainder, delimiter);
+  if (s)
+    {
+      gsize delimiter_len = strlen (delimiter);   
+
+      do
+	{
+	  gsize len;     
+	  gchar *new_string;
+
+	  len = s - remainder;
+	  new_string = g_new (gchar, len + 1);
+	  strncpy (new_string, remainder, len);
+	  new_string[len] = 0;
+	  string_list = g_slist_prepend (string_list, new_string);
+	  n++;
+	  remainder = s + delimiter_len;
+	  s = strstr (remainder, delimiter);
+	}
+      while (--max_tokens && s);
+    }
+  if (*string)
+    {
+      n++;
+      string_list = g_slist_prepend (string_list, g_strdup (remainder));
+    }
+
+  str_array = g_new (gchar*, n + 1);
+
+  str_array[n--] = NULL;
+  for (slist = string_list; slist; slist = slist->next)
+    str_array[n--] = slist->data;
+
+  g_slist_free (string_list);
+
+  return str_array;
+}
+
+void
+g_strfreev (gchar **str_array)
+{
+  if (str_array)
+    {
+      int i;
+
+      for(i = 0; str_array[i] != NULL; i++)
+	g_free(str_array[i]);
+
+      g_free (str_array);
+    }
+}
+
+/**
+ * g_strdupv:
+ * @str_array: %NULL-terminated array of strings
+ * 
+ * Copies %NULL-terminated array of strings. The copy is a deep copy;
+ * the new array should be freed by first freeing each string, then
+ * the array itself. g_strfreev() does this for you. If called
+ * on a %NULL value, g_strdupv() simply returns %NULL.
+ * 
+ * Return value: a new %NULL-terminated array of strings
+ **/
+gchar**
+g_strdupv (gchar **str_array)
+{
+  if (str_array)
+    {
+      gint i;
+      gchar **retval;
+
+      i = 0;
+      while (str_array[i])
+        ++i;
+          
+      retval = g_new (gchar*, i + 1);
+
+      i = 0;
+      while (str_array[i])
+        {
+          retval[i] = g_strdup (str_array[i]);
+          ++i;
+        }
+      retval[i] = NULL;
+
+      return retval;
+    }
+  else
+    return NULL;
+}
+
+gchar*
+g_strjoinv (const gchar  *separator,
+	    gchar       **str_array)
+{
+  gchar *string;
+  gchar *ptr;
+
+  g_return_val_if_fail (str_array != NULL, NULL);
+
+  if (separator == NULL)
+    separator = "";
+
+  if (*str_array)
+    {
+      gint i;
+      gsize len;
+      gsize separator_len;     
+
+      separator_len = strlen (separator);
+      /* First part, getting length */
+      len = 1 + strlen (str_array[0]);
+      for (i = 1; str_array[i] != NULL; i++)
+        len += strlen (str_array[i]);
+      len += separator_len * (i - 1);
+
+      /* Second part, building string */
+      string = g_new (gchar, len);
+      ptr = g_stpcpy (string, *str_array);
+      for (i = 1; str_array[i] != NULL; i++)
+	{
+          ptr = g_stpcpy (ptr, separator);
+          ptr = g_stpcpy (ptr, str_array[i]);
+	}
+      }
+  else
+    string = g_strdup ("");
+
+  return string;
+}
+
+gchar*
+g_strjoin (const gchar  *separator,
+	   ...)
+{
+  gchar *string, *s;
+  va_list args;
+  gsize len;               
+  gsize separator_len;     
+  gchar *ptr;
+
+  if (separator == NULL)
+    separator = "";
+
+  separator_len = strlen (separator);
+
+  va_start (args, separator);
+
+  s = va_arg (args, gchar*);
+
+  if (s)
+    {
+      /* First part, getting length */
+      len = 1 + strlen (s);
+
+      s = va_arg (args, gchar*);
+      while (s)
+	{
+	  len += separator_len + strlen (s);
+	  s = va_arg (args, gchar*);
+	}
+      va_end (args);
+
+      /* Second part, building string */
+      string = g_new (gchar, len);
+
+      va_start (args, separator);
+
+      s = va_arg (args, gchar*);
+      ptr = g_stpcpy (string, s);
+
+      s = va_arg (args, gchar*);
+      while (s)
+	{
+	  ptr = g_stpcpy (ptr, separator);
+          ptr = g_stpcpy (ptr, s);
+	  s = va_arg (args, gchar*);
+	}
+    }
+  else
+    string = g_strdup ("");
+
+  va_end (args);
+
+  return string;
+}
+
+
+/**
+ * g_strstr_len:
+ * @haystack: a string
+ * @haystack_len: The maximum length of haystack
+ * @needle: The string to search for.
+ *
+ * Searches the string haystack for the first occurrence
+ * of the string needle, limiting the length of the search
+ * to haystack_len. 
+ *
+ * Return value: A pointer to the found occurrence, or
+ * NULL if not found.
+ **/
+gchar *
+g_strstr_len (const gchar *haystack,
+	      gssize       haystack_len,
+	      const gchar *needle)
+{
+  g_return_val_if_fail (haystack != NULL, NULL);
+  g_return_val_if_fail (needle != NULL, NULL);
+  
+  if (haystack_len < 0)
+    return strstr (haystack, needle);
+  else
+    {
+      const gchar *p = haystack;
+      gsize needle_len = strlen (needle);
+      const gchar *end;
+      gsize i;
+
+      if (needle_len == 0)
+	return (gchar *)haystack;
+
+      if (haystack_len < needle_len)
+	return NULL;
+      
+      end = haystack + haystack_len - needle_len;
+      
+      while (*p && p <= end)
+	{
+	  for (i = 0; i < needle_len; i++)
+	    if (p[i] != needle[i])
+	      goto next;
+	  
+	  return (gchar *)p;
+	  
+	next:
+	  p++;
+	}
+      
+      return NULL;
+    }
+}
+
+/**
+ * g_strrstr_len:
+ * @haystack: a nul-terminated string
+ * @needle: The nul-terminated string to search for.
+ *
+ * Searches the string haystack for the last occurrence
+ * of the string needle.
+ *
+ * Return value: A pointer to the found occurrence, or
+ * NULL if not found.
+ **/
+gchar *
+g_strrstr (const gchar *haystack,
+	   const gchar *needle)
+{
+  gsize i;
+  gsize needle_len;
+  gsize haystack_len;
+  const gchar *p;
+      
+  g_return_val_if_fail (haystack != NULL, NULL);
+  g_return_val_if_fail (needle != NULL, NULL);
+
+  needle_len = strlen (needle);
+  haystack_len = strlen (haystack);
+
+  if (needle_len == 0)
+    return (gchar *)haystack;
+
+  if (haystack_len < needle_len)
+    return NULL;
+  
+  p = haystack + haystack_len - needle_len;
+
+  while (p >= haystack)
+    {
+      for (i = 0; i < needle_len; i++)
+	if (p[i] != needle[i])
+	  goto next;
+      
+      return (gchar *)p;
+      
+    next:
+      p--;
+    }
+  
+  return NULL;
+}
+
+/**
+ * g_strrstr_len:
+ * @haystack: a nul-terminated string
+ * @haystack_len: The maximum length of haystack
+ * @needle: The nul-terminated string to search for.
+ *
+ * Searches the string haystack for the last occurrence
+ * of the string needle, limiting the length of the search
+ * to haystack_len. 
+ *
+ * Return value: A pointer to the found occurrence, or
+ * NULL if not found.
+ **/
+gchar *
+g_strrstr_len (const gchar *haystack,
+	       gssize        haystack_len,
+	       const gchar *needle)
+{
+  g_return_val_if_fail (haystack != NULL, NULL);
+  g_return_val_if_fail (needle != NULL, NULL);
+  
+  if (haystack_len < 0)
+    return g_strrstr (haystack, needle);
+  else
+    {
+      gsize needle_len = strlen (needle);
+      const gchar *haystack_max = haystack + haystack_len;
+      const gchar *p = haystack;
+      gsize i;
+
+      while (p < haystack_max && *p)
+	p++;
+
+      if (p < haystack + needle_len)
+	return NULL;
+	
+      p -= needle_len;
+
+      while (p >= haystack)
+	{
+	  for (i = 0; i < needle_len; i++)
+	    if (p[i] != needle[i])
+	      goto next;
+	  
+	  return (gchar *)p;
+	  
+	next:
+	  p--;
+	}
+
+      return NULL;
+    }
+}
+
+
diff --git a/graf2d/win32gdk/gdk/src/glib/gstrfuncs.h b/graf2d/win32gdk/gdk/src/glib/gstrfuncs.h
index ac6b456de67..2f5bfbfd468 100644
--- a/graf2d/win32gdk/gdk/src/glib/gstrfuncs.h
+++ b/graf2d/win32gdk/gdk/src/glib/gstrfuncs.h
@@ -28,66 +28,151 @@
 #define __G_STRFUNCS_H__
 
 #include <stdarg.h>
-#include <g_types.h>
+#include <glib/gtypes.h>
 
 G_BEGIN_DECLS
 
+/* Functions like the ones in <ctype.h> that are not affected by locale. */
+typedef enum {
+  G_ASCII_ALNUM  = 1 << 0,
+  G_ASCII_ALPHA  = 1 << 1,
+  G_ASCII_CNTRL  = 1 << 2,
+  G_ASCII_DIGIT  = 1 << 3,
+  G_ASCII_GRAPH  = 1 << 4,
+  G_ASCII_LOWER  = 1 << 5,
+  G_ASCII_PRINT  = 1 << 6,
+  G_ASCII_PUNCT  = 1 << 7,
+  G_ASCII_SPACE  = 1 << 8,
+  G_ASCII_UPPER  = 1 << 9,
+  G_ASCII_XDIGIT = 1 << 10
+} GAsciiType;
+
+GLIB_VAR const guint16 * const g_ascii_table;
+
+#define g_ascii_isalnum(c) \
+  ((g_ascii_table[(guchar) (c)] & G_ASCII_ALNUM) != 0)
+
+#define g_ascii_isalpha(c) \
+  ((g_ascii_table[(guchar) (c)] & G_ASCII_ALPHA) != 0)
+
+#define g_ascii_iscntrl(c) \
+  ((g_ascii_table[(guchar) (c)] & G_ASCII_CNTRL) != 0)
+
+#define g_ascii_isdigit(c) \
+  ((g_ascii_table[(guchar) (c)] & G_ASCII_DIGIT) != 0)
+
+#define g_ascii_isgraph(c) \
+  ((g_ascii_table[(guchar) (c)] & G_ASCII_GRAPH) != 0)
+
+#define g_ascii_islower(c) \
+  ((g_ascii_table[(guchar) (c)] & G_ASCII_LOWER) != 0)
+
+#define g_ascii_isprint(c) \
+  ((g_ascii_table[(guchar) (c)] & G_ASCII_PRINT) != 0)
+
+#define g_ascii_ispunct(c) \
+  ((g_ascii_table[(guchar) (c)] & G_ASCII_PUNCT) != 0)
+
+#define g_ascii_isspace(c) \
+  ((g_ascii_table[(guchar) (c)] & G_ASCII_SPACE) != 0)
+
+#define g_ascii_isupper(c) \
+  ((g_ascii_table[(guchar) (c)] & G_ASCII_UPPER) != 0)
+
+#define g_ascii_isxdigit(c) \
+  ((g_ascii_table[(guchar) (c)] & G_ASCII_XDIGIT) != 0)
+
+gchar                 g_ascii_tolower  (gchar        c) G_GNUC_CONST;
+gchar                 g_ascii_toupper  (gchar        c) G_GNUC_CONST;
+
+gint                  g_ascii_digit_value  (gchar    c) G_GNUC_CONST;
+gint                  g_ascii_xdigit_value (gchar    c) G_GNUC_CONST;
+
 /* String utility functions that modify a string argument or
  * return a constant string that must not be freed.
  */
 #define	 G_STR_DELIMITERS	"_-|> <."
-gchar*	 g_strdelimit		(gchar	     *string,
-				 const gchar *delimiters,
-				 gchar	      new_delimiter);
-gchar*	 g_strcanon		(gchar       *string,
-				 const gchar *valid_chars,
-				 gchar        subsitutor);
-gdouble	 g_strtod		(const gchar *nptr,
-				 gchar	    **endptr);
-gchar*	 g_strerror		(gint	      errnum) G_GNUC_CONST;
-gchar*	 g_strsignal		(gint	      signum) G_GNUC_CONST;
-gint	 g_strcasecmp		(const gchar *s1,
-				 const gchar *s2);
-gint	 g_strncasecmp		(const gchar *s1,
-				 const gchar *s2,
-				 guint 	      n);
-gchar*	 g_strdown		(gchar	     *string);
-gchar*	 g_strup		(gchar	     *string);
-gchar*	 g_strreverse		(gchar	     *string);
-gsize	 g_strlcpy		(gchar	     *dest,
-				 const gchar *src,
-				 gsize        dest_size);
-gsize	 g_strlcat              (gchar	     *dest,
-				 const gchar *src,
-				 gsize        dest_size);
+gchar*	              g_strdelimit     (gchar	     *string,
+					const gchar *delimiters,
+					gchar	      new_delimiter);
+gchar*	              g_strcanon       (gchar       *string,
+					const gchar *valid_chars,
+					gchar        substitutor);
+gdouble	              g_strtod	       (const gchar *nptr,
+					gchar	    **endptr);
+G_CONST_RETURN gchar* g_strerror       (gint	      errnum) G_GNUC_CONST;
+G_CONST_RETURN gchar* g_strsignal      (gint	      signum) G_GNUC_CONST;
+gchar*	              g_strreverse     (gchar	     *string);
+gsize	              g_strlcpy	       (gchar	     *dest,
+					const gchar  *src,
+					gsize         dest_size);
+gsize	              g_strlcat        (gchar	     *dest,
+					const gchar  *src,
+					gsize         dest_size);
+gchar *               g_strstr_len     (const gchar  *haystack,
+					gssize        haystack_len,
+					const gchar  *needle);
+gchar *               g_strrstr        (const gchar  *haystack,
+					const gchar  *needle);
+gchar *               g_strrstr_len    (const gchar  *haystack,
+					gssize        haystack_len,
+					const gchar  *needle);
+
 /* removes leading spaces */
-gchar*   g_strchug              (gchar        *string);
+gchar*                g_strchug        (gchar        *string);
 /* removes trailing spaces */
-gchar*  g_strchomp              (gchar        *string);
+gchar*                g_strchomp       (gchar        *string);
 /* removes leading & trailing spaces */
 #define g_strstrip( string )	g_strchomp (g_strchug (string))
 
+gint                  g_ascii_strcasecmp  (const gchar *s1,
+					   const gchar *s2);
+gint                  g_ascii_strncasecmp (const gchar *s1,
+					   const gchar *s2,
+					   guint        n);
+gchar*                g_ascii_strdown     (const gchar *str,
+					   gssize       len);
+gchar*                g_ascii_strup       (const gchar *str,
+					   gssize       len);
+
+#ifndef G_DISABLE_DEPRECATED
+
+/* The following four functions are deprecated and will be removed in
+ * the next major release. They use the locale-specific tolower and
+ * toupper, which is almost never the right thing.
+ */
+
+gint	              g_strcasecmp     (const gchar *s1,
+					const gchar *s2);
+gint	              g_strncasecmp    (const gchar *s1,
+					const gchar *s2,
+					guint        n);
+gchar*	              g_strdown	       (gchar	     *string);
+gchar*	              g_strup	       (gchar	     *string);
+
+#endif /* G_DISABLE_DEPRECATED */
+
 /* String utility functions that return a newly allocated string which
  * ought to be freed with g_free from the caller at some point.
  */
-gchar*	 g_strdup		(const gchar *str);
-gchar*	 g_strdup_printf	(const gchar *format,
-				 ...) G_GNUC_PRINTF (1, 2);
-gchar*	 g_strdup_vprintf	(const gchar *format,
-				 va_list      args);
-gchar*	 g_strndup		(const gchar *str,
-				 guint	      n);
-gchar*	 g_strnfill		(guint	      length,
-				 gchar	      fill_char);
-gchar*	 g_strconcat		(const gchar *string1,
-				 ...); /* NULL terminated */
-gchar*   g_strjoin		(const gchar  *separator,
-				 ...); /* NULL terminated */
+gchar*	              g_strdup	       (const gchar *str);
+gchar*	              g_strdup_printf  (const gchar *format,
+					...) G_GNUC_PRINTF (1, 2);
+gchar*	              g_strdup_vprintf (const gchar *format,
+					va_list      args);
+gchar*	              g_strndup	       (const gchar *str,
+					gsize        n);  
+gchar*	              g_strnfill       (gsize        length,  
+					gchar        fill_char);
+gchar*	              g_strconcat      (const gchar *string1,
+					...); /* NULL terminated */
+gchar*                g_strjoin	       (const gchar  *separator,
+					...); /* NULL terminated */
 /* Make a copy of a string interpreting C string -style escape
  * sequences. Inverse of g_strescape. The recognized sequences are \b
  * \f \n \r \t \\ \" and the octal format.
  */
-gchar*   g_strcompress		(const gchar *source);
+gchar*                g_strcompress    (const gchar *source);
 
 /* Copy a string escaping nonprintable characters like in C strings.
  * Inverse of g_strcompress. The exceptions parameter, if non-NULL, points
@@ -97,11 +182,11 @@ gchar*   g_strcompress		(const gchar *source);
  * Luckily this function wasn't used much, using NULL as second parameter
  * provides mostly identical semantics.
  */
-gchar*   g_strescape		(const gchar *source,
-				 const gchar *exceptions);
+gchar*                g_strescape      (const gchar *source,
+					const gchar *exceptions);
 
-gpointer g_memdup		(gconstpointer mem,
-				 guint	       byte_size);
+gpointer              g_memdup	       (gconstpointer mem,
+					guint	       byte_size);
 
 /* NULL terminated string arrays.
  * g_strsplit() splits up string into max_tokens tokens at delim and
@@ -111,13 +196,16 @@ gpointer g_memdup		(gconstpointer mem,
  * g_strfreev() frees the array itself and all of its strings.
  * g_strdupv() copies a NULL-terminated array of strings
  */
-gchar**	 g_strsplit		(const gchar  *string,
-				 const gchar  *delimiter,
-				 gint          max_tokens);
-gchar*   g_strjoinv		(const gchar  *separator,
-				 gchar       **str_array);
-void     g_strfreev		(gchar       **str_array);
-gchar**  g_strdupv              (gchar       **str_array);
+gchar**	              g_strsplit       (const gchar  *string,
+					const gchar  *delimiter,
+					gint          max_tokens);
+gchar*                g_strjoinv       (const gchar  *separator,
+					gchar       **str_array);
+void                  g_strfreev       (gchar       **str_array);
+gchar**               g_strdupv        (gchar       **str_array);
+
+gchar*                g_stpcpy         (gchar        *dest,
+                                        const char   *src);
 
 G_END_DECLS
 
diff --git a/graf2d/win32gdk/gdk/src/glib/gstring.c b/graf2d/win32gdk/gdk/src/glib/gstring.c
new file mode 100644
index 00000000000..a062bbbc11a
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gstring.c
@@ -0,0 +1,750 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+#include <stdarg.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+#include <ctype.h>
+#include "glib.h"
+
+struct _GStringChunk
+{
+  GHashTable *const_table;
+  GSList     *storage_list;
+  gsize       storage_next;    
+  gsize       this_size;       
+  gsize       default_size;    
+};
+
+G_LOCK_DEFINE_STATIC (string_mem_chunk);
+static GMemChunk *string_mem_chunk = NULL;
+
+/* Hash Functions.
+ */
+
+gboolean
+g_str_equal (gconstpointer v1,
+	     gconstpointer v2)
+{
+  const gchar *string1 = v1;
+  const gchar *string2 = v2;
+  
+  return strcmp (string1, string2) == 0;
+}
+
+/* 31 bit hash function */
+guint
+g_str_hash (gconstpointer key)
+{
+  const char *p = key;
+  guint h = *p;
+
+  if (h)
+    for (p += 1; *p != '\0'; p++)
+      h = (h << 5) - h + *p;
+
+  return h;
+}
+
+#define MY_MAXSIZE ((gsize)-1)
+
+static inline gsize
+nearest_power (gsize base, gsize num)    
+{
+  if (num > MY_MAXSIZE / 2)
+    {
+      return MY_MAXSIZE;
+    }
+  else
+    {
+      gsize n = base;
+
+      while (n < num)
+	n <<= 1;
+      
+      return n;
+    }
+}
+
+/* String Chunks.
+ */
+
+GStringChunk*
+g_string_chunk_new (gsize default_size)    
+{
+  GStringChunk *new_chunk = g_new (GStringChunk, 1);
+  gsize size = 1;    
+
+  size = nearest_power (1, default_size);
+
+  new_chunk->const_table       = NULL;
+  new_chunk->storage_list      = NULL;
+  new_chunk->storage_next      = size;
+  new_chunk->default_size      = size;
+  new_chunk->this_size         = size;
+
+  return new_chunk;
+}
+
+void
+g_string_chunk_free (GStringChunk *chunk)
+{
+  GSList *tmp_list;
+
+  g_return_if_fail (chunk != NULL);
+
+  if (chunk->storage_list)
+    {
+      for (tmp_list = chunk->storage_list; tmp_list; tmp_list = tmp_list->next)
+	g_free (tmp_list->data);
+
+      g_slist_free (chunk->storage_list);
+    }
+
+  if (chunk->const_table)
+    g_hash_table_destroy (chunk->const_table);
+
+  g_free (chunk);
+}
+
+gchar*
+g_string_chunk_insert (GStringChunk *chunk,
+		       const gchar  *string)
+{
+  gsize len = strlen (string);
+  char* pos;
+
+  g_return_val_if_fail (chunk != NULL, NULL);
+
+  if ((chunk->storage_next + len + 1) > chunk->this_size)
+    {
+      gsize new_size = nearest_power (chunk->default_size, len + 1);
+
+      chunk->storage_list = g_slist_prepend (chunk->storage_list,
+					     g_new (char, new_size));
+
+      chunk->this_size = new_size;
+      chunk->storage_next = 0;
+    }
+
+  pos = ((char *) chunk->storage_list->data) + chunk->storage_next;
+
+  strcpy (pos, string);
+
+  chunk->storage_next += len + 1;
+
+  return pos;
+}
+
+gchar*
+g_string_chunk_insert_const (GStringChunk *chunk,
+			     const gchar  *string)
+{
+  char* lookup;
+
+  g_return_val_if_fail (chunk != NULL, NULL);
+
+  if (!chunk->const_table)
+    chunk->const_table = g_hash_table_new (g_str_hash, g_str_equal);
+
+  lookup = (char*) g_hash_table_lookup (chunk->const_table, (gchar *)string);
+
+  if (!lookup)
+    {
+      lookup = g_string_chunk_insert (chunk, string);
+      g_hash_table_insert (chunk->const_table, lookup, lookup);
+    }
+
+  return lookup;
+}
+
+/* Strings.
+ */
+static void
+g_string_maybe_expand (GString* string,
+		       gsize    len) 
+{
+  if (string->len + len >= string->allocated_len)
+    {
+      string->allocated_len = nearest_power (1, string->len + len + 1);
+      string->str = g_realloc (string->str, string->allocated_len);
+    }
+}
+
+GString*
+g_string_sized_new (gsize dfl_size)    
+{
+  GString *string;
+
+  G_LOCK (string_mem_chunk);
+  if (!string_mem_chunk)
+    string_mem_chunk = g_mem_chunk_new ("string mem chunk",
+					sizeof (GString),
+					1024, G_ALLOC_AND_FREE);
+
+  string = g_chunk_new (GString, string_mem_chunk);
+  G_UNLOCK (string_mem_chunk);
+
+  string->allocated_len = 0;
+  string->len   = 0;
+  string->str   = NULL;
+
+  g_string_maybe_expand (string, MAX (dfl_size, 2));
+  string->str[0] = 0;
+
+  return string;
+}
+
+GString*
+g_string_new (const gchar *init)
+{
+  GString *string;
+
+  string = g_string_sized_new (init ? strlen (init) + 2 : 2);
+
+  if (init)
+    g_string_append (string, init);
+
+  return string;
+}
+
+GString*
+g_string_new_len (const gchar *init,
+                  gssize       len)    
+{
+  GString *string;
+
+  if (len < 0)
+    return g_string_new (init);
+  else
+    {
+      string = g_string_sized_new (len);
+      
+      if (init)
+        g_string_append_len (string, init, len);
+      
+      return string;
+    }
+}
+
+gchar*
+g_string_free (GString *string,
+	       gboolean free_segment)
+{
+  gchar *segment;
+
+  g_return_val_if_fail (string != NULL, NULL);
+
+  if (free_segment)
+    {
+      g_free (string->str);
+      segment = NULL;
+    }
+  else
+    segment = string->str;
+
+  G_LOCK (string_mem_chunk);
+  g_mem_chunk_free (string_mem_chunk, string);
+  G_UNLOCK (string_mem_chunk);
+
+  return segment;
+}
+
+gboolean
+g_string_equal (const GString *v,
+                const GString *v2)
+{
+  gchar *p, *q;
+  GString *string1 = (GString *) v;
+  GString *string2 = (GString *) v2;
+  gsize i = string1->len;    
+
+  if (i != string2->len)
+    return FALSE;
+
+  p = string1->str;
+  q = string2->str;
+  while (i)
+    {
+      if (*p != *q)
+	return FALSE;
+      p++;
+      q++;
+      i--;
+    }
+  return TRUE;
+}
+
+/* 31 bit hash function */
+guint
+g_string_hash (const GString *str)
+{
+  const gchar *p = str->str;
+  gsize n = str->len;    
+  guint h = 0;
+
+  while (n--)
+    {
+      h = (h << 5) - h + *p;
+      p++;
+    }
+
+  return h;
+}
+
+GString*
+g_string_assign (GString     *string,
+		 const gchar *rval)
+{
+  g_return_val_if_fail (string != NULL, NULL);
+  g_return_val_if_fail (rval != NULL, string);
+  
+  g_string_truncate (string, 0);
+  g_string_append (string, rval);
+
+  return string;
+}
+
+GString*
+g_string_truncate (GString *string,
+		   gsize    len)    
+{
+  g_return_val_if_fail (string != NULL, NULL);
+
+  string->len = MIN (len, string->len);
+  string->str[string->len] = 0;
+
+  return string;
+}
+
+/**
+ * g_string_set_size:
+ * @string: a #GString
+ * @len: the new length
+ * 
+ * Sets the length of a #GString. If the length is less than
+ * the current length, the string will be truncated. If the
+ * length is greater than the current length, the contents
+ * of the newly added area are undefined. (However, as
+ * always, string->str[string->len] will be a nul byte.) 
+ * 
+ * Return value: @string
+ **/
+GString*
+g_string_set_size (GString *string,
+		   gsize    len)    
+{
+  g_return_val_if_fail (string != NULL, NULL);
+
+  if (len >= string->allocated_len)
+    g_string_maybe_expand (string, len - string->len);
+  
+  string->len = len;
+  string->str[len] = 0;
+
+  return string;
+}
+
+GString*
+g_string_insert_len (GString     *string,
+		     gssize       pos,    
+		     const gchar *val,
+		     gssize       len)    
+{
+  g_return_val_if_fail (string != NULL, NULL);
+  g_return_val_if_fail (val != NULL, string);
+
+  if (len < 0)
+    len = strlen (val);
+
+  if (pos < 0)
+    pos = string->len;
+  else
+    g_return_val_if_fail (pos <= string->len, string);
+  
+  g_string_maybe_expand (string, len);
+
+  /* If we aren't appending at the end, move a hunk
+   * of the old string to the end, opening up space
+   */
+  if (pos < string->len)
+    g_memmove (string->str + pos + len, string->str + pos, string->len - pos);
+  
+  /* insert the new string */
+  g_memmove (string->str + pos, val, len);
+
+  string->len += len;
+
+  string->str[string->len] = 0;
+
+  return string;
+}
+
+GString*
+g_string_append (GString     *string,
+		 const gchar *val)
+{  
+  g_return_val_if_fail (string != NULL, NULL);
+  g_return_val_if_fail (val != NULL, string);
+
+  return g_string_insert_len (string, -1, val, -1);
+}
+
+GString*
+g_string_append_len (GString	 *string,
+                     const gchar *val,
+                     gssize       len)    
+{
+  g_return_val_if_fail (string != NULL, NULL);
+  g_return_val_if_fail (val != NULL, string);
+
+  return g_string_insert_len (string, -1, val, len);
+}
+
+GString*
+g_string_append_c (GString *string,
+		   gchar    c)
+{
+  g_return_val_if_fail (string != NULL, NULL);
+
+  return g_string_insert_c (string, -1, c);
+}
+
+/**
+ * g_string_append_unichar:
+ * @string: a #GString
+ * @wc: a Unicode character
+ * 
+ * Converts a Unicode character into UTF-8, and appends it
+ * to the string.
+ * 
+ * Return value: @string
+ **/
+GString*
+g_string_append_unichar (GString  *string,
+			 gunichar  wc)
+{  
+  g_return_val_if_fail (string != NULL, NULL);
+  
+  return g_string_insert_unichar (string, -1, wc);
+}
+
+GString*
+g_string_prepend (GString     *string,
+		  const gchar *val)
+{
+  g_return_val_if_fail (string != NULL, NULL);
+  g_return_val_if_fail (val != NULL, string);
+  
+  return g_string_insert_len (string, 0, val, -1);
+}
+
+GString*
+g_string_prepend_len (GString	  *string,
+                      const gchar *val,
+                      gssize       len)    
+{
+  g_return_val_if_fail (string != NULL, NULL);
+  g_return_val_if_fail (val != NULL, string);
+
+  return g_string_insert_len (string, 0, val, len);
+}
+
+GString*
+g_string_prepend_c (GString *string,
+		    gchar    c)
+{  
+  g_return_val_if_fail (string != NULL, NULL);
+  
+  return g_string_insert_c (string, 0, c);
+}
+
+/**
+ * g_string_append_unichar:
+ * @string: a #GString
+ * @wc: a Unicode character
+ * 
+ * Converts a Unicode character into UTF-8, and prepends it
+ * to the string.
+ * 
+ * Return value: @string
+ **/
+GString*
+g_string_prepend_unichar (GString  *string,
+			  gunichar  wc)
+{  
+  g_return_val_if_fail (string != NULL, NULL);
+  
+  return g_string_insert_unichar (string, 0, wc);
+}
+
+GString*
+g_string_insert (GString     *string,
+		 gssize       pos,    
+		 const gchar *val)
+{
+  g_return_val_if_fail (string != NULL, NULL);
+  g_return_val_if_fail (val != NULL, string);
+  if (pos >= 0)
+    g_return_val_if_fail (pos <= string->len, string);
+  
+  return g_string_insert_len (string, pos, val, -1);
+}
+
+GString*
+g_string_insert_c (GString *string,
+		   gssize   pos,    
+		   gchar    c)
+{
+  g_return_val_if_fail (string != NULL, NULL);
+
+  g_string_maybe_expand (string, 1);
+
+  if (pos < 0)
+    pos = string->len;
+  else
+    g_return_val_if_fail (pos <= string->len, string);
+  
+  /* If not just an append, move the old stuff */
+  if (pos < string->len)
+    g_memmove (string->str + pos + 1, string->str + pos, string->len - pos);
+
+  string->str[pos] = c;
+
+  string->len += 1;
+
+  string->str[string->len] = 0;
+
+  return string;
+}
+
+/**
+ * g_string_insert_unichar:
+ * @string: a #Gstring
+ * @pos: the position at which to insert character, or -1 to
+ *       append at the end of the string.
+ * @wc: a Unicode character
+ * 
+ * Converts a Unicode character into UTF-8, and insert it
+ * into the string at the given position.
+ * 
+ * Return value: @string
+ **/
+GString*
+g_string_insert_unichar (GString *string,
+			 gssize   pos,    
+			 gunichar wc)
+{  
+  gchar buf[6];
+  gint charlen;
+
+  /* We could be somewhat more efficient here by computing
+   * the length, adding the space, then converting into that
+   * space, by cut-and-pasting the internals of g_unichar_to_utf8.
+   */
+  g_return_val_if_fail (string != NULL, NULL);
+
+  charlen = g_unichar_to_utf8 (wc, buf);
+  return g_string_insert_len (string, pos, buf, charlen);
+}
+
+GString*
+g_string_erase (GString *string,
+		gsize    pos,    
+		gsize    len)    
+{
+  g_return_val_if_fail (string != NULL, NULL);
+  g_return_val_if_fail (pos >= 0, string);
+  g_return_val_if_fail (pos <= string->len, string);
+
+  if (len < 0)
+    len = string->len - pos;
+  else
+    {
+      g_return_val_if_fail (pos + len <= string->len, string);
+
+      if (pos + len < string->len)
+	g_memmove (string->str + pos, string->str + pos + len, string->len - (pos + len));
+    }
+
+  string->len -= len;
+  
+  string->str[string->len] = 0;
+
+  return string;
+}
+
+/**
+ * g_string_ascii_down:
+ * @string: a GString
+ * 
+ * Converts all upper case ASCII letters to lower case ASCII letters.
+ * 
+ * Return value: passed-in @string pointer, with all the upper case
+ *               characters converted to lower case in place, with
+ *               semantics that exactly match g_ascii_tolower.
+ **/
+GString*
+g_string_ascii_down (GString *string)
+{
+  gchar *s;
+  gint n = string->len;
+
+  g_return_val_if_fail (string != NULL, NULL);
+
+  s = string->str;
+
+  while (n)
+    {
+      *s = g_ascii_tolower (*s);
+      s++;
+      n--;
+    }
+
+  return string;
+}
+
+/**
+ * g_string_ascii_up:
+ * @string: a GString
+ * 
+ * Converts all lower case ASCII letters to upper case ASCII letters.
+ * 
+ * Return value: passed-in @string pointer, with all the lower case
+ *               characters converted to upper case in place, with
+ *               semantics that exactly match g_ascii_toupper.
+ **/
+GString*
+g_string_ascii_up (GString *string)
+{
+  gchar *s;
+  gint n = string->len;
+
+  g_return_val_if_fail (string != NULL, NULL);
+
+  s = string->str;
+
+  while (n)
+    {
+      *s = g_ascii_toupper (*s);
+      s++;
+      n--;
+    }
+
+  return string;
+}
+
+GString*
+g_string_down (GString *string)
+{
+  guchar *s;
+  glong n = string->len;    
+
+  g_return_val_if_fail (string != NULL, NULL);
+
+  s = (guchar *) string->str;
+
+  while (n)
+    {
+      if (isupper (*s))
+	*s = tolower (*s);
+      s++;
+      n--;
+    }
+
+  return string;
+}
+
+GString*
+g_string_up (GString *string)
+{
+  guchar *s;
+  glong n = string->len;
+
+  g_return_val_if_fail (string != NULL, NULL);
+
+  s = (guchar *) string->str;
+
+  while (n)
+    {
+      if (islower (*s))
+	*s = toupper (*s);
+      s++;
+      n--;
+    }
+
+  return string;
+}
+
+static void
+g_string_printfa_internal (GString     *string,
+			   const gchar *fmt,
+			   va_list      args)
+{
+  gchar *buffer;
+
+  buffer = g_strdup_vprintf (fmt, args);
+  g_string_append (string, buffer);
+  g_free (buffer);
+}
+
+void
+g_string_printf (GString *string,
+		 const gchar *fmt,
+		 ...)
+{
+  va_list args;
+
+  g_string_truncate (string, 0);
+
+  va_start (args, fmt);
+  g_string_printfa_internal (string, fmt, args);
+  va_end (args);
+}
+
+void
+g_string_printfa (GString *string,
+		  const gchar *fmt,
+		  ...)
+{
+  va_list args;
+
+  va_start (args, fmt);
+  g_string_printfa_internal (string, fmt, args);
+  va_end (args);
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gstring.h b/graf2d/win32gdk/gdk/src/glib/gstring.h
index cdd0c6c15b8..7241273b668 100644
--- a/graf2d/win32gdk/gdk/src/glib/gstring.h
+++ b/graf2d/win32gdk/gdk/src/glib/gstring.h
@@ -27,7 +27,8 @@
 #ifndef __G_STRING_H__
 #define __G_STRING_H__
 
-#include <g_types.h>
+#include <glib/gtypes.h>
+#include <glib/gunicode.h>
 
 G_BEGIN_DECLS
 
@@ -36,13 +37,14 @@ typedef struct _GStringChunk	GStringChunk;
 
 struct _GString
 {
-  gchar *str;
-  gint len;
+  gchar  *str;
+  gsize len;    
+  gsize allocated_len;
 };
 
 /* String Chunks
  */
-GStringChunk* g_string_chunk_new	   (gint size);
+GStringChunk* g_string_chunk_new	   (gsize size);  
 void	      g_string_chunk_free	   (GStringChunk *chunk);
 gchar*	      g_string_chunk_insert	   (GStringChunk *chunk,
 					    const gchar	 *string);
@@ -54,8 +56,8 @@ gchar*	      g_string_chunk_insert_const  (GStringChunk *chunk,
  */
 GString*     g_string_new	        (const gchar	 *init);
 GString*     g_string_new_len           (const gchar     *init,
-                                         gint             len);
-GString*     g_string_sized_new         (guint		  dfl_size);
+                                         gssize           len);   
+GString*     g_string_sized_new         (gsize            dfl_size);  
 gchar*	     g_string_free	        (GString	 *string,
 					 gboolean	  free_segment);
 gboolean     g_string_equal             (const GString	 *v,
@@ -64,43 +66,68 @@ guint        g_string_hash              (const GString   *str);
 GString*     g_string_assign            (GString	 *string,
 					 const gchar	 *rval);
 GString*     g_string_truncate          (GString	 *string,
-					 guint		  len);
+					 gsize		  len);    
+GString*     g_string_set_size          (GString         *string,
+					 gsize            len);
 GString*     g_string_insert_len        (GString         *string,
-                                         gint             pos,
+                                         gssize           pos,   
                                          const gchar     *val,
-                                         gint             len);
+                                         gssize           len);  
 GString*     g_string_append            (GString	 *string,
 			                 const gchar	 *val);
 GString*     g_string_append_len        (GString	 *string,
 			                 const gchar	 *val,
-                                         gint             len);
+                                         gssize           len);  
 GString*     g_string_append_c          (GString	 *string,
 					 gchar		  c);
+GString*     g_string_append_unichar    (GString	 *string,
+					 gunichar	  wc);
 GString*     g_string_prepend           (GString	 *string,
 					 const gchar	 *val);
 GString*     g_string_prepend_c         (GString	 *string,
 					 gchar		  c);
+GString*     g_string_prepend_unichar   (GString	 *string,
+					 gunichar	  wc);
 GString*     g_string_prepend_len       (GString	 *string,
 			                 const gchar	 *val,
-                                         gint             len);
+                                         gssize           len);  
 GString*     g_string_insert            (GString	 *string,
-					 gint		  pos,
+					 gssize		  pos,    
 					 const gchar	 *val);
 GString*     g_string_insert_c          (GString	 *string,
-					 gint		  pos,
+					 gssize		  pos,    
 					 gchar		  c);
+GString*     g_string_insert_unichar    (GString	 *string,
+					 gssize		  pos,    
+					 gunichar	  wc);
 GString*     g_string_erase	        (GString	 *string,
-					 gint		  pos,
-					 gint		  len);
-GString*     g_string_down              (GString	 *string);
-GString*     g_string_up                (GString	 *string);
-void         g_string_sprintf           (GString	 *string,
+					 gsize		  pos,    
+					 gsize		  len);   
+GString*     g_string_ascii_down        (GString	 *string);
+GString*     g_string_ascii_up          (GString	 *string);
+void         g_string_printf            (GString	 *string,
 					 const gchar	 *format,
 					 ...) G_GNUC_PRINTF (2, 3);
-void         g_string_sprintfa          (GString	 *string,
+void         g_string_printfa           (GString	 *string,
 					 const gchar	 *format,
 					 ...) G_GNUC_PRINTF (2, 3);
 
+#ifndef G_DISABLE_DEPRECATED
+
+/* The following two functions are deprecated and will be removed in
+ * the next major release. They use the locale-specific tolower and
+ * toupper, which is almost never the right thing.
+ */
+
+GString*     g_string_down              (GString	 *string);
+GString*     g_string_up                (GString	 *string);
+
+/* These aliases are included for compatibility. */
+#define	g_string_sprintf	g_string_printf
+#define	g_string_sprintfa	g_string_printfa
+
+#endif /* G_DISABLE_DEPRECATED */
+
 G_END_DECLS
 
 #endif /* __G_STRING_H__ */
diff --git a/graf2d/win32gdk/gdk/src/glib/gthread.c b/graf2d/win32gdk/gdk/src/glib/gthread.c
new file mode 100644
index 00000000000..0392f282d70
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gthread.c
@@ -0,0 +1,823 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * gmutex.c: MT safety related functions
+ * Copyright 1998 Sebastian Wilhelmi; University of Karlsruhe
+ *                Owen Taylor
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#include "config.h"
+#include "glib.h"
+
+#ifdef G_THREAD_USE_PID_SURROGATE
+#include <sys/types.h>
+#include <sys/time.h>
+#include <sys/resource.h>
+#include <errno.h>
+#endif /* G_THREAD_USE_PID_SURROGATE */
+
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+
+#include <string.h>
+
+#if GLIB_SIZEOF_SYSTEM_THREAD == SIZEOF_VOID_P
+# define g_system_thread_equal_simple(thread1, thread2)			\
+   ((thread1).dummy_pointer == (thread2).dummy_pointer)
+# define g_system_thread_assign(dest, src)				\
+   ((dest).dummy_pointer = (src).dummy_pointer)
+#else /* GLIB_SIZEOF_SYSTEM_THREAD != SIZEOF_VOID_P */
+# define g_system_thread_equal_simple(thread1, thread2)			\
+   (memcmp (&(thread1), &(thread2), GLIB_SIZEOF_SYSTEM_THREAD) == 0)
+# define g_system_thread_assign(dest, src)				\
+   (memcpy (&(dest), &(src), GLIB_SIZEOF_SYSTEM_THREAD))
+#endif /* GLIB_SIZEOF_SYSTEM_THREAD == SIZEOF_VOID_P */
+
+#define g_system_thread_equal(thread1, thread2)				\
+  (g_thread_functions_for_glib_use.thread_equal ? 			\
+   g_thread_functions_for_glib_use.thread_equal (&(thread1), &(thread2)) :\
+   g_system_thread_equal_simple((thread1), (thread2)))
+
+GQuark 
+g_thread_error_quark (void)
+{
+  static GQuark quark;
+  if (!quark)
+    quark = g_quark_from_static_string ("g_thread_error");
+  return quark;
+}
+
+/* Keep this in sync with GRealThread in gmain.c! */
+typedef struct _GRealThread GRealThread;
+struct  _GRealThread
+{
+  GThread thread;
+  gpointer private_data;
+  gpointer retval;
+  GSystemThread system_thread;
+#ifdef G_THREAD_USE_PID_SURROGATE
+  pid_t pid;
+#endif /* G_THREAD_USE_PID_SURROGATE */
+};
+
+#ifdef G_THREAD_USE_PID_SURROGATE
+static gint priority_map[] = { 15, 0, -15, -20 };
+static gboolean prio_warned = FALSE;
+# define SET_PRIO(pid, prio) G_STMT_START{				\
+  gint error = setpriority (PRIO_PROCESS, (pid), priority_map[prio]);	\
+  if (error == -1 && errno == EACCES && !prio_warned)			\
+    {									\
+      prio_warned = TRUE;						\
+      g_warning ("Priorities can only be increased by root.");		\
+    }									\
+  }G_STMT_END
+#endif /* G_THREAD_USE_PID_SURROGATE */
+
+typedef struct _GStaticPrivateNode GStaticPrivateNode;
+struct _GStaticPrivateNode
+{
+  gpointer       data;
+  GDestroyNotify destroy;
+};
+
+static void g_thread_cleanup (gpointer data);
+static void g_thread_fail (void);
+
+/* Global variables */
+
+static GSystemThread zero_thread; /* This is initialized to all zero */
+gboolean g_thread_use_default_impl = TRUE;
+gboolean g_threads_got_initialized = FALSE;
+
+#if defined(G_PLATFORM_WIN32) && defined(__GNUC__)
+__declspec(dllexport)
+#endif
+GThreadFunctions g_thread_functions_for_glib_use = {
+  (GMutex*(*)(void))g_thread_fail,                 /* mutex_new */
+  NULL,                                        /* mutex_lock */
+  NULL,                                        /* mutex_trylock */
+  NULL,                                        /* mutex_unlock */
+  NULL,                                        /* mutex_free */
+  (GCond*(*)(void))g_thread_fail,                  /* cond_new */
+  NULL,                                        /* cond_signal */
+  NULL,                                        /* cond_broadcast */
+  NULL,                                        /* cond_wait */
+  NULL,                                        /* cond_timed_wait  */
+  NULL,                                        /* cond_free */
+  (GPrivate*(*)(GDestroyNotify))g_thread_fail, /* private_new */
+  NULL,                                        /* private_get */
+  NULL,                                        /* private_set */
+  (void(*)(GThreadFunc, gpointer, gulong, 
+	   gboolean, gboolean, GThreadPriority, 
+	   gpointer, GError**))g_thread_fail,  /* thread_create */
+  NULL,                                        /* thread_yield */
+  NULL,                                        /* thread_join */
+  NULL,                                        /* thread_exit */
+  NULL,                                        /* thread_set_priority */
+  NULL                                         /* thread_self */
+}; 
+
+/* Local data */
+
+static GMutex   *g_mutex_protect_static_mutex_allocation = NULL;
+static GPrivate *g_thread_specific_private = NULL;
+static GSList   *g_thread_all_threads = NULL;
+static GSList   *g_thread_free_indeces = NULL;
+
+G_LOCK_DEFINE_STATIC (g_thread);
+
+/* This must be called only once, before any threads are created.
+ * It will only be called from g_thread_init() in -lgthread.
+ */
+void
+g_mutex_init (void)
+{
+  GRealThread* main_thread;
+ 
+  /* We let the main thread (the one that calls g_thread_init) inherit
+   * the data, that it set before calling g_thread_init
+   */
+  main_thread = (GRealThread*) g_thread_self ();
+
+  g_thread_specific_private = g_private_new (g_thread_cleanup);
+  G_THREAD_UF (private_set, (g_thread_specific_private, main_thread));
+  G_THREAD_UF (thread_self, (&main_thread->system_thread));
+
+  g_mutex_protect_static_mutex_allocation = g_mutex_new ();
+}
+
+void 
+g_static_mutex_init (GStaticMutex *mutex)
+{
+  static GStaticMutex init_mutex = G_STATIC_MUTEX_INIT;
+
+  g_return_if_fail (mutex);
+
+  *mutex = init_mutex;
+}
+
+GMutex *
+g_static_mutex_get_mutex_impl (GMutex** mutex)
+{
+  if (!g_thread_supported ())
+    return NULL;
+
+  g_assert (g_mutex_protect_static_mutex_allocation);
+
+  g_mutex_lock (g_mutex_protect_static_mutex_allocation);
+
+  if (!(*mutex)) 
+    *mutex = g_mutex_new (); 
+
+  g_mutex_unlock (g_mutex_protect_static_mutex_allocation);
+  
+  return *mutex;
+}
+
+void
+g_static_mutex_free (GStaticMutex* mutex)
+{
+  GMutex **runtime_mutex;
+  
+  g_return_if_fail (mutex);
+
+  /* The runtime_mutex is the first (or only) member of GStaticMutex,
+   * see both versions (of glibconfig.h) in configure.in */
+  runtime_mutex = ((GMutex**)mutex);
+  
+  if (*runtime_mutex)
+    g_mutex_free (*runtime_mutex);
+
+  *runtime_mutex = NULL;
+}
+
+void     
+g_static_rec_mutex_init (GStaticRecMutex *mutex)
+{
+  static GStaticRecMutex init_mutex = G_STATIC_REC_MUTEX_INIT;
+  
+  g_return_if_fail (mutex);
+
+  *mutex = init_mutex;
+}
+
+void
+g_static_rec_mutex_lock (GStaticRecMutex* mutex)
+{
+  GSystemThread self;
+
+  g_return_if_fail (mutex);
+
+  if (!g_thread_supported ())
+    return;
+
+  G_THREAD_UF (thread_self, (&self));
+
+  if (g_system_thread_equal (self, mutex->owner))
+    {
+      mutex->depth++;
+      return;
+    }
+  g_static_mutex_lock (&mutex->mutex);
+  g_system_thread_assign (mutex->owner, self);
+  mutex->depth = 1;
+}
+
+gboolean
+g_static_rec_mutex_trylock (GStaticRecMutex* mutex)
+{
+  GSystemThread self;
+
+  g_return_val_if_fail (mutex, FALSE);
+
+  if (!g_thread_supported ())
+    return TRUE;
+
+  G_THREAD_UF (thread_self, (&self));
+
+  if (g_system_thread_equal (self, mutex->owner))
+    {
+      mutex->depth++;
+      return TRUE;
+    }
+
+  if (!g_static_mutex_trylock (&mutex->mutex))
+    return FALSE;
+
+  g_system_thread_assign (mutex->owner, self);
+  mutex->depth = 1;
+  return TRUE;
+}
+
+void
+g_static_rec_mutex_unlock (GStaticRecMutex* mutex)
+{
+  g_return_if_fail (mutex);
+
+  if (!g_thread_supported ())
+    return;
+
+  if (mutex->depth > 1)
+    {
+      mutex->depth--;
+      return;
+    }
+  g_system_thread_assign (mutex->owner, zero_thread);
+  g_static_mutex_unlock (&mutex->mutex);  
+}
+
+void
+g_static_rec_mutex_lock_full   (GStaticRecMutex *mutex,
+				guint            depth)
+{
+  GSystemThread self;
+  g_return_if_fail (mutex);
+
+  if (!g_thread_supported ())
+    return;
+
+  G_THREAD_UF (thread_self, (&self));
+
+  if (g_system_thread_equal (self, mutex->owner))
+    {
+      mutex->depth += depth;
+      return;
+    }
+  g_static_mutex_lock (&mutex->mutex);
+  g_system_thread_assign (mutex->owner, self);
+  mutex->depth = depth;
+}
+
+guint    
+g_static_rec_mutex_unlock_full (GStaticRecMutex *mutex)
+{
+  gint depth;
+
+  g_return_val_if_fail (mutex, 0);
+
+  if (!g_thread_supported ())
+    return 1;
+
+  depth = mutex->depth;
+
+  g_system_thread_assign (mutex->owner, zero_thread);
+  mutex->depth = 0;
+  g_static_mutex_unlock (&mutex->mutex);
+
+  return depth;
+}
+
+void
+g_static_rec_mutex_free (GStaticRecMutex *mutex)
+{
+  g_return_if_fail (mutex);
+
+  g_static_mutex_free (&mutex->mutex);
+}
+
+void     
+g_static_private_init (GStaticPrivate *private_key)
+{
+  private_key->index = 0;
+}
+
+gpointer
+g_static_private_get (GStaticPrivate *private_key)
+{
+  GRealThread *self = (GRealThread*) g_thread_self ();
+  GArray *array;
+
+  array = self->private_data;
+  if (!array)
+    return NULL;
+
+  if (!private_key->index)
+    return NULL;
+  else if (private_key->index <= array->len)
+    return g_array_index (array, GStaticPrivateNode, 
+			  private_key->index - 1).data;
+  else
+    return NULL;
+}
+
+void
+g_static_private_set (GStaticPrivate *private_key, 
+		      gpointer        data,
+		      GDestroyNotify  notify)
+{
+  GRealThread *self = (GRealThread*) g_thread_self ();
+  GArray *array;
+  static guint next_index = 0;
+  GStaticPrivateNode *node;
+
+  array = self->private_data;
+  if (!array)
+    {
+      array = g_array_new (FALSE, TRUE, sizeof (GStaticPrivateNode));
+      self->private_data = array;
+    }
+
+  if (!private_key->index)
+    {
+      G_LOCK (g_thread);
+
+      if (!private_key->index)
+	{
+	  if (g_thread_free_indeces)
+	    {
+	      private_key->index = 
+		GPOINTER_TO_UINT (g_thread_free_indeces->data);
+	      g_thread_free_indeces = 
+		g_slist_delete_link (g_thread_free_indeces,
+				     g_thread_free_indeces);
+	    }
+	  else
+	    private_key->index = ++next_index;
+	}
+
+      G_UNLOCK (g_thread);
+    }
+
+  if (private_key->index > array->len)
+    g_array_set_size (array, private_key->index);
+
+  node = &g_array_index (array, GStaticPrivateNode, private_key->index - 1);
+  if (node->destroy)
+    {
+      gpointer ddata = node->data;
+      GDestroyNotify ddestroy = node->destroy;
+
+      node->data = data;
+      node->destroy = notify;
+
+      ddestroy (ddata);
+    }
+  else
+    {
+      node->data = data;
+      node->destroy = notify;
+    }
+}
+
+void     
+g_static_private_free (GStaticPrivate *private_key)
+{
+  guint index = private_key->index;
+  GSList *list;
+
+  if (!index)
+    return;
+  
+  private_key->index = 0;
+
+  G_LOCK (g_thread);
+  list =  g_thread_all_threads;
+  while (list)
+    {
+      GRealThread *thread = list->data;
+      GArray *array = thread->private_data;
+      list = list->next;
+
+      if (array && index <= array->len)
+	{
+	  GStaticPrivateNode *node = &g_array_index (array, 
+						     GStaticPrivateNode, 
+						     index - 1);
+	  gpointer ddata = node->data;
+	  GDestroyNotify ddestroy = node->destroy;
+
+	  node->data = NULL;
+	  node->destroy = NULL;
+
+	  if (ddestroy) 
+	    {
+	      G_UNLOCK (g_thread);
+	      ddestroy (ddata);
+	      G_LOCK (g_thread);
+	      }
+	}
+    }
+  g_thread_free_indeces = g_slist_prepend (g_thread_free_indeces, 
+					   GUINT_TO_POINTER (index));
+  G_UNLOCK (g_thread);
+}
+
+static void
+g_thread_cleanup (gpointer data)
+{
+  if (data)
+    {
+      GRealThread* thread = data;
+      if (thread->private_data)
+	{
+	  GArray* array = thread->private_data;
+	  guint i;
+	  
+	  for (i = 0; i < array->len; i++ )
+	    {
+	      GStaticPrivateNode *node = 
+		&g_array_index (array, GStaticPrivateNode, i);
+	      if (node->destroy)
+		node->destroy (node->data);
+	    }
+	  g_array_free (array, TRUE);
+	}
+
+      /* We only free the thread structure, if it isn't joinable. If
+         it is, the structure is freed in g_thread_join */
+      if (!thread->thread.joinable)
+	{
+	  G_LOCK (g_thread);
+	  g_thread_all_threads = g_slist_remove (g_thread_all_threads, data);
+	  G_UNLOCK (g_thread);
+	  
+	  /* Just to make sure, this isn't used any more */
+	  g_system_thread_assign (thread->system_thread, zero_thread);
+	  g_free (thread);
+	}
+    }
+}
+
+static void
+g_thread_fail (void)
+{
+  g_error ("The thread system is not yet initialized.");
+}
+
+static gpointer
+g_thread_create_proxy (gpointer data)
+{
+  GRealThread* thread = data;
+
+  g_assert (data);
+
+#ifdef G_THREAD_USE_PID_SURROGATE
+  thread->pid = getpid ();
+#endif /* G_THREAD_USE_PID_SURROGATE */
+
+  /* This has to happen before G_LOCK, as that might call g_thread_self */
+  g_private_set (g_thread_specific_private, data);
+
+  /* the lock makes sure, that thread->system_thread is written,
+     before thread->thread.func is called. See g_thread_create. */
+  G_LOCK (g_thread);
+  G_UNLOCK (g_thread);
+ 
+#ifdef G_THREAD_USE_PID_SURROGATE
+  if (g_thread_use_default_impl)
+    SET_PRIO (thread->pid, thread->thread.priority);
+#endif /* G_THREAD_USE_PID_SURROGATE */
+
+  thread->retval = thread->thread.func (thread->thread.data);
+
+  return NULL;
+}
+
+GThread* 
+g_thread_create_full (GThreadFunc 		 func,
+		      gpointer 		 data,
+		      gulong 		 stack_size,
+		      gboolean 		 joinable,
+		      gboolean 		 bound,
+		      GThreadPriority 	 priority,
+		      GError                **error)
+{
+  GRealThread* result = g_new (GRealThread, 1);
+  GError *local_error = NULL;
+  g_return_val_if_fail (func, NULL);
+  g_return_val_if_fail (priority >= G_THREAD_PRIORITY_LOW, NULL);
+  g_return_val_if_fail (priority <= G_THREAD_PRIORITY_URGENT, NULL);
+  
+  result->thread.joinable = joinable;
+  result->thread.priority = priority;
+  result->thread.func = func;
+  result->thread.data = data;
+  result->private_data = NULL; 
+  G_LOCK (g_thread);
+  G_THREAD_UF (thread_create, (g_thread_create_proxy, result, 
+			       stack_size, joinable, bound, priority,
+			       &result->system_thread, &local_error));
+  g_thread_all_threads = g_slist_prepend (g_thread_all_threads, result);
+  G_UNLOCK (g_thread);
+
+  if (local_error)
+    {
+      g_propagate_error (error, local_error);
+      g_free (result);
+      return NULL;
+    }
+
+  return (GThread*) result;
+}
+
+void
+g_thread_exit (gpointer retval)
+{
+  GRealThread* real = (GRealThread*) g_thread_self ();
+  real->retval = retval;
+  G_THREAD_CF (thread_exit, (void)0, ());
+}
+
+gpointer
+g_thread_join (GThread* thread)
+{
+  GRealThread* real = (GRealThread*) thread;
+  gpointer retval;
+
+  g_return_val_if_fail (thread, NULL);
+  g_return_val_if_fail (thread->joinable, NULL);
+  g_return_val_if_fail (!g_system_thread_equal (real->system_thread, 
+						zero_thread), NULL);
+
+  G_THREAD_UF (thread_join, (&real->system_thread));
+
+  retval = real->retval;
+
+  G_LOCK (g_thread);
+  g_thread_all_threads = g_slist_remove (g_thread_all_threads, thread);
+  G_UNLOCK (g_thread);
+
+  /* Just to make sure, this isn't used any more */
+  thread->joinable = 0;
+  g_system_thread_assign (real->system_thread, zero_thread);
+
+  /* the thread structure for non-joinable threads is freed upon
+     thread end. We free the memory here. This will leave a loose end,
+     if a joinable thread is not joined. */
+
+  g_free (thread);
+
+  return retval;
+}
+
+void
+g_thread_set_priority (GThread* thread, 
+		       GThreadPriority priority)
+{
+  GRealThread* real = (GRealThread*) thread;
+
+  g_return_if_fail (thread);
+  g_return_if_fail (!g_system_thread_equal (real->system_thread, zero_thread));
+  g_return_if_fail (priority >= G_THREAD_PRIORITY_LOW);
+  g_return_if_fail (priority <= G_THREAD_PRIORITY_URGENT);
+
+  thread->priority = priority;
+
+#ifdef G_THREAD_USE_PID_SURROGATE
+  if (g_thread_use_default_impl)
+    SET_PRIO (real->pid, priority);
+  else
+#endif /* G_THREAD_USE_PID_SURROGATE */
+    G_THREAD_CF (thread_set_priority, (void)0, 
+		 (&real->system_thread, priority));
+}
+
+GThread*
+g_thread_self (void)
+{
+  GRealThread* thread = g_private_get (g_thread_specific_private);
+
+  if (!thread)
+    {  
+      /* If no thread data is available, provide and set one.  This
+         can happen for the main thread and for threads, that are not
+         created by GLib. */
+      thread = g_new (GRealThread, 1);
+      thread->thread.joinable = FALSE; /* This is a save guess */
+      thread->thread.priority = G_THREAD_PRIORITY_NORMAL; /* This is
+							     just a guess */
+      thread->thread.func = NULL;
+      thread->thread.data = NULL;
+      thread->private_data = NULL;
+
+      if (g_thread_supported ())
+	G_THREAD_UF (thread_self, (&thread->system_thread));
+
+#ifdef G_THREAD_USE_PID_SURROGATE
+      thread->pid = getpid ();
+#endif /* G_THREAD_USE_PID_SURROGATE */
+      
+      g_private_set (g_thread_specific_private, thread); 
+      
+      G_LOCK (g_thread);
+      g_thread_all_threads = g_slist_prepend (g_thread_all_threads, thread);
+      G_UNLOCK (g_thread);
+    }
+  
+  return (GThread*)thread;
+}
+
+void
+g_static_rw_lock_init (GStaticRWLock* lock)
+{
+  static GStaticRWLock init_lock = G_STATIC_RW_LOCK_INIT;
+
+  g_return_if_fail (lock);
+
+  *lock = init_lock;
+}
+
+static void inline 
+g_static_rw_lock_wait (GCond** cond, GStaticMutex* mutex)
+{
+  if (!*cond)
+      *cond = g_cond_new ();
+  g_cond_wait (*cond, g_static_mutex_get_mutex (mutex));
+}
+
+static void inline 
+g_static_rw_lock_signal (GStaticRWLock* lock)
+{
+  if (lock->want_to_write && lock->write_cond)
+    g_cond_signal (lock->write_cond);
+  else if (lock->want_to_read && lock->read_cond)
+    g_cond_broadcast (lock->read_cond);
+}
+
+void 
+g_static_rw_lock_reader_lock (GStaticRWLock* lock)
+{
+  g_return_if_fail (lock);
+
+  if (!g_threads_got_initialized)
+    return;
+
+  g_static_mutex_lock (&lock->mutex);
+  lock->want_to_read++;
+  while (lock->write || lock->want_to_write) 
+    g_static_rw_lock_wait (&lock->read_cond, &lock->mutex);
+  lock->want_to_read--;
+  lock->read_counter++;
+  g_static_mutex_unlock (&lock->mutex);
+}
+
+gboolean 
+g_static_rw_lock_reader_trylock (GStaticRWLock* lock)
+{
+  gboolean ret_val = FALSE;
+
+  g_return_val_if_fail (lock, FALSE);
+
+  if (!g_threads_got_initialized)
+    return TRUE;
+
+  g_static_mutex_lock (&lock->mutex);
+  if (!lock->write && !lock->want_to_write)
+    {
+      lock->read_counter++;
+      ret_val = TRUE;
+    }
+  g_static_mutex_unlock (&lock->mutex);
+  return ret_val;
+}
+
+void 
+g_static_rw_lock_reader_unlock  (GStaticRWLock* lock)
+{
+  g_return_if_fail (lock);
+
+  if (!g_threads_got_initialized)
+    return;
+
+  g_static_mutex_lock (&lock->mutex);
+  lock->read_counter--;
+  if (lock->read_counter == 0)
+    g_static_rw_lock_signal (lock);
+  g_static_mutex_unlock (&lock->mutex);
+}
+
+void 
+g_static_rw_lock_writer_lock (GStaticRWLock* lock)
+{
+  g_return_if_fail (lock);
+
+  if (!g_threads_got_initialized)
+    return;
+
+  g_static_mutex_lock (&lock->mutex);
+  lock->want_to_write++;
+  while (lock->write || lock->read_counter)
+    g_static_rw_lock_wait (&lock->write_cond, &lock->mutex);
+  lock->want_to_write--;
+  lock->write = TRUE;
+  g_static_mutex_unlock (&lock->mutex);
+}
+
+gboolean 
+g_static_rw_lock_writer_trylock (GStaticRWLock* lock)
+{
+  gboolean ret_val = FALSE;
+
+  g_return_val_if_fail (lock, FALSE);
+  
+  if (!g_threads_got_initialized)
+    return TRUE;
+
+  g_static_mutex_lock (&lock->mutex);
+  if (!lock->write && !lock->read_counter)
+    {
+      lock->write = TRUE;
+      ret_val = TRUE;
+    }
+  g_static_mutex_unlock (&lock->mutex);
+  return ret_val;
+}
+
+void 
+g_static_rw_lock_writer_unlock (GStaticRWLock* lock)
+{
+  g_return_if_fail (lock);
+  
+  if (!g_threads_got_initialized)
+    return;
+
+  g_static_mutex_lock (&lock->mutex);
+  lock->write = FALSE; 
+  g_static_rw_lock_signal (lock);
+  g_static_mutex_unlock (&lock->mutex);
+}
+
+void 
+g_static_rw_lock_free (GStaticRWLock* lock)
+{
+  g_return_if_fail (lock);
+  
+  if (lock->read_cond)
+    {
+      g_cond_free (lock->read_cond);
+      lock->read_cond = NULL;
+    }
+  if (lock->write_cond)
+    {
+      g_cond_free (lock->write_cond);
+      lock->write_cond = NULL;
+    }
+  g_static_mutex_free (&lock->mutex);
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gthread.h b/graf2d/win32gdk/gdk/src/glib/gthread.h
index 12681784be2..d4573a1b83c 100644
--- a/graf2d/win32gdk/gdk/src/glib/gthread.h
+++ b/graf2d/win32gdk/gdk/src/glib/gthread.h
@@ -27,34 +27,23 @@
 #ifndef __G_THREAD_H__
 #define __G_THREAD_H__
 
-#include <gerror.h>
+#include <glib/gerror.h>
+#include <glib/gtypes.h>
 
 G_BEGIN_DECLS
 
-#ifndef GLIB_VAR
-#  ifdef G_OS_WIN32
-#    ifdef GLIB_COMPILATION
-#      define GLIB_VAR __declspec(dllexport)
-#    else /* !GLIB_COMPILATION */
-#      define GLIB_VAR extern __declspec(dllimport)
-#    endif /* !GLIB_COMPILATION */
-#  else /* !G_OS_WIN32 */
-#    define GLIB_VAR extern
-#  endif /* !G_OS_WIN32 */
-#endif /* GLIB_VAR */
-
 /* GLib Thread support
  */
 
-extern GQuark g_thread_error_quark();
-#define G_THREAD_ERROR g_thread_error_quark()
+extern GQuark g_thread_error_quark (void);
+#define G_THREAD_ERROR g_thread_error_quark ()
 
 typedef enum
 {
   G_THREAD_ERROR_AGAIN /* Resource temporarily unavailable */
 } GThreadError;
 
-typedef void            (*GThreadFunc)          (gpointer       value);
+typedef gpointer (*GThreadFunc) (gpointer data);
 
 typedef enum
 {
@@ -67,9 +56,10 @@ typedef enum
 typedef struct _GThread         GThread;
 struct  _GThread
 {
-  GThreadPriority priority;
-  gboolean bound;
+  GThreadFunc func;
+  gpointer data;
   gboolean joinable;
+  GThreadPriority priority;
 };
 
 typedef struct _GMutex          GMutex;
@@ -98,8 +88,8 @@ struct _GThreadFunctions
   gpointer  (*private_get)        (GPrivate             *private_key);
   void      (*private_set)        (GPrivate             *private_key,
                                    gpointer              data);
-  void      (*thread_create)      (GThreadFunc           thread_func,
-                                   gpointer              arg,
+  void      (*thread_create)      (GThreadFunc           func,
+                                   gpointer              data,
                                    gulong                stack_size,
                                    gboolean              joinable,
                                    gboolean              bound,
@@ -112,6 +102,8 @@ struct _GThreadFunctions
   void      (*thread_set_priority)(gpointer              thread,
                                    GThreadPriority       priority);
   void      (*thread_self)        (gpointer              thread);
+  gboolean  (*thread_equal)       (gpointer              thread1,
+				   gpointer              thread2);
 };
 
 GLIB_VAR GThreadFunctions       g_thread_functions_for_glib_use;
@@ -147,7 +139,7 @@ GMutex* g_static_mutex_get_mutex_impl   (GMutex **mutex);
 
 #define G_THREAD_UF(op, arglist)					\
     (*g_thread_functions_for_glib_use . op) arglist
-#define G_THREAD_CF(op, fail, arg) 					\
+#define G_THREAD_CF(op, fail, arg)					\
     (g_thread_supported () ? G_THREAD_UF (op, arg) : (fail))
 #define G_THREAD_ECF(op, fail, mutex, type)				\
     (g_thread_supported () ? ((type(*)(GMutex*, gulong, gchar*))	\
@@ -155,37 +147,40 @@ GMutex* g_static_mutex_get_mutex_impl   (GMutex **mutex);
      (mutex, G_MUTEX_DEBUG_MAGIC, G_STRLOC) : (fail))
 
 #ifndef G_ERRORCHECK_MUTEXES
-# define g_mutex_lock(mutex)     					\
+# define g_mutex_lock(mutex)						\
     G_THREAD_CF (mutex_lock,     (void)0, (mutex))
-# define g_mutex_trylock(mutex)  					\
+# define g_mutex_trylock(mutex)						\
     G_THREAD_CF (mutex_trylock,  TRUE,    (mutex))
-# define g_mutex_unlock(mutex)  					\
+# define g_mutex_unlock(mutex)						\
     G_THREAD_CF (mutex_unlock,   (void)0, (mutex))
-# define g_cond_wait(cond, mutex) 					\
+# define g_mutex_free(mutex)						\
+    G_THREAD_CF (mutex_free,     (void)0, (mutex))
+# define g_cond_wait(cond, mutex)					\
     G_THREAD_CF (cond_wait,      (void)0, (cond, mutex))
-# define g_cond_timed_wait(cond, mutex, abs_time) 			\
+# define g_cond_timed_wait(cond, mutex, abs_time)			\
     G_THREAD_CF (cond_timed_wait, TRUE,   (cond, mutex, abs_time))
 #else /* G_ERRORCHECK_MUTEXES */
-# define g_mutex_lock(mutex)   						\
-    G_THREAD_ECF (mutex_lock,    (void)0, mutex, void)
-# define g_mutex_trylock(mutex) 					\
-    G_THREAD_ECF (mutex_trylock, TRUE,    mutex, gboolean)
-# define g_mutex_unlock(mutex)  					\
-    G_THREAD_ECF (mutex_unlock,  (void)0, mutex, void)
+# define g_mutex_lock(mutex)						\
+    G_THREAD_ECF (mutex_lock,    (void)0, (mutex), void)
+# define g_mutex_trylock(mutex)						\
+    G_THREAD_ECF (mutex_trylock, TRUE,    (mutex), gboolean)
+# define g_mutex_unlock(mutex)						\
+    G_THREAD_ECF (mutex_unlock,  (void)0, (mutex), void)
+# define g_mutex_free(mutex)						\
+    G_THREAD_ECF (mutex_free,    (void)0, (mutex), void)
 # define g_cond_wait(cond, mutex)					\
     (g_thread_supported () ? ((void(*)(GCond*, GMutex*, gulong, gchar*))\
       g_thread_functions_for_glib_use.cond_wait)			\
         (cond, mutex, G_MUTEX_DEBUG_MAGIC, G_STRLOC) : (void) 0)
-# define g_cond_timed_wait(cond, mutex, abs_time) 			\
-    (g_thread_supported () ? 						\
+# define g_cond_timed_wait(cond, mutex, abs_time)			\
+    (g_thread_supported () ?						\
       ((gboolean(*)(GCond*, GMutex*, GTimeVal*, gulong, gchar*))	\
-        g_thread_functions_for_glib_use.cond_timed_wait) 		\
+        g_thread_functions_for_glib_use.cond_timed_wait)		\
           (cond, mutex, abs_time, G_MUTEX_DEBUG_MAGIC, G_STRLOC) : TRUE)
 #endif /* G_ERRORCHECK_MUTEXES */
 
 #define g_thread_supported()    (g_threads_got_initialized)
 #define g_mutex_new()            G_THREAD_UF (mutex_new,      ())
-#define g_mutex_free(mutex)      G_THREAD_CF (mutex_free,     (void)0, (mutex))
 #define g_cond_new()             G_THREAD_UF (cond_new,       ())
 #define g_cond_signal(cond)      G_THREAD_CF (cond_signal,    (void)0, (cond))
 #define g_cond_broadcast(cond)   G_THREAD_CF (cond_broadcast, (void)0, (cond))
@@ -199,19 +194,24 @@ GMutex* g_static_mutex_get_mutex_impl   (GMutex **mutex);
                                                         (GPrivate*) (value)), \
                                                        (private_key, value))
 #define g_thread_yield()              G_THREAD_CF (thread_yield, (void)0, ())
-#define g_thread_exit()               G_THREAD_CF (thread_exit, (void)0, ())
-
-GThread* g_thread_create (GThreadFunc            thread_func,
-                          gpointer               arg,
-                          gulong                 stack_size,
-                          gboolean               joinable,
-                          gboolean               bound,
-                          GThreadPriority        priority,
-                          GError               **error);
-GThread* g_thread_self (void);
-void g_thread_join (GThread *thread);
-void g_thread_set_priority (GThread         *thread,
-                            GThreadPriority  priority);
+
+#define g_thread_create(func, data, joinable, error)			\
+  (g_thread_create_full (func, data, 0, joinable, FALSE, 		\
+                         G_THREAD_PRIORITY_NORMAL, error))
+
+GThread* g_thread_create_full  (GThreadFunc            func,
+                                gpointer               data,
+                                gulong                 stack_size,
+                                gboolean               joinable,
+                                gboolean               bound,
+                                GThreadPriority        priority,
+                                GError               **error);
+GThread* g_thread_self         (void);
+void     g_thread_exit         (gpointer               retval);
+gpointer g_thread_join         (GThread               *thread);
+
+void     g_thread_set_priority (GThread               *thread,
+                                GThreadPriority        priority);
 
 /* GStaticMutexes can be statically initialized with the value
  * G_STATIC_MUTEX_INIT, and then they can directly be used, that is
@@ -224,22 +224,20 @@ void g_thread_set_priority (GThread         *thread,
     g_mutex_trylock (g_static_mutex_get_mutex (mutex))
 #define g_static_mutex_unlock(mutex) \
     g_mutex_unlock (g_static_mutex_get_mutex (mutex))
+void g_static_mutex_init (GStaticMutex *mutex);
+void g_static_mutex_free (GStaticMutex *mutex);
 
 struct _GStaticPrivate
 {
   guint index;
 };
 #define G_STATIC_PRIVATE_INIT { 0 }
-gpointer g_static_private_get (GStaticPrivate   *private_key);
-void     g_static_private_set (GStaticPrivate   *private_key,
-                               gpointer          data,
-                               GDestroyNotify    notify);
-gpointer g_static_private_get_for_thread (GStaticPrivate *private_key,
-                                          GThread        *thread);
-void g_static_private_set_for_thread (GStaticPrivate *private_key,
-                                      GThread        *thread,
-                                      gpointer        data,
-                                      GDestroyNotify  notify);
+void     g_static_private_init           (GStaticPrivate   *private_key);
+gpointer g_static_private_get            (GStaticPrivate   *private_key);
+void     g_static_private_set            (GStaticPrivate   *private_key,
+					  gpointer          data,
+					  GDestroyNotify    notify);
+void     g_static_private_free           (GStaticPrivate   *private_key);
 
 typedef struct _GStaticRecMutex GStaticRecMutex;
 struct _GStaticRecMutex
@@ -250,12 +248,14 @@ struct _GStaticRecMutex
 };
 
 #define G_STATIC_REC_MUTEX_INIT { G_STATIC_MUTEX_INIT }
+void     g_static_rec_mutex_init        (GStaticRecMutex *mutex);
 void     g_static_rec_mutex_lock        (GStaticRecMutex *mutex);
 gboolean g_static_rec_mutex_trylock     (GStaticRecMutex *mutex);
 void     g_static_rec_mutex_unlock      (GStaticRecMutex *mutex);
 void     g_static_rec_mutex_lock_full   (GStaticRecMutex *mutex,
                                          guint            depth);
 guint    g_static_rec_mutex_unlock_full (GStaticRecMutex *mutex);
+void     g_static_rec_mutex_free        (GStaticRecMutex *mutex);
 
 typedef struct _GStaticRWLock GStaticRWLock;
 struct _GStaticRWLock
@@ -265,18 +265,20 @@ struct _GStaticRWLock
   GCond *write_cond;
   guint read_counter;
   gboolean write;
+  guint want_to_read;
   guint want_to_write;
 };
 
-#define G_STATIC_RW_LOCK_INIT { G_STATIC_MUTEX_INIT, NULL, NULL, 0, FALSE, FALSE }
+#define G_STATIC_RW_LOCK_INIT { G_STATIC_MUTEX_INIT, NULL, NULL, 0, FALSE, 0, 0 }
 
+void      g_static_rw_lock_init           (GStaticRWLock* lock);
 void      g_static_rw_lock_reader_lock    (GStaticRWLock* lock);
 gboolean  g_static_rw_lock_reader_trylock (GStaticRWLock* lock);
 void      g_static_rw_lock_reader_unlock  (GStaticRWLock* lock);
 void      g_static_rw_lock_writer_lock    (GStaticRWLock* lock);
 gboolean  g_static_rw_lock_writer_trylock (GStaticRWLock* lock);
 void      g_static_rw_lock_writer_unlock  (GStaticRWLock* lock);
-void      g_static_rw_lock_free (GStaticRWLock* lock);
+void      g_static_rw_lock_free           (GStaticRWLock* lock);
 
 /* these are some convenience macros that expand to nothing if GLib
  * was configured with --disable-threads. for using StaticMutexes,
diff --git a/graf2d/win32gdk/gdk/src/glib/gthreadpool.c b/graf2d/win32gdk/gdk/src/glib/gthreadpool.c
new file mode 100644
index 00000000000..601022830c4
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gthreadpool.c
@@ -0,0 +1,678 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * GAsyncQueue: thread pool implementation.
+ * Copyright (C) 2000 Sebastian Wilhelmi; University of Karlsruhe
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * MT safe
+ */
+
+#include "glib.h"
+
+typedef struct _GRealThreadPool GRealThreadPool;
+
+struct _GRealThreadPool
+{
+  GThreadPool pool;
+  GAsyncQueue* queue;
+  gint max_threads;
+  gint num_threads;
+  gboolean running;
+  gboolean immediate;
+  gboolean waiting;
+};
+
+/* The following is just an address to mark the stop order for a
+ * thread, it could be any address (as long, as it isn't a valid
+ * GThreadPool address) */
+static const gpointer stop_this_thread_marker = (gpointer) &g_thread_pool_new;
+
+/* Here all unused threads are waiting  */
+static GAsyncQueue *unused_thread_queue;
+static gint unused_threads = 0;
+static gint max_unused_threads = 0;
+G_LOCK_DEFINE_STATIC (unused_threads);
+
+static GMutex *inform_mutex = NULL;
+static GCond *inform_cond = NULL;
+
+static void     g_thread_pool_free_internal (GRealThreadPool* pool);
+static gpointer g_thread_pool_thread_proxy (gpointer data);
+static void     g_thread_pool_start_thread (GRealThreadPool* pool, 
+					    GError **error);
+static void     g_thread_pool_wakeup_and_stop_all (GRealThreadPool* pool);
+
+#define g_thread_should_run(pool, len) \
+  ((pool)->running || (!(pool)->immediate && (len) > 0))
+
+static gpointer 
+g_thread_pool_thread_proxy (gpointer data)
+{
+  GRealThreadPool *pool = data;
+  gboolean watcher = FALSE;
+
+  g_async_queue_lock (pool->queue);
+  while (TRUE)
+    {
+      gpointer task; 
+      gboolean goto_global_pool = !pool->pool.exclusive;
+      gint len = g_async_queue_length_unlocked (pool->queue);
+      
+      if (g_thread_should_run (pool, len))
+	{
+	  if (watcher)
+	    {
+	      /* This thread is actually not needed here, but it waits
+               * for some time anyway. If during that time a new
+               * request arrives, this saves process
+               * swicthes. Otherwise the thread will go to the global
+               * pool afterwards */
+	      GTimeVal end_time;
+	      g_get_current_time (&end_time);
+	      g_time_val_add (&end_time, G_USEC_PER_SEC / 2); /* 1/2 second */
+	      task = g_async_queue_timed_pop_unlocked (pool->queue, &end_time);
+	    }
+	  else
+	    task = g_async_queue_pop_unlocked (pool->queue);
+	  
+	  if (task)
+	    {
+	      watcher = FALSE;
+	      if (pool->num_threads > pool->max_threads && 
+		  pool->max_threads != -1)
+		/* We are in fact a superfluous threads, so we go to
+		 * the global pool and just hand the data further to
+		 * the next one waiting in the queue */
+		{
+		  g_async_queue_push_unlocked (pool->queue, task);
+		  goto_global_pool = TRUE;
+		}
+	      else if (pool->running || !pool->immediate)
+		{
+		  g_async_queue_unlock (pool->queue);
+		  pool->pool.func (task, pool->pool.user_data);
+		  g_async_queue_lock (pool->queue);
+		}
+	    }
+	  len = g_async_queue_length_unlocked (pool->queue);
+	}
+
+      if (!g_thread_should_run (pool, len))
+	{
+	  g_cond_broadcast (inform_cond);
+	  goto_global_pool = TRUE;
+	}
+      else if (len > 0)
+	{
+	  /* At this pool there are no threads waiting, but tasks are. */
+	  goto_global_pool = FALSE; 
+	}
+      else if (len == 0 && !watcher && !pool->pool.exclusive)
+	{
+	  /* Here neither threads nor tasks are queued and we didn't
+	   * just return from a timed wait. We now wait for a limited
+	   * time at this pool for new tasks to avoid costly context
+	   * switches. */
+	  goto_global_pool = FALSE;
+	  watcher = TRUE;
+	}
+
+      
+      if (goto_global_pool)
+	{
+	  pool->num_threads--; 
+
+	  if (!pool->running && !pool->waiting)
+	    {
+	      if (pool->num_threads == 0)
+		{
+		  g_async_queue_unlock (pool->queue);
+		  g_thread_pool_free_internal (pool);
+		}		
+	      else if (len == - pool->num_threads)
+		{
+		  g_thread_pool_wakeup_and_stop_all (pool);
+		  g_async_queue_unlock (pool->queue);
+		}
+	    }
+	  else
+	    g_async_queue_unlock (pool->queue);
+	  
+	  g_async_queue_lock (unused_thread_queue);
+
+	  G_LOCK (unused_threads);
+	  if ((unused_threads >= max_unused_threads && 
+	       max_unused_threads != -1))
+	    {
+	      G_UNLOCK (unused_threads);
+	      g_async_queue_unlock (unused_thread_queue);
+	      /* Stop this thread */
+	      return NULL;      
+	    }
+	  unused_threads++;
+	  G_UNLOCK (unused_threads);
+
+	  pool = g_async_queue_pop_unlocked (unused_thread_queue);
+
+	  G_LOCK (unused_threads);
+	  unused_threads--;
+	  G_UNLOCK (unused_threads);
+
+	  g_async_queue_unlock (unused_thread_queue);
+	  
+	  if (pool == stop_this_thread_marker)
+	    /* Stop this thread */
+	    return NULL;
+	  
+	  g_async_queue_lock (pool->queue);
+
+	  /* pool->num_threads++ is not done here, but in
+           * g_thread_pool_start_thread to make the new started thread
+           * known to the pool, before itself can do it. */
+	}
+    }
+  return NULL;
+}
+
+static void
+g_thread_pool_start_thread (GRealThreadPool  *pool, 
+			    GError          **error)
+{
+  gboolean success = FALSE;
+  
+  if (pool->num_threads >= pool->max_threads && pool->max_threads != -1)
+    /* Enough threads are already running */
+    return;
+
+  g_async_queue_lock (unused_thread_queue);
+
+  if (g_async_queue_length_unlocked (unused_thread_queue) < 0)
+    {
+      g_async_queue_push_unlocked (unused_thread_queue, pool);
+      success = TRUE;
+    }
+
+  g_async_queue_unlock (unused_thread_queue);
+
+  if (!success)
+    {
+      GError *local_error = NULL;
+      /* No thread was found, we have to start a new one */
+      g_thread_create (g_thread_pool_thread_proxy, pool, FALSE, &local_error);
+      
+      if (local_error)
+	{
+	  g_propagate_error (error, local_error);
+	  return;
+	}
+    }
+
+  /* See comment in g_thread_pool_thread_proxy as to why this is done
+   * here and not there */
+  pool->num_threads++;
+}
+
+/**
+ * g_thread_pool_new: 
+ * @func: a function to execute in the threads of the new thread pool
+ * @user_data: user data that is handed over to @func every time it 
+ *   is called
+ * @max_threads: the maximal number of threads to execute concurrently in 
+ *   the new thread pool, -1 means no limit
+ * @exclusive: should this thread pool be exclusive?
+ * @error: return location for error
+ *
+ * This function creates a new thread pool.
+ *
+ * Whenever you call g_thread_pool_push(), either a new thread is
+ * created or an unused one is reused. At most @max_threads threads
+ * are running concurrently for this thread pool. @max_threads = -1
+ * allows unlimited threads to be created for this thread pool. The
+ * newly created or reused thread now executes the function @func with
+ * the two arguments. The first one is the parameter to
+ * g_thread_pool_push() and the second one is @user_data.
+ *
+ * The parameter @exclusive determines, whether the thread pool owns
+ * all threads exclusive or whether the threads are shared
+ * globally. If @exclusive is @TRUE, @max_threads threads are started
+ * immediately and they will run exclusively for this thread pool until
+ * it is destroyed by g_thread_pool_free(). If @exclusive is @FALSE,
+ * threads are created, when needed and shared between all
+ * non-exclusive thread pools. This implies that @max_threads may not
+ * be -1 for exclusive thread pools.
+ *
+ * @error can be NULL to ignore errors, or non-NULL to report
+ * errors. An error can only occur, when @exclusive is set to @TRUE and
+ * not all @max_threads threads could be created.
+ *
+ * Return value: the new #GThreadPool
+ **/
+GThreadPool* 
+g_thread_pool_new (GFunc            func,
+		   gpointer         user_data,
+		   gint             max_threads,
+		   gboolean         exclusive,
+		   GError         **error)
+{
+  GRealThreadPool *retval;
+  G_LOCK_DEFINE_STATIC (init);
+
+  g_return_val_if_fail (func, NULL);
+  g_return_val_if_fail (!exclusive || max_threads != -1, NULL);
+  g_return_val_if_fail (max_threads >= -1, NULL);
+  g_return_val_if_fail (g_thread_supported (), NULL);
+
+  retval = g_new (GRealThreadPool, 1);
+
+  retval->pool.func = func;
+  retval->pool.user_data = user_data;
+  retval->pool.exclusive = exclusive;
+  retval->queue = g_async_queue_new ();
+  retval->max_threads = max_threads;
+  retval->num_threads = 0;
+  retval->running = TRUE;
+
+  G_LOCK (init);
+  
+  if (!inform_mutex)
+    {
+      inform_mutex = g_mutex_new ();
+      inform_cond = g_cond_new ();
+      unused_thread_queue = g_async_queue_new ();
+    }
+
+  G_UNLOCK (init);
+
+  if (retval->pool.exclusive)
+    {
+      g_async_queue_lock (retval->queue);
+  
+      while (retval->num_threads < retval->max_threads)
+	{
+	  GError *local_error = NULL;
+	  g_thread_pool_start_thread (retval, &local_error);
+	  if (local_error)
+	    {
+	      g_propagate_error (error, local_error);
+	      break;
+	    }
+	}
+
+      g_async_queue_unlock (retval->queue);
+    }
+
+  return (GThreadPool*) retval;
+}
+
+/**
+ * g_thread_pool_push:
+ * @pool: a #GThreadPool
+ * @data: a new task for @pool
+ * @error: return location for error
+ * 
+ * Inserts @data into the list of tasks to be executed by @pool. When
+ * the number of currently running threads is lower than the maximal
+ * allowed number of threads, a new thread is started (or reused) with
+ * the properties given to g_thread_pool_new (). Otherwise @data stays
+ * in the queue until a thread in this pool finishes its previous task
+ * and processes @data. 
+ *
+ * @error can be NULL to ignore errors, or non-NULL to report
+ * errors. An error can only occur, when a new thread couldn't be
+ * created. In that case @data is simply appended to the queue of work
+ * to do.  
+ **/
+void 
+g_thread_pool_push (GThreadPool     *pool,
+		    gpointer         data,
+		    GError         **error)
+{
+  GRealThreadPool *real = (GRealThreadPool*) pool;
+
+  g_return_if_fail (real);
+
+  g_async_queue_lock (real->queue);
+  
+  if (!real->running)
+    {
+      g_async_queue_unlock (real->queue);
+      g_return_if_fail (real->running);
+    }
+
+  if (g_async_queue_length_unlocked (real->queue) >= 0)
+    /* No thread is waiting in the queue */
+    g_thread_pool_start_thread (real, error);
+
+  g_async_queue_push_unlocked (real->queue, data);
+  g_async_queue_unlock (real->queue);
+}
+
+/**
+ * g_thread_pool_set_max_threads:
+ * @pool: a #GThreadPool
+ * @max_threads: a new maximal number of threads for @pool
+ * @error: return location for error
+ * 
+ * Sets the maximal allowed number of threads for @pool. A value of -1
+ * means, that the maximal number of threads is unlimited.
+ *
+ * Setting @max_threads to 0 means stopping all work for @pool. It is
+ * effectively frozen until @max_threads is set to a non-zero value
+ * again.
+ * 
+ * A thread is never terminated while calling @func, as supplied by
+ * g_thread_pool_new (). Instead the maximal number of threads only
+ * has effect for the allocation of new threads in g_thread_pool_push
+ * (). A new thread is allocated, whenever the number of currently
+ * running threads in @pool is smaller than the maximal number.
+ *
+ * @error can be NULL to ignore errors, or non-NULL to report
+ * errors. An error can only occur, when a new thread couldn't be
+ * created. 
+ **/
+void
+g_thread_pool_set_max_threads (GThreadPool     *pool,
+			       gint             max_threads,
+			       GError         **error)
+{
+  GRealThreadPool *real = (GRealThreadPool*) pool;
+  gint to_start;
+
+  g_return_if_fail (real);
+  g_return_if_fail (real->running);
+  g_return_if_fail (!real->pool.exclusive || max_threads != -1);
+  g_return_if_fail (max_threads >= -1);
+
+  g_async_queue_lock (real->queue);
+
+  real->max_threads = max_threads;
+  
+  if (pool->exclusive)
+    to_start = real->max_threads - real->num_threads;
+  else
+    to_start = g_async_queue_length_unlocked (real->queue);
+  
+  for ( ; to_start > 0; to_start--)
+    {
+      GError *local_error = NULL;
+      g_thread_pool_start_thread (real, &local_error);
+      if (local_error)
+	{
+	  g_propagate_error (error, local_error);
+	  break;
+	}
+    }
+   
+  g_async_queue_unlock (real->queue);
+}
+
+/**
+ * g_thread_pool_get_max_threads:
+ * @pool: a #GThreadPool
+ *
+ * Returns the maximal number of threads for @pool.
+ *
+ * Return value: the maximal number of threads
+ **/
+gint
+g_thread_pool_get_max_threads (GThreadPool     *pool)
+{
+  GRealThreadPool *real = (GRealThreadPool*) pool;
+  gint retval;
+
+  g_return_val_if_fail (real, 0);
+  g_return_val_if_fail (real->running, 0);
+
+  g_async_queue_lock (real->queue);
+
+  retval = real->max_threads;
+    
+  g_async_queue_unlock (real->queue);
+
+  return retval;
+}
+
+/**
+ * g_thread_pool_get_num_threads:
+ * @pool: a #GThreadPool
+ *
+ * Returns the number of threads currently running in @pool.
+ *
+ * Return value: the number of threads currently running
+ **/
+guint
+g_thread_pool_get_num_threads (GThreadPool     *pool)
+{
+  GRealThreadPool *real = (GRealThreadPool*) pool;
+  guint retval;
+
+  g_return_val_if_fail (real, 0);
+  g_return_val_if_fail (real->running, 0);
+
+  g_async_queue_lock (real->queue);
+
+  retval = real->num_threads;
+    
+  g_async_queue_unlock (real->queue);
+
+  return retval;
+}
+
+/**
+ * g_thread_pool_unprocessed:
+ * @pool: a #GThreadPool
+ *
+ * Returns the number of tasks still unprocessed in @pool.
+ *
+ * Return value: the number of unprocessed tasks
+ **/
+guint
+g_thread_pool_unprocessed (GThreadPool     *pool)
+{
+  GRealThreadPool *real = (GRealThreadPool*) pool;
+  gint unprocessed;
+
+  g_return_val_if_fail (real, 0);
+  g_return_val_if_fail (real->running, 0);
+
+  unprocessed = g_async_queue_length (real->queue);
+
+  return MAX (unprocessed, 0);
+}
+
+/**
+ * g_thread_pool_free:
+ * @pool: a #GThreadPool
+ * @immediate: should @pool shut down immediately?
+ * @wait: should the function wait for all tasks to be finished?
+ *
+ * Frees all resources allocated for @pool.
+ *
+ * If @immediate is #TRUE, no new task is processed for
+ * @pool. Otherwise @pool is not freed before the last task is
+ * processed. Note however, that no thread of this pool is
+ * interrupted, while processing a task. Instead at least all still
+ * running threads can finish their tasks before the @pool is freed.
+ *
+ * If @wait is #TRUE, the functions does not return before all tasks
+ * to be processed (dependent on @immediate, whether all or only the
+ * currently running) are ready. Otherwise the function returns immediately.
+ *
+ * After calling this function @pool must not be used anymore. 
+ **/
+void
+g_thread_pool_free (GThreadPool     *pool,
+		    gboolean         immediate,
+		    gboolean         wait)
+{
+  GRealThreadPool *real = (GRealThreadPool*) pool;
+
+  g_return_if_fail (real);
+  g_return_if_fail (real->running);
+  /* It there's no thread allowed here, there is not much sense in
+   * not stopping this pool immediately, when it's not empty */
+  g_return_if_fail (immediate || real->max_threads != 0 || 
+		    g_async_queue_length (real->queue) == 0);
+
+  g_async_queue_lock (real->queue);
+
+  real->running = FALSE;
+  real->immediate = immediate;
+  real->waiting = wait;
+
+  if (wait)
+    {
+      g_mutex_lock (inform_mutex);
+      while (g_async_queue_length_unlocked (real->queue) != -real->num_threads)
+	{
+	  g_async_queue_unlock (real->queue); 
+	  g_cond_wait (inform_cond, inform_mutex); 
+	  g_async_queue_lock (real->queue); 
+	}
+      g_mutex_unlock (inform_mutex); 
+    }
+
+  if (g_async_queue_length_unlocked (real->queue) == -real->num_threads)
+    {
+      /* No thread is currently doing something (and nothing is left
+       * to process in the queue) */
+      if (real->num_threads == 0) /* No threads left, we clean up */
+	{
+	  g_async_queue_unlock (real->queue);
+	  g_thread_pool_free_internal (real);
+	  return;
+	}
+
+      g_thread_pool_wakeup_and_stop_all (real);
+    }
+  
+  real->waiting = FALSE; /* The last thread should cleanup the pool */
+  g_async_queue_unlock (real->queue);
+}
+
+static void
+g_thread_pool_free_internal (GRealThreadPool* pool)
+{
+  g_return_if_fail (pool);
+  g_return_if_fail (!pool->running);
+  g_return_if_fail (pool->num_threads == 0);
+
+  g_async_queue_unref (pool->queue);
+
+  g_free (pool);
+}
+
+static void
+g_thread_pool_wakeup_and_stop_all (GRealThreadPool* pool)
+{
+  guint i;
+  
+  g_return_if_fail (pool);
+  g_return_if_fail (!pool->running);
+  g_return_if_fail (pool->num_threads != 0);
+  g_return_if_fail (g_async_queue_length_unlocked (pool->queue) == 
+		    -pool->num_threads);
+
+  pool->immediate = TRUE; 
+  for (i = 0; i < pool->num_threads; i++)
+    g_async_queue_push_unlocked (pool->queue, GUINT_TO_POINTER (1));
+}
+
+/**
+ * g_thread_pool_set_max_unused_threads:
+ * @max_threads: maximal number of unused threads
+ *
+ * Sets the maximal number of unused threads to @max_threads. If
+ * @max_threads is -1, no limit is imposed on the number of unused
+ * threads.
+ **/
+void
+g_thread_pool_set_max_unused_threads (gint max_threads)
+{
+  g_return_if_fail (max_threads >= -1);  
+
+  G_LOCK (unused_threads);
+  
+  max_unused_threads = max_threads;
+
+  if (max_unused_threads < unused_threads && max_unused_threads != -1)
+    {
+      guint i;
+
+      g_async_queue_lock (unused_thread_queue);
+      for (i = unused_threads - max_unused_threads; i > 0; i--)
+	g_async_queue_push_unlocked (unused_thread_queue, 
+				     stop_this_thread_marker);
+      g_async_queue_unlock (unused_thread_queue);
+    }
+    
+  G_UNLOCK (unused_threads);
+}
+
+/**
+ * g_thread_pool_get_max_unused_threads:
+ * 
+ * Returns the maximal allowed number of unused threads.
+ *
+ * Return value: the maximal number of unused threads
+ **/
+gint
+g_thread_pool_get_max_unused_threads (void)
+{
+  gint retval;
+  
+  G_LOCK (unused_threads);
+  retval = max_unused_threads;
+  G_UNLOCK (unused_threads);
+
+  return retval;
+}
+
+/**
+ * g_thread_pool_get_num_unused_threads:
+ * 
+ * Returns the number of currently unused threads.
+ *
+ * Return value: the number of currently unused threads
+ **/
+guint g_thread_pool_get_num_unused_threads (void)
+{
+  guint retval;
+  
+  G_LOCK (unused_threads);
+  retval = unused_threads;
+  G_UNLOCK (unused_threads);
+
+  return retval;
+}
+
+/**
+ * g_thread_pool_stop_unused_threads:
+ * 
+ * Stops all currently unused threads. This does not change the
+ * maximal number of unused threads. This function can be used to
+ * regularly stop all unused threads e.g. from g_timeout_add().
+ **/
+void g_thread_pool_stop_unused_threads (void)
+{ 
+  guint oldval = g_thread_pool_get_max_unused_threads ();
+  g_thread_pool_set_max_unused_threads (0);
+  g_thread_pool_set_max_unused_threads (oldval);
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gthreadpool.h b/graf2d/win32gdk/gdk/src/glib/gthreadpool.h
index d6fa87c8a98..ed1e81ba350 100644
--- a/graf2d/win32gdk/gdk/src/glib/gthreadpool.h
+++ b/graf2d/win32gdk/gdk/src/glib/gthreadpool.h
@@ -27,7 +27,7 @@
 #ifndef __G_THREADPOOL_H__
 #define __G_THREADPOOL_H__
 
-#include <gthread.h>
+#include <glib/gthread.h>
 
 G_BEGIN_DECLS
 
@@ -40,26 +40,20 @@ typedef struct _GThreadPool     GThreadPool;
  * pool with the constructor function */
 struct _GThreadPool
 {
-  GFunc thread_func;
-  gulong stack_size;
-  gboolean bound;
-  GThreadPriority priority;
-  gboolean exclusive;
+  GFunc func;
   gpointer user_data;
+  gboolean exclusive;
 };
 
-/* Get a thread pool with the function thread_func, at most max_threads may
- * run at a time (max_threads == -1 means no limit), stack_size, bound,
- * priority like in g_thread_create, exclusive == TRUE means, that the threads
- * shouldn't be shared and that they will be prestarted (otherwise they are
- * started, as needed) user_data is the 2nd argument to the thread_func */
-GThreadPool*    g_thread_pool_new             (GFunc            thread_func,
+/* Get a thread pool with the function func, at most max_threads may
+ * run at a time (max_threads == -1 means no limit), exclusive == TRUE
+ * means, that the threads shouldn't be shared and that they will be
+ * prestarted (otherwise they are started as needed) user_data is the
+ * 2nd argument to the func */
+GThreadPool*    g_thread_pool_new             (GFunc            func,
+                                               gpointer         user_data,
                                                gint             max_threads,
-                                               gulong           stack_size,
-                                               gboolean         bound,
-                                               GThreadPriority  priority,
                                                gboolean         exclusive,
-                                               gpointer         user_data,
                                                GError         **error);
 
 /* Push new data into the thread pool. This task is assigned to a thread later
diff --git a/graf2d/win32gdk/gdk/src/glib/gtimer.c b/graf2d/win32gdk/gdk/src/glib/gtimer.c
new file mode 100644
index 00000000000..f06d5bb9e7f
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gtimer.c
@@ -0,0 +1,261 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include "glib.h"
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif /* HAVE_UNISTD_H */
+#ifndef G_OS_WIN32
+#include <sys/time.h>
+#include <time.h>
+#include <errno.h>
+#endif /* G_OS_WIN32 */
+
+#ifdef G_OS_WIN32
+#include <windows.h>
+#endif /* G_OS_WIN32 */
+
+struct _GTimer
+{
+#ifdef G_OS_WIN32
+  DWORD start;
+  DWORD end;
+#else /* !G_OS_WIN32 */
+  struct timeval start;
+  struct timeval end;
+#endif /* !G_OS_WIN32 */
+
+  guint active : 1;
+};
+
+#ifdef G_OS_WIN32
+#  define GETTIME(v) \
+     v = GetTickCount ()
+#else /* !G_OS_WIN32 */
+#  define GETTIME(v) \
+     gettimeofday (&v, NULL)
+#endif /* !G_OS_WIN32 */
+
+GTimer*
+g_timer_new (void)
+{
+  GTimer *timer;
+
+  timer = g_new (GTimer, 1);
+  timer->active = TRUE;
+
+  GETTIME (timer->start);
+
+  return timer;
+}
+
+void
+g_timer_destroy (GTimer *timer)
+{
+  g_return_if_fail (timer != NULL);
+
+  g_free (timer);
+}
+
+void
+g_timer_start (GTimer *timer)
+{
+  g_return_if_fail (timer != NULL);
+
+  timer->active = TRUE;
+
+  GETTIME (timer->start);
+}
+
+void
+g_timer_stop (GTimer *timer)
+{
+  g_return_if_fail (timer != NULL);
+
+  timer->active = FALSE;
+
+  GETTIME(timer->end);
+}
+
+void
+g_timer_reset (GTimer *timer)
+{
+  g_return_if_fail (timer != NULL);
+
+  GETTIME (timer->start);
+}
+
+gdouble
+g_timer_elapsed (GTimer *timer,
+		 gulong *microseconds)
+{
+  gdouble total;
+#ifndef G_OS_WIN32
+  struct timeval elapsed;
+#endif /* G_OS_WIN32 */
+
+  g_return_val_if_fail (timer != NULL, 0);
+
+#ifdef G_OS_WIN32
+  if (timer->active)
+    timer->end = GetTickCount ();
+
+  /* Check for wraparound, which happens every 49.7 days. */
+  if (timer->end < timer->start)
+    total = (UINT_MAX - (timer->start - timer->end)) / 1000.0;
+  else
+    total = (timer->end - timer->start) / 1000.0;
+
+  if (microseconds)
+    {
+      if (timer->end < timer->start)
+	*microseconds =
+	  ((UINT_MAX - (timer->start - timer->end)) % 1000) * 1000;
+      else
+	*microseconds =
+	  ((timer->end - timer->start) % 1000) * 1000;
+    }
+#else /* !G_OS_WIN32 */
+  if (timer->active)
+    gettimeofday (&timer->end, NULL);
+
+  if (timer->start.tv_usec > timer->end.tv_usec)
+    {
+      timer->end.tv_usec += G_USEC_PER_SEC;
+      timer->end.tv_sec--;
+    }
+
+  elapsed.tv_usec = timer->end.tv_usec - timer->start.tv_usec;
+  elapsed.tv_sec = timer->end.tv_sec - timer->start.tv_sec;
+
+  total = elapsed.tv_sec + ((gdouble) elapsed.tv_usec / 1e6);
+  if (total < 0)
+    {
+      total = 0;
+
+      if (microseconds)
+	*microseconds = 0;
+    }
+  else if (microseconds)
+    *microseconds = elapsed.tv_usec;
+
+#endif /* !G_OS_WIN32 */
+
+  return total;
+}
+
+void
+g_usleep (gulong microseconds)
+{
+#ifdef G_OS_WIN32
+  Sleep (microseconds / 1000);
+#else /* !G_OS_WIN32 */
+# ifdef HAVE_NANOSLEEP
+  struct timespec request, remaining;
+  request.tv_sec = microseconds / G_USEC_PER_SEC;
+  request.tv_nsec = 1000 * (microseconds % G_USEC_PER_SEC);
+  while (nanosleep (&request, &remaining) == EINTR)
+    request = remaining;
+# else /* !HAVE_NANOSLEEP */
+  if (g_thread_supported ())
+    {
+      static GStaticMutex mutex = G_STATIC_MUTEX_INIT;
+      static GCond* cond = NULL;
+      GTimeVal end_time;
+      
+      g_get_current_time (&end_time);
+      if (microseconds > G_MAXLONG)
+	{
+	  microseconds -= G_MAXLONG;
+	  g_time_val_add (&end_time, G_MAXLONG);
+	}
+      g_time_val_add (&end_time, microseconds);
+
+      g_static_mutex_lock (&mutex);
+      
+      if (!cond)
+	cond = g_cond_new ();
+      
+      while (g_cond_timed_wait (cond, g_static_mutex_get_mutex (&mutex), 
+				&end_time))
+	/* do nothing */;
+      
+      g_static_mutex_unlock (&mutex);
+    }
+  else
+    {
+      struct timeval tv;
+      tv.tv_sec = microseconds / G_USEC_PER_SEC;
+      tv.tv_usec = microseconds % G_USEC_PER_SEC;
+      select(0, NULL, NULL, NULL, &tv);
+    }
+# endif /* !HAVE_NANOSLEEP */
+#endif /* !G_OS_WIN32 */
+}
+
+/**
+ * g_time_val_add:
+ * @time: a #GTimeVal
+ * @microseconds: number of microseconds to add to @time
+ *
+ * Adds the given number of microseconds to @time. @microseconds can
+ * also be negative to decrease the value of @time.
+ **/
+void 
+g_time_val_add (GTimeVal *time, glong microseconds)
+{
+  g_return_if_fail (time->tv_usec >= 0 && time->tv_usec < G_USEC_PER_SEC);
+
+  if (microseconds >= 0)
+    {
+      time->tv_usec += microseconds % G_USEC_PER_SEC;
+      time->tv_sec += microseconds / G_USEC_PER_SEC;
+      if (time->tv_usec >= G_USEC_PER_SEC)
+       {
+         time->tv_usec -= G_USEC_PER_SEC;
+         time->tv_sec++;
+       }
+    }
+  else
+    {
+      microseconds *= -1;
+      time->tv_usec -= microseconds % G_USEC_PER_SEC;
+      time->tv_sec -= microseconds / G_USEC_PER_SEC;
+      if (time->tv_usec < 0)
+       {
+         time->tv_usec += G_USEC_PER_SEC;
+         time->tv_sec--;
+       }      
+    }
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gtimer.h b/graf2d/win32gdk/gdk/src/glib/gtimer.h
index d537921e68a..3a9b265063d 100644
--- a/graf2d/win32gdk/gdk/src/glib/gtimer.h
+++ b/graf2d/win32gdk/gdk/src/glib/gtimer.h
@@ -27,7 +27,7 @@
 #ifndef __G_TIMER_H__
 #define __G_TIMER_H__
 
-#include <g_types.h>
+#include <glib/gtypes.h>
 
 G_BEGIN_DECLS
 
@@ -40,13 +40,17 @@ typedef struct _GTimer		GTimer;
 #define G_USEC_PER_SEC 1000000
 
 GTimer* g_timer_new	(void);
-void	g_timer_destroy (GTimer	 *timer);
-void	g_timer_start	(GTimer	 *timer);
-void	g_timer_stop	(GTimer	 *timer);
-void	g_timer_reset	(GTimer	 *timer);
-gdouble g_timer_elapsed (GTimer	 *timer,
-			 gulong	 *microseconds);
-void    g_usleep        (gulong microseconds);
+void	g_timer_destroy (GTimer	  *timer);
+void	g_timer_start	(GTimer	  *timer);
+void	g_timer_stop	(GTimer	  *timer);
+void	g_timer_reset	(GTimer	  *timer);
+gdouble g_timer_elapsed (GTimer	  *timer,
+			 gulong	  *microseconds);
+
+void    g_usleep        (gulong    microseconds);
+
+void    g_time_val_add  (GTimeVal *time, 
+                         glong     microseconds);
 
 G_END_DECLS
 
diff --git a/graf2d/win32gdk/gdk/src/glib/gtree.c b/graf2d/win32gdk/gdk/src/glib/gtree.c
new file mode 100644
index 00000000000..5b0406bc2a3
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gtree.c
@@ -0,0 +1,1066 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include "glib.h"
+
+
+typedef struct _GTreeNode  GTreeNode;
+
+struct _GTree
+{
+  GTreeNode *root;
+  GCompareDataFunc key_compare;
+  GDestroyNotify   key_destroy_func;
+  GDestroyNotify   value_destroy_func;
+  gpointer         key_compare_data;
+};
+
+struct _GTreeNode
+{
+  gint balance;      /* height (left) - height (right) */
+  GTreeNode *left;   /* left subtree */
+  GTreeNode *right;  /* right subtree */
+  gpointer key;      /* key for this node */
+  gpointer value;    /* value stored at this node */
+};
+
+
+static GTreeNode* g_tree_node_new                   (gpointer          key,
+						     gpointer          value);
+static void       g_tree_node_destroy               (GTreeNode        *node,
+                                                     GDestroyNotify    key_destroy_func,
+						     GDestroyNotify    value_destroy_func);
+static GTreeNode* g_tree_node_insert                (GTree            *tree,
+                                                     GTreeNode        *node,
+						     gpointer          key,
+						     gpointer          value,
+                                                     gboolean          replace,
+						     gboolean         *inserted);
+static GTreeNode* g_tree_node_remove                (GTree            *tree,
+                                                     GTreeNode        *node,
+						     gconstpointer     key,
+                                                     gboolean          notify);
+static GTreeNode* g_tree_node_balance               (GTreeNode        *node);
+static GTreeNode* g_tree_node_remove_leftmost       (GTreeNode        *node,
+						     GTreeNode       **leftmost);
+static GTreeNode* g_tree_node_restore_left_balance  (GTreeNode        *node,
+						     gint              old_balance);
+static GTreeNode* g_tree_node_restore_right_balance (GTreeNode        *node,
+						     gint              old_balance);
+static GTreeNode* g_tree_node_lookup                (GTreeNode        *node,
+						     GCompareDataFunc  compare,
+						     gpointer          comp_data,
+						     gconstpointer     key);
+static gint       g_tree_node_count                 (GTreeNode        *node);
+static gint       g_tree_node_pre_order             (GTreeNode        *node,
+						     GTraverseFunc     traverse_func,
+						     gpointer          data);
+static gint       g_tree_node_in_order              (GTreeNode        *node,
+						     GTraverseFunc     traverse_func,
+						     gpointer          data);
+static gint       g_tree_node_post_order            (GTreeNode        *node,
+						     GTraverseFunc     traverse_func,
+						     gpointer          data);
+static gpointer   g_tree_node_search                (GTreeNode        *node,
+						     GCompareFunc      search_func,
+						     gconstpointer     data);
+static gint       g_tree_node_height                (GTreeNode        *node);
+static GTreeNode* g_tree_node_rotate_left           (GTreeNode        *node);
+static GTreeNode* g_tree_node_rotate_right          (GTreeNode        *node);
+static void       g_tree_node_check                 (GTreeNode        *node);
+
+
+G_LOCK_DEFINE_STATIC (g_tree_global);
+static GMemChunk *node_mem_chunk = NULL;
+static GTreeNode *node_free_list = NULL;
+
+
+static GTreeNode*
+g_tree_node_new (gpointer key,
+		 gpointer value)
+{
+  GTreeNode *node;
+
+  G_LOCK (g_tree_global);
+  if (node_free_list)
+    {
+      node = node_free_list;
+      node_free_list = node->right;
+    }
+  else
+    {
+      if (!node_mem_chunk)
+	node_mem_chunk = g_mem_chunk_new ("GLib GTreeNode mem chunk",
+					  sizeof (GTreeNode),
+					  1024,
+					  G_ALLOC_ONLY);
+
+      node = g_chunk_new (GTreeNode, node_mem_chunk);
+   }
+  G_UNLOCK (g_tree_global);
+
+  node->balance = 0;
+  node->left = NULL;
+  node->right = NULL;
+  node->key = key;
+  node->value = value;
+
+  return node;
+}
+
+static void
+g_tree_node_destroy (GTreeNode      *node,
+		     GDestroyNotify  key_destroy_func,
+		     GDestroyNotify  value_destroy_func)
+{
+  if (node)
+    {
+      g_tree_node_destroy (node->right,
+			   key_destroy_func, value_destroy_func);
+      g_tree_node_destroy (node->left,
+			   key_destroy_func, value_destroy_func);
+
+      if (key_destroy_func)
+	key_destroy_func (node->key);
+      if (value_destroy_func)
+	value_destroy_func (node->value);
+      
+#ifdef ENABLE_GC_FRIENDLY
+      node->left = NULL;
+      node->key = NULL;
+      node->value = NULL;
+#endif /* ENABLE_GC_FRIENDLY */
+
+      G_LOCK (g_tree_global);
+      node->right = node_free_list;
+      node_free_list = node;
+      G_UNLOCK (g_tree_global);
+   }
+}
+
+/**
+ * g_tree_new:
+ * @key_compare_func: the function used to order the nodes in the #GTree.
+ *   It should return values similar to the standard 
+ *   <function>strcmp()</function> function -
+ *   0 if the two arguments are equal, a negative value if the first argument 
+ *   comes before the second, or a positive value if the first argument comes 
+ *   after the second.
+ * 
+ * Creates a new #GTree.
+ * 
+ * Return value: a new #GTree.
+ **/
+GTree*
+g_tree_new (GCompareFunc key_compare_func)
+{
+  g_return_val_if_fail (key_compare_func != NULL, NULL);
+
+  return g_tree_new_full ((GCompareDataFunc) key_compare_func, NULL,
+                          NULL, NULL);
+}
+
+/**
+ * g_tree_new_with_data:
+ * @key_compare_func: qsort()-style comparison function.
+ * @key_compare_data: data to pass to comparison function.
+ * 
+ * Creates a new #GTree with a comparison function that accepts user data.
+ * See g_tree_new() for more details.
+ * 
+ * Return value: a new #GTree.
+ **/
+GTree*
+g_tree_new_with_data (GCompareDataFunc key_compare_func,
+ 		      gpointer         key_compare_data)
+{
+  g_return_val_if_fail (key_compare_func != NULL, NULL);
+  
+  return g_tree_new_full (key_compare_func, key_compare_data, 
+ 			  NULL, NULL);
+}
+
+/**
+ * g_tree_new_full:
+ * @key_compare_func: qsort()-style comparison function.
+ * @key_compare_data: data to pass to comparison function.
+ * @key_destroy_func: a function to free the memory allocated for the key 
+ *   used when removing the entry from the #GTree or #NULL if you don't
+ *   want to supply such a function.
+ * @value_destroy_func: a function to free the memory allocated for the 
+ *   value used when removing the entry from the #GTree or #NULL if you 
+ *   don't want to supply such a function.
+ * 
+ * Creates a new #GTree like g_tree_new() and allows to specify functions 
+ * to free the memory allocated for the key and value that get called when 
+ * removing the entry from the #GTree.
+ * 
+ * Return value: a new #GTree.
+ **/
+GTree*	 
+g_tree_new_full (GCompareDataFunc key_compare_func,
+ 		 gpointer         key_compare_data, 		 
+                 GDestroyNotify   key_destroy_func,
+ 		 GDestroyNotify   value_destroy_func)
+{
+  GTree *tree;
+  
+  g_return_val_if_fail (key_compare_func != NULL, NULL);
+  
+  tree = g_new (GTree, 1);
+  tree->root               = NULL;
+  tree->key_compare        = key_compare_func;
+  tree->key_destroy_func   = key_destroy_func;
+  tree->value_destroy_func = value_destroy_func;
+  tree->key_compare_data   = key_compare_data;
+  
+  return tree;
+}
+
+/**
+ * g_tree_destroy:
+ * @tree: a #GTree.
+ * 
+ * Destroys the #GTree. If keys and/or values are dynamically allocated, you 
+ * should either free them first or create the #GTree using g_tree_new_full().
+ * In the latter case the destroy functions you supplied will be called on 
+ * all keys and values before destroying the #GTree.
+ **/
+void
+g_tree_destroy (GTree *tree)
+{
+  g_return_if_fail (tree != NULL);
+
+  g_tree_node_destroy (tree->root,
+                       tree->key_destroy_func,
+ 		       tree->value_destroy_func);
+
+  g_free (tree);
+}
+
+/**
+ * g_tree_insert:
+ * @tree: a #Gtree.
+ * @key: the key to insert.
+ * @value: the value corresponding to the key.
+ * 
+ * Inserts a key/value pair into a #GTree. If the given key already exists 
+ * in the #GTree its corresponding value is set to the new value. If you 
+ * supplied a value_destroy_func when creating the #GTree, the old value is 
+ * freed using that function. If you supplied a key_destroy_func when 
+ * creating the #GTree, the passed key is freed using that function.
+ *
+ * The tree is automatically 'balanced' as new key/value pairs are added,
+ * so that the distance from the root to every leaf is as small as possible.
+ **/
+void
+g_tree_insert (GTree    *tree,
+	       gpointer  key,
+	       gpointer  value)
+{
+  gboolean   inserted;
+
+  g_return_if_fail (tree != NULL);
+
+  inserted = FALSE;
+  tree->root = g_tree_node_insert (tree,
+                                   tree->root,
+				   key, value, 
+				   FALSE, &inserted);
+}
+
+/**
+ * g_tree_replace:
+ * @tree: a #Gtree.
+ * @key: the key to insert.
+ * @value: the value corresponding to the key.
+ * 
+ * Inserts a new key and value into a #GTree similar to g_tree_insert(). 
+ * The difference is that if the key already exists in the #GTree, it gets 
+ * replaced by the new key. If you supplied a value_destroy_func when 
+ * creating the #GTree, the old value is freed using that function. If you 
+ * supplied a key_destroy_func when creating the #GTree, the old key is 
+ * freed using that function. 
+ *
+ * The tree is automatically 'balanced' as new key/value pairs are added,
+ * so that the distance from the root to every leaf is as small as possible.
+ **/
+void
+g_tree_replace (GTree    *tree,
+		gpointer  key,
+		gpointer  value)
+{
+  gboolean   inserted;
+
+  g_return_if_fail (tree != NULL);
+
+  inserted = FALSE;
+  tree->root = g_tree_node_insert (tree,
+                                   tree->root,
+				   key, value, 
+				   TRUE, &inserted);
+}
+
+/**
+ * g_tree_remove:
+ * @tree: a #Gtree.
+ * @key: the key to remove.
+ * 
+ * Removes a key/value pair from a #GTree.
+ *
+ * If the #GTree was created using g_tree_new_full(), the key and value 
+ * are freed using the supplied destroy_functions, otherwise you have to 
+ * make sure that any dynamically allocated values are freed yourself.
+ **/
+void
+g_tree_remove (GTree         *tree,
+	       gconstpointer  key)
+{
+  g_return_if_fail (tree != NULL);
+
+  tree->root = g_tree_node_remove (tree, tree->root, key, TRUE);
+}
+
+/**
+ * g_tree_steal:
+ * @tree: a #Gtree.
+ * @key: the key to remove.
+ * 
+ * Removes a key and its associated value from a #GTree without calling 
+ * the key and value destroy functions.
+ **/
+void
+g_tree_steal (GTree         *tree,
+              gconstpointer  key)
+{
+  g_return_if_fail (tree != NULL);
+
+  tree->root = g_tree_node_remove (tree, tree->root, key, FALSE);
+}
+
+/**
+ * g_tree_lookup:
+ * @tree: a #GTree.
+ * @key: the key to look up.
+ * 
+ * Gets the value corresponding to the given key. Since a #GTree is 
+ * automatically balanced as key/value pairs are added, key lookup is very 
+ * fast.
+ *
+ * Return value: the value corresponding to the key.
+ **/
+gpointer
+g_tree_lookup (GTree         *tree,
+	       gconstpointer  key)
+{
+  GTreeNode *node;
+
+  g_return_val_if_fail (tree != NULL, NULL);
+
+  node = g_tree_node_lookup (tree->root, 
+                             tree->key_compare, tree->key_compare_data, key);
+
+  return node ? node->value : NULL;
+}
+
+/**
+ * g_tree_lookup_extended:
+ * @tree: a #GTree.
+ * @lookup_key: the key to look up.
+ * @orig_key: returns the original key.
+ * @value: returns the value associated with the key.
+ * 
+ * Looks up a key in the #GTree, returning the original key and the
+ * associated value and a gboolean which is TRUE if the key was found. This 
+ * is useful if you need to free the memory allocated for the original key, 
+ * for example before calling g_tree_remove().
+ * 
+ * Return value: #TRUE if the key was found in the #GTree.
+ **/
+gboolean
+g_tree_lookup_extended (GTree         *tree,
+                        gconstpointer  lookup_key,
+                        gpointer      *orig_key,
+                        gpointer      *value)
+{
+  GTreeNode *node;
+  
+  g_return_val_if_fail (tree != NULL, FALSE);
+  
+  node = g_tree_node_lookup (tree->root, 
+                             tree->key_compare, tree->key_compare_data, lookup_key);
+
+  if (node)
+    {
+      if (orig_key)
+        *orig_key = node->key;
+      if (value)
+        *value = node->value;
+      return TRUE;
+    }
+  else
+    return FALSE;
+}
+
+/**
+ * g_tree_foreach:
+ * @tree: a #GTree.
+ * @func: the function to call for each node visited. If this function
+ *   returns TRUE, the traversal is stopped.
+ * @user_data: user data to pass to the function.
+ * 
+ * Calls the given function for each of the key/value pairs in the #GTree.
+ * The function is passed the key and value of each pair, and the given
+ * @data parameter.
+ **/
+void
+g_tree_foreach (GTree         *tree,
+                GTraverseFunc  func,
+                gpointer       user_data)
+{
+  g_return_if_fail (tree != NULL);
+  
+  if (!tree->root)
+    return;
+
+  g_tree_node_in_order (tree->root, func, user_data);
+}
+
+/**
+ * g_tree_traverse:
+ * @tree: a #GTree.
+ * @traverse_func: the function to call for each node visited. If this 
+ *   function returns TRUE, the traversal is stopped.
+ * @traverse_type: the order in which nodes are visited, one of %G_IN_ORDER,
+ *   %G_PRE_ORDER and %G_POST_ORDER.
+ * @user_data: user data to pass to the function.
+ * 
+ * Calls the given function for each node in the GTree. This function is
+ * deprecated, use g_tree_foreach() instead.
+ **/
+void
+g_tree_traverse (GTree         *tree,
+		 GTraverseFunc  traverse_func,
+		 GTraverseType  traverse_type,
+		 gpointer       user_data)
+{
+  g_return_if_fail (tree != NULL);
+
+  if (!tree->root)
+    return;
+
+  switch (traverse_type)
+    {
+    case G_PRE_ORDER:
+      g_tree_node_pre_order (tree->root, traverse_func, user_data);
+      break;
+
+    case G_IN_ORDER:
+      g_tree_node_in_order (tree->root, traverse_func, user_data);
+      break;
+
+    case G_POST_ORDER:
+      g_tree_node_post_order (tree->root, traverse_func, user_data);
+      break;
+    
+    case G_LEVEL_ORDER:
+      g_warning ("g_tree_traverse(): traverse type G_LEVEL_ORDER isn't implemented.");
+      break;
+    }
+}
+
+/**
+ * g_tree_search:
+ * @tree: a #GTree.
+ * @search_func: the comparison function used to search the #GTree. 
+ * @user_data: the data passed as the second argument to the @search_func 
+ * function.
+ * 
+ * Searches a #GTree using an alternative form of the comparison function.
+ *
+ * This function is not as useful as it sounds.
+ * It allows you to use a different function for performing the lookup of
+ * a key. However, since the tree is ordered according to the @key_compare_func
+ * function passed to g_tree_new(), the function you pass to g_tree_search() 
+ * must return exactly the same value as would be returned by the comparison 
+ * function, for each pair of tree nodes, or the search will not work.
+ * 
+ * To search for a specific value, you can use g_tree_foreach() or 
+ * g_tree_traverse().
+ *
+ * Return value: the value corresponding to the found key, or NULL if the key 
+ * is not found.
+ **/
+gpointer
+g_tree_search (GTree         *tree,
+	       GCompareFunc   search_func,
+	       gconstpointer  user_data)
+{
+  g_return_val_if_fail (tree != NULL, NULL);
+
+  if (tree->root)
+    return g_tree_node_search (tree->root, search_func, user_data);
+  else
+    return NULL;
+}
+
+/**
+ * g_tree_height:
+ * @tree: a #GTree.
+ * 
+ * Gets the height of a #GTree.
+ *
+ * If the #GTree contains no nodes, the height is 0.
+ * If the #GTree contains only one root node the height is 1.
+ * If the root node has children the height is 2, etc.
+ * 
+ * Return value: the height of the #GTree.
+ **/
+gint
+g_tree_height (GTree *tree)
+{
+  g_return_val_if_fail (tree != NULL, 0);
+
+  if (tree->root)
+    return g_tree_node_height (tree->root);
+  else
+    return 0;
+}
+
+/**
+ * g_tree_nnodes:
+ * @tree: a #GTree.
+ * 
+ * Gets the number of nodes in a #GTree.
+ * 
+ * Return value: the number of nodes in the #GTree.
+ **/
+gint
+g_tree_nnodes (GTree *tree)
+{
+  g_return_val_if_fail (tree != NULL, 0);
+
+  if (tree->root)
+    return g_tree_node_count (tree->root);
+  else
+    return 0;
+}
+
+static GTreeNode*
+g_tree_node_insert (GTree     *tree,
+                    GTreeNode *node,
+		    gpointer   key,
+		    gpointer   value,
+                    gboolean   replace,
+		    gboolean  *inserted)
+{
+  gint  old_balance;
+  gint  cmp;
+
+  if (!node)
+    {
+      *inserted = TRUE;
+      return g_tree_node_new (key, value);
+    }
+
+  cmp = tree->key_compare (key, node->key, tree->key_compare_data);
+  if (cmp == 0)
+    {
+      *inserted = FALSE;
+
+      if (tree->value_destroy_func)
+	tree->value_destroy_func (node->value);
+
+      node->value = value;
+      
+      if (replace)
+	{
+	  if (tree->key_destroy_func)
+	    tree->key_destroy_func (node->key);
+
+	  node->key = key;
+	}
+      else
+	{
+	  /* free the passed key */
+	  if (tree->key_destroy_func)
+	    tree->key_destroy_func (key);
+	}
+
+      return node;
+    }
+
+  if (cmp < 0)
+    {
+      if (node->left)
+	{
+	  old_balance = node->left->balance;
+	  node->left = g_tree_node_insert (tree,
+                                           node->left,
+					   key, value,
+					   replace, inserted);
+
+	  if ((old_balance != node->left->balance) && node->left->balance)
+	    node->balance -= 1;
+	}
+      else
+	{
+	  *inserted = TRUE;
+	  node->left = g_tree_node_new (key, value);
+	  node->balance -= 1;
+	}
+    }
+  else if (cmp > 0)
+    {
+      if (node->right)
+	{
+	  old_balance = node->right->balance;
+	  node->right = g_tree_node_insert (tree,
+                                            node->right,
+					    key, value, 
+					    replace, inserted);
+
+	  if ((old_balance != node->right->balance) && node->right->balance)
+	    node->balance += 1;
+	}
+      else
+	{
+	  *inserted = TRUE;
+	  node->right = g_tree_node_new (key, value);
+	  node->balance += 1;
+	}
+    }
+
+  if (*inserted)
+    {
+      if ((node->balance < -1) || (node->balance > 1))
+	node = g_tree_node_balance (node);
+    }
+
+  return node;
+}
+
+static GTreeNode*
+g_tree_node_remove (GTree         *tree,
+                    GTreeNode     *node,
+		    gconstpointer  key,
+                    gboolean       notify)
+{
+  GTreeNode *new_root;
+  gint old_balance;
+  gint cmp;
+
+  if (!node)
+    return NULL;
+
+  cmp = tree->key_compare (key, node->key, tree->key_compare_data);
+  if (cmp == 0)
+    {
+      GTreeNode *garbage;
+
+      garbage = node;
+
+      if (!node->right)
+	{
+	  node = node->left;
+	}
+      else
+	{
+	  old_balance = node->right->balance;
+	  node->right = g_tree_node_remove_leftmost (node->right, &new_root);
+	  new_root->left = node->left;
+	  new_root->right = node->right;
+	  new_root->balance = node->balance;
+	  node = g_tree_node_restore_right_balance (new_root, old_balance);
+	}
+
+      if (notify)
+        {
+          if (tree->key_destroy_func)
+            tree->key_destroy_func (garbage->key);
+          if (tree->value_destroy_func)
+            tree->value_destroy_func (garbage->value);
+        }
+
+#ifdef ENABLE_GC_FRIENDLY
+      garbage->left = NULL;
+      garbage->key = NULL;
+      garbage->value = NULL;
+#endif /* ENABLE_GC_FRIENDLY */
+
+      G_LOCK (g_tree_global);
+      garbage->right = node_free_list;
+      node_free_list = garbage;
+      G_UNLOCK (g_tree_global);
+   }
+  else if (cmp < 0)
+    {
+      if (node->left)
+	{
+	  old_balance = node->left->balance;
+	  node->left = g_tree_node_remove (tree, node->left, key, notify);
+	  node = g_tree_node_restore_left_balance (node, old_balance);
+	}
+    }
+  else if (cmp > 0)
+    {
+      if (node->right)
+	{
+	  old_balance = node->right->balance;
+	  node->right = g_tree_node_remove (tree, node->right, key, notify);
+	  node = g_tree_node_restore_right_balance (node, old_balance);
+	}
+    }
+
+  return node;
+}
+
+static GTreeNode*
+g_tree_node_balance (GTreeNode *node)
+{
+  if (node->balance < -1)
+    {
+      if (node->left->balance > 0)
+	node->left = g_tree_node_rotate_left (node->left);
+      node = g_tree_node_rotate_right (node);
+    }
+  else if (node->balance > 1)
+    {
+      if (node->right->balance < 0)
+	node->right = g_tree_node_rotate_right (node->right);
+      node = g_tree_node_rotate_left (node);
+    }
+
+  return node;
+}
+
+static GTreeNode*
+g_tree_node_remove_leftmost (GTreeNode  *node,
+			     GTreeNode **leftmost)
+{
+  gint old_balance;
+
+  if (!node->left)
+    {
+      *leftmost = node;
+      return node->right;
+    }
+
+  old_balance = node->left->balance;
+  node->left = g_tree_node_remove_leftmost (node->left, leftmost);
+  return g_tree_node_restore_left_balance (node, old_balance);
+}
+
+static GTreeNode*
+g_tree_node_restore_left_balance (GTreeNode *node,
+				  gint       old_balance)
+{
+  if (!node->left)
+    node->balance += 1;
+  else if ((node->left->balance != old_balance) &&
+	   (node->left->balance == 0))
+    node->balance += 1;
+
+  if (node->balance > 1)
+    return g_tree_node_balance (node);
+  return node;
+}
+
+static GTreeNode*
+g_tree_node_restore_right_balance (GTreeNode *node,
+				   gint       old_balance)
+{
+  if (!node->right)
+    node->balance -= 1;
+  else if ((node->right->balance != old_balance) &&
+	   (node->right->balance == 0))
+    node->balance -= 1;
+
+  if (node->balance < -1)
+    return g_tree_node_balance (node);
+  return node;
+}
+
+static GTreeNode *
+g_tree_node_lookup (GTreeNode        *node,
+		    GCompareDataFunc  compare,
+		    gpointer          compare_data,
+		    gconstpointer     key)
+{
+  gint cmp;
+
+  if (!node)
+    return NULL;
+
+  cmp = (* compare) (key, node->key, compare_data);
+  if (cmp == 0)
+    return node;
+
+  if (cmp < 0)
+    {
+      if (node->left)
+	return g_tree_node_lookup (node->left, compare, compare_data, key);
+    }
+  else if (cmp > 0)
+    {
+      if (node->right)
+	return g_tree_node_lookup (node->right, compare, compare_data, key);
+    }
+
+  return NULL;
+}
+
+static gint
+g_tree_node_count (GTreeNode *node)
+{
+  gint count;
+
+  count = 1;
+  if (node->left)
+    count += g_tree_node_count (node->left);
+  if (node->right)
+    count += g_tree_node_count (node->right);
+
+  return count;
+}
+
+static gint
+g_tree_node_pre_order (GTreeNode     *node,
+		       GTraverseFunc  traverse_func,
+		       gpointer       data)
+{
+  if ((*traverse_func) (node->key, node->value, data))
+    return TRUE;
+  if (node->left)
+    {
+      if (g_tree_node_pre_order (node->left, traverse_func, data))
+	return TRUE;
+    }
+  if (node->right)
+    {
+      if (g_tree_node_pre_order (node->right, traverse_func, data))
+	return TRUE;
+    }
+
+  return FALSE;
+}
+
+static gint
+g_tree_node_in_order (GTreeNode     *node,
+		      GTraverseFunc  traverse_func,
+		      gpointer       data)
+{
+  if (node->left)
+    {
+      if (g_tree_node_in_order (node->left, traverse_func, data))
+	return TRUE;
+    }
+  if ((*traverse_func) (node->key, node->value, data))
+    return TRUE;
+  if (node->right)
+    {
+      if (g_tree_node_in_order (node->right, traverse_func, data))
+	return TRUE;
+    }
+
+  return FALSE;
+}
+
+static gint
+g_tree_node_post_order (GTreeNode     *node,
+			GTraverseFunc  traverse_func,
+			gpointer       data)
+{
+  if (node->left)
+    {
+      if (g_tree_node_post_order (node->left, traverse_func, data))
+	return TRUE;
+    }
+  if (node->right)
+    {
+      if (g_tree_node_post_order (node->right, traverse_func, data))
+	return TRUE;
+    }
+  if ((*traverse_func) (node->key, node->value, data))
+    return TRUE;
+
+  return FALSE;
+}
+
+static gpointer
+g_tree_node_search (GTreeNode     *node,
+		    GCompareFunc   search_func,
+		    gconstpointer  data)
+{
+  gint dir;
+
+  if (!node)
+    return NULL;
+
+  do {
+    dir = (* search_func) (node->key, data);
+    if (dir == 0)
+      return node->value;
+
+    if (dir < 0)
+      node = node->left;
+    else if (dir > 0)
+      node = node->right;
+  } while (node);
+
+  return NULL;
+}
+
+static gint
+g_tree_node_height (GTreeNode *node)
+{
+  gint left_height;
+  gint right_height;
+
+  if (node)
+    {
+      left_height = 0;
+      right_height = 0;
+
+      if (node->left)
+	left_height = g_tree_node_height (node->left);
+
+      if (node->right)
+	right_height = g_tree_node_height (node->right);
+
+      return MAX (left_height, right_height) + 1;
+    }
+
+  return 0;
+}
+
+static GTreeNode*
+g_tree_node_rotate_left (GTreeNode *node)
+{
+  GTreeNode *right;
+  gint a_bal;
+  gint b_bal;
+
+  right = node->right;
+
+  node->right = right->left;
+  right->left = node;
+
+  a_bal = node->balance;
+  b_bal = right->balance;
+
+  if (b_bal <= 0)
+    {
+      if (a_bal >= 1)
+	right->balance = b_bal - 1;
+      else
+	right->balance = a_bal + b_bal - 2;
+      node->balance = a_bal - 1;
+    }
+  else
+    {
+      if (a_bal <= b_bal)
+	right->balance = a_bal - 2;
+      else
+	right->balance = b_bal - 1;
+      node->balance = a_bal - b_bal - 1;
+    }
+
+  return right;
+}
+
+static GTreeNode*
+g_tree_node_rotate_right (GTreeNode *node)
+{
+  GTreeNode *left;
+  gint a_bal;
+  gint b_bal;
+
+  left = node->left;
+
+  node->left = left->right;
+  left->right = node;
+
+  a_bal = node->balance;
+  b_bal = left->balance;
+
+  if (b_bal <= 0)
+    {
+      if (b_bal > a_bal)
+	left->balance = b_bal + 1;
+      else
+	left->balance = a_bal + 2;
+      node->balance = a_bal - b_bal + 1;
+    }
+  else
+    {
+      if (a_bal <= -1)
+	left->balance = b_bal + 1;
+      else
+	left->balance = a_bal + b_bal + 2;
+      node->balance = a_bal + 1;
+    }
+
+  return left;
+}
+
+static void
+g_tree_node_check (GTreeNode *node)
+{
+  gint left_height;
+  gint right_height;
+  gint balance;
+  
+  if (node)
+    {
+      left_height = 0;
+      right_height = 0;
+      
+      if (node->left)
+	left_height = g_tree_node_height (node->left);
+      if (node->right)
+	right_height = g_tree_node_height (node->right);
+      
+      balance = right_height - left_height;
+      if (balance != node->balance)
+	g_log (g_log_domain_glib, G_LOG_LEVEL_INFO,
+	       "g_tree_node_check: failed: %d ( %d )\n",
+	       balance, node->balance);
+      
+      if (node->left)
+	g_tree_node_check (node->left);
+      if (node->right)
+	g_tree_node_check (node->right);
+    }
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gtree.h b/graf2d/win32gdk/gdk/src/glib/gtree.h
index 3530a6374be..6742c4a1956 100644
--- a/graf2d/win32gdk/gdk/src/glib/gtree.h
+++ b/graf2d/win32gdk/gdk/src/glib/gtree.h
@@ -27,38 +27,54 @@
 #ifndef __G_TREE_H__
 #define __G_TREE_H__
 
-#include <gnode.h>
+#include <glib/gnode.h>
 
 G_BEGIN_DECLS
 
-typedef struct _GTree		GTree;
+typedef struct _GTree  GTree;
 
-typedef gint		(*GTraverseFunc)	(gpointer	key,
-						 gpointer	value,
-						 gpointer	data);
+typedef gint   (*GTraverseFunc)	(gpointer  key,
+                                 gpointer  value,
+                                 gpointer  data);
 
 /* Balanced binary trees
  */
-GTree*   g_tree_new           (GCompareFunc      key_compare_func);
-GTree*   g_tree_new_with_data (GCompareFuncData  key_compare_func,
-			       gpointer          user_data);
-void     g_tree_destroy       (GTree            *tree);
-void     g_tree_insert        (GTree            *tree,
-			       gpointer          key,
-			       gpointer          value);
-void     g_tree_remove        (GTree            *tree,
-			       gconstpointer     key);
-gpointer g_tree_lookup        (GTree            *tree,
-			       gconstpointer     key);
-void     g_tree_traverse      (GTree            *tree,
-			       GTraverseFunc     traverse_func,
-			       GTraverseType     traverse_type,
-			       gpointer          data);
-gpointer g_tree_search        (GTree            *tree,
-			       GCompareFunc      search_func,
-			       gconstpointer     data);
-gint     g_tree_height        (GTree            *tree);
-gint     g_tree_nnodes        (GTree            *tree);
+GTree*   g_tree_new             (GCompareFunc      key_compare_func);
+GTree*   g_tree_new_with_data   (GCompareDataFunc  key_compare_func,
+                                 gpointer          key_compare_data);
+GTree*   g_tree_new_full        (GCompareDataFunc  key_compare_func,
+                                 gpointer          key_compare_data,
+                                 GDestroyNotify    key_destroy_func,
+                                 GDestroyNotify    value_destroy_func);
+void     g_tree_destroy         (GTree            *tree);
+void     g_tree_insert          (GTree            *tree,
+                                 gpointer          key,
+                                 gpointer          value);
+void     g_tree_replace         (GTree            *tree,
+                                 gpointer          key,
+                                 gpointer          value);
+void     g_tree_remove          (GTree            *tree,
+                                 gconstpointer     key);
+void     g_tree_steal           (GTree            *tree,
+                                 gconstpointer     key);
+gpointer g_tree_lookup          (GTree            *tree,
+                                 gconstpointer     key);
+gboolean g_tree_lookup_extended (GTree            *tree,
+                                 gconstpointer     lookup_key,
+                                 gpointer         *orig_key,
+                                 gpointer         *value);
+void     g_tree_foreach         (GTree            *tree,
+                                 GTraverseFunc	   func,
+                                 gpointer	   user_data);
+void     g_tree_traverse        (GTree            *tree,
+                                 GTraverseFunc     traverse_func,
+                                 GTraverseType     traverse_type,
+                                 gpointer          user_data);
+gpointer g_tree_search          (GTree            *tree,
+                                 GCompareFunc      search_func,
+                                 gconstpointer     user_data);
+gint     g_tree_height          (GTree            *tree);
+gint     g_tree_nnodes          (GTree            *tree);
 
 
 
diff --git a/graf2d/win32gdk/gdk/src/glib/gtypes.h b/graf2d/win32gdk/gdk/src/glib/gtypes.h
new file mode 100644
index 00000000000..27597b70066
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gtypes.h
@@ -0,0 +1,350 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+#ifndef __G_TYPES_H__
+#define __G_TYPES_H__
+
+#include <glibconfig.h>
+
+G_BEGIN_DECLS
+
+/* Provide type definitions for commonly used types.
+ *  These are useful because a "gint8" can be adjusted
+ *  to be 1 byte (8 bits) on all platforms. Similarly and
+ *  more importantly, "gint32" can be adjusted to be
+ *  4 bytes (32 bits) on all platforms.
+ */
+
+typedef char   gchar;
+typedef short  gshort;
+typedef long   glong;
+typedef int    gint;
+typedef gint   gboolean;
+
+typedef unsigned char   guchar;
+typedef unsigned short  gushort;
+typedef unsigned long   gulong;
+typedef unsigned int    guint;
+
+typedef float   gfloat;
+typedef double  gdouble;
+
+/* HAVE_LONG_DOUBLE doesn't work correctly on all platforms.
+ * Since gldouble isn't used anywhere, just disable it for now */
+
+#if 0
+#ifdef HAVE_LONG_DOUBLE
+typedef long double gldouble;
+#else /* HAVE_LONG_DOUBLE */
+typedef double gldouble;
+#endif /* HAVE_LONG_DOUBLE */
+#endif /* 0 */
+
+typedef void* gpointer;
+typedef const void *gconstpointer;
+
+typedef gint            (*GCompareFunc)         (gconstpointer  a,
+                                                 gconstpointer  b);
+typedef gint            (*GCompareDataFunc)     (gconstpointer  a,
+                                                 gconstpointer  b,
+						 gpointer       user_data);
+typedef gboolean        (*GEqualFunc)           (gconstpointer  a,
+                                                 gconstpointer  b);
+typedef void            (*GDestroyNotify)       (gpointer       data);
+typedef void            (*GFunc)                (gpointer       data,
+                                                 gpointer       user_data);
+typedef guint           (*GHashFunc)            (gconstpointer  key);
+typedef void            (*GHFunc)               (gpointer       key,
+                                                 gpointer       value,
+                                                 gpointer       user_data);
+typedef void            (*GFreeFunc)            (gpointer       data);
+
+/* Define some mathematical constants that aren't available
+ * symbolically in some strict ISO C implementations.
+ */
+#define G_E     2.7182818284590452354E0
+#define G_LN2   6.9314718055994530942E-1
+#define G_LN10  2.3025850929940456840E0
+#define G_PI    3.14159265358979323846E0
+#define G_PI_2  1.57079632679489661923E0
+#define G_PI_4  0.78539816339744830962E0
+#define G_SQRT2 1.4142135623730950488E0
+
+/* Portable endian checks and conversions
+ *
+ * glibconfig.h defines G_BYTE_ORDER which expands to one of
+ * the below macros.
+ */
+#define G_LITTLE_ENDIAN 1234
+#define G_BIG_ENDIAN    4321
+#define G_PDP_ENDIAN    3412		/* unused, need specific PDP check */	
+
+
+/* Basic bit swapping functions
+ */
+#define GUINT16_SWAP_LE_BE_CONSTANT(val)	((guint16) ( \
+    (((guint16) (val) & (guint16) 0x00ffU) << 8) | \
+    (((guint16) (val) & (guint16) 0xff00U) >> 8)))
+#define GUINT32_SWAP_LE_BE_CONSTANT(val)	((guint32) ( \
+    (((guint32) (val) & (guint32) 0x000000ffU) << 24) | \
+    (((guint32) (val) & (guint32) 0x0000ff00U) <<  8) | \
+    (((guint32) (val) & (guint32) 0x00ff0000U) >>  8) | \
+    (((guint32) (val) & (guint32) 0xff000000U) >> 24)))
+
+/* Intel specific stuff for speed
+ */
+#if defined (__i386__) && defined (__GNUC__) && __GNUC__ >= 2
+#  define GUINT16_SWAP_LE_BE_X86(val) \
+     (G_GNUC_EXTENSION					\
+      ({ register guint16 __v;				\
+	 if (__builtin_constant_p (val))		\
+	   __v = GUINT16_SWAP_LE_BE_CONSTANT (val);	\
+	 else						\
+	   __asm__ __const__ ("rorw $8, %w0"		\
+			      : "=r" (__v)		\
+			      : "0" ((guint16) (val)));	\
+	__v; }))
+#  define GUINT16_SWAP_LE_BE(val) (GUINT16_SWAP_LE_BE_X86 (val))
+#  if !defined(__i486__) && !defined(__i586__) \
+      && !defined(__pentium__) && !defined(__i686__) && !defined(__pentiumpro__)
+#     define GUINT32_SWAP_LE_BE_X86(val) \
+        (G_GNUC_EXTENSION					\
+         ({ register guint32 __v;				\
+	    if (__builtin_constant_p (val))			\
+	      __v = GUINT32_SWAP_LE_BE_CONSTANT (val);		\
+	  else							\
+	    __asm__ __const__ ("rorw $8, %w0\n\t"		\
+			       "rorl $16, %0\n\t"		\
+			       "rorw $8, %w0"			\
+			       : "=r" (__v)			\
+			       : "0" ((guint32) (val)));	\
+	__v; }))
+#  else /* 486 and higher has bswap */
+#     define GUINT32_SWAP_LE_BE_X86(val) \
+        (G_GNUC_EXTENSION					\
+         ({ register guint32 __v;				\
+	    if (__builtin_constant_p (val))			\
+	      __v = GUINT32_SWAP_LE_BE_CONSTANT (val);		\
+	  else							\
+	    __asm__ __const__ ("bswap %0"			\
+			       : "=r" (__v)			\
+			       : "0" ((guint32) (val)));	\
+	__v; }))
+#  endif /* processor specific 32-bit stuff */
+#  define GUINT32_SWAP_LE_BE(val) (GUINT32_SWAP_LE_BE_X86 (val))
+#else /* !__i386__ */
+#  define GUINT16_SWAP_LE_BE(val) (GUINT16_SWAP_LE_BE_CONSTANT (val))
+#  define GUINT32_SWAP_LE_BE(val) (GUINT32_SWAP_LE_BE_CONSTANT (val))
+#endif /* __i386__ */
+
+#ifdef G_HAVE_GINT64
+#  define GUINT64_SWAP_LE_BE_CONSTANT(val)	((guint64) ( \
+      (((guint64) (val) &						\
+	(guint64) G_GINT64_CONSTANT(0x00000000000000ffU)) << 56) |	\
+      (((guint64) (val) &						\
+	(guint64) G_GINT64_CONSTANT(0x000000000000ff00U)) << 40) |	\
+      (((guint64) (val) &						\
+	(guint64) G_GINT64_CONSTANT(0x0000000000ff0000U)) << 24) |	\
+      (((guint64) (val) &						\
+	(guint64) G_GINT64_CONSTANT(0x00000000ff000000U)) <<  8) |	\
+      (((guint64) (val) &						\
+	(guint64) G_GINT64_CONSTANT(0x000000ff00000000U)) >>  8) |	\
+      (((guint64) (val) &						\
+	(guint64) G_GINT64_CONSTANT(0x0000ff0000000000U)) >> 24) |	\
+      (((guint64) (val) &						\
+	(guint64) G_GINT64_CONSTANT(0x00ff000000000000U)) >> 40) |	\
+      (((guint64) (val) &						\
+	(guint64) G_GINT64_CONSTANT(0xff00000000000000U)) >> 56)))
+#  if defined (__i386__) && defined (__GNUC__) && __GNUC__ >= 2
+#    define GUINT64_SWAP_LE_BE_X86(val) \
+	(__extension__						\
+	 ({ union { guint64 __ll;				\
+		    guint32 __l[2]; } __r;			\
+	    if (__builtin_constant_p (val))			\
+	      __r.__ll = GUINT64_SWAP_LE_BE_CONSTANT (val);	\
+	    else						\
+	      {							\
+	 	union { guint64 __ll;				\
+			guint32 __l[2]; } __w;			\
+		__w.__ll = ((guint64) val);			\
+		__r.__l[0] = GUINT32_SWAP_LE_BE (__w.__l[1]);	\
+		__r.__l[1] = GUINT32_SWAP_LE_BE (__w.__l[0]);	\
+	      }							\
+	  __r.__ll; }))
+#    define GUINT64_SWAP_LE_BE(val) (GUINT64_SWAP_LE_BE_X86 (val))
+#  else /* !__i386__ */
+#    define GUINT64_SWAP_LE_BE(val) (GUINT64_SWAP_LE_BE_CONSTANT(val))
+#  endif
+#endif
+
+#define GUINT16_SWAP_LE_PDP(val)	((guint16) (val))
+#define GUINT16_SWAP_BE_PDP(val)	(GUINT16_SWAP_LE_BE (val))
+#define GUINT32_SWAP_LE_PDP(val)	((guint32) ( \
+    (((guint32) (val) & (guint32) 0x0000ffffU) << 16) | \
+    (((guint32) (val) & (guint32) 0xffff0000U) >> 16)))
+#define GUINT32_SWAP_BE_PDP(val)	((guint32) ( \
+    (((guint32) (val) & (guint32) 0x00ff00ffU) << 8) | \
+    (((guint32) (val) & (guint32) 0xff00ff00U) >> 8)))
+
+/* The G*_TO_?E() macros are defined in glibconfig.h.
+ * The transformation is symmetric, so the FROM just maps to the TO.
+ */
+#define GINT16_FROM_LE(val)	(GINT16_TO_LE (val))
+#define GUINT16_FROM_LE(val)	(GUINT16_TO_LE (val))
+#define GINT16_FROM_BE(val)	(GINT16_TO_BE (val))
+#define GUINT16_FROM_BE(val)	(GUINT16_TO_BE (val))
+#define GINT32_FROM_LE(val)	(GINT32_TO_LE (val))
+#define GUINT32_FROM_LE(val)	(GUINT32_TO_LE (val))
+#define GINT32_FROM_BE(val)	(GINT32_TO_BE (val))
+#define GUINT32_FROM_BE(val)	(GUINT32_TO_BE (val))
+
+#ifdef G_HAVE_GINT64
+#define GINT64_FROM_LE(val)	(GINT64_TO_LE (val))
+#define GUINT64_FROM_LE(val)	(GUINT64_TO_LE (val))
+#define GINT64_FROM_BE(val)	(GINT64_TO_BE (val))
+#define GUINT64_FROM_BE(val)	(GUINT64_TO_BE (val))
+#endif
+
+#define GLONG_FROM_LE(val)	(GLONG_TO_LE (val))
+#define GULONG_FROM_LE(val)	(GULONG_TO_LE (val))
+#define GLONG_FROM_BE(val)	(GLONG_TO_BE (val))
+#define GULONG_FROM_BE(val)	(GULONG_TO_BE (val))
+
+#define GINT_FROM_LE(val)	(GINT_TO_LE (val))
+#define GUINT_FROM_LE(val)	(GUINT_TO_LE (val))
+#define GINT_FROM_BE(val)	(GINT_TO_BE (val))
+#define GUINT_FROM_BE(val)	(GUINT_TO_BE (val))
+
+
+/* Portable versions of host-network order stuff
+ */
+#define g_ntohl(val) (GUINT32_FROM_BE (val))
+#define g_ntohs(val) (GUINT16_FROM_BE (val))
+#define g_htonl(val) (GUINT32_TO_BE (val))
+#define g_htons(val) (GUINT16_TO_BE (val))
+
+/* IEEE Standard 754 Single Precision Storage Format (gfloat):
+ *
+ *        31 30           23 22            0
+ * +--------+---------------+---------------+
+ * | s 1bit | e[30:23] 8bit | f[22:0] 23bit |
+ * +--------+---------------+---------------+
+ * B0------------------->B1------->B2-->B3-->
+ *
+ * IEEE Standard 754 Double Precision Storage Format (gdouble):
+ *
+ *        63 62            52 51            32   31            0
+ * +--------+----------------+----------------+ +---------------+
+ * | s 1bit | e[62:52] 11bit | f[51:32] 20bit | | f[31:0] 32bit |
+ * +--------+----------------+----------------+ +---------------+
+ * B0--------------->B1---------->B2--->B3---->  B4->B5->B6->B7->
+ */
+/* subtract from biased_exponent to form base2 exponent (normal numbers) */
+typedef union  _GDoubleIEEE754	GDoubleIEEE754;
+typedef union  _GFloatIEEE754	GFloatIEEE754;
+#define G_IEEE754_FLOAT_BIAS	(127)
+#define G_IEEE754_DOUBLE_BIAS	(1023)
+/* multiply with base2 exponent to get base10 exponent (nomal numbers) */
+#define G_LOG_2_BASE_10		(0.30102999566398119521)
+#if G_BYTE_ORDER == G_LITTLE_ENDIAN
+union _GFloatIEEE754
+{
+  gfloat v_float;
+  struct {
+    guint mantissa : 23;
+    guint biased_exponent : 8;
+    guint sign : 1;
+  } mpn;
+};
+union _GDoubleIEEE754
+{
+  gdouble v_double;
+  struct {
+    guint mantissa_low : 32;
+    guint mantissa_high : 20;
+    guint biased_exponent : 11;
+    guint sign : 1;
+  } mpn;
+};
+#elif G_BYTE_ORDER == G_BIG_ENDIAN
+union _GFloatIEEE754
+{
+  gfloat v_float;
+  struct {
+    guint sign : 1;
+    guint biased_exponent : 8;
+    guint mantissa : 23;
+  } mpn;
+};
+union _GDoubleIEEE754
+{
+  gdouble v_double;
+  struct {
+    guint sign : 1;
+    guint biased_exponent : 11;
+    guint mantissa_high : 20;
+    guint mantissa_low : 32;
+  } mpn;
+};
+#else /* !G_LITTLE_ENDIAN && !G_BIG_ENDIAN */
+#error unknown ENDIAN type
+#endif /* !G_LITTLE_ENDIAN && !G_BIG_ENDIAN */
+
+typedef struct _GTimeVal                GTimeVal;
+
+struct _GTimeVal
+{
+  glong tv_sec;
+  glong tv_usec;
+};
+
+G_END_DECLS
+
+/* We prefix variable declarations so they can
+ * properly get exported in windows dlls.
+ */
+#ifndef GLIB_VAR
+#  ifdef G_PLATFORM_WIN32
+#    ifdef GLIB_STATIC_COMPILATION
+#      define GLIB_VAR extern
+#    else /* !GLIB_STATIC_COMPILATION */
+#      ifdef GLIB_COMPILATION
+#        ifdef DLL_EXPORT
+#          define GLIB_VAR __declspec(dllexport)
+#        else /* !DLL_EXPORT */
+#          define GLIB_VAR extern
+#        endif /* !DLL_EXPORT */
+#      else /* !GLIB_COMPILATION */
+#        define GLIB_VAR extern __declspec(dllimport)
+#      endif /* !GLIB_COMPILATION */
+#    endif /* !GLIB_STATIC_COMPILATION */
+#  else /* !G_PLATFORM_WIN32 */
+#    define GLIB_VAR extern
+#  endif /* !G_PLATFORM_WIN32 */
+#endif /* GLIB_VAR */
+
+#endif /* __G_TYPES_H__ */
+
diff --git a/graf2d/win32gdk/gdk/src/glib/gunibreak.c b/graf2d/win32gdk/gdk/src/glib/gunibreak.c
new file mode 100644
index 00000000000..5bcb946c98e
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gunibreak.c
@@ -0,0 +1,55 @@
+/* gunibreak.c - line break properties
+ *
+ *  Copyright 2000 Red Hat, Inc.
+ *
+ * The Gnome Library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * The Gnome Library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with the Gnome Library; see the file COPYING.LIB.  If not,
+ * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ *   Boston, MA 02111-1307, USA.
+ */
+
+#include "glib.h"
+#include "gunibreak.h"
+
+#include <config.h>
+
+#include <stdlib.h>
+
+
+/* We cheat a bit and cast type values to (char *).  We detect these
+   using the &0xff trick.  */
+#define TPROP(Page, Char) \
+  (((GPOINTER_TO_INT(break_property_table[Page]) & 0xff) == GPOINTER_TO_INT(break_property_table[Page])) \
+   ? GPOINTER_TO_INT(break_property_table[Page]) \
+   : (break_property_table[Page][Char]))
+
+#define PROP(Char) (((Char) > (G_UNICODE_LAST_CHAR)) ? G_UNICODE_UNASSIGNED : TPROP ((Char) >> 8, (Char) & 0xff))
+
+/**
+ * g_unichar_break_type:
+ * @c: a Unicode character
+ * 
+ * Determines the break type of @c. @c should be a Unicode character
+ * (to derive a character from UTF-8 encoded text, use
+ * g_utf8_get_char()). The break type is used to find word and line
+ * breaks ("text boundaries"), Pango implements the Unicode boundary
+ * resolution algorithms and normally you would use a function such
+ * as pango_break() instead of caring about break types yourself.
+ * 
+ * Return value: the break type of @c
+ **/
+GUnicodeBreakType
+g_unichar_break_type (gunichar c)
+{
+  return PROP (c);
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gunibreak.h b/graf2d/win32gdk/gdk/src/glib/gunibreak.h
index 34912b3ad51..c8294a07857 100644
--- a/graf2d/win32gdk/gdk/src/glib/gunibreak.h
+++ b/graf2d/win32gdk/gdk/src/glib/gunibreak.h
@@ -4,7 +4,7 @@
 #ifndef BREAKTABLES_H
 #define BREAKTABLES_H
 
-#define G_UNICODE_DATA_VERSION "3.0.1"
+#define G_UNICODE_DATA_VERSION "3.1"
 
 #define G_UNICODE_LAST_CHAR 0xffff
 
@@ -96,7 +96,7 @@ static char page0[256] = {
   G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_POSTFIX, 
   G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_AMBIGUOUS, 
-  G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_AFTER, 
+  G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_BEFORE, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_AMBIGUOUS, 
   G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_AMBIGUOUS, 
   G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_AMBIGUOUS, 
@@ -508,11 +508,11 @@ static char page3[256] = {
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
 };
 
 static char page4[256] = {
@@ -3064,7 +3064,7 @@ static char page32[256] = {
   G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_AFTER, 
   G_UNICODE_BREAK_NON_BREAKING_GLUE, G_UNICODE_BREAK_AFTER, 
   G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_BEFORE_AND_AFTER, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_AMBIGUOUS, 
+  G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_AMBIGUOUS, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_QUOTATION, 
   G_UNICODE_BREAK_QUOTATION, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
   G_UNICODE_BREAK_QUOTATION, G_UNICODE_BREAK_QUOTATION, 
@@ -3751,7 +3751,7 @@ static char page37[256] = {
   G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_AMBIGUOUS, 
-  G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_AMBIGUOUS, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_AMBIGUOUS, 
@@ -4746,229 +4746,209 @@ static char page51[256] = {
   G_UNICODE_BREAK_UNKNOWN
 };
 
-static char page52[256] = {
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC
+static char page77[256] = {
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
 };
 
-static char page77[256] = {
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+static char page159[256] = {
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
   G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
@@ -4993,254 +4973,12 @@ static char page77[256] = {
   G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
-};
-
-static char page78[256] = {
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC
-};
-
-static char page159[256] = {
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
 };
 
 static char page164[256] = {
@@ -5365,97 +5103,234 @@ static char page164[256] = {
   G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
 };
 
-static char page172[256] = {
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+static char page215[256] = {
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
+};
+
+static char page250[256] = {
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
+};
+
+static char page251[256] = {
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
@@ -5466,7 +5341,14 @@ static char page172[256] = {
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
@@ -5493,10 +5375,6 @@ static char page172[256] = {
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC
-};
-
-static char page215[256] = {
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
@@ -5525,6 +5403,17 @@ static char page215[256] = {
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
@@ -5547,6 +5436,10 @@ static char page215[256] = {
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_ALPHABETIC
+};
+
+static char page253[256] = {
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
@@ -5578,105 +5471,13 @@ static char page215[256] = {
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_OPEN_PUNCTUATION, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
   G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
-};
-
-static char page216[256] = {
-  G_UNICODE_BREAK_SURROGATE, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
@@ -5708,6 +5509,8 @@ static char page216[256] = {
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
@@ -5734,24 +5537,82 @@ static char page216[256] = {
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN
 };
 
-static char page219[256] = {
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+static char page254[256] = {
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, 
+  G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
+  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
+  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
+  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
+  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
+  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
+  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
+  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
+  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_NON_STARTER, 
+  G_UNICODE_BREAK_NON_STARTER, G_UNICODE_BREAK_EXCLAMATION, 
+  G_UNICODE_BREAK_EXCLAMATION, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_OPEN_PUNCTUATION, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
+  G_UNICODE_BREAK_OPEN_PUNCTUATION, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
+  G_UNICODE_BREAK_OPEN_PUNCTUATION, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_POSTFIX, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
@@ -5807,8 +5668,6 @@ static char page219[256] = {
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_SURROGATE, 
-  G_UNICODE_BREAK_SURROGATE, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
@@ -5821,6 +5680,68 @@ static char page219[256] = {
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_NON_BREAKING_GLUE
+};
+
+static char page255[256] = {
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_EXCLAMATION, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_POSTFIX, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_OPEN_PUNCTUATION, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_NON_STARTER, G_UNICODE_BREAK_NON_STARTER, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_EXCLAMATION, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
+  G_UNICODE_BREAK_OPEN_PUNCTUATION, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
+  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_NON_STARTER, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_NON_STARTER, 
+  G_UNICODE_BREAK_NON_STARTER, G_UNICODE_BREAK_NON_STARTER, 
+  G_UNICODE_BREAK_NON_STARTER, G_UNICODE_BREAK_NON_STARTER, 
+  G_UNICODE_BREAK_NON_STARTER, G_UNICODE_BREAK_NON_STARTER, 
+  G_UNICODE_BREAK_NON_STARTER, G_UNICODE_BREAK_NON_STARTER, 
+  G_UNICODE_BREAK_NON_STARTER, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
@@ -5843,6 +5764,7 @@ static char page219[256] = {
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_NON_STARTER, G_UNICODE_BREAK_NON_STARTER, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
@@ -5858,1138 +5780,37 @@ static char page219[256] = {
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_POSTFIX, 
+  G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
+  G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_UNKNOWN, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
   G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_SURROGATE
-};
-
-static char page220[256] = {
-  G_UNICODE_BREAK_SURROGATE, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC
-};
-
-static char page223[256] = {
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_SURROGATE
-};
-
-static char page224[256] = {
-  G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC
-};
-
-static char page248[256] = {
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_AMBIGUOUS
-};
-
-static char page250[256] = {
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
-};
-
-static char page251[256] = {
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC
-};
-
-static char page253[256] = {
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_OPEN_PUNCTUATION, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN
-};
-
-static char page254[256] = {
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, 
-  G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
-  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
-  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
-  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
-  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
-  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
-  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
-  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
-  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_NON_STARTER, 
-  G_UNICODE_BREAK_NON_STARTER, G_UNICODE_BREAK_EXCLAMATION, 
-  G_UNICODE_BREAK_EXCLAMATION, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_OPEN_PUNCTUATION, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
-  G_UNICODE_BREAK_OPEN_PUNCTUATION, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
-  G_UNICODE_BREAK_OPEN_PUNCTUATION, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_POSTFIX, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_NON_BREAKING_GLUE
-};
-
-static char page255[256] = {
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_EXCLAMATION, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_POSTFIX, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_OPEN_PUNCTUATION, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_NON_STARTER, G_UNICODE_BREAK_NON_STARTER, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_EXCLAMATION, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_OPEN_PUNCTUATION, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
-  G_UNICODE_BREAK_OPEN_PUNCTUATION, G_UNICODE_BREAK_CLOSE_PUNCTUATION, 
-  G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_NON_STARTER, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_NON_STARTER, 
-  G_UNICODE_BREAK_NON_STARTER, G_UNICODE_BREAK_NON_STARTER, 
-  G_UNICODE_BREAK_NON_STARTER, G_UNICODE_BREAK_NON_STARTER, 
-  G_UNICODE_BREAK_NON_STARTER, G_UNICODE_BREAK_NON_STARTER, 
-  G_UNICODE_BREAK_NON_STARTER, G_UNICODE_BREAK_NON_STARTER, 
-  G_UNICODE_BREAK_NON_STARTER, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_NON_STARTER, G_UNICODE_BREAK_NON_STARTER, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_POSTFIX, 
-  G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC, 
-  G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC, 
-  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, 
-  G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_CONTINGENT, 
-  G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_UNKNOWN, 
-  G_UNICODE_BREAK_UNKNOWN
+  G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK, 
+  G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_CONTINGENT, 
+  G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_UNKNOWN, 
+  G_UNICODE_BREAK_UNKNOWN
 };
 
 static char *break_property_table[256] = {
@@ -7023,141 +5844,218 @@ static char *break_property_table[256] = {
   (char *) G_UNICODE_BREAK_UNKNOWN,
   (char *) G_UNICODE_BREAK_UNKNOWN,
   (char *) G_UNICODE_BREAK_UNKNOWN,
-  page30,
-  page31,
-  page32,
-  page33,
-  page34,
-  page35,
-  page36,
-  page37,
-  page38,
-  page39,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
+  page30,
+  page31,
+  page32,
+  page33,
+  page34,
+  page35,
+  page36,
+  page37,
+  page38,
+  page39,
+  (char *) G_UNICODE_BREAK_ALPHABETIC,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  page46,
+  page47,
+  page48,
+  page49,
+  page50,
+  page51,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  page77,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  page159,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  page164,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
   (char *) G_UNICODE_BREAK_UNKNOWN,
   (char *) G_UNICODE_BREAK_UNKNOWN,
   (char *) G_UNICODE_BREAK_UNKNOWN,
   (char *) G_UNICODE_BREAK_UNKNOWN,
   (char *) G_UNICODE_BREAK_UNKNOWN,
-  page46,
-  page47,
-  page48,
-  page49,
-  page50,
-  page51,
-  page52,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  page77,
-  page78,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  page159,
   (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
   (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
   (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
   (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
-  page164,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
+  page215,
+  (char *) G_UNICODE_BREAK_SURROGATE,
+  (char *) G_UNICODE_BREAK_SURROGATE,
+  (char *) G_UNICODE_BREAK_SURROGATE,
+  (char *) G_UNICODE_BREAK_SURROGATE,
+  (char *) G_UNICODE_BREAK_SURROGATE,
+  (char *) G_UNICODE_BREAK_SURROGATE,
+  (char *) G_UNICODE_BREAK_SURROGATE,
+  (char *) G_UNICODE_BREAK_SURROGATE,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
+  (char *) G_UNICODE_BREAK_UNKNOWN,
   (char *) G_UNICODE_BREAK_UNKNOWN,
   (char *) G_UNICODE_BREAK_UNKNOWN,
   (char *) G_UNICODE_BREAK_UNKNOWN,
@@ -7165,83 +6063,6 @@ static char *break_property_table[256] = {
   (char *) G_UNICODE_BREAK_UNKNOWN,
   (char *) G_UNICODE_BREAK_UNKNOWN,
   (char *) G_UNICODE_BREAK_UNKNOWN,
-  page172,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  page215,
-  page216,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  page219,
-  page220,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  page223,
-  page224,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  (char *) G_UNICODE_BREAK_ALPHABETIC,
-  page248,
   (char *) G_UNICODE_BREAK_IDEOGRAPHIC,
   page250,
   page251,
diff --git a/graf2d/win32gdk/gdk/src/glib/gunichartables.h b/graf2d/win32gdk/gdk/src/glib/gunichartables.h
index bcbbb18c8d7..d71700e705d 100644
--- a/graf2d/win32gdk/gdk/src/glib/gunichartables.h
+++ b/graf2d/win32gdk/gdk/src/glib/gunichartables.h
@@ -4,7 +4,7 @@
 #ifndef CHARTABLES_H
 #define CHARTABLES_H
 
-#define G_UNICODE_DATA_VERSION "3.0.1"
+#define G_UNICODE_DATA_VERSION "3.1"
 
 #define G_UNICODE_LAST_CHAR 0xffff
 
@@ -487,11 +487,11 @@ static char page3[256] = {
   G_UNICODE_LOWERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER, 
   G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER, 
   G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER, 
+  G_UNICODE_LOWERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER, 
   G_UNICODE_LOWERCASE_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, 
   G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, 
   G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, 
-  G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, 
-  G_UNICODE_UNASSIGNED
+  G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
 };
 
 static char page4[256] = {
@@ -2142,7 +2142,7 @@ static char page22[256] = {
   G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, 
   G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_PUNCTUATION, 
   G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION, 
-  G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, 
+  G_UNICODE_LETTER_NUMBER, G_UNICODE_LETTER_NUMBER, G_UNICODE_LETTER_NUMBER, 
   G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, 
   G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, 
   G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, 
@@ -4982,7 +4982,7 @@ static unsigned short attrpage0[256] = {
   0x0000, 0x0000, 0x0000, 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 
   0x00e6, 0x00e7, 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 
   0x00ef, 0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x0000, 
-  0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x0000, 0x00c0, 
+  0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0xd800, 0x00c0, 
   0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7, 0x00c8, 0x00c9, 
   0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf, 0x00d0, 0x00d1, 0x00d2, 
   0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x0000, 0x00d8, 0x00d9, 0x00da, 0x00db, 
@@ -4998,7 +4998,7 @@ static unsigned short attrpage1[256] = {
   0x012c, 0x012f, 0x012e, 0x0069, 0x0049, 0x0133, 0x0132, 0x0135, 0x0134, 
   0x0137, 0x0136, 0x0000, 0x013a, 0x0139, 0x013c, 0x013b, 0x013e, 0x013d, 
   0x0140, 0x013f, 0x0142, 0x0141, 0x0144, 0x0143, 0x0146, 0x0145, 0x0148, 
-  0x0147, 0x0000, 0x014b, 0x014a, 0x014d, 0x014c, 0x014f, 0x014e, 0x0151, 
+  0x0147, 0xd80e, 0x014b, 0x014a, 0x014d, 0x014c, 0x014f, 0x014e, 0x0151, 
   0x0150, 0x0153, 0x0152, 0x0155, 0x0154, 0x0157, 0x0156, 0x0159, 0x0158, 
   0x015b, 0x015a, 0x015d, 0x015c, 0x015f, 0x015e, 0x0161, 0x0160, 0x0163, 
   0x0162, 0x0165, 0x0164, 0x0167, 0x0166, 0x0169, 0x0168, 0x016b, 0x016a, 
@@ -5016,7 +5016,7 @@ static unsigned short attrpage1[256] = {
   0x01d0, 0x01cf, 0x01d2, 0x01d1, 0x01d4, 0x01d3, 0x01d6, 0x01d5, 0x01d8, 
   0x01d7, 0x01da, 0x01d9, 0x01dc, 0x01db, 0x018e, 0x01df, 0x01de, 0x01e1, 
   0x01e0, 0x01e3, 0x01e2, 0x01e5, 0x01e4, 0x01e7, 0x01e6, 0x01e9, 0x01e8, 
-  0x01eb, 0x01ea, 0x01ed, 0x01ec, 0x01ef, 0x01ee, 0x0000, 0x01f3, 0x0000, 
+  0x01eb, 0x01ea, 0x01ed, 0x01ec, 0x01ef, 0x01ee, 0xd811, 0x01f3, 0x0000, 
   0x01f1, 0x01f5, 0x01f4, 0x0195, 0x01bf, 0x01f9, 0x01f8, 0x01fb, 0x01fa, 
   0x01fd, 0x01fc, 0x01ff, 0x01fe
 };
@@ -5070,10 +5070,10 @@ static unsigned short attrpage3[256] = {
   0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 
   0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x03ac, 
   0x0000, 0x03ad, 0x03ae, 0x03af, 0x0000, 0x03cc, 0x0000, 0x03cd, 0x03ce, 
-  0x0000, 0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7, 0x03b8, 
+  0xd80f, 0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7, 0x03b8, 
   0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf, 0x03c0, 0x03c1, 
   0x0000, 0x03c3, 0x03c4, 0x03c5, 0x03c6, 0x03c7, 0x03c8, 0x03c9, 0x03ca, 
-  0x03cb, 0x0386, 0x0388, 0x0389, 0x038a, 0x0000, 0x0391, 0x0392, 0x0393, 
+  0x03cb, 0x0386, 0x0388, 0x0389, 0x038a, 0xd810, 0x0391, 0x0392, 0x0393, 
   0x0394, 0x0395, 0x0396, 0x0397, 0x0398, 0x0399, 0x039a, 0x039b, 0x039c, 
   0x039d, 0x039e, 0x039f, 0x03a0, 0x03a1, 0x03a3, 0x03a3, 0x03a4, 0x03a5, 
   0x03a6, 0x03a7, 0x03a8, 0x03a9, 0x03aa, 0x03ab, 0x038c, 0x038e, 0x038f, 
@@ -5081,7 +5081,7 @@ static unsigned short attrpage3[256] = {
   0x0000, 0x0000, 0x03db, 0x03da, 0x03dd, 0x03dc, 0x03df, 0x03de, 0x03e1, 
   0x03e0, 0x03e3, 0x03e2, 0x03e5, 0x03e4, 0x03e7, 0x03e6, 0x03e9, 0x03e8, 
   0x03eb, 0x03ea, 0x03ed, 0x03ec, 0x03ef, 0x03ee, 0x039a, 0x03a1, 0x03a3, 
-  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 
+  0x0000, 0x03b8, 0x0395, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 
   0x0000, 0x0000, 0x0000, 0x0000
 };
 
@@ -5133,7 +5133,7 @@ static unsigned short attrpage5[256] = {
   0x053c, 0x053d, 0x053e, 0x053f, 0x0540, 0x0541, 0x0542, 0x0543, 0x0544, 
   0x0545, 0x0546, 0x0547, 0x0548, 0x0549, 0x054a, 0x054b, 0x054c, 0x054d, 
   0x054e, 0x054f, 0x0550, 0x0551, 0x0552, 0x0553, 0x0554, 0x0555, 0x0556, 
-  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 
+  0xd808, 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, 0x0000, 0x0000, 0x0000, 
@@ -5550,8 +5550,8 @@ static unsigned short attrpage30[256] = {
   0x1e74, 0x1e77, 0x1e76, 0x1e79, 0x1e78, 0x1e7b, 0x1e7a, 0x1e7d, 0x1e7c, 
   0x1e7f, 0x1e7e, 0x1e81, 0x1e80, 0x1e83, 0x1e82, 0x1e85, 0x1e84, 0x1e87, 
   0x1e86, 0x1e89, 0x1e88, 0x1e8b, 0x1e8a, 0x1e8d, 0x1e8c, 0x1e8f, 0x1e8e, 
-  0x1e91, 0x1e90, 0x1e93, 0x1e92, 0x1e95, 0x1e94, 0x0000, 0x0000, 0x0000, 
-  0x0000, 0x0000, 0x1e60, 0x0000, 0x0000, 0x0000, 0x0000, 0x1ea1, 0x1ea0, 
+  0x1e91, 0x1e90, 0x1e93, 0x1e92, 0x1e95, 0x1e94, 0xd812, 0xd813, 0xd814, 
+  0xd815, 0xd816, 0x1e60, 0x0000, 0x0000, 0x0000, 0x0000, 0x1ea1, 0x1ea0, 
   0x1ea3, 0x1ea2, 0x1ea5, 0x1ea4, 0x1ea7, 0x1ea6, 0x1ea9, 0x1ea8, 0x1eab, 
   0x1eaa, 0x1ead, 0x1eac, 0x1eaf, 0x1eae, 0x1eb1, 0x1eb0, 0x1eb3, 0x1eb2, 
   0x1eb5, 0x1eb4, 0x1eb7, 0x1eb6, 0x1eb9, 0x1eb8, 0x1ebb, 0x1eba, 0x1ebd, 
@@ -5574,27 +5574,27 @@ static unsigned short attrpage31[256] = {
   0x1f25, 0x1f26, 0x1f27, 0x1f38, 0x1f39, 0x1f3a, 0x1f3b, 0x1f3c, 0x1f3d, 
   0x1f3e, 0x1f3f, 0x1f30, 0x1f31, 0x1f32, 0x1f33, 0x1f34, 0x1f35, 0x1f36, 
   0x1f37, 0x1f48, 0x1f49, 0x1f4a, 0x1f4b, 0x1f4c, 0x1f4d, 0x0000, 0x0000, 
-  0x1f40, 0x1f41, 0x1f42, 0x1f43, 0x1f44, 0x1f45, 0x0000, 0x0000, 0x0000, 
-  0x1f59, 0x0000, 0x1f5b, 0x0000, 0x1f5d, 0x0000, 0x1f5f, 0x0000, 0x1f51, 
+  0x1f40, 0x1f41, 0x1f42, 0x1f43, 0x1f44, 0x1f45, 0x0000, 0x0000, 0xd817, 
+  0x1f59, 0xd818, 0x1f5b, 0xd819, 0x1f5d, 0xd81a, 0x1f5f, 0x0000, 0x1f51, 
   0x0000, 0x1f53, 0x0000, 0x1f55, 0x0000, 0x1f57, 0x1f68, 0x1f69, 0x1f6a, 
   0x1f6b, 0x1f6c, 0x1f6d, 0x1f6e, 0x1f6f, 0x1f60, 0x1f61, 0x1f62, 0x1f63, 
   0x1f64, 0x1f65, 0x1f66, 0x1f67, 0x1fba, 0x1fbb, 0x1fc8, 0x1fc9, 0x1fca, 
   0x1fcb, 0x1fda, 0x1fdb, 0x1ff8, 0x1ff9, 0x1fea, 0x1feb, 0x1ffa, 0x1ffb, 
-  0x0000, 0x0000, 0x1f88, 0x1f89, 0x1f8a, 0x1f8b, 0x1f8c, 0x1f8d, 0x1f8e, 
-  0x1f8f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 
-  0x1f98, 0x1f99, 0x1f9a, 0x1f9b, 0x1f9c, 0x1f9d, 0x1f9e, 0x1f9f, 0x0000, 
-  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1fa8, 0x1fa9, 
-  0x1faa, 0x1fab, 0x1fac, 0x1fad, 0x1fae, 0x1faf, 0x0000, 0x0000, 0x0000, 
-  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1fb8, 0x1fb9, 0x0000, 0x1fbc, 
-  0x0000, 0x0000, 0x0000, 0x0000, 0x1fb0, 0x1fb1, 0x1f70, 0x1f71, 0x0000, 
-  0x0000, 0x0399, 0x0000, 0x0000, 0x0000, 0x0000, 0x1fcc, 0x0000, 0x0000, 
-  0x0000, 0x0000, 0x1f72, 0x1f73, 0x1f74, 0x1f75, 0x0000, 0x0000, 0x0000, 
-  0x0000, 0x1fd8, 0x1fd9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 
+  0x0000, 0x0000, 0xd827, 0xd828, 0xd829, 0xd82a, 0xd82b, 0xd82c, 0xd82d, 
+  0xd82e, 0xd82f, 0xd830, 0xd831, 0xd832, 0xd833, 0xd834, 0xd835, 0xd836, 
+  0xd837, 0xd838, 0xd839, 0xd83a, 0xd83b, 0xd83c, 0xd83d, 0xd83e, 0xd83f, 
+  0xd840, 0xd841, 0xd842, 0xd843, 0xd844, 0xd845, 0xd846, 0xd847, 0xd848, 
+  0xd849, 0xd84a, 0xd84b, 0xd84c, 0xd84d, 0xd84e, 0xd84f, 0xd850, 0xd851, 
+  0xd852, 0xd853, 0xd854, 0xd855, 0xd856, 0x1fb8, 0x1fb9, 0xd85d, 0xd857, 
+  0xd85e, 0x0000, 0xd81b, 0xd863, 0x1fb0, 0x1fb1, 0x1f70, 0x1f71, 0xd858, 
+  0x0000, 0x0399, 0x0000, 0x0000, 0x0000, 0xd85f, 0xd859, 0xd860, 0x0000, 
+  0xd81c, 0xd864, 0x1f72, 0x1f73, 0x1f74, 0x1f75, 0xd85a, 0x0000, 0x0000, 
+  0x0000, 0x1fd8, 0x1fd9, 0xd81d, 0xd81e, 0x0000, 0x0000, 0xd81f, 0xd820, 
   0x1fd0, 0x1fd1, 0x1f76, 0x1f77, 0x0000, 0x0000, 0x0000, 0x0000, 0x1fe8, 
-  0x1fe9, 0x0000, 0x0000, 0x0000, 0x1fec, 0x0000, 0x0000, 0x1fe0, 0x1fe1, 
-  0x1f7a, 0x1f7b, 0x1fe5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 
-  0x1ffc, 0x0000, 0x0000, 0x0000, 0x0000, 0x1f78, 0x1f79, 0x1f7c, 0x1f7d, 
-  0x0000, 0x0000, 0x0000, 0x0000
+  0x1fe9, 0xd821, 0xd822, 0xd823, 0x1fec, 0xd824, 0xd825, 0x1fe0, 0x1fe1, 
+  0x1f7a, 0x1f7b, 0x1fe5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd861, 
+  0xd85b, 0xd862, 0x0000, 0xd826, 0xd865, 0x1f78, 0x1f79, 0x1f7c, 0x1f7d, 
+  0xd85c, 0x0000, 0x0000, 0x0000
 };
 
 static unsigned short attrpage33[256] = {
@@ -5629,6 +5629,38 @@ static unsigned short attrpage33[256] = {
   0x0000, 0x0000, 0x0000, 0x0000
 };
 
+static unsigned short attrpage251[256] = {
+  0xd801, 0xd802, 0xd803, 0xd804, 0xd805, 0xd806, 0xd807, 0x0000, 0x0000, 
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 
+  0x0000, 0xd809, 0xd80a, 0xd80b, 0xd80c, 0xd80d, 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, 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, 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, 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, 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, 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, 
+  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, 0x0000, 0x0000, 0x0000, 0x0000, 
+  0x0000, 0x0000, 0x0000, 0x0000
+};
+
 static unsigned short attrpage255[256] = {
   0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 
   0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 
@@ -5913,7 +5945,7 @@ static unsigned short *attr_table[256] = {
   0x0000,
   0x0000,
   0x0000,
-  0x0000,
+  attrpage251,
   0x0000,
   0x0000,
   0x0000,
@@ -5954,4 +5986,284 @@ static unsigned short title_table[][3] = {
   { 0x1ffc, 0x0000, 0x1ff3 }
 };
 
+
+/* Table of special cases for case conversion; each record contains
+ * First, the best single character mapping to lowercase if Lu, 
+ * and to uppercase if Ll, followed by the output mapping for the two cases 
+ * other than the case of the codepoint, in the order [Ll],[Lu],[Lt],
+ * separated and terminated by a double NUL.
+ */
+static guchar special_case_table[][18] = {
+ "\x00\x00\x00\x53\x00\x53\x00\x00\x00\x53\x00\x73\0",
+ "\x00\x00\x00\x46\x00\x46\x00\x00\x00\x46\x00\x66\0",
+ "\x00\x00\x00\x46\x00\x49\x00\x00\x00\x46\x00\x69\0",
+ "\x00\x00\x00\x46\x00\x4c\x00\x00\x00\x46\x00\x6c\0",
+ "\x00\x00\x00\x46\x00\x46\x00\x49\x00\x00\x00\x46\x00\x66\x00\x69\0",
+ "\x00\x00\x00\x46\x00\x46\x00\x4c\x00\x00\x00\x46\x00\x66\x00\x6c\0",
+ "\x00\x00\x00\x53\x00\x54\x00\x00\x00\x53\x00\x74\0",
+ "\x00\x00\x00\x53\x00\x54\x00\x00\x00\x53\x00\x74\0",
+ "\x00\x00\x05\x35\x05\x52\x00\x00\x05\x35\x05\x82\0",
+ "\x00\x00\x05\x44\x05\x46\x00\x00\x05\x44\x05\x76\0",
+ "\x00\x00\x05\x44\x05\x35\x00\x00\x05\x44\x05\x65\0",
+ "\x00\x00\x05\x44\x05\x3b\x00\x00\x05\x44\x05\x6b\0",
+ "\x00\x00\x05\x4e\x05\x46\x00\x00\x05\x4e\x05\x76\0",
+ "\x00\x00\x05\x44\x05\x3d\x00\x00\x05\x44\x05\x6d\0",
+ "\x00\x00\x02\xbc\x00\x4e\x00\x00\x02\xbc\x00\x4e\0",
+ "\x00\x00\x03\x99\x03\x08\x03\x01\x00\x00\x03\x99\x03\x08\x03\x01\0",
+ "\x00\x00\x03\xa5\x03\x08\x03\x01\x00\x00\x03\xa5\x03\x08\x03\x01\0",
+ "\x00\x00\x00\x4a\x03\x0c\x00\x00\x00\x4a\x03\x0c\0",
+ "\x00\x00\x00\x48\x03\x31\x00\x00\x00\x48\x03\x31\0",
+ "\x00\x00\x00\x54\x03\x08\x00\x00\x00\x54\x03\x08\0",
+ "\x00\x00\x00\x57\x03\x0a\x00\x00\x00\x57\x03\x0a\0",
+ "\x00\x00\x00\x59\x03\x0a\x00\x00\x00\x59\x03\x0a\0",
+ "\x00\x00\x00\x41\x02\xbe\x00\x00\x00\x41\x02\xbe\0",
+ "\x00\x00\x03\xa5\x03\x13\x00\x00\x03\xa5\x03\x13\0",
+ "\x00\x00\x03\xa5\x03\x13\x03\x00\x00\x00\x03\xa5\x03\x13\x03\x00\0",
+ "\x00\x00\x03\xa5\x03\x13\x03\x01\x00\x00\x03\xa5\x03\x13\x03\x01\0",
+ "\x00\x00\x03\xa5\x03\x13\x03\x42\x00\x00\x03\xa5\x03\x13\x03\x42\0",
+ "\x00\x00\x03\x91\x03\x42\x00\x00\x03\x91\x03\x42\0",
+ "\x00\x00\x03\x97\x03\x42\x00\x00\x03\x97\x03\x42\0",
+ "\x00\x00\x03\x99\x03\x08\x03\x00\x00\x00\x03\x99\x03\x08\x03\x00\0",
+ "\x00\x00\x03\x99\x03\x08\x03\x01\x00\x00\x03\x99\x03\x08\x03\x01\0",
+ "\x00\x00\x03\x99\x03\x42\x00\x00\x03\x99\x03\x42\0",
+ "\x00\x00\x03\x99\x03\x08\x03\x42\x00\x00\x03\x99\x03\x08\x03\x42\0",
+ "\x00\x00\x03\xa5\x03\x08\x03\x00\x00\x00\x03\xa5\x03\x08\x03\x00\0",
+ "\x00\x00\x03\xa5\x03\x08\x03\x01\x00\x00\x03\xa5\x03\x08\x03\x01\0",
+ "\x00\x00\x03\xa1\x03\x13\x00\x00\x03\xa1\x03\x13\0",
+ "\x00\x00\x03\xa5\x03\x42\x00\x00\x03\xa5\x03\x42\0",
+ "\x00\x00\x03\xa5\x03\x08\x03\x42\x00\x00\x03\xa5\x03\x08\x03\x42\0",
+ "\x00\x00\x03\xa9\x03\x42\x00\x00\x03\xa9\x03\x42\0",
+ "\x1f\x88\x1f\x08\x03\x99\x00\x00\x1f\x88\0",
+ "\x1f\x89\x1f\x09\x03\x99\x00\x00\x1f\x89\0",
+ "\x1f\x8a\x1f\x0a\x03\x99\x00\x00\x1f\x8a\0",
+ "\x1f\x8b\x1f\x0b\x03\x99\x00\x00\x1f\x8b\0",
+ "\x1f\x8c\x1f\x0c\x03\x99\x00\x00\x1f\x8c\0",
+ "\x1f\x8d\x1f\x0d\x03\x99\x00\x00\x1f\x8d\0",
+ "\x1f\x8e\x1f\x0e\x03\x99\x00\x00\x1f\x8e\0",
+ "\x1f\x8f\x1f\x0f\x03\x99\x00\x00\x1f\x8f\0",
+ "\x1f\x80\x00\x00\x1f\x08\x03\x99\0",
+ "\x1f\x81\x00\x00\x1f\x09\x03\x99\0",
+ "\x1f\x82\x00\x00\x1f\x0a\x03\x99\0",
+ "\x1f\x83\x00\x00\x1f\x0b\x03\x99\0",
+ "\x1f\x84\x00\x00\x1f\x0c\x03\x99\0",
+ "\x1f\x85\x00\x00\x1f\x0d\x03\x99\0",
+ "\x1f\x86\x00\x00\x1f\x0e\x03\x99\0",
+ "\x1f\x87\x00\x00\x1f\x0f\x03\x99\0",
+ "\x1f\x98\x1f\x28\x03\x99\x00\x00\x1f\x98\0",
+ "\x1f\x99\x1f\x29\x03\x99\x00\x00\x1f\x99\0",
+ "\x1f\x9a\x1f\x2a\x03\x99\x00\x00\x1f\x9a\0",
+ "\x1f\x9b\x1f\x2b\x03\x99\x00\x00\x1f\x9b\0",
+ "\x1f\x9c\x1f\x2c\x03\x99\x00\x00\x1f\x9c\0",
+ "\x1f\x9d\x1f\x2d\x03\x99\x00\x00\x1f\x9d\0",
+ "\x1f\x9e\x1f\x2e\x03\x99\x00\x00\x1f\x9e\0",
+ "\x1f\x9f\x1f\x2f\x03\x99\x00\x00\x1f\x9f\0",
+ "\x1f\x90\x00\x00\x1f\x28\x03\x99\0",
+ "\x1f\x91\x00\x00\x1f\x29\x03\x99\0",
+ "\x1f\x92\x00\x00\x1f\x2a\x03\x99\0",
+ "\x1f\x93\x00\x00\x1f\x2b\x03\x99\0",
+ "\x1f\x94\x00\x00\x1f\x2c\x03\x99\0",
+ "\x1f\x95\x00\x00\x1f\x2d\x03\x99\0",
+ "\x1f\x96\x00\x00\x1f\x2e\x03\x99\0",
+ "\x1f\x97\x00\x00\x1f\x2f\x03\x99\0",
+ "\x1f\xa8\x1f\x68\x03\x99\x00\x00\x1f\xa8\0",
+ "\x1f\xa9\x1f\x69\x03\x99\x00\x00\x1f\xa9\0",
+ "\x1f\xaa\x1f\x6a\x03\x99\x00\x00\x1f\xaa\0",
+ "\x1f\xab\x1f\x6b\x03\x99\x00\x00\x1f\xab\0",
+ "\x1f\xac\x1f\x6c\x03\x99\x00\x00\x1f\xac\0",
+ "\x1f\xad\x1f\x6d\x03\x99\x00\x00\x1f\xad\0",
+ "\x1f\xae\x1f\x6e\x03\x99\x00\x00\x1f\xae\0",
+ "\x1f\xaf\x1f\x6f\x03\x99\x00\x00\x1f\xaf\0",
+ "\x1f\xa0\x00\x00\x1f\x68\x03\x99\0",
+ "\x1f\xa1\x00\x00\x1f\x69\x03\x99\0",
+ "\x1f\xa2\x00\x00\x1f\x6a\x03\x99\0",
+ "\x1f\xa3\x00\x00\x1f\x6b\x03\x99\0",
+ "\x1f\xa4\x00\x00\x1f\x6c\x03\x99\0",
+ "\x1f\xa5\x00\x00\x1f\x6d\x03\x99\0",
+ "\x1f\xa6\x00\x00\x1f\x6e\x03\x99\0",
+ "\x1f\xa7\x00\x00\x1f\x6f\x03\x99\0",
+ "\x1f\xbc\x03\x91\x03\x99\x00\x00\x1f\xbc\0",
+ "\x1f\xb3\x00\x00\x03\x91\x03\x99\0",
+ "\x1f\xcc\x03\x97\x03\x99\x00\x00\x1f\xcc\0",
+ "\x1f\xc3\x00\x00\x03\x97\x03\x99\0",
+ "\x1f\xfc\x03\xa9\x03\x99\x00\x00\x1f\xfc\0",
+ "\x1f\xf3\x00\x00\x03\xa9\x03\x99\0",
+ "\x00\x00\x1f\xba\x03\x99\x00\x00\x1f\xba\x03\x45\0",
+ "\x00\x00\x03\x86\x03\x99\x00\x00\x03\x86\x03\x45\0",
+ "\x00\x00\x1f\xca\x03\x99\x00\x00\x1f\xca\x03\x45\0",
+ "\x00\x00\x03\x89\x03\x99\x00\x00\x03\x89\x03\x45\0",
+ "\x00\x00\x1f\xfa\x03\x99\x00\x00\x1f\xfa\x03\x45\0",
+ "\x00\x00\x03\x8f\x03\x99\x00\x00\x03\x8f\x03\x45\0",
+ "\x00\x00\x03\x91\x03\x42\x03\x99\x00\x00\x03\x91\x03\x42\x03\x45\0",
+ "\x00\x00\x03\x97\x03\x42\x03\x99\x00\x00\x03\x97\x03\x42\x03\x45\0",
+ "\x00\x00\x03\xa9\x03\x42\x03\x99\x00\x00\x03\xa9\x03\x42\x03\x45\0",
+};
+
+
+/* Table of casefolding cases that can't be derived by lowercasing
+ */
+static struct {
+  guint16 ch;
+  gchar data[7];
+} casefold_table[] = {
+{ 0xb5, "μ" },
+{ 0xdf, "ss" },
+{ 0x131, "i" },
+{ 0x149, "ʼn" },
+{ 0x17f, "s" },
+{ 0x1f0, "ǰ" },
+{ 0x345, "ι" },
+{ 0x390, "ΐ" },
+{ 0x3b0, "ΰ" },
+{ 0x3c2, "σ" },
+{ 0x3d0, "β" },
+{ 0x3d1, "θ" },
+{ 0x3d5, "φ" },
+{ 0x3d6, "π" },
+{ 0x3f0, "κ" },
+{ 0x3f1, "ρ" },
+{ 0x3f2, "σ" },
+{ 0x3f5, "ε" },
+{ 0x587, "եւ" },
+{ 0x1e96, "ẖ" },
+{ 0x1e97, "ẗ" },
+{ 0x1e98, "ẘ" },
+{ 0x1e99, "ẙ" },
+{ 0x1e9a, "aʾ" },
+{ 0x1e9b, "ṡ" },
+{ 0x1f50, "ὐ" },
+{ 0x1f52, "ὒ" },
+{ 0x1f54, "ὔ" },
+{ 0x1f56, "ὖ" },
+{ 0x1f80, "ἀι" },
+{ 0x1f81, "ἁι" },
+{ 0x1f82, "ἂι" },
+{ 0x1f83, "ἃι" },
+{ 0x1f84, "ἄι" },
+{ 0x1f85, "ἅι" },
+{ 0x1f86, "ἆι" },
+{ 0x1f87, "ἇι" },
+{ 0x1f88, "ἀι" },
+{ 0x1f89, "ἁι" },
+{ 0x1f8a, "ἂι" },
+{ 0x1f8b, "ἃι" },
+{ 0x1f8c, "ἄι" },
+{ 0x1f8d, "ἅι" },
+{ 0x1f8e, "ἆι" },
+{ 0x1f8f, "ἇι" },
+{ 0x1f90, "ἠι" },
+{ 0x1f91, "ἡι" },
+{ 0x1f92, "ἢι" },
+{ 0x1f93, "ἣι" },
+{ 0x1f94, "ἤι" },
+{ 0x1f95, "ἥι" },
+{ 0x1f96, "ἦι" },
+{ 0x1f97, "ἧι" },
+{ 0x1f98, "ἠι" },
+{ 0x1f99, "ἡι" },
+{ 0x1f9a, "ἢι" },
+{ 0x1f9b, "ἣι" },
+{ 0x1f9c, "ἤι" },
+{ 0x1f9d, "ἥι" },
+{ 0x1f9e, "ἦι" },
+{ 0x1f9f, "ἧι" },
+{ 0x1fa0, "ὠι" },
+{ 0x1fa1, "ὡι" },
+{ 0x1fa2, "ὢι" },
+{ 0x1fa3, "ὣι" },
+{ 0x1fa4, "ὤι" },
+{ 0x1fa5, "ὥι" },
+{ 0x1fa6, "ὦι" },
+{ 0x1fa7, "ὧι" },
+{ 0x1fa8, "ὠι" },
+{ 0x1fa9, "ὡι" },
+{ 0x1faa, "ὢι" },
+{ 0x1fab, "ὣι" },
+{ 0x1fac, "ὤι" },
+{ 0x1fad, "ὥι" },
+{ 0x1fae, "ὦι" },
+{ 0x1faf, "ὧι" },
+{ 0x1fb2, "ὰι" },
+{ 0x1fb3, "αι" },
+{ 0x1fb4, "άι" },
+{ 0x1fb6, "ᾶ" },
+{ 0x1fb7, "ᾶι" },
+{ 0x1fbc, "αι" },
+{ 0x1fbe, "ι" },
+{ 0x1fc2, "ὴι" },
+{ 0x1fc3, "ηι" },
+{ 0x1fc4, "ήι" },
+{ 0x1fc6, "ῆ" },
+{ 0x1fc7, "ῆι" },
+{ 0x1fcc, "ηι" },
+{ 0x1fd2, "ῒ" },
+{ 0x1fd3, "ΐ" },
+{ 0x1fd6, "ῖ" },
+{ 0x1fd7, "ῗ" },
+{ 0x1fe2, "ῢ" },
+{ 0x1fe3, "ΰ" },
+{ 0x1fe4, "ῤ" },
+{ 0x1fe6, "ῦ" },
+{ 0x1fe7, "ῧ" },
+{ 0x1ff2, "ὼι" },
+{ 0x1ff3, "ωι" },
+{ 0x1ff4, "ώι" },
+{ 0x1ff6, "ῶ" },
+{ 0x1ff7, "ῶι" },
+{ 0x1ffc, "ωι" },
+{ 0x2160, "ⅰ" },
+{ 0x2161, "ⅱ" },
+{ 0x2162, "ⅲ" },
+{ 0x2163, "ⅳ" },
+{ 0x2164, "ⅴ" },
+{ 0x2165, "ⅵ" },
+{ 0x2166, "ⅶ" },
+{ 0x2167, "ⅷ" },
+{ 0x2168, "ⅸ" },
+{ 0x2169, "ⅹ" },
+{ 0x216a, "ⅺ" },
+{ 0x216b, "ⅻ" },
+{ 0x216c, "ⅼ" },
+{ 0x216d, "ⅽ" },
+{ 0x216e, "ⅾ" },
+{ 0x216f, "ⅿ" },
+{ 0x24b6, "ⓐ" },
+{ 0x24b7, "ⓑ" },
+{ 0x24b8, "ⓒ" },
+{ 0x24b9, "ⓓ" },
+{ 0x24ba, "ⓔ" },
+{ 0x24bb, "ⓕ" },
+{ 0x24bc, "ⓖ" },
+{ 0x24bd, "ⓗ" },
+{ 0x24be, "ⓘ" },
+{ 0x24bf, "ⓙ" },
+{ 0x24c0, "ⓚ" },
+{ 0x24c1, "ⓛ" },
+{ 0x24c2, "ⓜ" },
+{ 0x24c3, "ⓝ" },
+{ 0x24c4, "ⓞ" },
+{ 0x24c5, "ⓟ" },
+{ 0x24c6, "ⓠ" },
+{ 0x24c7, "ⓡ" },
+{ 0x24c8, "ⓢ" },
+{ 0x24c9, "ⓣ" },
+{ 0x24ca, "ⓤ" },
+{ 0x24cb, "ⓥ" },
+{ 0x24cc, "ⓦ" },
+{ 0x24cd, "ⓧ" },
+{ 0x24ce, "ⓨ" },
+{ 0x24cf, "ⓩ" },
+{ 0xfb00, "ff" },
+{ 0xfb01, "fi" },
+{ 0xfb02, "fl" },
+{ 0xfb03, "ffi" },
+{ 0xfb04, "ffl" },
+{ 0xfb05, "st" },
+{ 0xfb06, "st" },
+{ 0xfb13, "մն" },
+{ 0xfb14, "մե" },
+{ 0xfb15, "մի" },
+{ 0xfb16, "վն" },
+{ 0xfb17, "մխ" },
+};
+
 #endif /* CHARTABLES_H */
diff --git a/graf2d/win32gdk/gdk/src/glib/gunicode.h b/graf2d/win32gdk/gdk/src/glib/gunicode.h
index e730485bf71..f93f3b1d8af 100644
--- a/graf2d/win32gdk/gdk/src/glib/gunicode.h
+++ b/graf2d/win32gdk/gdk/src/glib/gunicode.h
@@ -22,8 +22,8 @@
 #ifndef __G_UNICODE_H__
 #define __G_UNICODE_H__
 
-#include <stddef.h>      /* For size_t */
-#include <g_types.h>
+#include <glib/gerror.h>
+#include <glib/gtypes.h>
 
 G_BEGIN_DECLS
 
@@ -109,7 +109,7 @@ typedef enum
  * in case the locale's charset will be changed later using setlocale()
  * or in some other way.
  */
-gboolean g_get_charset (char **charset);
+gboolean g_get_charset (G_CONST_RETURN char **charset);
 
 /* These are all analogs of the <ctype.h> functions.
  */
@@ -151,89 +151,130 @@ GUnicodeBreakType g_unichar_break_type (gunichar c) G_GNUC_CONST;
    decomposed characters in the string according to their combining
    classes.  See the Unicode manual for more information.  */
 void g_unicode_canonical_ordering (gunichar *string,
-				   size_t   len);
+				   gsize     len);
 
 /* Compute canonical decomposition of a character.  Returns g_malloc()d
    string of Unicode characters.  RESULT_LEN is set to the resulting
    length of the string.  */
 gunichar *g_unicode_canonical_decomposition (gunichar  ch,
-					     size_t   *result_len);
+					     gsize    *result_len);
 
 /* Array of skip-bytes-per-initial character.
- * We prefix variable declarations so they can
- * properly get exported in windows dlls.
  */
-#ifndef GLIB_VAR
-#  ifdef G_OS_WIN32
-#    ifdef GLIB_COMPILATION
-#      define GLIB_VAR __declspec(dllexport)
-#    else /* !GLIB_COMPILATION */
-#      define GLIB_VAR extern __declspec(dllimport)
-#    endif /* !GLIB_COMPILATION */
-#  else /* !G_OS_WIN32 */
-#    define GLIB_VAR extern
-#  endif /* !G_OS_WIN32 */
-#endif /* !GLIB_VAR */
-
-GLIB_VAR char g_utf8_skip[256];
+GLIB_VAR const gchar * const g_utf8_skip;
 
 #define g_utf8_next_char(p) (char *)((p) + g_utf8_skip[*(guchar *)(p)])
 
-gunichar g_utf8_get_char          (const gchar *p);
-gchar *  g_utf8_offset_to_pointer  (const gchar *str,
-				    gint         offset);
-gint     g_utf8_pointer_to_offset (const gchar *str,
+gunichar g_utf8_get_char           (const gchar  *p);
+gunichar g_utf8_get_char_validated (const  gchar *p,
+				    gssize        max_len);
+
+gchar*   g_utf8_offset_to_pointer (const gchar *str,
+                                   glong        offset);  
+glong    g_utf8_pointer_to_offset (const gchar *str,      
 				   const gchar *pos);
-gchar *  g_utf8_prev_char         (const gchar *p);
-gchar *  g_utf8_find_next_char    (const gchar *p,
+gchar*   g_utf8_prev_char         (const gchar *p);
+gchar*   g_utf8_find_next_char    (const gchar *p,
 				   const gchar *end);
-gchar *  g_utf8_find_prev_char    (const gchar *str,
+gchar*   g_utf8_find_prev_char    (const gchar *str,
 				   const gchar *p);
 
-gint g_utf8_strlen (const gchar *p,
-		    gint         max);
+glong g_utf8_strlen (const gchar *p,  
+		     gssize       max);        
 
 /* Copies n characters from src to dest */
-gchar *g_utf8_strncpy (gchar       *dest,
+gchar* g_utf8_strncpy (gchar       *dest,
 		       const gchar *src,
-		       size_t       n);
+		       gsize        n);
 
 /* Find the UTF-8 character corresponding to ch, in string p. These
    functions are equivalants to strchr and strrchr */
-
-gchar *g_utf8_strchr  (const gchar *p,
+gchar* g_utf8_strchr  (const gchar *p,
+		       gssize       len,
 		       gunichar     c);
-gchar *g_utf8_strrchr (const gchar *p,
+gchar* g_utf8_strrchr (const gchar *p,
+		       gssize       len,
 		       gunichar     c);
 
-gunichar2 *g_utf8_to_utf16 (const gchar     *str,
-			    gint             len);
-gunichar * g_utf8_to_ucs4  (const gchar     *str,
-			    gint             len);
-gunichar * g_utf16_to_ucs4 (const gunichar2 *str,
-			    gint             len);
-gchar *    g_utf16_to_utf8 (const gunichar2 *str,
-			    gint             len);
-gunichar * g_ucs4_to_utf16 (const gunichar  *str,
-			    gint             len);
-gchar *    g_ucs4_to_utf8  (const gunichar  *str,
-			    gint             len);
+gunichar2 *g_utf8_to_utf16     (const gchar      *str,
+				glong             len,            
+				glong            *items_read,     
+				glong            *items_written,  
+				GError          **error);
+gunichar * g_utf8_to_ucs4      (const gchar      *str,
+				glong             len,            
+				glong            *items_read,     
+				glong            *items_written,  
+				GError          **error);
+gunichar * g_utf8_to_ucs4_fast (const gchar      *str,
+				glong             len,            
+				glong            *items_written); 
+gunichar * g_utf16_to_ucs4     (const gunichar2  *str,
+				glong             len,            
+				glong            *items_read,     
+				glong            *items_written,  
+				GError          **error);
+gchar*     g_utf16_to_utf8     (const gunichar2  *str,
+				glong             len,            
+				glong            *items_read,     
+				glong            *items_written,  
+				GError          **error);
+gunichar2 *g_ucs4_to_utf16     (const gunichar   *str,
+				glong             len,            
+				glong            *items_read,     
+				glong            *items_written,  
+				GError          **error);
+gchar*     g_ucs4_to_utf8      (const gunichar   *str,
+				glong             len,            
+				glong            *items_read,     
+				glong            *items_written,  
+				GError          **error);
 
 /* Convert a single character into UTF-8. outbuf must have at
  * least 6 bytes of space. Returns the number of bytes in the
  * result.
  */
 gint      g_unichar_to_utf8 (gunichar    c,
-			     char       *outbuf);
+			     gchar      *outbuf);
 
 /* Validate a UTF8 string, return TRUE if valid, put pointer to
  * first invalid char in **end
  */
 
 gboolean g_utf8_validate (const gchar  *str,
-                          gint          max_len,
+                          gssize        max_len,  
                           const gchar **end);
 
+/* Validate a Unicode character */
+gboolean g_unichar_validate (gunichar ch);
+
+gchar *g_utf8_strup   (const gchar *str,
+		       gssize       len);
+gchar *g_utf8_strdown (const gchar *str,
+		       gssize       len);
+gchar *g_utf8_casefold (const gchar *str,
+			gssize       len);
+
+typedef enum {
+  G_NORMALIZE_DEFAULT,
+  G_NORMALIZE_NFD = G_NORMALIZE_DEFAULT,
+  G_NORMALIZE_DEFAULT_COMPOSE,
+  G_NORMALIZE_NFC = G_NORMALIZE_DEFAULT_COMPOSE,
+  G_NORMALIZE_ALL,
+  G_NORMALIZE_NFKD = G_NORMALIZE_ALL,
+  G_NORMALIZE_ALL_COMPOSE,
+  G_NORMALIZE_NFKC = G_NORMALIZE_ALL_COMPOSE
+} GNormalizeMode;
+
+gchar *g_utf8_normalize (const gchar   *str,
+			 gssize         len,
+			 GNormalizeMode mode);
+
+gint   g_utf8_collate     (const gchar *str1,
+			   const gchar *str2);
+gchar *g_utf8_collate_key (const gchar *str,
+			   gssize       len);
+
 G_END_DECLS
 
 #endif /* __G_UNICODE_H__ */
diff --git a/graf2d/win32gdk/gdk/src/glib/gunicollate.c b/graf2d/win32gdk/gdk/src/glib/gunicollate.c
new file mode 100644
index 00000000000..41cbe812e86
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gunicollate.c
@@ -0,0 +1,235 @@
+/* gunicollate.c - Collation
+ *
+ *  Copyright 2001 Red Hat, Inc.
+ *
+ * The Gnome Library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * The Gnome Library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with the Gnome Library; see the file COPYING.LIB.  If not,
+ * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ *   Boston, MA 02111-1307, USA.
+ */
+
+#include <locale.h>
+#include <string.h>
+#ifdef __STDC_ISO_10646__
+#include <wchar.h>
+#endif
+
+#include "glib.h"
+
+extern gunichar *_g_utf8_normalize_wc (const gchar    *str,
+				       gssize          max_len,
+				       GNormalizeMode  mode);
+
+/**
+ * g_utf8_collate:
+ * @str1: a UTF-8 encoded string
+ * @str2: a UTF-8 encoded string
+ * 
+ * Compares two strings for ordering using the linguistically
+ * correct rules for the current locale. When sorting a large
+ * number of strings, it will be significantly faster to
+ * obtain collation keys with g_utf8_collate_key() and 
+ * compare the keys with <function>strcmp()</function> when 
+ * sorting instead of sorting the original strings.
+ * 
+ * Return value: -1 if @str1 compares before @str2, 0 if they
+ *   compare equal, 1 if @str1 compares after @str2.
+ **/
+gint
+g_utf8_collate (const gchar *str1,
+		const gchar *str2)
+{
+  gint result;
+  
+#ifdef __STDC_ISO_10646__
+
+  gunichar *str1_norm = _g_utf8_normalize_wc (str1, -1, G_NORMALIZE_ALL_COMPOSE);
+  gunichar *str2_norm = _g_utf8_normalize_wc (str2, -1, G_NORMALIZE_ALL_COMPOSE);
+
+  result = wcscoll ((wchar_t *)str1_norm, (wchar_t *)str2_norm);
+
+  g_free (str1_norm);
+  g_free (str2_norm);
+
+#else /* !__STDC_ISO_10646__ */
+
+  const gchar *charset;
+  gchar *str1_norm = g_utf8_normalize (str1, -1, G_NORMALIZE_ALL_COMPOSE);
+  gchar *str2_norm = g_utf8_normalize (str2, -1, G_NORMALIZE_ALL_COMPOSE);
+
+  if (g_get_charset (&charset))
+    {
+      result = strcoll (str1_norm, str2_norm);
+    }
+  else
+    {
+      gchar *str1_locale = g_convert (str1_norm, -1, "UTF-8", charset, NULL, NULL, NULL);
+      gchar *str2_locale = g_convert (str2_norm, -1, "UTF-8", charset, NULL, NULL, NULL);
+
+      if (str1_locale && str2_locale)
+	result =  strcoll (str1_locale, str2_locale);
+      else if (str1_locale)
+	result = -1;
+      else if (str2_locale)
+	result = 1;
+      else
+	result = strcmp (str1_norm, str2_norm);
+
+      g_free (str1_locale);
+      g_free (str2_locale);
+    }
+
+  g_free (str1_norm);
+  g_free (str2_norm);
+
+#endif /* __STDC_ISO_10646__ */
+
+  return result;
+}
+
+#ifdef __STDC_ISO_10646__
+/* We need UTF-8 encoding of numbers to encode the weights if
+ * we are using wcsxfrm. However, we aren't encoding Unicode
+ * characters, so we can't simply use g_unichar_to_utf8.
+ *
+ * The following routine is taken (with modification) from GNU
+ * libc's strxfrm routine:
+ *
+ * Copyright (C) 1995-1999,2000,2001 Free Software Foundation, Inc.
+ * Written by Ulrich Drepper <drepper@cygnus.com>, 1995.
+ */
+static inline int
+utf8_encode (char *buf, wchar_t val)
+{
+  int retval;
+
+  if (val < 0x80)
+    {
+      if (buf)
+	*buf++ = (char) val;
+      retval = 1;
+    }
+  else
+    {
+      int step;
+
+      for (step = 2; step < 6; ++step)
+        if ((val & (~(guint32)0 << (5 * step + 1))) == 0)
+          break;
+      retval = step;
+
+      if (buf)
+	{
+	  *buf = (unsigned char) (~0xff >> step);
+	  --step;
+	  do
+	    {
+	      buf[step] = 0x80 | (val & 0x3f);
+	      val >>= 6;
+	    }
+	  while (--step > 0);
+	  *buf |= val;
+	}
+    }
+
+  return retval;
+}
+#endif /* __STDC_ISO_10646__ */
+
+/**
+ * g_utf8_collate_key:
+ * @str: a UTF-8 encoded string.
+ * @len: length of @str, in bytes, or -1 if @str is nul-terminated.
+ *
+ * Converts a string into a collation key that can be compared
+ * with other collation keys using <function>strcmp()</function>. 
+ * The results of comparing the collation keys of two strings 
+ * with <function>strcmp()</function> will always be the same as 
+ * comparing the two original keys with g_utf8_collate().
+ * 
+ * Return value: a newly allocated string. This string should
+ *   be freed with g_free() when you are done with it.
+ **/
+gchar *
+g_utf8_collate_key (const gchar *str,
+		    gssize       len)
+{
+  gchar *result;
+  size_t xfrm_len;
+  
+#ifdef __STDC_ISO_10646__
+
+  gunichar *str_norm = _g_utf8_normalize_wc (str, len, G_NORMALIZE_ALL_COMPOSE);
+  wchar_t *result_wc;
+  size_t i;
+  size_t result_len = 0;
+
+  setlocale (LC_COLLATE, "");
+
+  xfrm_len = wcsxfrm (NULL, (wchar_t *)str_norm, 0);
+  result_wc = g_new (wchar_t, xfrm_len + 1);
+  wcsxfrm (result_wc, (wchar_t *)str_norm, xfrm_len + 1);
+
+  for (i=0; i < xfrm_len; i++)
+    result_len += utf8_encode (NULL, result_wc[i]);
+
+  result = g_malloc (result_len + 1);
+  result_len = 0;
+  for (i=0; i < xfrm_len; i++)
+    result_len += utf8_encode (result + result_len, result_wc[i]);
+
+  result[result_len] = '\0';
+
+  g_free (result_wc);
+  g_free (str_norm);
+
+  return result;
+#else /* !__STDC_ISO_10646__ */
+
+  const gchar *charset;
+  gchar *str_norm = g_utf8_normalize (str, len, G_NORMALIZE_ALL_COMPOSE);
+
+  if (g_get_charset (&charset))
+    {
+      xfrm_len = strxfrm (NULL, str_norm, 0);
+      result = g_malloc (xfrm_len + 1);
+      strxfrm (result, str_norm, xfrm_len + 1);
+    }
+  else
+    {
+      gchar *str_locale = g_convert (str_norm, -1, "UTF-8", charset, NULL, NULL, NULL);
+
+      if (str_locale)
+	{
+	  xfrm_len = strxfrm (NULL, str_locale, 0);
+	  result = g_malloc (xfrm_len + 2);
+	  result[0] = 'A';
+	  strxfrm (result + 1, str_locale, xfrm_len + 1);
+	  
+	  g_free (str_locale);
+	}
+      else
+	{
+	  xfrm_len = strlen (str_norm);
+	  result = g_malloc (xfrm_len + 2);
+	  result[0] = 'B';
+	  memcpy (result + 1, str_norm, xfrm_len);
+	  result[xfrm_len+1] = '\0';
+	}
+    }
+
+  g_free (str_norm);
+#endif /* __STDC_ISO_10646__ */
+
+  return result;
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gunicomp.h b/graf2d/win32gdk/gdk/src/glib/gunicomp.h
new file mode 100644
index 00000000000..f2414ca568e
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gunicomp.h
@@ -0,0 +1,667 @@
+#define COMPOSE_FIRST_START 1
+#define COMPOSE_FIRST_SINGLE_START 147
+#define COMPOSE_SECOND_START 357
+#define COMPOSE_SECOND_SINGLE_START 388
+
+static gushort compose_page0[256] = {
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 147, 148, 149, 0, 0, 1, 2, 3, 4, 5, 150, 6, 
+  7, 8, 151, 9, 10, 11, 12, 13, 14, 0, 15, 16, 17, 18, 19, 20, 21, 22, 23, 0, 
+  0, 0, 0, 0, 0, 24, 25, 26, 27, 28, 152, 29, 30, 31, 32, 33, 34, 35, 36, 37, 
+  38, 0, 39, 40, 41, 42, 43, 44, 45, 46, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 0, 153, 154, 50, 155, 0, 0, 51, 0, 0, 0, 
+  0, 156, 0, 0, 0, 0, 52, 53, 157, 0, 158, 0, 0, 0, 54, 0, 0, 0, 0, 0, 55, 0, 
+  159, 160, 56, 161, 0, 0, 57, 0, 0, 0, 0, 162, 0, 0, 0, 0, 58, 59, 163, 0, 
+  164, 0, 0, 0, 60, 0, 0, 0
+};
+
+static gushort compose_page1[256] = {
+  0, 0, 61, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 64, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 65, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 165, 166, 0, 0, 0, 0, 
+  167, 168, 0, 0, 0, 0, 0, 0, 169, 170, 171, 172, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 173, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 67, 68, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 69, 70, 0, 0, 0, 0, 0, 0, 174, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 175, 176, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+};
+
+static gushort compose_page2[256] = {
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 177, 178, 179, 180, 0, 0, 0, 0, 181, 
+  182, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  183, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+};
+
+static gushort compose_page3[256] = {
+  357, 358, 359, 360, 361, 0, 362, 363, 364, 365, 366, 367, 368, 0, 0, 369, 
+  0, 370, 0, 371, 372, 0, 0, 0, 0, 0, 0, 373, 0, 0, 0, 0, 0, 0, 0, 374, 375, 
+  376, 377, 378, 379, 0, 0, 0, 0, 380, 381, 0, 382, 383, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 384, 0, 0, 385, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 71, 0, 0, 0, 72, 0, 73, 0, 74, 0, 
+  0, 0, 0, 0, 75, 0, 184, 0, 0, 0, 76, 0, 0, 0, 77, 0, 0, 185, 0, 186, 0, 0, 
+  78, 0, 0, 0, 79, 0, 80, 0, 81, 0, 0, 0, 0, 0, 82, 0, 83, 0, 0, 0, 84, 0, 0, 
+  0, 85, 86, 87, 0, 0, 187, 0, 0, 0, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0
+};
+
+static gushort compose_page4[256] = {
+  0, 0, 0, 0, 0, 0, 188, 0, 0, 0, 0, 0, 0, 0, 0, 0, 89, 0, 0, 189, 0, 90, 91, 
+  190, 92, 0, 191, 0, 0, 0, 192, 0, 0, 0, 0, 93, 0, 0, 0, 193, 0, 0, 0, 194, 
+  0, 195, 0, 0, 94, 0, 0, 196, 0, 95, 96, 197, 97, 0, 198, 0, 0, 0, 199, 0, 
+  0, 0, 0, 98, 0, 0, 0, 200, 0, 0, 0, 201, 0, 202, 0, 0, 0, 0, 0, 0, 0, 0, 
+  203, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 204, 205, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 206, 207, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  208, 209, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+};
+
+static gushort compose_page6[256] = {
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 0, 
+  211, 0, 0, 0, 0, 0, 0, 0, 0, 388, 389, 390, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 212, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 213, 0, 0, 214, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+};
+
+static gushort compose_page9[256] = {
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 215, 0, 0, 0, 0, 0, 0, 0, 216, 
+  0, 0, 217, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 391, 0, 0, 0, 0, 0, 0, 
+  0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 392, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+};
+
+static gushort compose_page11[256] = {
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 393, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 394, 395, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 218, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 396, 0, 0, 0, 0, 0, 
+  0, 0, 102, 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 397, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+};
+
+static gushort compose_page12[256] = {
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 221, 0, 0, 398, 0, 0, 0, 
+  103, 0, 0, 0, 222, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 399, 400, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+};
+
+static gushort compose_page13[256] = {
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 401, 0, 0, 0, 0, 0, 0, 0, 104, 223, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 402, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 403, 0, 0, 0, 0, 404, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, 0, 
+  224, 0, 0, 405, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+};
+
+static gushort compose_page16[256] = {
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 225, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0
+};
+
+static gushort compose_page30[256] = {
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 226, 227, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 228, 229, 0, 0, 0, 0, 0, 0, 
+  230, 231, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 232, 233, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 234, 235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+};
+
+static gushort compose_page31[256] = {
+  108, 109, 236, 237, 238, 239, 240, 241, 110, 111, 242, 243, 244, 245, 246, 
+  247, 112, 113, 0, 0, 0, 0, 0, 0, 114, 115, 0, 0, 0, 0, 0, 0, 116, 117, 248, 
+  249, 250, 251, 252, 253, 118, 119, 254, 255, 256, 257, 258, 259, 120, 121, 
+  0, 0, 0, 0, 0, 0, 122, 123, 0, 0, 0, 0, 0, 0, 124, 125, 0, 0, 0, 0, 0, 0, 
+  126, 127, 0, 0, 0, 0, 0, 0, 128, 129, 0, 0, 0, 0, 0, 0, 0, 130, 0, 0, 0, 0, 
+  0, 0, 131, 132, 260, 261, 262, 263, 264, 265, 133, 134, 266, 267, 268, 269, 
+  270, 271, 272, 0, 0, 0, 273, 0, 0, 0, 0, 0, 0, 0, 274, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  275, 0, 0, 0, 0, 0, 0, 0, 0, 135, 0, 0, 0, 0, 0, 0, 276, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 277, 0, 0, 0, 0, 0, 0, 0, 
+  136, 0
+};
+
+static gushort compose_page33[256] = {
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 278, 0, 279, 0, 
+  280, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 281, 0, 282, 0, 283, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+};
+
+static gushort compose_page34[256] = {
+  0, 0, 0, 284, 0, 0, 0, 0, 285, 0, 0, 286, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 287, 0, 288, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 289, 0, 0, 0, 0, 0, 0, 290, 0, 291, 
+  0, 0, 292, 0, 0, 0, 0, 293, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 294, 0, 0, 295, 296, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 297, 298, 
+  0, 0, 299, 300, 0, 0, 301, 302, 303, 304, 0, 0, 0, 0, 305, 306, 0, 0, 307, 
+  308, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309, 310, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 311, 0, 0, 0, 0, 0, 312, 313, 0, 314, 0, 0, 0, 0, 0, 0, 315, 
+  316, 317, 318, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0
+};
+
+static gushort compose_page48[256] = {
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 319, 0, 0, 0, 
+  0, 320, 0, 321, 0, 322, 0, 323, 0, 324, 0, 325, 0, 326, 0, 327, 0, 328, 0, 
+  329, 0, 330, 0, 331, 0, 0, 332, 0, 333, 0, 334, 0, 0, 0, 0, 0, 0, 137, 0, 
+  0, 138, 0, 0, 139, 0, 0, 140, 0, 0, 141, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 386, 387, 0, 0, 335, 
+  0, 0, 0, 0, 0, 0, 0, 0, 336, 0, 0, 0, 0, 337, 0, 338, 0, 339, 0, 340, 0, 
+  341, 0, 342, 0, 343, 0, 344, 0, 345, 0, 346, 0, 347, 0, 348, 0, 0, 349, 0, 
+  350, 0, 351, 0, 0, 0, 0, 0, 0, 142, 0, 0, 143, 0, 0, 144, 0, 0, 145, 0, 0, 
+  146, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 352, 353, 
+  354, 355, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 356, 0, 0
+};
+
+static unsigned short *compose_table[256] = {
+  compose_page0,
+  compose_page1,
+  compose_page2,
+  compose_page3,
+  compose_page4,
+  (gushort *) 0,
+  compose_page6,
+  (gushort *) 0,
+  (gushort *) 0,
+  compose_page9,
+  (gushort *) 0,
+  compose_page11,
+  compose_page12,
+  compose_page13,
+  (gushort *) 0,
+  (gushort *) 0,
+  compose_page16,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  compose_page30,
+  compose_page31,
+  (gushort *) 0,
+  compose_page33,
+  compose_page34,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  (gushort *) 0,
+  compose_page48
+};
+
+static gushort compose_first_single[][2] = {
+ { 0x0338, 0x226e },
+ { 0x0338, 0x2260 },
+ { 0x0338, 0x226f },
+ { 0x0307, 0x1e1e },
+ { 0x0302, 0x0134 },
+ { 0x0307, 0x1e1f },
+ { 0x0304, 0x01de },
+ { 0x0301, 0x01fa },
+ { 0x0301, 0x1e08 },
+ { 0x0301, 0x1e2e },
+ { 0x0304, 0x022a },
+ { 0x0301, 0x01fe },
+ { 0x0304, 0x01df },
+ { 0x0301, 0x01fb },
+ { 0x0301, 0x1e09 },
+ { 0x0301, 0x1e2f },
+ { 0x0304, 0x022b },
+ { 0x0301, 0x01ff },
+ { 0x0307, 0x1e64 },
+ { 0x0307, 0x1e65 },
+ { 0x0307, 0x1e66 },
+ { 0x0307, 0x1e67 },
+ { 0x0301, 0x1e78 },
+ { 0x0301, 0x1e79 },
+ { 0x0308, 0x1e7a },
+ { 0x0308, 0x1e7b },
+ { 0x0307, 0x1e9b },
+ { 0x030c, 0x01ee },
+ { 0x0304, 0x01ec },
+ { 0x0304, 0x01ed },
+ { 0x0304, 0x01e0 },
+ { 0x0304, 0x01e1 },
+ { 0x0306, 0x1e1c },
+ { 0x0306, 0x1e1d },
+ { 0x0304, 0x0230 },
+ { 0x0304, 0x0231 },
+ { 0x030c, 0x01ef },
+ { 0x0314, 0x1fec },
+ { 0x0345, 0x1fb4 },
+ { 0x0345, 0x1fc4 },
+ { 0x0345, 0x1ff4 },
+ { 0x0308, 0x0407 },
+ { 0x0301, 0x0403 },
+ { 0x0308, 0x04de },
+ { 0x0301, 0x040c },
+ { 0x0308, 0x04e6 },
+ { 0x0308, 0x04f4 },
+ { 0x0308, 0x04f8 },
+ { 0x0308, 0x04ec },
+ { 0x0301, 0x0453 },
+ { 0x0308, 0x04df },
+ { 0x0301, 0x045c },
+ { 0x0308, 0x04e7 },
+ { 0x0308, 0x04f5 },
+ { 0x0308, 0x04f9 },
+ { 0x0308, 0x04ed },
+ { 0x0308, 0x0457 },
+ { 0x030f, 0x0476 },
+ { 0x030f, 0x0477 },
+ { 0x0308, 0x04da },
+ { 0x0308, 0x04db },
+ { 0x0308, 0x04ea },
+ { 0x0308, 0x04eb },
+ { 0x0654, 0x0624 },
+ { 0x0654, 0x0626 },
+ { 0x0654, 0x06c2 },
+ { 0x0654, 0x06d3 },
+ { 0x0654, 0x06c0 },
+ { 0x093c, 0x0929 },
+ { 0x093c, 0x0931 },
+ { 0x093c, 0x0934 },
+ { 0x0bd7, 0x0b94 },
+ { 0x0bbe, 0x0bcb },
+ { 0x0c56, 0x0c48 },
+ { 0x0cd5, 0x0cc0 },
+ { 0x0cd5, 0x0ccb },
+ { 0x0d3e, 0x0d4b },
+ { 0x0dca, 0x0ddd },
+ { 0x102e, 0x1026 },
+ { 0x0304, 0x1e38 },
+ { 0x0304, 0x1e39 },
+ { 0x0304, 0x1e5c },
+ { 0x0304, 0x1e5d },
+ { 0x0307, 0x1e68 },
+ { 0x0307, 0x1e69 },
+ { 0x0302, 0x1ec6 },
+ { 0x0302, 0x1ec7 },
+ { 0x0302, 0x1ed8 },
+ { 0x0302, 0x1ed9 },
+ { 0x0345, 0x1f82 },
+ { 0x0345, 0x1f83 },
+ { 0x0345, 0x1f84 },
+ { 0x0345, 0x1f85 },
+ { 0x0345, 0x1f86 },
+ { 0x0345, 0x1f87 },
+ { 0x0345, 0x1f8a },
+ { 0x0345, 0x1f8b },
+ { 0x0345, 0x1f8c },
+ { 0x0345, 0x1f8d },
+ { 0x0345, 0x1f8e },
+ { 0x0345, 0x1f8f },
+ { 0x0345, 0x1f92 },
+ { 0x0345, 0x1f93 },
+ { 0x0345, 0x1f94 },
+ { 0x0345, 0x1f95 },
+ { 0x0345, 0x1f96 },
+ { 0x0345, 0x1f97 },
+ { 0x0345, 0x1f9a },
+ { 0x0345, 0x1f9b },
+ { 0x0345, 0x1f9c },
+ { 0x0345, 0x1f9d },
+ { 0x0345, 0x1f9e },
+ { 0x0345, 0x1f9f },
+ { 0x0345, 0x1fa2 },
+ { 0x0345, 0x1fa3 },
+ { 0x0345, 0x1fa4 },
+ { 0x0345, 0x1fa5 },
+ { 0x0345, 0x1fa6 },
+ { 0x0345, 0x1fa7 },
+ { 0x0345, 0x1faa },
+ { 0x0345, 0x1fab },
+ { 0x0345, 0x1fac },
+ { 0x0345, 0x1fad },
+ { 0x0345, 0x1fae },
+ { 0x0345, 0x1faf },
+ { 0x0345, 0x1fb2 },
+ { 0x0345, 0x1fc2 },
+ { 0x0345, 0x1ff2 },
+ { 0x0345, 0x1fb7 },
+ { 0x0345, 0x1fc7 },
+ { 0x0345, 0x1ff7 },
+ { 0x0338, 0x219a },
+ { 0x0338, 0x219b },
+ { 0x0338, 0x21ae },
+ { 0x0338, 0x21cd },
+ { 0x0338, 0x21cf },
+ { 0x0338, 0x21ce },
+ { 0x0338, 0x2204 },
+ { 0x0338, 0x2209 },
+ { 0x0338, 0x220c },
+ { 0x0338, 0x2224 },
+ { 0x0338, 0x2226 },
+ { 0x0338, 0x2241 },
+ { 0x0338, 0x2244 },
+ { 0x0338, 0x2247 },
+ { 0x0338, 0x2249 },
+ { 0x0338, 0x226d },
+ { 0x0338, 0x2262 },
+ { 0x0338, 0x2270 },
+ { 0x0338, 0x2271 },
+ { 0x0338, 0x2274 },
+ { 0x0338, 0x2275 },
+ { 0x0338, 0x2278 },
+ { 0x0338, 0x2279 },
+ { 0x0338, 0x2280 },
+ { 0x0338, 0x2281 },
+ { 0x0338, 0x22e0 },
+ { 0x0338, 0x22e1 },
+ { 0x0338, 0x2284 },
+ { 0x0338, 0x2285 },
+ { 0x0338, 0x2288 },
+ { 0x0338, 0x2289 },
+ { 0x0338, 0x22e2 },
+ { 0x0338, 0x22e3 },
+ { 0x0338, 0x22ac },
+ { 0x0338, 0x22ad },
+ { 0x0338, 0x22ae },
+ { 0x0338, 0x22af },
+ { 0x0338, 0x22ea },
+ { 0x0338, 0x22eb },
+ { 0x0338, 0x22ec },
+ { 0x0338, 0x22ed },
+ { 0x3099, 0x3094 },
+ { 0x3099, 0x304c },
+ { 0x3099, 0x304e },
+ { 0x3099, 0x3050 },
+ { 0x3099, 0x3052 },
+ { 0x3099, 0x3054 },
+ { 0x3099, 0x3056 },
+ { 0x3099, 0x3058 },
+ { 0x3099, 0x305a },
+ { 0x3099, 0x305c },
+ { 0x3099, 0x305e },
+ { 0x3099, 0x3060 },
+ { 0x3099, 0x3062 },
+ { 0x3099, 0x3065 },
+ { 0x3099, 0x3067 },
+ { 0x3099, 0x3069 },
+ { 0x3099, 0x309e },
+ { 0x3099, 0x30f4 },
+ { 0x3099, 0x30ac },
+ { 0x3099, 0x30ae },
+ { 0x3099, 0x30b0 },
+ { 0x3099, 0x30b2 },
+ { 0x3099, 0x30b4 },
+ { 0x3099, 0x30b6 },
+ { 0x3099, 0x30b8 },
+ { 0x3099, 0x30ba },
+ { 0x3099, 0x30bc },
+ { 0x3099, 0x30be },
+ { 0x3099, 0x30c0 },
+ { 0x3099, 0x30c2 },
+ { 0x3099, 0x30c5 },
+ { 0x3099, 0x30c7 },
+ { 0x3099, 0x30c9 },
+ { 0x3099, 0x30f7 },
+ { 0x3099, 0x30f8 },
+ { 0x3099, 0x30f9 },
+ { 0x3099, 0x30fa },
+ { 0x3099, 0x30fe }
+};
+static gushort compose_second_single[][2] = {
+ { 0x0627, 0x0622 },
+ { 0x0627, 0x0623 },
+ { 0x0627, 0x0625 },
+ { 0x09c7, 0x09cb },
+ { 0x09c7, 0x09cc },
+ { 0x0b47, 0x0b4b },
+ { 0x0b47, 0x0b48 },
+ { 0x0b47, 0x0b4c },
+ { 0x0bc6, 0x0bca },
+ { 0x0bc6, 0x0bcc },
+ { 0x0cc6, 0x0cca },
+ { 0x0cc6, 0x0cc7 },
+ { 0x0cc6, 0x0cc8 },
+ { 0x0d46, 0x0d4a },
+ { 0x0d46, 0x0d4c },
+ { 0x0dd9, 0x0dda },
+ { 0x0dd9, 0x0ddc },
+ { 0x0dd9, 0x0dde }
+};
+static gushort compose_array[146][31] = {
+ { 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x0100, 0x0102, 0x0226, 0x00c4, 0x1ea2, 0x00c5,      0, 0x01cd, 0x0200, 0x0202,      0,      0,      0, 0x1ea0,      0, 0x1e00,      0,      0, 0x0104,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0,      0, 0x1e02,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1e04,      0,      0,      0,      0,      0,      0,      0,      0, 0x1e06,      0,      0,      0,      0 },
+ {      0, 0x0106, 0x0108,      0,      0,      0, 0x010a,      0,      0,      0,      0, 0x010c,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x00c7,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0,      0, 0x1e0a,      0,      0,      0,      0, 0x010e,      0,      0,      0,      0,      0, 0x1e0c,      0,      0,      0, 0x1e10,      0, 0x1e12,      0,      0, 0x1e0e,      0,      0,      0,      0 },
+ { 0x00c8, 0x00c9, 0x00ca, 0x1ebc, 0x0112, 0x0114, 0x0116, 0x00cb, 0x1eba,      0,      0, 0x011a, 0x0204, 0x0206,      0,      0,      0, 0x1eb8,      0,      0,      0, 0x0228, 0x0118, 0x1e18,      0, 0x1e1a,      0,      0,      0,      0,      0 },
+ {      0, 0x01f4, 0x011c,      0, 0x1e20, 0x011e, 0x0120,      0,      0,      0,      0, 0x01e6,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x0122,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0, 0x0124,      0,      0,      0, 0x1e22, 0x1e26,      0,      0,      0, 0x021e,      0,      0,      0,      0,      0, 0x1e24,      0,      0,      0, 0x1e28,      0,      0, 0x1e2a,      0,      0,      0,      0,      0,      0 },
+ { 0x00cc, 0x00cd, 0x00ce, 0x0128, 0x012a, 0x012c, 0x0130, 0x00cf, 0x1ec8,      0,      0, 0x01cf, 0x0208, 0x020a,      0,      0,      0, 0x1eca,      0,      0,      0,      0, 0x012e,      0,      0, 0x1e2c,      0,      0,      0,      0,      0 },
+ {      0, 0x1e30,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x01e8,      0,      0,      0,      0,      0, 0x1e32,      0,      0,      0, 0x0136,      0,      0,      0,      0, 0x1e34,      0,      0,      0,      0 },
+ {      0, 0x0139,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x013d,      0,      0,      0,      0,      0, 0x1e36,      0,      0,      0, 0x013b,      0, 0x1e3c,      0,      0, 0x1e3a,      0,      0,      0,      0 },
+ {      0, 0x1e3e,      0,      0,      0,      0, 0x1e40,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1e42,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x01f8, 0x0143,      0, 0x00d1,      0,      0, 0x1e44,      0,      0,      0,      0, 0x0147,      0,      0,      0,      0,      0, 0x1e46,      0,      0,      0, 0x0145,      0, 0x1e4a,      0,      0, 0x1e48,      0,      0,      0,      0 },
+ { 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x014c, 0x014e, 0x022e, 0x00d6, 0x1ece,      0, 0x0150, 0x01d1, 0x020c, 0x020e,      0,      0, 0x01a0, 0x1ecc,      0,      0,      0,      0, 0x01ea,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0, 0x1e54,      0,      0,      0,      0, 0x1e56,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0, 0x0154,      0,      0,      0,      0, 0x1e58,      0,      0,      0,      0, 0x0158, 0x0210, 0x0212,      0,      0,      0, 0x1e5a,      0,      0,      0, 0x0156,      0,      0,      0,      0, 0x1e5e,      0,      0,      0,      0 },
+ {      0, 0x015a, 0x015c,      0,      0,      0, 0x1e60,      0,      0,      0,      0, 0x0160,      0,      0,      0,      0,      0, 0x1e62,      0,      0, 0x0218, 0x015e,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0,      0, 0x1e6a,      0,      0,      0,      0, 0x0164,      0,      0,      0,      0,      0, 0x1e6c,      0,      0, 0x021a, 0x0162,      0, 0x1e70,      0,      0, 0x1e6e,      0,      0,      0,      0 },
+ { 0x00d9, 0x00da, 0x00db, 0x0168, 0x016a, 0x016c,      0, 0x00dc, 0x1ee6, 0x016e, 0x0170, 0x01d3, 0x0214, 0x0216,      0,      0, 0x01af, 0x1ee4, 0x1e72,      0,      0,      0, 0x0172, 0x1e76,      0, 0x1e74,      0,      0,      0,      0,      0 },
+ {      0,      0,      0, 0x1e7c,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1e7e,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1e80, 0x1e82, 0x0174,      0,      0,      0, 0x1e86, 0x1e84,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1e88,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0,      0, 0x1e8a, 0x1e8c,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1ef2, 0x00dd, 0x0176, 0x1ef8, 0x0232,      0, 0x1e8e, 0x0178, 0x1ef6,      0,      0,      0,      0,      0,      0,      0,      0, 0x1ef4,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0, 0x0179, 0x1e90,      0,      0,      0, 0x017b,      0,      0,      0,      0, 0x017d,      0,      0,      0,      0,      0, 0x1e92,      0,      0,      0,      0,      0,      0,      0,      0, 0x1e94,      0,      0,      0,      0 },
+ { 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x0101, 0x0103, 0x0227, 0x00e4, 0x1ea3, 0x00e5,      0, 0x01ce, 0x0201, 0x0203,      0,      0,      0, 0x1ea1,      0, 0x1e01,      0,      0, 0x0105,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0,      0, 0x1e03,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1e05,      0,      0,      0,      0,      0,      0,      0,      0, 0x1e07,      0,      0,      0,      0 },
+ {      0, 0x0107, 0x0109,      0,      0,      0, 0x010b,      0,      0,      0,      0, 0x010d,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x00e7,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0,      0, 0x1e0b,      0,      0,      0,      0, 0x010f,      0,      0,      0,      0,      0, 0x1e0d,      0,      0,      0, 0x1e11,      0, 0x1e13,      0,      0, 0x1e0f,      0,      0,      0,      0 },
+ { 0x00e8, 0x00e9, 0x00ea, 0x1ebd, 0x0113, 0x0115, 0x0117, 0x00eb, 0x1ebb,      0,      0, 0x011b, 0x0205, 0x0207,      0,      0,      0, 0x1eb9,      0,      0,      0, 0x0229, 0x0119, 0x1e19,      0, 0x1e1b,      0,      0,      0,      0,      0 },
+ {      0, 0x01f5, 0x011d,      0, 0x1e21, 0x011f, 0x0121,      0,      0,      0,      0, 0x01e7,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x0123,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0, 0x0125,      0,      0,      0, 0x1e23, 0x1e27,      0,      0,      0, 0x021f,      0,      0,      0,      0,      0, 0x1e25,      0,      0,      0, 0x1e29,      0,      0, 0x1e2b,      0, 0x1e96,      0,      0,      0,      0 },
+ { 0x00ec, 0x00ed, 0x00ee, 0x0129, 0x012b, 0x012d,      0, 0x00ef, 0x1ec9,      0,      0, 0x01d0, 0x0209, 0x020b,      0,      0,      0, 0x1ecb,      0,      0,      0,      0, 0x012f,      0,      0, 0x1e2d,      0,      0,      0,      0,      0 },
+ {      0,      0, 0x0135,      0,      0,      0,      0,      0,      0,      0,      0, 0x01f0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0, 0x1e31,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x01e9,      0,      0,      0,      0,      0, 0x1e33,      0,      0,      0, 0x0137,      0,      0,      0,      0, 0x1e35,      0,      0,      0,      0 },
+ {      0, 0x013a,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x013e,      0,      0,      0,      0,      0, 0x1e37,      0,      0,      0, 0x013c,      0, 0x1e3d,      0,      0, 0x1e3b,      0,      0,      0,      0 },
+ {      0, 0x1e3f,      0,      0,      0,      0, 0x1e41,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1e43,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x01f9, 0x0144,      0, 0x00f1,      0,      0, 0x1e45,      0,      0,      0,      0, 0x0148,      0,      0,      0,      0,      0, 0x1e47,      0,      0,      0, 0x0146,      0, 0x1e4b,      0,      0, 0x1e49,      0,      0,      0,      0 },
+ { 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x014d, 0x014f, 0x022f, 0x00f6, 0x1ecf,      0, 0x0151, 0x01d2, 0x020d, 0x020f,      0,      0, 0x01a1, 0x1ecd,      0,      0,      0,      0, 0x01eb,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0, 0x1e55,      0,      0,      0,      0, 0x1e57,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0, 0x0155,      0,      0,      0,      0, 0x1e59,      0,      0,      0,      0, 0x0159, 0x0211, 0x0213,      0,      0,      0, 0x1e5b,      0,      0,      0, 0x0157,      0,      0,      0,      0, 0x1e5f,      0,      0,      0,      0 },
+ {      0, 0x015b, 0x015d,      0,      0,      0, 0x1e61,      0,      0,      0,      0, 0x0161,      0,      0,      0,      0,      0, 0x1e63,      0,      0, 0x0219, 0x015f,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0,      0, 0x1e6b, 0x1e97,      0,      0,      0, 0x0165,      0,      0,      0,      0,      0, 0x1e6d,      0,      0, 0x021b, 0x0163,      0, 0x1e71,      0,      0, 0x1e6f,      0,      0,      0,      0 },
+ { 0x00f9, 0x00fa, 0x00fb, 0x0169, 0x016b, 0x016d,      0, 0x00fc, 0x1ee7, 0x016f, 0x0171, 0x01d4, 0x0215, 0x0217,      0,      0, 0x01b0, 0x1ee5, 0x1e73,      0,      0,      0, 0x0173, 0x1e77,      0, 0x1e75,      0,      0,      0,      0,      0 },
+ {      0,      0,      0, 0x1e7d,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1e7f,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1e81, 0x1e83, 0x0175,      0,      0,      0, 0x1e87, 0x1e85,      0, 0x1e98,      0,      0,      0,      0,      0,      0,      0, 0x1e89,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0,      0, 0x1e8b, 0x1e8d,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1ef3, 0x00fd, 0x0177, 0x1ef9, 0x0233,      0, 0x1e8f, 0x00ff, 0x1ef7, 0x1e99,      0,      0,      0,      0,      0,      0,      0, 0x1ef5,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0, 0x017a, 0x1e91,      0,      0,      0, 0x017c,      0,      0,      0,      0, 0x017e,      0,      0,      0,      0,      0, 0x1e93,      0,      0,      0,      0,      0,      0,      0,      0, 0x1e95,      0,      0,      0,      0 },
+ { 0x1fed, 0x0385,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1fc1,      0,      0,      0 },
+ { 0x1ea6, 0x1ea4,      0, 0x1eaa,      0,      0,      0,      0, 0x1ea8,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0, 0x01fc,      0,      0, 0x01e2,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1ec0, 0x1ebe,      0, 0x1ec4,      0,      0,      0,      0, 0x1ec2,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1ed2, 0x1ed0,      0, 0x1ed6,      0,      0,      0,      0, 0x1ed4,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0, 0x1e4c,      0,      0, 0x022c,      0,      0, 0x1e4e,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x01db, 0x01d7,      0,      0, 0x01d5,      0,      0,      0,      0,      0,      0, 0x01d9,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1ea7, 0x1ea5,      0, 0x1eab,      0,      0,      0,      0, 0x1ea9,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0, 0x01fd,      0,      0, 0x01e3,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1ec1, 0x1ebf,      0, 0x1ec5,      0,      0,      0,      0, 0x1ec3,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1ed3, 0x1ed1,      0, 0x1ed7,      0,      0,      0,      0, 0x1ed5,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0, 0x1e4d,      0,      0, 0x022d,      0,      0, 0x1e4f,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x01dc, 0x01d8,      0,      0, 0x01d6,      0,      0,      0,      0,      0,      0, 0x01da,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1eb0, 0x1eae,      0, 0x1eb4,      0,      0,      0,      0, 0x1eb2,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1eb1, 0x1eaf,      0, 0x1eb5,      0,      0,      0,      0, 0x1eb3,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1e14, 0x1e16,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1e15, 0x1e17,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1e50, 0x1e52,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1e51, 0x1e53,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1edc, 0x1eda,      0, 0x1ee0,      0,      0,      0,      0, 0x1ede,      0,      0,      0,      0,      0,      0,      0,      0, 0x1ee2,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1edd, 0x1edb,      0, 0x1ee1,      0,      0,      0,      0, 0x1edf,      0,      0,      0,      0,      0,      0,      0,      0, 0x1ee3,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1eea, 0x1ee8,      0, 0x1eee,      0,      0,      0,      0, 0x1eec,      0,      0,      0,      0,      0,      0,      0,      0, 0x1ef0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1eeb, 0x1ee9,      0, 0x1eef,      0,      0,      0,      0, 0x1eed,      0,      0,      0,      0,      0,      0,      0,      0, 0x1ef1,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1fba, 0x0386,      0,      0, 0x1fb9, 0x1fb8,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f08, 0x1f09,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1fbc,      0,      0 },
+ { 0x1fc8, 0x0388,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f18, 0x1f19,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1fca, 0x0389,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f28, 0x1f29,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1fcc,      0,      0 },
+ { 0x1fda, 0x038a,      0,      0, 0x1fd9, 0x1fd8,      0, 0x03aa,      0,      0,      0,      0,      0,      0, 0x1f38, 0x1f39,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1ff8, 0x038c,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f48, 0x1f49,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1fea, 0x038e,      0,      0, 0x1fe9, 0x1fe8,      0, 0x03ab,      0,      0,      0,      0,      0,      0,      0, 0x1f59,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1ffa, 0x038f,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f68, 0x1f69,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1ffc,      0,      0 },
+ { 0x1f70, 0x03ac,      0,      0, 0x1fb1, 0x1fb0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f00, 0x1f01,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1fb6, 0x1fb3,      0,      0 },
+ { 0x1f72, 0x03ad,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f10, 0x1f11,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1f74, 0x03ae,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f20, 0x1f21,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1fc6, 0x1fc3,      0,      0 },
+ { 0x1f76, 0x03af,      0,      0, 0x1fd1, 0x1fd0,      0, 0x03ca,      0,      0,      0,      0,      0,      0, 0x1f30, 0x1f31,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1fd6,      0,      0,      0 },
+ { 0x1f78, 0x03cc,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f40, 0x1f41,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1fe4, 0x1fe5,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1f7a, 0x03cd,      0,      0, 0x1fe1, 0x1fe0,      0, 0x03cb,      0,      0,      0,      0,      0,      0, 0x1f50, 0x1f51,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1fe6,      0,      0,      0 },
+ { 0x1f7c, 0x03ce,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f60, 0x1f61,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1ff6, 0x1ff3,      0,      0 },
+ { 0x1fd2, 0x0390,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1fd7,      0,      0,      0 },
+ { 0x1fe2, 0x03b0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1fe7,      0,      0,      0 },
+ {      0, 0x03d3,      0,      0,      0,      0,      0, 0x03d4,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0, 0x04d0,      0, 0x04d2,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x0400,      0,      0,      0,      0, 0x04d6,      0, 0x0401,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0, 0x04c1,      0, 0x04dc,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x040d,      0,      0,      0, 0x04e2, 0x0419,      0, 0x04e4,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0, 0x04ee, 0x040e,      0, 0x04f0,      0,      0, 0x04f2,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0, 0x04d1,      0, 0x04d3,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x0450,      0,      0,      0,      0, 0x04d7,      0, 0x0451,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0, 0x04c2,      0, 0x04dd,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x045d,      0,      0,      0, 0x04e3, 0x0439,      0, 0x04e5,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0, 0x04ef, 0x045e,      0, 0x04f1,      0,      0, 0x04f3,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0, 0x1eac,      0,      0, 0x1eb6,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ {      0,      0, 0x1ead,      0,      0, 0x1eb7,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1f02, 0x1f04,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f06, 0x1f80,      0,      0 },
+ { 0x1f03, 0x1f05,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f07, 0x1f81,      0,      0 },
+ { 0x1f0a, 0x1f0c,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f0e, 0x1f88,      0,      0 },
+ { 0x1f0b, 0x1f0d,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f0f, 0x1f89,      0,      0 },
+ { 0x1f12, 0x1f14,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1f13, 0x1f15,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1f1a, 0x1f1c,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1f1b, 0x1f1d,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1f22, 0x1f24,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f26, 0x1f90,      0,      0 },
+ { 0x1f23, 0x1f25,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f27, 0x1f91,      0,      0 },
+ { 0x1f2a, 0x1f2c,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f2e, 0x1f98,      0,      0 },
+ { 0x1f2b, 0x1f2d,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f2f, 0x1f99,      0,      0 },
+ { 0x1f32, 0x1f34,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f36,      0,      0,      0 },
+ { 0x1f33, 0x1f35,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f37,      0,      0,      0 },
+ { 0x1f3a, 0x1f3c,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f3e,      0,      0,      0 },
+ { 0x1f3b, 0x1f3d,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f3f,      0,      0,      0 },
+ { 0x1f42, 0x1f44,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1f43, 0x1f45,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1f4a, 0x1f4c,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1f4b, 0x1f4d,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0 },
+ { 0x1f52, 0x1f54,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f56,      0,      0,      0 },
+ { 0x1f53, 0x1f55,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f57,      0,      0,      0 },
+ { 0x1f5b, 0x1f5d,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f5f,      0,      0,      0 },
+ { 0x1f62, 0x1f64,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f66, 0x1fa0,      0,      0 },
+ { 0x1f63, 0x1f65,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f67, 0x1fa1,      0,      0 },
+ { 0x1f6a, 0x1f6c,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f6e, 0x1fa8,      0,      0 },
+ { 0x1f6b, 0x1f6d,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1f6f, 0x1fa9,      0,      0 },
+ { 0x1fcd, 0x1fce,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1fcf,      0,      0,      0 },
+ { 0x1fdd, 0x1fde,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x1fdf,      0,      0,      0 },
+ {      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x3070, 0x3071 },
+ {      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x3073, 0x3074 },
+ {      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x3076, 0x3077 },
+ {      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x3079, 0x307a },
+ {      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x307c, 0x307d },
+ {      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x30d0, 0x30d1 },
+ {      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x30d3, 0x30d4 },
+ {      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x30d6, 0x30d7 },
+ {      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x30d9, 0x30da },
+ {      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0,      0, 0x30dc, 0x30dd }
+};
diff --git a/graf2d/win32gdk/gdk/src/glib/gunidecomp.c b/graf2d/win32gdk/gdk/src/glib/gunidecomp.c
new file mode 100644
index 00000000000..47590eeee5a
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gunidecomp.c
@@ -0,0 +1,413 @@
+/* decomp.c - Character decomposition.
+ *
+ *  Copyright (C) 1999, 2000 Tom Tromey
+ *  Copyright 2000 Red Hat, Inc.
+ *
+ * The Gnome Library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * The Gnome Library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with the Gnome Library; see the file COPYING.LIB.  If not,
+ * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ *   Boston, MA 02111-1307, USA.
+ */
+
+#include "glib.h"
+#include "gunidecomp.h"
+#include "gunicomp.h"
+
+#include <config.h>
+
+#include <stdlib.h>
+
+/* We cheat a bit and cast type values to (char *).  We detect these
+   using the &0xff trick.  */
+#define CC(Page, Char) \
+  ((((GPOINTER_TO_INT(combining_class_table[Page])) & 0xff) \
+    == GPOINTER_TO_INT(combining_class_table[Page])) \
+   ? GPOINTER_TO_INT(combining_class_table[Page]) \
+   : (combining_class_table[Page][Char]))
+
+#define COMBINING_CLASS(Char) \
+     (((Char) > (G_UNICODE_LAST_CHAR)) ? 0 : CC((Char) >> 8, (Char) & 0xff))
+
+/**
+ * g_unicode_canonical_ordering:
+ * @string: a UCS-4 encoded string.
+ * @len: the maximum length of @string to use.
+ *
+ * Computes the canonical ordering of a string in-place.  
+ * This rearranges decomposed characters in the string 
+ * according to their combining classes.  See the Unicode 
+ * manual for more information. 
+ **/
+void
+g_unicode_canonical_ordering (gunichar *string,
+			      gsize     len)
+{
+  gsize i;
+  int swap = 1;
+
+  while (swap)
+    {
+      int last;
+      swap = 0;
+      last = COMBINING_CLASS (string[0]);
+      for (i = 0; i < len - 1; ++i)
+	{
+	  int next = COMBINING_CLASS (string[i + 1]);
+	  if (next != 0 && last > next)
+	    {
+	      gsize j;
+	      /* Percolate item leftward through string.  */
+	      for (j = i; j > 0; --j)
+		{
+		  gunichar t;
+		  if (COMBINING_CLASS (string[j]) <= next)
+		    break;
+		  t = string[j + 1];
+		  string[j + 1] = string[j];
+		  string[j] = t;
+		  swap = 1;
+		}
+	      /* We're re-entering the loop looking at the old
+		 character again.  */
+	      next = last;
+	    }
+	  last = next;
+	}
+    }
+}
+
+static guchar *
+find_decomposition (gunichar ch,
+		    gboolean compat)
+{
+  int start = 0;
+  int end = G_N_ELEMENTS (decomp_table);
+  
+  if (ch >= decomp_table[start].ch &&
+      ch <= decomp_table[end - 1].ch)
+    {
+      while (TRUE)
+	{
+	  int half = (start + end) / 2;
+	  if (ch == decomp_table[half].ch)
+	    {
+	      int offset;
+
+	      if (compat)
+		{
+		  offset = decomp_table[half].compat_offset;
+		  if (offset == 0xff)
+		    offset = decomp_table[half].canon_offset;
+		}
+	      else
+		{
+		  offset = decomp_table[half].canon_offset;
+		  if (offset == 0xff)
+		    return NULL;
+		}
+	      
+	      return decomp_table[half].expansion + offset;
+	    }
+	  else if (half == start)
+	    break;
+	  else if (ch > decomp_table[half].ch)
+	    start = half;
+	  else
+	    end = half;
+	}
+    }
+
+  return NULL;
+}
+
+/**
+ * g_unicode_canonical_decomposition:
+ * @ch: a Unicode character.
+ * @result_len: location to store the length of the return value.
+ *
+ * Computes the canonical decomposition of a Unicode character.  
+ * 
+ * Return value: a newly allocated string of Unicode characters.
+ *   @result_len is set to the resulting length of the string.
+ **/
+gunichar *
+g_unicode_canonical_decomposition (gunichar ch,
+				   gsize   *result_len)
+{
+  guchar *decomp = find_decomposition (ch, FALSE);
+  gunichar *r;
+
+  if (decomp)
+    {
+      /* Found it.  */
+      int i, len;
+      /* We store as a double-nul terminated string.  */
+      for (len = 0; (decomp[len] || decomp[len + 1]);
+	   len += 2)
+	;
+      
+      /* We've counted twice as many bytes as there are
+	 characters.  */
+      *result_len = len / 2;
+      r = malloc (len / 2 * sizeof (gunichar));
+      
+      for (i = 0; i < len; i += 2)
+	{
+	  r[i / 2] = (decomp[i] << 8 | decomp[i + 1]);
+	}
+    }
+  else
+    {
+      /* Not in our table.  */
+      r = malloc (sizeof (gunichar));
+      *r = ch;
+      *result_len = 1;
+    }
+
+  /* Supposedly following the Unicode 2.1.9 table means that the
+     decompositions come out in canonical order.  I haven't tested
+     this, but we rely on it here.  */
+  return r;
+}
+
+#define CI(Page, Char) \
+  ((((GPOINTER_TO_INT(compose_table[Page])) & 0xff) \
+    == GPOINTER_TO_INT(compose_table[Page])) \
+   ? GPOINTER_TO_INT(compose_table[Page]) \
+   : (compose_table[Page][Char]))
+
+#define COMPOSE_INDEX(Char) \
+     (((Char) > (G_UNICODE_LAST_CHAR)) ? 0 : CI((Char) >> 8, (Char) & 0xff))
+
+gboolean
+combine (gunichar  a,
+	 gunichar  b,
+	 gunichar *result)
+{
+  gushort index_a, index_b;
+
+  index_a = COMPOSE_INDEX(a);
+  if (index_a >= COMPOSE_FIRST_SINGLE_START && index_a < COMPOSE_SECOND_START)
+    {
+      if (b == compose_first_single[index_a - COMPOSE_FIRST_SINGLE_START][0])
+	{
+	  *result = compose_first_single[index_a - COMPOSE_FIRST_SINGLE_START][1];
+	  return TRUE;
+	}
+      else
+	return FALSE;
+    }
+  
+  index_b = COMPOSE_INDEX(b);
+  if (index_b >= COMPOSE_SECOND_SINGLE_START)
+    {
+      if (a == compose_second_single[index_b - COMPOSE_SECOND_SINGLE_START][0])
+	{
+	  *result = compose_second_single[index_b - COMPOSE_SECOND_SINGLE_START][1];
+	  return TRUE;
+	}
+      else
+	return FALSE;
+    }
+
+  if (index_a >= COMPOSE_FIRST_START && index_a < COMPOSE_FIRST_SINGLE_START &&
+      index_b >= COMPOSE_SECOND_START && index_a < COMPOSE_SECOND_SINGLE_START)
+    {
+      gunichar res = compose_array[index_a - COMPOSE_FIRST_START][index_b - COMPOSE_SECOND_START];
+
+      if (res)
+	{
+	  *result = res;
+	  return TRUE;
+	}
+    }
+
+  return FALSE;
+}
+
+gunichar *
+_g_utf8_normalize_wc (const gchar    *str,
+		      gssize          max_len,
+		      GNormalizeMode  mode)
+{
+  gsize n_wc;
+  gunichar *wc_buffer;
+  const char *p;
+  gsize last_start;
+  gboolean do_compat = (mode == G_NORMALIZE_NFKC ||
+			mode == G_NORMALIZE_NFKD);
+  gboolean do_compose = (mode == G_NORMALIZE_NFC ||
+			 mode == G_NORMALIZE_NFKC);
+
+  n_wc = 0;
+  p = str;
+  while ((max_len < 0 || p < str + max_len) && *p)
+    {
+      gunichar wc = g_utf8_get_char (p);
+
+      guchar *decomp = find_decomposition (wc, do_compat);
+
+      if (decomp)
+	{
+	  int len;
+	  /* We store as a double-nul terminated string.  */
+	  for (len = 0; (decomp[len] || decomp[len + 1]);
+	       len += 2)
+	    ;
+	  n_wc += len / 2;
+	}
+      else
+	n_wc++;
+
+      p = g_utf8_next_char (p);
+    }
+
+  wc_buffer = g_new (gunichar, n_wc + 1);
+
+  last_start = 0;
+  n_wc = 0;
+  p = str;
+  while ((max_len < 0 || p < str + max_len) && *p)
+    {
+      gunichar wc = g_utf8_get_char (p);
+      guchar *decomp;
+      int cc;
+      gsize old_n_wc = n_wc;
+	  
+      decomp = find_decomposition (wc, do_compat);
+	  
+      if (decomp)
+	{
+	  int len;
+	  /* We store as a double-nul terminated string.  */
+	  for (len = 0; (decomp[len] || decomp[len + 1]);
+	       len += 2)
+	    wc_buffer[n_wc++] = (decomp[len] << 8 | decomp[len + 1]);
+	}
+      else
+	wc_buffer[n_wc++] = wc;
+
+      if (n_wc > 0)
+	{
+	  cc = COMBINING_CLASS (wc_buffer[old_n_wc]);
+
+	  if (cc == 0)
+	    {
+	      g_unicode_canonical_ordering (wc_buffer + last_start, n_wc - last_start);
+	      last_start = old_n_wc;
+	    }
+	}
+      
+      p = g_utf8_next_char (p);
+    }
+
+  if (n_wc > 0)
+    {
+      g_unicode_canonical_ordering (wc_buffer + last_start, n_wc - last_start);
+      last_start = n_wc;
+    }
+	  
+  wc_buffer[n_wc] = 0;
+
+  /* All decomposed and reordered */ 
+
+
+  if (do_compose && n_wc > 0)
+    {
+      gsize i, j;
+      int last_cc = 0;
+      last_start = 0;
+      
+      for (i = 0; i < n_wc; i++)
+	{
+	  int cc = COMBINING_CLASS (wc_buffer[i]);
+
+	  if (i > 0 &&
+	      (last_cc == 0 || last_cc != cc) &&
+	      combine (wc_buffer[last_start], wc_buffer[i],
+		       &wc_buffer[last_start]))
+	    {
+	      for (j = i + 1; j < n_wc; j++)
+		wc_buffer[j-1] = wc_buffer[j];
+	      n_wc--;
+	      i--;
+	      
+	      if (i == last_start)
+		last_cc = 0;
+	      else
+		last_cc = COMBINING_CLASS (wc_buffer[i-1]);
+	      
+	      continue;
+	    }
+
+	  if (cc == 0)
+	    last_start = i;
+
+	  last_cc = cc;
+	}
+    }
+
+  wc_buffer[n_wc] = 0;
+
+  return wc_buffer;
+}
+
+/**
+ * g_utf8_normalize:
+ * @str: a UTF-8 encoded string.
+ * @len: length of @str, in bytes, or -1 if @str is nul-terminated.
+ * @mode: the type of normalization to perform.
+ * 
+ * Converts a string into canonical form, standardizing
+ * such issues as whether a character with an accent
+ * is represented as a base character and combining
+ * accent or as a single precomposed character. You
+ * should generally call g_utf8_normalize() before
+ * comparing two Unicode strings.
+ *
+ * The normalization mode %G_NORMALIZE_DEFAULT only
+ * standardizes differences that do not affect the
+ * text content, such as the above-mentioned accent
+ * representation. %G_NORMALIZE_ALL also standardizes
+ * the "compatibility" characters in Unicode, such
+ * as SUPERSCRIPT THREE to the standard forms
+ * (in this case DIGIT THREE). Formatting information
+ * may be lost but for most text operations such
+ * characters should be considered the same.
+ * For example, g_utf8_collate() normalizes
+ * with %G_NORMALIZE_ALL as its first step.
+ *
+ * %G_NORMALIZE_DEFAULT_COMPOSE and %G_NORMALIZE_ALL_COMPOSE
+ * are like %G_NORMALIZE_DEFAULT and %G_NORMALIZE_ALL,
+ * but returned a result with composed forms rather
+ * than a maximally decomposed form. This is often
+ * useful if you intend to convert the string to
+ * a legacy encoding or pass it to a system with
+ * less capable Unicode handling.
+ * 
+ * Return value: a newly allocated string, that is the 
+ *   normalized form of @str.
+ **/
+gchar *
+g_utf8_normalize (const gchar    *str,
+		  gssize          len,
+		  GNormalizeMode  mode)
+{
+  gunichar *result_wc = _g_utf8_normalize_wc (str, len, mode);
+  gchar *result;
+  
+  result = g_ucs4_to_utf8 (result_wc, -1, NULL, NULL, NULL);
+  g_free (result_wc);
+
+  return result;
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gunidecomp.h b/graf2d/win32gdk/gdk/src/glib/gunidecomp.h
index b4977597918..983ee553fdf 100644
--- a/graf2d/win32gdk/gdk/src/glib/gunidecomp.h
+++ b/graf2d/win32gdk/gdk/src/glib/gunidecomp.h
@@ -536,1322 +536,3498 @@ static unsigned char *combining_class_table[256] = {
 typedef struct
 {
   unsigned short ch;
+  unsigned char canon_offset;
+  unsigned char compat_offset;
   unsigned char *expansion;
 } decomposition;
 
 static decomposition decomp_table[] =
 {
-  { 0x00c0, "\x00\x41\x03\x00\0" },
-  { 0x00c1, "\x00\x41\x03\x01\0" },
-  { 0x00c2, "\x00\x41\x03\x02\0" },
-  { 0x00c3, "\x00\x41\x03\x03\0" },
-  { 0x00c4, "\x00\x41\x03\x08\0" },
-  { 0x00c5, "\x00\x41\x03\x0a\0" },
-  { 0x00c7, "\x00\x43\x03\x27\0" },
-  { 0x00c8, "\x00\x45\x03\x00\0" },
-  { 0x00c9, "\x00\x45\x03\x01\0" },
-  { 0x00ca, "\x00\x45\x03\x02\0" },
-  { 0x00cb, "\x00\x45\x03\x08\0" },
-  { 0x00cc, "\x00\x49\x03\x00\0" },
-  { 0x00cd, "\x00\x49\x03\x01\0" },
-  { 0x00ce, "\x00\x49\x03\x02\0" },
-  { 0x00cf, "\x00\x49\x03\x08\0" },
-  { 0x00d1, "\x00\x4e\x03\x03\0" },
-  { 0x00d2, "\x00\x4f\x03\x00\0" },
-  { 0x00d3, "\x00\x4f\x03\x01\0" },
-  { 0x00d4, "\x00\x4f\x03\x02\0" },
-  { 0x00d5, "\x00\x4f\x03\x03\0" },
-  { 0x00d6, "\x00\x4f\x03\x08\0" },
-  { 0x00d9, "\x00\x55\x03\x00\0" },
-  { 0x00da, "\x00\x55\x03\x01\0" },
-  { 0x00db, "\x00\x55\x03\x02\0" },
-  { 0x00dc, "\x00\x55\x03\x08\0" },
-  { 0x00dd, "\x00\x59\x03\x01\0" },
-  { 0x00e0, "\x00\x61\x03\x00\0" },
-  { 0x00e1, "\x00\x61\x03\x01\0" },
-  { 0x00e2, "\x00\x61\x03\x02\0" },
-  { 0x00e3, "\x00\x61\x03\x03\0" },
-  { 0x00e4, "\x00\x61\x03\x08\0" },
-  { 0x00e5, "\x00\x61\x03\x0a\0" },
-  { 0x00e7, "\x00\x63\x03\x27\0" },
-  { 0x00e8, "\x00\x65\x03\x00\0" },
-  { 0x00e9, "\x00\x65\x03\x01\0" },
-  { 0x00ea, "\x00\x65\x03\x02\0" },
-  { 0x00eb, "\x00\x65\x03\x08\0" },
-  { 0x00ec, "\x00\x69\x03\x00\0" },
-  { 0x00ed, "\x00\x69\x03\x01\0" },
-  { 0x00ee, "\x00\x69\x03\x02\0" },
-  { 0x00ef, "\x00\x69\x03\x08\0" },
-  { 0x00f1, "\x00\x6e\x03\x03\0" },
-  { 0x00f2, "\x00\x6f\x03\x00\0" },
-  { 0x00f3, "\x00\x6f\x03\x01\0" },
-  { 0x00f4, "\x00\x6f\x03\x02\0" },
-  { 0x00f5, "\x00\x6f\x03\x03\0" },
-  { 0x00f6, "\x00\x6f\x03\x08\0" },
-  { 0x00f9, "\x00\x75\x03\x00\0" },
-  { 0x00fa, "\x00\x75\x03\x01\0" },
-  { 0x00fb, "\x00\x75\x03\x02\0" },
-  { 0x00fc, "\x00\x75\x03\x08\0" },
-  { 0x00fd, "\x00\x79\x03\x01\0" },
-  { 0x00ff, "\x00\x79\x03\x08\0" },
-  { 0x0100, "\x00\x41\x03\x04\0" },
-  { 0x0101, "\x00\x61\x03\x04\0" },
-  { 0x0102, "\x00\x41\x03\x06\0" },
-  { 0x0103, "\x00\x61\x03\x06\0" },
-  { 0x0104, "\x00\x41\x03\x28\0" },
-  { 0x0105, "\x00\x61\x03\x28\0" },
-  { 0x0106, "\x00\x43\x03\x01\0" },
-  { 0x0107, "\x00\x63\x03\x01\0" },
-  { 0x0108, "\x00\x43\x03\x02\0" },
-  { 0x0109, "\x00\x63\x03\x02\0" },
-  { 0x010a, "\x00\x43\x03\x07\0" },
-  { 0x010b, "\x00\x63\x03\x07\0" },
-  { 0x010c, "\x00\x43\x03\x0c\0" },
-  { 0x010d, "\x00\x63\x03\x0c\0" },
-  { 0x010e, "\x00\x44\x03\x0c\0" },
-  { 0x010f, "\x00\x64\x03\x0c\0" },
-  { 0x0112, "\x00\x45\x03\x04\0" },
-  { 0x0113, "\x00\x65\x03\x04\0" },
-  { 0x0114, "\x00\x45\x03\x06\0" },
-  { 0x0115, "\x00\x65\x03\x06\0" },
-  { 0x0116, "\x00\x45\x03\x07\0" },
-  { 0x0117, "\x00\x65\x03\x07\0" },
-  { 0x0118, "\x00\x45\x03\x28\0" },
-  { 0x0119, "\x00\x65\x03\x28\0" },
-  { 0x011a, "\x00\x45\x03\x0c\0" },
-  { 0x011b, "\x00\x65\x03\x0c\0" },
-  { 0x011c, "\x00\x47\x03\x02\0" },
-  { 0x011d, "\x00\x67\x03\x02\0" },
-  { 0x011e, "\x00\x47\x03\x06\0" },
-  { 0x011f, "\x00\x67\x03\x06\0" },
-  { 0x0120, "\x00\x47\x03\x07\0" },
-  { 0x0121, "\x00\x67\x03\x07\0" },
-  { 0x0122, "\x00\x47\x03\x27\0" },
-  { 0x0123, "\x00\x67\x03\x27\0" },
-  { 0x0124, "\x00\x48\x03\x02\0" },
-  { 0x0125, "\x00\x68\x03\x02\0" },
-  { 0x0128, "\x00\x49\x03\x03\0" },
-  { 0x0129, "\x00\x69\x03\x03\0" },
-  { 0x012a, "\x00\x49\x03\x04\0" },
-  { 0x012b, "\x00\x69\x03\x04\0" },
-  { 0x012c, "\x00\x49\x03\x06\0" },
-  { 0x012d, "\x00\x69\x03\x06\0" },
-  { 0x012e, "\x00\x49\x03\x28\0" },
-  { 0x012f, "\x00\x69\x03\x28\0" },
-  { 0x0130, "\x00\x49\x03\x07\0" },
-  { 0x0134, "\x00\x4a\x03\x02\0" },
-  { 0x0135, "\x00\x6a\x03\x02\0" },
-  { 0x0136, "\x00\x4b\x03\x27\0" },
-  { 0x0137, "\x00\x6b\x03\x27\0" },
-  { 0x0139, "\x00\x4c\x03\x01\0" },
-  { 0x013a, "\x00\x6c\x03\x01\0" },
-  { 0x013b, "\x00\x4c\x03\x27\0" },
-  { 0x013c, "\x00\x6c\x03\x27\0" },
-  { 0x013d, "\x00\x4c\x03\x0c\0" },
-  { 0x013e, "\x00\x6c\x03\x0c\0" },
-  { 0x0143, "\x00\x4e\x03\x01\0" },
-  { 0x0144, "\x00\x6e\x03\x01\0" },
-  { 0x0145, "\x00\x4e\x03\x27\0" },
-  { 0x0146, "\x00\x6e\x03\x27\0" },
-  { 0x0147, "\x00\x4e\x03\x0c\0" },
-  { 0x0148, "\x00\x6e\x03\x0c\0" },
-  { 0x014c, "\x00\x4f\x03\x04\0" },
-  { 0x014d, "\x00\x6f\x03\x04\0" },
-  { 0x014e, "\x00\x4f\x03\x06\0" },
-  { 0x014f, "\x00\x6f\x03\x06\0" },
-  { 0x0150, "\x00\x4f\x03\x0b\0" },
-  { 0x0151, "\x00\x6f\x03\x0b\0" },
-  { 0x0154, "\x00\x52\x03\x01\0" },
-  { 0x0155, "\x00\x72\x03\x01\0" },
-  { 0x0156, "\x00\x52\x03\x27\0" },
-  { 0x0157, "\x00\x72\x03\x27\0" },
-  { 0x0158, "\x00\x52\x03\x0c\0" },
-  { 0x0159, "\x00\x72\x03\x0c\0" },
-  { 0x015a, "\x00\x53\x03\x01\0" },
-  { 0x015b, "\x00\x73\x03\x01\0" },
-  { 0x015c, "\x00\x53\x03\x02\0" },
-  { 0x015d, "\x00\x73\x03\x02\0" },
-  { 0x015e, "\x00\x53\x03\x27\0" },
-  { 0x015f, "\x00\x73\x03\x27\0" },
-  { 0x0160, "\x00\x53\x03\x0c\0" },
-  { 0x0161, "\x00\x73\x03\x0c\0" },
-  { 0x0162, "\x00\x54\x03\x27\0" },
-  { 0x0163, "\x00\x74\x03\x27\0" },
-  { 0x0164, "\x00\x54\x03\x0c\0" },
-  { 0x0165, "\x00\x74\x03\x0c\0" },
-  { 0x0168, "\x00\x55\x03\x03\0" },
-  { 0x0169, "\x00\x75\x03\x03\0" },
-  { 0x016a, "\x00\x55\x03\x04\0" },
-  { 0x016b, "\x00\x75\x03\x04\0" },
-  { 0x016c, "\x00\x55\x03\x06\0" },
-  { 0x016d, "\x00\x75\x03\x06\0" },
-  { 0x016e, "\x00\x55\x03\x0a\0" },
-  { 0x016f, "\x00\x75\x03\x0a\0" },
-  { 0x0170, "\x00\x55\x03\x0b\0" },
-  { 0x0171, "\x00\x75\x03\x0b\0" },
-  { 0x0172, "\x00\x55\x03\x28\0" },
-  { 0x0173, "\x00\x75\x03\x28\0" },
-  { 0x0174, "\x00\x57\x03\x02\0" },
-  { 0x0175, "\x00\x77\x03\x02\0" },
-  { 0x0176, "\x00\x59\x03\x02\0" },
-  { 0x0177, "\x00\x79\x03\x02\0" },
-  { 0x0178, "\x00\x59\x03\x08\0" },
-  { 0x0179, "\x00\x5a\x03\x01\0" },
-  { 0x017a, "\x00\x7a\x03\x01\0" },
-  { 0x017b, "\x00\x5a\x03\x07\0" },
-  { 0x017c, "\x00\x7a\x03\x07\0" },
-  { 0x017d, "\x00\x5a\x03\x0c\0" },
-  { 0x017e, "\x00\x7a\x03\x0c\0" },
-  { 0x01a0, "\x00\x4f\x03\x1b\0" },
-  { 0x01a1, "\x00\x6f\x03\x1b\0" },
-  { 0x01af, "\x00\x55\x03\x1b\0" },
-  { 0x01b0, "\x00\x75\x03\x1b\0" },
-  { 0x01cd, "\x00\x41\x03\x0c\0" },
-  { 0x01ce, "\x00\x61\x03\x0c\0" },
-  { 0x01cf, "\x00\x49\x03\x0c\0" },
-  { 0x01d0, "\x00\x69\x03\x0c\0" },
-  { 0x01d1, "\x00\x4f\x03\x0c\0" },
-  { 0x01d2, "\x00\x6f\x03\x0c\0" },
-  { 0x01d3, "\x00\x55\x03\x0c\0" },
-  { 0x01d4, "\x00\x75\x03\x0c\0" },
-  { 0x01d5, "\x00\x55\x03\x08\x03\x04\0" },
-  { 0x01d6, "\x00\x75\x03\x08\x03\x04\0" },
-  { 0x01d7, "\x00\x55\x03\x08\x03\x01\0" },
-  { 0x01d8, "\x00\x75\x03\x08\x03\x01\0" },
-  { 0x01d9, "\x00\x55\x03\x08\x03\x0c\0" },
-  { 0x01da, "\x00\x75\x03\x08\x03\x0c\0" },
-  { 0x01db, "\x00\x55\x03\x08\x03\x00\0" },
-  { 0x01dc, "\x00\x75\x03\x08\x03\x00\0" },
-  { 0x01de, "\x00\x41\x03\x08\x03\x04\0" },
-  { 0x01df, "\x00\x61\x03\x08\x03\x04\0" },
-  { 0x01e0, "\x00\x41\x03\x07\x03\x04\0" },
-  { 0x01e1, "\x00\x61\x03\x07\x03\x04\0" },
-  { 0x01e2, "\x00\xc6\x03\x04\0" },
-  { 0x01e3, "\x00\xe6\x03\x04\0" },
-  { 0x01e6, "\x00\x47\x03\x0c\0" },
-  { 0x01e7, "\x00\x67\x03\x0c\0" },
-  { 0x01e8, "\x00\x4b\x03\x0c\0" },
-  { 0x01e9, "\x00\x6b\x03\x0c\0" },
-  { 0x01ea, "\x00\x4f\x03\x28\0" },
-  { 0x01eb, "\x00\x6f\x03\x28\0" },
-  { 0x01ec, "\x00\x4f\x03\x28\x03\x04\0" },
-  { 0x01ed, "\x00\x6f\x03\x28\x03\x04\0" },
-  { 0x01ee, "\x01\xb7\x03\x0c\0" },
-  { 0x01ef, "\x02\x92\x03\x0c\0" },
-  { 0x01f0, "\x00\x6a\x03\x0c\0" },
-  { 0x01f4, "\x00\x47\x03\x01\0" },
-  { 0x01f5, "\x00\x67\x03\x01\0" },
-  { 0x01f8, "\x00\x4e\x03\x00\0" },
-  { 0x01f9, "\x00\x6e\x03\x00\0" },
-  { 0x01fa, "\x00\x41\x03\x0a\x03\x01\0" },
-  { 0x01fb, "\x00\x61\x03\x0a\x03\x01\0" },
-  { 0x01fc, "\x00\xc6\x03\x01\0" },
-  { 0x01fd, "\x00\xe6\x03\x01\0" },
-  { 0x01fe, "\x00\xd8\x03\x01\0" },
-  { 0x01ff, "\x00\xf8\x03\x01\0" },
-  { 0x0200, "\x00\x41\x03\x0f\0" },
-  { 0x0201, "\x00\x61\x03\x0f\0" },
-  { 0x0202, "\x00\x41\x03\x11\0" },
-  { 0x0203, "\x00\x61\x03\x11\0" },
-  { 0x0204, "\x00\x45\x03\x0f\0" },
-  { 0x0205, "\x00\x65\x03\x0f\0" },
-  { 0x0206, "\x00\x45\x03\x11\0" },
-  { 0x0207, "\x00\x65\x03\x11\0" },
-  { 0x0208, "\x00\x49\x03\x0f\0" },
-  { 0x0209, "\x00\x69\x03\x0f\0" },
-  { 0x020a, "\x00\x49\x03\x11\0" },
-  { 0x020b, "\x00\x69\x03\x11\0" },
-  { 0x020c, "\x00\x4f\x03\x0f\0" },
-  { 0x020d, "\x00\x6f\x03\x0f\0" },
-  { 0x020e, "\x00\x4f\x03\x11\0" },
-  { 0x020f, "\x00\x6f\x03\x11\0" },
-  { 0x0210, "\x00\x52\x03\x0f\0" },
-  { 0x0211, "\x00\x72\x03\x0f\0" },
-  { 0x0212, "\x00\x52\x03\x11\0" },
-  { 0x0213, "\x00\x72\x03\x11\0" },
-  { 0x0214, "\x00\x55\x03\x0f\0" },
-  { 0x0215, "\x00\x75\x03\x0f\0" },
-  { 0x0216, "\x00\x55\x03\x11\0" },
-  { 0x0217, "\x00\x75\x03\x11\0" },
-  { 0x0218, "\x00\x53\x03\x26\0" },
-  { 0x0219, "\x00\x73\x03\x26\0" },
-  { 0x021a, "\x00\x54\x03\x26\0" },
-  { 0x021b, "\x00\x74\x03\x26\0" },
-  { 0x021e, "\x00\x48\x03\x0c\0" },
-  { 0x021f, "\x00\x68\x03\x0c\0" },
-  { 0x0226, "\x00\x41\x03\x07\0" },
-  { 0x0227, "\x00\x61\x03\x07\0" },
-  { 0x0228, "\x00\x45\x03\x27\0" },
-  { 0x0229, "\x00\x65\x03\x27\0" },
-  { 0x022a, "\x00\x4f\x03\x08\x03\x04\0" },
-  { 0x022b, "\x00\x6f\x03\x08\x03\x04\0" },
-  { 0x022c, "\x00\x4f\x03\x03\x03\x04\0" },
-  { 0x022d, "\x00\x6f\x03\x03\x03\x04\0" },
-  { 0x022e, "\x00\x4f\x03\x07\0" },
-  { 0x022f, "\x00\x6f\x03\x07\0" },
-  { 0x0230, "\x00\x4f\x03\x07\x03\x04\0" },
-  { 0x0231, "\x00\x6f\x03\x07\x03\x04\0" },
-  { 0x0232, "\x00\x59\x03\x04\0" },
-  { 0x0233, "\x00\x79\x03\x04\0" },
-  { 0x0340, "\x03\x00\0" },
-  { 0x0341, "\x03\x01\0" },
-  { 0x0343, "\x03\x13\0" },
-  { 0x0344, "\x03\x08\x03\x01\0" },
-  { 0x0374, "\x02\xb9\0" },
-  { 0x037e, "\x00\x3b\0" },
-  { 0x0385, "\x00\xa8\x03\x01\0" },
-  { 0x0386, "\x03\x91\x03\x01\0" },
-  { 0x0387, "\x00\xb7\0" },
-  { 0x0388, "\x03\x95\x03\x01\0" },
-  { 0x0389, "\x03\x97\x03\x01\0" },
-  { 0x038a, "\x03\x99\x03\x01\0" },
-  { 0x038c, "\x03\x9f\x03\x01\0" },
-  { 0x038e, "\x03\xa5\x03\x01\0" },
-  { 0x038f, "\x03\xa9\x03\x01\0" },
-  { 0x0390, "\x03\xb9\x03\x08\x03\x01\0" },
-  { 0x03aa, "\x03\x99\x03\x08\0" },
-  { 0x03ab, "\x03\xa5\x03\x08\0" },
-  { 0x03ac, "\x03\xb1\x03\x01\0" },
-  { 0x03ad, "\x03\xb5\x03\x01\0" },
-  { 0x03ae, "\x03\xb7\x03\x01\0" },
-  { 0x03af, "\x03\xb9\x03\x01\0" },
-  { 0x03b0, "\x03\xc5\x03\x08\x03\x01\0" },
-  { 0x03ca, "\x03\xb9\x03\x08\0" },
-  { 0x03cb, "\x03\xc5\x03\x08\0" },
-  { 0x03cc, "\x03\xbf\x03\x01\0" },
-  { 0x03cd, "\x03\xc5\x03\x01\0" },
-  { 0x03ce, "\x03\xc9\x03\x01\0" },
-  { 0x03d3, "\x03\xd2\x03\x01\0" },
-  { 0x03d4, "\x03\xd2\x03\x08\0" },
-  { 0x0400, "\x04\x15\x03\x00\0" },
-  { 0x0401, "\x04\x15\x03\x08\0" },
-  { 0x0403, "\x04\x13\x03\x01\0" },
-  { 0x0407, "\x04\x06\x03\x08\0" },
-  { 0x040c, "\x04\x1a\x03\x01\0" },
-  { 0x040d, "\x04\x18\x03\x00\0" },
-  { 0x040e, "\x04\x23\x03\x06\0" },
-  { 0x0419, "\x04\x18\x03\x06\0" },
-  { 0x0439, "\x04\x38\x03\x06\0" },
-  { 0x0450, "\x04\x35\x03\x00\0" },
-  { 0x0451, "\x04\x35\x03\x08\0" },
-  { 0x0453, "\x04\x33\x03\x01\0" },
-  { 0x0457, "\x04\x56\x03\x08\0" },
-  { 0x045c, "\x04\x3a\x03\x01\0" },
-  { 0x045d, "\x04\x38\x03\x00\0" },
-  { 0x045e, "\x04\x43\x03\x06\0" },
-  { 0x0476, "\x04\x74\x03\x0f\0" },
-  { 0x0477, "\x04\x75\x03\x0f\0" },
-  { 0x04c1, "\x04\x16\x03\x06\0" },
-  { 0x04c2, "\x04\x36\x03\x06\0" },
-  { 0x04d0, "\x04\x10\x03\x06\0" },
-  { 0x04d1, "\x04\x30\x03\x06\0" },
-  { 0x04d2, "\x04\x10\x03\x08\0" },
-  { 0x04d3, "\x04\x30\x03\x08\0" },
-  { 0x04d6, "\x04\x15\x03\x06\0" },
-  { 0x04d7, "\x04\x35\x03\x06\0" },
-  { 0x04da, "\x04\xd8\x03\x08\0" },
-  { 0x04db, "\x04\xd9\x03\x08\0" },
-  { 0x04dc, "\x04\x16\x03\x08\0" },
-  { 0x04dd, "\x04\x36\x03\x08\0" },
-  { 0x04de, "\x04\x17\x03\x08\0" },
-  { 0x04df, "\x04\x37\x03\x08\0" },
-  { 0x04e2, "\x04\x18\x03\x04\0" },
-  { 0x04e3, "\x04\x38\x03\x04\0" },
-  { 0x04e4, "\x04\x18\x03\x08\0" },
-  { 0x04e5, "\x04\x38\x03\x08\0" },
-  { 0x04e6, "\x04\x1e\x03\x08\0" },
-  { 0x04e7, "\x04\x3e\x03\x08\0" },
-  { 0x04ea, "\x04\xe8\x03\x08\0" },
-  { 0x04eb, "\x04\xe9\x03\x08\0" },
-  { 0x04ec, "\x04\x2d\x03\x08\0" },
-  { 0x04ed, "\x04\x4d\x03\x08\0" },
-  { 0x04ee, "\x04\x23\x03\x04\0" },
-  { 0x04ef, "\x04\x43\x03\x04\0" },
-  { 0x04f0, "\x04\x23\x03\x08\0" },
-  { 0x04f1, "\x04\x43\x03\x08\0" },
-  { 0x04f2, "\x04\x23\x03\x0b\0" },
-  { 0x04f3, "\x04\x43\x03\x0b\0" },
-  { 0x04f4, "\x04\x27\x03\x08\0" },
-  { 0x04f5, "\x04\x47\x03\x08\0" },
-  { 0x04f8, "\x04\x2b\x03\x08\0" },
-  { 0x04f9, "\x04\x4b\x03\x08\0" },
-  { 0x0622, "\x06\x27\x06\x53\0" },
-  { 0x0623, "\x06\x27\x06\x54\0" },
-  { 0x0624, "\x06\x48\x06\x54\0" },
-  { 0x0625, "\x06\x27\x06\x55\0" },
-  { 0x0626, "\x06\x4a\x06\x54\0" },
-  { 0x06c0, "\x06\xd5\x06\x54\0" },
-  { 0x06c2, "\x06\xc1\x06\x54\0" },
-  { 0x06d3, "\x06\xd2\x06\x54\0" },
-  { 0x0929, "\x09\x28\x09\x3c\0" },
-  { 0x0931, "\x09\x30\x09\x3c\0" },
-  { 0x0934, "\x09\x33\x09\x3c\0" },
-  { 0x0958, "\x09\x15\x09\x3c\0" },
-  { 0x0959, "\x09\x16\x09\x3c\0" },
-  { 0x095a, "\x09\x17\x09\x3c\0" },
-  { 0x095b, "\x09\x1c\x09\x3c\0" },
-  { 0x095c, "\x09\x21\x09\x3c\0" },
-  { 0x095d, "\x09\x22\x09\x3c\0" },
-  { 0x095e, "\x09\x2b\x09\x3c\0" },
-  { 0x095f, "\x09\x2f\x09\x3c\0" },
-  { 0x09cb, "\x09\xc7\x09\xbe\0" },
-  { 0x09cc, "\x09\xc7\x09\xd7\0" },
-  { 0x09dc, "\x09\xa1\x09\xbc\0" },
-  { 0x09dd, "\x09\xa2\x09\xbc\0" },
-  { 0x09df, "\x09\xaf\x09\xbc\0" },
-  { 0x0a33, "\x0a\x32\x0a\x3c\0" },
-  { 0x0a36, "\x0a\x38\x0a\x3c\0" },
-  { 0x0a59, "\x0a\x16\x0a\x3c\0" },
-  { 0x0a5a, "\x0a\x17\x0a\x3c\0" },
-  { 0x0a5b, "\x0a\x1c\x0a\x3c\0" },
-  { 0x0a5e, "\x0a\x2b\x0a\x3c\0" },
-  { 0x0b48, "\x0b\x47\x0b\x56\0" },
-  { 0x0b4b, "\x0b\x47\x0b\x3e\0" },
-  { 0x0b4c, "\x0b\x47\x0b\x57\0" },
-  { 0x0b5c, "\x0b\x21\x0b\x3c\0" },
-  { 0x0b5d, "\x0b\x22\x0b\x3c\0" },
-  { 0x0b94, "\x0b\x92\x0b\xd7\0" },
-  { 0x0bca, "\x0b\xc6\x0b\xbe\0" },
-  { 0x0bcb, "\x0b\xc7\x0b\xbe\0" },
-  { 0x0bcc, "\x0b\xc6\x0b\xd7\0" },
-  { 0x0c48, "\x0c\x46\x0c\x56\0" },
-  { 0x0cc0, "\x0c\xbf\x0c\xd5\0" },
-  { 0x0cc7, "\x0c\xc6\x0c\xd5\0" },
-  { 0x0cc8, "\x0c\xc6\x0c\xd6\0" },
-  { 0x0cca, "\x0c\xc6\x0c\xc2\0" },
-  { 0x0ccb, "\x0c\xc6\x0c\xc2\x0c\xd5\0" },
-  { 0x0d4a, "\x0d\x46\x0d\x3e\0" },
-  { 0x0d4b, "\x0d\x47\x0d\x3e\0" },
-  { 0x0d4c, "\x0d\x46\x0d\x57\0" },
-  { 0x0dda, "\x0d\xd9\x0d\xca\0" },
-  { 0x0ddc, "\x0d\xd9\x0d\xcf\0" },
-  { 0x0ddd, "\x0d\xd9\x0d\xcf\x0d\xca\0" },
-  { 0x0dde, "\x0d\xd9\x0d\xdf\0" },
-  { 0x0f43, "\x0f\x42\x0f\xb7\0" },
-  { 0x0f4d, "\x0f\x4c\x0f\xb7\0" },
-  { 0x0f52, "\x0f\x51\x0f\xb7\0" },
-  { 0x0f57, "\x0f\x56\x0f\xb7\0" },
-  { 0x0f5c, "\x0f\x5b\x0f\xb7\0" },
-  { 0x0f69, "\x0f\x40\x0f\xb5\0" },
-  { 0x0f73, "\x0f\x71\x0f\x72\0" },
-  { 0x0f75, "\x0f\x71\x0f\x74\0" },
-  { 0x0f76, "\x0f\xb2\x0f\x80\0" },
-  { 0x0f78, "\x0f\xb3\x0f\x80\0" },
-  { 0x0f81, "\x0f\x71\x0f\x80\0" },
-  { 0x0f93, "\x0f\x92\x0f\xb7\0" },
-  { 0x0f9d, "\x0f\x9c\x0f\xb7\0" },
-  { 0x0fa2, "\x0f\xa1\x0f\xb7\0" },
-  { 0x0fa7, "\x0f\xa6\x0f\xb7\0" },
-  { 0x0fac, "\x0f\xab\x0f\xb7\0" },
-  { 0x0fb9, "\x0f\x90\x0f\xb5\0" },
-  { 0x1026, "\x10\x25\x10\x2e\0" },
-  { 0x1e00, "\x00\x41\x03\x25\0" },
-  { 0x1e01, "\x00\x61\x03\x25\0" },
-  { 0x1e02, "\x00\x42\x03\x07\0" },
-  { 0x1e03, "\x00\x62\x03\x07\0" },
-  { 0x1e04, "\x00\x42\x03\x23\0" },
-  { 0x1e05, "\x00\x62\x03\x23\0" },
-  { 0x1e06, "\x00\x42\x03\x31\0" },
-  { 0x1e07, "\x00\x62\x03\x31\0" },
-  { 0x1e08, "\x00\x43\x03\x27\x03\x01\0" },
-  { 0x1e09, "\x00\x63\x03\x27\x03\x01\0" },
-  { 0x1e0a, "\x00\x44\x03\x07\0" },
-  { 0x1e0b, "\x00\x64\x03\x07\0" },
-  { 0x1e0c, "\x00\x44\x03\x23\0" },
-  { 0x1e0d, "\x00\x64\x03\x23\0" },
-  { 0x1e0e, "\x00\x44\x03\x31\0" },
-  { 0x1e0f, "\x00\x64\x03\x31\0" },
-  { 0x1e10, "\x00\x44\x03\x27\0" },
-  { 0x1e11, "\x00\x64\x03\x27\0" },
-  { 0x1e12, "\x00\x44\x03\x2d\0" },
-  { 0x1e13, "\x00\x64\x03\x2d\0" },
-  { 0x1e14, "\x00\x45\x03\x04\x03\x00\0" },
-  { 0x1e15, "\x00\x65\x03\x04\x03\x00\0" },
-  { 0x1e16, "\x00\x45\x03\x04\x03\x01\0" },
-  { 0x1e17, "\x00\x65\x03\x04\x03\x01\0" },
-  { 0x1e18, "\x00\x45\x03\x2d\0" },
-  { 0x1e19, "\x00\x65\x03\x2d\0" },
-  { 0x1e1a, "\x00\x45\x03\x30\0" },
-  { 0x1e1b, "\x00\x65\x03\x30\0" },
-  { 0x1e1c, "\x00\x45\x03\x27\x03\x06\0" },
-  { 0x1e1d, "\x00\x65\x03\x27\x03\x06\0" },
-  { 0x1e1e, "\x00\x46\x03\x07\0" },
-  { 0x1e1f, "\x00\x66\x03\x07\0" },
-  { 0x1e20, "\x00\x47\x03\x04\0" },
-  { 0x1e21, "\x00\x67\x03\x04\0" },
-  { 0x1e22, "\x00\x48\x03\x07\0" },
-  { 0x1e23, "\x00\x68\x03\x07\0" },
-  { 0x1e24, "\x00\x48\x03\x23\0" },
-  { 0x1e25, "\x00\x68\x03\x23\0" },
-  { 0x1e26, "\x00\x48\x03\x08\0" },
-  { 0x1e27, "\x00\x68\x03\x08\0" },
-  { 0x1e28, "\x00\x48\x03\x27\0" },
-  { 0x1e29, "\x00\x68\x03\x27\0" },
-  { 0x1e2a, "\x00\x48\x03\x2e\0" },
-  { 0x1e2b, "\x00\x68\x03\x2e\0" },
-  { 0x1e2c, "\x00\x49\x03\x30\0" },
-  { 0x1e2d, "\x00\x69\x03\x30\0" },
-  { 0x1e2e, "\x00\x49\x03\x08\x03\x01\0" },
-  { 0x1e2f, "\x00\x69\x03\x08\x03\x01\0" },
-  { 0x1e30, "\x00\x4b\x03\x01\0" },
-  { 0x1e31, "\x00\x6b\x03\x01\0" },
-  { 0x1e32, "\x00\x4b\x03\x23\0" },
-  { 0x1e33, "\x00\x6b\x03\x23\0" },
-  { 0x1e34, "\x00\x4b\x03\x31\0" },
-  { 0x1e35, "\x00\x6b\x03\x31\0" },
-  { 0x1e36, "\x00\x4c\x03\x23\0" },
-  { 0x1e37, "\x00\x6c\x03\x23\0" },
-  { 0x1e38, "\x00\x4c\x03\x23\x03\x04\0" },
-  { 0x1e39, "\x00\x6c\x03\x23\x03\x04\0" },
-  { 0x1e3a, "\x00\x4c\x03\x31\0" },
-  { 0x1e3b, "\x00\x6c\x03\x31\0" },
-  { 0x1e3c, "\x00\x4c\x03\x2d\0" },
-  { 0x1e3d, "\x00\x6c\x03\x2d\0" },
-  { 0x1e3e, "\x00\x4d\x03\x01\0" },
-  { 0x1e3f, "\x00\x6d\x03\x01\0" },
-  { 0x1e40, "\x00\x4d\x03\x07\0" },
-  { 0x1e41, "\x00\x6d\x03\x07\0" },
-  { 0x1e42, "\x00\x4d\x03\x23\0" },
-  { 0x1e43, "\x00\x6d\x03\x23\0" },
-  { 0x1e44, "\x00\x4e\x03\x07\0" },
-  { 0x1e45, "\x00\x6e\x03\x07\0" },
-  { 0x1e46, "\x00\x4e\x03\x23\0" },
-  { 0x1e47, "\x00\x6e\x03\x23\0" },
-  { 0x1e48, "\x00\x4e\x03\x31\0" },
-  { 0x1e49, "\x00\x6e\x03\x31\0" },
-  { 0x1e4a, "\x00\x4e\x03\x2d\0" },
-  { 0x1e4b, "\x00\x6e\x03\x2d\0" },
-  { 0x1e4c, "\x00\x4f\x03\x03\x03\x01\0" },
-  { 0x1e4d, "\x00\x6f\x03\x03\x03\x01\0" },
-  { 0x1e4e, "\x00\x4f\x03\x03\x03\x08\0" },
-  { 0x1e4f, "\x00\x6f\x03\x03\x03\x08\0" },
-  { 0x1e50, "\x00\x4f\x03\x04\x03\x00\0" },
-  { 0x1e51, "\x00\x6f\x03\x04\x03\x00\0" },
-  { 0x1e52, "\x00\x4f\x03\x04\x03\x01\0" },
-  { 0x1e53, "\x00\x6f\x03\x04\x03\x01\0" },
-  { 0x1e54, "\x00\x50\x03\x01\0" },
-  { 0x1e55, "\x00\x70\x03\x01\0" },
-  { 0x1e56, "\x00\x50\x03\x07\0" },
-  { 0x1e57, "\x00\x70\x03\x07\0" },
-  { 0x1e58, "\x00\x52\x03\x07\0" },
-  { 0x1e59, "\x00\x72\x03\x07\0" },
-  { 0x1e5a, "\x00\x52\x03\x23\0" },
-  { 0x1e5b, "\x00\x72\x03\x23\0" },
-  { 0x1e5c, "\x00\x52\x03\x23\x03\x04\0" },
-  { 0x1e5d, "\x00\x72\x03\x23\x03\x04\0" },
-  { 0x1e5e, "\x00\x52\x03\x31\0" },
-  { 0x1e5f, "\x00\x72\x03\x31\0" },
-  { 0x1e60, "\x00\x53\x03\x07\0" },
-  { 0x1e61, "\x00\x73\x03\x07\0" },
-  { 0x1e62, "\x00\x53\x03\x23\0" },
-  { 0x1e63, "\x00\x73\x03\x23\0" },
-  { 0x1e64, "\x00\x53\x03\x01\x03\x07\0" },
-  { 0x1e65, "\x00\x73\x03\x01\x03\x07\0" },
-  { 0x1e66, "\x00\x53\x03\x0c\x03\x07\0" },
-  { 0x1e67, "\x00\x73\x03\x0c\x03\x07\0" },
-  { 0x1e68, "\x00\x53\x03\x23\x03\x07\0" },
-  { 0x1e69, "\x00\x73\x03\x23\x03\x07\0" },
-  { 0x1e6a, "\x00\x54\x03\x07\0" },
-  { 0x1e6b, "\x00\x74\x03\x07\0" },
-  { 0x1e6c, "\x00\x54\x03\x23\0" },
-  { 0x1e6d, "\x00\x74\x03\x23\0" },
-  { 0x1e6e, "\x00\x54\x03\x31\0" },
-  { 0x1e6f, "\x00\x74\x03\x31\0" },
-  { 0x1e70, "\x00\x54\x03\x2d\0" },
-  { 0x1e71, "\x00\x74\x03\x2d\0" },
-  { 0x1e72, "\x00\x55\x03\x24\0" },
-  { 0x1e73, "\x00\x75\x03\x24\0" },
-  { 0x1e74, "\x00\x55\x03\x30\0" },
-  { 0x1e75, "\x00\x75\x03\x30\0" },
-  { 0x1e76, "\x00\x55\x03\x2d\0" },
-  { 0x1e77, "\x00\x75\x03\x2d\0" },
-  { 0x1e78, "\x00\x55\x03\x03\x03\x01\0" },
-  { 0x1e79, "\x00\x75\x03\x03\x03\x01\0" },
-  { 0x1e7a, "\x00\x55\x03\x04\x03\x08\0" },
-  { 0x1e7b, "\x00\x75\x03\x04\x03\x08\0" },
-  { 0x1e7c, "\x00\x56\x03\x03\0" },
-  { 0x1e7d, "\x00\x76\x03\x03\0" },
-  { 0x1e7e, "\x00\x56\x03\x23\0" },
-  { 0x1e7f, "\x00\x76\x03\x23\0" },
-  { 0x1e80, "\x00\x57\x03\x00\0" },
-  { 0x1e81, "\x00\x77\x03\x00\0" },
-  { 0x1e82, "\x00\x57\x03\x01\0" },
-  { 0x1e83, "\x00\x77\x03\x01\0" },
-  { 0x1e84, "\x00\x57\x03\x08\0" },
-  { 0x1e85, "\x00\x77\x03\x08\0" },
-  { 0x1e86, "\x00\x57\x03\x07\0" },
-  { 0x1e87, "\x00\x77\x03\x07\0" },
-  { 0x1e88, "\x00\x57\x03\x23\0" },
-  { 0x1e89, "\x00\x77\x03\x23\0" },
-  { 0x1e8a, "\x00\x58\x03\x07\0" },
-  { 0x1e8b, "\x00\x78\x03\x07\0" },
-  { 0x1e8c, "\x00\x58\x03\x08\0" },
-  { 0x1e8d, "\x00\x78\x03\x08\0" },
-  { 0x1e8e, "\x00\x59\x03\x07\0" },
-  { 0x1e8f, "\x00\x79\x03\x07\0" },
-  { 0x1e90, "\x00\x5a\x03\x02\0" },
-  { 0x1e91, "\x00\x7a\x03\x02\0" },
-  { 0x1e92, "\x00\x5a\x03\x23\0" },
-  { 0x1e93, "\x00\x7a\x03\x23\0" },
-  { 0x1e94, "\x00\x5a\x03\x31\0" },
-  { 0x1e95, "\x00\x7a\x03\x31\0" },
-  { 0x1e96, "\x00\x68\x03\x31\0" },
-  { 0x1e97, "\x00\x74\x03\x08\0" },
-  { 0x1e98, "\x00\x77\x03\x0a\0" },
-  { 0x1e99, "\x00\x79\x03\x0a\0" },
-  { 0x1e9b, "\x01\x7f\x03\x07\0" },
-  { 0x1ea0, "\x00\x41\x03\x23\0" },
-  { 0x1ea1, "\x00\x61\x03\x23\0" },
-  { 0x1ea2, "\x00\x41\x03\x09\0" },
-  { 0x1ea3, "\x00\x61\x03\x09\0" },
-  { 0x1ea4, "\x00\x41\x03\x02\x03\x01\0" },
-  { 0x1ea5, "\x00\x61\x03\x02\x03\x01\0" },
-  { 0x1ea6, "\x00\x41\x03\x02\x03\x00\0" },
-  { 0x1ea7, "\x00\x61\x03\x02\x03\x00\0" },
-  { 0x1ea8, "\x00\x41\x03\x02\x03\x09\0" },
-  { 0x1ea9, "\x00\x61\x03\x02\x03\x09\0" },
-  { 0x1eaa, "\x00\x41\x03\x02\x03\x03\0" },
-  { 0x1eab, "\x00\x61\x03\x02\x03\x03\0" },
-  { 0x1eac, "\x00\x41\x03\x23\x03\x02\0" },
-  { 0x1ead, "\x00\x61\x03\x23\x03\x02\0" },
-  { 0x1eae, "\x00\x41\x03\x06\x03\x01\0" },
-  { 0x1eaf, "\x00\x61\x03\x06\x03\x01\0" },
-  { 0x1eb0, "\x00\x41\x03\x06\x03\x00\0" },
-  { 0x1eb1, "\x00\x61\x03\x06\x03\x00\0" },
-  { 0x1eb2, "\x00\x41\x03\x06\x03\x09\0" },
-  { 0x1eb3, "\x00\x61\x03\x06\x03\x09\0" },
-  { 0x1eb4, "\x00\x41\x03\x06\x03\x03\0" },
-  { 0x1eb5, "\x00\x61\x03\x06\x03\x03\0" },
-  { 0x1eb6, "\x00\x41\x03\x23\x03\x06\0" },
-  { 0x1eb7, "\x00\x61\x03\x23\x03\x06\0" },
-  { 0x1eb8, "\x00\x45\x03\x23\0" },
-  { 0x1eb9, "\x00\x65\x03\x23\0" },
-  { 0x1eba, "\x00\x45\x03\x09\0" },
-  { 0x1ebb, "\x00\x65\x03\x09\0" },
-  { 0x1ebc, "\x00\x45\x03\x03\0" },
-  { 0x1ebd, "\x00\x65\x03\x03\0" },
-  { 0x1ebe, "\x00\x45\x03\x02\x03\x01\0" },
-  { 0x1ebf, "\x00\x65\x03\x02\x03\x01\0" },
-  { 0x1ec0, "\x00\x45\x03\x02\x03\x00\0" },
-  { 0x1ec1, "\x00\x65\x03\x02\x03\x00\0" },
-  { 0x1ec2, "\x00\x45\x03\x02\x03\x09\0" },
-  { 0x1ec3, "\x00\x65\x03\x02\x03\x09\0" },
-  { 0x1ec4, "\x00\x45\x03\x02\x03\x03\0" },
-  { 0x1ec5, "\x00\x65\x03\x02\x03\x03\0" },
-  { 0x1ec6, "\x00\x45\x03\x23\x03\x02\0" },
-  { 0x1ec7, "\x00\x65\x03\x23\x03\x02\0" },
-  { 0x1ec8, "\x00\x49\x03\x09\0" },
-  { 0x1ec9, "\x00\x69\x03\x09\0" },
-  { 0x1eca, "\x00\x49\x03\x23\0" },
-  { 0x1ecb, "\x00\x69\x03\x23\0" },
-  { 0x1ecc, "\x00\x4f\x03\x23\0" },
-  { 0x1ecd, "\x00\x6f\x03\x23\0" },
-  { 0x1ece, "\x00\x4f\x03\x09\0" },
-  { 0x1ecf, "\x00\x6f\x03\x09\0" },
-  { 0x1ed0, "\x00\x4f\x03\x02\x03\x01\0" },
-  { 0x1ed1, "\x00\x6f\x03\x02\x03\x01\0" },
-  { 0x1ed2, "\x00\x4f\x03\x02\x03\x00\0" },
-  { 0x1ed3, "\x00\x6f\x03\x02\x03\x00\0" },
-  { 0x1ed4, "\x00\x4f\x03\x02\x03\x09\0" },
-  { 0x1ed5, "\x00\x6f\x03\x02\x03\x09\0" },
-  { 0x1ed6, "\x00\x4f\x03\x02\x03\x03\0" },
-  { 0x1ed7, "\x00\x6f\x03\x02\x03\x03\0" },
-  { 0x1ed8, "\x00\x4f\x03\x23\x03\x02\0" },
-  { 0x1ed9, "\x00\x6f\x03\x23\x03\x02\0" },
-  { 0x1eda, "\x00\x4f\x03\x1b\x03\x01\0" },
-  { 0x1edb, "\x00\x6f\x03\x1b\x03\x01\0" },
-  { 0x1edc, "\x00\x4f\x03\x1b\x03\x00\0" },
-  { 0x1edd, "\x00\x6f\x03\x1b\x03\x00\0" },
-  { 0x1ede, "\x00\x4f\x03\x1b\x03\x09\0" },
-  { 0x1edf, "\x00\x6f\x03\x1b\x03\x09\0" },
-  { 0x1ee0, "\x00\x4f\x03\x1b\x03\x03\0" },
-  { 0x1ee1, "\x00\x6f\x03\x1b\x03\x03\0" },
-  { 0x1ee2, "\x00\x4f\x03\x1b\x03\x23\0" },
-  { 0x1ee3, "\x00\x6f\x03\x1b\x03\x23\0" },
-  { 0x1ee4, "\x00\x55\x03\x23\0" },
-  { 0x1ee5, "\x00\x75\x03\x23\0" },
-  { 0x1ee6, "\x00\x55\x03\x09\0" },
-  { 0x1ee7, "\x00\x75\x03\x09\0" },
-  { 0x1ee8, "\x00\x55\x03\x1b\x03\x01\0" },
-  { 0x1ee9, "\x00\x75\x03\x1b\x03\x01\0" },
-  { 0x1eea, "\x00\x55\x03\x1b\x03\x00\0" },
-  { 0x1eeb, "\x00\x75\x03\x1b\x03\x00\0" },
-  { 0x1eec, "\x00\x55\x03\x1b\x03\x09\0" },
-  { 0x1eed, "\x00\x75\x03\x1b\x03\x09\0" },
-  { 0x1eee, "\x00\x55\x03\x1b\x03\x03\0" },
-  { 0x1eef, "\x00\x75\x03\x1b\x03\x03\0" },
-  { 0x1ef0, "\x00\x55\x03\x1b\x03\x23\0" },
-  { 0x1ef1, "\x00\x75\x03\x1b\x03\x23\0" },
-  { 0x1ef2, "\x00\x59\x03\x00\0" },
-  { 0x1ef3, "\x00\x79\x03\x00\0" },
-  { 0x1ef4, "\x00\x59\x03\x23\0" },
-  { 0x1ef5, "\x00\x79\x03\x23\0" },
-  { 0x1ef6, "\x00\x59\x03\x09\0" },
-  { 0x1ef7, "\x00\x79\x03\x09\0" },
-  { 0x1ef8, "\x00\x59\x03\x03\0" },
-  { 0x1ef9, "\x00\x79\x03\x03\0" },
-  { 0x1f00, "\x03\xb1\x03\x13\0" },
-  { 0x1f01, "\x03\xb1\x03\x14\0" },
-  { 0x1f02, "\x03\xb1\x03\x13\x03\x00\0" },
-  { 0x1f03, "\x03\xb1\x03\x14\x03\x00\0" },
-  { 0x1f04, "\x03\xb1\x03\x13\x03\x01\0" },
-  { 0x1f05, "\x03\xb1\x03\x14\x03\x01\0" },
-  { 0x1f06, "\x03\xb1\x03\x13\x03\x42\0" },
-  { 0x1f07, "\x03\xb1\x03\x14\x03\x42\0" },
-  { 0x1f08, "\x03\x91\x03\x13\0" },
-  { 0x1f09, "\x03\x91\x03\x14\0" },
-  { 0x1f0a, "\x03\x91\x03\x13\x03\x00\0" },
-  { 0x1f0b, "\x03\x91\x03\x14\x03\x00\0" },
-  { 0x1f0c, "\x03\x91\x03\x13\x03\x01\0" },
-  { 0x1f0d, "\x03\x91\x03\x14\x03\x01\0" },
-  { 0x1f0e, "\x03\x91\x03\x13\x03\x42\0" },
-  { 0x1f0f, "\x03\x91\x03\x14\x03\x42\0" },
-  { 0x1f10, "\x03\xb5\x03\x13\0" },
-  { 0x1f11, "\x03\xb5\x03\x14\0" },
-  { 0x1f12, "\x03\xb5\x03\x13\x03\x00\0" },
-  { 0x1f13, "\x03\xb5\x03\x14\x03\x00\0" },
-  { 0x1f14, "\x03\xb5\x03\x13\x03\x01\0" },
-  { 0x1f15, "\x03\xb5\x03\x14\x03\x01\0" },
-  { 0x1f18, "\x03\x95\x03\x13\0" },
-  { 0x1f19, "\x03\x95\x03\x14\0" },
-  { 0x1f1a, "\x03\x95\x03\x13\x03\x00\0" },
-  { 0x1f1b, "\x03\x95\x03\x14\x03\x00\0" },
-  { 0x1f1c, "\x03\x95\x03\x13\x03\x01\0" },
-  { 0x1f1d, "\x03\x95\x03\x14\x03\x01\0" },
-  { 0x1f20, "\x03\xb7\x03\x13\0" },
-  { 0x1f21, "\x03\xb7\x03\x14\0" },
-  { 0x1f22, "\x03\xb7\x03\x13\x03\x00\0" },
-  { 0x1f23, "\x03\xb7\x03\x14\x03\x00\0" },
-  { 0x1f24, "\x03\xb7\x03\x13\x03\x01\0" },
-  { 0x1f25, "\x03\xb7\x03\x14\x03\x01\0" },
-  { 0x1f26, "\x03\xb7\x03\x13\x03\x42\0" },
-  { 0x1f27, "\x03\xb7\x03\x14\x03\x42\0" },
-  { 0x1f28, "\x03\x97\x03\x13\0" },
-  { 0x1f29, "\x03\x97\x03\x14\0" },
-  { 0x1f2a, "\x03\x97\x03\x13\x03\x00\0" },
-  { 0x1f2b, "\x03\x97\x03\x14\x03\x00\0" },
-  { 0x1f2c, "\x03\x97\x03\x13\x03\x01\0" },
-  { 0x1f2d, "\x03\x97\x03\x14\x03\x01\0" },
-  { 0x1f2e, "\x03\x97\x03\x13\x03\x42\0" },
-  { 0x1f2f, "\x03\x97\x03\x14\x03\x42\0" },
-  { 0x1f30, "\x03\xb9\x03\x13\0" },
-  { 0x1f31, "\x03\xb9\x03\x14\0" },
-  { 0x1f32, "\x03\xb9\x03\x13\x03\x00\0" },
-  { 0x1f33, "\x03\xb9\x03\x14\x03\x00\0" },
-  { 0x1f34, "\x03\xb9\x03\x13\x03\x01\0" },
-  { 0x1f35, "\x03\xb9\x03\x14\x03\x01\0" },
-  { 0x1f36, "\x03\xb9\x03\x13\x03\x42\0" },
-  { 0x1f37, "\x03\xb9\x03\x14\x03\x42\0" },
-  { 0x1f38, "\x03\x99\x03\x13\0" },
-  { 0x1f39, "\x03\x99\x03\x14\0" },
-  { 0x1f3a, "\x03\x99\x03\x13\x03\x00\0" },
-  { 0x1f3b, "\x03\x99\x03\x14\x03\x00\0" },
-  { 0x1f3c, "\x03\x99\x03\x13\x03\x01\0" },
-  { 0x1f3d, "\x03\x99\x03\x14\x03\x01\0" },
-  { 0x1f3e, "\x03\x99\x03\x13\x03\x42\0" },
-  { 0x1f3f, "\x03\x99\x03\x14\x03\x42\0" },
-  { 0x1f40, "\x03\xbf\x03\x13\0" },
-  { 0x1f41, "\x03\xbf\x03\x14\0" },
-  { 0x1f42, "\x03\xbf\x03\x13\x03\x00\0" },
-  { 0x1f43, "\x03\xbf\x03\x14\x03\x00\0" },
-  { 0x1f44, "\x03\xbf\x03\x13\x03\x01\0" },
-  { 0x1f45, "\x03\xbf\x03\x14\x03\x01\0" },
-  { 0x1f48, "\x03\x9f\x03\x13\0" },
-  { 0x1f49, "\x03\x9f\x03\x14\0" },
-  { 0x1f4a, "\x03\x9f\x03\x13\x03\x00\0" },
-  { 0x1f4b, "\x03\x9f\x03\x14\x03\x00\0" },
-  { 0x1f4c, "\x03\x9f\x03\x13\x03\x01\0" },
-  { 0x1f4d, "\x03\x9f\x03\x14\x03\x01\0" },
-  { 0x1f50, "\x03\xc5\x03\x13\0" },
-  { 0x1f51, "\x03\xc5\x03\x14\0" },
-  { 0x1f52, "\x03\xc5\x03\x13\x03\x00\0" },
-  { 0x1f53, "\x03\xc5\x03\x14\x03\x00\0" },
-  { 0x1f54, "\x03\xc5\x03\x13\x03\x01\0" },
-  { 0x1f55, "\x03\xc5\x03\x14\x03\x01\0" },
-  { 0x1f56, "\x03\xc5\x03\x13\x03\x42\0" },
-  { 0x1f57, "\x03\xc5\x03\x14\x03\x42\0" },
-  { 0x1f59, "\x03\xa5\x03\x14\0" },
-  { 0x1f5b, "\x03\xa5\x03\x14\x03\x00\0" },
-  { 0x1f5d, "\x03\xa5\x03\x14\x03\x01\0" },
-  { 0x1f5f, "\x03\xa5\x03\x14\x03\x42\0" },
-  { 0x1f60, "\x03\xc9\x03\x13\0" },
-  { 0x1f61, "\x03\xc9\x03\x14\0" },
-  { 0x1f62, "\x03\xc9\x03\x13\x03\x00\0" },
-  { 0x1f63, "\x03\xc9\x03\x14\x03\x00\0" },
-  { 0x1f64, "\x03\xc9\x03\x13\x03\x01\0" },
-  { 0x1f65, "\x03\xc9\x03\x14\x03\x01\0" },
-  { 0x1f66, "\x03\xc9\x03\x13\x03\x42\0" },
-  { 0x1f67, "\x03\xc9\x03\x14\x03\x42\0" },
-  { 0x1f68, "\x03\xa9\x03\x13\0" },
-  { 0x1f69, "\x03\xa9\x03\x14\0" },
-  { 0x1f6a, "\x03\xa9\x03\x13\x03\x00\0" },
-  { 0x1f6b, "\x03\xa9\x03\x14\x03\x00\0" },
-  { 0x1f6c, "\x03\xa9\x03\x13\x03\x01\0" },
-  { 0x1f6d, "\x03\xa9\x03\x14\x03\x01\0" },
-  { 0x1f6e, "\x03\xa9\x03\x13\x03\x42\0" },
-  { 0x1f6f, "\x03\xa9\x03\x14\x03\x42\0" },
-  { 0x1f70, "\x03\xb1\x03\x00\0" },
-  { 0x1f71, "\x03\xb1\x03\x01\0" },
-  { 0x1f72, "\x03\xb5\x03\x00\0" },
-  { 0x1f73, "\x03\xb5\x03\x01\0" },
-  { 0x1f74, "\x03\xb7\x03\x00\0" },
-  { 0x1f75, "\x03\xb7\x03\x01\0" },
-  { 0x1f76, "\x03\xb9\x03\x00\0" },
-  { 0x1f77, "\x03\xb9\x03\x01\0" },
-  { 0x1f78, "\x03\xbf\x03\x00\0" },
-  { 0x1f79, "\x03\xbf\x03\x01\0" },
-  { 0x1f7a, "\x03\xc5\x03\x00\0" },
-  { 0x1f7b, "\x03\xc5\x03\x01\0" },
-  { 0x1f7c, "\x03\xc9\x03\x00\0" },
-  { 0x1f7d, "\x03\xc9\x03\x01\0" },
-  { 0x1f80, "\x03\xb1\x03\x13\x03\x45\0" },
-  { 0x1f81, "\x03\xb1\x03\x14\x03\x45\0" },
-  { 0x1f82, "\x03\xb1\x03\x13\x03\x00\x03\x45\0" },
-  { 0x1f83, "\x03\xb1\x03\x14\x03\x00\x03\x45\0" },
-  { 0x1f84, "\x03\xb1\x03\x13\x03\x01\x03\x45\0" },
-  { 0x1f85, "\x03\xb1\x03\x14\x03\x01\x03\x45\0" },
-  { 0x1f86, "\x03\xb1\x03\x13\x03\x42\x03\x45\0" },
-  { 0x1f87, "\x03\xb1\x03\x14\x03\x42\x03\x45\0" },
-  { 0x1f88, "\x03\x91\x03\x13\x03\x45\0" },
-  { 0x1f89, "\x03\x91\x03\x14\x03\x45\0" },
-  { 0x1f8a, "\x03\x91\x03\x13\x03\x00\x03\x45\0" },
-  { 0x1f8b, "\x03\x91\x03\x14\x03\x00\x03\x45\0" },
-  { 0x1f8c, "\x03\x91\x03\x13\x03\x01\x03\x45\0" },
-  { 0x1f8d, "\x03\x91\x03\x14\x03\x01\x03\x45\0" },
-  { 0x1f8e, "\x03\x91\x03\x13\x03\x42\x03\x45\0" },
-  { 0x1f8f, "\x03\x91\x03\x14\x03\x42\x03\x45\0" },
-  { 0x1f90, "\x03\xb7\x03\x13\x03\x45\0" },
-  { 0x1f91, "\x03\xb7\x03\x14\x03\x45\0" },
-  { 0x1f92, "\x03\xb7\x03\x13\x03\x00\x03\x45\0" },
-  { 0x1f93, "\x03\xb7\x03\x14\x03\x00\x03\x45\0" },
-  { 0x1f94, "\x03\xb7\x03\x13\x03\x01\x03\x45\0" },
-  { 0x1f95, "\x03\xb7\x03\x14\x03\x01\x03\x45\0" },
-  { 0x1f96, "\x03\xb7\x03\x13\x03\x42\x03\x45\0" },
-  { 0x1f97, "\x03\xb7\x03\x14\x03\x42\x03\x45\0" },
-  { 0x1f98, "\x03\x97\x03\x13\x03\x45\0" },
-  { 0x1f99, "\x03\x97\x03\x14\x03\x45\0" },
-  { 0x1f9a, "\x03\x97\x03\x13\x03\x00\x03\x45\0" },
-  { 0x1f9b, "\x03\x97\x03\x14\x03\x00\x03\x45\0" },
-  { 0x1f9c, "\x03\x97\x03\x13\x03\x01\x03\x45\0" },
-  { 0x1f9d, "\x03\x97\x03\x14\x03\x01\x03\x45\0" },
-  { 0x1f9e, "\x03\x97\x03\x13\x03\x42\x03\x45\0" },
-  { 0x1f9f, "\x03\x97\x03\x14\x03\x42\x03\x45\0" },
-  { 0x1fa0, "\x03\xc9\x03\x13\x03\x45\0" },
-  { 0x1fa1, "\x03\xc9\x03\x14\x03\x45\0" },
-  { 0x1fa2, "\x03\xc9\x03\x13\x03\x00\x03\x45\0" },
-  { 0x1fa3, "\x03\xc9\x03\x14\x03\x00\x03\x45\0" },
-  { 0x1fa4, "\x03\xc9\x03\x13\x03\x01\x03\x45\0" },
-  { 0x1fa5, "\x03\xc9\x03\x14\x03\x01\x03\x45\0" },
-  { 0x1fa6, "\x03\xc9\x03\x13\x03\x42\x03\x45\0" },
-  { 0x1fa7, "\x03\xc9\x03\x14\x03\x42\x03\x45\0" },
-  { 0x1fa8, "\x03\xa9\x03\x13\x03\x45\0" },
-  { 0x1fa9, "\x03\xa9\x03\x14\x03\x45\0" },
-  { 0x1faa, "\x03\xa9\x03\x13\x03\x00\x03\x45\0" },
-  { 0x1fab, "\x03\xa9\x03\x14\x03\x00\x03\x45\0" },
-  { 0x1fac, "\x03\xa9\x03\x13\x03\x01\x03\x45\0" },
-  { 0x1fad, "\x03\xa9\x03\x14\x03\x01\x03\x45\0" },
-  { 0x1fae, "\x03\xa9\x03\x13\x03\x42\x03\x45\0" },
-  { 0x1faf, "\x03\xa9\x03\x14\x03\x42\x03\x45\0" },
-  { 0x1fb0, "\x03\xb1\x03\x06\0" },
-  { 0x1fb1, "\x03\xb1\x03\x04\0" },
-  { 0x1fb2, "\x03\xb1\x03\x00\x03\x45\0" },
-  { 0x1fb3, "\x03\xb1\x03\x45\0" },
-  { 0x1fb4, "\x03\xb1\x03\x01\x03\x45\0" },
-  { 0x1fb6, "\x03\xb1\x03\x42\0" },
-  { 0x1fb7, "\x03\xb1\x03\x42\x03\x45\0" },
-  { 0x1fb8, "\x03\x91\x03\x06\0" },
-  { 0x1fb9, "\x03\x91\x03\x04\0" },
-  { 0x1fba, "\x03\x91\x03\x00\0" },
-  { 0x1fbb, "\x03\x91\x03\x01\0" },
-  { 0x1fbc, "\x03\x91\x03\x45\0" },
-  { 0x1fbe, "\x03\xb9\0" },
-  { 0x1fc1, "\x00\xa8\x03\x42\0" },
-  { 0x1fc2, "\x03\xb7\x03\x00\x03\x45\0" },
-  { 0x1fc3, "\x03\xb7\x03\x45\0" },
-  { 0x1fc4, "\x03\xb7\x03\x01\x03\x45\0" },
-  { 0x1fc6, "\x03\xb7\x03\x42\0" },
-  { 0x1fc7, "\x03\xb7\x03\x42\x03\x45\0" },
-  { 0x1fc8, "\x03\x95\x03\x00\0" },
-  { 0x1fc9, "\x03\x95\x03\x01\0" },
-  { 0x1fca, "\x03\x97\x03\x00\0" },
-  { 0x1fcb, "\x03\x97\x03\x01\0" },
-  { 0x1fcc, "\x03\x97\x03\x45\0" },
-  { 0x1fcd, "\x1f\xbf\x03\x00\0" },
-  { 0x1fce, "\x1f\xbf\x03\x01\0" },
-  { 0x1fcf, "\x1f\xbf\x03\x42\0" },
-  { 0x1fd0, "\x03\xb9\x03\x06\0" },
-  { 0x1fd1, "\x03\xb9\x03\x04\0" },
-  { 0x1fd2, "\x03\xb9\x03\x08\x03\x00\0" },
-  { 0x1fd3, "\x03\xb9\x03\x08\x03\x01\0" },
-  { 0x1fd6, "\x03\xb9\x03\x42\0" },
-  { 0x1fd7, "\x03\xb9\x03\x08\x03\x42\0" },
-  { 0x1fd8, "\x03\x99\x03\x06\0" },
-  { 0x1fd9, "\x03\x99\x03\x04\0" },
-  { 0x1fda, "\x03\x99\x03\x00\0" },
-  { 0x1fdb, "\x03\x99\x03\x01\0" },
-  { 0x1fdd, "\x1f\xfe\x03\x00\0" },
-  { 0x1fde, "\x1f\xfe\x03\x01\0" },
-  { 0x1fdf, "\x1f\xfe\x03\x42\0" },
-  { 0x1fe0, "\x03\xc5\x03\x06\0" },
-  { 0x1fe1, "\x03\xc5\x03\x04\0" },
-  { 0x1fe2, "\x03\xc5\x03\x08\x03\x00\0" },
-  { 0x1fe3, "\x03\xc5\x03\x08\x03\x01\0" },
-  { 0x1fe4, "\x03\xc1\x03\x13\0" },
-  { 0x1fe5, "\x03\xc1\x03\x14\0" },
-  { 0x1fe6, "\x03\xc5\x03\x42\0" },
-  { 0x1fe7, "\x03\xc5\x03\x08\x03\x42\0" },
-  { 0x1fe8, "\x03\xa5\x03\x06\0" },
-  { 0x1fe9, "\x03\xa5\x03\x04\0" },
-  { 0x1fea, "\x03\xa5\x03\x00\0" },
-  { 0x1feb, "\x03\xa5\x03\x01\0" },
-  { 0x1fec, "\x03\xa1\x03\x14\0" },
-  { 0x1fed, "\x00\xa8\x03\x00\0" },
-  { 0x1fee, "\x00\xa8\x03\x01\0" },
-  { 0x1fef, "\x00\x60\0" },
-  { 0x1ff2, "\x03\xc9\x03\x00\x03\x45\0" },
-  { 0x1ff3, "\x03\xc9\x03\x45\0" },
-  { 0x1ff4, "\x03\xc9\x03\x01\x03\x45\0" },
-  { 0x1ff6, "\x03\xc9\x03\x42\0" },
-  { 0x1ff7, "\x03\xc9\x03\x42\x03\x45\0" },
-  { 0x1ff8, "\x03\x9f\x03\x00\0" },
-  { 0x1ff9, "\x03\x9f\x03\x01\0" },
-  { 0x1ffa, "\x03\xa9\x03\x00\0" },
-  { 0x1ffb, "\x03\xa9\x03\x01\0" },
-  { 0x1ffc, "\x03\xa9\x03\x45\0" },
-  { 0x1ffd, "\x00\xb4\0" },
-  { 0x2000, "\x20\x02\0" },
-  { 0x2001, "\x20\x03\0" },
-  { 0x2126, "\x03\xa9\0" },
-  { 0x212a, "\x00\x4b\0" },
-  { 0x212b, "\x00\x41\x03\x0a\0" },
-  { 0x219a, "\x21\x90\x03\x38\0" },
-  { 0x219b, "\x21\x92\x03\x38\0" },
-  { 0x21ae, "\x21\x94\x03\x38\0" },
-  { 0x21cd, "\x21\xd0\x03\x38\0" },
-  { 0x21ce, "\x21\xd4\x03\x38\0" },
-  { 0x21cf, "\x21\xd2\x03\x38\0" },
-  { 0x2204, "\x22\x03\x03\x38\0" },
-  { 0x2209, "\x22\x08\x03\x38\0" },
-  { 0x220c, "\x22\x0b\x03\x38\0" },
-  { 0x2224, "\x22\x23\x03\x38\0" },
-  { 0x2226, "\x22\x25\x03\x38\0" },
-  { 0x2241, "\x22\x3c\x03\x38\0" },
-  { 0x2244, "\x22\x43\x03\x38\0" },
-  { 0x2247, "\x22\x45\x03\x38\0" },
-  { 0x2249, "\x22\x48\x03\x38\0" },
-  { 0x2260, "\x00\x3d\x03\x38\0" },
-  { 0x2262, "\x22\x61\x03\x38\0" },
-  { 0x226d, "\x22\x4d\x03\x38\0" },
-  { 0x226e, "\x00\x3c\x03\x38\0" },
-  { 0x226f, "\x00\x3e\x03\x38\0" },
-  { 0x2270, "\x22\x64\x03\x38\0" },
-  { 0x2271, "\x22\x65\x03\x38\0" },
-  { 0x2274, "\x22\x72\x03\x38\0" },
-  { 0x2275, "\x22\x73\x03\x38\0" },
-  { 0x2278, "\x22\x76\x03\x38\0" },
-  { 0x2279, "\x22\x77\x03\x38\0" },
-  { 0x2280, "\x22\x7a\x03\x38\0" },
-  { 0x2281, "\x22\x7b\x03\x38\0" },
-  { 0x2284, "\x22\x82\x03\x38\0" },
-  { 0x2285, "\x22\x83\x03\x38\0" },
-  { 0x2288, "\x22\x86\x03\x38\0" },
-  { 0x2289, "\x22\x87\x03\x38\0" },
-  { 0x22ac, "\x22\xa2\x03\x38\0" },
-  { 0x22ad, "\x22\xa8\x03\x38\0" },
-  { 0x22ae, "\x22\xa9\x03\x38\0" },
-  { 0x22af, "\x22\xab\x03\x38\0" },
-  { 0x22e0, "\x22\x7c\x03\x38\0" },
-  { 0x22e1, "\x22\x7d\x03\x38\0" },
-  { 0x22e2, "\x22\x91\x03\x38\0" },
-  { 0x22e3, "\x22\x92\x03\x38\0" },
-  { 0x22ea, "\x22\xb2\x03\x38\0" },
-  { 0x22eb, "\x22\xb3\x03\x38\0" },
-  { 0x22ec, "\x22\xb4\x03\x38\0" },
-  { 0x22ed, "\x22\xb5\x03\x38\0" },
-  { 0x2329, "\x30\x08\0" },
-  { 0x232a, "\x30\x09\0" },
-  { 0x304c, "\x30\x4b\x30\x99\0" },
-  { 0x304e, "\x30\x4d\x30\x99\0" },
-  { 0x3050, "\x30\x4f\x30\x99\0" },
-  { 0x3052, "\x30\x51\x30\x99\0" },
-  { 0x3054, "\x30\x53\x30\x99\0" },
-  { 0x3056, "\x30\x55\x30\x99\0" },
-  { 0x3058, "\x30\x57\x30\x99\0" },
-  { 0x305a, "\x30\x59\x30\x99\0" },
-  { 0x305c, "\x30\x5b\x30\x99\0" },
-  { 0x305e, "\x30\x5d\x30\x99\0" },
-  { 0x3060, "\x30\x5f\x30\x99\0" },
-  { 0x3062, "\x30\x61\x30\x99\0" },
-  { 0x3065, "\x30\x64\x30\x99\0" },
-  { 0x3067, "\x30\x66\x30\x99\0" },
-  { 0x3069, "\x30\x68\x30\x99\0" },
-  { 0x3070, "\x30\x6f\x30\x99\0" },
-  { 0x3071, "\x30\x6f\x30\x9a\0" },
-  { 0x3073, "\x30\x72\x30\x99\0" },
-  { 0x3074, "\x30\x72\x30\x9a\0" },
-  { 0x3076, "\x30\x75\x30\x99\0" },
-  { 0x3077, "\x30\x75\x30\x9a\0" },
-  { 0x3079, "\x30\x78\x30\x99\0" },
-  { 0x307a, "\x30\x78\x30\x9a\0" },
-  { 0x307c, "\x30\x7b\x30\x99\0" },
-  { 0x307d, "\x30\x7b\x30\x9a\0" },
-  { 0x3094, "\x30\x46\x30\x99\0" },
-  { 0x309e, "\x30\x9d\x30\x99\0" },
-  { 0x30ac, "\x30\xab\x30\x99\0" },
-  { 0x30ae, "\x30\xad\x30\x99\0" },
-  { 0x30b0, "\x30\xaf\x30\x99\0" },
-  { 0x30b2, "\x30\xb1\x30\x99\0" },
-  { 0x30b4, "\x30\xb3\x30\x99\0" },
-  { 0x30b6, "\x30\xb5\x30\x99\0" },
-  { 0x30b8, "\x30\xb7\x30\x99\0" },
-  { 0x30ba, "\x30\xb9\x30\x99\0" },
-  { 0x30bc, "\x30\xbb\x30\x99\0" },
-  { 0x30be, "\x30\xbd\x30\x99\0" },
-  { 0x30c0, "\x30\xbf\x30\x99\0" },
-  { 0x30c2, "\x30\xc1\x30\x99\0" },
-  { 0x30c5, "\x30\xc4\x30\x99\0" },
-  { 0x30c7, "\x30\xc6\x30\x99\0" },
-  { 0x30c9, "\x30\xc8\x30\x99\0" },
-  { 0x30d0, "\x30\xcf\x30\x99\0" },
-  { 0x30d1, "\x30\xcf\x30\x9a\0" },
-  { 0x30d3, "\x30\xd2\x30\x99\0" },
-  { 0x30d4, "\x30\xd2\x30\x9a\0" },
-  { 0x30d6, "\x30\xd5\x30\x99\0" },
-  { 0x30d7, "\x30\xd5\x30\x9a\0" },
-  { 0x30d9, "\x30\xd8\x30\x99\0" },
-  { 0x30da, "\x30\xd8\x30\x9a\0" },
-  { 0x30dc, "\x30\xdb\x30\x99\0" },
-  { 0x30dd, "\x30\xdb\x30\x9a\0" },
-  { 0x30f4, "\x30\xa6\x30\x99\0" },
-  { 0x30f7, "\x30\xef\x30\x99\0" },
-  { 0x30f8, "\x30\xf0\x30\x99\0" },
-  { 0x30f9, "\x30\xf1\x30\x99\0" },
-  { 0x30fa, "\x30\xf2\x30\x99\0" },
-  { 0x30fe, "\x30\xfd\x30\x99\0" },
-  { 0xf900, "\x8c\x48\0" },
-  { 0xf901, "\x66\xf4\0" },
-  { 0xf902, "\x8e\xca\0" },
-  { 0xf903, "\x8c\xc8\0" },
-  { 0xf904, "\x6e\xd1\0" },
-  { 0xf905, "\x4e\x32\0" },
-  { 0xf906, "\x53\xe5\0" },
-  { 0xf907, "\x9f\x9c\0" },
-  { 0xf908, "\x9f\x9c\0" },
-  { 0xf909, "\x59\x51\0" },
-  { 0xf90a, "\x91\xd1\0" },
-  { 0xf90b, "\x55\x87\0" },
-  { 0xf90c, "\x59\x48\0" },
-  { 0xf90d, "\x61\xf6\0" },
-  { 0xf90e, "\x76\x69\0" },
-  { 0xf90f, "\x7f\x85\0" },
-  { 0xf910, "\x86\x3f\0" },
-  { 0xf911, "\x87\xba\0" },
-  { 0xf912, "\x88\xf8\0" },
-  { 0xf913, "\x90\x8f\0" },
-  { 0xf914, "\x6a\x02\0" },
-  { 0xf915, "\x6d\x1b\0" },
-  { 0xf916, "\x70\xd9\0" },
-  { 0xf917, "\x73\xde\0" },
-  { 0xf918, "\x84\x3d\0" },
-  { 0xf919, "\x91\x6a\0" },
-  { 0xf91a, "\x99\xf1\0" },
-  { 0xf91b, "\x4e\x82\0" },
-  { 0xf91c, "\x53\x75\0" },
-  { 0xf91d, "\x6b\x04\0" },
-  { 0xf91e, "\x72\x1b\0" },
-  { 0xf91f, "\x86\x2d\0" },
-  { 0xf920, "\x9e\x1e\0" },
-  { 0xf921, "\x5d\x50\0" },
-  { 0xf922, "\x6f\xeb\0" },
-  { 0xf923, "\x85\xcd\0" },
-  { 0xf924, "\x89\x64\0" },
-  { 0xf925, "\x62\xc9\0" },
-  { 0xf926, "\x81\xd8\0" },
-  { 0xf927, "\x88\x1f\0" },
-  { 0xf928, "\x5e\xca\0" },
-  { 0xf929, "\x67\x17\0" },
-  { 0xf92a, "\x6d\x6a\0" },
-  { 0xf92b, "\x72\xfc\0" },
-  { 0xf92c, "\x90\xce\0" },
-  { 0xf92d, "\x4f\x86\0" },
-  { 0xf92e, "\x51\xb7\0" },
-  { 0xf92f, "\x52\xde\0" },
-  { 0xf930, "\x64\xc4\0" },
-  { 0xf931, "\x6a\xd3\0" },
-  { 0xf932, "\x72\x10\0" },
-  { 0xf933, "\x76\xe7\0" },
-  { 0xf934, "\x80\x01\0" },
-  { 0xf935, "\x86\x06\0" },
-  { 0xf936, "\x86\x5c\0" },
-  { 0xf937, "\x8d\xef\0" },
-  { 0xf938, "\x97\x32\0" },
-  { 0xf939, "\x9b\x6f\0" },
-  { 0xf93a, "\x9d\xfa\0" },
-  { 0xf93b, "\x78\x8c\0" },
-  { 0xf93c, "\x79\x7f\0" },
-  { 0xf93d, "\x7d\xa0\0" },
-  { 0xf93e, "\x83\xc9\0" },
-  { 0xf93f, "\x93\x04\0" },
-  { 0xf940, "\x9e\x7f\0" },
-  { 0xf941, "\x8a\xd6\0" },
-  { 0xf942, "\x58\xdf\0" },
-  { 0xf943, "\x5f\x04\0" },
-  { 0xf944, "\x7c\x60\0" },
-  { 0xf945, "\x80\x7e\0" },
-  { 0xf946, "\x72\x62\0" },
-  { 0xf947, "\x78\xca\0" },
-  { 0xf948, "\x8c\xc2\0" },
-  { 0xf949, "\x96\xf7\0" },
-  { 0xf94a, "\x58\xd8\0" },
-  { 0xf94b, "\x5c\x62\0" },
-  { 0xf94c, "\x6a\x13\0" },
-  { 0xf94d, "\x6d\xda\0" },
-  { 0xf94e, "\x6f\x0f\0" },
-  { 0xf94f, "\x7d\x2f\0" },
-  { 0xf950, "\x7e\x37\0" },
-  { 0xf951, "\x96\xfb\0" },
-  { 0xf952, "\x52\xd2\0" },
-  { 0xf953, "\x80\x8b\0" },
-  { 0xf954, "\x51\xdc\0" },
-  { 0xf955, "\x51\xcc\0" },
-  { 0xf956, "\x7a\x1c\0" },
-  { 0xf957, "\x7d\xbe\0" },
-  { 0xf958, "\x83\xf1\0" },
-  { 0xf959, "\x96\x75\0" },
-  { 0xf95a, "\x8b\x80\0" },
-  { 0xf95b, "\x62\xcf\0" },
-  { 0xf95c, "\x6a\x02\0" },
-  { 0xf95d, "\x8a\xfe\0" },
-  { 0xf95e, "\x4e\x39\0" },
-  { 0xf95f, "\x5b\xe7\0" },
-  { 0xf960, "\x60\x12\0" },
-  { 0xf961, "\x73\x87\0" },
-  { 0xf962, "\x75\x70\0" },
-  { 0xf963, "\x53\x17\0" },
-  { 0xf964, "\x78\xfb\0" },
-  { 0xf965, "\x4f\xbf\0" },
-  { 0xf966, "\x5f\xa9\0" },
-  { 0xf967, "\x4e\x0d\0" },
-  { 0xf968, "\x6c\xcc\0" },
-  { 0xf969, "\x65\x78\0" },
-  { 0xf96a, "\x7d\x22\0" },
-  { 0xf96b, "\x53\xc3\0" },
-  { 0xf96c, "\x58\x5e\0" },
-  { 0xf96d, "\x77\x01\0" },
-  { 0xf96e, "\x84\x49\0" },
-  { 0xf96f, "\x8a\xaa\0" },
-  { 0xf970, "\x6b\xba\0" },
-  { 0xf971, "\x8f\xb0\0" },
-  { 0xf972, "\x6c\x88\0" },
-  { 0xf973, "\x62\xfe\0" },
-  { 0xf974, "\x82\xe5\0" },
-  { 0xf975, "\x63\xa0\0" },
-  { 0xf976, "\x75\x65\0" },
-  { 0xf977, "\x4e\xae\0" },
-  { 0xf978, "\x51\x69\0" },
-  { 0xf979, "\x51\xc9\0" },
-  { 0xf97a, "\x68\x81\0" },
-  { 0xf97b, "\x7c\xe7\0" },
-  { 0xf97c, "\x82\x6f\0" },
-  { 0xf97d, "\x8a\xd2\0" },
-  { 0xf97e, "\x91\xcf\0" },
-  { 0xf97f, "\x52\xf5\0" },
-  { 0xf980, "\x54\x42\0" },
-  { 0xf981, "\x59\x73\0" },
-  { 0xf982, "\x5e\xec\0" },
-  { 0xf983, "\x65\xc5\0" },
-  { 0xf984, "\x6f\xfe\0" },
-  { 0xf985, "\x79\x2a\0" },
-  { 0xf986, "\x95\xad\0" },
-  { 0xf987, "\x9a\x6a\0" },
-  { 0xf988, "\x9e\x97\0" },
-  { 0xf989, "\x9e\xce\0" },
-  { 0xf98a, "\x52\x9b\0" },
-  { 0xf98b, "\x66\xc6\0" },
-  { 0xf98c, "\x6b\x77\0" },
-  { 0xf98d, "\x8f\x62\0" },
-  { 0xf98e, "\x5e\x74\0" },
-  { 0xf98f, "\x61\x90\0" },
-  { 0xf990, "\x62\x00\0" },
-  { 0xf991, "\x64\x9a\0" },
-  { 0xf992, "\x6f\x23\0" },
-  { 0xf993, "\x71\x49\0" },
-  { 0xf994, "\x74\x89\0" },
-  { 0xf995, "\x79\xca\0" },
-  { 0xf996, "\x7d\xf4\0" },
-  { 0xf997, "\x80\x6f\0" },
-  { 0xf998, "\x8f\x26\0" },
-  { 0xf999, "\x84\xee\0" },
-  { 0xf99a, "\x90\x23\0" },
-  { 0xf99b, "\x93\x4a\0" },
-  { 0xf99c, "\x52\x17\0" },
-  { 0xf99d, "\x52\xa3\0" },
-  { 0xf99e, "\x54\xbd\0" },
-  { 0xf99f, "\x70\xc8\0" },
-  { 0xf9a0, "\x88\xc2\0" },
-  { 0xf9a1, "\x8a\xaa\0" },
-  { 0xf9a2, "\x5e\xc9\0" },
-  { 0xf9a3, "\x5f\xf5\0" },
-  { 0xf9a4, "\x63\x7b\0" },
-  { 0xf9a5, "\x6b\xae\0" },
-  { 0xf9a6, "\x7c\x3e\0" },
-  { 0xf9a7, "\x73\x75\0" },
-  { 0xf9a8, "\x4e\xe4\0" },
-  { 0xf9a9, "\x56\xf9\0" },
-  { 0xf9aa, "\x5b\xe7\0" },
-  { 0xf9ab, "\x5d\xba\0" },
-  { 0xf9ac, "\x60\x1c\0" },
-  { 0xf9ad, "\x73\xb2\0" },
-  { 0xf9ae, "\x74\x69\0" },
-  { 0xf9af, "\x7f\x9a\0" },
-  { 0xf9b0, "\x80\x46\0" },
-  { 0xf9b1, "\x92\x34\0" },
-  { 0xf9b2, "\x96\xf6\0" },
-  { 0xf9b3, "\x97\x48\0" },
-  { 0xf9b4, "\x98\x18\0" },
-  { 0xf9b5, "\x4f\x8b\0" },
-  { 0xf9b6, "\x79\xae\0" },
-  { 0xf9b7, "\x91\xb4\0" },
-  { 0xf9b8, "\x96\xb8\0" },
-  { 0xf9b9, "\x60\xe1\0" },
-  { 0xf9ba, "\x4e\x86\0" },
-  { 0xf9bb, "\x50\xda\0" },
-  { 0xf9bc, "\x5b\xee\0" },
-  { 0xf9bd, "\x5c\x3f\0" },
-  { 0xf9be, "\x65\x99\0" },
-  { 0xf9bf, "\x6a\x02\0" },
-  { 0xf9c0, "\x71\xce\0" },
-  { 0xf9c1, "\x76\x42\0" },
-  { 0xf9c2, "\x84\xfc\0" },
-  { 0xf9c3, "\x90\x7c\0" },
-  { 0xf9c4, "\x9f\x8d\0" },
-  { 0xf9c5, "\x66\x88\0" },
-  { 0xf9c6, "\x96\x2e\0" },
-  { 0xf9c7, "\x52\x89\0" },
-  { 0xf9c8, "\x67\x7b\0" },
-  { 0xf9c9, "\x67\xf3\0" },
-  { 0xf9ca, "\x6d\x41\0" },
-  { 0xf9cb, "\x6e\x9c\0" },
-  { 0xf9cc, "\x74\x09\0" },
-  { 0xf9cd, "\x75\x59\0" },
-  { 0xf9ce, "\x78\x6b\0" },
-  { 0xf9cf, "\x7d\x10\0" },
-  { 0xf9d0, "\x98\x5e\0" },
-  { 0xf9d1, "\x51\x6d\0" },
-  { 0xf9d2, "\x62\x2e\0" },
-  { 0xf9d3, "\x96\x78\0" },
-  { 0xf9d4, "\x50\x2b\0" },
-  { 0xf9d5, "\x5d\x19\0" },
-  { 0xf9d6, "\x6d\xea\0" },
-  { 0xf9d7, "\x8f\x2a\0" },
-  { 0xf9d8, "\x5f\x8b\0" },
-  { 0xf9d9, "\x61\x44\0" },
-  { 0xf9da, "\x68\x17\0" },
-  { 0xf9db, "\x73\x87\0" },
-  { 0xf9dc, "\x96\x86\0" },
-  { 0xf9dd, "\x52\x29\0" },
-  { 0xf9de, "\x54\x0f\0" },
-  { 0xf9df, "\x5c\x65\0" },
-  { 0xf9e0, "\x66\x13\0" },
-  { 0xf9e1, "\x67\x4e\0" },
-  { 0xf9e2, "\x68\xa8\0" },
-  { 0xf9e3, "\x6c\xe5\0" },
-  { 0xf9e4, "\x74\x06\0" },
-  { 0xf9e5, "\x75\xe2\0" },
-  { 0xf9e6, "\x7f\x79\0" },
-  { 0xf9e7, "\x88\xcf\0" },
-  { 0xf9e8, "\x88\xe1\0" },
-  { 0xf9e9, "\x91\xcc\0" },
-  { 0xf9ea, "\x96\xe2\0" },
-  { 0xf9eb, "\x53\x3f\0" },
-  { 0xf9ec, "\x6e\xba\0" },
-  { 0xf9ed, "\x54\x1d\0" },
-  { 0xf9ee, "\x71\xd0\0" },
-  { 0xf9ef, "\x74\x98\0" },
-  { 0xf9f0, "\x85\xfa\0" },
-  { 0xf9f1, "\x96\xa3\0" },
-  { 0xf9f2, "\x9c\x57\0" },
-  { 0xf9f3, "\x9e\x9f\0" },
-  { 0xf9f4, "\x67\x97\0" },
-  { 0xf9f5, "\x6d\xcb\0" },
-  { 0xf9f6, "\x81\xe8\0" },
-  { 0xf9f7, "\x7a\xcb\0" },
-  { 0xf9f8, "\x7b\x20\0" },
-  { 0xf9f9, "\x7c\x92\0" },
-  { 0xf9fa, "\x72\xc0\0" },
-  { 0xf9fb, "\x70\x99\0" },
-  { 0xf9fc, "\x8b\x58\0" },
-  { 0xf9fd, "\x4e\xc0\0" },
-  { 0xf9fe, "\x83\x36\0" },
-  { 0xf9ff, "\x52\x3a\0" },
-  { 0xfa00, "\x52\x07\0" },
-  { 0xfa01, "\x5e\xa6\0" },
-  { 0xfa02, "\x62\xd3\0" },
-  { 0xfa03, "\x7c\xd6\0" },
-  { 0xfa04, "\x5b\x85\0" },
-  { 0xfa05, "\x6d\x1e\0" },
-  { 0xfa06, "\x66\xb4\0" },
-  { 0xfa07, "\x8f\x3b\0" },
-  { 0xfa08, "\x88\x4c\0" },
-  { 0xfa09, "\x96\x4d\0" },
-  { 0xfa0a, "\x89\x8b\0" },
-  { 0xfa0b, "\x5e\xd3\0" },
-  { 0xfa0c, "\x51\x40\0" },
-  { 0xfa0d, "\x55\xc0\0" },
-  { 0xfa10, "\x58\x5a\0" },
-  { 0xfa12, "\x66\x74\0" },
-  { 0xfa15, "\x51\xde\0" },
-  { 0xfa16, "\x73\x2a\0" },
-  { 0xfa17, "\x76\xca\0" },
-  { 0xfa18, "\x79\x3c\0" },
-  { 0xfa19, "\x79\x5e\0" },
-  { 0xfa1a, "\x79\x65\0" },
-  { 0xfa1b, "\x79\x8f\0" },
-  { 0xfa1c, "\x97\x56\0" },
-  { 0xfa1d, "\x7c\xbe\0" },
-  { 0xfa1e, "\x7f\xbd\0" },
-  { 0xfa20, "\x86\x12\0" },
-  { 0xfa22, "\x8a\xf8\0" },
-  { 0xfa25, "\x90\x38\0" },
-  { 0xfa26, "\x90\xfd\0" },
-  { 0xfa2a, "\x98\xef\0" },
-  { 0xfa2b, "\x98\xfc\0" },
-  { 0xfa2c, "\x99\x28\0" },
-  { 0xfa2d, "\x9d\xb4\0" },
-  { 0xfb1d, "\x05\xd9\x05\xb4\0" },
-  { 0xfb1f, "\x05\xf2\x05\xb7\0" },
-  { 0xfb2a, "\x05\xe9\x05\xc1\0" },
-  { 0xfb2b, "\x05\xe9\x05\xc2\0" },
-  { 0xfb2c, "\x05\xe9\x05\xbc\x05\xc1\0" },
-  { 0xfb2d, "\x05\xe9\x05\xbc\x05\xc2\0" },
-  { 0xfb2e, "\x05\xd0\x05\xb7\0" },
-  { 0xfb2f, "\x05\xd0\x05\xb8\0" },
-  { 0xfb30, "\x05\xd0\x05\xbc\0" },
-  { 0xfb31, "\x05\xd1\x05\xbc\0" },
-  { 0xfb32, "\x05\xd2\x05\xbc\0" },
-  { 0xfb33, "\x05\xd3\x05\xbc\0" },
-  { 0xfb34, "\x05\xd4\x05\xbc\0" },
-  { 0xfb35, "\x05\xd5\x05\xbc\0" },
-  { 0xfb36, "\x05\xd6\x05\xbc\0" },
-  { 0xfb38, "\x05\xd8\x05\xbc\0" },
-  { 0xfb39, "\x05\xd9\x05\xbc\0" },
-  { 0xfb3a, "\x05\xda\x05\xbc\0" },
-  { 0xfb3b, "\x05\xdb\x05\xbc\0" },
-  { 0xfb3c, "\x05\xdc\x05\xbc\0" },
-  { 0xfb3e, "\x05\xde\x05\xbc\0" },
-  { 0xfb40, "\x05\xe0\x05\xbc\0" },
-  { 0xfb41, "\x05\xe1\x05\xbc\0" },
-  { 0xfb43, "\x05\xe3\x05\xbc\0" },
-  { 0xfb44, "\x05\xe4\x05\xbc\0" },
-  { 0xfb46, "\x05\xe6\x05\xbc\0" },
-  { 0xfb47, "\x05\xe7\x05\xbc\0" },
-  { 0xfb48, "\x05\xe8\x05\xbc\0" },
-  { 0xfb49, "\x05\xe9\x05\xbc\0" },
-  { 0xfb4a, "\x05\xea\x05\xbc\0" },
-  { 0xfb4b, "\x05\xd5\x05\xb9\0" },
-  { 0xfb4c, "\x05\xd1\x05\xbf\0" },
-  { 0xfb4d, "\x05\xdb\x05\xbf\0" },
-  { 0xfb4e, "\x05\xe4\x05\xbf\0" }
+  { 0x00a0, 255, 0, "\x00\x20\0" },
+  { 0x00a8, 255, 0, "\x00\x20\x03\x08\0" },
+  { 0x00aa, 255, 0, "\x00\x61\0" },
+  { 0x00af, 255, 0, "\x00\x20\x03\x04\0" },
+  { 0x00b2, 255, 0, "\x00\x32\0" },
+  { 0x00b3, 255, 0, "\x00\x33\0" },
+  { 0x00b4, 255, 0, "\x00\x20\x03\x01\0" },
+  { 0x00b5, 255, 0, "\x03\xbc\0" },
+  { 0x00b8, 255, 0, "\x00\x20\x03\x27\0" },
+  { 0x00b9, 255, 0, "\x00\x31\0" },
+  { 0x00ba, 255, 0, "\x00\x6f\0" },
+  { 0x00bc, 255, 0, "\x00\x31\x20\x44\x00\x34\0" },
+  { 0x00bd, 255, 0, "\x00\x31\x20\x44\x00\x32\0" },
+  { 0x00be, 255, 0, "\x00\x33\x20\x44\x00\x34\0" },
+  { 0x00c0, 0, 255, "\x00\x41\x03\x00\0" },
+  { 0x00c1, 0, 255, "\x00\x41\x03\x01\0" },
+  { 0x00c2, 0, 255, "\x00\x41\x03\x02\0" },
+  { 0x00c3, 0, 255, "\x00\x41\x03\x03\0" },
+  { 0x00c4, 0, 255, "\x00\x41\x03\x08\0" },
+  { 0x00c5, 0, 255, "\x00\x41\x03\x0a\0" },
+  { 0x00c7, 0, 255, "\x00\x43\x03\x27\0" },
+  { 0x00c8, 0, 255, "\x00\x45\x03\x00\0" },
+  { 0x00c9, 0, 255, "\x00\x45\x03\x01\0" },
+  { 0x00ca, 0, 255, "\x00\x45\x03\x02\0" },
+  { 0x00cb, 0, 255, "\x00\x45\x03\x08\0" },
+  { 0x00cc, 0, 255, "\x00\x49\x03\x00\0" },
+  { 0x00cd, 0, 255, "\x00\x49\x03\x01\0" },
+  { 0x00ce, 0, 255, "\x00\x49\x03\x02\0" },
+  { 0x00cf, 0, 255, "\x00\x49\x03\x08\0" },
+  { 0x00d1, 0, 255, "\x00\x4e\x03\x03\0" },
+  { 0x00d2, 0, 255, "\x00\x4f\x03\x00\0" },
+  { 0x00d3, 0, 255, "\x00\x4f\x03\x01\0" },
+  { 0x00d4, 0, 255, "\x00\x4f\x03\x02\0" },
+  { 0x00d5, 0, 255, "\x00\x4f\x03\x03\0" },
+  { 0x00d6, 0, 255, "\x00\x4f\x03\x08\0" },
+  { 0x00d9, 0, 255, "\x00\x55\x03\x00\0" },
+  { 0x00da, 0, 255, "\x00\x55\x03\x01\0" },
+  { 0x00db, 0, 255, "\x00\x55\x03\x02\0" },
+  { 0x00dc, 0, 255, "\x00\x55\x03\x08\0" },
+  { 0x00dd, 0, 255, "\x00\x59\x03\x01\0" },
+  { 0x00e0, 0, 255, "\x00\x61\x03\x00\0" },
+  { 0x00e1, 0, 255, "\x00\x61\x03\x01\0" },
+  { 0x00e2, 0, 255, "\x00\x61\x03\x02\0" },
+  { 0x00e3, 0, 255, "\x00\x61\x03\x03\0" },
+  { 0x00e4, 0, 255, "\x00\x61\x03\x08\0" },
+  { 0x00e5, 0, 255, "\x00\x61\x03\x0a\0" },
+  { 0x00e7, 0, 255, "\x00\x63\x03\x27\0" },
+  { 0x00e8, 0, 255, "\x00\x65\x03\x00\0" },
+  { 0x00e9, 0, 255, "\x00\x65\x03\x01\0" },
+  { 0x00ea, 0, 255, "\x00\x65\x03\x02\0" },
+  { 0x00eb, 0, 255, "\x00\x65\x03\x08\0" },
+  { 0x00ec, 0, 255, "\x00\x69\x03\x00\0" },
+  { 0x00ed, 0, 255, "\x00\x69\x03\x01\0" },
+  { 0x00ee, 0, 255, "\x00\x69\x03\x02\0" },
+  { 0x00ef, 0, 255, "\x00\x69\x03\x08\0" },
+  { 0x00f1, 0, 255, "\x00\x6e\x03\x03\0" },
+  { 0x00f2, 0, 255, "\x00\x6f\x03\x00\0" },
+  { 0x00f3, 0, 255, "\x00\x6f\x03\x01\0" },
+  { 0x00f4, 0, 255, "\x00\x6f\x03\x02\0" },
+  { 0x00f5, 0, 255, "\x00\x6f\x03\x03\0" },
+  { 0x00f6, 0, 255, "\x00\x6f\x03\x08\0" },
+  { 0x00f9, 0, 255, "\x00\x75\x03\x00\0" },
+  { 0x00fa, 0, 255, "\x00\x75\x03\x01\0" },
+  { 0x00fb, 0, 255, "\x00\x75\x03\x02\0" },
+  { 0x00fc, 0, 255, "\x00\x75\x03\x08\0" },
+  { 0x00fd, 0, 255, "\x00\x79\x03\x01\0" },
+  { 0x00ff, 0, 255, "\x00\x79\x03\x08\0" },
+  { 0x0100, 0, 255, "\x00\x41\x03\x04\0" },
+  { 0x0101, 0, 255, "\x00\x61\x03\x04\0" },
+  { 0x0102, 0, 255, "\x00\x41\x03\x06\0" },
+  { 0x0103, 0, 255, "\x00\x61\x03\x06\0" },
+  { 0x0104, 0, 255, "\x00\x41\x03\x28\0" },
+  { 0x0105, 0, 255, "\x00\x61\x03\x28\0" },
+  { 0x0106, 0, 255, "\x00\x43\x03\x01\0" },
+  { 0x0107, 0, 255, "\x00\x63\x03\x01\0" },
+  { 0x0108, 0, 255, "\x00\x43\x03\x02\0" },
+  { 0x0109, 0, 255, "\x00\x63\x03\x02\0" },
+  { 0x010a, 0, 255, "\x00\x43\x03\x07\0" },
+  { 0x010b, 0, 255, "\x00\x63\x03\x07\0" },
+  { 0x010c, 0, 255, "\x00\x43\x03\x0c\0" },
+  { 0x010d, 0, 255, "\x00\x63\x03\x0c\0" },
+  { 0x010e, 0, 255, "\x00\x44\x03\x0c\0" },
+  { 0x010f, 0, 255, "\x00\x64\x03\x0c\0" },
+  { 0x0112, 0, 255, "\x00\x45\x03\x04\0" },
+  { 0x0113, 0, 255, "\x00\x65\x03\x04\0" },
+  { 0x0114, 0, 255, "\x00\x45\x03\x06\0" },
+  { 0x0115, 0, 255, "\x00\x65\x03\x06\0" },
+  { 0x0116, 0, 255, "\x00\x45\x03\x07\0" },
+  { 0x0117, 0, 255, "\x00\x65\x03\x07\0" },
+  { 0x0118, 0, 255, "\x00\x45\x03\x28\0" },
+  { 0x0119, 0, 255, "\x00\x65\x03\x28\0" },
+  { 0x011a, 0, 255, "\x00\x45\x03\x0c\0" },
+  { 0x011b, 0, 255, "\x00\x65\x03\x0c\0" },
+  { 0x011c, 0, 255, "\x00\x47\x03\x02\0" },
+  { 0x011d, 0, 255, "\x00\x67\x03\x02\0" },
+  { 0x011e, 0, 255, "\x00\x47\x03\x06\0" },
+  { 0x011f, 0, 255, "\x00\x67\x03\x06\0" },
+  { 0x0120, 0, 255, "\x00\x47\x03\x07\0" },
+  { 0x0121, 0, 255, "\x00\x67\x03\x07\0" },
+  { 0x0122, 0, 255, "\x00\x47\x03\x27\0" },
+  { 0x0123, 0, 255, "\x00\x67\x03\x27\0" },
+  { 0x0124, 0, 255, "\x00\x48\x03\x02\0" },
+  { 0x0125, 0, 255, "\x00\x68\x03\x02\0" },
+  { 0x0128, 0, 255, "\x00\x49\x03\x03\0" },
+  { 0x0129, 0, 255, "\x00\x69\x03\x03\0" },
+  { 0x012a, 0, 255, "\x00\x49\x03\x04\0" },
+  { 0x012b, 0, 255, "\x00\x69\x03\x04\0" },
+  { 0x012c, 0, 255, "\x00\x49\x03\x06\0" },
+  { 0x012d, 0, 255, "\x00\x69\x03\x06\0" },
+  { 0x012e, 0, 255, "\x00\x49\x03\x28\0" },
+  { 0x012f, 0, 255, "\x00\x69\x03\x28\0" },
+  { 0x0130, 0, 255, "\x00\x49\x03\x07\0" },
+  { 0x0132, 255, 0, "\x00\x49\x00\x4a\0" },
+  { 0x0133, 255, 0, "\x00\x69\x00\x6a\0" },
+  { 0x0134, 0, 255, "\x00\x4a\x03\x02\0" },
+  { 0x0135, 0, 255, "\x00\x6a\x03\x02\0" },
+  { 0x0136, 0, 255, "\x00\x4b\x03\x27\0" },
+  { 0x0137, 0, 255, "\x00\x6b\x03\x27\0" },
+  { 0x0139, 0, 255, "\x00\x4c\x03\x01\0" },
+  { 0x013a, 0, 255, "\x00\x6c\x03\x01\0" },
+  { 0x013b, 0, 255, "\x00\x4c\x03\x27\0" },
+  { 0x013c, 0, 255, "\x00\x6c\x03\x27\0" },
+  { 0x013d, 0, 255, "\x00\x4c\x03\x0c\0" },
+  { 0x013e, 0, 255, "\x00\x6c\x03\x0c\0" },
+  { 0x013f, 255, 0, "\x00\x4c\x00\xb7\0" },
+  { 0x0140, 255, 0, "\x00\x6c\x00\xb7\0" },
+  { 0x0143, 0, 255, "\x00\x4e\x03\x01\0" },
+  { 0x0144, 0, 255, "\x00\x6e\x03\x01\0" },
+  { 0x0145, 0, 255, "\x00\x4e\x03\x27\0" },
+  { 0x0146, 0, 255, "\x00\x6e\x03\x27\0" },
+  { 0x0147, 0, 255, "\x00\x4e\x03\x0c\0" },
+  { 0x0148, 0, 255, "\x00\x6e\x03\x0c\0" },
+  { 0x0149, 255, 0, "\x02\xbc\x00\x6e\0" },
+  { 0x014c, 0, 255, "\x00\x4f\x03\x04\0" },
+  { 0x014d, 0, 255, "\x00\x6f\x03\x04\0" },
+  { 0x014e, 0, 255, "\x00\x4f\x03\x06\0" },
+  { 0x014f, 0, 255, "\x00\x6f\x03\x06\0" },
+  { 0x0150, 0, 255, "\x00\x4f\x03\x0b\0" },
+  { 0x0151, 0, 255, "\x00\x6f\x03\x0b\0" },
+  { 0x0154, 0, 255, "\x00\x52\x03\x01\0" },
+  { 0x0155, 0, 255, "\x00\x72\x03\x01\0" },
+  { 0x0156, 0, 255, "\x00\x52\x03\x27\0" },
+  { 0x0157, 0, 255, "\x00\x72\x03\x27\0" },
+  { 0x0158, 0, 255, "\x00\x52\x03\x0c\0" },
+  { 0x0159, 0, 255, "\x00\x72\x03\x0c\0" },
+  { 0x015a, 0, 255, "\x00\x53\x03\x01\0" },
+  { 0x015b, 0, 255, "\x00\x73\x03\x01\0" },
+  { 0x015c, 0, 255, "\x00\x53\x03\x02\0" },
+  { 0x015d, 0, 255, "\x00\x73\x03\x02\0" },
+  { 0x015e, 0, 255, "\x00\x53\x03\x27\0" },
+  { 0x015f, 0, 255, "\x00\x73\x03\x27\0" },
+  { 0x0160, 0, 255, "\x00\x53\x03\x0c\0" },
+  { 0x0161, 0, 255, "\x00\x73\x03\x0c\0" },
+  { 0x0162, 0, 255, "\x00\x54\x03\x27\0" },
+  { 0x0163, 0, 255, "\x00\x74\x03\x27\0" },
+  { 0x0164, 0, 255, "\x00\x54\x03\x0c\0" },
+  { 0x0165, 0, 255, "\x00\x74\x03\x0c\0" },
+  { 0x0168, 0, 255, "\x00\x55\x03\x03\0" },
+  { 0x0169, 0, 255, "\x00\x75\x03\x03\0" },
+  { 0x016a, 0, 255, "\x00\x55\x03\x04\0" },
+  { 0x016b, 0, 255, "\x00\x75\x03\x04\0" },
+  { 0x016c, 0, 255, "\x00\x55\x03\x06\0" },
+  { 0x016d, 0, 255, "\x00\x75\x03\x06\0" },
+  { 0x016e, 0, 255, "\x00\x55\x03\x0a\0" },
+  { 0x016f, 0, 255, "\x00\x75\x03\x0a\0" },
+  { 0x0170, 0, 255, "\x00\x55\x03\x0b\0" },
+  { 0x0171, 0, 255, "\x00\x75\x03\x0b\0" },
+  { 0x0172, 0, 255, "\x00\x55\x03\x28\0" },
+  { 0x0173, 0, 255, "\x00\x75\x03\x28\0" },
+  { 0x0174, 0, 255, "\x00\x57\x03\x02\0" },
+  { 0x0175, 0, 255, "\x00\x77\x03\x02\0" },
+  { 0x0176, 0, 255, "\x00\x59\x03\x02\0" },
+  { 0x0177, 0, 255, "\x00\x79\x03\x02\0" },
+  { 0x0178, 0, 255, "\x00\x59\x03\x08\0" },
+  { 0x0179, 0, 255, "\x00\x5a\x03\x01\0" },
+  { 0x017a, 0, 255, "\x00\x7a\x03\x01\0" },
+  { 0x017b, 0, 255, "\x00\x5a\x03\x07\0" },
+  { 0x017c, 0, 255, "\x00\x7a\x03\x07\0" },
+  { 0x017d, 0, 255, "\x00\x5a\x03\x0c\0" },
+  { 0x017e, 0, 255, "\x00\x7a\x03\x0c\0" },
+  { 0x017f, 255, 0, "\x00\x73\0" },
+  { 0x01a0, 0, 255, "\x00\x4f\x03\x1b\0" },
+  { 0x01a1, 0, 255, "\x00\x6f\x03\x1b\0" },
+  { 0x01af, 0, 255, "\x00\x55\x03\x1b\0" },
+  { 0x01b0, 0, 255, "\x00\x75\x03\x1b\0" },
+  { 0x01c4, 255, 0, "\x00\x44\x00\x5a\x03\x0c\0" },
+  { 0x01c5, 255, 0, "\x00\x44\x00\x7a\x03\x0c\0" },
+  { 0x01c6, 255, 0, "\x00\x64\x00\x7a\x03\x0c\0" },
+  { 0x01c7, 255, 0, "\x00\x4c\x00\x4a\0" },
+  { 0x01c8, 255, 0, "\x00\x4c\x00\x6a\0" },
+  { 0x01c9, 255, 0, "\x00\x6c\x00\x6a\0" },
+  { 0x01ca, 255, 0, "\x00\x4e\x00\x4a\0" },
+  { 0x01cb, 255, 0, "\x00\x4e\x00\x6a\0" },
+  { 0x01cc, 255, 0, "\x00\x6e\x00\x6a\0" },
+  { 0x01cd, 0, 255, "\x00\x41\x03\x0c\0" },
+  { 0x01ce, 0, 255, "\x00\x61\x03\x0c\0" },
+  { 0x01cf, 0, 255, "\x00\x49\x03\x0c\0" },
+  { 0x01d0, 0, 255, "\x00\x69\x03\x0c\0" },
+  { 0x01d1, 0, 255, "\x00\x4f\x03\x0c\0" },
+  { 0x01d2, 0, 255, "\x00\x6f\x03\x0c\0" },
+  { 0x01d3, 0, 255, "\x00\x55\x03\x0c\0" },
+  { 0x01d4, 0, 255, "\x00\x75\x03\x0c\0" },
+  { 0x01d5, 0, 255, "\x00\x55\x03\x08\x03\x04\0" },
+  { 0x01d6, 0, 255, "\x00\x75\x03\x08\x03\x04\0" },
+  { 0x01d7, 0, 255, "\x00\x55\x03\x08\x03\x01\0" },
+  { 0x01d8, 0, 255, "\x00\x75\x03\x08\x03\x01\0" },
+  { 0x01d9, 0, 255, "\x00\x55\x03\x08\x03\x0c\0" },
+  { 0x01da, 0, 255, "\x00\x75\x03\x08\x03\x0c\0" },
+  { 0x01db, 0, 255, "\x00\x55\x03\x08\x03\x00\0" },
+  { 0x01dc, 0, 255, "\x00\x75\x03\x08\x03\x00\0" },
+  { 0x01de, 0, 255, "\x00\x41\x03\x08\x03\x04\0" },
+  { 0x01df, 0, 255, "\x00\x61\x03\x08\x03\x04\0" },
+  { 0x01e0, 0, 255, "\x00\x41\x03\x07\x03\x04\0" },
+  { 0x01e1, 0, 255, "\x00\x61\x03\x07\x03\x04\0" },
+  { 0x01e2, 0, 255, "\x00\xc6\x03\x04\0" },
+  { 0x01e3, 0, 255, "\x00\xe6\x03\x04\0" },
+  { 0x01e6, 0, 255, "\x00\x47\x03\x0c\0" },
+  { 0x01e7, 0, 255, "\x00\x67\x03\x0c\0" },
+  { 0x01e8, 0, 255, "\x00\x4b\x03\x0c\0" },
+  { 0x01e9, 0, 255, "\x00\x6b\x03\x0c\0" },
+  { 0x01ea, 0, 255, "\x00\x4f\x03\x28\0" },
+  { 0x01eb, 0, 255, "\x00\x6f\x03\x28\0" },
+  { 0x01ec, 0, 255, "\x00\x4f\x03\x28\x03\x04\0" },
+  { 0x01ed, 0, 255, "\x00\x6f\x03\x28\x03\x04\0" },
+  { 0x01ee, 0, 255, "\x01\xb7\x03\x0c\0" },
+  { 0x01ef, 0, 255, "\x02\x92\x03\x0c\0" },
+  { 0x01f0, 0, 255, "\x00\x6a\x03\x0c\0" },
+  { 0x01f1, 255, 0, "\x00\x44\x00\x5a\0" },
+  { 0x01f2, 255, 0, "\x00\x44\x00\x7a\0" },
+  { 0x01f3, 255, 0, "\x00\x64\x00\x7a\0" },
+  { 0x01f4, 0, 255, "\x00\x47\x03\x01\0" },
+  { 0x01f5, 0, 255, "\x00\x67\x03\x01\0" },
+  { 0x01f8, 0, 255, "\x00\x4e\x03\x00\0" },
+  { 0x01f9, 0, 255, "\x00\x6e\x03\x00\0" },
+  { 0x01fa, 0, 255, "\x00\x41\x03\x0a\x03\x01\0" },
+  { 0x01fb, 0, 255, "\x00\x61\x03\x0a\x03\x01\0" },
+  { 0x01fc, 0, 255, "\x00\xc6\x03\x01\0" },
+  { 0x01fd, 0, 255, "\x00\xe6\x03\x01\0" },
+  { 0x01fe, 0, 255, "\x00\xd8\x03\x01\0" },
+  { 0x01ff, 0, 255, "\x00\xf8\x03\x01\0" },
+  { 0x0200, 0, 255, "\x00\x41\x03\x0f\0" },
+  { 0x0201, 0, 255, "\x00\x61\x03\x0f\0" },
+  { 0x0202, 0, 255, "\x00\x41\x03\x11\0" },
+  { 0x0203, 0, 255, "\x00\x61\x03\x11\0" },
+  { 0x0204, 0, 255, "\x00\x45\x03\x0f\0" },
+  { 0x0205, 0, 255, "\x00\x65\x03\x0f\0" },
+  { 0x0206, 0, 255, "\x00\x45\x03\x11\0" },
+  { 0x0207, 0, 255, "\x00\x65\x03\x11\0" },
+  { 0x0208, 0, 255, "\x00\x49\x03\x0f\0" },
+  { 0x0209, 0, 255, "\x00\x69\x03\x0f\0" },
+  { 0x020a, 0, 255, "\x00\x49\x03\x11\0" },
+  { 0x020b, 0, 255, "\x00\x69\x03\x11\0" },
+  { 0x020c, 0, 255, "\x00\x4f\x03\x0f\0" },
+  { 0x020d, 0, 255, "\x00\x6f\x03\x0f\0" },
+  { 0x020e, 0, 255, "\x00\x4f\x03\x11\0" },
+  { 0x020f, 0, 255, "\x00\x6f\x03\x11\0" },
+  { 0x0210, 0, 255, "\x00\x52\x03\x0f\0" },
+  { 0x0211, 0, 255, "\x00\x72\x03\x0f\0" },
+  { 0x0212, 0, 255, "\x00\x52\x03\x11\0" },
+  { 0x0213, 0, 255, "\x00\x72\x03\x11\0" },
+  { 0x0214, 0, 255, "\x00\x55\x03\x0f\0" },
+  { 0x0215, 0, 255, "\x00\x75\x03\x0f\0" },
+  { 0x0216, 0, 255, "\x00\x55\x03\x11\0" },
+  { 0x0217, 0, 255, "\x00\x75\x03\x11\0" },
+  { 0x0218, 0, 255, "\x00\x53\x03\x26\0" },
+  { 0x0219, 0, 255, "\x00\x73\x03\x26\0" },
+  { 0x021a, 0, 255, "\x00\x54\x03\x26\0" },
+  { 0x021b, 0, 255, "\x00\x74\x03\x26\0" },
+  { 0x021e, 0, 255, "\x00\x48\x03\x0c\0" },
+  { 0x021f, 0, 255, "\x00\x68\x03\x0c\0" },
+  { 0x0226, 0, 255, "\x00\x41\x03\x07\0" },
+  { 0x0227, 0, 255, "\x00\x61\x03\x07\0" },
+  { 0x0228, 0, 255, "\x00\x45\x03\x27\0" },
+  { 0x0229, 0, 255, "\x00\x65\x03\x27\0" },
+  { 0x022a, 0, 255, "\x00\x4f\x03\x08\x03\x04\0" },
+  { 0x022b, 0, 255, "\x00\x6f\x03\x08\x03\x04\0" },
+  { 0x022c, 0, 255, "\x00\x4f\x03\x03\x03\x04\0" },
+  { 0x022d, 0, 255, "\x00\x6f\x03\x03\x03\x04\0" },
+  { 0x022e, 0, 255, "\x00\x4f\x03\x07\0" },
+  { 0x022f, 0, 255, "\x00\x6f\x03\x07\0" },
+  { 0x0230, 0, 255, "\x00\x4f\x03\x07\x03\x04\0" },
+  { 0x0231, 0, 255, "\x00\x6f\x03\x07\x03\x04\0" },
+  { 0x0232, 0, 255, "\x00\x59\x03\x04\0" },
+  { 0x0233, 0, 255, "\x00\x79\x03\x04\0" },
+  { 0x02b0, 255, 0, "\x00\x68\0" },
+  { 0x02b1, 255, 0, "\x02\x66\0" },
+  { 0x02b2, 255, 0, "\x00\x6a\0" },
+  { 0x02b3, 255, 0, "\x00\x72\0" },
+  { 0x02b4, 255, 0, "\x02\x79\0" },
+  { 0x02b5, 255, 0, "\x02\x7b\0" },
+  { 0x02b6, 255, 0, "\x02\x81\0" },
+  { 0x02b7, 255, 0, "\x00\x77\0" },
+  { 0x02b8, 255, 0, "\x00\x79\0" },
+  { 0x02d8, 255, 0, "\x00\x20\x03\x06\0" },
+  { 0x02d9, 255, 0, "\x00\x20\x03\x07\0" },
+  { 0x02da, 255, 0, "\x00\x20\x03\x0a\0" },
+  { 0x02db, 255, 0, "\x00\x20\x03\x28\0" },
+  { 0x02dc, 255, 0, "\x00\x20\x03\x03\0" },
+  { 0x02dd, 255, 0, "\x00\x20\x03\x0b\0" },
+  { 0x02e0, 255, 0, "\x02\x63\0" },
+  { 0x02e1, 255, 0, "\x00\x6c\0" },
+  { 0x02e2, 255, 0, "\x00\x73\0" },
+  { 0x02e3, 255, 0, "\x00\x78\0" },
+  { 0x02e4, 255, 0, "\x02\x95\0" },
+  { 0x0340, 0, 255, "\x03\x00\0" },
+  { 0x0341, 0, 255, "\x03\x01\0" },
+  { 0x0343, 0, 255, "\x03\x13\0" },
+  { 0x0344, 0, 255, "\x03\x08\x03\x01\0" },
+  { 0x0374, 0, 255, "\x02\xb9\0" },
+  { 0x037a, 255, 0, "\x00\x20\x03\x45\0" },
+  { 0x037e, 0, 255, "\x00\x3b\0" },
+  { 0x0384, 255, 0, "\x00\x20\x03\x01\0" },
+  { 0x0385, 0, 6, "\x00\xa8\x03\x01\x00\x00\x00\x20\x03\x08\x03\x01\0" },
+  { 0x0386, 0, 255, "\x03\x91\x03\x01\0" },
+  { 0x0387, 0, 255, "\x00\xb7\0" },
+  { 0x0388, 0, 255, "\x03\x95\x03\x01\0" },
+  { 0x0389, 0, 255, "\x03\x97\x03\x01\0" },
+  { 0x038a, 0, 255, "\x03\x99\x03\x01\0" },
+  { 0x038c, 0, 255, "\x03\x9f\x03\x01\0" },
+  { 0x038e, 0, 255, "\x03\xa5\x03\x01\0" },
+  { 0x038f, 0, 255, "\x03\xa9\x03\x01\0" },
+  { 0x0390, 0, 255, "\x03\xb9\x03\x08\x03\x01\0" },
+  { 0x03aa, 0, 255, "\x03\x99\x03\x08\0" },
+  { 0x03ab, 0, 255, "\x03\xa5\x03\x08\0" },
+  { 0x03ac, 0, 255, "\x03\xb1\x03\x01\0" },
+  { 0x03ad, 0, 255, "\x03\xb5\x03\x01\0" },
+  { 0x03ae, 0, 255, "\x03\xb7\x03\x01\0" },
+  { 0x03af, 0, 255, "\x03\xb9\x03\x01\0" },
+  { 0x03b0, 0, 255, "\x03\xc5\x03\x08\x03\x01\0" },
+  { 0x03ca, 0, 255, "\x03\xb9\x03\x08\0" },
+  { 0x03cb, 0, 255, "\x03\xc5\x03\x08\0" },
+  { 0x03cc, 0, 255, "\x03\xbf\x03\x01\0" },
+  { 0x03cd, 0, 255, "\x03\xc5\x03\x01\0" },
+  { 0x03ce, 0, 255, "\x03\xc9\x03\x01\0" },
+  { 0x03d0, 255, 0, "\x03\xb2\0" },
+  { 0x03d1, 255, 0, "\x03\xb8\0" },
+  { 0x03d2, 255, 0, "\x03\xa5\0" },
+  { 0x03d3, 0, 6, "\x03\xd2\x03\x01\x00\x00\x03\xa5\x03\x01\0" },
+  { 0x03d4, 0, 6, "\x03\xd2\x03\x08\x00\x00\x03\xa5\x03\x08\0" },
+  { 0x03d5, 255, 0, "\x03\xc6\0" },
+  { 0x03d6, 255, 0, "\x03\xc0\0" },
+  { 0x03f0, 255, 0, "\x03\xba\0" },
+  { 0x03f1, 255, 0, "\x03\xc1\0" },
+  { 0x03f2, 255, 0, "\x03\xc2\0" },
+  { 0x03f4, 255, 0, "\x03\x98\0" },
+  { 0x03f5, 255, 0, "\x03\xb5\0" },
+  { 0x0400, 0, 255, "\x04\x15\x03\x00\0" },
+  { 0x0401, 0, 255, "\x04\x15\x03\x08\0" },
+  { 0x0403, 0, 255, "\x04\x13\x03\x01\0" },
+  { 0x0407, 0, 255, "\x04\x06\x03\x08\0" },
+  { 0x040c, 0, 255, "\x04\x1a\x03\x01\0" },
+  { 0x040d, 0, 255, "\x04\x18\x03\x00\0" },
+  { 0x040e, 0, 255, "\x04\x23\x03\x06\0" },
+  { 0x0419, 0, 255, "\x04\x18\x03\x06\0" },
+  { 0x0439, 0, 255, "\x04\x38\x03\x06\0" },
+  { 0x0450, 0, 255, "\x04\x35\x03\x00\0" },
+  { 0x0451, 0, 255, "\x04\x35\x03\x08\0" },
+  { 0x0453, 0, 255, "\x04\x33\x03\x01\0" },
+  { 0x0457, 0, 255, "\x04\x56\x03\x08\0" },
+  { 0x045c, 0, 255, "\x04\x3a\x03\x01\0" },
+  { 0x045d, 0, 255, "\x04\x38\x03\x00\0" },
+  { 0x045e, 0, 255, "\x04\x43\x03\x06\0" },
+  { 0x0476, 0, 255, "\x04\x74\x03\x0f\0" },
+  { 0x0477, 0, 255, "\x04\x75\x03\x0f\0" },
+  { 0x04c1, 0, 255, "\x04\x16\x03\x06\0" },
+  { 0x04c2, 0, 255, "\x04\x36\x03\x06\0" },
+  { 0x04d0, 0, 255, "\x04\x10\x03\x06\0" },
+  { 0x04d1, 0, 255, "\x04\x30\x03\x06\0" },
+  { 0x04d2, 0, 255, "\x04\x10\x03\x08\0" },
+  { 0x04d3, 0, 255, "\x04\x30\x03\x08\0" },
+  { 0x04d6, 0, 255, "\x04\x15\x03\x06\0" },
+  { 0x04d7, 0, 255, "\x04\x35\x03\x06\0" },
+  { 0x04da, 0, 255, "\x04\xd8\x03\x08\0" },
+  { 0x04db, 0, 255, "\x04\xd9\x03\x08\0" },
+  { 0x04dc, 0, 255, "\x04\x16\x03\x08\0" },
+  { 0x04dd, 0, 255, "\x04\x36\x03\x08\0" },
+  { 0x04de, 0, 255, "\x04\x17\x03\x08\0" },
+  { 0x04df, 0, 255, "\x04\x37\x03\x08\0" },
+  { 0x04e2, 0, 255, "\x04\x18\x03\x04\0" },
+  { 0x04e3, 0, 255, "\x04\x38\x03\x04\0" },
+  { 0x04e4, 0, 255, "\x04\x18\x03\x08\0" },
+  { 0x04e5, 0, 255, "\x04\x38\x03\x08\0" },
+  { 0x04e6, 0, 255, "\x04\x1e\x03\x08\0" },
+  { 0x04e7, 0, 255, "\x04\x3e\x03\x08\0" },
+  { 0x04ea, 0, 255, "\x04\xe8\x03\x08\0" },
+  { 0x04eb, 0, 255, "\x04\xe9\x03\x08\0" },
+  { 0x04ec, 0, 255, "\x04\x2d\x03\x08\0" },
+  { 0x04ed, 0, 255, "\x04\x4d\x03\x08\0" },
+  { 0x04ee, 0, 255, "\x04\x23\x03\x04\0" },
+  { 0x04ef, 0, 255, "\x04\x43\x03\x04\0" },
+  { 0x04f0, 0, 255, "\x04\x23\x03\x08\0" },
+  { 0x04f1, 0, 255, "\x04\x43\x03\x08\0" },
+  { 0x04f2, 0, 255, "\x04\x23\x03\x0b\0" },
+  { 0x04f3, 0, 255, "\x04\x43\x03\x0b\0" },
+  { 0x04f4, 0, 255, "\x04\x27\x03\x08\0" },
+  { 0x04f5, 0, 255, "\x04\x47\x03\x08\0" },
+  { 0x04f8, 0, 255, "\x04\x2b\x03\x08\0" },
+  { 0x04f9, 0, 255, "\x04\x4b\x03\x08\0" },
+  { 0x0587, 255, 0, "\x05\x65\x05\x82\0" },
+  { 0x0622, 0, 255, "\x06\x27\x06\x53\0" },
+  { 0x0623, 0, 255, "\x06\x27\x06\x54\0" },
+  { 0x0624, 0, 255, "\x06\x48\x06\x54\0" },
+  { 0x0625, 0, 255, "\x06\x27\x06\x55\0" },
+  { 0x0626, 0, 255, "\x06\x4a\x06\x54\0" },
+  { 0x0675, 255, 0, "\x06\x27\x06\x74\0" },
+  { 0x0676, 255, 0, "\x06\x48\x06\x74\0" },
+  { 0x0677, 255, 0, "\x06\xc7\x06\x74\0" },
+  { 0x0678, 255, 0, "\x06\x4a\x06\x74\0" },
+  { 0x06c0, 0, 255, "\x06\xd5\x06\x54\0" },
+  { 0x06c2, 0, 255, "\x06\xc1\x06\x54\0" },
+  { 0x06d3, 0, 255, "\x06\xd2\x06\x54\0" },
+  { 0x0929, 0, 255, "\x09\x28\x09\x3c\0" },
+  { 0x0931, 0, 255, "\x09\x30\x09\x3c\0" },
+  { 0x0934, 0, 255, "\x09\x33\x09\x3c\0" },
+  { 0x0958, 0, 255, "\x09\x15\x09\x3c\0" },
+  { 0x0959, 0, 255, "\x09\x16\x09\x3c\0" },
+  { 0x095a, 0, 255, "\x09\x17\x09\x3c\0" },
+  { 0x095b, 0, 255, "\x09\x1c\x09\x3c\0" },
+  { 0x095c, 0, 255, "\x09\x21\x09\x3c\0" },
+  { 0x095d, 0, 255, "\x09\x22\x09\x3c\0" },
+  { 0x095e, 0, 255, "\x09\x2b\x09\x3c\0" },
+  { 0x095f, 0, 255, "\x09\x2f\x09\x3c\0" },
+  { 0x09cb, 0, 255, "\x09\xc7\x09\xbe\0" },
+  { 0x09cc, 0, 255, "\x09\xc7\x09\xd7\0" },
+  { 0x09dc, 0, 255, "\x09\xa1\x09\xbc\0" },
+  { 0x09dd, 0, 255, "\x09\xa2\x09\xbc\0" },
+  { 0x09df, 0, 255, "\x09\xaf\x09\xbc\0" },
+  { 0x0a33, 0, 255, "\x0a\x32\x0a\x3c\0" },
+  { 0x0a36, 0, 255, "\x0a\x38\x0a\x3c\0" },
+  { 0x0a59, 0, 255, "\x0a\x16\x0a\x3c\0" },
+  { 0x0a5a, 0, 255, "\x0a\x17\x0a\x3c\0" },
+  { 0x0a5b, 0, 255, "\x0a\x1c\x0a\x3c\0" },
+  { 0x0a5e, 0, 255, "\x0a\x2b\x0a\x3c\0" },
+  { 0x0b48, 0, 255, "\x0b\x47\x0b\x56\0" },
+  { 0x0b4b, 0, 255, "\x0b\x47\x0b\x3e\0" },
+  { 0x0b4c, 0, 255, "\x0b\x47\x0b\x57\0" },
+  { 0x0b5c, 0, 255, "\x0b\x21\x0b\x3c\0" },
+  { 0x0b5d, 0, 255, "\x0b\x22\x0b\x3c\0" },
+  { 0x0b94, 0, 255, "\x0b\x92\x0b\xd7\0" },
+  { 0x0bca, 0, 255, "\x0b\xc6\x0b\xbe\0" },
+  { 0x0bcb, 0, 255, "\x0b\xc7\x0b\xbe\0" },
+  { 0x0bcc, 0, 255, "\x0b\xc6\x0b\xd7\0" },
+  { 0x0c48, 0, 255, "\x0c\x46\x0c\x56\0" },
+  { 0x0cc0, 0, 255, "\x0c\xbf\x0c\xd5\0" },
+  { 0x0cc7, 0, 255, "\x0c\xc6\x0c\xd5\0" },
+  { 0x0cc8, 0, 255, "\x0c\xc6\x0c\xd6\0" },
+  { 0x0cca, 0, 255, "\x0c\xc6\x0c\xc2\0" },
+  { 0x0ccb, 0, 255, "\x0c\xc6\x0c\xc2\x0c\xd5\0" },
+  { 0x0d4a, 0, 255, "\x0d\x46\x0d\x3e\0" },
+  { 0x0d4b, 0, 255, "\x0d\x47\x0d\x3e\0" },
+  { 0x0d4c, 0, 255, "\x0d\x46\x0d\x57\0" },
+  { 0x0dda, 0, 255, "\x0d\xd9\x0d\xca\0" },
+  { 0x0ddc, 0, 255, "\x0d\xd9\x0d\xcf\0" },
+  { 0x0ddd, 0, 255, "\x0d\xd9\x0d\xcf\x0d\xca\0" },
+  { 0x0dde, 0, 255, "\x0d\xd9\x0d\xdf\0" },
+  { 0x0e33, 255, 0, "\x0e\x4d\x0e\x32\0" },
+  { 0x0eb3, 255, 0, "\x0e\xcd\x0e\xb2\0" },
+  { 0x0edc, 255, 0, "\x0e\xab\x0e\x99\0" },
+  { 0x0edd, 255, 0, "\x0e\xab\x0e\xa1\0" },
+  { 0x0f0c, 255, 0, "\x0f\x0b\0" },
+  { 0x0f43, 0, 255, "\x0f\x42\x0f\xb7\0" },
+  { 0x0f4d, 0, 255, "\x0f\x4c\x0f\xb7\0" },
+  { 0x0f52, 0, 255, "\x0f\x51\x0f\xb7\0" },
+  { 0x0f57, 0, 255, "\x0f\x56\x0f\xb7\0" },
+  { 0x0f5c, 0, 255, "\x0f\x5b\x0f\xb7\0" },
+  { 0x0f69, 0, 255, "\x0f\x40\x0f\xb5\0" },
+  { 0x0f73, 0, 255, "\x0f\x71\x0f\x72\0" },
+  { 0x0f75, 0, 255, "\x0f\x71\x0f\x74\0" },
+  { 0x0f76, 0, 255, "\x0f\xb2\x0f\x80\0" },
+  { 0x0f77, 255, 0, "\x0f\xb2\x0f\x71\x0f\x80\0" },
+  { 0x0f78, 0, 255, "\x0f\xb3\x0f\x80\0" },
+  { 0x0f79, 255, 0, "\x0f\xb3\x0f\x71\x0f\x80\0" },
+  { 0x0f81, 0, 255, "\x0f\x71\x0f\x80\0" },
+  { 0x0f93, 0, 255, "\x0f\x92\x0f\xb7\0" },
+  { 0x0f9d, 0, 255, "\x0f\x9c\x0f\xb7\0" },
+  { 0x0fa2, 0, 255, "\x0f\xa1\x0f\xb7\0" },
+  { 0x0fa7, 0, 255, "\x0f\xa6\x0f\xb7\0" },
+  { 0x0fac, 0, 255, "\x0f\xab\x0f\xb7\0" },
+  { 0x0fb9, 0, 255, "\x0f\x90\x0f\xb5\0" },
+  { 0x1026, 0, 255, "\x10\x25\x10\x2e\0" },
+  { 0x1e00, 0, 255, "\x00\x41\x03\x25\0" },
+  { 0x1e01, 0, 255, "\x00\x61\x03\x25\0" },
+  { 0x1e02, 0, 255, "\x00\x42\x03\x07\0" },
+  { 0x1e03, 0, 255, "\x00\x62\x03\x07\0" },
+  { 0x1e04, 0, 255, "\x00\x42\x03\x23\0" },
+  { 0x1e05, 0, 255, "\x00\x62\x03\x23\0" },
+  { 0x1e06, 0, 255, "\x00\x42\x03\x31\0" },
+  { 0x1e07, 0, 255, "\x00\x62\x03\x31\0" },
+  { 0x1e08, 0, 255, "\x00\x43\x03\x27\x03\x01\0" },
+  { 0x1e09, 0, 255, "\x00\x63\x03\x27\x03\x01\0" },
+  { 0x1e0a, 0, 255, "\x00\x44\x03\x07\0" },
+  { 0x1e0b, 0, 255, "\x00\x64\x03\x07\0" },
+  { 0x1e0c, 0, 255, "\x00\x44\x03\x23\0" },
+  { 0x1e0d, 0, 255, "\x00\x64\x03\x23\0" },
+  { 0x1e0e, 0, 255, "\x00\x44\x03\x31\0" },
+  { 0x1e0f, 0, 255, "\x00\x64\x03\x31\0" },
+  { 0x1e10, 0, 255, "\x00\x44\x03\x27\0" },
+  { 0x1e11, 0, 255, "\x00\x64\x03\x27\0" },
+  { 0x1e12, 0, 255, "\x00\x44\x03\x2d\0" },
+  { 0x1e13, 0, 255, "\x00\x64\x03\x2d\0" },
+  { 0x1e14, 0, 255, "\x00\x45\x03\x04\x03\x00\0" },
+  { 0x1e15, 0, 255, "\x00\x65\x03\x04\x03\x00\0" },
+  { 0x1e16, 0, 255, "\x00\x45\x03\x04\x03\x01\0" },
+  { 0x1e17, 0, 255, "\x00\x65\x03\x04\x03\x01\0" },
+  { 0x1e18, 0, 255, "\x00\x45\x03\x2d\0" },
+  { 0x1e19, 0, 255, "\x00\x65\x03\x2d\0" },
+  { 0x1e1a, 0, 255, "\x00\x45\x03\x30\0" },
+  { 0x1e1b, 0, 255, "\x00\x65\x03\x30\0" },
+  { 0x1e1c, 0, 255, "\x00\x45\x03\x27\x03\x06\0" },
+  { 0x1e1d, 0, 255, "\x00\x65\x03\x27\x03\x06\0" },
+  { 0x1e1e, 0, 255, "\x00\x46\x03\x07\0" },
+  { 0x1e1f, 0, 255, "\x00\x66\x03\x07\0" },
+  { 0x1e20, 0, 255, "\x00\x47\x03\x04\0" },
+  { 0x1e21, 0, 255, "\x00\x67\x03\x04\0" },
+  { 0x1e22, 0, 255, "\x00\x48\x03\x07\0" },
+  { 0x1e23, 0, 255, "\x00\x68\x03\x07\0" },
+  { 0x1e24, 0, 255, "\x00\x48\x03\x23\0" },
+  { 0x1e25, 0, 255, "\x00\x68\x03\x23\0" },
+  { 0x1e26, 0, 255, "\x00\x48\x03\x08\0" },
+  { 0x1e27, 0, 255, "\x00\x68\x03\x08\0" },
+  { 0x1e28, 0, 255, "\x00\x48\x03\x27\0" },
+  { 0x1e29, 0, 255, "\x00\x68\x03\x27\0" },
+  { 0x1e2a, 0, 255, "\x00\x48\x03\x2e\0" },
+  { 0x1e2b, 0, 255, "\x00\x68\x03\x2e\0" },
+  { 0x1e2c, 0, 255, "\x00\x49\x03\x30\0" },
+  { 0x1e2d, 0, 255, "\x00\x69\x03\x30\0" },
+  { 0x1e2e, 0, 255, "\x00\x49\x03\x08\x03\x01\0" },
+  { 0x1e2f, 0, 255, "\x00\x69\x03\x08\x03\x01\0" },
+  { 0x1e30, 0, 255, "\x00\x4b\x03\x01\0" },
+  { 0x1e31, 0, 255, "\x00\x6b\x03\x01\0" },
+  { 0x1e32, 0, 255, "\x00\x4b\x03\x23\0" },
+  { 0x1e33, 0, 255, "\x00\x6b\x03\x23\0" },
+  { 0x1e34, 0, 255, "\x00\x4b\x03\x31\0" },
+  { 0x1e35, 0, 255, "\x00\x6b\x03\x31\0" },
+  { 0x1e36, 0, 255, "\x00\x4c\x03\x23\0" },
+  { 0x1e37, 0, 255, "\x00\x6c\x03\x23\0" },
+  { 0x1e38, 0, 255, "\x00\x4c\x03\x23\x03\x04\0" },
+  { 0x1e39, 0, 255, "\x00\x6c\x03\x23\x03\x04\0" },
+  { 0x1e3a, 0, 255, "\x00\x4c\x03\x31\0" },
+  { 0x1e3b, 0, 255, "\x00\x6c\x03\x31\0" },
+  { 0x1e3c, 0, 255, "\x00\x4c\x03\x2d\0" },
+  { 0x1e3d, 0, 255, "\x00\x6c\x03\x2d\0" },
+  { 0x1e3e, 0, 255, "\x00\x4d\x03\x01\0" },
+  { 0x1e3f, 0, 255, "\x00\x6d\x03\x01\0" },
+  { 0x1e40, 0, 255, "\x00\x4d\x03\x07\0" },
+  { 0x1e41, 0, 255, "\x00\x6d\x03\x07\0" },
+  { 0x1e42, 0, 255, "\x00\x4d\x03\x23\0" },
+  { 0x1e43, 0, 255, "\x00\x6d\x03\x23\0" },
+  { 0x1e44, 0, 255, "\x00\x4e\x03\x07\0" },
+  { 0x1e45, 0, 255, "\x00\x6e\x03\x07\0" },
+  { 0x1e46, 0, 255, "\x00\x4e\x03\x23\0" },
+  { 0x1e47, 0, 255, "\x00\x6e\x03\x23\0" },
+  { 0x1e48, 0, 255, "\x00\x4e\x03\x31\0" },
+  { 0x1e49, 0, 255, "\x00\x6e\x03\x31\0" },
+  { 0x1e4a, 0, 255, "\x00\x4e\x03\x2d\0" },
+  { 0x1e4b, 0, 255, "\x00\x6e\x03\x2d\0" },
+  { 0x1e4c, 0, 255, "\x00\x4f\x03\x03\x03\x01\0" },
+  { 0x1e4d, 0, 255, "\x00\x6f\x03\x03\x03\x01\0" },
+  { 0x1e4e, 0, 255, "\x00\x4f\x03\x03\x03\x08\0" },
+  { 0x1e4f, 0, 255, "\x00\x6f\x03\x03\x03\x08\0" },
+  { 0x1e50, 0, 255, "\x00\x4f\x03\x04\x03\x00\0" },
+  { 0x1e51, 0, 255, "\x00\x6f\x03\x04\x03\x00\0" },
+  { 0x1e52, 0, 255, "\x00\x4f\x03\x04\x03\x01\0" },
+  { 0x1e53, 0, 255, "\x00\x6f\x03\x04\x03\x01\0" },
+  { 0x1e54, 0, 255, "\x00\x50\x03\x01\0" },
+  { 0x1e55, 0, 255, "\x00\x70\x03\x01\0" },
+  { 0x1e56, 0, 255, "\x00\x50\x03\x07\0" },
+  { 0x1e57, 0, 255, "\x00\x70\x03\x07\0" },
+  { 0x1e58, 0, 255, "\x00\x52\x03\x07\0" },
+  { 0x1e59, 0, 255, "\x00\x72\x03\x07\0" },
+  { 0x1e5a, 0, 255, "\x00\x52\x03\x23\0" },
+  { 0x1e5b, 0, 255, "\x00\x72\x03\x23\0" },
+  { 0x1e5c, 0, 255, "\x00\x52\x03\x23\x03\x04\0" },
+  { 0x1e5d, 0, 255, "\x00\x72\x03\x23\x03\x04\0" },
+  { 0x1e5e, 0, 255, "\x00\x52\x03\x31\0" },
+  { 0x1e5f, 0, 255, "\x00\x72\x03\x31\0" },
+  { 0x1e60, 0, 255, "\x00\x53\x03\x07\0" },
+  { 0x1e61, 0, 255, "\x00\x73\x03\x07\0" },
+  { 0x1e62, 0, 255, "\x00\x53\x03\x23\0" },
+  { 0x1e63, 0, 255, "\x00\x73\x03\x23\0" },
+  { 0x1e64, 0, 255, "\x00\x53\x03\x01\x03\x07\0" },
+  { 0x1e65, 0, 255, "\x00\x73\x03\x01\x03\x07\0" },
+  { 0x1e66, 0, 255, "\x00\x53\x03\x0c\x03\x07\0" },
+  { 0x1e67, 0, 255, "\x00\x73\x03\x0c\x03\x07\0" },
+  { 0x1e68, 0, 255, "\x00\x53\x03\x23\x03\x07\0" },
+  { 0x1e69, 0, 255, "\x00\x73\x03\x23\x03\x07\0" },
+  { 0x1e6a, 0, 255, "\x00\x54\x03\x07\0" },
+  { 0x1e6b, 0, 255, "\x00\x74\x03\x07\0" },
+  { 0x1e6c, 0, 255, "\x00\x54\x03\x23\0" },
+  { 0x1e6d, 0, 255, "\x00\x74\x03\x23\0" },
+  { 0x1e6e, 0, 255, "\x00\x54\x03\x31\0" },
+  { 0x1e6f, 0, 255, "\x00\x74\x03\x31\0" },
+  { 0x1e70, 0, 255, "\x00\x54\x03\x2d\0" },
+  { 0x1e71, 0, 255, "\x00\x74\x03\x2d\0" },
+  { 0x1e72, 0, 255, "\x00\x55\x03\x24\0" },
+  { 0x1e73, 0, 255, "\x00\x75\x03\x24\0" },
+  { 0x1e74, 0, 255, "\x00\x55\x03\x30\0" },
+  { 0x1e75, 0, 255, "\x00\x75\x03\x30\0" },
+  { 0x1e76, 0, 255, "\x00\x55\x03\x2d\0" },
+  { 0x1e77, 0, 255, "\x00\x75\x03\x2d\0" },
+  { 0x1e78, 0, 255, "\x00\x55\x03\x03\x03\x01\0" },
+  { 0x1e79, 0, 255, "\x00\x75\x03\x03\x03\x01\0" },
+  { 0x1e7a, 0, 255, "\x00\x55\x03\x04\x03\x08\0" },
+  { 0x1e7b, 0, 255, "\x00\x75\x03\x04\x03\x08\0" },
+  { 0x1e7c, 0, 255, "\x00\x56\x03\x03\0" },
+  { 0x1e7d, 0, 255, "\x00\x76\x03\x03\0" },
+  { 0x1e7e, 0, 255, "\x00\x56\x03\x23\0" },
+  { 0x1e7f, 0, 255, "\x00\x76\x03\x23\0" },
+  { 0x1e80, 0, 255, "\x00\x57\x03\x00\0" },
+  { 0x1e81, 0, 255, "\x00\x77\x03\x00\0" },
+  { 0x1e82, 0, 255, "\x00\x57\x03\x01\0" },
+  { 0x1e83, 0, 255, "\x00\x77\x03\x01\0" },
+  { 0x1e84, 0, 255, "\x00\x57\x03\x08\0" },
+  { 0x1e85, 0, 255, "\x00\x77\x03\x08\0" },
+  { 0x1e86, 0, 255, "\x00\x57\x03\x07\0" },
+  { 0x1e87, 0, 255, "\x00\x77\x03\x07\0" },
+  { 0x1e88, 0, 255, "\x00\x57\x03\x23\0" },
+  { 0x1e89, 0, 255, "\x00\x77\x03\x23\0" },
+  { 0x1e8a, 0, 255, "\x00\x58\x03\x07\0" },
+  { 0x1e8b, 0, 255, "\x00\x78\x03\x07\0" },
+  { 0x1e8c, 0, 255, "\x00\x58\x03\x08\0" },
+  { 0x1e8d, 0, 255, "\x00\x78\x03\x08\0" },
+  { 0x1e8e, 0, 255, "\x00\x59\x03\x07\0" },
+  { 0x1e8f, 0, 255, "\x00\x79\x03\x07\0" },
+  { 0x1e90, 0, 255, "\x00\x5a\x03\x02\0" },
+  { 0x1e91, 0, 255, "\x00\x7a\x03\x02\0" },
+  { 0x1e92, 0, 255, "\x00\x5a\x03\x23\0" },
+  { 0x1e93, 0, 255, "\x00\x7a\x03\x23\0" },
+  { 0x1e94, 0, 255, "\x00\x5a\x03\x31\0" },
+  { 0x1e95, 0, 255, "\x00\x7a\x03\x31\0" },
+  { 0x1e96, 0, 255, "\x00\x68\x03\x31\0" },
+  { 0x1e97, 0, 255, "\x00\x74\x03\x08\0" },
+  { 0x1e98, 0, 255, "\x00\x77\x03\x0a\0" },
+  { 0x1e99, 0, 255, "\x00\x79\x03\x0a\0" },
+  { 0x1e9a, 255, 0, "\x00\x61\x02\xbe\0" },
+  { 0x1e9b, 0, 6, "\x01\x7f\x03\x07\x00\x00\x00\x73\x03\x07\0" },
+  { 0x1ea0, 0, 255, "\x00\x41\x03\x23\0" },
+  { 0x1ea1, 0, 255, "\x00\x61\x03\x23\0" },
+  { 0x1ea2, 0, 255, "\x00\x41\x03\x09\0" },
+  { 0x1ea3, 0, 255, "\x00\x61\x03\x09\0" },
+  { 0x1ea4, 0, 255, "\x00\x41\x03\x02\x03\x01\0" },
+  { 0x1ea5, 0, 255, "\x00\x61\x03\x02\x03\x01\0" },
+  { 0x1ea6, 0, 255, "\x00\x41\x03\x02\x03\x00\0" },
+  { 0x1ea7, 0, 255, "\x00\x61\x03\x02\x03\x00\0" },
+  { 0x1ea8, 0, 255, "\x00\x41\x03\x02\x03\x09\0" },
+  { 0x1ea9, 0, 255, "\x00\x61\x03\x02\x03\x09\0" },
+  { 0x1eaa, 0, 255, "\x00\x41\x03\x02\x03\x03\0" },
+  { 0x1eab, 0, 255, "\x00\x61\x03\x02\x03\x03\0" },
+  { 0x1eac, 0, 255, "\x00\x41\x03\x23\x03\x02\0" },
+  { 0x1ead, 0, 255, "\x00\x61\x03\x23\x03\x02\0" },
+  { 0x1eae, 0, 255, "\x00\x41\x03\x06\x03\x01\0" },
+  { 0x1eaf, 0, 255, "\x00\x61\x03\x06\x03\x01\0" },
+  { 0x1eb0, 0, 255, "\x00\x41\x03\x06\x03\x00\0" },
+  { 0x1eb1, 0, 255, "\x00\x61\x03\x06\x03\x00\0" },
+  { 0x1eb2, 0, 255, "\x00\x41\x03\x06\x03\x09\0" },
+  { 0x1eb3, 0, 255, "\x00\x61\x03\x06\x03\x09\0" },
+  { 0x1eb4, 0, 255, "\x00\x41\x03\x06\x03\x03\0" },
+  { 0x1eb5, 0, 255, "\x00\x61\x03\x06\x03\x03\0" },
+  { 0x1eb6, 0, 255, "\x00\x41\x03\x23\x03\x06\0" },
+  { 0x1eb7, 0, 255, "\x00\x61\x03\x23\x03\x06\0" },
+  { 0x1eb8, 0, 255, "\x00\x45\x03\x23\0" },
+  { 0x1eb9, 0, 255, "\x00\x65\x03\x23\0" },
+  { 0x1eba, 0, 255, "\x00\x45\x03\x09\0" },
+  { 0x1ebb, 0, 255, "\x00\x65\x03\x09\0" },
+  { 0x1ebc, 0, 255, "\x00\x45\x03\x03\0" },
+  { 0x1ebd, 0, 255, "\x00\x65\x03\x03\0" },
+  { 0x1ebe, 0, 255, "\x00\x45\x03\x02\x03\x01\0" },
+  { 0x1ebf, 0, 255, "\x00\x65\x03\x02\x03\x01\0" },
+  { 0x1ec0, 0, 255, "\x00\x45\x03\x02\x03\x00\0" },
+  { 0x1ec1, 0, 255, "\x00\x65\x03\x02\x03\x00\0" },
+  { 0x1ec2, 0, 255, "\x00\x45\x03\x02\x03\x09\0" },
+  { 0x1ec3, 0, 255, "\x00\x65\x03\x02\x03\x09\0" },
+  { 0x1ec4, 0, 255, "\x00\x45\x03\x02\x03\x03\0" },
+  { 0x1ec5, 0, 255, "\x00\x65\x03\x02\x03\x03\0" },
+  { 0x1ec6, 0, 255, "\x00\x45\x03\x23\x03\x02\0" },
+  { 0x1ec7, 0, 255, "\x00\x65\x03\x23\x03\x02\0" },
+  { 0x1ec8, 0, 255, "\x00\x49\x03\x09\0" },
+  { 0x1ec9, 0, 255, "\x00\x69\x03\x09\0" },
+  { 0x1eca, 0, 255, "\x00\x49\x03\x23\0" },
+  { 0x1ecb, 0, 255, "\x00\x69\x03\x23\0" },
+  { 0x1ecc, 0, 255, "\x00\x4f\x03\x23\0" },
+  { 0x1ecd, 0, 255, "\x00\x6f\x03\x23\0" },
+  { 0x1ece, 0, 255, "\x00\x4f\x03\x09\0" },
+  { 0x1ecf, 0, 255, "\x00\x6f\x03\x09\0" },
+  { 0x1ed0, 0, 255, "\x00\x4f\x03\x02\x03\x01\0" },
+  { 0x1ed1, 0, 255, "\x00\x6f\x03\x02\x03\x01\0" },
+  { 0x1ed2, 0, 255, "\x00\x4f\x03\x02\x03\x00\0" },
+  { 0x1ed3, 0, 255, "\x00\x6f\x03\x02\x03\x00\0" },
+  { 0x1ed4, 0, 255, "\x00\x4f\x03\x02\x03\x09\0" },
+  { 0x1ed5, 0, 255, "\x00\x6f\x03\x02\x03\x09\0" },
+  { 0x1ed6, 0, 255, "\x00\x4f\x03\x02\x03\x03\0" },
+  { 0x1ed7, 0, 255, "\x00\x6f\x03\x02\x03\x03\0" },
+  { 0x1ed8, 0, 255, "\x00\x4f\x03\x23\x03\x02\0" },
+  { 0x1ed9, 0, 255, "\x00\x6f\x03\x23\x03\x02\0" },
+  { 0x1eda, 0, 255, "\x00\x4f\x03\x1b\x03\x01\0" },
+  { 0x1edb, 0, 255, "\x00\x6f\x03\x1b\x03\x01\0" },
+  { 0x1edc, 0, 255, "\x00\x4f\x03\x1b\x03\x00\0" },
+  { 0x1edd, 0, 255, "\x00\x6f\x03\x1b\x03\x00\0" },
+  { 0x1ede, 0, 255, "\x00\x4f\x03\x1b\x03\x09\0" },
+  { 0x1edf, 0, 255, "\x00\x6f\x03\x1b\x03\x09\0" },
+  { 0x1ee0, 0, 255, "\x00\x4f\x03\x1b\x03\x03\0" },
+  { 0x1ee1, 0, 255, "\x00\x6f\x03\x1b\x03\x03\0" },
+  { 0x1ee2, 0, 255, "\x00\x4f\x03\x1b\x03\x23\0" },
+  { 0x1ee3, 0, 255, "\x00\x6f\x03\x1b\x03\x23\0" },
+  { 0x1ee4, 0, 255, "\x00\x55\x03\x23\0" },
+  { 0x1ee5, 0, 255, "\x00\x75\x03\x23\0" },
+  { 0x1ee6, 0, 255, "\x00\x55\x03\x09\0" },
+  { 0x1ee7, 0, 255, "\x00\x75\x03\x09\0" },
+  { 0x1ee8, 0, 255, "\x00\x55\x03\x1b\x03\x01\0" },
+  { 0x1ee9, 0, 255, "\x00\x75\x03\x1b\x03\x01\0" },
+  { 0x1eea, 0, 255, "\x00\x55\x03\x1b\x03\x00\0" },
+  { 0x1eeb, 0, 255, "\x00\x75\x03\x1b\x03\x00\0" },
+  { 0x1eec, 0, 255, "\x00\x55\x03\x1b\x03\x09\0" },
+  { 0x1eed, 0, 255, "\x00\x75\x03\x1b\x03\x09\0" },
+  { 0x1eee, 0, 255, "\x00\x55\x03\x1b\x03\x03\0" },
+  { 0x1eef, 0, 255, "\x00\x75\x03\x1b\x03\x03\0" },
+  { 0x1ef0, 0, 255, "\x00\x55\x03\x1b\x03\x23\0" },
+  { 0x1ef1, 0, 255, "\x00\x75\x03\x1b\x03\x23\0" },
+  { 0x1ef2, 0, 255, "\x00\x59\x03\x00\0" },
+  { 0x1ef3, 0, 255, "\x00\x79\x03\x00\0" },
+  { 0x1ef4, 0, 255, "\x00\x59\x03\x23\0" },
+  { 0x1ef5, 0, 255, "\x00\x79\x03\x23\0" },
+  { 0x1ef6, 0, 255, "\x00\x59\x03\x09\0" },
+  { 0x1ef7, 0, 255, "\x00\x79\x03\x09\0" },
+  { 0x1ef8, 0, 255, "\x00\x59\x03\x03\0" },
+  { 0x1ef9, 0, 255, "\x00\x79\x03\x03\0" },
+  { 0x1f00, 0, 255, "\x03\xb1\x03\x13\0" },
+  { 0x1f01, 0, 255, "\x03\xb1\x03\x14\0" },
+  { 0x1f02, 0, 255, "\x03\xb1\x03\x13\x03\x00\0" },
+  { 0x1f03, 0, 255, "\x03\xb1\x03\x14\x03\x00\0" },
+  { 0x1f04, 0, 255, "\x03\xb1\x03\x13\x03\x01\0" },
+  { 0x1f05, 0, 255, "\x03\xb1\x03\x14\x03\x01\0" },
+  { 0x1f06, 0, 255, "\x03\xb1\x03\x13\x03\x42\0" },
+  { 0x1f07, 0, 255, "\x03\xb1\x03\x14\x03\x42\0" },
+  { 0x1f08, 0, 255, "\x03\x91\x03\x13\0" },
+  { 0x1f09, 0, 255, "\x03\x91\x03\x14\0" },
+  { 0x1f0a, 0, 255, "\x03\x91\x03\x13\x03\x00\0" },
+  { 0x1f0b, 0, 255, "\x03\x91\x03\x14\x03\x00\0" },
+  { 0x1f0c, 0, 255, "\x03\x91\x03\x13\x03\x01\0" },
+  { 0x1f0d, 0, 255, "\x03\x91\x03\x14\x03\x01\0" },
+  { 0x1f0e, 0, 255, "\x03\x91\x03\x13\x03\x42\0" },
+  { 0x1f0f, 0, 255, "\x03\x91\x03\x14\x03\x42\0" },
+  { 0x1f10, 0, 255, "\x03\xb5\x03\x13\0" },
+  { 0x1f11, 0, 255, "\x03\xb5\x03\x14\0" },
+  { 0x1f12, 0, 255, "\x03\xb5\x03\x13\x03\x00\0" },
+  { 0x1f13, 0, 255, "\x03\xb5\x03\x14\x03\x00\0" },
+  { 0x1f14, 0, 255, "\x03\xb5\x03\x13\x03\x01\0" },
+  { 0x1f15, 0, 255, "\x03\xb5\x03\x14\x03\x01\0" },
+  { 0x1f18, 0, 255, "\x03\x95\x03\x13\0" },
+  { 0x1f19, 0, 255, "\x03\x95\x03\x14\0" },
+  { 0x1f1a, 0, 255, "\x03\x95\x03\x13\x03\x00\0" },
+  { 0x1f1b, 0, 255, "\x03\x95\x03\x14\x03\x00\0" },
+  { 0x1f1c, 0, 255, "\x03\x95\x03\x13\x03\x01\0" },
+  { 0x1f1d, 0, 255, "\x03\x95\x03\x14\x03\x01\0" },
+  { 0x1f20, 0, 255, "\x03\xb7\x03\x13\0" },
+  { 0x1f21, 0, 255, "\x03\xb7\x03\x14\0" },
+  { 0x1f22, 0, 255, "\x03\xb7\x03\x13\x03\x00\0" },
+  { 0x1f23, 0, 255, "\x03\xb7\x03\x14\x03\x00\0" },
+  { 0x1f24, 0, 255, "\x03\xb7\x03\x13\x03\x01\0" },
+  { 0x1f25, 0, 255, "\x03\xb7\x03\x14\x03\x01\0" },
+  { 0x1f26, 0, 255, "\x03\xb7\x03\x13\x03\x42\0" },
+  { 0x1f27, 0, 255, "\x03\xb7\x03\x14\x03\x42\0" },
+  { 0x1f28, 0, 255, "\x03\x97\x03\x13\0" },
+  { 0x1f29, 0, 255, "\x03\x97\x03\x14\0" },
+  { 0x1f2a, 0, 255, "\x03\x97\x03\x13\x03\x00\0" },
+  { 0x1f2b, 0, 255, "\x03\x97\x03\x14\x03\x00\0" },
+  { 0x1f2c, 0, 255, "\x03\x97\x03\x13\x03\x01\0" },
+  { 0x1f2d, 0, 255, "\x03\x97\x03\x14\x03\x01\0" },
+  { 0x1f2e, 0, 255, "\x03\x97\x03\x13\x03\x42\0" },
+  { 0x1f2f, 0, 255, "\x03\x97\x03\x14\x03\x42\0" },
+  { 0x1f30, 0, 255, "\x03\xb9\x03\x13\0" },
+  { 0x1f31, 0, 255, "\x03\xb9\x03\x14\0" },
+  { 0x1f32, 0, 255, "\x03\xb9\x03\x13\x03\x00\0" },
+  { 0x1f33, 0, 255, "\x03\xb9\x03\x14\x03\x00\0" },
+  { 0x1f34, 0, 255, "\x03\xb9\x03\x13\x03\x01\0" },
+  { 0x1f35, 0, 255, "\x03\xb9\x03\x14\x03\x01\0" },
+  { 0x1f36, 0, 255, "\x03\xb9\x03\x13\x03\x42\0" },
+  { 0x1f37, 0, 255, "\x03\xb9\x03\x14\x03\x42\0" },
+  { 0x1f38, 0, 255, "\x03\x99\x03\x13\0" },
+  { 0x1f39, 0, 255, "\x03\x99\x03\x14\0" },
+  { 0x1f3a, 0, 255, "\x03\x99\x03\x13\x03\x00\0" },
+  { 0x1f3b, 0, 255, "\x03\x99\x03\x14\x03\x00\0" },
+  { 0x1f3c, 0, 255, "\x03\x99\x03\x13\x03\x01\0" },
+  { 0x1f3d, 0, 255, "\x03\x99\x03\x14\x03\x01\0" },
+  { 0x1f3e, 0, 255, "\x03\x99\x03\x13\x03\x42\0" },
+  { 0x1f3f, 0, 255, "\x03\x99\x03\x14\x03\x42\0" },
+  { 0x1f40, 0, 255, "\x03\xbf\x03\x13\0" },
+  { 0x1f41, 0, 255, "\x03\xbf\x03\x14\0" },
+  { 0x1f42, 0, 255, "\x03\xbf\x03\x13\x03\x00\0" },
+  { 0x1f43, 0, 255, "\x03\xbf\x03\x14\x03\x00\0" },
+  { 0x1f44, 0, 255, "\x03\xbf\x03\x13\x03\x01\0" },
+  { 0x1f45, 0, 255, "\x03\xbf\x03\x14\x03\x01\0" },
+  { 0x1f48, 0, 255, "\x03\x9f\x03\x13\0" },
+  { 0x1f49, 0, 255, "\x03\x9f\x03\x14\0" },
+  { 0x1f4a, 0, 255, "\x03\x9f\x03\x13\x03\x00\0" },
+  { 0x1f4b, 0, 255, "\x03\x9f\x03\x14\x03\x00\0" },
+  { 0x1f4c, 0, 255, "\x03\x9f\x03\x13\x03\x01\0" },
+  { 0x1f4d, 0, 255, "\x03\x9f\x03\x14\x03\x01\0" },
+  { 0x1f50, 0, 255, "\x03\xc5\x03\x13\0" },
+  { 0x1f51, 0, 255, "\x03\xc5\x03\x14\0" },
+  { 0x1f52, 0, 255, "\x03\xc5\x03\x13\x03\x00\0" },
+  { 0x1f53, 0, 255, "\x03\xc5\x03\x14\x03\x00\0" },
+  { 0x1f54, 0, 255, "\x03\xc5\x03\x13\x03\x01\0" },
+  { 0x1f55, 0, 255, "\x03\xc5\x03\x14\x03\x01\0" },
+  { 0x1f56, 0, 255, "\x03\xc5\x03\x13\x03\x42\0" },
+  { 0x1f57, 0, 255, "\x03\xc5\x03\x14\x03\x42\0" },
+  { 0x1f59, 0, 255, "\x03\xa5\x03\x14\0" },
+  { 0x1f5b, 0, 255, "\x03\xa5\x03\x14\x03\x00\0" },
+  { 0x1f5d, 0, 255, "\x03\xa5\x03\x14\x03\x01\0" },
+  { 0x1f5f, 0, 255, "\x03\xa5\x03\x14\x03\x42\0" },
+  { 0x1f60, 0, 255, "\x03\xc9\x03\x13\0" },
+  { 0x1f61, 0, 255, "\x03\xc9\x03\x14\0" },
+  { 0x1f62, 0, 255, "\x03\xc9\x03\x13\x03\x00\0" },
+  { 0x1f63, 0, 255, "\x03\xc9\x03\x14\x03\x00\0" },
+  { 0x1f64, 0, 255, "\x03\xc9\x03\x13\x03\x01\0" },
+  { 0x1f65, 0, 255, "\x03\xc9\x03\x14\x03\x01\0" },
+  { 0x1f66, 0, 255, "\x03\xc9\x03\x13\x03\x42\0" },
+  { 0x1f67, 0, 255, "\x03\xc9\x03\x14\x03\x42\0" },
+  { 0x1f68, 0, 255, "\x03\xa9\x03\x13\0" },
+  { 0x1f69, 0, 255, "\x03\xa9\x03\x14\0" },
+  { 0x1f6a, 0, 255, "\x03\xa9\x03\x13\x03\x00\0" },
+  { 0x1f6b, 0, 255, "\x03\xa9\x03\x14\x03\x00\0" },
+  { 0x1f6c, 0, 255, "\x03\xa9\x03\x13\x03\x01\0" },
+  { 0x1f6d, 0, 255, "\x03\xa9\x03\x14\x03\x01\0" },
+  { 0x1f6e, 0, 255, "\x03\xa9\x03\x13\x03\x42\0" },
+  { 0x1f6f, 0, 255, "\x03\xa9\x03\x14\x03\x42\0" },
+  { 0x1f70, 0, 255, "\x03\xb1\x03\x00\0" },
+  { 0x1f71, 0, 255, "\x03\xb1\x03\x01\0" },
+  { 0x1f72, 0, 255, "\x03\xb5\x03\x00\0" },
+  { 0x1f73, 0, 255, "\x03\xb5\x03\x01\0" },
+  { 0x1f74, 0, 255, "\x03\xb7\x03\x00\0" },
+  { 0x1f75, 0, 255, "\x03\xb7\x03\x01\0" },
+  { 0x1f76, 0, 255, "\x03\xb9\x03\x00\0" },
+  { 0x1f77, 0, 255, "\x03\xb9\x03\x01\0" },
+  { 0x1f78, 0, 255, "\x03\xbf\x03\x00\0" },
+  { 0x1f79, 0, 255, "\x03\xbf\x03\x01\0" },
+  { 0x1f7a, 0, 255, "\x03\xc5\x03\x00\0" },
+  { 0x1f7b, 0, 255, "\x03\xc5\x03\x01\0" },
+  { 0x1f7c, 0, 255, "\x03\xc9\x03\x00\0" },
+  { 0x1f7d, 0, 255, "\x03\xc9\x03\x01\0" },
+  { 0x1f80, 0, 255, "\x03\xb1\x03\x13\x03\x45\0" },
+  { 0x1f81, 0, 255, "\x03\xb1\x03\x14\x03\x45\0" },
+  { 0x1f82, 0, 255, "\x03\xb1\x03\x13\x03\x00\x03\x45\0" },
+  { 0x1f83, 0, 255, "\x03\xb1\x03\x14\x03\x00\x03\x45\0" },
+  { 0x1f84, 0, 255, "\x03\xb1\x03\x13\x03\x01\x03\x45\0" },
+  { 0x1f85, 0, 255, "\x03\xb1\x03\x14\x03\x01\x03\x45\0" },
+  { 0x1f86, 0, 255, "\x03\xb1\x03\x13\x03\x42\x03\x45\0" },
+  { 0x1f87, 0, 255, "\x03\xb1\x03\x14\x03\x42\x03\x45\0" },
+  { 0x1f88, 0, 255, "\x03\x91\x03\x13\x03\x45\0" },
+  { 0x1f89, 0, 255, "\x03\x91\x03\x14\x03\x45\0" },
+  { 0x1f8a, 0, 255, "\x03\x91\x03\x13\x03\x00\x03\x45\0" },
+  { 0x1f8b, 0, 255, "\x03\x91\x03\x14\x03\x00\x03\x45\0" },
+  { 0x1f8c, 0, 255, "\x03\x91\x03\x13\x03\x01\x03\x45\0" },
+  { 0x1f8d, 0, 255, "\x03\x91\x03\x14\x03\x01\x03\x45\0" },
+  { 0x1f8e, 0, 255, "\x03\x91\x03\x13\x03\x42\x03\x45\0" },
+  { 0x1f8f, 0, 255, "\x03\x91\x03\x14\x03\x42\x03\x45\0" },
+  { 0x1f90, 0, 255, "\x03\xb7\x03\x13\x03\x45\0" },
+  { 0x1f91, 0, 255, "\x03\xb7\x03\x14\x03\x45\0" },
+  { 0x1f92, 0, 255, "\x03\xb7\x03\x13\x03\x00\x03\x45\0" },
+  { 0x1f93, 0, 255, "\x03\xb7\x03\x14\x03\x00\x03\x45\0" },
+  { 0x1f94, 0, 255, "\x03\xb7\x03\x13\x03\x01\x03\x45\0" },
+  { 0x1f95, 0, 255, "\x03\xb7\x03\x14\x03\x01\x03\x45\0" },
+  { 0x1f96, 0, 255, "\x03\xb7\x03\x13\x03\x42\x03\x45\0" },
+  { 0x1f97, 0, 255, "\x03\xb7\x03\x14\x03\x42\x03\x45\0" },
+  { 0x1f98, 0, 255, "\x03\x97\x03\x13\x03\x45\0" },
+  { 0x1f99, 0, 255, "\x03\x97\x03\x14\x03\x45\0" },
+  { 0x1f9a, 0, 255, "\x03\x97\x03\x13\x03\x00\x03\x45\0" },
+  { 0x1f9b, 0, 255, "\x03\x97\x03\x14\x03\x00\x03\x45\0" },
+  { 0x1f9c, 0, 255, "\x03\x97\x03\x13\x03\x01\x03\x45\0" },
+  { 0x1f9d, 0, 255, "\x03\x97\x03\x14\x03\x01\x03\x45\0" },
+  { 0x1f9e, 0, 255, "\x03\x97\x03\x13\x03\x42\x03\x45\0" },
+  { 0x1f9f, 0, 255, "\x03\x97\x03\x14\x03\x42\x03\x45\0" },
+  { 0x1fa0, 0, 255, "\x03\xc9\x03\x13\x03\x45\0" },
+  { 0x1fa1, 0, 255, "\x03\xc9\x03\x14\x03\x45\0" },
+  { 0x1fa2, 0, 255, "\x03\xc9\x03\x13\x03\x00\x03\x45\0" },
+  { 0x1fa3, 0, 255, "\x03\xc9\x03\x14\x03\x00\x03\x45\0" },
+  { 0x1fa4, 0, 255, "\x03\xc9\x03\x13\x03\x01\x03\x45\0" },
+  { 0x1fa5, 0, 255, "\x03\xc9\x03\x14\x03\x01\x03\x45\0" },
+  { 0x1fa6, 0, 255, "\x03\xc9\x03\x13\x03\x42\x03\x45\0" },
+  { 0x1fa7, 0, 255, "\x03\xc9\x03\x14\x03\x42\x03\x45\0" },
+  { 0x1fa8, 0, 255, "\x03\xa9\x03\x13\x03\x45\0" },
+  { 0x1fa9, 0, 255, "\x03\xa9\x03\x14\x03\x45\0" },
+  { 0x1faa, 0, 255, "\x03\xa9\x03\x13\x03\x00\x03\x45\0" },
+  { 0x1fab, 0, 255, "\x03\xa9\x03\x14\x03\x00\x03\x45\0" },
+  { 0x1fac, 0, 255, "\x03\xa9\x03\x13\x03\x01\x03\x45\0" },
+  { 0x1fad, 0, 255, "\x03\xa9\x03\x14\x03\x01\x03\x45\0" },
+  { 0x1fae, 0, 255, "\x03\xa9\x03\x13\x03\x42\x03\x45\0" },
+  { 0x1faf, 0, 255, "\x03\xa9\x03\x14\x03\x42\x03\x45\0" },
+  { 0x1fb0, 0, 255, "\x03\xb1\x03\x06\0" },
+  { 0x1fb1, 0, 255, "\x03\xb1\x03\x04\0" },
+  { 0x1fb2, 0, 255, "\x03\xb1\x03\x00\x03\x45\0" },
+  { 0x1fb3, 0, 255, "\x03\xb1\x03\x45\0" },
+  { 0x1fb4, 0, 255, "\x03\xb1\x03\x01\x03\x45\0" },
+  { 0x1fb6, 0, 255, "\x03\xb1\x03\x42\0" },
+  { 0x1fb7, 0, 255, "\x03\xb1\x03\x42\x03\x45\0" },
+  { 0x1fb8, 0, 255, "\x03\x91\x03\x06\0" },
+  { 0x1fb9, 0, 255, "\x03\x91\x03\x04\0" },
+  { 0x1fba, 0, 255, "\x03\x91\x03\x00\0" },
+  { 0x1fbb, 0, 255, "\x03\x91\x03\x01\0" },
+  { 0x1fbc, 0, 255, "\x03\x91\x03\x45\0" },
+  { 0x1fbd, 255, 0, "\x00\x20\x03\x13\0" },
+  { 0x1fbe, 0, 255, "\x03\xb9\0" },
+  { 0x1fbf, 255, 0, "\x00\x20\x03\x13\0" },
+  { 0x1fc0, 255, 0, "\x00\x20\x03\x42\0" },
+  { 0x1fc1, 0, 6, "\x00\xa8\x03\x42\x00\x00\x00\x20\x03\x08\x03\x42\0" },
+  { 0x1fc2, 0, 255, "\x03\xb7\x03\x00\x03\x45\0" },
+  { 0x1fc3, 0, 255, "\x03\xb7\x03\x45\0" },
+  { 0x1fc4, 0, 255, "\x03\xb7\x03\x01\x03\x45\0" },
+  { 0x1fc6, 0, 255, "\x03\xb7\x03\x42\0" },
+  { 0x1fc7, 0, 255, "\x03\xb7\x03\x42\x03\x45\0" },
+  { 0x1fc8, 0, 255, "\x03\x95\x03\x00\0" },
+  { 0x1fc9, 0, 255, "\x03\x95\x03\x01\0" },
+  { 0x1fca, 0, 255, "\x03\x97\x03\x00\0" },
+  { 0x1fcb, 0, 255, "\x03\x97\x03\x01\0" },
+  { 0x1fcc, 0, 255, "\x03\x97\x03\x45\0" },
+  { 0x1fcd, 0, 6, "\x1f\xbf\x03\x00\x00\x00\x00\x20\x03\x13\x03\x00\0" },
+  { 0x1fce, 0, 6, "\x1f\xbf\x03\x01\x00\x00\x00\x20\x03\x13\x03\x01\0" },
+  { 0x1fcf, 0, 6, "\x1f\xbf\x03\x42\x00\x00\x00\x20\x03\x13\x03\x42\0" },
+  { 0x1fd0, 0, 255, "\x03\xb9\x03\x06\0" },
+  { 0x1fd1, 0, 255, "\x03\xb9\x03\x04\0" },
+  { 0x1fd2, 0, 255, "\x03\xb9\x03\x08\x03\x00\0" },
+  { 0x1fd3, 0, 255, "\x03\xb9\x03\x08\x03\x01\0" },
+  { 0x1fd6, 0, 255, "\x03\xb9\x03\x42\0" },
+  { 0x1fd7, 0, 255, "\x03\xb9\x03\x08\x03\x42\0" },
+  { 0x1fd8, 0, 255, "\x03\x99\x03\x06\0" },
+  { 0x1fd9, 0, 255, "\x03\x99\x03\x04\0" },
+  { 0x1fda, 0, 255, "\x03\x99\x03\x00\0" },
+  { 0x1fdb, 0, 255, "\x03\x99\x03\x01\0" },
+  { 0x1fdd, 0, 6, "\x1f\xfe\x03\x00\x00\x00\x00\x20\x03\x14\x03\x00\0" },
+  { 0x1fde, 0, 6, "\x1f\xfe\x03\x01\x00\x00\x00\x20\x03\x14\x03\x01\0" },
+  { 0x1fdf, 0, 6, "\x1f\xfe\x03\x42\x00\x00\x00\x20\x03\x14\x03\x42\0" },
+  { 0x1fe0, 0, 255, "\x03\xc5\x03\x06\0" },
+  { 0x1fe1, 0, 255, "\x03\xc5\x03\x04\0" },
+  { 0x1fe2, 0, 255, "\x03\xc5\x03\x08\x03\x00\0" },
+  { 0x1fe3, 0, 255, "\x03\xc5\x03\x08\x03\x01\0" },
+  { 0x1fe4, 0, 255, "\x03\xc1\x03\x13\0" },
+  { 0x1fe5, 0, 255, "\x03\xc1\x03\x14\0" },
+  { 0x1fe6, 0, 255, "\x03\xc5\x03\x42\0" },
+  { 0x1fe7, 0, 255, "\x03\xc5\x03\x08\x03\x42\0" },
+  { 0x1fe8, 0, 255, "\x03\xa5\x03\x06\0" },
+  { 0x1fe9, 0, 255, "\x03\xa5\x03\x04\0" },
+  { 0x1fea, 0, 255, "\x03\xa5\x03\x00\0" },
+  { 0x1feb, 0, 255, "\x03\xa5\x03\x01\0" },
+  { 0x1fec, 0, 255, "\x03\xa1\x03\x14\0" },
+  { 0x1fed, 0, 6, "\x00\xa8\x03\x00\x00\x00\x00\x20\x03\x08\x03\x00\0" },
+  { 0x1fee, 0, 6, "\x00\xa8\x03\x01\x00\x00\x00\x20\x03\x08\x03\x01\0" },
+  { 0x1fef, 0, 255, "\x00\x60\0" },
+  { 0x1ff2, 0, 255, "\x03\xc9\x03\x00\x03\x45\0" },
+  { 0x1ff3, 0, 255, "\x03\xc9\x03\x45\0" },
+  { 0x1ff4, 0, 255, "\x03\xc9\x03\x01\x03\x45\0" },
+  { 0x1ff6, 0, 255, "\x03\xc9\x03\x42\0" },
+  { 0x1ff7, 0, 255, "\x03\xc9\x03\x42\x03\x45\0" },
+  { 0x1ff8, 0, 255, "\x03\x9f\x03\x00\0" },
+  { 0x1ff9, 0, 255, "\x03\x9f\x03\x01\0" },
+  { 0x1ffa, 0, 255, "\x03\xa9\x03\x00\0" },
+  { 0x1ffb, 0, 255, "\x03\xa9\x03\x01\0" },
+  { 0x1ffc, 0, 255, "\x03\xa9\x03\x45\0" },
+  { 0x1ffd, 0, 4, "\x00\xb4\x00\x00\x00\x20\x03\x01\0" },
+  { 0x1ffe, 255, 0, "\x00\x20\x03\x14\0" },
+  { 0x2000, 0, 4, "\x20\x02\x00\x00\x00\x20\0" },
+  { 0x2001, 0, 4, "\x20\x03\x00\x00\x00\x20\0" },
+  { 0x2002, 255, 0, "\x00\x20\0" },
+  { 0x2003, 255, 0, "\x00\x20\0" },
+  { 0x2004, 255, 0, "\x00\x20\0" },
+  { 0x2005, 255, 0, "\x00\x20\0" },
+  { 0x2006, 255, 0, "\x00\x20\0" },
+  { 0x2007, 255, 0, "\x00\x20\0" },
+  { 0x2008, 255, 0, "\x00\x20\0" },
+  { 0x2009, 255, 0, "\x00\x20\0" },
+  { 0x200a, 255, 0, "\x00\x20\0" },
+  { 0x2011, 255, 0, "\x20\x10\0" },
+  { 0x2017, 255, 0, "\x00\x20\x03\x33\0" },
+  { 0x2024, 255, 0, "\x00\x2e\0" },
+  { 0x2025, 255, 0, "\x00\x2e\x00\x2e\0" },
+  { 0x2026, 255, 0, "\x00\x2e\x00\x2e\x00\x2e\0" },
+  { 0x202f, 255, 0, "\x00\x20\0" },
+  { 0x2033, 255, 0, "\x20\x32\x20\x32\0" },
+  { 0x2034, 255, 0, "\x20\x32\x20\x32\x20\x32\0" },
+  { 0x2036, 255, 0, "\x20\x35\x20\x35\0" },
+  { 0x2037, 255, 0, "\x20\x35\x20\x35\x20\x35\0" },
+  { 0x203c, 255, 0, "\x00\x21\x00\x21\0" },
+  { 0x203e, 255, 0, "\x00\x20\x03\x05\0" },
+  { 0x2048, 255, 0, "\x00\x3f\x00\x21\0" },
+  { 0x2049, 255, 0, "\x00\x21\x00\x3f\0" },
+  { 0x2070, 255, 0, "\x00\x30\0" },
+  { 0x2074, 255, 0, "\x00\x34\0" },
+  { 0x2075, 255, 0, "\x00\x35\0" },
+  { 0x2076, 255, 0, "\x00\x36\0" },
+  { 0x2077, 255, 0, "\x00\x37\0" },
+  { 0x2078, 255, 0, "\x00\x38\0" },
+  { 0x2079, 255, 0, "\x00\x39\0" },
+  { 0x207a, 255, 0, "\x00\x2b\0" },
+  { 0x207b, 255, 0, "\x22\x12\0" },
+  { 0x207c, 255, 0, "\x00\x3d\0" },
+  { 0x207d, 255, 0, "\x00\x28\0" },
+  { 0x207e, 255, 0, "\x00\x29\0" },
+  { 0x207f, 255, 0, "\x00\x6e\0" },
+  { 0x2080, 255, 0, "\x00\x30\0" },
+  { 0x2081, 255, 0, "\x00\x31\0" },
+  { 0x2082, 255, 0, "\x00\x32\0" },
+  { 0x2083, 255, 0, "\x00\x33\0" },
+  { 0x2084, 255, 0, "\x00\x34\0" },
+  { 0x2085, 255, 0, "\x00\x35\0" },
+  { 0x2086, 255, 0, "\x00\x36\0" },
+  { 0x2087, 255, 0, "\x00\x37\0" },
+  { 0x2088, 255, 0, "\x00\x38\0" },
+  { 0x2089, 255, 0, "\x00\x39\0" },
+  { 0x208a, 255, 0, "\x00\x2b\0" },
+  { 0x208b, 255, 0, "\x22\x12\0" },
+  { 0x208c, 255, 0, "\x00\x3d\0" },
+  { 0x208d, 255, 0, "\x00\x28\0" },
+  { 0x208e, 255, 0, "\x00\x29\0" },
+  { 0x20a8, 255, 0, "\x00\x52\x00\x73\0" },
+  { 0x2100, 255, 0, "\x00\x61\x00\x2f\x00\x63\0" },
+  { 0x2101, 255, 0, "\x00\x61\x00\x2f\x00\x73\0" },
+  { 0x2102, 255, 0, "\x00\x43\0" },
+  { 0x2103, 255, 0, "\x00\xb0\x00\x43\0" },
+  { 0x2105, 255, 0, "\x00\x63\x00\x2f\x00\x6f\0" },
+  { 0x2106, 255, 0, "\x00\x63\x00\x2f\x00\x75\0" },
+  { 0x2107, 255, 0, "\x01\x90\0" },
+  { 0x2109, 255, 0, "\x00\xb0\x00\x46\0" },
+  { 0x210a, 255, 0, "\x00\x67\0" },
+  { 0x210b, 255, 0, "\x00\x48\0" },
+  { 0x210c, 255, 0, "\x00\x48\0" },
+  { 0x210d, 255, 0, "\x00\x48\0" },
+  { 0x210e, 255, 0, "\x00\x68\0" },
+  { 0x210f, 255, 0, "\x01\x27\0" },
+  { 0x2110, 255, 0, "\x00\x49\0" },
+  { 0x2111, 255, 0, "\x00\x49\0" },
+  { 0x2112, 255, 0, "\x00\x4c\0" },
+  { 0x2113, 255, 0, "\x00\x6c\0" },
+  { 0x2115, 255, 0, "\x00\x4e\0" },
+  { 0x2116, 255, 0, "\x00\x4e\x00\x6f\0" },
+  { 0x2119, 255, 0, "\x00\x50\0" },
+  { 0x211a, 255, 0, "\x00\x51\0" },
+  { 0x211b, 255, 0, "\x00\x52\0" },
+  { 0x211c, 255, 0, "\x00\x52\0" },
+  { 0x211d, 255, 0, "\x00\x52\0" },
+  { 0x2120, 255, 0, "\x00\x53\x00\x4d\0" },
+  { 0x2121, 255, 0, "\x00\x54\x00\x45\x00\x4c\0" },
+  { 0x2122, 255, 0, "\x00\x54\x00\x4d\0" },
+  { 0x2124, 255, 0, "\x00\x5a\0" },
+  { 0x2126, 0, 255, "\x03\xa9\0" },
+  { 0x2128, 255, 0, "\x00\x5a\0" },
+  { 0x212a, 0, 255, "\x00\x4b\0" },
+  { 0x212b, 0, 255, "\x00\x41\x03\x0a\0" },
+  { 0x212c, 255, 0, "\x00\x42\0" },
+  { 0x212d, 255, 0, "\x00\x43\0" },
+  { 0x212f, 255, 0, "\x00\x65\0" },
+  { 0x2130, 255, 0, "\x00\x45\0" },
+  { 0x2131, 255, 0, "\x00\x46\0" },
+  { 0x2133, 255, 0, "\x00\x4d\0" },
+  { 0x2134, 255, 0, "\x00\x6f\0" },
+  { 0x2135, 255, 0, "\x05\xd0\0" },
+  { 0x2136, 255, 0, "\x05\xd1\0" },
+  { 0x2137, 255, 0, "\x05\xd2\0" },
+  { 0x2138, 255, 0, "\x05\xd3\0" },
+  { 0x2139, 255, 0, "\x00\x69\0" },
+  { 0x2153, 255, 0, "\x00\x31\x20\x44\x00\x33\0" },
+  { 0x2154, 255, 0, "\x00\x32\x20\x44\x00\x33\0" },
+  { 0x2155, 255, 0, "\x00\x31\x20\x44\x00\x35\0" },
+  { 0x2156, 255, 0, "\x00\x32\x20\x44\x00\x35\0" },
+  { 0x2157, 255, 0, "\x00\x33\x20\x44\x00\x35\0" },
+  { 0x2158, 255, 0, "\x00\x34\x20\x44\x00\x35\0" },
+  { 0x2159, 255, 0, "\x00\x31\x20\x44\x00\x36\0" },
+  { 0x215a, 255, 0, "\x00\x35\x20\x44\x00\x36\0" },
+  { 0x215b, 255, 0, "\x00\x31\x20\x44\x00\x38\0" },
+  { 0x215c, 255, 0, "\x00\x33\x20\x44\x00\x38\0" },
+  { 0x215d, 255, 0, "\x00\x35\x20\x44\x00\x38\0" },
+  { 0x215e, 255, 0, "\x00\x37\x20\x44\x00\x38\0" },
+  { 0x215f, 255, 0, "\x00\x31\x20\x44\0" },
+  { 0x2160, 255, 0, "\x00\x49\0" },
+  { 0x2161, 255, 0, "\x00\x49\x00\x49\0" },
+  { 0x2162, 255, 0, "\x00\x49\x00\x49\x00\x49\0" },
+  { 0x2163, 255, 0, "\x00\x49\x00\x56\0" },
+  { 0x2164, 255, 0, "\x00\x56\0" },
+  { 0x2165, 255, 0, "\x00\x56\x00\x49\0" },
+  { 0x2166, 255, 0, "\x00\x56\x00\x49\x00\x49\0" },
+  { 0x2167, 255, 0, "\x00\x56\x00\x49\x00\x49\x00\x49\0" },
+  { 0x2168, 255, 0, "\x00\x49\x00\x58\0" },
+  { 0x2169, 255, 0, "\x00\x58\0" },
+  { 0x216a, 255, 0, "\x00\x58\x00\x49\0" },
+  { 0x216b, 255, 0, "\x00\x58\x00\x49\x00\x49\0" },
+  { 0x216c, 255, 0, "\x00\x4c\0" },
+  { 0x216d, 255, 0, "\x00\x43\0" },
+  { 0x216e, 255, 0, "\x00\x44\0" },
+  { 0x216f, 255, 0, "\x00\x4d\0" },
+  { 0x2170, 255, 0, "\x00\x69\0" },
+  { 0x2171, 255, 0, "\x00\x69\x00\x69\0" },
+  { 0x2172, 255, 0, "\x00\x69\x00\x69\x00\x69\0" },
+  { 0x2173, 255, 0, "\x00\x69\x00\x76\0" },
+  { 0x2174, 255, 0, "\x00\x76\0" },
+  { 0x2175, 255, 0, "\x00\x76\x00\x69\0" },
+  { 0x2176, 255, 0, "\x00\x76\x00\x69\x00\x69\0" },
+  { 0x2177, 255, 0, "\x00\x76\x00\x69\x00\x69\x00\x69\0" },
+  { 0x2178, 255, 0, "\x00\x69\x00\x78\0" },
+  { 0x2179, 255, 0, "\x00\x78\0" },
+  { 0x217a, 255, 0, "\x00\x78\x00\x69\0" },
+  { 0x217b, 255, 0, "\x00\x78\x00\x69\x00\x69\0" },
+  { 0x217c, 255, 0, "\x00\x6c\0" },
+  { 0x217d, 255, 0, "\x00\x63\0" },
+  { 0x217e, 255, 0, "\x00\x64\0" },
+  { 0x217f, 255, 0, "\x00\x6d\0" },
+  { 0x219a, 0, 255, "\x21\x90\x03\x38\0" },
+  { 0x219b, 0, 255, "\x21\x92\x03\x38\0" },
+  { 0x21ae, 0, 255, "\x21\x94\x03\x38\0" },
+  { 0x21cd, 0, 255, "\x21\xd0\x03\x38\0" },
+  { 0x21ce, 0, 255, "\x21\xd4\x03\x38\0" },
+  { 0x21cf, 0, 255, "\x21\xd2\x03\x38\0" },
+  { 0x2204, 0, 255, "\x22\x03\x03\x38\0" },
+  { 0x2209, 0, 255, "\x22\x08\x03\x38\0" },
+  { 0x220c, 0, 255, "\x22\x0b\x03\x38\0" },
+  { 0x2224, 0, 255, "\x22\x23\x03\x38\0" },
+  { 0x2226, 0, 255, "\x22\x25\x03\x38\0" },
+  { 0x222c, 255, 0, "\x22\x2b\x22\x2b\0" },
+  { 0x222d, 255, 0, "\x22\x2b\x22\x2b\x22\x2b\0" },
+  { 0x222f, 255, 0, "\x22\x2e\x22\x2e\0" },
+  { 0x2230, 255, 0, "\x22\x2e\x22\x2e\x22\x2e\0" },
+  { 0x2241, 0, 255, "\x22\x3c\x03\x38\0" },
+  { 0x2244, 0, 255, "\x22\x43\x03\x38\0" },
+  { 0x2247, 0, 255, "\x22\x45\x03\x38\0" },
+  { 0x2249, 0, 255, "\x22\x48\x03\x38\0" },
+  { 0x2260, 0, 255, "\x00\x3d\x03\x38\0" },
+  { 0x2262, 0, 255, "\x22\x61\x03\x38\0" },
+  { 0x226d, 0, 255, "\x22\x4d\x03\x38\0" },
+  { 0x226e, 0, 255, "\x00\x3c\x03\x38\0" },
+  { 0x226f, 0, 255, "\x00\x3e\x03\x38\0" },
+  { 0x2270, 0, 255, "\x22\x64\x03\x38\0" },
+  { 0x2271, 0, 255, "\x22\x65\x03\x38\0" },
+  { 0x2274, 0, 255, "\x22\x72\x03\x38\0" },
+  { 0x2275, 0, 255, "\x22\x73\x03\x38\0" },
+  { 0x2278, 0, 255, "\x22\x76\x03\x38\0" },
+  { 0x2279, 0, 255, "\x22\x77\x03\x38\0" },
+  { 0x2280, 0, 255, "\x22\x7a\x03\x38\0" },
+  { 0x2281, 0, 255, "\x22\x7b\x03\x38\0" },
+  { 0x2284, 0, 255, "\x22\x82\x03\x38\0" },
+  { 0x2285, 0, 255, "\x22\x83\x03\x38\0" },
+  { 0x2288, 0, 255, "\x22\x86\x03\x38\0" },
+  { 0x2289, 0, 255, "\x22\x87\x03\x38\0" },
+  { 0x22ac, 0, 255, "\x22\xa2\x03\x38\0" },
+  { 0x22ad, 0, 255, "\x22\xa8\x03\x38\0" },
+  { 0x22ae, 0, 255, "\x22\xa9\x03\x38\0" },
+  { 0x22af, 0, 255, "\x22\xab\x03\x38\0" },
+  { 0x22e0, 0, 255, "\x22\x7c\x03\x38\0" },
+  { 0x22e1, 0, 255, "\x22\x7d\x03\x38\0" },
+  { 0x22e2, 0, 255, "\x22\x91\x03\x38\0" },
+  { 0x22e3, 0, 255, "\x22\x92\x03\x38\0" },
+  { 0x22ea, 0, 255, "\x22\xb2\x03\x38\0" },
+  { 0x22eb, 0, 255, "\x22\xb3\x03\x38\0" },
+  { 0x22ec, 0, 255, "\x22\xb4\x03\x38\0" },
+  { 0x22ed, 0, 255, "\x22\xb5\x03\x38\0" },
+  { 0x2329, 0, 255, "\x30\x08\0" },
+  { 0x232a, 0, 255, "\x30\x09\0" },
+  { 0x2460, 255, 0, "\x00\x31\0" },
+  { 0x2461, 255, 0, "\x00\x32\0" },
+  { 0x2462, 255, 0, "\x00\x33\0" },
+  { 0x2463, 255, 0, "\x00\x34\0" },
+  { 0x2464, 255, 0, "\x00\x35\0" },
+  { 0x2465, 255, 0, "\x00\x36\0" },
+  { 0x2466, 255, 0, "\x00\x37\0" },
+  { 0x2467, 255, 0, "\x00\x38\0" },
+  { 0x2468, 255, 0, "\x00\x39\0" },
+  { 0x2469, 255, 0, "\x00\x31\x00\x30\0" },
+  { 0x246a, 255, 0, "\x00\x31\x00\x31\0" },
+  { 0x246b, 255, 0, "\x00\x31\x00\x32\0" },
+  { 0x246c, 255, 0, "\x00\x31\x00\x33\0" },
+  { 0x246d, 255, 0, "\x00\x31\x00\x34\0" },
+  { 0x246e, 255, 0, "\x00\x31\x00\x35\0" },
+  { 0x246f, 255, 0, "\x00\x31\x00\x36\0" },
+  { 0x2470, 255, 0, "\x00\x31\x00\x37\0" },
+  { 0x2471, 255, 0, "\x00\x31\x00\x38\0" },
+  { 0x2472, 255, 0, "\x00\x31\x00\x39\0" },
+  { 0x2473, 255, 0, "\x00\x32\x00\x30\0" },
+  { 0x2474, 255, 0, "\x00\x28\x00\x31\x00\x29\0" },
+  { 0x2475, 255, 0, "\x00\x28\x00\x32\x00\x29\0" },
+  { 0x2476, 255, 0, "\x00\x28\x00\x33\x00\x29\0" },
+  { 0x2477, 255, 0, "\x00\x28\x00\x34\x00\x29\0" },
+  { 0x2478, 255, 0, "\x00\x28\x00\x35\x00\x29\0" },
+  { 0x2479, 255, 0, "\x00\x28\x00\x36\x00\x29\0" },
+  { 0x247a, 255, 0, "\x00\x28\x00\x37\x00\x29\0" },
+  { 0x247b, 255, 0, "\x00\x28\x00\x38\x00\x29\0" },
+  { 0x247c, 255, 0, "\x00\x28\x00\x39\x00\x29\0" },
+  { 0x247d, 255, 0, "\x00\x28\x00\x31\x00\x30\x00\x29\0" },
+  { 0x247e, 255, 0, "\x00\x28\x00\x31\x00\x31\x00\x29\0" },
+  { 0x247f, 255, 0, "\x00\x28\x00\x31\x00\x32\x00\x29\0" },
+  { 0x2480, 255, 0, "\x00\x28\x00\x31\x00\x33\x00\x29\0" },
+  { 0x2481, 255, 0, "\x00\x28\x00\x31\x00\x34\x00\x29\0" },
+  { 0x2482, 255, 0, "\x00\x28\x00\x31\x00\x35\x00\x29\0" },
+  { 0x2483, 255, 0, "\x00\x28\x00\x31\x00\x36\x00\x29\0" },
+  { 0x2484, 255, 0, "\x00\x28\x00\x31\x00\x37\x00\x29\0" },
+  { 0x2485, 255, 0, "\x00\x28\x00\x31\x00\x38\x00\x29\0" },
+  { 0x2486, 255, 0, "\x00\x28\x00\x31\x00\x39\x00\x29\0" },
+  { 0x2487, 255, 0, "\x00\x28\x00\x32\x00\x30\x00\x29\0" },
+  { 0x2488, 255, 0, "\x00\x31\x00\x2e\0" },
+  { 0x2489, 255, 0, "\x00\x32\x00\x2e\0" },
+  { 0x248a, 255, 0, "\x00\x33\x00\x2e\0" },
+  { 0x248b, 255, 0, "\x00\x34\x00\x2e\0" },
+  { 0x248c, 255, 0, "\x00\x35\x00\x2e\0" },
+  { 0x248d, 255, 0, "\x00\x36\x00\x2e\0" },
+  { 0x248e, 255, 0, "\x00\x37\x00\x2e\0" },
+  { 0x248f, 255, 0, "\x00\x38\x00\x2e\0" },
+  { 0x2490, 255, 0, "\x00\x39\x00\x2e\0" },
+  { 0x2491, 255, 0, "\x00\x31\x00\x30\x00\x2e\0" },
+  { 0x2492, 255, 0, "\x00\x31\x00\x31\x00\x2e\0" },
+  { 0x2493, 255, 0, "\x00\x31\x00\x32\x00\x2e\0" },
+  { 0x2494, 255, 0, "\x00\x31\x00\x33\x00\x2e\0" },
+  { 0x2495, 255, 0, "\x00\x31\x00\x34\x00\x2e\0" },
+  { 0x2496, 255, 0, "\x00\x31\x00\x35\x00\x2e\0" },
+  { 0x2497, 255, 0, "\x00\x31\x00\x36\x00\x2e\0" },
+  { 0x2498, 255, 0, "\x00\x31\x00\x37\x00\x2e\0" },
+  { 0x2499, 255, 0, "\x00\x31\x00\x38\x00\x2e\0" },
+  { 0x249a, 255, 0, "\x00\x31\x00\x39\x00\x2e\0" },
+  { 0x249b, 255, 0, "\x00\x32\x00\x30\x00\x2e\0" },
+  { 0x249c, 255, 0, "\x00\x28\x00\x61\x00\x29\0" },
+  { 0x249d, 255, 0, "\x00\x28\x00\x62\x00\x29\0" },
+  { 0x249e, 255, 0, "\x00\x28\x00\x63\x00\x29\0" },
+  { 0x249f, 255, 0, "\x00\x28\x00\x64\x00\x29\0" },
+  { 0x24a0, 255, 0, "\x00\x28\x00\x65\x00\x29\0" },
+  { 0x24a1, 255, 0, "\x00\x28\x00\x66\x00\x29\0" },
+  { 0x24a2, 255, 0, "\x00\x28\x00\x67\x00\x29\0" },
+  { 0x24a3, 255, 0, "\x00\x28\x00\x68\x00\x29\0" },
+  { 0x24a4, 255, 0, "\x00\x28\x00\x69\x00\x29\0" },
+  { 0x24a5, 255, 0, "\x00\x28\x00\x6a\x00\x29\0" },
+  { 0x24a6, 255, 0, "\x00\x28\x00\x6b\x00\x29\0" },
+  { 0x24a7, 255, 0, "\x00\x28\x00\x6c\x00\x29\0" },
+  { 0x24a8, 255, 0, "\x00\x28\x00\x6d\x00\x29\0" },
+  { 0x24a9, 255, 0, "\x00\x28\x00\x6e\x00\x29\0" },
+  { 0x24aa, 255, 0, "\x00\x28\x00\x6f\x00\x29\0" },
+  { 0x24ab, 255, 0, "\x00\x28\x00\x70\x00\x29\0" },
+  { 0x24ac, 255, 0, "\x00\x28\x00\x71\x00\x29\0" },
+  { 0x24ad, 255, 0, "\x00\x28\x00\x72\x00\x29\0" },
+  { 0x24ae, 255, 0, "\x00\x28\x00\x73\x00\x29\0" },
+  { 0x24af, 255, 0, "\x00\x28\x00\x74\x00\x29\0" },
+  { 0x24b0, 255, 0, "\x00\x28\x00\x75\x00\x29\0" },
+  { 0x24b1, 255, 0, "\x00\x28\x00\x76\x00\x29\0" },
+  { 0x24b2, 255, 0, "\x00\x28\x00\x77\x00\x29\0" },
+  { 0x24b3, 255, 0, "\x00\x28\x00\x78\x00\x29\0" },
+  { 0x24b4, 255, 0, "\x00\x28\x00\x79\x00\x29\0" },
+  { 0x24b5, 255, 0, "\x00\x28\x00\x7a\x00\x29\0" },
+  { 0x24b6, 255, 0, "\x00\x41\0" },
+  { 0x24b7, 255, 0, "\x00\x42\0" },
+  { 0x24b8, 255, 0, "\x00\x43\0" },
+  { 0x24b9, 255, 0, "\x00\x44\0" },
+  { 0x24ba, 255, 0, "\x00\x45\0" },
+  { 0x24bb, 255, 0, "\x00\x46\0" },
+  { 0x24bc, 255, 0, "\x00\x47\0" },
+  { 0x24bd, 255, 0, "\x00\x48\0" },
+  { 0x24be, 255, 0, "\x00\x49\0" },
+  { 0x24bf, 255, 0, "\x00\x4a\0" },
+  { 0x24c0, 255, 0, "\x00\x4b\0" },
+  { 0x24c1, 255, 0, "\x00\x4c\0" },
+  { 0x24c2, 255, 0, "\x00\x4d\0" },
+  { 0x24c3, 255, 0, "\x00\x4e\0" },
+  { 0x24c4, 255, 0, "\x00\x4f\0" },
+  { 0x24c5, 255, 0, "\x00\x50\0" },
+  { 0x24c6, 255, 0, "\x00\x51\0" },
+  { 0x24c7, 255, 0, "\x00\x52\0" },
+  { 0x24c8, 255, 0, "\x00\x53\0" },
+  { 0x24c9, 255, 0, "\x00\x54\0" },
+  { 0x24ca, 255, 0, "\x00\x55\0" },
+  { 0x24cb, 255, 0, "\x00\x56\0" },
+  { 0x24cc, 255, 0, "\x00\x57\0" },
+  { 0x24cd, 255, 0, "\x00\x58\0" },
+  { 0x24ce, 255, 0, "\x00\x59\0" },
+  { 0x24cf, 255, 0, "\x00\x5a\0" },
+  { 0x24d0, 255, 0, "\x00\x61\0" },
+  { 0x24d1, 255, 0, "\x00\x62\0" },
+  { 0x24d2, 255, 0, "\x00\x63\0" },
+  { 0x24d3, 255, 0, "\x00\x64\0" },
+  { 0x24d4, 255, 0, "\x00\x65\0" },
+  { 0x24d5, 255, 0, "\x00\x66\0" },
+  { 0x24d6, 255, 0, "\x00\x67\0" },
+  { 0x24d7, 255, 0, "\x00\x68\0" },
+  { 0x24d8, 255, 0, "\x00\x69\0" },
+  { 0x24d9, 255, 0, "\x00\x6a\0" },
+  { 0x24da, 255, 0, "\x00\x6b\0" },
+  { 0x24db, 255, 0, "\x00\x6c\0" },
+  { 0x24dc, 255, 0, "\x00\x6d\0" },
+  { 0x24dd, 255, 0, "\x00\x6e\0" },
+  { 0x24de, 255, 0, "\x00\x6f\0" },
+  { 0x24df, 255, 0, "\x00\x70\0" },
+  { 0x24e0, 255, 0, "\x00\x71\0" },
+  { 0x24e1, 255, 0, "\x00\x72\0" },
+  { 0x24e2, 255, 0, "\x00\x73\0" },
+  { 0x24e3, 255, 0, "\x00\x74\0" },
+  { 0x24e4, 255, 0, "\x00\x75\0" },
+  { 0x24e5, 255, 0, "\x00\x76\0" },
+  { 0x24e6, 255, 0, "\x00\x77\0" },
+  { 0x24e7, 255, 0, "\x00\x78\0" },
+  { 0x24e8, 255, 0, "\x00\x79\0" },
+  { 0x24e9, 255, 0, "\x00\x7a\0" },
+  { 0x24ea, 255, 0, "\x00\x30\0" },
+  { 0x2e9f, 255, 0, "\x6b\xcd\0" },
+  { 0x2ef3, 255, 0, "\x9f\x9f\0" },
+  { 0x2f00, 255, 0, "\x4e\x00\0" },
+  { 0x2f01, 255, 0, "\x4e\x28\0" },
+  { 0x2f02, 255, 0, "\x4e\x36\0" },
+  { 0x2f03, 255, 0, "\x4e\x3f\0" },
+  { 0x2f04, 255, 0, "\x4e\x59\0" },
+  { 0x2f05, 255, 0, "\x4e\x85\0" },
+  { 0x2f06, 255, 0, "\x4e\x8c\0" },
+  { 0x2f07, 255, 0, "\x4e\xa0\0" },
+  { 0x2f08, 255, 0, "\x4e\xba\0" },
+  { 0x2f09, 255, 0, "\x51\x3f\0" },
+  { 0x2f0a, 255, 0, "\x51\x65\0" },
+  { 0x2f0b, 255, 0, "\x51\x6b\0" },
+  { 0x2f0c, 255, 0, "\x51\x82\0" },
+  { 0x2f0d, 255, 0, "\x51\x96\0" },
+  { 0x2f0e, 255, 0, "\x51\xab\0" },
+  { 0x2f0f, 255, 0, "\x51\xe0\0" },
+  { 0x2f10, 255, 0, "\x51\xf5\0" },
+  { 0x2f11, 255, 0, "\x52\x00\0" },
+  { 0x2f12, 255, 0, "\x52\x9b\0" },
+  { 0x2f13, 255, 0, "\x52\xf9\0" },
+  { 0x2f14, 255, 0, "\x53\x15\0" },
+  { 0x2f15, 255, 0, "\x53\x1a\0" },
+  { 0x2f16, 255, 0, "\x53\x38\0" },
+  { 0x2f17, 255, 0, "\x53\x41\0" },
+  { 0x2f18, 255, 0, "\x53\x5c\0" },
+  { 0x2f19, 255, 0, "\x53\x69\0" },
+  { 0x2f1a, 255, 0, "\x53\x82\0" },
+  { 0x2f1b, 255, 0, "\x53\xb6\0" },
+  { 0x2f1c, 255, 0, "\x53\xc8\0" },
+  { 0x2f1d, 255, 0, "\x53\xe3\0" },
+  { 0x2f1e, 255, 0, "\x56\xd7\0" },
+  { 0x2f1f, 255, 0, "\x57\x1f\0" },
+  { 0x2f20, 255, 0, "\x58\xeb\0" },
+  { 0x2f21, 255, 0, "\x59\x02\0" },
+  { 0x2f22, 255, 0, "\x59\x0a\0" },
+  { 0x2f23, 255, 0, "\x59\x15\0" },
+  { 0x2f24, 255, 0, "\x59\x27\0" },
+  { 0x2f25, 255, 0, "\x59\x73\0" },
+  { 0x2f26, 255, 0, "\x5b\x50\0" },
+  { 0x2f27, 255, 0, "\x5b\x80\0" },
+  { 0x2f28, 255, 0, "\x5b\xf8\0" },
+  { 0x2f29, 255, 0, "\x5c\x0f\0" },
+  { 0x2f2a, 255, 0, "\x5c\x22\0" },
+  { 0x2f2b, 255, 0, "\x5c\x38\0" },
+  { 0x2f2c, 255, 0, "\x5c\x6e\0" },
+  { 0x2f2d, 255, 0, "\x5c\x71\0" },
+  { 0x2f2e, 255, 0, "\x5d\xdb\0" },
+  { 0x2f2f, 255, 0, "\x5d\xe5\0" },
+  { 0x2f30, 255, 0, "\x5d\xf1\0" },
+  { 0x2f31, 255, 0, "\x5d\xfe\0" },
+  { 0x2f32, 255, 0, "\x5e\x72\0" },
+  { 0x2f33, 255, 0, "\x5e\x7a\0" },
+  { 0x2f34, 255, 0, "\x5e\x7f\0" },
+  { 0x2f35, 255, 0, "\x5e\xf4\0" },
+  { 0x2f36, 255, 0, "\x5e\xfe\0" },
+  { 0x2f37, 255, 0, "\x5f\x0b\0" },
+  { 0x2f38, 255, 0, "\x5f\x13\0" },
+  { 0x2f39, 255, 0, "\x5f\x50\0" },
+  { 0x2f3a, 255, 0, "\x5f\x61\0" },
+  { 0x2f3b, 255, 0, "\x5f\x73\0" },
+  { 0x2f3c, 255, 0, "\x5f\xc3\0" },
+  { 0x2f3d, 255, 0, "\x62\x08\0" },
+  { 0x2f3e, 255, 0, "\x62\x36\0" },
+  { 0x2f3f, 255, 0, "\x62\x4b\0" },
+  { 0x2f40, 255, 0, "\x65\x2f\0" },
+  { 0x2f41, 255, 0, "\x65\x34\0" },
+  { 0x2f42, 255, 0, "\x65\x87\0" },
+  { 0x2f43, 255, 0, "\x65\x97\0" },
+  { 0x2f44, 255, 0, "\x65\xa4\0" },
+  { 0x2f45, 255, 0, "\x65\xb9\0" },
+  { 0x2f46, 255, 0, "\x65\xe0\0" },
+  { 0x2f47, 255, 0, "\x65\xe5\0" },
+  { 0x2f48, 255, 0, "\x66\xf0\0" },
+  { 0x2f49, 255, 0, "\x67\x08\0" },
+  { 0x2f4a, 255, 0, "\x67\x28\0" },
+  { 0x2f4b, 255, 0, "\x6b\x20\0" },
+  { 0x2f4c, 255, 0, "\x6b\x62\0" },
+  { 0x2f4d, 255, 0, "\x6b\x79\0" },
+  { 0x2f4e, 255, 0, "\x6b\xb3\0" },
+  { 0x2f4f, 255, 0, "\x6b\xcb\0" },
+  { 0x2f50, 255, 0, "\x6b\xd4\0" },
+  { 0x2f51, 255, 0, "\x6b\xdb\0" },
+  { 0x2f52, 255, 0, "\x6c\x0f\0" },
+  { 0x2f53, 255, 0, "\x6c\x14\0" },
+  { 0x2f54, 255, 0, "\x6c\x34\0" },
+  { 0x2f55, 255, 0, "\x70\x6b\0" },
+  { 0x2f56, 255, 0, "\x72\x2a\0" },
+  { 0x2f57, 255, 0, "\x72\x36\0" },
+  { 0x2f58, 255, 0, "\x72\x3b\0" },
+  { 0x2f59, 255, 0, "\x72\x3f\0" },
+  { 0x2f5a, 255, 0, "\x72\x47\0" },
+  { 0x2f5b, 255, 0, "\x72\x59\0" },
+  { 0x2f5c, 255, 0, "\x72\x5b\0" },
+  { 0x2f5d, 255, 0, "\x72\xac\0" },
+  { 0x2f5e, 255, 0, "\x73\x84\0" },
+  { 0x2f5f, 255, 0, "\x73\x89\0" },
+  { 0x2f60, 255, 0, "\x74\xdc\0" },
+  { 0x2f61, 255, 0, "\x74\xe6\0" },
+  { 0x2f62, 255, 0, "\x75\x18\0" },
+  { 0x2f63, 255, 0, "\x75\x1f\0" },
+  { 0x2f64, 255, 0, "\x75\x28\0" },
+  { 0x2f65, 255, 0, "\x75\x30\0" },
+  { 0x2f66, 255, 0, "\x75\x8b\0" },
+  { 0x2f67, 255, 0, "\x75\x92\0" },
+  { 0x2f68, 255, 0, "\x76\x76\0" },
+  { 0x2f69, 255, 0, "\x76\x7d\0" },
+  { 0x2f6a, 255, 0, "\x76\xae\0" },
+  { 0x2f6b, 255, 0, "\x76\xbf\0" },
+  { 0x2f6c, 255, 0, "\x76\xee\0" },
+  { 0x2f6d, 255, 0, "\x77\xdb\0" },
+  { 0x2f6e, 255, 0, "\x77\xe2\0" },
+  { 0x2f6f, 255, 0, "\x77\xf3\0" },
+  { 0x2f70, 255, 0, "\x79\x3a\0" },
+  { 0x2f71, 255, 0, "\x79\xb8\0" },
+  { 0x2f72, 255, 0, "\x79\xbe\0" },
+  { 0x2f73, 255, 0, "\x7a\x74\0" },
+  { 0x2f74, 255, 0, "\x7a\xcb\0" },
+  { 0x2f75, 255, 0, "\x7a\xf9\0" },
+  { 0x2f76, 255, 0, "\x7c\x73\0" },
+  { 0x2f77, 255, 0, "\x7c\xf8\0" },
+  { 0x2f78, 255, 0, "\x7f\x36\0" },
+  { 0x2f79, 255, 0, "\x7f\x51\0" },
+  { 0x2f7a, 255, 0, "\x7f\x8a\0" },
+  { 0x2f7b, 255, 0, "\x7f\xbd\0" },
+  { 0x2f7c, 255, 0, "\x80\x01\0" },
+  { 0x2f7d, 255, 0, "\x80\x0c\0" },
+  { 0x2f7e, 255, 0, "\x80\x12\0" },
+  { 0x2f7f, 255, 0, "\x80\x33\0" },
+  { 0x2f80, 255, 0, "\x80\x7f\0" },
+  { 0x2f81, 255, 0, "\x80\x89\0" },
+  { 0x2f82, 255, 0, "\x81\xe3\0" },
+  { 0x2f83, 255, 0, "\x81\xea\0" },
+  { 0x2f84, 255, 0, "\x81\xf3\0" },
+  { 0x2f85, 255, 0, "\x81\xfc\0" },
+  { 0x2f86, 255, 0, "\x82\x0c\0" },
+  { 0x2f87, 255, 0, "\x82\x1b\0" },
+  { 0x2f88, 255, 0, "\x82\x1f\0" },
+  { 0x2f89, 255, 0, "\x82\x6e\0" },
+  { 0x2f8a, 255, 0, "\x82\x72\0" },
+  { 0x2f8b, 255, 0, "\x82\x78\0" },
+  { 0x2f8c, 255, 0, "\x86\x4d\0" },
+  { 0x2f8d, 255, 0, "\x86\x6b\0" },
+  { 0x2f8e, 255, 0, "\x88\x40\0" },
+  { 0x2f8f, 255, 0, "\x88\x4c\0" },
+  { 0x2f90, 255, 0, "\x88\x63\0" },
+  { 0x2f91, 255, 0, "\x89\x7e\0" },
+  { 0x2f92, 255, 0, "\x89\x8b\0" },
+  { 0x2f93, 255, 0, "\x89\xd2\0" },
+  { 0x2f94, 255, 0, "\x8a\x00\0" },
+  { 0x2f95, 255, 0, "\x8c\x37\0" },
+  { 0x2f96, 255, 0, "\x8c\x46\0" },
+  { 0x2f97, 255, 0, "\x8c\x55\0" },
+  { 0x2f98, 255, 0, "\x8c\x78\0" },
+  { 0x2f99, 255, 0, "\x8c\x9d\0" },
+  { 0x2f9a, 255, 0, "\x8d\x64\0" },
+  { 0x2f9b, 255, 0, "\x8d\x70\0" },
+  { 0x2f9c, 255, 0, "\x8d\xb3\0" },
+  { 0x2f9d, 255, 0, "\x8e\xab\0" },
+  { 0x2f9e, 255, 0, "\x8e\xca\0" },
+  { 0x2f9f, 255, 0, "\x8f\x9b\0" },
+  { 0x2fa0, 255, 0, "\x8f\xb0\0" },
+  { 0x2fa1, 255, 0, "\x8f\xb5\0" },
+  { 0x2fa2, 255, 0, "\x90\x91\0" },
+  { 0x2fa3, 255, 0, "\x91\x49\0" },
+  { 0x2fa4, 255, 0, "\x91\xc6\0" },
+  { 0x2fa5, 255, 0, "\x91\xcc\0" },
+  { 0x2fa6, 255, 0, "\x91\xd1\0" },
+  { 0x2fa7, 255, 0, "\x95\x77\0" },
+  { 0x2fa8, 255, 0, "\x95\x80\0" },
+  { 0x2fa9, 255, 0, "\x96\x1c\0" },
+  { 0x2faa, 255, 0, "\x96\xb6\0" },
+  { 0x2fab, 255, 0, "\x96\xb9\0" },
+  { 0x2fac, 255, 0, "\x96\xe8\0" },
+  { 0x2fad, 255, 0, "\x97\x51\0" },
+  { 0x2fae, 255, 0, "\x97\x5e\0" },
+  { 0x2faf, 255, 0, "\x97\x62\0" },
+  { 0x2fb0, 255, 0, "\x97\x69\0" },
+  { 0x2fb1, 255, 0, "\x97\xcb\0" },
+  { 0x2fb2, 255, 0, "\x97\xed\0" },
+  { 0x2fb3, 255, 0, "\x97\xf3\0" },
+  { 0x2fb4, 255, 0, "\x98\x01\0" },
+  { 0x2fb5, 255, 0, "\x98\xa8\0" },
+  { 0x2fb6, 255, 0, "\x98\xdb\0" },
+  { 0x2fb7, 255, 0, "\x98\xdf\0" },
+  { 0x2fb8, 255, 0, "\x99\x96\0" },
+  { 0x2fb9, 255, 0, "\x99\x99\0" },
+  { 0x2fba, 255, 0, "\x99\xac\0" },
+  { 0x2fbb, 255, 0, "\x9a\xa8\0" },
+  { 0x2fbc, 255, 0, "\x9a\xd8\0" },
+  { 0x2fbd, 255, 0, "\x9a\xdf\0" },
+  { 0x2fbe, 255, 0, "\x9b\x25\0" },
+  { 0x2fbf, 255, 0, "\x9b\x2f\0" },
+  { 0x2fc0, 255, 0, "\x9b\x32\0" },
+  { 0x2fc1, 255, 0, "\x9b\x3c\0" },
+  { 0x2fc2, 255, 0, "\x9b\x5a\0" },
+  { 0x2fc3, 255, 0, "\x9c\xe5\0" },
+  { 0x2fc4, 255, 0, "\x9e\x75\0" },
+  { 0x2fc5, 255, 0, "\x9e\x7f\0" },
+  { 0x2fc6, 255, 0, "\x9e\xa5\0" },
+  { 0x2fc7, 255, 0, "\x9e\xbb\0" },
+  { 0x2fc8, 255, 0, "\x9e\xc3\0" },
+  { 0x2fc9, 255, 0, "\x9e\xcd\0" },
+  { 0x2fca, 255, 0, "\x9e\xd1\0" },
+  { 0x2fcb, 255, 0, "\x9e\xf9\0" },
+  { 0x2fcc, 255, 0, "\x9e\xfd\0" },
+  { 0x2fcd, 255, 0, "\x9f\x0e\0" },
+  { 0x2fce, 255, 0, "\x9f\x13\0" },
+  { 0x2fcf, 255, 0, "\x9f\x20\0" },
+  { 0x2fd0, 255, 0, "\x9f\x3b\0" },
+  { 0x2fd1, 255, 0, "\x9f\x4a\0" },
+  { 0x2fd2, 255, 0, "\x9f\x52\0" },
+  { 0x2fd3, 255, 0, "\x9f\x8d\0" },
+  { 0x2fd4, 255, 0, "\x9f\x9c\0" },
+  { 0x2fd5, 255, 0, "\x9f\xa0\0" },
+  { 0x3000, 255, 0, "\x00\x20\0" },
+  { 0x3036, 255, 0, "\x30\x12\0" },
+  { 0x3038, 255, 0, "\x53\x41\0" },
+  { 0x3039, 255, 0, "\x53\x44\0" },
+  { 0x303a, 255, 0, "\x53\x45\0" },
+  { 0x304c, 0, 255, "\x30\x4b\x30\x99\0" },
+  { 0x304e, 0, 255, "\x30\x4d\x30\x99\0" },
+  { 0x3050, 0, 255, "\x30\x4f\x30\x99\0" },
+  { 0x3052, 0, 255, "\x30\x51\x30\x99\0" },
+  { 0x3054, 0, 255, "\x30\x53\x30\x99\0" },
+  { 0x3056, 0, 255, "\x30\x55\x30\x99\0" },
+  { 0x3058, 0, 255, "\x30\x57\x30\x99\0" },
+  { 0x305a, 0, 255, "\x30\x59\x30\x99\0" },
+  { 0x305c, 0, 255, "\x30\x5b\x30\x99\0" },
+  { 0x305e, 0, 255, "\x30\x5d\x30\x99\0" },
+  { 0x3060, 0, 255, "\x30\x5f\x30\x99\0" },
+  { 0x3062, 0, 255, "\x30\x61\x30\x99\0" },
+  { 0x3065, 0, 255, "\x30\x64\x30\x99\0" },
+  { 0x3067, 0, 255, "\x30\x66\x30\x99\0" },
+  { 0x3069, 0, 255, "\x30\x68\x30\x99\0" },
+  { 0x3070, 0, 255, "\x30\x6f\x30\x99\0" },
+  { 0x3071, 0, 255, "\x30\x6f\x30\x9a\0" },
+  { 0x3073, 0, 255, "\x30\x72\x30\x99\0" },
+  { 0x3074, 0, 255, "\x30\x72\x30\x9a\0" },
+  { 0x3076, 0, 255, "\x30\x75\x30\x99\0" },
+  { 0x3077, 0, 255, "\x30\x75\x30\x9a\0" },
+  { 0x3079, 0, 255, "\x30\x78\x30\x99\0" },
+  { 0x307a, 0, 255, "\x30\x78\x30\x9a\0" },
+  { 0x307c, 0, 255, "\x30\x7b\x30\x99\0" },
+  { 0x307d, 0, 255, "\x30\x7b\x30\x9a\0" },
+  { 0x3094, 0, 255, "\x30\x46\x30\x99\0" },
+  { 0x309b, 255, 0, "\x00\x20\x30\x99\0" },
+  { 0x309c, 255, 0, "\x00\x20\x30\x9a\0" },
+  { 0x309e, 0, 255, "\x30\x9d\x30\x99\0" },
+  { 0x30ac, 0, 255, "\x30\xab\x30\x99\0" },
+  { 0x30ae, 0, 255, "\x30\xad\x30\x99\0" },
+  { 0x30b0, 0, 255, "\x30\xaf\x30\x99\0" },
+  { 0x30b2, 0, 255, "\x30\xb1\x30\x99\0" },
+  { 0x30b4, 0, 255, "\x30\xb3\x30\x99\0" },
+  { 0x30b6, 0, 255, "\x30\xb5\x30\x99\0" },
+  { 0x30b8, 0, 255, "\x30\xb7\x30\x99\0" },
+  { 0x30ba, 0, 255, "\x30\xb9\x30\x99\0" },
+  { 0x30bc, 0, 255, "\x30\xbb\x30\x99\0" },
+  { 0x30be, 0, 255, "\x30\xbd\x30\x99\0" },
+  { 0x30c0, 0, 255, "\x30\xbf\x30\x99\0" },
+  { 0x30c2, 0, 255, "\x30\xc1\x30\x99\0" },
+  { 0x30c5, 0, 255, "\x30\xc4\x30\x99\0" },
+  { 0x30c7, 0, 255, "\x30\xc6\x30\x99\0" },
+  { 0x30c9, 0, 255, "\x30\xc8\x30\x99\0" },
+  { 0x30d0, 0, 255, "\x30\xcf\x30\x99\0" },
+  { 0x30d1, 0, 255, "\x30\xcf\x30\x9a\0" },
+  { 0x30d3, 0, 255, "\x30\xd2\x30\x99\0" },
+  { 0x30d4, 0, 255, "\x30\xd2\x30\x9a\0" },
+  { 0x30d6, 0, 255, "\x30\xd5\x30\x99\0" },
+  { 0x30d7, 0, 255, "\x30\xd5\x30\x9a\0" },
+  { 0x30d9, 0, 255, "\x30\xd8\x30\x99\0" },
+  { 0x30da, 0, 255, "\x30\xd8\x30\x9a\0" },
+  { 0x30dc, 0, 255, "\x30\xdb\x30\x99\0" },
+  { 0x30dd, 0, 255, "\x30\xdb\x30\x9a\0" },
+  { 0x30f4, 0, 255, "\x30\xa6\x30\x99\0" },
+  { 0x30f7, 0, 255, "\x30\xef\x30\x99\0" },
+  { 0x30f8, 0, 255, "\x30\xf0\x30\x99\0" },
+  { 0x30f9, 0, 255, "\x30\xf1\x30\x99\0" },
+  { 0x30fa, 0, 255, "\x30\xf2\x30\x99\0" },
+  { 0x30fe, 0, 255, "\x30\xfd\x30\x99\0" },
+  { 0x3131, 255, 0, "\x11\x00\0" },
+  { 0x3132, 255, 0, "\x11\x01\0" },
+  { 0x3133, 255, 0, "\x11\xaa\0" },
+  { 0x3134, 255, 0, "\x11\x02\0" },
+  { 0x3135, 255, 0, "\x11\xac\0" },
+  { 0x3136, 255, 0, "\x11\xad\0" },
+  { 0x3137, 255, 0, "\x11\x03\0" },
+  { 0x3138, 255, 0, "\x11\x04\0" },
+  { 0x3139, 255, 0, "\x11\x05\0" },
+  { 0x313a, 255, 0, "\x11\xb0\0" },
+  { 0x313b, 255, 0, "\x11\xb1\0" },
+  { 0x313c, 255, 0, "\x11\xb2\0" },
+  { 0x313d, 255, 0, "\x11\xb3\0" },
+  { 0x313e, 255, 0, "\x11\xb4\0" },
+  { 0x313f, 255, 0, "\x11\xb5\0" },
+  { 0x3140, 255, 0, "\x11\x1a\0" },
+  { 0x3141, 255, 0, "\x11\x06\0" },
+  { 0x3142, 255, 0, "\x11\x07\0" },
+  { 0x3143, 255, 0, "\x11\x08\0" },
+  { 0x3144, 255, 0, "\x11\x21\0" },
+  { 0x3145, 255, 0, "\x11\x09\0" },
+  { 0x3146, 255, 0, "\x11\x0a\0" },
+  { 0x3147, 255, 0, "\x11\x0b\0" },
+  { 0x3148, 255, 0, "\x11\x0c\0" },
+  { 0x3149, 255, 0, "\x11\x0d\0" },
+  { 0x314a, 255, 0, "\x11\x0e\0" },
+  { 0x314b, 255, 0, "\x11\x0f\0" },
+  { 0x314c, 255, 0, "\x11\x10\0" },
+  { 0x314d, 255, 0, "\x11\x11\0" },
+  { 0x314e, 255, 0, "\x11\x12\0" },
+  { 0x314f, 255, 0, "\x11\x61\0" },
+  { 0x3150, 255, 0, "\x11\x62\0" },
+  { 0x3151, 255, 0, "\x11\x63\0" },
+  { 0x3152, 255, 0, "\x11\x64\0" },
+  { 0x3153, 255, 0, "\x11\x65\0" },
+  { 0x3154, 255, 0, "\x11\x66\0" },
+  { 0x3155, 255, 0, "\x11\x67\0" },
+  { 0x3156, 255, 0, "\x11\x68\0" },
+  { 0x3157, 255, 0, "\x11\x69\0" },
+  { 0x3158, 255, 0, "\x11\x6a\0" },
+  { 0x3159, 255, 0, "\x11\x6b\0" },
+  { 0x315a, 255, 0, "\x11\x6c\0" },
+  { 0x315b, 255, 0, "\x11\x6d\0" },
+  { 0x315c, 255, 0, "\x11\x6e\0" },
+  { 0x315d, 255, 0, "\x11\x6f\0" },
+  { 0x315e, 255, 0, "\x11\x70\0" },
+  { 0x315f, 255, 0, "\x11\x71\0" },
+  { 0x3160, 255, 0, "\x11\x72\0" },
+  { 0x3161, 255, 0, "\x11\x73\0" },
+  { 0x3162, 255, 0, "\x11\x74\0" },
+  { 0x3163, 255, 0, "\x11\x75\0" },
+  { 0x3164, 255, 0, "\x11\x60\0" },
+  { 0x3165, 255, 0, "\x11\x14\0" },
+  { 0x3166, 255, 0, "\x11\x15\0" },
+  { 0x3167, 255, 0, "\x11\xc7\0" },
+  { 0x3168, 255, 0, "\x11\xc8\0" },
+  { 0x3169, 255, 0, "\x11\xcc\0" },
+  { 0x316a, 255, 0, "\x11\xce\0" },
+  { 0x316b, 255, 0, "\x11\xd3\0" },
+  { 0x316c, 255, 0, "\x11\xd7\0" },
+  { 0x316d, 255, 0, "\x11\xd9\0" },
+  { 0x316e, 255, 0, "\x11\x1c\0" },
+  { 0x316f, 255, 0, "\x11\xdd\0" },
+  { 0x3170, 255, 0, "\x11\xdf\0" },
+  { 0x3171, 255, 0, "\x11\x1d\0" },
+  { 0x3172, 255, 0, "\x11\x1e\0" },
+  { 0x3173, 255, 0, "\x11\x20\0" },
+  { 0x3174, 255, 0, "\x11\x22\0" },
+  { 0x3175, 255, 0, "\x11\x23\0" },
+  { 0x3176, 255, 0, "\x11\x27\0" },
+  { 0x3177, 255, 0, "\x11\x29\0" },
+  { 0x3178, 255, 0, "\x11\x2b\0" },
+  { 0x3179, 255, 0, "\x11\x2c\0" },
+  { 0x317a, 255, 0, "\x11\x2d\0" },
+  { 0x317b, 255, 0, "\x11\x2e\0" },
+  { 0x317c, 255, 0, "\x11\x2f\0" },
+  { 0x317d, 255, 0, "\x11\x32\0" },
+  { 0x317e, 255, 0, "\x11\x36\0" },
+  { 0x317f, 255, 0, "\x11\x40\0" },
+  { 0x3180, 255, 0, "\x11\x47\0" },
+  { 0x3181, 255, 0, "\x11\x4c\0" },
+  { 0x3182, 255, 0, "\x11\xf1\0" },
+  { 0x3183, 255, 0, "\x11\xf2\0" },
+  { 0x3184, 255, 0, "\x11\x57\0" },
+  { 0x3185, 255, 0, "\x11\x58\0" },
+  { 0x3186, 255, 0, "\x11\x59\0" },
+  { 0x3187, 255, 0, "\x11\x84\0" },
+  { 0x3188, 255, 0, "\x11\x85\0" },
+  { 0x3189, 255, 0, "\x11\x88\0" },
+  { 0x318a, 255, 0, "\x11\x91\0" },
+  { 0x318b, 255, 0, "\x11\x92\0" },
+  { 0x318c, 255, 0, "\x11\x94\0" },
+  { 0x318d, 255, 0, "\x11\x9e\0" },
+  { 0x318e, 255, 0, "\x11\xa1\0" },
+  { 0x3192, 255, 0, "\x4e\x00\0" },
+  { 0x3193, 255, 0, "\x4e\x8c\0" },
+  { 0x3194, 255, 0, "\x4e\x09\0" },
+  { 0x3195, 255, 0, "\x56\xdb\0" },
+  { 0x3196, 255, 0, "\x4e\x0a\0" },
+  { 0x3197, 255, 0, "\x4e\x2d\0" },
+  { 0x3198, 255, 0, "\x4e\x0b\0" },
+  { 0x3199, 255, 0, "\x75\x32\0" },
+  { 0x319a, 255, 0, "\x4e\x59\0" },
+  { 0x319b, 255, 0, "\x4e\x19\0" },
+  { 0x319c, 255, 0, "\x4e\x01\0" },
+  { 0x319d, 255, 0, "\x59\x29\0" },
+  { 0x319e, 255, 0, "\x57\x30\0" },
+  { 0x319f, 255, 0, "\x4e\xba\0" },
+  { 0x3200, 255, 0, "\x00\x28\x11\x00\x00\x29\0" },
+  { 0x3201, 255, 0, "\x00\x28\x11\x02\x00\x29\0" },
+  { 0x3202, 255, 0, "\x00\x28\x11\x03\x00\x29\0" },
+  { 0x3203, 255, 0, "\x00\x28\x11\x05\x00\x29\0" },
+  { 0x3204, 255, 0, "\x00\x28\x11\x06\x00\x29\0" },
+  { 0x3205, 255, 0, "\x00\x28\x11\x07\x00\x29\0" },
+  { 0x3206, 255, 0, "\x00\x28\x11\x09\x00\x29\0" },
+  { 0x3207, 255, 0, "\x00\x28\x11\x0b\x00\x29\0" },
+  { 0x3208, 255, 0, "\x00\x28\x11\x0c\x00\x29\0" },
+  { 0x3209, 255, 0, "\x00\x28\x11\x0e\x00\x29\0" },
+  { 0x320a, 255, 0, "\x00\x28\x11\x0f\x00\x29\0" },
+  { 0x320b, 255, 0, "\x00\x28\x11\x10\x00\x29\0" },
+  { 0x320c, 255, 0, "\x00\x28\x11\x11\x00\x29\0" },
+  { 0x320d, 255, 0, "\x00\x28\x11\x12\x00\x29\0" },
+  { 0x320e, 255, 0, "\x00\x28\x11\x00\x11\x61\x00\x29\0" },
+  { 0x320f, 255, 0, "\x00\x28\x11\x02\x11\x61\x00\x29\0" },
+  { 0x3210, 255, 0, "\x00\x28\x11\x03\x11\x61\x00\x29\0" },
+  { 0x3211, 255, 0, "\x00\x28\x11\x05\x11\x61\x00\x29\0" },
+  { 0x3212, 255, 0, "\x00\x28\x11\x06\x11\x61\x00\x29\0" },
+  { 0x3213, 255, 0, "\x00\x28\x11\x07\x11\x61\x00\x29\0" },
+  { 0x3214, 255, 0, "\x00\x28\x11\x09\x11\x61\x00\x29\0" },
+  { 0x3215, 255, 0, "\x00\x28\x11\x0b\x11\x61\x00\x29\0" },
+  { 0x3216, 255, 0, "\x00\x28\x11\x0c\x11\x61\x00\x29\0" },
+  { 0x3217, 255, 0, "\x00\x28\x11\x0e\x11\x61\x00\x29\0" },
+  { 0x3218, 255, 0, "\x00\x28\x11\x0f\x11\x61\x00\x29\0" },
+  { 0x3219, 255, 0, "\x00\x28\x11\x10\x11\x61\x00\x29\0" },
+  { 0x321a, 255, 0, "\x00\x28\x11\x11\x11\x61\x00\x29\0" },
+  { 0x321b, 255, 0, "\x00\x28\x11\x12\x11\x61\x00\x29\0" },
+  { 0x321c, 255, 0, "\x00\x28\x11\x0c\x11\x6e\x00\x29\0" },
+  { 0x3220, 255, 0, "\x00\x28\x4e\x00\x00\x29\0" },
+  { 0x3221, 255, 0, "\x00\x28\x4e\x8c\x00\x29\0" },
+  { 0x3222, 255, 0, "\x00\x28\x4e\x09\x00\x29\0" },
+  { 0x3223, 255, 0, "\x00\x28\x56\xdb\x00\x29\0" },
+  { 0x3224, 255, 0, "\x00\x28\x4e\x94\x00\x29\0" },
+  { 0x3225, 255, 0, "\x00\x28\x51\x6d\x00\x29\0" },
+  { 0x3226, 255, 0, "\x00\x28\x4e\x03\x00\x29\0" },
+  { 0x3227, 255, 0, "\x00\x28\x51\x6b\x00\x29\0" },
+  { 0x3228, 255, 0, "\x00\x28\x4e\x5d\x00\x29\0" },
+  { 0x3229, 255, 0, "\x00\x28\x53\x41\x00\x29\0" },
+  { 0x322a, 255, 0, "\x00\x28\x67\x08\x00\x29\0" },
+  { 0x322b, 255, 0, "\x00\x28\x70\x6b\x00\x29\0" },
+  { 0x322c, 255, 0, "\x00\x28\x6c\x34\x00\x29\0" },
+  { 0x322d, 255, 0, "\x00\x28\x67\x28\x00\x29\0" },
+  { 0x322e, 255, 0, "\x00\x28\x91\xd1\x00\x29\0" },
+  { 0x322f, 255, 0, "\x00\x28\x57\x1f\x00\x29\0" },
+  { 0x3230, 255, 0, "\x00\x28\x65\xe5\x00\x29\0" },
+  { 0x3231, 255, 0, "\x00\x28\x68\x2a\x00\x29\0" },
+  { 0x3232, 255, 0, "\x00\x28\x67\x09\x00\x29\0" },
+  { 0x3233, 255, 0, "\x00\x28\x79\x3e\x00\x29\0" },
+  { 0x3234, 255, 0, "\x00\x28\x54\x0d\x00\x29\0" },
+  { 0x3235, 255, 0, "\x00\x28\x72\x79\x00\x29\0" },
+  { 0x3236, 255, 0, "\x00\x28\x8c\xa1\x00\x29\0" },
+  { 0x3237, 255, 0, "\x00\x28\x79\x5d\x00\x29\0" },
+  { 0x3238, 255, 0, "\x00\x28\x52\xb4\x00\x29\0" },
+  { 0x3239, 255, 0, "\x00\x28\x4e\xe3\x00\x29\0" },
+  { 0x323a, 255, 0, "\x00\x28\x54\x7c\x00\x29\0" },
+  { 0x323b, 255, 0, "\x00\x28\x5b\x66\x00\x29\0" },
+  { 0x323c, 255, 0, "\x00\x28\x76\xe3\x00\x29\0" },
+  { 0x323d, 255, 0, "\x00\x28\x4f\x01\x00\x29\0" },
+  { 0x323e, 255, 0, "\x00\x28\x8c\xc7\x00\x29\0" },
+  { 0x323f, 255, 0, "\x00\x28\x53\x54\x00\x29\0" },
+  { 0x3240, 255, 0, "\x00\x28\x79\x6d\x00\x29\0" },
+  { 0x3241, 255, 0, "\x00\x28\x4f\x11\x00\x29\0" },
+  { 0x3242, 255, 0, "\x00\x28\x81\xea\x00\x29\0" },
+  { 0x3243, 255, 0, "\x00\x28\x81\xf3\x00\x29\0" },
+  { 0x3260, 255, 0, "\x11\x00\0" },
+  { 0x3261, 255, 0, "\x11\x02\0" },
+  { 0x3262, 255, 0, "\x11\x03\0" },
+  { 0x3263, 255, 0, "\x11\x05\0" },
+  { 0x3264, 255, 0, "\x11\x06\0" },
+  { 0x3265, 255, 0, "\x11\x07\0" },
+  { 0x3266, 255, 0, "\x11\x09\0" },
+  { 0x3267, 255, 0, "\x11\x0b\0" },
+  { 0x3268, 255, 0, "\x11\x0c\0" },
+  { 0x3269, 255, 0, "\x11\x0e\0" },
+  { 0x326a, 255, 0, "\x11\x0f\0" },
+  { 0x326b, 255, 0, "\x11\x10\0" },
+  { 0x326c, 255, 0, "\x11\x11\0" },
+  { 0x326d, 255, 0, "\x11\x12\0" },
+  { 0x326e, 255, 0, "\x11\x00\x11\x61\0" },
+  { 0x326f, 255, 0, "\x11\x02\x11\x61\0" },
+  { 0x3270, 255, 0, "\x11\x03\x11\x61\0" },
+  { 0x3271, 255, 0, "\x11\x05\x11\x61\0" },
+  { 0x3272, 255, 0, "\x11\x06\x11\x61\0" },
+  { 0x3273, 255, 0, "\x11\x07\x11\x61\0" },
+  { 0x3274, 255, 0, "\x11\x09\x11\x61\0" },
+  { 0x3275, 255, 0, "\x11\x0b\x11\x61\0" },
+  { 0x3276, 255, 0, "\x11\x0c\x11\x61\0" },
+  { 0x3277, 255, 0, "\x11\x0e\x11\x61\0" },
+  { 0x3278, 255, 0, "\x11\x0f\x11\x61\0" },
+  { 0x3279, 255, 0, "\x11\x10\x11\x61\0" },
+  { 0x327a, 255, 0, "\x11\x11\x11\x61\0" },
+  { 0x327b, 255, 0, "\x11\x12\x11\x61\0" },
+  { 0x3280, 255, 0, "\x4e\x00\0" },
+  { 0x3281, 255, 0, "\x4e\x8c\0" },
+  { 0x3282, 255, 0, "\x4e\x09\0" },
+  { 0x3283, 255, 0, "\x56\xdb\0" },
+  { 0x3284, 255, 0, "\x4e\x94\0" },
+  { 0x3285, 255, 0, "\x51\x6d\0" },
+  { 0x3286, 255, 0, "\x4e\x03\0" },
+  { 0x3287, 255, 0, "\x51\x6b\0" },
+  { 0x3288, 255, 0, "\x4e\x5d\0" },
+  { 0x3289, 255, 0, "\x53\x41\0" },
+  { 0x328a, 255, 0, "\x67\x08\0" },
+  { 0x328b, 255, 0, "\x70\x6b\0" },
+  { 0x328c, 255, 0, "\x6c\x34\0" },
+  { 0x328d, 255, 0, "\x67\x28\0" },
+  { 0x328e, 255, 0, "\x91\xd1\0" },
+  { 0x328f, 255, 0, "\x57\x1f\0" },
+  { 0x3290, 255, 0, "\x65\xe5\0" },
+  { 0x3291, 255, 0, "\x68\x2a\0" },
+  { 0x3292, 255, 0, "\x67\x09\0" },
+  { 0x3293, 255, 0, "\x79\x3e\0" },
+  { 0x3294, 255, 0, "\x54\x0d\0" },
+  { 0x3295, 255, 0, "\x72\x79\0" },
+  { 0x3296, 255, 0, "\x8c\xa1\0" },
+  { 0x3297, 255, 0, "\x79\x5d\0" },
+  { 0x3298, 255, 0, "\x52\xb4\0" },
+  { 0x3299, 255, 0, "\x79\xd8\0" },
+  { 0x329a, 255, 0, "\x75\x37\0" },
+  { 0x329b, 255, 0, "\x59\x73\0" },
+  { 0x329c, 255, 0, "\x90\x69\0" },
+  { 0x329d, 255, 0, "\x51\x2a\0" },
+  { 0x329e, 255, 0, "\x53\x70\0" },
+  { 0x329f, 255, 0, "\x6c\xe8\0" },
+  { 0x32a0, 255, 0, "\x98\x05\0" },
+  { 0x32a1, 255, 0, "\x4f\x11\0" },
+  { 0x32a2, 255, 0, "\x51\x99\0" },
+  { 0x32a3, 255, 0, "\x6b\x63\0" },
+  { 0x32a4, 255, 0, "\x4e\x0a\0" },
+  { 0x32a5, 255, 0, "\x4e\x2d\0" },
+  { 0x32a6, 255, 0, "\x4e\x0b\0" },
+  { 0x32a7, 255, 0, "\x5d\xe6\0" },
+  { 0x32a8, 255, 0, "\x53\xf3\0" },
+  { 0x32a9, 255, 0, "\x53\x3b\0" },
+  { 0x32aa, 255, 0, "\x5b\x97\0" },
+  { 0x32ab, 255, 0, "\x5b\x66\0" },
+  { 0x32ac, 255, 0, "\x76\xe3\0" },
+  { 0x32ad, 255, 0, "\x4f\x01\0" },
+  { 0x32ae, 255, 0, "\x8c\xc7\0" },
+  { 0x32af, 255, 0, "\x53\x54\0" },
+  { 0x32b0, 255, 0, "\x59\x1c\0" },
+  { 0x32c0, 255, 0, "\x00\x31\x67\x08\0" },
+  { 0x32c1, 255, 0, "\x00\x32\x67\x08\0" },
+  { 0x32c2, 255, 0, "\x00\x33\x67\x08\0" },
+  { 0x32c3, 255, 0, "\x00\x34\x67\x08\0" },
+  { 0x32c4, 255, 0, "\x00\x35\x67\x08\0" },
+  { 0x32c5, 255, 0, "\x00\x36\x67\x08\0" },
+  { 0x32c6, 255, 0, "\x00\x37\x67\x08\0" },
+  { 0x32c7, 255, 0, "\x00\x38\x67\x08\0" },
+  { 0x32c8, 255, 0, "\x00\x39\x67\x08\0" },
+  { 0x32c9, 255, 0, "\x00\x31\x00\x30\x67\x08\0" },
+  { 0x32ca, 255, 0, "\x00\x31\x00\x31\x67\x08\0" },
+  { 0x32cb, 255, 0, "\x00\x31\x00\x32\x67\x08\0" },
+  { 0x32d0, 255, 0, "\x30\xa2\0" },
+  { 0x32d1, 255, 0, "\x30\xa4\0" },
+  { 0x32d2, 255, 0, "\x30\xa6\0" },
+  { 0x32d3, 255, 0, "\x30\xa8\0" },
+  { 0x32d4, 255, 0, "\x30\xaa\0" },
+  { 0x32d5, 255, 0, "\x30\xab\0" },
+  { 0x32d6, 255, 0, "\x30\xad\0" },
+  { 0x32d7, 255, 0, "\x30\xaf\0" },
+  { 0x32d8, 255, 0, "\x30\xb1\0" },
+  { 0x32d9, 255, 0, "\x30\xb3\0" },
+  { 0x32da, 255, 0, "\x30\xb5\0" },
+  { 0x32db, 255, 0, "\x30\xb7\0" },
+  { 0x32dc, 255, 0, "\x30\xb9\0" },
+  { 0x32dd, 255, 0, "\x30\xbb\0" },
+  { 0x32de, 255, 0, "\x30\xbd\0" },
+  { 0x32df, 255, 0, "\x30\xbf\0" },
+  { 0x32e0, 255, 0, "\x30\xc1\0" },
+  { 0x32e1, 255, 0, "\x30\xc4\0" },
+  { 0x32e2, 255, 0, "\x30\xc6\0" },
+  { 0x32e3, 255, 0, "\x30\xc8\0" },
+  { 0x32e4, 255, 0, "\x30\xca\0" },
+  { 0x32e5, 255, 0, "\x30\xcb\0" },
+  { 0x32e6, 255, 0, "\x30\xcc\0" },
+  { 0x32e7, 255, 0, "\x30\xcd\0" },
+  { 0x32e8, 255, 0, "\x30\xce\0" },
+  { 0x32e9, 255, 0, "\x30\xcf\0" },
+  { 0x32ea, 255, 0, "\x30\xd2\0" },
+  { 0x32eb, 255, 0, "\x30\xd5\0" },
+  { 0x32ec, 255, 0, "\x30\xd8\0" },
+  { 0x32ed, 255, 0, "\x30\xdb\0" },
+  { 0x32ee, 255, 0, "\x30\xde\0" },
+  { 0x32ef, 255, 0, "\x30\xdf\0" },
+  { 0x32f0, 255, 0, "\x30\xe0\0" },
+  { 0x32f1, 255, 0, "\x30\xe1\0" },
+  { 0x32f2, 255, 0, "\x30\xe2\0" },
+  { 0x32f3, 255, 0, "\x30\xe4\0" },
+  { 0x32f4, 255, 0, "\x30\xe6\0" },
+  { 0x32f5, 255, 0, "\x30\xe8\0" },
+  { 0x32f6, 255, 0, "\x30\xe9\0" },
+  { 0x32f7, 255, 0, "\x30\xea\0" },
+  { 0x32f8, 255, 0, "\x30\xeb\0" },
+  { 0x32f9, 255, 0, "\x30\xec\0" },
+  { 0x32fa, 255, 0, "\x30\xed\0" },
+  { 0x32fb, 255, 0, "\x30\xef\0" },
+  { 0x32fc, 255, 0, "\x30\xf0\0" },
+  { 0x32fd, 255, 0, "\x30\xf1\0" },
+  { 0x32fe, 255, 0, "\x30\xf2\0" },
+  { 0x3300, 255, 0, "\x30\xa2\x30\xcf\x30\x9a\x30\xfc\x30\xc8\0" },
+  { 0x3301, 255, 0, "\x30\xa2\x30\xeb\x30\xd5\x30\xa1\0" },
+  { 0x3302, 255, 0, "\x30\xa2\x30\xf3\x30\xd8\x30\x9a\x30\xa2\0" },
+  { 0x3303, 255, 0, "\x30\xa2\x30\xfc\x30\xeb\0" },
+  { 0x3304, 255, 0, "\x30\xa4\x30\xcb\x30\xf3\x30\xaf\x30\x99\0" },
+  { 0x3305, 255, 0, "\x30\xa4\x30\xf3\x30\xc1\0" },
+  { 0x3306, 255, 0, "\x30\xa6\x30\xa9\x30\xf3\0" },
+  { 0x3307, 255, 0, "\x30\xa8\x30\xb9\x30\xaf\x30\xfc\x30\xc8\x30\x99\0" },
+  { 0x3308, 255, 0, "\x30\xa8\x30\xfc\x30\xab\x30\xfc\0" },
+  { 0x3309, 255, 0, "\x30\xaa\x30\xf3\x30\xb9\0" },
+  { 0x330a, 255, 0, "\x30\xaa\x30\xfc\x30\xe0\0" },
+  { 0x330b, 255, 0, "\x30\xab\x30\xa4\x30\xea\0" },
+  { 0x330c, 255, 0, "\x30\xab\x30\xe9\x30\xc3\x30\xc8\0" },
+  { 0x330d, 255, 0, "\x30\xab\x30\xed\x30\xea\x30\xfc\0" },
+  { 0x330e, 255, 0, "\x30\xab\x30\x99\x30\xed\x30\xf3\0" },
+  { 0x330f, 255, 0, "\x30\xab\x30\x99\x30\xf3\x30\xde\0" },
+  { 0x3310, 255, 0, "\x30\xad\x30\x99\x30\xab\x30\x99\0" },
+  { 0x3311, 255, 0, "\x30\xad\x30\x99\x30\xcb\x30\xfc\0" },
+  { 0x3312, 255, 0, "\x30\xad\x30\xe5\x30\xea\x30\xfc\0" },
+  { 0x3313, 255, 0, "\x30\xad\x30\x99\x30\xeb\x30\xbf\x30\x99\x30\xfc\0" },
+  { 0x3314, 255, 0, "\x30\xad\x30\xed\0" },
+  { 0x3315, 255, 0, "\x30\xad\x30\xed\x30\xaf\x30\x99\x30\xe9\x30\xe0\0" },
+  { 0x3316, 255, 0, "\x30\xad\x30\xed\x30\xe1\x30\xfc\x30\xc8\x30\xeb\0" },
+  { 0x3317, 255, 0, "\x30\xad\x30\xed\x30\xef\x30\xc3\x30\xc8\0" },
+  { 0x3318, 255, 0, "\x30\xaf\x30\x99\x30\xe9\x30\xe0\0" },
+  { 0x3319, 255, 0, "\x30\xaf\x30\x99\x30\xe9\x30\xe0\x30\xc8\x30\xf3\0" },
+  { 0x331a, 255, 0, "\x30\xaf\x30\xeb\x30\xbb\x30\x99\x30\xa4\x30\xed\0" },
+  { 0x331b, 255, 0, "\x30\xaf\x30\xed\x30\xfc\x30\xcd\0" },
+  { 0x331c, 255, 0, "\x30\xb1\x30\xfc\x30\xb9\0" },
+  { 0x331d, 255, 0, "\x30\xb3\x30\xeb\x30\xca\0" },
+  { 0x331e, 255, 0, "\x30\xb3\x30\xfc\x30\xdb\x30\x9a\0" },
+  { 0x331f, 255, 0, "\x30\xb5\x30\xa4\x30\xaf\x30\xeb\0" },
+  { 0x3320, 255, 0, "\x30\xb5\x30\xf3\x30\xc1\x30\xfc\x30\xe0\0" },
+  { 0x3321, 255, 0, "\x30\xb7\x30\xea\x30\xf3\x30\xaf\x30\x99\0" },
+  { 0x3322, 255, 0, "\x30\xbb\x30\xf3\x30\xc1\0" },
+  { 0x3323, 255, 0, "\x30\xbb\x30\xf3\x30\xc8\0" },
+  { 0x3324, 255, 0, "\x30\xbf\x30\x99\x30\xfc\x30\xb9\0" },
+  { 0x3325, 255, 0, "\x30\xc6\x30\x99\x30\xb7\0" },
+  { 0x3326, 255, 0, "\x30\xc8\x30\x99\x30\xeb\0" },
+  { 0x3327, 255, 0, "\x30\xc8\x30\xf3\0" },
+  { 0x3328, 255, 0, "\x30\xca\x30\xce\0" },
+  { 0x3329, 255, 0, "\x30\xce\x30\xc3\x30\xc8\0" },
+  { 0x332a, 255, 0, "\x30\xcf\x30\xa4\x30\xc4\0" },
+  { 0x332b, 255, 0, "\x30\xcf\x30\x9a\x30\xfc\x30\xbb\x30\xf3\x30\xc8\0" },
+  { 0x332c, 255, 0, "\x30\xcf\x30\x9a\x30\xfc\x30\xc4\0" },
+  { 0x332d, 255, 0, "\x30\xcf\x30\x99\x30\xfc\x30\xec\x30\xeb\0" },
+  { 0x332e, 255, 0, "\x30\xd2\x30\x9a\x30\xa2\x30\xb9\x30\xc8\x30\xeb\0" },
+  { 0x332f, 255, 0, "\x30\xd2\x30\x9a\x30\xaf\x30\xeb\0" },
+  { 0x3330, 255, 0, "\x30\xd2\x30\x9a\x30\xb3\0" },
+  { 0x3331, 255, 0, "\x30\xd2\x30\x99\x30\xeb\0" },
+  { 0x3332, 255, 0, "\x30\xd5\x30\xa1\x30\xe9\x30\xc3\x30\xc8\x30\x99\0" },
+  { 0x3333, 255, 0, "\x30\xd5\x30\xa3\x30\xfc\x30\xc8\0" },
+  { 0x3334, 255, 0, "\x30\xd5\x30\x99\x30\xc3\x30\xb7\x30\xa7\x30\xeb\0" },
+  { 0x3335, 255, 0, "\x30\xd5\x30\xe9\x30\xf3\0" },
+  { 0x3336, 255, 0, "\x30\xd8\x30\xaf\x30\xbf\x30\xfc\x30\xeb\0" },
+  { 0x3337, 255, 0, "\x30\xd8\x30\x9a\x30\xbd\0" },
+  { 0x3338, 255, 0, "\x30\xd8\x30\x9a\x30\xcb\x30\xd2\0" },
+  { 0x3339, 255, 0, "\x30\xd8\x30\xeb\x30\xc4\0" },
+  { 0x333a, 255, 0, "\x30\xd8\x30\x9a\x30\xf3\x30\xb9\0" },
+  { 0x333b, 255, 0, "\x30\xd8\x30\x9a\x30\xfc\x30\xb7\x30\x99\0" },
+  { 0x333c, 255, 0, "\x30\xd8\x30\x99\x30\xfc\x30\xbf\0" },
+  { 0x333d, 255, 0, "\x30\xdb\x30\x9a\x30\xa4\x30\xf3\x30\xc8\0" },
+  { 0x333e, 255, 0, "\x30\xdb\x30\x99\x30\xeb\x30\xc8\0" },
+  { 0x333f, 255, 0, "\x30\xdb\x30\xf3\0" },
+  { 0x3340, 255, 0, "\x30\xdb\x30\x9a\x30\xf3\x30\xc8\x30\x99\0" },
+  { 0x3341, 255, 0, "\x30\xdb\x30\xfc\x30\xeb\0" },
+  { 0x3342, 255, 0, "\x30\xdb\x30\xfc\x30\xf3\0" },
+  { 0x3343, 255, 0, "\x30\xde\x30\xa4\x30\xaf\x30\xed\0" },
+  { 0x3344, 255, 0, "\x30\xde\x30\xa4\x30\xeb\0" },
+  { 0x3345, 255, 0, "\x30\xde\x30\xc3\x30\xcf\0" },
+  { 0x3346, 255, 0, "\x30\xde\x30\xeb\x30\xaf\0" },
+  { 0x3347, 255, 0, "\x30\xde\x30\xf3\x30\xb7\x30\xe7\x30\xf3\0" },
+  { 0x3348, 255, 0, "\x30\xdf\x30\xaf\x30\xed\x30\xf3\0" },
+  { 0x3349, 255, 0, "\x30\xdf\x30\xea\0" },
+  { 0x334a, 255, 0, "\x30\xdf\x30\xea\x30\xcf\x30\x99\x30\xfc\x30\xeb\0" },
+  { 0x334b, 255, 0, "\x30\xe1\x30\xab\x30\x99\0" },
+  { 0x334c, 255, 0, "\x30\xe1\x30\xab\x30\x99\x30\xc8\x30\xf3\0" },
+  { 0x334d, 255, 0, "\x30\xe1\x30\xfc\x30\xc8\x30\xeb\0" },
+  { 0x334e, 255, 0, "\x30\xe4\x30\xfc\x30\xc8\x30\x99\0" },
+  { 0x334f, 255, 0, "\x30\xe4\x30\xfc\x30\xeb\0" },
+  { 0x3350, 255, 0, "\x30\xe6\x30\xa2\x30\xf3\0" },
+  { 0x3351, 255, 0, "\x30\xea\x30\xc3\x30\xc8\x30\xeb\0" },
+  { 0x3352, 255, 0, "\x30\xea\x30\xe9\0" },
+  { 0x3353, 255, 0, "\x30\xeb\x30\xd2\x30\x9a\x30\xfc\0" },
+  { 0x3354, 255, 0, "\x30\xeb\x30\xfc\x30\xd5\x30\x99\x30\xeb\0" },
+  { 0x3355, 255, 0, "\x30\xec\x30\xe0\0" },
+  { 0x3356, 255, 0, "\x30\xec\x30\xf3\x30\xc8\x30\xb1\x30\x99\x30\xf3\0" },
+  { 0x3357, 255, 0, "\x30\xef\x30\xc3\x30\xc8\0" },
+  { 0x3358, 255, 0, "\x00\x30\x70\xb9\0" },
+  { 0x3359, 255, 0, "\x00\x31\x70\xb9\0" },
+  { 0x335a, 255, 0, "\x00\x32\x70\xb9\0" },
+  { 0x335b, 255, 0, "\x00\x33\x70\xb9\0" },
+  { 0x335c, 255, 0, "\x00\x34\x70\xb9\0" },
+  { 0x335d, 255, 0, "\x00\x35\x70\xb9\0" },
+  { 0x335e, 255, 0, "\x00\x36\x70\xb9\0" },
+  { 0x335f, 255, 0, "\x00\x37\x70\xb9\0" },
+  { 0x3360, 255, 0, "\x00\x38\x70\xb9\0" },
+  { 0x3361, 255, 0, "\x00\x39\x70\xb9\0" },
+  { 0x3362, 255, 0, "\x00\x31\x00\x30\x70\xb9\0" },
+  { 0x3363, 255, 0, "\x00\x31\x00\x31\x70\xb9\0" },
+  { 0x3364, 255, 0, "\x00\x31\x00\x32\x70\xb9\0" },
+  { 0x3365, 255, 0, "\x00\x31\x00\x33\x70\xb9\0" },
+  { 0x3366, 255, 0, "\x00\x31\x00\x34\x70\xb9\0" },
+  { 0x3367, 255, 0, "\x00\x31\x00\x35\x70\xb9\0" },
+  { 0x3368, 255, 0, "\x00\x31\x00\x36\x70\xb9\0" },
+  { 0x3369, 255, 0, "\x00\x31\x00\x37\x70\xb9\0" },
+  { 0x336a, 255, 0, "\x00\x31\x00\x38\x70\xb9\0" },
+  { 0x336b, 255, 0, "\x00\x31\x00\x39\x70\xb9\0" },
+  { 0x336c, 255, 0, "\x00\x32\x00\x30\x70\xb9\0" },
+  { 0x336d, 255, 0, "\x00\x32\x00\x31\x70\xb9\0" },
+  { 0x336e, 255, 0, "\x00\x32\x00\x32\x70\xb9\0" },
+  { 0x336f, 255, 0, "\x00\x32\x00\x33\x70\xb9\0" },
+  { 0x3370, 255, 0, "\x00\x32\x00\x34\x70\xb9\0" },
+  { 0x3371, 255, 0, "\x00\x68\x00\x50\x00\x61\0" },
+  { 0x3372, 255, 0, "\x00\x64\x00\x61\0" },
+  { 0x3373, 255, 0, "\x00\x41\x00\x55\0" },
+  { 0x3374, 255, 0, "\x00\x62\x00\x61\x00\x72\0" },
+  { 0x3375, 255, 0, "\x00\x6f\x00\x56\0" },
+  { 0x3376, 255, 0, "\x00\x70\x00\x63\0" },
+  { 0x337b, 255, 0, "\x5e\x73\x62\x10\0" },
+  { 0x337c, 255, 0, "\x66\x2d\x54\x8c\0" },
+  { 0x337d, 255, 0, "\x59\x27\x6b\x63\0" },
+  { 0x337e, 255, 0, "\x66\x0e\x6c\xbb\0" },
+  { 0x337f, 255, 0, "\x68\x2a\x5f\x0f\x4f\x1a\x79\x3e\0" },
+  { 0x3380, 255, 0, "\x00\x70\x00\x41\0" },
+  { 0x3381, 255, 0, "\x00\x6e\x00\x41\0" },
+  { 0x3382, 255, 0, "\x03\xbc\x00\x41\0" },
+  { 0x3383, 255, 0, "\x00\x6d\x00\x41\0" },
+  { 0x3384, 255, 0, "\x00\x6b\x00\x41\0" },
+  { 0x3385, 255, 0, "\x00\x4b\x00\x42\0" },
+  { 0x3386, 255, 0, "\x00\x4d\x00\x42\0" },
+  { 0x3387, 255, 0, "\x00\x47\x00\x42\0" },
+  { 0x3388, 255, 0, "\x00\x63\x00\x61\x00\x6c\0" },
+  { 0x3389, 255, 0, "\x00\x6b\x00\x63\x00\x61\x00\x6c\0" },
+  { 0x338a, 255, 0, "\x00\x70\x00\x46\0" },
+  { 0x338b, 255, 0, "\x00\x6e\x00\x46\0" },
+  { 0x338c, 255, 0, "\x03\xbc\x00\x46\0" },
+  { 0x338d, 255, 0, "\x03\xbc\x00\x67\0" },
+  { 0x338e, 255, 0, "\x00\x6d\x00\x67\0" },
+  { 0x338f, 255, 0, "\x00\x6b\x00\x67\0" },
+  { 0x3390, 255, 0, "\x00\x48\x00\x7a\0" },
+  { 0x3391, 255, 0, "\x00\x6b\x00\x48\x00\x7a\0" },
+  { 0x3392, 255, 0, "\x00\x4d\x00\x48\x00\x7a\0" },
+  { 0x3393, 255, 0, "\x00\x47\x00\x48\x00\x7a\0" },
+  { 0x3394, 255, 0, "\x00\x54\x00\x48\x00\x7a\0" },
+  { 0x3395, 255, 0, "\x03\xbc\x00\x6c\0" },
+  { 0x3396, 255, 0, "\x00\x6d\x00\x6c\0" },
+  { 0x3397, 255, 0, "\x00\x64\x00\x6c\0" },
+  { 0x3398, 255, 0, "\x00\x6b\x00\x6c\0" },
+  { 0x3399, 255, 0, "\x00\x66\x00\x6d\0" },
+  { 0x339a, 255, 0, "\x00\x6e\x00\x6d\0" },
+  { 0x339b, 255, 0, "\x03\xbc\x00\x6d\0" },
+  { 0x339c, 255, 0, "\x00\x6d\x00\x6d\0" },
+  { 0x339d, 255, 0, "\x00\x63\x00\x6d\0" },
+  { 0x339e, 255, 0, "\x00\x6b\x00\x6d\0" },
+  { 0x339f, 255, 0, "\x00\x6d\x00\x6d\x00\x32\0" },
+  { 0x33a0, 255, 0, "\x00\x63\x00\x6d\x00\x32\0" },
+  { 0x33a1, 255, 0, "\x00\x6d\x00\x32\0" },
+  { 0x33a2, 255, 0, "\x00\x6b\x00\x6d\x00\x32\0" },
+  { 0x33a3, 255, 0, "\x00\x6d\x00\x6d\x00\x33\0" },
+  { 0x33a4, 255, 0, "\x00\x63\x00\x6d\x00\x33\0" },
+  { 0x33a5, 255, 0, "\x00\x6d\x00\x33\0" },
+  { 0x33a6, 255, 0, "\x00\x6b\x00\x6d\x00\x33\0" },
+  { 0x33a7, 255, 0, "\x00\x6d\x22\x15\x00\x73\0" },
+  { 0x33a8, 255, 0, "\x00\x6d\x22\x15\x00\x73\x00\x32\0" },
+  { 0x33a9, 255, 0, "\x00\x50\x00\x61\0" },
+  { 0x33aa, 255, 0, "\x00\x6b\x00\x50\x00\x61\0" },
+  { 0x33ab, 255, 0, "\x00\x4d\x00\x50\x00\x61\0" },
+  { 0x33ac, 255, 0, "\x00\x47\x00\x50\x00\x61\0" },
+  { 0x33ad, 255, 0, "\x00\x72\x00\x61\x00\x64\0" },
+  { 0x33ae, 255, 0, "\x00\x72\x00\x61\x00\x64\x22\x15\x00\x73\0" },
+  { 0x33af, 255, 0, "\x00\x72\x00\x61\x00\x64\x22\x15\x00\x73\x00\x32\0" },
+  { 0x33b0, 255, 0, "\x00\x70\x00\x73\0" },
+  { 0x33b1, 255, 0, "\x00\x6e\x00\x73\0" },
+  { 0x33b2, 255, 0, "\x03\xbc\x00\x73\0" },
+  { 0x33b3, 255, 0, "\x00\x6d\x00\x73\0" },
+  { 0x33b4, 255, 0, "\x00\x70\x00\x56\0" },
+  { 0x33b5, 255, 0, "\x00\x6e\x00\x56\0" },
+  { 0x33b6, 255, 0, "\x03\xbc\x00\x56\0" },
+  { 0x33b7, 255, 0, "\x00\x6d\x00\x56\0" },
+  { 0x33b8, 255, 0, "\x00\x6b\x00\x56\0" },
+  { 0x33b9, 255, 0, "\x00\x4d\x00\x56\0" },
+  { 0x33ba, 255, 0, "\x00\x70\x00\x57\0" },
+  { 0x33bb, 255, 0, "\x00\x6e\x00\x57\0" },
+  { 0x33bc, 255, 0, "\x03\xbc\x00\x57\0" },
+  { 0x33bd, 255, 0, "\x00\x6d\x00\x57\0" },
+  { 0x33be, 255, 0, "\x00\x6b\x00\x57\0" },
+  { 0x33bf, 255, 0, "\x00\x4d\x00\x57\0" },
+  { 0x33c0, 255, 0, "\x00\x6b\x03\xa9\0" },
+  { 0x33c1, 255, 0, "\x00\x4d\x03\xa9\0" },
+  { 0x33c2, 255, 0, "\x00\x61\x00\x2e\x00\x6d\x00\x2e\0" },
+  { 0x33c3, 255, 0, "\x00\x42\x00\x71\0" },
+  { 0x33c4, 255, 0, "\x00\x63\x00\x63\0" },
+  { 0x33c5, 255, 0, "\x00\x63\x00\x64\0" },
+  { 0x33c6, 255, 0, "\x00\x43\x22\x15\x00\x6b\x00\x67\0" },
+  { 0x33c7, 255, 0, "\x00\x43\x00\x6f\x00\x2e\0" },
+  { 0x33c8, 255, 0, "\x00\x64\x00\x42\0" },
+  { 0x33c9, 255, 0, "\x00\x47\x00\x79\0" },
+  { 0x33ca, 255, 0, "\x00\x68\x00\x61\0" },
+  { 0x33cb, 255, 0, "\x00\x48\x00\x50\0" },
+  { 0x33cc, 255, 0, "\x00\x69\x00\x6e\0" },
+  { 0x33cd, 255, 0, "\x00\x4b\x00\x4b\0" },
+  { 0x33ce, 255, 0, "\x00\x4b\x00\x4d\0" },
+  { 0x33cf, 255, 0, "\x00\x6b\x00\x74\0" },
+  { 0x33d0, 255, 0, "\x00\x6c\x00\x6d\0" },
+  { 0x33d1, 255, 0, "\x00\x6c\x00\x6e\0" },
+  { 0x33d2, 255, 0, "\x00\x6c\x00\x6f\x00\x67\0" },
+  { 0x33d3, 255, 0, "\x00\x6c\x00\x78\0" },
+  { 0x33d4, 255, 0, "\x00\x6d\x00\x62\0" },
+  { 0x33d5, 255, 0, "\x00\x6d\x00\x69\x00\x6c\0" },
+  { 0x33d6, 255, 0, "\x00\x6d\x00\x6f\x00\x6c\0" },
+  { 0x33d7, 255, 0, "\x00\x50\x00\x48\0" },
+  { 0x33d8, 255, 0, "\x00\x70\x00\x2e\x00\x6d\x00\x2e\0" },
+  { 0x33d9, 255, 0, "\x00\x50\x00\x50\x00\x4d\0" },
+  { 0x33da, 255, 0, "\x00\x50\x00\x52\0" },
+  { 0x33db, 255, 0, "\x00\x73\x00\x72\0" },
+  { 0x33dc, 255, 0, "\x00\x53\x00\x76\0" },
+  { 0x33dd, 255, 0, "\x00\x57\x00\x62\0" },
+  { 0x33e0, 255, 0, "\x00\x31\x65\xe5\0" },
+  { 0x33e1, 255, 0, "\x00\x32\x65\xe5\0" },
+  { 0x33e2, 255, 0, "\x00\x33\x65\xe5\0" },
+  { 0x33e3, 255, 0, "\x00\x34\x65\xe5\0" },
+  { 0x33e4, 255, 0, "\x00\x35\x65\xe5\0" },
+  { 0x33e5, 255, 0, "\x00\x36\x65\xe5\0" },
+  { 0x33e6, 255, 0, "\x00\x37\x65\xe5\0" },
+  { 0x33e7, 255, 0, "\x00\x38\x65\xe5\0" },
+  { 0x33e8, 255, 0, "\x00\x39\x65\xe5\0" },
+  { 0x33e9, 255, 0, "\x00\x31\x00\x30\x65\xe5\0" },
+  { 0x33ea, 255, 0, "\x00\x31\x00\x31\x65\xe5\0" },
+  { 0x33eb, 255, 0, "\x00\x31\x00\x32\x65\xe5\0" },
+  { 0x33ec, 255, 0, "\x00\x31\x00\x33\x65\xe5\0" },
+  { 0x33ed, 255, 0, "\x00\x31\x00\x34\x65\xe5\0" },
+  { 0x33ee, 255, 0, "\x00\x31\x00\x35\x65\xe5\0" },
+  { 0x33ef, 255, 0, "\x00\x31\x00\x36\x65\xe5\0" },
+  { 0x33f0, 255, 0, "\x00\x31\x00\x37\x65\xe5\0" },
+  { 0x33f1, 255, 0, "\x00\x31\x00\x38\x65\xe5\0" },
+  { 0x33f2, 255, 0, "\x00\x31\x00\x39\x65\xe5\0" },
+  { 0x33f3, 255, 0, "\x00\x32\x00\x30\x65\xe5\0" },
+  { 0x33f4, 255, 0, "\x00\x32\x00\x31\x65\xe5\0" },
+  { 0x33f5, 255, 0, "\x00\x32\x00\x32\x65\xe5\0" },
+  { 0x33f6, 255, 0, "\x00\x32\x00\x33\x65\xe5\0" },
+  { 0x33f7, 255, 0, "\x00\x32\x00\x34\x65\xe5\0" },
+  { 0x33f8, 255, 0, "\x00\x32\x00\x35\x65\xe5\0" },
+  { 0x33f9, 255, 0, "\x00\x32\x00\x36\x65\xe5\0" },
+  { 0x33fa, 255, 0, "\x00\x32\x00\x37\x65\xe5\0" },
+  { 0x33fb, 255, 0, "\x00\x32\x00\x38\x65\xe5\0" },
+  { 0x33fc, 255, 0, "\x00\x32\x00\x39\x65\xe5\0" },
+  { 0x33fd, 255, 0, "\x00\x33\x00\x30\x65\xe5\0" },
+  { 0x33fe, 255, 0, "\x00\x33\x00\x31\x65\xe5\0" },
+  { 0xf900, 0, 255, "\x8c\x48\0" },
+  { 0xf901, 0, 255, "\x66\xf4\0" },
+  { 0xf902, 0, 255, "\x8e\xca\0" },
+  { 0xf903, 0, 255, "\x8c\xc8\0" },
+  { 0xf904, 0, 255, "\x6e\xd1\0" },
+  { 0xf905, 0, 255, "\x4e\x32\0" },
+  { 0xf906, 0, 255, "\x53\xe5\0" },
+  { 0xf907, 0, 255, "\x9f\x9c\0" },
+  { 0xf908, 0, 255, "\x9f\x9c\0" },
+  { 0xf909, 0, 255, "\x59\x51\0" },
+  { 0xf90a, 0, 255, "\x91\xd1\0" },
+  { 0xf90b, 0, 255, "\x55\x87\0" },
+  { 0xf90c, 0, 255, "\x59\x48\0" },
+  { 0xf90d, 0, 255, "\x61\xf6\0" },
+  { 0xf90e, 0, 255, "\x76\x69\0" },
+  { 0xf90f, 0, 255, "\x7f\x85\0" },
+  { 0xf910, 0, 255, "\x86\x3f\0" },
+  { 0xf911, 0, 255, "\x87\xba\0" },
+  { 0xf912, 0, 255, "\x88\xf8\0" },
+  { 0xf913, 0, 255, "\x90\x8f\0" },
+  { 0xf914, 0, 255, "\x6a\x02\0" },
+  { 0xf915, 0, 255, "\x6d\x1b\0" },
+  { 0xf916, 0, 255, "\x70\xd9\0" },
+  { 0xf917, 0, 255, "\x73\xde\0" },
+  { 0xf918, 0, 255, "\x84\x3d\0" },
+  { 0xf919, 0, 255, "\x91\x6a\0" },
+  { 0xf91a, 0, 255, "\x99\xf1\0" },
+  { 0xf91b, 0, 255, "\x4e\x82\0" },
+  { 0xf91c, 0, 255, "\x53\x75\0" },
+  { 0xf91d, 0, 255, "\x6b\x04\0" },
+  { 0xf91e, 0, 255, "\x72\x1b\0" },
+  { 0xf91f, 0, 255, "\x86\x2d\0" },
+  { 0xf920, 0, 255, "\x9e\x1e\0" },
+  { 0xf921, 0, 255, "\x5d\x50\0" },
+  { 0xf922, 0, 255, "\x6f\xeb\0" },
+  { 0xf923, 0, 255, "\x85\xcd\0" },
+  { 0xf924, 0, 255, "\x89\x64\0" },
+  { 0xf925, 0, 255, "\x62\xc9\0" },
+  { 0xf926, 0, 255, "\x81\xd8\0" },
+  { 0xf927, 0, 255, "\x88\x1f\0" },
+  { 0xf928, 0, 255, "\x5e\xca\0" },
+  { 0xf929, 0, 255, "\x67\x17\0" },
+  { 0xf92a, 0, 255, "\x6d\x6a\0" },
+  { 0xf92b, 0, 255, "\x72\xfc\0" },
+  { 0xf92c, 0, 255, "\x90\xce\0" },
+  { 0xf92d, 0, 255, "\x4f\x86\0" },
+  { 0xf92e, 0, 255, "\x51\xb7\0" },
+  { 0xf92f, 0, 255, "\x52\xde\0" },
+  { 0xf930, 0, 255, "\x64\xc4\0" },
+  { 0xf931, 0, 255, "\x6a\xd3\0" },
+  { 0xf932, 0, 255, "\x72\x10\0" },
+  { 0xf933, 0, 255, "\x76\xe7\0" },
+  { 0xf934, 0, 255, "\x80\x01\0" },
+  { 0xf935, 0, 255, "\x86\x06\0" },
+  { 0xf936, 0, 255, "\x86\x5c\0" },
+  { 0xf937, 0, 255, "\x8d\xef\0" },
+  { 0xf938, 0, 255, "\x97\x32\0" },
+  { 0xf939, 0, 255, "\x9b\x6f\0" },
+  { 0xf93a, 0, 255, "\x9d\xfa\0" },
+  { 0xf93b, 0, 255, "\x78\x8c\0" },
+  { 0xf93c, 0, 255, "\x79\x7f\0" },
+  { 0xf93d, 0, 255, "\x7d\xa0\0" },
+  { 0xf93e, 0, 255, "\x83\xc9\0" },
+  { 0xf93f, 0, 255, "\x93\x04\0" },
+  { 0xf940, 0, 255, "\x9e\x7f\0" },
+  { 0xf941, 0, 255, "\x8a\xd6\0" },
+  { 0xf942, 0, 255, "\x58\xdf\0" },
+  { 0xf943, 0, 255, "\x5f\x04\0" },
+  { 0xf944, 0, 255, "\x7c\x60\0" },
+  { 0xf945, 0, 255, "\x80\x7e\0" },
+  { 0xf946, 0, 255, "\x72\x62\0" },
+  { 0xf947, 0, 255, "\x78\xca\0" },
+  { 0xf948, 0, 255, "\x8c\xc2\0" },
+  { 0xf949, 0, 255, "\x96\xf7\0" },
+  { 0xf94a, 0, 255, "\x58\xd8\0" },
+  { 0xf94b, 0, 255, "\x5c\x62\0" },
+  { 0xf94c, 0, 255, "\x6a\x13\0" },
+  { 0xf94d, 0, 255, "\x6d\xda\0" },
+  { 0xf94e, 0, 255, "\x6f\x0f\0" },
+  { 0xf94f, 0, 255, "\x7d\x2f\0" },
+  { 0xf950, 0, 255, "\x7e\x37\0" },
+  { 0xf951, 0, 255, "\x96\xfb\0" },
+  { 0xf952, 0, 255, "\x52\xd2\0" },
+  { 0xf953, 0, 255, "\x80\x8b\0" },
+  { 0xf954, 0, 255, "\x51\xdc\0" },
+  { 0xf955, 0, 255, "\x51\xcc\0" },
+  { 0xf956, 0, 255, "\x7a\x1c\0" },
+  { 0xf957, 0, 255, "\x7d\xbe\0" },
+  { 0xf958, 0, 255, "\x83\xf1\0" },
+  { 0xf959, 0, 255, "\x96\x75\0" },
+  { 0xf95a, 0, 255, "\x8b\x80\0" },
+  { 0xf95b, 0, 255, "\x62\xcf\0" },
+  { 0xf95c, 0, 255, "\x6a\x02\0" },
+  { 0xf95d, 0, 255, "\x8a\xfe\0" },
+  { 0xf95e, 0, 255, "\x4e\x39\0" },
+  { 0xf95f, 0, 255, "\x5b\xe7\0" },
+  { 0xf960, 0, 255, "\x60\x12\0" },
+  { 0xf961, 0, 255, "\x73\x87\0" },
+  { 0xf962, 0, 255, "\x75\x70\0" },
+  { 0xf963, 0, 255, "\x53\x17\0" },
+  { 0xf964, 0, 255, "\x78\xfb\0" },
+  { 0xf965, 0, 255, "\x4f\xbf\0" },
+  { 0xf966, 0, 255, "\x5f\xa9\0" },
+  { 0xf967, 0, 255, "\x4e\x0d\0" },
+  { 0xf968, 0, 255, "\x6c\xcc\0" },
+  { 0xf969, 0, 255, "\x65\x78\0" },
+  { 0xf96a, 0, 255, "\x7d\x22\0" },
+  { 0xf96b, 0, 255, "\x53\xc3\0" },
+  { 0xf96c, 0, 255, "\x58\x5e\0" },
+  { 0xf96d, 0, 255, "\x77\x01\0" },
+  { 0xf96e, 0, 255, "\x84\x49\0" },
+  { 0xf96f, 0, 255, "\x8a\xaa\0" },
+  { 0xf970, 0, 255, "\x6b\xba\0" },
+  { 0xf971, 0, 255, "\x8f\xb0\0" },
+  { 0xf972, 0, 255, "\x6c\x88\0" },
+  { 0xf973, 0, 255, "\x62\xfe\0" },
+  { 0xf974, 0, 255, "\x82\xe5\0" },
+  { 0xf975, 0, 255, "\x63\xa0\0" },
+  { 0xf976, 0, 255, "\x75\x65\0" },
+  { 0xf977, 0, 255, "\x4e\xae\0" },
+  { 0xf978, 0, 255, "\x51\x69\0" },
+  { 0xf979, 0, 255, "\x51\xc9\0" },
+  { 0xf97a, 0, 255, "\x68\x81\0" },
+  { 0xf97b, 0, 255, "\x7c\xe7\0" },
+  { 0xf97c, 0, 255, "\x82\x6f\0" },
+  { 0xf97d, 0, 255, "\x8a\xd2\0" },
+  { 0xf97e, 0, 255, "\x91\xcf\0" },
+  { 0xf97f, 0, 255, "\x52\xf5\0" },
+  { 0xf980, 0, 255, "\x54\x42\0" },
+  { 0xf981, 0, 255, "\x59\x73\0" },
+  { 0xf982, 0, 255, "\x5e\xec\0" },
+  { 0xf983, 0, 255, "\x65\xc5\0" },
+  { 0xf984, 0, 255, "\x6f\xfe\0" },
+  { 0xf985, 0, 255, "\x79\x2a\0" },
+  { 0xf986, 0, 255, "\x95\xad\0" },
+  { 0xf987, 0, 255, "\x9a\x6a\0" },
+  { 0xf988, 0, 255, "\x9e\x97\0" },
+  { 0xf989, 0, 255, "\x9e\xce\0" },
+  { 0xf98a, 0, 255, "\x52\x9b\0" },
+  { 0xf98b, 0, 255, "\x66\xc6\0" },
+  { 0xf98c, 0, 255, "\x6b\x77\0" },
+  { 0xf98d, 0, 255, "\x8f\x62\0" },
+  { 0xf98e, 0, 255, "\x5e\x74\0" },
+  { 0xf98f, 0, 255, "\x61\x90\0" },
+  { 0xf990, 0, 255, "\x62\x00\0" },
+  { 0xf991, 0, 255, "\x64\x9a\0" },
+  { 0xf992, 0, 255, "\x6f\x23\0" },
+  { 0xf993, 0, 255, "\x71\x49\0" },
+  { 0xf994, 0, 255, "\x74\x89\0" },
+  { 0xf995, 0, 255, "\x79\xca\0" },
+  { 0xf996, 0, 255, "\x7d\xf4\0" },
+  { 0xf997, 0, 255, "\x80\x6f\0" },
+  { 0xf998, 0, 255, "\x8f\x26\0" },
+  { 0xf999, 0, 255, "\x84\xee\0" },
+  { 0xf99a, 0, 255, "\x90\x23\0" },
+  { 0xf99b, 0, 255, "\x93\x4a\0" },
+  { 0xf99c, 0, 255, "\x52\x17\0" },
+  { 0xf99d, 0, 255, "\x52\xa3\0" },
+  { 0xf99e, 0, 255, "\x54\xbd\0" },
+  { 0xf99f, 0, 255, "\x70\xc8\0" },
+  { 0xf9a0, 0, 255, "\x88\xc2\0" },
+  { 0xf9a1, 0, 255, "\x8a\xaa\0" },
+  { 0xf9a2, 0, 255, "\x5e\xc9\0" },
+  { 0xf9a3, 0, 255, "\x5f\xf5\0" },
+  { 0xf9a4, 0, 255, "\x63\x7b\0" },
+  { 0xf9a5, 0, 255, "\x6b\xae\0" },
+  { 0xf9a6, 0, 255, "\x7c\x3e\0" },
+  { 0xf9a7, 0, 255, "\x73\x75\0" },
+  { 0xf9a8, 0, 255, "\x4e\xe4\0" },
+  { 0xf9a9, 0, 255, "\x56\xf9\0" },
+  { 0xf9aa, 0, 255, "\x5b\xe7\0" },
+  { 0xf9ab, 0, 255, "\x5d\xba\0" },
+  { 0xf9ac, 0, 255, "\x60\x1c\0" },
+  { 0xf9ad, 0, 255, "\x73\xb2\0" },
+  { 0xf9ae, 0, 255, "\x74\x69\0" },
+  { 0xf9af, 0, 255, "\x7f\x9a\0" },
+  { 0xf9b0, 0, 255, "\x80\x46\0" },
+  { 0xf9b1, 0, 255, "\x92\x34\0" },
+  { 0xf9b2, 0, 255, "\x96\xf6\0" },
+  { 0xf9b3, 0, 255, "\x97\x48\0" },
+  { 0xf9b4, 0, 255, "\x98\x18\0" },
+  { 0xf9b5, 0, 255, "\x4f\x8b\0" },
+  { 0xf9b6, 0, 255, "\x79\xae\0" },
+  { 0xf9b7, 0, 255, "\x91\xb4\0" },
+  { 0xf9b8, 0, 255, "\x96\xb8\0" },
+  { 0xf9b9, 0, 255, "\x60\xe1\0" },
+  { 0xf9ba, 0, 255, "\x4e\x86\0" },
+  { 0xf9bb, 0, 255, "\x50\xda\0" },
+  { 0xf9bc, 0, 255, "\x5b\xee\0" },
+  { 0xf9bd, 0, 255, "\x5c\x3f\0" },
+  { 0xf9be, 0, 255, "\x65\x99\0" },
+  { 0xf9bf, 0, 255, "\x6a\x02\0" },
+  { 0xf9c0, 0, 255, "\x71\xce\0" },
+  { 0xf9c1, 0, 255, "\x76\x42\0" },
+  { 0xf9c2, 0, 255, "\x84\xfc\0" },
+  { 0xf9c3, 0, 255, "\x90\x7c\0" },
+  { 0xf9c4, 0, 255, "\x9f\x8d\0" },
+  { 0xf9c5, 0, 255, "\x66\x88\0" },
+  { 0xf9c6, 0, 255, "\x96\x2e\0" },
+  { 0xf9c7, 0, 255, "\x52\x89\0" },
+  { 0xf9c8, 0, 255, "\x67\x7b\0" },
+  { 0xf9c9, 0, 255, "\x67\xf3\0" },
+  { 0xf9ca, 0, 255, "\x6d\x41\0" },
+  { 0xf9cb, 0, 255, "\x6e\x9c\0" },
+  { 0xf9cc, 0, 255, "\x74\x09\0" },
+  { 0xf9cd, 0, 255, "\x75\x59\0" },
+  { 0xf9ce, 0, 255, "\x78\x6b\0" },
+  { 0xf9cf, 0, 255, "\x7d\x10\0" },
+  { 0xf9d0, 0, 255, "\x98\x5e\0" },
+  { 0xf9d1, 0, 255, "\x51\x6d\0" },
+  { 0xf9d2, 0, 255, "\x62\x2e\0" },
+  { 0xf9d3, 0, 255, "\x96\x78\0" },
+  { 0xf9d4, 0, 255, "\x50\x2b\0" },
+  { 0xf9d5, 0, 255, "\x5d\x19\0" },
+  { 0xf9d6, 0, 255, "\x6d\xea\0" },
+  { 0xf9d7, 0, 255, "\x8f\x2a\0" },
+  { 0xf9d8, 0, 255, "\x5f\x8b\0" },
+  { 0xf9d9, 0, 255, "\x61\x44\0" },
+  { 0xf9da, 0, 255, "\x68\x17\0" },
+  { 0xf9db, 0, 255, "\x73\x87\0" },
+  { 0xf9dc, 0, 255, "\x96\x86\0" },
+  { 0xf9dd, 0, 255, "\x52\x29\0" },
+  { 0xf9de, 0, 255, "\x54\x0f\0" },
+  { 0xf9df, 0, 255, "\x5c\x65\0" },
+  { 0xf9e0, 0, 255, "\x66\x13\0" },
+  { 0xf9e1, 0, 255, "\x67\x4e\0" },
+  { 0xf9e2, 0, 255, "\x68\xa8\0" },
+  { 0xf9e3, 0, 255, "\x6c\xe5\0" },
+  { 0xf9e4, 0, 255, "\x74\x06\0" },
+  { 0xf9e5, 0, 255, "\x75\xe2\0" },
+  { 0xf9e6, 0, 255, "\x7f\x79\0" },
+  { 0xf9e7, 0, 255, "\x88\xcf\0" },
+  { 0xf9e8, 0, 255, "\x88\xe1\0" },
+  { 0xf9e9, 0, 255, "\x91\xcc\0" },
+  { 0xf9ea, 0, 255, "\x96\xe2\0" },
+  { 0xf9eb, 0, 255, "\x53\x3f\0" },
+  { 0xf9ec, 0, 255, "\x6e\xba\0" },
+  { 0xf9ed, 0, 255, "\x54\x1d\0" },
+  { 0xf9ee, 0, 255, "\x71\xd0\0" },
+  { 0xf9ef, 0, 255, "\x74\x98\0" },
+  { 0xf9f0, 0, 255, "\x85\xfa\0" },
+  { 0xf9f1, 0, 255, "\x96\xa3\0" },
+  { 0xf9f2, 0, 255, "\x9c\x57\0" },
+  { 0xf9f3, 0, 255, "\x9e\x9f\0" },
+  { 0xf9f4, 0, 255, "\x67\x97\0" },
+  { 0xf9f5, 0, 255, "\x6d\xcb\0" },
+  { 0xf9f6, 0, 255, "\x81\xe8\0" },
+  { 0xf9f7, 0, 255, "\x7a\xcb\0" },
+  { 0xf9f8, 0, 255, "\x7b\x20\0" },
+  { 0xf9f9, 0, 255, "\x7c\x92\0" },
+  { 0xf9fa, 0, 255, "\x72\xc0\0" },
+  { 0xf9fb, 0, 255, "\x70\x99\0" },
+  { 0xf9fc, 0, 255, "\x8b\x58\0" },
+  { 0xf9fd, 0, 255, "\x4e\xc0\0" },
+  { 0xf9fe, 0, 255, "\x83\x36\0" },
+  { 0xf9ff, 0, 255, "\x52\x3a\0" },
+  { 0xfa00, 0, 255, "\x52\x07\0" },
+  { 0xfa01, 0, 255, "\x5e\xa6\0" },
+  { 0xfa02, 0, 255, "\x62\xd3\0" },
+  { 0xfa03, 0, 255, "\x7c\xd6\0" },
+  { 0xfa04, 0, 255, "\x5b\x85\0" },
+  { 0xfa05, 0, 255, "\x6d\x1e\0" },
+  { 0xfa06, 0, 255, "\x66\xb4\0" },
+  { 0xfa07, 0, 255, "\x8f\x3b\0" },
+  { 0xfa08, 0, 255, "\x88\x4c\0" },
+  { 0xfa09, 0, 255, "\x96\x4d\0" },
+  { 0xfa0a, 0, 255, "\x89\x8b\0" },
+  { 0xfa0b, 0, 255, "\x5e\xd3\0" },
+  { 0xfa0c, 0, 255, "\x51\x40\0" },
+  { 0xfa0d, 0, 255, "\x55\xc0\0" },
+  { 0xfa10, 0, 255, "\x58\x5a\0" },
+  { 0xfa12, 0, 255, "\x66\x74\0" },
+  { 0xfa15, 0, 255, "\x51\xde\0" },
+  { 0xfa16, 0, 255, "\x73\x2a\0" },
+  { 0xfa17, 0, 255, "\x76\xca\0" },
+  { 0xfa18, 0, 255, "\x79\x3c\0" },
+  { 0xfa19, 0, 255, "\x79\x5e\0" },
+  { 0xfa1a, 0, 255, "\x79\x65\0" },
+  { 0xfa1b, 0, 255, "\x79\x8f\0" },
+  { 0xfa1c, 0, 255, "\x97\x56\0" },
+  { 0xfa1d, 0, 255, "\x7c\xbe\0" },
+  { 0xfa1e, 0, 255, "\x7f\xbd\0" },
+  { 0xfa20, 0, 255, "\x86\x12\0" },
+  { 0xfa22, 0, 255, "\x8a\xf8\0" },
+  { 0xfa25, 0, 255, "\x90\x38\0" },
+  { 0xfa26, 0, 255, "\x90\xfd\0" },
+  { 0xfa2a, 0, 255, "\x98\xef\0" },
+  { 0xfa2b, 0, 255, "\x98\xfc\0" },
+  { 0xfa2c, 0, 255, "\x99\x28\0" },
+  { 0xfa2d, 0, 255, "\x9d\xb4\0" },
+  { 0xfb00, 255, 0, "\x00\x66\x00\x66\0" },
+  { 0xfb01, 255, 0, "\x00\x66\x00\x69\0" },
+  { 0xfb02, 255, 0, "\x00\x66\x00\x6c\0" },
+  { 0xfb03, 255, 0, "\x00\x66\x00\x66\x00\x69\0" },
+  { 0xfb04, 255, 0, "\x00\x66\x00\x66\x00\x6c\0" },
+  { 0xfb05, 255, 0, "\x00\x73\x00\x74\0" },
+  { 0xfb06, 255, 0, "\x00\x73\x00\x74\0" },
+  { 0xfb13, 255, 0, "\x05\x74\x05\x76\0" },
+  { 0xfb14, 255, 0, "\x05\x74\x05\x65\0" },
+  { 0xfb15, 255, 0, "\x05\x74\x05\x6b\0" },
+  { 0xfb16, 255, 0, "\x05\x7e\x05\x76\0" },
+  { 0xfb17, 255, 0, "\x05\x74\x05\x6d\0" },
+  { 0xfb1d, 0, 255, "\x05\xd9\x05\xb4\0" },
+  { 0xfb1f, 0, 255, "\x05\xf2\x05\xb7\0" },
+  { 0xfb20, 255, 0, "\x05\xe2\0" },
+  { 0xfb21, 255, 0, "\x05\xd0\0" },
+  { 0xfb22, 255, 0, "\x05\xd3\0" },
+  { 0xfb23, 255, 0, "\x05\xd4\0" },
+  { 0xfb24, 255, 0, "\x05\xdb\0" },
+  { 0xfb25, 255, 0, "\x05\xdc\0" },
+  { 0xfb26, 255, 0, "\x05\xdd\0" },
+  { 0xfb27, 255, 0, "\x05\xe8\0" },
+  { 0xfb28, 255, 0, "\x05\xea\0" },
+  { 0xfb29, 255, 0, "\x00\x2b\0" },
+  { 0xfb2a, 0, 255, "\x05\xe9\x05\xc1\0" },
+  { 0xfb2b, 0, 255, "\x05\xe9\x05\xc2\0" },
+  { 0xfb2c, 0, 255, "\x05\xe9\x05\xbc\x05\xc1\0" },
+  { 0xfb2d, 0, 255, "\x05\xe9\x05\xbc\x05\xc2\0" },
+  { 0xfb2e, 0, 255, "\x05\xd0\x05\xb7\0" },
+  { 0xfb2f, 0, 255, "\x05\xd0\x05\xb8\0" },
+  { 0xfb30, 0, 255, "\x05\xd0\x05\xbc\0" },
+  { 0xfb31, 0, 255, "\x05\xd1\x05\xbc\0" },
+  { 0xfb32, 0, 255, "\x05\xd2\x05\xbc\0" },
+  { 0xfb33, 0, 255, "\x05\xd3\x05\xbc\0" },
+  { 0xfb34, 0, 255, "\x05\xd4\x05\xbc\0" },
+  { 0xfb35, 0, 255, "\x05\xd5\x05\xbc\0" },
+  { 0xfb36, 0, 255, "\x05\xd6\x05\xbc\0" },
+  { 0xfb38, 0, 255, "\x05\xd8\x05\xbc\0" },
+  { 0xfb39, 0, 255, "\x05\xd9\x05\xbc\0" },
+  { 0xfb3a, 0, 255, "\x05\xda\x05\xbc\0" },
+  { 0xfb3b, 0, 255, "\x05\xdb\x05\xbc\0" },
+  { 0xfb3c, 0, 255, "\x05\xdc\x05\xbc\0" },
+  { 0xfb3e, 0, 255, "\x05\xde\x05\xbc\0" },
+  { 0xfb40, 0, 255, "\x05\xe0\x05\xbc\0" },
+  { 0xfb41, 0, 255, "\x05\xe1\x05\xbc\0" },
+  { 0xfb43, 0, 255, "\x05\xe3\x05\xbc\0" },
+  { 0xfb44, 0, 255, "\x05\xe4\x05\xbc\0" },
+  { 0xfb46, 0, 255, "\x05\xe6\x05\xbc\0" },
+  { 0xfb47, 0, 255, "\x05\xe7\x05\xbc\0" },
+  { 0xfb48, 0, 255, "\x05\xe8\x05\xbc\0" },
+  { 0xfb49, 0, 255, "\x05\xe9\x05\xbc\0" },
+  { 0xfb4a, 0, 255, "\x05\xea\x05\xbc\0" },
+  { 0xfb4b, 0, 255, "\x05\xd5\x05\xb9\0" },
+  { 0xfb4c, 0, 255, "\x05\xd1\x05\xbf\0" },
+  { 0xfb4d, 0, 255, "\x05\xdb\x05\xbf\0" },
+  { 0xfb4e, 0, 255, "\x05\xe4\x05\xbf\0" },
+  { 0xfb4f, 255, 0, "\x05\xd0\x05\xdc\0" },
+  { 0xfb50, 255, 0, "\x06\x71\0" },
+  { 0xfb51, 255, 0, "\x06\x71\0" },
+  { 0xfb52, 255, 0, "\x06\x7b\0" },
+  { 0xfb53, 255, 0, "\x06\x7b\0" },
+  { 0xfb54, 255, 0, "\x06\x7b\0" },
+  { 0xfb55, 255, 0, "\x06\x7b\0" },
+  { 0xfb56, 255, 0, "\x06\x7e\0" },
+  { 0xfb57, 255, 0, "\x06\x7e\0" },
+  { 0xfb58, 255, 0, "\x06\x7e\0" },
+  { 0xfb59, 255, 0, "\x06\x7e\0" },
+  { 0xfb5a, 255, 0, "\x06\x80\0" },
+  { 0xfb5b, 255, 0, "\x06\x80\0" },
+  { 0xfb5c, 255, 0, "\x06\x80\0" },
+  { 0xfb5d, 255, 0, "\x06\x80\0" },
+  { 0xfb5e, 255, 0, "\x06\x7a\0" },
+  { 0xfb5f, 255, 0, "\x06\x7a\0" },
+  { 0xfb60, 255, 0, "\x06\x7a\0" },
+  { 0xfb61, 255, 0, "\x06\x7a\0" },
+  { 0xfb62, 255, 0, "\x06\x7f\0" },
+  { 0xfb63, 255, 0, "\x06\x7f\0" },
+  { 0xfb64, 255, 0, "\x06\x7f\0" },
+  { 0xfb65, 255, 0, "\x06\x7f\0" },
+  { 0xfb66, 255, 0, "\x06\x79\0" },
+  { 0xfb67, 255, 0, "\x06\x79\0" },
+  { 0xfb68, 255, 0, "\x06\x79\0" },
+  { 0xfb69, 255, 0, "\x06\x79\0" },
+  { 0xfb6a, 255, 0, "\x06\xa4\0" },
+  { 0xfb6b, 255, 0, "\x06\xa4\0" },
+  { 0xfb6c, 255, 0, "\x06\xa4\0" },
+  { 0xfb6d, 255, 0, "\x06\xa4\0" },
+  { 0xfb6e, 255, 0, "\x06\xa6\0" },
+  { 0xfb6f, 255, 0, "\x06\xa6\0" },
+  { 0xfb70, 255, 0, "\x06\xa6\0" },
+  { 0xfb71, 255, 0, "\x06\xa6\0" },
+  { 0xfb72, 255, 0, "\x06\x84\0" },
+  { 0xfb73, 255, 0, "\x06\x84\0" },
+  { 0xfb74, 255, 0, "\x06\x84\0" },
+  { 0xfb75, 255, 0, "\x06\x84\0" },
+  { 0xfb76, 255, 0, "\x06\x83\0" },
+  { 0xfb77, 255, 0, "\x06\x83\0" },
+  { 0xfb78, 255, 0, "\x06\x83\0" },
+  { 0xfb79, 255, 0, "\x06\x83\0" },
+  { 0xfb7a, 255, 0, "\x06\x86\0" },
+  { 0xfb7b, 255, 0, "\x06\x86\0" },
+  { 0xfb7c, 255, 0, "\x06\x86\0" },
+  { 0xfb7d, 255, 0, "\x06\x86\0" },
+  { 0xfb7e, 255, 0, "\x06\x87\0" },
+  { 0xfb7f, 255, 0, "\x06\x87\0" },
+  { 0xfb80, 255, 0, "\x06\x87\0" },
+  { 0xfb81, 255, 0, "\x06\x87\0" },
+  { 0xfb82, 255, 0, "\x06\x8d\0" },
+  { 0xfb83, 255, 0, "\x06\x8d\0" },
+  { 0xfb84, 255, 0, "\x06\x8c\0" },
+  { 0xfb85, 255, 0, "\x06\x8c\0" },
+  { 0xfb86, 255, 0, "\x06\x8e\0" },
+  { 0xfb87, 255, 0, "\x06\x8e\0" },
+  { 0xfb88, 255, 0, "\x06\x88\0" },
+  { 0xfb89, 255, 0, "\x06\x88\0" },
+  { 0xfb8a, 255, 0, "\x06\x98\0" },
+  { 0xfb8b, 255, 0, "\x06\x98\0" },
+  { 0xfb8c, 255, 0, "\x06\x91\0" },
+  { 0xfb8d, 255, 0, "\x06\x91\0" },
+  { 0xfb8e, 255, 0, "\x06\xa9\0" },
+  { 0xfb8f, 255, 0, "\x06\xa9\0" },
+  { 0xfb90, 255, 0, "\x06\xa9\0" },
+  { 0xfb91, 255, 0, "\x06\xa9\0" },
+  { 0xfb92, 255, 0, "\x06\xaf\0" },
+  { 0xfb93, 255, 0, "\x06\xaf\0" },
+  { 0xfb94, 255, 0, "\x06\xaf\0" },
+  { 0xfb95, 255, 0, "\x06\xaf\0" },
+  { 0xfb96, 255, 0, "\x06\xb3\0" },
+  { 0xfb97, 255, 0, "\x06\xb3\0" },
+  { 0xfb98, 255, 0, "\x06\xb3\0" },
+  { 0xfb99, 255, 0, "\x06\xb3\0" },
+  { 0xfb9a, 255, 0, "\x06\xb1\0" },
+  { 0xfb9b, 255, 0, "\x06\xb1\0" },
+  { 0xfb9c, 255, 0, "\x06\xb1\0" },
+  { 0xfb9d, 255, 0, "\x06\xb1\0" },
+  { 0xfb9e, 255, 0, "\x06\xba\0" },
+  { 0xfb9f, 255, 0, "\x06\xba\0" },
+  { 0xfba0, 255, 0, "\x06\xbb\0" },
+  { 0xfba1, 255, 0, "\x06\xbb\0" },
+  { 0xfba2, 255, 0, "\x06\xbb\0" },
+  { 0xfba3, 255, 0, "\x06\xbb\0" },
+  { 0xfba4, 255, 0, "\x06\xd5\x06\x54\0" },
+  { 0xfba5, 255, 0, "\x06\xd5\x06\x54\0" },
+  { 0xfba6, 255, 0, "\x06\xc1\0" },
+  { 0xfba7, 255, 0, "\x06\xc1\0" },
+  { 0xfba8, 255, 0, "\x06\xc1\0" },
+  { 0xfba9, 255, 0, "\x06\xc1\0" },
+  { 0xfbaa, 255, 0, "\x06\xbe\0" },
+  { 0xfbab, 255, 0, "\x06\xbe\0" },
+  { 0xfbac, 255, 0, "\x06\xbe\0" },
+  { 0xfbad, 255, 0, "\x06\xbe\0" },
+  { 0xfbae, 255, 0, "\x06\xd2\0" },
+  { 0xfbaf, 255, 0, "\x06\xd2\0" },
+  { 0xfbb0, 255, 0, "\x06\xd2\x06\x54\0" },
+  { 0xfbb1, 255, 0, "\x06\xd2\x06\x54\0" },
+  { 0xfbd3, 255, 0, "\x06\xad\0" },
+  { 0xfbd4, 255, 0, "\x06\xad\0" },
+  { 0xfbd5, 255, 0, "\x06\xad\0" },
+  { 0xfbd6, 255, 0, "\x06\xad\0" },
+  { 0xfbd7, 255, 0, "\x06\xc7\0" },
+  { 0xfbd8, 255, 0, "\x06\xc7\0" },
+  { 0xfbd9, 255, 0, "\x06\xc6\0" },
+  { 0xfbda, 255, 0, "\x06\xc6\0" },
+  { 0xfbdb, 255, 0, "\x06\xc8\0" },
+  { 0xfbdc, 255, 0, "\x06\xc8\0" },
+  { 0xfbdd, 255, 0, "\x06\xc7\x06\x74\0" },
+  { 0xfbde, 255, 0, "\x06\xcb\0" },
+  { 0xfbdf, 255, 0, "\x06\xcb\0" },
+  { 0xfbe0, 255, 0, "\x06\xc5\0" },
+  { 0xfbe1, 255, 0, "\x06\xc5\0" },
+  { 0xfbe2, 255, 0, "\x06\xc9\0" },
+  { 0xfbe3, 255, 0, "\x06\xc9\0" },
+  { 0xfbe4, 255, 0, "\x06\xd0\0" },
+  { 0xfbe5, 255, 0, "\x06\xd0\0" },
+  { 0xfbe6, 255, 0, "\x06\xd0\0" },
+  { 0xfbe7, 255, 0, "\x06\xd0\0" },
+  { 0xfbe8, 255, 0, "\x06\x49\0" },
+  { 0xfbe9, 255, 0, "\x06\x49\0" },
+  { 0xfbea, 255, 0, "\x06\x4a\x06\x54\x06\x27\0" },
+  { 0xfbeb, 255, 0, "\x06\x4a\x06\x54\x06\x27\0" },
+  { 0xfbec, 255, 0, "\x06\x4a\x06\x54\x06\xd5\0" },
+  { 0xfbed, 255, 0, "\x06\x4a\x06\x54\x06\xd5\0" },
+  { 0xfbee, 255, 0, "\x06\x4a\x06\x54\x06\x48\0" },
+  { 0xfbef, 255, 0, "\x06\x4a\x06\x54\x06\x48\0" },
+  { 0xfbf0, 255, 0, "\x06\x4a\x06\x54\x06\xc7\0" },
+  { 0xfbf1, 255, 0, "\x06\x4a\x06\x54\x06\xc7\0" },
+  { 0xfbf2, 255, 0, "\x06\x4a\x06\x54\x06\xc6\0" },
+  { 0xfbf3, 255, 0, "\x06\x4a\x06\x54\x06\xc6\0" },
+  { 0xfbf4, 255, 0, "\x06\x4a\x06\x54\x06\xc8\0" },
+  { 0xfbf5, 255, 0, "\x06\x4a\x06\x54\x06\xc8\0" },
+  { 0xfbf6, 255, 0, "\x06\x4a\x06\x54\x06\xd0\0" },
+  { 0xfbf7, 255, 0, "\x06\x4a\x06\x54\x06\xd0\0" },
+  { 0xfbf8, 255, 0, "\x06\x4a\x06\x54\x06\xd0\0" },
+  { 0xfbf9, 255, 0, "\x06\x4a\x06\x54\x06\x49\0" },
+  { 0xfbfa, 255, 0, "\x06\x4a\x06\x54\x06\x49\0" },
+  { 0xfbfb, 255, 0, "\x06\x4a\x06\x54\x06\x49\0" },
+  { 0xfbfc, 255, 0, "\x06\xcc\0" },
+  { 0xfbfd, 255, 0, "\x06\xcc\0" },
+  { 0xfbfe, 255, 0, "\x06\xcc\0" },
+  { 0xfbff, 255, 0, "\x06\xcc\0" },
+  { 0xfc00, 255, 0, "\x06\x4a\x06\x54\x06\x2c\0" },
+  { 0xfc01, 255, 0, "\x06\x4a\x06\x54\x06\x2d\0" },
+  { 0xfc02, 255, 0, "\x06\x4a\x06\x54\x06\x45\0" },
+  { 0xfc03, 255, 0, "\x06\x4a\x06\x54\x06\x49\0" },
+  { 0xfc04, 255, 0, "\x06\x4a\x06\x54\x06\x4a\0" },
+  { 0xfc05, 255, 0, "\x06\x28\x06\x2c\0" },
+  { 0xfc06, 255, 0, "\x06\x28\x06\x2d\0" },
+  { 0xfc07, 255, 0, "\x06\x28\x06\x2e\0" },
+  { 0xfc08, 255, 0, "\x06\x28\x06\x45\0" },
+  { 0xfc09, 255, 0, "\x06\x28\x06\x49\0" },
+  { 0xfc0a, 255, 0, "\x06\x28\x06\x4a\0" },
+  { 0xfc0b, 255, 0, "\x06\x2a\x06\x2c\0" },
+  { 0xfc0c, 255, 0, "\x06\x2a\x06\x2d\0" },
+  { 0xfc0d, 255, 0, "\x06\x2a\x06\x2e\0" },
+  { 0xfc0e, 255, 0, "\x06\x2a\x06\x45\0" },
+  { 0xfc0f, 255, 0, "\x06\x2a\x06\x49\0" },
+  { 0xfc10, 255, 0, "\x06\x2a\x06\x4a\0" },
+  { 0xfc11, 255, 0, "\x06\x2b\x06\x2c\0" },
+  { 0xfc12, 255, 0, "\x06\x2b\x06\x45\0" },
+  { 0xfc13, 255, 0, "\x06\x2b\x06\x49\0" },
+  { 0xfc14, 255, 0, "\x06\x2b\x06\x4a\0" },
+  { 0xfc15, 255, 0, "\x06\x2c\x06\x2d\0" },
+  { 0xfc16, 255, 0, "\x06\x2c\x06\x45\0" },
+  { 0xfc17, 255, 0, "\x06\x2d\x06\x2c\0" },
+  { 0xfc18, 255, 0, "\x06\x2d\x06\x45\0" },
+  { 0xfc19, 255, 0, "\x06\x2e\x06\x2c\0" },
+  { 0xfc1a, 255, 0, "\x06\x2e\x06\x2d\0" },
+  { 0xfc1b, 255, 0, "\x06\x2e\x06\x45\0" },
+  { 0xfc1c, 255, 0, "\x06\x33\x06\x2c\0" },
+  { 0xfc1d, 255, 0, "\x06\x33\x06\x2d\0" },
+  { 0xfc1e, 255, 0, "\x06\x33\x06\x2e\0" },
+  { 0xfc1f, 255, 0, "\x06\x33\x06\x45\0" },
+  { 0xfc20, 255, 0, "\x06\x35\x06\x2d\0" },
+  { 0xfc21, 255, 0, "\x06\x35\x06\x45\0" },
+  { 0xfc22, 255, 0, "\x06\x36\x06\x2c\0" },
+  { 0xfc23, 255, 0, "\x06\x36\x06\x2d\0" },
+  { 0xfc24, 255, 0, "\x06\x36\x06\x2e\0" },
+  { 0xfc25, 255, 0, "\x06\x36\x06\x45\0" },
+  { 0xfc26, 255, 0, "\x06\x37\x06\x2d\0" },
+  { 0xfc27, 255, 0, "\x06\x37\x06\x45\0" },
+  { 0xfc28, 255, 0, "\x06\x38\x06\x45\0" },
+  { 0xfc29, 255, 0, "\x06\x39\x06\x2c\0" },
+  { 0xfc2a, 255, 0, "\x06\x39\x06\x45\0" },
+  { 0xfc2b, 255, 0, "\x06\x3a\x06\x2c\0" },
+  { 0xfc2c, 255, 0, "\x06\x3a\x06\x45\0" },
+  { 0xfc2d, 255, 0, "\x06\x41\x06\x2c\0" },
+  { 0xfc2e, 255, 0, "\x06\x41\x06\x2d\0" },
+  { 0xfc2f, 255, 0, "\x06\x41\x06\x2e\0" },
+  { 0xfc30, 255, 0, "\x06\x41\x06\x45\0" },
+  { 0xfc31, 255, 0, "\x06\x41\x06\x49\0" },
+  { 0xfc32, 255, 0, "\x06\x41\x06\x4a\0" },
+  { 0xfc33, 255, 0, "\x06\x42\x06\x2d\0" },
+  { 0xfc34, 255, 0, "\x06\x42\x06\x45\0" },
+  { 0xfc35, 255, 0, "\x06\x42\x06\x49\0" },
+  { 0xfc36, 255, 0, "\x06\x42\x06\x4a\0" },
+  { 0xfc37, 255, 0, "\x06\x43\x06\x27\0" },
+  { 0xfc38, 255, 0, "\x06\x43\x06\x2c\0" },
+  { 0xfc39, 255, 0, "\x06\x43\x06\x2d\0" },
+  { 0xfc3a, 255, 0, "\x06\x43\x06\x2e\0" },
+  { 0xfc3b, 255, 0, "\x06\x43\x06\x44\0" },
+  { 0xfc3c, 255, 0, "\x06\x43\x06\x45\0" },
+  { 0xfc3d, 255, 0, "\x06\x43\x06\x49\0" },
+  { 0xfc3e, 255, 0, "\x06\x43\x06\x4a\0" },
+  { 0xfc3f, 255, 0, "\x06\x44\x06\x2c\0" },
+  { 0xfc40, 255, 0, "\x06\x44\x06\x2d\0" },
+  { 0xfc41, 255, 0, "\x06\x44\x06\x2e\0" },
+  { 0xfc42, 255, 0, "\x06\x44\x06\x45\0" },
+  { 0xfc43, 255, 0, "\x06\x44\x06\x49\0" },
+  { 0xfc44, 255, 0, "\x06\x44\x06\x4a\0" },
+  { 0xfc45, 255, 0, "\x06\x45\x06\x2c\0" },
+  { 0xfc46, 255, 0, "\x06\x45\x06\x2d\0" },
+  { 0xfc47, 255, 0, "\x06\x45\x06\x2e\0" },
+  { 0xfc48, 255, 0, "\x06\x45\x06\x45\0" },
+  { 0xfc49, 255, 0, "\x06\x45\x06\x49\0" },
+  { 0xfc4a, 255, 0, "\x06\x45\x06\x4a\0" },
+  { 0xfc4b, 255, 0, "\x06\x46\x06\x2c\0" },
+  { 0xfc4c, 255, 0, "\x06\x46\x06\x2d\0" },
+  { 0xfc4d, 255, 0, "\x06\x46\x06\x2e\0" },
+  { 0xfc4e, 255, 0, "\x06\x46\x06\x45\0" },
+  { 0xfc4f, 255, 0, "\x06\x46\x06\x49\0" },
+  { 0xfc50, 255, 0, "\x06\x46\x06\x4a\0" },
+  { 0xfc51, 255, 0, "\x06\x47\x06\x2c\0" },
+  { 0xfc52, 255, 0, "\x06\x47\x06\x45\0" },
+  { 0xfc53, 255, 0, "\x06\x47\x06\x49\0" },
+  { 0xfc54, 255, 0, "\x06\x47\x06\x4a\0" },
+  { 0xfc55, 255, 0, "\x06\x4a\x06\x2c\0" },
+  { 0xfc56, 255, 0, "\x06\x4a\x06\x2d\0" },
+  { 0xfc57, 255, 0, "\x06\x4a\x06\x2e\0" },
+  { 0xfc58, 255, 0, "\x06\x4a\x06\x45\0" },
+  { 0xfc59, 255, 0, "\x06\x4a\x06\x49\0" },
+  { 0xfc5a, 255, 0, "\x06\x4a\x06\x4a\0" },
+  { 0xfc5b, 255, 0, "\x06\x30\x06\x70\0" },
+  { 0xfc5c, 255, 0, "\x06\x31\x06\x70\0" },
+  { 0xfc5d, 255, 0, "\x06\x49\x06\x70\0" },
+  { 0xfc5e, 255, 0, "\x00\x20\x06\x4c\x06\x51\0" },
+  { 0xfc5f, 255, 0, "\x00\x20\x06\x4d\x06\x51\0" },
+  { 0xfc60, 255, 0, "\x00\x20\x06\x4e\x06\x51\0" },
+  { 0xfc61, 255, 0, "\x00\x20\x06\x4f\x06\x51\0" },
+  { 0xfc62, 255, 0, "\x00\x20\x06\x50\x06\x51\0" },
+  { 0xfc63, 255, 0, "\x00\x20\x06\x51\x06\x70\0" },
+  { 0xfc64, 255, 0, "\x06\x4a\x06\x54\x06\x31\0" },
+  { 0xfc65, 255, 0, "\x06\x4a\x06\x54\x06\x32\0" },
+  { 0xfc66, 255, 0, "\x06\x4a\x06\x54\x06\x45\0" },
+  { 0xfc67, 255, 0, "\x06\x4a\x06\x54\x06\x46\0" },
+  { 0xfc68, 255, 0, "\x06\x4a\x06\x54\x06\x49\0" },
+  { 0xfc69, 255, 0, "\x06\x4a\x06\x54\x06\x4a\0" },
+  { 0xfc6a, 255, 0, "\x06\x28\x06\x31\0" },
+  { 0xfc6b, 255, 0, "\x06\x28\x06\x32\0" },
+  { 0xfc6c, 255, 0, "\x06\x28\x06\x45\0" },
+  { 0xfc6d, 255, 0, "\x06\x28\x06\x46\0" },
+  { 0xfc6e, 255, 0, "\x06\x28\x06\x49\0" },
+  { 0xfc6f, 255, 0, "\x06\x28\x06\x4a\0" },
+  { 0xfc70, 255, 0, "\x06\x2a\x06\x31\0" },
+  { 0xfc71, 255, 0, "\x06\x2a\x06\x32\0" },
+  { 0xfc72, 255, 0, "\x06\x2a\x06\x45\0" },
+  { 0xfc73, 255, 0, "\x06\x2a\x06\x46\0" },
+  { 0xfc74, 255, 0, "\x06\x2a\x06\x49\0" },
+  { 0xfc75, 255, 0, "\x06\x2a\x06\x4a\0" },
+  { 0xfc76, 255, 0, "\x06\x2b\x06\x31\0" },
+  { 0xfc77, 255, 0, "\x06\x2b\x06\x32\0" },
+  { 0xfc78, 255, 0, "\x06\x2b\x06\x45\0" },
+  { 0xfc79, 255, 0, "\x06\x2b\x06\x46\0" },
+  { 0xfc7a, 255, 0, "\x06\x2b\x06\x49\0" },
+  { 0xfc7b, 255, 0, "\x06\x2b\x06\x4a\0" },
+  { 0xfc7c, 255, 0, "\x06\x41\x06\x49\0" },
+  { 0xfc7d, 255, 0, "\x06\x41\x06\x4a\0" },
+  { 0xfc7e, 255, 0, "\x06\x42\x06\x49\0" },
+  { 0xfc7f, 255, 0, "\x06\x42\x06\x4a\0" },
+  { 0xfc80, 255, 0, "\x06\x43\x06\x27\0" },
+  { 0xfc81, 255, 0, "\x06\x43\x06\x44\0" },
+  { 0xfc82, 255, 0, "\x06\x43\x06\x45\0" },
+  { 0xfc83, 255, 0, "\x06\x43\x06\x49\0" },
+  { 0xfc84, 255, 0, "\x06\x43\x06\x4a\0" },
+  { 0xfc85, 255, 0, "\x06\x44\x06\x45\0" },
+  { 0xfc86, 255, 0, "\x06\x44\x06\x49\0" },
+  { 0xfc87, 255, 0, "\x06\x44\x06\x4a\0" },
+  { 0xfc88, 255, 0, "\x06\x45\x06\x27\0" },
+  { 0xfc89, 255, 0, "\x06\x45\x06\x45\0" },
+  { 0xfc8a, 255, 0, "\x06\x46\x06\x31\0" },
+  { 0xfc8b, 255, 0, "\x06\x46\x06\x32\0" },
+  { 0xfc8c, 255, 0, "\x06\x46\x06\x45\0" },
+  { 0xfc8d, 255, 0, "\x06\x46\x06\x46\0" },
+  { 0xfc8e, 255, 0, "\x06\x46\x06\x49\0" },
+  { 0xfc8f, 255, 0, "\x06\x46\x06\x4a\0" },
+  { 0xfc90, 255, 0, "\x06\x49\x06\x70\0" },
+  { 0xfc91, 255, 0, "\x06\x4a\x06\x31\0" },
+  { 0xfc92, 255, 0, "\x06\x4a\x06\x32\0" },
+  { 0xfc93, 255, 0, "\x06\x4a\x06\x45\0" },
+  { 0xfc94, 255, 0, "\x06\x4a\x06\x46\0" },
+  { 0xfc95, 255, 0, "\x06\x4a\x06\x49\0" },
+  { 0xfc96, 255, 0, "\x06\x4a\x06\x4a\0" },
+  { 0xfc97, 255, 0, "\x06\x4a\x06\x54\x06\x2c\0" },
+  { 0xfc98, 255, 0, "\x06\x4a\x06\x54\x06\x2d\0" },
+  { 0xfc99, 255, 0, "\x06\x4a\x06\x54\x06\x2e\0" },
+  { 0xfc9a, 255, 0, "\x06\x4a\x06\x54\x06\x45\0" },
+  { 0xfc9b, 255, 0, "\x06\x4a\x06\x54\x06\x47\0" },
+  { 0xfc9c, 255, 0, "\x06\x28\x06\x2c\0" },
+  { 0xfc9d, 255, 0, "\x06\x28\x06\x2d\0" },
+  { 0xfc9e, 255, 0, "\x06\x28\x06\x2e\0" },
+  { 0xfc9f, 255, 0, "\x06\x28\x06\x45\0" },
+  { 0xfca0, 255, 0, "\x06\x28\x06\x47\0" },
+  { 0xfca1, 255, 0, "\x06\x2a\x06\x2c\0" },
+  { 0xfca2, 255, 0, "\x06\x2a\x06\x2d\0" },
+  { 0xfca3, 255, 0, "\x06\x2a\x06\x2e\0" },
+  { 0xfca4, 255, 0, "\x06\x2a\x06\x45\0" },
+  { 0xfca5, 255, 0, "\x06\x2a\x06\x47\0" },
+  { 0xfca6, 255, 0, "\x06\x2b\x06\x45\0" },
+  { 0xfca7, 255, 0, "\x06\x2c\x06\x2d\0" },
+  { 0xfca8, 255, 0, "\x06\x2c\x06\x45\0" },
+  { 0xfca9, 255, 0, "\x06\x2d\x06\x2c\0" },
+  { 0xfcaa, 255, 0, "\x06\x2d\x06\x45\0" },
+  { 0xfcab, 255, 0, "\x06\x2e\x06\x2c\0" },
+  { 0xfcac, 255, 0, "\x06\x2e\x06\x45\0" },
+  { 0xfcad, 255, 0, "\x06\x33\x06\x2c\0" },
+  { 0xfcae, 255, 0, "\x06\x33\x06\x2d\0" },
+  { 0xfcaf, 255, 0, "\x06\x33\x06\x2e\0" },
+  { 0xfcb0, 255, 0, "\x06\x33\x06\x45\0" },
+  { 0xfcb1, 255, 0, "\x06\x35\x06\x2d\0" },
+  { 0xfcb2, 255, 0, "\x06\x35\x06\x2e\0" },
+  { 0xfcb3, 255, 0, "\x06\x35\x06\x45\0" },
+  { 0xfcb4, 255, 0, "\x06\x36\x06\x2c\0" },
+  { 0xfcb5, 255, 0, "\x06\x36\x06\x2d\0" },
+  { 0xfcb6, 255, 0, "\x06\x36\x06\x2e\0" },
+  { 0xfcb7, 255, 0, "\x06\x36\x06\x45\0" },
+  { 0xfcb8, 255, 0, "\x06\x37\x06\x2d\0" },
+  { 0xfcb9, 255, 0, "\x06\x38\x06\x45\0" },
+  { 0xfcba, 255, 0, "\x06\x39\x06\x2c\0" },
+  { 0xfcbb, 255, 0, "\x06\x39\x06\x45\0" },
+  { 0xfcbc, 255, 0, "\x06\x3a\x06\x2c\0" },
+  { 0xfcbd, 255, 0, "\x06\x3a\x06\x45\0" },
+  { 0xfcbe, 255, 0, "\x06\x41\x06\x2c\0" },
+  { 0xfcbf, 255, 0, "\x06\x41\x06\x2d\0" },
+  { 0xfcc0, 255, 0, "\x06\x41\x06\x2e\0" },
+  { 0xfcc1, 255, 0, "\x06\x41\x06\x45\0" },
+  { 0xfcc2, 255, 0, "\x06\x42\x06\x2d\0" },
+  { 0xfcc3, 255, 0, "\x06\x42\x06\x45\0" },
+  { 0xfcc4, 255, 0, "\x06\x43\x06\x2c\0" },
+  { 0xfcc5, 255, 0, "\x06\x43\x06\x2d\0" },
+  { 0xfcc6, 255, 0, "\x06\x43\x06\x2e\0" },
+  { 0xfcc7, 255, 0, "\x06\x43\x06\x44\0" },
+  { 0xfcc8, 255, 0, "\x06\x43\x06\x45\0" },
+  { 0xfcc9, 255, 0, "\x06\x44\x06\x2c\0" },
+  { 0xfcca, 255, 0, "\x06\x44\x06\x2d\0" },
+  { 0xfccb, 255, 0, "\x06\x44\x06\x2e\0" },
+  { 0xfccc, 255, 0, "\x06\x44\x06\x45\0" },
+  { 0xfccd, 255, 0, "\x06\x44\x06\x47\0" },
+  { 0xfcce, 255, 0, "\x06\x45\x06\x2c\0" },
+  { 0xfccf, 255, 0, "\x06\x45\x06\x2d\0" },
+  { 0xfcd0, 255, 0, "\x06\x45\x06\x2e\0" },
+  { 0xfcd1, 255, 0, "\x06\x45\x06\x45\0" },
+  { 0xfcd2, 255, 0, "\x06\x46\x06\x2c\0" },
+  { 0xfcd3, 255, 0, "\x06\x46\x06\x2d\0" },
+  { 0xfcd4, 255, 0, "\x06\x46\x06\x2e\0" },
+  { 0xfcd5, 255, 0, "\x06\x46\x06\x45\0" },
+  { 0xfcd6, 255, 0, "\x06\x46\x06\x47\0" },
+  { 0xfcd7, 255, 0, "\x06\x47\x06\x2c\0" },
+  { 0xfcd8, 255, 0, "\x06\x47\x06\x45\0" },
+  { 0xfcd9, 255, 0, "\x06\x47\x06\x70\0" },
+  { 0xfcda, 255, 0, "\x06\x4a\x06\x2c\0" },
+  { 0xfcdb, 255, 0, "\x06\x4a\x06\x2d\0" },
+  { 0xfcdc, 255, 0, "\x06\x4a\x06\x2e\0" },
+  { 0xfcdd, 255, 0, "\x06\x4a\x06\x45\0" },
+  { 0xfcde, 255, 0, "\x06\x4a\x06\x47\0" },
+  { 0xfcdf, 255, 0, "\x06\x4a\x06\x54\x06\x45\0" },
+  { 0xfce0, 255, 0, "\x06\x4a\x06\x54\x06\x47\0" },
+  { 0xfce1, 255, 0, "\x06\x28\x06\x45\0" },
+  { 0xfce2, 255, 0, "\x06\x28\x06\x47\0" },
+  { 0xfce3, 255, 0, "\x06\x2a\x06\x45\0" },
+  { 0xfce4, 255, 0, "\x06\x2a\x06\x47\0" },
+  { 0xfce5, 255, 0, "\x06\x2b\x06\x45\0" },
+  { 0xfce6, 255, 0, "\x06\x2b\x06\x47\0" },
+  { 0xfce7, 255, 0, "\x06\x33\x06\x45\0" },
+  { 0xfce8, 255, 0, "\x06\x33\x06\x47\0" },
+  { 0xfce9, 255, 0, "\x06\x34\x06\x45\0" },
+  { 0xfcea, 255, 0, "\x06\x34\x06\x47\0" },
+  { 0xfceb, 255, 0, "\x06\x43\x06\x44\0" },
+  { 0xfcec, 255, 0, "\x06\x43\x06\x45\0" },
+  { 0xfced, 255, 0, "\x06\x44\x06\x45\0" },
+  { 0xfcee, 255, 0, "\x06\x46\x06\x45\0" },
+  { 0xfcef, 255, 0, "\x06\x46\x06\x47\0" },
+  { 0xfcf0, 255, 0, "\x06\x4a\x06\x45\0" },
+  { 0xfcf1, 255, 0, "\x06\x4a\x06\x47\0" },
+  { 0xfcf2, 255, 0, "\x06\x40\x06\x4e\x06\x51\0" },
+  { 0xfcf3, 255, 0, "\x06\x40\x06\x4f\x06\x51\0" },
+  { 0xfcf4, 255, 0, "\x06\x40\x06\x50\x06\x51\0" },
+  { 0xfcf5, 255, 0, "\x06\x37\x06\x49\0" },
+  { 0xfcf6, 255, 0, "\x06\x37\x06\x4a\0" },
+  { 0xfcf7, 255, 0, "\x06\x39\x06\x49\0" },
+  { 0xfcf8, 255, 0, "\x06\x39\x06\x4a\0" },
+  { 0xfcf9, 255, 0, "\x06\x3a\x06\x49\0" },
+  { 0xfcfa, 255, 0, "\x06\x3a\x06\x4a\0" },
+  { 0xfcfb, 255, 0, "\x06\x33\x06\x49\0" },
+  { 0xfcfc, 255, 0, "\x06\x33\x06\x4a\0" },
+  { 0xfcfd, 255, 0, "\x06\x34\x06\x49\0" },
+  { 0xfcfe, 255, 0, "\x06\x34\x06\x4a\0" },
+  { 0xfcff, 255, 0, "\x06\x2d\x06\x49\0" },
+  { 0xfd00, 255, 0, "\x06\x2d\x06\x4a\0" },
+  { 0xfd01, 255, 0, "\x06\x2c\x06\x49\0" },
+  { 0xfd02, 255, 0, "\x06\x2c\x06\x4a\0" },
+  { 0xfd03, 255, 0, "\x06\x2e\x06\x49\0" },
+  { 0xfd04, 255, 0, "\x06\x2e\x06\x4a\0" },
+  { 0xfd05, 255, 0, "\x06\x35\x06\x49\0" },
+  { 0xfd06, 255, 0, "\x06\x35\x06\x4a\0" },
+  { 0xfd07, 255, 0, "\x06\x36\x06\x49\0" },
+  { 0xfd08, 255, 0, "\x06\x36\x06\x4a\0" },
+  { 0xfd09, 255, 0, "\x06\x34\x06\x2c\0" },
+  { 0xfd0a, 255, 0, "\x06\x34\x06\x2d\0" },
+  { 0xfd0b, 255, 0, "\x06\x34\x06\x2e\0" },
+  { 0xfd0c, 255, 0, "\x06\x34\x06\x45\0" },
+  { 0xfd0d, 255, 0, "\x06\x34\x06\x31\0" },
+  { 0xfd0e, 255, 0, "\x06\x33\x06\x31\0" },
+  { 0xfd0f, 255, 0, "\x06\x35\x06\x31\0" },
+  { 0xfd10, 255, 0, "\x06\x36\x06\x31\0" },
+  { 0xfd11, 255, 0, "\x06\x37\x06\x49\0" },
+  { 0xfd12, 255, 0, "\x06\x37\x06\x4a\0" },
+  { 0xfd13, 255, 0, "\x06\x39\x06\x49\0" },
+  { 0xfd14, 255, 0, "\x06\x39\x06\x4a\0" },
+  { 0xfd15, 255, 0, "\x06\x3a\x06\x49\0" },
+  { 0xfd16, 255, 0, "\x06\x3a\x06\x4a\0" },
+  { 0xfd17, 255, 0, "\x06\x33\x06\x49\0" },
+  { 0xfd18, 255, 0, "\x06\x33\x06\x4a\0" },
+  { 0xfd19, 255, 0, "\x06\x34\x06\x49\0" },
+  { 0xfd1a, 255, 0, "\x06\x34\x06\x4a\0" },
+  { 0xfd1b, 255, 0, "\x06\x2d\x06\x49\0" },
+  { 0xfd1c, 255, 0, "\x06\x2d\x06\x4a\0" },
+  { 0xfd1d, 255, 0, "\x06\x2c\x06\x49\0" },
+  { 0xfd1e, 255, 0, "\x06\x2c\x06\x4a\0" },
+  { 0xfd1f, 255, 0, "\x06\x2e\x06\x49\0" },
+  { 0xfd20, 255, 0, "\x06\x2e\x06\x4a\0" },
+  { 0xfd21, 255, 0, "\x06\x35\x06\x49\0" },
+  { 0xfd22, 255, 0, "\x06\x35\x06\x4a\0" },
+  { 0xfd23, 255, 0, "\x06\x36\x06\x49\0" },
+  { 0xfd24, 255, 0, "\x06\x36\x06\x4a\0" },
+  { 0xfd25, 255, 0, "\x06\x34\x06\x2c\0" },
+  { 0xfd26, 255, 0, "\x06\x34\x06\x2d\0" },
+  { 0xfd27, 255, 0, "\x06\x34\x06\x2e\0" },
+  { 0xfd28, 255, 0, "\x06\x34\x06\x45\0" },
+  { 0xfd29, 255, 0, "\x06\x34\x06\x31\0" },
+  { 0xfd2a, 255, 0, "\x06\x33\x06\x31\0" },
+  { 0xfd2b, 255, 0, "\x06\x35\x06\x31\0" },
+  { 0xfd2c, 255, 0, "\x06\x36\x06\x31\0" },
+  { 0xfd2d, 255, 0, "\x06\x34\x06\x2c\0" },
+  { 0xfd2e, 255, 0, "\x06\x34\x06\x2d\0" },
+  { 0xfd2f, 255, 0, "\x06\x34\x06\x2e\0" },
+  { 0xfd30, 255, 0, "\x06\x34\x06\x45\0" },
+  { 0xfd31, 255, 0, "\x06\x33\x06\x47\0" },
+  { 0xfd32, 255, 0, "\x06\x34\x06\x47\0" },
+  { 0xfd33, 255, 0, "\x06\x37\x06\x45\0" },
+  { 0xfd34, 255, 0, "\x06\x33\x06\x2c\0" },
+  { 0xfd35, 255, 0, "\x06\x33\x06\x2d\0" },
+  { 0xfd36, 255, 0, "\x06\x33\x06\x2e\0" },
+  { 0xfd37, 255, 0, "\x06\x34\x06\x2c\0" },
+  { 0xfd38, 255, 0, "\x06\x34\x06\x2d\0" },
+  { 0xfd39, 255, 0, "\x06\x34\x06\x2e\0" },
+  { 0xfd3a, 255, 0, "\x06\x37\x06\x45\0" },
+  { 0xfd3b, 255, 0, "\x06\x38\x06\x45\0" },
+  { 0xfd3c, 255, 0, "\x06\x27\x06\x4b\0" },
+  { 0xfd3d, 255, 0, "\x06\x27\x06\x4b\0" },
+  { 0xfd50, 255, 0, "\x06\x2a\x06\x2c\x06\x45\0" },
+  { 0xfd51, 255, 0, "\x06\x2a\x06\x2d\x06\x2c\0" },
+  { 0xfd52, 255, 0, "\x06\x2a\x06\x2d\x06\x2c\0" },
+  { 0xfd53, 255, 0, "\x06\x2a\x06\x2d\x06\x45\0" },
+  { 0xfd54, 255, 0, "\x06\x2a\x06\x2e\x06\x45\0" },
+  { 0xfd55, 255, 0, "\x06\x2a\x06\x45\x06\x2c\0" },
+  { 0xfd56, 255, 0, "\x06\x2a\x06\x45\x06\x2d\0" },
+  { 0xfd57, 255, 0, "\x06\x2a\x06\x45\x06\x2e\0" },
+  { 0xfd58, 255, 0, "\x06\x2c\x06\x45\x06\x2d\0" },
+  { 0xfd59, 255, 0, "\x06\x2c\x06\x45\x06\x2d\0" },
+  { 0xfd5a, 255, 0, "\x06\x2d\x06\x45\x06\x4a\0" },
+  { 0xfd5b, 255, 0, "\x06\x2d\x06\x45\x06\x49\0" },
+  { 0xfd5c, 255, 0, "\x06\x33\x06\x2d\x06\x2c\0" },
+  { 0xfd5d, 255, 0, "\x06\x33\x06\x2c\x06\x2d\0" },
+  { 0xfd5e, 255, 0, "\x06\x33\x06\x2c\x06\x49\0" },
+  { 0xfd5f, 255, 0, "\x06\x33\x06\x45\x06\x2d\0" },
+  { 0xfd60, 255, 0, "\x06\x33\x06\x45\x06\x2d\0" },
+  { 0xfd61, 255, 0, "\x06\x33\x06\x45\x06\x2c\0" },
+  { 0xfd62, 255, 0, "\x06\x33\x06\x45\x06\x45\0" },
+  { 0xfd63, 255, 0, "\x06\x33\x06\x45\x06\x45\0" },
+  { 0xfd64, 255, 0, "\x06\x35\x06\x2d\x06\x2d\0" },
+  { 0xfd65, 255, 0, "\x06\x35\x06\x2d\x06\x2d\0" },
+  { 0xfd66, 255, 0, "\x06\x35\x06\x45\x06\x45\0" },
+  { 0xfd67, 255, 0, "\x06\x34\x06\x2d\x06\x45\0" },
+  { 0xfd68, 255, 0, "\x06\x34\x06\x2d\x06\x45\0" },
+  { 0xfd69, 255, 0, "\x06\x34\x06\x2c\x06\x4a\0" },
+  { 0xfd6a, 255, 0, "\x06\x34\x06\x45\x06\x2e\0" },
+  { 0xfd6b, 255, 0, "\x06\x34\x06\x45\x06\x2e\0" },
+  { 0xfd6c, 255, 0, "\x06\x34\x06\x45\x06\x45\0" },
+  { 0xfd6d, 255, 0, "\x06\x34\x06\x45\x06\x45\0" },
+  { 0xfd6e, 255, 0, "\x06\x36\x06\x2d\x06\x49\0" },
+  { 0xfd6f, 255, 0, "\x06\x36\x06\x2e\x06\x45\0" },
+  { 0xfd70, 255, 0, "\x06\x36\x06\x2e\x06\x45\0" },
+  { 0xfd71, 255, 0, "\x06\x37\x06\x45\x06\x2d\0" },
+  { 0xfd72, 255, 0, "\x06\x37\x06\x45\x06\x2d\0" },
+  { 0xfd73, 255, 0, "\x06\x37\x06\x45\x06\x45\0" },
+  { 0xfd74, 255, 0, "\x06\x37\x06\x45\x06\x4a\0" },
+  { 0xfd75, 255, 0, "\x06\x39\x06\x2c\x06\x45\0" },
+  { 0xfd76, 255, 0, "\x06\x39\x06\x45\x06\x45\0" },
+  { 0xfd77, 255, 0, "\x06\x39\x06\x45\x06\x45\0" },
+  { 0xfd78, 255, 0, "\x06\x39\x06\x45\x06\x49\0" },
+  { 0xfd79, 255, 0, "\x06\x3a\x06\x45\x06\x45\0" },
+  { 0xfd7a, 255, 0, "\x06\x3a\x06\x45\x06\x4a\0" },
+  { 0xfd7b, 255, 0, "\x06\x3a\x06\x45\x06\x49\0" },
+  { 0xfd7c, 255, 0, "\x06\x41\x06\x2e\x06\x45\0" },
+  { 0xfd7d, 255, 0, "\x06\x41\x06\x2e\x06\x45\0" },
+  { 0xfd7e, 255, 0, "\x06\x42\x06\x45\x06\x2d\0" },
+  { 0xfd7f, 255, 0, "\x06\x42\x06\x45\x06\x45\0" },
+  { 0xfd80, 255, 0, "\x06\x44\x06\x2d\x06\x45\0" },
+  { 0xfd81, 255, 0, "\x06\x44\x06\x2d\x06\x4a\0" },
+  { 0xfd82, 255, 0, "\x06\x44\x06\x2d\x06\x49\0" },
+  { 0xfd83, 255, 0, "\x06\x44\x06\x2c\x06\x2c\0" },
+  { 0xfd84, 255, 0, "\x06\x44\x06\x2c\x06\x2c\0" },
+  { 0xfd85, 255, 0, "\x06\x44\x06\x2e\x06\x45\0" },
+  { 0xfd86, 255, 0, "\x06\x44\x06\x2e\x06\x45\0" },
+  { 0xfd87, 255, 0, "\x06\x44\x06\x45\x06\x2d\0" },
+  { 0xfd88, 255, 0, "\x06\x44\x06\x45\x06\x2d\0" },
+  { 0xfd89, 255, 0, "\x06\x45\x06\x2d\x06\x2c\0" },
+  { 0xfd8a, 255, 0, "\x06\x45\x06\x2d\x06\x45\0" },
+  { 0xfd8b, 255, 0, "\x06\x45\x06\x2d\x06\x4a\0" },
+  { 0xfd8c, 255, 0, "\x06\x45\x06\x2c\x06\x2d\0" },
+  { 0xfd8d, 255, 0, "\x06\x45\x06\x2c\x06\x45\0" },
+  { 0xfd8e, 255, 0, "\x06\x45\x06\x2e\x06\x2c\0" },
+  { 0xfd8f, 255, 0, "\x06\x45\x06\x2e\x06\x45\0" },
+  { 0xfd92, 255, 0, "\x06\x45\x06\x2c\x06\x2e\0" },
+  { 0xfd93, 255, 0, "\x06\x47\x06\x45\x06\x2c\0" },
+  { 0xfd94, 255, 0, "\x06\x47\x06\x45\x06\x45\0" },
+  { 0xfd95, 255, 0, "\x06\x46\x06\x2d\x06\x45\0" },
+  { 0xfd96, 255, 0, "\x06\x46\x06\x2d\x06\x49\0" },
+  { 0xfd97, 255, 0, "\x06\x46\x06\x2c\x06\x45\0" },
+  { 0xfd98, 255, 0, "\x06\x46\x06\x2c\x06\x45\0" },
+  { 0xfd99, 255, 0, "\x06\x46\x06\x2c\x06\x49\0" },
+  { 0xfd9a, 255, 0, "\x06\x46\x06\x45\x06\x4a\0" },
+  { 0xfd9b, 255, 0, "\x06\x46\x06\x45\x06\x49\0" },
+  { 0xfd9c, 255, 0, "\x06\x4a\x06\x45\x06\x45\0" },
+  { 0xfd9d, 255, 0, "\x06\x4a\x06\x45\x06\x45\0" },
+  { 0xfd9e, 255, 0, "\x06\x28\x06\x2e\x06\x4a\0" },
+  { 0xfd9f, 255, 0, "\x06\x2a\x06\x2c\x06\x4a\0" },
+  { 0xfda0, 255, 0, "\x06\x2a\x06\x2c\x06\x49\0" },
+  { 0xfda1, 255, 0, "\x06\x2a\x06\x2e\x06\x4a\0" },
+  { 0xfda2, 255, 0, "\x06\x2a\x06\x2e\x06\x49\0" },
+  { 0xfda3, 255, 0, "\x06\x2a\x06\x45\x06\x4a\0" },
+  { 0xfda4, 255, 0, "\x06\x2a\x06\x45\x06\x49\0" },
+  { 0xfda5, 255, 0, "\x06\x2c\x06\x45\x06\x4a\0" },
+  { 0xfda6, 255, 0, "\x06\x2c\x06\x2d\x06\x49\0" },
+  { 0xfda7, 255, 0, "\x06\x2c\x06\x45\x06\x49\0" },
+  { 0xfda8, 255, 0, "\x06\x33\x06\x2e\x06\x49\0" },
+  { 0xfda9, 255, 0, "\x06\x35\x06\x2d\x06\x4a\0" },
+  { 0xfdaa, 255, 0, "\x06\x34\x06\x2d\x06\x4a\0" },
+  { 0xfdab, 255, 0, "\x06\x36\x06\x2d\x06\x4a\0" },
+  { 0xfdac, 255, 0, "\x06\x44\x06\x2c\x06\x4a\0" },
+  { 0xfdad, 255, 0, "\x06\x44\x06\x45\x06\x4a\0" },
+  { 0xfdae, 255, 0, "\x06\x4a\x06\x2d\x06\x4a\0" },
+  { 0xfdaf, 255, 0, "\x06\x4a\x06\x2c\x06\x4a\0" },
+  { 0xfdb0, 255, 0, "\x06\x4a\x06\x45\x06\x4a\0" },
+  { 0xfdb1, 255, 0, "\x06\x45\x06\x45\x06\x4a\0" },
+  { 0xfdb2, 255, 0, "\x06\x42\x06\x45\x06\x4a\0" },
+  { 0xfdb3, 255, 0, "\x06\x46\x06\x2d\x06\x4a\0" },
+  { 0xfdb4, 255, 0, "\x06\x42\x06\x45\x06\x2d\0" },
+  { 0xfdb5, 255, 0, "\x06\x44\x06\x2d\x06\x45\0" },
+  { 0xfdb6, 255, 0, "\x06\x39\x06\x45\x06\x4a\0" },
+  { 0xfdb7, 255, 0, "\x06\x43\x06\x45\x06\x4a\0" },
+  { 0xfdb8, 255, 0, "\x06\x46\x06\x2c\x06\x2d\0" },
+  { 0xfdb9, 255, 0, "\x06\x45\x06\x2e\x06\x4a\0" },
+  { 0xfdba, 255, 0, "\x06\x44\x06\x2c\x06\x45\0" },
+  { 0xfdbb, 255, 0, "\x06\x43\x06\x45\x06\x45\0" },
+  { 0xfdbc, 255, 0, "\x06\x44\x06\x2c\x06\x45\0" },
+  { 0xfdbd, 255, 0, "\x06\x46\x06\x2c\x06\x2d\0" },
+  { 0xfdbe, 255, 0, "\x06\x2c\x06\x2d\x06\x4a\0" },
+  { 0xfdbf, 255, 0, "\x06\x2d\x06\x2c\x06\x4a\0" },
+  { 0xfdc0, 255, 0, "\x06\x45\x06\x2c\x06\x4a\0" },
+  { 0xfdc1, 255, 0, "\x06\x41\x06\x45\x06\x4a\0" },
+  { 0xfdc2, 255, 0, "\x06\x28\x06\x2d\x06\x4a\0" },
+  { 0xfdc3, 255, 0, "\x06\x43\x06\x45\x06\x45\0" },
+  { 0xfdc4, 255, 0, "\x06\x39\x06\x2c\x06\x45\0" },
+  { 0xfdc5, 255, 0, "\x06\x35\x06\x45\x06\x45\0" },
+  { 0xfdc6, 255, 0, "\x06\x33\x06\x2e\x06\x4a\0" },
+  { 0xfdc7, 255, 0, "\x06\x46\x06\x2c\x06\x4a\0" },
+  { 0xfdf0, 255, 0, "\x06\x35\x06\x44\x06\xd2\0" },
+  { 0xfdf1, 255, 0, "\x06\x42\x06\x44\x06\xd2\0" },
+  { 0xfdf2, 255, 0, "\x06\x27\x06\x44\x06\x44\x06\x47\0" },
+  { 0xfdf3, 255, 0, "\x06\x27\x06\x43\x06\x28\x06\x31\0" },
+  { 0xfdf4, 255, 0, "\x06\x45\x06\x2d\x06\x45\x06\x2f\0" },
+  { 0xfdf5, 255, 0, "\x06\x35\x06\x44\x06\x39\x06\x45\0" },
+  { 0xfdf6, 255, 0, "\x06\x31\x06\x33\x06\x48\x06\x44\0" },
+  { 0xfdf7, 255, 0, "\x06\x39\x06\x44\x06\x4a\x06\x47\0" },
+  { 0xfdf8, 255, 0, "\x06\x48\x06\x33\x06\x44\x06\x45\0" },
+  { 0xfdf9, 255, 0, "\x06\x35\x06\x44\x06\x49\0" },
+  { 0xfdfa, 255, 0, "\x06\x35\x06\x44\x06\x49\x00\x20\x06\x27\x06\x44\x06\x44\x06\x47\x00\x20\x06\x39\x06\x44\x06\x4a\x06\x47\x00\x20\x06\x48\x06\x33\x06\x44\x06\x45\0" },
+  { 0xfdfb, 255, 0, "\x06\x2c\x06\x44\x00\x20\x06\x2c\x06\x44\x06\x27\x06\x44\x06\x47\0" },
+  { 0xfe30, 255, 0, "\x00\x2e\x00\x2e\0" },
+  { 0xfe31, 255, 0, "\x20\x14\0" },
+  { 0xfe32, 255, 0, "\x20\x13\0" },
+  { 0xfe33, 255, 0, "\x00\x5f\0" },
+  { 0xfe34, 255, 0, "\x00\x5f\0" },
+  { 0xfe35, 255, 0, "\x00\x28\0" },
+  { 0xfe36, 255, 0, "\x00\x29\0" },
+  { 0xfe37, 255, 0, "\x00\x7b\0" },
+  { 0xfe38, 255, 0, "\x00\x7d\0" },
+  { 0xfe39, 255, 0, "\x30\x14\0" },
+  { 0xfe3a, 255, 0, "\x30\x15\0" },
+  { 0xfe3b, 255, 0, "\x30\x10\0" },
+  { 0xfe3c, 255, 0, "\x30\x11\0" },
+  { 0xfe3d, 255, 0, "\x30\x0a\0" },
+  { 0xfe3e, 255, 0, "\x30\x0b\0" },
+  { 0xfe3f, 255, 0, "\x30\x08\0" },
+  { 0xfe40, 255, 0, "\x30\x09\0" },
+  { 0xfe41, 255, 0, "\x30\x0c\0" },
+  { 0xfe42, 255, 0, "\x30\x0d\0" },
+  { 0xfe43, 255, 0, "\x30\x0e\0" },
+  { 0xfe44, 255, 0, "\x30\x0f\0" },
+  { 0xfe49, 255, 0, "\x00\x20\x03\x05\0" },
+  { 0xfe4a, 255, 0, "\x00\x20\x03\x05\0" },
+  { 0xfe4b, 255, 0, "\x00\x20\x03\x05\0" },
+  { 0xfe4c, 255, 0, "\x00\x20\x03\x05\0" },
+  { 0xfe4d, 255, 0, "\x00\x5f\0" },
+  { 0xfe4e, 255, 0, "\x00\x5f\0" },
+  { 0xfe4f, 255, 0, "\x00\x5f\0" },
+  { 0xfe50, 255, 0, "\x00\x2c\0" },
+  { 0xfe51, 255, 0, "\x30\x01\0" },
+  { 0xfe52, 255, 0, "\x00\x2e\0" },
+  { 0xfe54, 255, 0, "\x00\x3b\0" },
+  { 0xfe55, 255, 0, "\x00\x3a\0" },
+  { 0xfe56, 255, 0, "\x00\x3f\0" },
+  { 0xfe57, 255, 0, "\x00\x21\0" },
+  { 0xfe58, 255, 0, "\x20\x14\0" },
+  { 0xfe59, 255, 0, "\x00\x28\0" },
+  { 0xfe5a, 255, 0, "\x00\x29\0" },
+  { 0xfe5b, 255, 0, "\x00\x7b\0" },
+  { 0xfe5c, 255, 0, "\x00\x7d\0" },
+  { 0xfe5d, 255, 0, "\x30\x14\0" },
+  { 0xfe5e, 255, 0, "\x30\x15\0" },
+  { 0xfe5f, 255, 0, "\x00\x23\0" },
+  { 0xfe60, 255, 0, "\x00\x26\0" },
+  { 0xfe61, 255, 0, "\x00\x2a\0" },
+  { 0xfe62, 255, 0, "\x00\x2b\0" },
+  { 0xfe63, 255, 0, "\x00\x2d\0" },
+  { 0xfe64, 255, 0, "\x00\x3c\0" },
+  { 0xfe65, 255, 0, "\x00\x3e\0" },
+  { 0xfe66, 255, 0, "\x00\x3d\0" },
+  { 0xfe68, 255, 0, "\x00\x5c\0" },
+  { 0xfe69, 255, 0, "\x00\x24\0" },
+  { 0xfe6a, 255, 0, "\x00\x25\0" },
+  { 0xfe6b, 255, 0, "\x00\x40\0" },
+  { 0xfe70, 255, 0, "\x00\x20\x06\x4b\0" },
+  { 0xfe71, 255, 0, "\x06\x40\x06\x4b\0" },
+  { 0xfe72, 255, 0, "\x00\x20\x06\x4c\0" },
+  { 0xfe74, 255, 0, "\x00\x20\x06\x4d\0" },
+  { 0xfe76, 255, 0, "\x00\x20\x06\x4e\0" },
+  { 0xfe77, 255, 0, "\x06\x40\x06\x4e\0" },
+  { 0xfe78, 255, 0, "\x00\x20\x06\x4f\0" },
+  { 0xfe79, 255, 0, "\x06\x40\x06\x4f\0" },
+  { 0xfe7a, 255, 0, "\x00\x20\x06\x50\0" },
+  { 0xfe7b, 255, 0, "\x06\x40\x06\x50\0" },
+  { 0xfe7c, 255, 0, "\x00\x20\x06\x51\0" },
+  { 0xfe7d, 255, 0, "\x06\x40\x06\x51\0" },
+  { 0xfe7e, 255, 0, "\x00\x20\x06\x52\0" },
+  { 0xfe7f, 255, 0, "\x06\x40\x06\x52\0" },
+  { 0xfe80, 255, 0, "\x06\x21\0" },
+  { 0xfe81, 255, 0, "\x06\x27\x06\x53\0" },
+  { 0xfe82, 255, 0, "\x06\x27\x06\x53\0" },
+  { 0xfe83, 255, 0, "\x06\x27\x06\x54\0" },
+  { 0xfe84, 255, 0, "\x06\x27\x06\x54\0" },
+  { 0xfe85, 255, 0, "\x06\x48\x06\x54\0" },
+  { 0xfe86, 255, 0, "\x06\x48\x06\x54\0" },
+  { 0xfe87, 255, 0, "\x06\x27\x06\x55\0" },
+  { 0xfe88, 255, 0, "\x06\x27\x06\x55\0" },
+  { 0xfe89, 255, 0, "\x06\x4a\x06\x54\0" },
+  { 0xfe8a, 255, 0, "\x06\x4a\x06\x54\0" },
+  { 0xfe8b, 255, 0, "\x06\x4a\x06\x54\0" },
+  { 0xfe8c, 255, 0, "\x06\x4a\x06\x54\0" },
+  { 0xfe8d, 255, 0, "\x06\x27\0" },
+  { 0xfe8e, 255, 0, "\x06\x27\0" },
+  { 0xfe8f, 255, 0, "\x06\x28\0" },
+  { 0xfe90, 255, 0, "\x06\x28\0" },
+  { 0xfe91, 255, 0, "\x06\x28\0" },
+  { 0xfe92, 255, 0, "\x06\x28\0" },
+  { 0xfe93, 255, 0, "\x06\x29\0" },
+  { 0xfe94, 255, 0, "\x06\x29\0" },
+  { 0xfe95, 255, 0, "\x06\x2a\0" },
+  { 0xfe96, 255, 0, "\x06\x2a\0" },
+  { 0xfe97, 255, 0, "\x06\x2a\0" },
+  { 0xfe98, 255, 0, "\x06\x2a\0" },
+  { 0xfe99, 255, 0, "\x06\x2b\0" },
+  { 0xfe9a, 255, 0, "\x06\x2b\0" },
+  { 0xfe9b, 255, 0, "\x06\x2b\0" },
+  { 0xfe9c, 255, 0, "\x06\x2b\0" },
+  { 0xfe9d, 255, 0, "\x06\x2c\0" },
+  { 0xfe9e, 255, 0, "\x06\x2c\0" },
+  { 0xfe9f, 255, 0, "\x06\x2c\0" },
+  { 0xfea0, 255, 0, "\x06\x2c\0" },
+  { 0xfea1, 255, 0, "\x06\x2d\0" },
+  { 0xfea2, 255, 0, "\x06\x2d\0" },
+  { 0xfea3, 255, 0, "\x06\x2d\0" },
+  { 0xfea4, 255, 0, "\x06\x2d\0" },
+  { 0xfea5, 255, 0, "\x06\x2e\0" },
+  { 0xfea6, 255, 0, "\x06\x2e\0" },
+  { 0xfea7, 255, 0, "\x06\x2e\0" },
+  { 0xfea8, 255, 0, "\x06\x2e\0" },
+  { 0xfea9, 255, 0, "\x06\x2f\0" },
+  { 0xfeaa, 255, 0, "\x06\x2f\0" },
+  { 0xfeab, 255, 0, "\x06\x30\0" },
+  { 0xfeac, 255, 0, "\x06\x30\0" },
+  { 0xfead, 255, 0, "\x06\x31\0" },
+  { 0xfeae, 255, 0, "\x06\x31\0" },
+  { 0xfeaf, 255, 0, "\x06\x32\0" },
+  { 0xfeb0, 255, 0, "\x06\x32\0" },
+  { 0xfeb1, 255, 0, "\x06\x33\0" },
+  { 0xfeb2, 255, 0, "\x06\x33\0" },
+  { 0xfeb3, 255, 0, "\x06\x33\0" },
+  { 0xfeb4, 255, 0, "\x06\x33\0" },
+  { 0xfeb5, 255, 0, "\x06\x34\0" },
+  { 0xfeb6, 255, 0, "\x06\x34\0" },
+  { 0xfeb7, 255, 0, "\x06\x34\0" },
+  { 0xfeb8, 255, 0, "\x06\x34\0" },
+  { 0xfeb9, 255, 0, "\x06\x35\0" },
+  { 0xfeba, 255, 0, "\x06\x35\0" },
+  { 0xfebb, 255, 0, "\x06\x35\0" },
+  { 0xfebc, 255, 0, "\x06\x35\0" },
+  { 0xfebd, 255, 0, "\x06\x36\0" },
+  { 0xfebe, 255, 0, "\x06\x36\0" },
+  { 0xfebf, 255, 0, "\x06\x36\0" },
+  { 0xfec0, 255, 0, "\x06\x36\0" },
+  { 0xfec1, 255, 0, "\x06\x37\0" },
+  { 0xfec2, 255, 0, "\x06\x37\0" },
+  { 0xfec3, 255, 0, "\x06\x37\0" },
+  { 0xfec4, 255, 0, "\x06\x37\0" },
+  { 0xfec5, 255, 0, "\x06\x38\0" },
+  { 0xfec6, 255, 0, "\x06\x38\0" },
+  { 0xfec7, 255, 0, "\x06\x38\0" },
+  { 0xfec8, 255, 0, "\x06\x38\0" },
+  { 0xfec9, 255, 0, "\x06\x39\0" },
+  { 0xfeca, 255, 0, "\x06\x39\0" },
+  { 0xfecb, 255, 0, "\x06\x39\0" },
+  { 0xfecc, 255, 0, "\x06\x39\0" },
+  { 0xfecd, 255, 0, "\x06\x3a\0" },
+  { 0xfece, 255, 0, "\x06\x3a\0" },
+  { 0xfecf, 255, 0, "\x06\x3a\0" },
+  { 0xfed0, 255, 0, "\x06\x3a\0" },
+  { 0xfed1, 255, 0, "\x06\x41\0" },
+  { 0xfed2, 255, 0, "\x06\x41\0" },
+  { 0xfed3, 255, 0, "\x06\x41\0" },
+  { 0xfed4, 255, 0, "\x06\x41\0" },
+  { 0xfed5, 255, 0, "\x06\x42\0" },
+  { 0xfed6, 255, 0, "\x06\x42\0" },
+  { 0xfed7, 255, 0, "\x06\x42\0" },
+  { 0xfed8, 255, 0, "\x06\x42\0" },
+  { 0xfed9, 255, 0, "\x06\x43\0" },
+  { 0xfeda, 255, 0, "\x06\x43\0" },
+  { 0xfedb, 255, 0, "\x06\x43\0" },
+  { 0xfedc, 255, 0, "\x06\x43\0" },
+  { 0xfedd, 255, 0, "\x06\x44\0" },
+  { 0xfede, 255, 0, "\x06\x44\0" },
+  { 0xfedf, 255, 0, "\x06\x44\0" },
+  { 0xfee0, 255, 0, "\x06\x44\0" },
+  { 0xfee1, 255, 0, "\x06\x45\0" },
+  { 0xfee2, 255, 0, "\x06\x45\0" },
+  { 0xfee3, 255, 0, "\x06\x45\0" },
+  { 0xfee4, 255, 0, "\x06\x45\0" },
+  { 0xfee5, 255, 0, "\x06\x46\0" },
+  { 0xfee6, 255, 0, "\x06\x46\0" },
+  { 0xfee7, 255, 0, "\x06\x46\0" },
+  { 0xfee8, 255, 0, "\x06\x46\0" },
+  { 0xfee9, 255, 0, "\x06\x47\0" },
+  { 0xfeea, 255, 0, "\x06\x47\0" },
+  { 0xfeeb, 255, 0, "\x06\x47\0" },
+  { 0xfeec, 255, 0, "\x06\x47\0" },
+  { 0xfeed, 255, 0, "\x06\x48\0" },
+  { 0xfeee, 255, 0, "\x06\x48\0" },
+  { 0xfeef, 255, 0, "\x06\x49\0" },
+  { 0xfef0, 255, 0, "\x06\x49\0" },
+  { 0xfef1, 255, 0, "\x06\x4a\0" },
+  { 0xfef2, 255, 0, "\x06\x4a\0" },
+  { 0xfef3, 255, 0, "\x06\x4a\0" },
+  { 0xfef4, 255, 0, "\x06\x4a\0" },
+  { 0xfef5, 255, 0, "\x06\x44\x06\x27\x06\x53\0" },
+  { 0xfef6, 255, 0, "\x06\x44\x06\x27\x06\x53\0" },
+  { 0xfef7, 255, 0, "\x06\x44\x06\x27\x06\x54\0" },
+  { 0xfef8, 255, 0, "\x06\x44\x06\x27\x06\x54\0" },
+  { 0xfef9, 255, 0, "\x06\x44\x06\x27\x06\x55\0" },
+  { 0xfefa, 255, 0, "\x06\x44\x06\x27\x06\x55\0" },
+  { 0xfefb, 255, 0, "\x06\x44\x06\x27\0" },
+  { 0xfefc, 255, 0, "\x06\x44\x06\x27\0" },
+  { 0xff01, 255, 0, "\x00\x21\0" },
+  { 0xff02, 255, 0, "\x00\x22\0" },
+  { 0xff03, 255, 0, "\x00\x23\0" },
+  { 0xff04, 255, 0, "\x00\x24\0" },
+  { 0xff05, 255, 0, "\x00\x25\0" },
+  { 0xff06, 255, 0, "\x00\x26\0" },
+  { 0xff07, 255, 0, "\x00\x27\0" },
+  { 0xff08, 255, 0, "\x00\x28\0" },
+  { 0xff09, 255, 0, "\x00\x29\0" },
+  { 0xff0a, 255, 0, "\x00\x2a\0" },
+  { 0xff0b, 255, 0, "\x00\x2b\0" },
+  { 0xff0c, 255, 0, "\x00\x2c\0" },
+  { 0xff0d, 255, 0, "\x00\x2d\0" },
+  { 0xff0e, 255, 0, "\x00\x2e\0" },
+  { 0xff0f, 255, 0, "\x00\x2f\0" },
+  { 0xff10, 255, 0, "\x00\x30\0" },
+  { 0xff11, 255, 0, "\x00\x31\0" },
+  { 0xff12, 255, 0, "\x00\x32\0" },
+  { 0xff13, 255, 0, "\x00\x33\0" },
+  { 0xff14, 255, 0, "\x00\x34\0" },
+  { 0xff15, 255, 0, "\x00\x35\0" },
+  { 0xff16, 255, 0, "\x00\x36\0" },
+  { 0xff17, 255, 0, "\x00\x37\0" },
+  { 0xff18, 255, 0, "\x00\x38\0" },
+  { 0xff19, 255, 0, "\x00\x39\0" },
+  { 0xff1a, 255, 0, "\x00\x3a\0" },
+  { 0xff1b, 255, 0, "\x00\x3b\0" },
+  { 0xff1c, 255, 0, "\x00\x3c\0" },
+  { 0xff1d, 255, 0, "\x00\x3d\0" },
+  { 0xff1e, 255, 0, "\x00\x3e\0" },
+  { 0xff1f, 255, 0, "\x00\x3f\0" },
+  { 0xff20, 255, 0, "\x00\x40\0" },
+  { 0xff21, 255, 0, "\x00\x41\0" },
+  { 0xff22, 255, 0, "\x00\x42\0" },
+  { 0xff23, 255, 0, "\x00\x43\0" },
+  { 0xff24, 255, 0, "\x00\x44\0" },
+  { 0xff25, 255, 0, "\x00\x45\0" },
+  { 0xff26, 255, 0, "\x00\x46\0" },
+  { 0xff27, 255, 0, "\x00\x47\0" },
+  { 0xff28, 255, 0, "\x00\x48\0" },
+  { 0xff29, 255, 0, "\x00\x49\0" },
+  { 0xff2a, 255, 0, "\x00\x4a\0" },
+  { 0xff2b, 255, 0, "\x00\x4b\0" },
+  { 0xff2c, 255, 0, "\x00\x4c\0" },
+  { 0xff2d, 255, 0, "\x00\x4d\0" },
+  { 0xff2e, 255, 0, "\x00\x4e\0" },
+  { 0xff2f, 255, 0, "\x00\x4f\0" },
+  { 0xff30, 255, 0, "\x00\x50\0" },
+  { 0xff31, 255, 0, "\x00\x51\0" },
+  { 0xff32, 255, 0, "\x00\x52\0" },
+  { 0xff33, 255, 0, "\x00\x53\0" },
+  { 0xff34, 255, 0, "\x00\x54\0" },
+  { 0xff35, 255, 0, "\x00\x55\0" },
+  { 0xff36, 255, 0, "\x00\x56\0" },
+  { 0xff37, 255, 0, "\x00\x57\0" },
+  { 0xff38, 255, 0, "\x00\x58\0" },
+  { 0xff39, 255, 0, "\x00\x59\0" },
+  { 0xff3a, 255, 0, "\x00\x5a\0" },
+  { 0xff3b, 255, 0, "\x00\x5b\0" },
+  { 0xff3c, 255, 0, "\x00\x5c\0" },
+  { 0xff3d, 255, 0, "\x00\x5d\0" },
+  { 0xff3e, 255, 0, "\x00\x5e\0" },
+  { 0xff3f, 255, 0, "\x00\x5f\0" },
+  { 0xff40, 255, 0, "\x00\x60\0" },
+  { 0xff41, 255, 0, "\x00\x61\0" },
+  { 0xff42, 255, 0, "\x00\x62\0" },
+  { 0xff43, 255, 0, "\x00\x63\0" },
+  { 0xff44, 255, 0, "\x00\x64\0" },
+  { 0xff45, 255, 0, "\x00\x65\0" },
+  { 0xff46, 255, 0, "\x00\x66\0" },
+  { 0xff47, 255, 0, "\x00\x67\0" },
+  { 0xff48, 255, 0, "\x00\x68\0" },
+  { 0xff49, 255, 0, "\x00\x69\0" },
+  { 0xff4a, 255, 0, "\x00\x6a\0" },
+  { 0xff4b, 255, 0, "\x00\x6b\0" },
+  { 0xff4c, 255, 0, "\x00\x6c\0" },
+  { 0xff4d, 255, 0, "\x00\x6d\0" },
+  { 0xff4e, 255, 0, "\x00\x6e\0" },
+  { 0xff4f, 255, 0, "\x00\x6f\0" },
+  { 0xff50, 255, 0, "\x00\x70\0" },
+  { 0xff51, 255, 0, "\x00\x71\0" },
+  { 0xff52, 255, 0, "\x00\x72\0" },
+  { 0xff53, 255, 0, "\x00\x73\0" },
+  { 0xff54, 255, 0, "\x00\x74\0" },
+  { 0xff55, 255, 0, "\x00\x75\0" },
+  { 0xff56, 255, 0, "\x00\x76\0" },
+  { 0xff57, 255, 0, "\x00\x77\0" },
+  { 0xff58, 255, 0, "\x00\x78\0" },
+  { 0xff59, 255, 0, "\x00\x79\0" },
+  { 0xff5a, 255, 0, "\x00\x7a\0" },
+  { 0xff5b, 255, 0, "\x00\x7b\0" },
+  { 0xff5c, 255, 0, "\x00\x7c\0" },
+  { 0xff5d, 255, 0, "\x00\x7d\0" },
+  { 0xff5e, 255, 0, "\x00\x7e\0" },
+  { 0xff61, 255, 0, "\x30\x02\0" },
+  { 0xff62, 255, 0, "\x30\x0c\0" },
+  { 0xff63, 255, 0, "\x30\x0d\0" },
+  { 0xff64, 255, 0, "\x30\x01\0" },
+  { 0xff65, 255, 0, "\x30\xfb\0" },
+  { 0xff66, 255, 0, "\x30\xf2\0" },
+  { 0xff67, 255, 0, "\x30\xa1\0" },
+  { 0xff68, 255, 0, "\x30\xa3\0" },
+  { 0xff69, 255, 0, "\x30\xa5\0" },
+  { 0xff6a, 255, 0, "\x30\xa7\0" },
+  { 0xff6b, 255, 0, "\x30\xa9\0" },
+  { 0xff6c, 255, 0, "\x30\xe3\0" },
+  { 0xff6d, 255, 0, "\x30\xe5\0" },
+  { 0xff6e, 255, 0, "\x30\xe7\0" },
+  { 0xff6f, 255, 0, "\x30\xc3\0" },
+  { 0xff70, 255, 0, "\x30\xfc\0" },
+  { 0xff71, 255, 0, "\x30\xa2\0" },
+  { 0xff72, 255, 0, "\x30\xa4\0" },
+  { 0xff73, 255, 0, "\x30\xa6\0" },
+  { 0xff74, 255, 0, "\x30\xa8\0" },
+  { 0xff75, 255, 0, "\x30\xaa\0" },
+  { 0xff76, 255, 0, "\x30\xab\0" },
+  { 0xff77, 255, 0, "\x30\xad\0" },
+  { 0xff78, 255, 0, "\x30\xaf\0" },
+  { 0xff79, 255, 0, "\x30\xb1\0" },
+  { 0xff7a, 255, 0, "\x30\xb3\0" },
+  { 0xff7b, 255, 0, "\x30\xb5\0" },
+  { 0xff7c, 255, 0, "\x30\xb7\0" },
+  { 0xff7d, 255, 0, "\x30\xb9\0" },
+  { 0xff7e, 255, 0, "\x30\xbb\0" },
+  { 0xff7f, 255, 0, "\x30\xbd\0" },
+  { 0xff80, 255, 0, "\x30\xbf\0" },
+  { 0xff81, 255, 0, "\x30\xc1\0" },
+  { 0xff82, 255, 0, "\x30\xc4\0" },
+  { 0xff83, 255, 0, "\x30\xc6\0" },
+  { 0xff84, 255, 0, "\x30\xc8\0" },
+  { 0xff85, 255, 0, "\x30\xca\0" },
+  { 0xff86, 255, 0, "\x30\xcb\0" },
+  { 0xff87, 255, 0, "\x30\xcc\0" },
+  { 0xff88, 255, 0, "\x30\xcd\0" },
+  { 0xff89, 255, 0, "\x30\xce\0" },
+  { 0xff8a, 255, 0, "\x30\xcf\0" },
+  { 0xff8b, 255, 0, "\x30\xd2\0" },
+  { 0xff8c, 255, 0, "\x30\xd5\0" },
+  { 0xff8d, 255, 0, "\x30\xd8\0" },
+  { 0xff8e, 255, 0, "\x30\xdb\0" },
+  { 0xff8f, 255, 0, "\x30\xde\0" },
+  { 0xff90, 255, 0, "\x30\xdf\0" },
+  { 0xff91, 255, 0, "\x30\xe0\0" },
+  { 0xff92, 255, 0, "\x30\xe1\0" },
+  { 0xff93, 255, 0, "\x30\xe2\0" },
+  { 0xff94, 255, 0, "\x30\xe4\0" },
+  { 0xff95, 255, 0, "\x30\xe6\0" },
+  { 0xff96, 255, 0, "\x30\xe8\0" },
+  { 0xff97, 255, 0, "\x30\xe9\0" },
+  { 0xff98, 255, 0, "\x30\xea\0" },
+  { 0xff99, 255, 0, "\x30\xeb\0" },
+  { 0xff9a, 255, 0, "\x30\xec\0" },
+  { 0xff9b, 255, 0, "\x30\xed\0" },
+  { 0xff9c, 255, 0, "\x30\xef\0" },
+  { 0xff9d, 255, 0, "\x30\xf3\0" },
+  { 0xff9e, 255, 0, "\x30\x99\0" },
+  { 0xff9f, 255, 0, "\x30\x9a\0" },
+  { 0xffa0, 255, 0, "\x11\x60\0" },
+  { 0xffa1, 255, 0, "\x11\x00\0" },
+  { 0xffa2, 255, 0, "\x11\x01\0" },
+  { 0xffa3, 255, 0, "\x11\xaa\0" },
+  { 0xffa4, 255, 0, "\x11\x02\0" },
+  { 0xffa5, 255, 0, "\x11\xac\0" },
+  { 0xffa6, 255, 0, "\x11\xad\0" },
+  { 0xffa7, 255, 0, "\x11\x03\0" },
+  { 0xffa8, 255, 0, "\x11\x04\0" },
+  { 0xffa9, 255, 0, "\x11\x05\0" },
+  { 0xffaa, 255, 0, "\x11\xb0\0" },
+  { 0xffab, 255, 0, "\x11\xb1\0" },
+  { 0xffac, 255, 0, "\x11\xb2\0" },
+  { 0xffad, 255, 0, "\x11\xb3\0" },
+  { 0xffae, 255, 0, "\x11\xb4\0" },
+  { 0xffaf, 255, 0, "\x11\xb5\0" },
+  { 0xffb0, 255, 0, "\x11\x1a\0" },
+  { 0xffb1, 255, 0, "\x11\x06\0" },
+  { 0xffb2, 255, 0, "\x11\x07\0" },
+  { 0xffb3, 255, 0, "\x11\x08\0" },
+  { 0xffb4, 255, 0, "\x11\x21\0" },
+  { 0xffb5, 255, 0, "\x11\x09\0" },
+  { 0xffb6, 255, 0, "\x11\x0a\0" },
+  { 0xffb7, 255, 0, "\x11\x0b\0" },
+  { 0xffb8, 255, 0, "\x11\x0c\0" },
+  { 0xffb9, 255, 0, "\x11\x0d\0" },
+  { 0xffba, 255, 0, "\x11\x0e\0" },
+  { 0xffbb, 255, 0, "\x11\x0f\0" },
+  { 0xffbc, 255, 0, "\x11\x10\0" },
+  { 0xffbd, 255, 0, "\x11\x11\0" },
+  { 0xffbe, 255, 0, "\x11\x12\0" },
+  { 0xffc2, 255, 0, "\x11\x61\0" },
+  { 0xffc3, 255, 0, "\x11\x62\0" },
+  { 0xffc4, 255, 0, "\x11\x63\0" },
+  { 0xffc5, 255, 0, "\x11\x64\0" },
+  { 0xffc6, 255, 0, "\x11\x65\0" },
+  { 0xffc7, 255, 0, "\x11\x66\0" },
+  { 0xffca, 255, 0, "\x11\x67\0" },
+  { 0xffcb, 255, 0, "\x11\x68\0" },
+  { 0xffcc, 255, 0, "\x11\x69\0" },
+  { 0xffcd, 255, 0, "\x11\x6a\0" },
+  { 0xffce, 255, 0, "\x11\x6b\0" },
+  { 0xffcf, 255, 0, "\x11\x6c\0" },
+  { 0xffd2, 255, 0, "\x11\x6d\0" },
+  { 0xffd3, 255, 0, "\x11\x6e\0" },
+  { 0xffd4, 255, 0, "\x11\x6f\0" },
+  { 0xffd5, 255, 0, "\x11\x70\0" },
+  { 0xffd6, 255, 0, "\x11\x71\0" },
+  { 0xffd7, 255, 0, "\x11\x72\0" },
+  { 0xffda, 255, 0, "\x11\x73\0" },
+  { 0xffdb, 255, 0, "\x11\x74\0" },
+  { 0xffdc, 255, 0, "\x11\x75\0" },
+  { 0xffe0, 255, 0, "\x00\xa2\0" },
+  { 0xffe1, 255, 0, "\x00\xa3\0" },
+  { 0xffe2, 255, 0, "\x00\xac\0" },
+  { 0xffe3, 255, 0, "\x00\x20\x03\x04\0" },
+  { 0xffe4, 255, 0, "\x00\xa6\0" },
+  { 0xffe5, 255, 0, "\x00\xa5\0" },
+  { 0xffe6, 255, 0, "\x20\xa9\0" },
+  { 0xffe8, 255, 0, "\x25\x02\0" },
+  { 0xffe9, 255, 0, "\x21\x90\0" },
+  { 0xffea, 255, 0, "\x21\x91\0" },
+  { 0xffeb, 255, 0, "\x21\x92\0" },
+  { 0xffec, 255, 0, "\x21\x93\0" },
+  { 0xffed, 255, 0, "\x25\xa0\0" },
+  { 0xffee, 255, 0, "\x25\xcb\0" }
 };
 
 #endif /* DECOMP_H */
diff --git a/graf2d/win32gdk/gdk/src/glib/guniprop.c b/graf2d/win32gdk/gdk/src/glib/guniprop.c
new file mode 100644
index 00000000000..fc2fe84d9a9
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/guniprop.c
@@ -0,0 +1,912 @@
+/* guniprop.c - Unicode character properties.
+ *
+ * Copyright (C) 1999 Tom Tromey
+ * Copyright (C) 2000 Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#include "glib.h"
+#include "gunichartables.h"
+
+#include <config.h>
+
+#include <stddef.h>
+#include <string.h>
+#include <locale.h>
+
+#define ATTTABLE(Page, Char) \
+  ((attr_table[Page] == 0) ? 0 : (attr_table[Page][Char]))
+
+/* We cheat a bit and cast type values to (char *).  We detect these
+   using the &0xff trick.  */
+#define TTYPE(Page, Char) \
+  (((GPOINTER_TO_INT(type_table[Page]) & 0xff) == GPOINTER_TO_INT(type_table[Page])) \
+   ? GPOINTER_TO_INT(type_table[Page]) \
+   : (type_table[Page][Char]))
+
+#define TYPE(Char) (((Char) > (G_UNICODE_LAST_CHAR)) ? G_UNICODE_UNASSIGNED : TTYPE ((Char) >> 8, (Char) & 0xff))
+
+#define ISDIGIT(Type) ((Type) == G_UNICODE_DECIMAL_NUMBER	\
+		       || (Type) == G_UNICODE_LETTER_NUMBER	\
+		       || (Type) == G_UNICODE_OTHER_NUMBER)
+
+#define ISALPHA(Type) ((Type) == G_UNICODE_LOWERCASE_LETTER	\
+		       || (Type) == G_UNICODE_UPPERCASE_LETTER	\
+		       || (Type) == G_UNICODE_TITLECASE_LETTER	\
+		       || (Type) == G_UNICODE_MODIFIER_LETTER	\
+		       || (Type) == G_UNICODE_OTHER_LETTER)
+
+#define ISMARK(Type) ((Type) == G_UNICODE_NON_SPACING_MARK ||	\
+		      (Type) == G_UNICODE_COMBINING_MARK ||	\
+		      (Type) == G_UNICODE_ENCLOSING_MARK)
+		      
+
+/**
+ * g_unichar_isalnum:
+ * @c: a Unicode character
+ * 
+ * Determines whether a character is alphanumeric.
+ * Given some UTF-8 text, obtain a character value
+ * with g_utf8_get_char().
+ * 
+ * Return value: %TRUE if @c is an alphanumeric character
+ **/
+gboolean
+g_unichar_isalnum (gunichar c)
+{
+  int t = TYPE (c);
+  return ISDIGIT (t) || ISALPHA (t);
+}
+
+/**
+ * g_unichar_isalpha:
+ * @c: a Unicode character
+ * 
+ * Determines whether a character is alphabetic (i.e. a letter).
+ * Given some UTF-8 text, obtain a character value with
+ * g_utf8_get_char().
+ * 
+ * Return value: %TRUE if @c is an alphabetic character
+ **/
+gboolean
+g_unichar_isalpha (gunichar c)
+{
+  int t = TYPE (c);
+  return ISALPHA (t);
+}
+
+
+/**
+ * g_unichar_iscntrl:
+ * @c: a Unicode character
+ * 
+ * Determines whether a character is a control character.
+ * Given some UTF-8 text, obtain a character value with
+ * g_utf8_get_char().
+ * 
+ * Return value: %TRUE if @c is a control character
+ **/
+gboolean
+g_unichar_iscntrl (gunichar c)
+{
+  return TYPE (c) == G_UNICODE_CONTROL;
+}
+
+/**
+ * g_unichar_isdigit:
+ * @c: a Unicode character
+ * 
+ * Determines whether a character is numeric (i.e. a digit).  This
+ * covers ASCII 0-9 and also digits in other languages/scripts.  Given
+ * some UTF-8 text, obtain a character value with g_utf8_get_char().
+ * 
+ * Return value: %TRUE if @c is a digit
+ **/
+gboolean
+g_unichar_isdigit (gunichar c)
+{
+  return TYPE (c) == G_UNICODE_DECIMAL_NUMBER;
+}
+
+
+/**
+ * g_unichar_isgraph:
+ * @c: a Unicode character
+ * 
+ * Determines whether a character is printable and not a space
+ * (returns %FALSE for control characters, format characters, and
+ * spaces). g_unichar_isprint() is similar, but returns %TRUE for
+ * spaces. Given some UTF-8 text, obtain a character value with
+ * g_utf8_get_char().
+ * 
+ * Return value: %TRUE if @c is printable unless it's a space
+ **/
+gboolean
+g_unichar_isgraph (gunichar c)
+{
+  int t = TYPE (c);
+  return (t != G_UNICODE_CONTROL
+	  && t != G_UNICODE_FORMAT
+	  && t != G_UNICODE_UNASSIGNED
+	  && t != G_UNICODE_PRIVATE_USE
+	  && t != G_UNICODE_SURROGATE
+	  && t != G_UNICODE_SPACE_SEPARATOR);
+}
+
+/**
+ * g_unichar_islower:
+ * @c: a Unicode character
+ * 
+ * Determines whether a character is a lowercase letter.
+ * Given some UTF-8 text, obtain a character value with
+ * g_utf8_get_char().
+ * 
+ * Return value: %TRUE if @c is a lowercase letter
+ **/
+gboolean
+g_unichar_islower (gunichar c)
+{
+  return TYPE (c) == G_UNICODE_LOWERCASE_LETTER;
+}
+
+
+/**
+ * g_unichar_isprint:
+ * @c: a Unicode character
+ * 
+ * Determines whether a character is printable.
+ * Unlike g_unichar_isgraph(), returns %TRUE for spaces.
+ * Given some UTF-8 text, obtain a character value with
+ * g_utf8_get_char().
+ * 
+ * Return value: %TRUE if @c is printable
+ **/
+gboolean
+g_unichar_isprint (gunichar c)
+{
+  int t = TYPE (c);
+  return (t != G_UNICODE_CONTROL
+	  && t != G_UNICODE_FORMAT
+	  && t != G_UNICODE_UNASSIGNED
+	  && t != G_UNICODE_PRIVATE_USE
+	  && t != G_UNICODE_SURROGATE);
+}
+
+/**
+ * g_unichar_ispunct:
+ * @c: a Unicode character
+ * 
+ * Determines whether a character is punctuation or a symbol.
+ * Given some UTF-8 text, obtain a character value with
+ * g_utf8_get_char().
+ * 
+ * Return value: %TRUE if @c is a punctuation or symbol character
+ **/
+gboolean
+g_unichar_ispunct (gunichar c)
+{
+  int t = TYPE (c);
+  return (t == G_UNICODE_CONNECT_PUNCTUATION || t == G_UNICODE_DASH_PUNCTUATION
+	  || t == G_UNICODE_CLOSE_PUNCTUATION || t == G_UNICODE_FINAL_PUNCTUATION
+	  || t == G_UNICODE_INITIAL_PUNCTUATION || t == G_UNICODE_OTHER_PUNCTUATION
+	  || t == G_UNICODE_OPEN_PUNCTUATION || t == G_UNICODE_CURRENCY_SYMBOL
+	  || t == G_UNICODE_MODIFIER_SYMBOL || t == G_UNICODE_MATH_SYMBOL
+	  || t == G_UNICODE_OTHER_SYMBOL);
+}
+
+/**
+ * g_unichar_isspace:
+ * @c: a Unicode character
+ * 
+ * Determines whether a character is a space, tab, or line separator
+ * (newline, carriage return, etc.).  Given some UTF-8 text, obtain a
+ * character value with g_utf8_get_char().
+ *
+ * (Note: don't use this to do word breaking; you have to use
+ * Pango or equivalent to get word breaking right, the algorithm
+ * is fairly complex.)
+ *  
+ * Return value: %TRUE if @c is a punctuation character
+ **/
+gboolean
+g_unichar_isspace (gunichar c)
+{
+  switch (c)
+    {
+      /* special-case these since Unicode thinks they are not spaces */
+    case '\t':
+    case '\n':
+    case '\r':
+    case '\f':
+      return TRUE;
+      break;
+      
+    default:
+      {
+        int t = TYPE (c);
+        return (t == G_UNICODE_SPACE_SEPARATOR || t == G_UNICODE_LINE_SEPARATOR
+                || t == G_UNICODE_PARAGRAPH_SEPARATOR);
+      }
+      break;
+    }
+}
+
+/**
+ * g_unichar_isupper:
+ * @c: a Unicode character
+ * 
+ * Determines if a character is uppercase.
+ * 
+ * Return value: %TRUE if @c is an uppercase character
+ **/
+gboolean
+g_unichar_isupper (gunichar c)
+{
+  return TYPE (c) == G_UNICODE_UPPERCASE_LETTER;
+}
+
+/**
+ * g_unichar_istitle:
+ * @c: a Unicode character
+ * 
+ * Determines if a character is titlecase. Some characters in
+ * Unicode which are composites, such as the DZ digraph
+ * have three case variants instead of just two. The titlecase
+ * form is used at the beginning of a word where only the
+ * first letter is capitalized. The titlecase form of the DZ
+ * digraph is U+01F2 LATIN CAPITAL LETTTER D WITH SMALL LETTER Z.
+ * 
+ * Return value: %TRUE if the character is titlecase
+ **/
+gboolean
+g_unichar_istitle (gunichar c)
+{
+  unsigned int i;
+  for (i = 0; i < G_N_ELEMENTS (title_table); ++i)
+    if (title_table[i][0] == c)
+      return 1;
+  return 0;
+}
+
+/**
+ * g_unichar_isxdigit:
+ * @c: a Unicode character.
+ * 
+ * Determines if a character is a hexidecimal digit.
+ * 
+ * Return value: %TRUE if the character is a hexadecimal digit
+ **/
+gboolean
+g_unichar_isxdigit (gunichar c)
+{
+  int t = TYPE (c);
+  return ((c >= 'a' && c <= 'f')
+	  || (c >= 'A' && c <= 'F')
+	  || ISDIGIT (t));
+}
+
+/**
+ * g_unichar_isdefined:
+ * @c: a Unicode character
+ * 
+ * Determines if a given character is assigned in the Unicode
+ * standard.
+ *
+ * Return value: %TRUE if the character has an assigned value
+ **/
+gboolean
+g_unichar_isdefined (gunichar c)
+{
+  int t = TYPE (c);
+  return t != G_UNICODE_UNASSIGNED;
+}
+
+/**
+ * g_unichar_iswide:
+ * @c: a Unicode character
+ * 
+ * Determines if a character is typically rendered in a double-width
+ * cell.
+ * 
+ * Return value: %TRUE if the character is wide
+ **/
+/* This function stolen from Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk>.  */
+gboolean
+g_unichar_iswide (gunichar c)
+{
+  if (c < 0x1100)
+    return 0;
+
+  return ((c >= 0x1100 && c <= 0x115f)	   /* Hangul Jamo */
+	  || (c >= 0x2e80 && c <= 0xa4cf && (c & ~0x0011) != 0x300a &&
+	      c != 0x303f)		   /* CJK ... Yi */
+	  || (c >= 0xac00 && c <= 0xd7a3)  /* Hangul Syllables */
+	  || (c >= 0xf900 && c <= 0xfaff)  /* CJK Compatibility Ideographs */
+	  || (c >= 0xfe30 && c <= 0xfe6f)  /* CJK Compatibility Forms */
+	  || (c >= 0xff00 && c <= 0xff5f)  /* Fullwidth Forms */
+	  || (c >= 0xffe0 && c <= 0xffe6));
+}
+
+/**
+ * g_unichar_toupper:
+ * @c: a Unicode character
+ * 
+ * Converts a character to uppercase.
+ * 
+ * Return value: the result of converting @c to uppercase.
+ *               If @c is not an lowercase or titlecase character,
+ *               @c is returned unchanged.
+ **/
+gunichar
+g_unichar_toupper (gunichar c)
+{
+  int t = TYPE (c);
+  if (t == G_UNICODE_LOWERCASE_LETTER)
+    {
+      gunichar val = ATTTABLE (c >> 8, c & 0xff);
+      if (val >= 0xd800 && val < 0xdc00)
+	{
+	  guchar *p = special_case_table[val - 0xd800];
+	  return p[0] * 256 + p[1];
+	}
+      else
+	return val;
+    }
+  else if (t == G_UNICODE_TITLECASE_LETTER)
+    {
+      unsigned int i;
+      for (i = 0; i < G_N_ELEMENTS (title_table); ++i)
+	{
+	  if (title_table[i][0] == c)
+	    return title_table[i][1];
+	}
+    }
+  return c;
+}
+
+/**
+ * g_unichar_tolower:
+ * @c: a Unicode character.
+ * 
+ * Converts a character to lower case.
+ * 
+ * Return value: the result of converting @c to lower case.
+ *               If @c is not an upperlower or titlecase character,
+ *               @c is returned unchanged.
+ **/
+gunichar
+g_unichar_tolower (gunichar c)
+{
+  int t = TYPE (c);
+  if (t == G_UNICODE_UPPERCASE_LETTER)
+    {
+      gunichar val = ATTTABLE (c >> 8, c & 0xff);
+      if (val >= 0xd800 && val < 0xdc00)
+	{
+	  guchar *p = special_case_table[val - 0xd800];
+	  return p[0] * 256 + p[1];
+	}
+      else
+	return val;
+    }
+  else if (t == G_UNICODE_TITLECASE_LETTER)
+    {
+      unsigned int i;
+      for (i = 0; i < G_N_ELEMENTS (title_table); ++i)
+	{
+	  if (title_table[i][0] == c)
+	    return title_table[i][2];
+	}
+    }
+  return c;
+}
+
+/**
+ * g_unichar_totitle:
+ * @c: a Unicode character
+ * 
+ * Converts a character to the titlecase.
+ * 
+ * Return value: the result of converting @c to titlecase.
+ *               If @c is not an uppercase or lowercase character,
+ *               @c is returned unchanged.
+ **/
+gunichar
+g_unichar_totitle (gunichar c)
+{
+  unsigned int i;
+  for (i = 0; i < G_N_ELEMENTS (title_table); ++i)
+    {
+      if (title_table[i][0] == c || title_table[i][1] == c
+	  || title_table[i][2] == c)
+	return title_table[i][0];
+    }
+  return (TYPE (c) == G_UNICODE_LOWERCASE_LETTER
+	  ? ATTTABLE (c >> 8, c & 0xff)
+	  : c);
+}
+
+/**
+ * g_unichar_digit_value:
+ * @c: a Unicode character
+ *
+ * Determines the numeric value of a character as a decimal
+ * digit.
+ *
+ * Return value: If @c is a decimal digit (according to
+ * g_unichar_isdigit()), its numeric value. Otherwise, -1.
+ **/
+int
+g_unichar_digit_value (gunichar c)
+{
+  if (TYPE (c) == G_UNICODE_DECIMAL_NUMBER)
+    return ATTTABLE (c >> 8, c & 0xff);
+  return -1;
+}
+
+/**
+ * g_unichar_xdigit_value:
+ * @c: a Unicode character
+ *
+ * Determines the numeric value of a character as a hexidecimal
+ * digit.
+ *
+ * Return value: If @c is a hex digit (according to
+ * g_unichar_isxdigit()), its numeric value. Otherwise, -1.
+ **/
+int
+g_unichar_xdigit_value (gunichar c)
+{
+  if (c >= 'A' && c <= 'F')
+    return c - 'A' + 10;
+  if (c >= 'a' && c <= 'f')
+    return c - 'a' + 10;
+  if (TYPE (c) == G_UNICODE_DECIMAL_NUMBER)
+    return ATTTABLE (c >> 8, c & 0xff);
+  return -1;
+}
+
+/**
+ * g_unichar_type:
+ * @c: a Unicode character
+ * 
+ * Classifies a Unicode character by type.
+ * 
+ * Return value: the type of the character.
+ **/
+GUnicodeType
+g_unichar_type (gunichar c)
+{
+  return TYPE (c);
+}
+
+/*
+ * Case mapping functions
+ */
+
+typedef enum {
+  LOCALE_NORMAL,
+  LOCALE_TURKIC,
+  LOCALE_LITHUANIAN
+} LocaleType;
+
+static LocaleType
+get_locale_type (void)
+{
+  const char *locale = setlocale (LC_CTYPE, NULL);
+
+  switch (locale[0])
+    {
+   case 'a':
+      if (locale[1] == 'z')
+	return LOCALE_TURKIC;
+      break;
+    case 'l':
+      if (locale[1] == 't')
+	return LOCALE_LITHUANIAN;
+      break;
+    case 't':
+      if (locale[1] == 'r')
+	return LOCALE_TURKIC;
+      break;
+    }
+
+  return LOCALE_NORMAL;
+}
+
+static int
+output_marks (const char **p_inout,
+	      char        *out_buffer,
+	      int          len,
+	      gboolean     remove_dot)
+{
+  const char *p = *p_inout;
+  
+  while (*p)
+    {
+      gunichar c = g_utf8_get_char (p);
+      int t = TYPE(c);
+      
+      if (ISMARK(t))
+	{
+	  if (!remove_dot || c != 0x307 /* COMBINING DOT ABOVE */)
+	    len += g_unichar_to_utf8 (c, out_buffer ? out_buffer + len : NULL);
+	  p = g_utf8_next_char (p);
+	}
+      else
+	break;
+    }
+
+  *p_inout = p;
+  return len;
+}
+
+static gsize
+output_special_case (gchar *out_buffer,
+		     gsize  len,
+		     int    index,
+		     int    type,
+		     int    which)
+{
+  guchar *p = special_case_table[index];
+
+  if (type != G_UNICODE_TITLECASE_LETTER)
+    p += 2; /* +2 to skip over "best single match" */
+
+  if (which == 1)
+    {
+      while (p[0] && p[1])
+	p += 2;
+      p += 2;
+    }
+
+  while (TRUE)
+    {
+      gunichar ch = p[0] * 256 + p[1];
+      if (!ch)
+	break;
+
+      len += g_unichar_to_utf8 (ch, out_buffer ? out_buffer + len : NULL);
+      p += 2;
+    }
+
+  return len;
+}
+
+static gsize
+real_toupper (const gchar *str,
+	      gssize       max_len,
+	      gchar       *out_buffer,
+	      LocaleType   locale_type)
+{
+  const gchar *p = str;
+  const char *last = NULL;
+  gsize len = 0;
+  gboolean last_was_i = FALSE;
+
+  while ((max_len < 0 || p < str + max_len) && *p)
+    {
+      gunichar c = g_utf8_get_char (p);
+      int t = TYPE (c);
+      gunichar val;
+
+      last = p;
+      p = g_utf8_next_char (p);
+
+      if (locale_type == LOCALE_LITHUANIAN)
+	{
+	  if (c == 'i')
+	    last_was_i = TRUE;
+	  else 
+	    {
+	      if (last_was_i)
+		{
+		  /* Nasty, need to remove any dot above. Though
+		   * I think only E WITH DOT ABOVE occurs in practice
+		   * which could simplify this considerably.
+		   */
+		  gsize decomp_len, i;
+		  gunichar *decomp;
+
+		  decomp = g_unicode_canonical_decomposition (c, &decomp_len);
+		  for (i=0; i < decomp_len; i++)
+		    {
+		      if (decomp[i] != 0x307 /* COMBINING DOT ABOVE */)
+			len += g_unichar_to_utf8 (g_unichar_toupper (decomp[i]), out_buffer ? out_buffer + len : NULL);
+		    }
+		  g_free (decomp);
+		  
+		  len = output_marks (&p, out_buffer, len, TRUE);
+
+		  continue;
+		}
+
+	      if (!ISMARK(t))
+		last_was_i = FALSE;
+	    }
+	}
+      
+      if (locale_type == LOCALE_TURKIC && c == 'i')
+	{
+	  /* i => LATIN CAPITAL LETTER I WITH DOT ABOVE */
+	  len += g_unichar_to_utf8 (0x130, out_buffer ? out_buffer + len : NULL); 
+	}
+      else if (c == 0x0345)	/* COMBINING GREEK YPOGEGRAMMENI */
+	{
+	  /* Nasty, need to move it after other combining marks .. this would go away if
+	   * we normalized first.
+	   */
+	  len = output_marks (&p, out_buffer, len, FALSE);
+
+	  /* And output as GREEK CAPITAL LETTER IOTA */
+	  len += g_unichar_to_utf8 (0x399, out_buffer ? out_buffer + len : NULL); 	  
+	}
+      else if (t == G_UNICODE_LOWERCASE_LETTER || t == G_UNICODE_TITLECASE_LETTER)
+	{
+	  val = ATTTABLE (c >> 8, c & 0xff);
+
+	  if (val >= 0xd800 && val < 0xdc00)
+	    {
+	      len += output_special_case (out_buffer, len, val - 0xd800, t,
+					  t == G_UNICODE_LOWERCASE_LETTER ? 0 : 1);
+	    }
+	  else
+	    {
+	      if (t == G_UNICODE_TITLECASE_LETTER)
+		{
+		  unsigned int i;
+		  for (i = 0; i < G_N_ELEMENTS (title_table); ++i)
+		    {
+		      if (title_table[i][0] == c)
+			val = title_table[i][1];
+		    }
+		}
+
+	      len += g_unichar_to_utf8 (val, out_buffer ? out_buffer + len : NULL);
+	    }
+	}
+      else
+	{
+	  gsize char_len = g_utf8_skip[*(guchar *)last];
+
+	  if (out_buffer)
+	    memcpy (out_buffer + len, last, char_len);
+
+	  len += char_len;
+	}
+
+    }
+
+  return len;
+}
+
+/**
+ * g_utf8_strup:
+ * @str: a UTF-8 encoded string
+ * @len: length of @str, in bytes, or -1 if @str is nul-terminated.
+ * 
+ * Converts all Unicode characters in the string that have a case
+ * to uppercase. The exact manner that this is done depends
+ * on the current locale, and may result in the number of
+ * characters in the string increasing. (For instance, the
+ * German ess-zet will be changed to SS.)
+ * 
+ * Return value: a newly allocated string, with all characters
+ *    converted to uppercase.  
+ **/
+gchar *
+g_utf8_strup (const gchar *str,
+	      gssize       len)
+{
+  gsize result_len;
+  LocaleType locale_type;
+  gchar *result;
+
+  g_return_val_if_fail (str != NULL, NULL);
+
+  locale_type = get_locale_type ();
+  
+  /*
+   * We use a two pass approach to keep memory management simple
+   */
+  result_len = real_toupper (str, len, NULL, locale_type);
+  result = g_malloc (result_len + 1);
+  real_toupper (str, len, result, locale_type);
+  result[result_len] = '\0';
+
+  return result;
+}
+
+static gsize
+real_tolower (const gchar *str,
+	      gssize       max_len,
+	      gchar       *out_buffer,
+	      LocaleType   locale_type)
+{
+  const gchar *p = str;
+  const char *last = NULL;
+  gsize len = 0;
+
+  while ((max_len < 0 || p < str + max_len) && *p)
+    {
+      gunichar c = g_utf8_get_char (p);
+      int t = TYPE (c);
+      gunichar val;
+
+      last = p;
+      p = g_utf8_next_char (p);
+
+      if (locale_type == LOCALE_TURKIC && c == 'I')
+	{
+	  /* I => LATIN SMALL LETTER DOTLESS I */
+	  len += g_unichar_to_utf8 (0x131, out_buffer ? out_buffer + len : NULL); 
+	}
+      else if (c == 0x03A3)	/* GREEK CAPITAL LETTER SIGMA */
+	{
+	  gunichar next_c = g_utf8_get_char (p);
+	  int next_t = TYPE(next_c);
+
+	  /* SIGMA mapps differently depending on whether it is
+	   * final or not. The following simplified test would
+	   * fail in the case of combining marks following the
+	   * sigma, but I don't think that occurs in real text.
+	   * The test here matches that in ICU.
+	   */
+	  if (ISALPHA(next_t)) /* Lu,Ll,Lt,Lm,Lo */
+	    val = 0x3c3;	/* GREEK SMALL SIGMA */
+	  else
+	    val = 0x3c2;	/* GREEK SMALL FINAL SIGMA */
+
+	  len += g_unichar_to_utf8 (val, out_buffer ? out_buffer + len : NULL);
+	}
+      else if (t == G_UNICODE_UPPERCASE_LETTER || t == G_UNICODE_TITLECASE_LETTER)
+	{
+	  val = ATTTABLE (c >> 8, c & 0xff);
+
+	  if (val >= 0xd800 && val < 0xdc00)
+	    {
+	      len += output_special_case (out_buffer, len, val - 0xd800, t, 0);
+	    }
+	  else
+	    {
+	      if (t == G_UNICODE_TITLECASE_LETTER)
+		{
+		  unsigned int i;
+		  for (i = 0; i < G_N_ELEMENTS (title_table); ++i)
+		    {
+		      if (title_table[i][0] == c)
+			val = title_table[i][2];
+		    }
+		}
+
+	      len += g_unichar_to_utf8 (val, out_buffer ? out_buffer + len : NULL);
+	    }
+	}
+      else
+	{
+	  gsize char_len = g_utf8_skip[*(guchar *)last];
+
+	  if (out_buffer)
+	    memcpy (out_buffer + len, last, char_len);
+
+	  len += char_len;
+	}
+
+    }
+
+  return len;
+}
+
+/**
+ * g_utf8_strdown:
+ * @str: a UTF-8 encoded string
+ * @len: length of @str, in bytes, or -1 if @str is nul-terminated.
+ * 
+ * Converts all Unicode characters in the string that have a case
+ * to lowercase. The exact manner that this is done depends
+ * on the current locale, and may result in the number of
+ * characters in the string changing.
+ * 
+ * Return value: a newly allocated string, with all characters
+ *    converted to lowercase.  
+ **/
+gchar *
+g_utf8_strdown (const gchar *str,
+		gssize       len)
+{
+  gsize result_len;
+  LocaleType locale_type;
+  gchar *result;
+
+  g_return_val_if_fail (str != NULL, NULL);
+
+  locale_type = get_locale_type ();
+  
+  /*
+   * We use a two pass approach to keep memory management simple
+   */
+  result_len = real_tolower (str, len, NULL, locale_type);
+  result = g_malloc (result_len + 1);
+  real_tolower (str, len, result, locale_type);
+  result[result_len] = '\0';
+
+  return result;
+}
+
+/**
+ * g_utf8_casefold:
+ * @str: a UTF-8 encoded string
+ * @len: length of @str, in bytes, or -1 if @str is nul-terminated.
+ * 
+ * Converts a string into a form that is independent of case. The
+ * result will not correspond to any particular case, but can be
+ * compared for equality or ordered with the results of calling
+ * g_utf8_casefold() on other strings.
+ * 
+ * Note that calling g_utf8_casefold() followed by g_utf8_collate() is
+ * only an approximation to the correct linguistic case insensitive
+ * ordering, though it is a fairly good one. Getting this exactly
+ * right would require a more sophisticated collation function that
+ * takes case sensitivity into account. GLib does not currently
+ * provide such a function.
+ * 
+ * Return value: a newly allocated string, that is a
+ *   case independent form of @str.
+ **/
+gchar *
+g_utf8_casefold (const gchar *str,
+		 gssize       len)
+{
+  GString *result = g_string_new (NULL);
+  const char *p;
+
+  p = str;
+  while ((len < 0 || p < str + len) && *p)
+    {
+      gunichar ch = g_utf8_get_char (p);
+
+      int start = 0;
+      int end = G_N_ELEMENTS (casefold_table);
+
+      if (ch >= casefold_table[start].ch &&
+	  ch <= casefold_table[end - 1].ch)
+	{
+	  while (TRUE)
+	    {
+	      int half = (start + end) / 2;
+	      if (ch == casefold_table[half].ch)
+		{
+		  g_string_append (result, casefold_table[half].data);
+		  goto next;
+		}
+	      else if (half == start)
+		break;
+	      else if (ch > casefold_table[half].ch)
+		start = half;
+	      else
+		end = half;
+	    }
+	}
+
+      g_string_append_unichar (result, g_unichar_tolower (ch));
+      
+    next:
+      p = g_utf8_next_char (p);
+    }
+
+  return g_string_free (result, FALSE); 
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gutf8.c b/graf2d/win32gdk/gdk/src/glib/gutf8.c
new file mode 100644
index 00000000000..ab4217bb92c
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gutf8.c
@@ -0,0 +1,1523 @@
+/* gutf8.c - Operations on UTF-8 strings.
+ *
+ * Copyright (C) 1999 Tom Tromey
+ * Copyright (C) 2000 Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#include <config.h>
+
+#include <stdlib.h>
+#ifdef HAVE_CODESET
+#include <langinfo.h>
+#endif
+#include <string.h>
+
+#include "glib.h"
+
+#ifdef G_PLATFORM_WIN32
+#include <stdio.h>
+#define STRICT
+#include <windows.h>
+#undef STRICT
+#endif
+
+#include "glibintl.h"
+
+#define UTF8_COMPUTE(Char, Mask, Len)					      \
+  if (Char < 128)							      \
+    {									      \
+      Len = 1;								      \
+      Mask = 0x7f;							      \
+    }									      \
+  else if ((Char & 0xe0) == 0xc0)					      \
+    {									      \
+      Len = 2;								      \
+      Mask = 0x1f;							      \
+    }									      \
+  else if ((Char & 0xf0) == 0xe0)					      \
+    {									      \
+      Len = 3;								      \
+      Mask = 0x0f;							      \
+    }									      \
+  else if ((Char & 0xf8) == 0xf0)					      \
+    {									      \
+      Len = 4;								      \
+      Mask = 0x07;							      \
+    }									      \
+  else if ((Char & 0xfc) == 0xf8)					      \
+    {									      \
+      Len = 5;								      \
+      Mask = 0x03;							      \
+    }									      \
+  else if ((Char & 0xfe) == 0xfc)					      \
+    {									      \
+      Len = 6;								      \
+      Mask = 0x01;							      \
+    }									      \
+  else									      \
+    Len = -1;
+
+#define UTF8_LENGTH(Char)              \
+  ((Char) < 0x80 ? 1 :                 \
+   ((Char) < 0x800 ? 2 :               \
+    ((Char) < 0x10000 ? 3 :            \
+     ((Char) < 0x200000 ? 4 :          \
+      ((Char) < 0x4000000 ? 5 : 6)))))
+   
+
+#define UTF8_GET(Result, Chars, Count, Mask, Len)			      \
+  (Result) = (Chars)[0] & (Mask);					      \
+  for ((Count) = 1; (Count) < (Len); ++(Count))				      \
+    {									      \
+      if (((Chars)[(Count)] & 0xc0) != 0x80)				      \
+	{								      \
+	  (Result) = -1;						      \
+	  break;							      \
+	}								      \
+      (Result) <<= 6;							      \
+      (Result) |= ((Chars)[(Count)] & 0x3f);				      \
+    }
+
+#define UNICODE_VALID(Char)                   \
+    ((Char) < 0x110000 &&                     \
+     ((Char) < 0xD800 || (Char) >= 0xE000) && \
+     (Char) != 0xFFFE && (Char) != 0xFFFF)
+   
+     
+static const gchar utf8_skip_data[256] = {
+  1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
+  1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
+  1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
+  1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
+  1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
+  1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
+  2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
+  3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,5,5,5,5,6,6,0,0
+};
+
+const gchar * const g_utf8_skip = utf8_skip_data;
+
+/**
+ * g_utf8_find_prev_char:
+ * @str: pointer to the beginning of a UTF-8 encoded string
+ * @p: pointer to some position within @str
+ * 
+ * Given a position @p with a UTF-8 encoded string @str, find the start
+ * of the previous UTF-8 character starting before @p. Returns %NULL if no
+ * UTF-8 characters are present in @p before @str.
+ *
+ * @p does not have to be at the beginning of a UTF-8 character. No check
+ * is made to see if the character found is actually valid other than
+ * it starts with an appropriate byte.
+ *
+ * Return value: a pointer to the found character or %NULL.
+ **/
+gchar *
+g_utf8_find_prev_char (const char *str,
+		       const char *p)
+{
+  for (--p; p >= str; --p)
+    {
+      if ((*p & 0xc0) != 0x80)
+	return (gchar *)p;
+    }
+  return NULL;
+}
+
+/**
+ * g_utf8_find_next_char:
+ * @p: a pointer to a position within a UTF-8 encoded string
+ * @end: a pointer to the end of the string, or %NULL to indicate
+ *        that the string is nul-terminated, in which case
+ *        the returned value will be 
+ *
+ * Finds the start of the next UTF-8 character in the string after @p.
+ *
+ * @p does not have to be at the beginning of a UTF-8 character. No check
+ * is made to see if the character found is actually valid other than
+ * it starts with an appropriate byte.
+ * 
+ * Return value: a pointer to the found character or %NULL
+ **/
+gchar *
+g_utf8_find_next_char (const gchar *p,
+		       const gchar *end)
+{
+  if (*p)
+    {
+      if (end)
+	for (++p; p < end && (*p & 0xc0) == 0x80; ++p)
+	  ;
+      else
+	for (++p; (*p & 0xc0) == 0x80; ++p)
+	  ;
+    }
+  return (p == end) ? NULL : (gchar *)p;
+}
+
+/**
+ * g_utf8_prev_char:
+ * @p: a pointer to a position within a UTF-8 encoded string
+ *
+ * Finds the previous UTF-8 character in the string before @p.
+ *
+ * @p does not have to be at the beginning of a UTF-8 character. No check
+ * is made to see if the character found is actually valid other than
+ * it starts with an appropriate byte. If @p might be the first
+ * character of the string, you must use g_utf8_find_prev_char() instead.
+ * 
+ * Return value: a pointer to the found character.
+ **/
+gchar *
+g_utf8_prev_char (const gchar *p)
+{
+  while (TRUE)
+    {
+      p--;
+      if ((*p & 0xc0) != 0x80)
+	return (gchar *)p;
+    }
+}
+
+/**
+ * g_utf8_strlen:
+ * @p: pointer to the start of a UTF-8 encoded string.
+ * @max: the maximum number of bytes to examine. If @max
+ *       is less than 0, then the string is assumed to be
+ *       nul-terminated.
+ * 
+ * Returns the length of the string in characters.
+ *
+ * Return value: the length of the string in characters
+ **/
+glong
+g_utf8_strlen (const gchar *p,
+               gssize       max)
+{
+  glong len = 0;
+  const gchar *start = p;
+
+  if (max < 0)
+    {
+      while (*p)
+        {
+          p = g_utf8_next_char (p);
+          ++len;
+        }
+    }
+  else
+    {
+      if (max == 0 || !*p)
+        return 0;
+      
+      p = g_utf8_next_char (p);          
+
+      while (p - start < max && *p)
+        {
+          ++len;
+          p = g_utf8_next_char (p);          
+        }
+
+      /* only do the last len increment if we got a complete
+       * char (don't count partial chars)
+       */
+      if (p - start == max)
+        ++len;
+    }
+
+  return len;
+}
+
+/**
+ * g_utf8_get_char:
+ * @p: a pointer to Unicode character encoded as UTF-8
+ * 
+ * Converts a sequence of bytes encoded as UTF-8 to a Unicode character.
+ * If @p does not point to a valid UTF-8 encoded character, results are
+ * undefined. If you are not sure that the bytes are complete
+ * valid Unicode characters, you should use g_utf8_get_char_validated()
+ * instead.
+ * 
+ * Return value: the resulting character
+ **/
+gunichar
+g_utf8_get_char (const gchar *p)
+{
+  int i, mask = 0, len;
+  gunichar result;
+  unsigned char c = (unsigned char) *p;
+
+  UTF8_COMPUTE (c, mask, len);
+  if (len == -1)
+    return (gunichar)-1;
+  UTF8_GET (result, p, i, mask, len);
+
+  return result;
+}
+
+/**
+ * g_utf8_offset_to_pointer:
+ * @str: a UTF-8 encoded string
+ * @offset: a character offset within @str
+ * 
+ * Converts from an integer character offset to a pointer to a position
+ * within the string.
+ * 
+ * Return value: the resulting pointer
+ **/
+gchar *
+g_utf8_offset_to_pointer  (const gchar *str,
+			   glong        offset)    
+{
+  const gchar *s = str;
+  while (offset--)
+    s = g_utf8_next_char (s);
+  
+  return (gchar *)s;
+}
+
+/**
+ * g_utf8_pointer_to_offset:
+ * @str: a UTF-8 encoded string
+ * @pos: a pointer to a position within @str
+ * 
+ * Converts from a pointer to position within a string to a integer
+ * character offset.
+ * 
+ * Return value: the resulting character offset
+ **/
+glong    
+g_utf8_pointer_to_offset (const gchar *str,
+			  const gchar *pos)
+{
+  const gchar *s = str;
+  glong offset = 0;    
+  
+  while (s < pos)
+    {
+      s = g_utf8_next_char (s);
+      offset++;
+    }
+
+  return offset;
+}
+
+
+/**
+ * g_utf8_strncpy:
+ * @dest: buffer to fill with characters from @src
+ * @src: UTF-8 encoded string
+ * @n: character count
+ * 
+ * Like the standard C <function>strncpy()</function> function, but 
+ * copies a given number of characters instead of a given number of 
+ * bytes. The @src string must be valid UTF-8 encoded text. 
+ * (Use g_utf8_validate() on all text before trying to use UTF-8 
+ * utility functions with it.)
+ * 
+ * Return value: @dest
+ **/
+gchar *
+g_utf8_strncpy (gchar       *dest,
+		const gchar *src,
+		gsize        n)
+{
+  const gchar *s = src;
+  while (n && *s)
+    {
+      s = g_utf8_next_char(s);
+      n--;
+    }
+  strncpy(dest, src, s - src);
+  dest[s - src] = 0;
+  return dest;
+}
+
+static gboolean
+g_utf8_get_charset_internal (char **a)
+{
+  char *charset = getenv("CHARSET");
+
+  if (charset && a && ! *a)
+    *a = charset;
+
+  if (charset && strstr (charset, "UTF-8"))
+      return TRUE;
+
+#ifdef HAVE_CODESET
+  charset = nl_langinfo(CODESET);
+  if (charset)
+    {
+      if (a && ! *a)
+	*a = charset;
+      if (strcmp (charset, "UTF-8") == 0)
+	return TRUE;
+    }
+#endif
+  
+#if 0 /* #ifdef _NL_CTYPE_CODESET_NAME */
+  charset = nl_langinfo (_NL_CTYPE_CODESET_NAME);
+  if (charset)
+    {
+      if (a && ! *a)
+	*a = charset;
+      if (strcmp (charset, "UTF-8") == 0)
+	return TRUE;
+    }
+#endif
+
+#ifdef G_PLATFORM_WIN32
+  if (a && ! *a)
+    {
+      static char codepage[10];
+      
+      sprintf (codepage, "CP%d", GetACP ());
+      *a = codepage;
+      /* What about codepage 1200? Is that UTF-8? */
+      return FALSE;
+    }
+#else
+  if (a && ! *a) 
+    *a = "US-ASCII";
+#endif
+
+  /* Assume this for compatibility at present.  */
+  return FALSE;
+}
+
+static int utf8_locale_cache = -1;
+static char *utf8_charset_cache = NULL;
+
+/**
+ * g_get_charset:
+ * @charset: return location for character set name
+ * 
+ * Obtains the character set for the current locale; you might use
+ * this character set as an argument to g_convert(), to convert from
+ * the current locale's encoding to some other encoding. (Frequently
+ * g_locale_to_utf8() and g_locale_from_utf8() are nice shortcuts,
+ * though.)
+ *
+ * The return value is %TRUE if the locale's encoding is UTF-8, in that
+ * case you can perhaps avoid calling g_convert().
+ *
+ * The string returned in @charset is not allocated, and should not be
+ * freed.
+ * 
+ * Return value: %TRUE if the returned charset is UTF-8
+ **/
+gboolean
+g_get_charset (G_CONST_RETURN char **charset) 
+{
+  if (utf8_locale_cache != -1)
+    {
+      if (charset)
+	*charset = utf8_charset_cache;
+      return utf8_locale_cache;
+    }
+  utf8_locale_cache = g_utf8_get_charset_internal (&utf8_charset_cache);
+  if (charset) 
+    *charset = utf8_charset_cache;
+  return utf8_locale_cache;
+}
+
+/* unicode_strchr */
+
+/**
+ * g_unichar_to_utf8:
+ * @c: a ISO10646 character code
+ * @outbuf: output buffer, must have at least 6 bytes of space.
+ *       If %NULL, the length will be computed and returned
+ *       and nothing will be written to @outbuf.
+ * 
+ * Converts a single character to UTF-8.
+ * 
+ * Return value: number of bytes written
+ **/
+int
+g_unichar_to_utf8 (gunichar c,
+		   gchar   *outbuf)
+{
+  guint len = 0;    
+  int first;
+  int i;
+
+  if (c < 0x80)
+    {
+      first = 0;
+      len = 1;
+    }
+  else if (c < 0x800)
+    {
+      first = 0xc0;
+      len = 2;
+    }
+  else if (c < 0x10000)
+    {
+      first = 0xe0;
+      len = 3;
+    }
+   else if (c < 0x200000)
+    {
+      first = 0xf0;
+      len = 4;
+    }
+  else if (c < 0x4000000)
+    {
+      first = 0xf8;
+      len = 5;
+    }
+  else
+    {
+      first = 0xfc;
+      len = 6;
+    }
+
+  if (outbuf)
+    {
+      for (i = len - 1; i > 0; --i)
+	{
+	  outbuf[i] = (c & 0x3f) | 0x80;
+	  c >>= 6;
+	}
+      outbuf[0] = c | first;
+    }
+
+  return len;
+}
+
+/**
+ * g_utf8_strchr:
+ * @p: a nul-terminated UTF-8 encoded string
+ * @len: the maximum length of @p
+ * @c: a ISO10646 character
+ * 
+ * Finds the leftmost occurrence of the given ISO10646 character
+ * in a UTF-8 encoded string, while limiting the search to @len bytes.
+ * If @len is -1, allow unbounded search.
+ * 
+ * Return value: %NULL if the string does not contain the character, 
+ *   otherwise, a pointer to the start of the leftmost occurrence of 
+ *   the character in the string.
+ **/
+gchar *
+g_utf8_strchr (const char *p,
+	       gssize      len,
+	       gunichar    c)
+{
+  gchar ch[10];
+
+  gint charlen = g_unichar_to_utf8 (c, ch);
+  ch[charlen] = '\0';
+  
+  return g_strstr_len (p, len, ch);
+}
+
+
+/**
+ * g_utf8_strrchr:
+ * @p: a nul-terminated UTF-8 encoded string
+ * @len: the maximum length of @p
+ * @c: a ISO10646 character
+ * 
+ * Find the rightmost occurrence of the given ISO10646 character
+ * in a UTF-8 encoded string, while limiting the search to @len bytes.
+ * If @len is -1, allow unbounded search.
+ * 
+ * Return value: %NULL if the string does not contain the character, 
+ *   otherwise, a pointer to the start of the rightmost occurrence of the 
+ *   character in the string.
+ **/
+gchar *
+g_utf8_strrchr (const char *p,
+		gssize      len,
+		gunichar    c)
+{
+  gchar ch[10];
+
+  gint charlen = g_unichar_to_utf8 (c, ch);
+  ch[charlen] = '\0';
+  
+  return g_strrstr_len (p, len, ch);
+}
+
+
+/* Like g_utf8_get_char, but take a maximum length
+ * and return (gunichar)-2 on incomplete trailing character
+ */
+static inline gunichar
+g_utf8_get_char_extended (const  gchar *p,
+			  gssize max_len)  
+{
+  guint i, len;
+  gunichar wc = (guchar) *p;
+
+  if (wc < 0x80)
+    {
+      return wc;
+    }
+  else if (wc < 0xc0)
+    {
+      return (gunichar)-1;
+    }
+  else if (wc < 0xe0)
+    {
+      len = 2;
+      wc &= 0x1f;
+    }
+  else if (wc < 0xf0)
+    {
+      len = 3;
+      wc &= 0x0f;
+    }
+  else if (wc < 0xf8)
+    {
+      len = 4;
+      wc &= 0x07;
+    }
+  else if (wc < 0xfc)
+    {
+      len = 5;
+      wc &= 0x03;
+    }
+  else if (wc < 0xfe)
+    {
+      len = 6;
+      wc &= 0x01;
+    }
+  else
+    {
+      return (gunichar)-1;
+    }
+  
+  if (max_len >= 0 && len > max_len)
+    {
+      for (i = 1; i < max_len; i++)
+	{
+	  if ((((guchar *)p)[i] & 0xc0) != 0x80)
+	    return (gunichar)-1;
+	}
+      return (gunichar)-2;
+    }
+
+  for (i = 1; i < len; ++i)
+    {
+      gunichar ch = ((guchar *)p)[i];
+      
+      if ((ch & 0xc0) != 0x80)
+	{
+	  if (ch)
+	    return (gunichar)-1;
+	  else
+	    return (gunichar)-2;
+	}
+
+      wc <<= 6;
+      wc |= (ch & 0x3f);
+    }
+
+  if (UTF8_LENGTH(wc) != len)
+    return (gunichar)-1;
+  
+  return wc;
+}
+
+/**
+ * g_utf8_get_char_validated:
+ * @p: a pointer to Unicode character encoded as UTF-8
+ * @max_len: the maximum number of bytes to read, or -1, for no maximum.
+ * 
+ * Convert a sequence of bytes encoded as UTF-8 to a Unicode character.
+ * This function checks for incomplete characters, for invalid characters
+ * such as characters that are out of the range of Unicode, and for
+ * overlong encodings of valid characters.
+ * 
+ * Return value: the resulting character. If @p points to a partial
+ *    sequence at the end of a string that could begin a valid character,
+ *    returns (gunichar)-2; otherwise, if @p does not point to a valid
+ *    UTF-8 encoded Unicode character, returns (gunichar)-1.
+ **/
+gunichar
+g_utf8_get_char_validated (const  gchar *p,
+			   gssize max_len)
+{
+  gunichar result = g_utf8_get_char_extended (p, max_len);
+
+  if (result & 0x80000000)
+    return result;
+  else if (!UNICODE_VALID (result))
+    return (gunichar)-1;
+  else
+    return result;
+}
+
+/**
+ * g_utf8_to_ucs4_fast:
+ * @str: a UTF-8 encoded string
+ * @len: the maximum length of @str to use. If @len < 0, then
+ *       the string is nul-terminated.
+ * @items_written: location to store the number of characters in the
+ *                 result, or %NULL.
+ *
+ * Convert a string from UTF-8 to a 32-bit fixed width
+ * representation as UCS-4, assuming valid UTF-8 input.
+ * This function is roughly twice as fast as g_utf8_to_ucs4()
+ * but does no error checking on the input.
+ * 
+ * Return value: a pointer to a newly allocated UCS-4 string.
+ *               This value must be freed with g_free().
+ **/
+gunichar *
+g_utf8_to_ucs4_fast (const gchar *str,
+		     glong        len,              
+		     glong       *items_written)    
+{
+  gint j, charlen;
+  gunichar *result;
+  gint n_chars, i;
+  const gchar *p;
+
+  g_return_val_if_fail (str != NULL, NULL);
+
+  p = str;
+  n_chars = 0;
+  if (len < 0)
+    {
+      while (*p)
+	{
+	  p = g_utf8_next_char (p);
+	  ++n_chars;
+	}
+    }
+  else
+    {
+      while (p < str + len && *p)
+	{
+	  p = g_utf8_next_char (p);
+	  ++n_chars;
+	}
+    }
+  
+  result = g_new (gunichar, n_chars + 1);
+  
+  p = str;
+  for (i=0; i < n_chars; i++)
+    {
+      gunichar wc = ((unsigned char *)p)[0];
+
+      if (wc < 0x80)
+	{
+	  result[i] = wc;
+	  p++;
+	}
+      else
+	{ 
+	  if (wc < 0xe0)
+	    {
+	      charlen = 2;
+	      wc &= 0x1f;
+	    }
+	  else if (wc < 0xf0)
+	    {
+	      charlen = 3;
+	      wc &= 0x0f;
+	    }
+	  else if (wc < 0xf8)
+	    {
+	      charlen = 4;
+	      wc &= 0x07;
+	    }
+	  else if (wc < 0xfc)
+	    {
+	      charlen = 5;
+	      wc &= 0x03;
+	    }
+	  else
+	    {
+	      charlen = 6;
+	      wc &= 0x01;
+	    }
+
+	  for (j = 1; j < charlen; j++)
+	    {
+	      wc <<= 6;
+	      wc |= ((unsigned char *)p)[j] & 0x3f;
+	    }
+
+	  result[i] = wc;
+	  p += charlen;
+	}
+    }
+  result[i] = 0;
+
+  if (items_written)
+    *items_written = i;
+
+  return result;
+}
+
+/**
+ * g_utf8_to_ucs4:
+ * @str: a UTF-8 encoded string
+ * @len: the maximum length of @str to use. If @len < 0, then
+ *       the string is nul-terminated.
+ * @items_read: location to store number of bytes read, or %NULL.
+ *              If %NULL, then %G_CONVERT_ERROR_PARTIAL_INPUT will be
+ *              returned in case @str contains a trailing partial
+ *              character. If an error occurs then the index of the
+ *              invalid input is stored here.
+ * @items_written: location to store number of characters written or %NULL.
+ *                 The value here stored does not include the trailing 0
+ *                 character. 
+ * @error: location to store the error occuring, or %NULL to ignore
+ *         errors. Any of the errors in #GConvertError other than
+ *         %G_CONVERT_ERROR_NO_CONVERSION may occur.
+ *
+ * Convert a string from UTF-8 to a 32-bit fixed width
+ * representation as UCS-4. A trailing 0 will be added to the
+ * string after the converted text.
+ * 
+ * Return value: a pointer to a newly allocated UCS-4 string.
+ *               This value must be freed with g_free(). If an
+ *               error occurs, %NULL will be returned and
+ *               @error set.
+ **/
+gunichar *
+g_utf8_to_ucs4 (const gchar *str,
+		glong        len,             
+		glong       *items_read,      
+		glong       *items_written,   
+		GError     **error)
+{
+  gunichar *result = NULL;
+  gint n_chars, i;
+  const gchar *in;
+  
+  in = str;
+  n_chars = 0;
+  while ((len < 0 || str + len - in > 0) && *in)
+    {
+      gunichar wc = g_utf8_get_char_extended (in, str + len - in);
+      if (wc & 0x80000000)
+	{
+	  if (wc == (gunichar)-2)
+	    {
+	      if (items_read)
+		break;
+	      else
+		g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_PARTIAL_INPUT,
+			     _("Partial character sequence at end of input"));
+	    }
+	  else
+	    g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
+			 _("Invalid byte sequence in conversion input"));
+
+	  goto err_out;
+	}
+
+      n_chars++;
+
+      in = g_utf8_next_char (in);
+    }
+
+  result = g_new (gunichar, n_chars + 1);
+  
+  in = str;
+  for (i=0; i < n_chars; i++)
+    {
+      result[i] = g_utf8_get_char (in);
+      in = g_utf8_next_char (in);
+    }
+  result[i] = 0;
+
+  if (items_written)
+    *items_written = n_chars;
+
+ err_out:
+  if (items_read)
+    *items_read = in - str;
+
+  return result;
+}
+
+/**
+ * g_ucs4_to_utf8:
+ * @str: a UCS-4 encoded string
+ * @len: the maximum length of @str to use. If @len < 0, then
+ *       the string is terminated with a 0 character.
+ * @items_read: location to store number of characters read read, or %NULL.
+ * @items_written: location to store number of bytes written or %NULL.
+ *                 The value here stored does not include the trailing 0
+ *                 byte. 
+ * @error: location to store the error occuring, or %NULL to ignore
+ *         errors. Any of the errors in #GConvertError other than
+ *         %G_CONVERT_ERROR_NO_CONVERSION may occur.
+ *
+ * Convert a string from a 32-bit fixed width representation as UCS-4.
+ * to UTF-8. The result will be terminated with a 0 byte.
+ * 
+ * Return value: a pointer to a newly allocated UTF-8 string.
+ *               This value must be freed with g_free(). If an
+ *               error occurs, %NULL will be returned and
+ *               @error set.
+ **/
+gchar *
+g_ucs4_to_utf8 (const gunichar *str,
+		glong           len,              
+		glong          *items_read,       
+		glong          *items_written,    
+		GError        **error)
+{
+  gint result_length;
+  gchar *result = NULL;
+  gchar *p;
+  gint i;
+
+  result_length = 0;
+  for (i = 0; len < 0 || i < len ; i++)
+    {
+      if (!str[i])
+	break;
+
+      if (str[i] >= 0x80000000)
+	{
+	  if (items_read)
+	    *items_read = i;
+	  
+	  g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
+		       _("Character out of range for UTF-8"));
+	  goto err_out;
+	}
+      
+      result_length += UTF8_LENGTH (str[i]);
+    }
+
+  result = g_malloc (result_length + 1);
+  p = result;
+
+  i = 0;
+  while (p < result + result_length)
+    p += g_unichar_to_utf8 (str[i++], p);
+  
+  *p = '\0';
+
+  if (items_written)
+    *items_written = p - result;
+
+ err_out:
+  if (items_read)
+    *items_read = i;
+
+  return result;
+}
+
+#define SURROGATE_VALUE(h,l) (((h) - 0xd800) * 0x400 + (l) - 0xdc00 + 0x10000)
+
+/**
+ * g_utf16_to_utf8:
+ * @str: a UTF-16 encoded string
+ * @len: the maximum length of @str to use. If @len < 0, then
+ *       the string is terminated with a 0 character.
+ * @items_read: location to store number of words read, or %NULL.
+ *              If %NULL, then %G_CONVERT_ERROR_PARTIAL_INPUT will be
+ *              returned in case @str contains a trailing partial
+ *              character. If an error occurs then the index of the
+ *              invalid input is stored here.
+ * @items_written: location to store number of bytes written, or %NULL.
+ *                 The value stored here does not include the trailing
+ *                 0 byte.
+ * @error: location to store the error occuring, or %NULL to ignore
+ *         errors. Any of the errors in #GConvertError other than
+ *         %G_CONVERT_ERROR_NO_CONVERSION may occur.
+ *
+ * Convert a string from UTF-16 to UTF-8. The result will be
+ * terminated with a 0 byte.
+ * 
+ * Return value: a pointer to a newly allocated UTF-8 string.
+ *               This value must be freed with g_free(). If an
+ *               error occurs, %NULL will be returned and
+ *               @error set.
+ **/
+gchar *
+g_utf16_to_utf8 (const gunichar2  *str,
+		 glong             len,              
+		 glong            *items_read,       
+		 glong            *items_written,    
+		 GError          **error)
+{
+  /* This function and g_utf16_to_ucs4 are almost exactly identical - The lines that differ
+   * are marked.
+   */
+  const gunichar2 *in;
+  gchar *out;
+  gchar *result = NULL;
+  gint n_bytes;
+  gunichar high_surrogate;
+
+  g_return_val_if_fail (str != 0, NULL);
+
+  n_bytes = 0;
+  in = str;
+  high_surrogate = 0;
+  while ((len < 0 || in - str < len) && *in)
+    {
+      gunichar2 c = *in;
+      gunichar wc;
+
+      if (c >= 0xdc00 && c < 0xe000) /* low surrogate */
+	{
+	  if (high_surrogate)
+	    {
+	      wc = SURROGATE_VALUE (high_surrogate, c);
+	      high_surrogate = 0;
+	    }
+	  else
+	    {
+	      g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
+			   _("Invalid sequence in conversion input"));
+	      goto err_out;
+	    }
+	}
+      else
+	{
+	  if (high_surrogate)
+	    {
+	      g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
+			   _("Invalid sequence in conversion input"));
+	      goto err_out;
+	    }
+
+	  if (c >= 0xd800 && c < 0xdc00) /* high surrogate */
+	    {
+	      high_surrogate = c;
+	      goto next1;
+	    }
+	  else
+	    wc = c;
+	}
+
+      /********** DIFFERENT for UTF8/UCS4 **********/
+      n_bytes += UTF8_LENGTH (wc);
+
+    next1:
+      in++;
+    }
+
+  if (high_surrogate && !items_read)
+    {
+      g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_PARTIAL_INPUT,
+		   _("Partial character sequence at end of input"));
+      goto err_out;
+    }
+  
+  /* At this point, everything is valid, and we just need to convert
+   */
+  /********** DIFFERENT for UTF8/UCS4 **********/
+  result = g_malloc (n_bytes + 1);
+  
+  high_surrogate = 0;
+  out = result;
+  in = str;
+  while (out < result + n_bytes)
+    {
+      gunichar2 c = *in;
+      gunichar wc;
+
+      if (c >= 0xdc00 && c < 0xe000) /* low surrogate */
+	{
+	  wc = SURROGATE_VALUE (high_surrogate, c);
+	  high_surrogate = 0;
+	}
+      else if (c >= 0xd800 && c < 0xdc00) /* high surrogate */
+	{
+	  high_surrogate = c;
+	  goto next2;
+	}
+      else
+	wc = c;
+
+      /********** DIFFERENT for UTF8/UCS4 **********/
+      out += g_unichar_to_utf8 (wc, out);
+
+    next2:
+      in++;
+    }
+  
+  /********** DIFFERENT for UTF8/UCS4 **********/
+  *out = '\0';
+
+  if (items_written)
+    /********** DIFFERENT for UTF8/UCS4 **********/
+    *items_written = out - result;
+
+ err_out:
+  if (items_read)
+    *items_read = in - str;
+
+  return result;
+}
+
+/**
+ * g_utf16_to_ucs4:
+ * @str: a UTF-16 encoded string
+ * @len: the maximum length of @str to use. If @len < 0, then
+ *       the string is terminated with a 0 character.
+ * @items_read: location to store number of words read, or %NULL.
+ *              If %NULL, then %G_CONVERT_ERROR_PARTIAL_INPUT will be
+ *              returned in case @str contains a trailing partial
+ *              character. If an error occurs then the index of the
+ *              invalid input is stored here.
+ * @items_written: location to store number of characters written, or %NULL.
+ *                 The value stored here does not include the trailing
+ *                 0 character.
+ * @error: location to store the error occuring, or %NULL to ignore
+ *         errors. Any of the errors in #GConvertError other than
+ *         %G_CONVERT_ERROR_NO_CONVERSION may occur.
+ *
+ * Convert a string from UTF-16 to UCS-4. The result will be
+ * terminated with a 0 character.
+ * 
+ * Return value: a pointer to a newly allocated UCS-4 string.
+ *               This value must be freed with g_free(). If an
+ *               error occurs, %NULL will be returned and
+ *               @error set.
+ **/
+gunichar *
+g_utf16_to_ucs4 (const gunichar2  *str,
+		 glong             len,              
+		 glong            *items_read,       
+		 glong            *items_written,    
+		 GError          **error)
+{
+  const gunichar2 *in;
+  gchar *out;
+  gchar *result = NULL;
+  gint n_bytes;
+  gunichar high_surrogate;
+
+  g_return_val_if_fail (str != 0, NULL);
+
+  n_bytes = 0;
+  in = str;
+  high_surrogate = 0;
+  while ((len < 0 || in - str < len) && *in)
+    {
+      gunichar2 c = *in;
+      gunichar wc;
+
+      if (c >= 0xdc00 && c < 0xe000) /* low surrogate */
+	{
+	  if (high_surrogate)
+	    {
+	      wc = SURROGATE_VALUE (high_surrogate, c);
+	      high_surrogate = 0;
+	    }
+	  else
+	    {
+	      g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
+			   _("Invalid sequence in conversion input"));
+	      goto err_out;
+	    }
+	}
+      else
+	{
+	  if (high_surrogate)
+	    {
+	      g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
+			   _("Invalid sequence in conversion input"));
+	      goto err_out;
+	    }
+
+	  if (c >= 0xd800 && c < 0xdc00) /* high surrogate */
+	    {
+	      high_surrogate = c;
+	      goto next1;
+	    }
+	  else
+	    wc = c;
+	}
+
+      /********** DIFFERENT for UTF8/UCS4 **********/
+      n_bytes += sizeof (gunichar);
+
+    next1:
+      in++;
+    }
+
+  if (high_surrogate && !items_read)
+    {
+      g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_PARTIAL_INPUT,
+		   _("Partial character sequence at end of input"));
+      goto err_out;
+    }
+  
+  /* At this point, everything is valid, and we just need to convert
+   */
+  /********** DIFFERENT for UTF8/UCS4 **********/
+  result = g_malloc (n_bytes + 4);
+  
+  high_surrogate = 0;
+  out = result;
+  in = str;
+  while (out < result + n_bytes)
+    {
+      gunichar2 c = *in;
+      gunichar wc;
+
+      if (c >= 0xdc00 && c < 0xe000) /* low surrogate */
+	{
+	  wc = SURROGATE_VALUE (high_surrogate, c);
+	  high_surrogate = 0;
+	}
+      else if (c >= 0xd800 && c < 0xdc00) /* high surrogate */
+	{
+	  high_surrogate = c;
+	  goto next2;
+	}
+      else
+	wc = c;
+
+      /********** DIFFERENT for UTF8/UCS4 **********/
+      *(gunichar *)out = wc;
+      out += sizeof (gunichar);
+
+    next2:
+      in++;
+    }
+
+  /********** DIFFERENT for UTF8/UCS4 **********/
+  *(gunichar *)out = 0;
+
+  if (items_written)
+    /********** DIFFERENT for UTF8/UCS4 **********/
+    *items_written = (out - result) / sizeof (gunichar);
+
+ err_out:
+  if (items_read)
+    *items_read = in - str;
+
+  return (gunichar *)result;
+}
+
+/**
+ * g_utf8_to_utf16:
+ * @str: a UTF-8 encoded string
+ * @len: the maximum length of @str to use. If @len < 0, then
+ *       the string is nul-terminated.
+ 
+ * @items_read: location to store number of bytes read, or %NULL.
+ *              If %NULL, then %G_CONVERT_ERROR_PARTIAL_INPUT will be
+ *              returned in case @str contains a trailing partial
+ *              character. If an error occurs then the index of the
+ *              invalid input is stored here.
+ * @items_written: location to store number of words written, or %NULL.
+ *                 The value stored here does not include the trailing
+ *                 0 word.
+ * @error: location to store the error occuring, or %NULL to ignore
+ *         errors. Any of the errors in #GConvertError other than
+ *         %G_CONVERT_ERROR_NO_CONVERSION may occur.
+ *
+ * Convert a string from UTF-8 to UTF-16. A 0 word will be
+ * added to the result after the converted text.
+ * 
+ * Return value: a pointer to a newly allocated UTF-16 string.
+ *               This value must be freed with g_free(). If an
+ *               error occurs, %NULL will be returned and
+ *               @error set.
+ **/
+gunichar2 *
+g_utf8_to_utf16 (const gchar *str,
+		 glong        len,              
+		 glong       *items_read,       
+		 glong       *items_written,    
+		 GError     **error)
+{
+  gunichar2 *result = NULL;
+  gint n16;
+  const gchar *in;
+  gint i;
+
+  g_return_val_if_fail (str != NULL, NULL);
+
+  in = str;
+  n16 = 0;
+  while ((len < 0 || str + len - in > 0) && *in)
+    {
+      gunichar wc = g_utf8_get_char_extended (in, str + len - in);
+      if (wc & 0x80000000)
+	{
+	  if (wc == (gunichar)-2)
+	    {
+	      if (items_read)
+		break;
+	      else
+		g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_PARTIAL_INPUT,
+			     _("Partial character sequence at end of input"));
+	    }
+	  else
+	    g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
+			 _("Invalid byte sequence in conversion input"));
+
+	  goto err_out;
+	}
+
+      if (wc < 0xd800)
+	n16 += 1;
+      else if (wc < 0xe000)
+	{
+	  g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
+		       _("Invalid sequence in conversion input"));
+
+	  goto err_out;
+	}
+      else if (wc < 0x10000)
+	n16 += 1;
+      else if (wc < 0x110000)
+	n16 += 2;
+      else
+	{
+	  g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
+		       _("Character out of range for UTF-16"));
+
+	  goto err_out;
+	}
+      
+      in = g_utf8_next_char (in);
+    }
+
+  result = g_new (gunichar2, n16 + 1);
+  
+  in = str;
+  for (i = 0; i < n16;)
+    {
+      gunichar wc = g_utf8_get_char (in);
+
+      if (wc < 0x10000)
+	{
+	  result[i++] = wc;
+	}
+      else
+	{
+	  result[i++] = (wc - 0x10000) / 0x400 + 0xd800;
+	  result[i++] = (wc - 0x10000) % 0x400 + 0xdc00;
+	}
+      
+      in = g_utf8_next_char (in);
+    }
+
+  result[i] = 0;
+
+  if (items_written)
+    *items_written = n16;
+
+ err_out:
+  if (items_read)
+    *items_read = in - str;
+  
+  return result;
+}
+
+/**
+ * g_ucs4_to_utf16:
+ * @str: a UCS-4 encoded string
+ * @len: the maximum length of @str to use. If @len < 0, then
+ *       the string is terminated with a 0 character.
+ * @items_read: location to store number of bytes read, or %NULL.
+ *              If an error occurs then the index of the invalid input
+ *              is stored here.
+ * @items_written: location to store number of words written, or %NULL.
+ *                 The value stored here does not include the trailing
+ *                 0 word.
+ * @error: location to store the error occuring, or %NULL to ignore
+ *         errors. Any of the errors in #GConvertError other than
+ *         %G_CONVERT_ERROR_NO_CONVERSION may occur.
+ *
+ * Convert a string from UCS-4 to UTF-16. A 0 word will be
+ * added to the result after the converted text.
+ * 
+ * Return value: a pointer to a newly allocated UTF-16 string.
+ *               This value must be freed with g_free(). If an
+ *               error occurs, %NULL will be returned and
+ *               @error set.
+ **/
+gunichar2 *
+g_ucs4_to_utf16 (const gunichar  *str,
+		 glong            len,              
+		 glong           *items_read,       
+		 glong           *items_written,    
+		 GError         **error)
+{
+  gunichar2 *result = NULL;
+  gint n16;
+  gint i, j;
+
+  n16 = 0;
+  i = 0;
+  while ((len < 0 || i < len) && str[i])
+    {
+      gunichar wc = str[i];
+
+      if (wc < 0xd800)
+	n16 += 1;
+      else if (wc < 0xe000)
+	{
+	  g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
+		       _("Invalid sequence in conversion input"));
+
+	  goto err_out;
+	}
+      else if (wc < 0x10000)
+	n16 += 1;
+      else if (wc < 0x110000)
+	n16 += 2;
+      else
+	{
+	  g_set_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
+		       _("Character out of range for UTF-16"));
+
+	  goto err_out;
+	}
+
+      i++;
+    }
+  
+  result = g_new (gunichar2, n16 + 1);
+  
+  for (i = 0, j = 0; j < n16; i++)
+    {
+      gunichar wc = str[i];
+
+      if (wc < 0x10000)
+	{
+	  result[j++] = wc;
+	}
+      else
+	{
+	  result[j++] = (wc - 0x10000) / 0x400 + 0xd800;
+	  result[j++] = (wc - 0x10000) % 0x400 + 0xdc00;
+	}
+    }
+  result[j] = 0;
+
+  if (items_written)
+    *items_written = n16;
+  
+ err_out:
+  if (items_read)
+    *items_read = i;
+  
+  return result;
+}
+
+/**
+ * g_utf8_validate:
+ * @str: a pointer to character data
+ * @max_len: max bytes to validate, or -1 to go until nul
+ * @end: return location for end of valid data
+ * 
+ * Validates UTF-8 encoded text. @str is the text to validate;
+ * if @str is nul-terminated, then @max_len can be -1, otherwise
+ * @max_len should be the number of bytes to validate.
+ * If @end is non-%NULL, then the end of the valid range
+ * will be stored there (i.e. the address of the first invalid byte
+ * if some bytes were invalid, or the end of the text being validated
+ * otherwise).
+ *
+ * Returns %TRUE if all of @str was valid. Many GLib and GTK+
+ * routines <emphasis>require</emphasis> valid UTF-8 as input;
+ * so data read from a file or the network should be checked
+ * with g_utf8_validate() before doing anything else with it.
+ * 
+ * Return value: %TRUE if the text was valid UTF-8
+ **/
+gboolean
+g_utf8_validate (const gchar  *str,
+                 gssize        max_len,    
+                 const gchar **end)
+{
+
+  const gchar *p;
+
+  g_return_val_if_fail (str != NULL, FALSE);
+  
+  if (end)
+    *end = str;
+  
+  p = str;
+  
+  while ((max_len < 0 || (p - str) < max_len) && *p)
+    {
+      int i, mask = 0, len;
+      gunichar result;
+      unsigned char c = (unsigned char) *p;
+      
+      UTF8_COMPUTE (c, mask, len);
+
+      if (len == -1)
+        break;
+
+      /* check that the expected number of bytes exists in str */
+      if (max_len >= 0 &&
+          ((max_len - (p - str)) < len))
+        break;
+        
+      UTF8_GET (result, p, i, mask, len);
+
+      if (UTF8_LENGTH (result) != len) /* Check for overlong UTF-8 */
+	break;
+
+      if (result == (gunichar)-1)
+        break;
+
+      if (!UNICODE_VALID (result))
+	break;
+      
+      p += len;
+    }
+
+  if (end)
+    *end = p;
+
+  /* See that we covered the entire length if a length was
+   * passed in, or that we ended on a nul if not
+   */
+  if (max_len >= 0 &&
+      p != (str + max_len))
+    return FALSE;
+  else if (max_len < 0 &&
+           *p != '\0')
+    return FALSE;
+  else
+    return TRUE;
+}
+
+/**
+ * g_unichar_validate:
+ * @ch: a Unicode character
+ * 
+ * Checks whether @ch is a valid Unicode character. Some possible
+ * integer values of @ch will not be valid. 0 is considered a valid
+ * character, though it's normally a string terminator.
+ * 
+ * Return value: %TRUE if @ch is a valid Unicode character
+ **/
+gboolean
+g_unichar_validate (gunichar ch)
+{
+  return UNICODE_VALID (ch);
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gutils.c b/graf2d/win32gdk/gdk/src/glib/gutils.c
new file mode 100644
index 00000000000..53dc57755a9
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gutils.c
@@ -0,0 +1,1136 @@
+/* GLIB - Library of useful routines for C programming
+* Copyright (C) 1995-1998  Peter Mattis, Spencer Kimball and Josh MacDonald
+*
+* This library is free software; you can redistribute it and/or
+* modify it under the terms of the GNU Lesser General Public
+* License as published by the Free Software Foundation; either
+* version 2 of the License, or (at your option) any later version.
+*
+* This library is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this library; if not, write to the
+* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+* Boston, MA 02111-1307, USA.
+*/
+
+/*
+* Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+* file for a list of people on the GLib Team.  See the ChangeLog
+* files for a list of changes.  These files are distributed with
+* GLib at ftp://ftp.gtk.org/pub/gtk/. 
+*/
+
+/* 
+* MT safe for the unix part, FIXME: make the win32 part MT safe as well.
+*/
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+#include <stdarg.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+#include <errno.h>
+#ifdef HAVE_PWD_H
+#include <pwd.h>
+#endif
+#include <sys/types.h>
+#ifdef HAVE_SYS_PARAM_H
+#include <sys/param.h>
+#endif
+
+/* implement gutils's inline functions
+*/
+#define	G_IMPLEMENT_INLINES 1
+#define	__G_UTILS_C__
+#include "glib.h"
+
+#ifdef	MAXPATHLEN
+#define	G_PATH_LENGTH	MAXPATHLEN
+#elif	defined (PATH_MAX)
+#define	G_PATH_LENGTH	PATH_MAX
+#elif   defined (_PC_PATH_MAX)
+#define	G_PATH_LENGTH	sysconf(_PC_PATH_MAX)
+#else	
+#define G_PATH_LENGTH   2048
+#endif
+
+#ifdef G_PLATFORM_WIN32
+#  define STRICT			/* Strict typing, please */
+#  include <windows.h>
+#  undef STRICT
+#  include <ctype.h>
+#endif /* G_PLATFORM_WIN32 */
+
+#ifdef G_OS_WIN32
+#  include <direct.h>
+#endif
+
+#ifdef HAVE_CODESET
+#include <langinfo.h>
+#endif
+
+const guint glib_major_version = GLIB_MAJOR_VERSION;
+const guint glib_minor_version = GLIB_MINOR_VERSION;
+const guint glib_micro_version = GLIB_MICRO_VERSION;
+const guint glib_interface_age = 2; // GTW - no idea, didn't seem to be set anywhere! Not set or used by ROOT.
+const guint glib_binary_age = 2; // GTW - no idea, doesn't seem to be set or used by ROOT.
+
+// Have it, but defines wrong. Scary! GTW
+#if 0
+#if !defined (HAVE_MEMMOVE) && !defined (HAVE_WORKING_BCOPY)
+void 
+	g_memmove (gpointer dest, gconstpointer src, gulong len)
+{
+	gchar* destptr = dest;
+	const gchar* srcptr = src;
+	if (src + len < dest || dest + len < src)
+	{
+		bcopy (src, dest, len);
+		return;
+	}
+	else if (dest <= src)
+	{
+		while (len--)
+			*(destptr++) = *(srcptr++);
+	}
+	else
+	{
+		destptr += len;
+		srcptr += len;
+		while (len--)
+			*(--destptr) = *(--srcptr);
+	}
+}
+#endif /* !HAVE_MEMMOVE && !HAVE_WORKING_BCOPY */
+#endif
+
+void
+	g_atexit (GVoidFunc func)
+{
+	gint result;
+	const gchar *error = NULL;
+
+	/* keep this in sync with glib.h */
+
+#ifdef	G_NATIVE_ATEXIT
+	result = ATEXIT (func);
+	if (result)
+		error = g_strerror (errno);
+#elif defined (HAVE_ATEXIT)
+#  ifdef NeXT /* @#%@! NeXTStep */
+	result = !atexit ((void (*)(void)) func);
+	if (result)
+		error = g_strerror (errno);
+#  else
+	result = atexit ((void (*)(void)) func);
+	if (result)
+		error = g_strerror (errno);
+#  endif /* NeXT */
+#elif defined (HAVE_ON_EXIT)
+	result = on_exit ((void (*)(int, void *)) func, NULL);
+	if (result)
+		error = g_strerror (errno);
+#else
+	result = 0;
+	error = "no implementation";
+#endif /* G_NATIVE_ATEXIT */
+
+	if (error)
+		g_error ("Could not register atexit() function: %s", error);
+}
+
+/* Based on execvp() from GNU Libc.
+* Some of this code is cut-and-pasted into gspawn.c
+*/
+
+static gchar*
+	my_strchrnul (const gchar *str, gchar c)
+{
+	gchar *p = (gchar*)str;
+	while (*p && (*p != c))
+		++p;
+
+	return p;
+}
+
+#ifdef G_OS_WIN32
+
+gchar *inner_find_program_in_path (const gchar *program);
+
+gchar*
+	g_find_program_in_path (const gchar *program)
+{
+	const gchar *last_dot = strrchr (program, '.');
+
+	if (last_dot == NULL || strchr (last_dot, '\\') != NULL)
+	{
+		const gint program_length = strlen (program);
+		const gchar *pathext = getenv ("PATHEXT");
+		const gchar *p;
+		gchar *decorated_program;
+		gchar *retval;
+
+		if (pathext == NULL)
+			pathext = ".com;.exe;.bat";
+
+		p = pathext;
+		do
+		{
+			pathext = p;
+			p = my_strchrnul (pathext, ';');
+
+			decorated_program = g_malloc (program_length + (p-pathext) + 1);
+			memcpy (decorated_program, program, program_length);
+			memcpy (decorated_program+program_length, pathext, p-pathext);
+			decorated_program [program_length + (p-pathext)] = '\0';
+
+			retval = inner_find_program_in_path (decorated_program);
+			g_free (decorated_program);
+
+			if (retval != NULL)
+				return retval;
+		} while (*p++ != '\0');
+		return NULL;
+	}
+	else
+		return inner_find_program_in_path (program);
+}
+
+#define g_find_program_in_path inner_find_program_in_path
+#endif
+
+/**
+* g_find_program_in_path:
+* @program: a program name
+* 
+* Locates the first executable named @program in the user's path, in the
+* same way that execvp() would locate it. Returns an allocated string
+* with the absolute path name, or NULL if the program is not found in
+* the path. If @program is already an absolute path, returns a copy of
+* @program if @program exists and is executable, and NULL otherwise.
+* 
+* On Windows, if @program does not have a file type suffix, tries to
+* append the suffixes in the PATHEXT environment variable (if that
+* doesn't exists, the suffixes .com, .exe, and .bat) in turn, and
+* then look for the resulting file name in the same way as
+* CreateProcess() would. This means first in the directory where the
+* program was loaded from, then in the current directory, then in the
+* Windows 32-bit system directory, then in the Windows directory, and
+* finally in the directories in the PATH environment variable. If
+* the program is found, the return value contains the full name
+* including the type suffix.
+*
+* Return value: absolute path, or NULL
+**/
+gchar*
+	g_find_program_in_path (const gchar *program)
+{
+	const gchar *path, *p;
+	gchar *name, *freeme;
+#ifdef G_OS_WIN32
+	gchar *path_tmp;
+#endif
+	size_t len;
+	size_t pathlen;
+
+	g_return_val_if_fail (program != NULL, NULL);
+
+	/* If it is an absolute path, or a relative path including subdirectories,
+	* don't look in PATH.
+	*/
+	if (g_path_is_absolute (program)
+		|| strchr (program, G_DIR_SEPARATOR) != NULL)
+	{
+		if (g_file_test (program, G_FILE_TEST_IS_EXECUTABLE))
+			return g_strdup (program);
+		else
+			return NULL;
+	}
+
+	path = g_getenv ("PATH");
+#ifdef G_OS_UNIX
+	if (path == NULL)
+	{
+		/* There is no `PATH' in the environment.  The default
+		* search path in GNU libc is the current directory followed by
+		* the path `confstr' returns for `_CS_PATH'.
+		*/
+
+		/* In GLib we put . last, for security, and don't use the
+		* unportable confstr(); UNIX98 does not actually specify
+		* what to search if PATH is unset. POSIX may, dunno.
+		*/
+
+		path = "/bin:/usr/bin:.";
+	}
+#else
+	{
+		gchar *tmp;
+		gchar moddir[MAXPATHLEN], sysdir[MAXPATHLEN], windir[MAXPATHLEN];
+
+		GetModuleFileName (NULL, moddir, sizeof (moddir));
+		tmp = g_path_get_dirname (moddir);
+		GetSystemDirectory (sysdir, sizeof (sysdir));
+		GetWindowsDirectory (windir, sizeof (windir));
+		path_tmp = g_strconcat (tmp, ";.;", sysdir, ";", windir,
+			(path != NULL ? ";" : NULL),
+			(path != NULL ? path : NULL),
+			NULL);
+		g_free (tmp);
+		path = path_tmp;
+	}
+#endif
+
+	len = strlen (program) + 1;
+	pathlen = strlen (path);
+	freeme = name = g_malloc (pathlen + len + 1);
+
+	/* Copy the file name at the top, including '\0'  */
+	memcpy (name + pathlen + 1, program, len);
+	name = name + pathlen;
+	/* And add the slash before the filename  */
+	*name = G_DIR_SEPARATOR;
+
+	p = path;
+	do
+	{
+		char *startp;
+
+		path = p;
+		p = my_strchrnul (path, G_SEARCHPATH_SEPARATOR);
+
+		if (p == path)
+			/* Two adjacent colons, or a colon at the beginning or the end
+			* of `PATH' means to search the current directory.
+			*/
+			startp = name + 1;
+		else
+			startp = memcpy (name - (p - path), path, p - path);
+
+		if (g_file_test (startp, G_FILE_TEST_IS_EXECUTABLE))
+		{
+			gchar *ret;
+			ret = g_strdup (startp);
+			g_free (freeme);
+#ifdef G_OS_WIN32
+			g_free (path_tmp);
+#endif
+			return ret;
+		}
+	}
+	while (*p++ != '\0');
+
+	g_free (freeme);
+#ifdef G_OS_WIN32
+	g_free (path_tmp);
+#endif
+
+	return NULL;
+}
+
+gint
+	g_snprintf (gchar	*str,
+	gulong	 n,
+	gchar const *fmt,
+	...)
+{
+#ifdef	HAVE_VSNPRINTF
+	va_list args;
+	gint retval;
+
+	g_return_val_if_fail (str != NULL, 0);
+	g_return_val_if_fail (n > 0, 0);
+	g_return_val_if_fail (fmt != NULL, 0);
+
+	va_start (args, fmt);
+	retval = vsnprintf (str, n, fmt, args);
+	va_end (args);
+
+	if (retval < 0)
+	{
+		str[n-1] = '\0';
+		retval = strlen (str);
+	}
+
+	return retval;
+#else	/* !HAVE_VSNPRINTF */
+	gchar *printed;
+	va_list args;
+
+	g_return_val_if_fail (str != NULL, 0);
+	g_return_val_if_fail (n > 0, 0);
+	g_return_val_if_fail (fmt != NULL, 0);
+
+	va_start (args, fmt);
+	printed = g_strdup_vprintf (fmt, args);
+	va_end (args);
+
+	strncpy (str, printed, n);
+	str[n-1] = '\0';
+
+	g_free (printed);
+
+	return strlen (str);
+#endif	/* !HAVE_VSNPRINTF */
+}
+
+gint
+	g_vsnprintf (gchar	 *str,
+	gulong	  n,
+	gchar const *fmt,
+	va_list      args)
+{
+#ifdef	HAVE_VSNPRINTF
+	gint retval;
+
+	g_return_val_if_fail (str != NULL, 0);
+	g_return_val_if_fail (n > 0, 0);
+	g_return_val_if_fail (fmt != NULL, 0);
+
+	retval = vsnprintf (str, n, fmt, args);
+
+	if (retval < 0)
+	{
+		str[n-1] = '\0';
+		retval = strlen (str);
+	}
+
+	return retval;
+#else	/* !HAVE_VSNPRINTF */
+	gchar *printed;
+
+	g_return_val_if_fail (str != NULL, 0);
+	g_return_val_if_fail (n > 0, 0);
+	g_return_val_if_fail (fmt != NULL, 0);
+
+	printed = g_strdup_vprintf (fmt, args);
+	strncpy (str, printed, n);
+	str[n-1] = '\0';
+
+	g_free (printed);
+
+	return strlen (str);
+#endif /* !HAVE_VSNPRINTF */
+}
+
+guint	     
+	g_parse_debug_string  (const gchar     *string, 
+	const GDebugKey *keys, 
+	guint	        nkeys)
+{
+	guint i;
+	guint result = 0;
+
+	g_return_val_if_fail (string != NULL, 0);
+
+	if (!g_ascii_strcasecmp (string, "all"))
+	{
+		for (i=0; i<nkeys; i++)
+			result |= keys[i].value;
+	}
+	else
+	{
+		const gchar *p = string;
+		const gchar *q;
+		gboolean done = FALSE;
+
+		while (*p && !done)
+		{
+			q = strchr (p, ':');
+			if (!q)
+			{
+				q = p + strlen(p);
+				done = TRUE;
+			}
+
+			for (i=0; i<nkeys; i++)
+				if (g_ascii_strncasecmp(keys[i].key, p, q - p) == 0 &&
+					keys[i].key[q - p] == '\0')
+					result |= keys[i].value;
+
+			p = q + 1;
+		}
+	}
+
+	return result;
+}
+
+G_CONST_RETURN gchar*
+	g_basename (const gchar	   *file_name)
+{
+	register gchar *base;
+
+	g_return_val_if_fail (file_name != NULL, NULL);
+
+	base = strrchr (file_name, G_DIR_SEPARATOR);
+	if (base)
+		return base + 1;
+
+#ifdef G_OS_WIN32
+	if (g_ascii_isalpha (file_name[0]) && file_name[1] == ':')
+		return (gchar*) file_name + 2;
+#endif /* G_OS_WIN32 */
+
+	return (gchar*) file_name;
+}
+
+gchar*
+	g_path_get_basename (const gchar   *file_name)
+{
+	register gssize base;             
+	register gssize last_nonslash;    
+	gsize len;    
+	gchar *retval;
+
+	g_return_val_if_fail (file_name != NULL, NULL);
+
+	if (file_name[0] == '\0')
+		/* empty string */
+			return g_strdup (".");
+
+	last_nonslash = strlen (file_name) - 1;
+
+	while (last_nonslash >= 0 && file_name [last_nonslash] == G_DIR_SEPARATOR)
+		last_nonslash--;
+
+	if (last_nonslash == -1)
+		/* string only containing slashes */
+			return g_strdup (G_DIR_SEPARATOR_S);
+
+#ifdef G_OS_WIN32
+	if (last_nonslash == 1 && g_ascii_isalpha (file_name[0]) && file_name[1] == ':')
+		/* string only containing slashes and a drive */
+			return g_strdup (G_DIR_SEPARATOR_S);
+#endif /* G_OS_WIN32 */
+
+	base = last_nonslash;
+
+	while (base >=0 && file_name [base] != G_DIR_SEPARATOR)
+		base--;
+
+#ifdef G_OS_WIN32
+	if (base == -1 && g_ascii_isalpha (file_name[0]) && file_name[1] == ':')
+		base = 1;
+#endif /* G_OS_WIN32 */
+
+	len = last_nonslash - base;
+	retval = g_malloc (len + 1);
+	memcpy (retval, file_name + base + 1, len);
+	retval [len] = '\0';
+	return retval;
+}
+
+gboolean
+	g_path_is_absolute (const gchar *file_name)
+{
+	g_return_val_if_fail (file_name != NULL, FALSE);
+
+	if (file_name[0] == G_DIR_SEPARATOR
+#ifdef G_OS_WIN32
+		|| file_name[0] == '/'
+#endif
+		)
+		return TRUE;
+
+#ifdef G_OS_WIN32
+	/* Recognize drive letter on native Windows */
+	if (g_ascii_isalpha (file_name[0]) && file_name[1] == ':' && (file_name[2] == G_DIR_SEPARATOR || file_name[2] == '/'))
+		return TRUE;
+#endif /* G_OS_WIN32 */
+
+	return FALSE;
+}
+
+G_CONST_RETURN gchar*
+	g_path_skip_root (const gchar *file_name)
+{
+	g_return_val_if_fail (file_name != NULL, NULL);
+
+#ifdef G_PLATFORM_WIN32
+	/* Skip \\server\share (Win32) or //server/share (Cygwin) */
+	if (file_name[0] == G_DIR_SEPARATOR &&
+		file_name[1] == G_DIR_SEPARATOR &&
+		file_name[2])
+	{
+		gchar *p;
+
+		if ((p = strchr (file_name + 2, G_DIR_SEPARATOR)) > file_name + 2 &&
+			p[1])
+		{
+			file_name = p + 1;
+
+			while (file_name[0] && file_name[0] != G_DIR_SEPARATOR)
+				file_name++;
+
+			/* Possibly skip a backslash after the share name */
+			if (file_name[0] == G_DIR_SEPARATOR)
+				file_name++;
+
+			return (gchar *)file_name;
+		}
+	}
+#endif
+
+	/* Skip initial slashes */
+	if (file_name[0] == G_DIR_SEPARATOR)
+	{
+		while (file_name[0] == G_DIR_SEPARATOR)
+			file_name++;
+		return (gchar *)file_name;
+	}
+
+#ifdef G_OS_WIN32
+	/* Skip X:\ */
+	if (g_ascii_isalpha (file_name[0]) && file_name[1] == ':' && file_name[2] == G_DIR_SEPARATOR)
+		return (gchar *)file_name + 3;
+#endif
+
+	return NULL;
+}
+
+gchar*
+	g_path_get_dirname (const gchar	   *file_name)
+{
+	register gchar *base;
+	register gsize len;    
+
+	g_return_val_if_fail (file_name != NULL, NULL);
+
+	base = strrchr (file_name, G_DIR_SEPARATOR);
+	if (!base)
+		return g_strdup (".");
+	while (base > file_name && *base == G_DIR_SEPARATOR)
+		base--;
+	len = (guint) 1 + base - file_name;
+
+	base = g_new (gchar, len + 1);
+	g_memmove (base, file_name, len);
+	base[len] = 0;
+
+	return base;
+}
+
+gchar*
+	g_get_current_dir (void)
+{
+	gchar *buffer = NULL;
+	gchar *dir = NULL;
+	static gulong max_len = 0;
+
+	if (max_len == 0) 
+		max_len = (G_PATH_LENGTH == -1) ? 2048 : G_PATH_LENGTH;
+
+	/* We don't use getcwd(3) on SUNOS, because, it does a popen("pwd")
+	* and, if that wasn't bad enough, hangs in doing so.
+	*/
+#if	(defined (sun) && !defined (__SVR4)) || !defined(HAVE_GETCWD)
+	buffer = g_new (gchar, max_len + 1);
+	*buffer = 0;
+	dir = getwd (buffer);
+#else	/* !sun || !HAVE_GETCWD */
+	while (max_len < G_MAXULONG / 2)
+	{
+		buffer = g_new (gchar, max_len + 1);
+		*buffer = 0;
+		dir = getcwd (buffer, max_len);
+
+		if (dir || errno != ERANGE)
+			break;
+
+		g_free (buffer);
+		max_len *= 2;
+	}
+#endif	/* !sun || !HAVE_GETCWD */
+
+	if (!dir || !*buffer)
+	{
+		/* hm, should we g_error() out here?
+		* this can happen if e.g. "./" has mode \0000
+		*/
+		buffer[0] = G_DIR_SEPARATOR;
+		buffer[1] = 0;
+	}
+
+	dir = g_strdup (buffer);
+	g_free (buffer);
+
+	return dir;
+}
+
+G_CONST_RETURN gchar*
+	g_getenv (const gchar *variable)
+{
+#ifndef G_OS_WIN32
+	g_return_val_if_fail (variable != NULL, NULL);
+
+	return getenv (variable);
+#else
+	G_LOCK_DEFINE_STATIC (getenv);
+	struct env_struct
+	{
+		gchar *key;
+		gchar *value;
+	} *env;
+	static GArray *environs = NULL;
+	gchar *system_env;
+	guint length, i;
+	gchar dummy[2];
+
+	g_return_val_if_fail (variable != NULL, NULL);
+
+	G_LOCK (getenv);
+
+	if (!environs)
+		environs = g_array_new (FALSE, FALSE, sizeof (struct env_struct));
+
+	/* First we try to find the envinronment variable inside the already
+	* found ones.
+	*/
+
+	for (i = 0; i < environs->len; i++)
+	{
+		env = &g_array_index (environs, struct env_struct, i);
+		if (strcmp (env->key, variable) == 0)
+		{
+			g_assert (env->value);
+			G_UNLOCK (getenv);
+			return env->value;
+		}
+	}
+
+	/* If not found, we ask the system */
+
+	system_env = getenv (variable);
+	if (!system_env)
+	{
+		G_UNLOCK (getenv);
+		return NULL;
+	}
+
+	/* On Windows NT, it is relatively typical that environment variables
+	* contain references to other environment variables. Handle that by
+	* calling ExpandEnvironmentStrings.
+	*/
+
+	g_array_set_size (environs, environs->len + 1);
+
+	env = &g_array_index (environs, struct env_struct, environs->len - 1);
+
+	/* First check how much space we need */
+	length = ExpandEnvironmentStrings (system_env, dummy, 2);
+
+	/* Then allocate that much, and actualy do the expansion and insert
+	* the new found pair into our buffer 
+	*/
+
+	env->value = g_malloc (length);
+	env->key = g_strdup (variable);
+
+	ExpandEnvironmentStrings (system_env, env->value, length);
+
+	G_UNLOCK (getenv);
+	return env->value;
+#endif
+}
+
+
+G_LOCK_DEFINE_STATIC (g_utils_global);
+
+static	gchar	*g_tmp_dir = NULL;
+static	gchar	*g_user_name = NULL;
+static	gchar	*g_real_name = NULL;
+static	gchar	*g_home_dir = NULL;
+
+/* HOLDS: g_utils_global_lock */
+static void
+	g_get_any_init (void)
+{
+	if (!g_tmp_dir)
+	{
+		g_tmp_dir = g_strdup (g_getenv ("TMPDIR"));
+		if (!g_tmp_dir)
+			g_tmp_dir = g_strdup (g_getenv ("TMP"));
+		if (!g_tmp_dir)
+			g_tmp_dir = g_strdup (g_getenv ("TEMP"));
+
+#ifdef P_tmpdir
+		if (!g_tmp_dir)
+		{
+			gsize k;    
+			g_tmp_dir = g_strdup (P_tmpdir);
+			k = strlen (g_tmp_dir);
+			if (k > 1 && g_tmp_dir[k - 1] == G_DIR_SEPARATOR)
+				g_tmp_dir[k - 1] = '\0';
+		}
+#endif
+
+		if (!g_tmp_dir)
+		{
+#ifndef G_OS_WIN32
+			g_tmp_dir = g_strdup ("/tmp");
+#else /* G_OS_WIN32 */
+			g_tmp_dir = g_strdup ("C:\\");
+#endif /* G_OS_WIN32 */
+		}
+
+		if (!g_home_dir)
+			g_home_dir = g_strdup (g_getenv ("HOME"));
+
+#ifdef G_OS_WIN32
+		/* In case HOME is Unix-style (it happens), convert it to
+		* Windows style.
+		*/
+		if (g_home_dir)
+		{
+			gchar *p;
+			while ((p = strchr (g_home_dir, '/')) != NULL)
+				*p = '\\';
+		}
+
+		if (!g_home_dir)
+		{
+			/* USERPROFILE is probably the closest equivalent to $HOME? */
+			if (getenv ("USERPROFILE") != NULL)
+				g_home_dir = g_strdup (g_getenv ("USERPROFILE"));
+		}
+
+		if (!g_home_dir)
+		{
+			/* At least at some time, HOMEDRIVE and HOMEPATH were used
+			* to point to the home directory, I think. But on Windows
+			* 2000 HOMEDRIVE seems to be equal to SYSTEMDRIVE, and
+			* HOMEPATH is its root "\"?
+			*/
+			if (getenv ("HOMEDRIVE") != NULL && getenv ("HOMEPATH") != NULL)
+			{
+				gchar *homedrive, *homepath;
+
+				homedrive = g_strdup (g_getenv ("HOMEDRIVE"));
+				homepath = g_strdup (g_getenv ("HOMEPATH"));
+
+				g_home_dir = g_strconcat (homedrive, homepath, NULL);
+				g_free (homedrive);
+				g_free (homepath);
+			}
+		}
+#endif /* G_OS_WIN32 */
+
+#ifdef HAVE_PWD_H
+		{
+			struct passwd *pw = NULL;
+			gpointer buffer = NULL;
+			gint error;
+
+#  if defined (HAVE_POSIX_GETPWUID_R) || defined (HAVE_NONPOSIX_GETPWUID_R)
+			struct passwd pwd;
+#    ifdef _SC_GETPW_R_SIZE_MAX  
+			/* This reurns the maximum length */
+			glong bufsize = sysconf (_SC_GETPW_R_SIZE_MAX);
+
+			if (bufsize < 0)
+				bufsize = 64;
+#    else /* _SC_GETPW_R_SIZE_MAX */
+			glong bufsize = 64;
+#    endif /* _SC_GETPW_R_SIZE_MAX */
+
+			do
+			{
+				g_free (buffer);
+				buffer = g_malloc (bufsize);
+				errno = 0;
+
+#    ifdef HAVE_POSIX_GETPWUID_R
+				error = getpwuid_r (getuid (), &pwd, buffer, bufsize, &pw);
+				error = error < 0 ? errno : error;
+#    else /* HAVE_NONPOSIX_GETPWUID_R */
+#      ifdef _AIX
+				error = getpwuid_r (getuid (), &pwd, buffer, bufsize);
+				pw = error == 0 ? &pwd : NULL;
+#      else /* !_AIX */
+				pw = getpwuid_r (getuid (), &pwd, buffer, bufsize);
+				error = pw ? 0 : errno;
+#      endif /* !_AIX */            
+#    endif /* HAVE_NONPOSIX_GETPWUID_R */
+
+				if (!pw)
+				{
+					/* we bail out prematurely if the user id can't be found
+					* (should be pretty rare case actually), or if the buffer
+					* should be sufficiently big and lookups are still not
+					* successfull.
+					*/
+					if (error == 0 || error == ENOENT)
+					{
+						g_warning ("getpwuid_r(): failed due to unknown user id (%lu)",
+							(gulong) getuid ());
+						break;
+					}
+					if (bufsize > 32 * 1024)
+					{
+						g_warning ("getpwuid_r(): failed due to: %s.",
+							g_strerror (error));
+						break;
+					}
+
+					bufsize *= 2;
+				}
+			}
+			while (!pw);
+#  endif /* HAVE_POSIX_GETPWUID_R || HAVE_NONPOSIX_GETPWUID_R */
+
+			if (!pw)
+			{
+				setpwent ();
+				pw = getpwuid (getuid ());
+				endpwent ();
+			}
+			if (pw)
+			{
+				g_user_name = g_strdup (pw->pw_name);
+				g_real_name = g_strdup (pw->pw_gecos);
+				if (!g_home_dir)
+					g_home_dir = g_strdup (pw->pw_dir);
+			}
+			g_free (buffer);
+		}
+
+#else /* !HAVE_PWD_H */
+
+#  ifdef G_OS_WIN32
+		{
+			guint len = 17;
+			gchar buffer[17];
+
+			if (GetUserName ((LPTSTR) buffer, (LPDWORD) &len))
+			{
+				g_user_name = g_strdup (buffer);
+				g_real_name = g_strdup (buffer);
+			}
+		}
+#  endif /* G_OS_WIN32 */
+
+#endif /* !HAVE_PWD_H */
+
+#ifdef __EMX__
+		/* change '\\' in %HOME% to '/' */
+		g_strdelimit (g_home_dir, "\\",'/');
+#endif
+		if (!g_user_name)
+			g_user_name = g_strdup ("somebody");
+		if (!g_real_name)
+			g_real_name = g_strdup ("Unknown");
+		else
+		{
+			gchar *p;
+
+			for (p = g_real_name; *p; p++)
+				if (*p == ',')
+				{
+					*p = 0;
+					p = g_strdup (g_real_name);
+					g_free (g_real_name);
+					g_real_name = p;
+					break;
+				}
+		}
+	}
+}
+
+G_CONST_RETURN gchar*
+	g_get_user_name (void)
+{
+	G_LOCK (g_utils_global);
+	if (!g_tmp_dir)
+		g_get_any_init ();
+	G_UNLOCK (g_utils_global);
+
+	return g_user_name;
+}
+
+G_CONST_RETURN gchar*
+	g_get_real_name (void)
+{
+	G_LOCK (g_utils_global);
+	if (!g_tmp_dir)
+		g_get_any_init ();
+	G_UNLOCK (g_utils_global);
+
+	return g_real_name;
+}
+
+/* Return the home directory of the user. If there is a HOME
+* environment variable, its value is returned, otherwise use some
+* system-dependent way of finding it out. If no home directory can be
+* deduced, return NULL.
+*/
+
+G_CONST_RETURN gchar*
+	g_get_home_dir (void)
+{
+	G_LOCK (g_utils_global);
+	if (!g_tmp_dir)
+		g_get_any_init ();
+	G_UNLOCK (g_utils_global);
+
+	return g_home_dir;
+}
+
+/* Return a directory to be used to store temporary files. This is the
+* value of the TMPDIR, TMP or TEMP environment variables (they are
+* checked in that order). If none of those exist, use P_tmpdir from
+* stdio.h.  If that isn't defined, return "/tmp" on POSIXly systems,
+* and C:\ on Windows.
+*/
+
+G_CONST_RETURN gchar*
+	g_get_tmp_dir (void)
+{
+	G_LOCK (g_utils_global);
+	if (!g_tmp_dir)
+		g_get_any_init ();
+	G_UNLOCK (g_utils_global);
+
+	return g_tmp_dir;
+}
+
+static gchar *g_prgname = NULL;
+
+gchar*
+	g_get_prgname (void)
+{
+	gchar* retval;
+
+	G_LOCK (g_utils_global);
+	retval = g_prgname;
+	G_UNLOCK (g_utils_global);
+
+	return retval;
+}
+
+void
+	g_set_prgname (const gchar *prgname)
+{
+	gchar *c;
+
+	G_LOCK (g_utils_global);
+	c = g_prgname;
+	g_prgname = g_strdup (prgname);
+	g_free (c);
+	G_UNLOCK (g_utils_global);
+}
+
+guint
+	g_direct_hash (gconstpointer v)
+{
+	return GPOINTER_TO_UINT (v);
+}
+
+gboolean
+	g_direct_equal (gconstpointer v1,
+	gconstpointer v2)
+{
+	return v1 == v2;
+}
+
+gboolean
+	g_int_equal (gconstpointer v1,
+	gconstpointer v2)
+{
+	return *((const gint*) v1) == *((const gint*) v2);
+}
+
+guint
+	g_int_hash (gconstpointer v)
+{
+	return *(const gint*) v;
+}
+
+/**
+* g_nullify_pointer:
+* @nullify_location: the memory address of the pointer.
+* 
+* Set the pointer at the specified location to %NULL.
+**/
+void
+	g_nullify_pointer (gpointer *nullify_location)
+{
+	g_return_if_fail (nullify_location != NULL);
+
+	*nullify_location = NULL;
+}
+
+/**
+* g_get_codeset:
+* 
+* Get the codeset for the current locale.
+* 
+* Return value: a newly allocated string containing the name
+* of the codeset. This string must be freed with g_free().
+**/
+gchar *
+	g_get_codeset (void)
+{
+#ifdef HAVE_CODESET  
+	char *result = nl_langinfo (CODESET);
+	return g_strdup (result);
+#else
+#ifdef G_PLATFORM_WIN32
+	return g_strdup_printf ("CP%d", GetACP ());
+#else
+	/* FIXME: Do something more intelligent based on setlocale (LC_CTYPE, NULL)
+	*/
+	return g_strdup ("ISO-8859-1");
+#endif
+#endif
+}
+
+#ifdef ENABLE_NLS
+
+#include <libintl.h>
+
+
+#ifdef G_OS_WIN32
+
+/* On Windows we don't want any hard-coded path names */
+
+#undef GLIB_LOCALE_DIR
+/* It's OK to leak the g_win32_get_...() and g_strdup_printf() results
+* below, as this macro is called only once. */
+#define GLIB_LOCALE_DIR					      	\
+	g_win32_get_package_installation_subdirectory			\
+	(GETTEXT_PACKAGE,						\
+	g_strdup_printf ("libglib-%d.%d-%d.dll",			\
+	GLIB_MAJOR_VERSION,				\
+	GLIB_MINOR_VERSION,				\
+	GLIB_MICRO_VERSION - GLIB_BINARY_AGE),	\
+	"share\\locale")
+
+#endif /* !G_OS_WIN32 */
+
+G_CONST_RETURN gchar *
+	_glib_gettext (const gchar *str)
+{
+	static gboolean _glib_gettext_initialized = FALSE;
+
+	if (!_glib_gettext_initialized)
+	{
+		bindtextdomain(GETTEXT_PACKAGE, GLIB_LOCALE_DIR);
+		_glib_gettext_initialized = TRUE;
+	}
+
+	return dgettext (GETTEXT_PACKAGE, str);
+}
+
+#endif /* ENABLE_NLS */
+
+
diff --git a/graf2d/win32gdk/gdk/src/glib/gutils.h b/graf2d/win32gdk/gdk/src/glib/gutils.h
index 25f9796f8b1..f449483843a 100644
--- a/graf2d/win32gdk/gdk/src/glib/gutils.h
+++ b/graf2d/win32gdk/gdk/src/glib/gutils.h
@@ -27,7 +27,7 @@
 #ifndef __G_UTILS_H__
 #define __G_UTILS_H__
 
-#include <g_types.h>
+#include <glib/gtypes.h>
 #include <stdarg.h>
 
 G_BEGIN_DECLS
@@ -113,12 +113,12 @@ G_BEGIN_DECLS
 
 /* Retrive static string info
  */
-gchar*	g_get_user_name		(void);
-gchar*	g_get_real_name		(void);
-gchar*	g_get_home_dir		(void);
-gchar*	g_get_tmp_dir		(void);
-gchar*	g_get_prgname		(void);
-void	g_set_prgname		(const gchar *prgname);
+G_CONST_RETURN gchar* g_get_user_name      (void);
+G_CONST_RETURN gchar* g_get_real_name      (void);
+G_CONST_RETURN gchar* g_get_home_dir       (void);
+G_CONST_RETURN gchar* g_get_tmp_dir        (void);
+gchar*                g_get_prgname        (void);
+void                  g_set_prgname        (const gchar *prgname);
 
 
 typedef struct _GDebugKey	GDebugKey;
@@ -130,40 +130,51 @@ struct _GDebugKey
 
 /* Miscellaneous utility functions
  */
-guint	g_parse_debug_string	(const gchar *string,
-				 GDebugKey   *keys,
-				 guint	      nkeys);
-gint	g_snprintf		(gchar	     *string,
-				 gulong	      n,
-				 gchar const *format,
-				 ...) G_GNUC_PRINTF (3, 4);
-gint	g_vsnprintf		(gchar	     *string,
-				 gulong	      n,
-				 gchar const *format,
-				 va_list      args);
+guint                 g_parse_debug_string (const gchar     *string,
+					    const GDebugKey *keys,
+					    guint            nkeys);
+
+gint                  g_snprintf           (gchar       *string,
+					    gulong       n,
+					    gchar const *format,
+					    ...) G_GNUC_PRINTF (3, 4);
+gint                  g_vsnprintf          (gchar       *string,
+					    gulong       n,
+					    gchar const *format,
+					    va_list      args);
+
 /* Check if a file name is an absolute path */
-gboolean g_path_is_absolute	(const gchar *file_name);
+gboolean              g_path_is_absolute   (const gchar *file_name);
+
 /* In case of absolute paths, skip the root part */
-gchar*  g_path_skip_root	(gchar       *file_name);
+G_CONST_RETURN gchar* g_path_skip_root     (const gchar *file_name);
+
+#ifndef G_DISABLE_DEPRECATED
 
 /* These two functions are deprecated and will be removed in the next
  * major release of GLib. Use g_path_get_dirname/g_path_get_basename
  * instead. Whatch out! The string returned by g_path_get_basename
  * must be g_freed, while the string returned by g_basename must not.*/
-gchar*	g_basename		(const gchar *file_name);
-gchar*	g_dirname		(const gchar *file_name);
+G_CONST_RETURN gchar* g_basename           (const gchar *file_name);
+#define g_dirname g_path_get_dirname
+
+#endif /* G_DISABLE_DEPRECATED */
 
 /* The returned strings are newly allocated with g_malloc() */
-gchar*	g_get_current_dir	(void);
-gchar*	g_path_get_basename	(const gchar *file_name);
-gchar*	g_path_get_dirname	(const gchar *file_name);
+gchar*                g_get_current_dir    (void);
+gchar*                g_path_get_basename  (const gchar *file_name);
+gchar*                g_path_get_dirname   (const gchar *file_name);
+
+
+/* Set the pointer at the specified location to NULL */
+void                  g_nullify_pointer    (gpointer    *nullify_location);
 
 /* Get the codeset for the current locale */
 /* gchar * g_get_codeset    (void); */
 
 /* return the environment string for the variable. The returned memory
  * must not be freed. */
-gchar*  g_getenv		(const gchar *variable);
+G_CONST_RETURN gchar* g_getenv             (const gchar *variable);
 
 
 /* we try to provide a usefull equivalent for ATEXIT if it is
@@ -188,11 +199,11 @@ gchar*  g_find_program_in_path  (const gchar *program);
 
 /* Bit tests
  */
-G_INLINE_FUNC gint	g_bit_nth_lsf (guint32 mask,
+G_INLINE_FUNC gint	g_bit_nth_lsf (gulong  mask,
 				       gint    nth_bit);
-G_INLINE_FUNC gint	g_bit_nth_msf (guint32 mask,
+G_INLINE_FUNC gint	g_bit_nth_msf (gulong  mask,
 				       gint    nth_bit);
-G_INLINE_FUNC guint	g_bit_storage (guint number);
+G_INLINE_FUNC guint	g_bit_storage (gulong  number);
 
 /* Trash Stacks
  * elements need to be >= sizeof (gpointer)
@@ -213,35 +224,35 @@ G_INLINE_FUNC guint	g_trash_stack_height	(GTrashStack **stack_p);
  */
 #if defined (G_CAN_INLINE) || defined (__G_UTILS_C__)
 G_INLINE_FUNC gint
-g_bit_nth_lsf (guint32 mask,
-	       gint    nth_bit)
+g_bit_nth_lsf (gulong mask,
+	       gint   nth_bit)
 {
   do
     {
       nth_bit++;
-      if (mask & (1 << (guint) nth_bit))
+      if (mask & (1 << (gulong) nth_bit))
 	return nth_bit;
     }
   while (nth_bit < 32);
   return -1;
 }
 G_INLINE_FUNC gint
-g_bit_nth_msf (guint32 mask,
-	       gint    nth_bit)
+g_bit_nth_msf (gulong mask,
+	       gint   nth_bit)
 {
   if (nth_bit < 0)
-    nth_bit = 32;
+    nth_bit = GLIB_SIZEOF_LONG * 8;
   do
     {
       nth_bit--;
-      if (mask & (1 << (guint) nth_bit))
+      if (mask & (1 << (gulong) nth_bit))
 	return nth_bit;
     }
   while (nth_bit > 0);
   return -1;
 }
 G_INLINE_FUNC guint
-g_bit_storage (guint number)
+g_bit_storage (gulong number)
 {
   register guint n_bits = 0;
   
@@ -305,16 +316,6 @@ g_trash_stack_height (GTrashStack **stack_p)
  * we prefix variable declarations so they can
  * properly get exported in windows dlls.
  */
-#ifdef G_OS_WIN32
-#  ifdef GLIB_COMPILATION
-#    define GLIB_VAR __declspec(dllexport)
-#  else /* !GLIB_COMPILATION */
-#    define GLIB_VAR extern __declspec(dllimport)
-#  endif /* !GLIB_COMPILATION */
-#else /* !G_OS_WIN32 */
-#  define GLIB_VAR extern
-#endif /* !G_OS_WIN32 */
-
 GLIB_VAR const guint glib_major_version;
 GLIB_VAR const guint glib_minor_version;
 GLIB_VAR const guint glib_micro_version;
diff --git a/graf2d/win32gdk/gdk/src/glib/gwin32.c b/graf2d/win32gdk/gdk/src/glib/gwin32.c
new file mode 100644
index 00000000000..42e2b5ec606
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/gwin32.c
@@ -0,0 +1,837 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1998  Peter Mattis, Spencer Kimball and Josh MacDonald
+ * Copyright (C) 1998-1999  Tor Lillqvist
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GLib Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+/* 
+ * MT safe for the unix part, FIXME: make the win32 part MT safe as well.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include "glibconfig.h"
+
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+#include <errno.h>
+
+#define STRICT			/* Strict typing, please */
+#include <windows.h>
+#undef STRICT
+#ifndef G_WITH_CYGWIN
+#include <direct.h>
+#endif
+#include <errno.h>
+#include <ctype.h>
+#ifdef _MSC_VER
+#  include <io.h>
+#endif /* _MSC_VER */
+
+#include "glib.h"
+
+#ifdef G_WITH_CYGWIN
+#include <sys/cygwin.h>
+#endif
+
+#ifndef G_WITH_CYGWIN
+
+gint
+g_win32_ftruncate (gint  fd,
+		   guint size)
+{
+  HANDLE hfile;
+  guint curpos;
+
+  g_return_val_if_fail (fd >= 0, -1);
+  
+  hfile = (HANDLE) _get_osfhandle (fd);
+  curpos = SetFilePointer (hfile, 0, NULL, FILE_CURRENT);
+  if (curpos == 0xFFFFFFFF
+      || SetFilePointer (hfile, size, NULL, FILE_BEGIN) == 0xFFFFFFFF
+      || !SetEndOfFile (hfile))
+    {
+      gint error = GetLastError ();
+
+      switch (error)
+	{
+	case ERROR_INVALID_HANDLE:
+	  errno = EBADF;
+	  break;
+	default:
+	  errno = EIO;
+	  break;
+	}
+
+      return -1;
+    }
+
+  return 0;
+}
+
+DIR*
+g_win32_opendir (const char *dirname)
+{
+  DIR *result;
+  gchar *mask;
+  guint k;
+
+  g_return_val_if_fail (dirname != NULL, NULL);
+
+  result = g_new0 (DIR, 1);
+  result->find_file_data = g_new0 (WIN32_FIND_DATA, 1);
+  result->dir_name = g_strdup (dirname);
+  
+  k = strlen (result->dir_name);
+  if (k && result->dir_name[k - 1] == '\\')
+    {
+      result->dir_name[k - 1] = '\0';
+    }
+  mask = g_strdup_printf ("%s\\*", result->dir_name);
+
+  result->find_file_handle = (guint) FindFirstFile (mask,
+					     (LPWIN32_FIND_DATA) result->find_file_data);
+  g_free (mask);
+
+  if (result->find_file_handle == (guint) INVALID_HANDLE_VALUE)
+    {
+      int error = GetLastError ();
+
+      g_free (result->dir_name);
+      g_free (result->find_file_data);
+      g_free (result);
+      switch (error)
+	{
+	default:
+	  errno = EIO;
+	  return NULL;
+	}
+    }
+  result->just_opened = TRUE;
+
+  return result;
+}
+
+struct dirent*
+g_win32_readdir (DIR *dir)
+{
+  gchar *basename;
+
+  g_return_val_if_fail (dir != NULL, NULL);
+
+  if (dir->just_opened)
+    dir->just_opened = FALSE;
+  else
+    {
+      if (!FindNextFile ((HANDLE) dir->find_file_handle,
+			 (LPWIN32_FIND_DATA) dir->find_file_data))
+	{
+	  int error = GetLastError ();
+
+	  switch (error)
+	    {
+	    case ERROR_NO_MORE_FILES:
+	      return NULL;
+	    default:
+	      errno = EIO;
+	      return NULL;
+	    }
+	}
+    }
+  
+  basename = g_path_get_basename (((LPWIN32_FIND_DATA) dir->find_file_data)->cFileName);
+
+  strcpy (dir->readdir_result.d_name, basename);
+
+  g_free (basename);
+      
+  return &dir->readdir_result;
+}
+
+void
+g_win32_rewinddir (DIR *dir)
+{
+  gchar *mask;
+
+  g_return_if_fail (dir != NULL);
+
+  if (!FindClose ((HANDLE) dir->find_file_handle))
+    g_warning ("gwin_rewinddir(): FindClose() failed\n");
+
+  mask = g_strdup_printf ("%s\\*", dir->dir_name);
+  dir->find_file_handle = (guint) FindFirstFile (mask,
+					  (LPWIN32_FIND_DATA) dir->find_file_data);
+  g_free (mask);
+
+  if (dir->find_file_handle == (guint) INVALID_HANDLE_VALUE)
+    {
+      int error = GetLastError ();
+
+      switch (error)
+	{
+	default:
+	  errno = EIO;
+	  return;
+	}
+    }
+  dir->just_opened = TRUE;
+}  
+
+gint
+g_win32_closedir (DIR *dir)
+{
+  g_return_val_if_fail (dir != NULL, -1);
+
+  if (!FindClose ((HANDLE) dir->find_file_handle))
+    {
+      int error = GetLastError ();
+
+      switch (error)
+	{
+	default:
+	  errno = EIO; return -1;
+	}
+    }
+
+  g_free (dir->dir_name);
+  g_free (dir->find_file_data);
+  g_free (dir);
+
+  return 0;
+}
+#endif
+
+/* msvc 5.0 headers don't have latest language and sublanguage codes */
+#ifndef LANG_ARMENIAN
+#define LANG_ARMENIAN 0x2b
+#endif
+#ifndef LANG_ASSAMESE
+#define LANG_ASSAMESE 0x4d
+#endif
+#ifndef LANG_AZERI
+#define LANG_AZERI 0x2c
+#endif
+#ifndef LANG_BENGALI
+#define LANG_BENGALI 0x45
+#endif
+#ifndef LANG_GEORGIAN
+#define LANG_GEORGIAN 0x37
+#endif
+#ifndef LANG_GUJARATI
+#define LANG_GUJARATI 0x47
+#endif
+#ifndef LANG_HINDI
+#define LANG_HINDI 0x39
+#endif
+#ifndef LANG_KANNADA
+#define LANG_KANNADA 0x4b
+#endif
+#ifndef LANG_KASHMIRI
+#define LANG_KASHMIRI 0x60
+#endif
+#ifndef LANG_KAZAK
+#define LANG_KAZAK 0x3f
+#endif
+#ifndef LANG_KONKANI
+#define LANG_KONKANI 0x57
+#endif
+#ifndef LANG_MACEDONIAN
+#define LANG_MACEDONIAN 0x2f
+#endif
+#ifndef LANG_MALAY
+#define LANG_MALAY 0x3e
+#endif
+#ifndef LANG_MALAYALAM
+#define LANG_MALAYALAM 0x4c
+#endif
+#ifndef LANG_MANIPURI
+#define LANG_MANIPURI 0x58
+#endif
+#ifndef LANG_MARATHI
+#define LANG_MARATHI 0x4e
+#endif
+#ifndef LANG_NEPALI
+#define LANG_NEPALI 0x61
+#endif
+#ifndef LANG_ORIYA
+#define LANG_ORIYA 0x48
+#endif
+#ifndef LANG_PUNJABI
+#define LANG_PUNJABI 0x46
+#endif
+#ifndef LANG_SANSKRIT
+#define LANG_SANSKRIT 0x4f
+#endif
+#ifndef LANG_SINDHI
+#define LANG_SINDHI 0x59
+#endif
+#ifndef LANG_SWAHILI
+#define LANG_SWAHILI 0x41
+#endif
+#ifndef LANG_TAMIL
+#define LANG_TAMIL 0x49
+#endif
+#ifndef LANG_TATAR
+#define LANG_TATAR 0x44
+#endif
+#ifndef LANG_TELUGU
+#define LANG_TELUGU 0x4a
+#endif
+#ifndef LANG_URDU
+#define LANG_URDU 0x20
+#endif
+#ifndef LANG_UZBEK
+#define LANG_UZBEK 0x43
+#endif
+
+#ifndef SUBLANG_CHINESE_MACAU
+#define SUBLANG_CHINESE_MACAU 0x05
+#endif
+#ifndef SUBLANG_ENGLISH_ZIMBABWE
+#define SUBLANG_ENGLISH_ZIMBABWE 0x0c
+#endif
+#ifndef SUBLANG_ENGLISH_PHILIPPINES
+#define SUBLANG_ENGLISH_PHILIPPINES 0x0d
+#endif
+#ifndef SUBLANG_FRENCH_MONACO
+#define SUBLANG_FRENCH_MONACO 0x06
+#endif
+#ifndef SUBLANG_KASHMIRI_INDIA
+#define SUBLANG_KASHMIRI_INDIA 0x02
+#endif
+#ifndef SUBLANG_MALAY_BRUNEI_DARUSSALAM
+#define SUBLANG_MALAY_BRUNEI_DARUSSALAM 0x02
+#endif
+#ifndef SUBLANG_NEPALI_INDIA
+#define SUBLANG_NEPALI_INDIA 0x02
+#endif
+#ifndef SUBLANG_URDU_PAKISTAN
+#define SUBLANG_URDU_PAKISTAN 0x01
+#endif
+#ifndef SUBLANG_URDU_INDIA
+#define SUBLANG_URDU_INDIA 0x02
+#endif
+#ifndef SUBLANG_UZBEK_CYRILLIC
+#define SUBLANG_UZBEK_CYRILLIC 0x02
+#endif
+
+/**
+ * g_win32_getlocale:
+ *
+ * The setlocale in the Microsoft C library uses locale names of the
+ * form "English_United States.1252" etc. We want the Unixish standard
+ * form "en", "zh_TW" etc. This function gets the current thread
+ * locale from Windows and returns it as a string of the above form
+ * for use in forming file names etc. The returned string should be
+ * deallocated with g_free().
+ *
+ * Returns: allocated locale name
+ */
+
+gchar *
+g_win32_getlocale (void)
+{
+  LCID lcid;
+  gchar *ev;
+  gint primary, sub;
+  gchar *l = NULL, *sl = NULL;
+  gchar bfr[20];
+
+  if ((ev = getenv ("LC_ALL")) != NULL
+      || (ev = getenv ("LC_CTYPE")) != NULL
+      || (ev = getenv ("LANG")) != NULL)
+    return g_strdup (ev);
+
+  lcid = GetThreadLocale ();
+  primary = PRIMARYLANGID (LANGIDFROMLCID (lcid));
+  sub = SUBLANGID (LANGIDFROMLCID (lcid));
+  switch (primary)
+    {
+    case LANG_AFRIKAANS: l = "af"; break;
+    case LANG_ALBANIAN: l = "sq"; break;
+    case LANG_ARABIC:
+      l = "ar";
+      switch (sub)
+	{
+	case SUBLANG_ARABIC_SAUDI_ARABIA: sl = "SA"; break;
+	case SUBLANG_ARABIC_IRAQ: sl = "IQ"; break;
+	case SUBLANG_ARABIC_EGYPT: sl = "EG"; break;
+	case SUBLANG_ARABIC_LIBYA: sl = "LY"; break;
+	case SUBLANG_ARABIC_ALGERIA: sl = "DZ"; break;
+	case SUBLANG_ARABIC_MOROCCO: sl = "MA"; break;
+	case SUBLANG_ARABIC_TUNISIA: sl = "TN"; break;
+	case SUBLANG_ARABIC_OMAN: sl = "OM"; break;
+	case SUBLANG_ARABIC_YEMEN: sl = "YE"; break;
+	case SUBLANG_ARABIC_SYRIA: sl = "SY"; break;
+	case SUBLANG_ARABIC_JORDAN: sl = "JO"; break;
+	case SUBLANG_ARABIC_LEBANON: sl = "LB"; break;
+	case SUBLANG_ARABIC_KUWAIT: sl = "KW"; break;
+	case SUBLANG_ARABIC_UAE: sl = "AE"; break;
+	case SUBLANG_ARABIC_BAHRAIN: sl = "BH"; break;
+	case SUBLANG_ARABIC_QATAR: sl = "QA"; break;
+	}
+      break;
+    case LANG_ARMENIAN: l = "hy"; break;
+    case LANG_ASSAMESE: l = "as"; break;
+    case LANG_AZERI: l = "az"; break;
+    case LANG_BASQUE: l = "eu"; break;
+    case LANG_BELARUSIAN: l = "be"; break;
+    case LANG_BENGALI: l = "bn"; break;
+    case LANG_BULGARIAN: l = "bg"; break;
+    case LANG_CATALAN: l = "ca"; break;
+    case LANG_CHINESE:
+      l = "zh";
+      switch (sub)
+	{
+	case SUBLANG_CHINESE_TRADITIONAL: sl = "TW"; break;
+	case SUBLANG_CHINESE_SIMPLIFIED: sl = "CH"; break;
+	case SUBLANG_CHINESE_HONGKONG: sl = "HK"; break;
+	case SUBLANG_CHINESE_SINGAPORE: sl = "SG"; break;
+	case SUBLANG_CHINESE_MACAU: sl = "MO"; break;
+	}
+      break;
+    case LANG_CROATIAN:		/* LANG_CROATIAN == LANG_SERBIAN
+				 * What used to be called Serbo-Croatian
+				 * should really now be two separate
+				 * languages because of political reasons.
+				 * (Says tml, who knows nothing about Serbian
+				 * or Croatian.)
+				 * (I can feel those flames coming already.)
+				 */
+      switch (sub)
+	{
+	case SUBLANG_SERBIAN_LATIN: l = "sp"; break;
+	case SUBLANG_SERBIAN_CYRILLIC: l = "sr"; break;
+	default: l = "hr";	/* ??? */
+	}
+      break;
+    case LANG_CZECH: l = "cs"; break;
+    case LANG_DANISH: l = "da"; break;
+    case LANG_DUTCH:
+      l = "nl";
+      switch (sub)
+	{
+	case SUBLANG_DUTCH_BELGIAN: sl = "BE"; break;
+	}
+      break;
+    case LANG_ENGLISH:
+      l = "en";
+      switch (sub)
+	{
+	/* SUBLANG_ENGLISH_US == SUBLANG_DEFAULT. Heh. I thought
+	 * English was the language spoken in England.
+	 * Oh well.
+	 */
+	case SUBLANG_ENGLISH_UK: sl = "GB"; break;
+	case SUBLANG_ENGLISH_AUS: sl = "AU"; break;
+	case SUBLANG_ENGLISH_CAN: sl = "CA"; break;
+	case SUBLANG_ENGLISH_NZ: sl = "NZ"; break;
+	case SUBLANG_ENGLISH_EIRE: sl = "IE"; break;
+	case SUBLANG_ENGLISH_SOUTH_AFRICA: sl = "ZA"; break;
+	case SUBLANG_ENGLISH_JAMAICA: sl = "JM"; break;
+	case SUBLANG_ENGLISH_CARIBBEAN: sl = "@caribbean"; break; /* ??? */
+	case SUBLANG_ENGLISH_BELIZE: sl = "BZ"; break;
+	case SUBLANG_ENGLISH_TRINIDAD: sl = "TT"; break;
+	case SUBLANG_ENGLISH_ZIMBABWE: sl = "ZW"; break;
+	case SUBLANG_ENGLISH_PHILIPPINES: sl = "PH"; break;
+	}
+      break;
+    case LANG_ESTONIAN: l = "et"; break;
+    case LANG_FAEROESE: l = "fo"; break;
+    case LANG_FARSI: l = "fa"; break;
+    case LANG_FINNISH: l = "fi"; break;
+    case LANG_FRENCH:
+      l = "fr";
+      switch (sub)
+	{
+	case SUBLANG_FRENCH_BELGIAN: sl = "BE"; break;
+	case SUBLANG_FRENCH_CANADIAN: sl = "CA"; break;
+	case SUBLANG_FRENCH_SWISS: sl = "CH"; break;
+	case SUBLANG_FRENCH_LUXEMBOURG: sl = "LU"; break;
+	case SUBLANG_FRENCH_MONACO: sl = "MC"; break;
+	}
+      break;
+    case LANG_GEORGIAN: l = "ka"; break;
+    case LANG_GERMAN:
+      l = "de";
+      switch (sub)
+	{
+	case SUBLANG_GERMAN_SWISS: sl = "CH"; break;
+	case SUBLANG_GERMAN_AUSTRIAN: sl = "AT"; break;
+	case SUBLANG_GERMAN_LUXEMBOURG: sl = "LU"; break;
+	case SUBLANG_GERMAN_LIECHTENSTEIN: sl = "LI"; break;
+	}
+      break;
+    case LANG_GREEK: l = "el"; break;
+    case LANG_GUJARATI: l = "gu"; break;
+    case LANG_HEBREW: l = "he"; break;
+    case LANG_HINDI: l = "hi"; break;
+    case LANG_HUNGARIAN: l = "hu"; break;
+    case LANG_ICELANDIC: l = "is"; break;
+    case LANG_INDONESIAN: l = "id"; break;
+    case LANG_ITALIAN:
+      l = "it";
+      switch (sub)
+	{
+	case SUBLANG_ITALIAN_SWISS: sl = "CH"; break;
+	}
+      break;
+    case LANG_JAPANESE: l = "ja"; break;
+    case LANG_KANNADA: l = "kn"; break;
+    case LANG_KASHMIRI:
+      l = "ks";
+      switch (sub)
+	{
+	case SUBLANG_KASHMIRI_INDIA: sl = "IN"; break;
+	}
+      break;
+    case LANG_KAZAK: l = "kk"; break;
+    case LANG_KONKANI: l = "kok"; break; /* ??? */
+    case LANG_KOREAN: l = "ko"; break;
+    case LANG_LATVIAN: l = "lv"; break;
+    case LANG_LITHUANIAN: l = "lt"; break;
+    case LANG_MACEDONIAN: l = "mk"; break;
+    case LANG_MALAY:
+      l = "ms";
+      switch (sub)
+	{
+	case SUBLANG_MALAY_BRUNEI_DARUSSALAM: sl = "BN"; break;
+	}
+      break;
+    case LANG_MALAYALAM: l = "ml"; break;
+    case LANG_MANIPURI: l = "mni"; break;
+    case LANG_MARATHI: l = "mr"; break;
+    case LANG_NEPALI:
+      l = "ne";
+      switch (sub)
+	{
+	case SUBLANG_NEPALI_INDIA: sl = "IN"; break;
+	}
+      break;
+    case LANG_NORWEGIAN:
+      l = "no";
+      switch (sub)
+	{
+	/* SUBLANG_NORWEGIAN_BOKMAL == SUBLANG_DEFAULT */
+	case SUBLANG_NORWEGIAN_NYNORSK: l = "nn"; break;
+	}
+      break;
+    case LANG_ORIYA: l = "or"; break;
+    case LANG_POLISH: l = "pl"; break;
+    case LANG_PORTUGUESE:
+      l = "pt";
+      switch (sub)
+	{
+	/* Hmm. SUBLANG_PORTUGUESE_BRAZILIAN == SUBLANG_DEFAULT */
+	case SUBLANG_PORTUGUESE_BRAZILIAN: sl = "BR"; break;
+	}
+      break;
+    case LANG_PUNJABI: l = "pa"; break;
+    case LANG_ROMANIAN: l = "ro"; break;
+    case LANG_RUSSIAN: l = "ru"; break;
+    case LANG_SANSKRIT: l = "sa"; break;
+    case LANG_SINDHI: l = "sd"; break;
+    case LANG_SLOVAK: l = "sk"; break;
+    case LANG_SLOVENIAN: l = "sl"; break;
+    case LANG_SPANISH:
+      l = "es";
+      switch (sub)
+	{
+	case SUBLANG_SPANISH_MEXICAN: sl = "MX"; break;
+	case SUBLANG_SPANISH_MODERN: sl = "@modern"; break;	/* ??? */
+	case SUBLANG_SPANISH_GUATEMALA: sl = "GT"; break;
+	case SUBLANG_SPANISH_COSTA_RICA: sl = "CR"; break;
+	case SUBLANG_SPANISH_PANAMA: sl = "PA"; break;
+	case SUBLANG_SPANISH_DOMINICAN_REPUBLIC: sl = "DO"; break;
+	case SUBLANG_SPANISH_VENEZUELA: sl = "VE"; break;
+	case SUBLANG_SPANISH_COLOMBIA: sl = "CO"; break;
+	case SUBLANG_SPANISH_PERU: sl = "PE"; break;
+	case SUBLANG_SPANISH_ARGENTINA: sl = "AR"; break;
+	case SUBLANG_SPANISH_ECUADOR: sl = "EC"; break;
+	case SUBLANG_SPANISH_CHILE: sl = "CL"; break;
+	case SUBLANG_SPANISH_URUGUAY: sl = "UY"; break;
+	case SUBLANG_SPANISH_PARAGUAY: sl = "PY"; break;
+	case SUBLANG_SPANISH_BOLIVIA: sl = "BO"; break;
+	case SUBLANG_SPANISH_EL_SALVADOR: sl = "SV"; break;
+	case SUBLANG_SPANISH_HONDURAS: sl = "HN"; break;
+	case SUBLANG_SPANISH_NICARAGUA: sl = "NI"; break;
+	case SUBLANG_SPANISH_PUERTO_RICO: sl = "PR"; break;
+	}
+      break;
+    case LANG_SWAHILI: l = "sw"; break;
+    case LANG_SWEDISH:
+      l = "sv";
+      switch (sub)
+	{
+	case SUBLANG_SWEDISH_FINLAND: sl = "FI"; break;
+	}
+      break;
+    case LANG_TAMIL: l = "ta"; break;
+    case LANG_TATAR: l = "tt"; break;
+    case LANG_TELUGU: l = "te"; break;
+    case LANG_THAI: l = "th"; break;
+    case LANG_TURKISH: l = "tr"; break;
+    case LANG_UKRAINIAN: l = "uk"; break;
+    case LANG_URDU:
+      l = "ur";
+      switch (sub)
+	{
+	case SUBLANG_URDU_PAKISTAN: sl = "PK"; break;
+	case SUBLANG_URDU_INDIA: sl = "IN"; break;
+	}
+      break;
+    case LANG_UZBEK:
+      l = "uz";
+      switch (sub)
+	{
+	case SUBLANG_UZBEK_CYRILLIC: sl = "@cyrillic"; break;
+	}
+      break;
+    case LANG_VIETNAMESE: l = "vi"; break;
+    default: l = "xx"; break;
+    }
+  strcpy (bfr, l);
+  if (sl != NULL)
+    {
+      if (sl[0] != '@')
+	strcat (bfr, "_");
+      strcat (bfr, sl);
+    }
+
+  return g_strdup (bfr);
+}
+
+/**
+ * g_win32_error_message:
+ * @error: error code
+ *
+ * Translate a Win32 error code (as returned by GetLastError()) into
+ * the corresponding message. The message is either language neutral,
+ * or in the thread's language, or the user's language, the system's
+ * langauge, or US English (see docs for FormatMessage). The returned
+ * string should be deallocated with g_free().
+ *
+ * Returns: allocated error message
+ */
+gchar *
+g_win32_error_message (gint error)
+{
+  gchar *msg;
+  gchar *retval;
+  int nbytes;
+
+  FormatMessage (FORMAT_MESSAGE_ALLOCATE_BUFFER
+		 |FORMAT_MESSAGE_IGNORE_INSERTS
+		 |FORMAT_MESSAGE_FROM_SYSTEM,
+		 NULL, error, 0,
+		 (LPTSTR) &msg, 0, NULL);
+  nbytes = strlen (msg);
+
+  if (nbytes > 2 && msg[nbytes-1] == '\n' && msg[nbytes-2] == '\r')
+    msg[nbytes-2] = '\0';
+  
+  retval = g_strdup (msg);
+
+  if (msg != NULL)
+    LocalFree (msg);
+
+  return retval;
+}
+
+static gchar *
+get_package_directory_from_module (gchar *module_name)
+{
+  static GHashTable *module_dirs = NULL;
+  HMODULE hmodule = NULL;
+  gchar *fn;
+  gchar *p;
+  gchar *result;
+
+  if (module_dirs == NULL)
+    module_dirs = g_hash_table_new (g_str_hash, g_str_equal);
+  
+  result = g_hash_table_lookup (module_dirs, module_name ? module_name : "");
+      
+  if (result)
+    return g_strdup (result);
+
+  if (module_name)
+    {
+      hmodule = GetModuleHandle (module_name);
+      if (!hmodule)
+	return NULL;
+    }
+
+  fn = g_malloc (MAX_PATH);
+  if (!GetModuleFileName (hmodule, fn, MAX_PATH))
+    return NULL;
+
+#ifdef G_WITH_CYGWIN
+  /* In Cygwin we need to have POSIX paths */
+  {
+    gchar tmp[MAX_PATH];
+
+    cygwin_conv_to_posix_path(fn, tmp);
+    g_free(fn);
+    fn = g_strdup(tmp);
+  }
+#endif
+
+  if ((p = strrchr (fn, G_DIR_SEPARATOR)) != NULL)
+    *p = '\0';
+
+  p = strrchr (fn, G_DIR_SEPARATOR);
+  if (p && (g_ascii_strcasecmp (p + 1, "bin") == 0 ||
+	    g_ascii_strcasecmp (p + 1, "lib") == 0))
+    *p = '\0';
+
+  g_hash_table_insert (module_dirs, module_name ? module_name : "", fn);
+
+  return g_strdup (fn);
+}
+
+/**
+ * g_win32_get_package_installation_directory:
+ * @package: An identifier for a software package, or NULL
+ * @dll_name: The name of a DLL that a package provides, or NULL
+ *
+ * Try to determine the installation directory for a software package.
+ * Typically used by GNU software packages.
+ *
+ * @package should be a short identifier for the package. Typically it
+ * is the same identifier as used for GETTEXT_PACKAGE in software
+ * configured accoring to GNU standards. The function first looks in
+ * the Windows Registry for the value #InstallationDirectory in the
+ * key #HKLM\Software\@package, and if that value exists and is a
+ * string, returns that.
+ *
+ * If @package is NULL, or the above value isn't found in the
+ * Registry, but @dll_name is non-NULL, it should name a DLL loaded
+ * into the current process. Typically that would be the name of the
+ * DLL calling this function, looking for its installation
+ * directory. The function then asks Windows what directory that DLL
+ * was loaded from. If that directory's last component is "bin" or
+ * "lib", the parent directory is returned, otherwise the directory
+ * itself. If that DLL isn't loaded, the function proceeds as if
+ * @dll_name was NULL.
+ *
+ * If both @package and @dll_name are NULL, the directory from where
+ * the main executable of the process was loaded is uses instead in
+ * the same way as above.
+ *
+ * The return value should be freed with g_free() when not needed any longer.  */
+
+gchar *
+g_win32_get_package_installation_directory (gchar *package,
+					    gchar *dll_name)
+{
+  static GHashTable *package_dirs = NULL;
+  gchar *result = NULL;
+  gchar *key;
+  HKEY reg_key = NULL;
+  DWORD type;
+  DWORD nbytes;
+
+  if (package != NULL)
+    {
+      if (package_dirs == NULL)
+	package_dirs = g_hash_table_new (g_str_hash, g_str_equal);
+      
+      result = g_hash_table_lookup (package_dirs, package);
+      
+      if (result && result[0])
+	return g_strdup (result);
+      
+      key = g_strconcat ("Software\\", package, NULL);
+      
+      nbytes = 0;
+      if ((RegOpenKeyEx (HKEY_CURRENT_USER, key, 0,
+			 KEY_QUERY_VALUE, &reg_key) == ERROR_SUCCESS
+	   && RegQueryValueEx (reg_key, "InstallationDirectory", 0,
+			       &type, NULL, &nbytes) == ERROR_SUCCESS)
+	  ||
+	  ((RegOpenKeyEx (HKEY_LOCAL_MACHINE, key, 0,
+			 KEY_QUERY_VALUE, &reg_key) == ERROR_SUCCESS
+	   && RegQueryValueEx (reg_key, "InstallationDirectory", 0,
+			       &type, NULL, &nbytes) == ERROR_SUCCESS)
+	   && type == REG_SZ))
+	{
+	  result = g_malloc (nbytes + 1);
+	  RegQueryValueEx (reg_key, "InstallationDirectory", 0,
+			   &type, result, &nbytes);
+	  result[nbytes] = '\0';
+	}
+
+      if (reg_key != NULL)
+	RegCloseKey (reg_key);
+      
+      g_free (key);
+      
+    }
+  if (result)
+    {
+      g_hash_table_insert (package_dirs, package, result);
+      return g_strdup (result);
+    }
+
+  if (dll_name != NULL)
+    result = get_package_directory_from_module (dll_name);
+
+  if (result == NULL)
+    result = get_package_directory_from_module (NULL);
+
+  return result;
+}
+
+/**
+ * g_win32_get_package_installation_subdirectory:
+ * @package: An identifier for a software package, or NULL
+ * @dll_name: The name of a DLL that a package provides, or NULL
+ * @subdir: A subdirectory of the package installation directory.
+ *
+ * Returns a string containg the path of the subdirectory @subdir in
+ * the return value from calling
+ * g_win32_get_package_installation_directory() with the @package and
+ * @dll_name parameters. The return value should be freed with
+ * g_free() when no longer needed.
+ */
+
+gchar *
+g_win32_get_package_installation_subdirectory (gchar *package,
+					       gchar *dll_name,
+					       gchar *subdir)
+{
+  gchar *prefix;
+  gchar *sep;
+
+  prefix = g_win32_get_package_installation_directory (package, dll_name);
+
+  sep = (prefix[strlen (prefix) - 1] == G_DIR_SEPARATOR ?
+	 "" : G_DIR_SEPARATOR_S);
+
+  return g_strconcat (prefix, sep, subdir, NULL);
+}
diff --git a/graf2d/win32gdk/gdk/src/glib/gwin32.h b/graf2d/win32gdk/gdk/src/glib/gwin32.h
index 2fb7e04556f..a71d774481d 100644
--- a/graf2d/win32gdk/gdk/src/glib/gwin32.h
+++ b/graf2d/win32gdk/gdk/src/glib/gwin32.h
@@ -27,21 +27,25 @@
 #ifndef __G_WIN32_H__
 #define __G_WIN32_H__
 
-#include <g_types.h>
+#include <glib/gtypes.h>
 
-#ifdef G_OS_WIN32
+#ifdef G_PLATFORM_WIN32
 
 /* Windows emulation stubs for common Unix functions
  */
 
 G_BEGIN_DECLS
 
+#ifndef MAXPATHLEN
 #define MAXPATHLEN 1024
+#endif
 
 #ifdef _MSC_VER
 typedef int pid_t;
 #endif
 
+#ifdef G_OS_WIN32
+
 /*
  * To get prototypes for the following POSIXish functions, you have to
  * include the indicated non-POSIX headers. The functions are defined
@@ -89,29 +93,38 @@ struct DIR
 typedef struct DIR DIR;
 
 /* emulation functions */
-extern int	g_win32_ftruncate	(gint		 f,
+gint		g_win32_ftruncate	(gint		 f,
 					 guint		 size);
 DIR*		g_win32_opendir		(const gchar	*dirname);
 struct dirent*	g_win32_readdir  	(DIR		*dir);
 void		g_win32_rewinddir 	(DIR		*dir);
 gint		g_win32_closedir  	(DIR		*dir);
 
+#endif /* G_OS_WIN32 */
+
 /* The MS setlocale uses locale names of the form "English_United
  * States.1252" etc. We want the Unixish standard form "en", "zh_TW"
  * etc. This function gets the current thread locale from Windows and
  * returns it as a string of the above form for use in forming file
  * names etc. The returned string should be deallocated with g_free().
  */
-gchar *		g_win32_getlocale  (void);
+gchar* 		g_win32_getlocale  (void);
 
 /* Translate a Win32 error code (as returned by GetLastError()) into
  * the corresponding message. The returned string should be deallocated
  * with g_free().
  */
-gchar *         g_win32_error_message (gint error);
+gchar*          g_win32_error_message (gint error);
+
+gchar*          g_win32_get_package_installation_directory (gchar *package,
+							    gchar *dll_name);
+
+gchar*          g_win32_get_package_installation_subdirectory (gchar *package,
+							       gchar *dll_name,
+							       gchar *subdir);
 
 G_END_DECLS
 
-#endif	 /* G_OS_WIN32 */
+#endif	 /* G_PLATFORM_WIN32 */
 
 #endif /* __G_WIN32_H__ */
diff --git a/graf2d/win32gdk/gdk/src/glib/makefile.msc b/graf2d/win32gdk/gdk/src/glib/makefile.msc
new file mode 100644
index 00000000000..69e46b80d49
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/glib/makefile.msc
@@ -0,0 +1,133 @@
+## Makefile for building the glib dlls with Microsoft C
+## Use: nmake -f makefile.msc
+
+##
+## Adapted for the ROOT project
+##
+
+################################################################
+
+#
+# Figure out if we are going to debug qualifiers or not
+#
+
+!IFNDEF DEBUG
+# Full optimization:
+OPTIMIZE = -O2 -MD
+!ELSE
+# Debugging:
+OPTIMIZE = -Z7 -MDd
+LINKDEBUG = /debug
+!ENDIF
+
+#
+# Override all options if something is passed in from outside (i.e. the ROOT build system)
+#
+
+# cl -? describes the options
+#CC = cl -G5 -GF $(OPTIMIZE) -W3 -nologo
+!if "$(NMCXXFLAGS)" == ""
+CC = cl -GR $(OPTIMIZE) -W3 -nologo
+!else
+CC = cl -nologo $(NMCXXFLAGS)
+!endif
+
+LDFLAGS = /link $(LINKDEBUG)
+
+GLIB_VER=1.3
+
+# Check if nmake version is 8.xx or 9.xx
+!if ([nmake /? 2>&1 | findstr /c:"Version 8\." > nul ] == 0) || \
+	([nmake /? 2>&1 | findstr /c:"Version 9\." > nul ] == 0)
+MT_DLL   = mt -nologo -manifest $@.manifest -outputresource:$@;2
+CLEAN_MT = -@erase /q $@.manifest >nul 2>&1
+!else
+MT_DLL   = 
+CLEAN_MT = 
+!endif
+
+CFLAGS = -I. -I.. -I..\iconv -I..\.. -DG_LOG_DOMAIN=g_log_domain_glib -DG_ENABLE_DEBUG -DGLIB_COMPILATION -DHAVE_CONFIG_H -DUSE_LIBICONV
+# You could add this if you wanted... -DG_ENABLE_DEBUG
+######################
+
+all :				\
+	config.h		\
+	glibconfig.h	\
+	glib-$(GLIB_VER).dll \
+
+glib_OBJECTS =			\
+	garray.obj		\
+	gasyncqueue.obj		\
+	gbacktrace.obj		\
+	gcache.obj		\
+	gcompletion.obj		\
+	gconvert.obj		\
+	gdataset.obj		\
+	gdate.obj		\
+	gerror.obj		\
+	gfileutils.obj		\
+	ghash.obj		\
+	ghook.obj		\
+	giochannel.obj		\
+	giowin32.obj		\
+	glist.obj		\
+	gmain.obj		\
+	gmarkup.obj		\
+	gmem.obj		\
+	gmessages.obj		\
+	gnode.obj		\
+	gprimes.obj		\
+	gqsort.obj		\
+	gqueue.obj		\
+	gpattern.obj	\
+	grand.obj		\
+	grel.obj		\
+	gscanner.obj		\
+	gshell.obj		\
+	gslist.obj		\
+	gspawn-win32.obj	\
+	gstrfuncs.obj		\
+	gstring.obj		\
+	gbsearcharray.obj \
+	gthread.obj		\
+	gthreadpool.obj		\
+	gtimer.obj		\
+	gtree.obj		\
+	gunibreak.obj		\
+	gunicollate.obj	\
+	gunidecomp.obj		\
+	guniprop.obj		\
+	gutf8.obj		\
+	gutils.obj		\
+	gwin32.obj
+
+glibconfig.h: glibconfig.h.win32
+	copy glibconfig.h.win32 glibconfig.h
+
+config.h: config.h.win32
+	copy config.h.win32 config.h
+
+################ glib
+
+glib-$(GLIB_VER).dll : $(glib_OBJECTS) glib.def
+	cd
+	$(CC) $(CFLAGS) -LD -Feglib-$(GLIB_VER).dll $(glib_OBJECTS) $(LIBICONV_LIBS) $(INTL_LIBS) user32.lib advapi32.lib wsock32.lib $(LDFLAGS) ..\iconv\iconv-1.3.lib /def:glib.def
+	$(MT_DLL)
+	$(CLEAN_MT)
+
+.c.obj :
+	$(CC) $(CFLAGS) -c -DGDK_COMPILATION -DG_LOG_DOMAIN=\"Gdk\" $<
+
+################ other stuff
+
+clean::
+	del config.h
+	del glibconfig.h
+	-@erase /q *.dll >nul 2>&1
+	-@erase /q *.obj >nul 2>&1
+	-@erase /q *.lib >nul 2>&1
+	-@erase /q *.err >nul 2>&1
+	-@erase /q *.res >nul 2>&1
+	-@erase /q *.exp >nul 2>&1
+	-@erase /q *.pdb >nul 2>&1
+	-@erase /q *.ilk >nul 2>&1
\ No newline at end of file
diff --git a/graf2d/win32gdk/gdk/src/iconv/aliases.h b/graf2d/win32gdk/gdk/src/iconv/aliases.h
new file mode 100644
index 00000000000..f9cc41df1e0
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/aliases.h
@@ -0,0 +1,1714 @@
+/* ANSI-C code produced by gperf version 3.0.4 */
+/* Command-line: gperf -m 10 lib/aliases.gperf  */
+/* Computed positions: -k'1,3-11,$' */
+
+#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
+      && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
+      && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
+      && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
+      && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
+      && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
+      && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
+      && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
+      && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
+      && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
+      && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
+      && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
+      && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
+      && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
+      && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
+      && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
+      && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
+      && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
+      && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
+      && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
+      && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
+      && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
+      && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
+/* The character set is not based on ISO-646.  */
+#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
+#endif
+
+#line 1 "lib/aliases.gperf"
+struct alias { int name; unsigned int encoding_index; };
+
+#define TOTAL_KEYWORDS 346
+#define MIN_WORD_LENGTH 2
+#define MAX_WORD_LENGTH 45
+#define MIN_HASH_VALUE 7
+#define MAX_HASH_VALUE 935
+/* maximum key range = 929, duplicates = 0 */
+
+#ifdef __GNUC__
+__inline
+#else
+#ifdef __cplusplus
+inline
+#endif
+#endif
+static unsigned int
+aliases_hash (register const char *str, register unsigned int len)
+{
+  static const unsigned short asso_values[] =
+    {
+      936, 936, 936, 936, 936, 936, 936, 936, 936, 936,
+      936, 936, 936, 936, 936, 936, 936, 936, 936, 936,
+      936, 936, 936, 936, 936, 936, 936, 936, 936, 936,
+      936, 936, 936, 936, 936, 936, 936, 936, 936, 936,
+      936, 936, 936, 936, 936,  16,  62, 936,  73,   0,
+        5,   2,  47,   4,   1, 168,   8,  12, 357, 936,
+      936, 936, 936, 936, 936, 112, 123,   3,  14,  34,
+       71, 142, 147,   0, 258,  79,  39, 122,   4,   0,
+      109, 936,  76,   1,  54, 147, 114, 180, 102,   3,
+       10, 936, 936, 936, 936,  34, 936, 936, 936, 936,
+      936, 936, 936, 936, 936, 936, 936, 936, 936, 936,
+      936, 936, 936, 936, 936, 936, 936, 936, 936, 936,
+      936, 936, 936, 936, 936, 936, 936, 936
+    };
+  register int hval = len;
+
+  switch (hval)
+    {
+      default:
+        hval += asso_values[(unsigned char)str[10]];
+      /*FALLTHROUGH*/
+      case 10:
+        hval += asso_values[(unsigned char)str[9]];
+      /*FALLTHROUGH*/
+      case 9:
+        hval += asso_values[(unsigned char)str[8]];
+      /*FALLTHROUGH*/
+      case 8:
+        hval += asso_values[(unsigned char)str[7]];
+      /*FALLTHROUGH*/
+      case 7:
+        hval += asso_values[(unsigned char)str[6]];
+      /*FALLTHROUGH*/
+      case 6:
+        hval += asso_values[(unsigned char)str[5]];
+      /*FALLTHROUGH*/
+      case 5:
+        hval += asso_values[(unsigned char)str[4]];
+      /*FALLTHROUGH*/
+      case 4:
+        hval += asso_values[(unsigned char)str[3]];
+      /*FALLTHROUGH*/
+      case 3:
+        hval += asso_values[(unsigned char)str[2]];
+      /*FALLTHROUGH*/
+      case 2:
+      case 1:
+        hval += asso_values[(unsigned char)str[0]];
+        break;
+    }
+  return hval + asso_values[(unsigned char)str[len - 1]];
+}
+
+struct stringpool_t
+  {
+    char stringpool_str7[sizeof("SJIS")];
+    char stringpool_str9[sizeof("CN")];
+    char stringpool_str11[sizeof("CP1131")];
+    char stringpool_str12[sizeof("CP1361")];
+    char stringpool_str13[sizeof("866")];
+    char stringpool_str15[sizeof("CP1133")];
+    char stringpool_str18[sizeof("CP1251")];
+    char stringpool_str19[sizeof("CP866")];
+    char stringpool_str20[sizeof("CP1256")];
+    char stringpool_str21[sizeof("862")];
+    char stringpool_str22[sizeof("CP1253")];
+    char stringpool_str24[sizeof("CP936")];
+    char stringpool_str26[sizeof("CP1255")];
+    char stringpool_str27[sizeof("CP862")];
+    char stringpool_str28[sizeof("CP1252")];
+    char stringpool_str30[sizeof("C99")];
+    char stringpool_str32[sizeof("CP932")];
+    char stringpool_str34[sizeof("CP1258")];
+    char stringpool_str40[sizeof("CP819")];
+    char stringpool_str41[sizeof("L1")];
+    char stringpool_str42[sizeof("L6")];
+    char stringpool_str43[sizeof("L3")];
+    char stringpool_str45[sizeof("L5")];
+    char stringpool_str46[sizeof("L2")];
+    char stringpool_str49[sizeof("L8")];
+    char stringpool_str53[sizeof("EUCCN")];
+    char stringpool_str57[sizeof("ISO8859-1")];
+    char stringpool_str58[sizeof("ISO8859-11")];
+    char stringpool_str59[sizeof("ISO8859-6")];
+    char stringpool_str60[sizeof("ISO8859-16")];
+    char stringpool_str61[sizeof("ISO8859-3")];
+    char stringpool_str62[sizeof("ISO8859-13")];
+    char stringpool_str65[sizeof("ISO8859-5")];
+    char stringpool_str66[sizeof("ISO8859-15")];
+    char stringpool_str67[sizeof("ISO8859-2")];
+    char stringpool_str70[sizeof("EUC-CN")];
+    char stringpool_str73[sizeof("ISO8859-8")];
+    char stringpool_str74[sizeof("ISO-8859-1")];
+    char stringpool_str75[sizeof("ISO-8859-11")];
+    char stringpool_str76[sizeof("ISO-8859-6")];
+    char stringpool_str77[sizeof("ISO-8859-16")];
+    char stringpool_str78[sizeof("ISO-8859-3")];
+    char stringpool_str79[sizeof("ISO-8859-13")];
+    char stringpool_str81[sizeof("ISO8859-9")];
+    char stringpool_str82[sizeof("ISO-8859-5")];
+    char stringpool_str83[sizeof("ISO-8859-15")];
+    char stringpool_str84[sizeof("ISO-8859-2")];
+    char stringpool_str85[sizeof("ISO646-CN")];
+    char stringpool_str86[sizeof("R8")];
+    char stringpool_str88[sizeof("L4")];
+    char stringpool_str90[sizeof("ISO-8859-8")];
+    char stringpool_str91[sizeof("CP949")];
+    char stringpool_str92[sizeof("ISO_8859-1")];
+    char stringpool_str93[sizeof("ISO_8859-11")];
+    char stringpool_str94[sizeof("ISO_8859-6")];
+    char stringpool_str95[sizeof("ISO_8859-16")];
+    char stringpool_str96[sizeof("ISO_8859-3")];
+    char stringpool_str97[sizeof("ISO_8859-13")];
+    char stringpool_str98[sizeof("ISO-8859-9")];
+    char stringpool_str99[sizeof("ISO_8859-16:2001")];
+    char stringpool_str100[sizeof("ISO_8859-5")];
+    char stringpool_str101[sizeof("ISO_8859-15")];
+    char stringpool_str102[sizeof("ISO_8859-2")];
+    char stringpool_str103[sizeof("LATIN1")];
+    char stringpool_str105[sizeof("LATIN6")];
+    char stringpool_str106[sizeof("CP154")];
+    char stringpool_str107[sizeof("LATIN3")];
+    char stringpool_str108[sizeof("ISO_8859-8")];
+    char stringpool_str110[sizeof("ISO_8859-15:1998")];
+    char stringpool_str111[sizeof("LATIN5")];
+    char stringpool_str112[sizeof("CP1254")];
+    char stringpool_str113[sizeof("LATIN2")];
+    char stringpool_str114[sizeof("CSISO2022CN")];
+    char stringpool_str116[sizeof("ISO_8859-9")];
+    char stringpool_str117[sizeof("CHINESE")];
+    char stringpool_str118[sizeof("ISO-IR-6")];
+    char stringpool_str119[sizeof("LATIN8")];
+    char stringpool_str120[sizeof("ASCII")];
+    char stringpool_str121[sizeof("ISO-IR-166")];
+    char stringpool_str122[sizeof("X0212")];
+    char stringpool_str124[sizeof("VISCII")];
+    char stringpool_str125[sizeof("ISO-IR-126")];
+    char stringpool_str126[sizeof("CSASCII")];
+    char stringpool_str127[sizeof("ISO-IR-165")];
+    char stringpool_str129[sizeof("CSVISCII")];
+    char stringpool_str130[sizeof("ISO-IR-226")];
+    char stringpool_str131[sizeof("MAC")];
+    char stringpool_str136[sizeof("ISO-IR-138")];
+    char stringpool_str137[sizeof("ISO-IR-58")];
+    char stringpool_str139[sizeof("IBM866")];
+    char stringpool_str142[sizeof("ISO-2022-CN")];
+    char stringpool_str143[sizeof("MS936")];
+    char stringpool_str144[sizeof("LATIN-9")];
+    char stringpool_str146[sizeof("ISO-IR-159")];
+    char stringpool_str147[sizeof("IBM862")];
+    char stringpool_str150[sizeof("US")];
+    char stringpool_str151[sizeof("ISO8859-4")];
+    char stringpool_str152[sizeof("ISO8859-14")];
+    char stringpool_str153[sizeof("ISO_8859-14:1998")];
+    char stringpool_str154[sizeof("ISO-IR-199")];
+    char stringpool_str156[sizeof("UHC")];
+    char stringpool_str157[sizeof("850")];
+    char stringpool_str159[sizeof("HZ")];
+    char stringpool_str160[sizeof("IBM819")];
+    char stringpool_str162[sizeof("ISO-CELTIC")];
+    char stringpool_str163[sizeof("ELOT_928")];
+    char stringpool_str164[sizeof("CP1250")];
+    char stringpool_str165[sizeof("GB2312")];
+    char stringpool_str166[sizeof("CP850")];
+    char stringpool_str168[sizeof("ISO-8859-4")];
+    char stringpool_str169[sizeof("ISO-8859-14")];
+    char stringpool_str170[sizeof("CP950")];
+    char stringpool_str171[sizeof("CYRILLIC")];
+    char stringpool_str176[sizeof("ISO_8859-10:1992")];
+    char stringpool_str179[sizeof("UCS-2")];
+    char stringpool_str180[sizeof("TCVN")];
+    char stringpool_str181[sizeof("ISO-IR-148")];
+    char stringpool_str185[sizeof("X0201")];
+    char stringpool_str186[sizeof("ISO_8859-4")];
+    char stringpool_str187[sizeof("ISO_8859-14")];
+    char stringpool_str188[sizeof("L10")];
+    char stringpool_str189[sizeof("ISO-IR-149")];
+    char stringpool_str191[sizeof("ISO-IR-101")];
+    char stringpool_str196[sizeof("ISO-2022-CN-EXT")];
+    char stringpool_str197[sizeof("LATIN4")];
+    char stringpool_str200[sizeof("ISO-IR-203")];
+    char stringpool_str201[sizeof("X0208")];
+    char stringpool_str202[sizeof("KSC_5601")];
+    char stringpool_str204[sizeof("ISO8859-10")];
+    char stringpool_str207[sizeof("VISCII1.1-1")];
+    char stringpool_str209[sizeof("L7")];
+    char stringpool_str211[sizeof("ISO-IR-14")];
+    char stringpool_str212[sizeof("PT154")];
+    char stringpool_str213[sizeof("TIS620")];
+    char stringpool_str215[sizeof("ISO-IR-109")];
+    char stringpool_str216[sizeof("CSUNICODE11")];
+    char stringpool_str217[sizeof("KOI8-T")];
+    char stringpool_str218[sizeof("RK1048")];
+    char stringpool_str221[sizeof("ISO-8859-10")];
+    char stringpool_str222[sizeof("TIS620.2533-1")];
+    char stringpool_str223[sizeof("ISO646-US")];
+    char stringpool_str224[sizeof("CSISOLATIN1")];
+    char stringpool_str226[sizeof("CSISOLATIN6")];
+    char stringpool_str228[sizeof("CSISOLATIN3")];
+    char stringpool_str230[sizeof("TIS-620")];
+    char stringpool_str232[sizeof("CSISOLATIN5")];
+    char stringpool_str234[sizeof("CSISOLATIN2")];
+    char stringpool_str235[sizeof("TIS620.2529-1")];
+    char stringpool_str236[sizeof("CSKZ1048")];
+    char stringpool_str237[sizeof("CSISOLATINCYRILLIC")];
+    char stringpool_str238[sizeof("KZ-1048")];
+    char stringpool_str239[sizeof("ISO_8859-10")];
+    char stringpool_str241[sizeof("UNICODE-1-1")];
+    char stringpool_str242[sizeof("UTF-16")];
+    char stringpool_str245[sizeof("MS-EE")];
+    char stringpool_str248[sizeof("CSUNICODE")];
+    char stringpool_str249[sizeof("CSKOI8R")];
+    char stringpool_str250[sizeof("LATIN10")];
+    char stringpool_str252[sizeof("UTF-32")];
+    char stringpool_str254[sizeof("CSUCS4")];
+    char stringpool_str255[sizeof("UTF-8")];
+    char stringpool_str259[sizeof("ISO-IR-144")];
+    char stringpool_str261[sizeof("KOI8-R")];
+    char stringpool_str262[sizeof("MS-ANSI")];
+    char stringpool_str263[sizeof("UCS-4")];
+    char stringpool_str264[sizeof("ISO-IR-110")];
+    char stringpool_str266[sizeof("IBM-CP1133")];
+    char stringpool_str267[sizeof("CSIBM866")];
+    char stringpool_str270[sizeof("KS_C_5601-1989")];
+    char stringpool_str271[sizeof("CHAR")];
+    char stringpool_str273[sizeof("EUCKR")];
+    char stringpool_str277[sizeof("BIG5")];
+    char stringpool_str278[sizeof("CP874")];
+    char stringpool_str279[sizeof("ARMSCII-8")];
+    char stringpool_str282[sizeof("CSBIG5")];
+    char stringpool_str283[sizeof("UCS-2LE")];
+    char stringpool_str286[sizeof("IBM850")];
+    char stringpool_str287[sizeof("US-ASCII")];
+    char stringpool_str290[sizeof("EUC-KR")];
+    char stringpool_str293[sizeof("CSGB2312")];
+    char stringpool_str294[sizeof("BIG-5")];
+    char stringpool_str295[sizeof("TIS620.2533-0")];
+    char stringpool_str299[sizeof("CN-BIG5")];
+    char stringpool_str302[sizeof("MACCYRILLIC")];
+    char stringpool_str303[sizeof("GBK")];
+    char stringpool_str304[sizeof("TIS620-0")];
+    char stringpool_str305[sizeof("MS-CYRL")];
+    char stringpool_str307[sizeof("CYRILLIC-ASIAN")];
+    char stringpool_str308[sizeof("ECMA-118")];
+    char stringpool_str310[sizeof("ISO-IR-179")];
+    char stringpool_str311[sizeof("GREEK8")];
+    char stringpool_str315[sizeof("KOREAN")];
+    char stringpool_str318[sizeof("CSISOLATIN4")];
+    char stringpool_str321[sizeof("ISO-10646-UCS-2")];
+    char stringpool_str325[sizeof("UCS-4LE")];
+    char stringpool_str326[sizeof("PTCP154")];
+    char stringpool_str330[sizeof("CSISO14JISC6220RO")];
+    char stringpool_str334[sizeof("CSISO2022KR")];
+    char stringpool_str336[sizeof("ROMAN8")];
+    char stringpool_str337[sizeof("ISO-IR-100")];
+    char stringpool_str340[sizeof("JIS_C6226-1983")];
+    char stringpool_str344[sizeof("CSISOLATINARABIC")];
+    char stringpool_str347[sizeof("CP367")];
+    char stringpool_str350[sizeof("UTF-16LE")];
+    char stringpool_str351[sizeof("ISO_646.IRV:1991")];
+    char stringpool_str354[sizeof("CP1257")];
+    char stringpool_str355[sizeof("MACICELAND")];
+    char stringpool_str356[sizeof("UTF-32LE")];
+    char stringpool_str357[sizeof("CSKSC56011987")];
+    char stringpool_str359[sizeof("ARABIC")];
+    char stringpool_str362[sizeof("ISO-2022-KR")];
+    char stringpool_str363[sizeof("ISO-10646-UCS-4")];
+    char stringpool_str367[sizeof("UCS-2BE")];
+    char stringpool_str368[sizeof("GB_2312-80")];
+    char stringpool_str369[sizeof("JP")];
+    char stringpool_str371[sizeof("MULELAO-1")];
+    char stringpool_str372[sizeof("CSISO159JISX02121990")];
+    char stringpool_str373[sizeof("GREEK")];
+    char stringpool_str375[sizeof("TCVN5712-1")];
+    char stringpool_str376[sizeof("CSISO58GB231280")];
+    char stringpool_str378[sizeof("GB18030")];
+    char stringpool_str379[sizeof("TCVN-5712")];
+    char stringpool_str384[sizeof("GB_1988-80")];
+    char stringpool_str385[sizeof("CSPTCP154")];
+    char stringpool_str386[sizeof("ECMA-114")];
+    char stringpool_str388[sizeof("CSUNICODE11UTF7")];
+    char stringpool_str391[sizeof("ANSI_X3.4-1986")];
+    char stringpool_str392[sizeof("UNICODELITTLE")];
+    char stringpool_str393[sizeof("ISO8859-7")];
+    char stringpool_str395[sizeof("CN-GB-ISOIR165")];
+    char stringpool_str396[sizeof("STRK1048-2002")];
+    char stringpool_str398[sizeof("ANSI_X3.4-1968")];
+    char stringpool_str403[sizeof("KOI8-U")];
+    char stringpool_str406[sizeof("UCS-2-INTERNAL")];
+    char stringpool_str409[sizeof("UCS-4BE")];
+    char stringpool_str410[sizeof("ISO-8859-7")];
+    char stringpool_str411[sizeof("SHIFT-JIS")];
+    char stringpool_str412[sizeof("CN-GB")];
+    char stringpool_str413[sizeof("JIS_C6220-1969-RO")];
+    char stringpool_str415[sizeof("UNICODE-1-1-UTF-7")];
+    char stringpool_str416[sizeof("WINDOWS-1251")];
+    char stringpool_str417[sizeof("WINDOWS-1256")];
+    char stringpool_str418[sizeof("WINDOWS-1253")];
+    char stringpool_str420[sizeof("WINDOWS-1255")];
+    char stringpool_str421[sizeof("WINDOWS-1252")];
+    char stringpool_str422[sizeof("WINDOWS-936")];
+    char stringpool_str424[sizeof("WINDOWS-1258")];
+    char stringpool_str425[sizeof("CSEUCKR")];
+    char stringpool_str426[sizeof("KS_C_5601-1987")];
+    char stringpool_str428[sizeof("ISO_8859-7")];
+    char stringpool_str429[sizeof("SHIFT_JIS")];
+    char stringpool_str433[sizeof("JIS0208")];
+    char stringpool_str434[sizeof("UTF-16BE")];
+    char stringpool_str439[sizeof("LATIN7")];
+    char stringpool_str440[sizeof("UTF-32BE")];
+    char stringpool_str445[sizeof("MACTHAI")];
+    char stringpool_str448[sizeof("UCS-4-INTERNAL")];
+    char stringpool_str449[sizeof("CSISOLATINGREEK")];
+    char stringpool_str451[sizeof("MACROMAN")];
+    char stringpool_str452[sizeof("EXTENDED_UNIX_CODE_PACKED_FORMAT_FOR_JAPANESE")];
+    char stringpool_str456[sizeof("EUCTW")];
+    char stringpool_str457[sizeof("ISO-IR-57")];
+    char stringpool_str458[sizeof("ISO-IR-157")];
+    char stringpool_str459[sizeof("ISO-IR-127")];
+    char stringpool_str461[sizeof("ISO-IR-87")];
+    char stringpool_str463[sizeof("WINDOWS-1254")];
+    char stringpool_str464[sizeof("ISO_8859-3:1988")];
+    char stringpool_str466[sizeof("ISO_8859-5:1988")];
+    char stringpool_str467[sizeof("IBM367")];
+    char stringpool_str470[sizeof("ISO_8859-8:1988")];
+    char stringpool_str471[sizeof("HZ-GB-2312")];
+    char stringpool_str473[sizeof("EUC-TW")];
+    char stringpool_str474[sizeof("CSISO57GB1988")];
+    char stringpool_str475[sizeof("NEXTSTEP")];
+    char stringpool_str476[sizeof("CSISO2022JP2")];
+    char stringpool_str478[sizeof("ISO_8859-9:1989")];
+    char stringpool_str480[sizeof("KOI8-RU")];
+    char stringpool_str487[sizeof("MACINTOSH")];
+    char stringpool_str489[sizeof("WINDOWS-1250")];
+    char stringpool_str492[sizeof("JIS_X0212")];
+    char stringpool_str500[sizeof("ISO-2022-JP-1")];
+    char stringpool_str501[sizeof("MACCROATIAN")];
+    char stringpool_str502[sizeof("HP-ROMAN8")];
+    char stringpool_str505[sizeof("ISO-2022-JP-2")];
+    char stringpool_str509[sizeof("ISO_8859-4:1988")];
+    char stringpool_str510[sizeof("BIG5HKSCS")];
+    char stringpool_str515[sizeof("ASMO-708")];
+    char stringpool_str518[sizeof("EUCJP")];
+    char stringpool_str525[sizeof("BIGFIVE")];
+    char stringpool_str527[sizeof("BIG5-HKSCS")];
+    char stringpool_str531[sizeof("MACCENTRALEUROPE")];
+    char stringpool_str532[sizeof("CSPC862LATINHEBREW")];
+    char stringpool_str535[sizeof("EUC-JP")];
+    char stringpool_str542[sizeof("BIG-FIVE")];
+    char stringpool_str546[sizeof("CSSHIFTJIS")];
+    char stringpool_str550[sizeof("ISO646-JP")];
+    char stringpool_str554[sizeof("JISX0201-1976")];
+    char stringpool_str555[sizeof("JIS_X0201")];
+    char stringpool_str556[sizeof("CSISOLATINHEBREW")];
+    char stringpool_str563[sizeof("MACARABIC")];
+    char stringpool_str564[sizeof("CSISO87JISX0208")];
+    char stringpool_str571[sizeof("JIS_X0208")];
+    char stringpool_str575[sizeof("UTF-7")];
+    char stringpool_str577[sizeof("MACGREEK")];
+    char stringpool_str579[sizeof("CSISO2022JP")];
+    char stringpool_str580[sizeof("MS-TURK")];
+    char stringpool_str581[sizeof("JIS_X0212-1990")];
+    char stringpool_str584[sizeof("WINDOWS-1257")];
+    char stringpool_str586[sizeof("JIS_X0208-1983")];
+    char stringpool_str590[sizeof("MS-GREEK")];
+    char stringpool_str599[sizeof("CSHPROMAN8")];
+    char stringpool_str600[sizeof("JAVA")];
+    char stringpool_str601[sizeof("MS-HEBR")];
+    char stringpool_str604[sizeof("CSMACINTOSH")];
+    char stringpool_str607[sizeof("ISO-2022-JP")];
+    char stringpool_str608[sizeof("CSEUCTW")];
+    char stringpool_str614[sizeof("GEORGIAN-PS")];
+    char stringpool_str615[sizeof("UNICODEBIG")];
+    char stringpool_str617[sizeof("MS_KANJI")];
+    char stringpool_str620[sizeof("CSPC850MULTILINGUAL")];
+    char stringpool_str621[sizeof("MACUKRAINE")];
+    char stringpool_str622[sizeof("ISO_8859-1:1987")];
+    char stringpool_str623[sizeof("ISO_8859-6:1987")];
+    char stringpool_str624[sizeof("ISO_8859-7:2003")];
+    char stringpool_str626[sizeof("GEORGIAN-ACADEMY")];
+    char stringpool_str627[sizeof("ISO_8859-2:1987")];
+    char stringpool_str629[sizeof("JIS_X0212.1990-0")];
+    char stringpool_str657[sizeof("JIS_X0208-1990")];
+    char stringpool_str664[sizeof("WCHAR_T")];
+    char stringpool_str673[sizeof("MACROMANIA")];
+    char stringpool_str676[sizeof("WINDOWS-874")];
+    char stringpool_str689[sizeof("CSEUCPKDFMTJAPANESE")];
+    char stringpool_str691[sizeof("MS-ARAB")];
+    char stringpool_str723[sizeof("UCS-2-SWAPPED")];
+    char stringpool_str739[sizeof("TCVN5712-1:1993")];
+    char stringpool_str746[sizeof("HEBREW")];
+    char stringpool_str765[sizeof("UCS-4-SWAPPED")];
+    char stringpool_str768[sizeof("JOHAB")];
+    char stringpool_str786[sizeof("MACTURKISH")];
+    char stringpool_str790[sizeof("ISO_8859-7:1987")];
+    char stringpool_str842[sizeof("WINBALTRIM")];
+    char stringpool_str888[sizeof("BIG5-HKSCS:2001")];
+    char stringpool_str898[sizeof("CSHALFWIDTHKATAKANA")];
+    char stringpool_str900[sizeof("BIG5-HKSCS:1999")];
+    char stringpool_str908[sizeof("MACHEBREW")];
+    char stringpool_str935[sizeof("BIG5-HKSCS:2004")];
+  };
+static const struct stringpool_t stringpool_contents =
+  {
+    "SJIS",
+    "CN",
+    "CP1131",
+    "CP1361",
+    "866",
+    "CP1133",
+    "CP1251",
+    "CP866",
+    "CP1256",
+    "862",
+    "CP1253",
+    "CP936",
+    "CP1255",
+    "CP862",
+    "CP1252",
+    "C99",
+    "CP932",
+    "CP1258",
+    "CP819",
+    "L1",
+    "L6",
+    "L3",
+    "L5",
+    "L2",
+    "L8",
+    "EUCCN",
+    "ISO8859-1",
+    "ISO8859-11",
+    "ISO8859-6",
+    "ISO8859-16",
+    "ISO8859-3",
+    "ISO8859-13",
+    "ISO8859-5",
+    "ISO8859-15",
+    "ISO8859-2",
+    "EUC-CN",
+    "ISO8859-8",
+    "ISO-8859-1",
+    "ISO-8859-11",
+    "ISO-8859-6",
+    "ISO-8859-16",
+    "ISO-8859-3",
+    "ISO-8859-13",
+    "ISO8859-9",
+    "ISO-8859-5",
+    "ISO-8859-15",
+    "ISO-8859-2",
+    "ISO646-CN",
+    "R8",
+    "L4",
+    "ISO-8859-8",
+    "CP949",
+    "ISO_8859-1",
+    "ISO_8859-11",
+    "ISO_8859-6",
+    "ISO_8859-16",
+    "ISO_8859-3",
+    "ISO_8859-13",
+    "ISO-8859-9",
+    "ISO_8859-16:2001",
+    "ISO_8859-5",
+    "ISO_8859-15",
+    "ISO_8859-2",
+    "LATIN1",
+    "LATIN6",
+    "CP154",
+    "LATIN3",
+    "ISO_8859-8",
+    "ISO_8859-15:1998",
+    "LATIN5",
+    "CP1254",
+    "LATIN2",
+    "CSISO2022CN",
+    "ISO_8859-9",
+    "CHINESE",
+    "ISO-IR-6",
+    "LATIN8",
+    "ASCII",
+    "ISO-IR-166",
+    "X0212",
+    "VISCII",
+    "ISO-IR-126",
+    "CSASCII",
+    "ISO-IR-165",
+    "CSVISCII",
+    "ISO-IR-226",
+    "MAC",
+    "ISO-IR-138",
+    "ISO-IR-58",
+    "IBM866",
+    "ISO-2022-CN",
+    "MS936",
+    "LATIN-9",
+    "ISO-IR-159",
+    "IBM862",
+    "US",
+    "ISO8859-4",
+    "ISO8859-14",
+    "ISO_8859-14:1998",
+    "ISO-IR-199",
+    "UHC",
+    "850",
+    "HZ",
+    "IBM819",
+    "ISO-CELTIC",
+    "ELOT_928",
+    "CP1250",
+    "GB2312",
+    "CP850",
+    "ISO-8859-4",
+    "ISO-8859-14",
+    "CP950",
+    "CYRILLIC",
+    "ISO_8859-10:1992",
+    "UCS-2",
+    "TCVN",
+    "ISO-IR-148",
+    "X0201",
+    "ISO_8859-4",
+    "ISO_8859-14",
+    "L10",
+    "ISO-IR-149",
+    "ISO-IR-101",
+    "ISO-2022-CN-EXT",
+    "LATIN4",
+    "ISO-IR-203",
+    "X0208",
+    "KSC_5601",
+    "ISO8859-10",
+    "VISCII1.1-1",
+    "L7",
+    "ISO-IR-14",
+    "PT154",
+    "TIS620",
+    "ISO-IR-109",
+    "CSUNICODE11",
+    "KOI8-T",
+    "RK1048",
+    "ISO-8859-10",
+    "TIS620.2533-1",
+    "ISO646-US",
+    "CSISOLATIN1",
+    "CSISOLATIN6",
+    "CSISOLATIN3",
+    "TIS-620",
+    "CSISOLATIN5",
+    "CSISOLATIN2",
+    "TIS620.2529-1",
+    "CSKZ1048",
+    "CSISOLATINCYRILLIC",
+    "KZ-1048",
+    "ISO_8859-10",
+    "UNICODE-1-1",
+    "UTF-16",
+    "MS-EE",
+    "CSUNICODE",
+    "CSKOI8R",
+    "LATIN10",
+    "UTF-32",
+    "CSUCS4",
+    "UTF-8",
+    "ISO-IR-144",
+    "KOI8-R",
+    "MS-ANSI",
+    "UCS-4",
+    "ISO-IR-110",
+    "IBM-CP1133",
+    "CSIBM866",
+    "KS_C_5601-1989",
+    "CHAR",
+    "EUCKR",
+    "BIG5",
+    "CP874",
+    "ARMSCII-8",
+    "CSBIG5",
+    "UCS-2LE",
+    "IBM850",
+    "US-ASCII",
+    "EUC-KR",
+    "CSGB2312",
+    "BIG-5",
+    "TIS620.2533-0",
+    "CN-BIG5",
+    "MACCYRILLIC",
+    "GBK",
+    "TIS620-0",
+    "MS-CYRL",
+    "CYRILLIC-ASIAN",
+    "ECMA-118",
+    "ISO-IR-179",
+    "GREEK8",
+    "KOREAN",
+    "CSISOLATIN4",
+    "ISO-10646-UCS-2",
+    "UCS-4LE",
+    "PTCP154",
+    "CSISO14JISC6220RO",
+    "CSISO2022KR",
+    "ROMAN8",
+    "ISO-IR-100",
+    "JIS_C6226-1983",
+    "CSISOLATINARABIC",
+    "CP367",
+    "UTF-16LE",
+    "ISO_646.IRV:1991",
+    "CP1257",
+    "MACICELAND",
+    "UTF-32LE",
+    "CSKSC56011987",
+    "ARABIC",
+    "ISO-2022-KR",
+    "ISO-10646-UCS-4",
+    "UCS-2BE",
+    "GB_2312-80",
+    "JP",
+    "MULELAO-1",
+    "CSISO159JISX02121990",
+    "GREEK",
+    "TCVN5712-1",
+    "CSISO58GB231280",
+    "GB18030",
+    "TCVN-5712",
+    "GB_1988-80",
+    "CSPTCP154",
+    "ECMA-114",
+    "CSUNICODE11UTF7",
+    "ANSI_X3.4-1986",
+    "UNICODELITTLE",
+    "ISO8859-7",
+    "CN-GB-ISOIR165",
+    "STRK1048-2002",
+    "ANSI_X3.4-1968",
+    "KOI8-U",
+    "UCS-2-INTERNAL",
+    "UCS-4BE",
+    "ISO-8859-7",
+    "SHIFT-JIS",
+    "CN-GB",
+    "JIS_C6220-1969-RO",
+    "UNICODE-1-1-UTF-7",
+    "WINDOWS-1251",
+    "WINDOWS-1256",
+    "WINDOWS-1253",
+    "WINDOWS-1255",
+    "WINDOWS-1252",
+    "WINDOWS-936",
+    "WINDOWS-1258",
+    "CSEUCKR",
+    "KS_C_5601-1987",
+    "ISO_8859-7",
+    "SHIFT_JIS",
+    "JIS0208",
+    "UTF-16BE",
+    "LATIN7",
+    "UTF-32BE",
+    "MACTHAI",
+    "UCS-4-INTERNAL",
+    "CSISOLATINGREEK",
+    "MACROMAN",
+    "EXTENDED_UNIX_CODE_PACKED_FORMAT_FOR_JAPANESE",
+    "EUCTW",
+    "ISO-IR-57",
+    "ISO-IR-157",
+    "ISO-IR-127",
+    "ISO-IR-87",
+    "WINDOWS-1254",
+    "ISO_8859-3:1988",
+    "ISO_8859-5:1988",
+    "IBM367",
+    "ISO_8859-8:1988",
+    "HZ-GB-2312",
+    "EUC-TW",
+    "CSISO57GB1988",
+    "NEXTSTEP",
+    "CSISO2022JP2",
+    "ISO_8859-9:1989",
+    "KOI8-RU",
+    "MACINTOSH",
+    "WINDOWS-1250",
+    "JIS_X0212",
+    "ISO-2022-JP-1",
+    "MACCROATIAN",
+    "HP-ROMAN8",
+    "ISO-2022-JP-2",
+    "ISO_8859-4:1988",
+    "BIG5HKSCS",
+    "ASMO-708",
+    "EUCJP",
+    "BIGFIVE",
+    "BIG5-HKSCS",
+    "MACCENTRALEUROPE",
+    "CSPC862LATINHEBREW",
+    "EUC-JP",
+    "BIG-FIVE",
+    "CSSHIFTJIS",
+    "ISO646-JP",
+    "JISX0201-1976",
+    "JIS_X0201",
+    "CSISOLATINHEBREW",
+    "MACARABIC",
+    "CSISO87JISX0208",
+    "JIS_X0208",
+    "UTF-7",
+    "MACGREEK",
+    "CSISO2022JP",
+    "MS-TURK",
+    "JIS_X0212-1990",
+    "WINDOWS-1257",
+    "JIS_X0208-1983",
+    "MS-GREEK",
+    "CSHPROMAN8",
+    "JAVA",
+    "MS-HEBR",
+    "CSMACINTOSH",
+    "ISO-2022-JP",
+    "CSEUCTW",
+    "GEORGIAN-PS",
+    "UNICODEBIG",
+    "MS_KANJI",
+    "CSPC850MULTILINGUAL",
+    "MACUKRAINE",
+    "ISO_8859-1:1987",
+    "ISO_8859-6:1987",
+    "ISO_8859-7:2003",
+    "GEORGIAN-ACADEMY",
+    "ISO_8859-2:1987",
+    "JIS_X0212.1990-0",
+    "JIS_X0208-1990",
+    "WCHAR_T",
+    "MACROMANIA",
+    "WINDOWS-874",
+    "CSEUCPKDFMTJAPANESE",
+    "MS-ARAB",
+    "UCS-2-SWAPPED",
+    "TCVN5712-1:1993",
+    "HEBREW",
+    "UCS-4-SWAPPED",
+    "JOHAB",
+    "MACTURKISH",
+    "ISO_8859-7:1987",
+    "WINBALTRIM",
+    "BIG5-HKSCS:2001",
+    "CSHALFWIDTHKATAKANA",
+    "BIG5-HKSCS:1999",
+    "MACHEBREW",
+    "BIG5-HKSCS:2004"
+  };
+#define stringpool ((const char *) &stringpool_contents)
+
+static const struct alias aliases[] =
+  {
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 308 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str7, ei_sjis},
+    {-1},
+#line 288 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str9, ei_iso646_cn},
+    {-1},
+#line 209 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str11, ei_cp1131},
+#line 353 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str12, ei_johab},
+#line 207 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str13, ei_cp866},
+    {-1},
+#line 244 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str15, ei_cp1133},
+    {-1}, {-1},
+#line 174 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str18, ei_cp1251},
+#line 205 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str19, ei_cp866},
+#line 189 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str20, ei_cp1256},
+#line 203 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str21, ei_cp862},
+#line 180 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str22, ei_cp1253},
+    {-1},
+#line 323 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str24, ei_cp936},
+    {-1},
+#line 186 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str26, ei_cp1255},
+#line 201 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str27, ei_cp862},
+#line 177 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str28, ei_cp1252},
+    {-1},
+#line 51 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str30, ei_c99},
+    {-1},
+#line 311 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str32, ei_cp932},
+    {-1},
+#line 195 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str34, ei_cp1258},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 57 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str40, ei_iso8859_1},
+#line 60 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str41, ei_iso8859_1},
+#line 134 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str42, ei_iso8859_10},
+#line 76 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str43, ei_iso8859_3},
+    {-1},
+#line 126 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str45, ei_iso8859_9},
+#line 68 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str46, ei_iso8859_2},
+    {-1}, {-1},
+#line 151 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str49, ei_iso8859_14},
+    {-1}, {-1}, {-1},
+#line 318 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str53, ei_euc_cn},
+    {-1}, {-1}, {-1},
+#line 62 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str57, ei_iso8859_1},
+#line 139 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str58, ei_iso8859_11},
+#line 102 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str59, ei_iso8859_6},
+#line 166 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str60, ei_iso8859_16},
+#line 78 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str61, ei_iso8859_3},
+#line 145 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str62, ei_iso8859_13},
+    {-1}, {-1},
+#line 93 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str65, ei_iso8859_5},
+#line 159 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str66, ei_iso8859_15},
+#line 70 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str67, ei_iso8859_2},
+    {-1}, {-1},
+#line 317 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str70, ei_euc_cn},
+    {-1}, {-1},
+#line 120 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str73, ei_iso8859_8},
+#line 53 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str74, ei_iso8859_1},
+#line 137 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str75, ei_iso8859_11},
+#line 94 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str76, ei_iso8859_6},
+#line 160 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str77, ei_iso8859_16},
+#line 71 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str78, ei_iso8859_3},
+#line 140 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str79, ei_iso8859_13},
+    {-1},
+#line 128 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str81, ei_iso8859_9},
+#line 87 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str82, ei_iso8859_5},
+#line 154 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str83, ei_iso8859_15},
+#line 63 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str84, ei_iso8859_2},
+#line 286 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str85, ei_iso646_cn},
+#line 227 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str86, ei_hp_roman8},
+    {-1},
+#line 84 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str88, ei_iso8859_4},
+    {-1},
+#line 114 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str90, ei_iso8859_8},
+#line 350 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str91, ei_cp949},
+#line 54 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str92, ei_iso8859_1},
+#line 138 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str93, ei_iso8859_11},
+#line 95 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str94, ei_iso8859_6},
+#line 161 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str95, ei_iso8859_16},
+#line 72 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str96, ei_iso8859_3},
+#line 141 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str97, ei_iso8859_13},
+#line 121 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str98, ei_iso8859_9},
+#line 162 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str99, ei_iso8859_16},
+#line 88 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str100, ei_iso8859_5},
+#line 155 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str101, ei_iso8859_15},
+#line 64 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str102, ei_iso8859_2},
+#line 59 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str103, ei_iso8859_1},
+    {-1},
+#line 133 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str105, ei_iso8859_10},
+#line 236 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str106, ei_pt154},
+#line 75 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str107, ei_iso8859_3},
+#line 115 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str108, ei_iso8859_8},
+    {-1},
+#line 156 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str110, ei_iso8859_15},
+#line 125 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str111, ei_iso8859_9},
+#line 183 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str112, ei_cp1254},
+#line 67 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str113, ei_iso8859_2},
+#line 328 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str114, ei_iso2022_cn},
+    {-1},
+#line 122 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str116, ei_iso8859_9},
+#line 293 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str117, ei_gb2312},
+#line 16 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str118, ei_ascii},
+#line 150 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str119, ei_iso8859_14},
+#line 13 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str120, ei_ascii},
+#line 252 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str121, ei_tis620},
+#line 282 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str122, ei_jisx0212},
+    {-1},
+#line 255 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str124, ei_viscii},
+#line 107 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str125, ei_iso8859_7},
+#line 22 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str126, ei_ascii},
+#line 294 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str127, ei_isoir165},
+    {-1},
+#line 257 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str129, ei_viscii},
+#line 163 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str130, ei_iso8859_16},
+#line 212 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str131, ei_mac_roman},
+    {-1}, {-1}, {-1}, {-1},
+#line 117 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str136, ei_iso8859_8},
+#line 291 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str137, ei_gb2312},
+    {-1},
+#line 206 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str139, ei_cp866},
+    {-1}, {-1},
+#line 327 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str142, ei_iso2022_cn},
+#line 324 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str143, ei_cp936},
+#line 158 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str144, ei_iso8859_15},
+    {-1},
+#line 283 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str146, ei_jisx0212},
+#line 202 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str147, ei_cp862},
+    {-1}, {-1},
+#line 21 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str150, ei_ascii},
+#line 86 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str151, ei_iso8859_4},
+#line 153 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str152, ei_iso8859_14},
+#line 148 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str153, ei_iso8859_14},
+#line 149 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str154, ei_iso8859_14},
+    {-1},
+#line 351 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str156, ei_cp949},
+#line 199 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str157, ei_cp850},
+    {-1},
+#line 330 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str159, ei_hz},
+#line 58 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str160, ei_iso8859_1},
+    {-1},
+#line 152 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str162, ei_iso8859_14},
+#line 109 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str163, ei_iso8859_7},
+#line 171 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str164, ei_cp1250},
+#line 319 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str165, ei_euc_cn},
+#line 197 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str166, ei_cp850},
+    {-1},
+#line 79 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str168, ei_iso8859_4},
+#line 146 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str169, ei_iso8859_14},
+#line 341 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str170, ei_cp950},
+#line 91 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str171, ei_iso8859_5},
+    {-1}, {-1}, {-1}, {-1},
+#line 131 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str176, ei_iso8859_10},
+    {-1}, {-1},
+#line 24 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str179, ei_ucs2},
+#line 258 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str180, ei_tcvn},
+#line 124 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str181, ei_iso8859_9},
+    {-1}, {-1}, {-1},
+#line 269 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str185, ei_jisx0201},
+#line 80 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str186, ei_iso8859_4},
+#line 147 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str187, ei_iso8859_14},
+#line 165 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str188, ei_iso8859_16},
+#line 299 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str189, ei_ksc5601},
+    {-1},
+#line 66 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str191, ei_iso8859_2},
+    {-1}, {-1}, {-1}, {-1},
+#line 329 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str196, ei_iso2022_cn_ext},
+#line 83 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str197, ei_iso8859_4},
+    {-1}, {-1},
+#line 157 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str200, ei_iso8859_15},
+#line 275 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str201, ei_jisx0208},
+#line 296 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str202, ei_ksc5601},
+    {-1},
+#line 136 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str204, ei_iso8859_10},
+    {-1}, {-1},
+#line 256 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str207, ei_viscii},
+    {-1},
+#line 144 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str209, ei_iso8859_13},
+    {-1},
+#line 264 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str211, ei_iso646_jp},
+#line 234 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str212, ei_pt154},
+#line 247 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str213, ei_tis620},
+    {-1},
+#line 74 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str215, ei_iso8859_3},
+#line 30 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str216, ei_ucs2be},
+#line 233 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str217, ei_koi8_t},
+#line 239 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str218, ei_rk1048},
+    {-1}, {-1},
+#line 129 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str221, ei_iso8859_10},
+#line 251 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str222, ei_tis620},
+#line 14 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str223, ei_ascii},
+#line 61 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str224, ei_iso8859_1},
+    {-1},
+#line 135 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str226, ei_iso8859_10},
+    {-1},
+#line 77 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str228, ei_iso8859_3},
+    {-1},
+#line 246 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str230, ei_tis620},
+    {-1},
+#line 127 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str232, ei_iso8859_9},
+    {-1},
+#line 69 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str234, ei_iso8859_2},
+#line 249 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str235, ei_tis620},
+#line 242 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str236, ei_rk1048},
+#line 92 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str237, ei_iso8859_5},
+#line 241 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str238, ei_rk1048},
+#line 130 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str239, ei_iso8859_10},
+    {-1},
+#line 29 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str241, ei_ucs2be},
+#line 38 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str242, ei_utf16},
+    {-1}, {-1},
+#line 173 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str245, ei_cp1250},
+    {-1}, {-1},
+#line 26 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str248, ei_ucs2},
+#line 168 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str249, ei_koi8_r},
+#line 164 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str250, ei_iso8859_16},
+    {-1},
+#line 41 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str252, ei_utf32},
+    {-1},
+#line 35 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str254, ei_ucs4},
+#line 23 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str255, ei_utf8},
+    {-1}, {-1}, {-1},
+#line 90 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str259, ei_iso8859_5},
+    {-1},
+#line 167 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str261, ei_koi8_r},
+#line 179 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str262, ei_cp1252},
+#line 33 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str263, ei_ucs4},
+#line 82 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str264, ei_iso8859_4},
+    {-1},
+#line 245 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str266, ei_cp1133},
+#line 208 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str267, ei_cp866},
+    {-1}, {-1},
+#line 298 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str270, ei_ksc5601},
+#line 356 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str271, ei_local_char},
+    {-1},
+#line 348 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str273, ei_euc_kr},
+    {-1}, {-1}, {-1},
+#line 335 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str277, ei_ces_big5},
+#line 253 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str278, ei_cp874},
+#line 230 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str279, ei_armscii_8},
+    {-1}, {-1},
+#line 340 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str282, ei_ces_big5},
+#line 31 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str283, ei_ucs2le},
+    {-1}, {-1},
+#line 198 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str286, ei_cp850},
+#line 12 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str287, ei_ascii},
+    {-1}, {-1},
+#line 347 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str290, ei_euc_kr},
+    {-1}, {-1},
+#line 321 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str293, ei_euc_cn},
+#line 336 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str294, ei_ces_big5},
+#line 250 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str295, ei_tis620},
+    {-1}, {-1}, {-1},
+#line 339 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str299, ei_ces_big5},
+    {-1}, {-1},
+#line 218 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str302, ei_mac_cyrillic},
+#line 322 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str303, ei_ces_gbk},
+#line 248 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str304, ei_tis620},
+#line 176 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str305, ei_cp1251},
+    {-1},
+#line 237 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str307, ei_pt154},
+#line 108 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str308, ei_iso8859_7},
+    {-1},
+#line 142 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str310, ei_iso8859_13},
+#line 110 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str311, ei_iso8859_7},
+    {-1}, {-1}, {-1},
+#line 301 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str315, ei_ksc5601},
+    {-1}, {-1},
+#line 85 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str318, ei_iso8859_4},
+    {-1}, {-1},
+#line 25 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str321, ei_ucs2},
+    {-1}, {-1}, {-1},
+#line 37 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str325, ei_ucs4le},
+#line 235 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str326, ei_pt154},
+    {-1}, {-1}, {-1},
+#line 266 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str330, ei_iso646_jp},
+    {-1}, {-1}, {-1},
+#line 355 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str334, ei_iso2022_kr},
+    {-1},
+#line 226 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str336, ei_hp_roman8},
+#line 56 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str337, ei_iso8859_1},
+    {-1}, {-1},
+#line 277 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str340, ei_jisx0208},
+    {-1}, {-1}, {-1},
+#line 101 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str344, ei_iso8859_6},
+    {-1}, {-1},
+#line 19 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str347, ei_ascii},
+    {-1}, {-1},
+#line 40 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str350, ei_utf16le},
+#line 15 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str351, ei_ascii},
+    {-1}, {-1},
+#line 192 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str354, ei_cp1257},
+#line 215 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str355, ei_mac_iceland},
+#line 43 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str356, ei_utf32le},
+#line 300 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str357, ei_ksc5601},
+    {-1},
+#line 100 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str359, ei_iso8859_6},
+    {-1}, {-1},
+#line 354 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str362, ei_iso2022_kr},
+#line 34 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str363, ei_ucs4},
+    {-1}, {-1}, {-1},
+#line 27 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str367, ei_ucs2be},
+#line 290 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str368, ei_gb2312},
+#line 265 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str369, ei_iso646_jp},
+    {-1},
+#line 243 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str371, ei_mulelao},
+#line 284 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str372, ei_jisx0212},
+#line 111 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str373, ei_iso8859_7},
+    {-1},
+#line 260 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str375, ei_tcvn},
+#line 292 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str376, ei_gb2312},
+    {-1},
+#line 326 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str378, ei_gb18030},
+#line 259 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str379, ei_tcvn},
+    {-1}, {-1}, {-1}, {-1},
+#line 285 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str384, ei_iso646_cn},
+#line 238 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str385, ei_pt154},
+#line 98 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str386, ei_iso8859_6},
+    {-1},
+#line 46 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str388, ei_utf7},
+    {-1}, {-1},
+#line 18 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str391, ei_ascii},
+#line 32 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str392, ei_ucs2le},
+#line 113 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str393, ei_iso8859_7},
+    {-1},
+#line 295 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str395, ei_isoir165},
+#line 240 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str396, ei_rk1048},
+    {-1},
+#line 17 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str398, ei_ascii},
+    {-1}, {-1}, {-1}, {-1},
+#line 169 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str403, ei_koi8_u},
+    {-1}, {-1},
+#line 47 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str406, ei_ucs2internal},
+    {-1}, {-1},
+#line 36 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str409, ei_ucs4be},
+#line 103 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str410, ei_iso8859_7},
+#line 307 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str411, ei_sjis},
+#line 320 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str412, ei_euc_cn},
+#line 262 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str413, ei_iso646_jp},
+    {-1},
+#line 45 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str415, ei_utf7},
+#line 175 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str416, ei_cp1251},
+#line 190 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str417, ei_cp1256},
+#line 181 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str418, ei_cp1253},
+    {-1},
+#line 187 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str420, ei_cp1255},
+#line 178 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str421, ei_cp1252},
+#line 325 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str422, ei_cp936},
+    {-1},
+#line 196 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str424, ei_cp1258},
+#line 349 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str425, ei_euc_kr},
+#line 297 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str426, ei_ksc5601},
+    {-1},
+#line 104 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str428, ei_iso8859_7},
+#line 306 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str429, ei_sjis},
+    {-1}, {-1}, {-1},
+#line 274 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str433, ei_jisx0208},
+#line 39 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str434, ei_utf16be},
+    {-1}, {-1}, {-1}, {-1},
+#line 143 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str439, ei_iso8859_13},
+#line 42 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str440, ei_utf32be},
+    {-1}, {-1}, {-1}, {-1},
+#line 224 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str445, ei_mac_thai},
+    {-1}, {-1},
+#line 49 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str448, ei_ucs4internal},
+#line 112 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str449, ei_iso8859_7},
+    {-1},
+#line 210 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str451, ei_mac_roman},
+#line 304 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str452, ei_euc_jp},
+    {-1}, {-1}, {-1},
+#line 333 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str456, ei_euc_tw},
+#line 287 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str457, ei_iso646_cn},
+#line 132 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str458, ei_iso8859_10},
+#line 97 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str459, ei_iso8859_6},
+    {-1},
+#line 276 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str461, ei_jisx0208},
+    {-1},
+#line 184 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str463, ei_cp1254},
+#line 73 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str464, ei_iso8859_3},
+    {-1},
+#line 89 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str466, ei_iso8859_5},
+#line 20 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str467, ei_ascii},
+    {-1}, {-1},
+#line 116 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str470, ei_iso8859_8},
+#line 331 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str471, ei_hz},
+    {-1},
+#line 332 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str473, ei_euc_tw},
+#line 289 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str474, ei_iso646_cn},
+#line 229 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str475, ei_nextstep},
+#line 316 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str476, ei_iso2022_jp2},
+    {-1},
+#line 123 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str478, ei_iso8859_9},
+    {-1},
+#line 170 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str480, ei_koi8_ru},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 211 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str487, ei_mac_roman},
+    {-1},
+#line 172 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str489, ei_cp1250},
+    {-1}, {-1},
+#line 279 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str492, ei_jisx0212},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 314 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str500, ei_iso2022_jp1},
+#line 216 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str501, ei_mac_croatian},
+#line 225 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str502, ei_hp_roman8},
+    {-1}, {-1},
+#line 315 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str505, ei_iso2022_jp2},
+    {-1}, {-1}, {-1},
+#line 81 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str509, ei_iso8859_4},
+#line 345 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str510, ei_big5hkscs2004},
+    {-1}, {-1}, {-1}, {-1},
+#line 99 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str515, ei_iso8859_6},
+    {-1}, {-1},
+#line 303 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str518, ei_euc_jp},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 338 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str525, ei_ces_big5},
+    {-1},
+#line 344 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str527, ei_big5hkscs2004},
+    {-1}, {-1}, {-1},
+#line 214 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str531, ei_mac_centraleurope},
+#line 204 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str532, ei_cp862},
+    {-1}, {-1},
+#line 302 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str535, ei_euc_jp},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 337 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str542, ei_ces_big5},
+    {-1}, {-1}, {-1},
+#line 310 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str546, ei_sjis},
+    {-1}, {-1}, {-1},
+#line 263 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str550, ei_iso646_jp},
+    {-1}, {-1}, {-1},
+#line 268 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str554, ei_jisx0201},
+#line 267 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str555, ei_jisx0201},
+#line 119 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str556, ei_iso8859_8},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 223 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str563, ei_mac_arabic},
+#line 278 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str564, ei_jisx0208},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 271 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str571, ei_jisx0208},
+    {-1}, {-1}, {-1},
+#line 44 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str575, ei_utf7},
+    {-1},
+#line 220 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str577, ei_mac_greek},
+    {-1},
+#line 313 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str579, ei_iso2022_jp},
+#line 185 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str580, ei_cp1254},
+#line 281 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str581, ei_jisx0212},
+    {-1}, {-1},
+#line 193 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str584, ei_cp1257},
+    {-1},
+#line 272 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str586, ei_jisx0208},
+    {-1}, {-1}, {-1},
+#line 182 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str590, ei_cp1253},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 228 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str599, ei_hp_roman8},
+#line 52 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str600, ei_java},
+#line 188 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str601, ei_cp1255},
+    {-1}, {-1},
+#line 213 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str604, ei_mac_roman},
+    {-1}, {-1},
+#line 312 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str607, ei_iso2022_jp},
+#line 334 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str608, ei_euc_tw},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 232 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str614, ei_georgian_ps},
+#line 28 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str615, ei_ucs2be},
+    {-1},
+#line 309 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str617, ei_sjis},
+    {-1}, {-1},
+#line 200 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str620, ei_cp850},
+#line 219 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str621, ei_mac_ukraine},
+#line 55 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str622, ei_iso8859_1},
+#line 96 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str623, ei_iso8859_6},
+#line 106 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str624, ei_iso8859_7},
+    {-1},
+#line 231 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str626, ei_georgian_academy},
+#line 65 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str627, ei_iso8859_2},
+    {-1},
+#line 280 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str629, ei_jisx0212},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 273 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str657, ei_jisx0208},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 357 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str664, ei_local_wchar_t},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 217 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str673, ei_mac_romania},
+    {-1}, {-1},
+#line 254 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str676, ei_cp874},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1},
+#line 305 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str689, ei_euc_jp},
+    {-1},
+#line 191 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str691, ei_cp1256},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1},
+#line 48 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str723, ei_ucs2swapped},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 261 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str739, ei_tcvn},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 118 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str746, ei_iso8859_8},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 50 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str765, ei_ucs4swapped},
+    {-1}, {-1},
+#line 352 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str768, ei_johab},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 221 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str786, ei_mac_turkish},
+    {-1}, {-1}, {-1},
+#line 105 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str790, ei_iso8859_7},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 194 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str842, ei_cp1257},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 343 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str888, ei_big5hkscs2001},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 270 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str898, ei_jisx0201},
+    {-1},
+#line 342 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str900, ei_big5hkscs1999},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 222 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str908, ei_mac_hebrew},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 346 "lib/aliases.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str935, ei_big5hkscs2004}
+  };
+
+#ifdef __GNUC__
+__inline
+#if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__
+__attribute__ ((__gnu_inline__))
+#endif
+#endif
+const struct alias *
+aliases_lookup (register const char *str, register unsigned int len)
+{
+  if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+    {
+      register int key = aliases_hash (str, len);
+
+      if (key <= MAX_HASH_VALUE && key >= 0)
+        {
+          register int o = aliases[key].name;
+          if (o >= 0)
+            {
+              register const char *s = o + stringpool;
+
+              if (*str == *s && !strcmp (str + 1, s + 1))
+                return &aliases[key];
+            }
+        }
+    }
+  return 0;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/aliases2.h b/graf2d/win32gdk/gdk/src/iconv/aliases2.h
new file mode 100644
index 00000000000..7f2dc449bf1
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/aliases2.h
@@ -0,0 +1,40 @@
+/*
+ * Copyright (C) 1999-2003, 2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#ifdef USE_AIX
+# if defined _AIX
+#  include "aliases_aix_sysaix.h"
+# else
+#  include "aliases_aix.h"
+# endif
+#endif
+#ifdef USE_OSF1
+# if defined __osf__
+#  include "aliases_osf1_sysosf1.h"
+# else
+#  include "aliases_osf1.h"
+# endif
+#endif
+#ifdef USE_DOS
+# include "aliases_dos.h"
+#endif
+#ifdef USE_EXTRA
+# include "aliases_extra.h"
+#endif
diff --git a/graf2d/win32gdk/gdk/src/iconv/aliases_aix.h b/graf2d/win32gdk/gdk/src/iconv/aliases_aix.h
new file mode 100644
index 00000000000..5cbc77fdf6c
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/aliases_aix.h
@@ -0,0 +1,18 @@
+  S(aix_0, "CP856", ei_cp856 )
+  S(aix_1, "CP922", ei_cp922 )
+  S(aix_2, "CP943", ei_cp943 )
+  S(aix_3, "CP1046", ei_cp1046 )
+  S(aix_4, "CP1124", ei_cp1124 )
+  S(aix_5, "CP1129", ei_cp1129 )
+  S(aix_6, "CP1161", ei_cp1161 )
+  S(aix_7, "IBM1161", ei_cp1161 )
+  S(aix_8, "IBM-1161", ei_cp1161 )
+  S(aix_9, "CSIBM1161", ei_cp1161 )
+  S(aix_10, "CP1162", ei_cp1162 )
+  S(aix_11, "IBM1162", ei_cp1162 )
+  S(aix_12, "IBM-1162", ei_cp1162 )
+  S(aix_13, "CSIBM1162", ei_cp1162 )
+  S(aix_14, "CP1163", ei_cp1163 )
+  S(aix_15, "IBM1163", ei_cp1163 )
+  S(aix_16, "IBM-1163", ei_cp1163 )
+  S(aix_17, "CSIBM1163", ei_cp1163 )
diff --git a/graf2d/win32gdk/gdk/src/iconv/aliases_aix_sysaix.h b/graf2d/win32gdk/gdk/src/iconv/aliases_aix_sysaix.h
new file mode 100644
index 00000000000..b7dc5841ebd
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/aliases_aix_sysaix.h
@@ -0,0 +1,24 @@
+  S(aix_0, "CP856", ei_cp856 )
+  S(aix_1, "IBM-856", ei_cp856 )
+  S(aix_2, "CP922", ei_cp922 )
+  S(aix_3, "IBM-922", ei_cp922 )
+  S(aix_4, "CP943", ei_cp943 )
+  S(aix_5, "IBM-943", ei_cp943 )
+  S(aix_6, "CP1046", ei_cp1046 )
+  S(aix_7, "IBM-1046", ei_cp1046 )
+  S(aix_8, "CP1124", ei_cp1124 )
+  S(aix_9, "IBM-1124", ei_cp1124 )
+  S(aix_10, "CP1129", ei_cp1129 )
+  S(aix_11, "IBM-1129", ei_cp1129 )
+  S(aix_12, "CP1161", ei_cp1161 )
+  S(aix_13, "IBM1161", ei_cp1161 )
+  S(aix_14, "IBM-1161", ei_cp1161 )
+  S(aix_15, "CSIBM1161", ei_cp1161 )
+  S(aix_16, "CP1162", ei_cp1162 )
+  S(aix_17, "IBM1162", ei_cp1162 )
+  S(aix_18, "IBM-1162", ei_cp1162 )
+  S(aix_19, "CSIBM1162", ei_cp1162 )
+  S(aix_20, "CP1163", ei_cp1163 )
+  S(aix_21, "IBM1163", ei_cp1163 )
+  S(aix_22, "IBM-1163", ei_cp1163 )
+  S(aix_23, "CSIBM1163", ei_cp1163 )
diff --git a/graf2d/win32gdk/gdk/src/iconv/aliases_dos.h b/graf2d/win32gdk/gdk/src/iconv/aliases_dos.h
new file mode 100644
index 00000000000..1dd4fcba01a
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/aliases_dos.h
@@ -0,0 +1,48 @@
+  S(dos_0, "CP437", ei_cp437 )
+  S(dos_1, "IBM437", ei_cp437 )
+  S(dos_2, "437", ei_cp437 )
+  S(dos_3, "CSPC8CODEPAGE437", ei_cp437 )
+  S(dos_4, "CP737", ei_cp737 )
+  S(dos_5, "CP775", ei_cp775 )
+  S(dos_6, "IBM775", ei_cp775 )
+  S(dos_7, "CSPC775BALTIC", ei_cp775 )
+  S(dos_8, "CP852", ei_cp852 )
+  S(dos_9, "IBM852", ei_cp852 )
+  S(dos_10, "852", ei_cp852 )
+  S(dos_11, "CSPCP852", ei_cp852 )
+  S(dos_12, "CP853", ei_cp853 )
+  S(dos_13, "CP855", ei_cp855 )
+  S(dos_14, "IBM855", ei_cp855 )
+  S(dos_15, "855", ei_cp855 )
+  S(dos_16, "CSIBM855", ei_cp855 )
+  S(dos_17, "CP857", ei_cp857 )
+  S(dos_18, "IBM857", ei_cp857 )
+  S(dos_19, "857", ei_cp857 )
+  S(dos_20, "CSIBM857", ei_cp857 )
+  S(dos_21, "CP858", ei_cp858 )
+  S(dos_22, "CP860", ei_cp860 )
+  S(dos_23, "IBM860", ei_cp860 )
+  S(dos_24, "860", ei_cp860 )
+  S(dos_25, "CSIBM860", ei_cp860 )
+  S(dos_26, "CP861", ei_cp861 )
+  S(dos_27, "IBM861", ei_cp861 )
+  S(dos_28, "861", ei_cp861 )
+  S(dos_29, "CP-IS", ei_cp861 )
+  S(dos_30, "CSIBM861", ei_cp861 )
+  S(dos_31, "CP863", ei_cp863 )
+  S(dos_32, "IBM863", ei_cp863 )
+  S(dos_33, "863", ei_cp863 )
+  S(dos_34, "CSIBM863", ei_cp863 )
+  S(dos_35, "CP864", ei_cp864 )
+  S(dos_36, "IBM864", ei_cp864 )
+  S(dos_37, "CSIBM864", ei_cp864 )
+  S(dos_38, "CP865", ei_cp865 )
+  S(dos_39, "IBM865", ei_cp865 )
+  S(dos_40, "865", ei_cp865 )
+  S(dos_41, "CSIBM865", ei_cp865 )
+  S(dos_42, "CP869", ei_cp869 )
+  S(dos_43, "IBM869", ei_cp869 )
+  S(dos_44, "869", ei_cp869 )
+  S(dos_45, "CP-GR", ei_cp869 )
+  S(dos_46, "CSIBM869", ei_cp869 )
+  S(dos_47, "CP1125", ei_cp1125 )
diff --git a/graf2d/win32gdk/gdk/src/iconv/aliases_extra.h b/graf2d/win32gdk/gdk/src/iconv/aliases_extra.h
new file mode 100644
index 00000000000..9a54e16a073
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/aliases_extra.h
@@ -0,0 +1,12 @@
+  S(extra_0, "EUC-JISX0213", ei_euc_jisx0213 )
+  S(extra_1, "EUC-JIS-2004", ei_euc_jisx0213 )
+  S(extra_2, "SHIFT_JISX0213", ei_shift_jisx0213 )
+  S(extra_3, "SHIFT_JIS-2004", ei_shift_jisx0213 )
+  S(extra_4, "ISO-2022-JP-3", ei_iso2022_jp3 )
+  S(extra_5, "ISO-2022-JP-2004", ei_iso2022_jp3 )
+  S(extra_6, "BIG5-2003", ei_big5_2003 )
+  S(extra_7, "TDS565", ei_tds565 )
+  S(extra_8, "ISO-IR-230", ei_tds565 )
+  S(extra_9, "ATARIST", ei_atarist )
+  S(extra_10, "ATARI", ei_atarist )
+  S(extra_11, "RISCOS-LATIN1", ei_riscos1 )
diff --git a/graf2d/win32gdk/gdk/src/iconv/aliases_osf1.h b/graf2d/win32gdk/gdk/src/iconv/aliases_osf1.h
new file mode 100644
index 00000000000..9e4f6854ebc
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/aliases_osf1.h
@@ -0,0 +1,2 @@
+  S(osf1_0, "DEC-KANJI", ei_dec_kanji )
+  S(osf1_1, "DEC-HANYU", ei_dec_hanyu )
diff --git a/graf2d/win32gdk/gdk/src/iconv/aliases_osf1_sysosf1.h b/graf2d/win32gdk/gdk/src/iconv/aliases_osf1_sysosf1.h
new file mode 100644
index 00000000000..b1f802d2844
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/aliases_osf1_sysosf1.h
@@ -0,0 +1,4 @@
+  S(osf1_0, "DEC-KANJI", ei_dec_kanji )
+  S(osf1_1, "DECKANJI", ei_dec_kanji )
+  S(osf1_2, "DEC-HANYU", ei_dec_hanyu )
+  S(osf1_3, "DECHANYU", ei_dec_hanyu )
diff --git a/graf2d/win32gdk/gdk/src/iconv/aliases_sysaix.h b/graf2d/win32gdk/gdk/src/iconv/aliases_sysaix.h
new file mode 100644
index 00000000000..ee5d6a0289f
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/aliases_sysaix.h
@@ -0,0 +1,1765 @@
+/* ANSI-C code produced by gperf version 3.0.4 */
+/* Command-line: gperf -m 10 lib/aliases_sysaix.gperf  */
+/* Computed positions: -k'1,3-11,$' */
+
+#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
+      && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
+      && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
+      && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
+      && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
+      && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
+      && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
+      && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
+      && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
+      && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
+      && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
+      && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
+      && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
+      && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
+      && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
+      && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
+      && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
+      && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
+      && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
+      && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
+      && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
+      && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
+      && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
+/* The character set is not based on ISO-646.  */
+#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
+#endif
+
+#line 1 "lib/aliases_sysaix.gperf"
+struct alias { int name; unsigned int encoding_index; };
+
+#define TOTAL_KEYWORDS 355
+#define MIN_WORD_LENGTH 2
+#define MAX_WORD_LENGTH 45
+#define MIN_HASH_VALUE 13
+#define MAX_HASH_VALUE 989
+/* maximum key range = 977, duplicates = 0 */
+
+#ifdef __GNUC__
+__inline
+#else
+#ifdef __cplusplus
+inline
+#endif
+#endif
+static unsigned int
+aliases_hash (register const char *str, register unsigned int len)
+{
+  static const unsigned short asso_values[] =
+    {
+      990, 990, 990, 990, 990, 990, 990, 990, 990, 990,
+      990, 990, 990, 990, 990, 990, 990, 990, 990, 990,
+      990, 990, 990, 990, 990, 990, 990, 990, 990, 990,
+      990, 990, 990, 990, 990, 990, 990, 990, 990, 990,
+      990, 990, 990, 990, 990,  13, 112, 990,  73,   4,
+        7,   6,  55,   8,   5, 171,  10,  23, 255, 990,
+      990, 990, 990, 990, 990, 147, 128,   4,   9, 125,
+      130,   5,  75,   4, 402,  69,   7, 125,  18,   4,
+       44, 990,  76,   4,  25, 195, 191, 161, 120,  22,
+       15, 990, 990, 990, 990,  27, 990, 990, 990, 990,
+      990, 990, 990, 990, 990, 990, 990, 990, 990, 990,
+      990, 990, 990, 990, 990, 990, 990, 990, 990, 990,
+      990, 990, 990, 990, 990, 990, 990, 990
+    };
+  register int hval = len;
+
+  switch (hval)
+    {
+      default:
+        hval += asso_values[(unsigned char)str[10]];
+      /*FALLTHROUGH*/
+      case 10:
+        hval += asso_values[(unsigned char)str[9]];
+      /*FALLTHROUGH*/
+      case 9:
+        hval += asso_values[(unsigned char)str[8]];
+      /*FALLTHROUGH*/
+      case 8:
+        hval += asso_values[(unsigned char)str[7]];
+      /*FALLTHROUGH*/
+      case 7:
+        hval += asso_values[(unsigned char)str[6]];
+      /*FALLTHROUGH*/
+      case 6:
+        hval += asso_values[(unsigned char)str[5]];
+      /*FALLTHROUGH*/
+      case 5:
+        hval += asso_values[(unsigned char)str[4]];
+      /*FALLTHROUGH*/
+      case 4:
+        hval += asso_values[(unsigned char)str[3]];
+      /*FALLTHROUGH*/
+      case 3:
+        hval += asso_values[(unsigned char)str[2]];
+      /*FALLTHROUGH*/
+      case 2:
+      case 1:
+        hval += asso_values[(unsigned char)str[0]];
+        break;
+    }
+  return hval + asso_values[(unsigned char)str[len - 1]];
+}
+
+struct stringpool_t
+  {
+    char stringpool_str13[sizeof("L1")];
+    char stringpool_str14[sizeof("L6")];
+    char stringpool_str15[sizeof("L3")];
+    char stringpool_str16[sizeof("L2")];
+    char stringpool_str17[sizeof("L5")];
+    char stringpool_str19[sizeof("L8")];
+    char stringpool_str20[sizeof("SJIS")];
+    char stringpool_str23[sizeof("866")];
+    char stringpool_str24[sizeof("CN")];
+    char stringpool_str27[sizeof("862")];
+    char stringpool_str32[sizeof("CP1131")];
+    char stringpool_str33[sizeof("CP1361")];
+    char stringpool_str34[sizeof("CP866")];
+    char stringpool_str36[sizeof("CP1133")];
+    char stringpool_str37[sizeof("CP1251")];
+    char stringpool_str38[sizeof("CP862")];
+    char stringpool_str39[sizeof("CP1256")];
+    char stringpool_str41[sizeof("CP1253")];
+    char stringpool_str42[sizeof("GB2312")];
+    char stringpool_str43[sizeof("CP1252")];
+    char stringpool_str45[sizeof("CP1255")];
+    char stringpool_str48[sizeof("CP936")];
+    char stringpool_str49[sizeof("CP1258")];
+    char stringpool_str52[sizeof("CP932")];
+    char stringpool_str53[sizeof("C99")];
+    char stringpool_str64[sizeof("L4")];
+    char stringpool_str68[sizeof("LATIN1")];
+    char stringpool_str69[sizeof("CP819")];
+    char stringpool_str70[sizeof("LATIN6")];
+    char stringpool_str72[sizeof("LATIN3")];
+    char stringpool_str74[sizeof("LATIN2")];
+    char stringpool_str76[sizeof("LATIN5")];
+    char stringpool_str80[sizeof("LATIN8")];
+    char stringpool_str88[sizeof("R8")];
+    char stringpool_str89[sizeof("ISO8859-1")];
+    char stringpool_str91[sizeof("ISO8859-6")];
+    char stringpool_str92[sizeof("HZ")];
+    char stringpool_str93[sizeof("ISO8859-3")];
+    char stringpool_str94[sizeof("ISO8859-11")];
+    char stringpool_str95[sizeof("ISO8859-2")];
+    char stringpool_str96[sizeof("ISO8859-16")];
+    char stringpool_str97[sizeof("ISO8859-5")];
+    char stringpool_str98[sizeof("ISO8859-13")];
+    char stringpool_str101[sizeof("ISO8859-8")];
+    char stringpool_str102[sizeof("ISO8859-15")];
+    char stringpool_str103[sizeof("ISO-8859-1")];
+    char stringpool_str105[sizeof("ISO-8859-6")];
+    char stringpool_str107[sizeof("ISO-8859-3")];
+    char stringpool_str108[sizeof("ISO-8859-11")];
+    char stringpool_str109[sizeof("ISO-8859-2")];
+    char stringpool_str110[sizeof("ISO-8859-16")];
+    char stringpool_str111[sizeof("ISO-8859-5")];
+    char stringpool_str112[sizeof("ISO-8859-13")];
+    char stringpool_str115[sizeof("ISO-8859-8")];
+    char stringpool_str116[sizeof("ISO-8859-15")];
+    char stringpool_str117[sizeof("ISO_8859-1")];
+    char stringpool_str118[sizeof("CYRILLIC")];
+    char stringpool_str119[sizeof("ISO_8859-6")];
+    char stringpool_str120[sizeof("LATIN-9")];
+    char stringpool_str121[sizeof("ISO_8859-3")];
+    char stringpool_str122[sizeof("ISO_8859-11")];
+    char stringpool_str123[sizeof("ISO_8859-2")];
+    char stringpool_str124[sizeof("ISO_8859-16")];
+    char stringpool_str125[sizeof("ISO_8859-5")];
+    char stringpool_str126[sizeof("ISO_8859-13")];
+    char stringpool_str127[sizeof("ISO8859-9")];
+    char stringpool_str128[sizeof("ISO_8859-16:2001")];
+    char stringpool_str129[sizeof("ISO_8859-8")];
+    char stringpool_str130[sizeof("ISO_8859-15")];
+    char stringpool_str131[sizeof("CP154")];
+    char stringpool_str132[sizeof("ISO-IR-6")];
+    char stringpool_str133[sizeof("CP949")];
+    char stringpool_str135[sizeof("ISO646-CN")];
+    char stringpool_str136[sizeof("MAC")];
+    char stringpool_str137[sizeof("ISO_8859-15:1998")];
+    char stringpool_str139[sizeof("CP1254")];
+    char stringpool_str141[sizeof("ISO-8859-9")];
+    char stringpool_str143[sizeof("ISO-IR-166")];
+    char stringpool_str145[sizeof("ISO-IR-126")];
+    char stringpool_str146[sizeof("GBK")];
+    char stringpool_str148[sizeof("ISO-IR-226")];
+    char stringpool_str149[sizeof("ISO-IR-165")];
+    char stringpool_str150[sizeof("X0212")];
+    char stringpool_str151[sizeof("ISO-IR-58")];
+    char stringpool_str152[sizeof("KOI8-T")];
+    char stringpool_str153[sizeof("BIG5")];
+    char stringpool_str154[sizeof("ISO-IR-138")];
+    char stringpool_str155[sizeof("ISO_8859-9")];
+    char stringpool_str156[sizeof("L10")];
+    char stringpool_str159[sizeof("850")];
+    char stringpool_str160[sizeof("IBM866")];
+    char stringpool_str161[sizeof("CSISO2022CN")];
+    char stringpool_str163[sizeof("CSBIG5")];
+    char stringpool_str164[sizeof("IBM862")];
+    char stringpool_str167[sizeof("BIG-5")];
+    char stringpool_str168[sizeof("ASCII")];
+    char stringpool_str169[sizeof("MS936")];
+    char stringpool_str170[sizeof("LATIN4")];
+    char stringpool_str171[sizeof("PT154")];
+    char stringpool_str172[sizeof("IBM-1131")];
+    char stringpool_str173[sizeof("CP850")];
+    char stringpool_str174[sizeof("EUCCN")];
+    char stringpool_str175[sizeof("CP1250")];
+    char stringpool_str176[sizeof("CSGB2312")];
+    char stringpool_str177[sizeof("CN-BIG5")];
+    char stringpool_str178[sizeof("CSASCII")];
+    char stringpool_str179[sizeof("ISO-2022-CN")];
+    char stringpool_str180[sizeof("L7")];
+    char stringpool_str182[sizeof("ISO-IR-159")];
+    char stringpool_str183[sizeof("IBM-1252")];
+    char stringpool_str184[sizeof("ISO_8859-14:1998")];
+    char stringpool_str186[sizeof("CP950")];
+    char stringpool_str187[sizeof("IBM-921")];
+    char stringpool_str188[sizeof("EUC-CN")];
+    char stringpool_str190[sizeof("ISO-2022-CN-EXT")];
+    char stringpool_str191[sizeof("ISO8859-4")];
+    char stringpool_str192[sizeof("IBM-932")];
+    char stringpool_str193[sizeof("TIS620")];
+    char stringpool_str195[sizeof("IBM819")];
+    char stringpool_str196[sizeof("ISO8859-14")];
+    char stringpool_str197[sizeof("ISO-IR-199")];
+    char stringpool_str199[sizeof("ISO_8859-10:1992")];
+    char stringpool_str201[sizeof("US")];
+    char stringpool_str202[sizeof("KSC_5601")];
+    char stringpool_str203[sizeof("ISO-IR-148")];
+    char stringpool_str204[sizeof("ISO-CELTIC")];
+    char stringpool_str205[sizeof("ISO-8859-4")];
+    char stringpool_str206[sizeof("UHC")];
+    char stringpool_str207[sizeof("TIS-620")];
+    char stringpool_str209[sizeof("ISO-IR-101")];
+    char stringpool_str210[sizeof("ISO-8859-14")];
+    char stringpool_str211[sizeof("LATIN10")];
+    char stringpool_str213[sizeof("X0201")];
+    char stringpool_str216[sizeof("ISO-IR-203")];
+    char stringpool_str217[sizeof("VISCII")];
+    char stringpool_str219[sizeof("ISO_8859-4")];
+    char stringpool_str221[sizeof("PTCP154")];
+    char stringpool_str224[sizeof("ISO_8859-14")];
+    char stringpool_str225[sizeof("X0208")];
+    char stringpool_str226[sizeof("IBM-CP1133")];
+    char stringpool_str227[sizeof("CSVISCII")];
+    char stringpool_str229[sizeof("ISO-IR-149")];
+    char stringpool_str231[sizeof("UCS-2")];
+    char stringpool_str232[sizeof("ISO8859-10")];
+    char stringpool_str234[sizeof("RK1048")];
+    char stringpool_str235[sizeof("GB_2312-80")];
+    char stringpool_str236[sizeof("CSISOLATIN1")];
+    char stringpool_str237[sizeof("ISO-IR-14")];
+    char stringpool_str238[sizeof("CSISOLATIN6")];
+    char stringpool_str239[sizeof("ELOT_928")];
+    char stringpool_str240[sizeof("CSISOLATIN3")];
+    char stringpool_str241[sizeof("KZ-1048")];
+    char stringpool_str242[sizeof("CSISOLATIN2")];
+    char stringpool_str243[sizeof("CSISOLATINCYRILLIC")];
+    char stringpool_str244[sizeof("CSISOLATIN5")];
+    char stringpool_str246[sizeof("ISO-8859-10")];
+    char stringpool_str247[sizeof("ISO-IR-109")];
+    char stringpool_str248[sizeof("CSKZ1048")];
+    char stringpool_str250[sizeof("CSKOI8R")];
+    char stringpool_str251[sizeof("GB18030")];
+    char stringpool_str252[sizeof("CSPTCP154")];
+    char stringpool_str254[sizeof("KOI8-R")];
+    char stringpool_str256[sizeof("TCVN")];
+    char stringpool_str258[sizeof("GB_1988-80")];
+    char stringpool_str260[sizeof("ISO_8859-10")];
+    char stringpool_str261[sizeof("MS-CYRL")];
+    char stringpool_str268[sizeof("CSISO58GB231280")];
+    char stringpool_str270[sizeof("TIS620.2533-1")];
+    char stringpool_str271[sizeof("KS_C_5601-1989")];
+    char stringpool_str272[sizeof("MACCYRILLIC")];
+    char stringpool_str275[sizeof("HZ-GB-2312")];
+    char stringpool_str277[sizeof("CN-GB-ISOIR165")];
+    char stringpool_str278[sizeof("ISO-IR-110")];
+    char stringpool_str281[sizeof("TIS620-0")];
+    char stringpool_str283[sizeof("CN-GB")];
+    char stringpool_str288[sizeof("TIS620.2529-1")];
+    char stringpool_str293[sizeof("ISO-IR-144")];
+    char stringpool_str294[sizeof("CSIBM866")];
+    char stringpool_str298[sizeof("ISO646-US")];
+    char stringpool_str299[sizeof("IBM850")];
+    char stringpool_str300[sizeof("CP874")];
+    char stringpool_str302[sizeof("CYRILLIC-ASIAN")];
+    char stringpool_str306[sizeof("CSISOLATINGREEK")];
+    char stringpool_str307[sizeof("CHAR")];
+    char stringpool_str310[sizeof("BIG5HKSCS")];
+    char stringpool_str313[sizeof("IBM-850")];
+    char stringpool_str322[sizeof("MS-ANSI")];
+    char stringpool_str323[sizeof("CSUCS4")];
+    char stringpool_str324[sizeof("BIG5-HKSCS")];
+    char stringpool_str327[sizeof("UCS-4")];
+    char stringpool_str330[sizeof("ARMSCII-8")];
+    char stringpool_str335[sizeof("GEORGIAN-PS")];
+    char stringpool_str338[sizeof("CSISOLATIN4")];
+    char stringpool_str339[sizeof("TIS620.2533-0")];
+    char stringpool_str342[sizeof("CSISO2022KR")];
+    char stringpool_str343[sizeof("MACINTOSH")];
+    char stringpool_str345[sizeof("ISO-IR-179")];
+    char stringpool_str347[sizeof("ISO-IR-100")];
+    char stringpool_str350[sizeof("GREEK8")];
+    char stringpool_str355[sizeof("EUCKR")];
+    char stringpool_str358[sizeof("UTF-16")];
+    char stringpool_str359[sizeof("VISCII1.1-1")];
+    char stringpool_str360[sizeof("ISO-2022-KR")];
+    char stringpool_str362[sizeof("CP367")];
+    char stringpool_str363[sizeof("UTF-8")];
+    char stringpool_str364[sizeof("UTF-32")];
+    char stringpool_str369[sizeof("EUC-KR")];
+    char stringpool_str371[sizeof("CP1257")];
+    char stringpool_str378[sizeof("CSISO57GB1988")];
+    char stringpool_str382[sizeof("CSKSC56011987")];
+    char stringpool_str383[sizeof("US-ASCII")];
+    char stringpool_str384[sizeof("CSISOLATINARABIC")];
+    char stringpool_str385[sizeof("ISO_8859-3:1988")];
+    char stringpool_str386[sizeof("CSUNICODE11")];
+    char stringpool_str387[sizeof("ISO_8859-5:1988")];
+    char stringpool_str389[sizeof("ISO_8859-8:1988")];
+    char stringpool_str390[sizeof("UNICODE-1-1")];
+    char stringpool_str391[sizeof("MACTHAI")];
+    char stringpool_str392[sizeof("ROMAN8")];
+    char stringpool_str393[sizeof("ISO-10646-UCS-2")];
+    char stringpool_str398[sizeof("GREEK")];
+    char stringpool_str402[sizeof("LATIN7")];
+    char stringpool_str404[sizeof("STRK1048-2002")];
+    char stringpool_str405[sizeof("WINDOWS-1251")];
+    char stringpool_str406[sizeof("WINDOWS-1256")];
+    char stringpool_str407[sizeof("WINDOWS-1253")];
+    char stringpool_str408[sizeof("WINDOWS-1252")];
+    char stringpool_str409[sizeof("WINDOWS-1255")];
+    char stringpool_str411[sizeof("WINDOWS-1258")];
+    char stringpool_str412[sizeof("CHINESE")];
+    char stringpool_str413[sizeof("NEXTSTEP")];
+    char stringpool_str415[sizeof("ISO_8859-9:1989")];
+    char stringpool_str419[sizeof("KS_C_5601-1987")];
+    char stringpool_str420[sizeof("WINDOWS-936")];
+    char stringpool_str423[sizeof("ISO8859-7")];
+    char stringpool_str434[sizeof("ISO_8859-4:1988")];
+    char stringpool_str436[sizeof("CSPC862LATINHEBREW")];
+    char stringpool_str437[sizeof("ISO-8859-7")];
+    char stringpool_str440[sizeof("ARABIC")];
+    char stringpool_str441[sizeof("ISO-10646-UCS-4")];
+    char stringpool_str445[sizeof("MULELAO-1")];
+    char stringpool_str446[sizeof("ECMA-118")];
+    char stringpool_str448[sizeof("JP")];
+    char stringpool_str451[sizeof("ISO_8859-7")];
+    char stringpool_str453[sizeof("TCVN-5712")];
+    char stringpool_str455[sizeof("TCVN5712-1")];
+    char stringpool_str456[sizeof("WINDOWS-1254")];
+    char stringpool_str459[sizeof("KOREAN")];
+    char stringpool_str461[sizeof("GEORGIAN-ACADEMY")];
+    char stringpool_str462[sizeof("MACICELAND")];
+    char stringpool_str469[sizeof("CSISOLATINHEBREW")];
+    char stringpool_str473[sizeof("ISO-IR-57")];
+    char stringpool_str474[sizeof("WINDOWS-1250")];
+    char stringpool_str475[sizeof("ISO-IR-87")];
+    char stringpool_str477[sizeof("ISO-IR-127")];
+    char stringpool_str478[sizeof("ISO-IR-157")];
+    char stringpool_str481[sizeof("EUCTW")];
+    char stringpool_str483[sizeof("UCS-2LE")];
+    char stringpool_str487[sizeof("HP-ROMAN8")];
+    char stringpool_str488[sizeof("IBM367")];
+    char stringpool_str492[sizeof("KOI8-U")];
+    char stringpool_str493[sizeof("UNICODEBIG")];
+    char stringpool_str495[sizeof("EUC-TW")];
+    char stringpool_str496[sizeof("CSMACINTOSH")];
+    char stringpool_str497[sizeof("CSUNICODE")];
+    char stringpool_str498[sizeof("JIS_C6226-1983")];
+    char stringpool_str501[sizeof("UCS-2-INTERNAL")];
+    char stringpool_str503[sizeof("ISO_646.IRV:1991")];
+    char stringpool_str510[sizeof("CSISO14JISC6220RO")];
+    char stringpool_str511[sizeof("ANSI_X3.4-1986")];
+    char stringpool_str515[sizeof("IBM-EUCCN")];
+    char stringpool_str516[sizeof("ANSI_X3.4-1968")];
+    char stringpool_str518[sizeof("MS-EE")];
+    char stringpool_str521[sizeof("CSPC850MULTILINGUAL")];
+    char stringpool_str523[sizeof("CSHPROMAN8")];
+    char stringpool_str525[sizeof("MACROMAN")];
+    char stringpool_str531[sizeof("UCS-4LE")];
+    char stringpool_str536[sizeof("ECMA-114")];
+    char stringpool_str540[sizeof("UNICODELITTLE")];
+    char stringpool_str543[sizeof("WCHAR_T")];
+    char stringpool_str544[sizeof("ISO_8859-1:1987")];
+    char stringpool_str545[sizeof("ISO_8859-6:1987")];
+    char stringpool_str546[sizeof("ISO_8859-7:2003")];
+    char stringpool_str547[sizeof("ISO_8859-2:1987")];
+    char stringpool_str549[sizeof("UCS-4-INTERNAL")];
+    char stringpool_str554[sizeof("CSISO159JISX02121990")];
+    char stringpool_str556[sizeof("CSEUCKR")];
+    char stringpool_str557[sizeof("CSUNICODE11UTF7")];
+    char stringpool_str561[sizeof("ASMO-708")];
+    char stringpool_str563[sizeof("UNICODE-1-1-UTF-7")];
+    char stringpool_str567[sizeof("JIS_C6220-1969-RO")];
+    char stringpool_str569[sizeof("KOI8-RU")];
+    char stringpool_str572[sizeof("WINDOWS-1257")];
+    char stringpool_str575[sizeof("CSISO2022JP2")];
+    char stringpool_str579[sizeof("MS-TURK")];
+    char stringpool_str583[sizeof("MACCROATIAN")];
+    char stringpool_str584[sizeof("BIG5-HKSCS:2001")];
+    char stringpool_str585[sizeof("ISO646-JP")];
+    char stringpool_str586[sizeof("JIS0208")];
+    char stringpool_str591[sizeof("ISO-2022-JP-1")];
+    char stringpool_str594[sizeof("ISO-2022-JP-2")];
+    char stringpool_str599[sizeof("SHIFT-JIS")];
+    char stringpool_str603[sizeof("BIG5-HKSCS:1999")];
+    char stringpool_str604[sizeof("UCS-2BE")];
+    char stringpool_str606[sizeof("MACGREEK")];
+    char stringpool_str611[sizeof("CSISO2022JP")];
+    char stringpool_str612[sizeof("UTF-16LE")];
+    char stringpool_str613[sizeof("SHIFT_JIS")];
+    char stringpool_str615[sizeof("MS-GREEK")];
+    char stringpool_str616[sizeof("UTF-32LE")];
+    char stringpool_str624[sizeof("EUCJP")];
+    char stringpool_str625[sizeof("MS-HEBR")];
+    char stringpool_str629[sizeof("ISO-2022-JP")];
+    char stringpool_str635[sizeof("BIG5-HKSCS:2004")];
+    char stringpool_str638[sizeof("EUC-JP")];
+    char stringpool_str648[sizeof("MACARABIC")];
+    char stringpool_str652[sizeof("UCS-4BE")];
+    char stringpool_str654[sizeof("UCS-2-SWAPPED")];
+    char stringpool_str660[sizeof("JIS_X0212")];
+    char stringpool_str662[sizeof("MACTURKISH")];
+    char stringpool_str666[sizeof("CSSHIFTJIS")];
+    char stringpool_str672[sizeof("WINDOWS-874")];
+    char stringpool_str682[sizeof("CSEUCTW")];
+    char stringpool_str685[sizeof("UTF-7")];
+    char stringpool_str696[sizeof("IBM-EUCKR")];
+    char stringpool_str702[sizeof("UCS-4-SWAPPED")];
+    char stringpool_str711[sizeof("ISO_8859-7:1987")];
+    char stringpool_str715[sizeof("BIGFIVE")];
+    char stringpool_str717[sizeof("TCVN5712-1:1993")];
+    char stringpool_str723[sizeof("JIS_X0201")];
+    char stringpool_str729[sizeof("BIG-FIVE")];
+    char stringpool_str732[sizeof("HEBREW")];
+    char stringpool_str733[sizeof("UTF-16BE")];
+    char stringpool_str735[sizeof("JIS_X0208")];
+    char stringpool_str737[sizeof("UTF-32BE")];
+    char stringpool_str741[sizeof("JISX0201-1976")];
+    char stringpool_str748[sizeof("JIS_X0212-1990")];
+    char stringpool_str752[sizeof("CSISO87JISX0208")];
+    char stringpool_str753[sizeof("JIS_X0208-1983")];
+    char stringpool_str771[sizeof("MS-ARAB")];
+    char stringpool_str797[sizeof("MACCENTRALEUROPE")];
+    char stringpool_str803[sizeof("CSHALFWIDTHKATAKANA")];
+    char stringpool_str804[sizeof("MS_KANJI")];
+    char stringpool_str807[sizeof("MACROMANIA")];
+    char stringpool_str820[sizeof("JIS_X0208-1990")];
+    char stringpool_str822[sizeof("IBM-EUCTW")];
+    char stringpool_str826[sizeof("WINBALTRIM")];
+    char stringpool_str846[sizeof("EXTENDED_UNIX_CODE_PACKED_FORMAT_FOR_JAPANESE")];
+    char stringpool_str849[sizeof("JIS_X0212.1990-0")];
+    char stringpool_str874[sizeof("CSEUCPKDFMTJAPANESE")];
+    char stringpool_str885[sizeof("JOHAB")];
+    char stringpool_str891[sizeof("JAVA")];
+    char stringpool_str898[sizeof("MACUKRAINE")];
+    char stringpool_str965[sizeof("IBM-EUCJP")];
+    char stringpool_str989[sizeof("MACHEBREW")];
+  };
+static const struct stringpool_t stringpool_contents =
+  {
+    "L1",
+    "L6",
+    "L3",
+    "L2",
+    "L5",
+    "L8",
+    "SJIS",
+    "866",
+    "CN",
+    "862",
+    "CP1131",
+    "CP1361",
+    "CP866",
+    "CP1133",
+    "CP1251",
+    "CP862",
+    "CP1256",
+    "CP1253",
+    "GB2312",
+    "CP1252",
+    "CP1255",
+    "CP936",
+    "CP1258",
+    "CP932",
+    "C99",
+    "L4",
+    "LATIN1",
+    "CP819",
+    "LATIN6",
+    "LATIN3",
+    "LATIN2",
+    "LATIN5",
+    "LATIN8",
+    "R8",
+    "ISO8859-1",
+    "ISO8859-6",
+    "HZ",
+    "ISO8859-3",
+    "ISO8859-11",
+    "ISO8859-2",
+    "ISO8859-16",
+    "ISO8859-5",
+    "ISO8859-13",
+    "ISO8859-8",
+    "ISO8859-15",
+    "ISO-8859-1",
+    "ISO-8859-6",
+    "ISO-8859-3",
+    "ISO-8859-11",
+    "ISO-8859-2",
+    "ISO-8859-16",
+    "ISO-8859-5",
+    "ISO-8859-13",
+    "ISO-8859-8",
+    "ISO-8859-15",
+    "ISO_8859-1",
+    "CYRILLIC",
+    "ISO_8859-6",
+    "LATIN-9",
+    "ISO_8859-3",
+    "ISO_8859-11",
+    "ISO_8859-2",
+    "ISO_8859-16",
+    "ISO_8859-5",
+    "ISO_8859-13",
+    "ISO8859-9",
+    "ISO_8859-16:2001",
+    "ISO_8859-8",
+    "ISO_8859-15",
+    "CP154",
+    "ISO-IR-6",
+    "CP949",
+    "ISO646-CN",
+    "MAC",
+    "ISO_8859-15:1998",
+    "CP1254",
+    "ISO-8859-9",
+    "ISO-IR-166",
+    "ISO-IR-126",
+    "GBK",
+    "ISO-IR-226",
+    "ISO-IR-165",
+    "X0212",
+    "ISO-IR-58",
+    "KOI8-T",
+    "BIG5",
+    "ISO-IR-138",
+    "ISO_8859-9",
+    "L10",
+    "850",
+    "IBM866",
+    "CSISO2022CN",
+    "CSBIG5",
+    "IBM862",
+    "BIG-5",
+    "ASCII",
+    "MS936",
+    "LATIN4",
+    "PT154",
+    "IBM-1131",
+    "CP850",
+    "EUCCN",
+    "CP1250",
+    "CSGB2312",
+    "CN-BIG5",
+    "CSASCII",
+    "ISO-2022-CN",
+    "L7",
+    "ISO-IR-159",
+    "IBM-1252",
+    "ISO_8859-14:1998",
+    "CP950",
+    "IBM-921",
+    "EUC-CN",
+    "ISO-2022-CN-EXT",
+    "ISO8859-4",
+    "IBM-932",
+    "TIS620",
+    "IBM819",
+    "ISO8859-14",
+    "ISO-IR-199",
+    "ISO_8859-10:1992",
+    "US",
+    "KSC_5601",
+    "ISO-IR-148",
+    "ISO-CELTIC",
+    "ISO-8859-4",
+    "UHC",
+    "TIS-620",
+    "ISO-IR-101",
+    "ISO-8859-14",
+    "LATIN10",
+    "X0201",
+    "ISO-IR-203",
+    "VISCII",
+    "ISO_8859-4",
+    "PTCP154",
+    "ISO_8859-14",
+    "X0208",
+    "IBM-CP1133",
+    "CSVISCII",
+    "ISO-IR-149",
+    "UCS-2",
+    "ISO8859-10",
+    "RK1048",
+    "GB_2312-80",
+    "CSISOLATIN1",
+    "ISO-IR-14",
+    "CSISOLATIN6",
+    "ELOT_928",
+    "CSISOLATIN3",
+    "KZ-1048",
+    "CSISOLATIN2",
+    "CSISOLATINCYRILLIC",
+    "CSISOLATIN5",
+    "ISO-8859-10",
+    "ISO-IR-109",
+    "CSKZ1048",
+    "CSKOI8R",
+    "GB18030",
+    "CSPTCP154",
+    "KOI8-R",
+    "TCVN",
+    "GB_1988-80",
+    "ISO_8859-10",
+    "MS-CYRL",
+    "CSISO58GB231280",
+    "TIS620.2533-1",
+    "KS_C_5601-1989",
+    "MACCYRILLIC",
+    "HZ-GB-2312",
+    "CN-GB-ISOIR165",
+    "ISO-IR-110",
+    "TIS620-0",
+    "CN-GB",
+    "TIS620.2529-1",
+    "ISO-IR-144",
+    "CSIBM866",
+    "ISO646-US",
+    "IBM850",
+    "CP874",
+    "CYRILLIC-ASIAN",
+    "CSISOLATINGREEK",
+    "CHAR",
+    "BIG5HKSCS",
+    "IBM-850",
+    "MS-ANSI",
+    "CSUCS4",
+    "BIG5-HKSCS",
+    "UCS-4",
+    "ARMSCII-8",
+    "GEORGIAN-PS",
+    "CSISOLATIN4",
+    "TIS620.2533-0",
+    "CSISO2022KR",
+    "MACINTOSH",
+    "ISO-IR-179",
+    "ISO-IR-100",
+    "GREEK8",
+    "EUCKR",
+    "UTF-16",
+    "VISCII1.1-1",
+    "ISO-2022-KR",
+    "CP367",
+    "UTF-8",
+    "UTF-32",
+    "EUC-KR",
+    "CP1257",
+    "CSISO57GB1988",
+    "CSKSC56011987",
+    "US-ASCII",
+    "CSISOLATINARABIC",
+    "ISO_8859-3:1988",
+    "CSUNICODE11",
+    "ISO_8859-5:1988",
+    "ISO_8859-8:1988",
+    "UNICODE-1-1",
+    "MACTHAI",
+    "ROMAN8",
+    "ISO-10646-UCS-2",
+    "GREEK",
+    "LATIN7",
+    "STRK1048-2002",
+    "WINDOWS-1251",
+    "WINDOWS-1256",
+    "WINDOWS-1253",
+    "WINDOWS-1252",
+    "WINDOWS-1255",
+    "WINDOWS-1258",
+    "CHINESE",
+    "NEXTSTEP",
+    "ISO_8859-9:1989",
+    "KS_C_5601-1987",
+    "WINDOWS-936",
+    "ISO8859-7",
+    "ISO_8859-4:1988",
+    "CSPC862LATINHEBREW",
+    "ISO-8859-7",
+    "ARABIC",
+    "ISO-10646-UCS-4",
+    "MULELAO-1",
+    "ECMA-118",
+    "JP",
+    "ISO_8859-7",
+    "TCVN-5712",
+    "TCVN5712-1",
+    "WINDOWS-1254",
+    "KOREAN",
+    "GEORGIAN-ACADEMY",
+    "MACICELAND",
+    "CSISOLATINHEBREW",
+    "ISO-IR-57",
+    "WINDOWS-1250",
+    "ISO-IR-87",
+    "ISO-IR-127",
+    "ISO-IR-157",
+    "EUCTW",
+    "UCS-2LE",
+    "HP-ROMAN8",
+    "IBM367",
+    "KOI8-U",
+    "UNICODEBIG",
+    "EUC-TW",
+    "CSMACINTOSH",
+    "CSUNICODE",
+    "JIS_C6226-1983",
+    "UCS-2-INTERNAL",
+    "ISO_646.IRV:1991",
+    "CSISO14JISC6220RO",
+    "ANSI_X3.4-1986",
+    "IBM-EUCCN",
+    "ANSI_X3.4-1968",
+    "MS-EE",
+    "CSPC850MULTILINGUAL",
+    "CSHPROMAN8",
+    "MACROMAN",
+    "UCS-4LE",
+    "ECMA-114",
+    "UNICODELITTLE",
+    "WCHAR_T",
+    "ISO_8859-1:1987",
+    "ISO_8859-6:1987",
+    "ISO_8859-7:2003",
+    "ISO_8859-2:1987",
+    "UCS-4-INTERNAL",
+    "CSISO159JISX02121990",
+    "CSEUCKR",
+    "CSUNICODE11UTF7",
+    "ASMO-708",
+    "UNICODE-1-1-UTF-7",
+    "JIS_C6220-1969-RO",
+    "KOI8-RU",
+    "WINDOWS-1257",
+    "CSISO2022JP2",
+    "MS-TURK",
+    "MACCROATIAN",
+    "BIG5-HKSCS:2001",
+    "ISO646-JP",
+    "JIS0208",
+    "ISO-2022-JP-1",
+    "ISO-2022-JP-2",
+    "SHIFT-JIS",
+    "BIG5-HKSCS:1999",
+    "UCS-2BE",
+    "MACGREEK",
+    "CSISO2022JP",
+    "UTF-16LE",
+    "SHIFT_JIS",
+    "MS-GREEK",
+    "UTF-32LE",
+    "EUCJP",
+    "MS-HEBR",
+    "ISO-2022-JP",
+    "BIG5-HKSCS:2004",
+    "EUC-JP",
+    "MACARABIC",
+    "UCS-4BE",
+    "UCS-2-SWAPPED",
+    "JIS_X0212",
+    "MACTURKISH",
+    "CSSHIFTJIS",
+    "WINDOWS-874",
+    "CSEUCTW",
+    "UTF-7",
+    "IBM-EUCKR",
+    "UCS-4-SWAPPED",
+    "ISO_8859-7:1987",
+    "BIGFIVE",
+    "TCVN5712-1:1993",
+    "JIS_X0201",
+    "BIG-FIVE",
+    "HEBREW",
+    "UTF-16BE",
+    "JIS_X0208",
+    "UTF-32BE",
+    "JISX0201-1976",
+    "JIS_X0212-1990",
+    "CSISO87JISX0208",
+    "JIS_X0208-1983",
+    "MS-ARAB",
+    "MACCENTRALEUROPE",
+    "CSHALFWIDTHKATAKANA",
+    "MS_KANJI",
+    "MACROMANIA",
+    "JIS_X0208-1990",
+    "IBM-EUCTW",
+    "WINBALTRIM",
+    "EXTENDED_UNIX_CODE_PACKED_FORMAT_FOR_JAPANESE",
+    "JIS_X0212.1990-0",
+    "CSEUCPKDFMTJAPANESE",
+    "JOHAB",
+    "JAVA",
+    "MACUKRAINE",
+    "IBM-EUCJP",
+    "MACHEBREW"
+  };
+#define stringpool ((const char *) &stringpool_contents)
+
+static const struct alias aliases[] =
+  {
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1},
+#line 60 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str13, ei_iso8859_1},
+#line 134 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str14, ei_iso8859_10},
+#line 76 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str15, ei_iso8859_3},
+#line 68 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str16, ei_iso8859_2},
+#line 126 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str17, ei_iso8859_9},
+    {-1},
+#line 152 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str19, ei_iso8859_14},
+#line 313 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str20, ei_sjis},
+    {-1}, {-1},
+#line 210 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str23, ei_cp866},
+#line 292 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str24, ei_iso646_cn},
+    {-1}, {-1},
+#line 206 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str27, ei_cp862},
+    {-1}, {-1}, {-1}, {-1},
+#line 212 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str32, ei_cp1131},
+#line 362 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str33, ei_johab},
+#line 208 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str34, ei_cp866},
+    {-1},
+#line 248 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str36, ei_cp1133},
+#line 175 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str37, ei_cp1251},
+#line 204 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str38, ei_cp862},
+#line 191 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str39, ei_cp1256},
+    {-1},
+#line 182 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str41, ei_cp1253},
+#line 325 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str42, ei_euc_cn},
+#line 178 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str43, ei_cp1252},
+    {-1},
+#line 188 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str45, ei_cp1255},
+    {-1}, {-1},
+#line 330 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str48, ei_cp936},
+#line 197 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str49, ei_cp1258},
+    {-1}, {-1},
+#line 316 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str52, ei_cp932},
+#line 51 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str53, ei_c99},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1},
+#line 84 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str64, ei_iso8859_4},
+    {-1}, {-1}, {-1},
+#line 59 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str68, ei_iso8859_1},
+#line 57 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str69, ei_iso8859_1},
+#line 133 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str70, ei_iso8859_10},
+    {-1},
+#line 75 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str72, ei_iso8859_3},
+    {-1},
+#line 67 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str74, ei_iso8859_2},
+    {-1},
+#line 125 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str76, ei_iso8859_9},
+    {-1}, {-1}, {-1},
+#line 151 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str80, ei_iso8859_14},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 231 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str88, ei_hp_roman8},
+#line 62 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str89, ei_iso8859_1},
+    {-1},
+#line 102 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str91, ei_iso8859_6},
+#line 337 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str92, ei_hz},
+#line 78 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str93, ei_iso8859_3},
+#line 139 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str94, ei_iso8859_11},
+#line 70 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str95, ei_iso8859_2},
+#line 167 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str96, ei_iso8859_16},
+#line 93 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str97, ei_iso8859_5},
+#line 145 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str98, ei_iso8859_13},
+    {-1}, {-1},
+#line 120 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str101, ei_iso8859_8},
+#line 160 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str102, ei_iso8859_15},
+#line 53 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str103, ei_iso8859_1},
+    {-1},
+#line 94 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str105, ei_iso8859_6},
+    {-1},
+#line 71 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str107, ei_iso8859_3},
+#line 137 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str108, ei_iso8859_11},
+#line 63 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str109, ei_iso8859_2},
+#line 161 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str110, ei_iso8859_16},
+#line 87 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str111, ei_iso8859_5},
+#line 140 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str112, ei_iso8859_13},
+    {-1}, {-1},
+#line 114 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str115, ei_iso8859_8},
+#line 155 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str116, ei_iso8859_15},
+#line 54 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str117, ei_iso8859_1},
+#line 91 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str118, ei_iso8859_5},
+#line 95 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str119, ei_iso8859_6},
+#line 159 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str120, ei_iso8859_15},
+#line 72 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str121, ei_iso8859_3},
+#line 138 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str122, ei_iso8859_11},
+#line 64 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str123, ei_iso8859_2},
+#line 162 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str124, ei_iso8859_16},
+#line 88 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str125, ei_iso8859_5},
+#line 141 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str126, ei_iso8859_13},
+#line 128 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str127, ei_iso8859_9},
+#line 163 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str128, ei_iso8859_16},
+#line 115 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str129, ei_iso8859_8},
+#line 156 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str130, ei_iso8859_15},
+#line 240 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str131, ei_pt154},
+#line 16 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str132, ei_ascii},
+#line 359 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str133, ei_cp949},
+    {-1},
+#line 290 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str135, ei_iso646_cn},
+#line 216 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str136, ei_mac_roman},
+#line 157 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str137, ei_iso8859_15},
+    {-1},
+#line 185 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str139, ei_cp1254},
+    {-1},
+#line 121 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str141, ei_iso8859_9},
+    {-1},
+#line 256 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str143, ei_tis620},
+    {-1},
+#line 107 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str145, ei_iso8859_7},
+#line 329 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str146, ei_ces_gbk},
+    {-1},
+#line 164 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str148, ei_iso8859_16},
+#line 298 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str149, ei_isoir165},
+#line 286 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str150, ei_jisx0212},
+#line 295 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str151, ei_gb2312},
+#line 237 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str152, ei_koi8_t},
+#line 343 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str153, ei_ces_big5},
+#line 117 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str154, ei_iso8859_8},
+#line 122 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str155, ei_iso8859_9},
+#line 166 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str156, ei_iso8859_16},
+    {-1}, {-1},
+#line 201 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str159, ei_cp850},
+#line 209 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str160, ei_cp866},
+#line 335 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str161, ei_iso2022_cn},
+    {-1},
+#line 348 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str163, ei_ces_big5},
+#line 205 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str164, ei_cp862},
+    {-1}, {-1},
+#line 344 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str167, ei_ces_big5},
+#line 13 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str168, ei_ascii},
+#line 331 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str169, ei_cp936},
+#line 83 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str170, ei_iso8859_4},
+#line 238 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str171, ei_pt154},
+#line 213 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str172, ei_cp1131},
+#line 199 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str173, ei_cp850},
+#line 324 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str174, ei_euc_cn},
+#line 172 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str175, ei_cp1250},
+#line 327 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str176, ei_euc_cn},
+#line 347 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str177, ei_ces_big5},
+#line 22 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str178, ei_ascii},
+#line 334 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str179, ei_iso2022_cn},
+#line 144 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str180, ei_iso8859_13},
+    {-1},
+#line 287 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str182, ei_jisx0212},
+#line 181 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str183, ei_cp1252},
+#line 149 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str184, ei_iso8859_14},
+    {-1},
+#line 349 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str186, ei_cp950},
+#line 146 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str187, ei_iso8859_13},
+#line 323 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str188, ei_euc_cn},
+    {-1},
+#line 336 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str190, ei_iso2022_cn_ext},
+#line 86 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str191, ei_iso8859_4},
+#line 317 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str192, ei_cp932},
+#line 251 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str193, ei_tis620},
+    {-1},
+#line 58 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str195, ei_iso8859_1},
+#line 154 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str196, ei_iso8859_14},
+#line 150 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str197, ei_iso8859_14},
+    {-1},
+#line 131 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str199, ei_iso8859_10},
+    {-1},
+#line 21 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str201, ei_ascii},
+#line 300 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str202, ei_ksc5601},
+#line 124 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str203, ei_iso8859_9},
+#line 153 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str204, ei_iso8859_14},
+#line 79 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str205, ei_iso8859_4},
+#line 360 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str206, ei_cp949},
+#line 250 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str207, ei_tis620},
+    {-1},
+#line 66 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str209, ei_iso8859_2},
+#line 147 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str210, ei_iso8859_14},
+#line 165 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str211, ei_iso8859_16},
+    {-1},
+#line 273 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str213, ei_jisx0201},
+    {-1}, {-1},
+#line 158 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str216, ei_iso8859_15},
+#line 259 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str217, ei_viscii},
+    {-1},
+#line 80 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str219, ei_iso8859_4},
+    {-1},
+#line 239 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str221, ei_pt154},
+    {-1}, {-1},
+#line 148 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str224, ei_iso8859_14},
+#line 279 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str225, ei_jisx0208},
+#line 249 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str226, ei_cp1133},
+#line 261 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str227, ei_viscii},
+    {-1},
+#line 303 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str229, ei_ksc5601},
+    {-1},
+#line 24 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str231, ei_ucs2},
+#line 136 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str232, ei_iso8859_10},
+    {-1},
+#line 243 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str234, ei_rk1048},
+#line 294 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str235, ei_gb2312},
+#line 61 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str236, ei_iso8859_1},
+#line 268 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str237, ei_iso646_jp},
+#line 135 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str238, ei_iso8859_10},
+#line 109 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str239, ei_iso8859_7},
+#line 77 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str240, ei_iso8859_3},
+#line 245 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str241, ei_rk1048},
+#line 69 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str242, ei_iso8859_2},
+#line 92 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str243, ei_iso8859_5},
+#line 127 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str244, ei_iso8859_9},
+    {-1},
+#line 129 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str246, ei_iso8859_10},
+#line 74 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str247, ei_iso8859_3},
+#line 246 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str248, ei_rk1048},
+    {-1},
+#line 169 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str250, ei_koi8_r},
+#line 333 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str251, ei_gb18030},
+#line 242 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str252, ei_pt154},
+    {-1},
+#line 168 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str254, ei_koi8_r},
+    {-1},
+#line 262 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str256, ei_tcvn},
+    {-1},
+#line 289 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str258, ei_iso646_cn},
+    {-1},
+#line 130 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str260, ei_iso8859_10},
+#line 177 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str261, ei_cp1251},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 296 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str268, ei_gb2312},
+    {-1},
+#line 255 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str270, ei_tis620},
+#line 302 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str271, ei_ksc5601},
+#line 222 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str272, ei_mac_cyrillic},
+    {-1}, {-1},
+#line 338 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str275, ei_hz},
+    {-1},
+#line 299 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str277, ei_isoir165},
+#line 82 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str278, ei_iso8859_4},
+    {-1}, {-1},
+#line 252 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str281, ei_tis620},
+    {-1},
+#line 326 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str283, ei_euc_cn},
+    {-1}, {-1}, {-1}, {-1},
+#line 253 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str288, ei_tis620},
+    {-1}, {-1}, {-1}, {-1},
+#line 90 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str293, ei_iso8859_5},
+#line 211 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str294, ei_cp866},
+    {-1}, {-1}, {-1},
+#line 14 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str298, ei_ascii},
+#line 200 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str299, ei_cp850},
+#line 257 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str300, ei_cp874},
+    {-1},
+#line 241 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str302, ei_pt154},
+    {-1}, {-1}, {-1},
+#line 112 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str306, ei_iso8859_7},
+#line 365 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str307, ei_local_char},
+    {-1}, {-1},
+#line 353 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str310, ei_big5hkscs2004},
+    {-1}, {-1},
+#line 203 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str313, ei_cp850},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 180 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str322, ei_cp1252},
+#line 35 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str323, ei_ucs4},
+#line 352 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str324, ei_big5hkscs2004},
+    {-1}, {-1},
+#line 33 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str327, ei_ucs4},
+    {-1}, {-1},
+#line 234 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str330, ei_armscii_8},
+    {-1}, {-1}, {-1}, {-1},
+#line 236 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str335, ei_georgian_ps},
+    {-1}, {-1},
+#line 85 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str338, ei_iso8859_4},
+#line 254 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str339, ei_tis620},
+    {-1}, {-1},
+#line 364 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str342, ei_iso2022_kr},
+#line 215 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str343, ei_mac_roman},
+    {-1},
+#line 142 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str345, ei_iso8859_13},
+    {-1},
+#line 56 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str347, ei_iso8859_1},
+    {-1}, {-1},
+#line 110 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str350, ei_iso8859_7},
+    {-1}, {-1}, {-1}, {-1},
+#line 356 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str355, ei_euc_kr},
+    {-1}, {-1},
+#line 38 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str358, ei_utf16},
+#line 260 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str359, ei_viscii},
+#line 363 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str360, ei_iso2022_kr},
+    {-1},
+#line 19 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str362, ei_ascii},
+#line 23 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str363, ei_utf8},
+#line 41 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str364, ei_utf32},
+    {-1}, {-1}, {-1}, {-1},
+#line 355 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str369, ei_euc_kr},
+    {-1},
+#line 194 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str371, ei_cp1257},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 293 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str378, ei_iso646_cn},
+    {-1}, {-1}, {-1},
+#line 304 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str382, ei_ksc5601},
+#line 12 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str383, ei_ascii},
+#line 101 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str384, ei_iso8859_6},
+#line 73 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str385, ei_iso8859_3},
+#line 30 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str386, ei_ucs2be},
+#line 89 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str387, ei_iso8859_5},
+    {-1},
+#line 116 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str389, ei_iso8859_8},
+#line 29 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str390, ei_ucs2be},
+#line 228 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str391, ei_mac_thai},
+#line 230 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str392, ei_hp_roman8},
+#line 25 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str393, ei_ucs2},
+    {-1}, {-1}, {-1}, {-1},
+#line 111 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str398, ei_iso8859_7},
+    {-1}, {-1}, {-1},
+#line 143 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str402, ei_iso8859_13},
+    {-1},
+#line 244 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str404, ei_rk1048},
+#line 176 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str405, ei_cp1251},
+#line 192 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str406, ei_cp1256},
+#line 183 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str407, ei_cp1253},
+#line 179 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str408, ei_cp1252},
+#line 189 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str409, ei_cp1255},
+    {-1},
+#line 198 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str411, ei_cp1258},
+#line 297 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str412, ei_gb2312},
+#line 233 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str413, ei_nextstep},
+    {-1},
+#line 123 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str415, ei_iso8859_9},
+    {-1}, {-1}, {-1},
+#line 301 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str419, ei_ksc5601},
+#line 332 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str420, ei_cp936},
+    {-1}, {-1},
+#line 113 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str423, ei_iso8859_7},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1},
+#line 81 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str434, ei_iso8859_4},
+    {-1},
+#line 207 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str436, ei_cp862},
+#line 103 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str437, ei_iso8859_7},
+    {-1}, {-1},
+#line 100 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str440, ei_iso8859_6},
+#line 34 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str441, ei_ucs4},
+    {-1}, {-1}, {-1},
+#line 247 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str445, ei_mulelao},
+#line 108 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str446, ei_iso8859_7},
+    {-1},
+#line 269 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str448, ei_iso646_jp},
+    {-1}, {-1},
+#line 104 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str451, ei_iso8859_7},
+    {-1},
+#line 263 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str453, ei_tcvn},
+    {-1},
+#line 264 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str455, ei_tcvn},
+#line 186 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str456, ei_cp1254},
+    {-1}, {-1},
+#line 305 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str459, ei_ksc5601},
+    {-1},
+#line 235 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str461, ei_georgian_academy},
+#line 219 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str462, ei_mac_iceland},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 119 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str469, ei_iso8859_8},
+    {-1}, {-1}, {-1},
+#line 291 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str473, ei_iso646_cn},
+#line 173 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str474, ei_cp1250},
+#line 280 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str475, ei_jisx0208},
+    {-1},
+#line 97 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str477, ei_iso8859_6},
+#line 132 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str478, ei_iso8859_10},
+    {-1}, {-1},
+#line 340 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str481, ei_euc_tw},
+    {-1},
+#line 31 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str483, ei_ucs2le},
+    {-1}, {-1}, {-1},
+#line 229 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str487, ei_hp_roman8},
+#line 20 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str488, ei_ascii},
+    {-1}, {-1}, {-1},
+#line 170 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str492, ei_koi8_u},
+#line 28 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str493, ei_ucs2be},
+    {-1},
+#line 339 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str495, ei_euc_tw},
+#line 217 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str496, ei_mac_roman},
+#line 26 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str497, ei_ucs2},
+#line 281 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str498, ei_jisx0208},
+    {-1}, {-1},
+#line 47 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str501, ei_ucs2internal},
+    {-1},
+#line 15 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str503, ei_ascii},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 270 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str510, ei_iso646_jp},
+#line 18 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str511, ei_ascii},
+    {-1}, {-1}, {-1},
+#line 328 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str515, ei_euc_cn},
+#line 17 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str516, ei_ascii},
+    {-1},
+#line 174 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str518, ei_cp1250},
+    {-1}, {-1},
+#line 202 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str521, ei_cp850},
+    {-1},
+#line 232 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str523, ei_hp_roman8},
+    {-1},
+#line 214 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str525, ei_mac_roman},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 37 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str531, ei_ucs4le},
+    {-1}, {-1}, {-1}, {-1},
+#line 98 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str536, ei_iso8859_6},
+    {-1}, {-1}, {-1},
+#line 32 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str540, ei_ucs2le},
+    {-1}, {-1},
+#line 366 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str543, ei_local_wchar_t},
+#line 55 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str544, ei_iso8859_1},
+#line 96 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str545, ei_iso8859_6},
+#line 106 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str546, ei_iso8859_7},
+#line 65 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str547, ei_iso8859_2},
+    {-1},
+#line 49 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str549, ei_ucs4internal},
+    {-1}, {-1}, {-1}, {-1},
+#line 288 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str554, ei_jisx0212},
+    {-1},
+#line 357 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str556, ei_euc_kr},
+#line 46 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str557, ei_utf7},
+    {-1}, {-1}, {-1},
+#line 99 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str561, ei_iso8859_6},
+    {-1},
+#line 45 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str563, ei_utf7},
+    {-1}, {-1}, {-1},
+#line 266 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str567, ei_iso646_jp},
+    {-1},
+#line 171 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str569, ei_koi8_ru},
+    {-1}, {-1},
+#line 195 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str572, ei_cp1257},
+    {-1}, {-1},
+#line 322 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str575, ei_iso2022_jp2},
+    {-1}, {-1}, {-1},
+#line 187 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str579, ei_cp1254},
+    {-1}, {-1}, {-1},
+#line 220 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str583, ei_mac_croatian},
+#line 351 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str584, ei_big5hkscs2001},
+#line 267 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str585, ei_iso646_jp},
+#line 278 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str586, ei_jisx0208},
+    {-1}, {-1}, {-1}, {-1},
+#line 320 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str591, ei_iso2022_jp1},
+    {-1}, {-1},
+#line 321 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str594, ei_iso2022_jp2},
+    {-1}, {-1}, {-1}, {-1},
+#line 312 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str599, ei_sjis},
+    {-1}, {-1}, {-1},
+#line 350 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str603, ei_big5hkscs1999},
+#line 27 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str604, ei_ucs2be},
+    {-1},
+#line 224 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str606, ei_mac_greek},
+    {-1}, {-1}, {-1}, {-1},
+#line 319 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str611, ei_iso2022_jp},
+#line 40 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str612, ei_utf16le},
+#line 311 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str613, ei_sjis},
+    {-1},
+#line 184 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str615, ei_cp1253},
+#line 43 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str616, ei_utf32le},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 307 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str624, ei_euc_jp},
+#line 190 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str625, ei_cp1255},
+    {-1}, {-1}, {-1},
+#line 318 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str629, ei_iso2022_jp},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 354 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str635, ei_big5hkscs2004},
+    {-1}, {-1},
+#line 306 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str638, ei_euc_jp},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 227 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str648, ei_mac_arabic},
+    {-1}, {-1}, {-1},
+#line 36 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str652, ei_ucs4be},
+    {-1},
+#line 48 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str654, ei_ucs2swapped},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 283 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str660, ei_jisx0212},
+    {-1},
+#line 225 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str662, ei_mac_turkish},
+    {-1}, {-1}, {-1},
+#line 315 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str666, ei_sjis},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 258 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str672, ei_cp874},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 341 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str682, ei_euc_tw},
+    {-1}, {-1},
+#line 44 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str685, ei_utf7},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1},
+#line 358 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str696, ei_euc_kr},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 50 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str702, ei_ucs4swapped},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 105 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str711, ei_iso8859_7},
+    {-1}, {-1}, {-1},
+#line 346 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str715, ei_ces_big5},
+    {-1},
+#line 265 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str717, ei_tcvn},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 271 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str723, ei_jisx0201},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 345 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str729, ei_ces_big5},
+    {-1}, {-1},
+#line 118 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str732, ei_iso8859_8},
+#line 39 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str733, ei_utf16be},
+    {-1},
+#line 275 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str735, ei_jisx0208},
+    {-1},
+#line 42 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str737, ei_utf32be},
+    {-1}, {-1}, {-1},
+#line 272 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str741, ei_jisx0201},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 285 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str748, ei_jisx0212},
+    {-1}, {-1}, {-1},
+#line 282 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str752, ei_jisx0208},
+#line 276 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str753, ei_jisx0208},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 193 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str771, ei_cp1256},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 218 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str797, ei_mac_centraleurope},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 274 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str803, ei_jisx0201},
+#line 314 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str804, ei_sjis},
+    {-1}, {-1},
+#line 221 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str807, ei_mac_romania},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1},
+#line 277 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str820, ei_jisx0208},
+    {-1},
+#line 342 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str822, ei_euc_tw},
+    {-1}, {-1}, {-1},
+#line 196 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str826, ei_cp1257},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1},
+#line 308 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str846, ei_euc_jp},
+    {-1}, {-1},
+#line 284 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str849, ei_jisx0212},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 309 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str874, ei_euc_jp},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1},
+#line 361 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str885, ei_johab},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 52 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str891, ei_java},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 223 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str898, ei_mac_ukraine},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1},
+#line 310 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str965, ei_euc_jp},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 226 "lib/aliases_sysaix.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str989, ei_mac_hebrew}
+  };
+
+#ifdef __GNUC__
+__inline
+#if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__
+__attribute__ ((__gnu_inline__))
+#endif
+#endif
+const struct alias *
+aliases_lookup (register const char *str, register unsigned int len)
+{
+  if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+    {
+      register int key = aliases_hash (str, len);
+
+      if (key <= MAX_HASH_VALUE && key >= 0)
+        {
+          register int o = aliases[key].name;
+          if (o >= 0)
+            {
+              register const char *s = o + stringpool;
+
+              if (*str == *s && !strcmp (str + 1, s + 1))
+                return &aliases[key];
+            }
+        }
+    }
+  return 0;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/aliases_syshpux.h b/graf2d/win32gdk/gdk/src/iconv/aliases_syshpux.h
new file mode 100644
index 00000000000..5f76df3b24e
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/aliases_syshpux.h
@@ -0,0 +1,1769 @@
+/* ANSI-C code produced by gperf version 3.0.4 */
+/* Command-line: gperf -m 10 lib/aliases_syshpux.gperf  */
+/* Computed positions: -k'1,3-11,$' */
+
+#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
+      && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
+      && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
+      && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
+      && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
+      && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
+      && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
+      && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
+      && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
+      && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
+      && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
+      && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
+      && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
+      && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
+      && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
+      && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
+      && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
+      && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
+      && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
+      && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
+      && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
+      && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
+      && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
+/* The character set is not based on ISO-646.  */
+#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
+#endif
+
+#line 1 "lib/aliases_syshpux.gperf"
+struct alias { int name; unsigned int encoding_index; };
+
+#define TOTAL_KEYWORDS 356
+#define MIN_WORD_LENGTH 2
+#define MAX_WORD_LENGTH 45
+#define MIN_HASH_VALUE 9
+#define MAX_HASH_VALUE 1038
+/* maximum key range = 1030, duplicates = 0 */
+
+#ifdef __GNUC__
+__inline
+#else
+#ifdef __cplusplus
+inline
+#endif
+#endif
+static unsigned int
+aliases_hash (register const char *str, register unsigned int len)
+{
+  static const unsigned short asso_values[] =
+    {
+      1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039,
+      1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039,
+      1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039,
+      1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039,
+      1039, 1039, 1039, 1039, 1039,    0,  112, 1039,   57,    2,
+         0,   20,   51,    8,    5,   49,   13,   16,  335, 1039,
+      1039, 1039, 1039, 1039, 1039,   13,  149,    1,    6,   10,
+        55,  139,   10,    0,  328,   86,  210,  147,    6,    0,
+        73, 1039,  120,    6,   17,  282,  238,  172,  274,    2,
+         0, 1039, 1039, 1039, 1039,   34, 1039, 1039, 1039, 1039,
+      1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039,
+      1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039,
+      1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039
+    };
+  register int hval = len;
+
+  switch (hval)
+    {
+      default:
+        hval += asso_values[(unsigned char)str[10]];
+      /*FALLTHROUGH*/
+      case 10:
+        hval += asso_values[(unsigned char)str[9]];
+      /*FALLTHROUGH*/
+      case 9:
+        hval += asso_values[(unsigned char)str[8]];
+      /*FALLTHROUGH*/
+      case 8:
+        hval += asso_values[(unsigned char)str[7]];
+      /*FALLTHROUGH*/
+      case 7:
+        hval += asso_values[(unsigned char)str[6]];
+      /*FALLTHROUGH*/
+      case 6:
+        hval += asso_values[(unsigned char)str[5]];
+      /*FALLTHROUGH*/
+      case 5:
+        hval += asso_values[(unsigned char)str[4]];
+      /*FALLTHROUGH*/
+      case 4:
+        hval += asso_values[(unsigned char)str[3]];
+      /*FALLTHROUGH*/
+      case 3:
+        hval += asso_values[(unsigned char)str[2]];
+      /*FALLTHROUGH*/
+      case 2:
+      case 1:
+        hval += asso_values[(unsigned char)str[0]];
+        break;
+    }
+  return hval + asso_values[(unsigned char)str[len - 1]];
+}
+
+struct stringpool_t
+  {
+    char stringpool_str9[sizeof("CN")];
+    char stringpool_str12[sizeof("HZ")];
+    char stringpool_str16[sizeof("862")];
+    char stringpool_str17[sizeof("CP1252")];
+    char stringpool_str19[sizeof("ASCII")];
+    char stringpool_str21[sizeof("CP1251")];
+    char stringpool_str22[sizeof("SJIS")];
+    char stringpool_str24[sizeof("CP862")];
+    char stringpool_str26[sizeof("866")];
+    char stringpool_str27[sizeof("CP1256")];
+    char stringpool_str28[sizeof("CSASCII")];
+    char stringpool_str29[sizeof("EUCCN")];
+    char stringpool_str30[sizeof("EUC-CN")];
+    char stringpool_str33[sizeof("CP1255")];
+    char stringpool_str34[sizeof("CP866")];
+    char stringpool_str35[sizeof("CP1131")];
+    char stringpool_str36[sizeof("C99")];
+    char stringpool_str38[sizeof("CP1361")];
+    char stringpool_str39[sizeof("HP15CN")];
+    char stringpool_str42[sizeof("CP932")];
+    char stringpool_str43[sizeof("CP1258")];
+    char stringpool_str50[sizeof("CHINESE")];
+    char stringpool_str52[sizeof("CP936")];
+    char stringpool_str53[sizeof("CP819")];
+    char stringpool_str57[sizeof("CP1253")];
+    char stringpool_str58[sizeof("ISO88592")];
+    char stringpool_str59[sizeof("ISO8859-2")];
+    char stringpool_str60[sizeof("ISO-8859-2")];
+    char stringpool_str62[sizeof("ISO88591")];
+    char stringpool_str63[sizeof("ISO8859-1")];
+    char stringpool_str64[sizeof("ISO-8859-1")];
+    char stringpool_str66[sizeof("ISO8859-11")];
+    char stringpool_str67[sizeof("ISO-8859-11")];
+    char stringpool_str68[sizeof("ISO88596")];
+    char stringpool_str69[sizeof("ISO8859-6")];
+    char stringpool_str70[sizeof("ISO-8859-6")];
+    char stringpool_str71[sizeof("CP1133")];
+    char stringpool_str72[sizeof("ISO8859-16")];
+    char stringpool_str73[sizeof("ISO-8859-16")];
+    char stringpool_str74[sizeof("ISO88595")];
+    char stringpool_str75[sizeof("ISO8859-5")];
+    char stringpool_str76[sizeof("ISO-8859-5")];
+    char stringpool_str77[sizeof("ISO885915")];
+    char stringpool_str78[sizeof("ISO8859-15")];
+    char stringpool_str79[sizeof("ISO-8859-15")];
+    char stringpool_str81[sizeof("ISO-2022-CN")];
+    char stringpool_str83[sizeof("ISO646-CN")];
+    char stringpool_str84[sizeof("ISO88598")];
+    char stringpool_str85[sizeof("ISO8859-8")];
+    char stringpool_str86[sizeof("ISO-8859-8")];
+    char stringpool_str88[sizeof("CSISO2022CN")];
+    char stringpool_str90[sizeof("ISO88599")];
+    char stringpool_str91[sizeof("ISO8859-9")];
+    char stringpool_str92[sizeof("ISO-8859-9")];
+    char stringpool_str94[sizeof("ISO_8859-2")];
+    char stringpool_str96[sizeof("ISO-2022-CN-EXT")];
+    char stringpool_str98[sizeof("ISO_8859-1")];
+    char stringpool_str99[sizeof("ISO8859-3")];
+    char stringpool_str100[sizeof("ISO-8859-3")];
+    char stringpool_str101[sizeof("ISO_8859-11")];
+    char stringpool_str102[sizeof("ISO8859-13")];
+    char stringpool_str103[sizeof("ISO-8859-13")];
+    char stringpool_str104[sizeof("ISO_8859-6")];
+    char stringpool_str105[sizeof("CP949")];
+    char stringpool_str107[sizeof("ISO_8859-16")];
+    char stringpool_str109[sizeof("ISO_8859-16:2001")];
+    char stringpool_str110[sizeof("ISO_8859-5")];
+    char stringpool_str111[sizeof("ELOT_928")];
+    char stringpool_str113[sizeof("ISO_8859-15")];
+    char stringpool_str115[sizeof("CP1257")];
+    char stringpool_str118[sizeof("CP154")];
+    char stringpool_str119[sizeof("CP1254")];
+    char stringpool_str120[sizeof("ISO_8859-8")];
+    char stringpool_str123[sizeof("ISO_8859-15:1998")];
+    char stringpool_str126[sizeof("ISO_8859-9")];
+    char stringpool_str129[sizeof("CP367")];
+    char stringpool_str130[sizeof("850")];
+    char stringpool_str131[sizeof("CP1250")];
+    char stringpool_str134[sizeof("ISO_8859-3")];
+    char stringpool_str135[sizeof("R8")];
+    char stringpool_str137[sizeof("ISO_8859-13")];
+    char stringpool_str138[sizeof("ISO-IR-6")];
+    char stringpool_str139[sizeof("KOI8-T")];
+    char stringpool_str140[sizeof("ISO-IR-226")];
+    char stringpool_str141[sizeof("CP850")];
+    char stringpool_str142[sizeof("ISO-IR-126")];
+    char stringpool_str144[sizeof("CP950")];
+    char stringpool_str147[sizeof("ISO-IR-166")];
+    char stringpool_str148[sizeof("TIS620")];
+    char stringpool_str149[sizeof("TIS-620")];
+    char stringpool_str152[sizeof("MAC")];
+    char stringpool_str153[sizeof("ISO-IR-165")];
+    char stringpool_str156[sizeof("ISO88597")];
+    char stringpool_str157[sizeof("ISO8859-7")];
+    char stringpool_str158[sizeof("ISO-8859-7")];
+    char stringpool_str159[sizeof("ISO_8859-10:1992")];
+    char stringpool_str161[sizeof("ISO8859-4")];
+    char stringpool_str162[sizeof("ISO-8859-4")];
+    char stringpool_str163[sizeof("ISO-IR-58")];
+    char stringpool_str164[sizeof("ISO8859-14")];
+    char stringpool_str165[sizeof("ISO-8859-14")];
+    char stringpool_str166[sizeof("ISO_8859-14:1998")];
+    char stringpool_str167[sizeof("GB2312")];
+    char stringpool_str170[sizeof("CP874")];
+    char stringpool_str171[sizeof("IBM862")];
+    char stringpool_str172[sizeof("ISO-IR-159")];
+    char stringpool_str176[sizeof("ISO8859-10")];
+    char stringpool_str177[sizeof("ISO-8859-10")];
+    char stringpool_str178[sizeof("ISO-IR-138")];
+    char stringpool_str179[sizeof("MS-ANSI")];
+    char stringpool_str180[sizeof("ISO-IR-199")];
+    char stringpool_str181[sizeof("IBM866")];
+    char stringpool_str182[sizeof("MS-EE")];
+    char stringpool_str183[sizeof("ARABIC")];
+    char stringpool_str190[sizeof("PT154")];
+    char stringpool_str192[sizeof("ISO_8859-7")];
+    char stringpool_str193[sizeof("ISO-IR-101")];
+    char stringpool_str195[sizeof("MACTHAI")];
+    char stringpool_str196[sizeof("ISO_8859-4")];
+    char stringpool_str198[sizeof("MS936")];
+    char stringpool_str199[sizeof("ISO_8859-14")];
+    char stringpool_str200[sizeof("IBM819")];
+    char stringpool_str202[sizeof("ARMSCII-8")];
+    char stringpool_str203[sizeof("KSC_5601")];
+    char stringpool_str206[sizeof("MACINTOSH")];
+    char stringpool_str207[sizeof("TIS620-0")];
+    char stringpool_str208[sizeof("ECMA-118")];
+    char stringpool_str209[sizeof("ISO-IR-148")];
+    char stringpool_str211[sizeof("ISO_8859-10")];
+    char stringpool_str212[sizeof("L2")];
+    char stringpool_str213[sizeof("ISO-IR-179")];
+    char stringpool_str214[sizeof("L1")];
+    char stringpool_str215[sizeof("ISO-IR-149")];
+    char stringpool_str217[sizeof("L6")];
+    char stringpool_str220[sizeof("L5")];
+    char stringpool_str221[sizeof("ISO-IR-109")];
+    char stringpool_str222[sizeof("CSMACINTOSH")];
+    char stringpool_str225[sizeof("L8")];
+    char stringpool_str227[sizeof("ISO-IR-203")];
+    char stringpool_str229[sizeof("KZ-1048")];
+    char stringpool_str230[sizeof("ISO-IR-127")];
+    char stringpool_str231[sizeof("CSKZ1048")];
+    char stringpool_str232[sizeof("L3")];
+    char stringpool_str233[sizeof("ISO-IR-14")];
+    char stringpool_str235[sizeof("ISO-IR-57")];
+    char stringpool_str236[sizeof("TIS620.2529-1")];
+    char stringpool_str238[sizeof("ISO-IR-157")];
+    char stringpool_str239[sizeof("LATIN2")];
+    char stringpool_str240[sizeof("ISO-IR-87")];
+    char stringpool_str243[sizeof("LATIN1")];
+    char stringpool_str246[sizeof("CSKSC56011987")];
+    char stringpool_str247[sizeof("KOREAN")];
+    char stringpool_str248[sizeof("ISO-IR-110")];
+    char stringpool_str249[sizeof("LATIN6")];
+    char stringpool_str250[sizeof("ISO-CELTIC")];
+    char stringpool_str251[sizeof("VISCII")];
+    char stringpool_str254[sizeof("CSVISCII")];
+    char stringpool_str255[sizeof("LATIN5")];
+    char stringpool_str258[sizeof("CHAR")];
+    char stringpool_str259[sizeof("KS_C_5601-1989")];
+    char stringpool_str260[sizeof("TIS620.2533-1")];
+    char stringpool_str261[sizeof("L7")];
+    char stringpool_str262[sizeof("RK1048")];
+    char stringpool_str263[sizeof("L4")];
+    char stringpool_str264[sizeof("CSISOLATIN2")];
+    char stringpool_str265[sizeof("LATIN8")];
+    char stringpool_str266[sizeof("PTCP154")];
+    char stringpool_str268[sizeof("CSISOLATIN1")];
+    char stringpool_str271[sizeof("TCVN")];
+    char stringpool_str272[sizeof("LATIN-9")];
+    char stringpool_str273[sizeof("CSISOLATINCYRILLIC")];
+    char stringpool_str274[sizeof("CSISOLATIN6")];
+    char stringpool_str276[sizeof("IBM367")];
+    char stringpool_str277[sizeof("GREEK8")];
+    char stringpool_str279[sizeof("LATIN3")];
+    char stringpool_str280[sizeof("CSISOLATIN5")];
+    char stringpool_str281[sizeof("X0212")];
+    char stringpool_str283[sizeof("CSISOLATINARABIC")];
+    char stringpool_str284[sizeof("ECMA-114")];
+    char stringpool_str285[sizeof("ISO-IR-144")];
+    char stringpool_str286[sizeof("CSPTCP154")];
+    char stringpool_str287[sizeof("UHC")];
+    char stringpool_str288[sizeof("IBM850")];
+    char stringpool_str290[sizeof("US")];
+    char stringpool_str292[sizeof("KS_C_5601-1987")];
+    char stringpool_str293[sizeof("UCS-2")];
+    char stringpool_str295[sizeof("IBM-CP1133")];
+    char stringpool_str300[sizeof("ASMO-708")];
+    char stringpool_str303[sizeof("ISO-IR-100")];
+    char stringpool_str304[sizeof("CSISOLATIN3")];
+    char stringpool_str308[sizeof("BIG5")];
+    char stringpool_str309[sizeof("BIG-5")];
+    char stringpool_str310[sizeof("US-ASCII")];
+    char stringpool_str311[sizeof("CSBIG5")];
+    char stringpool_str312[sizeof("CN-BIG5")];
+    char stringpool_str314[sizeof("GBK")];
+    char stringpool_str315[sizeof("TIS620.2533-0")];
+    char stringpool_str316[sizeof("UNICODE-1-1")];
+    char stringpool_str318[sizeof("ROMAN8")];
+    char stringpool_str319[sizeof("CSGB2312")];
+    char stringpool_str323[sizeof("CSUNICODE11")];
+    char stringpool_str325[sizeof("CSUNICODE")];
+    char stringpool_str327[sizeof("L10")];
+    char stringpool_str329[sizeof("TCVN-5712")];
+    char stringpool_str330[sizeof("HZ-GB-2312")];
+    char stringpool_str331[sizeof("HP-ROMAN8")];
+    char stringpool_str332[sizeof("GB_2312-80")];
+    char stringpool_str333[sizeof("CSIBM866")];
+    char stringpool_str334[sizeof("TCVN5712-1")];
+    char stringpool_str335[sizeof("MACCROATIAN")];
+    char stringpool_str336[sizeof("GREEK")];
+    char stringpool_str337[sizeof("LATIN7")];
+    char stringpool_str340[sizeof("X0201")];
+    char stringpool_str341[sizeof("LATIN4")];
+    char stringpool_str342[sizeof("EUCKR")];
+    char stringpool_str343[sizeof("EUC-KR")];
+    char stringpool_str345[sizeof("KOI8-R")];
+    char stringpool_str347[sizeof("CSKOI8R")];
+    char stringpool_str352[sizeof("GB18030")];
+    char stringpool_str354[sizeof("GB_1988-80")];
+    char stringpool_str355[sizeof("UTF-16")];
+    char stringpool_str356[sizeof("LATIN10")];
+    char stringpool_str362[sizeof("X0208")];
+    char stringpool_str363[sizeof("UTF-32")];
+    char stringpool_str364[sizeof("ISO646-US")];
+    char stringpool_str366[sizeof("CSISOLATIN4")];
+    char stringpool_str367[sizeof("UTF8")];
+    char stringpool_str368[sizeof("UTF-8")];
+    char stringpool_str369[sizeof("UNICODE-1-1-UTF-7")];
+    char stringpool_str374[sizeof("CSUNICODE11UTF7")];
+    char stringpool_str376[sizeof("VISCII1.1-1")];
+    char stringpool_str377[sizeof("EUCTW")];
+    char stringpool_str378[sizeof("EUC-TW")];
+    char stringpool_str384[sizeof("WINDOWS-1252")];
+    char stringpool_str386[sizeof("WINDOWS-1251")];
+    char stringpool_str389[sizeof("WINDOWS-1256")];
+    char stringpool_str390[sizeof("WCHAR_T")];
+    char stringpool_str392[sizeof("WINDOWS-1255")];
+    char stringpool_str394[sizeof("ISO-2022-KR")];
+    char stringpool_str395[sizeof("UCS-4")];
+    char stringpool_str396[sizeof("CSISO57GB1988")];
+    char stringpool_str397[sizeof("WINDOWS-1258")];
+    char stringpool_str398[sizeof("CSUCS4")];
+    char stringpool_str401[sizeof("CSISO2022KR")];
+    char stringpool_str403[sizeof("JP")];
+    char stringpool_str404[sizeof("WINDOWS-1253")];
+    char stringpool_str405[sizeof("STRK1048-2002")];
+    char stringpool_str406[sizeof("CSHPROMAN8")];
+    char stringpool_str408[sizeof("CSISO58GB231280")];
+    char stringpool_str410[sizeof("MACICELAND")];
+    char stringpool_str412[sizeof("CSISO14JISC6220RO")];
+    char stringpool_str415[sizeof("JIS_C6226-1983")];
+    char stringpool_str417[sizeof("ISO-10646-UCS-2")];
+    char stringpool_str419[sizeof("WINDOWS-936")];
+    char stringpool_str420[sizeof("BIG5HKSCS")];
+    char stringpool_str421[sizeof("BIG5-HKSCS")];
+    char stringpool_str427[sizeof("SHIFT-JIS")];
+    char stringpool_str433[sizeof("WINDOWS-1257")];
+    char stringpool_str435[sizeof("WINDOWS-1254")];
+    char stringpool_str437[sizeof("CN-GB-ISOIR165")];
+    char stringpool_str439[sizeof("CSSHIFTJIS")];
+    char stringpool_str440[sizeof("UTF-7")];
+    char stringpool_str441[sizeof("WINDOWS-1250")];
+    char stringpool_str442[sizeof("EXTENDED_UNIX_CODE_PACKED_FORMAT_FOR_JAPANESE")];
+    char stringpool_str443[sizeof("CN-GB")];
+    char stringpool_str444[sizeof("CSISO159JISX02121990")];
+    char stringpool_str448[sizeof("MACROMAN")];
+    char stringpool_str449[sizeof("GEORGIAN-ACADEMY")];
+    char stringpool_str450[sizeof("JIS_C6220-1969-RO")];
+    char stringpool_str451[sizeof("CSISOLATINHEBREW")];
+    char stringpool_str454[sizeof("MACARABIC")];
+    char stringpool_str455[sizeof("ISO_8859-5:1988")];
+    char stringpool_str460[sizeof("ISO_8859-8:1988")];
+    char stringpool_str461[sizeof("SHIFT_JIS")];
+    char stringpool_str464[sizeof("UCS-2BE")];
+    char stringpool_str466[sizeof("ISO_8859-9:1989")];
+    char stringpool_str467[sizeof("ISO_8859-3:1988")];
+    char stringpool_str468[sizeof("ISO-10646-UCS-4")];
+    char stringpool_str470[sizeof("MACROMANIA")];
+    char stringpool_str471[sizeof("ISO-2022-JP-2")];
+    char stringpool_str473[sizeof("ISO-2022-JP-1")];
+    char stringpool_str477[sizeof("CSISO2022JP2")];
+    char stringpool_str481[sizeof("JIS0208")];
+    char stringpool_str483[sizeof("ISO_8859-2:1987")];
+    char stringpool_str484[sizeof("NEXTSTEP")];
+    char stringpool_str485[sizeof("ISO_8859-1:1987")];
+    char stringpool_str488[sizeof("ISO_8859-6:1987")];
+    char stringpool_str490[sizeof("EUCJP")];
+    char stringpool_str491[sizeof("EUC-JP")];
+    char stringpool_str493[sizeof("CSISOLATINGREEK")];
+    char stringpool_str498[sizeof("ISO_8859-4:1988")];
+    char stringpool_str503[sizeof("ISO_8859-7:2003")];
+    char stringpool_str513[sizeof("GEORGIAN-PS")];
+    char stringpool_str515[sizeof("UCS-4BE")];
+    char stringpool_str521[sizeof("UTF-16BE")];
+    char stringpool_str523[sizeof("CSPC862LATINHEBREW")];
+    char stringpool_str525[sizeof("UCS-2LE")];
+    char stringpool_str526[sizeof("CSHALFWIDTHKATAKANA")];
+    char stringpool_str531[sizeof("ANSI_X3.4-1986")];
+    char stringpool_str532[sizeof("ISO_8859-7:1987")];
+    char stringpool_str534[sizeof("UTF-32BE")];
+    char stringpool_str537[sizeof("WINDOWS-874")];
+    char stringpool_str539[sizeof("ANSI_X3.4-1968")];
+    char stringpool_str542[sizeof("ISO-2022-JP")];
+    char stringpool_str544[sizeof("ISO646-JP")];
+    char stringpool_str549[sizeof("CSISO2022JP")];
+    char stringpool_str551[sizeof("CYRILLIC")];
+    char stringpool_str561[sizeof("MACCENTRALEUROPE")];
+    char stringpool_str563[sizeof("MS-HEBR")];
+    char stringpool_str566[sizeof("UNICODELITTLE")];
+    char stringpool_str576[sizeof("UCS-4LE")];
+    char stringpool_str581[sizeof("CYRILLIC-ASIAN")];
+    char stringpool_str582[sizeof("UTF-16LE")];
+    char stringpool_str583[sizeof("ISO_646.IRV:1991")];
+    char stringpool_str595[sizeof("UTF-32LE")];
+    char stringpool_str596[sizeof("JAVA")];
+    char stringpool_str598[sizeof("MS-ARAB")];
+    char stringpool_str603[sizeof("MULELAO-1")];
+    char stringpool_str606[sizeof("MS-GREEK")];
+    char stringpool_str607[sizeof("MACGREEK")];
+    char stringpool_str608[sizeof("BIGFIVE")];
+    char stringpool_str609[sizeof("BIG-FIVE")];
+    char stringpool_str622[sizeof("MS_KANJI")];
+    char stringpool_str627[sizeof("CSEUCKR")];
+    char stringpool_str639[sizeof("HEBREW")];
+    char stringpool_str644[sizeof("UCS-2-SWAPPED")];
+    char stringpool_str654[sizeof("JOHAB")];
+    char stringpool_str662[sizeof("CSEUCTW")];
+    char stringpool_str665[sizeof("UCS-2-INTERNAL")];
+    char stringpool_str669[sizeof("KOI8-U")];
+    char stringpool_str685[sizeof("MACUKRAINE")];
+    char stringpool_str689[sizeof("MACTURKISH")];
+    char stringpool_str692[sizeof("TCVN5712-1:1993")];
+    char stringpool_str695[sizeof("UCS-4-SWAPPED")];
+    char stringpool_str697[sizeof("MS-CYRL")];
+    char stringpool_str704[sizeof("MACCYRILLIC")];
+    char stringpool_str705[sizeof("CSISO87JISX0208")];
+    char stringpool_str707[sizeof("CSEUCPKDFMTJAPANESE")];
+    char stringpool_str710[sizeof("JIS_X0212")];
+    char stringpool_str716[sizeof("UCS-4-INTERNAL")];
+    char stringpool_str736[sizeof("UNICODEBIG")];
+    char stringpool_str745[sizeof("MS-TURK")];
+    char stringpool_str757[sizeof("BIG5-HKSCS:2001")];
+    char stringpool_str760[sizeof("JISX0201-1976")];
+    char stringpool_str769[sizeof("JIS_X0201")];
+    char stringpool_str771[sizeof("BIG5-HKSCS:1999")];
+    char stringpool_str774[sizeof("JIS_X0212-1990")];
+    char stringpool_str790[sizeof("KOI8-RU")];
+    char stringpool_str791[sizeof("JIS_X0208")];
+    char stringpool_str800[sizeof("MACHEBREW")];
+    char stringpool_str805[sizeof("JIS_X0208-1983")];
+    char stringpool_str806[sizeof("BIG5-HKSCS:2004")];
+    char stringpool_str842[sizeof("JIS_X0208-1990")];
+    char stringpool_str888[sizeof("JIS_X0212.1990-0")];
+    char stringpool_str991[sizeof("WINBALTRIM")];
+    char stringpool_str1038[sizeof("CSPC850MULTILINGUAL")];
+  };
+static const struct stringpool_t stringpool_contents =
+  {
+    "CN",
+    "HZ",
+    "862",
+    "CP1252",
+    "ASCII",
+    "CP1251",
+    "SJIS",
+    "CP862",
+    "866",
+    "CP1256",
+    "CSASCII",
+    "EUCCN",
+    "EUC-CN",
+    "CP1255",
+    "CP866",
+    "CP1131",
+    "C99",
+    "CP1361",
+    "HP15CN",
+    "CP932",
+    "CP1258",
+    "CHINESE",
+    "CP936",
+    "CP819",
+    "CP1253",
+    "ISO88592",
+    "ISO8859-2",
+    "ISO-8859-2",
+    "ISO88591",
+    "ISO8859-1",
+    "ISO-8859-1",
+    "ISO8859-11",
+    "ISO-8859-11",
+    "ISO88596",
+    "ISO8859-6",
+    "ISO-8859-6",
+    "CP1133",
+    "ISO8859-16",
+    "ISO-8859-16",
+    "ISO88595",
+    "ISO8859-5",
+    "ISO-8859-5",
+    "ISO885915",
+    "ISO8859-15",
+    "ISO-8859-15",
+    "ISO-2022-CN",
+    "ISO646-CN",
+    "ISO88598",
+    "ISO8859-8",
+    "ISO-8859-8",
+    "CSISO2022CN",
+    "ISO88599",
+    "ISO8859-9",
+    "ISO-8859-9",
+    "ISO_8859-2",
+    "ISO-2022-CN-EXT",
+    "ISO_8859-1",
+    "ISO8859-3",
+    "ISO-8859-3",
+    "ISO_8859-11",
+    "ISO8859-13",
+    "ISO-8859-13",
+    "ISO_8859-6",
+    "CP949",
+    "ISO_8859-16",
+    "ISO_8859-16:2001",
+    "ISO_8859-5",
+    "ELOT_928",
+    "ISO_8859-15",
+    "CP1257",
+    "CP154",
+    "CP1254",
+    "ISO_8859-8",
+    "ISO_8859-15:1998",
+    "ISO_8859-9",
+    "CP367",
+    "850",
+    "CP1250",
+    "ISO_8859-3",
+    "R8",
+    "ISO_8859-13",
+    "ISO-IR-6",
+    "KOI8-T",
+    "ISO-IR-226",
+    "CP850",
+    "ISO-IR-126",
+    "CP950",
+    "ISO-IR-166",
+    "TIS620",
+    "TIS-620",
+    "MAC",
+    "ISO-IR-165",
+    "ISO88597",
+    "ISO8859-7",
+    "ISO-8859-7",
+    "ISO_8859-10:1992",
+    "ISO8859-4",
+    "ISO-8859-4",
+    "ISO-IR-58",
+    "ISO8859-14",
+    "ISO-8859-14",
+    "ISO_8859-14:1998",
+    "GB2312",
+    "CP874",
+    "IBM862",
+    "ISO-IR-159",
+    "ISO8859-10",
+    "ISO-8859-10",
+    "ISO-IR-138",
+    "MS-ANSI",
+    "ISO-IR-199",
+    "IBM866",
+    "MS-EE",
+    "ARABIC",
+    "PT154",
+    "ISO_8859-7",
+    "ISO-IR-101",
+    "MACTHAI",
+    "ISO_8859-4",
+    "MS936",
+    "ISO_8859-14",
+    "IBM819",
+    "ARMSCII-8",
+    "KSC_5601",
+    "MACINTOSH",
+    "TIS620-0",
+    "ECMA-118",
+    "ISO-IR-148",
+    "ISO_8859-10",
+    "L2",
+    "ISO-IR-179",
+    "L1",
+    "ISO-IR-149",
+    "L6",
+    "L5",
+    "ISO-IR-109",
+    "CSMACINTOSH",
+    "L8",
+    "ISO-IR-203",
+    "KZ-1048",
+    "ISO-IR-127",
+    "CSKZ1048",
+    "L3",
+    "ISO-IR-14",
+    "ISO-IR-57",
+    "TIS620.2529-1",
+    "ISO-IR-157",
+    "LATIN2",
+    "ISO-IR-87",
+    "LATIN1",
+    "CSKSC56011987",
+    "KOREAN",
+    "ISO-IR-110",
+    "LATIN6",
+    "ISO-CELTIC",
+    "VISCII",
+    "CSVISCII",
+    "LATIN5",
+    "CHAR",
+    "KS_C_5601-1989",
+    "TIS620.2533-1",
+    "L7",
+    "RK1048",
+    "L4",
+    "CSISOLATIN2",
+    "LATIN8",
+    "PTCP154",
+    "CSISOLATIN1",
+    "TCVN",
+    "LATIN-9",
+    "CSISOLATINCYRILLIC",
+    "CSISOLATIN6",
+    "IBM367",
+    "GREEK8",
+    "LATIN3",
+    "CSISOLATIN5",
+    "X0212",
+    "CSISOLATINARABIC",
+    "ECMA-114",
+    "ISO-IR-144",
+    "CSPTCP154",
+    "UHC",
+    "IBM850",
+    "US",
+    "KS_C_5601-1987",
+    "UCS-2",
+    "IBM-CP1133",
+    "ASMO-708",
+    "ISO-IR-100",
+    "CSISOLATIN3",
+    "BIG5",
+    "BIG-5",
+    "US-ASCII",
+    "CSBIG5",
+    "CN-BIG5",
+    "GBK",
+    "TIS620.2533-0",
+    "UNICODE-1-1",
+    "ROMAN8",
+    "CSGB2312",
+    "CSUNICODE11",
+    "CSUNICODE",
+    "L10",
+    "TCVN-5712",
+    "HZ-GB-2312",
+    "HP-ROMAN8",
+    "GB_2312-80",
+    "CSIBM866",
+    "TCVN5712-1",
+    "MACCROATIAN",
+    "GREEK",
+    "LATIN7",
+    "X0201",
+    "LATIN4",
+    "EUCKR",
+    "EUC-KR",
+    "KOI8-R",
+    "CSKOI8R",
+    "GB18030",
+    "GB_1988-80",
+    "UTF-16",
+    "LATIN10",
+    "X0208",
+    "UTF-32",
+    "ISO646-US",
+    "CSISOLATIN4",
+    "UTF8",
+    "UTF-8",
+    "UNICODE-1-1-UTF-7",
+    "CSUNICODE11UTF7",
+    "VISCII1.1-1",
+    "EUCTW",
+    "EUC-TW",
+    "WINDOWS-1252",
+    "WINDOWS-1251",
+    "WINDOWS-1256",
+    "WCHAR_T",
+    "WINDOWS-1255",
+    "ISO-2022-KR",
+    "UCS-4",
+    "CSISO57GB1988",
+    "WINDOWS-1258",
+    "CSUCS4",
+    "CSISO2022KR",
+    "JP",
+    "WINDOWS-1253",
+    "STRK1048-2002",
+    "CSHPROMAN8",
+    "CSISO58GB231280",
+    "MACICELAND",
+    "CSISO14JISC6220RO",
+    "JIS_C6226-1983",
+    "ISO-10646-UCS-2",
+    "WINDOWS-936",
+    "BIG5HKSCS",
+    "BIG5-HKSCS",
+    "SHIFT-JIS",
+    "WINDOWS-1257",
+    "WINDOWS-1254",
+    "CN-GB-ISOIR165",
+    "CSSHIFTJIS",
+    "UTF-7",
+    "WINDOWS-1250",
+    "EXTENDED_UNIX_CODE_PACKED_FORMAT_FOR_JAPANESE",
+    "CN-GB",
+    "CSISO159JISX02121990",
+    "MACROMAN",
+    "GEORGIAN-ACADEMY",
+    "JIS_C6220-1969-RO",
+    "CSISOLATINHEBREW",
+    "MACARABIC",
+    "ISO_8859-5:1988",
+    "ISO_8859-8:1988",
+    "SHIFT_JIS",
+    "UCS-2BE",
+    "ISO_8859-9:1989",
+    "ISO_8859-3:1988",
+    "ISO-10646-UCS-4",
+    "MACROMANIA",
+    "ISO-2022-JP-2",
+    "ISO-2022-JP-1",
+    "CSISO2022JP2",
+    "JIS0208",
+    "ISO_8859-2:1987",
+    "NEXTSTEP",
+    "ISO_8859-1:1987",
+    "ISO_8859-6:1987",
+    "EUCJP",
+    "EUC-JP",
+    "CSISOLATINGREEK",
+    "ISO_8859-4:1988",
+    "ISO_8859-7:2003",
+    "GEORGIAN-PS",
+    "UCS-4BE",
+    "UTF-16BE",
+    "CSPC862LATINHEBREW",
+    "UCS-2LE",
+    "CSHALFWIDTHKATAKANA",
+    "ANSI_X3.4-1986",
+    "ISO_8859-7:1987",
+    "UTF-32BE",
+    "WINDOWS-874",
+    "ANSI_X3.4-1968",
+    "ISO-2022-JP",
+    "ISO646-JP",
+    "CSISO2022JP",
+    "CYRILLIC",
+    "MACCENTRALEUROPE",
+    "MS-HEBR",
+    "UNICODELITTLE",
+    "UCS-4LE",
+    "CYRILLIC-ASIAN",
+    "UTF-16LE",
+    "ISO_646.IRV:1991",
+    "UTF-32LE",
+    "JAVA",
+    "MS-ARAB",
+    "MULELAO-1",
+    "MS-GREEK",
+    "MACGREEK",
+    "BIGFIVE",
+    "BIG-FIVE",
+    "MS_KANJI",
+    "CSEUCKR",
+    "HEBREW",
+    "UCS-2-SWAPPED",
+    "JOHAB",
+    "CSEUCTW",
+    "UCS-2-INTERNAL",
+    "KOI8-U",
+    "MACUKRAINE",
+    "MACTURKISH",
+    "TCVN5712-1:1993",
+    "UCS-4-SWAPPED",
+    "MS-CYRL",
+    "MACCYRILLIC",
+    "CSISO87JISX0208",
+    "CSEUCPKDFMTJAPANESE",
+    "JIS_X0212",
+    "UCS-4-INTERNAL",
+    "UNICODEBIG",
+    "MS-TURK",
+    "BIG5-HKSCS:2001",
+    "JISX0201-1976",
+    "JIS_X0201",
+    "BIG5-HKSCS:1999",
+    "JIS_X0212-1990",
+    "KOI8-RU",
+    "JIS_X0208",
+    "MACHEBREW",
+    "JIS_X0208-1983",
+    "BIG5-HKSCS:2004",
+    "JIS_X0208-1990",
+    "JIS_X0212.1990-0",
+    "WINBALTRIM",
+    "CSPC850MULTILINGUAL"
+  };
+#define stringpool ((const char *) &stringpool_contents)
+
+static const struct alias aliases[] =
+  {
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 297 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str9, ei_iso646_cn},
+    {-1}, {-1},
+#line 340 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str12, ei_hz},
+    {-1}, {-1}, {-1},
+#line 212 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str16, ei_cp862},
+#line 186 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str17, ei_cp1252},
+    {-1},
+#line 13 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str19, ei_ascii},
+    {-1},
+#line 183 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str21, ei_cp1251},
+#line 317 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str22, ei_sjis},
+    {-1},
+#line 210 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str24, ei_cp862},
+    {-1},
+#line 216 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str26, ei_cp866},
+#line 198 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str27, ei_cp1256},
+#line 22 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str28, ei_ascii},
+#line 327 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str29, ei_euc_cn},
+#line 326 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str30, ei_euc_cn},
+    {-1}, {-1},
+#line 195 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str33, ei_cp1255},
+#line 214 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str34, ei_cp866},
+#line 218 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str35, ei_cp1131},
+#line 52 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str36, ei_c99},
+    {-1},
+#line 363 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str38, ei_johab},
+#line 331 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str39, ei_euc_cn},
+    {-1}, {-1},
+#line 320 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str42, ei_cp932},
+#line 204 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str43, ei_cp1258},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 302 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str50, ei_gb2312},
+    {-1},
+#line 333 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str52, ei_cp936},
+#line 58 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str53, ei_iso8859_1},
+    {-1}, {-1}, {-1},
+#line 189 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str57, ei_cp1253},
+#line 73 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str58, ei_iso8859_2},
+#line 72 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str59, ei_iso8859_2},
+#line 65 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str60, ei_iso8859_2},
+    {-1},
+#line 64 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str62, ei_iso8859_1},
+#line 63 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str63, ei_iso8859_1},
+#line 54 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str64, ei_iso8859_1},
+    {-1},
+#line 147 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str66, ei_iso8859_11},
+#line 145 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str67, ei_iso8859_11},
+#line 107 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str68, ei_iso8859_6},
+#line 106 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str69, ei_iso8859_6},
+#line 98 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str70, ei_iso8859_6},
+#line 253 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str71, ei_cp1133},
+#line 175 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str72, ei_iso8859_16},
+#line 169 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str73, ei_iso8859_16},
+#line 97 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str74, ei_iso8859_5},
+#line 96 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str75, ei_iso8859_5},
+#line 90 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str76, ei_iso8859_5},
+#line 168 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str77, ei_iso8859_15},
+#line 167 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str78, ei_iso8859_15},
+#line 162 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str79, ei_iso8859_15},
+    {-1},
+#line 337 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str81, ei_iso2022_cn},
+    {-1},
+#line 295 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str83, ei_iso646_cn},
+#line 127 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str84, ei_iso8859_8},
+#line 126 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str85, ei_iso8859_8},
+#line 120 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str86, ei_iso8859_8},
+    {-1},
+#line 338 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str88, ei_iso2022_cn},
+    {-1},
+#line 136 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str90, ei_iso8859_9},
+#line 135 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str91, ei_iso8859_9},
+#line 128 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str92, ei_iso8859_9},
+    {-1},
+#line 66 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str94, ei_iso8859_2},
+    {-1},
+#line 339 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str96, ei_iso2022_cn_ext},
+    {-1},
+#line 55 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str98, ei_iso8859_1},
+#line 81 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str99, ei_iso8859_3},
+#line 74 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str100, ei_iso8859_3},
+#line 146 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str101, ei_iso8859_11},
+#line 153 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str102, ei_iso8859_13},
+#line 148 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str103, ei_iso8859_13},
+#line 99 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str104, ei_iso8859_6},
+#line 360 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str105, ei_cp949},
+    {-1},
+#line 170 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str107, ei_iso8859_16},
+    {-1},
+#line 171 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str109, ei_iso8859_16},
+#line 91 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str110, ei_iso8859_5},
+#line 114 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str111, ei_iso8859_7},
+    {-1},
+#line 163 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str113, ei_iso8859_15},
+    {-1},
+#line 201 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str115, ei_cp1257},
+    {-1}, {-1},
+#line 245 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str118, ei_pt154},
+#line 192 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str119, ei_cp1254},
+#line 121 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str120, ei_iso8859_8},
+    {-1}, {-1},
+#line 164 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str123, ei_iso8859_15},
+    {-1}, {-1},
+#line 129 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str126, ei_iso8859_9},
+    {-1}, {-1},
+#line 19 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str129, ei_ascii},
+#line 208 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str130, ei_cp850},
+#line 180 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str131, ei_cp1250},
+    {-1}, {-1},
+#line 75 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str134, ei_iso8859_3},
+#line 236 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str135, ei_hp_roman8},
+    {-1},
+#line 149 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str137, ei_iso8859_13},
+#line 16 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str138, ei_ascii},
+#line 242 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str139, ei_koi8_t},
+#line 172 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str140, ei_iso8859_16},
+#line 206 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str141, ei_cp850},
+#line 112 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str142, ei_iso8859_7},
+    {-1},
+#line 351 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str144, ei_cp950},
+    {-1}, {-1},
+#line 261 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str147, ei_tis620},
+#line 256 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str148, ei_tis620},
+#line 255 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str149, ei_tis620},
+    {-1}, {-1},
+#line 221 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str152, ei_mac_roman},
+#line 303 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str153, ei_isoir165},
+    {-1}, {-1},
+#line 119 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str156, ei_iso8859_7},
+#line 118 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str157, ei_iso8859_7},
+#line 108 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str158, ei_iso8859_7},
+#line 139 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str159, ei_iso8859_10},
+    {-1},
+#line 89 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str161, ei_iso8859_4},
+#line 82 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str162, ei_iso8859_4},
+#line 300 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str163, ei_gb2312},
+#line 161 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str164, ei_iso8859_14},
+#line 154 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str165, ei_iso8859_14},
+#line 156 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str166, ei_iso8859_14},
+#line 328 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str167, ei_euc_cn},
+    {-1}, {-1},
+#line 262 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str170, ei_cp874},
+#line 211 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str171, ei_cp862},
+#line 292 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str172, ei_jisx0212},
+    {-1}, {-1}, {-1},
+#line 144 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str176, ei_iso8859_10},
+#line 137 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str177, ei_iso8859_10},
+#line 123 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str178, ei_iso8859_8},
+#line 188 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str179, ei_cp1252},
+#line 157 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str180, ei_iso8859_14},
+#line 215 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str181, ei_cp866},
+#line 182 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str182, ei_cp1250},
+#line 104 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str183, ei_iso8859_6},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 243 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str190, ei_pt154},
+    {-1},
+#line 109 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str192, ei_iso8859_7},
+#line 68 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str193, ei_iso8859_2},
+    {-1},
+#line 233 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str195, ei_mac_thai},
+#line 83 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str196, ei_iso8859_4},
+    {-1},
+#line 334 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str198, ei_cp936},
+#line 155 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str199, ei_iso8859_14},
+#line 59 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str200, ei_iso8859_1},
+    {-1},
+#line 239 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str202, ei_armscii_8},
+#line 305 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str203, ei_ksc5601},
+    {-1}, {-1},
+#line 220 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str206, ei_mac_roman},
+#line 257 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str207, ei_tis620},
+#line 113 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str208, ei_iso8859_7},
+#line 131 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str209, ei_iso8859_9},
+    {-1},
+#line 138 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str211, ei_iso8859_10},
+#line 70 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str212, ei_iso8859_2},
+#line 150 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str213, ei_iso8859_13},
+#line 61 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str214, ei_iso8859_1},
+#line 308 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str215, ei_ksc5601},
+    {-1},
+#line 142 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str217, ei_iso8859_10},
+    {-1}, {-1},
+#line 133 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str220, ei_iso8859_9},
+#line 77 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str221, ei_iso8859_3},
+#line 222 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str222, ei_mac_roman},
+    {-1}, {-1},
+#line 159 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str225, ei_iso8859_14},
+    {-1},
+#line 165 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str227, ei_iso8859_15},
+    {-1},
+#line 250 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str229, ei_rk1048},
+#line 101 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str230, ei_iso8859_6},
+#line 251 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str231, ei_rk1048},
+#line 79 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str232, ei_iso8859_3},
+#line 273 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str233, ei_iso646_jp},
+    {-1},
+#line 296 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str235, ei_iso646_cn},
+#line 258 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str236, ei_tis620},
+    {-1},
+#line 140 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str238, ei_iso8859_10},
+#line 69 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str239, ei_iso8859_2},
+#line 285 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str240, ei_jisx0208},
+    {-1}, {-1},
+#line 60 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str243, ei_iso8859_1},
+    {-1}, {-1},
+#line 309 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str246, ei_ksc5601},
+#line 310 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str247, ei_ksc5601},
+#line 85 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str248, ei_iso8859_4},
+#line 141 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str249, ei_iso8859_10},
+#line 160 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str250, ei_iso8859_14},
+#line 264 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str251, ei_viscii},
+    {-1}, {-1},
+#line 266 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str254, ei_viscii},
+#line 132 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str255, ei_iso8859_9},
+    {-1}, {-1},
+#line 366 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str258, ei_local_char},
+#line 307 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str259, ei_ksc5601},
+#line 260 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str260, ei_tis620},
+#line 152 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str261, ei_iso8859_13},
+#line 248 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str262, ei_rk1048},
+#line 87 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str263, ei_iso8859_4},
+#line 71 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str264, ei_iso8859_2},
+#line 158 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str265, ei_iso8859_14},
+#line 244 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str266, ei_pt154},
+    {-1},
+#line 62 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str268, ei_iso8859_1},
+    {-1}, {-1},
+#line 267 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str271, ei_tcvn},
+#line 166 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str272, ei_iso8859_15},
+#line 95 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str273, ei_iso8859_5},
+#line 143 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str274, ei_iso8859_10},
+    {-1},
+#line 20 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str276, ei_ascii},
+#line 115 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str277, ei_iso8859_7},
+    {-1},
+#line 78 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str279, ei_iso8859_3},
+#line 134 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str280, ei_iso8859_9},
+#line 291 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str281, ei_jisx0212},
+    {-1},
+#line 105 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str283, ei_iso8859_6},
+#line 102 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str284, ei_iso8859_6},
+#line 93 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str285, ei_iso8859_5},
+#line 247 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str286, ei_pt154},
+#line 361 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str287, ei_cp949},
+#line 207 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str288, ei_cp850},
+    {-1},
+#line 21 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str290, ei_ascii},
+    {-1},
+#line 306 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str292, ei_ksc5601},
+#line 25 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str293, ei_ucs2},
+    {-1},
+#line 254 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str295, ei_cp1133},
+    {-1}, {-1}, {-1}, {-1},
+#line 103 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str300, ei_iso8859_6},
+    {-1}, {-1},
+#line 57 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str303, ei_iso8859_1},
+#line 80 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str304, ei_iso8859_3},
+    {-1}, {-1}, {-1},
+#line 345 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str308, ei_ces_big5},
+#line 346 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str309, ei_ces_big5},
+#line 12 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str310, ei_ascii},
+#line 350 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str311, ei_ces_big5},
+#line 349 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str312, ei_ces_big5},
+    {-1},
+#line 332 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str314, ei_ces_gbk},
+#line 259 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str315, ei_tis620},
+#line 30 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str316, ei_ucs2be},
+    {-1},
+#line 235 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str318, ei_hp_roman8},
+#line 330 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str319, ei_euc_cn},
+    {-1}, {-1}, {-1},
+#line 31 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str323, ei_ucs2be},
+    {-1},
+#line 27 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str325, ei_ucs2},
+    {-1},
+#line 174 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str327, ei_iso8859_16},
+    {-1},
+#line 268 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str329, ei_tcvn},
+#line 341 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str330, ei_hz},
+#line 234 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str331, ei_hp_roman8},
+#line 299 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str332, ei_gb2312},
+#line 217 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str333, ei_cp866},
+#line 269 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str334, ei_tcvn},
+#line 225 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str335, ei_mac_croatian},
+#line 116 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str336, ei_iso8859_7},
+#line 151 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str337, ei_iso8859_13},
+    {-1}, {-1},
+#line 278 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str340, ei_jisx0201},
+#line 86 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str341, ei_iso8859_4},
+#line 358 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str342, ei_euc_kr},
+#line 357 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str343, ei_euc_kr},
+    {-1},
+#line 176 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str345, ei_koi8_r},
+    {-1},
+#line 177 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str347, ei_koi8_r},
+    {-1}, {-1}, {-1}, {-1},
+#line 336 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str352, ei_gb18030},
+    {-1},
+#line 294 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str354, ei_iso646_cn},
+#line 39 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str355, ei_utf16},
+#line 173 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str356, ei_iso8859_16},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 284 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str362, ei_jisx0208},
+#line 42 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str363, ei_utf32},
+#line 14 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str364, ei_ascii},
+    {-1},
+#line 88 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str366, ei_iso8859_4},
+#line 24 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str367, ei_utf8},
+#line 23 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str368, ei_utf8},
+#line 46 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str369, ei_utf7},
+    {-1}, {-1}, {-1}, {-1},
+#line 47 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str374, ei_utf7},
+    {-1},
+#line 265 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str376, ei_viscii},
+#line 343 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str377, ei_euc_tw},
+#line 342 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str378, ei_euc_tw},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 187 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str384, ei_cp1252},
+    {-1},
+#line 184 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str386, ei_cp1251},
+    {-1}, {-1},
+#line 199 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str389, ei_cp1256},
+#line 367 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str390, ei_local_wchar_t},
+    {-1},
+#line 196 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str392, ei_cp1255},
+    {-1},
+#line 364 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str394, ei_iso2022_kr},
+#line 34 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str395, ei_ucs4},
+#line 298 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str396, ei_iso646_cn},
+#line 205 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str397, ei_cp1258},
+#line 36 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str398, ei_ucs4},
+    {-1}, {-1},
+#line 365 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str401, ei_iso2022_kr},
+    {-1},
+#line 274 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str403, ei_iso646_jp},
+#line 190 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str404, ei_cp1253},
+#line 249 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str405, ei_rk1048},
+#line 237 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str406, ei_hp_roman8},
+    {-1},
+#line 301 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str408, ei_gb2312},
+    {-1},
+#line 224 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str410, ei_mac_iceland},
+    {-1},
+#line 275 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str412, ei_iso646_jp},
+    {-1}, {-1},
+#line 286 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str415, ei_jisx0208},
+    {-1},
+#line 26 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str417, ei_ucs2},
+    {-1},
+#line 335 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str419, ei_cp936},
+#line 355 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str420, ei_big5hkscs2004},
+#line 354 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str421, ei_big5hkscs2004},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 316 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str427, ei_sjis},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 202 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str433, ei_cp1257},
+    {-1},
+#line 193 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str435, ei_cp1254},
+    {-1},
+#line 304 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str437, ei_isoir165},
+    {-1},
+#line 319 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str439, ei_sjis},
+#line 45 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str440, ei_utf7},
+#line 181 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str441, ei_cp1250},
+#line 313 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str442, ei_euc_jp},
+#line 329 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str443, ei_euc_cn},
+#line 293 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str444, ei_jisx0212},
+    {-1}, {-1}, {-1},
+#line 219 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str448, ei_mac_roman},
+#line 240 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str449, ei_georgian_academy},
+#line 271 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str450, ei_iso646_jp},
+#line 125 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str451, ei_iso8859_8},
+    {-1}, {-1},
+#line 232 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str454, ei_mac_arabic},
+#line 92 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str455, ei_iso8859_5},
+    {-1}, {-1}, {-1}, {-1},
+#line 122 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str460, ei_iso8859_8},
+#line 315 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str461, ei_sjis},
+    {-1}, {-1},
+#line 28 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str464, ei_ucs2be},
+    {-1},
+#line 130 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str466, ei_iso8859_9},
+#line 76 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str467, ei_iso8859_3},
+#line 35 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str468, ei_ucs4},
+    {-1},
+#line 226 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str470, ei_mac_romania},
+#line 324 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str471, ei_iso2022_jp2},
+    {-1},
+#line 323 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str473, ei_iso2022_jp1},
+    {-1}, {-1}, {-1},
+#line 325 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str477, ei_iso2022_jp2},
+    {-1}, {-1}, {-1},
+#line 283 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str481, ei_jisx0208},
+    {-1},
+#line 67 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str483, ei_iso8859_2},
+#line 238 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str484, ei_nextstep},
+#line 56 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str485, ei_iso8859_1},
+    {-1}, {-1},
+#line 100 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str488, ei_iso8859_6},
+    {-1},
+#line 312 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str490, ei_euc_jp},
+#line 311 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str491, ei_euc_jp},
+    {-1},
+#line 117 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str493, ei_iso8859_7},
+    {-1}, {-1}, {-1}, {-1},
+#line 84 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str498, ei_iso8859_4},
+    {-1}, {-1}, {-1}, {-1},
+#line 111 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str503, ei_iso8859_7},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 241 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str513, ei_georgian_ps},
+    {-1},
+#line 37 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str515, ei_ucs4be},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 40 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str521, ei_utf16be},
+    {-1},
+#line 213 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str523, ei_cp862},
+    {-1},
+#line 32 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str525, ei_ucs2le},
+#line 279 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str526, ei_jisx0201},
+    {-1}, {-1}, {-1}, {-1},
+#line 18 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str531, ei_ascii},
+#line 110 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str532, ei_iso8859_7},
+    {-1},
+#line 43 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str534, ei_utf32be},
+    {-1}, {-1},
+#line 263 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str537, ei_cp874},
+    {-1},
+#line 17 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str539, ei_ascii},
+    {-1}, {-1},
+#line 321 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str542, ei_iso2022_jp},
+    {-1},
+#line 272 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str544, ei_iso646_jp},
+    {-1}, {-1}, {-1}, {-1},
+#line 322 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str549, ei_iso2022_jp},
+    {-1},
+#line 94 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str551, ei_iso8859_5},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 223 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str561, ei_mac_centraleurope},
+    {-1},
+#line 197 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str563, ei_cp1255},
+    {-1}, {-1},
+#line 33 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str566, ei_ucs2le},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 38 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str576, ei_ucs4le},
+    {-1}, {-1}, {-1}, {-1},
+#line 246 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str581, ei_pt154},
+#line 41 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str582, ei_utf16le},
+#line 15 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str583, ei_ascii},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1},
+#line 44 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str595, ei_utf32le},
+#line 53 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str596, ei_java},
+    {-1},
+#line 200 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str598, ei_cp1256},
+    {-1}, {-1}, {-1}, {-1},
+#line 252 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str603, ei_mulelao},
+    {-1}, {-1},
+#line 191 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str606, ei_cp1253},
+#line 229 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str607, ei_mac_greek},
+#line 348 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str608, ei_ces_big5},
+#line 347 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str609, ei_ces_big5},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1},
+#line 318 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str622, ei_sjis},
+    {-1}, {-1}, {-1}, {-1},
+#line 359 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str627, ei_euc_kr},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1},
+#line 124 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str639, ei_iso8859_8},
+    {-1}, {-1}, {-1}, {-1},
+#line 49 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str644, ei_ucs2swapped},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 362 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str654, ei_johab},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 344 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str662, ei_euc_tw},
+    {-1}, {-1},
+#line 48 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str665, ei_ucs2internal},
+    {-1}, {-1}, {-1},
+#line 178 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str669, ei_koi8_u},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 228 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str685, ei_mac_ukraine},
+    {-1}, {-1}, {-1},
+#line 230 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str689, ei_mac_turkish},
+    {-1}, {-1},
+#line 270 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str692, ei_tcvn},
+    {-1}, {-1},
+#line 51 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str695, ei_ucs4swapped},
+    {-1},
+#line 185 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str697, ei_cp1251},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 227 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str704, ei_mac_cyrillic},
+#line 287 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str705, ei_jisx0208},
+    {-1},
+#line 314 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str707, ei_euc_jp},
+    {-1}, {-1},
+#line 288 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str710, ei_jisx0212},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 50 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str716, ei_ucs4internal},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1},
+#line 29 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str736, ei_ucs2be},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 194 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str745, ei_cp1254},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1},
+#line 353 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str757, ei_big5hkscs2001},
+    {-1}, {-1},
+#line 277 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str760, ei_jisx0201},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 276 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str769, ei_jisx0201},
+    {-1},
+#line 352 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str771, ei_big5hkscs1999},
+    {-1}, {-1},
+#line 290 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str774, ei_jisx0212},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 179 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str790, ei_koi8_ru},
+#line 280 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str791, ei_jisx0208},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 231 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str800, ei_mac_hebrew},
+    {-1}, {-1}, {-1}, {-1},
+#line 281 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str805, ei_jisx0208},
+#line 356 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str806, ei_big5hkscs2004},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 282 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str842, ei_jisx0208},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 289 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str888, ei_jisx0212},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1},
+#line 203 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str991, ei_cp1257},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1},
+#line 209 "lib/aliases_syshpux.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str1038, ei_cp850}
+  };
+
+#ifdef __GNUC__
+__inline
+#if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__
+__attribute__ ((__gnu_inline__))
+#endif
+#endif
+const struct alias *
+aliases_lookup (register const char *str, register unsigned int len)
+{
+  if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+    {
+      register int key = aliases_hash (str, len);
+
+      if (key <= MAX_HASH_VALUE && key >= 0)
+        {
+          register int o = aliases[key].name;
+          if (o >= 0)
+            {
+              register const char *s = o + stringpool;
+
+              if (*str == *s && !strcmp (str + 1, s + 1))
+                return &aliases[key];
+            }
+        }
+    }
+  return 0;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/aliases_sysosf1.h b/graf2d/win32gdk/gdk/src/iconv/aliases_sysosf1.h
new file mode 100644
index 00000000000..36587e1a8a3
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/aliases_sysosf1.h
@@ -0,0 +1,1735 @@
+/* ANSI-C code produced by gperf version 3.0.4 */
+/* Command-line: gperf -m 10 lib/aliases_sysosf1.gperf  */
+/* Computed positions: -k'1,3-11,$' */
+
+#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
+      && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
+      && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
+      && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
+      && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
+      && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
+      && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
+      && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
+      && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
+      && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
+      && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
+      && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
+      && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
+      && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
+      && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
+      && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
+      && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
+      && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
+      && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
+      && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
+      && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
+      && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
+      && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
+/* The character set is not based on ISO-646.  */
+#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
+#endif
+
+#line 1 "lib/aliases_sysosf1.gperf"
+struct alias { int name; unsigned int encoding_index; };
+
+#define TOTAL_KEYWORDS 351
+#define MIN_WORD_LENGTH 2
+#define MAX_WORD_LENGTH 45
+#define MIN_HASH_VALUE 13
+#define MAX_HASH_VALUE 939
+/* maximum key range = 927, duplicates = 0 */
+
+#ifdef __GNUC__
+__inline
+#else
+#ifdef __cplusplus
+inline
+#endif
+#endif
+static unsigned int
+aliases_hash (register const char *str, register unsigned int len)
+{
+  static const unsigned short asso_values[] =
+    {
+      940, 940, 940, 940, 940, 940, 940, 940, 940, 940,
+      940, 940, 940, 940, 940, 940, 940, 940, 940, 940,
+      940, 940, 940, 940, 940, 940, 940, 940, 940, 940,
+      940, 940, 940, 940, 940, 940, 940, 940, 940, 940,
+      940, 940, 940, 940, 940,  13,  80, 940,  73,   4,
+        7,   6,  55,   8,   5, 156,  10,  23, 354, 940,
+      940, 940, 940, 940, 940, 115, 165,   4,   6, 104,
+       89,  13,  53,   4, 304,  95,   7, 150,  18,   4,
+       75, 940,  76,  50,  25, 141, 173, 137, 120,   6,
+        5, 940, 940, 940, 940,  27, 940, 940, 940, 940,
+      940, 940, 940, 940, 940, 940, 940, 940, 940, 940,
+      940, 940, 940, 940, 940, 940, 940, 940, 940, 940,
+      940, 940, 940, 940, 940, 940, 940, 940
+    };
+  register int hval = len;
+
+  switch (hval)
+    {
+      default:
+        hval += asso_values[(unsigned char)str[10]];
+      /*FALLTHROUGH*/
+      case 10:
+        hval += asso_values[(unsigned char)str[9]];
+      /*FALLTHROUGH*/
+      case 9:
+        hval += asso_values[(unsigned char)str[8]];
+      /*FALLTHROUGH*/
+      case 8:
+        hval += asso_values[(unsigned char)str[7]];
+      /*FALLTHROUGH*/
+      case 7:
+        hval += asso_values[(unsigned char)str[6]];
+      /*FALLTHROUGH*/
+      case 6:
+        hval += asso_values[(unsigned char)str[5]];
+      /*FALLTHROUGH*/
+      case 5:
+        hval += asso_values[(unsigned char)str[4]];
+      /*FALLTHROUGH*/
+      case 4:
+        hval += asso_values[(unsigned char)str[3]];
+      /*FALLTHROUGH*/
+      case 3:
+        hval += asso_values[(unsigned char)str[2]];
+      /*FALLTHROUGH*/
+      case 2:
+      case 1:
+        hval += asso_values[(unsigned char)str[0]];
+        break;
+    }
+  return hval + asso_values[(unsigned char)str[len - 1]];
+}
+
+struct stringpool_t
+  {
+    char stringpool_str13[sizeof("L1")];
+    char stringpool_str14[sizeof("L6")];
+    char stringpool_str15[sizeof("L3")];
+    char stringpool_str16[sizeof("L2")];
+    char stringpool_str17[sizeof("L5")];
+    char stringpool_str19[sizeof("L8")];
+    char stringpool_str23[sizeof("866")];
+    char stringpool_str24[sizeof("CN")];
+    char stringpool_str27[sizeof("862")];
+    char stringpool_str32[sizeof("CP1131")];
+    char stringpool_str33[sizeof("CP1361")];
+    char stringpool_str34[sizeof("CP866")];
+    char stringpool_str36[sizeof("CP1133")];
+    char stringpool_str37[sizeof("CP1251")];
+    char stringpool_str38[sizeof("CP862")];
+    char stringpool_str39[sizeof("CP1256")];
+    char stringpool_str41[sizeof("CP1253")];
+    char stringpool_str43[sizeof("CP1252")];
+    char stringpool_str45[sizeof("CP1255")];
+    char stringpool_str48[sizeof("CP936")];
+    char stringpool_str49[sizeof("CP1258")];
+    char stringpool_str50[sizeof("GB2312")];
+    char stringpool_str52[sizeof("CP932")];
+    char stringpool_str53[sizeof("C99")];
+    char stringpool_str60[sizeof("HZ")];
+    char stringpool_str64[sizeof("L4")];
+    char stringpool_str68[sizeof("LATIN1")];
+    char stringpool_str69[sizeof("CP819")];
+    char stringpool_str70[sizeof("LATIN6")];
+    char stringpool_str72[sizeof("LATIN3")];
+    char stringpool_str74[sizeof("LATIN2")];
+    char stringpool_str76[sizeof("LATIN5")];
+    char stringpool_str80[sizeof("LATIN8")];
+    char stringpool_str88[sizeof("R8")];
+    char stringpool_str89[sizeof("ISO8859-1")];
+    char stringpool_str91[sizeof("ISO8859-6")];
+    char stringpool_str93[sizeof("ISO8859-3")];
+    char stringpool_str94[sizeof("ISO8859-11")];
+    char stringpool_str95[sizeof("ISO8859-2")];
+    char stringpool_str96[sizeof("ISO8859-16")];
+    char stringpool_str97[sizeof("ISO8859-5")];
+    char stringpool_str98[sizeof("ISO8859-13")];
+    char stringpool_str101[sizeof("ISO8859-8")];
+    char stringpool_str102[sizeof("ISO8859-15")];
+    char stringpool_str103[sizeof("ISO-8859-1")];
+    char stringpool_str105[sizeof("ISO-8859-6")];
+    char stringpool_str107[sizeof("ISO-8859-3")];
+    char stringpool_str108[sizeof("ISO-8859-11")];
+    char stringpool_str109[sizeof("ISO-8859-2")];
+    char stringpool_str110[sizeof("ISO-8859-16")];
+    char stringpool_str111[sizeof("ISO-8859-5")];
+    char stringpool_str112[sizeof("ISO-8859-13")];
+    char stringpool_str115[sizeof("ISO-8859-8")];
+    char stringpool_str116[sizeof("ISO-8859-15")];
+    char stringpool_str117[sizeof("ISO_8859-1")];
+    char stringpool_str118[sizeof("CYRILLIC")];
+    char stringpool_str119[sizeof("ISO_8859-6")];
+    char stringpool_str120[sizeof("LATIN-9")];
+    char stringpool_str121[sizeof("ISO_8859-3")];
+    char stringpool_str122[sizeof("ISO_8859-11")];
+    char stringpool_str123[sizeof("ISO_8859-2")];
+    char stringpool_str124[sizeof("ISO_8859-16")];
+    char stringpool_str125[sizeof("ISO_8859-5")];
+    char stringpool_str126[sizeof("ISO_8859-13")];
+    char stringpool_str127[sizeof("ISO8859-9")];
+    char stringpool_str128[sizeof("ISO_8859-16:2001")];
+    char stringpool_str129[sizeof("ISO_8859-8")];
+    char stringpool_str130[sizeof("ISO_8859-15")];
+    char stringpool_str131[sizeof("CP154")];
+    char stringpool_str132[sizeof("ISO-IR-6")];
+    char stringpool_str133[sizeof("CP949")];
+    char stringpool_str135[sizeof("ISO646-CN")];
+    char stringpool_str136[sizeof("ASCII")];
+    char stringpool_str137[sizeof("ISO_8859-15:1998")];
+    char stringpool_str139[sizeof("CP1254")];
+    char stringpool_str141[sizeof("ISO-8859-9")];
+    char stringpool_str143[sizeof("ISO-IR-166")];
+    char stringpool_str145[sizeof("ISO-IR-126")];
+    char stringpool_str148[sizeof("ISO-IR-226")];
+    char stringpool_str149[sizeof("ISO-IR-165")];
+    char stringpool_str150[sizeof("X0212")];
+    char stringpool_str151[sizeof("ISO-IR-58")];
+    char stringpool_str152[sizeof("UHC")];
+    char stringpool_str153[sizeof("EUCCN")];
+    char stringpool_str154[sizeof("ISO-IR-138")];
+    char stringpool_str155[sizeof("ISO_8859-9")];
+    char stringpool_str156[sizeof("L10")];
+    char stringpool_str158[sizeof("SJIS")];
+    char stringpool_str159[sizeof("850")];
+    char stringpool_str161[sizeof("MAC")];
+    char stringpool_str164[sizeof("TACTIS")];
+    char stringpool_str165[sizeof("L7")];
+    char stringpool_str167[sizeof("EUC-CN")];
+    char stringpool_str170[sizeof("LATIN4")];
+    char stringpool_str173[sizeof("CP850")];
+    char stringpool_str175[sizeof("CP1250")];
+    char stringpool_str178[sizeof("KOI8-T")];
+    char stringpool_str179[sizeof("ISO-2022-CN")];
+    char stringpool_str182[sizeof("ISO-IR-159")];
+    char stringpool_str183[sizeof("ISO-CELTIC")];
+    char stringpool_str184[sizeof("ISO_8859-14:1998")];
+    char stringpool_str185[sizeof("IBM866")];
+    char stringpool_str186[sizeof("CP950")];
+    char stringpool_str189[sizeof("IBM862")];
+    char stringpool_str190[sizeof("ISO-2022-CN-EXT")];
+    char stringpool_str191[sizeof("ISO8859-4")];
+    char stringpool_str192[sizeof("CSASCII")];
+    char stringpool_str193[sizeof("US")];
+    char stringpool_str194[sizeof("MS936")];
+    char stringpool_str196[sizeof("ISO8859-14")];
+    char stringpool_str197[sizeof("ISO-IR-199")];
+    char stringpool_str198[sizeof("BIG5")];
+    char stringpool_str199[sizeof("ISO_8859-10:1992")];
+    char stringpool_str200[sizeof("KSC5601")];
+    char stringpool_str202[sizeof("PT154")];
+    char stringpool_str203[sizeof("ISO-IR-148")];
+    char stringpool_str205[sizeof("ISO-8859-4")];
+    char stringpool_str206[sizeof("GBK")];
+    char stringpool_str207[sizeof("CSISO2022CN")];
+    char stringpool_str208[sizeof("CSBIG5")];
+    char stringpool_str209[sizeof("ISO-IR-101")];
+    char stringpool_str210[sizeof("ISO-8859-14")];
+    char stringpool_str211[sizeof("LATIN10")];
+    char stringpool_str212[sizeof("BIG-5")];
+    char stringpool_str213[sizeof("X0201")];
+    char stringpool_str216[sizeof("ISO-IR-203")];
+    char stringpool_str217[sizeof("DECHANZI")];
+    char stringpool_str218[sizeof("ELOT_928")];
+    char stringpool_str219[sizeof("ISO_8859-4")];
+    char stringpool_str220[sizeof("IBM819")];
+    char stringpool_str221[sizeof("CSGB2312")];
+    char stringpool_str222[sizeof("CN-BIG5")];
+    char stringpool_str223[sizeof("UCS-2")];
+    char stringpool_str224[sizeof("ISO_8859-14")];
+    char stringpool_str225[sizeof("X0208")];
+    char stringpool_str228[sizeof("KSC_5601")];
+    char stringpool_str229[sizeof("ISO-IR-149")];
+    char stringpool_str232[sizeof("ISO8859-10")];
+    char stringpool_str234[sizeof("RK1048")];
+    char stringpool_str237[sizeof("ISO-IR-14")];
+    char stringpool_str238[sizeof("TCVN")];
+    char stringpool_str239[sizeof("TIS620")];
+    char stringpool_str243[sizeof("GB_2312-80")];
+    char stringpool_str245[sizeof("VISCII")];
+    char stringpool_str246[sizeof("ISO-8859-10")];
+    char stringpool_str247[sizeof("ISO-IR-109")];
+    char stringpool_str250[sizeof("CSISOLATIN1")];
+    char stringpool_str252[sizeof("CSISOLATIN6")];
+    char stringpool_str253[sizeof("TIS-620")];
+    char stringpool_str254[sizeof("CSISOLATIN3")];
+    char stringpool_str255[sizeof("CSVISCII")];
+    char stringpool_str256[sizeof("CSISOLATIN2")];
+    char stringpool_str257[sizeof("CSISOLATINCYRILLIC")];
+    char stringpool_str258[sizeof("CSISOLATIN5")];
+    char stringpool_str259[sizeof("GB18030")];
+    char stringpool_str260[sizeof("ISO_8859-10")];
+    char stringpool_str263[sizeof("UTF-16")];
+    char stringpool_str264[sizeof("CSKZ1048")];
+    char stringpool_str266[sizeof("GB_1988-80")];
+    char stringpool_str267[sizeof("KZ-1048")];
+    char stringpool_str268[sizeof("UTF-8")];
+    char stringpool_str269[sizeof("UTF-32")];
+    char stringpool_str270[sizeof("MS-CYRL")];
+    char stringpool_str275[sizeof("CHAR")];
+    char stringpool_str276[sizeof("CSKOI8R")];
+    char stringpool_str278[sizeof("ISO-IR-110")];
+    char stringpool_str280[sizeof("KOI8-R")];
+    char stringpool_str281[sizeof("MACCYRILLIC")];
+    char stringpool_str282[sizeof("IBM-CP1133")];
+    char stringpool_str283[sizeof("PTCP154")];
+    char stringpool_str284[sizeof("TIS620.2533-1")];
+    char stringpool_str285[sizeof("CP874")];
+    char stringpool_str293[sizeof("ISO-IR-144")];
+    char stringpool_str297[sizeof("KS_C_5601-1989")];
+    char stringpool_str298[sizeof("HZ-GB-2312")];
+    char stringpool_str302[sizeof("TIS620.2529-1")];
+    char stringpool_str308[sizeof("CSUNICODE11")];
+    char stringpool_str312[sizeof("UNICODE-1-1")];
+    char stringpool_str314[sizeof("CSPTCP154")];
+    char stringpool_str315[sizeof("CSUCS4")];
+    char stringpool_str316[sizeof("CYRILLIC-ASIAN")];
+    char stringpool_str319[sizeof("UCS-4")];
+    char stringpool_str324[sizeof("IBM850")];
+    char stringpool_str327[sizeof("TIS620-0")];
+    char stringpool_str330[sizeof("ISO-IR-179")];
+    char stringpool_str332[sizeof("CP367")];
+    char stringpool_str336[sizeof("ISO646-US")];
+    char stringpool_str339[sizeof("ISO-10646-UCS-2")];
+    char stringpool_str341[sizeof("CP1257")];
+    char stringpool_str342[sizeof("GREEK8")];
+    char stringpool_str343[sizeof("US-ASCII")];
+    char stringpool_str347[sizeof("ISO-IR-100")];
+    char stringpool_str352[sizeof("CSISOLATIN4")];
+    char stringpool_str353[sizeof("TIS620.2533-0")];
+    char stringpool_str354[sizeof("CSISOLATINGREEK")];
+    char stringpool_str355[sizeof("VISCII1.1-1")];
+    char stringpool_str356[sizeof("CSIBM866")];
+    char stringpool_str359[sizeof("CSISO58GB231280")];
+    char stringpool_str360[sizeof("EUCKR")];
+    char stringpool_str361[sizeof("MS-ANSI")];
+    char stringpool_str362[sizeof("MACTHAI")];
+    char stringpool_str365[sizeof("CN-GB")];
+    char stringpool_str366[sizeof("CSISOLATINARABIC")];
+    char stringpool_str368[sizeof("CN-GB-ISOIR165")];
+    char stringpool_str369[sizeof("ARMSCII-8")];
+    char stringpool_str370[sizeof("MACINTOSH")];
+    char stringpool_str372[sizeof("LATIN7")];
+    char stringpool_str374[sizeof("EUC-KR")];
+    char stringpool_str381[sizeof("JP")];
+    char stringpool_str385[sizeof("ROMAN8")];
+    char stringpool_str386[sizeof("ISO-2022-KR")];
+    char stringpool_str387[sizeof("ISO-10646-UCS-4")];
+    char stringpool_str393[sizeof("ISO8859-7")];
+    char stringpool_str395[sizeof("CHINESE")];
+    char stringpool_str397[sizeof("GEORGIAN-ACADEMY")];
+    char stringpool_str398[sizeof("CSUNICODE")];
+    char stringpool_str400[sizeof("WINDOWS-1251")];
+    char stringpool_str401[sizeof("WINDOWS-1256")];
+    char stringpool_str402[sizeof("WINDOWS-1253")];
+    char stringpool_str403[sizeof("WINDOWS-1252")];
+    char stringpool_str404[sizeof("WINDOWS-1255")];
+    char stringpool_str406[sizeof("WINDOWS-1258")];
+    char stringpool_str407[sizeof("ISO-8859-7")];
+    char stringpool_str410[sizeof("KOI8-U")];
+    char stringpool_str411[sizeof("CSPC862LATINHEBREW")];
+    char stringpool_str412[sizeof("EUCTW")];
+    char stringpool_str413[sizeof("ARABIC")];
+    char stringpool_str414[sizeof("CSISO2022KR")];
+    char stringpool_str415[sizeof("WINDOWS-936")];
+    char stringpool_str416[sizeof("GREEK")];
+    char stringpool_str417[sizeof("MULELAO-1")];
+    char stringpool_str418[sizeof("ECMA-118")];
+    char stringpool_str420[sizeof("TCVN-5712")];
+    char stringpool_str421[sizeof("ISO_8859-7")];
+    char stringpool_str422[sizeof("TCVN5712-1")];
+    char stringpool_str426[sizeof("EUC-TW")];
+    char stringpool_str428[sizeof("MACICELAND")];
+    char stringpool_str430[sizeof("KS_C_5601-1987")];
+    char stringpool_str432[sizeof("KOREAN")];
+    char stringpool_str433[sizeof("UCS-2LE")];
+    char stringpool_str437[sizeof("CSISOLATINHEBREW")];
+    char stringpool_str439[sizeof("CSKSC56011987")];
+    char stringpool_str441[sizeof("UNICODELITTLE")];
+    char stringpool_str442[sizeof("GEORGIAN-PS")];
+    char stringpool_str443[sizeof("ISO-IR-57")];
+    char stringpool_str445[sizeof("ISO-IR-87")];
+    char stringpool_str446[sizeof("JIS_C6226-1983")];
+    char stringpool_str447[sizeof("ISO-IR-127")];
+    char stringpool_str448[sizeof("ISO-IR-157")];
+    char stringpool_str449[sizeof("DECKOREAN")];
+    char stringpool_str451[sizeof("WINDOWS-1254")];
+    char stringpool_str453[sizeof("ISO_646.IRV:1991")];
+    char stringpool_str454[sizeof("CSISO57GB1988")];
+    char stringpool_str458[sizeof("HP-ROMAN8")];
+    char stringpool_str464[sizeof("CSUNICODE11UTF7")];
+    char stringpool_str465[sizeof("WCHAR_T")];
+    char stringpool_str468[sizeof("UNICODEBIG")];
+    char stringpool_str469[sizeof("WINDOWS-1250")];
+    char stringpool_str470[sizeof("UNICODE-1-1-UTF-7")];
+    char stringpool_str472[sizeof("UCS-2-INTERNAL")];
+    char stringpool_str475[sizeof("UTF-16LE")];
+    char stringpool_str476[sizeof("STRK1048-2002")];
+    char stringpool_str479[sizeof("UTF-32LE")];
+    char stringpool_str480[sizeof("MS-EE")];
+    char stringpool_str481[sizeof("UCS-4LE")];
+    char stringpool_str483[sizeof("IBM367")];
+    char stringpool_str484[sizeof("ISO_8859-3:1988")];
+    char stringpool_str486[sizeof("ISO_8859-5:1988")];
+    char stringpool_str487[sizeof("KOI8-RU")];
+    char stringpool_str488[sizeof("ISO_8859-8:1988")];
+    char stringpool_str491[sizeof("CSMACINTOSH")];
+    char stringpool_str493[sizeof("ANSI_X3.4-1986")];
+    char stringpool_str497[sizeof("BIG5HKSCS")];
+    char stringpool_str498[sizeof("ANSI_X3.4-1968")];
+    char stringpool_str500[sizeof("NEXTSTEP")];
+    char stringpool_str504[sizeof("CSISO14JISC6220RO")];
+    char stringpool_str507[sizeof("CSEUCKR")];
+    char stringpool_str508[sizeof("ECMA-114")];
+    char stringpool_str511[sizeof("BIG5-HKSCS")];
+    char stringpool_str514[sizeof("ISO_8859-9:1989")];
+    char stringpool_str515[sizeof("JIS_C6220-1969-RO")];
+    char stringpool_str520[sizeof("UCS-4-INTERNAL")];
+    char stringpool_str523[sizeof("CSPC850MULTILINGUAL")];
+    char stringpool_str524[sizeof("ISO-2022-JP-1")];
+    char stringpool_str525[sizeof("CSHPROMAN8")];
+    char stringpool_str527[sizeof("ISO-2022-JP-2")];
+    char stringpool_str533[sizeof("ISO_8859-4:1988")];
+    char stringpool_str534[sizeof("JIS0208")];
+    char stringpool_str539[sizeof("ASMO-708")];
+    char stringpool_str543[sizeof("MACROMAN")];
+    char stringpool_str544[sizeof("MACCROATIAN")];
+    char stringpool_str548[sizeof("CSISO159JISX02121990")];
+    char stringpool_str549[sizeof("ISO646-JP")];
+    char stringpool_str552[sizeof("WINDOWS-1257")];
+    char stringpool_str554[sizeof("CSISO2022JP2")];
+    char stringpool_str559[sizeof("CSEUCTW")];
+    char stringpool_str560[sizeof("UTF-7")];
+    char stringpool_str567[sizeof("EUCJP")];
+    char stringpool_str581[sizeof("EUC-JP")];
+    char stringpool_str591[sizeof("UCS-2BE")];
+    char stringpool_str593[sizeof("ISO-2022-JP")];
+    char stringpool_str598[sizeof("SHIFT-JIS")];
+    char stringpool_str602[sizeof("MS-TURK")];
+    char stringpool_str608[sizeof("JIS_X0212")];
+    char stringpool_str612[sizeof("SHIFT_JIS")];
+    char stringpool_str621[sizeof("CSISO2022JP")];
+    char stringpool_str627[sizeof("CSHALFWIDTHKATAKANA")];
+    char stringpool_str628[sizeof("ISO_8859-1:1987")];
+    char stringpool_str629[sizeof("ISO_8859-6:1987")];
+    char stringpool_str630[sizeof("ISO_8859-7:2003")];
+    char stringpool_str631[sizeof("ISO_8859-2:1987")];
+    char stringpool_str633[sizeof("UTF-16BE")];
+    char stringpool_str637[sizeof("UTF-32BE")];
+    char stringpool_str639[sizeof("UCS-4BE")];
+    char stringpool_str643[sizeof("CSSHIFTJIS")];
+    char stringpool_str644[sizeof("MS-HEBR")];
+    char stringpool_str646[sizeof("MACARABIC")];
+    char stringpool_str649[sizeof("MACGREEK")];
+    char stringpool_str652[sizeof("WINDOWS-874")];
+    char stringpool_str658[sizeof("MS-GREEK")];
+    char stringpool_str659[sizeof("BIGFIVE")];
+    char stringpool_str661[sizeof("MACTURKISH")];
+    char stringpool_str671[sizeof("JIS_X0201")];
+    char stringpool_str673[sizeof("BIG-FIVE")];
+    char stringpool_str678[sizeof("HEBREW")];
+    char stringpool_str683[sizeof("JIS_X0208")];
+    char stringpool_str689[sizeof("JISX0201-1976")];
+    char stringpool_str695[sizeof("UCS-2-SWAPPED")];
+    char stringpool_str696[sizeof("JIS_X0212-1990")];
+    char stringpool_str701[sizeof("JIS_X0208-1983")];
+    char stringpool_str702[sizeof("EXTENDED_UNIX_CODE_PACKED_FORMAT_FOR_JAPANESE")];
+    char stringpool_str707[sizeof("SDECKANJI")];
+    char stringpool_str711[sizeof("JAVA")];
+    char stringpool_str725[sizeof("MS_KANJI")];
+    char stringpool_str727[sizeof("MACCENTRALEUROPE")];
+    char stringpool_str731[sizeof("CSISO87JISX0208")];
+    char stringpool_str743[sizeof("UCS-4-SWAPPED")];
+    char stringpool_str761[sizeof("MACROMANIA")];
+    char stringpool_str765[sizeof("JIS_X0212.1990-0")];
+    char stringpool_str768[sizeof("JIS_X0208-1990")];
+    char stringpool_str780[sizeof("ISO_8859-7:1987")];
+    char stringpool_str783[sizeof("TCVN5712-1:1993")];
+    char stringpool_str806[sizeof("MS-ARAB")];
+    char stringpool_str807[sizeof("JOHAB")];
+    char stringpool_str816[sizeof("CSEUCPKDFMTJAPANESE")];
+    char stringpool_str821[sizeof("MACUKRAINE")];
+    char stringpool_str824[sizeof("BIG5-HKSCS:2001")];
+    char stringpool_str843[sizeof("BIG5-HKSCS:1999")];
+    char stringpool_str857[sizeof("WINBALTRIM")];
+    char stringpool_str875[sizeof("BIG5-HKSCS:2004")];
+    char stringpool_str939[sizeof("MACHEBREW")];
+  };
+static const struct stringpool_t stringpool_contents =
+  {
+    "L1",
+    "L6",
+    "L3",
+    "L2",
+    "L5",
+    "L8",
+    "866",
+    "CN",
+    "862",
+    "CP1131",
+    "CP1361",
+    "CP866",
+    "CP1133",
+    "CP1251",
+    "CP862",
+    "CP1256",
+    "CP1253",
+    "CP1252",
+    "CP1255",
+    "CP936",
+    "CP1258",
+    "GB2312",
+    "CP932",
+    "C99",
+    "HZ",
+    "L4",
+    "LATIN1",
+    "CP819",
+    "LATIN6",
+    "LATIN3",
+    "LATIN2",
+    "LATIN5",
+    "LATIN8",
+    "R8",
+    "ISO8859-1",
+    "ISO8859-6",
+    "ISO8859-3",
+    "ISO8859-11",
+    "ISO8859-2",
+    "ISO8859-16",
+    "ISO8859-5",
+    "ISO8859-13",
+    "ISO8859-8",
+    "ISO8859-15",
+    "ISO-8859-1",
+    "ISO-8859-6",
+    "ISO-8859-3",
+    "ISO-8859-11",
+    "ISO-8859-2",
+    "ISO-8859-16",
+    "ISO-8859-5",
+    "ISO-8859-13",
+    "ISO-8859-8",
+    "ISO-8859-15",
+    "ISO_8859-1",
+    "CYRILLIC",
+    "ISO_8859-6",
+    "LATIN-9",
+    "ISO_8859-3",
+    "ISO_8859-11",
+    "ISO_8859-2",
+    "ISO_8859-16",
+    "ISO_8859-5",
+    "ISO_8859-13",
+    "ISO8859-9",
+    "ISO_8859-16:2001",
+    "ISO_8859-8",
+    "ISO_8859-15",
+    "CP154",
+    "ISO-IR-6",
+    "CP949",
+    "ISO646-CN",
+    "ASCII",
+    "ISO_8859-15:1998",
+    "CP1254",
+    "ISO-8859-9",
+    "ISO-IR-166",
+    "ISO-IR-126",
+    "ISO-IR-226",
+    "ISO-IR-165",
+    "X0212",
+    "ISO-IR-58",
+    "UHC",
+    "EUCCN",
+    "ISO-IR-138",
+    "ISO_8859-9",
+    "L10",
+    "SJIS",
+    "850",
+    "MAC",
+    "TACTIS",
+    "L7",
+    "EUC-CN",
+    "LATIN4",
+    "CP850",
+    "CP1250",
+    "KOI8-T",
+    "ISO-2022-CN",
+    "ISO-IR-159",
+    "ISO-CELTIC",
+    "ISO_8859-14:1998",
+    "IBM866",
+    "CP950",
+    "IBM862",
+    "ISO-2022-CN-EXT",
+    "ISO8859-4",
+    "CSASCII",
+    "US",
+    "MS936",
+    "ISO8859-14",
+    "ISO-IR-199",
+    "BIG5",
+    "ISO_8859-10:1992",
+    "KSC5601",
+    "PT154",
+    "ISO-IR-148",
+    "ISO-8859-4",
+    "GBK",
+    "CSISO2022CN",
+    "CSBIG5",
+    "ISO-IR-101",
+    "ISO-8859-14",
+    "LATIN10",
+    "BIG-5",
+    "X0201",
+    "ISO-IR-203",
+    "DECHANZI",
+    "ELOT_928",
+    "ISO_8859-4",
+    "IBM819",
+    "CSGB2312",
+    "CN-BIG5",
+    "UCS-2",
+    "ISO_8859-14",
+    "X0208",
+    "KSC_5601",
+    "ISO-IR-149",
+    "ISO8859-10",
+    "RK1048",
+    "ISO-IR-14",
+    "TCVN",
+    "TIS620",
+    "GB_2312-80",
+    "VISCII",
+    "ISO-8859-10",
+    "ISO-IR-109",
+    "CSISOLATIN1",
+    "CSISOLATIN6",
+    "TIS-620",
+    "CSISOLATIN3",
+    "CSVISCII",
+    "CSISOLATIN2",
+    "CSISOLATINCYRILLIC",
+    "CSISOLATIN5",
+    "GB18030",
+    "ISO_8859-10",
+    "UTF-16",
+    "CSKZ1048",
+    "GB_1988-80",
+    "KZ-1048",
+    "UTF-8",
+    "UTF-32",
+    "MS-CYRL",
+    "CHAR",
+    "CSKOI8R",
+    "ISO-IR-110",
+    "KOI8-R",
+    "MACCYRILLIC",
+    "IBM-CP1133",
+    "PTCP154",
+    "TIS620.2533-1",
+    "CP874",
+    "ISO-IR-144",
+    "KS_C_5601-1989",
+    "HZ-GB-2312",
+    "TIS620.2529-1",
+    "CSUNICODE11",
+    "UNICODE-1-1",
+    "CSPTCP154",
+    "CSUCS4",
+    "CYRILLIC-ASIAN",
+    "UCS-4",
+    "IBM850",
+    "TIS620-0",
+    "ISO-IR-179",
+    "CP367",
+    "ISO646-US",
+    "ISO-10646-UCS-2",
+    "CP1257",
+    "GREEK8",
+    "US-ASCII",
+    "ISO-IR-100",
+    "CSISOLATIN4",
+    "TIS620.2533-0",
+    "CSISOLATINGREEK",
+    "VISCII1.1-1",
+    "CSIBM866",
+    "CSISO58GB231280",
+    "EUCKR",
+    "MS-ANSI",
+    "MACTHAI",
+    "CN-GB",
+    "CSISOLATINARABIC",
+    "CN-GB-ISOIR165",
+    "ARMSCII-8",
+    "MACINTOSH",
+    "LATIN7",
+    "EUC-KR",
+    "JP",
+    "ROMAN8",
+    "ISO-2022-KR",
+    "ISO-10646-UCS-4",
+    "ISO8859-7",
+    "CHINESE",
+    "GEORGIAN-ACADEMY",
+    "CSUNICODE",
+    "WINDOWS-1251",
+    "WINDOWS-1256",
+    "WINDOWS-1253",
+    "WINDOWS-1252",
+    "WINDOWS-1255",
+    "WINDOWS-1258",
+    "ISO-8859-7",
+    "KOI8-U",
+    "CSPC862LATINHEBREW",
+    "EUCTW",
+    "ARABIC",
+    "CSISO2022KR",
+    "WINDOWS-936",
+    "GREEK",
+    "MULELAO-1",
+    "ECMA-118",
+    "TCVN-5712",
+    "ISO_8859-7",
+    "TCVN5712-1",
+    "EUC-TW",
+    "MACICELAND",
+    "KS_C_5601-1987",
+    "KOREAN",
+    "UCS-2LE",
+    "CSISOLATINHEBREW",
+    "CSKSC56011987",
+    "UNICODELITTLE",
+    "GEORGIAN-PS",
+    "ISO-IR-57",
+    "ISO-IR-87",
+    "JIS_C6226-1983",
+    "ISO-IR-127",
+    "ISO-IR-157",
+    "DECKOREAN",
+    "WINDOWS-1254",
+    "ISO_646.IRV:1991",
+    "CSISO57GB1988",
+    "HP-ROMAN8",
+    "CSUNICODE11UTF7",
+    "WCHAR_T",
+    "UNICODEBIG",
+    "WINDOWS-1250",
+    "UNICODE-1-1-UTF-7",
+    "UCS-2-INTERNAL",
+    "UTF-16LE",
+    "STRK1048-2002",
+    "UTF-32LE",
+    "MS-EE",
+    "UCS-4LE",
+    "IBM367",
+    "ISO_8859-3:1988",
+    "ISO_8859-5:1988",
+    "KOI8-RU",
+    "ISO_8859-8:1988",
+    "CSMACINTOSH",
+    "ANSI_X3.4-1986",
+    "BIG5HKSCS",
+    "ANSI_X3.4-1968",
+    "NEXTSTEP",
+    "CSISO14JISC6220RO",
+    "CSEUCKR",
+    "ECMA-114",
+    "BIG5-HKSCS",
+    "ISO_8859-9:1989",
+    "JIS_C6220-1969-RO",
+    "UCS-4-INTERNAL",
+    "CSPC850MULTILINGUAL",
+    "ISO-2022-JP-1",
+    "CSHPROMAN8",
+    "ISO-2022-JP-2",
+    "ISO_8859-4:1988",
+    "JIS0208",
+    "ASMO-708",
+    "MACROMAN",
+    "MACCROATIAN",
+    "CSISO159JISX02121990",
+    "ISO646-JP",
+    "WINDOWS-1257",
+    "CSISO2022JP2",
+    "CSEUCTW",
+    "UTF-7",
+    "EUCJP",
+    "EUC-JP",
+    "UCS-2BE",
+    "ISO-2022-JP",
+    "SHIFT-JIS",
+    "MS-TURK",
+    "JIS_X0212",
+    "SHIFT_JIS",
+    "CSISO2022JP",
+    "CSHALFWIDTHKATAKANA",
+    "ISO_8859-1:1987",
+    "ISO_8859-6:1987",
+    "ISO_8859-7:2003",
+    "ISO_8859-2:1987",
+    "UTF-16BE",
+    "UTF-32BE",
+    "UCS-4BE",
+    "CSSHIFTJIS",
+    "MS-HEBR",
+    "MACARABIC",
+    "MACGREEK",
+    "WINDOWS-874",
+    "MS-GREEK",
+    "BIGFIVE",
+    "MACTURKISH",
+    "JIS_X0201",
+    "BIG-FIVE",
+    "HEBREW",
+    "JIS_X0208",
+    "JISX0201-1976",
+    "UCS-2-SWAPPED",
+    "JIS_X0212-1990",
+    "JIS_X0208-1983",
+    "EXTENDED_UNIX_CODE_PACKED_FORMAT_FOR_JAPANESE",
+    "SDECKANJI",
+    "JAVA",
+    "MS_KANJI",
+    "MACCENTRALEUROPE",
+    "CSISO87JISX0208",
+    "UCS-4-SWAPPED",
+    "MACROMANIA",
+    "JIS_X0212.1990-0",
+    "JIS_X0208-1990",
+    "ISO_8859-7:1987",
+    "TCVN5712-1:1993",
+    "MS-ARAB",
+    "JOHAB",
+    "CSEUCPKDFMTJAPANESE",
+    "MACUKRAINE",
+    "BIG5-HKSCS:2001",
+    "BIG5-HKSCS:1999",
+    "WINBALTRIM",
+    "BIG5-HKSCS:2004",
+    "MACHEBREW"
+  };
+#define stringpool ((const char *) &stringpool_contents)
+
+static const struct alias aliases[] =
+  {
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1},
+#line 60 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str13, ei_iso8859_1},
+#line 134 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str14, ei_iso8859_10},
+#line 76 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str15, ei_iso8859_3},
+#line 68 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str16, ei_iso8859_2},
+#line 126 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str17, ei_iso8859_9},
+    {-1},
+#line 151 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str19, ei_iso8859_14},
+    {-1}, {-1}, {-1},
+#line 207 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str23, ei_cp866},
+#line 289 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str24, ei_iso646_cn},
+    {-1}, {-1},
+#line 203 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str27, ei_cp862},
+    {-1}, {-1}, {-1}, {-1},
+#line 209 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str32, ei_cp1131},
+#line 358 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str33, ei_johab},
+#line 205 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str34, ei_cp866},
+    {-1},
+#line 244 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str36, ei_cp1133},
+#line 174 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str37, ei_cp1251},
+#line 201 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str38, ei_cp862},
+#line 189 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str39, ei_cp1256},
+    {-1},
+#line 180 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str41, ei_cp1253},
+    {-1},
+#line 177 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str43, ei_cp1252},
+    {-1},
+#line 186 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str45, ei_cp1255},
+    {-1}, {-1},
+#line 326 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str48, ei_cp936},
+#line 195 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str49, ei_cp1258},
+#line 321 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str50, ei_euc_cn},
+    {-1},
+#line 313 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str52, ei_cp932},
+#line 51 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str53, ei_c99},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 333 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str60, ei_hz},
+    {-1}, {-1}, {-1},
+#line 84 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str64, ei_iso8859_4},
+    {-1}, {-1}, {-1},
+#line 59 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str68, ei_iso8859_1},
+#line 57 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str69, ei_iso8859_1},
+#line 133 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str70, ei_iso8859_10},
+    {-1},
+#line 75 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str72, ei_iso8859_3},
+    {-1},
+#line 67 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str74, ei_iso8859_2},
+    {-1},
+#line 125 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str76, ei_iso8859_9},
+    {-1}, {-1}, {-1},
+#line 150 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str80, ei_iso8859_14},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 227 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str88, ei_hp_roman8},
+#line 62 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str89, ei_iso8859_1},
+    {-1},
+#line 102 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str91, ei_iso8859_6},
+    {-1},
+#line 78 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str93, ei_iso8859_3},
+#line 139 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str94, ei_iso8859_11},
+#line 70 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str95, ei_iso8859_2},
+#line 166 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str96, ei_iso8859_16},
+#line 93 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str97, ei_iso8859_5},
+#line 145 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str98, ei_iso8859_13},
+    {-1}, {-1},
+#line 120 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str101, ei_iso8859_8},
+#line 159 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str102, ei_iso8859_15},
+#line 53 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str103, ei_iso8859_1},
+    {-1},
+#line 94 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str105, ei_iso8859_6},
+    {-1},
+#line 71 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str107, ei_iso8859_3},
+#line 137 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str108, ei_iso8859_11},
+#line 63 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str109, ei_iso8859_2},
+#line 160 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str110, ei_iso8859_16},
+#line 87 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str111, ei_iso8859_5},
+#line 140 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str112, ei_iso8859_13},
+    {-1}, {-1},
+#line 114 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str115, ei_iso8859_8},
+#line 154 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str116, ei_iso8859_15},
+#line 54 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str117, ei_iso8859_1},
+#line 91 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str118, ei_iso8859_5},
+#line 95 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str119, ei_iso8859_6},
+#line 158 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str120, ei_iso8859_15},
+#line 72 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str121, ei_iso8859_3},
+#line 138 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str122, ei_iso8859_11},
+#line 64 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str123, ei_iso8859_2},
+#line 161 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str124, ei_iso8859_16},
+#line 88 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str125, ei_iso8859_5},
+#line 141 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str126, ei_iso8859_13},
+#line 128 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str127, ei_iso8859_9},
+#line 162 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str128, ei_iso8859_16},
+#line 115 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str129, ei_iso8859_8},
+#line 155 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str130, ei_iso8859_15},
+#line 236 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str131, ei_pt154},
+#line 16 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str132, ei_ascii},
+#line 354 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str133, ei_cp949},
+    {-1},
+#line 287 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str135, ei_iso646_cn},
+#line 13 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str136, ei_ascii},
+#line 156 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str137, ei_iso8859_15},
+    {-1},
+#line 183 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str139, ei_cp1254},
+    {-1},
+#line 121 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str141, ei_iso8859_9},
+    {-1},
+#line 252 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str143, ei_tis620},
+    {-1},
+#line 107 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str145, ei_iso8859_7},
+    {-1}, {-1},
+#line 163 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str148, ei_iso8859_16},
+#line 295 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str149, ei_isoir165},
+#line 283 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str150, ei_jisx0212},
+#line 292 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str151, ei_gb2312},
+#line 355 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str152, ei_cp949},
+#line 320 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str153, ei_euc_cn},
+#line 117 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str154, ei_iso8859_8},
+#line 122 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str155, ei_iso8859_9},
+#line 165 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str156, ei_iso8859_16},
+    {-1},
+#line 310 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str158, ei_sjis},
+#line 199 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str159, ei_cp850},
+    {-1},
+#line 212 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str161, ei_mac_roman},
+    {-1}, {-1},
+#line 253 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str164, ei_tis620},
+#line 144 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str165, ei_iso8859_13},
+    {-1},
+#line 319 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str167, ei_euc_cn},
+    {-1}, {-1},
+#line 83 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str170, ei_iso8859_4},
+    {-1}, {-1},
+#line 197 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str173, ei_cp850},
+    {-1},
+#line 171 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str175, ei_cp1250},
+    {-1}, {-1},
+#line 233 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str178, ei_koi8_t},
+#line 330 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str179, ei_iso2022_cn},
+    {-1}, {-1},
+#line 284 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str182, ei_jisx0212},
+#line 152 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str183, ei_iso8859_14},
+#line 148 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str184, ei_iso8859_14},
+#line 206 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str185, ei_cp866},
+#line 344 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str186, ei_cp950},
+    {-1}, {-1},
+#line 202 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str189, ei_cp862},
+#line 332 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str190, ei_iso2022_cn_ext},
+#line 86 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str191, ei_iso8859_4},
+#line 22 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str192, ei_ascii},
+#line 21 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str193, ei_ascii},
+#line 327 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str194, ei_cp936},
+    {-1},
+#line 153 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str196, ei_iso8859_14},
+#line 149 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str197, ei_iso8859_14},
+#line 338 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str198, ei_ces_big5},
+#line 131 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str199, ei_iso8859_10},
+#line 356 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str200, ei_cp949},
+    {-1},
+#line 234 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str202, ei_pt154},
+#line 124 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str203, ei_iso8859_9},
+    {-1},
+#line 79 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str205, ei_iso8859_4},
+#line 325 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str206, ei_ces_gbk},
+#line 331 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str207, ei_iso2022_cn},
+#line 343 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str208, ei_ces_big5},
+#line 66 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str209, ei_iso8859_2},
+#line 146 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str210, ei_iso8859_14},
+#line 164 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str211, ei_iso8859_16},
+#line 339 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str212, ei_ces_big5},
+#line 270 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str213, ei_jisx0201},
+    {-1}, {-1},
+#line 157 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str216, ei_iso8859_15},
+#line 324 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str217, ei_euc_cn},
+#line 109 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str218, ei_iso8859_7},
+#line 80 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str219, ei_iso8859_4},
+#line 58 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str220, ei_iso8859_1},
+#line 323 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str221, ei_euc_cn},
+#line 342 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str222, ei_ces_big5},
+#line 24 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str223, ei_ucs2},
+#line 147 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str224, ei_iso8859_14},
+#line 276 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str225, ei_jisx0208},
+    {-1}, {-1},
+#line 297 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str228, ei_ksc5601},
+#line 300 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str229, ei_ksc5601},
+    {-1}, {-1},
+#line 136 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str232, ei_iso8859_10},
+    {-1},
+#line 239 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str234, ei_rk1048},
+    {-1}, {-1},
+#line 265 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str237, ei_iso646_jp},
+#line 259 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str238, ei_tcvn},
+#line 247 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str239, ei_tis620},
+    {-1}, {-1}, {-1},
+#line 291 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str243, ei_gb2312},
+    {-1},
+#line 256 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str245, ei_viscii},
+#line 129 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str246, ei_iso8859_10},
+#line 74 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str247, ei_iso8859_3},
+    {-1}, {-1},
+#line 61 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str250, ei_iso8859_1},
+    {-1},
+#line 135 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str252, ei_iso8859_10},
+#line 246 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str253, ei_tis620},
+#line 77 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str254, ei_iso8859_3},
+#line 258 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str255, ei_viscii},
+#line 69 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str256, ei_iso8859_2},
+#line 92 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str257, ei_iso8859_5},
+#line 127 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str258, ei_iso8859_9},
+#line 329 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str259, ei_gb18030},
+#line 130 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str260, ei_iso8859_10},
+    {-1}, {-1},
+#line 38 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str263, ei_utf16},
+#line 242 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str264, ei_rk1048},
+    {-1},
+#line 286 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str266, ei_iso646_cn},
+#line 241 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str267, ei_rk1048},
+#line 23 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str268, ei_utf8},
+#line 41 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str269, ei_utf32},
+#line 176 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str270, ei_cp1251},
+    {-1}, {-1}, {-1}, {-1},
+#line 361 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str275, ei_local_char},
+#line 168 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str276, ei_koi8_r},
+    {-1},
+#line 82 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str278, ei_iso8859_4},
+    {-1},
+#line 167 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str280, ei_koi8_r},
+#line 218 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str281, ei_mac_cyrillic},
+#line 245 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str282, ei_cp1133},
+#line 235 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str283, ei_pt154},
+#line 251 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str284, ei_tis620},
+#line 254 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str285, ei_cp874},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 90 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str293, ei_iso8859_5},
+    {-1}, {-1}, {-1},
+#line 299 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str297, ei_ksc5601},
+#line 334 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str298, ei_hz},
+    {-1}, {-1}, {-1},
+#line 249 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str302, ei_tis620},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 30 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str308, ei_ucs2be},
+    {-1}, {-1}, {-1},
+#line 29 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str312, ei_ucs2be},
+    {-1},
+#line 238 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str314, ei_pt154},
+#line 35 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str315, ei_ucs4},
+#line 237 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str316, ei_pt154},
+    {-1}, {-1},
+#line 33 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str319, ei_ucs4},
+    {-1}, {-1}, {-1}, {-1},
+#line 198 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str324, ei_cp850},
+    {-1}, {-1},
+#line 248 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str327, ei_tis620},
+    {-1}, {-1},
+#line 142 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str330, ei_iso8859_13},
+    {-1},
+#line 19 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str332, ei_ascii},
+    {-1}, {-1}, {-1},
+#line 14 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str336, ei_ascii},
+    {-1}, {-1},
+#line 25 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str339, ei_ucs2},
+    {-1},
+#line 192 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str341, ei_cp1257},
+#line 110 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str342, ei_iso8859_7},
+#line 12 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str343, ei_ascii},
+    {-1}, {-1}, {-1},
+#line 56 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str347, ei_iso8859_1},
+    {-1}, {-1}, {-1}, {-1},
+#line 85 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str352, ei_iso8859_4},
+#line 250 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str353, ei_tis620},
+#line 112 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str354, ei_iso8859_7},
+#line 257 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str355, ei_viscii},
+#line 208 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str356, ei_cp866},
+    {-1}, {-1},
+#line 293 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str359, ei_gb2312},
+#line 351 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str360, ei_euc_kr},
+#line 179 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str361, ei_cp1252},
+#line 224 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str362, ei_mac_thai},
+    {-1}, {-1},
+#line 322 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str365, ei_euc_cn},
+#line 101 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str366, ei_iso8859_6},
+    {-1},
+#line 296 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str368, ei_isoir165},
+#line 230 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str369, ei_armscii_8},
+#line 211 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str370, ei_mac_roman},
+    {-1},
+#line 143 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str372, ei_iso8859_13},
+    {-1},
+#line 350 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str374, ei_euc_kr},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 266 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str381, ei_iso646_jp},
+    {-1}, {-1}, {-1},
+#line 226 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str385, ei_hp_roman8},
+#line 359 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str386, ei_iso2022_kr},
+#line 34 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str387, ei_ucs4},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 113 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str393, ei_iso8859_7},
+    {-1},
+#line 294 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str395, ei_gb2312},
+    {-1},
+#line 231 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str397, ei_georgian_academy},
+#line 26 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str398, ei_ucs2},
+    {-1},
+#line 175 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str400, ei_cp1251},
+#line 190 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str401, ei_cp1256},
+#line 181 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str402, ei_cp1253},
+#line 178 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str403, ei_cp1252},
+#line 187 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str404, ei_cp1255},
+    {-1},
+#line 196 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str406, ei_cp1258},
+#line 103 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str407, ei_iso8859_7},
+    {-1}, {-1},
+#line 169 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str410, ei_koi8_u},
+#line 204 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str411, ei_cp862},
+#line 336 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str412, ei_euc_tw},
+#line 100 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str413, ei_iso8859_6},
+#line 360 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str414, ei_iso2022_kr},
+#line 328 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str415, ei_cp936},
+#line 111 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str416, ei_iso8859_7},
+#line 243 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str417, ei_mulelao},
+#line 108 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str418, ei_iso8859_7},
+    {-1},
+#line 260 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str420, ei_tcvn},
+#line 104 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str421, ei_iso8859_7},
+#line 261 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str422, ei_tcvn},
+    {-1}, {-1}, {-1},
+#line 335 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str426, ei_euc_tw},
+    {-1},
+#line 215 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str428, ei_mac_iceland},
+    {-1},
+#line 298 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str430, ei_ksc5601},
+    {-1},
+#line 302 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str432, ei_ksc5601},
+#line 31 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str433, ei_ucs2le},
+    {-1}, {-1}, {-1},
+#line 119 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str437, ei_iso8859_8},
+    {-1},
+#line 301 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str439, ei_ksc5601},
+    {-1},
+#line 32 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str441, ei_ucs2le},
+#line 232 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str442, ei_georgian_ps},
+#line 288 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str443, ei_iso646_cn},
+    {-1},
+#line 277 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str445, ei_jisx0208},
+#line 278 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str446, ei_jisx0208},
+#line 97 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str447, ei_iso8859_6},
+#line 132 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str448, ei_iso8859_10},
+#line 353 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str449, ei_euc_kr},
+    {-1},
+#line 184 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str451, ei_cp1254},
+    {-1},
+#line 15 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str453, ei_ascii},
+#line 290 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str454, ei_iso646_cn},
+    {-1}, {-1}, {-1},
+#line 225 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str458, ei_hp_roman8},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 46 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str464, ei_utf7},
+#line 362 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str465, ei_local_wchar_t},
+    {-1}, {-1},
+#line 28 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str468, ei_ucs2be},
+#line 172 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str469, ei_cp1250},
+#line 45 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str470, ei_utf7},
+    {-1},
+#line 47 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str472, ei_ucs2internal},
+    {-1}, {-1},
+#line 40 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str475, ei_utf16le},
+#line 240 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str476, ei_rk1048},
+    {-1}, {-1},
+#line 43 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str479, ei_utf32le},
+#line 173 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str480, ei_cp1250},
+#line 37 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str481, ei_ucs4le},
+    {-1},
+#line 20 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str483, ei_ascii},
+#line 73 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str484, ei_iso8859_3},
+    {-1},
+#line 89 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str486, ei_iso8859_5},
+#line 170 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str487, ei_koi8_ru},
+#line 116 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str488, ei_iso8859_8},
+    {-1}, {-1},
+#line 213 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str491, ei_mac_roman},
+    {-1},
+#line 18 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str493, ei_ascii},
+    {-1}, {-1}, {-1},
+#line 348 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str497, ei_big5hkscs2004},
+#line 17 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str498, ei_ascii},
+    {-1},
+#line 229 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str500, ei_nextstep},
+    {-1}, {-1}, {-1},
+#line 267 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str504, ei_iso646_jp},
+    {-1}, {-1},
+#line 352 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str507, ei_euc_kr},
+#line 98 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str508, ei_iso8859_6},
+    {-1}, {-1},
+#line 347 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str511, ei_big5hkscs2004},
+    {-1}, {-1},
+#line 123 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str514, ei_iso8859_9},
+#line 263 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str515, ei_iso646_jp},
+    {-1}, {-1}, {-1}, {-1},
+#line 49 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str520, ei_ucs4internal},
+    {-1}, {-1},
+#line 200 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str523, ei_cp850},
+#line 316 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str524, ei_iso2022_jp1},
+#line 228 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str525, ei_hp_roman8},
+    {-1},
+#line 317 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str527, ei_iso2022_jp2},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 81 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str533, ei_iso8859_4},
+#line 275 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str534, ei_jisx0208},
+    {-1}, {-1}, {-1}, {-1},
+#line 99 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str539, ei_iso8859_6},
+    {-1}, {-1}, {-1},
+#line 210 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str543, ei_mac_roman},
+#line 216 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str544, ei_mac_croatian},
+    {-1}, {-1}, {-1},
+#line 285 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str548, ei_jisx0212},
+#line 264 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str549, ei_iso646_jp},
+    {-1}, {-1},
+#line 193 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str552, ei_cp1257},
+    {-1},
+#line 318 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str554, ei_iso2022_jp2},
+    {-1}, {-1}, {-1}, {-1},
+#line 337 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str559, ei_euc_tw},
+#line 44 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str560, ei_utf7},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 304 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str567, ei_euc_jp},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1},
+#line 303 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str581, ei_euc_jp},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 27 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str591, ei_ucs2be},
+    {-1},
+#line 314 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str593, ei_iso2022_jp},
+    {-1}, {-1}, {-1}, {-1},
+#line 309 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str598, ei_sjis},
+    {-1}, {-1}, {-1},
+#line 185 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str602, ei_cp1254},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 280 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str608, ei_jisx0212},
+    {-1}, {-1}, {-1},
+#line 308 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str612, ei_sjis},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 315 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str621, ei_iso2022_jp},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 271 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str627, ei_jisx0201},
+#line 55 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str628, ei_iso8859_1},
+#line 96 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str629, ei_iso8859_6},
+#line 106 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str630, ei_iso8859_7},
+#line 65 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str631, ei_iso8859_2},
+    {-1},
+#line 39 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str633, ei_utf16be},
+    {-1}, {-1}, {-1},
+#line 42 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str637, ei_utf32be},
+    {-1},
+#line 36 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str639, ei_ucs4be},
+    {-1}, {-1}, {-1},
+#line 312 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str643, ei_sjis},
+#line 188 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str644, ei_cp1255},
+    {-1},
+#line 223 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str646, ei_mac_arabic},
+    {-1}, {-1},
+#line 220 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str649, ei_mac_greek},
+    {-1}, {-1},
+#line 255 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str652, ei_cp874},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 182 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str658, ei_cp1253},
+#line 341 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str659, ei_ces_big5},
+    {-1},
+#line 221 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str661, ei_mac_turkish},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 268 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str671, ei_jisx0201},
+    {-1},
+#line 340 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str673, ei_ces_big5},
+    {-1}, {-1}, {-1}, {-1},
+#line 118 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str678, ei_iso8859_8},
+    {-1}, {-1}, {-1}, {-1},
+#line 272 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str683, ei_jisx0208},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 269 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str689, ei_jisx0201},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 48 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str695, ei_ucs2swapped},
+#line 282 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str696, ei_jisx0212},
+    {-1}, {-1}, {-1}, {-1},
+#line 273 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str701, ei_jisx0208},
+#line 305 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str702, ei_euc_jp},
+    {-1}, {-1}, {-1}, {-1},
+#line 307 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str707, ei_euc_jp},
+    {-1}, {-1}, {-1},
+#line 52 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str711, ei_java},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1},
+#line 311 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str725, ei_sjis},
+    {-1},
+#line 214 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str727, ei_mac_centraleurope},
+    {-1}, {-1}, {-1},
+#line 279 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str731, ei_jisx0208},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1},
+#line 50 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str743, ei_ucs4swapped},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 217 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str761, ei_mac_romania},
+    {-1}, {-1}, {-1},
+#line 281 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str765, ei_jisx0212},
+    {-1}, {-1},
+#line 274 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str768, ei_jisx0208},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1},
+#line 105 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str780, ei_iso8859_7},
+    {-1}, {-1},
+#line 262 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str783, ei_tcvn},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1},
+#line 191 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str806, ei_cp1256},
+#line 357 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str807, ei_johab},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 306 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str816, ei_euc_jp},
+    {-1}, {-1}, {-1}, {-1},
+#line 219 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str821, ei_mac_ukraine},
+    {-1}, {-1},
+#line 346 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str824, ei_big5hkscs2001},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 345 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str843, ei_big5hkscs1999},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1},
+#line 194 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str857, ei_cp1257},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 349 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str875, ei_big5hkscs2004},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 222 "lib/aliases_sysosf1.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str939, ei_mac_hebrew}
+  };
+
+#ifdef __GNUC__
+__inline
+#if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__
+__attribute__ ((__gnu_inline__))
+#endif
+#endif
+const struct alias *
+aliases_lookup (register const char *str, register unsigned int len)
+{
+  if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+    {
+      register int key = aliases_hash (str, len);
+
+      if (key <= MAX_HASH_VALUE && key >= 0)
+        {
+          register int o = aliases[key].name;
+          if (o >= 0)
+            {
+              register const char *s = o + stringpool;
+
+              if (*str == *s && !strcmp (str + 1, s + 1))
+                return &aliases[key];
+            }
+        }
+    }
+  return 0;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/aliases_syssolaris.h b/graf2d/win32gdk/gdk/src/iconv/aliases_syssolaris.h
new file mode 100644
index 00000000000..286bdbfa501
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/aliases_syssolaris.h
@@ -0,0 +1,1753 @@
+/* ANSI-C code produced by gperf version 3.0.4 */
+/* Command-line: gperf -m 10 lib/aliases_syssolaris.gperf  */
+/* Computed positions: -k'1,3-11,$' */
+
+#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
+      && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
+      && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
+      && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
+      && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
+      && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
+      && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
+      && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
+      && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
+      && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
+      && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
+      && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
+      && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
+      && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
+      && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
+      && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
+      && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
+      && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
+      && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
+      && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
+      && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
+      && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
+      && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
+/* The character set is not based on ISO-646.  */
+#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
+#endif
+
+#line 1 "lib/aliases_syssolaris.gperf"
+struct alias { int name; unsigned int encoding_index; };
+
+#define TOTAL_KEYWORDS 353
+#define MIN_WORD_LENGTH 2
+#define MAX_WORD_LENGTH 45
+#define MIN_HASH_VALUE 8
+#define MAX_HASH_VALUE 1003
+/* maximum key range = 996, duplicates = 0 */
+
+#ifdef __GNUC__
+__inline
+#else
+#ifdef __cplusplus
+inline
+#endif
+#endif
+static unsigned int
+aliases_hash (register const char *str, register unsigned int len)
+{
+  static const unsigned short asso_values[] =
+    {
+      1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004,
+      1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004,
+      1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004,
+      1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004,
+      1004, 1004, 1004, 1004, 1004,    2,  112, 1004,   27,    4,
+        34,   57,   16,   22,   11,  168,    3,   10,  254, 1004,
+      1004, 1004, 1004, 1004, 1004,   21,  126,    7,   10,   37,
+        40,  119,   81,   62,  332,  197,    9,  169,    4,    2,
+         8, 1004,    3,   34,  104,  205,  191,  192,  195,   36,
+        16, 1004, 1004, 1004, 1004,    3, 1004, 1004, 1004, 1004,
+      1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004,
+      1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004,
+      1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004
+    };
+  register int hval = len;
+
+  switch (hval)
+    {
+      default:
+        hval += asso_values[(unsigned char)str[10]];
+      /*FALLTHROUGH*/
+      case 10:
+        hval += asso_values[(unsigned char)str[9]];
+      /*FALLTHROUGH*/
+      case 9:
+        hval += asso_values[(unsigned char)str[8]];
+      /*FALLTHROUGH*/
+      case 8:
+        hval += asso_values[(unsigned char)str[7]];
+      /*FALLTHROUGH*/
+      case 7:
+        hval += asso_values[(unsigned char)str[6]];
+      /*FALLTHROUGH*/
+      case 6:
+        hval += asso_values[(unsigned char)str[5]];
+      /*FALLTHROUGH*/
+      case 5:
+        hval += asso_values[(unsigned char)str[4]];
+      /*FALLTHROUGH*/
+      case 4:
+        hval += asso_values[(unsigned char)str[3]];
+      /*FALLTHROUGH*/
+      case 3:
+        hval += asso_values[(unsigned char)str[2]];
+      /*FALLTHROUGH*/
+      case 2:
+      case 1:
+        hval += asso_values[(unsigned char)str[0]];
+        break;
+    }
+  return hval + asso_values[(unsigned char)str[len - 1]];
+}
+
+struct stringpool_t
+  {
+    char stringpool_str8[sizeof("R8")];
+    char stringpool_str13[sizeof("CN")];
+    char stringpool_str14[sizeof("L8")];
+    char stringpool_str15[sizeof("L1")];
+    char stringpool_str22[sizeof("L6")];
+    char stringpool_str27[sizeof("L4")];
+    char stringpool_str28[sizeof("866")];
+    char stringpool_str30[sizeof("C99")];
+    char stringpool_str33[sizeof("L5")];
+    char stringpool_str36[sizeof("646")];
+    char stringpool_str38[sizeof("CHAR")];
+    char stringpool_str39[sizeof("CP819")];
+    char stringpool_str45[sizeof("L2")];
+    char stringpool_str48[sizeof("CP866")];
+    char stringpool_str58[sizeof("CP949")];
+    char stringpool_str60[sizeof("850")];
+    char stringpool_str61[sizeof("5601")];
+    char stringpool_str62[sizeof("RK1048")];
+    char stringpool_str64[sizeof("EUCCN")];
+    char stringpool_str66[sizeof("L10")];
+    char stringpool_str67[sizeof("EUC-CN")];
+    char stringpool_str68[sizeof("L3")];
+    char stringpool_str70[sizeof("CP154")];
+    char stringpool_str71[sizeof("PT154")];
+    char stringpool_str74[sizeof("862")];
+    char stringpool_str79[sizeof("CP1258")];
+    char stringpool_str81[sizeof("CP1251")];
+    char stringpool_str86[sizeof("CP1131")];
+    char stringpool_str88[sizeof("PTCP154")];
+    char stringpool_str91[sizeof("CP850")];
+    char stringpool_str93[sizeof("CP1361")];
+    char stringpool_str94[sizeof("CP862")];
+    char stringpool_str95[sizeof("CP1256")];
+    char stringpool_str98[sizeof("CP950")];
+    char stringpool_str99[sizeof("HZ")];
+    char stringpool_str101[sizeof("CP936")];
+    char stringpool_str105[sizeof("CP1254")];
+    char stringpool_str117[sizeof("CP1255")];
+    char stringpool_str119[sizeof("ISO8859-8")];
+    char stringpool_str121[sizeof("ISO8859-1")];
+    char stringpool_str122[sizeof("ISO-8859-8")];
+    char stringpool_str123[sizeof("ISO_8859-8")];
+    char stringpool_str124[sizeof("ISO-8859-1")];
+    char stringpool_str125[sizeof("ISO_8859-1")];
+    char stringpool_str126[sizeof("ISO8859-11")];
+    char stringpool_str127[sizeof("CP1250")];
+    char stringpool_str128[sizeof("ISO646-CN")];
+    char stringpool_str129[sizeof("ISO-8859-11")];
+    char stringpool_str130[sizeof("ISO_8859-11")];
+    char stringpool_str133[sizeof("ISO8859-9")];
+    char stringpool_str135[sizeof("ISO8859-6")];
+    char stringpool_str136[sizeof("ISO-8859-9")];
+    char stringpool_str137[sizeof("ISO_8859-9")];
+    char stringpool_str138[sizeof("ISO-8859-6")];
+    char stringpool_str139[sizeof("ISO_8859-6")];
+    char stringpool_str140[sizeof("ISO8859-16")];
+    char stringpool_str141[sizeof("CP1252")];
+    char stringpool_str142[sizeof("ISO_8859-16:2001")];
+    char stringpool_str143[sizeof("ISO-8859-16")];
+    char stringpool_str144[sizeof("ISO_8859-16")];
+    char stringpool_str145[sizeof("ISO8859-4")];
+    char stringpool_str146[sizeof("ISO_8859-14:1998")];
+    char stringpool_str147[sizeof("CP932")];
+    char stringpool_str148[sizeof("ISO-8859-4")];
+    char stringpool_str149[sizeof("ISO_8859-4")];
+    char stringpool_str150[sizeof("ISO8859-14")];
+    char stringpool_str152[sizeof("ISO_8859-15:1998")];
+    char stringpool_str153[sizeof("ISO-8859-14")];
+    char stringpool_str154[sizeof("ISO_8859-14")];
+    char stringpool_str157[sizeof("ISO8859-5")];
+    char stringpool_str160[sizeof("ISO-8859-5")];
+    char stringpool_str161[sizeof("ISO_8859-5")];
+    char stringpool_str162[sizeof("ISO8859-15")];
+    char stringpool_str163[sizeof("ISO-IR-6")];
+    char stringpool_str165[sizeof("ISO-8859-15")];
+    char stringpool_str166[sizeof("ISO_8859-15")];
+    char stringpool_str168[sizeof("SJIS")];
+    char stringpool_str169[sizeof("ISO-IR-148")];
+    char stringpool_str170[sizeof("ISO-IR-58")];
+    char stringpool_str172[sizeof("ISO8859-10")];
+    char stringpool_str174[sizeof("CYRILLIC")];
+    char stringpool_str175[sizeof("ISO-8859-10")];
+    char stringpool_str176[sizeof("ISO_8859-10")];
+    char stringpool_str177[sizeof("ISO-IR-199")];
+    char stringpool_str178[sizeof("ISO-IR-14")];
+    char stringpool_str179[sizeof("L7")];
+    char stringpool_str180[sizeof("ISO-IR-166")];
+    char stringpool_str181[sizeof("ISO8859-2")];
+    char stringpool_str182[sizeof("ISO-IR-101")];
+    char stringpool_str183[sizeof("ISO-IR-149")];
+    char stringpool_str184[sizeof("ISO-8859-2")];
+    char stringpool_str185[sizeof("ISO_8859-2")];
+    char stringpool_str186[sizeof("MAC")];
+    char stringpool_str187[sizeof("CP1253")];
+    char stringpool_str188[sizeof("ISO_8859-10:1992")];
+    char stringpool_str189[sizeof("ISO-IR-159")];
+    char stringpool_str191[sizeof("LATIN8")];
+    char stringpool_str192[sizeof("CP1133")];
+    char stringpool_str193[sizeof("LATIN1")];
+    char stringpool_str194[sizeof("ISO-IR-109")];
+    char stringpool_str195[sizeof("ISO-IR-144")];
+    char stringpool_str196[sizeof("ANSI-1251")];
+    char stringpool_str198[sizeof("CNS11643")];
+    char stringpool_str201[sizeof("CSPTCP154")];
+    char stringpool_str202[sizeof("ISO-IR-165")];
+    char stringpool_str203[sizeof("ISO-IR-126")];
+    char stringpool_str204[sizeof("ELOT_928")];
+    char stringpool_str205[sizeof("ISO-IR-110")];
+    char stringpool_str207[sizeof("LATIN6")];
+    char stringpool_str208[sizeof("LATIN-9")];
+    char stringpool_str209[sizeof("ROMAN8")];
+    char stringpool_str210[sizeof("ISO-IR-138")];
+    char stringpool_str211[sizeof("GB_1988-80")];
+    char stringpool_str215[sizeof("CP874")];
+    char stringpool_str217[sizeof("LATIN4")];
+    char stringpool_str219[sizeof("ASCII")];
+    char stringpool_str222[sizeof("UHC")];
+    char stringpool_str223[sizeof("ISO-2022-CN")];
+    char stringpool_str225[sizeof("CHINESE")];
+    char stringpool_str227[sizeof("ISO8859-3")];
+    char stringpool_str228[sizeof("ISO-IR-100")];
+    char stringpool_str229[sizeof("LATIN5")];
+    char stringpool_str230[sizeof("ISO-8859-3")];
+    char stringpool_str231[sizeof("ISO_8859-3")];
+    char stringpool_str232[sizeof("ISO8859-13")];
+    char stringpool_str233[sizeof("ISO-IR-226")];
+    char stringpool_str234[sizeof("CYRILLIC-ASIAN")];
+    char stringpool_str235[sizeof("ISO-8859-13")];
+    char stringpool_str236[sizeof("ISO_8859-13")];
+    char stringpool_str241[sizeof("US")];
+    char stringpool_str242[sizeof("MS-CYRL")];
+    char stringpool_str243[sizeof("TIS620")];
+    char stringpool_str244[sizeof("LATIN10")];
+    char stringpool_str246[sizeof("TIS-620")];
+    char stringpool_str250[sizeof("ARABIC")];
+    char stringpool_str251[sizeof("ECMA-118")];
+    char stringpool_str252[sizeof("EUCKR")];
+    char stringpool_str253[sizeof("LATIN2")];
+    char stringpool_str255[sizeof("EUC-KR")];
+    char stringpool_str258[sizeof("UTF-8")];
+    char stringpool_str259[sizeof("KZ-1048")];
+    char stringpool_str260[sizeof("CSISO2022CN")];
+    char stringpool_str262[sizeof("CSASCII")];
+    char stringpool_str263[sizeof("MS936")];
+    char stringpool_str264[sizeof("IBM819")];
+    char stringpool_str266[sizeof("MULELAO-1")];
+    char stringpool_str267[sizeof("X0208")];
+    char stringpool_str269[sizeof("X0201")];
+    char stringpool_str271[sizeof("GB18030")];
+    char stringpool_str272[sizeof("KOREAN")];
+    char stringpool_str273[sizeof("IBM866")];
+    char stringpool_str274[sizeof("TIS620-0")];
+    char stringpool_str276[sizeof("KOI8-R")];
+    char stringpool_str277[sizeof("ECMA-114")];
+    char stringpool_str278[sizeof("UCS-4")];
+    char stringpool_str279[sizeof("UTF-16")];
+    char stringpool_str281[sizeof("CSKZ1048")];
+    char stringpool_str283[sizeof("KSC_5601")];
+    char stringpool_str284[sizeof("CSKOI8R")];
+    char stringpool_str287[sizeof("MS-EE")];
+    char stringpool_str288[sizeof("GB2312")];
+    char stringpool_str291[sizeof("CSUCS4")];
+    char stringpool_str293[sizeof("BIG5")];
+    char stringpool_str296[sizeof("BIG-5")];
+    char stringpool_str297[sizeof("HP-ROMAN8")];
+    char stringpool_str299[sizeof("LATIN3")];
+    char stringpool_str304[sizeof("KS_C_5601-1989")];
+    char stringpool_str306[sizeof("X0212")];
+    char stringpool_str307[sizeof("TCVN")];
+    char stringpool_str309[sizeof("ISO-CELTIC")];
+    char stringpool_str311[sizeof("CSHPROMAN8")];
+    char stringpool_str314[sizeof("UCS-2")];
+    char stringpool_str316[sizeof("IBM850")];
+    char stringpool_str318[sizeof("ISO-IR-203")];
+    char stringpool_str319[sizeof("IBM862")];
+    char stringpool_str320[sizeof("GB_2312-80")];
+    char stringpool_str324[sizeof("CSISOLATIN1")];
+    char stringpool_str327[sizeof("ISO-2022-CN-EXT")];
+    char stringpool_str335[sizeof("ISO-IR-179")];
+    char stringpool_str337[sizeof("CSISOLATINCYRILLIC")];
+    char stringpool_str338[sizeof("CSISOLATIN6")];
+    char stringpool_str342[sizeof("JP")];
+    char stringpool_str346[sizeof("MACICELAND")];
+    char stringpool_str347[sizeof("UCS-4LE")];
+    char stringpool_str348[sizeof("CSISOLATIN4")];
+    char stringpool_str349[sizeof("CSISOLATINARABIC")];
+    char stringpool_str350[sizeof("UNICODE-1-1")];
+    char stringpool_str353[sizeof("UTF-16LE")];
+    char stringpool_str357[sizeof("CSUNICODE11")];
+    char stringpool_str360[sizeof("CSISOLATIN5")];
+    char stringpool_str361[sizeof("MS-ANSI")];
+    char stringpool_str364[sizeof("CSBIG5")];
+    char stringpool_str365[sizeof("UCS-2LE")];
+    char stringpool_str367[sizeof("CN-BIG5")];
+    char stringpool_str372[sizeof("ARMSCII-8")];
+    char stringpool_str373[sizeof("ISO-10646-UCS-4")];
+    char stringpool_str378[sizeof("UTF-32")];
+    char stringpool_str380[sizeof("CSUNICODE")];
+    char stringpool_str382[sizeof("ISO_8859-8:1988")];
+    char stringpool_str384[sizeof("CSISOLATIN2")];
+    char stringpool_str385[sizeof("CN-GB")];
+    char stringpool_str386[sizeof("ISO646-US")];
+    char stringpool_str387[sizeof("MACROMAN")];
+    char stringpool_str389[sizeof("MACCYRILLIC")];
+    char stringpool_str391[sizeof("ISO-10646-UCS-2")];
+    char stringpool_str394[sizeof("STRK1048-2002")];
+    char stringpool_str395[sizeof("ISO_8859-4:1988")];
+    char stringpool_str396[sizeof("ISO_8859-9:1989")];
+    char stringpool_str397[sizeof("EUCJP")];
+    char stringpool_str400[sizeof("EUC-JP")];
+    char stringpool_str401[sizeof("ISO_8859-5:1988")];
+    char stringpool_str402[sizeof("GREEK8")];
+    char stringpool_str403[sizeof("ASMO-708")];
+    char stringpool_str405[sizeof("PCK")];
+    char stringpool_str408[sizeof("CSIBM866")];
+    char stringpool_str409[sizeof("CP1257")];
+    char stringpool_str411[sizeof("ISO-2022-KR")];
+    char stringpool_str412[sizeof("GEORGIAN-ACADEMY")];
+    char stringpool_str415[sizeof("MACCROATIAN")];
+    char stringpool_str416[sizeof("CP367")];
+    char stringpool_str419[sizeof("GEORGIAN-PS")];
+    char stringpool_str423[sizeof("CSGB2312")];
+    char stringpool_str424[sizeof("VISCII")];
+    char stringpool_str428[sizeof("MS-HEBR")];
+    char stringpool_str429[sizeof("UTF-32LE")];
+    char stringpool_str430[sizeof("CSISOLATIN3")];
+    char stringpool_str432[sizeof("MACARABIC")];
+    char stringpool_str436[sizeof("ISO_8859-3:1988")];
+    char stringpool_str437[sizeof("IBM-CP1133")];
+    char stringpool_str439[sizeof("TIS620.2529-1")];
+    char stringpool_str448[sizeof("CSISO2022KR")];
+    char stringpool_str449[sizeof("ISO8859-7")];
+    char stringpool_str451[sizeof("MACCENTRALEUROPE")];
+    char stringpool_str452[sizeof("ISO-8859-7")];
+    char stringpool_str453[sizeof("ISO_8859-7")];
+    char stringpool_str455[sizeof("CN-GB-ISOIR165")];
+    char stringpool_str461[sizeof("ISO646-JP")];
+    char stringpool_str462[sizeof("KS_C_5601-1987")];
+    char stringpool_str463[sizeof("US-ASCII")];
+    char stringpool_str464[sizeof("UCS-4BE")];
+    char stringpool_str466[sizeof("CSEUCKR")];
+    char stringpool_str467[sizeof("JIS0208")];
+    char stringpool_str470[sizeof("UTF-16BE")];
+    char stringpool_str475[sizeof("MS-ARAB")];
+    char stringpool_str476[sizeof("CSPC862LATINHEBREW")];
+    char stringpool_str478[sizeof("KOI8-T")];
+    char stringpool_str481[sizeof("ISO-IR-87")];
+    char stringpool_str482[sizeof("UCS-2BE")];
+    char stringpool_str489[sizeof("MACROMANIA")];
+    char stringpool_str492[sizeof("UCS-4-INTERNAL")];
+    char stringpool_str493[sizeof("ISO_646.IRV:1991")];
+    char stringpool_str495[sizeof("CSVISCII")];
+    char stringpool_str497[sizeof("VISCII1.1-1")];
+    char stringpool_str500[sizeof("ISO-IR-57")];
+    char stringpool_str502[sizeof("NEXTSTEP")];
+    char stringpool_str503[sizeof("HZ-GB-2312")];
+    char stringpool_str504[sizeof("CSKSC56011987")];
+    char stringpool_str505[sizeof("ISO-IR-157")];
+    char stringpool_str507[sizeof("JIS_C6220-1969-RO")];
+    char stringpool_str508[sizeof("CSISO58GB231280")];
+    char stringpool_str509[sizeof("TIS620.2533-1")];
+    char stringpool_str510[sizeof("UCS-2-INTERNAL")];
+    char stringpool_str511[sizeof("WINDOWS-1258")];
+    char stringpool_str512[sizeof("WINDOWS-1251")];
+    char stringpool_str513[sizeof("MACTHAI")];
+    char stringpool_str515[sizeof("WCHAR_T")];
+    char stringpool_str516[sizeof("GBK")];
+    char stringpool_str517[sizeof("ISO-IR-127")];
+    char stringpool_str519[sizeof("WINDOWS-1256")];
+    char stringpool_str520[sizeof("UNICODE-1-1-UTF-7")];
+    char stringpool_str521[sizeof("LATIN7")];
+    char stringpool_str523[sizeof("ANSI_X3.4-1968")];
+    char stringpool_str524[sizeof("WINDOWS-1254")];
+    char stringpool_str525[sizeof("CSUNICODE11UTF7")];
+    char stringpool_str530[sizeof("WINDOWS-1255")];
+    char stringpool_str531[sizeof("ANSI_X3.4-1986")];
+    char stringpool_str532[sizeof("TIS620.2533-0")];
+    char stringpool_str533[sizeof("EXTENDED_UNIX_CODE_PACKED_FORMAT_FOR_JAPANESE")];
+    char stringpool_str535[sizeof("WINDOWS-1250")];
+    char stringpool_str536[sizeof("WINDOWS-936")];
+    char stringpool_str537[sizeof("EUCTW")];
+    char stringpool_str540[sizeof("EUC-TW")];
+    char stringpool_str542[sizeof("WINDOWS-1252")];
+    char stringpool_str543[sizeof("JIS_C6226-1983")];
+    char stringpool_str545[sizeof("UCS-4-SWAPPED")];
+    char stringpool_str546[sizeof("UTF-32BE")];
+    char stringpool_str547[sizeof("TCVN5712-1")];
+    char stringpool_str548[sizeof("ISO_8859-1:1987")];
+    char stringpool_str553[sizeof("MACINTOSH")];
+    char stringpool_str554[sizeof("ISO-2022-JP-1")];
+    char stringpool_str555[sizeof("ISO_8859-6:1987")];
+    char stringpool_str556[sizeof("ISO-2022-JP")];
+    char stringpool_str560[sizeof("TIS620.2533")];
+    char stringpool_str563[sizeof("UCS-2-SWAPPED")];
+    char stringpool_str565[sizeof("WINDOWS-1253")];
+    char stringpool_str569[sizeof("JAVA")];
+    char stringpool_str570[sizeof("CSISO57GB1988")];
+    char stringpool_str572[sizeof("TCVN-5712")];
+    char stringpool_str578[sizeof("ISO_8859-2:1987")];
+    char stringpool_str579[sizeof("CSISO14JISC6220RO")];
+    char stringpool_str583[sizeof("CSMACINTOSH")];
+    char stringpool_str584[sizeof("ISO-2022-JP-2")];
+    char stringpool_str588[sizeof("UTF-7")];
+    char stringpool_str589[sizeof("CSPC850MULTILINGUAL")];
+    char stringpool_str592[sizeof("GREEK")];
+    char stringpool_str593[sizeof("CSISO2022JP")];
+    char stringpool_str594[sizeof("CSISOLATINHEBREW")];
+    char stringpool_str601[sizeof("ISO_8859-7:2003")];
+    char stringpool_str616[sizeof("CSISO159JISX02121990")];
+    char stringpool_str619[sizeof("BIGFIVE")];
+    char stringpool_str620[sizeof("CSISO2022JP2")];
+    char stringpool_str622[sizeof("BIG-FIVE")];
+    char stringpool_str636[sizeof("CSISOLATINGREEK")];
+    char stringpool_str637[sizeof("HEBREW")];
+    char stringpool_str641[sizeof("IBM367")];
+    char stringpool_str647[sizeof("CSHALFWIDTHKATAKANA")];
+    char stringpool_str650[sizeof("WINDOWS-874")];
+    char stringpool_str652[sizeof("UNICODELITTLE")];
+    char stringpool_str663[sizeof("BIG5HKSCS")];
+    char stringpool_str666[sizeof("BIG5-HKSCS")];
+    char stringpool_str667[sizeof("JIS_X0208")];
+    char stringpool_str669[sizeof("JIS_X0201")];
+    char stringpool_str676[sizeof("WINDOWS-1257")];
+    char stringpool_str680[sizeof("KOI8-U")];
+    char stringpool_str684[sizeof("KOI8-RU")];
+    char stringpool_str691[sizeof("JOHAB")];
+    char stringpool_str693[sizeof("JISX0201-1976")];
+    char stringpool_str702[sizeof("JIS_X0208-1990")];
+    char stringpool_str706[sizeof("JIS_X0212")];
+    char stringpool_str710[sizeof("JIS_X0212-1990")];
+    char stringpool_str712[sizeof("ISO_8859-7:1987")];
+    char stringpool_str713[sizeof("SHIFT-JIS")];
+    char stringpool_str714[sizeof("SHIFT_JIS")];
+    char stringpool_str732[sizeof("JIS_X0208-1983")];
+    char stringpool_str751[sizeof("CSEUCTW")];
+    char stringpool_str752[sizeof("MACUKRAINE")];
+    char stringpool_str759[sizeof("UNICODEBIG")];
+    char stringpool_str769[sizeof("MS-GREEK")];
+    char stringpool_str774[sizeof("MACGREEK")];
+    char stringpool_str800[sizeof("CSSHIFTJIS")];
+    char stringpool_str822[sizeof("JIS_X0212.1990-0")];
+    char stringpool_str840[sizeof("CSEUCPKDFMTJAPANESE")];
+    char stringpool_str853[sizeof("MACHEBREW")];
+    char stringpool_str858[sizeof("MS_KANJI")];
+    char stringpool_str859[sizeof("TCVN5712-1:1993")];
+    char stringpool_str869[sizeof("WINBALTRIM")];
+    char stringpool_str884[sizeof("MS-TURK")];
+    char stringpool_str895[sizeof("BIG5-HKSCS:2001")];
+    char stringpool_str901[sizeof("BIG5-HKSCS:1999")];
+    char stringpool_str907[sizeof("BIG5-HKSCS:2004")];
+    char stringpool_str917[sizeof("CSISO87JISX0208")];
+    char stringpool_str953[sizeof("MACTURKISH")];
+    char stringpool_str1003[sizeof("KO_KR.JOHAP92")];
+  };
+static const struct stringpool_t stringpool_contents =
+  {
+    "R8",
+    "CN",
+    "L8",
+    "L1",
+    "L6",
+    "L4",
+    "866",
+    "C99",
+    "L5",
+    "646",
+    "CHAR",
+    "CP819",
+    "L2",
+    "CP866",
+    "CP949",
+    "850",
+    "5601",
+    "RK1048",
+    "EUCCN",
+    "L10",
+    "EUC-CN",
+    "L3",
+    "CP154",
+    "PT154",
+    "862",
+    "CP1258",
+    "CP1251",
+    "CP1131",
+    "PTCP154",
+    "CP850",
+    "CP1361",
+    "CP862",
+    "CP1256",
+    "CP950",
+    "HZ",
+    "CP936",
+    "CP1254",
+    "CP1255",
+    "ISO8859-8",
+    "ISO8859-1",
+    "ISO-8859-8",
+    "ISO_8859-8",
+    "ISO-8859-1",
+    "ISO_8859-1",
+    "ISO8859-11",
+    "CP1250",
+    "ISO646-CN",
+    "ISO-8859-11",
+    "ISO_8859-11",
+    "ISO8859-9",
+    "ISO8859-6",
+    "ISO-8859-9",
+    "ISO_8859-9",
+    "ISO-8859-6",
+    "ISO_8859-6",
+    "ISO8859-16",
+    "CP1252",
+    "ISO_8859-16:2001",
+    "ISO-8859-16",
+    "ISO_8859-16",
+    "ISO8859-4",
+    "ISO_8859-14:1998",
+    "CP932",
+    "ISO-8859-4",
+    "ISO_8859-4",
+    "ISO8859-14",
+    "ISO_8859-15:1998",
+    "ISO-8859-14",
+    "ISO_8859-14",
+    "ISO8859-5",
+    "ISO-8859-5",
+    "ISO_8859-5",
+    "ISO8859-15",
+    "ISO-IR-6",
+    "ISO-8859-15",
+    "ISO_8859-15",
+    "SJIS",
+    "ISO-IR-148",
+    "ISO-IR-58",
+    "ISO8859-10",
+    "CYRILLIC",
+    "ISO-8859-10",
+    "ISO_8859-10",
+    "ISO-IR-199",
+    "ISO-IR-14",
+    "L7",
+    "ISO-IR-166",
+    "ISO8859-2",
+    "ISO-IR-101",
+    "ISO-IR-149",
+    "ISO-8859-2",
+    "ISO_8859-2",
+    "MAC",
+    "CP1253",
+    "ISO_8859-10:1992",
+    "ISO-IR-159",
+    "LATIN8",
+    "CP1133",
+    "LATIN1",
+    "ISO-IR-109",
+    "ISO-IR-144",
+    "ANSI-1251",
+    "CNS11643",
+    "CSPTCP154",
+    "ISO-IR-165",
+    "ISO-IR-126",
+    "ELOT_928",
+    "ISO-IR-110",
+    "LATIN6",
+    "LATIN-9",
+    "ROMAN8",
+    "ISO-IR-138",
+    "GB_1988-80",
+    "CP874",
+    "LATIN4",
+    "ASCII",
+    "UHC",
+    "ISO-2022-CN",
+    "CHINESE",
+    "ISO8859-3",
+    "ISO-IR-100",
+    "LATIN5",
+    "ISO-8859-3",
+    "ISO_8859-3",
+    "ISO8859-13",
+    "ISO-IR-226",
+    "CYRILLIC-ASIAN",
+    "ISO-8859-13",
+    "ISO_8859-13",
+    "US",
+    "MS-CYRL",
+    "TIS620",
+    "LATIN10",
+    "TIS-620",
+    "ARABIC",
+    "ECMA-118",
+    "EUCKR",
+    "LATIN2",
+    "EUC-KR",
+    "UTF-8",
+    "KZ-1048",
+    "CSISO2022CN",
+    "CSASCII",
+    "MS936",
+    "IBM819",
+    "MULELAO-1",
+    "X0208",
+    "X0201",
+    "GB18030",
+    "KOREAN",
+    "IBM866",
+    "TIS620-0",
+    "KOI8-R",
+    "ECMA-114",
+    "UCS-4",
+    "UTF-16",
+    "CSKZ1048",
+    "KSC_5601",
+    "CSKOI8R",
+    "MS-EE",
+    "GB2312",
+    "CSUCS4",
+    "BIG5",
+    "BIG-5",
+    "HP-ROMAN8",
+    "LATIN3",
+    "KS_C_5601-1989",
+    "X0212",
+    "TCVN",
+    "ISO-CELTIC",
+    "CSHPROMAN8",
+    "UCS-2",
+    "IBM850",
+    "ISO-IR-203",
+    "IBM862",
+    "GB_2312-80",
+    "CSISOLATIN1",
+    "ISO-2022-CN-EXT",
+    "ISO-IR-179",
+    "CSISOLATINCYRILLIC",
+    "CSISOLATIN6",
+    "JP",
+    "MACICELAND",
+    "UCS-4LE",
+    "CSISOLATIN4",
+    "CSISOLATINARABIC",
+    "UNICODE-1-1",
+    "UTF-16LE",
+    "CSUNICODE11",
+    "CSISOLATIN5",
+    "MS-ANSI",
+    "CSBIG5",
+    "UCS-2LE",
+    "CN-BIG5",
+    "ARMSCII-8",
+    "ISO-10646-UCS-4",
+    "UTF-32",
+    "CSUNICODE",
+    "ISO_8859-8:1988",
+    "CSISOLATIN2",
+    "CN-GB",
+    "ISO646-US",
+    "MACROMAN",
+    "MACCYRILLIC",
+    "ISO-10646-UCS-2",
+    "STRK1048-2002",
+    "ISO_8859-4:1988",
+    "ISO_8859-9:1989",
+    "EUCJP",
+    "EUC-JP",
+    "ISO_8859-5:1988",
+    "GREEK8",
+    "ASMO-708",
+    "PCK",
+    "CSIBM866",
+    "CP1257",
+    "ISO-2022-KR",
+    "GEORGIAN-ACADEMY",
+    "MACCROATIAN",
+    "CP367",
+    "GEORGIAN-PS",
+    "CSGB2312",
+    "VISCII",
+    "MS-HEBR",
+    "UTF-32LE",
+    "CSISOLATIN3",
+    "MACARABIC",
+    "ISO_8859-3:1988",
+    "IBM-CP1133",
+    "TIS620.2529-1",
+    "CSISO2022KR",
+    "ISO8859-7",
+    "MACCENTRALEUROPE",
+    "ISO-8859-7",
+    "ISO_8859-7",
+    "CN-GB-ISOIR165",
+    "ISO646-JP",
+    "KS_C_5601-1987",
+    "US-ASCII",
+    "UCS-4BE",
+    "CSEUCKR",
+    "JIS0208",
+    "UTF-16BE",
+    "MS-ARAB",
+    "CSPC862LATINHEBREW",
+    "KOI8-T",
+    "ISO-IR-87",
+    "UCS-2BE",
+    "MACROMANIA",
+    "UCS-4-INTERNAL",
+    "ISO_646.IRV:1991",
+    "CSVISCII",
+    "VISCII1.1-1",
+    "ISO-IR-57",
+    "NEXTSTEP",
+    "HZ-GB-2312",
+    "CSKSC56011987",
+    "ISO-IR-157",
+    "JIS_C6220-1969-RO",
+    "CSISO58GB231280",
+    "TIS620.2533-1",
+    "UCS-2-INTERNAL",
+    "WINDOWS-1258",
+    "WINDOWS-1251",
+    "MACTHAI",
+    "WCHAR_T",
+    "GBK",
+    "ISO-IR-127",
+    "WINDOWS-1256",
+    "UNICODE-1-1-UTF-7",
+    "LATIN7",
+    "ANSI_X3.4-1968",
+    "WINDOWS-1254",
+    "CSUNICODE11UTF7",
+    "WINDOWS-1255",
+    "ANSI_X3.4-1986",
+    "TIS620.2533-0",
+    "EXTENDED_UNIX_CODE_PACKED_FORMAT_FOR_JAPANESE",
+    "WINDOWS-1250",
+    "WINDOWS-936",
+    "EUCTW",
+    "EUC-TW",
+    "WINDOWS-1252",
+    "JIS_C6226-1983",
+    "UCS-4-SWAPPED",
+    "UTF-32BE",
+    "TCVN5712-1",
+    "ISO_8859-1:1987",
+    "MACINTOSH",
+    "ISO-2022-JP-1",
+    "ISO_8859-6:1987",
+    "ISO-2022-JP",
+    "TIS620.2533",
+    "UCS-2-SWAPPED",
+    "WINDOWS-1253",
+    "JAVA",
+    "CSISO57GB1988",
+    "TCVN-5712",
+    "ISO_8859-2:1987",
+    "CSISO14JISC6220RO",
+    "CSMACINTOSH",
+    "ISO-2022-JP-2",
+    "UTF-7",
+    "CSPC850MULTILINGUAL",
+    "GREEK",
+    "CSISO2022JP",
+    "CSISOLATINHEBREW",
+    "ISO_8859-7:2003",
+    "CSISO159JISX02121990",
+    "BIGFIVE",
+    "CSISO2022JP2",
+    "BIG-FIVE",
+    "CSISOLATINGREEK",
+    "HEBREW",
+    "IBM367",
+    "CSHALFWIDTHKATAKANA",
+    "WINDOWS-874",
+    "UNICODELITTLE",
+    "BIG5HKSCS",
+    "BIG5-HKSCS",
+    "JIS_X0208",
+    "JIS_X0201",
+    "WINDOWS-1257",
+    "KOI8-U",
+    "KOI8-RU",
+    "JOHAB",
+    "JISX0201-1976",
+    "JIS_X0208-1990",
+    "JIS_X0212",
+    "JIS_X0212-1990",
+    "ISO_8859-7:1987",
+    "SHIFT-JIS",
+    "SHIFT_JIS",
+    "JIS_X0208-1983",
+    "CSEUCTW",
+    "MACUKRAINE",
+    "UNICODEBIG",
+    "MS-GREEK",
+    "MACGREEK",
+    "CSSHIFTJIS",
+    "JIS_X0212.1990-0",
+    "CSEUCPKDFMTJAPANESE",
+    "MACHEBREW",
+    "MS_KANJI",
+    "TCVN5712-1:1993",
+    "WINBALTRIM",
+    "MS-TURK",
+    "BIG5-HKSCS:2001",
+    "BIG5-HKSCS:1999",
+    "BIG5-HKSCS:2004",
+    "CSISO87JISX0208",
+    "MACTURKISH",
+    "KO_KR.JOHAP92"
+  };
+#define stringpool ((const char *) &stringpool_contents)
+
+static const struct alias aliases[] =
+  {
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 229 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str8, ei_hp_roman8},
+    {-1}, {-1}, {-1}, {-1},
+#line 291 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str13, ei_iso646_cn},
+#line 152 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str14, ei_iso8859_14},
+#line 61 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str15, ei_iso8859_1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 135 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str22, ei_iso8859_10},
+    {-1}, {-1}, {-1}, {-1},
+#line 85 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str27, ei_iso8859_4},
+#line 209 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str28, ei_cp866},
+    {-1},
+#line 52 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str30, ei_c99},
+    {-1}, {-1},
+#line 127 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str33, ei_iso8859_9},
+    {-1}, {-1},
+#line 23 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str36, ei_ascii},
+    {-1},
+#line 363 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str38, ei_local_char},
+#line 58 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str39, ei_iso8859_1},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 69 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str45, ei_iso8859_2},
+    {-1}, {-1},
+#line 207 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str48, ei_cp866},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 356 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str58, ei_cp949},
+    {-1},
+#line 201 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str60, ei_cp850},
+#line 355 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str61, ei_euc_kr},
+#line 241 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str62, ei_rk1048},
+    {-1},
+#line 322 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str64, ei_euc_cn},
+    {-1},
+#line 166 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str66, ei_iso8859_16},
+#line 321 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str67, ei_euc_cn},
+#line 77 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str68, ei_iso8859_3},
+    {-1},
+#line 238 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str70, ei_pt154},
+#line 236 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str71, ei_pt154},
+    {-1}, {-1},
+#line 205 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str74, ei_cp862},
+    {-1}, {-1}, {-1}, {-1},
+#line 197 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str79, ei_cp1258},
+    {-1},
+#line 175 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str81, ei_cp1251},
+    {-1}, {-1}, {-1}, {-1},
+#line 211 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str86, ei_cp1131},
+    {-1},
+#line 237 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str88, ei_pt154},
+    {-1}, {-1},
+#line 199 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str91, ei_cp850},
+    {-1},
+#line 359 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str93, ei_johab},
+#line 203 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str94, ei_cp862},
+#line 191 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str95, ei_cp1256},
+    {-1}, {-1},
+#line 346 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str98, ei_cp950},
+#line 334 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str99, ei_hz},
+    {-1},
+#line 327 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str101, ei_cp936},
+    {-1}, {-1}, {-1},
+#line 185 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str105, ei_cp1254},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1},
+#line 188 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str117, ei_cp1255},
+    {-1},
+#line 121 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str119, ei_iso8859_8},
+    {-1},
+#line 63 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str121, ei_iso8859_1},
+#line 115 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str122, ei_iso8859_8},
+#line 116 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str123, ei_iso8859_8},
+#line 54 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str124, ei_iso8859_1},
+#line 55 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str125, ei_iso8859_1},
+#line 140 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str126, ei_iso8859_11},
+#line 172 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str127, ei_cp1250},
+#line 289 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str128, ei_iso646_cn},
+#line 138 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str129, ei_iso8859_11},
+#line 139 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str130, ei_iso8859_11},
+    {-1}, {-1},
+#line 129 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str133, ei_iso8859_9},
+    {-1},
+#line 103 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str135, ei_iso8859_6},
+#line 122 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str136, ei_iso8859_9},
+#line 123 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str137, ei_iso8859_9},
+#line 95 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str138, ei_iso8859_6},
+#line 96 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str139, ei_iso8859_6},
+#line 167 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str140, ei_iso8859_16},
+#line 179 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str141, ei_cp1252},
+#line 163 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str142, ei_iso8859_16},
+#line 161 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str143, ei_iso8859_16},
+#line 162 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str144, ei_iso8859_16},
+#line 87 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str145, ei_iso8859_4},
+#line 149 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str146, ei_iso8859_14},
+#line 315 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str147, ei_cp932},
+#line 80 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str148, ei_iso8859_4},
+#line 81 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str149, ei_iso8859_4},
+#line 154 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str150, ei_iso8859_14},
+    {-1},
+#line 157 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str152, ei_iso8859_15},
+#line 147 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str153, ei_iso8859_14},
+#line 148 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str154, ei_iso8859_14},
+    {-1}, {-1},
+#line 94 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str157, ei_iso8859_5},
+    {-1}, {-1},
+#line 88 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str160, ei_iso8859_5},
+#line 89 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str161, ei_iso8859_5},
+#line 160 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str162, ei_iso8859_15},
+#line 16 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str163, ei_ascii},
+    {-1},
+#line 155 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str165, ei_iso8859_15},
+#line 156 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str166, ei_iso8859_15},
+    {-1},
+#line 311 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str168, ei_sjis},
+#line 125 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str169, ei_iso8859_9},
+#line 294 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str170, ei_gb2312},
+    {-1},
+#line 137 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str172, ei_iso8859_10},
+    {-1},
+#line 92 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str174, ei_iso8859_5},
+#line 130 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str175, ei_iso8859_10},
+#line 131 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str176, ei_iso8859_10},
+#line 150 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str177, ei_iso8859_14},
+#line 267 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str178, ei_iso646_jp},
+#line 145 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str179, ei_iso8859_13},
+#line 254 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str180, ei_tis620},
+#line 71 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str181, ei_iso8859_2},
+#line 67 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str182, ei_iso8859_2},
+#line 302 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str183, ei_ksc5601},
+#line 64 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str184, ei_iso8859_2},
+#line 65 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str185, ei_iso8859_2},
+#line 214 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str186, ei_mac_roman},
+#line 182 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str187, ei_cp1253},
+#line 132 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str188, ei_iso8859_10},
+#line 286 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str189, ei_jisx0212},
+    {-1},
+#line 151 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str191, ei_iso8859_14},
+#line 246 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str192, ei_cp1133},
+#line 60 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str193, ei_iso8859_1},
+#line 75 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str194, ei_iso8859_3},
+#line 91 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str195, ei_iso8859_5},
+#line 178 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str196, ei_cp1251},
+    {-1},
+#line 339 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str198, ei_euc_tw},
+    {-1}, {-1},
+#line 240 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str201, ei_pt154},
+#line 297 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str202, ei_isoir165},
+#line 108 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str203, ei_iso8859_7},
+#line 110 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str204, ei_iso8859_7},
+#line 83 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str205, ei_iso8859_4},
+    {-1},
+#line 134 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str207, ei_iso8859_10},
+#line 159 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str208, ei_iso8859_15},
+#line 228 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str209, ei_hp_roman8},
+#line 118 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str210, ei_iso8859_8},
+#line 288 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str211, ei_iso646_cn},
+    {-1}, {-1}, {-1},
+#line 256 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str215, ei_cp874},
+    {-1},
+#line 84 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str217, ei_iso8859_4},
+    {-1},
+#line 13 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str219, ei_ascii},
+    {-1}, {-1},
+#line 357 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str222, ei_cp949},
+#line 331 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str223, ei_iso2022_cn},
+    {-1},
+#line 296 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str225, ei_gb2312},
+    {-1},
+#line 79 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str227, ei_iso8859_3},
+#line 57 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str228, ei_iso8859_1},
+#line 126 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str229, ei_iso8859_9},
+#line 72 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str230, ei_iso8859_3},
+#line 73 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str231, ei_iso8859_3},
+#line 146 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str232, ei_iso8859_13},
+#line 164 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str233, ei_iso8859_16},
+#line 239 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str234, ei_pt154},
+#line 141 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str235, ei_iso8859_13},
+#line 142 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str236, ei_iso8859_13},
+    {-1}, {-1}, {-1}, {-1},
+#line 21 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str241, ei_ascii},
+#line 177 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str242, ei_cp1251},
+#line 249 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str243, ei_tis620},
+#line 165 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str244, ei_iso8859_16},
+    {-1},
+#line 248 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str246, ei_tis620},
+    {-1}, {-1}, {-1},
+#line 101 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str250, ei_iso8859_6},
+#line 109 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str251, ei_iso8859_7},
+#line 353 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str252, ei_euc_kr},
+#line 68 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str253, ei_iso8859_2},
+    {-1},
+#line 352 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str255, ei_euc_kr},
+    {-1}, {-1},
+#line 24 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str258, ei_utf8},
+#line 243 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str259, ei_rk1048},
+#line 332 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str260, ei_iso2022_cn},
+    {-1},
+#line 22 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str262, ei_ascii},
+#line 328 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str263, ei_cp936},
+#line 59 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str264, ei_iso8859_1},
+    {-1},
+#line 245 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str266, ei_mulelao},
+#line 278 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str267, ei_jisx0208},
+    {-1},
+#line 272 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str269, ei_jisx0201},
+    {-1},
+#line 330 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str271, ei_gb18030},
+#line 304 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str272, ei_ksc5601},
+#line 208 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str273, ei_cp866},
+#line 250 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str274, ei_tis620},
+    {-1},
+#line 168 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str276, ei_koi8_r},
+#line 99 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str277, ei_iso8859_6},
+#line 34 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str278, ei_ucs4},
+#line 39 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str279, ei_utf16},
+    {-1},
+#line 244 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str281, ei_rk1048},
+    {-1},
+#line 299 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str283, ei_ksc5601},
+#line 169 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str284, ei_koi8_r},
+    {-1}, {-1},
+#line 174 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str287, ei_cp1250},
+#line 323 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str288, ei_euc_cn},
+    {-1}, {-1},
+#line 36 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str291, ei_ucs4},
+    {-1},
+#line 340 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str293, ei_ces_big5},
+    {-1}, {-1},
+#line 341 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str296, ei_ces_big5},
+#line 227 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str297, ei_hp_roman8},
+    {-1},
+#line 76 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str299, ei_iso8859_3},
+    {-1}, {-1}, {-1}, {-1},
+#line 301 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str304, ei_ksc5601},
+    {-1},
+#line 285 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str306, ei_jisx0212},
+#line 261 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str307, ei_tcvn},
+    {-1},
+#line 153 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str309, ei_iso8859_14},
+    {-1},
+#line 230 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str311, ei_hp_roman8},
+    {-1}, {-1},
+#line 25 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str314, ei_ucs2},
+    {-1},
+#line 200 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str316, ei_cp850},
+    {-1},
+#line 158 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str318, ei_iso8859_15},
+#line 204 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str319, ei_cp862},
+#line 293 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str320, ei_gb2312},
+    {-1}, {-1}, {-1},
+#line 62 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str324, ei_iso8859_1},
+    {-1}, {-1},
+#line 333 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str327, ei_iso2022_cn_ext},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 143 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str335, ei_iso8859_13},
+    {-1},
+#line 93 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str337, ei_iso8859_5},
+#line 136 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str338, ei_iso8859_10},
+    {-1}, {-1}, {-1},
+#line 268 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str342, ei_iso646_jp},
+    {-1}, {-1}, {-1},
+#line 217 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str346, ei_mac_iceland},
+#line 38 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str347, ei_ucs4le},
+#line 86 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str348, ei_iso8859_4},
+#line 102 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str349, ei_iso8859_6},
+#line 30 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str350, ei_ucs2be},
+    {-1}, {-1},
+#line 41 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str353, ei_utf16le},
+    {-1}, {-1}, {-1},
+#line 31 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str357, ei_ucs2be},
+    {-1}, {-1},
+#line 128 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str360, ei_iso8859_9},
+#line 181 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str361, ei_cp1252},
+    {-1}, {-1},
+#line 345 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str364, ei_ces_big5},
+#line 32 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str365, ei_ucs2le},
+    {-1},
+#line 344 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str367, ei_ces_big5},
+    {-1}, {-1}, {-1}, {-1},
+#line 232 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str372, ei_armscii_8},
+#line 35 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str373, ei_ucs4},
+    {-1}, {-1}, {-1}, {-1},
+#line 42 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str378, ei_utf32},
+    {-1},
+#line 27 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str380, ei_ucs2},
+    {-1},
+#line 117 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str382, ei_iso8859_8},
+    {-1},
+#line 70 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str384, ei_iso8859_2},
+#line 324 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str385, ei_euc_cn},
+#line 14 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str386, ei_ascii},
+#line 212 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str387, ei_mac_roman},
+    {-1},
+#line 220 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str389, ei_mac_cyrillic},
+    {-1},
+#line 26 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str391, ei_ucs2},
+    {-1}, {-1},
+#line 242 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str394, ei_rk1048},
+#line 82 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str395, ei_iso8859_4},
+#line 124 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str396, ei_iso8859_9},
+#line 306 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str397, ei_euc_jp},
+    {-1}, {-1},
+#line 305 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str400, ei_euc_jp},
+#line 90 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str401, ei_iso8859_5},
+#line 111 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str402, ei_iso8859_7},
+#line 100 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str403, ei_iso8859_6},
+    {-1},
+#line 314 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str405, ei_sjis},
+    {-1}, {-1},
+#line 210 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str408, ei_cp866},
+#line 194 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str409, ei_cp1257},
+    {-1},
+#line 361 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str411, ei_iso2022_kr},
+#line 233 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str412, ei_georgian_academy},
+    {-1}, {-1},
+#line 218 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str415, ei_mac_croatian},
+#line 19 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str416, ei_ascii},
+    {-1}, {-1},
+#line 234 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str419, ei_georgian_ps},
+    {-1}, {-1}, {-1},
+#line 325 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str423, ei_euc_cn},
+#line 258 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str424, ei_viscii},
+    {-1}, {-1}, {-1},
+#line 190 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str428, ei_cp1255},
+#line 44 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str429, ei_utf32le},
+#line 78 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str430, ei_iso8859_3},
+    {-1},
+#line 225 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str432, ei_mac_arabic},
+    {-1}, {-1}, {-1},
+#line 74 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str436, ei_iso8859_3},
+#line 247 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str437, ei_cp1133},
+    {-1},
+#line 251 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str439, ei_tis620},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 362 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str448, ei_iso2022_kr},
+#line 114 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str449, ei_iso8859_7},
+    {-1},
+#line 216 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str451, ei_mac_centraleurope},
+#line 104 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str452, ei_iso8859_7},
+#line 105 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str453, ei_iso8859_7},
+    {-1},
+#line 298 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str455, ei_isoir165},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 266 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str461, ei_iso646_jp},
+#line 300 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str462, ei_ksc5601},
+#line 12 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str463, ei_ascii},
+#line 37 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str464, ei_ucs4be},
+    {-1},
+#line 354 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str466, ei_euc_kr},
+#line 277 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str467, ei_jisx0208},
+    {-1}, {-1},
+#line 40 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str470, ei_utf16be},
+    {-1}, {-1}, {-1}, {-1},
+#line 193 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str475, ei_cp1256},
+#line 206 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str476, ei_cp862},
+    {-1},
+#line 235 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str478, ei_koi8_t},
+    {-1}, {-1},
+#line 279 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str481, ei_jisx0208},
+#line 28 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str482, ei_ucs2be},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 219 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str489, ei_mac_romania},
+    {-1}, {-1},
+#line 50 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str492, ei_ucs4internal},
+#line 15 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str493, ei_ascii},
+    {-1},
+#line 260 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str495, ei_viscii},
+    {-1},
+#line 259 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str497, ei_viscii},
+    {-1}, {-1},
+#line 290 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str500, ei_iso646_cn},
+    {-1},
+#line 231 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str502, ei_nextstep},
+#line 335 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str503, ei_hz},
+#line 303 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str504, ei_ksc5601},
+#line 133 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str505, ei_iso8859_10},
+    {-1},
+#line 265 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str507, ei_iso646_jp},
+#line 295 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str508, ei_gb2312},
+#line 253 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str509, ei_tis620},
+#line 48 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str510, ei_ucs2internal},
+#line 198 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str511, ei_cp1258},
+#line 176 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str512, ei_cp1251},
+#line 226 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str513, ei_mac_thai},
+    {-1},
+#line 364 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str515, ei_local_wchar_t},
+#line 326 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str516, ei_ces_gbk},
+#line 98 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str517, ei_iso8859_6},
+    {-1},
+#line 192 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str519, ei_cp1256},
+#line 46 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str520, ei_utf7},
+#line 144 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str521, ei_iso8859_13},
+    {-1},
+#line 17 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str523, ei_ascii},
+#line 186 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str524, ei_cp1254},
+#line 47 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str525, ei_utf7},
+    {-1}, {-1}, {-1}, {-1},
+#line 189 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str530, ei_cp1255},
+#line 18 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str531, ei_ascii},
+#line 252 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str532, ei_tis620},
+#line 307 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str533, ei_euc_jp},
+    {-1},
+#line 173 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str535, ei_cp1250},
+#line 329 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str536, ei_cp936},
+#line 337 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str537, ei_euc_tw},
+    {-1}, {-1},
+#line 336 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str540, ei_euc_tw},
+    {-1},
+#line 180 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str542, ei_cp1252},
+#line 280 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str543, ei_jisx0208},
+    {-1},
+#line 51 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str545, ei_ucs4swapped},
+#line 43 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str546, ei_utf32be},
+#line 263 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str547, ei_tcvn},
+#line 56 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str548, ei_iso8859_1},
+    {-1}, {-1}, {-1}, {-1},
+#line 213 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str553, ei_mac_roman},
+#line 318 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str554, ei_iso2022_jp1},
+#line 97 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str555, ei_iso8859_6},
+#line 316 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str556, ei_iso2022_jp},
+    {-1}, {-1}, {-1},
+#line 255 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str560, ei_tis620},
+    {-1}, {-1},
+#line 49 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str563, ei_ucs2swapped},
+    {-1},
+#line 183 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str565, ei_cp1253},
+    {-1}, {-1}, {-1},
+#line 53 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str569, ei_java},
+#line 292 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str570, ei_iso646_cn},
+    {-1},
+#line 262 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str572, ei_tcvn},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 66 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str578, ei_iso8859_2},
+#line 269 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str579, ei_iso646_jp},
+    {-1}, {-1}, {-1},
+#line 215 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str583, ei_mac_roman},
+#line 319 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str584, ei_iso2022_jp2},
+    {-1}, {-1}, {-1},
+#line 45 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str588, ei_utf7},
+#line 202 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str589, ei_cp850},
+    {-1}, {-1},
+#line 112 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str592, ei_iso8859_7},
+#line 317 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str593, ei_iso2022_jp},
+#line 120 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str594, ei_iso8859_8},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 107 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str601, ei_iso8859_7},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 287 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str616, ei_jisx0212},
+    {-1}, {-1},
+#line 343 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str619, ei_ces_big5},
+#line 320 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str620, ei_iso2022_jp2},
+    {-1},
+#line 342 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str622, ei_ces_big5},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1},
+#line 113 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str636, ei_iso8859_7},
+#line 119 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str637, ei_iso8859_8},
+    {-1}, {-1}, {-1},
+#line 20 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str641, ei_ascii},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 273 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str647, ei_jisx0201},
+    {-1}, {-1},
+#line 257 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str650, ei_cp874},
+    {-1},
+#line 33 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str652, ei_ucs2le},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1},
+#line 350 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str663, ei_big5hkscs2004},
+    {-1}, {-1},
+#line 349 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str666, ei_big5hkscs2004},
+#line 274 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str667, ei_jisx0208},
+    {-1},
+#line 270 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str669, ei_jisx0201},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 195 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str676, ei_cp1257},
+    {-1}, {-1}, {-1},
+#line 170 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str680, ei_koi8_u},
+    {-1}, {-1}, {-1},
+#line 171 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str684, ei_koi8_ru},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 358 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str691, ei_johab},
+    {-1},
+#line 271 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str693, ei_jisx0201},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 276 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str702, ei_jisx0208},
+    {-1}, {-1}, {-1},
+#line 282 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str706, ei_jisx0212},
+    {-1}, {-1}, {-1},
+#line 284 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str710, ei_jisx0212},
+    {-1},
+#line 106 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str712, ei_iso8859_7},
+#line 310 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str713, ei_sjis},
+#line 309 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str714, ei_sjis},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 275 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str732, ei_jisx0208},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 338 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str751, ei_euc_tw},
+#line 221 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str752, ei_mac_ukraine},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 29 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str759, ei_ucs2be},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 184 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str769, ei_cp1253},
+    {-1}, {-1}, {-1}, {-1},
+#line 222 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str774, ei_mac_greek},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 313 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str800, ei_sjis},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1},
+#line 283 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str822, ei_jisx0212},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 308 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str840, ei_euc_jp},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1},
+#line 224 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str853, ei_mac_hebrew},
+    {-1}, {-1}, {-1}, {-1},
+#line 312 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str858, ei_sjis},
+#line 264 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str859, ei_tcvn},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 196 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str869, ei_cp1257},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 187 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str884, ei_cp1254},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1},
+#line 348 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str895, ei_big5hkscs2001},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 347 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str901, ei_big5hkscs1999},
+    {-1}, {-1}, {-1}, {-1}, {-1},
+#line 351 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str907, ei_big5hkscs2004},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 281 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str917, ei_jisx0208},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+#line 223 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str953, ei_mac_turkish},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
+    {-1}, {-1}, {-1}, {-1},
+#line 360 "lib/aliases_syssolaris.gperf"
+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str1003, ei_johab}
+  };
+
+#ifdef __GNUC__
+__inline
+#if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__
+__attribute__ ((__gnu_inline__))
+#endif
+#endif
+const struct alias *
+aliases_lookup (register const char *str, register unsigned int len)
+{
+  if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+    {
+      register int key = aliases_hash (str, len);
+
+      if (key <= MAX_HASH_VALUE && key >= 0)
+        {
+          register int o = aliases[key].name;
+          if (o >= 0)
+            {
+              register const char *s = o + stringpool;
+
+              if (*str == *s && !strcmp (str + 1, s + 1))
+                return &aliases[key];
+            }
+        }
+    }
+  return 0;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/armscii_8.h b/graf2d/win32gdk/gdk/src/iconv/armscii_8.h
new file mode 100644
index 00000000000..8d1613ff98c
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/armscii_8.h
@@ -0,0 +1,116 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ARMSCII-8
+ */
+
+static const unsigned short armscii_8_2uni[96] = {
+  /* 0xa0 */
+  0x00a0, 0xfffd, 0x0587, 0x0589, 0x0029, 0x0028, 0x00bb, 0x00ab,
+  0x2014, 0x002e, 0x055d, 0x002c, 0x002d, 0x058a, 0x2026, 0x055c,
+  /* 0xb0 */
+  0x055b, 0x055e, 0x0531, 0x0561, 0x0532, 0x0562, 0x0533, 0x0563,
+  0x0534, 0x0564, 0x0535, 0x0565, 0x0536, 0x0566, 0x0537, 0x0567,
+  /* 0xc0 */
+  0x0538, 0x0568, 0x0539, 0x0569, 0x053a, 0x056a, 0x053b, 0x056b,
+  0x053c, 0x056c, 0x053d, 0x056d, 0x053e, 0x056e, 0x053f, 0x056f,
+  /* 0xd0 */
+  0x0540, 0x0570, 0x0541, 0x0571, 0x0542, 0x0572, 0x0543, 0x0573,
+  0x0544, 0x0574, 0x0545, 0x0575, 0x0546, 0x0576, 0x0547, 0x0577,
+  /* 0xe0 */
+  0x0548, 0x0578, 0x0549, 0x0579, 0x054a, 0x057a, 0x054b, 0x057b,
+  0x054c, 0x057c, 0x054d, 0x057d, 0x054e, 0x057e, 0x054f, 0x057f,
+  /* 0xf0 */
+  0x0550, 0x0580, 0x0551, 0x0581, 0x0552, 0x0582, 0x0553, 0x0583,
+  0x0554, 0x0584, 0x0555, 0x0585, 0x0556, 0x0586, 0x055a, 0xfffd,
+};
+
+static int
+armscii_8_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0xa0) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = armscii_8_2uni[c-0xa0];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char armscii_8_page00[8] = {
+  0xa5, 0xa4, 0x2a, 0x2b, 0xab, 0xac, 0xa9, 0x2f, /* 0x28-0x2f */
+};
+static const unsigned char armscii_8_page00_1[32] = {
+  0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0xa7, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0xa6, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+};
+static const unsigned char armscii_8_page05[96] = {
+  0x00, 0xb2, 0xb4, 0xb6, 0xb8, 0xba, 0xbc, 0xbe, /* 0x30-0x37 */
+  0xc0, 0xc2, 0xc4, 0xc6, 0xc8, 0xca, 0xcc, 0xce, /* 0x38-0x3f */
+  0xd0, 0xd2, 0xd4, 0xd6, 0xd8, 0xda, 0xdc, 0xde, /* 0x40-0x47 */
+  0xe0, 0xe2, 0xe4, 0xe6, 0xe8, 0xea, 0xec, 0xee, /* 0x48-0x4f */
+  0xf0, 0xf2, 0xf4, 0xf6, 0xf8, 0xfa, 0xfc, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0xfe, 0xb0, 0xaf, 0xaa, 0xb1, 0x00, /* 0x58-0x5f */
+  0x00, 0xb3, 0xb5, 0xb7, 0xb9, 0xbb, 0xbd, 0xbf, /* 0x60-0x67 */
+  0xc1, 0xc3, 0xc5, 0xc7, 0xc9, 0xcb, 0xcd, 0xcf, /* 0x68-0x6f */
+  0xd1, 0xd3, 0xd5, 0xd7, 0xd9, 0xdb, 0xdd, 0xdf, /* 0x70-0x77 */
+  0xe1, 0xe3, 0xe5, 0xe7, 0xe9, 0xeb, 0xed, 0xef, /* 0x78-0x7f */
+  0xf1, 0xf3, 0xf5, 0xf7, 0xf9, 0xfb, 0xfd, 0xa2, /* 0x80-0x87 */
+  0x00, 0xa3, 0xad, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+};
+static const unsigned char armscii_8_page20[24] = {
+  0x00, 0x00, 0x00, 0x00, 0xa8, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xae, 0x00, /* 0x20-0x27 */
+};
+
+static int
+armscii_8_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0028) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x0028 && wc < 0x0030)
+    c = armscii_8_page00[wc-0x0028];
+  else if (wc >= 0x0030 && wc < 0x00a0)
+    c = wc;
+  else if (wc >= 0x00a0 && wc < 0x00c0)
+    c = armscii_8_page00_1[wc-0x00a0];
+  else if (wc >= 0x0530 && wc < 0x0590)
+    c = armscii_8_page05[wc-0x0530];
+  else if (wc >= 0x2010 && wc < 0x2028)
+    c = armscii_8_page20[wc-0x2010];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/ascii.h b/graf2d/win32gdk/gdk/src/iconv/ascii.h
new file mode 100644
index 00000000000..fa49e3bf94f
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/ascii.h
@@ -0,0 +1,44 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ASCII
+ */
+
+static int
+ascii_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  return RET_ILSEQ;
+}
+
+static int
+ascii_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/atarist.h b/graf2d/win32gdk/gdk/src/iconv/atarist.h
new file mode 100644
index 00000000000..90f18cc1470
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/atarist.h
@@ -0,0 +1,158 @@
+/*
+ * Copyright (C) 1999-2005 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * Atari ST
+ */
+
+static const unsigned short atarist_2uni[128] = {
+  /* 0x80 */
+  0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+  0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x00ec, 0x00c4, 0x00c5,
+  /* 0x90 */
+  0x00c9, 0x00e6, 0x00c6, 0x00f4, 0x00f6, 0x00f2, 0x00fb, 0x00f9,
+  0x00ff, 0x00d6, 0x00dc, 0x00a2, 0x00a3, 0x00a5, 0x00df, 0x0192,
+  /* 0xa0 */
+  0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x00ba,
+  0x00bf, 0x2310, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+  /* 0xb0 */
+  0x00e3, 0x00f5, 0x00d8, 0x00f8, 0x0153, 0x0152, 0x00c0, 0x00c3,
+  0x00d5, 0x00a8, 0x00b4, 0x2020, 0x00b6, 0x00a9, 0x00ae, 0x2122,
+  /* 0xc0 */
+  0x0133, 0x0132, 0x05d0, 0x05d1, 0x05d2, 0x05d3, 0x05d4, 0x05d5,
+  0x05d6, 0x05d7, 0x05d8, 0x05d9, 0x05db, 0x05dc, 0x05de, 0x05e0,
+  /* 0xd0 */
+  0x05e1, 0x05e2, 0x05e4, 0x05e6, 0x05e7, 0x05e8, 0x05e9, 0x05ea,
+  0x05df, 0x05da, 0x05dd, 0x05e3, 0x05e5, 0x00a7, 0x2227, 0x221e,
+  /* 0xe0 */
+  0x03b1, 0x03b2, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+  0x03a6, 0x0398, 0x03a9, 0x03b4, 0x222e, 0x03c6, 0x2208, 0x2229,
+  /* 0xf0 */
+  0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+  0x00b0, 0x2219, 0x00b7, 0x221a, 0x207f, 0x00b2, 0x00b3, 0x00af,
+};
+
+static int
+atarist_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) atarist_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char atarist_page00[96] = {
+  0x00, 0xad, 0x9b, 0x9c, 0x00, 0x9d, 0x00, 0xdd, /* 0xa0-0xa7 */
+  0xb9, 0xbd, 0xa6, 0xae, 0xaa, 0x00, 0xbe, 0xff, /* 0xa8-0xaf */
+  0xf8, 0xf1, 0xfd, 0xfe, 0xba, 0xe6, 0xbc, 0xfa, /* 0xb0-0xb7 */
+  0x00, 0x00, 0xa7, 0xaf, 0xac, 0xab, 0x00, 0xa8, /* 0xb8-0xbf */
+  0xb6, 0x00, 0x00, 0xb7, 0x8e, 0x8f, 0x92, 0x80, /* 0xc0-0xc7 */
+  0x00, 0x90, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0xa5, 0x00, 0x00, 0x00, 0xb8, 0x99, 0x00, /* 0xd0-0xd7 */
+  0xb2, 0x00, 0x00, 0x00, 0x9a, 0x00, 0x00, 0x9e, /* 0xd8-0xdf */
+  0x85, 0xa0, 0x83, 0xb0, 0x84, 0x86, 0x91, 0x87, /* 0xe0-0xe7 */
+  0x8a, 0x82, 0x88, 0x89, 0x8d, 0xa1, 0x8c, 0x8b, /* 0xe8-0xef */
+  0x00, 0xa4, 0x95, 0xa2, 0x93, 0xb1, 0x94, 0xf6, /* 0xf0-0xf7 */
+  0xb3, 0x97, 0xa3, 0x96, 0x81, 0x00, 0x00, 0x98, /* 0xf8-0xff */
+};
+static const unsigned char atarist_page01[104] = {
+  0x00, 0x00, 0xc1, 0xc0, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0xb5, 0xb4, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0x9f, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char atarist_page03[56] = {
+  0x00, 0x00, 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0xe9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0x00, 0x00, 0x00, 0xe4, 0x00, 0x00, 0xe8, 0x00, /* 0xa0-0xa7 */
+  0x00, 0xea, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x00, 0xe0, 0xe1, 0x00, 0xeb, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0xe3, 0x00, 0x00, 0xe5, 0xe7, 0x00, 0xed, 0x00, /* 0xc0-0xc7 */
+};
+static const unsigned char atarist_page05[32] = {
+  0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, /* 0xd0-0xd7 */
+  0xca, 0xcb, 0xd9, 0xcc, 0xcd, 0xda, 0xce, 0xd8, /* 0xd8-0xdf */
+  0xcf, 0xd0, 0xd1, 0xdb, 0xd2, 0xdc, 0xd3, 0xd4, /* 0xe0-0xe7 */
+  0xd5, 0xd6, 0xd7, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+};
+static const unsigned char atarist_page22[96] = {
+  0xee, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0xf9, 0xfb, 0x00, 0x00, 0x00, 0xdf, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xde, /* 0x20-0x27 */
+  0x00, 0xef, 0x00, 0x00, 0x00, 0x00, 0xec, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0xf7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0xf0, 0x00, 0x00, 0xf3, 0xf2, 0x00, 0x00, /* 0x60-0x67 */
+};
+static const unsigned char atarist_page23[24] = {
+  0xa9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0xf4, 0xf5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+};
+
+static int
+atarist_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = atarist_page00[wc-0x00a0];
+  else if (wc >= 0x0130 && wc < 0x0198)
+    c = atarist_page01[wc-0x0130];
+  else if (wc >= 0x0390 && wc < 0x03c8)
+    c = atarist_page03[wc-0x0390];
+  else if (wc >= 0x05d0 && wc < 0x05f0)
+    c = atarist_page05[wc-0x05d0];
+  else if (wc == 0x2020)
+    c = 0xbb;
+  else if (wc == 0x207f)
+    c = 0xfc;
+  else if (wc == 0x2122)
+    c = 0xbf;
+  else if (wc >= 0x2208 && wc < 0x2268)
+    c = atarist_page22[wc-0x2208];
+  else if (wc >= 0x2310 && wc < 0x2328)
+    c = atarist_page23[wc-0x2310];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/big5.h b/graf2d/win32gdk/gdk/src/iconv/big5.h
new file mode 100644
index 00000000000..de10a99ae9a
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/big5.h
@@ -0,0 +1,4160 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * BIG5
+ */
+
+static const unsigned short big5_2uni_pagea1[6121] = {
+  /* 0xa1 */
+  0x3000, 0xff0c, 0x3001, 0x3002, 0xff0e, 0x2022, 0xff1b, 0xff1a,
+  0xff1f, 0xff01, 0xfe30, 0x2026, 0x2025, 0xfe50, 0xff64, 0xfe52,
+  0x00b7, 0xfe54, 0xfe55, 0xfe56, 0xfe57, 0xff5c, 0x2013, 0xfe31,
+  0x2014, 0xfe33, 0xfffd, 0xfe34, 0xfe4f, 0xff08, 0xff09, 0xfe35,
+  0xfe36, 0xff5b, 0xff5d, 0xfe37, 0xfe38, 0x3014, 0x3015, 0xfe39,
+  0xfe3a, 0x3010, 0x3011, 0xfe3b, 0xfe3c, 0x300a, 0x300b, 0xfe3d,
+  0xfe3e, 0x3008, 0x3009, 0xfe3f, 0xfe40, 0x300c, 0x300d, 0xfe41,
+  0xfe42, 0x300e, 0x300f, 0xfe43, 0xfe44, 0xfe59, 0xfe5a, 0xfe5b,
+  0xfe5c, 0xfe5d, 0xfe5e, 0x2018, 0x2019, 0x201c, 0x201d, 0x301d,
+  0x301e, 0x2035, 0x2032, 0xff03, 0xff06, 0xff0a, 0x203b, 0x00a7,
+  0x3003, 0x25cb, 0x25cf, 0x25b3, 0x25b2, 0x25ce, 0x2606, 0x2605,
+  0x25c7, 0x25c6, 0x25a1, 0x25a0, 0x25bd, 0x25bc, 0x32a3, 0x2105,
+  0x203e, 0xfffd, 0xff3f, 0xfffd, 0xfe49, 0xfe4a, 0xfe4d, 0xfe4e,
+  0xfe4b, 0xfe4c, 0xfe5f, 0xfe60, 0xfe61, 0xff0b, 0xff0d, 0x00d7,
+  0x00f7, 0x00b1, 0x221a, 0xff1c, 0xff1e, 0xff1d, 0x2266, 0x2267,
+  0x2260, 0x221e, 0x2252, 0x2261, 0xfe62, 0xfe63, 0xfe64, 0xfe65,
+  0xfe66, 0x223c, 0x2229, 0x222a, 0x22a5, 0x2220, 0x221f, 0x22bf,
+  0x33d2, 0x33d1, 0x222b, 0x222e, 0x2235, 0x2234, 0x2640, 0x2642,
+  0x2641, 0x2609, 0x2191, 0x2193, 0x2190, 0x2192, 0x2196, 0x2197,
+  0x2199, 0x2198, 0x2225, 0x2223, 0xfffd,
+  /* 0xa2 */
+  0xfffd, 0xff0f, 0xff3c, 0xff04, 0x00a5, 0x3012, 0x00a2, 0x00a3,
+  0xff05, 0xff20, 0x2103, 0x2109, 0xfe69, 0xfe6a, 0xfe6b, 0x33d5,
+  0x339c, 0x339d, 0x339e, 0x33ce, 0x33a1, 0x338e, 0x338f, 0x33c4,
+  0x00b0, 0x5159, 0x515b, 0x515e, 0x515d, 0x5161, 0x5163, 0x55e7,
+  0x74e9, 0x7cce, 0x2581, 0x2582, 0x2583, 0x2584, 0x2585, 0x2586,
+  0x2587, 0x2588, 0x258f, 0x258e, 0x258d, 0x258c, 0x258b, 0x258a,
+  0x2589, 0x253c, 0x2534, 0x252c, 0x2524, 0x251c, 0x2594, 0x2500,
+  0x2502, 0x2595, 0x250c, 0x2510, 0x2514, 0x2518, 0x256d, 0x256e,
+  0x2570, 0x256f, 0x2550, 0x255e, 0x256a, 0x2561, 0x25e2, 0x25e3,
+  0x25e5, 0x25e4, 0x2571, 0x2572, 0x2573, 0xff10, 0xff11, 0xff12,
+  0xff13, 0xff14, 0xff15, 0xff16, 0xff17, 0xff18, 0xff19, 0x2160,
+  0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, 0x2167, 0x2168,
+  0x2169, 0x3021, 0x3022, 0x3023, 0x3024, 0x3025, 0x3026, 0x3027,
+  0x3028, 0x3029, 0xfffd, 0x5344, 0xfffd, 0xff21, 0xff22, 0xff23,
+  0xff24, 0xff25, 0xff26, 0xff27, 0xff28, 0xff29, 0xff2a, 0xff2b,
+  0xff2c, 0xff2d, 0xff2e, 0xff2f, 0xff30, 0xff31, 0xff32, 0xff33,
+  0xff34, 0xff35, 0xff36, 0xff37, 0xff38, 0xff39, 0xff3a, 0xff41,
+  0xff42, 0xff43, 0xff44, 0xff45, 0xff46, 0xff47, 0xff48, 0xff49,
+  0xff4a, 0xff4b, 0xff4c, 0xff4d, 0xff4e, 0xff4f, 0xff50, 0xff51,
+  0xff52, 0xff53, 0xff54, 0xff55, 0xff56,
+  /* 0xa3 */
+  0xff57, 0xff58, 0xff59, 0xff5a, 0x0391, 0x0392, 0x0393, 0x0394,
+  0x0395, 0x0396, 0x0397, 0x0398, 0x0399, 0x039a, 0x039b, 0x039c,
+  0x039d, 0x039e, 0x039f, 0x03a0, 0x03a1, 0x03a3, 0x03a4, 0x03a5,
+  0x03a6, 0x03a7, 0x03a8, 0x03a9, 0x03b1, 0x03b2, 0x03b3, 0x03b4,
+  0x03b5, 0x03b6, 0x03b7, 0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc,
+  0x03bd, 0x03be, 0x03bf, 0x03c0, 0x03c1, 0x03c3, 0x03c4, 0x03c5,
+  0x03c6, 0x03c7, 0x03c8, 0x03c9, 0x3105, 0x3106, 0x3107, 0x3108,
+  0x3109, 0x310a, 0x310b, 0x310c, 0x310d, 0x310e, 0x310f, 0x3110,
+  0x3111, 0x3112, 0x3113, 0x3114, 0x3115, 0x3116, 0x3117, 0x3118,
+  0x3119, 0x311a, 0x311b, 0x311c, 0x311d, 0x311e, 0x311f, 0x3120,
+  0x3121, 0x3122, 0x3123, 0x3124, 0x3125, 0x3126, 0x3127, 0x3128,
+  0x3129, 0x02d9, 0x02c9, 0x02ca, 0x02c7, 0x02cb, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0xa4 */
+  0x4e00, 0x4e59, 0x4e01, 0x4e03, 0x4e43, 0x4e5d, 0x4e86, 0x4e8c,
+  0x4eba, 0x513f, 0x5165, 0x516b, 0x51e0, 0x5200, 0x5201, 0x529b,
+  0x5315, 0x5341, 0x535c, 0x53c8, 0x4e09, 0x4e0b, 0x4e08, 0x4e0a,
+  0x4e2b, 0x4e38, 0x51e1, 0x4e45, 0x4e48, 0x4e5f, 0x4e5e, 0x4e8e,
+  0x4ea1, 0x5140, 0x5203, 0x52fa, 0x5343, 0x53c9, 0x53e3, 0x571f,
+  0x58eb, 0x5915, 0x5927, 0x5973, 0x5b50, 0x5b51, 0x5b53, 0x5bf8,
+  0x5c0f, 0x5c22, 0x5c38, 0x5c71, 0x5ddd, 0x5de5, 0x5df1, 0x5df2,
+  0x5df3, 0x5dfe, 0x5e72, 0x5efe, 0x5f0b, 0x5f13, 0x624d, 0x4e11,
+  0x4e10, 0x4e0d, 0x4e2d, 0x4e30, 0x4e39, 0x4e4b, 0x5c39, 0x4e88,
+  0x4e91, 0x4e95, 0x4e92, 0x4e94, 0x4ea2, 0x4ec1, 0x4ec0, 0x4ec3,
+  0x4ec6, 0x4ec7, 0x4ecd, 0x4eca, 0x4ecb, 0x4ec4, 0x5143, 0x5141,
+  0x5167, 0x516d, 0x516e, 0x516c, 0x5197, 0x51f6, 0x5206, 0x5207,
+  0x5208, 0x52fb, 0x52fe, 0x52ff, 0x5316, 0x5339, 0x5348, 0x5347,
+  0x5345, 0x535e, 0x5384, 0x53cb, 0x53ca, 0x53cd, 0x58ec, 0x5929,
+  0x592b, 0x592a, 0x592d, 0x5b54, 0x5c11, 0x5c24, 0x5c3a, 0x5c6f,
+  0x5df4, 0x5e7b, 0x5eff, 0x5f14, 0x5f15, 0x5fc3, 0x6208, 0x6236,
+  0x624b, 0x624e, 0x652f, 0x6587, 0x6597, 0x65a4, 0x65b9, 0x65e5,
+  0x66f0, 0x6708, 0x6728, 0x6b20, 0x6b62, 0x6b79, 0x6bcb, 0x6bd4,
+  0x6bdb, 0x6c0f, 0x6c34, 0x706b, 0x722a, 0x7236, 0x723b, 0x7247,
+  0x7259, 0x725b, 0x72ac, 0x738b, 0x4e19,
+  /* 0xa5 */
+  0x4e16, 0x4e15, 0x4e14, 0x4e18, 0x4e3b, 0x4e4d, 0x4e4f, 0x4e4e,
+  0x4ee5, 0x4ed8, 0x4ed4, 0x4ed5, 0x4ed6, 0x4ed7, 0x4ee3, 0x4ee4,
+  0x4ed9, 0x4ede, 0x5145, 0x5144, 0x5189, 0x518a, 0x51ac, 0x51f9,
+  0x51fa, 0x51f8, 0x520a, 0x52a0, 0x529f, 0x5305, 0x5306, 0x5317,
+  0x531d, 0x4edf, 0x534a, 0x5349, 0x5361, 0x5360, 0x536f, 0x536e,
+  0x53bb, 0x53ef, 0x53e4, 0x53f3, 0x53ec, 0x53ee, 0x53e9, 0x53e8,
+  0x53fc, 0x53f8, 0x53f5, 0x53eb, 0x53e6, 0x53ea, 0x53f2, 0x53f1,
+  0x53f0, 0x53e5, 0x53ed, 0x53fb, 0x56db, 0x56da, 0x5916, 0x592e,
+  0x5931, 0x5974, 0x5976, 0x5b55, 0x5b83, 0x5c3c, 0x5de8, 0x5de7,
+  0x5de6, 0x5e02, 0x5e03, 0x5e73, 0x5e7c, 0x5f01, 0x5f18, 0x5f17,
+  0x5fc5, 0x620a, 0x6253, 0x6254, 0x6252, 0x6251, 0x65a5, 0x65e6,
+  0x672e, 0x672c, 0x672a, 0x672b, 0x672d, 0x6b63, 0x6bcd, 0x6c11,
+  0x6c10, 0x6c38, 0x6c41, 0x6c40, 0x6c3e, 0x72af, 0x7384, 0x7389,
+  0x74dc, 0x74e6, 0x7518, 0x751f, 0x7528, 0x7529, 0x7530, 0x7531,
+  0x7532, 0x7533, 0x758b, 0x767d, 0x76ae, 0x76bf, 0x76ee, 0x77db,
+  0x77e2, 0x77f3, 0x793a, 0x79be, 0x7a74, 0x7acb, 0x4e1e, 0x4e1f,
+  0x4e52, 0x4e53, 0x4e69, 0x4e99, 0x4ea4, 0x4ea6, 0x4ea5, 0x4eff,
+  0x4f09, 0x4f19, 0x4f0a, 0x4f15, 0x4f0d, 0x4f10, 0x4f11, 0x4f0f,
+  0x4ef2, 0x4ef6, 0x4efb, 0x4ef0, 0x4ef3, 0x4efd, 0x4f01, 0x4f0b,
+  0x5149, 0x5147, 0x5146, 0x5148, 0x5168,
+  /* 0xa6 */
+  0x5171, 0x518d, 0x51b0, 0x5217, 0x5211, 0x5212, 0x520e, 0x5216,
+  0x52a3, 0x5308, 0x5321, 0x5320, 0x5370, 0x5371, 0x5409, 0x540f,
+  0x540c, 0x540a, 0x5410, 0x5401, 0x540b, 0x5404, 0x5411, 0x540d,
+  0x5408, 0x5403, 0x540e, 0x5406, 0x5412, 0x56e0, 0x56de, 0x56dd,
+  0x5733, 0x5730, 0x5728, 0x572d, 0x572c, 0x572f, 0x5729, 0x5919,
+  0x591a, 0x5937, 0x5938, 0x5984, 0x5978, 0x5983, 0x597d, 0x5979,
+  0x5982, 0x5981, 0x5b57, 0x5b58, 0x5b87, 0x5b88, 0x5b85, 0x5b89,
+  0x5bfa, 0x5c16, 0x5c79, 0x5dde, 0x5e06, 0x5e76, 0x5e74, 0x5f0f,
+  0x5f1b, 0x5fd9, 0x5fd6, 0x620e, 0x620c, 0x620d, 0x6210, 0x6263,
+  0x625b, 0x6258, 0x6536, 0x65e9, 0x65e8, 0x65ec, 0x65ed, 0x66f2,
+  0x66f3, 0x6709, 0x673d, 0x6734, 0x6731, 0x6735, 0x6b21, 0x6b64,
+  0x6b7b, 0x6c16, 0x6c5d, 0x6c57, 0x6c59, 0x6c5f, 0x6c60, 0x6c50,
+  0x6c55, 0x6c61, 0x6c5b, 0x6c4d, 0x6c4e, 0x7070, 0x725f, 0x725d,
+  0x767e, 0x7af9, 0x7c73, 0x7cf8, 0x7f36, 0x7f8a, 0x7fbd, 0x8001,
+  0x8003, 0x800c, 0x8012, 0x8033, 0x807f, 0x8089, 0x808b, 0x808c,
+  0x81e3, 0x81ea, 0x81f3, 0x81fc, 0x820c, 0x821b, 0x821f, 0x826e,
+  0x8272, 0x827e, 0x866b, 0x8840, 0x884c, 0x8863, 0x897f, 0x9621,
+  0x4e32, 0x4ea8, 0x4f4d, 0x4f4f, 0x4f47, 0x4f57, 0x4f5e, 0x4f34,
+  0x4f5b, 0x4f55, 0x4f30, 0x4f50, 0x4f51, 0x4f3d, 0x4f3a, 0x4f38,
+  0x4f43, 0x4f54, 0x4f3c, 0x4f46, 0x4f63,
+  /* 0xa7 */
+  0x4f5c, 0x4f60, 0x4f2f, 0x4f4e, 0x4f36, 0x4f59, 0x4f5d, 0x4f48,
+  0x4f5a, 0x514c, 0x514b, 0x514d, 0x5175, 0x51b6, 0x51b7, 0x5225,
+  0x5224, 0x5229, 0x522a, 0x5228, 0x52ab, 0x52a9, 0x52aa, 0x52ac,
+  0x5323, 0x5373, 0x5375, 0x541d, 0x542d, 0x541e, 0x543e, 0x5426,
+  0x544e, 0x5427, 0x5446, 0x5443, 0x5433, 0x5448, 0x5442, 0x541b,
+  0x5429, 0x544a, 0x5439, 0x543b, 0x5438, 0x542e, 0x5435, 0x5436,
+  0x5420, 0x543c, 0x5440, 0x5431, 0x542b, 0x541f, 0x542c, 0x56ea,
+  0x56f0, 0x56e4, 0x56eb, 0x574a, 0x5751, 0x5740, 0x574d, 0x5747,
+  0x574e, 0x573e, 0x5750, 0x574f, 0x573b, 0x58ef, 0x593e, 0x599d,
+  0x5992, 0x59a8, 0x599e, 0x59a3, 0x5999, 0x5996, 0x598d, 0x59a4,
+  0x5993, 0x598a, 0x59a5, 0x5b5d, 0x5b5c, 0x5b5a, 0x5b5b, 0x5b8c,
+  0x5b8b, 0x5b8f, 0x5c2c, 0x5c40, 0x5c41, 0x5c3f, 0x5c3e, 0x5c90,
+  0x5c91, 0x5c94, 0x5c8c, 0x5deb, 0x5e0c, 0x5e8f, 0x5e87, 0x5e8a,
+  0x5ef7, 0x5f04, 0x5f1f, 0x5f64, 0x5f62, 0x5f77, 0x5f79, 0x5fd8,
+  0x5fcc, 0x5fd7, 0x5fcd, 0x5ff1, 0x5feb, 0x5ff8, 0x5fea, 0x6212,
+  0x6211, 0x6284, 0x6297, 0x6296, 0x6280, 0x6276, 0x6289, 0x626d,
+  0x628a, 0x627c, 0x627e, 0x6279, 0x6273, 0x6292, 0x626f, 0x6298,
+  0x626e, 0x6295, 0x6293, 0x6291, 0x6286, 0x6539, 0x653b, 0x6538,
+  0x65f1, 0x66f4, 0x675f, 0x674e, 0x674f, 0x6750, 0x6751, 0x675c,
+  0x6756, 0x675e, 0x6749, 0x6746, 0x6760,
+  /* 0xa8 */
+  0x6753, 0x6757, 0x6b65, 0x6bcf, 0x6c42, 0x6c5e, 0x6c99, 0x6c81,
+  0x6c88, 0x6c89, 0x6c85, 0x6c9b, 0x6c6a, 0x6c7a, 0x6c90, 0x6c70,
+  0x6c8c, 0x6c68, 0x6c96, 0x6c92, 0x6c7d, 0x6c83, 0x6c72, 0x6c7e,
+  0x6c74, 0x6c86, 0x6c76, 0x6c8d, 0x6c94, 0x6c98, 0x6c82, 0x7076,
+  0x707c, 0x707d, 0x7078, 0x7262, 0x7261, 0x7260, 0x72c4, 0x72c2,
+  0x7396, 0x752c, 0x752b, 0x7537, 0x7538, 0x7682, 0x76ef, 0x77e3,
+  0x79c1, 0x79c0, 0x79bf, 0x7a76, 0x7cfb, 0x7f55, 0x8096, 0x8093,
+  0x809d, 0x8098, 0x809b, 0x809a, 0x80b2, 0x826f, 0x8292, 0x828b,
+  0x828d, 0x898b, 0x89d2, 0x8a00, 0x8c37, 0x8c46, 0x8c55, 0x8c9d,
+  0x8d64, 0x8d70, 0x8db3, 0x8eab, 0x8eca, 0x8f9b, 0x8fb0, 0x8fc2,
+  0x8fc6, 0x8fc5, 0x8fc4, 0x5de1, 0x9091, 0x90a2, 0x90aa, 0x90a6,
+  0x90a3, 0x9149, 0x91c6, 0x91cc, 0x9632, 0x962e, 0x9631, 0x962a,
+  0x962c, 0x4e26, 0x4e56, 0x4e73, 0x4e8b, 0x4e9b, 0x4e9e, 0x4eab,
+  0x4eac, 0x4f6f, 0x4f9d, 0x4f8d, 0x4f73, 0x4f7f, 0x4f6c, 0x4f9b,
+  0x4f8b, 0x4f86, 0x4f83, 0x4f70, 0x4f75, 0x4f88, 0x4f69, 0x4f7b,
+  0x4f96, 0x4f7e, 0x4f8f, 0x4f91, 0x4f7a, 0x5154, 0x5152, 0x5155,
+  0x5169, 0x5177, 0x5176, 0x5178, 0x51bd, 0x51fd, 0x523b, 0x5238,
+  0x5237, 0x523a, 0x5230, 0x522e, 0x5236, 0x5241, 0x52be, 0x52bb,
+  0x5352, 0x5354, 0x5353, 0x5351, 0x5366, 0x5377, 0x5378, 0x5379,
+  0x53d6, 0x53d4, 0x53d7, 0x5473, 0x5475,
+  /* 0xa9 */
+  0x5496, 0x5478, 0x5495, 0x5480, 0x547b, 0x5477, 0x5484, 0x5492,
+  0x5486, 0x547c, 0x5490, 0x5471, 0x5476, 0x548c, 0x549a, 0x5462,
+  0x5468, 0x548b, 0x547d, 0x548e, 0x56fa, 0x5783, 0x5777, 0x576a,
+  0x5769, 0x5761, 0x5766, 0x5764, 0x577c, 0x591c, 0x5949, 0x5947,
+  0x5948, 0x5944, 0x5954, 0x59be, 0x59bb, 0x59d4, 0x59b9, 0x59ae,
+  0x59d1, 0x59c6, 0x59d0, 0x59cd, 0x59cb, 0x59d3, 0x59ca, 0x59af,
+  0x59b3, 0x59d2, 0x59c5, 0x5b5f, 0x5b64, 0x5b63, 0x5b97, 0x5b9a,
+  0x5b98, 0x5b9c, 0x5b99, 0x5b9b, 0x5c1a, 0x5c48, 0x5c45, 0x5c46,
+  0x5cb7, 0x5ca1, 0x5cb8, 0x5ca9, 0x5cab, 0x5cb1, 0x5cb3, 0x5e18,
+  0x5e1a, 0x5e16, 0x5e15, 0x5e1b, 0x5e11, 0x5e78, 0x5e9a, 0x5e97,
+  0x5e9c, 0x5e95, 0x5e96, 0x5ef6, 0x5f26, 0x5f27, 0x5f29, 0x5f80,
+  0x5f81, 0x5f7f, 0x5f7c, 0x5fdd, 0x5fe0, 0x5ffd, 0x5ff5, 0x5fff,
+  0x600f, 0x6014, 0x602f, 0x6035, 0x6016, 0x602a, 0x6015, 0x6021,
+  0x6027, 0x6029, 0x602b, 0x601b, 0x6216, 0x6215, 0x623f, 0x623e,
+  0x6240, 0x627f, 0x62c9, 0x62cc, 0x62c4, 0x62bf, 0x62c2, 0x62b9,
+  0x62d2, 0x62db, 0x62ab, 0x62d3, 0x62d4, 0x62cb, 0x62c8, 0x62a8,
+  0x62bd, 0x62bc, 0x62d0, 0x62d9, 0x62c7, 0x62cd, 0x62b5, 0x62da,
+  0x62b1, 0x62d8, 0x62d6, 0x62d7, 0x62c6, 0x62ac, 0x62ce, 0x653e,
+  0x65a7, 0x65bc, 0x65fa, 0x6614, 0x6613, 0x660c, 0x6606, 0x6602,
+  0x660e, 0x6600, 0x660f, 0x6615, 0x660a,
+  /* 0xaa */
+  0x6607, 0x670d, 0x670b, 0x676d, 0x678b, 0x6795, 0x6771, 0x679c,
+  0x6773, 0x6777, 0x6787, 0x679d, 0x6797, 0x676f, 0x6770, 0x677f,
+  0x6789, 0x677e, 0x6790, 0x6775, 0x679a, 0x6793, 0x677c, 0x676a,
+  0x6772, 0x6b23, 0x6b66, 0x6b67, 0x6b7f, 0x6c13, 0x6c1b, 0x6ce3,
+  0x6ce8, 0x6cf3, 0x6cb1, 0x6ccc, 0x6ce5, 0x6cb3, 0x6cbd, 0x6cbe,
+  0x6cbc, 0x6ce2, 0x6cab, 0x6cd5, 0x6cd3, 0x6cb8, 0x6cc4, 0x6cb9,
+  0x6cc1, 0x6cae, 0x6cd7, 0x6cc5, 0x6cf1, 0x6cbf, 0x6cbb, 0x6ce1,
+  0x6cdb, 0x6cca, 0x6cac, 0x6cef, 0x6cdc, 0x6cd6, 0x6ce0, 0x7095,
+  0x708e, 0x7092, 0x708a, 0x7099, 0x722c, 0x722d, 0x7238, 0x7248,
+  0x7267, 0x7269, 0x72c0, 0x72ce, 0x72d9, 0x72d7, 0x72d0, 0x73a9,
+  0x73a8, 0x739f, 0x73ab, 0x73a5, 0x753d, 0x759d, 0x7599, 0x759a,
+  0x7684, 0x76c2, 0x76f2, 0x76f4, 0x77e5, 0x77fd, 0x793e, 0x7940,
+  0x7941, 0x79c9, 0x79c8, 0x7a7a, 0x7a79, 0x7afa, 0x7cfe, 0x7f54,
+  0x7f8c, 0x7f8b, 0x8005, 0x80ba, 0x80a5, 0x80a2, 0x80b1, 0x80a1,
+  0x80ab, 0x80a9, 0x80b4, 0x80aa, 0x80af, 0x81e5, 0x81fe, 0x820d,
+  0x82b3, 0x829d, 0x8299, 0x82ad, 0x82bd, 0x829f, 0x82b9, 0x82b1,
+  0x82ac, 0x82a5, 0x82af, 0x82b8, 0x82a3, 0x82b0, 0x82be, 0x82b7,
+  0x864e, 0x8671, 0x521d, 0x8868, 0x8ecb, 0x8fce, 0x8fd4, 0x8fd1,
+  0x90b5, 0x90b8, 0x90b1, 0x90b6, 0x91c7, 0x91d1, 0x9577, 0x9580,
+  0x961c, 0x9640, 0x963f, 0x963b, 0x9644,
+  /* 0xab */
+  0x9642, 0x96b9, 0x96e8, 0x9752, 0x975e, 0x4e9f, 0x4ead, 0x4eae,
+  0x4fe1, 0x4fb5, 0x4faf, 0x4fbf, 0x4fe0, 0x4fd1, 0x4fcf, 0x4fdd,
+  0x4fc3, 0x4fb6, 0x4fd8, 0x4fdf, 0x4fca, 0x4fd7, 0x4fae, 0x4fd0,
+  0x4fc4, 0x4fc2, 0x4fda, 0x4fce, 0x4fde, 0x4fb7, 0x5157, 0x5192,
+  0x5191, 0x51a0, 0x524e, 0x5243, 0x524a, 0x524d, 0x524c, 0x524b,
+  0x5247, 0x52c7, 0x52c9, 0x52c3, 0x52c1, 0x530d, 0x5357, 0x537b,
+  0x539a, 0x53db, 0x54ac, 0x54c0, 0x54a8, 0x54ce, 0x54c9, 0x54b8,
+  0x54a6, 0x54b3, 0x54c7, 0x54c2, 0x54bd, 0x54aa, 0x54c1, 0x54c4,
+  0x54c8, 0x54af, 0x54ab, 0x54b1, 0x54bb, 0x54a9, 0x54a7, 0x54bf,
+  0x56ff, 0x5782, 0x578b, 0x57a0, 0x57a3, 0x57a2, 0x57ce, 0x57ae,
+  0x5793, 0x5955, 0x5951, 0x594f, 0x594e, 0x5950, 0x59dc, 0x59d8,
+  0x59ff, 0x59e3, 0x59e8, 0x5a03, 0x59e5, 0x59ea, 0x59da, 0x59e6,
+  0x5a01, 0x59fb, 0x5b69, 0x5ba3, 0x5ba6, 0x5ba4, 0x5ba2, 0x5ba5,
+  0x5c01, 0x5c4e, 0x5c4f, 0x5c4d, 0x5c4b, 0x5cd9, 0x5cd2, 0x5df7,
+  0x5e1d, 0x5e25, 0x5e1f, 0x5e7d, 0x5ea0, 0x5ea6, 0x5efa, 0x5f08,
+  0x5f2d, 0x5f65, 0x5f88, 0x5f85, 0x5f8a, 0x5f8b, 0x5f87, 0x5f8c,
+  0x5f89, 0x6012, 0x601d, 0x6020, 0x6025, 0x600e, 0x6028, 0x604d,
+  0x6070, 0x6068, 0x6062, 0x6046, 0x6043, 0x606c, 0x606b, 0x606a,
+  0x6064, 0x6241, 0x62dc, 0x6316, 0x6309, 0x62fc, 0x62ed, 0x6301,
+  0x62ee, 0x62fd, 0x6307, 0x62f1, 0x62f7,
+  /* 0xac */
+  0x62ef, 0x62ec, 0x62fe, 0x62f4, 0x6311, 0x6302, 0x653f, 0x6545,
+  0x65ab, 0x65bd, 0x65e2, 0x6625, 0x662d, 0x6620, 0x6627, 0x662f,
+  0x661f, 0x6628, 0x6631, 0x6624, 0x66f7, 0x67ff, 0x67d3, 0x67f1,
+  0x67d4, 0x67d0, 0x67ec, 0x67b6, 0x67af, 0x67f5, 0x67e9, 0x67ef,
+  0x67c4, 0x67d1, 0x67b4, 0x67da, 0x67e5, 0x67b8, 0x67cf, 0x67de,
+  0x67f3, 0x67b0, 0x67d9, 0x67e2, 0x67dd, 0x67d2, 0x6b6a, 0x6b83,
+  0x6b86, 0x6bb5, 0x6bd2, 0x6bd7, 0x6c1f, 0x6cc9, 0x6d0b, 0x6d32,
+  0x6d2a, 0x6d41, 0x6d25, 0x6d0c, 0x6d31, 0x6d1e, 0x6d17, 0x6d3b,
+  0x6d3d, 0x6d3e, 0x6d36, 0x6d1b, 0x6cf5, 0x6d39, 0x6d27, 0x6d38,
+  0x6d29, 0x6d2e, 0x6d35, 0x6d0e, 0x6d2b, 0x70ab, 0x70ba, 0x70b3,
+  0x70ac, 0x70af, 0x70ad, 0x70b8, 0x70ae, 0x70a4, 0x7230, 0x7272,
+  0x726f, 0x7274, 0x72e9, 0x72e0, 0x72e1, 0x73b7, 0x73ca, 0x73bb,
+  0x73b2, 0x73cd, 0x73c0, 0x73b3, 0x751a, 0x752d, 0x754f, 0x754c,
+  0x754e, 0x754b, 0x75ab, 0x75a4, 0x75a5, 0x75a2, 0x75a3, 0x7678,
+  0x7686, 0x7687, 0x7688, 0x76c8, 0x76c6, 0x76c3, 0x76c5, 0x7701,
+  0x76f9, 0x76f8, 0x7709, 0x770b, 0x76fe, 0x76fc, 0x7707, 0x77dc,
+  0x7802, 0x7814, 0x780c, 0x780d, 0x7946, 0x7949, 0x7948, 0x7947,
+  0x79b9, 0x79ba, 0x79d1, 0x79d2, 0x79cb, 0x7a7f, 0x7a81, 0x7aff,
+  0x7afd, 0x7c7d, 0x7d02, 0x7d05, 0x7d00, 0x7d09, 0x7d07, 0x7d04,
+  0x7d06, 0x7f38, 0x7f8e, 0x7fbf, 0x8004,
+  /* 0xad */
+  0x8010, 0x800d, 0x8011, 0x8036, 0x80d6, 0x80e5, 0x80da, 0x80c3,
+  0x80c4, 0x80cc, 0x80e1, 0x80db, 0x80ce, 0x80de, 0x80e4, 0x80dd,
+  0x81f4, 0x8222, 0x82e7, 0x8303, 0x8305, 0x82e3, 0x82db, 0x82e6,
+  0x8304, 0x82e5, 0x8302, 0x8309, 0x82d2, 0x82d7, 0x82f1, 0x8301,
+  0x82dc, 0x82d4, 0x82d1, 0x82de, 0x82d3, 0x82df, 0x82ef, 0x8306,
+  0x8650, 0x8679, 0x867b, 0x867a, 0x884d, 0x886b, 0x8981, 0x89d4,
+  0x8a08, 0x8a02, 0x8a03, 0x8c9e, 0x8ca0, 0x8d74, 0x8d73, 0x8db4,
+  0x8ecd, 0x8ecc, 0x8ff0, 0x8fe6, 0x8fe2, 0x8fea, 0x8fe5, 0x8fed,
+  0x8feb, 0x8fe4, 0x8fe8, 0x90ca, 0x90ce, 0x90c1, 0x90c3, 0x914b,
+  0x914a, 0x91cd, 0x9582, 0x9650, 0x964b, 0x964c, 0x964d, 0x9762,
+  0x9769, 0x97cb, 0x97ed, 0x97f3, 0x9801, 0x98a8, 0x98db, 0x98df,
+  0x9996, 0x9999, 0x4e58, 0x4eb3, 0x500c, 0x500d, 0x5023, 0x4fef,
+  0x5026, 0x5025, 0x4ff8, 0x5029, 0x5016, 0x5006, 0x503c, 0x501f,
+  0x501a, 0x5012, 0x5011, 0x4ffa, 0x5000, 0x5014, 0x5028, 0x4ff1,
+  0x5021, 0x500b, 0x5019, 0x5018, 0x4ff3, 0x4fee, 0x502d, 0x502a,
+  0x4ffe, 0x502b, 0x5009, 0x517c, 0x51a4, 0x51a5, 0x51a2, 0x51cd,
+  0x51cc, 0x51c6, 0x51cb, 0x5256, 0x525c, 0x5254, 0x525b, 0x525d,
+  0x532a, 0x537f, 0x539f, 0x539d, 0x53df, 0x54e8, 0x5510, 0x5501,
+  0x5537, 0x54fc, 0x54e5, 0x54f2, 0x5506, 0x54fa, 0x5514, 0x54e9,
+  0x54ed, 0x54e1, 0x5509, 0x54ee, 0x54ea,
+  /* 0xae */
+  0x54e6, 0x5527, 0x5507, 0x54fd, 0x550f, 0x5703, 0x5704, 0x57c2,
+  0x57d4, 0x57cb, 0x57c3, 0x5809, 0x590f, 0x5957, 0x5958, 0x595a,
+  0x5a11, 0x5a18, 0x5a1c, 0x5a1f, 0x5a1b, 0x5a13, 0x59ec, 0x5a20,
+  0x5a23, 0x5a29, 0x5a25, 0x5a0c, 0x5a09, 0x5b6b, 0x5c58, 0x5bb0,
+  0x5bb3, 0x5bb6, 0x5bb4, 0x5bae, 0x5bb5, 0x5bb9, 0x5bb8, 0x5c04,
+  0x5c51, 0x5c55, 0x5c50, 0x5ced, 0x5cfd, 0x5cfb, 0x5cea, 0x5ce8,
+  0x5cf0, 0x5cf6, 0x5d01, 0x5cf4, 0x5dee, 0x5e2d, 0x5e2b, 0x5eab,
+  0x5ead, 0x5ea7, 0x5f31, 0x5f92, 0x5f91, 0x5f90, 0x6059, 0x6063,
+  0x6065, 0x6050, 0x6055, 0x606d, 0x6069, 0x606f, 0x6084, 0x609f,
+  0x609a, 0x608d, 0x6094, 0x608c, 0x6085, 0x6096, 0x6247, 0x62f3,
+  0x6308, 0x62ff, 0x634e, 0x633e, 0x632f, 0x6355, 0x6342, 0x6346,
+  0x634f, 0x6349, 0x633a, 0x6350, 0x633d, 0x632a, 0x632b, 0x6328,
+  0x634d, 0x634c, 0x6548, 0x6549, 0x6599, 0x65c1, 0x65c5, 0x6642,
+  0x6649, 0x664f, 0x6643, 0x6652, 0x664c, 0x6645, 0x6641, 0x66f8,
+  0x6714, 0x6715, 0x6717, 0x6821, 0x6838, 0x6848, 0x6846, 0x6853,
+  0x6839, 0x6842, 0x6854, 0x6829, 0x68b3, 0x6817, 0x684c, 0x6851,
+  0x683d, 0x67f4, 0x6850, 0x6840, 0x683c, 0x6843, 0x682a, 0x6845,
+  0x6813, 0x6818, 0x6841, 0x6b8a, 0x6b89, 0x6bb7, 0x6c23, 0x6c27,
+  0x6c28, 0x6c26, 0x6c24, 0x6cf0, 0x6d6a, 0x6d95, 0x6d88, 0x6d87,
+  0x6d66, 0x6d78, 0x6d77, 0x6d59, 0x6d93,
+  /* 0xaf */
+  0x6d6c, 0x6d89, 0x6d6e, 0x6d5a, 0x6d74, 0x6d69, 0x6d8c, 0x6d8a,
+  0x6d79, 0x6d85, 0x6d65, 0x6d94, 0x70ca, 0x70d8, 0x70e4, 0x70d9,
+  0x70c8, 0x70cf, 0x7239, 0x7279, 0x72fc, 0x72f9, 0x72fd, 0x72f8,
+  0x72f7, 0x7386, 0x73ed, 0x7409, 0x73ee, 0x73e0, 0x73ea, 0x73de,
+  0x7554, 0x755d, 0x755c, 0x755a, 0x7559, 0x75be, 0x75c5, 0x75c7,
+  0x75b2, 0x75b3, 0x75bd, 0x75bc, 0x75b9, 0x75c2, 0x75b8, 0x768b,
+  0x76b0, 0x76ca, 0x76cd, 0x76ce, 0x7729, 0x771f, 0x7720, 0x7728,
+  0x77e9, 0x7830, 0x7827, 0x7838, 0x781d, 0x7834, 0x7837, 0x7825,
+  0x782d, 0x7820, 0x781f, 0x7832, 0x7955, 0x7950, 0x7960, 0x795f,
+  0x7956, 0x795e, 0x795d, 0x7957, 0x795a, 0x79e4, 0x79e3, 0x79e7,
+  0x79df, 0x79e6, 0x79e9, 0x79d8, 0x7a84, 0x7a88, 0x7ad9, 0x7b06,
+  0x7b11, 0x7c89, 0x7d21, 0x7d17, 0x7d0b, 0x7d0a, 0x7d20, 0x7d22,
+  0x7d14, 0x7d10, 0x7d15, 0x7d1a, 0x7d1c, 0x7d0d, 0x7d19, 0x7d1b,
+  0x7f3a, 0x7f5f, 0x7f94, 0x7fc5, 0x7fc1, 0x8006, 0x8018, 0x8015,
+  0x8019, 0x8017, 0x803d, 0x803f, 0x80f1, 0x8102, 0x80f0, 0x8105,
+  0x80ed, 0x80f4, 0x8106, 0x80f8, 0x80f3, 0x8108, 0x80fd, 0x810a,
+  0x80fc, 0x80ef, 0x81ed, 0x81ec, 0x8200, 0x8210, 0x822a, 0x822b,
+  0x8228, 0x822c, 0x82bb, 0x832b, 0x8352, 0x8354, 0x834a, 0x8338,
+  0x8350, 0x8349, 0x8335, 0x8334, 0x834f, 0x8332, 0x8339, 0x8336,
+  0x8317, 0x8340, 0x8331, 0x8328, 0x8343,
+  /* 0xb0 */
+  0x8654, 0x868a, 0x86aa, 0x8693, 0x86a4, 0x86a9, 0x868c, 0x86a3,
+  0x869c, 0x8870, 0x8877, 0x8881, 0x8882, 0x887d, 0x8879, 0x8a18,
+  0x8a10, 0x8a0e, 0x8a0c, 0x8a15, 0x8a0a, 0x8a17, 0x8a13, 0x8a16,
+  0x8a0f, 0x8a11, 0x8c48, 0x8c7a, 0x8c79, 0x8ca1, 0x8ca2, 0x8d77,
+  0x8eac, 0x8ed2, 0x8ed4, 0x8ecf, 0x8fb1, 0x9001, 0x9006, 0x8ff7,
+  0x9000, 0x8ffa, 0x8ff4, 0x9003, 0x8ffd, 0x9005, 0x8ff8, 0x9095,
+  0x90e1, 0x90dd, 0x90e2, 0x9152, 0x914d, 0x914c, 0x91d8, 0x91dd,
+  0x91d7, 0x91dc, 0x91d9, 0x9583, 0x9662, 0x9663, 0x9661, 0x965b,
+  0x965d, 0x9664, 0x9658, 0x965e, 0x96bb, 0x98e2, 0x99ac, 0x9aa8,
+  0x9ad8, 0x9b25, 0x9b32, 0x9b3c, 0x4e7e, 0x507a, 0x507d, 0x505c,
+  0x5047, 0x5043, 0x504c, 0x505a, 0x5049, 0x5065, 0x5076, 0x504e,
+  0x5055, 0x5075, 0x5074, 0x5077, 0x504f, 0x500f, 0x506f, 0x506d,
+  0x515c, 0x5195, 0x51f0, 0x526a, 0x526f, 0x52d2, 0x52d9, 0x52d8,
+  0x52d5, 0x5310, 0x530f, 0x5319, 0x533f, 0x5340, 0x533e, 0x53c3,
+  0x66fc, 0x5546, 0x556a, 0x5566, 0x5544, 0x555e, 0x5561, 0x5543,
+  0x554a, 0x5531, 0x5556, 0x554f, 0x5555, 0x552f, 0x5564, 0x5538,
+  0x552e, 0x555c, 0x552c, 0x5563, 0x5533, 0x5541, 0x5557, 0x5708,
+  0x570b, 0x5709, 0x57df, 0x5805, 0x580a, 0x5806, 0x57e0, 0x57e4,
+  0x57fa, 0x5802, 0x5835, 0x57f7, 0x57f9, 0x5920, 0x5962, 0x5a36,
+  0x5a41, 0x5a49, 0x5a66, 0x5a6a, 0x5a40,
+  /* 0xb1 */
+  0x5a3c, 0x5a62, 0x5a5a, 0x5a46, 0x5a4a, 0x5b70, 0x5bc7, 0x5bc5,
+  0x5bc4, 0x5bc2, 0x5bbf, 0x5bc6, 0x5c09, 0x5c08, 0x5c07, 0x5c60,
+  0x5c5c, 0x5c5d, 0x5d07, 0x5d06, 0x5d0e, 0x5d1b, 0x5d16, 0x5d22,
+  0x5d11, 0x5d29, 0x5d14, 0x5d19, 0x5d24, 0x5d27, 0x5d17, 0x5de2,
+  0x5e38, 0x5e36, 0x5e33, 0x5e37, 0x5eb7, 0x5eb8, 0x5eb6, 0x5eb5,
+  0x5ebe, 0x5f35, 0x5f37, 0x5f57, 0x5f6c, 0x5f69, 0x5f6b, 0x5f97,
+  0x5f99, 0x5f9e, 0x5f98, 0x5fa1, 0x5fa0, 0x5f9c, 0x607f, 0x60a3,
+  0x6089, 0x60a0, 0x60a8, 0x60cb, 0x60b4, 0x60e6, 0x60bd, 0x60c5,
+  0x60bb, 0x60b5, 0x60dc, 0x60bc, 0x60d8, 0x60d5, 0x60c6, 0x60df,
+  0x60b8, 0x60da, 0x60c7, 0x621a, 0x621b, 0x6248, 0x63a0, 0x63a7,
+  0x6372, 0x6396, 0x63a2, 0x63a5, 0x6377, 0x6367, 0x6398, 0x63aa,
+  0x6371, 0x63a9, 0x6389, 0x6383, 0x639b, 0x636b, 0x63a8, 0x6384,
+  0x6388, 0x6399, 0x63a1, 0x63ac, 0x6392, 0x638f, 0x6380, 0x637b,
+  0x6369, 0x6368, 0x637a, 0x655d, 0x6556, 0x6551, 0x6559, 0x6557,
+  0x555f, 0x654f, 0x6558, 0x6555, 0x6554, 0x659c, 0x659b, 0x65ac,
+  0x65cf, 0x65cb, 0x65cc, 0x65ce, 0x665d, 0x665a, 0x6664, 0x6668,
+  0x6666, 0x665e, 0x66f9, 0x52d7, 0x671b, 0x6881, 0x68af, 0x68a2,
+  0x6893, 0x68b5, 0x687f, 0x6876, 0x68b1, 0x68a7, 0x6897, 0x68b0,
+  0x6883, 0x68c4, 0x68ad, 0x6886, 0x6885, 0x6894, 0x689d, 0x68a8,
+  0x689f, 0x68a1, 0x6882, 0x6b32, 0x6bba,
+  /* 0xb2 */
+  0x6beb, 0x6bec, 0x6c2b, 0x6d8e, 0x6dbc, 0x6df3, 0x6dd9, 0x6db2,
+  0x6de1, 0x6dcc, 0x6de4, 0x6dfb, 0x6dfa, 0x6e05, 0x6dc7, 0x6dcb,
+  0x6daf, 0x6dd1, 0x6dae, 0x6dde, 0x6df9, 0x6db8, 0x6df7, 0x6df5,
+  0x6dc5, 0x6dd2, 0x6e1a, 0x6db5, 0x6dda, 0x6deb, 0x6dd8, 0x6dea,
+  0x6df1, 0x6dee, 0x6de8, 0x6dc6, 0x6dc4, 0x6daa, 0x6dec, 0x6dbf,
+  0x6de6, 0x70f9, 0x7109, 0x710a, 0x70fd, 0x70ef, 0x723d, 0x727d,
+  0x7281, 0x731c, 0x731b, 0x7316, 0x7313, 0x7319, 0x7387, 0x7405,
+  0x740a, 0x7403, 0x7406, 0x73fe, 0x740d, 0x74e0, 0x74f6, 0x74f7,
+  0x751c, 0x7522, 0x7565, 0x7566, 0x7562, 0x7570, 0x758f, 0x75d4,
+  0x75d5, 0x75b5, 0x75ca, 0x75cd, 0x768e, 0x76d4, 0x76d2, 0x76db,
+  0x7737, 0x773e, 0x773c, 0x7736, 0x7738, 0x773a, 0x786b, 0x7843,
+  0x784e, 0x7965, 0x7968, 0x796d, 0x79fb, 0x7a92, 0x7a95, 0x7b20,
+  0x7b28, 0x7b1b, 0x7b2c, 0x7b26, 0x7b19, 0x7b1e, 0x7b2e, 0x7c92,
+  0x7c97, 0x7c95, 0x7d46, 0x7d43, 0x7d71, 0x7d2e, 0x7d39, 0x7d3c,
+  0x7d40, 0x7d30, 0x7d33, 0x7d44, 0x7d2f, 0x7d42, 0x7d32, 0x7d31,
+  0x7f3d, 0x7f9e, 0x7f9a, 0x7fcc, 0x7fce, 0x7fd2, 0x801c, 0x804a,
+  0x8046, 0x812f, 0x8116, 0x8123, 0x812b, 0x8129, 0x8130, 0x8124,
+  0x8202, 0x8235, 0x8237, 0x8236, 0x8239, 0x838e, 0x839e, 0x8398,
+  0x8378, 0x83a2, 0x8396, 0x83bd, 0x83ab, 0x8392, 0x838a, 0x8393,
+  0x8389, 0x83a0, 0x8377, 0x837b, 0x837c,
+  /* 0xb3 */
+  0x8386, 0x83a7, 0x8655, 0x5f6a, 0x86c7, 0x86c0, 0x86b6, 0x86c4,
+  0x86b5, 0x86c6, 0x86cb, 0x86b1, 0x86af, 0x86c9, 0x8853, 0x889e,
+  0x8888, 0x88ab, 0x8892, 0x8896, 0x888d, 0x888b, 0x8993, 0x898f,
+  0x8a2a, 0x8a1d, 0x8a23, 0x8a25, 0x8a31, 0x8a2d, 0x8a1f, 0x8a1b,
+  0x8a22, 0x8c49, 0x8c5a, 0x8ca9, 0x8cac, 0x8cab, 0x8ca8, 0x8caa,
+  0x8ca7, 0x8d67, 0x8d66, 0x8dbe, 0x8dba, 0x8edb, 0x8edf, 0x9019,
+  0x900d, 0x901a, 0x9017, 0x9023, 0x901f, 0x901d, 0x9010, 0x9015,
+  0x901e, 0x9020, 0x900f, 0x9022, 0x9016, 0x901b, 0x9014, 0x90e8,
+  0x90ed, 0x90fd, 0x9157, 0x91ce, 0x91f5, 0x91e6, 0x91e3, 0x91e7,
+  0x91ed, 0x91e9, 0x9589, 0x966a, 0x9675, 0x9673, 0x9678, 0x9670,
+  0x9674, 0x9676, 0x9677, 0x966c, 0x96c0, 0x96ea, 0x96e9, 0x7ae0,
+  0x7adf, 0x9802, 0x9803, 0x9b5a, 0x9ce5, 0x9e75, 0x9e7f, 0x9ea5,
+  0x9ebb, 0x50a2, 0x508d, 0x5085, 0x5099, 0x5091, 0x5080, 0x5096,
+  0x5098, 0x509a, 0x6700, 0x51f1, 0x5272, 0x5274, 0x5275, 0x5269,
+  0x52de, 0x52dd, 0x52db, 0x535a, 0x53a5, 0x557b, 0x5580, 0x55a7,
+  0x557c, 0x558a, 0x559d, 0x5598, 0x5582, 0x559c, 0x55aa, 0x5594,
+  0x5587, 0x558b, 0x5583, 0x55b3, 0x55ae, 0x559f, 0x553e, 0x55b2,
+  0x559a, 0x55bb, 0x55ac, 0x55b1, 0x557e, 0x5589, 0x55ab, 0x5599,
+  0x570d, 0x582f, 0x582a, 0x5834, 0x5824, 0x5830, 0x5831, 0x5821,
+  0x581d, 0x5820, 0x58f9, 0x58fa, 0x5960,
+  /* 0xb4 */
+  0x5a77, 0x5a9a, 0x5a7f, 0x5a92, 0x5a9b, 0x5aa7, 0x5b73, 0x5b71,
+  0x5bd2, 0x5bcc, 0x5bd3, 0x5bd0, 0x5c0a, 0x5c0b, 0x5c31, 0x5d4c,
+  0x5d50, 0x5d34, 0x5d47, 0x5dfd, 0x5e45, 0x5e3d, 0x5e40, 0x5e43,
+  0x5e7e, 0x5eca, 0x5ec1, 0x5ec2, 0x5ec4, 0x5f3c, 0x5f6d, 0x5fa9,
+  0x5faa, 0x5fa8, 0x60d1, 0x60e1, 0x60b2, 0x60b6, 0x60e0, 0x611c,
+  0x6123, 0x60fa, 0x6115, 0x60f0, 0x60fb, 0x60f4, 0x6168, 0x60f1,
+  0x610e, 0x60f6, 0x6109, 0x6100, 0x6112, 0x621f, 0x6249, 0x63a3,
+  0x638c, 0x63cf, 0x63c0, 0x63e9, 0x63c9, 0x63c6, 0x63cd, 0x63d2,
+  0x63e3, 0x63d0, 0x63e1, 0x63d6, 0x63ed, 0x63ee, 0x6376, 0x63f4,
+  0x63ea, 0x63db, 0x6452, 0x63da, 0x63f9, 0x655e, 0x6566, 0x6562,
+  0x6563, 0x6591, 0x6590, 0x65af, 0x666e, 0x6670, 0x6674, 0x6676,
+  0x666f, 0x6691, 0x667a, 0x667e, 0x6677, 0x66fe, 0x66ff, 0x671f,
+  0x671d, 0x68fa, 0x68d5, 0x68e0, 0x68d8, 0x68d7, 0x6905, 0x68df,
+  0x68f5, 0x68ee, 0x68e7, 0x68f9, 0x68d2, 0x68f2, 0x68e3, 0x68cb,
+  0x68cd, 0x690d, 0x6912, 0x690e, 0x68c9, 0x68da, 0x696e, 0x68fb,
+  0x6b3e, 0x6b3a, 0x6b3d, 0x6b98, 0x6b96, 0x6bbc, 0x6bef, 0x6c2e,
+  0x6c2f, 0x6c2c, 0x6e2f, 0x6e38, 0x6e54, 0x6e21, 0x6e32, 0x6e67,
+  0x6e4a, 0x6e20, 0x6e25, 0x6e23, 0x6e1b, 0x6e5b, 0x6e58, 0x6e24,
+  0x6e56, 0x6e6e, 0x6e2d, 0x6e26, 0x6e6f, 0x6e34, 0x6e4d, 0x6e3a,
+  0x6e2c, 0x6e43, 0x6e1d, 0x6e3e, 0x6ecb,
+  /* 0xb5 */
+  0x6e89, 0x6e19, 0x6e4e, 0x6e63, 0x6e44, 0x6e72, 0x6e69, 0x6e5f,
+  0x7119, 0x711a, 0x7126, 0x7130, 0x7121, 0x7136, 0x716e, 0x711c,
+  0x724c, 0x7284, 0x7280, 0x7336, 0x7325, 0x7334, 0x7329, 0x743a,
+  0x742a, 0x7433, 0x7422, 0x7425, 0x7435, 0x7436, 0x7434, 0x742f,
+  0x741b, 0x7426, 0x7428, 0x7525, 0x7526, 0x756b, 0x756a, 0x75e2,
+  0x75db, 0x75e3, 0x75d9, 0x75d8, 0x75de, 0x75e0, 0x767b, 0x767c,
+  0x7696, 0x7693, 0x76b4, 0x76dc, 0x774f, 0x77ed, 0x785d, 0x786c,
+  0x786f, 0x7a0d, 0x7a08, 0x7a0b, 0x7a05, 0x7a00, 0x7a98, 0x7a97,
+  0x7a96, 0x7ae5, 0x7ae3, 0x7b49, 0x7b56, 0x7b46, 0x7b50, 0x7b52,
+  0x7b54, 0x7b4d, 0x7b4b, 0x7b4f, 0x7b51, 0x7c9f, 0x7ca5, 0x7d5e,
+  0x7d50, 0x7d68, 0x7d55, 0x7d2b, 0x7d6e, 0x7d72, 0x7d61, 0x7d66,
+  0x7d62, 0x7d70, 0x7d73, 0x5584, 0x7fd4, 0x7fd5, 0x800b, 0x8052,
+  0x8085, 0x8155, 0x8154, 0x814b, 0x8151, 0x814e, 0x8139, 0x8146,
+  0x813e, 0x814c, 0x8153, 0x8174, 0x8212, 0x821c, 0x83e9, 0x8403,
+  0x83f8, 0x840d, 0x83e0, 0x83c5, 0x840b, 0x83c1, 0x83ef, 0x83f1,
+  0x83f4, 0x8457, 0x840a, 0x83f0, 0x840c, 0x83cc, 0x83fd, 0x83f2,
+  0x83ca, 0x8438, 0x840e, 0x8404, 0x83dc, 0x8407, 0x83d4, 0x83df,
+  0x865b, 0x86df, 0x86d9, 0x86ed, 0x86d4, 0x86db, 0x86e4, 0x86d0,
+  0x86de, 0x8857, 0x88c1, 0x88c2, 0x88b1, 0x8983, 0x8996, 0x8a3b,
+  0x8a60, 0x8a55, 0x8a5e, 0x8a3c, 0x8a41,
+  /* 0xb6 */
+  0x8a54, 0x8a5b, 0x8a50, 0x8a46, 0x8a34, 0x8a3a, 0x8a36, 0x8a56,
+  0x8c61, 0x8c82, 0x8caf, 0x8cbc, 0x8cb3, 0x8cbd, 0x8cc1, 0x8cbb,
+  0x8cc0, 0x8cb4, 0x8cb7, 0x8cb6, 0x8cbf, 0x8cb8, 0x8d8a, 0x8d85,
+  0x8d81, 0x8dce, 0x8ddd, 0x8dcb, 0x8dda, 0x8dd1, 0x8dcc, 0x8ddb,
+  0x8dc6, 0x8efb, 0x8ef8, 0x8efc, 0x8f9c, 0x902e, 0x9035, 0x9031,
+  0x9038, 0x9032, 0x9036, 0x9102, 0x90f5, 0x9109, 0x90fe, 0x9163,
+  0x9165, 0x91cf, 0x9214, 0x9215, 0x9223, 0x9209, 0x921e, 0x920d,
+  0x9210, 0x9207, 0x9211, 0x9594, 0x958f, 0x958b, 0x9591, 0x9593,
+  0x9592, 0x958e, 0x968a, 0x968e, 0x968b, 0x967d, 0x9685, 0x9686,
+  0x968d, 0x9672, 0x9684, 0x96c1, 0x96c5, 0x96c4, 0x96c6, 0x96c7,
+  0x96ef, 0x96f2, 0x97cc, 0x9805, 0x9806, 0x9808, 0x98e7, 0x98ea,
+  0x98ef, 0x98e9, 0x98f2, 0x98ed, 0x99ae, 0x99ad, 0x9ec3, 0x9ecd,
+  0x9ed1, 0x4e82, 0x50ad, 0x50b5, 0x50b2, 0x50b3, 0x50c5, 0x50be,
+  0x50ac, 0x50b7, 0x50bb, 0x50af, 0x50c7, 0x527f, 0x5277, 0x527d,
+  0x52df, 0x52e6, 0x52e4, 0x52e2, 0x52e3, 0x532f, 0x55df, 0x55e8,
+  0x55d3, 0x55e6, 0x55ce, 0x55dc, 0x55c7, 0x55d1, 0x55e3, 0x55e4,
+  0x55ef, 0x55da, 0x55e1, 0x55c5, 0x55c6, 0x55e5, 0x55c9, 0x5712,
+  0x5713, 0x585e, 0x5851, 0x5858, 0x5857, 0x585a, 0x5854, 0x586b,
+  0x584c, 0x586d, 0x584a, 0x5862, 0x5852, 0x584b, 0x5967, 0x5ac1,
+  0x5ac9, 0x5acc, 0x5abe, 0x5abd, 0x5abc,
+  /* 0xb7 */
+  0x5ab3, 0x5ac2, 0x5ab2, 0x5d69, 0x5d6f, 0x5e4c, 0x5e79, 0x5ec9,
+  0x5ec8, 0x5f12, 0x5f59, 0x5fac, 0x5fae, 0x611a, 0x610f, 0x6148,
+  0x611f, 0x60f3, 0x611b, 0x60f9, 0x6101, 0x6108, 0x614e, 0x614c,
+  0x6144, 0x614d, 0x613e, 0x6134, 0x6127, 0x610d, 0x6106, 0x6137,
+  0x6221, 0x6222, 0x6413, 0x643e, 0x641e, 0x642a, 0x642d, 0x643d,
+  0x642c, 0x640f, 0x641c, 0x6414, 0x640d, 0x6436, 0x6416, 0x6417,
+  0x6406, 0x656c, 0x659f, 0x65b0, 0x6697, 0x6689, 0x6687, 0x6688,
+  0x6696, 0x6684, 0x6698, 0x668d, 0x6703, 0x6994, 0x696d, 0x695a,
+  0x6977, 0x6960, 0x6954, 0x6975, 0x6930, 0x6982, 0x694a, 0x6968,
+  0x696b, 0x695e, 0x6953, 0x6979, 0x6986, 0x695d, 0x6963, 0x695b,
+  0x6b47, 0x6b72, 0x6bc0, 0x6bbf, 0x6bd3, 0x6bfd, 0x6ea2, 0x6eaf,
+  0x6ed3, 0x6eb6, 0x6ec2, 0x6e90, 0x6e9d, 0x6ec7, 0x6ec5, 0x6ea5,
+  0x6e98, 0x6ebc, 0x6eba, 0x6eab, 0x6ed1, 0x6e96, 0x6e9c, 0x6ec4,
+  0x6ed4, 0x6eaa, 0x6ea7, 0x6eb4, 0x714e, 0x7159, 0x7169, 0x7164,
+  0x7149, 0x7167, 0x715c, 0x716c, 0x7166, 0x714c, 0x7165, 0x715e,
+  0x7146, 0x7168, 0x7156, 0x723a, 0x7252, 0x7337, 0x7345, 0x733f,
+  0x733e, 0x746f, 0x745a, 0x7455, 0x745f, 0x745e, 0x7441, 0x743f,
+  0x7459, 0x745b, 0x745c, 0x7576, 0x7578, 0x7600, 0x75f0, 0x7601,
+  0x75f2, 0x75f1, 0x75fa, 0x75ff, 0x75f4, 0x75f3, 0x76de, 0x76df,
+  0x775b, 0x776b, 0x7766, 0x775e, 0x7763,
+  /* 0xb8 */
+  0x7779, 0x776a, 0x776c, 0x775c, 0x7765, 0x7768, 0x7762, 0x77ee,
+  0x788e, 0x78b0, 0x7897, 0x7898, 0x788c, 0x7889, 0x787c, 0x7891,
+  0x7893, 0x787f, 0x797a, 0x797f, 0x7981, 0x842c, 0x79bd, 0x7a1c,
+  0x7a1a, 0x7a20, 0x7a14, 0x7a1f, 0x7a1e, 0x7a9f, 0x7aa0, 0x7b77,
+  0x7bc0, 0x7b60, 0x7b6e, 0x7b67, 0x7cb1, 0x7cb3, 0x7cb5, 0x7d93,
+  0x7d79, 0x7d91, 0x7d81, 0x7d8f, 0x7d5b, 0x7f6e, 0x7f69, 0x7f6a,
+  0x7f72, 0x7fa9, 0x7fa8, 0x7fa4, 0x8056, 0x8058, 0x8086, 0x8084,
+  0x8171, 0x8170, 0x8178, 0x8165, 0x816e, 0x8173, 0x816b, 0x8179,
+  0x817a, 0x8166, 0x8205, 0x8247, 0x8482, 0x8477, 0x843d, 0x8431,
+  0x8475, 0x8466, 0x846b, 0x8449, 0x846c, 0x845b, 0x843c, 0x8435,
+  0x8461, 0x8463, 0x8469, 0x846d, 0x8446, 0x865e, 0x865c, 0x865f,
+  0x86f9, 0x8713, 0x8708, 0x8707, 0x8700, 0x86fe, 0x86fb, 0x8702,
+  0x8703, 0x8706, 0x870a, 0x8859, 0x88df, 0x88d4, 0x88d9, 0x88dc,
+  0x88d8, 0x88dd, 0x88e1, 0x88ca, 0x88d5, 0x88d2, 0x899c, 0x89e3,
+  0x8a6b, 0x8a72, 0x8a73, 0x8a66, 0x8a69, 0x8a70, 0x8a87, 0x8a7c,
+  0x8a63, 0x8aa0, 0x8a71, 0x8a85, 0x8a6d, 0x8a62, 0x8a6e, 0x8a6c,
+  0x8a79, 0x8a7b, 0x8a3e, 0x8a68, 0x8c62, 0x8c8a, 0x8c89, 0x8cca,
+  0x8cc7, 0x8cc8, 0x8cc4, 0x8cb2, 0x8cc3, 0x8cc2, 0x8cc5, 0x8de1,
+  0x8ddf, 0x8de8, 0x8def, 0x8df3, 0x8dfa, 0x8dea, 0x8de4, 0x8de6,
+  0x8eb2, 0x8f03, 0x8f09, 0x8efe, 0x8f0a,
+  /* 0xb9 */
+  0x8f9f, 0x8fb2, 0x904b, 0x904a, 0x9053, 0x9042, 0x9054, 0x903c,
+  0x9055, 0x9050, 0x9047, 0x904f, 0x904e, 0x904d, 0x9051, 0x903e,
+  0x9041, 0x9112, 0x9117, 0x916c, 0x916a, 0x9169, 0x91c9, 0x9237,
+  0x9257, 0x9238, 0x923d, 0x9240, 0x923e, 0x925b, 0x924b, 0x9264,
+  0x9251, 0x9234, 0x9249, 0x924d, 0x9245, 0x9239, 0x923f, 0x925a,
+  0x9598, 0x9698, 0x9694, 0x9695, 0x96cd, 0x96cb, 0x96c9, 0x96ca,
+  0x96f7, 0x96fb, 0x96f9, 0x96f6, 0x9756, 0x9774, 0x9776, 0x9810,
+  0x9811, 0x9813, 0x980a, 0x9812, 0x980c, 0x98fc, 0x98f4, 0x98fd,
+  0x98fe, 0x99b3, 0x99b1, 0x99b4, 0x9ae1, 0x9ce9, 0x9e82, 0x9f0e,
+  0x9f13, 0x9f20, 0x50e7, 0x50ee, 0x50e5, 0x50d6, 0x50ed, 0x50da,
+  0x50d5, 0x50cf, 0x50d1, 0x50f1, 0x50ce, 0x50e9, 0x5162, 0x51f3,
+  0x5283, 0x5282, 0x5331, 0x53ad, 0x55fe, 0x5600, 0x561b, 0x5617,
+  0x55fd, 0x5614, 0x5606, 0x5609, 0x560d, 0x560e, 0x55f7, 0x5616,
+  0x561f, 0x5608, 0x5610, 0x55f6, 0x5718, 0x5716, 0x5875, 0x587e,
+  0x5883, 0x5893, 0x588a, 0x5879, 0x5885, 0x587d, 0x58fd, 0x5925,
+  0x5922, 0x5924, 0x596a, 0x5969, 0x5ae1, 0x5ae6, 0x5ae9, 0x5ad7,
+  0x5ad6, 0x5ad8, 0x5ae3, 0x5b75, 0x5bde, 0x5be7, 0x5be1, 0x5be5,
+  0x5be6, 0x5be8, 0x5be2, 0x5be4, 0x5bdf, 0x5c0d, 0x5c62, 0x5d84,
+  0x5d87, 0x5e5b, 0x5e63, 0x5e55, 0x5e57, 0x5e54, 0x5ed3, 0x5ed6,
+  0x5f0a, 0x5f46, 0x5f70, 0x5fb9, 0x6147,
+  /* 0xba */
+  0x613f, 0x614b, 0x6177, 0x6162, 0x6163, 0x615f, 0x615a, 0x6158,
+  0x6175, 0x622a, 0x6487, 0x6458, 0x6454, 0x64a4, 0x6478, 0x645f,
+  0x647a, 0x6451, 0x6467, 0x6434, 0x646d, 0x647b, 0x6572, 0x65a1,
+  0x65d7, 0x65d6, 0x66a2, 0x66a8, 0x669d, 0x699c, 0x69a8, 0x6995,
+  0x69c1, 0x69ae, 0x69d3, 0x69cb, 0x699b, 0x69b7, 0x69bb, 0x69ab,
+  0x69b4, 0x69d0, 0x69cd, 0x69ad, 0x69cc, 0x69a6, 0x69c3, 0x69a3,
+  0x6b49, 0x6b4c, 0x6c33, 0x6f33, 0x6f14, 0x6efe, 0x6f13, 0x6ef4,
+  0x6f29, 0x6f3e, 0x6f20, 0x6f2c, 0x6f0f, 0x6f02, 0x6f22, 0x6eff,
+  0x6eef, 0x6f06, 0x6f31, 0x6f38, 0x6f32, 0x6f23, 0x6f15, 0x6f2b,
+  0x6f2f, 0x6f88, 0x6f2a, 0x6eec, 0x6f01, 0x6ef2, 0x6ecc, 0x6ef7,
+  0x7194, 0x7199, 0x717d, 0x718a, 0x7184, 0x7192, 0x723e, 0x7292,
+  0x7296, 0x7344, 0x7350, 0x7464, 0x7463, 0x746a, 0x7470, 0x746d,
+  0x7504, 0x7591, 0x7627, 0x760d, 0x760b, 0x7609, 0x7613, 0x76e1,
+  0x76e3, 0x7784, 0x777d, 0x777f, 0x7761, 0x78c1, 0x789f, 0x78a7,
+  0x78b3, 0x78a9, 0x78a3, 0x798e, 0x798f, 0x798d, 0x7a2e, 0x7a31,
+  0x7aaa, 0x7aa9, 0x7aed, 0x7aef, 0x7ba1, 0x7b95, 0x7b8b, 0x7b75,
+  0x7b97, 0x7b9d, 0x7b94, 0x7b8f, 0x7bb8, 0x7b87, 0x7b84, 0x7cb9,
+  0x7cbd, 0x7cbe, 0x7dbb, 0x7db0, 0x7d9c, 0x7dbd, 0x7dbe, 0x7da0,
+  0x7dca, 0x7db4, 0x7db2, 0x7db1, 0x7dba, 0x7da2, 0x7dbf, 0x7db5,
+  0x7db8, 0x7dad, 0x7dd2, 0x7dc7, 0x7dac,
+  /* 0xbb */
+  0x7f70, 0x7fe0, 0x7fe1, 0x7fdf, 0x805e, 0x805a, 0x8087, 0x8150,
+  0x8180, 0x818f, 0x8188, 0x818a, 0x817f, 0x8182, 0x81e7, 0x81fa,
+  0x8207, 0x8214, 0x821e, 0x824b, 0x84c9, 0x84bf, 0x84c6, 0x84c4,
+  0x8499, 0x849e, 0x84b2, 0x849c, 0x84cb, 0x84b8, 0x84c0, 0x84d3,
+  0x8490, 0x84bc, 0x84d1, 0x84ca, 0x873f, 0x871c, 0x873b, 0x8722,
+  0x8725, 0x8734, 0x8718, 0x8755, 0x8737, 0x8729, 0x88f3, 0x8902,
+  0x88f4, 0x88f9, 0x88f8, 0x88fd, 0x88e8, 0x891a, 0x88ef, 0x8aa6,
+  0x8a8c, 0x8a9e, 0x8aa3, 0x8a8d, 0x8aa1, 0x8a93, 0x8aa4, 0x8aaa,
+  0x8aa5, 0x8aa8, 0x8a98, 0x8a91, 0x8a9a, 0x8aa7, 0x8c6a, 0x8c8d,
+  0x8c8c, 0x8cd3, 0x8cd1, 0x8cd2, 0x8d6b, 0x8d99, 0x8d95, 0x8dfc,
+  0x8f14, 0x8f12, 0x8f15, 0x8f13, 0x8fa3, 0x9060, 0x9058, 0x905c,
+  0x9063, 0x9059, 0x905e, 0x9062, 0x905d, 0x905b, 0x9119, 0x9118,
+  0x911e, 0x9175, 0x9178, 0x9177, 0x9174, 0x9278, 0x9280, 0x9285,
+  0x9298, 0x9296, 0x927b, 0x9293, 0x929c, 0x92a8, 0x927c, 0x9291,
+  0x95a1, 0x95a8, 0x95a9, 0x95a3, 0x95a5, 0x95a4, 0x9699, 0x969c,
+  0x969b, 0x96cc, 0x96d2, 0x9700, 0x977c, 0x9785, 0x97f6, 0x9817,
+  0x9818, 0x98af, 0x98b1, 0x9903, 0x9905, 0x990c, 0x9909, 0x99c1,
+  0x9aaf, 0x9ab0, 0x9ae6, 0x9b41, 0x9b42, 0x9cf4, 0x9cf6, 0x9cf3,
+  0x9ebc, 0x9f3b, 0x9f4a, 0x5104, 0x5100, 0x50fb, 0x50f5, 0x50f9,
+  0x5102, 0x5108, 0x5109, 0x5105, 0x51dc,
+  /* 0xbc */
+  0x5287, 0x5288, 0x5289, 0x528d, 0x528a, 0x52f0, 0x53b2, 0x562e,
+  0x563b, 0x5639, 0x5632, 0x563f, 0x5634, 0x5629, 0x5653, 0x564e,
+  0x5657, 0x5674, 0x5636, 0x562f, 0x5630, 0x5880, 0x589f, 0x589e,
+  0x58b3, 0x589c, 0x58ae, 0x58a9, 0x58a6, 0x596d, 0x5b09, 0x5afb,
+  0x5b0b, 0x5af5, 0x5b0c, 0x5b08, 0x5bee, 0x5bec, 0x5be9, 0x5beb,
+  0x5c64, 0x5c65, 0x5d9d, 0x5d94, 0x5e62, 0x5e5f, 0x5e61, 0x5ee2,
+  0x5eda, 0x5edf, 0x5edd, 0x5ee3, 0x5ee0, 0x5f48, 0x5f71, 0x5fb7,
+  0x5fb5, 0x6176, 0x6167, 0x616e, 0x615d, 0x6155, 0x6182, 0x617c,
+  0x6170, 0x616b, 0x617e, 0x61a7, 0x6190, 0x61ab, 0x618e, 0x61ac,
+  0x619a, 0x61a4, 0x6194, 0x61ae, 0x622e, 0x6469, 0x646f, 0x6479,
+  0x649e, 0x64b2, 0x6488, 0x6490, 0x64b0, 0x64a5, 0x6493, 0x6495,
+  0x64a9, 0x6492, 0x64ae, 0x64ad, 0x64ab, 0x649a, 0x64ac, 0x6499,
+  0x64a2, 0x64b3, 0x6575, 0x6577, 0x6578, 0x66ae, 0x66ab, 0x66b4,
+  0x66b1, 0x6a23, 0x6a1f, 0x69e8, 0x6a01, 0x6a1e, 0x6a19, 0x69fd,
+  0x6a21, 0x6a13, 0x6a0a, 0x69f3, 0x6a02, 0x6a05, 0x69ed, 0x6a11,
+  0x6b50, 0x6b4e, 0x6ba4, 0x6bc5, 0x6bc6, 0x6f3f, 0x6f7c, 0x6f84,
+  0x6f51, 0x6f66, 0x6f54, 0x6f86, 0x6f6d, 0x6f5b, 0x6f78, 0x6f6e,
+  0x6f8e, 0x6f7a, 0x6f70, 0x6f64, 0x6f97, 0x6f58, 0x6ed5, 0x6f6f,
+  0x6f60, 0x6f5f, 0x719f, 0x71ac, 0x71b1, 0x71a8, 0x7256, 0x729b,
+  0x734e, 0x7357, 0x7469, 0x748b, 0x7483,
+  /* 0xbd */
+  0x747e, 0x7480, 0x757f, 0x7620, 0x7629, 0x761f, 0x7624, 0x7626,
+  0x7621, 0x7622, 0x769a, 0x76ba, 0x76e4, 0x778e, 0x7787, 0x778c,
+  0x7791, 0x778b, 0x78cb, 0x78c5, 0x78ba, 0x78ca, 0x78be, 0x78d5,
+  0x78bc, 0x78d0, 0x7a3f, 0x7a3c, 0x7a40, 0x7a3d, 0x7a37, 0x7a3b,
+  0x7aaf, 0x7aae, 0x7bad, 0x7bb1, 0x7bc4, 0x7bb4, 0x7bc6, 0x7bc7,
+  0x7bc1, 0x7ba0, 0x7bcc, 0x7cca, 0x7de0, 0x7df4, 0x7def, 0x7dfb,
+  0x7dd8, 0x7dec, 0x7ddd, 0x7de8, 0x7de3, 0x7dda, 0x7dde, 0x7de9,
+  0x7d9e, 0x7dd9, 0x7df2, 0x7df9, 0x7f75, 0x7f77, 0x7faf, 0x7fe9,
+  0x8026, 0x819b, 0x819c, 0x819d, 0x81a0, 0x819a, 0x8198, 0x8517,
+  0x853d, 0x851a, 0x84ee, 0x852c, 0x852d, 0x8513, 0x8511, 0x8523,
+  0x8521, 0x8514, 0x84ec, 0x8525, 0x84ff, 0x8506, 0x8782, 0x8774,
+  0x8776, 0x8760, 0x8766, 0x8778, 0x8768, 0x8759, 0x8757, 0x874c,
+  0x8753, 0x885b, 0x885d, 0x8910, 0x8907, 0x8912, 0x8913, 0x8915,
+  0x890a, 0x8abc, 0x8ad2, 0x8ac7, 0x8ac4, 0x8a95, 0x8acb, 0x8af8,
+  0x8ab2, 0x8ac9, 0x8ac2, 0x8abf, 0x8ab0, 0x8ad6, 0x8acd, 0x8ab6,
+  0x8ab9, 0x8adb, 0x8c4c, 0x8c4e, 0x8c6c, 0x8ce0, 0x8cde, 0x8ce6,
+  0x8ce4, 0x8cec, 0x8ced, 0x8ce2, 0x8ce3, 0x8cdc, 0x8cea, 0x8ce1,
+  0x8d6d, 0x8d9f, 0x8da3, 0x8e2b, 0x8e10, 0x8e1d, 0x8e22, 0x8e0f,
+  0x8e29, 0x8e1f, 0x8e21, 0x8e1e, 0x8eba, 0x8f1d, 0x8f1b, 0x8f1f,
+  0x8f29, 0x8f26, 0x8f2a, 0x8f1c, 0x8f1e,
+  /* 0xbe */
+  0x8f25, 0x9069, 0x906e, 0x9068, 0x906d, 0x9077, 0x9130, 0x912d,
+  0x9127, 0x9131, 0x9187, 0x9189, 0x918b, 0x9183, 0x92c5, 0x92bb,
+  0x92b7, 0x92ea, 0x92ac, 0x92e4, 0x92c1, 0x92b3, 0x92bc, 0x92d2,
+  0x92c7, 0x92f0, 0x92b2, 0x95ad, 0x95b1, 0x9704, 0x9706, 0x9707,
+  0x9709, 0x9760, 0x978d, 0x978b, 0x978f, 0x9821, 0x982b, 0x981c,
+  0x98b3, 0x990a, 0x9913, 0x9912, 0x9918, 0x99dd, 0x99d0, 0x99df,
+  0x99db, 0x99d1, 0x99d5, 0x99d2, 0x99d9, 0x9ab7, 0x9aee, 0x9aef,
+  0x9b27, 0x9b45, 0x9b44, 0x9b77, 0x9b6f, 0x9d06, 0x9d09, 0x9d03,
+  0x9ea9, 0x9ebe, 0x9ece, 0x58a8, 0x9f52, 0x5112, 0x5118, 0x5114,
+  0x5110, 0x5115, 0x5180, 0x51aa, 0x51dd, 0x5291, 0x5293, 0x52f3,
+  0x5659, 0x566b, 0x5679, 0x5669, 0x5664, 0x5678, 0x566a, 0x5668,
+  0x5665, 0x5671, 0x566f, 0x566c, 0x5662, 0x5676, 0x58c1, 0x58be,
+  0x58c7, 0x58c5, 0x596e, 0x5b1d, 0x5b34, 0x5b78, 0x5bf0, 0x5c0e,
+  0x5f4a, 0x61b2, 0x6191, 0x61a9, 0x618a, 0x61cd, 0x61b6, 0x61be,
+  0x61ca, 0x61c8, 0x6230, 0x64c5, 0x64c1, 0x64cb, 0x64bb, 0x64bc,
+  0x64da, 0x64c4, 0x64c7, 0x64c2, 0x64cd, 0x64bf, 0x64d2, 0x64d4,
+  0x64be, 0x6574, 0x66c6, 0x66c9, 0x66b9, 0x66c4, 0x66c7, 0x66b8,
+  0x6a3d, 0x6a38, 0x6a3a, 0x6a59, 0x6a6b, 0x6a58, 0x6a39, 0x6a44,
+  0x6a62, 0x6a61, 0x6a4b, 0x6a47, 0x6a35, 0x6a5f, 0x6a48, 0x6b59,
+  0x6b77, 0x6c05, 0x6fc2, 0x6fb1, 0x6fa1,
+  /* 0xbf */
+  0x6fc3, 0x6fa4, 0x6fc1, 0x6fa7, 0x6fb3, 0x6fc0, 0x6fb9, 0x6fb6,
+  0x6fa6, 0x6fa0, 0x6fb4, 0x71be, 0x71c9, 0x71d0, 0x71d2, 0x71c8,
+  0x71d5, 0x71b9, 0x71ce, 0x71d9, 0x71dc, 0x71c3, 0x71c4, 0x7368,
+  0x749c, 0x74a3, 0x7498, 0x749f, 0x749e, 0x74e2, 0x750c, 0x750d,
+  0x7634, 0x7638, 0x763a, 0x76e7, 0x76e5, 0x77a0, 0x779e, 0x779f,
+  0x77a5, 0x78e8, 0x78da, 0x78ec, 0x78e7, 0x79a6, 0x7a4d, 0x7a4e,
+  0x7a46, 0x7a4c, 0x7a4b, 0x7aba, 0x7bd9, 0x7c11, 0x7bc9, 0x7be4,
+  0x7bdb, 0x7be1, 0x7be9, 0x7be6, 0x7cd5, 0x7cd6, 0x7e0a, 0x7e11,
+  0x7e08, 0x7e1b, 0x7e23, 0x7e1e, 0x7e1d, 0x7e09, 0x7e10, 0x7f79,
+  0x7fb2, 0x7ff0, 0x7ff1, 0x7fee, 0x8028, 0x81b3, 0x81a9, 0x81a8,
+  0x81fb, 0x8208, 0x8258, 0x8259, 0x854a, 0x8559, 0x8548, 0x8568,
+  0x8569, 0x8543, 0x8549, 0x856d, 0x856a, 0x855e, 0x8783, 0x879f,
+  0x879e, 0x87a2, 0x878d, 0x8861, 0x892a, 0x8932, 0x8925, 0x892b,
+  0x8921, 0x89aa, 0x89a6, 0x8ae6, 0x8afa, 0x8aeb, 0x8af1, 0x8b00,
+  0x8adc, 0x8ae7, 0x8aee, 0x8afe, 0x8b01, 0x8b02, 0x8af7, 0x8aed,
+  0x8af3, 0x8af6, 0x8afc, 0x8c6b, 0x8c6d, 0x8c93, 0x8cf4, 0x8e44,
+  0x8e31, 0x8e34, 0x8e42, 0x8e39, 0x8e35, 0x8f3b, 0x8f2f, 0x8f38,
+  0x8f33, 0x8fa8, 0x8fa6, 0x9075, 0x9074, 0x9078, 0x9072, 0x907c,
+  0x907a, 0x9134, 0x9192, 0x9320, 0x9336, 0x92f8, 0x9333, 0x932f,
+  0x9322, 0x92fc, 0x932b, 0x9304, 0x931a,
+  /* 0xc0 */
+  0x9310, 0x9326, 0x9321, 0x9315, 0x932e, 0x9319, 0x95bb, 0x96a7,
+  0x96a8, 0x96aa, 0x96d5, 0x970e, 0x9711, 0x9716, 0x970d, 0x9713,
+  0x970f, 0x975b, 0x975c, 0x9766, 0x9798, 0x9830, 0x9838, 0x983b,
+  0x9837, 0x982d, 0x9839, 0x9824, 0x9910, 0x9928, 0x991e, 0x991b,
+  0x9921, 0x991a, 0x99ed, 0x99e2, 0x99f1, 0x9ab8, 0x9abc, 0x9afb,
+  0x9aed, 0x9b28, 0x9b91, 0x9d15, 0x9d23, 0x9d26, 0x9d28, 0x9d12,
+  0x9d1b, 0x9ed8, 0x9ed4, 0x9f8d, 0x9f9c, 0x512a, 0x511f, 0x5121,
+  0x5132, 0x52f5, 0x568e, 0x5680, 0x5690, 0x5685, 0x5687, 0x568f,
+  0x58d5, 0x58d3, 0x58d1, 0x58ce, 0x5b30, 0x5b2a, 0x5b24, 0x5b7a,
+  0x5c37, 0x5c68, 0x5dbc, 0x5dba, 0x5dbd, 0x5db8, 0x5e6b, 0x5f4c,
+  0x5fbd, 0x61c9, 0x61c2, 0x61c7, 0x61e6, 0x61cb, 0x6232, 0x6234,
+  0x64ce, 0x64ca, 0x64d8, 0x64e0, 0x64f0, 0x64e6, 0x64ec, 0x64f1,
+  0x64e2, 0x64ed, 0x6582, 0x6583, 0x66d9, 0x66d6, 0x6a80, 0x6a94,
+  0x6a84, 0x6aa2, 0x6a9c, 0x6adb, 0x6aa3, 0x6a7e, 0x6a97, 0x6a90,
+  0x6aa0, 0x6b5c, 0x6bae, 0x6bda, 0x6c08, 0x6fd8, 0x6ff1, 0x6fdf,
+  0x6fe0, 0x6fdb, 0x6fe4, 0x6feb, 0x6fef, 0x6f80, 0x6fec, 0x6fe1,
+  0x6fe9, 0x6fd5, 0x6fee, 0x6ff0, 0x71e7, 0x71df, 0x71ee, 0x71e6,
+  0x71e5, 0x71ed, 0x71ec, 0x71f4, 0x71e0, 0x7235, 0x7246, 0x7370,
+  0x7372, 0x74a9, 0x74b0, 0x74a6, 0x74a8, 0x7646, 0x7642, 0x764c,
+  0x76ea, 0x77b3, 0x77aa, 0x77b0, 0x77ac,
+  /* 0xc1 */
+  0x77a7, 0x77ad, 0x77ef, 0x78f7, 0x78fa, 0x78f4, 0x78ef, 0x7901,
+  0x79a7, 0x79aa, 0x7a57, 0x7abf, 0x7c07, 0x7c0d, 0x7bfe, 0x7bf7,
+  0x7c0c, 0x7be0, 0x7ce0, 0x7cdc, 0x7cde, 0x7ce2, 0x7cdf, 0x7cd9,
+  0x7cdd, 0x7e2e, 0x7e3e, 0x7e46, 0x7e37, 0x7e32, 0x7e43, 0x7e2b,
+  0x7e3d, 0x7e31, 0x7e45, 0x7e41, 0x7e34, 0x7e39, 0x7e48, 0x7e35,
+  0x7e3f, 0x7e2f, 0x7f44, 0x7ff3, 0x7ffc, 0x8071, 0x8072, 0x8070,
+  0x806f, 0x8073, 0x81c6, 0x81c3, 0x81ba, 0x81c2, 0x81c0, 0x81bf,
+  0x81bd, 0x81c9, 0x81be, 0x81e8, 0x8209, 0x8271, 0x85aa, 0x8584,
+  0x857e, 0x859c, 0x8591, 0x8594, 0x85af, 0x859b, 0x8587, 0x85a8,
+  0x858a, 0x8667, 0x87c0, 0x87d1, 0x87b3, 0x87d2, 0x87c6, 0x87ab,
+  0x87bb, 0x87ba, 0x87c8, 0x87cb, 0x893b, 0x8936, 0x8944, 0x8938,
+  0x893d, 0x89ac, 0x8b0e, 0x8b17, 0x8b19, 0x8b1b, 0x8b0a, 0x8b20,
+  0x8b1d, 0x8b04, 0x8b10, 0x8c41, 0x8c3f, 0x8c73, 0x8cfa, 0x8cfd,
+  0x8cfc, 0x8cf8, 0x8cfb, 0x8da8, 0x8e49, 0x8e4b, 0x8e48, 0x8e4a,
+  0x8f44, 0x8f3e, 0x8f42, 0x8f45, 0x8f3f, 0x907f, 0x907d, 0x9084,
+  0x9081, 0x9082, 0x9080, 0x9139, 0x91a3, 0x919e, 0x919c, 0x934d,
+  0x9382, 0x9328, 0x9375, 0x934a, 0x9365, 0x934b, 0x9318, 0x937e,
+  0x936c, 0x935b, 0x9370, 0x935a, 0x9354, 0x95ca, 0x95cb, 0x95cc,
+  0x95c8, 0x95c6, 0x96b1, 0x96b8, 0x96d6, 0x971c, 0x971e, 0x97a0,
+  0x97d3, 0x9846, 0x98b6, 0x9935, 0x9a01,
+  /* 0xc2 */
+  0x99ff, 0x9bae, 0x9bab, 0x9baa, 0x9bad, 0x9d3b, 0x9d3f, 0x9e8b,
+  0x9ecf, 0x9ede, 0x9edc, 0x9edd, 0x9edb, 0x9f3e, 0x9f4b, 0x53e2,
+  0x5695, 0x56ae, 0x58d9, 0x58d8, 0x5b38, 0x5f5d, 0x61e3, 0x6233,
+  0x64f4, 0x64f2, 0x64fe, 0x6506, 0x64fa, 0x64fb, 0x64f7, 0x65b7,
+  0x66dc, 0x6726, 0x6ab3, 0x6aac, 0x6ac3, 0x6abb, 0x6ab8, 0x6ac2,
+  0x6aae, 0x6aaf, 0x6b5f, 0x6b78, 0x6baf, 0x7009, 0x700b, 0x6ffe,
+  0x7006, 0x6ffa, 0x7011, 0x700f, 0x71fb, 0x71fc, 0x71fe, 0x71f8,
+  0x7377, 0x7375, 0x74a7, 0x74bf, 0x7515, 0x7656, 0x7658, 0x7652,
+  0x77bd, 0x77bf, 0x77bb, 0x77bc, 0x790e, 0x79ae, 0x7a61, 0x7a62,
+  0x7a60, 0x7ac4, 0x7ac5, 0x7c2b, 0x7c27, 0x7c2a, 0x7c1e, 0x7c23,
+  0x7c21, 0x7ce7, 0x7e54, 0x7e55, 0x7e5e, 0x7e5a, 0x7e61, 0x7e52,
+  0x7e59, 0x7f48, 0x7ff9, 0x7ffb, 0x8077, 0x8076, 0x81cd, 0x81cf,
+  0x820a, 0x85cf, 0x85a9, 0x85cd, 0x85d0, 0x85c9, 0x85b0, 0x85ba,
+  0x85b9, 0x85a6, 0x87ef, 0x87ec, 0x87f2, 0x87e0, 0x8986, 0x89b2,
+  0x89f4, 0x8b28, 0x8b39, 0x8b2c, 0x8b2b, 0x8c50, 0x8d05, 0x8e59,
+  0x8e63, 0x8e66, 0x8e64, 0x8e5f, 0x8e55, 0x8ec0, 0x8f49, 0x8f4d,
+  0x9087, 0x9083, 0x9088, 0x91ab, 0x91ac, 0x91d0, 0x9394, 0x938a,
+  0x9396, 0x93a2, 0x93b3, 0x93ae, 0x93ac, 0x93b0, 0x9398, 0x939a,
+  0x9397, 0x95d4, 0x95d6, 0x95d0, 0x95d5, 0x96e2, 0x96dc, 0x96d9,
+  0x96db, 0x96de, 0x9724, 0x97a3, 0x97a6,
+  /* 0xc3 */
+  0x97ad, 0x97f9, 0x984d, 0x984f, 0x984c, 0x984e, 0x9853, 0x98ba,
+  0x993e, 0x993f, 0x993d, 0x992e, 0x99a5, 0x9a0e, 0x9ac1, 0x9b03,
+  0x9b06, 0x9b4f, 0x9b4e, 0x9b4d, 0x9bca, 0x9bc9, 0x9bfd, 0x9bc8,
+  0x9bc0, 0x9d51, 0x9d5d, 0x9d60, 0x9ee0, 0x9f15, 0x9f2c, 0x5133,
+  0x56a5, 0x58de, 0x58df, 0x58e2, 0x5bf5, 0x9f90, 0x5eec, 0x61f2,
+  0x61f7, 0x61f6, 0x61f5, 0x6500, 0x650f, 0x66e0, 0x66dd, 0x6ae5,
+  0x6add, 0x6ada, 0x6ad3, 0x701b, 0x701f, 0x7028, 0x701a, 0x701d,
+  0x7015, 0x7018, 0x7206, 0x720d, 0x7258, 0x72a2, 0x7378, 0x737a,
+  0x74bd, 0x74ca, 0x74e3, 0x7587, 0x7586, 0x765f, 0x7661, 0x77c7,
+  0x7919, 0x79b1, 0x7a6b, 0x7a69, 0x7c3e, 0x7c3f, 0x7c38, 0x7c3d,
+  0x7c37, 0x7c40, 0x7e6b, 0x7e6d, 0x7e79, 0x7e69, 0x7e6a, 0x7f85,
+  0x7e73, 0x7fb6, 0x7fb9, 0x7fb8, 0x81d8, 0x85e9, 0x85dd, 0x85ea,
+  0x85d5, 0x85e4, 0x85e5, 0x85f7, 0x87fb, 0x8805, 0x880d, 0x87f9,
+  0x87fe, 0x8960, 0x895f, 0x8956, 0x895e, 0x8b41, 0x8b5c, 0x8b58,
+  0x8b49, 0x8b5a, 0x8b4e, 0x8b4f, 0x8b46, 0x8b59, 0x8d08, 0x8d0a,
+  0x8e7c, 0x8e72, 0x8e87, 0x8e76, 0x8e6c, 0x8e7a, 0x8e74, 0x8f54,
+  0x8f4e, 0x8fad, 0x908a, 0x908b, 0x91b1, 0x91ae, 0x93e1, 0x93d1,
+  0x93df, 0x93c3, 0x93c8, 0x93dc, 0x93dd, 0x93d6, 0x93e2, 0x93cd,
+  0x93d8, 0x93e4, 0x93d7, 0x93e8, 0x95dc, 0x96b4, 0x96e3, 0x972a,
+  0x9727, 0x9761, 0x97dc, 0x97fb, 0x985e,
+  /* 0xc4 */
+  0x9858, 0x985b, 0x98bc, 0x9945, 0x9949, 0x9a16, 0x9a19, 0x9b0d,
+  0x9be8, 0x9be7, 0x9bd6, 0x9bdb, 0x9d89, 0x9d61, 0x9d72, 0x9d6a,
+  0x9d6c, 0x9e92, 0x9e97, 0x9e93, 0x9eb4, 0x52f8, 0x56a8, 0x56b7,
+  0x56b6, 0x56b4, 0x56bc, 0x58e4, 0x5b40, 0x5b43, 0x5b7d, 0x5bf6,
+  0x5dc9, 0x61f8, 0x61fa, 0x6518, 0x6514, 0x6519, 0x66e6, 0x6727,
+  0x6aec, 0x703e, 0x7030, 0x7032, 0x7210, 0x737b, 0x74cf, 0x7662,
+  0x7665, 0x7926, 0x792a, 0x792c, 0x792b, 0x7ac7, 0x7af6, 0x7c4c,
+  0x7c43, 0x7c4d, 0x7cef, 0x7cf0, 0x8fae, 0x7e7d, 0x7e7c, 0x7e82,
+  0x7f4c, 0x8000, 0x81da, 0x8266, 0x85fb, 0x85f9, 0x8611, 0x85fa,
+  0x8606, 0x860b, 0x8607, 0x860a, 0x8814, 0x8815, 0x8964, 0x89ba,
+  0x89f8, 0x8b70, 0x8b6c, 0x8b66, 0x8b6f, 0x8b5f, 0x8b6b, 0x8d0f,
+  0x8d0d, 0x8e89, 0x8e81, 0x8e85, 0x8e82, 0x91b4, 0x91cb, 0x9418,
+  0x9403, 0x93fd, 0x95e1, 0x9730, 0x98c4, 0x9952, 0x9951, 0x99a8,
+  0x9a2b, 0x9a30, 0x9a37, 0x9a35, 0x9c13, 0x9c0d, 0x9e79, 0x9eb5,
+  0x9ee8, 0x9f2f, 0x9f5f, 0x9f63, 0x9f61, 0x5137, 0x5138, 0x56c1,
+  0x56c0, 0x56c2, 0x5914, 0x5c6c, 0x5dcd, 0x61fc, 0x61fe, 0x651d,
+  0x651c, 0x6595, 0x66e9, 0x6afb, 0x6b04, 0x6afa, 0x6bb2, 0x704c,
+  0x721b, 0x72a7, 0x74d6, 0x74d4, 0x7669, 0x77d3, 0x7c50, 0x7e8f,
+  0x7e8c, 0x7fbc, 0x8617, 0x862d, 0x861a, 0x8823, 0x8822, 0x8821,
+  0x881f, 0x896a, 0x896c, 0x89bd, 0x8b74,
+  /* 0xc5 */
+  0x8b77, 0x8b7d, 0x8d13, 0x8e8a, 0x8e8d, 0x8e8b, 0x8f5f, 0x8faf,
+  0x91ba, 0x942e, 0x9433, 0x9435, 0x943a, 0x9438, 0x9432, 0x942b,
+  0x95e2, 0x9738, 0x9739, 0x9732, 0x97ff, 0x9867, 0x9865, 0x9957,
+  0x9a45, 0x9a43, 0x9a40, 0x9a3e, 0x9acf, 0x9b54, 0x9b51, 0x9c2d,
+  0x9c25, 0x9daf, 0x9db4, 0x9dc2, 0x9db8, 0x9e9d, 0x9eef, 0x9f19,
+  0x9f5c, 0x9f66, 0x9f67, 0x513c, 0x513b, 0x56c8, 0x56ca, 0x56c9,
+  0x5b7f, 0x5dd4, 0x5dd2, 0x5f4e, 0x61ff, 0x6524, 0x6b0a, 0x6b61,
+  0x7051, 0x7058, 0x7380, 0x74e4, 0x758a, 0x766e, 0x766c, 0x79b3,
+  0x7c60, 0x7c5f, 0x807e, 0x807d, 0x81df, 0x8972, 0x896f, 0x89fc,
+  0x8b80, 0x8d16, 0x8d17, 0x8e91, 0x8e93, 0x8f61, 0x9148, 0x9444,
+  0x9451, 0x9452, 0x973d, 0x973e, 0x97c3, 0x97c1, 0x986b, 0x9955,
+  0x9a55, 0x9a4d, 0x9ad2, 0x9b1a, 0x9c49, 0x9c31, 0x9c3e, 0x9c3b,
+  0x9dd3, 0x9dd7, 0x9f34, 0x9f6c, 0x9f6a, 0x9f94, 0x56cc, 0x5dd6,
+  0x6200, 0x6523, 0x652b, 0x652a, 0x66ec, 0x6b10, 0x74da, 0x7aca,
+  0x7c64, 0x7c63, 0x7c65, 0x7e93, 0x7e96, 0x7e94, 0x81e2, 0x8638,
+  0x863f, 0x8831, 0x8b8a, 0x9090, 0x908f, 0x9463, 0x9460, 0x9464,
+  0x9768, 0x986f, 0x995c, 0x9a5a, 0x9a5b, 0x9a57, 0x9ad3, 0x9ad4,
+  0x9ad1, 0x9c54, 0x9c57, 0x9c56, 0x9de5, 0x9e9f, 0x9ef4, 0x56d1,
+  0x58e9, 0x652c, 0x705e, 0x7671, 0x7672, 0x77d7, 0x7f50, 0x7f88,
+  0x8836, 0x8839, 0x8862, 0x8b93, 0x8b92,
+  /* 0xc6 */
+  0x8b96, 0x8277, 0x8d1b, 0x91c0, 0x946a, 0x9742, 0x9748, 0x9744,
+  0x97c6, 0x9870, 0x9a5f, 0x9b22, 0x9b58, 0x9c5f, 0x9df9, 0x9dfa,
+  0x9e7c, 0x9e7d, 0x9f07, 0x9f77, 0x9f72, 0x5ef3, 0x6b16, 0x7063,
+  0x7c6c, 0x7c6e, 0x883b, 0x89c0, 0x8ea1, 0x91c1, 0x9472, 0x9470,
+  0x9871, 0x995e, 0x9ad6, 0x9b23, 0x9ecc, 0x7064, 0x77da, 0x8b9a,
+  0x9477, 0x97c9, 0x9a62, 0x9a65, 0x7e9c, 0x8b9c, 0x8eaa, 0x91c5,
+  0x947d, 0x947e, 0x947c, 0x9c77, 0x9c78, 0x9ef7, 0x8c54, 0x947f,
+  0x9e1a, 0x7228, 0x9a6a, 0x9b31, 0x9e1b, 0x9e1e, 0x7c72, 0x30fe,
+  0x309d, 0x309e, 0x3005, 0x3041, 0x3042, 0x3043, 0x3044, 0x3045,
+  0x3046, 0x3047, 0x3048, 0x3049, 0x304a, 0x304b, 0x304c, 0x304d,
+  0x304e, 0x304f, 0x3050, 0x3051, 0x3052, 0x3053, 0x3054, 0x3055,
+  0x3056, 0x3057, 0x3058, 0x3059, 0x305a, 0x305b, 0x305c, 0x305d,
+  0x305e, 0x305f, 0x3060, 0x3061, 0x3062, 0x3063, 0x3064, 0x3065,
+  0x3066, 0x3067, 0x3068, 0x3069, 0x306a, 0x306b, 0x306c, 0x306d,
+  0x306e, 0x306f, 0x3070, 0x3071, 0x3072, 0x3073, 0x3074, 0x3075,
+  0x3076, 0x3077, 0x3078, 0x3079, 0x307a, 0x307b, 0x307c, 0x307d,
+  0x307e, 0x307f, 0x3080, 0x3081, 0x3082, 0x3083, 0x3084, 0x3085,
+  0x3086, 0x3087, 0x3088, 0x3089, 0x308a, 0x308b, 0x308c, 0x308d,
+  0x308e, 0x308f, 0x3090, 0x3091, 0x3092, 0x3093, 0x30a1, 0x30a2,
+  0x30a3, 0x30a4, 0x30a5, 0x30a6, 0x30a7,
+  /* 0xc7 */
+  0x30a8, 0x30a9, 0x30aa, 0x30ab, 0x30ac, 0x30ad, 0x30ae, 0x30af,
+  0x30b0, 0x30b1, 0x30b2, 0x30b3, 0x30b4, 0x30b5, 0x30b6, 0x30b7,
+  0x30b8, 0x30b9, 0x30ba, 0x30bb, 0x30bc, 0x30bd, 0x30be, 0x30bf,
+  0x30c0, 0x30c1, 0x30c2, 0x30c3, 0x30c4, 0x30c5, 0x30c6, 0x30c7,
+  0x30c8, 0x30c9, 0x30ca, 0x30cb, 0x30cc, 0x30cd, 0x30ce, 0x30cf,
+  0x30d0, 0x30d1, 0x30d2, 0x30d3, 0x30d4, 0x30d5, 0x30d6, 0x30d7,
+  0x30d8, 0x30d9, 0x30da, 0x30db, 0x30dc, 0x30dd, 0x30de, 0x30df,
+  0x30e0, 0x30e1, 0x30e2, 0x30e3, 0x30e4, 0x30e5, 0x30e6, 0x30e7,
+  0x30e8, 0x30e9, 0x30ea, 0x30eb, 0x30ec, 0x30ed, 0x30ee, 0x30ef,
+  0x30f0, 0x30f1, 0x30f2, 0x30f3, 0x30f4, 0x30f5, 0x30f6, 0x0414,
+  0x0415, 0x0401, 0x0416, 0x0417, 0x0418, 0x0419, 0x041a, 0x041b,
+  0x041c, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427, 0x0428, 0x0429,
+  0x042a, 0x042b, 0x042c, 0x042d, 0x042e, 0x042f, 0x0430, 0x0431,
+  0x0432, 0x0433, 0x0434, 0x0435, 0x0451, 0x0436, 0x0437, 0x0438,
+  0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f, 0x0440,
+  0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447, 0x0448,
+  0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x044f, 0x2460,
+  0x2461, 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, 0x2467, 0x2468,
+  0x2469, 0x2474, 0x2475, 0x2476, 0x2477, 0x2478, 0x2479, 0x247a,
+  0x247b, 0x247c, 0x247d,
+};
+static const unsigned short big5_2uni_pagec9[7652] = {
+  /* 0xc9 */
+  0x4e42, 0x4e5c, 0x51f5, 0x531a, 0x5382, 0x4e07, 0x4e0c, 0x4e47,
+  0x4e8d, 0x56d7, 0xfa0c, 0x5c6e, 0x5f73, 0x4e0f, 0x5187, 0x4e0e,
+  0x4e2e, 0x4e93, 0x4ec2, 0x4ec9, 0x4ec8, 0x5198, 0x52fc, 0x536c,
+  0x53b9, 0x5720, 0x5903, 0x592c, 0x5c10, 0x5dff, 0x65e1, 0x6bb3,
+  0x6bcc, 0x6c14, 0x723f, 0x4e31, 0x4e3c, 0x4ee8, 0x4edc, 0x4ee9,
+  0x4ee1, 0x4edd, 0x4eda, 0x520c, 0x531c, 0x534c, 0x5722, 0x5723,
+  0x5917, 0x592f, 0x5b81, 0x5b84, 0x5c12, 0x5c3b, 0x5c74, 0x5c73,
+  0x5e04, 0x5e80, 0x5e82, 0x5fc9, 0x6209, 0x6250, 0x6c15, 0x6c36,
+  0x6c43, 0x6c3f, 0x6c3b, 0x72ae, 0x72b0, 0x738a, 0x79b8, 0x808a,
+  0x961e, 0x4f0e, 0x4f18, 0x4f2c, 0x4ef5, 0x4f14, 0x4ef1, 0x4f00,
+  0x4ef7, 0x4f08, 0x4f1d, 0x4f02, 0x4f05, 0x4f22, 0x4f13, 0x4f04,
+  0x4ef4, 0x4f12, 0x51b1, 0x5213, 0x5209, 0x5210, 0x52a6, 0x5322,
+  0x531f, 0x534d, 0x538a, 0x5407, 0x56e1, 0x56df, 0x572e, 0x572a,
+  0x5734, 0x593c, 0x5980, 0x597c, 0x5985, 0x597b, 0x597e, 0x5977,
+  0x597f, 0x5b56, 0x5c15, 0x5c25, 0x5c7c, 0x5c7a, 0x5c7b, 0x5c7e,
+  0x5ddf, 0x5e75, 0x5e84, 0x5f02, 0x5f1a, 0x5f74, 0x5fd5, 0x5fd4,
+  0x5fcf, 0x625c, 0x625e, 0x6264, 0x6261, 0x6266, 0x6262, 0x6259,
+  0x6260, 0x625a, 0x6265, 0x65ef, 0x65ee, 0x673e, 0x6739, 0x6738,
+  0x673b, 0x673a, 0x673f, 0x673c, 0x6733, 0x6c18, 0x6c46, 0x6c52,
+  0x6c5c, 0x6c4f, 0x6c4a, 0x6c54, 0x6c4b,
+  /* 0xca */
+  0x6c4c, 0x7071, 0x725e, 0x72b4, 0x72b5, 0x738e, 0x752a, 0x767f,
+  0x7a75, 0x7f51, 0x8278, 0x827c, 0x8280, 0x827d, 0x827f, 0x864d,
+  0x897e, 0x9099, 0x9097, 0x9098, 0x909b, 0x9094, 0x9622, 0x9624,
+  0x9620, 0x9623, 0x4f56, 0x4f3b, 0x4f62, 0x4f49, 0x4f53, 0x4f64,
+  0x4f3e, 0x4f67, 0x4f52, 0x4f5f, 0x4f41, 0x4f58, 0x4f2d, 0x4f33,
+  0x4f3f, 0x4f61, 0x518f, 0x51b9, 0x521c, 0x521e, 0x5221, 0x52ad,
+  0x52ae, 0x5309, 0x5363, 0x5372, 0x538e, 0x538f, 0x5430, 0x5437,
+  0x542a, 0x5454, 0x5445, 0x5419, 0x541c, 0x5425, 0x5418, 0x543d,
+  0x544f, 0x5441, 0x5428, 0x5424, 0x5447, 0x56ee, 0x56e7, 0x56e5,
+  0x5741, 0x5745, 0x574c, 0x5749, 0x574b, 0x5752, 0x5906, 0x5940,
+  0x59a6, 0x5998, 0x59a0, 0x5997, 0x598e, 0x59a2, 0x5990, 0x598f,
+  0x59a7, 0x59a1, 0x5b8e, 0x5b92, 0x5c28, 0x5c2a, 0x5c8d, 0x5c8f,
+  0x5c88, 0x5c8b, 0x5c89, 0x5c92, 0x5c8a, 0x5c86, 0x5c93, 0x5c95,
+  0x5de0, 0x5e0a, 0x5e0e, 0x5e8b, 0x5e89, 0x5e8c, 0x5e88, 0x5e8d,
+  0x5f05, 0x5f1d, 0x5f78, 0x5f76, 0x5fd2, 0x5fd1, 0x5fd0, 0x5fed,
+  0x5fe8, 0x5fee, 0x5ff3, 0x5fe1, 0x5fe4, 0x5fe3, 0x5ffa, 0x5fef,
+  0x5ff7, 0x5ffb, 0x6000, 0x5ff4, 0x623a, 0x6283, 0x628c, 0x628e,
+  0x628f, 0x6294, 0x6287, 0x6271, 0x627b, 0x627a, 0x6270, 0x6281,
+  0x6288, 0x6277, 0x627d, 0x6272, 0x6274, 0x6537, 0x65f0, 0x65f4,
+  0x65f3, 0x65f2, 0x65f5, 0x6745, 0x6747,
+  /* 0xcb */
+  0x6759, 0x6755, 0x674c, 0x6748, 0x675d, 0x674d, 0x675a, 0x674b,
+  0x6bd0, 0x6c19, 0x6c1a, 0x6c78, 0x6c67, 0x6c6b, 0x6c84, 0x6c8b,
+  0x6c8f, 0x6c71, 0x6c6f, 0x6c69, 0x6c9a, 0x6c6d, 0x6c87, 0x6c95,
+  0x6c9c, 0x6c66, 0x6c73, 0x6c65, 0x6c7b, 0x6c8e, 0x7074, 0x707a,
+  0x7263, 0x72bf, 0x72bd, 0x72c3, 0x72c6, 0x72c1, 0x72ba, 0x72c5,
+  0x7395, 0x7397, 0x7393, 0x7394, 0x7392, 0x753a, 0x7539, 0x7594,
+  0x7595, 0x7681, 0x793d, 0x8034, 0x8095, 0x8099, 0x8090, 0x8092,
+  0x809c, 0x8290, 0x828f, 0x8285, 0x828e, 0x8291, 0x8293, 0x828a,
+  0x8283, 0x8284, 0x8c78, 0x8fc9, 0x8fbf, 0x909f, 0x90a1, 0x90a5,
+  0x909e, 0x90a7, 0x90a0, 0x9630, 0x9628, 0x962f, 0x962d, 0x4e33,
+  0x4f98, 0x4f7c, 0x4f85, 0x4f7d, 0x4f80, 0x4f87, 0x4f76, 0x4f74,
+  0x4f89, 0x4f84, 0x4f77, 0x4f4c, 0x4f97, 0x4f6a, 0x4f9a, 0x4f79,
+  0x4f81, 0x4f78, 0x4f90, 0x4f9c, 0x4f94, 0x4f9e, 0x4f92, 0x4f82,
+  0x4f95, 0x4f6b, 0x4f6e, 0x519e, 0x51bc, 0x51be, 0x5235, 0x5232,
+  0x5233, 0x5246, 0x5231, 0x52bc, 0x530a, 0x530b, 0x533c, 0x5392,
+  0x5394, 0x5487, 0x547f, 0x5481, 0x5491, 0x5482, 0x5488, 0x546b,
+  0x547a, 0x547e, 0x5465, 0x546c, 0x5474, 0x5466, 0x548d, 0x546f,
+  0x5461, 0x5460, 0x5498, 0x5463, 0x5467, 0x5464, 0x56f7, 0x56f9,
+  0x576f, 0x5772, 0x576d, 0x576b, 0x5771, 0x5770, 0x5776, 0x5780,
+  0x5775, 0x577b, 0x5773, 0x5774, 0x5762,
+  /* 0xcc */
+  0x5768, 0x577d, 0x590c, 0x5945, 0x59b5, 0x59ba, 0x59cf, 0x59ce,
+  0x59b2, 0x59cc, 0x59c1, 0x59b6, 0x59bc, 0x59c3, 0x59d6, 0x59b1,
+  0x59bd, 0x59c0, 0x59c8, 0x59b4, 0x59c7, 0x5b62, 0x5b65, 0x5b93,
+  0x5b95, 0x5c44, 0x5c47, 0x5cae, 0x5ca4, 0x5ca0, 0x5cb5, 0x5caf,
+  0x5ca8, 0x5cac, 0x5c9f, 0x5ca3, 0x5cad, 0x5ca2, 0x5caa, 0x5ca7,
+  0x5c9d, 0x5ca5, 0x5cb6, 0x5cb0, 0x5ca6, 0x5e17, 0x5e14, 0x5e19,
+  0x5f28, 0x5f22, 0x5f23, 0x5f24, 0x5f54, 0x5f82, 0x5f7e, 0x5f7d,
+  0x5fde, 0x5fe5, 0x602d, 0x6026, 0x6019, 0x6032, 0x600b, 0x6034,
+  0x600a, 0x6017, 0x6033, 0x601a, 0x601e, 0x602c, 0x6022, 0x600d,
+  0x6010, 0x602e, 0x6013, 0x6011, 0x600c, 0x6009, 0x601c, 0x6214,
+  0x623d, 0x62ad, 0x62b4, 0x62d1, 0x62be, 0x62aa, 0x62b6, 0x62ca,
+  0x62ae, 0x62b3, 0x62af, 0x62bb, 0x62a9, 0x62b0, 0x62b8, 0x653d,
+  0x65a8, 0x65bb, 0x6609, 0x65fc, 0x6604, 0x6612, 0x6608, 0x65fb,
+  0x6603, 0x660b, 0x660d, 0x6605, 0x65fd, 0x6611, 0x6610, 0x66f6,
+  0x670a, 0x6785, 0x676c, 0x678e, 0x6792, 0x6776, 0x677b, 0x6798,
+  0x6786, 0x6784, 0x6774, 0x678d, 0x678c, 0x677a, 0x679f, 0x6791,
+  0x6799, 0x6783, 0x677d, 0x6781, 0x6778, 0x6779, 0x6794, 0x6b25,
+  0x6b80, 0x6b7e, 0x6bde, 0x6c1d, 0x6c93, 0x6cec, 0x6ceb, 0x6cee,
+  0x6cd9, 0x6cb6, 0x6cd4, 0x6cad, 0x6ce7, 0x6cb7, 0x6cd0, 0x6cc2,
+  0x6cba, 0x6cc3, 0x6cc6, 0x6ced, 0x6cf2,
+  /* 0xcd */
+  0x6cd2, 0x6cdd, 0x6cb4, 0x6c8a, 0x6c9d, 0x6c80, 0x6cde, 0x6cc0,
+  0x6d30, 0x6ccd, 0x6cc7, 0x6cb0, 0x6cf9, 0x6ccf, 0x6ce9, 0x6cd1,
+  0x7094, 0x7098, 0x7085, 0x7093, 0x7086, 0x7084, 0x7091, 0x7096,
+  0x7082, 0x709a, 0x7083, 0x726a, 0x72d6, 0x72cb, 0x72d8, 0x72c9,
+  0x72dc, 0x72d2, 0x72d4, 0x72da, 0x72cc, 0x72d1, 0x73a4, 0x73a1,
+  0x73ad, 0x73a6, 0x73a2, 0x73a0, 0x73ac, 0x739d, 0x74dd, 0x74e8,
+  0x753f, 0x7540, 0x753e, 0x758c, 0x7598, 0x76af, 0x76f3, 0x76f1,
+  0x76f0, 0x76f5, 0x77f8, 0x77fc, 0x77f9, 0x77fb, 0x77fa, 0x77f7,
+  0x7942, 0x793f, 0x79c5, 0x7a78, 0x7a7b, 0x7afb, 0x7c75, 0x7cfd,
+  0x8035, 0x808f, 0x80ae, 0x80a3, 0x80b8, 0x80b5, 0x80ad, 0x8220,
+  0x82a0, 0x82c0, 0x82ab, 0x829a, 0x8298, 0x829b, 0x82b5, 0x82a7,
+  0x82ae, 0x82bc, 0x829e, 0x82ba, 0x82b4, 0x82a8, 0x82a1, 0x82a9,
+  0x82c2, 0x82a4, 0x82c3, 0x82b6, 0x82a2, 0x8670, 0x866f, 0x866d,
+  0x866e, 0x8c56, 0x8fd2, 0x8fcb, 0x8fd3, 0x8fcd, 0x8fd6, 0x8fd5,
+  0x8fd7, 0x90b2, 0x90b4, 0x90af, 0x90b3, 0x90b0, 0x9639, 0x963d,
+  0x963c, 0x963a, 0x9643, 0x4fcd, 0x4fc5, 0x4fd3, 0x4fb2, 0x4fc9,
+  0x4fcb, 0x4fc1, 0x4fd4, 0x4fdc, 0x4fd9, 0x4fbb, 0x4fb3, 0x4fdb,
+  0x4fc7, 0x4fd6, 0x4fba, 0x4fc0, 0x4fb9, 0x4fec, 0x5244, 0x5249,
+  0x52c0, 0x52c2, 0x533d, 0x537c, 0x5397, 0x5396, 0x5399, 0x5398,
+  0x54ba, 0x54a1, 0x54ad, 0x54a5, 0x54cf,
+  /* 0xce */
+  0x54c3, 0x830d, 0x54b7, 0x54ae, 0x54d6, 0x54b6, 0x54c5, 0x54c6,
+  0x54a0, 0x5470, 0x54bc, 0x54a2, 0x54be, 0x5472, 0x54de, 0x54b0,
+  0x57b5, 0x579e, 0x579f, 0x57a4, 0x578c, 0x5797, 0x579d, 0x579b,
+  0x5794, 0x5798, 0x578f, 0x5799, 0x57a5, 0x579a, 0x5795, 0x58f4,
+  0x590d, 0x5953, 0x59e1, 0x59de, 0x59ee, 0x5a00, 0x59f1, 0x59dd,
+  0x59fa, 0x59fd, 0x59fc, 0x59f6, 0x59e4, 0x59f2, 0x59f7, 0x59db,
+  0x59e9, 0x59f3, 0x59f5, 0x59e0, 0x59fe, 0x59f4, 0x59ed, 0x5ba8,
+  0x5c4c, 0x5cd0, 0x5cd8, 0x5ccc, 0x5cd7, 0x5ccb, 0x5cdb, 0x5cde,
+  0x5cda, 0x5cc9, 0x5cc7, 0x5cca, 0x5cd6, 0x5cd3, 0x5cd4, 0x5ccf,
+  0x5cc8, 0x5cc6, 0x5cce, 0x5cdf, 0x5cf8, 0x5df9, 0x5e21, 0x5e22,
+  0x5e23, 0x5e20, 0x5e24, 0x5eb0, 0x5ea4, 0x5ea2, 0x5e9b, 0x5ea3,
+  0x5ea5, 0x5f07, 0x5f2e, 0x5f56, 0x5f86, 0x6037, 0x6039, 0x6054,
+  0x6072, 0x605e, 0x6045, 0x6053, 0x6047, 0x6049, 0x605b, 0x604c,
+  0x6040, 0x6042, 0x605f, 0x6024, 0x6044, 0x6058, 0x6066, 0x606e,
+  0x6242, 0x6243, 0x62cf, 0x630d, 0x630b, 0x62f5, 0x630e, 0x6303,
+  0x62eb, 0x62f9, 0x630f, 0x630c, 0x62f8, 0x62f6, 0x6300, 0x6313,
+  0x6314, 0x62fa, 0x6315, 0x62fb, 0x62f0, 0x6541, 0x6543, 0x65aa,
+  0x65bf, 0x6636, 0x6621, 0x6632, 0x6635, 0x661c, 0x6626, 0x6622,
+  0x6633, 0x662b, 0x663a, 0x661d, 0x6634, 0x6639, 0x662e, 0x670f,
+  0x6710, 0x67c1, 0x67f2, 0x67c8, 0x67ba,
+  /* 0xcf */
+  0x67dc, 0x67bb, 0x67f8, 0x67d8, 0x67c0, 0x67b7, 0x67c5, 0x67eb,
+  0x67e4, 0x67df, 0x67b5, 0x67cd, 0x67b3, 0x67f7, 0x67f6, 0x67ee,
+  0x67e3, 0x67c2, 0x67b9, 0x67ce, 0x67e7, 0x67f0, 0x67b2, 0x67fc,
+  0x67c6, 0x67ed, 0x67cc, 0x67ae, 0x67e6, 0x67db, 0x67fa, 0x67c9,
+  0x67ca, 0x67c3, 0x67ea, 0x67cb, 0x6b28, 0x6b82, 0x6b84, 0x6bb6,
+  0x6bd6, 0x6bd8, 0x6be0, 0x6c20, 0x6c21, 0x6d28, 0x6d34, 0x6d2d,
+  0x6d1f, 0x6d3c, 0x6d3f, 0x6d12, 0x6d0a, 0x6cda, 0x6d33, 0x6d04,
+  0x6d19, 0x6d3a, 0x6d1a, 0x6d11, 0x6d00, 0x6d1d, 0x6d42, 0x6d01,
+  0x6d18, 0x6d37, 0x6d03, 0x6d0f, 0x6d40, 0x6d07, 0x6d20, 0x6d2c,
+  0x6d08, 0x6d22, 0x6d09, 0x6d10, 0x70b7, 0x709f, 0x70be, 0x70b1,
+  0x70b0, 0x70a1, 0x70b4, 0x70b5, 0x70a9, 0x7241, 0x7249, 0x724a,
+  0x726c, 0x7270, 0x7273, 0x726e, 0x72ca, 0x72e4, 0x72e8, 0x72eb,
+  0x72df, 0x72ea, 0x72e6, 0x72e3, 0x7385, 0x73cc, 0x73c2, 0x73c8,
+  0x73c5, 0x73b9, 0x73b6, 0x73b5, 0x73b4, 0x73eb, 0x73bf, 0x73c7,
+  0x73be, 0x73c3, 0x73c6, 0x73b8, 0x73cb, 0x74ec, 0x74ee, 0x752e,
+  0x7547, 0x7548, 0x75a7, 0x75aa, 0x7679, 0x76c4, 0x7708, 0x7703,
+  0x7704, 0x7705, 0x770a, 0x76f7, 0x76fb, 0x76fa, 0x77e7, 0x77e8,
+  0x7806, 0x7811, 0x7812, 0x7805, 0x7810, 0x780f, 0x780e, 0x7809,
+  0x7803, 0x7813, 0x794a, 0x794c, 0x794b, 0x7945, 0x7944, 0x79d5,
+  0x79cd, 0x79cf, 0x79d6, 0x79ce, 0x7a80,
+  /* 0xd0 */
+  0x7a7e, 0x7ad1, 0x7b00, 0x7b01, 0x7c7a, 0x7c78, 0x7c79, 0x7c7f,
+  0x7c80, 0x7c81, 0x7d03, 0x7d08, 0x7d01, 0x7f58, 0x7f91, 0x7f8d,
+  0x7fbe, 0x8007, 0x800e, 0x800f, 0x8014, 0x8037, 0x80d8, 0x80c7,
+  0x80e0, 0x80d1, 0x80c8, 0x80c2, 0x80d0, 0x80c5, 0x80e3, 0x80d9,
+  0x80dc, 0x80ca, 0x80d5, 0x80c9, 0x80cf, 0x80d7, 0x80e6, 0x80cd,
+  0x81ff, 0x8221, 0x8294, 0x82d9, 0x82fe, 0x82f9, 0x8307, 0x82e8,
+  0x8300, 0x82d5, 0x833a, 0x82eb, 0x82d6, 0x82f4, 0x82ec, 0x82e1,
+  0x82f2, 0x82f5, 0x830c, 0x82fb, 0x82f6, 0x82f0, 0x82ea, 0x82e4,
+  0x82e0, 0x82fa, 0x82f3, 0x82ed, 0x8677, 0x8674, 0x867c, 0x8673,
+  0x8841, 0x884e, 0x8867, 0x886a, 0x8869, 0x89d3, 0x8a04, 0x8a07,
+  0x8d72, 0x8fe3, 0x8fe1, 0x8fee, 0x8fe0, 0x90f1, 0x90bd, 0x90bf,
+  0x90d5, 0x90c5, 0x90be, 0x90c7, 0x90cb, 0x90c8, 0x91d4, 0x91d3,
+  0x9654, 0x964f, 0x9651, 0x9653, 0x964a, 0x964e, 0x501e, 0x5005,
+  0x5007, 0x5013, 0x5022, 0x5030, 0x501b, 0x4ff5, 0x4ff4, 0x5033,
+  0x5037, 0x502c, 0x4ff6, 0x4ff7, 0x5017, 0x501c, 0x5020, 0x5027,
+  0x5035, 0x502f, 0x5031, 0x500e, 0x515a, 0x5194, 0x5193, 0x51ca,
+  0x51c4, 0x51c5, 0x51c8, 0x51ce, 0x5261, 0x525a, 0x5252, 0x525e,
+  0x525f, 0x5255, 0x5262, 0x52cd, 0x530e, 0x539e, 0x5526, 0x54e2,
+  0x5517, 0x5512, 0x54e7, 0x54f3, 0x54e4, 0x551a, 0x54ff, 0x5504,
+  0x5508, 0x54eb, 0x5511, 0x5505, 0x54f1,
+  /* 0xd1 */
+  0x550a, 0x54fb, 0x54f7, 0x54f8, 0x54e0, 0x550e, 0x5503, 0x550b,
+  0x5701, 0x5702, 0x57cc, 0x5832, 0x57d5, 0x57d2, 0x57ba, 0x57c6,
+  0x57bd, 0x57bc, 0x57b8, 0x57b6, 0x57bf, 0x57c7, 0x57d0, 0x57b9,
+  0x57c1, 0x590e, 0x594a, 0x5a19, 0x5a16, 0x5a2d, 0x5a2e, 0x5a15,
+  0x5a0f, 0x5a17, 0x5a0a, 0x5a1e, 0x5a33, 0x5b6c, 0x5ba7, 0x5bad,
+  0x5bac, 0x5c03, 0x5c56, 0x5c54, 0x5cec, 0x5cff, 0x5cee, 0x5cf1,
+  0x5cf7, 0x5d00, 0x5cf9, 0x5e29, 0x5e28, 0x5ea8, 0x5eae, 0x5eaa,
+  0x5eac, 0x5f33, 0x5f30, 0x5f67, 0x605d, 0x605a, 0x6067, 0x6041,
+  0x60a2, 0x6088, 0x6080, 0x6092, 0x6081, 0x609d, 0x6083, 0x6095,
+  0x609b, 0x6097, 0x6087, 0x609c, 0x608e, 0x6219, 0x6246, 0x62f2,
+  0x6310, 0x6356, 0x632c, 0x6344, 0x6345, 0x6336, 0x6343, 0x63e4,
+  0x6339, 0x634b, 0x634a, 0x633c, 0x6329, 0x6341, 0x6334, 0x6358,
+  0x6354, 0x6359, 0x632d, 0x6347, 0x6333, 0x635a, 0x6351, 0x6338,
+  0x6357, 0x6340, 0x6348, 0x654a, 0x6546, 0x65c6, 0x65c3, 0x65c4,
+  0x65c2, 0x664a, 0x665f, 0x6647, 0x6651, 0x6712, 0x6713, 0x681f,
+  0x681a, 0x6849, 0x6832, 0x6833, 0x683b, 0x684b, 0x684f, 0x6816,
+  0x6831, 0x681c, 0x6835, 0x682b, 0x682d, 0x682f, 0x684e, 0x6844,
+  0x6834, 0x681d, 0x6812, 0x6814, 0x6826, 0x6828, 0x682e, 0x684d,
+  0x683a, 0x6825, 0x6820, 0x6b2c, 0x6b2f, 0x6b2d, 0x6b31, 0x6b34,
+  0x6b6d, 0x8082, 0x6b88, 0x6be6, 0x6be4,
+  /* 0xd2 */
+  0x6be8, 0x6be3, 0x6be2, 0x6be7, 0x6c25, 0x6d7a, 0x6d63, 0x6d64,
+  0x6d76, 0x6d0d, 0x6d61, 0x6d92, 0x6d58, 0x6d62, 0x6d6d, 0x6d6f,
+  0x6d91, 0x6d8d, 0x6def, 0x6d7f, 0x6d86, 0x6d5e, 0x6d67, 0x6d60,
+  0x6d97, 0x6d70, 0x6d7c, 0x6d5f, 0x6d82, 0x6d98, 0x6d2f, 0x6d68,
+  0x6d8b, 0x6d7e, 0x6d80, 0x6d84, 0x6d16, 0x6d83, 0x6d7b, 0x6d7d,
+  0x6d75, 0x6d90, 0x70dc, 0x70d3, 0x70d1, 0x70dd, 0x70cb, 0x7f39,
+  0x70e2, 0x70d7, 0x70d2, 0x70de, 0x70e0, 0x70d4, 0x70cd, 0x70c5,
+  0x70c6, 0x70c7, 0x70da, 0x70ce, 0x70e1, 0x7242, 0x7278, 0x7277,
+  0x7276, 0x7300, 0x72fa, 0x72f4, 0x72fe, 0x72f6, 0x72f3, 0x72fb,
+  0x7301, 0x73d3, 0x73d9, 0x73e5, 0x73d6, 0x73bc, 0x73e7, 0x73e3,
+  0x73e9, 0x73dc, 0x73d2, 0x73db, 0x73d4, 0x73dd, 0x73da, 0x73d7,
+  0x73d8, 0x73e8, 0x74de, 0x74df, 0x74f4, 0x74f5, 0x7521, 0x755b,
+  0x755f, 0x75b0, 0x75c1, 0x75bb, 0x75c4, 0x75c0, 0x75bf, 0x75b6,
+  0x75ba, 0x768a, 0x76c9, 0x771d, 0x771b, 0x7710, 0x7713, 0x7712,
+  0x7723, 0x7711, 0x7715, 0x7719, 0x771a, 0x7722, 0x7727, 0x7823,
+  0x782c, 0x7822, 0x7835, 0x782f, 0x7828, 0x782e, 0x782b, 0x7821,
+  0x7829, 0x7833, 0x782a, 0x7831, 0x7954, 0x795b, 0x794f, 0x795c,
+  0x7953, 0x7952, 0x7951, 0x79eb, 0x79ec, 0x79e0, 0x79ee, 0x79ed,
+  0x79ea, 0x79dc, 0x79de, 0x79dd, 0x7a86, 0x7a89, 0x7a85, 0x7a8b,
+  0x7a8c, 0x7a8a, 0x7a87, 0x7ad8, 0x7b10,
+  /* 0xd3 */
+  0x7b04, 0x7b13, 0x7b05, 0x7b0f, 0x7b08, 0x7b0a, 0x7b0e, 0x7b09,
+  0x7b12, 0x7c84, 0x7c91, 0x7c8a, 0x7c8c, 0x7c88, 0x7c8d, 0x7c85,
+  0x7d1e, 0x7d1d, 0x7d11, 0x7d0e, 0x7d18, 0x7d16, 0x7d13, 0x7d1f,
+  0x7d12, 0x7d0f, 0x7d0c, 0x7f5c, 0x7f61, 0x7f5e, 0x7f60, 0x7f5d,
+  0x7f5b, 0x7f96, 0x7f92, 0x7fc3, 0x7fc2, 0x7fc0, 0x8016, 0x803e,
+  0x8039, 0x80fa, 0x80f2, 0x80f9, 0x80f5, 0x8101, 0x80fb, 0x8100,
+  0x8201, 0x822f, 0x8225, 0x8333, 0x832d, 0x8344, 0x8319, 0x8351,
+  0x8325, 0x8356, 0x833f, 0x8341, 0x8326, 0x831c, 0x8322, 0x8342,
+  0x834e, 0x831b, 0x832a, 0x8308, 0x833c, 0x834d, 0x8316, 0x8324,
+  0x8320, 0x8337, 0x832f, 0x8329, 0x8347, 0x8345, 0x834c, 0x8353,
+  0x831e, 0x832c, 0x834b, 0x8327, 0x8348, 0x8653, 0x8652, 0x86a2,
+  0x86a8, 0x8696, 0x868d, 0x8691, 0x869e, 0x8687, 0x8697, 0x8686,
+  0x868b, 0x869a, 0x8685, 0x86a5, 0x8699, 0x86a1, 0x86a7, 0x8695,
+  0x8698, 0x868e, 0x869d, 0x8690, 0x8694, 0x8843, 0x8844, 0x886d,
+  0x8875, 0x8876, 0x8872, 0x8880, 0x8871, 0x887f, 0x886f, 0x8883,
+  0x887e, 0x8874, 0x887c, 0x8a12, 0x8c47, 0x8c57, 0x8c7b, 0x8ca4,
+  0x8ca3, 0x8d76, 0x8d78, 0x8db5, 0x8db7, 0x8db6, 0x8ed1, 0x8ed3,
+  0x8ffe, 0x8ff5, 0x9002, 0x8fff, 0x8ffb, 0x9004, 0x8ffc, 0x8ff6,
+  0x90d6, 0x90e0, 0x90d9, 0x90da, 0x90e3, 0x90df, 0x90e5, 0x90d8,
+  0x90db, 0x90d7, 0x90dc, 0x90e4, 0x9150,
+  /* 0xd4 */
+  0x914e, 0x914f, 0x91d5, 0x91e2, 0x91da, 0x965c, 0x965f, 0x96bc,
+  0x98e3, 0x9adf, 0x9b2f, 0x4e7f, 0x5070, 0x506a, 0x5061, 0x505e,
+  0x5060, 0x5053, 0x504b, 0x505d, 0x5072, 0x5048, 0x504d, 0x5041,
+  0x505b, 0x504a, 0x5062, 0x5015, 0x5045, 0x505f, 0x5069, 0x506b,
+  0x5063, 0x5064, 0x5046, 0x5040, 0x506e, 0x5073, 0x5057, 0x5051,
+  0x51d0, 0x526b, 0x526d, 0x526c, 0x526e, 0x52d6, 0x52d3, 0x532d,
+  0x539c, 0x5575, 0x5576, 0x553c, 0x554d, 0x5550, 0x5534, 0x552a,
+  0x5551, 0x5562, 0x5536, 0x5535, 0x5530, 0x5552, 0x5545, 0x550c,
+  0x5532, 0x5565, 0x554e, 0x5539, 0x5548, 0x552d, 0x553b, 0x5540,
+  0x554b, 0x570a, 0x5707, 0x57fb, 0x5814, 0x57e2, 0x57f6, 0x57dc,
+  0x57f4, 0x5800, 0x57ed, 0x57fd, 0x5808, 0x57f8, 0x580b, 0x57f3,
+  0x57cf, 0x5807, 0x57ee, 0x57e3, 0x57f2, 0x57e5, 0x57ec, 0x57e1,
+  0x580e, 0x57fc, 0x5810, 0x57e7, 0x5801, 0x580c, 0x57f1, 0x57e9,
+  0x57f0, 0x580d, 0x5804, 0x595c, 0x5a60, 0x5a58, 0x5a55, 0x5a67,
+  0x5a5e, 0x5a38, 0x5a35, 0x5a6d, 0x5a50, 0x5a5f, 0x5a65, 0x5a6c,
+  0x5a53, 0x5a64, 0x5a57, 0x5a43, 0x5a5d, 0x5a52, 0x5a44, 0x5a5b,
+  0x5a48, 0x5a8e, 0x5a3e, 0x5a4d, 0x5a39, 0x5a4c, 0x5a70, 0x5a69,
+  0x5a47, 0x5a51, 0x5a56, 0x5a42, 0x5a5c, 0x5b72, 0x5b6e, 0x5bc1,
+  0x5bc0, 0x5c59, 0x5d1e, 0x5d0b, 0x5d1d, 0x5d1a, 0x5d20, 0x5d0c,
+  0x5d28, 0x5d0d, 0x5d26, 0x5d25, 0x5d0f,
+  /* 0xd5 */
+  0x5d30, 0x5d12, 0x5d23, 0x5d1f, 0x5d2e, 0x5e3e, 0x5e34, 0x5eb1,
+  0x5eb4, 0x5eb9, 0x5eb2, 0x5eb3, 0x5f36, 0x5f38, 0x5f9b, 0x5f96,
+  0x5f9f, 0x608a, 0x6090, 0x6086, 0x60be, 0x60b0, 0x60ba, 0x60d3,
+  0x60d4, 0x60cf, 0x60e4, 0x60d9, 0x60dd, 0x60c8, 0x60b1, 0x60db,
+  0x60b7, 0x60ca, 0x60bf, 0x60c3, 0x60cd, 0x60c0, 0x6332, 0x6365,
+  0x638a, 0x6382, 0x637d, 0x63bd, 0x639e, 0x63ad, 0x639d, 0x6397,
+  0x63ab, 0x638e, 0x636f, 0x6387, 0x6390, 0x636e, 0x63af, 0x6375,
+  0x639c, 0x636d, 0x63ae, 0x637c, 0x63a4, 0x633b, 0x639f, 0x6378,
+  0x6385, 0x6381, 0x6391, 0x638d, 0x6370, 0x6553, 0x65cd, 0x6665,
+  0x6661, 0x665b, 0x6659, 0x665c, 0x6662, 0x6718, 0x6879, 0x6887,
+  0x6890, 0x689c, 0x686d, 0x686e, 0x68ae, 0x68ab, 0x6956, 0x686f,
+  0x68a3, 0x68ac, 0x68a9, 0x6875, 0x6874, 0x68b2, 0x688f, 0x6877,
+  0x6892, 0x687c, 0x686b, 0x6872, 0x68aa, 0x6880, 0x6871, 0x687e,
+  0x689b, 0x6896, 0x688b, 0x68a0, 0x6889, 0x68a4, 0x6878, 0x687b,
+  0x6891, 0x688c, 0x688a, 0x687d, 0x6b36, 0x6b33, 0x6b37, 0x6b38,
+  0x6b91, 0x6b8f, 0x6b8d, 0x6b8e, 0x6b8c, 0x6c2a, 0x6dc0, 0x6dab,
+  0x6db4, 0x6db3, 0x6e74, 0x6dac, 0x6de9, 0x6de2, 0x6db7, 0x6df6,
+  0x6dd4, 0x6e00, 0x6dc8, 0x6de0, 0x6ddf, 0x6dd6, 0x6dbe, 0x6de5,
+  0x6ddc, 0x6ddd, 0x6ddb, 0x6df4, 0x6dca, 0x6dbd, 0x6ded, 0x6df0,
+  0x6dba, 0x6dd5, 0x6dc2, 0x6dcf, 0x6dc9,
+  /* 0xd6 */
+  0x6dd0, 0x6df2, 0x6dd3, 0x6dfd, 0x6dd7, 0x6dcd, 0x6de3, 0x6dbb,
+  0x70fa, 0x710d, 0x70f7, 0x7117, 0x70f4, 0x710c, 0x70f0, 0x7104,
+  0x70f3, 0x7110, 0x70fc, 0x70ff, 0x7106, 0x7113, 0x7100, 0x70f8,
+  0x70f6, 0x710b, 0x7102, 0x710e, 0x727e, 0x727b, 0x727c, 0x727f,
+  0x731d, 0x7317, 0x7307, 0x7311, 0x7318, 0x730a, 0x7308, 0x72ff,
+  0x730f, 0x731e, 0x7388, 0x73f6, 0x73f8, 0x73f5, 0x7404, 0x7401,
+  0x73fd, 0x7407, 0x7400, 0x73fa, 0x73fc, 0x73ff, 0x740c, 0x740b,
+  0x73f4, 0x7408, 0x7564, 0x7563, 0x75ce, 0x75d2, 0x75cf, 0x75cb,
+  0x75cc, 0x75d1, 0x75d0, 0x768f, 0x7689, 0x76d3, 0x7739, 0x772f,
+  0x772d, 0x7731, 0x7732, 0x7734, 0x7733, 0x773d, 0x7725, 0x773b,
+  0x7735, 0x7848, 0x7852, 0x7849, 0x784d, 0x784a, 0x784c, 0x7826,
+  0x7845, 0x7850, 0x7964, 0x7967, 0x7969, 0x796a, 0x7963, 0x796b,
+  0x7961, 0x79bb, 0x79fa, 0x79f8, 0x79f6, 0x79f7, 0x7a8f, 0x7a94,
+  0x7a90, 0x7b35, 0x7b47, 0x7b34, 0x7b25, 0x7b30, 0x7b22, 0x7b24,
+  0x7b33, 0x7b18, 0x7b2a, 0x7b1d, 0x7b31, 0x7b2b, 0x7b2d, 0x7b2f,
+  0x7b32, 0x7b38, 0x7b1a, 0x7b23, 0x7c94, 0x7c98, 0x7c96, 0x7ca3,
+  0x7d35, 0x7d3d, 0x7d38, 0x7d36, 0x7d3a, 0x7d45, 0x7d2c, 0x7d29,
+  0x7d41, 0x7d47, 0x7d3e, 0x7d3f, 0x7d4a, 0x7d3b, 0x7d28, 0x7f63,
+  0x7f95, 0x7f9c, 0x7f9d, 0x7f9b, 0x7fca, 0x7fcb, 0x7fcd, 0x7fd0,
+  0x7fd1, 0x7fc7, 0x7fcf, 0x7fc9, 0x801f,
+  /* 0xd7 */
+  0x801e, 0x801b, 0x8047, 0x8043, 0x8048, 0x8118, 0x8125, 0x8119,
+  0x811b, 0x812d, 0x811f, 0x812c, 0x811e, 0x8121, 0x8115, 0x8127,
+  0x811d, 0x8122, 0x8211, 0x8238, 0x8233, 0x823a, 0x8234, 0x8232,
+  0x8274, 0x8390, 0x83a3, 0x83a8, 0x838d, 0x837a, 0x8373, 0x83a4,
+  0x8374, 0x838f, 0x8381, 0x8395, 0x8399, 0x8375, 0x8394, 0x83a9,
+  0x837d, 0x8383, 0x838c, 0x839d, 0x839b, 0x83aa, 0x838b, 0x837e,
+  0x83a5, 0x83af, 0x8388, 0x8397, 0x83b0, 0x837f, 0x83a6, 0x8387,
+  0x83ae, 0x8376, 0x839a, 0x8659, 0x8656, 0x86bf, 0x86b7, 0x86c2,
+  0x86c1, 0x86c5, 0x86ba, 0x86b0, 0x86c8, 0x86b9, 0x86b3, 0x86b8,
+  0x86cc, 0x86b4, 0x86bb, 0x86bc, 0x86c3, 0x86bd, 0x86be, 0x8852,
+  0x8889, 0x8895, 0x88a8, 0x88a2, 0x88aa, 0x889a, 0x8891, 0x88a1,
+  0x889f, 0x8898, 0x88a7, 0x8899, 0x889b, 0x8897, 0x88a4, 0x88ac,
+  0x888c, 0x8893, 0x888e, 0x8982, 0x89d6, 0x89d9, 0x89d5, 0x8a30,
+  0x8a27, 0x8a2c, 0x8a1e, 0x8c39, 0x8c3b, 0x8c5c, 0x8c5d, 0x8c7d,
+  0x8ca5, 0x8d7d, 0x8d7b, 0x8d79, 0x8dbc, 0x8dc2, 0x8db9, 0x8dbf,
+  0x8dc1, 0x8ed8, 0x8ede, 0x8edd, 0x8edc, 0x8ed7, 0x8ee0, 0x8ee1,
+  0x9024, 0x900b, 0x9011, 0x901c, 0x900c, 0x9021, 0x90ef, 0x90ea,
+  0x90f0, 0x90f4, 0x90f2, 0x90f3, 0x90d4, 0x90eb, 0x90ec, 0x90e9,
+  0x9156, 0x9158, 0x915a, 0x9153, 0x9155, 0x91ec, 0x91f4, 0x91f1,
+  0x91f3, 0x91f8, 0x91e4, 0x91f9, 0x91ea,
+  /* 0xd8 */
+  0x91eb, 0x91f7, 0x91e8, 0x91ee, 0x957a, 0x9586, 0x9588, 0x967c,
+  0x966d, 0x966b, 0x9671, 0x966f, 0x96bf, 0x976a, 0x9804, 0x98e5,
+  0x9997, 0x509b, 0x5095, 0x5094, 0x509e, 0x508b, 0x50a3, 0x5083,
+  0x508c, 0x508e, 0x509d, 0x5068, 0x509c, 0x5092, 0x5082, 0x5087,
+  0x515f, 0x51d4, 0x5312, 0x5311, 0x53a4, 0x53a7, 0x5591, 0x55a8,
+  0x55a5, 0x55ad, 0x5577, 0x5645, 0x55a2, 0x5593, 0x5588, 0x558f,
+  0x55b5, 0x5581, 0x55a3, 0x5592, 0x55a4, 0x557d, 0x558c, 0x55a6,
+  0x557f, 0x5595, 0x55a1, 0x558e, 0x570c, 0x5829, 0x5837, 0x5819,
+  0x581e, 0x5827, 0x5823, 0x5828, 0x57f5, 0x5848, 0x5825, 0x581c,
+  0x581b, 0x5833, 0x583f, 0x5836, 0x582e, 0x5839, 0x5838, 0x582d,
+  0x582c, 0x583b, 0x5961, 0x5aaf, 0x5a94, 0x5a9f, 0x5a7a, 0x5aa2,
+  0x5a9e, 0x5a78, 0x5aa6, 0x5a7c, 0x5aa5, 0x5aac, 0x5a95, 0x5aae,
+  0x5a37, 0x5a84, 0x5a8a, 0x5a97, 0x5a83, 0x5a8b, 0x5aa9, 0x5a7b,
+  0x5a7d, 0x5a8c, 0x5a9c, 0x5a8f, 0x5a93, 0x5a9d, 0x5bea, 0x5bcd,
+  0x5bcb, 0x5bd4, 0x5bd1, 0x5bca, 0x5bce, 0x5c0c, 0x5c30, 0x5d37,
+  0x5d43, 0x5d6b, 0x5d41, 0x5d4b, 0x5d3f, 0x5d35, 0x5d51, 0x5d4e,
+  0x5d55, 0x5d33, 0x5d3a, 0x5d52, 0x5d3d, 0x5d31, 0x5d59, 0x5d42,
+  0x5d39, 0x5d49, 0x5d38, 0x5d3c, 0x5d32, 0x5d36, 0x5d40, 0x5d45,
+  0x5e44, 0x5e41, 0x5f58, 0x5fa6, 0x5fa5, 0x5fab, 0x60c9, 0x60b9,
+  0x60cc, 0x60e2, 0x60ce, 0x60c4, 0x6114,
+  /* 0xd9 */
+  0x60f2, 0x610a, 0x6116, 0x6105, 0x60f5, 0x6113, 0x60f8, 0x60fc,
+  0x60fe, 0x60c1, 0x6103, 0x6118, 0x611d, 0x6110, 0x60ff, 0x6104,
+  0x610b, 0x624a, 0x6394, 0x63b1, 0x63b0, 0x63ce, 0x63e5, 0x63e8,
+  0x63ef, 0x63c3, 0x649d, 0x63f3, 0x63ca, 0x63e0, 0x63f6, 0x63d5,
+  0x63f2, 0x63f5, 0x6461, 0x63df, 0x63be, 0x63dd, 0x63dc, 0x63c4,
+  0x63d8, 0x63d3, 0x63c2, 0x63c7, 0x63cc, 0x63cb, 0x63c8, 0x63f0,
+  0x63d7, 0x63d9, 0x6532, 0x6567, 0x656a, 0x6564, 0x655c, 0x6568,
+  0x6565, 0x658c, 0x659d, 0x659e, 0x65ae, 0x65d0, 0x65d2, 0x667c,
+  0x666c, 0x667b, 0x6680, 0x6671, 0x6679, 0x666a, 0x6672, 0x6701,
+  0x690c, 0x68d3, 0x6904, 0x68dc, 0x692a, 0x68ec, 0x68ea, 0x68f1,
+  0x690f, 0x68d6, 0x68f7, 0x68eb, 0x68e4, 0x68f6, 0x6913, 0x6910,
+  0x68f3, 0x68e1, 0x6907, 0x68cc, 0x6908, 0x6970, 0x68b4, 0x6911,
+  0x68ef, 0x68c6, 0x6914, 0x68f8, 0x68d0, 0x68fd, 0x68fc, 0x68e8,
+  0x690b, 0x690a, 0x6917, 0x68ce, 0x68c8, 0x68dd, 0x68de, 0x68e6,
+  0x68f4, 0x68d1, 0x6906, 0x68d4, 0x68e9, 0x6915, 0x6925, 0x68c7,
+  0x6b39, 0x6b3b, 0x6b3f, 0x6b3c, 0x6b94, 0x6b97, 0x6b99, 0x6b95,
+  0x6bbd, 0x6bf0, 0x6bf2, 0x6bf3, 0x6c30, 0x6dfc, 0x6e46, 0x6e47,
+  0x6e1f, 0x6e49, 0x6e88, 0x6e3c, 0x6e3d, 0x6e45, 0x6e62, 0x6e2b,
+  0x6e3f, 0x6e41, 0x6e5d, 0x6e73, 0x6e1c, 0x6e33, 0x6e4b, 0x6e40,
+  0x6e51, 0x6e3b, 0x6e03, 0x6e2e, 0x6e5e,
+  /* 0xda */
+  0x6e68, 0x6e5c, 0x6e61, 0x6e31, 0x6e28, 0x6e60, 0x6e71, 0x6e6b,
+  0x6e39, 0x6e22, 0x6e30, 0x6e53, 0x6e65, 0x6e27, 0x6e78, 0x6e64,
+  0x6e77, 0x6e55, 0x6e79, 0x6e52, 0x6e66, 0x6e35, 0x6e36, 0x6e5a,
+  0x7120, 0x711e, 0x712f, 0x70fb, 0x712e, 0x7131, 0x7123, 0x7125,
+  0x7122, 0x7132, 0x711f, 0x7128, 0x713a, 0x711b, 0x724b, 0x725a,
+  0x7288, 0x7289, 0x7286, 0x7285, 0x728b, 0x7312, 0x730b, 0x7330,
+  0x7322, 0x7331, 0x7333, 0x7327, 0x7332, 0x732d, 0x7326, 0x7323,
+  0x7335, 0x730c, 0x742e, 0x742c, 0x7430, 0x742b, 0x7416, 0x741a,
+  0x7421, 0x742d, 0x7431, 0x7424, 0x7423, 0x741d, 0x7429, 0x7420,
+  0x7432, 0x74fb, 0x752f, 0x756f, 0x756c, 0x75e7, 0x75da, 0x75e1,
+  0x75e6, 0x75dd, 0x75df, 0x75e4, 0x75d7, 0x7695, 0x7692, 0x76da,
+  0x7746, 0x7747, 0x7744, 0x774d, 0x7745, 0x774a, 0x774e, 0x774b,
+  0x774c, 0x77de, 0x77ec, 0x7860, 0x7864, 0x7865, 0x785c, 0x786d,
+  0x7871, 0x786a, 0x786e, 0x7870, 0x7869, 0x7868, 0x785e, 0x7862,
+  0x7974, 0x7973, 0x7972, 0x7970, 0x7a02, 0x7a0a, 0x7a03, 0x7a0c,
+  0x7a04, 0x7a99, 0x7ae6, 0x7ae4, 0x7b4a, 0x7b3b, 0x7b44, 0x7b48,
+  0x7b4c, 0x7b4e, 0x7b40, 0x7b58, 0x7b45, 0x7ca2, 0x7c9e, 0x7ca8,
+  0x7ca1, 0x7d58, 0x7d6f, 0x7d63, 0x7d53, 0x7d56, 0x7d67, 0x7d6a,
+  0x7d4f, 0x7d6d, 0x7d5c, 0x7d6b, 0x7d52, 0x7d54, 0x7d69, 0x7d51,
+  0x7d5f, 0x7d4e, 0x7f3e, 0x7f3f, 0x7f65,
+  /* 0xdb */
+  0x7f66, 0x7fa2, 0x7fa0, 0x7fa1, 0x7fd7, 0x8051, 0x804f, 0x8050,
+  0x80fe, 0x80d4, 0x8143, 0x814a, 0x8152, 0x814f, 0x8147, 0x813d,
+  0x814d, 0x813a, 0x81e6, 0x81ee, 0x81f7, 0x81f8, 0x81f9, 0x8204,
+  0x823c, 0x823d, 0x823f, 0x8275, 0x833b, 0x83cf, 0x83f9, 0x8423,
+  0x83c0, 0x83e8, 0x8412, 0x83e7, 0x83e4, 0x83fc, 0x83f6, 0x8410,
+  0x83c6, 0x83c8, 0x83eb, 0x83e3, 0x83bf, 0x8401, 0x83dd, 0x83e5,
+  0x83d8, 0x83ff, 0x83e1, 0x83cb, 0x83ce, 0x83d6, 0x83f5, 0x83c9,
+  0x8409, 0x840f, 0x83de, 0x8411, 0x8406, 0x83c2, 0x83f3, 0x83d5,
+  0x83fa, 0x83c7, 0x83d1, 0x83ea, 0x8413, 0x83c3, 0x83ec, 0x83ee,
+  0x83c4, 0x83fb, 0x83d7, 0x83e2, 0x841b, 0x83db, 0x83fe, 0x86d8,
+  0x86e2, 0x86e6, 0x86d3, 0x86e3, 0x86da, 0x86ea, 0x86dd, 0x86eb,
+  0x86dc, 0x86ec, 0x86e9, 0x86d7, 0x86e8, 0x86d1, 0x8848, 0x8856,
+  0x8855, 0x88ba, 0x88d7, 0x88b9, 0x88b8, 0x88c0, 0x88be, 0x88b6,
+  0x88bc, 0x88b7, 0x88bd, 0x88b2, 0x8901, 0x88c9, 0x8995, 0x8998,
+  0x8997, 0x89dd, 0x89da, 0x89db, 0x8a4e, 0x8a4d, 0x8a39, 0x8a59,
+  0x8a40, 0x8a57, 0x8a58, 0x8a44, 0x8a45, 0x8a52, 0x8a48, 0x8a51,
+  0x8a4a, 0x8a4c, 0x8a4f, 0x8c5f, 0x8c81, 0x8c80, 0x8cba, 0x8cbe,
+  0x8cb0, 0x8cb9, 0x8cb5, 0x8d84, 0x8d80, 0x8d89, 0x8dd8, 0x8dd3,
+  0x8dcd, 0x8dc7, 0x8dd6, 0x8ddc, 0x8dcf, 0x8dd5, 0x8dd9, 0x8dc8,
+  0x8dd7, 0x8dc5, 0x8eef, 0x8ef7, 0x8efa,
+  /* 0xdc */
+  0x8ef9, 0x8ee6, 0x8eee, 0x8ee5, 0x8ef5, 0x8ee7, 0x8ee8, 0x8ef6,
+  0x8eeb, 0x8ef1, 0x8eec, 0x8ef4, 0x8ee9, 0x902d, 0x9034, 0x902f,
+  0x9106, 0x912c, 0x9104, 0x90ff, 0x90fc, 0x9108, 0x90f9, 0x90fb,
+  0x9101, 0x9100, 0x9107, 0x9105, 0x9103, 0x9161, 0x9164, 0x915f,
+  0x9162, 0x9160, 0x9201, 0x920a, 0x9225, 0x9203, 0x921a, 0x9226,
+  0x920f, 0x920c, 0x9200, 0x9212, 0x91ff, 0x91fd, 0x9206, 0x9204,
+  0x9227, 0x9202, 0x921c, 0x9224, 0x9219, 0x9217, 0x9205, 0x9216,
+  0x957b, 0x958d, 0x958c, 0x9590, 0x9687, 0x967e, 0x9688, 0x9689,
+  0x9683, 0x9680, 0x96c2, 0x96c8, 0x96c3, 0x96f1, 0x96f0, 0x976c,
+  0x9770, 0x976e, 0x9807, 0x98a9, 0x98eb, 0x9ce6, 0x9ef9, 0x4e83,
+  0x4e84, 0x4eb6, 0x50bd, 0x50bf, 0x50c6, 0x50ae, 0x50c4, 0x50ca,
+  0x50b4, 0x50c8, 0x50c2, 0x50b0, 0x50c1, 0x50ba, 0x50b1, 0x50cb,
+  0x50c9, 0x50b6, 0x50b8, 0x51d7, 0x527a, 0x5278, 0x527b, 0x527c,
+  0x55c3, 0x55db, 0x55cc, 0x55d0, 0x55cb, 0x55ca, 0x55dd, 0x55c0,
+  0x55d4, 0x55c4, 0x55e9, 0x55bf, 0x55d2, 0x558d, 0x55cf, 0x55d5,
+  0x55e2, 0x55d6, 0x55c8, 0x55f2, 0x55cd, 0x55d9, 0x55c2, 0x5714,
+  0x5853, 0x5868, 0x5864, 0x584f, 0x584d, 0x5849, 0x586f, 0x5855,
+  0x584e, 0x585d, 0x5859, 0x5865, 0x585b, 0x583d, 0x5863, 0x5871,
+  0x58fc, 0x5ac7, 0x5ac4, 0x5acb, 0x5aba, 0x5ab8, 0x5ab1, 0x5ab5,
+  0x5ab0, 0x5abf, 0x5ac8, 0x5abb, 0x5ac6,
+  /* 0xdd */
+  0x5ab7, 0x5ac0, 0x5aca, 0x5ab4, 0x5ab6, 0x5acd, 0x5ab9, 0x5a90,
+  0x5bd6, 0x5bd8, 0x5bd9, 0x5c1f, 0x5c33, 0x5d71, 0x5d63, 0x5d4a,
+  0x5d65, 0x5d72, 0x5d6c, 0x5d5e, 0x5d68, 0x5d67, 0x5d62, 0x5df0,
+  0x5e4f, 0x5e4e, 0x5e4a, 0x5e4d, 0x5e4b, 0x5ec5, 0x5ecc, 0x5ec6,
+  0x5ecb, 0x5ec7, 0x5f40, 0x5faf, 0x5fad, 0x60f7, 0x6149, 0x614a,
+  0x612b, 0x6145, 0x6136, 0x6132, 0x612e, 0x6146, 0x612f, 0x614f,
+  0x6129, 0x6140, 0x6220, 0x9168, 0x6223, 0x6225, 0x6224, 0x63c5,
+  0x63f1, 0x63eb, 0x6410, 0x6412, 0x6409, 0x6420, 0x6424, 0x6433,
+  0x6443, 0x641f, 0x6415, 0x6418, 0x6439, 0x6437, 0x6422, 0x6423,
+  0x640c, 0x6426, 0x6430, 0x6428, 0x6441, 0x6435, 0x642f, 0x640a,
+  0x641a, 0x6440, 0x6425, 0x6427, 0x640b, 0x63e7, 0x641b, 0x642e,
+  0x6421, 0x640e, 0x656f, 0x6592, 0x65d3, 0x6686, 0x668c, 0x6695,
+  0x6690, 0x668b, 0x668a, 0x6699, 0x6694, 0x6678, 0x6720, 0x6966,
+  0x695f, 0x6938, 0x694e, 0x6962, 0x6971, 0x693f, 0x6945, 0x696a,
+  0x6939, 0x6942, 0x6957, 0x6959, 0x697a, 0x6948, 0x6949, 0x6935,
+  0x696c, 0x6933, 0x693d, 0x6965, 0x68f0, 0x6978, 0x6934, 0x6969,
+  0x6940, 0x696f, 0x6944, 0x6976, 0x6958, 0x6941, 0x6974, 0x694c,
+  0x693b, 0x694b, 0x6937, 0x695c, 0x694f, 0x6951, 0x6932, 0x6952,
+  0x692f, 0x697b, 0x693c, 0x6b46, 0x6b45, 0x6b43, 0x6b42, 0x6b48,
+  0x6b41, 0x6b9b, 0xfa0d, 0x6bfb, 0x6bfc,
+  /* 0xde */
+  0x6bf9, 0x6bf7, 0x6bf8, 0x6e9b, 0x6ed6, 0x6ec8, 0x6e8f, 0x6ec0,
+  0x6e9f, 0x6e93, 0x6e94, 0x6ea0, 0x6eb1, 0x6eb9, 0x6ec6, 0x6ed2,
+  0x6ebd, 0x6ec1, 0x6e9e, 0x6ec9, 0x6eb7, 0x6eb0, 0x6ecd, 0x6ea6,
+  0x6ecf, 0x6eb2, 0x6ebe, 0x6ec3, 0x6edc, 0x6ed8, 0x6e99, 0x6e92,
+  0x6e8e, 0x6e8d, 0x6ea4, 0x6ea1, 0x6ebf, 0x6eb3, 0x6ed0, 0x6eca,
+  0x6e97, 0x6eae, 0x6ea3, 0x7147, 0x7154, 0x7152, 0x7163, 0x7160,
+  0x7141, 0x715d, 0x7162, 0x7172, 0x7178, 0x716a, 0x7161, 0x7142,
+  0x7158, 0x7143, 0x714b, 0x7170, 0x715f, 0x7150, 0x7153, 0x7144,
+  0x714d, 0x715a, 0x724f, 0x728d, 0x728c, 0x7291, 0x7290, 0x728e,
+  0x733c, 0x7342, 0x733b, 0x733a, 0x7340, 0x734a, 0x7349, 0x7444,
+  0x744a, 0x744b, 0x7452, 0x7451, 0x7457, 0x7440, 0x744f, 0x7450,
+  0x744e, 0x7442, 0x7446, 0x744d, 0x7454, 0x74e1, 0x74ff, 0x74fe,
+  0x74fd, 0x751d, 0x7579, 0x7577, 0x6983, 0x75ef, 0x760f, 0x7603,
+  0x75f7, 0x75fe, 0x75fc, 0x75f9, 0x75f8, 0x7610, 0x75fb, 0x75f6,
+  0x75ed, 0x75f5, 0x75fd, 0x7699, 0x76b5, 0x76dd, 0x7755, 0x775f,
+  0x7760, 0x7752, 0x7756, 0x775a, 0x7769, 0x7767, 0x7754, 0x7759,
+  0x776d, 0x77e0, 0x7887, 0x789a, 0x7894, 0x788f, 0x7884, 0x7895,
+  0x7885, 0x7886, 0x78a1, 0x7883, 0x7879, 0x7899, 0x7880, 0x7896,
+  0x787b, 0x797c, 0x7982, 0x797d, 0x7979, 0x7a11, 0x7a18, 0x7a19,
+  0x7a12, 0x7a17, 0x7a15, 0x7a22, 0x7a13,
+  /* 0xdf */
+  0x7a1b, 0x7a10, 0x7aa3, 0x7aa2, 0x7a9e, 0x7aeb, 0x7b66, 0x7b64,
+  0x7b6d, 0x7b74, 0x7b69, 0x7b72, 0x7b65, 0x7b73, 0x7b71, 0x7b70,
+  0x7b61, 0x7b78, 0x7b76, 0x7b63, 0x7cb2, 0x7cb4, 0x7caf, 0x7d88,
+  0x7d86, 0x7d80, 0x7d8d, 0x7d7f, 0x7d85, 0x7d7a, 0x7d8e, 0x7d7b,
+  0x7d83, 0x7d7c, 0x7d8c, 0x7d94, 0x7d84, 0x7d7d, 0x7d92, 0x7f6d,
+  0x7f6b, 0x7f67, 0x7f68, 0x7f6c, 0x7fa6, 0x7fa5, 0x7fa7, 0x7fdb,
+  0x7fdc, 0x8021, 0x8164, 0x8160, 0x8177, 0x815c, 0x8169, 0x815b,
+  0x8162, 0x8172, 0x6721, 0x815e, 0x8176, 0x8167, 0x816f, 0x8144,
+  0x8161, 0x821d, 0x8249, 0x8244, 0x8240, 0x8242, 0x8245, 0x84f1,
+  0x843f, 0x8456, 0x8476, 0x8479, 0x848f, 0x848d, 0x8465, 0x8451,
+  0x8440, 0x8486, 0x8467, 0x8430, 0x844d, 0x847d, 0x845a, 0x8459,
+  0x8474, 0x8473, 0x845d, 0x8507, 0x845e, 0x8437, 0x843a, 0x8434,
+  0x847a, 0x8443, 0x8478, 0x8432, 0x8445, 0x8429, 0x83d9, 0x844b,
+  0x842f, 0x8442, 0x842d, 0x845f, 0x8470, 0x8439, 0x844e, 0x844c,
+  0x8452, 0x846f, 0x84c5, 0x848e, 0x843b, 0x8447, 0x8436, 0x8433,
+  0x8468, 0x847e, 0x8444, 0x842b, 0x8460, 0x8454, 0x846e, 0x8450,
+  0x870b, 0x8704, 0x86f7, 0x870c, 0x86fa, 0x86d6, 0x86f5, 0x874d,
+  0x86f8, 0x870e, 0x8709, 0x8701, 0x86f6, 0x870d, 0x8705, 0x88d6,
+  0x88cb, 0x88cd, 0x88ce, 0x88de, 0x88db, 0x88da, 0x88cc, 0x88d0,
+  0x8985, 0x899b, 0x89df, 0x89e5, 0x89e4,
+  /* 0xe0 */
+  0x89e1, 0x89e0, 0x89e2, 0x89dc, 0x89e6, 0x8a76, 0x8a86, 0x8a7f,
+  0x8a61, 0x8a3f, 0x8a77, 0x8a82, 0x8a84, 0x8a75, 0x8a83, 0x8a81,
+  0x8a74, 0x8a7a, 0x8c3c, 0x8c4b, 0x8c4a, 0x8c65, 0x8c64, 0x8c66,
+  0x8c86, 0x8c84, 0x8c85, 0x8ccc, 0x8d68, 0x8d69, 0x8d91, 0x8d8c,
+  0x8d8e, 0x8d8f, 0x8d8d, 0x8d93, 0x8d94, 0x8d90, 0x8d92, 0x8df0,
+  0x8de0, 0x8dec, 0x8df1, 0x8dee, 0x8dd0, 0x8de9, 0x8de3, 0x8de2,
+  0x8de7, 0x8df2, 0x8deb, 0x8df4, 0x8f06, 0x8eff, 0x8f01, 0x8f00,
+  0x8f05, 0x8f07, 0x8f08, 0x8f02, 0x8f0b, 0x9052, 0x903f, 0x9044,
+  0x9049, 0x903d, 0x9110, 0x910d, 0x910f, 0x9111, 0x9116, 0x9114,
+  0x910b, 0x910e, 0x916e, 0x916f, 0x9248, 0x9252, 0x9230, 0x923a,
+  0x9266, 0x9233, 0x9265, 0x925e, 0x9283, 0x922e, 0x924a, 0x9246,
+  0x926d, 0x926c, 0x924f, 0x9260, 0x9267, 0x926f, 0x9236, 0x9261,
+  0x9270, 0x9231, 0x9254, 0x9263, 0x9250, 0x9272, 0x924e, 0x9253,
+  0x924c, 0x9256, 0x9232, 0x959f, 0x959c, 0x959e, 0x959b, 0x9692,
+  0x9693, 0x9691, 0x9697, 0x96ce, 0x96fa, 0x96fd, 0x96f8, 0x96f5,
+  0x9773, 0x9777, 0x9778, 0x9772, 0x980f, 0x980d, 0x980e, 0x98ac,
+  0x98f6, 0x98f9, 0x99af, 0x99b2, 0x99b0, 0x99b5, 0x9aad, 0x9aab,
+  0x9b5b, 0x9cea, 0x9ced, 0x9ce7, 0x9e80, 0x9efd, 0x50e6, 0x50d4,
+  0x50d7, 0x50e8, 0x50f3, 0x50db, 0x50ea, 0x50dd, 0x50e4, 0x50d3,
+  0x50ec, 0x50f0, 0x50ef, 0x50e3, 0x50e0,
+  /* 0xe1 */
+  0x51d8, 0x5280, 0x5281, 0x52e9, 0x52eb, 0x5330, 0x53ac, 0x5627,
+  0x5615, 0x560c, 0x5612, 0x55fc, 0x560f, 0x561c, 0x5601, 0x5613,
+  0x5602, 0x55fa, 0x561d, 0x5604, 0x55ff, 0x55f9, 0x5889, 0x587c,
+  0x5890, 0x5898, 0x5886, 0x5881, 0x587f, 0x5874, 0x588b, 0x587a,
+  0x5887, 0x5891, 0x588e, 0x5876, 0x5882, 0x5888, 0x587b, 0x5894,
+  0x588f, 0x58fe, 0x596b, 0x5adc, 0x5aee, 0x5ae5, 0x5ad5, 0x5aea,
+  0x5ada, 0x5aed, 0x5aeb, 0x5af3, 0x5ae2, 0x5ae0, 0x5adb, 0x5aec,
+  0x5ade, 0x5add, 0x5ad9, 0x5ae8, 0x5adf, 0x5b77, 0x5be0, 0x5be3,
+  0x5c63, 0x5d82, 0x5d80, 0x5d7d, 0x5d86, 0x5d7a, 0x5d81, 0x5d77,
+  0x5d8a, 0x5d89, 0x5d88, 0x5d7e, 0x5d7c, 0x5d8d, 0x5d79, 0x5d7f,
+  0x5e58, 0x5e59, 0x5e53, 0x5ed8, 0x5ed1, 0x5ed7, 0x5ece, 0x5edc,
+  0x5ed5, 0x5ed9, 0x5ed2, 0x5ed4, 0x5f44, 0x5f43, 0x5f6f, 0x5fb6,
+  0x612c, 0x6128, 0x6141, 0x615e, 0x6171, 0x6173, 0x6152, 0x6153,
+  0x6172, 0x616c, 0x6180, 0x6174, 0x6154, 0x617a, 0x615b, 0x6165,
+  0x613b, 0x616a, 0x6161, 0x6156, 0x6229, 0x6227, 0x622b, 0x642b,
+  0x644d, 0x645b, 0x645d, 0x6474, 0x6476, 0x6472, 0x6473, 0x647d,
+  0x6475, 0x6466, 0x64a6, 0x644e, 0x6482, 0x645e, 0x645c, 0x644b,
+  0x6453, 0x6460, 0x6450, 0x647f, 0x643f, 0x646c, 0x646b, 0x6459,
+  0x6465, 0x6477, 0x6573, 0x65a0, 0x66a1, 0x66a0, 0x669f, 0x6705,
+  0x6704, 0x6722, 0x69b1, 0x69b6, 0x69c9,
+  /* 0xe2 */
+  0x69a0, 0x69ce, 0x6996, 0x69b0, 0x69ac, 0x69bc, 0x6991, 0x6999,
+  0x698e, 0x69a7, 0x698d, 0x69a9, 0x69be, 0x69af, 0x69bf, 0x69c4,
+  0x69bd, 0x69a4, 0x69d4, 0x69b9, 0x69ca, 0x699a, 0x69cf, 0x69b3,
+  0x6993, 0x69aa, 0x69a1, 0x699e, 0x69d9, 0x6997, 0x6990, 0x69c2,
+  0x69b5, 0x69a5, 0x69c6, 0x6b4a, 0x6b4d, 0x6b4b, 0x6b9e, 0x6b9f,
+  0x6ba0, 0x6bc3, 0x6bc4, 0x6bfe, 0x6ece, 0x6ef5, 0x6ef1, 0x6f03,
+  0x6f25, 0x6ef8, 0x6f37, 0x6efb, 0x6f2e, 0x6f09, 0x6f4e, 0x6f19,
+  0x6f1a, 0x6f27, 0x6f18, 0x6f3b, 0x6f12, 0x6eed, 0x6f0a, 0x6f36,
+  0x6f73, 0x6ef9, 0x6eee, 0x6f2d, 0x6f40, 0x6f30, 0x6f3c, 0x6f35,
+  0x6eeb, 0x6f07, 0x6f0e, 0x6f43, 0x6f05, 0x6efd, 0x6ef6, 0x6f39,
+  0x6f1c, 0x6efc, 0x6f3a, 0x6f1f, 0x6f0d, 0x6f1e, 0x6f08, 0x6f21,
+  0x7187, 0x7190, 0x7189, 0x7180, 0x7185, 0x7182, 0x718f, 0x717b,
+  0x7186, 0x7181, 0x7197, 0x7244, 0x7253, 0x7297, 0x7295, 0x7293,
+  0x7343, 0x734d, 0x7351, 0x734c, 0x7462, 0x7473, 0x7471, 0x7475,
+  0x7472, 0x7467, 0x746e, 0x7500, 0x7502, 0x7503, 0x757d, 0x7590,
+  0x7616, 0x7608, 0x760c, 0x7615, 0x7611, 0x760a, 0x7614, 0x76b8,
+  0x7781, 0x777c, 0x7785, 0x7782, 0x776e, 0x7780, 0x776f, 0x777e,
+  0x7783, 0x78b2, 0x78aa, 0x78b4, 0x78ad, 0x78a8, 0x787e, 0x78ab,
+  0x789e, 0x78a5, 0x78a0, 0x78ac, 0x78a2, 0x78a4, 0x7998, 0x798a,
+  0x798b, 0x7996, 0x7995, 0x7994, 0x7993,
+  /* 0xe3 */
+  0x7997, 0x7988, 0x7992, 0x7990, 0x7a2b, 0x7a4a, 0x7a30, 0x7a2f,
+  0x7a28, 0x7a26, 0x7aa8, 0x7aab, 0x7aac, 0x7aee, 0x7b88, 0x7b9c,
+  0x7b8a, 0x7b91, 0x7b90, 0x7b96, 0x7b8d, 0x7b8c, 0x7b9b, 0x7b8e,
+  0x7b85, 0x7b98, 0x5284, 0x7b99, 0x7ba4, 0x7b82, 0x7cbb, 0x7cbf,
+  0x7cbc, 0x7cba, 0x7da7, 0x7db7, 0x7dc2, 0x7da3, 0x7daa, 0x7dc1,
+  0x7dc0, 0x7dc5, 0x7d9d, 0x7dce, 0x7dc4, 0x7dc6, 0x7dcb, 0x7dcc,
+  0x7daf, 0x7db9, 0x7d96, 0x7dbc, 0x7d9f, 0x7da6, 0x7dae, 0x7da9,
+  0x7da1, 0x7dc9, 0x7f73, 0x7fe2, 0x7fe3, 0x7fe5, 0x7fde, 0x8024,
+  0x805d, 0x805c, 0x8189, 0x8186, 0x8183, 0x8187, 0x818d, 0x818c,
+  0x818b, 0x8215, 0x8497, 0x84a4, 0x84a1, 0x849f, 0x84ba, 0x84ce,
+  0x84c2, 0x84ac, 0x84ae, 0x84ab, 0x84b9, 0x84b4, 0x84c1, 0x84cd,
+  0x84aa, 0x849a, 0x84b1, 0x84d0, 0x849d, 0x84a7, 0x84bb, 0x84a2,
+  0x8494, 0x84c7, 0x84cc, 0x849b, 0x84a9, 0x84af, 0x84a8, 0x84d6,
+  0x8498, 0x84b6, 0x84cf, 0x84a0, 0x84d7, 0x84d4, 0x84d2, 0x84db,
+  0x84b0, 0x8491, 0x8661, 0x8733, 0x8723, 0x8728, 0x876b, 0x8740,
+  0x872e, 0x871e, 0x8721, 0x8719, 0x871b, 0x8743, 0x872c, 0x8741,
+  0x873e, 0x8746, 0x8720, 0x8732, 0x872a, 0x872d, 0x873c, 0x8712,
+  0x873a, 0x8731, 0x8735, 0x8742, 0x8726, 0x8727, 0x8738, 0x8724,
+  0x871a, 0x8730, 0x8711, 0x88f7, 0x88e7, 0x88f1, 0x88f2, 0x88fa,
+  0x88fe, 0x88ee, 0x88fc, 0x88f6, 0x88fb,
+  /* 0xe4 */
+  0x88f0, 0x88ec, 0x88eb, 0x899d, 0x89a1, 0x899f, 0x899e, 0x89e9,
+  0x89eb, 0x89e8, 0x8aab, 0x8a99, 0x8a8b, 0x8a92, 0x8a8f, 0x8a96,
+  0x8c3d, 0x8c68, 0x8c69, 0x8cd5, 0x8ccf, 0x8cd7, 0x8d96, 0x8e09,
+  0x8e02, 0x8dff, 0x8e0d, 0x8dfd, 0x8e0a, 0x8e03, 0x8e07, 0x8e06,
+  0x8e05, 0x8dfe, 0x8e00, 0x8e04, 0x8f10, 0x8f11, 0x8f0e, 0x8f0d,
+  0x9123, 0x911c, 0x9120, 0x9122, 0x911f, 0x911d, 0x911a, 0x9124,
+  0x9121, 0x911b, 0x917a, 0x9172, 0x9179, 0x9173, 0x92a5, 0x92a4,
+  0x9276, 0x929b, 0x927a, 0x92a0, 0x9294, 0x92aa, 0x928d, 0x92a6,
+  0x929a, 0x92ab, 0x9279, 0x9297, 0x927f, 0x92a3, 0x92ee, 0x928e,
+  0x9282, 0x9295, 0x92a2, 0x927d, 0x9288, 0x92a1, 0x928a, 0x9286,
+  0x928c, 0x9299, 0x92a7, 0x927e, 0x9287, 0x92a9, 0x929d, 0x928b,
+  0x922d, 0x969e, 0x96a1, 0x96ff, 0x9758, 0x977d, 0x977a, 0x977e,
+  0x9783, 0x9780, 0x9782, 0x977b, 0x9784, 0x9781, 0x977f, 0x97ce,
+  0x97cd, 0x9816, 0x98ad, 0x98ae, 0x9902, 0x9900, 0x9907, 0x999d,
+  0x999c, 0x99c3, 0x99b9, 0x99bb, 0x99ba, 0x99c2, 0x99bd, 0x99c7,
+  0x9ab1, 0x9ae3, 0x9ae7, 0x9b3e, 0x9b3f, 0x9b60, 0x9b61, 0x9b5f,
+  0x9cf1, 0x9cf2, 0x9cf5, 0x9ea7, 0x50ff, 0x5103, 0x5130, 0x50f8,
+  0x5106, 0x5107, 0x50f6, 0x50fe, 0x510b, 0x510c, 0x50fd, 0x510a,
+  0x528b, 0x528c, 0x52f1, 0x52ef, 0x5648, 0x5642, 0x564c, 0x5635,
+  0x5641, 0x564a, 0x5649, 0x5646, 0x5658,
+  /* 0xe5 */
+  0x565a, 0x5640, 0x5633, 0x563d, 0x562c, 0x563e, 0x5638, 0x562a,
+  0x563a, 0x571a, 0x58ab, 0x589d, 0x58b1, 0x58a0, 0x58a3, 0x58af,
+  0x58ac, 0x58a5, 0x58a1, 0x58ff, 0x5aff, 0x5af4, 0x5afd, 0x5af7,
+  0x5af6, 0x5b03, 0x5af8, 0x5b02, 0x5af9, 0x5b01, 0x5b07, 0x5b05,
+  0x5b0f, 0x5c67, 0x5d99, 0x5d97, 0x5d9f, 0x5d92, 0x5da2, 0x5d93,
+  0x5d95, 0x5da0, 0x5d9c, 0x5da1, 0x5d9a, 0x5d9e, 0x5e69, 0x5e5d,
+  0x5e60, 0x5e5c, 0x7df3, 0x5edb, 0x5ede, 0x5ee1, 0x5f49, 0x5fb2,
+  0x618b, 0x6183, 0x6179, 0x61b1, 0x61b0, 0x61a2, 0x6189, 0x619b,
+  0x6193, 0x61af, 0x61ad, 0x619f, 0x6192, 0x61aa, 0x61a1, 0x618d,
+  0x6166, 0x61b3, 0x622d, 0x646e, 0x6470, 0x6496, 0x64a0, 0x6485,
+  0x6497, 0x649c, 0x648f, 0x648b, 0x648a, 0x648c, 0x64a3, 0x649f,
+  0x6468, 0x64b1, 0x6498, 0x6576, 0x657a, 0x6579, 0x657b, 0x65b2,
+  0x65b3, 0x66b5, 0x66b0, 0x66a9, 0x66b2, 0x66b7, 0x66aa, 0x66af,
+  0x6a00, 0x6a06, 0x6a17, 0x69e5, 0x69f8, 0x6a15, 0x69f1, 0x69e4,
+  0x6a20, 0x69ff, 0x69ec, 0x69e2, 0x6a1b, 0x6a1d, 0x69fe, 0x6a27,
+  0x69f2, 0x69ee, 0x6a14, 0x69f7, 0x69e7, 0x6a40, 0x6a08, 0x69e6,
+  0x69fb, 0x6a0d, 0x69fc, 0x69eb, 0x6a09, 0x6a04, 0x6a18, 0x6a25,
+  0x6a0f, 0x69f6, 0x6a26, 0x6a07, 0x69f4, 0x6a16, 0x6b51, 0x6ba5,
+  0x6ba3, 0x6ba2, 0x6ba6, 0x6c01, 0x6c00, 0x6bff, 0x6c02, 0x6f41,
+  0x6f26, 0x6f7e, 0x6f87, 0x6fc6, 0x6f92,
+  /* 0xe6 */
+  0x6f8d, 0x6f89, 0x6f8c, 0x6f62, 0x6f4f, 0x6f85, 0x6f5a, 0x6f96,
+  0x6f76, 0x6f6c, 0x6f82, 0x6f55, 0x6f72, 0x6f52, 0x6f50, 0x6f57,
+  0x6f94, 0x6f93, 0x6f5d, 0x6f00, 0x6f61, 0x6f6b, 0x6f7d, 0x6f67,
+  0x6f90, 0x6f53, 0x6f8b, 0x6f69, 0x6f7f, 0x6f95, 0x6f63, 0x6f77,
+  0x6f6a, 0x6f7b, 0x71b2, 0x71af, 0x719b, 0x71b0, 0x71a0, 0x719a,
+  0x71a9, 0x71b5, 0x719d, 0x71a5, 0x719e, 0x71a4, 0x71a1, 0x71aa,
+  0x719c, 0x71a7, 0x71b3, 0x7298, 0x729a, 0x7358, 0x7352, 0x735e,
+  0x735f, 0x7360, 0x735d, 0x735b, 0x7361, 0x735a, 0x7359, 0x7362,
+  0x7487, 0x7489, 0x748a, 0x7486, 0x7481, 0x747d, 0x7485, 0x7488,
+  0x747c, 0x7479, 0x7508, 0x7507, 0x757e, 0x7625, 0x761e, 0x7619,
+  0x761d, 0x761c, 0x7623, 0x761a, 0x7628, 0x761b, 0x769c, 0x769d,
+  0x769e, 0x769b, 0x778d, 0x778f, 0x7789, 0x7788, 0x78cd, 0x78bb,
+  0x78cf, 0x78cc, 0x78d1, 0x78ce, 0x78d4, 0x78c8, 0x78c3, 0x78c4,
+  0x78c9, 0x799a, 0x79a1, 0x79a0, 0x799c, 0x79a2, 0x799b, 0x6b76,
+  0x7a39, 0x7ab2, 0x7ab4, 0x7ab3, 0x7bb7, 0x7bcb, 0x7bbe, 0x7bac,
+  0x7bce, 0x7baf, 0x7bb9, 0x7bca, 0x7bb5, 0x7cc5, 0x7cc8, 0x7ccc,
+  0x7ccb, 0x7df7, 0x7ddb, 0x7dea, 0x7de7, 0x7dd7, 0x7de1, 0x7e03,
+  0x7dfa, 0x7de6, 0x7df6, 0x7df1, 0x7df0, 0x7dee, 0x7ddf, 0x7f76,
+  0x7fac, 0x7fb0, 0x7fad, 0x7fed, 0x7feb, 0x7fea, 0x7fec, 0x7fe6,
+  0x7fe8, 0x8064, 0x8067, 0x81a3, 0x819f,
+  /* 0xe7 */
+  0x819e, 0x8195, 0x81a2, 0x8199, 0x8197, 0x8216, 0x824f, 0x8253,
+  0x8252, 0x8250, 0x824e, 0x8251, 0x8524, 0x853b, 0x850f, 0x8500,
+  0x8529, 0x850e, 0x8509, 0x850d, 0x851f, 0x850a, 0x8527, 0x851c,
+  0x84fb, 0x852b, 0x84fa, 0x8508, 0x850c, 0x84f4, 0x852a, 0x84f2,
+  0x8515, 0x84f7, 0x84eb, 0x84f3, 0x84fc, 0x8512, 0x84ea, 0x84e9,
+  0x8516, 0x84fe, 0x8528, 0x851d, 0x852e, 0x8502, 0x84fd, 0x851e,
+  0x84f6, 0x8531, 0x8526, 0x84e7, 0x84e8, 0x84f0, 0x84ef, 0x84f9,
+  0x8518, 0x8520, 0x8530, 0x850b, 0x8519, 0x852f, 0x8662, 0x8756,
+  0x8763, 0x8764, 0x8777, 0x87e1, 0x8773, 0x8758, 0x8754, 0x875b,
+  0x8752, 0x8761, 0x875a, 0x8751, 0x875e, 0x876d, 0x876a, 0x8750,
+  0x874e, 0x875f, 0x875d, 0x876f, 0x876c, 0x877a, 0x876e, 0x875c,
+  0x8765, 0x874f, 0x877b, 0x8775, 0x8762, 0x8767, 0x8769, 0x885a,
+  0x8905, 0x890c, 0x8914, 0x890b, 0x8917, 0x8918, 0x8919, 0x8906,
+  0x8916, 0x8911, 0x890e, 0x8909, 0x89a2, 0x89a4, 0x89a3, 0x89ed,
+  0x89f0, 0x89ec, 0x8acf, 0x8ac6, 0x8ab8, 0x8ad3, 0x8ad1, 0x8ad4,
+  0x8ad5, 0x8abb, 0x8ad7, 0x8abe, 0x8ac0, 0x8ac5, 0x8ad8, 0x8ac3,
+  0x8aba, 0x8abd, 0x8ad9, 0x8c3e, 0x8c4d, 0x8c8f, 0x8ce5, 0x8cdf,
+  0x8cd9, 0x8ce8, 0x8cda, 0x8cdd, 0x8ce7, 0x8da0, 0x8d9c, 0x8da1,
+  0x8d9b, 0x8e20, 0x8e23, 0x8e25, 0x8e24, 0x8e2e, 0x8e15, 0x8e1b,
+  0x8e16, 0x8e11, 0x8e19, 0x8e26, 0x8e27,
+  /* 0xe8 */
+  0x8e14, 0x8e12, 0x8e18, 0x8e13, 0x8e1c, 0x8e17, 0x8e1a, 0x8f2c,
+  0x8f24, 0x8f18, 0x8f1a, 0x8f20, 0x8f23, 0x8f16, 0x8f17, 0x9073,
+  0x9070, 0x906f, 0x9067, 0x906b, 0x912f, 0x912b, 0x9129, 0x912a,
+  0x9132, 0x9126, 0x912e, 0x9185, 0x9186, 0x918a, 0x9181, 0x9182,
+  0x9184, 0x9180, 0x92d0, 0x92c3, 0x92c4, 0x92c0, 0x92d9, 0x92b6,
+  0x92cf, 0x92f1, 0x92df, 0x92d8, 0x92e9, 0x92d7, 0x92dd, 0x92cc,
+  0x92ef, 0x92c2, 0x92e8, 0x92ca, 0x92c8, 0x92ce, 0x92e6, 0x92cd,
+  0x92d5, 0x92c9, 0x92e0, 0x92de, 0x92e7, 0x92d1, 0x92d3, 0x92b5,
+  0x92e1, 0x92c6, 0x92b4, 0x957c, 0x95ac, 0x95ab, 0x95ae, 0x95b0,
+  0x96a4, 0x96a2, 0x96d3, 0x9705, 0x9708, 0x9702, 0x975a, 0x978a,
+  0x978e, 0x9788, 0x97d0, 0x97cf, 0x981e, 0x981d, 0x9826, 0x9829,
+  0x9828, 0x9820, 0x981b, 0x9827, 0x98b2, 0x9908, 0x98fa, 0x9911,
+  0x9914, 0x9916, 0x9917, 0x9915, 0x99dc, 0x99cd, 0x99cf, 0x99d3,
+  0x99d4, 0x99ce, 0x99c9, 0x99d6, 0x99d8, 0x99cb, 0x99d7, 0x99cc,
+  0x9ab3, 0x9aec, 0x9aeb, 0x9af3, 0x9af2, 0x9af1, 0x9b46, 0x9b43,
+  0x9b67, 0x9b74, 0x9b71, 0x9b66, 0x9b76, 0x9b75, 0x9b70, 0x9b68,
+  0x9b64, 0x9b6c, 0x9cfc, 0x9cfa, 0x9cfd, 0x9cff, 0x9cf7, 0x9d07,
+  0x9d00, 0x9cf9, 0x9cfb, 0x9d08, 0x9d05, 0x9d04, 0x9e83, 0x9ed3,
+  0x9f0f, 0x9f10, 0x511c, 0x5113, 0x5117, 0x511a, 0x5111, 0x51de,
+  0x5334, 0x53e1, 0x5670, 0x5660, 0x566e,
+  /* 0xe9 */
+  0x5673, 0x5666, 0x5663, 0x566d, 0x5672, 0x565e, 0x5677, 0x571c,
+  0x571b, 0x58c8, 0x58bd, 0x58c9, 0x58bf, 0x58ba, 0x58c2, 0x58bc,
+  0x58c6, 0x5b17, 0x5b19, 0x5b1b, 0x5b21, 0x5b14, 0x5b13, 0x5b10,
+  0x5b16, 0x5b28, 0x5b1a, 0x5b20, 0x5b1e, 0x5bef, 0x5dac, 0x5db1,
+  0x5da9, 0x5da7, 0x5db5, 0x5db0, 0x5dae, 0x5daa, 0x5da8, 0x5db2,
+  0x5dad, 0x5daf, 0x5db4, 0x5e67, 0x5e68, 0x5e66, 0x5e6f, 0x5ee9,
+  0x5ee7, 0x5ee6, 0x5ee8, 0x5ee5, 0x5f4b, 0x5fbc, 0x619d, 0x61a8,
+  0x6196, 0x61c5, 0x61b4, 0x61c6, 0x61c1, 0x61cc, 0x61ba, 0x61bf,
+  0x61b8, 0x618c, 0x64d7, 0x64d6, 0x64d0, 0x64cf, 0x64c9, 0x64bd,
+  0x6489, 0x64c3, 0x64db, 0x64f3, 0x64d9, 0x6533, 0x657f, 0x657c,
+  0x65a2, 0x66c8, 0x66be, 0x66c0, 0x66ca, 0x66cb, 0x66cf, 0x66bd,
+  0x66bb, 0x66ba, 0x66cc, 0x6723, 0x6a34, 0x6a66, 0x6a49, 0x6a67,
+  0x6a32, 0x6a68, 0x6a3e, 0x6a5d, 0x6a6d, 0x6a76, 0x6a5b, 0x6a51,
+  0x6a28, 0x6a5a, 0x6a3b, 0x6a3f, 0x6a41, 0x6a6a, 0x6a64, 0x6a50,
+  0x6a4f, 0x6a54, 0x6a6f, 0x6a69, 0x6a60, 0x6a3c, 0x6a5e, 0x6a56,
+  0x6a55, 0x6a4d, 0x6a4e, 0x6a46, 0x6b55, 0x6b54, 0x6b56, 0x6ba7,
+  0x6baa, 0x6bab, 0x6bc8, 0x6bc7, 0x6c04, 0x6c03, 0x6c06, 0x6fad,
+  0x6fcb, 0x6fa3, 0x6fc7, 0x6fbc, 0x6fce, 0x6fc8, 0x6f5e, 0x6fc4,
+  0x6fbd, 0x6f9e, 0x6fca, 0x6fa8, 0x7004, 0x6fa5, 0x6fae, 0x6fba,
+  0x6fac, 0x6faa, 0x6fcf, 0x6fbf, 0x6fb8,
+  /* 0xea */
+  0x6fa2, 0x6fc9, 0x6fab, 0x6fcd, 0x6faf, 0x6fb2, 0x6fb0, 0x71c5,
+  0x71c2, 0x71bf, 0x71b8, 0x71d6, 0x71c0, 0x71c1, 0x71cb, 0x71d4,
+  0x71ca, 0x71c7, 0x71cf, 0x71bd, 0x71d8, 0x71bc, 0x71c6, 0x71da,
+  0x71db, 0x729d, 0x729e, 0x7369, 0x7366, 0x7367, 0x736c, 0x7365,
+  0x736b, 0x736a, 0x747f, 0x749a, 0x74a0, 0x7494, 0x7492, 0x7495,
+  0x74a1, 0x750b, 0x7580, 0x762f, 0x762d, 0x7631, 0x763d, 0x7633,
+  0x763c, 0x7635, 0x7632, 0x7630, 0x76bb, 0x76e6, 0x779a, 0x779d,
+  0x77a1, 0x779c, 0x779b, 0x77a2, 0x77a3, 0x7795, 0x7799, 0x7797,
+  0x78dd, 0x78e9, 0x78e5, 0x78ea, 0x78de, 0x78e3, 0x78db, 0x78e1,
+  0x78e2, 0x78ed, 0x78df, 0x78e0, 0x79a4, 0x7a44, 0x7a48, 0x7a47,
+  0x7ab6, 0x7ab8, 0x7ab5, 0x7ab1, 0x7ab7, 0x7bde, 0x7be3, 0x7be7,
+  0x7bdd, 0x7bd5, 0x7be5, 0x7bda, 0x7be8, 0x7bf9, 0x7bd4, 0x7bea,
+  0x7be2, 0x7bdc, 0x7beb, 0x7bd8, 0x7bdf, 0x7cd2, 0x7cd4, 0x7cd7,
+  0x7cd0, 0x7cd1, 0x7e12, 0x7e21, 0x7e17, 0x7e0c, 0x7e1f, 0x7e20,
+  0x7e13, 0x7e0e, 0x7e1c, 0x7e15, 0x7e1a, 0x7e22, 0x7e0b, 0x7e0f,
+  0x7e16, 0x7e0d, 0x7e14, 0x7e25, 0x7e24, 0x7f43, 0x7f7b, 0x7f7c,
+  0x7f7a, 0x7fb1, 0x7fef, 0x802a, 0x8029, 0x806c, 0x81b1, 0x81a6,
+  0x81ae, 0x81b9, 0x81b5, 0x81ab, 0x81b0, 0x81ac, 0x81b4, 0x81b2,
+  0x81b7, 0x81a7, 0x81f2, 0x8255, 0x8256, 0x8257, 0x8556, 0x8545,
+  0x856b, 0x854d, 0x8553, 0x8561, 0x8558,
+  /* 0xeb */
+  0x8540, 0x8546, 0x8564, 0x8541, 0x8562, 0x8544, 0x8551, 0x8547,
+  0x8563, 0x853e, 0x855b, 0x8571, 0x854e, 0x856e, 0x8575, 0x8555,
+  0x8567, 0x8560, 0x858c, 0x8566, 0x855d, 0x8554, 0x8565, 0x856c,
+  0x8663, 0x8665, 0x8664, 0x879b, 0x878f, 0x8797, 0x8793, 0x8792,
+  0x8788, 0x8781, 0x8796, 0x8798, 0x8779, 0x8787, 0x87a3, 0x8785,
+  0x8790, 0x8791, 0x879d, 0x8784, 0x8794, 0x879c, 0x879a, 0x8789,
+  0x891e, 0x8926, 0x8930, 0x892d, 0x892e, 0x8927, 0x8931, 0x8922,
+  0x8929, 0x8923, 0x892f, 0x892c, 0x891f, 0x89f1, 0x8ae0, 0x8ae2,
+  0x8af2, 0x8af4, 0x8af5, 0x8add, 0x8b14, 0x8ae4, 0x8adf, 0x8af0,
+  0x8ac8, 0x8ade, 0x8ae1, 0x8ae8, 0x8aff, 0x8aef, 0x8afb, 0x8c91,
+  0x8c92, 0x8c90, 0x8cf5, 0x8cee, 0x8cf1, 0x8cf0, 0x8cf3, 0x8d6c,
+  0x8d6e, 0x8da5, 0x8da7, 0x8e33, 0x8e3e, 0x8e38, 0x8e40, 0x8e45,
+  0x8e36, 0x8e3c, 0x8e3d, 0x8e41, 0x8e30, 0x8e3f, 0x8ebd, 0x8f36,
+  0x8f2e, 0x8f35, 0x8f32, 0x8f39, 0x8f37, 0x8f34, 0x9076, 0x9079,
+  0x907b, 0x9086, 0x90fa, 0x9133, 0x9135, 0x9136, 0x9193, 0x9190,
+  0x9191, 0x918d, 0x918f, 0x9327, 0x931e, 0x9308, 0x931f, 0x9306,
+  0x930f, 0x937a, 0x9338, 0x933c, 0x931b, 0x9323, 0x9312, 0x9301,
+  0x9346, 0x932d, 0x930e, 0x930d, 0x92cb, 0x931d, 0x92fa, 0x9325,
+  0x9313, 0x92f9, 0x92f7, 0x9334, 0x9302, 0x9324, 0x92ff, 0x9329,
+  0x9339, 0x9335, 0x932a, 0x9314, 0x930c,
+  /* 0xec */
+  0x930b, 0x92fe, 0x9309, 0x9300, 0x92fb, 0x9316, 0x95bc, 0x95cd,
+  0x95be, 0x95b9, 0x95ba, 0x95b6, 0x95bf, 0x95b5, 0x95bd, 0x96a9,
+  0x96d4, 0x970b, 0x9712, 0x9710, 0x9799, 0x9797, 0x9794, 0x97f0,
+  0x97f8, 0x9835, 0x982f, 0x9832, 0x9924, 0x991f, 0x9927, 0x9929,
+  0x999e, 0x99ee, 0x99ec, 0x99e5, 0x99e4, 0x99f0, 0x99e3, 0x99ea,
+  0x99e9, 0x99e7, 0x9ab9, 0x9abf, 0x9ab4, 0x9abb, 0x9af6, 0x9afa,
+  0x9af9, 0x9af7, 0x9b33, 0x9b80, 0x9b85, 0x9b87, 0x9b7c, 0x9b7e,
+  0x9b7b, 0x9b82, 0x9b93, 0x9b92, 0x9b90, 0x9b7a, 0x9b95, 0x9b7d,
+  0x9b88, 0x9d25, 0x9d17, 0x9d20, 0x9d1e, 0x9d14, 0x9d29, 0x9d1d,
+  0x9d18, 0x9d22, 0x9d10, 0x9d19, 0x9d1f, 0x9e88, 0x9e86, 0x9e87,
+  0x9eae, 0x9ead, 0x9ed5, 0x9ed6, 0x9efa, 0x9f12, 0x9f3d, 0x5126,
+  0x5125, 0x5122, 0x5124, 0x5120, 0x5129, 0x52f4, 0x5693, 0x568c,
+  0x568d, 0x5686, 0x5684, 0x5683, 0x567e, 0x5682, 0x567f, 0x5681,
+  0x58d6, 0x58d4, 0x58cf, 0x58d2, 0x5b2d, 0x5b25, 0x5b32, 0x5b23,
+  0x5b2c, 0x5b27, 0x5b26, 0x5b2f, 0x5b2e, 0x5b7b, 0x5bf1, 0x5bf2,
+  0x5db7, 0x5e6c, 0x5e6a, 0x5fbe, 0x5fbb, 0x61c3, 0x61b5, 0x61bc,
+  0x61e7, 0x61e0, 0x61e5, 0x61e4, 0x61e8, 0x61de, 0x64ef, 0x64e9,
+  0x64e3, 0x64eb, 0x64e4, 0x64e8, 0x6581, 0x6580, 0x65b6, 0x65da,
+  0x66d2, 0x6a8d, 0x6a96, 0x6a81, 0x6aa5, 0x6a89, 0x6a9f, 0x6a9b,
+  0x6aa1, 0x6a9e, 0x6a87, 0x6a93, 0x6a8e,
+  /* 0xed */
+  0x6a95, 0x6a83, 0x6aa8, 0x6aa4, 0x6a91, 0x6a7f, 0x6aa6, 0x6a9a,
+  0x6a85, 0x6a8c, 0x6a92, 0x6b5b, 0x6bad, 0x6c09, 0x6fcc, 0x6fa9,
+  0x6ff4, 0x6fd4, 0x6fe3, 0x6fdc, 0x6fed, 0x6fe7, 0x6fe6, 0x6fde,
+  0x6ff2, 0x6fdd, 0x6fe2, 0x6fe8, 0x71e1, 0x71f1, 0x71e8, 0x71f2,
+  0x71e4, 0x71f0, 0x71e2, 0x7373, 0x736e, 0x736f, 0x7497, 0x74b2,
+  0x74ab, 0x7490, 0x74aa, 0x74ad, 0x74b1, 0x74a5, 0x74af, 0x7510,
+  0x7511, 0x7512, 0x750f, 0x7584, 0x7643, 0x7648, 0x7649, 0x7647,
+  0x76a4, 0x76e9, 0x77b5, 0x77ab, 0x77b2, 0x77b7, 0x77b6, 0x77b4,
+  0x77b1, 0x77a8, 0x77f0, 0x78f3, 0x78fd, 0x7902, 0x78fb, 0x78fc,
+  0x78f2, 0x7905, 0x78f9, 0x78fe, 0x7904, 0x79ab, 0x79a8, 0x7a5c,
+  0x7a5b, 0x7a56, 0x7a58, 0x7a54, 0x7a5a, 0x7abe, 0x7ac0, 0x7ac1,
+  0x7c05, 0x7c0f, 0x7bf2, 0x7c00, 0x7bff, 0x7bfb, 0x7c0e, 0x7bf4,
+  0x7c0b, 0x7bf3, 0x7c02, 0x7c09, 0x7c03, 0x7c01, 0x7bf8, 0x7bfd,
+  0x7c06, 0x7bf0, 0x7bf1, 0x7c10, 0x7c0a, 0x7ce8, 0x7e2d, 0x7e3c,
+  0x7e42, 0x7e33, 0x9848, 0x7e38, 0x7e2a, 0x7e49, 0x7e40, 0x7e47,
+  0x7e29, 0x7e4c, 0x7e30, 0x7e3b, 0x7e36, 0x7e44, 0x7e3a, 0x7f45,
+  0x7f7f, 0x7f7e, 0x7f7d, 0x7ff4, 0x7ff2, 0x802c, 0x81bb, 0x81c4,
+  0x81cc, 0x81ca, 0x81c5, 0x81c7, 0x81bc, 0x81e9, 0x825b, 0x825a,
+  0x825c, 0x8583, 0x8580, 0x858f, 0x85a7, 0x8595, 0x85a0, 0x858b,
+  0x85a3, 0x857b, 0x85a4, 0x859a, 0x859e,
+  /* 0xee */
+  0x8577, 0x857c, 0x8589, 0x85a1, 0x857a, 0x8578, 0x8557, 0x858e,
+  0x8596, 0x8586, 0x858d, 0x8599, 0x859d, 0x8581, 0x85a2, 0x8582,
+  0x8588, 0x8585, 0x8579, 0x8576, 0x8598, 0x8590, 0x859f, 0x8668,
+  0x87be, 0x87aa, 0x87ad, 0x87c5, 0x87b0, 0x87ac, 0x87b9, 0x87b5,
+  0x87bc, 0x87ae, 0x87c9, 0x87c3, 0x87c2, 0x87cc, 0x87b7, 0x87af,
+  0x87c4, 0x87ca, 0x87b4, 0x87b6, 0x87bf, 0x87b8, 0x87bd, 0x87de,
+  0x87b2, 0x8935, 0x8933, 0x893c, 0x893e, 0x8941, 0x8952, 0x8937,
+  0x8942, 0x89ad, 0x89af, 0x89ae, 0x89f2, 0x89f3, 0x8b1e, 0x8b18,
+  0x8b16, 0x8b11, 0x8b05, 0x8b0b, 0x8b22, 0x8b0f, 0x8b12, 0x8b15,
+  0x8b07, 0x8b0d, 0x8b08, 0x8b06, 0x8b1c, 0x8b13, 0x8b1a, 0x8c4f,
+  0x8c70, 0x8c72, 0x8c71, 0x8c6f, 0x8c95, 0x8c94, 0x8cf9, 0x8d6f,
+  0x8e4e, 0x8e4d, 0x8e53, 0x8e50, 0x8e4c, 0x8e47, 0x8f43, 0x8f40,
+  0x9085, 0x907e, 0x9138, 0x919a, 0x91a2, 0x919b, 0x9199, 0x919f,
+  0x91a1, 0x919d, 0x91a0, 0x93a1, 0x9383, 0x93af, 0x9364, 0x9356,
+  0x9347, 0x937c, 0x9358, 0x935c, 0x9376, 0x9349, 0x9350, 0x9351,
+  0x9360, 0x936d, 0x938f, 0x934c, 0x936a, 0x9379, 0x9357, 0x9355,
+  0x9352, 0x934f, 0x9371, 0x9377, 0x937b, 0x9361, 0x935e, 0x9363,
+  0x9367, 0x9380, 0x934e, 0x9359, 0x95c7, 0x95c0, 0x95c9, 0x95c3,
+  0x95c5, 0x95b7, 0x96ae, 0x96b0, 0x96ac, 0x9720, 0x971f, 0x9718,
+  0x971d, 0x9719, 0x979a, 0x97a1, 0x979c,
+  /* 0xef */
+  0x979e, 0x979d, 0x97d5, 0x97d4, 0x97f1, 0x9841, 0x9844, 0x984a,
+  0x9849, 0x9845, 0x9843, 0x9925, 0x992b, 0x992c, 0x992a, 0x9933,
+  0x9932, 0x992f, 0x992d, 0x9931, 0x9930, 0x9998, 0x99a3, 0x99a1,
+  0x9a02, 0x99fa, 0x99f4, 0x99f7, 0x99f9, 0x99f8, 0x99f6, 0x99fb,
+  0x99fd, 0x99fe, 0x99fc, 0x9a03, 0x9abe, 0x9afe, 0x9afd, 0x9b01,
+  0x9afc, 0x9b48, 0x9b9a, 0x9ba8, 0x9b9e, 0x9b9b, 0x9ba6, 0x9ba1,
+  0x9ba5, 0x9ba4, 0x9b86, 0x9ba2, 0x9ba0, 0x9baf, 0x9d33, 0x9d41,
+  0x9d67, 0x9d36, 0x9d2e, 0x9d2f, 0x9d31, 0x9d38, 0x9d30, 0x9d45,
+  0x9d42, 0x9d43, 0x9d3e, 0x9d37, 0x9d40, 0x9d3d, 0x7ff5, 0x9d2d,
+  0x9e8a, 0x9e89, 0x9e8d, 0x9eb0, 0x9ec8, 0x9eda, 0x9efb, 0x9eff,
+  0x9f24, 0x9f23, 0x9f22, 0x9f54, 0x9fa0, 0x5131, 0x512d, 0x512e,
+  0x5698, 0x569c, 0x5697, 0x569a, 0x569d, 0x5699, 0x5970, 0x5b3c,
+  0x5c69, 0x5c6a, 0x5dc0, 0x5e6d, 0x5e6e, 0x61d8, 0x61df, 0x61ed,
+  0x61ee, 0x61f1, 0x61ea, 0x61f0, 0x61eb, 0x61d6, 0x61e9, 0x64ff,
+  0x6504, 0x64fd, 0x64f8, 0x6501, 0x6503, 0x64fc, 0x6594, 0x65db,
+  0x66da, 0x66db, 0x66d8, 0x6ac5, 0x6ab9, 0x6abd, 0x6ae1, 0x6ac6,
+  0x6aba, 0x6ab6, 0x6ab7, 0x6ac7, 0x6ab4, 0x6aad, 0x6b5e, 0x6bc9,
+  0x6c0b, 0x7007, 0x700c, 0x700d, 0x7001, 0x7005, 0x7014, 0x700e,
+  0x6fff, 0x7000, 0x6ffb, 0x7026, 0x6ffc, 0x6ff7, 0x700a, 0x7201,
+  0x71ff, 0x71f9, 0x7203, 0x71fd, 0x7376,
+  /* 0xf0 */
+  0x74b8, 0x74c0, 0x74b5, 0x74c1, 0x74be, 0x74b6, 0x74bb, 0x74c2,
+  0x7514, 0x7513, 0x765c, 0x7664, 0x7659, 0x7650, 0x7653, 0x7657,
+  0x765a, 0x76a6, 0x76bd, 0x76ec, 0x77c2, 0x77ba, 0x78ff, 0x790c,
+  0x7913, 0x7914, 0x7909, 0x7910, 0x7912, 0x7911, 0x79ad, 0x79ac,
+  0x7a5f, 0x7c1c, 0x7c29, 0x7c19, 0x7c20, 0x7c1f, 0x7c2d, 0x7c1d,
+  0x7c26, 0x7c28, 0x7c22, 0x7c25, 0x7c30, 0x7e5c, 0x7e50, 0x7e56,
+  0x7e63, 0x7e58, 0x7e62, 0x7e5f, 0x7e51, 0x7e60, 0x7e57, 0x7e53,
+  0x7fb5, 0x7fb3, 0x7ff7, 0x7ff8, 0x8075, 0x81d1, 0x81d2, 0x81d0,
+  0x825f, 0x825e, 0x85b4, 0x85c6, 0x85c0, 0x85c3, 0x85c2, 0x85b3,
+  0x85b5, 0x85bd, 0x85c7, 0x85c4, 0x85bf, 0x85cb, 0x85ce, 0x85c8,
+  0x85c5, 0x85b1, 0x85b6, 0x85d2, 0x8624, 0x85b8, 0x85b7, 0x85be,
+  0x8669, 0x87e7, 0x87e6, 0x87e2, 0x87db, 0x87eb, 0x87ea, 0x87e5,
+  0x87df, 0x87f3, 0x87e4, 0x87d4, 0x87dc, 0x87d3, 0x87ed, 0x87d8,
+  0x87e3, 0x87a4, 0x87d7, 0x87d9, 0x8801, 0x87f4, 0x87e8, 0x87dd,
+  0x8953, 0x894b, 0x894f, 0x894c, 0x8946, 0x8950, 0x8951, 0x8949,
+  0x8b2a, 0x8b27, 0x8b23, 0x8b33, 0x8b30, 0x8b35, 0x8b47, 0x8b2f,
+  0x8b3c, 0x8b3e, 0x8b31, 0x8b25, 0x8b37, 0x8b26, 0x8b36, 0x8b2e,
+  0x8b24, 0x8b3b, 0x8b3d, 0x8b3a, 0x8c42, 0x8c75, 0x8c99, 0x8c98,
+  0x8c97, 0x8cfe, 0x8d04, 0x8d02, 0x8d00, 0x8e5c, 0x8e62, 0x8e60,
+  0x8e57, 0x8e56, 0x8e5e, 0x8e65, 0x8e67,
+  /* 0xf1 */
+  0x8e5b, 0x8e5a, 0x8e61, 0x8e5d, 0x8e69, 0x8e54, 0x8f46, 0x8f47,
+  0x8f48, 0x8f4b, 0x9128, 0x913a, 0x913b, 0x913e, 0x91a8, 0x91a5,
+  0x91a7, 0x91af, 0x91aa, 0x93b5, 0x938c, 0x9392, 0x93b7, 0x939b,
+  0x939d, 0x9389, 0x93a7, 0x938e, 0x93aa, 0x939e, 0x93a6, 0x9395,
+  0x9388, 0x9399, 0x939f, 0x938d, 0x93b1, 0x9391, 0x93b2, 0x93a4,
+  0x93a8, 0x93b4, 0x93a3, 0x93a5, 0x95d2, 0x95d3, 0x95d1, 0x96b3,
+  0x96d7, 0x96da, 0x5dc2, 0x96df, 0x96d8, 0x96dd, 0x9723, 0x9722,
+  0x9725, 0x97ac, 0x97ae, 0x97a8, 0x97ab, 0x97a4, 0x97aa, 0x97a2,
+  0x97a5, 0x97d7, 0x97d9, 0x97d6, 0x97d8, 0x97fa, 0x9850, 0x9851,
+  0x9852, 0x98b8, 0x9941, 0x993c, 0x993a, 0x9a0f, 0x9a0b, 0x9a09,
+  0x9a0d, 0x9a04, 0x9a11, 0x9a0a, 0x9a05, 0x9a07, 0x9a06, 0x9ac0,
+  0x9adc, 0x9b08, 0x9b04, 0x9b05, 0x9b29, 0x9b35, 0x9b4a, 0x9b4c,
+  0x9b4b, 0x9bc7, 0x9bc6, 0x9bc3, 0x9bbf, 0x9bc1, 0x9bb5, 0x9bb8,
+  0x9bd3, 0x9bb6, 0x9bc4, 0x9bb9, 0x9bbd, 0x9d5c, 0x9d53, 0x9d4f,
+  0x9d4a, 0x9d5b, 0x9d4b, 0x9d59, 0x9d56, 0x9d4c, 0x9d57, 0x9d52,
+  0x9d54, 0x9d5f, 0x9d58, 0x9d5a, 0x9e8e, 0x9e8c, 0x9edf, 0x9f01,
+  0x9f00, 0x9f16, 0x9f25, 0x9f2b, 0x9f2a, 0x9f29, 0x9f28, 0x9f4c,
+  0x9f55, 0x5134, 0x5135, 0x5296, 0x52f7, 0x53b4, 0x56ab, 0x56ad,
+  0x56a6, 0x56a7, 0x56aa, 0x56ac, 0x58da, 0x58dd, 0x58db, 0x5912,
+  0x5b3d, 0x5b3e, 0x5b3f, 0x5dc3, 0x5e70,
+  /* 0xf2 */
+  0x5fbf, 0x61fb, 0x6507, 0x6510, 0x650d, 0x6509, 0x650c, 0x650e,
+  0x6584, 0x65de, 0x65dd, 0x66de, 0x6ae7, 0x6ae0, 0x6acc, 0x6ad1,
+  0x6ad9, 0x6acb, 0x6adf, 0x6adc, 0x6ad0, 0x6aeb, 0x6acf, 0x6acd,
+  0x6ade, 0x6b60, 0x6bb0, 0x6c0c, 0x7019, 0x7027, 0x7020, 0x7016,
+  0x702b, 0x7021, 0x7022, 0x7023, 0x7029, 0x7017, 0x7024, 0x701c,
+  0x702a, 0x720c, 0x720a, 0x7207, 0x7202, 0x7205, 0x72a5, 0x72a6,
+  0x72a4, 0x72a3, 0x72a1, 0x74cb, 0x74c5, 0x74b7, 0x74c3, 0x7516,
+  0x7660, 0x77c9, 0x77ca, 0x77c4, 0x77f1, 0x791d, 0x791b, 0x7921,
+  0x791c, 0x7917, 0x791e, 0x79b0, 0x7a67, 0x7a68, 0x7c33, 0x7c3c,
+  0x7c39, 0x7c2c, 0x7c3b, 0x7cec, 0x7cea, 0x7e76, 0x7e75, 0x7e78,
+  0x7e70, 0x7e77, 0x7e6f, 0x7e7a, 0x7e72, 0x7e74, 0x7e68, 0x7f4b,
+  0x7f4a, 0x7f83, 0x7f86, 0x7fb7, 0x7ffd, 0x7ffe, 0x8078, 0x81d7,
+  0x81d5, 0x8264, 0x8261, 0x8263, 0x85eb, 0x85f1, 0x85ed, 0x85d9,
+  0x85e1, 0x85e8, 0x85da, 0x85d7, 0x85ec, 0x85f2, 0x85f8, 0x85d8,
+  0x85df, 0x85e3, 0x85dc, 0x85d1, 0x85f0, 0x85e6, 0x85ef, 0x85de,
+  0x85e2, 0x8800, 0x87fa, 0x8803, 0x87f6, 0x87f7, 0x8809, 0x880c,
+  0x880b, 0x8806, 0x87fc, 0x8808, 0x87ff, 0x880a, 0x8802, 0x8962,
+  0x895a, 0x895b, 0x8957, 0x8961, 0x895c, 0x8958, 0x895d, 0x8959,
+  0x8988, 0x89b7, 0x89b6, 0x89f6, 0x8b50, 0x8b48, 0x8b4a, 0x8b40,
+  0x8b53, 0x8b56, 0x8b54, 0x8b4b, 0x8b55,
+  /* 0xf3 */
+  0x8b51, 0x8b42, 0x8b52, 0x8b57, 0x8c43, 0x8c77, 0x8c76, 0x8c9a,
+  0x8d06, 0x8d07, 0x8d09, 0x8dac, 0x8daa, 0x8dad, 0x8dab, 0x8e6d,
+  0x8e78, 0x8e73, 0x8e6a, 0x8e6f, 0x8e7b, 0x8ec2, 0x8f52, 0x8f51,
+  0x8f4f, 0x8f50, 0x8f53, 0x8fb4, 0x9140, 0x913f, 0x91b0, 0x91ad,
+  0x93de, 0x93c7, 0x93cf, 0x93c2, 0x93da, 0x93d0, 0x93f9, 0x93ec,
+  0x93cc, 0x93d9, 0x93a9, 0x93e6, 0x93ca, 0x93d4, 0x93ee, 0x93e3,
+  0x93d5, 0x93c4, 0x93ce, 0x93c0, 0x93d2, 0x93e7, 0x957d, 0x95da,
+  0x95db, 0x96e1, 0x9729, 0x972b, 0x972c, 0x9728, 0x9726, 0x97b3,
+  0x97b7, 0x97b6, 0x97dd, 0x97de, 0x97df, 0x985c, 0x9859, 0x985d,
+  0x9857, 0x98bf, 0x98bd, 0x98bb, 0x98be, 0x9948, 0x9947, 0x9943,
+  0x99a6, 0x99a7, 0x9a1a, 0x9a15, 0x9a25, 0x9a1d, 0x9a24, 0x9a1b,
+  0x9a22, 0x9a20, 0x9a27, 0x9a23, 0x9a1e, 0x9a1c, 0x9a14, 0x9ac2,
+  0x9b0b, 0x9b0a, 0x9b0e, 0x9b0c, 0x9b37, 0x9bea, 0x9beb, 0x9be0,
+  0x9bde, 0x9be4, 0x9be6, 0x9be2, 0x9bf0, 0x9bd4, 0x9bd7, 0x9bec,
+  0x9bdc, 0x9bd9, 0x9be5, 0x9bd5, 0x9be1, 0x9bda, 0x9d77, 0x9d81,
+  0x9d8a, 0x9d84, 0x9d88, 0x9d71, 0x9d80, 0x9d78, 0x9d86, 0x9d8b,
+  0x9d8c, 0x9d7d, 0x9d6b, 0x9d74, 0x9d75, 0x9d70, 0x9d69, 0x9d85,
+  0x9d73, 0x9d7b, 0x9d82, 0x9d6f, 0x9d79, 0x9d7f, 0x9d87, 0x9d68,
+  0x9e94, 0x9e91, 0x9ec0, 0x9efc, 0x9f2d, 0x9f40, 0x9f41, 0x9f4d,
+  0x9f56, 0x9f57, 0x9f58, 0x5337, 0x56b2,
+  /* 0xf4 */
+  0x56b5, 0x56b3, 0x58e3, 0x5b45, 0x5dc6, 0x5dc7, 0x5eee, 0x5eef,
+  0x5fc0, 0x5fc1, 0x61f9, 0x6517, 0x6516, 0x6515, 0x6513, 0x65df,
+  0x66e8, 0x66e3, 0x66e4, 0x6af3, 0x6af0, 0x6aea, 0x6ae8, 0x6af9,
+  0x6af1, 0x6aee, 0x6aef, 0x703c, 0x7035, 0x702f, 0x7037, 0x7034,
+  0x7031, 0x7042, 0x7038, 0x703f, 0x703a, 0x7039, 0x7040, 0x703b,
+  0x7033, 0x7041, 0x7213, 0x7214, 0x72a8, 0x737d, 0x737c, 0x74ba,
+  0x76ab, 0x76aa, 0x76be, 0x76ed, 0x77cc, 0x77ce, 0x77cf, 0x77cd,
+  0x77f2, 0x7925, 0x7923, 0x7927, 0x7928, 0x7924, 0x7929, 0x79b2,
+  0x7a6e, 0x7a6c, 0x7a6d, 0x7af7, 0x7c49, 0x7c48, 0x7c4a, 0x7c47,
+  0x7c45, 0x7cee, 0x7e7b, 0x7e7e, 0x7e81, 0x7e80, 0x7fba, 0x7fff,
+  0x8079, 0x81db, 0x81d9, 0x820b, 0x8268, 0x8269, 0x8622, 0x85ff,
+  0x8601, 0x85fe, 0x861b, 0x8600, 0x85f6, 0x8604, 0x8609, 0x8605,
+  0x860c, 0x85fd, 0x8819, 0x8810, 0x8811, 0x8817, 0x8813, 0x8816,
+  0x8963, 0x8966, 0x89b9, 0x89f7, 0x8b60, 0x8b6a, 0x8b5d, 0x8b68,
+  0x8b63, 0x8b65, 0x8b67, 0x8b6d, 0x8dae, 0x8e86, 0x8e88, 0x8e84,
+  0x8f59, 0x8f56, 0x8f57, 0x8f55, 0x8f58, 0x8f5a, 0x908d, 0x9143,
+  0x9141, 0x91b7, 0x91b5, 0x91b2, 0x91b3, 0x940b, 0x9413, 0x93fb,
+  0x9420, 0x940f, 0x9414, 0x93fe, 0x9415, 0x9410, 0x9428, 0x9419,
+  0x940d, 0x93f5, 0x9400, 0x93f7, 0x9407, 0x940e, 0x9416, 0x9412,
+  0x93fa, 0x9409, 0x93f8, 0x940a, 0x93ff,
+  /* 0xf5 */
+  0x93fc, 0x940c, 0x93f6, 0x9411, 0x9406, 0x95de, 0x95e0, 0x95df,
+  0x972e, 0x972f, 0x97b9, 0x97bb, 0x97fd, 0x97fe, 0x9860, 0x9862,
+  0x9863, 0x985f, 0x98c1, 0x98c2, 0x9950, 0x994e, 0x9959, 0x994c,
+  0x994b, 0x9953, 0x9a32, 0x9a34, 0x9a31, 0x9a2c, 0x9a2a, 0x9a36,
+  0x9a29, 0x9a2e, 0x9a38, 0x9a2d, 0x9ac7, 0x9aca, 0x9ac6, 0x9b10,
+  0x9b12, 0x9b11, 0x9c0b, 0x9c08, 0x9bf7, 0x9c05, 0x9c12, 0x9bf8,
+  0x9c40, 0x9c07, 0x9c0e, 0x9c06, 0x9c17, 0x9c14, 0x9c09, 0x9d9f,
+  0x9d99, 0x9da4, 0x9d9d, 0x9d92, 0x9d98, 0x9d90, 0x9d9b, 0x9da0,
+  0x9d94, 0x9d9c, 0x9daa, 0x9d97, 0x9da1, 0x9d9a, 0x9da2, 0x9da8,
+  0x9d9e, 0x9da3, 0x9dbf, 0x9da9, 0x9d96, 0x9da6, 0x9da7, 0x9e99,
+  0x9e9b, 0x9e9a, 0x9ee5, 0x9ee4, 0x9ee7, 0x9ee6, 0x9f30, 0x9f2e,
+  0x9f5b, 0x9f60, 0x9f5e, 0x9f5d, 0x9f59, 0x9f91, 0x513a, 0x5139,
+  0x5298, 0x5297, 0x56c3, 0x56bd, 0x56be, 0x5b48, 0x5b47, 0x5dcb,
+  0x5dcf, 0x5ef1, 0x61fd, 0x651b, 0x6b02, 0x6afc, 0x6b03, 0x6af8,
+  0x6b00, 0x7043, 0x7044, 0x704a, 0x7048, 0x7049, 0x7045, 0x7046,
+  0x721d, 0x721a, 0x7219, 0x737e, 0x7517, 0x766a, 0x77d0, 0x792d,
+  0x7931, 0x792f, 0x7c54, 0x7c53, 0x7cf2, 0x7e8a, 0x7e87, 0x7e88,
+  0x7e8b, 0x7e86, 0x7e8d, 0x7f4d, 0x7fbb, 0x8030, 0x81dd, 0x8618,
+  0x862a, 0x8626, 0x861f, 0x8623, 0x861c, 0x8619, 0x8627, 0x862e,
+  0x8621, 0x8620, 0x8629, 0x861e, 0x8625,
+  /* 0xf6 */
+  0x8829, 0x881d, 0x881b, 0x8820, 0x8824, 0x881c, 0x882b, 0x884a,
+  0x896d, 0x8969, 0x896e, 0x896b, 0x89fa, 0x8b79, 0x8b78, 0x8b45,
+  0x8b7a, 0x8b7b, 0x8d10, 0x8d14, 0x8daf, 0x8e8e, 0x8e8c, 0x8f5e,
+  0x8f5b, 0x8f5d, 0x9146, 0x9144, 0x9145, 0x91b9, 0x943f, 0x943b,
+  0x9436, 0x9429, 0x943d, 0x943c, 0x9430, 0x9439, 0x942a, 0x9437,
+  0x942c, 0x9440, 0x9431, 0x95e5, 0x95e4, 0x95e3, 0x9735, 0x973a,
+  0x97bf, 0x97e1, 0x9864, 0x98c9, 0x98c6, 0x98c0, 0x9958, 0x9956,
+  0x9a39, 0x9a3d, 0x9a46, 0x9a44, 0x9a42, 0x9a41, 0x9a3a, 0x9a3f,
+  0x9acd, 0x9b15, 0x9b17, 0x9b18, 0x9b16, 0x9b3a, 0x9b52, 0x9c2b,
+  0x9c1d, 0x9c1c, 0x9c2c, 0x9c23, 0x9c28, 0x9c29, 0x9c24, 0x9c21,
+  0x9db7, 0x9db6, 0x9dbc, 0x9dc1, 0x9dc7, 0x9dca, 0x9dcf, 0x9dbe,
+  0x9dc5, 0x9dc3, 0x9dbb, 0x9db5, 0x9dce, 0x9db9, 0x9dba, 0x9dac,
+  0x9dc8, 0x9db1, 0x9dad, 0x9dcc, 0x9db3, 0x9dcd, 0x9db2, 0x9e7a,
+  0x9e9c, 0x9eeb, 0x9eee, 0x9eed, 0x9f1b, 0x9f18, 0x9f1a, 0x9f31,
+  0x9f4e, 0x9f65, 0x9f64, 0x9f92, 0x4eb9, 0x56c6, 0x56c5, 0x56cb,
+  0x5971, 0x5b4b, 0x5b4c, 0x5dd5, 0x5dd1, 0x5ef2, 0x6521, 0x6520,
+  0x6526, 0x6522, 0x6b0b, 0x6b08, 0x6b09, 0x6c0d, 0x7055, 0x7056,
+  0x7057, 0x7052, 0x721e, 0x721f, 0x72a9, 0x737f, 0x74d8, 0x74d5,
+  0x74d9, 0x74d7, 0x766d, 0x76ad, 0x7935, 0x79b4, 0x7a70, 0x7a71,
+  0x7c57, 0x7c5c, 0x7c59, 0x7c5b, 0x7c5a,
+  /* 0xf7 */
+  0x7cf4, 0x7cf1, 0x7e91, 0x7f4f, 0x7f87, 0x81de, 0x826b, 0x8634,
+  0x8635, 0x8633, 0x862c, 0x8632, 0x8636, 0x882c, 0x8828, 0x8826,
+  0x882a, 0x8825, 0x8971, 0x89bf, 0x89be, 0x89fb, 0x8b7e, 0x8b84,
+  0x8b82, 0x8b86, 0x8b85, 0x8b7f, 0x8d15, 0x8e95, 0x8e94, 0x8e9a,
+  0x8e92, 0x8e90, 0x8e96, 0x8e97, 0x8f60, 0x8f62, 0x9147, 0x944c,
+  0x9450, 0x944a, 0x944b, 0x944f, 0x9447, 0x9445, 0x9448, 0x9449,
+  0x9446, 0x973f, 0x97e3, 0x986a, 0x9869, 0x98cb, 0x9954, 0x995b,
+  0x9a4e, 0x9a53, 0x9a54, 0x9a4c, 0x9a4f, 0x9a48, 0x9a4a, 0x9a49,
+  0x9a52, 0x9a50, 0x9ad0, 0x9b19, 0x9b2b, 0x9b3b, 0x9b56, 0x9b55,
+  0x9c46, 0x9c48, 0x9c3f, 0x9c44, 0x9c39, 0x9c33, 0x9c41, 0x9c3c,
+  0x9c37, 0x9c34, 0x9c32, 0x9c3d, 0x9c36, 0x9ddb, 0x9dd2, 0x9dde,
+  0x9dda, 0x9dcb, 0x9dd0, 0x9ddc, 0x9dd1, 0x9ddf, 0x9de9, 0x9dd9,
+  0x9dd8, 0x9dd6, 0x9df5, 0x9dd5, 0x9ddd, 0x9eb6, 0x9ef0, 0x9f35,
+  0x9f33, 0x9f32, 0x9f42, 0x9f6b, 0x9f95, 0x9fa2, 0x513d, 0x5299,
+  0x58e8, 0x58e7, 0x5972, 0x5b4d, 0x5dd8, 0x882f, 0x5f4f, 0x6201,
+  0x6203, 0x6204, 0x6529, 0x6525, 0x6596, 0x66eb, 0x6b11, 0x6b12,
+  0x6b0f, 0x6bca, 0x705b, 0x705a, 0x7222, 0x7382, 0x7381, 0x7383,
+  0x7670, 0x77d4, 0x7c67, 0x7c66, 0x7e95, 0x826c, 0x863a, 0x8640,
+  0x8639, 0x863c, 0x8631, 0x863b, 0x863e, 0x8830, 0x8832, 0x882e,
+  0x8833, 0x8976, 0x8974, 0x8973, 0x89fe,
+  /* 0xf8 */
+  0x8b8c, 0x8b8e, 0x8b8b, 0x8b88, 0x8c45, 0x8d19, 0x8e98, 0x8f64,
+  0x8f63, 0x91bc, 0x9462, 0x9455, 0x945d, 0x9457, 0x945e, 0x97c4,
+  0x97c5, 0x9800, 0x9a56, 0x9a59, 0x9b1e, 0x9b1f, 0x9b20, 0x9c52,
+  0x9c58, 0x9c50, 0x9c4a, 0x9c4d, 0x9c4b, 0x9c55, 0x9c59, 0x9c4c,
+  0x9c4e, 0x9dfb, 0x9df7, 0x9def, 0x9de3, 0x9deb, 0x9df8, 0x9de4,
+  0x9df6, 0x9de1, 0x9dee, 0x9de6, 0x9df2, 0x9df0, 0x9de2, 0x9dec,
+  0x9df4, 0x9df3, 0x9de8, 0x9ded, 0x9ec2, 0x9ed0, 0x9ef2, 0x9ef3,
+  0x9f06, 0x9f1c, 0x9f38, 0x9f37, 0x9f36, 0x9f43, 0x9f4f, 0x9f71,
+  0x9f70, 0x9f6e, 0x9f6f, 0x56d3, 0x56cd, 0x5b4e, 0x5c6d, 0x652d,
+  0x66ed, 0x66ee, 0x6b13, 0x705f, 0x7061, 0x705d, 0x7060, 0x7223,
+  0x74db, 0x74e5, 0x77d5, 0x7938, 0x79b7, 0x79b6, 0x7c6a, 0x7e97,
+  0x7f89, 0x826d, 0x8643, 0x8838, 0x8837, 0x8835, 0x884b, 0x8b94,
+  0x8b95, 0x8e9e, 0x8e9f, 0x8ea0, 0x8e9d, 0x91be, 0x91bd, 0x91c2,
+  0x946b, 0x9468, 0x9469, 0x96e5, 0x9746, 0x9743, 0x9747, 0x97c7,
+  0x97e5, 0x9a5e, 0x9ad5, 0x9b59, 0x9c63, 0x9c67, 0x9c66, 0x9c62,
+  0x9c5e, 0x9c60, 0x9e02, 0x9dfe, 0x9e07, 0x9e03, 0x9e06, 0x9e05,
+  0x9e00, 0x9e01, 0x9e09, 0x9dff, 0x9dfd, 0x9e04, 0x9ea0, 0x9f1e,
+  0x9f46, 0x9f74, 0x9f75, 0x9f76, 0x56d4, 0x652e, 0x65b8, 0x6b18,
+  0x6b19, 0x6b17, 0x6b1a, 0x7062, 0x7226, 0x72aa, 0x77d8, 0x77d9,
+  0x7939, 0x7c69, 0x7c6b, 0x7cf6, 0x7e9a,
+  /* 0xf9 */
+  0x7e98, 0x7e9b, 0x7e99, 0x81e0, 0x81e1, 0x8646, 0x8647, 0x8648,
+  0x8979, 0x897a, 0x897c, 0x897b, 0x89ff, 0x8b98, 0x8b99, 0x8ea5,
+  0x8ea4, 0x8ea3, 0x946e, 0x946d, 0x946f, 0x9471, 0x9473, 0x9749,
+  0x9872, 0x995f, 0x9c68, 0x9c6e, 0x9c6d, 0x9e0b, 0x9e0d, 0x9e10,
+  0x9e0f, 0x9e12, 0x9e11, 0x9ea1, 0x9ef5, 0x9f09, 0x9f47, 0x9f78,
+  0x9f7b, 0x9f7a, 0x9f79, 0x571e, 0x7066, 0x7c6f, 0x883c, 0x8db2,
+  0x8ea6, 0x91c3, 0x9474, 0x9478, 0x9476, 0x9475, 0x9a60, 0x9c74,
+  0x9c73, 0x9c71, 0x9c75, 0x9e14, 0x9e13, 0x9ef6, 0x9f0a, 0x9fa4,
+  0x7068, 0x7065, 0x7cf7, 0x866a, 0x883e, 0x883d, 0x883f, 0x8b9e,
+  0x8c9c, 0x8ea9, 0x8ec9, 0x974b, 0x9873, 0x9874, 0x98cc, 0x9961,
+  0x99ab, 0x9a64, 0x9a66, 0x9a67, 0x9b24, 0x9e15, 0x9e17, 0x9f48,
+  0x6207, 0x6b1e, 0x7227, 0x864c, 0x8ea8, 0x9482, 0x9480, 0x9481,
+  0x9a69, 0x9a68, 0x9b2e, 0x9e19, 0x7229, 0x864b, 0x8b9f, 0x9483,
+  0x9c79, 0x9eb7, 0x7675, 0x9a6b, 0x9c7a, 0x9e1d, 0x7069, 0x706a,
+  0x9ea4, 0x9f7e, 0x9f49, 0x9f98,
+};
+
+static int
+big5_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 >= 0xa1 && c1 <= 0xc7) || (c1 >= 0xc9 && c1 <= 0xf9)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if ((c2 >= 0x40 && c2 < 0x7f) || (c2 >= 0xa1 && c2 < 0xff)) {
+        unsigned int i = 157 * (c1 - 0xa1) + (c2 - (c2 >= 0xa1 ? 0x62 : 0x40));
+        unsigned short wc = 0xfffd;
+        if (i < 6280) {
+          if (i < 6121)
+            wc = big5_2uni_pagea1[i];
+        } else {
+          if (i < 13932)
+            wc = big5_2uni_pagec9[i-6280];
+        }
+        if (wc != 0xfffd) {
+          *pwc = (ucs4_t) wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned short big5_2charset[13703] = {
+  0xa246, 0xa247, 0xa244, 0xa1b1, 0xa258, 0xa1d3, 0xa150, 0xa1d1,
+  0xa1d2, 0xa3be, 0xa3bc, 0xa3bd, 0xa3bf, 0xa3bb, 0xa344, 0xa345,
+  0xa346, 0xa347, 0xa348, 0xa349, 0xa34a, 0xa34b, 0xa34c, 0xa34d,
+  0xa34e, 0xa34f, 0xa350, 0xa351, 0xa352, 0xa353, 0xa354, 0xa355,
+  0xa356, 0xa357, 0xa358, 0xa359, 0xa35a, 0xa35b, 0xa35c, 0xa35d,
+  0xa35e, 0xa35f, 0xa360, 0xa361, 0xa362, 0xa363, 0xa364, 0xa365,
+  0xa366, 0xa367, 0xa368, 0xa369, 0xa36a, 0xa36b, 0xa36c, 0xa36d,
+  0xa36e, 0xa36f, 0xa370, 0xa371, 0xa372, 0xa373, 0xc7b3, 0xc7b1,
+  0xc7b2, 0xc7b4, 0xc7b5, 0xc7b6, 0xc7b7, 0xc7b8, 0xc7b9, 0xc7ba,
+  0xc7bb, 0xc7bc, 0xc7bd, 0xc7be, 0xc7bf, 0xc7c0, 0xc7c1, 0xc7c2,
+  0xc7c3, 0xc7c4, 0xc7c5, 0xc7c6, 0xc7c7, 0xc7c8, 0xc7c9, 0xc7ca,
+  0xc7cb, 0xc7cc, 0xc7cd, 0xc7cf, 0xc7d0, 0xc7d1, 0xc7d2, 0xc7d3,
+  0xc7d4, 0xc7d5, 0xc7d6, 0xc7d7, 0xc7d8, 0xc7d9, 0xc7da, 0xc7db,
+  0xc7dc, 0xc7dd, 0xc7de, 0xc7df, 0xc7e0, 0xc7e1, 0xc7e2, 0xc7e3,
+  0xc7e4, 0xc7e5, 0xc7e6, 0xc7e7, 0xc7e8, 0xc7ce, 0xa156, 0xa158,
+  0xa1a5, 0xa1a6, 0xa1a7, 0xa1a8, 0xa145, 0xa14c, 0xa14b, 0xa1ac,
+  0xa1ab, 0xa1b0, 0xa1c2, 0xa24a, 0xa1c1, 0xa24b, 0xa2b9, 0xa2ba,
+  0xa2bb, 0xa2bc, 0xa2bd, 0xa2be, 0xa2bf, 0xa2c0, 0xa2c1, 0xa2c2,
+  0xa1f6, 0xa1f4, 0xa1f7, 0xa1f5, 0xa1f8, 0xa1f9, 0xa1fb, 0xa1fa,
+  0xa1d4, 0xa1db, 0xa1e8, 0xa1e7, 0xa1fd, 0xa1fc, 0xa1e4, 0xa1e5,
+  0xa1ec, 0xa1ed, 0xa1ef, 0xa1ee, 0xa1e3, 0xa1dc, 0xa1da, 0xa1dd,
+  0xa1d8, 0xa1d9, 0xa1e6, 0xa1e9, 0xc7e9, 0xc7ea, 0xc7eb, 0xc7ec,
+  0xc7ed, 0xc7ee, 0xc7ef, 0xc7f0, 0xc7f1, 0xc7f2, 0xc7f3, 0xc7f4,
+  0xc7f5, 0xc7f6, 0xc7f7, 0xc7f8, 0xc7f9, 0xc7fa, 0xc7fb, 0xc7fc,
+  0xa277, 0xa278, 0xa27a, 0xa27b, 0xa27c, 0xa27d, 0xa275, 0xa274,
+  0xa273, 0xa272, 0xa271, 0xa2a4, 0xa2a5, 0xa2a7, 0xa2a6, 0xa27e,
+  0xa2a1, 0xa2a3, 0xa2a2, 0xa2ac, 0xa2ad, 0xa2ae, 0xa262, 0xa263,
+  0xa264, 0xa265, 0xa266, 0xa267, 0xa268, 0xa269, 0xa270, 0xa26f,
+  0xa26e, 0xa26d, 0xa26c, 0xa26b, 0xa26a, 0xa276, 0xa279, 0xa1bd,
+  0xa1bc, 0xa1b6, 0xa1b5, 0xa1bf, 0xa1be, 0xa1bb, 0xa1ba, 0xa1b3,
+  0xa1b7, 0xa1b4, 0xa2a8, 0xa2a9, 0xa2ab, 0xa2aa, 0xa1b9, 0xa1b8,
+  0xa1f3, 0xa1f0, 0xa1f2, 0xa1f1, 0xa140, 0xa142, 0xa143, 0xa1b2,
+  0xc6a4, 0xa171, 0xa172, 0xa16d, 0xa16e, 0xa175, 0xa176, 0xa179,
+  0xa17a, 0xa169, 0xa16a, 0xa245, 0xa165, 0xa166, 0xa1a9, 0xa1aa,
+  0xa2c3, 0xa2c4, 0xa2c5, 0xa2c6, 0xa2c7, 0xa2c8, 0xa2c9, 0xa2ca,
+  0xa2cb, 0xc6a5, 0xc6a6, 0xc6a7, 0xc6a8, 0xc6a9, 0xc6aa, 0xc6ab,
+  0xc6ac, 0xc6ad, 0xc6ae, 0xc6af, 0xc6b0, 0xc6b1, 0xc6b2, 0xc6b3,
+  0xc6b4, 0xc6b5, 0xc6b6, 0xc6b7, 0xc6b8, 0xc6b9, 0xc6ba, 0xc6bb,
+  0xc6bc, 0xc6bd, 0xc6be, 0xc6bf, 0xc6c0, 0xc6c1, 0xc6c2, 0xc6c3,
+  0xc6c4, 0xc6c5, 0xc6c6, 0xc6c7, 0xc6c8, 0xc6c9, 0xc6ca, 0xc6cb,
+  0xc6cc, 0xc6cd, 0xc6ce, 0xc6cf, 0xc6d0, 0xc6d1, 0xc6d2, 0xc6d3,
+  0xc6d4, 0xc6d5, 0xc6d6, 0xc6d7, 0xc6d8, 0xc6d9, 0xc6da, 0xc6db,
+  0xc6dc, 0xc6dd, 0xc6de, 0xc6df, 0xc6e0, 0xc6e1, 0xc6e2, 0xc6e3,
+  0xc6e4, 0xc6e5, 0xc6e6, 0xc6e7, 0xc6e8, 0xc6e9, 0xc6ea, 0xc6eb,
+  0xc6ec, 0xc6ed, 0xc6ee, 0xc6ef, 0xc6f0, 0xc6f1, 0xc6f2, 0xc6f3,
+  0xc6f4, 0xc6f5, 0xc6f6, 0xc6f7, 0xc6a2, 0xc6a3, 0xc6f8, 0xc6f9,
+  0xc6fa, 0xc6fb, 0xc6fc, 0xc6fd, 0xc6fe, 0xc740, 0xc741, 0xc742,
+  0xc743, 0xc744, 0xc745, 0xc746, 0xc747, 0xc748, 0xc749, 0xc74a,
+  0xc74b, 0xc74c, 0xc74d, 0xc74e, 0xc74f, 0xc750, 0xc751, 0xc752,
+  0xc753, 0xc754, 0xc755, 0xc756, 0xc757, 0xc758, 0xc759, 0xc75a,
+  0xc75b, 0xc75c, 0xc75d, 0xc75e, 0xc75f, 0xc760, 0xc761, 0xc762,
+  0xc763, 0xc764, 0xc765, 0xc766, 0xc767, 0xc768, 0xc769, 0xc76a,
+  0xc76b, 0xc76c, 0xc76d, 0xc76e, 0xc76f, 0xc770, 0xc771, 0xc772,
+  0xc773, 0xc774, 0xc775, 0xc776, 0xc777, 0xc778, 0xc779, 0xc77a,
+  0xc77b, 0xc77c, 0xc77d, 0xc77e, 0xc7a1, 0xc7a2, 0xc7a3, 0xc7a4,
+  0xc7a5, 0xc7a6, 0xc7a7, 0xc7a8, 0xc7a9, 0xc7aa, 0xc7ab, 0xc7ac,
+  0xc7ad, 0xc7ae, 0xc7af, 0xc7b0, 0xc6a1, 0xa374, 0xa375, 0xa376,
+  0xa377, 0xa378, 0xa379, 0xa37a, 0xa37b, 0xa37c, 0xa37d, 0xa37e,
+  0xa3a1, 0xa3a2, 0xa3a3, 0xa3a4, 0xa3a5, 0xa3a6, 0xa3a7, 0xa3a8,
+  0xa3a9, 0xa3aa, 0xa3ab, 0xa3ac, 0xa3ad, 0xa3ae, 0xa3af, 0xa3b0,
+  0xa3b1, 0xa3b2, 0xa3b3, 0xa3b4, 0xa3b5, 0xa3b6, 0xa3b7, 0xa3b8,
+  0xa3b9, 0xa3ba, 0xa1c0, 0xa255, 0xa256, 0xa250, 0xa251, 0xa252,
+  0xa254, 0xa257, 0xa253, 0xa1eb, 0xa1ea, 0xa24f, 0xa440, 0xa442,
+  0xa443, 0xc945, 0xa456, 0xa454, 0xa457, 0xa455, 0xc946, 0xa4a3,
+  0xc94f, 0xc94d, 0xa4a2, 0xa4a1, 0xa542, 0xa541, 0xa540, 0xa543,
+  0xa4fe, 0xa5e0, 0xa5e1, 0xa8c3, 0xa458, 0xa4a4, 0xc950, 0xa4a5,
+  0xc963, 0xa6ea, 0xcbb1, 0xa459, 0xa4a6, 0xa544, 0xc964, 0xc940,
+  0xa444, 0xa45b, 0xc947, 0xa45c, 0xa4a7, 0xa545, 0xa547, 0xa546,
+  0xa5e2, 0xa5e3, 0xa8c4, 0xadbc, 0xa441, 0xc941, 0xa445, 0xa45e,
+  0xa45d, 0xa5e4, 0xa8c5, 0xb0ae, 0xd44b, 0xb6c3, 0xdcb1, 0xdcb2,
+  0xa446, 0xa4a9, 0xa8c6, 0xa447, 0xc948, 0xa45f, 0xa4aa, 0xa4ac,
+  0xc951, 0xa4ad, 0xa4ab, 0xa5e5, 0xa8c7, 0xa8c8, 0xab45, 0xa460,
+  0xa4ae, 0xa5e6, 0xa5e8, 0xa5e7, 0xa6eb, 0xa8c9, 0xa8ca, 0xab46,
+  0xab47, 0xadbd, 0xdcb3, 0xf6d6, 0xa448, 0xa4b0, 0xa4af, 0xc952,
+  0xa4b1, 0xa4b7, 0xa4b2, 0xa4b3, 0xc954, 0xc953, 0xa4b5, 0xa4b6,
+  0xa4b4, 0xa54a, 0xa54b, 0xa54c, 0xa54d, 0xa549, 0xa550, 0xc96a,
+  0xc966, 0xc969, 0xa551, 0xa561, 0xc968, 0xa54e, 0xa54f, 0xa548,
+  0xc965, 0xc967, 0xa5f5, 0xc9b0, 0xa5f2, 0xa5f6, 0xc9ba, 0xc9ae,
+  0xa5f3, 0xc9b2, 0xa5f4, 0xa5f7, 0xa5e9, 0xc9b1, 0xa5f8, 0xc9b5,
+  0xc9b9, 0xc9b6, 0xc9b3, 0xa5ea, 0xa5ec, 0xa5f9, 0xa5ee, 0xc9ab,
+  0xa5f1, 0xa5ef, 0xa5f0, 0xc9bb, 0xc9b8, 0xc9af, 0xa5ed, 0xc9ac,
+  0xa5eb, 0xc9b4, 0xc9b7, 0xc9ad, 0xca66, 0xa742, 0xa6f4, 0xca67,
+  0xa6f1, 0xa744, 0xa6f9, 0xa6f8, 0xca5b, 0xa6fc, 0xa6f7, 0xca60,
+  0xca68, 0xca64, 0xa6fa, 0xa6fd, 0xa6ee, 0xa747, 0xca5d, 0xcbbd,
+  0xa6ec, 0xa743, 0xa6ed, 0xa6f5, 0xa6f6, 0xca62, 0xca5e, 0xa6fb,
+  0xa6f3, 0xca5a, 0xa6ef, 0xca65, 0xa745, 0xa748, 0xa6f2, 0xa740,
+  0xa746, 0xa6f0, 0xca63, 0xa741, 0xca69, 0xca5c, 0xa6fe, 0xca5f,
+  0xca61, 0xa8d8, 0xcbbf, 0xcbcb, 0xa8d0, 0xcbcc, 0xa8cb, 0xa8d5,
+  0xa8ce, 0xcbb9, 0xa8d6, 0xcbb8, 0xcbbc, 0xcbc3, 0xcbc1, 0xa8de,
+  0xa8d9, 0xcbb3, 0xcbb5, 0xa8db, 0xa8cf, 0xcbb6, 0xcbc2, 0xcbc9,
+  0xa8d4, 0xcbbb, 0xcbb4, 0xa8d3, 0xcbb7, 0xa8d7, 0xcbba, 0xa8d2,
+  0xa8cd, 0xa8dc, 0xcbc4, 0xa8dd, 0xcbc8, 0xcbc6, 0xcbca, 0xa8da,
+  0xcbbe, 0xcbb2, 0xcbc0, 0xa8d1, 0xcbc5, 0xa8cc, 0xcbc7, 0xab56,
+  0xab4a, 0xcde0, 0xcde8, 0xab49, 0xab51, 0xab5d, 0xcdee, 0xcdec,
+  0xcde7, 0xab4b, 0xcded, 0xcde3, 0xab59, 0xab50, 0xab58, 0xcdde,
+  0xcdea, 0xcde1, 0xab54, 0xcde2, 0xcddd, 0xab5b, 0xab4e, 0xab57,
+  0xab4d, 0xcddf, 0xcde4, 0xcdeb, 0xab55, 0xab52, 0xcde6, 0xab5a,
+  0xcde9, 0xcde5, 0xab4f, 0xab5c, 0xab53, 0xab4c, 0xab48, 0xcdef,
+  0xadd7, 0xadc1, 0xadd1, 0xadd6, 0xd0d0, 0xd0cf, 0xd0d4, 0xd0d5,
+  0xadc4, 0xadcd, 0xadda, 0xadce, 0xd0c9, 0xadc7, 0xd0ca, 0xaddc,
+  0xadd3, 0xadbe, 0xadbf, 0xd0dd, 0xb0bf, 0xadcc, 0xadcb, 0xd0cb,
+  0xadcf, 0xd45b, 0xadc6, 0xd0d6, 0xadd5, 0xadd4, 0xadca, 0xd0ce,
+  0xd0d7, 0xd0c8, 0xadc9, 0xd0d8, 0xadd2, 0xd0cc, 0xadc0, 0xadc3,
+  0xadc2, 0xd0d9, 0xadd0, 0xadc5, 0xadd9, 0xaddb, 0xd0d3, 0xadd8,
+  0xd0db, 0xd0cd, 0xd0dc, 0xd0d1, 0xd0da, 0xd0d2, 0xadc8, 0xd463,
+  0xd457, 0xb0b3, 0xd45c, 0xd462, 0xb0b2, 0xd455, 0xb0b6, 0xd459,
+  0xd452, 0xb0b4, 0xd456, 0xb0b9, 0xb0be, 0xd467, 0xd451, 0xb0ba,
+  0xd466, 0xb0b5, 0xd458, 0xb0b1, 0xd453, 0xd44f, 0xd45d, 0xd450,
+  0xd44e, 0xd45a, 0xd460, 0xd461, 0xb0b7, 0xd85b, 0xd45e, 0xd44d,
+  0xd45f, 0xb0c1, 0xd464, 0xb0c0, 0xd44c, 0xd454, 0xd465, 0xb0bc,
+  0xb0bb, 0xb0b8, 0xb0bd, 0xb0af, 0xb0b0, 0xb3c8, 0xd85e, 0xd857,
+  0xb3c5, 0xd85f, 0xd855, 0xd858, 0xb3c4, 0xd859, 0xb3c7, 0xd85d,
+  0xd853, 0xd852, 0xb3c9, 0xb3ca, 0xb3c6, 0xb3cb, 0xd851, 0xd85c,
+  0xd85a, 0xd854, 0xb3c3, 0xd856, 0xb6ca, 0xb6c4, 0xdcb7, 0xb6cd,
+  0xdcbd, 0xdcc0, 0xb6c6, 0xb6c7, 0xdcba, 0xb6c5, 0xdcc3, 0xb6cb,
+  0xdcc4, 0xdcbf, 0xb6cc, 0xdcb4, 0xb6c9, 0xdcb5, 0xdcbe, 0xdcbc,
+  0xdcb8, 0xb6c8, 0xdcb6, 0xb6ce, 0xdcbb, 0xdcc2, 0xdcb9, 0xdcc1,
+  0xb9b6, 0xb9b3, 0xb9b4, 0xe0f9, 0xe0f1, 0xb9b2, 0xb9af, 0xe0f2,
+  0xb9b1, 0xe0f5, 0xe0f7, 0xe0fe, 0xe0fd, 0xe0f8, 0xb9ae, 0xe0f0,
+  0xb9ac, 0xe0f3, 0xb9b7, 0xe0f6, 0xe0fa, 0xb9b0, 0xb9ad, 0xe0fc,
+  0xe0fb, 0xb9b5, 0xe0f4, 0xbbf8, 0xe4ec, 0xe4e9, 0xbbf9, 0xbbf7,
+  0xe4f0, 0xe4ed, 0xe4e6, 0xbbf6, 0xbbfa, 0xe4e7, 0xbbf5, 0xbbfd,
+  0xe4ea, 0xe4eb, 0xbbfb, 0xbbfc, 0xe4f1, 0xe4ee, 0xe4ef, 0xbeaa,
+  0xe8f8, 0xbea7, 0xe8f5, 0xbea9, 0xbeab, 0xe8f6, 0xbea8, 0xe8f7,
+  0xe8f4, 0xc076, 0xecbd, 0xc077, 0xecbb, 0xecbc, 0xecba, 0xecb9,
+  0xecbe, 0xc075, 0xefb8, 0xefb9, 0xe4e8, 0xefb7, 0xc078, 0xc35f,
+  0xf1eb, 0xf1ec, 0xc4d7, 0xc4d8, 0xf5c1, 0xf5c0, 0xc56c, 0xc56b,
+  0xf7d0, 0xa449, 0xa461, 0xa4b9, 0xa4b8, 0xa553, 0xa552, 0xa5fc,
+  0xa5fb, 0xa5fd, 0xa5fa, 0xa74a, 0xa749, 0xa74b, 0xa8e0, 0xa8df,
+  0xa8e1, 0xab5e, 0xa259, 0xd0de, 0xa25a, 0xb0c2, 0xa25c, 0xa25b,
+  0xd860, 0xa25d, 0xb9b8, 0xa25e, 0xa44a, 0xa4ba, 0xa5fe, 0xa8e2,
+  0xa44b, 0xa4bd, 0xa4bb, 0xa4bc, 0xa640, 0xa74c, 0xa8e4, 0xa8e3,
+  0xa8e5, 0xaddd, 0xbeac, 0xc94e, 0xa554, 0xa555, 0xa641, 0xca6a,
+  0xab60, 0xab5f, 0xd0e0, 0xd0df, 0xb0c3, 0xa4be, 0xc955, 0xcbcd,
+  0xab61, 0xade0, 0xadde, 0xaddf, 0xbead, 0xa556, 0xa642, 0xc9bc,
+  0xa74d, 0xa74e, 0xca6b, 0xcbce, 0xa8e6, 0xcbcf, 0xd0e2, 0xd0e3,
+  0xade3, 0xd0e4, 0xd0e1, 0xade4, 0xade2, 0xade1, 0xd0e5, 0xd468,
+  0xd861, 0xdcc5, 0xe140, 0xbbfe, 0xbeae, 0xe8f9, 0xa44c, 0xa45a,
+  0xb0c4, 0xb3cd, 0xb9b9, 0xc942, 0xa4bf, 0xa559, 0xa557, 0xa558,
+  0xa8e7, 0xa44d, 0xa44e, 0xa462, 0xa4c0, 0xa4c1, 0xa4c2, 0xc9be,
+  0xa55a, 0xc96b, 0xa646, 0xc9bf, 0xa644, 0xa645, 0xc9bd, 0xa647,
+  0xa643, 0xca6c, 0xaaec, 0xca6d, 0xca6e, 0xa750, 0xa74f, 0xa753,
+  0xa751, 0xa752, 0xa8ed, 0xa8ec, 0xcbd4, 0xcbd1, 0xcbd2, 0xcbd0,
+  0xa8ee, 0xa8ea, 0xa8e9, 0xa8eb, 0xa8e8, 0xa8ef, 0xab63, 0xcdf0,
+  0xcbd3, 0xab68, 0xcdf1, 0xab64, 0xab67, 0xab66, 0xab65, 0xab62,
+  0xd0e8, 0xade7, 0xd0eb, 0xade5, 0xd0e7, 0xade8, 0xade6, 0xade9,
+  0xd0e9, 0xd0ea, 0xd0e6, 0xd0ec, 0xb3d1, 0xb0c5, 0xd469, 0xd46b,
+  0xd46a, 0xd46c, 0xb0c6, 0xb3ce, 0xb3cf, 0xb3d0, 0xb6d0, 0xdcc7,
+  0xdcc6, 0xdcc8, 0xdcc9, 0xb6d1, 0xb6cf, 0xe141, 0xe142, 0xb9bb,
+  0xb9ba, 0xe35a, 0xbc40, 0xbc41, 0xbc42, 0xbc44, 0xe4f2, 0xe4f3,
+  0xbc43, 0xbeaf, 0xbeb0, 0xf1ed, 0xf5c3, 0xf5c2, 0xf7d1, 0xa44f,
+  0xa55c, 0xa55b, 0xa648, 0xc9c0, 0xa755, 0xa756, 0xa754, 0xa757,
+  0xca6f, 0xca70, 0xa8f1, 0xcbd5, 0xa8f0, 0xcdf2, 0xab6c, 0xcdf3,
+  0xab6b, 0xab69, 0xab6a, 0xd0ed, 0xb0c7, 0xd46e, 0xb0ca, 0xd46d,
+  0xb1e5, 0xb0c9, 0xb0c8, 0xb3d4, 0xb3d3, 0xb3d2, 0xb6d2, 0xb6d5,
+  0xb6d6, 0xb6d4, 0xb6d3, 0xe143, 0xe144, 0xe4f5, 0xbc45, 0xe4f4,
+  0xbeb1, 0xecbf, 0xc079, 0xf1ee, 0xc455, 0xa463, 0xa4c3, 0xc956,
+  0xa4c4, 0xa4c5, 0xa55d, 0xa55e, 0xa649, 0xca71, 0xcbd6, 0xcbd7,
+  0xab6d, 0xd0ee, 0xb0cc, 0xb0cb, 0xd863, 0xd862, 0xa450, 0xa4c6,
+  0xa55f, 0xb0cd, 0xc943, 0xc96c, 0xa560, 0xc9c2, 0xa64b, 0xa64a,
+  0xc9c1, 0xa758, 0xadea, 0xd46f, 0xb6d7, 0xe145, 0xb9bc, 0xe8fa,
+  0xf3fd, 0xa4c7, 0xcbd8, 0xcdf4, 0xb0d0, 0xb0ce, 0xb0cf, 0xa451,
+  0xa464, 0xa2cd, 0xa4ca, 0xa4c9, 0xa4c8, 0xa563, 0xa562, 0xc96d,
+  0xc9c3, 0xa8f5, 0xa8f2, 0xa8f4, 0xa8f3, 0xab6e, 0xb3d5, 0xa452,
+  0xa4cb, 0xa565, 0xa564, 0xca72, 0xa8f6, 0xc957, 0xa567, 0xa566,
+  0xa64c, 0xa64d, 0xca73, 0xa759, 0xa75a, 0xa8f7, 0xa8f8, 0xa8f9,
+  0xab6f, 0xcdf5, 0xadeb, 0xc944, 0xa4cc, 0xc9c4, 0xca74, 0xca75,
+  0xcbd9, 0xcbda, 0xcdf7, 0xcdf6, 0xcdf9, 0xcdf8, 0xab70, 0xd470,
+  0xaded, 0xd0ef, 0xadec, 0xd864, 0xb3d6, 0xd865, 0xe146, 0xb9bd,
+  0xbc46, 0xf1ef, 0xc958, 0xa568, 0xb0d1, 0xa453, 0xa465, 0xa4ce,
+  0xa4cd, 0xa4cf, 0xa8fb, 0xa8fa, 0xa8fc, 0xab71, 0xadee, 0xe8fb,
+  0xc24f, 0xa466, 0xa56a, 0xa579, 0xa574, 0xa56f, 0xa56e, 0xa575,
+  0xa573, 0xa56c, 0xa57a, 0xa56d, 0xa569, 0xa578, 0xa577, 0xa576,
+  0xa56b, 0xa572, 0xa571, 0xa57b, 0xa570, 0xa653, 0xa659, 0xa655,
+  0xa65b, 0xc9c5, 0xa658, 0xa64e, 0xa651, 0xa654, 0xa650, 0xa657,
+  0xa65a, 0xa64f, 0xa652, 0xa656, 0xa65c, 0xca7e, 0xca7b, 0xa767,
+  0xca7c, 0xa75b, 0xa75d, 0xa775, 0xa770, 0xcaa5, 0xca7d, 0xa75f,
+  0xa761, 0xcaa4, 0xa768, 0xca78, 0xa774, 0xa776, 0xa75c, 0xa76d,
+  0xca76, 0xa773, 0xa764, 0xa76e, 0xa76f, 0xca77, 0xa76c, 0xa76a,
+  0xa76b, 0xa771, 0xcaa1, 0xa75e, 0xa772, 0xcaa3, 0xa766, 0xa763,
+  0xca7a, 0xa762, 0xcaa6, 0xa765, 0xa769, 0xa760, 0xcaa2, 0xca79,
+  0xcbeb, 0xcbea, 0xa94f, 0xcbed, 0xcbef, 0xcbe4, 0xcbe7, 0xcbee,
+  0xa950, 0xcbe1, 0xcbe5, 0xcbe9, 0xce49, 0xa94b, 0xce4d, 0xa8fd,
+  0xcbe6, 0xa8fe, 0xa94c, 0xa945, 0xa941, 0xcbe2, 0xa944, 0xa949,
+  0xa952, 0xcbe3, 0xcbdc, 0xa943, 0xcbdd, 0xcbdf, 0xa946, 0xa948,
+  0xcbdb, 0xcbe0, 0xa951, 0xa94d, 0xcbe8, 0xa953, 0xa94a, 0xcbde,
+  0xa947, 0xa942, 0xa940, 0xcbec, 0xa94e, 0xce48, 0xcdfb, 0xce4b,
+  0xcdfd, 0xab78, 0xaba8, 0xab74, 0xaba7, 0xab7d, 0xaba4, 0xab72,
+  0xcdfc, 0xce43, 0xaba3, 0xce4f, 0xaba5, 0xab79, 0xce45, 0xce42,
+  0xab77, 0xcdfa, 0xaba6, 0xce4a, 0xab7c, 0xce4c, 0xaba9, 0xab73,
+  0xab7e, 0xab7b, 0xce40, 0xaba1, 0xce46, 0xce47, 0xab7a, 0xaba2,
+  0xab76, 0xab75, 0xcdfe, 0xce44, 0xce4e, 0xd144, 0xadfb, 0xd0f1,
+  0xd0f6, 0xadf4, 0xae40, 0xd0f4, 0xadef, 0xadf9, 0xadfe, 0xd0fb,
+  0xadfa, 0xadfd, 0xd0fe, 0xadf5, 0xd0f5, 0xd142, 0xd143, 0xadf7,
+  0xd141, 0xadf3, 0xae43, 0xd0f8, 0xadf1, 0xd146, 0xd0f9, 0xd0fd,
+  0xadf6, 0xae42, 0xd0fa, 0xadfc, 0xd140, 0xd147, 0xd4a1, 0xd145,
+  0xae44, 0xadf0, 0xd0fc, 0xd0f3, 0xadf8, 0xd0f2, 0xd0f7, 0xd0f0,
+  0xae41, 0xd477, 0xb0e4, 0xd4a7, 0xb0e2, 0xb0df, 0xd47c, 0xb0db,
+  0xd4a2, 0xb0e6, 0xd476, 0xd47b, 0xd47a, 0xadf2, 0xb0e1, 0xd4a5,
+  0xd4a8, 0xd473, 0xb3e8, 0xd4a9, 0xb0e7, 0xb0d9, 0xb0d6, 0xd47e,
+  0xb0d3, 0xd4a6, 0xb0da, 0xd4aa, 0xd474, 0xd4a4, 0xb0dd, 0xd475,
+  0xd478, 0xd47d, 0xb0de, 0xb0dc, 0xb0e8, 0xb0e3, 0xb0d7, 0xb1d2,
+  0xb0d8, 0xd479, 0xb0e5, 0xb0e0, 0xd4a3, 0xb0d5, 0xb0d4, 0xd471,
+  0xd472, 0xd86a, 0xb3d7, 0xb3da, 0xd875, 0xb3ee, 0xd878, 0xb3d8,
+  0xd871, 0xb3de, 0xb3e4, 0xb5bd, 0xb3e2, 0xd86e, 0xb3ef, 0xb3db,
+  0xb3e3, 0xd876, 0xdcd7, 0xd87b, 0xd86f, 0xd866, 0xd873, 0xd86d,
+  0xb3e1, 0xd879, 0xb3dd, 0xb3f1, 0xb3ea, 0xb3df, 0xb3dc, 0xb3e7,
+  0xd87a, 0xd86c, 0xd872, 0xd874, 0xd868, 0xd877, 0xb3d9, 0xd867,
+  0xb3e0, 0xb3f0, 0xb3ec, 0xd869, 0xb3e6, 0xb3ed, 0xb3e9, 0xb3e5,
+  0xd870, 0xb3eb, 0xdcd5, 0xdcd1, 0xdce0, 0xdcca, 0xdcd3, 0xb6e5,
+  0xb6e6, 0xb6de, 0xdcdc, 0xb6e8, 0xdccf, 0xdcce, 0xdccc, 0xdcde,
+  0xb6dc, 0xdcd8, 0xdccd, 0xb6df, 0xdcd6, 0xb6da, 0xdcd2, 0xdcd9,
+  0xdcdb, 0xdcdf, 0xb6e3, 0xdccb, 0xb6dd, 0xdcd0, 0xb6d8, 0xb6e4,
+  0xdcda, 0xb6e0, 0xb6e1, 0xb6e7, 0xb6db, 0xa25f, 0xb6d9, 0xdcd4,
+  0xb6e2, 0xdcdd, 0xb9cd, 0xb9c8, 0xe155, 0xe151, 0xe14b, 0xb9c2,
+  0xb9be, 0xe154, 0xb9bf, 0xe14e, 0xe150, 0xe153, 0xb9c4, 0xb9cb,
+  0xb9c5, 0xe149, 0xb9c6, 0xb9c7, 0xe14c, 0xb9cc, 0xe14a, 0xe14f,
+  0xb9c3, 0xe148, 0xb9c9, 0xb9c1, 0xb9c0, 0xe14d, 0xe152, 0xb9ca,
+  0xe147, 0xbc4d, 0xe547, 0xe544, 0xbc47, 0xbc53, 0xbc54, 0xbc4a,
+  0xe542, 0xbc4c, 0xe4f9, 0xbc52, 0xe546, 0xbc49, 0xe548, 0xbc48,
+  0xe543, 0xe545, 0xbc4b, 0xe541, 0xe4fa, 0xe4f7, 0xd86b, 0xe4fd,
+  0xe4f6, 0xe4fc, 0xe4fb, 0xe4f8, 0xbc4f, 0xbc4e, 0xbc50, 0xe4fe,
+  0xbeb2, 0xe540, 0xe945, 0xe8fd, 0xbebe, 0xe942, 0xbeb6, 0xbeba,
+  0xe941, 0xbeb9, 0xbeb5, 0xbeb8, 0xbeb3, 0xbebd, 0xe943, 0xe8fe,
+  0xbebc, 0xe8fc, 0xbebb, 0xe944, 0xe940, 0xbc51, 0xbebf, 0xe946,
+  0xbeb7, 0xbeb4, 0xecc6, 0xecc8, 0xc07b, 0xecc9, 0xecc7, 0xecc5,
+  0xecc4, 0xc07d, 0xecc3, 0xc07e, 0xecc1, 0xecc2, 0xc07a, 0xc0a1,
+  0xc07c, 0xecc0, 0xc250, 0xefbc, 0xefba, 0xefbf, 0xefbd, 0xefbb,
+  0xefbe, 0xc360, 0xf1f2, 0xf1f3, 0xc456, 0xf1f4, 0xf1f0, 0xf1f5,
+  0xf1f1, 0xc251, 0xf3fe, 0xf441, 0xc459, 0xf440, 0xc458, 0xc457,
+  0xc45a, 0xf5c5, 0xf5c6, 0xc4da, 0xc4d9, 0xc4db, 0xf5c4, 0xf6d8,
+  0xf6d7, 0xc56d, 0xc56f, 0xc56e, 0xf6d9, 0xc5c8, 0xf8a6, 0xc5f1,
+  0xf8a5, 0xf8ee, 0xc949, 0xa57d, 0xa57c, 0xa65f, 0xa65e, 0xc9c7,
+  0xa65d, 0xc9c6, 0xa779, 0xcaa9, 0xcaa8, 0xa777, 0xa77a, 0xcaa7,
+  0xa778, 0xcbf0, 0xcbf1, 0xa954, 0xabaa, 0xd148, 0xd149, 0xae45,
+  0xae46, 0xd4ac, 0xb0e9, 0xb0eb, 0xd4ab, 0xb0ea, 0xd87c, 0xb3f2,
+  0xb6e9, 0xb6ea, 0xdce1, 0xb9cf, 0xb9ce, 0xe549, 0xe948, 0xe947,
+  0xf96b, 0xa467, 0xc959, 0xc96e, 0xc96f, 0xa662, 0xa666, 0xc9c9,
+  0xa664, 0xa663, 0xc9c8, 0xa665, 0xa661, 0xa660, 0xc9ca, 0xa7a6,
+  0xa7a3, 0xa77d, 0xcaaa, 0xcaab, 0xa7a1, 0xcaad, 0xa77b, 0xcaae,
+  0xcaac, 0xa77e, 0xa7a2, 0xa7a5, 0xa7a4, 0xa77c, 0xcaaf, 0xa959,
+  0xcbfe, 0xa95b, 0xa95a, 0xcc40, 0xa958, 0xa957, 0xcbf5, 0xcbf4,
+  0xcbf2, 0xcbf7, 0xcbf6, 0xcbf3, 0xcbfc, 0xcbfd, 0xcbfa, 0xcbf8,
+  0xa956, 0xcbfb, 0xa95c, 0xcc41, 0xcbf9, 0xabab, 0xa955, 0xabac,
+  0xce54, 0xce5a, 0xabb2, 0xce58, 0xce5e, 0xce55, 0xce59, 0xce5b,
+  0xce5d, 0xce57, 0xce56, 0xce51, 0xce52, 0xabad, 0xabaf, 0xabae,
+  0xce53, 0xce5c, 0xabb1, 0xce50, 0xd153, 0xd152, 0xd157, 0xd14e,
+  0xd151, 0xd150, 0xd154, 0xd158, 0xae47, 0xae4a, 0xd14f, 0xd155,
+  0xae49, 0xd14a, 0xabb0, 0xd4ba, 0xd156, 0xd14d, 0xae48, 0xd14c,
+  0xd4b1, 0xb0ec, 0xb0f0, 0xd4c1, 0xd4af, 0xd4bd, 0xb0f1, 0xd4bf,
+  0xd4c5, 0xd4c9, 0xd4c0, 0xd4b4, 0xd4bc, 0xd4ca, 0xd4c8, 0xd4be,
+  0xd4b9, 0xd4b2, 0xd8a6, 0xd4b0, 0xb0f5, 0xd4b7, 0xb0f6, 0xb0f2,
+  0xd4ad, 0xd4c3, 0xd4b5, 0xd4b3, 0xd4c6, 0xb0f3, 0xd4cc, 0xb0ed,
+  0xb0ef, 0xd4bb, 0xd4b6, 0xae4b, 0xb0ee, 0xd4b8, 0xd4c7, 0xd4cb,
+  0xd4c2, 0xd4c4, 0xd4ae, 0xd8a1, 0xd8aa, 0xd8a9, 0xb3fa, 0xd8a2,
+  0xb3fb, 0xb3f9, 0xd8a4, 0xb3f6, 0xd8a8, 0xd8a3, 0xd8a5, 0xd87d,
+  0xb3f4, 0xd8b2, 0xd8b1, 0xd8ae, 0xb3f3, 0xb3f7, 0xb3f8, 0xd14b,
+  0xd8ab, 0xb3f5, 0xb0f4, 0xd8ad, 0xd87e, 0xd8b0, 0xd8af, 0xd8b3,
+  0xdcef, 0xd8ac, 0xd8a7, 0xdce7, 0xb6f4, 0xb6f7, 0xb6f2, 0xdce6,
+  0xdcea, 0xdce5, 0xb6ec, 0xb6f6, 0xdce2, 0xb6f0, 0xdce9, 0xb6ee,
+  0xb6ed, 0xdcec, 0xb6ef, 0xdcee, 0xdceb, 0xb6eb, 0xb6f5, 0xdcf0,
+  0xdce4, 0xdced, 0xdce3, 0xb6f1, 0xb6f3, 0xdce8, 0xdcf1, 0xe15d,
+  0xb9d0, 0xe163, 0xb9d5, 0xe15f, 0xe166, 0xe157, 0xb9d7, 0xb9d1,
+  0xe15c, 0xbc55, 0xe15b, 0xe164, 0xb9d2, 0xb9d6, 0xe15a, 0xe160,
+  0xe165, 0xe156, 0xb9d4, 0xe15e, 0xe162, 0xe168, 0xe158, 0xe161,
+  0xb9d3, 0xe167, 0xe159, 0xbc59, 0xe54b, 0xbc57, 0xbc56, 0xe54d,
+  0xe552, 0xe54e, 0xe551, 0xbc5c, 0xbea5, 0xbc5b, 0xe54a, 0xe550,
+  0xbc5a, 0xe54f, 0xe54c, 0xbc58, 0xe94d, 0xe94f, 0xe94a, 0xbec1,
+  0xe94c, 0xbec0, 0xe94e, 0xbec3, 0xe950, 0xbec2, 0xe949, 0xe94b,
+  0xc0a5, 0xeccc, 0xc0a4, 0xeccd, 0xc0a3, 0xeccb, 0xc0a2, 0xecca,
+  0xc253, 0xc252, 0xf1f6, 0xf1f8, 0xf1f7, 0xc361, 0xc362, 0xc363,
+  0xf442, 0xc45b, 0xf7d3, 0xf7d2, 0xc5f2, 0xa468, 0xa4d0, 0xa7a7,
+  0xce5f, 0xb3fc, 0xb3fd, 0xdcf2, 0xb9d8, 0xe169, 0xe553, 0xc95a,
+  0xcab0, 0xcc42, 0xce60, 0xd159, 0xae4c, 0xf1f9, 0xc4dc, 0xa469,
+  0xa57e, 0xc970, 0xa667, 0xa668, 0xa95d, 0xb0f7, 0xb9da, 0xb9db,
+  0xb9d9, 0xa46a, 0xa4d1, 0xa4d3, 0xa4d2, 0xc95b, 0xa4d4, 0xa5a1,
+  0xc971, 0xa5a2, 0xa669, 0xa66a, 0xc9cb, 0xa7a8, 0xcab1, 0xa961,
+  0xcc43, 0xa95f, 0xa960, 0xa95e, 0xd15a, 0xabb6, 0xabb5, 0xabb7,
+  0xabb4, 0xce61, 0xa962, 0xabb3, 0xae4d, 0xae4e, 0xae4f, 0xd4cd,
+  0xb3fe, 0xd8b4, 0xb0f8, 0xb6f8, 0xb9dd, 0xb9dc, 0xe16a, 0xbc5d,
+  0xbec4, 0xefc0, 0xf6da, 0xf7d4, 0xa46b, 0xa5a3, 0xa5a4, 0xc9d1,
+  0xa66c, 0xa66f, 0xc9cf, 0xc9cd, 0xa66e, 0xc9d0, 0xc9d2, 0xc9cc,
+  0xa671, 0xa670, 0xa66d, 0xa66b, 0xc9ce, 0xa7b3, 0xa7b0, 0xcab6,
+  0xcab9, 0xcab8, 0xa7aa, 0xa7b2, 0xa7af, 0xcab5, 0xcab3, 0xa7ae,
+  0xa7a9, 0xa7ac, 0xcab4, 0xcabb, 0xcab7, 0xa7ad, 0xa7b1, 0xa7b4,
+  0xcab2, 0xcaba, 0xa7ab, 0xa967, 0xa96f, 0xcc4f, 0xcc48, 0xa970,
+  0xcc53, 0xcc44, 0xcc4b, 0xa966, 0xcc45, 0xa964, 0xcc4c, 0xcc50,
+  0xa963, 0xcc51, 0xcc4a, 0xcc4d, 0xa972, 0xa969, 0xcc54, 0xcc52,
+  0xa96e, 0xa96c, 0xcc49, 0xa96b, 0xcc47, 0xcc46, 0xa96a, 0xa968,
+  0xa971, 0xa96d, 0xa965, 0xcc4e, 0xabb9, 0xabc0, 0xce6f, 0xabb8,
+  0xce67, 0xce63, 0xce73, 0xce62, 0xabbb, 0xce6c, 0xabbe, 0xabc1,
+  0xabbc, 0xce70, 0xabbf, 0xae56, 0xce76, 0xce64, 0xce66, 0xce6d,
+  0xce71, 0xce75, 0xce72, 0xce6b, 0xce6e, 0xce68, 0xabc3, 0xce6a,
+  0xce69, 0xce74, 0xabba, 0xce65, 0xabc2, 0xabbd, 0xae5c, 0xd162,
+  0xae5b, 0xd160, 0xae50, 0xae55, 0xd15f, 0xd15c, 0xd161, 0xae51,
+  0xd15b, 0xae54, 0xae52, 0xd163, 0xae53, 0xae57, 0xae58, 0xae5a,
+  0xae59, 0xd15d, 0xd15e, 0xd164, 0xd4d4, 0xb0f9, 0xd8c2, 0xd4d3,
+  0xd4e6, 0xb140, 0xd4e4, 0xb0fe, 0xb0fa, 0xd4ed, 0xd4dd, 0xd4e0,
+  0xb143, 0xd4ea, 0xd4e2, 0xb0fb, 0xb144, 0xd4e7, 0xd4e5, 0xd4d6,
+  0xd4eb, 0xd4df, 0xd4da, 0xd4d0, 0xd4ec, 0xd4dc, 0xd4cf, 0xb142,
+  0xd4e1, 0xd4ee, 0xd4de, 0xd4d2, 0xd4d7, 0xd4ce, 0xb141, 0xd4db,
+  0xd4d8, 0xb0fc, 0xd4d1, 0xd4e9, 0xb0fd, 0xd4d9, 0xd4d5, 0xd4e8,
+  0xb440, 0xd8bb, 0xd8b8, 0xd8c9, 0xd8bd, 0xd8ca, 0xb442, 0xd8c6,
+  0xd8c3, 0xd8c4, 0xd8c7, 0xd8cb, 0xd4e3, 0xd8cd, 0xdd47, 0xb443,
+  0xd8ce, 0xd8b6, 0xd8c0, 0xd8c5, 0xb441, 0xb444, 0xd8cc, 0xd8cf,
+  0xd8ba, 0xd8b7, 0xd8b9, 0xd8be, 0xd8bc, 0xb445, 0xd8c8, 0xd8bf,
+  0xd8c1, 0xd8b5, 0xdcfa, 0xdcf8, 0xb742, 0xb740, 0xdd43, 0xdcf9,
+  0xdd44, 0xdd40, 0xdcf7, 0xdd46, 0xdcf6, 0xdcfd, 0xb6fe, 0xb6fd,
+  0xb6fc, 0xdcfb, 0xdd41, 0xb6f9, 0xb741, 0xdcf4, 0xdcfe, 0xdcf3,
+  0xdcfc, 0xb6fa, 0xdd42, 0xdcf5, 0xb6fb, 0xdd45, 0xe16e, 0xb9e2,
+  0xb9e1, 0xb9e3, 0xe17a, 0xe170, 0xe176, 0xe16b, 0xe179, 0xe178,
+  0xe17c, 0xe175, 0xb9de, 0xe174, 0xb9e4, 0xe16d, 0xb9df, 0xe17b,
+  0xb9e0, 0xe16f, 0xe172, 0xe177, 0xe171, 0xe16c, 0xe173, 0xe555,
+  0xbc61, 0xe558, 0xe557, 0xe55a, 0xe55c, 0xbc5f, 0xe556, 0xe554,
+  0xe55d, 0xe55b, 0xe559, 0xe55f, 0xe55e, 0xbc63, 0xbc5e, 0xbc60,
+  0xbc62, 0xe560, 0xe957, 0xe956, 0xe955, 0xe958, 0xe951, 0xe952,
+  0xe95a, 0xe953, 0xbec5, 0xe95c, 0xe95b, 0xe954, 0xecd1, 0xc0a8,
+  0xeccf, 0xecd4, 0xecd3, 0xe959, 0xc0a7, 0xecd2, 0xecce, 0xecd6,
+  0xecd5, 0xc0a6, 0xecd0, 0xbec6, 0xc254, 0xefc1, 0xf1fa, 0xf1fb,
+  0xf1fc, 0xc45c, 0xc45d, 0xf443, 0xf5c8, 0xf5c7, 0xf6db, 0xf6dc,
+  0xf7d5, 0xf8a7, 0xa46c, 0xa46d, 0xa46e, 0xa4d5, 0xa5a5, 0xc9d3,
+  0xa672, 0xa673, 0xa7b7, 0xa7b8, 0xa7b6, 0xa7b5, 0xa973, 0xcc55,
+  0xa975, 0xa974, 0xcc56, 0xabc4, 0xae5d, 0xd165, 0xd4f0, 0xb145,
+  0xb447, 0xd4ef, 0xb446, 0xb9e5, 0xe17d, 0xbec7, 0xc0a9, 0xecd7,
+  0xc45e, 0xc570, 0xc972, 0xa5a6, 0xc973, 0xa676, 0xa674, 0xa675,
+  0xa677, 0xa7ba, 0xa7b9, 0xcabc, 0xa7bb, 0xcabd, 0xcc57, 0xcc58,
+  0xa976, 0xa978, 0xa97a, 0xa977, 0xa97b, 0xa979, 0xabc8, 0xabc5,
+  0xabc7, 0xabc9, 0xabc6, 0xd166, 0xce77, 0xd168, 0xd167, 0xae63,
+  0xae5f, 0xae60, 0xae62, 0xae64, 0xae61, 0xae66, 0xae65, 0xb14a,
+  0xd4f2, 0xd4f1, 0xb149, 0xb148, 0xb147, 0xb14b, 0xb146, 0xd8d5,
+  0xd8d2, 0xb449, 0xd8d1, 0xd8d6, 0xb44b, 0xd8d4, 0xb448, 0xb44a,
+  0xd8d3, 0xdd48, 0xdd49, 0xdd4a, 0xb9e6, 0xb9ee, 0xe17e, 0xb9e8,
+  0xb9ec, 0xe1a1, 0xb9ed, 0xb9e9, 0xb9ea, 0xb9e7, 0xb9eb, 0xbc66,
+  0xd8d0, 0xbc67, 0xbc65, 0xbc64, 0xe95d, 0xbec8, 0xecd8, 0xecd9,
+  0xc364, 0xc45f, 0xa46f, 0xa678, 0xabca, 0xd169, 0xae67, 0xb14e,
+  0xb14d, 0xb14c, 0xb44c, 0xb44d, 0xd8d7, 0xb9ef, 0xbec9, 0xa470,
+  0xc95c, 0xa4d6, 0xc974, 0xc9d4, 0xa679, 0xa97c, 0xdd4b, 0xa471,
+  0xa4d7, 0xc9d5, 0xcabe, 0xcabf, 0xa7bc, 0xd8d8, 0xb44e, 0xdd4c,
+  0xc0aa, 0xa472, 0xa4a8, 0xa4d8, 0xc975, 0xa5a7, 0xa7c0, 0xa7bf,
+  0xa7bd, 0xa7be, 0xcc59, 0xa97e, 0xa9a1, 0xcc5a, 0xa97d, 0xabce,
+  0xce78, 0xabcd, 0xabcb, 0xabcc, 0xae6a, 0xae68, 0xd16b, 0xae69,
+  0xd16a, 0xae5e, 0xd4f3, 0xb150, 0xb151, 0xb14f, 0xb9f0, 0xe1a2,
+  0xbc68, 0xbc69, 0xe561, 0xc0ab, 0xefc2, 0xefc3, 0xc4dd, 0xf8a8,
+  0xc94b, 0xa4d9, 0xa473, 0xc977, 0xc976, 0xa67a, 0xc9d7, 0xc9d8,
+  0xc9d6, 0xc9d9, 0xcac7, 0xcac2, 0xcac4, 0xcac6, 0xcac3, 0xa7c4,
+  0xcac0, 0xcac1, 0xa7c1, 0xa7c2, 0xcac5, 0xcac8, 0xa7c3, 0xcac9,
+  0xcc68, 0xcc62, 0xcc5d, 0xa9a3, 0xcc65, 0xcc63, 0xcc5c, 0xcc69,
+  0xcc6c, 0xcc67, 0xcc60, 0xa9a5, 0xcc66, 0xa9a6, 0xcc61, 0xcc64,
+  0xcc5b, 0xcc5f, 0xcc6b, 0xa9a7, 0xa9a8, 0xcc5e, 0xcc6a, 0xa9a2,
+  0xa9a4, 0xceab, 0xcea4, 0xceaa, 0xcea3, 0xcea5, 0xce7d, 0xce7b,
+  0xceac, 0xcea9, 0xce79, 0xabd0, 0xcea7, 0xcea8, 0xcea6, 0xce7c,
+  0xce7a, 0xabcf, 0xcea2, 0xce7e, 0xcea1, 0xcead, 0xae6f, 0xae6e,
+  0xd16c, 0xae6b, 0xd16e, 0xae70, 0xd16f, 0xae73, 0xae71, 0xd170,
+  0xceae, 0xd172, 0xae6d, 0xae6c, 0xd16d, 0xd171, 0xae72, 0xb153,
+  0xb152, 0xd4f5, 0xd4f9, 0xd4fb, 0xb154, 0xd4fe, 0xb158, 0xd541,
+  0xb15a, 0xb156, 0xb15e, 0xb15b, 0xd4f7, 0xb155, 0xd4f6, 0xd4f4,
+  0xd543, 0xd4f8, 0xb157, 0xd542, 0xb15c, 0xd4fd, 0xd4fc, 0xb15d,
+  0xd4fa, 0xb159, 0xd544, 0xd540, 0xd8e7, 0xd8ee, 0xd8e3, 0xb451,
+  0xd8df, 0xd8ef, 0xd8d9, 0xd8ec, 0xd8ea, 0xd8e4, 0xd8ed, 0xd8e6,
+  0xd8de, 0xd8f0, 0xd8dc, 0xd8e9, 0xd8da, 0xd8f1, 0xb452, 0xd8eb,
+  0xdd4f, 0xd8dd, 0xb44f, 0xd8e1, 0xb450, 0xd8e0, 0xd8e5, 0xd8e2,
+  0xd8e8, 0xdd53, 0xdd56, 0xdd4e, 0xdd50, 0xdd55, 0xdd54, 0xb743,
+  0xd8db, 0xdd52, 0xb744, 0xdd4d, 0xdd51, 0xe1a9, 0xe1b0, 0xe1a7,
+  0xe1ae, 0xe1a5, 0xe1ad, 0xe1b1, 0xe1a4, 0xe1a8, 0xe1a3, 0xb9f1,
+  0xe1a6, 0xb9f2, 0xe1ac, 0xe1ab, 0xe1aa, 0xe1af, 0xe565, 0xe567,
+  0xbc6b, 0xe568, 0xe563, 0xe562, 0xe56c, 0xe56a, 0xbc6a, 0xe56d,
+  0xe564, 0xe569, 0xe56b, 0xe566, 0xe961, 0xe966, 0xe960, 0xe965,
+  0xe95e, 0xe968, 0xe964, 0xe969, 0xe963, 0xe95f, 0xe967, 0xe96a,
+  0xe962, 0xecda, 0xc0af, 0xc0ad, 0xc0ac, 0xc0ae, 0xefc4, 0xf172,
+  0xf1fd, 0xf444, 0xf445, 0xc460, 0xf5c9, 0xc4de, 0xf5ca, 0xf6de,
+  0xc572, 0xc571, 0xf6dd, 0xc5c9, 0xf7d6, 0xa474, 0xa67b, 0xc9da,
+  0xcaca, 0xa8b5, 0xb15f, 0xa475, 0xa5aa, 0xa5a9, 0xa5a8, 0xa7c5,
+  0xae74, 0xdd57, 0xa476, 0xa477, 0xa478, 0xa4da, 0xabd1, 0xceaf,
+  0xb453, 0xa479, 0xc95d, 0xa5ab, 0xa5ac, 0xc978, 0xa67c, 0xcacb,
+  0xa7c6, 0xcacc, 0xa9ae, 0xcc6e, 0xa9ac, 0xa9ab, 0xcc6d, 0xa9a9,
+  0xcc6f, 0xa9aa, 0xa9ad, 0xabd2, 0xabd4, 0xceb3, 0xceb0, 0xceb1,
+  0xceb2, 0xceb4, 0xabd3, 0xd174, 0xd173, 0xae76, 0xae75, 0xb162,
+  0xd546, 0xb161, 0xb163, 0xb160, 0xb455, 0xd545, 0xb456, 0xd8f3,
+  0xb457, 0xd8f2, 0xb454, 0xdd5a, 0xdd5c, 0xb745, 0xdd5b, 0xdd59,
+  0xdd58, 0xe1b4, 0xb9f7, 0xb9f5, 0xb9f6, 0xe1b2, 0xe1b3, 0xb9f3,
+  0xe571, 0xe56f, 0xbc6d, 0xe570, 0xbc6e, 0xbc6c, 0xb9f4, 0xe96d,
+  0xe96b, 0xe96c, 0xe56e, 0xecdc, 0xc0b0, 0xecdb, 0xefc5, 0xefc6,
+  0xe96e, 0xf1fe, 0xa47a, 0xa5ad, 0xa67e, 0xc9db, 0xa67d, 0xa9af,
+  0xb746, 0xa4db, 0xa5ae, 0xabd5, 0xb458, 0xc979, 0xc97a, 0xc9dc,
+  0xa7c8, 0xcad0, 0xcace, 0xa7c9, 0xcacd, 0xcacf, 0xcad1, 0xa7c7,
+  0xa9b3, 0xa9b4, 0xa9b1, 0xa9b0, 0xceb8, 0xa9b2, 0xabd6, 0xceb7,
+  0xceb9, 0xceb6, 0xceba, 0xabd7, 0xae79, 0xd175, 0xd177, 0xae77,
+  0xd178, 0xae78, 0xd176, 0xceb5, 0xd547, 0xd54a, 0xd54b, 0xd548,
+  0xb167, 0xb166, 0xb164, 0xb165, 0xd549, 0xb168, 0xb45a, 0xb45b,
+  0xb45c, 0xdd5d, 0xdd5f, 0xdd61, 0xb748, 0xb747, 0xb459, 0xdd60,
+  0xdd5e, 0xe1b8, 0xe1b6, 0xe1bc, 0xb9f8, 0xe1bd, 0xe1ba, 0xb9f9,
+  0xe1b7, 0xe1b5, 0xe1bb, 0xbc70, 0xe573, 0xe1b9, 0xbc72, 0xe574,
+  0xbc71, 0xbc74, 0xe575, 0xbc6f, 0xbc73, 0xe973, 0xe971, 0xe970,
+  0xe972, 0xe96f, 0xc366, 0xf446, 0xf447, 0xf5cb, 0xf6df, 0xc655,
+  0xa9b5, 0xa7ca, 0xabd8, 0xa47b, 0xa4dc, 0xa5af, 0xc9dd, 0xa7cb,
+  0xcad2, 0xcebb, 0xabd9, 0xb9fa, 0xa47c, 0xa6a1, 0xb749, 0xa47d,
+  0xa4dd, 0xa4de, 0xa5b1, 0xa5b0, 0xc9de, 0xa6a2, 0xcad3, 0xa7cc,
+  0xcc71, 0xcc72, 0xcc73, 0xa9b6, 0xa9b7, 0xcc70, 0xa9b8, 0xabda,
+  0xcebc, 0xd17a, 0xae7a, 0xd179, 0xb169, 0xd54c, 0xb16a, 0xd54d,
+  0xb45d, 0xdd62, 0xe1bf, 0xe1be, 0xb9fb, 0xbc75, 0xe576, 0xbeca,
+  0xe974, 0xc0b1, 0xc573, 0xf7d8, 0xcc74, 0xcebd, 0xb16b, 0xd8f4,
+  0xb74a, 0xc255, 0xa7ce, 0xa7cd, 0xabdb, 0xd17b, 0xb16d, 0xb343,
+  0xb16e, 0xb16c, 0xb45e, 0xe1c0, 0xb9fc, 0xbc76, 0xc94c, 0xc9df,
+  0xcad5, 0xa7cf, 0xcad4, 0xa7d0, 0xa9bc, 0xcc77, 0xcc76, 0xa9bb,
+  0xa9b9, 0xa9ba, 0xcc75, 0xabdd, 0xcebe, 0xabe0, 0xabdc, 0xabe2,
+  0xabde, 0xabdf, 0xabe1, 0xae7d, 0xae7c, 0xae7b, 0xd54f, 0xb16f,
+  0xb172, 0xb170, 0xd54e, 0xb175, 0xb171, 0xd550, 0xb174, 0xb173,
+  0xd8f6, 0xd8f5, 0xb461, 0xb45f, 0xb460, 0xd8f7, 0xb74b, 0xdd64,
+  0xb74c, 0xdd63, 0xe577, 0xbc78, 0xe1c1, 0xbc77, 0xb9fd, 0xecde,
+  0xe975, 0xc0b2, 0xecdd, 0xf240, 0xf448, 0xf449, 0xa4df, 0xa5b2,
+  0xc97b, 0xa7d2, 0xa7d4, 0xc9e2, 0xcad8, 0xcad7, 0xcad6, 0xc9e1,
+  0xc9e0, 0xa6a4, 0xa7d3, 0xa7d1, 0xa6a3, 0xa9bd, 0xcc78, 0xa9be,
+  0xcadd, 0xcadf, 0xcade, 0xcc79, 0xcada, 0xa7d8, 0xa7d6, 0xcad9,
+  0xcadb, 0xcae1, 0xa7d5, 0xcadc, 0xcae5, 0xa9c0, 0xcae2, 0xa7d7,
+  0xcae0, 0xcae3, 0xa9bf, 0xa9c1, 0xcae4, 0xccaf, 0xcca2, 0xcc7e,
+  0xccae, 0xcca9, 0xabe7, 0xa9c2, 0xccaa, 0xccad, 0xabe3, 0xccac,
+  0xa9c3, 0xa9c8, 0xa9c6, 0xcca3, 0xcc7c, 0xcca5, 0xa9cd, 0xccb0,
+  0xabe4, 0xcca6, 0xabe5, 0xa9c9, 0xcca8, 0xcecd, 0xabe6, 0xcc7b,
+  0xa9ca, 0xabe8, 0xa9cb, 0xa9c7, 0xa9cc, 0xcca7, 0xcc7a, 0xccab,
+  0xa9c4, 0xcc7d, 0xcca4, 0xcca1, 0xa9c5, 0xcebf, 0xcec0, 0xceca,
+  0xd1a1, 0xcecb, 0xabee, 0xcece, 0xcec4, 0xabed, 0xcec6, 0xcec7,
+  0xcec9, 0xabe9, 0xaea3, 0xcec5, 0xcec1, 0xaea4, 0xcecf, 0xae7e,
+  0xd17d, 0xcec8, 0xd17c, 0xcec3, 0xcecc, 0xabec, 0xaea1, 0xabf2,
+  0xaea2, 0xced0, 0xd17e, 0xabeb, 0xaea6, 0xabf1, 0xabf0, 0xabef,
+  0xaea5, 0xced1, 0xaea7, 0xabea, 0xcec2, 0xb176, 0xd1a4, 0xd1a6,
+  0xd1a8, 0xaea8, 0xaeae, 0xd553, 0xd1ac, 0xd1a3, 0xb178, 0xd551,
+  0xaead, 0xaeab, 0xd1ae, 0xd552, 0xd1a5, 0xaeac, 0xd1a9, 0xaeaf,
+  0xd1ab, 0xaeaa, 0xd1aa, 0xd1ad, 0xd1a7, 0xaea9, 0xb179, 0xd1a2,
+  0xb177, 0xb17a, 0xd555, 0xd55e, 0xb464, 0xb17c, 0xb1a3, 0xb465,
+  0xd560, 0xb1aa, 0xd8f9, 0xd556, 0xb1a2, 0xb1a5, 0xb17e, 0xd554,
+  0xd562, 0xd565, 0xd949, 0xd563, 0xd8fd, 0xb1a1, 0xb1a8, 0xb1ac,
+  0xd55d, 0xd8f8, 0xd561, 0xb17b, 0xd8fa, 0xd564, 0xd8fc, 0xd559,
+  0xb462, 0xd557, 0xd558, 0xb1a7, 0xb1a6, 0xd55b, 0xb1ab, 0xd55f,
+  0xb1a4, 0xd55c, 0xb1a9, 0xb466, 0xb463, 0xd8fb, 0xd55a, 0xb17d,
+  0xb46b, 0xb46f, 0xd940, 0xb751, 0xb46d, 0xd944, 0xb471, 0xdd65,
+  0xd946, 0xb753, 0xb469, 0xb46c, 0xd947, 0xd948, 0xd94e, 0xb473,
+  0xb754, 0xd94a, 0xd94f, 0xd943, 0xb75e, 0xb755, 0xb472, 0xd941,
+  0xd950, 0xb75d, 0xb470, 0xb74e, 0xd94d, 0xb474, 0xd945, 0xd8fe,
+  0xb46a, 0xd942, 0xd94b, 0xb74d, 0xb752, 0xb467, 0xd94c, 0xb750,
+  0xb468, 0xb75c, 0xe1c3, 0xdd70, 0xdd68, 0xe1c2, 0xdd6c, 0xdd6e,
+  0xdd6b, 0xb75b, 0xdd6a, 0xb75f, 0xe1d2, 0xb75a, 0xba40, 0xdd71,
+  0xe1c4, 0xb758, 0xdd69, 0xdd6d, 0xb9fe, 0xb74f, 0xdd66, 0xdd67,
+  0xba41, 0xb757, 0xb759, 0xb756, 0xdd6f, 0xe1c8, 0xe1c9, 0xe1ce,
+  0xbc7d, 0xe1d5, 0xba47, 0xba46, 0xe1d0, 0xbc7c, 0xe1c5, 0xba45,
+  0xe1d4, 0xba43, 0xba44, 0xe1d1, 0xe5aa, 0xbc7a, 0xb46e, 0xe1d3,
+  0xbca3, 0xe1cb, 0xbc7b, 0xbca2, 0xe1c6, 0xe1ca, 0xe1c7, 0xe1cd,
+  0xba48, 0xbc79, 0xba42, 0xe57a, 0xe1cf, 0xbca1, 0xbca4, 0xe1cc,
+  0xbc7e, 0xe579, 0xe57e, 0xbece, 0xe578, 0xe9a3, 0xe5a9, 0xbca8,
+  0xbca6, 0xbecc, 0xe5a6, 0xe5a2, 0xbcac, 0xe978, 0xbcaa, 0xe5a1,
+  0xe976, 0xe5a5, 0xe5a8, 0xe57d, 0xbcab, 0xbca5, 0xe977, 0xbecd,
+  0xe5a7, 0xbca7, 0xbca9, 0xe5a4, 0xbcad, 0xe5a3, 0xe57c, 0xe57b,
+  0xbecb, 0xe5ab, 0xe97a, 0xece0, 0xbed0, 0xe9a2, 0xe97e, 0xece1,
+  0xbed1, 0xe9a1, 0xe97c, 0xc0b4, 0xecdf, 0xe979, 0xe97b, 0xc0b5,
+  0xbed3, 0xc0b3, 0xbed2, 0xc0b7, 0xe97d, 0xbecf, 0xefcf, 0xefc7,
+  0xece7, 0xefc8, 0xece3, 0xc256, 0xece5, 0xece4, 0xc0b6, 0xece2,
+  0xece6, 0xefd0, 0xefcc, 0xefce, 0xefc9, 0xefca, 0xefcd, 0xefcb,
+  0xc367, 0xc36a, 0xc369, 0xc368, 0xc461, 0xf44a, 0xc462, 0xf241,
+  0xc4df, 0xf5cc, 0xc4e0, 0xc574, 0xc5ca, 0xf7d9, 0xf7da, 0xf7db,
+  0xf9ba, 0xa4e0, 0xc97c, 0xa5b3, 0xa6a6, 0xa6a7, 0xa6a5, 0xa6a8,
+  0xa7da, 0xa7d9, 0xccb1, 0xa9cf, 0xa9ce, 0xd1af, 0xb1ad, 0xb1ae,
+  0xb475, 0xdd72, 0xb760, 0xb761, 0xdd74, 0xdd76, 0xdd75, 0xe1d7,
+  0xe1d6, 0xba49, 0xe1d8, 0xe5ac, 0xbcae, 0xbed4, 0xc0b8, 0xc257,
+  0xc0b9, 0xa4e1, 0xcae6, 0xccb2, 0xa9d1, 0xa9d0, 0xa9d2, 0xabf3,
+  0xced2, 0xced3, 0xd1b0, 0xaeb0, 0xb1af, 0xb476, 0xd951, 0xa4e2,
+  0xa47e, 0xa4e3, 0xc97d, 0xa5b7, 0xa5b6, 0xa5b4, 0xa5b5, 0xa6ab,
+  0xc9e9, 0xc9eb, 0xa6aa, 0xc9e3, 0xc9e4, 0xc9ea, 0xc9e6, 0xc9e8,
+  0xa6a9, 0xc9e5, 0xc9ec, 0xc9e7, 0xa7e1, 0xa7ea, 0xa7e8, 0xcaf0,
+  0xcaed, 0xcaf5, 0xa7e6, 0xcaf6, 0xa7df, 0xcaf3, 0xa7e5, 0xcaef,
+  0xcaee, 0xa7e3, 0xcaf4, 0xa7e4, 0xa9d3, 0xa7de, 0xcaf1, 0xcae7,
+  0xa7db, 0xa7ee, 0xcaec, 0xcaf2, 0xa7e0, 0xa7e2, 0xcae8, 0xcae9,
+  0xcaea, 0xa7ed, 0xa7e7, 0xa7ec, 0xcaeb, 0xa7eb, 0xa7dd, 0xa7dc,
+  0xa7e9, 0xa9e1, 0xccbe, 0xccb7, 0xa9dc, 0xa9ef, 0xccb3, 0xccba,
+  0xccbc, 0xccbf, 0xa9ea, 0xccbb, 0xccb4, 0xa9e8, 0xccb8, 0xccc0,
+  0xa9d9, 0xccbd, 0xa9e3, 0xa9e2, 0xccb6, 0xa9d7, 0xa9d8, 0xa9d6,
+  0xa9ee, 0xa9e6, 0xa9e0, 0xa9d4, 0xccb9, 0xa9df, 0xa9d5, 0xa9e7,
+  0xa9f0, 0xced4, 0xa9e4, 0xccb5, 0xa9da, 0xa9dd, 0xa9de, 0xa9ec,
+  0xa9ed, 0xa9eb, 0xa9e5, 0xa9e9, 0xa9db, 0xabf4, 0xceda, 0xac41,
+  0xabf8, 0xabfa, 0xac40, 0xcee6, 0xabfd, 0xd1b1, 0xaeb1, 0xac43,
+  0xced7, 0xcedf, 0xabfe, 0xcede, 0xcedb, 0xcee3, 0xcee5, 0xabf7,
+  0xabfb, 0xac42, 0xaeb3, 0xcee0, 0xabf9, 0xac45, 0xced9, 0xabfc,
+  0xaeb2, 0xabf6, 0xced6, 0xcedd, 0xced5, 0xced8, 0xcedc, 0xd1b2,
+  0xac44, 0xcee1, 0xcee2, 0xcee4, 0xabf5, 0xaec1, 0xd1be, 0xaebf,
+  0xaec0, 0xd1b4, 0xd1c4, 0xaeb6, 0xd566, 0xd1c6, 0xd1c0, 0xd1b7,
+  0xd1c9, 0xd1ba, 0xaebc, 0xd57d, 0xd1bd, 0xaebe, 0xaeb5, 0xd1cb,
+  0xd1bf, 0xaeb8, 0xd1b8, 0xd1b5, 0xd1b6, 0xaeb9, 0xd1c5, 0xd1cc,
+  0xaebb, 0xd1bc, 0xd1bb, 0xaec3, 0xaec2, 0xaeb4, 0xaeba, 0xaebd,
+  0xd1c8, 0xd1c2, 0xaeb7, 0xd1b3, 0xd1ca, 0xd1c1, 0xd1c3, 0xd1c7,
+  0xd567, 0xb1b7, 0xb1cb, 0xb1ca, 0xb1bf, 0xd579, 0xd575, 0xd572,
+  0xd5a6, 0xb1ba, 0xb1b2, 0xd577, 0xb4a8, 0xb1b6, 0xd5a1, 0xb1cc,
+  0xb1c9, 0xd57b, 0xd56a, 0xb1c8, 0xd5a3, 0xd569, 0xb1bd, 0xb1c1,
+  0xd5a2, 0xd573, 0xb1c2, 0xb1bc, 0xd568, 0xb478, 0xd5a5, 0xd571,
+  0xb1c7, 0xd574, 0xd5a4, 0xb1c6, 0xd952, 0xb1b3, 0xd56f, 0xb1b8,
+  0xb1c3, 0xb1be, 0xd578, 0xd56e, 0xd56c, 0xd57e, 0xb1b0, 0xb1c4,
+  0xb1b4, 0xb477, 0xd57c, 0xb1b5, 0xb1b1, 0xb1c0, 0xb1bb, 0xb1b9,
+  0xd570, 0xb1c5, 0xd56d, 0xd57a, 0xd576, 0xd954, 0xd953, 0xd56b,
+  0xd964, 0xb47a, 0xd96a, 0xd959, 0xd967, 0xdd77, 0xb47d, 0xd96b,
+  0xd96e, 0xb47c, 0xd95c, 0xd96d, 0xd96c, 0xb47e, 0xd955, 0xb479,
+  0xb4a3, 0xb4a1, 0xd969, 0xd95f, 0xb4a5, 0xd970, 0xd968, 0xd971,
+  0xb4ad, 0xb4ab, 0xd966, 0xd965, 0xd963, 0xd95d, 0xb4a4, 0xb4a2,
+  0xd1b9, 0xd956, 0xddb7, 0xd957, 0xb47b, 0xb4aa, 0xdd79, 0xb4a6,
+  0xb4a7, 0xd958, 0xd96f, 0xdd78, 0xd960, 0xd95b, 0xb4a9, 0xd961,
+  0xd95e, 0xb4ae, 0xb770, 0xdd7c, 0xddb1, 0xddb6, 0xddaa, 0xb76c,
+  0xddbb, 0xb769, 0xdd7a, 0xdd7b, 0xb762, 0xb76b, 0xdda4, 0xb76e,
+  0xb76f, 0xdda5, 0xddb2, 0xddb8, 0xb76a, 0xb764, 0xdda3, 0xdd7d,
+  0xddba, 0xdda8, 0xdda9, 0xdd7e, 0xddb4, 0xddab, 0xddb5, 0xddad,
+  0xb765, 0xe1d9, 0xb768, 0xb766, 0xddb9, 0xddb0, 0xddac, 0xdda1,
+  0xba53, 0xddaf, 0xb76d, 0xdda7, 0xdda6, 0xb767, 0xb763, 0xe1ee,
+  0xddb3, 0xddae, 0xdda2, 0xe1e9, 0xe1da, 0xe1e5, 0xe1ec, 0xba51,
+  0xb4ac, 0xe1ea, 0xba4c, 0xba4b, 0xe1f1, 0xe1db, 0xe1e8, 0xe1dc,
+  0xe1e7, 0xba4f, 0xe1eb, 0xd962, 0xe1f2, 0xe1e3, 0xba52, 0xe5ba,
+  0xbcaf, 0xe1f0, 0xe1ef, 0xba54, 0xe5ad, 0xbcb0, 0xe5ae, 0xe1df,
+  0xe1e0, 0xe1dd, 0xe1e2, 0xe1de, 0xe1f3, 0xba4e, 0xbcb1, 0xba50,
+  0xba55, 0xe1e1, 0xe1ed, 0xe1e6, 0xe5b1, 0xba4a, 0xbcb4, 0xe9aa,
+  0xe5b6, 0xe5b5, 0xe5b7, 0xe5b4, 0xbcb5, 0xbcbb, 0xbcb8, 0xbcb9,
+  0xe5af, 0xe5b2, 0xe5bc, 0xbcc1, 0xbcbf, 0xe5b3, 0xd95a, 0xbcb2,
+  0xe5b9, 0xe5b0, 0xbcc2, 0xe5b8, 0xba4d, 0xbcb7, 0xe1e4, 0xbcba,
+  0xbcbe, 0xbcc0, 0xbcbd, 0xbcbc, 0xbcb6, 0xe5bb, 0xbcb3, 0xbcc3,
+  0xbed8, 0xbed9, 0xe9a9, 0xbee2, 0xbedf, 0xbed6, 0xbedd, 0xe9ab,
+  0xbedb, 0xbed5, 0xbedc, 0xe9a8, 0xc0bb, 0xbed7, 0xbede, 0xc0ba,
+  0xe9a7, 0xe9a6, 0xbee0, 0xbee1, 0xe9a5, 0xe9a4, 0xc0bc, 0xe9ae,
+  0xbeda, 0xe9ac, 0xc0bd, 0xc0c2, 0xecea, 0xecec, 0xc0bf, 0xeced,
+  0xece9, 0xeceb, 0xc0c0, 0xc0c3, 0xece8, 0xc0be, 0xc0c1, 0xc259,
+  0xe9ad, 0xc258, 0xc25e, 0xefd4, 0xc25c, 0xc25d, 0xefd7, 0xefd3,
+  0xc25a, 0xefd1, 0xc36b, 0xefd5, 0xefd6, 0xefd2, 0xc25b, 0xf242,
+  0xf245, 0xf246, 0xf244, 0xf247, 0xc36c, 0xf243, 0xf44e, 0xc464,
+  0xf44d, 0xf44c, 0xf44b, 0xc463, 0xc465, 0xf5cd, 0xc4e2, 0xc4e1,
+  0xf6e1, 0xf6e0, 0xf6e3, 0xc5cb, 0xc575, 0xf7dd, 0xf6e2, 0xf7dc,
+  0xc5cd, 0xc5cc, 0xc5f3, 0xf8a9, 0xf8ef, 0xa4e4, 0xd972, 0xe9af,
+  0xa6ac, 0xcaf7, 0xa7f1, 0xa7ef, 0xa7f0, 0xccc1, 0xa9f1, 0xac46,
+  0xcee7, 0xcee8, 0xac47, 0xd1ce, 0xaec4, 0xaec5, 0xd1cd, 0xb1d3,
+  0xb1cf, 0xd5a7, 0xb1d6, 0xb1d5, 0xb1ce, 0xb1d1, 0xb1d4, 0xb1d0,
+  0xd976, 0xb1cd, 0xb4af, 0xb4b1, 0xb4b2, 0xd975, 0xd978, 0xb4b0,
+  0xd973, 0xd977, 0xd974, 0xb771, 0xddbc, 0xba56, 0xe1f4, 0xbee3,
+  0xbcc4, 0xe5bd, 0xbcc5, 0xbcc6, 0xe5bf, 0xe5be, 0xe5c0, 0xe9b1,
+  0xe9b0, 0xecef, 0xecee, 0xc0c4, 0xc0c5, 0xf248, 0xa4e5, 0xd979,
+  0xb4b4, 0xb4b3, 0xddbd, 0xefd8, 0xc4e3, 0xf7de, 0xa4e6, 0xaec6,
+  0xb1d8, 0xb1d7, 0xd97a, 0xd97b, 0xb772, 0xe1f5, 0xba57, 0xe9b2,
+  0xa4e7, 0xa5b8, 0xa9f2, 0xccc2, 0xcee9, 0xac48, 0xb1d9, 0xd97c,
+  0xb4b5, 0xb773, 0xe5c1, 0xe5c2, 0xecf0, 0xc25f, 0xf8f0, 0xa4e8,
+  0xccc3, 0xa9f3, 0xac49, 0xceea, 0xaec7, 0xd1d2, 0xd1d0, 0xd1d1,
+  0xaec8, 0xd1cf, 0xb1db, 0xb1dc, 0xd5a8, 0xb1dd, 0xb1da, 0xd97d,
+  0xd97e, 0xddbe, 0xba59, 0xba58, 0xecf1, 0xefd9, 0xf24a, 0xf249,
+  0xf44f, 0xc95e, 0xac4a, 0xa4e9, 0xa5b9, 0xa6ae, 0xa6ad, 0xa6af,
+  0xa6b0, 0xc9ee, 0xc9ed, 0xcaf8, 0xa7f2, 0xcafb, 0xcafa, 0xcaf9,
+  0xcafc, 0xa9f4, 0xccc9, 0xccc5, 0xccce, 0xa9fb, 0xa9f9, 0xccca,
+  0xccc6, 0xcccd, 0xa9f8, 0xaa40, 0xccc8, 0xccc4, 0xa9fe, 0xcccb,
+  0xa9f7, 0xcccc, 0xa9fa, 0xa9fc, 0xccd0, 0xcccf, 0xccc7, 0xa9f6,
+  0xa9f5, 0xa9fd, 0xceef, 0xcef5, 0xac50, 0xac4d, 0xceec, 0xcef1,
+  0xac53, 0xac4b, 0xcef0, 0xac4e, 0xac51, 0xcef3, 0xac4c, 0xcef8,
+  0xac4f, 0xac52, 0xceed, 0xcef2, 0xcef6, 0xceee, 0xceeb, 0xcef7,
+  0xcef4, 0xaed0, 0xaec9, 0xaecc, 0xaecf, 0xd1d5, 0xaeca, 0xd1d3,
+  0xaece, 0xaecb, 0xd1d6, 0xaecd, 0xd5ac, 0xb1df, 0xd5ab, 0xd5ad,
+  0xb1de, 0xb1e3, 0xd1d4, 0xd5aa, 0xd5ae, 0xb1e0, 0xd5a9, 0xb1e2,
+  0xb1e1, 0xd9a7, 0xd9a2, 0xb4b6, 0xb4ba, 0xb4b7, 0xd9a5, 0xd9a8,
+  0xb4b8, 0xb4b9, 0xb4be, 0xddc7, 0xd9a6, 0xb4bc, 0xd9a3, 0xd9a1,
+  0xb4bd, 0xd9a4, 0xb779, 0xddbf, 0xb776, 0xb777, 0xb775, 0xddc4,
+  0xddc3, 0xddc0, 0xb77b, 0xddc2, 0xb4bb, 0xddc6, 0xddc1, 0xb778,
+  0xb774, 0xb77a, 0xddc5, 0xba5c, 0xe1f8, 0xe1f7, 0xe1f6, 0xba5a,
+  0xba5b, 0xe5c5, 0xe5c8, 0xbcc8, 0xbcc7, 0xe5c9, 0xe5c4, 0xbcca,
+  0xe5c6, 0xbcc9, 0xe5c3, 0xe5c7, 0xbee9, 0xbee6, 0xe9bb, 0xe9ba,
+  0xe9b9, 0xe9b4, 0xe9b5, 0xbee7, 0xbee4, 0xbee8, 0xe9b3, 0xbee5,
+  0xe9b6, 0xe9b7, 0xe9bc, 0xe9b8, 0xecf2, 0xc0c7, 0xefdc, 0xc0c6,
+  0xefda, 0xefdb, 0xc260, 0xc36e, 0xf24b, 0xc36d, 0xf451, 0xf452,
+  0xc466, 0xf450, 0xc4e4, 0xf7df, 0xc5ce, 0xf8aa, 0xf8ab, 0xa4ea,
+  0xa6b1, 0xa6b2, 0xa7f3, 0xccd1, 0xac54, 0xaed1, 0xb1e4, 0xb0d2,
+  0xb4bf, 0xb4c0, 0xb3cc, 0xd9a9, 0xb77c, 0xe1fa, 0xe1f9, 0xa4eb,
+  0xa6b3, 0xccd2, 0xaa42, 0xaa41, 0xcef9, 0xcefa, 0xd1d7, 0xd1d8,
+  0xaed2, 0xaed3, 0xaed4, 0xd5af, 0xb1e6, 0xb4c2, 0xb4c1, 0xddc8,
+  0xdf7a, 0xe1fb, 0xe9bd, 0xc261, 0xc467, 0xa4ec, 0xa5bc, 0xa5bd,
+  0xa5bb, 0xa5be, 0xa5ba, 0xa6b6, 0xc9f6, 0xa6b5, 0xa6b7, 0xc9f1,
+  0xc9f0, 0xc9f3, 0xc9f2, 0xc9f5, 0xa6b4, 0xc9ef, 0xc9f4, 0xcafd,
+  0xa7fd, 0xcafe, 0xcb43, 0xa7fc, 0xcb47, 0xcb42, 0xcb45, 0xa7f5,
+  0xa7f6, 0xa7f7, 0xa7f8, 0xa840, 0xcb41, 0xa7fa, 0xa841, 0xcb40,
+  0xcb46, 0xa7f9, 0xcb44, 0xa7fb, 0xa7f4, 0xa7fe, 0xaa57, 0xccd4,
+  0xaa43, 0xaa4d, 0xaa4e, 0xaa46, 0xaa58, 0xaa48, 0xccdc, 0xaa53,
+  0xccd7, 0xaa49, 0xcce6, 0xcce7, 0xccdf, 0xccd8, 0xaa56, 0xcce4,
+  0xaa51, 0xaa4f, 0xcce5, 0xcce3, 0xccdb, 0xccd3, 0xccda, 0xaa4a,
+  0xaa50, 0xaa44, 0xccde, 0xccdd, 0xccd5, 0xaa52, 0xcce1, 0xccd6,
+  0xaa55, 0xcce8, 0xaa45, 0xaa4c, 0xccd9, 0xcce2, 0xaa54, 0xaa47,
+  0xaa4b, 0xcce0, 0xcf5b, 0xac5c, 0xac69, 0xcf56, 0xcf4c, 0xac62,
+  0xcf4a, 0xac5b, 0xcf45, 0xac65, 0xcf52, 0xcefe, 0xcf41, 0xcf44,
+  0xcefb, 0xcf51, 0xcf61, 0xac60, 0xcf46, 0xcf58, 0xcefd, 0xcf5f,
+  0xcf60, 0xcf63, 0xcf5a, 0xcf4b, 0xcf53, 0xac66, 0xac59, 0xac61,
+  0xac6d, 0xac56, 0xac58, 0xcf43, 0xac6a, 0xac63, 0xcf5d, 0xcf40,
+  0xac6c, 0xac67, 0xcf49, 0xac6b, 0xcf50, 0xcf48, 0xac64, 0xcf5c,
+  0xcf54, 0xac5e, 0xcf62, 0xcf47, 0xac5a, 0xcf59, 0xcf4f, 0xac5f,
+  0xcf55, 0xac57, 0xcefc, 0xac68, 0xaee3, 0xac5d, 0xcf4e, 0xcf4d,
+  0xcf42, 0xcf5e, 0xcf57, 0xac55, 0xd1ec, 0xaeea, 0xd1ed, 0xd1e1,
+  0xaedf, 0xaeeb, 0xd1da, 0xd1e3, 0xd1eb, 0xd1d9, 0xd1f4, 0xaed5,
+  0xd1f3, 0xd1ee, 0xd1ef, 0xaedd, 0xaee8, 0xd1e5, 0xd1e6, 0xd1f0,
+  0xd1e7, 0xd1e2, 0xd1dc, 0xd1dd, 0xd1ea, 0xd1e4, 0xaed6, 0xaeda,
+  0xd1f2, 0xd1de, 0xaee6, 0xaee2, 0xaee5, 0xaeec, 0xaedb, 0xaee7,
+  0xd1e9, 0xaee9, 0xaed8, 0xaed7, 0xd1db, 0xd1df, 0xaee0, 0xd1f1,
+  0xd1e8, 0xd1e0, 0xaee4, 0xaee1, 0xaed9, 0xaedc, 0xd5c4, 0xd5b4,
+  0xd5b5, 0xd5b9, 0xd5c8, 0xd5c5, 0xd5be, 0xd5bd, 0xb1ed, 0xd5c1,
+  0xd5d0, 0xd5b0, 0xd5d1, 0xd5c3, 0xd5d5, 0xd5c9, 0xb1ec, 0xd5c7,
+  0xb1e7, 0xb1fc, 0xb1f2, 0xb1f6, 0xb1f5, 0xd5b1, 0xd5ce, 0xd5d4,
+  0xd5cc, 0xd5d3, 0xd5c0, 0xd5b2, 0xd5d2, 0xd5c2, 0xb1ea, 0xb1f7,
+  0xd5cb, 0xb1f0, 0xd5ca, 0xd5b3, 0xb1f8, 0xb1fa, 0xd5cd, 0xb1fb,
+  0xb1e9, 0xd5ba, 0xd5cf, 0xb1ef, 0xb1f9, 0xd5bc, 0xd5c6, 0xd5b7,
+  0xd5bb, 0xb1f4, 0xd5b6, 0xb1e8, 0xb1f1, 0xb1ee, 0xd5bf, 0xaede,
+  0xd9c0, 0xb1eb, 0xb1f3, 0xd9c3, 0xd9d9, 0xd9ce, 0xb4d6, 0xb4d1,
+  0xd9bd, 0xb4d2, 0xd9cd, 0xd9c6, 0xd9d3, 0xb4ce, 0xd9ab, 0xd9d5,
+  0xb4c4, 0xd9b3, 0xb4c7, 0xb4c6, 0xb4d7, 0xd9ad, 0xd9cf, 0xd9d0,
+  0xb4c9, 0xb4c5, 0xd9bb, 0xb4d0, 0xd9b6, 0xd9d1, 0xb4cc, 0xd9c9,
+  0xd9d6, 0xd9b0, 0xd9b5, 0xd9af, 0xb4cb, 0xd9c2, 0xddde, 0xd9b1,
+  0xb4cf, 0xd9ba, 0xd9d2, 0xb4ca, 0xd9b7, 0xd9b4, 0xd9c5, 0xb4cd,
+  0xb4c3, 0xb4d9, 0xd9c8, 0xd9c7, 0xd9ac, 0xb4c8, 0xd9d4, 0xd9bc,
+  0xd9be, 0xd9cb, 0xd9ca, 0xd9aa, 0xb4d3, 0xb4d5, 0xd9b2, 0xd9b9,
+  0xd9c1, 0xb4d4, 0xd9b8, 0xd9c4, 0xd9d7, 0xd9cc, 0xd9d8, 0xd9ae,
+  0xddf2, 0xb7a6, 0xddf0, 0xdddb, 0xdde0, 0xddd9, 0xddec, 0xddcb,
+  0xddd2, 0xddea, 0xddf4, 0xdddc, 0xddcf, 0xdde2, 0xdde7, 0xddd3,
+  0xdde4, 0xddd0, 0xddd7, 0xddd8, 0xb7a8, 0xddeb, 0xdde9, 0xddcc,
+  0xddee, 0xddef, 0xddf1, 0xb7ac, 0xb7a4, 0xd5b8, 0xddd4, 0xdde6,
+  0xddd5, 0xb7a1, 0xb7b1, 0xdded, 0xb7af, 0xb7ab, 0xddca, 0xb7a3,
+  0xddcd, 0xb7b0, 0xdddd, 0xddc9, 0xb7a9, 0xdde1, 0xddd1, 0xb7aa,
+  0xddda, 0xb77e, 0xb4d8, 0xdde3, 0xd9bf, 0xddce, 0xdde8, 0xb7a5,
+  0xdde5, 0xb7a2, 0xdddf, 0xb7ad, 0xddd6, 0xddf3, 0xb7a7, 0xdec6,
+  0xb7ae, 0xe24a, 0xe248, 0xe25e, 0xe246, 0xe258, 0xb77d, 0xba5f,
+  0xe242, 0xe25d, 0xe247, 0xe255, 0xba64, 0xba5d, 0xe25b, 0xe240,
+  0xe25a, 0xba6f, 0xe251, 0xe261, 0xba6d, 0xe249, 0xba5e, 0xe24b,
+  0xe259, 0xba67, 0xe244, 0xba6b, 0xba61, 0xe24d, 0xe243, 0xe1fc,
+  0xe257, 0xba68, 0xe260, 0xe1fd, 0xba65, 0xe253, 0xba66, 0xe245,
+  0xe250, 0xe24c, 0xe24e, 0xba60, 0xe25f, 0xba6e, 0xe24f, 0xe262,
+  0xe1fe, 0xe254, 0xba63, 0xba6c, 0xba6a, 0xe241, 0xe256, 0xba69,
+  0xba62, 0xe252, 0xe25c, 0xe5d5, 0xe5d1, 0xe5cd, 0xe5e1, 0xe5de,
+  0xbccd, 0xe5e5, 0xe5d4, 0xbcd8, 0xe5db, 0xe5d0, 0xe5da, 0xbcd5,
+  0xe5ee, 0xe5eb, 0xe5dd, 0xe5ce, 0xe5e2, 0xe5e4, 0xbcd1, 0xe5d8,
+  0xe5d3, 0xe5ca, 0xbcce, 0xbcd6, 0xe5e7, 0xbcd7, 0xe5cb, 0xe5ed,
+  0xe5e0, 0xe5e6, 0xbcd4, 0xe5e3, 0xe5ea, 0xbcd9, 0xbcd3, 0xe5dc,
+  0xe5cf, 0xe5ef, 0xe5cc, 0xe5e8, 0xbcd0, 0xe5d6, 0xe5d7, 0xbccf,
+  0xbccc, 0xe5d2, 0xbcd2, 0xbccb, 0xe5e9, 0xe5ec, 0xe5d9, 0xe9ca,
+  0xe9c2, 0xe9be, 0xbef6, 0xbeeb, 0xbef0, 0xbeec, 0xe9cc, 0xe9d7,
+  0xbeea, 0xe9c4, 0xe9cd, 0xe5df, 0xe9ce, 0xbef1, 0xe9dd, 0xbef5,
+  0xbef8, 0xe9c0, 0xbef4, 0xe9db, 0xe9dc, 0xe9d2, 0xe9d1, 0xe9c9,
+  0xe9d3, 0xe9da, 0xe9d9, 0xbeef, 0xbeed, 0xe9cb, 0xe9c8, 0xe9c5,
+  0xe9d8, 0xbef7, 0xe9d6, 0xbef3, 0xbef2, 0xe9d0, 0xe9bf, 0xe9c1,
+  0xe9c3, 0xe9d5, 0xe9cf, 0xbeee, 0xe9c6, 0xe9d4, 0xe9c7, 0xc0cf,
+  0xed45, 0xc0c8, 0xecf5, 0xed41, 0xc0ca, 0xed48, 0xecfc, 0xecf7,
+  0xed49, 0xecf3, 0xecfe, 0xc0d1, 0xed44, 0xed4a, 0xecfd, 0xc0c9,
+  0xed40, 0xecf4, 0xc0d0, 0xed47, 0xecf9, 0xc0cc, 0xecfb, 0xecf8,
+  0xc0d2, 0xecfa, 0xc0cb, 0xc0ce, 0xed43, 0xecf6, 0xed46, 0xed42,
+  0xc263, 0xefe7, 0xc268, 0xc269, 0xc262, 0xefe6, 0xefe3, 0xefe4,
+  0xc266, 0xefde, 0xefe2, 0xc265, 0xefdf, 0xc267, 0xc264, 0xefdd,
+  0xefe1, 0xefe5, 0xf251, 0xf24e, 0xf257, 0xf256, 0xf254, 0xf24f,
+  0xc372, 0xf250, 0xc371, 0xc0cd, 0xf253, 0xc370, 0xf258, 0xf252,
+  0xf24d, 0xefe0, 0xc36f, 0xf24c, 0xf456, 0xf455, 0xf255, 0xc468,
+  0xf459, 0xf45a, 0xf454, 0xf458, 0xf453, 0xf5d1, 0xf457, 0xc4e7,
+  0xc4e5, 0xf5cf, 0xf5d2, 0xf5ce, 0xf5d0, 0xc4e6, 0xf6e5, 0xf6e6,
+  0xc576, 0xf6e4, 0xf7e2, 0xc5cf, 0xf7e0, 0xf7e1, 0xf8ac, 0xc656,
+  0xf8f3, 0xf8f1, 0xf8f2, 0xf8f4, 0xf9bb, 0xa4ed, 0xa6b8, 0xaa59,
+  0xcce9, 0xcf64, 0xd1f5, 0xd1f7, 0xd1f6, 0xd1f8, 0xb1fd, 0xd5d7,
+  0xd1f9, 0xd5d6, 0xd5d8, 0xd5d9, 0xd9da, 0xb4db, 0xd9db, 0xd9dd,
+  0xb4dc, 0xb4da, 0xd9dc, 0xddfa, 0xddf8, 0xddf7, 0xddf6, 0xddf5,
+  0xb7b2, 0xddf9, 0xba70, 0xe263, 0xe265, 0xba71, 0xe264, 0xbcdb,
+  0xbcda, 0xe5f0, 0xe9df, 0xe9de, 0xe9e0, 0xbef9, 0xed4b, 0xc0d3,
+  0xefe8, 0xc26a, 0xf259, 0xc577, 0xa4ee, 0xa5bf, 0xa6b9, 0xa842,
+  0xaa5a, 0xaa5b, 0xac6e, 0xd1fa, 0xb7b3, 0xe6d1, 0xbefa, 0xc26b,
+  0xa4ef, 0xa6ba, 0xcceb, 0xaa5c, 0xccea, 0xcf65, 0xac6f, 0xcf66,
+  0xac70, 0xd1fc, 0xaeee, 0xaeed, 0xd5de, 0xd5dc, 0xd5dd, 0xd5db,
+  0xd5da, 0xd9de, 0xd9e1, 0xb4de, 0xd9df, 0xb4dd, 0xd9e0, 0xddfb,
+  0xe266, 0xe267, 0xe268, 0xe5f3, 0xe5f2, 0xbcdc, 0xe5f1, 0xe5f4,
+  0xe9e1, 0xe9e2, 0xe9e3, 0xed4c, 0xc0d4, 0xc26c, 0xf25a, 0xc4e8,
+  0xc95f, 0xac71, 0xcf67, 0xaeef, 0xb1fe, 0xb4df, 0xd9e2, 0xb7b5,
+  0xb7b4, 0xe269, 0xe26a, 0xbcdd, 0xbcde, 0xe9e5, 0xe9e4, 0xefe9,
+  0xf7e3, 0xa4f0, 0xc960, 0xa5c0, 0xa843, 0xcb48, 0xac72, 0xb7b6,
+  0xa4f1, 0xcf68, 0xac73, 0xcf69, 0xc0d5, 0xa4f2, 0xccec, 0xcf6a,
+  0xd242, 0xd241, 0xd1fe, 0xd1fd, 0xd243, 0xd240, 0xb240, 0xb241,
+  0xb4e0, 0xd9e3, 0xd9e4, 0xd9e5, 0xde41, 0xde42, 0xde40, 0xddfd,
+  0xddfe, 0xb7b7, 0xe26b, 0xe5f7, 0xe5f6, 0xe5f5, 0xe5f8, 0xe9e7,
+  0xe9e6, 0xbefb, 0xe9e8, 0xc0d6, 0xed4d, 0xefea, 0xf25b, 0xf6e7,
+  0xa4f3, 0xa5c2, 0xa5c1, 0xaa5d, 0xc961, 0xc97e, 0xa6bb, 0xc9f7,
+  0xcb49, 0xcb4a, 0xaa5e, 0xcced, 0xac74, 0xcf6b, 0xcf6c, 0xaef0,
+  0xaef4, 0xd244, 0xaef3, 0xaef1, 0xaef2, 0xd5df, 0xb242, 0xb4e3,
+  0xb4e1, 0xb4e2, 0xd9e6, 0xba72, 0xa4f4, 0xc9a1, 0xa5c3, 0xc9a4,
+  0xa5c6, 0xc9a3, 0xa5c5, 0xa5c4, 0xa844, 0xc9a2, 0xc9f8, 0xc9fc,
+  0xc9fe, 0xca40, 0xa6c5, 0xa6c6, 0xc9fb, 0xa6c1, 0xc9f9, 0xc9fd,
+  0xa6c2, 0xa6bd, 0xa6be, 0xa6c4, 0xc9fa, 0xa6bc, 0xa845, 0xa6bf,
+  0xa6c0, 0xa6c3, 0xcb5b, 0xcb59, 0xcb4c, 0xa851, 0xcb53, 0xa84c,
+  0xcb4d, 0xcb55, 0xcb52, 0xa84f, 0xcb51, 0xa856, 0xcb5a, 0xa858,
+  0xa85a, 0xcb4b, 0xa84d, 0xcb5c, 0xa854, 0xa857, 0xcd45, 0xa847,
+  0xa85e, 0xa855, 0xcb4e, 0xa84a, 0xa859, 0xcb56, 0xa848, 0xa849,
+  0xcd43, 0xcb4f, 0xa850, 0xa85b, 0xcb5d, 0xcb50, 0xa84e, 0xa853,
+  0xccee, 0xa85c, 0xcb57, 0xa852, 0xa85d, 0xa846, 0xcb54, 0xa84b,
+  0xcb58, 0xcd44, 0xaa6a, 0xaa7a, 0xccf5, 0xaa71, 0xcd4b, 0xaa62,
+  0xaa65, 0xcd42, 0xccf3, 0xccf7, 0xaa6d, 0xaa6f, 0xccfa, 0xaa76,
+  0xaa68, 0xaa66, 0xaa67, 0xaa75, 0xcd47, 0xaa70, 0xccf9, 0xccfb,
+  0xaa6e, 0xaa73, 0xccfc, 0xcd4a, 0xac75, 0xaa79, 0xaa63, 0xcd49,
+  0xcd4d, 0xccf8, 0xcd4f, 0xcd40, 0xaa6c, 0xccf4, 0xaa6b, 0xaa7d,
+  0xaa72, 0xccf2, 0xcf75, 0xaa78, 0xaa7c, 0xcd41, 0xcd46, 0xaa7e,
+  0xaa77, 0xaa69, 0xaa5f, 0xaa64, 0xccf6, 0xaa60, 0xcd4e, 0xccf0,
+  0xccef, 0xccfd, 0xccf1, 0xaa7b, 0xaef5, 0xaa74, 0xccfe, 0xaa61,
+  0xaca6, 0xcd4c, 0xcf7c, 0xcfa1, 0xcfa4, 0xcf77, 0xcfa7, 0xcfaa,
+  0xcfac, 0xcf74, 0xac76, 0xac7b, 0xd249, 0xacad, 0xcfa5, 0xcfad,
+  0xcf7b, 0xcf73, 0xd264, 0xac7e, 0xcfa2, 0xcf78, 0xcf7a, 0xaca5,
+  0xcf7d, 0xac7d, 0xcf70, 0xcfa8, 0xcfab, 0xac7a, 0xaca8, 0xcf6d,
+  0xacaa, 0xac78, 0xacae, 0xcfa9, 0xcf6f, 0xacab, 0xd25e, 0xcd48,
+  0xac7c, 0xac77, 0xcf76, 0xcf6e, 0xacac, 0xaca4, 0xcfa3, 0xaca9,
+  0xaca7, 0xcf79, 0xaca1, 0xcf71, 0xaca2, 0xaca3, 0xcf72, 0xcfa6,
+  0xac79, 0xcf7e, 0xd24c, 0xaefd, 0xaf43, 0xd255, 0xd25b, 0xd257,
+  0xd24a, 0xd24d, 0xd246, 0xd247, 0xaf4a, 0xaefa, 0xd256, 0xd25f,
+  0xaf45, 0xaef6, 0xaf40, 0xd24e, 0xaf42, 0xd24f, 0xd259, 0xaf44,
+  0xd268, 0xd248, 0xaefc, 0xaefb, 0xaf48, 0xd245, 0xd266, 0xd25a,
+  0xd267, 0xd261, 0xd253, 0xd262, 0xd25c, 0xd265, 0xd263, 0xaf49,
+  0xd254, 0xaef9, 0xaef8, 0xaf41, 0xaf47, 0xd260, 0xaf46, 0xd251,
+  0xb243, 0xd269, 0xd250, 0xd24b, 0xaefe, 0xaf4b, 0xaef7, 0xd258,
+  0xd25d, 0xb265, 0xd5e1, 0xd5e5, 0xb252, 0xb250, 0xb247, 0xd5e3,
+  0xd5e2, 0xb25b, 0xd5e8, 0xb255, 0xd5fa, 0xd647, 0xb244, 0xd5f7,
+  0xd5f0, 0xb267, 0xd5e0, 0xd5fc, 0xb264, 0xb258, 0xb263, 0xb24e,
+  0xd5ec, 0xd5fe, 0xd5f6, 0xb24f, 0xb249, 0xd645, 0xd5fd, 0xd640,
+  0xb251, 0xb259, 0xd642, 0xd5ea, 0xd5fb, 0xd5ef, 0xd644, 0xb25e,
+  0xb246, 0xb25c, 0xd5f4, 0xd5f2, 0xd5f3, 0xb253, 0xd5ee, 0xd5ed,
+  0xb248, 0xd5e7, 0xd646, 0xb24a, 0xd5f1, 0xb268, 0xb262, 0xd5e6,
+  0xb25f, 0xb25d, 0xb266, 0xd5f8, 0xb261, 0xd252, 0xd5f9, 0xb260,
+  0xd641, 0xb245, 0xd5f5, 0xb257, 0xd5e9, 0xb256, 0xb254, 0xb24c,
+  0xb24b, 0xd9e7, 0xd643, 0xd5eb, 0xd9fc, 0xb24d, 0xb541, 0xb25a,
+  0xb4ee, 0xd9f6, 0xb4fc, 0xd9ea, 0xb4eb, 0xb4e7, 0xda49, 0xb4ed,
+  0xb4f1, 0xb4ec, 0xb4f5, 0xda4d, 0xda44, 0xd9f1, 0xb4fa, 0xb4f4,
+  0xd9fd, 0xb4e4, 0xda4a, 0xda43, 0xb4e8, 0xd9f7, 0xb4f7, 0xda55,
+  0xda56, 0xb4e5, 0xda48, 0xb4f9, 0xd9fb, 0xd9ed, 0xd9ee, 0xb4fd,
+  0xd9f2, 0xd9f9, 0xd9f3, 0xb4fb, 0xb544, 0xd9ef, 0xd9e8, 0xd9e9,
+  0xd9eb, 0xb4ea, 0xd9f8, 0xb4f8, 0xb542, 0xd9fa, 0xda53, 0xda4b,
+  0xb4e6, 0xda51, 0xb4f2, 0xb4f0, 0xda57, 0xb4ef, 0xda41, 0xd9f4,
+  0xd9fe, 0xb547, 0xda45, 0xda42, 0xd9f0, 0xb543, 0xda4f, 0xda4c,
+  0xda54, 0xb4e9, 0xda40, 0xb546, 0xda47, 0xb4f3, 0xb4f6, 0xda46,
+  0xb545, 0xd9f5, 0xd5e4, 0xda50, 0xda4e, 0xda52, 0xd9ec, 0xb540,
+  0xde61, 0xde60, 0xde46, 0xb7bd, 0xde5f, 0xde49, 0xde4a, 0xb7c7,
+  0xde68, 0xb7c2, 0xde5e, 0xde43, 0xb7c8, 0xb7be, 0xde52, 0xde48,
+  0xde4b, 0xde63, 0xb7b8, 0xde6a, 0xde62, 0xb7c1, 0xde57, 0xb7cc,
+  0xb7cb, 0xb7c5, 0xde69, 0xb7b9, 0xde55, 0xde4c, 0xde59, 0xde65,
+  0xb7cd, 0xb7bb, 0xde54, 0xde4d, 0xb7c4, 0xb7c3, 0xde50, 0xde5a,
+  0xde64, 0xde47, 0xde51, 0xb7bc, 0xde5b, 0xb7c9, 0xb7c0, 0xde4e,
+  0xb7bf, 0xde45, 0xde53, 0xde67, 0xb4fe, 0xbab0, 0xde56, 0xe26c,
+  0xde58, 0xde66, 0xb7c6, 0xde4f, 0xb7ba, 0xb7ca, 0xbcf0, 0xde44,
+  0xde5d, 0xde5c, 0xe2aa, 0xbaad, 0xe27d, 0xe2a4, 0xbaa2, 0xe26e,
+  0xbaaf, 0xba77, 0xe26d, 0xe2b0, 0xbab1, 0xe271, 0xe2a3, 0xe273,
+  0xe2b3, 0xe2af, 0xba75, 0xbaa1, 0xe653, 0xbaae, 0xba7d, 0xe26f,
+  0xe2ae, 0xbaa3, 0xe2ab, 0xe2b8, 0xe275, 0xe27e, 0xe2b6, 0xe2ac,
+  0xba7c, 0xe27c, 0xba76, 0xba74, 0xbaa8, 0xe27a, 0xe277, 0xe278,
+  0xe2b2, 0xe2b7, 0xe2b5, 0xba7a, 0xe2b9, 0xba7e, 0xbaa7, 0xe270,
+  0xe5fa, 0xe279, 0xba78, 0xbaac, 0xbaa9, 0xba7b, 0xe2a5, 0xe274,
+  0xbaaa, 0xe2a7, 0xbaa4, 0xbaa6, 0xba73, 0xe2a9, 0xe2a1, 0xe272,
+  0xbaa5, 0xe2b1, 0xe2b4, 0xe27b, 0xe2a8, 0xba79, 0xbcdf, 0xe2a6,
+  0xe5f9, 0xe2ad, 0xe276, 0xe644, 0xe64e, 0xbce2, 0xe64d, 0xe659,
+  0xbce4, 0xe64b, 0xe64f, 0xbcef, 0xe646, 0xbce7, 0xe652, 0xe9f0,
+  0xbcf3, 0xbcf2, 0xe654, 0xe643, 0xe65e, 0xbced, 0xbce3, 0xe657,
+  0xe65b, 0xe660, 0xe655, 0xe649, 0xbce6, 0xbce9, 0xbcf1, 0xbcec,
+  0xe64c, 0xe2a2, 0xe648, 0xe65f, 0xbce8, 0xbceb, 0xe661, 0xbce0,
+  0xe656, 0xe5fb, 0xe65c, 0xc0df, 0xe64a, 0xbce1, 0xe645, 0xbce5,
+  0xe5fc, 0xbaab, 0xe641, 0xe65a, 0xe642, 0xe640, 0xbcea, 0xe658,
+  0xe5fe, 0xe651, 0xe650, 0xe65d, 0xe647, 0xbcee, 0xe9f3, 0xbf49,
+  0xbefe, 0xea40, 0xe9eb, 0xbf41, 0xe9f7, 0xbf48, 0xbf43, 0xe9f5,
+  0xed4f, 0xe9fb, 0xea42, 0xe9fa, 0xe9e9, 0xe9f8, 0xea44, 0xea46,
+  0xbefd, 0xea45, 0xbf44, 0xbf4a, 0xbf47, 0xe9fe, 0xbf46, 0xe9f9,
+  0xe9ed, 0xe9f2, 0xe9fd, 0xbf45, 0xbf42, 0xbefc, 0xbf40, 0xe9f1,
+  0xe5fd, 0xe9ec, 0xe9ef, 0xea41, 0xe9f4, 0xe9ea, 0xed4e, 0xea43,
+  0xe9ee, 0xe9fc, 0xed51, 0xc0e3, 0xc0d7, 0xc0db, 0xed53, 0xed59,
+  0xed57, 0xc0d9, 0xc0da, 0xc0e1, 0xed5a, 0xed52, 0xc0dc, 0xed56,
+  0xed55, 0xed5b, 0xc0e2, 0xc0dd, 0xc0e0, 0xed54, 0xc0e4, 0xc0de,
+  0xc0e5, 0xc0d8, 0xed58, 0xed50, 0xeff7, 0xc271, 0xeff4, 0xeff6,
+  0xc26f, 0xeff2, 0xeff3, 0xefee, 0xe9f6, 0xefef, 0xc270, 0xefeb,
+  0xc26d, 0xeff8, 0xc26e, 0xefec, 0xefed, 0xeff1, 0xc273, 0xc272,
+  0xeff0, 0xc378, 0xf25f, 0xf265, 0xc379, 0xf25c, 0xc376, 0xc373,
+  0xf267, 0xc377, 0xc374, 0xf25e, 0xf261, 0xf262, 0xf263, 0xf266,
+  0xeff5, 0xf25d, 0xc375, 0xf264, 0xf268, 0xf260, 0xf45d, 0xc46a,
+  0xf460, 0xc46b, 0xf468, 0xf45f, 0xf45c, 0xf45e, 0xf462, 0xf465,
+  0xf464, 0xf467, 0xf45b, 0xc469, 0xf463, 0xf466, 0xf469, 0xf461,
+  0xf5d3, 0xf5d4, 0xf5d8, 0xf5d9, 0xf5d6, 0xf5d7, 0xf5d5, 0xc4e9,
+  0xc578, 0xf6eb, 0xf6e8, 0xf6e9, 0xf6ea, 0xc579, 0xf7e5, 0xf7e4,
+  0xf8af, 0xc5f4, 0xf8ad, 0xf8b0, 0xf8ae, 0xf8f5, 0xc657, 0xc665,
+  0xf9a3, 0xf96c, 0xf9a2, 0xf9d0, 0xf9d1, 0xa4f5, 0xa6c7, 0xca41,
+  0xcb5e, 0xa85f, 0xa862, 0xcb5f, 0xa860, 0xa861, 0xcd58, 0xcd5a,
+  0xcd55, 0xcd52, 0xcd54, 0xaaa4, 0xaaa2, 0xcd56, 0xaaa3, 0xcd53,
+  0xcd50, 0xaaa1, 0xcd57, 0xcd51, 0xaaa5, 0xcd59, 0xcfaf, 0xcfb3,
+  0xacb7, 0xcfb6, 0xacaf, 0xacb2, 0xacb4, 0xacb6, 0xacb3, 0xcfb2,
+  0xcfb1, 0xacb1, 0xcfb4, 0xcfb5, 0xcfae, 0xacb5, 0xacb0, 0xcfb0,
+  0xd277, 0xd278, 0xd279, 0xaf50, 0xaf4c, 0xd26e, 0xd276, 0xd27b,
+  0xaf51, 0xd26c, 0xd272, 0xd26b, 0xd275, 0xd271, 0xaf4d, 0xaf4f,
+  0xd27a, 0xd26a, 0xd26d, 0xd273, 0xd274, 0xd27c, 0xd270, 0xaf4e,
+  0xb26d, 0xd64e, 0xd650, 0xd64c, 0xd658, 0xd64a, 0xd657, 0xb269,
+  0xd648, 0xda5b, 0xd652, 0xb26c, 0xd653, 0xd656, 0xd65a, 0xd64f,
+  0xd654, 0xb26a, 0xb26b, 0xd659, 0xd64d, 0xd649, 0xd65b, 0xd651,
+  0xd655, 0xd64b, 0xb548, 0xb549, 0xda65, 0xb54f, 0xda59, 0xda62,
+  0xda58, 0xb54c, 0xda60, 0xda5e, 0xda5f, 0xb54a, 0xda63, 0xda5c,
+  0xda5a, 0xb54b, 0xda5d, 0xda61, 0xb54d, 0xda64, 0xde70, 0xde77,
+  0xde79, 0xdea1, 0xb7da, 0xde6b, 0xb7d2, 0xde7a, 0xb7d7, 0xdea2,
+  0xb7ce, 0xde7d, 0xde6d, 0xde7e, 0xde6c, 0xb7dc, 0xde78, 0xb7cf,
+  0xdea3, 0xb7d4, 0xde71, 0xb7d9, 0xde7c, 0xde6f, 0xde76, 0xde72,
+  0xde6e, 0xb7d1, 0xb7d8, 0xb7d6, 0xb7d3, 0xb7db, 0xb7d0, 0xde75,
+  0xb7d5, 0xb54e, 0xde7b, 0xde73, 0xde74, 0xe2c1, 0xbab4, 0xe2bd,
+  0xe2c3, 0xe2bf, 0xbab6, 0xe2be, 0xe2c2, 0xe2ba, 0xe2bc, 0xbab5,
+  0xe2c0, 0xe2bb, 0xbab7, 0xbab2, 0xe2c4, 0xbab3, 0xe667, 0xe664,
+  0xe670, 0xe66a, 0xe66c, 0xbcf4, 0xe666, 0xe66e, 0xe66d, 0xe66b,
+  0xe671, 0xbcf7, 0xe668, 0xe66f, 0xbcf5, 0xe663, 0xe665, 0xbcf6,
+  0xe662, 0xe672, 0xe669, 0xea4a, 0xbf51, 0xea55, 0xea53, 0xbf4b,
+  0xea49, 0xea4c, 0xea4d, 0xea48, 0xbf55, 0xbf56, 0xea47, 0xea56,
+  0xea51, 0xbf4f, 0xbf4c, 0xea50, 0xea4e, 0xbf52, 0xea52, 0xbf4d,
+  0xbf4e, 0xea4f, 0xbf50, 0xea4b, 0xea54, 0xbf53, 0xea57, 0xea58,
+  0xbf54, 0xc0e7, 0xc0ee, 0xed5c, 0xed62, 0xed60, 0xc0ea, 0xc0e9,
+  0xc0e6, 0xed5e, 0xc0ec, 0xc0eb, 0xc0e8, 0xed61, 0xed5d, 0xed5f,
+  0xc0ed, 0xc277, 0xeffb, 0xc274, 0xc275, 0xeffd, 0xc276, 0xeffa,
+  0xeff9, 0xf26c, 0xeffc, 0xf26d, 0xc37a, 0xf26b, 0xf26a, 0xf269,
+  0xc37b, 0xc46c, 0xf46a, 0xf46b, 0xf5dc, 0xf5db, 0xc4ea, 0xf5da,
+  0xf6ec, 0xf6ed, 0xf7e6, 0xf8b1, 0xf8f6, 0xf9bc, 0xc679, 0xf9c6,
+  0xa4f6, 0xaaa6, 0xaaa7, 0xacb8, 0xc0ef, 0xa4f7, 0xaaa8, 0xaf52,
+  0xb7dd, 0xa4f8, 0xb26e, 0xbab8, 0xc962, 0xcfb7, 0xd27d, 0xe2c5,
+  0xc0f0, 0xa4f9, 0xaaa9, 0xcfb8, 0xcfb9, 0xda66, 0xb550, 0xdea4,
+  0xb7de, 0xe2c6, 0xbcf8, 0xc37c, 0xa4fa, 0xda67, 0xa4fb, 0xa6c9,
+  0xca42, 0xa6c8, 0xa865, 0xa864, 0xa863, 0xcb60, 0xaaaa, 0xaaab,
+  0xcd5b, 0xcfba, 0xcfbd, 0xacba, 0xcfbb, 0xacb9, 0xcfbc, 0xacbb,
+  0xd2a2, 0xd2a1, 0xd27e, 0xaf53, 0xd65d, 0xd65e, 0xb26f, 0xd65c,
+  0xd65f, 0xb552, 0xb270, 0xb551, 0xda6b, 0xda6a, 0xda68, 0xda69,
+  0xda6c, 0xdea6, 0xdea5, 0xdea9, 0xdea8, 0xdea7, 0xbab9, 0xe2c9,
+  0xe2c8, 0xbaba, 0xe2c7, 0xe673, 0xe674, 0xbcf9, 0xea59, 0xea5a,
+  0xf272, 0xc37d, 0xf271, 0xf270, 0xf26e, 0xf26f, 0xc4eb, 0xf46c,
+  0xf6ee, 0xf8f7, 0xa4fc, 0xc9a5, 0xa5c7, 0xc9a6, 0xca43, 0xca44,
+  0xcb66, 0xcb62, 0xcb61, 0xaaac, 0xcb65, 0xa867, 0xcb63, 0xa866,
+  0xcb67, 0xcb64, 0xcd5f, 0xcfbe, 0xcd5d, 0xcd64, 0xaaad, 0xaab0,
+  0xcd65, 0xcd61, 0xcd62, 0xcd5c, 0xaaaf, 0xcd5e, 0xaaae, 0xcd63,
+  0xcd60, 0xcfc2, 0xacbd, 0xacbe, 0xcfc5, 0xcfbf, 0xcfc4, 0xcfc0,
+  0xacbc, 0xcfc3, 0xcfc1, 0xd2a8, 0xd2a5, 0xd2a7, 0xaf58, 0xaf57,
+  0xaf55, 0xd2a4, 0xd2a9, 0xaf54, 0xaf56, 0xd2a6, 0xd667, 0xd2a3,
+  0xd2aa, 0xd662, 0xd666, 0xd665, 0xda6e, 0xda79, 0xd668, 0xd663,
+  0xda6d, 0xb274, 0xb273, 0xd661, 0xd664, 0xb275, 0xb272, 0xb271,
+  0xd660, 0xd669, 0xda70, 0xda77, 0xb554, 0xda76, 0xda73, 0xb556,
+  0xda75, 0xda6f, 0xda71, 0xda74, 0xda72, 0xb555, 0xda78, 0xb553,
+  0xb7df, 0xdead, 0xdeac, 0xdeaa, 0xb7e2, 0xb7e1, 0xdeae, 0xdeab,
+  0xe2ca, 0xbabb, 0xb7e0, 0xdeb0, 0xdeaf, 0xe2cd, 0xe2cb, 0xbcfa,
+  0xbabc, 0xe2cc, 0xe676, 0xbcfb, 0xe675, 0xe67e, 0xe67d, 0xe67b,
+  0xe67a, 0xe677, 0xe678, 0xe679, 0xe67c, 0xe6a1, 0xea5f, 0xea5c,
+  0xea5d, 0xbf57, 0xea5b, 0xea61, 0xea60, 0xea5e, 0xed64, 0xed65,
+  0xc0f1, 0xc0f2, 0xed63, 0xc279, 0xeffe, 0xc278, 0xc37e, 0xc3a1,
+  0xc46d, 0xf46e, 0xf46d, 0xf5dd, 0xf6ef, 0xc57a, 0xf7e8, 0xf7e7,
+  0xf7e9, 0xa5c8, 0xcfc6, 0xaf59, 0xb276, 0xd66a, 0xa5c9, 0xc9a7,
+  0xa4fd, 0xca45, 0xcb6c, 0xcb6a, 0xcb6b, 0xcb68, 0xa868, 0xcb69,
+  0xcd6d, 0xaab3, 0xcd6b, 0xcd67, 0xcd6a, 0xcd66, 0xaab5, 0xcd69,
+  0xaab2, 0xaab1, 0xaab4, 0xcd6c, 0xcd68, 0xacc2, 0xacc5, 0xcfce,
+  0xcfcd, 0xcfcc, 0xacbf, 0xcfd5, 0xcfcb, 0xacc1, 0xd2af, 0xcfd2,
+  0xcfd0, 0xacc4, 0xcfc8, 0xcfd3, 0xcfca, 0xcfd4, 0xcfd1, 0xcfc9,
+  0xacc0, 0xcfd6, 0xcfc7, 0xacc3, 0xd2b4, 0xd2ab, 0xd2b6, 0xd2ae,
+  0xd2b9, 0xd2ba, 0xd2ac, 0xd2b8, 0xd2b5, 0xd2b3, 0xd2b7, 0xaf5f,
+  0xaf5d, 0xd2b1, 0xd2ad, 0xd2b0, 0xd2bb, 0xd2b2, 0xaf5e, 0xcfcf,
+  0xaf5a, 0xaf5c, 0xd678, 0xd66d, 0xd66b, 0xd66c, 0xd673, 0xd674,
+  0xd670, 0xb27b, 0xd675, 0xd672, 0xd66f, 0xb279, 0xd66e, 0xb277,
+  0xb27a, 0xd671, 0xd679, 0xaf5b, 0xb278, 0xd677, 0xd676, 0xb27c,
+  0xda7e, 0xdaa1, 0xb560, 0xdaa7, 0xdaa9, 0xdaa2, 0xb55a, 0xdaa6,
+  0xdaa5, 0xb55b, 0xb561, 0xb562, 0xdaa8, 0xb558, 0xda7d, 0xda7b,
+  0xdaa3, 0xda7a, 0xb55f, 0xda7c, 0xdaa4, 0xdaaa, 0xb559, 0xb55e,
+  0xb55c, 0xb55d, 0xb557, 0xb7e9, 0xdeb7, 0xb7e8, 0xdebb, 0xdeb1,
+  0xdebc, 0xdeb2, 0xdeb3, 0xdebd, 0xdeba, 0xdeb8, 0xdeb9, 0xdeb5,
+  0xdeb4, 0xdebe, 0xb7e5, 0xdeb6, 0xb7ea, 0xb7e4, 0xb7eb, 0xb7ec,
+  0xb7e7, 0xb7e6, 0xe2ce, 0xbabe, 0xbabd, 0xe2d3, 0xbcfc, 0xbabf,
+  0xbac1, 0xe2d4, 0xb7e3, 0xbac0, 0xe2d0, 0xe2d2, 0xe2cf, 0xe2d1,
+  0xe6ab, 0xe6aa, 0xe6a7, 0xbd40, 0xea62, 0xbd41, 0xe6a6, 0xbcfe,
+  0xe6a8, 0xe6a5, 0xe6a2, 0xe6a9, 0xe6a3, 0xe6a4, 0xbcfd, 0xed69,
+  0xea66, 0xea65, 0xea67, 0xed66, 0xbf5a, 0xea63, 0xbf58, 0xbf5c,
+  0xbf5b, 0xea64, 0xea68, 0xbf59, 0xed6d, 0xc0f5, 0xc27a, 0xc0f6,
+  0xc0f3, 0xed6a, 0xed68, 0xed6b, 0xed6e, 0xc0f4, 0xed6c, 0xed67,
+  0xf042, 0xf045, 0xf275, 0xf040, 0xf46f, 0xf046, 0xc3a2, 0xf044,
+  0xc27b, 0xf041, 0xf043, 0xf047, 0xf276, 0xf274, 0xc3a3, 0xf273,
+  0xc46e, 0xc4ed, 0xf6f1, 0xc4ec, 0xf6f3, 0xf6f0, 0xf6f2, 0xc5d0,
+  0xf8b2, 0xa5ca, 0xcd6e, 0xd2bc, 0xd2bd, 0xb27d, 0xdebf, 0xbf5d,
+  0xc3a4, 0xc57b, 0xf8b3, 0xa5cb, 0xcd6f, 0xa260, 0xcfd7, 0xcfd8,
+  0xd2be, 0xd2bf, 0xb27e, 0xb2a1, 0xdaab, 0xdec2, 0xdec1, 0xdec0,
+  0xe2d5, 0xe2d6, 0xe2d7, 0xbac2, 0xe6ad, 0xe6ac, 0xea69, 0xbf5e,
+  0xbf5f, 0xed72, 0xed6f, 0xed70, 0xed71, 0xf049, 0xf048, 0xc27c,
+  0xf277, 0xf5de, 0xa5cc, 0xacc6, 0xb2a2, 0xdec3, 0xa5cd, 0xd2c0,
+  0xb2a3, 0xb563, 0xb564, 0xa5ce, 0xa5cf, 0xca46, 0xa86a, 0xa869,
+  0xacc7, 0xcfd9, 0xdaac, 0xa5d0, 0xa5d1, 0xa5d2, 0xa5d3, 0xa86b,
+  0xa86c, 0xcb6e, 0xcb6d, 0xaab6, 0xcd72, 0xcd70, 0xcd71, 0xcfda,
+  0xcfdb, 0xaccb, 0xacc9, 0xacca, 0xacc8, 0xaf60, 0xaf64, 0xaf63,
+  0xd2c1, 0xaf62, 0xaf61, 0xd2c2, 0xb2a6, 0xd67b, 0xd67a, 0xb2a4,
+  0xb2a5, 0xb566, 0xb565, 0xdaae, 0xdaad, 0xb2a7, 0xb7ed, 0xdec5,
+  0xb7ee, 0xdec4, 0xe2d8, 0xe6ae, 0xbd42, 0xea6a, 0xed73, 0xc3a6,
+  0xc3a5, 0xc57c, 0xa5d4, 0xcd73, 0xb2a8, 0xe2d9, 0xbac3, 0xcb6f,
+  0xcb70, 0xcd74, 0xaab8, 0xaab9, 0xaab7, 0xaccf, 0xacd0, 0xaccd,
+  0xacce, 0xcfdc, 0xcfdd, 0xaccc, 0xd2c3, 0xaf68, 0xaf69, 0xb2ab,
+  0xd2c9, 0xaf6e, 0xaf6c, 0xd2ca, 0xd2c5, 0xaf6b, 0xaf6a, 0xaf65,
+  0xd2c8, 0xd2c7, 0xd2c4, 0xaf6d, 0xd2c6, 0xaf66, 0xaf67, 0xb2ac,
+  0xd6a1, 0xd6a2, 0xb2ad, 0xd67c, 0xd67e, 0xd6a4, 0xd6a3, 0xd67d,
+  0xb2a9, 0xb2aa, 0xdab6, 0xb56b, 0xb56a, 0xdab0, 0xb568, 0xdab3,
+  0xb56c, 0xdab4, 0xb56d, 0xdab1, 0xb567, 0xb569, 0xdab5, 0xdab2,
+  0xdaaf, 0xded2, 0xdec7, 0xb7f0, 0xb7f3, 0xb7f2, 0xb7f7, 0xb7f6,
+  0xded3, 0xded1, 0xdeca, 0xdece, 0xdecd, 0xb7f4, 0xded0, 0xdecc,
+  0xded4, 0xdecb, 0xb7f5, 0xb7ef, 0xb7f1, 0xdec9, 0xe2db, 0xbac7,
+  0xe2df, 0xbac6, 0xe2dc, 0xbac5, 0xdec8, 0xdecf, 0xe2de, 0xbac8,
+  0xe2e0, 0xe2dd, 0xe2da, 0xe6b1, 0xe6b5, 0xe6b7, 0xe6b3, 0xe6b2,
+  0xe6b0, 0xbd45, 0xbd43, 0xbd48, 0xbd49, 0xe6b4, 0xbd46, 0xe6af,
+  0xbd47, 0xbac4, 0xe6b6, 0xbd44, 0xea6c, 0xea6b, 0xea73, 0xea6d,
+  0xea72, 0xea6f, 0xbf60, 0xea71, 0xbf61, 0xbf62, 0xea70, 0xea6e,
+  0xc0f8, 0xed74, 0xc0f7, 0xed77, 0xed75, 0xed76, 0xc0f9, 0xf04d,
+  0xc2a1, 0xf04e, 0xc27d, 0xf04f, 0xc27e, 0xf04c, 0xf050, 0xf04a,
+  0xc3a7, 0xf278, 0xc3a8, 0xc46f, 0xf04b, 0xc470, 0xc4ee, 0xf5df,
+  0xc57e, 0xf6f4, 0xc57d, 0xf7ea, 0xc5f5, 0xc5f6, 0xf9cc, 0xacd1,
+  0xcfde, 0xb56e, 0xb56f, 0xa5d5, 0xa6ca, 0xca47, 0xcb71, 0xa86d,
+  0xaaba, 0xacd2, 0xacd3, 0xacd4, 0xd6a6, 0xd2cb, 0xaf6f, 0xb2ae,
+  0xd6a5, 0xdab8, 0xb571, 0xdab7, 0xb570, 0xded5, 0xbd4a, 0xe6bb,
+  0xe6b8, 0xe6b9, 0xe6ba, 0xed78, 0xf051, 0xf471, 0xf470, 0xf6f5,
+  0xa5d6, 0xcd75, 0xaf70, 0xb572, 0xded6, 0xe2e1, 0xbd4b, 0xea74,
+  0xf052, 0xf472, 0xa5d7, 0xaabb, 0xacd7, 0xcfdf, 0xacd8, 0xacd6,
+  0xacd5, 0xd2cc, 0xaf71, 0xaf72, 0xaf73, 0xb2b0, 0xd6a7, 0xb2af,
+  0xdab9, 0xb2b1, 0xb573, 0xded7, 0xb7f8, 0xb7f9, 0xbac9, 0xbaca,
+  0xbd4c, 0xbf64, 0xea75, 0xbf63, 0xed79, 0xc0fa, 0xf053, 0xf473,
+  0xa5d8, 0xa86e, 0xcd78, 0xcd77, 0xaabc, 0xcd76, 0xaabd, 0xcd79,
+  0xcfe5, 0xacdb, 0xacda, 0xcfe7, 0xcfe6, 0xacdf, 0xacde, 0xacd9,
+  0xcfe1, 0xcfe2, 0xcfe3, 0xace0, 0xcfe0, 0xacdc, 0xcfe4, 0xacdd,
+  0xd2cf, 0xd2d3, 0xd2d1, 0xd2d0, 0xd2d4, 0xd2d5, 0xd2d6, 0xd2ce,
+  0xd2cd, 0xaf75, 0xaf76, 0xd2d7, 0xd2d2, 0xd6b0, 0xd2d8, 0xaf77,
+  0xaf74, 0xd6aa, 0xd6a9, 0xd6ab, 0xd6ac, 0xd6ae, 0xd6ad, 0xd6b2,
+  0xb2b5, 0xb2b2, 0xb2b6, 0xd6a8, 0xb2b7, 0xd6b1, 0xb2b4, 0xd6af,
+  0xb2b3, 0xdabc, 0xdabe, 0xdaba, 0xdabb, 0xdabf, 0xdac1, 0xdac2,
+  0xdabd, 0xdac0, 0xb574, 0xdedb, 0xdee0, 0xded8, 0xdedc, 0xdee1,
+  0xdedd, 0xb7fa, 0xb843, 0xb7fd, 0xded9, 0xdeda, 0xbace, 0xb846,
+  0xb7fe, 0xb844, 0xb7fc, 0xdedf, 0xb845, 0xdede, 0xb841, 0xb7fb,
+  0xb842, 0xdee2, 0xe2e6, 0xe2e8, 0xb840, 0xe2e3, 0xbacc, 0xe2e9,
+  0xbacd, 0xe2e7, 0xe2e2, 0xe2e5, 0xe2ea, 0xbacb, 0xe2e4, 0xbd4e,
+  0xe6bf, 0xe6be, 0xbd51, 0xbd4f, 0xe6bc, 0xbd4d, 0xe6bd, 0xbd50,
+  0xea7d, 0xeaa1, 0xea7e, 0xea76, 0xea7a, 0xea79, 0xea77, 0xbf66,
+  0xbf67, 0xbf65, 0xea78, 0xea7b, 0xea7c, 0xbf68, 0xc140, 0xeda3,
+  0xc0fc, 0xed7b, 0xc0fe, 0xc141, 0xc0fd, 0xeda2, 0xed7c, 0xc0fb,
+  0xeda1, 0xed7a, 0xed7e, 0xed7d, 0xf055, 0xc2a4, 0xc2a5, 0xc2a2,
+  0xc2a3, 0xf054, 0xf27b, 0xc3a9, 0xf279, 0xf27a, 0xf474, 0xf477,
+  0xf475, 0xf476, 0xf5e0, 0xc4ef, 0xf7eb, 0xf8b4, 0xc5f7, 0xf8f8,
+  0xf8f9, 0xc666, 0xa5d9, 0xace1, 0xdac3, 0xdee3, 0xa5da, 0xa86f,
+  0xaabe, 0xcfe8, 0xcfe9, 0xaf78, 0xdac4, 0xb575, 0xb847, 0xc142,
+  0xeda4, 0xf27c, 0xf478, 0xa5db, 0xcda1, 0xcd7a, 0xcd7c, 0xcd7e,
+  0xcd7d, 0xcd7b, 0xaabf, 0xace2, 0xcff2, 0xcfed, 0xcfea, 0xcff1,
+  0xace4, 0xace5, 0xcff0, 0xcfef, 0xcfee, 0xcfeb, 0xcfec, 0xcff3,
+  0xace3, 0xaf7c, 0xafa4, 0xafa3, 0xd2e1, 0xd2db, 0xd2d9, 0xafa1,
+  0xd6b9, 0xaf7a, 0xd2de, 0xd2e2, 0xd2e4, 0xd2e0, 0xd2da, 0xafa2,
+  0xd2df, 0xd2dd, 0xaf79, 0xd2e5, 0xafa5, 0xd2e3, 0xaf7d, 0xd2dc,
+  0xaf7e, 0xaf7b, 0xb2b9, 0xd6ba, 0xd6b3, 0xd6b5, 0xd6b7, 0xd6b8,
+  0xd6b6, 0xb2ba, 0xd6bb, 0xd6b4, 0xdac8, 0xb576, 0xdad0, 0xdac5,
+  0xdad1, 0xdac6, 0xdac7, 0xdacf, 0xdace, 0xdacb, 0xb2b8, 0xb577,
+  0xdac9, 0xdacc, 0xb578, 0xdacd, 0xdaca, 0xdeee, 0xdef2, 0xb84e,
+  0xe2f0, 0xb851, 0xdef0, 0xdeed, 0xdee8, 0xdeea, 0xdeeb, 0xdee4,
+  0xb84d, 0xb84c, 0xb848, 0xdee7, 0xb84f, 0xb850, 0xdee6, 0xdee9,
+  0xdef1, 0xb84a, 0xb84b, 0xdeef, 0xdee5, 0xe2f2, 0xbad0, 0xe2f4,
+  0xdeec, 0xe2f6, 0xbad4, 0xe2f7, 0xe2f3, 0xbad1, 0xe2ef, 0xbad3,
+  0xe2ec, 0xe2f1, 0xe2f5, 0xe2ee, 0xb849, 0xe2eb, 0xbad2, 0xe2ed,
+  0xbd54, 0xe6c1, 0xbd58, 0xbd56, 0xbacf, 0xe6c8, 0xe6c9, 0xbd53,
+  0xe6c7, 0xe6ca, 0xbd55, 0xbd52, 0xe6c3, 0xe6c0, 0xe6c5, 0xe6c2,
+  0xbd59, 0xe6c4, 0xe6c6, 0xbd57, 0xbf6a, 0xeaa8, 0xeaa2, 0xeaa6,
+  0xeaac, 0xeaad, 0xeaa9, 0xeaaa, 0xeaa7, 0xeaa4, 0xbf6c, 0xbf69,
+  0xeaa3, 0xeaa5, 0xbf6b, 0xeaab, 0xc146, 0xedaa, 0xeda5, 0xc145,
+  0xc143, 0xedac, 0xc144, 0xeda8, 0xeda9, 0xeda6, 0xedad, 0xf056,
+  0xc147, 0xeda7, 0xedae, 0xedab, 0xf05a, 0xf057, 0xc2a6, 0xf05b,
+  0xf05d, 0xf05c, 0xf058, 0xf059, 0xf2a3, 0xc3aa, 0xf27e, 0xf2a2,
+  0xf27d, 0xf2a4, 0xf2a1, 0xf47a, 0xf47d, 0xf479, 0xc471, 0xf47b,
+  0xf47c, 0xf47e, 0xc472, 0xc474, 0xc473, 0xf5e1, 0xf5e3, 0xf5e2,
+  0xf6f6, 0xf8b5, 0xf8fa, 0xa5dc, 0xcb72, 0xaac0, 0xcda3, 0xaac1,
+  0xaac2, 0xcda2, 0xcff8, 0xcff7, 0xace6, 0xace9, 0xace8, 0xace7,
+  0xcff4, 0xcff6, 0xcff5, 0xd2e8, 0xafa7, 0xd2ec, 0xd2eb, 0xd2ea,
+  0xd2e6, 0xafa6, 0xafaa, 0xafad, 0xafae, 0xd2e7, 0xd2e9, 0xafac,
+  0xafab, 0xafa9, 0xafa8, 0xd6c2, 0xd6c0, 0xd6bc, 0xb2bb, 0xd6bd,
+  0xb2bc, 0xd6be, 0xd6bf, 0xd6c1, 0xb2bd, 0xdad5, 0xdad4, 0xdad3,
+  0xdad2, 0xdef6, 0xb852, 0xdef3, 0xdef5, 0xb853, 0xb854, 0xdef4,
+  0xe341, 0xe2f9, 0xe2fa, 0xbad7, 0xbad5, 0xbad6, 0xe343, 0xe342,
+  0xe2fe, 0xe2fd, 0xe2fc, 0xe2fb, 0xe340, 0xe2f8, 0xe6cb, 0xe6d0,
+  0xe6ce, 0xe6cd, 0xe6cc, 0xe6cf, 0xeaae, 0xbf6d, 0xc148, 0xedb0,
+  0xc149, 0xedaf, 0xf05f, 0xf05e, 0xc2a7, 0xf2a5, 0xc3ab, 0xf4a1,
+  0xc5a1, 0xf6f7, 0xf8b7, 0xf8b6, 0xc9a8, 0xacea, 0xaceb, 0xd6c3,
+  0xb856, 0xa5dd, 0xa872, 0xa871, 0xa870, 0xcda4, 0xaac4, 0xaac3,
+  0xacee, 0xcffa, 0xcffd, 0xcffb, 0xacec, 0xaced, 0xcff9, 0xcffc,
+  0xafb5, 0xd2f3, 0xd2f5, 0xd2f4, 0xafb2, 0xd2ef, 0xafb0, 0xafaf,
+  0xafb3, 0xafb1, 0xafb4, 0xd2f2, 0xd2ed, 0xd2ee, 0xd2f1, 0xd2f0,
+  0xd6c6, 0xd6c7, 0xd6c5, 0xd6c4, 0xb2be, 0xb57d, 0xdad6, 0xdad8,
+  0xdada, 0xb57c, 0xb57a, 0xdad7, 0xb57b, 0xdad9, 0xb579, 0xdf41,
+  0xdef7, 0xdefa, 0xdefe, 0xb85a, 0xdefc, 0xdefb, 0xdef8, 0xdef9,
+  0xb858, 0xdf40, 0xb857, 0xb85c, 0xb85b, 0xb859, 0xdefd, 0xe349,
+  0xe348, 0xe344, 0xbad8, 0xe347, 0xe346, 0xbad9, 0xbd5e, 0xe6d2,
+  0xbd5f, 0xbd5b, 0xbd5d, 0xbd5a, 0xbd5c, 0xeaaf, 0xbf70, 0xeab1,
+  0xeab0, 0xe345, 0xbf72, 0xbf71, 0xbf6e, 0xbf6f, 0xedb5, 0xedb3,
+  0xc14a, 0xedb4, 0xedb6, 0xedb2, 0xedb1, 0xf060, 0xc2aa, 0xc2a8,
+  0xc2a9, 0xf2a6, 0xf2a7, 0xc3ad, 0xc3ac, 0xf4a3, 0xf4a4, 0xf4a2,
+  0xf6f8, 0xf6f9, 0xa5de, 0xca48, 0xa873, 0xcda5, 0xaac6, 0xaac5,
+  0xcda6, 0xd040, 0xacef, 0xcffe, 0xacf0, 0xafb6, 0xd2f8, 0xd2f6,
+  0xd2fc, 0xafb7, 0xd2f7, 0xd2fb, 0xd2f9, 0xd2fa, 0xd6c8, 0xd6ca,
+  0xb2bf, 0xd6c9, 0xb2c0, 0xb5a2, 0xb5a1, 0xb57e, 0xdadb, 0xdf44,
+  0xb85d, 0xb85e, 0xdf43, 0xdf42, 0xe34a, 0xbadb, 0xbada, 0xe34b,
+  0xe34c, 0xbd61, 0xbd60, 0xeab5, 0xe6d3, 0xe6d5, 0xe6d4, 0xeab4,
+  0xeab2, 0xeab6, 0xeab3, 0xbf73, 0xedb7, 0xc14b, 0xedb8, 0xedb9,
+  0xc2ab, 0xc2ac, 0xc475, 0xc5d1, 0xa5df, 0xd041, 0xd2fd, 0xafb8,
+  0xb3ba, 0xb3b9, 0xb5a4, 0xdadd, 0xb5a3, 0xdadc, 0xdf45, 0xbadc,
+  0xe34d, 0xbadd, 0xc476, 0xf4a5, 0xa6cb, 0xaac7, 0xcda7, 0xacf2,
+  0xacf1, 0xd042, 0xd043, 0xd340, 0xd342, 0xafb9, 0xd344, 0xd347,
+  0xd345, 0xd346, 0xd343, 0xd2fe, 0xafba, 0xd348, 0xd341, 0xd6d3,
+  0xb2c6, 0xd6dc, 0xb2c3, 0xd6d5, 0xb2c7, 0xb2c1, 0xd6d0, 0xd6dd,
+  0xd6d1, 0xd6ce, 0xb2c5, 0xb2c2, 0xd6d4, 0xd6d7, 0xb2c4, 0xd6d8,
+  0xb2c8, 0xd6d9, 0xd6cf, 0xd6d6, 0xd6da, 0xd6d2, 0xd6cd, 0xd6cb,
+  0xd6db, 0xdadf, 0xdae4, 0xdae0, 0xdae6, 0xb5a7, 0xd6cc, 0xdae1,
+  0xb5a5, 0xdade, 0xb5ac, 0xdae2, 0xb5ab, 0xdae3, 0xb5ad, 0xb5a8,
+  0xb5ae, 0xb5a9, 0xb5aa, 0xb5a6, 0xdae5, 0xb861, 0xdf50, 0xdf53,
+  0xdf47, 0xdf4c, 0xdf46, 0xb863, 0xdf4a, 0xdf48, 0xb862, 0xdf4f,
+  0xdf4e, 0xdf4b, 0xdf4d, 0xdf49, 0xbae1, 0xdf52, 0xb85f, 0xdf51,
+  0xe35d, 0xbae8, 0xe358, 0xbae7, 0xe34e, 0xe350, 0xbae0, 0xe355,
+  0xe354, 0xe357, 0xbae5, 0xe352, 0xe351, 0xbae4, 0xbadf, 0xe353,
+  0xbae2, 0xe359, 0xe35b, 0xe356, 0xe34f, 0xbae3, 0xbd69, 0xbade,
+  0xe35c, 0xe6d9, 0xbd62, 0xe6db, 0xbd63, 0xbd65, 0xe6de, 0xe6d6,
+  0xbae6, 0xe6dc, 0xe6d8, 0xb860, 0xbd68, 0xbd64, 0xbd66, 0xbd67,
+  0xbf76, 0xe6dd, 0xe6d7, 0xbd6a, 0xe6da, 0xeac0, 0xeabb, 0xeac5,
+  0xbf74, 0xeabd, 0xbf78, 0xeac3, 0xeaba, 0xeab7, 0xeac6, 0xc151,
+  0xbf79, 0xeac2, 0xeab8, 0xbf77, 0xeabc, 0xbf7b, 0xeab9, 0xeabe,
+  0xbf7a, 0xeac1, 0xeac4, 0xedcb, 0xedcc, 0xedbc, 0xedc3, 0xedc1,
+  0xc14f, 0xedc8, 0xeabf, 0xedbf, 0xedc9, 0xc14e, 0xedbe, 0xedbd,
+  0xedc7, 0xedc4, 0xedc6, 0xedba, 0xedca, 0xc14c, 0xedc5, 0xedce,
+  0xedc2, 0xc150, 0xc14d, 0xedc0, 0xedbb, 0xedcd, 0xbf75, 0xf063,
+  0xf061, 0xf067, 0xc2b0, 0xf065, 0xf064, 0xc2b2, 0xf06a, 0xc2b1,
+  0xf06b, 0xf068, 0xc2ae, 0xf069, 0xf062, 0xc2af, 0xc2ad, 0xf2ab,
+  0xf066, 0xf06c, 0xf2a8, 0xc3b2, 0xc3b0, 0xf2aa, 0xf2ac, 0xf2a9,
+  0xc3b1, 0xc3ae, 0xc3af, 0xc3b3, 0xc478, 0xf4aa, 0xf4a9, 0xf4a7,
+  0xf4a6, 0xf4a8, 0xc477, 0xc479, 0xc4f0, 0xf5e5, 0xf5e4, 0xf6fa,
+  0xf6fc, 0xf6fe, 0xf6fd, 0xf6fb, 0xc5a3, 0xc5a2, 0xc5d3, 0xc5d2,
+  0xc5d4, 0xf7ed, 0xf7ec, 0xf8fb, 0xf8b8, 0xf8fc, 0xc658, 0xc659,
+  0xf96d, 0xc67e, 0xa6cc, 0xcda8, 0xd045, 0xd046, 0xd044, 0xacf3,
+  0xd047, 0xd048, 0xd049, 0xd349, 0xd34f, 0xd34d, 0xafbb, 0xd34b,
+  0xd34c, 0xd34e, 0xd34a, 0xb2c9, 0xd6de, 0xb2cb, 0xd6e0, 0xb2ca,
+  0xd6df, 0xdae8, 0xb5af, 0xdaea, 0xdae7, 0xd6e1, 0xb5b0, 0xdae9,
+  0xdf56, 0xb864, 0xdf54, 0xb865, 0xdf55, 0xb866, 0xbae9, 0xe361,
+  0xe35e, 0xe360, 0xbaea, 0xbaeb, 0xe35f, 0xe6df, 0xe6e0, 0xbd6b,
+  0xe6e2, 0xe6e1, 0xa261, 0xeaca, 0xeacb, 0xeac7, 0xeac8, 0xbf7c,
+  0xbf7d, 0xeac9, 0xc157, 0xc153, 0xc158, 0xc154, 0xc156, 0xc152,
+  0xc155, 0xc2b3, 0xedcf, 0xf2ae, 0xf2ad, 0xf4ab, 0xc47a, 0xc47b,
+  0xf741, 0xf5e6, 0xf740, 0xf8fd, 0xf9a4, 0xa6cd, 0xa874, 0xcda9,
+  0xaac8, 0xacf6, 0xd04c, 0xacf4, 0xd04a, 0xacf9, 0xacf5, 0xacfa,
+  0xacf8, 0xd04b, 0xacf7, 0xafbf, 0xafbe, 0xd35a, 0xafc7, 0xd353,
+  0xd359, 0xafc3, 0xd352, 0xd358, 0xd356, 0xafc2, 0xafc4, 0xd355,
+  0xafbd, 0xd354, 0xafc8, 0xafc5, 0xafc9, 0xafc6, 0xd351, 0xd350,
+  0xd357, 0xafc0, 0xafbc, 0xafc1, 0xd6f0, 0xd6e9, 0xb5b5, 0xd6e8,
+  0xb2cf, 0xb2d6, 0xb2d3, 0xb2d9, 0xb2d8, 0xb2d4, 0xd6e2, 0xd6e5,
+  0xd6e4, 0xb2d0, 0xd6e6, 0xd6ef, 0xb2d1, 0xd6e3, 0xd6ec, 0xd6ed,
+  0xb2d2, 0xd6ea, 0xb2d7, 0xb2cd, 0xb2d5, 0xd6e7, 0xb2cc, 0xd6eb,
+  0xd6ee, 0xdafb, 0xdaf2, 0xb5b2, 0xdaf9, 0xdaf6, 0xdaee, 0xdaf7,
+  0xb5b4, 0xdaef, 0xdaeb, 0xb86c, 0xdaf4, 0xb5b1, 0xdafa, 0xb5b8,
+  0xb5ba, 0xdaed, 0xb5b9, 0xdaf0, 0xb5b3, 0xdaf8, 0xdaf1, 0xdaf5,
+  0xdaf3, 0xb5b6, 0xdaec, 0xb5bb, 0xb2ce, 0xb5b7, 0xb5bc, 0xb868,
+  0xdf5d, 0xdf5f, 0xdf61, 0xdf65, 0xdf5b, 0xdf59, 0xb86a, 0xdf60,
+  0xdf64, 0xdf5c, 0xdf58, 0xdf57, 0xdf62, 0xdf5a, 0xdf5e, 0xb86b,
+  0xb869, 0xdf66, 0xb867, 0xdf63, 0xe372, 0xbaee, 0xe36a, 0xbd78,
+  0xe374, 0xbaf1, 0xe378, 0xbaf7, 0xe365, 0xe375, 0xe362, 0xe377,
+  0xe366, 0xbafe, 0xbafb, 0xe376, 0xe370, 0xbaed, 0xbaf5, 0xbaf4,
+  0xbaf3, 0xbaf9, 0xe363, 0xbafa, 0xe371, 0xbaf6, 0xbaec, 0xe373,
+  0xbaef, 0xbaf0, 0xbaf8, 0xe368, 0xe367, 0xe364, 0xe36c, 0xe369,
+  0xe36d, 0xbafd, 0xe379, 0xbaf2, 0xe36e, 0xe36f, 0xe36b, 0xbafc,
+  0xe6e7, 0xbd70, 0xbd79, 0xbd75, 0xe6e4, 0xbd72, 0xbd76, 0xe6f0,
+  0xbd6c, 0xe6e8, 0xbd74, 0xe6eb, 0xe6e6, 0xbd73, 0xbd77, 0xe6e5,
+  0xbd71, 0xe6ef, 0xbd6e, 0xe6ee, 0xe6ed, 0xbd7a, 0xe572, 0xbd6d,
+  0xe6ec, 0xe6e3, 0xbd7b, 0xe6ea, 0xbd6f, 0xe6e9, 0xbfa2, 0xbfa7,
+  0xbf7e, 0xead8, 0xeacf, 0xeadb, 0xead3, 0xead9, 0xbfa8, 0xbfa1,
+  0xeacc, 0xead2, 0xeadc, 0xead5, 0xeada, 0xeace, 0xead6, 0xbfa3,
+  0xead4, 0xbfa6, 0xbfa5, 0xead0, 0xead1, 0xeacd, 0xead7, 0xbfa4,
+  0xeade, 0xeadd, 0xedda, 0xedd6, 0xc15f, 0xedd0, 0xc159, 0xc169,
+  0xeddc, 0xc161, 0xc15d, 0xedd3, 0xc164, 0xc167, 0xedde, 0xc15c,
+  0xedd5, 0xc165, 0xede0, 0xeddd, 0xedd1, 0xc160, 0xc15a, 0xc168,
+  0xedd8, 0xc163, 0xedd2, 0xc15e, 0xeddf, 0xc162, 0xc15b, 0xedd9,
+  0xc166, 0xedd7, 0xeddb, 0xf06e, 0xf074, 0xc2b9, 0xf077, 0xc2b4,
+  0xc2b5, 0xf06f, 0xf076, 0xf071, 0xc2ba, 0xc2b7, 0xf06d, 0xc2b6,
+  0xf073, 0xf075, 0xc2b8, 0xf072, 0xf070, 0xf2b8, 0xc3b7, 0xc3b8,
+  0xc3b4, 0xc3b5, 0xf2b4, 0xf2b2, 0xf2b6, 0xc3ba, 0xf2b7, 0xf2b0,
+  0xf2af, 0xf2b3, 0xf2b1, 0xc3b6, 0xf2b5, 0xf4ac, 0xc47e, 0xc47d,
+  0xf4ad, 0xf4af, 0xf4ae, 0xc4a1, 0xf5eb, 0xf5e8, 0xf5e9, 0xf5e7,
+  0xf5ea, 0xc4f2, 0xf5ec, 0xc4f1, 0xf742, 0xc5d5, 0xc5d7, 0xf7ee,
+  0xc5d6, 0xf8b9, 0xf940, 0xf942, 0xf8fe, 0xf941, 0xc66c, 0xa6ce,
+  0xacfb, 0xd26f, 0xafca, 0xb2da, 0xdafc, 0xdafd, 0xeadf, 0xc16a,
+  0xede1, 0xc2bb, 0xf2ba, 0xf2b9, 0xc4a2, 0xf5ed, 0xf743, 0xc5f8,
+  0xca49, 0xaac9, 0xa875, 0xd04d, 0xd360, 0xd35b, 0xd35f, 0xd35d,
+  0xafcb, 0xd35e, 0xd35c, 0xd6f1, 0xdafe, 0xdb40, 0xdf69, 0xdf6a,
+  0xb86e, 0xb86f, 0xdf68, 0xdf6b, 0xdf67, 0xb86d, 0xbb40, 0xb870,
+  0xe37a, 0xbd7c, 0xe6f1, 0xbd7d, 0xbfa9, 0xeae2, 0xeae0, 0xeae1,
+  0xede4, 0xede3, 0xede2, 0xf2bb, 0xc3b9, 0xf2bc, 0xf744, 0xc5f9,
+  0xf8ba, 0xa6cf, 0xaacb, 0xaaca, 0xd04f, 0xacfc, 0xd04e, 0xd362,
+  0xafcc, 0xd6f2, 0xd361, 0xb2dc, 0xd6f5, 0xd6f3, 0xd6f4, 0xb2db,
+  0xdb42, 0xdb43, 0xdb41, 0xb873, 0xdf6d, 0xdf6c, 0xdf6e, 0xb872,
+  0xb871, 0xe6f2, 0xe6f4, 0xbd7e, 0xe6f3, 0xeae3, 0xbfaa, 0xf079,
+  0xf078, 0xc3bb, 0xf2bd, 0xc3bd, 0xc3bc, 0xf4b0, 0xf5ee, 0xc4f3,
+  0xa6d0, 0xd050, 0xacfd, 0xd365, 0xafce, 0xd364, 0xd363, 0xafcd,
+  0xd6fb, 0xd6fd, 0xd6f6, 0xd6f7, 0xb2dd, 0xd6f8, 0xb2de, 0xd6fc,
+  0xd6f9, 0xd6fa, 0xb2df, 0xb5be, 0xb5bf, 0xdb44, 0xdf6f, 0xdf70,
+  0xe37e, 0xbb43, 0xbb41, 0xbb42, 0xe37b, 0xe37c, 0xe37d, 0xe6f9,
+  0xe6fa, 0xbda1, 0xe6f7, 0xe6f6, 0xe6f8, 0xe6f5, 0xbfad, 0xeae4,
+  0xbfab, 0xbfac, 0xede6, 0xc16b, 0xede5, 0xefa8, 0xf07a, 0xf07b,
+  0xc2bc, 0xc2bd, 0xc16c, 0xf2be, 0xf2bf, 0xf4b1, 0xc4a3, 0xa6d1,
+  0xa6d2, 0xacfe, 0xaacc, 0xafcf, 0xd051, 0xb5c0, 0xa6d3, 0xad41,
+  0xd052, 0xd053, 0xad40, 0xad42, 0xa6d4, 0xd054, 0xafd1, 0xd366,
+  0xafd3, 0xafd0, 0xafd2, 0xd741, 0xb2e0, 0xd740, 0xd6fe, 0xdf71,
+  0xe3a1, 0xbda2, 0xbfae, 0xeae6, 0xeae5, 0xede7, 0xf5ef, 0xa6d5,
+  0xcb73, 0xcdaa, 0xad43, 0xd055, 0xd368, 0xafd4, 0xd367, 0xafd5,
+  0xd743, 0xb2e2, 0xd742, 0xd744, 0xb2e1, 0xdb46, 0xdb47, 0xdb45,
+  0xb5c1, 0xb874, 0xb875, 0xbb45, 0xe3a3, 0xe3a2, 0xbb44, 0xe6fb,
+  0xe6fc, 0xeae7, 0xc170, 0xc16f, 0xc16d, 0xc16e, 0xc171, 0xf07c,
+  0xc2bf, 0xc2be, 0xf2c0, 0xf4b2, 0xc5a5, 0xc5a4, 0xa6d6, 0xd1fb,
+  0xb877, 0xb5c2, 0xb876, 0xbb46, 0xa6d7, 0xc9a9, 0xa6d8, 0xa6d9,
+  0xcdab, 0xcb76, 0xcb77, 0xa877, 0xcb74, 0xa876, 0xa879, 0xcb75,
+  0xa87b, 0xa87a, 0xcb78, 0xa878, 0xaad1, 0xaacf, 0xcdad, 0xaace,
+  0xaad3, 0xaad5, 0xaad2, 0xcdb0, 0xcdac, 0xaad6, 0xaad0, 0xa87c,
+  0xaad4, 0xcdaf, 0xcdae, 0xaacd, 0xd05b, 0xad47, 0xad48, 0xd05d,
+  0xd057, 0xd05a, 0xd063, 0xd061, 0xad49, 0xd067, 0xad4c, 0xd064,
+  0xd05c, 0xd059, 0xdb49, 0xd062, 0xad44, 0xd065, 0xd056, 0xd05f,
+  0xad46, 0xad4b, 0xd060, 0xad4f, 0xad4d, 0xd058, 0xad4a, 0xd05e,
+  0xad4e, 0xad45, 0xd066, 0xafda, 0xafe3, 0xafd8, 0xafd6, 0xd36a,
+  0xafde, 0xafdb, 0xd36c, 0xafdd, 0xd36b, 0xd369, 0xd36e, 0xafe2,
+  0xafe0, 0xdb48, 0xd36f, 0xd36d, 0xafd7, 0xafd9, 0xafdc, 0xafdf,
+  0xafe1, 0xd74e, 0xb2e4, 0xd745, 0xd747, 0xd748, 0xd750, 0xd74c,
+  0xd74a, 0xd74d, 0xd751, 0xb2e5, 0xb2e9, 0xd746, 0xd74f, 0xb2e7,
+  0xb2e6, 0xd74b, 0xd749, 0xb2e3, 0xb2e8, 0xb5c8, 0xdb51, 0xdb4f,
+  0xb5ca, 0xdb4a, 0xdfa1, 0xb5c9, 0xdb4e, 0xdb4b, 0xb5c5, 0xb5cb,
+  0xdb50, 0xb5c7, 0xdb4d, 0xbb47, 0xb5c6, 0xdb4c, 0xb5cc, 0xb5c4,
+  0xb5c3, 0xdf77, 0xdf75, 0xdf7b, 0xdf73, 0xdfa2, 0xdf78, 0xdf72,
+  0xb87b, 0xb8a3, 0xdf7d, 0xdf76, 0xb87e, 0xb87c, 0xdf7e, 0xb879,
+  0xb878, 0xdf79, 0xb87d, 0xb5cd, 0xdf7c, 0xdf74, 0xb87a, 0xb8a1,
+  0xb8a2, 0xbb4c, 0xbb48, 0xbb4d, 0xe3a6, 0xe3a5, 0xe3a7, 0xbb4a,
+  0xe3a4, 0xbb4b, 0xe3aa, 0xe3a9, 0xe3a8, 0xbb49, 0xe741, 0xe744,
+  0xbda8, 0xe743, 0xbda7, 0xbda3, 0xbda4, 0xbda5, 0xe740, 0xe6fe,
+  0xbda6, 0xe742, 0xe6fd, 0xeae9, 0xeaf3, 0xbfb1, 0xbfb0, 0xeaed,
+  0xeaef, 0xeaea, 0xeaee, 0xeae8, 0xeaf1, 0xbfaf, 0xeaf0, 0xeaec,
+  0xeaf2, 0xeaeb, 0xc174, 0xede8, 0xedee, 0xc178, 0xc17a, 0xc177,
+  0xc176, 0xc175, 0xc173, 0xede9, 0xedec, 0xc172, 0xeded, 0xc179,
+  0xedeb, 0xedea, 0xc2c0, 0xc2c1, 0xf0a1, 0xf07d, 0xf07e, 0xf2c2,
+  0xf2c1, 0xc3be, 0xf4b4, 0xc4a4, 0xf4b3, 0xf5f0, 0xf745, 0xc5a6,
+  0xf943, 0xf944, 0xc5d8, 0xa6da, 0xaad7, 0xdb52, 0xbb4e, 0xc17b,
+  0xedef, 0xa6db, 0xafe5, 0xafe4, 0xdb53, 0xeaf4, 0xa6dc, 0xad50,
+  0xdb54, 0xdb55, 0xdb56, 0xbb4f, 0xbfb2, 0xa6dd, 0xaad8, 0xd068,
+  0xafe6, 0xd370, 0xb2ea, 0xdb57, 0xb8a4, 0xbb50, 0xbfb3, 0xc17c,
+  0xc2c2, 0xf4b5, 0xa6de, 0xaad9, 0xafe7, 0xd752, 0xb5ce, 0xbb51,
+  0xe3ab, 0xe745, 0xa6df, 0xb5cf, 0xdfa3, 0xbb52, 0xa6e0, 0xcdb1,
+  0xd069, 0xad51, 0xd372, 0xafea, 0xafe8, 0xafe9, 0xafeb, 0xd371,
+  0xd757, 0xd754, 0xd756, 0xb2eb, 0xb2ed, 0xb2ec, 0xd753, 0xb2ee,
+  0xd755, 0xdb58, 0xdb59, 0xdb5a, 0xdfa6, 0xdfa7, 0xdfa5, 0xdfa8,
+  0xb8a5, 0xdfa4, 0xbb53, 0xe74a, 0xe746, 0xe749, 0xe74b, 0xe748,
+  0xe747, 0xeaf5, 0xeaf6, 0xeaf7, 0xbfb4, 0xbfb5, 0xedf1, 0xedf0,
+  0xedf2, 0xf0a3, 0xf0a2, 0xf2c4, 0xf2c5, 0xf2c3, 0xc4a5, 0xf4b6,
+  0xf4b7, 0xf746, 0xf7ef, 0xf8bb, 0xa6e1, 0xa87d, 0xc17d, 0xa6e2,
+  0xd758, 0xdb5b, 0xc641, 0xca4a, 0xca4b, 0xca4d, 0xa6e3, 0xca4e,
+  0xca4c, 0xcba2, 0xcba3, 0xcb7b, 0xcba1, 0xa8a1, 0xa8a2, 0xcb7c,
+  0xcb7a, 0xcb79, 0xcb7d, 0xa87e, 0xcb7e, 0xd06a, 0xcdb6, 0xaadc,
+  0xcdb5, 0xcdb7, 0xaadb, 0xcdbc, 0xaadf, 0xcdb2, 0xcdc0, 0xcdc6,
+  0xaae6, 0xcdc3, 0xaae3, 0xcdb9, 0xcdbf, 0xcdc1, 0xcdb4, 0xaae2,
+  0xaadd, 0xcdba, 0xaae4, 0xaae7, 0xaae1, 0xaada, 0xcdbe, 0xcdb8,
+  0xcdc5, 0xaae9, 0xaae5, 0xaae0, 0xcdbd, 0xafec, 0xcdbb, 0xaade,
+  0xaae8, 0xcdb3, 0xcdc2, 0xcdc4, 0xad62, 0xad5c, 0xad64, 0xad61,
+  0xd071, 0xd074, 0xad5d, 0xd06b, 0xad56, 0xad60, 0xad63, 0xad65,
+  0xd0a2, 0xd077, 0xad55, 0xd0a1, 0xad59, 0xad57, 0xad52, 0xd06f,
+  0xd07e, 0xd073, 0xd076, 0xd0a5, 0xad66, 0xd07d, 0xad5e, 0xd078,
+  0xd0a4, 0xd075, 0xd079, 0xd07c, 0xd06d, 0xd0a3, 0xd07b, 0xd06c,
+  0xd070, 0xad5f, 0xad5a, 0xad53, 0xad58, 0xad54, 0xad67, 0xd06e,
+  0xd3a5, 0xad5b, 0xd07a, 0xce41, 0xd3a8, 0xaffa, 0xd376, 0xd3a3,
+  0xd37d, 0xd3b2, 0xd3aa, 0xd37e, 0xd3a9, 0xd378, 0xd37c, 0xd3b5,
+  0xaffd, 0xd3ad, 0xd3a4, 0xafed, 0xd3b3, 0xd374, 0xd3ac, 0xaffc,
+  0xaff7, 0xd373, 0xaff5, 0xaff4, 0xaff9, 0xd3ab, 0xaff1, 0xaff8,
+  0xd072, 0xdb5c, 0xd3a6, 0xd37a, 0xaffb, 0xd37b, 0xd3a1, 0xaffe,
+  0xd375, 0xd3af, 0xd3ae, 0xd3b6, 0xaff3, 0xaff0, 0xd3b4, 0xd3b0,
+  0xd3a7, 0xd3a2, 0xaff6, 0xaff2, 0xd377, 0xafee, 0xd3b1, 0xafef,
+  0xd379, 0xd75e, 0xd760, 0xd765, 0xd779, 0xb2fc, 0xb2f2, 0xd75d,
+  0xb2fd, 0xb2fe, 0xd768, 0xd76f, 0xd775, 0xd762, 0xd769, 0xb340,
+  0xd777, 0xd772, 0xb2fa, 0xb2f8, 0xd76e, 0xd76a, 0xd75c, 0xb2ef,
+  0xd761, 0xd759, 0xb2f7, 0xb2f9, 0xd766, 0xd763, 0xb2f4, 0xd773,
+  0xb2f1, 0xd764, 0xd77a, 0xd76c, 0xd76b, 0xb2f0, 0xb2fb, 0xb2f3,
+  0xd75a, 0xd75f, 0xd770, 0xd776, 0xb341, 0xd75b, 0xd767, 0xd76d,
+  0xb2f6, 0xd778, 0xd771, 0xd774, 0xb2f5, 0xdb6c, 0xdb60, 0xb5d7,
+  0xdb7d, 0xdba7, 0xdbaa, 0xb5d5, 0xdb68, 0xdba3, 0xdb69, 0xdb77,
+  0xb5e2, 0xdb73, 0xb5df, 0xdb74, 0xdb5d, 0xdba4, 0xb5e8, 0xdba1,
+  0xdb75, 0xdbac, 0xdb70, 0xdfc8, 0xdbaf, 0xb5e6, 0xdb6e, 0xdb7a,
+  0xb5e9, 0xb5d4, 0xdb72, 0xdbad, 0xdb6b, 0xdb64, 0xdb6f, 0xdb63,
+  0xdb61, 0xb5d0, 0xdba5, 0xdb6a, 0xdba8, 0xdba9, 0xb5d8, 0xb5dd,
+  0xb5d9, 0xb5e1, 0xdb7e, 0xb5da, 0xdb76, 0xdb66, 0xb5d2, 0xdb5e,
+  0xdba2, 0xdbab, 0xdb65, 0xb5e0, 0xdbb0, 0xdb71, 0xdb6d, 0xb5d1,
+  0xb5e5, 0xdb7c, 0xb5e7, 0xdb78, 0xb5dc, 0xb5d6, 0xb5de, 0xb5d3,
+  0xb5e4, 0xdb79, 0xdb67, 0xdb7b, 0xdb62, 0xdba6, 0xdbae, 0xdb5f,
+  0xdfc7, 0xdfdd, 0xb855, 0xdfcc, 0xdfca, 0xdfb5, 0xb8a9, 0xdfc5,
+  0xdfd9, 0xdfc1, 0xb8b1, 0xdfd8, 0xdfbf, 0xb5e3, 0xdfcf, 0xdfc0,
+  0xdfd6, 0xb8b0, 0xb8a8, 0xdfaa, 0xdfb2, 0xdfcb, 0xdfc3, 0xdfdc,
+  0xdfc6, 0xb8b6, 0xdfd7, 0xb8ad, 0xdfc9, 0xdfd1, 0xdfb6, 0xdfd0,
+  0xdfe1, 0xdfb1, 0xdfd2, 0xdfdf, 0xdfab, 0xb5db, 0xdfb9, 0xdfb8,
+  0xb8af, 0xdfbc, 0xdfbe, 0xdfcd, 0xdfde, 0xb8b2, 0xb8b3, 0xdfb0,
+  0xb8ab, 0xdfb4, 0xdfda, 0xb8b4, 0xb8ac, 0xb8ae, 0xb8b5, 0xdfe0,
+  0xdfd3, 0xdfce, 0xdfbb, 0xdfba, 0xb8aa, 0xdfac, 0xb8a7, 0xdfc4,
+  0xdfad, 0xdfc2, 0xdfb7, 0xdfdb, 0xb8a6, 0xdfb3, 0xdfaf, 0xdfd5,
+  0xdfae, 0xbb60, 0xe3d3, 0xe3c2, 0xe3ac, 0xe3ca, 0xbb58, 0xe3bb,
+  0xe3c5, 0xbb5b, 0xe3be, 0xbb59, 0xe3af, 0xe3cd, 0xe3ae, 0xe3c1,
+  0xe3ad, 0xe3bf, 0xe3c8, 0xe3c6, 0xe3ba, 0xe3b5, 0xe3b3, 0xe3b4,
+  0xe3c7, 0xe3d2, 0xe3bc, 0xbb5a, 0xe3b7, 0xe3cb, 0xbb5d, 0xe3b6,
+  0xe3b0, 0xe3c0, 0xbb61, 0xbb55, 0xbb5e, 0xe3b8, 0xe3b2, 0xbb57,
+  0xdfd4, 0xbb56, 0xe3c3, 0xbb54, 0xbb63, 0xbb5c, 0xe3c4, 0xe3b9,
+  0xe3b1, 0xe3cc, 0xe3bd, 0xbb62, 0xe3d0, 0xbb5f, 0xe3cf, 0xe3c9,
+  0xe3ce, 0xe3d1, 0xe773, 0xe774, 0xe767, 0xe766, 0xe762, 0xbdb4,
+  0xbdac, 0xe776, 0xe775, 0xdfa9, 0xe75f, 0xe763, 0xe75d, 0xe770,
+  0xe761, 0xe777, 0xe75a, 0xe758, 0xe764, 0xe76e, 0xe769, 0xbdb6,
+  0xe74f, 0xe76d, 0xbdb7, 0xdfbd, 0xe75b, 0xe752, 0xe755, 0xe77b,
+  0xe75c, 0xe753, 0xe751, 0xe74e, 0xbdb0, 0xe765, 0xbdaf, 0xbdb3,
+  0xe760, 0xe768, 0xbda9, 0xe778, 0xe77c, 0xbdab, 0xe757, 0xe76b,
+  0xe76f, 0xe754, 0xe779, 0xbdb2, 0xbdb1, 0xe74c, 0xbdb5, 0xe772,
+  0xe756, 0xe76a, 0xe750, 0xe75e, 0xe759, 0xbdad, 0xbdae, 0xe76c,
+  0xe77d, 0xe77a, 0xe771, 0xe74d, 0xbdaa, 0xeb49, 0xeb40, 0xeb43,
+  0xbfbb, 0xeb45, 0xeaf9, 0xeb41, 0xeb47, 0xbfb8, 0xbfbc, 0xbfb6,
+  0xeafb, 0xeb4c, 0xeb46, 0xeafc, 0xeb55, 0xeb4f, 0xeaf8, 0xee46,
+  0xeafe, 0xbfb7, 0xeb4a, 0xeb54, 0xbfbf, 0xeb51, 0xeafd, 0xeb44,
+  0xeb48, 0xeb42, 0xeb56, 0xeb53, 0xeb50, 0xbfb9, 0xbfba, 0xbfbe,
+  0xeafa, 0xeb57, 0xbfbd, 0xeb4d, 0xeb4b, 0xeb4e, 0xee53, 0xee40,
+  0xee45, 0xee52, 0xee44, 0xedfb, 0xee41, 0xc1a2, 0xedf4, 0xee4d,
+  0xee4f, 0xedf3, 0xc1a1, 0xee51, 0xee49, 0xc1a8, 0xee50, 0xee42,
+  0xc1aa, 0xedf9, 0xeb52, 0xee4a, 0xee47, 0xedf5, 0xee55, 0xc1a4,
+  0xc1a5, 0xedf7, 0xee48, 0xee54, 0xee4b, 0xedfd, 0xc1a7, 0xc1a3,
+  0xee4c, 0xedfe, 0xee56, 0xedf8, 0xee43, 0xee4e, 0xedfa, 0xedfc,
+  0xc2cb, 0xedf6, 0xc1a9, 0xc2c4, 0xc17e, 0xc1a6, 0xc2c8, 0xf0b3,
+  0xf0a9, 0xf0a4, 0xf0aa, 0xf0b4, 0xf0b8, 0xf0b7, 0xc2ca, 0xc2c9,
+  0xf0ab, 0xf0b9, 0xf0ae, 0xf0a6, 0xf0a8, 0xf0a7, 0xf0ad, 0xf0b2,
+  0xf0a5, 0xf0ac, 0xf0b1, 0xc2c7, 0xf0af, 0xc2c5, 0xf0b0, 0xc2c3,
+  0xc2c6, 0xf2d5, 0xf0b5, 0xc3c2, 0xf2cd, 0xf2d1, 0xf2c9, 0xf2cc,
+  0xf2d4, 0xc3c0, 0xf2d9, 0xf2d2, 0xf2ca, 0xf2da, 0xf2d3, 0xc3c3,
+  0xc3c4, 0xf2d7, 0xf2cb, 0xc3bf, 0xc3c1, 0xf2c6, 0xf2ce, 0xf2c8,
+  0xf2d8, 0xf2d6, 0xf2c7, 0xf2cf, 0xf4be, 0xc3c5, 0xf2d0, 0xc4a7,
+  0xc4a9, 0xc4a6, 0xf4c3, 0xf4bb, 0xf4b9, 0xf4bd, 0xf4ba, 0xf4bf,
+  0xf4c1, 0xc4aa, 0xc4ac, 0xf4c0, 0xc4ad, 0xc4ab, 0xf4c2, 0xc4a8,
+  0xc4f4, 0xf5f1, 0xf5f7, 0xc4f6, 0xf4bc, 0xf5f6, 0xf5fd, 0xf5f4,
+  0xf5fb, 0xf5fa, 0xf4b8, 0xf5f5, 0xf0b6, 0xf5fe, 0xf5f3, 0xf5f8,
+  0xf5fc, 0xf5f2, 0xf74a, 0xc4f5, 0xf5f9, 0xf7f4, 0xf74b, 0xf749,
+  0xf747, 0xf748, 0xf74c, 0xc5d9, 0xf7f2, 0xf7f0, 0xf7f5, 0xf7f3,
+  0xf7f6, 0xc5da, 0xf7f1, 0xf8bc, 0xf945, 0xf946, 0xf947, 0xf9c7,
+  0xf9bd, 0xca4f, 0xaaea, 0xad68, 0xd3b8, 0xd3b7, 0xb040, 0xb342,
+  0xd77c, 0xd77b, 0xb5ea, 0xb8b8, 0xb8b7, 0xb8b9, 0xe3d4, 0xe77e,
+  0xeb58, 0xeb5a, 0xeb59, 0xc1ab, 0xee57, 0xf0ba, 0xf9a5, 0xa6e4,
+  0xcdc9, 0xcdca, 0xcdc8, 0xcdc7, 0xaaeb, 0xd0a9, 0xd0a7, 0xd0a6,
+  0xad69, 0xad6b, 0xad6a, 0xd0a8, 0xd3c4, 0xd3c1, 0xd3bf, 0xb041,
+  0xd3c2, 0xb046, 0xd3bc, 0xd3cb, 0xd3cd, 0xd3bd, 0xb043, 0xd3ce,
+  0xd3c9, 0xd3bb, 0xd3c0, 0xd3ca, 0xd3c6, 0xd3c3, 0xb048, 0xd3cc,
+  0xd3be, 0xd3c7, 0xd3b9, 0xb047, 0xb044, 0xd3c5, 0xd3c8, 0xd3ba,
+  0xb045, 0xb042, 0xb34c, 0xd7a5, 0xb34b, 0xd7a8, 0xd7ab, 0xb348,
+  0xb346, 0xd77e, 0xd7a9, 0xd7a7, 0xd7a4, 0xd7ac, 0xd7ad, 0xd7af,
+  0xd7b0, 0xd77d, 0xb345, 0xd7a2, 0xd7a1, 0xd7ae, 0xb347, 0xd7a3,
+  0xb349, 0xb344, 0xd7a6, 0xb34d, 0xb34a, 0xd7aa, 0xb5f1, 0xdbbf,
+  0xdbb4, 0xb5ee, 0xdfe7, 0xdbbd, 0xdbb1, 0xb5ec, 0xdbb6, 0xb5ef,
+  0xdbba, 0xdbb8, 0xb5f2, 0xb5eb, 0xdbb2, 0xdbb5, 0xb5f0, 0xdbb3,
+  0xdbbe, 0xdbbc, 0xdbb7, 0xdbb9, 0xdbbb, 0xb5ed, 0xdfe8, 0xdfee,
+  0xdfe4, 0xdfea, 0xb8ba, 0xdfe6, 0xb8c0, 0xb8bf, 0xb8be, 0xdfed,
+  0xb8c1, 0xb8c2, 0xdfe3, 0xdff0, 0xb8c3, 0xb8bd, 0xb8bc, 0xdfec,
+  0xb8c4, 0xdfe2, 0xdfe5, 0xdfef, 0xdfeb, 0xe3f4, 0xe3e9, 0xb8bb,
+  0xbb6a, 0xe3dd, 0xe3f2, 0xe3de, 0xbb65, 0xe3db, 0xe3e4, 0xe3dc,
+  0xbb67, 0xe3d6, 0xe3f1, 0xbb68, 0xe3ee, 0xe3ef, 0xe3d7, 0xbb6d,
+  0xe3e6, 0xe3e0, 0xe3e7, 0xe3da, 0xe3f3, 0xe3eb, 0xe3e5, 0xe3d5,
+  0xbb69, 0xe3ec, 0xbb6c, 0xe3f0, 0xe3ea, 0xbb66, 0xe3e8, 0xe3e2,
+  0xbb64, 0xe3d9, 0xe3e1, 0xe3ed, 0xe3df, 0xe3e3, 0xbdc1, 0xdfe9,
+  0xe7b2, 0xe7bb, 0xe7b1, 0xe7ad, 0xe7aa, 0xbdc2, 0xe7a8, 0xbb6b,
+  0xe7a1, 0xbdc0, 0xe7a7, 0xbdbf, 0xe7ac, 0xe7a9, 0xe7b9, 0xe7b4,
+  0xe7ae, 0xe7b3, 0xbdbb, 0xe7ab, 0xe7be, 0xe7a2, 0xe7a3, 0xe7ba,
+  0xbdbc, 0xe7bf, 0xbdbe, 0xe7c0, 0xe7b0, 0xe3d8, 0xe7b6, 0xe7af,
+  0xe7b8, 0xe7b5, 0xe7a6, 0xbdb9, 0xe7bd, 0xbdba, 0xe7a4, 0xbdbd,
+  0xeb64, 0xe7b7, 0xe7bc, 0xeb61, 0xbdb8, 0xbfc0, 0xeb6b, 0xeb67,
+  0xeb65, 0xeb60, 0xeb6f, 0xbfc4, 0xeb5c, 0xeb68, 0xeb69, 0xeb5f,
+  0xeb5e, 0xeb6c, 0xeb62, 0xeb5d, 0xeb63, 0xeb6e, 0xeb5b, 0xeb6d,
+  0xeb6a, 0xbfc2, 0xbfc1, 0xbfc3, 0xeb66, 0xf0cb, 0xee59, 0xc1b1,
+  0xee5d, 0xee5a, 0xee61, 0xee67, 0xee5c, 0xee70, 0xc1ae, 0xee6a,
+  0xee5f, 0xee6b, 0xee66, 0xee6d, 0xee5e, 0xc1b3, 0xc1b2, 0xee60,
+  0xee6e, 0xee58, 0xee6c, 0xc1ac, 0xee64, 0xee63, 0xee68, 0xee5b,
+  0xc1b0, 0xc1b4, 0xee62, 0xee69, 0xc1b5, 0xee65, 0xc1ad, 0xc1af,
+  0xf0c7, 0xf0c5, 0xf0cc, 0xf0c9, 0xf0cd, 0xf0be, 0xf0c6, 0xf0d1,
+  0xee6f, 0xf0c2, 0xc2cf, 0xe7a5, 0xf0bd, 0xf0ca, 0xf0c4, 0xf0c1,
+  0xf0bc, 0xf0bb, 0xf0d0, 0xf0c0, 0xf0bf, 0xc2cd, 0xf0c8, 0xc2cc,
+  0xc2ce, 0xf0c3, 0xf0cf, 0xf2de, 0xf2df, 0xc3c9, 0xf2dc, 0xc3c6,
+  0xf2e4, 0xc3ca, 0xf2e6, 0xf2db, 0xf0ce, 0xf2e8, 0xf2dd, 0xc3c7,
+  0xf2e3, 0xf2e5, 0xf2e0, 0xf2e7, 0xf2e2, 0xf2e1, 0xc3c8, 0xf4c5,
+  0xf4c6, 0xf4c8, 0xc4ae, 0xc4af, 0xf4c9, 0xf4c7, 0xf4c4, 0xf642,
+  0xf645, 0xf641, 0xc4fa, 0xf643, 0xc4f9, 0xc4f8, 0xc4f7, 0xf644,
+  0xf751, 0xf74f, 0xf74e, 0xf640, 0xf750, 0xf646, 0xf74d, 0xf7f9,
+  0xf7d7, 0xf7f7, 0xc5db, 0xf7f8, 0xf7fa, 0xf8bf, 0xc5fa, 0xf8be,
+  0xf8bd, 0xc5fb, 0xc65a, 0xf96e, 0xf9a7, 0xf9a6, 0xf9a8, 0xa6e5,
+  0xd0aa, 0xd3cf, 0xd3d0, 0xdbc0, 0xf647, 0xf8c0, 0xa6e6, 0xad6c,
+  0xd0ab, 0xd7b1, 0xb34e, 0xdbc2, 0xdbc1, 0xb5f3, 0xb8c5, 0xe7c1,
+  0xbdc3, 0xbdc4, 0xbfc5, 0xc5fc, 0xa6e7, 0xd0ac, 0xaaed, 0xd0ae,
+  0xd0ad, 0xad6d, 0xd3d1, 0xd3d8, 0xb049, 0xd3d6, 0xd3d4, 0xd3db,
+  0xd3d2, 0xd3d3, 0xb04a, 0xb04e, 0xd3dc, 0xb04d, 0xd3da, 0xd3d7,
+  0xd3d5, 0xb04b, 0xb04c, 0xd3d9, 0xb350, 0xd7b2, 0xb355, 0xd7c2,
+  0xb354, 0xd7c4, 0xd7b8, 0xb352, 0xd7c3, 0xd7b3, 0xb353, 0xd7bf,
+  0xd7bb, 0xd7bd, 0xd7b7, 0xd7be, 0xb34f, 0xd7ba, 0xd7b9, 0xd7b5,
+  0xd7c0, 0xd7bc, 0xd7b4, 0xd7b6, 0xb351, 0xd7c1, 0xb5f6, 0xdbcd,
+  0xdbc9, 0xdbcb, 0xdbc6, 0xdbc5, 0xdbc3, 0xdbca, 0xdbcc, 0xdbc8,
+  0xdbc7, 0xb5f4, 0xb5f5, 0xdbcf, 0xb8cd, 0xdff2, 0xdff8, 0xdff3,
+  0xdff4, 0xdff9, 0xb8cf, 0xb8c7, 0xb8ce, 0xdff1, 0xdbc4, 0xb8ca,
+  0xb8c8, 0xdff7, 0xdff6, 0xb8c9, 0xb8cb, 0xdff5, 0xb8c6, 0xb8cc,
+  0xe3f6, 0xbb74, 0xe442, 0xe441, 0xe3fb, 0xbb76, 0xe440, 0xe3f7,
+  0xe3f8, 0xbb6e, 0xbb70, 0xe3fd, 0xe3f5, 0xbb72, 0xbb71, 0xe3f9,
+  0xe3fe, 0xe3fc, 0xbb73, 0xe3fa, 0xdbce, 0xbb6f, 0xe7c2, 0xe7c9,
+  0xbdc6, 0xe7cd, 0xbdca, 0xe7c5, 0xe7c3, 0xe7cc, 0xbdc5, 0xe7cb,
+  0xbdc7, 0xbdc8, 0xe7c4, 0xbdc9, 0xe7ca, 0xe7c6, 0xe7c7, 0xe7c8,
+  0xbb75, 0xeb70, 0xeb7c, 0xbfca, 0xeb77, 0xeb79, 0xbfc8, 0xeb71,
+  0xeb75, 0xeb78, 0xbfc6, 0xbfc9, 0xeb7b, 0xeb73, 0xeb74, 0xeb7a,
+  0xeb72, 0xeb76, 0xbfc7, 0xee72, 0xee71, 0xc1b7, 0xee77, 0xc1b9,
+  0xc1b6, 0xee73, 0xc1ba, 0xee74, 0xee75, 0xee78, 0xc1b8, 0xf0d6,
+  0xf0d9, 0xf0d3, 0xf0d5, 0xf0d4, 0xf0d7, 0xf0d8, 0xee76, 0xf0d2,
+  0xc3cd, 0xf2ec, 0xf2ef, 0xf2f1, 0xf2ea, 0xf2eb, 0xf2ee, 0xf2f0,
+  0xc3ce, 0xc3cc, 0xc3cb, 0xf2ed, 0xf2e9, 0xf4ca, 0xc4b0, 0xf4cb,
+  0xf649, 0xc4fb, 0xf64b, 0xc4fc, 0xf648, 0xf64a, 0xc5a8, 0xf752,
+  0xc5a7, 0xf7fd, 0xf7fc, 0xf7fb, 0xf948, 0xf949, 0xf94b, 0xf94a,
+  0xca50, 0xa6e8, 0xad6e, 0xd7c5, 0xb5f7, 0xdffa, 0xc2d0, 0xf2f2,
+  0xa8a3, 0xb357, 0xb356, 0xdbd0, 0xb5f8, 0xdbd2, 0xdbd1, 0xdffb,
+  0xb8d0, 0xe443, 0xe446, 0xe445, 0xe444, 0xe7ce, 0xe7d0, 0xe7cf,
+  0xbfcc, 0xbfcb, 0xc1bb, 0xee79, 0xee7b, 0xee7a, 0xc2d1, 0xf2f4,
+  0xf2f3, 0xf4cc, 0xc4b1, 0xc4fd, 0xf754, 0xf753, 0xc65b, 0xa8a4,
+  0xd0af, 0xad6f, 0xd7c8, 0xd7c6, 0xd7c7, 0xdbd4, 0xdbd5, 0xe043,
+  0xdbd3, 0xdffc, 0xe041, 0xe040, 0xe042, 0xb8d1, 0xdffe, 0xdffd,
+  0xe044, 0xe449, 0xe447, 0xe448, 0xe7d3, 0xe7d1, 0xe7d2, 0xeb7d,
+  0xee7c, 0xee7d, 0xc2d2, 0xf2f5, 0xf4cd, 0xc4b2, 0xf64c, 0xf755,
+  0xc5a9, 0xf7fe, 0xf94c, 0xa8a5, 0xad71, 0xad72, 0xd0b0, 0xd0b1,
+  0xad70, 0xb054, 0xb052, 0xb051, 0xb058, 0xb050, 0xb059, 0xd3dd,
+  0xb056, 0xb053, 0xb057, 0xb055, 0xb04f, 0xb35f, 0xb359, 0xd7cc,
+  0xb35e, 0xb360, 0xb35a, 0xb35b, 0xd7ca, 0xb358, 0xd7cb, 0xb35d,
+  0xd7c9, 0xb35c, 0xb644, 0xb646, 0xdbd8, 0xb645, 0xb5f9, 0xb5fd,
+  0xb8e4, 0xe049, 0xdbda, 0xb5fe, 0xdbdd, 0xdbde, 0xb643, 0xdbe0,
+  0xdbe2, 0xdbe3, 0xdbd7, 0xdbd6, 0xdbe4, 0xb642, 0xdbe1, 0xdbdf,
+  0xb640, 0xb5fb, 0xb647, 0xdbdb, 0xdbdc, 0xdbd9, 0xb641, 0xb5fc,
+  0xb5fa, 0xe048, 0xb8df, 0xb8da, 0xb8d5, 0xb8e5, 0xb8d6, 0xb8d2,
+  0xb8e1, 0xb8de, 0xb8e0, 0xb8d7, 0xb8dc, 0xb8d3, 0xb8d4, 0xe050,
+  0xe04d, 0xe045, 0xe04a, 0xb8e2, 0xe051, 0xb8e3, 0xb8d9, 0xe047,
+  0xe04f, 0xe04b, 0xe04e, 0xe04c, 0xb8dd, 0xe046, 0xb8d8, 0xe44c,
+  0xbb78, 0xbb7b, 0xe44e, 0xbba5, 0xe44d, 0xbb7d, 0xbdcf, 0xe44f,
+  0xbba4, 0xe44b, 0xbba6, 0xbb79, 0xb8db, 0xbb7c, 0xbb7a, 0xbb7e,
+  0xbba2, 0xbb77, 0xbba7, 0xbba3, 0xbba1, 0xe44a, 0xbdd6, 0xbdd2,
+  0xbdd9, 0xe7d6, 0xbdda, 0xe7e2, 0xe7db, 0xbdcb, 0xe7e3, 0xe7dd,
+  0xbdd5, 0xe7de, 0xbdd4, 0xe7e1, 0xbdce, 0xe7df, 0xe7d5, 0xbdcd,
+  0xebaa, 0xbdd3, 0xbdd0, 0xbdd8, 0xe7d4, 0xe7d8, 0xbdcc, 0xe7d7,
+  0xe7d9, 0xe7da, 0xbdd7, 0xe7dc, 0xe7e0, 0xe7e4, 0xbddb, 0xbfd2,
+  0xeba5, 0xebab, 0xeba8, 0xeb7e, 0xebac, 0xeba1, 0xeba7, 0xbfcd,
+  0xbfd3, 0xebad, 0xbfcf, 0xbfd9, 0xbfd4, 0xebaf, 0xeba9, 0xbfd0,
+  0xeba2, 0xbfda, 0xeba3, 0xeba4, 0xbfdb, 0xbfd8, 0xbdd1, 0xbfce,
+  0xebb0, 0xbfdc, 0xbfd5, 0xebae, 0xbfd1, 0xbfd6, 0xbfd7, 0xc1c3,
+  0xeea4, 0xeead, 0xeeaa, 0xeeac, 0xc1c0, 0xeea5, 0xeeab, 0xc1bc,
+  0xeea7, 0xc1c4, 0xeea3, 0xeea8, 0xeeaf, 0xeba6, 0xeea9, 0xeea2,
+  0xc1bd, 0xeea1, 0xc1be, 0xeeb0, 0xc1bf, 0xeeae, 0xc1c2, 0xee7e,
+  0xc1c1, 0xeea6, 0xf0dc, 0xf0ea, 0xf0e5, 0xf0e7, 0xf0db, 0xc2d3,
+  0xf0da, 0xc2d6, 0xc2d5, 0xf0e9, 0xf0e1, 0xf0de, 0xf0e4, 0xf0dd,
+  0xf0df, 0xf0e8, 0xf0e6, 0xc2d4, 0xf0ed, 0xf0eb, 0xf0e2, 0xf0ec,
+  0xf0e3, 0xf2f9, 0xc3cf, 0xf341, 0xf64f, 0xc3d6, 0xf0e0, 0xf2f7,
+  0xc3d2, 0xf2f8, 0xf2fd, 0xc3d4, 0xc3d5, 0xf2f6, 0xf340, 0xf342,
+  0xf2fa, 0xf2fc, 0xf2fe, 0xf2fb, 0xf343, 0xc3d1, 0xc3d7, 0xc3d3,
+  0xc3d0, 0xf4d0, 0xc4b7, 0xf4ce, 0xf4d2, 0xf4d3, 0xc4b5, 0xf4d4,
+  0xf4d1, 0xf4cf, 0xc4b8, 0xc4b4, 0xf4d5, 0xc4b6, 0xc4b3, 0xc4fe,
+  0xc540, 0xf64e, 0xf64d, 0xf650, 0xf651, 0xc541, 0xf756, 0xf75b,
+  0xc5aa, 0xf758, 0xf757, 0xf75a, 0xf759, 0xf843, 0xc5dc, 0xf842,
+  0xf840, 0xf841, 0xc5fe, 0xc5fd, 0xf8c1, 0xf8c2, 0xc640, 0xf94d,
+  0xf94e, 0xc667, 0xc66d, 0xf9a9, 0xf9c8, 0xa8a6, 0xd7cd, 0xd7ce,
+  0xe052, 0xe450, 0xe7e5, 0xc1c6, 0xc1c5, 0xf0ee, 0xf344, 0xf844,
+  0xa8a7, 0xd3de, 0xb05a, 0xb361, 0xe054, 0xe053, 0xbddc, 0xe7e6,
+  0xbddd, 0xeeb1, 0xc2d7, 0xc676, 0xa8a8, 0xcdcb, 0xd3df, 0xb362,
+  0xd7cf, 0xd7d0, 0xdbe5, 0xb648, 0xb8e6, 0xe056, 0xe055, 0xe057,
+  0xe451, 0xe452, 0xbba8, 0xbfdd, 0xbdde, 0xbfde, 0xeeb5, 0xeeb2,
+  0xeeb4, 0xeeb3, 0xc1c7, 0xf0ef, 0xf346, 0xf345, 0xcba4, 0xb05c,
+  0xb05b, 0xd3e0, 0xd7d1, 0xdbe7, 0xdbe6, 0xb649, 0xe059, 0xe05a,
+  0xe058, 0xb8e8, 0xb8e7, 0xbbaa, 0xbba9, 0xe7e7, 0xebb3, 0xebb1,
+  0xebb2, 0xbfdf, 0xeeb7, 0xeeb6, 0xf0f2, 0xf0f1, 0xf0f0, 0xf347,
+  0xf9aa, 0xa8a9, 0xad73, 0xad74, 0xb05d, 0xb05e, 0xd3e2, 0xd3e1,
+  0xd7d2, 0xb368, 0xb366, 0xb363, 0xb367, 0xb365, 0xb364, 0xb64a,
+  0xdbea, 0xb8ed, 0xb64c, 0xb651, 0xdbec, 0xb653, 0xb652, 0xb655,
+  0xdbeb, 0xdbe8, 0xb64f, 0xb64b, 0xb64d, 0xdbe9, 0xb654, 0xb650,
+  0xb64e, 0xb8ef, 0xb8ee, 0xb8ec, 0xb8f0, 0xb8ea, 0xb8eb, 0xb8e9,
+  0xe05b, 0xe454, 0xbbac, 0xbbad, 0xbbab, 0xe453, 0xe455, 0xe7ea,
+  0xe7ec, 0xbde7, 0xe7ed, 0xbde0, 0xe7e9, 0xbddf, 0xbde9, 0xbde5,
+  0xbde6, 0xbde2, 0xe7e8, 0xbde1, 0xe7ee, 0xe7eb, 0xbde8, 0xbde3,
+  0xbde4, 0xebb5, 0xebb7, 0xebb6, 0xebb8, 0xbfe0, 0xebb4, 0xc1cb,
+  0xeeb8, 0xc1c8, 0xc1cc, 0xc1ca, 0xc1c9, 0xf0f3, 0xf0f6, 0xf0f5,
+  0xf0f4, 0xc2d8, 0xf348, 0xf349, 0xc3d8, 0xf34a, 0xc3d9, 0xc4ba,
+  0xc4b9, 0xf652, 0xc542, 0xf653, 0xf75c, 0xc5ab, 0xc5ac, 0xf845,
+  0xc642, 0xa8aa, 0xb36a, 0xb369, 0xe05c, 0xe05d, 0xbbae, 0xebb9,
+  0xbdea, 0xebba, 0xeeb9, 0xa8ab, 0xd0b2, 0xad76, 0xad75, 0xd3e3,
+  0xb05f, 0xd3e4, 0xd7d5, 0xd7d4, 0xd7d3, 0xdbee, 0xb658, 0xdbed,
+  0xb657, 0xdbef, 0xb656, 0xe05f, 0xe062, 0xe060, 0xe061, 0xe065,
+  0xe05e, 0xe066, 0xe063, 0xe064, 0xbbb0, 0xe456, 0xbbaf, 0xe7f2,
+  0xe7f0, 0xbdeb, 0xe7ef, 0xe7f1, 0xbdec, 0xebbb, 0xebbc, 0xc1cd,
+  0xf34c, 0xf34e, 0xf34b, 0xf34d, 0xf4d6, 0xf654, 0xf96f, 0xa8ac,
+  0xad77, 0xd3e5, 0xd3e7, 0xd3e6, 0xd7d8, 0xb36c, 0xd7d6, 0xb36b,
+  0xd7d9, 0xd7da, 0xd7d7, 0xdbfb, 0xb660, 0xdbf3, 0xdbf9, 0xb65b,
+  0xb65e, 0xdbf2, 0xb659, 0xdbf6, 0xe06c, 0xb65d, 0xdbf1, 0xdbf7,
+  0xdbf4, 0xdbfa, 0xdbf0, 0xdbf8, 0xb65c, 0xb65f, 0xdbf5, 0xb65a,
+  0xb8f2, 0xe068, 0xb8f1, 0xe06f, 0xe06e, 0xb8f8, 0xb8f9, 0xe070,
+  0xb8f3, 0xe06d, 0xb8f7, 0xe072, 0xe069, 0xe06b, 0xb8f4, 0xe067,
+  0xe06a, 0xe071, 0xb8f5, 0xe073, 0xb8f6, 0xbbb1, 0xe45b, 0xe461,
+  0xe459, 0xe462, 0xe458, 0xe45d, 0xe463, 0xe460, 0xe45f, 0xe45e,
+  0xe457, 0xe45c, 0xe45a, 0xbdf1, 0xbdee, 0xe7fb, 0xe841, 0xe843,
+  0xe840, 0xe7f8, 0xe7fa, 0xe845, 0xe842, 0xe7fc, 0xe846, 0xe7f9,
+  0xe844, 0xbdef, 0xbdf5, 0xbdf3, 0xe7f3, 0xbdf4, 0xbdf0, 0xe7f4,
+  0xe7f6, 0xe7f5, 0xe7fd, 0xe7fe, 0xbdf2, 0xbded, 0xe7f7, 0xebc6,
+  0xbfe2, 0xebbd, 0xbfe3, 0xbfe6, 0xebc2, 0xebbf, 0xbfe5, 0xebc3,
+  0xebc4, 0xebbe, 0xebc7, 0xebc0, 0xebc5, 0xbfe4, 0xbfe1, 0xebc1,
+  0xeebf, 0xc1d0, 0xc1ce, 0xc1d1, 0xc1cf, 0xeebe, 0xeebb, 0xeeba,
+  0xeebd, 0xeebc, 0xf145, 0xc2de, 0xf0fb, 0xf0fa, 0xc2d9, 0xf141,
+  0xf140, 0xf0f7, 0xf143, 0xf0fc, 0xc2dd, 0xf0f9, 0xf142, 0xf0f8,
+  0xc2da, 0xc2dc, 0xf0fd, 0xc2db, 0xf0fe, 0xf144, 0xf352, 0xc3de,
+  0xf34f, 0xf353, 0xc3db, 0xf351, 0xc3e0, 0xc3dd, 0xf350, 0xc3df,
+  0xf354, 0xc3da, 0xc4bc, 0xc4be, 0xf4d9, 0xc4bd, 0xf4d7, 0xc3dc,
+  0xf4d8, 0xc4bb, 0xc543, 0xc545, 0xf656, 0xc544, 0xf655, 0xf761,
+  0xc5ad, 0xf760, 0xc5ae, 0xf75e, 0xf75d, 0xf762, 0xf763, 0xf846,
+  0xf75f, 0xf8c6, 0xf8c3, 0xf8c4, 0xf8c5, 0xc65c, 0xf951, 0xf950,
+  0xf94f, 0xf970, 0xf9be, 0xf9ab, 0xc66e, 0xa8ad, 0xb060, 0xb8fa,
+  0xbdf6, 0xebc8, 0xc2df, 0xf355, 0xf9ac, 0xa8ae, 0xaaee, 0xad79,
+  0xad78, 0xb063, 0xd3e8, 0xb061, 0xd3e9, 0xb062, 0xd7df, 0xd7db,
+  0xb36d, 0xd7de, 0xd7dd, 0xd7dc, 0xb36e, 0xd7e0, 0xd7e1, 0xdc43,
+  0xdc41, 0xdc45, 0xdc46, 0xdc4c, 0xdc48, 0xdc4a, 0xdc42, 0xdbfc,
+  0xdc49, 0xdc4b, 0xdc44, 0xdc47, 0xdbfd, 0xb662, 0xdc40, 0xdbfe,
+  0xb661, 0xb663, 0xb8fd, 0xe075, 0xe077, 0xe076, 0xe07b, 0xb8fb,
+  0xe078, 0xe074, 0xe079, 0xe07a, 0xb8fc, 0xb8fe, 0xe07c, 0xe467,
+  0xe466, 0xe464, 0xe465, 0xbbb3, 0xbbb5, 0xbbb2, 0xbbb4, 0xe84d,
+  0xe84e, 0xe849, 0xe84a, 0xbdf8, 0xbdfd, 0xbdf7, 0xbdfe, 0xbdf9,
+  0xe84b, 0xe84c, 0xe848, 0xbe40, 0xbdfb, 0xbdfa, 0xbdfc, 0xe847,
+  0xebca, 0xbfe8, 0xebcc, 0xbfea, 0xebcf, 0xebcb, 0xebc9, 0xebce,
+  0xbfe9, 0xebcd, 0xbfe7, 0xc1d3, 0xc1d6, 0xeec1, 0xc1d4, 0xeec0,
+  0xc1d2, 0xc1d5, 0xf146, 0xf147, 0xf148, 0xc2e0, 0xf149, 0xc2e1,
+  0xc3e2, 0xf358, 0xf359, 0xf357, 0xf356, 0xf35a, 0xc3e1, 0xf4dd,
+  0xf4db, 0xf4dc, 0xf4de, 0xf4da, 0xf4df, 0xf658, 0xf659, 0xf657,
+  0xc546, 0xf764, 0xc5af, 0xf765, 0xf848, 0xf847, 0xa8af, 0xb664,
+  0xb940, 0xbbb6, 0xbfec, 0xbfeb, 0xc3e3, 0xc47c, 0xc547, 0xa8b0,
+  0xb064, 0xb941, 0xf35b, 0xcba6, 0xa8b1, 0xa8b4, 0xa8b3, 0xa8b2,
+  0xcba5, 0xcdcd, 0xcdcf, 0xaaef, 0xaaf1, 0xcdcc, 0xcdce, 0xaaf0,
+  0xcdd1, 0xcdd0, 0xcdd2, 0xd0b6, 0xd0b4, 0xad7c, 0xd0b3, 0xada3,
+  0xad7e, 0xad7b, 0xada4, 0xad7d, 0xada2, 0xada1, 0xd0b5, 0xad7a,
+  0xb06a, 0xd3eb, 0xd3f1, 0xb067, 0xb06e, 0xb069, 0xd3ee, 0xd3f0,
+  0xb06c, 0xd3ea, 0xd3ed, 0xb068, 0xb065, 0xd3ec, 0xb06b, 0xd3ef,
+  0xb06d, 0xb066, 0xd7e3, 0xd7e6, 0xb370, 0xb37a, 0xb376, 0xd7e4,
+  0xb37e, 0xb377, 0xb37c, 0xb372, 0xb36f, 0xb371, 0xb37d, 0xd7e5,
+  0xb375, 0xb378, 0xb374, 0xb379, 0xd7e7, 0xb37b, 0xb373, 0xd7e2,
+  0xdc4d, 0xb665, 0xdc4f, 0xb667, 0xb669, 0xdc4e, 0xb666, 0xb66a,
+  0xb668, 0xb947, 0xe0a3, 0xb94f, 0xe07e, 0xb950, 0xb945, 0xe0a1,
+  0xb94a, 0xe0a2, 0xb943, 0xb942, 0xb94d, 0xb94c, 0xb94b, 0xb949,
+  0xb94e, 0xe07d, 0xb944, 0xb946, 0xb948, 0xbbb8, 0xbbbb, 0xbbbf,
+  0xbbb9, 0xbbbe, 0xbbbc, 0xbbb7, 0xbbbd, 0xbbba, 0xe852, 0xbe43,
+  0xbe41, 0xe853, 0xbe44, 0xbe42, 0xe851, 0xe850, 0xbff0, 0xe84f,
+  0xbfee, 0xbfed, 0xebd0, 0xbe45, 0xbfef, 0xebd1, 0xbff2, 0xebd2,
+  0xbff1, 0xc1d8, 0xeec3, 0xc1d7, 0xc1dc, 0xc1da, 0xc1db, 0xc2e3,
+  0xc1d9, 0xeec2, 0xebd3, 0xc2e2, 0xc2e4, 0xc3e4, 0xc3e5, 0xf4e0,
+  0xc5de, 0xc5dd, 0xa8b6, 0xca55, 0xb06f, 0xca52, 0xca53, 0xca51,
+  0xca54, 0xcbaa, 0xcba7, 0xcbac, 0xcba8, 0xa8b7, 0xa8ba, 0xcba9,
+  0xa8b9, 0xcbab, 0xa8b8, 0xcdd5, 0xcdd7, 0xaaf4, 0xcdd3, 0xcdd6,
+  0xcdd4, 0xaaf2, 0xaaf5, 0xaaf3, 0xd0b8, 0xd0bc, 0xd0b9, 0xada7,
+  0xada8, 0xd0bb, 0xd0bd, 0xd0bf, 0xada5, 0xd0be, 0xada6, 0xd7ee,
+  0xd0ba, 0xd3f2, 0xd3fb, 0xd3f9, 0xd3f4, 0xd3f5, 0xd3fa, 0xd3fc,
+  0xb071, 0xd3f7, 0xd3f3, 0xb070, 0xb072, 0xd3f6, 0xd3fd, 0xd3f8,
+  0xb3a1, 0xd7f1, 0xd7e9, 0xd7ef, 0xd7f0, 0xb3a2, 0xd7e8, 0xd7ea,
+  0xd0b7, 0xd7ec, 0xd7ed, 0xd7eb, 0xb66c, 0xdc56, 0xebd4, 0xdc57,
+  0xdc54, 0xb3a3, 0xb66e, 0xdc53, 0xdc59, 0xdc58, 0xb66b, 0xdc5c,
+  0xdc52, 0xdc5b, 0xdc50, 0xdc5a, 0xdc55, 0xb66d, 0xe0aa, 0xe0a5,
+  0xe0ab, 0xe0a6, 0xe0a4, 0xe0a7, 0xb951, 0xe0a9, 0xe0a8, 0xb952,
+  0xbbc1, 0xbbc0, 0xe46e, 0xe471, 0xe469, 0xe46d, 0xbbc2, 0xe46c,
+  0xe46a, 0xe470, 0xe46b, 0xe468, 0xe46f, 0xe859, 0xbe48, 0xf14a,
+  0xe856, 0xe857, 0xe855, 0xdc51, 0xbe47, 0xe85a, 0xe854, 0xbe46,
+  0xbe49, 0xe858, 0xebd5, 0xbff3, 0xebd6, 0xebd7, 0xeec4, 0xc1dd,
+  0xf14b, 0xf14c, 0xf14d, 0xf35d, 0xf35c, 0xf4e2, 0xf4e1, 0xf65b,
+  0xf65c, 0xf65a, 0xf766, 0xc5b0, 0xa8bb, 0xadaa, 0xada9, 0xb075,
+  0xb074, 0xd440, 0xd441, 0xd3fe, 0xb073, 0xd7f5, 0xd7f6, 0xd7f2,
+  0xb3a4, 0xd7f3, 0xd7f4, 0xdc5f, 0xdc61, 0xdc5d, 0xdc60, 0xb66f,
+  0xdc5e, 0xb670, 0xdd73, 0xb955, 0xb954, 0xb953, 0xe0ac, 0xe0ad,
+  0xe473, 0xe475, 0xbbc6, 0xbbc3, 0xbbc5, 0xbbc4, 0xe474, 0xe472,
+  0xe861, 0xe85e, 0xe85f, 0xbe4d, 0xe860, 0xe85b, 0xe85c, 0xbe4a,
+  0xbe4b, 0xe85d, 0xbe4c, 0xebdb, 0xebdc, 0xebd9, 0xebda, 0xbff4,
+  0xebd8, 0xeec8, 0xeec5, 0xeec7, 0xc1e0, 0xeecb, 0xc1df, 0xeec9,
+  0xeecc, 0xeeca, 0xeec6, 0xc1de, 0xf14f, 0xf150, 0xf14e, 0xf152,
+  0xc2e5, 0xc2e6, 0xf35f, 0xc3e7, 0xf151, 0xf35e, 0xc3e6, 0xf4e5,
+  0xf4e6, 0xc4bf, 0xf4e4, 0xf4e3, 0xf65d, 0xc548, 0xf849, 0xf8c8,
+  0xf8c7, 0xc643, 0xc65d, 0xf8c9, 0xf971, 0xc66f, 0xa8bc, 0xaaf6,
+  0xb956, 0xc4c0, 0xa8bd, 0xadab, 0xb3a5, 0xb671, 0xc2e7, 0xaaf7,
+  0xd0c1, 0xd0c0, 0xd442, 0xb078, 0xb076, 0xb07a, 0xd444, 0xb079,
+  0xb077, 0xd443, 0xb3a8, 0xd7fc, 0xb3a7, 0xb3a9, 0xd842, 0xb3ab,
+  0xd7fe, 0xd840, 0xd7f7, 0xb3aa, 0xd843, 0xd7f9, 0xd7fa, 0xd7f8,
+  0xb3a6, 0xd841, 0xd7fb, 0xd7fd, 0xdc6d, 0xdc6c, 0xdc6a, 0xdc62,
+  0xdc71, 0xdc65, 0xdc6f, 0xdc76, 0xdc6e, 0xb679, 0xb675, 0xdc63,
+  0xdc69, 0xb677, 0xdc68, 0xb678, 0xb67a, 0xdc6b, 0xb672, 0xb673,
+  0xdc77, 0xdc75, 0xdc74, 0xdc66, 0xdc72, 0xb676, 0xb674, 0xdc73,
+  0xdc64, 0xdc67, 0xdc70, 0xe4ba, 0xe0b7, 0xe0b0, 0xe0c3, 0xe0cc,
+  0xe0b3, 0xb961, 0xe0c0, 0xb957, 0xb959, 0xb965, 0xe0b1, 0xb95a,
+  0xb95c, 0xb966, 0xb95b, 0xb964, 0xe0b9, 0xe0ae, 0xb962, 0xe0b8,
+  0xb95e, 0xe0ca, 0xb963, 0xe0c8, 0xe0bc, 0xe0c6, 0xb960, 0xe0af,
+  0xe0c9, 0xe0c4, 0xe0cb, 0xb958, 0xb967, 0xb95d, 0xe0b5, 0xe0bd,
+  0xe0c1, 0xe0c5, 0xb95f, 0xe0b4, 0xe0b2, 0xe0be, 0xe0bb, 0xe0ba,
+  0xe0bf, 0xe0c2, 0xe0c7, 0xe478, 0xbbc7, 0xe4a4, 0xe47a, 0xbbcc,
+  0xbbd0, 0xe4ad, 0xe4b5, 0xe4a6, 0xbbc8, 0xe4aa, 0xe0b6, 0xbbc9,
+  0xe4b1, 0xe4b6, 0xe4ae, 0xe4b0, 0xe4b9, 0xe4b2, 0xe47e, 0xe4a9,
+  0xbbd1, 0xbbcd, 0xe47c, 0xe4ab, 0xbbcb, 0xe4a5, 0xbbca, 0xe4b3,
+  0xe4a2, 0xe479, 0xbbce, 0xe4b8, 0xe47b, 0xe4af, 0xe4ac, 0xe4a7,
+  0xe477, 0xe476, 0xe4a1, 0xe4b4, 0xbbcf, 0xe4b7, 0xe47d, 0xe4a3,
+  0xbe52, 0xbe5a, 0xbe55, 0xe8a4, 0xe8a1, 0xe867, 0xbe50, 0xbe4f,
+  0xbe56, 0xe865, 0xbe54, 0xe871, 0xe863, 0xe864, 0xbe4e, 0xe8a3,
+  0xbe58, 0xe874, 0xe879, 0xe873, 0xebee, 0xe86f, 0xe877, 0xe875,
+  0xe868, 0xe862, 0xe87d, 0xbe57, 0xe87e, 0xe878, 0xe86d, 0xe86b,
+  0xe866, 0xe86e, 0xe87b, 0xe86a, 0xe87a, 0xe8a2, 0xbe53, 0xe876,
+  0xe87c, 0xe872, 0xe86c, 0xbe51, 0xe4a8, 0xe870, 0xbe59, 0xe869,
+  0xebf4, 0xbff7, 0xebf3, 0xebf0, 0xec44, 0xbffb, 0xec41, 0xebf8,
+  0xec43, 0xebe9, 0xebf6, 0xbffd, 0xebe1, 0xebdf, 0xec42, 0xec40,
+  0xebfe, 0xebed, 0xebec, 0xebe2, 0xc040, 0xebe8, 0xebf2, 0xebfd,
+  0xc043, 0xec45, 0xc1e8, 0xc045, 0xbffe, 0xebe6, 0xebef, 0xebde,
+  0xebe0, 0xbff5, 0xc042, 0xbffa, 0xebe7, 0xebf7, 0xebf1, 0xc041,
+  0xebdd, 0xc1e3, 0xebf9, 0xebfc, 0xbffc, 0xebeb, 0xc044, 0xbff9,
+  0xbff8, 0xebf5, 0xebfb, 0xbff6, 0xebe4, 0xebfa, 0xebe5, 0xebea,
+  0xeed2, 0xeed7, 0xc1e5, 0xc1e7, 0xeedd, 0xc1e1, 0xeeec, 0xeee3,
+  0xeed8, 0xeed9, 0xeee2, 0xc1ee, 0xeee1, 0xeed1, 0xeee0, 0xeed4,
+  0xeeed, 0xc1ed, 0xc1eb, 0xeed5, 0xeee8, 0xeeda, 0xeee7, 0xeee9,
+  0xeed0, 0xc1e6, 0xeeea, 0xeede, 0xc1ea, 0xeedb, 0xc1ec, 0xeee4,
+  0xc1e4, 0xeed6, 0xeee5, 0xeedf, 0xebe3, 0xeee6, 0xeed3, 0xc1e9,
+  0xeeeb, 0xc1e2, 0xeece, 0xf160, 0xf159, 0xc2e9, 0xf154, 0xf163,
+  0xf15b, 0xeedc, 0xf165, 0xf155, 0xc2e8, 0xf15f, 0xc2ea, 0xc2f2,
+  0xc2f0, 0xf161, 0xc2f1, 0xf157, 0xf158, 0xf15d, 0xf162, 0xeecd,
+  0xc2eb, 0xf16a, 0xf167, 0xf16b, 0xf15e, 0xf15a, 0xf168, 0xf36a,
+  0xf15c, 0xc2ee, 0xc2ed, 0xeecf, 0xc2ef, 0xf164, 0xf166, 0xc2ec,
+  0xf169, 0xf153, 0xf156, 0xf373, 0xf363, 0xc3eb, 0xf371, 0xf361,
+  0xc3ec, 0xf36c, 0xf368, 0xc3f1, 0xf372, 0xf362, 0xf365, 0xc3e9,
+  0xf374, 0xf36d, 0xf370, 0xc3ef, 0xc3f4, 0xc3f2, 0xf369, 0xf364,
+  0xc3ed, 0xc3ee, 0xf360, 0xc3ea, 0xc3e8, 0xc3f0, 0xf36f, 0xc3f3,
+  0xf36b, 0xf375, 0xc3f5, 0xf367, 0xf36e, 0xf4f3, 0xf542, 0xf4f5,
+  0xf4fc, 0xf366, 0xf4fa, 0xf4e9, 0xf540, 0xc4c3, 0xf4ed, 0xf4fe,
+  0xf4f4, 0xc4c2, 0xf544, 0xf4f6, 0xf4fb, 0xf4fd, 0xf4e7, 0xf541,
+  0xf4f2, 0xf4f7, 0xf4eb, 0xf4ef, 0xf543, 0xf4f9, 0xf4e8, 0xf4ec,
+  0xf4ee, 0xf4f8, 0xc4c1, 0xf4f1, 0xf4ea, 0xf4f0, 0xf661, 0xf666,
+  0xc54f, 0xf668, 0xc549, 0xf664, 0xf66a, 0xc54e, 0xc54a, 0xc54b,
+  0xf660, 0xf667, 0xc54d, 0xf665, 0xc54c, 0xf65f, 0xf663, 0xf662,
+  0xf65e, 0xf669, 0xc5b1, 0xf76d, 0xf770, 0xf76c, 0xf76e, 0xf76f,
+  0xf769, 0xf76a, 0xf767, 0xf76b, 0xf768, 0xc5b2, 0xc5b3, 0xf84b,
+  0xf84d, 0xf84c, 0xf84e, 0xc5e0, 0xf84a, 0xc5df, 0xc5e1, 0xf8cb,
+  0xf8cc, 0xc644, 0xf8ca, 0xf953, 0xf952, 0xf954, 0xc65f, 0xf955,
+  0xc65e, 0xf956, 0xf972, 0xf975, 0xf974, 0xc668, 0xf973, 0xc672,
+  0xc670, 0xc671, 0xc677, 0xf9c0, 0xf9c1, 0xf9bf, 0xf9c9, 0xaaf8,
+  0xd844, 0xdc78, 0xe8a5, 0xf376, 0xaaf9, 0xadac, 0xb07b, 0xd845,
+  0xd846, 0xb3ac, 0xb67d, 0xdc7a, 0xdc79, 0xb6a3, 0xb67c, 0xdc7b,
+  0xb67e, 0xb6a2, 0xb6a1, 0xb67b, 0xb968, 0xe0d0, 0xe0ce, 0xe0cf,
+  0xe0cd, 0xbbd2, 0xbbd5, 0xbbd7, 0xbbd6, 0xbbd3, 0xbbd4, 0xe8a7,
+  0xe8a6, 0xbe5b, 0xe8a8, 0xe8a9, 0xbe5c, 0xec4d, 0xec4b, 0xeef3,
+  0xec49, 0xec4a, 0xc046, 0xec46, 0xec4e, 0xec48, 0xec4c, 0xeeef,
+  0xeef1, 0xeef2, 0xc1f3, 0xeeee, 0xc1f2, 0xeef0, 0xc1ef, 0xc1f0,
+  0xc1f1, 0xec47, 0xc2f5, 0xf16e, 0xf16c, 0xf16d, 0xc2f3, 0xc2f6,
+  0xc2f4, 0xf377, 0xf378, 0xc3f6, 0xf545, 0xf547, 0xf546, 0xc4c4,
+  0xc550, 0xf66d, 0xf66c, 0xf66b, 0xaafa, 0xc9aa, 0xca58, 0xa6e9,
+  0xca56, 0xca59, 0xca57, 0xcbae, 0xa8c1, 0xa8c2, 0xcbb0, 0xa8bf,
+  0xcbaf, 0xcbad, 0xa8c0, 0xa8be, 0xcdd8, 0xcddb, 0xaafd, 0xcdda,
+  0xcdd9, 0xaafc, 0xaafb, 0xab40, 0xcddc, 0xaafe, 0xd0c6, 0xadae,
+  0xadaf, 0xadb0, 0xd0c7, 0xd0c3, 0xadad, 0xd0c4, 0xd0c5, 0xd0c2,
+  0xb0a4, 0xb0a1, 0xd445, 0xb0a2, 0xb0a5, 0xd446, 0xb07e, 0xb07c,
+  0xb07d, 0xb0a3, 0xb3ad, 0xd849, 0xb3b5, 0xd848, 0xd84b, 0xb3b1,
+  0xd84a, 0xb6ab, 0xb3af, 0xb3b2, 0xb3ae, 0xb3b3, 0xb3b4, 0xb3b0,
+  0xd847, 0xb6a7, 0xdc7d, 0xdca3, 0xdca2, 0xb6ac, 0xb6a8, 0xb6a9,
+  0xdc7c, 0xdc7e, 0xdca1, 0xb6a4, 0xb6a6, 0xb6aa, 0xb6a5, 0xe0d3,
+  0xe0d1, 0xe0d2, 0xb96a, 0xb96b, 0xe0d4, 0xb969, 0xbbd8, 0xbbda,
+  0xbbd9, 0xe4bb, 0xe4bc, 0xe8ab, 0xe8aa, 0xc047, 0xc048, 0xec4f,
+  0xc049, 0xeef6, 0xeef4, 0xeef5, 0xc1f4, 0xf16f, 0xc3f7, 0xc1f5,
+  0xab41, 0xb0a6, 0xd447, 0xd84c, 0xb3b6, 0xb6ad, 0xdca4, 0xdca6,
+  0xb6af, 0xb6ae, 0xb6b0, 0xb6b1, 0xdca5, 0xb96e, 0xb96f, 0xb96d,
+  0xbbdb, 0xb96c, 0xe0d5, 0xbbdc, 0xe8ac, 0xec50, 0xc04a, 0xc1f6,
+  0xf170, 0xf174, 0xc2f9, 0xf171, 0xc2fa, 0xc2f8, 0xf175, 0xc2fb,
+  0xf173, 0xf379, 0xc2f7, 0xc3f8, 0xf8cd, 0xab42, 0xb3b8, 0xb3b7,
+  0xb6b2, 0xdca8, 0xdca7, 0xb6b3, 0xe0d9, 0xb973, 0xb970, 0xe0d8,
+  0xb972, 0xe0d6, 0xb971, 0xe0d7, 0xe4bd, 0xbbdd, 0xe8af, 0xbe5d,
+  0xe8ad, 0xbe5e, 0xbe5f, 0xe8ae, 0xbe60, 0xec51, 0xc04e, 0xc04b,
+  0xc050, 0xec53, 0xc04c, 0xec52, 0xc04f, 0xc04d, 0xeef9, 0xeefb,
+  0xc1f7, 0xeefa, 0xc1f8, 0xeef8, 0xeef7, 0xf177, 0xf176, 0xc2fc,
+  0xf178, 0xf37e, 0xc3fa, 0xf37d, 0xf37a, 0xc3f9, 0xf37b, 0xf37c,
+  0xf548, 0xf549, 0xc4c5, 0xc553, 0xf66e, 0xc551, 0xc552, 0xf66f,
+  0xc5b4, 0xc5b5, 0xf771, 0xc645, 0xf8cf, 0xc647, 0xf8ce, 0xf8d0,
+  0xc646, 0xf957, 0xf9ad, 0xab43, 0xb974, 0xe4be, 0xe8b0, 0xc051,
+  0xc052, 0xab44, 0xbe61, 0xc3fb, 0xadb1, 0xc053, 0xc5e2, 0xadb2,
+  0xd84d, 0xdca9, 0xdcab, 0xdcaa, 0xe0dd, 0xe0da, 0xb975, 0xb976,
+  0xe0db, 0xe0dc, 0xe4c0, 0xe4c5, 0xbbde, 0xe4bf, 0xe4c1, 0xe4c8,
+  0xe4c3, 0xe4c7, 0xe4c4, 0xe4c2, 0xe4c6, 0xbbdf, 0xe8b3, 0xe8b1,
+  0xbe63, 0xbe62, 0xe8b2, 0xbe64, 0xec56, 0xec55, 0xc054, 0xec54,
+  0xeefc, 0xeefe, 0xef41, 0xef40, 0xc1f9, 0xeefd, 0xf1a1, 0xc2fd,
+  0xf17d, 0xf1a2, 0xc2fe, 0xf17b, 0xf17e, 0xf17c, 0xf179, 0xc340,
+  0xf17a, 0xf3a1, 0xf3a3, 0xf3a2, 0xf54a, 0xf54b, 0xf670, 0xc5b7,
+  0xc5b6, 0xf84f, 0xf850, 0xc648, 0xf8d1, 0xc669, 0xadb3, 0xb6b4,
+  0xe4ca, 0xe4c9, 0xe8b5, 0xe8b4, 0xc1fa, 0xef43, 0xef42, 0xf1a5,
+  0xf1a3, 0xf1a6, 0xf1a4, 0xc3fc, 0xf3a4, 0xf3a5, 0xf3a6, 0xf671,
+  0xf772, 0xf8d2, 0xadb4, 0xec57, 0xef44, 0xadb5, 0xbbe0, 0xec58,
+  0xc341, 0xf1a7, 0xc3fd, 0xf54c, 0xf54d, 0xc554, 0xf851, 0xadb6,
+  0xb3bb, 0xb3bc, 0xd84e, 0xb6b5, 0xb6b6, 0xdcac, 0xb6b7, 0xb97a,
+  0xb97c, 0xe0df, 0xe0e0, 0xe0de, 0xb977, 0xb978, 0xb97b, 0xb979,
+  0xe4cb, 0xbbe1, 0xbbe2, 0xe8bc, 0xbe67, 0xe8b7, 0xe8b6, 0xe8bb,
+  0xbe65, 0xc05b, 0xe8b8, 0xe8bd, 0xe8ba, 0xe8b9, 0xbe66, 0xc059,
+  0xec5a, 0xc055, 0xec5b, 0xec59, 0xc058, 0xc056, 0xc05a, 0xc057,
+  0xef45, 0xef4a, 0xef46, 0xef49, 0xc1fb, 0xedd4, 0xef48, 0xef47,
+  0xc344, 0xc342, 0xc345, 0xc343, 0xf1a8, 0xf1a9, 0xf1aa, 0xc346,
+  0xf3aa, 0xc440, 0xf3a8, 0xc441, 0xf3a7, 0xf3a9, 0xc3fe, 0xf551,
+  0xf54e, 0xf54f, 0xf550, 0xf672, 0xc556, 0xc555, 0xf774, 0xf773,
+  0xc5b8, 0xc5e3, 0xc649, 0xc660, 0xf958, 0xf9ae, 0xf9af, 0xadb7,
+  0xdcad, 0xe0e1, 0xe4cc, 0xe4cd, 0xbbe3, 0xbbe4, 0xe8be, 0xbe68,
+  0xc1fc, 0xf1ab, 0xc347, 0xf3ad, 0xc442, 0xf3ac, 0xf3ae, 0xf3ab,
+  0xf675, 0xf552, 0xf553, 0xc4c6, 0xf674, 0xf673, 0xf775, 0xf9b0,
+  0xadb8, 0xadb9, 0xb0a7, 0xd448, 0xd84f, 0xb6b8, 0xb6bb, 0xb6b9,
+  0xdcae, 0xb6bd, 0xb6ba, 0xb6bc, 0xb97e, 0xe0e2, 0xe0e3, 0xe8c0,
+  0xb97d, 0xb9a1, 0xb9a2, 0xe4cf, 0xe4ce, 0xbbe5, 0xbbe6, 0xe4d0,
+  0xe8bf, 0xbbe8, 0xbe69, 0xbbe7, 0xc05c, 0xe8c1, 0xbe6b, 0xbe6a,
+  0xe8c2, 0xe8c5, 0xe8c3, 0xe8c4, 0xbe6c, 0xc061, 0xc05f, 0xc05e,
+  0xec5d, 0xc060, 0xec5c, 0xef4b, 0xec5e, 0xc05d, 0xec5f, 0xef4e,
+  0xef4c, 0xef4d, 0xef52, 0xc34b, 0xef51, 0xef54, 0xef53, 0xef50,
+  0xef4f, 0xc1fd, 0xf1ae, 0xf1ad, 0xc34a, 0xc348, 0xc349, 0xf1ac,
+  0xf3b1, 0xc443, 0xf3b0, 0xf3af, 0xc444, 0xf558, 0xf557, 0xf555,
+  0xf554, 0xc4c8, 0xc4c7, 0xf559, 0xf776, 0xc5b9, 0xf677, 0xc557,
+  0xf676, 0xf556, 0xf777, 0xc5e4, 0xc661, 0xf959, 0xf9b1, 0xadba,
+  0xd850, 0xef55, 0xadbb, 0xe4d2, 0xe4d1, 0xec60, 0xef57, 0xef56,
+  0xc34c, 0xf3b2, 0xf3b3, 0xc4c9, 0xf9b2, 0xb0a8, 0xb6bf, 0xb6be,
+  0xe0e4, 0xe0e6, 0xb9a4, 0xe0e5, 0xb9a3, 0xb9a5, 0xe0e7, 0xe4d4,
+  0xe4d6, 0xe4d5, 0xe4d8, 0xbbe9, 0xe4d7, 0xe4d3, 0xe4d9, 0xe8cc,
+  0xe8cf, 0xe8d1, 0xe8c7, 0xe8cb, 0xe8c8, 0xbe6e, 0xbe71, 0xbe73,
+  0xe8c9, 0xe8ca, 0xbe72, 0xe8cd, 0xe8d0, 0xe8ce, 0xbe74, 0xbe70,
+  0xe8c6, 0xbe6d, 0xbe6f, 0xc063, 0xec66, 0xec64, 0xec63, 0xec69,
+  0xec68, 0xec67, 0xec62, 0xc062, 0xec61, 0xec65, 0xc064, 0xef5a,
+  0xef5e, 0xef5b, 0xef5d, 0xef5c, 0xef59, 0xef5f, 0xef62, 0xef60,
+  0xef61, 0xc240, 0xc1fe, 0xef58, 0xef63, 0xf1b3, 0xf1b6, 0xf1b8,
+  0xf1b7, 0xf1b1, 0xf1b5, 0xf1b0, 0xf1b2, 0xc34d, 0xf1af, 0xf1b4,
+  0xf3c0, 0xf3b5, 0xc445, 0xc446, 0xf3b4, 0xf3b9, 0xf3bf, 0xf3b7,
+  0xf3be, 0xf3bb, 0xf3ba, 0xf3bd, 0xf3b8, 0xf3b6, 0xf3bc, 0xf560,
+  0xf55e, 0xc4ca, 0xf55d, 0xf563, 0xf561, 0xc4cb, 0xf55c, 0xf55a,
+  0xf55b, 0xc4cd, 0xf55f, 0xc4cc, 0xf562, 0xf678, 0xf67e, 0xf679,
+  0xc55b, 0xf6a1, 0xc55a, 0xf67d, 0xf67c, 0xc559, 0xf67b, 0xc558,
+  0xf67a, 0xf77d, 0xf7a1, 0xf77e, 0xf77b, 0xc5bb, 0xf778, 0xf77c,
+  0xf7a3, 0xf7a2, 0xf779, 0xf77a, 0xc5ba, 0xf852, 0xc5e7, 0xf853,
+  0xc5e5, 0xc5e6, 0xf8d3, 0xc64a, 0xf976, 0xc66a, 0xf9b3, 0xc66b,
+  0xf9b4, 0xf9b5, 0xf9c3, 0xf9c2, 0xc67a, 0xf9cd, 0xb0a9, 0xe0e9,
+  0xe0e8, 0xbbea, 0xbbeb, 0xe4da, 0xe8d2, 0xec6c, 0xbe75, 0xc065,
+  0xec6a, 0xec6d, 0xc066, 0xef64, 0xec6b, 0xf1b9, 0xc34e, 0xf3c1,
+  0xf566, 0xf564, 0xf565, 0xf6a2, 0xc55c, 0xf7a4, 0xc5ea, 0xc5bc,
+  0xc5e8, 0xc5e9, 0xf8d4, 0xc662, 0xb0aa, 0xf1ba, 0xd449, 0xb9a6,
+  0xe4db, 0xbbec, 0xe4dc, 0xe8d4, 0xe8d3, 0xc068, 0xbe76, 0xbe77,
+  0xe8d7, 0xe8d6, 0xe8d5, 0xec6e, 0xec71, 0xec70, 0xec6f, 0xc067,
+  0xef68, 0xef66, 0xef65, 0xef67, 0xc34f, 0xf1bc, 0xf1bd, 0xc350,
+  0xf1bb, 0xf3c3, 0xf3c2, 0xf3c5, 0xc447, 0xf3c4, 0xf567, 0xf569,
+  0xf568, 0xf6a3, 0xf6a6, 0xf6a4, 0xf6a5, 0xf7a5, 0xc5bd, 0xf854,
+  0xf855, 0xf856, 0xc64b, 0xc663, 0xf9b6, 0xb0ab, 0xbe78, 0xc069,
+  0xf1be, 0xf7a6, 0xf9c4, 0xd44a, 0xc67b, 0xb0ac, 0xec72, 0xf1bf,
+  0xf3c6, 0xf6a7, 0xf7a7, 0xb0ad, 0xe4dd, 0xe4de, 0xbbed, 0xbbee,
+  0xe8d9, 0xbe7a, 0xbe79, 0xe8d8, 0xef69, 0xf1c0, 0xf1c2, 0xf1c1,
+  0xc353, 0xc352, 0xc351, 0xc55e, 0xf6a8, 0xc55d, 0xf7a9, 0xf7a8,
+  0xc64c, 0xf8d5, 0xb3bd, 0xe0ea, 0xe4e1, 0xe4df, 0xe4e0, 0xe8e2,
+  0xe8dd, 0xe8da, 0xe8e1, 0xe8e3, 0xbe7c, 0xe8e0, 0xe8dc, 0xe8db,
+  0xe8df, 0xe8de, 0xbe7b, 0xec7d, 0xec78, 0xec76, 0xeca1, 0xec77,
+  0xec73, 0xec79, 0xec74, 0xef72, 0xec75, 0xeca2, 0xec7c, 0xc06a,
+  0xec7b, 0xec7a, 0xec7e, 0xef6a, 0xef6d, 0xef6c, 0xef74, 0xef6f,
+  0xef73, 0xef71, 0xef70, 0xef6e, 0xef6b, 0xc243, 0xc242, 0xc244,
+  0xc241, 0xef75, 0xf1c8, 0xf1cb, 0xf1c9, 0xf1cd, 0xf1ce, 0xf1c6,
+  0xc358, 0xf1c7, 0xf1c5, 0xf1cc, 0xf1c4, 0xf1c3, 0xc357, 0xc355,
+  0xc354, 0xf1ca, 0xf3cf, 0xf3d5, 0xc44a, 0xf3d0, 0xf3d3, 0xf3d7,
+  0xc44b, 0xf3d2, 0xf3ca, 0xf3c9, 0xf3d6, 0xf3cd, 0xf3cb, 0xf3d4,
+  0xf3cc, 0xc449, 0xc448, 0xf3c7, 0xf3c8, 0xf3d1, 0xf3ce, 0xf56c,
+  0xf56f, 0xc356, 0xf56d, 0xf573, 0xf571, 0xf56b, 0xf576, 0xf56a,
+  0xc4cf, 0xf572, 0xf56e, 0xc4ce, 0xf575, 0xf574, 0xf6ab, 0xf6aa,
+  0xf6b1, 0xf6ad, 0xf6b0, 0xc560, 0xf6ae, 0xf6af, 0xf6a9, 0xf6ac,
+  0xc55f, 0xc5bf, 0xf7b4, 0xf7af, 0xf7b3, 0xf7b6, 0xf7b2, 0xf7ae,
+  0xc5c1, 0xf7b1, 0xf7b5, 0xc5c0, 0xf7ac, 0xf570, 0xf7b0, 0xf7ad,
+  0xf7aa, 0xf7ab, 0xc5be, 0xf85a, 0xf85c, 0xf85f, 0xf85b, 0xf860,
+  0xf859, 0xf857, 0xc5eb, 0xf85d, 0xc5ed, 0xc5ec, 0xf858, 0xf85e,
+  0xf8da, 0xc64d, 0xf8db, 0xf8d9, 0xf8d6, 0xf8d8, 0xf8d7, 0xf95a,
+  0xf95c, 0xf95b, 0xf979, 0xf978, 0xf977, 0xf97a, 0xc673, 0xc674,
+  0xf9ca, 0xf9ce, 0xb3be, 0xdcaf, 0xe0ed, 0xb9a7, 0xe0eb, 0xe0ec,
+  0xe4e2, 0xe4e3, 0xbbf1, 0xbbef, 0xe4e4, 0xbbf0, 0xe8e8, 0xe8eb,
+  0xe8e5, 0xe8ec, 0xe8e4, 0xe8e6, 0xe8e7, 0xe8ea, 0xbea1, 0xe8ef,
+  0xe8ee, 0xbe7d, 0xe8e9, 0xe8ed, 0xbe7e, 0xecac, 0xc06f, 0xeca7,
+  0xc06b, 0xeca4, 0xecaa, 0xecad, 0xc070, 0xeca9, 0xeca6, 0xecae,
+  0xeca5, 0xecab, 0xc06c, 0xeca3, 0xc06d, 0xc06e, 0xeca8, 0xefa9,
+  0xef7a, 0xef7b, 0xef7e, 0xef7c, 0xef76, 0xef79, 0xefa5, 0xef7d,
+  0xc245, 0xefa7, 0xefa4, 0xc246, 0xefa6, 0xef77, 0xefa2, 0xefa3,
+  0xefa1, 0xf1d2, 0xf1d4, 0xf1d7, 0xf1d1, 0xc359, 0xf1d9, 0xf1d0,
+  0xf1da, 0xf1d6, 0xf1d8, 0xf1dc, 0xf1d5, 0xf1dd, 0xf1d3, 0xf1cf,
+  0xc35a, 0xf1db, 0xc35b, 0xc44d, 0xef78, 0xf3f1, 0xf3e8, 0xc44f,
+  0xf3e4, 0xc450, 0xf3ed, 0xf3e7, 0xf3dd, 0xc44e, 0xf3ea, 0xf3e5,
+  0xf3e6, 0xf3d8, 0xf3df, 0xf3ee, 0xf3eb, 0xf3e3, 0xf3ef, 0xf3de,
+  0xf3d9, 0xf3ec, 0xf3db, 0xf3e9, 0xf3e0, 0xf3f0, 0xf3dc, 0xc44c,
+  0xf3da, 0xf3e1, 0xf3e2, 0xf57d, 0xf57b, 0xf5a2, 0xf5ae, 0xf5a5,
+  0xf57c, 0xf578, 0xf5a7, 0xf57e, 0xf5a3, 0xf57a, 0xf5aa, 0xf577,
+  0xf5a1, 0xf5a6, 0xf5a8, 0xf5ab, 0xf579, 0xf5af, 0xf5b0, 0xf5a9,
+  0xf5ad, 0xf5a4, 0xf6c1, 0xf6c4, 0xc561, 0xf6c3, 0xf6c8, 0xf6c6,
+  0xc562, 0xf6bd, 0xf6b3, 0xf6b2, 0xc564, 0xf6bf, 0xf6c0, 0xf6bc,
+  0xf6b4, 0xf6b9, 0xf5ac, 0xf6b5, 0xc563, 0xf6bb, 0xf6ba, 0xf6b6,
+  0xf6c2, 0xf6b7, 0xf7bb, 0xf6c5, 0xf6c7, 0xf6be, 0xf6b8, 0xf7bc,
+  0xf7be, 0xf7b8, 0xc5c2, 0xf7c5, 0xf7c3, 0xc5c3, 0xf7c2, 0xf7c1,
+  0xf7ba, 0xf7b7, 0xf7bd, 0xf7c6, 0xf7b9, 0xf7bf, 0xf869, 0xf86e,
+  0xf864, 0xf867, 0xc5ee, 0xf86b, 0xf872, 0xf7c0, 0xf865, 0xf86f,
+  0xf873, 0xf86a, 0xf863, 0xf86d, 0xf86c, 0xf871, 0xf870, 0xf7c4,
+  0xf868, 0xf862, 0xf866, 0xc64e, 0xc64f, 0xf861, 0xf8e6, 0xf8dd,
+  0xf8e5, 0xf8e2, 0xf8e3, 0xf8dc, 0xf8df, 0xf8e7, 0xf8e1, 0xf8e0,
+  0xf8de, 0xf8e4, 0xf95d, 0xf95e, 0xf960, 0xf95f, 0xf962, 0xf961,
+  0xf97c, 0xf97b, 0xf9b7, 0xf9b8, 0xf9c5, 0xc678, 0xc67c, 0xf9cf,
+  0xc67d, 0xb3bf, 0xc4d0, 0xf6c9, 0xc650, 0xc651, 0xb3c0, 0xe0ee,
+  0xb9a8, 0xe8f0, 0xecb0, 0xecb1, 0xecaf, 0xefab, 0xefaa, 0xc247,
+  0xf1df, 0xefac, 0xf1de, 0xf3f3, 0xc451, 0xc453, 0xf3f2, 0xc452,
+  0xf5b1, 0xf5b3, 0xf5b2, 0xf6ca, 0xc565, 0xc5ef, 0xf8e8, 0xf963,
+  0xf9d2, 0xb3c1, 0xe4e5, 0xbea2, 0xecb3, 0xecb2, 0xefad, 0xc454,
+  0xc4d1, 0xf7c7, 0xf9cb, 0xb3c2, 0xbbf2, 0xbea3, 0xf3f4, 0xf874,
+  0xb6c0, 0xefae, 0xc664, 0xb6c1, 0xbea4, 0xc248, 0xf875, 0xb6c2,
+  0xe8f1, 0xc072, 0xecb4, 0xecb5, 0xc071, 0xefaf, 0xc24c, 0xc24a,
+  0xc24b, 0xc249, 0xf1e0, 0xc35c, 0xf5b5, 0xf5b4, 0xf5b7, 0xf5b6,
+  0xc4d2, 0xf6cb, 0xf6cd, 0xf6cc, 0xc566, 0xf7c8, 0xf876, 0xf877,
+  0xc5f0, 0xf964, 0xf97d, 0xc675, 0xdcb0, 0xecb6, 0xefb0, 0xf3f5,
+  0xe0ef, 0xefb1, 0xf1e2, 0xf1e1, 0xf878, 0xc652, 0xf965, 0xf97e,
+  0xb9a9, 0xe8f2, 0xe8f3, 0xecb7, 0xb9aa, 0xc35d, 0xf1e3, 0xf6cf,
+  0xc567, 0xf6d0, 0xf6ce, 0xf879, 0xf8e9, 0xb9ab, 0xefb4, 0xefb3,
+  0xefb2, 0xf1e4, 0xf1e8, 0xf1e7, 0xf1e6, 0xf1e5, 0xc35e, 0xf3f6,
+  0xf5b9, 0xc4d3, 0xf5b8, 0xf6d1, 0xf7cb, 0xf7ca, 0xc5c4, 0xf7c9,
+  0xf87c, 0xf87b, 0xf87a, 0xbbf3, 0xecb8, 0xc24d, 0xf3f7, 0xf3f8,
+  0xf7cc, 0xf87d, 0xf8ea, 0xf966, 0xf9b9, 0xf9d4, 0xbbf4, 0xc24e,
+  0xf1e9, 0xf3f9, 0xf6d2, 0xf87e, 0xbea6, 0xefb5, 0xf1ea, 0xf3fa,
+  0xf3fb, 0xf3fc, 0xf5be, 0xf5ba, 0xc568, 0xf5bd, 0xf5bc, 0xc4d4,
+  0xf5bb, 0xc4d6, 0xc4d5, 0xf6d4, 0xf6d3, 0xc569, 0xc56a, 0xc5c6,
+  0xf7cd, 0xc5c5, 0xf8a3, 0xf8a4, 0xf8a2, 0xf8a1, 0xc654, 0xf8eb,
+  0xf8ec, 0xf8ed, 0xc653, 0xf967, 0xf96a, 0xf969, 0xf968, 0xf9d3,
+  0xc073, 0xc365, 0xf5bf, 0xf6d5, 0xc5c7, 0xf7ce, 0xf9d5, 0xc074,
+  0xefb6, 0xf7cf, 0xf9a1, 0xc94a, 0xddfc, 0xa14a, 0xa157, 0xa159,
+  0xa15b, 0xa15f, 0xa160, 0xa163, 0xa164, 0xa167, 0xa168, 0xa16b,
+  0xa16c, 0xa16f, 0xa170, 0xa173, 0xa174, 0xa177, 0xa178, 0xa17b,
+  0xa17c, 0xa1c6, 0xa1c7, 0xa1ca, 0xa1cb, 0xa1c8, 0xa1c9, 0xa15c,
+  0xa14d, 0xa14f, 0xa151, 0xa152, 0xa153, 0xa154, 0xa17d, 0xa17e,
+  0xa1a1, 0xa1a2, 0xa1a3, 0xa1a4, 0xa1cc, 0xa1cd, 0xa1ce, 0xa1de,
+  0xa1df, 0xa1e0, 0xa1e1, 0xa1e2, 0xa24c, 0xa24d, 0xa24e, 0xa149,
+  0xa1ad, 0xa243, 0xa248, 0xa1ae, 0xa15d, 0xa15e, 0xa1af, 0xa1cf,
+  0xa141, 0xa1d0, 0xa144, 0xa241, 0xa2af, 0xa2b0, 0xa2b1, 0xa2b2,
+  0xa2b3, 0xa2b4, 0xa2b5, 0xa2b6, 0xa2b7, 0xa2b8, 0xa147, 0xa146,
+  0xa1d5, 0xa1d7, 0xa1d6, 0xa148, 0xa249, 0xa2cf, 0xa2d0, 0xa2d1,
+  0xa2d2, 0xa2d3, 0xa2d4, 0xa2d5, 0xa2d6, 0xa2d7, 0xa2d8, 0xa2d9,
+  0xa2da, 0xa2db, 0xa2dc, 0xa2dd, 0xa2de, 0xa2df, 0xa2e0, 0xa2e1,
+  0xa2e2, 0xa2e3, 0xa2e4, 0xa2e5, 0xa2e6, 0xa2e7, 0xa2e8, 0xa242,
+  0xa1c4, 0xa2e9, 0xa2ea, 0xa2eb, 0xa2ec, 0xa2ed, 0xa2ee, 0xa2ef,
+  0xa2f0, 0xa2f1, 0xa2f2, 0xa2f3, 0xa2f4, 0xa2f5, 0xa2f6, 0xa2f7,
+  0xa2f8, 0xa2f9, 0xa2fa, 0xa2fb, 0xa2fc, 0xa2fd, 0xa2fe, 0xa340,
+  0xa341, 0xa342, 0xa343, 0xa161, 0xa155, 0xa162, 0xa14e,
+};
+
+static const Summary16 big5_uni2indx_page00[16] = {
+  /* 0x0000 */
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x00ac }, {    4, 0x0083 },
+  {    7, 0x0000 }, {    7, 0x0080 }, {    8, 0x0000 }, {    8, 0x0080 },
+};
+static const Summary16 big5_uni2indx_page02[38] = {
+  /* 0x0200 */
+  {    9, 0x0000 }, {    9, 0x0000 }, {    9, 0x0000 }, {    9, 0x0000 },
+  {    9, 0x0000 }, {    9, 0x0000 }, {    9, 0x0000 }, {    9, 0x0000 },
+  {    9, 0x0000 }, {    9, 0x0000 }, {    9, 0x0000 }, {    9, 0x0000 },
+  {    9, 0x0e80 }, {   13, 0x0200 }, {   14, 0x0000 }, {   14, 0x0000 },
+  /* 0x0300 */
+  {   14, 0x0000 }, {   14, 0x0000 }, {   14, 0x0000 }, {   14, 0x0000 },
+  {   14, 0x0000 }, {   14, 0x0000 }, {   14, 0x0000 }, {   14, 0x0000 },
+  {   14, 0x0000 }, {   14, 0xfffe }, {   29, 0x03fb }, {   38, 0xfffe },
+  {   53, 0x03fb }, {   62, 0x0000 }, {   62, 0x0000 }, {   62, 0x0000 },
+  /* 0x0400 */
+  {   62, 0x0002 }, {   63, 0x1ff0 }, {   72, 0xfff8 }, {   85, 0xffff },
+  {  101, 0xffff }, {  117, 0x0002 },
+};
+static const Summary16 big5_uni2indx_page20[44] = {
+  /* 0x2000 */
+  {  118, 0x0000 }, {  118, 0x3318 }, {  124, 0x0064 }, {  127, 0x4824 },
+  {  131, 0x0000 }, {  131, 0x0000 }, {  131, 0x0000 }, {  131, 0x0000 },
+  {  131, 0x0000 }, {  131, 0x0000 }, {  131, 0x0000 }, {  131, 0x0000 },
+  {  131, 0x0000 }, {  131, 0x0000 }, {  131, 0x0000 }, {  131, 0x0000 },
+  /* 0x2100 */
+  {  131, 0x0228 }, {  134, 0x0000 }, {  134, 0x0000 }, {  134, 0x0000 },
+  {  134, 0x0000 }, {  134, 0x0000 }, {  134, 0x03ff }, {  144, 0x0000 },
+  {  144, 0x0000 }, {  144, 0x03cf }, {  152, 0x0000 }, {  152, 0x0000 },
+  {  152, 0x0000 }, {  152, 0x0000 }, {  152, 0x0000 }, {  152, 0x0000 },
+  /* 0x2200 */
+  {  152, 0x0000 }, {  152, 0xc400 }, {  155, 0x4e29 }, {  162, 0x1030 },
+  {  165, 0x0000 }, {  165, 0x0004 }, {  166, 0x00c3 }, {  170, 0x0000 },
+  {  170, 0x0000 }, {  170, 0x0000 }, {  170, 0x0020 }, {  171, 0x8000 },
+};
+static const Summary16 big5_uni2indx_page24[37] = {
+  /* 0x2400 */
+  {  172, 0x0000 }, {  172, 0x0000 }, {  172, 0x0000 }, {  172, 0x0000 },
+  {  172, 0x0000 }, {  172, 0x0000 }, {  172, 0x03ff }, {  182, 0x3ff0 },
+  {  192, 0x0000 }, {  192, 0x0000 }, {  192, 0x0000 }, {  192, 0x0000 },
+  {  192, 0x0000 }, {  192, 0x0000 }, {  192, 0x0000 }, {  192, 0x0000 },
+  /* 0x2500 */
+  {  192, 0x1005 }, {  195, 0x1111 }, {  199, 0x1010 }, {  201, 0x1010 },
+  {  203, 0x0000 }, {  203, 0x4001 }, {  205, 0xe402 }, {  210, 0x000f },
+  {  214, 0xfffe }, {  229, 0x0030 }, {  231, 0x0003 }, {  233, 0x300c },
+  {  237, 0xc8c0 }, {  242, 0x0000 }, {  242, 0x003c }, {  246, 0x0000 },
+  /* 0x2600 */
+  {  246, 0x0260 }, {  249, 0x0000 }, {  249, 0x0000 }, {  249, 0x0000 },
+  {  249, 0x0007 },
+};
+static const Summary16 big5_uni2indx_page30[62] = {
+  /* 0x3000 */
+  {  252, 0xff2f }, {  265, 0x6037 }, {  272, 0x03fe }, {  281, 0x0000 },
+  {  281, 0xfffe }, {  296, 0xffff }, {  312, 0xffff }, {  328, 0xffff },
+  {  344, 0xffff }, {  360, 0x600f }, {  366, 0xfffe }, {  381, 0xffff },
+  {  397, 0xffff }, {  413, 0xffff }, {  429, 0xffff }, {  445, 0x407f },
+  /* 0x3100 */
+  {  453, 0xffe0 }, {  464, 0xffff }, {  480, 0x03ff }, {  490, 0x0000 },
+  {  490, 0x0000 }, {  490, 0x0000 }, {  490, 0x0000 }, {  490, 0x0000 },
+  {  490, 0x0000 }, {  490, 0x0000 }, {  490, 0x0000 }, {  490, 0x0000 },
+  {  490, 0x0000 }, {  490, 0x0000 }, {  490, 0x0000 }, {  490, 0x0000 },
+  /* 0x3200 */
+  {  490, 0x0000 }, {  490, 0x0000 }, {  490, 0x0000 }, {  490, 0x0000 },
+  {  490, 0x0000 }, {  490, 0x0000 }, {  490, 0x0000 }, {  490, 0x0000 },
+  {  490, 0x0000 }, {  490, 0x0000 }, {  490, 0x0008 }, {  491, 0x0000 },
+  {  491, 0x0000 }, {  491, 0x0000 }, {  491, 0x0000 }, {  491, 0x0000 },
+  /* 0x3300 */
+  {  491, 0x0000 }, {  491, 0x0000 }, {  491, 0x0000 }, {  491, 0x0000 },
+  {  491, 0x0000 }, {  491, 0x0000 }, {  491, 0x0000 }, {  491, 0x0000 },
+  {  491, 0xc000 }, {  493, 0x7000 }, {  496, 0x0002 }, {  497, 0x0000 },
+  {  497, 0x4010 }, {  499, 0x0026 },
+};
+static const Summary16 big5_uni2indx_page4e[1307] = {
+  /* 0x4e00 */
+  {  502, 0xff8b }, {  514, 0xc373 }, {  523, 0x6840 }, {  527, 0x1b0f },
+  {  535, 0xe9ac }, {  544, 0xf34c }, {  553, 0x0200 }, {  554, 0xc008 },
+  {  557, 0x795c }, {  566, 0xca3e }, {  575, 0x7976 }, {  585, 0x0648 },
+  {  589, 0x2fdf }, {  601, 0xf7f0 }, {  612, 0x033a }, {  618, 0xa8ff },
+  /* 0x4f00 */
+  {  629, 0xef37 }, {  641, 0x233f }, {  650, 0xb004 }, {  654, 0xfd59 },
+  {  665, 0xf3ca }, {  675, 0xffff }, {  691, 0xde9f }, {  703, 0xfff9 },
+  {  717, 0xabff }, {  730, 0x7df7 }, {  743, 0xc000 }, {  745, 0x8eec },
+  {  754, 0xeebf }, {  767, 0xffdb }, {  781, 0xd003 }, {  786, 0x45fa },
+  /* 0x5000 */
+  {  795, 0xfae1 }, {  805, 0xdffe }, {  819, 0xbfef }, {  833, 0x10ab },
+  {  839, 0xffeb }, {  853, 0xfcaa }, {  863, 0xef3f }, {  876, 0x24fd },
+  {  885, 0x78ad }, {  894, 0x7f76 }, {  906, 0xf00c }, {  912, 0xedff },
+  {  926, 0xcff6 }, {  938, 0x2cfa }, {  947, 0xf7f9 }, {  960, 0xeb6b },
+  /* 0x5100 */
+  {  971, 0x1ffd }, {  983, 0x95bf }, {  994, 0x6677 }, { 1004, 0xbfbf },
+  { 1018, 0x3bfb }, { 1030, 0xfeb4 }, { 1041, 0x7bae }, { 1052, 0x11e2 },
+  { 1058, 0xa681 }, { 1064, 0x41be }, { 1072, 0x1435 }, { 1078, 0x72c3 },
+  { 1086, 0x7d70 }, { 1095, 0x7191 }, { 1102, 0x0003 }, { 1104, 0x276b },
+  /* 0x5200 */
+  { 1113, 0x57cb }, { 1123, 0x70cf }, { 1132, 0x4732 }, { 1139, 0x0def },
+  { 1149, 0x7eda }, { 1160, 0xfc74 }, { 1170, 0xfe06 }, { 1179, 0xbdb4 },
+  { 1189, 0x3f9f }, { 1201, 0x8bca }, { 1209, 0x7e49 }, { 1218, 0x5800 },
+  { 1221, 0x228f }, { 1228, 0xebec }, { 1239, 0x8a5c }, { 1246, 0xddbb },
+  /* 0x5300 */
+  { 1258, 0xef60 }, { 1267, 0xb6e7 }, { 1278, 0xa40f }, { 1285, 0xf293 },
+  { 1294, 0x37bb }, { 1305, 0x549e }, { 1313, 0xd04b }, { 1320, 0x9baf },
+  { 1331, 0xc414 }, { 1336, 0xf7d4 }, { 1347, 0x30b0 }, { 1352, 0x0a14 },
+  { 1356, 0x2f08 }, { 1362, 0x88d0 }, { 1367, 0xff7e }, { 1381, 0x192f },
+  /* 0x5400 */
+  { 1389, 0xffda }, { 1402, 0xfb07 }, { 1412, 0x7ff1 }, { 1424, 0x7beb },
+  { 1436, 0xc5ef }, { 1447, 0x0010 }, { 1448, 0x99ff }, { 1460, 0xfdff },
+  { 1475, 0x79d7 }, { 1486, 0x0567 }, { 1493, 0xffe7 }, { 1507, 0xfdcb },
+  { 1519, 0xc3ff }, { 1531, 0x4040 }, { 1533, 0x6ff7 }, { 1546, 0xbd8e },
+  /* 0x5500 */
+  { 1556, 0xdffa }, { 1569, 0x0497 }, { 1575, 0xf4c0 }, { 1582, 0x5bff },
+  { 1595, 0xed7b }, { 1607, 0xd0e7 }, { 1616, 0x047e }, { 1623, 0xf8e0 },
+  { 1631, 0xff9f }, { 1645, 0xb73e }, { 1656, 0x7dfe }, { 1669, 0x882e },
+  { 1675, 0xfffd }, { 1690, 0xbe7f }, { 1703, 0x83fe }, { 1713, 0xf6c4 },
+  /* 0x5600 */
+  { 1722, 0xf357 }, { 1733, 0xb8fd }, { 1744, 0xd680 }, { 1750, 0xef7d },
+  { 1763, 0x5767 }, { 1773, 0x4788 }, { 1779, 0xff7d }, { 1793, 0xc3df },
+  { 1804, 0xf0ff }, { 1816, 0x37a9 }, { 1825, 0x7de0 }, { 1834, 0x70fc },
+  { 1843, 0x3f6f }, { 1855, 0xec9a }, { 1864, 0x4cb3 }, { 1872, 0x8681 },
+  /* 0x5700 */
+  { 1877, 0x3f9e }, { 1888, 0xdd5c }, { 1898, 0xf70d }, { 1908, 0x4819 },
+  { 1913, 0xfea3 }, { 1924, 0x0007 }, { 1927, 0xaf56 }, { 1937, 0x38ff },
+  { 1948, 0x980d }, { 1954, 0xefb8 }, { 1965, 0x403d }, { 1971, 0xb760 },
+  { 1979, 0xd8ce }, { 1988, 0x9035 }, { 1994, 0x72bf }, { 2005, 0x3fff },
+  /* 0x5800 */
+  { 2019, 0x7ff7 }, { 2033, 0x7a11 }, { 2040, 0xf7bb }, { 2053, 0xabff },
+  { 2066, 0xff00 }, { 2074, 0x6fbe }, { 2086, 0xa93c }, { 2094, 0xfe72 },
+  { 2105, 0xcfef }, { 2118, 0xf11b }, { 2127, 0xdb6b }, { 2138, 0xf40a },
+  { 2145, 0xc3e6 }, { 2154, 0xef7e }, { 2167, 0x9b9c }, { 2176, 0xf610 },
+  /* 0x5900 */
+  { 2183, 0xf048 }, { 2189, 0x16f4 }, { 2197, 0xfeb5 }, { 2209, 0x5182 },
+  { 2214, 0xc7b1 }, { 2223, 0x15bb }, { 2232, 0x6e87 }, { 2241, 0xfbdf },
+  { 2255, 0xe43f }, { 2265, 0x63cd }, { 2274, 0xc1ff }, { 2285, 0x7e7e },
+  { 2297, 0xfdeb }, { 2310, 0x7d5f }, { 2322, 0x777b }, { 2334, 0xfcfe },
+  /* 0x5a00 */
+  { 2347, 0x960b }, { 2354, 0xdbea }, { 2365, 0x6229 }, { 2371, 0x53e8 },
+  { 2379, 0x37df }, { 2391, 0xfdef }, { 2405, 0x36f5 }, { 2415, 0xbd81 },
+  { 2423, 0xdc18 }, { 2430, 0xfcbd }, { 2442, 0xd2e4 }, { 2450, 0xffff },
+  { 2466, 0x3fd7 }, { 2478, 0xffe0 }, { 2489, 0x7f6f }, { 2502, 0xabf8 },
+  /* 0x5b00 */
+  { 2512, 0x9bae }, { 2522, 0x6ed9 }, { 2532, 0xf5fb }, { 2545, 0xf115 },
+  { 2553, 0x79a9 }, { 2562, 0xbdfb }, { 2575, 0x5a3c }, { 2583, 0xadaf },
+  { 2594, 0xdbba }, { 2605, 0x1fac }, { 2614, 0x71fc }, { 2624, 0x8379 },
+  { 2632, 0x7cf7 }, { 2644, 0xc35f }, { 2654, 0xdfff }, { 2669, 0x0567 },
+  /* 0x5c00 */
+  { 2676, 0xff9a }, { 2688, 0x8467 }, { 2695, 0x1534 }, { 2701, 0xdf8b },
+  { 2712, 0xf9f3 }, { 2724, 0x3373 }, { 2733, 0xf7bd }, { 2746, 0x5e1a },
+  { 2754, 0xbf40 }, { 2762, 0xa03f }, { 2770, 0xffff }, { 2786, 0x01eb },
+  { 2793, 0xdfc0 }, { 2802, 0xcfdd }, { 2814, 0x7500 }, { 2819, 0xabd3 },
+  /* 0x5d00 */
+  { 2829, 0xf8c3 }, { 2838, 0xeed6 }, { 2849, 0x43fd }, { 2859, 0xb7ff },
+  { 2873, 0x5eaf }, { 2884, 0x4227 }, { 2890, 0x9bac }, { 2899, 0xf686 },
+  { 2908, 0x27d7 }, { 2918, 0xf6bc }, { 2929, 0xf787 }, { 2940, 0x35b7 },
+  { 2950, 0xaacd }, { 2959, 0xe176 }, { 2968, 0x49e7 }, { 2977, 0xe29f },
+  /* 0x5e00 */
+  { 2987, 0x545c }, { 2994, 0xaff2 }, { 3005, 0x2b3f }, { 3015, 0x61d8 },
+  { 3022, 0xfc3b }, { 3033, 0xbbb8 }, { 3043, 0xffcf }, { 3057, 0x7b7d },
+  { 3069, 0xbf95 }, { 3080, 0x1ce0 }, { 3086, 0x7dfd }, { 3099, 0x43ff },
+  { 3110, 0x5ff6 }, { 3122, 0xfffe }, { 3137, 0xd3ef }, { 3149, 0xc4ce },
+  /* 0x5f00 */
+  { 3157, 0x8db6 }, { 3166, 0xadbc }, { 3176, 0x63dc }, { 3185, 0x11eb },
+  { 3193, 0xdf59 }, { 3204, 0x23d0 }, { 3210, 0xbeb4 }, { 3220, 0xf3db },
+  { 3232, 0x1fe7 }, { 3243, 0xdbc7 }, { 3254, 0xff63 }, { 3266, 0xfae4 },
+  { 3276, 0xb22b }, { 3284, 0x63f7 }, { 3295, 0xed3b }, { 3306, 0xadba },
+  /* 0x6000 */
+  { 3316, 0xfe01 }, { 3324, 0x7eff }, { 3338, 0xfff7 }, { 3353, 0x02bc },
+  { 3359, 0x32ff }, { 3370, 0xef39 }, { 3381, 0xfffc }, { 3395, 0x8005 },
+  { 3398, 0x77fb }, { 3411, 0xbcf5 }, { 3422, 0x010d }, { 3426, 0xfff7 },
+  { 3441, 0xfffb }, { 3456, 0xbf3a }, { 3467, 0x0057 }, { 3472, 0xdfff },
+  /* 0x6100 */
+  { 3487, 0xef7b }, { 3500, 0xbd7d }, { 3512, 0xdb88 }, { 3520, 0xc8d4 },
+  { 3527, 0xfff3 }, { 3541, 0xed7c }, { 3552, 0x5dee }, { 3563, 0x56ff },
+  { 3575, 0x7e0d }, { 3584, 0xac5f }, { 3594, 0xff96 }, { 3606, 0xd57f },
+  { 3618, 0x3fee }, { 3630, 0xc140 }, { 3634, 0x6ff9 }, { 3646, 0xffe7 },
+  /* 0x6200 */
+  { 3660, 0x779b }, { 3671, 0x8e77 }, { 3681, 0x6ebf }, { 3693, 0xe45d },
+  { 3702, 0x6fcf }, { 3714, 0x5f1f }, { 3725, 0xe07f }, { 3735, 0xfedf },
+  { 3749, 0xd7db }, { 3761, 0x01fe }, { 3769, 0xff00 }, { 3777, 0xfb7b },
+  { 3790, 0xffd4 }, { 3802, 0x1fdf }, { 3814, 0xf800 }, { 3819, 0xffff },
+  /* 0x6300 */
+  { 3835, 0xfb8f }, { 3847, 0x007b }, { 3853, 0xbf00 }, { 3860, 0x7f5c },
+  { 3871, 0xffff }, { 3887, 0x07f3 }, { 3896, 0xeba0 }, { 3904, 0x3de7 },
+  { 3915, 0xf7bf }, { 3929, 0xfbd7 }, { 3942, 0xffbf }, { 3957, 0x6003 },
+  { 3961, 0xfffd }, { 3976, 0xbfed }, { 3989, 0xefbb }, { 4002, 0x027f },
+  /* 0x6400 */
+  { 4010, 0xfe40 }, { 4018, 0xddfd }, { 4031, 0xfdff }, { 4046, 0xe2f9 },
+  { 4056, 0x680b }, { 4062, 0xfb1f }, { 4074, 0xfbe3 }, { 4086, 0xaffd },
+  { 4099, 0x9fa4 }, { 4108, 0xf7ed }, { 4121, 0x7a7d }, { 4132, 0xf80f },
+  { 4141, 0xeebe }, { 4153, 0x0fd5 }, { 4162, 0xbb5d }, { 4173, 0xfd9f },
+  /* 0x6500 */
+  { 4186, 0xf2db }, { 4197, 0x3bf9 }, { 4208, 0xfe7f }, { 4222, 0xebcc },
+  { 4232, 0x876a }, { 4240, 0x73fa }, { 4251, 0x95fc }, { 4261, 0x9ffc },
+  { 4273, 0x109f }, { 4280, 0xfaf7 }, { 4293, 0xddb7 }, { 4305, 0xbbcd },
+  { 4316, 0xf87e }, { 4327, 0xeccd }, { 4337, 0xf366 }, { 4347, 0x3c3f },
+  /* 0x6600 */
+  { 4357, 0xfffd }, { 4372, 0xb03f }, { 4381, 0xe9f7 }, { 4393, 0x067e },
+  { 4401, 0x96ae }, { 4410, 0xfe06 }, { 4419, 0xd576 }, { 4429, 0x5fd7 },
+  { 4441, 0x3fd1 }, { 4451, 0xa3f3 }, { 4461, 0xcf07 }, { 4470, 0x6fb7 },
+  { 4482, 0x9fd1 }, { 4492, 0x7f44 }, { 4501, 0x7b59 }, { 4511, 0xd3dd },
+  /* 0x6700 */
+  { 4522, 0xaf3b }, { 4533, 0xa9bd }, { 4543, 0x7dcf }, { 4555, 0xff3a },
+  { 4567, 0xfbe0 }, { 4577, 0xf6eb }, { 4589, 0xb401 }, { 4594, 0xffff },
+  { 4610, 0x7afa }, { 4621, 0xb7bf }, { 4634, 0xc000 }, { 4636, 0x0ffd },
+  { 4647, 0xff7f }, { 4662, 0xff1f }, { 4675, 0xfefc }, { 4688, 0x95ff },
+  /* 0x6800 */
+  { 4700, 0x0000 }, { 4700, 0xb5dc }, { 4710, 0xef63 }, { 4721, 0x3f3e },
+  { 4732, 0xfb7f }, { 4746, 0x001b }, { 4750, 0xe800 }, { 4754, 0xfbf6 },
+  { 4767, 0x9eef }, { 4779, 0xb8df }, { 4790, 0xff9f }, { 4804, 0x003f },
+  { 4810, 0x7bd0 }, { 4819, 0xf5ff }, { 4833, 0xdfdb }, { 4846, 0x3fff },
+  /* 0x6900 */
+  { 4860, 0xfdf0 }, { 4871, 0x00bf }, { 4878, 0x8420 }, { 4881, 0xbbbd },
+  { 4893, 0xdf37 }, { 4905, 0xffde }, { 4919, 0xff6d }, { 4932, 0x0ff3 },
+  { 4942, 0x604c }, { 4947, 0x5efb }, { 4959, 0xfffb }, { 4974, 0xfafb },
+  { 4987, 0xfe5e }, { 4999, 0x0219 }, { 5003, 0x79f4 }, { 5013, 0xf9de },
+  /* 0x6a00 */
+  { 5025, 0xa7f7 }, { 5037, 0xebfa }, { 5049, 0x01eb }, { 5056, 0xff34 },
+  { 5067, 0xebd3 }, { 5078, 0xef73 }, { 5090, 0xafd7 }, { 5102, 0xc040 },
+  { 5105, 0x72bb }, { 5115, 0xdcff }, { 5128, 0xf17f }, { 5140, 0x2fd8 },
+  { 5149, 0xb8ec }, { 5158, 0xfe0b }, { 5168, 0xdda3 }, { 5178, 0x1f0b },
+  /* 0x6b00 */
+  { 5186, 0x8f1d }, { 5195, 0x47cf }, { 5205, 0xb12b }, { 5213, 0xffde },
+  { 5227, 0x7fee }, { 5240, 0xda73 }, { 5250, 0x24ff }, { 5260, 0xcbc4 },
+  { 5268, 0xf75d }, { 5280, 0xcbf2 }, { 5290, 0xecfd }, { 5302, 0xb4ed },
+  { 5312, 0xbff9 }, { 5325, 0x4ddd }, { 5335, 0x99dd }, { 5345, 0xfb8d },
+  /* 0x6c00 */
+  { 5356, 0xbb7f }, { 5369, 0xaf7b }, { 5381, 0xddfb }, { 5394, 0xc959 },
+  { 5402, 0xfc4f }, { 5413, 0xfab5 }, { 5424, 0xafe3 }, { 5435, 0x6d5f },
+  { 5446, 0xffff }, { 5462, 0x3f7d }, { 5474, 0x7800 }, { 5478, 0xffdb },
+  { 5492, 0xb6ff }, { 5505, 0x7eff }, { 5519, 0xfbaf }, { 5532, 0x022f },
+  /* 0x6d00 */
+  { 5538, 0xff9b }, { 5551, 0xefc7 }, { 5563, 0xffa5 }, { 5575, 0xffff },
+  { 5591, 0x0007 }, { 5594, 0xc700 }, { 5599, 0xf7ff }, { 5614, 0xfff1 },
+  { 5627, 0x7ffd }, { 5641, 0x01bf }, { 5649, 0xdc00 }, { 5654, 0xfdbc },
+  { 5666, 0xbff5 }, { 5679, 0xffff }, { 5695, 0xff7f }, { 5710, 0x3eff },
+  /* 0x6e00 */
+  { 5723, 0x0029 }, { 5726, 0xbe00 }, { 5732, 0xf9ff }, { 5746, 0xff7f },
+  { 5761, 0x6efb }, { 5773, 0xfd7e }, { 5786, 0xcbff }, { 5799, 0x039e },
+  { 5806, 0xe300 }, { 5811, 0xfbdd }, { 5824, 0xccff }, { 5836, 0xf6df },
+  { 5849, 0xffff }, { 5865, 0x117f }, { 5874, 0xf800 }, { 5879, 0xfbf6 },
+  /* 0x6f00 */
+  { 5892, 0xe7ef }, { 5905, 0xd73c }, { 5915, 0xfeef }, { 5929, 0xdfef },
+  { 5943, 0xc00b }, { 5948, 0xedbf }, { 5961, 0xfedf }, { 5975, 0xfdcd },
+  { 5987, 0x7bf5 }, { 5999, 0x40fd }, { 6007, 0xffff }, { 6023, 0xb75f },
+  { 6035, 0xffdf }, { 6050, 0xf930 }, { 6058, 0xfbdf }, { 6072, 0xdc97 },
+  /* 0x7000 */
+  { 6082, 0xfef3 }, { 6095, 0xbff2 }, { 6107, 0x8fdf }, { 6119, 0xdfbf },
+  { 6133, 0x177f }, { 6144, 0xede6 }, { 6155, 0x0f7f }, { 6166, 0x3553 },
+  { 6174, 0x447c }, { 6181, 0x877e }, { 6191, 0xfa12 }, { 6199, 0x45bb },
+  { 6208, 0xede0 }, { 6217, 0x779e }, { 6228, 0x8017 }, { 6233, 0xbfd9 },
+  /* 0x7100 */
+  { 6245, 0x7e55 }, { 6255, 0xde89 }, { 6264, 0xc16f }, { 6273, 0x0447 },
+  { 6278, 0x7ade }, { 6289, 0xf75d }, { 6301, 0x57ff }, { 6314, 0x2905 },
+  { 6319, 0x86f7 }, { 6329, 0xfe95 }, { 6340, 0x97b3 }, { 6350, 0xf32f },
+  { 6361, 0xcfff }, { 6375, 0x9f75 }, { 6386, 0x71f7 }, { 6397, 0xfb17 },
+  /* 0x7200 */
+  { 6408, 0x34ee }, { 6417, 0xee19 }, { 6426, 0x37cc }, { 6435, 0xef61 },
+  { 6445, 0x9fd6 }, { 6456, 0xef4c }, { 6466, 0xd68f }, { 6476, 0xfbdd },
+  { 6489, 0x7b73 }, { 6500, 0x6def }, { 6512, 0xd7fe }, { 6525, 0xa431 },
+  { 6531, 0x5e7f }, { 6543, 0x97d7 }, { 6554, 0x0f5b }, { 6563, 0xffd8 },
+  /* 0x7300 */
+  { 6575, 0x9d83 }, { 6583, 0x7bce }, { 6594, 0x22ec }, { 6601, 0xdcff },
+  { 6614, 0x763d }, { 6624, 0xef87 }, { 6635, 0xdfe7 }, { 6648, 0xfded },
+  { 6661, 0x4fff }, { 6674, 0xa0fc }, { 6682, 0x3b77 }, { 6693, 0xdbfc },
+  { 6705, 0x3ded }, { 6716, 0x7fdc }, { 6728, 0x6fa9 }, { 6738, 0xf570 },
+  /* 0x7400 */
+  { 6747, 0x3ffb }, { 6760, 0x2c40 }, { 6764, 0xff7f }, { 6779, 0x847f },
+  { 6788, 0xec57 }, { 6798, 0xdeb7 }, { 6810, 0xe69c }, { 6819, 0xf22f },
+  { 6829, 0x0feb }, { 6839, 0xd5b5 }, { 6849, 0xafeb }, { 6861, 0xede7 },
+  { 6873, 0x8c2f }, { 6881, 0xfff0 }, { 6893, 0x537f }, { 6904, 0xe8f0 },
+  /* 0x7500 */
+  { 6912, 0xb99d }, { 6922, 0xb5ff }, { 6935, 0xff66 }, { 6947, 0xe78f },
+  { 6958, 0xd981 }, { 6965, 0xbe10 }, { 6972, 0x9c7c }, { 6981, 0xe3c1 },
+  { 6989, 0x9cd1 }, { 6997, 0x2733 }, { 7005, 0x0cbc }, { 7012, 0xff6d },
+  { 7025, 0xfcb7 }, { 7037, 0xefb7 }, { 7050, 0xa0df }, { 7059, 0xffff },
+  /* 0x7600 */
+  { 7075, 0xbf0b }, { 7085, 0xfe7b }, { 7098, 0xa3ff }, { 7110, 0x353f },
+  { 7120, 0x13cc }, { 7127, 0x97cd }, { 7137, 0x7637 }, { 7147, 0xfb27 },
+  { 7158, 0xcfd6 }, { 7169, 0x7e6c }, { 7179, 0xec50 }, { 7186, 0xed31 },
+  { 7195, 0x677c }, { 7205, 0xfc1c }, { 7214, 0xf6fa }, { 7226, 0x5fbf },
+  /* 0x7700 */
+  { 7239, 0x0fba }, { 7248, 0xae2f }, { 7258, 0xa3ad }, { 7267, 0x7ffe },
+  { 7281, 0xfcf0 }, { 7291, 0xde74 }, { 7301, 0xffef }, { 7316, 0xf200 },
+  { 7321, 0xfbbf }, { 7335, 0xfea2 }, { 7345, 0x3daf }, { 7356, 0xbcff },
+  { 7369, 0xf694 }, { 7378, 0x5fb9 }, { 7389, 0xf3ad }, { 7400, 0x3f8f },
+  /* 0x7800 */
+  { 7411, 0xf26c }, { 7420, 0xa01f }, { 7427, 0xffef }, { 7442, 0x01bf },
+  { 7450, 0x7728 }, { 7458, 0x7005 }, { 7463, 0xff35 }, { 7475, 0xda03 },
+  { 7482, 0xd2f9 }, { 7492, 0xc7fa }, { 7503, 0x3fbf }, { 7516, 0x5c1d },
+  { 7524, 0xff3a }, { 7536, 0xec33 }, { 7545, 0xb7af }, { 7557, 0xfe9c },
+  /* 0x7900 */
+  { 7568, 0x5236 }, { 7575, 0x7a9f }, { 7586, 0xbffa }, { 7599, 0xe722 },
+  { 7607, 0x9ff7 }, { 7620, 0xfcff }, { 7634, 0x2fbb }, { 7645, 0xb61d },
+  { 7654, 0xed06 }, { 7662, 0x1dfd }, { 7673, 0x7dd7 }, { 7685, 0xefdf },
+  { 7699, 0xeb23 }, { 7708, 0xf166 }, { 7717, 0x7ed9 }, { 7728, 0x0dc0 },
+  /* 0x7a00 */
+  { 7733, 0x3d3d }, { 7743, 0xdfbf }, { 7757, 0xc945 }, { 7764, 0xba83 },
+  { 7772, 0x7dd1 }, { 7782, 0x9dd0 }, { 7790, 0x7b87 }, { 7800, 0xcf73 },
+  { 7811, 0x9ff3 }, { 7823, 0xc3f5 }, { 7833, 0xdf0d }, { 7843, 0xc5fe },
+  { 7854, 0x0cb3 }, { 7861, 0x8302 }, { 7865, 0xe879 }, { 7874, 0xaec0 },
+  /* 0x7b00 */
+  { 7881, 0xc773 }, { 7891, 0x6f0f }, { 7901, 0xfd7d }, { 7914, 0x093f },
+  { 7922, 0xfff1 }, { 7935, 0x0157 }, { 7941, 0x62fb }, { 7951, 0x01ff },
+  { 7960, 0xfdb4 }, { 7971, 0x3bf3 }, { 7982, 0xb013 }, { 7988, 0x43b2 },
+  { 7995, 0x5ed3 }, { 8005, 0xff30 }, { 8015, 0x0fff }, { 8027, 0xeb9f },
+  /* 0x7c00 */
+  { 8039, 0xfeef }, { 8053, 0xf203 }, { 8060, 0x3fef }, { 8073, 0xfb89 },
+  { 8083, 0x37a9 }, { 8092, 0x9e99 }, { 8101, 0xdef9 }, { 8113, 0xa72c },
+  { 8121, 0x3733 }, { 8130, 0xc1f6 }, { 8139, 0x812e }, { 8145, 0xfe3e },
+  { 8157, 0x5d20 }, { 8163, 0xf2f7 }, { 8175, 0xd585 }, { 8183, 0x69d7 },
+  /* 0x7d00 */
+  { 8193, 0xffff }, { 8209, 0xffff }, { 8225, 0xdb07 }, { 8234, 0xff6f },
+  { 8248, 0xc4ff }, { 8259, 0xd97f }, { 8271, 0xefce }, { 8283, 0xbe0f },
+  { 8293, 0xf17b }, { 8304, 0xf05e }, { 8313, 0xf6cf }, { 8325, 0xffb7 },
+  { 8339, 0x5ef7 }, { 8351, 0xef84 }, { 8360, 0xd7cb }, { 8371, 0x0edf },
+  /* 0x7e00 */
+  { 8381, 0xff08 }, { 8390, 0xfcff }, { 8404, 0xee3f }, { 8416, 0xffff },
+  { 8432, 0x13ff }, { 8443, 0xd7ff }, { 8457, 0xaf0f }, { 8467, 0x7ffd },
+  { 8481, 0xbdc7 }, { 8492, 0x1ffa }, { 8503, 0x0000 }, { 8503, 0x0000 },
+  { 8503, 0x0000 }, { 8503, 0x0000 }, { 8503, 0x0000 }, { 8503, 0x0000 },
+  /* 0x7f00 */
+  { 8503, 0x0000 }, { 8503, 0x0000 }, { 8503, 0x0000 }, { 8503, 0xe740 },
+  { 8510, 0xbd38 }, { 8519, 0xf933 }, { 8529, 0x7feb }, { 8542, 0xfeed },
+  { 8555, 0x7fe8 }, { 8566, 0x7c76 }, { 8576, 0xb3f7 }, { 8588, 0xffef },
+  { 8603, 0xfeaf }, { 8616, 0xd8b7 }, { 8626, 0xff6f }, { 8640, 0xfbbf },
+  /* 0x8000 */
+  { 8654, 0xf8fb }, { 8666, 0xdbf7 }, { 8679, 0x1752 }, { 8686, 0xe2f9 },
+  { 8696, 0x85c8 }, { 8702, 0x7547 }, { 8711, 0x9090 }, { 8715, 0xe3ef },
+  { 8727, 0x9ef4 }, { 8737, 0x3f6d }, { 8748, 0xee2e }, { 8758, 0x0536 },
+  { 8764, 0xf7bc }, { 8776, 0x7ff3 }, { 8789, 0xa07b }, { 8797, 0x7f3f },
+  /* 0x8100 */
+  { 8810, 0x0567 }, { 8817, 0xeb60 }, { 8825, 0xbabe }, { 8836, 0x6601 },
+  { 8841, 0xfcd8 }, { 8851, 0x583f }, { 8860, 0xcaf7 }, { 8871, 0x87df },
+  { 8882, 0xbfcd }, { 8894, 0xffa0 }, { 8904, 0x5bcd }, { 8914, 0xfebf },
+  { 8928, 0xb6fd }, { 8940, 0xefa7 }, { 8952, 0x77ef }, { 8965, 0xdf9c },
+  /* 0x8200 */
+  { 8976, 0x3fb7 }, { 8988, 0xf877 }, { 8999, 0x9d27 }, { 9008, 0xb7fc },
+  { 9020, 0xcab5 }, { 9029, 0xdfef }, { 9043, 0xfb5a }, { 9054, 0xf1b6 },
+  { 9064, 0xec39 }, { 9073, 0xef1f }, { 9085, 0xfbbf }, { 9099, 0x7ffb },
+  { 9113, 0x000d }, { 9116, 0xdafe }, { 9128, 0xbdfb }, { 9141, 0x4e7f },
+  /* 0x8300 */
+  { 9152, 0x33ff }, { 9164, 0x5ac0 }, { 9170, 0xbff5 }, { 9183, 0x9ffe },
+  { 9196, 0xffbf }, { 9211, 0x005f }, { 9217, 0x0000 }, { 9217, 0xfdf8 },
+  { 9229, 0xffca }, { 9241, 0x6ffd }, { 9254, 0xcffd }, { 9267, 0xa001 },
+  { 9270, 0xdfff }, { 9285, 0xfbf2 }, { 9297, 0xdfbf }, { 9311, 0xff7f },
+  /* 0x8400 */
+  { 9326, 0xfeda }, { 9338, 0x080f }, { 9343, 0xba08 }, { 9349, 0xbfff },
+  { 9364, 0x7afd }, { 9376, 0xeed7 }, { 9388, 0xfbeb }, { 9401, 0x67f9 },
+  { 9412, 0xe044 }, { 9417, 0xff93 }, { 9429, 0xdf97 }, { 9441, 0x9f57 },
+  { 9452, 0xfef7 }, { 9466, 0x08df }, { 9474, 0xdf80 }, { 9482, 0xfedf },
+  /* 0x8500 */
+  { 9496, 0xffc5 }, { 9508, 0xf7fe }, { 9522, 0xfffb }, { 9537, 0x6803 },
+  { 9542, 0x67fb }, { 9554, 0x6bfa }, { 9565, 0x7fff }, { 9580, 0x5fe2 },
+  { 9590, 0xffff }, { 9606, 0xff73 }, { 9619, 0x87df }, { 9630, 0xe7fb },
+  { 9643, 0xebfd }, { 9656, 0xf7a7 }, { 9668, 0xbf7e }, { 9681, 0xefc7 },
+  /* 0x8600 */
+  { 9693, 0x1ef3 }, { 9703, 0xdf82 }, { 9712, 0x76ff }, { 9725, 0xdf7e },
+  { 9738, 0x79c9 }, { 9747, 0xda7d }, { 9758, 0xefbe }, { 9771, 0x1e9b },
+  { 9780, 0x7ce0 }, { 9788, 0x77fb }, { 9801, 0x87be }, { 9811, 0xfffb },
+  { 9826, 0x1bff }, { 9838, 0xffdb }, { 9852, 0x3f5c }, { 9862, 0x4fe0 },
+  /* 0x8700 */
+  { 9870, 0x7fff }, { 9885, 0x5f0e }, { 9894, 0x77ff }, { 9908, 0xddbf },
+  { 9921, 0xf04f }, { 9930, 0xffff }, { 9946, 0xffff }, { 9962, 0x0ff8 },
+  { 9971, 0xa3be }, { 9981, 0xfddf }, { 9995, 0xfc1c }, { 10004, 0xfffd },
+  { 10019, 0x1f7d }, { 10030, 0xfb9e }, { 10042, 0xbdff }, { 10056, 0xdedc },
+  /* 0x8800 */
+  { 10067, 0x3f6f }, { 10079, 0xbafb }, { 10091, 0xdf7f }, { 10105, 0xfbef },
+  { 10119, 0x7d1b }, { 10129, 0x2eec }, { 10138, 0xaf8e }, { 10148, 0xf2f7 },
+  { 10160, 0x7b0f }, { 10170, 0xcfee }, { 10182, 0x1d96 }, { 10190, 0x77c6 },
+  { 10200, 0x7e07 }, { 10209, 0xfff5 }, { 10223, 0xd982 }, { 10230, 0x7fdf },
+  /* 0x8900 */
+  { 10244, 0x5ee6 }, { 10254, 0xc7ff }, { 10267, 0xfeee }, { 10280, 0x79ef },
+  { 10292, 0x9a56 }, { 10300, 0xffcf }, { 10314, 0xfe5f }, { 10327, 0xde5e },
+  { 10338, 0x896e }, { 10346, 0xf9e8 }, { 10356, 0xf45e }, { 10366, 0xe6c4 },
+  { 10374, 0x0001 }, { 10375, 0xbe7c }, { 10386, 0x3b7f }, { 10398, 0xdddf },
+  /* 0x8a00 */
+  { 10411, 0xd59d }, { 10421, 0xe9ef }, { 10433, 0x34ac }, { 10440, 0xde53 },
+  { 10450, 0xf573 }, { 10461, 0x4bf7 }, { 10472, 0x7b4f }, { 10483, 0x9eff },
+  { 10496, 0xb8fe }, { 10507, 0x476e }, { 10516, 0x0dfb }, { 10526, 0xff45 },
+  { 10537, 0xabfd }, { 10549, 0xfbfe }, { 10563, 0xe9d7 }, { 10574, 0xddff },
+  /* 0x8b00 */
+  { 10588, 0xedf7 }, { 10601, 0x7fff }, { 10616, 0xddfd }, { 10629, 0x7eeb },
+  { 10641, 0xcfe7 }, { 10653, 0xb7ff }, { 10667, 0xbde9 }, { 10678, 0xef91 },
+  { 10688, 0x5d75 }, { 10698, 0xd77c }, { 10709, 0x0000 }, { 10709, 0x0000 },
+  { 10709, 0x0000 }, { 10709, 0x0000 }, { 10709, 0x0000 }, { 10709, 0x0000 },
+  /* 0x8c00 */
+  { 10709, 0x0000 }, { 10709, 0x0000 }, { 10709, 0x0000 }, { 10709, 0xfa80 },
+  { 10716, 0xffee }, { 10730, 0xb4f1 }, { 10739, 0xbf76 }, { 10751, 0x2fef },
+  { 10763, 0xb677 }, { 10774, 0x77bf }, { 10787, 0x9fbf }, { 10800, 0xfffd },
+  { 10815, 0x95bf }, { 10826, 0xf6ae }, { 10837, 0x75ff }, { 10850, 0x7f3b },
+  /* 0x8d00 */
+  { 10862, 0xa7f5 }, { 10873, 0x0af9 }, { 10881, 0x0000 }, { 10881, 0x0000 },
+  { 10881, 0x0000 }, { 10881, 0x0000 }, { 10881, 0xfbd0 }, { 10891, 0x2bdd },
+  { 10901, 0xf633 }, { 10911, 0x9a7f }, { 10922, 0xfdab }, { 10934, 0xd6fc },
+  { 10945, 0xf9e6 }, { 10956, 0xbfeb }, { 10969, 0xdfdf }, { 10983, 0xf41f },
+  /* 0x8e00 */
+  { 10993, 0xa6fd }, { 11004, 0xffff }, { 11020, 0x4aff }, { 11031, 0xf37b },
+  { 11043, 0x7fb7 }, { 11056, 0xfef9 }, { 11069, 0xb6ff }, { 11082, 0x1d5c },
+  { 11090, 0x7ff6 }, { 11103, 0xe5ff }, { 11116, 0x1f7b }, { 11127, 0x2404 },
+  { 11130, 0xbe05 }, { 11138, 0xf99e }, { 11149, 0xdbe3 }, { 11160, 0xdff2 },
+  /* 0x8f00 */
+  { 11172, 0x6fef }, { 11185, 0xfdff }, { 11200, 0xd679 }, { 11210, 0xcbfc },
+  { 11221, 0xebfd }, { 11234, 0xefff }, { 11249, 0x001f }, { 11254, 0x0000 },
+  { 11254, 0x0000 }, { 11254, 0x9800 }, { 11257, 0xe148 }, { 11263, 0x8017 },
+  { 11268, 0x6a74 }, { 11276, 0x00fe }, { 11283, 0x6d7f }, { 11295, 0xfdf1 },
+  /* 0x9000 */
+  { 11307, 0xb87f }, { 11318, 0xfef3 }, { 11331, 0xe01f }, { 11339, 0xf176 },
+  { 11349, 0xee96 }, { 11359, 0x7b3f }, { 11371, 0xeb8d }, { 11381, 0xfffd },
+  { 11396, 0xadff }, { 11409, 0xcbb3 }, { 11419, 0x84ef }, { 11428, 0xe17f },
+  { 11439, 0x4daa }, { 11447, 0xbff0 }, { 11458, 0xbf3f }, { 11471, 0xfe3f },
+  /* 0x9100 */
+  { 11484, 0xebff }, { 11498, 0xffd7 }, { 11512, 0xffdf }, { 11527, 0xcf7f },
+  { 11540, 0xfffb }, { 11555, 0x85ed }, { 11564, 0xd73f }, { 11576, 0x07bc },
+  { 11584, 0xaeff }, { 11597, 0xfe0f }, { 11608, 0xfdaf }, { 11621, 0x76bf },
+  { 11633, 0xfaef }, { 11646, 0x37bb }, { 11657, 0x7fdc }, { 11669, 0xa3ba },
+  /* 0x9200 */
+  { 11678, 0xb6ff }, { 11691, 0x56f7 }, { 11702, 0x60f8 }, { 11709, 0xe7df },
+  { 11722, 0xff61 }, { 11733, 0x4cdf }, { 11743, 0xb0fb }, { 11753, 0xff45 },
+  { 11764, 0x7ded }, { 11776, 0x3ffa }, { 11788, 0x1fff }, { 11801, 0x18fc },
+  { 11809, 0xffff }, { 11825, 0xe3af }, { 11836, 0xc7d3 }, { 11846, 0xdf83 },
+  /* 0x9300 */
+  { 11856, 0xfb57 }, { 11868, 0xef7d }, { 11881, 0xefff }, { 11896, 0x1378 },
+  { 11903, 0xfec0 }, { 11912, 0x5ff7 }, { 11925, 0x34bb }, { 11934, 0x5ee3 },
+  { 11944, 0xf70d }, { 11954, 0xeff6 }, { 11967, 0xd7fe }, { 11980, 0x00bf },
+  { 11987, 0xf59d }, { 11998, 0xf7f7 }, { 12012, 0x51de }, { 12021, 0xffe0 },
+  /* 0x9400 */
+  { 12032, 0xfec9 }, { 12043, 0x037f }, { 12052, 0x5f01 }, { 12059, 0xbfef },
+  { 12073, 0x9ff1 }, { 12084, 0x60a7 }, { 12091, 0xef1d }, { 12102, 0xf1ff },
+  { 12115, 0x000f }, { 12119, 0x0000 }, { 12119, 0x0000 }, { 12119, 0x0000 },
+  { 12119, 0x0000 }, { 12119, 0x0000 }, { 12119, 0x0000 }, { 12119, 0x0000 },
+  /* 0x9500 */
+  { 12119, 0x0000 }, { 12119, 0x0000 }, { 12119, 0x0000 }, { 12119, 0x0000 },
+  { 12119, 0x0000 }, { 12119, 0x0000 }, { 12119, 0x0000 }, { 12119, 0x3c80 },
+  { 12124, 0xfb4d }, { 12135, 0xd91f }, { 12145, 0x7b3a }, { 12155, 0xfee3 },
+  { 12167, 0x3fe9 }, { 12178, 0xdc7f }, { 12190, 0x003f }, { 12196, 0x0000 },
+  /* 0x9600 */
+  { 12196, 0x0000 }, { 12196, 0x5000 }, { 12198, 0xf51f }, { 12209, 0xbe07 },
+  { 12218, 0xfc1d }, { 12228, 0xf91b }, { 12238, 0xbc1e }, { 12247, 0x71ff },
+  { 12259, 0x6ff9 }, { 12271, 0x5bbe }, { 12282, 0x5796 }, { 12291, 0x9b1b },
+  { 12300, 0x7fff }, { 12315, 0xfffc }, { 12329, 0x872e }, { 12337, 0xafe7 },
+  /* 0x9700 */
+  { 12349, 0xebf5 }, { 12361, 0xf34f }, { 12372, 0xdffd }, { 12386, 0xe725 },
+  { 12395, 0x0bdc }, { 12403, 0x5d44 }, { 12410, 0x5747 }, { 12419, 0xfddd },
+  { 12432, 0xed3f }, { 12444, 0x7790 }, { 12452, 0x7d7f }, { 12465, 0x8ac8 },
+  { 12471, 0xfafa }, { 12483, 0xf3f9 }, { 12495, 0x202a }, { 12499, 0xef4b },
+  /* 0x9800 */
+  { 12510, 0xf5ff }, { 12524, 0x79cf }, { 12535, 0xabd3 }, { 12545, 0x0ba5 },
+  { 12552, 0xf77a }, { 12564, 0xfb8f }, { 12576, 0x8ebd }, { 12586, 0x001f },
+  { 12591, 0x0000 }, { 12591, 0x0000 }, { 12591, 0xf300 }, { 12597, 0xfd4e },
+  { 12608, 0x1a57 }, { 12616, 0x8800 }, { 12618, 0xaeac }, { 12627, 0x7654 },
+  /* 0x9900 */
+  { 12635, 0x17ad }, { 12644, 0xcdff }, { 12657, 0xffb2 }, { 12669, 0xf42f },
+  { 12679, 0x5baa }, { 12688, 0xdbff }, { 12702, 0x0002 }, { 12703, 0x0000 },
+  { 12703, 0x0000 }, { 12703, 0x73c0 }, { 12710, 0xf9ea }, { 12721, 0x2e3f },
+  { 12731, 0xfa8e }, { 12741, 0xbbff }, { 12755, 0x76bc }, { 12765, 0xffd3 },
+  /* 0x9a00 */
+  { 12778, 0xeefe }, { 12791, 0x7e72 }, { 12801, 0x7ebd }, { 12813, 0xe7f7 },
+  { 12826, 0xf77f }, { 12840, 0xcefd }, { 12852, 0x0ff5 }, { 12862, 0x0000 },
+  { 12862, 0x0000 }, { 12862, 0x0000 }, { 12862, 0xa900 }, { 12866, 0xdb9b },
+  { 12877, 0xa4c7 }, { 12885, 0x917f }, { 12895, 0xf8ca }, { 12904, 0x7ece },
+  /* 0x9b00 */
+  { 12915, 0x7d7a }, { 12926, 0xc7e7 }, { 12937, 0xcbbd }, { 12948, 0xdcae },
+  { 12958, 0xfd7e }, { 12971, 0x8f76 }, { 12981, 0x91d3 }, { 12989, 0x7cf3 },
+  { 13000, 0x01e5 }, { 13006, 0x4c2f }, { 13014, 0xed77 }, { 13026, 0xa360 },
+  { 13032, 0x07db }, { 13041, 0x5ef8 }, { 13051, 0x1df7 }, { 13062, 0x2181 },
+  /* 0x9c00 */
+  { 13066, 0x6be0 }, { 13074, 0x309c }, { 13080, 0x3b3a }, { 13089, 0xfade },
+  { 13101, 0x7f53 }, { 13112, 0xc3f5 }, { 13122, 0x61cd }, { 13130, 0x07ba },
+  { 13138, 0x0000 }, { 13138, 0x0000 }, { 13138, 0x0000 }, { 13138, 0x0000 },
+  { 13138, 0x0000 }, { 13138, 0x0000 }, { 13138, 0x26e0 }, { 13144, 0xbefe },
+  /* 0x9d00 */
+  { 13157, 0x03f9 }, { 13165, 0xebb5 }, { 13176, 0xe36d }, { 13186, 0xe9cb },
+  { 13196, 0x9c2f }, { 13205, 0xbfde }, { 13218, 0x9f83 }, { 13227, 0xabbf },
+  { 13239, 0x1ff7 }, { 13251, 0xffd5 }, { 13264, 0xb7df }, { 13277, 0xdffe },
+  { 13291, 0xfdae }, { 13303, 0xffef }, { 13318, 0xfb7e }, { 13331, 0xeffd },
+  /* 0x9e00 */
+  { 13345, 0xaaff }, { 13357, 0x6ebf }, { 13369, 0x0000 }, { 13369, 0x0000 },
+  { 13369, 0x0000 }, { 13369, 0x0000 }, { 13369, 0x0000 }, { 13369, 0xb620 },
+  { 13375, 0x7fcd }, { 13387, 0xbe9e }, { 13398, 0x62b3 }, { 13406, 0x58f1 },
+  { 13414, 0xf10d }, { 13422, 0xfd7b }, { 13435, 0xe9f1 }, { 13445, 0xbefd },
+  /* 0x9f00 */
+  { 13458, 0xc6c3 }, { 13466, 0x5f6d }, { 13477, 0xff3d }, { 13490, 0x69ff },
+  { 13502, 0xffcf }, { 13516, 0xfbf4 }, { 13528, 0xdcfb }, { 13540, 0x4ff7 },
+  { 13552, 0x2000 }, { 13553, 0x1137 }, { 13560, 0x0015 },
+};
+static const Summary16 big5_uni2indx_pagefa[1] = {
+  /* 0xfa00 */
+  { 13563, 0x3000 },
+};
+static const Summary16 big5_uni2indx_pagefe[23] = {
+  /* 0xfe00 */
+  { 13565, 0x0000 }, { 13565, 0x0000 }, { 13565, 0x0000 }, { 13565, 0xfffb },
+  { 13580, 0xfe1f }, { 13592, 0xfef5 }, { 13605, 0x0e7f }, { 13615, 0x0000 },
+  { 13615, 0x0000 }, { 13615, 0x0000 }, { 13615, 0x0000 }, { 13615, 0x0000 },
+  { 13615, 0x0000 }, { 13615, 0x0000 }, { 13615, 0x0000 }, { 13615, 0x0000 },
+  /* 0xff00 */
+  { 13615, 0xff7a }, { 13628, 0xffff }, { 13644, 0xffff }, { 13660, 0x97ff },
+  { 13673, 0xfffe }, { 13688, 0x3fff }, { 13702, 0x0010 },
+};
+
+static int
+big5_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 2) {
+    const Summary16 *summary = NULL;
+    if (wc >= 0x0000 && wc < 0x0100)
+      summary = &big5_uni2indx_page00[(wc>>4)];
+    else if (wc >= 0x0200 && wc < 0x0460)
+      summary = &big5_uni2indx_page02[(wc>>4)-0x020];
+    else if (wc >= 0x2000 && wc < 0x22c0)
+      summary = &big5_uni2indx_page20[(wc>>4)-0x200];
+    else if (wc >= 0x2400 && wc < 0x2650)
+      summary = &big5_uni2indx_page24[(wc>>4)-0x240];
+    else if (wc >= 0x3000 && wc < 0x33e0)
+      summary = &big5_uni2indx_page30[(wc>>4)-0x300];
+    else if (wc >= 0x4e00 && wc < 0x9fb0)
+      summary = &big5_uni2indx_page4e[(wc>>4)-0x4e0];
+    else if (wc >= 0xfa00 && wc < 0xfa10)
+      summary = &big5_uni2indx_pagefa[(wc>>4)-0xfa0];
+    else if (wc >= 0xfe00 && wc < 0xff70)
+      summary = &big5_uni2indx_pagefe[(wc>>4)-0xfe0];
+    if (summary) {
+      unsigned short used = summary->used;
+      unsigned int i = wc & 0x0f;
+      if (used & ((unsigned short) 1 << i)) {
+        unsigned short c;
+        /* Keep in `used' only the bits 0..i-1. */
+        used &= ((unsigned short) 1 << i) - 1;
+        /* Add `summary->indx' and the number of bits set in `used'. */
+        used = (used & 0x5555) + ((used & 0xaaaa) >> 1);
+        used = (used & 0x3333) + ((used & 0xcccc) >> 2);
+        used = (used & 0x0f0f) + ((used & 0xf0f0) >> 4);
+        used = (used & 0x00ff) + (used >> 8);
+        c = big5_2charset[summary->indx + used];
+        r[0] = (c >> 8); r[1] = (c & 0xff);
+        return 2;
+      }
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/big5_2003.h b/graf2d/win32gdk/gdk/src/iconv/big5_2003.h
new file mode 100644
index 00000000000..b532ce6ee83
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/big5_2003.h
@@ -0,0 +1,476 @@
+/*
+ * Copyright (C) 1999-2001, 2005 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * BIG5-2003
+ */
+
+/*
+ * BIG5-2003 is a slightly extended and slightly modified version of BIG5.
+ * It is actually nearer to Microsoft CP950 than to BIG5. The differences
+ * between EASTASIA/OTHER/BIG5.TXT found on ftp.unicode.org and BIG5-2003.TXT
+ * are as follows:
+ *
+ * 1. Some characters in the symbols area (0xA140..0xA2CE) are defined
+ *    differently:
+ *
+ *     code   BIG5.TXT                       BIG5-2003.TXT
+ *    0xA145  0x2022 # BULLET                0x2027 # HYPHENATION POINT
+ *    0xA14E  0xFF64 # HALFWIDTH IDEOGRAPHIC COMMA
+ *                                           0xFE51 # SMALL IDEOGRAPHIC COMMA
+ *    0xA156  0x2013 # EN DASH               0x2015 # HORIZONTAL BAR
+ *    0xA15A    ---                          0x2574 # BOX DRAWINGS LIGHT LEFT
+ *    0xA1C3    ---                          0xFFE3 # FULLWIDTH MACRON
+ *    0xA1C5    ---                          0x02CD # MODIFIER LETTER LOW MACRON
+ *    0xA1E3  0x223C # TILDE OPERATOR        0xFF5E # FULLWIDTH TILDE
+ *    0xA1F2  0x2641 # EARTH                 0x2295 # CIRCLED PLUS
+ *    0xA1F3  0x2609 # SUN                   0x2299 # CIRCLED DOT OPERATOR
+ *    0xA1FE    ---                          0xFF0F # FULLWIDTH SOLIDUS
+ *    0xA240    ---                          0xFF3C # FULLWIDTH REVERSE SOLIDUS
+ *    0xA241  0xFF0F # FULLWIDTH SOLIDUS     0x2215 # DIVISION SLASH
+ *    0xA242  0xFF3C # FULLWIDTH REVERSE SOLIDUS
+ *                                           0xFE68 # SMALL REVERSE SOLIDUS
+ *    0xA244  0x00A5 # YEN SIGN              0xFFE5 # FULLWIDTH YEN SIGN
+ *    0xA246  0x00A2 # CENT SIGN             0xFFE0 # FULLWIDTH CENT SIGN
+ *    0xA247  0x00A3 # POUND SIGN            0xFFE1 # FULLWIDTH POUND SIGN
+ *    0xA2A4  0x2550 # BOX DRAWINGS DOUBLE HORIZONTAL
+ *                                           0x2501 # BOX DRAWINGS HEAVY HORIZONTAL
+ *    0xA2A5  0x255E # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
+ *                                           0x251D # BOX DRAWINGS VERTICAL LIGHT AND RIGHT HEAVY
+ *    0xA2A6  0x256A # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
+ *                                           0x253F # BOX DRAWINGS VERTICAL LIGHT AND HORIZONTAL HEAVY
+ *    0xA2A7  0x2561 # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
+ *                                           0x2525 # BOX DRAWINGS VERTICAL LIGHT AND LEFT HEAVY
+ *    0xA2CC    ---                          0x3038 # HANGZHOU NUMERAL TEN
+ *    0xA2CD  0x5344                         0x3039 # HANGZHOU NUMERAL TWENTY
+ *    0xA2CE    ---                          0x303A # HANGZHOU NUMERAL THIRTY
+ *
+ * 2. A control symbols area is added:
+ *
+ *         code
+ *    0xA3C0..0xA3E0  U+2400..U+2421
+ *
+ * 3. The Euro sign is added:
+ *
+ *     code
+ *    0xA3E1  0x20AC # EURO SIGN
+ *
+ * 4. Some characters in the main area are defined differently:
+ *
+ *     code   BIG5.TXT                       BIG5-2003.TXT
+ *    0xC255  0x5F5D                         0x5F5E
+ *
+ * 5. The area 0xC6A1..0xC7FE is organized differently:
+ *
+ *         code
+ *    0xC6A1..0xC6BE  numerals (was in BIG5.TXT at 0xC7E9..0xC7FC)
+ *    0xC6BF..0xC6D7  radicals
+ *    0xC6D8..0xC6E6  rarely used symbols
+ *    0xC6E7..0xC77A  hiragana (U+3041..U+3093, was in BIG5.TXT at 0xC6A5..0xC6F7)
+ *    0xC77B..0xC7F2  katakana (U+30A1..U+30F6, was in BIG5.TXT at 0xC6F8..0xC7B0)
+ *
+ * 6. Some characters are added at 0xF9D6..0xF9DC.
+ *
+ * 7. Box drawing characters are added at 0xF9DD..0xF9FE.
+ *
+ *    Note: 4 of these characters are mapped in a non-inversible way, because
+ *    Unicode does not yet include the corresponding characters:
+ *
+ *     code                                           Unicode approximation
+ *    0xF9FA  BOX DRAWINGS DOUBLE ARC DOWN AND RIGHT  0x2554
+ *    0xF9FB  BOX DRAWINGS DOUBLE ARC DOWN AND LEFT   0x2557
+ *    0xF9FC  BOX DRAWINGS DOUBLE ARC UP AND RIGHT    0x255A
+ *    0xF9FD  BOX DRAWINGS DOUBLE ARC UP AND LEFT     0x255D
+ *
+ * 8. Private area mappings are added:
+ *
+ *              code                 Unicode
+ *    0x{81..8D}{40..7E,A1..FE}  U+EEB8..U+F6B0
+ *    0x{8E..A0}{40..7E,A1..FE}  U+E311..U+EEB7
+ *    0x{FA..FE}{40..7E,A1..FE}  U+E000..U+E310
+ *
+ *    These mappings are not contained in the BSMI Big5-2003 standard. However,
+ *    they were contained in a draft of it.
+ */
+
+static const unsigned short big5_2003_2uni_pagea1[314] = {
+  /* 0xa1 */
+  0x3000, 0xff0c, 0x3001, 0x3002, 0xff0e, 0x2027, 0xff1b, 0xff1a,
+  0xff1f, 0xff01, 0xfe30, 0x2026, 0x2025, 0xfe50, 0xfe51, 0xfe52,
+  0x00b7, 0xfe54, 0xfe55, 0xfe56, 0xfe57, 0xff5c, 0x2015, 0xfe31,
+  0x2014, 0xfe33, 0x2574, 0xfe34, 0xfe4f, 0xff08, 0xff09, 0xfe35,
+  0xfe36, 0xff5b, 0xff5d, 0xfe37, 0xfe38, 0x3014, 0x3015, 0xfe39,
+  0xfe3a, 0x3010, 0x3011, 0xfe3b, 0xfe3c, 0x300a, 0x300b, 0xfe3d,
+  0xfe3e, 0x3008, 0x3009, 0xfe3f, 0xfe40, 0x300c, 0x300d, 0xfe41,
+  0xfe42, 0x300e, 0x300f, 0xfe43, 0xfe44, 0xfe59, 0xfe5a, 0xfe5b,
+  0xfe5c, 0xfe5d, 0xfe5e, 0x2018, 0x2019, 0x201c, 0x201d, 0x301d,
+  0x301e, 0x2035, 0x2032, 0xff03, 0xff06, 0xff0a, 0x203b, 0x00a7,
+  0x3003, 0x25cb, 0x25cf, 0x25b3, 0x25b2, 0x25ce, 0x2606, 0x2605,
+  0x25c7, 0x25c6, 0x25a1, 0x25a0, 0x25bd, 0x25bc, 0x32a3, 0x2105,
+  0x203e, 0xffe3, 0xff3f, 0x02cd, 0xfe49, 0xfe4a, 0xfe4d, 0xfe4e,
+  0xfe4b, 0xfe4c, 0xfe5f, 0xfe60, 0xfe61, 0xff0b, 0xff0d, 0x00d7,
+  0x00f7, 0x00b1, 0x221a, 0xff1c, 0xff1e, 0xff1d, 0x2266, 0x2267,
+  0x2260, 0x221e, 0x2252, 0x2261, 0xfe62, 0xfe63, 0xfe64, 0xfe65,
+  0xfe66, 0xff5e, 0x2229, 0x222a, 0x22a5, 0x2220, 0x221f, 0x22bf,
+  0x33d2, 0x33d1, 0x222b, 0x222e, 0x2235, 0x2234, 0x2640, 0x2642,
+  0x2295, 0x2299, 0x2191, 0x2193, 0x2190, 0x2192, 0x2196, 0x2197,
+  0x2199, 0x2198, 0x2225, 0x2223, 0xff0f,
+  /* 0xa2 */
+  0xff3c, 0x2215, 0xfe68, 0xff04, 0xffe5, 0x3012, 0xffe0, 0xffe1,
+  0xff05, 0xff20, 0x2103, 0x2109, 0xfe69, 0xfe6a, 0xfe6b, 0x33d5,
+  0x339c, 0x339d, 0x339e, 0x33ce, 0x33a1, 0x338e, 0x338f, 0x33c4,
+  0x00b0, 0x5159, 0x515b, 0x515e, 0x515d, 0x5161, 0x5163, 0x55e7,
+  0x74e9, 0x7cce, 0x2581, 0x2582, 0x2583, 0x2584, 0x2585, 0x2586,
+  0x2587, 0x2588, 0x258f, 0x258e, 0x258d, 0x258c, 0x258b, 0x258a,
+  0x2589, 0x253c, 0x2534, 0x252c, 0x2524, 0x251c, 0x2594, 0x2500,
+  0x2502, 0x2595, 0x250c, 0x2510, 0x2514, 0x2518, 0x256d, 0x256e,
+  0x2570, 0x256f, 0x2501, 0x251d, 0x253f, 0x2525, 0x25e2, 0x25e3,
+  0x25e5, 0x25e4, 0x2571, 0x2572, 0x2573, 0xff10, 0xff11, 0xff12,
+  0xff13, 0xff14, 0xff15, 0xff16, 0xff17, 0xff18, 0xff19, 0x2160,
+  0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, 0x2167, 0x2168,
+  0x2169, 0x3021, 0x3022, 0x3023, 0x3024, 0x3025, 0x3026, 0x3027,
+  0x3028, 0x3029, 0x3038, 0x3039, 0x303a, 0xff21, 0xff22, 0xff23,
+  0xff24, 0xff25, 0xff26, 0xff27, 0xff28, 0xff29, 0xff2a, 0xff2b,
+  0xff2c, 0xff2d, 0xff2e, 0xff2f, 0xff30, 0xff31, 0xff32, 0xff33,
+  0xff34, 0xff35, 0xff36, 0xff37, 0xff38, 0xff39, 0xff3a, 0xff41,
+  0xff42, 0xff43, 0xff44, 0xff45, 0xff46, 0xff47, 0xff48, 0xff49,
+  0xff4a, 0xff4b, 0xff4c, 0xff4d, 0xff4e, 0xff4f, 0xff50, 0xff51,
+  0xff52, 0xff53, 0xff54, 0xff55, 0xff56,
+};
+
+static const unsigned short big5_2003_2uni_pagec6[70] = {
+  /* 0xc6a1 */
+  0x2460, 0x2461, 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, 0x2467,
+  0x2468, 0x2469, 0x2474, 0x2475, 0x2476, 0x2477, 0x2478, 0x2479,
+  0x247a, 0x247b, 0x247c, 0x247d, 0x2170, 0x2171, 0x2172, 0x2173,
+  0x2174, 0x2175, 0x2176, 0x2177, 0x2178, 0x2179, 0x2f02, 0x2f03,
+  0x2f05, 0x2f07, 0x2f0c, 0x2f0d, 0x2f0e, 0x2f13, 0x2f16, 0x2f19,
+  0x2f1b, 0x2f22, 0x2f27, 0x2f2e, 0x2f33, 0x2f34, 0x2f35, 0x2f39,
+  0x2f3a, 0x2f41, 0x2f46, 0x2f67, 0x2f68, 0x2fa1, 0x2faa, 0x00a8,
+  0xff3e, 0x30fd, 0x30fe, 0x309d, 0x309e, 0xfffd, 0xfffd, 0x3005,
+  0x3006, 0x3007, 0x30fc, 0xff3b, 0xff3d, 0x273d,
+};
+
+static const unsigned short big5_2003_2uni_pagef9[41] = {
+  /* 0xf9d6 */
+  0x7881, 0x92b9, 0x88cf, 0x58bb, 0x6052, 0x7ca7, 0x5afa,
+  /* 0xf9dd */
+  0x2554, 0x2566, 0x2557, 0x2560, 0x256c, 0x2563, 0x255a, 0x2569,
+  0x255d, 0x2552, 0x2564, 0x2555, 0x255e, 0x256a, 0x2561, 0x2558,
+  0x2567, 0x255b, 0x2553, 0x2565, 0x2556, 0x255f, 0x256b, 0x2562,
+  0x2559, 0x2568, 0x255c, 0x2551, 0x2550,
+  0x2554, 0x2557, 0x255a, 0x255d, /* not invertible */
+  0x2593,
+};
+
+static int
+big5_2003_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  /* Code set 0 (ASCII) */
+  if (c < 0x80)
+    return ascii_mbtowc(conv,pwc,s,n);
+  /* Code set 1 (BIG5 extended) */
+  if (c >= 0x81 && c < 0xff) {
+    if (n < 2)
+      return RET_TOOFEW(0);
+    {
+      unsigned char c2 = s[1];
+      if ((c2 >= 0x40 && c2 < 0x7f) || (c2 >= 0xa1 && c2 < 0xff)) {
+        if (c >= 0xa1) {
+          if (c < 0xa3) {
+            unsigned int i = 157 * (c - 0xa1) + (c2 - (c2 >= 0xa1 ? 0x62 : 0x40));
+            unsigned short wc = big5_2003_2uni_pagea1[i];
+            if (wc != 0xfffd) {
+              *pwc = (ucs4_t) wc;
+              return 2;
+            }
+          }
+          if (!((c == 0xc6 && c2 >= 0xa1) || c == 0xc7)) {
+            if (!(c == 0xc2 && c2 == 0x55)) {
+              int ret = big5_mbtowc(conv,pwc,s,2);
+              if (ret != RET_ILSEQ)
+                return ret;
+              if (c == 0xa3) {
+                if (c2 >= 0xc0 && c2 <= 0xe1) {
+                  *pwc = (c2 == 0xe1 ? 0x20ac : c2 == 0xe0 ? 0x2421 : 0x2340 + c2);
+                  return 2;
+                }
+              } else if (c == 0xf9) {
+                if (c2 >= 0xd6) {
+                  *pwc = big5_2003_2uni_pagef9[c2-0xd6];
+                  return 2;
+                }
+              } else if (c >= 0xfa) {
+                *pwc = 0xe000 + 157 * (c - 0xfa) + (c2 - (c2 >= 0xa1 ? 0x62 : 0x40));
+                return 2;
+              }
+            } else {
+              /* c == 0xc2 && c2 == 0x55. */
+              *pwc = 0x5f5e;
+              return 2;
+            }
+          } else {
+            /* (c == 0xc6 && c2 >= 0xa1) || c == 0xc7. */
+            unsigned int i = 157 * (c - 0xc6) + (c2 - (c2 >= 0xa1 ? 0x62 : 0x40));
+            if (i < 133) {
+              /* 63 <= i < 133. */
+              unsigned short wc = big5_2003_2uni_pagec6[i-63];
+              if (wc != 0xfffd) {
+                *pwc = (ucs4_t) wc;
+                return 2;
+              }
+            } else if (i < 216) {
+              /* 133 <= i < 216. Hiragana. */
+              *pwc = 0x3041 - 133 + i;
+              return 2;
+            } else if (i < 302) {
+              /* 216 <= i < 302. Katakana. */
+              *pwc = 0x30a1 - 216 + i;
+              return 2;
+            }
+          }
+        } else {
+          /* 0x81 <= c < 0xa1. */
+          *pwc = (c >= 0x8e ? 0xdb18 : 0xeeb8) + 157 * (c - 0x81)
+                 + (c2 - (c2 >= 0xa1 ? 0x62 : 0x40));
+          return 2;
+        }
+      }
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char big5_2003_2charset_page25[29] = {
+  /* 0x2550 */
+  0xf9, 0xf8, 0xe6, 0xef, 0xdd, 0xe8, 0xf1, 0xdf,
+  0xec, 0xf5, 0xe3, 0xee, 0xf7, 0xe5, 0xe9, 0xf2,
+  0xe0, 0xeb, 0xf4, 0xe2, 0xe7, 0xf0, 0xde, 0xed,
+  0xf6, 0xe4, 0xea, 0xf3, 0xe1,
+};
+
+static int
+big5_2003_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char buf[2];
+  int ret;
+
+  /* Code set 0 (ASCII) */
+  ret = ascii_wctomb(conv,r,wc,n);
+  if (ret != RET_ILUNI)
+    return ret;
+
+  /* Code set 1 (BIG5 extended) */
+  switch (wc >> 8) {
+    case 0x00:
+      if (wc == 0x00a8) { buf[0] = 0xc6; buf[1] = 0xd8; ret = 2; break; }
+      if (wc == 0x00a2 || wc == 0x00a3 || wc == 0x00a5)
+        return RET_ILUNI;
+      break;
+    case 0x02:
+      if (wc == 0x02cd) { buf[0] = 0xa1; buf[1] = 0xc5; ret = 2; break; }
+      break;
+    case 0x04:
+      return RET_ILUNI;
+    case 0x20:
+      if (wc == 0x2015) { buf[0] = 0xa1; buf[1] = 0x56; ret = 2; break; }
+      if (wc == 0x2027) { buf[0] = 0xa1; buf[1] = 0x45; ret = 2; break; }
+      if (wc == 0x20ac) { buf[0] = 0xa3; buf[1] = 0xe1; ret = 2; break; }
+      if (wc == 0x2013 || wc == 0x2022)
+        return RET_ILUNI;
+      break;
+    case 0x21:
+      if (wc >= 0x2170 && wc <= 0x2179) {
+        buf[0] = 0xc6; buf[1] = wc - 0x20bb; ret = 2;
+        break;
+      }
+      break;
+    case 0x22:
+      if (wc == 0x2215) { buf[0] = 0xa2; buf[1] = 0x41; ret = 2; break; }
+      if (wc == 0x2295) { buf[0] = 0xa1; buf[1] = 0xf2; ret = 2; break; }
+      if (wc == 0x2299) { buf[0] = 0xa1; buf[1] = 0xf3; ret = 2; break; }
+      if (wc == 0x223c)
+        return RET_ILUNI;
+      break;
+    case 0x24:
+      if (wc <= 0x241f) { buf[0] = 0xa3; buf[1] = wc - 0x2340; ret = 2; break; }
+      if (wc == 0x2421) { buf[0] = 0xa3; buf[1] = 0xe0; ret = 2; break; }
+      if (wc >= 0x2460 && wc <= 0x2469) {
+        buf[0] = 0xc6; buf[1] = wc - 0x23bf; ret = 2;
+        break;
+      }
+      if (wc >= 0x2474 && wc <= 0x247d) {
+        buf[0] = 0xc6; buf[1] = wc - 0x23c9; ret = 2;
+        break;
+      }
+      break;
+    case 0x25:
+      if (wc == 0x2501) { buf[0] = 0xa2; buf[1] = 0xa4; ret = 2; break; }
+      if (wc == 0x251d) { buf[0] = 0xa2; buf[1] = 0xa5; ret = 2; break; }
+      if (wc == 0x2525) { buf[0] = 0xa2; buf[1] = 0xa7; ret = 2; break; }
+      if (wc == 0x253f) { buf[0] = 0xa2; buf[1] = 0xa6; ret = 2; break; }
+      if (wc >= 0x2550 && wc <= 0x256c) {
+        buf[0] = 0xf9; buf[1] = big5_2003_2charset_page25[wc-0x2550]; ret = 2;
+        break;
+      }
+      if (wc == 0x2574) { buf[0] = 0xa1; buf[1] = 0x5a; ret = 2; break; }
+      if (wc == 0x2593) { buf[0] = 0xf9; buf[1] = 0xfe; ret = 2; break; }
+      break;
+    case 0x26:
+      if (wc == 0x2609 || wc == 0x2641)
+        return RET_ILUNI;
+      break;
+    case 0x27:
+      if (wc == 0x273d) { buf[0] = 0xc6; buf[1] = 0xe6; ret = 2; break; }
+      break;
+    case 0x2f:
+      if (wc == 0x2f02) { buf[0] = 0xc6; buf[1] = 0xbf; ret = 2; break; }
+      if (wc == 0x2f03) { buf[0] = 0xc6; buf[1] = 0xc0; ret = 2; break; }
+      if (wc == 0x2f05) { buf[0] = 0xc6; buf[1] = 0xc1; ret = 2; break; }
+      if (wc == 0x2f07) { buf[0] = 0xc6; buf[1] = 0xc2; ret = 2; break; }
+      if (wc == 0x2f0c) { buf[0] = 0xc6; buf[1] = 0xc3; ret = 2; break; }
+      if (wc == 0x2f0d) { buf[0] = 0xc6; buf[1] = 0xc4; ret = 2; break; }
+      if (wc == 0x2f0e) { buf[0] = 0xc6; buf[1] = 0xc5; ret = 2; break; }
+      if (wc == 0x2f13) { buf[0] = 0xc6; buf[1] = 0xc6; ret = 2; break; }
+      if (wc == 0x2f16) { buf[0] = 0xc6; buf[1] = 0xc7; ret = 2; break; }
+      if (wc == 0x2f19) { buf[0] = 0xc6; buf[1] = 0xc8; ret = 2; break; }
+      if (wc == 0x2f1b) { buf[0] = 0xc6; buf[1] = 0xc9; ret = 2; break; }
+      if (wc == 0x2f22) { buf[0] = 0xc6; buf[1] = 0xca; ret = 2; break; }
+      if (wc == 0x2f27) { buf[0] = 0xc6; buf[1] = 0xcb; ret = 2; break; }
+      if (wc == 0x2f2e) { buf[0] = 0xc6; buf[1] = 0xcc; ret = 2; break; }
+      if (wc == 0x2f33) { buf[0] = 0xc6; buf[1] = 0xcd; ret = 2; break; }
+      if (wc == 0x2f34) { buf[0] = 0xc6; buf[1] = 0xce; ret = 2; break; }
+      if (wc == 0x2f35) { buf[0] = 0xc6; buf[1] = 0xcf; ret = 2; break; }
+      if (wc == 0x2f39) { buf[0] = 0xc6; buf[1] = 0xd0; ret = 2; break; }
+      if (wc == 0x2f3a) { buf[0] = 0xc6; buf[1] = 0xd1; ret = 2; break; }
+      if (wc == 0x2f41) { buf[0] = 0xc6; buf[1] = 0xd2; ret = 2; break; }
+      if (wc == 0x2f46) { buf[0] = 0xc6; buf[1] = 0xd3; ret = 2; break; }
+      if (wc == 0x2f67) { buf[0] = 0xc6; buf[1] = 0xd4; ret = 2; break; }
+      if (wc == 0x2f68) { buf[0] = 0xc6; buf[1] = 0xd5; ret = 2; break; }
+      if (wc == 0x2fa1) { buf[0] = 0xc6; buf[1] = 0xd6; ret = 2; break; }
+      if (wc == 0x2faa) { buf[0] = 0xc6; buf[1] = 0xd7; ret = 2; break; }
+      break;
+    case 0x30:
+      if (wc >= 0x3005 && wc <= 0x3007) {
+        buf[0] = 0xc6; buf[1] = wc - 0x2f25; ret = 2;
+        break;
+      }
+      if (wc >= 0x3038 && wc <= 0x303a) {
+        buf[0] = 0xa2; buf[1] = wc - 0x2f6c; ret = 2;
+        break;
+      }
+      if (wc >= 0x3041 && wc <= 0x3093) {
+        if (wc < 0x3059) {
+          buf[0] = 0xc6; buf[1] = wc - 0x2f5a;
+        } else {
+          buf[0] = 0xc7; buf[1] = wc - 0x3019;
+        }
+        ret = 2;
+        break;
+      }
+      if (wc == 0x309d) { buf[0] = 0xc6; buf[1] = 0xdc; ret = 2; break; }
+      if (wc == 0x309e) { buf[0] = 0xc6; buf[1] = 0xdd; ret = 2; break; }
+      if (wc >= 0x30a1 && wc <= 0x30f6) {
+        buf[0] = 0xc7; buf[1] = wc - (wc < 0x30a5 ? 0x3026 : 0x3004); ret = 2;
+        break;
+      }
+      if (wc == 0x30fc) { buf[0] = 0xc6; buf[1] = 0xe3; ret = 2; break; }
+      if (wc == 0x30fd) { buf[0] = 0xc6; buf[1] = 0xda; ret = 2; break; }
+      if (wc == 0x30fe) { buf[0] = 0xc6; buf[1] = 0xdb; ret = 2; break; }
+      break;
+    case 0x53:
+      if (wc == 0x5344)
+        return RET_ILUNI;
+      break;
+    case 0x58:
+      if (wc == 0x58bb) { buf[0] = 0xf9; buf[1] = 0xd9; ret = 2; break; }
+      break;
+    case 0x5a:
+      if (wc == 0x5afa) { buf[0] = 0xf9; buf[1] = 0xdc; ret = 2; break; }
+      break;
+    case 0x5f:
+      if (wc == 0x5f5e) { buf[0] = 0xc2; buf[1] = 0x55; ret = 2; break; }
+      if (wc == 0x5f5d)
+        return RET_ILUNI;
+      break;
+    case 0x60:
+      if (wc == 0x6052) { buf[0] = 0xf9; buf[1] = 0xda; ret = 2; break; }
+      break;
+    case 0x78:
+      if (wc == 0x7881) { buf[0] = 0xf9; buf[1] = 0xd6; ret = 2; break; }
+      break;
+    case 0x7c:
+      if (wc == 0x7ca7) { buf[0] = 0xf9; buf[1] = 0xdb; ret = 2; break; }
+      break;
+    case 0x88:
+      if (wc == 0x88cf) { buf[0] = 0xf9; buf[1] = 0xd8; ret = 2; break; }
+      break;
+    case 0x92:
+      if (wc == 0x92b9) { buf[0] = 0xf9; buf[1] = 0xd7; ret = 2; break; }
+      break;
+    case 0xe0: case 0xe1: case 0xe2: case 0xe3: case 0xe4: case 0xe5:
+    case 0xe6: case 0xe7: case 0xe8: case 0xe9: case 0xea: case 0xeb:
+    case 0xec: case 0xed: case 0xee: case 0xef: case 0xf0: case 0xf1:
+    case 0xf2: case 0xf3: case 0xf4: case 0xf5: case 0xf6:
+      {
+        unsigned int i = wc - 0xe000;
+        if (i < 5809) {
+          unsigned int c1 = i / 157;
+          unsigned int c2 = i % 157;
+          buf[0] = c1 + (c1 < 5 ? 0xfa : c1 < 24 ? 0x89 : 0x69);
+          buf[1] = c2 + (c2 < 0x3f ? 0x40 : 0x62);
+          ret = 2;
+          break;
+        }
+      }
+      break;
+    case 0xfe:
+      if (wc == 0xfe51) { buf[0] = 0xa1; buf[1] = 0x4e; ret = 2; break; }
+      if (wc == 0xfe68) { buf[0] = 0xa2; buf[1] = 0x42; ret = 2; break; }
+      break;
+    case 0xff:
+      if (wc == 0xff0f) { buf[0] = 0xa1; buf[1] = 0xfe; ret = 2; break; }
+      if (wc == 0xff3b) { buf[0] = 0xc6; buf[1] = 0xe4; ret = 2; break; }
+      if (wc == 0xff3c) { buf[0] = 0xa2; buf[1] = 0x40; ret = 2; break; }
+      if (wc == 0xff3d) { buf[0] = 0xc6; buf[1] = 0xe5; ret = 2; break; }
+      if (wc == 0xff3e) { buf[0] = 0xc6; buf[1] = 0xd9; ret = 2; break; }
+      if (wc == 0xff5e) { buf[0] = 0xa1; buf[1] = 0xe3; ret = 2; break; }
+      if (wc == 0xffe0) { buf[0] = 0xa2; buf[1] = 0x46; ret = 2; break; }
+      if (wc == 0xffe1) { buf[0] = 0xa2; buf[1] = 0x47; ret = 2; break; }
+      if (wc == 0xffe3) { buf[0] = 0xa1; buf[1] = 0xc3; ret = 2; break; }
+      if (wc == 0xffe5) { buf[0] = 0xa2; buf[1] = 0x44; ret = 2; break; }
+      if (wc == 0xff64)
+        return RET_ILUNI;
+      break;
+  }
+  if (ret == RET_ILUNI)
+    ret = big5_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = buf[0];
+    r[1] = buf[1];
+    return 2;
+  }
+
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/big5hkscs1999.h b/graf2d/win32gdk/gdk/src/iconv/big5hkscs1999.h
new file mode 100644
index 00000000000..9e0d1b0c4e4
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/big5hkscs1999.h
@@ -0,0 +1,197 @@
+/*
+ * Copyright (C) 1999-2002, 2006 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * BIG5-HKSCS:1999
+ */
+
+/*
+ * BIG5-HKSCS:1999 can be downloaded from
+ *   http://www.info.gov.hk/digital21/eng/hkscs/download.html
+ *   http://www.info.gov.hk/digital21/eng/hkscs/index.html
+ *
+ * It extends BIG5 (without the rows 0xC6..0xC7) through the ranges
+ *
+ *   0x{88..8D}{40..7E,A1..FE}      641 characters
+ *   0x{8E..A0}{40..7E,A1..FE}     2898 characters
+ *   0x{C6..C8}{40..7E,A1..FE}      359 characters
+ *   0xF9{D6..FE}                    41 characters
+ *   0x{FA..FE}{40..7E,A1..FE}      763 characters
+ *
+ * Note that some HKSCS characters are not contained in Unicode 3.2
+ * and are therefore best represented as sequences of Unicode characters:
+ *   0x8862  U+00CA U+0304  LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND MACRON
+ *   0x8864  U+00CA U+030C  LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND CARON
+ *   0x88A3  U+00EA U+0304  LATIN SMALL LETTER E WITH CIRCUMFLEX AND MACRON
+ *   0x88A5  U+00EA U+030C  LATIN SMALL LETTER E WITH CIRCUMFLEX AND CARON
+ */
+
+#include "hkscs1999.h"
+#include "flushwc.h"
+
+static int
+big5hkscs1999_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  ucs4_t last_wc = conv->istate;
+  if (last_wc) {
+    /* Output the buffered character. */
+    conv->istate = 0;
+    *pwc = last_wc;
+    return 0; /* Don't advance the input pointer. */
+  } else {
+    unsigned char c = *s;
+    /* Code set 0 (ASCII) */
+    if (c < 0x80)
+      return ascii_mbtowc(conv,pwc,s,n);
+    /* Code set 1 (BIG5 extended) */
+    if (c >= 0xa1 && c < 0xff) {
+      if (n < 2)
+        return RET_TOOFEW(0);
+      {
+        unsigned char c2 = s[1];
+        if ((c2 >= 0x40 && c2 < 0x7f) || (c2 >= 0xa1 && c2 < 0xff)) {
+          if (!((c == 0xc6 && c2 >= 0xa1) || c == 0xc7)) {
+            int ret = big5_mbtowc(conv,pwc,s,2);
+            if (ret != RET_ILSEQ)
+              return ret;
+          }
+        }
+      }
+    }
+    {
+      int ret = hkscs1999_mbtowc(conv,pwc,s,n);
+      if (ret != RET_ILSEQ)
+        return ret;
+    }
+    if (c == 0x88) {
+      if (n < 2)
+        return RET_TOOFEW(0);
+      {
+        unsigned char c2 = s[1];
+        if (c2 == 0x62 || c2 == 0x64 || c2 == 0xa3 || c2 == 0xa5) {
+          /* It's a composed character. */
+          ucs4_t wc1 = ((c2 >> 3) << 2) + 0x009a; /* = 0x00ca or 0x00ea */
+          ucs4_t wc2 = ((c2 & 6) << 2) + 0x02fc; /* = 0x0304 or 0x030c */
+          /* We cannot output two Unicode characters at once. So,
+             output the first character and buffer the second one. */
+          *pwc = wc1;
+          conv->istate = wc2;
+          return 2;
+        }
+      }
+    }
+    return RET_ILSEQ;
+  }
+}
+
+#define big5hkscs1999_flushwc normal_flushwc
+
+static int
+big5hkscs1999_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  int count = 0;
+  unsigned char last = conv->ostate;
+
+  if (last) {
+    /* last is = 0x66 or = 0xa7. */
+    if (wc == 0x0304 || wc == 0x030c) {
+      /* Output the combined character. */
+      if (n >= 2) {
+        r[0] = 0x88;
+        r[1] = last + ((wc & 24) >> 2) - 4; /* = 0x62 or 0x64 or 0xa3 or 0xa5 */
+        conv->ostate = 0;
+        return 2;
+      } else
+        return RET_TOOSMALL;
+    }
+
+    /* Output the buffered character. */
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = 0x88;
+    r[1] = last;
+    r += 2;
+    count = 2;
+  }
+
+  /* Code set 0 (ASCII) */
+  if (wc < 0x0080) {
+    /* Plain ASCII character. */
+    if (n > count) {
+      r[0] = (unsigned char) wc;
+      conv->ostate = 0;
+      return count+1;
+    } else
+      return RET_TOOSMALL;
+  } else {
+    unsigned char buf[2];
+    int ret;
+
+    /* Code set 1 (BIG5 extended) */
+    ret = big5_wctomb(conv,buf,wc,2);
+    if (ret != RET_ILUNI) {
+      if (ret != 2) abort();
+      if (!((buf[0] == 0xc6 && buf[1] >= 0xa1) || buf[0] == 0xc7)) {
+        if (n >= count+2) {
+          r[0] = buf[0];
+          r[1] = buf[1];
+          conv->ostate = 0;
+          return count+2;
+        } else
+          return RET_TOOSMALL;
+      }
+    }
+    ret = hkscs1999_wctomb(conv,buf,wc,2);
+    if (ret != RET_ILUNI) {
+      if (ret != 2) abort();
+      if ((wc & ~0x0020) == 0x00ca) {
+        /* A possible first character of a multi-character sequence. We have to
+           buffer it. */
+        if (!(buf[0] == 0x88 && (buf[1] == 0x66 || buf[1] == 0xa7))) abort();
+        conv->ostate = buf[1]; /* = 0x66 or = 0xa7 */
+        return count+0;
+      }
+      if (n >= count+2) {
+        r[0] = buf[0];
+        r[1] = buf[1];
+        conv->ostate = 0;
+        return count+2;
+      } else
+        return RET_TOOSMALL;
+    }
+    return RET_ILUNI;
+  }
+}
+
+static int
+big5hkscs1999_reset (conv_t conv, unsigned char *r, int n)
+{
+  unsigned char last = conv->ostate;
+
+  if (last) {
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = 0x88;
+    r[1] = last;
+    /* conv->ostate = 0; will be done by the caller */
+    return 2;
+  } else
+    return 0;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/big5hkscs2001.h b/graf2d/win32gdk/gdk/src/iconv/big5hkscs2001.h
new file mode 100644
index 00000000000..2d378c48066
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/big5hkscs2001.h
@@ -0,0 +1,215 @@
+/*
+ * Copyright (C) 1999-2002, 2006 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * BIG5-HKSCS:2001
+ */
+
+/*
+ * BIG5-HKSCS:2001 can be downloaded from
+ *   http://www.info.gov.hk/digital21/eng/hkscs/download.html
+ *   http://www.info.gov.hk/digital21/eng/hkscs/index.html
+ *
+ * It extends BIG5-HKSCS:1999 through 116 characters.
+ *
+ * It extends BIG5 (without the rows 0xC6..0xC7) through the ranges
+ *
+ *   0x{88..8D}{40..7E,A1..FE}      757 characters
+ *   0x{8E..A0}{40..7E,A1..FE}     2898 characters
+ *   0x{C6..C8}{40..7E,A1..FE}      359 characters
+ *   0xF9{D6..FE}                    41 characters
+ *   0x{FA..FE}{40..7E,A1..FE}      763 characters
+ *
+ * Note that some HKSCS characters are not contained in Unicode 3.2
+ * and are therefore best represented as sequences of Unicode characters:
+ *   0x8862  U+00CA U+0304  LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND MACRON
+ *   0x8864  U+00CA U+030C  LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND CARON
+ *   0x88A3  U+00EA U+0304  LATIN SMALL LETTER E WITH CIRCUMFLEX AND MACRON
+ *   0x88A5  U+00EA U+030C  LATIN SMALL LETTER E WITH CIRCUMFLEX AND CARON
+ */
+
+#include "hkscs2001.h"
+#include "flushwc.h"
+
+static int
+big5hkscs2001_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  ucs4_t last_wc = conv->istate;
+  if (last_wc) {
+    /* Output the buffered character. */
+    conv->istate = 0;
+    *pwc = last_wc;
+    return 0; /* Don't advance the input pointer. */
+  } else {
+    unsigned char c = *s;
+    /* Code set 0 (ASCII) */
+    if (c < 0x80)
+      return ascii_mbtowc(conv,pwc,s,n);
+    /* Code set 1 (BIG5 extended) */
+    if (c >= 0xa1 && c < 0xff) {
+      if (n < 2)
+        return RET_TOOFEW(0);
+      {
+        unsigned char c2 = s[1];
+        if ((c2 >= 0x40 && c2 < 0x7f) || (c2 >= 0xa1 && c2 < 0xff)) {
+          if (!((c == 0xc6 && c2 >= 0xa1) || c == 0xc7)) {
+            int ret = big5_mbtowc(conv,pwc,s,2);
+            if (ret != RET_ILSEQ)
+              return ret;
+          }
+        }
+      }
+    }
+    {
+      int ret = hkscs1999_mbtowc(conv,pwc,s,n);
+      if (ret != RET_ILSEQ)
+        return ret;
+    }
+    {
+      int ret = hkscs2001_mbtowc(conv,pwc,s,n);
+      if (ret != RET_ILSEQ)
+        return ret;
+    }
+    if (c == 0x88) {
+      if (n < 2)
+        return RET_TOOFEW(0);
+      {
+        unsigned char c2 = s[1];
+        if (c2 == 0x62 || c2 == 0x64 || c2 == 0xa3 || c2 == 0xa5) {
+          /* It's a composed character. */
+          ucs4_t wc1 = ((c2 >> 3) << 2) + 0x009a; /* = 0x00ca or 0x00ea */
+          ucs4_t wc2 = ((c2 & 6) << 2) + 0x02fc; /* = 0x0304 or 0x030c */
+          /* We cannot output two Unicode characters at once. So,
+             output the first character and buffer the second one. */
+          *pwc = wc1;
+          conv->istate = wc2;
+          return 2;
+        }
+      }
+    }
+    return RET_ILSEQ;
+  }
+}
+
+#define big5hkscs2001_flushwc normal_flushwc
+
+static int
+big5hkscs2001_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  int count = 0;
+  unsigned char last = conv->ostate;
+
+  if (last) {
+    /* last is = 0x66 or = 0xa7. */
+    if (wc == 0x0304 || wc == 0x030c) {
+      /* Output the combined character. */
+      if (n >= 2) {
+        r[0] = 0x88;
+        r[1] = last + ((wc & 24) >> 2) - 4; /* = 0x62 or 0x64 or 0xa3 or 0xa5 */
+        conv->ostate = 0;
+        return 2;
+      } else
+        return RET_TOOSMALL;
+    }
+
+    /* Output the buffered character. */
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = 0x88;
+    r[1] = last;
+    r += 2;
+    count = 2;
+  }
+
+  /* Code set 0 (ASCII) */
+  if (wc < 0x0080) {
+    /* Plain ASCII character. */
+    if (n > count) {
+      r[0] = (unsigned char) wc;
+      conv->ostate = 0;
+      return count+1;
+    } else
+      return RET_TOOSMALL;
+  } else {
+    unsigned char buf[2];
+    int ret;
+
+    /* Code set 1 (BIG5 extended) */
+    ret = big5_wctomb(conv,buf,wc,2);
+    if (ret != RET_ILUNI) {
+      if (ret != 2) abort();
+      if (!((buf[0] == 0xc6 && buf[1] >= 0xa1) || buf[0] == 0xc7)) {
+        if (n >= count+2) {
+          r[0] = buf[0];
+          r[1] = buf[1];
+          conv->ostate = 0;
+          return count+2;
+        } else
+          return RET_TOOSMALL;
+      }
+    }
+    ret = hkscs1999_wctomb(conv,buf,wc,2);
+    if (ret != RET_ILUNI) {
+      if (ret != 2) abort();
+      if ((wc & ~0x0020) == 0x00ca) {
+        /* A possible first character of a multi-character sequence. We have to
+           buffer it. */
+        if (!(buf[0] == 0x88 && (buf[1] == 0x66 || buf[1] == 0xa7))) abort();
+        conv->ostate = buf[1]; /* = 0x66 or = 0xa7 */
+        return count+0;
+      }
+      if (n >= count+2) {
+        r[0] = buf[0];
+        r[1] = buf[1];
+        conv->ostate = 0;
+        return count+2;
+      } else
+        return RET_TOOSMALL;
+    }
+    ret = hkscs2001_wctomb(conv,buf,wc,2);
+    if (ret != RET_ILUNI) {
+      if (ret != 2) abort();
+      if (n >= count+2) {
+        r[0] = buf[0];
+        r[1] = buf[1];
+        conv->ostate = 0;
+        return count+2;
+      } else
+        return RET_TOOSMALL;
+    }
+    return RET_ILUNI;
+  }
+}
+
+static int
+big5hkscs2001_reset (conv_t conv, unsigned char *r, int n)
+{
+  unsigned char last = conv->ostate;
+
+  if (last) {
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = 0x88;
+    r[1] = last;
+    /* conv->ostate = 0; will be done by the caller */
+    return 2;
+  } else
+    return 0;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/big5hkscs2004.h b/graf2d/win32gdk/gdk/src/iconv/big5hkscs2004.h
new file mode 100644
index 00000000000..3c57f66b18d
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/big5hkscs2004.h
@@ -0,0 +1,231 @@
+/*
+ * Copyright (C) 1999-2002, 2006 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * BIG5-HKSCS:2004
+ */
+
+/*
+ * BIG5-HKSCS:2004 can be downloaded from
+ *   http://www.info.gov.hk/digital21/eng/hkscs/download.html
+ *   http://www.info.gov.hk/digital21/eng/hkscs/index.html
+ *
+ * It extends BIG5-HKSCS:2001 through 123 characters.
+ *
+ * It extends BIG5 (without the rows 0xC6..0xC7) through the ranges
+ *
+ *   0x{87..8D}{40..7E,A1..FE}      880 characters
+ *   0x{8E..A0}{40..7E,A1..FE}     2898 characters
+ *   0x{C6..C8}{40..7E,A1..FE}      359 characters
+ *   0xF9{D6..FE}                    41 characters
+ *   0x{FA..FE}{40..7E,A1..FE}      763 characters
+ *
+ * Note that some HKSCS characters are not contained in Unicode 3.2
+ * and are therefore best represented as sequences of Unicode characters:
+ *   0x8862  U+00CA U+0304  LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND MACRON
+ *   0x8864  U+00CA U+030C  LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND CARON
+ *   0x88A3  U+00EA U+0304  LATIN SMALL LETTER E WITH CIRCUMFLEX AND MACRON
+ *   0x88A5  U+00EA U+030C  LATIN SMALL LETTER E WITH CIRCUMFLEX AND CARON
+ */
+
+#include "hkscs2004.h"
+#include "flushwc.h"
+
+static int
+big5hkscs2004_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  ucs4_t last_wc = conv->istate;
+  if (last_wc) {
+    /* Output the buffered character. */
+    conv->istate = 0;
+    *pwc = last_wc;
+    return 0; /* Don't advance the input pointer. */
+  } else {
+    unsigned char c = *s;
+    /* Code set 0 (ASCII) */
+    if (c < 0x80)
+      return ascii_mbtowc(conv,pwc,s,n);
+    /* Code set 1 (BIG5 extended) */
+    if (c >= 0xa1 && c < 0xff) {
+      if (n < 2)
+        return RET_TOOFEW(0);
+      {
+        unsigned char c2 = s[1];
+        if ((c2 >= 0x40 && c2 < 0x7f) || (c2 >= 0xa1 && c2 < 0xff)) {
+          if (!((c == 0xc6 && c2 >= 0xa1) || c == 0xc7)) {
+            int ret = big5_mbtowc(conv,pwc,s,2);
+            if (ret != RET_ILSEQ)
+              return ret;
+          }
+        }
+      }
+    }
+    {
+      int ret = hkscs1999_mbtowc(conv,pwc,s,n);
+      if (ret != RET_ILSEQ)
+        return ret;
+    }
+    {
+      int ret = hkscs2001_mbtowc(conv,pwc,s,n);
+      if (ret != RET_ILSEQ)
+        return ret;
+    }
+    {
+      int ret = hkscs2004_mbtowc(conv,pwc,s,n);
+      if (ret != RET_ILSEQ)
+        return ret;
+    }
+    if (c == 0x88) {
+      if (n < 2)
+        return RET_TOOFEW(0);
+      {
+        unsigned char c2 = s[1];
+        if (c2 == 0x62 || c2 == 0x64 || c2 == 0xa3 || c2 == 0xa5) {
+          /* It's a composed character. */
+          ucs4_t wc1 = ((c2 >> 3) << 2) + 0x009a; /* = 0x00ca or 0x00ea */
+          ucs4_t wc2 = ((c2 & 6) << 2) + 0x02fc; /* = 0x0304 or 0x030c */
+          /* We cannot output two Unicode characters at once. So,
+             output the first character and buffer the second one. */
+          *pwc = wc1;
+          conv->istate = wc2;
+          return 2;
+        }
+      }
+    }
+    return RET_ILSEQ;
+  }
+}
+
+#define big5hkscs2004_flushwc normal_flushwc
+
+static int
+big5hkscs2004_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  int count = 0;
+  unsigned char last = conv->ostate;
+
+  if (last) {
+    /* last is = 0x66 or = 0xa7. */
+    if (wc == 0x0304 || wc == 0x030c) {
+      /* Output the combined character. */
+      if (n >= 2) {
+        r[0] = 0x88;
+        r[1] = last + ((wc & 24) >> 2) - 4; /* = 0x62 or 0x64 or 0xa3 or 0xa5 */
+        conv->ostate = 0;
+        return 2;
+      } else
+        return RET_TOOSMALL;
+    }
+
+    /* Output the buffered character. */
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = 0x88;
+    r[1] = last;
+    r += 2;
+    count = 2;
+  }
+
+  /* Code set 0 (ASCII) */
+  if (wc < 0x0080) {
+    /* Plain ASCII character. */
+    if (n > count) {
+      r[0] = (unsigned char) wc;
+      conv->ostate = 0;
+      return count+1;
+    } else
+      return RET_TOOSMALL;
+  } else {
+    unsigned char buf[2];
+    int ret;
+
+    /* Code set 1 (BIG5 extended) */
+    ret = big5_wctomb(conv,buf,wc,2);
+    if (ret != RET_ILUNI) {
+      if (ret != 2) abort();
+      if (!((buf[0] == 0xc6 && buf[1] >= 0xa1) || buf[0] == 0xc7)) {
+        if (n >= count+2) {
+          r[0] = buf[0];
+          r[1] = buf[1];
+          conv->ostate = 0;
+          return count+2;
+        } else
+          return RET_TOOSMALL;
+      }
+    }
+    ret = hkscs1999_wctomb(conv,buf,wc,2);
+    if (ret != RET_ILUNI) {
+      if (ret != 2) abort();
+      if ((wc & ~0x0020) == 0x00ca) {
+        /* A possible first character of a multi-character sequence. We have to
+           buffer it. */
+        if (!(buf[0] == 0x88 && (buf[1] == 0x66 || buf[1] == 0xa7))) abort();
+        conv->ostate = buf[1]; /* = 0x66 or = 0xa7 */
+        return count+0;
+      }
+      if (n >= count+2) {
+        r[0] = buf[0];
+        r[1] = buf[1];
+        conv->ostate = 0;
+        return count+2;
+      } else
+        return RET_TOOSMALL;
+    }
+    ret = hkscs2001_wctomb(conv,buf,wc,2);
+    if (ret != RET_ILUNI) {
+      if (ret != 2) abort();
+      if (n >= count+2) {
+        r[0] = buf[0];
+        r[1] = buf[1];
+        conv->ostate = 0;
+        return count+2;
+      } else
+        return RET_TOOSMALL;
+    }
+    ret = hkscs2004_wctomb(conv,buf,wc,2);
+    if (ret != RET_ILUNI) {
+      if (ret != 2) abort();
+      if (n >= count+2) {
+        r[0] = buf[0];
+        r[1] = buf[1];
+        conv->ostate = 0;
+        return count+2;
+      } else
+        return RET_TOOSMALL;
+    }
+    return RET_ILUNI;
+  }
+}
+
+static int
+big5hkscs2004_reset (conv_t conv, unsigned char *r, int n)
+{
+  unsigned char last = conv->ostate;
+
+  if (last) {
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = 0x88;
+    r[1] = last;
+    /* conv->ostate = 0; will be done by the caller */
+    return 2;
+  } else
+    return 0;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/c99.h b/graf2d/win32gdk/gdk/src/iconv/c99.h
new file mode 100644
index 00000000000..52a73c354da
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/c99.h
@@ -0,0 +1,125 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * C99
+ * This is ASCII with \uXXXX and \UXXXXXXXX escape sequences, denoting Unicode
+ * characters. See ISO/IEC 9899:1999, section 6.4.3.
+ * The treatment of control characters in the range U+0080..U+009F is not
+ * specified; we pass them through unmodified.
+ */
+
+static int
+c99_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c;
+  ucs4_t wc;
+  int i;
+
+  c = s[0];
+  if (c < 0xa0) {
+    if (c != '\\') {
+      *pwc = c;
+      return 1;
+    }
+    if (n < 2)
+      return RET_TOOFEW(0);
+    c = s[1];
+    if (c == 'u') {
+      wc = 0;
+      for (i = 2; i < 6; i++) {
+        if (n <= i)
+          return RET_TOOFEW(0);
+        c = s[i];
+        if (c >= '0' && c <= '9')
+          c -= '0';
+        else if (c >= 'A' && c <= 'Z')
+          c -= 'A'-10;
+        else if (c >= 'a' && c <= 'z')
+          c -= 'a'-10;
+        else
+          goto simply_backslash;
+        wc |= (ucs4_t) c << (4 * (5-i));
+      }
+      if ((wc >= 0x00a0 && !(wc >= 0xd800 && wc < 0xe000))
+          || wc == 0x0024 || wc == 0x0040 || wc == 0x0060) {
+        *pwc = wc;
+        return 6;
+      }
+    } else if (c == 'U') {
+      wc = 0;
+      for (i = 2; i < 10; i++) {
+        if (n <= i)
+          return RET_TOOFEW(0);
+        c = s[i];
+        if (c >= '0' && c <= '9')
+          c -= '0';
+        else if (c >= 'A' && c <= 'Z')
+          c -= 'A'-10;
+        else if (c >= 'a' && c <= 'z')
+          c -= 'a'-10;
+        else
+          goto simply_backslash;
+        wc |= (ucs4_t) c << (4 * (9-i));
+      }
+      if ((wc >= 0x00a0 && !(wc >= 0xd800 && wc < 0xe000))
+          || wc == 0x0024 || wc == 0x0040 || wc == 0x0060) {
+        *pwc = wc;
+        return 10;
+      }
+    } else
+      goto simply_backslash;
+  }
+  return RET_ILSEQ;
+simply_backslash:
+  *pwc = '\\';
+  return 1;
+}
+
+static int
+c99_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (wc < 0xa0) {
+    *r = wc;
+    return 1;
+  } else {
+    int result;
+    unsigned char u;
+    if (wc < 0x10000) {
+      result = 6;
+      u = 'u';
+    } else {
+      result = 10;
+      u = 'U';
+    }
+    if (n >= result) {
+      int count;
+      r[0] = '\\';
+      r[1] = u;
+      r += 2;
+      for (count = result-3; count >= 0; count--) {
+        unsigned int i = (wc >> (4*count)) & 0x0f;
+        *r++ = (i < 10 ? '0'+i : 'a'-10+i);
+      }
+      return result;
+    } else
+      return RET_TOOSMALL;
+  }
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/canonical.h b/graf2d/win32gdk/gdk/src/iconv/canonical.h
new file mode 100644
index 00000000000..136cf7556d2
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/canonical.h
@@ -0,0 +1,109 @@
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str287,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str255,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str179,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str367,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str283,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str263,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str409,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str325,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str242,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str434,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str350,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str252,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str440,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str356,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str575,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str406,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str723,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str448,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str765,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str30,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str600,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str74,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str84,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str78,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str168,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str82,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str76,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str410,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str90,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str98,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str221,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str75,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str79,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str169,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str83,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str77,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str261,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str403,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str480,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str164,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str18,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str28,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str22,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str112,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str26,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str20,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str354,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str34,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str166,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str27,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str19,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str11,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str451,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str531,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str355,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str501,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str673,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str302,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str621,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str577,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str786,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str908,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str563,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str445,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str502,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str475,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str279,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str626,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str614,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str217,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str212,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str218,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str371,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str15,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str230,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str278,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str124,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str180,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str413,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str555,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str571,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str492,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str384,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str368,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str127,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str202,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str535,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str429,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str32,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str607,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str500,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str505,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str70,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str303,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str24,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str378,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str142,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str196,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str159,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str473,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str277,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str170,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str900,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str888,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str527,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str290,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str91,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str768,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str362,
diff --git a/graf2d/win32gdk/gdk/src/iconv/canonical_aix.h b/graf2d/win32gdk/gdk/src/iconv/canonical_aix.h
new file mode 100644
index 00000000000..6149bc1bf5a
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/canonical_aix.h
@@ -0,0 +1,9 @@
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_aix_0,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_aix_1,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_aix_2,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_aix_3,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_aix_4,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_aix_5,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_aix_6,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_aix_10,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_aix_14,
diff --git a/graf2d/win32gdk/gdk/src/iconv/canonical_aix_sysaix.h b/graf2d/win32gdk/gdk/src/iconv/canonical_aix_sysaix.h
new file mode 100644
index 00000000000..8b58d1fa8c9
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/canonical_aix_sysaix.h
@@ -0,0 +1,9 @@
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_aix_0,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_aix_2,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_aix_4,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_aix_6,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_aix_8,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_aix_10,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_aix_12,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_aix_16,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_aix_20,
diff --git a/graf2d/win32gdk/gdk/src/iconv/canonical_dos.h b/graf2d/win32gdk/gdk/src/iconv/canonical_dos.h
new file mode 100644
index 00000000000..aa82651cd4a
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/canonical_dos.h
@@ -0,0 +1,15 @@
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_dos_0,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_dos_4,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_dos_5,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_dos_8,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_dos_12,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_dos_13,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_dos_17,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_dos_21,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_dos_22,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_dos_26,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_dos_31,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_dos_35,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_dos_38,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_dos_42,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_dos_47,
diff --git a/graf2d/win32gdk/gdk/src/iconv/canonical_extra.h b/graf2d/win32gdk/gdk/src/iconv/canonical_extra.h
new file mode 100644
index 00000000000..29678a084ec
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/canonical_extra.h
@@ -0,0 +1,7 @@
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_extra_0,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_extra_2,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_extra_4,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_extra_6,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_extra_7,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_extra_9,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_extra_11,
diff --git a/graf2d/win32gdk/gdk/src/iconv/canonical_local.h b/graf2d/win32gdk/gdk/src/iconv/canonical_local.h
new file mode 100644
index 00000000000..a2209a820c2
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/canonical_local.h
@@ -0,0 +1,2 @@
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str271,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str664,
diff --git a/graf2d/win32gdk/gdk/src/iconv/canonical_local_sysaix.h b/graf2d/win32gdk/gdk/src/iconv/canonical_local_sysaix.h
new file mode 100644
index 00000000000..0d4b27ba570
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/canonical_local_sysaix.h
@@ -0,0 +1,2 @@
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str307,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str543,
diff --git a/graf2d/win32gdk/gdk/src/iconv/canonical_local_syshpux.h b/graf2d/win32gdk/gdk/src/iconv/canonical_local_syshpux.h
new file mode 100644
index 00000000000..8e969231a6b
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/canonical_local_syshpux.h
@@ -0,0 +1,2 @@
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str258,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str390,
diff --git a/graf2d/win32gdk/gdk/src/iconv/canonical_local_sysosf1.h b/graf2d/win32gdk/gdk/src/iconv/canonical_local_sysosf1.h
new file mode 100644
index 00000000000..e1f886c0d9e
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/canonical_local_sysosf1.h
@@ -0,0 +1,2 @@
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str275,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str465,
diff --git a/graf2d/win32gdk/gdk/src/iconv/canonical_local_syssolaris.h b/graf2d/win32gdk/gdk/src/iconv/canonical_local_syssolaris.h
new file mode 100644
index 00000000000..ce73d70655d
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/canonical_local_syssolaris.h
@@ -0,0 +1,2 @@
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str38,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str515,
diff --git a/graf2d/win32gdk/gdk/src/iconv/canonical_osf1.h b/graf2d/win32gdk/gdk/src/iconv/canonical_osf1.h
new file mode 100644
index 00000000000..0e134ac3174
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/canonical_osf1.h
@@ -0,0 +1,2 @@
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_osf1_0,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_osf1_1,
diff --git a/graf2d/win32gdk/gdk/src/iconv/canonical_osf1_sysosf1.h b/graf2d/win32gdk/gdk/src/iconv/canonical_osf1_sysosf1.h
new file mode 100644
index 00000000000..15c27690892
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/canonical_osf1_sysosf1.h
@@ -0,0 +1,2 @@
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_osf1_0,
+  (int)(long)&((struct stringpool2_t *)0)->stringpool_osf1_2,
diff --git a/graf2d/win32gdk/gdk/src/iconv/canonical_sysaix.h b/graf2d/win32gdk/gdk/src/iconv/canonical_sysaix.h
new file mode 100644
index 00000000000..73f0e5d3091
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/canonical_sysaix.h
@@ -0,0 +1,109 @@
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str383,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str363,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str231,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str604,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str483,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str327,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str652,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str531,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str358,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str733,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str612,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str364,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str737,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str616,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str685,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str501,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str654,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str549,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str702,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str53,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str891,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str103,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str109,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str107,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str205,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str111,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str105,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str437,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str115,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str141,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str246,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str108,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str112,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str210,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str116,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str110,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str254,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str492,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str569,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str175,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str37,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str43,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str41,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str139,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str45,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str39,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str371,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str49,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str173,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str38,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str34,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str32,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str525,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str797,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str462,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str583,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str807,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str272,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str898,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str606,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str662,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str989,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str648,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str391,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str487,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str413,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str330,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str461,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str335,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str152,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str171,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str234,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str445,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str36,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str207,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str300,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str217,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str256,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str567,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str723,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str735,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str660,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str258,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str235,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str149,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str202,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str638,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str613,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str52,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str629,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str591,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str594,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str188,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str146,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str48,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str251,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str179,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str190,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str92,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str495,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str153,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str186,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str603,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str584,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str324,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str369,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str133,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str885,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str360,
diff --git a/graf2d/win32gdk/gdk/src/iconv/canonical_syshpux.h b/graf2d/win32gdk/gdk/src/iconv/canonical_syshpux.h
new file mode 100644
index 00000000000..53ed782e316
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/canonical_syshpux.h
@@ -0,0 +1,109 @@
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str310,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str368,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str293,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str464,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str525,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str395,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str515,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str576,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str355,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str521,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str582,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str363,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str534,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str595,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str440,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str665,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str644,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str716,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str695,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str36,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str596,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str64,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str60,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str100,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str162,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str76,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str70,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str158,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str86,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str92,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str177,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str67,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str103,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str165,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str79,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str73,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str345,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str669,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str790,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str131,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str21,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str17,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str57,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str119,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str33,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str27,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str115,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str43,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str141,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str24,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str34,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str35,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str448,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str561,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str410,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str335,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str470,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str704,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str685,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str607,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str689,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str800,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str454,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str195,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str331,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str484,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str202,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str449,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str513,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str139,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str190,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str262,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str603,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str71,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str149,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str170,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str251,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str271,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str450,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str769,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str791,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str710,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str354,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str332,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str153,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str203,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str491,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str461,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str42,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str542,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str473,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str471,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str30,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str314,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str52,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str352,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str81,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str96,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str12,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str378,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str308,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str144,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str771,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str757,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str421,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str343,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str105,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str654,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str394,
diff --git a/graf2d/win32gdk/gdk/src/iconv/canonical_sysosf1.h b/graf2d/win32gdk/gdk/src/iconv/canonical_sysosf1.h
new file mode 100644
index 00000000000..62f642e93e7
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/canonical_sysosf1.h
@@ -0,0 +1,109 @@
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str343,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str268,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str223,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str591,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str433,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str319,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str639,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str481,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str263,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str633,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str475,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str269,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str637,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str479,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str560,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str472,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str695,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str520,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str743,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str53,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str711,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str103,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str109,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str107,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str205,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str111,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str105,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str407,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str115,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str141,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str246,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str108,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str112,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str210,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str116,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str110,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str280,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str410,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str487,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str175,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str37,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str43,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str41,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str139,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str45,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str39,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str341,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str49,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str173,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str38,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str34,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str32,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str543,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str727,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str428,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str544,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str761,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str281,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str821,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str649,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str661,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str939,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str646,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str362,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str458,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str500,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str369,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str397,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str442,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str178,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str202,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str234,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str417,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str36,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str253,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str285,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str245,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str238,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str515,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str671,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str683,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str608,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str266,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str243,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str149,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str228,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str581,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str612,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str52,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str593,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str524,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str527,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str167,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str206,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str48,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str259,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str179,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str190,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str60,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str426,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str198,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str186,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str843,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str824,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str511,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str374,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str133,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str807,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str386,
diff --git a/graf2d/win32gdk/gdk/src/iconv/canonical_syssolaris.h b/graf2d/win32gdk/gdk/src/iconv/canonical_syssolaris.h
new file mode 100644
index 00000000000..6e8c4abb7ea
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/canonical_syssolaris.h
@@ -0,0 +1,109 @@
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str463,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str258,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str314,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str482,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str365,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str278,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str464,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str347,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str279,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str470,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str353,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str378,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str546,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str429,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str588,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str510,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str563,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str492,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str545,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str30,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str569,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str124,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str184,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str230,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str148,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str160,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str138,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str452,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str122,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str136,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str175,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str129,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str235,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str153,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str165,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str143,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str276,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str680,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str684,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str127,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str81,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str141,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str187,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str105,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str117,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str95,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str409,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str79,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str91,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str94,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str48,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str86,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str387,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str451,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str346,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str415,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str489,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str389,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str752,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str774,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str953,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str853,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str432,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str513,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str297,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str502,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str372,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str412,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str419,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str478,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str71,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str62,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str266,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str192,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str246,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str215,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str424,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str307,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str507,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str669,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str667,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str706,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str211,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str320,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str202,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str283,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str400,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str714,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str147,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str556,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str554,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str584,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str67,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str516,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str101,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str271,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str223,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str327,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str99,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str540,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str293,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str98,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str901,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str895,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str666,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str255,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str58,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str691,
+  (int)(long)&((struct stringpool_t *)0)->stringpool_str411,
diff --git a/graf2d/win32gdk/gdk/src/iconv/ces_big5.h b/graf2d/win32gdk/gdk/src/iconv/ces_big5.h
new file mode 100644
index 00000000000..2f87735bcd3
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/ces_big5.h
@@ -0,0 +1,70 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * BIG-5
+ */
+
+static int
+ces_big5_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  /* Code set 0 (ASCII) */
+  if (c < 0x80)
+    return ascii_mbtowc(conv,pwc,s,n);
+  /* Code set 1 (BIG5) */
+  if (c >= 0xa1 && c < 0xff) {
+    if (n < 2)
+      return RET_TOOFEW(0);
+    {
+      unsigned char c2 = s[1];
+      if ((c2 >= 0x40 && c2 < 0x7f) || (c2 >= 0xa1 && c2 < 0xff))
+        return big5_mbtowc(conv,pwc,s,2);
+      else
+        return RET_ILSEQ;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static int
+ces_big5_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char buf[2];
+  int ret;
+
+  /* Code set 0 (ASCII) */
+  ret = ascii_wctomb(conv,r,wc,n);
+  if (ret != RET_ILUNI)
+    return ret;
+
+  /* Code set 1 (BIG5) */
+  ret = big5_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = buf[0];
+    r[1] = buf[1];
+    return 2;
+  }
+
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/ces_gbk.h b/graf2d/win32gdk/gdk/src/iconv/ces_gbk.h
new file mode 100644
index 00000000000..69e61f7dc50
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/ces_gbk.h
@@ -0,0 +1,65 @@
+/*
+ * Copyright (C) 1999-2001, 2005 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * GBK
+ */
+
+static int
+ces_gbk_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+
+  /* Code set 0 (ASCII or GB 1988-89) */
+  if (c < 0x80)
+    return ascii_mbtowc(conv,pwc,s,n);
+  /* Code set 1 (GBK) */
+  if (c >= 0x81 && c < 0xff) {
+    if (n < 2)
+      return RET_TOOFEW(0);
+    return gbk_mbtowc(conv,pwc,s,2);
+  }
+  return RET_ILSEQ;
+}
+
+static int
+ces_gbk_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char buf[2];
+  int ret;
+
+  /* Code set 0 (ASCII or GB 1988-89) */
+  ret = ascii_wctomb(conv,r,wc,n);
+  if (ret != RET_ILUNI)
+    return ret;
+
+  /* Code set 1 (GBK) */
+  ret = gbk_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = buf[0];
+    r[1] = buf[1];
+    return 2;
+  }
+
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cjk_variants.h b/graf2d/win32gdk/gdk/src/iconv/cjk_variants.h
new file mode 100644
index 00000000000..23cb4b3263c
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cjk_variants.h
@@ -0,0 +1,4241 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CJK variants table
+ */
+
+static const unsigned short cjk_variants[12038] = {
+  0x9e44, 0x1e2a, 0x200b, 0xcb87, 0xaf0c, 0x9e0a, 0x9e0b, 0xd42c,
+  0x23c1, 0xaf0e, 0x9e04, 0x9e05, 0xa176, 0xd207, 0x2303, 0xa304,
+  0x1e12, 0x619c, 0xeb57, 0x9e11, 0x2c02, 0xac08, 0x1e17, 0xa34b,
+  0x1e16, 0xa34b, 0x1e20, 0xa775, 0xb96d, 0x23e2, 0x3a37, 0x3b09,
+  0xd5c2, 0xb771, 0x4cf8, 0xcd72, 0x1e22, 0xa3be, 0x1e18, 0xa775,
+  0x1e24, 0xa169, 0x1e1f, 0xa3be, 0xe149, 0x1e21, 0xa169, 0x23b3,
+  0xa6b4, 0x20a1, 0x2e76, 0xcadd, 0xa5aa, 0x00f6, 0x200b, 0xcb87,
+  0x3792, 0x3860, 0xb90f, 0xc23f, 0x5c4a, 0x5c50, 0x673b, 0x674a,
+  0x68a8, 0xe8ce, 0x9e33, 0x9e32, 0xd1e8, 0x40ba, 0xc232, 0x2a6f,
+  0xee97, 0x3319, 0x34e7, 0xd209, 0xa3ca, 0x2208, 0xd2c5, 0x2efc,
+  0xdffa, 0x0006, 0x9e94, 0x1e46, 0xe579, 0x1e45, 0xe579, 0x2c1b,
+  0x2e7a, 0x2e85, 0x6ebc, 0xeebd, 0xcfa9, 0xc0cf, 0x397d, 0xba02,
+  0x1f17, 0x3500, 0x473e, 0xd846, 0xa5ac, 0x564e, 0xd65d, 0x1e58,
+  0xb909, 0x1e57, 0xb909, 0x6690, 0x66a0, 0xe6b1, 0xcfd2, 0x60f7,
+  0x6109, 0x610a, 0xe115, 0xb6f8, 0x2158, 0xa9cb, 0xdcb7, 0x1e82,
+  0xe1e0, 0x1e7e, 0x1e81, 0xbf27, 0x1e79, 0x1e81, 0x2e72, 0xbf27,
+  0x6f9c, 0xef9f, 0x1e79, 0x1e7e, 0xbf27, 0x1e71, 0xe1e0, 0x36b8,
+  0xc7ad, 0xdc6b, 0xc22d, 0x1e8b, 0xa3d3, 0x1e8a, 0xa3d3, 0xaf0d,
+  0x1e8f, 0x1e90, 0xb5bc, 0x1e8e, 0x1e90, 0x35bc, 0xd667, 0x1e8e,
+  0x9e8f, 0x1f1d, 0xe6f2, 0x9e44, 0xa6db, 0x2c81, 0x2d57, 0x3b72,
+  0xbb73, 0x9e99, 0x9e98, 0x1e9c, 0x9e9e, 0x1e9a, 0x9e9e, 0x3589,
+  0x358a, 0x6f4a, 0xef50, 0x1e9a, 0x9e9c, 0xc10f, 0x1ebe, 0xa166,
+  0x4522, 0xc523, 0x4546, 0x4552, 0x455d, 0xc55e, 0x9eaf, 0x9eb0,
+  0x9eab, 0x9eac, 0xa91c, 0xd9aa, 0xd93b, 0xa6b2, 0x9ebb, 0x9eba,
+  0x1ea1, 0xa166, 0xa104, 0xafce, 0x20cd, 0x22a8, 0xa2d5, 0x1ed8,
+  0xa0c5, 0xa0d5, 0xdb8e, 0xa0df, 0x21ab, 0x21b0, 0xbc37, 0x2f93,
+  0xaf9e, 0x9f5b, 0x1f1e, 0xa098, 0x1f96, 0x2d18, 0xad19, 0x1efa,
+  0xa009, 0x9ec5, 0x20ca, 0xa0f2, 0xa40c, 0x9eed, 0xaf74, 0x214f,
+  0x6577, 0x6578, 0xe57f, 0xa100, 0xa011, 0x9ede, 0x2047, 0xa3cd,
+  0x1fa1, 0xa0f9, 0x1ed3, 0xa009, 0x9fc7, 0x2f6c, 0xb58c, 0x9f4e,
+  0x2023, 0x2f77, 0x2fac, 0x4706, 0xeae3, 0x20a0, 0xc26b, 0xae11,
+  0x1e51, 0x473e, 0xd846, 0xa12a, 0xa925, 0xb703, 0xa0b4, 0xa005,
+  0x1e91, 0x1f20, 0xa0b3, 0x1ed0, 0x2098, 0xce56, 0xa049, 0x1f1d,
+  0xa0b3, 0x9fe5, 0x9fd4, 0xa0b7, 0xa000, 0xa02b, 0xa096, 0x207d,
+  0xa0de, 0x1f47, 0xcada, 0xa2aa, 0x1f32, 0x1f60, 0xa11e, 0x1f31,
+  0x1f60, 0xa11e, 0x9f90, 0xd0c4, 0x9f40, 0x9f3c, 0xb014, 0x9f2b,
+  0xae03, 0x9efe, 0x4b28, 0x5eb0, 0x5ec6, 0x6ab5, 0xead4, 0xa360,
+  0x6918, 0xe980, 0x1ecf, 0x2f7f, 0xeaf4, 0xa05a, 0x9fab, 0x1f31,
+  0x1f32, 0x211e, 0xa9b3, 0xa0ad, 0xa0c9, 0xaf8a, 0x3cd5, 0xc04b,
+  0x2002, 0xae76, 0xaf88, 0xa058, 0x29b7, 0xa9ea, 0xb765, 0x6625,
+  0x6634, 0x6670, 0xe682, 0xb549, 0x9f35, 0x9ed1, 0x5350, 0xd5a6,
+  0x9fe0, 0x1ef7, 0xa0f9, 0x9fb6, 0xa0e5, 0x2075, 0xe049, 0xa074,
+  0xa0d1, 0xa108, 0xa115, 0x9f5e, 0xa102, 0x2118, 0xac3d, 0xc7e6,
+  0x9fa3, 0xac40, 0xc537, 0x9fe3, 0xccfb, 0x9efc, 0xa101, 0xdf14,
+  0xc23c, 0x1f23, 0xb093, 0xa16a, 0xcae2, 0x9fa0, 0xda2b, 0x9fee,
+  0x9fc1, 0x9f21, 0xa114, 0xa13c, 0xa006, 0xa137, 0xa008, 0x2039,
+  0xa109, 0x1fe2, 0xd129, 0xa036, 0x209a, 0xb548, 0x2079, 0x2099,
+  0x20c3, 0xa907, 0x4ca5, 0xeb3b, 0x30de, 0xbb23, 0x9f25, 0x1f75,
+  0xae76, 0x207a, 0x24b1, 0xa592, 0x9f1c, 0x9fe9, 0x9feb, 0x1ed3,
+  0x9efa, 0xa06c, 0x00f6, 0x1e2a, 0xcb87, 0xd146, 0xa010, 0xa00f,
+  0x9eec, 0xae78, 0xa0b9, 0x2fa3, 0xd5c9, 0x1eff, 0xc706, 0xa03c,
+  0x22b5, 0xa2cc, 0x9f26, 0xa25a, 0x9ff1, 0x1fed, 0xa109, 0xa0b5,
+  0xa024, 0xa0be, 0xd2f1, 0xdcf0, 0x9eee, 0x9f1f, 0x5d0b, 0x5d17,
+  0xdd5d, 0x9f83, 0xa0c0, 0x9f5c, 0xafa4, 0xe03c, 0x200a, 0xa0af,
+  0x9fa7, 0x1fa6, 0xe049, 0xa078, 0xa077, 0x1ffb, 0x2099, 0x20c3,
+  0xa907, 0x2003, 0x24b1, 0xa592, 0xa0c2, 0x1f2a, 0xa0de, 0xa0e8,
+  0xa11f, 0x4f75, 0x69e1, 0xea82, 0xafac, 0xb770, 0x9f27, 0x1ed0,
+  0x1f1e, 0xce56, 0x1ffb, 0x2079, 0x20c3, 0xa907, 0x1ff2, 0xb548,
+  0xafad, 0x1f10, 0xc26b, 0x1e26, 0x2e76, 0xcadd, 0xabb6, 0xa10e,
+  0xa13b, 0xa110, 0xa132, 0xa13a, 0x9f63, 0xa06c, 0x1f1d, 0x9f20,
+  0x9f1b, 0xa03a, 0x9f24, 0xa01e, 0xa03e, 0xa059, 0xa07b, 0x1ffb,
+  0x2079, 0x2099, 0xa907, 0xafb1, 0x9ec5, 0x9f65, 0x9ed9, 0x1ec2,
+  0x22a8, 0xa2d5, 0x9fa8, 0x9ec6, 0xb55e, 0xc67b, 0x1f2a, 0xa07d,
+  0x9ec9, 0xa0ed, 0x9fa5, 0xa07e, 0xa0f4, 0x3076, 0x30aa, 0xb0e1,
+  0xa0e3, 0xe6c7, 0x9ed9, 0xa0e9, 0x1ef7, 0x9fa1, 0x9eea, 0x9fca,
+  0x9fac, 0x9ebf, 0x9fa9, 0x1fed, 0xa039, 0xa0a4, 0xa0a7, 0x9fe6,
+  0x9faa, 0x1fad, 0xac3d, 0x1f31, 0x1f32, 0x9f60, 0xa07f, 0xa139,
+  0x9f18, 0xa0a8, 0x9fea, 0xa127, 0xa0a9, 0xa0a5, 0x9fe8, 0x2150,
+  0xa152, 0xcc2a, 0xa1f6, 0x406e, 0xc097, 0x214c, 0xa151, 0x224b,
+  0x22ca, 0xac05, 0x214a, 0xa151, 0xa154, 0x1ee7, 0x6577, 0x6578,
+  0xe57f, 0x213f, 0xa152, 0x214a, 0xa14c, 0x213f, 0xa150, 0xa14e,
+  0xa157, 0xa156, 0x1e68, 0xa9cb, 0xeee8, 0xa160, 0xa15c, 0xb5f7,
+  0x1ea1, 0x9ebe, 0xa185, 0x1e21, 0x9e24, 0x9fde, 0xd62d, 0x2929,
+  0x6754, 0xe75d, 0x24b2, 0x4b11, 0x65a2, 0x65d7, 0xe5dc, 0xd208,
+  0x9e0c, 0x530a, 0xd332, 0x4faa, 0xe90a, 0x4363, 0xc378, 0xa180,
+  0xa17e, 0xa6c5, 0xa18b, 0xae3d, 0xa189, 0xa167, 0x2706, 0x270e,
+  0xa713, 0xaca1, 0xa184, 0x218c, 0xcb27, 0xa182, 0x218a, 0xcb27,
+  0x226e, 0xa3e7, 0xa6e7, 0xa192, 0xd0c4, 0xa190, 0xab82, 0x21a9,
+  0xabeb, 0xdecd, 0xdfb2, 0x2b90, 0xab9c, 0xa85a, 0xb700, 0xabc3,
+  0x2bbc, 0xabc7, 0xabcc, 0x2199, 0xabeb, 0x2e42, 0xcf83, 0x1ecc,
+  0x21b0, 0xbc37, 0x3638, 0xef15, 0xe9ae, 0x1ecc, 0x21ab, 0xbc37,
+  0xa1b4, 0x3c96, 0xd85d, 0xbc7a, 0xa1b1, 0xbcc1, 0xbcef, 0xa1cd,
+  0xbd0c, 0x21c8, 0xbde8, 0xbd7c, 0xbd82, 0x3053, 0x30bd, 0xbdd2,
+  0xbdb8, 0x21d6, 0xbe96, 0xa1c0, 0xbdbc, 0xa1bb, 0xbe1b, 0xbe4a,
+  0xc69a, 0xb817, 0x21c6, 0xbe96, 0x21dc, 0xbf9f, 0x21db, 0xbf9f,
+  0x4108, 0x4155, 0x4188, 0xc199, 0x2e7e, 0xb73a, 0x21e2, 0xa1e3,
+  0x21e1, 0xa1e3, 0x21e1, 0xa1e2, 0xecf3, 0xac45, 0x2904, 0xd655,
+  0x21ec, 0x21ee, 0x68a8, 0x68cc, 0xe8ce, 0xece7, 0x21e8, 0x21ee,
+  0x68a8, 0x68cc, 0xe8ce, 0x21f4, 0x317f, 0xb191, 0x21e8, 0x21ec,
+  0x68a8, 0x68cc, 0xe8ce, 0xa1f1, 0xa1ef, 0x2c32, 0x2c34, 0x2c36,
+  0x2c37, 0xeb50, 0xbac8, 0x21ed, 0x317f, 0xb191, 0xa147, 0x2757,
+  0x284a, 0xa8a4, 0x2c80, 0xef63, 0x3483, 0xb4ca, 0xa1fe, 0xa1fd,
+  0xe47f, 0x2202, 0xe1d6, 0x2200, 0xe1d6, 0xa204, 0xa203, 0x221b,
+  0xa275, 0x1e42, 0xd2c5, 0xb81e, 0xd2bb, 0x2283, 0x2290, 0xc53b,
+  0xa6ed, 0xb289, 0xa289, 0xa247, 0xa25b, 0x2205, 0x2231, 0x224f,
+  0x2259, 0xa275, 0xa22a, 0xa22b, 0x2227, 0x223c, 0xa2ab, 0x2226,
+  0x223c, 0xa2ab, 0x624b, 0x6464, 0xe4c7, 0xa220, 0x2225, 0xaf46,
+  0x2257, 0x2277, 0x63df, 0xe4f2, 0xa244, 0xe8b3, 0x221b, 0x224f,
+  0x2259, 0xa275, 0xa241, 0xd8fd, 0xa24e, 0xa23e, 0x2226, 0x2227,
+  0xa2ab, 0xa28a, 0xa23a, 0xa28c, 0xa274, 0xa234, 0x2264, 0xa291,
+  0xeb00, 0xa22d, 0xa219, 0x214b, 0x22ca, 0xac05, 0xbe82, 0xbb6c,
+  0xa239, 0x221b, 0x2231, 0x2259, 0xa275, 0x226e, 0xa3e7, 0x2263,
+  0x2271, 0x228d, 0x228e, 0x2292, 0x2294, 0x61f0, 0xe1fc, 0x222c,
+  0x2277, 0x63df, 0xe4f2, 0x221b, 0x2231, 0x224f, 0xa275, 0xa033,
+  0xa21a, 0xa265, 0x2251, 0x2271, 0x228d, 0x228e, 0x2292, 0x2294,
+  0x61f0, 0xe1fc, 0x2242, 0xa291, 0xa25d, 0x65b9, 0xe609, 0xa287,
+  0xa270, 0x218e, 0x2250, 0xa3e7, 0xa269, 0x2251, 0x2263, 0x228d,
+  0x228e, 0x2292, 0x2294, 0x61f0, 0xe1fc, 0xb72d, 0xa240, 0x2205,
+  0x221b, 0x2231, 0x224f, 0xa259, 0x222c, 0x2257, 0x63df, 0xe4f2,
+  0xb22e, 0xa2e6, 0x2212, 0x2290, 0xc53b, 0xcb9a, 0xa267, 0xa218,
+  0xa23d, 0xa23f, 0x2251, 0x2263, 0x2271, 0x228e, 0x2292, 0x2294,
+  0x61f0, 0xe1fc, 0x2251, 0x2263, 0x2271, 0x228d, 0x2292, 0x2294,
+  0x61f0, 0xe1fc, 0x2212, 0x2283, 0xc53b, 0x2242, 0xa264, 0x2251,
+  0x2263, 0x2271, 0x228d, 0x228e, 0x2294, 0x61f0, 0xe1fc, 0x2251,
+  0x2263, 0x2271, 0x228d, 0x228e, 0x2292, 0x61f0, 0xe1fc, 0x5cad,
+  0xdcea, 0x22e7, 0xa2f8, 0xdfa6, 0x4cfc, 0xccff, 0xa2d9, 0xa2f1,
+  0x1ec2, 0x20cd, 0xa2d5, 0x9f2e, 0x2226, 0x2227, 0xa23c, 0xa2f5,
+  0xa2c1, 0x22b4, 0x22de, 0xb1a5, 0x22b3, 0x22de, 0xb1a5, 0x2026,
+  0xa2cc, 0xb548, 0xa2e2, 0xa2b2, 0xb54f, 0x22d1, 0xb555, 0xa2c8,
+  0xa2c7, 0x214b, 0x224b, 0xac05, 0x22db, 0x22f2, 0xa2f3, 0x2026,
+  0xa2b5, 0x22c5, 0x2f95, 0x2fa0, 0xb555, 0x1ec2, 0x20cd, 0xa2a8,
+  0x22d7, 0xb702, 0x22d6, 0xb702, 0xa2a1, 0xa2e9, 0x22cb, 0x22f2,
+  0xa2f3, 0xd0dc, 0x22b3, 0x22b4, 0xb1a5, 0xb22e, 0xa2bf, 0xb1c3,
+  0xa27f, 0x229d, 0xa2f8, 0xa2da, 0xa2a2, 0x22cb, 0x22db, 0xa2f3,
+  0x22cb, 0x22db, 0xa2f2, 0xa2b1, 0x229d, 0xa2e7, 0xa300, 0xa2fb,
+  0x1e10, 0xa304, 0x1e10, 0xa303, 0xeead, 0x2fe9, 0x3031, 0xb0a4,
+  0xb3ac, 0x5133, 0xd166, 0xa338, 0x37e9, 0xb7fe, 0x2e00, 0xdfca,
+  0xa320, 0xa31e, 0xa329, 0xa32d, 0xcbcb, 0x5535, 0xd5cf, 0xa321,
+  0xa326, 0xa331, 0x3c47, 0xbed9, 0xa32e, 0x2333, 0x2941, 0xa969,
+  0x2332, 0x2941, 0xa969, 0xa31a, 0xa340, 0x3bc9, 0xe1ab, 0xa33a,
+  0xe7c6, 0xa352, 0x3607, 0x36fb, 0x6629, 0xe65e, 0xd294, 0x1e16,
+  0x9e17, 0xa350, 0x2d0b, 0x53ef, 0xd550, 0x2354, 0x23f6, 0xb5ea,
+  0xa34d, 0xa346, 0x384c, 0xb9d5, 0x234f, 0x23f6, 0xb5ea, 0x2358,
+  0xa5ae, 0x28f2, 0xdce3, 0x2355, 0xa5ae, 0xb13d, 0xc387, 0x53d4,
+  0xd514, 0x9f54, 0xc6e7, 0x2365, 0x2877, 0x3ef7, 0x3f9b, 0x4002,
+  0x597f, 0xee75, 0x2364, 0xd97f, 0xd1e5, 0x585b, 0xd85e, 0xadf5,
+  0x2918, 0xb23c, 0xae01, 0x237d, 0xc68d, 0xa37b, 0x2dfb, 0xb372,
+  0xcf37, 0x3064, 0xdcc9, 0xa374, 0x2373, 0xc68d, 0x2388, 0x23b0,
+  0xaee0, 0xb239, 0x2ef0, 0xaef3, 0x23a4, 0x23af, 0x36a6, 0x36c6,
+  0x3b74, 0xbb77, 0xc8d4, 0xa382, 0xa3b2, 0x2727, 0xa8d3, 0xa3ad,
+  0xa399, 0xc825, 0xef8e, 0xad16, 0x23a0, 0xaec1, 0x28e5, 0x2edb,
+  0x613d, 0xe1d0, 0xa38d, 0xa795, 0xaef3, 0xa3a1, 0x2395, 0xaec1,
+  0xa39f, 0xaec2, 0xa3b4, 0x2386, 0xb6c6, 0xaec8, 0xaeda, 0x2ecf,
+  0xaed0, 0xa38c, 0xaedd, 0x2386, 0x36a6, 0x36c6, 0x3b74, 0xbb77,
+  0x2382, 0xaee0, 0xa389, 0x1e25, 0xa6b4, 0xa3a3, 0xbe90, 0xc9c1,
+  0xd0b1, 0x60bb, 0x6130, 0xe6a3, 0xa3bb, 0xa3ba, 0x1e1f, 0x9e22,
+  0x470c, 0xce23, 0x1e09, 0xaf0e, 0x23c3, 0x23c4, 0xa3c5, 0x23c2,
+  0x23c4, 0xa3c5, 0x23c2, 0x23c3, 0xa3c5, 0x23c2, 0x23c3, 0xa3c4,
+  0xe749, 0xe746, 0xa3f9, 0xb268, 0x9e41, 0xe6d9, 0x1eee, 0x23db,
+  0xc08d, 0xb536, 0xa92c, 0xc2ae, 0x467a, 0x467c, 0x6aea, 0xeaee,
+  0x1e8a, 0x9e8b, 0xcdb4, 0x2909, 0xdb8a, 0x354d, 0xb558, 0x23cd,
+  0xc08d, 0xac09, 0x4573, 0x4582, 0x4589, 0xc58a, 0x28e1, 0xc77f,
+  0x1e1b, 0x3a37, 0x3b09, 0xd5c2, 0x218e, 0x2250, 0xa26e, 0x49d6,
+  0x5879, 0xe6bb, 0xa44c, 0x276e, 0x37b1, 0x3aaf, 0x51fa, 0xe8b1,
+  0x234f, 0x2354, 0x35ea, 0xd449, 0xd65f, 0x23c8, 0x2606, 0xbb4e,
+  0xa630, 0x24a9, 0xa4f6, 0x4c72, 0xefa5, 0x25ab, 0xa644, 0xe5a4,
+  0xaf14, 0x1edd, 0xd855, 0xaf8c, 0x26ae, 0xb6cf, 0xa687, 0xa442,
+  0xa5ce, 0xb061, 0xa451, 0x252b, 0x2656, 0xda21, 0xa678, 0x5074,
+  0xd07d, 0x2518, 0x2553, 0x2554, 0x255f, 0x5aec, 0xe5d9, 0x2434,
+  0xa449, 0x2433, 0xa449, 0xa450, 0xd117, 0xa44d, 0xa44a, 0xa415,
+  0x3282, 0xc2c2, 0x2433, 0xa434, 0xa43f, 0xa3eb, 0xa43d, 0xa436,
+  0xa41e, 0xa638, 0xa6c8, 0xa614, 0xa6a6, 0xa504, 0x24e1, 0x5c9f,
+  0xdd20, 0x24bc, 0xa58e, 0xa4fa, 0xa5c6, 0xa5da, 0xda46, 0xe031,
+  0xa5dc, 0x2492, 0xda4b, 0xda4d, 0x2611, 0x5656, 0xdb3c, 0xa4e3,
+  0x248c, 0x30d2, 0xefa2, 0x248a, 0x30d2, 0xefa2, 0xda60, 0x246a,
+  0xda4b, 0xa6a8, 0xa680, 0xa4a4, 0xa65d, 0xa49c, 0x2400, 0xa4f6,
+  0xef69, 0x2580, 0xd849, 0x2003, 0x207a, 0xa592, 0x2173, 0xcb11,
+  0x618e, 0xee79, 0x2459, 0xa58e, 0xa6a5, 0x65a7, 0xeb28, 0xe7ff,
+  0x2516, 0x255e, 0x45d6, 0xc602, 0xa660, 0xa635, 0xa5f6, 0xa666,
+  0x2629, 0xdb41, 0xa672, 0xa68c, 0xa665, 0xa5b2, 0x2458, 0x5c9f,
+  0xdd20, 0xa485, 0xda36, 0x2560, 0x2586, 0x269e, 0x27d1, 0xb08a,
+  0x2400, 0xa4a9, 0xa45a, 0x5a98, 0xdbf1, 0xa457, 0xd123, 0xd39e,
+  0xa57a, 0xa523, 0x24d1, 0x255e, 0x45d6, 0xc602, 0x242f, 0x2553,
+  0x2554, 0x255f, 0x5aec, 0xe5d9, 0xa61c, 0xa5ca, 0xa62e, 0xa5e9,
+  0xa515, 0xa59a, 0xa59e, 0xa41f, 0xdaaf, 0xaff5, 0xa60a, 0xdb2a,
+  0xe5ee, 0x242f, 0x2518, 0x2554, 0x255f, 0x5aec, 0xe5d9, 0x242f,
+  0x2518, 0x2553, 0x255f, 0x5aec, 0xe5d9, 0xa649, 0xa649, 0x24d1,
+  0x2516, 0x45d6, 0xc602, 0x242f, 0x2518, 0x2553, 0x2554, 0x5aec,
+  0xe5d9, 0x24f2, 0x2586, 0x269e, 0x27d1, 0xb08a, 0x5854, 0x5858,
+  0xe29c, 0xa616, 0xa5c7, 0xa6c0, 0x265b, 0x2699, 0x26d3, 0xef67,
+  0xa613, 0x26c9, 0xcf57, 0xa63d, 0xa62f, 0xa510, 0x24af, 0xd849,
+  0x6927, 0xe935, 0xdb71, 0x24f2, 0x2560, 0x269e, 0x27d1, 0xb08a,
+  0x2459, 0xa4bc, 0x267e, 0xc616, 0x2003, 0x207a, 0xa4b1, 0xa524,
+  0x3198, 0x3199, 0xbb56, 0xa527, 0xa5bb, 0x9e27, 0x2403, 0xa644,
+  0x9e54, 0x2355, 0xa358, 0x25b7, 0xa674, 0x68df, 0x68e0, 0xe963,
+  0xa4df, 0x41df, 0xd425, 0x25af, 0xa674, 0xa5a9, 0xa60d, 0xa6b3,
+  0xef45, 0xa45b, 0xa56c, 0xa51d, 0xa417, 0xa45c, 0xa469, 0xe16a,
+  0xab60, 0xa637, 0xa522, 0xa6c1, 0xa66f, 0xa4d4, 0xdb30, 0x23f9,
+  0xbb4e, 0xa540, 0xa5bd, 0x247c, 0xdb3c, 0xa56f, 0xa455, 0xa567,
+  0x2690, 0x2c1d, 0xc51e, 0xa653, 0xa51b, 0xa6b6, 0xa62f, 0x24d7,
+  0xdb41, 0xa520, 0x2578, 0xa628, 0xa3fd, 0xa6d1, 0xa4d3, 0xa5e5,
+  0xa452, 0xa574, 0xb076, 0xdb50, 0x2403, 0xa5ab, 0xa655, 0x2556,
+  0xa557, 0xa668, 0xa618, 0xa645, 0x241f, 0xda21, 0x256e, 0xa699,
+  0xa695, 0xa49d, 0xa4d2, 0xdb6b, 0xa4dd, 0xa4d5, 0xa650, 0xdb5f,
+  0xa5f3, 0xa4d9, 0x25af, 0xa5b7, 0x585c, 0x585f, 0xe053, 0xa428,
+  0xaf53, 0xa591, 0xa49b, 0xa413, 0xa4dc, 0xa694, 0x2617, 0x2c1d,
+  0xc51e, 0xa68f, 0xa65c, 0x256e, 0x265b, 0x26d3, 0xef67, 0x24f2,
+  0x2560, 0x2586, 0x27d1, 0xb08a, 0xbd4f, 0xa6ca, 0xa6c2, 0xa4bd,
+  0xa456, 0xa499, 0xa411, 0x9eb8, 0xa5be, 0x1e25, 0xa3b3, 0xa624,
+  0xa6c2, 0xa56d, 0xa5eb, 0x26a3, 0xa6bb, 0xa181, 0xa453, 0x2570,
+  0xcf57, 0xa6a2, 0xd2cf, 0xd271, 0xa631, 0x256e, 0x2699, 0xef67,
+  0x26f2, 0x26f4, 0xa70d, 0x26de, 0x26ec, 0x2efb, 0x2efd, 0x5ff4,
+  0xe025, 0xa6e0, 0x9e96, 0x26d8, 0x26ec, 0x2efb, 0x2efd, 0x5ff4,
+  0xe025, 0xe856, 0xa6d9, 0x26e3, 0x2718, 0xccf0, 0x26e2, 0x2718,
+  0xccf0, 0x3df5, 0x3e0a, 0xbe15, 0xa18f, 0xa6f1, 0x26d8, 0x26de,
+  0x2efb, 0x2efd, 0x5ff4, 0xe025, 0x2213, 0x2712, 0xd597, 0x26f6,
+  0x26fb, 0x26fd, 0x2700, 0xa70b, 0xc74f, 0xa6ea, 0x26d7, 0x26f4,
+  0xa70d, 0x26fe, 0x2716, 0xa717, 0x26d7, 0x26f2, 0xa70d, 0xa707,
+  0x26ef, 0x26fb, 0x26fd, 0x2700, 0xa70b, 0xb5e5, 0x26ef, 0x26f6,
+  0x26fd, 0x2700, 0xa70b, 0x26ef, 0x26f6, 0x26fb, 0x2700, 0xa70b,
+  0x26f3, 0x2716, 0xa717, 0x26ef, 0x26f6, 0x26fb, 0x26fd, 0xa70b,
+  0xa711, 0x2186, 0x270e, 0xa713, 0xa6f5, 0xa70f, 0x26ef, 0x26f6,
+  0x26fb, 0x26fd, 0xa700, 0x26d7, 0x26f2, 0xa6f4, 0x2186, 0x2706,
+  0xa713, 0xa708, 0xa703, 0x26ed, 0xd597, 0x2186, 0x2706, 0xa70e,
+  0x26f3, 0x26fe, 0xa717, 0x26f3, 0x26fe, 0xa716, 0x26e2, 0xa6e3,
+  0x383e, 0xbb12, 0xa721, 0xa71f, 0x453a, 0xc53c, 0xd056, 0x238b,
+  0xa8d3, 0xb257, 0xb747, 0xc3ea, 0x2754, 0x27ca, 0xadb3, 0xa8d9,
+  0x2834, 0xa872, 0x3b7e, 0x3b7f, 0x3b81, 0xbca1, 0xe62f, 0x2c85,
+  0xe62a, 0x276f, 0x28ca, 0x28de, 0xe62b, 0xaea7, 0xe62c, 0xa78b,
+  0x2730, 0x27ca, 0xadb3, 0x21f7, 0x284a, 0xa8a4, 0xade0, 0xa805,
+  0x28b0, 0x28b5, 0x28c7, 0x28dc, 0x4f48, 0xcf4e, 0xa8e2, 0x27bb,
+  0xa8e9, 0x2862, 0xe696, 0x28b3, 0xe6ab, 0x289c, 0xc908, 0xa802,
+  0xa803, 0xb1bb, 0xa88c, 0x6640, 0xe641, 0xbce5, 0x23f0, 0xd1fa,
+  0x274f, 0xe62b, 0xa7a7, 0xa787, 0x1e18, 0x9e20, 0xa7a2, 0xa8a2,
+  0xa7c0, 0xa8df, 0xa8e0, 0xa8da, 0xa773, 0xa753, 0x2841, 0xa8d8,
+  0xc561, 0xe67b, 0xa39a, 0xa806, 0x282f, 0x2c27, 0xac2d, 0xa79c,
+  0xa79b, 0xa8a2, 0xa778, 0xa8be, 0xa770, 0xab88, 0x280a, 0xd056,
+  0xa88a, 0xa7e1, 0xa8b6, 0xa8cb, 0xa84f, 0xa816, 0x275d, 0xa8e9,
+  0xa782, 0xc86e, 0xe656, 0x2730, 0x2754, 0xadb3, 0x24f2, 0x2560,
+  0x2586, 0x269e, 0xb08a, 0xa7d3, 0xa7d2, 0xa852, 0x2864, 0xa8ce,
+  0xa81d, 0x28c4, 0xe1ce, 0x2824, 0xe684, 0xa7ad, 0xc897, 0xb267,
+  0x2d0e, 0x2d5c, 0xc895, 0xb383, 0xa763, 0xa764, 0xa75a, 0xa796,
+  0xd3eb, 0xa7a9, 0xa879, 0x28ae, 0xa8af, 0xa7b4, 0xe67b, 0xa7da,
+  0x27de, 0xe684, 0x6636, 0xe68e, 0x279a, 0x2c27, 0xac2d, 0x2895,
+  0xe681, 0xb2a5, 0x273a, 0xa872, 0x454c, 0xc54d, 0x2792, 0xa8d8,
+  0xa8ea, 0x21f7, 0x2757, 0xa8a4, 0xd314, 0xc57b, 0xa7b2, 0xa851,
+  0xa850, 0xa7d8, 0xa896, 0xbd82, 0xa8a7, 0xa1a2, 0xd46c, 0xa86b,
+  0xa75e, 0x27d9, 0xa8ce, 0xe663, 0x46d0, 0xee7d, 0xa861, 0x273a,
+  0xa834, 0xac18, 0x2364, 0xee75, 0x2811, 0xa8cd, 0x450e, 0x4816,
+  0xc8da, 0xc245, 0xa7ab, 0xa767, 0x2830, 0xe681, 0xa854, 0xa89e,
+  0x28bb, 0xc246, 0x2760, 0xc908, 0xa897, 0x277a, 0xa7a1, 0x21f7,
+  0x2757, 0xa84a, 0xa859, 0x2815, 0xa8af, 0x2815, 0xa8ae, 0x275b,
+  0x28b5, 0x28dc, 0x4f48, 0xcf4e, 0x275f, 0xe6ab, 0x275b, 0x28b0,
+  0x28dc, 0x4f48, 0xcf4e, 0xa7af, 0xde87, 0xa899, 0xa7a6, 0x27dc,
+  0xe1ce, 0xa75b, 0x274f, 0xa8de, 0xa7b1, 0xa8e4, 0xa879, 0x27d9,
+  0xa864, 0xc4bd, 0x238b, 0xa727, 0x2792, 0xa841, 0xa739, 0xa786,
+  0x275b, 0x28b0, 0x28b5, 0x4f48, 0xcf4e, 0x274f, 0xa8ca, 0xa784,
+  0xa785, 0x23e1, 0xc77f, 0xa75c, 0xa8cc, 0x2398, 0x2edb, 0xe13d,
+  0x275d, 0xa7bb, 0xa846, 0x28ef, 0xa8f5, 0x28ee, 0xa8f5, 0xd072,
+  0xa8f9, 0x2356, 0xdce3, 0x3bbb, 0xbbbc, 0x28ee, 0xa8ef, 0x28f7,
+  0xa8fa, 0x28f6, 0xa8fa, 0xa8fc, 0xa8f1, 0x28f6, 0xa8f7, 0x2a7f,
+  0xd05f, 0xa8f8, 0x2900, 0xabff, 0x28fd, 0xabff, 0xa90a, 0x21e6,
+  0xd655, 0xe64d, 0x1ffb, 0x2079, 0x2099, 0xa0c3, 0x23d8, 0xdb8a,
+  0xa902, 0x2fa9, 0x5907, 0xd986, 0xa913, 0xa90f, 0xd641, 0x236f,
+  0xb23c, 0xa91b, 0xa91a, 0x9eb1, 0xa920, 0xa91f, 0x2923, 0xb8a6,
+  0x2922, 0xb8a6, 0x9f19, 0x2172, 0x6754, 0xe75d, 0xa3cf, 0xbb80,
+  0x372c, 0xb94d, 0xbcf0, 0xe82d, 0xbbd4, 0xda87, 0xa93e, 0xa96a,
+  0xa939, 0x2332, 0x2333, 0xa969, 0xa950, 0xcad2, 0xb7f0, 0xa96e,
+  0xeede, 0xa942, 0x4287, 0xe029, 0x2968, 0x296c, 0xc34e, 0xaf09,
+  0xc55a, 0x2967, 0xadb4, 0x2965, 0xadb4, 0x2956, 0x296c, 0xc34e,
+  0x2332, 0x2333, 0xa941, 0xa93a, 0x2956, 0x2968, 0xc34e, 0xa94b,
+  0x29b3, 0xab2d, 0x29e6, 0xa9e7, 0x299d, 0x2a24, 0x4ca7, 0xccda,
+  0x2a66, 0xaa8d, 0xaabd, 0xa9d9, 0x29f8, 0xd505, 0xa9ac, 0xc945,
+  0xc385, 0xaab8, 0x2986, 0x2a24, 0x4ca7, 0xccda, 0xaaf5, 0xaad7,
+  0x2aaf, 0xab00, 0xa992, 0x1f60, 0x2976, 0xab2d, 0x1f84, 0xa9ea,
+  0x2a3f, 0xaa40, 0xaa12, 0xa9ca, 0xa9c9, 0x1e68, 0xa158, 0xa9d7,
+  0xaa8e, 0xaa30, 0xa9cd, 0xa98a, 0xd591, 0xaa1f, 0x2978, 0xa9e7,
+  0x2978, 0xa9e6, 0x1f84, 0xa9b7, 0xa9ec, 0xa9eb, 0xaae6, 0x298d,
+  0xd505, 0xaa63, 0xaa41, 0xaa6d, 0xab08, 0xab0c, 0xab4c, 0xa9c6,
+  0x2b22, 0xab43, 0x2a2f, 0xaa31, 0xa9e2, 0x2986, 0x299d, 0x4ca7,
+  0xccda, 0xab2a, 0xab09, 0x2a1b, 0xaa31, 0xa9d2, 0x2a1b, 0xaa2f,
+  0xaaa7, 0x2afa, 0xaafb, 0x29b8, 0xaa40, 0x29b8, 0x2a3f, 0xaa50,
+  0xaa04, 0xaa40, 0xa9fb, 0x2987, 0xaa8d, 0xbdeb, 0xaa05, 0x1e3d,
+  0xee97, 0xaaff, 0x2b30, 0x2b46, 0xab7e, 0xab0b, 0xab38, 0x28fb,
+  0xd05f, 0x2987, 0xaa66, 0xa9d0, 0xaa32, 0xaabc, 0xab03, 0x29ab,
+  0xab00, 0xa99b, 0xaaaa, 0xa988, 0x3127, 0xd06d, 0x2b1d, 0xd885,
+  0xab32, 0xab21, 0xab2a, 0xa9aa, 0xa9ee, 0xab19, 0xa9a9, 0x3194,
+  0xc644, 0x2a34, 0xaafb, 0x2a34, 0xaafa, 0xaa73, 0x29ab, 0xaaaf,
+  0xaaad, 0xaa06, 0xaa2d, 0xaa75, 0xaa07, 0xaaf1, 0x2acb, 0xd885,
+  0xaad2, 0x2a18, 0xab43, 0xab37, 0x2a26, 0xaad4, 0x2976, 0xa9b3,
+  0x2a74, 0x2b46, 0xab7e, 0xaad0, 0xab24, 0xaa76, 0xb1d2, 0x2a18,
+  0xab22, 0x2a74, 0x2b30, 0xab7e, 0xaa08, 0xab53, 0xab52, 0xab6b,
+  0xa5e3, 0x2b78, 0x3569, 0x3585, 0x3586, 0xb588, 0xab7f, 0xab59,
+  0x2b66, 0x3569, 0x3585, 0x3586, 0xb588, 0xab7d, 0xab7c, 0x2a74,
+  0x2b30, 0xab46, 0xab6a, 0x2bcd, 0x2bd5, 0x2bd7, 0x2bdc, 0x2be7,
+  0xc52f, 0xa197, 0x4260, 0x5675, 0xd6c7, 0xca79, 0xa7a8, 0xca81,
+  0xd089, 0x219d, 0xab9c, 0x219d, 0xab90, 0x2bda, 0x2bf3, 0x2bf6,
+  0xc3e4, 0x2b9f, 0xabe6, 0x2b9e, 0xabe6, 0xabf5, 0x2bb7, 0xabe9,
+  0xac4e, 0xb1b2, 0xabae, 0xabab, 0x5b8c, 0xe1bc, 0xa0a2, 0x2ba1,
+  0xabe9, 0xabc6, 0x21a6, 0xabc7, 0x2bdb, 0xabec, 0x5cd3, 0xdcd4,
+  0xe1c7, 0xa1a4, 0xabbb, 0x21a6, 0xabbc, 0x6751, 0xe752, 0x66ba,
+  0x674d, 0x674e, 0x674f, 0x6db4, 0x6e16, 0xee64, 0xa1a8, 0x2b81,
+  0x2bd5, 0x2bd7, 0x2bdc, 0x2be7, 0xc52f, 0xaebd, 0x2b81, 0x2bcd,
+  0x2bd7, 0x2bdc, 0x2be7, 0xc52f, 0x2b81, 0x2bcd, 0x2bd5, 0x2bdc,
+  0x2be7, 0xc52f, 0x2b9d, 0x2bf3, 0x2bf6, 0xc3e4, 0x2bbd, 0xabec,
+  0x2b81, 0x2bcd, 0x2bd5, 0x2bd7, 0x2be7, 0xc52f, 0xabe2, 0xda67,
+  0x4aad, 0xcab6, 0xabdd, 0x2b9e, 0xab9f, 0x2b81, 0x2bcd, 0x2bd5,
+  0x2bd7, 0x2bdc, 0xc52f, 0x2ba1, 0xabb7, 0x2199, 0xa1a9, 0x2bbd,
+  0xabdb, 0x2b9d, 0x2bda, 0x2bf6, 0xc3e4, 0xaba0, 0x2b9d, 0x2bda,
+  0x2bf3, 0xc3e4, 0x2bfe, 0xac0d, 0xac0b, 0xac0e, 0x2bf9, 0xac0d,
+  0x28fd, 0xa900, 0x1e13, 0xac08, 0x214b, 0x224b, 0xa2ca, 0xac07,
+  0xac06, 0x1e13, 0xac02, 0xa3de, 0xabfb, 0x2bf9, 0xabfe, 0xabfc,
+  0x2c13, 0x2c14, 0xc23e, 0x2c12, 0x2c14, 0xc23e, 0x2c12, 0x2c13,
+  0xc23e, 0xa875, 0xac1a, 0xac19, 0x1e48, 0x2e85, 0x6ebc, 0xeebd,
+  0x2617, 0x2690, 0xc51e, 0xc1ce, 0x2c20, 0x5d7b, 0x6bae, 0x6c7b,
+  0xec9c, 0x2c1f, 0x5d7b, 0x6bae, 0x6c7b, 0xec9c, 0x2c23, 0x2c24,
+  0xb023, 0xac22, 0x2c22, 0xb023, 0xac26, 0xac25, 0x279a, 0x282f,
+  0xac2d, 0xac2b, 0xac29, 0xeb40, 0x279a, 0x282f, 0xac27, 0x21f2,
+  0x2c34, 0x2c36, 0x2c37, 0xeb50, 0x21f2, 0x2c32, 0x2c36, 0x2c37,
+  0xeb50, 0x21f2, 0x2c32, 0x2c34, 0x2c37, 0xeb50, 0x21f2, 0x2c32,
+  0x2c34, 0x2c36, 0xeb50, 0xac4d, 0x1fad, 0x2118, 0xc6e1, 0x1fb7,
+  0xddfc, 0xac64, 0xac53, 0xa1e5, 0xac4a, 0xac46, 0x6ce5, 0xee1f,
+  0xac38, 0xaba9, 0x2c5b, 0xae48, 0xac43, 0x2c4f, 0xae48, 0xac6c,
+  0xac62, 0xac61, 0xac42, 0xac68, 0xac66, 0xac5e, 0xadbc, 0xa1fa,
+  0x1e97, 0x2d57, 0x3b72, 0xbb73, 0xdc48, 0x2742, 0xe62a, 0xdc3a,
+  0xad87, 0xad17, 0xacf4, 0xad50, 0x2cf6, 0x2d8b, 0x2d8c, 0x2db9,
+  0x6666, 0x669d, 0xe6af, 0xa188, 0x2d52, 0x2d53, 0x2dcc, 0x2dd6,
+  0x2dd7, 0xc89e, 0xadba, 0xadbd, 0xad87, 0xad2c, 0xadcb, 0xada8,
+  0xada7, 0xacdd, 0xacd2, 0xacfd, 0xada2, 0xada0, 0xad22, 0xadd2,
+  0xace9, 0xace8, 0xacf0, 0xacef, 0xac98, 0x2d58, 0x2db8, 0xadc6,
+  0x2c9b, 0x2d8b, 0x2d8c, 0x2db9, 0x6666, 0x669d, 0xe6af, 0xace1,
+  0xad97, 0xad0d, 0xadae, 0xad08, 0xad07, 0x234e, 0xd3ef, 0xad03,
+  0x27fc, 0x2d5c, 0xc895, 0xa393, 0xac97, 0x1ed1, 0xad19, 0x1ed1,
+  0xad18, 0xace5, 0xacbd, 0x2d83, 0xad84, 0xcbcf, 0xac9a, 0x2ca9,
+  0x2d53, 0xc89e, 0x2ca9, 0x2d52, 0xc89e, 0x1e97, 0x2c81, 0x3b72,
+  0xbb73, 0x2cf5, 0x2db8, 0xadc6, 0xad94, 0x27fc, 0x2d0e, 0xc895,
+  0xad81, 0x3e13, 0xbeaa, 0xad73, 0xad6f, 0xad5d, 0xad2d, 0xad2d,
+  0x2c96, 0xacb4, 0x2c9b, 0x2cf6, 0x2d8c, 0x2db9, 0x6666, 0x669d,
+  0xe6af, 0x2c9b, 0x2cf6, 0x2d8b, 0x2db9, 0x6666, 0x669d, 0xe6af,
+  0xad5a, 0xad02, 0xace4, 0xace3, 0xacc4, 0xacc3, 0xad04, 0xe6df,
+  0x2730, 0x2754, 0xa7ca, 0x2965, 0xa967, 0x2cf5, 0x2d58, 0xadc6,
+  0x2c9b, 0x2cf6, 0x2d8b, 0x2d8c, 0x6666, 0x669d, 0xe6af, 0xacad,
+  0xac7f, 0xacb3, 0x2dd3, 0xadd4, 0x2cf5, 0x2d58, 0xadb8, 0xacbf,
+  0x2ca9, 0x2dd6, 0xadd7, 0xace6, 0xadc5, 0xadc5, 0x2ca9, 0x2dcc,
+  0xadd7, 0x2ca9, 0x2dcc, 0xadd6, 0xaddd, 0xaddb, 0xa759, 0xade3,
+  0xade2, 0xe78f, 0xadf0, 0xadef, 0xa36e, 0xd856, 0xadfd, 0x2377,
+  0xb372, 0xadfa, 0x67cd, 0xe7e8, 0x231d, 0xdfca, 0x2370, 0x2e63,
+  0xae64, 0x9f48, 0xae25, 0xae2b, 0xcd19, 0xae43, 0xae33, 0x9f16,
+  0xd88b, 0xcd48, 0xcc3e, 0xcb92, 0x2e5f, 0xb5d8, 0xae05, 0x2e2f,
+  0xae36, 0xae40, 0xae08, 0xd4c6, 0x2e47, 0x2e5a, 0xae6b, 0x2e26,
+  0xae36, 0x2f52, 0x3b78, 0xc688, 0xae6c, 0xae10, 0x2e26, 0xae2f,
+  0xae58, 0xae57, 0xa183, 0xae27, 0x21aa, 0xcf83, 0xae0f, 0x2e2e,
+  0x2e5a, 0xae6b, 0x2c4f, 0xac5b, 0xce28, 0xae3c, 0xae3b, 0x2e2e,
+  0x2e47, 0xae6b, 0x2e1c, 0xb5d8, 0xb5d9, 0x2e01, 0xae64, 0x2e01,
+  0xae63, 0x2e2e, 0x2e47, 0xae5a, 0xae31, 0x1e7e, 0x2e79, 0xb9a6,
+  0xc9ca, 0x1e26, 0x1f75, 0x2002, 0x20a1, 0x2e77, 0xcadd, 0xae76,
+  0xa016, 0x2e72, 0xb9a6, 0x9e48, 0xa1e0, 0x2e83, 0x2eb5, 0xaee3,
+  0x2ef0, 0xaef3, 0x2e7f, 0xaee3, 0x5358, 0xd38a, 0x1e48, 0x2c1b,
+  0x6ebc, 0xeebd, 0xb176, 0xc240, 0xaeec, 0xaee1, 0xaeab, 0x2fdc,
+  0xb1c9, 0xaedf, 0xef90, 0x2ec3, 0xaee2, 0xa750, 0xae93, 0x2e7f,
+  0x53f4, 0x544a, 0xd4ed, 0xaebb, 0x377e, 0x3780, 0x37a9, 0x37d7,
+  0xb8a5, 0xaeb6, 0xaece, 0xabd3, 0xaedf, 0x2395, 0xa3a0, 0xa3a2,
+  0x2e9f, 0xaee2, 0xa3a6, 0xaebc, 0x23a9, 0xaed0, 0x23a9, 0xaecf,
+  0xa3a8, 0x2398, 0x28e5, 0xe13d, 0xa3ae, 0x2e99, 0xaebf, 0x2382,
+  0xa3b0, 0xae91, 0x2e9f, 0xaec3, 0x2e7f, 0xae83, 0xaeea, 0xaee9,
+  0xae90, 0x2385, 0x2e81, 0xaef3, 0x2385, 0x239b, 0x2e81, 0xaef0,
+  0xdfea, 0x26d8, 0x26de, 0x26ec, 0x2efd, 0x5ff4, 0xe025, 0x1e43,
+  0xdffa, 0x26d8, 0x26de, 0x26ec, 0x2efb, 0x5ff4, 0xe025, 0xe58b,
+  0x44e3, 0x598d, 0x5fa1, 0x5fa7, 0x5fa8, 0x5fa9, 0xdfaf, 0xc570,
+  0xb8c4, 0x330a, 0xb335, 0xa958, 0x9e00, 0x9e8c, 0x1e09, 0xa3c1,
+  0x5cae, 0x5cb3, 0xdd30, 0xaf12, 0xaf11, 0xa40a, 0xaf35, 0x2f4c,
+  0xc030, 0xcd43, 0xaf33, 0xaf4e, 0xaf2a, 0xaf20, 0xaf3a, 0x2f3e,
+  0xaf48, 0xaf37, 0xaf3c, 0xaf3b, 0x2f39, 0xaf48, 0xa22b, 0x2f39,
+  0xaf3e, 0xaf25, 0xaf2f, 0xaf51, 0xaf50, 0x2e30, 0x3b78, 0xc688,
+  0x2679, 0xc576, 0xaf55, 0x2f54, 0x6304, 0xe332, 0xcbf2, 0x2f5a,
+  0xbc47, 0x2f59, 0xbc47, 0x2f5c, 0x2f5d, 0xaf5e, 0x2f5b, 0x2f5d,
+  0xaf5e, 0x2f5b, 0x2f5c, 0xaf5e, 0x2f5b, 0x2f5c, 0xaf5d, 0xaf60,
+  0x2f5f, 0xd4a6, 0xaf66, 0xaf65, 0xaf72, 0xcdb5, 0xe6d5, 0x1efd,
+  0xb58c, 0xaf68, 0x9ee2, 0x1eff, 0x2fac, 0xeae3, 0xafb9, 0x1f5b,
+  0xeaf4, 0x2f83, 0xdfec, 0x2fb0, 0x2fb4, 0xafb5, 0xaf80, 0x2f91,
+  0x5ff3, 0xe015, 0xc2e5, 0x9f77, 0x9f6a, 0xa40e, 0xe65f, 0x2f84,
+  0x5ff3, 0xe015, 0x1ece, 0xaf9e, 0x22d1, 0xafa0, 0x1ece, 0xaf93,
+  0x22d1, 0xaf95, 0xc9a6, 0x201f, 0xd5c9, 0xa065, 0x290d, 0xd986,
+  0x1eff, 0x208d, 0xaf77, 0xa09c, 0xaf81, 0xa0c4, 0x2fb7, 0x3074,
+  0xb0b3, 0x2f81, 0xafb5, 0x2f81, 0xafb4, 0x2fb3, 0x3074, 0xb0b3,
+  0xaf7b, 0xafc4, 0xafc3, 0xb1b6, 0x9ec1, 0x31f4, 0xb1fa, 0xda8c,
+  0xb07e, 0x2e94, 0xb1c9, 0xb09f, 0xb025, 0xb182, 0x2306, 0x3031,
+  0xb0a4, 0xb0b4, 0xa538, 0xb13e, 0x31d0, 0xb1f7, 0xb14b, 0xb16b,
+  0xb1ae, 0xb16a, 0xb0b5, 0xb134, 0x9f42, 0xb091, 0xb190, 0xb056,
+  0x2c22, 0xac24, 0xafe3, 0xb060, 0x2306, 0x2fe9, 0xb0a4, 0x30e3,
+  0x3374, 0x4dcf, 0x4deb, 0xce3d, 0xb1df, 0xb1cc, 0xb052, 0xb200,
+  0xb046, 0x21c4, 0xb0bd, 0xb01d, 0xb02a, 0x241d, 0xb08b, 0x2379,
+  0xdcc9, 0xd03b, 0xb119, 0x3085, 0xb0a6, 0xb1c7, 0x2fb3, 0x2fb7,
+  0xb0b3, 0xb0e0, 0x20eb, 0x2641, 0x30aa, 0xb0e1, 0xb15f, 0xb1e8,
+  0xb137, 0xb0fb, 0x30a9, 0xb0f1, 0xb0f2, 0xafd9, 0x30e5, 0xb142,
+  0x3111, 0xb139, 0x3071, 0xb0a6, 0x24f2, 0x2560, 0x2586, 0x269e,
+  0xa7d1, 0xb061, 0xc302, 0xb016, 0x9fd4, 0x3102, 0xda96, 0xdbef,
+  0xafe2, 0xb0ca, 0x2306, 0x2fe9, 0xb031, 0x3071, 0xb085, 0x307c,
+  0xb0f1, 0x20eb, 0x3076, 0xb0e1, 0xb164, 0xb1f8, 0xb173, 0xb1ab,
+  0x2fb3, 0x2fb7, 0xb074, 0xaff0, 0xb005, 0xe5f7, 0x21c4, 0xb053,
+  0x30a2, 0xea5a, 0x248a, 0x248c, 0xefa2, 0x1ffd, 0xbb23, 0xb075,
+  0x20eb, 0x3076, 0xb0aa, 0xb03b, 0x307f, 0xb142, 0xb1fc, 0xb158,
+  0xb1f2, 0xb18a, 0xb11c, 0x3159, 0xb15a, 0xb19a, 0xb163, 0x307c,
+  0xb0a9, 0xb07d, 0xd822, 0xb07b, 0xd90a, 0x3096, 0xda96, 0x4609,
+  0xc652, 0x3080, 0xb139, 0xb06a, 0xc231, 0xb0ec, 0xb14d, 0xb181,
+  0xb1a4, 0xb192, 0x2abf, 0xd06d, 0xb1fc, 0xb006, 0xb07a, 0x3080,
+  0xb111, 0xb14e, 0xa35a, 0xaffe, 0xe858, 0x307f, 0xb0e5, 0xb817,
+  0xbbb7, 0xb001, 0xb120, 0x313c, 0x361a, 0xc718, 0x3174, 0xb1fe,
+  0xb0e8, 0x30ed, 0xb15a, 0x30ed, 0xb159, 0x3078, 0xb185, 0xb0ef,
+  0xb0ab, 0xb004, 0xb002, 0xb196, 0xd651, 0xb0ad, 0xb151, 0xae86,
+  0x317d, 0xb21a, 0x317c, 0xb21a, 0xbb32, 0x21ed, 0x21f4, 0xb191,
+  0xb121, 0xafe7, 0xb15f, 0xb1a9, 0xb0eb, 0xb01c, 0x21ed, 0x21f4,
+  0xb17f, 0xb126, 0x2af6, 0xc644, 0x316d, 0xb197, 0xb196, 0x259c,
+  0x3199, 0xbb56, 0x259c, 0x3198, 0xbb56, 0xb0ee, 0xb124, 0x22b3,
+  0x22b4, 0xa2de, 0xb187, 0xb0af, 0xb003, 0xabaa, 0xafc6, 0xa766,
+  0xa2e4, 0xb073, 0x2e94, 0xafdc, 0xb03f, 0xb1d4, 0x3000, 0xb1f7,
+  0xb1e3, 0x2b3e, 0xb1f6, 0xb1cd, 0xb1f5, 0xd499, 0xb03c, 0xb1d1,
+  0xb1e7, 0xb1e6, 0xb079, 0xb0e9, 0x2fcf, 0xb1ff, 0xb1dc, 0xb1d2,
+  0x3000, 0xb1d0, 0xb0ac, 0xafcf, 0x30e7, 0xb133, 0xbb22, 0xb151,
+  0xb1f4, 0xb04b, 0xb207, 0xb206, 0xb214, 0x322f, 0xb232, 0xb20b,
+  0xb227, 0x3226, 0xb230, 0x317c, 0xb17d, 0xb21e, 0x5ca1, 0xdd22,
+  0xb21b, 0x3218, 0xb230, 0xb217, 0xb22c, 0xb229, 0x2279, 0xa2e0,
+  0x320f, 0xb232, 0x3218, 0xb226, 0x320f, 0xb22f, 0x3237, 0xb238,
+  0x3236, 0xb238, 0x3236, 0xb237, 0xa384, 0xb23e, 0x236f, 0xa918,
+  0xb23b, 0xb24c, 0xb24b, 0xce94, 0x33e0, 0xcd2e, 0x34b2, 0xb4c8,
+  0xb2c2, 0xa728, 0x5a17, 0xdbac, 0xb34d, 0xb268, 0xe1e6, 0xa7f7,
+  0x23c9, 0xb260, 0x32e1, 0xb4f4, 0xb36b, 0xb383, 0xb3da, 0xb4a6,
+  0xb4fe, 0xb5bc, 0x2448, 0xc2c2, 0xa214, 0xb4ab, 0xb2cb, 0xb2d4,
+  0xb2d7, 0x32e9, 0xb4c7, 0xb476, 0xb473, 0xb384, 0xb436, 0xdb77,
+  0xa831, 0xb4e1, 0x32de, 0x4274, 0xd9dd, 0xb255, 0xb4d4, 0xb49a,
+  0xb29b, 0xb2ff, 0x37b4, 0xb7fa, 0xb428, 0xb29c, 0xb2d6, 0xb2d5,
+  0xb29d, 0xb2dd, 0xb2dc, 0xb2b5, 0xb4ec, 0x336e, 0xb4da, 0x3269,
+  0x3304, 0xb4f4, 0xb50f, 0xb3c0, 0xb4c1, 0xb514, 0xb4f0, 0x34a5,
+  0xc67a, 0x329e, 0xb4c7, 0xb2cf, 0xb39b, 0x32e1, 0xb4f4, 0x2f04,
+  0xb335, 0x1e3e, 0x34e7, 0xd209, 0xb46f, 0xb523, 0xb397, 0xb4be,
+  0xb4bb, 0xb33e, 0xb493, 0xb4cb, 0xb49f, 0xb399, 0xb4e0, 0xb3ee,
+  0xb48f, 0x2f04, 0xb30a, 0xb412, 0xdf13, 0xb31f, 0xb3d2, 0x3405,
+  0x34b9, 0xb52a, 0x38b1, 0x4975, 0xcd91, 0xb25e, 0xb3d1, 0xd379,
+  0xb41c, 0xb488, 0xb40d, 0xb4bf, 0xb3db, 0x3417, 0xb4e3, 0xd20d,
+  0xb26a, 0x32e0, 0xb4da, 0x2377, 0xadfb, 0xb03b, 0x3816, 0xb8f2,
+  0x27fd, 0xb26b, 0xb2a1, 0xb31c, 0xb323, 0xb302, 0xe1c7, 0xb4d1,
+  0xa30a, 0xb3ed, 0xb4c4, 0xb451, 0xb4f2, 0xb4a3, 0xb47b, 0xb414,
+  0xb45c, 0xc8b0, 0xb2e3, 0xb34f, 0xb33f, 0xb26c, 0xb362, 0xb24e,
+  0xb3b2, 0xb325, 0xd0cc, 0x3416, 0xb447, 0xb52c, 0xb4b3, 0xb519,
+  0xb4f1, 0xb45f, 0xce3d, 0x3341, 0x34b9, 0xb52a, 0xb784, 0xb35f,
+  0xb337, 0xb3bb, 0x33fa, 0xb447, 0xb363, 0x335c, 0xd490, 0xb2d3,
+  0xb498, 0xb528, 0xb2a2, 0x34d5, 0xb51c, 0xb9a8, 0x3444, 0xb51d,
+  0x3442, 0xb51d, 0xb504, 0x34fa, 0xd96c, 0x33fa, 0xb416, 0xb4ef,
+  0xb524, 0xb3b4, 0xb3bc, 0xb402, 0x4dcf, 0x4deb, 0xce3d, 0xb4f5,
+  0xb31a, 0xb2a0, 0xb29f, 0xb3ba, 0x21fb, 0xb4ca, 0xb516, 0xb35e,
+  0xb326, 0xb491, 0xb490, 0xb320, 0xb42d, 0xb2c8, 0xb322, 0xb4cd,
+  0xb3b8, 0x32e8, 0xc67a, 0xb26f, 0x4d55, 0x4d76, 0xcedd, 0xb29a,
+  0x3251, 0xb4c8, 0xb3ff, 0xb506, 0xb4f7, 0xb4fc, 0x3341, 0x3405,
+  0xb52a, 0xb51b, 0xb31e, 0xb31d, 0xb361, 0xb2e5, 0xb3b3, 0x329e,
+  0xb2e9, 0x3251, 0xb4b2, 0x21fb, 0xb483, 0xb321, 0xb4a1, 0xb3a5,
+  0xb2c5, 0x343a, 0xb51c, 0x32e0, 0xb36e, 0xb4fb, 0xb324, 0xb2ac,
+  0xb363, 0xb52c, 0x1e3e, 0x3319, 0xd209, 0xb2df, 0xb448, 0xb2e7,
+  0xb401, 0xb3b7, 0x3269, 0x32e1, 0xb304, 0xb469, 0x34b7, 0xd96d,
+  0xb446, 0xb4de, 0xb4b8, 0xb50a, 0xb270, 0x9e51, 0xb445, 0xb522,
+  0xb4b5, 0xb51f, 0xb4fd, 0xb2e2, 0xb522, 0xb2e6, 0xb484, 0xb400,
+  0xb4ba, 0x343a, 0xb4d5, 0x3442, 0xb444, 0xb508, 0x3505, 0xb512,
+  0xb31b, 0xb44a, 0xb432, 0x3341, 0x3405, 0xb4b9, 0xc234, 0x33fd,
+  0xb4e5, 0xb535, 0xb534, 0xa3ce, 0xd003, 0x4b27, 0x4b56, 0x4b5e,
+  0xcba3, 0x1ff2, 0x209a, 0xa2b9, 0x9f8e, 0xb575, 0x23d9, 0xb558,
+  0xb559, 0xa2c4, 0x22c5, 0xa2d1, 0x5d01, 0xdd25, 0x23d9, 0xb54d,
+  0xb54e, 0x3582, 0xbb5b, 0xa0d8, 0x2b66, 0x2b78, 0x3585, 0x3586,
+  0xb588, 0xb578, 0xb54c, 0xb5c9, 0xb570, 0x69c6, 0x69c8, 0x6a45,
+  0xea71, 0xbb5d, 0x355b, 0xbb5b, 0xbbd9, 0x2b66, 0x2b78, 0x3569,
+  0x3586, 0xb588, 0x2b66, 0x2b78, 0x3569, 0x3585, 0xb588, 0x2b66,
+  0x2b78, 0x3569, 0x3585, 0xb586, 0x1e9d, 0x358a, 0x6f4a, 0xef50,
+  0x1e9d, 0x3589, 0x6f4a, 0xef50, 0x358e, 0xef4b, 0x1efd, 0xaf6c,
+  0xd9ba, 0x358b, 0xef4b, 0xb595, 0x359e, 0xd7a4, 0xb593, 0x65d8,
+  0x6b25, 0x6b26, 0x6b2a, 0xeb2d, 0x3594, 0xd7a4, 0xe159, 0xb5ac,
+  0xb5a9, 0xb5b7, 0xb5b5, 0xb5b2, 0xb5ad, 0x1e8e, 0x1e8f, 0xb275,
+  0xb5d2, 0xb577, 0xb5c8, 0x4c31, 0xcc4f, 0x2e1c, 0xae5f, 0x2e61,
+  0xb5db, 0xb5d9, 0xc121, 0xa6f8, 0xd20a, 0x234f, 0x2354, 0xa3f6,
+  0x35f9, 0xb642, 0x2164, 0x363f, 0xb6e0, 0xb698, 0x35f6, 0xb642,
+  0xb680, 0xb625, 0xb664, 0xb63b, 0x2347, 0xb6fb, 0xb626, 0xb719,
+  0xb62c, 0xb6c7, 0xb14e, 0xc6a8, 0xb5fe, 0xb60a, 0xb60f, 0xc0a4,
+  0xb630, 0xb62f, 0xa1ac, 0xb602, 0x365d, 0xb6f8, 0xb6e8, 0x6855,
+  0xe86f, 0x35f7, 0xb6e0, 0x35f6, 0xb5f9, 0xb644, 0xb643, 0xb64b,
+  0xb649, 0xb6ec, 0x3681, 0xb6c9, 0xb6c4, 0xb688, 0xb689, 0xb669,
+  0x363c, 0xb6f8, 0xb660, 0xb65f, 0xb5ff, 0xb6df, 0xb65a, 0xb69c,
+  0x3692, 0xc520, 0xb697, 0xb5fa, 0x3653, 0xb6c9, 0xb6ab, 0x4f6a,
+  0xdfa0, 0xb655, 0xb656, 0xb674, 0x4156, 0xc157, 0x367b, 0x5af3,
+  0x5c19, 0x65c7, 0xe68c, 0xb5f8, 0xb66e, 0xc545, 0x36ad, 0x36cd,
+  0xc6a5, 0x2386, 0x23af, 0xb6c6, 0xb6d6, 0xb6c1, 0xb682, 0x36a4,
+  0xc6a5, 0x1e86, 0xc7ad, 0xb6a8, 0xb654, 0x2386, 0x23a4, 0x23af,
+  0xb6a6, 0xb619, 0x3653, 0xb681, 0x40a4, 0x4167, 0x41f3, 0xc7be,
+  0xb6a4, 0xa411, 0xb6a7, 0xb668, 0x35f7, 0xb63f, 0xb63d, 0xb652,
+  0x3d40, 0x4cac, 0x6eaf, 0x6eb4, 0xeeb9, 0xb6f5, 0xb6f3, 0x1e66,
+  0x363c, 0xb65d, 0xb6fa, 0xb6f9, 0x2347, 0xb607, 0xb6fe, 0xb6fd,
+  0xa1a3, 0x22d6, 0xa2d7, 0x9f1a, 0xd8e8, 0xb717, 0xb716, 0xb60e,
+  0xb722, 0xb71f, 0xb71e, 0xb71b, 0xd0e7, 0x2932, 0xb94d, 0xa273,
+  0xb72f, 0x372e, 0xd853, 0xc843, 0x3a38, 0xba8f, 0xb736, 0xb735,
+  0x21e0, 0xba5f, 0xbbba, 0x594d, 0x66d1, 0xe6dc, 0x3a29, 0xbb0a,
+  0xb87f, 0xa72c, 0x3766, 0x3919, 0xba86, 0xe0a8, 0xb9d3, 0xb89d,
+  0xb803, 0x9f86, 0xb749, 0xb94a, 0xb9aa, 0x386e, 0xc6c3, 0xa091,
+  0x9e1c, 0x2eba, 0x3780, 0x37a9, 0x37d7, 0x38a5, 0xeb06, 0xe5c6,
+  0x2eba, 0x377e, 0x37a9, 0x37d7, 0xb8a5, 0xb975, 0x3406, 0xb9cb,
+  0xb960, 0x1e2b, 0x3860, 0x390f, 0xb930, 0x5edb, 0x5ef6, 0xdf6d,
+  0xd3d3, 0xba05, 0xb85d, 0xba1e, 0xb8d7, 0xbaea, 0xb80c, 0xb898,
+  0xb8d6, 0x2eba, 0x377e, 0x3780, 0x37d7, 0xb8a5, 0x39cd, 0x6397,
+  0xe453, 0xb953, 0xb89f, 0x23f0, 0x3aaf, 0xd01c, 0x32d0, 0xb7fa,
+  0xb827, 0xd235, 0xb822, 0xb959, 0x2eba, 0x377e, 0x3780, 0x37a9,
+  0xb8a5, 0xbac3, 0xbab8, 0xb7fb, 0x231b, 0xb7fe, 0xa948, 0x3801,
+  0x387a, 0xba6e, 0xb805, 0xb7ff, 0x32d0, 0xb7b4, 0xb7e5, 0xba89,
+  0x231b, 0xb7e9, 0xb7f9, 0xb894, 0x37f3, 0x387a, 0xba6e, 0x3764,
+  0xbad4, 0x39ae, 0xd363, 0xb7f5, 0xba19, 0x385f, 0xb8e7, 0xbadb,
+  0x39de, 0xbaf3, 0xb8df, 0x37a6, 0xbae8, 0x3aaa, 0xbadf, 0x3b04,
+  0xbb17, 0xba39, 0x337f, 0xb8f2, 0x21d3, 0xb144, 0xa20a, 0xb7cf,
+  0xb7bb, 0x3a43, 0xcb4f, 0x39d8, 0xba23, 0xd988, 0x271d, 0xbb12,
+  0xb97f, 0x2353, 0xb9d5, 0xb852, 0xb851, 0xb90e, 0x3a31, 0xbafb,
+  0xb7a1, 0x3808, 0xb8e7, 0x1e2b, 0x3792, 0xb90f, 0xba48, 0xb968,
+  0xba94, 0xb9bf, 0x39d7, 0xba4b, 0xba3a, 0xba9c, 0xb9f3, 0xba01,
+  0xba33, 0x376f, 0xc6c3, 0xba03, 0x37f3, 0x3801, 0xba6e, 0xbf06,
+  0xb746, 0x3a11, 0xcc17, 0xb9f1, 0x3973, 0xb9d1, 0x4681, 0xc682,
+  0xb800, 0xb7a7, 0xb761, 0xb7ad, 0x2eba, 0x377e, 0x3780, 0x37a9,
+  0xb7d7, 0x2922, 0xa923, 0x3346, 0xcd91, 0xbaae, 0xb8f6, 0xb9e4,
+  0x391c, 0xbaa2, 0xbb1e, 0xaf03, 0x38cb, 0x3ab1, 0x3ac0, 0xc881,
+  0x38ca, 0x3ab1, 0x3ac0, 0xc881, 0xb936, 0xb7a8, 0xb7a3, 0xb80b,
+  0xba0a, 0x3808, 0xb85f, 0xca1c, 0x337f, 0xb816, 0xb8be, 0xbac2,
+  0xc897, 0xb9e8, 0x1e57, 0x9e58, 0xb858, 0x1e2b, 0x3792, 0xb860,
+  0x47f4, 0xc887, 0xb95a, 0xb749, 0x38c0, 0xbaa2, 0xbadd, 0xb9e7,
+  0xb9f6, 0xbb0f, 0xba3f, 0xba62, 0xb792, 0xd46e, 0xb8d5, 0xd45a,
+  0xb768, 0x2932, 0xb72c, 0xb7ab, 0xba62, 0xb7d5, 0xb918, 0xb78f,
+  0xb986, 0xb966, 0xb965, 0xb862, 0xc243, 0xba9d, 0x9e1a, 0x3885,
+  0xb9d1, 0xb781, 0xba13, 0x1e50, 0xba02, 0xb842, 0xbb16, 0xb9b2,
+  0xb961, 0xbaec, 0xbada, 0x3af8, 0xbb05, 0xc253, 0x2e72, 0xae79,
+  0xb43e, 0xb769, 0x3804, 0xd363, 0xb985, 0xba4a, 0xe198, 0xb864,
+  0xb9d9, 0x5028, 0xe392, 0xb784, 0xb7aa, 0x3885, 0xb973, 0xb760,
+  0x39f9, 0xba70, 0x2353, 0xb84c, 0x3865, 0xba4b, 0x3837, 0xba23,
+  0xb9c7, 0xba9f, 0x3abb, 0xce7f, 0xb80a, 0xbab3, 0xbae7, 0xb8bf,
+  0xb920, 0xb901, 0xb884, 0xb868, 0xb922, 0xb9d4, 0xb869, 0x1e50,
+  0xb97d, 0xb879, 0xb79e, 0xb8e5, 0xbad3, 0x3881, 0xcc17, 0xbac1,
+  0xb97c, 0xb807, 0xb7a2, 0x3837, 0xb9d8, 0x3743, 0xbb0a, 0x3a6b,
+  0xbace, 0x3aa3, 0xd262, 0x385c, 0xbafb, 0xb86a, 0x1e1b, 0x23e2,
+  0x3b09, 0xd5c2, 0x3734, 0xba8f, 0xb811, 0xb866, 0xcf47, 0xb92b,
+  0x3830, 0xcb4f, 0xb861, 0xb9b4, 0x3865, 0xb9d7, 0xb73a, 0x392d,
+  0xb955, 0x3a2a, 0xbace, 0x37f3, 0x3801, 0xb87a, 0xb9d4, 0xbae5,
+  0x3ad3, 0x5263, 0xd26a, 0xbade, 0xbaa9, 0xbafd, 0xb749, 0xb7fd,
+  0x3734, 0xba38, 0xcc37, 0xb863, 0x3a98, 0xd617, 0xba97, 0xb867,
+  0xb96b, 0xb9da, 0x38c0, 0xb91c, 0xba2f, 0xba81, 0x380e, 0xbadf,
+  0xb8bc, 0x23f0, 0xb7b1, 0x38ca, 0x38cb, 0x3ac0, 0xc881, 0xb9df,
+  0xb7e0, 0xb9db, 0x38ca, 0x38cb, 0x3ab1, 0xc881, 0xba12, 0xb8f9,
+  0xb7dc, 0xa1f3, 0xd030, 0x3a2a, 0xba6b, 0x3a10, 0xba79, 0xb803,
+  0xbb11, 0xb988, 0xb809, 0xb91f, 0xba7c, 0x380e, 0xbaaa, 0xba71,
+  0xb9e0, 0xb80c, 0xb7a5, 0xb987, 0xb80a, 0xb989, 0xbb1e, 0x385c,
+  0xba31, 0xba83, 0x380f, 0xbb17, 0xb989, 0x1e1b, 0x23e2, 0x3a37,
+  0xd5c2, 0x3743, 0xba29, 0xb924, 0xbad5, 0x271d, 0xb83e, 0xb984,
+  0x380f, 0xbb04, 0x60c1, 0x6b30, 0xeb31, 0x38c2, 0xbafa, 0x4f3a,
+  0xcf3c, 0x31fd, 0x3b53, 0x3b61, 0xea69, 0x1ffd, 0x30de, 0xda22,
+  0xbb5f, 0xbb50, 0xb17e, 0xbb3e, 0xbb58, 0xe4a6, 0xbb35, 0xdb0c,
+  0x23f9, 0xa606, 0xbb27, 0x3b22, 0xbb61, 0x259c, 0x3198, 0xb199,
+  0xbb3b, 0x355b, 0xb582, 0xb581, 0xbb24, 0x3b22, 0xbb53, 0x3b68,
+  0xbb69, 0x3b65, 0xbb69, 0x3b65, 0xbb68, 0xa24d, 0x3e0b, 0x3f80,
+  0xbf81, 0x6f52, 0xef7f, 0x1e97, 0x2c81, 0x2d57, 0xbb73, 0x1e97,
+  0x2c81, 0x2d57, 0xbb72, 0x2386, 0x23af, 0xbb77, 0x2386, 0x23af,
+  0xbb74, 0x2e30, 0x2f52, 0xc688, 0xbb7a, 0xbb79, 0x3bb1, 0xbbb2,
+  0x273d, 0x3b7f, 0x3b81, 0xbca1, 0x273d, 0x3b7e, 0x3b81, 0xbca1,
+  0xa92d, 0x273d, 0x3b7e, 0x3b7f, 0xbca1, 0xbba4, 0xbb98, 0xbb9e,
+  0xbbae, 0xbb8b, 0xbbab, 0xbb92, 0xbbaf, 0xbb87, 0xbb9a, 0xbb93,
+  0xbba1, 0x3b7c, 0xbbb2, 0x3b7c, 0xbbb1, 0xbbc6, 0xb147, 0xb740,
+  0x28f3, 0xbbbc, 0x28f3, 0xbbbb, 0xbbc1, 0x3bc0, 0x41ec, 0xdb6d,
+  0xdf42, 0xbbb4, 0x233b, 0xe1ab, 0xbbcf, 0xbbce, 0x50b2, 0xd8ac,
+  0xa936, 0xc562, 0xbbd8, 0xbbd7, 0xb583, 0xbbee, 0xbc08, 0xc403,
+  0xbbdf, 0xbbff, 0xbbf5, 0x4266, 0xc29b, 0xbc0c, 0x3be1, 0xbc0a,
+  0xbc08, 0xbc07, 0x3c17, 0x3c23, 0xc081, 0x3c14, 0x3c23, 0xc081,
+  0xe6f0, 0xbc2b, 0x3c14, 0x3c17, 0xc081, 0xbc2c, 0xbc22, 0xbc29,
+  0xbc33, 0xbc32, 0x3c35, 0xbc3a, 0x3c34, 0xbc3a, 0x1ecc, 0x21ab,
+  0xa1b0, 0x3c34, 0xbc35, 0x232f, 0x2f59, 0x2f5a, 0xbed9, 0xbf22,
+  0xbcdb, 0x3c5a, 0xbc61, 0x3c59, 0xbc61, 0x3c59, 0xbc5a, 0xbe6f,
+  0xbc74, 0xbc73, 0xbd36, 0xa1b3, 0xbef8, 0x3c89, 0xc00b, 0xbc88,
+  0xbca1, 0xa1b2, 0xbdfb, 0xbe9d, 0x273d, 0x3b7e, 0x3b7f, 0x3b81,
+  0xbc92, 0x3cfd, 0xbfa4, 0xc043, 0xbf1a, 0xc01d, 0xbdea, 0xbec4,
+  0xbe22, 0xbf59, 0x3eec, 0xcc04, 0xe63b, 0xbcb2, 0xbcb1, 0xbfd4,
+  0xe711, 0xa1b5, 0x1f71, 0xc04b, 0xbc4e, 0xbeaf, 0xbfd8, 0xa76d,
+  0xda3b, 0x3d99, 0xbdda, 0xa1ba, 0xa933, 0xbfa9, 0x3edd, 0xc027,
+  0xc018, 0xbffc, 0xc009, 0x3e8c, 0x3f51, 0xc67a, 0x3ca2, 0xbfa4,
+  0xbd87, 0xbf54, 0xa1bd, 0xc051, 0xbf54, 0xbc79, 0xcaaa, 0xb6f2,
+  0xbd79, 0xbde8, 0xbdfa, 0xbf3f, 0xbf86, 0xbe5e, 0xbeae, 0xbfc1,
+  0xbe2c, 0xbfae, 0x3e08, 0xbfdf, 0x26a0, 0xc00f, 0xbefb, 0xbe3e,
+  0xbef8, 0xbfc3, 0xbf6f, 0xbfdc, 0x3ee8, 0x3ff1, 0xbff5, 0xbfa3,
+  0x3f82, 0x3f84, 0xc013, 0xbf94, 0xbd43, 0xa1c2, 0x21c3, 0xa857,
+  0xbe7c, 0xbcfe, 0xbe09, 0xbe67, 0x5385, 0xd49e, 0x3cea, 0xbdda,
+  0xbfe4, 0x3e0e, 0xc006, 0xbf87, 0xbdf6, 0xbf23, 0xbf7f, 0xbe26,
+  0xbeb3, 0xbe19, 0xbecc, 0xbf64, 0x3f97, 0xc900, 0xbf32, 0x3e0b,
+  0x3f80, 0x3f81, 0xbfc7, 0xbf04, 0xa1c5, 0xa1c9, 0xbfb1, 0xbe7d,
+  0xc5f3, 0xa1c4, 0x3cea, 0xbd99, 0xbe0c, 0x21c0, 0xbd44, 0xbca6,
+  0x2a6c, 0xbedb, 0xbe7b, 0x26e6, 0x3e0a, 0xbe15, 0xbd9e, 0xbe05,
+  0xbd45, 0xbc97, 0xbdf8, 0xbe34, 0x3d4e, 0xbfdf, 0xbd89, 0x26e6,
+  0x3df5, 0xbe15, 0x3b6e, 0x3da9, 0x3f80, 0xbf81, 0xbde5, 0xbf2c,
+  0x3d9c, 0xc006, 0xbf38, 0xbfa0, 0x2d60, 0x3eaa, 0x5c3f, 0xdc40,
+  0xbf01, 0x26e6, 0x3df5, 0xbe0a, 0xc00b, 0xbef2, 0xbda3, 0xa1cf,
+  0xbca8, 0xbda1, 0xbeab, 0xbd4b, 0xbe07, 0x6030, 0xe04a, 0xbd51,
+  0xa1d1, 0xbd48, 0xbd8c, 0xbc64, 0xbdf3, 0xbd85, 0xbdc4, 0xc063,
+  0x3ebc, 0xbfd5, 0x3ee1, 0xbeff, 0xbfda, 0xa24c, 0xbf70, 0xbffa,
+  0xbf0a, 0xbf11, 0x3cfc, 0x3f51, 0xc67a, 0xa3b5, 0x3fdb, 0xd499,
+  0x21c6, 0xa1d6, 0xbf91, 0xbc9f, 0x2d60, 0x3e13, 0x5c3f, 0xdc40,
+  0xbe29, 0xbd49, 0x3cdd, 0xe061, 0xbda2, 0x4194, 0xe394, 0x3e7f,
+  0xbfd5, 0xbca7, 0xc06d, 0xbda4, 0xd365, 0xbf77, 0x232f, 0xbc47,
+  0xbefe, 0xbdeb, 0x3cf7, 0xc027, 0xbeef, 0x404e, 0x4054, 0xc067,
+  0xc044, 0x3e80, 0xbeff, 0xc005, 0xbffe, 0xbfeb, 0xc064, 0x3d5c,
+  0x3ff1, 0xbff5, 0xc058, 0xbfa6, 0x3caa, 0xcc04, 0xbede, 0xbe17,
+  0x2364, 0x3f9b, 0xc002, 0x3c7b, 0xbd52, 0xbd50, 0xbeda, 0x3e80,
+  0xbee1, 0xbe14, 0xbdaf, 0xb87c, 0xbe87, 0xbe89, 0xc055, 0xbca4,
+  0xbc49, 0xbd9f, 0x1e79, 0x1e7e, 0x9e81, 0xc1b3, 0xbe0d, 0xbf44,
+  0xbda8, 0xbe10, 0xbd46, 0xe88d, 0xbf31, 0xc04c, 0xc020, 0xc01f,
+  0xc032, 0xbff0, 0x3cfc, 0x3e8c, 0xc67a, 0x3d01, 0xbd2f, 0xbca9,
+  0x3f5c, 0xbff3, 0x3f5b, 0xbff3, 0xbda6, 0xbd54, 0xbe83, 0xc026,
+  0xbed7, 0xbda0, 0x3b6e, 0x3da9, 0x3e0b, 0xbf81, 0x3b6e, 0x3da9,
+  0x3e0b, 0xbf80, 0x3d67, 0x3f84, 0xc013, 0x3d67, 0x3f82, 0xc013,
+  0xbd47, 0xbd9d, 0xbe9c, 0xbd69, 0xbda7, 0xbfb3, 0x2364, 0x3ef7,
+  0xc002, 0xc03e, 0x21db, 0xa1dc, 0xbe11, 0xbd63, 0x3ca2, 0xbcfd,
+  0xbeea, 0xbcf6, 0xbd4d, 0xc032, 0xbdc0, 0xbf9a, 0xbd4a, 0xbd53,
+  0xbda9, 0x4028, 0xc02c, 0xc015, 0xbcb5, 0x3e7f, 0xbebc, 0xbcde,
+  0x3e81, 0xc02f, 0x3e95, 0xd499, 0xbd55, 0x3d4e, 0xbe08, 0xbd9b,
+  0xbee5, 0xbf4d, 0x3d5c, 0x3ee8, 0xbff5, 0x3f5b, 0xbf5c, 0x3d5c,
+  0x3ee8, 0xbff1, 0x65ca, 0xe614, 0xbe85, 0xbcfa, 0xbee4, 0x2364,
+  0x3ef7, 0xbf9b, 0xbee2, 0x3d9c, 0xbe0e, 0xbcfb, 0x3c88, 0xbe16,
+  0xbd4f, 0x3d67, 0x3f82, 0xbf84, 0xbfd2, 0xbcf8, 0xbca5, 0xbf47,
+  0xbf46, 0xbf74, 0x3cf7, 0xbedd, 0x3fd1, 0xc02c, 0x3fd1, 0xc028,
+  0xbfda, 0xaf25, 0x3f4b, 0xbfb0, 0xbf9c, 0xbca3, 0xbee0, 0x1f71,
+  0xbcd5, 0xbf45, 0x3edf, 0xc054, 0xc05d, 0xbd12, 0x3edf, 0xc04e,
+  0xbf13, 0xbee9, 0xc04f, 0xbe7e, 0xbee6, 0xbedf, 0xbec5, 0x2149,
+  0xc097, 0xc1c8, 0x670a, 0x671b, 0xe748, 0x4ac3, 0xcac8, 0x40fe,
+  0xdd64, 0x407e, 0xc0d6, 0x407d, 0xc0d6, 0xc1e6, 0xc16c, 0x3c14,
+  0x3c17, 0xbc23, 0x4210, 0x6229, 0xe46a, 0x23cd, 0xa3db, 0xc08f,
+  0xc08e, 0x2149, 0xc06e, 0xc152, 0xc197, 0x362d, 0x36cc, 0x4167,
+  0x41f3, 0xc7be, 0x4832, 0x491f, 0xc92e, 0xc0f1, 0xcf39, 0xeede,
+  0x1e3a, 0xc232, 0x4149, 0x632c, 0xe34a, 0xc1be, 0xc20d, 0x41d7,
+  0x421b, 0xc224, 0xc0f4, 0xc16c, 0x9e4c, 0x407d, 0xc07e, 0xc1ed,
+  0xc159, 0xc169, 0x413c, 0xc1d2, 0x41c1, 0xc217, 0xc1f4, 0xc1d9,
+  0xc1fc, 0xc1b1, 0xc0af, 0xc0c3, 0xc1a2, 0x407b, 0xdd64, 0xe2b7,
+  0x21de, 0x4155, 0x4188, 0xc199, 0xe2b2, 0x9e9f, 0x4130, 0xc1c4,
+  0xc165, 0xc1dc, 0xc1fe, 0x41cc, 0xc1d3, 0xb5e0, 0xc133, 0xc162,
+  0x4114, 0xc1c4, 0xc126, 0x40e7, 0xc1d2, 0xe35b, 0x40bc, 0x632c,
+  0xe34a, 0xc16e, 0xc09c, 0x21de, 0x4108, 0x4188, 0xc199, 0xb696,
+  0xb696, 0xc0df, 0x412d, 0xd315, 0xc115, 0x36cc, 0x40a4, 0x41f3,
+  0xc7be, 0xc0e6, 0x4080, 0xc0ca, 0xc151, 0x417e, 0xc185, 0x4174,
+  0xc185, 0x4174, 0xc17e, 0x21de, 0x4108, 0x4155, 0xc199, 0xc1fb,
+  0xd367, 0x3eb6, 0xe394, 0xc09d, 0x21de, 0x4108, 0x4155, 0xc188,
+  0xc0fd, 0xc0ed, 0xe88e, 0xbf2b, 0xc1ba, 0xc1b9, 0xc0bd, 0x40e8,
+  0xc217, 0x4114, 0xc130, 0xc06f, 0x411a, 0xc1d3, 0xac1e, 0x48f7,
+  0xcca6, 0x40e7, 0xc13c, 0x411a, 0xc1cc, 0xedf0, 0x40c2, 0x421b,
+  0xc224, 0xc0eb, 0xc116, 0x25b6, 0xd425, 0xc07f, 0xbbc1, 0xc0db,
+  0x36cc, 0x40a4, 0x4167, 0xc7be, 0xc0e9, 0xc18f, 0xc0ec, 0xc118,
+  0xd000, 0xc0c1, 0xc089, 0x40e8, 0xc1c1, 0x40c2, 0x41d7, 0xc224,
+  0x40c2, 0x41d7, 0xc21b, 0x9e89, 0xb11b, 0x1e3a, 0xc0ba, 0xb52b,
+  0xc23a, 0xc237, 0x9fce, 0x2c12, 0x2c13, 0xac14, 0x9e2c, 0xae8a,
+  0xb96a, 0xa889, 0xa899, 0xcb3a, 0xc258, 0x4255, 0x4a93, 0x4a97,
+  0xcabb, 0xb99c, 0x424e, 0x4a93, 0x4a97, 0xcabb, 0xc24d, 0xc25c,
+  0xc25b, 0xab83, 0x3c02, 0xc29b, 0x1f10, 0xa0a0, 0xb2b5, 0xc27d,
+  0x42a0, 0xc2a7, 0xc275, 0xc282, 0xc281, 0xa954, 0xc2a2, 0xd366,
+  0x3c02, 0xc266, 0x427a, 0xc2a7, 0xc28a, 0x427a, 0xc2a0, 0xc2ad,
+  0xc2ac, 0xa3d0, 0xdc7a, 0x5c7b, 0xdc8b, 0xc2c0, 0xc377, 0xc341,
+  0xc336, 0xc2b6, 0x2448, 0xb282, 0xc2fd, 0xdc7e, 0xc329, 0xc36e,
+  0xc370, 0xdc89, 0xaf87, 0xc368, 0xc2f9, 0xc345, 0xc36a, 0xc319,
+  0xc344, 0xc33b, 0x430d, 0xdc8d, 0xc2ed, 0xc2c8, 0xc318, 0xb08d,
+  0xc36b, 0xd653, 0xdc8e, 0x42f8, 0xdc8d, 0x431f, 0xc375, 0xc37c,
+  0xc2fe, 0xc2f0, 0x430e, 0xc375, 0xc380, 0xc33f, 0xc2cc, 0xdc6c,
+  0xdc93, 0xd75f, 0xc37b, 0xdc92, 0xc366, 0xc371, 0xc2b9, 0xc2f2,
+  0x4328, 0xd76f, 0xc2b8, 0xc2f1, 0xc2ee, 0xe3e1, 0x2956, 0x2968,
+  0xa96c, 0xdc98, 0xee9e, 0xc359, 0xc358, 0x217d, 0xc378, 0xc332,
+  0xc2ec, 0xc2ef, 0x4303, 0xc381, 0xc37a, 0xc2dd, 0xc2de, 0xc335,
+  0xd3b7, 0x430e, 0xc31f, 0xc2b7, 0x217d, 0xc363, 0xc36d, 0xc32e,
+  0xc315, 0xdc9b, 0xc321, 0xc36b, 0x583c, 0xdc9c, 0xa999, 0xa35b,
+  0xc4a3, 0xc4b5, 0xc452, 0xc46a, 0x43cf, 0xc474, 0xcfeb, 0xc44b,
+  0xc4b0, 0xc3fe, 0xc472, 0xc447, 0xc4bd, 0x4409, 0x4460, 0xc4a2,
+  0xc3ce, 0xc3cd, 0x43a8, 0xc474, 0xc43a, 0xc4cf, 0x4434, 0xc439,
+  0x2b9d, 0x2bda, 0x2bf3, 0xabf6, 0xa72d, 0xc4ab, 0x448e, 0xc4d4,
+  0xc43f, 0xc894, 0xc3b0, 0xbbec, 0xc46f, 0x43cb, 0x4460, 0xc4a2,
+  0x4483, 0xc4c8, 0xc4a1, 0xc489, 0x4411, 0xc463, 0x4410, 0xc463,
+  0xe6d5, 0x43e1, 0xc439, 0x43e1, 0xc434, 0xc3d0, 0xc4ca, 0xc3f2,
+  0xc3b3, 0xc3ae, 0xc39a, 0xc8af, 0x43cb, 0x4409, 0xc4a2, 0x4410,
+  0xc411, 0xc476, 0xc4a1, 0xd3b9, 0xc39b, 0xc405, 0xc4cc, 0xc3b1,
+  0x43a8, 0xc3cf, 0xc464, 0xc4a6, 0xc4b8, 0x440d, 0xc4c8, 0xc4bf,
+  0xc40f, 0x43f1, 0xc4d4, 0x440e, 0xc468, 0x43cb, 0x4409, 0xc460,
+  0xc391, 0xc477, 0xc3f0, 0xc3af, 0xc399, 0xc478, 0x28d0, 0xc3ba,
+  0xc487, 0x440d, 0xc483, 0xc4da, 0xc43c, 0xc470, 0xc3d1, 0xc4da,
+  0x43f1, 0xc48e, 0x44c9, 0xc4d2, 0xaf01, 0xcf38, 0xc515, 0xc50c,
+  0x4501, 0xcf3e, 0xc506, 0x44f6, 0xcf3e, 0xc4f7, 0xc4ef, 0x287c,
+  0x4816, 0xc8da, 0xc4ee, 0x4f42, 0xcf4c, 0x2617, 0x2690, 0xac1d,
+  0xb674, 0x1ea7, 0xc523, 0x1ea7, 0xc522, 0x4a4c, 0x52cf, 0xd607,
+  0x2b81, 0x2bcd, 0x2bd5, 0x2bd7, 0x2bdc, 0xabe7, 0xe6fb, 0x9fbd,
+  0x2722, 0xc53c, 0x2212, 0x2283, 0x2290, 0x456b, 0xc575, 0x2722,
+  0xc53a, 0xc54e, 0xc55d, 0x4559, 0xc571, 0xb6a2, 0x1ea9, 0x4552,
+  0x455d, 0xc55e, 0xd015, 0x283a, 0xc54d, 0x283a, 0xc54c, 0xc53d,
+  0xc560, 0x1ea9, 0x4546, 0x455d, 0xc55e, 0x4544, 0xc571, 0xa959,
+  0x1ea9, 0x4542, 0x4546, 0x4552, 0xc55e, 0x1ea9, 0x4546, 0x4552,
+  0xc55d, 0xc551, 0xa793, 0xbbd5, 0xc567, 0xc565, 0xc56a, 0xc568,
+  0x453b, 0xc575, 0xaf02, 0x4544, 0xc559, 0x23e0, 0x4582, 0x4589,
+  0xc58a, 0xc587, 0x453b, 0xc56b, 0xaf53, 0xc585, 0xa84d, 0x23e0,
+  0x4573, 0x4589, 0xc58a, 0x457a, 0xc586, 0xc585, 0xc574, 0x23e0,
+  0x4573, 0x4582, 0xc58a, 0x23e0, 0x4573, 0x4582, 0xc589, 0x458f,
+  0xde08, 0x458e, 0xde08, 0xc664, 0xc642, 0xc627, 0xc658, 0xc60d,
+  0xd0ac, 0xc667, 0xc632, 0xc621, 0xc60b, 0x46b0, 0xe764, 0xc5fe,
+  0xc665, 0xc670, 0xc5d9, 0xc662, 0x24d1, 0x2516, 0x255e, 0xc602,
+  0xc5c9, 0xc646, 0xc626, 0xc613, 0xc647, 0xd139, 0x45f3, 0xeebb,
+  0x3dcb, 0x45f2, 0xeebb, 0xc661, 0xc5fa, 0xc5f9, 0xc5b4, 0x24d1,
+  0x2516, 0x255e, 0xc5d6, 0xc649, 0xc62e, 0x3108, 0xc652, 0xc5af,
+  0xc5a1, 0xc5ea, 0xa591, 0xc61e, 0xc63b, 0xc617, 0xc5ae, 0xc645,
+  0xc5e9, 0xc59f, 0xc65f, 0xc671, 0xc606, 0xc5ad, 0xc63b, 0x4618,
+  0xc63a, 0xc66e, 0xc66d, 0xc597, 0x2af6, 0xb194, 0xc624, 0xc5e8,
+  0xc5eb, 0xc605, 0x3108, 0xc609, 0x4670, 0xd1c3, 0xc5a0, 0xc669,
+  0xc62a, 0xc5f4, 0xc5d2, 0xc66c, 0xc596, 0xc5c7, 0xc5ac, 0xc65e,
+  0xc672, 0xc663, 0xc63f, 0xc63e, 0xd1de, 0x45c8, 0x4655, 0xd1c3,
+  0xc62b, 0xc66b, 0xc675, 0xc674, 0x23d1, 0x32e8, 0x34a5, 0x3cfc,
+  0x3e8c, 0x3f51, 0x467c, 0x6166, 0x6197, 0xe1b1, 0xa0dc, 0x23d1,
+  0xc67a, 0x388d, 0xc682, 0x388d, 0xc681, 0xdc8c, 0x2e30, 0x2f52,
+  0xbb78, 0xc690, 0x2373, 0xa37d, 0xdccb, 0xc68b, 0xc69a, 0x21d2,
+  0xc691, 0xc6a1, 0xc69e, 0x36a4, 0xb6ad, 0xb61f, 0x45b1, 0xe764,
+  0xc6ba, 0x46b8, 0xc6b9, 0xef13, 0x46b2, 0xc6b9, 0x46b2, 0xc6b8,
+  0xc6b1, 0xef13, 0xc6c8, 0x376f, 0xb86e, 0xc6cd, 0xc6c1, 0x4f3d,
+  0x6262, 0xe4b5, 0xc897, 0xc6c7, 0xc6de, 0x2869, 0xee7d, 0x46e3,
+  0xdb7c, 0x5462, 0xd4cb, 0xc6dc, 0xc6e4, 0xcc20, 0xc6d7, 0xc6cf,
+  0xac3d, 0x46d1, 0xdb7c, 0xc6d8, 0xa362, 0x5361, 0xd62f, 0x1eff,
+  0xa023, 0xc742, 0x23bf, 0xce23, 0xc798, 0x5996, 0xd9c6, 0xb14e,
+  0xc71f, 0xc71e, 0xc726, 0xc725, 0xc72f, 0xc7d3, 0x472b, 0xc787,
+  0xc760, 0x1e51, 0x1f17, 0xd846, 0xd457, 0xc75c, 0xc709, 0xa6f0,
+  0xc75e, 0xc7bc, 0xc741, 0xc750, 0xc737, 0xc765, 0xc764, 0xd9a9,
+  0x23e1, 0xa8e1, 0xc7c1, 0xc7b6, 0xc72f, 0xc79e, 0xcff3, 0xc70d,
+  0xc792, 0xc7aa, 0xc7d2, 0xc7da, 0xc7a0, 0x1e86, 0xb6b8, 0xc7d9,
+  0xc786, 0xc751, 0x36cc, 0x40a4, 0x4167, 0xc1f3, 0xc785, 0xd499,
+  0xc7a2, 0xc72c, 0xc7b0, 0xc7a9, 0xcb36, 0x47e7, 0xda20, 0x9faf,
+  0x47e4, 0xda20, 0xc7ef, 0xc7eb, 0x3917, 0x4887, 0xc8f8, 0xc8ef,
+  0xc92c, 0x483f, 0x4926, 0x6271, 0x62db, 0xe45b, 0xc8ad, 0xc8bc,
+  0xc8c7, 0xc88e, 0x287c, 0x450e, 0xc8da, 0xc868, 0xc86f, 0xc8b8,
+  0xa38e, 0xc8aa, 0xc8d6, 0x40ae, 0x491f, 0xc92e, 0xc92a, 0xc931,
+  0xc92b, 0x47ff, 0x4926, 0x6271, 0x62db, 0xe45b, 0xc90e, 0xc85c,
+  0xb731, 0xc8a9, 0xc864, 0xc8fd, 0xc8d1, 0xc904, 0xc841, 0xc856,
+  0xc817, 0xc912, 0x27c6, 0x48ba, 0xc8bb, 0xc81a, 0xc8e0, 0x6e78,
+  0x6e7b, 0xee7c, 0x38ca, 0x38cb, 0x3ab1, 0xbac0, 0x3917, 0xc7f4,
+  0xc919, 0xc815, 0xc3f7, 0x27fc, 0x2d0e, 0xad5c, 0x27e6, 0x3900,
+  0xc6cc, 0xc8e7, 0xc8e3, 0x2ca9, 0x2d52, 0xad53, 0xe7a8, 0xc855,
+  0xc827, 0xc800, 0xc459, 0x33bd, 0xde2b, 0x6e78, 0xee7c, 0xc81c,
+  0x486e, 0xc8bb, 0x486e, 0xc8ba, 0xc801, 0xc920, 0xc812, 0xc859,
+  0xe695, 0xa387, 0xc82c, 0x287c, 0x450e, 0xc816, 0xc875, 0xc89c,
+  0xc89b, 0xc7f6, 0xc1d0, 0xc7f4, 0xeec4, 0xc857, 0xbda7, 0xc85a,
+  0x6669, 0x667a, 0xe6aa, 0x2760, 0xa89c, 0xc840, 0xc86a, 0xc88d,
+  0x40ae, 0x4832, 0xc92e, 0xc8c1, 0x47ff, 0x483f, 0x6271, 0x62db,
+  0xe45b, 0xc83a, 0xc83e, 0xc7fe, 0x40ae, 0x4832, 0xc91f, 0xc83b,
+  0xc93b, 0xc93a, 0xc9ae, 0xc9b4, 0xc9a9, 0xc9a1, 0xa996, 0xc995,
+  0xc9d8, 0xc9b0, 0xc98e, 0xb346, 0xc9b1, 0xc98d, 0xc984, 0xca1f,
+  0xc97f, 0xc9aa, 0xc978, 0xc96f, 0xc94e, 0xc943, 0xafa1, 0xc940,
+  0xc985, 0xc93c, 0xc962, 0xc977, 0xc93f, 0xe6e2, 0xc9c3, 0xa3b6,
+  0xc9bf, 0xca08, 0x527a, 0x52b8, 0x541f, 0x54fa, 0xd5dd, 0xcc7c,
+  0xae74, 0x49cc, 0x4a50, 0x67a6, 0x67a7, 0xef9d, 0x49cb, 0x4a50,
+  0xef9d, 0xca2e, 0xd018, 0x4a09, 0xccb3, 0xcc83, 0xa3ea, 0xe8eb,
+  0xc955, 0xca4d, 0x4a31, 0xca6a, 0xca2d, 0xca62, 0xca60, 0x4a3e,
+  0x4a3f, 0x55c1, 0xd5f3, 0xca0e, 0x4a5e, 0xca6d, 0xc9c6, 0x49d4,
+  0xccb3, 0xca05, 0x4cba, 0xd5ad, 0x4a3a, 0xca49, 0xb8f1, 0xc980,
+  0xca4c, 0xc9f8, 0xc9cd, 0x49f0, 0xca6a, 0xca3b, 0x4a4f, 0xca69,
+  0x4a1a, 0xca49, 0xca32, 0x4a01, 0x4a3f, 0x55c1, 0xd5f3, 0x4a01,
+  0x4a3e, 0x55c1, 0xd5f3, 0x4cd3, 0xdc37, 0xca57, 0x4c87, 0xcce0,
+  0x4a1a, 0xca3a, 0x4526, 0x4a23, 0x52cf, 0xd607, 0xc9ef, 0x6834,
+  0xe896, 0x4a33, 0xca69, 0x49cb, 0x49cc, 0xef9d, 0xca61, 0xca42,
+  0x4a06, 0xca6d, 0xc9fe, 0xca51, 0xc9fd, 0xca70, 0x6839, 0x683a,
+  0x683d, 0xe893, 0x4a33, 0xca4f, 0x49f0, 0xca31, 0xd3b7, 0x4a06,
+  0xca5e, 0xca63, 0x4aae, 0xcac6, 0xab86, 0xe631, 0xab8a, 0xcaca,
+  0xcab3, 0xcac5, 0xcab5, 0x4aaf, 0xcab0, 0x424e, 0x4255, 0x4a97,
+  0xcabb, 0x424e, 0x4255, 0x4a93, 0xcabb, 0xcac4, 0xcaa9, 0xcaba,
+  0xcac7, 0xca9d, 0xbd3c, 0xde30, 0x2be0, 0xcab6, 0x4a77, 0xcac6,
+  0x4a91, 0xcab0, 0x4a91, 0xcaaf, 0xca8a, 0xca8e, 0x2be0, 0xcaad,
+  0xcaa5, 0x424e, 0x4255, 0x4a93, 0xca97, 0x4076, 0xcac8, 0xca9c,
+  0xca8d, 0x4a77, 0xcaae, 0xcaa6, 0x4076, 0xcac3, 0xca83, 0xa947,
+  0x4aea, 0xdc4e, 0x9f2b, 0x6f8d, 0xef92, 0x1e26, 0x20a1, 0xae76,
+  0x4af6, 0xcaf8, 0x9fdf, 0x5abc, 0xdc0a, 0x4ad6, 0xdc4e, 0x4ade,
+  0xcaf8, 0x4ade, 0xcaf6, 0xcbea, 0xcbe4, 0x4b4d, 0xcbb0, 0x2173,
+  0xa4b2, 0xcb46, 0xcb67, 0xcb8d, 0x218a, 0x218c, 0x3547, 0x4b56,
+  0x4b5e, 0xcba3, 0x9f53, 0x4bc4, 0xd303, 0xc7e2, 0x424b, 0xcb8b,
+  0x4bed, 0xcc60, 0xcc69, 0xcbb2, 0xcb14, 0xd9d4, 0x4b0b, 0xcbb0,
+  0x3830, 0xba43, 0xcb7a, 0xcbc9, 0x3547, 0x4b27, 0x4b5e, 0xcba3,
+  0xcc06, 0xcb82, 0xcbf3, 0xcbe9, 0xcc39, 0xcb8f, 0x3547, 0x4b27,
+  0x4b56, 0xcba3, 0xcb15, 0xcbe0, 0xcc4c, 0xcb50, 0xcbd4, 0x4c3d,
+  0x4c56, 0xcc64, 0xcbe0, 0xcc21, 0xcb59, 0xcbe6, 0x00f6, 0x1e2a,
+  0xa00b, 0xcb3a, 0xcb1f, 0xcb5d, 0xae1a, 0xcc59, 0xa284, 0x3547,
+  0x4b27, 0x4b56, 0xcb5e, 0x4c00, 0xd536, 0xcbcb, 0xcc5c, 0xcc6e,
+  0xcc1e, 0xcc2b, 0xcbdb, 0x4b0b, 0xcb4d, 0xcb45, 0xd282, 0x4b35,
+  0xd303, 0xd483, 0xcb51, 0x2327, 0xcba7, 0xad4c, 0xcc23, 0xcc0d,
+  0xcb7c, 0xcc46, 0xcbac, 0x4b71, 0xcb7f, 0xcc12, 0xcb03, 0xcb86,
+  0x4b5b, 0x4c01, 0xcc6d, 0xcafe, 0x4b3c, 0xcc60, 0xcc43, 0xcc5b,
+  0xcc6c, 0xaf57, 0xcb5a, 0x4ba6, 0xd536, 0x4be9, 0xcc6d, 0x3caa,
+  0xbeec, 0xcb58, 0xcbd3, 0x4c14, 0xd4d1, 0xcbe1, 0x4c11, 0xd4d1,
+  0xcc6a, 0x3881, 0xba11, 0xcc2b, 0xcbaa, 0xc6d9, 0xcb80, 0xcbd1,
+  0xa142, 0x4bab, 0xcc18, 0x35d7, 0xcc4f, 0xba90, 0xcb5c, 0xcb7e,
+  0xae18, 0x4c52, 0xcc55, 0xcc5f, 0xcbee, 0xcbd7, 0xcb79, 0x35d7,
+  0xcc31, 0xcc58, 0xcc40, 0x55ae, 0xd5ea, 0xcc40, 0x4b7e, 0xcc64,
+  0x4c50, 0xd5e4, 0xcb93, 0xcbef, 0xcba8, 0xcc41, 0x4b3c, 0xcbed,
+  0x4b7e, 0xcc56, 0xcb3e, 0xcc16, 0xcbf1, 0x4be9, 0xcc01, 0xcba9,
+  0x2401, 0xefa5, 0xccf4, 0xe85e, 0xc9c8, 0xc9d5, 0x4a45, 0xcce0,
+  0xccb9, 0xeea4, 0xeecf, 0x5083, 0xd085, 0xccf6, 0xccf2, 0xccb5,
+  0x1ffc, 0xeb3b, 0xc1d0, 0x2986, 0x299d, 0x2a24, 0xccda, 0xccde,
+  0x36f2, 0x6eaf, 0x6eb4, 0xeeb9, 0xcce7, 0x49d4, 0xca09, 0xcca4,
+  0xcc8b, 0xca17, 0xccc9, 0xccdd, 0x6762, 0x6eaa, 0x6eab, 0x6eb5,
+  0xeeba, 0xe931, 0xccbd, 0xe92c, 0x4a40, 0xdc37, 0xe93b, 0x2986,
+  0x299d, 0x2a24, 0xcca7, 0xccc1, 0xccaa, 0x4a45, 0xcc87, 0xe94e,
+  0xccae, 0x26e2, 0xa6e3, 0xcc9d, 0xcc74, 0xcc9c, 0x1e1d, 0x4cf9,
+  0x4d72, 0xce9f, 0x4cf8, 0xce9f, 0xccfe, 0x1fc2, 0x4e18, 0x4e4b,
+  0xce6b, 0x229f, 0xccff, 0x4cfa, 0xcea0, 0x229f, 0xccfc, 0xceaa,
+  0xcea3, 0xcea6, 0xcea2, 0xcea1, 0xcea5, 0xcea8, 0xceab, 0xceb9,
+  0xceb3, 0xcebd, 0xcebe, 0xceaf, 0xceb0, 0xcebc, 0xceb1, 0x4d8b,
+  0xceae, 0x2e0b, 0xceb8, 0xcea7, 0xceb7, 0xcead, 0x4d4d, 0xceb4,
+  0xceba, 0xcdb7, 0xcd2e, 0xcdca, 0x4da2, 0xcef8, 0x324e, 0xcd25,
+  0x4e32, 0x4e8d, 0x4e9d, 0xcf27, 0xcec6, 0xcec2, 0xcec1, 0xcec5,
+  0xcebb, 0xcecd, 0xcec0, 0xcecb, 0xced0, 0xcecc, 0xcec8, 0xaf26,
+  0xcec4, 0xcd97, 0x4eca, 0xe77d, 0xae15, 0xcea9, 0x4d93, 0xcecf,
+  0xcd1d, 0xced7, 0xcec1, 0xced3, 0x34a7, 0x4d76, 0xcedd, 0xce8a,
+  0xcdea, 0x4e27, 0xcee6, 0x4ed4, 0xd8b4, 0xcede, 0xcedc, 0xceda,
+  0x4dab, 0x4dda, 0x4ebf, 0xcf10, 0xd32f, 0xced9, 0xced2, 0xced6,
+  0x4d82, 0xcedf, 0x1e1d, 0xccf8, 0xcedb, 0x4e6a, 0xced8, 0x34a7,
+  0x4d55, 0xcedd, 0xce36, 0x4e6d, 0xd812, 0xcee2, 0xced1, 0x4d71,
+  0xcedf, 0xcee1, 0xcee0, 0xcee8, 0xcee3, 0xcd18, 0xcee4, 0xcee5,
+  0x3346, 0xb8b1, 0x4d4c, 0xcecf, 0xcd45, 0x4e7c, 0xcee7, 0x4e8c,
+  0x4eed, 0xdce1, 0xcefc, 0xcf0d, 0x4dd1, 0xceff, 0x4d2c, 0xcef8,
+  0xcefb, 0x4d64, 0x4dda, 0x4ebf, 0xcf10, 0xcef6, 0xcef4, 0xcef9,
+  0xcefe, 0xceb2, 0xcf51, 0x4e43, 0xcef7, 0x23d5, 0xcf00, 0xaf69,
+  0xcd23, 0xceb6, 0xcefa, 0xceee, 0xcefd, 0x4e5b, 0xcef0, 0xceeb,
+  0xcef5, 0xcef2, 0xcf01, 0xcd27, 0xceef, 0xcde1, 0x303b, 0x3460,
+  0x4deb, 0xce3d, 0xce41, 0x4da0, 0xceff, 0x4dd6, 0xceea, 0xcef1,
+  0xce83, 0x4dd2, 0xceea, 0xcf03, 0xcf04, 0xcf02, 0x4d64, 0x4dab,
+  0x4ebf, 0xcf10, 0xcef5, 0xcf09, 0xcf0e, 0xcf14, 0x4dcd, 0xcf17,
+  0x4e01, 0xcf18, 0xd913, 0xcf0c, 0xcf16, 0xcf13, 0xcd5a, 0x303b,
+  0x3460, 0x4dcf, 0xce3d, 0xcf05, 0xceac, 0xcf11, 0xcf08, 0xcec3,
+  0xcf0f, 0xcf07, 0xd1f4, 0x4e15, 0xcf0a, 0x4de3, 0xcf18, 0x4e69,
+  0xcef3, 0xd426, 0xcf19, 0xcf22, 0xcf12, 0xcec9, 0xcf23, 0x4dfc,
+  0xcf0a, 0xcf1e, 0x4cfb, 0x4e4b, 0xce6b, 0xcf1a, 0xcf1c, 0xcf1f,
+  0xcf1b, 0x23bf, 0xc70c, 0x4e31, 0xceb5, 0x4d5b, 0xcee6, 0xae4c,
+  0xcf1d, 0xcf21, 0xcf29, 0x4e26, 0xceb5, 0x4d2f, 0x4e9d, 0xcf27,
+  0xcea4, 0xcf26, 0x4d77, 0xe9bd, 0xcf15, 0xcf25, 0x303b, 0x3403,
+  0x3460, 0x4dcf, 0xcdeb, 0xcee9, 0xcdd0, 0x4db3, 0xcef7, 0x4e70,
+  0xcf2b, 0xcf2a, 0xce66, 0x4e8e, 0x4e96, 0xcea4, 0x4cfb, 0x4e18,
+  0xce6b, 0x4e61, 0xcee3, 0xcf2f, 0xcec7, 0xcf2e, 0x1f1e, 0xa098,
+  0xcffb, 0xcf2d, 0xcdbd, 0xced5, 0x4e4d, 0xcee3, 0xcf0b, 0xce82,
+  0xce48, 0x4e04, 0xcef3, 0x4d75, 0xced8, 0x4cfb, 0x4e18, 0xce4b,
+  0x4d78, 0x5327, 0xd812, 0x4f30, 0xe7c1, 0xcf33, 0x4e45, 0x4f2b,
+  0xcf32, 0xcf34, 0xcece, 0x4d99, 0xcee7, 0xcf24, 0xcf31, 0xb9db,
+  0xce64, 0xcdd5, 0xe8a3, 0xcf2c, 0x4e98, 0xcf35, 0x4d56, 0xcea9,
+  0x4d9a, 0x4eed, 0xdce1, 0xcd2f, 0x4e4a, 0x4e96, 0xcea4, 0x4e92,
+  0xcf20, 0x4e8f, 0xcf20, 0xcf28, 0xb24d, 0x4e4a, 0x4e8e, 0xcea4,
+  0x4e89, 0xcf35, 0xcf06, 0x4d2f, 0x4e32, 0xcf27, 0x4cf8, 0xccf9,
+  0xccfe, 0xcd06, 0xcd05, 0xcd02, 0x4e34, 0x4e4a, 0x4e8e, 0xce96,
+  0xcd07, 0xcd04, 0xcd1a, 0xcd08, 0x4d4b, 0xce8a, 0xcd00, 0xcd09,
+  0xcdef, 0xcd1c, 0xcd18, 0xcd14, 0xcd15, 0xcd17, 0xcdb1, 0xcd0d,
+  0xcd1d, 0x4e26, 0xce31, 0xcdb8, 0xcd1b, 0xcd19, 0xcd0b, 0xcd21,
+  0xcd35, 0xcd16, 0xcd10, 0xcd13, 0x4d64, 0x4dab, 0x4dda, 0xcf10,
+  0xcd3a, 0x4d32, 0xcd4f, 0xcd31, 0xcdf4, 0xcd44, 0xcd33, 0xcd30,
+  0xce54, 0xcd42, 0xce10, 0xcd46, 0xcd3c, 0xcd40, 0xcd39, 0xce79,
+  0x4d4c, 0xcd93, 0xcd3f, 0xcd81, 0xcd68, 0xcd50, 0xcd5d, 0x4e5e,
+  0xe076, 0xcd70, 0xcd4e, 0x4d75, 0xce6a, 0xcd66, 0xcd62, 0xcd73,
+  0xcd61, 0x34a7, 0x4d55, 0xcd76, 0xcd5e, 0x4d71, 0xcd82, 0xcd86,
+  0xcd83, 0xcd79, 0x4d89, 0x4e4d, 0xce61, 0xcd8c, 0xcd8f, 0x4d5b,
+  0xce27, 0x4d99, 0xce7c, 0xcd88, 0xce3e, 0x4dd2, 0xcdd6, 0xcdbe,
+  0x4d9a, 0xce8c, 0xcdba, 0xcdcb, 0xcdbd, 0xcdd4, 0xcdc4, 0x4e04,
+  0xce69, 0xcdad, 0x4dbf, 0xcddc, 0xcdac, 0x4db3, 0xce43, 0x4d2c,
+  0xcda2, 0xcdaf, 0xcdb9, 0xcda3, 0xcd9c, 0xcdbb, 0xcdb0, 0x4da0,
+  0xcdd1, 0xcdb4, 0xcdc7, 0xcdd9, 0xcdd7, 0xcdd8, 0xcdec, 0xce9c,
+  0xcdf9, 0xcdf2, 0xcddd, 0x4dfc, 0xce15, 0xce62, 0xcde6, 0xcd9e,
+  0xcdde, 0xcdf6, 0x4d64, 0x4dab, 0x4dda, 0xcebf, 0xcdf1, 0xce0b,
+  0xcde9, 0xcde0, 0xce37, 0xcde8, 0xcde1, 0x4de3, 0xce01, 0xce09,
+  0xce1b, 0xce1f, 0xce1d, 0xce2b, 0xce17, 0xce1e, 0x4e8f, 0xce92,
+  0xce2d, 0xce0a, 0xce11, 0xce7d, 0xce39, 0xce35, 0x4d2f, 0x4e32,
+  0xce9d, 0xce93, 0xce2e, 0xce46, 0x4e45, 0xce70, 0xce88, 0xce5a,
+  0xce55, 0xce52, 0x4e6e, 0xe7c1, 0xce7e, 0xce70, 0xce6f, 0xce73,
+  0x4e89, 0xce98, 0x4f3b, 0x4f50, 0xe475, 0xa378, 0xc4e8, 0xc0b0,
+  0x3b20, 0xcf3c, 0xcf36, 0x3b20, 0xcf3a, 0x46cb, 0x6262, 0xe4b5,
+  0x44f6, 0xc501, 0x4516, 0xcf4c, 0xba3d, 0x275b, 0x28b0, 0x28b5,
+  0x28dc, 0xcf4e, 0x4516, 0xcf42, 0x275b, 0x28b0, 0x28b5, 0x28dc,
+  0xcf48, 0x4f36, 0xe475, 0x4db2, 0x4f52, 0xcf53, 0x4f51, 0xcf53,
+  0x4f51, 0xcf52, 0x2570, 0x26c9, 0xcf85, 0x4f70, 0xcf78, 0xcf77,
+  0x3683, 0xdfa0, 0x4f5a, 0xcf78, 0xcf86, 0x208c, 0x69e1, 0xea82,
+  0xcf80, 0xcf62, 0x4f5a, 0xcf70, 0xcf76, 0x4f88, 0xd98a, 0x21aa,
+  0xae42, 0xcf57, 0xcf74, 0x4f88, 0x5989, 0xd98a, 0x4f81, 0x4f87,
+  0x5989, 0xd98a, 0xd288, 0xd288, 0xcf97, 0xcf91, 0xcf90, 0xcf8c,
+  0xcfa5, 0xcfa8, 0xcfa4, 0xcfa3, 0xcf9f, 0xcfa1, 0x9e49, 0x217b,
+  0xe90a, 0xcfb9, 0x4fb6, 0xd1bb, 0x4fb4, 0xd1bb, 0xcfae, 0x4fc5,
+  0xcfe4, 0x4fc4, 0xcfe4, 0xcfe0, 0x9e60, 0xcff9, 0xcffd, 0xcfec,
+  0xcfc6, 0x4fc4, 0xcfc5, 0xc3a9, 0xcfda, 0xcffa, 0xc796, 0xcfd8,
+  0xcff1, 0x4e59, 0xe8dc, 0xcfd9, 0xc1ff, 0xb537, 0xd008, 0xd007,
+  0xd00b, 0xd00a, 0xc54a, 0xc9d0, 0xb7b1, 0xe504, 0xd02e, 0xd5c9,
+  0xd02c, 0x39c8, 0xe392, 0xd027, 0xd022, 0xbacc, 0xd073, 0xb065,
+  0xd043, 0xdead, 0x504c, 0x5077, 0xdec4, 0xd076, 0xd03c, 0xd07e,
+  0x5040, 0x5077, 0xdec4, 0xd079, 0x5068, 0xd06f, 0x2723, 0xa7a9,
+  0xe5fb, 0x28fb, 0xaa7f, 0x5066, 0x506a, 0xd070, 0x5061, 0x506a,
+  0xd070, 0x5054, 0xd06f, 0xd075, 0x5061, 0x5066, 0xd070, 0xd06f,
+  0x2abf, 0xb127, 0xd06f, 0x5054, 0x5068, 0x506b, 0xd06e, 0x5061,
+  0x5066, 0xd06a, 0xa8f0, 0xd038, 0x242c, 0xd07d, 0xd069, 0xd042,
+  0x5040, 0x504c, 0xdec4, 0xd04d, 0x242c, 0xd074, 0xd04b, 0x4c9b,
+  0xd085, 0x4c9b, 0xd083, 0xd088, 0xd087, 0xab8d, 0xd0af, 0x5178,
+  0xd193, 0xd135, 0xd19a, 0xd0da, 0xc5a3, 0xeaaf, 0x508e, 0xd0bb,
+  0xa3b7, 0x3bd3, 0xd8ac, 0xe91a, 0xd0af, 0xd14e, 0xd16b, 0xd139,
+  0x5105, 0x5107, 0xd10b, 0x1f37, 0xa191, 0x51bb, 0xd1bd, 0xb3f9,
+  0xd0a7, 0xa2dd, 0x585a, 0xeb0d, 0xb727, 0xd156, 0xd1da, 0x511b,
+  0xde01, 0xd1d9, 0xd1a0, 0x5106, 0xd13a, 0x50c1, 0xd10b, 0x5103,
+  0xd13a, 0xd0c1, 0xd109, 0xd108, 0x50c1, 0xd105, 0xd1be, 0x51d3,
+  0x51df, 0xead2, 0xd1cd, 0x5133, 0xd166, 0xd1bf, 0xd1e0, 0xa43b,
+  0x5173, 0xde0b, 0x50eb, 0xde01, 0xa507, 0x9fee, 0xd131, 0xd12b,
+  0x2318, 0x5111, 0xd166, 0xd0a1, 0xd161, 0xd1c9, 0x45ee, 0xd0c0,
+  0x5103, 0xd106, 0xd157, 0xa00e, 0x51c8, 0xd1d8, 0xe183, 0xd0be,
+  0xd0e8, 0xd13e, 0xd195, 0xd1a3, 0xd136, 0x2318, 0x5111, 0xd133,
+  0xd0bf, 0xef76, 0xe84b, 0x511a, 0xde0b, 0x50a0, 0xd193, 0xd1a9,
+  0xd183, 0xea30, 0xeac8, 0xd190, 0xd17d, 0xd182, 0xd1cf, 0x50a0,
+  0xd178, 0xd158, 0xd0a4, 0xd0f6, 0xd15f, 0xecd5, 0xd17b, 0xe94d,
+  0x6ac4, 0xead3, 0x4fb4, 0x4fb6, 0x50c6, 0xd1bd, 0x50c6, 0xd1bb,
+  0xd10d, 0xd113, 0xd1cb, 0x4655, 0xc670, 0x514a, 0xd1d8, 0xd138,
+  0xd1c0, 0xd110, 0x5191, 0xead5, 0x510f, 0xd1df, 0x514a, 0xd1c8,
+  0xd0ed, 0xd0ea, 0xd1e2, 0xc66f, 0x510f, 0xd1d3, 0xd114, 0xd1dc,
+  0xa367, 0x9e34, 0xd1f0, 0xd1ed, 0xcdfb, 0x23f0, 0xa76e, 0xdf3f,
+  0x9e0e, 0xa174, 0x1e3e, 0x3319, 0xb4e7, 0xb5e7, 0x3368, 0xd20e,
+  0xd20d, 0xd213, 0xd210, 0x5217, 0x62ea, 0xe4fa, 0x5216, 0x62ea,
+  0xe4fa, 0xe928, 0xd264, 0xd239, 0x523b, 0xd26b, 0xd266, 0xd259,
+  0xb7c1, 0xd24a, 0xd229, 0x522e, 0xd26b, 0xd236, 0xd231, 0xba2f,
+  0x3a79, 0xd26a, 0xd223, 0xd230, 0x3a79, 0xd263, 0x522e, 0xd23b,
+  0xd271, 0x26cf, 0xd270, 0x5276, 0x5277, 0x5c53, 0xdc54, 0x5273,
+  0x5277, 0x5c53, 0xdc54, 0x5273, 0x5276, 0x5c53, 0xdc54, 0xd279,
+  0xd278, 0x49c7, 0x52b8, 0x541f, 0x54fa, 0xd5dd, 0xcbc0, 0x4f8a,
+  0xcf8b, 0xd28c, 0xd28b, 0xa349, 0xd58c, 0xd56a, 0xd606, 0xd2b2,
+  0xd2b1, 0x49c7, 0x527a, 0x541f, 0x54b7, 0x54fa, 0x5553, 0xd5dd,
+  0xa20d, 0xd4ef, 0x1e42, 0xa208, 0xd466, 0xd5f6, 0xd3a7, 0xd407,
+  0xd4bc, 0xd2e7, 0x26cc, 0x4526, 0x4a4c, 0x5607, 0xd613, 0xd351,
+  0xd2e2, 0xd2e1, 0xd2ce, 0xa040, 0x55b2, 0xd60b, 0xd393, 0xd3f0,
+  0x4b35, 0xcbc4, 0x2179, 0xd332, 0xd396, 0xd622, 0xd526, 0xa84b,
+  0xc162, 0xd354, 0x4e6d, 0xd812, 0xcd65, 0xd438, 0x2179, 0xd30a,
+  0xd34a, 0xd395, 0xd346, 0x1f9f, 0xd5a6, 0xd2d0, 0xd318, 0x2e84,
+  0xd38a, 0xd598, 0xd3a2, 0xd558, 0xd4fd, 0xd434, 0xd54e, 0xd588,
+  0x5415, 0xd5ba, 0x46ea, 0x5569, 0xd62f, 0x3804, 0xb9ae, 0xd477,
+  0xbece, 0xc296, 0xc192, 0xd541, 0xd5ce, 0xd4c0, 0xd52d, 0xd552,
+  0xd452, 0xd464, 0x546f, 0x55ac, 0xd5e5, 0xdc46, 0xb357, 0xd510,
+  0x3d96, 0xd49e, 0x2e84, 0xd358, 0xd2fa, 0xd347, 0xd30e, 0xa50d,
+  0xd35a, 0xd2cb, 0xd40a, 0xd4ee, 0xd494, 0xd435, 0xd3df, 0xd59f,
+  0x4372, 0xca6b, 0xd555, 0xc469, 0x6d2c, 0x6daf, 0xee0e, 0x5493,
+  0xd4f4, 0xd3be, 0xd3bd, 0xd458, 0xb79c, 0x235c, 0xd514, 0xd3b5,
+  0xa807, 0x234e, 0x2d0b, 0xd550, 0xd2fd, 0xd506, 0x2eb5, 0x544a,
+  0xd4ed, 0xd445, 0xd2cc, 0xd3b1, 0xd420, 0xd4f1, 0x5360, 0xd5ba,
+  0xd600, 0xd63f, 0x49c7, 0x527a, 0x52b8, 0x54fa, 0xd5dd, 0xd40c,
+  0x56cd, 0xd7a2, 0x25b6, 0xc1df, 0xce08, 0xd56d, 0xd5a9, 0x9e07,
+  0x557f, 0x55fc, 0xd610, 0xd35d, 0xd3b4, 0xd330, 0xd55a, 0xd3f9,
+  0xa3f6, 0x2eb5, 0x53f4, 0xd4ed, 0xd36d, 0xc740, 0xd3d1, 0xb939,
+  0xd593, 0x46d6, 0xd4cb, 0xd36e, 0xd2c7, 0xd58a, 0xa85f, 0xb934,
+  0xd36f, 0xd525, 0xd364, 0xd515, 0xcbc6, 0xd546, 0xd562, 0xd523,
+  0xd51e, 0xb41c, 0x53bc, 0xd4f4, 0xd3b3, 0x31de, 0x3e95, 0x3fdb,
+  0xc7c7, 0x3d96, 0xd385, 0xaf60, 0xd533, 0xd2b8, 0xd2cd, 0xd36a,
+  0xae2d, 0x46d6, 0xd462, 0x4c11, 0xcc14, 0xd5cd, 0xd58a, 0xd63a,
+  0xd577, 0xe3a3, 0xea40, 0x2eb5, 0x53f4, 0xd44a, 0xd3b2, 0xd2c1,
+  0xd40d, 0x53bc, 0xd493, 0x49c7, 0x527a, 0x52b8, 0x541f, 0xd5dd,
+  0xd35c, 0x298d, 0xa9f8, 0xd3f1, 0xd37b, 0xd84a, 0x235c, 0xd3d4,
+  0xd482, 0xd48c, 0xd48b, 0xd471, 0xd311, 0xd36b, 0xd5bc, 0xd53b,
+  0xd4a8, 0xeebb, 0x2328, 0xd5cf, 0x4ba6, 0xcc00, 0xd594, 0xd61e,
+  0xd5fa, 0xd532, 0x55f9, 0xdb6a, 0xd368, 0xd487, 0x554b, 0xd602,
+  0x554a, 0xd602, 0xd35e, 0x234e, 0xd3ef, 0xd36c, 0xd2b8, 0xd3b8,
+  0xd35b, 0xd43c, 0xd489, 0xd361, 0xd29c, 0xd427, 0xd580, 0xd604,
+  0x55f4, 0xd60a, 0xd4e3, 0x5431, 0x55fc, 0xd610, 0xd570, 0xd35f,
+  0x546a, 0xd4df, 0xd297, 0xa9dc, 0xd460, 0xd537, 0x26ed, 0xa712,
+  0xd359, 0xd3b6, 0x1f9f, 0xd350, 0xd428, 0x55b0, 0xd60d, 0x536f,
+  0xd5e5, 0xca17, 0x4c54, 0xd5ea, 0xd5f7, 0x55ab, 0xd60d, 0x52f9,
+  0xd60b, 0x5360, 0xd415, 0xd52f, 0x4a01, 0x4a3e, 0x4a3f, 0xd5f3,
+  0x1e1b, 0x23e2, 0x3a37, 0xbb09, 0x201f, 0x2fa3, 0xd024, 0xd4dd,
+  0xd369, 0x2328, 0xd535, 0xd61a, 0x49c7, 0x527a, 0x52b8, 0x541f,
+  0xd4fa, 0x563d, 0xd646, 0xcc58, 0x536f, 0xd5ac, 0x4c54, 0xd5ae,
+  0x4a01, 0x4a3e, 0x4a3f, 0xd5c1, 0x5574, 0xd60a, 0xd2c8, 0xd5af,
+  0x553c, 0xdb6a, 0xd53a, 0x5431, 0x557f, 0xd610, 0xd41a, 0x554a,
+  0xd54b, 0xd572, 0xd2a6, 0x4526, 0x4a4c, 0x52cf, 0xd613, 0x5574,
+  0xd5f4, 0x52f9, 0xd5b2, 0x55ab, 0xd5b0, 0x6a65, 0xeaa5, 0x5431,
+  0x557f, 0xd5fc, 0x52cf, 0xd607, 0xba97, 0xd5d3, 0xd539, 0xd30f,
+  0xa170, 0x46ea, 0xd361, 0xd4e0, 0x55df, 0xd646, 0xd41d, 0xa914,
+  0x55df, 0xd63d, 0x1e55, 0xd65d, 0xd65c, 0xb16e, 0xc307, 0x21e6,
+  0xa904, 0xa47c, 0x565a, 0xd65b, 0x5657, 0xd65b, 0x5657, 0xd65a,
+  0xd64f, 0x1e55, 0xd64e, 0xa3f7, 0xd666, 0xd665, 0x9e8f, 0x567a,
+  0xd7f2, 0xd66f, 0xd7e3, 0xd66c, 0xd768, 0x2b83, 0xd6c7, 0xd66b,
+  0xd771, 0xe6d6, 0xd766, 0xd806, 0xd755, 0xd7fb, 0xd79e, 0xd801,
+  0x57a1, 0xd7c1, 0xd739, 0xd72f, 0x5745, 0x5836, 0xd83a, 0xd788,
+  0xd6d4, 0xd814, 0xd6ba, 0xec8d, 0xd706, 0xd6d4, 0xd6a6, 0x2b83,
+  0xd675, 0xd831, 0x5424, 0xd7a2, 0x5807, 0xd823, 0xd7f6, 0x5698,
+  0x56b4, 0xd716, 0xef03, 0xd83b, 0xd7a7, 0xd7c4, 0xd6fa, 0xd7ef,
+  0xd784, 0xd810, 0xd6f1, 0xd715, 0x5c9d, 0xdd1d, 0xd82d, 0xd6ac,
+  0xd782, 0xd6fb, 0xd6d4, 0xd778, 0x574b, 0xd81f, 0xd68c, 0xd68b,
+  0xeb4e, 0x5695, 0x5836, 0xd83a, 0x577f, 0xd805, 0xd7c8, 0xd7ec,
+  0x5721, 0xd81f, 0xd80d, 0xd680, 0xc32c, 0xd815, 0xd67e, 0xd671,
+  0xc33f, 0xd67b, 0xd717, 0xd7bb, 0xd811, 0x5747, 0xd805, 0xd7bf,
+  0xd70b, 0xd6f3, 0xd696, 0xd78e, 0xd78d, 0xd7fb, 0x5827, 0xd839,
+  0xd682, 0xd68a, 0x5424, 0xd6cd, 0x3594, 0xb59e, 0xd6ef, 0xd7ce,
+  0xd77c, 0xd780, 0xd68a, 0xd6f0, 0xd7c7, 0xd7c6, 0xd748, 0xd7a8,
+  0xd828, 0xd80e, 0xd66e, 0xd749, 0xd6f2, 0xd66b, 0xd6cf, 0xd821,
+  0xd80f, 0x5681, 0xd798, 0xd683, 0x5747, 0xd77f, 0xd67f, 0x56ce,
+  0xd823, 0xd74e, 0xd7d2, 0xd7f9, 0xd6f4, 0xd77e, 0x4d78, 0x4e6d,
+  0xd327, 0xd69d, 0xd761, 0x5721, 0xd74b, 0xd7f8, 0xb0f7, 0x56ce,
+  0xd807, 0x5799, 0xd839, 0xd7cf, 0xd702, 0xd6ca, 0x5695, 0x5745,
+  0xd83a, 0x5799, 0xd827, 0x5695, 0x5745, 0xd836, 0xd6ee, 0x4383,
+  0xdc9c, 0xd844, 0xd842, 0xe1c1, 0x1e51, 0x1f17, 0xc73e, 0x24af,
+  0xa580, 0xd511, 0xb72f, 0x2563, 0x5858, 0xe29c, 0xa40c, 0xadf7,
+  0x2563, 0x5854, 0xe29c, 0xd0e1, 0x236b, 0xd85e, 0x2675, 0x585f,
+  0xe053, 0xa1b2, 0x236b, 0xd85b, 0x2675, 0x585c, 0xe053, 0xd864,
+  0xd863, 0xd8dc, 0xe336, 0xd96f, 0xd89e, 0xa3ea, 0xd8b5, 0xd956,
+  0x2acb, 0x2b1d, 0xd8ca, 0xd918, 0xae12, 0x596a, 0x67c8, 0xe7e4,
+  0xd86e, 0x3bd3, 0xd0b2, 0xd972, 0xeef9, 0xd94f, 0x4d5d, 0xd8e4,
+  0xd87d, 0xd8cc, 0xd8dd, 0xd960, 0xd90c, 0xd885, 0xd8b7, 0x58e1,
+  0xe1cc, 0xd8e0, 0xd865, 0xd8c5, 0xd8d9, 0x58cf, 0xe1cc, 0xd933,
+  0xd95d, 0x58b4, 0xd932, 0xd947, 0x5912, 0xd943, 0xb707, 0xd92b,
+  0xd8f5, 0xd8f4, 0xa236, 0xa90d, 0xb0fc, 0xd8c8, 0xd90f, 0xd90e,
+  0x58e6, 0xd943, 0xcde5, 0xd886, 0xd938, 0xd94c, 0xd8ed, 0xd8e4,
+  0xd8e2, 0xd964, 0xd91b, 0x9eb5, 0x58e6, 0xd912, 0xd8e5, 0xd91d,
+  0xb742, 0xd8af, 0xd974, 0xd884, 0xd8e3, 0xd8c6, 0xd934, 0xd89c,
+  0xb446, 0xb4f7, 0xd86c, 0xd8ad, 0x5955, 0xd97d, 0xd974, 0x2364,
+  0xa365, 0x290d, 0xafa9, 0xe738, 0xb838, 0x4f87, 0x4f88, 0xd98a,
+  0x4f81, 0x4f87, 0x4f88, 0xd989, 0xd9c1, 0xaf01, 0xd9c3, 0xd9c4,
+  0x599a, 0x59ba, 0xd9c9, 0x5994, 0xd9c5, 0x5993, 0xd9c5, 0x470e,
+  0xd9c6, 0xd9c7, 0x5990, 0x59ba, 0xd9c9, 0xd9cb, 0xd9cd, 0xd9ce,
+  0x59bd, 0xd9c8, 0xc779, 0x9eb2, 0xd9ca, 0xd9cf, 0xd9b7, 0xd9d0,
+  0x59c0, 0xd9c2, 0xd9bc, 0x59b0, 0xd9d1, 0x358d, 0x5990, 0x599a,
+  0xd9c9, 0xd9b6, 0x59a7, 0xd9c8, 0xd9cc, 0x59b3, 0xd9c2, 0xd98b,
+  0x59b3, 0xd9c0, 0xd98e, 0xd98f, 0x5993, 0xd994, 0x470e, 0xd996,
+  0xd998, 0x59a7, 0xd9bd, 0x5990, 0x599a, 0xd9ba, 0xd9ac, 0xd9a1,
+  0xd9bf, 0xd9a5, 0xd9a6, 0xd9af, 0xd9b2, 0xd9b7, 0xcb4b, 0x59ef,
+  0xd9f6, 0xb2b5, 0xd9f4, 0xd9e7, 0xd9f8, 0xd9e3, 0x59d7, 0xd9f6,
+  0xd9de, 0x59d7, 0xd9ef, 0xd9e6, 0x59fd, 0xd9ff, 0x59f9, 0xd9ff,
+  0x59f9, 0xd9fd, 0x5a01, 0xdba0, 0x5a00, 0xdba0, 0xdba2, 0xdba3,
+  0xdba1, 0xdbaf, 0xdba7, 0xdba8, 0xdba6, 0xdbb1, 0xdbad, 0xdbaa,
+  0xdbab, 0x3258, 0xdbac, 0xdbb0, 0xdabe, 0xdbb9, 0xdbb6, 0xdbbc,
+  0x47e4, 0xc7e7, 0x241f, 0xa656, 0xbb23, 0xdbc0, 0xdbb7, 0xdbbb,
+  0xdbbf, 0x9fe1, 0xdbbe, 0xdbb8, 0x5b6f, 0xdbd1, 0xdbc9, 0x24ec,
+  0xdbc3, 0xdbca, 0xbce8, 0x5b49, 0xdbc1, 0xda6c, 0xdbc2, 0x2467,
+  0xdbcb, 0x246a, 0xa492, 0xa46d, 0xdbb5, 0xdbc8, 0xdbd2, 0xdbcf,
+  0xdbc4, 0xdbd0, 0xdbc7, 0xdbce, 0xdbc5, 0xdbcd, 0xdb8b, 0xa48f,
+  0xdbe9, 0xdbe2, 0xdbe3, 0xdbd5, 0xabdf, 0xdbd7, 0xdbe7, 0x5a3d,
+  0xdbdf, 0xdbe1, 0xdbe0, 0xdbd8, 0x5b6e, 0xdbdd, 0xdbe5, 0xdbe6,
+  0xdbdc, 0xdbd9, 0xdbd6, 0xdbd4, 0xdbdb, 0xdbd3, 0xa938, 0xdb7d,
+  0xdb04, 0xafd7, 0xdba4, 0xdbf3, 0xdbf6, 0xdbde, 0x3096, 0xb102,
+  0x2500, 0xdbf1, 0xdbee, 0xdbed, 0xdbda, 0xdbeb, 0xdbec, 0xdbef,
+  0xdbf0, 0xdbf5, 0xdbf2, 0x5aac, 0xdbf4, 0x5aaa, 0xdbf4, 0x5b80,
+  0xdbfb, 0xa531, 0xdc01, 0xdbfe, 0xdc07, 0xdbfd, 0x4ae9, 0xdc0a,
+  0xda1a, 0xdc03, 0xdc04, 0xdc06, 0xdc08, 0xdbff, 0xdbf7, 0x5aeb,
+  0xdc0f, 0xdbe4, 0xdbf9, 0xdbfc, 0xdc05, 0xdbba, 0xdc02, 0xdc00,
+  0xdc0d, 0xdc1e, 0xdc1d, 0x5afc, 0xdc16, 0x5b1a, 0xdc25, 0xdbe8,
+  0x5b8d, 0xdc14, 0xdc1b, 0xdc10, 0xdb5c, 0x5acc, 0xdc0f, 0x242f,
+  0x2518, 0x2553, 0x2554, 0x255f, 0xe5d9, 0xdc15, 0xdc18, 0xdbb3,
+  0x3697, 0xdc19, 0xdc0c, 0x5bbd, 0xe8a8, 0xdbf8, 0xdc1a, 0x5ae0,
+  0xdc16, 0xdbfa, 0xdc0b, 0xdc12, 0xdc13, 0xda8a, 0xdbcc, 0xdc0e,
+  0xbb4c, 0xdc1c, 0xdc27, 0xdc11, 0xdc21, 0xdc24, 0xdc26, 0x5ae1,
+  0xdc25, 0xdbb2, 0xdc22, 0x5b21, 0xdc23, 0x5b20, 0xdc23, 0xdc1f,
+  0xa546, 0x5b81, 0xdc2a, 0xdc2c, 0x5b7e, 0xdc2b, 0xa5f9, 0xdbb4,
+  0xdc28, 0x247c, 0xa611, 0xdc29, 0x24d7, 0xa629, 0x5a3c, 0xdbc1,
+  0xdbb9, 0xdc32, 0xdba5, 0xa642, 0x5b5b, 0xdc2e, 0xdbc6, 0xdc2f,
+  0xdc2d, 0x5b56, 0xdc2e, 0x5ae9, 0xdc31, 0xa66a, 0x553c, 0xd5f9,
+  0x2661, 0xdc35, 0xbbc1, 0x5a71, 0xdbdd, 0x5a33, 0xdbd1, 0xdbae,
+  0xa584, 0x5b93, 0xdba9, 0xdc34, 0xb2a4, 0xdbea, 0x46d1, 0xc6e3,
+  0xda89, 0x5b2d, 0xdc2b, 0x5aad, 0xdbfb, 0x5b2b, 0xdc2a, 0x5b9a,
+  0xdd5e, 0xdc09, 0x23d8, 0xa909, 0xda5f, 0x2bb4, 0xe1bc, 0x5ae4,
+  0xdc14, 0x1ec7, 0x5b90, 0xe6e0, 0x5b8e, 0xe6e0, 0xdc17, 0x5b72,
+  0xdba9, 0xdc30, 0xdc36, 0x5b83, 0xdd5e, 0xdc20, 0xdc33, 0x5a00,
+  0xda01, 0xda08, 0xda02, 0xda03, 0xda8d, 0xdb4f, 0xda10, 0xda0c,
+  0xda0e, 0x5b72, 0xdb93, 0xda15, 0xda16, 0x3258, 0xda17, 0xda13,
+  0xdb70, 0xda0a, 0xda18, 0xda12, 0xdb1b, 0xdaf1, 0xdb33, 0xda4e,
+  0xda1d, 0xda25, 0xda31, 0x5a1b, 0xdb4c, 0xdad6, 0xda29, 0xda1f,
+  0x5af7, 0xe8a8, 0xda2d, 0xda2a, 0xda23, 0x5a3c, 0xdb49, 0xda41,
+  0xda36, 0xda55, 0xda5b, 0xdb58, 0xda57, 0xda50, 0xda34, 0xda3a,
+  0xda46, 0xdb05, 0xda5e, 0xda58, 0xda54, 0xda56, 0x5a33, 0xdb6f,
+  0xda52, 0xda86, 0xda84, 0xda66, 0xda7f, 0xda69, 0xda70, 0xda7c,
+  0xdaa0, 0xda85, 0xda75, 0x5a71, 0xdb6e, 0xda95, 0xda6c, 0xda6e,
+  0xda6d, 0xda62, 0xda63, 0xdacd, 0xda72, 0xda73, 0xda6b, 0xdae2,
+  0xda61, 0xdb78, 0xdaa1, 0xdaa3, 0xda9e, 0xda9a, 0x309e, 0xdaa4,
+  0xdaa5, 0x2500, 0xda98, 0xdaa8, 0xda91, 0x5aaa, 0xdaac, 0xdaa6,
+  0xda92, 0xdacb, 0xdaf8, 0xdacf, 0xdafe, 0x5aad, 0xdb80, 0xdad1,
+  0xdab9, 0xdab2, 0xdac9, 0xdadb, 0xdab0, 0xdad7, 0xdabf, 0xdac2,
+  0xdad2, 0xdac4, 0xdab6, 0xdac7, 0xdb85, 0x4ae9, 0xdabc, 0xdb00,
+  0xdaf6, 0xdadc, 0xdb0a, 0x5acc, 0xdaeb, 0xdae7, 0xdb14, 0xdb01,
+  0xdb02, 0x5ae4, 0xdb8d, 0xdaed, 0x5ae0, 0xdafc, 0xdb92, 0xdaee,
+  0x3697, 0xdaf3, 0xdafa, 0xdae6, 0xdb0e, 0xdade, 0xdadd, 0xdb28,
+  0xdb9c, 0xdb16, 0xdb1d, 0x5b20, 0xdb21, 0xdb17, 0x5ae1, 0xdb1a,
+  0xdb19, 0xdb10, 0xdb39, 0xdb3e, 0x5b2b, 0xdb81, 0x5b2d, 0xdb7e,
+  0xdb2c, 0xdb5a, 0x5b56, 0xdb5b, 0xdb59, 0xdb95, 0xdb5c, 0xdb4e,
+  0xdb9e, 0xdb74, 0xdb6b, 0xdb96, 0x4a40, 0xccd3, 0xac88, 0x3e13,
+  0x3eaa, 0xdc40, 0x3e13, 0x3eaa, 0xdc3f, 0xd373, 0xac82, 0x1e30,
+  0x5c50, 0x673b, 0xe74a, 0x4ad6, 0xcaea, 0x1e30, 0x5c4a, 0x673b,
+  0xe74a, 0x5273, 0x5276, 0x5277, 0xdc54, 0x5273, 0x5276, 0x5277,
+  0xdc53, 0xdc5a, 0xdc58, 0xdc87, 0x9e88, 0xc32a, 0xdc76, 0xdc6e,
+  0xc2b2, 0xc2b4, 0xdc94, 0xc2c9, 0xef26, 0xdc64, 0xc2e2, 0xc2b4,
+  0xc683, 0x42f8, 0xc30d, 0xc30a, 0xc32f, 0xc32b, 0xdc7c, 0xc34f,
+  0xc37e, 0x4383, 0xd83c, 0x56fd, 0xdd1d, 0xdd1e, 0x2458, 0x24e1,
+  0xdd20, 0xdd1f, 0x321d, 0xdd22, 0xdd21, 0xdd2b, 0xdd27, 0xdd29,
+  0xdd2a, 0xdd2f, 0xdd23, 0x2295, 0x5cea, 0xdd28, 0x2f10, 0x5cb3,
+  0xdd30, 0xdd2e, 0xdd33, 0xdd40, 0x2f10, 0x5cae, 0xdd30, 0xdd35,
+  0xdd2c, 0x9e70, 0xdd37, 0xdd36, 0xdd39, 0xdd34, 0xdd3b, 0xdd38,
+  0xdd3a, 0xdd32, 0xdd42, 0xdd41, 0xdd3f, 0xdd45, 0xdd44, 0xdd3e,
+  0x2379, 0xb064, 0xdd3c, 0xc68e, 0x5d13, 0xdd43, 0x5ce4, 0xdd31,
+  0xdd48, 0xdd4a, 0x2bbe, 0xdcd4, 0x2bbe, 0xdcd3, 0xdd47, 0xdd4a,
+  0xdd52, 0xdd49, 0x5d0a, 0xdd5e, 0xdd50, 0xdd4f, 0xdd54, 0x4d9a,
+  0x4e8c, 0xdd53, 0x5d12, 0xdd24, 0x2356, 0xa8f2, 0x5cce, 0xdd31,
+  0xdd4b, 0xdd55, 0x2295, 0x5cad, 0xdd28, 0xdd4d, 0xdd26, 0xdd4c,
+  0xa046, 0x5d56, 0xe83c, 0xdd57, 0x5d4d, 0xef4e, 0xdd5a, 0xdd59,
+  0xdd2d, 0xdd5b, 0xdd5c, 0x3557, 0xdd25, 0xdd3d, 0xdd58, 0xdd5f,
+  0xdd60, 0x5cdb, 0xdd5e, 0x2050, 0x5d17, 0xdd5d, 0xdd61, 0xdd62,
+  0xdd46, 0x5ce2, 0xdd24, 0x5ccd, 0xdd43, 0xdd51, 0xdd4e, 0x2050,
+  0x5d0b, 0xdd5d, 0xdd63, 0xdd43, 0x56fd, 0xdc9d, 0xdc9e, 0xdca0,
+  0x2458, 0x24e1, 0xdc9f, 0xdca2, 0x321d, 0xdca1, 0xdcac, 0x5ce2,
+  0xdd12, 0x3557, 0xdd01, 0xdcec, 0xdca8, 0x5cad, 0xdcea, 0xdca9,
+  0xdcaa, 0xdca7, 0xdcb6, 0xdcfc, 0xdcaf, 0xdcab, 0x2f10, 0x5cae,
+  0xdcb3, 0x5cce, 0xdce4, 0xdcc1, 0xdcb0, 0xdcbc, 0xdcb4, 0xdcba,
+  0xdcb8, 0xdcbf, 0xdcbb, 0xdcc0, 0xdcbd, 0xdcca, 0xdd04, 0xdcc8,
+  0xdcc4, 0xdcb2, 0xdcc3, 0xdcc2, 0x5ccd, 0x5d13, 0xdd1c, 0xdcc7,
+  0xdcc5, 0xdd10, 0xdcd5, 0xdcd1, 0xdcda, 0x5cd2, 0xdcd6, 0xdce6,
+  0xdced, 0x5ceb, 0x5cf7, 0xef4e, 0xdd16, 0xdcde, 0xdcdc, 0xdd14,
+  0xdcd9, 0xdce1, 0xdce0, 0xdce7, 0x5cf4, 0xe83c, 0xdcf5, 0xdd05,
+  0xdcfb, 0xdcfa, 0xdcfd, 0xdcfe, 0x2050, 0x5d0b, 0xdd17, 0x5b83,
+  0x5b9a, 0x5cdb, 0xdd0a, 0xdd07, 0xdd08, 0xdd0d, 0xdd0f, 0xdd1b,
+  0x407b, 0xc0fe, 0xdd6c, 0xdd6a, 0xdd71, 0xdd70, 0xdd99, 0xdd95,
+  0x2c1f, 0x2c20, 0x6bae, 0x6c7b, 0xec9c, 0xdfdf, 0xdd82, 0xdd81,
+  0xdda8, 0xdda6, 0xdd76, 0xdd75, 0xdd91, 0xdd8b, 0xde7a, 0x5dc3,
+  0xde8d, 0xddb2, 0xddb1, 0xde89, 0xde38, 0x5daf, 0xde8d, 0xde4c,
+  0xde92, 0xdff9, 0xddfa, 0xde29, 0xde10, 0xde82, 0xde7a, 0xde55,
+  0xde9a, 0xdde5, 0xde8b, 0xac40, 0x50eb, 0xd11b, 0x458e, 0xc58f,
+  0xde34, 0x511a, 0xd173, 0xde8a, 0xddf5, 0xde64, 0xddf4, 0xde64,
+  0xc8b0, 0xde93, 0xde91, 0xcaac, 0xde0a, 0xddbb, 0xde4f, 0x5e79,
+  0xdea2, 0xddc4, 0xde44, 0xdea1, 0xde63, 0xddf8, 0xdff9, 0xde52,
+  0x5e28, 0xde2a, 0x5e8a, 0xde95, 0x5e4b, 0xdea2, 0x5dac, 0xddf7,
+  0xdea5, 0xddf6, 0xde84, 0xde83, 0xa8b8, 0xddb8, 0x5e0c, 0x5e70,
+  0xde95, 0x5dfb, 0xe6ae, 0x5daf, 0xddc3, 0xdeaa, 0xde2f, 0xddde,
+  0xde2c, 0x5e70, 0xde8a, 0xdeaa, 0xddf9, 0xdea6, 0xde51, 0x5e4b,
+  0xde79, 0xde7f, 0xde9c, 0x5e8f, 0xde99, 0xdeb3, 0xd03d, 0xdec0,
+  0x1f53, 0x5ec6, 0x6ab5, 0xead4, 0xdeb2, 0xdeb1, 0xdeac, 0xdeaf,
+  0x5040, 0x504c, 0xd077, 0x1f53, 0x5eb0, 0x6ab5, 0xead4, 0xdf66,
+  0xdf67, 0xdf68, 0xa19b, 0xdf6a, 0xdf69, 0xdf6b, 0x3799, 0x5ef6,
+  0xdf6d, 0xdf6f, 0x5f49, 0xdf6c, 0x5f5f, 0xdf70, 0xdf77, 0xdf78,
+  0x5f29, 0xdf88, 0xdf71, 0x3799, 0x5edb, 0xdf6d, 0xdf74, 0xdf75,
+  0xdf7a, 0xdf72, 0xdf76, 0x5f15, 0xdf7b, 0xdf7c, 0xdf5c, 0xdf83,
+  0xdf82, 0xdf81, 0xdf80, 0xdf7d, 0xdf7e, 0x5f1b, 0xdf86, 0xdf36,
+  0x5f19, 0xdf84, 0xb33d, 0x1fcc, 0xdf85, 0x5efd, 0xdf7b, 0x5f12,
+  0xdf84, 0x5f0c, 0xdf86, 0x5f3a, 0xdf8e, 0xdf89, 0xdf8b, 0xdf8d,
+  0xdf57, 0xdf8a, 0xdf87, 0x5ef0, 0xdf88, 0xdf6e, 0xdf8c, 0xdf6f,
+  0xdf91, 0xdf8f, 0xdf0f, 0xdf93, 0x5f1c, 0xdf8e, 0xdf90, 0xdf92,
+  0xdf97, 0xd206, 0x67b1, 0x67dc, 0xe7ec, 0xbbc2, 0x5f96, 0xe38b,
+  0xdf95, 0xdf98, 0x5ee2, 0xdf6c, 0xdf99, 0xdf7f, 0xdf9a, 0xdf21,
+  0xdf00, 0x5ee3, 0xdf70, 0xdf94, 0xdf79, 0xdf73, 0xdeca, 0xdecb,
+  0xdecc, 0xded2, 0xded1, 0xded4, 0x5ee2, 0xdf49, 0x3799, 0x5edb,
+  0xdef6, 0xdf2a, 0x5edf, 0xdf2d, 0x5ee3, 0xdf5f, 0xdef2, 0xdefb,
+  0xdf64, 0xdef8, 0xdef9, 0xdefc, 0xdee4, 0xdeeb, 0xdf62, 0xdefa,
+  0x5efd, 0xdf15, 0xdefe, 0xdf09, 0xdf0a, 0xdf4e, 0xdf08, 0xdf07,
+  0xdf05, 0xdf03, 0x5f12, 0xdf19, 0xdf14, 0x5f0c, 0xdf1b, 0xdf26,
+  0x5ef0, 0xdf29, 0xdf1d, 0xdf25, 0xdf1e, 0xdf2c, 0xdf1f, 0x5f1c,
+  0xdf3a, 0xdf33, 0xdf3b, 0xdf2f, 0xdf3c, 0xdf38, 0xdf61, 0xdf45,
+  0xdf44, 0xdf3e, 0xdf46, 0xdf4d, 0xdf54, 0x5f9e, 0x5fa4, 0xdfad,
+  0x5f9d, 0x5fa4, 0xdfad, 0xe5e2, 0x3683, 0xcf6a, 0x2f01, 0x5fa9,
+  0xdfaf, 0x5f9d, 0x5f9e, 0xdfad, 0xa29e, 0x2f01, 0xdfa8, 0x2f01,
+  0xdfa7, 0x2f01, 0x5fa1, 0xdfaf, 0xdfae, 0x5f9d, 0x5f9e, 0xdfa4,
+  0xdfab, 0x2f01, 0x5fa1, 0xdfa9, 0xa19c, 0xdfb6, 0xdfb5, 0x5fba,
+  0x6089, 0xe08a, 0x5fb9, 0x6089, 0xe08a, 0xe07c, 0x6039, 0xe054,
+  0xe077, 0xdfc3, 0xdfc2, 0xdfe4, 0xe04e, 0xe081, 0x231d, 0xae00,
+  0xe04b, 0xe084, 0xe019, 0xe032, 0xe060, 0xe055, 0xe023, 0x5d7f,
+  0x6045, 0xe072, 0xdfc6, 0xe008, 0xe087, 0xaef8, 0xaf80, 0xe003,
+  0x2f84, 0x2f91, 0xe015, 0x26d8, 0x26de, 0x26ec, 0x2efb, 0x2efd,
+  0xe025, 0x5de1, 0xde5f, 0x1e43, 0xaefc, 0xe069, 0xdfef, 0xdfe5,
+  0xe078, 0xe05c, 0xe052, 0x6013, 0xe05e, 0x6012, 0xe05e, 0x2f84,
+  0x2f91, 0xdff3, 0xdfd9, 0xdfde, 0x26d8, 0x26de, 0x26ec, 0x2efb,
+  0x2efd, 0xdff4, 0xe090, 0xa954, 0x3e38, 0xe04a, 0xa468, 0xdfdb,
+  0x5fbe, 0xe054, 0xe060, 0xe08f, 0xa06a, 0xe06f, 0x5fdf, 0xe072,
+  0x1fa6, 0xa075, 0x3e38, 0xe030, 0xdfd0, 0xdfc7, 0xe00e, 0x2675,
+  0x585c, 0xd85f, 0x5fbe, 0xe039, 0xdfdd, 0xe07a, 0xe065, 0xe00a,
+  0x6012, 0xe013, 0x5fdc, 0xe03a, 0xbeaf, 0xe059, 0xe002, 0xe041,
+  0x5fdf, 0xe045, 0xced5, 0xdfc1, 0xe009, 0xe057, 0xdfbd, 0xdfc8,
+  0xdfd8, 0xdfe9, 0x5fb9, 0x5fba, 0xe08a, 0x5fb9, 0x5fba, 0xe089,
+  0xe03b, 0xe026, 0xe61d, 0xe127, 0xe13a, 0xe0ab, 0xb751, 0xe0a6,
+  0xe114, 0xe0f5, 0xe112, 0xe134, 0x23b8, 0x6130, 0xe6a3, 0xe0cc,
+  0x3b1d, 0x6b30, 0xeb31, 0xe0bd, 0x60d2, 0xe0de, 0xe0df, 0xe136,
+  0xe12d, 0x60ce, 0xe0de, 0xe106, 0x60ce, 0xe0d2, 0xe0cf, 0xe148,
+  0xe116, 0xe0f6, 0xe0ae, 0xe0e8, 0x1e61, 0x6109, 0x610a, 0xe115,
+  0xe132, 0xe0d3, 0x1e61, 0x60f7, 0x610a, 0xe115, 0x1e61, 0x60f7,
+  0x6109, 0xe115, 0xe0b9, 0xe0ac, 0x1e61, 0x60f7, 0x6109, 0xe10a,
+  0xe0e7, 0xe093, 0xe0d1, 0x23b8, 0x60bb, 0xe6a3, 0xe0f8, 0xe0ba,
+  0xe0d0, 0xe146, 0xe09d, 0xe147, 0x2398, 0x28e5, 0xaedb, 0xe147,
+  0xe137, 0x613c, 0xe142, 0xe0e6, 0x9e23, 0xe194, 0xe189, 0xb59f,
+  0x6196, 0xe19e, 0xe18b, 0x467a, 0x6197, 0xe1b1, 0x616c, 0xe1bb,
+  0xa5e0, 0x6167, 0xe1bb, 0x61a4, 0xe1ac, 0xe1c5, 0xe1c3, 0x61b8,
+  0xe1c0, 0xd14c, 0xe195, 0xe154, 0xe91f, 0xe162, 0x24b8, 0xee79,
+  0xe14b, 0xe187, 0x615d, 0xe19e, 0x467a, 0x6166, 0xe1b1, 0xb9bc,
+  0x1e11, 0xeb57, 0x615d, 0xe196, 0x6171, 0xe1ac, 0x233b, 0xbbc9,
+  0x6171, 0xe1a4, 0x467a, 0x6166, 0xe197, 0x617f, 0xe1c0, 0x6167,
+  0xe16c, 0x2bb4, 0xdb8c, 0x617f, 0xe1b8, 0xd845, 0xe17e, 0xe17d,
+  0x2bc0, 0xb3a1, 0x61ca, 0xe1cb, 0x61c8, 0xe1cb, 0x61c8, 0xe1ca,
+  0x58cf, 0xd8e1, 0x27dc, 0xa8c4, 0xa398, 0x61d2, 0xe485, 0x61d1,
+  0xe485, 0x61da, 0x61fb, 0xe486, 0xe487, 0xe48c, 0x2200, 0xa202,
+  0xe48a, 0xe489, 0xe48b, 0x61d3, 0xe1fb, 0xe1e1, 0xe488, 0x1e71,
+  0x9e82, 0xe1dc, 0x621f, 0xe493, 0xe490, 0xb263, 0xe48f, 0xe492,
+  0xe2e9, 0x2251, 0x2263, 0x2271, 0x228d, 0x228e, 0x2292, 0x2294,
+  0xe1fc, 0xe497, 0xe48d, 0xe495, 0xe48e, 0x61d3, 0x61da, 0xe486,
+  0x2251, 0x2263, 0x2271, 0x228d, 0x228e, 0x2292, 0x2294, 0xe1f0,
+  0xe4af, 0xe4ab, 0xe498, 0xe4ad, 0xe4a5, 0x625b, 0xe4c5, 0xe49a,
+  0xe4a0, 0xe49d, 0x6264, 0xe4a9, 0xe4a4, 0xe4a3, 0xe491, 0xe49e,
+  0xe4ae, 0x629e, 0xe4a7, 0xe1e3, 0xe49f, 0xe499, 0xe4ac, 0xe49b,
+  0xe4aa, 0xe3ba, 0x4089, 0xe46a, 0x6438, 0xe4ce, 0x6268, 0xe4cc,
+  0xe4c8, 0xe4b6, 0xe4c3, 0xe4b4, 0xe4b9, 0xe4cd, 0xe4b0, 0xe4b8,
+  0xe4c0, 0xe4bf, 0xe4be, 0x6295, 0x62e8, 0x6421, 0x6435, 0xe4c1,
+  0xe49c, 0xe4bb, 0xe4ca, 0xe4ca, 0xe4c9, 0x2228, 0xe4c7, 0xe4cb,
+  0xe4c2, 0xe4b7, 0xe4b3, 0xe4c6, 0x6206, 0xe4c5, 0xe4ba, 0xe348,
+  0x46cb, 0x4f3d, 0xe4b5, 0x620e, 0xe4a9, 0xe4b2, 0x622e, 0xe4cc,
+  0xe4bc, 0xe4bd, 0x47ff, 0x483f, 0x4926, 0x62db, 0xe45b, 0x6373,
+  0x6451, 0x6452, 0xe46c, 0xe4cf, 0xe4f0, 0xe4d2, 0xe4ec, 0xe4ea,
+  0xe4f6, 0xe4f3, 0xe4dc, 0xe4da, 0xe4e3, 0xe4e8, 0x6244, 0x62e8,
+  0x6421, 0xe435, 0xe4e2, 0xe4ed, 0x6443, 0xe4eb, 0x62bd, 0xe4e6,
+  0x2563, 0x5854, 0xd858, 0xe21e, 0xe4d1, 0xe4f7, 0xe4f1, 0xe4df,
+  0xe4f5, 0xe4e5, 0xe4d5, 0xe4ef, 0xe4d0, 0x6322, 0xe4b1, 0xe47e,
+  0xe4de, 0xc10a, 0x62ed, 0xe510, 0x4107, 0xe500, 0xe508, 0xe511,
+  0xe509, 0xe29b, 0xe4dd, 0xe512, 0xe50c, 0xe4a1, 0xe4e4, 0xe4d7,
+  0xe50b, 0xe4fb, 0x47ff, 0x483f, 0x4926, 0x6271, 0xe45b, 0xe50a,
+  0x646f, 0xe513, 0x6381, 0xe4d8, 0xe504, 0xe503, 0xe514, 0x6244,
+  0x6295, 0x6421, 0x6435, 0xe507, 0x61ef, 0xe4d3, 0x5216, 0x5217,
+  0xe4fa, 0x62b3, 0xe510, 0xe4d6, 0xe506, 0xe502, 0xe4fd, 0x6444,
+  0xe4f8, 0xe50d, 0xe52f, 0xe4a2, 0xe51e, 0x2f55, 0xe332, 0xe516,
+  0xe52b, 0xe529, 0x641a, 0xe4d4, 0xe525, 0xe515, 0xe51f, 0xe524,
+  0x637f, 0xe531, 0xe4ee, 0xe51b, 0xe52c, 0xe52d, 0xe51c, 0x62ad,
+  0xe4b1, 0xe526, 0xe51a, 0xe520, 0xe521, 0x40bc, 0x4149, 0xe34a,
+  0xe522, 0xe519, 0x2f55, 0xe304, 0xe530, 0xd868, 0xe486, 0xe4fc,
+  0xe3e8, 0xe51d, 0xe528, 0xe52a, 0xe494, 0xe534, 0x6260, 0xe533,
+  0x40bc, 0x4149, 0xe32c, 0xe505, 0xe540, 0xe537, 0xe4e1, 0xe496,
+  0x4145, 0xe53b, 0xe4ff, 0x6445, 0xe53d, 0xe538, 0xe532, 0xe518,
+  0xe539, 0x63d3, 0xe52a, 0xe53e, 0x6274, 0x6451, 0x6452, 0xe46c,
+  0xe52e, 0xe536, 0xe517, 0x649f, 0xe53a, 0xe319, 0xe2e3, 0xe541,
+  0xe53f, 0xe545, 0xe551, 0xdf44, 0x642e, 0xe570, 0x39c8, 0xd028,
+  0x3eb6, 0xc194, 0x63c1, 0xe501, 0xb7aa, 0xe549, 0xe524, 0xe548,
+  0x6543, 0xef12, 0xe4a8, 0xd4e5, 0x6402, 0xe54f, 0xe4e0, 0xe4e9,
+  0xe53c, 0xe550, 0x63ae, 0xe547, 0x63ad, 0xe547, 0xe552, 0xe54d,
+  0xe553, 0xe54c, 0xe228, 0xe54e, 0xe396, 0xe55e, 0xe55f, 0xe4fe,
+  0xe546, 0xe559, 0xe560, 0xe55d, 0xe36f, 0xe4ff, 0xe535, 0xe557,
+  0xe558, 0xe55b, 0x222c, 0x2257, 0x2277, 0xe4f2, 0x434d, 0xe55c,
+  0xe556, 0xe542, 0x63fd, 0xe508, 0xe33e, 0xe55a, 0xe4e7, 0xe564,
+  0xe56a, 0x63e5, 0xe508, 0x63a6, 0xe54f, 0xe4d9, 0xe4f4, 0xe563,
+  0xe4f9, 0xe566, 0xe561, 0xe50f, 0xe49f, 0xe56b, 0x630f, 0xe4d4,
+  0x6481, 0xe562, 0xe568, 0x6244, 0x6295, 0x62e8, 0x6435, 0xe4c1,
+  0xe50e, 0xe50f, 0xe544, 0xe54c, 0x638c, 0xe570, 0xe56f, 0xe56d,
+  0x6244, 0x6295, 0x62e8, 0x6421, 0xe4c1, 0xe56e, 0x622c, 0xe4ce,
+  0xe4db, 0xe571, 0x629a, 0xe4eb, 0x62f3, 0xe4f8, 0xe360, 0xe56c,
+  0xe554, 0x6274, 0x6373, 0x6452, 0xe46c, 0x6274, 0x6373, 0x6451,
+  0xe46c, 0xb7aa, 0xe572, 0xe527, 0x647d, 0xe4bb, 0x47ff, 0x483f,
+  0x4926, 0x6271, 0xe2db, 0x6909, 0xe95f, 0xe574, 0xe4c4, 0xe573,
+  0xa228, 0xe565, 0x4089, 0xe229, 0x6274, 0x6373, 0x6451, 0xe452,
+  0xe567, 0xe2df, 0xe4a5, 0xe575, 0xe576, 0x4f36, 0xcf50, 0xe54a,
+  0xe569, 0xe523, 0x645a, 0xe4bb, 0xe2ae, 0xa1ff, 0x641d, 0xe562,
+  0xe54b, 0x61d1, 0xe1d2, 0x61d3, 0x61fb, 0xe337, 0xe1d4, 0xe1dd,
+  0xe1d8, 0xe1d7, 0xe1d9, 0xe1d5, 0xe1f7, 0xe1fa, 0xe1e7, 0xe1e4,
+  0xe212, 0xe1e9, 0xe1e3, 0xe346, 0xe1f9, 0xe35a, 0xe1f5, 0xe203,
+  0xe223, 0xe208, 0xe226, 0xe245, 0xe20d, 0xe214, 0x6221, 0x637e,
+  0x6418, 0xe53a, 0xe209, 0xe2c7, 0xe2fc, 0xe211, 0xe210, 0x6205,
+  0xe470, 0xbb3d, 0xe21e, 0xe3a2, 0x620e, 0xe264, 0xe227, 0xe201,
+  0xe225, 0xe204, 0xe215, 0xe200, 0xe23a, 0x62ad, 0xe322, 0xe266,
+  0xe257, 0xe237, 0x46cb, 0x4f3d, 0xe262, 0xe233, 0xe255, 0xe23d,
+  0xe238, 0xe25e, 0x6246, 0x645a, 0xe47d, 0xe26c, 0xe26d, 0xe240,
+  0xe23f, 0xe23e, 0x6244, 0x6421, 0xe435, 0xe251, 0xe234, 0xe460,
+  0x6206, 0xe25b, 0xe25a, 0x2228, 0xe24b, 0xe230, 0xe249, 0x6247,
+  0xe248, 0xe24d, 0x622e, 0xe268, 0xe239, 0x622c, 0xe438, 0xe276,
+  0xe2ac, 0xe2a0, 0xe27a, 0xe2e9, 0x630f, 0xe41a, 0xe2aa, 0xe2ee,
+  0xe2cf, 0xe2e3, 0xe403, 0xe28d, 0xe43a, 0xe285, 0xe2c1, 0xe2b1,
+  0xe2a6, 0xe3a7, 0xe358, 0xe296, 0xe291, 0xe2cc, 0xe2a9, 0xe29b,
+  0xe3f5, 0xe293, 0xe3a9, 0xe27f, 0x629a, 0xe443, 0xe27b, 0xe298,
+  0xe31a, 0xe2ab, 0xe278, 0xe2a5, 0x222c, 0x2257, 0x2277, 0xe3df,
+  0xe283, 0xe40b, 0xe2a8, 0xe280, 0xe2a3, 0x62f3, 0xe444, 0xe412,
+  0x5216, 0x5217, 0xe2ea, 0xe2d9, 0xe338, 0xe2f1, 0xe3c8, 0x635e,
+  0xe3d7, 0xe2b7, 0xe396, 0xe2f0, 0xe2e5, 0x5021, 0xe2e4, 0xe34b,
+  0xe2ef, 0xe2e8, 0x62b9, 0x63e5, 0xe3fd, 0xe2bc, 0xe2dd, 0xe2d2,
+  0xe2c5, 0xe2f6, 0xe426, 0x6417, 0xe427, 0x62b3, 0xe2ed, 0xe2bb,
+  0xe2c3, 0xe2df, 0xe2e6, 0xe312, 0xe306, 0xe37a, 0xe369, 0xe32f,
+  0xe328, 0xe31b, 0xe321, 0xe340, 0xe301, 0xe315, 0xe329, 0xe32b,
+  0xe32e, 0xe47c, 0x6318, 0xe39a, 0xe310, 0xe326, 0xe455, 0xe341,
+  0xe308, 0x6343, 0xe36f, 0xe307, 0xe31f, 0xe320, 0xe375, 0xe2f8,
+  0xe333, 0xe319, 0xe365, 0xe348, 0xe347, 0xe3d8, 0xe376, 0xe354,
+  0xe364, 0xe36c, 0x637e, 0xe49f, 0xe35b, 0xe3aa, 0xe360, 0xe370,
+  0xe384, 0xe34d, 0xe382, 0xe3e4, 0xe3a1, 0xe428, 0xe387, 0xe3cc,
+  0x63ad, 0xe3ae, 0xe39b, 0xe398, 0xe477, 0xe482, 0x63b8, 0xe42b,
+  0xe3b3, 0xe3bf, 0x63a6, 0xe402, 0xe3ac, 0xe38a, 0xe3b0, 0xe3b5,
+  0xe44c, 0xe3e2, 0xe3dc, 0xe3dd, 0xe3cd, 0xe3f0, 0xe3de, 0xe3e1,
+  0xe3d1, 0xe3c3, 0xe3c7, 0xe3d0, 0xe414, 0x641d, 0xe481, 0xe410,
+  0xe3f7, 0xe465, 0xe413, 0xe46d, 0xe420, 0xe479, 0xe3f9, 0xe419,
+  0xe44a, 0xe433, 0xe436, 0xe432, 0x638c, 0xe42e, 0xe43f, 0xe454,
+  0xe463, 0xe45e, 0xe471, 0xe472, 0x1ee7, 0x214f, 0x6578, 0xe57f,
+  0x1ee7, 0x214f, 0x6577, 0xe57f, 0x1e45, 0x9e46, 0x1ee7, 0x214f,
+  0x6577, 0xe578, 0xe5e8, 0xe5e9, 0xe5ea, 0xe5eb, 0x6589, 0xe5ed,
+  0xe5ec, 0x6587, 0xe5ed, 0xaf00, 0xe5f6, 0xe5f3, 0x65a0, 0xe5f0,
+  0x6592, 0xe5f2, 0x6591, 0xe5f2, 0xe5f4, 0xe5f5, 0xe5f8, 0x65f9,
+  0xeb27, 0x658f, 0xe5f0, 0xe602, 0x2173, 0x65d7, 0xe5dc, 0xe601,
+  0xa408, 0xe600, 0xa4c4, 0xe5fa, 0xe5fd, 0xe603, 0xe606, 0xe5fe,
+  0x65b2, 0xe605, 0x65b1, 0xe605, 0x65c3, 0xe612, 0xe60a, 0x2266,
+  0xe609, 0xe60e, 0xe60f, 0xe60d, 0xe608, 0xe60c, 0x65b4, 0xe612,
+  0xb77f, 0xb697, 0xe5f1, 0x3ff6, 0xe614, 0xe615, 0xe611, 0xe607,
+  0xe617, 0xe618, 0xe5ff, 0xe616, 0xe619, 0xe5ef, 0x2173, 0x65a2,
+  0xe5dc, 0x3597, 0x6b25, 0x6b26, 0x6b2a, 0xeb2d, 0x242f, 0x2518,
+  0x2553, 0x2554, 0x255f, 0xdaec, 0x2173, 0x65a2, 0xe5d7, 0xe61a,
+  0xe613, 0xe610, 0xdf9f, 0xe61b, 0xe5fc, 0xe580, 0xe582, 0xe583,
+  0xe586, 0xe588, 0x6587, 0xe589, 0xa54f, 0xe5d6, 0x658f, 0xe5a0,
+  0xe5c8, 0x6591, 0xe592, 0xe58e, 0xe593, 0xe594, 0xe58c, 0xb0b6,
+  0xe598, 0x6599, 0xeb27, 0xe5a8, 0xd05e, 0xe5e5, 0xe5a9, 0xe5ad,
+  0xe5d3, 0xe5a5, 0xe5a3, 0xe5a1, 0xe5ab, 0xeb2e, 0x65b1, 0xe5b2,
+  0xe5ac, 0xe5cd, 0xe5be, 0x2266, 0xe5b9, 0xe5b6, 0xeb29, 0xe5bf,
+  0xe5bd, 0xe5bb, 0xe5bc, 0xe5e1, 0xe5cc, 0x65b4, 0xe5c3, 0xe5e0,
+  0x3ff6, 0xe5ca, 0xe5cb, 0xe5d4, 0xe5d0, 0xe5d2, 0xe5d5, 0x65de,
+  0xeb2b, 0xe5e4, 0xe61d, 0x6091, 0xe61c, 0xe68a, 0x1f8c, 0x6634,
+  0x6670, 0xe682, 0x6633, 0xe67d, 0xe638, 0x2347, 0xe65e, 0x2742,
+  0xac85, 0x274f, 0xa76f, 0xa751, 0xa740, 0xca7d, 0x6626, 0xe67d,
+  0x1f8c, 0x6625, 0x6670, 0xe682, 0xe663, 0x2826, 0xe68e, 0xe628,
+  0xbcae, 0x2768, 0xe641, 0x2768, 0xe640, 0xe69b, 0xe678, 0xe6b4,
+  0xe673, 0xe658, 0xa905, 0x665c, 0x665d, 0xe67f, 0xa7c8, 0xe649,
+  0x6655, 0xe67f, 0xe655, 0x2347, 0xe629, 0xaf8f, 0x2866, 0xe635,
+  0xe677, 0x2c9b, 0x2cf6, 0x2d8b, 0x2d8c, 0x2db9, 0x669d, 0xe6af,
+  0xe695, 0x4906, 0x667a, 0xe6aa, 0x1f8c, 0x6625, 0x6634, 0xe682,
+  0xe648, 0xe665, 0xe646, 0x4906, 0x6669, 0xe6aa, 0x2794, 0xa819,
+  0x6626, 0xe633, 0x6655, 0xe65c, 0x2830, 0xa895, 0x1f8c, 0x6625,
+  0x6634, 0xe670, 0x27de, 0xa824, 0xe61f, 0xb697, 0x2826, 0xe636,
+  0xe6a8, 0x1e5a, 0x66a0, 0xe6b1, 0x48d2, 0xe668, 0xa75e, 0xe69f,
+  0xe645, 0x2c9b, 0x2cf6, 0x2d8b, 0x2d8c, 0x2db9, 0x6666, 0xe6af,
+  0xe699, 0x1e5a, 0x6690, 0xe6b1, 0x23b8, 0x60bb, 0xe130, 0xe68f,
+  0x4906, 0x6669, 0xe67a, 0x275f, 0xa8b3, 0xde8b, 0x2c9b, 0x2cf6,
+  0x2d8b, 0x2d8c, 0x2db9, 0x6666, 0xe69d, 0x1e5a, 0x6690, 0xe6a0,
+  0xea98, 0xe647, 0x66b7, 0xe6b8, 0x66b6, 0xe6b8, 0x66b6, 0xe6b7,
+  0x2bc9, 0x674d, 0x674e, 0x674f, 0x6db4, 0x6e16, 0xee64, 0xa3ea,
+  0xe6cb, 0xe6e3, 0x6ceb, 0xed08, 0x20f1, 0xecf8, 0xe6bd, 0xe6dd,
+  0xe6db, 0x3742, 0xe6dc, 0x2f6b, 0x4431, 0xed70, 0xd67d, 0xa3cc,
+  0xee1b, 0x66cf, 0xedb5, 0x3742, 0xe6d1, 0xe6cd, 0x6d8f, 0x6dc4,
+  0xee21, 0xadb2, 0x5b8e, 0xdb90, 0xc9bb, 0xe6be, 0xbc1b, 0x9e91,
+  0xe742, 0xe717, 0xe741, 0x671a, 0xe727, 0xc535, 0x671a, 0xe727,
+  0xe73d, 0xeef4, 0x4075, 0x671b, 0xe748, 0xbcbe, 0xe6f6, 0x66fa,
+  0x66fe, 0xe727, 0x4075, 0x670a, 0xe748, 0xe722, 0xe721, 0x66fa,
+  0x66fe, 0xe71a, 0xe744, 0xd987, 0x1e30, 0x5c4a, 0x5c50, 0xe74a,
+  0xe701, 0xe6f7, 0xe6f3, 0xe72d, 0xa3c7, 0x4075, 0x670a, 0xe71b,
+  0xa3c6, 0x1e30, 0x5c4a, 0x5c50, 0xe73b, 0x2bc9, 0x66ba, 0x674e,
+  0x674f, 0x6db4, 0x6e16, 0xee64, 0x2bc9, 0x66ba, 0x674d, 0x674f,
+  0x6db4, 0x6e16, 0xee64, 0x2bc9, 0x66ba, 0x674d, 0x674e, 0x6db4,
+  0x6e16, 0xee64, 0x2bc8, 0xe752, 0x2bc8, 0xe751, 0xe75a, 0x2172,
+  0x2929, 0xe75d, 0xe75c, 0xe753, 0xe759, 0x2172, 0x2929, 0xe754,
+  0x4cc6, 0x6763, 0x6eaa, 0x6eab, 0x6eb5, 0xeeba, 0xe762, 0x45b1,
+  0xc6b0, 0xe768, 0xe82e, 0xe765, 0x676d, 0xe771, 0x676b, 0x6771,
+  0xe7e7, 0x676b, 0x676d, 0xe7e7, 0xe7be, 0xcd46, 0x6789, 0xef17,
+  0x6780, 0xef17, 0xe7b5, 0xe78d, 0xe78c, 0xade9, 0xe7c3, 0xe7bd,
+  0xe7b9, 0x49cb, 0xe7a7, 0x49cb, 0xe7a6, 0xc89f, 0xe7c9, 0x5f41,
+  0xe7dc, 0xe7dd, 0xe78b, 0xe79f, 0xe792, 0xe774, 0x4e6e, 0xcf30,
+  0xe791, 0xa343, 0x589c, 0xe7e4, 0xe7af, 0xe7e6, 0xe7e7, 0x2dff,
+  0xe7e8, 0xe7e9, 0xe7ea, 0x5f41, 0x67b1, 0xe7ec, 0xe7b2, 0xe7eb,
+  0x589c, 0xe7c8, 0xe7cb, 0x676d, 0x6771, 0xe7cc, 0x2dff, 0xe7cd,
+  0xe7d3, 0xe7d9, 0xe7de, 0x5f41, 0xe7dc, 0xe7ee, 0xe7ed, 0xe7f1,
+  0xe7ef, 0x6f4f, 0xef51, 0xe7fb, 0xe7f5, 0xa4cd, 0xe875, 0xe876,
+  0xe877, 0xe879, 0xe87a, 0xe878, 0xe87b, 0xe87c, 0xe882, 0xe880,
+  0xe883, 0xe884, 0xe87d, 0xe881, 0xe87f, 0xe887, 0xe886, 0x6838,
+  0xe888, 0xe88c, 0xe889, 0x6825, 0xe890, 0x6824, 0xe890, 0xe88f,
+  0x6830, 0xe88a, 0xa934, 0x6767, 0xe892, 0x682c, 0xe88a, 0xe88b,
+  0x4a4e, 0xe896, 0xe894, 0x681a, 0xe888, 0x4a68, 0x683a, 0x683d,
+  0xe893, 0x4a68, 0x6839, 0x683d, 0xe893, 0xe891, 0x5cf4, 0xdd56,
+  0x4a68, 0x6839, 0x683a, 0xe893, 0xeaed, 0xe897, 0xd16e, 0xe898,
+  0xe89d, 0xe89a, 0x6854, 0xe89c, 0xe899, 0xe89b, 0x684f, 0xe89c,
+  0x363e, 0xe86f, 0xa6df, 0xb13f, 0xe8a1, 0x685b, 0xe8a0, 0x685a,
+  0xe8a0, 0xcc7b, 0xe89f, 0xe8a2, 0xe87e, 0xe8a4, 0xe8a5, 0x363e,
+  0xe855, 0xe8a6, 0x6885, 0x6ad7, 0xee15, 0xe89e, 0xe8a7, 0xe801,
+  0xe802, 0xe803, 0xe807, 0xe805, 0xe806, 0x6808, 0xeb1a, 0xe80a,
+  0xe811, 0xe867, 0xe813, 0xe80e, 0xe812, 0xe80c, 0xe80f, 0xe810,
+  0x6871, 0xead7, 0xe818, 0xe817, 0x681a, 0xe838, 0xe821, 0x682c,
+  0xe830, 0xe832, 0xe81c, 0xbf41, 0xc1b2, 0xe826, 0x6824, 0xe825,
+  0xe83b, 0xe82e, 0x4a68, 0x6839, 0x683a, 0xe83d, 0xe837, 0x4a4e,
+  0xe834, 0xe846, 0xe84c, 0xe852, 0xe84e, 0xe853, 0x684f, 0xe854,
+  0xe84d, 0xe873, 0xe862, 0x685a, 0xe85b, 0xe859, 0xe865, 0xce87,
+  0xe86b, 0xe86c, 0xe870, 0xe874, 0x1e30, 0x21e8, 0x21ec, 0x21ee,
+  0x5af7, 0x5bbd, 0x68cc, 0xe8ce, 0xe8d0, 0x68b7, 0x68c6, 0x68c8,
+  0xe8d1, 0xe8d2, 0xa3f0, 0xa22e, 0xe8d3, 0x68ae, 0x68c6, 0xe8c8,
+  0xe8d4, 0xe8cf, 0xe8d6, 0xe8d5, 0xe8d7, 0x68c4, 0xe8d8, 0x68c3,
+  0xe8d8, 0x68ae, 0x68b7, 0x68c7, 0x68c8, 0xe8d9, 0xe8c6, 0x68ae,
+  0x68b7, 0x68c6, 0xe8da, 0x21e8, 0x21ec, 0x21ee, 0x68a8, 0xe8ce,
+  0x1e30, 0x21e8, 0x21ec, 0x21ee, 0x68a8, 0xe8cc, 0xe8ba, 0xe8ad,
+  0xe8ae, 0xe8af, 0xe8b6, 0xe8b8, 0xe8bc, 0xe8bb, 0xe8c0, 0x68c3,
+  0xe8c4, 0xe8c6, 0xe8c8, 0xe8de, 0xcffb, 0xe8db, 0x25b0, 0x68e0,
+  0xe963, 0x25b0, 0x68df, 0xe963, 0xe910, 0xe965, 0xe964, 0xe966,
+  0xe957, 0xe968, 0xe96a, 0x49d7, 0xe96b, 0xe90a, 0xe96c, 0x68f2,
+  0xe96e, 0x68f0, 0xe96d, 0xe8ef, 0x68ee, 0xe96e, 0xe974, 0xe99d,
+  0xe972, 0xe971, 0xe970, 0xe973, 0xe97a, 0xe978, 0x6920, 0xe97c,
+  0x645c, 0x695f, 0xe977, 0x217b, 0x4faa, 0xe8ec, 0xe975, 0xe95c,
+  0xe979, 0xe97b, 0xe8e1, 0xe97d, 0x6927, 0xe981, 0xe97f, 0xe982,
+  0xe97e, 0x1f59, 0xe980, 0xd0b4, 0xe984, 0xe983, 0xe96f, 0xe18a,
+  0x6905, 0xe97c, 0xe985, 0x2582, 0x6912, 0x6935, 0xe981, 0x5218,
+  0xe986, 0xccca, 0xccc7, 0xe967, 0xe959, 0x2582, 0xe927, 0xe989,
+  0xe987, 0xe967, 0xe98e, 0xccd5, 0xe969, 0xe988, 0xe98f, 0xe98a,
+  0xe98c, 0xe98d, 0xe992, 0xe990, 0xe991, 0xe993, 0xe988, 0xe994,
+  0xd1b3, 0xcce6, 0xe965, 0xe976, 0xe8e8, 0xe934, 0xe90d, 0xe98b,
+  0x645c, 0x6909, 0xe977, 0xe995, 0x25b0, 0x68df, 0xe8e0, 0xe8e3,
+  0x68e2, 0xe951, 0xe8e5, 0x6933, 0xe939, 0xe8e9, 0xe93c, 0xe8ea,
+  0xe8eb, 0xe8ed, 0xe8ef, 0x68ee, 0xe8f2, 0xe91e, 0xe8fe, 0xe8fd,
+  0xe8fc, 0xe8ff, 0xe8f4, 0xe90c, 0xe952, 0x6909, 0xe95f, 0xe904,
+  0xe90e, 0xe903, 0xe90f, 0x6905, 0xe920, 0xe911, 0xe916, 0xe913,
+  0x1f59, 0xe918, 0x6912, 0xe927, 0xe915, 0xe91c, 0xe91b, 0xe921,
+  0xe928, 0xe937, 0x693d, 0xe94b, 0xe936, 0xe93f, 0xe95e, 0xe941,
+  0xe943, 0xe93a, 0xe93e, 0xe948, 0xe949, 0xe945, 0xe94a, 0xe94c,
+  0xe962, 0xe8f6, 0xe99f, 0xe99e, 0xea6c, 0xea6d, 0xa1af, 0x69c4,
+  0xea6e, 0xea5d, 0xea70, 0xea6f, 0xea72, 0xce36, 0x6a62, 0xea74,
+  0xea73, 0x69b1, 0xea6e, 0x6a5b, 0xea7f, 0x357a, 0x69c8, 0x6a45,
+  0xea71, 0x357a, 0x69c6, 0x6a45, 0xea71, 0xea7b, 0xea7d, 0xea79,
+  0xea75, 0xea7e, 0xea80, 0xea78, 0xea76, 0x69de, 0xea7c, 0x69dd,
+  0xea7c, 0xea77, 0x208c, 0x4f75, 0xea82, 0xea88, 0xea87, 0xea73,
+  0xea83, 0xea86, 0x6a2e, 0xea51, 0xea8e, 0xea8f, 0xea8b, 0xea8d,
+  0xea93, 0xea92, 0xea91, 0xea90, 0x6a13, 0x6a57, 0xea8c, 0x6a37,
+  0xea9a, 0x6a10, 0x6a57, 0xea8c, 0xea9b, 0xea97, 0xea99, 0xea52,
+  0xea9e, 0xea98, 0x69f5, 0x6a51, 0xea9d, 0xd17e, 0xea7a, 0x6a12,
+  0xea9a, 0xea9f, 0xea47, 0xeaa1, 0xd4e6, 0xea9c, 0xea96, 0xeaa0,
+  0xeaa2, 0x357a, 0x69c6, 0x69c8, 0xea71, 0xea3a, 0xea85, 0xea95,
+  0xea81, 0xeaa3, 0x69f5, 0x6a2e, 0xea9d, 0xea28, 0xea84, 0x6a10,
+  0x6a13, 0xea8c, 0xb0ca, 0x69c5, 0xea7f, 0xe9b2, 0xeaa4, 0x69bf,
+  0xea74, 0xeaa7, 0x560e, 0xeaa5, 0xeaa6, 0xbb22, 0xea8a, 0xea89,
+  0xe9ac, 0xe9ad, 0x69b1, 0xe9c4, 0xe9b4, 0xe9b3, 0x357a, 0x69c6,
+  0x69c8, 0xea45, 0xe9b9, 0x69c1, 0xe9ee, 0x69bf, 0xea62, 0xe9d4,
+  0xe9db, 0xe9df, 0xe9d9, 0xe9d2, 0xea36, 0xe9d0, 0x69dd, 0xe9de,
+  0xe9d1, 0xe9d5, 0x69c5, 0xea5b, 0xe9d8, 0xea4d, 0x208c, 0x4f75,
+  0xe9e1, 0xe9f0, 0xea55, 0xea4a, 0xe9f1, 0xe9ed, 0xe9e2, 0xea6b,
+  0xea6a, 0xea01, 0x6a10, 0x6a13, 0xea57, 0xea02, 0xe9f8, 0xe9ff,
+  0xea0f, 0xea0e, 0xea0d, 0xea05, 0xea4c, 0xea42, 0xea19, 0x66b2,
+  0xea2d, 0xea24, 0x6a12, 0xea37, 0xea16, 0xea41, 0x6a2e, 0xea51,
+  0xea2b, 0xea38, 0xea43, 0xea3e, 0xea44, 0xea4f, 0xea5f, 0x560e,
+  0xea65, 0xea66, 0xea64, 0xd0ae, 0x1f53, 0x5eb0, 0x5ec6, 0xead4,
+  0xeca0, 0x51b8, 0xead3, 0xeacf, 0xd180, 0xead6, 0xead5, 0xeac5,
+  0xd10f, 0x51b8, 0xeac4, 0x1f53, 0x5eb0, 0x5ec6, 0xeab5, 0x51cf,
+  0xeacc, 0xeacb, 0x6871, 0x6885, 0xee15, 0xead9, 0xead8, 0x1eff,
+  0xaf77, 0xeaf9, 0xeaef, 0x6b02, 0xeb22, 0x23d1, 0xeaee, 0xe83e,
+  0x23d1, 0xeaea, 0xeae5, 0x1f5b, 0xaf7f, 0xeae4, 0xa243, 0x6ae9,
+  0x6b13, 0xeb22, 0xb77e, 0xd0e1, 0x6b02, 0xeb22, 0xe87b, 0xeb23,
+  0x6ae9, 0x6b02, 0xeb13, 0xeb1b, 0x3597, 0x65d8, 0x6b26, 0x6b2a,
+  0xeb2d, 0x3597, 0x65d8, 0x6b25, 0x6b2a, 0xeb2d, 0x6599, 0xe5f9,
+  0xa4c4, 0xe60b, 0x3597, 0x65d8, 0x6b25, 0x6b26, 0xeb2d, 0xe61a,
+  0x3597, 0x65d8, 0x6b25, 0x6b26, 0xeb2a, 0xe604, 0x3b1d, 0x60c1,
+  0xeb31, 0x3b1d, 0x60c1, 0xeb30, 0xeb39, 0xeb36, 0x1ffc, 0xcca5,
+  0xac2c, 0xeb58, 0xeb4e, 0x573d, 0xeb49, 0x21f2, 0x2c32, 0x2c34,
+  0x2c36, 0xac37, 0x1e11, 0xe19c, 0xeb47, 0xec7c, 0xec7d, 0xec7e,
+  0xec6e, 0xebbb, 0xec80, 0xeeff, 0xec81, 0x6c78, 0xec88, 0xec24,
+  0xec82, 0xec7f, 0xec84, 0xec85, 0xec86, 0x6bdb, 0xecb7, 0xec8c,
+  0xec89, 0xec8f, 0xec87, 0xebf9, 0xec90, 0xec8d, 0xec8b, 0xec8a,
+  0xec92, 0xec98, 0x6bd7, 0x6c76, 0xec9e, 0xec95, 0xec96, 0x6bb7,
+  0xebf7, 0xec94, 0xec9b, 0xec91, 0x2c1f, 0x2c20, 0x5d7b, 0x6c7b,
+  0xec9c, 0xec93, 0xecaa, 0x6ba7, 0xebf7, 0xec9d, 0xeb66, 0xebd8,
+  0xeca7, 0xeca0, 0x6c00, 0xeca9, 0xeca4, 0x6bcb, 0xeca8, 0xebca,
+  0xecac, 0xecbb, 0xecaf, 0xecad, 0x6b9d, 0xec76, 0xebbe, 0x6b89,
+  0xecb7, 0xecb4, 0xecb1, 0xecb5, 0xecb2, 0xecb3, 0xecb8, 0xecae,
+  0xecb0, 0xecb6, 0xecba, 0xec3a, 0x6ba7, 0x6bb7, 0xecc0, 0xeb8f,
+  0xecab, 0xecca, 0x6bc7, 0xeca9, 0xecc8, 0xec97, 0xecc2, 0x6c28,
+  0xecbd, 0xecc7, 0x6c0d, 0xecc5, 0x6c0c, 0xecc5, 0xecbe, 0x6c77,
+  0xecc4, 0xecc6, 0xecc3, 0x6c2e, 0xecc1, 0xecd2, 0xecd1, 0xeccb,
+  0xeca5, 0xeb73, 0x6c5e, 0xeccf, 0x6c08, 0xecce, 0xecd0, 0xeccd,
+  0xec1b, 0xeca2, 0x6ccc, 0xef07, 0xecd3, 0xecd8, 0xeca6, 0xeca3,
+  0x6bf5, 0xecb9, 0xecd7, 0xecdb, 0xecd4, 0xecc9, 0xecd9, 0xecd5,
+  0x6cd6, 0x6f08, 0xef9e, 0xecdf, 0xecdd, 0xecdd, 0xecdc, 0xecde,
+  0xec9f, 0xecbc, 0xec25, 0xec8e, 0xec99, 0xece3, 0xece1, 0xece2,
+  0xecbf, 0xec9a, 0xeb63, 0xece0, 0x6b9d, 0x6bd7, 0xec9e, 0x6c10,
+  0xecc4, 0x6b72, 0xec88, 0xeca1, 0x2c1f, 0x2c20, 0x5d7b, 0x6bae,
+  0xec9c, 0xeb5a, 0xeb5b, 0xeb62, 0xeb77, 0xeb68, 0xeb6f, 0xeb74,
+  0xeb7a, 0xeb81, 0xeb83, 0xeb8e, 0x6b72, 0xec78, 0xeb8b, 0xeb93,
+  0xeb92, 0xeb8a, 0x56ab, 0xeb91, 0xec5f, 0xeb8d, 0xeb90, 0xebad,
+  0xeb9a, 0xebb3, 0xebaa, 0xeb9e, 0xeba6, 0xec02, 0xeb9c, 0xec60,
+  0xec6d, 0xebab, 0x2c1f, 0x2c20, 0x5d7b, 0x6bae, 0xec7b, 0xebba,
+  0x6b9d, 0xec76, 0xec58, 0x6abe, 0xebc1, 0xec7a, 0xec31, 0xec39,
+  0xebc9, 0xec23, 0xec37, 0xebc0, 0xebca, 0x6bc7, 0xec00, 0xebb6,
+  0xebfd, 0xebd2, 0xebd6, 0xebea, 0xebd5, 0xebeb, 0xebe1, 0xebe4,
+  0xebe7, 0xebdd, 0xebe2, 0xebf0, 0x6b89, 0xebdb, 0xebe8, 0xec3a,
+  0xebf4, 0xebd4, 0xec5d, 0xec08, 0xec0f, 0xec68, 0xebf7, 0xec1b,
+  0xec03, 0xec13, 0x6c10, 0xec77, 0x6c0c, 0xec0d, 0xec12, 0xec09,
+  0xec01, 0xec42, 0xebff, 0xec20, 0x6c32, 0xef07, 0xec2d, 0xec28,
+  0xec25, 0xec29, 0xec1f, 0xec1c, 0xec33, 0xec3e, 0x51a4, 0xec48,
+  0x6c49, 0xef08, 0xec3b, 0xec35, 0xec45, 0xec3c, 0xec56, 0x6c53,
+  0xec54, 0xec57, 0xec52, 0xec6f, 0xec64, 0xec67, 0xec63, 0x2c4c,
+  0xee1f, 0x21eb, 0xecec, 0xee20, 0x66c1, 0xed08, 0xece7, 0xee24,
+  0xa1e4, 0xee23, 0xee22, 0xe6c7, 0xee29, 0xee28, 0x66c1, 0xeceb,
+  0x6d76, 0xee26, 0x6dd7, 0xee25, 0xee30, 0xee35, 0xee33, 0x6e1c,
+  0xee32, 0xee2e, 0x6d44, 0xee31, 0xee2a, 0xee2f, 0xee2d, 0x53ba,
+  0xedaf, 0xee38, 0xee39, 0xedc3, 0xee3b, 0xee3f, 0xedfa, 0xee3d,
+  0xee3a, 0xee3c, 0xed1f, 0xee40, 0xee43, 0xee46, 0xee41, 0xedaa,
+  0xee48, 0x6d5e, 0xee45, 0x6d5d, 0xee45, 0xee44, 0xee49, 0xee4c,
+  0xee4f, 0xee50, 0xee4e, 0xe6d5, 0xee4a, 0x6d09, 0xee26, 0xee53,
+  0x6da4, 0xee4d, 0x6dab, 0xee2b, 0xee51, 0xee52, 0x66de, 0x6dc4,
+  0xee21, 0xee4b, 0xee59, 0xee55, 0xee57, 0xee56, 0xed7e, 0xee5b,
+  0xee5c, 0xed59, 0x6d87, 0xee2b, 0xee27, 0x53ba, 0xed2c, 0xee5f,
+  0x2bc9, 0x66ba, 0x674d, 0x674e, 0x674f, 0x6e16, 0xee64, 0xe6db,
+  0xee60, 0xee61, 0xee58, 0xee63, 0xee5a, 0xee5a, 0xee62, 0xee5e,
+  0xed33, 0x66de, 0x6d8f, 0xee21, 0xedcf, 0xedc9, 0xedc8, 0xee5d,
+  0xedc6, 0xee67, 0xee65, 0x6d0e, 0xee25, 0xee37, 0xee68, 0xee36,
+  0xee6a, 0xee54, 0xee69, 0xc1d5, 0xee6b, 0x6df4, 0xee47, 0x6df3,
+  0xee47, 0xee6c, 0xee70, 0x6d3c, 0xee6d, 0xee34, 0xee0a, 0xee6f,
+  0xedff, 0xee71, 0xd3ba, 0xee72, 0x6871, 0x6ad7, 0xee2c, 0x2bc9,
+  0x66ba, 0x674d, 0x674e, 0x674f, 0x6db4, 0xee64, 0xee74, 0xee66,
+  0x66da, 0xee73, 0xed1d, 0xee42, 0xee3e, 0x2c4c, 0xece5, 0xece9,
+  0x66de, 0x6d8f, 0xedc4, 0xecf6, 0xecf4, 0xecf2, 0x6d0e, 0xedd7,
+  0x6d09, 0xed76, 0xedac, 0xed07, 0xed06, 0xed23, 0x6d87, 0xedab,
+  0xee15, 0xed28, 0xed1e, 0xed26, 0xed12, 0xed1f, 0xed1d, 0xed1b,
+  0xedfd, 0xed15, 0xede5, 0xedd9, 0xed2f, 0xed30, 0xed42, 0xed34,
+  0xed43, 0xed3f, 0xee1e, 0xed3b, 0xed50, 0xed53, 0xee1d, 0xed51,
+  0xed60, 0x6d5d, 0xed5e, 0xed52, 0x6df3, 0xedf4, 0xed5c, 0xed61,
+  0xed72, 0xed93, 0xed6a, 0xed7e, 0xed6f, 0xed6c, 0xed6e, 0xed89,
+  0xed8a, 0xed77, 0xedeb, 0xed98, 0xeda1, 0xed9a, 0xedbb, 0xed96,
+  0x6dbf, 0xedc0, 0xeda5, 0xeda9, 0xedca, 0xedc2, 0xedb2, 0xedb9,
+  0xedba, 0xedc1, 0xedbc, 0x2bc9, 0x66ba, 0x674d, 0x674e, 0x674f,
+  0x6db4, 0xee16, 0xedd6, 0xee1a, 0xedd3, 0xedda, 0xedef, 0xede6,
+  0xedf2, 0xedf8, 0xedfa, 0xee07, 0xedf9, 0xee0c, 0xee0f, 0xee1b,
+  0xee18, 0x2364, 0xa877, 0x4877, 0x48b1, 0xee7c, 0x24b8, 0xe18e,
+  0xee7e, 0xc877, 0x4877, 0x48b1, 0xee78, 0x2869, 0xc6d0, 0xee7a,
+  0xee85, 0xeea4, 0xee83, 0xee8f, 0xee87, 0x1e3d, 0xaa6f, 0xc350,
+  0x4c97, 0xee84, 0xeea6, 0xeea5, 0x6eac, 0xeeb8, 0x4cc6, 0x6762,
+  0x6eab, 0x6eb5, 0xeeba, 0x4cc6, 0x6762, 0x6eaa, 0x6eb5, 0xeeba,
+  0x6ea9, 0xeeb8, 0xa305, 0x36f2, 0x4cac, 0x6eb4, 0xeeb9, 0x36f2,
+  0x4cac, 0x6eaf, 0xeeb9, 0x4cc6, 0x6762, 0x6eaa, 0x6eab, 0xeeba,
+  0x6ea9, 0xeeac, 0x36f2, 0x4cac, 0x6eaf, 0xeeb4, 0x4cc6, 0x6762,
+  0x6eaa, 0x6eab, 0xeeb5, 0x45f2, 0x45f3, 0xd534, 0x1e48, 0x2c1b,
+  0x2e85, 0xeebd, 0x1e48, 0x2c1b, 0x2e85, 0xeebc, 0xeec4, 0x48fa,
+  0xeec3, 0xeecc, 0xeec9, 0xcc98, 0xeed2, 0xeed1, 0xeed9, 0xeed8,
+  0xeef1, 0x294c, 0xc0b9, 0xeef6, 0xeeed, 0xa15a, 0xeef7, 0xeef2,
+  0xeee4, 0xeedb, 0xeeea, 0xe709, 0xeee1, 0xeee9, 0xd8ae, 0xeefe,
+  0xeefd, 0x6b6d, 0xef0b, 0xef0c, 0xd6d9, 0x6c32, 0xeccc, 0x6c49,
+  0x6cd6, 0xef9e, 0xef0d, 0xeeff, 0xef02, 0xef09, 0xef11, 0xef0e,
+  0xe3a1, 0x46b7, 0xc6bc, 0xa1ac, 0x6780, 0xe789, 0xef21, 0xef20,
+  0xdc82, 0xef39, 0xef34, 0xa5c5, 0x1e9d, 0x3589, 0x358a, 0xef50,
+  0x358b, 0xb58e, 0x5cf7, 0xdd4d, 0x67f2, 0xef51, 0x1e9d, 0x3589,
+  0x358a, 0xef4a, 0x67f2, 0xef4f, 0x3b6f, 0xef7f, 0xef54, 0x6f53,
+  0xef80, 0xef81, 0xef82, 0xef85, 0xef70, 0xef87, 0xef83, 0xef86,
+  0x6f62, 0xef84, 0x6f61, 0xef84, 0xa1fa, 0xef88, 0x256e, 0x2699,
+  0xa6d3, 0xa4ac, 0x6f71, 0xef8a, 0xef89, 0xef5a, 0xef6a, 0xef8b,
+  0xd16d, 0xef8c, 0x3b6f, 0xef52, 0xef54, 0xef55, 0xef57, 0xef5f,
+  0x6f61, 0xef62, 0xef59, 0xef60, 0xef5c, 0xef66, 0xef6c, 0xef6a,
+  0xef72, 0xef77, 0x4adc, 0x6f92, 0xef99, 0xa390, 0xae9e, 0x4adc,
+  0x6f8d, 0xef99, 0xef9a, 0xef9b, 0x6f8d, 0xef92, 0xef94, 0xef95,
+  0x1e80, 0xef9f, 0x49cb, 0x49cc, 0xca50, 0x6c49, 0xef08, 0x1e80,
+  0xef9c, 0x248a, 0x248c, 0xb0d2, 0x2401, 0xcc72,
+};
+
+static const short cjk_variants_indx[0x5200] = {
+  /* 0x4e00 */
+      4,    -1,    -1,    -1,     5,     6,    -1,     7,
+     -1,     8,    10,    11,    12,    -1,    13,    -1,
+     14,    16,    19,    20,    -1,    -1,    22,    24,
+     26,    -1,    28,    29,    33,    34,    -1,    36,
+     38,    40,    42,    44,    45,    47,    49,    52,
+     -1,    -1,    53,    56,    59,    -1,    -1,    -1,
+     60,    -1,    66,    67,    68,    -1,    -1,    -1,
+     -1,    -1,    69,    -1,    -1,    71,    73,    -1,
+     -1,    76,    77,    79,    81,    83,    85,    -1,
+     87,    92,    -1,    -1,    93,    -1,    -1,    -1,
+     94,    96,    -1,    -1,   100,   101,    -1,   103,
+    105,    -1,   107,    -1,    -1,    -1,    -1,    -1,
+    110,   111,    -1,    -1,    -1,    -1,   115,    -1,
+    116,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    118,   119,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,   121,    -1,    -1,    -1,    -1,   124,    -1,
+    128,   130,   133,    -1,    -1,    -1,   135,    -1,
+    137,   138,   139,   141,   143,    -1,   144,   147,
+    151,   153,    -1,    -1,   155,    -1,   156,   157,
+    161,   162,   163,    -1,   165,   167,   171,   173,
+     -1,   174,    -1,    -1,    -1,    -1,    -1,   176,
+     -1,   178,    -1,   182,   183,    -1,    -1,   184,
+    185,   186,   187,    -1,    -1,   188,    -1,    -1,
+    189,    -1,   190,   191,    -1,    -1,   192,   194,
+     -1,   195,   196,    -1,    -1,   199,   201,   202,
+     -1,   203,    -1,    -1,   204,    -1,   207,   209,
+    210,   212,    -1,   215,    -1,    -1,    -1,    -1,
+    217,   218,    -1,    -1,    -1,   220,   221,    -1,
+     -1,    -1,   222,    -1,    -1,    -1,    -1,   223,
+     -1,    -1,   227,    -1,   228,   229,   230,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,   232,
+     -1,    -1,   234,    -1,   236,   237,   239,   240,
+  /* 0x4f00 */
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    245,    -1,    -1,    -1,    -1,    -1,   247,   248,
+    251,   252,   253,   254,   255,   256,   259,   262,
+    263,   265,    -1,   266,   267,   268,   269,   270,
+     -1,    -1,   271,   273,    -1,    -1,   275,    -1,
+     -1,   276,   279,    -1,    -1,   282,    -1,   283,
+     -1,    -1,    -1,    -1,   284,    -1,    -1,    -1,
+    285,    -1,   286,    -1,    -1,    -1,    -1,   287,
+    288,    -1,    -1,    -1,    -1,    -1,   289,    -1,
+     -1,    -1,    -1,   290,   295,    -1,    -1,    -1,
+     -1,   296,    -1,   298,   301,    -1,   302,    -1,
+    303,    -1,    -1,   307,    -1,   308,    -1,    -1,
+     -1,    -1,   309,    -1,    -1,    -1,    -1,    -1,
+     -1,   310,    -1,    -1,    -1,   312,    -1,   314,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,   315,   316,    -1,   318,    -1,
+     -1,    -1,    -1,    -1,   319,    -1,   323,    -1,
+    324,    -1,    -1,    -1,    -1,    -1,   325,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,   326,
+    328,   329,    -1,   331,    -1,   332,   333,   335,
+    336,   337,   338,   339,   340,   341,    -1,   343,
+     -1,    -1,    -1,    -1,    -1,    -1,   344,   345,
+     -1,    -1,    -1,    -1,    -1,   346,    -1,    -1,
+     -1,   347,   348,    -1,    -1,    -1,    -1,   349,
+     -1,    -1,   350,    -1,   351,    -1,   352,    -1,
+     -1,    -1,    -1,    -1,   353,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,   355,   356,
+    357,   358,   359,   360,    -1,   361,   362,    -1,
+    363,   364,   365,   366,    -1,   367,   369,    -1,
+     -1,   371,   372,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,   374,   378,   380,    -1,    -1,
+  /* 0x5000 */
+    382,    -1,   383,   385,    -1,   388,   389,    -1,
+    390,   391,   393,   394,    -1,    -1,   397,   398,
+    399,   400,    -1,    -1,    -1,    -1,   401,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,   402,   403,
+     -1,    -1,    -1,   405,   407,    -1,   408,    -1,
+     -1,    -1,    -1,   410,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,   411,    -1,    -1,   412,    -1,
+     -1,   413,   415,    -1,   416,    -1,   417,    -1,
+    418,    -1,    -1,    -1,    -1,    -1,   419,   420,
+     -1,   421,    -1,    -1,    -1,    -1,    -1,    -1,
+    422,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    425,   426,   427,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,   428,    -1,    -1,
+     -1,    -1,   429,    -1,   430,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,   432,   433,    -1,   435,
+    436,   437,   441,   444,    -1,   445,   447,   448,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,   449,   452,    -1,    -1,
+     -1,   453,    -1,    -1,    -1,    -1,   454,    -1,
+    455,   458,   462,    -1,   464,    -1,    -1,    -1,
+    465,   467,   470,    -1,   471,   472,    -1,   473,
+    474,   475,    -1,    -1,    -1,   476,    -1,   477,
+     -1,    -1,    -1,   478,   480,   481,    -1,   482,
+     -1,   483,    -1,    -1,    -1,    -1,   484,    -1,
+    485,    -1,   486,   487,   491,   492,    -1,    -1,
+     -1,   493,   494,    -1,    -1,   495,    -1,    -1,
+     -1,   498,    -1,    -1,    -1,   499,    -1,    -1,
+    500,    -1,    -1,    -1,   501,    -1,   502,   504,
+     -1,    -1,    -1,   505,    -1,   506,    -1,    -1,
+    507,   508,    -1,   509,    -1,   512,    -1,    -1,
+     -1,   513,   514,    -1,   515,    -1,    -1,    -1,
+     -1,   516,    -1,    -1,    -1,    -1,    -1,    -1,
+  /* 0x5100 */
+    518,   519,   520,    -1,   521,    -1,    -1,    -1,
+    522,   523,    -1,    -1,    -1,    -1,   525,    -1,
+    526,    -1,    -1,    -1,   527,   528,    -1,    -1,
+    529,    -1,    -1,    -1,    -1,    -1,   531,   534,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,   535,
+     -1,    -1,   536,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,   537,    -1,    -1,    -1,    -1,   538,
+     -1,   539,   540,   541,   542,    -1,    -1,   543,
+     -1,    -1,   545,    -1,    -1,    -1,    -1,   546,
+     -1,   547,   549,   551,   554,    -1,   556,   557,
+    561,   563,   565,    -1,   567,    -1,   568,   569,
+    570,    -1,   572,    -1,   573,    -1,    -1,    -1,
+    574,    -1,    -1,    -1,   575,    -1,   576,   578,
+     -1,   579,   581,    -1,    -1,    -1,    -1,    -1,
+    582,    -1,   583,   586,   591,    -1,   592,    -1,
+     -1,   593,    -1,   595,    -1,   597,   599,    -1,
+    600,   601,   602,   603,   604,   605,   606,    -1,
+    609,   610,   611,   613,   614,    -1,   616,   618,
+    619,   620,   621,    -1,    -1,    -1,    -1,   622,
+     -1,   623,    -1,   625,   626,   627,    -1,    -1,
+     -1,    -1,   629,   630,   631,    -1,   632,    -1,
+    634,   635,   637,   639,   642,    -1,    -1,   644,
+    645,   648,   649,   651,   652,   653,    -1,    -1,
+     -1,    -1,   654,   655,    -1,   656,    -1,    -1,
+    657,    -1,   659,   660,   661,   664,   665,    -1,
+    667,   668,    -1,    -1,    -1,   669,    -1,   670,
+     -1,   671,   672,   673,    -1,    -1,   674,    -1,
+     -1,    -1,    -1,   676,   678,    -1,   680,    -1,
+    684,   686,   688,   690,   692,   693,   694,    -1,
+    696,    -1,    -1,   701,   702,   707,   710,   715,
+     -1,   716,   717,   722,   723,    -1,   726,   727,
+     -1,    -1,   730,   732,    -1,   734,   735,   736,
+  /* 0x5200 */
+    737,    -1,   739,   741,   742,   743,    -1,    -1,
+    745,    -1,   747,    -1,    -1,   748,    -1,    -1,
+     -1,    -1,   749,   752,   753,    -1,    -1,    -1,
+    754,   755,   756,   757,    -1,    -1,    -1,    -1,
+    762,    -1,    -1,    -1,    -1,   763,   764,   767,
+    770,    -1,   773,   774,   776,   780,   781,    -1,
+     -1,   782,    -1,    -1,   786,    -1,   787,    -1,
+     -1,   788,   789,    -1,   790,   793,   794,   795,
+    796,   797,   798,   800,   801,    -1,    -1,   802,
+     -1,    -1,    -1,   803,   806,   807,   808,   809,
+    813,   815,    -1,    -1,    -1,    -1,    -1,   823,
+     -1,   827,   831,   832,    -1,   833,    -1,    -1,
+     -1,    -1,    -1,   834,   842,   844,   845,   847,
+     -1,   848,    -1,    -1,    -1,    -1,   849,    -1,
+    852,   853,    -1,   861,   862,   863,    -1,   868,
+     -1,   872,    -1,    -1,    -1,    -1,    -1,   873,
+     -1,    -1,    -1,   874,   877,    -1,    -1,   878,
+     -1,   879,   880,    -1,   881,   882,   890,    -1,
+    898,   901,   903,    -1,   911,   919,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,   921,   923,   924,
+     -1,   926,   927,    -1,    -1,    -1,    -1,    -1,
+    928,    -1,   931,   932,    -1,    -1,    -1,    -1,
+     -1,   935,   936,   937,   940,   943,    -1,    -1,
+     -1,   945,    -1,    -1,    -1,    -1,    -1,   946,
+     -1,   947,    -1,    -1,   948,   949,    -1,   951,
+    952,    -1,   953,   956,   959,    -1,    -1,    -1,
+     -1,   961,    -1,    -1,    -1,   965,   968,   970,
+     -1,   972,   973,   974,    -1,   977,   978,    -1,
+    981,    -1,   982,    -1,   983,    -1,   984,   985,
+     -1,   987,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,   988,   989,   992,    -1,   995,    -1,    -1,
+    996,    -1,    -1,   998,    -1,    -1,    -1,    -1,
+  /* 0x5300 */
+    999,    -1,    -1,  1000,  1002,  1004,  1005,    -1,
+     -1,    -1,  1008,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   1009,    -1,  1011,  1012,    -1,  1014,  1016,    -1,
+   1017,  1018,    -1,    -1,    -1,    -1,  1019,  1020,
+   1021,  1023,    -1,    -1,    -1,  1024,  1025,  1026,
+     -1,  1028,  1029,  1032,    -1,    -1,    -1,    -1,
+   1035,    -1,  1036,  1037,    -1,    -1,    -1,    -1,
+   1039,    -1,    -1,  1040,    -1,    -1,  1041,  1042,
+     -1,  1046,    -1,  1047,    -1,  1049,  1050,  1053,
+   1056,    -1,  1057,  1058,  1060,  1063,  1065,    -1,
+   1067,    -1,  1069,  1070,  1071,    -1,    -1,    -1,
+   1073,    -1,  1074,    -1,  1075,  1082,    -1,  1084,
+     -1,    -1,    -1,  1085,    -1,    -1,  1087,  1088,
+   1090,    -1,    -1,  1091,  1093,    -1,    -1,  1094,
+   1096,  1097,    -1,  1099,    -1,  1100,    -1,    -1,
+     -1,    -1,  1102,    -1,  1105,  1106,  1108,  1114,
+   1115,  1116,    -1,  1117,  1119,  1120,  1121,    -1,
+   1122,    -1,    -1,  1123,    -1,  1124,    -1,    -1,
+   1126,  1130,  1131,  1132,    -1,    -1,    -1,  1133,
+   1134,  1136,  1137,  1138,  1139,    -1,  1141,    -1,
+   1142,  1143,    -1,    -1,    -1,  1145,  1146,  1147,
+   1152,    -1,  1154,  1155,  1157,  1158,  1159,  1160,
+   1161,    -1,  1164,  1165,    -1,    -1,  1166,  1168,
+     -1,  1170,  1172,  1175,  1178,  1181,  1184,  1185,
+   1186,  1187,  1188,    -1,  1189,  1190,  1193,  1194,
+   1195,  1196,    -1,  1200,    -1,  1202,    -1,    -1,
+   1203,  1205,    -1,  1207,    -1,    -1,  1209,    -1,
+   1210,  1214,  1216,    -1,    -1,    -1,    -1,  1220,
+     -1,    -1,  1223,  1226,    -1,    -1,    -1,    -1,
+   1227,    -1,    -1,    -1,    -1,    -1,  1232,  1236,
+     -1,  1237,    -1,    -1,    -1,  1240,    -1,    -1,
+  /* 0x5400 */
+   1241,  1243,    -1,  1245,    -1,    -1,    -1,    -1,
+   1247,    -1,  1248,    -1,  1249,    -1,  1251,    -1,
+     -1,  1252,    -1,  1254,    -1,  1255,    -1,  1256,
+     -1,    -1,    -1,    -1,    -1,  1257,  1258,  1259,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   1262,    -1,    -1,    -1,  1263,    -1,    -1,  1265,
+     -1,    -1,    -1,  1271,  1273,    -1,  1275,    -1,
+     -1,    -1,    -1,  1276,    -1,  1277,    -1,  1278,
+     -1,    -1,  1279,    -1,    -1,    -1,    -1,    -1,
+   1280,  1282,  1284,    -1,  1285,  1286,    -1,    -1,
+   1287,  1288,  1289,  1290,    -1,  1291,  1292,  1293,
+   1294,  1297,  1299,  1300,  1301,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  1302,
+   1303,  1304,  1305,    -1,    -1,  1307,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  1308,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  1311,    -1,    -1,
+     -1,    -1,  1312,    -1,  1315,    -1,    -1,  1318,
+     -1,    -1,  1319,    -1,    -1,    -1,    -1,    -1,
+     -1,  1321,    -1,  1322,  1323,  1324,    -1,    -1,
+     -1,    -1,    -1,    -1,  1325,    -1,    -1,    -1,
+     -1,  1326,    -1,    -1,  1328,    -1,    -1,  1329,
+     -1,  1331,  1334,    -1,    -1,    -1,    -1,    -1,
+   1336,    -1,    -1,    -1,  1338,  1340,    -1,    -1,
+     -1,    -1,    -1,    -1,  1341,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  1343,    -1,    -1,
+     -1,  1344,  1348,  1349,  1350,  1351,    -1,  1352,
+     -1,  1354,    -1,    -1,  1355,  1356,    -1,  1357,
+     -1,  1358,    -1,  1361,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  1362,    -1,    -1,    -1,
+     -1,    -1,  1363,    -1,    -1,    -1,  1368,    -1,
+     -1,    -1,  1370,    -1,    -1,    -1,    -1,    -1,
+  /* 0x5500 */
+   1371,    -1,    -1,    -1,  1373,    -1,    -1,  1374,
+     -1,    -1,    -1,    -1,    -1,  1375,    -1,    -1,
+   1376,    -1,    -1,    -1,    -1,  1377,  1378,    -1,
+   1382,    -1,    -1,  1388,    -1,  1389,    -1,    -1,
+   1390,    -1,  1391,  1392,  1393,    -1,    -1,  1394,
+     -1,    -1,    -1,  1395,    -1,    -1,    -1,    -1,
+     -1,  1396,    -1,    -1,    -1,    -1,    -1,    -1,
+   1397,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   1398,    -1,    -1,    -1,    -1,    -1,  1399,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  1400,
+     -1,    -1,    -1,  1401,  1407,    -1,  1413,  1414,
+     -1,    -1,    -1,    -1,    -1,    -1,  1415,  1419,
+   1425,    -1,    -1,  1430,    -1,    -1,    -1,  1433,
+     -1,    -1,    -1,    -1,  1434,  1435,  1436,  1440,
+   1441,    -1,    -1,    -1,  1443,    -1,    -1,    -1,
+   1444,    -1,  1445,    -1,    -1,    -1,    -1,    -1,
+   1446,    -1,  1448,    -1,  1450,    -1,  1451,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  1456,    -1,
+     -1,  1458,  1460,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  1463,    -1,  1464,    -1,  1467,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  1468,  1469,  1470,  1472,    -1,  1473,  1475,
+   1477,    -1,  1480,    -1,    -1,    -1,  1481,  1483,
+     -1,    -1,    -1,  1485,    -1,  1486,  1487,    -1,
+     -1,    -1,    -1,    -1,    -1,  1488,  1489,  1490,
+     -1,    -1,  1491,    -1,    -1,    -1,  1492,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  1493,    -1,  1494,    -1,    -1,    -1,
+   1495,    -1,    -1,  1496,    -1,  1497,    -1,    -1,
+     -1,  1498,    -1,  1499,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  1500,    -1,    -1,  1501,    -1,
+     -1,  1502,    -1,    -1,    -1,    -1,    -1,    -1,
+  /* 0x5600 */
+     -1,    -1,    -1,    -1,    -1,    -1,  1503,    -1,
+     -1,    -1,  1505,    -1,    -1,  1506,    -1,    -1,
+     -1,  1507,    -1,  1509,  1510,    -1,  1511,  1512,
+   1515,    -1,    -1,    -1,  1516,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  1517,    -1,    -1,    -1,
+   1518,  1519,    -1,    -1,    -1,    -1,  1521,  1522,
+   1524,  1525,    -1,    -1,    -1,  1526,    -1,  1527,
+   1528,    -1,    -1,    -1,    -1,  1529,    -1,    -1,
+     -1,  1530,  1531,    -1,  1532,  1534,    -1,    -1,
+     -1,  1535,    -1,    -1,    -1,    -1,    -1,    -1,
+   1537,    -1,    -1,  1538,    -1,  1539,  1540,    -1,
+     -1,    -1,    -1,  1542,  1544,  1545,    -1,    -1,
+   1546,  1547,    -1,    -1,    -1,  1548,  1549,    -1,
+   1550,    -1,  1551,    -1,    -1,    -1,    -1,  1552,
+     -1,    -1,  1553,    -1,  1554,  1556,    -1,    -1,
+   1559,  1560,    -1,    -1,    -1,    -1,  1561,    -1,
+   1562,    -1,    -1,    -1,    -1,    -1,    -1,  1563,
+     -1,    -1,    -1,    -1,  1564,    -1,    -1,  1565,
+   1566,    -1,    -1,    -1,  1569,  1570,    -1,    -1,
+     -1,  1571,    -1,    -1,    -1,    -1,  1575,    -1,
+   1580,    -1,  1581,  1582,    -1,  1583,  1584,    -1,
+   1585,    -1,    -1,    -1,    -1,    -1,  1586,    -1,
+     -1,    -1,  1587,  1588,  1589,    -1,  1591,    -1,
+     -1,    -1,    -1,  1592,    -1,    -1,    -1,    -1,
+   1593,  1594,  1595,    -1,    -1,  1597,    -1,    -1,
+   1598,  1599,  1601,    -1,  1602,    -1,    -1,  1603,
+     -1,  1604,    -1,  1605,    -1,    -1,    -1,  1608,
+   1611,  1617,    -1,  1618,    -1,    -1,  1619,  1625,
+   1626,    -1,  1627,  1630,    -1,    -1,  1633,  1636,
+     -1,    -1,  1637,    -1,  1638,  1644,    -1,  1647,
+   1652,  1653,  1654,  1657,  1660,  1663,  1664,    -1,
+   1669,    -1,    -1,  1670,    -1,  1675,  1680,    -1,
+  /* 0x5700 */
+   1683,    -1,    -1,  1688,    -1,    -1,  1689,  1692,
+   1693,    -1,    -1,  1694,    -1,  1699,  1702,  1705,
+     -1,  1706,  1707,  1709,    -1,    -1,  1712,  1715,
+   1718,    -1,    -1,    -1,    -1,  1720,    -1,  1722,
+     -1,  1723,  1724,  1726,    -1,    -1,    -1,  1727,
+   1729,    -1,    -1,    -1,  1730,  1731,    -1,    -1,
+   1732,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  1735,  1736,    -1,    -1,  1738,    -1,    -1,
+   1742,    -1,  1743,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  1745,
+   1749,  1750,    -1,  1751,  1752,    -1,    -1,  1755,
+     -1,  1758,  1759,  1760,  1766,  1767,  1769,  1771,
+   1773,    -1,    -1,  1775,  1776,    -1,  1777,  1778,
+   1779,    -1,    -1,    -1,    -1,  1781,  1782,  1784,
+   1786,    -1,    -1,  1787,    -1,  1788,    -1,    -1,
+   1790,    -1,  1791,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  1792,    -1,  1793,  1794,  1795,  1796,
+     -1,    -1,    -1,  1797,    -1,    -1,    -1,    -1,
+     -1,    -1,  1798,  1800,  1801,  1802,  1803,    -1,
+     -1,    -1,  1804,  1807,  1808,    -1,    -1,    -1,
+     -1,  1809,  1810,    -1,    -1,    -1,  1811,  1812,
+   1813,  1814,    -1,  1816,    -1,  1817,    -1,  1818,
+     -1,  1819,  1820,    -1,  1821,    -1,    -1,    -1,
+     -1,    -1,    -1,  1822,    -1,    -1,    -1,    -1,
+   1824,    -1,    -1,    -1,    -1,    -1,  1825,    -1,
+   1826,    -1,  1827,    -1,    -1,    -1,    -1,    -1,
+     -1,  1830,  1835,  1836,    -1,    -1,    -1,    -1,
+   1837,  1838,  1840,    -1,  1841,    -1,  1843,    -1,
+     -1,  1845,    -1,    -1,    -1,    -1,  1846,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  1847,
+     -1,    -1,    -1,    -1,  1848,  1851,    -1,    -1,
+  /* 0x5800 */
+     -1,    -1,  1852,  1853,    -1,  1854,  1855,  1856,
+     -1,    -1,  1857,    -1,    -1,    -1,    -1,    -1,
+     -1,  1858,    -1,    -1,    -1,  1859,  1861,    -1,
+     -1,  1862,    -1,    -1,    -1,  1863,    -1,    -1,
+     -1,    -1,    -1,    -1,  1864,    -1,  1866,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  1868,
+   1871,  1873,    -1,    -1,  1874,    -1,    -1,    -1,
+     -1,    -1,  1876,    -1,    -1,    -1,    -1,    -1,
+     -1,  1878,    -1,    -1,    -1,    -1,  1880,    -1,
+     -1,    -1,  1881,  1884,    -1,  1885,    -1,  1886,
+   1887,  1888,  1889,    -1,  1890,    -1,    -1,  1891,
+     -1,  1892,  1893,    -1,    -1,    -1,    -1,  1894,
+     -1,  1895,  1896,    -1,  1897,    -1,  1899,    -1,
+     -1,  1900,    -1,  1902,    -1,    -1,    -1,    -1,
+     -1,    -1,  1903,    -1,    -1,  1905,    -1,  1906,
+     -1,  1908,    -1,    -1,  1910,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  1913,  1914,    -1,  1915,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  1916,  1918,  1919,
+     -1,  1920,    -1,    -1,  1922,    -1,  1924,    -1,
+     -1,    -1,  1925,    -1,  1927,    -1,    -1,  1930,
+     -1,    -1,    -1,    -1,    -1,    -1,  1931,  1933,
+   1935,    -1,    -1,  1940,    -1,  1942,  1947,    -1,
+   1948,    -1,    -1,  1949,    -1,    -1,  1950,    -1,
+     -1,    -1,    -1,    -1,  1951,    -1,    -1,  1953,
+     -1,    -1,  1954,  1956,  1957,  1958,  1959,    -1,
+   1961,    -1,    -1,  1962,    -1,    -1,    -1,    -1,
+   1964,  1966,  1967,    -1,  1968,    -1,  1973,  1975,
+   1976,  1977,  1979,    -1,  1980,  1981,    -1,    -1,
+     -1,  1984,  1986,    -1,    -1,    -1,  1987,  1989,
+   1991,  1992,  1993,  1995,    -1,  1997,  1999,  2001,
+   2003,  2004,  2005,  2007,  2009,  2010,    -1,    -1,
+  /* 0x5900 */
+   2012,    -1,  2014,    -1,  2015,  2017,    -1,  2018,
+     -1,  2022,  2024,    -1,    -1,  2025,    -1,  2028,
+     -1,    -1,    -1,  2029,  2030,    -1,    -1,    -1,
+   2031,    -1,  2033,  2034,  2035,    -1,    -1,  2036,
+   2037,    -1,  2038,  2040,    -1,  2042,    -1,    -1,
+     -1,  2043,    -1,    -1,  2046,  2047,    -1,    -1,
+     -1,    -1,  2048,  2050,  2051,    -1,  2052,    -1,
+   2053,  2054,  2055,    -1,    -1,    -1,  2056,    -1,
+     -1,  2057,  2060,    -1,    -1,    -1,    -1,  2061,
+   2062,    -1,    -1,  2063,  2064,    -1,    -1,    -1,
+   2065,    -1,    -1,    -1,  2066,    -1,  2068,    -1,
+   2071,  2072,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  2073,    -1,  2075,
+   2077,  2080,  2083,    -1,  2084,    -1,  2087,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  2088,    -1,
+   2090,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  2092,  2096,
+   2098,    -1,  2099,    -1,    -1,  2100,    -1,    -1,
+     -1,    -1,  2102,    -1,    -1,    -1,  2103,    -1,
+     -1,  2104,    -1,  2105,    -1,  2106,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  2110,  2111,  2112,  2114,    -1,    -1,    -1,
+     -1,    -1,    -1,  2115,    -1,    -1,    -1,  2118,
+   2120,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  2122,    -1,
+     -1,  2123,  2124,  2125,    -1,  2127,    -1,    -1,
+   2128,    -1,  2129,    -1,    -1,    -1,    -1,  2130,
+     -1,  2131,    -1,    -1,  2132,    -1,    -1,    -1,
+     -1,    -1,  2133,    -1,    -1,    -1,  2134,  2136,
+     -1,    -1,  2138,  2140,  2141,    -1,  2142,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   2143,    -1,    -1,  2145,    -1,    -1,    -1,    -1,
+  /* 0x5a00 */
+     -1,    -1,    -1,    -1,  2146,  2147,  2148,  2149,
+   2150,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  2151,    -1,    -1,    -1,    -1,    -1,
+   2152,    -1,    -1,  2154,    -1,    -1,    -1,  2156,
+     -1,    -1,    -1,    -1,  2157,    -1,  2161,    -1,
+     -1,    -1,    -1,    -1,    -1,  2162,    -1,  2163,
+   2165,  2166,  2168,    -1,  2169,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  2171,
+   2173,  2176,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   2177,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  2178,    -1,    -1,  2179,    -1,
+     -1,    -1,    -1,    -1,  2181,  2182,    -1,  2183,
+     -1,    -1,    -1,  2185,  2186,  2189,  2190,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  2191,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  2193,  2195,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  2196,
+     -1,    -1,  2197,    -1,    -1,  2198,    -1,  2199,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   2201,    -1,    -1,    -1,  2202,  2203,    -1,  2204,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  2206,    -1,    -1,    -1,    -1,
+   2208,    -1,  2209,    -1,  2210,    -1,    -1,  2211,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  2212,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  2213,    -1,    -1,    -1,  2214,  2215,    -1,
+     -1,    -1,  2217,  2219,    -1,    -1,    -1,  2221,
+  /* 0x5b00 */
+   2222,    -1,    -1,  2224,    -1,    -1,    -1,    -1,
+   2225,  2226,    -1,  2227,  2228,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  2229,    -1,    -1,    -1,  2230,    -1,    -1,
+     -1,  2232,  2233,    -1,  2235,    -1,    -1,    -1,
+     -1,    -1,  2236,    -1,    -1,  2238,    -1,    -1,
+   2240,    -1,  2243,    -1,    -1,    -1,    -1,  2244,
+   2245,    -1,    -1,    -1,    -1,    -1,  2246,    -1,
+     -1,    -1,    -1,  2247,    -1,    -1,  2249,    -1,
+     -1,    -1,    -1,    -1,  2252,    -1,    -1,    -1,
+     -1,    -1,  2253,  2254,    -1,    -1,    -1,    -1,
+     -1,  2255,    -1,    -1,    -1,    -1,    -1,    -1,
+   2256,    -1,    -1,    -1,    -1,    -1,  2257,    -1,
+     -1,    -1,  2262,  2263,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   2264,    -1,    -1,    -1,  2269,  2270,  2271,  2274,
+     -1,  2275,  2281,  2282,    -1,    -1,  2285,    -1,
+   2286,    -1,  2287,    -1,    -1,  2288,    -1,    -1,
+   2289,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  2291,  2293,  2297,  2299,
+   2301,  2302,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  2304,  2305,  2306,    -1,    -1,  2307,    -1,
+     -1,    -1,    -1,    -1,  2308,    -1,  2310,  2311,
+     -1,    -1,    -1,  2313,  2314,  2316,  2318,    -1,
+   2320,    -1,    -1,  2321,    -1,    -1,  2322,  2323,
+   2325,  2327,    -1,    -1,  2334,  2335,    -1,    -1,
+     -1,    -1,    -1,  2341,    -1,  2342,    -1,  2348,
+     -1,    -1,  2354,  2358,  2360,  2366,    -1,  2367,
+   2368,    -1,  2370,    -1,    -1,    -1,  2371,  2373,
+     -1,  2379,    -1,  2381,  2383,    -1,    -1,    -1,
+     -1,    -1,    -1,  2385,    -1,  2389,  2390,    -1,
+     -1,  2394,    -1,  2396,  2397,    -1,  2398,  2400,
+  /* 0x5c00 */
+     -1,    -1,  2402,    -1,    -1,  2404,  2407,  2408,
+   2409,  2411,    -1,  2412,    -1,  2413,  2415,    -1,
+     -1,    -1,  2416,  2419,  2422,    -1,    -1,    -1,
+   2425,  2426,  2427,  2428,    -1,  2432,  2435,  2436,
+   2441,    -1,  2446,  2449,  2450,  2452,  2453,  2454,
+     -1,  2457,    -1,  2458,  2459,  2460,    -1,    -1,
+     -1,    -1,  2463,    -1,  2468,    -1,  2473,  2478,
+   2483,    -1,    -1,    -1,    -1,  2484,    -1,    -1,
+   2487,    -1,  2489,  2490,    -1,  2491,  2492,    -1,
+     -1,    -1,  2493,    -1,  2494,  2496,  2497,  2498,
+     -1,    -1,    -1,  2500,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  2501,    -1,    -1,  2503,    -1,
+     -1,  2504,  2505,    -1,  2506,    -1,  2507,    -1,
+   2508,    -1,    -1,    -1,  2509,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  2510,
+   2511,  2512,  2516,    -1,    -1,  2517,    -1,    -1,
+   2519,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  2520,  2521,
+   2522,    -1,  2523,  2524,    -1,    -1,    -1,    -1,
+     -1,  2531,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  2532,    -1,    -1,    -1,  2538,    -1,    -1,
+     -1,    -1,    -1,  2539,  2540,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  2541,    -1,  2542,
+     -1,    -1,    -1,  2543,  2544,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  2545,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  2546,    -1,    -1,
+     -1,  2547,    -1,  2548,  2549,  2550,  2551,    -1,
+   2552,  2553,    -1,    -1,    -1,    -1,    -1,  2554,
+   2555,    -1,    -1,    -1,  2556,  2557,  2560,    -1,
+     -1,    -1,    -1,    -1,    -1,  2567,    -1,    -1,
+  /* 0x5d00 */
+     -1,    -1,  2568,  2569,  2570,    -1,    -1,  2571,
+   2572,    -1,    -1,  2573,    -1,  2575,  2576,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  2579,  2580,
+   2581,  2583,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  2585,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  2586,  2587,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  2589,    -1,    -1,    -1,
+   2590,    -1,  2591,  2594,    -1,    -1,    -1,  2597,
+   2601,    -1,  2604,    -1,  2605,  2608,    -1,    -1,
+   2609,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  2611,
+     -1,    -1,    -1,  2612,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  2613,    -1,  2614,  2615,    -1,    -1,  2616,
+     -1,    -1,    -1,  2618,  2625,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  2632,    -1,    -1,  2633,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   2634,    -1,  2635,    -1,    -1,    -1,    -1,  2636,
+   2637,    -1,    -1,    -1,    -1,    -1,  2638,    -1,
+     -1,    -1,  2639,  2640,  2643,    -1,    -1,    -1,
+   2645,  2648,  2655,    -1,  2656,  2657,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  2658,  2660,    -1,
+     -1,    -1,    -1,  2663,  2664,    -1,    -1,    -1,
+     -1,    -1,  2667,  2668,  2669,    -1,  2670,  2673,
+     -1,    -1,    -1,  2676,    -1,  2677,    -1,    -1,
+   2678,    -1,  2679,  2680,    -1,    -1,    -1,    -1,
+     -1,  2681,    -1,    -1,    -1,    -1,    -1,  2682,
+   2683,    -1,    -1,    -1,    -1,  2684,    -1,  2685,
+     -1,    -1,  2686,  2687,    -1,  2689,    -1,  2690,
+  /* 0x5e00 */
+   2692,  2694,    -1,  2697,    -1,  2698,    -1,    -1,
+   2699,    -1,    -1,  2700,    -1,    -1,    -1,  2701,
+   2702,  2703,  2704,    -1,    -1,  2705,    -1,    -1,
+   2706,    -1,  2707,    -1,  2708,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  2710,  2711,  2713,
+     -1,    -1,    -1,  2714,    -1,  2715,  2716,  2719,
+   2721,  2724,    -1,  2725,    -1,    -1,  2726,    -1,
+     -1,    -1,    -1,  2728,  2729,  2730,    -1,    -1,
+   2731,    -1,  2732,  2734,    -1,    -1,    -1,  2735,
+   2738,    -1,    -1,    -1,  2740,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  2741,
+   2742,    -1,  2743,    -1,    -1,    -1,    -1,  2746,
+     -1,  2748,    -1,  2749,  2751,    -1,    -1,    -1,
+     -1,    -1,    -1,  2753,  2756,    -1,    -1,    -1,
+     -1,    -1,  2757,    -1,  2760,    -1,  2761,  2767,
+   2768,  2769,  2771,    -1,    -1,    -1,  2772,  2773,
+     -1,  2776,    -1,  2778,  2780,  2782,  2786,    -1,
+     -1,    -1,  2787,    -1,    -1,    -1,    -1,    -1,
+   2788,  2789,    -1,  2790,  2791,    -1,    -1,    -1,
+     -1,  2793,    -1,    -1,    -1,    -1,  2794,  2795,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  2797,
+     -1,    -1,    -1,  2798,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  2799,  2803,    -1,
+     -1,    -1,  2804,  2809,  2810,  2811,    -1,  2812,
+     -1,  2813,  2815,  2816,    -1,    -1,    -1,    -1,
+   2818,    -1,    -1,    -1,    -1,    -1,  2819,  2820,
+   2822,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  2824,  2825,    -1,  2828,    -1,  2829,
+   2831,  2833,  2834,  2836,    -1,    -1,    -1,    -1,
+     -1,  2838,  2839,    -1,  2840,    -1,    -1,    -1,
+   2841,    -1,    -1,  2844,    -1,    -1,    -1,    -1,
+   2848,    -1,    -1,  2849,  2855,  2857,    -1,    -1,
+  /* 0x5f00 */
+   2863,  2864,  2871,  2872,  2873,    -1,    -1,    -1,
+     -1,  2875,    -1,    -1,  2876,  2877,  2878,    -1,
+   2880,  2883,  2884,    -1,  2885,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   2886,    -1,    -1,    -1,    -1,  2887,  2889,    -1,
+     -1,    -1,  2890,    -1,    -1,    -1,    -1,  2891,
+     -1,    -1,    -1,  2892,    -1,  2893,    -1,  2894,
+     -1,  2895,  2897,  2898,  2899,    -1,  2900,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  2902,    -1,
+   2903,    -1,    -1,    -1,  2905,    -1,  2906,    -1,
+   2907,  2908,  2909,  2912,  2914,  2915,    -1,  2918,
+     -1,  2919,  2921,  2923,  2926,  2929,  2932,  2935,
+   2936,    -1,    -1,    -1,    -1,  2938,  2939,    -1,
+   2940,  2941,    -1,  2942,  2943,    -1,    -1,    -1,
+     -1,    -1,  2945,    -1,  2946,    -1,    -1,  2947,
+     -1,    -1,    -1,  2950,    -1,    -1,    -1,  2951,
+   2953,  2955,    -1,  2958,  2959,    -1,    -1,  2962,
+   2963,    -1,  2964,    -1,  2965,    -1,    -1,  2966,
+     -1,  2967,    -1,  2970,    -1,  2972,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  2974,    -1,
+   2976,  2978,    -1,  2979,  2981,    -1,    -1,    -1,
+     -1,  2982,    -1,    -1,  2984,  2987,    -1,    -1,
+   2988,  2989,    -1,  2990,  2993,  2995,    -1,  2997,
+     -1,  3000,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  3001,  3002,    -1,  3003,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  3004,  3005,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  3007,
+     -1,  3008,    -1,    -1,  3009,    -1,    -1,    -1,
+     -1,    -1,  3011,  3012,    -1,    -1,    -1,  3013,
+     -1,  3014,    -1,    -1,    -1,    -1,    -1,    -1,
+   3017,    -1,    -1,    -1,    -1,  3018,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  3019,    -1,
+  /* 0x6000 */
+   3020,  3022,  3023,  3024,  3025,  3026,  3027,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  3028,    -1,  3029,    -1,
+     -1,    -1,    -1,    -1,  3030,  3031,    -1,    -1,
+     -1,    -1,    -1,  3032,    -1,  3034,    -1,    -1,
+     -1,    -1,  3035,    -1,    -1,    -1,    -1,    -1,
+     -1,  3036,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  3039,  3044,    -1,    -1,  3045,
+     -1,    -1,    -1,    -1,    -1,    -1,  3046,    -1,
+     -1,    -1,    -1,  3047,    -1,    -1,    -1,    -1,
+     -1,    -1,  3048,  3049,    -1,    -1,  3051,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   3052,  3053,    -1,    -1,  3055,  3057,    -1,    -1,
+     -1,    -1,  3058,    -1,    -1,    -1,    -1,    -1,
+     -1,  3059,    -1,  3061,  3062,  3065,  3066,    -1,
+   3070,  3071,  3072,  3073,  3074,  3076,  3077,  3078,
+   3080,    -1,    -1,    -1,    -1,  3082,    -1,    -1,
+     -1,    -1,  3084,  3089,    -1,  3090,    -1,    -1,
+     -1,  3091,    -1,  3092,    -1,    -1,  3093,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  3095,  3096,
+     -1,    -1,  3097,    -1,  3098,    -1,  3101,    -1,
+     -1,  3103,  3105,  3108,  3109,  3110,    -1,  3111,
+     -1,    -1,    -1,  3112,  3115,  3116,  3117,    -1,
+     -1,    -1,    -1,    -1,    -1,  3118,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  3120,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  3122,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  3125,    -1,
+   3127,  3128,    -1,  3131,    -1,  3132,    -1,  3134,
+   3135,  3136,    -1,  3137,  3138,  3139,  3141,  3142,
+     -1,  3143,  3145,    -1,    -1,    -1,    -1,  3146,
+     -1,    -1,    -1,  3147,  3148,    -1,    -1,    -1,
+  /* 0x6100 */
+     -1,    -1,  3149,    -1,    -1,    -1,    -1,    -1,
+   3151,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  3153,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  3155,    -1,  3156,  3157,    -1,    -1,    -1,
+   3158,  3159,    -1,    -1,  3160,    -1,  3161,  3162,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  3164,  3165,    -1,    -1,  3166,
+     -1,  3167,    -1,    -1,  3169,  3170,  3171,  3172,
+     -1,    -1,  3173,    -1,  3175,    -1,    -1,  3176,
+     -1,    -1,    -1,  3177,    -1,  3178,  3179,    -1,
+     -1,  3182,    -1,    -1,    -1,    -1,    -1,    -1,
+   3184,  3185,  3187,    -1,    -1,    -1,    -1,  3189,
+     -1,    -1,    -1,  3191,  3192,    -1,    -1,    -1,
+     -1,    -1,  3193,  3194,    -1,  3195,  3196,    -1,
+     -1,    -1,    -1,  3197,  3198,    -1,  3199,    -1,
+     -1,    -1,    -1,    -1,  3200,  3202,  3204,  3205,
+     -1,  3208,  3209,    -1,    -1,  3210,    -1,  3211,
+     -1,    -1,  3212,    -1,    -1,    -1,    -1,    -1,
+   3213,  3214,  3217,    -1,  3218,    -1,  3220,  3222,
+   3223,  3226,  3229,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  3230,  3231,    -1,    -1,
+     -1,  3234,    -1,  3235,    -1,    -1,  3236,    -1,
+     -1,    -1,  3237,    -1,    -1,    -1,  3238,    -1,
+     -1,    -1,    -1,  3239,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  3240,    -1,    -1,    -1,  3241,
+     -1,  3242,    -1,    -1,  3244,  3245,    -1,    -1,
+   3246,  3248,  3249,    -1,  3251,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  3252,    -1,  3253,  3254,
+     -1,    -1,    -1,  3255,    -1,    -1,  3256,  3257,
+   3258,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  3259,    -1,  3260,  3262,  3263,  3264,
+   3266,    -1,  3267,    -1,  3268,  3270,  3271,  3272,
+  /* 0x6200 */
+   3273,    -1,    -1,    -1,    -1,    -1,  3274,  3275,
+     -1,    -1,    -1,  3276,    -1,    -1,    -1,  3277,
+     -1,    -1,    -1,    -1,  3279,    -1,    -1,  3280,
+   3281,    -1,  3283,  3285,    -1,  3286,  3288,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  3289,  3291,
+     -1,  3292,    -1,    -1,  3293,    -1,  3294,  3296,
+   3298,    -1,  3300,    -1,    -1,    -1,  3302,  3304,
+   3306,  3308,    -1,  3309,  3310,    -1,  3312,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  3313,  3314,  3315,  3316,    -1,
+     -1,  3318,    -1,    -1,    -1,  3320,    -1,  3321,
+   3322,    -1,    -1,    -1,    -1,    -1,  3324,    -1,
+   3325,    -1,    -1,  3326,    -1,    -1,    -1,  3327,
+   3328,  3330,  3332,  3333,  3334,    -1,    -1,  3335,
+   3336,    -1,    -1,    -1,    -1,  3337,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  3338,    -1,    -1,    -1,    -1,    -1,
+     -1,  3340,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  3341,  3342,  3343,  3344,  3345,  3347,
+   3348,  3349,  3350,    -1,  3351,  3352,    -1,    -1,
+     -1,    -1,    -1,    -1,  3353,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  3354,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  3357,    -1,    -1,  3358,    -1,    -1,
+   3359,    -1,    -1,  3360,    -1,    -1,    -1,  3361,
+   3362,    -1,    -1,  3364,  3365,  3366,  3367,  3368,
+     -1,    -1,    -1,    -1,  3369,  3370,  3371,  3372,
+   3373,  3375,  3378,  3379,    -1,  3380,  3381,  3382,
+   3383,  3385,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  3387,
+  /* 0x6300 */
+     -1,    -1,  3388,    -1,  3389,    -1,    -1,    -1,
+     -1,    -1,  3391,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  3393,  3396,  3397,  3398,  3399,  3400,  3401,
+   3402,  3403,  3404,  3405,  3406,  3407,  3408,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  3409,    -1,  3411,
+     -1,    -1,    -1,    -1,    -1,  3412,  3413,  3414,
+     -1,  3415,    -1,    -1,    -1,    -1,  3418,    -1,
+     -1,    -1,    -1,    -1,    -1,  3421,    -1,  3422,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  3423,
+     -1,    -1,    -1,    -1,  3424,    -1,  3425,  3426,
+     -1,  3427,  3428,  3429,    -1,    -1,    -1,    -1,
+   3431,    -1,    -1,  3432,    -1,    -1,  3433,    -1,
+     -1,    -1,  3435,    -1,  3437,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  3438,
+     -1,    -1,    -1,  3440,  3442,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  3443,
+     -1,  3444,    -1,  3445,    -1,    -1,    -1,    -1,
+     -1,  3446,    -1,    -1,    -1,  3447,    -1,    -1,
+     -1,    -1,    -1,    -1,  3448,    -1,    -1,    -1,
+     -1,    -1,  3449,  3450,  3451,    -1,    -1,  3452,
+   3453,    -1,  3454,  3455,  3456,  3457,    -1,    -1,
+   3458,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  3459,  3460,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  3461,  3462,    -1,    -1,    -1,    -1,
+   3463,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  3464,  3465,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  3466,  3467,    -1,    -1,  3469,    -1,  3470,
+  /* 0x6400 */
+   3471,  3472,  3473,  3474,    -1,  3475,  3478,    -1,
+     -1,    -1,    -1,    -1,    -1,  3479,    -1,    -1,
+     -1,    -1,  3480,    -1,  3481,    -1,  3482,  3484,
+     -1,    -1,    -1,    -1,  3485,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   3487,    -1,    -1,    -1,    -1,  3488,    -1,    -1,
+     -1,    -1,  3489,    -1,    -1,    -1,  3490,    -1,
+     -1,    -1,  3491,    -1,    -1,    -1,  3493,    -1,
+     -1,    -1,  3494,    -1,  3496,  3498,  3499,  3501,
+   3503,    -1,  3504,    -1,    -1,    -1,    -1,    -1,
+     -1,  3505,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  3506,    -1,    -1,  3507,
+   3508,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  3511,    -1,    -1,    -1,    -1,    -1,  3512,
+     -1,    -1,    -1,  3513,    -1,    -1,  3514,    -1,
+     -1,    -1,    -1,  3515,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  3516,  3518,    -1,    -1,    -1,
+   3519,    -1,    -1,    -1,    -1,    -1,    -1,  3520,
+   3521,  3522,    -1,  3523,    -1,    -1,    -1,    -1,
+   3524,    -1,  3525,    -1,    -1,    -1,    -1,  3526,
+     -1,  3527,    -1,  3528,    -1,  3529,  3531,  3532,
+     -1,    -1,    -1,  3535,    -1,    -1,    -1,    -1,
+     -1,    -1,  3536,  3538,    -1,  3539,    -1,  3540,
+   3541,  3542,  3545,  3546,    -1,    -1,  3547,  3548,
+     -1,  3549,    -1,    -1,  3550,    -1,    -1,  3551,
+   3553,    -1,  3555,  3557,    -1,  3558,    -1,    -1,
+     -1,  3559,    -1,    -1,  3560,  3561,    -1,    -1,
+     -1,    -1,  3563,    -1,    -1,    -1,  3565,    -1,
+   3566,  3567,    -1,  3568,    -1,  3569,    -1,  3570,
+     -1,    -1,    -1,    -1,  3573,    -1,    -1,  3574,
+   3575,  3576,  3577,    -1,  3578,  3581,    -1,  3582,
+     -1,    -1,  3584,  3585,  3586,  3587,  3588,    -1,
+  /* 0x6500 */
+   3589,    -1,    -1,    -1,  3590,  3591,  3592,    -1,
+   3593,    -1,  3594,    -1,    -1,    -1,    -1,  3595,
+     -1,    -1,  3596,    -1,  3597,    -1,  3598,    -1,
+     -1,  3599,    -1,  3600,  3601,  3603,    -1,  3605,
+     -1,    -1,  3606,  3608,  3609,    -1,    -1,    -1,
+   3610,    -1,  3611,  3614,  3615,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  3617,  3618,  3619,  3620,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  3621,
+   3625,  3628,    -1,    -1,  3629,  3630,  3632,  3633,
+     -1,    -1,    -1,    -1,    -1,  3634,    -1,  3636,
+   3638,  3640,    -1,  3641,    -1,    -1,  3643,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  3644,    -1,    -1,    -1,    -1,    -1,    -1,
+   3649,    -1,    -1,    -1,    -1,  3650,    -1,  3651,
+   3652,    -1,  3653,    -1,    -1,    -1,    -1,    -1,
+     -1,  3657,  3658,  3660,    -1,  3661,  3666,    -1,
+   3671,  3676,  3680,  3684,  3686,  3688,  3689,    -1,
+     -1,    -1,    -1,  3691,  3692,  3694,    -1,  3695,
+     -1,    -1,    -1,    -1,    -1,    -1,  3700,  3702,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  3703,    -1,    -1,  3704,  3705,    -1,    -1,
+     -1,    -1,  3706,    -1,    -1,  3707,    -1,  3708,
+     -1,    -1,    -1,    -1,  3709,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   3712,  3713,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  3714,    -1,    -1,    -1,    -1,  3715,
+   3717,  3719,    -1,  3721,    -1,    -1,    -1,    -1,
+   3722,    -1,    -1,    -1,    -1,  3723,    -1,  3724,
+     -1,    -1,  3725,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  3728,  3730,
+   3733,  3734,  3736,    -1,    -1,    -1,  3737,  3738,
+  /* 0x6600 */
+     -1,    -1,  3739,    -1,    -1,    -1,    -1,  3740,
+     -1,    -1,  3742,    -1,    -1,    -1,  3743,  3744,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  3745,  3746,    -1,    -1,    -1,    -1,  3747,
+     -1,    -1,    -1,    -1,    -1,  3748,  3749,    -1,
+     -1,    -1,    -1,    -1,  3750,  3751,    -1,  3752,
+   3753,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   3754,    -1,    -1,  3755,  3756,  3758,  3759,  3761,
+     -1,    -1,  3763,  3765,  3766,    -1,    -1,    -1,
+     -1,  3767,    -1,  3768,    -1,    -1,    -1,    -1,
+     -1,    -1,  3769,  3770,  3772,  3773,  3774,    -1,
+     -1,    -1,  3775,    -1,    -1,  3776,    -1,  3778,
+   3779,    -1,    -1,    -1,  3780,    -1,    -1,    -1,
+   3781,  3782,    -1,    -1,    -1,    -1,  3783,    -1,
+     -1,    -1,    -1,    -1,  3784,    -1,    -1,    -1,
+     -1,    -1,    -1,  3786,    -1,    -1,    -1,    -1,
+   3787,  3788,  3790,  3791,    -1,    -1,    -1,    -1,
+   3793,  3794,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  3795,    -1,    -1,    -1,  3796,  3798,
+   3803,    -1,    -1,    -1,  3804,    -1,    -1,    -1,
+     -1,    -1,  3805,    -1,  3806,    -1,  3809,  3812,
+   3813,    -1,    -1,  3814,    -1,  3815,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   3817,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  3819,    -1,    -1,  3820,    -1,  3821,  3825,
+     -1,  3826,    -1,    -1,  3828,  3832,    -1,  3833,
+     -1,    -1,    -1,    -1,    -1,    -1,  3834,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  3835,
+   3836,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   3838,    -1,    -1,    -1,  3839,    -1,    -1,    -1,
+     -1,    -1,  3840,  3845,    -1,  3846,    -1,    -1,
+   3847,  3850,  3851,  3852,    -1,  3854,  3855,    -1,
+  /* 0x6700 */
+   3856,    -1,  3857,  3859,    -1,    -1,    -1,  3860,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  3861,  3862,
+     -1,  3863,    -1,  3864,    -1,    -1,  3865,  3866,
+     -1,    -1,  3867,    -1,    -1,    -1,    -1,  3868,
+     -1,    -1,    -1,    -1,  3869,  3871,  3872,  3873,
+     -1,  3875,    -1,    -1,  3876,  3878,  3879,    -1,
+     -1,    -1,  3880,    -1,    -1,    -1,    -1,    -1,
+   3882,    -1,  3883,  3886,    -1,    -1,  3888,  3889,
+     -1,  3890,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  3893,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   3894,  3895,    -1,    -1,  3896,  3897,  3898,    -1,
+   3899,  3900,    -1,    -1,    -1,    -1,    -1,  3901,
+   3903,  3904,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  3905,  3911,
+   3912,  3917,    -1,    -1,  3918,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  3920,
+     -1,    -1,  3921,    -1,    -1,    -1,    -1,    -1,
+     -1,  3925,    -1,    -1,  3928,    -1,  3929,    -1,
+     -1,  3930,  3931,  3932,    -1,  3933,  3934,  3935,
+   3936,  3937,  3942,  3945,    -1,  3946,    -1,    -1,
+     -1,  3947,    -1,    -1,  3950,    -1,    -1,    -1,
+     -1,    -1,    -1,  3952,    -1,    -1,    -1,    -1,
+     -1,  3953,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  3954,
+     -1,    -1,    -1,    -1,    -1,  3955,    -1,  3956,
+     -1,    -1,    -1,    -1,  3961,    -1,    -1,    -1,
+   3962,    -1,    -1,    -1,    -1,  3963,    -1,    -1,
+     -1,  3964,    -1,    -1,    -1,    -1,    -1,    -1,
+   3966,    -1,    -1,  3967,    -1,  3970,    -1,    -1,
+     -1,  3971,  3972,  3974,    -1,  3975,  3976,  3978,
+  /* 0x6800 */
+   3979,  3980,    -1,  3983,  3985,  3987,    -1,  3988,
+   3989,  3991,  3992,  3994,  3995,    -1,  3997,  3999,
+     -1,  4001,    -1,    -1,    -1,    -1,  4002,  4004,
+     -1,    -1,    -1,    -1,    -1,    -1,  4006,    -1,
+     -1,    -1,  4007,    -1,    -1,    -1,    -1,  4008,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   4009,    -1,    -1,    -1,    -1,    -1,    -1,  4011,
+   4013,    -1,    -1,    -1,    -1,    -1,  4014,    -1,
+     -1,    -1,  4016,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  4017,    -1,    -1,    -1,
+     -1,  4019,  4020,    -1,    -1,    -1,    -1,    -1,
+   4021,    -1,    -1,    -1,  4022,  4024,    -1,  4025,
+   4027,  4030,  4031,  4032,  4033,  4034,  4036,  4037,
+   4038,  4039,  4040,    -1,    -1,    -1,  4041,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  4043,  4044,    -1,  4047,    -1,    -1,  4048,
+     -1,  4049,    -1,    -1,  4051,  4052,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  4054,    -1,    -1,
+     -1,    -1,    -1,    -1,  4056,    -1,    -1,    -1,
+   4057,    -1,    -1,    -1,    -1,  4058,    -1,  4059,
+     -1,    -1,    -1,    -1,    -1,  4060,  4065,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  4067,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  4069,    -1,  4070,  4071,
+   4072,    -1,  4074,    -1,  4075,    -1,    -1,    -1,
+     -1,    -1,  4076,  4080,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  4084,  4085,  4086,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  4087,
+     -1,    -1,    -1,    -1,    -1,  4088,    -1,  4089,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  4091,  4092,    -1,    -1,    -1,  4094,    -1,
+     -1,  4095,    -1,    -1,    -1,    -1,    -1,    -1,
+  /* 0x6900 */
+   4096,  4097,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  4098,    -1,    -1,    -1,    -1,  4100,  4101,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  4104,
+   4106,  4107,    -1,    -1,  4108,    -1,    -1,  4110,
+   4111,    -1,  4112,    -1,  4113,    -1,    -1,    -1,
+     -1,    -1,    -1,  4114,    -1,  4115,    -1,    -1,
+   4116,    -1,    -1,    -1,  4117,    -1,  4118,    -1,
+     -1,  4119,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  4120,    -1,    -1,  4121,    -1,    -1,
+     -1,    -1,    -1,  4123,    -1,  4124,    -1,    -1,
+     -1,  4125,  4126,    -1,    -1,    -1,    -1,    -1,
+   4127,  4128,    -1,    -1,    -1,  4129,  4130,    -1,
+   4131,    -1,  4132,  4133,    -1,  4134,    -1,    -1,
+     -1,    -1,    -1,  4135,    -1,  4137,    -1,    -1,
+     -1,    -1,    -1,    -1,  4138,  4139,    -1,  4141,
+     -1,    -1,    -1,    -1,  4142,  4143,  4144,  4145,
+   4146,  4147,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  4149,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  4150,    -1,
+   4152,    -1,  4153,    -1,    -1,    -1,  4154,    -1,
+     -1,    -1,  4156,    -1,  4157,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  4158,    -1,    -1,  4159,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  4160,
+   4161,    -1,    -1,  4163,    -1,  4164,    -1,    -1,
+     -1,  4165,    -1,  4167,  4168,  4170,    -1,  4172,
+   4174,  4176,  4177,  4178,    -1,    -1,  4180,  4181,
+   4182,    -1,    -1,    -1,  4183,    -1,    -1,  4184,
+   4185,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  4186,    -1,  4187,    -1,    -1,  4188,    -1,
+     -1,  4189,    -1,    -1,    -1,    -1,    -1,    -1,
+  /* 0x6a00 */
+     -1,  4190,  4191,  4193,    -1,  4194,    -1,    -1,
+     -1,    -1,  4195,    -1,    -1,    -1,    -1,    -1,
+   4196,  4197,  4199,  4200,    -1,    -1,    -1,    -1,
+     -1,  4201,    -1,    -1,    -1,    -1,  4202,    -1,
+     -1,    -1,    -1,  4203,    -1,    -1,    -1,    -1,
+     -1,  4205,  4207,    -1,    -1,    -1,    -1,  4209,
+     -1,  4211,    -1,  4213,    -1,    -1,    -1,  4214,
+   4218,  4220,  4221,    -1,    -1,  4222,    -1,  4223,
+     -1,    -1,    -1,  4224,    -1,    -1,    -1,    -1,
+   4226,    -1,  4227,  4228,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  4230,
+     -1,    -1,  4231,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  4233,    -1,    -1,  4235,    -1,
+   4238,  4239,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  4240,    -1,    -1,  4243,    -1,    -1,    -1,
+     -1,  4244,    -1,  4245,    -1,    -1,  4246,    -1,
+     -1,  4247,    -1,    -1,    -1,    -1,    -1,  4248,
+   4250,    -1,    -1,    -1,  4251,    -1,    -1,  4252,
+   4254,    -1,    -1,    -1,  4255,  4256,    -1,  4257,
+     -1,    -1,  4258,  4260,    -1,    -1,    -1,    -1,
+     -1,  4261,  4262,    -1,    -1,    -1,  4264,  4265,
+     -1,  4267,    -1,  4271,    -1,    -1,    -1,    -1,
+   4272,    -1,    -1,  4273,    -1,    -1,    -1,    -1,
+   4274,  4278,  4279,  4280,    -1,    -1,    -1,    -1,
+   4281,    -1,    -1,    -1,  4282,    -1,  4283,    -1,
+     -1,    -1,    -1,  4285,  4287,  4288,    -1,    -1,
+     -1,    -1,  4289,  4290,    -1,  4291,  4292,  4293,
+     -1,    -1,    -1,    -1,    -1,  4295,    -1,  4296,
+   4297,    -1,  4298,    -1,  4299,    -1,    -1,    -1,
+     -1,    -1,    -1,  4300,    -1,    -1,    -1,    -1,
+   4301,    -1,  4302,  4303,    -1,  4305,    -1,    -1,
+  /* 0x6b00 */
+     -1,    -1,    -1,    -1,  4306,  4308,    -1,    -1,
+     -1,  4309,  4313,    -1,    -1,    -1,    -1,  4315,
+     -1,  4316,  4317,    -1,    -1,    -1,  4319,  4320,
+     -1,    -1,    -1,    -1,    -1,  4322,  4325,    -1,
+   4327,    -1,  4329,  4333,  4336,    -1,    -1,  4337,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  4338,    -1,    -1,  4339,    -1,    -1,
+     -1,    -1,    -1,  4340,    -1,  4341,  4342,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  4343,    -1,  4344,    -1,
+   4346,    -1,    -1,  4347,    -1,    -1,  4349,    -1,
+   4352,    -1,    -1,  4353,    -1,  4355,    -1,  4356,
+     -1,  4357,    -1,    -1,    -1,  4359,    -1,    -1,
+   4361,  4363,    -1,    -1,  4365,    -1,  4366,  4369,
+     -1,    -1,  4371,  4375,  4379,    -1,    -1,  4382,
+   4385,  4388,  4389,    -1,  4390,    -1,  4392,  4396,
+   4400,  4401,    -1,    -1,    -1,    -1,    -1,  4405,
+     -1,    -1,    -1,  4406,    -1,    -1,    -1,    -1,
+     -1,    -1,  4407,  4408,    -1,    -1,    -1,    -1,
+   4409,    -1,  4410,    -1,    -1,    -1,  4411,    -1,
+     -1,  4412,    -1,    -1,  4413,    -1,    -1,    -1,
+     -1,    -1,    -1,  4414,    -1,    -1,  4415,  4416,
+     -1,  4417,  4419,    -1,  4421,    -1,    -1,  4422,
+     -1,    -1,  4423,  4424,  4426,    -1,    -1,    -1,
+   4428,  4429,  4432,    -1,    -1,    -1,  4433,    -1,
+     -1,  4434,    -1,    -1,    -1,    -1,  4436,  4437,
+     -1,    -1,    -1,  4438,  4440,  4441,    -1,  4442,
+   4443,  4444,    -1,    -1,    -1,    -1,    -1,  4445,
+     -1,  4446,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  4447,    -1,  4448,    -1,
+     -1,    -1,    -1,    -1,    -1,  4449,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  4450,
+  /* 0x6c00 */
+     -1,    -1,  4451,    -1,    -1,    -1,    -1,  4453,
+   4454,    -1,  4456,    -1,  4457,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  4458,    -1,    -1,  4461,
+     -1,    -1,    -1,  4464,    -1,    -1,    -1,    -1,
+     -1,    -1,  4465,  4466,    -1,    -1,    -1,    -1,
+     -1,  4469,    -1,  4470,  4471,    -1,    -1,    -1,
+     -1,    -1,  4472,  4473,  4474,  4476,    -1,  4478,
+     -1,    -1,  4481,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  4483,
+     -1,  4487,    -1,    -1,    -1,    -1,  4488,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  4489,  4491,    -1,    -1,    -1,    -1,    -1,
+     -1,  4493,    -1,    -1,  4495,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  4496,  4497,    -1,    -1,    -1,
+     -1,  4498,  4499,  4500,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   4501,  4503,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  4504,    -1,    -1,    -1,  4505,  4506,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  4507,
+     -1,  4508,  4513,  4515,  4516,  4517,  4518,  4519,
+   4520,  4521,  4522,    -1,    -1,    -1,  4524,    -1,
+     -1,  4525,  4526,    -1,    -1,  4527,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  4528,    -1,
+     -1,  4529,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  4530,    -1,    -1,
+     -1,    -1,    -1,  4532,    -1,  4533,  4534,    -1,
+     -1,    -1,    -1,    -1,    -1,  4535,    -1,    -1,
+   4536,    -1,  4537,    -1,    -1,    -1,    -1,  4539,
+   4540,    -1,    -1,    -1,    -1,    -1,  4541,  4542,
+   4544,    -1,  4545,  4546,  4547,  4550,  4552,    -1,
+  /* 0x6d00 */
+     -1,  4553,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  4554,    -1,    -1,    -1,
+     -1,    -1,  4555,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  4556,
+     -1,    -1,    -1,    -1,    -1,    -1,  4557,    -1,
+     -1,    -1,    -1,    -1,  4558,    -1,    -1,    -1,
+   4559,    -1,    -1,  4560,  4561,  4562,  4563,  4564,
+   4565,  4566,  4567,  4568,    -1,  4569,  4570,  4572,
+   4574,  4575,  4576,  4577,  4578,  4579,    -1,    -1,
+     -1,    -1,    -1,    -1,  4580,    -1,    -1,    -1,
+     -1,    -1,    -1,  4583,    -1,    -1,    -1,  4584,
+     -1,  4587,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  4588,    -1,    -1,  4589,    -1,    -1,    -1,
+     -1,    -1,  4590,    -1,    -1,  4592,    -1,  4593,
+     -1,  4594,    -1,    -1,  4595,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  4596,    -1,
+     -1,  4598,    -1,  4600,  4601,  4603,  4604,  4605,
+   4606,  4607,  4608,  4609,  4610,    -1,  4611,  4612,
+   4614,  4615,    -1,    -1,    -1,    -1,    -1,  4619,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   4620,    -1,    -1,    -1,  4621,    -1,    -1,    -1,
+   4622,    -1,    -1,    -1,  4623,    -1,    -1,    -1,
+     -1,    -1,    -1,  4624,    -1,    -1,    -1,    -1,
+     -1,    -1,  4625,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  4626,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  4628,    -1,    -1,
+   4629,    -1,  4631,  4632,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  4634,    -1,  4635,  4638,    -1,
+   4639,    -1,  4640,  4641,    -1,    -1,    -1,    -1,
+  /* 0x6e00 */
+     -1,    -1,    -1,    -1,    -1,  4642,    -1,  4643,
+   4644,  4646,  4647,  4650,  4654,  4655,  4656,    -1,
+   4658,  4659,    -1,  4660,  4664,  4665,  4668,  4669,
+     -1,  4670,    -1,  4671,    -1,    -1,    -1,    -1,
+     -1,    -1,  4672,    -1,    -1,    -1,  4673,    -1,
+     -1,  4674,    -1,    -1,  4675,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  4676,    -1,    -1,    -1,
+   4677,    -1,    -1,    -1,    -1,    -1,  4679,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  4680,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  4681,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  4682,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  4683,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  4684,  4685,  4686,  4687,  4688,
+   4690,  4692,  4693,  4694,    -1,  4695,    -1,  4696,
+     -1,  4697,    -1,    -1,  4698,    -1,    -1,    -1,
+   4701,    -1,    -1,    -1,    -1,  4702,  4704,    -1,
+     -1,    -1,    -1,    -1,  4706,  4707,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  4708,  4712,    -1,    -1,  4713,  4714,
+     -1,    -1,    -1,  4716,    -1,    -1,  4717,    -1,
+     -1,    -1,    -1,    -1,  4719,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  4721,  4722,    -1,    -1,
+     -1,    -1,    -1,    -1,  4723,    -1,  4724,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  4725,
+     -1,  4726,  4728,  4729,    -1,  4730,  4732,  4733,
+   4736,  4737,  4739,    -1,  4740,  4741,  4742,    -1,
+   4743,  4746,  4747,    -1,  4748,    -1,    -1,  4750,
+     -1,    -1,  4751,    -1,    -1,    -1,    -1,  4752,
+   4755,    -1,    -1,  4757,    -1,    -1,  4758,  4759,
+  /* 0x6f00 */
+     -1,  4761,    -1,    -1,  4762,    -1,  4763,    -1,
+     -1,    -1,  4764,    -1,    -1,    -1,    -1,    -1,
+     -1,  4765,    -1,  4766,    -1,    -1,    -1,    -1,
+     -1,    -1,  4767,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  4768,  4769,    -1,    -1,    -1,  4770,
+     -1,    -1,    -1,  4773,  4774,    -1,    -1,    -1,
+     -1,  4775,  4776,    -1,    -1,    -1,    -1,    -1,
+   4777,    -1,    -1,    -1,    -1,    -1,    -1,  4778,
+     -1,  4779,    -1,    -1,  4780,  4781,  4782,  4783,
+     -1,    -1,    -1,  4784,    -1,  4785,    -1,    -1,
+     -1,  4786,    -1,    -1,  4789,    -1,    -1,    -1,
+     -1,  4791,    -1,  4792,  4794,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  4796,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  4797,
+   4798,    -1,    -1,    -1,  4799,    -1,    -1,  4800,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  4801,
+   4802,  4806,  4810,    -1,  4813,    -1,  4816,  4817,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  4818,    -1,    -1,  4819,    -1,    -1,  4820,
+     -1,    -1,  4821,  4822,  4825,    -1,    -1,  4826,
+   4828,    -1,    -1,  4829,  4830,    -1,  4832,    -1,
+     -1,  4833,    -1,    -1,    -1,    -1,  4834,    -1,
+   4835,  4836,    -1,  4837,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  4838,    -1,  4839,    -1,    -1,    -1,  4840,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  4841,  4843,    -1,  4844,  4845,    -1,    -1,
+   4847,    -1,  4848,  4850,  4852,    -1,    -1,  4853,
+     -1,    -1,    -1,    -1,  4855,    -1,    -1,    -1,
+     -1,    -1,    -1,  4856,    -1,    -1,    -1,    -1,
+   4857,  4858,    -1,  4861,    -1,  4863,  4866,    -1,
+     -1,    -1,  4868,    -1,  4869,    -1,  4870,    -1,
+  /* 0x7000 */
+     -1,    -1,  4871,    -1,    -1,  4874,  4875,    -1,
+     -1,  4877,    -1,  4878,    -1,    -1,    -1,  4880,
+     -1,    -1,    -1,  4881,    -1,  4884,    -1,    -1,
+   4885,    -1,    -1,    -1,    -1,  4886,    -1,  4887,
+   4888,    -1,    -1,    -1,    -1,    -1,  4889,  4890,
+   4892,    -1,    -1,    -1,  4894,    -1,    -1,  4896,
+   4897,    -1,  4898,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  4900,    -1,
+     -1,    -1,    -1,  4901,  4902,    -1,    -1,    -1,
+     -1,    -1,    -1,  4903,  4905,    -1,  4906,  4908,
+     -1,  4909,    -1,    -1,  4910,  4912,    -1,    -1,
+   4913,    -1,    -1,    -1,    -1,  4914,    -1,    -1,
+     -1,    -1,    -1,  4915,  4916,    -1,    -1,  4917,
+     -1,    -1,    -1,    -1,    -1,  4918,  4919,  4921,
+     -1,    -1,    -1,    -1,    -1,  4922,  4925,    -1,
+     -1,    -1,    -1,  4927,    -1,  4929,  4931,  4933,
+   4934,  4935,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  4938,    -1,    -1,    -1,  4941,  4943,  4944,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  4945,
+     -1,    -1,    -1,    -1,  4947,  4948,    -1,    -1,
+     -1,    -1,    -1,    -1,  4949,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  4954,  4957,
+   4958,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  4959,  4960,    -1,  4962,  4965,    -1,    -1,
+     -1,  4966,  4967,  4970,    -1,    -1,    -1,    -1,
+     -1,    -1,  4971,    -1,    -1,    -1,    -1,  4972,
+     -1,    -1,    -1,    -1,    -1,    -1,  4973,    -1,
+     -1,    -1,    -1,  4975,    -1,    -1,    -1,  4976,
+     -1,    -1,    -1,    -1,    -1,    -1,  4977,  4978,
+   4980,  4982,    -1,  4983,  4984,  4985,    -1,    -1,
+     -1,  4986,    -1,    -1,  4987,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  4988,  4989,    -1,
+  /* 0x7100 */
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  4991,
+   4992,    -1,  4996,    -1,    -1,    -1,    -1,  4997,
+     -1,    -1,    -1,    -1,  4998,  5000,  5001,    -1,
+   5002,    -1,  5003,    -1,    -1,    -1,    -1,    -1,
+     -1,  5005,    -1,    -1,    -1,    -1,  5006,    -1,
+     -1,    -1,    -1,    -1,    -1,  5007,    -1,    -1,
+   5008,    -1,    -1,  5010,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  5011,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  5013,    -1,    -1,
+     -1,  5014,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  5017,  5018,    -1,    -1,  5019,  5023,  5024,
+     -1,  5025,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  5026,    -1,    -1,  5028,    -1,  5029,
+     -1,  5033,    -1,    -1,  5034,    -1,  5036,    -1,
+     -1,    -1,    -1,    -1,  5037,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  5039,    -1,
+     -1,    -1,    -1,    -1,    -1,  5041,    -1,    -1,
+   5043,    -1,    -1,    -1,    -1,    -1,    -1,  5047,
+     -1,    -1,  5048,    -1,  5049,    -1,    -1,  5051,
+     -1,  5052,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  5056,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  5057,  5058,  5059,    -1,    -1,    -1,    -1,
+     -1,  5060,  5061,    -1,    -1,    -1,  5062,    -1,
+     -1,  5063,    -1,    -1,  5065,    -1,    -1,    -1,
+   5067,    -1,    -1,    -1,  5068,    -1,  5070,    -1,
+   5071,    -1,  5073,  5075,    -1,  5077,    -1,  5078,
+     -1,  5081,    -1,    -1,  5082,    -1,    -1,  5083,
+     -1,    -1,    -1,    -1,    -1,    -1,  5085,    -1,
+     -1,    -1,    -1,    -1,  5086,  5087,    -1,    -1,
+     -1,    -1,    -1,  5088,  5092,    -1,    -1,    -1,
+     -1,    -1,    -1,  5093,  5094,    -1,  5095,  5096,
+  /* 0x7200 */
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  5097,    -1,    -1,
+   5098,    -1,    -1,    -1,    -1,    -1,    -1,  5099,
+     -1,    -1,    -1,  5101,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  5104,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  5107,    -1,    -1,
+     -1,  5108,  5109,    -1,  5111,    -1,    -1,  5112,
+     -1,    -1,  5113,    -1,  5114,    -1,  5115,  5118,
+   5119,    -1,    -1,  5120,    -1,  5121,  5122,    -1,
+     -1,    -1,    -1,  5123,    -1,  5124,  5125,    -1,
+     -1,    -1,    -1,  5129,    -1,  5130,    -1,    -1,
+   5134,    -1,    -1,  5135,  5136,    -1,    -1,    -1,
+   5137,    -1,    -1,    -1,    -1,    -1,  5138,    -1,
+     -1,    -1,    -1,  5140,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  5142,  5143,    -1,    -1,
+     -1,    -1,  5144,    -1,    -1,  5146,    -1,    -1,
+     -1,  5147,  5148,    -1,    -1,    -1,    -1,  5149,
+     -1,    -1,  5150,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  5151,    -1,
+     -1,    -1,    -1,  5152,    -1,    -1,    -1,    -1,
+   5154,    -1,  5156,    -1,    -1,    -1,    -1,  5157,
+     -1,    -1,    -1,    -1,  5159,  5160,  5161,    -1,
+     -1,    -1,  5162,    -1,  5163,    -1,  5165,  5166,
+   5167,  5168,    -1,    -1,    -1,    -1,    -1,    -1,
+   5169,    -1,  5170,    -1,    -1,    -1,    -1,    -1,
+   5172,  5173,    -1,    -1,  5174,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  5175,  5176,    -1,
+     -1,    -1,  5177,    -1,    -1,  5178,    -1,    -1,
+     -1,    -1,    -1,    -1,  5179,  5180,  5181,  5182,
+   5183,  5184,  5185,    -1,    -1,    -1,    -1,    -1,
+   5186,  5188,    -1,    -1,    -1,  5189,  5190,    -1,
+  /* 0x7300 */
+     -1,    -1,  5191,  5192,    -1,    -1,    -1,  5193,
+     -1,    -1,  5194,    -1,    -1,  5195,  5197,    -1,
+     -1,    -1,    -1,    -1,    -1,  5199,    -1,    -1,
+   5200,  5201,    -1,    -1,    -1,    -1,    -1,  5202,
+     -1,  5204,    -1,    -1,    -1,    -1,    -1,    -1,
+   5205,  5206,  5207,  5208,  5209,    -1,  5210,  5211,
+     -1,    -1,  5212,    -1,    -1,  5213,  5214,    -1,
+     -1,    -1,    -1,  5215,    -1,    -1,    -1,  5216,
+     -1,  5218,    -1,    -1,  5219,  5220,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  5221,  5222,  5225,
+   5226,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   5227,  5228,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  5229,    -1,    -1,  5231,    -1,
+   5232,    -1,  5233,  5234,    -1,  5236,  5237,    -1,
+   5238,  5239,  5240,    -1,    -1,  5241,    -1,  5243,
+   5244,    -1,  5246,  5247,  5248,    -1,  5249,    -1,
+   5250,  5251,    -1,  5252,    -1,  5254,    -1,  5255,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  5256,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  5257,  5258,  5259,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   5260,  5262,    -1,    -1,    -1,    -1,  5263,  5264,
+   5265,  5266,    -1,  5267,    -1,    -1,    -1,    -1,
+     -1,    -1,  5268,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  5269,    -1,  5272,  5273,  5274,
+   5276,  5277,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  5278,    -1,    -1,  5280,    -1,    -1,    -1,
+     -1,    -1,  5284,    -1,    -1,    -1,    -1,    -1,
+   5285,  5286,  5288,    -1,    -1,    -1,    -1,  5289,
+     -1,    -1,    -1,    -1,    -1,    -1,  5290,    -1,
+  /* 0x7400 */
+     -1,    -1,    -1,  5291,    -1,  5292,    -1,    -1,
+     -1,  5293,    -1,    -1,    -1,  5296,  5298,  5299,
+   5300,  5302,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  5304,    -1,    -1,  5305,    -1,    -1,    -1,
+     -1,  5307,  5309,    -1,  5310,    -1,    -1,  5311,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  5312,
+     -1,    -1,    -1,  5313,    -1,    -1,    -1,    -1,
+     -1,    -1,  5314,    -1,    -1,    -1,    -1,    -1,
+     -1,  5315,    -1,    -1,    -1,    -1,    -1,    -1,
+   5316,    -1,    -1,  5319,  5321,    -1,    -1,    -1,
+   5322,  5323,  5324,    -1,    -1,    -1,    -1,  5325,
+   5326,    -1,  5327,    -1,  5328,    -1,  5330,  5331,
+   5332,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  5333,    -1,    -1,    -1,  5335,
+     -1,  5336,    -1,    -1,    -1,    -1,  5337,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  5339,  5341,  5344,    -1,    -1,  5345,    -1,
+     -1,    -1,    -1,  5346,    -1,    -1,    -1,    -1,
+   5347,    -1,    -1,    -1,    -1,  5348,    -1,    -1,
+   5349,    -1,    -1,    -1,    -1,  5350,    -1,  5352,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   5353,  5355,  5356,    -1,  5357,    -1,    -1,  5358,
+     -1,    -1,  5359,    -1,  5360,    -1,    -1,    -1,
+     -1,    -1,  5362,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  5364,    -1,    -1,    -1,    -1,
+   5365,    -1,    -1,    -1,    -1,    -1,  5366,  5367,
+     -1,    -1,    -1,    -1,    -1,    -1,  5368,  5370,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+  /* 0x7500 */
+     -1,  5371,    -1,    -1,    -1,    -1,  5373,    -1,
+     -1,    -1,    -1,    -1,  5374,    -1,  5375,    -1,
+     -1,    -1,    -1,    -1,    -1,  5378,  5379,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  5381,    -1,
+   5384,    -1,  5385,  5387,    -1,    -1,  5389,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  5392,
+     -1,    -1,    -1,    -1,    -1,  5398,    -1,  5399,
+     -1,    -1,  5400,  5402,  5407,  5409,    -1,    -1,
+     -1,    -1,  5410,    -1,  5411,  5413,  5414,    -1,
+     -1,    -1,  5418,    -1,  5419,  5421,  5423,    -1,
+     -1,  5424,  5425,    -1,    -1,    -1,    -1,    -1,
+     -1,  5429,  5431,    -1,    -1,  5432,  5437,    -1,
+   5441,  5442,  5443,    -1,    -1,  5444,    -1,  5445,
+   5446,    -1,  5447,  5448,    -1,    -1,    -1,    -1,
+   5450,  5451,    -1,  5453,  5457,  5458,  5460,    -1,
+     -1,    -1,  5461,  5462,    -1,    -1,    -1,    -1,
+     -1,    -1,  5463,    -1,    -1,  5467,  5469,  5470,
+     -1,  5471,  5475,    -1,    -1,    -1,  5479,  5481,
+     -1,    -1,    -1,    -1,    -1,    -1,  5483,  5484,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  5485,
+   5486,  5487,    -1,  5488,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  5489,  5490,  5491,  5492,
+     -1,  5493,    -1,    -1,  5495,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  5496,
+   5497,  5498,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  5499,    -1,    -1,    -1,  5500,    -1,
+     -1,  5504,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   5505,  5506,  5507,  5508,    -1,    -1,  5509,    -1,
+     -1,    -1,  5510,  5512,  5515,    -1,    -1,    -1,
+     -1,  5516,  5517,    -1,    -1,    -1,  5518,    -1,
+  /* 0x7600 */
+     -1,    -1,  5519,    -1,    -1,  5523,  5524,    -1,
+     -1,  5525,    -1,  5527,    -1,  5528,    -1,    -1,
+     -1,    -1,    -1,  5529,    -1,    -1,  5530,  5531,
+   5532,    -1,    -1,    -1,    -1,    -1,  5533,    -1,
+     -1,  5534,    -1,    -1,  5535,    -1,  5536,  5537,
+     -1,    -1,  5538,  5539,    -1,    -1,  5540,    -1,
+     -1,    -1,  5541,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  5542,  5543,    -1,    -1,  5545,  5546,
+     -1,    -1,  5547,    -1,  5548,  5550,  5551,  5552,
+     -1,  5553,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  5554,    -1,    -1,  5556,    -1,    -1,
+   5558,    -1,    -1,    -1,    -1,    -1,  5559,  5560,
+     -1,  5561,  5562,  5563,  5564,  5565,    -1,  5566,
+     -1,  5567,    -1,  5568,  5569,  5570,  5571,  5572,
+   5573,  5576,  5577,    -1,  5578,  5579,    -1,    -1,
+     -1,    -1,  5580,  5590,  5591,    -1,    -1,    -1,
+     -1,  5593,  5595,  5597,    -1,    -1,    -1,    -1,
+   5598,    -1,    -1,  5601,    -1,  5602,  5604,    -1,
+   5605,  5606,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  5607,    -1,    -1,    -1,  5609,    -1,
+     -1,  5610,    -1,    -1,    -1,  5611,    -1,    -1,
+   5613,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   5614,  5616,  5617,    -1,    -1,    -1,    -1,  5619,
+   5620,  5622,  5624,    -1,  5625,    -1,    -1,    -1,
+     -1,  5626,    -1,  5627,    -1,    -1,    -1,  5629,
+   5630,    -1,    -1,  5631,  5634,  5635,    -1,  5636,
+   5637,  5639,    -1,    -1,    -1,    -1,  5641,  5643,
+   5644,  5645,    -1,    -1,  5646,    -1,  5647,    -1,
+     -1,  5648,    -1,  5649,  5651,    -1,    -1,  5652,
+     -1,    -1,  5653,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+  /* 0x7700 */
+     -1,    -1,    -1,    -1,    -1,    -1,  5655,    -1,
+     -1,  5657,    -1,    -1,  5658,  5660,  5661,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   5663,    -1,    -1,    -1,    -1,    -1,  5664,  5665,
+     -1,    -1,    -1,    -1,    -1,  5666,  5667,    -1,
+     -1,    -1,    -1,  5668,  5669,    -1,    -1,  5670,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  5672,
+     -1,    -1,    -1,    -1,    -1,    -1,  5673,    -1,
+   5676,  5677,  5678,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  5679,
+   5680,  5681,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  5682,    -1,  5683,    -1,
+   5684,    -1,    -1,    -1,  5685,  5686,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  5687,    -1,    -1,    -1,    -1,    -1,  5688,
+     -1,    -1,    -1,    -1,    -1,  5690,  5691,  5692,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  5693,    -1,    -1,    -1,  5694,    -1,
+   5695,    -1,    -1,    -1,    -1,    -1,  5696,    -1,
+   5697,    -1,  5698,    -1,    -1,    -1,    -1,    -1,
+     -1,  5699,  5700,    -1,    -1,  5701,    -1,    -1,
+   5703,    -1,    -1,    -1,    -1,    -1,  5704,    -1,
+     -1,    -1,    -1,    -1,  5705,    -1,  5706,    -1,
+     -1,  5710,    -1,    -1,    -1,    -1,    -1,  5711,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  5712,  5713,    -1,    -1,    -1,    -1,
+     -1,  5714,  5715,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  5716,    -1,  5717,    -1,  5719,  5720,
+     -1,    -1,    -1,  5722,    -1,    -1,    -1,  5723,
+     -1,    -1,    -1,    -1,  5724,    -1,  5727,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  5728,  5729,
+  /* 0x7800 */
+   5734,  5735,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  5736,    -1,    -1,  5737,  5738,  5741,
+     -1,    -1,  5742,    -1,  5743,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  5744,    -1,  5745,
+     -1,    -1,    -1,    -1,  5746,    -1,    -1,    -1,
+     -1,    -1,  5747,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  5750,  5751,    -1,    -1,  5752,  5753,
+   5758,  5759,    -1,  5760,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  5761,  5762,  5763,
+     -1,  5764,  5765,    -1,  5766,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  5767,    -1,    -1,    -1,
+   5768,    -1,  5769,    -1,    -1,    -1,  5770,  5773,
+     -1,    -1,    -1,    -1,    -1,  5774,    -1,  5775,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  5778,    -1,    -1,    -1,    -1,    -1,  5782,
+     -1,    -1,    -1,    -1,    -1,  5784,  5785,    -1,
+     -1,    -1,    -1,    -1,  5786,  5787,    -1,  5790,
+     -1,    -1,    -1,  5793,  5794,    -1,  5795,  5798,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  5799,  5800,    -1,    -1,  5801,    -1,  5802,
+   5803,  5805,    -1,    -1,    -1,    -1,    -1,    -1,
+   5807,    -1,  5808,  5810,  5812,    -1,    -1,    -1,
+     -1,  5813,    -1,    -1,    -1,    -1,    -1,  5814,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  5815,  5816,    -1,  5817,    -1,  5818,    -1,
+     -1,    -1,  5819,    -1,    -1,    -1,    -1,    -1,
+   5822,    -1,    -1,  5823,    -1,    -1,    -1,  5824,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  5825,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  5826,
+   5827,    -1,  5828,    -1,    -1,  5829,    -1,    -1,
+  /* 0x7900 */
+   5830,    -1,    -1,    -1,  5831,    -1,  5832,    -1,
+   5835,    -1,    -1,    -1,    -1,    -1,  5837,    -1,
+     -1,    -1,  5838,    -1,    -1,    -1,    -1,    -1,
+     -1,  5839,    -1,    -1,    -1,    -1,    -1,  5840,
+   5843,    -1,    -1,    -1,    -1,    -1,  5844,    -1,
+     -1,    -1,  5849,  5850,  5851,    -1,  5852,    -1,
+     -1,  5855,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  5856,  5857,  5858,    -1,    -1,  5859,
+   5860,    -1,    -1,  5861,    -1,  5862,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  5863,    -1,
+     -1,    -1,    -1,    -1,    -1,  5864,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  5865,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  5866,
+     -1,    -1,    -1,    -1,    -1,  5867,    -1,  5868,
+   5869,    -1,    -1,    -1,    -1,    -1,    -1,  5870,
+   5871,    -1,    -1,    -1,  5872,  5873,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  5874,  5875,    -1,
+     -1,    -1,    -1,    -1,    -1,  5876,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  5877,    -1,    -1,    -1,    -1,  5878,    -1,
+     -1,  5879,  5880,    -1,    -1,    -1,  5881,    -1,
+   5882,  5883,    -1,    -1,  5884,    -1,    -1,    -1,
+     -1,    -1,    -1,  5885,    -1,    -1,    -1,  5886,
+     -1,  5887,    -1,  5888,    -1,    -1,  5889,  5890,
+   5895,    -1,  5896,  5897,  5902,  5905,    -1,    -1,
+   5906,    -1,    -1,    -1,  5907,  5909,  5910,  5911,
+   5912,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  5913,
+   5914,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   5916,    -1,    -1,    -1,    -1,  5917,  5918,    -1,
+  /* 0x7a00 */
+     -1,  5919,    -1,    -1,    -1,  5923,  5924,    -1,
+   5926,  5927,    -1,    -1,    -1,    -1,  5929,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  5930,
+     -1,    -1,  5932,    -1,  5934,    -1,    -1,  5935,
+     -1,    -1,    -1,  5936,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  5937,  5938,    -1,
+     -1,  5939,  5941,  5942,    -1,    -1,    -1,    -1,
+     -1,    -1,  5944,  5946,    -1,    -1,  5947,  5951,
+   5955,    -1,  5957,    -1,    -1,  5958,    -1,    -1,
+     -1,  5960,    -1,    -1,  5962,  5966,  5967,  5969,
+   5971,  5974,    -1,    -1,    -1,    -1,    -1,  5975,
+     -1,    -1,    -1,    -1,    -1,    -1,  5976,    -1,
+   5978,  5979,  5980,  5981,    -1,    -1,    -1,    -1,
+   5982,  5986,  5988,  5990,    -1,  5991,    -1,    -1,
+   5993,    -1,    -1,    -1,    -1,    -1,    -1,  5994,
+     -1,  5996,    -1,    -1,    -1,  5997,    -1,    -1,
+     -1,  5998,    -1,  5999,    -1,    -1,    -1,    -1,
+     -1,    -1,  6000,    -1,    -1,  6001,  6002,    -1,
+     -1,  6003,    -1,  6005,    -1,    -1,    -1,  6009,
+     -1,    -1,    -1,    -1,  6013,  6014,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  6015,  6016,    -1,
+     -1,  6017,  6018,    -1,  6019,  6020,  6022,  6024,
+   6026,    -1,    -1,  6028,    -1,  6029,  6030,    -1,
+     -1,    -1,  6032,  6033,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  6037,  6039,  6040,  6041,  6043,
+   6044,    -1,  6046,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  6047,    -1,    -1,    -1,  6048,    -1,
+     -1,    -1,  6050,    -1,  6051,  6053,  6056,    -1,
+     -1,    -1,  6058,    -1,    -1,    -1,    -1,    -1,
+     -1,  6059,  6061,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  6063,    -1,
+   6065,    -1,    -1,    -1,    -1,    -1,  6067,    -1,
+  /* 0x7b00 */
+     -1,    -1,    -1,  6068,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  6069,    -1,    -1,    -1,    -1,
+     -1,  6071,    -1,    -1,  6073,  6074,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  6075,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  6076,
+   6082,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  6083,  6085,    -1,
+     -1,    -1,  6086,    -1,  6088,    -1,  6090,    -1,
+     -1,    -1,    -1,    -1,    -1,  6091,  6092,    -1,
+     -1,    -1,    -1,  6093,    -1,  6094,    -1,  6096,
+   6098,  6099,    -1,    -1,    -1,    -1,  6100,    -1,
+   6104,  6105,  6106,  6107,  6108,  6109,  6110,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  6114,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  6115,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  6116,  6117,    -1,  6118,    -1,  6119,  6122,
+   6123,    -1,  6124,    -1,    -1,    -1,  6125,  6126,
+     -1,    -1,    -1,  6129,    -1,  6130,    -1,  6131,
+     -1,    -1,  6132,  6133,    -1,    -1,    -1,    -1,
+     -1,    -1,  6134,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  6135,    -1,    -1,  6139,  6141,
+   6142,  6143,  6144,  6145,  6146,    -1,    -1,    -1,
+   6147,    -1,  6149,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   6150,    -1,    -1,    -1,  6151,    -1,  6153,    -1,
+     -1,  6154,    -1,  6155,    -1,    -1,    -1,  6157,
+     -1,  6158,    -1,  6159,  6160,    -1,    -1,  6161,
+     -1,    -1,    -1,  6162,    -1,    -1,    -1,    -1,
+   6163,  6165,    -1,    -1,  6166,    -1,  6167,    -1,
+     -1,  6168,  6171,    -1,    -1,  6172,  6174,  6175,
+     -1,  6176,  6177,  6178,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+  /* 0x7c00 */
+   6179,  6181,    -1,    -1,  6183,    -1,  6185,    -1,
+     -1,    -1,    -1,    -1,    -1,  6186,    -1,    -1,
+     -1,  6187,  6189,    -1,  6190,    -1,  6192,  6193,
+   6195,    -1,    -1,    -1,    -1,    -1,  6196,    -1,
+   6197,  6198,    -1,  6199,    -1,    -1,    -1,    -1,
+     -1,    -1,  6200,  6201,    -1,    -1,    -1,    -1,
+     -1,  6203,    -1,    -1,    -1,    -1,    -1,  6205,
+     -1,  6206,    -1,    -1,    -1,  6207,  6208,    -1,
+   6209,  6211,    -1,  6212,    -1,    -1,  6213,    -1,
+     -1,    -1,    -1,    -1,  6214,    -1,    -1,  6215,
+   6217,    -1,  6218,    -1,  6219,  6221,  6222,    -1,
+   6224,  6226,    -1,  6227,  6228,    -1,    -1,  6229,
+   6230,    -1,    -1,    -1,  6232,    -1,    -1,    -1,
+     -1,  6234,  6235,    -1,  6236,  6237,  6239,    -1,
+     -1,    -1,  6240,    -1,  6242,    -1,    -1,    -1,
+     -1,    -1,    -1,  6243,  6244,    -1,    -1,    -1,
+     -1,    -1,    -1,  6245,    -1,    -1,    -1,  6246,
+     -1,    -1,    -1,  6248,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  6249,
+   6250,    -1,    -1,  6251,  6253,  6254,    -1,    -1,
+     -1,    -1,    -1,    -1,  6255,  6256,  6258,  6259,
+     -1,    -1,  6263,    -1,  6264,    -1,  6268,    -1,
+     -1,    -1,    -1,  6269,    -1,  6271,    -1,    -1,
+     -1,  6272,  6273,    -1,    -1,  6274,    -1,    -1,
+     -1,  6275,    -1,    -1,    -1,    -1,  6276,  6281,
+     -1,  6282,  6283,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  6284,    -1,  6286,    -1,    -1,
+     -1,    -1,  6287,    -1,    -1,  6291,  6292,    -1,
+   6293,    -1,    -1,    -1,    -1,    -1,  6295,  6296,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   6297,    -1,  6299,    -1,  6300,    -1,  6301,    -1,
+   6302,  6306,  6308,  6309,  6313,    -1,  6315,  6317,
+  /* 0x7d00 */
+   6319,    -1,  6320,    -1,  6321,  6322,  6323,  6324,
+   6325,  6326,    -1,  6327,    -1,  6328,    -1,    -1,
+   6329,    -1,    -1,  6330,  6331,  6332,  6333,  6334,
+   6335,  6337,  6339,  6340,  6341,  6342,    -1,    -1,
+     -1,  6344,    -1,  6345,    -1,  6346,    -1,  6347,
+     -1,    -1,    -1,    -1,  6348,    -1,  6350,  6352,
+   6356,  6357,  6358,  6359,    -1,  6360,    -1,    -1,
+     -1,  6361,  6362,    -1,  6363,    -1,    -1,  6364,
+   6365,    -1,  6366,  6367,  6368,  6369,  6370,    -1,
+   6372,    -1,    -1,  6373,  6374,  6376,  6377,  6378,
+   6379,    -1,    -1,    -1,    -1,  6380,  6383,    -1,
+     -1,    -1,  6384,  6385,    -1,  6387,  6389,    -1,
+     -1,  6390,  6391,    -1,  6392,  6396,  6397,    -1,
+   6398,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   6399,  6400,  6402,  6404,    -1,  6405,  6407,  6410,
+   6411,  6413,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  6414,  6415,  6417,    -1,    -1,  6418,    -1,
+   6419,  6420,    -1,  6421,  6422,    -1,    -1,  6423,
+     -1,  6424,    -1,  6426,    -1,    -1,    -1,  6428,
+     -1,  6429,  6431,    -1,  6434,    -1,  6435,    -1,
+   6436,    -1,  6438,  6440,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  6441,  6445,  6446,    -1,  6447,
+   6448,  6449,  6450,  6451,  6453,  6455,    -1,  6456,
+   6457,  6458,  6459,  6460,    -1,  6461,  6463,  6464,
+     -1,    -1,    -1,    -1,  6465,    -1,    -1,  6466,
+     -1,    -1,  6467,  6468,    -1,  6469,    -1,  6470,
+   6474,  6475,  6477,    -1,  6479,  6480,  6481,  6483,
+   6484,  6485,  6486,    -1,  6490,  6491,  6492,    -1,
+   6493,  6494,    -1,  6496,    -1,  6498,  6499,    -1,
+   6500,  6501,  6502,  6503,  6507,    -1,    -1,  6508,
+     -1,  6509,  6510,    -1,  6511,    -1,  6512,    -1,
+     -1,  6513,    -1,  6514,  6515,    -1,    -1,    -1,
+  /* 0x7e00 */
+     -1,  6517,    -1,    -1,  6519,    -1,    -1,    -1,
+   6521,  6522,  6523,  6524,    -1,    -1,    -1,    -1,
+   6525,  6526,    -1,    -1,    -1,  6527,    -1,  6529,
+   6530,    -1,    -1,  6533,    -1,  6534,  6535,  6536,
+     -1,    -1,    -1,  6537,    -1,    -1,  6539,  6541,
+   6543,    -1,    -1,  6544,    -1,  6545,  6546,    -1,
+     -1,  6547,  6549,    -1,  6552,  6553,  6554,  6556,
+     -1,  6557,    -1,    -1,    -1,  6558,  6563,    -1,
+     -1,  6564,    -1,  6565,    -1,  6567,  6569,    -1,
+   6570,    -1,  6571,  6574,    -1,  6577,    -1,    -1,
+     -1,    -1,  6579,    -1,  6580,  6581,  6582,    -1,
+     -1,  6584,  6585,  6586,    -1,    -1,  6587,    -1,
+     -1,  6588,  6590,    -1,  6591,    -1,  6592,    -1,
+     -1,  6593,  6595,  6597,    -1,  6600,  6603,  6605,
+   6606,    -1,    -1,  6609,    -1,    -1,    -1,    -1,
+     -1,  6610,    -1,    -1,  6611,  6613,  6614,  6615,
+     -1,    -1,  6616,  6617,    -1,    -1,    -1,  6618,
+   6619,  6620,  6622,    -1,  6624,  6627,  6628,  6631,
+     -1,    -1,  6633,  6635,  6636,    -1,  6637,    -1,
+   6640,    -1,    -1,    -1,  6642,  6643,    -1,  6646,
+   6648,  6649,  6650,  6651,  6652,  6656,  6657,  6658,
+   6659,  6660,  6662,  6663,  6664,  6665,  6666,  6667,
+   6668,  6669,  6670,  6671,  6672,  6673,  6675,  6676,
+   6677,  6678,  6679,  6680,  6681,  6682,  6683,  6684,
+   6688,  6689,  6691,  6692,  6693,  6694,  6695,  6696,
+   6697,  6698,  6699,  6700,  6701,  6702,  6703,  6704,
+   6706,  6707,  6708,  6709,  6710,  6711,  6713,  6714,
+   6715,  6717,  6718,  6719,  6720,  6721,  6724,  6725,
+   6727,  6728,  6729,  6730,  6733,  6734,  6735,  6737,
+   6739,  6740,  6741,  6743,    -1,  6744,  6746,  6747,
+   6748,  6749,  6750,  6751,  6753,  6754,  6756,  6757,
+   6759,  6761,  6762,  6763,  6764,  6765,  6766,  6767,
+  /* 0x7f00 */
+   6769,  6770,  6771,  6772,  6773,  6774,  6775,  6776,
+   6777,  6778,  6779,  6781,  6782,  6783,  6784,  6785,
+   6786,  6790,  6791,  6792,  6793,  6794,  6795,  6796,
+   6797,  6799,  6800,  6801,  6802,  6803,  6804,  6805,
+   6806,  6808,  6809,  6810,  6811,  6812,  6813,  6814,
+   6817,  6818,  6819,  6820,  6822,  6823,  6824,  6825,
+   6826,  6828,  6829,  6830,  6831,  6832,  6834,  6837,
+   6838,  6839,  6840,  6842,  6843,  6845,  6848,    -1,
+     -1,    -1,  6850,    -1,    -1,    -1,    -1,  6852,
+   6853,    -1,    -1,    -1,  6858,    -1,  6860,    -1,
+   6865,  6867,  6870,  6872,    -1,    -1,    -1,  6874,
+     -1,    -1,  6877,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  6879,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  6880,    -1,    -1,    -1,    -1,    -1,
+   6882,    -1,    -1,    -1,  6884,  6885,  6888,  6889,
+   6890,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   6892,  6893,    -1,  6895,    -1,  6897,  6898,  6899,
+   6902,    -1,  6906,  6907,  6908,    -1,    -1,    -1,
+   6909,  6910,    -1,    -1,    -1,    -1,    -1,  6911,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  6912,
+     -1,  6913,    -1,  6914,  6915,  6916,    -1,    -1,
+   6917,  6918,  6919,    -1,    -1,    -1,  6921,    -1,
+     -1,    -1,    -1,    -1,  6922,    -1,  6924,    -1,
+     -1,  6926,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  6927,  6929,  6931,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  6932,    -1,    -1,    -1,    -1,    -1,
+   6933,  6934,  6935,    -1,    -1,    -1,    -1,    -1,
+   6936,    -1,    -1,    -1,  6937,    -1,    -1,    -1,
+     -1,    -1,    -1,  6939,  6940,    -1,    -1,    -1,
+     -1,  6941,    -1,  6942,    -1,    -1,    -1,    -1,
+     -1,  6943,  6944,  6945,    -1,  6947,    -1,    -1,
+  /* 0x8000 */
+   6948,    -1,    -1,  6949,    -1,    -1,    -1,  6950,
+   6951,    -1,  6952,  6953,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  6954,    -1,    -1,
+   6955,    -1,    -1,    -1,  6956,    -1,    -1,    -1,
+     -1,  6957,  6958,    -1,  6959,    -1,    -1,  6960,
+   6961,    -1,    -1,    -1,  6963,    -1,  6964,    -1,
+   6965,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   6966,    -1,    -1,  6967,  6968,  6969,    -1,    -1,
+   6970,    -1,  6973,  6974,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  6975,  6976,  6979,    -1,    -1,
+     -1,    -1,    -1,    -1,  6980,    -1,  6982,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  6984,  6985,
+     -1,  6987,    -1,    -1,    -1,    -1,  6990,    -1,
+   6993,  6995,  6996,  6999,    -1,  7000,  7002,  7003,
+   7007,    -1,  7010,  7011,  7012,  7014,  7015,  7016,
+     -1,  7019,    -1,    -1,    -1,  7020,  7022,    -1,
+     -1,    -1,    -1,  7023,    -1,  7025,    -1,  7027,
+   7028,  7029,    -1,    -1,    -1,    -1,  7030,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   7031,  7033,    -1,    -1,  7034,    -1,    -1,  7035,
+     -1,    -1,    -1,    -1,  7036,    -1,  7037,  7038,
+     -1,  7040,  7041,    -1,  7043,    -1,    -1,    -1,
+     -1,    -1,    -1,  7044,    -1,    -1,  7045,  7046,
+   7047,  7048,    -1,    -1,  7051,    -1,  7053,    -1,
+     -1,    -1,    -1,    -1,  7055,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  7056,    -1,  7057,    -1,    -1,    -1,
+     -1,  7058,    -1,    -1,    -1,    -1,    -1,  7060,
+   7061,    -1,  7062,  7063,    -1,  7065,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  7066,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+  /* 0x8100 */
+     -1,    -1,    -1,  7067,    -1,  7069,  7071,  7073,
+   7074,  7075,    -1,  7076,    -1,  7078,    -1,  7079,
+   7082,  7083,    -1,  7085,  7086,    -1,    -1,  7087,
+     -1,    -1,  7088,  7090,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  7092,    -1,    -1,    -1,    -1,
+     -1,  7093,    -1,  7094,    -1,    -1,    -1,    -1,
+     -1,  7095,    -1,  7096,    -1,  7099,  7100,    -1,
+   7101,  7102,  7104,    -1,    -1,    -1,  7106,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  7107,    -1,
+     -1,    -1,  7108,    -1,  7110,    -1,  7111,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  7112,  7113,
+   7114,    -1,    -1,    -1,    -1,    -1,    -1,  7115,
+     -1,  7116,    -1,    -1,    -1,    -1,  7117,    -1,
+     -1,    -1,    -1,  7120,    -1,  7121,  7122,    -1,
+     -1,    -1,    -1,  7123,    -1,    -1,    -1,    -1,
+   7125,    -1,    -1,  7127,    -1,  7128,  7129,    -1,
+   7130,    -1,  7131,  7132,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   7133,  7134,    -1,  7135,    -1,  7137,    -1,    -1,
+     -1,    -1,  7138,    -1,    -1,    -1,    -1,    -1,
+   7139,    -1,    -1,  7140,  7141,    -1,    -1,    -1,
+     -1,  7142,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  7143,    -1,    -1,    -1,    -1,
+   7144,    -1,    -1,  7146,    -1,  7150,  7152,  7153,
+   7154,    -1,    -1,  7155,    -1,    -1,    -1,    -1,
+   7157,  7159,    -1,  7160,    -1,  7161,    -1,  7162,
+     -1,    -1,    -1,  7164,    -1,    -1,    -1,    -1,
+   7166,  7168,  7169,    -1,  7170,    -1,  7171,  7172,
+   7174,    -1,  7175,    -1,    -1,  7176,    -1,    -1,
+   7177,    -1,    -1,    -1,    -1,  7178,    -1,    -1,
+   7179,    -1,    -1,    -1,  7180,    -1,    -1,    -1,
+     -1,    -1,  7181,    -1,    -1,    -1,    -1,    -1,
+  /* 0x8200 */
+     -1,    -1,    -1,    -1,    -1,    -1,  7183,  7184,
+   7185,  7186,  7189,    -1,    -1,  7190,  7192,    -1,
+   7193,    -1,    -1,  7194,    -1,    -1,  7195,  7198,
+   7201,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  7202,    -1,    -1,    -1,    -1,
+     -1,  7203,    -1,    -1,    -1,    -1,  7204,    -1,
+   7206,  7207,    -1,    -1,    -1,  7208,  7209,    -1,
+     -1,  7210,    -1,  7211,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  7213,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  7214,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  7215,  7216,  7218,    -1,  7219,    -1,
+     -1,    -1,  7220,  7222,    -1,    -1,    -1,    -1,
+   7224,  7225,    -1,  7227,    -1,    -1,  7231,  7235,
+   7239,  7240,  7241,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  7246,    -1,    -1,    -1,    -1,    -1,
+   7247,    -1,    -1,  7249,  7250,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  7251,    -1,    -1,  7252,
+     -1,    -1,    -1,    -1,  7253,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  7254,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  7255,  7256,    -1,    -1,    -1,    -1,    -1,
+   7257,    -1,    -1,  7264,    -1,    -1,    -1,    -1,
+     -1,  7265,    -1,    -1,    -1,  7266,    -1,  7268,
+   7269,    -1,    -1,  7270,  7271,  7272,  7273,  7274,
+   7279,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  7280,  7281,    -1,    -1,    -1,    -1,  7282,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  7283,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  7284,  7286,    -1,    -1,  7287,    -1,    -1,
+  /* 0x8300 */
+     -1,    -1,    -1,  7288,    -1,    -1,    -1,    -1,
+     -1,    -1,  7290,    -1,    -1,    -1,  7292,  7293,
+     -1,  7294,    -1,    -1,  7295,  7296,    -1,    -1,
+   7297,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  7298,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  7300,
+   7301,    -1,  7302,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  7304,  7305,
+     -1,    -1,  7306,    -1,    -1,    -1,    -1,    -1,
+   7307,  7309,    -1,    -1,  7310,    -1,    -1,    -1,
+   7311,  7313,  7314,  7315,  7316,  7317,  7318,  7319,
+   7320,  7322,    -1,  7325,  7327,  7328,  7329,  7330,
+   7331,  7332,  7333,  7334,  7335,  7336,  7337,  7338,
+     -1,    -1,    -1,  7341,    -1,    -1,    -1,    -1,
+     -1,  7342,    -1,  7343,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  7344,    -1,    -1,
+     -1,    -1,  7346,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  7348,    -1,  7349,  7350,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  7351,    -1,
+     -1,    -1,  7352,    -1,    -1,    -1,    -1,  7353,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  7354,  7355,  7356,  7357,  7358,  7359,  7360,
+   7362,  7363,  7364,    -1,  7367,  7369,  7370,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  7371,    -1,  7372,  7373,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  7375,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  7376,    -1,    -1,    -1,  7377,
+   7380,  7381,    -1,    -1,  7382,    -1,    -1,    -1,
+     -1,  7385,    -1,    -1,    -1,    -1,    -1,    -1,
+  /* 0x8400 */
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  7386,
+     -1,    -1,  7387,    -1,  7388,  7389,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  7390,    -1,    -1,
+     -1,    -1,  7392,    -1,    -1,  7393,    -1,  7394,
+   7399,    -1,    -1,    -1,  7400,  7402,  7404,  7405,
+   7406,    -1,    -1,    -1,  7407,    -1,    -1,    -1,
+     -1,  7408,    -1,    -1,  7411,  7412,    -1,    -1,
+   7413,    -1,    -1,    -1,  7414,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  7415,    -1,    -1,
+     -1,  7416,  7417,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  7420,    -1,    -1,    -1,    -1,  7421,
+   7422,    -1,  7423,    -1,    -1,    -1,    -1,    -1,
+   7424,    -1,  7425,    -1,  7427,    -1,  7428,    -1,
+     -1,    -1,  7429,    -1,  7430,    -1,  7431,  7432,
+     -1,  7433,    -1,    -1,    -1,    -1,    -1,  7434,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  7435,  7436,    -1,    -1,    -1,  7437,
+     -1,  7438,    -1,  7439,  7440,    -1,    -1,    -1,
+   7441,    -1,    -1,  7442,  7444,    -1,    -1,    -1,
+     -1,  7445,    -1,    -1,    -1,    -1,  7449,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  7451,    -1,
+   7452,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  7453,
+     -1,    -1,    -1,    -1,  7454,    -1,    -1,    -1,
+   7455,    -1,    -1,    -1,    -1,    -1,  7456,    -1,
+     -1,    -1,    -1,  7457,    -1,    -1,    -1,    -1,
+     -1,  7459,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  7461,    -1,  7462,
+   7463,    -1,    -1,  7464,    -1,  7465,  7466,    -1,
+     -1,    -1,    -1,    -1,    -1,  7467,  7470,  7471,
+     -1,  7472,    -1,    -1,  7473,    -1,    -1,    -1,
+     -1,    -1,  7475,    -1,    -1,  7480,    -1,    -1,
+  /* 0x8500 */
+     -1,    -1,    -1,    -1,    -1,  7481,  7483,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   7484,  7485,    -1,    -1,  7486,  7488,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  7489,    -1,
+     -1,    -1,    -1,  7490,    -1,  7491,  7492,    -1,
+     -1,    -1,    -1,    -1,    -1,  7493,    -1,  7494,
+     -1,    -1,  7495,  7496,  7497,  7498,  7500,  7502,
+     -1,  7503,  7504,  7505,  7506,    -1,    -1,    -1,
+     -1,  7508,    -1,    -1,    -1,    -1,  7509,    -1,
+     -1,    -1,  7510,  7512,    -1,    -1,  7514,    -1,
+   7515,    -1,  7517,  7518,    -1,  7519,    -1,    -1,
+   7520,    -1,  7521,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  7522,    -1,    -1,    -1,    -1,    -1,
+     -1,  7523,  7524,    -1,    -1,  7525,    -1,    -1,
+   7526,    -1,  7527,    -1,  7528,    -1,    -1,  7530,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  7531,
+   7534,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   7535,    -1,  7536,    -1,  7538,    -1,    -1,    -1,
+     -1,  7539,    -1,  7540,  7541,    -1,    -1,  7542,
+   7544,    -1,    -1,    -1,    -1,    -1,    -1,  7545,
+     -1,    -1,    -1,    -1,    -1,    -1,  7546,    -1,
+     -1,  7548,    -1,  7549,  7551,  7553,  7554,  7556,
+   7557,    -1,  7559,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  7561,    -1,  7563,    -1,    -1,    -1,
+     -1,  7564,  7568,    -1,    -1,    -1,    -1,    -1,
+     -1,  7572,    -1,    -1,    -1,  7575,  7576,  7577,
+     -1,    -1,    -1,  7579,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  7580,    -1,  7585,
+     -1,    -1,    -1,    -1,  7587,  7588,    -1,    -1,
+     -1,    -1,  7590,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  7592,  7596,    -1,  7598,  7599,
+     -1,  7600,  7602,    -1,  7603,    -1,    -1,    -1,
+  /* 0x8600 */
+   7606,    -1,  7607,    -1,  7609,    -1,  7610,  7611,
+     -1,    -1,  7615,  7617,    -1,  7619,  7621,    -1,
+   7623,    -1,    -1,  7626,    -1,    -1,    -1,  7628,
+     -1,    -1,  7629,    -1,    -1,    -1,  7630,    -1,
+     -1,    -1,  7631,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  7632,    -1,  7633,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  7635,    -1,    -1,  7636,    -1,  7638,
+     -1,  7639,    -1,    -1,    -1,    -1,  7640,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  7642,  7644,
+     -1,  7645,    -1,  7646,    -1,  7647,  7649,  7650,
+     -1,    -1,  7652,  7654,  7656,  7657,    -1,  7659,
+     -1,    -1,    -1,    -1,    -1,  7660,  7661,  7662,
+     -1,    -1,    -1,  7663,  7665,    -1,  7666,  7667,
+     -1,  7668,    -1,    -1,    -1,  7669,    -1,    -1,
+     -1,    -1,  7671,  7672,    -1,  7673,  7674,  7675,
+   7676,  7677,  7678,  7679,    -1,    -1,    -1,    -1,
+     -1,    -1,  7680,  7682,  7683,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  7684,  7687,    -1,
+   7688,    -1,    -1,    -1,    -1,  7689,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  7690,    -1,
+     -1,    -1,    -1,  7691,  7692,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  7693,    -1,    -1,    -1,
+     -1,    -1,  7694,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  7695,
+     -1,    -1,  7697,    -1,    -1,  7698,  7700,  7702,
+     -1,    -1,    -1,    -1,  7703,    -1,    -1,    -1,
+     -1,  7706,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  7707,  7708,
+   7709,  7710,  7711,  7712,  7713,    -1,    -1,    -1,
+     -1,    -1,  7714,  7715,    -1,  7716,    -1,    -1,
+  /* 0x8700 */
+     -1,    -1,  7718,    -1,    -1,    -1,  7719,    -1,
+     -1,    -1,    -1,  7720,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  7721,  7722,  7723,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  7724,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  7726,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  7727,    -1,    -1,    -1,  7728,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  7729,    -1,  7732,
+   7734,  7735,    -1,  7736,    -1,    -1,  7738,    -1,
+     -1,    -1,    -1,    -1,    -1,  7739,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  7740,
+     -1,  7741,    -1,    -1,    -1,    -1,  7742,    -1,
+   7743,    -1,    -1,    -1,    -1,    -1,    -1,  7744,
+     -1,  7745,    -1,    -1,    -1,    -1,    -1,    -1,
+   7746,    -1,    -1,    -1,  7747,    -1,  7748,  7749,
+   7751,    -1,  7752,    -1,  7753,    -1,    -1,    -1,
+   7754,    -1,    -1,    -1,    -1,  7755,  7756,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   7757,  7758,    -1,    -1,    -1,    -1,  7760,    -1,
+     -1,  7761,  7762,    -1,  7764,    -1,    -1,  7766,
+   7767,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  7768,    -1,    -1,    -1,  7769,
+     -1,  7770,    -1,    -1,  7771,    -1,  7772,  7773,
+   7774,    -1,    -1,    -1,    -1,    -1,  7775,  7776,
+     -1,    -1,  7777,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  7778,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  7779,    -1,    -1,  7780,
+     -1,    -1,  7781,    -1,    -1,    -1,  7782,    -1,
+   7783,  7784,    -1,  7785,    -1,    -1,    -1,    -1,
+  /* 0x8800 */
+     -1,  7787,    -1,    -1,    -1,  7788,  7790,  7791,
+     -1,    -1,    -1,    -1,    -1,  7793,  7794,  7795,
+   7796,  7797,  7798,    -1,  7801,  7802,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  7803,
+     -1,  7805,  7806,  7807,    -1,    -1,    -1,  7809,
+   7811,    -1,    -1,    -1,    -1,  7812,    -1,    -1,
+     -1,  7813,    -1,    -1,    -1,    -1,  7814,    -1,
+     -1,  7817,  7819,  7822,  7823,    -1,    -1,    -1,
+     -1,    -1,  7825,    -1,  7826,  7827,  7828,    -1,
+     -1,  7831,  7833,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  7834,  7835,  7838,  7839,    -1,
+   7840,    -1,  7843,  7844,  7846,  7849,  7850,  7852,
+     -1,    -1,    -1,  7855,  7856,  7857,    -1,    -1,
+   7858,    -1,    -1,    -1,  7859,    -1,  7860,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  7861,    -1,    -1,    -1,  7862,    -1,    -1,
+     -1,    -1,    -1,    -1,  7863,  7864,  7867,    -1,
+     -1,    -1,    -1,  7868,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  7869,    -1,  7872,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  7873,  7875,  7876,  7877,
+     -1,    -1,    -1,    -1,  7878,  7880,    -1,  7881,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  7882,  7883,    -1,
+   7884,    -1,  7885,    -1,  7886,    -1,    -1,  7887,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  7889,    -1,    -1,  7890,  7891,    -1,    -1,
+   7892,  7893,  7895,  7896,  7897,  7899,  7900,    -1,
+   7902,    -1,    -1,    -1,    -1,  7903,    -1,    -1,
+     -1,    -1,    -1,    -1,  7904,  7905,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  7906,    -1,    -1,
+  /* 0x8900 */
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  7907,
+     -1,    -1,  7908,    -1,  7909,    -1,  7910,  7911,
+     -1,    -1,  7912,  7914,    -1,    -1,    -1,    -1,
+   7915,    -1,    -1,  7916,    -1,  7917,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  7918,    -1,    -1,    -1,    -1,
+     -1,    -1,  7919,  7920,  7921,    -1,    -1,    -1,
+   7922,    -1,    -1,  7923,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  7924,    -1,    -1,    -1,  7926,
+     -1,    -1,    -1,    -1,  7927,  7928,    -1,  7929,
+     -1,    -1,    -1,    -1,    -1,  7930,  7931,    -1,
+     -1,    -1,    -1,    -1,    -1,  7932,    -1,    -1,
+   7933,    -1,    -1,    -1,  7934,    -1,    -1,    -1,
+     -1,    -1,  7935,    -1,  7936,  7937,    -1,  7938,
+     -1,    -1,  7939,    -1,  7940,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  7942,    -1,  7943,
+     -1,    -1,    -1,    -1,    -1,    -1,  7945,  7947,
+   7948,  7949,  7952,  7956,    -1,  7957,  7958,  7959,
+   7960,    -1,    -1,  7963,  7965,    -1,  7967,    -1,
+   7969,    -1,  7970,    -1,    -1,    -1,    -1,    -1,
+     -1,  7973,    -1,    -1,    -1,  7974,  7975,  7976,
+     -1,  7978,  7979,    -1,  7980,    -1,    -1,  7981,
+   7982,    -1,  7983,  7984,    -1,    -1,  7986,  7987,
+     -1,    -1,  7989,    -1,  7993,  7994,    -1,  7996,
+   7997,  7999,  8000,  8002,  8003,  8004,  8006,  8008,
+   8009,  8011,  8014,  8015,  8016,  8017,  8018,  8019,
+   8020,  8021,    -1,    -1,  8022,    -1,    -1,  8023,
+     -1,    -1,    -1,    -1,    -1,  8025,  8026,    -1,
+     -1,    -1,    -1,  8027,    -1,    -1,  8028,  8029,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  8030,
+     -1,    -1,    -1,    -1,  8032,    -1,  8033,    -1,
+   8035,  8036,    -1,    -1,    -1,  8038,    -1,  8040,
+  /* 0x8a00 */
+   8042,  8044,  8046,  8047,    -1,    -1,    -1,    -1,
+   8048,    -1,  8049,    -1,  8050,    -1,  8051,    -1,
+   8052,    -1,  8053,  8054,    -1,  8055,  8056,  8057,
+   8059,    -1,  8060,  8061,    -1,  8062,    -1,  8063,
+   8064,  8066,  8068,  8069,    -1,  8070,    -1,    -1,
+     -1,  8071,  8072,  8073,    -1,  8074,    -1,    -1,
+     -1,  8075,    -1,  8076,  8078,    -1,  8079,    -1,
+     -1,    -1,  8081,  8082,  8083,  8085,    -1,    -1,
+     -1,  8086,    -1,    -1,    -1,    -1,  8087,    -1,
+     -1,    -1,    -1,  8089,    -1,  8091,  8092,    -1,
+   8093,    -1,  8094,    -1,  8095,  8096,  8097,  8098,
+   8099,    -1,    -1,  8100,    -1,    -1,  8101,  8102,
+   8103,  8104,  8105,  8106,    -1,    -1,  8107,  8108,
+     -1,  8109,    -1,  8110,  8111,  8113,  8114,    -1,
+   8115,  8116,  8118,  8119,    -1,  8120,    -1,    -1,
+     -1,    -1,    -1,    -1,  8121,    -1,    -1,  8122,
+     -1,    -1,    -1,    -1,  8123,  8124,  8125,  8126,
+     -1,  8127,  8128,    -1,  8129,  8130,    -1,    -1,
+     -1,  8131,  8132,    -1,    -1,  8133,  8134,    -1,
+   8136,    -1,  8138,    -1,    -1,    -1,  8139,    -1,
+   8140,  8141,    -1,  8142,  8143,  8144,  8145,    -1,
+   8146,    -1,  8147,    -1,  8149,  8151,    -1,  8153,
+   8154,    -1,  8155,    -1,    -1,    -1,  8156,    -1,
+     -1,  8157,    -1,    -1,  8158,    -1,  8160,  8161,
+     -1,    -1,  8162,    -1,  8163,    -1,    -1,  8164,
+     -1,  8165,    -1,  8166,  8167,  8169,    -1,  8170,
+     -1,  8171,  8172,    -1,    -1,    -1,  8173,  8174,
+     -1,    -1,    -1,  8175,  8176,  8177,  8178,    -1,
+   8179,  8181,  8183,    -1,  8184,    -1,  8186,  8187,
+     -1,  8188,    -1,  8189,  8191,  8197,  8198,    -1,
+     -1,  8199,    -1,  8200,    -1,    -1,  8202,  8203,
+   8205,    -1,  8206,    -1,  8207,    -1,  8209,    -1,
+  /* 0x8b00 */
+   8210,  8211,  8212,    -1,  8213,  8214,    -1,    -1,
+     -1,    -1,  8215,    -1,  8216,    -1,  8217,    -1,
+   8218,    -1,    -1,    -1,  8219,    -1,  8220,  8221,
+     -1,  8222,  8223,  8225,    -1,  8226,    -1,    -1,
+   8227,  8229,    -1,    -1,    -1,    -1,    -1,    -1,
+   8231,    -1,  8232,  8233,  8235,  8236,    -1,    -1,
+   8238,    -1,    -1,  8239,    -1,    -1,    -1,    -1,
+     -1,  8240,    -1,    -1,  8241,    -1,  8243,    -1,
+     -1,  8244,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  8246,    -1,    -1,  8248,    -1,  8249,  8250,
+   8251,    -1,    -1,    -1,    -1,    -1,  8252,    -1,
+   8254,  8255,  8256,  8257,  8259,    -1,    -1,  8261,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  8262,  8264,    -1,  8266,  8267,  8269,
+   8271,  8272,  8273,    -1,  8275,    -1,    -1,  8276,
+   8277,    -1,    -1,    -1,  8278,  8280,  8281,    -1,
+   8283,  8285,    -1,  8287,    -1,  8289,    -1,    -1,
+     -1,    -1,  8290,  8292,  8293,  8295,  8297,    -1,
+   8300,    -1,  8302,  8303,    -1,  8305,  8306,    -1,
+     -1,    -1,  8307,    -1,  8309,    -1,  8310,    -1,
+   8311,  8313,  8314,  8315,  8316,  8317,  8318,  8319,
+   8320,  8321,  8323,  8324,  8325,  8327,  8328,  8329,
+   8330,  8331,  8332,  8333,  8334,  8335,  8336,  8337,
+   8338,  8339,  8341,  8342,  8343,  8344,  8346,  8347,
+   8348,  8349,  8351,  8352,  8353,  8354,  8355,  8356,
+   8357,  8358,  8359,  8360,  8361,  8362,  8363,  8364,
+   8365,  8366,  8368,  8369,  8370,  8371,  8372,  8373,
+   8374,  8375,  8376,  8377,  8378,  8379,  8381,  8382,
+   8383,  8384,  8385,  8386,  8387,  8388,  8389,  8390,
+   8391,  8392,  8393,  8394,  8395,  8396,  8397,  8398,
+   8400,  8401,  8403,  8404,  8405,  8407,  8408,  8409,
+   8410,  8411,  8412,  8413,  8415,  8416,  8417,  8418,
+  /* 0x8c00 */
+   8419,  8420,  8421,  8422,  8423,  8424,  8425,  8426,
+   8427,  8428,  8429,  8431,  8432,  8433,  8434,  8435,
+   8437,  8438,  8439,  8440,  8441,  8443,  8444,  8446,
+   8447,  8448,  8450,  8451,  8452,  8453,  8454,  8455,
+   8456,  8457,  8458,  8459,  8461,  8462,  8464,  8465,
+   8466,  8467,  8468,  8470,  8472,  8473,  8474,  8476,
+   8477,  8478,  8479,  8480,  8481,  8482,  8483,  8484,
+     -1,    -1,  8486,    -1,    -1,    -1,    -1,  8487,
+   8490,    -1,    -1,    -1,    -1,    -1,  8493,    -1,
+   8494,    -1,  8495,    -1,    -1,    -1,  8499,    -1,
+   8501,    -1,    -1,  8505,  8509,    -1,    -1,    -1,
+   8513,    -1,  8514,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  8515,    -1,    -1,    -1,
+     -1,    -1,    -1,  8516,  8517,    -1,  8518,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  8519,    -1,
+     -1,    -1,  8520,  8521,  8522,    -1,  8523,    -1,
+     -1,    -1,  8524,    -1,    -1,    -1,    -1,  8525,
+     -1,  8526,    -1,  8527,  8528,  8529,  8531,    -1,
+     -1,    -1,  8532,  8533,  8534,    -1,    -1,    -1,
+   8535,    -1,    -1,  8536,  8537,  8539,  8541,  8542,
+   8545,  8546,  8548,    -1,    -1,    -1,    -1,  8549,
+   8550,  8551,  8552,  8553,  8554,  8555,  8558,  8561,
+   8562,    -1,  8563,  8564,  8567,    -1,  8568,  8569,
+   8570,    -1,  8571,  8572,  8573,  8574,    -1,  8575,
+   8576,  8577,  8578,  8579,  8580,  8581,    -1,  8582,
+   8583,  8584,  8586,  8587,    -1,  8588,  8590,    -1,
+     -1,  8592,  8593,  8594,  8596,  8598,  8599,    -1,
+     -1,  8600,  8601,  8602,  8604,    -1,  8605,    -1,
+   8606,  8607,  8610,  8612,  8614,    -1,  8616,  8617,
+     -1,    -1,  8618,  8621,  8622,  8623,    -1,    -1,
+   8624,    -1,    -1,    -1,  8625,  8627,    -1,  8628,
+     -1,    -1,  8630,  8631,  8632,  8633,  8634,    -1,
+  /* 0x8d00 */
+     -1,  8635,    -1,    -1,  8637,  8638,    -1,  8639,
+   8640,    -1,  8641,  8643,    -1,  8646,    -1,  8647,
+   8648,    -1,  8649,  8651,  8653,    -1,  8654,  8655,
+     -1,    -1,    -1,  8658,  8659,  8660,  8662,  8663,
+   8664,  8667,  8668,  8670,  8671,  8673,  8675,  8676,
+   8677,  8679,  8680,  8681,  8682,  8683,  8684,  8685,
+   8686,  8689,  8691,  8692,  8693,  8694,  8695,  8696,
+   8697,  8698,  8699,  8700,  8701,  8702,  8703,  8704,
+   8705,  8706,  8707,  8708,  8711,  8712,  8713,  8714,
+   8715,  8716,  8717,  8719,  8720,  8721,  8724,  8725,
+   8726,  8727,  8728,  8729,  8730,  8731,  8732,  8734,
+   8735,  8736,  8737,  8738,  8739,  8740,  8743,  8747,
+   8748,  8749,  8750,  8751,  8752,    -1,    -1,    -1,
+     -1,    -1,  8754,    -1,  8755,    -1,    -1,    -1,
+   8756,  8757,    -1,    -1,    -1,  8758,  8759,    -1,
+     -1,    -1,    -1,  8760,    -1,    -1,    -1,  8765,
+     -1,  8766,  8767,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  8768,    -1,    -1,    -1,    -1,
+     -1,  8769,    -1,    -1,    -1,  8770,    -1,    -1,
+     -1,  8771,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  8772,    -1,
+   8773,    -1,    -1,    -1,  8774,    -1,    -1,  8775,
+     -1,  8777,  8778,    -1,    -1,    -1,    -1,    -1,
+   8779,    -1,    -1,  8780,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  8781,  8783,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  8784,    -1,
+     -1,  8785,    -1,    -1,    -1,  8786,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  8787,  8788,  8789,  8790,
+   8791,  8792,  8793,  8794,  8795,    -1,    -1,    -1,
+  /* 0x8e00 */
+     -1,  8796,    -1,    -1,    -1,    -1,    -1,    -1,
+   8798,    -1,  8800,  8801,  8803,    -1,    -1,    -1,
+   8804,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   8805,  8806,  8807,  8808,  8809,    -1,    -1,  8810,
+   8811,    -1,    -1,    -1,  8812,    -1,    -1,    -1,
+   8813,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  8814,    -1,    -1,    -1,
+     -1,    -1,    -1,  8815,  8817,    -1,    -1,  8818,
+     -1,  8819,  8820,    -1,    -1,  8821,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  8822,
+     -1,    -1,    -1,  8823,  8824,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   8826,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  8828,  8830,    -1,    -1,    -1,    -1,  8832,
+     -1,    -1,  8833,  8834,  8835,    -1,    -1,  8836,
+     -1,  8837,  8838,  8841,    -1,  8843,    -1,  8845,
+     -1,  8846,  8847,  8848,    -1,  8849,    -1,    -1,
+     -1,  8851,  8852,    -1,  8853,    -1,    -1,    -1,
+     -1,  8854,  8855,    -1,    -1,  8857,  8858,    -1,
+     -1,    -1,  8859,    -1,  8861,  8862,    -1,  8863,
+   8864,  8868,  8869,  8870,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   8871,    -1,    -1,    -1,  8872,    -1,  8875,    -1,
+     -1,    -1,  8879,  8880,  8881,  8882,    -1,    -1,
+     -1,  8883,  8884,    -1,  8885,    -1,    -1,    -1,
+     -1,    -1,    -1,  8886,    -1,    -1,    -1,  8889,
+     -1,    -1,  8890,  8892,  8894,    -1,    -1,    -1,
+     -1,    -1,    -1,  8895,    -1,    -1,    -1,    -1,
+   8896,    -1,  8898,    -1,    -1,    -1,  8899,    -1,
+   8902,  8903,  8904,  8905,  8906,  8907,  8909,    -1,
+  /* 0x8f00 */
+   8910,    -1,    -1,  8911,    -1,  8912,    -1,  8913,
+   8914,  8915,  8916,    -1,  8917,    -1,    -1,  8919,
+     -1,    -1,  8920,  8922,  8923,  8925,    -1,    -1,
+     -1,  8927,    -1,  8929,  8931,  8933,  8934,  8935,
+     -1,  8936,    -1,    -1,    -1,  8937,  8938,    -1,
+     -1,  8939,  8941,    -1,  8942,  8943,    -1,  8944,
+     -1,    -1,    -1,  8945,    -1,    -1,  8946,    -1,
+   8947,    -1,  8948,  8950,  8951,    -1,  8952,  8953,
+     -1,  8954,  8957,    -1,  8958,  8960,  8961,    -1,
+     -1,  8962,    -1,    -1,    -1,  8964,  8965,    -1,
+     -1,    -1,    -1,    -1,  8966,    -1,    -1,  8967,
+     -1,    -1,    -1,    -1,  8968,    -1,    -1,  8969,
+     -1,  8971,  8972,    -1,  8973,    -1,  8974,  8975,
+   8976,  8977,  8978,  8979,  8980,  8982,  8985,  8986,
+   8988,  8990,  8991,  8992,  8993,  8994,  8995,  8996,
+   8997,  8998,  8999,  9000,  9002,  9003,  9004,  9005,
+   9006,  9007,  9008,  9009,  9010,  9012,  9013,  9015,
+   9016,  9018,  9019,  9020,  9021,  9022,  9023,  9025,
+   9026,  9027,  9028,  9029,  9030,  9031,  9032,  9033,
+   9034,  9035,  9036,    -1,    -1,  9037,  9040,  9043,
+   9044,  9046,    -1,    -1,  9049,    -1,  9052,  9053,
+   9055,  9057,    -1,  9060,    -1,  9061,  9064,  9065,
+     -1,    -1,  9068,    -1,    -1,  9069,  9070,    -1,
+     -1,  9071,  9074,    -1,    -1,  9077,  9078,    -1,
+     -1,  9080,  9081,  9082,    -1,    -1,  9083,  9084,
+   9085,    -1,  9086,    -1,    -1,    -1,    -1,    -1,
+   9088,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   9089,  9090,    -1,  9091,  9092,  9093,  9094,  9095,
+     -1,    -1,    -1,    -1,  9098,  9099,    -1,    -1,
+     -1,  9100,  9101,    -1,  9102,    -1,    -1,  9103,
+     -1,    -1,    -1,  9104,  9107,    -1,    -1,    -1,
+     -1,  9113,  9115,    -1,    -1,    -1,    -1,    -1,
+  /* 0x9000 */
+     -1,    -1,  9117,  9118,    -1,    -1,    -1,    -1,
+   9119,  9120,  9121,    -1,    -1,    -1,  9122,    -1,
+     -1,    -1,  9123,  9125,    -1,  9127,    -1,    -1,
+     -1,  9130,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  9131,    -1,  9132,  9138,    -1,
+     -1,  9139,    -1,    -1,    -1,    -1,    -1,    -1,
+   9140,  9142,  9143,    -1,    -1,    -1,    -1,    -1,
+     -1,  9144,  9146,  9147,  9148,    -1,    -1,    -1,
+     -1,  9149,    -1,    -1,    -1,  9150,    -1,    -1,
+     -1,  9152,  9154,  9156,    -1,    -1,  9157,    -1,
+     -1,    -1,  9158,  9159,  9162,  9164,    -1,  9165,
+     -1,  9166,    -1,    -1,  9167,    -1,  9168,    -1,
+   9170,  9172,    -1,    -1,    -1,  9173,    -1,    -1,
+     -1,  9174,    -1,    -1,    -1,    -1,    -1,  9175,
+     -1,    -1,  9176,    -1,    -1,    -1,  9178,  9179,
+   9180,    -1,  9181,    -1,  9182,    -1,    -1,    -1,
+     -1,  9183,    -1,    -1,  9184,    -1,    -1,  9185,
+     -1,  9186,  9189,    -1,    -1,    -1,    -1,  9192,
+   9193,  9194,    -1,  9195,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  9196,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  9197,    -1,
+   9198,    -1,    -1,  9199,  9200,    -1,  9201,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,  9202,  9203,  9204,    -1,  9207,    -1,    -1,
+     -1,  9208,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  9211,    -1,  9212,  9214,
+   9215,  9216,  9217,  9219,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  9220,  9222,
+     -1,    -1,    -1,    -1,    -1,    -1,  9223,  9224,
+   9225,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  9226,  9227,  9228,
+   9232,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+  /* 0x9100 */
+     -1,    -1,    -1,    -1,    -1,    -1,  9233,    -1,
+     -1,  9234,  9238,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,  9242,    -1,  9243,  9244,  9248,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,  9249,
+     -1,    -1,    -1,    -1,    -1,  9250,    -1,    -1,
+   9251,    -1,  9254,    -1,  9255,    -1,  9256,  9257,
+     -1,    -1,  9258,    -1,  9259,  9260,    -1,    -1,
+     -1,    -1,  9263,    -1,    -1,    -1,  9264,  9265,
+   9267,  9268,    -1,  9269,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,  9270,    -1,    -1,    -1,
+     -1,  9271,    -1,    -1,    -1,  9272,    -1,    -1,
+     -1,    -1,  9274,    -1,    -1,    -1,  9275,  9278,
+     -1,    -1,  9280,    -1,  9281,    -1,    -1,    -1,
+     -1,  9283,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  9285,  9286,  9287,
+     -1,    -1,    -1,  9289,    -1,    -1,    -1,  9290,
+     -1,  9291,  9292,  9293,    -1,    -1,  9294,    -1,
+     -1,    -1,    -1,    -1,  9296,  9297,  9298,  9300,
+   9303,    -1,    -1,    -1,  9304,    -1,  9306,    -1,
+     -1,    -1,    -1,    -1,  9308,    -1,    -1,    -1,
+     -1,    -1,    -1,  9310,  9312,    -1,    -1,    -1,
+     -1,  9314,    -1,    -1,    -1,    -1,    -1,    -1,
+   9317,    -1,    -1,  9319,  9321,    -1,    -1,    -1,
+   9323,  9325,    -1,  9326,    -1,  9327,    -1,  9328,
+   9330,    -1,  9332,  9334,  9336,    -1,  9338,    -1,
+   9340,  9341,  9343,  9345,  9348,  9349,  9350,  9352,
+   9353,  9354,  9355,    -1,  9357,  9358,    -1,    -1,
+   9359,  9361,    -1,  9362,  9364,    -1,  9365,  9366,
+     -1,  9367,    -1,    -1,    -1,    -1,    -1,  9368,
+   9369,    -1,    -1,    -1,    -1,  9377,    -1,  9378,
+     -1,  9379,  9380,  9381,  9384,    -1,    -1,    -1,
+  /* 0x9200 */
+   9392,  9393,    -1,  9394,  9395,  9396,  9397,    -1,
+   9399,  9400,    -1,    -1,    -1,  9401,  9402,    -1,
+   9404,  9405,  9406,    -1,  9407,  9408,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,  9409,  9411,
+     -1,  9412,    -1,  9413,    -1,  9414,  9415,  9416,
+   9417,  9418,    -1,    -1,  9420,    -1,  9422,    -1,
+   9424,    -1,    -1,  9425,  9426,    -1,    -1,  9427,
+   9428,  9429,  9430,    -1,    -1,  9431,  9432,  9433,
+   9434,    -1,    -1,    -1,  9435,  9440,  9441,  9442,
+   9443,  9444,    -1,  9445,    -1,  9447,    -1,    -1,
+     -1,  9448,    -1,    -1,    -1,  9449,    -1,  9450,
+     -1,    -1,  9451,  9452,    -1,    -1,  9454,    -1,
+   9455,    -1,  9456,    -1,  9459,    -1,  9461,    -1,
+   9462,    -1,    -1,    -1,  9464,  9465,    -1,    -1,
+     -1,  9466,    -1,    -1,  9471,    -1,  9475,    -1,
+   9476,    -1,  9477,  9478,    -1,    -1,    -1,  9479,
+   9480,    -1,    -1,  9481,    -1,  9482,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,  9483,    -1,    -1,
+     -1,  9484,    -1,  9485,    -1,  9486,  9490,    -1,
+   9491,    -1,  9492,  9494,  9496,    -1,  9499,    -1,
+   9500,    -1,    -1,  9501,    -1,  9502,  9503,    -1,
+   9504,  9505,  9506,  9507,  9508,  9509,  9511,    -1,
+     -1,  9512,  9513,  9514,    -1,    -1,    -1,  9516,
+     -1,  9518,    -1,  9519,  9520,  9521,    -1,    -1,
+     -1,  9522,    -1,  9523,    -1,  9524,    -1,  9525,
+     -1,    -1,    -1,    -1,  9526,    -1,    -1,  9527,
+     -1,    -1,  9528,    -1,    -1,    -1,    -1,    -1,
+     -1,  9529,    -1,  9530,    -1,  9535,    -1,  9536,
+     -1,    -1,    -1,  9538,  9540,  9541,  9542,    -1,
+   9543,  9548,  9550,    -1,    -1,  9553,  9555,  9556,
+   9557,  9558,    -1,  9559,    -1,    -1,  9561,    -1,
+   9562,    -1,    -1,    -1,  9563,    -1,    -1,    -1,
+  /* 0x9300 */
+     -1,  9564,    -1,    -1,  9565,    -1,  9567,  9568,
+   9569,    -1,    -1,    -1,    -1,    -1,    -1,  9570,
+   9572,    -1,  9573,    -1,    -1,  9574,    -1,    -1,
+   9575,  9576,  9578,  9579,    -1,    -1,    -1,  9580,
+   9581,  9582,  9583,    -1,    -1,    -1,  9585,    -1,
+   9586,  9587,    -1,  9588,  9589,    -1,  9592,  9593,
+     -1,    -1,  9594,  9596,    -1,    -1,  9597,  9598,
+   9599,    -1,    -1,    -1,    -1,    -1,  9600,    -1,
+   9601,  9602,    -1,  9603,    -1,    -1,  9604,  9605,
+   9606,    -1,  9608,  9611,    -1,  9612,    -1,    -1,
+     -1,    -1,    -1,    -1,  9613,    -1,    -1,    -1,
+   9614,    -1,  9615,  9616,    -1,    -1,  9618,    -1,
+   9619,    -1,    -1,    -1,  9621,  9622,    -1,    -1,
+     -1,  9623,    -1,    -1,  9624,    -1,    -1,  9625,
+   9627,    -1,    -1,  9628,    -1,  9632,  9633,    -1,
+     -1,    -1,  9634,    -1,    -1,    -1,  9635,  9637,
+     -1,  9638,  9639,    -1,  9640,    -1,    -1,  9641,
+     -1,    -1,  9642,  9643,  9644,    -1,    -1,    -1,
+     -1,    -1,  9646,    -1,  9648,    -1,  9650,  9652,
+   9653,    -1,  9654,  9655,    -1,    -1,    -1,    -1,
+     -1,  9656,  9658,  9659,    -1,    -1,  9660,  9662,
+     -1,  9663,  9664,    -1,  9665,  9666,  9668,    -1,
+   9670,    -1,    -1,  9671,    -1,  9672,    -1,    -1,
+   9673,    -1,  9674,    -1,    -1,    -1,    -1,  9675,
+     -1,  9676,    -1,  9677,    -1,    -1,    -1,  9678,
+   9679,    -1,    -1,    -1,  9680,  9681,    -1,    -1,
+   9682,  9683,    -1,  9684,    -1,    -1,    -1,  9685,
+   9686,    -1,    -1,    -1,  9687,  9688,  9689,  9690,
+     -1,  9694,  9696,    -1,  9697,  9698,    -1,    -1,
+   9700,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   9701,    -1,    -1,    -1,    -1,  9702,    -1,  9703,
+     -1,  9704,    -1,    -1,    -1,  9705,    -1,    -1,
+  /* 0x9400 */
+     -1,    -1,  9707,  9709,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,  9710,    -1,    -1,    -1,    -1,
+   9711,    -1,  9712,  9713,  9714,    -1,    -1,  9715,
+   9716,  9717,  9718,    -1,    -1,  9720,    -1,    -1,
+   9722,  9723,    -1,    -1,    -1,    -1,  9728,  9729,
+   9730,    -1,    -1,  9731,    -1,    -1,  9732,    -1,
+     -1,    -1,  9734,  9735,    -1,  9736,  9741,    -1,
+   9742,    -1,  9744,    -1,    -1,    -1,    -1,  9745,
+     -1,    -1,    -1,  9746,  9748,  9750,    -1,    -1,
+     -1,    -1,  9751,    -1,  9752,    -1,    -1,    -1,
+     -1,  9753,  9757,  9761,  9762,  9763,    -1,    -1,
+     -1,    -1,  9764,  9766,  9771,    -1,  9773,    -1,
+   9774,    -1,    -1,  9775,  9776,  9777,    -1,    -1,
+     -1,    -1,  9778,    -1,  9780,  9784,    -1,  9785,
+   9786,  9787,  9788,    -1,    -1,  9789,    -1,  9791,
+     -1,  9792,    -1,    -1,  9793,  9794,  9796,  9797,
+     -1,  9798,  9800,    -1,    -1,  9801,  9803,  9806,
+   9807,  9808,  9809,  9810,  9811,  9812,  9813,  9814,
+   9815,  9816,  9817,  9818,  9819,  9820,  9821,  9822,
+   9823,  9824,  9825,  9826,  9827,  9828,  9829,  9830,
+   9834,  9835,  9836,  9837,  9838,  9839,  9841,  9842,
+   9843,  9844,  9846,  9847,  9848,  9849,  9850,  9851,
+   9852,  9853,  9855,  9856,  9857,  9858,  9861,  9862,
+   9863,  9864,  9865,  9866,  9869,  9870,  9871,  9872,
+   9873,  9874,  9877,  9878,  9879,  9880,  9882,  9883,
+   9885,  9886,  9887,  9889,  9890,  9892,  9893,  9895,
+   9896,  9897,  9898,  9899,  9900,  9902,  9903,  9904,
+   9905,  9906,  9907,  9908,  9909,  9910,  9911,  9912,
+   9913,  9914,  9915,  9916,  9917,  9918,  9919,  9920,
+   9921,  9922,  9923,  9924,  9926,  9927,  9928,  9929,
+   9930,  9931,  9932,  9936,  9937,  9938,  9939,  9940,
+   9941,  9943,  9944,  9947,  9948,  9949,  9950,  9951,
+  /* 0x9500 */
+   9953,  9954,  9955,  9956,  9957,  9959,  9960,  9961,
+   9962,  9965,  9966,  9967,  9968,  9969,  9970,  9971,
+   9973,  9975,  9976,  9977,  9978,  9979,  9980,  9981,
+   9982,  9983,  9984,  9985,  9986,  9987,  9988,  9989,
+   9990,  9991,  9992,  9993,  9994,  9996,  9997,  9998,
+   9999, 10000, 10001, 10003, 10004, 10005, 10006, 10007,
+  10008, 10009, 10010, 10011, 10012, 10013, 10014, 10015,
+  10016, 10017, 10018, 10020, 10021, 10022, 10023, 10024,
+  10025, 10026, 10027, 10028, 10029, 10030, 10031, 10032,
+  10034, 10035, 10036, 10037, 10038, 10040, 10041, 10042,
+  10044, 10045, 10046, 10047, 10048,    -1, 10049, 10050,
+  10051, 10052, 10053, 10054, 10055, 10056, 10057, 10058,
+  10059, 10060, 10061, 10063, 10064, 10065, 10066, 10067,
+  10068, 10069, 10070, 10071, 10072, 10073, 10074, 10075,
+  10076, 10078, 10079, 10080, 10081, 10082, 10083, 10084,
+  10088, 10092,    -1,    -1,    -1,    -1,    -1, 10094,
+  10098,    -1, 10099, 10100,    -1,    -1, 10101, 10102,
+  10104, 10105,    -1, 10107, 10108,    -1, 10109, 10110,
+     -1, 10112, 10114, 10116, 10117,    -1,    -1,    -1,
+  10118, 10119,    -1,    -1,    -1,    -1,    -1,    -1,
+  10121, 10123, 10124, 10127, 10128, 10129,    -1, 10130,
+  10131, 10132,    -1, 10133, 10134, 10135,    -1,    -1,
+     -1, 10136, 10138,    -1, 10140,    -1, 10142,    -1,
+     -1, 10143,    -1, 10145, 10146, 10147, 10148, 10149,
+     -1,    -1,    -1, 10150,    -1,    -1, 10152, 10153,
+  10154,    -1, 10155, 10157, 10158, 10159,    -1,    -1,
+  10160,    -1, 10161, 10162, 10163, 10164, 10165, 10166,
+  10169, 10174,    -1,    -1, 10180,    -1, 10183,    -1,
+  10184, 10185, 10186,    -1, 10187, 10188,    -1,    -1,
+  10189, 10190, 10191, 10192, 10193, 10194, 10196, 10197,
+  10198, 10200, 10201, 10203, 10204, 10205, 10206, 10207,
+  10208, 10209, 10211, 10212, 10213, 10214, 10215, 10216,
+  /* 0x9600 */
+  10217, 10218, 10219, 10220, 10221, 10222, 10224, 10225,
+  10226, 10227, 10229, 10230, 10231, 10232, 10233, 10234,
+  10235, 10236, 10237, 10239, 10240, 10242, 10243, 10244,
+  10245, 10246, 10247, 10249, 10250, 10251,    -1, 10253,
+     -1,    -1,    -1,    -1,    -1, 10254, 10258,    -1,
+  10260, 10261, 10263, 10265, 10267,    -1,    -1, 10268,
+     -1, 10269,    -1, 10270, 10272, 10276, 10277,    -1,
+  10279,    -1,    -1, 10280,    -1,    -1,    -1,    -1,
+  10281, 10283,    -1,    -1,    -1, 10285, 10286, 10287,
+  10288, 10289,    -1,    -1,    -1, 10290,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1, 10291, 10294,    -1,
+  10295,    -1,    -1,    -1, 10296, 10298, 10299, 10301,
+     -1,    -1,    -1, 10302,    -1, 10304, 10305,    -1,
+  10312, 10313,    -1,    -1,    -1,    -1,    -1,    -1,
+  10316,    -1,    -1, 10320,    -1,    -1,    -1, 10321,
+  10322,    -1, 10323, 10326,    -1, 10328,    -1, 10330,
+     -1, 10332, 10334,    -1, 10338,    -1,    -1,    -1,
+     -1,    -1, 10340,    -1, 10341,    -1, 10342, 10344,
+  10345,    -1,    -1,    -1,    -1, 10348, 10350,    -1,
+     -1, 10351,    -1, 10352,    -1, 10353,    -1, 10360,
+  10361,    -1,    -1, 10364,    -1,    -1,    -1,    -1,
+  10367,    -1, 10368, 10371,    -1,    -1, 10373, 10374,
+     -1, 10381, 10384,    -1, 10385,    -1, 10386, 10388,
+  10390,    -1, 10392, 10399,    -1, 10400, 10401,    -1,
+     -1, 10402,    -1,    -1,    -1,    -1,    -1, 10404,
+     -1,    -1,    -1, 10406,    -1, 10407,    -1, 10408,
+     -1, 10409,    -1,    -1,    -1, 10411, 10414,    -1,
+     -1, 10415, 10416, 10417, 10419, 10421, 10422, 10425,
+  10426,    -1, 10428, 10429,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+  10430,    -1, 10431, 10432,    -1,    -1, 10433, 10434,
+     -1,    -1, 10435, 10437,    -1,    -1, 10438,    -1,
+  /* 0x9700 */
+     -1, 10440,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1, 10441, 10442,    -1,    -1,    -1,    -1,    -1,
+     -1, 10445,    -1,    -1,    -1,    -1,    -1, 10446,
+     -1,    -1, 10447, 10450,    -1,    -1,    -1,    -1,
+     -1, 10453, 10454,    -1,    -1,    -1,    -1, 10455,
+     -1,    -1,    -1,    -1,    -1, 10458,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+  10459,    -1,    -1, 10460,    -1, 10464,    -1,    -1,
+     -1, 10465, 10466,    -1, 10467,    -1, 10468,    -1,
+  10469, 10472, 10473,    -1,    -1, 10477, 10484, 10491,
+     -1, 10498, 10500, 10502, 10503,    -1,    -1,    -1,
+     -1, 10506, 10507,    -1, 10508, 10509,    -1,    -1,
+     -1,    -1, 10512, 10518, 10519, 10521,    -1, 10522,
+  10523,    -1,    -1, 10524,    -1, 10526,    -1,    -1,
+     -1, 10529,    -1,    -1, 10532,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1, 10533,    -1,    -1,
+  10534,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1, 10536,    -1, 10538, 10539, 10540,    -1, 10541,
+     -1, 10542, 10543,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1, 10544,
+     -1,    -1,    -1,    -1,    -1,    -1, 10545, 10547,
+  10549,    -1,    -1,    -1,    -1,    -1,    -1, 10550,
+     -1, 10551, 10553,    -1,    -1, 10554,    -1,    -1,
+     -1, 10555,    -1,    -1,    -1, 10556, 10557,    -1,
+     -1, 10558,    -1, 10560,    -1,    -1, 10561,    -1,
+  10562, 10564,    -1, 10565, 10566, 10567,    -1,    -1,
+     -1,    -1,    -1, 10569,    -1,    -1,    -1,    -1,
+     -1, 10570,    -1,    -1, 10571, 10574, 10575,    -1,
+     -1,    -1,    -1,    -1, 10576,    -1, 10578, 10579,
+  10582, 10584, 10585, 10586, 10587, 10589, 10590, 10591,
+     -1, 10592, 10593,    -1,    -1, 10595,    -1,    -1,
+     -1,    -1,    -1, 10596,    -1,    -1,    -1, 10597,
+  /* 0x9800 */
+     -1, 10598, 10599, 10600,    -1, 10601, 10602, 10603,
+  10604,    -1, 10605,    -1, 10606,    -1, 10607, 10608,
+  10609, 10610, 10611, 10612,    -1,    -1,    -1, 10613,
+  10614,    -1, 10615,    -1, 10617,    -1,    -1,    -1,
+     -1, 10618,    -1,    -1, 10619, 10621, 10623,    -1,
+     -1,    -1,    -1,    -1, 10624, 10626, 10627,    -1,
+  10629,    -1, 10631,    -1, 10632,    -1,    -1, 10634,
+  10635, 10637, 10641, 10645, 10646, 10648, 10652,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1, 10653,    -1,
+     -1,    -1,    -1, 10654, 10655, 10656, 10657, 10658,
+     -1,    -1, 10660, 10661, 10662, 10664, 10666,    -1,
+  10667, 10668, 10669, 10671,    -1,    -1, 10673,    -1,
+     -1,    -1, 10674,    -1,    -1, 10675,    -1, 10676,
+     -1,    -1,    -1, 10677, 10678,    -1,    -1, 10679,
+  10681, 10682,    -1, 10685, 10686, 10687, 10688, 10689,
+  10690, 10691, 10692, 10693, 10695, 10696, 10697, 10698,
+  10699, 10700, 10701, 10702, 10703, 10704, 10706, 10707,
+  10708, 10710, 10711, 10713, 10714, 10715, 10716, 10717,
+  10718, 10720, 10721, 10722, 10726,    -1, 10727, 10729,
+  10730, 10731, 10732, 10733, 10734, 10736, 10737, 10738,
+  10739, 10741, 10742, 10743, 10744, 10745, 10746, 10747,
+  10748,    -1,    -1,    -1,    -1, 10756, 10757, 10761,
+     -1, 10762,    -1, 10763,    -1,    -1, 10764, 10765,
+  10768,    -1, 10769, 10770, 10771,    -1,    -1,    -1,
+  10772,    -1,    -1, 10773, 10775,    -1, 10777, 10782,
+  10783,    -1,    -1,    -1, 10787,    -1, 10792, 10798,
+  10799, 10800, 10801, 10802, 10803, 10804, 10805, 10806,
+  10807, 10809, 10810, 10811, 10812,    -1, 10813, 10814,
+  10817, 10820, 10821, 10822,    -1, 10823,    -1,    -1,
+  10824, 10825, 10826, 10827, 10829, 10830, 10831, 10833,
+  10835,    -1, 10836,    -1, 10838,    -1, 10839,    -1,
+     -1,    -1,    -1,    -1, 10840, 10841, 10842, 10843,
+  /* 0x9900 */
+     -1,    -1,    -1, 10844, 10845, 10846,    -1,    -1,
+     -1, 10848, 10851,    -1, 10854, 10855, 10856, 10857,
+  10858, 10859, 10860, 10862,    -1, 10863, 10864,    -1,
+  10865,    -1, 10867, 10868, 10869,    -1, 10870, 10871,
+  10872, 10874,    -1,    -1,    -1,    -1,    -1, 10875,
+  10879,    -1,    -1,    -1, 10881,    -1,    -1,    -1,
+     -1, 10882,    -1, 10883, 10884, 10885, 10887, 10888,
+     -1, 10889, 10890, 10891, 10892, 10893, 10894, 10895,
+     -1, 10896,    -1, 10897,    -1, 10898,    -1,    -1,
+  10899, 10900, 10901, 10902, 10903, 10904, 10905,    -1,
+     -1, 10906, 10907,    -1,    -1,    -1,    -1, 10908,
+     -1, 10909,    -1,    -1, 10910,    -1, 10911, 10912,
+     -1,    -1, 10915, 10916, 10919, 10920, 10922, 10923,
+  10925, 10926, 10927, 10928, 10929, 10930, 10931, 10933,
+  10934, 10935, 10936, 10937, 10938, 10939, 10940, 10941,
+  10943, 10944, 10945, 10946, 10947, 10949, 10950, 10951,
+  10952, 10954, 10956, 10957, 10958, 10959, 10960, 10961,
+  10962, 10964, 10965, 10966, 10967, 10968, 10969, 10970,
+  10971, 10972, 10973, 10974, 10975, 10976,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1, 10977, 10978, 10979,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1, 10980, 10981, 10982,    -1,
+     -1, 10983, 10985, 10986, 10987,    -1,    -1,    -1,
+     -1, 10988,    -1,    -1,    -1, 10989,    -1, 10990,
+     -1, 10992,    -1,    -1, 10993, 10995, 10997,    -1,
+  11001,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+  11005, 11006, 11007,    -1, 11008, 11009,    -1,    -1,
+  11010, 11011,    -1, 11012,    -1, 11013, 11015, 11017,
+     -1, 11018, 11021,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1, 11022, 11023,    -1,
+  11024, 11025,    -1,    -1,    -1, 11026,    -1,    -1,
+  11028,    -1,    -1,    -1,    -1,    -1,    -1, 11029,
+  /* 0x9a00 */
+     -1, 11030, 11031,    -1,    -1, 11032,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1, 11033, 11034, 11035,
+  11036,    -1, 11039, 11041,    -1,    -1, 11044,    -1,
+     -1, 11045,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1, 11046,    -1,    -1,    -1,
+  11047,    -1,    -1, 11048,    -1, 11049, 11050,    -1,
+  11053,    -1,    -1,    -1,    -1,    -1, 11054, 11055,
+  11057,    -1, 11058,    -1,    -1,    -1, 11059,    -1,
+  11060, 11061, 11062, 11063, 11064, 11065,    -1, 11069,
+     -1,    -1, 11070,    -1, 11071, 11072,    -1, 11073,
+     -1, 11074, 11077,    -1,    -1, 11078,    -1, 11079,
+     -1,    -1, 11082, 11083,    -1, 11085,    -1, 11086,
+     -1,    -1, 11087,    -1, 11089, 11090, 11092,    -1,
+     -1, 11093, 11094, 11095, 11096, 11097, 11098, 11100,
+  11101, 11102, 11106, 11107, 11109, 11111, 11112, 11113,
+  11114, 11115, 11116, 11117, 11118, 11120, 11121, 11122,
+  11124, 11125, 11126, 11129, 11130, 11131, 11132, 11133,
+  11134, 11135, 11136, 11137, 11138, 11141, 11142, 11143,
+  11144, 11145, 11146, 11147,    -1, 11148, 11149, 11150,
+  11151, 11153, 11154, 11156, 11157, 11158, 11160, 11161,
+  11162, 11163, 11164, 11165, 11166, 11167, 11169, 11170,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1, 11171,
+     -1,    -1,    -1,    -1,    -1, 11172,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1, 11176,    -1,
+     -1,    -1,    -1,    -1, 11177, 11179,    -1,    -1,
+  11180,    -1,    -1, 11181, 11182,    -1,    -1, 11183,
+     -1,    -1, 11184, 11185, 11187, 11191, 11193, 11194,
+  11197, 11198,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1, 11199, 11201, 11202,    -1,    -1,
+     -1, 11203, 11205,    -1,    -1, 11207, 11208, 11210,
+     -1,    -1,    -1,    -1, 11211,    -1,    -1,    -1,
+     -1, 11213,    -1,    -1,    -1,    -1,    -1,    -1,
+  /* 0x9b00 */
+  11214,    -1, 11215,    -1,    -1,    -1, 11218,    -1,
+     -1,    -1,    -1,    -1,    -1, 11219,    -1,    -1,
+     -1,    -1,    -1, 11220,    -1,    -1,    -1,    -1,
+     -1,    -1, 11222, 11223,    -1,    -1,    -1,    -1,
+     -1,    -1, 11224, 11227,    -1, 11228, 11233, 11238,
+  11240, 11241, 11242, 11247,    -1, 11248, 11253,    -1,
+  11254, 11257,    -1,    -1,    -1,    -1, 11260,    -1,
+     -1, 11261,    -1, 11262,    -1,    -1,    -1,    -1,
+  11264,    -1,    -1,    -1,    -1,    -1,    -1, 11265,
+     -1, 11266,    -1,    -1,    -1,    -1, 11267,    -1,
+  11269,    -1,    -1,    -1,    -1,    -1,    -1, 11274,
+  11276,    -1, 11277, 11278,    -1,    -1,    -1,    -1,
+     -1,    -1, 11279, 11280,    -1,    -1, 11281,    -1,
+  11282,    -1,    -1,    -1,    -1, 11283,    -1, 11284,
+     -1,    -1, 11285, 11287, 11288,    -1,    -1, 11289,
+     -1,    -1, 11290,    -1,    -1,    -1,    -1,    -1,
+     -1, 11291,    -1, 11292,    -1,    -1,    -1,    -1,
+     -1, 11293, 11295, 11296,    -1, 11297, 11298, 11299,
+  11300, 11301, 11302, 11303,    -1,    -1,    -1,    -1,
+     -1,    -1, 11304,    -1, 11305, 11306, 11309,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1, 11310, 11311,
+     -1,    -1, 11313, 11314,    -1, 11315, 11316,    -1,
+     -1,    -1,    -1, 11321,    -1,    -1, 11322, 11323,
+     -1,    -1, 11325, 11326,    -1,    -1, 11327,    -1,
+  11328, 11329,    -1,    -1,    -1,    -1,    -1, 11330,
+     -1, 11332, 11333, 11335,    -1,    -1,    -1,    -1,
+     -1,    -1, 11336,    -1, 11337, 11338, 11339, 11340,
+  11342,    -1,    -1, 11343,    -1, 11345,    -1,    -1,
+     -1, 11346, 11347,    -1, 11348,    -1,    -1, 11349,
+  11350,    -1, 11351, 11352,    -1,    -1,    -1,    -1,
+  11353,    -1,    -1,    -1, 11354, 11355,    -1, 11356,
+     -1, 11359,    -1,    -1,    -1, 11360,    -1, 11361,
+  /* 0x9c00 */
+  11362, 11364, 11365, 11366,    -1,    -1,    -1,    -1,
+  11367, 11369,    -1,    -1, 11370, 11372,    -1, 11374,
+  11375,    -1, 11377, 11378,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1, 11379, 11381,    -1,    -1, 11382,
+  11383,    -1,    -1, 11384, 11385, 11386,    -1,    -1,
+  11388, 11390,    -1,    -1,    -1, 11391, 11392,    -1,
+     -1, 11393, 11394, 11396,    -1, 11397,    -1, 11398,
+     -1, 11399, 11400, 11402, 11403,    -1, 11404,    -1,
+     -1,    -1, 11405,    -1,    -1, 11406,    -1,    -1,
+  11407, 11408,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1, 11411, 11412, 11413,    -1, 11414, 11415,
+  11416,    -1,    -1,    -1,    -1, 11417, 11418, 11419,
+  11420,    -1,    -1, 11421, 11422,    -1,    -1, 11423,
+  11424,    -1,    -1,    -1,    -1, 11425, 11426, 11427,
+     -1,    -1,    -1,    -1,    -1,    -1, 11428, 11431,
+  11433,    -1, 11435, 11436, 11441, 11442, 11443, 11444,
+  11445, 11446, 11447,    -1, 11448, 11449, 11450, 11451,
+  11452, 11454, 11455, 11456, 11457, 11458, 11460, 11461,
+  11462, 11463, 11464, 11465, 11466, 11467, 11468, 11469,
+  11470, 11471, 11472, 11473, 11474, 11479, 11480, 11482,
+  11483, 11485, 11486, 11487, 11488, 11489, 11490, 11491,
+  11492, 11493, 11495, 11496, 11497, 11498, 11499, 11500,
+  11501, 11502, 11503, 11504, 11505, 11506, 11507, 11508,
+  11510, 11511, 11512, 11513, 11514, 11515, 11516, 11517,
+  11518, 11519, 11520, 11521, 11522, 11524, 11526, 11527,
+  11528, 11529, 11530, 11531, 11532, 11534, 11535, 11536,
+  11537, 11538, 11539, 11540, 11541, 11542, 11544, 11546,
+  11547, 11548,    -1, 11549, 11550, 11551, 11553, 11554,
+  11555, 11556, 11557, 11558,    -1, 11559,    -1, 11561,
+     -1, 11563,    -1, 11564, 11566,    -1,    -1,    -1,
+     -1,    -1, 11567, 11568, 11569,    -1, 11570,    -1,
+  11571,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+  /* 0x9d00 */
+     -1,    -1,    -1,    -1,    -1,    -1, 11572, 11573,
+  11574, 11576,    -1,    -1,    -1,    -1, 11578,    -1,
+     -1,    -1, 11580,    -1,    -1, 11581,    -1,    -1,
+     -1,    -1,    -1, 11582,    -1, 11583, 11585, 11586,
+     -1,    -1,    -1, 11588,    -1,    -1, 11589,    -1,
+  11590,    -1,    -1,    -1, 11591,    -1,    -1, 11593,
+  11594,    -1,    -1, 11595, 11596,    -1,    -1,    -1,
+     -1,    -1,    -1, 11597, 11598,    -1,    -1, 11599,
+     -1,    -1, 11600, 11601, 11602,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+  11603, 11604, 11605, 11606,    -1,    -1,    -1,    -1,
+     -1, 11607,    -1,    -1, 11608, 11609, 11611,    -1,
+  11613, 11614,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1, 11615,    -1, 11616,    -1, 11617, 11618,
+  11619,    -1, 11620,    -1,    -1,    -1, 11621, 11623,
+     -1,    -1,    -1,    -1,    -1,    -1, 11624,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1, 11626,
+     -1, 11628, 11629,    -1,    -1,    -1,    -1, 11630,
+     -1,    -1,    -1, 11633,    -1,    -1, 11634,    -1,
+  11635,    -1, 11636,    -1,    -1,    -1,    -1,    -1,
+     -1, 11637,    -1,    -1, 11638, 11639,    -1,    -1,
+     -1, 11640, 11641, 11642, 11644,    -1,    -1, 11645,
+     -1,    -1, 11647,    -1, 11648, 11655,    -1,    -1,
+     -1, 11656, 11657, 11658, 11659,    -1,    -1, 11660,
+  11661, 11662, 11663, 11664, 11665,    -1, 11668,    -1,
+  11669, 11670, 11671,    -1,    -1,    -1,    -1, 11672,
+     -1,    -1,    -1, 11673,    -1,    -1, 11674, 11675,
+     -1, 11677, 11678,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1, 11679, 11680,    -1,
+     -1,    -1,    -1, 11681,    -1,    -1,    -1, 11682,
+  11683,    -1, 11684, 11685, 11687,    -1,    -1,    -1,
+  11689, 11690, 11691,    -1,    -1, 11693,    -1, 11694,
+  /* 0x9e00 */
+     -1,    -1,    -1,    -1,    -1,    -1,    -1, 11695,
+     -1,    -1, 11696,    -1, 11697,    -1, 11698, 11699,
+     -1,    -1,    -1,    -1,    -1, 11700, 11703,    -1,
+  11710,    -1, 11711, 11712, 11714, 11715, 11716, 11717,
+  11719, 11720, 11723, 11724, 11725, 11726, 11728, 11730,
+  11731, 11732, 11733, 11734, 11736, 11737, 11738, 11739,
+  11740, 11741, 11742, 11743, 11744, 11745, 11746, 11747,
+  11748, 11749, 11750, 11751, 11752, 11753, 11754, 11755,
+  11756, 11757, 11758, 11759, 11760, 11761, 11763, 11764,
+  11766, 11767, 11768, 11769, 11770, 11771, 11772, 11773,
+  11774, 11775, 11776, 11777, 11778, 11779, 11780, 11781,
+  11782, 11783, 11784, 11786, 11787, 11788, 11789, 11790,
+  11791, 11792, 11793, 11794, 11795, 11802, 11803, 11804,
+  11805, 11806, 11807, 11808, 11809, 11810,    -1, 11811,
+  11812, 11813, 11814, 11815, 11816, 11817,    -1,    -1,
+  11819, 11822, 11824, 11825, 11826, 11829, 11831,    -1,
+     -1,    -1,    -1, 11832, 11833, 11834,    -1, 11835,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1, 11836,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1, 11837,
+     -1,    -1,    -1,    -1,    -1,    -1, 11839,    -1,
+     -1,    -1,    -1,    -1, 11840, 11842, 11843,    -1,
+     -1, 11844, 11846, 11851, 11856, 11858,    -1, 11859,
+     -1,    -1,    -1,    -1, 11863, 11867,    -1,    -1,
+  11872, 11874, 11878, 11883, 11886, 11890,    -1,    -1,
+     -1,    -1,    -1, 11894, 11895,    -1,    -1,    -1,
+     -1, 11897,    -1,    -1, 11898,    -1,    -1, 11899,
+     -1, 11900, 11901,    -1,    -1,    -1,    -1,    -1,
+  11902, 11903,    -1, 11904,    -1,    -1, 11905,    -1,
+     -1, 11907,    -1,    -1, 11908,    -1,    -1,    -1,
+  11909, 11910, 11911,    -1,    -1, 11912,    -1,    -1,
+     -1, 11913, 11914,    -1, 11915,    -1, 11916, 11917,
+     -1, 11918,    -1,    -1,    -1, 11919, 11920, 11921,
+  /* 0x9f00 */
+     -1,    -1, 11923, 11924,    -1,    -1,    -1, 11925,
+  11927, 11930,    -1, 11931, 11932, 11933, 11934,    -1,
+     -1, 11935, 11936, 11937,    -1, 11939,    -1, 11940,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+  11942, 11943,    -1,    -1,    -1,    -1, 11944,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1, 11945,    -1,    -1,    -1,
+     -1, 11946,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1, 11947,    -1,    -1,
+     -1,    -1, 11948, 11952,    -1,    -1, 11954, 11956,
+  11958, 11962, 11964, 11966, 11967, 11969,    -1, 11970,
+     -1, 11971, 11972,    -1, 11973,    -1,    -1, 11974,
+  11975, 11976, 11978, 11980,    -1,    -1, 11981, 11982,
+     -1, 11985, 11986,    -1, 11988,    -1,    -1,    -1,
+  11989, 11990, 11991,    -1,    -1,    -1, 11992, 11993,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1, 11994,
+  11996, 11997, 11998, 11999, 12000, 12002, 12003, 12004,
+  12005, 12006, 12007, 12008, 12009, 12010, 12013,    -1,
+  12014,    -1, 12015,    -1, 12018, 12019,    -1,    -1,
+     -1, 12020, 12022, 12023, 12024, 12026, 12029, 12031,
+     -1,    -1, 12033,    -1,    -1, 12036,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+};
+
diff --git a/graf2d/win32gdk/gdk/src/iconv/cns11643.h b/graf2d/win32gdk/gdk/src/iconv/cns11643.h
new file mode 100644
index 00000000000..5b166412545
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cns11643.h
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CNS 11643-1992
+ */
+
+/* ISO-2022-CN and EUC-TW use CNS 11643-1992 planes 1 to 7. We also
+ * have a table for the older plane 15. We use a trick to keep the
+ * Unicode -> CNS 11643 table as small as possible (see cns11643_inv.h).
+ */
+
+#include "cns11643_1.h"
+#include "cns11643_2.h"
+#include "cns11643_3.h"
+#include "cns11643_4.h"
+#include "cns11643_5.h"
+#include "cns11643_6.h"
+#include "cns11643_7.h"
+#include "cns11643_15.h"
+#include "cns11643_inv.h"
+
+/* Returns the plane number (1,...,7,15) in r[0], the two bytes in r[1],r[2]. */
+#define cns11643_wctomb cns11643_inv_wctomb
diff --git a/graf2d/win32gdk/gdk/src/iconv/cns11643_1.h b/graf2d/win32gdk/gdk/src/iconv/cns11643_1.h
new file mode 100644
index 00000000000..24abb5ccbd4
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cns11643_1.h
@@ -0,0 +1,893 @@
+/*
+ * Copyright (C) 1999-2005 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CNS 11643-1992 plane 1
+ */
+
+static const unsigned short cns11643_1_2uni_page21[500] = {
+  /* 0x21 */
+  0x3000, 0xff0c, 0x3001, 0x3002, 0xff0e, 0x30fb, 0xff1b, 0xff1a,
+  0xff1f, 0xff01, 0xfe30, 0x2026, 0x2025, 0xfe50, 0xfe51, 0xfe52,
+  0x00b7, 0xfe54, 0xfe55, 0xfe56, 0xfe57, 0xfe31, 0x2014, 0xfe32,
+  0x2013, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xff08, 0xff09, 0xfe35,
+  0xfe36, 0xff5b, 0xff5d, 0xfe37, 0xfe38, 0x3014, 0x3015, 0xfe39,
+  0xfe3a, 0x3010, 0x3011, 0xfe3b, 0xfe3c, 0x300a, 0x300b, 0xfe3d,
+  0xfe3e, 0x3008, 0x3009, 0xfe3f, 0xfe40, 0x300c, 0x300d, 0xfe41,
+  0xfe42, 0x300e, 0x300f, 0xfe43, 0xfe44, 0xfe59, 0xfe5a, 0xfe5b,
+  0xfe5c, 0xfe5d, 0xfe5e, 0x2018, 0x2019, 0x201c, 0x201d, 0x301d,
+  0x301e, 0x2032, 0x2035, 0xff03, 0xff06, 0xff0a, 0x203b, 0x00a7,
+  0x3003, 0x25cb, 0x25cf, 0x25b3, 0x25b2, 0x25ce, 0x2606, 0x2605,
+  0x25c7, 0x25c6, 0x25a1, 0x25a0, 0x25bd, 0x25bc,
+  /* 0x22 */
+  0x32a3, 0x2105, 0x203e, 0xfffd, 0xff3f, 0xfffd, 0xfe49, 0xfe4a,
+  0xfe4d, 0xfe4e, 0xfe4b, 0xfe4c, 0xfe5f, 0xfe60, 0xfe61, 0xff0b,
+  0xff0d, 0x00d7, 0x00f7, 0x00b1, 0x221a, 0xff1c, 0xff1e, 0xff1d,
+  0x2266, 0x2267, 0x2260, 0x221e, 0x2252, 0x2261, 0xfe62, 0xfe63,
+  0xfe64, 0xfe66, 0xfe65, 0x223c, 0x2229, 0x222a, 0x22a5, 0x2220,
+  0x221f, 0x22bf, 0x33d2, 0x33d1, 0x222b, 0x222e, 0x2235, 0x2234,
+  0x2640, 0x2642, 0x2641, 0x2609, 0x2191, 0x2193, 0x2192, 0x2190,
+  0x2196, 0x2197, 0x2199, 0x2198, 0x2016, 0xff5c, 0xff0f, 0xff3c,
+  0x2215, 0xfe68, 0xff04, 0xffe5, 0x3012, 0xffe0, 0xffe1, 0xff05,
+  0xff20, 0x2103, 0x2109, 0xfe69, 0xfe6a, 0xfe6b, 0x33d5, 0x339c,
+  0x339d, 0x339e, 0x33ce, 0x33a1, 0x338e, 0x338f, 0x33c4, 0x00b0,
+  0x5159, 0x515b, 0x515e, 0x515d, 0x5161, 0x5163,
+  /* 0x23 */
+  0x55e7, 0x74e9, 0x7cce, 0x2581, 0x2582, 0x2583, 0x2584, 0x2585,
+  0x2586, 0x2587, 0x2588, 0x258f, 0x258e, 0x258d, 0x258c, 0x258b,
+  0x258a, 0x2589, 0x253c, 0x2534, 0x252c, 0x2524, 0x251c, 0x2594,
+  0x2500, 0x2502, 0x2595, 0x250c, 0x2510, 0x2514, 0x2518, 0x256d,
+  0x256e, 0x2570, 0x256f, 0x2550, 0x255e, 0x256a, 0x2561, 0x25e2,
+  0x25e3, 0x25e5, 0x25e4, 0x2571, 0x2572, 0x2573, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x24 */
+  0xff10, 0xff11, 0xff12, 0xff13, 0xff14, 0xff15, 0xff16, 0xff17,
+  0xff18, 0xff19, 0x2160, 0x2161, 0x2162, 0x2163, 0x2164, 0x2165,
+  0x2166, 0x2167, 0x2168, 0x2169, 0x3021, 0x3022, 0x3023, 0x3024,
+  0x3025, 0x3026, 0x3027, 0x3028, 0x3029, 0xfffd, 0x5344, 0xfffd,
+  0xff21, 0xff22, 0xff23, 0xff24, 0xff25, 0xff26, 0xff27, 0xff28,
+  0xff29, 0xff2a, 0xff2b, 0xff2c, 0xff2d, 0xff2e, 0xff2f, 0xff30,
+  0xff31, 0xff32, 0xff33, 0xff34, 0xff35, 0xff36, 0xff37, 0xff38,
+  0xff39, 0xff3a, 0xff41, 0xff42, 0xff43, 0xff44, 0xff45, 0xff46,
+  0xff47, 0xff48, 0xff49, 0xff4a, 0xff4b, 0xff4c, 0xff4d, 0xff4e,
+  0xff4f, 0xff50, 0xff51, 0xff52, 0xff53, 0xff54, 0xff55, 0xff56,
+  0xff57, 0xff58, 0xff59, 0xff5a, 0x0391, 0x0392, 0x0393, 0x0394,
+  0x0395, 0x0396, 0x0397, 0x0398, 0x0399, 0x039a,
+  /* 0x25 */
+  0x039b, 0x039c, 0x039d, 0x039e, 0x039f, 0x03a0, 0x03a1, 0x03a3,
+  0x03a4, 0x03a5, 0x03a6, 0x03a7, 0x03a8, 0x03a9, 0x03b1, 0x03b2,
+  0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7, 0x03b8, 0x03b9, 0x03ba,
+  0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf, 0x03c0, 0x03c1, 0x03c3,
+  0x03c4, 0x03c5, 0x03c6, 0x03c7, 0x03c8, 0x03c9, 0x3105, 0x3106,
+  0x3107, 0x3108, 0x3109, 0x310a, 0x310b, 0x310c, 0x310d, 0x310e,
+  0x310f, 0x3110, 0x3111, 0x3112, 0x3113, 0x3114, 0x3115, 0x3116,
+  0x3117, 0x3118, 0x3119, 0x311a, 0x311b, 0x311c, 0x311d, 0x311e,
+  0x311f, 0x3120, 0x3121, 0x3122, 0x3123, 0x3124, 0x3125, 0x3126,
+  0x3127, 0x3128, 0x3129, 0x02d9, 0x02c9, 0x02ca, 0x02c7, 0x02cb,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x26 */
+  0x2460, 0x2461, 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, 0x2467,
+  0x2468, 0x2469, 0x2474, 0x2475, 0x2476, 0x2477, 0x2478, 0x2479,
+  0x247a, 0x247b, 0x247c, 0x247d, 0x2170, 0x2171, 0x2172, 0x2173,
+  0x2174, 0x2175, 0x2176, 0x2177, 0x2178, 0x2179,
+};
+static const unsigned short cns11643_1_2uni_page42[34] = {
+  /* 0x42 */
+  0x2400, 0x2401, 0x2402, 0x2403, 0x2404, 0x2405, 0x2406, 0x2407,
+  0x2408, 0x2409, 0x240a, 0x240b, 0x240c, 0x240d, 0x240e, 0x240f,
+  0x2410, 0x2411, 0x2412, 0x2413, 0x2414, 0x2415, 0x2416, 0x2417,
+  0x2418, 0x2419, 0x241a, 0x241b, 0x241c, 0x241d, 0x241e, 0x241f,
+  0x2421, 0x20ac,
+};
+static const unsigned short cns11643_1_2uni_page44[5401] = {
+  /* 0x44 */
+  0x4e00, 0x4e59, 0x4e01, 0x4e03, 0x4e43, 0x4e5d, 0x4e86, 0x4e8c,
+  0x4eba, 0x513f, 0x5165, 0x516b, 0x51e0, 0x5200, 0x5201, 0x529b,
+  0x5315, 0x5341, 0x535c, 0x53c8, 0x4e09, 0x4e0b, 0x4e08, 0x4e0a,
+  0x4e2b, 0x4e38, 0x51e1, 0x4e45, 0x4e48, 0x4e5f, 0x4e5e, 0x4e8e,
+  0x4ea1, 0x5140, 0x5203, 0x52fa, 0x5343, 0x53c9, 0x53e3, 0x571f,
+  0x58eb, 0x5915, 0x5927, 0x5973, 0x5b50, 0x5b51, 0x5b53, 0x5bf8,
+  0x5c0f, 0x5c22, 0x5c38, 0x5c71, 0x5ddd, 0x5de5, 0x5df1, 0x5df2,
+  0x5df3, 0x5dfe, 0x5e72, 0x5efe, 0x5f0b, 0x5f13, 0x624d, 0x4e11,
+  0x4e10, 0x4e0d, 0x4e2d, 0x4e30, 0x4e39, 0x4e4b, 0x5c39, 0x4e88,
+  0x4e91, 0x4e95, 0x4e92, 0x4e94, 0x4ea2, 0x4ec1, 0x4ec0, 0x4ec3,
+  0x4ec6, 0x4ec7, 0x4ecd, 0x4eca, 0x4ecb, 0x4ec4, 0x5143, 0x5141,
+  0x5167, 0x516d, 0x516e, 0x516c, 0x5197, 0x51f6,
+  /* 0x45 */
+  0x5206, 0x5207, 0x5208, 0x52fb, 0x52fe, 0x52ff, 0x5316, 0x5339,
+  0x5348, 0x5347, 0x5345, 0x535e, 0x5384, 0x53cb, 0x53ca, 0x53cd,
+  0x58ec, 0x5929, 0x592b, 0x592a, 0x592d, 0x5b54, 0x5c11, 0x5c24,
+  0x5c3a, 0x5c6f, 0x5df4, 0x5e7b, 0x5eff, 0x5f14, 0x5f15, 0x5fc3,
+  0x6208, 0x6236, 0x624b, 0x624e, 0x652f, 0x6587, 0x6597, 0x65a4,
+  0x65b9, 0x65e5, 0x66f0, 0x6708, 0x6728, 0x6b20, 0x6b62, 0x6b79,
+  0x6bcb, 0x6bd4, 0x6bdb, 0x6c0f, 0x6c34, 0x706b, 0x722a, 0x7236,
+  0x723b, 0x7247, 0x7259, 0x725b, 0x72ac, 0x738b, 0x4e19, 0x4e16,
+  0x4e15, 0x4e14, 0x4e18, 0x4e3b, 0x4e4d, 0x4e4f, 0x4e4e, 0x4ee5,
+  0x4ed8, 0x4ed4, 0x4ed5, 0x4ed6, 0x4ed7, 0x4ee3, 0x4ee4, 0x4ed9,
+  0x4ede, 0x5145, 0x5144, 0x5189, 0x518a, 0x51ac, 0x51f9, 0x51fa,
+  0x51f8, 0x520a, 0x52a0, 0x529f, 0x5305, 0x5306,
+  /* 0x46 */
+  0x5317, 0x531d, 0x4edf, 0x534a, 0x5349, 0x5361, 0x5360, 0x536f,
+  0x536e, 0x53bb, 0x53ef, 0x53e4, 0x53f3, 0x53ec, 0x53ee, 0x53e9,
+  0x53e8, 0x53fc, 0x53f8, 0x53f5, 0x53eb, 0x53e6, 0x53ea, 0x53f2,
+  0x53f1, 0x53f0, 0x53e5, 0x53ed, 0x53fb, 0x56db, 0x56da, 0x5916,
+  0x592e, 0x5931, 0x5974, 0x5976, 0x5b55, 0x5b83, 0x5c3c, 0x5de8,
+  0x5de7, 0x5de6, 0x5e02, 0x5e03, 0x5e73, 0x5e7c, 0x5f01, 0x5f18,
+  0x5f17, 0x5fc5, 0x620a, 0x6253, 0x6254, 0x6252, 0x6251, 0x65a5,
+  0x65e6, 0x672e, 0x672c, 0x672a, 0x672b, 0x672d, 0x6b63, 0x6bcd,
+  0x6c11, 0x6c10, 0x6c38, 0x6c41, 0x6c40, 0x6c3e, 0x72af, 0x7384,
+  0x7389, 0x74dc, 0x74e6, 0x7518, 0x751f, 0x7528, 0x7529, 0x7530,
+  0x7531, 0x7532, 0x7533, 0x758b, 0x767d, 0x76ae, 0x76bf, 0x76ee,
+  0x77db, 0x77e2, 0x77f3, 0x793a, 0x79be, 0x7a74,
+  /* 0x47 */
+  0x7acb, 0x4e1e, 0x4e1f, 0x4e52, 0x4e53, 0x4e69, 0x4e99, 0x4ea4,
+  0x4ea6, 0x4ea5, 0x4eff, 0x4f09, 0x4f19, 0x4f0a, 0x4f15, 0x4f0d,
+  0x4f10, 0x4f11, 0x4f0f, 0x4ef2, 0x4ef6, 0x4efb, 0x4ef0, 0x4ef3,
+  0x4efd, 0x4f01, 0x4f0b, 0x5149, 0x5147, 0x5146, 0x5148, 0x5168,
+  0x5171, 0x518d, 0x51b0, 0x5217, 0x5211, 0x5212, 0x520e, 0x5216,
+  0x52a3, 0x5308, 0x5321, 0x5320, 0x5370, 0x5371, 0x5409, 0x540f,
+  0x540c, 0x540a, 0x5410, 0x5401, 0x540b, 0x5404, 0x5411, 0x540d,
+  0x5408, 0x5403, 0x540e, 0x5406, 0x5412, 0x56e0, 0x56de, 0x56dd,
+  0x5733, 0x5730, 0x5728, 0x572d, 0x572c, 0x572f, 0x5729, 0x5919,
+  0x591a, 0x5937, 0x5938, 0x5984, 0x5978, 0x5983, 0x597d, 0x5979,
+  0x5982, 0x5981, 0x5b57, 0x5b58, 0x5b87, 0x5b88, 0x5b85, 0x5b89,
+  0x5bfa, 0x5c16, 0x5c79, 0x5dde, 0x5e06, 0x5e76,
+  /* 0x48 */
+  0x5e74, 0x5f0f, 0x5f1b, 0x5fd9, 0x5fd6, 0x620e, 0x620c, 0x620d,
+  0x6210, 0x6263, 0x625b, 0x6258, 0x6536, 0x65e9, 0x65e8, 0x65ec,
+  0x65ed, 0x66f2, 0x66f3, 0x6709, 0x673d, 0x6734, 0x6731, 0x6735,
+  0x6b21, 0x6b64, 0x6b7b, 0x6c16, 0x6c5d, 0x6c57, 0x6c59, 0x6c5f,
+  0x6c60, 0x6c50, 0x6c55, 0x6c61, 0x6c5b, 0x6c4d, 0x6c4e, 0x7070,
+  0x725f, 0x725d, 0x767e, 0x7af9, 0x7c73, 0x7cf8, 0x7f36, 0x7f8a,
+  0x7fbd, 0x8001, 0x8003, 0x800c, 0x8012, 0x8033, 0x807f, 0x8089,
+  0x808b, 0x808c, 0x81e3, 0x81ea, 0x81f3, 0x81fc, 0x820c, 0x821b,
+  0x821f, 0x826e, 0x8272, 0x827e, 0x866b, 0x8840, 0x884c, 0x8863,
+  0x897f, 0x9621, 0x4e32, 0x4ea8, 0x4f4d, 0x4f4f, 0x4f47, 0x4f57,
+  0x4f5e, 0x4f34, 0x4f5b, 0x4f55, 0x4f30, 0x4f50, 0x4f51, 0x4f3d,
+  0x4f3a, 0x4f38, 0x4f43, 0x4f54, 0x4f3c, 0x4f46,
+  /* 0x49 */
+  0x4f63, 0x4f5c, 0x4f60, 0x4f2f, 0x4f4e, 0x4f36, 0x4f59, 0x4f5d,
+  0x4f48, 0x4f5a, 0x514c, 0x514b, 0x514d, 0x5175, 0x51b6, 0x51b7,
+  0x5225, 0x5224, 0x5229, 0x522a, 0x5228, 0x52ab, 0x52a9, 0x52aa,
+  0x52ac, 0x5323, 0x5373, 0x5375, 0x541d, 0x542d, 0x541e, 0x543e,
+  0x5426, 0x544e, 0x5427, 0x5446, 0x5443, 0x5433, 0x5448, 0x5442,
+  0x541b, 0x5429, 0x544a, 0x5439, 0x543b, 0x5438, 0x542e, 0x5435,
+  0x5436, 0x5420, 0x543c, 0x5440, 0x5431, 0x542b, 0x541f, 0x542c,
+  0x56ea, 0x56f0, 0x56e4, 0x56eb, 0x574a, 0x5751, 0x5740, 0x574d,
+  0x5747, 0x574e, 0x573e, 0x5750, 0x574f, 0x573b, 0x58ef, 0x593e,
+  0x599d, 0x5992, 0x59a8, 0x599e, 0x59a3, 0x5999, 0x5996, 0x598d,
+  0x59a4, 0x5993, 0x598a, 0x59a5, 0x5b5d, 0x5b5c, 0x5b5a, 0x5b5b,
+  0x5b8c, 0x5b8b, 0x5b8f, 0x5c2c, 0x5c40, 0x5c41,
+  /* 0x4a */
+  0x5c3f, 0x5c3e, 0x5c90, 0x5c91, 0x5c94, 0x5c8c, 0x5deb, 0x5e0c,
+  0x5e8f, 0x5e87, 0x5e8a, 0x5ef7, 0x5f04, 0x5f1f, 0x5f64, 0x5f62,
+  0x5f77, 0x5f79, 0x5fd8, 0x5fcc, 0x5fd7, 0x5fcd, 0x5ff1, 0x5feb,
+  0x5ff8, 0x5fea, 0x6212, 0x6211, 0x6284, 0x6297, 0x6296, 0x6280,
+  0x6276, 0x6289, 0x626d, 0x628a, 0x627c, 0x627e, 0x6279, 0x6273,
+  0x6292, 0x626f, 0x6298, 0x626e, 0x6295, 0x6293, 0x6291, 0x6286,
+  0x6539, 0x653b, 0x6538, 0x65f1, 0x66f4, 0x675f, 0x674e, 0x674f,
+  0x6750, 0x6751, 0x675c, 0x6756, 0x675e, 0x6749, 0x6746, 0x6760,
+  0x6753, 0x6757, 0x6b65, 0x6bcf, 0x6c42, 0x6c5e, 0x6c99, 0x6c81,
+  0x6c88, 0x6c89, 0x6c85, 0x6c9b, 0x6c6a, 0x6c7a, 0x6c90, 0x6c70,
+  0x6c8c, 0x6c68, 0x6c96, 0x6c92, 0x6c7d, 0x6c83, 0x6c72, 0x6c7e,
+  0x6c74, 0x6c86, 0x6c76, 0x6c8d, 0x6c94, 0x6c98,
+  /* 0x4b */
+  0x6c82, 0x7076, 0x707c, 0x707d, 0x7078, 0x7262, 0x7261, 0x7260,
+  0x72c4, 0x72c2, 0x7396, 0x752c, 0x752b, 0x7537, 0x7538, 0x7682,
+  0x76ef, 0x77e3, 0x79c1, 0x79c0, 0x79bf, 0x7a76, 0x7cfb, 0x7f55,
+  0x8096, 0x8093, 0x809d, 0x8098, 0x809b, 0x809a, 0x80b2, 0x826f,
+  0x8292, 0x828b, 0x828d, 0x898b, 0x89d2, 0x8a00, 0x8c37, 0x8c46,
+  0x8c55, 0x8c9d, 0x8d64, 0x8d70, 0x8db3, 0x8eab, 0x8eca, 0x8f9b,
+  0x8fb0, 0x8fc2, 0x8fc6, 0x8fc5, 0x8fc4, 0x5de1, 0x9091, 0x90a2,
+  0x90aa, 0x90a6, 0x90a3, 0x9149, 0x91c6, 0x91cc, 0x9632, 0x962e,
+  0x9631, 0x962a, 0x962c, 0x4e26, 0x4e56, 0x4e73, 0x4e8b, 0x4e9b,
+  0x4e9e, 0x4eab, 0x4eac, 0x4f6f, 0x4f9d, 0x4f8d, 0x4f73, 0x4f7f,
+  0x4f6c, 0x4f9b, 0x4f8b, 0x4f86, 0x4f83, 0x4f70, 0x4f75, 0x4f88,
+  0x4f69, 0x4f7b, 0x4f96, 0x4f7e, 0x4f8f, 0x4f91,
+  /* 0x4c */
+  0x4f7a, 0x5154, 0x5152, 0x5155, 0x5169, 0x5177, 0x5176, 0x5178,
+  0x51bd, 0x51fd, 0x523b, 0x5238, 0x5237, 0x523a, 0x5230, 0x522e,
+  0x5236, 0x5241, 0x52be, 0x52bb, 0x5352, 0x5354, 0x5353, 0x5351,
+  0x5366, 0x5377, 0x5378, 0x5379, 0x53d6, 0x53d4, 0x53d7, 0x5473,
+  0x5475, 0x5496, 0x5478, 0x5495, 0x5480, 0x547b, 0x5477, 0x5484,
+  0x5492, 0x5486, 0x547c, 0x5490, 0x5471, 0x5476, 0x548c, 0x549a,
+  0x5462, 0x5468, 0x548b, 0x547d, 0x548e, 0x56fa, 0x5783, 0x5777,
+  0x576a, 0x5769, 0x5761, 0x5766, 0x5764, 0x577c, 0x591c, 0x5949,
+  0x5947, 0x5948, 0x5944, 0x5954, 0x59be, 0x59bb, 0x59d4, 0x59b9,
+  0x59ae, 0x59d1, 0x59c6, 0x59d0, 0x59cd, 0x59cb, 0x59d3, 0x59ca,
+  0x59af, 0x59b3, 0x59d2, 0x59c5, 0x5b5f, 0x5b64, 0x5b63, 0x5b97,
+  0x5b9a, 0x5b98, 0x5b9c, 0x5b99, 0x5b9b, 0x5c1a,
+  /* 0x4d */
+  0x5c48, 0x5c45, 0x5c46, 0x5cb7, 0x5ca1, 0x5cb8, 0x5ca9, 0x5cab,
+  0x5cb1, 0x5cb3, 0x5e18, 0x5e1a, 0x5e16, 0x5e15, 0x5e1b, 0x5e11,
+  0x5e78, 0x5e9a, 0x5e97, 0x5e9c, 0x5e95, 0x5e96, 0x5ef6, 0x5f26,
+  0x5f27, 0x5f29, 0x5f80, 0x5f81, 0x5f7f, 0x5f7c, 0x5fdd, 0x5fe0,
+  0x5ffd, 0x5ff5, 0x5fff, 0x600f, 0x6014, 0x602f, 0x6035, 0x6016,
+  0x602a, 0x6015, 0x6021, 0x6027, 0x6029, 0x602b, 0x601b, 0x6216,
+  0x6215, 0x623f, 0x623e, 0x6240, 0x627f, 0x62c9, 0x62cc, 0x62c4,
+  0x62bf, 0x62c2, 0x62b9, 0x62d2, 0x62db, 0x62ab, 0x62d3, 0x62d4,
+  0x62cb, 0x62c8, 0x62a8, 0x62bd, 0x62bc, 0x62d0, 0x62d9, 0x62c7,
+  0x62cd, 0x62b5, 0x62da, 0x62b1, 0x62d8, 0x62d6, 0x62d7, 0x62c6,
+  0x62ac, 0x62ce, 0x653e, 0x65a7, 0x65bc, 0x65fa, 0x6614, 0x6613,
+  0x660c, 0x6606, 0x6602, 0x660e, 0x6600, 0x660f,
+  /* 0x4e */
+  0x6615, 0x660a, 0x6607, 0x670d, 0x670b, 0x676d, 0x678b, 0x6795,
+  0x6771, 0x679c, 0x6773, 0x6777, 0x6787, 0x679d, 0x6797, 0x676f,
+  0x6770, 0x677f, 0x6789, 0x677e, 0x6790, 0x6775, 0x679a, 0x6793,
+  0x677c, 0x676a, 0x6772, 0x6b23, 0x6b66, 0x6b67, 0x6b7f, 0x6c13,
+  0x6c1b, 0x6ce3, 0x6ce8, 0x6cf3, 0x6cb1, 0x6ccc, 0x6ce5, 0x6cb3,
+  0x6cbd, 0x6cbe, 0x6cbc, 0x6ce2, 0x6cab, 0x6cd5, 0x6cd3, 0x6cb8,
+  0x6cc4, 0x6cb9, 0x6cc1, 0x6cae, 0x6cd7, 0x6cc5, 0x6cf1, 0x6cbf,
+  0x6cbb, 0x6ce1, 0x6cdb, 0x6cca, 0x6cac, 0x6cef, 0x6cdc, 0x6cd6,
+  0x6ce0, 0x7095, 0x708e, 0x7092, 0x708a, 0x7099, 0x722c, 0x722d,
+  0x7238, 0x7248, 0x7267, 0x7269, 0x72c0, 0x72ce, 0x72d9, 0x72d7,
+  0x72d0, 0x73a9, 0x73a8, 0x739f, 0x73ab, 0x73a5, 0x753d, 0x759d,
+  0x7599, 0x759a, 0x7684, 0x76c2, 0x76f2, 0x76f4,
+  /* 0x4f */
+  0x77e5, 0x77fd, 0x793e, 0x7940, 0x7941, 0x79c9, 0x79c8, 0x7a7a,
+  0x7a79, 0x7afa, 0x7cfe, 0x7f54, 0x7f8c, 0x7f8b, 0x8005, 0x80ba,
+  0x80a5, 0x80a2, 0x80b1, 0x80a1, 0x80ab, 0x80a9, 0x80b4, 0x80aa,
+  0x80af, 0x81e5, 0x81fe, 0x820d, 0x82b3, 0x829d, 0x8299, 0x82ad,
+  0x82bd, 0x829f, 0x82b9, 0x82b1, 0x82ac, 0x82a5, 0x82af, 0x82b8,
+  0x82a3, 0x82b0, 0x82be, 0x82b7, 0x864e, 0x8671, 0x521d, 0x8868,
+  0x8ecb, 0x8fce, 0x8fd4, 0x8fd1, 0x90b5, 0x90b8, 0x90b1, 0x90b6,
+  0x91c7, 0x91d1, 0x9577, 0x9580, 0x961c, 0x9640, 0x963f, 0x963b,
+  0x9644, 0x9642, 0x96b9, 0x96e8, 0x9752, 0x975e, 0x4e9f, 0x4ead,
+  0x4eae, 0x4fe1, 0x4fb5, 0x4faf, 0x4fbf, 0x4fe0, 0x4fd1, 0x4fcf,
+  0x4fdd, 0x4fc3, 0x4fb6, 0x4fd8, 0x4fdf, 0x4fca, 0x4fd7, 0x4fae,
+  0x4fd0, 0x4fc4, 0x4fc2, 0x4fda, 0x4fce, 0x4fde,
+  /* 0x50 */
+  0x4fb7, 0x5157, 0x5192, 0x5191, 0x51a0, 0x524e, 0x5243, 0x524a,
+  0x524d, 0x524c, 0x524b, 0x5247, 0x52c7, 0x52c9, 0x52c3, 0x52c1,
+  0x530d, 0x5357, 0x537b, 0x539a, 0x53db, 0x54ac, 0x54c0, 0x54a8,
+  0x54ce, 0x54c9, 0x54b8, 0x54a6, 0x54b3, 0x54c7, 0x54c2, 0x54bd,
+  0x54aa, 0x54c1, 0x54c4, 0x54c8, 0x54af, 0x54ab, 0x54b1, 0x54bb,
+  0x54a9, 0x54a7, 0x54bf, 0x56ff, 0x5782, 0x578b, 0x57a0, 0x57a3,
+  0x57a2, 0x57ce, 0x57ae, 0x5793, 0x5955, 0x5951, 0x594f, 0x594e,
+  0x5950, 0x59dc, 0x59d8, 0x59ff, 0x59e3, 0x59e8, 0x5a03, 0x59e5,
+  0x59ea, 0x59da, 0x59e6, 0x5a01, 0x59fb, 0x5b69, 0x5ba3, 0x5ba6,
+  0x5ba4, 0x5ba2, 0x5ba5, 0x5c01, 0x5c4e, 0x5c4f, 0x5c4d, 0x5c4b,
+  0x5cd9, 0x5cd2, 0x5df7, 0x5e1d, 0x5e25, 0x5e1f, 0x5e7d, 0x5ea0,
+  0x5ea6, 0x5efa, 0x5f08, 0x5f2d, 0x5f65, 0x5f88,
+  /* 0x51 */
+  0x5f85, 0x5f8a, 0x5f8b, 0x5f87, 0x5f8c, 0x5f89, 0x6012, 0x601d,
+  0x6020, 0x6025, 0x600e, 0x6028, 0x604d, 0x6070, 0x6068, 0x6062,
+  0x6046, 0x6043, 0x606c, 0x606b, 0x606a, 0x6064, 0x6241, 0x62dc,
+  0x6316, 0x6309, 0x62fc, 0x62ed, 0x6301, 0x62ee, 0x62fd, 0x6307,
+  0x62f1, 0x62f7, 0x62ef, 0x62ec, 0x62fe, 0x62f4, 0x6311, 0x6302,
+  0x653f, 0x6545, 0x65ab, 0x65bd, 0x65e2, 0x6625, 0x662d, 0x6620,
+  0x6627, 0x662f, 0x661f, 0x6628, 0x6631, 0x6624, 0x66f7, 0x67ff,
+  0x67d3, 0x67f1, 0x67d4, 0x67d0, 0x67ec, 0x67b6, 0x67af, 0x67f5,
+  0x67e9, 0x67ef, 0x67c4, 0x67d1, 0x67b4, 0x67da, 0x67e5, 0x67b8,
+  0x67cf, 0x67de, 0x67f3, 0x67b0, 0x67d9, 0x67e2, 0x67dd, 0x67d2,
+  0x6b6a, 0x6b83, 0x6b86, 0x6bb5, 0x6bd2, 0x6bd7, 0x6c1f, 0x6cc9,
+  0x6d0b, 0x6d32, 0x6d2a, 0x6d41, 0x6d25, 0x6d0c,
+  /* 0x52 */
+  0x6d31, 0x6d1e, 0x6d17, 0x6d3b, 0x6d3d, 0x6d3e, 0x6d36, 0x6d1b,
+  0x6cf5, 0x6d39, 0x6d27, 0x6d38, 0x6d29, 0x6d2e, 0x6d35, 0x6d0e,
+  0x6d2b, 0x70ab, 0x70ba, 0x70b3, 0x70ac, 0x70af, 0x70ad, 0x70b8,
+  0x70ae, 0x70a4, 0x7230, 0x7272, 0x726f, 0x7274, 0x72e9, 0x72e0,
+  0x72e1, 0x73b7, 0x73ca, 0x73bb, 0x73b2, 0x73cd, 0x73c0, 0x73b3,
+  0x751a, 0x752d, 0x754f, 0x754c, 0x754e, 0x754b, 0x75ab, 0x75a4,
+  0x75a5, 0x75a2, 0x75a3, 0x7678, 0x7686, 0x7687, 0x7688, 0x76c8,
+  0x76c6, 0x76c3, 0x76c5, 0x7701, 0x76f9, 0x76f8, 0x7709, 0x770b,
+  0x76fe, 0x76fc, 0x7707, 0x77dc, 0x7802, 0x7814, 0x780c, 0x780d,
+  0x7946, 0x7949, 0x7948, 0x7947, 0x79b9, 0x79ba, 0x79d1, 0x79d2,
+  0x79cb, 0x7a7f, 0x7a81, 0x7aff, 0x7afd, 0x7c7d, 0x7d02, 0x7d05,
+  0x7d00, 0x7d09, 0x7d07, 0x7d04, 0x7d06, 0x7f38,
+  /* 0x53 */
+  0x7f8e, 0x7fbf, 0x8010, 0x800d, 0x8011, 0x8036, 0x80d6, 0x80e5,
+  0x80da, 0x80c3, 0x80c4, 0x80cc, 0x80e1, 0x80db, 0x80ce, 0x80de,
+  0x80e4, 0x80dd, 0x81f4, 0x8222, 0x82e7, 0x8303, 0x8305, 0x82e3,
+  0x82db, 0x82e6, 0x8304, 0x82e5, 0x8302, 0x8309, 0x82d2, 0x82d7,
+  0x82f1, 0x8301, 0x82dc, 0x82d4, 0x82d1, 0x82de, 0x82d3, 0x82df,
+  0x82ef, 0x8306, 0x8650, 0x8679, 0x867b, 0x867a, 0x884d, 0x886b,
+  0x8981, 0x89d4, 0x8a08, 0x8a02, 0x8a03, 0x8c9e, 0x8ca0, 0x8d74,
+  0x8d73, 0x8db4, 0x8ecd, 0x8ecc, 0x8ff0, 0x8fe6, 0x8fe2, 0x8fea,
+  0x8fe5, 0x8fed, 0x8feb, 0x8fe4, 0x8fe8, 0x90ca, 0x90ce, 0x90c1,
+  0x90c3, 0x914b, 0x914a, 0x91cd, 0x9582, 0x9650, 0x964b, 0x964c,
+  0x964d, 0x9762, 0x9769, 0x97cb, 0x97ed, 0x97f3, 0x9801, 0x98a8,
+  0x98db, 0x98df, 0x9996, 0x9999, 0x4e58, 0x4eb3,
+  /* 0x54 */
+  0x500c, 0x500d, 0x5023, 0x4fef, 0x5026, 0x5025, 0x4ff8, 0x5029,
+  0x5016, 0x5006, 0x503c, 0x501f, 0x501a, 0x5012, 0x5011, 0x4ffa,
+  0x5000, 0x5014, 0x5028, 0x4ff1, 0x5021, 0x500b, 0x5019, 0x5018,
+  0x4ff3, 0x4fee, 0x502d, 0x502a, 0x4ffe, 0x502b, 0x5009, 0x517c,
+  0x51a4, 0x51a5, 0x51a2, 0x51cd, 0x51cc, 0x51c6, 0x51cb, 0x5256,
+  0x525c, 0x5254, 0x525b, 0x525d, 0x532a, 0x537f, 0x539f, 0x539d,
+  0x53df, 0x54e8, 0x5510, 0x5501, 0x5537, 0x54fc, 0x54e5, 0x54f2,
+  0x5506, 0x54fa, 0x5514, 0x54e9, 0x54ed, 0x54e1, 0x5509, 0x54ee,
+  0x54ea, 0x54e6, 0x5527, 0x5507, 0x54fd, 0x550f, 0x5703, 0x5704,
+  0x57c2, 0x57d4, 0x57cb, 0x57c3, 0x5809, 0x590f, 0x5957, 0x5958,
+  0x595a, 0x5a11, 0x5a18, 0x5a1c, 0x5a1f, 0x5a1b, 0x5a13, 0x59ec,
+  0x5a20, 0x5a23, 0x5a29, 0x5a25, 0x5a0c, 0x5a09,
+  /* 0x55 */
+  0x5b6b, 0x5c58, 0x5bb0, 0x5bb3, 0x5bb6, 0x5bb4, 0x5bae, 0x5bb5,
+  0x5bb9, 0x5bb8, 0x5c04, 0x5c51, 0x5c55, 0x5c50, 0x5ced, 0x5cfd,
+  0x5cfb, 0x5cea, 0x5ce8, 0x5cf0, 0x5cf6, 0x5d01, 0x5cf4, 0x5dee,
+  0x5e2d, 0x5e2b, 0x5eab, 0x5ead, 0x5ea7, 0x5f31, 0x5f92, 0x5f91,
+  0x5f90, 0x6059, 0x6063, 0x6065, 0x6050, 0x6055, 0x606d, 0x6069,
+  0x606f, 0x6084, 0x609f, 0x609a, 0x608d, 0x6094, 0x608c, 0x6085,
+  0x6096, 0x6247, 0x62f3, 0x6308, 0x62ff, 0x634e, 0x633e, 0x632f,
+  0x6355, 0x6342, 0x6346, 0x634f, 0x6349, 0x633a, 0x6350, 0x633d,
+  0x632a, 0x632b, 0x6328, 0x634d, 0x634c, 0x6548, 0x6549, 0x6599,
+  0x65c1, 0x65c5, 0x6642, 0x6649, 0x664f, 0x6643, 0x6652, 0x664c,
+  0x6645, 0x6641, 0x66f8, 0x6714, 0x6715, 0x6717, 0x6821, 0x6838,
+  0x6848, 0x6846, 0x6853, 0x6839, 0x6842, 0x6854,
+  /* 0x56 */
+  0x6829, 0x68b3, 0x6817, 0x684c, 0x6851, 0x683d, 0x67f4, 0x6850,
+  0x6840, 0x683c, 0x6843, 0x682a, 0x6845, 0x6813, 0x6818, 0x6841,
+  0x6b8a, 0x6b89, 0x6bb7, 0x6c23, 0x6c27, 0x6c28, 0x6c26, 0x6c24,
+  0x6cf0, 0x6d6a, 0x6d95, 0x6d88, 0x6d87, 0x6d66, 0x6d78, 0x6d77,
+  0x6d59, 0x6d93, 0x6d6c, 0x6d89, 0x6d6e, 0x6d5a, 0x6d74, 0x6d69,
+  0x6d8c, 0x6d8a, 0x6d79, 0x6d85, 0x6d65, 0x6d94, 0x70ca, 0x70d8,
+  0x70e4, 0x70d9, 0x70c8, 0x70cf, 0x7239, 0x7279, 0x72fc, 0x72f9,
+  0x72fd, 0x72f8, 0x72f7, 0x7386, 0x73ed, 0x7409, 0x73ee, 0x73e0,
+  0x73ea, 0x73de, 0x7554, 0x755d, 0x755c, 0x755a, 0x7559, 0x75be,
+  0x75c5, 0x75c7, 0x75b2, 0x75b3, 0x75bd, 0x75bc, 0x75b9, 0x75c2,
+  0x75b8, 0x768b, 0x76b0, 0x76ca, 0x76cd, 0x76ce, 0x7729, 0x771f,
+  0x7720, 0x7728, 0x77e9, 0x7830, 0x7827, 0x7838,
+  /* 0x57 */
+  0x781d, 0x7834, 0x7837, 0x7825, 0x782d, 0x7820, 0x781f, 0x7832,
+  0x7955, 0x7950, 0x7960, 0x795f, 0x7956, 0x795e, 0x795d, 0x7957,
+  0x795a, 0x79e4, 0x79e3, 0x79e7, 0x79df, 0x79e6, 0x79e9, 0x79d8,
+  0x7a84, 0x7a88, 0x7ad9, 0x7b06, 0x7b11, 0x7c89, 0x7d21, 0x7d17,
+  0x7d0b, 0x7d0a, 0x7d20, 0x7d22, 0x7d14, 0x7d10, 0x7d15, 0x7d1a,
+  0x7d1c, 0x7d0d, 0x7d19, 0x7d1b, 0x7f3a, 0x7f5f, 0x7f94, 0x7fc5,
+  0x7fc1, 0x8006, 0x8004, 0x8018, 0x8015, 0x8019, 0x8017, 0x803d,
+  0x803f, 0x80f1, 0x8102, 0x80f0, 0x8105, 0x80ed, 0x80f4, 0x8106,
+  0x80f8, 0x80f3, 0x8108, 0x80fd, 0x810a, 0x80fc, 0x80ef, 0x81ed,
+  0x81ec, 0x8200, 0x8210, 0x822a, 0x822b, 0x8228, 0x822c, 0x82bb,
+  0x832b, 0x8352, 0x8354, 0x834a, 0x8338, 0x8350, 0x8349, 0x8335,
+  0x8334, 0x834f, 0x8332, 0x8339, 0x8336, 0x8317,
+  /* 0x58 */
+  0x8340, 0x8331, 0x8328, 0x8343, 0x8654, 0x868a, 0x86aa, 0x8693,
+  0x86a4, 0x86a9, 0x868c, 0x86a3, 0x869c, 0x8870, 0x8877, 0x8881,
+  0x8882, 0x887d, 0x8879, 0x8a18, 0x8a10, 0x8a0e, 0x8a0c, 0x8a15,
+  0x8a0a, 0x8a17, 0x8a13, 0x8a16, 0x8a0f, 0x8a11, 0x8c48, 0x8c7a,
+  0x8c79, 0x8ca1, 0x8ca2, 0x8d77, 0x8eac, 0x8ed2, 0x8ed4, 0x8ecf,
+  0x8fb1, 0x9001, 0x9006, 0x8ff7, 0x9000, 0x8ffa, 0x8ff4, 0x9003,
+  0x8ffd, 0x9005, 0x8ff8, 0x9095, 0x90e1, 0x90dd, 0x90e2, 0x9152,
+  0x914d, 0x914c, 0x91d8, 0x91dd, 0x91d7, 0x91dc, 0x91d9, 0x9583,
+  0x9662, 0x9663, 0x9661, 0x965b, 0x965d, 0x9664, 0x9658, 0x965e,
+  0x96bb, 0x98e2, 0x99ac, 0x9aa8, 0x9ad8, 0x9b25, 0x9b32, 0x9b3c,
+  0x4e7e, 0x507a, 0x507d, 0x505c, 0x5047, 0x5043, 0x504c, 0x505a,
+  0x5049, 0x5065, 0x5076, 0x504e, 0x5055, 0x5075,
+  /* 0x59 */
+  0x5074, 0x5077, 0x504f, 0x500f, 0x506f, 0x506d, 0x515c, 0x5195,
+  0x51f0, 0x526a, 0x526f, 0x52d2, 0x52d9, 0x52d8, 0x52d5, 0x5310,
+  0x530f, 0x5319, 0x533f, 0x5340, 0x533e, 0x53c3, 0x66fc, 0x5546,
+  0x556a, 0x5566, 0x5544, 0x555e, 0x5561, 0x5543, 0x554a, 0x5531,
+  0x5556, 0x554f, 0x5555, 0x552f, 0x5564, 0x5538, 0x552e, 0x555c,
+  0x552c, 0x5563, 0x5533, 0x5541, 0x5557, 0x5708, 0x570b, 0x5709,
+  0x57df, 0x5805, 0x580a, 0x5806, 0x57e0, 0x57e4, 0x57fa, 0x5802,
+  0x5835, 0x57f7, 0x57f9, 0x5920, 0x5962, 0x5a36, 0x5a41, 0x5a49,
+  0x5a66, 0x5a6a, 0x5a40, 0x5a3c, 0x5a62, 0x5a5a, 0x5a46, 0x5a4a,
+  0x5b70, 0x5bc7, 0x5bc5, 0x5bc4, 0x5bc2, 0x5bbf, 0x5bc6, 0x5c09,
+  0x5c08, 0x5c07, 0x5c60, 0x5c5c, 0x5c5d, 0x5d07, 0x5d06, 0x5d0e,
+  0x5d1b, 0x5d16, 0x5d22, 0x5d11, 0x5d29, 0x5d14,
+  /* 0x5a */
+  0x5d19, 0x5d24, 0x5d27, 0x5d17, 0x5de2, 0x5e38, 0x5e36, 0x5e33,
+  0x5e37, 0x5eb7, 0x5eb8, 0x5eb6, 0x5eb5, 0x5ebe, 0x5f35, 0x5f37,
+  0x5f57, 0x5f6c, 0x5f69, 0x5f6b, 0x5f97, 0x5f99, 0x5f9e, 0x5f98,
+  0x5fa1, 0x5fa0, 0x5f9c, 0x607f, 0x60a3, 0x6089, 0x60a0, 0x60a8,
+  0x60cb, 0x60b4, 0x60e6, 0x60bd, 0x60c5, 0x60bb, 0x60b5, 0x60dc,
+  0x60bc, 0x60d8, 0x60d5, 0x60c6, 0x60df, 0x60b8, 0x60da, 0x60c7,
+  0x621a, 0x621b, 0x6248, 0x63a0, 0x63a7, 0x6372, 0x6396, 0x63a2,
+  0x63a5, 0x6377, 0x6367, 0x6398, 0x63aa, 0x6371, 0x63a9, 0x6389,
+  0x6383, 0x639b, 0x636b, 0x63a8, 0x6384, 0x6388, 0x6399, 0x63a1,
+  0x63ac, 0x6392, 0x638f, 0x6380, 0x637b, 0x6369, 0x6368, 0x637a,
+  0x655d, 0x6556, 0x6551, 0x6559, 0x6557, 0x555f, 0x654f, 0x6558,
+  0x6555, 0x6554, 0x659c, 0x659b, 0x65ac, 0x65cf,
+  /* 0x5b */
+  0x65cb, 0x65cc, 0x65ce, 0x665d, 0x665a, 0x6664, 0x6668, 0x6666,
+  0x665e, 0x66f9, 0x52d7, 0x671b, 0x6881, 0x68af, 0x68a2, 0x6893,
+  0x68b5, 0x687f, 0x6876, 0x68b1, 0x68a7, 0x6897, 0x68b0, 0x6883,
+  0x68c4, 0x68ad, 0x6886, 0x6885, 0x6894, 0x689d, 0x68a8, 0x689f,
+  0x68a1, 0x6882, 0x6b32, 0x6bba, 0x6beb, 0x6bec, 0x6c2b, 0x6d8e,
+  0x6dbc, 0x6df3, 0x6dd9, 0x6db2, 0x6de1, 0x6dcc, 0x6de4, 0x6dfb,
+  0x6dfa, 0x6e05, 0x6dc7, 0x6dcb, 0x6daf, 0x6dd1, 0x6dae, 0x6dde,
+  0x6df9, 0x6db8, 0x6df7, 0x6df5, 0x6dc5, 0x6dd2, 0x6e1a, 0x6db5,
+  0x6dda, 0x6deb, 0x6dd8, 0x6dea, 0x6df1, 0x6dee, 0x6de8, 0x6dc6,
+  0x6dc4, 0x6daa, 0x6dec, 0x6dbf, 0x6de6, 0x70f9, 0x7109, 0x710a,
+  0x70fd, 0x70ef, 0x723d, 0x727d, 0x7281, 0x731c, 0x731b, 0x7316,
+  0x7313, 0x7319, 0x7387, 0x7405, 0x740a, 0x7403,
+  /* 0x5c */
+  0x7406, 0x73fe, 0x740d, 0x74e0, 0x74f6, 0x74f7, 0x751c, 0x7522,
+  0x7565, 0x7566, 0x7562, 0x7570, 0x758f, 0x75d4, 0x75d5, 0x75b5,
+  0x75ca, 0x75cd, 0x768e, 0x76d4, 0x76d2, 0x76db, 0x7737, 0x773e,
+  0x773c, 0x7736, 0x7738, 0x773a, 0x786b, 0x7843, 0x784e, 0x7965,
+  0x7968, 0x796d, 0x79fb, 0x7a92, 0x7a95, 0x7b20, 0x7b28, 0x7b1b,
+  0x7b2c, 0x7b26, 0x7b19, 0x7b1e, 0x7b2e, 0x7c92, 0x7c97, 0x7c95,
+  0x7d46, 0x7d43, 0x7d71, 0x7d2e, 0x7d39, 0x7d3c, 0x7d40, 0x7d30,
+  0x7d33, 0x7d44, 0x7d2f, 0x7d42, 0x7d32, 0x7d31, 0x7f3d, 0x7f9e,
+  0x7f9a, 0x7fcc, 0x7fce, 0x7fd2, 0x801c, 0x804a, 0x8046, 0x812f,
+  0x8116, 0x8123, 0x812b, 0x8129, 0x8130, 0x8124, 0x8202, 0x8235,
+  0x8237, 0x8236, 0x8239, 0x838e, 0x839e, 0x8398, 0x8378, 0x83a2,
+  0x8396, 0x83bd, 0x83ab, 0x8392, 0x838a, 0x8393,
+  /* 0x5d */
+  0x8389, 0x83a0, 0x8377, 0x837b, 0x837c, 0x8386, 0x83a7, 0x8655,
+  0x5f6a, 0x86c7, 0x86c0, 0x86b6, 0x86c4, 0x86b5, 0x86c6, 0x86cb,
+  0x86b1, 0x86af, 0x86c9, 0x8853, 0x889e, 0x8888, 0x88ab, 0x8892,
+  0x8896, 0x888d, 0x888b, 0x8993, 0x898f, 0x8a2a, 0x8a1d, 0x8a23,
+  0x8a25, 0x8a31, 0x8a2d, 0x8a1f, 0x8a1b, 0x8a22, 0x8c49, 0x8c5a,
+  0x8ca9, 0x8cac, 0x8cab, 0x8ca8, 0x8caa, 0x8ca7, 0x8d67, 0x8d66,
+  0x8dbe, 0x8dba, 0x8edb, 0x8edf, 0x9019, 0x900d, 0x901a, 0x9017,
+  0x9023, 0x901f, 0x901d, 0x9010, 0x9015, 0x901e, 0x9020, 0x900f,
+  0x9022, 0x9016, 0x901b, 0x9014, 0x90e8, 0x90ed, 0x90fd, 0x9157,
+  0x91ce, 0x91f5, 0x91e6, 0x91e3, 0x91e7, 0x91ed, 0x91e9, 0x9589,
+  0x966a, 0x9675, 0x9673, 0x9678, 0x9670, 0x9674, 0x9676, 0x9677,
+  0x966c, 0x96c0, 0x96ea, 0x96e9, 0x7ae0, 0x7adf,
+  /* 0x5e */
+  0x9802, 0x9803, 0x9b5a, 0x9ce5, 0x9e75, 0x9e7f, 0x9ea5, 0x9ebb,
+  0x50a2, 0x508d, 0x5085, 0x5099, 0x5091, 0x5080, 0x5096, 0x5098,
+  0x509a, 0x6700, 0x51f1, 0x5272, 0x5274, 0x5275, 0x5269, 0x52de,
+  0x52dd, 0x52db, 0x535a, 0x53a5, 0x557b, 0x5580, 0x55a7, 0x557c,
+  0x558a, 0x559d, 0x5598, 0x5582, 0x559c, 0x55aa, 0x5594, 0x5587,
+  0x558b, 0x5583, 0x55b3, 0x55ae, 0x559f, 0x553e, 0x55b2, 0x559a,
+  0x55bb, 0x55ac, 0x55b1, 0x557e, 0x5589, 0x55ab, 0x5599, 0x570d,
+  0x582f, 0x582a, 0x5834, 0x5824, 0x5830, 0x5831, 0x5821, 0x581d,
+  0x5820, 0x58f9, 0x58fa, 0x5960, 0x5a77, 0x5a9a, 0x5a7f, 0x5a92,
+  0x5a9b, 0x5aa7, 0x5b73, 0x5b71, 0x5bd2, 0x5bcc, 0x5bd3, 0x5bd0,
+  0x5c0a, 0x5c0b, 0x5c31, 0x5d4c, 0x5d50, 0x5d34, 0x5d47, 0x5dfd,
+  0x5e45, 0x5e3d, 0x5e40, 0x5e43, 0x5e7e, 0x5eca,
+  /* 0x5f */
+  0x5ec1, 0x5ec2, 0x5ec4, 0x5f3c, 0x5f6d, 0x5fa9, 0x5faa, 0x5fa8,
+  0x60d1, 0x60e1, 0x60b2, 0x60b6, 0x60e0, 0x611c, 0x6123, 0x60fa,
+  0x6115, 0x60f0, 0x60fb, 0x60f4, 0x6168, 0x60f1, 0x610e, 0x60f6,
+  0x6109, 0x6100, 0x6112, 0x621f, 0x6249, 0x63a3, 0x638c, 0x63cf,
+  0x63c0, 0x63e9, 0x63c9, 0x63c6, 0x63cd, 0x63d2, 0x63e3, 0x63d0,
+  0x63e1, 0x63d6, 0x63ed, 0x63ee, 0x6376, 0x63f4, 0x63ea, 0x63db,
+  0x6452, 0x63da, 0x63f9, 0x655e, 0x6566, 0x6562, 0x6563, 0x6591,
+  0x6590, 0x65af, 0x666e, 0x6670, 0x6674, 0x6676, 0x666f, 0x6691,
+  0x667a, 0x667e, 0x6677, 0x66fe, 0x66ff, 0x671f, 0x671d, 0x68fa,
+  0x68d5, 0x68e0, 0x68d8, 0x68d7, 0x6905, 0x68df, 0x68f5, 0x68ee,
+  0x68e7, 0x68f9, 0x68d2, 0x68f2, 0x68e3, 0x68cb, 0x68cd, 0x690d,
+  0x6912, 0x690e, 0x68c9, 0x68da, 0x696e, 0x68fb,
+  /* 0x60 */
+  0x6b3e, 0x6b3a, 0x6b3d, 0x6b98, 0x6b96, 0x6bbc, 0x6bef, 0x6c2e,
+  0x6c2f, 0x6c2c, 0x6e2f, 0x6e38, 0x6e54, 0x6e21, 0x6e32, 0x6e67,
+  0x6e4a, 0x6e20, 0x6e25, 0x6e23, 0x6e1b, 0x6e5b, 0x6e58, 0x6e24,
+  0x6e56, 0x6e6e, 0x6e2d, 0x6e26, 0x6e6f, 0x6e34, 0x6e4d, 0x6e3a,
+  0x6e2c, 0x6e43, 0x6e1d, 0x6e3e, 0x6ecb, 0x6e89, 0x6e19, 0x6e4e,
+  0x6e63, 0x6e44, 0x6e72, 0x6e69, 0x6e5f, 0x7119, 0x711a, 0x7126,
+  0x7130, 0x7121, 0x7136, 0x716e, 0x711c, 0x724c, 0x7284, 0x7280,
+  0x7336, 0x7325, 0x7334, 0x7329, 0x743a, 0x742a, 0x7433, 0x7422,
+  0x7425, 0x7435, 0x7436, 0x7434, 0x742f, 0x741b, 0x7426, 0x7428,
+  0x7525, 0x7526, 0x756b, 0x756a, 0x75e2, 0x75db, 0x75e3, 0x75d9,
+  0x75d8, 0x75de, 0x75e0, 0x767b, 0x767c, 0x7696, 0x7693, 0x76b4,
+  0x76dc, 0x774f, 0x77ed, 0x785d, 0x786c, 0x786f,
+  /* 0x61 */
+  0x7a0d, 0x7a08, 0x7a0b, 0x7a05, 0x7a00, 0x7a98, 0x7a97, 0x7a96,
+  0x7ae5, 0x7ae3, 0x7b49, 0x7b56, 0x7b46, 0x7b50, 0x7b52, 0x7b54,
+  0x7b4d, 0x7b4b, 0x7b4f, 0x7b51, 0x7c9f, 0x7ca5, 0x7d5e, 0x7d50,
+  0x7d68, 0x7d55, 0x7d2b, 0x7d6e, 0x7d72, 0x7d61, 0x7d66, 0x7d62,
+  0x7d70, 0x7d73, 0x5584, 0x7fd4, 0x7fd5, 0x800b, 0x8052, 0x8085,
+  0x8155, 0x8154, 0x814b, 0x8151, 0x814e, 0x8139, 0x8146, 0x813e,
+  0x814c, 0x8153, 0x8174, 0x8212, 0x821c, 0x83e9, 0x8403, 0x83f8,
+  0x840d, 0x83e0, 0x83c5, 0x840b, 0x83c1, 0x83ef, 0x83f1, 0x83f4,
+  0x8457, 0x840a, 0x83f0, 0x840c, 0x83cc, 0x83fd, 0x83f2, 0x83ca,
+  0x8438, 0x840e, 0x8404, 0x83dc, 0x8407, 0x83d4, 0x83df, 0x865b,
+  0x86df, 0x86d9, 0x86ed, 0x86d4, 0x86db, 0x86e4, 0x86d0, 0x86de,
+  0x8857, 0x88c1, 0x88c2, 0x88b1, 0x8983, 0x8996,
+  /* 0x62 */
+  0x8a3b, 0x8a60, 0x8a55, 0x8a5e, 0x8a3c, 0x8a41, 0x8a54, 0x8a5b,
+  0x8a50, 0x8a46, 0x8a34, 0x8a3a, 0x8a36, 0x8a56, 0x8c61, 0x8c82,
+  0x8caf, 0x8cbc, 0x8cb3, 0x8cbd, 0x8cc1, 0x8cbb, 0x8cc0, 0x8cb4,
+  0x8cb7, 0x8cb6, 0x8cbf, 0x8cb8, 0x8d8a, 0x8d85, 0x8d81, 0x8dce,
+  0x8ddd, 0x8dcb, 0x8dda, 0x8dd1, 0x8dcc, 0x8ddb, 0x8dc6, 0x8efb,
+  0x8ef8, 0x8efc, 0x8f9c, 0x902e, 0x9035, 0x9031, 0x9038, 0x9032,
+  0x9036, 0x9102, 0x90f5, 0x9109, 0x90fe, 0x9163, 0x9165, 0x91cf,
+  0x9214, 0x9215, 0x9223, 0x9209, 0x921e, 0x920d, 0x9210, 0x9207,
+  0x9211, 0x9594, 0x958f, 0x958b, 0x9591, 0x9593, 0x9592, 0x958e,
+  0x968a, 0x968e, 0x968b, 0x967d, 0x9685, 0x9686, 0x968d, 0x9672,
+  0x9684, 0x96c1, 0x96c5, 0x96c4, 0x96c6, 0x96c7, 0x96ef, 0x96f2,
+  0x97cc, 0x9805, 0x9806, 0x9808, 0x98e7, 0x98ea,
+  /* 0x63 */
+  0x98ef, 0x98e9, 0x98f2, 0x98ed, 0x99ae, 0x99ad, 0x9ec3, 0x9ecd,
+  0x9ed1, 0x4e82, 0x50ad, 0x50b5, 0x50b2, 0x50b3, 0x50c5, 0x50be,
+  0x50ac, 0x50b7, 0x50bb, 0x50af, 0x50c7, 0x527f, 0x5277, 0x527d,
+  0x52df, 0x52e6, 0x52e4, 0x52e2, 0x52e3, 0x532f, 0x55df, 0x55e8,
+  0x55d3, 0x55e6, 0x55ce, 0x55dc, 0x55c7, 0x55d1, 0x55e3, 0x55e4,
+  0x55ef, 0x55da, 0x55e1, 0x55c5, 0x55c6, 0x55e5, 0x55c9, 0x5712,
+  0x5713, 0x585e, 0x5851, 0x5858, 0x5857, 0x585a, 0x5854, 0x586b,
+  0x584c, 0x586d, 0x584a, 0x5862, 0x5852, 0x584b, 0x5967, 0x5ac1,
+  0x5ac9, 0x5acc, 0x5abe, 0x5abd, 0x5abc, 0x5ab3, 0x5ac2, 0x5ab2,
+  0x5d69, 0x5d6f, 0x5e4c, 0x5e79, 0x5ec9, 0x5ec8, 0x5f12, 0x5f59,
+  0x5fac, 0x5fae, 0x611a, 0x610f, 0x6148, 0x611f, 0x60f3, 0x611b,
+  0x60f9, 0x6101, 0x6108, 0x614e, 0x614c, 0x6144,
+  /* 0x64 */
+  0x614d, 0x613e, 0x6134, 0x6127, 0x610d, 0x6106, 0x6137, 0x6221,
+  0x6222, 0x6413, 0x643e, 0x641e, 0x642a, 0x642d, 0x643d, 0x642c,
+  0x640f, 0x641c, 0x6414, 0x640d, 0x6436, 0x6416, 0x6417, 0x6406,
+  0x656c, 0x659f, 0x65b0, 0x6697, 0x6689, 0x6687, 0x6688, 0x6696,
+  0x6684, 0x6698, 0x668d, 0x6703, 0x6994, 0x696d, 0x695a, 0x6977,
+  0x6960, 0x6954, 0x6975, 0x6930, 0x6982, 0x694a, 0x6968, 0x696b,
+  0x695e, 0x6953, 0x6979, 0x6986, 0x695d, 0x6963, 0x695b, 0x6b47,
+  0x6b72, 0x6bc0, 0x6bbf, 0x6bd3, 0x6bfd, 0x6ea2, 0x6eaf, 0x6ed3,
+  0x6eb6, 0x6ec2, 0x6e90, 0x6e9d, 0x6ec7, 0x6ec5, 0x6ea5, 0x6e98,
+  0x6ebc, 0x6eba, 0x6eab, 0x6ed1, 0x6e96, 0x6e9c, 0x6ec4, 0x6ed4,
+  0x6eaa, 0x6ea7, 0x6eb4, 0x714e, 0x7159, 0x7169, 0x7164, 0x7149,
+  0x7167, 0x715c, 0x716c, 0x7166, 0x714c, 0x7165,
+  /* 0x65 */
+  0x715e, 0x7146, 0x7168, 0x7156, 0x723a, 0x7252, 0x7337, 0x7345,
+  0x733f, 0x733e, 0x746f, 0x745a, 0x7455, 0x745f, 0x745e, 0x7441,
+  0x743f, 0x7459, 0x745b, 0x745c, 0x7576, 0x7578, 0x7600, 0x75f0,
+  0x7601, 0x75f2, 0x75f1, 0x75fa, 0x75ff, 0x75f4, 0x75f3, 0x76de,
+  0x76df, 0x775b, 0x776b, 0x7766, 0x775e, 0x7763, 0x7779, 0x776a,
+  0x776c, 0x775c, 0x7765, 0x7768, 0x7762, 0x77ee, 0x788e, 0x78b0,
+  0x7897, 0x7898, 0x788c, 0x7889, 0x787c, 0x7891, 0x7893, 0x787f,
+  0x797a, 0x797f, 0x7981, 0x842c, 0x79bd, 0x7a1c, 0x7a1a, 0x7a20,
+  0x7a14, 0x7a1f, 0x7a1e, 0x7a9f, 0x7aa0, 0x7b77, 0x7bc0, 0x7b60,
+  0x7b6e, 0x7b67, 0x7cb1, 0x7cb3, 0x7cb5, 0x7d93, 0x7d79, 0x7d91,
+  0x7d81, 0x7d8f, 0x7d5b, 0x7f6e, 0x7f69, 0x7f6a, 0x7f72, 0x7fa9,
+  0x7fa8, 0x7fa4, 0x8056, 0x8058, 0x8086, 0x8084,
+  /* 0x66 */
+  0x8171, 0x8170, 0x8178, 0x8165, 0x816e, 0x8173, 0x816b, 0x8179,
+  0x817a, 0x8166, 0x8205, 0x8247, 0x8482, 0x8477, 0x843d, 0x8431,
+  0x8475, 0x8466, 0x846b, 0x8449, 0x846c, 0x845b, 0x843c, 0x8435,
+  0x8461, 0x8463, 0x8469, 0x846d, 0x8446, 0x865e, 0x865c, 0x865f,
+  0x86f9, 0x8713, 0x8708, 0x8707, 0x8700, 0x86fe, 0x86fb, 0x8702,
+  0x8703, 0x8706, 0x870a, 0x8859, 0x88df, 0x88d4, 0x88d9, 0x88dc,
+  0x88d8, 0x88dd, 0x88e1, 0x88ca, 0x88d5, 0x88d2, 0x899c, 0x89e3,
+  0x8a6b, 0x8a72, 0x8a73, 0x8a66, 0x8a69, 0x8a70, 0x8a87, 0x8a7c,
+  0x8a63, 0x8aa0, 0x8a71, 0x8a85, 0x8a6d, 0x8a62, 0x8a6e, 0x8a6c,
+  0x8a79, 0x8a7b, 0x8a3e, 0x8a68, 0x8c62, 0x8c8a, 0x8c89, 0x8cca,
+  0x8cc7, 0x8cc8, 0x8cc4, 0x8cb2, 0x8cc3, 0x8cc2, 0x8cc5, 0x8de1,
+  0x8ddf, 0x8de8, 0x8def, 0x8df3, 0x8dfa, 0x8dea,
+  /* 0x67 */
+  0x8de4, 0x8de6, 0x8eb2, 0x8f03, 0x8f09, 0x8efe, 0x8f0a, 0x8f9f,
+  0x8fb2, 0x904b, 0x904a, 0x9053, 0x9042, 0x9054, 0x903c, 0x9055,
+  0x9050, 0x9047, 0x904f, 0x904e, 0x904d, 0x9051, 0x903e, 0x9041,
+  0x9112, 0x9117, 0x916c, 0x916a, 0x9169, 0x91c9, 0x9237, 0x9257,
+  0x9238, 0x923d, 0x9240, 0x923e, 0x925b, 0x924b, 0x9264, 0x9251,
+  0x9234, 0x9249, 0x924d, 0x9245, 0x9239, 0x923f, 0x925a, 0x9598,
+  0x9698, 0x9694, 0x9695, 0x96cd, 0x96cb, 0x96c9, 0x96ca, 0x96f7,
+  0x96fb, 0x96f9, 0x96f6, 0x9756, 0x9774, 0x9776, 0x9810, 0x9811,
+  0x9813, 0x980a, 0x9812, 0x980c, 0x98fc, 0x98f4, 0x98fd, 0x98fe,
+  0x99b3, 0x99b1, 0x99b4, 0x9ae1, 0x9ce9, 0x9e82, 0x9f0e, 0x9f13,
+  0x9f20, 0x50e7, 0x50ee, 0x50e5, 0x50d6, 0x50ed, 0x50da, 0x50d5,
+  0x50cf, 0x50d1, 0x50f1, 0x50ce, 0x50e9, 0x5162,
+  /* 0x68 */
+  0x51f3, 0x5283, 0x5282, 0x5331, 0x53ad, 0x55fe, 0x5600, 0x561b,
+  0x5617, 0x55fd, 0x5614, 0x5606, 0x5609, 0x560d, 0x560e, 0x55f7,
+  0x5616, 0x561f, 0x5608, 0x5610, 0x55f6, 0x5718, 0x5716, 0x5875,
+  0x587e, 0x5883, 0x5893, 0x588a, 0x5879, 0x5885, 0x587d, 0x58fd,
+  0x5925, 0x5922, 0x5924, 0x596a, 0x5969, 0x5ae1, 0x5ae6, 0x5ae9,
+  0x5ad7, 0x5ad6, 0x5ad8, 0x5ae3, 0x5b75, 0x5bde, 0x5be7, 0x5be1,
+  0x5be5, 0x5be6, 0x5be8, 0x5be2, 0x5be4, 0x5bdf, 0x5c0d, 0x5c62,
+  0x5d84, 0x5d87, 0x5e5b, 0x5e63, 0x5e55, 0x5e57, 0x5e54, 0x5ed3,
+  0x5ed6, 0x5f0a, 0x5f46, 0x5f70, 0x5fb9, 0x6147, 0x613f, 0x614b,
+  0x6177, 0x6162, 0x6163, 0x615f, 0x615a, 0x6158, 0x6175, 0x622a,
+  0x6487, 0x6458, 0x6454, 0x64a4, 0x6478, 0x645f, 0x647a, 0x6451,
+  0x6467, 0x6434, 0x646d, 0x647b, 0x6572, 0x65a1,
+  /* 0x69 */
+  0x65d7, 0x65d6, 0x66a2, 0x66a8, 0x669d, 0x699c, 0x69a8, 0x6995,
+  0x69c1, 0x69ae, 0x69d3, 0x69cb, 0x699b, 0x69b7, 0x69bb, 0x69ab,
+  0x69b4, 0x69d0, 0x69cd, 0x69ad, 0x69cc, 0x69a6, 0x69c3, 0x69a3,
+  0x6b49, 0x6b4c, 0x6c33, 0x6f33, 0x6f14, 0x6efe, 0x6f13, 0x6ef4,
+  0x6f29, 0x6f3e, 0x6f20, 0x6f2c, 0x6f0f, 0x6f02, 0x6f22, 0x6eff,
+  0x6eef, 0x6f06, 0x6f31, 0x6f38, 0x6f32, 0x6f23, 0x6f15, 0x6f2b,
+  0x6f2f, 0x6f88, 0x6f2a, 0x6eec, 0x6f01, 0x6ef2, 0x6ecc, 0x6ef7,
+  0x7194, 0x7199, 0x717d, 0x718a, 0x7184, 0x7192, 0x723e, 0x7292,
+  0x7296, 0x7344, 0x7350, 0x7464, 0x7463, 0x746a, 0x7470, 0x746d,
+  0x7504, 0x7591, 0x7627, 0x760d, 0x760b, 0x7609, 0x7613, 0x76e1,
+  0x76e3, 0x7784, 0x777d, 0x777f, 0x7761, 0x78c1, 0x789f, 0x78a7,
+  0x78b3, 0x78a9, 0x78a3, 0x798e, 0x798f, 0x798d,
+  /* 0x6a */
+  0x7a2e, 0x7a31, 0x7aaa, 0x7aa9, 0x7aed, 0x7aef, 0x7ba1, 0x7b95,
+  0x7b8b, 0x7b75, 0x7b97, 0x7b9d, 0x7b94, 0x7b8f, 0x7bb8, 0x7b87,
+  0x7b84, 0x7cb9, 0x7cbd, 0x7cbe, 0x7dbb, 0x7db0, 0x7d9c, 0x7dbd,
+  0x7dbe, 0x7da0, 0x7dca, 0x7db4, 0x7db2, 0x7db1, 0x7dba, 0x7da2,
+  0x7dbf, 0x7db5, 0x7db8, 0x7dad, 0x7dd2, 0x7dc7, 0x7dac, 0x7f70,
+  0x7fe0, 0x7fe1, 0x7fdf, 0x805e, 0x805a, 0x8087, 0x8150, 0x8180,
+  0x818f, 0x8188, 0x818a, 0x817f, 0x8182, 0x81e7, 0x81fa, 0x8207,
+  0x8214, 0x821e, 0x824b, 0x84c9, 0x84bf, 0x84c6, 0x84c4, 0x8499,
+  0x849e, 0x84b2, 0x849c, 0x84cb, 0x84b8, 0x84c0, 0x84d3, 0x8490,
+  0x84bc, 0x84d1, 0x84ca, 0x873f, 0x871c, 0x873b, 0x8722, 0x8725,
+  0x8734, 0x8718, 0x8755, 0x8737, 0x8729, 0x88f3, 0x8902, 0x88f4,
+  0x88f9, 0x88f8, 0x88fd, 0x88e8, 0x891a, 0x88ef,
+  /* 0x6b */
+  0x8aa6, 0x8a8c, 0x8a9e, 0x8aa3, 0x8a8d, 0x8aa1, 0x8a93, 0x8aa4,
+  0x8aaa, 0x8aa5, 0x8aa8, 0x8a98, 0x8a91, 0x8a9a, 0x8aa7, 0x8c6a,
+  0x8c8d, 0x8c8c, 0x8cd3, 0x8cd1, 0x8cd2, 0x8d6b, 0x8d99, 0x8d95,
+  0x8dfc, 0x8f14, 0x8f12, 0x8f15, 0x8f13, 0x8fa3, 0x9060, 0x9058,
+  0x905c, 0x9063, 0x9059, 0x905e, 0x9062, 0x905d, 0x905b, 0x9119,
+  0x9118, 0x911e, 0x9175, 0x9178, 0x9177, 0x9174, 0x9278, 0x92ac,
+  0x9280, 0x9285, 0x9298, 0x9296, 0x927b, 0x9293, 0x929c, 0x92a8,
+  0x927c, 0x9291, 0x95a1, 0x95a8, 0x95a9, 0x95a3, 0x95a5, 0x95a4,
+  0x9699, 0x969c, 0x969b, 0x96cc, 0x96d2, 0x9700, 0x977c, 0x9785,
+  0x97f6, 0x9817, 0x9818, 0x98af, 0x98b1, 0x9903, 0x9905, 0x990c,
+  0x9909, 0x99c1, 0x9aaf, 0x9ab0, 0x9ae6, 0x9b41, 0x9b42, 0x9cf4,
+  0x9cf6, 0x9cf3, 0x9ebc, 0x9f3b, 0x9f4a, 0x5104,
+  /* 0x6c */
+  0x5100, 0x50fb, 0x50f5, 0x50f9, 0x5102, 0x5108, 0x5109, 0x5105,
+  0x51dc, 0x5287, 0x5288, 0x5289, 0x528d, 0x528a, 0x52f0, 0x53b2,
+  0x562e, 0x563b, 0x5639, 0x5632, 0x563f, 0x5634, 0x5629, 0x5653,
+  0x564e, 0x5657, 0x5674, 0x5636, 0x562f, 0x5630, 0x5880, 0x589f,
+  0x589e, 0x58b3, 0x589c, 0x58ae, 0x58a9, 0x58a6, 0x596d, 0x5b09,
+  0x5afb, 0x5b0b, 0x5af5, 0x5b0c, 0x5b08, 0x5bee, 0x5bec, 0x5be9,
+  0x5beb, 0x5c64, 0x5c65, 0x5d9d, 0x5d94, 0x5e62, 0x5e5f, 0x5e61,
+  0x5ee2, 0x5eda, 0x5edf, 0x5edd, 0x5ee3, 0x5ee0, 0x5f48, 0x5f71,
+  0x5fb7, 0x5fb5, 0x6176, 0x6167, 0x616e, 0x615d, 0x6155, 0x6182,
+  0x617c, 0x6170, 0x616b, 0x617e, 0x61a7, 0x6190, 0x61ab, 0x618e,
+  0x61ac, 0x619a, 0x61a4, 0x6194, 0x61ae, 0x622e, 0x6469, 0x646f,
+  0x6479, 0x649e, 0x64b2, 0x6488, 0x6490, 0x64b0,
+  /* 0x6d */
+  0x64a5, 0x6493, 0x6495, 0x64a9, 0x6492, 0x64ae, 0x64ad, 0x64ab,
+  0x649a, 0x64ac, 0x6499, 0x64a2, 0x64b3, 0x6575, 0x6577, 0x6578,
+  0x66ae, 0x66ab, 0x66b4, 0x66b1, 0x6a23, 0x6a1f, 0x69e8, 0x6a01,
+  0x6a1e, 0x6a19, 0x69fd, 0x6a21, 0x6a13, 0x6a0a, 0x69f3, 0x6a02,
+  0x6a05, 0x69ed, 0x6a11, 0x6b50, 0x6b4e, 0x6ba4, 0x6bc5, 0x6bc6,
+  0x6f3f, 0x6f7c, 0x6f84, 0x6f51, 0x6f66, 0x6f54, 0x6f86, 0x6f6d,
+  0x6f5b, 0x6f78, 0x6f6e, 0x6f8e, 0x6f7a, 0x6f70, 0x6f64, 0x6f97,
+  0x6f58, 0x6ed5, 0x6f6f, 0x6f60, 0x6f5f, 0x719f, 0x71ac, 0x71b1,
+  0x71a8, 0x7256, 0x729b, 0x734e, 0x7357, 0x7469, 0x748b, 0x7483,
+  0x747e, 0x7480, 0x757f, 0x7620, 0x7629, 0x761f, 0x7624, 0x7626,
+  0x7621, 0x7622, 0x769a, 0x76ba, 0x76e4, 0x778e, 0x7787, 0x778c,
+  0x7791, 0x778b, 0x78cb, 0x78c5, 0x78ba, 0x78ca,
+  /* 0x6e */
+  0x78be, 0x78d5, 0x78bc, 0x78d0, 0x7a3f, 0x7a3c, 0x7a40, 0x7a3d,
+  0x7a37, 0x7a3b, 0x7aaf, 0x7aae, 0x7bad, 0x7bb1, 0x7bc4, 0x7bb4,
+  0x7bc6, 0x7bc7, 0x7bc1, 0x7ba0, 0x7bcc, 0x7cca, 0x7de0, 0x7df4,
+  0x7def, 0x7dfb, 0x7dd8, 0x7dec, 0x7ddd, 0x7de8, 0x7de3, 0x7dda,
+  0x7dde, 0x7de9, 0x7d9e, 0x7dd9, 0x7df2, 0x7df9, 0x7f75, 0x7f77,
+  0x7faf, 0x7fe9, 0x8026, 0x819b, 0x819c, 0x819d, 0x81a0, 0x819a,
+  0x8198, 0x8517, 0x853d, 0x851a, 0x84ee, 0x852c, 0x852d, 0x8513,
+  0x8511, 0x8523, 0x8521, 0x8514, 0x84ec, 0x8525, 0x84ff, 0x8506,
+  0x8782, 0x8774, 0x8776, 0x8760, 0x8766, 0x8778, 0x8768, 0x8759,
+  0x8757, 0x874c, 0x8753, 0x885b, 0x885d, 0x8910, 0x8907, 0x8912,
+  0x8913, 0x8915, 0x890a, 0x8abc, 0x8ad2, 0x8ac7, 0x8ac4, 0x8a95,
+  0x8acb, 0x8af8, 0x8ab2, 0x8ac9, 0x8ac2, 0x8abf,
+  /* 0x6f */
+  0x8ab0, 0x8ad6, 0x8acd, 0x8ab6, 0x8ab9, 0x8adb, 0x8c4c, 0x8c4e,
+  0x8c6c, 0x8ce0, 0x8cde, 0x8ce6, 0x8ce4, 0x8cec, 0x8ced, 0x8ce2,
+  0x8ce3, 0x8cdc, 0x8cea, 0x8ce1, 0x8d6d, 0x8d9f, 0x8da3, 0x8e2b,
+  0x8e10, 0x8e1d, 0x8e22, 0x8e0f, 0x8e29, 0x8e1f, 0x8e21, 0x8e1e,
+  0x8eba, 0x8f1d, 0x8f1b, 0x8f1f, 0x8f29, 0x8f26, 0x8f2a, 0x8f1c,
+  0x8f1e, 0x8f25, 0x9069, 0x906e, 0x9068, 0x906d, 0x9077, 0x9130,
+  0x912d, 0x9127, 0x9131, 0x9187, 0x9189, 0x918b, 0x9183, 0x92c5,
+  0x92bb, 0x92b7, 0x92ea, 0x92e4, 0x92c1, 0x92b3, 0x92bc, 0x92d2,
+  0x92c7, 0x92f0, 0x92b2, 0x95ad, 0x95b1, 0x9704, 0x9706, 0x9707,
+  0x9709, 0x9760, 0x978d, 0x978b, 0x978f, 0x9821, 0x982b, 0x981c,
+  0x98b3, 0x990a, 0x9913, 0x9912, 0x9918, 0x99dd, 0x99d0, 0x99df,
+  0x99db, 0x99d1, 0x99d5, 0x99d2, 0x99d9, 0x9ab7,
+  /* 0x70 */
+  0x9aee, 0x9aef, 0x9b27, 0x9b45, 0x9b44, 0x9b77, 0x9b6f, 0x9d06,
+  0x9d09, 0x9d03, 0x9ea9, 0x9ebe, 0x9ece, 0x58a8, 0x9f52, 0x5112,
+  0x5118, 0x5114, 0x5110, 0x5115, 0x5180, 0x51aa, 0x51dd, 0x5291,
+  0x5293, 0x52f3, 0x5659, 0x566b, 0x5679, 0x5669, 0x5664, 0x5678,
+  0x566a, 0x5668, 0x5665, 0x5671, 0x566f, 0x566c, 0x5662, 0x5676,
+  0x58c1, 0x58be, 0x58c7, 0x58c5, 0x596e, 0x5b1d, 0x5b34, 0x5b78,
+  0x5bf0, 0x5c0e, 0x5f4a, 0x61b2, 0x6191, 0x61a9, 0x618a, 0x61cd,
+  0x61b6, 0x61be, 0x61ca, 0x61c8, 0x6230, 0x64c5, 0x64c1, 0x64cb,
+  0x64bb, 0x64bc, 0x64da, 0x64c4, 0x64c7, 0x64c2, 0x64cd, 0x64bf,
+  0x64d2, 0x64d4, 0x64be, 0x6574, 0x66c6, 0x66c9, 0x66b9, 0x66c4,
+  0x66c7, 0x66b8, 0x6a3d, 0x6a38, 0x6a3a, 0x6a59, 0x6a6b, 0x6a58,
+  0x6a39, 0x6a44, 0x6a62, 0x6a61, 0x6a4b, 0x6a47,
+  /* 0x71 */
+  0x6a35, 0x6a5f, 0x6a48, 0x6b59, 0x6b77, 0x6c05, 0x6fc2, 0x6fb1,
+  0x6fa1, 0x6fc3, 0x6fa4, 0x6fc1, 0x6fa7, 0x6fb3, 0x6fc0, 0x6fb9,
+  0x6fb6, 0x6fa6, 0x6fa0, 0x6fb4, 0x71be, 0x71c9, 0x71d0, 0x71d2,
+  0x71c8, 0x71d5, 0x71b9, 0x71ce, 0x71d9, 0x71dc, 0x71c3, 0x71c4,
+  0x7368, 0x749c, 0x74a3, 0x7498, 0x749f, 0x749e, 0x74e2, 0x750c,
+  0x750d, 0x7634, 0x7638, 0x763a, 0x76e7, 0x76e5, 0x77a0, 0x779e,
+  0x779f, 0x77a5, 0x78e8, 0x78da, 0x78ec, 0x78e7, 0x79a6, 0x7a4d,
+  0x7a4e, 0x7a46, 0x7a4c, 0x7a4b, 0x7aba, 0x7bd9, 0x7c11, 0x7bc9,
+  0x7be4, 0x7bdb, 0x7be1, 0x7be9, 0x7be6, 0x7cd5, 0x7cd6, 0x7e0a,
+  0x7e11, 0x7e08, 0x7e1b, 0x7e23, 0x7e1e, 0x7e1d, 0x7e09, 0x7e10,
+  0x7f79, 0x7fb2, 0x7ff0, 0x7ff1, 0x7fee, 0x8028, 0x81b3, 0x81a9,
+  0x81a8, 0x81fb, 0x8208, 0x8258, 0x8259, 0x854a,
+  /* 0x72 */
+  0x8559, 0x8548, 0x8568, 0x8569, 0x8543, 0x8549, 0x856d, 0x856a,
+  0x855e, 0x8783, 0x879f, 0x879e, 0x87a2, 0x878d, 0x8861, 0x892a,
+  0x8932, 0x8925, 0x892b, 0x8921, 0x89aa, 0x89a6, 0x8ae6, 0x8afa,
+  0x8aeb, 0x8af1, 0x8b00, 0x8adc, 0x8ae7, 0x8aee, 0x8afe, 0x8b01,
+  0x8b02, 0x8af7, 0x8aed, 0x8af3, 0x8af6, 0x8afc, 0x8c6b, 0x8c6d,
+  0x8c93, 0x8cf4, 0x8e44, 0x8e31, 0x8e34, 0x8e42, 0x8e39, 0x8e35,
+  0x8f3b, 0x8f2f, 0x8f38, 0x8f33, 0x8fa8, 0x8fa6, 0x9075, 0x9074,
+  0x9078, 0x9072, 0x907c, 0x907a, 0x9134, 0x9192, 0x9320, 0x9336,
+  0x92f8, 0x9333, 0x932f, 0x9322, 0x92fc, 0x932b, 0x9304, 0x931a,
+  0x9310, 0x9326, 0x9321, 0x9315, 0x932e, 0x9319, 0x95bb, 0x96a7,
+  0x96a8, 0x96aa, 0x96d5, 0x970e, 0x9711, 0x9716, 0x970d, 0x9713,
+  0x970f, 0x975b, 0x975c, 0x9766, 0x9798, 0x9830,
+  /* 0x73 */
+  0x9838, 0x983b, 0x9837, 0x982d, 0x9839, 0x9824, 0x9910, 0x9928,
+  0x991e, 0x991b, 0x9921, 0x991a, 0x99ed, 0x99e2, 0x99f1, 0x9ab8,
+  0x9abc, 0x9afb, 0x9aed, 0x9b28, 0x9b91, 0x9d15, 0x9d23, 0x9d26,
+  0x9d28, 0x9d12, 0x9d1b, 0x9ed8, 0x9ed4, 0x9f8d, 0x9f9c, 0x512a,
+  0x511f, 0x5121, 0x5132, 0x52f5, 0x568e, 0x5680, 0x5690, 0x5685,
+  0x5687, 0x568f, 0x58d5, 0x58d3, 0x58d1, 0x58ce, 0x5b30, 0x5b2a,
+  0x5b24, 0x5b7a, 0x5c37, 0x5c68, 0x5dbc, 0x5dba, 0x5dbd, 0x5db8,
+  0x5e6b, 0x5f4c, 0x5fbd, 0x61c9, 0x61c2, 0x61c7, 0x61e6, 0x61cb,
+  0x6232, 0x6234, 0x64ce, 0x64ca, 0x64d8, 0x64e0, 0x64f0, 0x64e6,
+  0x64ec, 0x64f1, 0x64e2, 0x64ed, 0x6582, 0x6583, 0x66d9, 0x66d6,
+  0x6a80, 0x6a94, 0x6a84, 0x6aa2, 0x6a9c, 0x6adb, 0x6aa3, 0x6a7e,
+  0x6a97, 0x6a90, 0x6aa0, 0x6b5c, 0x6bae, 0x6bda,
+  /* 0x74 */
+  0x6c08, 0x6fd8, 0x6ff1, 0x6fdf, 0x6fe0, 0x6fdb, 0x6fe4, 0x6feb,
+  0x6fef, 0x6f80, 0x6fec, 0x6fe1, 0x6fe9, 0x6fd5, 0x6fee, 0x6ff0,
+  0x71e7, 0x71df, 0x71ee, 0x71e6, 0x71e5, 0x71ed, 0x71ec, 0x71f4,
+  0x71e0, 0x7235, 0x7246, 0x7370, 0x7372, 0x74a9, 0x74b0, 0x74a6,
+  0x74a8, 0x7646, 0x7642, 0x764c, 0x76ea, 0x77b3, 0x77aa, 0x77b0,
+  0x77ac, 0x77a7, 0x77ad, 0x77ef, 0x78f7, 0x78fa, 0x78f4, 0x78ef,
+  0x7901, 0x79a7, 0x79aa, 0x7a57, 0x7abf, 0x7c07, 0x7c0d, 0x7bfe,
+  0x7bf7, 0x7c0c, 0x7be0, 0x7ce0, 0x7cdc, 0x7cde, 0x7ce2, 0x7cdf,
+  0x7cd9, 0x7cdd, 0x7e2e, 0x7e3e, 0x7e46, 0x7e37, 0x7e32, 0x7e43,
+  0x7e2b, 0x7e3d, 0x7e31, 0x7e45, 0x7e41, 0x7e34, 0x7e39, 0x7e48,
+  0x7e35, 0x7e3f, 0x7e2f, 0x7f44, 0x7ff3, 0x7ffc, 0x8071, 0x8072,
+  0x8070, 0x806f, 0x8073, 0x81c6, 0x81c3, 0x81ba,
+  /* 0x75 */
+  0x81c2, 0x81c0, 0x81bf, 0x81bd, 0x81c9, 0x81be, 0x81e8, 0x8209,
+  0x8271, 0x85aa, 0x8584, 0x857e, 0x859c, 0x8591, 0x8594, 0x85af,
+  0x859b, 0x8587, 0x85a8, 0x858a, 0x85a6, 0x8667, 0x87c0, 0x87d1,
+  0x87b3, 0x87d2, 0x87c6, 0x87ab, 0x87bb, 0x87ba, 0x87c8, 0x87cb,
+  0x893b, 0x8936, 0x8944, 0x8938, 0x893d, 0x89ac, 0x8b0e, 0x8b17,
+  0x8b19, 0x8b1b, 0x8b0a, 0x8b20, 0x8b1d, 0x8b04, 0x8b10, 0x8c41,
+  0x8c3f, 0x8c73, 0x8cfa, 0x8cfd, 0x8cfc, 0x8cf8, 0x8cfb, 0x8da8,
+  0x8e49, 0x8e4b, 0x8e48, 0x8e4a, 0x8f44, 0x8f3e, 0x8f42, 0x8f45,
+  0x8f3f, 0x907f, 0x907d, 0x9084, 0x9081, 0x9082, 0x9080, 0x9139,
+  0x91a3, 0x919e, 0x919c, 0x934d, 0x9382, 0x9328, 0x9375, 0x934a,
+  0x9365, 0x934b, 0x9318, 0x937e, 0x936c, 0x935b, 0x9370, 0x935a,
+  0x9354, 0x95ca, 0x95cb, 0x95cc, 0x95c8, 0x95c6,
+  /* 0x76 */
+  0x96b1, 0x96b8, 0x96d6, 0x971c, 0x971e, 0x97a0, 0x97d3, 0x9846,
+  0x98b6, 0x9935, 0x9a01, 0x99ff, 0x9bae, 0x9bab, 0x9baa, 0x9bad,
+  0x9d3b, 0x9d3f, 0x9e8b, 0x9ecf, 0x9ede, 0x9edc, 0x9edd, 0x9edb,
+  0x9f3e, 0x9f4b, 0x53e2, 0x5695, 0x56ae, 0x58d9, 0x58d8, 0x5b38,
+  0x5f5e, 0x61e3, 0x6233, 0x64f4, 0x64f2, 0x64fe, 0x6506, 0x64fa,
+  0x64fb, 0x64f7, 0x65b7, 0x66dc, 0x6726, 0x6ab3, 0x6aac, 0x6ac3,
+  0x6abb, 0x6ab8, 0x6ac2, 0x6aae, 0x6aaf, 0x6b5f, 0x6b78, 0x6baf,
+  0x7009, 0x700b, 0x6ffe, 0x7006, 0x6ffa, 0x7011, 0x700f, 0x71fb,
+  0x71fc, 0x71fe, 0x71f8, 0x7377, 0x7375, 0x74a7, 0x74bf, 0x7515,
+  0x7656, 0x7658, 0x7652, 0x77bd, 0x77bf, 0x77bb, 0x77bc, 0x790e,
+  0x79ae, 0x7a61, 0x7a62, 0x7a60, 0x7ac4, 0x7ac5, 0x7c2b, 0x7c27,
+  0x7c2a, 0x7c1e, 0x7c23, 0x7c21, 0x7ce7, 0x7e54,
+  /* 0x77 */
+  0x7e55, 0x7e5e, 0x7e5a, 0x7e61, 0x7e52, 0x7e59, 0x7f48, 0x7ff9,
+  0x7ffb, 0x8077, 0x8076, 0x81cd, 0x81cf, 0x820a, 0x85cf, 0x85a9,
+  0x85cd, 0x85d0, 0x85c9, 0x85b0, 0x85ba, 0x85b9, 0x87ef, 0x87ec,
+  0x87f2, 0x87e0, 0x8986, 0x89b2, 0x89f4, 0x8b28, 0x8b39, 0x8b2c,
+  0x8b2b, 0x8c50, 0x8d05, 0x8e59, 0x8e63, 0x8e66, 0x8e64, 0x8e5f,
+  0x8e55, 0x8ec0, 0x8f49, 0x8f4d, 0x9087, 0x9083, 0x9088, 0x91ab,
+  0x91ac, 0x91d0, 0x9394, 0x938a, 0x9396, 0x93a2, 0x93b3, 0x93ae,
+  0x93ac, 0x93b0, 0x9398, 0x939a, 0x9397, 0x95d4, 0x95d6, 0x95d0,
+  0x95d5, 0x96e2, 0x96dc, 0x96d9, 0x96db, 0x96de, 0x9724, 0x97a3,
+  0x97a6, 0x97ad, 0x97f9, 0x984d, 0x984f, 0x984c, 0x984e, 0x9853,
+  0x98ba, 0x993e, 0x993f, 0x993d, 0x992e, 0x99a5, 0x9a0e, 0x9ac1,
+  0x9b03, 0x9b06, 0x9b4f, 0x9b4e, 0x9b4d, 0x9bca,
+  /* 0x78 */
+  0x9bc9, 0x9bfd, 0x9bc8, 0x9bc0, 0x9d51, 0x9d5d, 0x9d60, 0x9ee0,
+  0x9f15, 0x9f2c, 0x5133, 0x56a5, 0x56a8, 0x58de, 0x58df, 0x58e2,
+  0x5bf5, 0x9f90, 0x5eec, 0x61f2, 0x61f7, 0x61f6, 0x61f5, 0x6500,
+  0x650f, 0x66e0, 0x66dd, 0x6ae5, 0x6add, 0x6ada, 0x6ad3, 0x701b,
+  0x701f, 0x7028, 0x701a, 0x701d, 0x7015, 0x7018, 0x7206, 0x720d,
+  0x7258, 0x72a2, 0x7378, 0x737a, 0x74bd, 0x74ca, 0x74e3, 0x7587,
+  0x7586, 0x765f, 0x7661, 0x77c7, 0x7919, 0x79b1, 0x7a6b, 0x7a69,
+  0x7c3e, 0x7c3f, 0x7c38, 0x7c3d, 0x7c37, 0x7c40, 0x7e6b, 0x7e6d,
+  0x7e79, 0x7e69, 0x7e6a, 0x7e73, 0x7f85, 0x7fb6, 0x7fb9, 0x7fb8,
+  0x81d8, 0x85e9, 0x85dd, 0x85ea, 0x85d5, 0x85e4, 0x85e5, 0x85f7,
+  0x87fb, 0x8805, 0x880d, 0x87f9, 0x87fe, 0x8960, 0x895f, 0x8956,
+  0x895e, 0x8b41, 0x8b5c, 0x8b58, 0x8b49, 0x8b5a,
+  /* 0x79 */
+  0x8b4e, 0x8b4f, 0x8b46, 0x8b59, 0x8d08, 0x8d0a, 0x8e7c, 0x8e72,
+  0x8e87, 0x8e76, 0x8e6c, 0x8e7a, 0x8e74, 0x8f54, 0x8f4e, 0x8fad,
+  0x908a, 0x908b, 0x91b1, 0x91ae, 0x93e1, 0x93d1, 0x93df, 0x93c3,
+  0x93c8, 0x93dc, 0x93dd, 0x93d6, 0x93e2, 0x93cd, 0x93d8, 0x93e4,
+  0x93d7, 0x93e8, 0x95dc, 0x96b4, 0x96e3, 0x972a, 0x9727, 0x9761,
+  0x97dc, 0x97fb, 0x985e, 0x9858, 0x985b, 0x98bc, 0x9945, 0x9949,
+  0x9a16, 0x9a19, 0x9b0d, 0x9be8, 0x9be7, 0x9bd6, 0x9bdb, 0x9d89,
+  0x9d61, 0x9d72, 0x9d6a, 0x9d6c, 0x9e92, 0x9e97, 0x9e93, 0x9eb4,
+  0x52f8, 0x56b7, 0x56b6, 0x56b4, 0x56bc, 0x58e4, 0x5b40, 0x5b43,
+  0x5b7d, 0x5bf6, 0x5dc9, 0x61f8, 0x61fa, 0x6518, 0x6514, 0x6519,
+  0x66e6, 0x6727, 0x6aec, 0x703e, 0x7030, 0x7032, 0x7210, 0x737b,
+  0x74cf, 0x7662, 0x7665, 0x7926, 0x792a, 0x792c,
+  /* 0x7a */
+  0x792b, 0x7ac7, 0x7af6, 0x7c4c, 0x7c43, 0x7c4d, 0x7cef, 0x7cf0,
+  0x8fae, 0x7e7d, 0x7e7c, 0x7e82, 0x7f4c, 0x8000, 0x81da, 0x8266,
+  0x85fb, 0x85f9, 0x8611, 0x85fa, 0x8606, 0x860b, 0x8607, 0x860a,
+  0x8814, 0x8815, 0x8964, 0x89ba, 0x89f8, 0x8b70, 0x8b6c, 0x8b66,
+  0x8b6f, 0x8b5f, 0x8b6b, 0x8d0f, 0x8d0d, 0x8e89, 0x8e81, 0x8e85,
+  0x8e82, 0x91b4, 0x91cb, 0x9418, 0x9403, 0x93fd, 0x95e1, 0x9730,
+  0x98c4, 0x9952, 0x9951, 0x99a8, 0x9a2b, 0x9a30, 0x9a37, 0x9a35,
+  0x9c13, 0x9c0d, 0x9e79, 0x9eb5, 0x9ee8, 0x9f2f, 0x9f5f, 0x9f63,
+  0x9f61, 0x5137, 0x5138, 0x56c1, 0x56c0, 0x56c2, 0x5914, 0x5c6c,
+  0x5dcd, 0x61fc, 0x61fe, 0x651d, 0x651c, 0x6595, 0x66e9, 0x6afb,
+  0x6b04, 0x6afa, 0x6bb2, 0x704c, 0x721b, 0x72a7, 0x74d6, 0x74d4,
+  0x7669, 0x77d3, 0x7c50, 0x7e8f, 0x7e8c, 0x7fbc,
+  /* 0x7b */
+  0x8617, 0x862d, 0x861a, 0x8823, 0x8822, 0x8821, 0x881f, 0x896a,
+  0x896c, 0x89bd, 0x8b74, 0x8b77, 0x8b7d, 0x8d13, 0x8e8a, 0x8e8d,
+  0x8e8b, 0x8f5f, 0x8faf, 0x91ba, 0x942e, 0x9433, 0x9435, 0x943a,
+  0x9438, 0x9432, 0x942b, 0x95e2, 0x9738, 0x9739, 0x9732, 0x97ff,
+  0x9867, 0x9865, 0x9957, 0x9a45, 0x9a43, 0x9a40, 0x9a3e, 0x9acf,
+  0x9b54, 0x9b51, 0x9c2d, 0x9c25, 0x9daf, 0x9db4, 0x9dc2, 0x9db8,
+  0x9e9d, 0x9eef, 0x9f19, 0x9f5c, 0x9f66, 0x9f67, 0x513c, 0x513b,
+  0x56c8, 0x56ca, 0x56c9, 0x5b7f, 0x5dd4, 0x5dd2, 0x5f4e, 0x61ff,
+  0x6524, 0x6b0a, 0x6b61, 0x7051, 0x7058, 0x7380, 0x74e4, 0x758a,
+  0x766e, 0x766c, 0x79b3, 0x7c60, 0x7c5f, 0x807e, 0x807d, 0x81df,
+  0x8972, 0x896f, 0x89fc, 0x8b80, 0x8d16, 0x8d17, 0x8e91, 0x8e93,
+  0x8f61, 0x9148, 0x9444, 0x9451, 0x9452, 0x973d,
+  /* 0x7c */
+  0x973e, 0x97c3, 0x97c1, 0x986b, 0x9955, 0x9a55, 0x9a4d, 0x9ad2,
+  0x9b1a, 0x9c49, 0x9c31, 0x9c3e, 0x9c3b, 0x9dd3, 0x9dd7, 0x9f34,
+  0x9f6c, 0x9f6a, 0x9f94, 0x56cc, 0x5dd6, 0x6200, 0x6523, 0x652b,
+  0x652a, 0x66ec, 0x6b10, 0x74da, 0x7aca, 0x7c64, 0x7c63, 0x7c65,
+  0x7e93, 0x7e96, 0x7e94, 0x81e2, 0x8638, 0x863f, 0x8831, 0x8b8a,
+  0x9090, 0x908f, 0x9463, 0x9460, 0x9464, 0x9768, 0x986f, 0x995c,
+  0x9a5a, 0x9a5b, 0x9a57, 0x9ad3, 0x9ad4, 0x9ad1, 0x9c54, 0x9c57,
+  0x9c56, 0x9de5, 0x9e9f, 0x9ef4, 0x56d1, 0x58e9, 0x652c, 0x705e,
+  0x7671, 0x7672, 0x77d7, 0x7f50, 0x7f88, 0x8836, 0x8839, 0x8862,
+  0x8b93, 0x8b92, 0x8b96, 0x8277, 0x8d1b, 0x91c0, 0x946a, 0x9742,
+  0x9748, 0x9744, 0x97c6, 0x9870, 0x9a5f, 0x9b22, 0x9b58, 0x9c5f,
+  0x9df9, 0x9dfa, 0x9e7c, 0x9e7d, 0x9f07, 0x9f77,
+  /* 0x7d */
+  0x9f72, 0x5ef3, 0x6b16, 0x7063, 0x7c6c, 0x7c6e, 0x883b, 0x89c0,
+  0x8ea1, 0x91c1, 0x9472, 0x9470, 0x9871, 0x995e, 0x9ad6, 0x9b23,
+  0x9ecc, 0x7064, 0x77da, 0x8b9a, 0x9477, 0x97c9, 0x9a62, 0x9a65,
+  0x7e9c, 0x8b9c, 0x8eaa, 0x91c5, 0x947d, 0x947e, 0x947c, 0x9c77,
+  0x9c78, 0x9ef7, 0x8c54, 0x947f, 0x9e1a, 0x7228, 0x9a6a, 0x9b31,
+  0x9e1b, 0x9e1e, 0x7c72,
+};
+
+static int
+cns11643_1_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 >= 0x21 && c1 <= 0x27) || (c1 == 0x42) || (c1 >= 0x44 && c1 <= 0x7d)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if (c2 >= 0x21 && c2 < 0x7f) {
+        unsigned int i = 94 * (c1 - 0x21) + (c2 - 0x21);
+        unsigned short wc = 0xfffd;
+        if (i < 3102) {
+          if (i < 500)
+            wc = cns11643_1_2uni_page21[i];
+          else if (i == 571)
+            wc = 0x4ea0;
+          else if (i == 578)
+            wc = 0x51ab;
+          else if (i == 583)
+            wc = 0x52f9;
+        } else if (i < 3290) {
+          if (i < 3136)
+            wc = cns11643_1_2uni_page42[i-3102];
+        } else {
+          if (i < 8691)
+            wc = cns11643_1_2uni_page44[i-3290];
+        }
+        if (wc != 0xfffd) {
+          *pwc = (ucs4_t) wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
diff --git a/graf2d/win32gdk/gdk/src/iconv/cns11643_15.h b/graf2d/win32gdk/gdk/src/iconv/cns11643_15.h
new file mode 100644
index 00000000000..cfe0ba69bcc
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cns11643_15.h
@@ -0,0 +1,1083 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CNS 11643-1992 plane 15
+ */
+
+static const unsigned short cns11643_15_2uni_page21[7169] = {
+  /* 0x21 */
+  0x5302, 0x538c, 0x53d4, 0x54a5, 0x5392, 0x5393, 0x53d8, 0x53d9,
+  0x54a7, 0x592b, 0x592c, 0x592d, 0x5930, 0x592e, 0x59ab, 0x1a01,
+  0x5c2d, 0x5c6d, 0xfa34, 0x5d0f, 0x52fd, 0x5e9d, 0x64a2, 0x68d4,
+  0x6e56, 0x6ec3, 0x7314, 0x52fd, 0x9a1a, 0x530f, 0x5310, 0x539a,
+  0x539b, 0x52fd, 0x54ac, 0x0036, 0x5397, 0x5846, 0x0e4f, 0x5876,
+  0x5877, 0x58ae, 0x593a, 0x597d, 0x6ec5, 0x5ea8, 0x52fd, 0x1afa,
+  0x6541, 0x6542, 0x68d8, 0x68d9, 0x69aa, 0x69ab, 0x6c42, 0x6c41,
+  0x5099, 0x6ec6, 0x52fd, 0x7035, 0x7036, 0x7037, 0xfa83, 0xb64d,
+  0x52fd, 0x74b5, 0x7617, 0x7782, 0x86b6, 0x2d49, 0x8f72, 0x985c,
+  0x98a8, 0x45b7, 0x68e3, 0x0006, 0x52fd, 0x53e6, 0x5444, 0x5445,
+  0x1729, 0x003e, 0x54c4, 0x54c5, 0x54c6, 0x54c7, 0x54c8, 0x54c9,
+  0x54ca, 0x54d4, 0x587d, 0xb572, 0x58b2, 0x58b4,
+  /* 0x22 */
+  0x5982, 0x59c7, 0x59c8, 0x52fd, 0x5b3c, 0x5b3d, 0x5b3e, 0x5b3f,
+  0xfa24, 0x5bd3, 0x5447, 0x1a4e, 0x5d3d, 0x5de2, 0x5eb8, 0x5eb9,
+  0x5ec2, 0x5eba, 0x5ec6, 0x5ebb, 0x64ad, 0x654c, 0x654d, 0x52fd,
+  0x69b2, 0x69b3, 0x69b4, 0x69b5, 0x6cc3, 0x6cc4, 0x6cc5, 0x6cc6,
+  0x6cc7, 0x52fd, 0x6ece, 0x6f30, 0x7047, 0x7048, 0x2281, 0x735c,
+  0x52fd, 0x735f, 0x7618, 0x7619, 0x767e, 0x2410, 0x78b0, 0x7d75,
+  0x2568, 0x7d76, 0x8341, 0x8442, 0x52fd, 0x86bd, 0x2842, 0x2840,
+  0x18ea, 0x8e1e, 0x8e1f, 0x8f87, 0x2d62, 0x8f78, 0x9488, 0x9489,
+  0x948a, 0x9917, 0x9915, 0x52fd, 0x52fd, 0x3291, 0xa3e5, 0xa909,
+  0xaa3b, 0xaa4f, 0x52fd, 0xb92e, 0xb92f, 0xbdff, 0xbdfd, 0xbdfe,
+  0x45bb, 0x45bc, 0x52fd, 0x5323, 0x53ea, 0x542a, 0x5449, 0x544a,
+  0x544b, 0x54df, 0x54e0, 0x54e1, 0x54e2, 0x58c1,
+  /* 0x23 */
+  0x54e3, 0x54e4, 0x54e5, 0x58c0, 0x54e6, 0x54f7, 0x52fd, 0x54e7,
+  0x54e8, 0x54e9, 0x54ea, 0x54eb, 0x580e, 0x5880, 0x5881, 0x58ba,
+  0x58bb, 0x58bc, 0x58bd, 0x593f, 0x5940, 0x5988, 0xfa1f, 0x5b46,
+  0x52fd, 0x5b47, 0x5b48, 0x5c36, 0x5c72, 0x5c96, 0x5d47, 0x5de7,
+  0x5e34, 0x5e35, 0x5e36, 0x5e37, 0x5ee3, 0x5ee4, 0x5ee5, 0x5eeb,
+  0x0175, 0x5ee6, 0x5ee7, 0x5ee8, 0x52fd, 0x52fd, 0x64b9, 0x1de8,
+  0x64ba, 0x1e5b, 0x6563, 0x6564, 0x52fd, 0x6565, 0x52fd, 0x6566,
+  0x657c, 0x6567, 0xfa5a, 0x6859, 0x68e9, 0x68ea, 0x68eb, 0x68ec,
+  0x68ed, 0x68ee, 0x68ef, 0x69bf, 0x69cb, 0x69c3, 0x69d5, 0x69c4,
+  0x69c5, 0x69d3, 0x69c6, 0x69c7, 0x69c8, 0x69c9, 0x69ca, 0x6c4a,
+  0x52fd, 0x6cd1, 0x6e61, 0x6f37, 0x52fd, 0x7064, 0x7066, 0x2299,
+  0x7067, 0x7068, 0x7069, 0x2297, 0x7073, 0x706a,
+  /* 0x24 */
+  0x706b, 0x2862, 0x52fd, 0x7372, 0x043c, 0x74b9, 0x761c, 0x7636,
+  0x76bc, 0x76be, 0x76bf, 0x76c0, 0x7787, 0x78dc, 0x78dd, 0x78f5,
+  0x78de, 0x78df, 0xfa9e, 0x78e0, 0x78e1, 0x78e2, 0x7d2c, 0x7d2d,
+  0x25a4, 0x7da9, 0x7d9c, 0x7d9d, 0x7d9e, 0x7d9f, 0x7da0, 0x7da1,
+  0x7da2, 0x52fd, 0x7da3, 0x7da4, 0x7da7, 0x8342, 0x8393, 0x8451,
+  0x52fd, 0x8452, 0x8444, 0x8453, 0x8622, 0x86c6, 0x86c7, 0x86c9,
+  0xfadd, 0x86ca, 0x2866, 0x86c8, 0x8e24, 0x8e25, 0x8e26, 0x52fd,
+  0x8e27, 0x8e28, 0x52fd, 0x8f58, 0xfafb, 0x8fa7, 0x8f88, 0x8f89,
+  0x8fa5, 0x8fa8, 0x8fa9, 0x8faa, 0x8fab, 0x8fac, 0x8fad, 0x2da3,
+  0x8f79, 0x52fd, 0x9494, 0x9495, 0x9496, 0x09a5, 0x52fd, 0x9497,
+  0x307f, 0x9498, 0x984e, 0x984f, 0x9919, 0x52fd, 0x9a41, 0xfb2a,
+  0x9bf7, 0x9f04, 0x9f19, 0x9f17, 0xa340, 0xa3ec,
+  /* 0x25 */
+  0xa71b, 0xa71c, 0x36f6, 0xa90e, 0xaa52, 0xadd8, 0xb126, 0xb574,
+  0x52fd, 0xb575, 0xbcc6, 0xbe0b, 0xbe0c, 0xbe0d, 0xbe0e, 0xbe0f,
+  0xbe10, 0x45c8, 0xd759, 0xd75a, 0xd983, 0xd984, 0xd985, 0x52fd,
+  0x4af5, 0xe120, 0xe121, 0xe122, 0xe123, 0xe124, 0xe129, 0x53f4,
+  0x52fd, 0x688f, 0x5451, 0x17ab, 0x5517, 0x5518, 0x555b, 0x5519,
+  0x551a, 0x0053, 0x551b, 0x551c, 0x551d, 0x551e, 0x551f, 0x5520,
+  0x5521, 0x578b, 0x5788, 0x222d, 0x5885, 0xb587, 0x58c7, 0x594c,
+  0x594d, 0x59fc, 0x59fd, 0x59fe, 0x59ff, 0x52fd, 0x52fd, 0x5b56,
+  0x5b57, 0x5b58, 0x5b59, 0x5bdc, 0x5bdd, 0x5c73, 0x5c9d, 0x5ca1,
+  0x5c9e, 0x5c9f, 0x5ca0, 0x5ce6, 0x5d51, 0x5d52, 0x5e3d, 0x5f22,
+  0x1b9c, 0x5f23, 0x5f24, 0x5f25, 0x5f26, 0x5f27, 0x5f28, 0x5f29,
+  0x5f2a, 0x5f2b, 0x52fd, 0x5f40, 0x5f2c, 0x5f2d,
+  /* 0x26 */
+  0x5f2e, 0x5f2f, 0x5f30, 0x64d0, 0x65a8, 0x6594, 0x6595, 0x6596,
+  0x6597, 0x6598, 0x659c, 0x659b, 0x52fd, 0x65a1, 0x65a0, 0x6599,
+  0x659a, 0x65a7, 0x1e88, 0x6864, 0x52fd, 0x6900, 0x6901, 0x52fd,
+  0x52fd, 0x69e5, 0x69e9, 0x69fb, 0x69fc, 0x69ea, 0x69eb, 0x69ec,
+  0x69ed, 0x69ee, 0x69ef, 0x69fa, 0x69f0, 0x69f1, 0x69f2, 0x69f3,
+  0x69f4, 0x6c52, 0x6c53, 0x6c54, 0x6c55, 0x6c58, 0x6c56, 0x52fd,
+  0x6cdd, 0x6cde, 0x6ce3, 0x6cdf, 0x6ce0, 0x6e22, 0x6e23, 0x6e68,
+  0x6edf, 0x00ac, 0x6f44, 0x7094, 0x7095, 0x7096, 0x7097, 0x7098,
+  0x7099, 0xfa79, 0x709a, 0x709b, 0x709d, 0x709e, 0x709f, 0x70a0,
+  0x72f3, 0x72f2, 0x731f, 0x7388, 0x748f, 0x7490, 0x52fd, 0x74fd,
+  0x74fe, 0x74ff, 0x7500, 0x7501, 0x791a, 0x52fd, 0x78e3, 0x78e4,
+  0x78e5, 0x78e6, 0x78e7, 0x78eb, 0x78e8, 0x78e9,
+  /* 0x27 */
+  0x78ea, 0x791d, 0x7ca4, 0x7ca3, 0x7dd4, 0x7dc6, 0x7dc7, 0x7dc8,
+  0x7dc9, 0x7dca, 0x7dcb, 0x7dcc, 0x7dcd, 0x05de, 0x7dce, 0x25c3,
+  0x81b8, 0x81b9, 0x81ba, 0x836e, 0x83db, 0x83dc, 0x8468, 0x8469,
+  0x846a, 0x846b, 0x846c, 0x846d, 0x846e, 0x2719, 0x8624, 0x8625,
+  0x52fd, 0x8700, 0x86e5, 0x86f9, 0x86e7, 0x86e8, 0x86e9, 0x86fe,
+  0x86ea, 0x86eb, 0x86ec, 0x0749, 0x86ed, 0x28a1, 0x86ee, 0x28a6,
+  0x86ef, 0x52fd, 0x8717, 0x86f0, 0x86f1, 0x8b94, 0x8c5b, 0x8c5c,
+  0x8c5d, 0x8e2f, 0x0891, 0x8e30, 0x8e31, 0x8e32, 0x8e33, 0x8fcc,
+  0x8fcd, 0x8fce, 0x8fae, 0x8faf, 0x8fb0, 0x08d3, 0x8fcf, 0x8fd0,
+  0x8fd1, 0x8fd2, 0x8fd3, 0x52fd, 0x8fd4, 0x09a9, 0x94a6, 0x94a7,
+  0x94a8, 0x94b0, 0x94a9, 0x94aa, 0x94ab, 0x94ac, 0x94ad, 0x97fb,
+  0x97fc, 0x52fd, 0x992d, 0x992e, 0x9950, 0x992f,
+  /* 0x28 */
+  0x9930, 0x9a65, 0x9be6, 0x9c0c, 0x9c02, 0x9c03, 0x9c04, 0x9c05,
+  0x9c06, 0x52fd, 0x9ec0, 0x9f24, 0x9f25, 0xa016, 0xa032, 0xa720,
+  0xa721, 0xa722, 0xa723, 0x36fe, 0xa725, 0xa919, 0xa924, 0xa91a,
+  0xa91b, 0xa91c, 0xa91d, 0xfb52, 0xa91e, 0xaa5a, 0xaa5b, 0xaa5c,
+  0xaa5d, 0xaa5e, 0xac31, 0x52fd, 0xb129, 0x52fd, 0xb288, 0xb289,
+  0xb589, 0x3d57, 0xb656, 0xb7d1, 0xb7e6, 0xb832, 0xb833, 0xb952,
+  0xb953, 0x0ed5, 0xb954, 0xb955, 0x52fd, 0x52fd, 0xbe29, 0xbe2a,
+  0xbe2b, 0xbe2c, 0xbe2d, 0xfb92, 0xbe2e, 0xbe2f, 0xbe30, 0xbe31,
+  0xbe32, 0xbe33, 0x3ec5, 0xbe34, 0xc49b, 0xc523, 0xc524, 0x52fd,
+  0xc525, 0xc527, 0xc916, 0xcfa0, 0xd76f, 0x45df, 0xd770, 0xd771,
+  0x45dc, 0x138c, 0xd772, 0xd773, 0xd774, 0xd99c, 0xd9aa, 0xd99d,
+  0xd99e, 0x0c99, 0xd9ab, 0xd99f, 0xe135, 0xe138,
+  /* 0x29 */
+  0xf68d, 0x5335, 0x5336, 0xadee, 0x53b4, 0xf9c9, 0x5432, 0x5455,
+  0x5544, 0x5545, 0x5546, 0x5547, 0x17e4, 0x5548, 0x5549, 0x52fd,
+  0x554a, 0x554b, 0x554c, 0x554d, 0x554e, 0x554f, 0x5550, 0x5551,
+  0xb599, 0x58d1, 0x52fd, 0x58d2, 0x58d3, 0x58d4, 0x58d5, 0x5a21,
+  0x5a22, 0x5a23, 0x5b68, 0x5b69, 0x5b6a, 0x5be2, 0x5c45, 0x5cec,
+  0x5ced, 0x5cee, 0x5cef, 0x52fd, 0x5d62, 0x5d63, 0x5df4, 0x536f,
+  0x5e44, 0x5e45, 0x5f79, 0x1c1b, 0x5f7a, 0x5f7b, 0x5f7c, 0x5f7d,
+  0x5f7e, 0x5f7f, 0x5f80, 0x0188, 0x52fd, 0x5f81, 0x5f82, 0x5f83,
+  0x5f84, 0x5f85, 0x5f86, 0x5f87, 0x5f8f, 0x5f88, 0x5f89, 0x65c5,
+  0x65c6, 0x1eaa, 0x65c7, 0x65c8, 0x65c9, 0x65ca, 0x65cb, 0x65cc,
+  0x1eab, 0x65cd, 0x65ce, 0x65e3, 0x65cf, 0x65d0, 0x65d1, 0x65d2,
+  0x65d3, 0x65c4, 0x65d4, 0x65d5, 0x65d6, 0x6820,
+  /* 0x2a */
+  0x6821, 0x691a, 0x6912, 0x6914, 0x6915, 0x6916, 0x6919, 0x6917,
+  0x6918, 0x02c9, 0xfa61, 0x52fd, 0x6a12, 0x6a13, 0x6a14, 0x6a15,
+  0x6a16, 0x6a17, 0x6a18, 0x6a19, 0x6c61, 0x6c62, 0x6c63, 0x6cf5,
+  0x21a9, 0x6cf6, 0x6cf7, 0x6cf8, 0x6e29, 0x0517, 0x6f5d, 0x6f57,
+  0x6f58, 0x6f59, 0x6f5a, 0x6f5b, 0x70bb, 0x70d1, 0x70bc, 0x70bd,
+  0xbbdf, 0x70d0, 0x70be, 0x70bf, 0x70c0, 0x70c1, 0x70c2, 0x70c3,
+  0x70c4, 0xbe6c, 0x73a1, 0x73a2, 0x73a3, 0x7493, 0x750d, 0x750f,
+  0x750e, 0x7510, 0x7511, 0x7512, 0xfa95, 0x77e5, 0x792f, 0x52fd,
+  0x7957, 0x7930, 0x7968, 0x792b, 0x7931, 0x7958, 0xfaa2, 0x7932,
+  0x7959, 0x52fd, 0x795a, 0x7933, 0x795b, 0x795c, 0x795d, 0x791e,
+  0x7cae, 0x7caf, 0x7d3b, 0x7d3c, 0x7d3d, 0x7e07, 0x7e08, 0x7e09,
+  0x7e0a, 0x7e0b, 0x7e0c, 0x7e0d, 0x7e0e, 0x7e0f,
+  /* 0x2b */
+  0x7e10, 0x7e22, 0x7e11, 0x7e12, 0x7e13, 0x7e14, 0x7e15, 0x7e16,
+  0x7e17, 0x7e18, 0xfab8, 0x52fd, 0x8346, 0x8347, 0x8348, 0x83e1,
+  0x8481, 0x8483, 0x5f75, 0x52fd, 0x8485, 0x8486, 0x862a, 0xfad1,
+  0x862b, 0x866b, 0x8718, 0x8719, 0x871a, 0x52fd, 0x871b, 0x871c,
+  0x871d, 0x871e, 0x871f, 0x8720, 0x8721, 0x8722, 0x8723, 0x2911,
+  0x8724, 0x8725, 0x8726, 0x8727, 0x8728, 0x8729, 0x872a, 0x8cef,
+  0x8e49, 0x8e4a, 0x8e4b, 0x8e4c, 0x8e4d, 0x8e4e, 0x8e4f, 0x8e50,
+  0x8e51, 0x8e52, 0x8e53, 0x8e54, 0x8e5a, 0x8e55, 0x8f5f, 0x9002,
+  0x9003, 0x9004, 0x9005, 0x8fd5, 0x9006, 0x9007, 0x8fd6, 0x9008,
+  0x9009, 0x900a, 0x900b, 0x8fd7, 0x900c, 0x900d, 0x94c8, 0x94c9,
+  0x94ca, 0x94cb, 0x94cc, 0x94cd, 0x94ce, 0x94cf, 0x94d0, 0x94d1,
+  0x94d2, 0x3451, 0x94d3, 0x94d4, 0x94d5, 0x94d6,
+  /* 0x2c */
+  0x94d7, 0x94e2, 0x94d8, 0x9804, 0x9805, 0x9806, 0x52fd, 0x9943,
+  0x9944, 0x9a84, 0x9a8f, 0x9a85, 0x9a86, 0x9c2f, 0x9c1a, 0x9c1b,
+  0x9c1c, 0x0abd, 0x9c1d, 0x9c1e, 0x9c1f, 0x9c20, 0x9c21, 0x9c22,
+  0xfb2c, 0x9c23, 0x9c24, 0x9c0e, 0x9c25, 0x9c2b, 0x9c2c, 0x9c0b,
+  0x9dee, 0x52fd, 0x9ec3, 0x9ed8, 0x9ed9, 0x9f38, 0x9f39, 0x9f3a,
+  0x9f3b, 0x3453, 0x9f3c, 0x9f3d, 0x9f3e, 0x9f3f, 0x9f40, 0xa048,
+  0xa04c, 0xa228, 0xa251, 0xa252, 0xa34c, 0xa423, 0xfb45, 0xa424,
+  0xa731, 0xa732, 0xa733, 0x3718, 0xa734, 0xa735, 0xa736, 0xa740,
+  0xa737, 0x52fd, 0xa738, 0xa73d, 0xa938, 0xa939, 0xa93a, 0xa93b,
+  0xa93c, 0xa94c, 0xaa73, 0xaa74, 0x0d33, 0xaa75, 0xaa76, 0xaa79,
+  0xac41, 0xac42, 0xac43, 0xad5b, 0x52fd, 0x39d7, 0x8ba6, 0xad5c,
+  0xade5, 0xade6, 0xade7, 0xade8, 0xaded, 0xb130,
+  /* 0x2d */
+  0x3b7e, 0xb131, 0xb294, 0xb651, 0xb6fd, 0xb6fe, 0xb7e9, 0x52fd,
+  0xb9b3, 0xb984, 0xb994, 0x52fd, 0xb99c, 0x52fd, 0xb985, 0xbc00,
+  0xbc37, 0xbc57, 0xbe54, 0xbe68, 0xbe55, 0xbe5c, 0xbe56, 0xbe57,
+  0xbe58, 0xbe59, 0xbe5a, 0xbe5b, 0xc534, 0x407e, 0xc535, 0x52fd,
+  0xc539, 0xc536, 0xc537, 0xc538, 0xc8e5, 0xc959, 0x52fd, 0xc93a,
+  0xc93b, 0xd028, 0xd189, 0x52fd, 0xd18a, 0xd18b, 0xd18c, 0xd18d,
+  0xd2bc, 0xd5a3, 0x1344, 0xd5a4, 0xd793, 0xd794, 0xd795, 0xd796,
+  0xd797, 0xd9b9, 0xe14f, 0xe150, 0xe151, 0xe376, 0x52fd, 0x53fb,
+  0x5383, 0x5438, 0x545d, 0x5571, 0x52fd, 0x5577, 0x5578, 0xfa07,
+  0x55c3, 0x5579, 0x557a, 0x557b, 0x557c, 0x5572, 0x557d, 0x55a0,
+  0x557e, 0x557f, 0x5580, 0x5581, 0x5582, 0x5583, 0x559e, 0x5584,
+  0x5585, 0x5586, 0x5587, 0x5588, 0x5793, 0x5794,
+  /* 0x2e */
+  0x5795, 0x57ef, 0x57f0, 0x52fd, 0x588d, 0x588f, 0x5890, 0x5891,
+  0x5892, 0x58de, 0x58e1, 0x5953, 0x1966, 0x5a4a, 0x5a4b, 0x5a4c,
+  0x5a51, 0x5a4d, 0x5a48, 0x5b74, 0x5b75, 0x5c20, 0x5c21, 0x5ca5,
+  0x5ca6, 0x5d73, 0x5d74, 0x5e50, 0x5e51, 0x5e52, 0x5e53, 0x5fdb,
+  0x5fdc, 0x1c20, 0x5fdd, 0x5fde, 0x5fff, 0x52fd, 0x52fd, 0x5fdf,
+  0x5fe0, 0x1c21, 0x5fe1, 0x5fe2, 0x5fe3, 0x5fe4, 0x5fe5, 0x5fe6,
+  0x5fe7, 0x5fe8, 0x5fe9, 0x5fea, 0x6607, 0x6608, 0x6609, 0x660a,
+  0x660b, 0x660c, 0x660d, 0x1ed7, 0x661a, 0x660e, 0x660f, 0x6610,
+  0x661c, 0x6827, 0x6866, 0x6898, 0x6899, 0x6933, 0x6924, 0x6925,
+  0x6926, 0x52fd, 0x02e1, 0x6a3e, 0xfa64, 0x6a3f, 0x6a57, 0x6a40,
+  0x6a41, 0x6a58, 0x6a42, 0x6a43, 0x6a44, 0x6a45, 0x6a46, 0x02e2,
+  0x6a47, 0x6c6b, 0x6c6c, 0x6d10, 0x6d11, 0x21be,
+  /* 0x2f */
+  0x6e75, 0x6eef, 0x6f6a, 0x6f6b, 0x52fd, 0x6f6c, 0x6f6d, 0x6f6e,
+  0x70ef, 0x70f0, 0x70f1, 0x70f2, 0x70f3, 0x70f4, 0x70f5, 0x70ff,
+  0x70f6, 0x7102, 0x70f7, 0x7322, 0x73c4, 0x73c3, 0x7528, 0x047c,
+  0x7620, 0x7625, 0x7622, 0x7623, 0x76eb, 0x04e3, 0x77f9, 0x77fa,
+  0x7999, 0x799a, 0x799b, 0x7963, 0x52fd, 0x795e, 0x795f, 0x7960,
+  0x799c, 0x7961, 0x799d, 0x7e54, 0x7e55, 0x7e56, 0x7e57, 0x7e58,
+  0x7e59, 0x7e5a, 0x7e19, 0x7e6a, 0x7e5b, 0x7e5c, 0x7e5d, 0x7e66,
+  0x52fd, 0x7e5e, 0x7e5f, 0x7e1a, 0x7e60, 0x7e61, 0x52fd, 0x7e62,
+  0x7e1b, 0x7e63, 0xb710, 0xb711, 0x834c, 0x839b, 0x83eb, 0x83ec,
+  0x83ed, 0x83ee, 0x84a3, 0x84a8, 0x84a6, 0x06ec, 0x862f, 0x8630,
+  0x8631, 0x8632, 0x8633, 0x874f, 0x8751, 0x8752, 0x877d, 0x8753,
+  0x8754, 0x8755, 0x8756, 0x8757, 0x8758, 0x8759,
+  /* 0x30 */
+  0x875a, 0x875b, 0x875c, 0x2957, 0x875d, 0x875e, 0x875f, 0x876f,
+  0x8760, 0x8761, 0x8762, 0x8763, 0x8772, 0x8764, 0x52fd, 0x876e,
+  0x8bb5, 0x8e65, 0x8e66, 0x8e67, 0x8e68, 0x8e69, 0x8e6a, 0x8e6b,
+  0x8e6c, 0x900e, 0x9043, 0x52fd, 0x900f, 0x9044, 0x9045, 0x9046,
+  0x9047, 0x9048, 0x9049, 0x9010, 0x904a, 0x904b, 0x904c, 0x904d,
+  0x08df, 0x904e, 0x904f, 0x9050, 0x9051, 0x9052, 0x9053, 0x9054,
+  0x9055, 0x9056, 0x9057, 0x9058, 0x9059, 0x905a, 0x901d, 0x905b,
+  0x905c, 0x905d, 0xfb06, 0x52fd, 0x94fe, 0x94ff, 0x9500, 0x9501,
+  0x9502, 0x9503, 0x9504, 0x9505, 0x9506, 0x9507, 0x9518, 0x9508,
+  0x9509, 0x94f3, 0x950a, 0x950b, 0x951b, 0x950c, 0x950d, 0x950e,
+  0x950f, 0x9510, 0x980f, 0x9861, 0x9879, 0x9ac1, 0x9aac, 0x9aad,
+  0x9c43, 0x9c44, 0x9c45, 0x9c46, 0x9c47, 0x9c48,
+  /* 0x31 */
+  0x9c49, 0x9c64, 0x9c4a, 0x9c4b, 0x9c4c, 0x9c4d, 0x0ac7, 0xfb2d,
+  0x9e39, 0x9f57, 0x9f58, 0x9f59, 0x9f5f, 0x9f5a, 0xa06a, 0xa22b,
+  0xa25d, 0xa25e, 0xa25f, 0x52fd, 0xa260, 0xa261, 0xa358, 0xa359,
+  0xa44a, 0xa44b, 0xa44c, 0xa44d, 0xa44e, 0xa757, 0xa6b3, 0xa6b4,
+  0xa76e, 0xa75b, 0xa75c, 0x52fd, 0xa75d, 0xa75e, 0x52fd, 0xa76c,
+  0xa93d, 0xa954, 0xa93e, 0xa955, 0xa956, 0xa93f, 0xa957, 0xa958,
+  0xa959, 0xa95a, 0xa95b, 0xa95c, 0xaa88, 0xaa89, 0x52fd, 0xac58,
+  0xac59, 0xac5a, 0x52fd, 0xad67, 0xad68, 0xad69, 0xad6a, 0x52fd,
+  0xad6b, 0xad6c, 0xadfe, 0xadff, 0xae00, 0xae01, 0xae02, 0xae03,
+  0xae04, 0xae05, 0xb139, 0xb13a, 0xb13b, 0xb13c, 0x52fd, 0x52fd,
+  0xb2b2, 0xb2b3, 0xb2b4, 0xb2b5, 0xb2b6, 0xb2b7, 0xb2b8, 0x3d3c,
+  0xb5a2, 0xb661, 0xb662, 0xb714, 0x52fd, 0xb7eb,
+  /* 0x32 */
+  0xb842, 0xb848, 0x52fd, 0xb843, 0xb84e, 0xb844, 0xb845, 0xb9b4,
+  0xb9b5, 0x52fd, 0x52fd, 0x52fd, 0xb9b6, 0x52fd, 0xbbe1, 0xbc05,
+  0x52fd, 0x3e73, 0xbe9a, 0x52fd, 0xbe9b, 0xbe9c, 0xbe9d, 0xbe9e,
+  0xbe9f, 0xfb9a, 0xbea0, 0xbea1, 0xbea2, 0xbeb5, 0xbea3, 0xbea4,
+  0x52fd, 0xbea5, 0xbea6, 0xbea7, 0xbea8, 0xbeaf, 0xbea9, 0xbeaa,
+  0xbeab, 0xbeac, 0xbead, 0xbeb3, 0x52fd, 0xc4a0, 0xc556, 0xc934,
+  0x1127, 0xc93c, 0xcb0c, 0x52fd, 0xcf3e, 0xcfa3, 0xd030, 0xd031,
+  0xd197, 0xd198, 0xd199, 0xd19a, 0xd19b, 0xd5b2, 0xd5ab, 0xd5ac,
+  0xd9fc, 0xd9e8, 0xd9e9, 0xd9ea, 0xdaf1, 0xdc3f, 0xdfce, 0xe16d,
+  0xe16e, 0xe16f, 0xe170, 0xe171, 0xe172, 0xe173, 0x4bbe, 0xe378,
+  0xeb3a, 0x5467, 0x27fa, 0x5464, 0x5465, 0x5607, 0x55c4, 0x55c5,
+  0x55c6, 0x55c7, 0x55c8, 0x55c9, 0x55e5, 0x55ca,
+  /* 0x33 */
+  0x55cb, 0x52fd, 0x55cc, 0x55cd, 0x55ce, 0x55cf, 0x55d0, 0x5797,
+  0x579a, 0x579b, 0x58ea, 0x58ec, 0x58ed, 0x58f7, 0x58ee, 0x58ef,
+  0x595b, 0x595c, 0x595d, 0x5a6d, 0x5a6e, 0x52fd, 0x5a6f, 0x5b81,
+  0x5b82, 0x5c4f, 0x5cad, 0xda0a, 0x5d7e, 0x5e69, 0x6054, 0x6055,
+  0x6056, 0x6057, 0x01ab, 0x6058, 0x6059, 0x605a, 0x605b, 0x605c,
+  0x605d, 0x52fd, 0x52fd, 0x605e, 0x605f, 0x663b, 0x6636, 0x663c,
+  0x663d, 0x663e, 0x663f, 0x6640, 0x6641, 0x6642, 0x024b, 0x6643,
+  0x6644, 0x6645, 0x6637, 0x52fd, 0x52fd, 0x6646, 0x6647, 0x6648,
+  0x6649, 0x682d, 0x68a5, 0x693d, 0x693f, 0x6c6e, 0x6ae7, 0x6a75,
+  0x6a76, 0x6a77, 0x6a78, 0x6a79, 0x6a7a, 0x6a7b, 0x6a7c, 0x6a8e,
+  0x6a7d, 0x6a7e, 0x2072, 0x6a7f, 0x6a80, 0x6a81, 0x6a82, 0x6a83,
+  0x6a84, 0x6a85, 0x6a86, 0x6a87, 0x6a88, 0x6a89,
+  /* 0x34 */
+  0x6a8a, 0x6a8b, 0x6a8c, 0x6c6f, 0x6c70, 0x6c71, 0x6c72, 0x6d2a,
+  0x6d2b, 0x6d2c, 0x6d2d, 0x6d2e, 0x6d2f, 0x6d30, 0x6d31, 0x6e83,
+  0x6f84, 0x6f85, 0x6f93, 0x52fd, 0x6f86, 0x6f87, 0x6f88, 0x6f89,
+  0x6f8a, 0x6f8b, 0x7136, 0x7138, 0x7139, 0x713a, 0x03e2, 0x713b,
+  0x713c, 0x713d, 0x713e, 0x713f, 0x52fd, 0x7140, 0x7141, 0x7142,
+  0x73de, 0x73df, 0x73e0, 0x73e1, 0x754a, 0x754b, 0x754c, 0x754d,
+  0x754e, 0x754f, 0x7550, 0x7627, 0x76f9, 0x76fa, 0x76fb, 0x7798,
+  0x7799, 0x779a, 0x52fd, 0x781e, 0x799e, 0x79f7, 0x799f, 0x79a0,
+  0x79f0, 0x79f8, 0x79f9, 0x79a1, 0x79a2, 0x79a3, 0x79a4, 0x79a5,
+  0x79fa, 0x79fb, 0x79fc, 0x79fd, 0x79fe, 0x7a1f, 0x79ff, 0x7a00,
+  0x7a8c, 0x7a01, 0x7cc2, 0x7cc3, 0x52fd, 0x7cd3, 0x7d4e, 0x7eaf,
+  0x7eb0, 0x7eb1, 0x7eb2, 0x7eb3, 0x7ec6, 0x7eb4,
+  /* 0x35 */
+  0x52fd, 0x7eb5, 0x7eb6, 0x7eb7, 0x7eb8, 0x7eb9, 0x7eba, 0x7ebb,
+  0x7ebc, 0x7ebd, 0x7ebe, 0x7ebf, 0x7ec1, 0x7ec0, 0x7ec2, 0x7ec3,
+  0x8251, 0x8252, 0x8253, 0x8254, 0x8255, 0x835a, 0x8350, 0x8351,
+  0x8378, 0x83f8, 0x83f9, 0x84c6, 0x84cb, 0x84cc, 0x84cd, 0x84ce,
+  0x84cf, 0x84d0, 0x84d1, 0x84d2, 0x84d3, 0x84d4, 0x84d5, 0x52fd,
+  0x8637, 0x8638, 0x8673, 0x8790, 0x8791, 0x87bf, 0x8792, 0x8793,
+  0x8794, 0x8795, 0x8796, 0x8797, 0x8798, 0x8799, 0x29bd, 0x879a,
+  0x879b, 0x879c, 0x879d, 0x879e, 0x879f, 0x87a0, 0x87a1, 0x87a2,
+  0x87a3, 0x87a4, 0x87a5, 0x52fd, 0x87a6, 0x87a7, 0x8bbf, 0x8bc0,
+  0x8bc1, 0x8bc2, 0x8bc3, 0x8bc4, 0x8bc5, 0x8bc6, 0x8c75, 0x8d43,
+  0x8d12, 0x8d9f, 0x8d91, 0xfaf6, 0x8d92, 0x8d93, 0x8d94, 0x8e7e,
+  0x8e7f, 0x8e80, 0x8e81, 0x8e82, 0x8f4c, 0x8f63,
+  /* 0x36 */
+  0x90c0, 0x90c1, 0x90c2, 0x953a, 0x90c3, 0x90c4, 0x90c5, 0x90c6,
+  0x2e15, 0x90c7, 0x52fd, 0x90c8, 0x9073, 0x90c9, 0x90ca, 0x90cb,
+  0x90cc, 0x90cd, 0x090e, 0x52fd, 0x52fd, 0x90ce, 0x90cf, 0x90d0,
+  0x90d1, 0x90d2, 0x90d3, 0x90d4, 0x90d5, 0x953b, 0x953c, 0x953d,
+  0x953e, 0x52fd, 0x953f, 0x9540, 0x9541, 0x9542, 0x9543, 0x09c1,
+  0x9544, 0x9545, 0x9559, 0x9546, 0x9547, 0x9548, 0x52fd, 0x9549,
+  0x9813, 0x9882, 0x9883, 0x9966, 0x9967, 0x9c65, 0x3313, 0x9c66,
+  0x0ad9, 0x9c75, 0x9c74, 0x9c67, 0x9c6d, 0x9c76, 0x9c68, 0x9c69,
+  0x9c6a, 0x9c6b, 0x9c4f, 0x9c6c, 0x9df8, 0x9e45, 0x33f8, 0x9e46,
+  0x9ee4, 0x9f85, 0x9f6f, 0x9f70, 0xa082, 0xa083, 0xa084, 0xa08b,
+  0xa22d, 0xa268, 0xa269, 0xa277, 0xa264, 0xa26a, 0x52fd, 0xa2f2,
+  0xa2e2, 0xa363, 0xa364, 0xa365, 0xa366, 0x3a3d,
+  /* 0x37 */
+  0xa367, 0xa368, 0x35d8, 0x52fd, 0xa472, 0xa47d, 0xa669, 0xa784,
+  0xa786, 0xa787, 0xa788, 0xa79e, 0x52fd, 0xa789, 0xa78a, 0xa796,
+  0xa78b, 0xa78c, 0xa78d, 0xa979, 0xa983, 0xa97a, 0xa95d, 0xa97b,
+  0x52fd, 0xaa9f, 0x0d48, 0xaaa0, 0xaaa1, 0xaaa2, 0x38fc, 0xac6a,
+  0xac6b, 0xac6c, 0xac6d, 0xac6e, 0xad78, 0x52fd, 0xad79, 0xad7c,
+  0xae21, 0xae22, 0xae23, 0xae24, 0x3a39, 0xae25, 0xae26, 0xb151,
+  0xb152, 0xb156, 0x52fd, 0x3c4b, 0xb2e1, 0x52fd, 0x52fd, 0xb2d6,
+  0xb2d7, 0xb2d8, 0xb2d9, 0xb5b5, 0xb66c, 0xb66f, 0xb670, 0xb7bc,
+  0xb7bd, 0xb7ed, 0xb85b, 0xb85c, 0xb85d, 0xb85e, 0xb986, 0xb987,
+  0xb9ed, 0x52fd, 0xb9ee, 0x52fd, 0xbc0e, 0xbc0f, 0x52fd, 0xbd2d,
+  0xbd2a, 0xbd2e, 0xbdcc, 0xbef9, 0xbefa, 0xbefb, 0xbefc, 0x3fb9,
+  0xbefd, 0xbf1b, 0xbefe, 0xbeff, 0xbf00, 0xbf01,
+  /* 0x38 */
+  0xbf02, 0xbf03, 0xbf21, 0xbf04, 0xbf05, 0xbf06, 0xbf07, 0xbf08,
+  0xbf09, 0xbf0a, 0xbf0b, 0xbf0c, 0xbf0d, 0xbf0e, 0xbf0f, 0xbf10,
+  0xbf11, 0xbf12, 0xbf13, 0xbf14, 0xbf15, 0xc57b, 0xc57c, 0xc57d,
+  0xc57e, 0x40cf, 0xc57f, 0xc580, 0xc566, 0xc581, 0xc582, 0xc583,
+  0xc8b2, 0x52fd, 0xc97f, 0xc972, 0xc95a, 0xcaeb, 0xcb15, 0x52fd,
+  0xcb16, 0xfbca, 0xcb17, 0x52fd, 0xcbc5, 0xcbc6, 0xcbc7, 0xcc88,
+  0xcc89, 0x52fd, 0xcc8a, 0xcc8b, 0xcc8c, 0xcc8d, 0xcedf, 0x52fd,
+  0xd03b, 0xd03c, 0xd03d, 0xd03e, 0xd03f, 0xd040, 0xd041, 0xd042,
+  0xd15c, 0xd1af, 0xd1a9, 0xd1aa, 0xd1ab, 0xd1ac, 0xd1b5, 0xd1ad,
+  0xd1ae, 0xd2e2, 0xd524, 0x44ae, 0xd5c4, 0x52fd, 0xd7ea, 0xd7d3,
+  0xd7d4, 0xd7d5, 0xd986, 0x52fd, 0xd987, 0xd9fd, 0xdb05, 0xdc49,
+  0xdf5f, 0xdfd3, 0xdfd5, 0xe18a, 0xe18b, 0xe18c,
+  /* 0x39 */
+  0xe18d, 0xe18e, 0xe18f, 0xe190, 0xe191, 0xe192, 0xe193, 0xe37d,
+  0xe37e, 0x4beb, 0x52fd, 0x52fd, 0xe4ec, 0xe55b, 0xef87, 0xef86,
+  0x52fd, 0x5346, 0x5347, 0x5402, 0x546d, 0x546e, 0x546f, 0x560d,
+  0x560e, 0x560f, 0x5610, 0x5611, 0x5612, 0x5613, 0x5614, 0x579f,
+  0x57a0, 0x57a1, 0x57a3, 0x5821, 0x5822, 0x867c, 0x5895, 0x5896,
+  0x5961, 0x5967, 0x5a91, 0x5a92, 0x5a93, 0x5a94, 0x5b8a, 0x5b8b,
+  0x5bf7, 0x5c24, 0x5cb0, 0x5cb1, 0x5d8e, 0x5e04, 0x5e6a, 0x5e6b,
+  0x5e6c, 0x5e6d, 0x60e8, 0x610c, 0x60e9, 0x60ea, 0x610d, 0x52fd,
+  0x60eb, 0x60ec, 0x60ed, 0x60ee, 0x60ef, 0x60f0, 0x60f1, 0x60f2,
+  0x6116, 0x60f3, 0x6104, 0x611d, 0x60f4, 0x60f5, 0x60f6, 0x60f7,
+  0x1cb0, 0x6502, 0x6503, 0x6504, 0x669a, 0x667c, 0x66c5, 0x667d,
+  0x667e, 0x667f, 0x6680, 0x6681, 0x1f40, 0x1f42,
+  /* 0x3a */
+  0x6682, 0x6683, 0x6684, 0x6685, 0x6686, 0x6687, 0x68ae, 0x694d,
+  0x6ab0, 0x6adc, 0x6ab6, 0x6ab7, 0x6ab8, 0x6ab9, 0x6aba, 0x6abb,
+  0x6adb, 0x6abc, 0x6abd, 0x6abe, 0x52fd, 0x6abf, 0x6ac0, 0x6ac1,
+  0x6ac2, 0x6ac3, 0x6ace, 0x0301, 0x6ad9, 0x6ac4, 0x6ac5, 0x6ada,
+  0x6ac6, 0x6ac7, 0x6ac8, 0x6ac9, 0x6aca, 0x6c7e, 0x6c7b, 0x6d4e,
+  0x6d4f, 0x6d50, 0x6d51, 0x6d52, 0x6d53, 0x6d54, 0x6d55, 0x6e8f,
+  0x6efc, 0x6fa6, 0x6fa7, 0x6fa8, 0x7023, 0x718b, 0x52fd, 0x718c,
+  0x718d, 0x718e, 0x718f, 0x71a4, 0x5899, 0x7324, 0x7346, 0x7347,
+  0x7348, 0x73fd, 0x73fe, 0x52fd, 0x756e, 0x757c, 0x756f, 0x7570,
+  0x7571, 0x7572, 0x7629, 0x762a, 0x765f, 0x77a2, 0x7830, 0x782b,
+  0x7a61, 0x7a02, 0x7a03, 0x7a04, 0x7a05, 0x7a06, 0x7a07, 0x52fd,
+  0x7a08, 0x7a09, 0x7a62, 0x7a0a, 0x7a0b, 0x7a0c,
+  /* 0x3b */
+  0x7a0d, 0x7a0e, 0x7a63, 0x7a27, 0x7a0f, 0x52fd, 0x7a1b, 0x7a64,
+  0x7a10, 0x7a11, 0x7a81, 0x7a12, 0x7a65, 0x7a13, 0x7cce, 0x7f29,
+  0x7ec4, 0x7f2a, 0x52fd, 0x7f2b, 0x7f2c, 0x7f2d, 0x7f2e, 0x7f2f,
+  0x7f30, 0x7f31, 0x7f32, 0x7f33, 0x7f34, 0x52fd, 0x7f35, 0x7f36,
+  0x7ee3, 0x7f37, 0x7f38, 0x7f39, 0x7f3a, 0x7f3b, 0x7f4d, 0x7f3c,
+  0x7f3d, 0x7f3e, 0x52fd, 0x81d0, 0x81d1, 0x8355, 0x8402, 0x8404,
+  0x84fc, 0x8507, 0x84fd, 0x84fe, 0x52fd, 0x84ff, 0x8500, 0x8508,
+  0x8501, 0x8502, 0x8535, 0x8503, 0x8504, 0x52fd, 0x863b, 0x8689,
+  0x8681, 0x8682, 0xba33, 0x87eb, 0x87ec, 0x52fd, 0x87ed, 0x87ee,
+  0x87ef, 0x52fd, 0x87f0, 0x87f1, 0x87f2, 0x2a2b, 0x87f3, 0x2a16,
+  0x87f4, 0x87f5, 0x534b, 0x87f6, 0x87f7, 0x87f8, 0x87f9, 0x87fa,
+  0x87fb, 0x87fc, 0x87fd, 0x87fe, 0x87ff, 0x8800,
+  /* 0x3c */
+  0x2a1b, 0x8801, 0x8802, 0x8803, 0x8804, 0x8805, 0x8806, 0x8807,
+  0x2a27, 0x8808, 0x8809, 0x880a, 0x880b, 0x880c, 0x880d, 0x8bd7,
+  0x8bd8, 0x8d29, 0x8d9c, 0x8df8, 0x8e98, 0x8ea4, 0x8e99, 0x8e9a,
+  0x8e9b, 0x8e97, 0x8e9c, 0x2cf5, 0x8e9d, 0x52fd, 0x8e9e, 0x8e9f,
+  0x8f65, 0x90d6, 0x0920, 0x9132, 0x9133, 0x9134, 0x2e82, 0x9135,
+  0x9136, 0x9137, 0x90d7, 0x52fd, 0x90d8, 0x9138, 0x9139, 0x913a,
+  0x913b, 0x913c, 0x913d, 0x913e, 0x913f, 0x9140, 0x90d9, 0x9141,
+  0x9142, 0x0921, 0x9143, 0x9144, 0x2e7a, 0x957c, 0x957d, 0x957e,
+  0x957f, 0x9580, 0x9581, 0x9582, 0x52fd, 0x9583, 0x9584, 0x9585,
+  0x9586, 0x95a5, 0x9587, 0x9588, 0x9589, 0x958a, 0x958b, 0x958c,
+  0x958d, 0x958e, 0x52fd, 0x52fd, 0x958f, 0x52fd, 0x9590, 0x9591,
+  0x9592, 0x9593, 0x9594, 0x9595, 0x52fd, 0x3129,
+  /* 0x3d */
+  0x9596, 0x9856, 0x9857, 0x98e1, 0x990e, 0x990f, 0x997a, 0x997b,
+  0x998b, 0x9af2, 0x9af3, 0x9c93, 0x9c94, 0x9c95, 0x9c96, 0x9c97,
+  0x9cad, 0x9c98, 0x9cab, 0x9c7b, 0x9c99, 0x9c9a, 0x9c9b, 0x9c85,
+  0x9c9c, 0x9c9d, 0x0ada, 0x52fd, 0x9cac, 0x9c79, 0x9c9e, 0x9ca4,
+  0x9dfd, 0x9eeb, 0x9eea, 0x9f8f, 0x9f90, 0x9f86, 0x9f87, 0x9f88,
+  0xa0ac, 0xa0ad, 0xa2ec, 0xa373, 0xa374, 0x52fd, 0xa4aa, 0xa4ab,
+  0xa4ac, 0xa6d1, 0xa6d7, 0xa7b9, 0xa7ba, 0xa7bb, 0xa7bc, 0xa98e,
+  0xa98f, 0xa990, 0xa97c, 0xa991, 0xa992, 0xa993, 0xa994, 0xfb54,
+  0xa99a, 0xa995, 0xa996, 0xa997, 0xaabd, 0xaac7, 0xaabe, 0x52fd,
+  0xaabf, 0x52fd, 0xac93, 0x6d5e, 0xad86, 0xad87, 0xad88, 0xad89,
+  0xae41, 0xae42, 0xae43, 0xae44, 0xae45, 0xae46, 0xae4a, 0xae47,
+  0xae48, 0xae49, 0xb16b, 0xb166, 0x52fd, 0xb167,
+  /* 0x3e */
+  0x3bab, 0xb168, 0x3bac, 0x52fd, 0xb2fd, 0xb2fe, 0xb2ff, 0xb300,
+  0xb301, 0xb302, 0xb303, 0xb304, 0xb305, 0xb306, 0xb533, 0xb5c2,
+  0xb5d0, 0xfb74, 0xb695, 0xb696, 0xb735, 0xb736, 0xb867, 0xb868,
+  0xb869, 0xb86a, 0xb872, 0xb86b, 0xb86c, 0xb86d, 0xb86e, 0xb86f,
+  0xba22, 0x52fd, 0x52fd, 0xba23, 0xba41, 0xba24, 0xba25, 0xba26,
+  0xba27, 0xba28, 0xba29, 0xb9b7, 0x52fd, 0x52fd, 0x52fd, 0xbcda,
+  0xbdcf, 0xbdda, 0xbf89, 0xbfb7, 0xbf8a, 0xbf8b, 0xc05e, 0xbf8c,
+  0x52fd, 0xbf8d, 0xbf8e, 0xbf8f, 0xbf90, 0xbf91, 0xbf92, 0xbf93,
+  0xbf94, 0xbfb6, 0xbf95, 0xbf96, 0xbf97, 0x3ff7, 0x52fd, 0xbf98,
+  0xbf99, 0xbf9a, 0x0fea, 0x52fd, 0xbf9b, 0xbfbd, 0xbf9c, 0xbf9d,
+  0xbf9e, 0xbf9f, 0xbfc0, 0xbfa0, 0xbfa1, 0xbfa2, 0xbfa3, 0xbfa4,
+  0xbfa5, 0xbfa6, 0xbfa7, 0xbfa8, 0xbfa9, 0xbfaa,
+  /* 0x3f */
+  0x52fd, 0xc4b4, 0xc4b5, 0xc4b6, 0xc5b9, 0xc5ba, 0xc5bb, 0xc591,
+  0xc5bc, 0xc8ee, 0xc8ef, 0xc996, 0xc997, 0xc973, 0xc998, 0xc999,
+  0xcaed, 0xcaee, 0xcbde, 0xccb0, 0xccb1, 0xccb2, 0xccb3, 0xccb4,
+  0xccb5, 0xccb6, 0xfbce, 0xccb7, 0xcee3, 0xcfb9, 0xd055, 0xd07e,
+  0xd056, 0xd057, 0xd058, 0xd059, 0xd05a, 0x52fd, 0xd1c4, 0xd1c5,
+  0xd1c6, 0xd1c7, 0xd1c8, 0xd1c9, 0xd1ee, 0xd1cf, 0xd1ca, 0xd1cb,
+  0xd1cc, 0xd309, 0xfbda, 0xd303, 0xd52f, 0xd530, 0xd531, 0xd532,
+  0xd80e, 0xd80f, 0xd810, 0xd811, 0xd812, 0x52fd, 0xd813, 0xd814,
+  0xd815, 0xd7ff, 0xda1f, 0xda20, 0xda21, 0xda2d, 0x52fd, 0xdb1b,
+  0xdb1c, 0xdb1d, 0xdb1e, 0xdc53, 0xdc54, 0xdc55, 0xdc56, 0xdc64,
+  0xdc59, 0xdc57, 0x52fd, 0xdc58, 0xdf6b, 0x1489, 0x52fd, 0xdfe7,
+  0xdfe8, 0xdfe9, 0xdfea, 0xdfeb, 0xdfec, 0x4a96,
+  /* 0x40 */
+  0xdfed, 0xe1b1, 0xe1b4, 0x52fd, 0xe38a, 0xe38d, 0xe38c, 0xe4f2,
+  0xe4f3, 0x52fd, 0x7408, 0xe717, 0x15b2, 0xe89f, 0xe9a0, 0x52fd,
+  0xeb6d, 0x837d, 0xf290, 0xf8c4, 0x534c, 0x5474, 0x5475, 0x5476,
+  0x5649, 0x564a, 0x564b, 0x564c, 0x564d, 0x564e, 0x564f, 0x5650,
+  0x5651, 0x5652, 0x5653, 0x5654, 0x5655, 0x5656, 0x57a4, 0x57a9,
+  0x582a, 0x582b, 0x5ab3, 0x5ac1, 0x5b98, 0x5bfb, 0x5bfc, 0x5cbc,
+  0x5d96, 0x5e0a, 0x52fd, 0x61a2, 0x52fd, 0x6181, 0x6182, 0x6183,
+  0x6184, 0x6185, 0x6186, 0x6187, 0x6188, 0x6189, 0x618a, 0x618b,
+  0x618c, 0x1cf1, 0x618d, 0x61d1, 0x6514, 0x66c9, 0x66ca, 0x66cb,
+  0xedfd, 0x66cc, 0x66cd, 0x66ce, 0x66cf, 0x66d0, 0x66d1, 0x66d2,
+  0x66d3, 0x66d4, 0x66d5, 0x6871, 0x534d, 0x6962, 0x6b0e, 0x6afe,
+  0x6aff, 0x6b00, 0x52fd, 0x6b01, 0x6b02, 0x6b03,
+  /* 0x41 */
+  0x6b15, 0x6b04, 0x6b05, 0x52fd, 0x6c87, 0x6c89, 0x6d6e, 0x6d6f,
+  0x6d70, 0x6d71, 0xfa6e, 0x6d72, 0x6d73, 0x6d74, 0x6e9d, 0x6fb8,
+  0x6fb9, 0x6fba, 0x71c2, 0x71c3, 0x71d5, 0x71c4, 0x71c0, 0x71c5,
+  0x71c6, 0x758a, 0x758b, 0x758c, 0x7664, 0xae8c, 0x2441, 0x770d,
+  0x77a8, 0x783b, 0x783c, 0x783d, 0x783e, 0x783f, 0x7840, 0x7a66,
+  0x7acb, 0x7ab7, 0x7ab8, 0x7ab9, 0x7aba, 0x7a67, 0x7abb, 0x7a68,
+  0x7a69, 0x7a6a, 0x7abc, 0x52fd, 0x7cdb, 0x7f81, 0x7f82, 0x7f83,
+  0x7f84, 0x7f85, 0x7f86, 0x7f87, 0x7f88, 0x7f89, 0xfabf, 0x7f8a,
+  0x7f8b, 0x52fd, 0x7f8c, 0x7f8d, 0x7f8e, 0x7f8f, 0x7f90, 0x7fa1,
+  0x7f91, 0x81d6, 0x829f, 0x8358, 0x8385, 0x840b, 0x840c, 0x8537,
+  0x8538, 0xface, 0x8539, 0x853a, 0x853b, 0x853c, 0x853d, 0x853e,
+  0x8540, 0x8541, 0x8542, 0x52fd, 0x8543, 0x868a,
+  /* 0x42 */
+  0x868b, 0x8890, 0x8859, 0x885b, 0x885c, 0x885d, 0x885e, 0x2a8a,
+  0x885f, 0x8860, 0x8861, 0x8862, 0x8863, 0x8864, 0x8893, 0x8865,
+  0x8866, 0x8867, 0x8868, 0x8869, 0x886a, 0x886b, 0x8895, 0x886c,
+  0x886d, 0x886e, 0x886f, 0x2a8c, 0x8870, 0x8871, 0x8872, 0x8873,
+  0x8874, 0x8875, 0x8876, 0x8877, 0x8878, 0x8879, 0x2a80, 0x887a,
+  0x2a7f, 0x887b, 0x88a9, 0x887c, 0x8bf1, 0x8beb, 0x8c8a, 0x8d3d,
+  0x8da6, 0x8da7, 0x8eba, 0x52fd, 0x8ebb, 0x8ebc, 0x8ebd, 0x9191,
+  0x9192, 0x9193, 0x9194, 0x9195, 0x9196, 0x9197, 0x90da, 0x9198,
+  0x9199, 0x919a, 0x52fd, 0x52fd, 0x919b, 0x919c, 0x919d, 0x919e,
+  0x919f, 0x91a0, 0x91bf, 0x91a1, 0x91a2, 0x91a3, 0x91a4, 0x91a5,
+  0x91a6, 0x91a7, 0x915b, 0xfb0d, 0x91a8, 0x95cb, 0x52fd, 0x09da,
+  0x95cc, 0x964f, 0x95cd, 0x95ce, 0x95cf, 0x964e,
+  /* 0x43 */
+  0x95d0, 0x95d1, 0x95d2, 0x52fd, 0x95d3, 0x95d4, 0x95d5, 0x95d6,
+  0x95d7, 0x95d8, 0x95d9, 0x95fa, 0x95da, 0x95db, 0xfb1c, 0x95dc,
+  0x52fd, 0x52fd, 0x95dd, 0x95de, 0x95df, 0x95e0, 0x95e1, 0x95e2,
+  0x95e3, 0x95e4, 0x95e5, 0x09db, 0x95e6, 0x95e7, 0x988e, 0x9998,
+  0x9999, 0x52fd, 0x9b0a, 0x52fd, 0x9b26, 0x9b27, 0x9cbd, 0x9cdf,
+  0x0ae2, 0x9cbe, 0x9cde, 0x9cbf, 0x9cc0, 0x9cc1, 0x9cc2, 0x9c9f,
+  0x9cc3, 0x9cc4, 0x9cc5, 0x9cc6, 0x9cc7, 0x0ae3, 0x9cc8, 0x9cc9,
+  0x9ce3, 0x9cca, 0x9ccb, 0x9ccc, 0x9ccd, 0x9cce, 0x9ccf, 0x9cd0,
+  0x9cd1, 0x9cd2, 0x9cd3, 0xfb2f, 0x9cd4, 0x9e04, 0x9e65, 0x9eee,
+  0x9fa0, 0x9fa1, 0xa0dd, 0xa0de, 0xa283, 0xa2fa, 0xa37f, 0xa380,
+  0xa4e8, 0xa4e9, 0xa4ea, 0x88a6, 0xa6e1, 0x52fd, 0xa7db, 0xa7dc,
+  0xa7dd, 0xa7de, 0xa7df, 0xa7e0, 0xa7e1, 0xa7e2,
+  /* 0x44 */
+  0xa7e3, 0xa7e4, 0xa7e5, 0xa7e6, 0x379c, 0xa7e7, 0xa9b0, 0xa998,
+  0xa9b1, 0xa999, 0xa9b2, 0xa9b3, 0xa9b4, 0xa9b5, 0xa9b6, 0xa9b7,
+  0xa9b8, 0xa9b9, 0xaae2, 0xaae3, 0xaae4, 0xaae5, 0xaae6, 0xaae7,
+  0xaae8, 0xaae9, 0xacad, 0xaccf, 0xacae, 0xacaf, 0xacb0, 0xacb1,
+  0xad92, 0xad93, 0xad94, 0xae79, 0x3a7b, 0xae7a, 0xae7b, 0xae7c,
+  0xae7d, 0xae7e, 0xae7f, 0xae80, 0xae81, 0xae82, 0xae83, 0xae84,
+  0xb197, 0xb184, 0xb185, 0xb189, 0xb186, 0xb187, 0xb32c, 0xb32d,
+  0xb32e, 0xb32f, 0xb330, 0xb331, 0xb332, 0xb333, 0xb334, 0xb335,
+  0xb336, 0xb337, 0xb5d2, 0xb744, 0xb800, 0xb883, 0xb884, 0xfb86,
+  0xba7a, 0xba7b, 0xba7c, 0xba7d, 0xba7e, 0x52fd, 0xba7f, 0xba87,
+  0xba80, 0xbd43, 0xc034, 0x1249, 0xc035, 0xc036, 0xc037, 0xc038,
+  0xc039, 0xc03a, 0xc03b, 0xc03c, 0xc03d, 0xc03e,
+  /* 0x45 */
+  0xc03f, 0xc040, 0xc041, 0xc042, 0xc043, 0xc044, 0xc045, 0xc046,
+  0xc047, 0xc048, 0xc049, 0xc04a, 0x52fd, 0xc04b, 0xc04c, 0xc04d,
+  0xc04e, 0xc5e7, 0xc5e8, 0xc5e9, 0xc5ea, 0xc5eb, 0xc5ec, 0xc5ed,
+  0xc5ee, 0xc8f7, 0xc99a, 0xc9cd, 0xfbc8, 0xc9a3, 0xc9ce, 0xcb31,
+  0xcb32, 0xcb33, 0xcce4, 0x52fd, 0xcce5, 0xcce6, 0xcfc8, 0xd074,
+  0xd075, 0xd076, 0xd077, 0xd078, 0xd079, 0xd07a, 0xd161, 0xd1df,
+  0xd1e0, 0xd1e1, 0xd1e2, 0xd1e3, 0xd1e4, 0xd1e5, 0xd1e6, 0x12f3,
+  0xd331, 0xd53d, 0xd53e, 0xd53f, 0xd5f4, 0xd5f5, 0xd5f6, 0x52fd,
+  0xd717, 0xd841, 0xd842, 0xd843, 0xd844, 0xd845, 0xd846, 0xd847,
+  0xd848, 0xd849, 0xd84a, 0xd84b, 0x46d2, 0xd9ba, 0xda44, 0xdc2a,
+  0xdc6d, 0x4774, 0xfbe7, 0xdc7e, 0xdc6e, 0xdc6f, 0xdc70, 0xdc71,
+  0xdc76, 0xdf79, 0x4aa0, 0x52fd, 0xe004, 0xdff8,
+  /* 0x46 */
+  0xe005, 0xe1da, 0xe1db, 0xe1dc, 0xe1dd, 0xe1de, 0xe1df, 0xe1e0,
+  0xe1e1, 0xe3c5, 0xe39a, 0xe39b, 0xe39c, 0xe4d8, 0xe4d9, 0xe4da,
+  0xe56e, 0x1557, 0xe76b, 0xd083, 0x52fd, 0xe9d6, 0xe9bd, 0x52fd,
+  0x852e, 0xedfc, 0xf053, 0xf0b7, 0xf58c, 0xf68e, 0xf5ff, 0x5376,
+  0x5406, 0x547e, 0x5684, 0x5685, 0x5686, 0x5687, 0x5688, 0x56a7,
+  0x5689, 0x568a, 0x568b, 0x568c, 0x568d, 0x568e, 0x568f, 0x56a3,
+  0x5690, 0x5691, 0x5692, 0x5693, 0x56ac, 0x5694, 0x5695, 0x5696,
+  0x57aa, 0x57ab, 0x589e, 0x18a9, 0x5908, 0x5909, 0x5968, 0x5969,
+  0x596a, 0x599a, 0x5ad9, 0x5ada, 0x5adb, 0x5ba8, 0x5c01, 0x5c28,
+  0x5c77, 0x5cbd, 0x5cbe, 0x6260, 0x5da0, 0x5da2, 0x5e0f, 0x5e85,
+  0x61fe, 0x61ff, 0x6200, 0x6201, 0x6216, 0x6202, 0x6203, 0x6204,
+  0x6205, 0x6206, 0x6207, 0x6208, 0x6222, 0x6209,
+  /* 0x47 */
+  0x620a, 0x620b, 0x620c, 0x6214, 0x6229, 0x616e, 0x620d, 0x620e,
+  0x620f, 0x6210, 0x6211, 0x6212, 0x6213, 0x651b, 0x651c, 0x651d,
+  0x6713, 0x66ff, 0x6700, 0x6701, 0x6702, 0x6703, 0x6704, 0x670a,
+  0x6705, 0x6706, 0x6707, 0x6708, 0x683a, 0x6873, 0x696f, 0x6970,
+  0x6971, 0x5352, 0x52fd, 0x6d9a, 0x6b60, 0xfa69, 0x6b2b, 0x6b24,
+  0x6b2c, 0x6b2d, 0x6b2e, 0x6b2f, 0x6b30, 0x6b31, 0x6b32, 0x6b33,
+  0x6b34, 0x6b35, 0x6b45, 0x6b36, 0x6c92, 0x6c93, 0x6d88, 0x6d89,
+  0x6d8a, 0x6d8b, 0x6e3f, 0x52fd, 0x6fca, 0x71f6, 0x71f7, 0x71f8,
+  0x71f9, 0x742b, 0x52fd, 0x74a4, 0x74ce, 0x52fd, 0x759e, 0x759f,
+  0x75a0, 0x75a1, 0x75a2, 0x75a3, 0x75a4, 0x75a5, 0x75a6, 0x7718,
+  0x7860, 0x7861, 0x7862, 0x7863, 0x7864, 0x7abd, 0x7abe, 0x7b0b,
+  0x7abf, 0x7ac0, 0x52fd, 0x7b0c, 0x7a8d, 0x7b0d,
+  /* 0x48 */
+  0x7b0e, 0x7b5e, 0x7b0f, 0x7b10, 0x7ac1, 0x7b11, 0x52fd, 0x7ac2,
+  0x7cea, 0x7ceb, 0x7fe3, 0x7fe4, 0x7fe5, 0x7fe6, 0x7fe7, 0x7f92,
+  0x804a, 0x52fd, 0x7fe8, 0x7fe9, 0x7fea, 0x8001, 0x7feb, 0x7fec,
+  0x7fef, 0x7fed, 0x7fee, 0x7ff0, 0x7ff1, 0x7ff2, 0x7ff3, 0x7ff4,
+  0x7ff5, 0x7ff6, 0x7ff7, 0x7ff8, 0x7ff9, 0x7ffe, 0x7ffa, 0x7ffb,
+  0x7ffc, 0x8563, 0x8564, 0x8565, 0x8566, 0x8567, 0x8568, 0x890b,
+  0x890d, 0x07bc, 0x890e, 0x890f, 0x07a4, 0x8914, 0x88d4, 0x88d5,
+  0x88d6, 0x88d7, 0x88d8, 0x88d9, 0x88da, 0x88db, 0x88dc, 0x88dd,
+  0x88de, 0x88df, 0x88e0, 0x88e1, 0x88e2, 0x88e3, 0x88e4, 0x88e5,
+  0x88e6, 0x88e7, 0x88e8, 0x88e9, 0x88ea, 0x88eb, 0x88ec, 0x89ec,
+  0x88ed, 0x88ee, 0x88ef, 0x8900, 0x88f0, 0x8c04, 0x52fd, 0x8c05,
+  0xfaf3, 0x8db5, 0xfaf9, 0x8ed6, 0x8ed7, 0x8ed8,
+  /* 0x49 */
+  0x8ed9, 0x91a9, 0x9200, 0x9201, 0x9202, 0x9203, 0x9204, 0x9205,
+  0x9206, 0x923f, 0x9207, 0x9208, 0x9209, 0x920a, 0x91b6, 0x920b,
+  0x920c, 0x52fd, 0x52fd, 0x920d, 0x52fd, 0x920e, 0x920f, 0x9210,
+  0x9211, 0x9212, 0x9235, 0x9213, 0x9214, 0x91aa, 0x52fd, 0x92c1,
+  0x9215, 0x9216, 0x9217, 0x961e, 0x961f, 0x9620, 0x9621, 0x52fd,
+  0x9622, 0x9623, 0x3195, 0x9624, 0x9625, 0x9626, 0x9627, 0x9628,
+  0x9629, 0x962a, 0x962b, 0x9607, 0x962c, 0x962d, 0x962e, 0x09e8,
+  0x52fd, 0x962f, 0x9630, 0x9648, 0x9631, 0x9632, 0x3198, 0x9633,
+  0x52fd, 0x9634, 0x9635, 0x9636, 0x9859, 0x9891, 0x98e7, 0x99b8,
+  0x99b9, 0x99ba, 0x99bb, 0x99c8, 0x9b4d, 0x9b89, 0x9b50, 0x9b28,
+  0x9cfb, 0x9cfc, 0x9cfd, 0x9cfe, 0x9cff, 0x3378, 0x9d00, 0x9d01,
+  0x9d02, 0x9ce4, 0x9ce5, 0x9d03, 0x9d04, 0x9d05,
+  /* 0x4a */
+  0x9d06, 0x9d07, 0x9d13, 0x9d08, 0x9d09, 0x9ce6, 0x9d0a, 0x9d0b,
+  0x9d0c, 0x9e0b, 0x9ef4, 0x9f0a, 0x9fb1, 0xa11d, 0xfb3b, 0xa28b,
+  0xa28c, 0xa28f, 0xa28d, 0xa28e, 0xa306, 0xa386, 0xa522, 0xa523,
+  0xa524, 0xa525, 0xa526, 0xa527, 0xa528, 0xa6f1, 0x37b9, 0xa823,
+  0xa812, 0x52fd, 0xa813, 0xa814, 0xa815, 0xa816, 0xa817, 0xa818,
+  0xa819, 0xa84b, 0xa81a, 0xa81b, 0xa81c, 0x52fd, 0xa81d, 0xa81e,
+  0xa81f, 0xa820, 0xa9ca, 0x75ac, 0xa9cb, 0xa9cc, 0xa9cd, 0xa9ce,
+  0x52fd, 0xa9cf, 0xab10, 0xab11, 0xab12, 0xab13, 0xab14, 0xab0f,
+  0xab15, 0xab16, 0xab17, 0x3933, 0xab18, 0xacc6, 0xad9f, 0xada0,
+  0xada4, 0xada1, 0xaeb5, 0xaeb6, 0xaeb7, 0xaeb8, 0xaeb9, 0xaeba,
+  0xaed0, 0xaec6, 0xaebb, 0xaebc, 0xaebd, 0xaebe, 0xaebf, 0xaec0,
+  0xaec1, 0xaec2, 0xfb60, 0xb1a7, 0xb1a8, 0xb1a9,
+  /* 0x4b */
+  0xb1aa, 0xb1ab, 0xb1ac, 0xb1bc, 0xb1ad, 0xb1ae, 0x3bc0, 0xb1af,
+  0xb1b0, 0xb1b1, 0x3bc1, 0xb1b4, 0xb1b2, 0xb366, 0xb367, 0xb368,
+  0xb369, 0xb36a, 0xb36b, 0xb36c, 0xb36d, 0xb36e, 0xb36f, 0x52fd,
+  0xb53e, 0xb53f, 0xb540, 0xb5e8, 0xb752, 0xb753, 0xb754, 0xb755,
+  0xb891, 0xb892, 0xb893, 0xb894, 0xb895, 0xb896, 0xb897, 0xb898,
+  0x52fd, 0xb899, 0xb89a, 0xb89b, 0xbab7, 0xbab8, 0xbab9, 0x52fd,
+  0xbaba, 0xbabb, 0xbabd, 0x52fd, 0xbabc, 0xfb88, 0xfb87, 0xbbeb,
+  0xbbec, 0xbc16, 0xbc44, 0xbce3, 0xbd58, 0xbd53, 0xbd54, 0xbde0,
+  0xc0b1, 0xc0b2, 0xc0b3, 0xc0ea, 0x52fd, 0xc0b4, 0xc0f0, 0xc0b5,
+  0xc0b6, 0xc0b7, 0xc0b8, 0xc0b9, 0xc0ba, 0xc0bb, 0xc0bc, 0xc0bd,
+  0xc0be, 0xc0bf, 0xc0c0, 0xc0c1, 0xc0c2, 0xc0c3, 0x52fd, 0xc0c4,
+  0xc0c5, 0xc0c6, 0xc0fc, 0xc0c7, 0xc0c8, 0xc0c9,
+  /* 0x4c */
+  0xc0ca, 0xc0cb, 0xc0cc, 0xc184, 0xc0cd, 0xc0ce, 0xc0cf, 0xc0d0,
+  0xc0d1, 0xc0d2, 0xc4ca, 0xc4cb, 0xc636, 0xc637, 0xc69f, 0xc638,
+  0xc639, 0xc63a, 0x4144, 0xc9be, 0xc9f0, 0xc9bf, 0xc9c0, 0xcaf7,
+  0xcaf8, 0xcafa, 0xcb43, 0xcb44, 0xcd0f, 0xcd10, 0xcd11, 0xcd12,
+  0x43ad, 0xcd13, 0xcd14, 0xcd15, 0xcd16, 0x52fd, 0x52fd, 0xcfd3,
+  0xcfd7, 0x52fd, 0xd0b0, 0xd098, 0xd090, 0xd091, 0xd092, 0xd097,
+  0xd093, 0xd164, 0xd201, 0xd202, 0xd203, 0xd204, 0xd205, 0xd206,
+  0xd207, 0xd35a, 0xd35b, 0xd54e, 0xd54f, 0xd550, 0xd619, 0xd61a,
+  0xd61b, 0x52fd, 0xd61c, 0x52fd, 0xd719, 0xd71a, 0x1386, 0xdc8a,
+  0xd86e, 0xd86f, 0x4664, 0xd870, 0xd871, 0xd872, 0xd873, 0xd874,
+  0xd875, 0xd876, 0xdb3a, 0xdb3b, 0xdb3c, 0xdb5a, 0xdb3d, 0xdb42,
+  0xdc8b, 0xdca0, 0xdc8c, 0xdc8d, 0xdc8e, 0xdcab,
+  /* 0x4d */
+  0xdc8f, 0x4777, 0xdc90, 0xdc91, 0xdc92, 0xdcaa, 0x47af, 0xdc93,
+  0xdc94, 0xdc9e, 0xdca8, 0x52fd, 0x52fd, 0xe200, 0xe201, 0xe202,
+  0xe203, 0xe204, 0xe205, 0xe2c4, 0xe2c5, 0x52fd, 0xe3ae, 0xe3b2,
+  0x52fd, 0x52fd, 0xe4f7, 0xe513, 0xe69e, 0xe785, 0xa680, 0xe7c8,
+  0xeb41, 0xeb81, 0xeb82, 0xeb83, 0xeb84, 0xedc4, 0xedc5, 0xedc6,
+  0xef95, 0xef96, 0xef97, 0xf058, 0xf059, 0x52fd, 0xf2a9, 0xf2aa,
+  0xf2ab, 0xf58e, 0xf603, 0xf6b3, 0x5e82, 0x5353, 0x5483, 0x5484,
+  0x5485, 0x56cc, 0x56cd, 0x56ce, 0x56cf, 0x56d0, 0x52fd, 0x56d1,
+  0x56d2, 0x56da, 0x57b3, 0x57b4, 0x52fd, 0x5913, 0x590e, 0x596b,
+  0x5c03, 0x5c61, 0x5cc1, 0x5cc2, 0x5db5, 0x5440, 0x6298, 0x6299,
+  0x629a, 0x629b, 0x629c, 0x629d, 0x629e, 0x629f, 0x62ee, 0x62a0,
+  0x62a1, 0x6286, 0x6525, 0x6734, 0x6735, 0x6751,
+  /* 0x4e */
+  0x672d, 0x9662, 0x6754, 0x6752, 0x026d, 0x6736, 0x6737, 0x6738,
+  0x6739, 0x673a, 0x673b, 0x6768, 0x673c, 0x026e, 0x6877, 0x8596,
+  0x697e, 0x697f, 0x6b69, 0x6b6a, 0x6b6b, 0x6b6c, 0x6b6d, 0x6b6e,
+  0x6b6f, 0x6b5d, 0x6b70, 0x6b85, 0x6b71, 0x6b72, 0x6b73, 0x6b74,
+  0x6b75, 0x6b76, 0x6b84, 0x6b77, 0x6b83, 0x6c9a, 0x6da7, 0x6da8,
+  0x6da9, 0x6daa, 0x6dab, 0x6dac, 0x6db7, 0x6dad, 0x6dae, 0x52fd,
+  0x6e45, 0x6fd3, 0x6fd4, 0x6fd5, 0x6fd6, 0x6fd7, 0x7226, 0x7227,
+  0x7228, 0x52fd, 0x7229, 0x722a, 0x7305, 0x2364, 0x74d0, 0x75b7,
+  0x52fd, 0x75b8, 0x75b9, 0x7722, 0x7723, 0x7873, 0x7874, 0x7b8f,
+  0x7b12, 0x7b13, 0x7b14, 0x7b15, 0x7b16, 0x7b17, 0x7b18, 0x7b61,
+  0x7b66, 0x7b67, 0x7b19, 0x7b68, 0x7b1a, 0x7b69, 0x7d04, 0x7d05,
+  0x52fd, 0x7d06, 0x7cfd, 0x8050, 0x8051, 0x8052,
+  /* 0x4f */
+  0x8053, 0x8054, 0x8055, 0x8063, 0xfac4, 0x8056, 0x8057, 0x8058,
+  0x8059, 0x805a, 0x805b, 0x52fd, 0x805c, 0x805d, 0x805e, 0x805f,
+  0x82d7, 0x52fd, 0x8360, 0x8361, 0x8417, 0x8439, 0x858f, 0x85c8,
+  0x8590, 0x8591, 0x8698, 0x8699, 0x8944, 0x8945, 0x8946, 0x8959,
+  0x89ee, 0x2b2b, 0x8947, 0x8948, 0x52fd, 0x8949, 0x894a, 0x894b,
+  0x894c, 0x894d, 0x894e, 0x894f, 0x8950, 0x8951, 0x8952, 0x8953,
+  0x8954, 0x8955, 0x8956, 0x8c15, 0x8c9a, 0x8d58, 0x8dfc, 0x8dfd,
+  0x9286, 0x9287, 0x9288, 0x9289, 0x928a, 0x928b, 0x928c, 0x52fd,
+  0x931f, 0x928d, 0x928e, 0x928f, 0x9290, 0x9291, 0x9292, 0x9293,
+  0xfb11, 0x9294, 0x9295, 0x91ca, 0x9218, 0x52fd, 0x9296, 0x9297,
+  0x9298, 0x9299, 0x929a, 0x929b, 0x929c, 0x929d, 0x929e, 0x929f,
+  0x2f46, 0x52fd, 0x92a0, 0x92a1, 0x2f9a, 0x92b7,
+  /* 0x50 */
+  0x52fd, 0x9696, 0x9668, 0x9669, 0x968c, 0x966a, 0x966b, 0x966c,
+  0x966d, 0x966e, 0x966f, 0x967f, 0x9684, 0x9670, 0x9671, 0x9685,
+  0x9672, 0x9673, 0x9674, 0x9675, 0x9676, 0x52fd, 0x9677, 0x9678,
+  0x9679, 0x967a, 0x967b, 0x967c, 0xfb1e, 0x9894, 0x99d5, 0x9b29,
+  0x9d2b, 0x9d2c, 0x9d2d, 0x9d2e, 0x9d2f, 0x9d30, 0x9d3e, 0x9d31,
+  0x9d32, 0x9d33, 0x9d34, 0x9d35, 0x9e11, 0x0b53, 0x9fc0, 0xa142,
+  0xa143, 0xa144, 0xa145, 0xa146, 0xa38c, 0xa38d, 0xa38e, 0xa38f,
+  0xa390, 0xa391, 0xa563, 0xa564, 0xa565, 0x52fd, 0xfb4a, 0x52fd,
+  0xa6f6, 0xa836, 0xa837, 0xa82c, 0xa838, 0xa839, 0x52fd, 0xa83a,
+  0xa9e3, 0xa9e2, 0xa9f5, 0xab47, 0x52fd, 0xab48, 0xab49, 0xab4a,
+  0xab4b, 0xab4c, 0xada8, 0xada9, 0xadaa, 0x52fd, 0xaf0b, 0xaf06,
+  0xaf73, 0xaf0c, 0xaf0d, 0xaf0e, 0xaf0f, 0xaf10,
+  /* 0x51 */
+  0x52fd, 0xaf11, 0xfb62, 0xaf12, 0xaf14, 0xaf15, 0xaf16, 0x52fd,
+  0xaf13, 0xaf17, 0xb1d9, 0xb1da, 0xb1db, 0x52fd, 0xb1dc, 0xb3a6,
+  0xb3a7, 0xb3a8, 0xb3a9, 0xb3aa, 0xb3ab, 0x52fd, 0xfb6d, 0xb3ac,
+  0xb3ad, 0xb3ae, 0x52fd, 0x52fd, 0xb3af, 0xb3b0, 0xb3b1, 0xb544,
+  0xb545, 0xb5f7, 0xb5f8, 0xb76b, 0xb76c, 0xb761, 0xb812, 0xb8af,
+  0xb8b0, 0xb8b1, 0xb8b2, 0xb8b3, 0xb8b4, 0xb8b5, 0xb8b6, 0xb922,
+  0xbaea, 0xbaeb, 0xbaec, 0xbaed, 0x0f3d, 0xbbed, 0xbc1b, 0xbc47,
+  0xbce8, 0xbdd0, 0xbde7, 0xbde8, 0xbde9, 0xc14e, 0xc14f, 0xc150,
+  0xc172, 0xc151, 0xc152, 0xfba7, 0x1026, 0xc153, 0xc154, 0xc155,
+  0xc156, 0xc157, 0xc177, 0xc158, 0xc159, 0xc15a, 0xc15b, 0xc15c,
+  0xc16e, 0xc15d, 0x1027, 0x52fd, 0xc15e, 0x1028, 0xc15f, 0x52fd,
+  0xc4d7, 0xc689, 0xc68a, 0x52fd, 0xfbbe, 0xc68b,
+  /* 0x52 */
+  0xc68c, 0xc68d, 0xc68e, 0xfbbc, 0xc68f, 0x52fd, 0xc69a, 0xc690,
+  0xc691, 0xc692, 0xc693, 0xca12, 0xc9f1, 0x52fd, 0xcafe, 0xcafb,
+  0xcb57, 0xcd49, 0xcd4a, 0xcd4b, 0xcd4c, 0x52fd, 0xcd4d, 0xcd59,
+  0xcd4e, 0xcd4f, 0xcef4, 0xcf65, 0xd0a6, 0xd0a7, 0xd0a8, 0xd222,
+  0xd223, 0xd38b, 0xd38c, 0xd38d, 0xd38e, 0xd558, 0x52fd, 0xd559,
+  0xd63b, 0xd63c, 0xd63d, 0xd63e, 0xd748, 0xd894, 0xd895, 0xd896,
+  0xd897, 0xd898, 0xda7d, 0xd9fe, 0xda7e, 0xda7f, 0x52fd, 0xdb5b,
+  0xdb5c, 0xdce4, 0xdcc1, 0xdcfd, 0xdcc2, 0xdcd6, 0xdcc3, 0xdcc4,
+  0x52fd, 0xdcdc, 0xdcc5, 0xdcc6, 0xdcc7, 0xdce1, 0xdcc8, 0xdcc9,
+  0xdcca, 0xdccb, 0x47f2, 0xdccc, 0xdccd, 0xe035, 0xe036, 0xe047,
+  0xe037, 0xe21b, 0xe21c, 0xe21d, 0xe21e, 0xe21f, 0xe220, 0xe27b,
+  0xe27a, 0xe2fe, 0xe3c6, 0xe3c7, 0xe3c8, 0xe3c9,
+  /* 0x53 */
+  0xe3ca, 0x52fd, 0xe7a0, 0xe7a1, 0xe8cc, 0xe8cd, 0xe9f1, 0xe9d7,
+  0xeb42, 0xeb46, 0xeba3, 0xeba5, 0xeba6, 0xedcb, 0xedcc, 0xee26,
+  0xee27, 0xee28, 0xee29, 0xefae, 0xefaf, 0xefb0, 0xf073, 0x52fd,
+  0xf07c, 0xf074, 0x52fd, 0xf280, 0xf075, 0x4c79, 0x52fd, 0xf2cf,
+  0x52fd, 0xf68f, 0x5970, 0x5385, 0x5697, 0x56f6, 0x56f7, 0x56f8,
+  0x56fa, 0x56fb, 0x57ba, 0x57bb, 0x57bc, 0x57bd, 0x5834, 0x5835,
+  0x58a2, 0x5914, 0x5911, 0x596e, 0x596f, 0x5b08, 0x5bb8, 0x5d09,
+  0x5dbd, 0x5dbe, 0x5e88, 0x62fe, 0x1d7a, 0x62ff, 0x6300, 0x6301,
+  0x6302, 0x6303, 0x6304, 0x6305, 0x6306, 0x52fd, 0x6307, 0x6308,
+  0x6309, 0x630a, 0x630b, 0x630c, 0x630d, 0x630e, 0x630f, 0x52fd,
+  0x52fd, 0x52fd, 0x652c, 0x676b, 0x52fd, 0x676c, 0x6787, 0x676d,
+  0x6878, 0x698b, 0x6ba4, 0x6ba5, 0x6ba6, 0x6ba7,
+  /* 0x54 */
+  0x6bbe, 0x6ba8, 0x6ba9, 0x6baa, 0x6b8d, 0x6bab, 0x6bac, 0x6bbf,
+  0x52fd, 0x032c, 0x6bad, 0x6bae, 0x6ca4, 0x6ca5, 0x6dc7, 0x6dc8,
+  0x6dc9, 0xd0bc, 0x6dca, 0x6dcb, 0x6dcc, 0x6dcd, 0x6dce, 0x6f19,
+  0x6fe6, 0x724c, 0x724d, 0x724e, 0x7306, 0x52fd, 0x75cd, 0x75ce,
+  0x75cf, 0x75d0, 0x245c, 0x7881, 0x7882, 0x5833, 0x7b6a, 0x7b6b,
+  0x7bb2, 0x7b6c, 0x7b6d, 0x7bcc, 0x7bae, 0x7bb3, 0x7b91, 0x52fd,
+  0x7b6e, 0x7bb4, 0x7b6f, 0x80c9, 0x80a7, 0x80a8, 0x80a9, 0x80aa,
+  0x80ab, 0x80ac, 0x80ad, 0x80ae, 0x80af, 0x80b0, 0x8060, 0x80b1,
+  0x81e1, 0x82e3, 0x82f6, 0x26d9, 0x85af, 0x85b0, 0x85b1, 0x85ba,
+  0x85b2, 0x85b3, 0x864c, 0x52fd, 0x86a0, 0x86a1, 0x89b0, 0x89b1,
+  0x89b2, 0x89b3, 0x89b4, 0xfaeb, 0x89b5, 0x89b6, 0x89b7, 0x89b8,
+  0x89b9, 0x89ba, 0x2b72, 0x89bb, 0x89bc, 0x89bd,
+  /* 0x55 */
+  0x89be, 0x89bf, 0x89df, 0x89c0, 0x89c1, 0x89c2, 0x89c3, 0x89c4,
+  0x2b78, 0x52fd, 0x89c5, 0x89c6, 0x89c7, 0x89c8, 0x89c9, 0x89ca,
+  0x8a3c, 0x89cb, 0x89cc, 0x89cd, 0x89ce, 0x89cf, 0x89d0, 0x89d1,
+  0x2c5a, 0x8c1d, 0x8c1e, 0x8d64, 0x8d65, 0x8dc5, 0x8dc6, 0x8dc7,
+  0x8dff, 0x8eff, 0x8f00, 0x8f01, 0x8f02, 0x92f5, 0x935c, 0x92f6,
+  0x92f7, 0x92b0, 0x92f8, 0x92f9, 0x935d, 0x9350, 0x92fa, 0x92fb,
+  0x92a2, 0x92fc, 0x92fd, 0x92fe, 0x92ff, 0xfb13, 0x9300, 0xfb1f,
+  0x96c1, 0x96c2, 0x96c3, 0x96c4, 0x96c5, 0x96c6, 0x96c7, 0x96c8,
+  0x96c9, 0x96ca, 0x96cb, 0xe3ef, 0x96d7, 0x96cc, 0x96cd, 0x96ce,
+  0x9722, 0x96cf, 0x96d0, 0x52fd, 0x96d1, 0x96d2, 0x96e9, 0x96d3,
+  0x96d4, 0x96d5, 0x9838, 0x633b, 0x9b7d, 0x586f, 0x9ba1, 0x9d53,
+  0x9d54, 0x0afb, 0x9d55, 0x9d3c, 0x9d56, 0x52fd,
+  /* 0x56 */
+  0x9d66, 0x0afc, 0x9d57, 0x9d58, 0x9d59, 0x9d5a, 0x9d5b, 0x9d67,
+  0x9d5c, 0x52fd, 0x52fd, 0x9d6a, 0x9d5d, 0x9d3d, 0x9d5e, 0x9d65,
+  0x9fe1, 0x9fcd, 0xf311, 0xa16f, 0xa170, 0xa31a, 0xa39a, 0xa39b,
+  0xa39c, 0xa39e, 0xa39f, 0xfb3f, 0xa58e, 0x52fd, 0xa6fd, 0x52fd,
+  0xa85e, 0xa85f, 0xa860, 0xa865, 0xa867, 0xa868, 0xa869, 0x52fd,
+  0xa86a, 0xa88f, 0xa86b, 0xa86c, 0xa86d, 0xa9f7, 0xa9f8, 0xa9f9,
+  0xa9e4, 0xa9fa, 0xabb1, 0xab75, 0xab76, 0xacff, 0xad00, 0xad01,
+  0xad02, 0xad03, 0xadae, 0xadad, 0xaf51, 0xaf52, 0x52fd, 0xaf53,
+  0xaf54, 0xaf55, 0xaf56, 0xaf57, 0xaf58, 0xaf59, 0xaf5a, 0xaf5b,
+  0xaf5c, 0xaf5d, 0xaf5e, 0xaf5f, 0xaf60, 0xaf61, 0xaf62, 0xaf63,
+  0xaf64, 0xaf4c, 0xaf66, 0xb1f1, 0xb1f2, 0xb3f2, 0xb3f3, 0xb3f4,
+  0xb3f5, 0xb3f6, 0xb3f7, 0xb3f8, 0xb3f9, 0xb3fa,
+  /* 0x57 */
+  0xb54c, 0xb54b, 0xb61b, 0xb6ce, 0xb6b3, 0xb77f, 0xfb79, 0xfb7c,
+  0xb81a, 0xb8c4, 0xb8c5, 0xb8c6, 0xb8c7, 0xb8c8, 0xb8c9, 0x52fd,
+  0xbb19, 0xbb1c, 0xbb1a, 0xbc4c, 0xbc8e, 0xbd7e, 0xc1eb, 0xc1ec,
+  0xc1ed, 0xc1ee, 0xc1ef, 0xc1f0, 0xc1f1, 0xc1d8, 0xc1d9, 0xc1da,
+  0xc1db, 0xc1f2, 0xc1f3, 0xc1f4, 0xc207, 0x52fd, 0xfbac, 0x52fd,
+  0xc1f5, 0xc215, 0x52fd, 0xc1f6, 0xc1f7, 0xc1f8, 0xc1f9, 0xc1fa,
+  0xc1fb, 0xc1fc, 0xc1fd, 0xc1fe, 0xc2a7, 0xc1ff, 0xc200, 0xc201,
+  0xc202, 0xc203, 0xc204, 0xc205, 0xc4e9, 0xc4ea, 0xc4eb, 0xc6de,
+  0xc6df, 0x52fd, 0xc6e0, 0xc6e1, 0xc6e2, 0xc6e3, 0xca3e, 0xca3f,
+  0xca40, 0xca41, 0xcb71, 0xcb72, 0xcb73, 0xcd88, 0xcd89, 0xcd8a,
+  0xcd8b, 0xcd8c, 0xcd8d, 0xcd8e, 0xcd8f, 0xcd90, 0xcd91, 0xcd92,
+  0x52fd, 0xcff1, 0xd0be, 0xd0bf, 0xd0c0, 0xd0c1,
+  /* 0x58 */
+  0xd0c2, 0xd0c3, 0xd16e, 0xd237, 0xd257, 0xd238, 0xd239, 0xd23a,
+  0xd23b, 0xd23c, 0xd23d, 0xd23e, 0xd227, 0xd23f, 0x52fd, 0x52fd,
+  0xd3c0, 0xd3c1, 0x44be, 0xd567, 0x52fd, 0xd568, 0xd658, 0xd665,
+  0xd659, 0xd65a, 0xd724, 0xd8cd, 0xd8ce, 0xd8cf, 0xd8d2, 0xda9f,
+  0xda22, 0xdb7d, 0xdb7e, 0xdcff, 0xdd25, 0xdd00, 0xdd01, 0x483b,
+  0xdd02, 0xdd03, 0xdd04, 0x5128, 0xdd05, 0xdd06, 0xdd07, 0xdd16,
+  0xdd08, 0xdd17, 0xdd09, 0xdd0a, 0x4840, 0xdd0b, 0xdd0c, 0xdd29,
+  0x483a, 0xdd0d, 0x52fd, 0xdd0e, 0xdd10, 0xdd11, 0xdd1d, 0xdd12,
+  0xdd13, 0x52fd, 0xdd14, 0xdd15, 0xdf8d, 0xe054, 0xe055, 0xe056,
+  0xe233, 0xe234, 0xe235, 0xe236, 0xe2fa, 0xe3e3, 0xe3e6, 0xe3ed,
+  0xe3e7, 0xe3e8, 0xe3e9, 0xe3ea, 0xe3eb, 0xe527, 0xe520, 0xfbf8,
+  0xe72a, 0xe7c9, 0x52fd, 0xe7ca, 0xe7cb, 0xe7d9,
+  /* 0x59 */
+  0xe7cc, 0xe7cd, 0xe7ce, 0x52fd, 0xe8e1, 0xea1b, 0xea1c, 0xea1d,
+  0xea1e, 0xeb47, 0xebd1, 0xebc9, 0xedd0, 0xedd1, 0xee3f, 0xee40,
+  0xee41, 0xfc09, 0xee42, 0xefc4, 0xf09b, 0xf092, 0xf093, 0x4c96,
+  0xf094, 0xf095, 0x52fd, 0x52fd, 0xf2f3, 0xf2f4, 0xf2f5, 0xf2f6,
+  0xf560, 0xf59e, 0xf5a0, 0xf5a1, 0xf61c, 0xf69f, 0x5356, 0x5712,
+  0x571f, 0x5715, 0x5716, 0x5717, 0xfa0c, 0x5718, 0x57c2, 0x57c3,
+  0x57c4, 0x58a1, 0x591b, 0x591c, 0x5971, 0x5b13, 0x5e17, 0x5e8f,
+  0x635f, 0x6360, 0x63ac, 0x52fd, 0x52fd, 0x6361, 0x6362, 0x6363,
+  0x6364, 0x6365, 0x52fd, 0x6799, 0x679a, 0x679b, 0x679c, 0x679d,
+  0x679e, 0x679f, 0x67a0, 0x6bda, 0x6bdb, 0x6bdc, 0x6bdd, 0x6bde,
+  0x6bdf, 0x6dd5, 0x6dd6, 0x6dd7, 0x6dd8, 0x6de0, 0x6eb4, 0x52fd,
+  0x726e, 0x726f, 0x7270, 0x7463, 0x52fd, 0x75d5,
+  /* 0x5a */
+  0x75d6, 0x75d7, 0x75d8, 0x7730, 0x7bb5, 0x7bb6, 0x7bc1, 0x7bf7,
+  0x05a0, 0x7bcb, 0x7be8, 0x52fd, 0x7be9, 0x7bb7, 0x7d15, 0x80e6,
+  0x80e7, 0x80e8, 0x80e9, 0x80ea, 0x80eb, 0xfaca, 0x830b, 0x830c,
+  0x8364, 0x85d4, 0x85d5, 0x85d6, 0x85d8, 0x86a5, 0x535b, 0x8a0f,
+  0x8a10, 0x52fd, 0x8a11, 0x8a12, 0x8a13, 0x8a14, 0x8a15, 0x8a16,
+  0x8a17, 0x8a18, 0x8a19, 0x8a1a, 0x8a2f, 0x8a1b, 0x8a1c, 0x8a3f,
+  0x8a1d, 0x8a1e, 0x8a2c, 0x8a1f, 0x8c24, 0x8ca4, 0x8ca5, 0xb551,
+  0x8dfe, 0x8f11, 0x8f12, 0x8f13, 0x8f54, 0x935e, 0x9321, 0x933f,
+  0x9340, 0x9341, 0x9342, 0x9343, 0x9344, 0x9320, 0x9345, 0x52fd,
+  0x9346, 0x93b0, 0x9347, 0x9357, 0x9301, 0x93b1, 0x935a, 0x9348,
+  0x9704, 0x9705, 0x31f5, 0x974f, 0x9750, 0x9706, 0x9707, 0x9708,
+  0x9709, 0x970a, 0x970b, 0x970c, 0x970d, 0x970e,
+  /* 0x5b */
+  0x970f, 0x9710, 0x9711, 0x9833, 0x9834, 0x9835, 0x98fc, 0x98fd,
+  0x9bb0, 0x9bb1, 0x9bb2, 0x9bb3, 0x0b01, 0x9d7b, 0x9d7c, 0x9d7d,
+  0x9d7e, 0x9d7f, 0x9d80, 0x9d81, 0x9d82, 0x9ef9, 0x9fda, 0xa1a1,
+  0x52fd, 0x52fd, 0xa3ad, 0xa3ae, 0x52fd, 0xa5c8, 0xa5c9, 0xa5ca,
+  0xa882, 0xa883, 0xa884, 0xa885, 0xa886, 0xa887, 0xa888, 0xa889,
+  0xa88a, 0x52fd, 0xaa07, 0xaa08, 0xaa01, 0xaa09, 0xaa02, 0xaa0a,
+  0xaa0b, 0xaa0c, 0xaba7, 0xab98, 0xab99, 0xab9a, 0xab9b, 0xab9c,
+  0x3950, 0xab9d, 0xad1a, 0xadb2, 0xafb0, 0xafb1, 0x3b14, 0xafb2,
+  0xafb3, 0xafb4, 0xafb5, 0xafb6, 0xafc0, 0xafb7, 0xafb8, 0xafb9,
+  0xafba, 0xb01d, 0xb20c, 0xb20d, 0xb20e, 0xb235, 0xb20f, 0xb210,
+  0xb211, 0xb212, 0xb422, 0xb423, 0xb424, 0x52fd, 0xb425, 0xb426,
+  0xb427, 0xb428, 0xb429, 0xb42a, 0xb42b, 0xb42c,
+  /* 0x5c */
+  0xb42d, 0xb42e, 0xb552, 0xb553, 0xb619, 0xb6bf, 0xb78b, 0xb78c,
+  0xb823, 0xb824, 0xb8f1, 0xb8d8, 0xfb7f, 0xbb4e, 0xbb4f, 0xbb55,
+  0xbb50, 0xbb51, 0xbb52, 0xbb53, 0xbb02, 0xbb54, 0xbbf1, 0xbc24,
+  0xbdd1, 0xc27c, 0xc27d, 0xc27e, 0xc27f, 0xc280, 0xc29f, 0xc281,
+  0xc282, 0xc283, 0xc284, 0xc285, 0xc286, 0xc287, 0xc288, 0xc29b,
+  0xc289, 0xc28a, 0xc28b, 0xc28c, 0x52fd, 0xc2a1, 0xc28d, 0xc28e,
+  0xc4f3, 0xc4f4, 0xc4f5, 0xc724, 0xc725, 0xc726, 0xc727, 0xc728,
+  0xc729, 0xc72a, 0x52fd, 0xc72b, 0xc8cd, 0xc901, 0x788d, 0xca70,
+  0xcb80, 0xcb81, 0xcdc0, 0xcdc1, 0xcdc2, 0xcdc3, 0xcdc4, 0xcdc5,
+  0xcdc6, 0xcdc7, 0xcdc8, 0xcffe, 0x52fd, 0xd0d9, 0xd0dc, 0xd0da,
+  0xd175, 0xd258, 0xd259, 0xd25a, 0xd25b, 0xd25c, 0xd3ec, 0x131a,
+  0xd3f3, 0xd572, 0xd573, 0xd682, 0xd683, 0xd72a,
+  /* 0x5d */
+  0xd72b, 0xd72c, 0xd72d, 0xd8f6, 0xd900, 0xd8f7, 0xd8f8, 0xd8f9,
+  0x52fd, 0xdb94, 0xdb95, 0xdb96, 0xdc1b, 0xdd86, 0xdd4c, 0xdd4d,
+  0xdd83, 0x52fd, 0xdd82, 0xdd4e, 0xdd4f, 0xdd50, 0xdd51, 0xdd81,
+  0x4887, 0xdd52, 0xdd53, 0xdd54, 0xdd55, 0x52fd, 0xdd56, 0xdd57,
+  0x4885, 0xdd58, 0xdd5b, 0xdd5c, 0xdd5d, 0xdd5e, 0xdd5f, 0xdd60,
+  0xdd61, 0xdd7c, 0xdd62, 0x143c, 0x52fd, 0xdd63, 0xdd64, 0xe073,
+  0xe245, 0xe246, 0xe247, 0xe24c, 0xe312, 0x52fd, 0xe313, 0xe439,
+  0xe403, 0xe40d, 0xe530, 0xe5d5, 0xe6c0, 0xe7f2, 0xe7f3, 0xe7f4,
+  0xe7f5, 0xe7f6, 0xe7f7, 0xe8fa, 0xe8fb, 0xea45, 0xea46, 0xeb49,
+  0xebe7, 0xebe8, 0xedd8, 0xedd9, 0xee55, 0xee56, 0xee57, 0xefda,
+  0xefdb, 0xefdc, 0xf0b8, 0xf0b9, 0xf0ba, 0x4cb1, 0xf0bb, 0xf289,
+  0xf0bc, 0xf330, 0xf331, 0xf332, 0xf333, 0x52fd,
+  /* 0x5e */
+  0xf334, 0xf335, 0xf336, 0x4e47, 0xf337, 0xf5b2, 0xf690, 0xf626,
+  0xf6a2, 0xf738, 0x52fd, 0x572e, 0x52fd, 0x572f, 0x5730, 0x572a,
+  0x572b, 0x57c9, 0x5837, 0x5920, 0x5972, 0x5b1f, 0x5c65, 0x5cca,
+  0x5dc0, 0x5dc1, 0x5dc2, 0x63b7, 0x63b8, 0x63b9, 0x63ba, 0x63bb,
+  0x52fd, 0x52fd, 0x63bc, 0x63bd, 0x63be, 0x63f2, 0x67b5, 0x67b7,
+  0x67b8, 0x63df, 0x67b9, 0x67d5, 0x67ba, 0x67bb, 0x684a, 0x6bf2,
+  0x6bf3, 0x6bf4, 0x6bfa, 0x6bf5, 0x6c02, 0x6de2, 0x6de3, 0x728e,
+  0x728b, 0x75e4, 0x75eb, 0x75e5, 0x7735, 0x7893, 0x7bea, 0x7beb,
+  0x52fd, 0x7bec, 0x7bed, 0x7c17, 0x7bee, 0x7bef, 0x7bf0, 0x810e,
+  0x810f, 0x8110, 0x8119, 0x8118, 0x8111, 0x8112, 0x8113, 0xfac7,
+  0x8114, 0x8115, 0x066b, 0x8116, 0x8365, 0x85ea, 0x85eb, 0x85ec,
+  0x85ed, 0x52fd, 0x85ee, 0x86ac, 0x8ac2, 0x8a69,
+  /* 0x5f */
+  0x8a81, 0x8a6a, 0x8a6b, 0x8a6c, 0x8a6d, 0x8a6e, 0x8a6f, 0x8a70,
+  0x07f4, 0x8a71, 0x8a72, 0x8a73, 0x8a8c, 0x8a74, 0x8a75, 0x8a76,
+  0x8f24, 0x8f2a, 0x938e, 0x93af, 0x938f, 0x9390, 0x9391, 0x52fd,
+  0x9392, 0x9393, 0x9394, 0x9395, 0x9396, 0x9397, 0x9398, 0x9399,
+  0x939a, 0x939b, 0x939c, 0x9739, 0x973b, 0x973a, 0x973c, 0x973d,
+  0x973e, 0x973f, 0x9770, 0x9740, 0x9741, 0x9bc0, 0x9bc1, 0x9da4,
+  0x9d97, 0x9da5, 0x9d98, 0x9d99, 0x9d9a, 0x52fd, 0x9d9b, 0x9da6,
+  0x9d9c, 0x9d9d, 0x9d9e, 0x9d9f, 0xddce, 0x9dc8, 0x9da0, 0x9e19,
+  0x9f0d, 0xa3bf, 0xa5e9, 0xa5ea, 0xa8a2, 0xa8a3, 0xa8a4, 0xa8a5,
+  0xa8a6, 0xaa15, 0xaa17, 0xabbf, 0xabc0, 0xabc1, 0xabc2, 0xabc3,
+  0xabc4, 0xabc5, 0x6c0d, 0xad23, 0xadbe, 0xb003, 0xb004, 0xb005,
+  0xb006, 0xb007, 0xb008, 0xb009, 0xb00a, 0xb00b,
+  /* 0x60 */
+  0xb00c, 0xb020, 0xb00d, 0xb00e, 0xb00f, 0x52fd, 0xb226, 0xb227,
+  0xb228, 0xb45d, 0xb45e, 0xb45f, 0xb460, 0xb461, 0xb462, 0xb463,
+  0xb464, 0xb465, 0xb557, 0xb6cf, 0xb6d0, 0xb799, 0xb79a, 0xb8ea,
+  0xb8eb, 0xb8ec, 0xbb7e, 0xbb7f, 0xbb80, 0x52fd, 0x52fd, 0xbb81,
+  0xbb82, 0xbbf3, 0xbc25, 0xbc9f, 0xbca0, 0xbcf3, 0xbd00, 0xc2eb,
+  0xc2ec, 0xc2ed, 0xc2ee, 0xc2ef, 0x52fd, 0x105c, 0xc2f0, 0xc2f1,
+  0xc2f2, 0xc2f3, 0xc2f4, 0xc2f5, 0xc2f9, 0xc2fa, 0xc2fb, 0xc2fc,
+  0xc2fd, 0xc2fe, 0xc2ff, 0xc300, 0xfbae, 0xc301, 0xc302, 0xc503,
+  0xc786, 0xc779, 0x52fd, 0xc77a, 0xc77b, 0xc77c, 0xc784, 0xc77d,
+  0xc77e, 0xc77f, 0xca86, 0xca87, 0xcb00, 0xcb01, 0xcb88, 0xcb89,
+  0xcb8a, 0xcdf5, 0x52fd, 0xce25, 0xcdf6, 0xd0eb, 0xd0ec, 0xd0ed,
+  0xd0ee, 0x1287, 0xd0ef, 0xd0f0, 0xd26c, 0xd421,
+  /* 0x61 */
+  0xd422, 0xd423, 0xd424, 0xd425, 0xd426, 0xd57b, 0xd57c, 0xd691,
+  0xd692, 0xd693, 0xd90e, 0xd90f, 0xd910, 0xdbb3, 0xdc36, 0xddc6,
+  0xdda1, 0xdda2, 0x48b9, 0xdda3, 0xddcc, 0xdda4, 0xdda5, 0xdda6,
+  0xddcb, 0xdda7, 0x52fd, 0xdda8, 0xdda9, 0xddaa, 0x52fd, 0xddab,
+  0xddac, 0xddad, 0x48bf, 0xddae, 0xddaf, 0xddb0, 0xe08c, 0xe08d,
+  0xe08e, 0xfbf1, 0xe092, 0xe08f, 0xe252, 0xe253, 0xe254, 0xe255,
+  0xe429, 0x52fd, 0xe5f3, 0xe5f4, 0xe80d, 0xe80e, 0xe80f, 0xe810,
+  0xe914, 0xea71, 0xea72, 0xec0f, 0xec04, 0xec06, 0x52fd, 0xec07,
+  0xeddc, 0xeddd, 0xee6d, 0xee79, 0xee6e, 0x52fd, 0xefec, 0xf0dd,
+  0xf0de, 0xf0df, 0xf0e0, 0xf0e1, 0xf0e2, 0xf0e3, 0xf0e4, 0xf13a,
+  0xf0e5, 0x4ccf, 0xf0e6, 0xf36b, 0xf36c, 0x974e, 0x4e64, 0xf5bd,
+  0xf5be, 0xf5bf, 0xf634, 0x4fbf, 0xf812, 0x5740,
+  /* 0x62 */
+  0x5741, 0x6402, 0x6403, 0x6404, 0x6405, 0x6406, 0x67d7, 0x67cc,
+  0x6998, 0x6c06, 0x6c07, 0x6caf, 0x6cb0, 0x6dea, 0x6df2, 0x72a2,
+  0x72a3, 0x72a4, 0x7476, 0x75f5, 0x75f6, 0x75f7, 0x52fd, 0x7c3b,
+  0x7c25, 0x7c3a, 0x7c3c, 0x7c3d, 0x7c3e, 0x8137, 0x8138, 0x8139,
+  0x813a, 0x813b, 0x813c, 0x813d, 0x813e, 0x813f, 0x814b, 0x52fd,
+  0x8140, 0x8322, 0x8367, 0x83d3, 0x85fa, 0x52fd, 0x8abc, 0x52fd,
+  0x52fd, 0x8aa5, 0x0807, 0x8ab6, 0x52fd, 0x8aa6, 0x8abb, 0x8aa7,
+  0x8aa8, 0x8aa9, 0x8aaa, 0x8aab, 0x8aac, 0x8abf, 0x8aad, 0x8aae,
+  0x8aaf, 0x8c2e, 0x8e00, 0x939d, 0x939e, 0x93cb, 0x93cc, 0x93cd,
+  0x93ce, 0x93cf, 0x52fd, 0x939f, 0x93d0, 0x93d1, 0x93d2, 0x93d3,
+  0x93d4, 0x52fd, 0x52fd, 0x975d, 0x975e, 0x975f, 0x9760, 0x0b05,
+  0x9dba, 0x9dbc, 0x0b06, 0x9db5, 0x9dbd, 0x9db6,
+  /* 0x63 */
+  0x9db7, 0x9db8, 0x9da8, 0xfb32, 0x9efe, 0x9efc, 0xa1e1, 0xa3c4,
+  0xa3c5, 0xa614, 0xa8ae, 0xa8af, 0xa8b0, 0xa8b1, 0xa8b9, 0xabe7,
+  0xb046, 0x52fd, 0xb047, 0xb048, 0xb049, 0xb01e, 0xb01f, 0xb04a,
+  0xb04b, 0xb04c, 0xb04d, 0xb04e, 0x52fd, 0xb246, 0xb24b, 0xb490,
+  0xb491, 0x52fd, 0xb492, 0xb493, 0xb494, 0xb55b, 0xb8f2, 0xb8f8,
+  0xb8f9, 0xbb94, 0xbba4, 0xbb97, 0xbb98, 0xbc29, 0xbcae, 0xbdaf,
+  0xc359, 0xc35a, 0x52fd, 0xc35b, 0xc35c, 0xc35d, 0xc35e, 0xc35f,
+  0xc360, 0xc361, 0xc2aa, 0xc362, 0xc363, 0xc364, 0xc365, 0xc366,
+  0xc367, 0xc368, 0xc369, 0xc36a, 0xc36b, 0xc36c, 0xc36d, 0xc36e,
+  0xc36f, 0x52fd, 0xc7b2, 0xc7b3, 0xc7b4, 0x10f9, 0xc7b5, 0xc7b6,
+  0xc7b7, 0xc7b8, 0xc7b9, 0xc7ba, 0xc7bb, 0xca88, 0x42b8, 0xce19,
+  0xce1a, 0xce1b, 0xcf16, 0xd10c, 0xd10d, 0xd10e,
+  /* 0x64 */
+  0xd10f, 0x52fd, 0xd283, 0xd284, 0xd285, 0xd583, 0xd584, 0xd6b0,
+  0x52fd, 0xd926, 0xd927, 0xd936, 0xd928, 0xd929, 0x52fd, 0x52fd,
+  0xdde7, 0xdde8, 0xdde9, 0x1453, 0xddea, 0xddeb, 0x52fd, 0xddec,
+  0xdded, 0xddee, 0xddef, 0xddf0, 0xddf1, 0xde0c, 0xddf2, 0xddf3,
+  0xddf4, 0xddf5, 0xddf6, 0xddf7, 0xddf8, 0xe0a3, 0xe0a4, 0xe0a5,
+  0xe0a6, 0xe0a7, 0x52fd, 0xe25c, 0x52fd, 0xe44b, 0xe4e1, 0xe615,
+  0x52fd, 0xe616, 0xe617, 0xe82c, 0xe82d, 0xe922, 0xe923, 0xea96,
+  0xea97, 0x52fd, 0xec2e, 0xec30, 0xec31, 0x52fd, 0xeddf, 0xee8b,
+  0xee8c, 0x52fd, 0xee8d, 0xeffc, 0xeffd, 0xeffe, 0xefff, 0xf117,
+  0xf12d, 0xf118, 0x4cf3, 0xf119, 0x52fd, 0xf112, 0xf11a, 0xf11b,
+  0xf11c, 0x1669, 0x52fd, 0xf397, 0x16e5, 0xf398, 0xf399, 0x52fd,
+  0xf6c4, 0x574f, 0x57cd, 0x5dc7, 0x641c, 0x641d,
+  /* 0x65 */
+  0x641e, 0x67e7, 0x67e9, 0x67ea, 0x67eb, 0x6c15, 0x6ff1, 0x6ff2,
+  0x72b6, 0x78a0, 0x7c4a, 0x7d20, 0x8160, 0x8161, 0x8141, 0x8162,
+  0x8603, 0x8604, 0x8ad9, 0x8ada, 0x8adb, 0x8adc, 0x8add, 0x52fd,
+  0x8ade, 0x8adf, 0x8ae0, 0x8ae1, 0x8ae2, 0x0812, 0x8ae3, 0x52fd,
+  0x8f31, 0x9405, 0x9406, 0x9407, 0x9772, 0x978a, 0x978b, 0x9788,
+  0x52fd, 0x978c, 0x978d, 0x978e, 0x978f, 0x9790, 0x9842, 0x9843,
+  0x52fd, 0x9dc1, 0x9dc2, 0x9dc3, 0x9dc4, 0xa3cb, 0xa622, 0x52fd,
+  0x52fd, 0xa8c3, 0xa8c4, 0xa8c5, 0xa8c6, 0xaa1e, 0xaa25, 0xabf3,
+  0xabf4, 0x52fd, 0xabf5, 0xad38, 0xad48, 0xadca, 0x3b4f, 0xb07a,
+  0xb07b, 0xb255, 0xb256, 0xb4b1, 0xb4b2, 0xb4b3, 0x52fd, 0xb4b4,
+  0xb4b5, 0xb7a4, 0xb900, 0xb901, 0xb902, 0xbbac, 0x52fd, 0xbcb3,
+  0xc3b6, 0xc3b7, 0xc3b8, 0xc3b9, 0xc3ba, 0xc3bb,
+  /* 0x66 */
+  0xc3bc, 0xc3bd, 0xc3be, 0xc3bf, 0xc3c0, 0xc3c1, 0xc3c2, 0xc3c3,
+  0xc3c4, 0xc3c5, 0xc3c6, 0xc3c7, 0xc7e3, 0xc7e4, 0xc7e5, 0xc7e6,
+  0xc7e7, 0x52fd, 0xcab5, 0xcaa1, 0xcb95, 0xce3b, 0xce3c, 0xce3d,
+  0xce3e, 0xcf14, 0xd120, 0xd121, 0xd122, 0xd123, 0xd124, 0xd296,
+  0xd297, 0xd298, 0xd494, 0xd495, 0xd496, 0xd497, 0xd498, 0xd58f,
+  0xd590, 0xd6bc, 0xd73b, 0xd93d, 0x52fd, 0xdbdf, 0xdc1e, 0xde23,
+  0xde24, 0xde49, 0xde25, 0xde26, 0xde27, 0xde28, 0x4925, 0xde29,
+  0xde2a, 0xde2e, 0xde2f, 0xde4e, 0xde30, 0xfbeb, 0xde31, 0xde32,
+  0xde33, 0xde34, 0xde35, 0xde36, 0x52fd, 0xde37, 0xde50, 0xde38,
+  0x52fd, 0xde39, 0xde3a, 0xde3b, 0xde3c, 0xde3d, 0xde3e, 0xe0b8,
+  0xe0b9, 0xe262, 0xe263, 0xe341, 0xe46d, 0x52fd, 0xe652, 0xe637,
+  0xe6db, 0xe83f, 0xe934, 0xeb5b, 0xec46, 0xec5a,
+  /* 0x67 */
+  0xec5b, 0xede1, 0xede2, 0xede3, 0xede4, 0xeea7, 0xeea8, 0xeea9,
+  0xf00f, 0xf02b, 0xf156, 0xf157, 0xf158, 0xf15e, 0xf159, 0xf15a,
+  0xf15b, 0xf15c, 0x52fd, 0xf168, 0x52fd, 0xf42c, 0xf3e2, 0xf3f3,
+  0xf5d2, 0xf656, 0xf6ce, 0xf761, 0xf99b, 0xf9b4, 0x575c, 0xfa10,
+  0x57d2, 0x5871, 0x5973, 0x5b2c, 0x5e94, 0x52fd, 0x643f, 0x6440,
+  0x67f9, 0x67fa, 0x67fd, 0x67fb, 0x6c1c, 0x6c1d, 0x6dff, 0x6e00,
+  0x6ff7, 0x9ffe, 0x52fd, 0x77b6, 0x7c54, 0x8177, 0x8179, 0x817a,
+  0x817b, 0x8369, 0x8b02, 0x8b03, 0x8b04, 0x8b05, 0x8b06, 0x8b07,
+  0x8b08, 0x8b09, 0x8b0a, 0x8b0b, 0x8b35, 0x52fd, 0x8f39, 0x941e,
+  0x941f, 0x9420, 0x9421, 0x52fd, 0x9422, 0x9423, 0x9424, 0x942c,
+  0x97b3, 0x97b5, 0x97b6, 0x97b7, 0x97b8, 0x9dd0, 0x9ffa, 0xa207,
+  0xa2bd, 0xa3d7, 0xa3d2, 0xa8db, 0xa8d6, 0x575d,
+  /* 0x68 */
+  0xad43, 0xadcf, 0xb0a3, 0xb0a4, 0xb0a5, 0xb0a6, 0xb0a7, 0xb0a8,
+  0xb0a9, 0xb25d, 0xb25e, 0xb4c9, 0xb4ca, 0xb4cb, 0xb4cc, 0xb906,
+  0xb907, 0x52fd, 0xbbc5, 0xbbf5, 0xbcb4, 0xbcb8, 0xbcb5, 0xc3fd,
+  0x1077, 0xc3fe, 0xc3ff, 0xc400, 0xc401, 0xc402, 0xc403, 0xc409,
+  0xc404, 0xc405, 0xc406, 0xc407, 0xc811, 0xc812, 0xc813, 0xc814,
+  0xc815, 0x4277, 0xcb98, 0xcb99, 0xd13c, 0xd12d, 0xd12e, 0x52fd,
+  0xd4bb, 0xd4bc, 0x1378, 0xd73d, 0xd947, 0xd948, 0xd949, 0xd94a,
+  0xdae1, 0xdae7, 0xdbeb, 0xdc20, 0xdc38, 0xde62, 0xde67, 0xde68,
+  0xde69, 0xde6a, 0xde6b, 0xde6d, 0xde6e, 0xde6f, 0xde70, 0xde71,
+  0xde72, 0xde8f, 0xde73, 0xde74, 0xde75, 0xde76, 0xde77, 0xe0c9,
+  0xe0ca, 0x4ae6, 0xe0cb, 0xe0cc, 0xe0cd, 0xe351, 0x52fd, 0x52fd,
+  0xe545, 0xe859, 0xe85a, 0xe85b, 0xe940, 0xeacf,
+  /* 0x69 */
+  0xeb5e, 0xec7b, 0xed93, 0xeebc, 0xf016, 0xf030, 0x52fd, 0xf18d,
+  0xf18e, 0x4d2f, 0xf18f, 0xf190, 0xf191, 0xf192, 0xf193, 0xf194,
+  0xf195, 0xf196, 0xf423, 0xf414, 0xf5db, 0xf70a, 0xf8ce, 0x5766,
+  0x5768, 0x5767, 0x57d3, 0x6463, 0x6804, 0x699e, 0x6c26, 0x6c2a,
+  0x7c6c, 0x7c64, 0x818f, 0x8190, 0x8334, 0x860e, 0x8b25, 0x8b26,
+  0x8b27, 0x52fd, 0x8b28, 0x2c0c, 0x52fd, 0x8b29, 0x8b2a, 0x8b2b,
+  0x8b2c, 0x8f3e, 0x9442, 0x9443, 0x9433, 0x97c1, 0x97c2, 0x97c3,
+  0x9dd6, 0x9dd7, 0xa8e1, 0xa8e2, 0xaa2b, 0xadd1, 0xb0cc, 0xb0cd,
+  0xb0ce, 0xb0cf, 0xb4de, 0xb4df, 0xb4e0, 0xb4e1, 0xbbf6, 0xc42c,
+  0x52fd, 0xc454, 0xc42d, 0xc42e, 0xc841, 0xc842, 0xcac7, 0xcba0,
+  0xcba1, 0xce70, 0xce71, 0xce72, 0x52fd, 0xd134, 0xd135, 0xd136,
+  0xd2a6, 0xd4cc, 0x52fd, 0xd599, 0xdbf4, 0xde9b,
+  /* 0x6a */
+  0xde9e, 0xde9f, 0xdea0, 0xdea1, 0xdea2, 0xdea3, 0xdea4, 0xdea5,
+  0xdea6, 0xdea7, 0xdea8, 0xe0db, 0xe0dc, 0xe0dd, 0xe0d7, 0xe0de,
+  0xe0df, 0xe359, 0xe746, 0xe865, 0xe949, 0x52fd, 0xeadd, 0xec95,
+  0xec96, 0xec97, 0xeed4, 0xeed6, 0xf026, 0x4d47, 0x1688, 0xf1c8,
+  0xf1c5, 0xf1c6, 0xf1c7, 0xf451, 0xf452, 0xf453, 0xf454, 0xf455,
+  0xf5de, 0x52fd, 0x576d, 0x57d5, 0x6472, 0x74ae, 0x760f, 0x7c6b,
+  0x7c6d, 0x7c6e, 0x7c78, 0x8198, 0x8199, 0x819a, 0x8b44, 0x8b5c,
+  0x8b45, 0x8e01, 0x9458, 0x9459, 0x945a, 0x52fd, 0x97d9, 0x97d6,
+  0x9dda, 0x9ddf, 0x9ddb, 0xa003, 0xa8ef, 0x3836, 0xaa33, 0xadd2,
+  0xb0e1, 0xb26f, 0xb564, 0xb90e, 0xc450, 0xc451, 0xc452, 0xc856,
+  0xc857, 0xc858, 0x52fd, 0xce81, 0xce82, 0xcf1d, 0xcf1e, 0xd143,
+  0xd2aa, 0xdbfd, 0x52fd, 0xdec6, 0xdec7, 0xded9,
+  /* 0x6b */
+  0xded7, 0x52fd, 0xdec8, 0xdec9, 0xdeca, 0xdecb, 0xdeda, 0x52fd,
+  0xdecc, 0xdecd, 0xdece, 0xdecf, 0xded0, 0xded1, 0xdebc, 0xe0e1,
+  0xe0e2, 0xe0e3, 0xe4a9, 0xe54e, 0xe877, 0x52fd, 0x52fd, 0xecac,
+  0xecad, 0xedb6, 0xeee5, 0xf1f8, 0xf1ea, 0xf28d, 0xf1eb, 0xf495,
+  0x576e, 0x57d8, 0x6483, 0x69a3, 0x6c30, 0x6e0f, 0x7c79, 0x7c7a,
+  0x81a7, 0x81a8, 0x81a9, 0x81aa, 0x8619, 0x8b50, 0x8b51, 0x8b52,
+  0x2c15, 0x8b68, 0x8b53, 0x8b54, 0x9be2, 0x9ddc, 0xac15, 0xac16,
+  0xad4f, 0xb0f5, 0xb0f6, 0xb0f7, 0xb4f4, 0xb7cc, 0xb90f, 0xc466,
+  0xc467, 0x52fd, 0xc468, 0xcba4, 0xce8b, 0xce8c, 0xd4fa, 0xdee6,
+  0xdeed, 0xdeee, 0xdeef, 0xdef0, 0xdefe, 0xe0e7, 0xe0e8, 0xe4b3,
+  0xe4e4, 0xe883, 0xedec, 0x52fd, 0xf216, 0x52fd, 0x52fd, 0xf217,
+  0xf4c3, 0xf4ac, 0xf5ed, 0x52fd, 0x52fd, 0xf8b4,
+  /* 0x6c */
+  0x52fd, 0x648a, 0x648b, 0x6c34, 0x6e14, 0x72df, 0x77bb, 0x7c7f,
+  0x7c81, 0x81ad, 0x81ae, 0x8b62, 0x8b6e, 0x52fd, 0x946e, 0x52fd,
+  0x9a17, 0x9de6, 0x9f10, 0xac19, 0x52fd, 0xb910, 0xbdf2, 0xc476,
+  0xc477, 0xce95, 0xce96, 0xdf00, 0xdf01, 0xdf31, 0xfbed, 0xdf1c,
+  0xe36d, 0xeef4, 0xeef5, 0xf03d, 0xf232, 0xf233, 0xf5f4, 0x52fd,
+  0x5773, 0x6c37, 0x52fd, 0x8b71, 0xb10f, 0x52fd, 0xb10e, 0xb911,
+  0xc485, 0xdf14, 0xdf15, 0xdf16, 0xdf17, 0xdf18, 0xdf19, 0xdf1a,
+  0xe4c3, 0xf242, 0xf243, 0xf244, 0xf248, 0xf4fb, 0x69a5, 0x6cb8,
+  0x81b2, 0x833d, 0x8b72, 0x97e7, 0x97e8, 0xa659, 0xaa3a, 0xb114,
+  0xb4ff, 0xbcc0, 0xc48d, 0x1084, 0xc48e, 0x52fd, 0xdf22, 0x52fd,
+  0x52fd, 0xef04, 0xef29, 0xf251, 0xf266, 0xf50e, 0xfc13, 0x52fd,
+  0x649b, 0x649c, 0x7616, 0x7c86, 0x7c87, 0x52fd,
+  /* 0x6d */
+  0xdf2c, 0xdf30, 0xdf28, 0xe95f, 0x52fd, 0x947e, 0xb119, 0xd50a,
+  0xdf36, 0xe0fc, 0xf26d, 0xf26e, 0xf9c6, 0x1ab5, 0x8b7b, 0xb506,
+  0xc89f, 0xf532, 0xd50d, 0x7c8b, 0xdf3b, 0x52fd, 0xf53d, 0xdf3c,
+  0xdf3d,
+};
+
+static const ucs4_t cns11643_15_2uni_upages[253] = {
+  0x03400, 0x03500, 0x03600, 0x03700, 0x03800, 0x03900, 0x03a00, 0x03b00,
+  0x03c00, 0x03d00, 0x03e00, 0x03f00, 0x04000, 0x04100, 0x04300, 0x04400,
+  0x04500, 0x04600, 0x04700, 0x04800, 0x04900, 0x04a00, 0x04c00, 0x04f00,
+  0x05100, 0x05200, 0x05300, 0x05400, 0x05500, 0x05600, 0x05700, 0x05800,
+  0x05a00, 0x05b00, 0x05c00, 0x05e00, 0x05f00, 0x06200, 0x06500, 0x06600,
+  0x06700, 0x06800, 0x06900, 0x06a00, 0x06b00, 0x06c00, 0x06e00, 0x06f00,
+  0x07000, 0x07100, 0x07300, 0x07400, 0x07500, 0x07600, 0x07700, 0x07800,
+  0x07900, 0x07a00, 0x07b00, 0x07c00, 0x07d00, 0x07f00, 0x08200, 0x08300,
+  0x08600, 0x08700, 0x08900, 0x08a00, 0x08e00, 0x08f00, 0x09000, 0x09200,
+  0x09300, 0x09400, 0x09500, 0x09600, 0x09b00, 0x09c00, 0x09d00, 0x09e00,
+  0x09f00, 0x0fa00, 0x0ff00, 0x20000, 0x20100, 0x20200, 0x20300, 0x20400,
+  0x20500, 0x20600, 0x20700, 0x20800, 0x20900, 0x20a00, 0x20b00, 0x20c00,
+  0x20d00, 0x20e00, 0x20f00, 0x21000, 0x21100, 0x21200, 0x21300, 0x21400,
+  0x21500, 0x21600, 0x21700, 0x21800, 0x21900, 0x21a00, 0x21b00, 0x21c00,
+  0x21d00, 0x21e00, 0x21f00, 0x22000, 0x22100, 0x22200, 0x22300, 0x22400,
+  0x22500, 0x22600, 0x22700, 0x22800, 0x22900, 0x22a00, 0x22b00, 0x22c00,
+  0x22d00, 0x22e00, 0x22f00, 0x23000, 0x23100, 0x23200, 0x23300, 0x23400,
+  0x23500, 0x23600, 0x23700, 0x23800, 0x23900, 0x23a00, 0x23b00, 0x23c00,
+  0x23d00, 0x23e00, 0x23f00, 0x24000, 0x24100, 0x24200, 0x24300, 0x24400,
+  0x24500, 0x24600, 0x24700, 0x24800, 0x24900, 0x24a00, 0x24b00, 0x24c00,
+  0x24d00, 0x24e00, 0x24f00, 0x25000, 0x25100, 0x25200, 0x25300, 0x25400,
+  0x25500, 0x25600, 0x25700, 0x25800, 0x25900, 0x25a00, 0x25b00, 0x25c00,
+  0x25d00, 0x25e00, 0x25f00, 0x26000, 0x26100, 0x26200, 0x26300, 0x26400,
+  0x26500, 0x26600, 0x26700, 0x26800, 0x26900, 0x26a00, 0x26b00, 0x26c00,
+  0x26d00, 0x26e00, 0x26f00, 0x27000, 0x27100, 0x27200, 0x27300, 0x27400,
+  0x27500, 0x27600, 0x27700, 0x27800, 0x27900, 0x27a00, 0x27b00, 0x27c00,
+  0x27d00, 0x27e00, 0x27f00, 0x28000, 0x28100, 0x28200, 0x28300, 0x28400,
+  0x28500, 0x28600, 0x28700, 0x28800, 0x28900, 0x28a00, 0x28b00, 0x28c00,
+  0x28d00, 0x28e00, 0x28f00, 0x29000, 0x29100, 0x29200, 0x29300, 0x29400,
+  0x29500, 0x29600, 0x29700, 0x29800, 0x29900, 0x29a00, 0x29b00, 0x29c00,
+  0x29d00, 0x29e00, 0x29f00, 0x2a000, 0x2a100, 0x2a200, 0x2a300, 0x2a400,
+  0x2a500, 0x2a600, 0x2f800, 0x2f900, 0x2fa00,
+};
+
+static int
+cns11643_15_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 >= 0x21 && c1 <= 0x6d)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if (c2 >= 0x21 && c2 < 0x7f) {
+        unsigned int i = 94 * (c1 - 0x21) + (c2 - 0x21);
+        ucs4_t wc = 0xfffd;
+        unsigned short swc;
+        {
+          if (i < 7169)
+            swc = cns11643_15_2uni_page21[i],
+            wc = cns11643_15_2uni_upages[swc>>8] | (swc & 0xff);
+        }
+        if (wc != 0xfffd) {
+          *pwc = wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
diff --git a/graf2d/win32gdk/gdk/src/iconv/cns11643_2.h b/graf2d/win32gdk/gdk/src/iconv/cns11643_2.h
new file mode 100644
index 00000000000..7a73c60fa73
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cns11643_2.h
@@ -0,0 +1,1112 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CNS 11643-1992 plane 2
+ */
+
+static const unsigned short cns11643_2_2uni_page21[7650] = {
+  /* 0x21 */
+  0x4e42, 0x4e5c, 0x51f5, 0x531a, 0x5382, 0x4e07, 0x4e0c, 0x4e47,
+  0x4e8d, 0x56d7, 0x5c6e, 0x5f73, 0x4e0f, 0x5187, 0x4e0e, 0x4e2e,
+  0x4e93, 0x4ec2, 0x4ec9, 0x4ec8, 0x5198, 0x52fc, 0x536c, 0x53b9,
+  0x5720, 0x5903, 0x592c, 0x5c10, 0x5dff, 0x65e1, 0x6bb3, 0x6bcc,
+  0x6c14, 0x723f, 0x4e31, 0x4e3c, 0x4ee8, 0x4edc, 0x4ee9, 0x4ee1,
+  0x4edd, 0x4eda, 0x520c, 0x5209, 0x531c, 0x534c, 0x5722, 0x5723,
+  0x5917, 0x592f, 0x5b81, 0x5b84, 0x5c12, 0x5c3b, 0x5c74, 0x5c73,
+  0x5e04, 0x5e80, 0x5e82, 0x5fc9, 0x6209, 0x6250, 0x6c15, 0x6c36,
+  0x6c43, 0x6c3f, 0x6c3b, 0x72ae, 0x72b0, 0x738a, 0x79b8, 0x808a,
+  0x961e, 0x4f0e, 0x4f18, 0x4f2c, 0x4ef5, 0x4f14, 0x4ef1, 0x4f00,
+  0x4ef7, 0x4f08, 0x4f1d, 0x4f02, 0x4f05, 0x4f22, 0x4f13, 0x4f04,
+  0x4ef4, 0x4f12, 0x51b1, 0x5213, 0x5210, 0x52a6,
+  /* 0x22 */
+  0x5322, 0x531f, 0x534d, 0x538a, 0x5407, 0x56e1, 0x56df, 0x572e,
+  0x572a, 0x5734, 0x593c, 0x5980, 0x597c, 0x5985, 0x597b, 0x597e,
+  0x5977, 0x597f, 0x5b56, 0x5c15, 0x5c25, 0x5c7c, 0x5c7a, 0x5c7b,
+  0x5c7e, 0x5ddf, 0x5e75, 0x5e84, 0x5f02, 0x5f1a, 0x5f74, 0x5fd5,
+  0x5fd4, 0x5fcf, 0x625c, 0x625e, 0x6264, 0x6261, 0x6266, 0x6262,
+  0x6259, 0x6260, 0x625a, 0x6265, 0x6537, 0x65ef, 0x65ee, 0x673e,
+  0x6739, 0x6738, 0x673b, 0x673a, 0x673f, 0x673c, 0x6733, 0x6c18,
+  0x6c46, 0x6c52, 0x6c5c, 0x6c4f, 0x6c4a, 0x6c54, 0x6c4b, 0x6c4c,
+  0x7071, 0x725e, 0x72b4, 0x72b5, 0x738e, 0x752a, 0x767f, 0x7a75,
+  0x7f51, 0x8278, 0x827c, 0x8280, 0x827d, 0x827f, 0x864d, 0x897e,
+  0x9099, 0x9097, 0x9098, 0x909b, 0x9094, 0x9622, 0x9624, 0x9620,
+  0x9623, 0x4f56, 0x4f3b, 0x4f62, 0x4f49, 0x4f53,
+  /* 0x23 */
+  0x4f64, 0x4f3e, 0x4f67, 0x4f52, 0x4f5f, 0x4f41, 0x4f58, 0x4f2d,
+  0x4f33, 0x4f3f, 0x4f61, 0x518f, 0x51b9, 0x521c, 0x521e, 0x5221,
+  0x52ad, 0x52ae, 0x5309, 0x5363, 0x5372, 0x538e, 0x538f, 0x5430,
+  0x5437, 0x542a, 0x5454, 0x5445, 0x5419, 0x541c, 0x5425, 0x5418,
+  0x543d, 0x544f, 0x5441, 0x5428, 0x5424, 0x5447, 0x56ee, 0x56e7,
+  0x56e5, 0x5741, 0x5745, 0x574c, 0x5749, 0x574b, 0x5752, 0x5906,
+  0x5940, 0x59a6, 0x5998, 0x59a0, 0x5997, 0x598e, 0x59a2, 0x5990,
+  0x598f, 0x59a7, 0x59a1, 0x5b8e, 0x5b92, 0x5c28, 0x5c2a, 0x5c8d,
+  0x5c8f, 0x5c88, 0x5c8b, 0x5c89, 0x5c92, 0x5c8a, 0x5c86, 0x5c93,
+  0x5c95, 0x5de0, 0x5e0a, 0x5e0e, 0x5e8b, 0x5e89, 0x5e8c, 0x5e88,
+  0x5e8d, 0x5f05, 0x5f1d, 0x5f78, 0x5f76, 0x5fd2, 0x5fd1, 0x5fd0,
+  0x5fed, 0x5fe8, 0x5fee, 0x5ff3, 0x5fe1, 0x5fe4,
+  /* 0x24 */
+  0x5fe3, 0x5ffa, 0x5fef, 0x5ff7, 0x5ffb, 0x6000, 0x5ff4, 0x623a,
+  0x6283, 0x628c, 0x628e, 0x628f, 0x6294, 0x6287, 0x6271, 0x627b,
+  0x627a, 0x6270, 0x6281, 0x6288, 0x6277, 0x627d, 0x6272, 0x6274,
+  0x65f0, 0x65f4, 0x65f3, 0x65f2, 0x65f5, 0x6745, 0x6747, 0x6759,
+  0x6755, 0x674c, 0x6748, 0x675d, 0x674d, 0x675a, 0x674b, 0x6bd0,
+  0x6c19, 0x6c1a, 0x6c78, 0x6c67, 0x6c6b, 0x6c84, 0x6c8b, 0x6c8f,
+  0x6c71, 0x6c6f, 0x6c69, 0x6c9a, 0x6c6d, 0x6c87, 0x6c95, 0x6c9c,
+  0x6c66, 0x6c73, 0x6c65, 0x6c7b, 0x6c8e, 0x7074, 0x707a, 0x7263,
+  0x72bf, 0x72bd, 0x72c3, 0x72c6, 0x72c1, 0x72ba, 0x72c5, 0x7395,
+  0x7397, 0x7393, 0x7394, 0x7392, 0x753a, 0x7539, 0x7594, 0x7595,
+  0x7681, 0x793d, 0x8034, 0x8095, 0x8099, 0x8090, 0x8092, 0x809c,
+  0x8290, 0x828f, 0x8285, 0x828e, 0x8291, 0x8293,
+  /* 0x25 */
+  0x828a, 0x8283, 0x8284, 0x8c78, 0x8fc9, 0x8fbf, 0x909f, 0x90a1,
+  0x90a5, 0x909e, 0x90a7, 0x90a0, 0x9630, 0x9628, 0x962f, 0x962d,
+  0x4e33, 0x4f98, 0x4f7c, 0x4f85, 0x4f7d, 0x4f80, 0x4f87, 0x4f76,
+  0x4f74, 0x4f89, 0x4f84, 0x4f77, 0x4f4c, 0x4f97, 0x4f6a, 0x4f9a,
+  0x4f79, 0x4f81, 0x4f78, 0x4f90, 0x4f9c, 0x4f94, 0x4f9e, 0x4f92,
+  0x4f82, 0x4f95, 0x4f6b, 0x4f6e, 0x519e, 0x51bc, 0x51be, 0x5235,
+  0x5232, 0x5233, 0x5246, 0x5231, 0x52bc, 0x530a, 0x530b, 0x533c,
+  0x5392, 0x5394, 0x5487, 0x547f, 0x5481, 0x5491, 0x5482, 0x5488,
+  0x546b, 0x547a, 0x547e, 0x5465, 0x546c, 0x5474, 0x5466, 0x548d,
+  0x546f, 0x5461, 0x5460, 0x5498, 0x5463, 0x5467, 0x5464, 0x56f7,
+  0x56f9, 0x576f, 0x5772, 0x576d, 0x576b, 0x5771, 0x5770, 0x5776,
+  0x5780, 0x5775, 0x577b, 0x5773, 0x5774, 0x5762,
+  /* 0x26 */
+  0x5768, 0x577d, 0x590c, 0x5945, 0x59b5, 0x59ba, 0x59cf, 0x59ce,
+  0x59b2, 0x59cc, 0x59c1, 0x59b6, 0x59bc, 0x59c3, 0x59d6, 0x59b1,
+  0x59bd, 0x59c0, 0x59c8, 0x59b4, 0x59c7, 0x5b62, 0x5b65, 0x5b93,
+  0x5b95, 0x5c44, 0x5c47, 0x5cae, 0x5ca4, 0x5ca0, 0x5cb5, 0x5caf,
+  0x5ca8, 0x5cac, 0x5c9f, 0x5ca3, 0x5cad, 0x5ca2, 0x5caa, 0x5ca7,
+  0x5c9d, 0x5ca5, 0x5cb6, 0x5cb0, 0x5ca6, 0x5e17, 0x5e14, 0x5e19,
+  0x5f28, 0x5f22, 0x5f23, 0x5f24, 0x5f54, 0x5f82, 0x5f7e, 0x5f7d,
+  0x5fde, 0x5fe5, 0x602d, 0x6026, 0x6019, 0x6032, 0x600b, 0x6034,
+  0x600a, 0x6017, 0x6033, 0x601a, 0x601e, 0x602c, 0x6022, 0x600d,
+  0x6010, 0x602e, 0x6013, 0x6011, 0x600c, 0x6009, 0x601c, 0x6214,
+  0x623d, 0x62ad, 0x62b4, 0x62d1, 0x62be, 0x62aa, 0x62b6, 0x62ca,
+  0x62ae, 0x62b3, 0x62af, 0x62bb, 0x62a9, 0x62b0,
+  /* 0x27 */
+  0x62b8, 0x653d, 0x65a8, 0x65bb, 0x6609, 0x65fc, 0x6604, 0x6612,
+  0x6608, 0x65fb, 0x6603, 0x660b, 0x660d, 0x6605, 0x65fd, 0x6611,
+  0x6610, 0x66f6, 0x670a, 0x6785, 0x676c, 0x678e, 0x6792, 0x6776,
+  0x677b, 0x6798, 0x6786, 0x6784, 0x6774, 0x678d, 0x678c, 0x677a,
+  0x679f, 0x6791, 0x6799, 0x6783, 0x677d, 0x6781, 0x6778, 0x6779,
+  0x6794, 0x6b25, 0x6b80, 0x6b7e, 0x6bde, 0x6c1d, 0x6c93, 0x6cec,
+  0x6ceb, 0x6cee, 0x6cd9, 0x6cb6, 0x6cd4, 0x6cad, 0x6ce7, 0x6cb7,
+  0x6cd0, 0x6cc2, 0x6cba, 0x6cc3, 0x6cc6, 0x6ced, 0x6cf2, 0x6cd2,
+  0x6cdd, 0x6cb4, 0x6c8a, 0x6c9d, 0x6c80, 0x6cde, 0x6cc0, 0x6d30,
+  0x6ccd, 0x6cc7, 0x6cb0, 0x6cf9, 0x6ccf, 0x6ce9, 0x6cd1, 0x7094,
+  0x7098, 0x7085, 0x7093, 0x7086, 0x7084, 0x7091, 0x7096, 0x7082,
+  0x709a, 0x7083, 0x726a, 0x72d6, 0x72cb, 0x72d8,
+  /* 0x28 */
+  0x72c9, 0x72dc, 0x72d2, 0x72d4, 0x72da, 0x72cc, 0x72d1, 0x73a4,
+  0x73a1, 0x73ad, 0x73a6, 0x73a2, 0x73a0, 0x73ac, 0x739d, 0x74dd,
+  0x74e8, 0x753f, 0x7540, 0x753e, 0x758c, 0x7598, 0x76af, 0x76f3,
+  0x76f1, 0x76f0, 0x76f5, 0x77f8, 0x77fc, 0x77f9, 0x77fb, 0x77fa,
+  0x77f7, 0x7942, 0x793f, 0x79c5, 0x7a78, 0x7a7b, 0x7afb, 0x7c75,
+  0x7cfd, 0x8035, 0x808f, 0x80ae, 0x80a3, 0x80b8, 0x80b5, 0x80ad,
+  0x8220, 0x82a0, 0x82c0, 0x82ab, 0x829a, 0x8298, 0x829b, 0x82b5,
+  0x82a7, 0x82ae, 0x82bc, 0x829e, 0x82ba, 0x82b4, 0x82a8, 0x82a1,
+  0x82a9, 0x82c2, 0x82a4, 0x82c3, 0x82b6, 0x82a2, 0x8670, 0x866f,
+  0x866d, 0x866e, 0x8c56, 0x8fd2, 0x8fcb, 0x8fd3, 0x8fcd, 0x8fd6,
+  0x8fd5, 0x8fd7, 0x90b2, 0x90b4, 0x90af, 0x90b3, 0x90b0, 0x9639,
+  0x963d, 0x963c, 0x963a, 0x9643, 0x4fcd, 0x4fc5,
+  /* 0x29 */
+  0x4fd3, 0x4fb2, 0x4fc9, 0x4fcb, 0x4fc1, 0x4fd4, 0x4fdc, 0x4fd9,
+  0x4fbb, 0x4fb3, 0x4fdb, 0x4fc7, 0x4fd6, 0x4fba, 0x4fc0, 0x4fb9,
+  0x4fec, 0x5244, 0x5249, 0x52c0, 0x52c2, 0x533d, 0x537c, 0x5397,
+  0x5396, 0x5399, 0x5398, 0x54ba, 0x54a1, 0x54ad, 0x54a5, 0x54cf,
+  0x54c3, 0x830d, 0x54b7, 0x54ae, 0x54d6, 0x54b6, 0x54c5, 0x54c6,
+  0x54a0, 0x5470, 0x54bc, 0x54a2, 0x54be, 0x5472, 0x54de, 0x54b0,
+  0x57b5, 0x579e, 0x579f, 0x57a4, 0x578c, 0x5797, 0x579d, 0x579b,
+  0x5794, 0x5798, 0x578f, 0x5799, 0x57a5, 0x579a, 0x5795, 0x58f4,
+  0x590d, 0x5953, 0x59e1, 0x59de, 0x59ee, 0x5a00, 0x59f1, 0x59dd,
+  0x59fa, 0x59fd, 0x59fc, 0x59f6, 0x59e4, 0x59f2, 0x59f7, 0x59db,
+  0x59e9, 0x59f3, 0x59f5, 0x59e0, 0x59fe, 0x59f4, 0x59ed, 0x5ba8,
+  0x5c4c, 0x5cd0, 0x5cd8, 0x5ccc, 0x5cd7, 0x5ccb,
+  /* 0x2a */
+  0x5cdb, 0x5cde, 0x5cda, 0x5cc9, 0x5cc7, 0x5cca, 0x5cd6, 0x5cd3,
+  0x5cd4, 0x5ccf, 0x5cc8, 0x5cc6, 0x5cce, 0x5cdf, 0x5cf8, 0x5df9,
+  0x5e21, 0x5e22, 0x5e23, 0x5e20, 0x5e24, 0x5eb0, 0x5ea4, 0x5ea2,
+  0x5e9b, 0x5ea3, 0x5ea5, 0x5f07, 0x5f2e, 0x5f56, 0x5f86, 0x6037,
+  0x6039, 0x6054, 0x6072, 0x605e, 0x6045, 0x6053, 0x6047, 0x6049,
+  0x605b, 0x604c, 0x6040, 0x6042, 0x605f, 0x6024, 0x6044, 0x6058,
+  0x6066, 0x606e, 0x6242, 0x6243, 0x62cf, 0x630d, 0x630b, 0x62f5,
+  0x630e, 0x6303, 0x62eb, 0x62f9, 0x630f, 0x630c, 0x62f8, 0x62f6,
+  0x6300, 0x6313, 0x6314, 0x62fa, 0x6315, 0x62fb, 0x62f0, 0x6541,
+  0x6543, 0x65aa, 0x65bf, 0x6636, 0x6621, 0x6632, 0x6635, 0x661c,
+  0x6626, 0x6622, 0x6633, 0x662b, 0x663a, 0x661d, 0x6634, 0x6639,
+  0x662e, 0x670f, 0x6710, 0x67c1, 0x67f2, 0x67c8,
+  /* 0x2b */
+  0x67ba, 0x67dc, 0x67bb, 0x67f8, 0x67d8, 0x67c0, 0x67b7, 0x67c5,
+  0x67eb, 0x67e4, 0x67df, 0x67b5, 0x67cd, 0x67b3, 0x67f7, 0x67f6,
+  0x67ee, 0x67e3, 0x67c2, 0x67b9, 0x67ce, 0x67e7, 0x67f0, 0x67b2,
+  0x67fc, 0x67c6, 0x67ed, 0x67cc, 0x67ae, 0x67e6, 0x67db, 0x67fa,
+  0x67c9, 0x67ca, 0x67c3, 0x67ea, 0x67cb, 0x6b28, 0x6b82, 0x6b84,
+  0x6bb6, 0x6bd6, 0x6bd8, 0x6be0, 0x6c20, 0x6c21, 0x6d28, 0x6d34,
+  0x6d2d, 0x6d1f, 0x6d3c, 0x6d3f, 0x6d12, 0x6d0a, 0x6cda, 0x6d33,
+  0x6d04, 0x6d19, 0x6d3a, 0x6d1a, 0x6d11, 0x6d00, 0x6d1d, 0x6d42,
+  0x6d01, 0x6d18, 0x6d37, 0x6d03, 0x6d0f, 0x6d40, 0x6d07, 0x6d20,
+  0x6d2c, 0x6d08, 0x6d22, 0x6d09, 0x6d10, 0x70b7, 0x709f, 0x70be,
+  0x70b1, 0x70b0, 0x70a1, 0x70b4, 0x70b5, 0x70a9, 0x7241, 0x7249,
+  0x724a, 0x726c, 0x7270, 0x7273, 0x726e, 0x72ca,
+  /* 0x2c */
+  0x72e4, 0x72e8, 0x72eb, 0x72df, 0x72ea, 0x72e6, 0x72e3, 0x7385,
+  0x73cc, 0x73c2, 0x73c8, 0x73c5, 0x73b9, 0x73b6, 0x73b5, 0x73b4,
+  0x73eb, 0x73bf, 0x73c7, 0x73be, 0x73c3, 0x73c6, 0x73b8, 0x73cb,
+  0x74ec, 0x74ee, 0x752e, 0x7547, 0x7548, 0x75a7, 0x75aa, 0x7679,
+  0x76c4, 0x7708, 0x7703, 0x7704, 0x7705, 0x770a, 0x76f7, 0x76fb,
+  0x76fa, 0x77e7, 0x77e8, 0x7806, 0x7811, 0x7812, 0x7805, 0x7810,
+  0x780f, 0x780e, 0x7809, 0x7803, 0x7813, 0x794a, 0x794c, 0x794b,
+  0x7945, 0x7944, 0x79d5, 0x79cd, 0x79cf, 0x79d6, 0x79ce, 0x7a80,
+  0x7a7e, 0x7ad1, 0x7b00, 0x7b01, 0x7c7a, 0x7c78, 0x7c79, 0x7c7f,
+  0x7c80, 0x7c81, 0x7d03, 0x7d08, 0x7d01, 0x7f58, 0x7f91, 0x7f8d,
+  0x7fbe, 0x8007, 0x800e, 0x800f, 0x8014, 0x8037, 0x80d8, 0x80c7,
+  0x80e0, 0x80d1, 0x80c8, 0x80c2, 0x80d0, 0x80c5,
+  /* 0x2d */
+  0x80e3, 0x80d9, 0x80dc, 0x80ca, 0x80d5, 0x80c9, 0x80cf, 0x80d7,
+  0x80e6, 0x80cd, 0x81ff, 0x8221, 0x8294, 0x82d9, 0x82fe, 0x82f9,
+  0x8307, 0x82e8, 0x8300, 0x82d5, 0x833a, 0x82eb, 0x82d6, 0x82f4,
+  0x82ec, 0x82e1, 0x82f2, 0x82f5, 0x830c, 0x82fb, 0x82f6, 0x82f0,
+  0x82ea, 0x82e4, 0x82e0, 0x82fa, 0x82f3, 0x82ed, 0x8677, 0x8674,
+  0x867c, 0x8673, 0x8841, 0x884e, 0x8867, 0x886a, 0x8869, 0x89d3,
+  0x8a04, 0x8a07, 0x8d72, 0x8fe3, 0x8fe1, 0x8fee, 0x8fe0, 0x90f1,
+  0x90bd, 0x90bf, 0x90d5, 0x90c5, 0x90be, 0x90c7, 0x90cb, 0x90c8,
+  0x91d4, 0x91d3, 0x9654, 0x964f, 0x9651, 0x9653, 0x964a, 0x964e,
+  0x501e, 0x5005, 0x5007, 0x5013, 0x5022, 0x5030, 0x501b, 0x4ff5,
+  0x4ff4, 0x5033, 0x5037, 0x502c, 0x4ff6, 0x4ff7, 0x5017, 0x501c,
+  0x5020, 0x5027, 0x5035, 0x502f, 0x5031, 0x500e,
+  /* 0x2e */
+  0x515a, 0x5194, 0x5193, 0x51ca, 0x51c4, 0x51c5, 0x51c8, 0x51ce,
+  0x5261, 0x525a, 0x5252, 0x525e, 0x525f, 0x5255, 0x5262, 0x52cd,
+  0x530e, 0x539e, 0x5526, 0x54e2, 0x5517, 0x5512, 0x54e7, 0x54f3,
+  0x54e4, 0x551a, 0x54ff, 0x5504, 0x5508, 0x54eb, 0x5511, 0x5505,
+  0x54f1, 0x550a, 0x54fb, 0x54f7, 0x54f8, 0x54e0, 0x550e, 0x5503,
+  0x550b, 0x5701, 0x5702, 0x57cc, 0x5832, 0x57d5, 0x57d2, 0x57ba,
+  0x57c6, 0x57bd, 0x57bc, 0x57b8, 0x57b6, 0x57bf, 0x57c7, 0x57d0,
+  0x57b9, 0x57c1, 0x590e, 0x594a, 0x5a19, 0x5a16, 0x5a2d, 0x5a2e,
+  0x5a15, 0x5a0f, 0x5a17, 0x5a0a, 0x5a1e, 0x5a33, 0x5b6c, 0x5ba7,
+  0x5bad, 0x5bac, 0x5c03, 0x5c56, 0x5c54, 0x5cec, 0x5cff, 0x5cee,
+  0x5cf1, 0x5cf7, 0x5d00, 0x5cf9, 0x5e29, 0x5e28, 0x5ea8, 0x5eae,
+  0x5eaa, 0x5eac, 0x5f33, 0x5f30, 0x5f67, 0x605d,
+  /* 0x2f */
+  0x605a, 0x6067, 0x6041, 0x60a2, 0x6088, 0x6080, 0x6092, 0x6081,
+  0x609d, 0x6083, 0x6095, 0x609b, 0x6097, 0x6087, 0x609c, 0x608e,
+  0x6219, 0x6246, 0x62f2, 0x6310, 0x6356, 0x632c, 0x6344, 0x6345,
+  0x6336, 0x6343, 0x63e4, 0x6339, 0x634b, 0x634a, 0x633c, 0x6329,
+  0x6341, 0x6334, 0x6358, 0x6354, 0x6359, 0x632d, 0x6347, 0x6333,
+  0x635a, 0x6351, 0x6338, 0x6357, 0x6340, 0x6348, 0x654a, 0x6546,
+  0x65c6, 0x65c3, 0x65c4, 0x65c2, 0x664a, 0x665f, 0x6647, 0x6651,
+  0x6712, 0x6713, 0x681f, 0x681a, 0x6849, 0x6832, 0x6833, 0x683b,
+  0x684b, 0x684f, 0x6816, 0x6831, 0x681c, 0x6835, 0x682b, 0x682d,
+  0x682f, 0x684e, 0x6844, 0x6834, 0x681d, 0x6812, 0x6814, 0x6826,
+  0x6828, 0x682e, 0x684d, 0x683a, 0x6825, 0x6820, 0x6b2c, 0x6b2f,
+  0x6b2d, 0x6b31, 0x6b34, 0x6b6d, 0x8082, 0x6b88,
+  /* 0x30 */
+  0x6be6, 0x6be4, 0x6be8, 0x6be3, 0x6be2, 0x6be7, 0x6c25, 0x6d7a,
+  0x6d63, 0x6d64, 0x6d76, 0x6d0d, 0x6d61, 0x6d92, 0x6d58, 0x6d62,
+  0x6d6d, 0x6d6f, 0x6d91, 0x6d8d, 0x6def, 0x6d7f, 0x6d86, 0x6d5e,
+  0x6d67, 0x6d60, 0x6d97, 0x6d70, 0x6d7c, 0x6d5f, 0x6d82, 0x6d98,
+  0x6d2f, 0x6d68, 0x6d8b, 0x6d7e, 0x6d80, 0x6d84, 0x6d16, 0x6d83,
+  0x6d7b, 0x6d7d, 0x6d75, 0x6d90, 0x70dc, 0x70d3, 0x70d1, 0x70dd,
+  0x70cb, 0x7f39, 0x70e2, 0x70d7, 0x70d2, 0x70de, 0x70e0, 0x70d4,
+  0x70cd, 0x70c5, 0x70c6, 0x70c7, 0x70da, 0x70ce, 0x70e1, 0x7242,
+  0x7278, 0x7277, 0x7276, 0x7300, 0x72fa, 0x72f4, 0x72fe, 0x72f6,
+  0x72f3, 0x72fb, 0x7301, 0x73d3, 0x73d9, 0x73e5, 0x73d6, 0x73bc,
+  0x73e7, 0x73e3, 0x73e9, 0x73dc, 0x73d2, 0x73db, 0x73d4, 0x73dd,
+  0x73da, 0x73d7, 0x73d8, 0x73e8, 0x74de, 0x74df,
+  /* 0x31 */
+  0x74f4, 0x74f5, 0x7521, 0x755b, 0x755f, 0x75b0, 0x75c1, 0x75bb,
+  0x75c4, 0x75c0, 0x75bf, 0x75b6, 0x75ba, 0x768a, 0x76c9, 0x771d,
+  0x771b, 0x7710, 0x7713, 0x7712, 0x7723, 0x7711, 0x7715, 0x7719,
+  0x771a, 0x7722, 0x7727, 0x7823, 0x782c, 0x7822, 0x7835, 0x782f,
+  0x7828, 0x782e, 0x782b, 0x7821, 0x7829, 0x7833, 0x782a, 0x7831,
+  0x7954, 0x795b, 0x794f, 0x795c, 0x7953, 0x7952, 0x7951, 0x79eb,
+  0x79ec, 0x79e0, 0x79ee, 0x79ed, 0x79ea, 0x79dc, 0x79de, 0x79dd,
+  0x7a86, 0x7a89, 0x7a85, 0x7a8b, 0x7a8c, 0x7a8a, 0x7a87, 0x7ad8,
+  0x7b10, 0x7b04, 0x7b13, 0x7b05, 0x7b0f, 0x7b08, 0x7b0a, 0x7b0e,
+  0x7b09, 0x7b12, 0x7c84, 0x7c91, 0x7c8a, 0x7c8c, 0x7c88, 0x7c8d,
+  0x7c85, 0x7d1e, 0x7d1d, 0x7d11, 0x7d0e, 0x7d18, 0x7d16, 0x7d13,
+  0x7d1f, 0x7d12, 0x7d0f, 0x7d0c, 0x7f5c, 0x7f61,
+  /* 0x32 */
+  0x7f5e, 0x7f60, 0x7f5d, 0x7f5b, 0x7f96, 0x7f92, 0x7fc3, 0x7fc2,
+  0x7fc0, 0x8016, 0x803e, 0x8039, 0x80fa, 0x80f2, 0x80f9, 0x80f5,
+  0x8101, 0x80fb, 0x8100, 0x8201, 0x822f, 0x8225, 0x8333, 0x832d,
+  0x8344, 0x8319, 0x8351, 0x8325, 0x8356, 0x833f, 0x8341, 0x8326,
+  0x831c, 0x8322, 0x8342, 0x834e, 0x831b, 0x832a, 0x8308, 0x833c,
+  0x834d, 0x8316, 0x8324, 0x8320, 0x8337, 0x832f, 0x8329, 0x8347,
+  0x8345, 0x834c, 0x8353, 0x831e, 0x832c, 0x834b, 0x8327, 0x8348,
+  0x8653, 0x8652, 0x86a2, 0x86a8, 0x8696, 0x868d, 0x8691, 0x869e,
+  0x8687, 0x8697, 0x8686, 0x868b, 0x869a, 0x8685, 0x86a5, 0x8699,
+  0x86a1, 0x86a7, 0x8695, 0x8698, 0x868e, 0x869d, 0x8690, 0x8694,
+  0x8843, 0x8844, 0x886d, 0x8875, 0x8876, 0x8872, 0x8880, 0x8871,
+  0x887f, 0x886f, 0x8883, 0x887e, 0x8874, 0x887c,
+  /* 0x33 */
+  0x8a12, 0x8c47, 0x8c57, 0x8c7b, 0x8ca4, 0x8ca3, 0x8d76, 0x8d78,
+  0x8db5, 0x8db7, 0x8db6, 0x8ed1, 0x8ed3, 0x8ffe, 0x8ff5, 0x9002,
+  0x8fff, 0x8ffb, 0x9004, 0x8ffc, 0x8ff6, 0x90d6, 0x90e0, 0x90d9,
+  0x90da, 0x90e3, 0x90df, 0x90e5, 0x90d8, 0x90db, 0x90d7, 0x90dc,
+  0x90e4, 0x9150, 0x914e, 0x914f, 0x91d5, 0x91e2, 0x91da, 0x965c,
+  0x965f, 0x96bc, 0x98e3, 0x9adf, 0x9b2f, 0x4e7f, 0x5070, 0x506a,
+  0x5061, 0x505e, 0x5060, 0x5053, 0x504b, 0x505d, 0x5072, 0x5048,
+  0x504d, 0x5041, 0x505b, 0x504a, 0x5062, 0x5015, 0x5045, 0x505f,
+  0x5069, 0x506b, 0x5063, 0x5064, 0x5046, 0x5040, 0x506e, 0x5073,
+  0x5057, 0x5051, 0x51d0, 0x526b, 0x526d, 0x526c, 0x526e, 0x52d6,
+  0x52d3, 0x532d, 0x539c, 0x5575, 0x5576, 0x553c, 0x554d, 0x5550,
+  0x5534, 0x552a, 0x5551, 0x5562, 0x5536, 0x5535,
+  /* 0x34 */
+  0x5530, 0x5552, 0x5545, 0x550c, 0x5532, 0x5565, 0x554e, 0x5539,
+  0x5548, 0x552d, 0x553b, 0x5540, 0x554b, 0x570a, 0x5707, 0x57fb,
+  0x5814, 0x57e2, 0x57f6, 0x57dc, 0x57f4, 0x5800, 0x57ed, 0x57fd,
+  0x5808, 0x57f8, 0x580b, 0x57f3, 0x57cf, 0x5807, 0x57ee, 0x57e3,
+  0x57f2, 0x57e5, 0x57ec, 0x57e1, 0x580e, 0x57fc, 0x5810, 0x57e7,
+  0x5801, 0x580c, 0x57f1, 0x57e9, 0x57f0, 0x580d, 0x5804, 0x595c,
+  0x5a60, 0x5a58, 0x5a55, 0x5a67, 0x5a5e, 0x5a38, 0x5a35, 0x5a6d,
+  0x5a50, 0x5a5f, 0x5a65, 0x5a6c, 0x5a53, 0x5a64, 0x5a57, 0x5a43,
+  0x5a5d, 0x5a52, 0x5a44, 0x5a5b, 0x5a48, 0x5a8e, 0x5a3e, 0x5a4d,
+  0x5a39, 0x5a4c, 0x5a70, 0x5a69, 0x5a47, 0x5a51, 0x5a56, 0x5a42,
+  0x5a5c, 0x5b72, 0x5b6e, 0x5bc1, 0x5bc0, 0x5c59, 0x5d1e, 0x5d0b,
+  0x5d1d, 0x5d1a, 0x5d20, 0x5d0c, 0x5d28, 0x5d0d,
+  /* 0x35 */
+  0x5d26, 0x5d25, 0x5d0f, 0x5d30, 0x5d12, 0x5d23, 0x5d1f, 0x5d2e,
+  0x5e3e, 0x5e34, 0x5eb1, 0x5eb4, 0x5eb9, 0x5eb2, 0x5eb3, 0x5f36,
+  0x5f38, 0x5f9b, 0x5f96, 0x5f9f, 0x608a, 0x6090, 0x6086, 0x60be,
+  0x60b0, 0x60ba, 0x60d3, 0x60d4, 0x60cf, 0x60e4, 0x60d9, 0x60dd,
+  0x60c8, 0x60b1, 0x60db, 0x60b7, 0x60ca, 0x60bf, 0x60c3, 0x60cd,
+  0x60c0, 0x6332, 0x6365, 0x638a, 0x6382, 0x637d, 0x63bd, 0x639e,
+  0x63ad, 0x639d, 0x6397, 0x63ab, 0x638e, 0x636f, 0x6387, 0x6390,
+  0x636e, 0x63af, 0x6375, 0x639c, 0x636d, 0x63ae, 0x637c, 0x63a4,
+  0x633b, 0x639f, 0x6378, 0x6385, 0x6381, 0x6391, 0x638d, 0x6370,
+  0x6553, 0x65cd, 0x6665, 0x6661, 0x665b, 0x6659, 0x665c, 0x6662,
+  0x6718, 0x6879, 0x6887, 0x6890, 0x689c, 0x686d, 0x686e, 0x68ae,
+  0x68ab, 0x6956, 0x686f, 0x68a3, 0x68ac, 0x68a9,
+  /* 0x36 */
+  0x6875, 0x6874, 0x68b2, 0x688f, 0x6877, 0x6892, 0x687c, 0x686b,
+  0x6872, 0x68aa, 0x6880, 0x6871, 0x687e, 0x689b, 0x6896, 0x688b,
+  0x68a0, 0x6889, 0x68a4, 0x6878, 0x687b, 0x6891, 0x688c, 0x688a,
+  0x687d, 0x6b36, 0x6b33, 0x6b37, 0x6b38, 0x6b91, 0x6b8f, 0x6b8d,
+  0x6b8e, 0x6b8c, 0x6c2a, 0x6dc0, 0x6dab, 0x6db4, 0x6db3, 0x6e74,
+  0x6dac, 0x6de9, 0x6de2, 0x6db7, 0x6df6, 0x6dd4, 0x6e00, 0x6dc8,
+  0x6de0, 0x6ddf, 0x6dd6, 0x6dbe, 0x6de5, 0x6ddc, 0x6ddd, 0x6ddb,
+  0x6df4, 0x6dca, 0x6dbd, 0x6ded, 0x6df0, 0x6dba, 0x6dd5, 0x6dc2,
+  0x6dcf, 0x6dc9, 0x6dd0, 0x6df2, 0x6dd3, 0x6dfd, 0x6dd7, 0x6dcd,
+  0x6de3, 0x6dbb, 0x70fa, 0x710d, 0x70f7, 0x7117, 0x70f4, 0x710c,
+  0x70f0, 0x7104, 0x70f3, 0x7110, 0x70fc, 0x70ff, 0x7106, 0x7113,
+  0x7100, 0x70f8, 0x70f6, 0x710b, 0x7102, 0x710e,
+  /* 0x37 */
+  0x727e, 0x727b, 0x727c, 0x727f, 0x731d, 0x7317, 0x7307, 0x7311,
+  0x7318, 0x730a, 0x7308, 0x72ff, 0x730f, 0x731e, 0x7388, 0x73f6,
+  0x73f8, 0x73f5, 0x7404, 0x7401, 0x73fd, 0x7407, 0x7400, 0x73fa,
+  0x73fc, 0x73ff, 0x740c, 0x740b, 0x73f4, 0x7408, 0x7564, 0x7563,
+  0x75ce, 0x75d2, 0x75cf, 0x75cb, 0x75cc, 0x75d1, 0x75d0, 0x768f,
+  0x7689, 0x76d3, 0x7739, 0x772f, 0x772d, 0x7731, 0x7732, 0x7734,
+  0x7733, 0x773d, 0x7725, 0x773b, 0x7735, 0x7848, 0x7852, 0x7849,
+  0x784d, 0x784a, 0x784c, 0x7826, 0x7845, 0x7850, 0x7964, 0x7967,
+  0x7969, 0x796a, 0x7963, 0x796b, 0x7961, 0x79bb, 0x79fa, 0x79f8,
+  0x79f6, 0x79f7, 0x7a8f, 0x7a94, 0x7a90, 0x7b35, 0x7b3b, 0x7b34,
+  0x7b25, 0x7b30, 0x7b22, 0x7b24, 0x7b33, 0x7b18, 0x7b2a, 0x7b1d,
+  0x7b31, 0x7b2b, 0x7b2d, 0x7b2f, 0x7b32, 0x7b38,
+  /* 0x38 */
+  0x7b1a, 0x7b23, 0x7c94, 0x7c98, 0x7c96, 0x7ca3, 0x7d35, 0x7d3d,
+  0x7d38, 0x7d36, 0x7d3a, 0x7d45, 0x7d2c, 0x7d29, 0x7d41, 0x7d47,
+  0x7d3e, 0x7d3f, 0x7d4a, 0x7d3b, 0x7d28, 0x7f63, 0x7f95, 0x7f9c,
+  0x7f9d, 0x7f9b, 0x7fca, 0x7fcb, 0x7fcd, 0x7fd0, 0x7fd1, 0x7fc7,
+  0x7fcf, 0x7fc9, 0x801f, 0x801e, 0x801b, 0x8047, 0x8043, 0x8048,
+  0x8118, 0x8125, 0x8119, 0x811b, 0x812d, 0x811f, 0x812c, 0x811e,
+  0x8121, 0x8115, 0x8127, 0x811d, 0x8122, 0x8211, 0x8238, 0x8233,
+  0x823a, 0x8234, 0x8232, 0x8274, 0x8390, 0x83a3, 0x83a8, 0x838d,
+  0x837a, 0x8373, 0x83a4, 0x8374, 0x838f, 0x8381, 0x8395, 0x8399,
+  0x8375, 0x8394, 0x83a9, 0x837d, 0x8383, 0x838c, 0x839d, 0x839b,
+  0x83aa, 0x838b, 0x837e, 0x83a5, 0x83af, 0x8388, 0x8397, 0x83b0,
+  0x837f, 0x83a6, 0x8387, 0x83ae, 0x8376, 0x8659,
+  /* 0x39 */
+  0x8656, 0x86bf, 0x86b7, 0x86c2, 0x86c1, 0x86c5, 0x86ba, 0x86b0,
+  0x86c8, 0x86b9, 0x86b3, 0x86b8, 0x86cc, 0x86b4, 0x86bb, 0x86bc,
+  0x86c3, 0x86bd, 0x86be, 0x8852, 0x8889, 0x8895, 0x88a8, 0x88a2,
+  0x88aa, 0x889a, 0x8891, 0x88a1, 0x889f, 0x8898, 0x88a7, 0x8899,
+  0x889b, 0x8897, 0x88a4, 0x88ac, 0x888c, 0x8893, 0x888e, 0x8982,
+  0x89d6, 0x89d9, 0x89d5, 0x8a30, 0x8a27, 0x8a2c, 0x8a1e, 0x8c39,
+  0x8c3b, 0x8c5c, 0x8c5d, 0x8c7d, 0x8ca5, 0x8d7d, 0x8d7b, 0x8d79,
+  0x8dbc, 0x8dc2, 0x8db9, 0x8dbf, 0x8dc1, 0x8ed8, 0x8ede, 0x8edd,
+  0x8edc, 0x8ed7, 0x8ee0, 0x8ee1, 0x9024, 0x900b, 0x9011, 0x901c,
+  0x900c, 0x9021, 0x90ef, 0x90ea, 0x90f0, 0x90f4, 0x90f2, 0x90f3,
+  0x90d4, 0x90eb, 0x90ec, 0x90e9, 0x9156, 0x9158, 0x915a, 0x9153,
+  0x9155, 0x91ec, 0x91f4, 0x91f1, 0x91f3, 0x91f8,
+  /* 0x3a */
+  0x91e4, 0x91f9, 0x91ea, 0x91eb, 0x91f7, 0x91e8, 0x91ee, 0x957a,
+  0x9586, 0x9588, 0x967c, 0x966d, 0x966b, 0x9671, 0x966f, 0x96bf,
+  0x976a, 0x9804, 0x98e5, 0x9997, 0x509b, 0x5095, 0x5094, 0x509e,
+  0x508b, 0x50a3, 0x5083, 0x508c, 0x508e, 0x509d, 0x5068, 0x509c,
+  0x5092, 0x5082, 0x5087, 0x515f, 0x51d4, 0x5312, 0x5311, 0x53a4,
+  0x53a7, 0x5591, 0x55a8, 0x55a5, 0x55ad, 0x5577, 0x5645, 0x55a2,
+  0x5593, 0x5588, 0x558f, 0x55b5, 0x5581, 0x55a3, 0x5592, 0x55a4,
+  0x557d, 0x558c, 0x55a6, 0x557f, 0x5595, 0x55a1, 0x558e, 0x570c,
+  0x5829, 0x5837, 0x5819, 0x581e, 0x5827, 0x5823, 0x5828, 0x57f5,
+  0x5848, 0x5825, 0x581c, 0x581b, 0x5833, 0x583f, 0x5836, 0x582e,
+  0x5839, 0x5838, 0x582d, 0x582c, 0x583b, 0x5961, 0x5aaf, 0x5a94,
+  0x5a9f, 0x5a7a, 0x5aa2, 0x5a9e, 0x5a78, 0x5aa6,
+  /* 0x3b */
+  0x5a7c, 0x5aa5, 0x5aac, 0x5a95, 0x5aae, 0x5a37, 0x5a84, 0x5a8a,
+  0x5a97, 0x5a83, 0x5a8b, 0x5aa9, 0x5a7b, 0x5a7d, 0x5a8c, 0x5a9c,
+  0x5a8f, 0x5a93, 0x5a9d, 0x5bea, 0x5bcd, 0x5bcb, 0x5bd4, 0x5bd1,
+  0x5bca, 0x5bce, 0x5c0c, 0x5c30, 0x5d37, 0x5d43, 0x5d6b, 0x5d41,
+  0x5d4b, 0x5d3f, 0x5d35, 0x5d51, 0x5d4e, 0x5d55, 0x5d33, 0x5d3a,
+  0x5d52, 0x5d3d, 0x5d31, 0x5d59, 0x5d42, 0x5d39, 0x5d49, 0x5d38,
+  0x5d3c, 0x5d32, 0x5d36, 0x5d40, 0x5d45, 0x5e44, 0x5e41, 0x5f58,
+  0x5fa6, 0x5fa5, 0x5fab, 0x60c9, 0x60b9, 0x60cc, 0x60e2, 0x60ce,
+  0x60c4, 0x6114, 0x60f2, 0x610a, 0x6116, 0x6105, 0x60f5, 0x6113,
+  0x60f8, 0x60fc, 0x60fe, 0x60c1, 0x6103, 0x6118, 0x611d, 0x6110,
+  0x60ff, 0x6104, 0x610b, 0x624a, 0x6394, 0x63b1, 0x63b0, 0x63ce,
+  0x63e5, 0x63e8, 0x63ef, 0x63c3, 0x649d, 0x63f3,
+  /* 0x3c */
+  0x63ca, 0x63e0, 0x63f6, 0x63d5, 0x63f2, 0x63f5, 0x6461, 0x63df,
+  0x63be, 0x63dd, 0x63dc, 0x63c4, 0x63d8, 0x63d3, 0x63c2, 0x63c7,
+  0x63cc, 0x63cb, 0x63c8, 0x63f0, 0x63d7, 0x63d9, 0x6532, 0x6567,
+  0x656a, 0x6564, 0x655c, 0x6568, 0x6565, 0x658c, 0x659d, 0x659e,
+  0x65ae, 0x65d0, 0x65d2, 0x667c, 0x666c, 0x667b, 0x6680, 0x6671,
+  0x6679, 0x666a, 0x6672, 0x6701, 0x690c, 0x68d3, 0x6904, 0x68dc,
+  0x692a, 0x68ec, 0x68ea, 0x68f1, 0x690f, 0x68d6, 0x68f7, 0x68eb,
+  0x68e4, 0x68f6, 0x6913, 0x6910, 0x68f3, 0x68e1, 0x6907, 0x68cc,
+  0x6908, 0x6970, 0x68b4, 0x6911, 0x68ef, 0x68c6, 0x6914, 0x68f8,
+  0x68d0, 0x68fd, 0x68fc, 0x68e8, 0x690b, 0x690a, 0x6917, 0x68ce,
+  0x68c8, 0x68dd, 0x68de, 0x68e6, 0x68f4, 0x68d1, 0x6906, 0x68d4,
+  0x68e9, 0x6915, 0x6925, 0x68c7, 0x6b39, 0x6b3b,
+  /* 0x3d */
+  0x6b3f, 0x6b3c, 0x6b94, 0x6b97, 0x6b99, 0x6b95, 0x6bbd, 0x6bf0,
+  0x6bf2, 0x6bf3, 0x6c30, 0x6dfc, 0x6e46, 0x6e47, 0x6e1f, 0x6e49,
+  0x6e88, 0x6e3c, 0x6e3d, 0x6e45, 0x6e62, 0x6e2b, 0x6e3f, 0x6e41,
+  0x6e5d, 0x6e73, 0x6e1c, 0x6e33, 0x6e4b, 0x6e40, 0x6e51, 0x6e3b,
+  0x6e03, 0x6e2e, 0x6e5e, 0x6e68, 0x6e5c, 0x6e61, 0x6e31, 0x6e28,
+  0x6e60, 0x6e71, 0x6e6b, 0x6e39, 0x6e22, 0x6e30, 0x6e53, 0x6e65,
+  0x6e27, 0x6e78, 0x6e64, 0x6e77, 0x6e55, 0x6e79, 0x6e52, 0x6e66,
+  0x6e35, 0x6e36, 0x6e5a, 0x7120, 0x711e, 0x712f, 0x70fb, 0x712e,
+  0x7131, 0x7123, 0x7125, 0x7122, 0x7132, 0x711f, 0x7128, 0x713a,
+  0x711b, 0x724b, 0x725a, 0x7288, 0x7289, 0x7286, 0x7285, 0x728b,
+  0x7312, 0x730b, 0x7330, 0x7322, 0x7331, 0x7333, 0x7327, 0x7332,
+  0x732d, 0x7326, 0x7323, 0x7335, 0x730c, 0x742e,
+  /* 0x3e */
+  0x742c, 0x7430, 0x742b, 0x7416, 0x741a, 0x7421, 0x742d, 0x7431,
+  0x7424, 0x7423, 0x741d, 0x7429, 0x7420, 0x7432, 0x74fb, 0x752f,
+  0x756f, 0x756c, 0x75e7, 0x75da, 0x75e1, 0x75e6, 0x75dd, 0x75df,
+  0x75e4, 0x75d7, 0x7695, 0x7692, 0x76da, 0x7746, 0x7747, 0x7744,
+  0x774d, 0x7745, 0x774a, 0x774e, 0x774b, 0x774c, 0x77de, 0x77ec,
+  0x7860, 0x7864, 0x7865, 0x785c, 0x786d, 0x7871, 0x786a, 0x786e,
+  0x7870, 0x7869, 0x7868, 0x785e, 0x7862, 0x7974, 0x7973, 0x7972,
+  0x7970, 0x7a02, 0x7a0a, 0x7a03, 0x7a0c, 0x7a04, 0x7a99, 0x7ae6,
+  0x7ae4, 0x7b4a, 0x7b47, 0x7b44, 0x7b48, 0x7b4c, 0x7b4e, 0x7b40,
+  0x7b58, 0x7b45, 0x7ca2, 0x7c9e, 0x7ca8, 0x7ca1, 0x7d58, 0x7d6f,
+  0x7d63, 0x7d53, 0x7d56, 0x7d67, 0x7d6a, 0x7d4f, 0x7d6d, 0x7d5c,
+  0x7d6b, 0x7d52, 0x7d54, 0x7d69, 0x7d51, 0x7d5f,
+  /* 0x3f */
+  0x7d4e, 0x7f3e, 0x7f3f, 0x7f65, 0x7f66, 0x7fa2, 0x7fa0, 0x7fa1,
+  0x7fd7, 0x8051, 0x804f, 0x8050, 0x80fe, 0x80d4, 0x8143, 0x814a,
+  0x8152, 0x814f, 0x8147, 0x813d, 0x814d, 0x813a, 0x81e6, 0x81ee,
+  0x81f7, 0x81f8, 0x81f9, 0x8204, 0x823c, 0x823d, 0x823f, 0x8275,
+  0x833b, 0x83cf, 0x83f9, 0x8423, 0x83c0, 0x83e8, 0x8412, 0x83e7,
+  0x83e4, 0x83fc, 0x83f6, 0x8410, 0x83c6, 0x83c8, 0x83eb, 0x83e3,
+  0x83bf, 0x8401, 0x83dd, 0x83e5, 0x83d8, 0x83ff, 0x83e1, 0x83cb,
+  0x83ce, 0x83d6, 0x83f5, 0x83c9, 0x8409, 0x840f, 0x83de, 0x8411,
+  0x8406, 0x83c2, 0x83f3, 0x83d5, 0x83fa, 0x83c7, 0x83d1, 0x83ea,
+  0x8413, 0x839a, 0x83c3, 0x83ec, 0x83ee, 0x83c4, 0x83fb, 0x83d7,
+  0x83e2, 0x841b, 0x83db, 0x83fe, 0x86d8, 0x86e2, 0x86e6, 0x86d3,
+  0x86e3, 0x86da, 0x86ea, 0x86dd, 0x86eb, 0x86dc,
+  /* 0x40 */
+  0x86ec, 0x86e9, 0x86d7, 0x86e8, 0x86d1, 0x8848, 0x8856, 0x8855,
+  0x88ba, 0x88d7, 0x88b9, 0x88b8, 0x88c0, 0x88be, 0x88b6, 0x88bc,
+  0x88b7, 0x88bd, 0x88b2, 0x8901, 0x88c9, 0x8995, 0x8998, 0x8997,
+  0x89dd, 0x89da, 0x89db, 0x8a4e, 0x8a4d, 0x8a39, 0x8a59, 0x8a40,
+  0x8a57, 0x8a58, 0x8a44, 0x8a45, 0x8a52, 0x8a48, 0x8a51, 0x8a4a,
+  0x8a4c, 0x8a4f, 0x8c5f, 0x8c81, 0x8c80, 0x8cba, 0x8cbe, 0x8cb0,
+  0x8cb9, 0x8cb5, 0x8d84, 0x8d80, 0x8d89, 0x8dd8, 0x8dd3, 0x8dcd,
+  0x8dc7, 0x8dd6, 0x8ddc, 0x8dcf, 0x8dd5, 0x8dd9, 0x8dc8, 0x8dd7,
+  0x8dc5, 0x8eef, 0x8ef7, 0x8efa, 0x8ef9, 0x8ee6, 0x8eee, 0x8ee5,
+  0x8ef5, 0x8ee7, 0x8ee8, 0x8ef6, 0x8eeb, 0x8ef1, 0x8eec, 0x8ef4,
+  0x8ee9, 0x902d, 0x9034, 0x902f, 0x9106, 0x912c, 0x9104, 0x90ff,
+  0x90fc, 0x9108, 0x90f9, 0x90fb, 0x9101, 0x9100,
+  /* 0x41 */
+  0x9107, 0x9105, 0x9103, 0x9161, 0x9164, 0x915f, 0x9162, 0x9160,
+  0x9201, 0x920a, 0x9225, 0x9203, 0x921a, 0x9226, 0x920f, 0x920c,
+  0x9200, 0x9212, 0x91ff, 0x91fd, 0x9206, 0x9204, 0x9227, 0x9202,
+  0x921c, 0x9224, 0x9219, 0x9217, 0x9205, 0x9216, 0x957b, 0x958d,
+  0x958c, 0x9590, 0x9687, 0x967e, 0x9688, 0x9689, 0x9683, 0x9680,
+  0x96c2, 0x96c8, 0x96c3, 0x96f1, 0x96f0, 0x976c, 0x9770, 0x976e,
+  0x9807, 0x98a9, 0x98eb, 0x9ce6, 0x9ef9, 0x4e83, 0x4e84, 0x4eb6,
+  0x50bd, 0x50bf, 0x50c6, 0x50ae, 0x50c4, 0x50ca, 0x50b4, 0x50c8,
+  0x50c2, 0x50b0, 0x50c1, 0x50ba, 0x50b1, 0x50cb, 0x50c9, 0x50b6,
+  0x50b8, 0x51d7, 0x527a, 0x5278, 0x527b, 0x527c, 0x55c3, 0x55db,
+  0x55cc, 0x55d0, 0x55cb, 0x55ca, 0x55dd, 0x55c0, 0x55d4, 0x55c4,
+  0x55e9, 0x55bf, 0x55d2, 0x558d, 0x55cf, 0x55d5,
+  /* 0x42 */
+  0x55e2, 0x55d6, 0x55c8, 0x55f2, 0x55cd, 0x55d9, 0x55c2, 0x5714,
+  0x5853, 0x5868, 0x5864, 0x584f, 0x584d, 0x5849, 0x586f, 0x5855,
+  0x584e, 0x585d, 0x5859, 0x5865, 0x585b, 0x583d, 0x5863, 0x5871,
+  0x58fc, 0x5ac7, 0x5ac4, 0x5acb, 0x5aba, 0x5ab8, 0x5ab1, 0x5ab5,
+  0x5ab0, 0x5abf, 0x5ac8, 0x5abb, 0x5ac6, 0x5ab7, 0x5ac0, 0x5aca,
+  0x5ab4, 0x5ab6, 0x5acd, 0x5ab9, 0x5a90, 0x5bd6, 0x5bd8, 0x5bd9,
+  0x5c1f, 0x5c33, 0x5d71, 0x5d63, 0x5d4a, 0x5d65, 0x5d72, 0x5d6c,
+  0x5d5e, 0x5d68, 0x5d67, 0x5d62, 0x5df0, 0x5e4f, 0x5e4e, 0x5e4a,
+  0x5e4d, 0x5e4b, 0x5ec5, 0x5ecc, 0x5ec6, 0x5ecb, 0x5ec7, 0x5f40,
+  0x5faf, 0x5fad, 0x60f7, 0x6149, 0x614a, 0x612b, 0x6145, 0x6136,
+  0x6132, 0x612e, 0x6146, 0x612f, 0x614f, 0x6129, 0x6140, 0x6220,
+  0x9168, 0x6223, 0x6225, 0x6224, 0x63c5, 0x63f1,
+  /* 0x43 */
+  0x63eb, 0x6410, 0x6412, 0x6409, 0x6420, 0x6424, 0x6433, 0x6443,
+  0x641f, 0x6415, 0x6418, 0x6439, 0x6437, 0x6422, 0x6423, 0x640c,
+  0x6426, 0x6430, 0x6428, 0x6441, 0x6435, 0x642f, 0x640a, 0x641a,
+  0x6440, 0x6425, 0x6427, 0x640b, 0x63e7, 0x641b, 0x642e, 0x6421,
+  0x640e, 0x656f, 0x6592, 0x65d3, 0x6686, 0x668c, 0x6695, 0x6690,
+  0x668b, 0x668a, 0x6699, 0x6694, 0x6678, 0x6720, 0x6966, 0x695f,
+  0x6938, 0x694e, 0x6962, 0x6971, 0x693f, 0x6945, 0x696a, 0x6939,
+  0x6942, 0x6957, 0x6959, 0x697a, 0x6948, 0x6949, 0x6935, 0x696c,
+  0x6933, 0x693d, 0x6965, 0x68f0, 0x6978, 0x6934, 0x6969, 0x6940,
+  0x696f, 0x6944, 0x6976, 0x6958, 0x6941, 0x6974, 0x694c, 0x693b,
+  0x694b, 0x6937, 0x695c, 0x694f, 0x6951, 0x6932, 0x6952, 0x692f,
+  0x697b, 0x693c, 0x6b46, 0x6b45, 0x6b43, 0x6b42,
+  /* 0x44 */
+  0x6b48, 0x6b41, 0x6b9b, 0x6bfb, 0x6bfc, 0x6bf9, 0x6bf7, 0x6bf8,
+  0x6e9b, 0x6ed6, 0x6ec8, 0x6e8f, 0x6ec0, 0x6e9f, 0x6e93, 0x6e94,
+  0x6ea0, 0x6eb1, 0x6eb9, 0x6ec6, 0x6ed2, 0x6ebd, 0x6ec1, 0x6e9e,
+  0x6ec9, 0x6eb7, 0x6eb0, 0x6ecd, 0x6ea6, 0x6ecf, 0x6eb2, 0x6ebe,
+  0x6ec3, 0x6edc, 0x6ed8, 0x6e99, 0x6e92, 0x6e8e, 0x6e8d, 0x6ea4,
+  0x6ea1, 0x6ebf, 0x6eb3, 0x6ed0, 0x6eca, 0x6e97, 0x6eae, 0x6ea3,
+  0x7147, 0x7154, 0x7152, 0x7163, 0x7160, 0x7141, 0x715d, 0x7162,
+  0x7172, 0x7178, 0x716a, 0x7161, 0x7142, 0x7158, 0x7143, 0x714b,
+  0x7170, 0x715f, 0x7150, 0x7153, 0x7144, 0x714d, 0x715a, 0x724f,
+  0x728d, 0x728c, 0x7291, 0x7290, 0x728e, 0x733c, 0x7342, 0x733b,
+  0x733a, 0x7340, 0x734a, 0x7349, 0x7444, 0x744a, 0x744b, 0x7452,
+  0x7451, 0x7457, 0x7440, 0x744f, 0x7450, 0x744e,
+  /* 0x45 */
+  0x7442, 0x7446, 0x744d, 0x7454, 0x74e1, 0x74ff, 0x74fe, 0x74fd,
+  0x751d, 0x7579, 0x7577, 0x6983, 0x75ef, 0x760f, 0x7603, 0x75f7,
+  0x75fe, 0x75fc, 0x75f9, 0x75f8, 0x7610, 0x75fb, 0x75f6, 0x75ed,
+  0x75f5, 0x75fd, 0x7699, 0x76b5, 0x76dd, 0x7755, 0x775f, 0x7760,
+  0x7752, 0x7756, 0x775a, 0x7769, 0x7767, 0x7754, 0x7759, 0x776d,
+  0x77e0, 0x7887, 0x789a, 0x7894, 0x788f, 0x7884, 0x7895, 0x7885,
+  0x7886, 0x78a1, 0x7883, 0x7879, 0x7899, 0x7880, 0x7896, 0x787b,
+  0x797c, 0x7982, 0x797d, 0x7979, 0x7a11, 0x7a18, 0x7a19, 0x7a12,
+  0x7a17, 0x7a15, 0x7a22, 0x7a13, 0x7a1b, 0x7a10, 0x7aa3, 0x7aa2,
+  0x7a9e, 0x7aeb, 0x7b66, 0x7b64, 0x7b6d, 0x7b74, 0x7b69, 0x7b72,
+  0x7b65, 0x7b73, 0x7b71, 0x7b70, 0x7b61, 0x7b78, 0x7b76, 0x7b63,
+  0x7cb2, 0x7cb4, 0x7caf, 0x7d88, 0x7d86, 0x7d80,
+  /* 0x46 */
+  0x7d8d, 0x7d7f, 0x7d85, 0x7d7a, 0x7d8e, 0x7d7b, 0x7d83, 0x7d7c,
+  0x7d8c, 0x7d94, 0x7d84, 0x7d7d, 0x7d92, 0x7f6d, 0x7f6b, 0x7f67,
+  0x7f68, 0x7f6c, 0x7fa6, 0x7fa5, 0x7fa7, 0x7fdb, 0x7fdc, 0x8021,
+  0x8164, 0x8160, 0x8177, 0x815c, 0x8169, 0x815b, 0x8162, 0x8172,
+  0x6721, 0x815e, 0x8176, 0x8167, 0x816f, 0x8144, 0x8161, 0x821d,
+  0x8249, 0x8244, 0x8240, 0x8242, 0x8245, 0x84f1, 0x843f, 0x8456,
+  0x8476, 0x8479, 0x848f, 0x848d, 0x8465, 0x8451, 0x8440, 0x8486,
+  0x8467, 0x8430, 0x844d, 0x847d, 0x845a, 0x8459, 0x8474, 0x8473,
+  0x845d, 0x8507, 0x845e, 0x8437, 0x843a, 0x8434, 0x847a, 0x8443,
+  0x8478, 0x8432, 0x8445, 0x8429, 0x83d9, 0x844b, 0x842f, 0x8442,
+  0x842d, 0x845f, 0x8470, 0x8439, 0x844e, 0x844c, 0x8452, 0x846f,
+  0x84c5, 0x848e, 0x843b, 0x8447, 0x8436, 0x8433,
+  /* 0x47 */
+  0x8468, 0x847e, 0x8444, 0x842b, 0x8460, 0x8454, 0x846e, 0x8450,
+  0x870b, 0x8704, 0x86f7, 0x870c, 0x86fa, 0x86d6, 0x86f5, 0x874d,
+  0x86f8, 0x870e, 0x8709, 0x8701, 0x86f6, 0x870d, 0x8705, 0x88d6,
+  0x88cb, 0x88cd, 0x88ce, 0x88de, 0x88db, 0x88da, 0x88cc, 0x88d0,
+  0x8985, 0x899b, 0x89df, 0x89e5, 0x89e4, 0x89e1, 0x89e0, 0x89e2,
+  0x89dc, 0x89e6, 0x8a76, 0x8a86, 0x8a7f, 0x8a61, 0x8a3f, 0x8a77,
+  0x8a82, 0x8a84, 0x8a75, 0x8a83, 0x8a81, 0x8a74, 0x8a7a, 0x8c3c,
+  0x8c4b, 0x8c4a, 0x8c65, 0x8c64, 0x8c66, 0x8c86, 0x8c84, 0x8c85,
+  0x8ccc, 0x8d68, 0x8d69, 0x8d91, 0x8d8c, 0x8d8e, 0x8d8f, 0x8d8d,
+  0x8d93, 0x8d94, 0x8d90, 0x8d92, 0x8df0, 0x8de0, 0x8dec, 0x8df1,
+  0x8dee, 0x8dd0, 0x8de9, 0x8de3, 0x8de2, 0x8de7, 0x8df2, 0x8deb,
+  0x8df4, 0x8f06, 0x8eff, 0x8f01, 0x8f00, 0x8f05,
+  /* 0x48 */
+  0x8f07, 0x8f08, 0x8f02, 0x8f0b, 0x9052, 0x903f, 0x9044, 0x9049,
+  0x903d, 0x9110, 0x910d, 0x910f, 0x9111, 0x9116, 0x9114, 0x910b,
+  0x910e, 0x916e, 0x916f, 0x9248, 0x9252, 0x9230, 0x923a, 0x9266,
+  0x9233, 0x9265, 0x925e, 0x9283, 0x922e, 0x924a, 0x9246, 0x926d,
+  0x926c, 0x924f, 0x9260, 0x9267, 0x926f, 0x9236, 0x9261, 0x9270,
+  0x9231, 0x9254, 0x9263, 0x9250, 0x9272, 0x924e, 0x9253, 0x924c,
+  0x9256, 0x9232, 0x959f, 0x959c, 0x959e, 0x959b, 0x9692, 0x9693,
+  0x9691, 0x9697, 0x96ce, 0x96fa, 0x96fd, 0x96f8, 0x96f5, 0x9773,
+  0x9777, 0x9778, 0x9772, 0x980f, 0x980d, 0x980e, 0x98ac, 0x98f6,
+  0x98f9, 0x99af, 0x99b2, 0x99b0, 0x99b5, 0x9aad, 0x9aab, 0x9b5b,
+  0x9cea, 0x9ced, 0x9ce7, 0x9e80, 0x9efd, 0x50e6, 0x50d4, 0x50d7,
+  0x50e8, 0x50f3, 0x50db, 0x50ea, 0x50dd, 0x50e4,
+  /* 0x49 */
+  0x50d3, 0x50ec, 0x50f0, 0x50ef, 0x50e3, 0x50e0, 0x51d8, 0x5280,
+  0x5281, 0x52e9, 0x52eb, 0x5330, 0x53ac, 0x5627, 0x5615, 0x560c,
+  0x5612, 0x55fc, 0x560f, 0x561c, 0x5601, 0x5613, 0x5602, 0x55fa,
+  0x561d, 0x5604, 0x55ff, 0x55f9, 0x5889, 0x587c, 0x5890, 0x5898,
+  0x5886, 0x5881, 0x587f, 0x5874, 0x588b, 0x587a, 0x5887, 0x5891,
+  0x588e, 0x5876, 0x5882, 0x5888, 0x587b, 0x5894, 0x588f, 0x58fe,
+  0x596b, 0x5adc, 0x5aee, 0x5ae5, 0x5ad5, 0x5aea, 0x5ada, 0x5aed,
+  0x5aeb, 0x5af3, 0x5ae2, 0x5ae0, 0x5adb, 0x5aec, 0x5ade, 0x5add,
+  0x5ad9, 0x5ae8, 0x5adf, 0x5b77, 0x5be0, 0x5be3, 0x5c63, 0x5d82,
+  0x5d80, 0x5d7d, 0x5d86, 0x5d7a, 0x5d81, 0x5d77, 0x5d8a, 0x5d89,
+  0x5d88, 0x5d7e, 0x5d7c, 0x5d8d, 0x5d79, 0x5d7f, 0x5e58, 0x5e59,
+  0x5e53, 0x5ed8, 0x5ed1, 0x5ed7, 0x5ece, 0x5edc,
+  /* 0x4a */
+  0x5ed5, 0x5ed9, 0x5ed2, 0x5ed4, 0x5f44, 0x5f43, 0x5f6f, 0x5fb6,
+  0x612c, 0x6128, 0x6141, 0x615e, 0x6171, 0x6173, 0x6152, 0x6153,
+  0x6172, 0x616c, 0x6180, 0x6174, 0x6154, 0x617a, 0x615b, 0x6165,
+  0x613b, 0x616a, 0x6161, 0x6156, 0x6229, 0x6227, 0x622b, 0x642b,
+  0x644d, 0x645b, 0x645d, 0x6474, 0x6476, 0x6472, 0x6473, 0x647d,
+  0x6475, 0x6466, 0x64a6, 0x644e, 0x6482, 0x645e, 0x645c, 0x644b,
+  0x6453, 0x6460, 0x6450, 0x647f, 0x643f, 0x646c, 0x646b, 0x6459,
+  0x6465, 0x6477, 0x6573, 0x65a0, 0x66a1, 0x66a0, 0x669f, 0x6705,
+  0x6704, 0x6722, 0x69b1, 0x69b6, 0x69c9, 0x69a0, 0x69ce, 0x6996,
+  0x69b0, 0x69ac, 0x69bc, 0x6991, 0x6999, 0x698e, 0x69a7, 0x698d,
+  0x69a9, 0x69be, 0x69af, 0x69bf, 0x69c4, 0x69bd, 0x69a4, 0x69d4,
+  0x69b9, 0x69ca, 0x699a, 0x69cf, 0x69b3, 0x6993,
+  /* 0x4b */
+  0x69aa, 0x69a1, 0x699e, 0x69d9, 0x6997, 0x6990, 0x69c2, 0x69b5,
+  0x69a5, 0x69c6, 0x6b4a, 0x6b4d, 0x6b4b, 0x6b9e, 0x6b9f, 0x6ba0,
+  0x6bc3, 0x6bc4, 0x6bfe, 0x6ece, 0x6ef5, 0x6ef1, 0x6f03, 0x6f25,
+  0x6ef8, 0x6f37, 0x6efb, 0x6f2e, 0x6f09, 0x6f4e, 0x6f19, 0x6f1a,
+  0x6f27, 0x6f18, 0x6f3b, 0x6f12, 0x6eed, 0x6f0a, 0x6f36, 0x6f73,
+  0x6ef9, 0x6eee, 0x6f2d, 0x6f40, 0x6f30, 0x6f3c, 0x6f35, 0x6eeb,
+  0x6f07, 0x6f0e, 0x6f43, 0x6f05, 0x6efd, 0x6ef6, 0x6f39, 0x6f1c,
+  0x6efc, 0x6f3a, 0x6f1f, 0x6f0d, 0x6f1e, 0x6f08, 0x6f21, 0x7187,
+  0x7190, 0x7189, 0x7180, 0x7185, 0x7182, 0x718f, 0x717b, 0x7186,
+  0x7181, 0x7197, 0x7244, 0x7253, 0x7297, 0x7295, 0x7293, 0x7343,
+  0x734d, 0x7351, 0x734c, 0x7462, 0x7473, 0x7471, 0x7475, 0x7472,
+  0x7467, 0x746e, 0x7500, 0x7502, 0x7503, 0x757d,
+  /* 0x4c */
+  0x7590, 0x7616, 0x7608, 0x760c, 0x7615, 0x7611, 0x760a, 0x7614,
+  0x76b8, 0x7781, 0x777c, 0x7785, 0x7782, 0x776e, 0x7780, 0x776f,
+  0x777e, 0x7783, 0x78b2, 0x78aa, 0x78b4, 0x78ad, 0x78a8, 0x787e,
+  0x78ab, 0x789e, 0x78a5, 0x78a0, 0x78ac, 0x78a2, 0x78a4, 0x7998,
+  0x798a, 0x798b, 0x7996, 0x7995, 0x7994, 0x7993, 0x7997, 0x7988,
+  0x7992, 0x7990, 0x7a2b, 0x7a4a, 0x7a30, 0x7a2f, 0x7a28, 0x7a26,
+  0x7aa8, 0x7aab, 0x7aac, 0x7aee, 0x7b88, 0x7b9c, 0x7b8a, 0x7b91,
+  0x7b90, 0x7b96, 0x7b8d, 0x7b8c, 0x7b9b, 0x7b8e, 0x7b85, 0x7b98,
+  0x5284, 0x7b99, 0x7ba4, 0x7b82, 0x7cbb, 0x7cbf, 0x7cbc, 0x7cba,
+  0x7da7, 0x7db7, 0x7dc2, 0x7da3, 0x7daa, 0x7dc1, 0x7dc0, 0x7dc5,
+  0x7d9d, 0x7dce, 0x7dc4, 0x7dc6, 0x7dcb, 0x7dcc, 0x7daf, 0x7db9,
+  0x7d96, 0x7dbc, 0x7d9f, 0x7da6, 0x7dae, 0x7da9,
+  /* 0x4d */
+  0x7da1, 0x7dc9, 0x7f73, 0x7fe2, 0x7fe3, 0x7fe5, 0x7fde, 0x8024,
+  0x805d, 0x805c, 0x8189, 0x8186, 0x8183, 0x8187, 0x818d, 0x818c,
+  0x818b, 0x8215, 0x8497, 0x84a4, 0x84a1, 0x849f, 0x84ba, 0x84ce,
+  0x84c2, 0x84ac, 0x84ae, 0x84ab, 0x84b9, 0x84b4, 0x84c1, 0x84cd,
+  0x84aa, 0x849a, 0x84b1, 0x84d0, 0x849d, 0x84a7, 0x84bb, 0x84a2,
+  0x8494, 0x84c7, 0x84cc, 0x849b, 0x84a9, 0x84af, 0x84a8, 0x84d6,
+  0x8498, 0x84b6, 0x84cf, 0x84a0, 0x84d7, 0x84d4, 0x84d2, 0x84db,
+  0x84b0, 0x8491, 0x8661, 0x8733, 0x8723, 0x8728, 0x876b, 0x8740,
+  0x872e, 0x871e, 0x8721, 0x8719, 0x871b, 0x8743, 0x872c, 0x8741,
+  0x873e, 0x8746, 0x8720, 0x8732, 0x872a, 0x872d, 0x873c, 0x8712,
+  0x873a, 0x8731, 0x8735, 0x8742, 0x8726, 0x8727, 0x8738, 0x8724,
+  0x871a, 0x8730, 0x8711, 0x88f7, 0x88e7, 0x88f1,
+  /* 0x4e */
+  0x88f2, 0x88fa, 0x88fe, 0x88ee, 0x88fc, 0x88f6, 0x88fb, 0x88f0,
+  0x88ec, 0x88eb, 0x899d, 0x89a1, 0x899f, 0x899e, 0x89e9, 0x89eb,
+  0x89e8, 0x8aab, 0x8a99, 0x8a8b, 0x8a92, 0x8a8f, 0x8a96, 0x8c3d,
+  0x8c68, 0x8c69, 0x8cd5, 0x8ccf, 0x8cd7, 0x8d96, 0x8e09, 0x8e02,
+  0x8dff, 0x8e0d, 0x8dfd, 0x8e0a, 0x8e03, 0x8e07, 0x8e06, 0x8e05,
+  0x8dfe, 0x8e00, 0x8e04, 0x8f10, 0x8f11, 0x8f0e, 0x8f0d, 0x9123,
+  0x911c, 0x9120, 0x9122, 0x911f, 0x911d, 0x911a, 0x9124, 0x9121,
+  0x911b, 0x917a, 0x9172, 0x9179, 0x9173, 0x92a5, 0x92a4, 0x9276,
+  0x929b, 0x927a, 0x92a0, 0x9294, 0x92aa, 0x928d, 0x92a6, 0x929a,
+  0x92ab, 0x9279, 0x9297, 0x927f, 0x92a3, 0x92ee, 0x928e, 0x9282,
+  0x9295, 0x92a2, 0x927d, 0x9288, 0x92a1, 0x928a, 0x9286, 0x928c,
+  0x9299, 0x92a7, 0x927e, 0x9287, 0x92a9, 0x929d,
+  /* 0x4f */
+  0x928b, 0x922d, 0x969e, 0x96a1, 0x96ff, 0x9758, 0x977d, 0x977a,
+  0x977e, 0x9783, 0x9780, 0x9782, 0x977b, 0x9784, 0x9781, 0x977f,
+  0x97ce, 0x97cd, 0x9816, 0x98ad, 0x98ae, 0x9902, 0x9900, 0x9907,
+  0x999d, 0x999c, 0x99c3, 0x99b9, 0x99bb, 0x99ba, 0x99c2, 0x99bd,
+  0x99c7, 0x9ab1, 0x9ae3, 0x9ae7, 0x9b3e, 0x9b3f, 0x9b60, 0x9b61,
+  0x9b5f, 0x9cf1, 0x9cf2, 0x9cf5, 0x9ea7, 0x50ff, 0x5103, 0x5130,
+  0x50f8, 0x5106, 0x5107, 0x50f6, 0x50fe, 0x510b, 0x510c, 0x50fd,
+  0x510a, 0x528b, 0x528c, 0x52f1, 0x52ef, 0x5648, 0x5642, 0x564c,
+  0x5635, 0x5641, 0x564a, 0x5649, 0x5646, 0x5658, 0x565a, 0x5640,
+  0x5633, 0x563d, 0x562c, 0x563e, 0x5638, 0x562a, 0x563a, 0x571a,
+  0x58ab, 0x589d, 0x58b1, 0x58a0, 0x58a3, 0x58af, 0x58ac, 0x58a5,
+  0x58a1, 0x58ff, 0x5aff, 0x5af4, 0x5afd, 0x5af7,
+  /* 0x50 */
+  0x5af6, 0x5b03, 0x5af8, 0x5b02, 0x5af9, 0x5b01, 0x5b07, 0x5b05,
+  0x5b0f, 0x5c67, 0x5d99, 0x5d97, 0x5d9f, 0x5d92, 0x5da2, 0x5d93,
+  0x5d95, 0x5da0, 0x5d9c, 0x5da1, 0x5d9a, 0x5d9e, 0x5e69, 0x5e5d,
+  0x5e60, 0x5e5c, 0x7df3, 0x5edb, 0x5ede, 0x5ee1, 0x5f49, 0x5fb2,
+  0x618b, 0x6183, 0x6179, 0x61b1, 0x61b0, 0x61a2, 0x6189, 0x619b,
+  0x6193, 0x61af, 0x61ad, 0x619f, 0x6192, 0x61aa, 0x61a1, 0x618d,
+  0x6166, 0x61b3, 0x622d, 0x646e, 0x6470, 0x6496, 0x64a0, 0x6485,
+  0x6497, 0x649c, 0x648f, 0x648b, 0x648a, 0x648c, 0x64a3, 0x649f,
+  0x6468, 0x64b1, 0x6498, 0x6576, 0x657a, 0x6579, 0x657b, 0x65b2,
+  0x65b3, 0x66b5, 0x66b0, 0x66a9, 0x66b2, 0x66b7, 0x66aa, 0x66af,
+  0x6a00, 0x6a06, 0x6a17, 0x69e5, 0x69f8, 0x6a15, 0x69f1, 0x69e4,
+  0x6a20, 0x69ff, 0x69ec, 0x69e2, 0x6a1b, 0x6a1d,
+  /* 0x51 */
+  0x69fe, 0x6a27, 0x69f2, 0x69ee, 0x6a14, 0x69f7, 0x69e7, 0x6a40,
+  0x6a08, 0x69e6, 0x69fb, 0x6a0d, 0x69fc, 0x69eb, 0x6a09, 0x6a04,
+  0x6a18, 0x6a25, 0x6a0f, 0x69f6, 0x6a26, 0x6a07, 0x69f4, 0x6a16,
+  0x6b51, 0x6ba5, 0x6ba3, 0x6ba2, 0x6ba6, 0x6c01, 0x6c00, 0x6bff,
+  0x6c02, 0x6f41, 0x6f26, 0x6f7e, 0x6f87, 0x6fc6, 0x6f92, 0x6f8d,
+  0x6f89, 0x6f8c, 0x6f62, 0x6f4f, 0x6f85, 0x6f5a, 0x6f96, 0x6f76,
+  0x6f6c, 0x6f82, 0x6f55, 0x6f72, 0x6f52, 0x6f50, 0x6f57, 0x6f94,
+  0x6f93, 0x6f5d, 0x6f00, 0x6f61, 0x6f6b, 0x6f7d, 0x6f67, 0x6f90,
+  0x6f53, 0x6f8b, 0x6f69, 0x6f7f, 0x6f95, 0x6f63, 0x6f77, 0x6f6a,
+  0x6f7b, 0x71b2, 0x71af, 0x719b, 0x71b0, 0x71a0, 0x719a, 0x71a9,
+  0x71b5, 0x719d, 0x71a5, 0x719e, 0x71a4, 0x71a1, 0x71aa, 0x719c,
+  0x71a7, 0x71b3, 0x7298, 0x729a, 0x7358, 0x7352,
+  /* 0x52 */
+  0x735e, 0x735f, 0x7360, 0x735d, 0x735b, 0x7361, 0x735a, 0x7359,
+  0x7362, 0x7487, 0x7489, 0x748a, 0x7486, 0x7481, 0x747d, 0x7485,
+  0x7488, 0x747c, 0x7479, 0x7508, 0x7507, 0x757e, 0x7625, 0x761e,
+  0x7619, 0x761d, 0x761c, 0x7623, 0x761a, 0x7628, 0x761b, 0x769c,
+  0x769d, 0x769e, 0x769b, 0x778d, 0x778f, 0x7789, 0x7788, 0x78cd,
+  0x78bb, 0x78cf, 0x78cc, 0x78d1, 0x78ce, 0x78d4, 0x78c8, 0x78c3,
+  0x78c4, 0x78c9, 0x799a, 0x79a1, 0x79a0, 0x799c, 0x79a2, 0x799b,
+  0x6b76, 0x7a39, 0x7ab2, 0x7ab4, 0x7ab3, 0x7bb7, 0x7bcb, 0x7bbe,
+  0x7bac, 0x7bce, 0x7baf, 0x7bb9, 0x7bca, 0x7bb5, 0x7cc5, 0x7cc8,
+  0x7ccc, 0x7ccb, 0x7df7, 0x7ddb, 0x7dea, 0x7de7, 0x7dd7, 0x7de1,
+  0x7e03, 0x7dfa, 0x7de6, 0x7df6, 0x7df1, 0x7df0, 0x7dee, 0x7ddf,
+  0x7f76, 0x7fac, 0x7fb0, 0x7fad, 0x7fed, 0x7feb,
+  /* 0x53 */
+  0x7fea, 0x7fec, 0x7fe6, 0x7fe8, 0x8064, 0x8067, 0x81a3, 0x819f,
+  0x819e, 0x8195, 0x81a2, 0x8199, 0x8197, 0x8216, 0x824f, 0x8253,
+  0x8252, 0x8250, 0x824e, 0x8251, 0x8524, 0x853b, 0x850f, 0x8500,
+  0x8529, 0x850e, 0x8509, 0x850d, 0x851f, 0x850a, 0x8527, 0x851c,
+  0x84fb, 0x852b, 0x84fa, 0x8508, 0x850c, 0x84f4, 0x852a, 0x84f2,
+  0x8515, 0x84f7, 0x84eb, 0x84f3, 0x84fc, 0x8512, 0x84ea, 0x84e9,
+  0x8516, 0x84fe, 0x8528, 0x851d, 0x852e, 0x8502, 0x84fd, 0x851e,
+  0x84f6, 0x8531, 0x8526, 0x84e7, 0x84e8, 0x84f0, 0x84ef, 0x84f9,
+  0x8518, 0x8520, 0x8530, 0x850b, 0x8519, 0x852f, 0x8662, 0x8756,
+  0x8763, 0x8764, 0x8777, 0x87e1, 0x8773, 0x8758, 0x8754, 0x875b,
+  0x8752, 0x8761, 0x875a, 0x8751, 0x875e, 0x876d, 0x876a, 0x8750,
+  0x874e, 0x875f, 0x875d, 0x876f, 0x876c, 0x877a,
+  /* 0x54 */
+  0x876e, 0x875c, 0x8765, 0x874f, 0x877b, 0x8775, 0x8762, 0x8767,
+  0x8769, 0x885a, 0x8905, 0x890c, 0x8914, 0x890b, 0x8917, 0x8918,
+  0x8919, 0x8906, 0x8916, 0x8911, 0x890e, 0x8909, 0x89a2, 0x89a4,
+  0x89a3, 0x89ed, 0x89f0, 0x89ec, 0x8acf, 0x8ac6, 0x8ab8, 0x8ad3,
+  0x8ad1, 0x8ad4, 0x8ad5, 0x8abb, 0x8ad7, 0x8abe, 0x8ac0, 0x8ac5,
+  0x8ad8, 0x8ac3, 0x8aba, 0x8abd, 0x8ad9, 0x8c3e, 0x8c4d, 0x8c8f,
+  0x8ce5, 0x8cdf, 0x8cd9, 0x8ce8, 0x8cda, 0x8cdd, 0x8ce7, 0x8da0,
+  0x8d9c, 0x8da1, 0x8d9b, 0x8e20, 0x8e23, 0x8e25, 0x8e24, 0x8e2e,
+  0x8e15, 0x8e1b, 0x8e16, 0x8e11, 0x8e19, 0x8e26, 0x8e27, 0x8e14,
+  0x8e12, 0x8e18, 0x8e13, 0x8e1c, 0x8e17, 0x8e1a, 0x8f2c, 0x8f24,
+  0x8f18, 0x8f1a, 0x8f20, 0x8f23, 0x8f16, 0x8f17, 0x9073, 0x9070,
+  0x906f, 0x9067, 0x906b, 0x912f, 0x912b, 0x9129,
+  /* 0x55 */
+  0x912a, 0x9132, 0x9126, 0x912e, 0x9185, 0x9186, 0x918a, 0x9181,
+  0x9182, 0x9184, 0x9180, 0x92d0, 0x92c3, 0x92c4, 0x92c0, 0x92d9,
+  0x92b6, 0x92cf, 0x92f1, 0x92df, 0x92d8, 0x92e9, 0x92d7, 0x92dd,
+  0x92cc, 0x92ef, 0x92c2, 0x92e8, 0x92ca, 0x92c8, 0x92ce, 0x92e6,
+  0x92cd, 0x92d5, 0x92c9, 0x92e0, 0x92de, 0x92e7, 0x92d1, 0x92d3,
+  0x92b5, 0x92e1, 0x9325, 0x92c6, 0x92b4, 0x957c, 0x95ac, 0x95ab,
+  0x95ae, 0x95b0, 0x96a4, 0x96a2, 0x96d3, 0x9705, 0x9708, 0x9702,
+  0x975a, 0x978a, 0x978e, 0x9788, 0x97d0, 0x97cf, 0x981e, 0x981d,
+  0x9826, 0x9829, 0x9828, 0x9820, 0x981b, 0x9827, 0x98b2, 0x9908,
+  0x98fa, 0x9911, 0x9914, 0x9916, 0x9917, 0x9915, 0x99dc, 0x99cd,
+  0x99cf, 0x99d3, 0x99d4, 0x99ce, 0x99c9, 0x99d6, 0x99d8, 0x99cb,
+  0x99d7, 0x99cc, 0x9ab3, 0x9aec, 0x9aeb, 0x9af3,
+  /* 0x56 */
+  0x9af2, 0x9af1, 0x9b46, 0x9b43, 0x9b67, 0x9b74, 0x9b71, 0x9b66,
+  0x9b76, 0x9b75, 0x9b70, 0x9b68, 0x9b64, 0x9b6c, 0x9cfc, 0x9cfa,
+  0x9cfd, 0x9cff, 0x9cf7, 0x9d07, 0x9d00, 0x9cf9, 0x9cfb, 0x9d08,
+  0x9d05, 0x9d04, 0x9e83, 0x9ed3, 0x9f0f, 0x9f10, 0x511c, 0x5113,
+  0x5117, 0x511a, 0x5111, 0x51de, 0x5334, 0x53e1, 0x5670, 0x5660,
+  0x566e, 0x5673, 0x5666, 0x5663, 0x566d, 0x5672, 0x565e, 0x5677,
+  0x571c, 0x571b, 0x58c8, 0x58bd, 0x58c9, 0x58bf, 0x58ba, 0x58c2,
+  0x58bc, 0x58c6, 0x5b17, 0x5b19, 0x5b1b, 0x5b21, 0x5b14, 0x5b13,
+  0x5b10, 0x5b16, 0x5b28, 0x5b1a, 0x5b20, 0x5b1e, 0x5bef, 0x5dac,
+  0x5db1, 0x5da9, 0x5da7, 0x5db5, 0x5db0, 0x5dae, 0x5daa, 0x5da8,
+  0x5db2, 0x5dad, 0x5daf, 0x5db4, 0x5e67, 0x5e68, 0x5e66, 0x5e6f,
+  0x5ee9, 0x5ee7, 0x5ee6, 0x5ee8, 0x5ee5, 0x5f4b,
+  /* 0x57 */
+  0x5fbc, 0x5fbb, 0x619d, 0x61a8, 0x6196, 0x61c5, 0x61b4, 0x61c6,
+  0x61c1, 0x61cc, 0x61ba, 0x61bf, 0x61b8, 0x618c, 0x64d7, 0x64d6,
+  0x64d0, 0x64cf, 0x64c9, 0x64bd, 0x6489, 0x64c3, 0x64db, 0x64f3,
+  0x64d9, 0x6533, 0x657f, 0x657c, 0x65a2, 0x66c8, 0x66be, 0x66c0,
+  0x66ca, 0x66cb, 0x66cf, 0x66bd, 0x66bb, 0x66ba, 0x66cc, 0x6723,
+  0x6a34, 0x6a66, 0x6a49, 0x6a67, 0x6a32, 0x6a68, 0x6a3e, 0x6a5d,
+  0x6a6d, 0x6a76, 0x6a5b, 0x6a51, 0x6a28, 0x6a5a, 0x6a3b, 0x6a3f,
+  0x6a41, 0x6a6a, 0x6a64, 0x6a50, 0x6a4f, 0x6a54, 0x6a6f, 0x6a69,
+  0x6a60, 0x6a3c, 0x6a5e, 0x6a56, 0x6a55, 0x6a4d, 0x6a4e, 0x6a46,
+  0x6b55, 0x6b54, 0x6b56, 0x6ba7, 0x6baa, 0x6bab, 0x6bc8, 0x6bc7,
+  0x6c04, 0x6c03, 0x6c06, 0x6fad, 0x6fcb, 0x6fa3, 0x6fc7, 0x6fbc,
+  0x6fce, 0x6fc8, 0x6f5e, 0x6fc4, 0x6fbd, 0x6f9e,
+  /* 0x58 */
+  0x6fca, 0x6fa8, 0x7004, 0x6fa5, 0x6fae, 0x6fba, 0x6fac, 0x6faa,
+  0x6fcf, 0x6fbf, 0x6fb8, 0x6fa2, 0x6fc9, 0x6fab, 0x6fcd, 0x6faf,
+  0x6fb2, 0x6fb0, 0x71c5, 0x71c2, 0x71bf, 0x71b8, 0x71d6, 0x71c0,
+  0x71c1, 0x71cb, 0x71d4, 0x71ca, 0x71c7, 0x71cf, 0x71bd, 0x71d8,
+  0x71bc, 0x71c6, 0x71da, 0x71db, 0x729d, 0x729e, 0x7369, 0x7366,
+  0x7367, 0x736c, 0x7365, 0x736b, 0x736a, 0x747f, 0x749a, 0x74a0,
+  0x7494, 0x7492, 0x7495, 0x74a1, 0x750b, 0x7580, 0x762f, 0x762d,
+  0x7631, 0x763d, 0x7633, 0x763c, 0x7635, 0x7632, 0x7630, 0x76bb,
+  0x76e6, 0x779a, 0x779d, 0x77a1, 0x779c, 0x779b, 0x77a2, 0x77a3,
+  0x7795, 0x7799, 0x7797, 0x78dd, 0x78e9, 0x78e5, 0x78ea, 0x78de,
+  0x78e3, 0x78db, 0x78e1, 0x78e2, 0x78ed, 0x78df, 0x78e0, 0x79a4,
+  0x7a44, 0x7a48, 0x7a47, 0x7ab6, 0x7ab8, 0x7ab5,
+  /* 0x59 */
+  0x7ab1, 0x7ab7, 0x7bde, 0x7be3, 0x7be7, 0x7bdd, 0x7bd5, 0x7be5,
+  0x7bda, 0x7be8, 0x7bf9, 0x7bd4, 0x7bea, 0x7be2, 0x7bdc, 0x7beb,
+  0x7bd8, 0x7bdf, 0x7cd2, 0x7cd4, 0x7cd7, 0x7cd0, 0x7cd1, 0x7e12,
+  0x7e21, 0x7e17, 0x7e0c, 0x7e1f, 0x7e20, 0x7e13, 0x7e0e, 0x7e1c,
+  0x7e15, 0x7e1a, 0x7e22, 0x7e0b, 0x7e0f, 0x7e16, 0x7e0d, 0x7e14,
+  0x7e25, 0x7e24, 0x7f43, 0x7f7b, 0x7f7c, 0x7f7a, 0x7fb1, 0x7fef,
+  0x802a, 0x8029, 0x806c, 0x81b1, 0x81a6, 0x81ae, 0x81b9, 0x81b5,
+  0x81ab, 0x81b0, 0x81ac, 0x81b4, 0x81b2, 0x81b7, 0x81a7, 0x81f2,
+  0x8255, 0x8256, 0x8257, 0x8556, 0x8545, 0x856b, 0x854d, 0x8553,
+  0x8561, 0x8558, 0x8540, 0x8546, 0x8564, 0x8541, 0x8562, 0x8544,
+  0x8551, 0x8547, 0x8563, 0x853e, 0x855b, 0x8571, 0x854e, 0x856e,
+  0x8575, 0x8555, 0x8567, 0x8560, 0x858c, 0x8566,
+  /* 0x5a */
+  0x855d, 0x8554, 0x8565, 0x856c, 0x8663, 0x8665, 0x8664, 0x87a4,
+  0x879b, 0x878f, 0x8797, 0x8793, 0x8792, 0x8788, 0x8781, 0x8796,
+  0x8798, 0x8779, 0x8787, 0x87a3, 0x8785, 0x8790, 0x8791, 0x879d,
+  0x8784, 0x8794, 0x879c, 0x879a, 0x8789, 0x891e, 0x8926, 0x8930,
+  0x892d, 0x892e, 0x8927, 0x8931, 0x8922, 0x8929, 0x8923, 0x892f,
+  0x892c, 0x891f, 0x89f1, 0x8ae0, 0x8ae2, 0x8af2, 0x8af4, 0x8af5,
+  0x8add, 0x8b14, 0x8ae4, 0x8adf, 0x8af0, 0x8ac8, 0x8ade, 0x8ae1,
+  0x8ae8, 0x8aff, 0x8aef, 0x8afb, 0x8c91, 0x8c92, 0x8c90, 0x8cf5,
+  0x8cee, 0x8cf1, 0x8cf0, 0x8cf3, 0x8d6c, 0x8d6e, 0x8da5, 0x8da7,
+  0x8e33, 0x8e3e, 0x8e38, 0x8e40, 0x8e45, 0x8e36, 0x8e3c, 0x8e3d,
+  0x8e41, 0x8e30, 0x8e3f, 0x8ebd, 0x8f36, 0x8f2e, 0x8f35, 0x8f32,
+  0x8f39, 0x8f37, 0x8f34, 0x9076, 0x9079, 0x907b,
+  /* 0x5b */
+  0x9086, 0x90fa, 0x9133, 0x9135, 0x9136, 0x9193, 0x9190, 0x9191,
+  0x918d, 0x918f, 0x9327, 0x931e, 0x9308, 0x931f, 0x9306, 0x930f,
+  0x937a, 0x9338, 0x933c, 0x931b, 0x9323, 0x9312, 0x9301, 0x9346,
+  0x932d, 0x930e, 0x930d, 0x92cb, 0x931d, 0x92fa, 0x9313, 0x92f9,
+  0x92f7, 0x9334, 0x9302, 0x9324, 0x92ff, 0x9329, 0x9339, 0x9335,
+  0x932a, 0x9314, 0x930c, 0x930b, 0x92fe, 0x9309, 0x9300, 0x92fb,
+  0x9316, 0x95bc, 0x95cd, 0x95be, 0x95b9, 0x95ba, 0x95b6, 0x95bf,
+  0x95b5, 0x95bd, 0x96a9, 0x96d4, 0x970b, 0x9712, 0x9710, 0x9799,
+  0x9797, 0x9794, 0x97f0, 0x97f8, 0x9835, 0x982f, 0x9832, 0x9924,
+  0x991f, 0x9927, 0x9929, 0x999e, 0x99ee, 0x99ec, 0x99e5, 0x99e4,
+  0x99f0, 0x99e3, 0x99ea, 0x99e9, 0x99e7, 0x9ab9, 0x9abf, 0x9ab4,
+  0x9abb, 0x9af6, 0x9afa, 0x9af9, 0x9af7, 0x9b33,
+  /* 0x5c */
+  0x9b80, 0x9b85, 0x9b87, 0x9b7c, 0x9b7e, 0x9b7b, 0x9b82, 0x9b93,
+  0x9b92, 0x9b90, 0x9b7a, 0x9b95, 0x9b7d, 0x9b88, 0x9d25, 0x9d17,
+  0x9d20, 0x9d1e, 0x9d14, 0x9d29, 0x9d1d, 0x9d18, 0x9d22, 0x9d10,
+  0x9d19, 0x9d1f, 0x9e88, 0x9e86, 0x9e87, 0x9eae, 0x9ead, 0x9ed5,
+  0x9ed6, 0x9efa, 0x9f12, 0x9f3d, 0x5126, 0x5125, 0x5122, 0x5124,
+  0x5120, 0x5129, 0x52f4, 0x5693, 0x568c, 0x568d, 0x5686, 0x5684,
+  0x5683, 0x567e, 0x5682, 0x567f, 0x5681, 0x58d6, 0x58d4, 0x58cf,
+  0x58d2, 0x5b2d, 0x5b25, 0x5b32, 0x5b23, 0x5b2c, 0x5b27, 0x5b26,
+  0x5b2f, 0x5b2e, 0x5b7b, 0x5bf1, 0x5bf2, 0x5db7, 0x5e6c, 0x5e6a,
+  0x5fbe, 0x61c3, 0x61b5, 0x61bc, 0x61e7, 0x61e0, 0x61e5, 0x61e4,
+  0x61e8, 0x61de, 0x64ef, 0x64e9, 0x64e3, 0x64eb, 0x64e4, 0x64e8,
+  0x6581, 0x6580, 0x65b6, 0x65da, 0x66d2, 0x6a8d,
+  /* 0x5d */
+  0x6a96, 0x6a81, 0x6aa5, 0x6a89, 0x6a9f, 0x6a9b, 0x6aa1, 0x6a9e,
+  0x6a87, 0x6a93, 0x6a8e, 0x6a95, 0x6a83, 0x6aa8, 0x6aa4, 0x6a91,
+  0x6a7f, 0x6aa6, 0x6a9a, 0x6a85, 0x6a8c, 0x6a92, 0x6b5b, 0x6bad,
+  0x6c09, 0x6fcc, 0x6fa9, 0x6ff4, 0x6fd4, 0x6fe3, 0x6fdc, 0x6fed,
+  0x6fe7, 0x6fe6, 0x6fde, 0x6ff2, 0x6fdd, 0x6fe2, 0x6fe8, 0x71e1,
+  0x71f1, 0x71e8, 0x71f2, 0x71e4, 0x71f0, 0x71e2, 0x7373, 0x736e,
+  0x736f, 0x7497, 0x74b2, 0x74ab, 0x7490, 0x74aa, 0x74ad, 0x74b1,
+  0x74a5, 0x74af, 0x7510, 0x7511, 0x7512, 0x750f, 0x7584, 0x7643,
+  0x7648, 0x7649, 0x7647, 0x76a4, 0x76e9, 0x77b5, 0x77ab, 0x77b2,
+  0x77b7, 0x77b6, 0x77b4, 0x77b1, 0x77a8, 0x77f0, 0x78f3, 0x78fd,
+  0x7902, 0x78fb, 0x78fc, 0x78ff, 0x78f2, 0x7905, 0x78f9, 0x78fe,
+  0x7904, 0x79ab, 0x79a8, 0x7a5c, 0x7a5b, 0x7a56,
+  /* 0x5e */
+  0x7a58, 0x7a54, 0x7a5a, 0x7abe, 0x7ac0, 0x7ac1, 0x7c05, 0x7c0f,
+  0x7bf2, 0x7c00, 0x7bff, 0x7bfb, 0x7c0e, 0x7bf4, 0x7c0b, 0x7bf3,
+  0x7c02, 0x7c09, 0x7c03, 0x7c01, 0x7bf8, 0x7bfd, 0x7c06, 0x7bf0,
+  0x7bf1, 0x7c10, 0x7c0a, 0x7ce8, 0x7e2d, 0x7e3c, 0x7e42, 0x7e33,
+  0x9848, 0x7e38, 0x7e2a, 0x7e49, 0x7e40, 0x7e47, 0x7e29, 0x7e4c,
+  0x7e30, 0x7e3b, 0x7e36, 0x7e44, 0x7e3a, 0x7f45, 0x7f7f, 0x7f7e,
+  0x7f7d, 0x7ff4, 0x7ff2, 0x802c, 0x81bb, 0x81c4, 0x81cc, 0x81ca,
+  0x81c5, 0x81c7, 0x81bc, 0x81e9, 0x825b, 0x825a, 0x825c, 0x8583,
+  0x8580, 0x858f, 0x85a7, 0x8595, 0x85a0, 0x858b, 0x85a3, 0x857b,
+  0x85a4, 0x859a, 0x859e, 0x8577, 0x857c, 0x8589, 0x85a1, 0x857a,
+  0x8578, 0x8557, 0x858e, 0x8596, 0x8586, 0x858d, 0x8599, 0x859d,
+  0x8581, 0x85a2, 0x8582, 0x8588, 0x8585, 0x8579,
+  /* 0x5f */
+  0x8576, 0x8598, 0x8590, 0x859f, 0x8668, 0x87be, 0x87aa, 0x87ad,
+  0x87c5, 0x87b0, 0x87ac, 0x87b9, 0x87b5, 0x87bc, 0x87ae, 0x87c9,
+  0x87c3, 0x87c2, 0x87cc, 0x87b7, 0x87af, 0x87c4, 0x87ca, 0x87b4,
+  0x87b6, 0x87bf, 0x87b8, 0x87bd, 0x87de, 0x87b2, 0x8935, 0x8933,
+  0x893c, 0x893e, 0x8941, 0x8952, 0x8937, 0x8942, 0x89ad, 0x89af,
+  0x89ae, 0x89f2, 0x89f3, 0x8b1e, 0x8b18, 0x8b16, 0x8b11, 0x8b05,
+  0x8b0b, 0x8b22, 0x8b0f, 0x8b12, 0x8b15, 0x8b07, 0x8b0d, 0x8b08,
+  0x8b06, 0x8b1c, 0x8b13, 0x8b1a, 0x8c4f, 0x8c70, 0x8c72, 0x8c71,
+  0x8c6f, 0x8c95, 0x8c94, 0x8cf9, 0x8d6f, 0x8e4e, 0x8e4d, 0x8e53,
+  0x8e50, 0x8e4c, 0x8e47, 0x8f43, 0x8f40, 0x9085, 0x907e, 0x9138,
+  0x919a, 0x91a2, 0x919b, 0x9199, 0x919f, 0x91a1, 0x919d, 0x91a0,
+  0x93a1, 0x9383, 0x93af, 0x9364, 0x9356, 0x9347,
+  /* 0x60 */
+  0x937c, 0x9358, 0x935c, 0x9376, 0x9349, 0x9350, 0x9351, 0x9360,
+  0x936d, 0x938f, 0x934c, 0x936a, 0x9379, 0x9357, 0x9355, 0x9352,
+  0x934f, 0x9371, 0x9377, 0x937b, 0x9361, 0x935e, 0x9363, 0x9367,
+  0x934e, 0x9359, 0x95c7, 0x95c0, 0x95c9, 0x95c3, 0x95c5, 0x95b7,
+  0x96ae, 0x96b0, 0x96ac, 0x9720, 0x971f, 0x9718, 0x971d, 0x9719,
+  0x979a, 0x97a1, 0x979c, 0x979e, 0x979d, 0x97d5, 0x97d4, 0x97f1,
+  0x9841, 0x9844, 0x984a, 0x9849, 0x9845, 0x9843, 0x9925, 0x992b,
+  0x992c, 0x992a, 0x9933, 0x9932, 0x992f, 0x992d, 0x9931, 0x9930,
+  0x9998, 0x99a3, 0x99a1, 0x9a02, 0x99fa, 0x99f4, 0x99f7, 0x99f9,
+  0x99f8, 0x99f6, 0x99fb, 0x99fd, 0x99fe, 0x99fc, 0x9a03, 0x9abe,
+  0x9afe, 0x9afd, 0x9b01, 0x9afc, 0x9b48, 0x9b9a, 0x9ba8, 0x9b9e,
+  0x9b9b, 0x9ba6, 0x9ba1, 0x9ba5, 0x9ba4, 0x9b86,
+  /* 0x61 */
+  0x9ba2, 0x9ba0, 0x9baf, 0x9d33, 0x9d41, 0x9d67, 0x9d36, 0x9d2e,
+  0x9d2f, 0x9d31, 0x9d38, 0x9d30, 0x9d45, 0x9d42, 0x9d43, 0x9d3e,
+  0x9d37, 0x9d40, 0x9d3d, 0x7ff5, 0x9d2d, 0x9e8a, 0x9e89, 0x9e8d,
+  0x9eb0, 0x9ec8, 0x9eda, 0x9efb, 0x9eff, 0x9f24, 0x9f23, 0x9f22,
+  0x9f54, 0x9fa0, 0x5131, 0x512d, 0x512e, 0x5698, 0x569c, 0x5697,
+  0x569a, 0x569d, 0x5699, 0x5970, 0x5b3c, 0x5c69, 0x5c6a, 0x5dc0,
+  0x5e6d, 0x5e6e, 0x61d8, 0x61df, 0x61ed, 0x61ee, 0x61f1, 0x61ea,
+  0x61f0, 0x61eb, 0x61d6, 0x61e9, 0x64ff, 0x6504, 0x64fd, 0x64f8,
+  0x6501, 0x6503, 0x64fc, 0x6594, 0x65db, 0x66da, 0x66db, 0x66d8,
+  0x6ac5, 0x6ab9, 0x6abd, 0x6ae1, 0x6ac6, 0x6aba, 0x6ab6, 0x6ab7,
+  0x6ac7, 0x6ab4, 0x6aad, 0x6b5e, 0x6bc9, 0x6c0b, 0x7007, 0x700c,
+  0x700d, 0x7001, 0x7005, 0x7014, 0x700e, 0x6fff,
+  /* 0x62 */
+  0x7000, 0x6ffb, 0x7026, 0x6ffc, 0x6ff7, 0x700a, 0x7201, 0x71ff,
+  0x71f9, 0x7203, 0x71fd, 0x7376, 0x74b8, 0x74c0, 0x74b5, 0x74c1,
+  0x74be, 0x74b6, 0x74bb, 0x74c2, 0x7514, 0x7513, 0x765c, 0x7664,
+  0x7659, 0x7650, 0x7653, 0x7657, 0x765a, 0x76a6, 0x76bd, 0x76ec,
+  0x77c2, 0x77ba, 0x790c, 0x7913, 0x7914, 0x7909, 0x7910, 0x7912,
+  0x7911, 0x79ad, 0x79ac, 0x7a5f, 0x7c1c, 0x7c29, 0x7c19, 0x7c20,
+  0x7c1f, 0x7c2d, 0x7c1d, 0x7c26, 0x7c28, 0x7c22, 0x7c25, 0x7c30,
+  0x7e5c, 0x7e50, 0x7e56, 0x7e63, 0x7e58, 0x7e62, 0x7e5f, 0x7e51,
+  0x7e60, 0x7e57, 0x7e53, 0x7fb5, 0x7fb3, 0x7ff7, 0x7ff8, 0x8075,
+  0x81d1, 0x81d2, 0x81d0, 0x825f, 0x825e, 0x85b4, 0x85c6, 0x85c0,
+  0x85c3, 0x85c2, 0x85b3, 0x85b5, 0x85bd, 0x85c7, 0x85c4, 0x85bf,
+  0x85cb, 0x85ce, 0x85c8, 0x85c5, 0x85b1, 0x85b6,
+  /* 0x63 */
+  0x85d2, 0x8624, 0x85b8, 0x85b7, 0x85be, 0x8669, 0x87e7, 0x87e6,
+  0x87e2, 0x87db, 0x87eb, 0x87ea, 0x87e5, 0x87df, 0x87f3, 0x87e4,
+  0x87d4, 0x87dc, 0x87d3, 0x87ed, 0x87d8, 0x87e3, 0x87d7, 0x87d9,
+  0x8801, 0x87f4, 0x87e8, 0x87dd, 0x8953, 0x894b, 0x894f, 0x894c,
+  0x8946, 0x8950, 0x8951, 0x8949, 0x8b2a, 0x8b27, 0x8b23, 0x8b33,
+  0x8b30, 0x8b35, 0x8b47, 0x8b2f, 0x8b3c, 0x8b3e, 0x8b31, 0x8b25,
+  0x8b37, 0x8b26, 0x8b36, 0x8b2e, 0x8b24, 0x8b3b, 0x8b3d, 0x8b3a,
+  0x8c42, 0x8c75, 0x8c99, 0x8c98, 0x8c97, 0x8cfe, 0x8d04, 0x8d02,
+  0x8d00, 0x8e5c, 0x8e62, 0x8e60, 0x8e57, 0x8e56, 0x8e5e, 0x8e65,
+  0x8e67, 0x8e5b, 0x8e5a, 0x8e61, 0x8e5d, 0x8e69, 0x8e54, 0x8f46,
+  0x8f47, 0x8f48, 0x8f4b, 0x9128, 0x913a, 0x913b, 0x913e, 0x91a8,
+  0x91a5, 0x91a7, 0x91af, 0x91aa, 0x93b5, 0x938c,
+  /* 0x64 */
+  0x9392, 0x93b7, 0x939b, 0x939d, 0x9389, 0x93a7, 0x938e, 0x93aa,
+  0x939e, 0x93a6, 0x9395, 0x9388, 0x9399, 0x939f, 0x9380, 0x938d,
+  0x93b1, 0x9391, 0x93b2, 0x93a4, 0x93a8, 0x93b4, 0x93a3, 0x95d2,
+  0x95d3, 0x95d1, 0x96b3, 0x96d7, 0x96da, 0x5dc2, 0x96df, 0x96d8,
+  0x96dd, 0x9723, 0x9722, 0x9725, 0x97ac, 0x97ae, 0x97a8, 0x97ab,
+  0x97a4, 0x97aa, 0x97a2, 0x97a5, 0x97d7, 0x97d9, 0x97d6, 0x97d8,
+  0x97fa, 0x9850, 0x9851, 0x9852, 0x98b8, 0x9941, 0x993c, 0x993a,
+  0x9a0f, 0x9a0b, 0x9a09, 0x9a0d, 0x9a04, 0x9a11, 0x9a0a, 0x9a05,
+  0x9a07, 0x9a06, 0x9ac0, 0x9adc, 0x9b08, 0x9b04, 0x9b05, 0x9b29,
+  0x9b35, 0x9b4a, 0x9b4c, 0x9b4b, 0x9bc7, 0x9bc6, 0x9bc3, 0x9bbf,
+  0x9bc1, 0x9bb5, 0x9bb8, 0x9bd3, 0x9bb6, 0x9bc4, 0x9bb9, 0x9bbd,
+  0x9d5c, 0x9d53, 0x9d4f, 0x9d4a, 0x9d5b, 0x9d4b,
+  /* 0x65 */
+  0x9d59, 0x9d56, 0x9d4c, 0x9d57, 0x9d52, 0x9d54, 0x9d5f, 0x9d58,
+  0x9d5a, 0x9e8e, 0x9e8c, 0x9edf, 0x9f01, 0x9f00, 0x9f16, 0x9f25,
+  0x9f2b, 0x9f2a, 0x9f29, 0x9f28, 0x9f4c, 0x9f55, 0x5134, 0x5135,
+  0x5296, 0x52f7, 0x53b4, 0x56ab, 0x56ad, 0x56a6, 0x56a7, 0x56aa,
+  0x56ac, 0x58da, 0x58dd, 0x58db, 0x5912, 0x5b3d, 0x5b3e, 0x5b3f,
+  0x5dc3, 0x5e70, 0x5fbf, 0x61fb, 0x6507, 0x6510, 0x650d, 0x6509,
+  0x650c, 0x650e, 0x6584, 0x65de, 0x65dd, 0x66de, 0x6ae7, 0x6ae0,
+  0x6acc, 0x6ad1, 0x6ad9, 0x6acb, 0x6adf, 0x6adc, 0x6ad0, 0x6aeb,
+  0x6acf, 0x6acd, 0x6ade, 0x6b60, 0x6bb0, 0x6c0c, 0x7019, 0x7027,
+  0x7020, 0x7016, 0x702b, 0x7021, 0x7022, 0x7023, 0x7029, 0x7017,
+  0x7024, 0x701c, 0x720c, 0x720a, 0x7207, 0x7202, 0x7205, 0x72a5,
+  0x72a6, 0x72a4, 0x72a3, 0x72a1, 0x74cb, 0x74c5,
+  /* 0x66 */
+  0x74b7, 0x74c3, 0x7516, 0x7660, 0x77c9, 0x77ca, 0x77c4, 0x77f1,
+  0x791d, 0x791b, 0x7921, 0x791c, 0x7917, 0x791e, 0x79b0, 0x7a67,
+  0x7a68, 0x7c33, 0x7c3c, 0x7c39, 0x7c2c, 0x7c3b, 0x7cec, 0x7cea,
+  0x7e76, 0x7e75, 0x7e78, 0x7e70, 0x7e77, 0x7e6f, 0x7e7a, 0x7e72,
+  0x7e74, 0x7e68, 0x7f4b, 0x7f4a, 0x7f83, 0x7f86, 0x7fb7, 0x7ffd,
+  0x7ffe, 0x8078, 0x81d7, 0x81d5, 0x820b, 0x8264, 0x8261, 0x8263,
+  0x85eb, 0x85f1, 0x85ed, 0x85d9, 0x85e1, 0x85e8, 0x85da, 0x85d7,
+  0x85ec, 0x85f2, 0x85f8, 0x85d8, 0x85df, 0x85e3, 0x85dc, 0x85d1,
+  0x85f0, 0x85e6, 0x85ef, 0x85de, 0x85e2, 0x8800, 0x87fa, 0x8803,
+  0x87f6, 0x87f7, 0x8809, 0x880c, 0x880b, 0x8806, 0x87fc, 0x8808,
+  0x87ff, 0x880a, 0x8802, 0x8962, 0x895a, 0x895b, 0x8957, 0x8961,
+  0x895c, 0x8958, 0x895d, 0x8959, 0x8988, 0x89b7,
+  /* 0x67 */
+  0x89b6, 0x89f6, 0x8b50, 0x8b48, 0x8b4a, 0x8b40, 0x8b53, 0x8b56,
+  0x8b54, 0x8b4b, 0x8b55, 0x8b51, 0x8b42, 0x8b52, 0x8b57, 0x8c43,
+  0x8c77, 0x8c76, 0x8c9a, 0x8d06, 0x8d07, 0x8d09, 0x8dac, 0x8daa,
+  0x8dad, 0x8dab, 0x8e6d, 0x8e78, 0x8e73, 0x8e6a, 0x8e6f, 0x8e7b,
+  0x8ec2, 0x8f52, 0x8f51, 0x8f4f, 0x8f50, 0x8f53, 0x8fb4, 0x9140,
+  0x913f, 0x91b0, 0x91ad, 0x93de, 0x93c7, 0x93cf, 0x93c2, 0x93da,
+  0x93d0, 0x93f9, 0x93ec, 0x93cc, 0x93d9, 0x93a9, 0x93e6, 0x93ca,
+  0x93d4, 0x93ee, 0x93e3, 0x93d5, 0x93c4, 0x93ce, 0x93c0, 0x93d2,
+  0x93a5, 0x93e7, 0x957d, 0x95da, 0x95db, 0x96e1, 0x9729, 0x972b,
+  0x972c, 0x9728, 0x9726, 0x97b3, 0x97b7, 0x97b6, 0x97dd, 0x97de,
+  0x97df, 0x985c, 0x9859, 0x985d, 0x9857, 0x98bf, 0x98bd, 0x98bb,
+  0x98be, 0x9948, 0x9947, 0x9943, 0x99a6, 0x99a7,
+  /* 0x68 */
+  0x9a1a, 0x9a15, 0x9a25, 0x9a1d, 0x9a24, 0x9a1b, 0x9a22, 0x9a20,
+  0x9a27, 0x9a23, 0x9a1e, 0x9a1c, 0x9a14, 0x9ac2, 0x9b0b, 0x9b0a,
+  0x9b0e, 0x9b0c, 0x9b37, 0x9bea, 0x9beb, 0x9be0, 0x9bde, 0x9be4,
+  0x9be6, 0x9be2, 0x9bf0, 0x9bd4, 0x9bd7, 0x9bec, 0x9bdc, 0x9bd9,
+  0x9be5, 0x9bd5, 0x9be1, 0x9bda, 0x9d77, 0x9d81, 0x9d8a, 0x9d84,
+  0x9d88, 0x9d71, 0x9d80, 0x9d78, 0x9d86, 0x9d8b, 0x9d8c, 0x9d7d,
+  0x9d6b, 0x9d74, 0x9d75, 0x9d70, 0x9d69, 0x9d85, 0x9d73, 0x9d7b,
+  0x9d82, 0x9d6f, 0x9d79, 0x9d7f, 0x9d87, 0x9d68, 0x9e94, 0x9e91,
+  0x9ec0, 0x9efc, 0x9f2d, 0x9f40, 0x9f41, 0x9f4d, 0x9f56, 0x9f57,
+  0x9f58, 0x5337, 0x56b2, 0x56b5, 0x56b3, 0x58e3, 0x5b45, 0x5dc6,
+  0x5dc7, 0x5eee, 0x5eef, 0x5fc0, 0x5fc1, 0x61f9, 0x6517, 0x6516,
+  0x6515, 0x6513, 0x65df, 0x66e8, 0x66e3, 0x66e4,
+  /* 0x69 */
+  0x6af3, 0x6af0, 0x6aea, 0x6ae8, 0x6af9, 0x6af1, 0x6aee, 0x6aef,
+  0x703c, 0x7035, 0x702f, 0x7037, 0x7034, 0x7031, 0x7042, 0x7038,
+  0x703f, 0x703a, 0x7039, 0x702a, 0x7040, 0x703b, 0x7033, 0x7041,
+  0x7213, 0x7214, 0x72a8, 0x737d, 0x737c, 0x74ba, 0x76ab, 0x76aa,
+  0x76be, 0x76ed, 0x77cc, 0x77ce, 0x77cf, 0x77cd, 0x77f2, 0x7925,
+  0x7923, 0x7927, 0x7928, 0x7924, 0x7929, 0x79b2, 0x7a6e, 0x7a6c,
+  0x7a6d, 0x7af7, 0x7c49, 0x7c48, 0x7c4a, 0x7c47, 0x7c45, 0x7cee,
+  0x7e7b, 0x7e7e, 0x7e81, 0x7e80, 0x7fba, 0x7fff, 0x8079, 0x81db,
+  0x81d9, 0x8268, 0x8269, 0x8622, 0x85ff, 0x8601, 0x85fe, 0x861b,
+  0x8600, 0x85f6, 0x8604, 0x8609, 0x8605, 0x860c, 0x85fd, 0x8819,
+  0x8810, 0x8811, 0x8817, 0x8813, 0x8816, 0x8963, 0x8966, 0x89b9,
+  0x89f7, 0x8b60, 0x8b6a, 0x8b5d, 0x8b68, 0x8b63,
+  /* 0x6a */
+  0x8b65, 0x8b67, 0x8b6d, 0x8dae, 0x8e86, 0x8e88, 0x8e84, 0x8f59,
+  0x8f56, 0x8f57, 0x8f55, 0x8f58, 0x8f5a, 0x908d, 0x9143, 0x9141,
+  0x91b7, 0x91b5, 0x91b2, 0x91b3, 0x940b, 0x9413, 0x93fb, 0x9420,
+  0x940f, 0x9414, 0x93fe, 0x9415, 0x9410, 0x9428, 0x9419, 0x940d,
+  0x93f5, 0x9400, 0x93f7, 0x9407, 0x940e, 0x9416, 0x9412, 0x93fa,
+  0x9409, 0x93f8, 0x943c, 0x940a, 0x93ff, 0x93fc, 0x940c, 0x93f6,
+  0x9411, 0x9406, 0x95de, 0x95e0, 0x95df, 0x972e, 0x972f, 0x97b9,
+  0x97bb, 0x97fd, 0x97fe, 0x9860, 0x9862, 0x9863, 0x985f, 0x98c1,
+  0x98c2, 0x9950, 0x994e, 0x9959, 0x994c, 0x994b, 0x9953, 0x9a32,
+  0x9a34, 0x9a31, 0x9a2c, 0x9a2a, 0x9a36, 0x9a29, 0x9a2e, 0x9a38,
+  0x9a2d, 0x9ac7, 0x9aca, 0x9ac6, 0x9b10, 0x9b12, 0x9b11, 0x9c0b,
+  0x9c08, 0x9bf7, 0x9c05, 0x9c12, 0x9bf8, 0x9c40,
+  /* 0x6b */
+  0x9c07, 0x9c0e, 0x9c06, 0x9c17, 0x9c14, 0x9c09, 0x9d9f, 0x9d99,
+  0x9da4, 0x9d9d, 0x9d92, 0x9d98, 0x9d90, 0x9d9b, 0x9da0, 0x9d94,
+  0x9d9c, 0x9daa, 0x9d97, 0x9da1, 0x9d9a, 0x9da2, 0x9da8, 0x9d9e,
+  0x9da3, 0x9dbf, 0x9da9, 0x9d96, 0x9da6, 0x9da7, 0x9e99, 0x9e9b,
+  0x9e9a, 0x9ee5, 0x9ee4, 0x9ee7, 0x9ee6, 0x9f30, 0x9f2e, 0x9f5b,
+  0x9f60, 0x9f5e, 0x9f5d, 0x9f59, 0x9f91, 0x513a, 0x5139, 0x5298,
+  0x5297, 0x56c3, 0x56bd, 0x56be, 0x5b48, 0x5b47, 0x5dcb, 0x5dcf,
+  0x5ef1, 0x61fd, 0x651b, 0x6b02, 0x6afc, 0x6b03, 0x6af8, 0x6b00,
+  0x7043, 0x7044, 0x704a, 0x7048, 0x7049, 0x7045, 0x7046, 0x721d,
+  0x721a, 0x7219, 0x737e, 0x7517, 0x766a, 0x77d0, 0x792d, 0x7931,
+  0x792f, 0x7c54, 0x7c53, 0x7cf2, 0x7e8a, 0x7e87, 0x7e88, 0x7e8b,
+  0x7e86, 0x7e8d, 0x7f4d, 0x7fbb, 0x8030, 0x81dd,
+  /* 0x6c */
+  0x8618, 0x862a, 0x8626, 0x861f, 0x8623, 0x861c, 0x8619, 0x8627,
+  0x862e, 0x8621, 0x8620, 0x8629, 0x861e, 0x8625, 0x8829, 0x881d,
+  0x881b, 0x8820, 0x8824, 0x881c, 0x882b, 0x884a, 0x896d, 0x8969,
+  0x896e, 0x896b, 0x89fa, 0x8b79, 0x8b78, 0x8b45, 0x8b7a, 0x8b7b,
+  0x8d10, 0x8d14, 0x8daf, 0x8e8e, 0x8e8c, 0x8f5e, 0x8f5b, 0x8f5d,
+  0x9146, 0x9144, 0x9145, 0x91b9, 0x943f, 0x943b, 0x9436, 0x9429,
+  0x943d, 0x9430, 0x9439, 0x942a, 0x9437, 0x942c, 0x9440, 0x9431,
+  0x95e5, 0x95e4, 0x95e3, 0x9735, 0x973a, 0x97bf, 0x97e1, 0x9864,
+  0x98c9, 0x98c6, 0x98c0, 0x9958, 0x9956, 0x9a39, 0x9a3d, 0x9a46,
+  0x9a44, 0x9a42, 0x9a41, 0x9a3a, 0x9a3f, 0x9acd, 0x9b15, 0x9b17,
+  0x9b18, 0x9b16, 0x9b3a, 0x9b52, 0x9c2b, 0x9c1d, 0x9c1c, 0x9c2c,
+  0x9c23, 0x9c28, 0x9c29, 0x9c24, 0x9c21, 0x9db7,
+  /* 0x6d */
+  0x9db6, 0x9dbc, 0x9dc1, 0x9dc7, 0x9dca, 0x9dcf, 0x9dbe, 0x9dc5,
+  0x9dc3, 0x9dbb, 0x9db5, 0x9dce, 0x9db9, 0x9dba, 0x9dac, 0x9dc8,
+  0x9db1, 0x9dad, 0x9dcc, 0x9db3, 0x9dcd, 0x9db2, 0x9e7a, 0x9e9c,
+  0x9eeb, 0x9eee, 0x9eed, 0x9f1b, 0x9f18, 0x9f1a, 0x9f31, 0x9f4e,
+  0x9f65, 0x9f64, 0x9f92, 0x4eb9, 0x56c6, 0x56c5, 0x56cb, 0x5971,
+  0x5b4b, 0x5b4c, 0x5dd5, 0x5dd1, 0x5ef2, 0x6521, 0x6520, 0x6526,
+  0x6522, 0x6b0b, 0x6b08, 0x6b09, 0x6c0d, 0x7055, 0x7056, 0x7057,
+  0x7052, 0x721e, 0x721f, 0x72a9, 0x737f, 0x74d8, 0x74d5, 0x74d9,
+  0x74d7, 0x766d, 0x76ad, 0x7935, 0x79b4, 0x7a70, 0x7a71, 0x7c57,
+  0x7c5c, 0x7c59, 0x7c5b, 0x7c5a, 0x7cf4, 0x7cf1, 0x7e91, 0x7f4f,
+  0x7f87, 0x81de, 0x826b, 0x8634, 0x8635, 0x8633, 0x862c, 0x8632,
+  0x8636, 0x882c, 0x8828, 0x8826, 0x882a, 0x8825,
+  /* 0x6e */
+  0x8971, 0x89bf, 0x89be, 0x89fb, 0x8b7e, 0x8b84, 0x8b82, 0x8b86,
+  0x8b85, 0x8b7f, 0x8d15, 0x8e95, 0x8e94, 0x8e9a, 0x8e92, 0x8e90,
+  0x8e96, 0x8e97, 0x8f60, 0x8f62, 0x9147, 0x944c, 0x9450, 0x944a,
+  0x944b, 0x944f, 0x9447, 0x9445, 0x9448, 0x9449, 0x9446, 0x973f,
+  0x97e3, 0x986a, 0x9869, 0x98cb, 0x9954, 0x995b, 0x9a4e, 0x9a53,
+  0x9a54, 0x9a4c, 0x9a4f, 0x9a48, 0x9a4a, 0x9a49, 0x9a52, 0x9a50,
+  0x9ad0, 0x9b19, 0x9b2b, 0x9b3b, 0x9b56, 0x9b55, 0x9c46, 0x9c48,
+  0x9c3f, 0x9c44, 0x9c39, 0x9c33, 0x9c41, 0x9c3c, 0x9c37, 0x9c34,
+  0x9c32, 0x9c3d, 0x9c36, 0x9ddb, 0x9dd2, 0x9dde, 0x9dda, 0x9dcb,
+  0x9dd0, 0x9ddc, 0x9dd1, 0x9ddf, 0x9de9, 0x9dd9, 0x9dd8, 0x9dd6,
+  0x9df5, 0x9dd5, 0x9ddd, 0x9eb6, 0x9ef0, 0x9f35, 0x9f33, 0x9f32,
+  0x9f42, 0x9f6b, 0x9f95, 0x9fa2, 0x513d, 0x5299,
+  /* 0x6f */
+  0x58e8, 0x58e7, 0x5972, 0x5b4d, 0x5dd8, 0x882f, 0x5f4f, 0x6201,
+  0x6203, 0x6204, 0x6529, 0x6525, 0x6596, 0x66eb, 0x6b11, 0x6b12,
+  0x6b0f, 0x6bca, 0x705b, 0x705a, 0x7222, 0x7382, 0x7381, 0x7383,
+  0x7670, 0x77d4, 0x7c67, 0x7c66, 0x7e95, 0x826c, 0x863a, 0x8640,
+  0x8639, 0x863c, 0x8631, 0x863b, 0x863e, 0x8830, 0x8832, 0x882e,
+  0x8833, 0x8976, 0x8974, 0x8973, 0x89fe, 0x8b8c, 0x8b8e, 0x8b8b,
+  0x8b88, 0x8c45, 0x8d19, 0x8e98, 0x8f64, 0x8f63, 0x91bc, 0x9462,
+  0x9455, 0x945d, 0x9457, 0x945e, 0x97c4, 0x97c5, 0x9800, 0x9a56,
+  0x9a59, 0x9b1e, 0x9b1f, 0x9b20, 0x9c52, 0x9c58, 0x9c50, 0x9c4a,
+  0x9c4d, 0x9c4b, 0x9c55, 0x9c59, 0x9c4c, 0x9c4e, 0x9dfb, 0x9df7,
+  0x9def, 0x9de3, 0x9deb, 0x9df8, 0x9de4, 0x9df6, 0x9de1, 0x9dee,
+  0x9de6, 0x9df2, 0x9df0, 0x9de2, 0x9dec, 0x9df4,
+  /* 0x70 */
+  0x9df3, 0x9de8, 0x9ded, 0x9ec2, 0x9ed0, 0x9ef2, 0x9ef3, 0x9f06,
+  0x9f1c, 0x9f38, 0x9f37, 0x9f36, 0x9f43, 0x9f4f, 0x9f71, 0x9f70,
+  0x9f6e, 0x9f6f, 0x56d3, 0x56cd, 0x5b4e, 0x5c6d, 0x652d, 0x66ed,
+  0x66ee, 0x6b13, 0x705f, 0x7061, 0x705d, 0x7060, 0x7223, 0x74db,
+  0x74e5, 0x77d5, 0x7938, 0x79b7, 0x79b6, 0x7c6a, 0x7e97, 0x7f89,
+  0x826d, 0x8643, 0x8838, 0x8837, 0x8835, 0x884b, 0x8b94, 0x8b95,
+  0x8e9e, 0x8e9f, 0x8ea0, 0x8e9d, 0x91be, 0x91bd, 0x91c2, 0x946b,
+  0x9468, 0x9469, 0x96e5, 0x9746, 0x9743, 0x9747, 0x97c7, 0x97e5,
+  0x9a5e, 0x9ad5, 0x9b59, 0x9c63, 0x9c67, 0x9c66, 0x9c62, 0x9c5e,
+  0x9c60, 0x9e02, 0x9dfe, 0x9e07, 0x9e03, 0x9e06, 0x9e05, 0x9e00,
+  0x9e01, 0x9e09, 0x9dff, 0x9dfd, 0x9e04, 0x9ea0, 0x9f1e, 0x9f46,
+  0x9f74, 0x9f75, 0x9f76, 0x56d4, 0x652e, 0x65b8,
+  /* 0x71 */
+  0x6b18, 0x6b19, 0x6b17, 0x6b1a, 0x7062, 0x7226, 0x72aa, 0x77d8,
+  0x77d9, 0x7939, 0x7c69, 0x7c6b, 0x7cf6, 0x7e9a, 0x7e98, 0x7e9b,
+  0x7e99, 0x81e0, 0x81e1, 0x8646, 0x8647, 0x8648, 0x8979, 0x897a,
+  0x897c, 0x897b, 0x89ff, 0x8b98, 0x8b99, 0x8ea5, 0x8ea4, 0x8ea3,
+  0x946e, 0x946d, 0x946f, 0x9471, 0x9473, 0x9749, 0x9872, 0x995f,
+  0x9c68, 0x9c6e, 0x9c6d, 0x9e0b, 0x9e0d, 0x9e10, 0x9e0f, 0x9e12,
+  0x9e11, 0x9ea1, 0x9ef5, 0x9f09, 0x9f47, 0x9f78, 0x9f7b, 0x9f7a,
+  0x9f79, 0x571e, 0x7066, 0x7c6f, 0x883c, 0x8db2, 0x8ea6, 0x91c3,
+  0x9474, 0x9478, 0x9476, 0x9475, 0x9a60, 0x9b2e, 0x9c74, 0x9c73,
+  0x9c71, 0x9c75, 0x9e14, 0x9e13, 0x9ef6, 0x9f0a, 0x9fa4, 0x7068,
+  0x7065, 0x7cf7, 0x866a, 0x883e, 0x883d, 0x883f, 0x8b9e, 0x8c9c,
+  0x8ea9, 0x8ec9, 0x974b, 0x9873, 0x9874, 0x98cc,
+  /* 0x72 */
+  0x9961, 0x99ab, 0x9a64, 0x9a66, 0x9a67, 0x9b24, 0x9e15, 0x9e17,
+  0x9f48, 0x6207, 0x6b1e, 0x7227, 0x864c, 0x8ea8, 0x9482, 0x9480,
+  0x9481, 0x9a69, 0x9a68, 0x9e19, 0x864b, 0x8b9f, 0x9483, 0x9c79,
+  0x9eb7, 0x7675, 0x9a6b, 0x9c7a, 0x9e1d, 0x7069, 0x706a, 0x7229,
+  0x9ea4, 0x9f7e, 0x9f49, 0x9f98,
+};
+
+static int
+cns11643_2_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 >= 0x21 && c1 <= 0x72)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if (c2 >= 0x21 && c2 < 0x7f) {
+        unsigned int i = 94 * (c1 - 0x21) + (c2 - 0x21);
+        unsigned short wc = 0xfffd;
+        {
+          if (i < 7650)
+            wc = cns11643_2_2uni_page21[i];
+        }
+        if (wc != 0xfffd) {
+          *pwc = (ucs4_t) wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
diff --git a/graf2d/win32gdk/gdk/src/iconv/cns11643_3.h b/graf2d/win32gdk/gdk/src/iconv/cns11643_3.h
new file mode 100644
index 00000000000..e2630131bbc
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cns11643_3.h
@@ -0,0 +1,974 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CNS 11643-1992 plane 3
+ */
+
+static const unsigned short cns11643_3_2uni_page21[6148] = {
+  /* 0x21 */
+  0x1a28, 0x1a36, 0x1a3f, 0x1a85, 0x1a05, 0x1a04, 0x1d82, 0x1d96,
+  0x1f38, 0x1f69, 0x1fb6, 0x1a2a, 0x1a87, 0x1a49, 0x1de2, 0x1a46,
+  0x1a8f, 0x1abc, 0x1abe, 0x1d66, 0x1de3, 0x1e04, 0x1e9c, 0x1f44,
+  0x2502, 0x250a, 0x2780, 0x29db, 0x2a7a, 0x2a7f, 0x2af4, 0x2b50,
+  0x2b51, 0x2b61, 0x621d, 0x6d0b, 0x1a63, 0x1a62, 0x1aa3, 0x1d85,
+  0x1ac5, 0x1acf, 0x1ace, 0x1acc, 0x1d84, 0x1d86, 0x8517, 0x00c5,
+  0x1de4, 0x1e05, 0x1e9e, 0x1e9d, 0x1efd, 0x1f00, 0x1f3a, 0x0139,
+  0x1f46, 0x1f5d, 0x1f86, 0x1fb7, 0x0155, 0x1fcc, 0x015b, 0x1fce,
+  0x2321, 0x03a2, 0x2a00, 0x2b0c, 0x2e37, 0x2e38, 0x3134, 0x3135,
+  0x31e0, 0x0a26, 0x3f8d, 0x1a97, 0x1ae0, 0x0032, 0x6ea9, 0x1ae7,
+  0x0033, 0x1ae6, 0x0034, 0x02a2, 0x0031, 0x00b0, 0x22d8, 0x1d8b,
+  0x1d8c, 0x1d99, 0x1de5, 0x8550, 0x1e0b, 0x00dc,
+  /* 0x22 */
+  0x021e, 0x1f04, 0x1f03, 0x1f07, 0x852a, 0x1f1e, 0x1f5f, 0x1f6d,
+  0x1f89, 0x1fba, 0x1fd0, 0x0165, 0x1ff6, 0x1ff7, 0x1ff9, 0x0164,
+  0x1ff4, 0x021d, 0x0226, 0x2324, 0x2504, 0x2518, 0x2532, 0x2530,
+  0x2534, 0x028e, 0x2575, 0x034a, 0x2782, 0x27f9, 0x2814, 0x038b,
+  0x03a6, 0x03a4, 0x03a5, 0x03a7, 0x042f, 0x0432, 0x2a81, 0x2a83,
+  0x2b0d, 0x2b52, 0x04d4, 0x2bca, 0x2bc7, 0x2e39, 0x05c5, 0x2e4f,
+  0x31e7, 0x332f, 0x377a, 0x3839, 0x08ba, 0x08b9, 0x3837, 0x3844,
+  0x3845, 0x3f8c, 0x4192, 0x4276, 0x5c93, 0x5c92, 0x14b3, 0x15ba,
+  0x1a21, 0x1a20, 0x1a22, 0x1a68, 0x1a89, 0x1a98, 0x1af9, 0x1aef,
+  0x003b, 0x003c, 0x1af8, 0x1b06, 0x1b03, 0x1afc, 0x1aee, 0x1b16,
+  0x0039, 0x1b28, 0x1b1c, 0x1b07, 0x1b1a, 0x1afa, 0x1b17, 0x1d4a,
+  0x00b2, 0x1d72, 0x8515, 0x1db4, 0x1db3, 0x1db2,
+  /* 0x23 */
+  0x00c7, 0x1de8, 0x002b, 0x1e14, 0x1e0f, 0x1e15, 0x1e18, 0x1ea8,
+  0x852c, 0x1f4b, 0x1f4f, 0x013b, 0x1f50, 0x0144, 0x1f8b, 0x0142,
+  0x1fbe, 0x015c, 0x1fd2, 0x2016, 0x1fff, 0x0167, 0x2000, 0x0166,
+  0x2005, 0x2013, 0x2015, 0x853b, 0x021f, 0x22e3, 0x2335, 0x2336,
+  0x2331, 0x2332, 0x24ee, 0x2505, 0x1a54, 0x028f, 0x2536, 0x0290,
+  0x02a8, 0x02a4, 0x257a, 0x02a3, 0x2586, 0x033d, 0x034c, 0x2786,
+  0x2b53, 0x2818, 0x038c, 0x283d, 0x2878, 0x03a8, 0x03ad, 0x03af,
+  0x7746, 0x2880, 0x0429, 0x2a08, 0x0436, 0x0471, 0x0470, 0x046f,
+  0x2af5, 0x2b0e, 0x04a9, 0x04aa, 0x04fb, 0x2bd3, 0x2bda, 0x04fc,
+  0x2bdb, 0x05ae, 0x2e0f, 0x2e5d, 0x2e5f, 0x2e67, 0x2e57, 0x6b50,
+  0x06c3, 0x31eb, 0x31ea, 0x0730, 0x3337, 0x0741, 0x3332, 0x3336,
+  0x3722, 0x37ce, 0x088c, 0x3858, 0x3851, 0x3877,
+  /* 0x24 */
+  0x383c, 0x08bb, 0x385a, 0x7c86, 0x3853, 0x3c6f, 0x3c72, 0x3c6e,
+  0x8535, 0x09a1, 0x3c73, 0x3eb1, 0x3eb2, 0x0aa8, 0x3f8f, 0x0aaa,
+  0x0aab, 0x0c96, 0x453c, 0x0dc2, 0x4c8d, 0x4c8e, 0x1093, 0x4e7b,
+  0x1094, 0x5971, 0x5bb9, 0x5c96, 0x5c9a, 0x15bb, 0x1a24, 0x1a71,
+  0x851b, 0x1a9c, 0x1b45, 0x1b4a, 0x1b39, 0x1b37, 0x0043, 0x1b32,
+  0x1b42, 0x0042, 0x1b44, 0x1b4b, 0x0044, 0x1b40, 0x1b35, 0x1b31,
+  0x1d51, 0x850e, 0x1d50, 0x1d4e, 0x00b3, 0x00b7, 0x1d9d, 0x00c8,
+  0x1db5, 0x1db8, 0x1dec, 0x1e23, 0x1e27, 0x1e26, 0x1e1f, 0x1e2b,
+  0x1e20, 0x1eb4, 0x1eb3, 0x0118, 0x1f25, 0x1f3b, 0x1f74, 0x0147,
+  0x0146, 0x0145, 0x016b, 0x0169, 0x204d, 0x0172, 0x0171, 0x203a,
+  0x016c, 0x016f, 0x2044, 0x204c, 0x2023, 0x201a, 0x2032, 0x204b,
+  0x2021, 0x0173, 0x2034, 0x2049, 0x2050, 0x2022,
+  /* 0x25 */
+  0x203f, 0x2051, 0x205a, 0x202f, 0x0176, 0x22e9, 0x22f2, 0x22f3,
+  0x22ef, 0x22ed, 0x22ec, 0x22e6, 0x2348, 0x0227, 0x2344, 0x233f,
+  0x233c, 0x2353, 0x2356, 0x0230, 0x235f, 0x2343, 0x2358, 0x2357,
+  0x0229, 0x022a, 0x022f, 0x2346, 0x022c, 0x233d, 0x022d, 0x2342,
+  0x2354, 0x2355, 0x24f1, 0x24f2, 0x24f0, 0x250b, 0x6aa6, 0x22f1,
+  0x253d, 0x0293, 0x2594, 0x258c, 0x02ad, 0x259c, 0x02ac, 0x02ab,
+  0x259f, 0x02a9, 0x259b, 0x02ae, 0x2589, 0x259a, 0x02aa, 0x3188,
+  0x034e, 0x278d, 0x0350, 0x27fe, 0x27ff, 0x27fd, 0x282b, 0x03b2,
+  0x2884, 0x288e, 0x289c, 0x03b5, 0x03b6, 0x2885, 0x29f5, 0x2a09,
+  0x0439, 0x043b, 0x2a0b, 0x0472, 0x2a92, 0x2a90, 0x2b03, 0x04ac,
+  0x2b1e, 0x2b63, 0x0508, 0x2be7, 0x2bfe, 0x2be6, 0x2bdc, 0x2bce,
+  0x0503, 0x2bfc, 0x2bdf, 0x2bec, 0x2bf6, 0x79d7,
+  /* 0x26 */
+  0x2bf2, 0x2bf0, 0x2bf9, 0x050b, 0x2e13, 0x05af, 0x85b2, 0x2e3b,
+  0x2e3c, 0x2e82, 0x05ce, 0x05cb, 0x05cc, 0x2e78, 0x2e8b, 0x05cd,
+  0x2e9e, 0x2ea5, 0x2e9b, 0x2e9c, 0x2e99, 0x2e8d, 0x2e85, 0x2e9d,
+  0x2e75, 0x0680, 0x06af, 0x06d3, 0x31f6, 0x06d5, 0x06d4, 0x06d7,
+  0x32f5, 0x335b, 0x0742, 0x3354, 0x3352, 0x0744, 0x3358, 0x3344,
+  0x334a, 0x3361, 0x08c6, 0x387f, 0x3891, 0x389e, 0x08c0, 0x386e,
+  0x387c, 0x389f, 0x3875, 0x08be, 0x3856, 0x38a2, 0x3879, 0x08ca,
+  0x38a1, 0x08c4, 0x38aa, 0x38a0, 0x08c2, 0x3c79, 0x3c77, 0x3c7e,
+  0x09a4, 0x3c75, 0x3c7b, 0x3e64, 0x0a29, 0x3ebb, 0x3ebc, 0x3ec7,
+  0x3eb9, 0x3ebe, 0x3eb6, 0x0a60, 0x0a5e, 0x3f98, 0x0aad, 0x0aae,
+  0x0aac, 0x0b57, 0x4193, 0x4280, 0x0bdd, 0x4283, 0x42c0, 0x42c1,
+  0x0c0e, 0x0c97, 0x43f4, 0x43f5, 0x0d27, 0x46cc,
+  /* 0x27 */
+  0x46cd, 0x48fa, 0x4c9f, 0x4c91, 0x4c97, 0x4c94, 0x1095, 0x4e86,
+  0x4e8c, 0x868f, 0x4e95, 0x1098, 0x526c, 0x119d, 0x5bb5, 0x5bbe,
+  0x5bc7, 0x148a, 0x5bc1, 0x5ca9, 0x5ca4, 0x14b5, 0x14b6, 0x14b7,
+  0x5ca8, 0x6227, 0x6226, 0x622b, 0x6233, 0x6234, 0x6229, 0x1a3d,
+  0x0028, 0x1a9d, 0x1b93, 0x1b8a, 0x004d, 0x0049, 0x1b6d, 0x1b8e,
+  0x1ba0, 0x1ba2, 0x1ba1, 0x1b9f, 0x1ba3, 0x6f09, 0x1b72, 0x0051,
+  0x1b8c, 0x1d56, 0x850f, 0x8511, 0x1d90, 0x00cb, 0x00ca, 0x00cc,
+  0x1ded, 0x1dfe, 0x1e2f, 0x71ec, 0x1e3c, 0x1e34, 0x1e39, 0x1eb9,
+  0x1eb5, 0x1ebf, 0x1f55, 0x013d, 0x1f76, 0x1f7a, 0x1f93, 0x0148,
+  0x1fc1, 0x1fc2, 0x1fd5, 0x2085, 0x0178, 0x205f, 0x2093, 0x2089,
+  0x2079, 0x6afe, 0x208f, 0x2069, 0x206d, 0x017a, 0x2094, 0x206a,
+  0x208a, 0x0177, 0x22fd, 0x22fb, 0x22f8, 0x0221,
+  /* 0x28 */
+  0x22fc, 0x22f6, 0x2365, 0x2381, 0x2363, 0x2367, 0x0231, 0x236e,
+  0x2378, 0x237f, 0x0233, 0x0234, 0x24f3, 0x254b, 0x254c, 0x02c1,
+  0x02b0, 0x02b4, 0x25ad, 0x02b8, 0x25c4, 0x02bc, 0x25c2, 0x25b0,
+  0x02bf, 0x02b5, 0x02b1, 0x02bd, 0x25bf, 0x02bb, 0x25c9, 0x25b8,
+  0x25ac, 0x02b3, 0x02b6, 0x02ba, 0x25b7, 0x25d7, 0x02b7, 0x2760,
+  0x0340, 0x2796, 0x279e, 0x2794, 0x279f, 0x279d, 0x0352, 0x2800,
+  0x2819, 0x0390, 0x0391, 0x2849, 0x284a, 0x03be, 0x28bb, 0x28c1,
+  0x03c0, 0x03c1, 0x03b9, 0x28b9, 0x289e, 0x28b4, 0x28ba, 0x29f6,
+  0x2a13, 0x2a12, 0x2a77, 0x0479, 0x2a98, 0x047b, 0x2a99, 0x2a9d,
+  0x2af8, 0x04a0, 0x2af9, 0x0029, 0x2b06, 0x2b21, 0x04ae, 0x2b25,
+  0x2b55, 0x04cd, 0x04cb, 0x04d9, 0x2b84, 0x2b83, 0x2c30, 0x2c07,
+  0x050c, 0x2c36, 0x0501, 0x0505, 0x0502, 0x2be9,
+  /* 0x29 */
+  0x2c3d, 0x2c08, 0x0513, 0x0511, 0x2eba, 0x2eb2, 0x05e4, 0x2eb7,
+  0x2ee4, 0x2ea7, 0x05da, 0x05d5, 0x05d3, 0x2ed5, 0x2ee1, 0x2edd,
+  0x2ea6, 0x2ec1, 0x2ec5, 0x2ec0, 0x2edf, 0x2ee0, 0x2ede, 0x05d6,
+  0x3189, 0x06b4, 0x31a6, 0x31ba, 0x06d9, 0x31ff, 0x06d8, 0x3217,
+  0x3218, 0x3201, 0x31fe, 0x0733, 0x330c, 0x0748, 0x336b, 0x3396,
+  0x3382, 0x338a, 0x0747, 0x33a3, 0x074b, 0x33a2, 0x338f, 0x074a,
+  0x33f9, 0x3380, 0x3726, 0x3727, 0x3768, 0x3769, 0x085a, 0x3781,
+  0x37b4, 0x37d1, 0x088e, 0x08b4, 0x381c, 0x08cd, 0x08cc, 0x08cf,
+  0x08cb, 0x08ce, 0x3897, 0x386c, 0x38df, 0x08d2, 0x38ea, 0x08d1,
+  0x38e4, 0x38d8, 0x38b2, 0x38ce, 0x38c8, 0x09a6, 0x3c8b, 0x3c88,
+  0x3c90, 0x3c8f, 0x09aa, 0x3c87, 0x3c89, 0x3c8d, 0x3c81, 0x09a8,
+  0x3c8c, 0x0a13, 0x0a1a, 0x3e40, 0x0a1d, 0x0a1e,
+  /* 0x2a */
+  0x3e65, 0x3e66, 0x3e68, 0x0a65, 0x0a66, 0x3ecd, 0x3ed3, 0x3edb,
+  0x0a64, 0x3ecf, 0x3fa7, 0x3fa3, 0x3f9e, 0x0ab0, 0x3faf, 0x0ab3,
+  0x0ab5, 0x3faa, 0x3f9c, 0x0b19, 0x4142, 0x4144, 0x413b, 0x4141,
+  0x783f, 0x419b, 0x419e, 0x0b75, 0x45c4, 0x45c3, 0x45c6, 0x0d2b,
+  0x0d2c, 0x45c7, 0x0d2d, 0x45ca, 0x802e, 0x0dc3, 0x46cf, 0x4876,
+  0x4874, 0x48ff, 0x48fc, 0x00ba, 0x0f50, 0x4b59, 0x4ca8, 0x0fd3,
+  0x0fd0, 0x4cb0, 0x0fdc, 0x4cb3, 0x0fd2, 0x4ca4, 0x4cb6, 0x4ca7,
+  0x4cac, 0x0fdb, 0x4ca6, 0x1f67, 0x4e0e, 0x4ec4, 0x4f3e, 0x4e9c,
+  0x10a5, 0x109f, 0x109a, 0x109c, 0x10a2, 0x4eaa, 0x109b, 0x4ec9,
+  0x10a3, 0x109d, 0x4ea6, 0x4eb2, 0x1188, 0x121a, 0x148d, 0x5bcc,
+  0x5bd9, 0x5bca, 0x5bd8, 0x5bcf, 0x5cb7, 0x14b8, 0x5cad, 0x5cb9,
+  0x6237, 0x15c3, 0x6241, 0x623e, 0x62b6, 0x6351,
+  /* 0x2b */
+  0x6363, 0x1a57, 0x1a79, 0x1ab2, 0x1ab0, 0x1aaf, 0x1ab1, 0x1bd2,
+  0x1bd5, 0x005d, 0x1bbe, 0x1bb8, 0x1bb0, 0x1bb1, 0x1bc8, 0x005a,
+  0x0057, 0x1bc6, 0x1bcc, 0x1be5, 0x1be3, 0x1bb4, 0x1d6a, 0x00b8,
+  0x1d9f, 0x00c2, 0x1dc1, 0x00cf, 0x1dc2, 0x1dc3, 0x1e45, 0x1e48,
+  0x00e7, 0x00e9, 0x1e4f, 0x1052, 0x00e8, 0x1ec5, 0x1eca, 0x1ec4,
+  0x1f27, 0x1f58, 0x1f7d, 0x014a, 0x1fdd, 0x1fdc, 0x1fda, 0x1fd9,
+  0x20b9, 0x0180, 0x20d0, 0x20b4, 0x20ca, 0x0187, 0x20a3, 0x20da,
+  0x20a4, 0x0184, 0x20b2, 0x209e, 0x209f, 0x20b5, 0x0182, 0x0181,
+  0x20cd, 0x0183, 0x20cc, 0x0222, 0x2300, 0x23ac, 0x2391, 0x238e,
+  0x238d, 0x2392, 0x23a1, 0x2390, 0x23a6, 0x23a8, 0x023b, 0x239c,
+  0x2396, 0x23a7, 0x023a, 0x0238, 0x0239, 0x0236, 0x24f5, 0x0285,
+  0x2509, 0x2508, 0x0854, 0x2552, 0x029a, 0x02c4,
+  /* 0x2c */
+  0x25df, 0x02c5, 0x25eb, 0x25ef, 0x25f0, 0x25d5, 0x260d, 0x2604,
+  0x25f9, 0x2602, 0x25f8, 0x25e2, 0x25d9, 0x25e7, 0x276a, 0x0354,
+  0x0355, 0x27ab, 0x0356, 0x281b, 0x282f, 0x0396, 0x323c, 0x0395,
+  0x0394, 0x03c4, 0x28d1, 0x28dc, 0x28e6, 0x28e1, 0x28cd, 0x857a,
+  0x28e2, 0x28dd, 0x28e5, 0x29fb, 0x29fa, 0x2a1e, 0x0444, 0x2aa1,
+  0x047d, 0x047e, 0x2afc, 0x2afb, 0x2b2f, 0x04b2, 0x04b6, 0x2b66,
+  0x8599, 0x04dc, 0x04df, 0x2c5c, 0x0528, 0x2c4e, 0x2c51, 0x0519,
+  0x0510, 0x2c23, 0x2c31, 0x2c7c, 0x2c52, 0x052c, 0x2c60, 0x2c4a,
+  0x2c61, 0x051b, 0x2e18, 0x05c2, 0x05ef, 0x05e3, 0x05e5, 0x05ea,
+  0x05e6, 0x05ee, 0x2f1f, 0x2f17, 0x2eea, 0x2f21, 0x2f04, 0x2f05,
+  0x05e8, 0x3131, 0x3144, 0x3140, 0x0685, 0x3142, 0x31be, 0x06e0,
+  0x3229, 0x321b, 0x06dd, 0x3223, 0x322c, 0x321a,
+  /* 0x2d */
+  0x3230, 0x323b, 0x321e, 0x3237, 0x3238, 0x06e1, 0x330e, 0x0751,
+  0x0755, 0x33e8, 0x33d6, 0x0752, 0x33c7, 0x33bc, 0x3452, 0x33bf,
+  0x33d5, 0x33fe, 0x4f63, 0x33fb, 0x85df, 0x33b1, 0x3401, 0x3405,
+  0x3400, 0x33d7, 0x0c9e, 0x372a, 0x376b, 0x0852, 0x085e, 0x0860,
+  0x085f, 0x37e1, 0x0892, 0x08d6, 0x3923, 0x38ff, 0x3914, 0x3905,
+  0x3913, 0x3906, 0x3921, 0x08de, 0x3915, 0x38af, 0x38f4, 0x3902,
+  0x3945, 0x85fe, 0x3926, 0x08d9, 0x3944, 0x08dd, 0x3924, 0x3ca5,
+  0x09ac, 0x3ca3, 0x09b0, 0x3ca2, 0x3cbb, 0x3ca0, 0x3caa, 0x09af,
+  0x09ae, 0x3ca8, 0x3cb6, 0x3cb2, 0x3ca7, 0x09ad, 0x09ab, 0x3cb9,
+  0x3e2e, 0x0a16, 0x3e3c, 0x0a30, 0x3e6d, 0x0a33, 0x0a31, 0x3ee7,
+  0x3eed, 0x0a6e, 0x3eec, 0x3ee5, 0x3ee2, 0x0ab1, 0x3fc4, 0x3fbd,
+  0x3fcf, 0x3fc9, 0x3fc1, 0x3fd0, 0x0ab7, 0x3fce,
+  /* 0x2e */
+  0x40ed, 0x40eb, 0x0b1a, 0x40ef, 0x4149, 0x4150, 0x4146, 0x414a,
+  0x0b59, 0x414d, 0x41a6, 0x0b7a, 0x0b78, 0x0b7b, 0x41a8, 0x0bde,
+  0x0bec, 0x42c7, 0x42ff, 0x0c1e, 0x42fd, 0x43e6, 0x440a, 0x0c9b,
+  0x4404, 0x440b, 0x4407, 0x0c9d, 0x4415, 0x4408, 0x0cfd, 0x45d3,
+  0x45d4, 0x45d0, 0x45d7, 0x467c, 0x0d94, 0x0d93, 0x467d, 0x4683,
+  0x4682, 0x0dc6, 0x46d4, 0x46d5, 0x46d3, 0x46d0, 0x46d2, 0x46fe,
+  0x46fc, 0x4877, 0x487c, 0x487b, 0x0eb8, 0x866a, 0x0eb7, 0x0eb9,
+  0x0f53, 0x7f33, 0x0f52, 0x0f51, 0x4b8f, 0x4cd3, 0x0fe3, 0x4ccb,
+  0x4cd2, 0x0fe2, 0x4d09, 0x4ce2, 0x4cdf, 0x4cc6, 0x1063, 0x4e24,
+  0x4ef7, 0x4ed8, 0x4edd, 0x10aa, 0x10a6, 0x4ef8, 0x4efc, 0x10a8,
+  0x10a9, 0x4ee9, 0x10ab, 0x4eee, 0x10ac, 0x4ed0, 0x4f0e, 0x4ee2,
+  0x4f0b, 0x4efd, 0x1d79, 0x5276, 0x119e, 0x5278,
+  /* 0x2f */
+  0x119f, 0x11a0, 0x5275, 0x527d, 0x120f, 0x5442, 0x5466, 0x121c,
+  0x558c, 0x5605, 0x12ae, 0x5606, 0x12b0, 0x589f, 0x13d4, 0x5bf1,
+  0x5be7, 0x5be9, 0x5bef, 0x5cc2, 0x5cbc, 0x14bb, 0x5cc6, 0x5cc0,
+  0x14c1, 0x14c2, 0x5ccd, 0x5cc9, 0x14be, 0x5cc4, 0x14e5, 0x6181,
+  0x15c6, 0x68ec, 0x1c32, 0x1bf9, 0x1c1d, 0x1bff, 0x1c04, 0x1bf0,
+  0x1c03, 0x122e, 0x1c02, 0x1bfc, 0x1bf2, 0x1c24, 0x1c08, 0x1c36,
+  0x1c2e, 0x0065, 0x1c10, 0x1c38, 0x1c39, 0x1bfd, 0x1c56, 0x1bfb,
+  0x1da3, 0x1da6, 0x1da1, 0x00d1, 0x00d0, 0x1dc7, 0x1dc9, 0x1e60,
+  0x1e64, 0x1e59, 0x1e65, 0x1e67, 0x1e57, 0x1e63, 0x00ee, 0x1e53,
+  0x00ef, 0x1ecf, 0x011e, 0x1ece, 0x1ed0, 0x1ed1, 0x1ecc, 0x014b,
+  0x014d, 0x0156, 0x210d, 0x20f4, 0x0192, 0x2113, 0x20ef, 0x20f5,
+  0x20f9, 0x2102, 0x2100, 0x0193, 0x0190, 0x2118,
+  /* 0x30 */
+  0x20f0, 0x20f6, 0x8541, 0x0197, 0x2119, 0x0223, 0x2305, 0x23c9,
+  0x023f, 0x23b7, 0x23cd, 0x0243, 0x0242, 0x0244, 0x23be, 0x23bb,
+  0x0245, 0x23db, 0x23c8, 0x23c4, 0x23c5, 0x23d1, 0x23ca, 0x23c0,
+  0x02d9, 0x02de, 0x2621, 0x262a, 0x02cf, 0x261d, 0x02cd, 0x260b,
+  0x02dd, 0x02ce, 0x02d3, 0x02d6, 0x2622, 0x02dc, 0x02d1, 0x2624,
+  0x02d0, 0x2614, 0x2631, 0x02d5, 0x262f, 0x261a, 0x2612, 0x02d4,
+  0x02db, 0x2626, 0x762e, 0x0343, 0x27bc, 0x27bb, 0x27b7, 0x2805,
+  0x2806, 0x2852, 0x2853, 0x03cd, 0x03d1, 0x28fa, 0x28eb, 0x03ca,
+  0x28f3, 0x28f5, 0x28e9, 0x28ef, 0x03d4, 0x2a2a, 0x2a30, 0x2a2e,
+  0x2a2c, 0x2a2f, 0x2aaf, 0x2aa9, 0x0486, 0x2afd, 0x2b32, 0x2b8e,
+  0x2b93, 0x2b8f, 0x2c4f, 0x2c99, 0x0533, 0x2c7e, 0x0537, 0x2c74,
+  0x2c4b, 0x2c73, 0x2c75, 0x052a, 0x051f, 0x2c56,
+  /* 0x31 */
+  0x2ca9, 0x2c8b, 0x2ca6, 0x0539, 0x2c93, 0x2cae, 0x2c9e, 0x2ca7,
+  0x2e45, 0x05f2, 0x05f8, 0x2f2e, 0x05f7, 0x2f52, 0x2f30, 0x2f5b,
+  0x05f4, 0x2f19, 0x2f1b, 0x05f1, 0x2f31, 0x2f5d, 0x2f37, 0x2f35,
+  0x2f53, 0x05f5, 0x2f5c, 0x2f3f, 0x314b, 0x0687, 0x0f69, 0x318b,
+  0x06b6, 0x319a, 0x3250, 0x3246, 0x324e, 0x3240, 0x06e9, 0x324b,
+  0x3248, 0x06eb, 0x3260, 0x3244, 0x324d, 0x0734, 0x3437, 0x3424,
+  0x0762, 0x075c, 0x341b, 0x3436, 0x0760, 0x342c, 0x3419, 0x3456,
+  0x3447, 0x343e, 0x341e, 0x85e1, 0x3415, 0x3422, 0x3427, 0x3459,
+  0x3458, 0x3455, 0x3430, 0x3423, 0x372e, 0x372b, 0x3730, 0x376c,
+  0x0861, 0x378b, 0x087f, 0x37e9, 0x37ea, 0x37e5, 0x396b, 0x08e5,
+  0x08e6, 0x3973, 0x3957, 0x08e9, 0x08f3, 0x395d, 0x3956, 0x398f,
+  0x395b, 0x391c, 0x399a, 0x399b, 0x3999, 0x08ee,
+  /* 0x32 */
+  0x3981, 0x3971, 0x08ed, 0x08ec, 0x3972, 0x395c, 0x3996, 0x3cc4,
+  0x3cdb, 0x3ccc, 0x3cd0, 0x3ce3, 0x3cdf, 0x09b3, 0x3cd6, 0x3cee,
+  0x3cd5, 0x09b5, 0x0a27, 0x0a35, 0x0a36, 0x3e7a, 0x0a71, 0x3ef5,
+  0x3f02, 0x0ab8, 0x0ac2, 0x3fe2, 0x3fec, 0x3fd5, 0x3ff9, 0x3fdf,
+  0x3fe6, 0x0ac8, 0x0ac0, 0x0ac1, 0x0ac4, 0x3fe4, 0x3fe1, 0x40f3,
+  0x0b1f, 0x0b1c, 0x0b1d, 0x0b4d, 0x4156, 0x4155, 0x4158, 0x4157,
+  0x415e, 0x41c3, 0x0b87, 0x0b82, 0x41b4, 0x0b7d, 0x41b1, 0x0bdf,
+  0x0c00, 0x42cb, 0x42cc, 0x432a, 0x0c20, 0x4316, 0x430f, 0x0c22,
+  0x0c24, 0x433f, 0x432b, 0x430e, 0x4324, 0x0c21, 0x4321, 0x4318,
+  0x43dd, 0x0ca4, 0x0ca5, 0x4424, 0x4436, 0x0d01, 0x4558, 0x4559,
+  0x0d03, 0x4562, 0x45da, 0x45d9, 0x0d37, 0x45e1, 0x45e5, 0x45e8,
+  0x45db, 0x0d38, 0x45e2, 0x45f0, 0x0d99, 0x0d98,
+  /* 0x33 */
+  0x0d97, 0x0dc9, 0x46da, 0x46dd, 0x0dc7, 0x46db, 0x46dc, 0x0dd9,
+  0x0ddb, 0x470d, 0x470b, 0x4714, 0x488e, 0x4886, 0x0e7b, 0x4887,
+  0x4883, 0x488b, 0x0e7c, 0x0ebd, 0x0ebc, 0x0ec3, 0x4924, 0x0ec1,
+  0x0ebf, 0x0ec4, 0x4925, 0x4b62, 0x4b93, 0x4b99, 0x4b97, 0x0f7e,
+  0x0f7f, 0x4bc4, 0x4bc6, 0x4c0a, 0x0fb4, 0x0fb3, 0x4c40, 0x4c3c,
+  0x4c3b, 0x4cf6, 0x4cff, 0x4cee, 0x4d04, 0x4d03, 0x4d07, 0x8683,
+  0x0fe6, 0x4cf7, 0x1059, 0x105a, 0x4e2d, 0x1064, 0x4e27, 0x4e29,
+  0x4f1f, 0x4f57, 0x10b4, 0x10b9, 0x10b7, 0x10b5, 0x4f21, 0x10c1,
+  0x10b1, 0x4f18, 0x4f58, 0x10b3, 0x10ba, 0x118c, 0x118b, 0x118d,
+  0x5284, 0x529f, 0x529b, 0x5289, 0x52a6, 0x5292, 0x528f, 0x52a0,
+  0x544f, 0x5478, 0x547a, 0x546e, 0x547b, 0x5484, 0x5473, 0x1278,
+  0x1277, 0x560d, 0x560b, 0x5619, 0x12b2, 0x13d6,
+  /* 0x34 */
+  0x5ad0, 0x1445, 0x1492, 0x1495, 0x5bf9, 0x5c09, 0x5c08, 0x14c6,
+  0x5cde, 0x5d51, 0x14e7, 0x14e8, 0x5ddb, 0x5ddf, 0x5dde, 0x5dd6,
+  0x5de0, 0x6185, 0x6260, 0x6259, 0x15cb, 0x6256, 0x15cd, 0x15f1,
+  0x62bd, 0x1722, 0x0021, 0x1c42, 0x1c59, 0x006f, 0x1c44, 0x1c66,
+  0x1c52, 0x1c54, 0x1c71, 0x1c50, 0x1c7b, 0x1c7c, 0x1c58, 0x0070,
+  0x0064, 0x1c79, 0x1c6c, 0x1c78, 0x1da8, 0x1dd1, 0x1dcf, 0x1e68,
+  0x1e76, 0x1ed4, 0x012d, 0x1fa0, 0x1fc4, 0x0158, 0x2158, 0x214c,
+  0x2168, 0x01a6, 0x2149, 0x01a4, 0x019f, 0x215d, 0x2129, 0x73ae,
+  0x2154, 0x2153, 0x01a3, 0x215a, 0x01a0, 0x213a, 0x213f, 0x212b,
+  0x23ea, 0x024a, 0x23ef, 0x0247, 0x0248, 0x23dd, 0x23fe, 0x8555,
+  0x23de, 0x23e6, 0x0249, 0x23e8, 0x23ff, 0x2403, 0x24f7, 0x34a6,
+  0x251f, 0x029e, 0x255b, 0x255d, 0x255e, 0x7537,
+  /* 0x35 */
+  0x02e8, 0x262b, 0x02ec, 0x263b, 0x02ed, 0x02e6, 0x2661, 0x263a,
+  0x266e, 0x264b, 0x266b, 0x02eb, 0x02e7, 0x2645, 0x264e, 0x2668,
+  0x263d, 0x2671, 0x263f, 0x266f, 0x2675, 0x02e9, 0x2673, 0x262c,
+  0x2659, 0x2654, 0x264f, 0x2663, 0x035c, 0x035d, 0x27c8, 0x0360,
+  0x27c3, 0x035b, 0x285b, 0x2861, 0x0399, 0x2921, 0x290a, 0x2909,
+  0x03d8, 0x292c, 0x2908, 0x03da, 0x03dd, 0x292a, 0x2915, 0x03e0,
+  0x2910, 0x2913, 0x03e5, 0x292f, 0x2918, 0x03d7, 0x29e3, 0x2a39,
+  0x2a35, 0x2a3a, 0x2a32, 0x044e, 0x048c, 0x0488, 0x858d, 0x2abb,
+  0x2aba, 0x2b34, 0x2b39, 0x04ce, 0x859c, 0x04e5, 0x04e6, 0x2c98,
+  0x0532, 0x2cd0, 0x0540, 0x0547, 0x054c, 0x2cd7, 0x2caa, 0x0535,
+  0x2ca1, 0x2ca4, 0x0530, 0x2cee, 0x0543, 0x2ce7, 0x054d, 0x2ce8,
+  0x2cde, 0x05b7, 0x05f3, 0x2f7e, 0x2f8b, 0x0602,
+  /* 0x36 */
+  0x060b, 0x2f79, 0x2f86, 0x2f93, 0x0604, 0x2f73, 0x2f6a, 0x85ba,
+  0x2f6c, 0x0608, 0x2f7f, 0x05fc, 0x2fb2, 0x2fba, 0x05ff, 0x0600,
+  0x2f66, 0x2f74, 0x068b, 0x315a, 0x068d, 0x314e, 0x314d, 0x318d,
+  0x318e, 0x31ad, 0x06ca, 0x31c7, 0x31ca, 0x06cb, 0x31c9, 0x85cb,
+  0x31e3, 0x3257, 0x06f3, 0x3263, 0x3267, 0x331a, 0x3319, 0x3316,
+  0x0736, 0x076a, 0x349e, 0x34b6, 0x3498, 0x3473, 0x076b, 0x349a,
+  0x348e, 0x34b7, 0x34db, 0x34a5, 0x346c, 0x34c1, 0x3484, 0x0771,
+  0x0768, 0x3495, 0x347a, 0x3499, 0x0772, 0x34b8, 0x34b9, 0x3470,
+  0x082e, 0x3735, 0x0862, 0x3790, 0x37bb, 0x37ed, 0x0898, 0x08b5,
+  0x08eb, 0x39c1, 0x39c3, 0x39ce, 0x08fb, 0x08f8, 0x39ad, 0x3a04,
+  0x08f5, 0x39b9, 0x0908, 0x39e7, 0x8607, 0x3a08, 0x3a06, 0x090a,
+  0x3a0a, 0x39b0, 0x0906, 0x39f8, 0x3a0c, 0x08fd,
+  /* 0x37 */
+  0x39b1, 0x08fa, 0x3a02, 0x3a07, 0x3a09, 0x3a01, 0x3a17, 0x39ff,
+  0x3a12, 0x09ba, 0x09b9, 0x3d03, 0x3d07, 0x3d01, 0x3cf5, 0x3cf1,
+  0x3d08, 0x3cf2, 0x3d0f, 0x09bb, 0x3cfe, 0x0a18, 0x0a40, 0x0a3d,
+  0x3f1a, 0x3f10, 0x3f0e, 0x4002, 0x3ff3, 0x0acd, 0x0ac9, 0x3ffb,
+  0x0acb, 0x0aca, 0x0ace, 0x411b, 0x4123, 0x4161, 0x4168, 0x0b5e,
+  0x4167, 0x41d3, 0x0b91, 0x0b8c, 0x4290, 0x0be1, 0x0c02, 0x42d5,
+  0x42d7, 0x42d6, 0x4330, 0x0c2b, 0x4326, 0x0c2a, 0x4340, 0x0a14,
+  0x431e, 0x0cad, 0x0ca3, 0x0cab, 0x4447, 0x0caf, 0x444b, 0x4451,
+  0x444f, 0x4442, 0x4446, 0x0d04, 0x456e, 0x456c, 0x45f2, 0x0d44,
+  0x45f1, 0x45f5, 0x45f3, 0x45f9, 0x0d3d, 0x0d47, 0x0d9c, 0x469a,
+  0x4693, 0x4691, 0x46e1, 0x0de0, 0x0de4, 0x4721, 0x471c, 0x4716,
+  0x4717, 0x4736, 0x471f, 0x0e80, 0x4893, 0x4899,
+  /* 0x38 */
+  0x489a, 0x489c, 0x0eca, 0x4949, 0x0ed4, 0x4934, 0x4937, 0x0ed2,
+  0x492d, 0x0ecb, 0x494c, 0x0ece, 0x0ed3, 0x4948, 0x0f44, 0x0f48,
+  0x4b3b, 0x0f45, 0x0f81, 0x0f86, 0x0f85, 0x4c08, 0x4c1a, 0x0fa3,
+  0x4c1d, 0x0fb5, 0x4c49, 0x4c45, 0x4c44, 0x489b, 0x0ffa, 0x0ff9,
+  0x4d2a, 0x4d2e, 0x0ffb, 0x0ff2, 0x4d31, 0x0fef, 0x4d1a, 0x4d34,
+  0x4d17, 0x105b, 0x1066, 0x10ce, 0x4f1d, 0x4f71, 0x4f84, 0x4f80,
+  0x4f72, 0x4fa1, 0x01b4, 0x4f79, 0x4f91, 0x10c8, 0x4f9f, 0x4fad,
+  0x10d1, 0x10c5, 0x4f23, 0x10d2, 0x4f85, 0x4f9c, 0x4fb7, 0x5258,
+  0x525a, 0x118f, 0x5257, 0x52b2, 0x11a7, 0x52ae, 0x11a5, 0x11a4,
+  0x1211, 0x5445, 0x549c, 0x5494, 0x54a3, 0x548f, 0x54a5, 0x54a9,
+  0x54a6, 0x548a, 0x54a0, 0x5490, 0x5592, 0x5591, 0x5594, 0x12b5,
+  0x5626, 0x5632, 0x5628, 0x12b4, 0x12bd, 0x561c,
+  /* 0x39 */
+  0x12bb, 0x562b, 0x5620, 0x12b9, 0x5629, 0x12c2, 0x12be, 0x12ba,
+  0x5621, 0x583a, 0x06b7, 0x585b, 0x5858, 0x587c, 0x1358, 0x58a6,
+  0x58ae, 0x58ad, 0x5965, 0x139b, 0x597e, 0x139c, 0x597c, 0x597f,
+  0x597a, 0x59bd, 0x13da, 0x13de, 0x59c0, 0x59bb, 0x5aad, 0x5aaf,
+  0x5ad6, 0x144d, 0x1446, 0x1447, 0x144b, 0x144c, 0x5ad9, 0x1448,
+  0x1499, 0x5c12, 0x5c0e, 0x5c25, 0x149b, 0x5c13, 0x5cee, 0x14ce,
+  0x5cab, 0x5cf7, 0x14eb, 0x5d59, 0x5d54, 0x5df2, 0x5df0, 0x5de5,
+  0x5df6, 0x151c, 0x158c, 0x6187, 0x15d1, 0x625a, 0x15d6, 0x15d3,
+  0x626e, 0x15d4, 0x15d0, 0x15d5, 0x6279, 0x160b, 0x64e1, 0x64e6,
+  0x17c6, 0x6ac4, 0x6ad2, 0x1a80, 0x0024, 0x1a81, 0x1c8f, 0x1c97,
+  0x1c88, 0x1c89, 0x0074, 0x007a, 0x1c81, 0x1d60, 0x7064, 0x00c3,
+  0x2a42, 0x1dd3, 0x00d4, 0x00d5, 0x1dd2, 0x1dd6,
+  /* 0x3a */
+  0x1e73, 0x00fb, 0x1e70, 0x00f7, 0x0132, 0x8533, 0x1fa8, 0x1fa6,
+  0x1fc5, 0x2197, 0x21de, 0x01ba, 0x01bf, 0x2196, 0x21b4, 0x01c7,
+  0x2185, 0x01b7, 0x219b, 0x21a0, 0x01b9, 0x2159, 0x01c3, 0x2186,
+  0x01bd, 0x01d0, 0x21af, 0x217a, 0x01c1, 0x01be, 0x01cd, 0x219e,
+  0x01cb, 0x21a9, 0x230f, 0x230e, 0x241a, 0x024f, 0x241f, 0x0253,
+  0x243c, 0x2418, 0x243e, 0x2426, 0x0255, 0x243a, 0x7464, 0x2422,
+  0x0251, 0x24fb, 0x2563, 0x2564, 0x029f, 0x26a8, 0x26a3, 0x2682,
+  0x2688, 0x26a1, 0x2685, 0x2698, 0x02fe, 0x2699, 0x02fb, 0x2689,
+  0x2681, 0x2696, 0x2680, 0x02f1, 0x02f5, 0x2691, 0x02ef, 0x0304,
+  0x0303, 0x02f4, 0x26cf, 0x02f3, 0x0302, 0x02f7, 0x02fa, 0x02fd,
+  0x02ee, 0x2687, 0x26a0, 0x02f0, 0x2679, 0x02f2, 0x2686, 0x26ab,
+  0x26aa, 0x26a4, 0x268d, 0x267e, 0x0344, 0x27d5,
+  /* 0x3b */
+  0x0362, 0x0377, 0x09c9, 0x281e, 0x285f, 0x285e, 0x2944, 0x293e,
+  0x03e8, 0x2948, 0x291c, 0x03ef, 0x295b, 0x294d, 0x03e6, 0x03ed,
+  0x2957, 0x03e7, 0x2953, 0x294f, 0x03eb, 0x293b, 0x2946, 0x042d,
+  0x0455, 0x2a46, 0x2a47, 0x0453, 0x2a48, 0x2ac0, 0x2abd, 0x2abf,
+  0x0490, 0x2b11, 0x04be, 0x2b3e, 0x2b3b, 0x04bd, 0x2b3a, 0x04cf,
+  0x04d0, 0x04ec, 0x2ba7, 0x054b, 0x2cea, 0x0548, 0x2d07, 0x2d22,
+  0x2d0c, 0x0555, 0x0551, 0x2cb3, 0x2cd6, 0x2cd2, 0x054e, 0x2ce3,
+  0x2ce5, 0x2ce9, 0x056b, 0x055e, 0x2d11, 0x2cfd, 0x0560, 0x0567,
+  0x2d1e, 0x2d20, 0x2d21, 0x2e1e, 0x05b8, 0x2fe2, 0x2fde, 0x2fe6,
+  0x0614, 0x060f, 0x0607, 0x0613, 0x2ff8, 0x0617, 0x2ffe, 0x2fc1,
+  0x2fbf, 0x2ff7, 0x2fd1, 0x315f, 0x3160, 0x3161, 0x069a, 0x06b8,
+  0x31d1, 0x06f7, 0x06f8, 0x327d, 0x326b, 0x327f,
+  /* 0x3c */
+  0x06fd, 0x06f5, 0x3273, 0x3281, 0x326d, 0x3269, 0x06fa, 0x0738,
+  0x331e, 0x34ed, 0x0787, 0x0780, 0x0788, 0x0779, 0x3503, 0x077c,
+  0x34fe, 0x34e5, 0x351e, 0x3502, 0x0783, 0x0785, 0x3509, 0x34ca,
+  0x3500, 0x85e5, 0x3501, 0x3518, 0x34e2, 0x34cf, 0x077b, 0x352e,
+  0x34c5, 0x34ff, 0x0786, 0x351c, 0x34c3, 0x0834, 0x376f, 0x0855,
+  0x376e, 0x0868, 0x37be, 0x089c, 0x37f4, 0x382d, 0x08fc, 0x39b6,
+  0x3a75, 0x3a1e, 0x091a, 0x3a18, 0x0917, 0x3a48, 0x091b, 0x3a4f,
+  0x0913, 0x3a42, 0x3a6a, 0x3a70, 0x39fe, 0x0905, 0x0907, 0x3a6d,
+  0x091c, 0x3a7b, 0x3a7e, 0x3a59, 0x0911, 0x3a57, 0x0916, 0x3a80,
+  0x3a50, 0x0915, 0x3a29, 0x3a76, 0x3a2a, 0x3a4c, 0x3d2a, 0x09cb,
+  0x3d35, 0x3d2c, 0x3d37, 0x3d1d, 0x09c5, 0x09c2, 0x3d38, 0x09cd,
+  0x3d34, 0x3d2b, 0x3d33, 0x3d27, 0x3d24, 0x09ca,
+  /* 0x3d */
+  0x3d2d, 0x3e32, 0x3e83, 0x3e82, 0x3e87, 0x3f06, 0x3f24, 0x3f38,
+  0x3f2a, 0x3f2c, 0x3f2b, 0x0a83, 0x3f2f, 0x3f28, 0x4017, 0x0ad6,
+  0x0ad5, 0x4019, 0x4038, 0x0ad1, 0x401f, 0x4014, 0x403c, 0x3ff7,
+  0x401c, 0x4015, 0x4018, 0x4039, 0x40f9, 0x4124, 0x8634, 0x0b52,
+  0x0b5f, 0x416e, 0x416d, 0x4171, 0x418e, 0x0b95, 0x41e5, 0x0b9d,
+  0x0b98, 0x0b9e, 0x0b96, 0x4294, 0x42b3, 0x0c03, 0x42d9, 0x0c2f,
+  0x4348, 0x4349, 0x4343, 0x0c31, 0x0c33, 0x4342, 0x43df, 0x0cb4,
+  0x4463, 0x4476, 0x0cb0, 0x445f, 0x4466, 0x4566, 0x4571, 0x0d08,
+  0x0d07, 0x4576, 0x4584, 0x4575, 0x45ff, 0x4607, 0x0d4e, 0x460e,
+  0x4609, 0x0d50, 0x0d52, 0x0da1, 0x0da3, 0x0da5, 0x0dcc, 0x46e7,
+  0x46e2, 0x4755, 0x0def, 0x0dea, 0x4743, 0x4757, 0x476c, 0x4742,
+  0x4753, 0x0ded, 0x4741, 0x0e85, 0x0e84, 0x48a7,
+  /* 0x3e */
+  0x48a0, 0x48a6, 0x48a4, 0x4974, 0x0edb, 0x4959, 0x0ed9, 0x4960,
+  0x4957, 0x496c, 0x497e, 0x4964, 0x0ed7, 0x495a, 0x495d, 0x0eda,
+  0x0ede, 0x0ed8, 0x4976, 0x494d, 0x4975, 0x0ed5, 0x4bd3, 0x4bd6,
+  0x0f9c, 0x0f9d, 0x4c60, 0x4c4e, 0x4d45, 0x4d3b, 0x0ffe, 0x4d48,
+  0x4d42, 0x4d49, 0x4d40, 0x4d14, 0x4d41, 0x1007, 0x4def, 0x4df6,
+  0x4e03, 0x106a, 0x4fed, 0x10e7, 0x4fda, 0x5018, 0x4fd2, 0x5008,
+  0x10e2, 0x5000, 0x10df, 0x10e1, 0x10e5, 0x5017, 0x4f46, 0x5014,
+  0x4fd3, 0x5005, 0x501f, 0x5002, 0x5016, 0x4fcd, 0x4fe6, 0x1191,
+  0x525d, 0x52d5, 0x52e1, 0x11b4, 0x11b0, 0x11b5, 0x11ae, 0x52ee,
+  0x5447, 0x5446, 0x122d, 0x122c, 0x54bb, 0x122b, 0x54bf, 0x54b4,
+  0x1229, 0x54b5, 0x127f, 0x559a, 0x5643, 0x12c9, 0x12cb, 0x565a,
+  0x12c5, 0x12c6, 0x12ca, 0x5635, 0x5638, 0x5642,
+  /* 0x3f */
+  0x5649, 0x565d, 0x564b, 0x563d, 0x12d2, 0x12d0, 0x132d, 0x1335,
+  0x5860, 0x585e, 0x587f, 0x587e, 0x5883, 0x136c, 0x58b1, 0x5987,
+  0x139d, 0x13a0, 0x5988, 0x5983, 0x13a2, 0x139f, 0x5986, 0x598b,
+  0x5982, 0x59ca, 0x59d2, 0x13eb, 0x13e2, 0x59d4, 0x59c9, 0x5ab0,
+  0x1436, 0x1432, 0x1450, 0x5af2, 0x5ae4, 0x5af3, 0x5aea, 0x144f,
+  0x5afd, 0x1452, 0x5b9d, 0x5c2b, 0x5c2a, 0x149e, 0x5c28, 0x5c29,
+  0x5c2c, 0x14a0, 0x149c, 0x5c3a, 0x5c30, 0x5c37, 0x5c3b, 0x14d1,
+  0x5d0a, 0x14ef, 0x14f0, 0x14f1, 0x5dfe, 0x5e20, 0x151d, 0x5e0b,
+  0x151f, 0x5e18, 0x5e22, 0x151e, 0x5e1b, 0x5e08, 0x1520, 0x5e0e,
+  0x5e13, 0x158e, 0x1591, 0x6195, 0x83dd, 0x1590, 0x15d7, 0x628c,
+  0x627b, 0x627f, 0x6281, 0x15d9, 0x6282, 0x15f4, 0x15f6, 0x0160,
+  0x15f5, 0x15f3, 0x62ee, 0x62ed, 0x160c, 0x62ec,
+  /* 0x40 */
+  0x635f, 0x636f, 0x1651, 0x636d, 0x16a6, 0x16a7, 0x16a8, 0x1727,
+  0x1724, 0x1725, 0x64f0, 0x172a, 0x1774, 0x17c7, 0x66a9, 0x17e7,
+  0x17ed, 0x66e0, 0x1ab7, 0x002e, 0x007b, 0x1ccc, 0x1cbc, 0x007c,
+  0x1caa, 0x1cb9, 0x007d, 0x1cab, 0x1cc3, 0x1ccd, 0x1d7e, 0x1e7e,
+  0x1e79, 0x00fd, 0x8523, 0x1ee1, 0x1ee0, 0x1ee7, 0x1f80, 0x1fab,
+  0x1faa, 0x1fa9, 0x1fe0, 0x21ea, 0x01da, 0x21d7, 0x01d6, 0x01db,
+  0x21c1, 0x2315, 0x025b, 0x246c, 0x025c, 0x245c, 0x2450, 0x2461,
+  0x246a, 0x2469, 0x2456, 0x2460, 0x2466, 0x245f, 0x2523, 0x2566,
+  0x2568, 0x0306, 0x030b, 0x26ce, 0x030d, 0x26c5, 0x26c3, 0x030a,
+  0x0313, 0x26d0, 0x0310, 0x0312, 0x0309, 0x0308, 0x0311, 0x030f,
+  0x2774, 0x2776, 0x27dc, 0x27d7, 0x27da, 0x27db, 0x0367, 0x2820,
+  0x296d, 0x2966, 0x03f6, 0x2964, 0x296e, 0x857e,
+  /* 0x41 */
+  0x2960, 0x2b42, 0x2b5a, 0x2b6e, 0x0564, 0x056c, 0x2d30, 0x2d3a,
+  0x2d2a, 0x2d43, 0x2d19, 0x2d31, 0x056d, 0x2d3d, 0x057a, 0x0575,
+  0x060d, 0x3008, 0x3032, 0x3038, 0x061e, 0x3031, 0x061b, 0x3019,
+  0x062a, 0x3011, 0x061f, 0x0622, 0x3029, 0x301d, 0x0625, 0x0627,
+  0x0629, 0x303c, 0x0624, 0x3046, 0x3047, 0x0628, 0x0626, 0x303a,
+  0x3007, 0x0623, 0x316b, 0x069f, 0x3170, 0x316d, 0x06b1, 0x31e4,
+  0x3293, 0x0703, 0x0707, 0x070c, 0x0706, 0x328f, 0x0704, 0x0709,
+  0x3292, 0x0705, 0x328e, 0x0708, 0x3546, 0x0796, 0x079c, 0x079f,
+  0x079b, 0x0798, 0x0799, 0x0794, 0x3531, 0x078d, 0x07a3, 0x353e,
+  0x0793, 0x357c, 0x3543, 0x0792, 0x3573, 0x85e8, 0x3555, 0x078e,
+  0x078c, 0x3585, 0x354d, 0x3550, 0x3547, 0x3567, 0x3536, 0x3564,
+  0x3561, 0x079a, 0x357d, 0x3744, 0x3740, 0x3771,
+  /* 0x42 */
+  0x3773, 0x379c, 0x086a, 0x086d, 0x0884, 0x37c1, 0x08a0, 0x37fa,
+  0x3831, 0x3832, 0x091d, 0x0926, 0x3ab8, 0x3aa8, 0x0933, 0x3a91,
+  0x3abb, 0x0938, 0x3a9a, 0x0930, 0x0928, 0x3aa9, 0x0927, 0x092a,
+  0x3ab5, 0x3a6c, 0x3ae8, 0x0931, 0x3add, 0x3ada, 0x3ae6, 0x3aac,
+  0x0934, 0x092e, 0x093b, 0x3ad9, 0x3ae3, 0x3ae9, 0x3adb, 0x0929,
+  0x3d6f, 0x09d2, 0x09d8, 0x3d48, 0x09cf, 0x3d4a, 0x3d6b, 0x09d9,
+  0x3d4f, 0x3d57, 0x3d74, 0x09ce, 0x09d3, 0x09d0, 0x3d45, 0x3d51,
+  0x3d6d, 0x07a1, 0x3e51, 0x3e50, 0x3e4e, 0x0a47, 0x3f41, 0x0a8b,
+  0x3f2e, 0x3f46, 0x0ad4, 0x4027, 0x0ade, 0x4048, 0x4053, 0x403d,
+  0x0adf, 0x405d, 0x4056, 0x0ad7, 0x401e, 0x4047, 0x4043, 0x4058,
+  0x4049, 0x0ae1, 0x404c, 0x4045, 0x403e, 0x0b2f, 0x4101, 0x411e,
+  0x0b62, 0x0b63, 0x417a, 0x41ee, 0x4202, 0x4297,
+  /* 0x43 */
+  0x4298, 0x0be2, 0x0c04, 0x0c43, 0x435d, 0x4364, 0x4353, 0x4358,
+  0x4482, 0x4490, 0x448a, 0x0cbe, 0x447a, 0x447d, 0x0cba, 0x448b,
+  0x4478, 0x0cbc, 0x864e, 0x448d, 0x4488, 0x4492, 0x4481, 0x457e,
+  0x4583, 0x0d0d, 0x0d0e, 0x0d11, 0x4580, 0x0d0f, 0x0d12, 0x0d55,
+  0x460f, 0x0d59, 0x0d5b, 0x461d, 0x0d57, 0x46a1, 0x46a4, 0x0dce,
+  0x46e9, 0x46ea, 0x0dfe, 0x4762, 0x476b, 0x0dfc, 0x475e, 0x0df5,
+  0x4779, 0x0df9, 0x0dfa, 0x476f, 0x4768, 0x0e88, 0x0e89, 0x48ae,
+  0x0e8a, 0x0e87, 0x0e8b, 0x48b0, 0x0ee6, 0x4990, 0x0eed, 0x498a,
+  0x0ee5, 0x498b, 0x4999, 0x4995, 0x0ee0, 0x4987, 0x4978, 0x4997,
+  0x4989, 0x4998, 0x0ee1, 0x0f5b, 0x0f5c, 0x4ba3, 0x0f8f, 0x0f8b,
+  0x0f8d, 0x4bdd, 0x4c57, 0x0fb9, 0x4d63, 0x4d6a, 0x4d6c, 0x100f,
+  0x1019, 0x1013, 0x4d5d, 0x4d75, 0x1018, 0x4d5f,
+  /* 0x44 */
+  0x1016, 0x4d7d, 0x4d6d, 0x1053, 0x868d, 0x4e41, 0x504f, 0x5084,
+  0x10f6, 0x507f, 0x10f5, 0x5048, 0x502a, 0x507b, 0x5072, 0x5064,
+  0x502e, 0x505c, 0x5053, 0x10f7, 0x5041, 0x50c8, 0x10f0, 0x5062,
+  0x5080, 0x503e, 0x5083, 0x5071, 0x10f9, 0x504a, 0x5055, 0x5058,
+  0x1192, 0x1195, 0x1196, 0x52fc, 0x52fd, 0x5315, 0x11b9, 0x5316,
+  0x52ff, 0x11bd, 0x11b8, 0x1212, 0x5458, 0x54cf, 0x54e0, 0x1280,
+  0x1281, 0x129a, 0x1298, 0x55e7, 0x566a, 0x5680, 0x12d4, 0x566f,
+  0x5665, 0x12da, 0x5678, 0x567d, 0x5688, 0x12d6, 0x12db, 0x5664,
+  0x567e, 0x12dc, 0x5667, 0x5863, 0x5888, 0x1371, 0x58cd, 0x1372,
+  0x58c9, 0x13a8, 0x59ed, 0x13f0, 0x86db, 0x13f1, 0x13fd, 0x1438,
+  0x1437, 0x1439, 0x5ab1, 0x1455, 0x1453, 0x5b04, 0x5b9e, 0x5ba0,
+  0x5c43, 0x5c46, 0x5c48, 0x5c45, 0x5c40, 0x5c4c,
+  /* 0x45 */
+  0x14d5, 0x14bd, 0x5d0c, 0x5d13, 0x5d15, 0x14f5, 0x5d6b, 0x5d67,
+  0x5e5d, 0x5e55, 0x5e35, 0x1521, 0x5e59, 0x5e2f, 0x5e3c, 0x5e8f,
+  0x5e5c, 0x5e6a, 0x5e62, 0x5e5f, 0x5e6b, 0x5e6e, 0x5e3b, 0x5e44,
+  0x5e41, 0x619a, 0x1592, 0x6199, 0x15de, 0x15db, 0x15da, 0x628f,
+  0x15df, 0x6296, 0x15f9, 0x15f8, 0x15fa, 0x62f4, 0x62fc, 0x160e,
+  0x6355, 0x1643, 0x6379, 0x1656, 0x1653, 0x169e, 0x63ee, 0x63f5,
+  0x16a9, 0x640b, 0x16fa, 0x64f3, 0x1731, 0x1730, 0x64f7, 0x64ff,
+  0x64f5, 0x1732, 0x64ec, 0x64f1, 0x1729, 0x172e, 0x659a, 0x1776,
+  0x66e2, 0x673d, 0x675d, 0x68e8, 0x18a5, 0x68eb, 0x68ef, 0x68ee,
+  0x6a81, 0x6b14, 0x1cd0, 0x1cd9, 0x1cdc, 0x1cd8, 0x008c, 0x1ce1,
+  0x1ceb, 0x008b, 0x0089, 0x1cf4, 0x1ce2, 0x1cde, 0x008d, 0x0086,
+  0x00d7, 0x1df4, 0x0104, 0x0107, 0x0103, 0x1eed,
+  /* 0x46 */
+  0x1eea, 0x0122, 0x1f32, 0x0151, 0x1fae, 0x1fb0, 0x0161, 0x21fb,
+  0x2203, 0x220b, 0x01e9, 0x2207, 0x01e5, 0x21f8, 0x01e4, 0x2228,
+  0x221e, 0x01e3, 0x2218, 0x2211, 0x2251, 0x2205, 0x2317, 0x2492,
+  0x0265, 0x248c, 0x0263, 0x2478, 0x2484, 0x2473, 0x24ad, 0x2497,
+  0x2495, 0x2477, 0x2472, 0x2496, 0x248d, 0x2510, 0x028c, 0x256c,
+  0x031a, 0x26e7, 0x0315, 0x26e4, 0x0320, 0x0321, 0x26ef, 0x2226,
+  0x031c, 0x031b, 0x26f0, 0x297b, 0x03fe, 0x2983, 0x0404, 0x0401,
+  0x298b, 0x298c, 0x0400, 0x2978, 0x2a52, 0x046d, 0x0493, 0x2ad0,
+  0x2acf, 0x04a1, 0x2bb3, 0x2bb4, 0x0576, 0x0579, 0x0572, 0x2d7b,
+  0x0583, 0x2d6f, 0x2d81, 0x2d3c, 0x2d42, 0x2d38, 0x2d33, 0x85a6,
+  0x2d60, 0x2d69, 0x2d7d, 0x2d86, 0x2e2c, 0x2e28, 0x0638, 0x304c,
+  0x0630, 0x3057, 0x307c, 0x0634, 0x063a, 0x3055,
+  /* 0x47 */
+  0x3062, 0x3071, 0x306a, 0x3056, 0x303b, 0x3081, 0x0635, 0x304f,
+  0x307e, 0x3064, 0x063f, 0x0640, 0x0632, 0x0631, 0x0636, 0x3171,
+  0x7aba, 0x070f, 0x32a5, 0x329a, 0x329c, 0x0710, 0x32a6, 0x070d,
+  0x32a4, 0x358f, 0x35c5, 0x35c8, 0x3592, 0x35b2, 0x07a9, 0x07b4,
+  0x07ac, 0x35e3, 0x35c0, 0x35d6, 0x35d1, 0x359f, 0x35a2, 0x35d2,
+  0x07b8, 0x07ae, 0x7bf3, 0x35e1, 0x35d5, 0x359d, 0x07b3, 0x07ba,
+  0x3598, 0x083f, 0x3774, 0x37a1, 0x093c, 0x3af0, 0x3af3, 0x0942,
+  0x0940, 0x3b1b, 0x3b0c, 0x3b1d, 0x3b34, 0x3b28, 0x3b17, 0x093e,
+  0x3b44, 0x3b42, 0x3b04, 0x3b11, 0x3afa, 0x3b4a, 0x3d91, 0x3d8e,
+  0x09e1, 0x3d8b, 0x3d8d, 0x3d7f, 0x3d8c, 0x3d7e, 0x3d7c, 0x3d83,
+  0x09e6, 0x3d88, 0x09e0, 0x0a15, 0x3e94, 0x0a93, 0x3f55, 0x3f53,
+  0x3f4f, 0x3f54, 0x406c, 0x4065, 0x4066, 0x4061,
+  /* 0x48 */
+  0x406b, 0x4068, 0x4076, 0x0ae7, 0x4060, 0x7e0f, 0x4074, 0x4106,
+  0x420e, 0x0bad, 0x4207, 0x0bae, 0x0be3, 0x42b9, 0x0bf5, 0x42b7,
+  0x42e2, 0x0c06, 0x4374, 0x4377, 0x4376, 0x4375, 0x0c4f, 0x4378,
+  0x4371, 0x0c54, 0x437a, 0x3d5b, 0x437b, 0x44a6, 0x44ae, 0x44b8,
+  0x0ccb, 0x0ce3, 0x0cc9, 0x44b1, 0x44af, 0x0d13, 0x4589, 0x4587,
+  0x0d15, 0x0d61, 0x4629, 0x0d66, 0x462a, 0x0d64, 0x462d, 0x462c,
+  0x0d60, 0x4632, 0x0d63, 0x46ec, 0x46f0, 0x4781, 0x479e, 0x4783,
+  0x0e0a, 0x4792, 0x0e04, 0x47a3, 0x479f, 0x4793, 0x0e07, 0x4786,
+  0x48b8, 0x48b7, 0x0e8d, 0x0e8f, 0x0e90, 0x0e92, 0x0eec, 0x49c8,
+  0x49b6, 0x866c, 0x49d1, 0x0ee7, 0x49a8, 0x49ab, 0x0ef2, 0x49b3,
+  0x49cd, 0x0eee, 0x49cf, 0x49a4, 0x0eef, 0x0f4c, 0x4b41, 0x4b6f,
+  0x4b71, 0x0f5e, 0x0f5f, 0x0f76, 0x0f74, 0x0f72,
+  /* 0x49 */
+  0x0f90, 0x4c23, 0x4c5b, 0x0fbe, 0x4c61, 0x4c5f, 0x4d81, 0x1026,
+  0x1025, 0x4d84, 0x4e13, 0x1074, 0x4e4a, 0x4e4c, 0x10fd, 0x1105,
+  0x1101, 0x50bd, 0x5095, 0x1109, 0x5092, 0x50c3, 0x110c, 0x5096,
+  0x50a5, 0x50b5, 0x50b3, 0x50a3, 0x50e4, 0x50d8, 0x50d5, 0x110d,
+  0x50b7, 0x50ad, 0x50da, 0x5093, 0x5336, 0x11c0, 0x11c5, 0x11c9,
+  0x533d, 0x532b, 0x5347, 0x5339, 0x11d5, 0x5345, 0x531d, 0x1241,
+  0x54ff, 0x54ea, 0x1233, 0x54f5, 0x123a, 0x5500, 0x54ed, 0x5503,
+  0x54e9, 0x1240, 0x1242, 0x55ea, 0x12e8, 0x569b, 0x568e, 0x56a2,
+  0x12e4, 0x569c, 0x5694, 0x5690, 0x56a9, 0x56ac, 0x12e7, 0x569f,
+  0x12e6, 0x12e1, 0x569d, 0x1339, 0x5867, 0x135c, 0x1375, 0x58d0,
+  0x58d6, 0x58d4, 0x5998, 0x599a, 0x5997, 0x13ae, 0x13b0, 0x13fa,
+  0x5a0b, 0x5a08, 0x5a01, 0x5ab4, 0x5ab3, 0x145b,
+  /* 0x4a */
+  0x5ba1, 0x5ba2, 0x14a5, 0x5c5a, 0x14a2, 0x5c61, 0x5c5f, 0x14db,
+  0x14da, 0x5d25, 0x5d7b, 0x5d76, 0x5d7c, 0x1524, 0x5e89, 0x5ef6,
+  0x5eb1, 0x5ead, 0x5e92, 0x5e81, 0x5e84, 0x1526, 0x5eae, 0x5e90,
+  0x5e9e, 0x1598, 0x1596, 0x159a, 0x61a2, 0x61a7, 0x1597, 0x15e1,
+  0x15e0, 0x15e3, 0x15e2, 0x62a0, 0x629d, 0x629f, 0x62d0, 0x15fb,
+  0x62d1, 0x1612, 0x1614, 0x6359, 0x1645, 0x6364, 0x165c, 0x165d,
+  0x16b8, 0x6419, 0x16ba, 0x6414, 0x6415, 0x641a, 0x1703, 0x1735,
+  0x1736, 0x1739, 0x6506, 0x172d, 0x64f8, 0x6501, 0x177a, 0x65be,
+  0x65bc, 0x65b7, 0x65b6, 0x65c0, 0x1778, 0x65b8, 0x177b, 0x177c,
+  0x177e, 0x65c4, 0x177d, 0x65bf, 0x17c9, 0x66da, 0x66e4, 0x66e9,
+  0x66e8, 0x66ea, 0x66e5, 0x17f3, 0x6726, 0x181a, 0x1819, 0x6740,
+  0x181f, 0x18a6, 0x18a7, 0x18a8, 0x18ab, 0x18a9,
+  /* 0x4b */
+  0x192e, 0x6abd, 0x195e, 0x0095, 0x0093, 0x0092, 0x1d0e, 0x0096,
+  0x1cf7, 0x0097, 0x1cfc, 0x1d0d, 0x1d01, 0x1dda, 0x1dd9, 0x1ddb,
+  0x1e86, 0x1e8e, 0x1eee, 0x1f33, 0x1fb1, 0x01f5, 0x2247, 0x222d,
+  0x2254, 0x01ea, 0x224b, 0x2252, 0x2231, 0x2244, 0x2256, 0x2250,
+  0x222b, 0x01f3, 0x224d, 0x2237, 0x224f, 0x24a2, 0x24b7, 0x0269,
+  0x24b2, 0x026b, 0x24aa, 0x24b5, 0x24b0, 0x026c, 0x24b4, 0x24a4,
+  0x24a7, 0x0268, 0x2526, 0x26fe, 0x0328, 0x2704, 0x0326, 0x26fc,
+  0x0325, 0x2706, 0x270a, 0x26fa, 0x270d, 0x2700, 0x270e, 0x036b,
+  0x040f, 0x0408, 0x2991, 0x040c, 0x298f, 0x2990, 0x2998, 0x29a4,
+  0x299b, 0x29a3, 0x2996, 0x29e4, 0x2a5a, 0x0460, 0x0462, 0x2a5e,
+  0x0498, 0x2bb8, 0x2d57, 0x2d5c, 0x2da6, 0x2d95, 0x2d88, 0x058a,
+  0x2da3, 0x2d8f, 0x0584, 0x2d64, 0x057f, 0x2d59,
+  /* 0x4c */
+  0x2d78, 0x0582, 0x2d85, 0x2d87, 0x2d9e, 0x0596, 0x0589, 0x2d98,
+  0x2d9c, 0x058d, 0x05bc, 0x2e2f, 0x3080, 0x309b, 0x308e, 0x308d,
+  0x3094, 0x30c6, 0x0644, 0x30a8, 0x3083, 0x063c, 0x30b9, 0x3086,
+  0x30b4, 0x30af, 0x3091, 0x064e, 0x30aa, 0x30a1, 0x30a7, 0x32b6,
+  0x32b3, 0x0714, 0x32bc, 0x32ac, 0x0715, 0x32ad, 0x360e, 0x07ce,
+  0x361c, 0x361a, 0x07e0, 0x07c2, 0x360b, 0x07bf, 0x35ef, 0x360c,
+  0x35f0, 0x3622, 0x07c4, 0x35d8, 0x07cf, 0x3612, 0x35fa, 0x07c8,
+  0x362a, 0x07cc, 0x3610, 0x07cd, 0x07c7, 0x3629, 0x35f9, 0x35ea,
+  0x362c, 0x3624, 0x18b7, 0x35e9, 0x3752, 0x374f, 0x3753, 0x0843,
+  0x08b6, 0x3b10, 0x3b65, 0x3b75, 0x0951, 0x094a, 0x094d, 0x0956,
+  0x3bd0, 0x0953, 0x3b5c, 0x3b3d, 0x3b71, 0x0959, 0x3b91, 0x3b0b,
+  0x3b79, 0x3b81, 0x3b8f, 0x094e, 0x3b59, 0x3b74,
+  /* 0x4d */
+  0x09ee, 0x3dae, 0x09ec, 0x3da3, 0x3dad, 0x09eb, 0x09ef, 0x3dab,
+  0x3da6, 0x3da2, 0x09ed, 0x1ef2, 0x3e57, 0x3e55, 0x3e99, 0x3f4b,
+  0x407a, 0x0af2, 0x0aef, 0x0af1, 0x408c, 0x4084, 0x0aed, 0x0af0,
+  0x4082, 0x4093, 0x407b, 0x0aee, 0x4109, 0x181b, 0x0b50, 0x0b66,
+  0x0284, 0x0bb8, 0x0bf6, 0x438a, 0x0c57, 0x4390, 0x0c5e, 0x44c6,
+  0x44d3, 0x44c0, 0x44d2, 0x44c7, 0x44c2, 0x0d19, 0x459f, 0x459d,
+  0x459e, 0x0d70, 0x4641, 0x0d6e, 0x4638, 0x463a, 0x4642, 0x0d72,
+  0x0d76, 0x463e, 0x46b0, 0x47ae, 0x47b3, 0x0e12, 0x0e1f, 0x47bf,
+  0x0e11, 0x0e16, 0x47cd, 0x0e19, 0x47b2, 0x0e24, 0x0e14, 0x0e25,
+  0x0e95, 0x0e96, 0x0e93, 0x0e94, 0x48c4, 0x48cd, 0x48c2, 0x48c6,
+  0x48c3, 0x48c9, 0x48c7, 0x0ea0, 0x49f8, 0x0efb, 0x49ed, 0x49e2,
+  0x0efc, 0x0f00, 0x0ef8, 0x49dc, 0x4a02, 0x4a01,
+  /* 0x4e */
+  0x0ef9, 0x49d6, 0x0f04, 0x49e4, 0x49fe, 0x0f03, 0x4a00, 0x49fc,
+  0x49fd, 0x0ef3, 0x49f5, 0x49ff, 0x0efa, 0x49eb, 0x49e5, 0x4b78,
+  0x4bae, 0x4be7, 0x0fbf, 0x4c65, 0x4c6a, 0x4c66, 0x4c68, 0x4c6b,
+  0x4d94, 0x4da1, 0x4d92, 0x4d96, 0x4d93, 0x1079, 0x1110, 0x5101,
+  0x1114, 0x50f8, 0x110e, 0x50f5, 0x111a, 0x5104, 0x1119, 0x1121,
+  0x1123, 0x111f, 0x511b, 0x5103, 0x5133, 0x5134, 0x50ed, 0x1125,
+  0x112b, 0x5135, 0x1116, 0x5105, 0x1122, 0x111b, 0x11ce, 0x11cf,
+  0x537d, 0x11cb, 0x11d1, 0x11cc, 0x5371, 0x1217, 0x545c, 0x54e6,
+  0x550f, 0x551b, 0x1251, 0x55a9, 0x55a5, 0x55ee, 0x56b1, 0x12ed,
+  0x56cc, 0x56ce, 0x12f4, 0x56b7, 0x12f1, 0x56b5, 0x56e9, 0x56b4,
+  0x12f8, 0x56b3, 0x56c1, 0x56af, 0x56ca, 0x56d0, 0x132f, 0x135e,
+  0x135d, 0x588e, 0x1376, 0x1377, 0x58e9, 0x58db,
+  /* 0x4f */
+  0x137e, 0x58eb, 0x59a4, 0x13b6, 0x59a2, 0x599d, 0x13b3, 0x13fc,
+  0x1403, 0x1400, 0x5a2a, 0x5a28, 0x140a, 0x1402, 0x5ab8, 0x5ab6,
+  0x5ab9, 0x5ab7, 0x5b22, 0x5b2b, 0x5b27, 0x5b19, 0x5ba4, 0x1487,
+  0x5bb3, 0x14a6, 0x5c71, 0x5c6a, 0x14a9, 0x14de, 0x5d88, 0x5d8c,
+  0x5ebf, 0x5eb8, 0x5ebe, 0x5edc, 0x5ee5, 0x152e, 0x152d, 0x5ed4,
+  0x5ed6, 0x1530, 0x5eda, 0x5eed, 0x5ef3, 0x5edb, 0x152b, 0x5eb9,
+  0x5ee2, 0x5eeb, 0x61af, 0x159e, 0x61b2, 0x61b3, 0x159f, 0x15e5,
+  0x15e4, 0x62a3, 0x62a5, 0x15fd, 0x15fc, 0x1617, 0x1619, 0x630a,
+  0x1618, 0x6387, 0x6389, 0x638c, 0x63ef, 0x642a, 0x6422, 0x16bf,
+  0x641f, 0x173c, 0x6519, 0x176b, 0x65ca, 0x65da, 0x1783, 0x1781,
+  0x1780, 0x65de, 0x65c8, 0x65e0, 0x17ca, 0x66b6, 0x66b5, 0x17ce,
+  0x66f4, 0x17f6, 0x676b, 0x6769, 0x6772, 0x6763,
+  /* 0x50 */
+  0x1839, 0x690d, 0x18ae, 0x6901, 0x690c, 0x18b5, 0x68f8, 0x18b3,
+  0x18b4, 0x68fe, 0x6902, 0x6a84, 0x1922, 0x6aab, 0x6aaa, 0x1d1d,
+  0x1d16, 0x0099, 0x1d2b, 0x1d1e, 0x1d1b, 0x1e90, 0x1e94, 0x1f14,
+  0x7289, 0x0202, 0x2267, 0x0201, 0x227b, 0x02a1, 0x225f, 0x2261,
+  0x01fd, 0x0273, 0x0274, 0x0270, 0x0276, 0x0275, 0x0272, 0x24c3,
+  0x24ca, 0x24bb, 0x24c0, 0x24c4, 0x2501, 0x271f, 0x2718, 0x2711,
+  0x2715, 0x0329, 0x2712, 0x271c, 0x032a, 0x2722, 0x2779, 0x29a6,
+  0x0416, 0x29b3, 0x29ab, 0x2aea, 0x0499, 0x2b5b, 0x04d3, 0x04f5,
+  0x2db7, 0x2dce, 0x2db9, 0x2dbd, 0x2dcf, 0x2dc0, 0x2d99, 0x2d97,
+  0x0594, 0x2dbb, 0x2dd0, 0x2dc4, 0x2e31, 0x0656, 0x30d3, 0x30c0,
+  0x0659, 0x0658, 0x0655, 0x0652, 0x30dc, 0x30d1, 0x30c8, 0x0657,
+  0x30d5, 0x32c3, 0x071b, 0x071c, 0x32bf, 0x32c5,
+  /* 0x51 */
+  0x0719, 0x32cd, 0x32c1, 0x3306, 0x073f, 0x3324, 0x3663, 0x3642,
+  0x3652, 0x07db, 0x3643, 0x3633, 0x07e2, 0x366c, 0x3657, 0x07d7,
+  0x364c, 0x366e, 0x07de, 0x07e5, 0x07e4, 0x07e6, 0x07d6, 0x3637,
+  0x07df, 0x3671, 0x364a, 0x3636, 0x07dc, 0x3653, 0x07da, 0x3645,
+  0x3670, 0x07d3, 0x07d0, 0x365c, 0x3758, 0x3757, 0x0886, 0x0887,
+  0x08ad, 0x08b7, 0x0958, 0x096a, 0x3bbb, 0x0962, 0x0961, 0x3bbe,
+  0x0969, 0x096c, 0x0965, 0x3bb5, 0x3bd3, 0x3b9f, 0x0966, 0x3bb7,
+  0x3bf5, 0x3db7, 0x09f5, 0x3dbb, 0x09f4, 0x3dd1, 0x09f7, 0x3dba,
+  0x09f8, 0x3db6, 0x3dcc, 0x09fb, 0x09fc, 0x3dd3, 0x409b, 0x0af5,
+  0x0af8, 0x4096, 0x40a2, 0x409d, 0x410a, 0x410e, 0x0b3c, 0x4181,
+  0x422c, 0x4237, 0x4236, 0x423b, 0x0bc5, 0x42a1, 0x0c62, 0x0c63,
+  0x4398, 0x0c67, 0x4396, 0x0c66, 0x0cd9, 0x0cdb,
+  /* 0x52 */
+  0x44d6, 0x44eb, 0x0cd8, 0x44dc, 0x0d1b, 0x45a5, 0x45a9, 0x6434,
+  0x4653, 0x4645, 0x0d79, 0x464f, 0x0d7d, 0x46bd, 0x46bb, 0x46f1,
+  0x0e2c, 0x0e37, 0x47ec, 0x47ed, 0x0e30, 0x0e9a, 0x48d3, 0x1600,
+  0x48e1, 0x0f05, 0x4a19, 0x0f07, 0x0f09, 0x0f0a, 0x4a27, 0x4a26,
+  0x0f79, 0x0fc2, 0x4c6e, 0x4daf, 0x1038, 0x1037, 0x4dad, 0x1021,
+  0x4daa, 0x4e18, 0x105e, 0x113d, 0x1137, 0x1140, 0x516f, 0x514c,
+  0x111d, 0x5142, 0x1133, 0x515c, 0x5170, 0x515f, 0x1135, 0x515a,
+  0x514b, 0x513f, 0x538a, 0x11d8, 0x538b, 0x53a1, 0x538e, 0x11dc,
+  0x11de, 0x5399, 0x545e, 0x545f, 0x5524, 0x55a7, 0x56ea, 0x56fd,
+  0x56f9, 0x56e3, 0x56e5, 0x12fa, 0x12fb, 0x56ec, 0x133d, 0x133b,
+  0x133f, 0x135f, 0x58f2, 0x137f, 0x58ef, 0x1384, 0x59a6, 0x13bc,
+  0x1414, 0x140f, 0x5a3b, 0x5a43, 0x140e, 0x5a32,
+  /* 0x53 */
+  0x5b31, 0x5b30, 0x1460, 0x5b2d, 0x5b3c, 0x5ba7, 0x5ba5, 0x14ab,
+  0x14ac, 0x14aa, 0x5d37, 0x5d95, 0x5d8e, 0x1504, 0x5d96, 0x1508,
+  0x5f45, 0x5f0a, 0x1533, 0x1534, 0x5efd, 0x5f17, 0x5f1c, 0x5f07,
+  0x5f31, 0x5f32, 0x5f2c, 0x5f30, 0x5f03, 0x5f05, 0x15a2, 0x61c2,
+  0x15a4, 0x61b8, 0x15a5, 0x61c1, 0x15a7, 0x15a6, 0x15e7, 0x62ab,
+  0x62b7, 0x15ff, 0x15fe, 0x6315, 0x6314, 0x161d, 0x161c, 0x630c,
+  0x6317, 0x1667, 0x6393, 0x1694, 0x63d2, 0x16c5, 0x16c8, 0x6436,
+  0x6431, 0x6433, 0x643c, 0x642e, 0x643a, 0x16c9, 0x643d, 0x16c7,
+  0x64b5, 0x6522, 0x6523, 0x6520, 0x651c, 0x651d, 0x176c, 0x65a0,
+  0x178a, 0x65ef, 0x65e8, 0x65eb, 0x1788, 0x1787, 0x1786, 0x65e1,
+  0x65e6, 0x17cf, 0x17d0, 0x66f8, 0x66f5, 0x181c, 0x1823, 0x6783,
+  0x6794, 0x6784, 0x1849, 0x678b, 0x678f, 0x1843,
+  /* 0x54 */
+  0x678c, 0x1848, 0x6789, 0x1847, 0x678e, 0x1846, 0x183f, 0x1844,
+  0x6924, 0x690f, 0x18be, 0x6913, 0x690a, 0x18c2, 0x18ba, 0x18bc,
+  0x18c6, 0x692a, 0x691a, 0x18c8, 0x6927, 0x6916, 0x6921, 0x1923,
+  0x6a85, 0x6aac, 0x6ac6, 0x6ac5, 0x6ad7, 0x6b53, 0x009d, 0x1d28,
+  0x1d27, 0x1ddf, 0x0124, 0x1f35, 0x1fb3, 0x0207, 0x228a, 0x227d,
+  0x2289, 0x0279, 0x24cd, 0x24d0, 0x0278, 0x272b, 0x2733, 0x2729,
+  0x2735, 0x2731, 0x2737, 0x2836, 0x29be, 0x0419, 0x29b9, 0x041c,
+  0x29bb, 0x0418, 0x2de2, 0x2ddb, 0x2ddd, 0x2ddc, 0x2dda, 0x85af,
+  0x2dd9, 0x05bd, 0x065d, 0x30df, 0x065a, 0x065e, 0x30e1, 0x065c,
+  0x30ee, 0x065b, 0x31b5, 0x32d4, 0x32d5, 0x0721, 0x32d0, 0x32d1,
+  0x32ce, 0x32d7, 0x0720, 0x0732, 0x367d, 0x368a, 0x07f2, 0x36a7,
+  0x07f5, 0x3699, 0x3682, 0x3688, 0x07ee, 0x07ec,
+  /* 0x55 */
+  0x3686, 0x07ea, 0x3698, 0x369d, 0x07ed, 0x07f3, 0x368f, 0x07f6,
+  0x36aa, 0x0848, 0x375d, 0x0849, 0x380a, 0x0975, 0x3bd7, 0x3bd6,
+  0x3be5, 0x096f, 0x097b, 0x0973, 0x3bd9, 0x3bda, 0x3bea, 0x0970,
+  0x3bf6, 0x7d39, 0x0978, 0x3de3, 0x09fe, 0x3de9, 0x0a00, 0x3deb,
+  0x3def, 0x3df3, 0x3dea, 0x0a01, 0x8621, 0x0a55, 0x0a56, 0x0a9d,
+  0x3f71, 0x0af9, 0x40ae, 0x0aff, 0x40b3, 0x0afd, 0x40ac, 0x0b43,
+  0x0b41, 0x4183, 0x4245, 0x424e, 0x4244, 0x42a3, 0x42a5, 0x43a6,
+  0x43a4, 0x0c6f, 0x43a9, 0x43af, 0x0c8a, 0x0ce5, 0x0ce6, 0x44f0,
+  0x44f8, 0x44f1, 0x0d7f, 0x4649, 0x0db5, 0x0db6, 0x0dbb, 0x46c2,
+  0x46f2, 0x46f3, 0x47fa, 0x0e40, 0x47f6, 0x47fc, 0x4818, 0x4808,
+  0x4812, 0x0e9d, 0x0e9c, 0x48db, 0x48da, 0x0f0f, 0x0f11, 0x0f0d,
+  0x4a2c, 0x4a4d, 0x0f14, 0x0f13, 0x4b46, 0x4bf6,
+  /* 0x56 */
+  0x4c2b, 0x4c74, 0x4db8, 0x4dc8, 0x1082, 0x1083, 0x114d, 0x5192,
+  0x5193, 0x114f, 0x517f, 0x51ab, 0x5197, 0x114c, 0x1151, 0x51ac,
+  0x11ee, 0x11e8, 0x18cb, 0x53ce, 0x11eb, 0x53cd, 0x11e2, 0x11e6,
+  0x53c1, 0x53b1, 0x53c7, 0x11ec, 0x5540, 0x1259, 0x553f, 0x5539,
+  0x125d, 0x5543, 0x1257, 0x125b, 0x1256, 0x55ab, 0x12fe, 0x571f,
+  0x5709, 0x570c, 0x1300, 0x1301, 0x5840, 0x1342, 0x5896, 0x1360,
+  0x58f6, 0x58f7, 0x141d, 0x5a46, 0x5a4f, 0x143e, 0x1469, 0x1465,
+  0x5b3d, 0x5b41, 0x5f66, 0x5f78, 0x5f5d, 0x5f69, 0x5f74, 0x5f7d,
+  0x5f6e, 0x5f72, 0x5f73, 0x5f62, 0x5f48, 0x5f53, 0x5f5f, 0x5f68,
+  0x1538, 0x5f7f, 0x5f6b, 0x15ae, 0x61c4, 0x15ad, 0x62af, 0x62ad,
+  0x62b2, 0x1602, 0x161f, 0x631a, 0x631b, 0x1622, 0x1620, 0x86f5,
+  0x166c, 0x639b, 0x639f, 0x1668, 0x166d, 0x166e,
+  /* 0x57 */
+  0x16a0, 0x16ce, 0x16d0, 0x16d1, 0x16cb, 0x6440, 0x16d2, 0x6447,
+  0x16d3, 0x64b7, 0x1720, 0x174e, 0x174b, 0x1772, 0x1770, 0x65a2,
+  0x1792, 0x178f, 0x6600, 0x65f3, 0x1790, 0x8437, 0x65f5, 0x17d9,
+  0x17d5, 0x66bd, 0x6700, 0x6702, 0x17fa, 0x6734, 0x6749, 0x679f,
+  0x184b, 0x67a3, 0x67cd, 0x6799, 0x679d, 0x18d0, 0x18ce, 0x6939,
+  0x18cf, 0x6944, 0x18c4, 0x18cc, 0x6935, 0x18d2, 0x1935, 0x6aaf,
+  0x0a03, 0x1d2f, 0x009e, 0x00af, 0x6b8e, 0x020c, 0x229f, 0x229b,
+  0x229e, 0x2296, 0x2294, 0x22a0, 0x027c, 0x273b, 0x0330, 0x0331,
+  0x273a, 0x29c1, 0x2b4d, 0x2b5d, 0x2df3, 0x05a1, 0x059e, 0x0668,
+  0x0661, 0x30f6, 0x30e5, 0x30ea, 0x30e7, 0x3105, 0x0665, 0x30f9,
+  0x0666, 0x066a, 0x06ab, 0x36ab, 0x36ed, 0x36b2, 0x36b0, 0x36b5,
+  0x36be, 0x36c1, 0x36c8, 0x07f9, 0x36c0, 0x36bc,
+  /* 0x58 */
+  0x36b1, 0x36c4, 0x36bf, 0x0858, 0x088a, 0x3c08, 0x3c03, 0x3bfd,
+  0x3c10, 0x3c02, 0x3c13, 0x0a04, 0x3dfa, 0x3e00, 0x40b9, 0x40bc,
+  0x0b02, 0x425b, 0x4251, 0x424f, 0x42eb, 0x43b8, 0x0c79, 0x43b9,
+  0x43c1, 0x43c0, 0x43be, 0x450b, 0x0ceb, 0x4507, 0x450a, 0x4508,
+  0x0ce9, 0x450d, 0x4506, 0x4515, 0x45af, 0x0d20, 0x0d21, 0x0d81,
+  0x46f5, 0x0e4d, 0x0e59, 0x482e, 0x0e58, 0x481b, 0x81d1, 0x481a,
+  0x4824, 0x0ea5, 0x0ea9, 0x48e6, 0x48e3, 0x0f1a, 0x0f19, 0x4a5d,
+  0x4a4f, 0x4a66, 0x4a5b, 0x4b47, 0x4bb4, 0x0f96, 0x0f98, 0x0f97,
+  0x4bfa, 0x4c2e, 0x82df, 0x0fc8, 0x4dce, 0x1043, 0x1045, 0x4e19,
+  0x1152, 0x1157, 0x51cc, 0x51b2, 0x1155, 0x51bb, 0x51c1, 0x1156,
+  0x1158, 0x11f2, 0x53e9, 0x53ee, 0x53f0, 0x53d6, 0x540e, 0x53da,
+  0x5548, 0x554a, 0x554e, 0x554d, 0x55b1, 0x55b0,
+  /* 0x59 */
+  0x55b3, 0x1307, 0x5738, 0x5732, 0x1308, 0x572d, 0x130a, 0x5734,
+  0x0f1b, 0x5729, 0x5874, 0x1361, 0x1362, 0x5903, 0x13c2, 0x13c6,
+  0x59a9, 0x5a58, 0x141e, 0x1425, 0x5abf, 0x5ac1, 0x5b4a, 0x5bac,
+  0x14b0, 0x5c89, 0x5d3d, 0x5d3c, 0x5da9, 0x5fa0, 0x153d, 0x5f90,
+  0x153e, 0x5f93, 0x5f8b, 0x5fad, 0x5fbb, 0x5fb8, 0x1546, 0x1545,
+  0x5f9c, 0x61d8, 0x61d7, 0x1603, 0x1626, 0x1627, 0x635d, 0x63a9,
+  0x63da, 0x1698, 0x16ad, 0x16d5, 0x16da, 0x6454, 0x16d9, 0x6455,
+  0x644b, 0x16dd, 0x643f, 0x64b9, 0x1715, 0x1716, 0x1717, 0x1721,
+  0x6538, 0x6536, 0x6540, 0x174c, 0x653b, 0x6539, 0x65a4, 0x1796,
+  0x1798, 0x6608, 0x660c, 0x179b, 0x6610, 0x17ff, 0x6707, 0x1825,
+  0x67d2, 0x184f, 0x67c2, 0x67bb, 0x67cc, 0x67cb, 0x1856, 0x1854,
+  0x694d, 0x6963, 0x694e, 0x18d8, 0x6950, 0x6955,
+  /* 0x5a */
+  0x18d7, 0x695e, 0x1926, 0x6a90, 0x6ab2, 0x6ab1, 0x1938, 0x6aca,
+  0x6b02, 0x6b27, 0x6b26, 0x198a, 0x22af, 0x24e0, 0x24dc, 0x0334,
+  0x2739, 0x0335, 0x856a, 0x277c, 0x27f3, 0x8570, 0x03a1, 0x286b,
+  0x29c4, 0x310b, 0x3108, 0x310a, 0x066c, 0x066d, 0x31dc, 0x0729,
+  0x072a, 0x32e1, 0x32df, 0x36ce, 0x36d4, 0x36e3, 0x36d7, 0x36e2,
+  0x0800, 0x0808, 0x0806, 0x0805, 0x36d8, 0x36d5, 0x36d2, 0x08b1,
+  0x0988, 0x3c1e, 0x3c2c, 0x3c25, 0x3bf3, 0x3e04, 0x3e08, 0x3e15,
+  0x0a09, 0x40c4, 0x40c9, 0x40c7, 0x40c8, 0x42a9, 0x43c6, 0x43c5,
+  0x4518, 0x451a, 0x4520, 0x0d22, 0x4666, 0x4664, 0x466a, 0x0dd5,
+  0x0e61, 0x0e5d, 0x0e62, 0x0e4f, 0x0e60, 0x4835, 0x4834, 0x0eaa,
+  0x0f22, 0x4a6c, 0x0f21, 0x4a6e, 0x4a71, 0x1046, 0x4dd4, 0x4dd6,
+  0x4e1a, 0x4e62, 0x4e65, 0x4e76, 0x51db, 0x51d6,
+  /* 0x5b */
+  0x1162, 0x51e7, 0x1160, 0x1164, 0x51f4, 0x86b6, 0x53fd, 0x53d5,
+  0x5407, 0x11f6, 0x540f, 0x53f8, 0x86c1, 0x1219, 0x5587, 0x1291,
+  0x55b5, 0x55f5, 0x130d, 0x573f, 0x5743, 0x574c, 0x1365, 0x590b,
+  0x5a6b, 0x5a68, 0x5a70, 0x5a75, 0x5a77, 0x143f, 0x5ac3, 0x154b,
+  0x5fe9, 0x5fea, 0x5fcb, 0x5fc5, 0x5fc6, 0x1548, 0x5fed, 0x5fd3,
+  0x1552, 0x5fe5, 0x154a, 0x1551, 0x5fdb, 0x5feb, 0x5fe0, 0x5fc1,
+  0x1550, 0x154c, 0x61dd, 0x15ee, 0x1604, 0x1606, 0x162d, 0x162e,
+  0x162f, 0x167b, 0x1678, 0x1677, 0x63b2, 0x63b4, 0x63b1, 0x63b5,
+  0x63f2, 0x16a2, 0x16a1, 0x16e3, 0x6456, 0x171a, 0x1719, 0x1757,
+  0x6544, 0x179e, 0x6626, 0x661f, 0x6618, 0x6621, 0x6617, 0x17dd,
+  0x6709, 0x1805, 0x1828, 0x67c5, 0x67df, 0x1860, 0x67e3, 0x1866,
+  0x67e9, 0x67ee, 0x1867, 0x1868, 0x6966, 0x697a,
+  /* 0x5c */
+  0x18de, 0x696e, 0x6991, 0x6983, 0x6976, 0x697e, 0x696d, 0x18e1,
+  0x6a95, 0x6ae3, 0x1969, 0x1977, 0x6b03, 0x6b04, 0x8719, 0x6b17,
+  0x00a6, 0x1d36, 0x00a5, 0x1f36, 0x0214, 0x2742, 0x0336, 0x0338,
+  0x2744, 0x2746, 0x277e, 0x29ca, 0x29c8, 0x29cc, 0x2af0, 0x0670,
+  0x3185, 0x32e5, 0x32e7, 0x072b, 0x0811, 0x080a, 0x36f4, 0x080d,
+  0x36e9, 0x0816, 0x0810, 0x0809, 0x080e, 0x087a, 0x3c3d, 0x098c,
+  0x3c36, 0x0991, 0x3e16, 0x0a0a, 0x3e12, 0x3e0f, 0x3e17, 0x3e11,
+  0x3e0b, 0x0a08, 0x0a0b, 0x40cd, 0x40d0, 0x40cc, 0x40ce, 0x40d1,
+  0x0b07, 0x4189, 0x0cf2, 0x466f, 0x484b, 0x4844, 0x4855, 0x0eae,
+  0x0f24, 0x0f26, 0x0f27, 0x4a7f, 0x5771, 0x0f99, 0x4c2f, 0x4c7a,
+  0x4c7b, 0x4c7c, 0x115f, 0x116a, 0x1171, 0x51fc, 0x5210, 0x5202,
+  0x116c, 0x116f, 0x51ee, 0x5203, 0x1168, 0x520d,
+  /* 0x5d */
+  0x5213, 0x5208, 0x520f, 0x5418, 0x5412, 0x1201, 0x1268, 0x5567,
+  0x5565, 0x55bb, 0x5769, 0x5762, 0x1313, 0x576e, 0x1316, 0x5761,
+  0x1318, 0x5764, 0x574d, 0x5851, 0x1389, 0x13c8, 0x5a83, 0x5ac6,
+  0x1484, 0x601f, 0x1554, 0x6004, 0x6017, 0x6008, 0x6005, 0x1556,
+  0x5ff3, 0x601e, 0x6002, 0x601a, 0x601b, 0x6027, 0x601c, 0x155a,
+  0x62b5, 0x1605, 0x1607, 0x6333, 0x1631, 0x6334, 0x6331, 0x63b8,
+  0x63ba, 0x16a3, 0x63fc, 0x16eb, 0x171c, 0x64c3, 0x175a, 0x654d,
+  0x175b, 0x662f, 0x17a6, 0x17aa, 0x17a5, 0x66c9, 0x17e1, 0x66c8,
+  0x66c4, 0x672a, 0x6738, 0x6750, 0x182a, 0x680a, 0x67fb, 0x6804,
+  0x67fc, 0x67fe, 0x1872, 0x186f, 0x1873, 0x6802, 0x67f6, 0x681b,
+  0x67f9, 0x6815, 0x6810, 0x67ff, 0x6800, 0x680c, 0x186b, 0x18e6,
+  0x6995, 0x69a5, 0x18e9, 0x18ec, 0x18e8, 0x18f0,
+  /* 0x5e */
+  0x6a98, 0x6ac1, 0x198c, 0x6b5a, 0x1d64, 0x22bb, 0x0215, 0x24e6,
+  0x2749, 0x27f7, 0x0371, 0x0426, 0x29d0, 0x04c6, 0x2bc2, 0x05a8,
+  0x3111, 0x0673, 0x36ff, 0x36fe, 0x36fd, 0x0815, 0x3701, 0x0998,
+  0x0997, 0x3c4b, 0x3c4d, 0x3c47, 0x40d3, 0x4268, 0x4267, 0x0bd7,
+  0x0c80, 0x43d1, 0x4530, 0x4532, 0x452e, 0x0d88, 0x6b9d, 0x46c9,
+  0x46c8, 0x0e69, 0x4856, 0x4851, 0x0e6b, 0x0f29, 0x0f28, 0x4a85,
+  0x4a89, 0x4a8e, 0x4a84, 0x105f, 0x4e6a, 0x522b, 0x522f, 0x5228,
+  0x1174, 0x5216, 0x5215, 0x521d, 0x541a, 0x1202, 0x126a, 0x1294,
+  0x55bc, 0x5775, 0x577c, 0x138a, 0x5911, 0x5912, 0x5b5c, 0x5dbb,
+  0x1564, 0x5ff4, 0x155e, 0x1561, 0x602d, 0x1565, 0x1566, 0x62e4,
+  0x6337, 0x6336, 0x6367, 0x63be, 0x63bd, 0x63e2, 0x6468, 0x6466,
+  0x64c8, 0x64ca, 0x64c7, 0x64dc, 0x175f, 0x654f,
+  /* 0x5f */
+  0x65a9, 0x663c, 0x17af, 0x663b, 0x66ce, 0x180d, 0x6714, 0x6753,
+  0x187c, 0x682e, 0x187a, 0x681f, 0x1876, 0x1879, 0x187d, 0x1877,
+  0x69b0, 0x69bd, 0x18f6, 0x18f1, 0x69ae, 0x69c4, 0x6a7b, 0x0c0b,
+  0x1929, 0x6a9e, 0x196f, 0x6b05, 0x199a, 0x6b69, 0x6ba1, 0x22c7,
+  0x231d, 0x274a, 0x29d3, 0x0469, 0x2b72, 0x2e02, 0x05ab, 0x2e35,
+  0x3127, 0x311e, 0x311f, 0x072c, 0x072d, 0x3707, 0x3706, 0x0817,
+  0x099a, 0x3c54, 0x3e1c, 0x3e20, 0x46f8, 0x0e6e, 0x485d, 0x4858,
+  0x0f2c, 0x4a92, 0x4b4e, 0x0fca, 0x1178, 0x1206, 0x5427, 0x1207,
+  0x5781, 0x5783, 0x1320, 0x5844, 0x1353, 0x13ce, 0x147a, 0x1479,
+  0x6042, 0x604d, 0x6054, 0x604e, 0x156b, 0x6043, 0x1567, 0x156d,
+  0x633c, 0x6340, 0x63c0, 0x1685, 0x16b0, 0x16f3, 0x1763, 0x655a,
+  0x6651, 0x17b6, 0x66dd, 0x1882, 0x187f, 0x6838,
+  /* 0x60 */
+  0x1886, 0x6845, 0x683a, 0x1884, 0x6835, 0x18fc, 0x18fd, 0x18fa,
+  0x6af1, 0x1987, 0x6b93, 0x1e9a, 0x021a, 0x0219, 0x5241, 0x29d7,
+  0x0675, 0x3128, 0x081a, 0x081b, 0x0819, 0x3c53, 0x3c59, 0x099c,
+  0x3e21, 0x0a10, 0x426f, 0x4537, 0x45b5, 0x4862, 0x485e, 0x48f5,
+  0x117b, 0x117c, 0x523d, 0x1208, 0x542d, 0x5589, 0x578d, 0x5787,
+  0x5790, 0x591a, 0x5a99, 0x1441, 0x14e3, 0x1572, 0x605f, 0x1573,
+  0x1568, 0x6056, 0x6061, 0x605b, 0x605a, 0x605c, 0x6065, 0x1635,
+  0x6341, 0x1688, 0x169d, 0x646e, 0x646c, 0x646d, 0x0e75, 0x65aa,
+  0x665c, 0x6658, 0x66de, 0x188f, 0x684f, 0x6851, 0x188e, 0x6853,
+  0x1905, 0x1904, 0x18ff, 0x69fc, 0x6b39, 0x199e, 0x1d3e, 0x0154,
+  0x22d2, 0x0281, 0x274f, 0x3714, 0x0cfa, 0x4672, 0x4673, 0x0f32,
+  0x1270, 0x126e, 0x5791, 0x86d6, 0x147c, 0x5dbf,
+  /* 0x61 */
+  0x1575, 0x606c, 0x1574, 0x1577, 0x62e6, 0x6345, 0x1637, 0x63c8,
+  0x63e4, 0x655d, 0x17ba, 0x6721, 0x1811, 0x672c, 0x6757, 0x1892,
+  0x1899, 0x685d, 0x6861, 0x6865, 0x6a08, 0x190a, 0x192a, 0x192b,
+  0x1944, 0x1979, 0x6b45, 0x00aa, 0x0348, 0x2e05, 0x32ef, 0x371b,
+  0x371d, 0x3e25, 0x3e24, 0x486d, 0x0eb4, 0x5242, 0x5249, 0x120d,
+  0x5578, 0x558a, 0x5797, 0x1354, 0x589b, 0x591c, 0x1430, 0x5aa2,
+  0x1609, 0x1638, 0x1636, 0x168b, 0x16f7, 0x1766, 0x17bd, 0x181e,
+  0x686c, 0x1896, 0x686f, 0x190d, 0x6a0e, 0x1973, 0x6b08, 0x6b1d,
+  0x6ba3, 0x033b, 0x033c, 0x2b60, 0x371c, 0x09a0, 0x0cfb, 0x6cfd,
+  0x48f3, 0x1181, 0x579b, 0x5aa7, 0x5dc4, 0x1578, 0x607a, 0x168d,
+  0x1773, 0x6661, 0x6663, 0x66d7, 0x6876, 0x19a6, 0x6ba5, 0x05ad,
+  0x3c67, 0x0a11, 0x3eab, 0x524a, 0x557d, 0x579d,
+  /* 0x62 */
+  0x5853, 0x5b65, 0x607b, 0x1639, 0x64cd, 0x64dd, 0x17bf, 0x6730,
+  0x6a16, 0x190f, 0x19a7, 0x19b5, 0x0bdc, 0x1431, 0x62e7, 0x6a18,
+  0x6aa2, 0x19a8, 0x6b7c, 0x0d25, 0x4a9e, 0x6084, 0x17c1, 0x6a1c,
+  0x0d90, 0x4871, 0x63ca, 0x1296, 0x147f, 0x1910, 0x6aa3, 0x160a,
+  0x687b, 0x6b97, 0x1912, 0x163a, 0x6350, 0x163b,
+};
+static const unsigned short cns11643_3_2uni_page64[292] = {
+  /* 0x64 */
+  0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd,
+  0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd,
+  0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd,
+  0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd,
+  0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x6cfd, 0x1b66,
+  0x1b68, 0x1be7, 0x1c3f, 0x6cfd, 0x1ca6, 0x1d0f, 0x1e3e, 0x1f24,
+  0x1f65, 0x1f9b, 0x1d7f, 0x20cb, 0x2173, 0x2171, 0x216b, 0x21f4,
+  0x2222, 0x2220, 0x2292, 0x22ba, 0x2291, 0x22b0, 0x2359, 0x238a,
+  0x240f, 0x2412, 0x2413, 0x2447, 0x249b, 0x2500, 0x254d, 0x26d1,
+  0x26d3, 0x2767, 0x2857, 0x2877, 0x28d5, 0x2975, 0x298e, 0x29a5,
+  0x29b6, 0x29bf, 0x2a65, 0x2acd, 0x2aed, 0x2b94, 0x2b9a, 0x2bba,
+  0x2d25, 0x2d50, 0x2ea3, 0x2f60, 0x2f64, 0x2fb6,
+  /* 0x65 */
+  0x3003, 0x30b6, 0x311a, 0x4625, 0x2821, 0x32e2, 0x3302, 0x33a4,
+  0x33ac, 0x3410, 0x3406, 0x345e, 0x345a, 0x352c, 0x3529, 0x362d,
+  0x3677, 0x367a, 0x36ca, 0x36e6, 0x36f5, 0x370d, 0x370e, 0x37dc,
+  0x37dd, 0x37f6, 0x381e, 0x3863, 0x39a5, 0x3a0f, 0x3a8a, 0x3a84,
+  0x3a8b, 0x3a7c, 0x3b4c, 0x3b48, 0x3b49, 0x3b9d, 0x3b99, 0x3bf8,
+  0x3c2e, 0x3c2d, 0x3c5c, 0x45cc, 0x3cbf, 0x3cea, 0x3ce5, 0x3d11,
+  0x3d12, 0x3d3f, 0x3d39, 0x3d3b, 0x3d3d, 0x3d77, 0x3d75, 0x3d76,
+  0x3d71, 0x3d96, 0x3d93, 0x3db4, 0x3ddd, 0x3dde, 0x3e0e, 0x2511,
+  0x3e18, 0x3f47, 0x3f48, 0x3fef, 0x4012, 0x403b, 0x40a4, 0x408d,
+  0x40b4, 0x4273, 0x4277, 0x42bc, 0x4419, 0x441b, 0x443d, 0x4453,
+  0x4454, 0x4458, 0x44b7, 0x44d8, 0x44ee, 0x4522, 0x454d, 0x4586,
+  0x4599, 0x45a3, 0x45bc, 0x46a7, 0x4737, 0x4759,
+  /* 0x66 */
+  0x47d0, 0x482f, 0x4832, 0x4842, 0x484e, 0x4868, 0x48a9, 0x48ed,
+  0x49d0, 0x4a07, 0x49d3, 0x4a64, 0x4b40, 0x6cfd, 0x4c41, 0x4c63,
+  0x4cbb, 0x3311, 0x3325, 0x4e48, 0x4f10, 0x4f62, 0x4f12, 0x5021,
+  0x501e, 0x50e2, 0x50de, 0x50e1, 0x5173, 0x51d4, 0x51f5, 0x5237,
+  0x5245, 0x5272, 0x534a, 0x53a9, 0x53a5, 0x53f5, 0x5434, 0x5450,
+  0x5487, 0x5554, 0x5584, 0x5703, 0x5852, 0x58d8, 0x590c, 0x5918,
+  0x59b0, 0x5abc, 0x5ad5, 0x5baa, 0x5c9c, 0x6cfd, 0x5d5c, 0x5e2b,
+  0x5e21, 0x5e73, 0x5ef4, 0x5ef5, 0x5f3f, 0x5f42, 0x5f86, 0x5fbe,
+  0x5fbc, 0x5fbd, 0x5ff1, 0x5ff2, 0x5fef, 0x6022, 0x6023, 0x6024,
+  0x6067, 0x6066, 0x6197, 0x61ce, 0x61e7, 0x633b, 0x634d, 0x64e4,
+  0x6542, 0x671d, 0x6798, 0x6cfd, 0x6949, 0x3049, 0x2a71, 0x2a85,
+  0x2dd3, 0x650e, 0x4c02, 0x441e, 0x6cfd, 0x6cfd,
+  /* 0x67 */
+  0x2128, 0x2172, 0x21ba, 0x21f0, 0x21ee, 0x22b8, 0x22b9, 0x22c4,
+  0x4c53, 0x5eb0,
+};
+
+static const ucs4_t cns11643_3_2uni_upages[136] = {
+  0x03400, 0x03500, 0x03600, 0x03700, 0x03800, 0x03900, 0x03a00, 0x03b00,
+  0x03c00, 0x03d00, 0x03e00, 0x03f00, 0x04000, 0x04100, 0x04200, 0x04300,
+  0x04400, 0x04500, 0x04600, 0x04700, 0x04800, 0x04900, 0x04a00, 0x04b00,
+  0x04c00, 0x04d00, 0x04e00, 0x04f00, 0x05000, 0x05100, 0x05200, 0x05300,
+  0x05400, 0x05500, 0x05600, 0x05700, 0x05800, 0x05900, 0x05a00, 0x05b00,
+  0x05c00, 0x05d00, 0x05e00, 0x05f00, 0x06000, 0x06100, 0x06200, 0x06300,
+  0x06400, 0x06500, 0x06600, 0x06700, 0x06800, 0x06900, 0x06a00, 0x06b00,
+  0x06c00, 0x06d00, 0x06e00, 0x06f00, 0x07000, 0x07100, 0x07200, 0x07300,
+  0x07400, 0x07500, 0x07600, 0x07700, 0x07800, 0x07900, 0x07a00, 0x07b00,
+  0x07c00, 0x07d00, 0x07e00, 0x07f00, 0x08000, 0x08100, 0x08200, 0x08300,
+  0x08400, 0x08500, 0x08600, 0x08700, 0x08800, 0x08900, 0x08a00, 0x08b00,
+  0x08c00, 0x08d00, 0x08e00, 0x08f00, 0x09000, 0x09100, 0x09200, 0x09300,
+  0x09400, 0x09500, 0x09600, 0x09700, 0x09800, 0x09900, 0x09a00, 0x09b00,
+  0x09c00, 0x09d00, 0x09e00, 0x09f00, 0x0ff00, 0x20000, 0x20100, 0x20200,
+  0x20500, 0x20600, 0x20b00, 0x20d00, 0x21300, 0x21600, 0x21700, 0x21d00,
+  0x22300, 0x22500, 0x23000, 0x23500, 0x23c00, 0x24000, 0x24a00, 0x25100,
+  0x25900, 0x25c00, 0x26500, 0x28c00, 0x29900, 0x2f800, 0x2f900, 0x2fa00,
+};
+
+static int
+cns11643_3_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 >= 0x21 && c1 <= 0x62) || (c1 >= 0x64 && c1 <= 0x67)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if (c2 >= 0x21 && c2 < 0x7f) {
+        unsigned int i = 94 * (c1 - 0x21) + (c2 - 0x21);
+        ucs4_t wc = 0xfffd;
+        unsigned short swc;
+        if (i < 6298) {
+          if (i < 6148)
+            swc = cns11643_3_2uni_page21[i],
+            wc = cns11643_3_2uni_upages[swc>>8] | (swc & 0xff);
+        } else {
+          if (i < 6590)
+            swc = cns11643_3_2uni_page64[i-6298],
+            wc = cns11643_3_2uni_upages[swc>>8] | (swc & 0xff);
+        }
+        if (wc != 0xfffd) {
+          *pwc = wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
diff --git a/graf2d/win32gdk/gdk/src/iconv/cns11643_4.h b/graf2d/win32gdk/gdk/src/iconv/cns11643_4.h
new file mode 100644
index 00000000000..e7259920b54
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cns11643_4.h
@@ -0,0 +1,61 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CNS 11643-1992 plane 4
+ */
+
+/*
+ * The table has been split into two parts. Each part's entries fit it 16 bits.
+ * But the combined table would need 17 bits per entry.
+ */
+#include "cns11643_4a.h"
+#include "cns11643_4b.h"
+
+static int
+cns11643_4_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 >= 0x21 && c1 <= 0x6e)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if (c2 >= 0x21 && c2 < 0x7f) {
+        unsigned int i = 94 * (c1 - 0x21) + (c2 - 0x21);
+        ucs4_t wc = 0xfffd;
+        unsigned short swc;
+        {
+          if (i < 2914)
+            swc = cns11643_4a_2uni_page21[i],
+            wc = cns11643_4a_2uni_upages[swc>>8] | (swc & 0xff);
+          else if (i < 7298)
+            swc = cns11643_4b_2uni_page40[i-2914],
+            wc = cns11643_4b_2uni_upages[swc>>8] | (swc & 0xff);
+        }
+        if (wc != 0xfffd) {
+          *pwc = wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cns11643_4a.h b/graf2d/win32gdk/gdk/src/iconv/cns11643_4a.h
new file mode 100644
index 00000000000..ee81576a7af
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cns11643_4a.h
@@ -0,0 +1,460 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CNS 11643-1992 plane 4 part a
+ */
+
+static const unsigned short cns11643_4a_2uni_page21[2914] = {
+  /* 0x21 */
+  0x5a86, 0x1840, 0x1841, 0x185a, 0x75e8, 0x1802, 0x1829, 0x5b0e,
+  0x6027, 0x1c02, 0x013e, 0x27dc, 0x5f3c, 0x6075, 0xd128, 0x1d42,
+  0x1d6a, 0x2552, 0x6f3c, 0xd175, 0xd178, 0x29c4, 0x2c4c, 0x39ad,
+  0x1812, 0x182f, 0x1896, 0x18d0, 0x1b42, 0x1b83, 0xd119, 0x60a5,
+  0x60aa, 0x630f, 0x640e, 0x1d83, 0x1db8, 0x659c, 0x659b, 0x6a3c,
+  0x2328, 0x71c2, 0x2623, 0x2801, 0x2900, 0x87b4, 0x08b8, 0x376c,
+  0x392b, 0x1b88, 0x4879, 0x51b6, 0x1817, 0x5a65, 0x000c, 0x5bb2,
+  0x0030, 0x18e2, 0x18db, 0x5e77, 0x5f42, 0x1bad, 0x6033, 0x1bf7,
+  0x00da, 0x60af, 0x6236, 0x0113, 0x1d1b, 0x1d88, 0x1d87, 0x6522,
+  0x1dcf, 0x1dfd, 0x0163, 0x1de7, 0x20dc, 0x69a3, 0x20d9, 0x2125,
+  0x2127, 0x2333, 0x2613, 0x7225, 0x7224, 0x2675, 0x7652, 0x7789,
+  0x7abf, 0x05c4, 0x05c3, 0x2ff1, 0x87b5, 0xa24c,
+  /* 0x22 */
+  0x4552, 0xc714, 0xc712, 0x0001, 0x5aa3, 0x5aa2, 0x1851, 0x186a,
+  0x5bb6, 0x190c, 0x5bb5, 0x5bb4, 0x18fe, 0x191b, 0x5bc2, 0x5bb8,
+  0x003a, 0x5e79, 0x00ab, 0x1b73, 0x5f08, 0x1b8e, 0x5f7a, 0x5fb6,
+  0x60bd, 0x60b7, 0x60bc, 0x00dd, 0x60c4, 0x60c9, 0x1ca5, 0x0115,
+  0x1ca7, 0x1ca4, 0x6330, 0x6383, 0x6385, 0x6412, 0x6434, 0x1dbd,
+  0x64e4, 0x64de, 0x652a, 0x1e02, 0x65af, 0x65b4, 0x65b3, 0x65b1,
+  0x212b, 0x231b, 0x2335, 0x6cde, 0x02a7, 0x02a5, 0x6db8, 0x6db0,
+  0x02a6, 0x6fc2, 0x59fd, 0x2617, 0x037c, 0x722a, 0x2670, 0x267d,
+  0x03a9, 0x75e9, 0x27e9, 0x7657, 0x0434, 0x0435, 0x77b6, 0x77d7,
+  0x77de, 0x04a8, 0x2919, 0x291c, 0x2975, 0x7ac2, 0x7bab, 0x04ff,
+  0x29c8, 0x7e8f, 0x05c7, 0x05c6, 0x05c8, 0x7f6d, 0x82b5, 0x06d0,
+  0x06d1, 0x87c0, 0x87bf, 0x0859, 0x8bb9, 0x8d1c,
+  /* 0x23 */
+  0x3412, 0x08bd, 0x8e80, 0x9184, 0x9185, 0x0a28, 0x39b3, 0x9524,
+  0x0aa9, 0x3a90, 0x3c36, 0xaa4c, 0x0fcc, 0xb1f6, 0x4881, 0x51b8,
+  0xc370, 0x14b4, 0xc375, 0xc717, 0x1823, 0x0016, 0x002c, 0x5bf1,
+  0x192e, 0x5bda, 0x1b4f, 0x5fb9, 0x1bba, 0x00df, 0x00e0, 0x1c22,
+  0x60ce, 0x60d2, 0x60d0, 0x0117, 0x6243, 0x1caf, 0x1cb0, 0x1cb1,
+  0x624d, 0x6334, 0x012f, 0x63d9, 0x1d64, 0x6418, 0x1dd3, 0x6538,
+  0x016a, 0x65d7, 0x0170, 0x016d, 0x65dc, 0x65cb, 0x65d6, 0x65d8,
+  0x016e, 0x65d1, 0xd13e, 0xd13c, 0x65d2, 0x022b, 0x0228, 0x6a59,
+  0x59fd, 0x233f, 0x6ce5, 0x6ce6, 0x0292, 0x6ce8, 0x238b, 0x6dbd,
+  0x2391, 0x2395, 0x6dbe, 0x6f49, 0x033f, 0x6fcd, 0x258a, 0x034f,
+  0x0374, 0x715e, 0x71d0, 0x037d, 0x7306, 0x03b7, 0x03a3, 0x03b0,
+  0x03b1, 0x2687, 0x03ab, 0x737c, 0x7371, 0x75ef,
+  /* 0x24 */
+  0x043a, 0x0437, 0x280d, 0x0438, 0x0440, 0x778d, 0x77b7, 0x288e,
+  0x049f, 0x7933, 0x797f, 0x297a, 0x7bf2, 0x0504, 0x0509, 0x0506,
+  0x04fd, 0x050a, 0x0507, 0x7f2a, 0x7f8b, 0x05ca, 0x7f83, 0x7f8a,
+  0x2c90, 0x05c9, 0x7f8e, 0x2c9a, 0x82b6, 0x2e3c, 0x2e3a, 0x067f,
+  0x2e98, 0x84d8, 0x06d2, 0x8556, 0x87d2, 0x3065, 0xd1db, 0x0743,
+  0x87c2, 0x8a87, 0x8a81, 0x8bc2, 0x8bbc, 0x8d23, 0x08c1, 0x8e93,
+  0x08c5, 0x09a3, 0x918d, 0x918e, 0x0a2a, 0x0a5f, 0x953b, 0x954d,
+  0x0a5d, 0x9534, 0x9531, 0x96f2, 0x96f0, 0x0b17, 0x9a15, 0x9b28,
+  0x0b71, 0x0b72, 0x9c25, 0x9de7, 0x0c0f, 0x9de9, 0xa017, 0x40c2,
+  0x0d91, 0xa96c, 0xa980, 0xaa4b, 0x0fb2, 0x0fcf, 0x0fce, 0x469e,
+  0xafde, 0xaffb, 0x47eb, 0xb051, 0x4889, 0x1096, 0xb201, 0xb202,
+  0x4896, 0xb205, 0x4887, 0xb203, 0x1097, 0xc151,
+  /* 0x25 */
+  0x51c0, 0x148b, 0x51c3, 0xc153, 0xc37a, 0xc378, 0xc376, 0xc379,
+  0xc38f, 0xc37c, 0x5578, 0xc71b, 0xc71c, 0x5625, 0x8f92, 0x1875,
+  0x1874, 0x5b2e, 0x5b2c, 0x002d, 0x5c0c, 0x1999, 0x5c0b, 0x0050,
+  0x004b, 0x5c05, 0x004f, 0x004c, 0xd105, 0x1971, 0x1b53, 0x1bbf,
+  0x5fc2, 0x5fc3, 0x1bc0, 0x6048, 0x1bee, 0x6046, 0x00e4, 0x00e3,
+  0x60ea, 0x00e1, 0x60eb, 0x00e2, 0x60ee, 0x1c3d, 0x0119, 0x1cbd,
+  0x1d0c, 0x62d8, 0x9a1e, 0x63df, 0x63de, 0x0141, 0x4537, 0x644f,
+  0x1dc0, 0x015e, 0x660d, 0x6608, 0x0179, 0x6609, 0x1e6e, 0x1e83,
+  0x6612, 0x6665, 0x1e5e, 0x1e5d, 0x217e, 0x2179, 0x6a89, 0x217a,
+  0x216c, 0x6a84, 0x6a9e, 0x6a8b, 0x0232, 0x2187, 0x6c62, 0x231d,
+  0x0294, 0x2346, 0x0297, 0x6cf9, 0x2343, 0x6cf7, 0x0296, 0x0298,
+  0x6d06, 0x6ddd, 0x02b2, 0x6dd9, 0x6ddf, 0x6de2,
+  /* 0x26 */
+  0x02b9, 0x2561, 0x2566, 0x5af1, 0x2590, 0x0375, 0x037f, 0x037e,
+  0x2629, 0x038f, 0x723f, 0x723e, 0x730b, 0x03bd, 0x26b2, 0x7383,
+  0x03bb, 0x03bc, 0x7386, 0x26c0, 0x767c, 0x043d, 0x043e, 0x0474,
+  0x77f7, 0x047a, 0x0476, 0x0478, 0x0475, 0x77fb, 0x793b, 0x04af,
+  0x04b0, 0x04c7, 0x04cc, 0x7bf9, 0x7bca, 0x0516, 0x7bff, 0x0512,
+  0x051d, 0x7c09, 0x7c03, 0x0515, 0x050f, 0x0514, 0x2a1f, 0x29e2,
+  0x7c10, 0x7e9a, 0x7e9f, 0x05b0, 0x05bf, 0x05c0, 0x7f87, 0x05d2,
+  0x05d9, 0x82b7, 0x067a, 0x8308, 0x82f9, 0x0681, 0x0682, 0x82f4,
+  0x2f16, 0x2ef9, 0x06da, 0xad57, 0x3088, 0x87d6, 0x309b, 0xd1de,
+  0x306e, 0x309e, 0x87d4, 0x0822, 0x081f, 0x8a90, 0x8a8d, 0x0821,
+  0x3324, 0x8b60, 0x8bce, 0x8bcf, 0x085c, 0x337d, 0x8bd1, 0x087d,
+  0x088d, 0x088f, 0x34e6, 0x8eca, 0x34cb, 0x08d0,
+  /* 0x27 */
+  0x8eb7, 0x08d8, 0x8eb2, 0x8ebb, 0x8eb9, 0x34b5, 0x09a7, 0x919e,
+  0x3797, 0x91b2, 0x379b, 0x0a12, 0x936f, 0x93ac, 0x0a2f, 0x9423,
+  0x396b, 0x0a2e, 0x0a2c, 0x0a5c, 0x956c, 0x39d5, 0x9532, 0x955e,
+  0x0a62, 0x0a67, 0x0ab4, 0x96fb, 0x9929, 0x99bd, 0x9a1f, 0x3c43,
+  0x7941, 0x9a1d, 0x3c9c, 0x9b31, 0x9b2f, 0x0bea, 0x9d43, 0x0bfb,
+  0x9d41, 0x0c14, 0x9df5, 0x0c13, 0x0c12, 0x0c10, 0x0c11, 0x9df2,
+  0x0c86, 0x3ee4, 0x0c98, 0xa01e, 0xa254, 0x0d2a, 0xa256, 0xa329,
+  0xa327, 0xa328, 0x41ce, 0x0eb5, 0xa979, 0xa97e, 0xabb6, 0xabb7,
+  0x4613, 0x0fd6, 0x0fd8, 0x46b7, 0x0fd9, 0x0fd4, 0x0fd7, 0xd281,
+  0x46b9, 0x59fd, 0xad4d, 0x47e4, 0x47fd, 0x480f, 0x1060, 0xb109,
+  0xb108, 0x109e, 0x10a1, 0xb21e, 0xb21a, 0xb223, 0xb215, 0xb219,
+  0xb216, 0x48bf, 0x48ca, 0xb214, 0xb218, 0x48c1,
+  /* 0x28 */
+  0x10a0, 0xb51f, 0xb6dd, 0xb6df, 0xc169, 0x51d0, 0x59fd, 0xc16c,
+  0x14b9, 0xc393, 0x52ae, 0xc395, 0xc394, 0xc391, 0xc397, 0xc730,
+  0x15c1, 0x15c2, 0x5638, 0xd318, 0x001c, 0x5c31, 0x005e, 0x19bc,
+  0x0059, 0x005c, 0x5c36, 0x005f, 0x19e9, 0x19bd, 0x19e2, 0x1b58,
+  0x5fc9, 0x5fca, 0x00ce, 0x6118, 0x6112, 0x6119, 0x6110, 0x6116,
+  0x1cc6, 0x625f, 0x1cc8, 0x62df, 0x6317, 0x1d28, 0x633c, 0x1d29,
+  0x63ea, 0x63e9, 0x641c, 0x6458, 0x6464, 0x64f3, 0x015f, 0x6697,
+  0x0185, 0x665a, 0x6659, 0x0186, 0x668e, 0x21b4, 0x6abc, 0x21a9,
+  0x0287, 0x6d0d, 0x6cfc, 0x6d0c, 0x6e07, 0x6e0a, 0x02ca, 0x6e02,
+  0x02c3, 0x6e26, 0x6e08, 0x6e1d, 0x02c2, 0x2568, 0x6f4e, 0x0341,
+  0x6fed, 0x6fee, 0x6fef, 0x0380, 0x0381, 0x7250, 0x724c, 0x0393,
+  0x0392, 0x724f, 0x03c5, 0x73d4, 0x59fd, 0x73b0,
+  /* 0x29 */
+  0x0446, 0x0441, 0x0445, 0x0442, 0x043f, 0x76a5, 0x7809, 0x0482,
+  0x0481, 0x047f, 0x04a5, 0x292b, 0x04b3, 0x04b5, 0x79f3, 0x79d7,
+  0x298d, 0x04da, 0x7adc, 0x04db, 0x050d, 0x2a18, 0x050e, 0x7c0b,
+  0x051e, 0x0525, 0x0526, 0x051c, 0x0521, 0x2a57, 0x2a48, 0x0527,
+  0x051a, 0x7c3a, 0x7c0d, 0x7c11, 0x2a38, 0x7c20, 0x7c01, 0x0524,
+  0x7c37, 0xd1a3, 0x2a71, 0x7eaa, 0x05c1, 0x05e1, 0x7fe7, 0x7fe8,
+  0x2d12, 0x05eb, 0x7ff5, 0x05e2, 0x05d7, 0x05e9, 0x8035, 0x7fe6,
+  0x2d0a, 0x7ff8, 0x2d23, 0x7ff1, 0x0684, 0x8314, 0x8315, 0x8309,
+  0x06b5, 0x06bc, 0x06dc, 0x06de, 0x06df, 0x857b, 0x2f2a, 0x857e,
+  0x8766, 0x8767, 0x880a, 0x0754, 0x30e0, 0x30be, 0x0753, 0x0824,
+  0x0825, 0x3329, 0x0828, 0x0827, 0x8a9c, 0x8b62, 0x8be1, 0x8bde,
+  0x8bdf, 0x8be9, 0x088b, 0x8ee4, 0x8ef7, 0x08dc,
+  /* 0x2a */
+  0x3543, 0x8eea, 0x8ef6, 0x8f12, 0xd201, 0x37a6, 0x09b2, 0x37c0,
+  0x91d9, 0x392f, 0x935f, 0x0a1b, 0x9373, 0x0a32, 0x3971, 0x943f,
+  0x9578, 0x0a6b, 0x957d, 0x0a6c, 0x0a6d, 0x9712, 0x0ab9, 0x0aba,
+  0x0b09, 0x0b0a, 0x992f, 0x3bea, 0x0b1b, 0x9930, 0x99db, 0x3c20,
+  0x0b58, 0x9a29, 0x0b5a, 0xd236, 0x9b40, 0x0b77, 0x9b3d, 0x9b3e,
+  0x0b79, 0x3ca9, 0x9b38, 0x3d85, 0x9c48, 0x0beb, 0x9cd0, 0x0bfd,
+  0x0bfc, 0x3e06, 0x0c15, 0x0c18, 0x3df6, 0x0c16, 0x0c17, 0x0c19,
+  0x3e00, 0x0c1b, 0x9e0e, 0x9e09, 0x3e02, 0x9e07, 0x0c87, 0x9f5f,
+  0x9f60, 0x0c9c, 0xa02a, 0x0c9a, 0xa029, 0x0cff, 0x0cfe, 0xa14d,
+  0x0d31, 0x0d2e, 0x0d30, 0x0d32, 0xa26c, 0x59fd, 0x0d2f, 0xa267,
+  0x0d95, 0x0d96, 0xa339, 0xa334, 0xa459, 0x0dc5, 0x0e7a, 0xa923,
+  0x0f42, 0xa982, 0x0f54, 0xa983, 0xa9a8, 0xaa55,
+  /* 0x2b */
+  0xaaf9, 0xaaf8, 0xaafc, 0xaafa, 0x4609, 0xd27a, 0x0f9f, 0x0fa0,
+  0x0fa2, 0x0fe0, 0xad74, 0x0fe1, 0xad6b, 0xad71, 0x0fdf, 0xad76,
+  0xb10e, 0x1062, 0x1061, 0xb110, 0xb10f, 0x10a7, 0xb238, 0xb239,
+  0xb23a, 0x48da, 0xb237, 0xb23e, 0x490a, 0x1189, 0xb49c, 0xb52a,
+  0xb53a, 0xb52b, 0xb528, 0xb6aa, 0xb70f, 0x121d, 0xb710, 0xb8e6,
+  0x132a, 0xbd25, 0xbe8e, 0x13d3, 0x1442, 0x1443, 0xc18b, 0x1491,
+  0xc18c, 0xc19a, 0x1490, 0x14bf, 0xc3b3, 0x14bc, 0xc3b2, 0x14c0,
+  0x15c7, 0x15c5, 0x5655, 0xc744, 0x5652, 0x1835, 0x5b58, 0x5ca7,
+  0x1a34, 0x1a01, 0x5c63, 0x1a0a, 0x0066, 0x5c6a, 0x5c65, 0x5c6b,
+  0x00ad, 0x5eed, 0x5fd9, 0x613b, 0x6132, 0x1c58, 0x6135, 0x6131,
+  0x613e, 0x6143, 0x6136, 0x626d, 0x011d, 0x62e4, 0x0131, 0x1d2b,
+  0x63f4, 0x014c, 0x6469, 0x646b, 0x0195, 0x0191,
+  /* 0x2c */
+  0x0194, 0x66bf, 0x66c3, 0x66ae, 0x018f, 0x1eec, 0x66b1, 0x1f15,
+  0x1efe, 0x66bb, 0x66af, 0x66b0, 0x1ee3, 0x1f16, 0x0240, 0x6aef,
+  0x0241, 0x6aed, 0x21d3, 0x6af0, 0x6c93, 0x6d34, 0x6d2b, 0x2359,
+  0x2427, 0x02d8, 0x02d2, 0x02da, 0x2428, 0x2410, 0x02d7, 0x240e,
+  0x0342, 0x0357, 0x7004, 0x7003, 0x7002, 0x25af, 0x7005, 0x25ba,
+  0x25b1, 0x7000, 0x7174, 0x0378, 0x0382, 0x0397, 0x7265, 0x7263,
+  0x03c9, 0x73d7, 0x03c8, 0x03d6, 0x03cc, 0x73e8, 0x03d0, 0x73db,
+  0x73d8, 0x03ce, 0x03c7, 0x26fc, 0x7409, 0x03cf, 0x03cb, 0x26f2,
+  0x26fe, 0x73e5, 0x73e7, 0x27f8, 0x763f, 0x0447, 0x76c0, 0x0448,
+  0x76b9, 0x76ba, 0x0483, 0x0485, 0x0484, 0x7820, 0x794f, 0x292c,
+  0x04b8, 0x04bc, 0x7a91, 0x7a90, 0x7aee, 0x7af3, 0x7aec, 0x7af1,
+  0x7aeb, 0x7af2, 0x7af4, 0x7aed, 0x7c41, 0x7c48,
+  /* 0x2d */
+  0x7c45, 0x0531, 0x0534, 0x0536, 0x2a82, 0x7c7f, 0x7c8b, 0x0523,
+  0x7c3b, 0x7c4e, 0x053a, 0x2a91, 0x2a8f, 0x7c7c, 0x05b4, 0x05b5,
+  0x05ed, 0x05ec, 0x05d8, 0x7ff0, 0x8036, 0x803f, 0x8043, 0x8031,
+  0x8034, 0x8046, 0x05f6, 0x05e7, 0x802f, 0x82c3, 0x067c, 0x067b,
+  0x8336, 0x0688, 0x2e47, 0x2e4c, 0x8321, 0xd1c8, 0x2e8a, 0x8473,
+  0x06be, 0x84e6, 0x06e7, 0x06e5, 0x06ee, 0x30e1, 0x314a, 0x883f,
+  0x0759, 0x075e, 0x886b, 0x075a, 0x313f, 0x0761, 0x0758, 0x075b,
+  0x30bd, 0x8871, 0x075f, 0xd1e2, 0x082a, 0x082d, 0x8ab0, 0x0823,
+  0x082b, 0x082c, 0x8bf3, 0x087e, 0xd1f5, 0x0893, 0x0899, 0x8d61,
+  0x8d5f, 0x08b3, 0x08e7, 0x08ea, 0x8f28, 0x8f1e, 0x8f29, 0xd202,
+  0x8eeb, 0x8f66, 0x09b4, 0x91f6, 0x37c9, 0x0a17, 0x9360, 0x9377,
+  0x93bb, 0x0a21, 0x93bc, 0x0a38, 0x0a37, 0x0a74,
+  /* 0x2e */
+  0x0a73, 0x0a75, 0x95a2, 0x95b2, 0x959e, 0x0a76, 0x0a78, 0x973a,
+  0x9738, 0x3aba, 0x0b0c, 0x0b20, 0x0b1e, 0x9a4d, 0x0b5b, 0x9a5e,
+  0x0b5c, 0x9b17, 0x0b83, 0x3cc6, 0x0b80, 0x0b81, 0x0b7e, 0x0b88,
+  0x0b85, 0x0b89, 0x0b7f, 0x0b8e, 0x9b64, 0x9b67, 0x0b84, 0x3cb7,
+  0x3d8c, 0x9c59, 0x3d8d, 0x9cda, 0x0bee, 0x0bed, 0x0bfe, 0x9d51,
+  0x0bff, 0x9d55, 0x9e3b, 0x9e34, 0x0c23, 0x9e37, 0x3e17, 0x9e31,
+  0x3e1c, 0x0c1f, 0x9e3f, 0x9e59, 0x3e14, 0x9f61, 0x0c8f, 0x0c90,
+  0xa058, 0xa062, 0xa050, 0x0ca0, 0xa051, 0x0ca6, 0x0c9f, 0xa046,
+  0x0ca7, 0x0ca1, 0xa12d, 0x0d02, 0x0d36, 0xa348, 0xa351, 0xa34a,
+  0xa34f, 0xa350, 0xa349, 0xa463, 0x0dc8, 0xa466, 0xa460, 0x0dd8,
+  0x420c, 0x0ddd, 0x0ddc, 0xa4f1, 0x0dd7, 0xa507, 0x0dda, 0x0eba,
+  0xa79b, 0xa7a3, 0xa79d, 0x0ebe, 0x0ec2, 0x0ebb,
+  /* 0x2f */
+  0x0ec0, 0xa7a9, 0xa7a7, 0xa7a4, 0x4423, 0xa7ba, 0x77c1, 0xa926,
+  0x0f43, 0x0f55, 0xa994, 0xa993, 0x0f57, 0x0f68, 0x4598, 0x4590,
+  0xab07, 0xab0d, 0xab02, 0xab0c, 0xab09, 0xab08, 0xab13, 0x0fa1,
+  0xabd2, 0x463a, 0xac3e, 0xac3c, 0xad67, 0xad9e, 0x0fea, 0xadad,
+  0x0fe7, 0xadd9, 0xad42, 0xada3, 0xada0, 0x0fe8, 0x0fe9, 0xad7c,
+  0xb004, 0x1054, 0xb058, 0xb060, 0xb0c9, 0xb0c8, 0x4826, 0x1065,
+  0xb11c, 0xb11a, 0x108a, 0xb274, 0x10b0, 0xb26e, 0xb26f, 0xb279,
+  0x10bc, 0x492e, 0xb277, 0x4955, 0x491a, 0x10b8, 0x493d, 0xb27c,
+  0x10b2, 0xb270, 0x4930, 0x10bd, 0xb27a, 0xb282, 0x118a, 0x4b51,
+  0x11a1, 0xb544, 0x11a2, 0xb543, 0x4b88, 0xb545, 0x1215, 0xb725,
+  0xb71f, 0x1220, 0x1273, 0xb8e8, 0x4d8e, 0x4d8d, 0xb909, 0xb9b7,
+  0xb9b9, 0xba64, 0xba63, 0x4e09, 0x4e14, 0x12b1,
+  /* 0x30 */
+  0xba62, 0xba65, 0x132b, 0xbbac, 0x1345, 0xbd2a, 0x1397, 0x1398,
+  0xbe96, 0x13d5, 0xbfc2, 0xd2de, 0x1493, 0x1496, 0x5207, 0x1494,
+  0xc1aa, 0xc1b0, 0x14c7, 0x14c5, 0xc3d4, 0xc3cd, 0xc3d6, 0x14c4,
+  0xc4f0, 0x5579, 0x5584, 0x15ce, 0x15ca, 0x15cc, 0x5657, 0x15c9,
+  0x56ba, 0x59fd, 0xd04b, 0x5b62, 0x006e, 0x5cb7, 0x1a67, 0x5cac,
+  0x5cab, 0x0071, 0x5cc1, 0x00bb, 0x00d3, 0x5fe8, 0x6169, 0x615d,
+  0x615f, 0x00f3, 0x00ed, 0x00f5, 0x6164, 0x6162, 0x00f1, 0x00f2,
+  0x00f6, 0x0120, 0x62f9, 0x0128, 0x62ee, 0x1d18, 0x1d2c, 0x1d59,
+  0x63ab, 0x63ac, 0x63aa, 0x1d68, 0x1d7e, 0x6486, 0x647a, 0x1da1,
+  0x6728, 0x01a1, 0x1f5b, 0x01aa, 0x01a9, 0x6731, 0x01b5, 0x01a5,
+  0x01a8, 0x1f42, 0x01a7, 0x1f47, 0x672d, 0xd143, 0x1f3d, 0x672b,
+  0x6732, 0x1f60, 0x21eb, 0x6b29, 0x6b26, 0x6b53,
+  /* 0x31 */
+  0x024d, 0x6b33, 0x6b34, 0x6c9d, 0x029c, 0x235f, 0x6d41, 0x02ea,
+  0x02e5, 0x6e91, 0x6e69, 0x256f, 0x7022, 0x035e, 0x7034, 0xd16d,
+  0x712e, 0x0386, 0x0384, 0x71f4, 0x265a, 0x7428, 0x03d9, 0x741c,
+  0x03de, 0x7411, 0x7424, 0x7415, 0x03db, 0x7416, 0x7454, 0x7423,
+  0x75ff, 0x0431, 0x76cf, 0x76d0, 0x044b, 0x76ce, 0x0449, 0x044a,
+  0x044c, 0x77c7, 0x785c, 0x048a, 0x7836, 0x0489, 0x048b, 0x7843,
+  0x04bb, 0x29a2, 0x299d, 0x04e4, 0x7b2a, 0x7b01, 0x29a3, 0x7b0b,
+  0x7b0f, 0x053b, 0x052e, 0x053e, 0x0546, 0x0553, 0x7cdf, 0x0544,
+  0x7cd2, 0x053f, 0x0542, 0x054f, 0x7ccd, 0x0552, 0x054a, 0x2ac2,
+  0x7cdb, 0x055a, 0x2aa5, 0x0549, 0x7ccf, 0x2c1c, 0x7ec0, 0x2c1d,
+  0x0603, 0x8081, 0x8082, 0x808a, 0x80a8, 0x808c, 0x2d95, 0x2d9a,
+  0x0601, 0x0606, 0x05fb, 0x05f9, 0x808e, 0x0605,
+  /* 0x32 */
+  0x05fa, 0x808b, 0x2da6, 0x8096, 0x05fe, 0x80cc, 0x067d, 0x068c,
+  0x834f, 0x834a, 0x2e50, 0x068e, 0x834b, 0x833d, 0x2e52, 0x8344,
+  0x8349, 0x849e, 0x84f3, 0x2ec8, 0x84f5, 0x06f0, 0x06f2, 0x85b3,
+  0x2f58, 0x06f1, 0x06e6, 0x85e5, 0x85b6, 0xd1d8, 0x3188, 0x8886,
+  0x076f, 0x076d, 0x0769, 0x88b6, 0x8885, 0x076e, 0x88ab, 0x082f,
+  0x0830, 0x0863, 0x8c0d, 0x8c8b, 0x8c8c, 0x33b8, 0x0880, 0x33b9,
+  0x089a, 0x0894, 0x0896, 0x0895, 0x0897, 0x8d72, 0x08f4, 0x08fe,
+  0x8f8f, 0x0901, 0x8f79, 0x0902, 0x8f77, 0x08f9, 0x8f90, 0x8f88,
+  0x8f80, 0x8f9e, 0x08f6, 0x08f7, 0x8f82, 0x8f34, 0x8f89, 0x08ff,
+  0x8f85, 0x8f7e, 0x8f7a, 0x8fa6, 0x360b, 0x8fb5, 0x91f4, 0x09bf,
+  0x09bc, 0x3805, 0x9229, 0x9226, 0x922a, 0x09be, 0x09c0, 0x937e,
+  0x0a3b, 0x0a39, 0x945b, 0x9461, 0x9460, 0x0a3c,
+  /* 0x33 */
+  0x959b, 0x3a14, 0x3a04, 0x95c3, 0x0a7d, 0x95cd, 0x0a7f, 0x0a7a,
+  0x0a7c, 0x3a05, 0x0a7e, 0x3a15, 0x3a0d, 0x0a80, 0x0abf, 0x0ac3,
+  0x9754, 0x9759, 0x0acc, 0x0b0e, 0x0b0d, 0x98f5, 0x0b26, 0x0b24,
+  0x0b25, 0x0b23, 0x0b21, 0x0b29, 0x9a69, 0x9a65, 0x0b8f, 0x0b8d,
+  0x9b7c, 0x0b8b, 0x0b92, 0x9b80, 0x0b90, 0x9c65, 0x0bef, 0x0bf0,
+  0x9cdf, 0x9d60, 0x0c01, 0x9d5e, 0x0c2e, 0x0c2d, 0x3e2e, 0x0c28,
+  0x0c29, 0x0c2c, 0x9e8f, 0x9e61, 0x9e5a, 0x3e41, 0x0c88, 0x9f67,
+  0x0c92, 0x0c91, 0x3eea, 0x9fbb, 0x3f44, 0x0ca9, 0x0cac, 0x0cae,
+  0x0caa, 0x0d06, 0x0d05, 0x0d4a, 0x0d3e, 0x0d3c, 0x0d3b, 0xa29b,
+  0x0d42, 0x0d41, 0x0d43, 0xa2a9, 0x0d45, 0xa366, 0x0d9a, 0x0d9b,
+  0x0d9f, 0x0d9e, 0xa472, 0xa476, 0xa514, 0x0dde, 0x0de2, 0x0de6,
+  0xa50f, 0x4229, 0x0de3, 0x4227, 0x0ddf, 0xa641,
+  /* 0x34 */
+  0xa646, 0x439d, 0xa64b, 0xa643, 0x0e7e, 0x0ec9, 0x0ecc, 0xa7c6,
+  0x0ed1, 0xa7c7, 0x0ed0, 0xa7ce, 0x0ecf, 0x0ec8, 0xa7c9, 0x0ecd,
+  0xa7cb, 0xa7c5, 0x0f49, 0x0f47, 0x0f58, 0x0f6b, 0x0f6c, 0x0f6a,
+  0xaa69, 0x0f80, 0x0f82, 0x0f84, 0x45c8, 0x0f83, 0xab1e, 0xabba,
+  0x0fb6, 0xac52, 0xac51, 0xac53, 0xad9f, 0xaddb, 0x4726, 0x0ff1,
+  0xade3, 0x0ff6, 0x0ff3, 0x0ff0, 0x471c, 0xadd7, 0xade9, 0x4728,
+  0x0ff5, 0x0ff4, 0x0ff7, 0xadde, 0xaddc, 0xb03c, 0xd28b, 0x1055,
+  0xb122, 0xb132, 0xb123, 0x108b, 0x10cb, 0x10c2, 0xb2d4, 0xb2c8,
+  0xb2bc, 0x10ca, 0x10cc, 0xb2cd, 0x10c7, 0x10c9, 0x4970, 0xb2be,
+  0x10c6, 0xb340, 0xb2d6, 0x10c3, 0x4982, 0xb2bd, 0x49ac, 0xb2ba,
+  0x10c4, 0xb2c0, 0xd29b, 0xd29d, 0xb2c1, 0xb4a6, 0xb4a5, 0xb4a8,
+  0x11a9, 0x4bad, 0x11a8, 0x11a6, 0xb55f, 0xb570,
+  /* 0x35 */
+  0xb56a, 0xb565, 0xb567, 0xb56f, 0xb587, 0x4bca, 0x4c51, 0xb73d,
+  0xb743, 0x1222, 0xb740, 0x1226, 0x1224, 0x1225, 0x4c9d, 0x122a,
+  0x1274, 0xb918, 0x1279, 0x4d90, 0x127a, 0xb919, 0xb9c1, 0x4dd8,
+  0x4dd7, 0x1297, 0xb9bc, 0xb9c8, 0x4e2e, 0xba71, 0x12bc, 0xba6e,
+  0x12b3, 0xba78, 0x12bf, 0x12b7, 0xd2cd, 0xba7a, 0xbbb1, 0xbbaf,
+  0xbbb0, 0x1334, 0x1346, 0x1348, 0x4f59, 0xbca8, 0xbca6, 0x1356,
+  0x1367, 0xbd48, 0xbd45, 0x1368, 0x1399, 0x139a, 0xbea0, 0xbea4,
+  0x13d8, 0xbfd4, 0x13db, 0x13dc, 0x13dd, 0x13d7, 0xbfd2, 0xc022,
+  0x1449, 0x144a, 0x50da, 0xc0b7, 0xc0cc, 0x5233, 0xc1e6, 0x5218,
+  0x149a, 0xc1c8, 0x14cd, 0x14ca, 0xc3f4, 0x14cb, 0xc3ed, 0x14cf,
+  0xc37e, 0xd2e3, 0x14cc, 0x14ea, 0x14ed, 0xc4f9, 0xc4fd, 0x14e9,
+  0xc507, 0x151a, 0x53ef, 0x158d, 0x15d2, 0xc778,
+  /* 0x36 */
+  0xc77a, 0xc779, 0xc88a, 0x15f2, 0xc97b, 0xcad5, 0xcae9, 0x163d,
+  0xcaeb, 0x163e, 0x16f8, 0x1723, 0x58d9, 0x18b4, 0x5b6c, 0x1aa0,
+  0x1a90, 0x0075, 0x1a86, 0x1a84, 0x5cfa, 0x1a8a, 0x0076, 0x0073,
+  0x1a9f, 0x1aa1, 0x5d18, 0x1a93, 0x00bd, 0x5ff6, 0x1bd5, 0x618a,
+  0x6189, 0x00f9, 0x617f, 0x6188, 0x00fa, 0x6183, 0x6184, 0x6198,
+  0x6163, 0x6187, 0x0121, 0xd127, 0x0129, 0x62f5, 0x6350, 0x0138,
+  0x014e, 0x6487, 0x648a, 0x6565, 0x67b7, 0x67c1, 0x67c7, 0x01c8,
+  0x01bc, 0x67c5, 0x67cb, 0x1f90, 0x67d1, 0x01bb, 0x01c2, 0x01c0,
+  0x67b8, 0x67ca, 0x01ca, 0x67de, 0x01c9, 0x67ce, 0x01b8, 0x2110,
+  0x2217, 0x6b68, 0x024e, 0x6b6b, 0x2244, 0x0250, 0x222b, 0x6b6a,
+  0x2245, 0x6b66, 0x6b77, 0x6b96, 0x6b6e, 0xd156, 0x028a, 0x6d57,
+  0x2365, 0x6d56, 0x6e9c, 0x6e9e, 0x02fc, 0x02f9,
+  /* 0x37 */
+  0x6ea1, 0x0363, 0x7042, 0x25cf, 0x7046, 0x703e, 0x7133, 0x0387,
+  0x0388, 0x71fa, 0x039a, 0x7297, 0x729b, 0x72aa, 0x2756, 0x7473,
+  0x747c, 0x03e9, 0x7486, 0x03ea, 0x2754, 0x0450, 0x76f3, 0x76f0,
+  0x0456, 0x0452, 0x044f, 0x0454, 0x0451, 0x76ec, 0x78af, 0x048e,
+  0x048f, 0x7864, 0x7868, 0x795a, 0x293d, 0x7b1f, 0x7b25, 0x04ed,
+  0x04eb, 0x29a4, 0x7cc6, 0x7cd6, 0x7cc3, 0x0562, 0x7d2c, 0x055d,
+  0x7d2e, 0x7d5e, 0x7d33, 0x0561, 0x0565, 0x055c, 0x7d2d, 0x7d46,
+  0x055f, 0x7cc1, 0x7d3a, 0x7ecc, 0x809d, 0x8083, 0x80f6, 0x2dec,
+  0x0616, 0x060a, 0x80f8, 0x060e, 0x0612, 0x80fe, 0x80f3, 0x0611,
+  0x80eb, 0x80fa, 0x0610, 0x8107, 0x80fc, 0x0609, 0x2dfa, 0x0615,
+  0x2dd4, 0x8372, 0x8373, 0x8374, 0x0691, 0x0695, 0x0693, 0x0692,
+  0x068f, 0x835f, 0x8360, 0x84aa, 0x8534, 0x06f6,
+  /* 0x38 */
+  0x85b4, 0x06fb, 0x85f0, 0x2f75, 0x06f9, 0x860d, 0x85f3, 0x860f,
+  0x301c, 0x077d, 0x88c9, 0x077a, 0x077f, 0x88c5, 0x0778, 0x88d7,
+  0x88cc, 0x31d9, 0x88e7, 0x0770, 0x0782, 0x88c1, 0x0784, 0x88e8,
+  0x0833, 0x8acb, 0x0832, 0x0836, 0x8ac8, 0x8b7a, 0x0856, 0x8b79,
+  0x8b7e, 0x0867, 0x8c1b, 0x0865, 0x0864, 0x0866, 0x8c1f, 0x8c19,
+  0x0881, 0x0882, 0x0883, 0x089e, 0x8d89, 0x33f1, 0x089d, 0x8d8b,
+  0x090f, 0x0912, 0x9009, 0x8ffe, 0x9000, 0x0910, 0x0918, 0x900b,
+  0x0914, 0x0919, 0x3637, 0x59fd, 0x904a, 0x367d, 0x3686, 0x09c8,
+  0x09c4, 0x09c6, 0x9279, 0x09c7, 0x09c3, 0x926c, 0x9299, 0xd21b,
+  0x9262, 0x9314, 0x0a19, 0x0a1c, 0x93c8, 0x93d7, 0x940c, 0x0a41,
+  0x9470, 0x0a42, 0x0a43, 0x9471, 0x95df, 0x95e4, 0x0a82, 0x95e7,
+  0x0a81, 0x0a94, 0x0a84, 0x9790, 0x0ad2, 0x0b0f,
+  /* 0x39 */
+  0x0b22, 0x994c, 0x0b27, 0x0b2a, 0x3bfa, 0x0b28, 0x994f, 0x0b60,
+  0x9a7d, 0x9a7e, 0x9a7c, 0x3c72, 0x9a8d, 0x9b19, 0x0b9b, 0x0b9c,
+  0x9bc0, 0x0b93, 0x0b94, 0x3cdc, 0x0ba0, 0x0b99, 0x9bb6, 0x0ba1,
+  0x9ba8, 0x0bf1, 0x9ceb, 0x9ce7, 0x9d6f, 0x9ec7, 0x0c36, 0x9e9f,
+  0x0c37, 0x0c3f, 0x0c3c, 0x9ec4, 0x0c34, 0x0c39, 0x0c3b, 0x0c35,
+  0x0c30, 0x0c32, 0x0c38, 0x0c3e, 0x0c3a, 0x9e9b, 0x9e97, 0x9ec5,
+  0x9f6b, 0x9fce, 0x0cb6, 0x3f67, 0xa0b1, 0xa0ae, 0xa0b0, 0x0cb3,
+  0x0d09, 0x4077, 0xa23e, 0xa2b5, 0xa2ba, 0x0d4c, 0xa2b2, 0xa2b4,
+  0x0d53, 0x0d4d, 0x0d51, 0x0d4f, 0x419b, 0xa377, 0x0da2, 0xa386,
+  0xa37b, 0x0dcd, 0xa47e, 0xa52e, 0x0de7, 0xa52f, 0x0df0, 0xa537,
+  0x0de9, 0x0dec, 0xa532, 0x0de8, 0x0dee, 0x0e02, 0xa536, 0xa539,
+  0xa535, 0xa65c, 0x0e82, 0x0e83, 0x0e86, 0xa67b,
+  /* 0x3a */
+  0xa661, 0xa7ee, 0xa7eb, 0xa7ef, 0xa820, 0x442a, 0x4465, 0x0f4a,
+  0xa930, 0x0f5a, 0x4564, 0xa9be, 0x0f6e, 0xaa67, 0xaa7c, 0x0f70,
+  0x0f6f, 0xab24, 0x0f8a, 0x0f87, 0x0f88, 0xab29, 0xabef, 0x4620,
+  0x0fb7, 0x0ffd, 0x4720, 0xae0d, 0x1005, 0x473c, 0x1008, 0x1003,
+  0x1002, 0x1004, 0x0739, 0x1009, 0x0fff, 0xae64, 0x473f, 0xae15,
+  0x0ffc, 0x1001, 0x100a, 0x47f0, 0x47f5, 0x106b, 0x106c, 0xb135,
+  0xb136, 0xb134, 0xb137, 0xb347, 0xb32b, 0x10de, 0xb341, 0xb343,
+  0x10db, 0xb342, 0x10dd, 0x10e3, 0xb332, 0x10e0, 0x10d9, 0x10d8,
+  0x10e4, 0xb344, 0xb34a, 0x10da, 0x10ef, 0xd2a0, 0x4a15, 0x49be,
+  0xb354, 0xb36e, 0xb352, 0x10d7, 0x11b3, 0x11bb, 0x4be5, 0x11b2,
+  0x4bd2, 0x11ad, 0xb592, 0x11af, 0xd2b8, 0x4be0, 0xb5bf, 0x1216,
+  0x1228, 0x1223, 0x4cb3, 0xb741, 0xb769, 0xb765,
+  /* 0x3b */
+  0x1275, 0x127e, 0x127c, 0xb922, 0xb91d, 0xb9d2, 0xb9da, 0xb9db,
+  0x12ce, 0x12cd, 0x12cf, 0x4e53, 0xbaa4, 0xba9e, 0x4e37, 0x4e47,
+  0x4e5c, 0xba9d, 0x12c4, 0x12cc, 0x12c8, 0x12c7, 0xbaad, 0xbaa6,
+  0xbaa7, 0xbbb3, 0xbbe0, 0xbc35, 0xbc37, 0x135a, 0x136a, 0xbd4a,
+  0x136b, 0x136d, 0x136f, 0xbe5e, 0x139e, 0xbec0, 0x13a4, 0x13a3,
+  0x13e4, 0x13e8, 0x13e9, 0x13e0, 0x13e3, 0xbff9, 0x13ea, 0x13e1,
+  0x13ed, 0x1434, 0x1435, 0x1451, 0x50f0, 0xc1f0, 0x149d, 0xc1f3,
+  0xc21b, 0xc1f2, 0xc1fb, 0xc41c, 0xc413, 0x14d0, 0xc40f, 0x14ee,
+  0xc516, 0xc511, 0xc512, 0x14f2, 0xc50e, 0x541d, 0x1588, 0xc667,
+  0xc6f2, 0xc6da, 0x158f, 0xc6dc, 0x15d8, 0xc894, 0xc89b, 0xc892,
+  0xc89a, 0xc988, 0xc986, 0x163f, 0xcaef, 0x1652, 0x576b, 0xcb5e,
+  0x1650, 0xcc58, 0x16b1, 0xcc56, 0xcc54, 0x16f9,
+  /* 0x3c */
+  0xcd9b, 0xce96, 0xcea4, 0x1726, 0x1728, 0xce9a, 0xcf12, 0x0080,
+  0x1ac0, 0x0081, 0x5d6b, 0x007e, 0x007f, 0x5d37, 0x5d3c, 0xd10a,
+  0x5ef7, 0x00be, 0x5f66, 0x00d6, 0x61a9, 0x61ae, 0x61ad, 0x61c8,
+  0x61a5, 0x61b0, 0x6295, 0x1ce5, 0x6325, 0x0134, 0x6499, 0x1daf,
+  0x6574, 0x6570, 0x656f, 0x6841, 0x6854, 0x01d5, 0x01d8, 0x6840,
+  0x6838, 0x01d4, 0x1fd8, 0x01d9, 0x6852, 0x683a, 0x6857, 0xd14a,
+  0x6859, 0x2111, 0x2267, 0x6bb4, 0x6bc0, 0x025d, 0x2243, 0x025e,
+  0x0259, 0x6b75, 0x025a, 0x02a0, 0x6d60, 0x6d47, 0x0305, 0x6ef0,
+  0x0307, 0x6eef, 0x030e, 0x030c, 0x6eec, 0x6f83, 0x0345, 0x6f84,
+  0x6f8f, 0x0364, 0x7061, 0x0365, 0x7069, 0x25dd, 0x0366, 0x7062,
+  0x0389, 0x03ec, 0x03f1, 0x2770, 0x276a, 0x03f0, 0x03f8, 0x2774,
+  0x275f, 0x74ae, 0x2761, 0x2773, 0x74b2, 0x03f2,
+  /* 0x3d */
+  0x03f4, 0x770b, 0x0458, 0x7710, 0x770d, 0x045a, 0x0459, 0x0457,
+  0x045b, 0x2850, 0x787f, 0x7881, 0x04a6, 0x04c2, 0x04c1, 0x293f,
+  0x7a0b, 0x7b4e, 0x04ef, 0x29b0, 0x7dea, 0x7d45, 0x0568, 0x2b35,
+  0x2b2d, 0x0573, 0x056e, 0x0574, 0x2b02, 0x0566, 0x7d28, 0x7d5d,
+  0x7edc, 0x05b9, 0x2c26, 0x7ed4, 0x060c, 0x8164, 0x8168, 0x0620,
+  0x8162, 0x061d, 0x8161, 0x061c, 0x8166, 0x0621, 0x061a, 0x0619,
+  0x80f2, 0x8169, 0x8167, 0x067e, 0x839a, 0x839b, 0x8385, 0x839c,
+  0x069d, 0x83a4, 0x069e, 0x069c, 0x2e6e, 0x8399, 0x8386, 0x8390,
+  0x8481, 0x84ae, 0x2eb1, 0x2ed4, 0x06cd, 0x8538, 0x070b, 0x070a,
+  0x2f85, 0x893b, 0x078f, 0x3272, 0x0795, 0x0790, 0x0791, 0x894c,
+  0x323a, 0x07b9, 0x8947, 0x8935, 0x0797, 0x079e, 0x8933, 0x078b,
+  0x8982, 0x8940, 0x083b, 0x083a, 0x083c, 0x083d,
+  /* 0x3e */
+  0x0839, 0x083e, 0x086b, 0x086c, 0x8c36, 0x8d0e, 0x08a2, 0x08a1,
+  0x089f, 0x8dad, 0x8daa, 0x9017, 0x092d, 0x9067, 0x0936, 0x092b,
+  0x9072, 0x0937, 0xd20a, 0x9061, 0x90b0, 0x36ad, 0x0925, 0x092f,
+  0x092c, 0x906e, 0x9064, 0x0932, 0x908c, 0x9066, 0x3695, 0x906b,
+  0x905f, 0x9074, 0x9065, 0x92bb, 0x92be, 0x09d5, 0x92b9, 0x09d4,
+  0x09d6, 0x92ef, 0x09d1, 0x3943, 0x93da, 0x0a46, 0x398f, 0x9490,
+  0x95e9, 0x0a8c, 0x0a8a, 0x0a88, 0x9611, 0x960d, 0x95ed, 0x9621,
+  0x0add, 0x9781, 0x97b1, 0x9901, 0x0b2d, 0x995e, 0x9962, 0x0b2e,
+  0x0b2c, 0x0b2b, 0x0b30, 0x995b, 0x0b4e, 0x9a96, 0x9a93, 0x0b64,
+  0x0b61, 0x9a92, 0x3c75, 0xd239, 0x0b70, 0x0ba6, 0x0ba4, 0x9bc4,
+  0x9bc7, 0x9bc3, 0x0ba8, 0x0ba2, 0x9bc8, 0x0ba7, 0x3cec, 0x0ba5,
+  0x9bca, 0x0ba9, 0x9bc5, 0x9bcf, 0x9bdc, 0x9c7c,
+  /* 0x3f */
+  0x9d01, 0x0c3d, 0x9ed3, 0x9edc, 0x0c44, 0x0c45, 0x0c46, 0x9ed4,
+  0x3e57, 0x9ecc, 0x0c47, 0x0c48, 0x0c42, 0x9ed6, 0x9edb, 0x0c41,
+  0x9ed5, 0x9fd9, 0x0c94, 0x9fdd, 0x9fdc, 0x9fe0, 0xa0cc, 0x0cc0,
+  0x0cb8, 0x0cc1, 0x0cc2, 0x0cbb, 0x0cbd, 0x0cbf, 0x0cb9, 0x0cb7,
+  0xa0d2, 0x0cc7, 0xa0d3, 0x0d0c, 0x0d0b, 0x407b, 0x0d10, 0xa18d,
+  0x0d5d, 0x4121, 0x0d5a, 0x0d58, 0x0d56, 0xa2d8, 0x0d54, 0x4116,
+  0xa2bc, 0x0da8, 0x0da7, 0x0dcf, 0x0dd0, 0xa48a, 0x41e8, 0xa48b,
+  0xa48d, 0x0dd1, 0x0deb, 0xa553, 0x0dfb, 0x426a, 0xa559, 0x0dfd,
+  0x0df8, 0x0df7, 0x0e00, 0xa556, 0xa557, 0x0df6, 0x425f, 0xa673,
+  0xa81b, 0x0edf, 0xa821, 0xa816, 0xa818, 0x0ee2, 0x0ee4, 0xa844,
+  0x4482, 0xa826, 0x0ee3, 0xa936, 0x0f59, 0x0f71, 0x0f8e, 0x0f8c,
+  0xab3a, 0x0fa4, 0xabf4, 0x4655, 0x1014, 0xae62,
+};
+
+static const ucs4_t cns11643_4a_2uni_upages[212] = {
+  0x03400, 0x03500, 0x03600, 0x03700, 0x03800, 0x03900, 0x03a00, 0x03b00,
+  0x03c00, 0x03d00, 0x03e00, 0x03f00, 0x04000, 0x04100, 0x04200, 0x04300,
+  0x04400, 0x04500, 0x04600, 0x04700, 0x04800, 0x04900, 0x04a00, 0x04b00,
+  0x04e00, 0x04f00, 0x05000, 0x05100, 0x05200, 0x05300, 0x05400, 0x05500,
+  0x05600, 0x05700, 0x05800, 0x05900, 0x05a00, 0x05b00, 0x05c00, 0x05d00,
+  0x05e00, 0x05f00, 0x06000, 0x06100, 0x06200, 0x06300, 0x06500, 0x06600,
+  0x06700, 0x06800, 0x06900, 0x06b00, 0x06c00, 0x06d00, 0x06e00, 0x07000,
+  0x07100, 0x07200, 0x07300, 0x07400, 0x07500, 0x07600, 0x07700, 0x07800,
+  0x07900, 0x07a00, 0x07b00, 0x07c00, 0x07d00, 0x07f00, 0x08000, 0x08100,
+  0x08200, 0x08300, 0x08400, 0x08600, 0x08800, 0x08900, 0x08a00, 0x08c00,
+  0x08e00, 0x08f00, 0x09000, 0x09100, 0x09200, 0x09500, 0x09600, 0x09700,
+  0x09a00, 0x0ff00, 0x20000, 0x20100, 0x20200, 0x20300, 0x20400, 0x20500,
+  0x20600, 0x20700, 0x20800, 0x20900, 0x20a00, 0x20b00, 0x20c00, 0x20d00,
+  0x20e00, 0x21100, 0x21200, 0x21300, 0x21500, 0x21600, 0x21700, 0x21900,
+  0x21a00, 0x21b00, 0x21c00, 0x21d00, 0x21e00, 0x21f00, 0x22000, 0x22100,
+  0x22200, 0x22300, 0x22400, 0x22500, 0x22600, 0x22700, 0x22900, 0x22a00,
+  0x22b00, 0x22c00, 0x22e00, 0x22f00, 0x23000, 0x23100, 0x23200, 0x23300,
+  0x23400, 0x23500, 0x23800, 0x23900, 0x23a00, 0x23b00, 0x23c00, 0x23d00,
+  0x23e00, 0x24100, 0x24200, 0x24500, 0x24600, 0x24700, 0x24800, 0x24900,
+  0x24a00, 0x24b00, 0x24c00, 0x24d00, 0x24f00, 0x25000, 0x25100, 0x25300,
+  0x25400, 0x25600, 0x25700, 0x25900, 0x25a00, 0x25b00, 0x25e00, 0x25f00,
+  0x26000, 0x26200, 0x26300, 0x26400, 0x26500, 0x26600, 0x26700, 0x26800,
+  0x26900, 0x26a00, 0x26b00, 0x26c00, 0x27100, 0x27200, 0x27500, 0x27600,
+  0x27700, 0x27800, 0x27900, 0x27b00, 0x27c00, 0x27d00, 0x27e00, 0x27f00,
+  0x28200, 0x28400, 0x28500, 0x28600, 0x28700, 0x28800, 0x28c00, 0x28e00,
+  0x28f00, 0x29000, 0x29100, 0x29200, 0x29400, 0x29500, 0x29600, 0x29a00,
+  0x29d00, 0x2f800, 0x2f900, 0x2fa00,
+};
+
diff --git a/graf2d/win32gdk/gdk/src/iconv/cns11643_4b.h b/graf2d/win32gdk/gdk/src/iconv/cns11643_4b.h
new file mode 100644
index 00000000000..6a9823e1aae
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cns11643_4b.h
@@ -0,0 +1,668 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CNS 11643-1992 plane 4 part b
+ */
+
+static const unsigned short cns11643_4b_2uni_page40[4384] = {
+  /* 0x40 */
+  0xb65b, 0xb66a, 0x1011, 0xb668, 0x101b, 0x1012, 0x100e, 0x1015,
+  0x3f68, 0x1010, 0xb681, 0x1017, 0x4046, 0x4043, 0x1070, 0x10ed,
+  0xbae7, 0x10ee, 0xbae6, 0xbad1, 0xbb11, 0x4181, 0xbad0, 0xbad9,
+  0xbb0a, 0x10f4, 0xbada, 0xbadd, 0xbac8, 0xbae2, 0xbae9, 0xbacb,
+  0x417c, 0xbacc, 0xbac1, 0x416a, 0xbade, 0x4188, 0x10f2, 0x10f8,
+  0x10f3, 0xbb51, 0xbb12, 0x10fa, 0xbae0, 0xbb2b, 0xf6b4, 0xc0d8,
+  0xc0d1, 0x4410, 0xc0d2, 0xc0cd, 0x441f, 0x11b6, 0x11b7, 0xc13d,
+  0x440f, 0xc0ca, 0x11ba, 0xc0cb, 0x11bc, 0xc0d7, 0xc3f4, 0x123b,
+  0x45d3, 0x122f, 0xc487, 0xc48b, 0xc483, 0x1237, 0x1299, 0xc7c5,
+  0xc7d2, 0xc7c6, 0xc7d3, 0x12d9, 0x12d8, 0x12d7, 0xc7f0, 0xc7cd,
+  0xc7cc, 0xc7dc, 0xc7d6, 0x1336, 0xc9e6, 0xca41, 0xca3f, 0x4987,
+  0xcac5, 0xcac0, 0xcac6, 0xcabe, 0xcabf, 0x49c6,
+  /* 0x41 */
+  0x1370, 0xcb63, 0xccd3, 0xccda, 0xccd5, 0x13a5, 0x13a6, 0x13a9,
+  0x13ee, 0x1454, 0xd0ee, 0x1457, 0xd0fc, 0xd214, 0x14a1, 0xd323,
+  0xd322, 0xd330, 0xd4b5, 0x14d3, 0xd538, 0x14d4, 0xd53f, 0x14d7,
+  0x4dcc, 0x4e6d, 0x4e70, 0x14f7, 0x14f6, 0x14f9, 0x14f8, 0x4f58,
+  0x4f42, 0x4f68, 0x4f69, 0xd768, 0xd767, 0x4f43, 0xd765, 0x4f47,
+  0x158a, 0xda75, 0xdaf7, 0xdaf3, 0xdaf6, 0x1594, 0xdb00, 0x1593,
+  0xdaff, 0xdaf5, 0x529d, 0x15dd, 0x15dc, 0x15f7, 0x53cf, 0xde92,
+  0xe006, 0x1642, 0xe007, 0xe06b, 0x1654, 0xe06c, 0x1655, 0xe193,
+  0x168f, 0xe194, 0x54f4, 0x16b4, 0x16b3, 0xe262, 0xe263, 0x5509,
+  0xe25f, 0xe264, 0xe25b, 0xe259, 0x16fb, 0x16fd, 0xe3a4, 0xe3ac,
+  0x55ab, 0x16fc, 0xe4b5, 0x172c, 0x172f, 0xe4ae, 0x172b, 0xe4c5,
+  0x1733, 0x1734, 0x55fb, 0xe63b, 0x57ac, 0x57ae,
+  /* 0x42 */
+  0x57aa, 0x17e8, 0xe8bf, 0xea2b, 0xea84, 0xea80, 0xeb4d, 0xeb4f,
+  0x585c, 0xeb4c, 0xed92, 0x195d, 0x1ad2, 0x0085, 0x0088, 0x5fae,
+  0x5f79, 0x008e, 0x0084, 0x5f71, 0x1adf, 0x5fb3, 0x0083, 0x5f2c,
+  0x5f77, 0x612f, 0x63c3, 0x0102, 0x63cd, 0x0106, 0x0105, 0x63c9,
+  0x00fe, 0x0101, 0x0100, 0x63ce, 0x64a5, 0x64a0, 0x64fe, 0x6559,
+  0x669a, 0x01e7, 0x1e19, 0x68e4, 0x68d7, 0x68dc, 0x01e6, 0x68e7,
+  0x01ed, 0x01e2, 0x01eb, 0x68e5, 0x01e8, 0x01ec, 0x1e0a, 0x0224,
+  0x1f9a, 0x6e14, 0x0262, 0x6df1, 0x0261, 0x0260, 0x0264, 0x028b,
+  0x6fb6, 0x706e, 0x706c, 0x7081, 0x7142, 0x0319, 0x0316, 0x0318,
+  0x0322, 0x711a, 0x031d, 0x0317, 0x031e, 0x7127, 0x7125, 0x7117,
+  0x711c, 0x713d, 0x7120, 0x0369, 0x036a, 0x7381, 0x036c, 0x037a,
+  0x038a, 0x7509, 0x75c6, 0x75c4, 0x039c, 0x75c5,
+  /* 0x43 */
+  0x03fd, 0x03f9, 0x76ef, 0x03ff, 0x76df, 0x76de, 0x76ee, 0x76f5,
+  0x76ec, 0x03fc, 0x76dd, 0x2385, 0x03fb, 0x0402, 0x045f, 0x2456,
+  0x045e, 0x045d, 0x045c, 0x7822, 0x2451, 0x0492, 0x7997, 0x7995,
+  0x0494, 0x0495, 0x04d1, 0x7ba9, 0x04f1, 0x7c53, 0x25b1, 0x7c56,
+  0x7c55, 0x0577, 0x056f, 0x7de3, 0x7de2, 0x0587, 0x057d, 0x057c,
+  0x057e, 0x0585, 0x058b, 0x0586, 0x0580, 0x5dfd, 0x7da9, 0x0578,
+  0xf5ab, 0x7e33, 0x7e0a, 0x05ba, 0x8059, 0x0633, 0x81bc, 0x062d,
+  0x81c4, 0x81c7, 0x81c6, 0x0637, 0x275a, 0x2763, 0x81b8, 0x81da,
+  0x062e, 0x81b7, 0x81c0, 0x063d, 0x81cd, 0x06a0, 0x84bc, 0x84ab,
+  0x06a3, 0x8586, 0x299b, 0x875a, 0x29a3, 0x070e, 0x299e, 0x8843,
+  0x07b6, 0x89ac, 0x07ab, 0x07ad, 0x07a6, 0x89be, 0x2ab8, 0x07aa,
+  0x2aba, 0x07b1, 0x89ab, 0x07a8, 0x07af, 0x07b0,
+  /* 0x44 */
+  0x07a7, 0x07b2, 0x079d, 0x07a5, 0x07b5, 0x743e, 0x2ac7, 0x2ad7,
+  0x8cf9, 0x0841, 0x8cf3, 0x8cf7, 0x2c70, 0x8e45, 0x8e48, 0x0872,
+  0x2c9d, 0x086f, 0x0871, 0x8e44, 0x0885, 0x8eaf, 0x8eb1, 0x08a4,
+  0x08a5, 0x08a6, 0x8fcf, 0x08a8, 0x8fcb, 0x8fcd, 0x08a3, 0x9050,
+  0x91ec, 0x921a, 0x2d16, 0x2d24, 0x91d8, 0x0943, 0x91d0, 0x91d1,
+  0x093d, 0x0945, 0x917b, 0x91d2, 0x0944, 0x91d4, 0x91e7, 0x91df,
+  0x91de, 0x2d45, 0x91d9, 0x91cf, 0x950d, 0x09e3, 0x2f79, 0x5dfd,
+  0x09df, 0x09e4, 0x2f7a, 0x09e5, 0x9538, 0x3054, 0x0a22, 0x0a4a,
+  0x98a9, 0x0a49, 0x0a44, 0x0a4b, 0x0a87, 0x0a89, 0x0a92, 0x0a91,
+  0x0a90, 0x0a8e, 0x993e, 0x9946, 0x9aed, 0xf630, 0x0b12, 0x0b10,
+  0x0b11, 0x9c6c, 0x0b32, 0x0b34, 0x0b37, 0x0b33, 0x0b36, 0x0b35,
+  0x0b65, 0x9dac, 0x337c, 0x337b, 0x9ec9, 0x3412,
+  /* 0x45 */
+  0x0bb0, 0x9f12, 0x0baf, 0x0baa, 0x9efd, 0x9f01, 0x9f11, 0x0bab,
+  0x9f89, 0x9f05, 0x9efe, 0x9f0b, 0x9f20, 0x9f04, 0xa088, 0x0bf3,
+  0xa102, 0x0bf4, 0xa103, 0x34b6, 0x34e0, 0x0c08, 0x0c4e, 0x0c55,
+  0x0c4b, 0xa229, 0xa23b, 0x0c4d, 0x3573, 0xa206, 0x0c52, 0x3572,
+  0x0c4c, 0x3570, 0x0c50, 0x0c53, 0xa203, 0x0c51, 0xa378, 0xa379,
+  0xa37d, 0x0c89, 0xa37f, 0x0c95, 0x0ccc, 0x0cc8, 0x0cce, 0xa432,
+  0x0cca, 0xa400, 0x369d, 0xa422, 0x0ccd, 0xa5a9, 0x0d5c, 0x0d67,
+  0x0d69, 0x0d65, 0x0d62, 0xa704, 0x3827, 0x3835, 0xf659, 0x0daa,
+  0xa8b8, 0xa99b, 0x0dd2, 0x39a2, 0x0e03, 0x0e0c, 0xaa92, 0x0e09,
+  0x0e06, 0x0e05, 0x3989, 0xaa8f, 0x0e0b, 0x0e08, 0xaa98, 0x39a5,
+  0xaaae, 0x0e8e, 0xad9d, 0x3ab6, 0x0ee8, 0xaf49, 0xaf50, 0xaf46,
+  0x0eea, 0xaf4e, 0x3ba5, 0x3bc3, 0xaf55, 0x0ee9,
+  /* 0x46 */
+  0x0eeb, 0xaf64, 0x0ef0, 0xb138, 0x0f4b, 0x3dab, 0x0f73, 0x0f75,
+  0x0f92, 0x0f91, 0x0f93, 0x3e25, 0x0fa7, 0x0fa6, 0x0fa8, 0x0faa,
+  0xb3fe, 0x0fa9, 0x3e59, 0x0fbb, 0x0fbc, 0x0fba, 0x0fbd, 0x1027,
+  0x3f85, 0xb6a6, 0x1024, 0x101e, 0x101f, 0x101d, 0x1020, 0x1023,
+  0x1029, 0x1022, 0xb69c, 0xb699, 0x101c, 0x3f8e, 0x1028, 0xb6b5,
+  0xb6a3, 0xb6a0, 0xb6a7, 0xb69b, 0xb8df, 0xb8e1, 0x1071, 0x1073,
+  0x1072, 0xb94d, 0x1102, 0xbbf3, 0xbb6f, 0xbb69, 0x10fe, 0x41be,
+  0xbb6b, 0xbb78, 0xbb87, 0x1108, 0xbb85, 0xbb82, 0xbb90, 0x1107,
+  0x1104, 0xbb80, 0xbb67, 0x1100, 0x10fc, 0xbb61, 0x1144, 0xbb93,
+  0x10f1, 0xbbf2, 0xbb86, 0x41a6, 0x1106, 0xbfcd, 0xbfc4, 0x11c6,
+  0x11c3, 0x11c1, 0x11c2, 0xc10f, 0x11c4, 0x11c7, 0xc10d, 0x11bf,
+  0x11d2, 0xc173, 0x11ca, 0xf6ba, 0xc10a, 0x442f,
+  /* 0x47 */
+  0xc108, 0xc113, 0x1213, 0xc3f8, 0x1230, 0x123e, 0x1239, 0xc4ab,
+  0xc4a8, 0x123c, 0x123f, 0xc4a5, 0x1234, 0x123d, 0xc4c3, 0xc4a4,
+  0x1238, 0xc4d4, 0xc4ba, 0xc5f1, 0x46a0, 0x1282, 0xc63f, 0x1283,
+  0xc6ea, 0x129b, 0xc7f7, 0x12e0, 0x12dd, 0xc7fa, 0xc7f5, 0x12de,
+  0xc7fe, 0x12e3, 0x12e5, 0xc800, 0x4797, 0x12e2, 0xc802, 0xc7fb,
+  0xc807, 0x12df, 0xc81a, 0x132e, 0xc9b8, 0x1337, 0x1338, 0xc9e9,
+  0xc9eb, 0xca50, 0xca4f, 0x498b, 0xcb86, 0x0162, 0xcb8e, 0x1394,
+  0x1393, 0x13ab, 0x13ad, 0xccf0, 0xccfb, 0x13f5, 0x13f7, 0xce42,
+  0x13f6, 0x13f8, 0xce85, 0x13fb, 0x13f9, 0x1458, 0x145a, 0xd105,
+  0x1459, 0x4c0f, 0x1485, 0x14a4, 0x14d8, 0x14d9, 0xd54b, 0x14dd,
+  0x14c8, 0xd563, 0x14fa, 0x14fb, 0x4f75, 0x1527, 0x4f9f, 0x152a,
+  0x1525, 0xd799, 0x1528, 0xda81, 0xdb17, 0xdb10,
+  /* 0x48 */
+  0xdb12, 0x52a6, 0x1595, 0x539a, 0xdcfa, 0xdcf3, 0xdcf2, 0xdcf5,
+  0xdcf6, 0xddbb, 0xddc2, 0xdea7, 0x160f, 0x1611, 0xdea8, 0xdea3,
+  0x1610, 0xdeaa, 0x1615, 0x1613, 0x5457, 0xdfdc, 0x1647, 0x1646,
+  0xe00f, 0x1659, 0x165b, 0xe079, 0x165e, 0xe07f, 0xe085, 0x165a,
+  0x1691, 0x1692, 0x1690, 0x1693, 0xe21b, 0x54f7, 0x16be, 0xe277,
+  0xe276, 0xe298, 0x16bc, 0x16bb, 0x16b7, 0x16b9, 0xe27a, 0x1701,
+  0x16fe, 0xe3bc, 0xe3ba, 0x1702, 0xe3b6, 0x16ff, 0x55b0, 0xe3b4,
+  0x1700, 0xe4cf, 0x1737, 0x173a, 0x176f, 0x1777, 0x1779, 0x56c6,
+  0xe67b, 0x17c8, 0xe81c, 0xe821, 0xe81d, 0xe8c0, 0x17f2, 0xe8ff,
+  0x17f1, 0x17f0, 0x5862, 0xeb56, 0x1834, 0xeda1, 0xeda2, 0xeda6,
+  0xf056, 0xf057, 0x192c, 0x192d, 0xf101, 0xf1ed, 0xf71c, 0xf3f2,
+  0x1afa, 0x5fb8, 0x0091, 0x5fc0, 0x0094, 0x5fb7,
+  /* 0x49 */
+  0x5fe1, 0x00c4, 0x010a, 0x63e8, 0x1c85, 0x64b2, 0x0152, 0x66ae,
+  0x0159, 0x026f, 0x697e, 0x01f2, 0x01f4, 0x1e43, 0x6976, 0x01f1,
+  0x1e3c, 0x6996, 0x026a, 0x6e20, 0x6e21, 0x6e23, 0x6e29, 0x7077,
+  0x7151, 0x0324, 0x7156, 0x0323, 0x7188, 0x7159, 0x7155, 0x0327,
+  0x7297, 0x7298, 0x036d, 0x21ed, 0x036e, 0x036f, 0x73a1, 0x73a3,
+  0x2235, 0x039f, 0x040a, 0x0406, 0x040e, 0x770a, 0x040d, 0x0405,
+  0x773d, 0x770c, 0x040b, 0x0410, 0x042e, 0x783d, 0x7839, 0x79b0,
+  0x79b2, 0x79ae, 0x0496, 0x0497, 0x04c4, 0x2547, 0x04c5, 0x7b20,
+  0x04d2, 0x7c6e, 0x7c6d, 0x7c6a, 0x0581, 0x7e32, 0x058e, 0x0590,
+  0x058f, 0x7e39, 0x0591, 0x0595, 0x0593, 0x7da3, 0x266d, 0x7e7f,
+  0x7e35, 0x7e3d, 0x7ff4, 0x7ff5, 0x063b, 0x0648, 0x8248, 0x8228,
+  0x0646, 0x0647, 0x8227, 0x8232, 0x822c, 0x064c,
+  /* 0x4a */
+  0x822e, 0x064a, 0x0650, 0x0643, 0x8223, 0x8231, 0xf5c5, 0x0649,
+  0x06a6, 0x06a5, 0x06a4, 0x84c9, 0x8589, 0x06b9, 0x85bb, 0x06ce,
+  0x06cf, 0x0713, 0x8897, 0x8893, 0x8a28, 0x07c6, 0x07c5, 0x07ca,
+  0x07d9, 0x07c1, 0x8a18, 0x8a3b, 0x2af5, 0x8a27, 0x8a24, 0x8a1b,
+  0x8a31, 0x07cb, 0x8a26, 0x8aa3, 0x8a3f, 0x8a22, 0x8a19, 0x2b03,
+  0x8a41, 0x8a2b, 0x2b65, 0x0842, 0x8d0c, 0x2c75, 0x0874, 0x0873,
+  0x8e4e, 0x8eb9, 0x8efa, 0x8fe9, 0x8fe8, 0x8fe4, 0x2d8a, 0x2d56,
+  0x0952, 0x925f, 0x925d, 0x9252, 0x0950, 0x9274, 0x094b, 0x9246,
+  0x094c, 0x096d, 0x92aa, 0x2d98, 0x924a, 0x9259, 0x924b, 0x094f,
+  0x2d68, 0x09f0, 0x9550, 0x3034, 0x3045, 0x0a4d, 0x0a4c, 0x98d0,
+  0x0a4f, 0x0a4e, 0x0a50, 0x98cc, 0x315c, 0x0a96, 0x3156, 0x9964,
+  0x9965, 0x0a97, 0x0a95, 0x0a98, 0x995c, 0x9b15,
+  /* 0x4b */
+  0x0aec, 0x0aeb, 0x0b13, 0x0b14, 0x0b38, 0x0b3a, 0x0b39, 0x9c79,
+  0x0b68, 0x0b67, 0x9dc5, 0x9db8, 0x9f2c, 0x0bbe, 0x0bbc, 0x9f37,
+  0x9f35, 0x9f31, 0x0bbb, 0x9f2f, 0x0bba, 0x9f2b, 0x0bb9, 0x0bb7,
+  0x9f2d, 0x9f2a, 0x0bc1, 0xa095, 0x0bf7, 0xa23e, 0x0c60, 0xa247,
+  0xa245, 0x0c59, 0x0c5c, 0x0c5a, 0x0c58, 0xa252, 0x0c5b, 0xa270,
+  0xa250, 0xa258, 0xa251, 0xa23d, 0x0c5d, 0xa241, 0xa20c, 0xa23c,
+  0xa386, 0xa383, 0xa389, 0xa3f3, 0x0cd4, 0x0cd3, 0x36bf, 0x0cd2,
+  0x36bd, 0xa42d, 0x0cd7, 0x0cd1, 0x36e4, 0x0cd5, 0xa5c5, 0xf655,
+  0x0d6d, 0x0d6f, 0x3834, 0x0d75, 0x0d6c, 0x0d74, 0xa743, 0x0d73,
+  0xa737, 0xa745, 0x3836, 0x0dac, 0xa8e5, 0xa9a6, 0xaadb, 0x0e10,
+  0xaada, 0xaae6, 0x39ba, 0x39bc, 0x0e0f, 0x39c8, 0x0e23, 0x39c3,
+  0x0e1d, 0x39b6, 0x0e0e, 0xaaf8, 0xaae9, 0x0e15,
+  /* 0x4c */
+  0x39c2, 0x0e13, 0xaae8, 0xaaf6, 0x0e1b, 0x39c5, 0x0e22, 0x0e26,
+  0xaae7, 0x39bd, 0x39b0, 0x0e21, 0x0e1c, 0x0e17, 0xaad5, 0x0e1a,
+  0x39bb, 0xadd3, 0xadc7, 0xadd1, 0x0e99, 0xadc3, 0x0e97, 0xaf80,
+  0xaf98, 0x0efd, 0xaf84, 0x0ef6, 0x0efe, 0x0ef5, 0x0eff, 0x0ef7,
+  0xaf97, 0xaf83, 0xaf81, 0x0f01, 0x3c04, 0xaf8c, 0xb142, 0xb2ab,
+  0x0f77, 0xb2a3, 0xb2a6, 0xb35c, 0xb369, 0xb367, 0x0fab, 0xb48b,
+  0xb4a8, 0x0fc0, 0xb6d8, 0x1031, 0x102e, 0xf689, 0xb6dc, 0x102c,
+  0xb6e0, 0xb6e5, 0x1032, 0x102f, 0x102b, 0x102d, 0x1033, 0xb818,
+  0xb819, 0x3ff1, 0x1057, 0x105c, 0x107b, 0xb95f, 0xb95e, 0x107a,
+  0xbc02, 0x4222, 0x1113, 0x111e, 0x1117, 0x1120, 0x112a, 0x1111,
+  0x1115, 0x110f, 0x1118, 0x4238, 0xbc12, 0xbc36, 0x112c, 0x4232,
+  0xf6a8, 0x4210, 0xbc23, 0xbc03, 0x111c, 0xbc00,
+  /* 0x4d */
+  0x1129, 0xbc46, 0xbc61, 0x1112, 0x424f, 0x1197, 0xc184, 0x4472,
+  0xc16b, 0xc162, 0xc156, 0xc16a, 0xc152, 0xc155, 0x11d4, 0x11d0,
+  0x447c, 0xc161, 0xf6bb, 0xc158, 0xc177, 0x11d3, 0x1214, 0xc4d7,
+  0x1246, 0x1245, 0xc4de, 0x1243, 0xc4df, 0x460d, 0x1244, 0x1248,
+  0xc4d1, 0x1247, 0xc4e2, 0xc4e1, 0xc4dd, 0x4608, 0x1249, 0x1285,
+  0xc64b, 0x1284, 0xc64e, 0x129d, 0xc6fc, 0x129e, 0x12a0, 0xc6fa,
+  0x129c, 0xc6fb, 0x129f, 0xc6fe, 0x12f7, 0x12ea, 0xc831, 0x12ef,
+  0x12e9, 0x12f3, 0x12f0, 0x12eb, 0xc838, 0x12ec, 0x12f2, 0x12f5,
+  0x12ee, 0xc83a, 0xc9bb, 0x133a, 0x134b, 0xca59, 0x134a, 0x134c,
+  0xcadb, 0xcadf, 0xcae2, 0x1379, 0x137b, 0x1378, 0xcb9e, 0xcba1,
+  0x13b5, 0xcd10, 0x13b4, 0x13b7, 0x4a9e, 0x1409, 0x13fe, 0x1408,
+  0x1407, 0xce76, 0xce7f, 0xce7d, 0x1406, 0x1404,
+  /* 0x4e */
+  0x1405, 0x13ff, 0x140b, 0xce82, 0xd057, 0x143b, 0x145d, 0x145c,
+  0x145f, 0x145e, 0x4c28, 0xd12e, 0x4c21, 0x1483, 0xd38b, 0xd38d,
+  0x14a7, 0x4d66, 0x4d6c, 0xd390, 0x14a8, 0xd4ec, 0xd56f, 0xd56b,
+  0xd571, 0xd578, 0x4df6, 0x14e0, 0x14df, 0x14fe, 0x14fc, 0x14ff,
+  0x14fd, 0xd7ad, 0x152c, 0x4fec, 0x4fba, 0x4fe3, 0x4fbd, 0x159d,
+  0xdb2f, 0x52b4, 0xdd78, 0x1640, 0xdff8, 0xe019, 0x165f, 0xe09b,
+  0xe094, 0xe097, 0xe099, 0xe1a6, 0xe1a4, 0xe1a7, 0x54d1, 0xe295,
+  0x16c0, 0x5523, 0xe290, 0x16c1, 0x16c6, 0xe29b, 0xe3c4, 0x1704,
+  0x1705, 0xe3c6, 0x560b, 0x173e, 0x173d, 0x1740, 0x173f, 0xe4e3,
+  0x1742, 0xe4df, 0xe4dd, 0xe4e7, 0x1784, 0x1782, 0x177f, 0x1785,
+  0xe82d, 0xe82c, 0x17cc, 0x57b2, 0x17cb, 0x17cd, 0xe834, 0xe838,
+  0x57db, 0xe91d, 0x17f5, 0xe91a, 0xe91b, 0xe914,
+  /* 0x4f */
+  0x57f0, 0xe917, 0xea21, 0x1820, 0x1821, 0xeaaa, 0xeaa1, 0x1837,
+  0x183e, 0x5873, 0x183d, 0x586e, 0xeb63, 0xeb79, 0xeb60, 0x5865,
+  0xeb62, 0x183c, 0xeb61, 0x1838, 0x586a, 0xeb70, 0x586d, 0xeb6a,
+  0x183b, 0xedc8, 0x18b0, 0xedc5, 0xedbe, 0xedc2, 0x18ad, 0x18b2,
+  0x18b8, 0x5a0b, 0xedc7, 0x18af, 0xedb0, 0xedca, 0x191a, 0x5b76,
+  0x1920, 0x1921, 0x1930, 0x5ba8, 0x192f, 0xf10d, 0xf107, 0xf196,
+  0xf1ef, 0x195f, 0x1960, 0xf21e, 0xf21d, 0x5c11, 0xf390, 0x5feb,
+  0x008a, 0x1b19, 0x009c, 0x5fee, 0x009a, 0x5fef, 0x5fec, 0x63fa,
+  0x010c, 0x010b, 0x010d, 0x1c92, 0x6504, 0x69d3, 0x01fe, 0x69d1,
+  0x69fa, 0x01ff, 0x01fb, 0x01fc, 0x0209, 0x69c8, 0x0200, 0x69d5,
+  0x1e75, 0x69cd, 0x69d2, 0x69fb, 0x6c2a, 0x6e88, 0x6e61, 0x0271,
+  0x6e63, 0x6e62, 0x206f, 0x5e57, 0x71c8, 0x7198,
+  /* 0x50 */
+  0x032b, 0x73c1, 0x773f, 0x7741, 0x0414, 0x0411, 0x0412, 0x7852,
+  0x0463, 0x785e, 0x046e, 0x049a, 0x79c7, 0x049b, 0x7a70, 0x7b27,
+  0x04c8, 0x7b71, 0x7bb0, 0x04f6, 0x7e42, 0x7e43, 0x26a5, 0x058c,
+  0x0597, 0x05a2, 0x26a0, 0x7e57, 0x7e9d, 0x8289, 0x828d, 0x828b,
+  0x8280, 0x8292, 0x828a, 0x82c8, 0x0654, 0x828f, 0x8293, 0x8291,
+  0x06a8, 0x84f2, 0x84de, 0x06a9, 0x85c8, 0x28b4, 0x28d8, 0x29c2,
+  0x0718, 0x0717, 0x071d, 0x87a7, 0x87a1, 0x0731, 0x8a8c, 0x8a7f,
+  0x07d8, 0x07d5, 0x8a7b, 0x8a95, 0x8a99, 0x07e1, 0x8a8e, 0x07d4,
+  0x8ada, 0x8a8a, 0x8a9c, 0x07e3, 0x8a7e, 0x0844, 0x0845, 0x8d1a,
+  0x8e55, 0x0876, 0x0875, 0x8e60, 0x2ca8, 0x0888, 0x08aa, 0x8ffb,
+  0x08ab, 0x08ac, 0x8ffd, 0x0957, 0x2d83, 0x0960, 0x095d, 0x096b,
+  0x92d0, 0x0963, 0x0967, 0x92c5, 0x095e, 0x92d2,
+  /* 0x51 */
+  0x9311, 0x2dc5, 0x2fcd, 0x09f9, 0x09f3, 0x95ad, 0x95a4, 0x95a9,
+  0x95b0, 0x959d, 0x09f6, 0x9798, 0x309c, 0x0a51, 0x0a53, 0x0a52,
+  0x9992, 0x0a9b, 0x998a, 0x0a9c, 0x998d, 0x9996, 0x0af7, 0x3299,
+  0x328f, 0x3291, 0x9b45, 0x9b4b, 0x9c0f, 0x9c16, 0x0b3b, 0x9c8a,
+  0x0b3e, 0x0b3d, 0x9dc9, 0x0b69, 0x9dc8, 0x9dca, 0x9f64, 0x0bc3,
+  0x0bc4, 0x0bc7, 0x9f5d, 0x9f63, 0x3439, 0x0bc6, 0x342e, 0x0bc8,
+  0x9f88, 0xa03a, 0xa039, 0x349f, 0x34a0, 0x0be6, 0x0bf8, 0xa117,
+  0xa193, 0x0c07, 0xa195, 0x0c64, 0x0c68, 0xa276, 0x3594, 0x0c65,
+  0x35ae, 0xa280, 0xa27b, 0x0c69, 0xa248, 0xa2a8, 0xa288, 0xa38b,
+  0xa38a, 0xa38c, 0xa3fc, 0x0cda, 0x0ce0, 0x36e6, 0xa458, 0x0cde,
+  0xa451, 0xa455, 0xa453, 0x0d1c, 0x0d1d, 0x0d1a, 0xa5dc, 0x0d7b,
+  0x0d7a, 0x0d7c, 0xa75c, 0x0d78, 0x0d77, 0xa765,
+  /* 0x52 */
+  0xf65a, 0x0db1, 0xa8ee, 0x0db2, 0x0db0, 0xa8f0, 0x38bc, 0xa8f2,
+  0x0e36, 0xab35, 0x0e2e, 0xab22, 0x39d6, 0xab20, 0x0e34, 0xab2d,
+  0xab28, 0xab26, 0xab3c, 0x0e2a, 0xab38, 0x0e33, 0x0e2d, 0x0e2f,
+  0x0e31, 0x0e2b, 0x0e32, 0xab2a, 0x0e35, 0xab1a, 0xab30, 0xaae3,
+  0xab19, 0xade9, 0xade7, 0x3acf, 0xafd6, 0xafc4, 0x0f08, 0xaf87,
+  0x0f06, 0xafc7, 0xafd9, 0x3c18, 0xafdf, 0x0f4d, 0x0f61, 0xb20a,
+  0xb201, 0xb2b1, 0x0f78, 0xb2c1, 0x0f94, 0x0f95, 0xb376, 0xb40d,
+  0xb40e, 0x0fc1, 0x0fc3, 0x3e6d, 0xb707, 0x1039, 0xb709, 0xb716,
+  0x103a, 0x103b, 0x1035, 0x1036, 0xb70e, 0x103c, 0x3f90, 0xb706,
+  0xb81e, 0xb84a, 0x1058, 0x107c, 0x107d, 0x108d, 0x108c, 0xbca6,
+  0xbc91, 0x113b, 0x113f, 0xbcb8, 0xbc96, 0x1132, 0x112d, 0xbcc5,
+  0x112f, 0x1139, 0x112e, 0x113a, 0xbd0a, 0x1136,
+  /* 0x53 */
+  0x1131, 0x113e, 0x1138, 0x4252, 0x1134, 0xbcb2, 0x1141, 0xbcb7,
+  0xbcb4, 0xbc89, 0xbc8d, 0x1130, 0xbc87, 0xbcc2, 0xbc9c, 0xbc92,
+  0x1143, 0xbcca, 0x4250, 0xbc8a, 0xbfe0, 0x1198, 0xbfe6, 0xbfe5,
+  0x44a0, 0xc1a5, 0xc1b3, 0x4486, 0x11da, 0x11d7, 0xc1b5, 0xc1af,
+  0x4495, 0xc1b0, 0xc1cc, 0x448c, 0xc1a2, 0xc1be, 0xc1c6, 0xc1ac,
+  0xc1ae, 0x1218, 0x4560, 0xf6c3, 0xc508, 0xc505, 0x1252, 0x4628,
+  0xc4fe, 0x124e, 0x4620, 0xc500, 0x124f, 0x1250, 0xc664, 0xc668,
+  0x46a8, 0x1286, 0x1287, 0x1289, 0xc66a, 0xc669, 0xc70d, 0xc712,
+  0x12a2, 0x12a3, 0xc70f, 0x12a1, 0xc867, 0xc879, 0xc872, 0xc866,
+  0xc87c, 0x12f9, 0x12fd, 0xc868, 0xc885, 0xc876, 0xc874, 0xc871,
+  0xc864, 0x133e, 0x133c, 0xc9f8, 0x134d, 0xca6c, 0x134e, 0xcaeb,
+  0x1381, 0x1383, 0x1382, 0xcbb8, 0x1380, 0x1388,
+  /* 0x54 */
+  0xcd2d, 0xcd2e, 0xcd28, 0xcd29, 0xcd31, 0x13b9, 0xcd2f, 0xcd2a,
+  0x4b3a, 0xcea4, 0xceb7, 0xcebf, 0x1411, 0x140d, 0x1410, 0x1413,
+  0xd063, 0x143c, 0x1462, 0x1463, 0xd167, 0xd3be, 0xf6e0, 0xd595,
+  0xd59c, 0x1503, 0x1506, 0x1502, 0x1501, 0xd671, 0xd672, 0x1505,
+  0xd66f, 0x4e94, 0x5011, 0xd7f1, 0x5037, 0x1536, 0xd7e8, 0x1535,
+  0x5043, 0xf6ea, 0x15a1, 0x15a3, 0xdb49, 0xdb64, 0x15a0, 0xdb48,
+  0x15ea, 0x53a6, 0x15e8, 0xdd2c, 0xdde1, 0xddef, 0xdec0, 0x1621,
+  0x161b, 0xded7, 0xded4, 0x1649, 0x1648, 0xe0ad, 0x5495, 0x1662,
+  0x1661, 0x1664, 0x1660, 0x1663, 0xe0ae, 0xe0ac, 0x5496, 0x1666,
+  0x16ac, 0x16ab, 0xe227, 0xe2ae, 0x16c3, 0xe2b0, 0x16c4, 0x5525,
+  0xe2c0, 0xe2c4, 0x1708, 0x1709, 0x170a, 0x1706, 0x1707, 0x1741,
+  0xe507, 0x1745, 0xe4fd, 0x1743, 0x1744, 0x5626,
+  /* 0x55 */
+  0x5634, 0x1747, 0xf704, 0xe61b, 0xe61c, 0x1771, 0xe6b2, 0xe6b4,
+  0xe6b7, 0xe6b1, 0xe6b3, 0xe6ae, 0x178b, 0x17d4, 0x17d3, 0x17d1,
+  0x57ba, 0x17d2, 0xe83f, 0xe936, 0x17f7, 0x17f8, 0xe931, 0xe93b,
+  0xe935, 0xe93a, 0xe937, 0xea22, 0xea36, 0xea32, 0x1822, 0xeac0,
+  0x1845, 0x1841, 0x5881, 0x1840, 0x588a, 0xeb85, 0x587f, 0x1842,
+  0xeb89, 0x18c1, 0x18c5, 0xede1, 0x18bb, 0x18b9, 0x18bd, 0x18c9,
+  0xee0a, 0x5a11, 0xee09, 0x18bf, 0x18c7, 0xede8, 0x18c3, 0x1924,
+  0x1931, 0x1933, 0xf118, 0x1932, 0x1934, 0x1952, 0x1961, 0x5bd9,
+  0x197a, 0x1982, 0x5c3c, 0xf3c5, 0x1b23, 0x600d, 0x600c, 0x6021,
+  0x1b2c, 0x6216, 0x640e, 0x010f, 0x1c95, 0x6417, 0x0123, 0x0125,
+  0x6a48, 0x0206, 0x0208, 0x1e88, 0x6a55, 0x6a49, 0x6a4c, 0x1e8b,
+  0x6a4f, 0x6a3d, 0x027a, 0x0277, 0x6e8a, 0x6ea8,
+  /* 0x56 */
+  0x708a, 0x032e, 0x71cb, 0x032f, 0x71d5, 0x78d4, 0x041b, 0x0413,
+  0x775c, 0x7775, 0x0466, 0x7861, 0x0465, 0x7096, 0x04f7, 0x7c8a,
+  0x7ed0, 0x26e1, 0x26d7, 0x7e49, 0x7ecf, 0x059c, 0x82d6, 0x827f,
+  0x0653, 0x82d2, 0x82cf, 0x8506, 0x8509, 0x06ba, 0x28a3, 0x0722,
+  0x29d3, 0x8b06, 0x8af1, 0x8b04, 0x2b8b, 0x8afa, 0x8af4, 0x07eb,
+  0x07dd, 0x8af9, 0x07ef, 0x8a8b, 0x8b03, 0x0847, 0x0846, 0x8da2,
+  0x0878, 0x2cac, 0x0889, 0x900c, 0x900b, 0x0968, 0x0976, 0x0974,
+  0x0979, 0x9324, 0x097a, 0x0977, 0xf614, 0x0971, 0x9325, 0x0972,
+  0x95f6, 0x09ff, 0x95fb, 0x0a05, 0x9732, 0x97fb, 0x0a54, 0x98f2,
+  0x98f3, 0x0a9e, 0x0a9f, 0x3174, 0x999c, 0x9b72, 0x0afa, 0x9b74,
+  0x0b44, 0x0b3f, 0x0b40, 0x9c86, 0x0b42, 0x9c8e, 0x9c90, 0x0b51,
+  0x9ccd, 0x9cf7, 0x9dd6, 0x9f84, 0x9f95, 0x9f8a,
+  /* 0x57 */
+  0x3440, 0x0bca, 0x9f97, 0x3441, 0x0bce, 0x0bc9, 0xa0a0, 0xa0a1,
+  0xa122, 0xa1a6, 0xa1a4, 0x0c09, 0x34e8, 0x0c6c, 0x0c6e, 0x0c70,
+  0x0c6d, 0x0c6b, 0x0c71, 0x0c72, 0xa2af, 0xa2b0, 0xa2bd, 0x0c8c,
+  0x0ce4, 0xa476, 0x0ce1, 0xa47b, 0xa479, 0x36f6, 0x0ce7, 0x3700,
+  0x0ce2, 0x0d1f, 0xa5ee, 0xa5f1, 0x0d7e, 0xa794, 0x0d80, 0x3859,
+  0x3855, 0xa791, 0x0db9, 0x0db7, 0x0db8, 0xa910, 0x0dba, 0x38f4,
+  0xa9af, 0x0dd3, 0x0e3f, 0x3a04, 0x0e45, 0x0e41, 0x3a15, 0x0e42,
+  0x0e43, 0x0e3b, 0x0e38, 0xab7b, 0xab77, 0x0e3a, 0x39f5, 0xab80,
+  0xabc6, 0x0e3c, 0xab7c, 0xab90, 0x0e3e, 0xaba3, 0xab7d, 0xabbd,
+  0x0e9e, 0x0e9f, 0x0ea1, 0xae13, 0x0e9b, 0x0f12, 0xb011, 0xb044,
+  0xb00d, 0x0f18, 0x0f0c, 0xb214, 0x0f62, 0xb2b8, 0x0f7a, 0xb2b7,
+  0xb383, 0x0fae, 0x0faf, 0xb414, 0x0fad, 0xb41c,
+  /* 0x58 */
+  0x0fc4, 0x0fc7, 0x0fc6, 0x0fc5, 0xb4d4, 0xb4d5, 0x3fc1, 0x1040,
+  0xb743, 0xb742, 0x103f, 0x1041, 0xf68a, 0xb741, 0xb84e, 0x107f,
+  0xb987, 0x1086, 0x1081, 0x1080, 0x108e, 0x114a, 0xbd39, 0x1147,
+  0xbd8f, 0xbd2a, 0x114b, 0x1146, 0x114e, 0x427d, 0xbd2b, 0x42a5,
+  0xbd50, 0x1148, 0xbd6e, 0x1145, 0xbd3b, 0xbd53, 0xbd5f, 0xbd2f,
+  0xbd30, 0xbd38, 0xbd4c, 0xbff1, 0x11db, 0x11e7, 0x11e4, 0xc207,
+  0xc216, 0x11e1, 0xc214, 0x11e9, 0xc1fb, 0x11e5, 0x11e0, 0x11e3,
+  0xc1f8, 0xc210, 0xc21d, 0xc1ff, 0xc20b, 0xc204, 0x11ea, 0xc1fe,
+  0xc3ff, 0x463a, 0x1254, 0x1258, 0x125c, 0xc523, 0x1255, 0x128b,
+  0x128c, 0x12a6, 0x12a5, 0xc72a, 0xc8a0, 0xc898, 0xc89c, 0x12ff,
+  0xc89e, 0xc8a6, 0xc8b5, 0xc8b0, 0x1330, 0x1340, 0x1341, 0xcaf9,
+  0xcaf5, 0x1386, 0xcbd2, 0x13bf, 0x13bd, 0xcd50,
+  /* 0x59 */
+  0xcd4e, 0xcd4b, 0xcd52, 0xcd4d, 0x13be, 0x1419, 0xcee4, 0x141c,
+  0xceda, 0x141b, 0x1417, 0x1418, 0x4b51, 0xcedf, 0xcee8, 0x143d,
+  0x146a, 0x1466, 0xd170, 0xd172, 0x1467, 0xd177, 0x1468, 0x14ad,
+  0x14ae, 0xd3e6, 0xd5aa, 0x14d6, 0x1509, 0xd68c, 0x4e98, 0xd689,
+  0x150c, 0x150a, 0xd832, 0x153b, 0x153a, 0x5084, 0x5081, 0xd87a,
+  0x506f, 0xda9e, 0xdaa0, 0xdb70, 0x15af, 0x15aa, 0x15ab, 0xdb6e,
+  0xdb66, 0x15b1, 0xdb65, 0x15ac, 0x15ec, 0xdd7f, 0xdde0, 0x1601,
+  0xddff, 0xdef6, 0xdef7, 0xdef5, 0x1623, 0xdefc, 0x1624, 0x161e,
+  0xdef9, 0x164a, 0x1665, 0x166a, 0xe0ca, 0xe0c3, 0xe0c6, 0x1669,
+  0xe1b8, 0xe1bd, 0x1695, 0xe1bc, 0xe205, 0xe2e0, 0xe2e9, 0x5542,
+  0xe2df, 0xe2ec, 0x16cc, 0xe2e5, 0xe2de, 0xf700, 0x16cf, 0xe2f0,
+  0xe2e3, 0x170f, 0xe3ec, 0x170e, 0x170b, 0x1710,
+  /* 0x5a */
+  0x170d, 0x170c, 0xe3f2, 0xe3ef, 0xe3e9, 0xe4fb, 0x1746, 0x1748,
+  0x5637, 0x1749, 0xe537, 0xe6de, 0x1791, 0x178e, 0xe6da, 0x17d8,
+  0x17d6, 0xe84b, 0x17da, 0xe849, 0x17d7, 0xe8d5, 0x57ff, 0x17f9,
+  0xe952, 0xe947, 0x17fc, 0xe948, 0xeacc, 0xead0, 0x58a9, 0x184a,
+  0x58a7, 0x184e, 0x58b3, 0x58ac, 0x58b0, 0xeb86, 0xeba7, 0xeba3,
+  0x589c, 0xebb6, 0xebad, 0xee13, 0x5a3c, 0x5a1c, 0x5a3a, 0x18d3,
+  0x18cd, 0x18d1, 0xee17, 0xee22, 0x5a32, 0x5a34, 0xee49, 0xee26,
+  0xf70c, 0xee3c, 0xee28, 0xf0a8, 0x5bc7, 0xf1fb, 0x1962, 0xf232,
+  0xf2d6, 0xf348, 0x1983, 0x5c3f, 0xf3c6, 0x1992, 0x009f, 0x00a0,
+  0x6025, 0x6026, 0x6024, 0x6033, 0x6170, 0x0127, 0x6790, 0x020b,
+  0x6a95, 0x6aa1, 0x6a92, 0x6a8f, 0x6a9f, 0x6a96, 0x6a98, 0x6a9d,
+  0x6aa0, 0x028d, 0x7097, 0x71eb, 0x0370, 0x7787,
+  /* 0x5b */
+  0x24eb, 0x7b32, 0x059a, 0x059f, 0x059d, 0x7ed8, 0x7efb, 0x7f06,
+  0x059b, 0x7ed1, 0x26d5, 0xf5b0, 0x0660, 0x0664, 0x0669, 0x0663,
+  0x0667, 0x0662, 0x82f6, 0x8304, 0x82fe, 0x2802, 0x82ff, 0x82f7,
+  0x8518, 0x06ac, 0x8514, 0x85cd, 0x8620, 0x87de, 0x0726, 0x0723,
+  0x0725, 0x8b45, 0x8b53, 0x07f8, 0x8b4b, 0x8b55, 0x8b41, 0x07f7,
+  0x07fb, 0x07fa, 0x8b5c, 0x8b54, 0x8e71, 0x8ed0, 0x08b0, 0x08af,
+  0x9053, 0x9329, 0x937e, 0x097e, 0x9379, 0x097d, 0x0980, 0x9370,
+  0x936a, 0x097f, 0x0986, 0x9385, 0x9364, 0x2e12, 0x9378, 0x0981,
+  0x9632, 0x9627, 0x962f, 0x0a24, 0x0a58, 0x0a57, 0x0aa0, 0x99ba,
+  0x0afe, 0x9b71, 0x9b8c, 0x0b15, 0x9c1a, 0x0b47, 0x0b46, 0x9c98,
+  0x9de4, 0x0b6b, 0x0b6c, 0x3385, 0x3454, 0x9fc2, 0x0bcc, 0x9fba,
+  0x3455, 0x9fc8, 0x0bcb, 0x34a7, 0x34a8, 0x0bf9,
+  /* 0x5c */
+  0xa1b9, 0xa1b8, 0xa1a5, 0xa2e2, 0x0c78, 0x0c7a, 0x0c75, 0xa2d9,
+  0x0c76, 0x0c77, 0xa2ac, 0xa2dd, 0x0cea, 0x0cee, 0x0ced, 0xa49d,
+  0x0cec, 0x370f, 0xa611, 0xa603, 0x0d84, 0x0d85, 0x0d83, 0xa7ee,
+  0x0dbc, 0x0dbd, 0x0dd4, 0xaba4, 0xabd8, 0xabdd, 0xabde, 0x0e55,
+  0xabe7, 0x0e50, 0x0e4c, 0x0e48, 0xabd4, 0x0e53, 0xabce, 0x0e57,
+  0x0e54, 0x0e4e, 0x0e4a, 0x0e51, 0xabf1, 0xabd3, 0x0e49, 0x0e4b,
+  0x0e63, 0xabca, 0xabe9, 0x0ea7, 0x0ea6, 0x0ea4, 0xae1a, 0xae41,
+  0xf668, 0x3ae4, 0x3ae5, 0xb03d, 0xb040, 0x3c65, 0x3c4e, 0x0f17,
+  0xb043, 0x0f16, 0xb03f, 0xb03c, 0x0f63, 0xb221, 0xb220, 0x3d82,
+  0xb2c6, 0x0f7b, 0x0f7c, 0xb2d1, 0xb2ca, 0xb38e, 0xb391, 0x0fb0,
+  0x3e2d, 0xb4e3, 0xb788, 0x1042, 0xb770, 0x1044, 0xb89d, 0xb99d,
+  0xb991, 0xb998, 0xb999, 0x1088, 0x108f, 0x1153,
+  /* 0x5d */
+  0x115b, 0xbdbf, 0x1159, 0xbdae, 0xbdb1, 0xbdcc, 0xbe04, 0x42ca,
+  0xbe16, 0xbdcd, 0x1154, 0x42bc, 0xbde0, 0xbdcb, 0xbdd4, 0xbdc9,
+  0xbfff, 0x1199, 0xbffd, 0xc257, 0xc252, 0xc250, 0xc245, 0xc24d,
+  0x11f1, 0xc253, 0x11ef, 0xc282, 0xc244, 0xc3ce, 0xc3cf, 0xc3d2,
+  0xc402, 0xc54f, 0xc558, 0x1262, 0xc543, 0x1263, 0xc552, 0x1260,
+  0x1261, 0x125f, 0xc549, 0xc553, 0xc54d, 0x128d, 0xc684, 0x128e,
+  0xc683, 0xc732, 0xc8e2, 0x1309, 0xc8e4, 0xc8d3, 0x1305, 0xc8d5,
+  0xc8dd, 0x1303, 0x1306, 0xc8ec, 0xc8e6, 0xc8d2, 0xc8fa, 0xc8da,
+  0x1331, 0xca06, 0xca04, 0x134f, 0xca7b, 0xcb04, 0xcb02, 0x1366,
+  0x49ff, 0x13c4, 0xcd60, 0x13c3, 0x13c1, 0x13c5, 0xcf07, 0xcf05,
+  0xcf0c, 0x1421, 0xcf5a, 0x141f, 0x1422, 0xcf1a, 0x1427, 0x1420,
+  0xd18a, 0x146d, 0x146c, 0x146b, 0x146f, 0x1470,
+  /* 0x5e */
+  0xd18c, 0xd409, 0xd6a6, 0x4ea6, 0xd6ac, 0xd6a9, 0x1542, 0xd88b,
+  0x50b6, 0xd88c, 0x1544, 0x1540, 0xd888, 0xd889, 0x153f, 0xd893,
+  0x50ab, 0x158b, 0xdb83, 0xdd4f, 0x1625, 0x1628, 0xdf20, 0x5421,
+  0xe036, 0xe0e2, 0x1675, 0x1672, 0xe0ee, 0x166f, 0xe0e7, 0xe0e9,
+  0x1676, 0x1671, 0x54a7, 0xe0df, 0x1697, 0xe1c7, 0x16d7, 0xe309,
+  0x16d6, 0xe301, 0x16d8, 0x16dc, 0x16db, 0x16d4, 0x553e, 0x1713,
+  0x1711, 0x1714, 0xe405, 0xe40c, 0xe578, 0xe55d, 0x1751, 0x1750,
+  0x1753, 0x1754, 0x1752, 0xe55e, 0xe560, 0xe567, 0x176d, 0xf705,
+  0xe6f4, 0x1795, 0x1799, 0xe6f1, 0x179a, 0xe6fa, 0x1793, 0x1797,
+  0xe6f8, 0xe6f9, 0xe709, 0xe6fd, 0xe6f7, 0x17dc, 0xe859, 0x17fd,
+  0xe960, 0xe968, 0x17fe, 0x1800, 0x1802, 0x1801, 0x1803, 0xe96a,
+  0xea14, 0xea3e, 0xeae4, 0x1827, 0x1826, 0x1824,
+  /* 0x5f */
+  0x184c, 0x58bc, 0x1850, 0x1855, 0x1853, 0x58b7, 0x1852, 0xebd2,
+  0x1857, 0x58be, 0x1858, 0x18d6, 0xee58, 0xee50, 0x18d4, 0xee5c,
+  0x18da, 0x18d9, 0xcf19, 0x5a62, 0x18d5, 0x18e4, 0xf70e, 0x18dc,
+  0x191b, 0x5b8f, 0x1937, 0x1936, 0x194b, 0x5bcb, 0x1966, 0x1976,
+  0xf2df, 0x197e, 0x197d, 0x197f, 0x1984, 0x198b, 0xf3d9, 0x1994,
+  0x00a1, 0x0111, 0x6566, 0x0210, 0x1ea9, 0x6ae1, 0x6aef, 0x6ae8,
+  0x6c33, 0x2013, 0x71fe, 0x0332, 0x21f4, 0x73ef, 0x73ec, 0x75ec,
+  0x779c, 0x0420, 0x7799, 0x7870, 0x786e, 0x049d, 0x7b41, 0x26ec,
+  0x26ef, 0x7f02, 0x7f01, 0x05a5, 0x801b, 0x8323, 0x8325, 0x8324,
+  0x8326, 0x8333, 0x832f, 0x858f, 0x8856, 0x0802, 0x07fe, 0x0801,
+  0x2bd6, 0x0803, 0x07ff, 0x8b99, 0x0804, 0xf5ed, 0x084a, 0x8ed9,
+  0x0987, 0x93b7, 0x0984, 0x93b6, 0x0985, 0x3009,
+  /* 0x60 */
+  0x9654, 0x9657, 0x967a, 0x0a59, 0x3179, 0x9b8e, 0x32c6, 0x9b90,
+  0x9bb9, 0x0b04, 0x0b49, 0x0b48, 0x9def, 0x0b6d, 0x0bd2, 0x0bd3,
+  0x9fe2, 0x0bd1, 0x9fd6, 0x9fd8, 0x9fda, 0x9fde, 0x0be7, 0x0c0a,
+  0x35c3, 0xa308, 0xa304, 0xa30a, 0xa30b, 0xa302, 0x0cf0, 0xa4aa,
+  0xa4c1, 0x371f, 0xa7d7, 0xa7d9, 0x3865, 0xa7de, 0xa7da, 0x0dbe,
+  0x0dbf, 0xa92a, 0x38c6, 0x3a3a, 0xac31, 0x3a36, 0xac2b, 0xac2c,
+  0xac29, 0xac2e, 0x0e5e, 0xac27, 0xac28, 0x0e5b, 0xac5f, 0xac30,
+  0xac24, 0x3aeb, 0x0eab, 0xae3a, 0x0eac, 0xae39, 0xae40, 0xb080,
+  0xb084, 0x0f1f, 0x0f1d, 0xb075, 0xb076, 0x0f1c, 0xb07c, 0x0f1e,
+  0xb078, 0xb09b, 0xb07e, 0xb15a, 0x0f64, 0xb22c, 0x3d84, 0xb39c,
+  0xb747, 0xb78a, 0x1048, 0x1047, 0xb827, 0xbe4a, 0x115e, 0x1161,
+  0xbe27, 0x42e0, 0x42f3, 0xbe2e, 0xbe26, 0xc008,
+  /* 0x61 */
+  0x11f7, 0xc2bd, 0xc296, 0x11f4, 0x11f8, 0x451e, 0xc2be, 0xc28e,
+  0xc574, 0x1264, 0xc580, 0x1292, 0x128f, 0x1290, 0x46b4, 0x1293,
+  0x12a8, 0xc73c, 0xc73d, 0x12a9, 0xc73a, 0xc742, 0x46f9, 0xc924,
+  0xc906, 0x4844, 0x130e, 0xc915, 0x130f, 0xc902, 0xc90c, 0x130b,
+  0xc908, 0xc90a, 0xc905, 0xc91c, 0x1310, 0x1351, 0xca82, 0x1350,
+  0xca86, 0x1363, 0xcc03, 0xcd7b, 0x13c7, 0xcd7a, 0x4b71, 0x1424,
+  0x1426, 0x4b6e, 0xcf80, 0x4b79, 0xcf58, 0x4bc4, 0x1474, 0x1473,
+  0x1472, 0xd1aa, 0xd1ab, 0xd236, 0xd24a, 0x14b1, 0x4d8c, 0xd5d6,
+  0x150e, 0x1511, 0x1510, 0x150f, 0x1512, 0x1549, 0x50c9, 0x154f,
+  0x154d, 0xd903, 0xd8cf, 0x1555, 0xdb9f, 0xdba2, 0xde2a, 0xde2f,
+  0xdf44, 0xdf40, 0x162c, 0x162b, 0xe111, 0xe10f, 0x1679, 0xe10d,
+  0xe107, 0xe103, 0x167a, 0x54b0, 0x1699, 0x169a,
+  /* 0x62 */
+  0xe235, 0x16ae, 0x16af, 0xe304, 0x16e4, 0x16e1, 0x16de, 0x16e6,
+  0x16df, 0xe326, 0x16e7, 0x16e2, 0x16e0, 0xe31e, 0x16e5, 0x555a,
+  0xe40e, 0x1718, 0xe41d, 0xe41e, 0xe41f, 0x1756, 0xe588, 0x5646,
+  0xe58d, 0xe591, 0xe580, 0x176e, 0xe654, 0xe655, 0x179d, 0x17a0,
+  0x179c, 0xe725, 0xe71a, 0x17a1, 0x17a2, 0x179f, 0x17df, 0x17de,
+  0x57c3, 0x17ea, 0xe988, 0x1806, 0xe97a, 0x1804, 0x580f, 0xe980,
+  0xeb1e, 0xebfc, 0xec25, 0x185f, 0x58f4, 0x58fa, 0x185c, 0xec0b,
+  0x185e, 0xec06, 0xec04, 0x58dd, 0x1859, 0xebf9, 0xec00, 0x1864,
+  0x185d, 0x1862, 0xec02, 0x1865, 0xec07, 0x58ed, 0x185b, 0x58ef,
+  0xeeb5, 0x18dd, 0xee87, 0x18df, 0xee93, 0xf70f, 0x18e2, 0xeebe,
+  0xf066, 0x1927, 0xf0c7, 0xf0cf, 0x5b96, 0x193a, 0x193c, 0xf13d,
+  0x1939, 0xf13c, 0xf147, 0x193d, 0x193b, 0x5bb3,
+  /* 0x63 */
+  0x194c, 0xf1c3, 0x1968, 0x5be2, 0xf31b, 0x1980, 0x1985, 0xf3c9,
+  0x1995, 0xf3dd, 0x1996, 0xf493, 0x5c8f, 0x603d, 0x00a4, 0x0112,
+  0x1eb1, 0x0225, 0x6ee6, 0x2141, 0x0337, 0x73f7, 0x77b0, 0x77ae,
+  0x5dfd, 0x0468, 0x0467, 0x049e, 0x7c9f, 0x7c9e, 0x7f30, 0x05aa,
+  0x7f4f, 0x05a9, 0x05a4, 0x7f27, 0x7f51, 0x0671, 0x066f, 0x8351,
+  0x8354, 0x8356, 0x8527, 0x06ad, 0x8524, 0x2bf6, 0x080c, 0x2bf2,
+  0x080b, 0x8bec, 0x8bc4, 0x080f, 0x0879, 0x93f8, 0x93f6, 0x93f7,
+  0x93ed, 0x098d, 0x098f, 0x93f4, 0x93ef, 0x098e, 0x0a0c, 0x967f,
+  0x96a2, 0x967e, 0x0aa6, 0x99c5, 0x0aa3, 0x0aa4, 0x0aa5, 0x3388,
+  0x0b6e, 0x9ff1, 0x9ff2, 0x0bfa, 0xa12f, 0x0c7c, 0x0c7e, 0x0c7b,
+  0x0c7d, 0xa323, 0xa329, 0x0c8d, 0x0cf4, 0x0cf3, 0xa61b, 0xa7eb,
+  0x0d89, 0xa7ea, 0xa933, 0x0dc0, 0xac63, 0x0e65,
+  /* 0x64 */
+  0xac92, 0xac65, 0x0ead, 0x0f25, 0xb0a0, 0xf670, 0xb15e, 0x0fc9,
+  0xb7aa, 0x104a, 0xb7a9, 0x4067, 0x1089, 0xbe9c, 0x1166, 0x1170,
+  0xbe92, 0x116d, 0x1169, 0x1167, 0xbe86, 0x1172, 0x430e, 0x116e,
+  0xbe83, 0x119c, 0x11fc, 0x11fd, 0x1204, 0x11ff, 0xf6c2, 0x11fe,
+  0x1200, 0xc2ce, 0x1266, 0x1269, 0xc593, 0x12aa, 0x12ab, 0x1317,
+  0xc92e, 0xc927, 0xc928, 0x1315, 0x485e, 0x1312, 0x4a0e, 0xcc18,
+  0xcc16, 0xcd8d, 0x13ca, 0xcd8e, 0x13c9, 0x13cb, 0xcd90, 0xcd8f,
+  0xcf81, 0x1429, 0x1428, 0xcf8a, 0xcf8c, 0xd08d, 0x1440, 0x1475,
+  0x1476, 0xd1b2, 0x1488, 0xd5d9, 0x4eb6, 0x1557, 0x5101, 0xd90d,
+  0x155f, 0xd913, 0x511d, 0x1558, 0x155b, 0xd91b, 0x512f, 0xdbac,
+  0x15b3, 0xdbb3, 0x15ef, 0xdf5e, 0x1630, 0xdf60, 0xdf68, 0xdf63,
+  0xdf69, 0xdf67, 0x1641, 0x164b, 0xe128, 0x167d,
+  /* 0x65 */
+  0xe12e, 0xe130, 0x167c, 0xe126, 0xe131, 0xe141, 0x54e0, 0xe1da,
+  0x54db, 0xf6fa, 0xe20b, 0x5561, 0xe334, 0xe333, 0x16e8, 0x16ea,
+  0x16e9, 0xe339, 0xe33b, 0xe340, 0xe430, 0x171b, 0xe432, 0xe437,
+  0x1755, 0x564a, 0x1759, 0x1758, 0xe581, 0xe59f, 0xe5a7, 0x17a4,
+  0x17a3, 0xe744, 0xe747, 0xe748, 0xe73d, 0x5733, 0x17a7, 0xe749,
+  0x17e0, 0xe880, 0xe9a0, 0xe99d, 0x1808, 0x180a, 0x1809, 0xe99c,
+  0xea47, 0xeb07, 0x1871, 0x590f, 0x186c, 0xec49, 0x5911, 0xec44,
+  0x5903, 0x5901, 0x186e, 0xecdf, 0x5916, 0xec4c, 0x5dfd, 0xec4f,
+  0x18e0, 0x18ee, 0xeec1, 0x18eb, 0xeeb9, 0xeecb, 0xeecf, 0xeec4,
+  0x5a93, 0x18ea, 0x18ef, 0x18e7, 0xeeca, 0xeec3, 0xf0d0, 0xf151,
+  0x1948, 0x1949, 0xf1a8, 0xf1c7, 0xf1c6, 0x194d, 0xf1ca, 0xf202,
+  0x1955, 0xf25d, 0xf25a, 0x196a, 0x196c, 0xf259,
+  /* 0x66 */
+  0x196b, 0xf2cc, 0xf31c, 0xf3cc, 0x1998, 0x1999, 0x1997, 0xf3e8,
+  0xf3ec, 0xf3ea, 0xf4ad, 0xf4b0, 0x605f, 0x6058, 0x6057, 0x1d5b,
+  0x6793, 0x0216, 0x6b3b, 0x1ebf, 0x6b34, 0x6ef2, 0x0339, 0x73fd,
+  0x751d, 0x0425, 0x23ce, 0x7a04, 0x7b48, 0x7f58, 0x834f, 0x0674,
+  0x836e, 0x8372, 0x06ae, 0x852e, 0x8bfc, 0x8bf4, 0x9036, 0x940e,
+  0x0992, 0x0994, 0x9414, 0x0995, 0x9419, 0x0a0d, 0x96a6, 0x0a25,
+  0x9bc9, 0x9bc0, 0x9bcc, 0x9c1b, 0x9caa, 0x9ca8, 0xa003, 0x0bd5,
+  0x0bd6, 0x34ac, 0x0be8, 0xa135, 0x0c7f, 0x35d2, 0x0cf5, 0x0cf6,
+  0x0cf7, 0xa4d9, 0x0d24, 0x0d8d, 0x0d8a, 0xa93f, 0xa93d, 0x0e6c,
+  0x0e66, 0x0e6a, 0xac8b, 0x0e67, 0x0e6d, 0x0e68, 0x3a52, 0xac68,
+  0xac8a, 0xae58, 0xae57, 0xb0ce, 0xb0bc, 0xb0c0, 0xb0c1, 0xb0bf,
+  0xb0ab, 0xb15f, 0x0f65, 0xb3a6, 0x0f9a, 0xb429,
+  /* 0x67 */
+  0x0fb1, 0x104b, 0x104d, 0x104c, 0x104e, 0xb7b8, 0x1173, 0x1175,
+  0xbedd, 0xbed6, 0xf6b1, 0xbed5, 0xbee7, 0xbed8, 0xc2ec, 0x1203,
+  0xc300, 0xc307, 0xc2fd, 0xc2f1, 0xc2ff, 0xc5aa, 0xc5b0, 0xc948,
+  0x131e, 0xc953, 0x4873, 0xc94d, 0x1319, 0x131c, 0x131a, 0x131d,
+  0x4876, 0xc943, 0xc950, 0x1343, 0x1352, 0xca8c, 0xcc27, 0x1395,
+  0xcd99, 0x13cc, 0xcfb1, 0x142b, 0xcfb0, 0xcfaa, 0xcfac, 0x142a,
+  0x4bc7, 0x1477, 0xd1c8, 0xd1ca, 0xd442, 0xd5e0, 0xd6e7, 0xd6e8,
+  0xd6e6, 0x1513, 0x1514, 0x5134, 0xd95b, 0xd956, 0x155d, 0xd95a,
+  0x1560, 0x513e, 0x1562, 0xdab8, 0xdbc5, 0x15b2, 0x15f0, 0xde48,
+  0xdf7d, 0xdf7c, 0xdf81, 0xdf82, 0xdf62, 0x164c, 0xe145, 0x1682,
+  0x54bc, 0x1681, 0x169b, 0xe1e3, 0x16a4, 0x16ee, 0x16ec, 0xe350,
+  0x16ed, 0xe34f, 0x16f0, 0x16ef, 0xe439, 0x171d,
+  /* 0x68 */
+  0xe43a, 0x1760, 0x175e, 0x175d, 0xe5c1, 0xe74e, 0xe76e, 0x17b1,
+  0x17ab, 0x17ac, 0x17ad, 0xe771, 0x17ae, 0xe88c, 0xe889, 0x17e2,
+  0xe8e5, 0xe9b3, 0xe9b6, 0xe9b4, 0xea4d, 0x5839, 0xeb13, 0xec78,
+  0x592a, 0x187b, 0x5926, 0x1878, 0x1875, 0x5927, 0xec72, 0x18f2,
+  0x18f4, 0x18f3, 0x5ac0, 0x5ac9, 0xf075, 0xf0da, 0xf0d7, 0x193f,
+  0x193e, 0x1940, 0x194e, 0x1957, 0x1959, 0x1958, 0xf716, 0xf269,
+  0xf267, 0x196e, 0xf266, 0xf26f, 0xf271, 0x5bec, 0xf2cf, 0xf323,
+  0x1981, 0x1986, 0xf3a5, 0x198f, 0xf3fe, 0xf3fb, 0xf3fd, 0x5c68,
+  0x199b, 0x19b1, 0x19b3, 0x6b6d, 0x033a, 0x7405, 0x7520, 0x0427,
+  0x77c8, 0x77c9, 0x046a, 0x05ac, 0x8627, 0x0818, 0x8c1e, 0x8d36,
+  0x084c, 0x943d, 0x0996, 0x99d7, 0x0b4a, 0x9cad, 0x9e00, 0x0c81,
+  0xa33a, 0x0c83, 0x0cf9, 0x0cf8, 0xa626, 0x0d8e,
+  /* 0x69 */
+  0x0d8f, 0x0dc1, 0xacb7, 0xacb6, 0xacc0, 0x0e70, 0xac9b, 0x0e71,
+  0xb0d8, 0x0f2a, 0x0f2d, 0x0f7d, 0x3e32, 0x3e31, 0xb7c0, 0x104f,
+  0xb7bf, 0xb9bf, 0x1090, 0xbf20, 0xbed0, 0xbf0e, 0x1179, 0xbf1d,
+  0xbf1e, 0xbf15, 0xbf14, 0xc31e, 0xc32c, 0x1205, 0xc5b9, 0xc5b8,
+  0xc5b6, 0xc69e, 0xc69c, 0xc74d, 0x46fd, 0xc96e, 0xc960, 0x1321,
+  0xc964, 0xc962, 0xb0e5, 0x1332, 0xcda3, 0x13cd, 0x13cf, 0xd1d2,
+  0xd1d5, 0x4d8e, 0x1516, 0x1515, 0x15b5, 0x1608, 0xde55, 0x1632,
+  0xdf93, 0x1633, 0x1634, 0x163c, 0xe156, 0x54c2, 0xe1e9, 0x169c,
+  0xe245, 0x16f4, 0x16f2, 0xe47c, 0x1762, 0xe5d3, 0x1761, 0x1764,
+  0x17b5, 0x574b, 0x17b4, 0xe78e, 0xe897, 0x17e3, 0xe89b, 0xe899,
+  0x581c, 0x180e, 0xe9cf, 0x581b, 0xea59, 0x182c, 0x182b, 0xeb20,
+  0xeb23, 0xeb2a, 0x1885, 0x1881, 0x187e, 0x1883,
+  /* 0x6a */
+  0x1880, 0xecb0, 0x5942, 0xef2f, 0x5ad4, 0x18fb, 0x18f7, 0xef32,
+  0xef43, 0xef3f, 0xef39, 0x18f8, 0xef30, 0xf0dd, 0xf1da, 0xf1db,
+  0x195a, 0xf284, 0xf27f, 0xf272, 0xf280, 0xf2ee, 0x1978, 0xf32a,
+  0xf322, 0xf371, 0xf3cd, 0x199d, 0x199c, 0xf40f, 0xf418, 0x606a,
+  0x00a9, 0x00bf, 0x1ed0, 0x1ecf, 0x740c, 0x23da, 0x7ca6, 0x0677,
+  0x0676, 0x8537, 0x06bb, 0x29ea, 0x8ee2, 0x099b, 0x96bc, 0x0a0f,
+  0x0a5b, 0x9bd5, 0x0b4c, 0x0b6f, 0x0bd9, 0xa012, 0x0c82, 0xa34b,
+  0xa341, 0xa3a1, 0xa4ec, 0x0e74, 0x0e72, 0xacd4, 0xacd8, 0xacd9,
+  0x0e73, 0xacda, 0xae6c, 0xae6d, 0x0eb1, 0x0f2e, 0xb0e7, 0xb0eb,
+  0xb0ec, 0xb162, 0x0f4e, 0xb42b, 0xb50d, 0xb7cd, 0xb9c3, 0xbf3f,
+  0xbf3c, 0xbf3e, 0xbf3d, 0xbf3a, 0xbf38, 0xc344, 0xc345, 0x120b,
+  0xc348, 0xc350, 0x126c, 0x4889, 0xc978, 0xc979,
+  /* 0x6b */
+  0x138b, 0xcc3e, 0x13d0, 0x142d, 0xd454, 0x14e4, 0x1571, 0xd9b9,
+  0x5158, 0x156f, 0xde5f, 0x1687, 0x16a5, 0xe372, 0xe375, 0x171e,
+  0x1765, 0x17b9, 0x17b7, 0x17b8, 0x17e4, 0xe8a3, 0xe8a5, 0xe9dc,
+  0xe9dd, 0xea5a, 0x188c, 0x1889, 0x188a, 0xecdb, 0xecdc, 0x188b,
+  0xefab, 0xef84, 0xef76, 0x1901, 0x18fe, 0x5ae7, 0x1903, 0x1906,
+  0xef83, 0x5aea, 0x5af1, 0xf07f, 0x191d, 0x1943, 0xf173, 0xf1ad,
+  0xf1b0, 0x194f, 0xf20f, 0xf20c, 0x195b, 0x1970, 0xf379, 0x1988,
+  0xf377, 0xf37a, 0x1989, 0x5c44, 0xf432, 0xf427, 0xf42a, 0xf42c,
+  0x5c6d, 0xf428, 0xf429, 0xf438, 0x642f, 0x6b7b, 0x740d, 0x23d9,
+  0x77d6, 0x77d5, 0x83a1, 0x8c4c, 0x099e, 0x099f, 0x0aa7, 0x0b4b,
+  0x0bdb, 0x0bda, 0xa0c0, 0x35d6, 0x0c8e, 0x0e76, 0xacf4, 0x0f30,
+  0x0f2f, 0xb0f0, 0x0f66, 0xb23f, 0x117e, 0xc35d,
+  /* 0x6c */
+  0xc372, 0xc362, 0x453a, 0xc366, 0x4675, 0x126f, 0xc988, 0x13d1,
+  0x142f, 0xcfe8, 0xcfe4, 0x14b2, 0x1518, 0x1517, 0xd6ff, 0x1576,
+  0xdfaf, 0xdfae, 0x164f, 0x1689, 0xe1f2, 0xe248, 0xe381, 0xe37e,
+  0x16f5, 0x171f, 0xe452, 0xe5ef, 0x575d, 0x17e5, 0xe8ad, 0xe9e6,
+  0x1810, 0xe9ed, 0x180f, 0xe9e9, 0xea61, 0xea60, 0xeb33, 0x182f,
+  0x1830, 0x5964, 0xed0b, 0xed08, 0x1893, 0x1894, 0xed07, 0x1907,
+  0x1909, 0x1908, 0xefca, 0x190b, 0xefc6, 0x5b0a, 0xf084, 0xf0eb,
+  0xf17d, 0x1950, 0x1971, 0xf29b, 0xf2a2, 0xf2a1, 0xf2a0, 0xf29c,
+  0x197b, 0x197c, 0xf380, 0x5c73, 0xf440, 0x19a1, 0xf439, 0xf43c,
+  0x19a0, 0x19a2, 0x64ca, 0x021b, 0x6b89, 0x0282, 0x853c, 0x8d40,
+  0x9463, 0x9469, 0x0be9, 0xa353, 0x0c84, 0x35e1, 0xa817, 0xa81a,
+  0xad00, 0x0eb3, 0x0f34, 0x0f33, 0x1180, 0xc36f,
+  /* 0x6d */
+  0xc6ab, 0x12ad, 0xc991, 0x1344, 0x1355, 0xcdb1, 0x13d2, 0xcfef,
+  0xdbf1, 0xdbf2, 0xdfb7, 0xdfb5, 0x168a, 0xe386, 0xe45a, 0x1767,
+  0xe7c6, 0xe7cb, 0x17e6, 0xe8b2, 0x1813, 0xe9f3, 0x582d, 0xed27,
+  0x1897, 0x5b0c, 0xefd5, 0xefd8, 0x190c, 0xefec, 0xf087, 0xf0f2,
+  0x1946, 0x195c, 0x1974, 0x1972, 0xf2ad, 0xf2b0, 0xf2fd, 0x5c1f,
+  0xf387, 0xf44a, 0x19a4, 0x19a3, 0xf44e, 0xf449, 0xf451, 0xf44d,
+  0x19b4, 0x6072, 0x0136, 0x7416, 0x8c6d, 0x8d41, 0x08b2, 0x9471,
+  0x9474, 0x0b16, 0x3a70, 0x0e77, 0xae7c, 0x117f, 0xbf8a, 0xc756,
+  0x147d, 0x5179, 0xd9fa, 0x544a, 0x168c, 0xe45b, 0x1768, 0x17be,
+  0x1815, 0xeff5, 0xeff0, 0xf0f3, 0xf17f, 0xf213, 0x1975, 0x19a5,
+  0x7419, 0x7f85, 0x83b0, 0x9477, 0xa4ff, 0x0e78, 0x0f35, 0x3c9d,
+  0x1182, 0xbf87, 0x1183, 0xbf8b, 0x1271, 0xc99e,
+  /* 0x6e */
+  0x147e, 0x168e, 0xe38f, 0x5660, 0x1769, 0xe639, 0xe7d4, 0xe8f1,
+  0xea02, 0xea6b, 0xeb40, 0x189a, 0x189b, 0xf010, 0xf2be, 0xf2b9,
+  0x1990, 0xf464, 0x5c9e, 0x9be9, 0xbf90, 0x1186, 0x1185, 0xc01c,
+  0x120e, 0xc392, 0xc6ae, 0xc9a3, 0x1519, 0xdfc9, 0x17c0, 0xe7d8,
+  0xeb44, 0xf024, 0x5bf8, 0x5c3a, 0x5c7d, 0xf470, 0xf4d3, 0x0c0d,
+  0x1816, 0xf2c3, 0x19a9, 0x19aa, 0x0c85, 0xad21, 0xb9ca, 0xc39c,
+  0xea73, 0xf186, 0xf3c1, 0xea09, 0x5c96, 0xf4d5, 0x17c2, 0x1831,
+  0x1911, 0x19ab, 0x189c, 0xdfd4,
+};
+
+static const ucs4_t cns11643_4b_2uni_upages[248] = {
+  0x03400, 0x03500, 0x03600, 0x03700, 0x03800, 0x03900, 0x03a00, 0x03b00,
+  0x03c00, 0x03d00, 0x03e00, 0x03f00, 0x04000, 0x04100, 0x04200, 0x04300,
+  0x04400, 0x04500, 0x04600, 0x04700, 0x04800, 0x04900, 0x04a00, 0x04b00,
+  0x04c00, 0x04d00, 0x05000, 0x05100, 0x05200, 0x05300, 0x05600, 0x05800,
+  0x05900, 0x05b00, 0x05c00, 0x05d00, 0x05e00, 0x05f00, 0x06100, 0x06400,
+  0x06500, 0x06600, 0x06900, 0x06a00, 0x06b00, 0x06f00, 0x07000, 0x07100,
+  0x07200, 0x07300, 0x07400, 0x07500, 0x07600, 0x07700, 0x07800, 0x07900,
+  0x07a00, 0x07b00, 0x07c00, 0x07d00, 0x07e00, 0x07f00, 0x08000, 0x08100,
+  0x08200, 0x08400, 0x08500, 0x08600, 0x08700, 0x08800, 0x08900, 0x08a00,
+  0x08b00, 0x08c00, 0x08d00, 0x08e00, 0x08f00, 0x09000, 0x09100, 0x09200,
+  0x09300, 0x09400, 0x09500, 0x09600, 0x09700, 0x09800, 0x09900, 0x09a00,
+  0x09b00, 0x09c00, 0x09d00, 0x09e00, 0x09f00, 0x0ff00, 0x20000, 0x20300,
+  0x20400, 0x20500, 0x20600, 0x20700, 0x20800, 0x20900, 0x20a00, 0x20b00,
+  0x20e00, 0x20f00, 0x21000, 0x21100, 0x21200, 0x21300, 0x21400, 0x21500,
+  0x21600, 0x21800, 0x21900, 0x21a00, 0x21b00, 0x21c00, 0x21e00, 0x21f00,
+  0x22100, 0x22200, 0x22300, 0x22400, 0x22500, 0x22700, 0x22800, 0x22900,
+  0x22a00, 0x22c00, 0x22d00, 0x22e00, 0x22f00, 0x23000, 0x23100, 0x23200,
+  0x23300, 0x23500, 0x23600, 0x23700, 0x23800, 0x23900, 0x23a00, 0x23b00,
+  0x23c00, 0x23e00, 0x23f00, 0x24000, 0x24100, 0x24300, 0x24400, 0x24500,
+  0x24600, 0x24800, 0x24900, 0x24a00, 0x24b00, 0x24c00, 0x24d00, 0x24e00,
+  0x24f00, 0x25000, 0x25200, 0x25300, 0x25500, 0x25600, 0x25700, 0x25800,
+  0x25900, 0x25a00, 0x25b00, 0x25c00, 0x25d00, 0x25e00, 0x25f00, 0x26000,
+  0x26100, 0x26200, 0x26300, 0x26400, 0x26500, 0x26600, 0x26700, 0x26800,
+  0x26900, 0x26a00, 0x26c00, 0x26d00, 0x26e00, 0x26f00, 0x27000, 0x27100,
+  0x27200, 0x27300, 0x27400, 0x27500, 0x27600, 0x27700, 0x27800, 0x27900,
+  0x27a00, 0x27b00, 0x27c00, 0x27d00, 0x27e00, 0x27f00, 0x28000, 0x28100,
+  0x28200, 0x28300, 0x28400, 0x28500, 0x28600, 0x28700, 0x28800, 0x28900,
+  0x28a00, 0x28b00, 0x28c00, 0x28d00, 0x28e00, 0x28f00, 0x29000, 0x29100,
+  0x29200, 0x29300, 0x29400, 0x29500, 0x29600, 0x29700, 0x29800, 0x29900,
+  0x29a00, 0x29b00, 0x29c00, 0x29d00, 0x29e00, 0x29f00, 0x2a000, 0x2a100,
+  0x2a200, 0x2a300, 0x2a400, 0x2a500, 0x2a600, 0x2f800, 0x2f900, 0x2fa00,
+};
+
diff --git a/graf2d/win32gdk/gdk/src/iconv/cns11643_5.h b/graf2d/win32gdk/gdk/src/iconv/cns11643_5.h
new file mode 100644
index 00000000000..f0e5ebea915
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cns11643_5.h
@@ -0,0 +1,1278 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CNS 11643-1992 plane 5
+ */
+
+static const unsigned short cns11643_5_2uni_page21[8603] = {
+  /* 0x21 */
+  0x3bd1, 0x3bcb, 0x3bc9, 0x3c0c, 0x3b00, 0x3b87, 0x3c0d, 0x3c0f,
+  0xe21d, 0x5e98, 0x3bd2, 0x3c11, 0x3b7e, 0x45d3, 0x5052, 0x57fe,
+  0x60a9, 0x7442, 0x3b09, 0x3bd6, 0x3fdd, 0x3fdc, 0x4002, 0x4073,
+  0x4176, 0x41a7, 0x41a8, 0x4333, 0x43cc, 0x450d, 0x452c, 0x461b,
+  0x015a, 0x461d, 0x4699, 0x4d3e, 0x582d, 0x582f, 0x5e99, 0x6eb3,
+  0x74b6, 0x761b, 0x7fef, 0x83e9, 0x3b14, 0x3b94, 0x3be1, 0x4006,
+  0x404a, 0x4044, 0x4131, 0x417a, 0x41ad, 0x41ae, 0x41b1, 0x4338,
+  0x4337, 0x447d, 0x447e, 0x452d, 0x4532, 0x4623, 0x4626, 0xe23a,
+  0x46a0, 0x51a8, 0x543f, 0x54bc, 0x56c4, 0x583b, 0x5b19, 0x5b18,
+  0x5cb3, 0x5eaa, 0x5fbe, 0x60ac, 0x6525, 0x6566, 0x656b, 0x7443,
+  0x74b5, 0x75ec, 0x7776, 0x08bc, 0x8114, 0x50dc, 0x821c, 0x821d,
+  0x9fd0, 0xa112, 0xa5f3, 0xc169, 0x15b9, 0xc911,
+  /* 0x22 */
+  0xc915, 0xc910, 0xc913, 0x3ba4, 0x3ba5, 0x3cd0, 0x3cba, 0x3ccb,
+  0x407b, 0x4186, 0x41bb, 0x41ba, 0x41c3, 0x41b9, 0x41c0, 0x00de,
+  0x4339, 0x433b, 0x4341, 0x43d1, 0x43cf, 0x43d2, 0x442e, 0x446e,
+  0x448c, 0x4488, 0x4535, 0x0143, 0x453a, 0x453b, 0x4538, 0x4539,
+  0x462e, 0x462c, 0x46c8, 0x46b5, 0x46ad, 0x46b0, 0x46ab, 0x4cb3,
+  0x4ca9, 0x51bb, 0x51b9, 0x565a, 0x56cd, 0x572b, 0x5805, 0x03ac,
+  0x03aa, 0x5851, 0x584b, 0x5aea, 0x5aed, 0x5b36, 0x5b62, 0x5b56,
+  0x5b55, 0x5b64, 0x5b58, 0x1c07, 0x5cda, 0x5cd8, 0x5ead, 0x5eab,
+  0x5fc0, 0x5fc3, 0x60b3, 0x60b7, 0x60ba, 0x1dcb, 0x04fe, 0x60c7,
+  0x60b5, 0x648e, 0x6573, 0x656c, 0x6574, 0xe2b4, 0x6572, 0x6571,
+  0x6582, 0x6570, 0x6c3f, 0x6eba, 0x6eb8, 0x74b7, 0x8223, 0x8221,
+  0x822b, 0x8226, 0x8222, 0x8825, 0x8be4, 0x8f15,
+  /* 0x23 */
+  0x9fe4, 0xa133, 0xa12a, 0xa132, 0xa129, 0xa5fb, 0xb45b, 0xb45c,
+  0xb728, 0xc16f, 0xc16d, 0xc16b, 0xc16e, 0xc916, 0x3b22, 0x3c16,
+  0x3c48, 0x3cd8, 0x3d00, 0x0041, 0x3f80, 0x3fe4, 0x00b4, 0x3fe7,
+  0x400c, 0x4053, 0x40b7, 0x45e8, 0x41d1, 0x41e5, 0x41d8, 0x41d6,
+  0x41da, 0x41d9, 0x41d5, 0x41e6, 0x41d4, 0x41d3, 0x4344, 0x43d6,
+  0x43d7, 0x4413, 0x3afd, 0x4470, 0x4492, 0x44db, 0x44da, 0x4541,
+  0x4543, 0x4633, 0x46f6, 0x46d4, 0x46dd, 0x46d0, 0x4704, 0x46d9,
+  0x46db, 0x4705, 0x46d3, 0x46e1, 0x4d80, 0x4d77, 0x4d81, 0x4d82,
+  0x4d83, 0xe25c, 0x5061, 0x5060, 0x51d8, 0x51d6, 0x51d7, 0x8105,
+  0x544d, 0x5448, 0x56d6, 0x56cf, 0x56d9, 0x56d8, 0x573d, 0x03b3,
+  0x5854, 0x585b, 0x585c, 0x03b4, 0x5859, 0x5858, 0x585a, 0x5855,
+  0x5856, 0x5882, 0x5af0, 0x5b1c, 0x5b6a, 0x5b69,
+  /* 0x24 */
+  0x5b71, 0x5b67, 0x5b6c, 0x5b6e, 0x5b79, 0x5c8b, 0x5cb8, 0x5ce7,
+  0x5ce8, 0x5ce4, 0x5ce6, 0x5ce5, 0x5cf0, 0x5e83, 0x5eb7, 0x5ebb,
+  0x5eb9, 0x5ec5, 0x5f53, 0x5fc4, 0x5fc6, 0x5fcb, 0x60c8, 0xe29f,
+  0x60c9, 0x60db, 0x6494, 0x6595, 0x6588, 0x658d, 0x69ec, 0x69ee,
+  0x69f1, 0x6c2e, 0x6c49, 0x6e5f, 0x6ed1, 0x6ecb, 0x7385, 0x081d,
+  0x744a, 0x7447, 0x744b, 0x74bb, 0x74c4, 0x087c, 0x7602, 0x7782,
+  0x7791, 0x778f, 0x7792, 0x7c8f, 0x7c91, 0x7cb4, 0x7c92, 0x7ff4,
+  0x80aa, 0x8235, 0x8237, 0x823d, 0x823c, 0x822f, 0x8230, 0x83f8,
+  0x83ef, 0x8626, 0x0b55, 0x8826, 0x8827, 0x8a41, 0x8ac6, 0x8ac7,
+  0x8beb, 0x8be8, 0x8bea, 0x8f1a, 0x8f19, 0x0d26, 0x9423, 0x9424,
+  0x9925, 0xa135, 0xa134, 0xa507, 0xad1d, 0xb2e1, 0xb6ab, 0xbf60,
+  0xc177, 0xc17d, 0x15bc, 0xc91e, 0xc91a, 0xc91d,
+  /* 0x25 */
+  0x3b6b, 0x3c2d, 0x3c4c, 0x3d2a, 0x004a, 0x3d15, 0x3d2c, 0x3d06,
+  0x3d08, 0x3d0a, 0x004e, 0x4056, 0x4084, 0x00c9, 0x40c6, 0x41f5,
+  0x4209, 0x41f8, 0x41e8, 0x41fb, 0x41e9, 0x41f6, 0x1ab7, 0x1ab8,
+  0x4352, 0x1ab6, 0x1aba, 0x4354, 0x4351, 0x4439, 0x443a, 0x4498,
+  0x454e, 0x017b, 0x4736, 0x470c, 0x4710, 0x4732, 0x4711, 0x4718,
+  0x471c, 0x471a, 0x4719, 0x470b, 0x470f, 0x471d, 0x4721, 0x4713,
+  0x471b, 0x4715, 0x0220, 0x4cd1, 0x4cc8, 0x4d8d, 0x4db5, 0x0289,
+  0x0295, 0x50f8, 0x51e0, 0x51e1, 0x02be, 0x51de, 0x51fe, 0x51dc,
+  0x5201, 0x51fd, 0x5200, 0x54d7, 0x54d6, 0x54d9, 0x5665, 0x56d2,
+  0x56dc, 0x56e1, 0x56de, 0x5742, 0x574b, 0x03c3, 0x588e, 0x5891,
+  0x588b, 0x5890, 0x5888, 0x5889, 0x5884, 0x58aa, 0x5b8d, 0x5b8f,
+  0x5b7d, 0x5b7f, 0x5b7b, 0x5b80, 0x5b7e, 0x5b83,
+  /* 0x26 */
+  0x5b81, 0x5b86, 0x5b8a, 0x5cbd, 0x5cbe, 0x0477, 0x5cf4, 0x5cf3,
+  0x5d02, 0x5cf6, 0x5cf5, 0x5cf2, 0x5d04, 0x5e3d, 0x5ec6, 0x5f89,
+  0x5fd4, 0x5fd6, 0x5fd2, 0x60fa, 0x6106, 0x610c, 0x610a, 0x610f,
+  0x652f, 0x05d4, 0x65b7, 0x65be, 0x65bc, 0x65e2, 0x6a06, 0x69f7,
+  0x6a07, 0x69f6, 0x7635, 0x6c5f, 0x6c65, 0x6c64, 0x6c61, 0x6c5a,
+  0x6c5d, 0xe2d7, 0x6ed7, 0x6ed5, 0x6ede, 0x6ee1, 0x6ee0, 0x6ed9,
+  0x074c, 0x6eda, 0x6edf, 0x6ef6, 0x6f03, 0x0820, 0x7393, 0x738b,
+  0x7391, 0x7392, 0x738a, 0x7389, 0x738f, 0x7456, 0x7459, 0x74ca,
+  0x74cc, 0x085b, 0x74d0, 0x74cd, 0x74d6, 0x74cb, 0x7583, 0x7582,
+  0x7606, 0x762a, 0x762c, 0x762b, 0x7629, 0x77bd, 0x77b3, 0x77be,
+  0x77c0, 0x77b5, 0x77b6, 0x7c9d, 0x7c9f, 0x8120, 0x0a2d, 0x811e,
+  0x811c, 0x8132, 0x811f, 0x812b, 0x8121, 0x8126,
+  /* 0x27 */
+  0x8124, 0x811d, 0x8127, 0x825b, 0x8259, 0x8280, 0x8255, 0x8250,
+  0x825a, 0x8256, 0x8263, 0x8252, 0x8258, 0x0a63, 0x8239, 0x83f9,
+  0x8628, 0x0b18, 0x86bc, 0x86d6, 0x8705, 0x8720, 0x0b74, 0x8833,
+  0x8a46, 0x8a42, 0x8a43, 0x8a47, 0x8acb, 0x8b42, 0x8b45, 0x8bfd,
+  0x8bf4, 0x8bf9, 0x8bfa, 0x8e5e, 0x8f1d, 0x0d28, 0x9258, 0x9255,
+  0x9557, 0x9558, 0x95d9, 0x95dc, 0x95db, 0x9927, 0x9a85, 0x9a87,
+  0x9a8a, 0x9d8b, 0x9e4f, 0xa030, 0xa02f, 0xa168, 0xa149, 0x0fda,
+  0xa148, 0xa13f, 0xa14b, 0xa15c, 0xa146, 0xa140, 0xa50d, 0xa61b,
+  0xa61d, 0xa617, 0x10a4, 0xa622, 0xb0a7, 0xb108, 0xb306, 0xbf7d,
+  0x148e, 0xbf63, 0xbf64, 0xbf7f, 0xbf6b, 0xbf7c, 0xbf68, 0xbf65,
+  0xbf6a, 0xc198, 0xc199, 0xc1ae, 0xc92b, 0xc92d, 0xc931, 0xc92e,
+  0xc92f, 0x3b6d, 0x3c31, 0x3d2d, 0x3d39, 0x3d38,
+  /* 0x28 */
+  0x005b, 0x3d3a, 0x3d35, 0x3d62, 0x3fea, 0x3feb, 0x4015, 0x40cc,
+  0x40c8, 0x40cd, 0x40db, 0x40cb, 0x4211, 0x4226, 0x4362, 0x435e,
+  0x4361, 0x4441, 0x443f, 0x4475, 0x7465, 0x4649, 0x44eb, 0x451a,
+  0x4557, 0x476b, 0x47a9, 0x4754, 0x4762, 0x47aa, 0x4758, 0x4772,
+  0x4763, 0x4773, 0x478b, 0x478c, 0x475c, 0x4751, 0x4716, 0x4760,
+  0x4761, 0x475e, 0x475d, 0x4764, 0x4753, 0x475f, 0x475b, 0x476e,
+  0x4755, 0x4752, 0x4768, 0x4cd2, 0x4cd6, 0x4cd3, 0x4db8, 0x4dbb,
+  0x4deb, 0x4de8, 0x4db6, 0x4dea, 0x4de7, 0x4de9, 0x5091, 0x5110,
+  0x510e, 0x510f, 0x520b, 0x5203, 0x522b, 0x5209, 0x5228, 0x522c,
+  0x5225, 0x5227, 0x520f, 0x54e9, 0x54ec, 0x0353, 0x5627, 0x5673,
+  0x56e2, 0x56e6, 0xe276, 0x5761, 0x5751, 0x5812, 0x580e, 0x58ad,
+  0x58af, 0x58b1, 0x58d3, 0x5b94, 0x5b92, 0x5b90,
+  /* 0x29 */
+  0x5b9d, 0x5b93, 0x5b95, 0x5b98, 0x5b97, 0x0480, 0xe28a, 0x5d07,
+  0x5d0b, 0x5d08, 0x5ed9, 0x5ed5, 0x5fd7, 0x5fdf, 0x04dd, 0x5fde,
+  0x5fe3, 0x5fe2, 0x04de, 0x6147, 0x0522, 0x613d, 0x6138, 0x6544,
+  0x653a, 0x65b8, 0x662a, 0x6600, 0x65f3, 0x65f2, 0x65eb, 0x65fa,
+  0x65ed, 0x65ec, 0x65ff, 0x65fb, 0x1f06, 0x664e, 0x65ef, 0x65f7,
+  0x6a10, 0x6a11, 0x6a0c, 0x6a0b, 0x6bdd, 0x6c30, 0x06db, 0x6c7a,
+  0x6c77, 0x6e28, 0x6e27, 0x6e65, 0x6f0e, 0x6f0b, 0x6f41, 0x6f13,
+  0x6f0f, 0x6f12, 0x6f30, 0x73a0, 0x73a3, 0x739e, 0x7397, 0x73a1,
+  0x739d, 0x739b, 0x7463, 0x74e3, 0x74e4, 0x74e6, 0x74e7, 0x74dd,
+  0x2185, 0x74ec, 0x74e5, 0x74f1, 0x763b, 0x7639, 0x763a, 0x763c,
+  0x763d, 0x7647, 0x763f, 0x7644, 0x7748, 0x7749, 0x7760, 0x77e3,
+  0x77e9, 0x77f0, 0x08da, 0x08db, 0x77f2, 0x77ed,
+  /* 0x2a */
+  0x77ec, 0x77e6, 0x7816, 0x08d7, 0x7cbc, 0x7cbe, 0x7cc0, 0x7ce0,
+  0x8000, 0x8002, 0x7ffe, 0x805e, 0x80b3, 0x80b7, 0x813a, 0x8139,
+  0x813e, 0x8138, 0x813d, 0x814f, 0x826e, 0x825f, 0x8281, 0x8282,
+  0x8271, 0x827b, 0x8279, 0x8277, 0x8273, 0x826f, 0x8297, 0x827e,
+  0x83fc, 0x8411, 0x8432, 0x8431, 0x8410, 0x85ec, 0x85eb, 0x862c,
+  0x862d, 0x86da, 0x872e, 0x872c, 0x872a, 0x8733, 0x874b, 0x8818,
+  0x8842, 0x883b, 0x883f, 0x8841, 0x8843, 0x883c, 0x8a4c, 0x8a4a,
+  0x8a49, 0x8a56, 0x8acf, 0x8b47, 0x8b48, 0x8b46, 0x8c1b, 0x8c11,
+  0x8c14, 0x8c1d, 0x8c17, 0x8c1e, 0x8c0b, 0x8c1c, 0x8c12, 0x8c16,
+  0x8c0d, 0x8c15, 0x8c13, 0x8c18, 0x0c1a, 0x8eac, 0x8f44, 0x8f2c,
+  0x8f45, 0x9266, 0x926e, 0x9265, 0x9268, 0x9284, 0x9438, 0x943b,
+  0x943a, 0x943f, 0x95df, 0x95dd, 0x95de, 0x95e2,
+  /* 0x2b */
+  0x0dd6, 0x992c, 0x992f, 0x9a8f, 0x9a90, 0x9a8c, 0x9a93, 0x9d25,
+  0x9d88, 0x9da7, 0x9ef7, 0x9fbb, 0xa038, 0xa039, 0xa037, 0xa114,
+  0xa16e, 0xa17b, 0x0fde, 0xa16c, 0xa17f, 0xa178, 0xa17a, 0xa16f,
+  0x0fe5, 0xa3fe, 0xa648, 0xa64b, 0xa641, 0xa649, 0xa63b, 0xad2d,
+  0xb0e3, 0xb11a, 0xb10d, 0xb113, 0xb111, 0xb11c, 0x1272, 0xb3b5,
+  0x12af, 0xb729, 0xb7a1, 0xb824, 0xbabb, 0xbda1, 0xbf83, 0xbf8d,
+  0xbf87, 0xbf85, 0xbf8a, 0xbfa3, 0xbf89, 0xbf84, 0xbfa2, 0xc1b1,
+  0xc1b0, 0xc1af, 0xc1b6, 0xc1c9, 0xc1ca, 0xc1c8, 0xc1b4, 0xc759,
+  0xc7c9, 0xc941, 0xc94c, 0x15c4, 0xc945, 0xc95a, 0x3bb9, 0x3d94,
+  0x3d6e, 0x3da2, 0x3d67, 0x0063, 0x3da3, 0x3d76, 0x3d6c, 0x3d64,
+  0x3da5, 0x3d30, 0x3da6, 0x3d69, 0x3da4, 0x3f90, 0x405f, 0x4060,
+  0x40da, 0x40d8, 0x40dd, 0x00ec, 0x4259, 0x425b,
+  /* 0x2c */
+  0x425a, 0x4239, 0x4234, 0x4244, 0x4233, 0x423c, 0x4258, 0x426a,
+  0x436f, 0x4372, 0x4370, 0x4371, 0x436e, 0x43f0, 0x43eb, 0x4449,
+  0x444c, 0x44f5, 0x4520, 0x456a, 0x4572, 0x464b, 0x465d, 0x4750,
+  0x47f9, 0x47fa, 0x47fb, 0x4823, 0x47b7, 0x4822, 0x47b5, 0x47c4,
+  0x47b4, 0x47ef, 0x0198, 0x47cd, 0x47f0, 0x47b8, 0x47cb, 0x47f1,
+  0x47ba, 0x4803, 0x47f8, 0x47b6, 0x47bc, 0x47b3, 0x4821, 0x47f7,
+  0x47c2, 0x47be, 0x47c9, 0x47bd, 0x47ce, 0x47b9, 0x47c7, 0x47ca,
+  0x47cc, 0x4826, 0x4ce4, 0x4ce0, 0x4cf0, 0x4dec, 0x4e24, 0x4e18,
+  0x4e2f, 0x4e25, 0x5028, 0x5022, 0x506a, 0x3c57, 0x5094, 0x5092,
+  0x509c, 0x5122, 0x5130, 0x511d, 0x5123, 0x5235, 0x5233, 0x522f,
+  0x524d, 0x5231, 0x525b, 0x525a, 0x5232, 0x525c, 0x5259, 0x525d,
+  0x5469, 0x546d, 0x5d32, 0x0358, 0x550a, 0x5520,
+  /* 0x2d */
+  0x551f, 0x550d, 0x56e8, 0x56ec, 0x5777, 0x5770, 0x5771, 0x58f8,
+  0x58d6, 0x58d9, 0x58de, 0x58d5, 0x58e1, 0x03d3, 0x58e2, 0x58dd,
+  0x58e0, 0x590e, 0x5908, 0x58dc, 0x590a, 0x590c, 0x5bb4, 0x5bb1,
+  0x5bb6, 0x5bbc, 0x5d1d, 0x5d24, 0x5d19, 0x5d1b, 0x5d22, 0x5d1a,
+  0x5d1c, 0x5d21, 0x5ee6, 0x5ee4, 0x5ee7, 0x5eea, 0x04e2, 0xe29b,
+  0x5ff0, 0x5ff5, 0x5fef, 0x6142, 0x616e, 0x613c, 0x6197, 0x618c,
+  0x6181, 0x6171, 0x61ce, 0x61ba, 0x617a, 0x617e, 0x0554, 0x6172,
+  0x61bb, 0x052f, 0x6173, 0x6182, 0x05b6, 0x64ba, 0x64b8, 0x654b,
+  0x6548, 0x662b, 0x65f4, 0x662c, 0x6642, 0x6648, 0x6644, 0x6645,
+  0x663c, 0x6637, 0x6633, 0x6641, 0x6632, 0x6687, 0x6a27, 0x6a23,
+  0x6a2d, 0x6a1f, 0x6a2c, 0x6a28, 0x6b75, 0x6b74, 0x6be7, 0x6c32,
+  0x6c31, 0x6c99, 0x6c96, 0x6c98, 0x6c9d, 0x6c92,
+  /* 0x2e */
+  0x6c94, 0x6c95, 0x6c97, 0xa1b9, 0x0735, 0x6f11, 0x6f3b, 0x6f79,
+  0x6f42, 0x6f43, 0x075d, 0x6f78, 0x73ac, 0x0829, 0x73b1, 0x73b4,
+  0x73b3, 0x73af, 0x73aa, 0x73b2, 0x7468, 0x74f2, 0x74fe, 0x74f8,
+  0x74f9, 0x74ff, 0x74f5, 0x74f7, 0x74fd, 0x7500, 0x7588, 0x766e,
+  0x765d, 0x7663, 0x7660, 0x7761, 0x7837, 0x7871, 0x7823, 0x7822,
+  0x781f, 0x7825, 0x7cfd, 0x7d11, 0x7d23, 0x7cf0, 0x7cef, 0x800e,
+  0x800c, 0x80ba, 0x0a1f, 0x8152, 0x8155, 0x8153, 0x8154, 0x8151,
+  0x8158, 0x82b0, 0x829f, 0x0a72, 0x82a1, 0x829a, 0x82be, 0x82a0,
+  0x8437, 0x0b0b, 0x85f1, 0x85f2, 0x8634, 0x8637, 0x8635, 0x5e8c,
+  0x86df, 0x874c, 0x874e, 0x8764, 0x8763, 0x8736, 0x8858, 0x8868,
+  0x885b, 0x885f, 0x8859, 0x8865, 0x8860, 0x885e, 0x8ad5, 0x8ad6,
+  0x8b4e, 0x8b52, 0x8c35, 0x8c39, 0x8c58, 0x8c41,
+  /* 0x2f */
+  0x8c57, 0x8c38, 0x8c3d, 0x8c32, 0x8c44, 0xe344, 0x8e63, 0x8e62,
+  0x8eb8, 0x8eb0, 0x8eb1, 0x8f4d, 0x8f63, 0x8f70, 0x8f4b, 0x8f4f,
+  0x8f4e, 0x8f53, 0x8f47, 0x0ca2, 0x8f54, 0x8f52, 0x8f59, 0x8f7e,
+  0x912b, 0x912e, 0x927f, 0x927e, 0x9281, 0x9283, 0x9447, 0x9454,
+  0x944d, 0x944c, 0x944b, 0x9457, 0x9565, 0x9564, 0x9561, 0x9562,
+  0x95f0, 0x95f3, 0x95f9, 0x95f4, 0x95f5, 0x95ef, 0x95f8, 0x95fc,
+  0x95f7, 0x95fd, 0x9617, 0x9934, 0x9936, 0x9938, 0x9aaf, 0x9aae,
+  0x9aac, 0x9aa2, 0x9d28, 0x69c2, 0x9d9c, 0x9db3, 0x9d90, 0x9f06,
+  0x9f04, 0x9f0b, 0x9f05, 0xa040, 0xa04f, 0xa1ab, 0xa19d, 0xa1b8,
+  0xa1b2, 0xa1d2, 0xa1cf, 0xa1a2, 0x0fec, 0xa1a5, 0xa1a9, 0xa1a7,
+  0xa1d0, 0xa402, 0xa4cf, 0xa4d0, 0xa516, 0xa519, 0xa675, 0xa671,
+  0xa691, 0xa672, 0xa68e, 0xa66d, 0xa688, 0xa673,
+  /* 0x30 */
+  0x10bb, 0xa681, 0xa676, 0xa67b, 0xa67f, 0xa690, 0xa678, 0xad4b,
+  0xad48, 0xad5b, 0xad51, 0xad3d, 0xad40, 0xad46, 0xad4d, 0xad3b,
+  0xad4a, 0xad41, 0xad3e, 0xad4e, 0xb0ac, 0xb0e6, 0xb0e9, 0xb129,
+  0x1221, 0xb133, 0xb12e, 0xb11e, 0x121f, 0xe3c5, 0xb122, 0xb127,
+  0xb2e7, 0xb30b, 0xb466, 0xb6ad, 0xb6ae, 0x3038, 0xb72b, 0xb72a,
+  0xb82c, 0xb82d, 0x1391, 0x1396, 0xb98f, 0xb993, 0xbac6, 0xbac5,
+  0xbd15, 0xbd13, 0xbdb1, 0xbda9, 0x31ce, 0xbfa8, 0xbfab, 0xbfbe,
+  0xbfac, 0xbfa9, 0xbfa6, 0xbfc1, 0xc1cc, 0xc1d1, 0xc1d3, 0xc1e4,
+  0xc1cb, 0xc1e1, 0xc1d2, 0xc1e3, 0xc1cf, 0xc1d0, 0xc1e5, 0xc20e,
+  0xc7cc, 0xc7ca, 0xc7cb, 0xc95c, 0xc961, 0xc95d, 0xc959, 0xcb77,
+  0xd184, 0x3b41, 0x3bfd, 0x3c1a, 0x3c63, 0x3db6, 0x3db2, 0x3de9,
+  0x3de7, 0x3dd6, 0x3e30, 0x3dec, 0x3ddd, 0x3de8,
+  /* 0x31 */
+  0x3db0, 0x3db5, 0x3de1, 0x3f98, 0x3f99, 0x00bc, 0x4093, 0x40e5,
+  0x00d8, 0x4260, 0x425e, 0x00f4, 0x437b, 0x43f1, 0x43f3, 0x457f,
+  0xe238, 0x4657, 0x4658, 0x4839, 0x48a7, 0x4835, 0x4860, 0x4851,
+  0x4862, 0x4842, 0x483c, 0x4843, 0x48ab, 0x48a9, 0x48b4, 0x4879,
+  0x486a, 0x483b, 0x48aa, 0x4833, 0x4837, 0x4827, 0x48a8, 0x4870,
+  0x482f, 0x4836, 0x48b5, 0x4830, 0x483a, 0x4838, 0x48b1, 0x48ac,
+  0x482e, 0x4875, 0x48b0, 0x4cf7, 0x4d00, 0x4cf1, 0x4cf3, 0x4e60,
+  0x4e61, 0x4e32, 0x4e2d, 0x4e4a, 0x4e2a, 0x5067, 0x50a2, 0x50a3,
+  0x509e, 0x50a4, 0x5144, 0x5132, 0x529b, 0x5298, 0x5299, 0x529a,
+  0x5266, 0x5262, 0x526b, 0x8062, 0x5267, 0x553b, 0x5523, 0x5529,
+  0x567e, 0x56f3, 0x0385, 0x56f5, 0x0383, 0x5780, 0x577e, 0x577c,
+  0x577f, 0x577d, 0x5781, 0x5925, 0x5929, 0x5917,
+  /* 0x32 */
+  0x5963, 0x5967, 0x5965, 0x592a, 0x5968, 0x5926, 0x5964, 0x591b,
+  0x5962, 0x5969, 0x5afe, 0x5b44, 0x5b42, 0x5bb7, 0x5bd2, 0x5bd4,
+  0x5bd7, 0x5bdc, 0x5bd1, 0x5bd5, 0x5bcd, 0x5bd8, 0x5c9a, 0x5d42,
+  0x5d35, 0x5d58, 0x5d34, 0x5d3c, 0x5d3b, 0x5d3e, 0x5d3d, 0x5d5a,
+  0x5d41, 0x5d38, 0x5d45, 0x5d33, 0x5e26, 0x04ba, 0x5ef7, 0x5eef,
+  0x5ef0, 0x5eee, 0x5f9d, 0x6006, 0x6011, 0x6008, 0x6002, 0x600a,
+  0x6007, 0x6191, 0x618e, 0x6185, 0x61e8, 0x6217, 0x61d4, 0x0569,
+  0x61c4, 0x61d5, 0x0545, 0x61d8, 0x6180, 0x61de, 0x6242, 0x64c7,
+  0x64bf, 0x668d, 0x6689, 0x6690, 0x669a, 0x66c8, 0x6692, 0x66a1,
+  0x6684, 0x6a57, 0x6a47, 0x6a77, 0x6a3a, 0x6a50, 0x6a42, 0x6a43,
+  0x6aa3, 0x6b77, 0x6cb2, 0x6ce2, 0x6cbd, 0x6e74, 0x6f82, 0x6fb8,
+  0x076c, 0x6fba, 0x6fb9, 0x6fbb, 0x6f87, 0xe2e4,
+  /* 0x33 */
+  0x6f83, 0x6fb7, 0x3b43, 0x73ce, 0x73ba, 0x7473, 0x7509, 0x750a,
+  0x750b, 0x7507, 0x7505, 0x750e, 0x7597, 0x7677, 0x767b, 0x767a,
+  0x7674, 0x7679, 0x7886, 0x78f5, 0x78a5, 0x789d, 0x78be, 0x7896,
+  0x78e1, 0x78a4, 0x78a1, 0x78f6, 0x0904, 0x788d, 0x788b, 0x7878,
+  0x7898, 0x790a, 0x7d5d, 0x7d27, 0x7d5f, 0x80c0, 0x80c1, 0x816d,
+  0x815e, 0x818a, 0x8162, 0x8164, 0x0a3a, 0x82c0, 0x82ca, 0x82d1,
+  0x0a79, 0x82c7, 0x82ce, 0x2309, 0x82c5, 0x8436, 0x8457, 0x8477,
+  0x85f6, 0x85f7, 0x8655, 0x8644, 0x863e, 0x8642, 0x8652, 0x86e1,
+  0x8708, 0x8768, 0x8767, 0x0b5d, 0xe337, 0x887e, 0x8893, 0x8879,
+  0x8881, 0x887d, 0x887b, 0x8894, 0x0b8a, 0x8a66, 0x8ad9, 0x8ae0,
+  0xe33e, 0x8b5f, 0x8c5f, 0x8c5e, 0x8c68, 0x0c27, 0x8c88, 0x8c6a,
+  0x8c6c, 0x8c66, 0x8c67, 0x8c89, 0x8c60, 0x8c85,
+  /* 0x34 */
+  0x3e2a, 0x8e68, 0x8eb9, 0x8eba, 0x8ebe, 0x8f6f, 0x8f80, 0x8f74,
+  0x8f81, 0x8f7a, 0x8f9c, 0x8f73, 0x8f82, 0x8f7f, 0x8fa7, 0x8f79,
+  0x8f78, 0x8f7d, 0x8fa8, 0x8f7c, 0x9168, 0x914e, 0x929e, 0x0d46,
+  0x0d40, 0x9298, 0x0d3f, 0x9285, 0x929c, 0x92c5, 0x929a, 0x9468,
+  0x9465, 0x9467, 0x9461, 0x9460, 0x0d9d, 0x0dcb, 0x957b, 0x0de1,
+  0x9619, 0x960e, 0x9631, 0x9612, 0x9610, 0x9615, 0x963f, 0x961d,
+  0x961e, 0x994d, 0x9948, 0x9945, 0x9942, 0x9949, 0x994a, 0x9947,
+  0x0e7f, 0x994c, 0x9acd, 0x9ad5, 0x9ac4, 0x9aca, 0x9ac3, 0x0f46,
+  0x9d29, 0x9db4, 0x9e6d, 0x9e66, 0x9e6a, 0x9f15, 0x9fd3, 0x9fec,
+  0xa055, 0x101a, 0xa1d6, 0xa1d8, 0xa251, 0xa1e0, 0xa203, 0xa204,
+  0xa1da, 0xa1ea, 0xa202, 0xa1d3, 0xa1e4, 0xa1e5, 0xa43b, 0xa466,
+  0xa52c, 0xa521, 0xa526, 0xa5d4, 0xa5d5, 0xa5d9,
+  /* 0x35 */
+  0xa6d5, 0xa6eb, 0xa6c5, 0x10d3, 0xa727, 0xa6f0, 0xa6b9, 0xa718,
+  0xa6ee, 0x10d0, 0xa6b7, 0xa6bb, 0xa6ef, 0xa6b8, 0xa6df, 0xa6da,
+  0xa6e3, 0xa6c9, 0xa6ec, 0xaca4, 0x118e, 0xaca3, 0xad5e, 0xad61,
+  0xad62, 0xad63, 0xad8e, 0xad69, 0xad6b, 0xad85, 0xad8d, 0xad64,
+  0xad6d, 0xb14c, 0xb149, 0xb147, 0xb148, 0xb142, 0xb145, 0xb15b,
+  0xb15d, 0xb146, 0xb313, 0xb31a, 0xb30e, 0xb30f, 0xb31b, 0xb312,
+  0xb3c3, 0xb3be, 0xb3bd, 0xb479, 0xb47c, 0x12c3, 0x12b6, 0xb480,
+  0xb475, 0xb49b, 0x2f2f, 0xb474, 0x12c0, 0x12b8, 0x5b41, 0x5f94,
+  0xb730, 0xb7a7, 0xb7a5, 0xb7a4, 0xb83a, 0xb95b, 0xb99f, 0xb9a8,
+  0xb9b3, 0xb9a1, 0xb9a7, 0xb9b2, 0xb99d, 0xb9a3, 0xb9a2, 0xbaef,
+  0xbad9, 0x13d9, 0xbad5, 0xbadd, 0xbada, 0xbaee, 0xbad7, 0xbd1a,
+  0xbd19, 0xbd18, 0xbdb3, 0xbdbf, 0xbdbb, 0xbdc0,
+  /* 0x36 */
+  0xbdb9, 0xbdb8, 0xbdd5, 0xbf11, 0xbf10, 0xbfc3, 0xbfc2, 0xbfe9,
+  0xbfcd, 0xbfe5, 0xbfca, 0xbfc7, 0xbfe8, 0xc1f1, 0xc20c, 0xc1ef,
+  0xc1ee, 0xc1f3, 0xc20d, 0xc1f6, 0xc1f0, 0x14ec, 0xc2f5, 0xc2f4,
+  0xc2f8, 0xc2fe, 0xc411, 0xc422, 0xc442, 0xc75c, 0xc75a, 0xc75d,
+  0xc7d1, 0xc7d0, 0xc975, 0xc97b, 0xca89, 0xcf4d, 0xd189, 0xd192,
+  0xd18c, 0xd188, 0xd367, 0xd368, 0x3e21, 0x3df2, 0x3e09, 0x3df8,
+  0x3df0, 0x3df3, 0x3df5, 0x3dfb, 0x3df7, 0x3def, 0x3e0b, 0x3fa2,
+  0x40f5, 0x40f3, 0x40f4, 0x40f2, 0x4198, 0x4268, 0x4280, 0x4285,
+  0x428e, 0x428f, 0x3df4, 0x4286, 0x42a4, 0x4386, 0x4389, 0x4387,
+  0x4385, 0x1adc, 0x4388, 0x45ff, 0x4666, 0x01cc, 0x48c3, 0x01a2,
+  0x48c4, 0x493b, 0x48e7, 0x48f8, 0x48fb, 0x01b6, 0x48be, 0x48c6,
+  0x01c5, 0x01c6, 0x48fc, 0x48c0, 0x4933, 0x48c9,
+  /* 0x37 */
+  0x48fe, 0x48da, 0x48cc, 0x48bb, 0x48fd, 0x48df, 0x48cd, 0x48c2,
+  0x48c8, 0x4932, 0x492d, 0x48d2, 0x4931, 0x48d3, 0x492e, 0x48cf,
+  0x4cff, 0x4d09, 0x4cfc, 0x4e72, 0x4eaa, 0x4eab, 0x4ea7, 0x4e7b,
+  0x4e76, 0x4ea8, 0x4eac, 0x0283, 0x1b21, 0x50aa, 0x4503, 0x50ac,
+  0x50ad, 0x50ab, 0x5150, 0x5158, 0x52dd, 0x02f8, 0x52ae, 0x52a2,
+  0x52ab, 0x52e3, 0x52af, 0x52e0, 0x52e4, 0x02f6, 0x52a7, 0x52aa,
+  0x52e2, 0x52e1, 0x52df, 0x52ad, 0x52e5, 0x52d1, 0x52ac, 0x52d5,
+  0x52a3, 0x529f, 0x5479, 0x5476, 0x5543, 0x553d, 0x5547, 0x5544,
+  0x553f, 0x555b, 0x567f, 0x579a, 0x579c, 0x039b, 0x581e, 0x5988,
+  0x596a, 0x5976, 0x5972, 0x5970, 0x597e, 0x596c, 0x596f, 0x5975,
+  0x5977, 0x5978, 0x598a, 0x5979, 0x5994, 0x5b01, 0x5c05, 0x5bf1,
+  0x5bee, 0x5bef, 0x5c04, 0x1c3f, 0x5bfa, 0x5c07,
+  /* 0x38 */
+  0x5bf4, 0x5bf5, 0x5c9c, 0x5d6d, 0x5d69, 0x5d66, 0x5d62, 0x5d46,
+  0x048d, 0x5d65, 0x5d5d, 0x5d5e, 0x5d5f, 0x5e8e, 0x5f02, 0x5f06,
+  0x5f04, 0x5f03, 0x5f62, 0x6027, 0x6021, 0x6020, 0x6024, 0x6029,
+  0x6031, 0x6023, 0x6022, 0x61dc, 0x624d, 0x61e5, 0x61d3, 0x61ee,
+  0x61e6, 0x0556, 0x6236, 0x6240, 0x633f, 0x623d, 0x6244, 0x055b,
+  0x625f, 0x6229, 0x6249, 0x628a, 0x622a, 0x6287, 0x624c, 0x6231,
+  0x6248, 0x622b, 0x623b, 0x6241, 0x61c9, 0x6234, 0x6253, 0x6235,
+  0x6247, 0x6238, 0x64d1, 0x64d2, 0x6551, 0x6555, 0x6552, 0x6553,
+  0x668f, 0x66f4, 0x6747, 0x670d, 0x671c, 0x66fb, 0x6719, 0x66f7,
+  0x66f9, 0x66f5, 0x66e9, 0x670a, 0x66ee, 0x670b, 0x66fd, 0x6706,
+  0x6702, 0x6716, 0x6718, 0x66f0, 0x69d4, 0x6a66, 0x6a6a, 0x6a75,
+  0x6a76, 0x6a80, 0x6a6d, 0x0696, 0x6a69, 0x6a67,
+  /* 0x39 */
+  0x6a68, 0x6a5d, 0x6ba4, 0x6bfe, 0x6bfd, 0x6cec, 0x6ce9, 0x6d21,
+  0x6ceb, 0x6ce7, 0x6cf2, 0x6d20, 0x6e7a, 0x702d, 0x702e, 0x6fca,
+  0x702f, 0x6fc8, 0x077e, 0x6fcb, 0x6fc3, 0x6f84, 0x6fd2, 0x6fc6,
+  0x0781, 0x6fcf, 0x6fd5, 0x6fd4, 0x6fdd, 0x702b, 0x70a3, 0x6fdb,
+  0x702c, 0x7013, 0x0835, 0x73d1, 0x73cc, 0x73d5, 0x73c9, 0x73cf,
+  0x73d2, 0x747b, 0x747c, 0x7523, 0x751d, 0x751c, 0x751e, 0x7522,
+  0x7524, 0x7520, 0x7518, 0x7521, 0x7688, 0x768a, 0x7694, 0x768f,
+  0x768e, 0x7690, 0x089b, 0x76a7, 0x7764, 0x0900, 0x7918, 0x7914,
+  0x791d, 0x7905, 0x78ff, 0x791b, 0x791a, 0x7919, 0x7903, 0x790e,
+  0x7947, 0x7904, 0x795a, 0x7907, 0x7920, 0x7d6a, 0x7d66, 0x7d7a,
+  0x7d65, 0x7daf, 0x80cd, 0x80cf, 0x80d1, 0x80ce, 0x815f, 0x8177,
+  0x8174, 0x8188, 0x8175, 0x8189, 0x8172, 0x82c6,
+  /* 0x3a */
+  0x82ea, 0x82e0, 0x8307, 0x82e6, 0x82e5, 0x82dd, 0x82e3, 0x82da,
+  0x84ae, 0x847e, 0x847d, 0x847f, 0x0ad3, 0x84d9, 0x85fa, 0x85fb,
+  0x864d, 0x8654, 0x8651, 0x8650, 0x8898, 0x8895, 0x889d, 0x88c1,
+  0x889a, 0x889b, 0x0b9f, 0x889c, 0x88d7, 0x88a4, 0x8896, 0x88a0,
+  0x8a31, 0x8ae9, 0x8b6e, 0x8c9a, 0x8ca5, 0x8c94, 0x8ca6, 0x8c99,
+  0x8c8b, 0x8c98, 0x8c91, 0x8c8c, 0x8ca1, 0x8ca3, 0x8cc6, 0x8e6f,
+  0x8e6d, 0x8e6a, 0x8e6c, 0x8e71, 0x8e6e, 0x8edf, 0x8fac, 0x8faa,
+  0x0cb1, 0x8fb5, 0x8fad, 0x8fb2, 0x8fb3, 0x8fab, 0x8fb6, 0x8fc7,
+  0x8fc6, 0x916c, 0x9170, 0x92b3, 0x0d4b, 0x948c, 0x9481, 0x9483,
+  0x947d, 0x9485, 0x9490, 0x94a2, 0x948d, 0x948f, 0x947e, 0x948a,
+  0x947f, 0x9476, 0x9487, 0x9478, 0x9580, 0x9582, 0x9581, 0x9583,
+  0x965a, 0x9634, 0x962c, 0x962a, 0x9640, 0x962d,
+  /* 0x3b */
+  0x9633, 0x962b, 0x964b, 0x283f, 0x963c, 0x995a, 0x9977, 0x9960,
+  0x9afa, 0x9af9, 0x9afc, 0x0ed6, 0x9af5, 0x9ae8, 0x9b09, 0x9ae7,
+  0x9ae6, 0x9ae9, 0x9d32, 0x9d2c, 0x9dbd, 0x9dbc, 0x9e7a, 0x9e7e,
+  0x9e79, 0x0f89, 0x9f23, 0x9f30, 0x9f28, 0x9fd4, 0xa5ce, 0x9ff1,
+  0x9ff0, 0xa060, 0xa065, 0xa1a8, 0xa20a, 0xa21b, 0xa212, 0xa207,
+  0xa24f, 0xa20e, 0xa252, 0xa216, 0x1000, 0xa253, 0xa254, 0xe384,
+  0xa256, 0xa46d, 0xa472, 0xa52f, 0xa72a, 0x10dc, 0xa763, 0xa784,
+  0xa7af, 0xa745, 0xa770, 0xa756, 0xa716, 0xa73d, 0xa738, 0xa76f,
+  0xa777, 0xa72e, 0xa731, 0xa74c, 0xa75f, 0xa775, 0xa739, 0xa73a,
+  0xa72c, 0xa72d, 0xa73f, 0xa72f, 0xa730, 0xa73e, 0x2ad0, 0x1190,
+  0xacb2, 0xadb7, 0xad8f, 0x11b1, 0xad96, 0xad9e, 0xad97, 0xad95,
+  0xada5, 0xad98, 0x2be7, 0xada3, 0xad9a, 0xadad,
+  /* 0x3c */
+  0xada6, 0xadb6, 0xad99, 0xadaf, 0xadac, 0x11aa, 0xad9f, 0xad94,
+  0xb0eb, 0xb16f, 0xb16d, 0xb17e, 0xb16c, 0xb161, 0xb163, 0xb16b,
+  0xb15e, 0xb13e, 0xb164, 0xb1ad, 0x127d, 0xb320, 0xb3d1, 0xb3d5,
+  0xb4ae, 0xb4af, 0xb49f, 0xb4a8, 0xb4ca, 0xb6e1, 0xb739, 0xb738,
+  0xb73b, 0xb7ad, 0xb7b5, 0xb7af, 0xb7b1, 0xb7ae, 0xb7b4, 0xb7b0,
+  0xb84b, 0xb851, 0xb84c, 0x1369, 0xb860, 0xb9be, 0xb9b9, 0xb9b7,
+  0xb9b6, 0x13a1, 0xb9bd, 0xb9b8, 0xb9c1, 0xbaf7, 0xbaf3, 0xbaf4,
+  0xbafb, 0xbafd, 0xbaf5, 0x13e7, 0xbafa, 0xbb14, 0x13ec, 0xbaf2,
+  0xbafc, 0xbb00, 0x13df, 0xbd2b, 0xbd29, 0xbd2e, 0x1433, 0xbdd7,
+  0xbddb, 0xbdd9, 0xbdd8, 0xbde6, 0xbdd6, 0xbdd1, 0xbde7, 0xbdd0,
+  0xbddc, 0xbfed, 0xc01a, 0xc019, 0xc016, 0xbfec, 0xbfef, 0xbfee,
+  0xbff4, 0xc02f, 0xc230, 0xc219, 0xc218, 0xc211,
+  /* 0x3d */
+  0xc216, 0xc212, 0xc210, 0xc214, 0xc30c, 0xc30d, 0xc410, 0xc429,
+  0xc428, 0xc765, 0xc766, 0xc7de, 0xc7df, 0xc7e0, 0xc7d9, 0xc7db,
+  0xc7d8, 0xc7e3, 0xc7d7, 0xc9a6, 0xc9a7, 0xc9bf, 0xc9a8, 0xc99f,
+  0xc9a1, 0xc9a2, 0xc9ad, 0xc9a3, 0xc9a0, 0xcb83, 0xcb85, 0xcb82,
+  0xcb84, 0xccee, 0xcd5d, 0xce92, 0xcf55, 0xcf53, 0xe3fc, 0xcf51,
+  0xcf52, 0xcf50, 0xd09d, 0xd187, 0xd197, 0xd19b, 0xd19d, 0xd369,
+  0xd511, 0x17ee, 0xd77a, 0x1832, 0x6d44, 0x3bc6, 0x3e40, 0x3e2e,
+  0x3e68, 0x3e2d, 0x3e34, 0x3e32, 0x3e69, 0x3e31, 0x3e6a, 0x3e3e,
+  0x3e6f, 0x3e75, 0x3ff6, 0x4020, 0x4028, 0x4067, 0x40fb, 0x40fe,
+  0x40fc, 0x40fd, 0x40ff, 0x40fa, 0x42ac, 0x42af, 0x42b1, 0x00fc,
+  0x42bf, 0x42be, 0x42a7, 0x42aa, 0x4394, 0x4393, 0x4399, 0x012a,
+  0x43fa, 0x4456, 0x4522, 0x4591, 0x4592, 0x4608,
+  /* 0x3e */
+  0x4606, 0x48d6, 0x4937, 0x494b, 0x49ce, 0x49d0, 0x4939, 0x4964,
+  0x49cf, 0x4946, 0x4966, 0x4956, 0x4943, 0x494a, 0x4958, 0x4965,
+  0x495a, 0x495b, 0x4955, 0x4950, 0x494c, 0x49cd, 0x4951, 0x4947,
+  0x01d3, 0x4953, 0x4962, 0x49cc, 0x01d7, 0x497f, 0x494d, 0x4d0a,
+  0x4d0c, 0x4d0f, 0x4ebb, 0x4eb9, 0x4eeb, 0x4eae, 0x4ec1, 0x4eea,
+  0x4ebe, 0x4ebf, 0x4eba, 0x4eb7, 0x4eb3, 0x4ee9, 0x506e, 0x50af,
+  0x50b3, 0x50b2, 0x5168, 0x5169, 0x516a, 0x52de, 0x52eb, 0x5311,
+  0x52ed, 0x52e9, 0x52f7, 0x52f4, 0x52ea, 0x5312, 0x52e8, 0x5313,
+  0x548e, 0x5486, 0x5563, 0x5565, 0x5699, 0x57c2, 0x57ae, 0x57b0,
+  0x57ad, 0x59b4, 0x59d1, 0x59ad, 0x03f3, 0x59bd, 0x59b7, 0x59ab,
+  0x59af, 0x59c1, 0x59b5, 0x5c0f, 0x5c0e, 0x5c1c, 0x5c13, 0x5c0a,
+  0x5c1e, 0x5c14, 0x5c1a, 0x5ccb, 0x5d87, 0x5d93,
+  /* 0x3f */
+  0x0491, 0x5d84, 0x5d85, 0x5d92, 0x5d80, 0x5e2b, 0x5e63, 0x5f0a,
+  0x04c0, 0x5f66, 0x6034, 0x6033, 0x604d, 0x6289, 0x6257, 0x1e17,
+  0x624a, 0x0563, 0x6239, 0x623f, 0x6290, 0x628f, 0x62b2, 0x629f,
+  0x6295, 0x62a1, 0x629c, 0x628e, 0x62a0, 0x62ae, 0x6296, 0x62ca,
+  0x62ac, 0x0570, 0x62a6, 0x6297, 0x6293, 0x3eb6, 0x64d6, 0x64e0,
+  0x64d8, 0x6556, 0x676e, 0x677e, 0x6774, 0x6777, 0x6780, 0x677a,
+  0x676b, 0x675f, 0x6776, 0x67b0, 0x6763, 0x6a92, 0x6a82, 0x6a9d,
+  0x6a94, 0x6a83, 0x6a8b, 0x6a84, 0x6b57, 0x6b84, 0x6bb5, 0x6c09,
+  0x6ce6, 0x0702, 0x6d25, 0x6d51, 0x6e3e, 0xe2da, 0x6e85, 0x703f,
+  0x7042, 0x7038, 0x703a, 0x704e, 0x7045, 0x7039, 0x7037, 0x7044,
+  0xe2e7, 0x70a4, 0x703d, 0x7041, 0x73df, 0x73de, 0x73ca, 0x73e9,
+  0x73e2, 0x73e0, 0x7489, 0x7487, 0x7532, 0x7533,
+  /* 0x40 */
+  0x75ac, 0x75f9, 0x760d, 0x76b9, 0x795e, 0x796a, 0x0935, 0x7981,
+  0x7969, 0x79ac, 0x7980, 0x7975, 0x7971, 0x7976, 0x796f, 0x7db6,
+  0x7e03, 0x7dbf, 0x7e01, 0x7db2, 0x7dc4, 0x80db, 0x80dc, 0x80d8,
+  0xd172, 0x81b5, 0x81a8, 0x818f, 0x819e, 0x818e, 0x82de, 0x82e2,
+  0x8320, 0x831d, 0x831a, 0x8319, 0x832b, 0x8318, 0x8310, 0x830e,
+  0x8324, 0x831f, 0x8313, 0x8335, 0x8483, 0x0ae0, 0x84d7, 0x8602,
+  0x8603, 0x865c, 0x865f, 0x86c7, 0x879a, 0x8797, 0x87a3, 0x88f7,
+  0x88c6, 0x88cc, 0x88d6, 0x88cd, 0x88f9, 0x88d9, 0x88d8, 0x0b9a,
+  0x88d1, 0x88ce, 0x88d5, 0x0ba3, 0x88d4, 0x88f8, 0x8a7a, 0x8a79,
+  0x8a7f, 0x8af3, 0x8af5, 0x8af6, 0x8af4, 0x8af7, 0x0c05, 0x8b79,
+  0x8c9c, 0x8cdf, 0x8cf5, 0x8cff, 0x8cd1, 0x8cda, 0x8ccf, 0x8ccd,
+  0x8cde, 0x8cd8, 0x75ad, 0x8ce0, 0x8cfe, 0x8c9e,
+  /* 0x41 */
+  0x8e75, 0x8e73, 0x8e72, 0x8ed8, 0x8fd0, 0x8fd6, 0x8fd7, 0x8fca,
+  0x8fcd, 0x918a, 0x9189, 0x918b, 0x92d3, 0x92da, 0x92ce, 0x92d2,
+  0x0d5e, 0x92d4, 0x92d7, 0x92d5, 0x92fb, 0x92cd, 0x92fa, 0x92d6,
+  0x0da6, 0x949b, 0x949e, 0x949d, 0x94a4, 0x949f, 0x94a5, 0x94a8,
+  0x958f, 0x958c, 0x9595, 0x9660, 0x9655, 0x965c, 0x966f, 0x9651,
+  0x9661, 0x96a7, 0x965e, 0x9662, 0x9654, 0x966e, 0x9652, 0x9658,
+  0x966d, 0x965f, 0x966c, 0x9650, 0x965d, 0x968e, 0x9972, 0x9978,
+  0x9975, 0x9976, 0x997c, 0x997e, 0x997d, 0x9b15, 0x9b14, 0x9b1d,
+  0x9b1c, 0x9b23, 0x9b57, 0x9dc8, 0x0f5d, 0x9dc9, 0x9dc5, 0x9e87,
+  0x9e8a, 0x9e94, 0x9f39, 0x9f40, 0x9f3e, 0x9f38, 0x9fd6, 0x0fb8,
+  0xa077, 0xa078, 0xa07d, 0xa1dd, 0xa25e, 0xa277, 0xa2d4, 0xa266,
+  0xa25f, 0xa273, 0xa272, 0xa297, 0xa25a, 0xa296,
+  /* 0x42 */
+  0xa25d, 0xa265, 0xa270, 0xa275, 0xa274, 0xa25c, 0xa260, 0x1034,
+  0xa26d, 0xa441, 0xa53c, 0xa53e, 0x106f, 0xa549, 0xa6e4, 0xa80c,
+  0xa815, 0xa80e, 0xa7d4, 0xa7c7, 0xa814, 0xa7db, 0xa85f, 0xa7ed,
+  0xa809, 0xa7cf, 0xa7ff, 0xa81a, 0xa7f5, 0xa7ee, 0xa7e5, 0xa80d,
+  0xa7df, 0xa7ec, 0xa7d7, 0xa82c, 0xa7cd, 0xa7e3, 0xa800, 0xa7eb,
+  0xa7fd, 0xa80f, 0xa82d, 0xa850, 0xa7fe, 0xa7c4, 0xa7e1, 0xa7f9,
+  0xacbb, 0xacbc, 0x1194, 0x1193, 0xacba, 0xadd0, 0xadd6, 0xadce,
+  0xade1, 0xadd5, 0xadcf, 0xadd3, 0x2c14, 0xadd4, 0xb0b5, 0xb190,
+  0xb1a1, 0xb181, 0xb185, 0xb16e, 0xb188, 0xb182, 0xb186, 0xb18f,
+  0xb189, 0xb180, 0xb184, 0x2dd1, 0xb329, 0xb32b, 0xb32a, 0xb330,
+  0xb3e2, 0xb3e3, 0xb3e1, 0xb4d5, 0xb4c4, 0xb4c9, 0xb4e0, 0xb4df,
+  0xb4cb, 0xb4dd, 0xb4e8, 0xb4d4, 0xb51c, 0xb6b5,
+  /* 0x43 */
+  0xb6b6, 0xb6e5, 0xb745, 0xb749, 0xb740, 0xb746, 0xb744, 0xb74a,
+  0xb7c9, 0xb7c4, 0xb7c2, 0xb868, 0x30cb, 0xb882, 0xb86b, 0xb867,
+  0xb86c, 0xb86d, 0xb871, 0x1392, 0xb9d7, 0xb9d2, 0xb9d9, 0x13aa,
+  0xb9bc, 0xb9dd, 0xb9d6, 0x13a7, 0xb9d8, 0xbb20, 0xbb16, 0xbb18,
+  0xbb15, 0xbb19, 0xbb27, 0xbb50, 0xbb1d, 0xbb2c, 0xbb1c, 0xbb29,
+  0xbb2b, 0xbb24, 0x13ef, 0xbb28, 0xbd39, 0xbdf2, 0xbdf0, 0x31ed,
+  0xbded, 0xbdef, 0xbdea, 0xbe01, 0xbfbc, 0xc05c, 0xc05b, 0xc05a,
+  0xc026, 0xc243, 0xc233, 0xc23a, 0xc237, 0xc236, 0xc23c, 0xc234,
+  0xc24a, 0xc23b, 0xc235, 0xc23d, 0xc240, 0xc23e, 0xc217, 0xc326,
+  0xc324, 0xc310, 0xc336, 0xc325, 0x1522, 0xc466, 0xc77f, 0xc77a,
+  0xc7fb, 0xc7fd, 0xc7fc, 0xc7fa, 0xc9d6, 0xc9d2, 0xc9c8, 0xc9c2,
+  0xc9c7, 0xc9cd, 0xc9c1, 0xc9c6, 0xc9cc, 0xcaa1,
+  /* 0x44 */
+  0xcb95, 0xcb94, 0xcb97, 0xcb96, 0xcb93, 0xcba1, 0xcd09, 0xcd08,
+  0xcd67, 0xcd65, 0xcd62, 0xcd61, 0xce97, 0xcf01, 0xcf19, 0xcf18,
+  0xcf5c, 0xcf67, 0xcf6c, 0x16b5, 0xe3fd, 0xcf66, 0xcf61, 0xcf6e,
+  0xcf5d, 0xcf5a, 0xd0a2, 0xd0a9, 0xd0a5, 0xd0a6, 0xd0b2, 0xd0a3,
+  0xd1ac, 0xd1aa, 0xd1af, 0xd1ab, 0xd1b1, 0xd1c6, 0xd1ad, 0xd1b9,
+  0xd370, 0x1775, 0xd70c, 0xd781, 0xd783, 0xd77e, 0xd851, 0xda99,
+  0xda94, 0xda95, 0xddfe, 0xdf18, 0x3c05, 0x3e72, 0x0082, 0x3e99,
+  0x3fad, 0x4106, 0x42c2, 0x42cb, 0x42d5, 0x42d2, 0x42cc, 0x42d7,
+  0x42c5, 0x42ca, 0x1aec, 0x43a2, 0x43a3, 0x43a1, 0x1ae8, 0x43a6,
+  0x43a4, 0x43ff, 0x4400, 0x0135, 0x4506, 0x4525, 0x459f, 0x467f,
+  0x49ea, 0x49eb, 0x49de, 0x4a18, 0x49e0, 0x49e8, 0x49df, 0x49f1,
+  0x49ec, 0x4a1a, 0x49e6, 0x49e1, 0x4a5d, 0x3b77,
+  /* 0x45 */
+  0x4a1e, 0x01f0, 0x4a80, 0x4d17, 0x4f1d, 0x4ef7, 0x4eef, 0x4eee,
+  0x4eed, 0x4ef5, 0x4f1e, 0x50bd, 0x92ff, 0x50be, 0x516d, 0x5176,
+  0x534c, 0x5319, 0x5348, 0x531e, 0x534a, 0x5349, 0x5326, 0x5495,
+  0x5585, 0x557e, 0x5597, 0x557d, 0x5642, 0x569e, 0x570c, 0x570b,
+  0x570e, 0x57cf, 0x59d8, 0x59e0, 0x59e8, 0x59e9, 0x59e2, 0x59e1,
+  0x59da, 0x59e3, 0x59d9, 0x59f0, 0x59e7, 0x59e4, 0x5c23, 0x5c31,
+  0x5c33, 0x5c0c, 0xa4e0, 0x5c26, 0x5c24, 0x5c32, 0x5c27, 0x5c21,
+  0x5c30, 0x5ca2, 0x5ccc, 0x5d96, 0xe28f, 0x5d98, 0x5d9c, 0x5d9b,
+  0x5e6b, 0x5f12, 0x5f14, 0x605a, 0x6054, 0x6051, 0x605e, 0x6058,
+  0x04f0, 0x6059, 0x629a, 0x62f2, 0x62ad, 0x6320, 0x62f1, 0x62f0,
+  0x62f3, 0x62f4, 0x62e9, 0x62fe, 0x632e, 0x62e8, 0x62e7, 0x62ff,
+  0x62f5, 0x64e5, 0x64e7, 0x64e6, 0x64e9, 0x6558,
+  /* 0x46 */
+  0x676c, 0x67d9, 0x063e, 0x67cb, 0x0639, 0x67be, 0x67b5, 0x67d1,
+  0x67c2, 0x67b6, 0x67d3, 0xe2c2, 0x69da, 0x06a2, 0x6aae, 0x06a1,
+  0x6aac, 0x6aa9, 0x6aba, 0x6aa7, 0x6ab3, 0x6abd, 0x6ab1, 0x6c0e,
+  0x6c11, 0x6c0f, 0x6d52, 0x6d6a, 0x6d54, 0x6d55, 0x6d53, 0x6d57,
+  0xe2d0, 0x6d5b, 0x6d58, 0x6d59, 0x073b, 0x70b8, 0x70b5, 0x70bf,
+  0x70c1, 0x70bb, 0x07b7, 0x70c3, 0x70ad, 0x70a8, 0x70ae, 0x70aa,
+  0x70d0, 0x70b1, 0x70bc, 0x70b7, 0x70b0, 0x70fa, 0x70fb, 0x70b9,
+  0x7407, 0x73fc, 0x73ff, 0x73f2, 0x73f8, 0x73f4, 0x0857, 0x0870,
+  0x75ae, 0x760f, 0x7610, 0xd5c1, 0x76c7, 0x76c6, 0x76ce, 0x08a7,
+  0x76dc, 0x79d5, 0x79d3, 0x7a20, 0x79e2, 0x79f1, 0x79db, 0x79ea,
+  0x79eb, 0x79e1, 0x79ff, 0x79d6, 0x79e0, 0x79d7, 0x79e5, 0x0954,
+  0x7e1b, 0x7e10, 0x7e0f, 0x7e0e, 0x7e39, 0x7e0a,
+  /* 0x47 */
+  0x7e14, 0x7e0c, 0x8023, 0x805a, 0x80e2, 0x8193, 0x81b0, 0x81ab,
+  0x81bd, 0x81b1, 0x818d, 0x81ad, 0x81aa, 0x81ac, 0x81bc, 0x81c9,
+  0x8347, 0x8362, 0x8340, 0x8344, 0x833f, 0x8343, 0x833d, 0x8360,
+  0x835f, 0x833a, 0x8342, 0x835e, 0x835d, 0x84bc, 0x84e0, 0x84ee,
+  0x84eb, 0x850d, 0x8609, 0x860c, 0x8669, 0x8674, 0x8667, 0x0b31,
+  0x2427, 0x87ad, 0x88ff, 0x8916, 0x8908, 0x8909, 0x8900, 0x88fc,
+  0x8913, 0x8914, 0x890a, 0xd33e, 0x8929, 0x8917, 0x893b, 0x88fb,
+  0x0bbf, 0x890e, 0x0be4, 0x8b08, 0x8d1b, 0x8d1a, 0x8d19, 0x8d02,
+  0x0c4a, 0x8d17, 0x8d07, 0x8d13, 0x8d09, 0x8d0a, 0x8d12, 0x8daa,
+  0x8d38, 0x8e7b, 0x8e7c, 0x8e7a, 0x8eea, 0x8eeb, 0x8eef, 0x8ef0,
+  0x9009, 0x9002, 0x9001, 0x902b, 0x9007, 0x0ccf, 0x9028, 0x8ffb,
+  0x902a, 0x8ffe, 0x9004, 0x9029, 0x900a, 0x268c,
+  /* 0x48 */
+  0x91c2, 0x2691, 0x91a6, 0x0d14, 0x6ac6, 0x5707, 0x930a, 0x92fd,
+  0x9306, 0x930d, 0x9309, 0x930b, 0x9300, 0x9305, 0x933d, 0x94d5,
+  0x94bf, 0x94ba, 0x94c7, 0x9598, 0x959a, 0x0e0d, 0x96a4, 0x969c,
+  0x969d, 0x96a2, 0x9696, 0x9695, 0x96a5, 0x96aa, 0x96ad, 0x969a,
+  0x96a3, 0x9697, 0x9690, 0x96af, 0x968d, 0x0e01, 0x96a8, 0x96ee,
+  0x99a3, 0x9999, 0x99a1, 0x999c, 0x99a4, 0x99cb, 0x9b56, 0x9b48,
+  0x9b59, 0x9b4a, 0x9b5c, 0x0ef1, 0x9b4f, 0x9b4d, 0x9b5d, 0x9d3a,
+  0x9de3, 0x9de1, 0x9dde, 0x9e97, 0x9e9a, 0x9f48, 0x9f4a, 0x9f4c,
+  0x9f4e, 0x9f4f, 0x9f4b, 0x9f4d, 0x9f47, 0x9f51, 0x9fda, 0x9ff9,
+  0x9ffc, 0x9ffb, 0x9ffd, 0x9ff8, 0x9ffa, 0xa08a, 0xa08e, 0xa088,
+  0xa089, 0xa08d, 0xa090, 0xe37e, 0xa21c, 0xa2ab, 0xa2a4, 0xa2a8,
+  0xa2ad, 0xa29f, 0xa29a, 0xa2b0, 0xa2a5, 0xa2d5,
+  /* 0x49 */
+  0xa2a2, 0xa2b2, 0xa29d, 0xa2a1, 0xa415, 0xa442, 0xa473, 0xa484,
+  0xa4dd, 0xa55c, 0xa54c, 0x1076, 0xa54b, 0xa767, 0xa8a8, 0xa87f,
+  0xa88d, 0xa88b, 0xa8f7, 0xa8a9, 0xa8f4, 0xa89a, 0xa88c, 0xa895,
+  0xa87e, 0xa877, 0x110a, 0x1103, 0xa871, 0xa8fd, 0xa888, 0xa899,
+  0xa86d, 0xa8d4, 0xa891, 0xa87d, 0xa863, 0xa875, 0xa8f9, 0xa88e,
+  0xa874, 0xa8d9, 0xa866, 0xa8fa, 0xa8f5, 0x2b60, 0xacc1, 0xacc9,
+  0xae03, 0xae2c, 0xae34, 0xae17, 0xae09, 0xae04, 0xae06, 0xae1a,
+  0xae0e, 0xae27, 0xae05, 0xae07, 0xae19, 0xae14, 0xae0c, 0xae1d,
+  0xae22, 0xae23, 0xb0bb, 0xb0bc, 0xb0ba, 0xb1a9, 0xb1b5, 0xb1ac,
+  0xb1aa, 0xb1af, 0xb1b7, 0x1235, 0x1236, 0xb33d, 0xb345, 0xb348,
+  0xb33c, 0xb33e, 0xb3ec, 0xb3ed, 0xb3e9, 0xb50a, 0xb50b, 0xb4f8,
+  0xb504, 0xb4f6, 0xb4f9, 0xb753, 0xb752, 0xb760,
+  /* 0x4a */
+  0xb763, 0xb7ce, 0xb7cd, 0xb7d0, 0xb7cc, 0xb887, 0xb88d, 0xb89d,
+  0x1373, 0xb963, 0xb9f4, 0xb9f1, 0xb9ff, 0xb9f5, 0xb9fc, 0xb9f2,
+  0xb9f6, 0x13b1, 0xb9fa, 0x13af, 0xbb2e, 0xbb45, 0xbb43, 0xbb51,
+  0xbb4c, 0xbb73, 0xbb47, 0xbb4b, 0xbb4f, 0x13f4, 0xbb44, 0xbb4d,
+  0xbb4e, 0xbb4a, 0xbb41, 0xbb52, 0xbb9f, 0xbb54, 0xbb59, 0xbba2,
+  0xbd4b, 0xbd48, 0xbe0d, 0xbe1f, 0xbe08, 0xbe0e, 0xbe1d, 0xbe04,
+  0xbf18, 0xbf1b, 0xc066, 0xc062, 0xc083, 0xc067, 0xc262, 0xc24f,
+  0xc24e, 0xc267, 0xc253, 0xc24d, 0xc24c, 0xc268, 0xc251, 0x14dc,
+  0xc258, 0xc25b, 0xc250, 0xc26a, 0xc339, 0xc338, 0xc482, 0xc484,
+  0xc486, 0xc780, 0xc786, 0xc825, 0xc811, 0x1599, 0xc80e, 0xc815,
+  0xc80f, 0xc818, 0xc80d, 0xc813, 0xc816, 0xc819, 0xca08, 0xc9f7,
+  0xc9fb, 0xc9fc, 0xcab4, 0xcabe, 0xcac1, 0xcba6,
+  /* 0x4b */
+  0xcba5, 0xcba2, 0xcba4, 0xcd12, 0xcd0e, 0xcd7a, 0xcd78, 0xcd7d,
+  0xcd7e, 0xcd81, 0xcd83, 0xcd80, 0xcd82, 0xce9b, 0xce99, 0xce9c,
+  0xce9a, 0xcea1, 0xcf1a, 0xcf1c, 0xcf8a, 0xcf79, 0xcf73, 0xcf75,
+  0xcf7c, 0xcf78, 0xcf60, 0xcf83, 0xcf70, 0x16b6, 0x16bd, 0xcf87,
+  0xcf84, 0xcf7b, 0xcf7e, 0xcf74, 0xd0b9, 0xd0b8, 0xd0b7, 0xd0b5,
+  0xd1cc, 0xd1ce, 0xd1d1, 0x3504, 0xd1cb, 0x359b, 0xd37e, 0xd37a,
+  0xd377, 0xd38c, 0xd3e1, 0xd520, 0xd51e, 0xd5c2, 0xd60f, 0xd600,
+  0x17f4, 0xd610, 0xd70d, 0xd70e, 0xd78e, 0xd78d, 0xd78a, 0xd78b,
+  0xd78c, 0xd78f, 0xd857, 0x1835, 0xd855, 0xd85b, 0xdaac, 0xdaa7,
+  0xdaa0, 0xda9e, 0x18aa, 0xdd8d, 0x191f, 0xde93, 0xde94, 0xde92,
+  0x3c81, 0x3ed6, 0x3ec3, 0x3ee4, 0x3ee2, 0x3f09, 0x3ebf, 0x3ec8,
+  0x3ec7, 0x3fb5, 0x3fb2, 0x410c, 0x410b, 0x410a,
+  /* 0x4c */
+  0x4105, 0x42d3, 0x42e6, 0x42e9, 0x42f0, 0x42ea, 0x42e7, 0x43b1,
+  0x43b3, 0x43b4, 0x43b0, 0x445c, 0x445d, 0x445e, 0x44c0, 0x45af,
+  0x0150, 0x4686, 0x4683, 0x4684, 0x4a5c, 0x4a70, 0x4a8c, 0x4a7b,
+  0x4a66, 0x4a79, 0x4a63, 0x4ac5, 0x4a6b, 0x4a6d, 0x4a72, 0x4a69,
+  0x4a75, 0x4a89, 0x4ac6, 0x4aa5, 0x3ee7, 0x4a6a, 0x4a97, 0x4f5a,
+  0x4f5c, 0x4f59, 0x4f24, 0x4f25, 0x4f30, 0x4f58, 0x4f31, 0x5076,
+  0x50c1, 0x5185, 0x517d, 0x5365, 0x5387, 0x5352, 0x5354, 0x538a,
+  0x5350, 0x5386, 0x534f, 0x5368, 0x549d, 0x55a0, 0x55ba, 0x55bd,
+  0x55b8, 0x56a6, 0x037b, 0x57de, 0x57d8, 0x57d1, 0x5a13, 0x0409,
+  0x5a0e, 0x5a1b, 0x5a3a, 0x0407, 0x5a1c, 0x5a12, 0x5a16, 0x5a1a,
+  0x4f48, 0x5c4b, 0x5c37, 0x5c36, 0x5c38, 0x5c3a, 0x5c49, 0x5c3c,
+  0x5c4a, 0x5db1, 0x5dc2, 0x5db5, 0x5dc4, 0x5db6,
+  /* 0x4d */
+  0x5f1e, 0x5f1f, 0x5faf, 0x606b, 0x606f, 0x6292, 0x62e4, 0x632c,
+  0x62ef, 0x1e84, 0x634f, 0x6352, 0x6350, 0x633a, 0x6337, 0x6347,
+  0x6364, 0x6340, 0x633c, 0x6345, 0x6341, 0x64f3, 0x05bb, 0x67c1,
+  0x67b4, 0x064b, 0x682a, 0x6822, 0x6829, 0x064d, 0x683e, 0x683c,
+  0x6830, 0x6ac7, 0x6ad5, 0x6ad6, 0x6ad3, 0x6ace, 0x6ac8, 0x6b5c,
+  0x6b5f, 0x6b62, 0x06c2, 0x6bbd, 0x6bbf, 0x6d5c, 0x6db6, 0x071a,
+  0x6d9d, 0x6d7f, 0x0712, 0x6d94, 0x6d81, 0x6e47, 0x6e46, 0x073c,
+  0x6e94, 0x7175, 0x711a, 0x712a, 0x7132, 0x7117, 0x7123, 0x7174,
+  0x07c3, 0x7176, 0x712e, 0x7125, 0x7120, 0x7171, 0x7116, 0x7170,
+  0x712c, 0x712f, 0x711f, 0x7164, 0x07c0, 0x7408, 0x7414, 0x740a,
+  0x740b, 0x754f, 0x7559, 0x7554, 0x7551, 0x75b6, 0x76ec, 0x76ed,
+  0x76ea, 0x79ee, 0x7a5a, 0x7a73, 0x7a65, 0x7a61,
+  /* 0x4e */
+  0x7a55, 0x7a6b, 0x7a64, 0x7a5b, 0x7a4c, 0x7a6f, 0x7a84, 0x7a70,
+  0x7e5d, 0x7e57, 0x7e66, 0x7e53, 0x7e98, 0x7e97, 0x8028, 0x80eb,
+  0x80ea, 0x80e8, 0x80ec, 0x80ef, 0x81d1, 0x81ca, 0x229f, 0x81cf,
+  0x81cd, 0x81ce, 0x8370, 0x8367, 0x8373, 0x836d, 0x8376, 0x8379,
+  0x836a, 0x838b, 0x8372, 0x8371, 0x836e, 0x837a, 0x8516, 0x8539,
+  0x853b, 0x8610, 0x8696, 0x867b, 0x867c, 0x867d, 0x87be, 0x895c,
+  0x8938, 0x8939, 0x892e, 0x8934, 0x8932, 0x895b, 0x8933, 0x893c,
+  0x0be5, 0x8b0e, 0x8b0f, 0x8b10, 0x8b87, 0x8d5b, 0x8d53, 0x0c5f,
+  0x8d5c, 0x8d3f, 0x8d59, 0x8d4a, 0x8d44, 0x8d4c, 0x8d40, 0x8d5f,
+  0x8d5e, 0x8d4e, 0x8d54, 0x8d43, 0x8d87, 0x8e82, 0x8e85, 0x9031,
+  0x9047, 0x902e, 0x902f, 0x9048, 0x9034, 0x0d18, 0x409f, 0x9332,
+  0x9336, 0x9333, 0x9331, 0x9340, 0x9341, 0x94dd,
+  /* 0x4f */
+  0x94d2, 0x94d9, 0x0dad, 0x94df, 0x94db, 0x94d8, 0x94d3, 0x94de,
+  0x94e0, 0x94d4, 0x94d7, 0x94da, 0x95a7, 0x96fe, 0x96dd, 0x9740,
+  0x96e2, 0x0e1e, 0x96d6, 0x96de, 0x96ef, 0x0e27, 0x96eb, 0x96ea,
+  0x96e4, 0x96d1, 0x0e18, 0x96ec, 0x96fa, 0x96d9, 0x96f3, 0x96e1,
+  0x96dc, 0x96e5, 0x96df, 0x96d4, 0x0e20, 0x9705, 0x99d6, 0x99d5,
+  0x99d0, 0x99c8, 0x99c4, 0x99c9, 0x99cd, 0x99d2, 0x99cc, 0x99ca,
+  0x9ba0, 0x9b92, 0x0ef4, 0x0f02, 0x9b8b, 0x9ba1, 0x9b95, 0x9b88,
+  0x9b86, 0x9b8d, 0x9b85, 0x9b91, 0x9b89, 0x9ba2, 0x9df0, 0x9df3,
+  0x9df4, 0x9def, 0x9e06, 0x9ea2, 0x9f5e, 0x9f63, 0x9f60, 0x9f5b,
+  0x9f7b, 0x9f58, 0x9f59, 0x9f5d, 0xa005, 0xa006, 0xa002, 0xa003,
+  0xa004, 0xa0a2, 0xa0a7, 0xa0a6, 0xa0a4, 0xa0ac, 0xa0a9, 0xa2e7,
+  0xa301, 0xa2df, 0xa2d9, 0xa2e3, 0xa30f, 0xa41a,
+  /* 0x50 */
+  0xa445, 0xa448, 0xa47b, 0xa485, 0xa486, 0xa4fe, 0xa4ff, 0xa564,
+  0xa571, 0xa572, 0xa561, 0xa562, 0xa56c, 0xa560, 0xa55d, 0xa563,
+  0xa567, 0xa901, 0xa92a, 0xa930, 0xa906, 0xa97d, 0xa922, 0xa9b9,
+  0xa90a, 0xa910, 0xa88f, 0xa980, 0xa913, 0xa92e, 0xa918, 0xa917,
+  0xa91a, 0xa914, 0xa947, 0xa963, 0xa938, 0x1124, 0xa97f, 0xa921,
+  0xa937, 0xa931, 0xa91b, 0xa9a5, 0xaa6c, 0xacd3, 0xae88, 0xae6e,
+  0xae5c, 0xae74, 0xae54, 0xae83, 0x2c70, 0xae65, 0xae60, 0xae70,
+  0xae6f, 0xae6d, 0xae72, 0xae6c, 0xae76, 0xae75, 0xae59, 0xaec7,
+  0xb0c1, 0xb0f9, 0xb1e3, 0xb1e7, 0xb1d6, 0xb1cf, 0xb1da, 0xb1e9,
+  0xb1d2, 0xb355, 0xb34f, 0xb34d, 0xb351, 0xb356, 0xb3f9, 0xb3f8,
+  0xb406, 0xb403, 0xb409, 0xb3f7, 0xb3f5, 0xb547, 0xb545, 0xb53e,
+  0xb546, 0xb529, 0xb534, 0xb53f, 0xb544, 0xb535,
+  /* 0x51 */
+  0xb55a, 0xb52a, 0xb533, 0xb537, 0xb543, 0xb539, 0xb530, 0xb55d,
+  0xb532, 0xb527, 0xb6bd, 0xb6ba, 0xb6bc, 0xb6f1, 0xb6f0, 0xb761,
+  0xb75c, 0xb758, 0xb75d, 0xb7da, 0xb7d9, 0xb7dd, 0xb7dc, 0xb7de,
+  0x137d, 0xb8a0, 0xb8a2, 0xba0f, 0xba13, 0xba12, 0xba11, 0xba14,
+  0xba19, 0xba0e, 0xba17, 0xba21, 0xba20, 0xba16, 0xbb78, 0x3137,
+  0xbb87, 0xbb79, 0xbb80, 0xbb77, 0xbb81, 0xbb46, 0xbb7a, 0xbb9c,
+  0xbb83, 0xbb84, 0xbbad, 0xbb9d, 0xbb9e, 0xbd55, 0xbe36, 0xbe2b,
+  0xbe27, 0xbe46, 0xbe2c, 0xbe45, 0xbe33, 0xbe2d, 0xbe34, 0xbe22,
+  0x1464, 0xbf1f, 0xc0b3, 0xc08c, 0xc08f, 0xc0af, 0xc0ad, 0xc08e,
+  0xc0ac, 0xc0b0, 0xc0b1, 0xc0ae, 0xc099, 0xc1eb, 0xc274, 0xc275,
+  0xc28e, 0xc26d, 0xc270, 0xc28c, 0xc34f, 0xc351, 0xc358, 0xc34c,
+  0xc34e, 0xc415, 0xc4be, 0xc4db, 0xc4b3, 0xc4ae,
+  /* 0x52 */
+  0xc787, 0xc78a, 0xc788, 0xc78b, 0xc78c, 0xc844, 0xc82d, 0xc82a,
+  0xc831, 0xc82c, 0xc845, 0xc830, 0xc829, 0xc846, 0xc9f4, 0xca14,
+  0xca10, 0xca0f, 0xca12, 0xca0b, 0xca0c, 0xca0a, 0xca13, 0xca0e,
+  0xcad9, 0xcad0, 0x3403, 0xcbc1, 0xcbbf, 0xcbbd, 0xcbbc, 0xcbba,
+  0xcbbb, 0xcbd1, 0xcbbe, 0xcbd0, 0xcbb9, 0xcd1a, 0xcd1c, 0xcd1b,
+  0xcd91, 0xcd96, 0xcd9f, 0xcd9c, 0xcd9a, 0xcd9d, 0xcead, 0xcea5,
+  0xceae, 0xcf03, 0xcf26, 0xcf20, 0xcf23, 0xcf24, 0xcf21, 0xcf28,
+  0xcf25, 0xcf1e, 0xcf94, 0xcf93, 0xcf8f, 0xcf9a, 0xcfad, 0x16c2,
+  0xd0ca, 0xd0c5, 0xd1bb, 0xd1e1, 0xd1ea, 0xd1e4, 0xd1ed, 0xd1e6,
+  0xd1e0, 0xd1e8, 0xd1e5, 0xd31a, 0xd394, 0xd396, 0xd39e, 0xd395,
+  0xd3a1, 0xd38e, 0xd39b, 0xd392, 0xd397, 0xd399, 0xd393, 0xd532,
+  0xd52f, 0xd52e, 0xd533, 0xd61c, 0xd61e, 0xd611,
+  /* 0x53 */
+  0xd620, 0xd61f, 0xd619, 0xd616, 0xd7ac, 0xd7b9, 0xd7b3, 0xd7a6,
+  0xd7a2, 0xd7a9, 0xd7a7, 0xd86c, 0xd86d, 0xd869, 0xd880, 0xd866,
+  0xd865, 0xd871, 0xd86b, 0xdabd, 0xdac1, 0xdad3, 0xdab6, 0x18ac,
+  0xdab9, 0xdad4, 0xdab7, 0xdadb, 0xdab8, 0xdac0, 0xdabc, 0xdad5,
+  0xdabf, 0xdac3, 0xdac9, 0xdd58, 0xdd90, 0xdd95, 0xdd97, 0xde09,
+  0xde08, 0xde06, 0xde05, 0xde10, 0xde97, 0xde95, 0xdeee, 0xdf1f,
+  0xe41a, 0x564b, 0x3c8e, 0x3ee8, 0x3ef0, 0x3ef4, 0x3f06, 0x3eed,
+  0x009b, 0x3ee9, 0x3f00, 0x3fb8, 0x406d, 0x4304, 0x4301, 0x4303,
+  0x4302, 0x1af6, 0x0126, 0x4462, 0x45ba, 0x4613, 0x4ade, 0x4ad7,
+  0x4ae4, 0x4ace, 0x4ae3, 0x4add, 0x4b3a, 0x4adb, 0x4ad6, 0x4ae0,
+  0x4ad4, 0x4acb, 0x4ae1, 0x4ac9, 0x4adf, 0x4b3c, 0x4afc, 0x4acf,
+  0x4f79, 0x4f76, 0x4f78, 0x5187, 0x539c, 0x53b1,
+  /* 0x54 */
+  0x53c1, 0x539a, 0x5392, 0x0daf, 0x53c2, 0x5396, 0x53c0, 0x5391,
+  0x5395, 0x54a2, 0x55c3, 0x55c0, 0x55c2, 0x468a, 0x56b0, 0x5716,
+  0x5a46, 0x5a4a, 0x5a3e, 0x5a45, 0x5a42, 0x0415, 0x5a5b, 0x5a44,
+  0x5b04, 0x7b22, 0x5c55, 0x5c57, 0x5c51, 0x5c4e, 0x5c5a, 0x5dc6,
+  0x5dc3, 0x049c, 0x5dc5, 0x5dcc, 0x5e71, 0x5f26, 0x5fb2, 0x607a,
+  0x6084, 0x607b, 0x6374, 0x638c, 0x6351, 0x6348, 0x638d, 0x6392,
+  0x6398, 0x6393, 0x63b0, 0x634e, 0x6396, 0x6397, 0x639c, 0x63ca,
+  0x6833, 0x6883, 0x6884, 0x689a, 0x688c, 0x20cc, 0x6899, 0x69e0,
+  0x6ae4, 0x6af8, 0x6aed, 0x6af3, 0x6af4, 0x6af5, 0x6afd, 0x6c19,
+  0x6d9e, 0x6dc4, 0x6d9f, 0x6e9b, 0x6e9f, 0x6e9a, 0x71aa, 0x719d,
+  0x7192, 0x71a2, 0x71af, 0x71eb, 0x71a0, 0x71a1, 0x7194, 0x7198,
+  0x718f, 0x7187, 0x7184, 0x71a9, 0x717c, 0x7418,
+  /* 0x55 */
+  0x755f, 0x7562, 0x7561, 0x75c0, 0x7615, 0x76fc, 0x76f9, 0x7ac8,
+  0x7ac9, 0x7ade, 0x7aca, 0x7ae2, 0x0964, 0x096e, 0x7b04, 0x7acc,
+  0x7add, 0x7ae4, 0x7ad3, 0x7ac7, 0x7ac6, 0x095f, 0x7b37, 0x7ed8,
+  0x7eee, 0x7eb2, 0x7ea3, 0x7eb3, 0x7eed, 0x7ef8, 0x8031, 0x805b,
+  0x8066, 0x8069, 0x8096, 0x809b, 0x80f7, 0x80f3, 0x80f4, 0x80f5,
+  0x81e2, 0x81e7, 0x81e5, 0x81e9, 0x81e6, 0x81e3, 0x8374, 0x837f,
+  0x838f, 0x8390, 0x8397, 0x83a3, 0x838e, 0x8398, 0x838c, 0x8542,
+  0x8544, 0x8569, 0x8543, 0x8568, 0x0af6, 0x868d, 0x8688, 0x868b,
+  0x8689, 0x87cc, 0x881f, 0x8980, 0x895e, 0x8967, 0x8968, 0x8965,
+  0x254a, 0x8974, 0x8969, 0x8961, 0x8962, 0x896c, 0x8993, 0x8986,
+  0x8a9d, 0x8a9b, 0x8b1b, 0x8b16, 0x8b19, 0x8b14, 0x8b18, 0x8b15,
+  0x8b99, 0x8b98, 0x8d5d, 0x8d89, 0x8d7a, 0x8d7d,
+  /* 0x56 */
+  0x8d4b, 0x0c73, 0x8d78, 0x8d7f, 0x8d77, 0x8d7e, 0x8d79, 0x8dab,
+  0x8d7c, 0x8d74, 0x8d75, 0x8da7, 0x8e8d, 0x904e, 0x9066, 0x9061,
+  0x904d, 0x904f, 0x0cdd, 0x9054, 0x907c, 0x91da, 0x91de, 0x91d8,
+  0x91dd, 0x91df, 0x9366, 0x9362, 0x935f, 0x9364, 0x9363, 0x9360,
+  0x9388, 0x936a, 0x9367, 0x9387, 0x933f, 0x936c, 0x936e, 0x93ad,
+  0x94f1, 0x94f4, 0x94f6, 0x94f5, 0x94f8, 0x94fb, 0x94ec, 0x94ef,
+  0x94ed, 0x27b9, 0x94f7, 0x94f9, 0x94fd, 0x95b1, 0x9736, 0x971b,
+  0x9732, 0x9742, 0x974d, 0x971f, 0x9721, 0x971c, 0x9731, 0x972e,
+  0x9747, 0x973b, 0x9741, 0x9718, 0x9739, 0x971d, 0x9727, 0x9723,
+  0x28d7, 0x99ee, 0x99e8, 0x99e5, 0x99ef, 0x99e4, 0x99ec, 0x99f0,
+  0x9bd7, 0x9bd8, 0x9bd4, 0x9bca, 0x9bd2, 0x9bcb, 0x9bd3, 0x9be6,
+  0x9be2, 0x9d49, 0x9d48, 0x9dff, 0x9e09, 0x9eb0,
+  /* 0x57 */
+  0x9eaf, 0x9f7c, 0x9f78, 0x9f7a, 0x9f72, 0x9f79, 0x9f7e, 0xa00c,
+  0xa00b, 0xa0cd, 0xa0be, 0xa0bc, 0xa0bf, 0xa0c0, 0xa0bd, 0xa338,
+  0xa308, 0xa305, 0xa33b, 0xa310, 0xa30c, 0xa30d, 0xa304, 0xa33a,
+  0xa313, 0xa337, 0xa339, 0xa41f, 0xa44b, 0xa4ee, 0xa575, 0xa578,
+  0xa57c, 0xa574, 0xa576, 0xa5ea, 0xa5eb, 0xa8fb, 0xa919, 0xa9a7,
+  0xa98c, 0xa9dc, 0xa998, 0xa9be, 0xa99e, 0xaa0f, 0xa99f, 0xa9dd,
+  0xa993, 0xa9bb, 0xa9b6, 0xa990, 0xa9a1, 0xa9bd, 0xa9de, 0xa93a,
+  0xaa22, 0xa997, 0xa994, 0xa9c3, 0xa98e, 0xa9a8, 0xa999, 0xa9ad,
+  0xa99b, 0xa9a2, 0xaa21, 0xa9ac, 0xaa0e, 0xaa31, 0xace1, 0xacde,
+  0xacdf, 0xacdc, 0xacdd, 0xacec, 0xace7, 0xae69, 0xaeb8, 0xaea1,
+  0xaea8, 0xaeba, 0xaec2, 0xaea6, 0xaea4, 0xaea3, 0xaeab, 0xaebc,
+  0xaeb7, 0xaebf, 0xaead, 0xaeb1, 0xaeca, 0xaec4,
+  /* 0x58 */
+  0xaeb9, 0xb0c8, 0xb0c6, 0xb0c7, 0xb20a, 0xb20d, 0xb1fb, 0xb203,
+  0xb202, 0xb1fc, 0xb1f9, 0xb1f8, 0xb36e, 0xb363, 0xb362, 0xb361,
+  0xb36b, 0x1288, 0xb36f, 0xb366, 0xb36c, 0xb40e, 0xb415, 0xb416,
+  0xb410, 0xb417, 0xb411, 0xb56e, 0xb56c, 0xb587, 0xb583, 0xb563,
+  0xb5dc, 0xb6c0, 0xb6f7, 0xb6fa, 0xb770, 0xb76a, 0xb768, 0xb769,
+  0xb784, 0xb7ec, 0xb7e7, 0xb7ee, 0xb8ba, 0xb8b2, 0xb8b5, 0xb8cb,
+  0x430b, 0xb8d0, 0xb96d, 0xb96c, 0x13bb, 0xba45, 0xba46, 0xba34,
+  0xba2c, 0xba35, 0xba44, 0x13ba, 0xba76, 0xbbb1, 0xbbaa, 0xbba1,
+  0xbbb2, 0x1412, 0xbba6, 0xbbb5, 0xbbb4, 0xbbb8, 0xbbaf, 0xbbb0,
+  0xbba3, 0xbd62, 0xbd64, 0xbe56, 0xbe51, 0xbe4f, 0xbe68, 0xbe4c,
+  0xbe50, 0x1461, 0xbe48, 0xbe4a, 0xbf21, 0xc0e3, 0xc0b9, 0xc0de,
+  0xc0b7, 0xc0e1, 0xc0b6, 0xc0b5, 0xc0df, 0x14e1,
+  /* 0x59 */
+  0xc297, 0xc29a, 0xc29b, 0xc298, 0xc292, 0xc293, 0xc2d7, 0xc273,
+  0xc36b, 0xc374, 0xc378, 0xc36d, 0xc418, 0xc4e9, 0xc4f5, 0xc4ea,
+  0xc52e, 0xc4e7, 0xc4fe, 0xc4e5, 0xc536, 0xc4f0, 0xc4e6, 0xc52c,
+  0xc789, 0xc795, 0xc793, 0xc84d, 0xc84a, 0xc84f, 0xc850, 0xc84b,
+  0xca2a, 0xca2b, 0xca2f, 0xca2e, 0xca7c, 0xcaed, 0xcae2, 0xcbe0,
+  0xcbdc, 0xcbda, 0xcbd6, 0xcbf4, 0xcbd9, 0xcbd5, 0xcd22, 0xcd21,
+  0xcd24, 0xcd25, 0xcd26, 0xcd23, 0xcdaa, 0xcdaf, 0xcdb0, 0xcdab,
+  0xceaf, 0xceb7, 0xceb5, 0xceb2, 0xceb3, 0xcf2b, 0xcfd8, 0xcfc2,
+  0xcfaf, 0xcfbc, 0xcfb8, 0xcfbe, 0xcfb7, 0xcfb4, 0xcfbf, 0xcfb3,
+  0xcfb1, 0xcfbb, 0xcfbd, 0xcfd6, 0xcfdd, 0xd0d8, 0xd0d3, 0xd0d5,
+  0xd0e3, 0xd0e2, 0xd0d9, 0xd0de, 0xd0df, 0xd0da, 0xd0d4, 0xd1f3,
+  0xd1e2, 0xd20d, 0xd201, 0xd205, 0xd21a, 0xd203,
+  /* 0x5a */
+  0xd21f, 0xd216, 0xd1fa, 0xd1fc, 0xd20a, 0x359f, 0xd3bc, 0xd3ca,
+  0xd3b6, 0xd3c7, 0xd3bf, 0x1789, 0xd3b9, 0x178c, 0xd3b0, 0xd3b8,
+  0xd3bd, 0xd391, 0xd3bb, 0xd3be, 0xd53e, 0xd53d, 0xd638, 0xd63d,
+  0xd639, 0xd633, 0xd733, 0xd7bb, 0xd7c6, 0xd7c5, 0xd7c7, 0xd7cb,
+  0xd7a8, 0xd7c8, 0xd7be, 0xd7c1, 0xd7bd, 0xd882, 0xd89e, 0xd881,
+  0xd884, 0x368d, 0xd896, 0xd88e, 0xd888, 0xd887, 0xdae0, 0xdb0d,
+  0xdadf, 0xdae4, 0xdae2, 0xdadd, 0xdaec, 0xdade, 0xdae7, 0xdaea,
+  0xdae3, 0xdd5c, 0x3977, 0xdd5d, 0xdd9c, 0xde1d, 0xde9d, 0xde9e,
+  0xde9b, 0xdeb5, 0xdeb9, 0xdeb6, 0xdef3, 0xdef2, 0xdef4, 0xdf26,
+  0xdf27, 0xdf25, 0xe006, 0xe00b, 0xe03a, 0xe03c, 0x3f0a, 0x3f0b,
+  0x3fbf, 0x3ffd, 0x4118, 0xccdf, 0x8e90, 0x419e, 0x42fc, 0x4310,
+  0x430f, 0x430d, 0x43b9, 0x43b7, 0x43ba, 0x440a,
+  /* 0x5b */
+  0x4b41, 0x4b8b, 0x4b46, 0x4b53, 0x4be2, 0x4b3f, 0x4a7c, 0x4b4b,
+  0x4b4e, 0x4b8a, 0x4b47, 0x4f93, 0xb8ce, 0x4f8c, 0x4faf, 0x4fc9,
+  0x50c6, 0x50c8, 0x5191, 0x53cf, 0x53d4, 0x53ce, 0x55dd, 0x55d4,
+  0x5a49, 0x5a63, 0x5a5d, 0x041a, 0x5a67, 0x5abb, 0x5a60, 0x5a80,
+  0x5c5f, 0x5c60, 0x5dda, 0x5dd2, 0x5ddd, 0x608e, 0x6088, 0x606c,
+  0x639e, 0x63c9, 0x63a4, 0x0598, 0x63d9, 0x63d2, 0x63da, 0x63dd,
+  0x63ce, 0x63fc, 0x6514, 0x6560, 0x68d7, 0x68cb, 0x68cd, 0x68d5,
+  0x69e7, 0x6b00, 0x6b0a, 0x6b0f, 0x6b02, 0x6b01, 0x6c1d, 0x6dca,
+  0x6dcb, 0x6dcd, 0x6e4f, 0x6e9c, 0x7180, 0x720d, 0x7202, 0x07f1,
+  0x7207, 0x71f7, 0x71f8, 0x71fd, 0x7224, 0x71fb, 0x7239, 0x723a,
+  0x7422, 0x21a9, 0x756a, 0x756d, 0x7574, 0x770e, 0x7adf, 0x7b2b,
+  0x7ae3, 0x7b26, 0x7b2a, 0x7b23, 0x7b35, 0x7b4a,
+  /* 0x5c */
+  0x7efd, 0x7f00, 0x7f1e, 0x7eff, 0x809e, 0x80fa, 0x81f1, 0x8395,
+  0x83a8, 0x83a6, 0x856e, 0x8583, 0x856d, 0x868f, 0x0b6a, 0x87df,
+  0x87d5, 0x87e0, 0x87d3, 0x87d8, 0x898c, 0x254b, 0x8994, 0x8996,
+  0x8985, 0x898f, 0x89a9, 0x898e, 0x8990, 0x89b8, 0x89c3, 0x89bb,
+  0x8aa5, 0x8aa2, 0x25a2, 0x8aa3, 0x8bb5, 0x8bac, 0x8ba8, 0x8dad,
+  0x8db8, 0x8db4, 0x8dae, 0x8db6, 0x1085, 0x8dc1, 0x8dbf, 0x8e92,
+  0x8f00, 0x8f01, 0x9075, 0x9072, 0x9078, 0x9070, 0x907e, 0x907d,
+  0x907f, 0x91ef, 0x936d, 0x938e, 0x938f, 0x938a, 0x938d, 0x9395,
+  0x938b, 0x938c, 0x93b0, 0x9393, 0x94fc, 0x9515, 0x950e, 0x9518,
+  0x9511, 0x950d, 0x95bb, 0x95b3, 0x0e39, 0x97a1, 0x979a, 0x9784,
+  0x97a0, 0x9786, 0x979d, 0x97aa, 0x9778, 0x978d, 0x978a, 0x97a6,
+  0x977a, 0x9797, 0x9788, 0x978e, 0x0e3d, 0x0e44,
+  /* 0x5d */
+  0x9776, 0x9781, 0x9785, 0x9775, 0x97a8, 0x978f, 0x9791, 0x97a2,
+  0x979c, 0x9789, 0x977f, 0x9796, 0x9779, 0x979f, 0x97a7, 0x0e46,
+  0x9787, 0x979b, 0x97a5, 0x978b, 0x97c9, 0x99ff, 0x9a03, 0x9a00,
+  0x9a02, 0x9a04, 0x9a05, 0x99e6, 0x9a1f, 0x9c14, 0x0f0e, 0x9c0c,
+  0x9c0f, 0x9c19, 0x9c0b, 0x9c13, 0x9bd5, 0x0f10, 0x9c1c, 0x9d50,
+  0x9d4e, 0x9e12, 0x9eb9, 0x9f85, 0x9f88, 0x9f90, 0xa013, 0xa0d0,
+  0xa0d1, 0xa0d2, 0xa0d7, 0xa0d6, 0xa0e5, 0xa346, 0xa36b, 0xa345,
+  0xa33f, 0xa33e, 0x103e, 0xa36a, 0xa368, 0xa34c, 0xa423, 0xa422,
+  0xa497, 0xa491, 0x95b5, 0xa498, 0xa49c, 0xa589, 0x1084, 0xa58b,
+  0xa58a, 0xa58d, 0xa58e, 0xa588, 0xaa4e, 0xaa44, 0xaa37, 0xaa75,
+  0xaa54, 0xaa76, 0xaa34, 0xaa6b, 0xaa32, 0xaa57, 0xaa52, 0xaa45,
+  0x1149, 0xa9b1, 0xaa4b, 0xaa47, 0xaa33, 0xaa40,
+  /* 0x5e */
+  0xaa3c, 0xaa43, 0xaa4f, 0xaa55, 0xaa41, 0xaab2, 0xaac0, 0xaf34,
+  0xaef9, 0xaf19, 0xaf0d, 0xaefa, 0xaf1e, 0xaf1f, 0xaf0e, 0xaf40,
+  0xaf08, 0x11df, 0xaf13, 0xaf4c, 0x11f0, 0xb0cc, 0xb0cb, 0xb224,
+  0xb225, 0xb23d, 0xb220, 0xb227, 0xb226, 0xb21d, 0xb21e, 0xb232,
+  0xb26c, 0xb259, 0x128a, 0xb37a, 0xb379, 0xb41b, 0xb42e, 0xb423,
+  0xb420, 0xb41f, 0xb5b6, 0xb5b9, 0xb5a1, 0xb5a3, 0xb5a8, 0xb5af,
+  0xb59a, 0xb599, 0xb5a2, 0xb59d, 0x1302, 0xb5ab, 0xb6c9, 0xb6fe,
+  0xb700, 0xb6fc, 0xb707, 0xb775, 0xb772, 0xb773, 0xb774, 0xb7fa,
+  0xb7fc, 0xb7f8, 0xb7f6, 0xb7fb, 0xb8cd, 0xb8d1, 0xb8cf, 0xb974,
+  0xb972, 0xb973, 0xba54, 0xba51, 0x13c0, 0xba53, 0xba49, 0xba4c,
+  0xba4a, 0xba4f, 0xba56, 0xbc00, 0xbbd5, 0xbbd7, 0xbbff, 0xbbd9,
+  0xbbe3, 0xbbd3, 0x1415, 0xbbd8, 0xbbd4, 0xbbde,
+  /* 0x5f */
+  0xbd71, 0xbe74, 0xbe88, 0xbe7f, 0xbe6b, 0xbe87, 0xbe79, 0xbe78,
+  0xbe89, 0xbe80, 0xbe76, 0xbf29, 0xbf28, 0xbf2f, 0xc0e5, 0xc104,
+  0xc103, 0xc0f0, 0xc0e8, 0xc0ea, 0xc0f1, 0xc101, 0xc102, 0xc2a9,
+  0xc2ab, 0xc2b7, 0xc2b6, 0x14e2, 0xc3a0, 0xc38e, 0xc386, 0xc387,
+  0xc385, 0xc38b, 0xc388, 0xc390, 0xc41a, 0xc434, 0xc537, 0xc52f,
+  0xc530, 0xc539, 0xc534, 0xc533, 0xc585, 0xc584, 0xc53a, 0xc79f,
+  0xc869, 0xc86c, 0xc86a, 0xc867, 0xc86b, 0xca3f, 0xca40, 0xcb0b,
+  0xcbd2, 0xcbf8, 0xcc01, 0xcbfa, 0xcc16, 0xe3f6, 0xcd2c, 0xcd2d,
+  0xcd2f, 0xcd2e, 0xcdc1, 0xcdf5, 0xcdc4, 0xcdde, 0xcdcc, 0xcdd2,
+  0xcdc2, 0xcdcd, 0xcdcf, 0xcddd, 0xcdc8, 0xceba, 0xcebe, 0xcebf,
+  0xcf2e, 0xcf30, 0xcfe7, 0xcfee, 0xcfe8, 0xcfe6, 0xcfe2, 0xcfe4,
+  0xcffb, 0xcffc, 0xcfea, 0xd0ed, 0xd0f6, 0xd0f3,
+  /* 0x60 */
+  0xd0f4, 0xd0f1, 0xd0f7, 0xd0f5, 0xd0ea, 0xd0eb, 0xd200, 0xd22c,
+  0xd212, 0xd23d, 0xd233, 0x174d, 0xd230, 0xd240, 0xd231, 0xd257,
+  0x174a, 0xd235, 0xd232, 0xd22d, 0xd236, 0xd238, 0xd262, 0xd25f,
+  0xd28a, 0xd3d6, 0xd3d8, 0xd3dd, 0xd3e4, 0xd3e3, 0xd54d, 0xd5d7,
+  0xd64a, 0xd64c, 0xd650, 0xd64b, 0xd64e, 0xd64f, 0xd739, 0xd7d2,
+  0xd7cd, 0xd7d3, 0xd7e1, 0xd7ce, 0xd7d5, 0xd7dd, 0xd7d4, 0xd7cf,
+  0xd8cb, 0xd8a6, 0xd8c2, 0xd8a5, 0xd8a9, 0xd8a2, 0xd8a4, 0xd8b0,
+  0xd8cc, 0xd8af, 0xd8bf, 0xdb24, 0xdb1a, 0xdb14, 0xdb3a, 0xdb20,
+  0xdb1b, 0xdb21, 0xdb25, 0xdb1e, 0xdb3f, 0xdb40, 0xdb18, 0xdb2c,
+  0xdb15, 0xdb2d, 0xdb1f, 0xdb29, 0xdb4b, 0xddb3, 0xdda5, 0xdda7,
+  0xddab, 0xdda6, 0xddaa, 0xde22, 0xde23, 0xdea1, 0xdea3, 0xdea0,
+  0xdebd, 0xdeba, 0xdefa, 0xdef8, 0xdefc, 0xdef6,
+  /* 0x61 */
+  0xdf34, 0xdf43, 0x1963, 0xdfd4, 0xe00d, 0xe043, 0xe041, 0xe03d,
+  0xe040, 0xe03e, 0xe03f, 0xe046, 0x1993, 0xe0d4, 0x3f35, 0x3f36,
+  0x3f32, 0x3f3a, 0x3fc8, 0x4036, 0x411e, 0x411d, 0x411f, 0x431c,
+  0x431d, 0x4320, 0x010e, 0x43c0, 0x4b9a, 0x4b93, 0x4bdd, 0x020a,
+  0x4ba3, 0x4ba9, 0x4b9c, 0x4b9b, 0x020d, 0x4b97, 0x4fb1, 0x4fca,
+  0x4fb3, 0x4fcd, 0x53ea, 0x53ee, 0x53ef, 0x55df, 0x5650, 0x56bb,
+  0x5a88, 0x5a89, 0x5a8c, 0x5a85, 0x5a5e, 0x5a94, 0x5a95, 0x5c6b,
+  0x5c6a, 0x5c69, 0x5de3, 0x5df1, 0x5f37, 0x5f33, 0x6091, 0x608f,
+  0x6097, 0x63d4, 0x63de, 0x63d3, 0x63e0, 0x6443, 0x640b, 0x63ff,
+  0x6404, 0x6407, 0x68f9, 0x68fa, 0x68fb, 0x68f8, 0x6b12, 0x6b10,
+  0x6c1f, 0x6ddf, 0x6de3, 0x6e52, 0x6ea9, 0x7265, 0x7287, 0x7242,
+  0x7252, 0x724c, 0x719f, 0x7201, 0x7248, 0x724f,
+  /* 0x62 */
+  0x727e, 0x724d, 0x7258, 0x7247, 0x725e, 0x7249, 0x724e, 0x725d,
+  0x725a, 0x7286, 0x7251, 0x7429, 0x74a6, 0x74a7, 0x7570, 0x756f,
+  0x75d3, 0x75d2, 0x7728, 0x771b, 0x771a, 0x771c, 0x7721, 0x7b32,
+  0x7b66, 0x7b7d, 0x7b73, 0x7b7f, 0x7b65, 0x7b80, 0x7b61, 0x7b75,
+  0x7b6e, 0x7b67, 0x7b71, 0x7b6c, 0x7b63, 0x7b62, 0x7b83, 0x7bb2,
+  0x7b81, 0x7b6f, 0x7b6b, 0x7b82, 0x7b8a, 0x7f29, 0x7f30, 0x7f31,
+  0x8097, 0x8100, 0x80ff, 0x83b6, 0x83b5, 0x83c3, 0x858d, 0x8618,
+  0x869c, 0x869a, 0x8699, 0x89b7, 0x89c4, 0x89c6, 0x89c7, 0x89bc,
+  0x89c0, 0x89c5, 0x89cd, 0x89c1, 0x89be, 0x8aa7, 0x8ab8, 0x8b23,
+  0x0c74, 0x8de8, 0x8dde, 0x8de3, 0x8def, 0x8ddc, 0x8de4, 0x8de1,
+  0x8de5, 0x8e95, 0x8e94, 0x8e93, 0x8e8e, 0x9098, 0x909c, 0x9099,
+  0x90a0, 0x909e, 0x9204, 0x93d3, 0x93b4, 0x93bb,
+  /* 0x63 */
+  0x93b7, 0x93b8, 0x93bd, 0x93b6, 0x93b9, 0x93b5, 0x9522, 0x9521,
+  0x95c3, 0x95bc, 0x97ff, 0x97e5, 0x97f7, 0x97d2, 0x9800, 0x97db,
+  0x97f0, 0x97e2, 0x97cd, 0x0e56, 0x97e1, 0x97f2, 0x97dc, 0x97cc,
+  0x97d6, 0x97f3, 0x97fa, 0x97f6, 0x97ec, 0x97ea, 0x97e3, 0x97d0,
+  0x0e5a, 0x9795, 0x97d5, 0x97f4, 0x97cb, 0x97da, 0x97c8, 0x97df,
+  0x97f5, 0x97cf, 0x97c7, 0x97d7, 0x9a24, 0x0ea3, 0x9a1c, 0x9a21,
+  0x9a1e, 0x9a18, 0x9a1b, 0x0ea8, 0x9c46, 0x9c4b, 0x9c48, 0x9c47,
+  0x9c67, 0x9c54, 0x9e15, 0x9e22, 0x9ec5, 0x9e29, 0x9ec7, 0x9f8d,
+  0xa01b, 0xa020, 0xa0e2, 0xa0e7, 0xa0e8, 0xa0e1, 0xa372, 0xa37b,
+  0xa374, 0xa371, 0xa379, 0xa375, 0xa390, 0xa377, 0xa37d, 0xa44f,
+  0xa450, 0xa4a3, 0xa4a2, 0xa4f4, 0xa594, 0xa59a, 0xa59b, 0xa5a7,
+  0xa597, 0xa595, 0xa592, 0xa59c, 0xa596, 0xaab6,
+  /* 0x64 */
+  0xaab8, 0xaab0, 0xab18, 0xaac5, 0xaab5, 0xaac2, 0xab06, 0xab19,
+  0xaab9, 0xab15, 0xaad6, 0xaaac, 0x113c, 0xaac6, 0xaab3, 0xaac3,
+  0xaaca, 0xaacf, 0xaabd, 0xaace, 0xab14, 0xaaba, 0xab1a, 0xaac1,
+  0xaabb, 0x119b, 0x119a, 0xad01, 0xacfc, 0xaf5a, 0xaf54, 0xaf61,
+  0xaf5c, 0xaf55, 0xaf4a, 0xaf4b, 0xaf51, 0xaf69, 0xaf6b, 0x2cf1,
+  0xaf66, 0xaf58, 0xaf5d, 0xaf67, 0xaf56, 0xaf88, 0xaf64, 0xaf4e,
+  0xb257, 0xb25a, 0xb251, 0xb24a, 0xb24b, 0x125e, 0xb247, 0xb26f,
+  0xb26a, 0xb26b, 0xb246, 0xb26d, 0xb254, 0xb26e, 0xb24c, 0xb378,
+  0xb386, 0xb382, 0x12a7, 0xb5e1, 0xb5e5, 0xb5db, 0xb5de, 0xb5d7,
+  0xb703, 0xb77c, 0xb77e, 0xb805, 0xb807, 0xb8e6, 0xb8e1, 0xb8fb,
+  0xb8e5, 0xb8e7, 0xb8df, 0xb8ff, 0xb976, 0xba63, 0xba66, 0xba65,
+  0xba5e, 0xba64, 0xba6b, 0xba5f, 0xba67, 0xba68,
+  /* 0x65 */
+  0xbc08, 0xbc09, 0xbc17, 0xbc15, 0xbc1b, 0xbc0b, 0xbc28, 0xbc0e,
+  0xbc18, 0xbc53, 0xbc45, 0xbc0d, 0xbc0a, 0xbc13, 0xbc4a, 0xbd79,
+  0xbea1, 0xbe8d, 0xbea2, 0xbe90, 0x146e, 0xbf31, 0xbf30, 0xc11f,
+  0xc119, 0xc10c, 0xc11e, 0xc11d, 0xc107, 0xc266, 0xc2c5, 0xc2ba,
+  0xc2bd, 0xc2c2, 0xc2c3, 0xc2bf, 0x150d, 0xc3a1, 0xc3a2, 0xc3a8,
+  0xc3a3, 0xc3aa, 0xc3af, 0xc3b9, 0xc437, 0xc58f, 0x1543, 0xc58e,
+  0xc587, 0xc58a, 0xc592, 0xc597, 0xc59f, 0xc605, 0xc7a9, 0xc7a7,
+  0xc88a, 0xc882, 0xc885, 0xc88b, 0xc889, 0xc881, 0xc880, 0xc887,
+  0xc886, 0xca4d, 0xcb1c, 0xcb1f, 0xcc21, 0xcc1d, 0xcc22, 0xcbfe,
+  0xcc1b, 0xcc3a, 0xcc37, 0xcc17, 0xcc38, 0xcc26, 0xcc18, 0xcd34,
+  0xcd35, 0xcd32, 0x1673, 0xcde1, 0xcdfd, 0xcde3, 0xcde8, 0xcdf9,
+  0xcdff, 0xcdfe, 0x1674, 0xcde0, 0xce00, 0x1670,
+  /* 0x66 */
+  0xcdec, 0xcde4, 0xcdef, 0xcdfa, 0xceca, 0xcf31, 0xcf32, 0xcf34,
+  0xcf41, 0xd000, 0xd006, 0xd008, 0xd005, 0xd003, 0xd00b, 0xd002,
+  0xd00a, 0xd0f0, 0xd113, 0xd10a, 0xd10f, 0xd111, 0xd108, 0xd10b,
+  0xd112, 0xd10d, 0xd25b, 0xd263, 0xd261, 0xd268, 0xd25a, 0xd34e,
+  0xd34d, 0xd350, 0xd3fc, 0xd412, 0xd3f5, 0xd41e, 0xd3f0, 0xd3f3,
+  0xd3f2, 0xd401, 0xd3ef, 0xd3ee, 0xd416, 0xd3f6, 0xd3fb, 0xd41c,
+  0x17db, 0xd55d, 0xd560, 0xd566, 0xd55f, 0xd561, 0xd55b, 0xd562,
+  0xd557, 0xd669, 0xd66b, 0xd661, 0xd677, 0xd65f, 0xd663, 0xd662,
+  0xd665, 0xd7ef, 0xd7e2, 0xd800, 0xd7e8, 0xd7f2, 0xd7e7, 0x1829,
+  0xd7e5, 0xd8d5, 0xd8d0, 0xd8da, 0xd8d3, 0x1851, 0xd8d9, 0xd8cf,
+  0xd8d6, 0xd8d8, 0xd8f5, 0xd8ce, 0xd8d7, 0xd8f4, 0xd8cd, 0xd901,
+  0x36ba, 0xdb52, 0xdb55, 0xdb5a, 0xdb4d, 0xdb54,
+  /* 0x67 */
+  0xdb53, 0xdb5e, 0xdb67, 0xdb65, 0xdb4e, 0x18db, 0xdb4f, 0xdb61,
+  0xdb6e, 0xdb51, 0xdb5b, 0xdd63, 0xddb7, 0xddb6, 0xddc3, 0xddbb,
+  0xddb5, 0xde2e, 0xde30, 0xde33, 0xde31, 0xdea4, 0xdec1, 0xdebb,
+  0xdebe, 0xdf00, 0xdeff, 0xdf40, 0x1965, 0xdf3f, 0xdf44, 0x1964,
+  0x1967, 0xdfdb, 0xe00f, 0xe011, 0xe04e, 0xe04d, 0xe04b, 0xe04c,
+  0xe095, 0x3f3b, 0x3f45, 0x3f44, 0x3f3e, 0x3f3c, 0x3f3f, 0x3fcc,
+  0x3fce, 0x4122, 0x4123, 0x419f, 0x43c5, 0x43c4, 0x4be9, 0x4b99,
+  0x0211, 0x4be6, 0x4be7, 0x4bf7, 0x4fd2, 0x0333, 0x53fd, 0x540c,
+  0x540b, 0x57ed, 0x0421, 0x0422, 0x5a9b, 0x5b0a, 0x5c6f, 0x5c75,
+  0x5df2, 0x5df8, 0x5f3e, 0x6424, 0x640e, 0x6416, 0x6418, 0x6410,
+  0x6431, 0x6444, 0x05a6, 0x6429, 0x642f, 0x644b, 0x6436, 0x05a3,
+  0x6934, 0x6900, 0x692b, 0x6b20, 0x6b21, 0x6b1e,
+  /* 0x68 */
+  0x6b1d, 0x6df5, 0x6df2, 0x6df6, 0x7290, 0x729d, 0x729c, 0x7292,
+  0x7294, 0x72d1, 0x7293, 0x72b7, 0x7297, 0x72b0, 0x729f, 0x72c9,
+  0x742d, 0x742c, 0x7577, 0x772c, 0x7bc0, 0x7bb9, 0x7f53, 0x8040,
+  0x8202, 0x81fb, 0x0aa1, 0x858b, 0x85ae, 0x85ab, 0x86a1, 0xddcd,
+  0x87ea, 0x89dd, 0x89dc, 0x89d9, 0x8aab, 0x8aac, 0x8aad, 0x8ab2,
+  0x8b2c, 0x8b2b, 0x8bc2, 0x8e00, 0x8e0d, 0x8e06, 0x8dff, 0x8e03,
+  0x8e01, 0x8e10, 0x8e0f, 0x8e05, 0x8e98, 0x8e97, 0x8e96, 0x8e99,
+  0x90ac, 0x90ab, 0x9212, 0x93d8, 0x93df, 0x93d6, 0x952d, 0x9532,
+  0x983f, 0x982f, 0x9826, 0x983a, 0x9839, 0x0e5f, 0x983b, 0x9835,
+  0x982a, 0x9821, 0x9838, 0x9837, 0x9834, 0x0e5c, 0x9822, 0x9836,
+  0x9844, 0x9a45, 0x9a3b, 0x9a36, 0x9a42, 0x9c7a, 0x9c86, 0x9c8b,
+  0x9c7f, 0x9c81, 0x9e2a, 0x9ed5, 0x9f9f, 0x9f9d,
+  /* 0x69 */
+  0xa026, 0xa0f4, 0xa0f5, 0xa315, 0xa38e, 0xa38f, 0xa426, 0xa4a7,
+  0xa4af, 0xa5ad, 0xa5ac, 0xa5ab, 0xa5aa, 0xab2f, 0xab21, 0xab23,
+  0xaba3, 0xab49, 0xab3a, 0xab48, 0xab2d, 0xab25, 0xab29, 0xab32,
+  0xab34, 0xab24, 0xab2c, 0xab4b, 0xab3b, 0xab20, 0xab28, 0xaf98,
+  0x11f5, 0xaf97, 0x2d04, 0xaf9d, 0xafa8, 0xb0d5, 0xb277, 0xb278,
+  0xb272, 0xb273, 0xb302, 0xb43b, 0xb5fe, 0xb60b, 0xb5ff, 0xb607,
+  0x1311, 0x130c, 0xb630, 0xb6cd, 0xb6cf, 0xb710, 0xb70a, 0xb783,
+  0xb815, 0xb80e, 0xb80c, 0xb902, 0xb8fe, 0xb905, 0xb915, 0xb908,
+  0xba7f, 0xba77, 0xba7c, 0xba82, 0xba7e, 0xba78, 0xba7d, 0xba79,
+  0xba81, 0xbc4b, 0xbc63, 0xbc64, 0xbc56, 0xbc54, 0xbc4e, 0xbc10,
+  0xbc4f, 0xbc57, 0xbc5e, 0xbc51, 0xbc6a, 0xbc69, 0xbead, 0xbea4,
+  0xbeac, 0xbea9, 0xbeae, 0x3f4c, 0xc150, 0xc135,
+  /* 0x6a */
+  0xc132, 0xc2d8, 0xc2d1, 0xc2cf, 0xc2be, 0xc3d5, 0xc3c1, 0xc3c6,
+  0xc3c3, 0xc3c2, 0xc3c0, 0xc3c5, 0xc3c7, 0xc3bf, 0xc3c4, 0xc3d4,
+  0xc590, 0xc5d2, 0x154e, 0xc5d4, 0xc7af, 0xc7ae, 0xc7b2, 0xc7ad,
+  0xc89c, 0xc8a0, 0xc8b6, 0xca3d, 0xca56, 0xca82, 0xcb28, 0xcb2b,
+  0xcc3c, 0xcc3e, 0xcc3f, 0xcc42, 0xcc3d, 0xcc41, 0xcc3b, 0xcc49,
+  0xcc43, 0xcd39, 0xcd38, 0xce22, 0xce08, 0xce0c, 0xce06, 0xce13,
+  0xce04, 0xce20, 0xce1d, 0xce05, 0xce0a, 0xced6, 0xced7, 0xcf36,
+  0xcf37, 0xd023, 0xd022, 0xd020, 0xd01a, 0xd01d, 0xd11c, 0xd120,
+  0xd177, 0xd27f, 0xd28b, 0xd27d, 0xd299, 0xd284, 0xd289, 0xd285,
+  0xd283, 0xd286, 0xd29e, 0xd353, 0xd417, 0x1794, 0xd419, 0xd420,
+  0xd41f, 0xd423, 0xd418, 0xd421, 0xd429, 0xd424, 0xd426, 0xd55e,
+  0xd56f, 0xd56e, 0xd574, 0xd572, 0xd573, 0xd67d,
+  /* 0x6b */
+  0xd67e, 0xd685, 0xd67f, 0xd684, 0xd744, 0xd7f5, 0xd7f8, 0xd803,
+  0xd7f6, 0xd928, 0x1863, 0xd939, 0xd8fb, 0xd90e, 0xd8fd, 0xd91f,
+  0x1861, 0xd903, 0x36d8, 0xd910, 0x185a, 0xd90d, 0xd927, 0xd941,
+  0xdb72, 0xdb78, 0xdb80, 0x18e3, 0xdb85, 0xdb7b, 0x387c, 0xdb7d,
+  0xdb91, 0xdb88, 0xdbaa, 0xdb8d, 0xdb89, 0xdb95, 0xdb9b, 0xdb8c,
+  0xdb9e, 0xdb7c, 0xdb86, 0xdb84, 0xdd68, 0xddc5, 0xddc4, 0xddc9,
+  0xddc6, 0xde42, 0xde45, 0xde41, 0xde44, 0xdea6, 0xdec2, 0xdf42,
+  0xdf49, 0xdf48, 0xdf4a, 0xdf4c, 0xdf4b, 0xe017, 0xe018, 0xe015,
+  0xe052, 0xe054, 0xe053, 0xe09a, 0xe09b, 0xe0dc, 0xe0e4, 0xe191,
+  0x19af, 0xe1ba, 0x3f51, 0x3f5b, 0x3fcf, 0x6e05, 0x4c13, 0x4c15,
+  0x4c14, 0x4c23, 0x0213, 0x4c11, 0x4c12, 0x0280, 0x4ff0, 0x519b,
+  0x5412, 0x5416, 0x5417, 0x54b5, 0x57f4, 0x5ab1,
+  /* 0x6c */
+  0x5c79, 0x5dff, 0x5dfc, 0x5dfb, 0x5f3f, 0x5f44, 0x609d, 0x6432,
+  0x644c, 0x642b, 0x645a, 0x651f, 0x6901, 0x692d, 0x6927, 0x6959,
+  0x695a, 0x694d, 0x6958, 0x6b23, 0x6b25, 0x6b2b, 0x6dff, 0x6eae,
+  0x72cb, 0x72ca, 0x72d0, 0x72ce, 0x72cc, 0x72d8, 0x72c6, 0x72d2,
+  0x72cf, 0x72c8, 0x7617, 0x19b0, 0x7bc4, 0xcd40, 0x7be9, 0x7bf2,
+  0x7bfc, 0x7bea, 0x7beb, 0x7bfd, 0x7f78, 0x7f77, 0x7f73, 0x7f9e,
+  0x7f79, 0x80a2, 0x8103, 0x8204, 0x8205, 0x83ce, 0x85bf, 0x89f6,
+  0x89f7, 0x8b31, 0x8b30, 0x8bc9, 0x8bc7, 0x8e1c, 0x8e28, 0x8e1a,
+  0x8e1e, 0x8e1b, 0x8e1f, 0x90bf, 0x90bb, 0x90bc, 0x90c0, 0x921a,
+  0x93ef, 0x93ec, 0x93e9, 0x93f0, 0x93fe, 0x9534, 0x986a, 0x9895,
+  0x986c, 0x9872, 0x9867, 0x9860, 0x986b, 0x985e, 0x986f, 0x9866,
+  0x2946, 0x9862, 0x985d, 0x985c, 0xe365, 0x9a50,
+  /* 0x6d */
+  0x9c9f, 0x0f23, 0x9c9e, 0x9ca6, 0x9e35, 0x9e38, 0x9e36, 0x9e3a,
+  0x9edc, 0xa37c, 0xa3ab, 0x1049, 0xa3a8, 0xa3a7, 0xa42b, 0xa42c,
+  0xa428, 0x442b, 0xa4a9, 0xa4aa, 0xa4ab, 0xa4f8, 0xa5b1, 0xa5f0,
+  0xa5ef, 0xaba8, 0xab8b, 0xab94, 0xab9e, 0xab8f, 0xab88, 0xab7e,
+  0xab81, 0xab30, 0xab9b, 0xab82, 0xab90, 0xab85, 0xab7f, 0xaba9,
+  0xabde, 0xad0d, 0x11fa, 0xafcf, 0xafcb, 0xafd8, 0xafdd, 0xafd3,
+  0xafd0, 0xafd5, 0xafd6, 0xb0d6, 0xb292, 0xb295, 0xe0cb, 0xb28d,
+  0xb29b, 0xb29d, 0xb28f, 0xb29e, 0xb2a6, 0xb396, 0xb392, 0xb616,
+  0xb62a, 0xb629, 0xb62c, 0xb715, 0xb712, 0xb711, 0xb713, 0xb788,
+  0xb78b, 0xb78a, 0xb787, 0xb817, 0xb816, 0xb81a, 0xb919, 0xb917,
+  0xba91, 0xba94, 0xbc8b, 0xbc90, 0xbc8f, 0xbc86, 0xbc83, 0xbc8e,
+  0xbc87, 0xbca8, 0xbc85, 0xbca6, 0xbc82, 0xbca7,
+  /* 0x6e */
+  0xbeb9, 0xbeb7, 0xbeb4, 0xbeb6, 0xbeb3, 0xbec6, 0xc13c, 0xc140,
+  0xc138, 0xc291, 0xc2a6, 0xc2da, 0xc3da, 0xc3d8, 0xc3d9, 0xc3db,
+  0xc3d7, 0xc616, 0xc612, 0xc61f, 0x1559, 0xc614, 0xc61a, 0xc610,
+  0xc7b3, 0xc8ae, 0xc8c1, 0xc8b0, 0xc8af, 0xc8b1, 0xc8ad, 0xc8b2,
+  0xc8c4, 0xcb3c, 0xcb3f, 0xcc61, 0xcc66, 0xcd3c, 0xcd3b, 0xce2c,
+  0x167e, 0xce2a, 0xce3e, 0xce2f, 0xce32, 0xce27, 0xce29, 0xce40,
+  0xcedf, 0xcede, 0xcf3c, 0xcf3b, 0xcf3e, 0xd021, 0xd046, 0xd03c,
+  0xd036, 0xd038, 0xd035, 0xd131, 0xd136, 0xd12d, 0xd133, 0xd12f,
+  0xd12e, 0xd135, 0xd2ac, 0xd2a9, 0xd2a6, 0x17a8, 0xd44c, 0xd443,
+  0xd441, 0xd44f, 0xd442, 0xd451, 0x17a9, 0xd440, 0xd450, 0xd445,
+  0xd44a, 0xd44b, 0xd583, 0xd582, 0xd581, 0xd5e0, 0xd698, 0xd69f,
+  0xd69b, 0xd69a, 0xd699, 0xd696, 0xd6ae, 0xd69e,
+  /* 0x6f */
+  0xd809, 0xd80d, 0xd94e, 0xd94a, 0xd94d, 0xd940, 0xd93e, 0xd948,
+  0xd942, 0xd962, 0xd945, 0xd951, 0xdbc6, 0xdbd0, 0xdbc0, 0xdbb7,
+  0xdbc2, 0xdbbc, 0xdbc5, 0xdbdc, 0xdbdb, 0xdbd2, 0xdbc7, 0xdbb6,
+  0xdbc9, 0xdbcc, 0xdbd1, 0xdbcd, 0xdbda, 0xdbba, 0xdbd3, 0xdbce,
+  0xdbf6, 0xdbbd, 0xdbdd, 0xdbc8, 0xdc0d, 0xdc35, 0xdd71, 0xdd6e,
+  0xdd6f, 0xddd6, 0xde4c, 0xde4f, 0xde54, 0xde53, 0xdec9, 0xdec8,
+  0xdf03, 0x1954, 0xdf04, 0x1956, 0xdf57, 0xdf52, 0xdf53, 0x196d,
+  0xdf56, 0xdf5c, 0xdf55, 0xe064, 0xe05d, 0xe05e, 0xe0a2, 0xe0a3,
+  0x198e, 0xe0e7, 0xe0e6, 0xe198, 0xe1ac, 0xe1af, 0xe1ae, 0x3f59,
+  0x40a9, 0x432a, 0x43c7, 0x4c41, 0x4c37, 0x4c35, 0x4c33, 0x4c39,
+  0x4c32, 0x4fff, 0x5001, 0x4ff8, 0x541b, 0x5419, 0x56bf, 0x5abc,
+  0x5abe, 0x5abd, 0x5c7d, 0x5f46, 0x5f47, 0x60a4,
+  /* 0x70 */
+  0x6521, 0x6562, 0x6986, 0x0672, 0x6b2f, 0x6b31, 0x0814, 0x72f8,
+  0x72f5, 0x72f9, 0x72f2, 0x72fa, 0x72f3, 0x7314, 0x72fd, 0x730f,
+  0x730e, 0x7301, 0x7437, 0x7435, 0x7434, 0x7431, 0x757a, 0x757b,
+  0x7737, 0x7c2b, 0x7bfb, 0x7c16, 0x7c13, 0x0993, 0x7c11, 0x7c0f,
+  0x7c1b, 0x7c38, 0x7fa4, 0x8209, 0x8207, 0x820b, 0x83d3, 0x83d1,
+  0x83d8, 0x861d, 0x86a9, 0x86d0, 0xad15, 0x8a02, 0x8a05, 0x8a01,
+  0x8a00, 0x8e2e, 0x8e30, 0x8e2f, 0x8e31, 0x90d2, 0x90d3, 0x9402,
+  0x9540, 0x9542, 0x953b, 0x95ce, 0x9898, 0x988f, 0x9894, 0x9891,
+  0x0e6f, 0x98ba, 0x9890, 0x9886, 0x989a, 0x988c, 0x9893, 0x9887,
+  0x9888, 0x9897, 0x988d, 0x989c, 0x98bd, 0x9a3c, 0x9a59, 0x0eb0,
+  0x9cd1, 0x9cbb, 0x9cbe, 0x9d5d, 0x9ee2, 0xa105, 0xa3ba, 0x012e,
+  0xa3f4, 0xa4b2, 0xa4f9, 0xa5b7, 0xa5b6, 0xab89,
+  /* 0x71 */
+  0xabf9, 0xabd9, 0xabe8, 0xabd4, 0xabdb, 0xabe2, 0xabdf, 0xabd1,
+  0xabe9, 0xabea, 0xad13, 0xad11, 0xaffa, 0xaff8, 0xaff4, 0xaffb,
+  0xb00e, 0xb002, 0xb00f, 0xb290, 0xb2ad, 0xb2a9, 0xb448, 0xb65a,
+  0xb64f, 0xb64e, 0xb655, 0xb654, 0xb64a, 0xb6d5, 0xb718, 0xb78d,
+  0xb81d, 0xb819, 0xb926, 0xb928, 0xb92b, 0xb97d, 0xbaa0, 0xba9a,
+  0xba9b, 0xbcb5, 0xbcad, 0xbcb2, 0xbd94, 0xbec9, 0xc14e, 0xc14f,
+  0xc144, 0xc152, 0xc3e9, 0xc439, 0x1569, 0x337e, 0xc8c7, 0xc8d3,
+  0xc8c6, 0xc8c3, 0x15b4, 0xc8d2, 0xca66, 0xcc7f, 0xcc80, 0xcc84,
+  0xcc85, 0xcce3, 0x164d, 0xcd41, 0xcd44, 0xcd43, 0xce4e, 0xce4f,
+  0x1683, 0xce49, 0xce4a, 0xce4b, 0xce43, 0xcee0, 0xcee5, 0xcee1,
+  0xcee6, 0xcee2, 0xcf0c, 0xcf40, 0xd049, 0xd04a, 0xd054, 0xd04c,
+  0xd055, 0xd056, 0xd13b, 0xd13d, 0xd2a4, 0xd2a8,
+  /* 0x72 */
+  0xd2c3, 0xd2bf, 0xd2c8, 0xd2c2, 0xd2ca, 0xd2cc, 0xd2c9, 0xd2be,
+  0xd2cd, 0xd2c7, 0xd2c5, 0xd35d, 0x17b0, 0xd46c, 0xd46b, 0xd470,
+  0xd46d, 0xd46f, 0xd489, 0xd484, 0xd58d, 0xd58a, 0xd58e, 0xd591,
+  0xd6b5, 0xd6b1, 0xd6af, 0xd6b9, 0xd6b7, 0xd6b0, 0x180c, 0xd717,
+  0x1818, 0xd74f, 0xd819, 0xd810, 0xd818, 0xd811, 0xd81c, 0xd812,
+  0xd976, 0xd971, 0x3720, 0xd97a, 0xd97f, 0x3722, 0xd973, 0xd9ab,
+  0x371e, 0xd977, 0xd974, 0xd97e, 0xd99b, 0xd984, 0xd97c, 0xdc29,
+  0xdc2b, 0xdc0e, 0xdc00, 0xdc0b, 0xdbfe, 0xdbfa, 0xdc17, 0xdbff,
+  0xdc0c, 0xdc0f, 0x18f5, 0xdc02, 0xdc01, 0xdbfc, 0xdc49, 0xdc06,
+  0xdc12, 0xdc13, 0xdd78, 0xde5b, 0xde62, 0xde5f, 0xde5d, 0xdeab,
+  0xded5, 0xded4, 0xded3, 0xdf07, 0xdf6c, 0xdf70, 0xdf6e, 0xdf68,
+  0xdf6d, 0xdf77, 0xdf6a, 0xdfce, 0xdfec, 0xe069,
+  /* 0x73 */
+  0xe068, 0xe0a6, 0xe0a9, 0xe0aa, 0xe100, 0xe10d, 0xe0f8, 0xe0fc,
+  0xe10a, 0xe0f7, 0xe101, 0xe1b6, 0xe1bb, 0xe1b7, 0xe1b9, 0xe1ca,
+  0x3f69, 0x4125, 0x4c59, 0x5007, 0x5009, 0x5422, 0x5607, 0x5604,
+  0x6e0f, 0x57f8, 0x5ac7, 0x5ad1, 0x5c7e, 0x5e08, 0x5f4a, 0xe298,
+  0x5fb9, 0x6988, 0x6991, 0x6984, 0x6973, 0x6989, 0x6985, 0x6b33,
+  0x6e13, 0x731d, 0x731f, 0x731c, 0x7320, 0x731a, 0x731b, 0x7439,
+  0x74af, 0x75e5, 0x773c, 0x7c37, 0x7c3a, 0x7fbb, 0x0a0e, 0x8210,
+  0x820d, 0x86af, 0x8711, 0x0bd8, 0x8a0d, 0x8a0c, 0x8a0b, 0x8bd4,
+  0x8e3d, 0x8e3e, 0x8e3b, 0x8e43, 0x8e40, 0x8e46, 0x8f11, 0x90dd,
+  0x90df, 0x90ea, 0x924a, 0x9406, 0x98c1, 0x98b9, 0x98c6, 0x98b8,
+  0x98bb, 0x98c8, 0x98c5, 0x98bf, 0x98c7, 0x98c4, 0x9a65, 0x9a67,
+  0x9cd7, 0x9cdb, 0x9cd4, 0x9cd6, 0x9ee8, 0xa10a,
+  /* 0x74 */
+  0xa5bd, 0xa5be, 0xac1a, 0xac0d, 0xac0f, 0xac1b, 0xac10, 0xac11,
+  0xac13, 0xad18, 0xb020, 0xb01f, 0xb023, 0xb01d, 0xb037, 0xb025,
+  0xb024, 0xb02a, 0xb027, 0xb033, 0xb028, 0xb034, 0xb2ba, 0x2e70,
+  0xb39d, 0xb44c, 0xb65c, 0xb66a, 0xb65d, 0xb665, 0xb663, 0xb65e,
+  0xb719, 0xb797, 0xb93f, 0xb933, 0xb932, 0xbaa1, 0xbaa5, 0xbaa4,
+  0xbaa2, 0xbcc1, 0x142c, 0xbcc7, 0xbcc4, 0xbcc6, 0xbcc5, 0xbcd4,
+  0xbcca, 0xc153, 0xc3f1, 0xc421, 0x156e, 0xc6b7, 0xc692, 0xc8d4,
+  0xca44, 0xcc98, 0xcc9b, 0xcc91, 0xcc95, 0xcc9a, 0xcc92, 0xce53,
+  0xce57, 0x1686, 0xce5c, 0xce5d, 0xce64, 0xceea, 0xceed, 0xcf42,
+  0xcf43, 0xd064, 0xd061, 0xd060, 0xd17d, 0xd2d4, 0xd2d5, 0xd2d9,
+  0xd487, 0xd499, 0xd48c, 0xd48a, 0xd48f, 0x17b3, 0xd48b, 0xd482,
+  0xd49b, 0x17eb, 0xd6c8, 0xd6c4, 0xd6cc, 0xd6c7,
+  /* 0x75 */
+  0xd6c3, 0xd6c6, 0xd6cb, 0xd6ca, 0xd6c9, 0xd6cd, 0xd753, 0xd821,
+  0xd829, 0xd81d, 0xd824, 0xd828, 0x3743, 0xd9b1, 0xd9b2, 0xd9b5,
+  0xd9d6, 0xd9af, 0xd9ca, 0xd9b8, 0xe412, 0xe411, 0xdc45, 0xdc47,
+  0xdc34, 0xdc6e, 0xdc42, 0xdc31, 0xdc2e, 0xdc56, 0xdc38, 0xdc37,
+  0xdc4b, 0xdc2d, 0xdc33, 0xdc36, 0x38e0, 0xdc48, 0xdddc, 0x1942,
+  0xde66, 0xde6d, 0xde63, 0xde64, 0x1941, 0xde67, 0xded9, 0xdf0b,
+  0xdf7e, 0xdf8b, 0xe026, 0xe02c, 0xe029, 0xe06f, 0xe06b, 0xe06d,
+  0xe06e, 0xe11c, 0xe111, 0xe110, 0xe124, 0xe112, 0xe115, 0xe117,
+  0x19ac, 0x3f6f, 0x40ab, 0x432e, 0x43c9, 0x4696, 0x4c85, 0x51a0,
+  0x542b, 0x5e0d, 0x6b36, 0x3afd, 0x072f, 0x072e, 0x6eb1, 0x734a,
+  0x7337, 0x733c, 0x7338, 0x733a, 0x733e, 0x7349, 0x084d, 0x087b,
+  0x7580, 0x757f, 0x75e3, 0x773f, 0x7c52, 0x7c4e,
+  /* 0x76 */
+  0x7c4a, 0x7c4b, 0x7fd5, 0x85d8, 0x8620, 0x86b3, 0x86b1, 0x86b0,
+  0x8a17, 0x8bd9, 0x8e49, 0x8f13, 0x90ed, 0x90eb, 0x90ee, 0x940a,
+  0x940b, 0x954a, 0x98d5, 0x98d7, 0x98de, 0x98dc, 0x98ee, 0x9a70,
+  0x0eb2, 0x9cd9, 0x9ed7, 0xa3cb, 0xa3c7, 0xa4fc, 0xac3b, 0xac39,
+  0xac4b, 0xac43, 0xac40, 0xac46, 0xb04d, 0xb043, 0xb047, 0xb04b,
+  0xb055, 0xb052, 0xb65f, 0x1322, 0xb67c, 0xb67b, 0xbaa8, 0xbaa9,
+  0xbcde, 0xbcd7, 0xbcdd, 0xbcd6, 0xbcd8, 0xbd9b, 0xbee0, 0xbee8,
+  0xbee6, 0xc3f8, 0xc3fb, 0xc6bb, 0x3259, 0xc6b8, 0x1570, 0xc7c1,
+  0xc7c0, 0xcca4, 0xccab, 0xcd4d, 0xce65, 0xce67, 0xce6a, 0xce66,
+  0xce69, 0xd073, 0xd080, 0xd06f, 0xd071, 0xd2e4, 0xd2e6, 0xd2e7,
+  0xd4a0, 0xd4a4, 0xd5a2, 0xd5a7, 0xd5a4, 0xd6de, 0xd6db, 0xd758,
+  0xd75c, 0xd82f, 0xd82e, 0xd9dd, 0xd9e4, 0xd9d8,
+  /* 0x77 */
+  0xd9e7, 0xd9da, 0xd975, 0x1895, 0xdc79, 0xdc80, 0xdc7f, 0xdc7c,
+  0xdc75, 0xdc7b, 0xdc82, 0x1900, 0xdc89, 0xdc74, 0xdc7d, 0xdc7a,
+  0xdc86, 0xdca8, 0xdc72, 0x1902, 0xdc8b, 0xdc91, 0xdcb3, 0xdc81,
+  0xdd82, 0xdde1, 0xdde3, 0xdde2, 0xde76, 0xde74, 0xde72, 0xde75,
+  0xdf0e, 0xdf0d, 0xdf94, 0xdf92, 0xdf93, 0xdf91, 0xdf8f, 0xdf95,
+  0xdfd0, 0xdff7, 0xe076, 0xe0af, 0x199f, 0xe126, 0xe125, 0xe12d,
+  0xe1a0, 0xe1c3, 0x3fd7, 0x45cc, 0x4c79, 0x4c7a, 0x5015, 0x5adb,
+  0x5c85, 0x6470, 0x647b, 0x69a5, 0x699f, 0x6e17, 0x6eb2, 0x7339,
+  0x7340, 0x734e, 0x743e, 0x75e8, 0x75e7, 0x7c66, 0x7c61, 0x7fda,
+  0x8214, 0x83df, 0x8a18, 0x8b39, 0x8b3a, 0x9230, 0x9232, 0x940e,
+  0x954c, 0x98e8, 0x98f1, 0x98eb, 0x98ec, 0x9a74, 0x9a73, 0x9cf1,
+  0x9e42, 0x9e3e, 0x9e41, 0xa02c, 0xa3d2, 0xa4bb,
+  /* 0x78 */
+  0xac58, 0xac57, 0xac56, 0xac5a, 0x117d, 0xb061, 0xb068, 0xb065,
+  0xb05f, 0xb064, 0xb05e, 0xb05b, 0xb067, 0xb2c3, 0xb3a2, 0xb453,
+  0xb67d, 0xb720, 0xbaae, 0xbaaf, 0xbab0, 0xbce7, 0xbce6, 0xbce9,
+  0xbef1, 0xbeeb, 0xbeea, 0xbee9, 0xc163, 0xc402, 0xc3fe, 0xc6de,
+  0xc7c2, 0xc8e6, 0xca5d, 0xccad, 0xce75, 0xce72, 0xce77, 0x16f6,
+  0xd151, 0xd2e8, 0xd2ed, 0xd2ee, 0xd4b9, 0xd4a1, 0xd4b6, 0xd5ae,
+  0xd6e8, 0x1812, 0xd71e, 0xd831, 0xd832, 0x1891, 0xda0e, 0xda12,
+  0xda09, 0xda05, 0x1890, 0xda03, 0xda1f, 0xda0d, 0xda0c, 0xda04,
+  0xda0a, 0xdcc2, 0xdcbf, 0xdcc9, 0xdcb2, 0xdcc1, 0xdcaf, 0xdcb4,
+  0xdcb0, 0xdcb6, 0xdcb7, 0xdcbb, 0xdcb1, 0xddf0, 0xde78, 0xde7a,
+  0xde79, 0xdee4, 0xdee6, 0xdf9f, 0xdf9d, 0xdf98, 0xdf99, 0xdff9,
+  0xe030, 0xe082, 0xe081, 0xe0b3, 0xe07f, 0xe13a,
+  /* 0x79 */
+  0xe13e, 0xe148, 0x4c86, 0x5436, 0x5613, 0x5722, 0x5add, 0x60a7,
+  0x647d, 0x0679, 0x6e1c, 0x7365, 0x7360, 0x7367, 0x084e, 0x761a,
+  0x85e3, 0x9234, 0x9418, 0x9552, 0x98fc, 0x9a79, 0x9a78, 0x9a76,
+  0x9cfa, 0x9cf8, 0xa02d, 0xa3d6, 0xa4bd, 0xa4bf, 0xa4be, 0xac44,
+  0xac70, 0xac62, 0xac6e, 0xb06e, 0xb07c, 0xb074, 0xb078, 0xb070,
+  0xb079, 0xb071, 0xb2cc, 0xb3a7, 0xb3a6, 0xb693, 0xb721, 0xb79c,
+  0xbd9d, 0xbef4, 0xbef3, 0xc8f0, 0xccb8, 0xccb6, 0xccbd, 0xce73,
+  0xce82, 0xd087, 0xd156, 0xd159, 0xd2f6, 0xd4c9, 0xd4c5, 0xd4c7,
+  0xd4ca, 0xd4c2, 0xd4c4, 0xd6f2, 0xd6f0, 0xd83b, 0xd83a, 0xda26,
+  0xda28, 0xda34, 0xda2d, 0xdcd7, 0xdcd2, 0xdcd6, 0xdcdc, 0xdcd3,
+  0xdcd1, 0xdd86, 0x191e, 0xddef, 0xddee, 0xdee8, 0xdfac, 0xdfa9,
+  0xdfaa, 0xdfab, 0xdffb, 0xe033, 0xe088, 0xe0b6,
+  /* 0x7a */
+  0xe0b7, 0xe0d0, 0xe0cf, 0xe14f, 0xe159, 0xe14c, 0x5618, 0x5ae0,
+  0x7369, 0x7c73, 0x7c72, 0x85e8, 0x90fb, 0x941c, 0x9909, 0x990a,
+  0x9908, 0x9a7d, 0x9a7f, 0x9d67, 0xac7a, 0xac7b, 0xb2d1, 0xe3cb,
+  0xb69d, 0xb79d, 0xbcfc, 0xbcfb, 0xbcfd, 0xbef5, 0xbef6, 0xc70f,
+  0xc71d, 0xccc7, 0xccc1, 0xccbf, 0xcd54, 0xce7f, 0xcef5, 0xd08a,
+  0xd08c, 0xd15c, 0xd365, 0xd4cf, 0xd4d0, 0xd5b8, 0xd6fa, 0xd766,
+  0xda40, 0xda41, 0x3772, 0xdcf7, 0xdcf3, 0xdcef, 0xdcf4, 0xdced,
+  0xdcf2, 0xdcf1, 0xdcf9, 0xdfb4, 0xdffc, 0xe0bc, 0xe15e, 0xe15b,
+  0xe15f, 0xe15d, 0xe1cf, 0xe1ce, 0x543a, 0x5ae1, 0x5e15, 0x5e14,
+  0x7c78, 0x7c79, 0x7fe6, 0x86b8, 0x8a22, 0x90fe, 0xa3db, 0xa506,
+  0xa5c8, 0xac89, 0xb086, 0xb3ad, 0xb699, 0xb6d8, 0xb723, 0xb823,
+  0xbab5, 0xbef9, 0xc407, 0xc71e, 0xc8fb, 0xca72,
+  /* 0x7b */
+  0xca73, 0xce87, 0xcf49, 0xd15d, 0xd2f8, 0xd703, 0xda4e, 0xda4d,
+  0xda50, 0xda55, 0xdd09, 0xdd07, 0xdd0c, 0xdd03, 0xdd06, 0xdd0b,
+  0xdd0a, 0xdd89, 0xdfbb, 0xdfff, 0xe036, 0xe08b, 0xe166, 0xe169,
+  0xe167, 0xe1c2, 0xe1d2, 0x5ae2, 0x0428, 0x6488, 0x6e5b, 0x7376,
+  0x7c7d, 0x80a6, 0x8e5a, 0x9917, 0xa3dc, 0xac8f, 0xb094, 0xb095,
+  0xbab6, 0xbd04, 0xc2ee, 0xce8a, 0xcef9, 0xd707, 0xd71f, 0xd72a,
+  0xd845, 0xda5c, 0xda5b, 0xda61, 0xda5d, 0xdd18, 0xdd1f, 0xde83,
+  0xdf16, 0xdf14, 0xdfbf, 0xdfc0, 0xe173, 0xe1c0, 0x5017, 0x6489,
+  0x941e, 0x941f, 0x9554, 0x9918, 0x9d05, 0xac95, 0xb098, 0xb09b,
+  0xb459, 0xbd08, 0xbf01, 0xccce, 0xcefa, 0xd5be, 0xd847, 0xda6a,
+  0xda69, 0xda68, 0xda67, 0xdd25, 0xdd28, 0xdfc4, 0xe037, 0xe08d,
+  0xe08c, 0x1991, 0xe320, 0x9922, 0x9a82, 0xb2d9,
+  /* 0x7c */
+  0xc738, 0xcefb, 0xd4e1, 0xd772, 0xd848, 0xda6c, 0xda70, 0xdd31,
+  0xdd30, 0xe179, 0x9923, 0xa3f8, 0xd774, 0xda73, 0xdd34, 0xde87,
+  0xdeb2, 0xe0c2, 0xe17d, 0x5ae5, 0xce8c, 0xda77, 0xda75, 0xdd38,
+  0xdd3a, 0xe183, 0xe181, 0x7c80, 0xac99, 0x1187, 0xcf4a, 0xd84a,
+  0xdd3c, 0xe1c8, 0x9104, 0xb3af, 0xe189, 0xddfa, 0xd161, 0xdd3f,
+  0xac93, 0xdfc9, 0xb2de, 0xce91, 0xe18e, 0xe18d, 0xac98, 0xa4c5,
+  0xe1a5,
+};
+
+static const ucs4_t cns11643_5_2uni_upages[229] = {
+  0x03400, 0x03500, 0x03600, 0x03700, 0x03800, 0x03900, 0x03a00, 0x03b00,
+  0x03c00, 0x03d00, 0x03e00, 0x03f00, 0x04000, 0x04100, 0x04200, 0x04300,
+  0x04400, 0x04500, 0x04600, 0x04700, 0x04800, 0x04900, 0x04a00, 0x04b00,
+  0x04c00, 0x04d00, 0x05200, 0x05900, 0x05e00, 0x05f00, 0x06100, 0x06300,
+  0x06400, 0x06b00, 0x07200, 0x07300, 0x07500, 0x07600, 0x07900, 0x07a00,
+  0x07b00, 0x07c00, 0x08300, 0x08600, 0x08700, 0x08800, 0x08900, 0x08a00,
+  0x08c00, 0x08e00, 0x09400, 0x09500, 0x09700, 0x09900, 0x09b00, 0x09c00,
+  0x09d00, 0x09e00, 0x0ff00, 0x20000, 0x20100, 0x20200, 0x20300, 0x20400,
+  0x20500, 0x20600, 0x20700, 0x20800, 0x20900, 0x20a00, 0x20b00, 0x20c00,
+  0x20d00, 0x20e00, 0x20f00, 0x21000, 0x21100, 0x21200, 0x21300, 0x21400,
+  0x21500, 0x21600, 0x21700, 0x21800, 0x21900, 0x21a00, 0x21b00, 0x21c00,
+  0x21d00, 0x21e00, 0x21f00, 0x22000, 0x22100, 0x22200, 0x22300, 0x22400,
+  0x22500, 0x22600, 0x22700, 0x22800, 0x22900, 0x22a00, 0x22b00, 0x22c00,
+  0x22d00, 0x22e00, 0x22f00, 0x23000, 0x23100, 0x23200, 0x23300, 0x23400,
+  0x23500, 0x23600, 0x23700, 0x23800, 0x23900, 0x23a00, 0x23b00, 0x23c00,
+  0x23d00, 0x23e00, 0x23f00, 0x24000, 0x24100, 0x24200, 0x24300, 0x24400,
+  0x24500, 0x24600, 0x24700, 0x24800, 0x24900, 0x24a00, 0x24b00, 0x24c00,
+  0x24d00, 0x24e00, 0x24f00, 0x25000, 0x25100, 0x25200, 0x25300, 0x25400,
+  0x25500, 0x25600, 0x25700, 0x25800, 0x25900, 0x25a00, 0x25b00, 0x25c00,
+  0x25d00, 0x25e00, 0x25f00, 0x26000, 0x26100, 0x26200, 0x26300, 0x26400,
+  0x26500, 0x26600, 0x26700, 0x26800, 0x26900, 0x26a00, 0x26b00, 0x26c00,
+  0x26d00, 0x26e00, 0x26f00, 0x27000, 0x27100, 0x27200, 0x27300, 0x27400,
+  0x27500, 0x27600, 0x27700, 0x27800, 0x27900, 0x27a00, 0x27b00, 0x27c00,
+  0x27d00, 0x27e00, 0x27f00, 0x28000, 0x28100, 0x28200, 0x28300, 0x28400,
+  0x28500, 0x28600, 0x28700, 0x28800, 0x28900, 0x28a00, 0x28b00, 0x28c00,
+  0x28d00, 0x28e00, 0x28f00, 0x29000, 0x29100, 0x29200, 0x29300, 0x29400,
+  0x29500, 0x29600, 0x29700, 0x29800, 0x29900, 0x29a00, 0x29b00, 0x29c00,
+  0x29d00, 0x29e00, 0x29f00, 0x2a000, 0x2a100, 0x2a200, 0x2a300, 0x2a400,
+  0x2a500, 0x2a600, 0x2f800, 0x2f900, 0x2fa00,
+};
+
+static int
+cns11643_5_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 >= 0x21 && c1 <= 0x7c)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if (c2 >= 0x21 && c2 < 0x7f) {
+        unsigned int i = 94 * (c1 - 0x21) + (c2 - 0x21);
+        ucs4_t wc = 0xfffd;
+        unsigned short swc;
+        {
+          if (i < 8603)
+            swc = cns11643_5_2uni_page21[i],
+            wc = cns11643_5_2uni_upages[swc>>8] | (swc & 0xff);
+        }
+        if (wc != 0xfffd) {
+          *pwc = wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
diff --git a/graf2d/win32gdk/gdk/src/iconv/cns11643_6.h b/graf2d/win32gdk/gdk/src/iconv/cns11643_6.h
new file mode 100644
index 00000000000..84939843513
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cns11643_6.h
@@ -0,0 +1,968 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CNS 11643-1992 plane 6
+ */
+
+static const unsigned short cns11643_6_2uni_page21[6388] = {
+  /* 0x21 */
+  0xc902, 0x3362, 0x0005, 0x3388, 0x33d0, 0x33cf, 0x341e, 0x341f,
+  0x3420, 0x3c0e, 0x3c2c, 0x3361, 0x3304, 0x3305, 0x3303, 0x0004,
+  0xc901, 0x337d, 0x338d, 0x34a3, 0x34a4, 0x37db, 0x3800, 0xc91e,
+  0x39a3, 0x3b32, 0x013f, 0x3dd4, 0x3dd5, 0x4e23, 0x552c, 0x557a,
+  0x3803, 0x3307, 0x3308, 0x338f, 0x339c, 0x33d5, 0x3412, 0x3413,
+  0x3414, 0x3421, 0x34a8, 0x34a6, 0x3776, 0x3801, 0x383d, 0xc914,
+  0x383e, 0x3929, 0x3977, 0x3978, 0x39a6, 0x39a9, 0x39ac, 0x3b34,
+  0x3804, 0x3c7b, 0x3d10, 0x392f, 0x3dd7, 0x3e1c, 0x3e1f, 0x3e1a,
+  0xc936, 0x3e1e, 0x3e9e, 0x3e9a, 0x43a0, 0x43a1, 0x47d2, 0x47d3,
+  0x4bb9, 0x4d1d, 0x4d55, 0x4eff, 0x51e7, 0x042a, 0x5211, 0x5213,
+  0x5212, 0x53af, 0x53b1, 0xc990, 0x552d, 0x557b, 0x559d, 0x559a,
+  0x04a7, 0x559f, 0x55a0, 0x559c, 0x56bd, 0x04fa,
+  /* 0x22 */
+  0x57aa, 0x626c, 0x6291, 0x6d74, 0x756a, 0xca29, 0x8605, 0x8f6b,
+  0x8f6a, 0x33e0, 0x3312, 0x0000, 0x337f, 0x33a0, 0x3399, 0x3395,
+  0x339e, 0x33df, 0x33de, 0x34af, 0x34ad, 0x34b0, 0x37df, 0x3843,
+  0x3841, 0x3848, 0x3875, 0xc91a, 0x3932, 0x397b, 0x3979, 0x39b3,
+  0x00db, 0x3ea7, 0x39b2, 0x39b0, 0x39b4, 0xc929, 0x3bcd, 0x3bce,
+  0xc92b, 0x3c10, 0x3c80, 0x3cd3, 0x3d30, 0x3398, 0x3d2f, 0x3d31,
+  0x3dda, 0x3dd9, 0x3e27, 0x3e28, 0x3e21, 0x3e25, 0x3ea6, 0x3ea2,
+  0x3ea1, 0x3ea4, 0xc939, 0x3eaa, 0x3ea5, 0x3ea3, 0x3364, 0x443f,
+  0x4444, 0x471b, 0x4753, 0x4784, 0x4786, 0x47d5, 0xc960, 0x4b3e,
+  0x4b40, 0x4dca, 0x4dc9, 0x4e26, 0x4f00, 0x4f31, 0x4f3c, 0x4f30,
+  0x4f33, 0x4f32, 0x4f38, 0x5234, 0x5253, 0x5254, 0x53b4, 0x53b2,
+  0x552f, 0x55a5, 0x55a7, 0x55a4, 0x55a8, 0x55a9,
+  /* 0x23 */
+  0x55a2, 0x55a3, 0x55a6, 0x5681, 0x5680, 0x57ad, 0x5c24, 0x5c65,
+  0x5c68, 0x5c69, 0x633c, 0x633b, 0x655d, 0x6a44, 0x7182, 0x74f1,
+  0x756b, 0x771b, 0x78eb, 0x7bba, 0x7bd3, 0x7d13, 0x8922, 0x97f4,
+  0xab0f, 0xab10, 0x3807, 0xc10b, 0xc10a, 0x3319, 0x331a, 0x3318,
+  0x3366, 0x3382, 0x33a8, 0x33e5, 0x33e7, 0x33e4, 0x3415, 0x3423,
+  0x3424, 0x3443, 0x34c3, 0x34bc, 0x34bb, 0x0038, 0x34b7, 0x34b9,
+  0x34cf, 0xc90d, 0x377a, 0x377b, 0x37e1, 0x37e0, 0x3809, 0x384d,
+  0xc916, 0x384b, 0x3879, 0x38b1, 0x3936, 0x3935, 0x3937, 0x3938,
+  0x397f, 0x3980, 0x3981, 0x9653, 0x397e, 0x39cd, 0x39bf, 0x39be,
+  0x39c2, 0x39b8, 0x39c1, 0x2030, 0x3c31, 0x3c2f, 0x3c6f, 0x3c82,
+  0x013a, 0x3c87, 0x3c86, 0x3c8d, 0x3c94, 0x3cd7, 0x3cd4, 0x3cd8,
+  0x3d16, 0x3d14, 0x3d2e, 0x3d36, 0x3d37, 0x51ee,
+  /* 0x24 */
+  0x3de0, 0x3de5, 0x3ddf, 0x3e2b, 0x3e29, 0x3e2d, 0x3e2f, 0x3eb7,
+  0x3ec9, 0x3ec1, 0x3eca, 0x3eb2, 0x3eac, 0x3eae, 0x43b2, 0x43a8,
+  0x43b0, 0x43a7, 0xc951, 0x4452, 0x444a, 0x4756, 0x4755, 0x475f,
+  0x475e, 0x4788, 0xc95d, 0x47dd, 0x47e2, 0x47e1, 0x47df, 0x47e0,
+  0x48af, 0x48b1, 0x48ba, 0x4b45, 0x4b43, 0x4bbd, 0x4bc8, 0xc96c,
+  0x4bbe, 0x4bbf, 0xc974, 0x4d59, 0x4e29, 0x4e2c, 0x4e2f, 0x4e2d,
+  0x4e2e, 0x4f04, 0x4f02, 0x4f01, 0x4f40, 0x4f4a, 0x4f3f, 0x4f4f,
+  0x4f41, 0x4f4e, 0x51eb, 0x51ec, 0x33ac, 0x525b, 0x5263, 0x525a,
+  0x5259, 0x53dc, 0x53db, 0x53d9, 0x53e0, 0x53dd, 0x3320, 0x55b0,
+  0x55b1, 0x55b2, 0x55b6, 0x5651, 0x5652, 0x5650, 0x5684, 0x04c9,
+  0x5683, 0x57c3, 0x57b8, 0x57b9, 0x57b2, 0x5b90, 0x5c26, 0x5c29,
+  0x5c6e, 0x6340, 0x633e, 0x6341, 0x655e, 0x65bb,
+  /* 0x25 */
+  0x65bc, 0x65b9, 0xc9ef, 0x6980, 0x084f, 0x6a45, 0x6aba, 0x6abd,
+  0x6d56, 0x6d55, 0x6d75, 0x6d77, 0x6d81, 0xc9fa, 0x6d83, 0x6d8b,
+  0x6d84, 0x7186, 0x7183, 0x718b, 0x756d, 0x7616, 0x7728, 0x78ea,
+  0x7bd4, 0x7c03, 0x7d15, 0x7f3d, 0x7f3e, 0x8416, 0xca4c, 0x8606,
+  0x874d, 0x8f22, 0x8f73, 0x8f6d, 0x8f6e, 0x91b1, 0x384e, 0x932d,
+  0x0fcd, 0x95f9, 0x9652, 0x9800, 0x97fc, 0x97fa, 0x1092, 0x97f7,
+  0x97f8, 0xca90, 0xcac4, 0xa627, 0xab11, 0x33ae, 0xad50, 0xad4f,
+  0xad4d, 0xaf71, 0xcae2, 0xaf72, 0xb518, 0x3d44, 0x3321, 0x3367,
+  0x33af, 0x33b0, 0x3329, 0x3417, 0x3422, 0xc903, 0x3325, 0x3428,
+  0x34ff, 0x34d9, 0x34db, 0x34de, 0x34f2, 0x34fe, 0x34f4, 0x34dd,
+  0x0045, 0xc904, 0x3501, 0x34dc, 0x377d, 0x3781, 0x377e, 0x377f,
+  0x37e5, 0x380f, 0x00b5, 0x380a, 0x00b6, 0x380b,
+  /* 0x26 */
+  0x3851, 0x3852, 0x3850, 0x38b8, 0x393d, 0x393e, 0x393c, 0x3987,
+  0x39d7, 0x39db, 0x39cf, 0x39e0, 0x3b4c, 0x3b42, 0x3bd4, 0x3c11,
+  0x3c14, 0x3c15, 0x3c12, 0x3c33, 0x3c35, 0x0137, 0x3c71, 0x0130,
+  0x3c91, 0x3c93, 0x3c95, 0x3cdc, 0x3d42, 0x3d40, 0x83a6, 0x3de6,
+  0x448f, 0x3e32, 0xc937, 0x3e31, 0x3ef5, 0x3ecd, 0x3ede, 0x3ed5,
+  0x3eda, 0x3eee, 0x3eec, 0x3ecf, 0x3ece, 0xc93d, 0x3ecc, 0x3ef3,
+  0x43c1, 0x43c4, 0x43c6, 0x43b4, 0x43c3, 0x43b8, 0x43bb, 0x43b7,
+  0x43bc, 0x43bf, 0x43c7, 0x43be, 0x4460, 0x445d, 0x4476, 0x446c,
+  0x4475, 0x445b, 0x4471, 0x4473, 0x4461, 0x445a, 0x4462, 0x4472,
+  0x445f, 0x4458, 0x471e, 0x4758, 0x478b, 0x478a, 0x47f4, 0x47f0,
+  0x48d2, 0x48cd, 0x48ce, 0x48bc, 0x48d0, 0x4b46, 0x4b47, 0x033e,
+  0x034d, 0x0351, 0x4bce, 0x4bcf, 0x4bcc, 0x4bcb,
+  /* 0x27 */
+  0xc972, 0x4d60, 0x4d5f, 0x4d5d, 0x4dd4, 0x4e3a, 0x4e38, 0x4e3c,
+  0x4e36, 0x4f08, 0x4f7e, 0x4f5e, 0x4f6e, 0x4f53, 0x4f70, 0x4f57,
+  0x4f5d, 0x4f63, 0x4f7a, 0x4f79, 0x4f93, 0xc981, 0x521d, 0x5268,
+  0x5273, 0x5274, 0x5266, 0x526f, 0x5275, 0x527a, 0x5270, 0x526d,
+  0x5265, 0x538a, 0x53ed, 0x53e9, 0x53e3, 0x53ef, 0x0473, 0x53ea,
+  0x5531, 0xc991, 0x5538, 0x9820, 0x5535, 0x553a, 0x5581, 0x5580,
+  0x55b8, 0x55c1, 0x55ba, 0x5688, 0x56cf, 0x56ca, 0x56c7, 0x56c5,
+  0x56c8, 0x56d0, 0x56c9, 0x57bb, 0x57b6, 0x57bd, 0xc99d, 0x57b4,
+  0x57c1, 0x57d1, 0x57d2, 0x57cc, 0x57d4, 0x57cb, 0x57ce, 0x57d5,
+  0x57d8, 0x5b95, 0x5b93, 0x5b99, 0x5b96, 0x05be, 0x5c89, 0x5c94,
+  0x5c91, 0x5c8f, 0x5c84, 0x5c97, 0x5c86, 0x5c85, 0x5c8c, 0x60f2,
+  0x60ed, 0x60ef, 0x62d9, 0x6346, 0x6347, 0x634b,
+  /* 0x28 */
+  0x6350, 0x634a, 0x634e, 0x634c, 0x6348, 0x6563, 0x6561, 0x6562,
+  0x6560, 0x65c3, 0x65c5, 0x65c1, 0x65d0, 0xc9dc, 0x6982, 0x081e,
+  0x6986, 0x6984, 0x6a4c, 0x6a48, 0x6ab8, 0x6abf, 0x6ac1, 0x6ac6,
+  0x6ac5, 0x6ac7, 0x6ac0, 0x6ac3, 0x6bed, 0x6c03, 0x6c22, 0x6c21,
+  0x6d9f, 0x6d90, 0x6d9e, 0x08c8, 0x6da0, 0x6d94, 0x6d95, 0x6da1,
+  0x08c3, 0x08c7, 0x719a, 0x7190, 0x74f2, 0x74f3, 0x756e, 0x75ab,
+  0x75a9, 0x761a, 0x7618, 0x761b, 0x7760, 0x774c, 0x7742, 0x7733,
+  0x773f, 0x773e, 0x7738, 0x7743, 0x7746, 0x7736, 0x78ee, 0x78f5,
+  0x78f4, 0x0b56, 0x7c1b, 0x0140, 0x7d2b, 0x7d29, 0x7d2a, 0x7d2e,
+  0x803f, 0x80e6, 0x83a7, 0x83a8, 0x8418, 0x8608, 0x8750, 0x8753,
+  0x8a56, 0x8a55, 0x8f6f, 0x8f7f, 0x91b3, 0x933a, 0x9338, 0x9337,
+  0x9336, 0x3854, 0xca80, 0x95dd, 0x95fc, 0x95fa,
+  /* 0x29 */
+  0x9633, 0x9804, 0x9807, 0x9808, 0x9806, 0x9809, 0xca91, 0xca93,
+  0x9d1e, 0xcad2, 0xad0b, 0xad43, 0xad52, 0xad58, 0xad5e, 0xaf68,
+  0xaf8d, 0xaf82, 0xaf7b, 0xb358, 0x15bd, 0xc900, 0x332c, 0x332e,
+  0x480b, 0x332d, 0x3369, 0x33b2, 0x33b6, 0x33a9, 0x33ed, 0x3419,
+  0x344f, 0x3516, 0x3503, 0x350e, 0x3504, 0x3507, 0x3510, 0x3527,
+  0x3528, 0x350d, 0x3529, 0x350f, 0x3522, 0x3511, 0x3785, 0x3784,
+  0x3783, 0x378a, 0x3786, 0x3810, 0x3858, 0x385a, 0x3a0c, 0x38c4,
+  0x38c5, 0x3947, 0x3949, 0x394a, 0x394b, 0x53bb, 0x398d, 0x398b,
+  0x3a07, 0x3a06, 0xc920, 0x39ef, 0x39f0, 0x39ed, 0x39f9, 0x3a02,
+  0x39e7, 0x39f4, 0x39f7, 0x39f1, 0x3b53, 0x3b55, 0x011a, 0x3bda,
+  0x3bd9, 0x012c, 0x3c38, 0x3c99, 0x3ca2, 0x3c9c, 0x3c9a, 0x3c9b,
+  0x3ce5, 0x3ce3, 0x3ce1, 0x3ce0, 0x3ce2, 0x3ce4,
+  /* 0x2a */
+  0x32fd, 0x3ce8, 0xc92f, 0x3d13, 0x3d56, 0x3d4b, 0x3d4a, 0x3d4d,
+  0x3d4c, 0x0149, 0x3dea, 0x3de9, 0x3deb, 0x3dec, 0x3e3a, 0x3e3c,
+  0x3e39, 0x3e3b, 0x3f14, 0x3f0e, 0x3f35, 0x3f0a, 0x3f3f, 0x3f38,
+  0x017c, 0x3f4e, 0x3f17, 0xc93f, 0x3f1e, 0x43b6, 0x43ce, 0x43ca,
+  0x43cb, 0x43cc, 0x43c9, 0x44b4, 0x44ac, 0x4488, 0x4486, 0x448c,
+  0x4493, 0x448a, 0x44a4, 0x4487, 0x44a5, 0x44a6, 0x4485, 0x44a3,
+  0x448e, 0x471f, 0x4763, 0x478d, 0x47fa, 0x47fb, 0x4809, 0x47fe,
+  0x47ff, 0x4802, 0x4804, 0x47fd, 0x4805, 0x48f9, 0x48f7, 0x48db,
+  0x48da, 0x4b51, 0x4b50, 0x4b57, 0x4be2, 0x4bd8, 0x4bda, 0x4bdc,
+  0x4d20, 0x4d1f, 0x4d69, 0x4ddd, 0x4e40, 0x4e41, 0x4e43, 0x4f0d,
+  0x4f0c, 0x4f87, 0x4fa9, 0x4f92, 0x4f85, 0x03bf, 0x4f8c, 0x4fa2,
+  0x4f8f, 0x4f8a, 0x03ba, 0x4f8d, 0x51f1, 0x5237,
+  /* 0x2b */
+  0x528b, 0x5287, 0x5282, 0x538e, 0x53bc, 0x53f8, 0x53fa, 0x53eb,
+  0x53f9, 0x53fc, 0x5405, 0x551b, 0x551d, 0x551e, 0xc992, 0x553c,
+  0x553e, 0x5584, 0x55c8, 0x55c9, 0x55d3, 0x55c7, 0x55d2, 0x5655,
+  0xc996, 0x568c, 0x568a, 0x56d5, 0x56d3, 0x04d8, 0x56d8, 0x57d0,
+  0x57ee, 0x57f1, 0x57fb, 0x57d3, 0x57ec, 0x57cd, 0x5815, 0x5826,
+  0x580e, 0x5827, 0x582a, 0x5800, 0x5804, 0x5828, 0x5808, 0x5814,
+  0x5b9b, 0x05b2, 0x5ba1, 0x5b9d, 0x5ba0, 0x5b9e, 0x5ba2, 0x5b9c,
+  0x5c32, 0x5c34, 0x5c93, 0x5c96, 0x5c90, 0x5cb4, 0x5cb5, 0xc9b6,
+  0x5cb6, 0x5cc2, 0xc9b5, 0x5cba, 0x5c92, 0x60fb, 0x6105, 0x60f3,
+  0x60fe, 0x60fd, 0x755d, 0x60fa, 0x6243, 0x6295, 0x6294, 0x06c4,
+  0x636f, 0x6373, 0x635c, 0x635b, 0x6366, 0x6374, 0x6363, 0x6367,
+  0x6360, 0x6362, 0x6371, 0x6372, 0x635e, 0x6523,
+  /* 0x2c */
+  0x6526, 0x6564, 0xc9d6, 0x65f2, 0x6601, 0x65dd, 0x65dc, 0x65db,
+  0x65f3, 0x65fd, 0x65d8, 0x65f8, 0x65fb, 0x6983, 0x698c, 0x698e,
+  0x6a49, 0x6a54, 0x6a52, 0x6a4e, 0x6a58, 0x6a51, 0x6a55, 0x6a53,
+  0x6a57, 0x6a50, 0x6a4f, 0x6a4d, 0x6ad2, 0x6ad3, 0x6ac9, 0x6ad4,
+  0x6bef, 0xc9f8, 0x33b1, 0x6c05, 0x6c04, 0x6c2e, 0x6c2d, 0x6d45,
+  0x6d5b, 0x6d5a, 0x6d59, 0x6d9d, 0x6d8e, 0x6dbc, 0x6ddd, 0x6dba,
+  0xc9fd, 0x6dd8, 0x6dcb, 0x6dd9, 0x6dda, 0x6dc4, 0x6db8, 0x6dbf,
+  0x6ddb, 0x6dc1, 0xc9fc, 0x6dc5, 0xca19, 0x71b1, 0x71af, 0xca18,
+  0x74f7, 0x74f6, 0x74f8, 0x7550, 0x7551, 0x7571, 0x7570, 0x75b0,
+  0x75af, 0x75ae, 0x75ad, 0x7625, 0x762c, 0x7622, 0x7633, 0x7634,
+  0x0a2b, 0x773a, 0x7740, 0x7768, 0x0a61, 0x7764, 0x775c, 0x7757,
+  0x7753, 0x774f, 0x7751, 0x7754, 0x7766, 0x23dd,
+  /* 0x2d */
+  0x0ab2, 0x790d, 0x7908, 0xca2b, 0x78fa, 0x7aea, 0x7b2a, 0x7bbb,
+  0x7bd5, 0x7bd7, 0x4fa4, 0x33f0, 0x33b5, 0x7c06, 0x7c28, 0x7c22,
+  0x7c21, 0x5656, 0x7c23, 0x43cd, 0x7d30, 0x7d34, 0x7fc9, 0x7fca,
+  0x7fc8, 0xca3d, 0x8044, 0x80f3, 0xca41, 0x80f8, 0x80fc, 0x80f6,
+  0x80fb, 0x80f7, 0x8100, 0x8102, 0xca40, 0xca4d, 0x8424, 0x860d,
+  0x0d29, 0x8762, 0x8930, 0x892b, 0x892a, 0x0d92, 0x892d, 0x8ada,
+  0x8c28, 0x8d86, 0x8f77, 0x8f7c, 0x9050, 0x904e, 0x90f2, 0x91b2,
+  0x91ce, 0x91cf, 0x91e5, 0x6607, 0x9235, 0x9231, 0x9313, 0x932b,
+  0x932c, 0x9345, 0x9360, 0x9341, 0x9358, 0x9347, 0x935b, 0x9350,
+  0xca82, 0x935f, 0x934a, 0x9356, 0x9343, 0x9344, 0x9351, 0x95fd,
+  0x9634, 0x9635, 0x9654, 0x9655, 0x970c, 0x970b, 0x970a, 0x97f9,
+  0x9835, 0x9824, 0x9813, 0x981c, 0x9869, 0x9825,
+  /* 0x2e */
+  0x9821, 0xca95, 0xca96, 0xca98, 0x9d20, 0x9fa9, 0x9fa8, 0x9fde,
+  0xa009, 0xa00a, 0xa00b, 0xa1e3, 0xa207, 0xa2b2, 0xa2b3, 0xa35d,
+  0xa858, 0xa886, 0xa887, 0xa9b9, 0xa9b8, 0xad0c, 0xad44, 0xad66,
+  0xad80, 0xad75, 0xad6d, 0xad7e, 0xad67, 0xad81, 0xad77, 0xafa8,
+  0xafa2, 0xafa5, 0xaf9b, 0xb357, 0xb50f, 0xb532, 0xb52c, 0xb533,
+  0xb8e7, 0x336e, 0x33b7, 0x33f6, 0x33f2, 0x33f3, 0x3817, 0x3430,
+  0x3454, 0x3453, 0x3552, 0x353d, 0x353c, 0x3534, 0x3533, 0x3554,
+  0x352f, 0x0058, 0x3555, 0x353f, 0x3537, 0x3556, 0x3561, 0x3558,
+  0xc906, 0x353b, 0x3532, 0x352e, 0x353e, 0x333b, 0x378c, 0x378d,
+  0x3813, 0x3816, 0x3812, 0x385b, 0x388a, 0x38d7, 0x38ce, 0x3950,
+  0x3951, 0x394f, 0x398e, 0x398f, 0x39f2, 0xc921, 0x3a28, 0x3a1a,
+  0x3a25, 0x3a1d, 0x3a14, 0x3a20, 0x3a1f, 0x3a1b,
+  /* 0x2f */
+  0x3a17, 0x3a15, 0x3a1c, 0x3a13, 0xc925, 0x3b60, 0x011c, 0x3b66,
+  0x3be3, 0x3bde, 0x3be0, 0x3be1, 0x3c1a, 0x3c1b, 0x3c18, 0x3c1c,
+  0x3c19, 0x3c42, 0x3c40, 0x3c3e, 0x3c44, 0x3c74, 0x3c43, 0xc92d,
+  0x3cf2, 0x3d1b, 0x3d19, 0x3d1e, 0xc930, 0x3d5e, 0x3d66, 0x3d5d,
+  0x3d5a, 0x3d5f, 0x3d60, 0x3d5b, 0x3d5c, 0x3d59, 0x3df0, 0x3df1,
+  0x3e43, 0x3e40, 0x3e42, 0x3e41, 0x3e3f, 0x3f57, 0x3f69, 0x3f6f,
+  0x3fab, 0x3f71, 0x3f93, 0x3f56, 0x3f90, 0x3f6d, 0x3f6c, 0x3f70,
+  0x3f66, 0x3f67, 0x43d7, 0x43b5, 0x43db, 0x43d8, 0x43d5, 0x43d4,
+  0x44ba, 0x44b7, 0x44be, 0x44b9, 0x0237, 0x44e0, 0x44dd, 0x44de,
+  0x7918, 0x44d8, 0x44bd, 0x44db, 0x471d, 0x4725, 0x4921, 0x490c,
+  0x4929, 0x492d, 0x491b, 0x490e, 0x491f, 0x4904, 0x491c, 0x4905,
+  0x4906, 0x4920, 0x490d, 0x492a, 0x4923, 0x4911,
+  /* 0x30 */
+  0x4b5c, 0x4b66, 0x4b5b, 0x4b4f, 0x4b5e, 0x4b5d, 0x4bf1, 0x4bea,
+  0x4bf4, 0x4beb, 0x4bf0, 0x4bfa, 0x4bfb, 0x4d28, 0x4d2c, 0x4d6b,
+  0x4d2a, 0x4d6a, 0x4d6f, 0x4ddb, 0x4de0, 0x7fd1, 0x4de3, 0x4de5,
+  0x4de7, 0x4e4d, 0x4e55, 0x4e54, 0x4e53, 0x4e52, 0x4e4e, 0x4e60,
+  0x53c0, 0x4f0f, 0x4f11, 0x4f13, 0x4fc6, 0x4fb3, 0x4fc7, 0x4fd2,
+  0x4fb8, 0x4fac, 0x4fae, 0x4fcf, 0x4fc5, 0xc97b, 0x4fcc, 0x4fab,
+  0x4fc9, 0x4fb9, 0x51fb, 0x51f8, 0x51f7, 0x51f9, 0x5220, 0x523b,
+  0x5239, 0x529e, 0x529a, 0x52aa, 0x52ab, 0x52af, 0x5296, 0x52a9,
+  0x52a6, 0x5291, 0x0443, 0x52ae, 0x529f, 0x52ac, 0x52a0, 0x5392,
+  0x5391, 0x53bf, 0x5417, 0x540a, 0x540c, 0x554a, 0x5546, 0x5534,
+  0x5545, 0x5543, 0x5544, 0xc993, 0x5587, 0x5586, 0x558a, 0x55da,
+  0x55d8, 0x04b4, 0x3818, 0x3434, 0x55d6, 0x55d4,
+  /* 0x31 */
+  0x5654, 0x5659, 0x565a, 0x5657, 0x04e0, 0x56dd, 0x56e9, 0x56e0,
+  0x5805, 0x5812, 0x5813, 0x5807, 0x5816, 0x5823, 0x5802, 0xc9a1,
+  0x584a, 0x5836, 0x5840, 0x5856, 0x5843, 0xc9a0, 0x584b, 0x5846,
+  0x583e, 0x5849, 0x5ba7, 0x5bb6, 0x5ba6, 0x5ba8, 0x5bac, 0x5ba9,
+  0x5bab, 0x5c38, 0x5c37, 0x5c39, 0x5c41, 0x5c3e, 0x5cc0, 0x5cbb,
+  0x5cbf, 0x5cbd, 0x5cfe, 0x5d1e, 0x5cee, 0x5cfc, 0xc9b7, 0x5cf9,
+  0x5d06, 0x5ce4, 0x5ce9, 0x5ce5, 0x5d03, 0x5cfd, 0x5d49, 0x60be,
+  0x610a, 0x8626, 0x6118, 0x610d, 0x610f, 0x610e, 0x6120, 0x6271,
+  0x6299, 0x62e2, 0x62df, 0x62de, 0x6378, 0x6379, 0x06e4, 0x637c,
+  0x637d, 0x6384, 0x638b, 0x638a, 0xc9d2, 0x6389, 0x652c, 0x6529,
+  0x656c, 0x2104, 0x6609, 0x6608, 0x660c, 0x660d, 0x6610, 0x0826,
+  0x699f, 0x6998, 0x69a2, 0x699a, 0x6ad5, 0x6ae2,
+  /* 0x32 */
+  0x6af0, 0x6aea, 0x6aeb, 0x6aed, 0x6ae8, 0x6ae0, 0x6b85, 0x6b86,
+  0x6bf0, 0x5046, 0x6c45, 0x6c38, 0x6c3e, 0x6c42, 0x6c40, 0x6d47,
+  0x6d5c, 0x6d5e, 0x6db4, 0x6dc2, 0x6e14, 0x6de5, 0x6e15, 0x6e11,
+  0xc9ff, 0x6dee, 0x6de7, 0x6df5, 0x6df4, 0x6de8, 0x6e01, 0x6def,
+  0x6df1, 0xca00, 0x71db, 0x71bf, 0x71da, 0x71c7, 0x71dd, 0xca1a,
+  0x71eb, 0x71e1, 0x71c1, 0x71bd, 0x7507, 0x74fd, 0x7501, 0x750a,
+  0x7503, 0x7572, 0x7574, 0x7575, 0x75b2, 0x75b1, 0x75b4, 0x764c,
+  0x7642, 0x7640, 0x7649, 0x763c, 0x764d, 0x764a, 0x763b, 0x7761,
+  0x7774, 0xca26, 0x777f, 0x777a, 0x7788, 0x777c, 0x0a6f, 0x7770,
+  0x790f, 0x7928, 0x7913, 0x792a, 0x7aed, 0x7aef, 0x7b2e, 0x7bc1,
+  0x7bdd, 0x3e47, 0x7c2d, 0x7c2b, 0x7c35, 0x7c2f, 0x7c31, 0x7c34,
+  0xca35, 0x7c30, 0x7d3a, 0x7d39, 0x7d37, 0x7d4b,
+  /* 0x33 */
+  0x7d54, 0x7d4d, 0x7d51, 0x7d47, 0x7f27, 0x7f50, 0x7f4d, 0x7f4e,
+  0x7f54, 0x7fd2, 0x7fce, 0x804b, 0x8049, 0x8105, 0x810f, 0x8119,
+  0xca43, 0x8106, 0x810c, 0x8129, 0x8104, 0x8108, 0x8125, 0x0c1c,
+  0x8103, 0x8127, 0x8110, 0x810a, 0xca42, 0x985d, 0x83aa, 0x83ab,
+  0x83a9, 0x8441, 0x843a, 0x843c, 0x842b, 0x8449, 0x8615, 0x0d00,
+  0x8616, 0xca53, 0x8631, 0x6d4a, 0x873c, 0x877c, 0x876d, 0x876a,
+  0x8763, 0x876b, 0x877b, 0x8764, 0x877a, 0x8769, 0x876f, 0x8937,
+  0x8935, 0x893c, 0x8936, 0x893d, 0x893e, 0x8ae1, 0x8ae0, 0x8c2d,
+  0x8c2b, 0x8d8d, 0x8d92, 0x0eb6, 0x8d8e, 0xca6b, 0x8d91, 0x8d96,
+  0x8f7b, 0x8f78, 0x8f81, 0x8f96, 0x8fa3, 0x8f95, 0x8f97, 0x9054,
+  0x9052, 0x90f5, 0x9100, 0x90fb, 0x90f4, 0x90f6, 0x91e8, 0x91ea,
+  0x933e, 0x933d, 0x933b, 0x9380, 0x0fe4, 0x9388,
+  /* 0x34 */
+  0x9381, 0x9382, 0x93ce, 0x9383, 0x9377, 0x9379, 0x9373, 0x936d,
+  0x9370, 0x938d, 0x9375, 0x938c, 0x936a, 0x9391, 0x9389, 0x938e,
+  0x44dc, 0x95ff, 0x9659, 0x96c7, 0x9712, 0x9714, 0x9713, 0x97cb,
+  0x9842, 0x10ad, 0x983d, 0x2aff, 0x9840, 0x9844, 0x9862, 0x9843,
+  0x983f, 0x9845, 0x983c, 0xca97, 0x9846, 0x9847, 0xcab3, 0x9c9e,
+  0x9c9d, 0x9d2c, 0x9d29, 0x9d2f, 0x9d2e, 0x9d30, 0x9fe1, 0x9fe2,
+  0xa00e, 0xa019, 0xa012, 0xa2b4, 0xa5da, 0xa726, 0xa859, 0xa85a,
+  0xa888, 0xa9c0, 0xa9ba, 0xaba0, 0xcadd, 0xaba2, 0xad86, 0x2fec,
+  0xad9d, 0xad88, 0xad8f, 0xad8e, 0xad9b, 0xafc1, 0xafc3, 0xafc4,
+  0xaf96, 0xafc7, 0xafc6, 0xafbf, 0x14c3, 0xb20f, 0xb555, 0xb542,
+  0xb546, 0xb54b, 0xb543, 0xb553, 0xb548, 0xb549, 0xb54a, 0xb54e,
+  0x7bde, 0x3991, 0xbb4b, 0xbd80, 0xbd81, 0xbd83,
+  /* 0x35 */
+  0x358a, 0xbd82, 0x5542, 0x3c22, 0x3370, 0x3371, 0x33bc, 0x4f18,
+  0x33be, 0x33ba, 0x33f8, 0x3437, 0x3435, 0x3dfc, 0x3456, 0x3459,
+  0x345e, 0x356d, 0x3591, 0x3592, 0x3568, 0x3566, 0x3573, 0x0067,
+  0x3596, 0x358b, 0x358c, 0x3796, 0x37ee, 0x381c, 0x381a, 0x3819,
+  0x381b, 0x385d, 0x385e, 0xc918, 0x38dc, 0x38e2, 0x3952, 0x3992,
+  0x3a30, 0x3a52, 0x3a42, 0x3a41, 0x3a45, 0x3a37, 0x3a40, 0x3a3f,
+  0x3a3d, 0x3a38, 0x3a3a, 0x3a49, 0x3b6b, 0x3b78, 0x3b79, 0xc926,
+  0x3b6c, 0x3be9, 0x3be6, 0x3be5, 0x3bea, 0x3be7, 0x3be8, 0x3c1f,
+  0x3c4b, 0x3c4a, 0x3c53, 0x3c76, 0x3ca3, 0x3ca4, 0x3cf6, 0x3cf3,
+  0x3cf9, 0x3cf7, 0x3cfc, 0x3d1d, 0x3d6d, 0x3d71, 0x3d6c, 0x3d6e,
+  0x3d70, 0x3d6f, 0x3d67, 0x3d68, 0x3dfa, 0x3df9, 0x3e4e, 0x19de,
+  0x3e4d, 0x3e4f, 0x3e4a, 0x3e4c, 0x0196, 0xc942,
+  /* 0x36 */
+  0x3fee, 0x3fb2, 0x3fc0, 0x3fc1, 0x3ff4, 0x3fc8, 0x3fc5, 0x3fc6,
+  0x3fad, 0x43e2, 0x43ea, 0x43e3, 0x43e1, 0x44f7, 0x4501, 0x4512,
+  0x44f6, 0x44f1, 0x451f, 0x44ee, 0xc952, 0x44f3, 0x4515, 0x4516,
+  0x4517, 0x44f8, 0x4519, 0x44f2, 0x44f4, 0x44f5, 0x4513, 0x4506,
+  0x4726, 0x4724, 0x475a, 0x60c8, 0x4797, 0x4795, 0x479a, 0x481f,
+  0x3dfb, 0x4829, 0x4820, 0xc962, 0xc963, 0x494c, 0x4930, 0x4938,
+  0x493d, 0x4951, 0x494f, 0x494a, 0x4934, 0x4936, 0x1b30, 0x4b6a,
+  0x4b68, 0x4c1c, 0x4c0e, 0x4c1e, 0x0359, 0x4c09, 0x4c08, 0x4c13,
+  0x4c01, 0x4c0f, 0x4c14, 0x4c06, 0x4c07, 0x1cb2, 0xc973, 0x0376,
+  0x4d79, 0x4dea, 0x4ded, 0x4de9, 0x4dee, 0x4e68, 0x4e64, 0x4e67,
+  0x4e72, 0x4e62, 0x4e74, 0x4e79, 0x4f19, 0x4f17, 0x4f15, 0x4f16,
+  0x4fe6, 0x8fa4, 0x4fee, 0x03d2, 0x4fdf, 0x4fe4,
+  /* 0x37 */
+  0x4fda, 0x4fea, 0x4fed, 0x4fe3, 0x4fe9, 0x51fd, 0x3957, 0x5221,
+  0x52c6, 0x52b8, 0x52cb, 0xc985, 0x52bd, 0x52b5, 0x52bb, 0x52bf,
+  0x52be, 0x52b2, 0x52c1, 0x52c2, 0x5399, 0x53c6, 0x542c, 0x542d,
+  0x5425, 0x541e, 0x541f, 0x5423, 0x5550, 0x554e, 0x554d, 0x5552,
+  0x55e9, 0x55ec, 0x55e8, 0x5658, 0x565c, 0x565b, 0x568f, 0x6a72,
+  0x56f6, 0x5700, 0x56fc, 0x56f8, 0x56ea, 0x56fe, 0x56f7, 0x56fd,
+  0x5870, 0x5862, 0x5844, 0x0520, 0x584d, 0x584c, 0x583f, 0x5866,
+  0x5835, 0x0529, 0x5834, 0x588d, 0x5884, 0x0538, 0x5886, 0x5889,
+  0x5887, 0x5883, 0x5875, 0x5879, 0x58af, 0x58b0, 0x5bb7, 0x5bbb,
+  0x5bb9, 0x5c46, 0x5c47, 0x5c45, 0x5cea, 0x5cf6, 0x5d68, 0x5d39,
+  0xc9b9, 0x5d3d, 0x5d3b, 0x5d4d, 0x5d30, 0x5d4a, 0x5d3e, 0x5d40,
+  0x5d4c, 0x5d47, 0x5d38, 0x5d52, 0x5d3a, 0x5d53,
+  /* 0x38 */
+  0x60c4, 0x60c1, 0x611c, 0x611d, 0x612a, 0x611e, 0x612f, 0x6122,
+  0x612e, 0x6125, 0x0689, 0x06b0, 0x624a, 0x624b, 0x6276, 0x06bf,
+  0x62e8, 0x62ef, 0x62e9, 0x06c5, 0x62ea, 0xc9cc, 0x06ea, 0x639b,
+  0x639e, 0x6393, 0x63a7, 0x639c, 0x63a0, 0x639a, 0x63ab, 0x63be,
+  0x63a9, 0x652d, 0x656e, 0x6644, 0x663d, 0x663a, 0x6668, 0x663c,
+  0x666a, 0xc9e0, 0x6638, 0x6665, 0x6639, 0x666d, 0x6636, 0xc9e3,
+  0x663e, 0x667e, 0x6637, 0x6999, 0x69a9, 0x69ad, 0x69a7, 0x69a8,
+  0x6a66, 0x6a69, 0x6a6d, 0x6a67, 0x6a6b, 0x6a6a, 0x6aee, 0x6b01,
+  0x6b03, 0x6af4, 0x6afb, 0x0837, 0x6af6, 0x6afc, 0x6bf4, 0x6c08,
+  0x6c0a, 0x6c09, 0x6c6d, 0x6c62, 0x6c41, 0x6c5e, 0x6c5c, 0x6df3,
+  0x6e26, 0x08e4, 0x6e39, 0xca04, 0x6e6c, 0x6e2b, 0x6e2e, 0x6e3b,
+  0x6e5e, 0x6efb, 0x6e27, 0x6e24, 0x6e69, 0x6e30,
+  /* 0x39 */
+  0xca05, 0x6e62, 0x6e38, 0x6e35, 0x6e2a, 0x6e2c, 0x6e68, 0x6e31,
+  0x6e2f, 0x6e2d, 0x6e3a, 0x6e36, 0xca03, 0x6e21, 0x6e3c, 0x6e20,
+  0x6e64, 0x6e3e, 0x08e8, 0x71f7, 0x7212, 0x71f1, 0x71f5, 0x7222,
+  0x71f2, 0x71df, 0x7215, 0x7216, 0x757a, 0x7576, 0x75be, 0x0a20,
+  0x75bd, 0x7609, 0x7608, 0x7657, 0x77a3, 0x77bf, 0x77b8, 0x77af,
+  0x779c, 0x77a5, 0x7772, 0x7775, 0x779d, 0x7799, 0x77b9, 0x794e,
+  0x7939, 0x793b, 0x7935, 0x793c, 0x7955, 0x7af0, 0x7af3, 0x7af4,
+  0x7b3b, 0x7b3c, 0x7b3a, 0x7b36, 0x7c07, 0x3feb, 0x7c55, 0x7c50,
+  0x7c4f, 0x7c52, 0x7c56, 0x33bd, 0x7c32, 0x7d63, 0x7d6b, 0x7d66,
+  0x7d57, 0x7d5d, 0x0b86, 0x7d6d, 0x7d61, 0x7d69, 0x7d5a, 0x7d5c,
+  0x7d62, 0x7f2a, 0x7f29, 0x7f58, 0x7f5a, 0x7fd7, 0x7fdb, 0x7fdc,
+  0x7fdd, 0x7fd8, 0x8054, 0x805b, 0x805c, 0x8053,
+  /* 0x3a */
+  0x804f, 0x8056, 0x8050, 0x805a, 0x806b, 0x8136, 0x8153, 0x813a,
+  0x813c, 0x813e, 0x8149, 0x8140, 0xca46, 0xca47, 0x8364, 0x8365,
+  0x83b5, 0x83b6, 0x83b2, 0x8448, 0x844a, 0x8472, 0x8469, 0x845a,
+  0x844c, 0x862c, 0x8630, 0x864b, 0x8649, 0x8642, 0x8644, 0x864a,
+  0x864f, 0x8792, 0xca57, 0x8797, 0x8780, 0x8782, 0x8786, 0x8953,
+  0x895e, 0x8952, 0x895b, 0x894e, 0x8a6d, 0x8a6e, 0x8afa, 0x8af6,
+  0x8afb, 0x8c33, 0x8c3d, 0x8c37, 0x8c3e, 0x8c35, 0x8d9a, 0x8dab,
+  0x8da6, 0x8db0, 0x8d99, 0x8da0, 0x8d9e, 0x8da8, 0x8da1, 0x8daa,
+  0x8dad, 0x8dbb, 0x8d9c, 0x8da5, 0x33b3, 0x8f27, 0x8f8d, 0x8f8e,
+  0x8f8f, 0x8f92, 0x0f56, 0x8f91, 0x8fad, 0x9057, 0x9058, 0x905e,
+  0x905d, 0x905c, 0x905b, 0x0f67, 0x910a, 0x9103, 0x910e, 0x91b8,
+  0x924d, 0x923f, 0x9247, 0x924b, 0x924a, 0x923d,
+  /* 0x3b */
+  0x2838, 0x9241, 0x924c, 0x2881, 0x9362, 0x9369, 0x9361, 0x0fd1,
+  0x93aa, 0x93a6, 0x93ac, 0x93bd, 0x93bb, 0x93a4, 0x93ba, 0x939a,
+  0x0feb, 0x93a1, 0x93c1, 0x95e0, 0x960a, 0x9603, 0x9606, 0x9639,
+  0x963a, 0x9636, 0x965b, 0x965f, 0x965e, 0x9667, 0x9661, 0x9662,
+  0x965d, 0x96ca, 0x96cc, 0x96ce, 0x9718, 0x971d, 0x971f, 0x9720,
+  0x9717, 0x9715, 0x981f, 0x9827, 0x9826, 0x5010, 0x988b, 0x98ae,
+  0x988a, 0xca99, 0x9892, 0x9889, 0x9887, 0x10b6, 0x988f, 0x9884,
+  0x9883, 0x988c, 0x9893, 0x988d, 0x9898, 0x987d, 0x987e, 0x98d2,
+  0x9880, 0x9899, 0x9cac, 0x9d50, 0x9d55, 0x9d42, 0x9d3f, 0x9d3c,
+  0x11a3, 0x9d4c, 0x9d49, 0x9d57, 0x9d58, 0x9d4f, 0x9d5c, 0x9d47,
+  0xcab7, 0x9fab, 0x1210, 0x9faf, 0x9fad, 0x9fe8, 0x9fe7, 0xa030,
+  0xa026, 0xa02f, 0xa028, 0xa02b, 0xa01d, 0xa02d,
+  /* 0x3c */
+  0xa020, 0xa02a, 0xa02c, 0xa035, 0xa021, 0xa023, 0xa024, 0xa036,
+  0xa037, 0xa1e9, 0xa2ba, 0xa2b8, 0xcacc, 0xa36d, 0xa36a, 0xa368,
+  0xa369, 0xa36b, 0xa361, 0xa5dc, 0xa5db, 0xa62d, 0xa62c, 0xa6a2,
+  0xa72b, 0xa732, 0xcad7, 0xa894, 0xa892, 0xa890, 0xa9c9, 0xa9c4,
+  0xa9c1, 0xa9c3, 0xa9cd, 0xab14, 0xaba7, 0xabaf, 0xabaa, 0xad0d,
+  0xad54, 0xad5b, 0xad61, 0xadae, 0xadb3, 0xadc0, 0xadc4, 0xadbf,
+  0xadcb, 0xadad, 0xada7, 0xada4, 0xadbd, 0xadaf, 0xadb2, 0xada5,
+  0xafe7, 0xafe0, 0xafce, 0xafde, 0xafd5, 0xafdf, 0xafd9, 0xb0f2,
+  0xb223, 0xb240, 0x151b, 0xb23e, 0x1587, 0xb3cf, 0x3e54, 0xb55b,
+  0xb558, 0xb562, 0xb55f, 0xb567, 0xb563, 0xb55e, 0xb560, 0xb685,
+  0xb686, 0xb687, 0xb8e8, 0xb8e6, 0xbd71, 0xbd85, 0xcb02, 0xbd86,
+  0xbe10, 0x3cf8, 0x33bf, 0x3e61, 0x33fe, 0x33fc,
+  /* 0x3d */
+  0x3439, 0x3461, 0x3460, 0x35e2, 0x35ea, 0x35e3, 0x35b4, 0x35ae,
+  0x35be, 0x35b8, 0x35a8, 0x35aa, 0x35a9, 0x35b3, 0x35d5, 0x35ad,
+  0x35b9, 0x35bb, 0x35b1, 0x35c2, 0xc908, 0x35eb, 0x35ba, 0x35d2,
+  0x35d4, 0x37f1, 0x381d, 0xc912, 0x3862, 0x388c, 0x38e6, 0x38e7,
+  0x395a, 0x3958, 0x3959, 0x3996, 0x3997, 0x3a61, 0x3a67, 0x3a71,
+  0x3a65, 0x3a7d, 0x3a7e, 0x3b7d, 0x3b84, 0x3b7c, 0x3b7e, 0x3b7f,
+  0x3b80, 0x3bef, 0x3bf4, 0x3c1e, 0x3c4e, 0x3cfb, 0x3cfa, 0x3cfd,
+  0xc931, 0xc932, 0x3d79, 0x3d7c, 0x3d7d, 0x3d84, 0x3d7b, 0x3d78,
+  0x0157, 0x3e5e, 0x3e5a, 0x3e5c, 0x3e59, 0x3e55, 0x3e63, 0x3e56,
+  0x3e5f, 0x3e60, 0x3e5b, 0x404a, 0x4065, 0x40b3, 0x402c, 0x4077,
+  0x403d, 0x4052, 0x4061, 0x402a, 0x403e, 0x4034, 0x4029, 0x40b2,
+  0x40ad, 0x4040, 0x4053, 0xc944, 0x403f, 0x4041,
+  /* 0x3e */
+  0x4072, 0x43f6, 0x43f5, 0x43f4, 0x43f2, 0x43f9, 0x4527, 0x4554,
+  0x4555, 0x452e, 0xc954, 0xc953, 0x452c, 0x4538, 0x4539, 0x4531,
+  0x454f, 0x4573, 0x4530, 0x452b, 0x4551, 0x472c, 0x475b, 0x475c,
+  0x4768, 0x476c, 0x476b, 0x4769, 0x479f, 0x4838, 0x483c, 0x483a,
+  0x4835, 0x029d, 0x4839, 0x4836, 0x483b, 0x4960, 0x4961, 0x4963,
+  0x4964, 0x4994, 0x4993, 0x495e, 0x4968, 0x496a, 0x4965, 0xc966,
+  0x4990, 0x495f, 0x4972, 0xc965, 0x4c3c, 0x4c27, 0x4c24, 0x4c26,
+  0x4c25, 0x035f, 0x4c28, 0x4c36, 0x4d31, 0x4d30, 0x4d34, 0x4d81,
+  0x4d7d, 0x4d82, 0x4d80, 0x0379, 0x35d3, 0x4df2, 0x4e66, 0x4e8c,
+  0x4e7b, 0x4e83, 0x0398, 0x4e8e, 0x4e7a, 0x4e92, 0x4e91, 0x4e82,
+  0x4f1b, 0x4f1c, 0x5027, 0x5021, 0x03dc, 0x1d2b, 0x5043, 0x03df,
+  0x5018, 0x507b, 0x501a, 0x504b, 0x504a, 0x504d,
+  /* 0x3f */
+  0x504f, 0x5019, 0x5035, 0x5013, 0x5052, 0x5014, 0x501e, 0x502c,
+  0x5020, 0x5022, 0x5012, 0x501f, 0x5200, 0x5223, 0x5240, 0x5243,
+  0x52e4, 0x52db, 0x52ea, 0x52dd, 0x52cc, 0x52d9, 0x52e8, 0x52f6,
+  0x52e3, 0x52d3, 0x52da, 0x52d6, 0x52e7, 0x543a, 0x543f, 0x5440,
+  0x5448, 0x5459, 0x5437, 0x5444, 0xc98c, 0xc98b, 0x5455, 0x5439,
+  0x5554, 0x5555, 0x5556, 0x5557, 0x5558, 0x5559, 0x558d, 0x55f2,
+  0x55f8, 0x55f5, 0x55f6, 0x55fc, 0x55fe, 0x55f1, 0x55fd, 0x565e,
+  0x5696, 0x5697, 0x569c, 0x569b, 0x5695, 0xc99a, 0x571a, 0x5709,
+  0x5704, 0x570e, 0x571c, 0x5718, 0x570d, 0x5710, 0x570c, 0x5703,
+  0x587b, 0x58a6, 0x5877, 0x5888, 0x5874, 0x58da, 0x5876, 0x5878,
+  0x588a, 0x588f, 0x587d, 0x5890, 0x58ed, 0x58d9, 0x58d0, 0x591a,
+  0x58d7, 0x58e2, 0x58e1, 0x58c5, 0x58e0, 0x58ca,
+  /* 0x40 */
+  0x5925, 0x58cc, 0xc9b3, 0x5bc6, 0x5bc1, 0x5c4d, 0x5d4b, 0x5d64,
+  0x5d95, 0x5d99, 0xc9bc, 0x5d94, 0x5da2, 0x5dae, 0x5d9e, 0x5da7,
+  0x5d86, 0x05fd, 0x5da4, 0x5d91, 0x5d93, 0xc9bb, 0x5d88, 0x60cd,
+  0x60ca, 0x613f, 0x6140, 0x6146, 0x6141, 0x6145, 0x6158, 0x613b,
+  0x6148, 0x624e, 0x6252, 0x624f, 0x627b, 0x627a, 0x62a0, 0x629f,
+  0x62fb, 0x62f7, 0x63b8, 0x63b9, 0x63bb, 0x63b7, 0x06f4, 0x63ba,
+  0x06ef, 0x63da, 0x63b5, 0x63bf, 0x63bc, 0x63c0, 0xc9d3, 0xc9d9,
+  0x6575, 0x6579, 0x6576, 0x6635, 0x6640, 0x66c0, 0x6681, 0x66ad,
+  0x66af, 0x66ac, 0x668f, 0x66a8, 0x66aa, 0x66a9, 0x6688, 0x667f,
+  0x6680, 0x66bc, 0x69ae, 0x69bb, 0x69bd, 0x0831, 0x6a78, 0x6a74,
+  0x6b0c, 0x6b11, 0x6b08, 0x6b06, 0x6b10, 0x6b8f, 0x6b90, 0x6b8d,
+  0x6b8e, 0x6b96, 0x6b95, 0x6c0b, 0x6c0c, 0x6c7c,
+  /* 0x41 */
+  0x6c73, 0x6c75, 0x6c76, 0x6c7d, 0x6c78, 0x6c71, 0x6d4b, 0x6d4e,
+  0x6e33, 0x6e32, 0x0903, 0x6e91, 0x6ee7, 0x6ee9, 0x6ea2, 0x6e94,
+  0x6e87, 0x6ea3, 0x6edd, 0x6e7b, 0x6e83, 0x6e81, 0x6edf, 0x6e7c,
+  0x6ee4, 0x6ee2, 0x6e93, 0x6e7d, 0x6ebf, 0x6e9b, 0x6e8e, 0x6e9f,
+  0x0909, 0x6e8c, 0x6e7f, 0x6e9c, 0x6e84, 0x6e42, 0x6ee6, 0x7251,
+  0x724a, 0x7264, 0x7225, 0x722f, 0x722e, 0x722b, 0x7228, 0x7232,
+  0x722d, 0x7231, 0x7239, 0x722c, 0x7261, 0x7511, 0x7510, 0x7512,
+  0x7553, 0x7555, 0x757b, 0x7581, 0x757d, 0x757c, 0x75c2, 0x75c5,
+  0xca22, 0x75c4, 0xca23, 0x766b, 0x7668, 0x0a3e, 0x765c, 0x765d,
+  0x766a, 0xca24, 0x7c76, 0x7776, 0x0a77, 0x77c4, 0x77cb, 0x77c8,
+  0x77d4, 0x77d5, 0x77c9, 0x77d7, 0x0a7b, 0x7978, 0x795a, 0x795b,
+  0x795c, 0x7956, 0x7958, 0x7971, 0x96d4, 0x7b40,
+  /* 0x42 */
+  0xca33, 0x7b3f, 0x7b43, 0x7b41, 0x7be2, 0x7be0, 0x7be3, 0x7c66,
+  0x7c73, 0x7c6c, 0x7c71, 0x7c6a, 0x7c6d, 0x7c6e, 0x7c6b, 0x7d8c,
+  0x7d77, 0xca3a, 0x7d7f, 0x7d89, 0x7d7a, 0x7d85, 0x7d78, 0x7d8a,
+  0x7d86, 0x7f2c, 0x7f67, 0x7f5b, 0x7fe5, 0x7fe1, 0x8061, 0x8069,
+  0x806a, 0x8165, 0x816d, 0x8163, 0x8186, 0x815c, 0x8162, 0xca48,
+  0x8179, 0x8169, 0x8170, 0x8176, 0x815d, 0x8187, 0x816e, 0x8171,
+  0x817c, 0x8173, 0x815b, 0x816b, 0x83bf, 0x83c1, 0x83bd, 0x83c9,
+  0x83bc, 0x83c2, 0x83c0, 0x8492, 0x84a9, 0x848f, 0x8476, 0x847b,
+  0x8475, 0x84a4, 0x8664, 0x873d, 0x87af, 0x0d3a, 0xca58, 0x879d,
+  0x8799, 0x87b1, 0x8963, 0x8962, 0x8964, 0x8969, 0x0da0, 0x8a75,
+  0x8a73, 0x8a71, 0x8a74, 0x8b0c, 0x8b16, 0x0de5, 0x8b11, 0x8b1f,
+  0x8b1a, 0x8b0d, 0x8b1b, 0x8b13, 0x8c4e, 0x8c55,
+  /* 0x43 */
+  0x8c50, 0x0e7d, 0x8dd2, 0x8dd3, 0x8dd1, 0x8df1, 0x8ddc, 0x8dc8,
+  0x8dcc, 0x8dd0, 0x8dcf, 0x8ddf, 0x8f2b, 0x8f2e, 0x8f2d, 0x8f9d,
+  0x8f9e, 0x8f9f, 0x8fa9, 0x8fa0, 0x8f98, 0x8fa1, 0x8fab, 0x8faf,
+  0x906e, 0x905f, 0x905a, 0x0f6d, 0x9065, 0x9068, 0x9072, 0x9117,
+  0x9116, 0x9118, 0x9119, 0x911a, 0x9122, 0x911b, 0x911c, 0x91be,
+  0x91ee, 0x925a, 0x9250, 0x9258, 0x9254, 0x9257, 0x9256, 0x9315,
+  0x939b, 0x9393, 0x9392, 0x9372, 0x9398, 0x9399, 0x93df, 0x0ff8,
+  0x93d5, 0x2958, 0x93d4, 0x93f3, 0x93f4, 0x93e7, 0x93e1, 0x93e6,
+  0x93eb, 0x93ec, 0x35db, 0x1050, 0x960d, 0x960c, 0x4d2f, 0x9668,
+  0x9665, 0x966b, 0x9669, 0x96d1, 0x96d3, 0x9727, 0x9728, 0x1068,
+  0x1067, 0x9724, 0x97d7, 0x98ca, 0x98c7, 0xca9e, 0x98d8, 0x98e1,
+  0x98c6, 0x98f8, 0x98c3, 0x98f4, 0x9917, 0x98ea,
+  /* 0x44 */
+  0x98cb, 0x9886, 0x98c4, 0x98d9, 0x9919, 0x98c2, 0x98e2, 0x10cf,
+  0x98de, 0x98ed, 0xca9c, 0x10cd, 0x991d, 0x98dd, 0x98db, 0x98e8,
+  0x98e9, 0x98bf, 0x98e0, 0x98d1, 0x98dc, 0x98ce, 0x991e, 0x98cc,
+  0x98f2, 0x98f3, 0xca9f, 0xcaa2, 0xcaa3, 0xcaa1, 0x9cab, 0x9caa,
+  0x9ca7, 0x9ca9, 0x9d88, 0x9d75, 0x9d60, 0x9d6c, 0x9d73, 0x11ab,
+  0x9d6e, 0x9d74, 0x9d76, 0x9d68, 0x9d77, 0x9d86, 0x9fea, 0xa051,
+  0xa050, 0xa058, 0xa04d, 0xa04f, 0xa04e, 0xa05c, 0xa052, 0xa044,
+  0xa04a, 0xa04b, 0xa1ea, 0xa210, 0xa211, 0xa2cd, 0xa2bf, 0xa2c4,
+  0xa2d0, 0xa2ce, 0xa2c0, 0xa2c2, 0xa2cf, 0xa2c9, 0xa2bb, 0xa397,
+  0xa392, 0xa36f, 0xa37e, 0xa39a, 0x12c1, 0xa386, 0xa373, 0x2d24,
+  0xa377, 0xa38f, 0xa370, 0xa381, 0xa382, 0xa399, 0xa37d, 0xa37f,
+  0xa37b, 0xa387, 0xa5b2, 0xa62f, 0xa634, 0xa62e,
+  /* 0x45 */
+  0xa632, 0x1347, 0xa6aa, 0x1357, 0xa6a9, 0xa738, 0xa736, 0xa737,
+  0xa747, 0xa733, 0xa739, 0xa735, 0xa744, 0xa8a5, 0xa8a6, 0xa89e,
+  0xa9e3, 0xa9df, 0xa9d3, 0xa9f1, 0xa9e4, 0xa9e0, 0xa9d6, 0x2ec3,
+  0xa9e6, 0xa9d8, 0xa9de, 0xa9db, 0xa9dc, 0xab1b, 0xab1f, 0xab1d,
+  0xab1c, 0xab1e, 0xab20, 0xab21, 0x144e, 0xabb6, 0xabbc, 0xabc6,
+  0xabc7, 0xabba, 0xabbe, 0xabbd, 0xabb5, 0xabb4, 0xad0f, 0xad62,
+  0xadeb, 0xadd9, 0xade4, 0xadd7, 0xadd8, 0xadd6, 0xadce, 0xaddd,
+  0xade7, 0xadd2, 0xadc5, 0xadc9, 0xaddb, 0xaf92, 0xaf8a, 0xaf8b,
+  0xaf89, 0xb008, 0xb003, 0xb006, 0xb005, 0xaff5, 0xb00b, 0xaffb,
+  0xb0fc, 0xb101, 0xb102, 0xb0fa, 0xb108, 0xb0f7, 0xb100, 0xb0ff,
+  0xb106, 0xb0f6, 0xb0fb, 0xb10a, 0xb225, 0xb243, 0xb244, 0xb364,
+  0xb362, 0xb35e, 0xb35b, 0xb3d6, 0x3372, 0x33c2,
+  /* 0x46 */
+  0xb577, 0xb582, 0xb57c, 0xb57d, 0xb586, 0xb581, 0xb584, 0xb576,
+  0xb583, 0xb57f, 0xb57e, 0xb688, 0xb68d, 0xb68b, 0xb691, 0xb68f,
+  0xb77c, 0xb779, 0xb77a, 0xb8ea, 0xbb4c, 0xbc99, 0x35d1, 0xbd8b,
+  0xbd8d, 0xbd8a, 0xbd8e, 0xbe11, 0x5456, 0xcb15, 0x3374, 0x33c3,
+  0x33c4, 0x341b, 0x345f, 0x346a, 0x3469, 0x346b, 0x360c, 0x35f6,
+  0x35ed, 0x3629, 0x35fe, 0x35f1, 0x3617, 0x35ff, 0x35ee, 0x35fd,
+  0x361c, 0x35fc, 0x3600, 0x3620, 0x0077, 0x35f9, 0x3667, 0x3608,
+  0x379e, 0x37f3, 0x3825, 0x3827, 0x381f, 0x3865, 0x3863, 0x3894,
+  0x3897, 0x38f1, 0x395f, 0x3962, 0x18f2, 0x3960, 0xc922, 0x3a8c,
+  0x3a82, 0x3a90, 0x3a8b, 0x3a8d, 0x3a81, 0x3a9d, 0x3b8e, 0x3b8f,
+  0x3b92, 0x3c23, 0x3c52, 0xc92e, 0x3d00, 0x3d01, 0x3d02, 0x3d1f,
+  0x3d8c, 0x3d89, 0x3d8b, 0x3d88, 0x3d8d, 0x3d8f,
+  /* 0x47 */
+  0x9085, 0x3e00, 0x3e05, 0x3e01, 0x3e68, 0x3e6e, 0x3e67, 0x3e75,
+  0x1ab6, 0xc945, 0x40d7, 0xc946, 0x3348, 0x40d4, 0x40d8, 0xc947,
+  0xc948, 0x40ba, 0xc949, 0x40db, 0x40bf, 0x4135, 0x40bc, 0x40d9,
+  0x01c4, 0x40dd, 0x4100, 0x40d5, 0x4130, 0x40bd, 0x40dc, 0x43fd,
+  0x43fe, 0x4407, 0x7517, 0x456f, 0x4569, 0x4570, 0x4567, 0x45a9,
+  0x4595, 0x4590, 0x456c, 0x4597, 0x4571, 0x0252, 0x4574, 0x456d,
+  0x458e, 0x472f, 0xc61b, 0x47a9, 0x484e, 0xc95f, 0x485a, 0x4848,
+  0x4855, 0x484c, 0x4849, 0x484f, 0x484a, 0x49d6, 0x49a0, 0x49a9,
+  0xc967, 0x499d, 0x49d4, 0x49a4, 0x49a8, 0x49a6, 0x49e6, 0x4b7d,
+  0x4b77, 0x4b7a, 0x4c41, 0x4c49, 0x4c59, 0x4c45, 0x4c48, 0x4c40,
+  0x4d8e, 0x4d95, 0x4d90, 0x4df7, 0x4df8, 0x4df6, 0x4dfb, 0x4e9e,
+  0x4e9d, 0x4e99, 0xc977, 0x4ea3, 0x4ea9, 0x4e98,
+  /* 0x48 */
+  0x4ea0, 0x4e96, 0x4e94, 0x4e95, 0x4e9f, 0x4ea1, 0x4f21, 0x4f1d,
+  0x4f1f, 0x506d, 0xc97c, 0x509a, 0x5092, 0x507a, 0x507d, 0x50a1,
+  0x509d, 0x5099, 0x506b, 0x506e, 0xc97d, 0x5245, 0xc984, 0x52fb,
+  0x52eb, 0x52f2, 0x52f9, 0xc986, 0x52f8, 0x52ed, 0x5301, 0x52f7,
+  0x5306, 0x539b, 0x53ca, 0x046b, 0x1ec3, 0x546b, 0x546c, 0x5474,
+  0x5467, 0x545b, 0x5460, 0x5476, 0x5463, 0x5461, 0x5528, 0x555b,
+  0x555e, 0x5560, 0x555d, 0x555c, 0x55f4, 0x5600, 0x5608, 0x5607,
+  0x5601, 0x5605, 0x5664, 0x5663, 0x569e, 0x56a0, 0x56a1, 0x569f,
+  0x5726, 0x572d, 0x5728, 0x571d, 0x58ec, 0x58e3, 0x58eb, 0x5916,
+  0x58c8, 0x931b, 0x58e9, 0x58e4, 0x5924, 0x58d1, 0x0541, 0x58dd,
+  0x58c2, 0x58cb, 0x58c7, 0x58e7, 0x0550, 0x58ea, 0x594b, 0xc9a5,
+  0x5960, 0x597d, 0x593e, 0xc9a4, 0x5952, 0x594e,
+  /* 0x49 */
+  0x593c, 0x5932, 0x5930, 0x5923, 0x5bca, 0x5bcb, 0x5bc9, 0x5bc8,
+  0x5bcd, 0x5d98, 0x5da0, 0x5d9f, 0x5d9c, 0x5da3, 0x5d97, 0xc9be,
+  0x5df1, 0x5e09, 0x5e03, 0x5dea, 0x5e45, 0x5ded, 0x5e05, 0x5e1a,
+  0x5e15, 0x5e01, 0x5dec, 0x5e0e, 0x5e17, 0x5e42, 0x5e12, 0x5e10,
+  0x5def, 0x5dff, 0x5e00, 0x5e0c, 0x5e0f, 0x5e04, 0x5e08, 0x5e14,
+  0x5e43, 0xc9bd, 0x5e1b, 0x5e11, 0x5e13, 0x60cf, 0x60ce, 0x616f,
+  0x616e, 0x617a, 0x6170, 0x6164, 0x615e, 0x616c, 0xc9c9, 0x615b,
+  0x6161, 0x6165, 0x627f, 0x6280, 0x627c, 0x62a7, 0x62a6, 0x62a1,
+  0x06c0, 0x62a8, 0x62a3, 0x62a2, 0x62ad, 0x62a5, 0x6301, 0x62ff,
+  0x62fc, 0x6300, 0x6335, 0x63ee, 0x63ef, 0x63f6, 0x63e8, 0x63ea,
+  0x63e3, 0x641f, 0x06fc, 0x63e4, 0x63fa, 0x63f1, 0x63fb, 0xc9d4,
+  0x653d, 0x653c, 0x0079, 0x6578, 0x6577, 0x100b,
+  /* 0x4a */
+  0x66d1, 0x66c7, 0x66df, 0x66d0, 0x66e0, 0x66d6, 0x66d8, 0x6716,
+  0x670e, 0x66d9, 0x670f, 0x6711, 0x66cd, 0x6689, 0x66ce, 0x6714,
+  0x66da, 0x6712, 0x66d3, 0x66c2, 0x66e1, 0x66e9, 0x66ea, 0x66de,
+  0x6715, 0x69d9, 0x69d6, 0x69cd, 0x69d0, 0x69d3, 0xc9f0, 0x6a82,
+  0x6a85, 0x6a7f, 0x6a7d, 0x6a81, 0x6a83, 0x6a84, 0xada0, 0x6b28,
+  0x6b0f, 0x6b17, 0x6b1a, 0x6b25, 0xc9f7, 0x6b9b, 0x6b99, 0x6c92,
+  0x6c8c, 0x6c95, 0x6c8d, 0x6ca3, 0x6c93, 0x6c91, 0x6edb, 0x6e99,
+  0x6e9a, 0x6f08, 0x6f4c, 0x6f0d, 0x6f01, 0x6f4e, 0x6f02, 0x6f4d,
+  0x6f21, 0x6efc, 0xca09, 0x6e8a, 0xca08, 0x6e95, 0x6f11, 0x6f12,
+  0x6f46, 0x6f1c, 0x6f49, 0x6f0c, 0x091e, 0x6f13, 0x6f16, 0x6efd,
+  0x6f0f, 0x6f1f, 0x7230, 0x726e, 0x726b, 0x729b, 0x727b, 0x7263,
+  0x7297, 0x726d, 0x729c, 0x7298, 0x726f, 0x7267,
+  /* 0x4b */
+  0x7269, 0x7515, 0x7563, 0x7586, 0x758a, 0x7587, 0x7588, 0x7585,
+  0x7589, 0x75ca, 0x75c7, 0x75cb, 0x75cc, 0x75c9, 0x760d, 0x7683,
+  0x7684, 0x7678, 0x7682, 0x7673, 0x7679, 0x768c, 0x77d0, 0x77cf,
+  0x77d2, 0x77d9, 0x77cc, 0x77eb, 0x77fd, 0x77ec, 0x77e8, 0x77f8,
+  0x77fa, 0xca27, 0x0a85, 0x77e1, 0x77fb, 0x78e7, 0xca2e, 0x79a5,
+  0x7991, 0x79a6, 0x797c, 0x7992, 0x79a2, 0x79a0, 0x7afc, 0x7afe,
+  0x7b57, 0x7b53, 0x7b58, 0x7be7, 0x7c8e, 0xca38, 0x7c83, 0x7c8b,
+  0x7c84, 0x0b97, 0x7da2, 0x7db7, 0x7da9, 0x7da5, 0x7d9f, 0x7daa,
+  0x7d97, 0x7da1, 0x7d9e, 0x7dab, 0x7d99, 0x7da3, 0x7f30, 0x7f32,
+  0x7f2f, 0x7f70, 0x7f6c, 0x7f6f, 0x7fe8, 0x7fee, 0x7fea, 0x806d,
+  0x8076, 0x8070, 0x8071, 0x806c, 0x81eb, 0x81b5, 0x8196, 0x8190,
+  0x818d, 0xca49, 0x81a2, 0x81b0, 0x8192, 0x81a0,
+  /* 0x4c */
+  0x8193, 0x81c3, 0x818e, 0x81b6, 0x819d, 0x8195, 0x81b3, 0x81a4,
+  0x8370, 0x83d4, 0x0c93, 0x83cf, 0x3470, 0x8494, 0x2561, 0x84c0,
+  0x84b4, 0x84c1, 0x0cb2, 0x84bd, 0x84af, 0x8677, 0x8678, 0x866b,
+  0x866d, 0x866e, 0x8672, 0x866f, 0x8671, 0x62ab, 0x868c, 0x873f,
+  0x87b6, 0x87b7, 0x2606, 0x87bb, 0x87b8, 0x3a9c, 0x87b9, 0x2601,
+  0x898b, 0x897a, 0x8984, 0x8988, 0x8991, 0x8979, 0x898e, 0x8980,
+  0x8982, 0x897c, 0x0da4, 0x8a84, 0x8a7f, 0x0df2, 0x8b3b, 0x8b71,
+  0x8b3d, 0x8b30, 0x0df1, 0x8b3e, 0x8b38, 0x8c5e, 0x8c64, 0x0e81,
+  0x8c5d, 0x8c6d, 0x8c4f, 0x8c62, 0x8c5f, 0x8dec, 0x8df2, 0x8df4,
+  0x8df7, 0x8df6, 0x8e07, 0x8ded, 0x8dea, 0x8df0, 0x8df8, 0x8df3,
+  0x0edc, 0xca72, 0x8f31, 0x8f2f, 0x8fb6, 0x8fae, 0x8faa, 0x8fbf,
+  0x8fcc, 0x8fc7, 0x9983, 0x9080, 0x907b, 0x907f,
+  /* 0x4d */
+  0x907d, 0x9083, 0xca78, 0x9146, 0x912d, 0x9125, 0x9126, 0x912c,
+  0x9137, 0x9131, 0x9133, 0x9132, 0x9127, 0x912a, 0x912e, 0x912f,
+  0x91c0, 0x9271, 0x9261, 0x9262, 0x9266, 0x9318, 0x93c5, 0x93c3,
+  0x93c4, 0x93c2, 0x93ae, 0x9410, 0x9408, 0x941f, 0x943a, 0x943b,
+  0x9436, 0x940c, 0x9406, 0x942a, 0x9457, 0x9450, 0x9420, 0xca85,
+  0x942c, 0x9421, 0x940b, 0x9419, 0x9435, 0x9418, 0x940f, 0x9413,
+  0x9455, 0x9439, 0x941a, 0x100c, 0x9417, 0x95e4, 0x95e9, 0x758b,
+  0x9610, 0x9612, 0x963f, 0x966e, 0x7518, 0xca8c, 0x96d6, 0x96d5,
+  0x96d7, 0x3e02, 0x106d, 0x9731, 0x9730, 0x973a, 0x9885, 0x986b,
+  0x9948, 0x994b, 0x9937, 0x997b, 0x996c, 0x9985, 0x9965, 0x9936,
+  0x9986, 0x9934, 0x9968, 0x995a, 0x9958, 0x9972, 0x996a, 0x98d3,
+  0x993c, 0x9933, 0x993b, 0x994d, 0x994f, 0x997c,
+  /* 0x4e */
+  0x99b0, 0x995b, 0x9955, 0x9964, 0x996b, 0x9953, 0x10e6, 0x9957,
+  0x995e, 0x996d, 0x9935, 0x9969, 0x9959, 0x9966, 0x9950, 0x9951,
+  0x995c, 0x9a5d, 0x9987, 0x9978, 0x9949, 0x994e, 0x98f1, 0x9973,
+  0x9988, 0x98cf, 0xcaa4, 0x9cb1, 0x9cb3, 0x9d9c, 0x9da4, 0x9d90,
+  0x9db8, 0x9da0, 0x9d9d, 0x9da8, 0x9da9, 0xcab9, 0x9db1, 0x9d93,
+  0x9d9b, 0x9da2, 0x9da1, 0x9db0, 0x9da7, 0x9fb3, 0x2b49, 0x9fb4,
+  0x9ff1, 0x9fed, 0x9fec, 0xa068, 0xa075, 0xa06a, 0xa062, 0xa067,
+  0xa060, 0xa077, 0xa05f, 0xa079, 0xa223, 0xa221, 0xa21c, 0x2c99,
+  0xa21f, 0xa21e, 0xa2d6, 0xa2d3, 0xa2d9, 0xa2d7, 0xa2d4, 0xa2dc,
+  0xa2d8, 0xa3a3, 0x12d1, 0xa3be, 0xa3a9, 0xa3a1, 0xa3a0, 0xa3ab,
+  0xa3a2, 0xa3ba, 0xa3c2, 0xa39c, 0xa3bb, 0xa3aa, 0xa3ac, 0xa3a5,
+  0xa3c1, 0x132c, 0xa5e2, 0xa636, 0xa63d, 0xa63a,
+  /* 0x4f */
+  0x5661, 0xa648, 0xa63c, 0xa6b7, 0xa6ac, 0xa6b3, 0xa6b6, 0xa6b2,
+  0x136e, 0xa75d, 0xa749, 0xa74e, 0xa74f, 0xa74d, 0xa75c, 0xa85d,
+  0xa8bb, 0xa8ce, 0xa8bf, 0xa8ba, 0xa8c3, 0x13e5, 0xaa06, 0xa9f8,
+  0xa9fe, 0xaa13, 0xa9f6, 0x13e6, 0xab34, 0xab2d, 0xab2a, 0xab35,
+  0xab2c, 0xabd4, 0xabda, 0xabd3, 0xabd2, 0xabce, 0xabcf, 0x149f,
+  0xadfd, 0xae0b, 0xadfe, 0xadf8, 0xadf7, 0xae17, 0xadfa, 0xadf9,
+  0xae00, 0xadf5, 0xadf1, 0xae03, 0xae05, 0xae1c, 0xafac, 0xaf9a,
+  0xafad, 0xafa0, 0xb01b, 0xb025, 0xb024, 0xb026, 0xb027, 0xb028,
+  0xb02a, 0xb01a, 0xb02e, 0xb015, 0xb115, 0xb114, 0xb117, 0xb118,
+  0xb10f, 0xb113, 0xb10b, 0xb122, 0x457a, 0xb226, 0x301f, 0xb251,
+  0xb24d, 0xb24e, 0xb24a, 0xb24b, 0xb24c, 0xb250, 0xb262, 0xb24f,
+  0xb252, 0xb368, 0xb369, 0xb3e5, 0xb3f0, 0xb3e1,
+  /* 0x50 */
+  0xb3e2, 0xcaf2, 0xb5a5, 0xb5a9, 0xb5a4, 0xb5af, 0xb5ac, 0xb5ae,
+  0xb5aa, 0xb695, 0xb699, 0xb693, 0xb69d, 0xb698, 0xb69c, 0xb697,
+  0x160d, 0xb789, 0xb787, 0xb8d7, 0xb8ed, 0xb8f1, 0xb8f0, 0xb905,
+  0xb903, 0xb904, 0xb95f, 0xbb57, 0xbc9c, 0xbca1, 0xbc9a, 0xbd8f,
+  0xbd93, 0xbd9e, 0xbda3, 0xbd98, 0xbd99, 0xbd95, 0xbe6e, 0xbe6a,
+  0xbff4, 0xbff7, 0xc179, 0xc38f, 0xc391, 0xc40b, 0xc802, 0x3384,
+  0x3404, 0x3480, 0x362f, 0x363f, 0x363b, 0x3662, 0x3644, 0x3633,
+  0x365f, 0x362b, 0xc909, 0x3639, 0x3636, 0x3648, 0x3635, 0x366c,
+  0x3658, 0x363a, 0x37a8, 0x37f4, 0x3829, 0x389a, 0x3900, 0x3abb,
+  0x3abd, 0x3ab7, 0x3ab2, 0x00f8, 0x3aa8, 0x3aab, 0x3aa6, 0x3abc,
+  0x3b97, 0x3b96, 0x3bf8, 0x1913, 0x3c51, 0x0133, 0x3cb5, 0x3cb4,
+  0x3cb6, 0x013c, 0x3cb7, 0x3d05, 0x3d23, 0x3d95,
+  /* 0x51 */
+  0x3d98, 0x014f, 0x3d94, 0x3d93, 0x3e07, 0x3e73, 0x3e71, 0x3e72,
+  0x3e78, 0x415f, 0x416a, 0x4167, 0x416b, 0x4169, 0x418e, 0x4149,
+  0x4180, 0x01dc, 0x4144, 0x418f, 0x4145, 0xc94c, 0x414f, 0x4163,
+  0x4136, 0x4148, 0x415c, 0x4193, 0x4161, 0x4160, 0x414e, 0x415e,
+  0x413f, 0x41a4, 0x1ae0, 0x4168, 0x440b, 0x4411, 0x440d, 0x440e,
+  0x45c2, 0xc957, 0x45b0, 0x45c3, 0x45c8, 0x4565, 0x45d7, 0x45bd,
+  0x45b8, 0x45b6, 0x45c7, 0x45bc, 0x45b1, 0x45af, 0xc95b, 0x4735,
+  0x4730, 0x475d, 0x3e76, 0x476f, 0x47b0, 0xc95e, 0x47b4, 0x485c,
+  0x485d, 0x4a08, 0x49ee, 0x4a0b, 0x49f2, 0x49fd, 0x49f1, 0x4a10,
+  0xc968, 0x4a14, 0x4b8b, 0x4b8c, 0x4b85, 0x4c7a, 0x4c6c, 0x4c60,
+  0x4c67, 0x4c66, 0x4c6a, 0x4c5f, 0x4c6d, 0x4c68, 0x4c64, 0x4d3a,
+  0x4d3b, 0x4d39, 0x4e02, 0x4e04, 0x4e03, 0x4eb4,
+  /* 0x52 */
+  0x4eb3, 0x4ebb, 0x4eac, 0x4eb6, 0x4eb1, 0x4eaf, 0x4eb5, 0x4ebe,
+  0x4eb2, 0x4f24, 0x50b6, 0x50b9, 0x50ac, 0x50b0, 0x50d7, 0x50bb,
+  0x50fe, 0x50cb, 0xc97f, 0x03f5, 0x50b3, 0x50be, 0x50cd, 0x50bc,
+  0x50ba, 0x50c7, 0x5316, 0x531b, 0x5317, 0x5315, 0x539f, 0xc98e,
+  0x5482, 0x5483, 0x548e, 0x546a, 0x5489, 0x5494, 0x5486, 0x5490,
+  0x5562, 0x5590, 0x560c, 0x560f, 0x04c3, 0x56a5, 0x56a7, 0x56a6,
+  0x56a4, 0x5735, 0x5738, 0x5736, 0x5743, 0x5747, 0x5737, 0x5943,
+  0x59a2, 0x5951, 0x5972, 0x596d, 0x592f, 0x5954, 0x596e, 0x5955,
+  0x5937, 0x594f, 0x5950, 0x1f39, 0x599e, 0xc9a8, 0x59b3, 0x59a7,
+  0x0571, 0x59f9, 0x5991, 0xc9a7, 0x59b6, 0x59dd, 0x5999, 0x5bdf,
+  0x5bd5, 0x77f5, 0x5e28, 0x5e40, 0x5e71, 0x5e98, 0x5e95, 0x5e65,
+  0x5e78, 0x5e7f, 0x5e60, 0x5e7c, 0x5e96, 0x5e6a,
+  /* 0x53 */
+  0x5e79, 0x5e73, 0x5e72, 0x5e7b, 0x5e70, 0x60d5, 0x60d7, 0x618f,
+  0x6189, 0x619e, 0x6187, 0x61a0, 0x618d, 0x6188, 0x617f, 0x618c,
+  0x6193, 0x6259, 0xbcb0, 0x62b1, 0x81f4, 0x62af, 0x62b2, 0x6308,
+  0x630a, 0x6336, 0x6337, 0xc9cf, 0x0701, 0x6436, 0x6429, 0x644a,
+  0x6426, 0x6428, 0x6424, 0x642a, 0x6448, 0x6544, 0x6584, 0x658c,
+  0x66c4, 0x66dc, 0x6787, 0x6753, 0x677f, 0x6731, 0x6751, 0x674b,
+  0x6752, 0x6780, 0x67a5, 0x6781, 0x6743, 0x6734, 0x6736, 0x6732,
+  0x6748, 0x6749, 0x673c, 0x674d, 0x674a, 0xc9e6, 0x678a, 0x6746,
+  0x673e, 0x6783, 0x6750, 0x67b4, 0x69f0, 0x69e4, 0x69e3, 0x69e5,
+  0x69e6, 0x69e7, 0x69e1, 0x69ef, 0x69e8, 0x69dd, 0x6a03, 0x6a88,
+  0x6b26, 0x6b16, 0x6b3b, 0x6b2f, 0x6b39, 0x6b34, 0xc9f4, 0x6b35,
+  0x6b31, 0x6b38, 0x3e81, 0x6baa, 0x6ba3, 0x6ba4,
+  /* 0x54 */
+  0x6ba0, 0x6ba1, 0x6ba9, 0x6ba5, 0x6caf, 0x6cb1, 0x6cab, 0x6cae,
+  0x6cb0, 0x6cb3, 0x6cac, 0x6ca9, 0x6cb2, 0x6ca8, 0x6cb4, 0x6cc2,
+  0x6d4f, 0x6d66, 0x6f1e, 0x6f15, 0x6f10, 0x6f7f, 0x6f7e, 0x6f60,
+  0x6fcc, 0x6fb2, 0x6f62, 0x6f8d, 0x6f8e, 0x6f77, 0x6f7c, 0x6f8f,
+  0x6f5d, 0x6f6d, 0x6f63, 0x6faf, 0x6f90, 0x6f7d, 0x6f7a, 0x6f06,
+  0xca0b, 0x6f68, 0x6fb4, 0x6f78, 0x6fb1, 0x22d7, 0xca0c, 0x0941,
+  0x72e8, 0x72e9, 0x72c0, 0x09d7, 0x72ea, 0x72b7, 0x72ba, 0x72b5,
+  0xca1d, 0x72b4, 0x72bc, 0x72c6, 0x72b8, 0x72bd, 0x72c2, 0x734d,
+  0x72f0, 0x72c7, 0x72c1, 0x72c3, 0x72f1, 0x72ec, 0x09e2, 0x751c,
+  0x7520, 0x7558, 0x7565, 0x7564, 0x758c, 0x758d, 0x75d9, 0x75e0,
+  0x7610, 0x7694, 0x7692, 0x7696, 0x7695, 0x76bf, 0x76a0, 0x0a45,
+  0x77f4, 0x77f6, 0x77dc, 0x243d, 0x7816, 0x7815,
+  /* 0x55 */
+  0x781c, 0x780f, 0x782c, 0x7814, 0x7825, 0x7817, 0x7812, 0x781e,
+  0x7980, 0x79a8, 0x79af, 0x79d6, 0x79e2, 0x79b4, 0x79b3, 0x79b0,
+  0x79b2, 0x79a1, 0x7b60, 0x7b66, 0x7b61, 0x7b4e, 0x7b5d, 0x7b63,
+  0x7be6, 0x7bef, 0x7bec, 0x7c98, 0x7ca7, 0x7c94, 0x7c95, 0x7c91,
+  0x7c9d, 0x7c99, 0x7c9b, 0x7c9c, 0x7d1d, 0x7d1c, 0x7dd0, 0x7de0,
+  0x7dcb, 0x7ddb, 0x7dda, 0x7dc2, 0x7dd3, 0x7de5, 0x7f7d, 0x7f7b,
+  0x7fff, 0x0bf2, 0x7ff9, 0x8077, 0x807c, 0x8078, 0x807b, 0x807a,
+  0x81d2, 0x81cb, 0x81c9, 0x81ce, 0x81e4, 0x81ca, 0x81d0, 0x61a5,
+  0x0c49, 0x81d9, 0x81ee, 0x81dd, 0x8200, 0x81e1, 0x83de, 0x83e2,
+  0x83da, 0x84ce, 0xca4f, 0x84cf, 0x84da, 0x84d1, 0x84d4, 0x84ed,
+  0x84cb, 0x84d5, 0x84f1, 0x869c, 0x8688, 0x8741, 0x87d0, 0x87f7,
+  0x87cf, 0x87d1, 0x87db, 0x87de, 0x87f8, 0x87dc,
+  /* 0x56 */
+  0x87d9, 0x89a0, 0x89b2, 0x89a1, 0x89aa, 0x89a9, 0x0da9, 0x89a6,
+  0x899c, 0x89b5, 0x89a7, 0x8a8e, 0x8a90, 0x8a91, 0x8b85, 0x8b5b,
+  0x8b70, 0x8b64, 0x8b67, 0x8b63, 0x8b77, 0x8b68, 0x8b65, 0x8b6a,
+  0x8b78, 0x8b66, 0x8c88, 0x8c9e, 0x8c74, 0x8c7a, 0x8c79, 0x8c8b,
+  0x8c7f, 0x8e13, 0x8e1e, 0x8e17, 0x8e1a, 0x8e22, 0x8e43, 0x8e19,
+  0x8e1f, 0x8e27, 0x8e12, 0x8e24, 0x8e25, 0x365e, 0x8f35, 0x8f34,
+  0x8fd1, 0x8fc4, 0x8fca, 0x8fc6, 0x8fcb, 0x8fcd, 0x8fe2, 0x9089,
+  0x908b, 0x9086, 0x9088, 0x908d, 0x913b, 0x913c, 0x913d, 0x91f5,
+  0x9279, 0x9275, 0x9282, 0x927f, 0x9285, 0x9276, 0x927c, 0x927e,
+  0x927b, 0x9280, 0x927a, 0x5748, 0x0fcb, 0x931d, 0x93f6, 0x93f7,
+  0x93f9, 0x9463, 0x946c, 0x946e, 0x9414, 0x100d, 0x9467, 0x946f,
+  0x9469, 0x9476, 0x9495, 0x9471, 0x9461, 0x9478,
+  /* 0x57 */
+  0x946b, 0x9485, 0x9484, 0x9614, 0x9676, 0x89b6, 0x9675, 0x9674,
+  0x96e2, 0x973f, 0x9744, 0x973d, 0x9747, 0x9748, 0x97db, 0x97dc,
+  0x97dd, 0x98e5, 0x98e6, 0x99c2, 0x9a2e, 0x9a1d, 0x99f8, 0x99f0,
+  0x99f6, 0x99c5, 0x99c6, 0x99fc, 0x9a52, 0x9a2f, 0x9a10, 0x99f3,
+  0x99d2, 0x99ea, 0x99dc, 0x9a1b, 0x99fb, 0x99c3, 0x9a16, 0x9a07,
+  0x99c9, 0x99d8, 0x9a30, 0x9a13, 0x9a31, 0x99fa, 0x99f2, 0x9ae3,
+  0x99d5, 0x9a01, 0x99f1, 0x9a1c, 0x99d6, 0x9a08, 0x9a0b, 0x9a17,
+  0x9a20, 0x99ca, 0x9a32, 0x9a05, 0x99e4, 0x99ce, 0x9a33, 0x9a02,
+  0x9a19, 0x9a1e, 0x99d3, 0x99f7, 0x99e8, 0x9a1f, 0x99f4, 0x9ad8,
+  0x9cbf, 0x9cbe, 0x9cbd, 0x9ddc, 0x9ddd, 0x9dab, 0x9dc9, 0x9dc8,
+  0x9ddf, 0x9dd9, 0x9ddb, 0x9dcc, 0x9de0, 0x9def, 0x9df3, 0x9dae,
+  0x9e01, 0x9fb7, 0x9fb9, 0x9fb6, 0x9fb8, 0x9ff6,
+  /* 0x58 */
+  0x9ff3, 0x9ff5, 0x9ff2, 0xa091, 0xa09d, 0xa09b, 0xa092, 0xa08d,
+  0xa09e, 0xa08c, 0x1231, 0xcac7, 0xa095, 0xcac6, 0xa08a, 0xa08e,
+  0xa09c, 0xa1ef, 0xa22d, 0xa252, 0xa235, 0xa228, 0xa22e, 0xa2e5,
+  0xa3ea, 0xa3f1, 0xa3eb, 0xa3d8, 0xa3d0, 0xa3f3, 0xa3db, 0xa3ce,
+  0x12d5, 0xa3da, 0xa3d7, 0xa3e1, 0xa3f2, 0xa3c8, 0xa3d9, 0xa3de,
+  0xa3d1, 0xa3e7, 0xa3cf, 0xa5b7, 0xa647, 0xa642, 0xa643, 0xcad3,
+  0xa6c3, 0xa6c1, 0xa6c7, 0xa764, 0xa76a, 0xa766, 0xa750, 0xa76e,
+  0xa765, 0x69ec, 0xa77f, 0xcad5, 0xa79a, 0xa769, 0xa772, 0xa76f,
+  0xa77d, 0xa770, 0xa860, 0xa8c2, 0xa8e7, 0xa8d1, 0xa8eb, 0xa8d4,
+  0xa8dc, 0xa8db, 0xaa37, 0xaa25, 0xaa1f, 0xaa1e, 0xaa21, 0xaa1b,
+  0xaa17, 0xaa22, 0xaa2a, 0xaa1a, 0xaa2d, 0xaa23, 0xaa26, 0xaa36,
+  0xa9ff, 0xab3a, 0xab40, 0xab42, 0xab38, 0xab3b,
+  /* 0x59 */
+  0xab3c, 0xab43, 0xabe8, 0x1456, 0xabf9, 0xabeb, 0xabf1, 0xabe9,
+  0xabec, 0xad15, 0xad47, 0xad46, 0xad45, 0xae24, 0xae56, 0xae21,
+  0xae27, 0xae4d, 0xae31, 0xae1e, 0xae2c, 0xae4f, 0xae2b, 0xae53,
+  0xae51, 0xae54, 0xae29, 0xae50, 0xae1f, 0xae32, 0xae2a, 0xae1d,
+  0xae28, 0xae2e, 0xae2d, 0xafbc, 0xafbb, 0xafbd, 0xcae4, 0xb047,
+  0xb041, 0xcae5, 0xb049, 0x14f4, 0xb12e, 0xb127, 0xb26a, 0xb27b,
+  0xb273, 0xb275, 0xb269, 0xb279, 0xb272, 0xb376, 0xb377, 0xb374,
+  0xb373, 0xb402, 0xb3fe, 0xb401, 0xb3f9, 0xb3f4, 0xb5d3, 0xb5d5,
+  0xb5d8, 0xb5c3, 0xb5ca, 0xb5d0, 0xb5cb, 0xb5ce, 0xb5c5, 0xb5e6,
+  0xb5c4, 0xb5c0, 0xb5d4, 0xb5e8, 0xb676, 0xb6a2, 0xb6ae, 0xb6a8,
+  0xb6a3, 0xb6a7, 0xb696, 0xb6a9, 0xb6a5, 0xb6af, 0xb6a4, 0xb6ab,
+  0xb6aa, 0xb6a6, 0xb6a0, 0xb798, 0xb8db, 0xb8f6,
+  /* 0x5a */
+  0xb8f5, 0xb90c, 0xb90a, 0x3175, 0xb968, 0xb963, 0xb966, 0x1658,
+  0xb964, 0xb96a, 0xb969, 0xba95, 0xbb02, 0xbb6a, 0xbb5e, 0xbb68,
+  0xbb69, 0xbb65, 0xcafe, 0xbca7, 0xbcae, 0xbca8, 0xbcb3, 0xbd9c,
+  0xbda9, 0xbdb6, 0xbdb3, 0xbdb2, 0xcb03, 0xbdb8, 0xbdc0, 0xbdbf,
+  0xbdba, 0xbda8, 0xbe3c, 0xbe72, 0xbe71, 0xbe75, 0xbe73, 0xbf17,
+  0xbf15, 0xbf16, 0xbf1b, 0xbffa, 0xbff9, 0xc12c, 0xc185, 0xc182,
+  0xc17f, 0xc17d, 0xc188, 0x72f3, 0xc24e, 0xc250, 0xc393, 0xc397,
+  0xc398, 0xc39b, 0xc39c, 0xc396, 0xc58b, 0xc5fd, 0xc5fc, 0xcb17,
+  0x6a8b, 0x3408, 0x3407, 0x3673, 0x36a2, 0x36af, 0x3682, 0x367b,
+  0x3674, 0x36b0, 0x3676, 0x36b9, 0x369e, 0x36b1, 0x36a1, 0x36b2,
+  0x366e, 0xc90b, 0x0087, 0x3678, 0x367a, 0x3683, 0x369a, 0x37f8,
+  0x3831, 0x3869, 0x3868, 0x389c, 0x3904, 0x3999,
+  /* 0x5b */
+  0x3ac7, 0x3ac6, 0x3adc, 0x3ac4, 0x3ad8, 0x3ad4, 0x3adf, 0x3ad1,
+  0x3ad0, 0x3ad6, 0x3acf, 0x3bad, 0x3baf, 0x3ba7, 0x3bfd, 0x3c5b,
+  0x3c5a, 0x3d07, 0x3d9d, 0x3d9b, 0x3dab, 0x3da4, 0x3d9c, 0x3d9e,
+  0x3da5, 0x3daa, 0x3da6, 0x3e0e, 0x3e7e, 0x3e7c, 0x41ee, 0x41d5,
+  0x41e9, 0x4142, 0x41e2, 0x4223, 0x41d9, 0x41d4, 0x41e3, 0x4215,
+  0x41ef, 0x41f0, 0x41d6, 0x41dd, 0x41f6, 0x421c, 0x41d8, 0x41db,
+  0x41da, 0x41ed, 0x4611, 0x4415, 0x4418, 0x441a, 0x441f, 0x4416,
+  0xc94d, 0x4419, 0xc94b, 0x45f0, 0x4609, 0x461b, 0xa5e7, 0x45f6,
+  0x45f4, 0x45b5, 0x4610, 0x45f2, 0x4615, 0x45f3, 0x45f8, 0x4739,
+  0x473b, 0x4736, 0x460e, 0x4772, 0x4774, 0x47b9, 0x47b7, 0x47b8,
+  0x4872, 0x486b, 0x4a1d, 0x4a37, 0x4a22, 0x4a43, 0x4a4d, 0x4a38,
+  0x4a5b, 0x4a79, 0x4a1b, 0x49f3, 0x4b91, 0x4c7b,
+  /* 0x5c */
+  0x4c94, 0xc96f, 0x4c96, 0x4c7f, 0x4c8f, 0x4c84, 0x4c7c, 0x4c8e,
+  0x4c90, 0x4c98, 0x4c83, 0x4c80, 0x4c93, 0x4c82, 0x32fd, 0x4d3d,
+  0x4d41, 0x4da1, 0x4d9f, 0x4e0a, 0x4e0d, 0x4ec8, 0x4ec9, 0x4ec7,
+  0x4ecd, 0x4f25, 0x50b1, 0x50dc, 0xc980, 0x50e5, 0x50f4, 0x50bf,
+  0x50db, 0x50ea, 0x50f2, 0x03fa, 0x50f1, 0x50ed, 0x50e6, 0x5202,
+  0xc982, 0x5325, 0x5318, 0x531f, 0x5320, 0x53cf, 0x549d, 0x5499,
+  0x54a8, 0x5568, 0x5566, 0x5567, 0x5591, 0x5613, 0x5615, 0x561d,
+  0x5616, 0x5619, 0x566b, 0x5668, 0x566a, 0x566d, 0x5669, 0x56aa,
+  0x5757, 0x5752, 0x5750, 0x575f, 0x5767, 0x574f, 0x04f2, 0x575b,
+  0x575c, 0x575d, 0x5a1f, 0x599d, 0x59b1, 0x59b0, 0x5994, 0x59c3,
+  0x59af, 0x59a8, 0x59dc, 0x5998, 0x59c4, 0x59a4, 0x59ab, 0x59aa,
+  0x59a5, 0x5a21, 0x59eb, 0x59e6, 0x59f7, 0x59f8,
+  /* 0x5d */
+  0x59fc, 0x59fa, 0x59e0, 0xc9aa, 0x59f6, 0xc9a9, 0x59e1, 0x5bec,
+  0x5be2, 0x5be4, 0x5bf9, 0x5e6f, 0x6b4c, 0x5ebb, 0x5ee1, 0x5f00,
+  0x5ed8, 0x062f, 0x5ed6, 0x5ee2, 0x5ec3, 0x5eb3, 0x5ed2, 0xc9c1,
+  0x5ece, 0x5ed0, 0x5ed5, 0x5eb9, 0x5eba, 0x5ecf, 0x5ebd, 0x60db,
+  0x61aa, 0x61ad, 0x61b8, 0x61b6, 0x61b5, 0x61af, 0x61b4, 0x61b7,
+  0x61a8, 0x61b9, 0x61be, 0x6282, 0x62bc, 0x62b8, 0x62b6, 0x62b9,
+  0x06c1, 0x6310, 0x6427, 0x6469, 0x6470, 0x6456, 0x646b, 0x647a,
+  0x646c, 0x646d, 0xc9d5, 0x94c1, 0x658d, 0x6590, 0x67b6, 0x6810,
+  0x6812, 0x67ba, 0x67bd, 0x6805, 0x67c2, 0x6807, 0x67f5, 0xc9e9,
+  0x67af, 0x67f4, 0x67f7, 0x67f8, 0x6811, 0x69f6, 0x69f5, 0x69fb,
+  0x6a01, 0x6a00, 0x6a02, 0x69fe, 0x69fa, 0x69fd, 0x0840, 0x6b37,
+  0x6b49, 0x6b4b, 0x6b46, 0x6b47, 0x6bb3, 0x6bb2,
+  /* 0x5e */
+  0x6bb0, 0x6bb7, 0x6c11, 0x6ccc, 0x6cdf, 0x6cd3, 0x6cd5, 0x6cdb,
+  0x6cc5, 0x6cc8, 0x6cc9, 0x6ce2, 0x6cca, 0x6cd1, 0x6cd2, 0x6cdd,
+  0x6f6c, 0x6f73, 0x7021, 0x6ff0, 0x701f, 0x703b, 0x7022, 0x7023,
+  0x6fe8, 0x6fdd, 0x093f, 0x701b, 0x6fed, 0xca0e, 0x6ff2, 0x0946,
+  0x6fdc, 0x6fe9, 0x701d, 0x6fda, 0x6fe6, 0x7313, 0x7315, 0x7316,
+  0x733c, 0x730b, 0x731c, 0x733a, 0x733d, 0x739a, 0x731d, 0x7309,
+  0x7308, 0x733b, 0x7522, 0x7526, 0x7525, 0x7524, 0x369b, 0x758f,
+  0x7590, 0x75e6, 0x75e3, 0x75e5, 0x7611, 0xca25, 0x76ae, 0x76be,
+  0x76b4, 0x76b3, 0x76af, 0x7691, 0x76c2, 0x76b6, 0x76b2, 0x7857,
+  0x783b, 0x7858, 0x7851, 0x7841, 0x7839, 0x0a8f, 0x7859, 0x7845,
+  0x7861, 0x78e8, 0x79fa, 0x79ea, 0x79ef, 0x79f2, 0x79f0, 0x7b08,
+  0x7b70, 0x7b6a, 0x7b73, 0x7b68, 0x7bc8, 0x7bf2,
+  /* 0x5f */
+  0x3e7b, 0x7cae, 0x7cab, 0x7cb5, 0x7caf, 0x7cb2, 0x7cb6, 0x7cb0,
+  0x7d1e, 0x7e03, 0x7e06, 0x7e1f, 0x0bac, 0x7e0f, 0x7e02, 0x7e19,
+  0x7e18, 0x7e22, 0x7e15, 0x7e07, 0x7e0d, 0x7e24, 0x7e0c, 0x7e1e,
+  0x7f89, 0x7f8a, 0x800a, 0x800b, 0x8007, 0x8004, 0x8009, 0x8084,
+  0x8083, 0x8218, 0x8214, 0x8205, 0x8216, 0x820e, 0x8211, 0x8208,
+  0x820b, 0x8215, 0x8085, 0x8237, 0x822a, 0x820d, 0x820f, 0x837e,
+  0x8376, 0x8377, 0x83ec, 0x84fc, 0x8508, 0x84ff, 0x8503, 0x8510,
+  0x8505, 0x8506, 0x84fa, 0x86c7, 0x86c0, 0x86c3, 0x86a7, 0x86a8,
+  0x86ab, 0x86c1, 0x86aa, 0x86c8, 0x8743, 0x8802, 0x880e, 0x8801,
+  0x87fe, 0x8803, 0x0d68, 0x8822, 0x8821, 0x8807, 0x8808, 0x880c,
+  0x89ca, 0x89bc, 0x89be, 0x89bd, 0xca5c, 0x89bb, 0x89b9, 0x0dab,
+  0x89c5, 0x8a99, 0x8b6b, 0x8b93, 0x8b94, 0x8ba9,
+  /* 0x60 */
+  0x8ba0, 0x8ba6, 0xca61, 0x8bab, 0x8b9e, 0x8b9b, 0x8b91, 0x8b99,
+  0x8cb6, 0x8cb8, 0x8c9a, 0x0e91, 0x8c98, 0x8c9b, 0x8cb3, 0x8ca2,
+  0x54aa, 0x8ca0, 0x8c9f, 0x8e5b, 0x8e70, 0x8e54, 0x8e71, 0x8e65,
+  0x8e51, 0x8e9d, 0x8e61, 0x8e5a, 0x8e74, 0x8e4c, 0x8e4b, 0x8e5e,
+  0x8e58, 0x8e53, 0x8e52, 0x8f3b, 0x8f39, 0x8fd6, 0x8fe7, 0x8fd7,
+  0x8fd8, 0x8fd9, 0x8fda, 0x8fdb, 0x8fdc, 0x8fe0, 0x8fe4, 0x8fdd,
+  0x8ff5, 0x8ff1, 0x9098, 0x909d, 0x9099, 0x9150, 0x9149, 0x27e4,
+  0x9162, 0x91d7, 0x9201, 0x91f7, 0xca7d, 0x928c, 0x929c, 0x2888,
+  0x931f, 0x931e, 0x943d, 0x943f, 0x9411, 0x9459, 0x943e, 0x9458,
+  0x9500, 0x949e, 0x94b6, 0x94aa, 0x94af, 0x94ac, 0x1030, 0x94c0,
+  0x94a9, 0x3e10, 0x95ee, 0x9677, 0x9679, 0x967a, 0x967d, 0x967f,
+  0x9683, 0x9678, 0x967e, 0x96e4, 0x96e6, 0x96e5,
+  /* 0x61 */
+  0x105d, 0x974e, 0x9759, 0x1075, 0xca8e, 0x974f, 0x974a, 0x97e3,
+  0x97de, 0x97e2, 0x9974, 0x99ac, 0x9961, 0x9962, 0x9976, 0x997a,
+  0x9979, 0x9960, 0x9a64, 0x9b81, 0x9adf, 0x9a84, 0x9a8a, 0x9a92,
+  0x9a79, 0x9ade, 0x9a98, 0x9a6c, 0x9ae1, 0xcaa5, 0x9a7c, 0x9a72,
+  0x9a81, 0x9ae0, 0x9a65, 0x10ff, 0x9a6a, 0x9a97, 0x9aaa, 0x9ad3,
+  0x9aab, 0x9a6e, 0x9aac, 0x9a76, 0x9a7b, 0x9aad, 0xcaa6, 0x9a94,
+  0x9ad7, 0x9a70, 0x9ad5, 0x9af1, 0x9a7a, 0x9a68, 0x9a96, 0x110b,
+  0x9a73, 0x9aae, 0x9add, 0x9ada, 0x9aaf, 0x9ab0, 0x9adb, 0x9a62,
+  0x9af8, 0x9cc2, 0x9cc7, 0x9cc8, 0x9cc5, 0x9cc3, 0x9cc6, 0x9dde,
+  0x11c8, 0x9e11, 0x9e15, 0x9e28, 0x9e21, 0x9e2d, 0x9e51, 0x9e2b,
+  0x9e16, 0x9e24, 0x9e35, 0x9e1f, 0x9e12, 0x9e10, 0x9e80, 0x9e3b,
+  0x9e29, 0x9e2a, 0x9e1b, 0x9e18, 0x9e20, 0x9e3f,
+  /* 0x62 */
+  0x9e1c, 0x9e26, 0x9e0b, 0x9fbe, 0x9fc4, 0x9fbd, 0x9ffa, 0x9ffb,
+  0xa0b1, 0xa0b2, 0xa0b0, 0xa0b9, 0xa0a6, 0xa0bd, 0xa0b6, 0xa0b8,
+  0xa0b4, 0xa0b3, 0xa0a7, 0xa0ae, 0xa0bc, 0xa1f2, 0xa1f3, 0xa1f4,
+  0xa23b, 0xa240, 0xa246, 0xa2f0, 0xa2ee, 0xa2e8, 0xa2f1, 0xa2eb,
+  0xa2ef, 0xa3fc, 0xa420, 0xa409, 0xa406, 0xa403, 0xcacf, 0xa419,
+  0xa424, 0xa41b, 0xa41d, 0xa3fd, 0xa41e, 0xa3f4, 0xa401, 0xa408,
+  0xa405, 0xa423, 0xa3ff, 0xa5ea, 0xa64d, 0xa64e, 0xa656, 0xa657,
+  0xa651, 0xa655, 0xa654, 0xa6cb, 0xa6d4, 0xa6d1, 0xa6cf, 0xa6d2,
+  0xa6ca, 0xa6d6, 0xa78b, 0xa788, 0xa785, 0xa789, 0x4c9b, 0xa7bb,
+  0xa78c, 0x1374, 0xa799, 0xa78a, 0xa8ec, 0xa8ef, 0xa8f9, 0xa909,
+  0xa8f8, 0xa8f3, 0xa900, 0xa91d, 0x13ac, 0xa8fd, 0xaa48, 0xaa5c,
+  0xaa55, 0xaa5e, 0xaa49, 0xaa63, 0xaa60, 0xaa53,
+  /* 0x63 */
+  0xaa62, 0xaa40, 0xab49, 0xab4a, 0xab4c, 0xab4d, 0xac0a, 0xac06,
+  0xac2f, 0xac21, 0xac07, 0xac09, 0xac02, 0xac16, 0xac03, 0xac0b,
+  0xac0f, 0xae60, 0xae68, 0xae5e, 0xae5d, 0xae63, 0xae5f, 0xae64,
+  0xae78, 0xae61, 0xae69, 0xae65, 0xafda, 0xafe6, 0xafdb, 0xafdc,
+  0xb039, 0xb057, 0xb055, 0xb065, 0xb061, 0xb054, 0xb145, 0xb141,
+  0xb13e, 0xb137, 0xb212, 0xb213, 0xb22c, 0xb296, 0xcae9, 0xb29c,
+  0xb29d, 0xb285, 0xcae8, 0xb29f, 0xb2a3, 0xb382, 0xb383, 0xcaee,
+  0xb41d, 0xb414, 0xb41f, 0xb420, 0xb547, 0xb580, 0xb5c9, 0xb5f9,
+  0xb606, 0xb5f0, 0xb5f8, 0xb5ef, 0xb5fd, 0xb5f1, 0xb5fe, 0xb6b8,
+  0xb6c0, 0xb6c3, 0xb6b5, 0xb6b6, 0xb6c9, 0xcaf3, 0xb6bd, 0xb6ba,
+  0xb6bf, 0xb6b3, 0xb6c6, 0xb6b2, 0xb6bc, 0xb6b7, 0xb6b9, 0xb6c8,
+  0xb7b5, 0xb7b3, 0x1616, 0xb7ac, 0xb7a9, 0xb7ad,
+  /* 0x64 */
+  0xb911, 0xb90d, 0xb916, 0xb989, 0xb97c, 0xb98b, 0xb97b, 0xb988,
+  0xb984, 0xba9d, 0xba98, 0xbb88, 0xbb86, 0xbb82, 0xbb8b, 0xcaff,
+  0xbb71, 0xbb72, 0xbb81, 0xbb8c, 0xbb80, 0xbb89, 0xbcbb, 0xbcc1,
+  0xbcbe, 0xcb01, 0xbcbd, 0xbdc1, 0xbdb4, 0xbdb7, 0xbdc8, 0x173b,
+  0xbdd3, 0xbdd0, 0xbdb0, 0xbdca, 0xbdcd, 0xbe15, 0xbe19, 0xbe17,
+  0xbe3f, 0xbe40, 0xbe44, 0xbe7c, 0xbe78, 0xbe79, 0xbe88, 0xcb06,
+  0xbe89, 0xbe7d, 0xbf23, 0xbf24, 0xbf26, 0xbf22, 0xbf27, 0xbf1f,
+  0xbfc9, 0xbfc3, 0xc00a, 0xc00b, 0xc004, 0x17ef, 0xc003, 0xc001,
+  0xc009, 0xc10f, 0xc12e, 0xc12d, 0xc191, 0xc199, 0xc19e, 0xc190,
+  0xc194, 0xc19d, 0xc198, 0xc19b, 0xc19c, 0xc19a, 0xc254, 0xc39d,
+  0xc39f, 0xc3a3, 0xc3a4, 0xc3a5, 0xc602, 0xc717, 0xc71b, 0xc719,
+  0xc7d1, 0x4737,
+};
+
+static const ucs4_t cns11643_6_2uni_upages[204] = {
+  0x03400, 0x03500, 0x03600, 0x03700, 0x03800, 0x03900, 0x03a00, 0x03b00,
+  0x03c00, 0x03d00, 0x03e00, 0x03f00, 0x04000, 0x04100, 0x04200, 0x04300,
+  0x04400, 0x04500, 0x04600, 0x04700, 0x04800, 0x04900, 0x04a00, 0x04b00,
+  0x05100, 0x05300, 0x05500, 0x05a00, 0x05b00, 0x05d00, 0x05e00, 0x06100,
+  0x06500, 0x06800, 0x06e00, 0x07200, 0x07300, 0x07800, 0x07a00, 0x07f00,
+  0x08000, 0x08100, 0x08200, 0x08800, 0x08900, 0x08a00, 0x08d00, 0x08f00,
+  0x09200, 0x09700, 0x0ff00, 0x20000, 0x20100, 0x20200, 0x20300, 0x20400,
+  0x20500, 0x20600, 0x20700, 0x20800, 0x20900, 0x20a00, 0x20b00, 0x20c00,
+  0x20d00, 0x20e00, 0x20f00, 0x21100, 0x21200, 0x21300, 0x21400, 0x21500,
+  0x21600, 0x21700, 0x21800, 0x21900, 0x21a00, 0x21b00, 0x21c00, 0x21d00,
+  0x21e00, 0x21f00, 0x22000, 0x22100, 0x22200, 0x22300, 0x22400, 0x22500,
+  0x22600, 0x22700, 0x22800, 0x22900, 0x22a00, 0x22b00, 0x22c00, 0x22d00,
+  0x22e00, 0x22f00, 0x23000, 0x23100, 0x23200, 0x23300, 0x23400, 0x23500,
+  0x23600, 0x23800, 0x23900, 0x23a00, 0x23b00, 0x23c00, 0x23d00, 0x23e00,
+  0x23f00, 0x24100, 0x24200, 0x24300, 0x24400, 0x24500, 0x24600, 0x24700,
+  0x24800, 0x24900, 0x24a00, 0x24b00, 0x24c00, 0x24d00, 0x24e00, 0x24f00,
+  0x25000, 0x25100, 0x25200, 0x25300, 0x25400, 0x25500, 0x25600, 0x25700,
+  0x25800, 0x25900, 0x25a00, 0x25b00, 0x25e00, 0x25f00, 0x26000, 0x26200,
+  0x26300, 0x26400, 0x26500, 0x26600, 0x26700, 0x26800, 0x26900, 0x26a00,
+  0x26b00, 0x26c00, 0x26d00, 0x26e00, 0x27100, 0x27200, 0x27300, 0x27500,
+  0x27600, 0x27700, 0x27800, 0x27900, 0x27a00, 0x27b00, 0x27c00, 0x27d00,
+  0x27e00, 0x27f00, 0x28000, 0x28200, 0x28300, 0x28400, 0x28500, 0x28600,
+  0x28700, 0x28800, 0x28900, 0x28c00, 0x28d00, 0x28e00, 0x28f00, 0x29000,
+  0x29100, 0x29200, 0x29300, 0x29400, 0x29500, 0x29600, 0x29800, 0x29a00,
+  0x29b00, 0x29c00, 0x29d00, 0x29f00, 0x2a000, 0x2a200, 0x2a300, 0x2a400,
+  0x2a500, 0x2f800, 0x2f900, 0x2fa00,
+};
+
+static int
+cns11643_6_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 >= 0x21 && c1 <= 0x64)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if (c2 >= 0x21 && c2 < 0x7f) {
+        unsigned int i = 94 * (c1 - 0x21) + (c2 - 0x21);
+        ucs4_t wc = 0xfffd;
+        unsigned short swc;
+        {
+          if (i < 6388)
+            swc = cns11643_6_2uni_page21[i],
+            wc = cns11643_6_2uni_upages[swc>>8] | (swc & 0xff);
+        }
+        if (wc != 0xfffd) {
+          *pwc = wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
diff --git a/graf2d/win32gdk/gdk/src/iconv/cns11643_7.h b/graf2d/win32gdk/gdk/src/iconv/cns11643_7.h
new file mode 100644
index 00000000000..44532bc4e11
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cns11643_7.h
@@ -0,0 +1,988 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CNS 11643-1992 plane 7
+ */
+
+static const unsigned short cns11643_7_2uni_page21[6539] = {
+  /* 0x21 */
+  0x2b55, 0x2c82, 0x2c89, 0x2c87, 0x2dbe, 0x2dbd, 0x2dca, 0x2dd4,
+  0x2dbc, 0x2dc4, 0x2dc1, 0x2dc2, 0x2dd7, 0x2d70, 0x2dba, 0x2de3,
+  0x2dbb, 0x2eb1, 0x2eb6, 0x2eb0, 0x2f6c, 0x300d, 0x3007, 0x31f1,
+  0x31f5, 0x31ed, 0x31ef, 0x31eb, 0x31ec, 0x31ee, 0x3207, 0x33c4,
+  0x3408, 0x34b3, 0x34ad, 0x34b0, 0x3511, 0x2c8a, 0x3683, 0x367a,
+  0x3682, 0x3668, 0x3671, 0x36b0, 0x36af, 0x01f6, 0x366c, 0x366f,
+  0x3662, 0x3665, 0x3681, 0x367f, 0x3664, 0x3673, 0x366e, 0x3667,
+  0x3674, 0x367d, 0x3678, 0x3685, 0x36aa, 0x3688, 0x36a6, 0xc34e,
+  0x368a, 0x3684, 0x1a55, 0x3924, 0x3922, 0x3923, 0x3a32, 0x3a5b,
+  0x3a4f, 0x0267, 0x3a26, 0x3a3e, 0x3a42, 0x3a47, 0x3a22, 0x309b,
+  0x3a4a, 0x3a1f, 0x3a49, 0x3a2b, 0x3a33, 0xc358, 0x3a2a, 0x3a28,
+  0x3b3d, 0x3b3c, 0x3bbf, 0x3c79, 0x3c80, 0x3c7c,
+  /* 0x22 */
+  0x3c7a, 0x3c78, 0x3d82, 0x3d5c, 0x3d5a, 0x3d4b, 0x3d7c, 0x3d7f,
+  0x3d1f, 0x3d89, 0x3d8b, 0x3d57, 0x3d7e, 0x3d7d, 0x3d53, 0x3f9f,
+  0x3fbc, 0x3fa5, 0x3f86, 0x3fdc, 0x3fa4, 0x3fb6, 0x3fa2, 0x3fb4,
+  0x4048, 0x4046, 0x40a7, 0x4114, 0x4112, 0x4111, 0x41e1, 0x41d0,
+  0x4226, 0x4228, 0x4229, 0x432f, 0x430d, 0x4325, 0x4314, 0x433c,
+  0x430b, 0x4311, 0x4330, 0x4318, 0x4319, 0x4336, 0x4317, 0x4310,
+  0x4315, 0x4403, 0x4429, 0x444c, 0x453f, 0x453e, 0x4534, 0x4542,
+  0x4535, 0x31f3, 0x45cd, 0x45d1, 0x45d2, 0x46ad, 0x46ba, 0x46c1,
+  0x46bb, 0x46b4, 0x46bc, 0x476c, 0x4792, 0x4821, 0x4824, 0x5f19,
+  0x48ad, 0x48ae, 0x48ab, 0x48ac, 0x4970, 0x4976, 0x4971, 0x4977,
+  0x1c7f, 0x4aec, 0x4b1c, 0x4afb, 0x4aee, 0x4be2, 0x4afd, 0x4b1e,
+  0x4b3b, 0x4b4a, 0xc3ae, 0x0592, 0x4b7d, 0x4b56,
+  /* 0x23 */
+  0x4b44, 0x4b4b, 0x4cfa, 0x4ce8, 0x4cf8, 0x4cff, 0x4cf7, 0x4cf6,
+  0x4cfe, 0x4d07, 0x4d5d, 0x4ed4, 0xc3c3, 0x4ec8, 0x4ec5, 0xc3c0,
+  0x4ec9, 0x4f4d, 0x4f20, 0x4f36, 0x4f35, 0x4f88, 0x4f25, 0x4f21,
+  0x4f26, 0x0645, 0x4f3f, 0x4f3b, 0x4f24, 0x4f43, 0x4f4e, 0x4f4f,
+  0x4f44, 0x4f40, 0x4f41, 0x4f39, 0x4f2b, 0x50dd, 0x50de, 0x51cd,
+  0x51cb, 0x51db, 0x51d8, 0x51d9, 0x51d2, 0x51ca, 0x51d1, 0x51d4,
+  0x51f9, 0x51d0, 0x525e, 0x525d, 0x528a, 0x5314, 0x5483, 0x5484,
+  0x549b, 0x5482, 0x547d, 0x547c, 0x5499, 0x547e, 0x549a, 0x5495,
+  0x547b, 0x5486, 0x5548, 0x5592, 0x56b2, 0x5742, 0x5772, 0x5715,
+  0x5730, 0x5743, 0x575b, 0x571d, 0x5773, 0x572d, 0x07c9, 0x5721,
+  0x571c, 0xc3ea, 0x5729, 0x571e, 0x5733, 0x5a10, 0x5a0e, 0xc3f1,
+  0x5a0d, 0x5a11, 0x5a12, 0x5a17, 0x5a09, 0x5a0f,
+  /* 0x24 */
+  0x5a98, 0x5a94, 0x5a96, 0x5a99, 0x5a95, 0x5a97, 0x5b50, 0x5b52,
+  0x5b4d, 0x5b57, 0x5b53, 0x5b56, 0x5bb8, 0x5c12, 0x5cf1, 0x5cf0,
+  0x5cee, 0x5cef, 0x5ce5, 0x5ceb, 0x5ce7, 0x5cf2, 0x5ce6, 0x5cf7,
+  0x5d09, 0x5d6b, 0x5d6a, 0x5e79, 0x5ecd, 0x5eef, 0x5ee4, 0x5ee3,
+  0x5f6c, 0x5f67, 0x5f62, 0x5f58, 0x5f69, 0x5fab, 0x5f57, 0x5fad,
+  0x5f54, 0x5fae, 0x5f76, 0x5f49, 0x5f45, 0x5f4f, 0xc40f, 0x5f50,
+  0x5f7d, 0x5f44, 0x5f66, 0x5f48, 0x5fa3, 0x5f51, 0x5f53, 0xc410,
+  0x5f60, 0x5f47, 0x5f5e, 0x5f85, 0x5fac, 0x5f6d, 0x5f75, 0x5fa8,
+  0x0955, 0x5f43, 0x5f4e, 0x5f5c, 0x5f56, 0x5f6e, 0x5f63, 0x5f6a,
+  0x6256, 0x6212, 0x625c, 0x6258, 0x6255, 0x627e, 0x62a8, 0x6211,
+  0x6259, 0x625a, 0x6267, 0x6254, 0x625b, 0x62f0, 0x6429, 0x642c,
+  0x642a, 0x6427, 0x6467, 0x6468, 0x6493, 0x6495,
+  /* 0x25 */
+  0x649a, 0x64ee, 0x64f1, 0x64ed, 0x64e9, 0x65cb, 0x65df, 0x65db,
+  0x673c, 0x674e, 0x676c, 0x677b, 0x677c, 0x6783, 0x676b, 0x6766,
+  0x6763, 0x67a0, 0x6785, 0x6768, 0x67a2, 0x68ec, 0x0ae8, 0x68e7,
+  0x6910, 0x6918, 0x693a, 0x691a, 0x6938, 0x6941, 0x691b, 0x6914,
+  0x691c, 0x691d, 0x6a12, 0x6a0d, 0x6a07, 0x6a7e, 0x6a7f, 0x34b9,
+  0x6a80, 0x6a7a, 0x6af3, 0x6bb9, 0x6bbb, 0x6bba, 0x6bbd, 0x6bb7,
+  0x6bbf, 0x6c21, 0x6d3a, 0x6d3d, 0x6d36, 0x6d49, 0x6d81, 0x0bb6,
+  0x6d3f, 0x6d4d, 0x6d3e, 0x0bbd, 0x6d30, 0x6d4f, 0x6e37, 0x6e98,
+  0x6e99, 0x6f11, 0x6f0d, 0x6f88, 0x6f8a, 0x701c, 0x7055, 0x7056,
+  0x7062, 0x7057, 0x7042, 0x7010, 0x704d, 0x705a, 0x7066, 0x7046,
+  0x4b7e, 0x704f, 0x80f9, 0x7187, 0x7184, 0x71f4, 0x71f5, 0x71f2,
+  0x71f7, 0x7345, 0xc450, 0x7349, 0x7335, 0x72fd,
+  /* 0x26 */
+  0x7330, 0x7343, 0x7346, 0x0cd6, 0x7333, 0x74c6, 0xc456, 0x74d4,
+  0x8dd8, 0x74e0, 0x36a7, 0x7544, 0x2d98, 0x7654, 0x763e, 0x7635,
+  0x763a, 0x0d71, 0x7634, 0x7639, 0x7646, 0x765a, 0x765b, 0x763c,
+  0x77dc, 0x77d6, 0x77d0, 0xc45e, 0x78ac, 0xc45d, 0x78a5, 0x79f4,
+  0x7a24, 0x79e0, 0x79fd, 0x79f2, 0x79fc, 0x7a02, 0x79f1, 0x79ff,
+  0x79d2, 0x79d8, 0x79d3, 0x79f9, 0xc463, 0x79ed, 0x79f7, 0x79f0,
+  0x79d7, 0x7a09, 0x79f5, 0x7cc2, 0x7cc5, 0x7ccf, 0x0e98, 0x7cc1,
+  0x7cc6, 0x7cd4, 0x7cce, 0x7e9b, 0x7e99, 0x7e8f, 0x7eb7, 0x7e82,
+  0x7e93, 0x7eb4, 0x7ec1, 0x7e90, 0x7e9a, 0x7e94, 0x7e9c, 0x7eb5,
+  0xc46f, 0xc46e, 0x7e9f, 0x7e8e, 0x7e9e, 0x803c, 0x8047, 0x8041,
+  0x80eb, 0x80ec, 0x80ed, 0x80ee, 0x80df, 0x80f2, 0x810d, 0x810e,
+  0x2c86, 0x81a9, 0x81a4, 0x81a5, 0x825f, 0x825a,
+  /* 0x27 */
+  0x8266, 0x8268, 0x826a, 0x8264, 0x8265, 0x82c1, 0x82d8, 0xc47b,
+  0x82d9, 0x8309, 0x83aa, 0x83a3, 0x83b9, 0x77e2, 0x83a5, 0x83ab,
+  0x8420, 0x8589, 0x858b, 0x85db, 0x85e4, 0x85ef, 0x85e2, 0x85e9,
+  0x85f0, 0x85f3, 0x85dd, 0x861e, 0x871d, 0x8746, 0x877c, 0x8780,
+  0x8781, 0x8782, 0x8787, 0x8788, 0x878a, 0x878c, 0x87e7, 0x87eb,
+  0x87ea, 0x8868, 0x886b, 0x8869, 0x8866, 0x886a, 0x8865, 0x88e5,
+  0x88e4, 0x88e6, 0x8918, 0x8a24, 0x8a48, 0x8a2f, 0x8a7e, 0x8989,
+  0x8a1e, 0x8a49, 0x8a26, 0x8a09, 0x8a34, 0x8a2d, 0x8a4a, 0x8a15,
+  0xc4a9, 0x8a33, 0x8a28, 0x8a27, 0x8a20, 0x8a2b, 0x8a29, 0x8a6a,
+  0x8a0b, 0x8a0e, 0x8a1c, 0x89ff, 0xc4aa, 0x8a35, 0x8a11, 0x8a4b,
+  0x8a4c, 0x8a1f, 0x8a0f, 0x8a39, 0x8a68, 0x8a1d, 0x8a08, 0x8a0c,
+  0x8a0d, 0x8a62, 0x8aaf, 0x8a32, 0x8a2c, 0x8a64,
+  /* 0x28 */
+  0x8a04, 0x8a16, 0x8a4d, 0x8a07, 0x8aae, 0x8dd4, 0x8dd1, 0x8dd5,
+  0x8dd0, 0x8f71, 0x8f5d, 0x8f5b, 0x8f7a, 0xc4bd, 0x8f7f, 0x8f79,
+  0x8f67, 0x8f9e, 0x8f94, 0x8f64, 0x8f5e, 0x8f81, 0x8f5a, 0x8f57,
+  0x8f7c, 0x8f98, 0x8f66, 0x8f7e, 0x8f82, 0x8f68, 0x8f5f, 0x8f63,
+  0x8f97, 0x11cd, 0x8f53, 0x8f7b, 0x8f7d, 0x8f78, 0x9006, 0x91c0,
+  0x91c2, 0x91c3, 0x92dc, 0x92e6, 0x92ec, 0x92f2, 0x92e8, 0x92eb,
+  0x92ea, 0x92e5, 0x92e0, 0x92d0, 0x92d8, 0x92d5, 0x92d3, 0x92e4,
+  0x92f3, 0x92db, 0x932f, 0x93f9, 0x945d, 0x945b, 0x944c, 0x9458,
+  0x9460, 0x9453, 0x9450, 0x9507, 0x9508, 0x94f4, 0x94f6, 0x9504,
+  0x94fd, 0x9505, 0x9628, 0x9656, 0x9642, 0x965c, 0x963d, 0x962f,
+  0x962b, 0x9658, 0x9661, 0x962c, 0x9651, 0x9650, 0x963c, 0x9636,
+  0x12f6, 0x9660, 0x965b, 0x962e, 0x9640, 0x965f,
+  /* 0x29 */
+  0x9626, 0x962d, 0x965e, 0x963b, 0x97ef, 0x97f3, 0x97ee, 0x97ed,
+  0x985a, 0x9862, 0x985b, 0x985f, 0x985e, 0x9864, 0x98e0, 0x98e1,
+  0x98e5, 0x99a5, 0x999b, 0x999f, 0x999c, 0x137a, 0x99aa, 0x99a4,
+  0x99a3, 0x9a67, 0x9b26, 0x9b1a, 0x13b8, 0x9b1c, 0x9b15, 0x9b1b,
+  0x9b18, 0x9b1e, 0x9b25, 0xc4dc, 0x9c7b, 0x9c75, 0x9c93, 0x9c8f,
+  0x9c7c, 0x9c9b, 0x9c88, 0x9c91, 0x9c7e, 0x1401, 0x9c86, 0x9e5b,
+  0x9e54, 0x9f35, 0x9f40, 0x9f37, 0x9f29, 0x9f26, 0x9f23, 0x9f30,
+  0x9f20, 0x9f28, 0x9f32, 0x9f2a, 0x9f31, 0x9f24, 0x9f41, 0x9f42,
+  0x9f43, 0x9f25, 0x9f38, 0xa01c, 0xa01d, 0xa01e, 0xa0f6, 0xa1a5,
+  0xa189, 0xa19d, 0xa18a, 0xa187, 0xa1ab, 0xa186, 0xa19e, 0xa193,
+  0xa1a1, 0xa188, 0xa1a3, 0xa19f, 0xa1a0, 0xa2ff, 0xa300, 0xa302,
+  0xa2f8, 0xa2f7, 0xa301, 0xa387, 0xa389, 0xa376,
+  /* 0x2a */
+  0xa36e, 0xa377, 0xa382, 0xa385, 0xa383, 0xa384, 0xa457, 0xa44b,
+  0xa456, 0xa45d, 0xa460, 0xa44d, 0xa455, 0xa454, 0xa453, 0xa450,
+  0xa463, 0xa462, 0xa517, 0xa516, 0xa52d, 0xa5d9, 0xa5bf, 0x152f,
+  0xa5b2, 0xa5ac, 0xa5b0, 0xa5cf, 0xa5b8, 0x1531, 0xa5d3, 0xa5b1,
+  0xa5af, 0xa5ce, 0xa5b4, 0xa5b7, 0xa5d5, 0x159c, 0xa938, 0xa928,
+  0xa93f, 0xa940, 0xa941, 0xa933, 0xa92b, 0xa92e, 0xab11, 0xab18,
+  0xab17, 0xab19, 0xab16, 0x15e6, 0xab0d, 0xab26, 0xab79, 0xabd8,
+  0xabf3, 0xabd7, 0xabcc, 0xabcf, 0xabcb, 0xabd1, 0xabce, 0xabd4,
+  0xabd5, 0xabd3, 0xabd6, 0xabcd, 0xabda, 0xabd2, 0xabde, 0xaccc,
+  0xacb8, 0xacb7, 0xacc2, 0xacc3, 0xadfa, 0xadf9, 0xae1f, 0xae1d,
+  0x6282, 0xaea6, 0xae90, 0xae9e, 0xae98, 0xae93, 0xae92, 0xaea5,
+  0xae95, 0xafa9, 0xafa8, 0xafaa, 0xafab, 0xafac,
+  /* 0x2b */
+  0xb01f, 0xb022, 0xb0aa, 0xb096, 0xb091, 0xb0ab, 0xb0a2, 0xb0a4,
+  0xb09d, 0xb097, 0xb07d, 0xb09f, 0xb09c, 0xb099, 0xb0a6, 0xb092,
+  0xb0a7, 0xb1c9, 0xb1c8, 0xb1c7, 0xb1cb, 0xb274, 0xb2c9, 0x1738,
+  0xb2d2, 0xb2db, 0xb2eb, 0xb2e9, 0xb2ef, 0xb2ee, 0xb2f9, 0xb2de,
+  0xb416, 0xb445, 0xb47f, 0xb498, 0xb49f, 0xb486, 0xb490, 0xb49a,
+  0xb49d, 0xb48d, 0xb49c, 0xb4a0, 0xb4a7, 0xb48f, 0xb641, 0xb635,
+  0xb637, 0xb630, 0xb63a, 0xb636, 0xc508, 0xb6ca, 0xb712, 0xb715,
+  0xb722, 0xb713, 0xb718, 0xb721, 0xb810, 0xb820, 0xb82f, 0xb8a5,
+  0xb8a3, 0xb8b6, 0xb8ab, 0xb968, 0xb967, 0xb96f, 0xb977, 0xb964,
+  0xb978, 0x183a, 0xb976, 0xb96e, 0x18b1, 0xbbd0, 0xbbb3, 0xbbcb,
+  0xbbd6, 0xbbb1, 0xbbb4, 0xbbd7, 0xbbc6, 0xbbba, 0xbbd1, 0xbbd2,
+  0xbbb5, 0xbbc4, 0xbbcc, 0xbbbb, 0xbbb2, 0xbe5b,
+  /* 0x2c */
+  0xbe5a, 0xbe59, 0xbe99, 0xbe94, 0xbe96, 0xbe93, 0xbe91, 0xbe8f,
+  0xbe98, 0xbf0c, 0xbf0a, 0xbf0e, 0xbf12, 0xbf11, 0xbf0b, 0xbf9a,
+  0x1947, 0xbfb4, 0x1951, 0xc01c, 0xc020, 0xc021, 0xc0d3, 0xc0d2,
+  0xc138, 0x2afd, 0x6bcf, 0x2c1d, 0x2c92, 0x2c8f, 0x2c8c, 0x2dea,
+  0x2eb9, 0x2f6e, 0x2fa0, 0xaddd, 0x3012, 0x3017, 0x306d, 0x3205,
+  0x31fb, 0x31fd, 0x3206, 0x3200, 0x31ff, 0x31fe, 0x32b6, 0x3305,
+  0x3307, 0x34bc, 0x34bb, 0x358b, 0x3587, 0x97fb, 0x36e7, 0x36e6,
+  0x36e2, 0xa1d3, 0x36d9, 0x36ca, 0x3712, 0x3710, 0x36dc, 0x36d0,
+  0x368b, 0x3713, 0x4d10, 0x36da, 0xc34f, 0x36fd, 0x36e5, 0x36cc,
+  0x3739, 0x36c7, 0x36d8, 0x3a60, 0x3a64, 0x3a86, 0x3a5e, 0x3a66,
+  0x3a5f, 0x3a77, 0x3a82, 0x3a96, 0x3b3e, 0x3b79, 0x3b7a, 0x3c88,
+  0x3c89, 0x3c8c, 0x62e0, 0x3c7b, 0x3c86, 0x3d94,
+  /* 0x2d */
+  0x3d97, 0x3db7, 0x3db5, 0x3db8, 0x3d93, 0x3db2, 0x3db4, 0x3d99,
+  0x3dc3, 0x3d9d, 0x3d9b, 0x3da3, 0x0347, 0x3e9f, 0x3e9e, 0x3ea3,
+  0x3ea0, 0x3ea1, 0x3fc5, 0x3fc6, 0x3fbe, 0x3fc4, 0x3fbf, 0x404c,
+  0x404a, 0x40b1, 0x4115, 0x4117, 0x4110, 0x4118, 0x41e0, 0x41df,
+  0x4227, 0x4343, 0x4348, 0x431d, 0x4350, 0x4358, 0x4347, 0x4354,
+  0x4353, 0x4340, 0x4355, 0x0417, 0x435a, 0x4870, 0x455b, 0x454d,
+  0x4556, 0x454f, 0xc387, 0x4559, 0xc388, 0x4554, 0x4553, 0x4550,
+  0x46b3, 0x476e, 0x04a3, 0x476f, 0x4793, 0x4829, 0x4825, 0x4828,
+  0x486f, 0x54b8, 0xc397, 0x48b3, 0x4979, 0x497e, 0x497c, 0x4983,
+  0xc3ac, 0x4b00, 0x4b34, 0x4b65, 0x4b36, 0x4ba7, 0x4b59, 0x4b58,
+  0x4b31, 0x4b62, 0x4b38, 0x4b73, 0x4b3e, 0x4b55, 0x4b54, 0x4b95,
+  0xc3ad, 0x4ba5, 0x4b94, 0x4b9a, 0x4b9b, 0x4b99,
+  /* 0x2e */
+  0x4b9f, 0x4b53, 0x4d12, 0x4d0a, 0x4d09, 0x4d0c, 0x4d0b, 0x4d0e,
+  0x4d0d, 0x4d08, 0x4f38, 0x4f3a, 0x4f37, 0x4f3d, 0x4f2d, 0x4f82,
+  0x4f95, 0x4f87, 0x4f9d, 0x4fb5, 0x4f81, 0x4fc7, 0x4f9b, 0x4f98,
+  0x4f94, 0x4f86, 0x4f90, 0x4f34, 0x4f8e, 0x4f85, 0x4fa6, 0x4f96,
+  0x51ea, 0x51df, 0x54bd, 0x51f7, 0x51eb, 0x51e0, 0x51e8, 0x51e1,
+  0x51e9, 0x51ee, 0x51e5, 0x51ec, 0x5263, 0x52c6, 0x52c2, 0x52c1,
+  0x52c0, 0x52c3, 0x5318, 0x54ae, 0x54a3, 0x54c5, 0x54a0, 0x54b4,
+  0x54a5, 0x071e, 0x54a4, 0x54a8, 0x54a6, 0x57a8, 0x578d, 0x5782,
+  0x579e, 0x5789, 0x5783, 0x5791, 0x57a6, 0x579a, 0x5790, 0x5785,
+  0x577d, 0xc3ec, 0x579b, 0x57a5, 0x57f0, 0x5796, 0x5788, 0x57d6,
+  0x57d8, 0x5786, 0x57a4, 0x5797, 0x5a1c, 0x5a19, 0x5a9e, 0x5a9f,
+  0x5a9d, 0x5a9c, 0x5b5d, 0x5b5e, 0x5b73, 0x5b63,
+  /* 0x2f */
+  0x5bbe, 0x5bc1, 0x5bbc, 0x5bbf, 0x5bbb, 0x5bbd, 0x5c13, 0x5c14,
+  0x5cf8, 0x5cfa, 0x5d06, 0x5cfe, 0x5d51, 0x600b, 0x5ff1, 0x5fa9,
+  0x5fd5, 0x5fdc, 0x5fcb, 0x5ff2, 0x605f, 0x5fdb, 0x5fd6, 0x5fd9,
+  0x5fd1, 0x5fcf, 0x5fd8, 0x5fe0, 0x5fd4, 0x5ff3, 0x6005, 0x5fce,
+  0x5ff4, 0xc412, 0x5fda, 0x600e, 0x6006, 0x5fd7, 0x5fcd, 0x6007,
+  0x5fe1, 0x6008, 0x62be, 0x62ef, 0x62d9, 0x62da, 0x1fd7, 0x62a0,
+  0x62df, 0x629e, 0x62bf, 0x62af, 0x62a7, 0x62aa, 0x62f4, 0x62ae,
+  0x62b5, 0x62b8, 0x62db, 0x62c0, 0x62b7, 0x62a2, 0x62dd, 0x62a1,
+  0x62a5, 0x62b4, 0x62a6, 0x62ab, 0x62ac, 0x629f, 0x62b1, 0x62fc,
+  0x642e, 0x6430, 0x6499, 0x64f8, 0x64f6, 0x65f4, 0x65eb, 0x65e1,
+  0x65e4, 0x6775, 0x6769, 0x0a9a, 0x6799, 0x679e, 0x6794, 0x6793,
+  0x6791, 0x6919, 0x6917, 0x6949, 0x6947, 0x6948,
+  /* 0x30 */
+  0x6952, 0x6940, 0x6963, 0x6946, 0x695f, 0x6a0e, 0x6a85, 0x6a87,
+  0x6acb, 0x6acc, 0x6ac9, 0x6bcb, 0x41e7, 0x6c20, 0x6d5f, 0x6d60,
+  0x6d6a, 0x6d76, 0x6d73, 0x6d71, 0x6d66, 0x0bc2, 0x6d6b, 0x6d79,
+  0x6d7b, 0x6e3c, 0x6e9e, 0x6e9c, 0x6f1c, 0x6f1e, 0x6f21, 0x6f96,
+  0x6fa1, 0x6fb6, 0x6fa0, 0x6f94, 0x6f97, 0x7081, 0x7086, 0x70c0,
+  0x708a, 0xc44b, 0x7085, 0x7095, 0x7049, 0x7082, 0x7084, 0x4b78,
+  0x7090, 0x70b1, 0x71fe, 0x71fb, 0x7350, 0x7356, 0x735a, 0x734c,
+  0x0cdc, 0x7357, 0x74e1, 0x74d9, 0x74db, 0x74f4, 0x7545, 0x7547,
+  0x7674, 0x766b, 0x7668, 0x7669, 0x7679, 0xc45b, 0x7680, 0x7681,
+  0x7661, 0x7670, 0x766f, 0x7673, 0x765d, 0x77fa, 0x0db3, 0x77f3,
+  0x780a, 0x7817, 0xc45f, 0x78b0, 0x7a3e, 0x7a46, 0x7a4f, 0x7a44,
+  0x7a69, 0x7a33, 0x7a2f, 0x7a4e, 0x7a3a, 0x7a2b,
+  /* 0x31 */
+  0x7aa9, 0x7a50, 0x7a45, 0x7a37, 0x7a25, 0x7a2c, 0x7a3f, 0x7a34,
+  0x7a29, 0x7a1e, 0x7a3d, 0x7ced, 0xc466, 0x7cf3, 0x7cea, 0x7ceb,
+  0x7ecc, 0x7ece, 0x7ed0, 0x7ee3, 0x7ee0, 0x7ed1, 0x7edc, 0x7edd,
+  0x7ef0, 0x7edb, 0x7ee5, 0x7ef1, 0x7ec9, 0x7ee8, 0x7ee7, 0x7ec8,
+  0x7ede, 0x7ecd, 0x7ec5, 0x7ec6, 0x7ee4, 0x7ec3, 0x80fb, 0x80fc,
+  0x80fe, 0x8103, 0x8100, 0x80fd, 0x8105, 0x8113, 0x81a7, 0x81b4,
+  0x8270, 0x8274, 0x8271, 0x8275, 0x827d, 0x8273, 0x82c4, 0x82c3,
+  0x82de, 0x82dd, 0x8311, 0x830f, 0x8310, 0x83c3, 0x83c2, 0x83ca,
+  0x83c1, 0x8423, 0x85b1, 0x8624, 0x8611, 0x8625, 0x860a, 0x861f,
+  0x8620, 0x8614, 0x8628, 0x8603, 0x8612, 0x860b, 0x8617, 0x4d11,
+  0x8749, 0x8789, 0x8790, 0x878f, 0x8796, 0x8795, 0x8793, 0x87ed,
+  0x87f0, 0x62de, 0x8885, 0x8877, 0x887a, 0x8884,
+  /* 0x32 */
+  0x8879, 0x887d, 0x887b, 0x88ed, 0x88ec, 0x89f6, 0x899b, 0x8a9d,
+  0x8b11, 0x8ac4, 0x8ac8, 0x8adf, 0x8abf, 0x8ab3, 0x8aba, 0x8b10,
+  0x8b06, 0x8a88, 0x8a9a, 0x8ae0, 0x8acc, 0x8ab5, 0x8ae1, 0x8abc,
+  0x8ac6, 0x8b0b, 0x8aa4, 0x8a95, 0x8aa3, 0x8ae2, 0x8acd, 0x8ae3,
+  0x8aab, 0x8acb, 0x8a8f, 0xc4ab, 0x8aa9, 0x8b24, 0x8ae4, 0x8b12,
+  0x8ae5, 0x8b67, 0x8aaa, 0x8aa0, 0x8ae6, 0x8ac1, 0x8ae7, 0x8b0d,
+  0x8a86, 0x8ab0, 0x8a8b, 0x8ae8, 0x8ac9, 0x8b19, 0x8ac0, 0x8b0c,
+  0x8ae9, 0x8aea, 0x8ded, 0x8de3, 0x8de4, 0x8de8, 0x8dd2, 0x8de2,
+  0x2466, 0x8fcf, 0x8fd1, 0x8fc3, 0x8fc9, 0x8fea, 0x8fb4, 0x8fdc,
+  0x8fbd, 0x8fe6, 0x8fc8, 0x8fec, 0x8fb2, 0x8fa9, 0x8fd3, 0x8fc0,
+  0x8fe9, 0x8fd5, 0x11d9, 0x8fc5, 0x11dd, 0x8fcb, 0x8fd0, 0x8fd2,
+  0x8fe4, 0x8fe8, 0x8fcd, 0x8fb6, 0x8faa, 0x8fd4,
+  /* 0x33 */
+  0xa049, 0x8fc1, 0x8fdd, 0x8fce, 0x91c9, 0x91ca, 0x92fd, 0x92d9,
+  0x92ff, 0x9304, 0x92fa, 0x9306, 0x9315, 0x9311, 0x9307, 0x930b,
+  0x93fc, 0x93fd, 0x946d, 0x9465, 0x9514, 0x9513, 0x950c, 0x950b,
+  0x9518, 0x9522, 0x967d, 0x966f, 0x9675, 0x967b, 0x9680, 0x967f,
+  0x9696, 0x966d, 0x966b, 0x9686, 0x9673, 0x9662, 0x9677, 0x9681,
+  0x9669, 0x9682, 0x9697, 0x9684, 0x12fc, 0x9678, 0xc4d0, 0x967a,
+  0x966a, 0x9665, 0x967e, 0x9694, 0x97c2, 0x97c1, 0x97f9, 0x9871,
+  0x986b, 0x986d, 0x986f, 0x986e, 0x98f2, 0x98e8, 0x98ef, 0x98e9,
+  0x98ea, 0x98ed, 0x98f3, 0x98e6, 0x99c9, 0x99b4, 0x99b3, 0x99b9,
+  0x99ca, 0x99b1, 0x99b6, 0x99c7, 0x99c4, 0x99b7, 0x9a6f, 0x9b33,
+  0x9b32, 0x9b1f, 0xc4d9, 0x9b2b, 0x9b30, 0x9b36, 0x9b42, 0x9b41,
+  0xc4d8, 0x9ca5, 0x9cab, 0x9ca9, 0x9cb3, 0x9ca7,
+  /* 0x34 */
+  0x9ca0, 0x9cd2, 0x9ca8, 0x9cb6, 0x9cac, 0x9cae, 0x9ce6, 0x9e65,
+  0x9f47, 0x9f63, 0x9f4d, 0x9f5f, 0x9f4b, 0x9f60, 0x9f49, 0x9f53,
+  0xc4df, 0x263a, 0x9f57, 0x9f4e, 0x9f52, 0x9f54, 0xa020, 0xa022,
+  0xa1c1, 0xa1d7, 0xa1d5, 0xa1c4, 0xa1d0, 0xa1bb, 0xa1e2, 0xa1cb,
+  0xa1b8, 0xa1bf, 0xa1d8, 0xa1c0, 0xa1ba, 0xa1b4, 0xa1bc, 0xa1d4,
+  0xa1ed, 0xa1c2, 0xa1d9, 0xa1cc, 0xa32f, 0xa323, 0xa396, 0xa38d,
+  0xa39e, 0xa399, 0xa483, 0x1507, 0xa46a, 0xa469, 0xa475, 0xa46c,
+  0xa480, 0xa46e, 0xa481, 0xa477, 0xa476, 0xa473, 0xa470, 0xa484,
+  0xa519, 0xa5f2, 0x273d, 0xa5ec, 0xa5eb, 0xa5f6, 0xa5ef, 0xa5f4,
+  0xa5ee, 0xa5f3, 0xa5ed, 0xa89b, 0xa898, 0xa894, 0x3a7a, 0xa89a,
+  0xc4f0, 0xa94c, 0x15a8, 0xa957, 0xa951, 0xa962, 0xa952, 0xa95c,
+  0xa953, 0xc4ef, 0xaa85, 0xab2d, 0xab3e, 0xab30,
+  /* 0x35 */
+  0xab7d, 0xabe6, 0xabf6, 0xabe4, 0xabe9, 0xabec, 0xabf2, 0xabe8,
+  0xabe3, 0xabeb, 0xabf0, 0xabea, 0xabe7, 0xabfd, 0xabe5, 0xabee,
+  0xabf5, 0xabf9, 0xabf1, 0xabf4, 0xc4f4, 0xac11, 0xacde, 0xacd8,
+  0xacdd, 0xacdb, 0xacd3, 0xace1, 0xadde, 0xadfc, 0xae28, 0xaeb7,
+  0xaeb8, 0xaec7, 0xaeb2, 0xaea9, 0xaeb9, 0xaebc, 0xaeb3, 0xaed1,
+  0xafb0, 0xafb1, 0xafb6, 0xb004, 0xb02c, 0xb0c1, 0xb09e, 0xb0ba,
+  0x16ca, 0xb0d1, 0xb0d3, 0xb0d4, 0xb0d5, 0xb0c5, 0xb0b6, 0xb0b2,
+  0xb0b5, 0xb0c3, 0xb0b9, 0xb0c6, 0xb1d6, 0xb1e0, 0xb1db, 0xb1d7,
+  0xb1dd, 0xb315, 0xb30c, 0xb30f, 0xb30e, 0xb2fe, 0xb304, 0xb30b,
+  0xb302, 0xb2ff, 0xb308, 0xb310, 0xb317, 0xb313, 0xb306, 0xb309,
+  0xb424, 0xb426, 0xb425, 0xb448, 0xb4b5, 0xb4d2, 0xb4d5, 0xb4c4,
+  0xb4af, 0xb4ad, 0xb4c1, 0xb4c0, 0xb4cc, 0xb4cd,
+  /* 0x36 */
+  0xb4c3, 0xb4c8, 0xb4c5, 0xb4ba, 0xb4d0, 0xb4c2, 0xb4ce, 0x178d,
+  0xb643, 0xb642, 0xb640, 0xb631, 0xb6cf, 0xb6ce, 0xb730, 0xb734,
+  0xb732, 0xb743, 0xb73c, 0xb811, 0xb835, 0xb834, 0xb837, 0xb831,
+  0xb8bf, 0xb8bc, 0xb8c2, 0xb8c9, 0xb983, 0xb98b, 0xb9a0, 0xb98d,
+  0xb98c, 0xb99a, 0xb98a, 0xb991, 0xbbf1, 0xbc0f, 0xbc01, 0xbc07,
+  0xbc0c, 0x18c0, 0xbbdc, 0xbbee, 0xbbf7, 0xbbf2, 0xbbf8, 0xbbeb,
+  0x18ca, 0xbbe6, 0xbbed, 0xbbe9, 0xbc08, 0xbc00, 0xbbe5, 0xbbfc,
+  0xbe61, 0xbe5e, 0xbe5f, 0x1925, 0xbe9b, 0xbf16, 0xbf15, 0xbf20,
+  0xbf14, 0xbf1a, 0xbf17, 0xbf9c, 0x194a, 0xbff1, 0x1953, 0xbff0,
+  0xc028, 0xc024, 0xc02a, 0xc02b, 0xc0d5, 0xc104, 0xc105, 0xc191,
+  0xc192, 0xc2a6, 0x2c09, 0x2e22, 0x2e1a, 0x2e0e, 0x2e1b, 0x2e08,
+  0x6fb3, 0xc31c, 0x309d, 0x3212, 0x321e, 0x32bb,
+  /* 0x37 */
+  0x32bf, 0x32bc, 0x3308, 0x3309, 0x3363, 0x33c8, 0x5828, 0x358e,
+  0x358d, 0x3743, 0x374d, 0x376d, 0x3742, 0x3752, 0x3751, 0x3769,
+  0x3750, 0x3756, 0x376c, 0x3744, 0x3745, 0x376b, 0x0205, 0x3768,
+  0x3757, 0x392e, 0x3931, 0x392d, 0x3a8b, 0x3ab2, 0x3a8d, 0x3aa3,
+  0x3aa4, 0x3a90, 0x3a89, 0x3a8e, 0x3a92, 0x3b7b, 0x3c90, 0x3c8f,
+  0x3de9, 0x3dcd, 0x3dc5, 0x3dd0, 0x3dc9, 0x3dd1, 0x3dc7, 0x3dd2,
+  0x3d5f, 0x3de1, 0x3dcc, 0x3dc6, 0x3de4, 0x3ea9, 0x3fd3, 0x3fda,
+  0x3fd2, 0x3fdb, 0x404d, 0x404e, 0x411c, 0x41e8, 0x436c, 0x435f,
+  0x4366, 0x4364, 0x4378, 0x4365, 0x436d, 0x4361, 0x437a, 0x4407,
+  0x4566, 0x4568, 0x4562, 0x46d3, 0x46d4, 0x46d1, 0x46dc, 0x4773,
+  0x4772, 0x482d, 0x482c, 0x482f, 0x4872, 0x48b4, 0x4989, 0x4bcd,
+  0x4ba6, 0x4ba2, 0x4ba0, 0x4b46, 0x4ba1, 0x8657,
+  /* 0x38 */
+  0x4ba3, 0x4bb1, 0x4bdb, 0x4bf6, 0x4bdc, 0x4bd6, 0x4d13, 0x4f9c,
+  0x4f97, 0x4fd8, 0x4fe4, 0x4fd4, 0x4fe5, 0x4fdb, 0x4fd0, 0x4fda,
+  0x4fcc, 0x4fdc, 0x4fed, 0x4fd3, 0x4fd1, 0x4fce, 0x4fd9, 0x4fdd,
+  0xc3c6, 0x50e6, 0x50e5, 0x50e9, 0x51ff, 0x51fe, 0x520e, 0x528c,
+  0x52ca, 0x52cb, 0x531a, 0x54d7, 0x54cf, 0x54d0, 0x54c9, 0x54cc,
+  0x54d3, 0x55a4, 0x55a3, 0x5781, 0x5826, 0x57f3, 0x5827, 0x57f2,
+  0x57ff, 0x57f5, 0x57fc, 0x580e, 0x07f0, 0x57f6, 0x5800, 0x5823,
+  0x5805, 0x5825, 0x5808, 0x5850, 0x5a25, 0x5a20, 0x5a23, 0x5a21,
+  0x5aa1, 0x5b69, 0x5b6c, 0x5b68, 0x5b6b, 0x5bcc, 0x5bcd, 0x5d10,
+  0x5d0d, 0x5d0a, 0x5d16, 0x5d14, 0x5d52, 0x6028, 0x602e, 0x602c,
+  0x604d, 0x6049, 0x6031, 0x6030, 0x6033, 0x602d, 0x6036, 0x603e,
+  0x602f, 0x6027, 0x6034, 0x604c, 0x62fe, 0x6312,
+  /* 0x39 */
+  0x631f, 0x6317, 0x62f5, 0x6315, 0x62f7, 0x0a02, 0x437d, 0x62fa,
+  0x62f9, 0x634b, 0x649c, 0x649d, 0x0a23, 0x65f0, 0x65f6, 0x65ef,
+  0x679d, 0x679a, 0x67a7, 0x67af, 0x67aa, 0x6964, 0x6986, 0x6975,
+  0x6970, 0x6984, 0x696b, 0x6985, 0x696c, 0x6a17, 0x6a94, 0x6a93,
+  0x6bd2, 0x6bd7, 0x6bd4, 0x6da6, 0x6da7, 0x6d9c, 0x6d8b, 0x6d8d,
+  0x6d98, 0x6db9, 0x6d9b, 0x6d9d, 0x6d99, 0x6da8, 0x6d91, 0x6d87,
+  0x6d9a, 0x6ea6, 0x6f1f, 0x6fa7, 0x6fb1, 0x6fb2, 0x6fb7, 0x70d0,
+  0x70b3, 0x70b5, 0x70c4, 0x70c3, 0x70bc, 0x70b2, 0x70ba, 0x70bb,
+  0x70c2, 0x70cd, 0x70be, 0x70b7, 0x718f, 0x7203, 0x7204, 0x7371,
+  0x7377, 0x7374, 0x738b, 0x737a, 0xc451, 0x738c, 0x7373, 0x74ff,
+  0x74fb, 0x74fd, 0x74f0, 0x74f3, 0x74fc, 0x74f2, 0x7692, 0x769e,
+  0x76ae, 0x7696, 0x7814, 0x7812, 0x7813, 0x7816,
+  /* 0x3a */
+  0x780f, 0x78b6, 0x78bd, 0x7a8c, 0x7aae, 0x7aac, 0x7aab, 0x7a99,
+  0x7a92, 0x7abb, 0x7a9e, 0x7a7e, 0x7aaf, 0x7abc, 0x7a98, 0x7d01,
+  0x7d09, 0x7d06, 0xc467, 0x7d07, 0x7d08, 0x7ecf, 0x7f0e, 0x7f32,
+  0x0f15, 0x7f12, 0x7f16, 0x7f17, 0x7f1b, 0x7f15, 0x7f31, 0x7f18,
+  0x7f1a, 0x7f10, 0x7f0a, 0x7f09, 0x804f, 0xc473, 0x810f, 0x8110,
+  0xc475, 0x8128, 0x8111, 0x8116, 0x8117, 0x8102, 0x81bb, 0x81ba,
+  0x81c3, 0x81bc, 0x828a, 0x8284, 0x8286, 0x82e0, 0x8317, 0x8318,
+  0x831e, 0x8315, 0x83d3, 0x83da, 0x83d9, 0x85e6, 0x85f4, 0x85e1,
+  0x8669, 0x8640, 0x8658, 0x866c, 0x864d, 0x8721, 0x8799, 0x87f1,
+  0x5f68, 0x8886, 0x8b5b, 0x8b5c, 0x8b77, 0x8b2c, 0xc4ad, 0x8b58,
+  0x8b64, 0x8b61, 0x8b48, 0x8b97, 0x8b59, 0x8b29, 0x8b62, 0x8b2e,
+  0x8b68, 0x8b90, 0x8b3a, 0x8b3d, 0x8b5e, 0x8b46,
+  /* 0x3b */
+  0x8b69, 0x8b65, 0x8b3e, 0x8b49, 0x8b56, 0x8be1, 0x8b78, 0x8b79,
+  0x8b66, 0x8b4a, 0x8b35, 0x8b7a, 0x8b92, 0x8b60, 0x8b36, 0x8b51,
+  0x8b42, 0x115d, 0x8b3f, 0x8b7b, 0x8b5d, 0x8b94, 0x8b6a, 0xc4b5,
+  0x8df2, 0x8fbb, 0x901b, 0x901a, 0x9033, 0x9017, 0x900a, 0x9015,
+  0x9012, 0x9001, 0x902d, 0x8ffd, 0x9023, 0x9005, 0x9011, 0x9000,
+  0x901c, 0x9035, 0x902e, 0x9036, 0x34bf, 0x902f, 0x900c, 0x9009,
+  0x9031, 0x8ffc, 0x900f, 0x9018, 0x9002, 0x9200, 0x931f, 0x9337,
+  0x125a, 0x9338, 0x932b, 0x932e, 0x9321, 0x9330, 0x9329, 0x9331,
+  0xc4c9, 0x9301, 0x932c, 0x9322, 0x93ff, 0x9477, 0x9467, 0x947f,
+  0x947d, 0x947b, 0x947e, 0x951e, 0x951c, 0x9521, 0x9526, 0x9527,
+  0x9529, 0x952c, 0x951d, 0x952b, 0x96bf, 0x96a4, 0x96aa, 0x96ae,
+  0x969f, 0x96d0, 0x96b1, 0x96ad, 0x969b, 0x96b2,
+  /* 0x3c */
+  0x96a9, 0x96b3, 0x96b4, 0x96ba, 0x96a5, 0x96b7, 0x96ac, 0x96cb,
+  0x96cf, 0x97c6, 0x9801, 0x97ff, 0x97fd, 0x9877, 0x9878, 0x9876,
+  0x98f7, 0x99cc, 0x1385, 0x99d4, 0x99d7, 0x99d5, 0x99d6, 0x99d3,
+  0x9b5d, 0x9b55, 0x9ce0, 0x9d48, 0x9cee, 0x9cdb, 0x9ce7, 0x9cd6,
+  0x9ce5, 0x9ce1, 0x9cdd, 0x9ce2, 0x9e70, 0x9e66, 0x9e6f, 0x9e6e,
+  0x9f81, 0x9f69, 0x9f6e, 0x9f6d, 0x9f6c, 0x9f84, 0x9f85, 0x9f71,
+  0x9f73, 0x9f6a, 0x9f6f, 0x9f7b, 0xa16a, 0xa17c, 0xa17d, 0xa181,
+  0xa1fa, 0xa205, 0xa1eb, 0xa1fb, 0xa1e9, 0xa1ef, 0xa1fc, 0xa1e7,
+  0xc4e1, 0xa1ee, 0xa1fd, 0xa332, 0xa3a7, 0xa3b5, 0xa3b1, 0xa3b9,
+  0xa3a8, 0xa3b3, 0xc4e6, 0xa48a, 0xa491, 0xa48d, 0xa499, 0x150b,
+  0xa49a, 0xa49b, 0xa492, 0xa48f, 0xa4ab, 0x6bdb, 0x1539, 0xa675,
+  0xa631, 0xa638, 0x1537, 0xa635, 0xa669, 0xa63b,
+  /* 0x3d */
+  0xa63d, 0xa66c, 0xa679, 0xa63c, 0xa63e, 0xa897, 0xa8a5, 0xa8a2,
+  0xa89d, 0xa8a1, 0xa968, 0xa96f, 0xa96d, 0xa972, 0xa975, 0xa977,
+  0xa979, 0xaab5, 0xaaea, 0xaaab, 0xab43, 0xab41, 0xab42, 0xac09,
+  0xac08, 0xac06, 0xac01, 0xac03, 0xac00, 0xac04, 0xac0a, 0xac0e,
+  0xac0d, 0xac07, 0xac0f, 0xac14, 0xac02, 0xac15, 0xac0c, 0xac10,
+  0xac05, 0xacfd, 0xacff, 0xad04, 0xad00, 0xad09, 0xae2b, 0xc4f7,
+  0xae31, 0xaedb, 0xaec5, 0xaed3, 0xaece, 0x166b, 0xaec9, 0xaebf,
+  0xaecb, 0xaec0, 0xaed0, 0xaed4, 0xafc1, 0xafb9, 0xafbb, 0xafc3,
+  0xafc9, 0xb007, 0xb02d, 0xb0f8, 0xb0e1, 0xb0fa, 0xb0ef, 0xb0fd,
+  0x16cd, 0xb0eb, 0xb0f1, 0xb0ed, 0xb0fe, 0xb1f8, 0xb203, 0xb1ee,
+  0xb1e8, 0xb201, 0xb2ec, 0xb322, 0xb314, 0xb334, 0xb32f, 0xb339,
+  0xb341, 0xb33c, 0xb349, 0xb358, 0xb33a, 0xb342,
+  /* 0x3e */
+  0xb33f, 0xb422, 0xb423, 0xb44a, 0xb4dc, 0xb4d9, 0xb4db, 0xb4e2,
+  0xc507, 0xb4df, 0xb4e0, 0xb4d7, 0xb64f, 0xb646, 0xb653, 0xb655,
+  0xb64e, 0xb64a, 0xb64c, 0xb663, 0xb751, 0xb753, 0xb758, 0xb74d,
+  0xb75a, 0xb749, 0xb75d, 0xb812, 0xb83c, 0xb8d1, 0xb8df, 0xb8d6,
+  0xb8d8, 0xb8e0, 0xb8d9, 0xb9b1, 0xb9ac, 0xb9aa, 0xb9ee, 0xb9bd,
+  0x184d, 0xb9c3, 0xb9a8, 0xb9ae, 0xb9ab, 0xbc1d, 0xbc27, 0xbc38,
+  0xbc12, 0xbc48, 0xbc2b, 0xbc16, 0xbc19, 0xbc3d, 0xbc23, 0xbc2a,
+  0xbe64, 0xbead, 0xbeac, 0xc514, 0xbeb1, 0xbeaf, 0xbf2c, 0xbf24,
+  0xbf25, 0xbf28, 0xbff9, 0xbff7, 0xbffd, 0xbffe, 0xc039, 0xc033,
+  0xc0d7, 0xc0d8, 0xc0e4, 0x3aa1, 0xc10e, 0xc13b, 0xc144, 0xc142,
+  0xc194, 0xc193, 0xc1d5, 0xc2a7, 0x2e31, 0x2e23, 0x2e28, 0x2e27,
+  0x2ec6, 0x2fa3, 0x3021, 0x321b, 0x0110, 0x32c1,
+  /* 0x3f */
+  0x32c3, 0x332a, 0x3369, 0x3427, 0x37b6, 0x37a7, 0x37a4, 0x37a6,
+  0x3790, 0x379e, 0x3794, 0x37a8, 0x37a5, 0x37a2, 0x3791, 0x027b,
+  0x3abc, 0x3abd, 0x3ab4, 0x3ab0, 0x3ae4, 0x3b45, 0x3b4b, 0x3b7e,
+  0x3b7f, 0x3b7d, 0x3bc3, 0x3dfc, 0x3df7, 0x3df0, 0x3ded, 0x3df1,
+  0x3df8, 0x3fe9, 0x41eb, 0x041d, 0x4390, 0x438d, 0x4386, 0x4391,
+  0x438a, 0x4408, 0x4450, 0x46ea, 0x46e6, 0x46e2, 0x46e7, 0x46ed,
+  0x46e1, 0x4834, 0x4876, 0x4875, 0x4873, 0x48b5, 0x4990, 0x4992,
+  0x4be1, 0x4bdf, 0x4bd5, 0x4bf2, 0x4bfe, 0x4c13, 0x4c2e, 0x4d19,
+  0x5008, 0x1df5, 0x5005, 0x5009, 0x5006, 0x5003, 0x4ffd, 0x4ffc,
+  0x5002, 0x5042, 0x521a, 0x5211, 0x5215, 0x5216, 0x52cc, 0x52cf,
+  0x52d0, 0x5322, 0x531e, 0x5321, 0x54e5, 0x0727, 0x5554, 0x54ef,
+  0x5553, 0x5551, 0x55ad, 0x5867, 0x5868, 0x58a4,
+  /* 0x40 */
+  0x5877, 0x5889, 0x5844, 0x588b, 0x5879, 0x585b, 0x5843, 0x5857,
+  0x584a, 0x587c, 0x5846, 0x587b, 0x5856, 0x5aa8, 0x5b76, 0x5b72,
+  0x5bd6, 0x5bd8, 0x5bd1, 0x5d22, 0x5d20, 0x5d23, 0x5d1e, 0x5d6e,
+  0x60a3, 0x6077, 0x60a6, 0x606d, 0x60a2, 0x607c, 0x6084, 0x6068,
+  0x6074, 0x6086, 0x60a5, 0x607b, 0x607a, 0x6069, 0x6072, 0x6076,
+  0x634a, 0x6337, 0x632a, 0x632d, 0x6346, 0x6328, 0x6326, 0x6342,
+  0x632c, 0x6338, 0x632b, 0x6333, 0x6345, 0x6439, 0x65f9, 0x65fa,
+  0x67b8, 0x67b7, 0x67bb, 0x67b9, 0x67b4, 0x696f, 0x6987, 0x698f,
+  0x69a2, 0x69a3, 0xc431, 0x6a9b, 0x6a9d, 0x6ace, 0x0bcf, 0x6dbd,
+  0x6dbf, 0x6d92, 0x0bcd, 0x6def, 0x6dc9, 0x6ea4, 0x6ea8, 0x6eaa,
+  0x6f28, 0x6f24, 0x6f25, 0x6f26, 0x6fa9, 0x6fba, 0x6fbe, 0x6fbc,
+  0x6fc0, 0x70f0, 0x70df, 0x70e0, 0x70ed, 0x70db,
+  /* 0x41 */
+  0x70fb, 0x70b9, 0x70da, 0x70eb, 0x70ec, 0x739a, 0x739f, 0x739b,
+  0x7397, 0x73a1, 0x750f, 0x7505, 0x7548, 0x0d82, 0x76bc, 0x76ba,
+  0x78bf, 0x7b01, 0x7ae8, 0x7aef, 0x7ae4, 0x7ae6, 0x7b02, 0x7aeb,
+  0x7ae0, 0x7aed, 0x7ad9, 0xc464, 0x7b14, 0x7aee, 0x0e52, 0x7b13,
+  0x7af9, 0x7af8, 0x7d25, 0xc469, 0x7d19, 0x7d20, 0x7d43, 0x7d3f,
+  0x7f45, 0x7f4c, 0x7f49, 0x7f4f, 0x7f41, 0x7f3e, 0x7f4d, 0x7f52,
+  0x7f4a, 0x7f4e, 0x7f73, 0x7f42, 0x7f51, 0x7f55, 0x7f50, 0x7f6c,
+  0x2afd, 0x7f6a, 0x7f53, 0x7f68, 0x8055, 0x8056, 0x811c, 0x811d,
+  0x2280, 0x811e, 0x8123, 0x811f, 0x81e1, 0x81cd, 0x81cb, 0x81cc,
+  0x81c8, 0x81c9, 0x829b, 0x8294, 0x8292, 0x8296, 0x8293, 0x8295,
+  0x828f, 0x831d, 0x8322, 0x8321, 0x83e9, 0x83ef, 0x83e0, 0x83e6,
+  0x83e4, 0x8629, 0x862c, 0x8676, 0x8683, 0x8678,
+  /* 0x42 */
+  0x863c, 0x6343, 0x867a, 0x1051, 0x86f2, 0x879e, 0x879b, 0x879a,
+  0x87f6, 0x87f5, 0x88a5, 0x8893, 0x88a4, 0x8a82, 0x8ac7, 0x8bb7,
+  0x8c1d, 0x8be2, 0x8bd7, 0x8be3, 0x8be4, 0x8bbc, 0x8bd3, 0x115a,
+  0x8b5a, 0x8bd2, 0x8b2d, 0xc4af, 0x8bc4, 0x8bd0, 0x8be5, 0x8c05,
+  0x8c07, 0x8be6, 0x8c1b, 0x8be7, 0x8bd8, 0x8bbe, 0x8c17, 0x8bb4,
+  0x8bd9, 0x8be8, 0x8bad, 0x8baf, 0x8bc8, 0x8be9, 0x8bea, 0x8dfe,
+  0x8dfb, 0x8e00, 0x9072, 0x9070, 0x9046, 0x9059, 0x905e, 0x9048,
+  0x904f, 0x9071, 0x9060, 0x905f, 0x906e, 0x9073, 0xc4c0, 0xc4bf,
+  0x9047, 0x906d, 0x906f, 0x9081, 0x906c, 0x9078, 0x9083, 0x9049,
+  0x9068, 0x9074, 0x9063, 0x906a, 0x8685, 0x9065, 0x9062, 0x90c8,
+  0x91d0, 0x91d4, 0x91d1, 0x9203, 0x9342, 0x9363, 0x9356, 0x935b,
+  0x9355, 0x9350, 0x932d, 0x9344, 0x9348, 0x9345,
+  /* 0x43 */
+  0x9382, 0x1265, 0x9362, 0x9485, 0x948d, 0x9536, 0x952f, 0x9531,
+  0x9537, 0x96a7, 0x96d9, 0x96f0, 0x96f2, 0x96fd, 0x96e8, 0x96eb,
+  0x96ee, 0x96e0, 0x96e9, 0x96ed, 0x96d6, 0x96f8, 0x96d4, 0x96df,
+  0x96e7, 0x96d8, 0x96e3, 0x96ef, 0x970f, 0x97ca, 0x3b46, 0x9805,
+  0x980c, 0x980d, 0x987f, 0x9880, 0x9881, 0x9901, 0x9903, 0x99f2,
+  0x99e2, 0x99e3, 0x99de, 0x99e9, 0x99e8, 0x99e0, 0x9a01, 0x99f5,
+  0x99e4, 0x2501, 0x9a77, 0x9b74, 0x9b6f, 0x9b62, 0x9b61, 0x9b6d,
+  0x9b73, 0x9b6a, 0x9b69, 0x9d12, 0x9d2d, 0x9d14, 0x9d0f, 0x9d29,
+  0x9d16, 0x9d03, 0x9d46, 0x9d5c, 0x9d11, 0x9d06, 0x9cdc, 0x9d2b,
+  0x9d2a, 0x9d2c, 0x9d27, 0x9e7a, 0x9f9c, 0x9f99, 0x9f95, 0x9f8b,
+  0x9f98, 0x9f96, 0xa032, 0xa1a4, 0xa1aa, 0xa21b, 0x14af, 0xa20d,
+  0xa21c, 0xa20a, 0xa220, 0xa208, 0xa21a, 0xa213,
+  /* 0x44 */
+  0xa211, 0xa35d, 0xa35f, 0xa35e, 0xa360, 0xa3bb, 0xa3bc, 0xa3c1,
+  0xa3c0, 0xa3c8, 0xa3ce, 0xa4a7, 0xa4b2, 0xa4b6, 0xa4a5, 0xa4ba,
+  0xa4b5, 0xa4ad, 0xa4a4, 0xa4d3, 0xa4b0, 0xa4b1, 0xa51d, 0xa68d,
+  0x1541, 0xa691, 0xa6b6, 0xa6b7, 0xa6bd, 0xa6bc, 0xa696, 0xa694,
+  0xa6a0, 0xa8a8, 0xa8a6, 0xa984, 0xa996, 0xa988, 0xa99a, 0xaad1,
+  0xaacf, 0xab50, 0xab51, 0xab4e, 0xab80, 0xab81, 0xac1b, 0xac17,
+  0xac20, 0xac19, 0xac1a, 0xac21, 0xac1e, 0xac18, 0xac1d, 0x1629,
+  0xad2d, 0xad24, 0xad27, 0xad2e, 0xad25, 0xad1c, 0xad19, 0x162a,
+  0xad23, 0xad1f, 0xad1a, 0xad2b, 0xad1e, 0xade0, 0xae33, 0xaee6,
+  0xaefc, 0xaee5, 0xaef8, 0xaef6, 0xaeea, 0xaef2, 0xaeed, 0xaeeb,
+  0xaef0, 0xaef1, 0xafc6, 0xafc8, 0xafce, 0xafc5, 0x1696, 0xafcb,
+  0xb113, 0xb114, 0xb107, 0xb10c, 0xb21a, 0x1712,
+  /* 0x45 */
+  0xb217, 0xb206, 0xb216, 0xb207, 0xb210, 0xb209, 0xb219, 0xb215,
+  0xb36e, 0xb33b, 0xb33e, 0xb36c, 0xb365, 0xb364, 0xb359, 0xb37c,
+  0xb370, 0xb379, 0xb42c, 0xb452, 0xb451, 0xb44c, 0xb500, 0xb510,
+  0xb513, 0xb4ff, 0xb4fe, 0xb4ed, 0xb65a, 0xb658, 0xb65c, 0xb6da,
+  0xb778, 0xb75e, 0xb767, 0xb764, 0xb813, 0xb823, 0xb841, 0xb83f,
+  0xb840, 0xb8ed, 0xb8e3, 0xb8ea, 0xb8f0, 0xb8e6, 0xb8e9, 0xb8f1,
+  0xb8ee, 0xb9d4, 0xb9d1, 0xb9dc, 0xb9ec, 0xbc69, 0xbc6d, 0xbc57,
+  0xbc66, 0xbcf9, 0xbc4a, 0xbc60, 0xbc56, 0xbc59, 0xbc4c, 0xbc6a,
+  0xbc62, 0xbc63, 0xbc70, 0xbc5f, 0xc50d, 0xbc64, 0xbc5d, 0xbc68,
+  0xbc9f, 0xbeba, 0xbeb8, 0xbebc, 0xbeb9, 0xbeb4, 0xbf3b, 0xbf2d,
+  0xbf38, 0xbf2f, 0xbf32, 0xc041, 0xc0cb, 0xc0de, 0xc0dd, 0xc0da,
+  0xc0dc, 0xc110, 0xc14f, 0xc149, 0xc198, 0xc196,
+  /* 0x46 */
+  0xc197, 0xc1c7, 0x2c9c, 0xc1da, 0xc1d8, 0xc2a8, 0x2c0a, 0x2c9d,
+  0x2ecb, 0x2f38, 0x2f39, 0x2fa6, 0x3223, 0x3222, 0x3221, 0x33ce,
+  0x3592, 0x3591, 0x37ec, 0x37e0, 0x37ed, 0x3808, 0x37e5, 0x37ee,
+  0x37e4, 0x37eb, 0x37e3, 0x37ea, 0x380a, 0xc359, 0x3ad1, 0x3ae3,
+  0x3ad4, 0x3ad0, 0x3ad9, 0x027e, 0x1be1, 0x3ada, 0x3ad3, 0x3b4c,
+  0x3b4d, 0x3b7c, 0x3b80, 0x3bcc, 0x3dff, 0x3e08, 0xc108, 0x3e01,
+  0xc36b, 0x3e00, 0x3fed, 0x3ff3, 0x3fee, 0x3ff1, 0x3ff0, 0x3fde,
+  0x4051, 0x4382, 0x43a9, 0x4398, 0x439d, 0x439a, 0x439e, 0x439f,
+  0x43a6, 0x43a7, 0x4409, 0x442f, 0x4571, 0x456d, 0x4572, 0x46ef,
+  0x46f0, 0x483b, 0x4839, 0x483c, 0x4838, 0x6afd, 0x483a, 0x4878,
+  0x4879, 0x4877, 0x4998, 0x499c, 0x4999, 0x499a, 0x4c11, 0x4c0a,
+  0x4bfd, 0x4c0f, 0x4c19, 0x4c03, 0x4c15, 0x4c0c,
+  /* 0x47 */
+  0x4c09, 0x4c12, 0x4c34, 0x4c2a, 0x4c08, 0x4c2d, 0x4c28, 0xc3b1,
+  0x4c2c, 0x4c26, 0x4c33, 0x05a7, 0x4d1a, 0x4d1e, 0x5007, 0x502c,
+  0x5032, 0x5028, 0x5031, 0x5029, 0x5030, 0x502a, 0x5044, 0x502e,
+  0x52d1, 0x5324, 0x54f7, 0x54f4, 0x54f3, 0x54f8, 0x58b5, 0x5896,
+  0x5898, 0x5895, 0x5891, 0x58b2, 0x589e, 0x5859, 0x58a3, 0x589a,
+  0x589b, 0x0f20, 0x7f83, 0x5bda, 0x5bdf, 0x5c16, 0x5d1f, 0x5d2d,
+  0x5d2e, 0x5d2b, 0x60b8, 0x60bb, 0x60bf, 0x60ba, 0x60d5, 0x60e3,
+  0x60c1, 0x60be, 0x60bd, 0x60b4, 0x60c2, 0x60a1, 0x6087, 0x60d7,
+  0x60ca, 0x60b5, 0x60da, 0x60d9, 0x60b3, 0x60d8, 0x6367, 0x6371,
+  0x6362, 0x635c, 0x6368, 0x6352, 0x6356, 0x3809, 0x2e42, 0x64a0,
+  0x6600, 0x65fe, 0x65ff, 0x67cb, 0xc428, 0x67ca, 0x67a9, 0x67c8,
+  0x69b4, 0x69ac, 0x69aa, 0x69a9, 0x6b0e, 0x6be9,
+  /* 0x48 */
+  0x6bed, 0x6bf2, 0x6beb, 0x6bee, 0x6de8, 0x6ddb, 0x6dd7, 0x6de3,
+  0x6de5, 0x6dee, 0x6dd5, 0x6eb3, 0x6f2d, 0x6fc1, 0x6fc3, 0x710c,
+  0x710e, 0x7107, 0x7117, 0x7109, 0x7116, 0x719a, 0x719c, 0x73b4,
+  0x73b7, 0x73b3, 0x3b4e, 0x7513, 0x7514, 0x76e6, 0x76dc, 0x76e8,
+  0x76e5, 0x782e, 0x782c, 0x782b, 0x78cd, 0x7b3d, 0x7b32, 0x7b2d,
+  0x7b45, 0x7b3e, 0x7b50, 0x7b25, 0x7b53, 0x7b23, 0x7d37, 0x7d38,
+  0x7d47, 0x7d3d, 0x7d3e, 0x7d49, 0x7d4a, 0x7d1d, 0x21e9, 0x7fa5,
+  0x7f8c, 0x7f8d, 0x7f89, 0x7f96, 0x7f85, 0x7f8f, 0x7f77, 0x7f8e,
+  0x7f82, 0x7f8a, 0x7f88, 0x7f7b, 0x7f97, 0x7f7d, 0x7f79, 0x8059,
+  0x8124, 0x812d, 0x812e, 0x812b, 0xc476, 0x81da, 0x81d8, 0x81d6,
+  0x8287, 0x82a0, 0x8328, 0x8325, 0x831f, 0x83f3, 0x83f7, 0x83f6,
+  0x862b, 0x865b, 0x8648, 0x23cb, 0x865c, 0x866d,
+  /* 0x49 */
+  0x869d, 0x8699, 0x868c, 0x8691, 0x869b, 0x869a, 0x869c, 0x8695,
+  0x868d, 0x8696, 0x86a5, 0x872a, 0x87a1, 0x87a4, 0x87ad, 0x88a9,
+  0x88ae, 0x88b0, 0x8c0d, 0x8b63, 0x8b71, 0x8c51, 0x8c54, 0x8c2a,
+  0x8c44, 0x8c55, 0x8c99, 0x8c39, 0x8c3f, 0x8c3e, 0x8c4f, 0x8c4d,
+  0x8c35, 0x8c40, 0x8c31, 0x8bd5, 0x8c2b, 0x8c33, 0x8c41, 0x8c56,
+  0x8c4c, 0x8c46, 0x8c3c, 0x8c45, 0x8c43, 0x8c3d, 0x8c70, 0x8c57,
+  0x8c38, 0x8c58, 0x1165, 0x8c37, 0x8e07, 0x8e06, 0x8e09, 0x90ab,
+  0x9090, 0x9093, 0x90bc, 0x90a9, 0x909e, 0x90bf, 0x90aa, 0x9091,
+  0x90a4, 0x909a, 0x90a7, 0x90a1, 0x909c, 0x90a2, 0x909b, 0x909f,
+  0x9094, 0x908f, 0x8ef0, 0x9092, 0x9095, 0x90a5, 0x90a6, 0x9204,
+  0x939c, 0x9379, 0x937a, 0x937e, 0x937b, 0x9371, 0x9381, 0x937f,
+  0x937c, 0x937d, 0x9375, 0x9376, 0x948e, 0x948f,
+  /* 0x4a */
+  0x953e, 0x953f, 0x9540, 0x9541, 0x1304, 0x970d, 0x9717, 0x9710,
+  0x970e, 0x96ea, 0x971d, 0x9703, 0x9722, 0x9704, 0x9700, 0x9720,
+  0x9721, 0x9723, 0x9713, 0x9709, 0x9711, 0x97cb, 0x97ce, 0x97d0,
+  0x97cc, 0x97d4, 0x3adb, 0x9809, 0x980b, 0x9885, 0x9906, 0x990d,
+  0x1364, 0x9914, 0x990f, 0x9a09, 0x9a14, 0x9a0b, 0x99fc, 0x9a04,
+  0x9a0a, 0x9a00, 0x99fd, 0x9a07, 0x9a06, 0x9a11, 0x9a79, 0x9a78,
+  0x9b88, 0x9b80, 0x9b8b, 0x9d59, 0x9d61, 0x9d75, 0x1423, 0x9d55,
+  0x9d5b, 0x9d5f, 0x9d52, 0x9d62, 0x9d72, 0x9d5d, 0x9d68, 0x9d71,
+  0x9d65, 0x9d66, 0x9d67, 0x9d76, 0x9d4c, 0x9d60, 0x9d74, 0x9d50,
+  0x9e8a, 0x9e81, 0x9e86, 0x9e7f, 0x9e80, 0x9fa5, 0x9fa7, 0x9fa8,
+  0x9fa6, 0x9faf, 0x7f95, 0x9fb1, 0xa035, 0xa039, 0xa1c3, 0xa230,
+  0xa22a, 0xa22b, 0xa22d, 0xa22e, 0xa22c, 0xa223,
+  /* 0x4b */
+  0xa221, 0xa222, 0xa36c, 0xa381, 0xa38f, 0xa380, 0xa3d0, 0xa3cd,
+  0xa3d5, 0xa3d4, 0xa4d1, 0xa4be, 0xa4cb, 0xa4ce, 0xa4bd, 0xa4d0,
+  0xa704, 0xa6d5, 0xa6d0, 0xa6d3, 0xa6fb, 0xa6d8, 0xa6d1, 0xa6fd,
+  0xa6d9, 0xa6d6, 0xa6e6, 0xa6f9, 0xa9a1, 0xa99d, 0xa99e, 0x28d9,
+  0xaaff, 0xab5f, 0xab57, 0xab60, 0xab59, 0xac2c, 0xac25, 0xac27,
+  0xac30, 0xac24, 0xac26, 0xac2d, 0xac2e, 0xac29, 0xac31, 0xad45,
+  0xad47, 0xad52, 0xad4a, 0xad50, 0xad46, 0xad4f, 0xad4e, 0xad53,
+  0xaf21, 0xaf09, 0xaf1a, 0xaf1b, 0x7115, 0xaf10, 0xc4f9, 0xaf14,
+  0xaf0e, 0xaf12, 0xaf0b, 0xafcf, 0xafd2, 0xafd0, 0xafd4, 0xafd3,
+  0xafd1, 0x3518, 0xc4fb, 0xb009, 0xb11c, 0xb127, 0xb125, 0xb11b,
+  0xb129, 0xb11f, 0xb130, 0xb124, 0xb128, 0xb119, 0xb12f, 0xb224,
+  0xb221, 0xb225, 0xb226, 0xb227, 0xb276, 0xb366,
+  /* 0x4c */
+  0xb375, 0xb369, 0xb37e, 0xb38f, 0xb374, 0x8e10, 0xb3ad, 0xb42b,
+  0xb42a, 0xb458, 0xb522, 0xb51d, 0xb52b, 0xb52c, 0xb52d, 0xb533,
+  0xb51b, 0xb527, 0xb52a, 0xb528, 0xb53b, 0xb67e, 0xb671, 0xb679,
+  0xb678, 0xb670, 0xb66d, 0xb67d, 0xb675, 0xb676, 0xb6de, 0xb766,
+  0xb783, 0xb787, 0xb77b, 0xb789, 0xb786, 0xb782, 0xb77c, 0xb781,
+  0xb843, 0xb845, 0xb8f7, 0xb8f9, 0xb8fa, 0xba05, 0xb9fe, 0xba0f,
+  0xb9ff, 0xb9fa, 0xba09, 0xba20, 0xba0c, 0xba3c, 0xba22, 0xb9f8,
+  0xba0a, 0xba08, 0xb9f7, 0xbc8e, 0xbc77, 0xbc8b, 0xbcb4, 0xbc8a,
+  0xbc9a, 0xbc79, 0xbc83, 0xbc7f, 0xbca1, 0xbc8f, 0xbca3, 0xbc81,
+  0xbc94, 0xbc7e, 0xbc82, 0xbc90, 0xbca5, 0xbcad, 0xbc9d, 0xbe67,
+  0xbe69, 0xbecb, 0xbec8, 0xbed1, 0xbf40, 0xbf4b, 0xbf49, 0xbf46,
+  0xbf3e, 0xbf43, 0xbf3f, 0xbfa5, 0xbfa7, 0xc04e,
+  /* 0x4d */
+  0xc04d, 0x499b, 0xc0e5, 0xc0e1, 0xc0e2, 0xc116, 0xc114, 0xc51b,
+  0xc159, 0xc151, 0xc15f, 0xc14a, 0xc157, 0xc158, 0xc1ca, 0xc1db,
+  0xc1de, 0xc1e0, 0xc1e1, 0xc1df, 0xc1e2, 0xc1e3, 0xc292, 0xc2bf,
+  0xc2be, 0x2c0b, 0x2e52, 0x2e4e, 0x00b9, 0xc313, 0x2fa7, 0x3226,
+  0x3227, 0x32c6, 0x330b, 0x336a, 0x3378, 0x381a, 0x3816, 0x3819,
+  0x3817, 0x381b, 0x3818, 0x3820, 0x3937, 0x3aec, 0x3b81, 0xae3d,
+  0x3e0f, 0x3ead, 0x3ffb, 0x4052, 0x43af, 0x43b7, 0x43b2, 0x4578,
+  0x45ac, 0x4700, 0x46fe, 0x4702, 0x46fd, 0x4703, 0x4840, 0x4843,
+  0x4842, 0x48b7, 0x49a2, 0x4c00, 0x4c35, 0x4c41, 0x4c05, 0x2e53,
+  0x4c50, 0x4c4e, 0x4c53, 0x5053, 0x5050, 0x5057, 0x505f, 0x5055,
+  0x50ea, 0x5226, 0xb430, 0x522a, 0x5228, 0x522c, 0x522d, 0x52d4,
+  0x5507, 0x5558, 0x5559, 0x58c5, 0x58cd, 0x58c7,
+  /* 0x4e */
+  0x58e8, 0x084b, 0x5a32, 0xc297, 0x5bde, 0x5d32, 0x34c8, 0xc415,
+  0x60f1, 0x60f0, 0x60ec, 0x6109, 0x60f9, 0x60f5, 0x60fe, 0x6374,
+  0x6381, 0x637c, 0x6375, 0x6389, 0x6382, 0x6397, 0x6386, 0x637d,
+  0x6393, 0x639c, 0x6376, 0x6380, 0x6445, 0x30a1, 0x6603, 0x67c9,
+  0x67cd, 0x67d0, 0x69ad, 0x69c5, 0x6aa2, 0x6bec, 0x6bf6, 0x6bf3,
+  0x6df3, 0x6dfa, 0x6df9, 0x6df5, 0x6df4, 0x6df8, 0x6eb6, 0x6eb4,
+  0x6f32, 0x6fcd, 0x6fc8, 0x6fce, 0x6fca, 0x712a, 0x7121, 0x711d,
+  0x73bd, 0x73be, 0x73c2, 0x0cf1, 0x73c9, 0x751f, 0x76f1, 0x76ed,
+  0x76f2, 0x76e0, 0x76f7, 0x7830, 0x7837, 0x7831, 0x7836, 0x78c8,
+  0x7b6d, 0x7b69, 0x7b7d, 0x7b61, 0x7b70, 0x7b71, 0x7b73, 0x7b76,
+  0x7b75, 0x7b78, 0x7b79, 0x7b64, 0x7b6e, 0x7d51, 0x7d4f, 0x7d22,
+  0x7faf, 0x7faa, 0x7fa3, 0x7f9d, 0x7f9c, 0x7fa1,
+  /* 0x4f */
+  0x7fb6, 0x7fac, 0x7fa2, 0x7fa7, 0x7fb0, 0x7fa9, 0x7fc3, 0x8131,
+  0x8132, 0x8133, 0x8134, 0x8137, 0x813c, 0x81d9, 0x81dd, 0x81de,
+  0x81df, 0x81e0, 0x82a5, 0x82aa, 0x82a2, 0x82a3, 0x8404, 0x8403,
+  0x83fe, 0x8428, 0x86af, 0x86ad, 0x86a6, 0x87ac, 0x87a5, 0x87b0,
+  0x87b1, 0x8801, 0x88b2, 0x88d2, 0x88f1, 0x8bd1, 0x8c47, 0x8cc9,
+  0x8ca7, 0x8cc8, 0x8c95, 0x8c8e, 0x8c91, 0x8c7d, 0x8cee, 0x8c8d,
+  0x8c8c, 0x8cb0, 0x8c96, 0x8c42, 0x8c7c, 0x8cb1, 0x8cb2, 0x8c84,
+  0x8c9d, 0x8ca1, 0x8c98, 0x8cb3, 0x8c22, 0x8c7b, 0x8c8a, 0x8cce,
+  0x8c80, 0x8c97, 0x8cb4, 0x8cb5, 0x8c9a, 0x8c9f, 0x8c93, 0x8e12,
+  0x8e0b, 0x8e0e, 0x90a3, 0x90cc, 0x90dc, 0x90e1, 0x90de, 0x90d2,
+  0x90db, 0x90d9, 0x90d7, 0x90d4, 0x90c9, 0x90eb, 0x90da, 0x90d1,
+  0x9104, 0x90ca, 0x90e2, 0x91d7, 0x938c, 0x9399,
+  /* 0x50 */
+  0x93a2, 0x9396, 0x9394, 0x939f, 0x1267, 0x938e, 0x9403, 0x9494,
+  0x9493, 0x9544, 0x972f, 0x9735, 0x972b, 0x9732, 0x972d, 0x9736,
+  0x1314, 0x9731, 0x9712, 0x9733, 0x971f, 0x9734, 0x9740, 0x973f,
+  0x9741, 0x97d3, 0x9889, 0x9918, 0x9910, 0x9a1a, 0x9a25, 0x9a1e,
+  0x9b92, 0x9b95, 0x9b93, 0x9d84, 0x9d9a, 0x9d89, 0x9d8d, 0x9d88,
+  0x9d91, 0x9d9b, 0x9d9c, 0xb148, 0x9e8e, 0x9e92, 0x9fc5, 0x9fc1,
+  0x9fb8, 0x9fbe, 0x9fb5, 0x9fc7, 0xa03c, 0x1489, 0xa1ec, 0xa23f,
+  0xa239, 0xa237, 0xa3a1, 0xa394, 0xa3a0, 0xa3de, 0xa3db, 0xa3df,
+  0xa3dc, 0xa4d6, 0xa4dc, 0xa4dd, 0xa4e0, 0xa4e3, 0xa4e1, 0xa718,
+  0xa719, 0xa753, 0xc4ec, 0xa744, 0xa70e, 0xa70f, 0xa747, 0xa717,
+  0xa71d, 0xa711, 0xa8b4, 0xa8b6, 0xa9b7, 0xa9be, 0xa9c2, 0xa9b4,
+  0xab31, 0xab15, 0xab83, 0xac3b, 0xac36, 0xac42,
+  /* 0x51 */
+  0xac50, 0xac40, 0xac34, 0xac38, 0xac3d, 0xac3e, 0xac35, 0xac3a,
+  0xac46, 0xac37, 0xac39, 0xac45, 0xad77, 0xad5d, 0xad6a, 0xad76,
+  0xad6b, 0xad6c, 0xad65, 0xad64, 0xad71, 0xad5f, 0xad72, 0xadfe,
+  0xadff, 0xae3e, 0xaf2b, 0xaf36, 0xaf2d, 0xaf39, 0xaf3f, 0xaf3b,
+  0xaf33, 0xaf42, 0xaf3a, 0xafd5, 0xafd8, 0xafd9, 0xb00d, 0xb00a,
+  0xb039, 0xb03a, 0xb13d, 0xb145, 0xb13a, 0xb137, 0xb13e, 0xb142,
+  0xb387, 0xb38c, 0xb382, 0xb36b, 0xb3a0, 0xb39a, 0xb390, 0xb38e,
+  0xb3a1, 0xb3bd, 0xb3b2, 0xb3b5, 0xb3b7, 0xb3aa, 0xb3a2, 0xb3a5,
+  0xb3ae, 0xb3ab, 0xb3bc, 0xb432, 0xb45a, 0xb564, 0xb55c, 0xb54d,
+  0xb53f, 0xb53e, 0xb552, 0xb558, 0xb557, 0xb55e, 0xb553, 0xb554,
+  0xb556, 0xab65, 0xb684, 0xb685, 0xb686, 0xb797, 0xb7a1, 0xb7a2,
+  0x180b, 0xc50a, 0xb7a3, 0xb7a6, 0x1817, 0xb815,
+  /* 0x52 */
+  0xb824, 0xb84a, 0xb849, 0xb848, 0xb84b, 0xb90e, 0xb562, 0xb90b,
+  0xb90a, 0xb908, 0xb906, 0xba43, 0xba47, 0xba3f, 0xba46, 0xba50,
+  0x186d, 0xba4b, 0x1870, 0xba52, 0xbcd7, 0xbcbf, 0xbcd8, 0xbce0,
+  0xbce7, 0xbcb8, 0xbcd5, 0xbcef, 0xbce6, 0xbce4, 0xbcd4, 0xbcd6,
+  0xbcea, 0x18ed, 0xbcbb, 0xbce9, 0xc510, 0xbe6d, 0xbe70, 0xbe73,
+  0xbe72, 0xbed4, 0xbece, 0xbed5, 0xbf5a, 0xbf58, 0xbf52, 0xbf50,
+  0xbf55, 0xbf4e, 0xbf4d, 0xbfcb, 0xbfcc, 0xbfcd, 0xbfd1, 0xc058,
+  0xc063, 0xc05e, 0xc054, 0xc05b, 0xc0e9, 0xc0e7, 0xc0e8, 0xc11d,
+  0xc167, 0xc15a, 0xc15c, 0xc15b, 0xc161, 0xc1a1, 0x198d, 0xc1a4,
+  0xc1e9, 0xc1ef, 0xc1e5, 0xc1f5, 0xc1eb, 0xc1ed, 0xc296, 0xc295,
+  0xc2b3, 0xc2b5, 0xc2b1, 0x00a7, 0x2e4d, 0x3024, 0x322b, 0x33cf,
+  0x34c9, 0x3836, 0x3831, 0x3854, 0x383a, 0x3838,
+  /* 0x53 */
+  0x3939, 0x3938, 0x3af4, 0x3af3, 0x3af6, 0x3afc, 0x3af5, 0x3af1,
+  0x3c9c, 0x3e18, 0x3e1a, 0x3ffc, 0x3ffe, 0x4003, 0x4053, 0x422b,
+  0x43c6, 0x43c1, 0x457b, 0x4706, 0x4849, 0x48b8, 0x49a3, 0x4c52,
+  0x4c4d, 0x4c5f, 0x4c5e, 0x4c61, 0x4d23, 0x508c, 0x506f, 0x5075,
+  0x5074, 0x5071, 0x5070, 0x506c, 0x5326, 0x5508, 0x1e07, 0x58f0,
+  0x58ef, 0x58fb, 0x5910, 0x590c, 0x58f6, 0x58fe, 0x5b7c, 0x5be1,
+  0x5d38, 0x5d6f, 0x6118, 0x6115, 0x611c, 0x6110, 0x6135, 0xc417,
+  0x6117, 0x611d, 0x6126, 0x6128, 0x6129, 0x612a, 0x611a, 0xc416,
+  0x4707, 0x63ab, 0x63ac, 0x63a1, 0x63ae, 0x63a3, 0x63a7, 0x6448,
+  0x6504, 0x65fd, 0x0a5a, 0x6608, 0x67d2, 0x69c6, 0x69be, 0x6a1c,
+  0x6aa6, 0x6aa7, 0x6aab, 0x6b00, 0x6bfb, 0x6bfc, 0x6bf9, 0x6c01,
+  0x6e06, 0x6e04, 0xc43c, 0x6f34, 0x7136, 0x7132,
+  /* 0x54 */
+  0x7142, 0x712d, 0x7135, 0x73d8, 0x7523, 0x7520, 0x7701, 0x7700,
+  0x7703, 0xc2bc, 0x783c, 0x7841, 0x7835, 0x78c9, 0x7b8e, 0x7b9e,
+  0x7b99, 0x7bb4, 0x7baa, 0x7b9f, 0x7b96, 0x7b9d, 0x7bc3, 0x7b74,
+  0x7bab, 0x0eaf, 0x7d63, 0x7d5b, 0x7d5a, 0x7fc5, 0x7fc4, 0x7fcf,
+  0x7fc8, 0x7fa4, 0x7fbd, 0x7fd3, 0x8060, 0x813b, 0x81e3, 0x81e7,
+  0x82a8, 0x82ac, 0x82a9, 0x832a, 0x8408, 0x8409, 0x86b9, 0x88c1,
+  0x88c2, 0x88b8, 0x8ce1, 0x8ceb, 0x8ce5, 0x8cfa, 0x8ce4, 0x8d0b,
+  0x8cd7, 0x8cef, 0x8ce0, 0x8cec, 0x8cfb, 0xc4b0, 0x8cd3, 0x8ce6,
+  0x8cfc, 0x8ce3, 0x8ccf, 0x8cda, 0x8cdc, 0x8cd2, 0x8ca4, 0x116b,
+  0x8e17, 0x8e16, 0x90f2, 0x90fc, 0x9118, 0x90f6, 0x90fe, 0x90f3,
+  0x90f7, 0x9101, 0x90f9, 0x9106, 0x90f5, 0x9110, 0x90df, 0x9103,
+  0x9108, 0x91d8, 0x9205, 0x9397, 0x93b3, 0x93ae,
+  /* 0x55 */
+  0x93af, 0x93a7, 0x93b1, 0x93a8, 0x93ac, 0x93ab, 0x9404, 0x949a,
+  0x954a, 0x9742, 0x9758, 0x974b, 0x9745, 0x9749, 0x974c, 0x9759,
+  0x9756, 0x131b, 0x9746, 0x9744, 0x975b, 0x9769, 0x988e, 0x988f,
+  0x991e, 0x86bc, 0x9a2f, 0x9b9e, 0x9b9d, 0x9b9f, 0x9b9c, 0x9db4,
+  0x9dae, 0x9dab, 0x9db3, 0x9daf, 0x9dc2, 0x9e93, 0x9e95, 0x9e96,
+  0x9e97, 0x9fcf, 0x9fce, 0x9fcb, 0xa04b, 0xa246, 0xa243, 0xa245,
+  0xa251, 0xa3ae, 0xa3af, 0xa3b0, 0xa3b8, 0xa3e2, 0xa3e3, 0xa3e6,
+  0xa4ed, 0xa4ea, 0xa53a, 0xa759, 0xa784, 0xa75f, 0xa77c, 0xa75c,
+  0xa758, 0xa755, 0xa75d, 0xa77e, 0xa780, 0xa783, 0xa757, 0x1563,
+  0xa75e, 0xa8ba, 0xa9d5, 0xab58, 0xab68, 0xab67, 0xac4a, 0xac4c,
+  0xac52, 0xac49, 0xac4e, 0xac47, 0xac4d, 0xac4b, 0xac4f, 0xad7e,
+  0xad87, 0xad83, 0xad89, 0x69ca, 0xad86, 0xad88,
+  /* 0x56 */
+  0xae47, 0xae42, 0xae49, 0xae48, 0x1680, 0x1684, 0x167f, 0xaf44,
+  0xaf51, 0xaf46, 0xaf47, 0xafe4, 0xb00f, 0xb03f, 0xb14b, 0xb157,
+  0xb152, 0x16f1, 0xb151, 0xb158, 0xb15e, 0xb153, 0xb15d, 0xb14d,
+  0xb23c, 0xb23f, 0xb246, 0xb23e, 0xb244, 0xb245, 0xb241, 0xb238,
+  0xb242, 0xb243, 0xb27a, 0xb3a3, 0xb3ba, 0xb3c0, 0xb3c4, 0xb3c6,
+  0xb3cb, 0xb461, 0xb57a, 0xb573, 0xb572, 0xb574, 0xb580, 0xb581,
+  0x2947, 0xb695, 0xb68f, 0xb690, 0xb692, 0xb694, 0xb68b, 0xb6e6,
+  0xb7b2, 0xb7b8, 0xb7bd, 0xb7be, 0xb7ce, 0xb7ba, 0xb816, 0xb826,
+  0xb825, 0xb84c, 0xb850, 0xb84e, 0xb851, 0xb852, 0xb914, 0xb915,
+  0xb91b, 0xba82, 0xba99, 0xba9a, 0xba7d, 0xba85, 0xba86, 0xba9c,
+  0xba79, 0xba7b, 0xba80, 0xba83, 0xba81, 0xbd1e, 0xbd1b, 0xbd2a,
+  0xbcfb, 0xbd05, 0xbd20, 0xbd11, 0xbd04, 0xbcfd,
+  /* 0x57 */
+  0xbd03, 0xbd10, 0xbd18, 0xbd0a, 0xbd4e, 0xbd09, 0xbd07, 0xbd1c,
+  0x191c, 0xbe77, 0xbe76, 0xbed8, 0xbed9, 0xbf61, 0xbf5c, 0xbf5e,
+  0xbf60, 0xbfaa, 0xbfd6, 0xbfd8, 0xc009, 0xc008, 0xc06b, 0xc065,
+  0xc073, 0xc074, 0xc0ed, 0xc124, 0xc125, 0xc16a, 0xc1a7, 0xc1a8,
+  0xc20b, 0xc1fa, 0xc1f9, 0xc1ff, 0xc204, 0xc1f6, 0xc205, 0xc299,
+  0xc2ab, 0xc2bd, 0xc2b8, 0x00a8, 0x2e64, 0x2e5a, 0x2f72, 0x337a,
+  0x3595, 0x385f, 0x3861, 0x385e, 0x385a, 0x385c, 0x385d, 0x386e,
+  0x3857, 0x3858, 0x3b02, 0x3b0b, 0x3b08, 0x3b51, 0x3e25, 0x3e28,
+  0x3e23, 0x3e21, 0x3e24, 0x3e29, 0x4006, 0x400a, 0x43ca, 0x43cc,
+  0x43cb, 0x43cf, 0x457f, 0x457c, 0x45d6, 0x4709, 0x470b, 0x4776,
+  0x487d, 0x49a5, 0x4c5b, 0x4c5c, 0x4c5d, 0x4c65, 0x506d, 0x5082,
+  0x5083, 0x5087, 0x5095, 0x508a, 0x52d6, 0x5328,
+  /* 0x58 */
+  0x550d, 0x592e, 0xc3ee, 0x592d, 0x5921, 0x5919, 0x5a3b, 0x5a3c,
+  0x5a3a, 0x5b7e, 0x5d3b, 0x6147, 0x6139, 0x6134, 0x6136, 0x6146,
+  0x613b, 0x6141, 0x6145, 0x63c0, 0x63c4, 0x63ba, 0x63bd, 0x63be,
+  0x64a3, 0x660c, 0x67d9, 0x69cd, 0x6aae, 0x6bff, 0x6c24, 0x6ebb,
+  0x6ebc, 0x6f36, 0x6fd5, 0x6fd3, 0x6fd6, 0x713c, 0x713f, 0x73de,
+  0x73e3, 0x7527, 0x7529, 0x0d8b, 0x7705, 0x7707, 0x770c, 0x78d0,
+  0x7bbe, 0x7bbc, 0x7bd0, 0x7bc2, 0x7bb5, 0x7bc9, 0x7d66, 0x0f2b,
+  0x7fd5, 0x7fe2, 0x7fdc, 0x7fe3, 0x7fda, 0x7fc2, 0x7fe8, 0x81e9,
+  0x82af, 0x82ad, 0x82ae, 0x840b, 0x86c1, 0x87b6, 0x87b9, 0x88c0,
+  0x8ca5, 0x8d28, 0x8d22, 0x8d29, 0x8d18, 0x8d1f, 0x8d1c, 0x8d12,
+  0x8d2a, 0x117a, 0x8d21, 0x8d2b, 0x8d17, 0x8cf0, 0x8d16, 0x8d23,
+  0x912b, 0x9126, 0x913d, 0x9122, 0x913a, 0x9131,
+  /* 0x59 */
+  0x9132, 0x9154, 0x9121, 0x9135, 0x1209, 0x912e, 0x9130, 0x912f,
+  0x9136, 0x91da, 0x91d9, 0x93bb, 0x93bc, 0x93b7, 0x93c2, 0x93bd,
+  0x93b2, 0x126d, 0x7144, 0x7bd1, 0x9752, 0x976b, 0x9767, 0x131f,
+  0x9761, 0x976c, 0x9751, 0x9774, 0x9777, 0x976f, 0x976d, 0x9768,
+  0xc4d1, 0x9784, 0x9890, 0x9892, 0x9893, 0x991f, 0x9a31, 0x9a38,
+  0x9a39, 0x9a37, 0x9bab, 0x9dc3, 0x9dc8, 0x9dcb, 0x9dcf, 0x9e98,
+  0x9fd4, 0x9fd3, 0x9fd8, 0x9fd9, 0x9fdd, 0x9fd1, 0x9fd6, 0xa03e,
+  0xa258, 0xa257, 0xa255, 0xa3c4, 0xa3e4, 0xa4ee, 0xa4ef, 0xa4f3,
+  0xa4f2, 0xa4f0, 0xa7ab, 0xa79a, 0xa7af, 0xa797, 0x156a, 0x156c,
+  0xa7bf, 0xa794, 0xa793, 0xa8be, 0xa8bb, 0xa8bc, 0xa9d9, 0xab6c,
+  0xac53, 0xac54, 0xac5b, 0xac58, 0xac56, 0xac57, 0xad9f, 0xad94,
+  0xad96, 0xad97, 0xae4a, 0xae4b, 0xaf55, 0xaf5a,
+  /* 0x5a */
+  0xaf5e, 0xaf5f, 0xaf59, 0xaf5b, 0xaf58, 0xaf54, 0xafe8, 0xafeb,
+  0xafec, 0xb013, 0xb166, 0xb16b, 0xb162, 0xb169, 0xb163, 0xb15f,
+  0xb14e, 0xb248, 0xb24a, 0xb3e3, 0xb3db, 0xb3d8, 0xb3d6, 0xb586,
+  0xb590, 0xb591, 0xb588, 0xb594, 0xb583, 0x17b2, 0xb59c, 0xb58d,
+  0xb585, 0xb698, 0xb69a, 0xb69c, 0xb6e7, 0xb7c5, 0xb7d0, 0xb7d1,
+  0xb819, 0xb827, 0x181d, 0xb854, 0xb92d, 0xb922, 0x182d, 0xb91f,
+  0xbabd, 0xbaae, 0xbabb, 0xbaad, 0xbabc, 0xbab9, 0xbab4, 0xbacb,
+  0xbab7, 0xbab3, 0xbaba, 0xbab6, 0xbacd, 0xbabe, 0xbac9, 0xc50b,
+  0xbd5f, 0xbd3b, 0xbd61, 0xbd5c, 0xbd8a, 0xbd5a, 0xbd4d, 0xbd46,
+  0xbd44, 0xbd3d, 0xbd40, 0xbd3c, 0xbd8c, 0xbd41, 0xbd4c, 0xbd3e,
+  0xbd4a, 0xbe7c, 0xbe7a, 0xbf65, 0xbf6e, 0xbf69, 0xbf6a, 0xbf6f,
+  0xbf6c, 0xbf70, 0xbf68, 0xbf6b, 0x1945, 0xbfac,
+  /* 0x5b */
+  0xbfde, 0xbfdd, 0xbfdc, 0x63c5, 0xc08c, 0xc083, 0xc082, 0xc088,
+  0xc085, 0xc081, 0xc0f5, 0xc0ef, 0xc0f4, 0xc0f2, 0xc0f6, 0xc0f3,
+  0xc0f0, 0xc0f1, 0xc12b, 0xc127, 0xc128, 0xc16c, 0xc1ae, 0xc20e,
+  0xc21b, 0xc216, 0xc21f, 0xc222, 0xc220, 0xc221, 0xc214, 0xc213,
+  0xc29d, 0xc29c, 0xc29e, 0xc29f, 0x2e6b, 0x32c8, 0x3878, 0x3876,
+  0x3870, 0x3871, 0x3b0a, 0x3e2c, 0x4711, 0x487e, 0x4c57, 0x4c66,
+  0x4c69, 0x4c67, 0x4c68, 0x4c71, 0x4c6f, 0xbfae, 0x508b, 0x5096,
+  0x5235, 0x523a, 0x526b, 0x5516, 0x5943, 0x5946, 0x593f, 0x593b,
+  0x593d, 0x5ab1, 0x5ab2, 0x5be4, 0x5d40, 0x615d, 0x6151, 0x614d,
+  0x614c, 0x615b, 0x63d4, 0x63d2, 0x63ca, 0x63c8, 0x63d0, 0x63c9,
+  0x6449, 0x64a4, 0x6612, 0x660f, 0x6611, 0x67db, 0x67dd, 0x67dc,
+  0x69d4, 0x6a21, 0x6ab2, 0x6c04, 0x6c02, 0x6e11,
+  /* 0x5c */
+  0x6e16, 0x6e10, 0x6ebe, 0x8e1a, 0x714c, 0x714a, 0x73f2, 0x73f1,
+  0x752a, 0x752c, 0x752f, 0x7531, 0x7711, 0x7712, 0x784b, 0x7bdb,
+  0x7bd6, 0x7bdd, 0x7be2, 0x7be4, 0x7be0, 0x7bdf, 0x7be3, 0x7d6e,
+  0x7d71, 0x7fe9, 0x7fea, 0x8063, 0x81eb, 0x81ea, 0x86bd, 0x86bb,
+  0x86c6, 0x86cc, 0x86c8, 0x63cf, 0x86c9, 0x86ca, 0x86cf, 0x86d0,
+  0x87ba, 0x87fb, 0x8803, 0x88c4, 0x8d49, 0x8d53, 0x8d36, 0x8d4a,
+  0x8d41, 0x8d4e, 0x8d19, 0x8d4d, 0x8d45, 0x8d4c, 0x8d47, 0x8d48,
+  0x8d4f, 0x8d37, 0x8d42, 0x914a, 0x9146, 0x120a, 0x9149, 0x914f,
+  0x9151, 0x914c, 0x120c, 0x9206, 0x9551, 0x977a, 0x9783, 0x977e,
+  0x977f, 0x9780, 0x6ab5, 0x9891, 0x9894, 0x9895, 0x9921, 0x9920,
+  0x9a3d, 0x9a40, 0x9a46, 0x9a84, 0x9bac, 0x9bad, 0x142e, 0x9dda,
+  0x9dd9, 0x9fe2, 0x9fe1, 0x9fe3, 0x9fe4, 0x9fde,
+  /* 0x5d */
+  0x9fdf, 0xa241, 0xa259, 0xa25c, 0xa25a, 0xa3e8, 0xa4f6, 0xa4fc,
+  0xa4f7, 0xa4fa, 0xa4f9, 0xa7c4, 0xa7be, 0xa7d2, 0xa7bd, 0xa795,
+  0xa7d4, 0xa9e4, 0xac61, 0xac62, 0xac63, 0xac64, 0xac60, 0xac5c,
+  0xac5d, 0xac5e, 0xada5, 0xada6, 0xae4c, 0xaf68, 0xaf6e, 0xaf71,
+  0xaf6b, 0xaf6f, 0xafee, 0xaff1, 0xaff0, 0xafef, 0xb015, 0xb014,
+  0xab6e, 0xb047, 0xb17c, 0xb17a, 0xb174, 0xb176, 0xb16e, 0xb178,
+  0xb16d, 0xb16c, 0xb24e, 0xb3d7, 0xb3ea, 0xb3e5, 0xb464, 0xb5b3,
+  0xb5a3, 0xb5a5, 0xb5a7, 0xb5a2, 0xb59f, 0xb5a6, 0xb59e, 0xb5a8,
+  0xb6a9, 0xb6a6, 0xb6aa, 0xb6ab, 0xb6a0, 0xb6a1, 0xb6a8, 0xb6e8,
+  0xb6e9, 0xb6ea, 0xb7e4, 0xb7df, 0xb7e0, 0xb828, 0xb85d, 0xb85b,
+  0xb856, 0xb857, 0xb85f, 0xb862, 0xbae1, 0xbae3, 0xbade, 0xbad9,
+  0xbae8, 0xbaf2, 0xbaf6, 0xbae6, 0xbaf4, 0xbaf5,
+  /* 0x5e */
+  0xbae5, 0xbae2, 0x188d, 0xbd96, 0xbdaa, 0xbd97, 0xbd70, 0xbda1,
+  0xbd9d, 0xbda9, 0xbd6f, 0xbd7e, 0xbd94, 0xbd9a, 0xbd73, 0xbd87,
+  0xbd71, 0xbd77, 0xbd88, 0xbd8d, 0xbd85, 0xbd78, 0xbdad, 0xbe80,
+  0xbe81, 0xbee5, 0xbee7, 0xbf7c, 0xbfaf, 0xbfe1, 0xc096, 0xc0a3,
+  0xc090, 0xc0f8, 0xc12e, 0xc175, 0xc17e, 0xc17d, 0xc17b, 0xc178,
+  0xc1b0, 0xc234, 0xc236, 0xc230, 0xc51d, 0xc22e, 0xc237, 0x34ce,
+  0x3597, 0x3598, 0x387c, 0x387e, 0x387d, 0x387f, 0x3b0f, 0x3ca4,
+  0x3e31, 0x3e2e, 0x3e2f, 0x3e32, 0x422c, 0x43d4, 0x43dc, 0x43d8,
+  0x440e, 0x4583, 0x4584, 0x4712, 0x4c72, 0x4c7c, 0x4c7e, 0x50a6,
+  0x50a0, 0x509e, 0x50a2, 0x532a, 0x5518, 0x594d, 0x5958, 0x595b,
+  0x7714, 0xc3f2, 0x5be6, 0x6164, 0x6168, 0x6160, 0x6162, 0x63d7,
+  0x644b, 0x67e0, 0x6a22, 0x6c05, 0x6e19, 0x6e1a,
+  /* 0x5f */
+  0x6ec3, 0x6fd8, 0x6fdc, 0x714f, 0x73f7, 0x73f4, 0x73f8, 0x7713,
+  0x7850, 0x7bf0, 0x7be9, 0x7bef, 0x7bed, 0x7bea, 0x7bf8, 0x7c05,
+  0x7bf2, 0x7d72, 0x0f31, 0x7ff9, 0x7ff3, 0x7ff6, 0x7ff2, 0x7ff7,
+  0x8066, 0x8065, 0x8140, 0xc477, 0x86d1, 0x86d3, 0x8804, 0x8d59,
+  0x8d60, 0x8d5b, 0x8d5d, 0x8d5e, 0x8d69, 0x8d5c, 0x8d61, 0x8d6a,
+  0x8d5f, 0x914e, 0x915c, 0x9160, 0x9163, 0x91db, 0x93ca, 0x93c9,
+  0x93c8, 0x94a5, 0x94a3, 0x978e, 0x9787, 0x9789, 0x9785, 0x9786,
+  0x978f, 0x978a, 0x9790, 0x9898, 0x989b, 0x9a47, 0x9a49, 0x9a48,
+  0x9de5, 0x9dea, 0x9ded, 0x9ff0, 0x9fef, 0x9ff2, 0x9fec, 0xa040,
+  0xa260, 0xa25f, 0xa3eb, 0xa3ec, 0xa500, 0xa501, 0xa7e2, 0xa7df,
+  0xa7e0, 0xa7e1, 0xa7e3, 0xa8c3, 0xa9eb, 0xa9ea, 0xab61, 0xab71,
+  0xac6b, 0xac68, 0xac69, 0xac67, 0xadb0, 0xadb1,
+  /* 0x60 */
+  0xadb2, 0xae51, 0xaf74, 0xb17f, 0xb184, 0xb253, 0xb254, 0xb3f0,
+  0xb3f4, 0xb3f1, 0xb437, 0xb5bf, 0x17bc, 0x17bb, 0xb5bd, 0xb5be,
+  0xb5b7, 0xb5c0, 0xb5ba, 0xb5b8, 0xb5bc, 0xb5bb, 0xb6eb, 0xb7e7,
+  0xb81d, 0xb81c, 0xb863, 0x484b, 0xb938, 0xb936, 0xb934, 0xb937,
+  0xbb06, 0xbb1c, 0xbb02, 0xbb1d, 0xbb1e, 0xbae0, 0xbb11, 0xbb18,
+  0xbb21, 0xbb20, 0xbb10, 0xbdbd, 0xbdae, 0xbdb5, 0xbdb8, 0xbdb9,
+  0xbdbe, 0xbdc4, 0xbdbc, 0xbdba, 0xbe83, 0xbeea, 0xbeec, 0xbf7e,
+  0xbf7b, 0xbfe5, 0xc0a7, 0xc09e, 0xc09a, 0xc12f, 0xc131, 0xc183,
+  0xc1b5, 0xc246, 0xc241, 0xc243, 0xc23d, 0xc242, 0xc23b, 0xc247,
+  0x336b, 0x33d0, 0x388e, 0x4011, 0xc371, 0xc389, 0x484c, 0x532b,
+  0x594f, 0x595e, 0x5963, 0x596b, 0x5a3f, 0x5be9, 0x616d, 0x616b,
+  0x616a, 0xbb2a, 0x63e0, 0x63dd, 0x63e1, 0x63de,
+  /* 0x61 */
+  0x63dc, 0x644d, 0x6616, 0x67e3, 0x69e5, 0x69e4, 0x6e1d, 0x754b,
+  0xc2c1, 0x784e, 0x78d6, 0x7bfd, 0x7c07, 0x7bfe, 0x7c03, 0x7c0b,
+  0x7bff, 0x7d7a, 0x7d77, 0x7ffb, 0x8143, 0x81ed, 0x87bc, 0x63df,
+  0x8805, 0x88c6, 0x88c5, 0x8d74, 0x8d73, 0x8d72, 0x8d78, 0x9173,
+  0x917a, 0x6e1c, 0x9176, 0x9175, 0x9177, 0x93cf, 0x93ce, 0x93cd,
+  0x94a8, 0x9798, 0x9792, 0x9794, 0x989a, 0x9bb4, 0x9deb, 0x9df4,
+  0x9df3, 0x9dee, 0x9df2, 0x9df0, 0xa264, 0xa805, 0xa7fb, 0xa7fc,
+  0xa9f3, 0xac6c, 0xadba, 0xaf79, 0xaf7e, 0xaf78, 0xaff4, 0xb016,
+  0xb257, 0xb5c8, 0xb5c3, 0xb5ce, 0xb6b3, 0xb6ed, 0xb6ee, 0xb7f1,
+  0xb7f8, 0x1814, 0xb864, 0xb865, 0xbb35, 0xbb29, 0xbb2c, 0xbb31,
+  0xbb2b, 0xbb2e, 0xbb25, 0xbdda, 0xbde0, 0xbdd4, 0xbde1, 0xbddd,
+  0xbfe7, 0xc012, 0xc0ae, 0xc0af, 0xc186, 0xc185,
+  /* 0x62 */
+  0xc1d1, 0xc258, 0xc23f, 0xc252, 0xc24b, 0xc253, 0xc250, 0xc256,
+  0xc257, 0xc2cd, 0xc2cb, 0x3231, 0x3230, 0x33d1, 0x021c, 0x3892,
+  0x3890, 0x388f, 0x3893, 0x3891, 0x0372, 0x4713, 0x487f, 0x50ac,
+  0x6170, 0x63e5, 0x6a23, 0x6a24, 0x6c08, 0x6c07, 0x6e1f, 0x6e20,
+  0x6e21, 0x6fe1, 0x7154, 0x7157, 0x7155, 0x73fa, 0x7538, 0x8d86,
+  0x7537, 0x7853, 0x7d7e, 0x7d7b, 0xc471, 0x7ffd, 0x7ffc, 0x8146,
+  0x8732, 0x88c7, 0x8d71, 0x8d83, 0x8d6f, 0x8d7e, 0x8d7d, 0x8d81,
+  0x8d7c, 0x918a, 0x917e, 0x9180, 0x917d, 0x917f, 0x9182, 0x93d4,
+  0x93d0, 0x93d2, 0x9555, 0x979b, 0x979a, 0x9a4e, 0x9df1, 0x9ff8,
+  0x9ffd, 0xa25e, 0xa266, 0xa505, 0xa80a, 0xa80b, 0xa80e, 0xa80d,
+  0xa811, 0xa809, 0xa810, 0xa80c, 0xa812, 0xa8c4, 0xa9f7, 0xa9f8,
+  0xab6a, 0xab6b, 0xadc0, 0xadc2, 0xaf85, 0xaf80,
+  /* 0x63 */
+  0xaf84, 0xaf81, 0xadc4, 0xb18b, 0xb18d, 0xb18e, 0xb6b7, 0xb6b9,
+  0xb6ef, 0xb7fb, 0xb7ff, 0xb867, 0xb868, 0xb869, 0xb93f, 0xbb3c,
+  0xbb4c, 0xbb3d, 0xbb3e, 0xbb3f, 0xbb3b, 0xbdff, 0x190e, 0xbdf6,
+  0xbdee, 0xbdfc, 0xbdf8, 0xbe01, 0xbdfa, 0xbe88, 0xbf80, 0xc011,
+  0xc0fe, 0xc100, 0xc135, 0x6f3c, 0xc1bd, 0xc1bb, 0xc25c, 0xc25a,
+  0xc2d1, 0xc2d0, 0x340b, 0x5973, 0x3e39, 0x401a, 0x43e3, 0x4587,
+  0x4777, 0x4778, 0x50b1, 0x596a, 0x5974, 0x5beb, 0x617b, 0x64a5,
+  0x67e4, 0x6c0b, 0x6c0e, 0x6c0c, 0x7539, 0x7c10, 0x7c11, 0x7c16,
+  0x7d81, 0x7d80, 0x7ffe, 0x8001, 0x8000, 0x8147, 0x81ef, 0x8d88,
+  0x918b, 0x918d, 0x9187, 0x9185, 0x918f, 0x9184, 0x9188, 0x918e,
+  0x918c, 0x93d7, 0x93d6, 0x979f, 0x4588, 0x9e03, 0x9ffe, 0xa3ef,
+  0xa509, 0xa508, 0xa820, 0xa824, 0xa81f, 0xac70,
+  /* 0x64 */
+  0xae56, 0xaff7, 0xaff8, 0xaff6, 0xb190, 0xb25e, 0xb3f7, 0xb5d6,
+  0xb5d5, 0xb6bb, 0xb6f0, 0xb801, 0xb86c, 0xb941, 0xb942, 0xbb4f,
+  0xbb53, 0xbb58, 0xbe12, 0xbe04, 0xbe13, 0xbe05, 0xbe0d, 0xbf82,
+  0xbf81, 0xc0b5, 0xc0ba, 0xc1be, 0xc265, 0xc263, 0xc26e, 0xc26a,
+  0xc26c, 0xc2c4, 0x336c, 0x97a5, 0x4012, 0x484d, 0x551f, 0x5977,
+  0x5978, 0x5d44, 0x617c, 0x63eb, 0x63ea, 0x63ec, 0x64a7, 0x6619,
+  0x6e23, 0x2074, 0x7401, 0x7c1c, 0x8003, 0x8148, 0x86da, 0x8d91,
+  0x8d92, 0x9196, 0x9197, 0x9191, 0x9193, 0x93d8, 0x93d5, 0x9557,
+  0x9558, 0x97a2, 0x9e05, 0x9ffa, 0xa50c, 0xa50a, 0xa82e, 0xa829,
+  0xa82f, 0xa8c5, 0xac72, 0xadc8, 0xae5a, 0xae59, 0xaf89, 0xaf88,
+  0xb5db, 0xb5d9, 0xb5da, 0xb6bc, 0x17ec, 0xb806, 0xb805, 0xb86f,
+  0xb86d, 0xb870, 0xbb60, 0xbb5e, 0xbb63, 0xbb5a,
+  /* 0x65 */
+  0xbb5f, 0xbe19, 0xbe1d, 0xbe1b, 0xbe22, 0xbe1c, 0xbe1e, 0xbef7,
+  0xbf84, 0xc015, 0xc0b8, 0xc0c1, 0xc101, 0xc10a, 0xc1d2, 0xc275,
+  0xc274, 0xc272, 0x34d0, 0x401b, 0x4410, 0x4779, 0x63ed, 0x6ab9,
+  0x6e24, 0x6ec5, 0x7403, 0x814a, 0x86f7, 0x87c1, 0x87c2, 0x8d94,
+  0x9199, 0x919a, 0x955a, 0x97a8, 0x9825, 0x989e, 0xa041, 0xa832,
+  0xa833, 0xadcb, 0xadca, 0xadcc, 0xb193, 0xb5e0, 0xb871, 0xbb6b,
+  0xbe2b, 0xbe29, 0xbe1a, 0xbe26, 0xbe27, 0xbe2a, 0xbef8, 0x6f3d,
+  0xc276, 0x3b18, 0x597a, 0x617f, 0x0e79, 0x81f0, 0x8d9a, 0x8d96,
+  0x919e, 0x919d, 0x91dc, 0x93da, 0x9e0b, 0xa002, 0xa042, 0xa267,
+  0xaf8b, 0xb5e2, 0xbb71, 0xbe2f, 0xbe2e, 0xc0c6, 0xc18e, 0xc27b,
+  0xc277, 0xc278, 0xc27c, 0x597c, 0x8007, 0x8d97, 0x97d9, 0xa50d,
+  0xa50e, 0xb5e3, 0xb5e4, 0xb6f3, 0xb875, 0xbe37,
+  /* 0x66 */
+  0xbe35, 0xc18f, 0xc280, 0xc27f, 0xc2d4, 0x50b4, 0xbfec, 0xab75,
+  0x6c10, 0x8069, 0x91a4, 0x93db, 0xadd1, 0xaf8d, 0xbb76, 0xbe39,
+  0xc284, 0xc282, 0x34d2, 0x63ee, 0x6c11, 0x7d84, 0xab74, 0xaf8f,
+  0xaf8e, 0xbe3b, 0x32cb, 0xc288, 0xc286, 0x555c, 0x71a4, 0xac75,
+  0xc28b, 0x3b19, 0x989f, 0xb5e5, 0xbe40, 0x6c12, 0xbefb, 0xc28c,
+  0x71a5, 0xb877, 0xb878, 0xc2d6, 0x93df, 0xadd2, 0x3b1a, 0x97a9,
+  0xadd3, 0xc0ca, 0x87c4, 0x94b1, 0xb264,
+};
+
+static const ucs4_t cns11643_7_2uni_upages[198] = {
+  0x03400, 0x03500, 0x03600, 0x03700, 0x03800, 0x03900, 0x03a00, 0x03b00,
+  0x03c00, 0x03d00, 0x03e00, 0x03f00, 0x04000, 0x04100, 0x04200, 0x04300,
+  0x04400, 0x04500, 0x04600, 0x04700, 0x04800, 0x04900, 0x04a00, 0x04b00,
+  0x04c00, 0x04d00, 0x05600, 0x05800, 0x06100, 0x06400, 0x06700, 0x07100,
+  0x07600, 0x07c00, 0x07f00, 0x08100, 0x08600, 0x08d00, 0x08f00, 0x09300,
+  0x09500, 0x09a00, 0x0ff00, 0x20000, 0x20100, 0x20300, 0x20400, 0x20500,
+  0x20600, 0x20700, 0x20800, 0x20900, 0x20a00, 0x20b00, 0x20f00, 0x21000,
+  0x21100, 0x21200, 0x21400, 0x21500, 0x21600, 0x21800, 0x21900, 0x21a00,
+  0x21b00, 0x21c00, 0x21d00, 0x21f00, 0x22000, 0x22100, 0x22200, 0x22300,
+  0x22400, 0x22500, 0x22700, 0x22800, 0x22900, 0x22a00, 0x22c00, 0x22d00,
+  0x22e00, 0x22f00, 0x23000, 0x23100, 0x23200, 0x23300, 0x23500, 0x23600,
+  0x23700, 0x23800, 0x23900, 0x23a00, 0x23b00, 0x23c00, 0x23e00, 0x23f00,
+  0x24000, 0x24100, 0x24300, 0x24400, 0x24500, 0x24600, 0x24700, 0x24800,
+  0x24900, 0x24a00, 0x24b00, 0x24c00, 0x24d00, 0x24e00, 0x24f00, 0x25000,
+  0x25200, 0x25300, 0x25400, 0x25500, 0x25600, 0x25700, 0x25800, 0x25900,
+  0x25a00, 0x25b00, 0x25c00, 0x25d00, 0x25e00, 0x25f00, 0x26000, 0x26100,
+  0x26200, 0x26300, 0x26400, 0x26500, 0x26600, 0x26700, 0x26800, 0x26900,
+  0x26a00, 0x26d00, 0x26e00, 0x26f00, 0x27000, 0x27100, 0x27200, 0x27300,
+  0x27400, 0x27500, 0x27600, 0x27700, 0x27800, 0x27900, 0x27a00, 0x27b00,
+  0x27c00, 0x27d00, 0x27e00, 0x27f00, 0x28000, 0x28100, 0x28200, 0x28300,
+  0x28400, 0x28500, 0x28600, 0x28700, 0x28800, 0x28900, 0x28a00, 0x28b00,
+  0x28c00, 0x28d00, 0x28e00, 0x28f00, 0x29000, 0x29100, 0x29200, 0x29300,
+  0x29400, 0x29500, 0x29600, 0x29700, 0x29800, 0x29900, 0x29a00, 0x29b00,
+  0x29c00, 0x29d00, 0x29e00, 0x29f00, 0x2a000, 0x2a100, 0x2a200, 0x2a300,
+  0x2a400, 0x2a500, 0x2a600, 0x2f800, 0x2f900, 0x2fa00,
+};
+
+static int
+cns11643_7_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 >= 0x21 && c1 <= 0x66)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if (c2 >= 0x21 && c2 < 0x7f) {
+        unsigned int i = 94 * (c1 - 0x21) + (c2 - 0x21);
+        ucs4_t wc = 0xfffd;
+        unsigned short swc;
+        {
+          if (i < 6539)
+            swc = cns11643_7_2uni_page21[i],
+            wc = cns11643_7_2uni_upages[swc>>8] | (swc & 0xff);
+        }
+        if (wc != 0xfffd) {
+          *pwc = wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
diff --git a/graf2d/win32gdk/gdk/src/iconv/cns11643_inv.h b/graf2d/win32gdk/gdk/src/iconv/cns11643_inv.h
new file mode 100644
index 00000000000..3a7c379a154
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cns11643_inv.h
@@ -0,0 +1,15412 @@
+/*
+ * Copyright (C) 1999-2005 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CNS 11643-1992 planes 1-7, CNS 11643-1986 plane 15
+ */
+
+static const unsigned char cns11643_inv_2charset[3*55442] = {
+  0x1,0x21,0x70, 0x1,0x22,0x78, 0x1,0x22,0x34, 0x1,0x21,0x31,
+  0x1,0x22,0x32, 0x1,0x22,0x33, 0x1,0x25,0x6f, 0x1,0x25,0x6d,
+  0x1,0x25,0x6e, 0x1,0x25,0x70, 0x1,0x25,0x6c, 0x1,0x24,0x75,
+  0x1,0x24,0x76, 0x1,0x24,0x77, 0x1,0x24,0x78, 0x1,0x24,0x79,
+  0x1,0x24,0x7a, 0x1,0x24,0x7b, 0x1,0x24,0x7c, 0x1,0x24,0x7d,
+  0x1,0x24,0x7e, 0x1,0x25,0x21, 0x1,0x25,0x22, 0x1,0x25,0x23,
+  0x1,0x25,0x24, 0x1,0x25,0x25, 0x1,0x25,0x26, 0x1,0x25,0x27,
+  0x1,0x25,0x28, 0x1,0x25,0x29, 0x1,0x25,0x2a, 0x1,0x25,0x2b,
+  0x1,0x25,0x2c, 0x1,0x25,0x2d, 0x1,0x25,0x2e, 0x1,0x25,0x2f,
+  0x1,0x25,0x30, 0x1,0x25,0x31, 0x1,0x25,0x32, 0x1,0x25,0x33,
+  0x1,0x25,0x34, 0x1,0x25,0x35, 0x1,0x25,0x36, 0x1,0x25,0x37,
+  0x1,0x25,0x38, 0x1,0x25,0x39, 0x1,0x25,0x3a, 0x1,0x25,0x3b,
+  0x1,0x25,0x3c, 0x1,0x25,0x3d, 0x1,0x25,0x3e, 0x1,0x25,0x3f,
+  0x1,0x25,0x40, 0x1,0x25,0x41, 0x1,0x25,0x42, 0x1,0x25,0x43,
+  0x1,0x25,0x44, 0x1,0x25,0x45, 0x1,0x25,0x46, 0x1,0x21,0x39,
+  0x1,0x21,0x37, 0x1,0x22,0x5d, 0x1,0x21,0x64, 0x1,0x21,0x65,
+  0x1,0x21,0x66, 0x1,0x21,0x67, 0x1,0x21,0x2d, 0x1,0x21,0x2c,
+  0x1,0x21,0x6a, 0x1,0x21,0x6b, 0x1,0x21,0x6f, 0x1,0x22,0x23,
+  0x1,0x42,0x42, 0x1,0x22,0x6a, 0x1,0x22,0x22, 0x1,0x22,0x6b,
+  0x1,0x24,0x2b, 0x1,0x24,0x2c, 0x1,0x24,0x2d, 0x1,0x24,0x2e,
+  0x1,0x24,0x2f, 0x1,0x24,0x30, 0x1,0x24,0x31, 0x1,0x24,0x32,
+  0x1,0x24,0x33, 0x1,0x24,0x34, 0x1,0x26,0x35, 0x1,0x26,0x36,
+  0x1,0x26,0x37, 0x1,0x26,0x38, 0x1,0x26,0x39, 0x1,0x26,0x3a,
+  0x1,0x26,0x3b, 0x1,0x26,0x3c, 0x1,0x26,0x3d, 0x1,0x26,0x3e,
+  0x1,0x22,0x58, 0x1,0x22,0x55, 0x1,0x22,0x57, 0x1,0x22,0x56,
+  0x1,0x22,0x59, 0x1,0x22,0x5a, 0x1,0x22,0x5c, 0x1,0x22,0x5b,
+  0x1,0x22,0x61, 0x1,0x22,0x35, 0x1,0x22,0x3c, 0x1,0x22,0x49,
+  0x1,0x22,0x48, 0x1,0x22,0x45, 0x1,0x22,0x46, 0x1,0x22,0x4d,
+  0x1,0x22,0x4e, 0x1,0x22,0x50, 0x1,0x22,0x4f, 0x1,0x22,0x44,
+  0x1,0x22,0x3d, 0x1,0x22,0x3b, 0x1,0x22,0x3e, 0x1,0x22,0x39,
+  0x1,0x22,0x3a, 0x1,0x22,0x47, 0x1,0x22,0x4a, 0x1,0x42,0x21,
+  0x1,0x42,0x22, 0x1,0x42,0x23, 0x1,0x42,0x24, 0x1,0x42,0x25,
+  0x1,0x42,0x26, 0x1,0x42,0x27, 0x1,0x42,0x28, 0x1,0x42,0x29,
+  0x1,0x42,0x2a, 0x1,0x42,0x2b, 0x1,0x42,0x2c, 0x1,0x42,0x2d,
+  0x1,0x42,0x2e, 0x1,0x42,0x2f, 0x1,0x42,0x30, 0x1,0x42,0x31,
+  0x1,0x42,0x32, 0x1,0x42,0x33, 0x1,0x42,0x34, 0x1,0x42,0x35,
+  0x1,0x42,0x36, 0x1,0x42,0x37, 0x1,0x42,0x38, 0x1,0x42,0x39,
+  0x1,0x42,0x3a, 0x1,0x42,0x3b, 0x1,0x42,0x3c, 0x1,0x42,0x3d,
+  0x1,0x42,0x3e, 0x1,0x42,0x3f, 0x1,0x42,0x40, 0x1,0x42,0x41,
+  0x1,0x26,0x21, 0x1,0x26,0x22, 0x1,0x26,0x23, 0x1,0x26,0x24,
+  0x1,0x26,0x25, 0x1,0x26,0x26, 0x1,0x26,0x27, 0x1,0x26,0x28,
+  0x1,0x26,0x29, 0x1,0x26,0x2a, 0x1,0x26,0x2b, 0x1,0x26,0x2c,
+  0x1,0x26,0x2d, 0x1,0x26,0x2e, 0x1,0x26,0x2f, 0x1,0x26,0x30,
+  0x1,0x26,0x31, 0x1,0x26,0x32, 0x1,0x26,0x33, 0x1,0x26,0x34,
+  0x1,0x23,0x39, 0x1,0x23,0x3a, 0x1,0x23,0x3c, 0x1,0x23,0x3d,
+  0x1,0x23,0x3e, 0x1,0x23,0x3f, 0x1,0x23,0x37, 0x1,0x23,0x36,
+  0x1,0x23,0x35, 0x1,0x23,0x34, 0x1,0x23,0x33, 0x1,0x23,0x44,
+  0x1,0x23,0x45, 0x1,0x23,0x47, 0x1,0x23,0x46, 0x1,0x23,0x40,
+  0x1,0x23,0x41, 0x1,0x23,0x43, 0x1,0x23,0x42, 0x1,0x23,0x4c,
+  0x1,0x23,0x4d, 0x1,0x23,0x4e, 0x1,0x23,0x24, 0x1,0x23,0x25,
+  0x1,0x23,0x26, 0x1,0x23,0x27, 0x1,0x23,0x28, 0x1,0x23,0x29,
+  0x1,0x23,0x2a, 0x1,0x23,0x2b, 0x1,0x23,0x32, 0x1,0x23,0x31,
+  0x1,0x23,0x30, 0x1,0x23,0x2f, 0x1,0x23,0x2e, 0x1,0x23,0x2d,
+  0x1,0x23,0x2c, 0x1,0x23,0x38, 0x1,0x23,0x3b, 0x1,0x21,0x7c,
+  0x1,0x21,0x7b, 0x1,0x21,0x75, 0x1,0x21,0x74, 0x1,0x21,0x7e,
+  0x1,0x21,0x7d, 0x1,0x21,0x7a, 0x1,0x21,0x79, 0x1,0x21,0x72,
+  0x1,0x21,0x76, 0x1,0x21,0x73, 0x1,0x23,0x48, 0x1,0x23,0x49,
+  0x1,0x23,0x4b, 0x1,0x23,0x4a, 0x1,0x21,0x78, 0x1,0x21,0x77,
+  0x1,0x22,0x54, 0x1,0x22,0x51, 0x1,0x22,0x53, 0x1,0x22,0x52,
+  0x1,0x21,0x21, 0x1,0x21,0x23, 0x1,0x21,0x24, 0x1,0x21,0x71,
+  0x1,0x21,0x52, 0x1,0x21,0x53, 0x1,0x21,0x4e, 0x1,0x21,0x4f,
+  0x1,0x21,0x56, 0x1,0x21,0x57, 0x1,0x21,0x5a, 0x1,0x21,0x5b,
+  0x1,0x21,0x4a, 0x1,0x21,0x4b, 0x1,0x22,0x65, 0x1,0x21,0x46,
+  0x1,0x21,0x47, 0x1,0x21,0x68, 0x1,0x21,0x69, 0x1,0x24,0x35,
+  0x1,0x24,0x36, 0x1,0x24,0x37, 0x1,0x24,0x38, 0x1,0x24,0x39,
+  0x1,0x24,0x3a, 0x1,0x24,0x3b, 0x1,0x24,0x3c, 0x1,0x24,0x3d,
+  0x1,0x21,0x26, 0x1,0x25,0x47, 0x1,0x25,0x48, 0x1,0x25,0x49,
+  0x1,0x25,0x4a, 0x1,0x25,0x4b, 0x1,0x25,0x4c, 0x1,0x25,0x4d,
+  0x1,0x25,0x4e, 0x1,0x25,0x4f, 0x1,0x25,0x50, 0x1,0x25,0x51,
+  0x1,0x25,0x52, 0x1,0x25,0x53, 0x1,0x25,0x54, 0x1,0x25,0x55,
+  0x1,0x25,0x56, 0x1,0x25,0x57, 0x1,0x25,0x58, 0x1,0x25,0x59,
+  0x1,0x25,0x5a, 0x1,0x25,0x5b, 0x1,0x25,0x5c, 0x1,0x25,0x5d,
+  0x1,0x25,0x5e, 0x1,0x25,0x5f, 0x1,0x25,0x60, 0x1,0x25,0x61,
+  0x1,0x25,0x62, 0x1,0x25,0x63, 0x1,0x25,0x64, 0x1,0x25,0x65,
+  0x1,0x25,0x66, 0x1,0x25,0x67, 0x1,0x25,0x68, 0x1,0x25,0x69,
+  0x1,0x25,0x6a, 0x1,0x25,0x6b, 0x1,0x22,0x21, 0x1,0x22,0x75,
+  0x1,0x22,0x76, 0x1,0x22,0x70, 0x1,0x22,0x71, 0x1,0x22,0x72,
+  0x1,0x22,0x74, 0x1,0x22,0x77, 0x1,0x22,0x73, 0x1,0x22,0x4c,
+  0x1,0x22,0x4b, 0x1,0x22,0x6f, 0x6,0x22,0x2c, 0x4,0x22,0x24,
+  0x6,0x21,0x30, 0x6,0x21,0x23, 0xf,0x21,0x6c, 0x4,0x21,0x57,
+  0x4,0x23,0x36, 0x4,0x28,0x35, 0x3,0x34,0x3b, 0x3,0x39,0x6d,
+  0x3,0x27,0x41, 0x3,0x28,0x6c, 0x3,0x23,0x23, 0x4,0x23,0x37,
+  0x4,0x25,0x34, 0x3,0x40,0x34, 0x4,0x21,0x59, 0x3,0x21,0x75,
+  0x3,0x21,0x6e, 0x3,0x21,0x71, 0x3,0x21,0x73, 0xf,0x21,0x44,
+  0x6,0x23,0x4e, 0x3,0x22,0x71, 0x4,0x22,0x31, 0x3,0x22,0x69,
+  0x3,0x22,0x6a, 0xf,0x21,0x72, 0x5,0x23,0x34, 0x3,0x24,0x4a,
+  0x3,0x24,0x47, 0x3,0x24,0x4d, 0x6,0x25,0x71, 0x3,0x27,0x46,
+  0x5,0x25,0x25, 0x4,0x25,0x39, 0x4,0x25,0x3c, 0x3,0x27,0x45,
+  0x5,0x25,0x2b, 0x4,0x25,0x3b, 0x4,0x25,0x38, 0x3,0x27,0x50,
+  0xf,0x25,0x4a, 0x3,0x2b,0x31, 0x6,0x2e,0x5a, 0x4,0x28,0x39,
+  0x3,0x2b,0x30, 0x5,0x28,0x21, 0x4,0x28,0x3a, 0x3,0x2b,0x2a,
+  0x4,0x28,0x37, 0x4,0x28,0x3c, 0x5,0x2b,0x6c, 0x3,0x34,0x49,
+  0x3,0x2f,0x52, 0x4,0x2b,0x65, 0x6,0x35,0x38, 0x4,0x30,0x45,
+  0x3,0x34,0x3e, 0x3,0x34,0x48, 0x4,0x30,0x4a, 0x4,0x36,0x38,
+  0x3,0x39,0x73, 0x4,0x36,0x32, 0x4,0x36,0x37, 0x6,0x46,0x55,
+  0x6,0x49,0x7b, 0x3,0x39,0x74, 0x3,0x40,0x35, 0x3,0x40,0x38,
+  0x3,0x40,0x3b, 0x4,0x3c,0x2c, 0x4,0x3c,0x2d, 0x4,0x3c,0x28,
+  0x4,0x3c,0x2a, 0x5,0x44,0x57, 0x4,0x42,0x37, 0x4,0x42,0x33,
+  0x4,0x42,0x2e, 0x3,0x45,0x78, 0x6,0x5a,0x73, 0x4,0x42,0x2f,
+  0x3,0x45,0x73, 0x4,0x4f,0x59, 0x3,0x45,0x72, 0x3,0x45,0x6f,
+  0x3,0x45,0x77, 0x4,0x42,0x32, 0x4,0x48,0x7b, 0x3,0x4b,0x26,
+  0x3,0x4b,0x25, 0x4,0x48,0x7d, 0x3,0x4b,0x24, 0x3,0x4b,0x28,
+  0x3,0x4b,0x2a, 0x3,0x50,0x32, 0x4,0x4f,0x5d, 0x5,0x53,0x59,
+  0x4,0x4f,0x5b, 0x3,0x54,0x3f, 0x3,0x57,0x53, 0x4,0x5a,0x67,
+  0x4,0x5a,0x68, 0x4,0x5f,0x49, 0x4,0x63,0x2f, 0x3,0x5c,0x33,
+  0x3,0x5c,0x31, 0x7,0x52,0x74, 0x7,0x57,0x4c, 0x4,0x6a,0x41,
+  0x3,0x61,0x3c, 0x4,0x22,0x33, 0xf,0x26,0x5a, 0x4,0x2b,0x69,
+  0x3,0x57,0x54, 0x3,0x21,0x76, 0x3,0x22,0x79, 0x3,0x24,0x55,
+  0x5,0x23,0x37, 0x6,0x25,0x7b, 0x6,0x25,0x7d, 0x3,0x24,0x56,
+  0x3,0x2b,0x38, 0x7,0x4d,0x3d, 0x3,0x2a,0x4c, 0x4,0x30,0x4c,
+  0x5,0x31,0x26, 0x4,0x36,0x3d, 0x4,0x3c,0x32, 0x4,0x6a,0x42,
+  0x3,0x2b,0x3a, 0x3,0x39,0x78, 0x4,0x49,0x22, 0x3,0x21,0x50,
+  0x3,0x23,0x21, 0x3,0x24,0x58, 0x5,0x25,0x2e, 0x3,0x27,0x57,
+  0x3,0x27,0x56, 0x3,0x27,0x58, 0x4,0x28,0x43, 0x3,0x2b,0x3c,
+  0x3,0x2f,0x5d, 0x3,0x2f,0x5c, 0x4,0x30,0x4d, 0x3,0x39,0x7b,
+  0x3,0x39,0x7c, 0x4,0x3c,0x34, 0x3,0x45,0x79, 0x5,0x31,0x29,
+  0x4,0x21,0x61, 0x6,0x22,0x41, 0x3,0x21,0x7e, 0x4,0x22,0x3c,
+  0x5,0x22,0x30, 0x4,0x23,0x3e, 0x4,0x23,0x3f, 0x4,0x25,0x4a,
+  0x4,0x25,0x4c, 0x4,0x25,0x48, 0x4,0x25,0x47, 0x3,0x2b,0x41,
+  0x3,0x2b,0x45, 0x3,0x2b,0x42, 0x5,0x2b,0x7c, 0x4,0x30,0x53,
+  0x3,0x2f,0x67, 0x3,0x2f,0x69, 0x4,0x30,0x57, 0x4,0x30,0x58,
+  0x4,0x30,0x52, 0x5,0x31,0x2c, 0x4,0x30,0x54, 0x4,0x30,0x59,
+  0x3,0x3a,0x24, 0x6,0x50,0x6c, 0x4,0x36,0x42, 0x4,0x36,0x45,
+  0x3,0x3a,0x22, 0x5,0x3d,0x70, 0x3,0x40,0x42, 0x4,0x42,0x41,
+  0x4,0x42,0x43, 0x4,0x42,0x42, 0x4,0x42,0x3c, 0x3,0x45,0x7d,
+  0x3,0x45,0x7b, 0x4,0x42,0x3f, 0x4,0x42,0x3e, 0x3,0x45,0x7c,
+  0x4,0x49,0x23, 0x4,0x4f,0x62, 0x4,0x4f,0x61, 0x4,0x4f,0x63,
+  0x5,0x61,0x3b, 0x4,0x55,0x6c, 0x7,0x3e,0x7d, 0x4,0x5f,0x4a,
+  0x4,0x63,0x30, 0x4,0x21,0x64, 0x4,0x22,0x40, 0x4,0x23,0x44,
+  0x3,0x24,0x64, 0x4,0x25,0x4f, 0x6,0x29,0x6f, 0x6,0x2f,0x27,
+  0x4,0x2b,0x75, 0x3,0x2f,0x6b, 0x4,0x30,0x5a, 0x4,0x36,0x4b,
+  0x3,0x46,0x22, 0x4,0x55,0x6f, 0x3,0x54,0x43, 0x4,0x55,0x70,
+  0x5,0x53,0x63, 0x4,0x5a,0x6e, 0x4,0x30,0x5c, 0x4,0x36,0x4d,
+  0x5,0x3d,0x78, 0x6,0x29,0x72, 0x3,0x34,0x53, 0x5,0x70,0x78,
+  0x4,0x23,0x4b, 0x6,0x26,0x38, 0x4,0x2b,0x77, 0x3,0x3a,0x25,
+  0x6,0x50,0x76, 0x4,0x3c,0x3e, 0x5,0x44,0x6c, 0x4,0x6d,0x53,
+  0x6,0x26,0x36, 0x4,0x36,0x50, 0x3,0x21,0x58, 0x6,0x23,0x71,
+  0x3,0x23,0x2c, 0x6,0x50,0x7a, 0x3,0x27,0x64, 0x4,0x21,0x2b,
+  0x6,0x21,0x3b, 0x6,0x28,0x64, 0x4,0x25,0x56, 0x3,0x23,0x30,
+  0x5,0x22,0x3c, 0x3,0x23,0x2e, 0x3,0x24,0x6a, 0x3,0x24,0x69,
+  0x3,0x24,0x68, 0x3,0x27,0x68, 0x6,0x2a,0x2a, 0x3,0x2b,0x4c,
+  0x3,0x2f,0x70, 0x4,0x2b,0x7a, 0x3,0x2f,0x71, 0x4,0x36,0x51,
+  0x6,0x51,0x22, 0x5,0x4c,0x31, 0x3,0x46,0x24, 0x4,0x49,0x27,
+  0x3,0x60,0x70, 0x3,0x21,0x5d, 0x3,0x2f,0x72, 0x6,0x3d,0x61,
+  0x3,0x34,0x56, 0x4,0x49,0x29, 0x5,0x21,0x41, 0x3,0x21,0x5f,
+  0x3,0x23,0x32, 0x4,0x25,0x5a, 0x4,0x28,0x57, 0x3,0x3f,0x78,
+  0x3,0x46,0x27, 0x4,0x47,0x56, 0x4,0x21,0x6b, 0x3,0x22,0x30,
+  0x3,0x22,0x2c, 0x3,0x23,0x38, 0x3,0x23,0x36, 0x3,0x24,0x6c,
+  0x4,0x23,0x51, 0x3,0x24,0x6b, 0x3,0x24,0x71, 0x4,0x23,0x54,
+  0x4,0x23,0x59, 0x3,0x24,0x72, 0x4,0x23,0x53, 0x3,0x24,0x6f,
+  0x3,0x24,0x6e, 0x3,0x24,0x7a, 0xf,0x23,0x49, 0x3,0x25,0x25,
+  0x3,0x27,0x7a, 0x3,0x27,0x6d, 0x4,0x25,0x5d, 0x3,0x27,0x76,
+  0x5,0x25,0x42, 0x6,0x2a,0x39, 0x3,0x2b,0x52, 0x3,0x2b,0x60,
+  0x3,0x2b,0x5f, 0x3,0x2b,0x62, 0x3,0x2b,0x5a, 0x4,0x28,0x59,
+  0x4,0x28,0x5c, 0x3,0x2b,0x56, 0xf,0x29,0x5c, 0x4,0x2c,0x25,
+  0x3,0x2f,0x7d, 0x4,0x2b,0x7e, 0x3,0x2f,0x75, 0x3,0x2f,0x7c,
+  0x4,0x2c,0x21, 0x4,0x2b,0x7d, 0x6,0x35,0x7d, 0x3,0x30,0x24,
+  0x5,0x2c,0x43, 0x3,0x34,0x5d, 0x3,0x34,0x65, 0x4,0x30,0x6a,
+  0x5,0x36,0x70, 0x3,0x34,0x63, 0x3,0x34,0x5c, 0x4,0x30,0x70,
+  0x3,0x34,0x5a, 0x4,0x30,0x73, 0x4,0x30,0x71, 0x4,0x30,0x6d,
+  0x4,0x30,0x6c, 0xf,0x33,0x43, 0x3,0x38,0x53, 0x4,0x30,0x6f,
+  0x5,0x36,0x76, 0x3,0x3a,0x32, 0x4,0x36,0x67, 0x3,0x3a,0x35,
+  0x3,0x3a,0x2c, 0x4,0x36,0x5e, 0x4,0x36,0x59, 0x3,0x3a,0x39,
+  0x3,0x3a,0x3e, 0x3,0x3a,0x2d, 0x4,0x36,0x60, 0x3,0x3a,0x3d,
+  0x4,0x36,0x5f, 0x3,0x3a,0x37, 0x6,0x47,0x39, 0x5,0x36,0x79,
+  0x5,0x36,0x7a, 0x3,0x3a,0x30, 0x4,0x36,0x58, 0x4,0x36,0x65,
+  0x4,0x36,0x63, 0x3,0x3a,0x41, 0x5,0x36,0x6e, 0x3,0x3a,0x3f,
+  0x3,0x3a,0x3a, 0x5,0x3e,0x39, 0x4,0x3c,0x4a, 0x4,0x3c,0x46,
+  0x3,0x40,0x4f, 0x5,0x3e,0x3d, 0x4,0x3c,0x47, 0x4,0x3c,0x4c,
+  0x3,0x40,0x4d, 0x3,0x40,0x50, 0x6,0x51,0x32, 0x4,0x42,0x52,
+  0x3,0x46,0x32, 0x3,0x46,0x2f, 0x3,0x46,0x2d, 0x4,0x42,0x4f,
+  0x4,0x42,0x4a, 0x4,0x42,0x55, 0x3,0x46,0x2b, 0x3,0x4b,0x3a,
+  0x4,0x42,0x53, 0x4,0x42,0x56, 0x4,0x42,0x51, 0x5,0x45,0x22,
+  0x4,0x49,0x30, 0x4,0x49,0x2c, 0x3,0x4b,0x42, 0x4,0x49,0x2d,
+  0x3,0x4b,0x36, 0x7,0x21,0x4e, 0x4,0x4f,0x6b, 0x4,0x4f,0x6c,
+  0x3,0x50,0x41, 0x4,0x4f,0x67, 0x4,0x4f,0x6a, 0x4,0x4f,0x6f,
+  0x3,0x50,0x3c, 0x3,0x50,0x3a, 0x7,0x37,0x37, 0x4,0x55,0x72,
+  0x3,0x54,0x46, 0x4,0x55,0x73, 0x4,0x4f,0x6d, 0x5,0x61,0x40,
+  0x4,0x5a,0x70, 0x3,0x57,0x56, 0x5,0x61,0x45, 0x4,0x5f,0x4c,
+  0x5,0x67,0x59, 0x5,0x6b,0x73, 0x3,0x5c,0x35, 0x3,0x5e,0x27,
+  0x4,0x66,0x32, 0x3,0x60,0x2e, 0x3,0x60,0x2d, 0x4,0x6c,0x6c,
+  0x7,0x62,0x2f, 0x3,0x22,0x32, 0x3,0x22,0x21, 0x3,0x23,0x3d,
+  0x5,0x25,0x53, 0x3,0x27,0x7e, 0x3,0x2b,0x64, 0x3,0x30,0x26,
+  0x4,0x42,0x58, 0x4,0x63,0x32, 0x3,0x22,0x33, 0x3,0x25,0x2e,
+  0x4,0x23,0x5f, 0x3,0x25,0x39, 0x3,0x25,0x3a, 0x4,0x23,0x5e,
+  0x3,0x25,0x3d, 0x3,0x25,0x3f, 0x3,0x25,0x3b, 0x3,0x25,0x34,
+  0x3,0x28,0x27, 0x4,0x25,0x6d, 0x3,0x28,0x2b, 0x3,0x28,0x2c,
+  0x3,0x2b,0x76, 0x6,0x2f,0x65, 0x3,0x2b,0x74, 0x3,0x2b,0x75,
+  0x3,0x2b,0x73, 0x3,0x2b,0x6f, 0x3,0x30,0x29, 0x4,0x2c,0x2f,
+  0x4,0x2c,0x31, 0x3,0x30,0x2d, 0x3,0x30,0x2c, 0x3,0x30,0x2e,
+  0x3,0x30,0x31, 0x3,0x34,0x6c, 0x3,0x34,0x6d, 0x3,0x34,0x73,
+  0x3,0x34,0x6a, 0xf,0x33,0x57, 0x4,0x31,0x21, 0x4,0x36,0x6b,
+  0x3,0x3a,0x46, 0x4,0x36,0x6e, 0x3,0x3a,0x51, 0x6,0x47,0x4e,
+  0x3,0x3a,0x48, 0x3,0x3a,0x4d, 0x4,0x3c,0x59, 0x4,0x3c,0x5b,
+  0x3,0x40,0x53, 0x3,0x40,0x55, 0x4,0x3c,0x56, 0x4,0x3c,0x58,
+  0x4,0x42,0x5e, 0x4,0x42,0x5d, 0x4,0x42,0x5b, 0x3,0x46,0x3b,
+  0x4,0x42,0x5f, 0x3,0x46,0x39, 0x7,0x21,0x6a, 0x3,0x4b,0x52,
+  0x3,0x4b,0x48, 0x4,0x49,0x33, 0x3,0x4b,0x4a, 0x3,0x4b,0x4e,
+  0xf,0x4e,0x25, 0xf,0x4e,0x2e, 0x4,0x49,0x2a, 0x3,0x50,0x44,
+  0x4,0x4f,0x78, 0x3,0x50,0x47, 0x3,0x50,0x42, 0x3,0x50,0x43,
+  0x3,0x50,0x46, 0x3,0x50,0x45, 0x4,0x55,0x7c, 0x3,0x54,0x4d,
+  0x3,0x54,0x4a, 0x4,0x55,0x7b, 0x7,0x3f,0x30, 0x3,0x57,0x5d,
+  0x7,0x46,0x44, 0x5,0x6b,0x76, 0x3,0x60,0x72, 0x4,0x6c,0x6e,
+  0x5,0x37,0x3c, 0x3,0x4d,0x41, 0x3,0x2b,0x78, 0x4,0x28,0x61,
+  0x5,0x25,0x58, 0x4,0x36,0x77, 0x4,0x42,0x60, 0x3,0x46,0x47,
+  0x4,0x5a,0x7a, 0x3,0x22,0x3a, 0x3,0x23,0x46, 0x3,0x23,0x48,
+  0x4,0x23,0x65, 0x3,0x25,0x4a, 0x4,0x25,0x71, 0x5,0x25,0x59,
+  0x4,0x25,0x77, 0x4,0x25,0x73, 0x4,0x25,0x78, 0x3,0x2b,0x7d,
+  0x4,0x31,0x25, 0x6,0x3e,0x42, 0x3,0x34,0x7a, 0x3,0x3a,0x55,
+  0x4,0x3c,0x5c, 0x3,0x50,0x3e, 0x3,0x21,0x74, 0x3,0x23,0x4c,
+  0x3,0x23,0x4a, 0x4,0x22,0x56, 0x4,0x22,0x59, 0x4,0x22,0x55,
+  0x3,0x23,0x49, 0x3,0x25,0x52, 0x3,0x25,0x57, 0x3,0x25,0x50,
+  0x3,0x25,0x4f, 0x3,0x25,0x4d, 0x3,0x25,0x54, 0x3,0x28,0x31,
+  0x3,0x28,0x3b, 0x4,0x25,0x7b, 0x3,0x28,0x42, 0x3,0x28,0x32,
+  0x3,0x28,0x3a, 0x3,0x28,0x43, 0x3,0x28,0x47, 0x3,0x28,0x34,
+  0x4,0x26,0x21, 0x3,0x28,0x44, 0x3,0x28,0x3e, 0x3,0x28,0x36,
+  0x3,0x28,0x3c, 0x5,0x25,0x5d, 0x3,0x28,0x39, 0x3,0x28,0x30,
+  0x4,0x28,0x6d, 0x4,0x28,0x69, 0x3,0x2b,0x7e, 0x3,0x2c,0x22,
+  0xf,0x2a,0x2a, 0x4,0x28,0x67, 0x3,0x30,0x3f, 0x3,0x30,0x42,
+  0x3,0x30,0x3d, 0x3,0x30,0x49, 0x3,0x30,0x47, 0x4,0x2c,0x3b,
+  0x3,0x30,0x43, 0x3,0x30,0x50, 0x3,0x30,0x4c, 0x3,0x30,0x44,
+  0x4,0x2c,0x3f, 0x4,0x2c,0x3a, 0x3,0x30,0x39, 0x4,0x2c,0x3c,
+  0x3,0x30,0x51, 0x3,0x30,0x46, 0x3,0x30,0x41, 0x3,0x30,0x3a,
+  0xf,0x2e,0x6b, 0xf,0x2e,0x78, 0x4,0x31,0x29, 0x3,0x35,0x26,
+  0x3,0x35,0x2d, 0x3,0x35,0x21, 0x3,0x35,0x36, 0x4,0x31,0x28,
+  0x3,0x35,0x2c, 0x3,0x35,0x23, 0x3,0x35,0x25, 0x3,0x3a,0x71,
+  0x3,0x3a,0x67, 0x3,0x3a,0x74, 0x3,0x3a,0x64, 0x3,0x3a,0x76,
+  0x3,0x3a,0x6c, 0x3,0x3a,0x6a, 0x3,0x3a,0x65, 0x5,0x37,0x4e,
+  0x3,0x3a,0x6e, 0x5,0x37,0x46, 0x4,0x36,0x7e, 0x3,0x3a,0x6f,
+  0x3,0x3a,0x5f, 0x4,0x36,0x7d, 0x3,0x3a,0x70, 0x3,0x3a,0x5d,
+  0xf,0x3a,0x3c, 0x3,0x3a,0x6d, 0x3,0x3a,0x69, 0x3,0x3a,0x68,
+  0x4,0x3c,0x5f, 0x3,0x40,0x62, 0x4,0x3c,0x61, 0x3,0x40,0x6e,
+  0x3,0x40,0x6d, 0x3,0x40,0x68, 0x3,0x40,0x63, 0x4,0x3c,0x64,
+  0x3,0x40,0x65, 0x4,0x3c,0x63, 0x3,0x40,0x70, 0x3,0x40,0x6b,
+  0x3,0x40,0x6f, 0x3,0x40,0x6c, 0x3,0x40,0x69, 0x3,0x46,0x4b,
+  0x4,0x42,0x67, 0x4,0x42,0x6c, 0x4,0x42,0x68, 0x4,0x42,0x66,
+  0x3,0x46,0x49, 0x3,0x46,0x52, 0x3,0x46,0x51, 0x4,0x42,0x6b,
+  0x4,0x42,0x6d, 0x3,0x46,0x4d, 0x3,0x46,0x4e, 0x4,0x42,0x69,
+  0x4,0x49,0x3c, 0x4,0x49,0x3a, 0x3,0x4b,0x59, 0x3,0x4b,0x57,
+  0x4,0x49,0x40, 0x3,0x4b,0x55, 0x3,0x50,0x52, 0x3,0x50,0x55,
+  0x4,0x50,0x21, 0xf,0x54,0x2a, 0x4,0x56,0x22, 0x4,0x56,0x24,
+  0x3,0x57,0x5f, 0x3,0x57,0x60, 0x4,0x5f,0x54, 0x5,0x67,0x5e,
+  0x3,0x5a,0x30, 0x3,0x5a,0x32, 0x3,0x5c,0x37, 0x4,0x63,0x35,
+  0x3,0x5c,0x38, 0x4,0x66,0x37, 0x4,0x68,0x65, 0x3,0x61,0x62,
+  0x3,0x61,0x63, 0x3,0x23,0x4e, 0x6,0x26,0x78, 0x4,0x23,0x6d,
+  0x3,0x28,0x49, 0x4,0x28,0x70, 0x4,0x2c,0x41, 0x3,0x30,0x54,
+  0x3,0x3a,0x7d, 0x4,0x3c,0x67, 0x7,0x2d,0x2d, 0x3,0x61,0x3d,
+  0x3,0x22,0x3c, 0x3,0x23,0x4f, 0x6,0x26,0x79, 0x3,0x25,0x59,
+  0x4,0x23,0x70, 0x3,0x25,0x5b, 0x6,0x26,0x7a, 0x3,0x28,0x4f,
+  0x5,0x28,0x6e, 0x3,0x2c,0x30, 0x3,0x2c,0x31, 0x3,0x2c,0x33,
+  0x4,0x2c,0x42, 0x5,0x2c,0x7c, 0x6,0x36,0x5d, 0x3,0x35,0x42,
+  0x3,0x35,0x3d, 0x3,0x35,0x3e, 0x4,0x31,0x2e, 0x6,0x3e,0x5a,
+  0x3,0x35,0x40, 0x3,0x3b,0x21, 0x4,0x37,0x22, 0x4,0x3c,0x6a,
+  0x4,0x3c,0x6c, 0x4,0x3c,0x6f, 0x3,0x40,0x77, 0x4,0x42,0x74,
+  0x4,0x42,0x75, 0x3,0x4b,0x60, 0x4,0x42,0x77, 0x4,0x49,0x43,
+  0x4,0x49,0x45, 0x4,0x49,0x46, 0x4,0x5a,0x7d, 0x3,0x5e,0x2b,
+  0x7,0x62,0x35, 0x4,0x23,0x71, 0x4,0x26,0x26, 0x6,0x36,0x68,
+  0x3,0x3b,0x22, 0x4,0x2c,0x4c, 0x6,0x3e,0x64, 0x4,0x42,0x78,
+  0x5,0x4c,0x63, 0x4,0x22,0x5d, 0x4,0x23,0x74, 0x4,0x26,0x28,
+  0x4,0x26,0x27, 0x4,0x28,0x74, 0x4,0x28,0x75, 0x4,0x2c,0x4d,
+  0x5,0x31,0x75, 0x4,0x31,0x33, 0x5,0x31,0x73, 0x4,0x31,0x32,
+  0x4,0x37,0x28, 0x4,0x37,0x29, 0x4,0x3c,0x71, 0x4,0x42,0x79,
+  0x3,0x22,0x40, 0x3,0x23,0x53, 0x4,0x26,0x2a, 0x3,0x28,0x52,
+  0x3,0x28,0x53, 0x4,0x28,0x79, 0x4,0x28,0x78, 0x3,0x2c,0x39,
+  0x3,0x2c,0x38, 0x3,0x2c,0x36, 0x4,0x2c,0x4e, 0x6,0x3e,0x6b,
+  0x3,0x35,0x45, 0x4,0x37,0x2b, 0x5,0x37,0x66, 0x4,0x42,0x7d,
+  0x4,0x49,0x4a, 0x3,0x5a,0x37, 0x3,0x21,0x62, 0x4,0x23,0x77,
+  0x3,0x22,0x42, 0x3,0x22,0x43, 0x3,0x22,0x41, 0x3,0x22,0x44,
+  0x3,0x23,0x56, 0x4,0x22,0x61, 0x5,0x22,0x51, 0x4,0x23,0x7b,
+  0x5,0x22,0x50, 0x3,0x23,0x57, 0x3,0x23,0x58, 0x4,0x23,0x78,
+  0x4,0x23,0x79, 0x3,0x25,0x60, 0x5,0x23,0x70, 0x5,0x23,0x74,
+  0x3,0x25,0x64, 0x3,0x25,0x65, 0x4,0x23,0x76, 0x3,0x28,0x5b,
+  0x6,0x2a,0x7b, 0x4,0x26,0x31, 0x4,0x26,0x32, 0x4,0x26,0x2e,
+  0x3,0x28,0x56, 0x6,0x2a,0x76, 0x3,0x28,0x59, 0x3,0x28,0x5a,
+  0x5,0x25,0x6e, 0x3,0x2c,0x3a, 0x4,0x28,0x7b, 0x4,0x2c,0x5b,
+  0x4,0x2c,0x53, 0x4,0x2c,0x51, 0x3,0x30,0x60, 0x4,0x2c,0x5f,
+  0x4,0x2c,0x55, 0x3,0x30,0x5c, 0x4,0x2c,0x5a, 0x4,0x2c,0x5e,
+  0x4,0x2c,0x57, 0x3,0x30,0x5d, 0x6,0x36,0x7c, 0x5,0x2d,0x2e,
+  0x3,0x30,0x65, 0x4,0x2c,0x54, 0x3,0x35,0x56, 0x3,0x35,0x49,
+  0x4,0x31,0x37, 0x3,0x35,0x4c, 0x4,0x31,0x3d, 0x6,0x3e,0x75,
+  0x3,0x35,0x4d, 0x4,0x31,0x39, 0x6,0x3e,0x78, 0x3,0x35,0x50,
+  0xf,0x34,0x3f, 0x3,0x35,0x53, 0x3,0x3b,0x2f, 0x3,0x3b,0x32,
+  0x3,0x3b,0x29, 0x4,0x37,0x32, 0x4,0x37,0x34, 0x3,0x3b,0x35,
+  0x4,0x3c,0x72, 0x3,0x3b,0x30, 0x3,0x3b,0x2c, 0x4,0x3c,0x76,
+  0x4,0x3c,0x73, 0x4,0x3c,0x7e, 0x5,0x3e,0x6d, 0x4,0x3d,0x21,
+  0x6,0x52,0x34, 0x3,0x40,0x7b, 0x4,0x3c,0x77, 0x4,0x43,0x22,
+  0x6,0x5c,0x44, 0x4,0x43,0x2d, 0x4,0x43,0x2a, 0x4,0x43,0x21,
+  0x3,0x46,0x55, 0x4,0x43,0x24, 0x3,0x46,0x5b, 0x3,0x46,0x58,
+  0x4,0x43,0x2e, 0x3,0x46,0x57, 0x4,0x49,0x50, 0x4,0x49,0x4c,
+  0x5,0x4c,0x6c, 0x3,0x4b,0x62, 0x5,0x4c,0x68, 0x4,0x49,0x4b,
+  0x4,0x49,0x53, 0x3,0x4b,0x64, 0x4,0x49,0x4f, 0x4,0x49,0x4d,
+  0x3,0x4b,0x61, 0x4,0x49,0x54, 0x4,0x50,0x26, 0x4,0x50,0x27,
+  0x4,0x56,0x28, 0x4,0x50,0x25, 0x5,0x54,0x36, 0x3,0x50,0x59,
+  0x7,0x2d,0x4c, 0x3,0x54,0x5a, 0x3,0x54,0x56, 0x5,0x5b,0x3c,
+  0x4,0x56,0x27, 0x3,0x54,0x58, 0x7,0x3f,0x44, 0x4,0x5f,0x5a,
+  0x5,0x67,0x63, 0x5,0x67,0x64, 0x4,0x66,0x3a, 0x3,0x5e,0x2c,
+  0x4,0x68,0x68, 0x5,0x7b,0x3d, 0x3,0x23,0x5b, 0x6,0x21,0x6e,
+  0x3,0x3b,0x38, 0x4,0x49,0x55, 0x3,0x22,0x45, 0x4,0x31,0x42,
+  0x3,0x22,0x46, 0x4,0x22,0x65, 0x4,0x22,0x66, 0x3,0x23,0x5d,
+  0x4,0x24,0x22, 0x4,0x24,0x24, 0x3,0x25,0x69, 0x4,0x24,0x21,
+  0x3,0x25,0x6a, 0xf,0x24,0x25, 0x4,0x26,0x36, 0x4,0x26,0x37,
+  0x4,0x29,0x25, 0x4,0x24,0x25, 0x4,0x29,0x22, 0x4,0x29,0x24,
+  0x6,0x30,0x63, 0x3,0x2c,0x47, 0x4,0x29,0x23, 0x4,0x29,0x21,
+  0x4,0x2c,0x66, 0x4,0x2c,0x68, 0x4,0x31,0x47, 0x4,0x31,0x48,
+  0x4,0x31,0x45, 0x4,0x31,0x49, 0x3,0x35,0x5c, 0x4,0x37,0x3b,
+  0x4,0x37,0x36, 0x4,0x37,0x3d, 0x4,0x37,0x3a, 0x3,0x3b,0x3c,
+  0x4,0x37,0x3c, 0x3,0x3b,0x39, 0x4,0x37,0x39, 0x4,0x3d,0x28,
+  0x4,0x3d,0x23, 0x4,0x3d,0x27, 0x4,0x3d,0x26, 0x4,0x3d,0x29,
+  0x4,0x43,0x33, 0x4,0x43,0x32, 0x4,0x43,0x31, 0x4,0x43,0x2f,
+  0x3,0x4b,0x6e, 0x3,0x4b,0x6f, 0x4,0x50,0x29, 0x4,0x56,0x2d,
+  0x4,0x56,0x2b, 0x4,0x63,0x3b, 0x4,0x63,0x3a, 0x3,0x5f,0x44,
+  0x4,0x68,0x6b, 0x6,0x48,0x44, 0x3,0x46,0x5e, 0x4,0x50,0x2b,
+  0x3,0x23,0x60, 0x3,0x23,0x5f, 0x3,0x23,0x5e, 0x3,0x25,0x6c,
+  0x6,0x27,0x47, 0x4,0x26,0x38, 0x4,0x26,0x3d, 0x4,0x26,0x3b,
+  0x5,0x26,0x26, 0x4,0x26,0x3c, 0x3,0x28,0x64, 0x4,0x26,0x3a,
+  0x3,0x28,0x66, 0xf,0x2f,0x38, 0x3,0x2c,0x49, 0x3,0x2c,0x4a,
+  0x4,0x29,0x2a, 0x5,0x29,0x26, 0x4,0x29,0x29, 0x4,0x29,0x28,
+  0x4,0x2c,0x6b, 0x4,0x2c,0x6d, 0x4,0x2c,0x6c, 0x3,0x30,0x6d,
+  0x3,0x35,0x5e, 0x4,0x31,0x4e, 0x4,0x31,0x4c, 0x4,0x31,0x4f,
+  0x3,0x35,0x5d, 0x5,0x38,0x29, 0x4,0x37,0x40, 0x4,0x37,0x41,
+  0x3,0x3b,0x41, 0x5,0x3f,0x21, 0x4,0x43,0x36, 0x3,0x46,0x5f,
+  0x4,0x43,0x39, 0x4,0x43,0x3a, 0x4,0x49,0x5b, 0x4,0x49,0x5c,
+  0x3,0x4b,0x71, 0x3,0x50,0x5d, 0x4,0x50,0x2c, 0x4,0x50,0x2e,
+  0x5,0x54,0x42, 0x4,0x5f,0x5e, 0x4,0x63,0x3c, 0x4,0x24,0x29,
+  0x3,0x28,0x6a, 0x3,0x46,0x62, 0x7,0x2d,0x5b, 0x4,0x29,0x2b,
+  0x4,0x3d,0x2d, 0x6,0x21,0x79, 0x4,0x22,0x6a, 0x3,0x23,0x63,
+  0x3,0x23,0x64, 0x3,0x25,0x70, 0x3,0x28,0x6f, 0x4,0x26,0x40,
+  0x4,0x26,0x41, 0x3,0x2c,0x4e, 0x4,0x29,0x2d, 0x6,0x30,0x7a,
+  0x4,0x29,0x2e, 0x3,0x2c,0x4f, 0x4,0x2c,0x71, 0x5,0x32,0x46,
+  0x4,0x31,0x51, 0x4,0x2c,0x72, 0x3,0x3b,0x46, 0x3,0x3b,0x43,
+  0x5,0x3f,0x29, 0x4,0x3d,0x2f, 0x4,0x3d,0x2e, 0x6,0x52,0x4d,
+  0x4,0x49,0x5d, 0x4,0x49,0x5f, 0x3,0x5e,0x2e, 0x4,0x26,0x42,
+  0x4,0x50,0x31, 0x6,0x24,0x70, 0x3,0x28,0x73, 0x4,0x26,0x43,
+  0x3,0x28,0x72, 0x3,0x35,0x64, 0x3,0x3b,0x48, 0x3,0x3b,0x49,
+  0x4,0x43,0x3b, 0x4,0x49,0x61, 0x3,0x50,0x5f, 0x3,0x22,0x4b,
+  0x6,0x2b,0x3e, 0x3,0x28,0x74, 0x4,0x29,0x32, 0x4,0x29,0x34,
+  0x3,0x2c,0x52, 0x5,0x29,0x2f, 0x5,0x29,0x33, 0x3,0x2c,0x53,
+  0x6,0x31,0x25, 0x5,0x2d,0x47, 0xf,0x2f,0x3e, 0x4,0x31,0x54,
+  0x3,0x35,0x66, 0x3,0x35,0x67, 0x4,0x37,0x49, 0x3,0x3b,0x4a,
+  0x4,0x37,0x48, 0x4,0x3d,0x33, 0x5,0x45,0x69, 0x4,0x43,0x3d,
+  0x6,0x5c,0x67, 0x3,0x50,0x60, 0x4,0x50,0x34, 0x4,0x56,0x2f,
+  0x6,0x21,0x7e, 0x3,0x23,0x65, 0x3,0x23,0x68, 0x4,0x24,0x31,
+  0x5,0x22,0x67, 0x4,0x22,0x70, 0x3,0x28,0x7b, 0x3,0x28,0x7d,
+  0x3,0x25,0x79, 0x4,0x24,0x2e, 0x3,0x28,0x7c, 0x4,0x24,0x30,
+  0x4,0x24,0x33, 0x3,0x25,0x73, 0x4,0x24,0x2f, 0x4,0x24,0x32,
+  0x3,0x26,0x24, 0x3,0x28,0x79, 0x4,0x29,0x35, 0x4,0x29,0x37,
+  0x4,0x26,0x4d, 0x3,0x2c,0x59, 0x3,0x29,0x24, 0x4,0x26,0x48,
+  0x3,0x29,0x23, 0x4,0x26,0x4e, 0x4,0x26,0x4c, 0x4,0x26,0x46,
+  0xf,0x2a,0x3e, 0x3,0x2c,0x58, 0x4,0x29,0x41, 0x3,0x2c,0x62,
+  0x4,0x29,0x3c, 0x4,0x26,0x49, 0x4,0x29,0x39, 0x3,0x30,0x7d,
+  0x6,0x37,0x54, 0x4,0x29,0x3d, 0x5,0x29,0x35, 0x4,0x2d,0x28,
+  0x4,0x29,0x48, 0x4,0x29,0x3a, 0x4,0x29,0x3b, 0x4,0x29,0x40,
+  0x3,0x2c,0x55, 0x6,0x37,0x5a, 0x3,0x30,0x7c, 0x3,0x2c,0x5e,
+  0x4,0x31,0x5b, 0x5,0x2d,0x5a, 0x3,0x35,0x73, 0x4,0x2d,0x22,
+  0x3,0x35,0x69, 0x3,0x30,0x75, 0x4,0x2d,0x23, 0x3,0x35,0x70,
+  0x4,0x2d,0x24, 0x3,0x30,0x77, 0x6,0x37,0x5e, 0x3,0x31,0x24,
+  0x4,0x2d,0x2b, 0x4,0x31,0x5a, 0x4,0x31,0x5c, 0x4,0x31,0x62,
+  0x3,0x35,0x6b, 0x6,0x48,0x6f, 0x4,0x31,0x63, 0x3,0x35,0x75,
+  0x4,0x31,0x60, 0x5,0x32,0x5b, 0x4,0x31,0x5d, 0x3,0x35,0x6c,
+  0x3,0x3b,0x4e, 0x4,0x31,0x6c, 0x4,0x31,0x67, 0x3,0x3b,0x4c,
+  0x3,0x35,0x6d, 0x3,0x35,0x77, 0x3,0x3b,0x57, 0x4,0x31,0x64,
+  0x6,0x48,0x75, 0x3,0x3b,0x53, 0x4,0x31,0x66, 0x4,0x31,0x5e,
+  0x5,0x2d,0x57, 0x3,0x3b,0x52, 0x5,0x38,0x42, 0x4,0x31,0x6a,
+  0x5,0x38,0x48, 0x4,0x37,0x56, 0x4,0x37,0x50, 0x3,0x3b,0x5c,
+  0x4,0x37,0x59, 0x3,0x3b,0x5f, 0x4,0x37,0x54, 0x4,0x37,0x4e,
+  0x5,0x3f,0x32, 0x3,0x41,0x25, 0x4,0x37,0x55, 0x4,0x3d,0x3e,
+  0x3,0x3b,0x60, 0x4,0x3d,0x37, 0x5,0x32,0x58, 0x3,0x3b,0x5b,
+  0x3,0x41,0x26, 0x3,0x41,0x2d, 0x4,0x3d,0x3b, 0x4,0x43,0x43,
+  0x5,0x3f,0x42, 0x6,0x52,0x69, 0x3,0x46,0x67, 0x4,0x3d,0x3a,
+  0x4,0x3d,0x3c, 0x3,0x41,0x30, 0x3,0x46,0x65, 0x4,0x43,0x42,
+  0x4,0x43,0x50, 0x3,0x46,0x66, 0x3,0x41,0x2f, 0x4,0x43,0x48,
+  0x4,0x43,0x47, 0x4,0x43,0x49, 0x3,0x4b,0x7d, 0x4,0x43,0x4d,
+  0x4,0x49,0x65, 0x3,0x4c,0x22, 0x3,0x46,0x69, 0x3,0x4b,0x7b,
+  0x4,0x43,0x4a, 0x4,0x43,0x4c, 0x4,0x43,0x46, 0x3,0x4c,0x27,
+  0x3,0x4b,0x78, 0x4,0x43,0x4b, 0x4,0x50,0x38, 0x3,0x4c,0x2a,
+  0x4,0x49,0x67, 0x4,0x49,0x69, 0x4,0x49,0x68, 0x4,0x49,0x6b,
+  0x7,0x22,0x7c, 0x4,0x49,0x6d, 0x3,0x50,0x69, 0x4,0x49,0x6c,
+  0x3,0x4c,0x26, 0x4,0x50,0x39, 0x5,0x5b,0x4c, 0x4,0x5b,0x23,
+  0x4,0x5b,0x29, 0x4,0x56,0x36, 0x4,0x5b,0x25, 0x3,0x57,0x67,
+  0x4,0x5b,0x24, 0xf,0x5a,0x29, 0x3,0x57,0x66, 0x4,0x50,0x3a,
+  0x5,0x67,0x78, 0x4,0x63,0x43, 0x4,0x5f,0x64, 0x5,0x67,0x73,
+  0x7,0x47,0x2c, 0x3,0x5e,0x30, 0x4,0x63,0x42, 0x4,0x63,0x40,
+  0x3,0x5f,0x47, 0x4,0x68,0x6c, 0x3,0x61,0x78, 0x3,0x23,0x6a,
+  0x3,0x26,0x26, 0x4,0x26,0x54, 0x6,0x2b,0x52, 0x4,0x2d,0x2f,
+  0x4,0x2d,0x30, 0x5,0x2d,0x5d, 0x3,0x35,0x7a, 0x3,0x3b,0x65,
+  0x4,0x3d,0x42, 0x4,0x43,0x54, 0x5,0x4d,0x37, 0x3,0x4c,0x2b,
+  0x3,0x54,0x62, 0x6,0x27,0x6e, 0x4,0x26,0x55, 0x4,0x26,0x56,
+  0x4,0x29,0x4d, 0x3,0x2c,0x64, 0x4,0x21,0x7b, 0x4,0x21,0x7a,
+  0x3,0x22,0x4f, 0x4,0x22,0x74, 0x4,0x22,0x73, 0x4,0x22,0x75,
+  0x4,0x24,0x3a, 0x4,0x24,0x36, 0x3,0x26,0x2c, 0x3,0x26,0x2d,
+  0x3,0x26,0x30, 0x3,0x26,0x2b, 0x4,0x26,0x58, 0x3,0x29,0x2d,
+  0x5,0x26,0x3a, 0x3,0x29,0x2c, 0x3,0x29,0x38, 0x4,0x29,0x55,
+  0x4,0x2d,0x33, 0x4,0x26,0x59, 0x3,0x29,0x2b, 0xf,0x27,0x2e,
+  0x4,0x29,0x4e, 0x4,0x29,0x54, 0x3,0x2c,0x66, 0x3,0x29,0x27,
+  0x3,0x2c,0x67, 0x3,0x2c,0x69, 0x4,0x2d,0x3c, 0x3,0x2c,0x71,
+  0x4,0x29,0x56, 0x3,0x2c,0x68, 0x4,0x29,0x52, 0x4,0x2d,0x32,
+  0x4,0x2d,0x31, 0x3,0x2c,0x6a, 0x3,0x2c,0x65, 0x3,0x31,0x34,
+  0x3,0x31,0x2a, 0x3,0x35,0x7b, 0x3,0x31,0x31, 0x3,0x31,0x3a,
+  0x4,0x2d,0x3b, 0x3,0x31,0x2d, 0x3,0x31,0x2b, 0x4,0x31,0x7c,
+  0x4,0x32,0x21, 0x4,0x31,0x7b, 0x3,0x36,0x2c, 0x6,0x40,0x32,
+  0x4,0x32,0x25, 0x3,0x36,0x2f, 0x3,0x36,0x30, 0x4,0x31,0x79,
+  0x3,0x35,0x7e, 0x4,0x31,0x71, 0x3,0x36,0x25, 0x4,0x31,0x7e,
+  0x4,0x31,0x7a, 0x3,0x3b,0x6b, 0x3,0x36,0x2a, 0x4,0x37,0x6e,
+  0x4,0x37,0x62, 0x3,0x36,0x21, 0x4,0x3d,0x45, 0x3,0x41,0x31,
+  0x4,0x37,0x64, 0x3,0x3b,0x6a, 0x4,0x37,0x6b, 0x4,0x37,0x68,
+  0x4,0x37,0x65, 0x3,0x3b,0x6c, 0x3,0x3b,0x69, 0x4,0x37,0x70,
+  0x4,0x37,0x61, 0x3,0x3b,0x6e, 0x4,0x3d,0x50, 0x4,0x3d,0x4f,
+  0x3,0x41,0x37, 0x4,0x3d,0x4c, 0x4,0x3d,0x4a, 0x3,0x41,0x35,
+  0x3,0x41,0x3b, 0x4,0x3d,0x48, 0x4,0x3d,0x4e, 0x3,0x41,0x3c,
+  0x3,0x41,0x4a, 0x3,0x41,0x43, 0x3,0x41,0x3f, 0x3,0x41,0x47,
+  0x3,0x41,0x40, 0x3,0x41,0x46, 0x3,0x41,0x41, 0x3,0x41,0x39,
+  0x4,0x43,0x58, 0x4,0x43,0x61, 0x6,0x5d,0x32, 0x3,0x46,0x79,
+  0x3,0x47,0x2e, 0x3,0x47,0x2d, 0x4,0x43,0x56, 0x3,0x46,0x7c,
+  0x3,0x47,0x27, 0x3,0x47,0x2f, 0x4,0x43,0x5c, 0x3,0x46,0x77,
+  0x5,0x46,0x25, 0x3,0x46,0x7d, 0x4,0x49,0x75, 0x3,0x4c,0x36,
+  0x4,0x43,0x64, 0x5,0x46,0x23, 0x3,0x47,0x2b, 0x3,0x47,0x2c,
+  0x4,0x4a,0x24, 0x3,0x4c,0x33, 0x7,0x23,0x3a, 0x4,0x49,0x79,
+  0x4,0x49,0x7a, 0x4,0x49,0x76, 0x4,0x4a,0x28, 0x4,0x4a,0x22,
+  0x5,0x4d,0x3a, 0x4,0x49,0x7e, 0x5,0x4d,0x3e, 0x3,0x4c,0x3c,
+  0x4,0x4a,0x23, 0x3,0x50,0x74, 0x4,0x56,0x39, 0x4,0x50,0x45,
+  0x3,0x50,0x73, 0x3,0x50,0x6e, 0x3,0x50,0x78, 0x3,0x50,0x72,
+  0x3,0x50,0x71, 0x3,0x54,0x65, 0x3,0x54,0x6a, 0x3,0x54,0x68,
+  0x3,0x54,0x63, 0x3,0x54,0x66, 0x4,0x5b,0x2d, 0x3,0x57,0x69,
+  0x4,0x5b,0x32, 0x4,0x5b,0x30, 0x4,0x5b,0x2e, 0x3,0x57,0x6f,
+  0x3,0x57,0x71, 0x4,0x5b,0x31, 0x3,0x57,0x68, 0x4,0x5b,0x2f,
+  0x3,0x57,0x72, 0xf,0x5e,0x73, 0x3,0x5a,0x3d, 0x3,0x5a,0x3e,
+  0x4,0x63,0x47, 0x3,0x5c,0x40, 0x4,0x63,0x46, 0x5,0x70,0x24,
+  0x3,0x5e,0x32, 0x4,0x66,0x40, 0x3,0x60,0x31, 0x4,0x6a,0x49,
+  0x4,0x6a,0x48, 0x5,0x79,0x2a, 0x4,0x26,0x5b, 0x4,0x2d,0x40,
+  0x4,0x2d,0x3f, 0x4,0x32,0x27, 0x4,0x3d,0x54, 0x4,0x24,0x40,
+  0x3,0x26,0x3a, 0x4,0x26,0x5e, 0x4,0x26,0x5f, 0x4,0x29,0x5d,
+  0x3,0x2c,0x75, 0x3,0x31,0x3e, 0x4,0x2d,0x42, 0x6,0x38,0x2b,
+  0x3,0x36,0x33, 0x4,0x32,0x28, 0x3,0x36,0x35, 0x4,0x32,0x2c,
+  0x4,0x37,0x79, 0x4,0x37,0x75, 0x4,0x37,0x78, 0x4,0x37,0x77,
+  0x4,0x37,0x76, 0x5,0x38,0x7c, 0x3,0x3b,0x77, 0x4,0x3d,0x5c,
+  0x4,0x3d,0x59, 0x4,0x3d,0x5b, 0x3,0x41,0x4c, 0x4,0x43,0x66,
+  0x5,0x46,0x30, 0x5,0x46,0x2e, 0x4,0x43,0x69, 0x4,0x4a,0x2b,
+  0x4,0x4a,0x2a, 0x4,0x4a,0x29, 0x4,0x50,0x49, 0x4,0x50,0x4c,
+  0x3,0x57,0x73, 0x4,0x5b,0x3a, 0x4,0x63,0x4c, 0x4,0x66,0x43,
+  0x3,0x26,0x3b, 0x6,0x38,0x2c, 0x3,0x41,0x4f, 0x3,0x29,0x3a,
+  0x4,0x29,0x61, 0x3,0x31,0x41, 0x3,0x39,0x2b, 0x3,0x3b,0x78,
+  0x4,0x4a,0x2e, 0x4,0x56,0x3e, 0x4,0x6a,0x4b, 0x4,0x29,0x62,
+  0x4,0x2d,0x49, 0x6,0x38,0x30, 0x6,0x49,0x61, 0x6,0x5d,0x51,
+  0x5,0x4d,0x4b, 0x3,0x23,0x71, 0x6,0x2b,0x70, 0x6,0x38,0x34,
+  0x3,0x36,0x3b, 0x3,0x36,0x3e, 0x4,0x3d,0x65, 0x4,0x4a,0x30,
+  0x4,0x4a,0x31, 0x4,0x22,0x78, 0x4,0x22,0x79, 0x4,0x24,0x43,
+  0x3,0x26,0x3c, 0x3,0x26,0x3f, 0x3,0x26,0x3e, 0x3,0x26,0x40,
+  0x3,0x29,0x3f, 0x3,0x29,0x3d, 0x4,0x26,0x63, 0x5,0x29,0x4f,
+  0x4,0x29,0x63, 0x3,0x2c,0x7b, 0x4,0x29,0x64, 0x4,0x29,0x65,
+  0x3,0x2c,0x78, 0x3,0x2d,0x26, 0x6,0x31,0x67, 0x4,0x2d,0x4c,
+  0x4,0x32,0x3b, 0x4,0x2d,0x4b, 0x3,0x31,0x47, 0x6,0x38,0x37,
+  0x3,0x31,0x4a, 0xf,0x2f,0x6e, 0x4,0x2d,0x4d, 0x6,0x40,0x51,
+  0x4,0x32,0x36, 0x4,0x32,0x3a, 0x4,0x32,0x37, 0x3,0x36,0x43,
+  0x6,0x40,0x4f, 0x3,0x3c,0x22, 0x4,0x37,0x7e, 0x3,0x3b,0x7a,
+  0x3,0x3b,0x7b, 0x4,0x38,0x25, 0x3,0x3c,0x27, 0x4,0x38,0x22,
+  0x6,0x49,0x73, 0x3,0x3c,0x21, 0x6,0x53,0x3d, 0x5,0x3f,0x62,
+  0x3,0x41,0x52, 0x3,0x41,0x57, 0x3,0x41,0x5a, 0x3,0x41,0x55,
+  0x3,0x41,0x53, 0x3,0x41,0x5c, 0x3,0x41,0x58, 0x4,0x3d,0x68,
+  0x4,0x3d,0x67, 0x3,0x41,0x54, 0x3,0x47,0x38, 0x4,0x43,0x6e,
+  0x3,0x47,0x32, 0x3,0x47,0x36, 0x5,0x4d,0x53, 0x4,0x4a,0x32,
+  0x3,0x4c,0x42, 0x3,0x4c,0x45, 0x4,0x50,0x52, 0x4,0x50,0x51,
+  0x3,0x51,0x21, 0x5,0x4d,0x50, 0x3,0x50,0x7b, 0x3,0x50,0x7c,
+  0x4,0x50,0x53, 0x7,0x2e,0x5a, 0x3,0x54,0x73, 0x3,0x54,0x6e,
+  0x4,0x56,0x40, 0x4,0x5b,0x40, 0x4,0x5b,0x41, 0x4,0x5b,0x3f,
+  0x7,0x3f,0x76, 0x3,0x5a,0x40, 0x3,0x5a,0x41, 0x3,0x5c,0x44,
+  0x3,0x5f,0x4c, 0x3,0x5f,0x4d, 0x5,0x75,0x6e, 0x5,0x75,0x6d,
+  0x3,0x23,0x74, 0x4,0x50,0x56, 0x3,0x54,0x74, 0x3,0x29,0x44,
+  0x3,0x31,0x4e, 0x5,0x2e,0x25, 0x3,0x36,0x49, 0x3,0x3c,0x28,
+  0x4,0x3a,0x43, 0x5,0x46,0x45, 0x5,0x4d,0x58, 0x3,0x51,0x25,
+  0x3,0x23,0x76, 0x3,0x26,0x43, 0x4,0x24,0x48, 0x3,0x26,0x46,
+  0x3,0x29,0x4b, 0x3,0x29,0x46, 0xf,0x27,0x4c, 0x3,0x29,0x50,
+  0x3,0x29,0x4d, 0x5,0x26,0x51, 0x3,0x2d,0x28, 0x3,0x2d,0x2c,
+  0x4,0x29,0x6f, 0x4,0x29,0x6c, 0x3,0x2d,0x29, 0x4,0x2d,0x57,
+  0x4,0x2d,0x51, 0x4,0x2d,0x54, 0x4,0x2d,0x58, 0x3,0x31,0x52,
+  0x5,0x2e,0x2b, 0x4,0x2d,0x52, 0x4,0x2d,0x5b, 0x3,0x31,0x55,
+  0x4,0x2d,0x56, 0x3,0x31,0x51, 0x3,0x36,0x59, 0x4,0x32,0x43,
+  0x3,0x36,0x4a, 0x3,0x36,0x4f, 0x5,0x32,0x79, 0x4,0x32,0x42,
+  0x4,0x32,0x46, 0x4,0x32,0x41, 0x4,0x38,0x34, 0x3,0x36,0x58,
+  0x3,0x36,0x5d, 0x4,0x38,0x2f, 0x3,0x3c,0x2e, 0x4,0x38,0x2c,
+  0x3,0x3c,0x3f, 0x3,0x3c,0x30, 0x4,0x38,0x2a, 0x5,0x39,0x33,
+  0x4,0x38,0x2d, 0x3,0x3c,0x2c, 0x5,0x39,0x39, 0x4,0x38,0x35,
+  0x3,0x3c,0x35, 0x4,0x38,0x37, 0x3,0x3c,0x36, 0x3,0x3c,0x43,
+  0x3,0x3c,0x2b, 0x3,0x3c,0x2d, 0x4,0x3d,0x78, 0x3,0x41,0x71,
+  0x3,0x41,0x66, 0x3,0x41,0x70, 0x4,0x3d,0x6b, 0x4,0x3d,0x6e,
+  0x4,0x3d,0x6f, 0x3,0x41,0x6c, 0x3,0x41,0x69, 0x3,0x41,0x64,
+  0x4,0x3d,0x6d, 0x3,0x41,0x5e, 0x4,0x3d,0x75, 0x3,0x41,0x62,
+  0x3,0x41,0x63, 0x3,0x41,0x7a, 0x3,0x41,0x61, 0x3,0x41,0x5f,
+  0x4,0x44,0x23, 0x4,0x3d,0x76, 0x3,0x41,0x60, 0x3,0x42,0x5a,
+  0x3,0x41,0x67, 0xf,0x48,0x55, 0x4,0x44,0x24, 0x4,0x43,0x75,
+  0x4,0x44,0x21, 0x4,0x43,0x7c, 0x3,0x47,0x3f, 0x4,0x43,0x78,
+  0x4,0x43,0x73, 0x3,0x47,0x41, 0x4,0x43,0x74, 0x3,0x47,0x4a,
+  0x4,0x43,0x7d, 0x4,0x43,0x7e, 0x4,0x43,0x7a, 0x4,0x44,0x22,
+  0x3,0x47,0x4f, 0x3,0x47,0x40, 0x4,0x44,0x25, 0x4,0x43,0x71,
+  0x5,0x46,0x4b, 0x3,0x47,0x49, 0x4,0x3d,0x72, 0x3,0x47,0x50,
+  0xf,0x48,0x52, 0x3,0x4c,0x4e, 0x5,0x4d,0x6d, 0x4,0x4a,0x3a,
+  0x3,0x4c,0x4c, 0x5,0x4d,0x61, 0x3,0x4c,0x53, 0x4,0x4a,0x37,
+  0x4,0x4a,0x36, 0x3,0x4c,0x5d, 0x3,0x4c,0x58, 0x7,0x23,0x6f,
+  0x4,0x4a,0x38, 0x4,0x4a,0x42, 0x3,0x4c,0x5a, 0x3,0x4c,0x5c,
+  0x3,0x4c,0x48, 0x3,0x4c,0x55, 0x3,0x51,0x43, 0x3,0x51,0x42,
+  0x4,0x50,0x60, 0x4,0x50,0x5a, 0x3,0x51,0x37, 0x3,0x51,0x30,
+  0x4,0x50,0x59, 0x4,0x4a,0x39, 0x3,0x51,0x3f, 0x3,0x51,0x2a,
+  0x3,0x51,0x3d, 0x4,0x56,0x49, 0x3,0x51,0x33, 0x3,0x51,0x39,
+  0x3,0x4c,0x4b, 0x4,0x50,0x5e, 0x3,0x51,0x2d, 0x4,0x50,0x64,
+  0x3,0x51,0x35, 0x3,0x51,0x34, 0x3,0x51,0x36, 0x3,0x55,0x22,
+  0x4,0x56,0x48, 0x3,0x54,0x7e, 0x3,0x55,0x25, 0x3,0x54,0x7d,
+  0x4,0x56,0x4b, 0x7,0x38,0x55, 0x5,0x5b,0x68, 0x3,0x54,0x77,
+  0x3,0x55,0x26, 0xf,0x5f,0x29, 0x3,0x54,0x79, 0x3,0x55,0x28,
+  0x4,0x5b,0x48, 0x4,0x5b,0x44, 0x3,0x57,0x7c, 0x4,0x5b,0x4a,
+  0x4,0x5b,0x49, 0x4,0x5f,0x6f, 0x4,0x5f,0x73, 0x3,0x5a,0x49,
+  0x4,0x5f,0x70, 0x4,0x5f,0x6e, 0x4,0x5f,0x72, 0x4,0x5f,0x75,
+  0x3,0x5a,0x4c, 0x3,0x5a,0x4b, 0xf,0x62,0x53, 0x3,0x5a,0x4a,
+  0x3,0x5c,0x4c, 0x3,0x5c,0x46, 0x4,0x63,0x51, 0x4,0x63,0x4f,
+  0x3,0x5c,0x48, 0x3,0x5c,0x4d, 0x4,0x63,0x54, 0x3,0x5c,0x4b,
+  0x3,0x5c,0x45, 0xf,0x65,0x3e, 0x5,0x70,0x27, 0x3,0x5e,0x36,
+  0x3,0x5c,0x4a, 0x3,0x5f,0x50, 0x4,0x68,0x6e, 0x3,0x60,0x35,
+  0x3,0x60,0x33, 0x3,0x60,0x34, 0x5,0x24,0x48, 0x6,0x28,0x30,
+  0x4,0x26,0x6d, 0x5,0x26,0x56, 0x4,0x26,0x70, 0x4,0x26,0x6c,
+  0x4,0x2d,0x60, 0x4,0x29,0x70, 0x4,0x29,0x71, 0x6,0x31,0x78,
+  0x4,0x29,0x74, 0x4,0x29,0x73, 0x5,0x2e,0x2e, 0x4,0x2d,0x5d,
+  0x4,0x2d,0x61, 0x4,0x2d,0x62, 0x4,0x2d,0x5e, 0x3,0x36,0x61,
+  0x4,0x32,0x48, 0x4,0x32,0x49, 0x6,0x40,0x6e, 0x4,0x38,0x3b,
+  0x4,0x38,0x39, 0x3,0x3c,0x46, 0x5,0x39,0x43, 0x4,0x38,0x3c,
+  0x6,0x38,0x64, 0x4,0x3e,0x21, 0x4,0x3d,0x7c, 0x4,0x3d,0x7b,
+  0x4,0x3d,0x7d, 0x4,0x3d,0x7e, 0x4,0x3e,0x22, 0x3,0x47,0x52,
+  0x6,0x5d,0x77, 0x4,0x44,0x2a, 0x4,0x4a,0x4c, 0x3,0x4c,0x68,
+  0x4,0x50,0x66, 0x4,0x50,0x67, 0x4,0x56,0x4f, 0x4,0x56,0x4e,
+  0x3,0x55,0x2a, 0x3,0x55,0x2c, 0x4,0x5f,0x77, 0x7,0x4e,0x22,
+  0x4,0x68,0x71, 0x5,0x75,0x77, 0x5,0x79,0x2f, 0x6,0x25,0x25,
+  0x3,0x2d,0x3e, 0x3,0x2b,0x7b, 0x3,0x3c,0x48, 0x4,0x38,0x3f,
+  0x5,0x46,0x5f, 0x3,0x58,0x24, 0x4,0x22,0x7c, 0x3,0x29,0x57,
+  0x5,0x26,0x62, 0x4,0x26,0x75, 0x3,0x2d,0x3f, 0x3,0x2d,0x41,
+  0x3,0x2d,0x40, 0x3,0x31,0x69, 0x3,0x36,0x63, 0x4,0x32,0x4a,
+  0x4,0x38,0x45, 0x4,0x38,0x44, 0x4,0x38,0x46, 0x4,0x38,0x42,
+  0x3,0x3c,0x4a, 0x3,0x42,0x23, 0x4,0x3e,0x23, 0x4,0x3e,0x24,
+  0x3,0x42,0x24, 0x4,0x44,0x32, 0x5,0x46,0x60, 0x4,0x44,0x33,
+  0x4,0x44,0x30, 0x4,0x4a,0x50, 0x4,0x4a,0x4f, 0x4,0x50,0x6b,
+  0x4,0x50,0x6a, 0x4,0x56,0x51, 0x4,0x63,0x55, 0x3,0x5c,0x4e,
+  0x5,0x75,0x78, 0x5,0x24,0x4e, 0x4,0x26,0x78, 0x4,0x2d,0x64,
+  0x3,0x31,0x6b, 0x4,0x32,0x4f, 0x4,0x38,0x49, 0x4,0x38,0x4a,
+  0x4,0x38,0x4b, 0x3,0x42,0x25, 0x4,0x44,0x35, 0x3,0x51,0x47,
+  0x3,0x51,0x48, 0x4,0x50,0x6e, 0x4,0x56,0x53, 0x3,0x58,0x25,
+  0x4,0x29,0x7b, 0x3,0x23,0x7b, 0x4,0x26,0x79, 0x3,0x29,0x5b,
+  0x4,0x26,0x7a, 0xf,0x27,0x5b, 0x3,0x2d,0x43, 0x4,0x2d,0x66,
+  0x4,0x32,0x52, 0x4,0x32,0x54, 0x4,0x32,0x53, 0x4,0x32,0x55,
+  0x3,0x36,0x67, 0x4,0x2d,0x67, 0x4,0x32,0x51, 0x5,0x39,0x5b,
+  0x3,0x3c,0x4c, 0x4,0x38,0x4f, 0x4,0x38,0x4c, 0x4,0x3e,0x29,
+  0x3,0x42,0x27, 0x4,0x3e,0x28, 0x4,0x3e,0x27, 0x4,0x44,0x3f,
+  0x4,0x44,0x38, 0x4,0x44,0x39, 0x4,0x44,0x3a, 0x5,0x46,0x68,
+  0x4,0x44,0x3c, 0x4,0x50,0x6f, 0x4,0x50,0x71, 0x4,0x50,0x72,
+  0x3,0x51,0x49, 0x4,0x5b,0x50, 0x4,0x5b,0x4f, 0x3,0x5a,0x50,
+  0x4,0x6d,0x57, 0x4,0x2d,0x6a, 0x3,0x29,0x5c, 0x3,0x36,0x68,
+  0x3,0x4c,0x69, 0x3,0x51,0x4a, 0x4,0x21,0x4f, 0x3,0x22,0x56,
+  0x3,0x22,0x55, 0x3,0x24,0x22, 0x5,0x21,0x74, 0x4,0x23,0x22,
+  0x3,0x26,0x54, 0x3,0x26,0x4f, 0x4,0x24,0x4f, 0x3,0x26,0x5d,
+  0x6,0x28,0x49, 0x3,0x26,0x5a, 0x4,0x24,0x51, 0x3,0x26,0x4b,
+  0x6,0x28,0x4a, 0x6,0x28,0x44, 0x3,0x26,0x58, 0x3,0x29,0x61,
+  0x3,0x29,0x5f, 0x3,0x29,0x5e, 0x3,0x29,0x62, 0x3,0x29,0x60,
+  0x4,0x26,0x7e, 0x3,0x29,0x68, 0x3,0x29,0x66, 0xf,0x27,0x66,
+  0x3,0x2d,0x44, 0x5,0x2a,0x24, 0x4,0x27,0x22, 0x3,0x2d,0x54,
+  0x5,0x29,0x7b, 0x5,0x29,0x7c, 0x4,0x29,0x7e, 0x3,0x2d,0x56,
+  0x3,0x2d,0x4c, 0xf,0x30,0x49, 0x6,0x38,0x72, 0x3,0x31,0x70,
+  0x3,0x31,0x71, 0x4,0x2d,0x6b, 0x6,0x39,0x33, 0x3,0x31,0x74,
+  0x4,0x2d,0x6c, 0x3,0x36,0x69, 0x3,0x32,0x24, 0x3,0x32,0x23,
+  0x3,0x31,0x7e, 0x3,0x31,0x75, 0x4,0x32,0x57, 0x3,0x36,0x71,
+  0x4,0x32,0x63, 0x4,0x32,0x64, 0x3,0x36,0x6e, 0x4,0x32,0x5e,
+  0x3,0x37,0x22, 0x3,0x36,0x6d, 0x3,0x3c,0x4f, 0x3,0x36,0x7e,
+  0x4,0x32,0x58, 0x4,0x32,0x68, 0x5,0x39,0x5e, 0x4,0x32,0x5a,
+  0x4,0x32,0x5c, 0x6,0x41,0x2b, 0x5,0x33,0x3d, 0x3,0x3c,0x5e,
+  0x3,0x36,0x7b, 0x3,0x3c,0x5f, 0x3,0x36,0x73, 0x6,0x41,0x41,
+  0x3,0x36,0x78, 0xf,0x36,0x33, 0x4,0x38,0x51, 0x4,0x38,0x56,
+  0x3,0x3c,0x65, 0x4,0x38,0x52, 0x3,0x3c,0x59, 0x4,0x38,0x59,
+  0x3,0x3c,0x6a, 0x3,0x3c,0x67, 0x3,0x3c,0x55, 0x4,0x38,0x57,
+  0x4,0x38,0x5a, 0x3,0x3c,0x53, 0x3,0x3c,0x57, 0x3,0x3c,0x61,
+  0x3,0x42,0x2b, 0x6,0x4a,0x6d, 0xf,0x3c,0x43, 0xf,0x3c,0x5a,
+  0x4,0x3e,0x37, 0x3,0x42,0x2c, 0x3,0x42,0x37, 0x3,0x42,0x35,
+  0x3,0x42,0x48, 0x3,0x42,0x38, 0x4,0x3e,0x30, 0x4,0x3e,0x39,
+  0x4,0x3e,0x2d, 0x3,0x42,0x42, 0x4,0x3e,0x38, 0x3,0x42,0x34,
+  0x3,0x42,0x3c, 0x4,0x3e,0x3c, 0x3,0x42,0x2f, 0x3,0x42,0x41,
+  0x5,0x40,0x27, 0x4,0x3e,0x2f, 0x4,0x3e,0x32, 0x3,0x42,0x32,
+  0x3,0x42,0x43, 0x3,0x47,0x55, 0x4,0x44,0x49, 0x3,0x47,0x60,
+  0x6,0x5e,0x3b, 0x3,0x47,0x59, 0x6,0x54,0x50, 0x3,0x47,0x58,
+  0x4,0x44,0x46, 0x4,0x44,0x4d, 0x4,0x44,0x4a, 0x6,0x5e,0x40,
+  0x3,0x4c,0x6e, 0x4,0x4a,0x5f, 0x4,0x4a,0x61, 0x3,0x4c,0x6f,
+  0x3,0x4c,0x7c, 0x4,0x4a,0x68, 0x4,0x4a,0x5d, 0x3,0x4c,0x6d,
+  0x4,0x4a,0x59, 0x3,0x4c,0x72, 0x5,0x46,0x78, 0x7,0x24,0x61,
+  0x3,0x4c,0x70, 0x4,0x50,0x74, 0x3,0x51,0x4b, 0x3,0x4c,0x76,
+  0x4,0x50,0x77, 0x4,0x50,0x7d, 0x5,0x55,0x36, 0x4,0x50,0x76,
+  0x3,0x51,0x4f, 0x3,0x51,0x4e, 0x4,0x50,0x7a, 0x5,0x55,0x2d,
+  0x3,0x51,0x53, 0x3,0x51,0x57, 0x4,0x50,0x7b, 0x4,0x56,0x56,
+  0x3,0x51,0x51, 0x3,0x51,0x4c, 0x4,0x50,0x78, 0x3,0x51,0x52,
+  0x4,0x4a,0x62, 0x5,0x55,0x2e, 0x3,0x55,0x32, 0x3,0x55,0x38,
+  0x4,0x56,0x5e, 0x4,0x56,0x60, 0x3,0x55,0x34, 0x4,0x56,0x58,
+  0x3,0x55,0x2e, 0x4,0x56,0x57, 0x4,0x56,0x5c, 0x3,0x55,0x3b,
+  0x4,0x56,0x59, 0x4,0x56,0x5b, 0x3,0x55,0x33, 0x4,0x5b,0x56,
+  0x4,0x5b,0x54, 0x4,0x5b,0x5a, 0x4,0x5b,0x57, 0x4,0x5b,0x60,
+  0x4,0x5f,0x7b, 0x4,0x5f,0x7d, 0x4,0x5b,0x5b, 0x4,0x5f,0x79,
+  0x3,0x5a,0x51, 0x3,0x5c,0x50, 0x4,0x63,0x5a, 0x4,0x63,0x5e,
+  0x4,0x63,0x5b, 0x3,0x5c,0x52, 0x4,0x66,0x49, 0x5,0x70,0x3e,
+  0x4,0x66,0x4a, 0x4,0x66,0x4c, 0x4,0x68,0x73, 0x3,0x5e,0x39,
+  0x3,0x5e,0x38, 0x3,0x5f,0x51, 0x4,0x6a,0x4e, 0x3,0x60,0x38,
+  0x4,0x6b,0x6d, 0x4,0x6b,0x6e, 0x3,0x61,0x66, 0x3,0x24,0x2a,
+  0x4,0x24,0x52, 0x3,0x26,0x61, 0xf,0x24,0x6e, 0x3,0x29,0x6e,
+  0x4,0x27,0x27, 0x3,0x29,0x78, 0xf,0x27,0x6e, 0x3,0x29,0x73,
+  0x3,0x2d,0x67, 0x3,0x2d,0x59, 0x3,0x2d,0x66, 0x3,0x2d,0x61,
+  0x3,0x2d,0x60, 0x3,0x2d,0x5b, 0x4,0x2a,0x27, 0x3,0x32,0x2e,
+  0x4,0x2d,0x73, 0x3,0x32,0x32, 0x3,0x37,0x2b, 0x3,0x37,0x2a,
+  0x3,0x37,0x34, 0x4,0x32,0x71, 0x4,0x32,0x76, 0x4,0x32,0x70,
+  0x4,0x32,0x77, 0xf,0x36,0x48, 0x3,0x3c,0x76, 0x4,0x38,0x65,
+  0x4,0x38,0x61, 0x3,0x3c,0x75, 0x4,0x38,0x62, 0x4,0x38,0x64,
+  0x4,0x38,0x60, 0x3,0x3b,0x23, 0x3,0x3c,0x7e, 0x3,0x3c,0x70,
+  0x3,0x3c,0x78, 0x3,0x42,0x54, 0x3,0x42,0x4d, 0x3,0x42,0x56,
+  0x4,0x3e,0x4b, 0x3,0x42,0x4a, 0x3,0x42,0x55, 0x4,0x3e,0x48,
+  0x4,0x3e,0x46, 0x4,0x3e,0x49, 0x6,0x54,0x54, 0x3,0x42,0x4b,
+  0x3,0x42,0x50, 0xf,0x42,0x78, 0xf,0x43,0x3c, 0x4,0x44,0x59,
+  0x3,0x47,0x73, 0x3,0x47,0x69, 0x6,0x54,0x67, 0x4,0x44,0x56,
+  0x4,0x44,0x5a, 0x4,0x44,0x5c, 0x3,0x47,0x71, 0xf,0x49,0x58,
+  0x3,0x4d,0x26, 0x3,0x4d,0x23, 0x3,0x4d,0x2b, 0x3,0x4d,0x21,
+  0x3,0x4d,0x27, 0x4,0x4a,0x6a, 0x4,0x51,0x25, 0x3,0x51,0x5d,
+  0x3,0x51,0x5b, 0x4,0x51,0x2b, 0x3,0x51,0x5f, 0x3,0x51,0x61,
+  0x4,0x51,0x24, 0x3,0x51,0x64, 0x3,0x51,0x65, 0x3,0x55,0x3d,
+  0x4,0x56,0x62, 0x3,0x55,0x3f, 0x3,0x55,0x44, 0x7,0x39,0x26,
+  0x3,0x57,0x51, 0x3,0x58,0x2c, 0x4,0x56,0x64, 0x3,0x5c,0x5a,
+  0x3,0x5a,0x59, 0x3,0x5c,0x54, 0x3,0x5c,0x5b, 0x4,0x63,0x5f,
+  0x4,0x66,0x4e, 0x5,0x73,0x57, 0x4,0x6a,0x50, 0x3,0x60,0x3a,
+  0x3,0x61,0x7a, 0x4,0x27,0x2c, 0x3,0x29,0x7a, 0x3,0x37,0x58,
+  0x3,0x47,0x74, 0x3,0x2d,0x6a, 0x4,0x2d,0x76, 0x3,0x37,0x36,
+  0x4,0x38,0x6b, 0x3,0x29,0x7b, 0x4,0x2a,0x2c, 0x4,0x38,0x6c,
+  0x3,0x29,0x7d, 0x3,0x29,0x7e, 0x5,0x2e,0x53, 0x6,0x39,0x40,
+  0x4,0x2d,0x7a, 0x4,0x44,0x5f, 0x7,0x39,0x2d, 0x4,0x5b,0x64,
+  0x4,0x66,0x50, 0x3,0x21,0x6a, 0x3,0x32,0x33, 0x4,0x23,0x26,
+  0x3,0x26,0x65, 0x4,0x24,0x55, 0x6,0x2c,0x71, 0x4,0x27,0x33,
+  0x5,0x26,0x77, 0x4,0x27,0x32, 0x4,0x27,0x2f, 0x3,0x2d,0x6c,
+  0x3,0x2d,0x6f, 0x4,0x2a,0x2e, 0x3,0x2d,0x6e, 0x3,0x32,0x34,
+  0x3,0x32,0x35, 0x4,0x2d,0x7d, 0x4,0x2d,0x7c, 0x4,0x32,0x7a,
+  0x5,0x33,0x4d, 0x4,0x32,0x79, 0x4,0x32,0x7e, 0x3,0x37,0x38,
+  0x6,0x41,0x66, 0x3,0x37,0x37, 0x4,0x38,0x70, 0x4,0x38,0x72,
+  0x4,0x38,0x73, 0x4,0x44,0x63, 0x6,0x54,0x78, 0x4,0x3e,0x4e,
+  0x3,0x42,0x5e, 0x4,0x44,0x62, 0x4,0x44,0x60, 0x4,0x44,0x64,
+  0x4,0x4a,0x6f, 0x4,0x4a,0x6e, 0x4,0x4a,0x72, 0x4,0x4a,0x71,
+  0x4,0x4a,0x73, 0x4,0x51,0x2e, 0x4,0x51,0x30, 0x4,0x51,0x2f,
+  0x4,0x56,0x67, 0x3,0x55,0x46, 0x3,0x55,0x47, 0x4,0x5b,0x66,
+  0x4,0x5b,0x65, 0x4,0x60,0x24, 0x7,0x53,0x6b, 0x4,0x6a,0x51,
+  0x4,0x27,0x34, 0x4,0x24,0x59, 0x3,0x26,0x6d, 0x4,0x24,0x56,
+  0x3,0x26,0x6c, 0x6,0x2c,0x75, 0x4,0x27,0x39, 0x5,0x27,0x2e,
+  0x3,0x2a,0x29, 0x3,0x2a,0x24, 0x3,0x2a,0x25, 0x4,0x27,0x3a,
+  0x4,0x2a,0x32, 0x4,0x2a,0x34, 0x4,0x2a,0x35, 0x3,0x2d,0x72,
+  0x6,0x32,0x67, 0x3,0x32,0x37, 0x5,0x2e,0x5c, 0x4,0x2e,0x21,
+  0x4,0x2d,0x7e, 0x4,0x2e,0x22, 0x4,0x2e,0x26, 0x6,0x41,0x6d,
+  0x4,0x2e,0x27, 0x5,0x33,0x51, 0x4,0x33,0x28, 0x6,0x41,0x75,
+  0x4,0x33,0x29, 0x4,0x33,0x25, 0x4,0x33,0x2b, 0x4,0x33,0x27,
+  0x4,0x33,0x2e, 0x4,0x38,0x79, 0x4,0x38,0x77, 0x3,0x3d,0x2c,
+  0x4,0x38,0x7b, 0x6,0x4b,0x43, 0x4,0x44,0x65, 0x4,0x3e,0x54,
+  0x4,0x44,0x66, 0x4,0x3e,0x53, 0x3,0x42,0x60, 0x4,0x3e,0x52,
+  0x4,0x44,0x6a, 0x6,0x5e,0x6e, 0x4,0x44,0x69, 0x4,0x44,0x68,
+  0x4,0x44,0x67, 0x3,0x47,0x76, 0x4,0x38,0x7a, 0x4,0x4a,0x7b,
+  0x4,0x4a,0x76, 0x4,0x4a,0x7a, 0x4,0x4a,0x7c, 0x7,0x2f,0x74,
+  0x4,0x51,0x32, 0x4,0x51,0x34, 0x3,0x55,0x48, 0x4,0x56,0x6a,
+  0x4,0x56,0x6b, 0x4,0x5b,0x67, 0x5,0x68,0x3b, 0x4,0x63,0x65,
+  0x4,0x63,0x66, 0x4,0x63,0x67, 0x4,0x63,0x63, 0x4,0x6b,0x6f,
+  0x3,0x24,0x2e, 0x4,0x23,0x29, 0x3,0x24,0x30, 0x3,0x24,0x31,
+  0x3,0x26,0x71, 0x3,0x26,0x6f, 0x3,0x26,0x70, 0x3,0x2a,0x2e,
+  0x3,0x2d,0x76, 0x6,0x2d,0x21, 0x3,0x2a,0x30, 0x4,0x27,0x3b,
+  0x3,0x2a,0x31, 0x3,0x2d,0x7d, 0x3,0x32,0x3a, 0x4,0x2a,0x37,
+  0x4,0x2a,0x38, 0xf,0x2c,0x32, 0x4,0x33,0x2f, 0x3,0x32,0x43,
+  0x3,0x32,0x44, 0x3,0x32,0x3b, 0x4,0x33,0x30, 0x3,0x32,0x45,
+  0xf,0x31,0x27, 0x3,0x32,0x42, 0x3,0x37,0x3f, 0x3,0x37,0x42,
+  0x3,0x37,0x41, 0x4,0x33,0x33, 0x3,0x37,0x3e, 0x3,0x37,0x43,
+  0x3,0x3d,0x34, 0x4,0x38,0x7d, 0x5,0x3a,0x2d, 0x3,0x42,0x63,
+  0x3,0x3d,0x31, 0x3,0x3d,0x30, 0x3,0x42,0x6c, 0xf,0x36,0x59,
+  0xf,0x3d,0x3b, 0x4,0x3e,0x59, 0x3,0x42,0x65, 0x3,0x42,0x69,
+  0x5,0x40,0x4e, 0x3,0x42,0x72, 0xf,0x43,0x49, 0xf,0x43,0x56,
+  0x3,0x48,0x24, 0x7,0x25,0x37, 0x4,0x4b,0x22, 0x4,0x4b,0x21,
+  0x3,0x4d,0x37, 0x3,0x4d,0x3c, 0x3,0x4d,0x33, 0x3,0x4d,0x38,
+  0x3,0x4d,0x34, 0x3,0x4d,0x32, 0x3,0x51,0x68, 0x5,0x55,0x5d,
+  0x4,0x51,0x37, 0x3,0x51,0x69, 0x3,0x55,0x4a, 0x4,0x56,0x6f,
+  0xf,0x55,0x7a, 0xf,0x56,0x22, 0x3,0x55,0x4e, 0x4,0x5b,0x69,
+  0x3,0x55,0x4c, 0xf,0x5b,0x2d, 0x3,0x58,0x31, 0x4,0x60,0x2a,
+  0xf,0x62,0x78, 0xf,0x62,0x7b, 0x3,0x5c,0x61, 0x4,0x2a,0x39,
+  0x4,0x2a,0x3a, 0x5,0x2e,0x62, 0x4,0x2e,0x2b, 0x4,0x33,0x35,
+  0x4,0x33,0x34, 0x4,0x38,0x7e, 0x4,0x44,0x70, 0x4,0x44,0x71,
+  0x4,0x44,0x6f, 0x4,0x4b,0x23, 0x4,0x4b,0x24, 0x4,0x5b,0x6c,
+  0x4,0x6d,0x5a, 0x4,0x24,0x5e, 0x5,0x27,0x32, 0x3,0x2a,0x34,
+  0x3,0x2e,0x23, 0x4,0x2a,0x3d, 0x3,0x32,0x4a, 0x3,0x32,0x4b,
+  0x4,0x2e,0x2d, 0x3,0x32,0x49, 0x4,0x2e,0x2c, 0x4,0x33,0x3b,
+  0x4,0x39,0x21, 0x4,0x33,0x3a, 0x4,0x33,0x38, 0x4,0x33,0x39,
+  0x4,0x33,0x37, 0x4,0x39,0x23, 0x4,0x39,0x26, 0x4,0x33,0x3c,
+  0x4,0x39,0x24, 0x4,0x3e,0x62, 0x4,0x3e,0x61, 0x4,0x3e,0x5d,
+  0x4,0x3e,0x60, 0x3,0x42,0x76, 0x4,0x3e,0x63, 0x5,0x47,0x48,
+  0x4,0x44,0x73, 0x4,0x44,0x76, 0x4,0x44,0x74, 0x4,0x44,0x78,
+  0x4,0x44,0x77, 0x4,0x44,0x75, 0x4,0x4b,0x25, 0x4,0x4b,0x27,
+  0x4,0x4b,0x26, 0x4,0x51,0x3f, 0x3,0x51,0x6f, 0x4,0x51,0x42,
+  0x4,0x51,0x41, 0x4,0x56,0x72, 0x4,0x56,0x73, 0x3,0x55,0x51,
+  0x4,0x56,0x75, 0x3,0x55,0x50, 0x4,0x56,0x71, 0x4,0x5b,0x6f,
+  0x4,0x5b,0x6e, 0x4,0x60,0x2c, 0x4,0x60,0x2b, 0x4,0x68,0x75,
+  0x4,0x6b,0x70, 0x4,0x6a,0x53, 0x3,0x32,0x4c, 0x4,0x3e,0x65,
+  0x3,0x4d,0x3f, 0x4,0x56,0x78, 0x3,0x3d,0x40, 0xf,0x50,0x4e,
+  0x5,0x24,0x63, 0x6,0x28,0x62, 0x3,0x26,0x72, 0x4,0x2a,0x41,
+  0x3,0x2e,0x29, 0x4,0x2a,0x43, 0x4,0x2e,0x2f, 0x4,0x2e,0x31,
+  0x5,0x33,0x64, 0x3,0x37,0x48, 0x3,0x3d,0x41, 0x4,0x39,0x28,
+  0x4,0x3e,0x69, 0x3,0x42,0x79, 0x3,0x42,0x7a, 0x4,0x3e,0x68,
+  0x4,0x44,0x79, 0x3,0x4d,0x40, 0x4,0x4b,0x2a, 0x4,0x4b,0x29,
+  0x4,0x51,0x44, 0x5,0x5c,0x2f, 0x4,0x5b,0x72, 0x4,0x5b,0x73,
+  0x4,0x60,0x2e, 0x4,0x63,0x69, 0x4,0x6a,0x54, 0x4,0x3e,0x6d,
+  0x4,0x24,0x61, 0x4,0x24,0x62, 0x5,0x27,0x37, 0x3,0x2a,0x3c,
+  0x4,0x2a,0x46, 0x3,0x2e,0x2d, 0x4,0x2a,0x49, 0x3,0x2e,0x2c,
+  0x3,0x2e,0x2e, 0x3,0x32,0x56, 0x4,0x2e,0x37, 0x4,0x2e,0x3b,
+  0x4,0x2e,0x35, 0x4,0x2e,0x36, 0x3,0x32,0x54, 0x4,0x2e,0x33,
+  0x4,0x2e,0x3f, 0x4,0x2e,0x39, 0x6,0x39,0x6b, 0x3,0x32,0x53,
+  0x4,0x2e,0x38, 0x4,0x2e,0x3a, 0x5,0x33,0x6d, 0x4,0x33,0x42,
+  0x3,0x37,0x4c, 0x4,0x33,0x40, 0x4,0x2e,0x3c, 0x4,0x33,0x3f,
+  0x4,0x33,0x45, 0x3,0x37,0x4b, 0x4,0x33,0x43, 0x4,0x39,0x32,
+  0x4,0x39,0x33, 0x3,0x3d,0x46, 0x3,0x3d,0x4b, 0x6,0x4b,0x5a,
+  0x3,0x3d,0x49, 0x4,0x39,0x36, 0x5,0x40,0x60, 0x4,0x39,0x2f,
+  0x4,0x39,0x30, 0x3,0x3d,0x48, 0x3,0x3d,0x4a, 0x5,0x3a,0x3b,
+  0x4,0x39,0x35, 0x4,0x39,0x38, 0x4,0x3e,0x74, 0x5,0x40,0x64,
+  0x4,0x3e,0x6f, 0x4,0x3e,0x78, 0x4,0x3e,0x6e, 0x4,0x3e,0x76,
+  0x4,0x3e,0x73, 0x4,0x3e,0x7a, 0x4,0x45,0x24, 0x4,0x45,0x28,
+  0x6,0x5f,0x2d, 0x3,0x48,0x2a, 0x3,0x48,0x2c, 0x4,0x45,0x23,
+  0x4,0x45,0x21, 0x7,0x25,0x58, 0x4,0x4b,0x38, 0x3,0x4d,0x42,
+  0x4,0x4b,0x37, 0x4,0x4b,0x35, 0x4,0x4b,0x33, 0x4,0x4b,0x2f,
+  0x7,0x25,0x5c, 0x4,0x4b,0x2e, 0x5,0x47,0x59, 0x4,0x4b,0x3b,
+  0x7,0x30,0x36, 0x4,0x51,0x48, 0x4,0x51,0x49, 0x3,0x51,0x75,
+  0x4,0x51,0x4e, 0x4,0x51,0x4a, 0x4,0x51,0x50, 0x4,0x57,0x26,
+  0x4,0x57,0x22, 0x4,0x5b,0x7b, 0x4,0x5b,0x77, 0x7,0x40,0x6b,
+  0x4,0x57,0x25, 0x7,0x40,0x67, 0x4,0x60,0x32, 0x4,0x60,0x2f,
+  0x4,0x60,0x30, 0x4,0x66,0x58, 0x4,0x66,0x59, 0x3,0x5e,0x40,
+  0x5,0x73,0x5c, 0x4,0x6a,0x55, 0x4,0x6b,0x72, 0x4,0x6b,0x71,
+  0x3,0x62,0x2d, 0x3,0x26,0x75, 0x3,0x2e,0x30, 0x3,0x32,0x58,
+  0x3,0x37,0x4e, 0x3,0x43,0x22, 0x3,0x48,0x2d, 0x5,0x47,0x5b,
+  0x5,0x4e,0x59, 0x4,0x51,0x56, 0x4,0x60,0x37, 0x4,0x66,0x5b,
+  0x4,0x6c,0x73, 0x4,0x27,0x46, 0x4,0x2a,0x4e, 0x3,0x2e,0x31,
+  0x4,0x2e,0x46, 0x4,0x2e,0x45, 0x4,0x33,0x47, 0x4,0x33,0x48,
+  0x4,0x39,0x3a, 0x6,0x55,0x52, 0x4,0x45,0x30, 0x4,0x45,0x32,
+  0x3,0x48,0x2f, 0x3,0x4d,0x43, 0x4,0x4b,0x3d, 0x4,0x51,0x57,
+  0x4,0x5b,0x7e, 0x4,0x63,0x6c, 0x4,0x27,0x48, 0x4,0x2a,0x51,
+  0x4,0x2a,0x50, 0x4,0x2e,0x47, 0x4,0x2e,0x49, 0x3,0x32,0x59,
+  0x4,0x33,0x4b, 0x3,0x37,0x4f, 0x3,0x3d,0x4e, 0x3,0x43,0x23,
+  0x5,0x40,0x6f, 0x3,0x48,0x32, 0x4,0x51,0x5a, 0x4,0x45,0x36,
+  0x4,0x57,0x2c, 0x4,0x60,0x38, 0x3,0x5f,0x38, 0x4,0x6e,0x48,
+  0x3,0x26,0x79, 0x4,0x24,0x65, 0x4,0x27,0x4e, 0x4,0x27,0x4f,
+  0x4,0x27,0x4d, 0x4,0x27,0x4c, 0x4,0x27,0x4a, 0x4,0x2a,0x53,
+  0x4,0x2a,0x56, 0x4,0x2a,0x57, 0x4,0x2a,0x54, 0x4,0x2a,0x58,
+  0x5,0x2a,0x6d, 0x4,0x2a,0x5a, 0x6,0x33,0x38, 0x3,0x2e,0x34,
+  0x4,0x2e,0x52, 0x3,0x32,0x5d, 0x3,0x32,0x66, 0x3,0x32,0x60,
+  0x4,0x2e,0x4d, 0x3,0x32,0x61, 0x5,0x33,0x76, 0x4,0x33,0x50,
+  0x4,0x33,0x51, 0x3,0x37,0x56, 0x3,0x37,0x54, 0x4,0x33,0x52,
+  0x4,0x33,0x4e, 0x4,0x33,0x4d, 0x3,0x3d,0x50, 0x4,0x39,0x49,
+  0x3,0x3d,0x54, 0x4,0x39,0x4a, 0x3,0x3d,0x55, 0x4,0x39,0x45,
+  0x4,0x39,0x48, 0x4,0x39,0x3f, 0x4,0x39,0x41, 0x4,0x39,0x4b,
+  0x4,0x39,0x46, 0x4,0x39,0x4d, 0x4,0x39,0x47, 0x4,0x39,0x43,
+  0x4,0x3f,0x22, 0x4,0x39,0x4c, 0x4,0x39,0x42, 0x4,0x3f,0x30,
+  0x4,0x3f,0x2d, 0x3,0x43,0x24, 0x4,0x3f,0x25, 0x4,0x3f,0x26,
+  0x4,0x3f,0x27, 0x4,0x3f,0x2b, 0x4,0x3f,0x2c, 0x6,0x55,0x61,
+  0x5,0x47,0x61, 0x4,0x45,0x39, 0x4,0x45,0x41, 0x4,0x45,0x3c,
+  0x4,0x45,0x37, 0x3,0x48,0x37, 0x4,0x45,0x43, 0x4,0x45,0x46,
+  0x4,0x45,0x3f, 0x4,0x45,0x44, 0x3,0x48,0x3a, 0x4,0x45,0x38,
+  0x3,0x4d,0x45, 0x4,0x4b,0x45, 0x4,0x4b,0x42, 0x4,0x4b,0x44,
+  0x4,0x4b,0x47, 0x4,0x4b,0x43, 0x4,0x4b,0x4d, 0x3,0x4d,0x47,
+  0x5,0x4e,0x60, 0x4,0x4b,0x3f, 0x3,0x51,0x77, 0x3,0x51,0x78,
+  0x4,0x51,0x5c, 0x4,0x51,0x60, 0x3,0x51,0x7c, 0x3,0x51,0x7a,
+  0x4,0x51,0x5d, 0x4,0x51,0x64, 0x4,0x57,0x32, 0x4,0x57,0x2e,
+  0x4,0x57,0x31, 0x4,0x57,0x2f, 0x3,0x55,0x5a, 0x4,0x57,0x30,
+  0x4,0x57,0x33, 0x4,0x57,0x34, 0x5,0x56,0x22, 0x5,0x62,0x69,
+  0x4,0x5c,0x27, 0x4,0x5c,0x29, 0x4,0x5c,0x2a, 0x4,0x5c,0x25,
+  0x3,0x58,0x37, 0x4,0x5c,0x26, 0x4,0x63,0x70, 0x4,0x63,0x6e,
+  0x4,0x63,0x71, 0x4,0x63,0x6f, 0x4,0x66,0x5d, 0x3,0x5e,0x41,
+  0x4,0x68,0x78, 0x4,0x6a,0x57, 0x4,0x68,0x7a, 0x4,0x6c,0x75,
+  0x4,0x6e,0x4d, 0x4,0x27,0x51, 0x4,0x2a,0x5f, 0x4,0x33,0x57,
+  0x4,0x45,0x4a, 0x3,0x55,0x5d, 0x4,0x57,0x38, 0x4,0x63,0x74,
+  0x4,0x6b,0x75, 0x4,0x2e,0x57, 0x4,0x2e,0x58, 0x4,0x33,0x5a,
+  0x4,0x33,0x59, 0x6,0x4c,0x2b, 0x4,0x3f,0x33, 0x4,0x45,0x4c,
+  0x3,0x24,0x32, 0x3,0x26,0x7a, 0x4,0x27,0x53, 0xf,0x28,0x7a,
+  0x4,0x2a,0x64, 0x3,0x2e,0x38, 0x4,0x2a,0x62, 0x3,0x2e,0x3c,
+  0x3,0x2d,0x3b, 0x4,0x2e,0x5f, 0x4,0x2e,0x5c, 0x4,0x2e,0x62,
+  0x5,0x2f,0x34, 0x3,0x37,0x5b, 0x3,0x32,0x6a, 0x3,0x32,0x6b,
+  0x4,0x2e,0x5e, 0x4,0x2e,0x61, 0x4,0x33,0x5e, 0x4,0x33,0x61,
+  0x3,0x37,0x5c, 0x4,0x33,0x5f, 0x3,0x37,0x5a, 0x4,0x33,0x60,
+  0x3,0x37,0x5e, 0x3,0x3d,0x5b, 0x5,0x3a,0x59, 0x6,0x4c,0x33,
+  0x4,0x39,0x58, 0x3,0x3d,0x58, 0x4,0x39,0x53, 0x4,0x3f,0x40,
+  0x4,0x3f,0x39, 0x4,0x3f,0x3f, 0x3,0x43,0x2f, 0x4,0x3f,0x3c,
+  0x3,0x43,0x32, 0x4,0x3f,0x3d, 0x3,0x43,0x2c, 0x4,0x3f,0x3e,
+  0x4,0x3f,0x38, 0x4,0x3f,0x3a, 0x4,0x3f,0x3b, 0x4,0x3f,0x42,
+  0x4,0x45,0x4e, 0x3,0x48,0x43, 0x4,0x45,0x51, 0x3,0x48,0x41,
+  0x4,0x45,0x4d, 0x4,0x45,0x55, 0x4,0x45,0x4f, 0x5,0x47,0x76,
+  0x4,0x4b,0x5c, 0x4,0x4b,0x58, 0x4,0x4b,0x56, 0x4,0x4b,0x55,
+  0x4,0x4b,0x5e, 0x7,0x26,0x24, 0x4,0x4b,0x5b, 0x3,0x52,0x23,
+  0x3,0x51,0x7d, 0x4,0x51,0x6c, 0x3,0x51,0x7e, 0x7,0x30,0x59,
+  0x5,0x56,0x33, 0x4,0x51,0x70, 0x4,0x51,0x6d, 0x4,0x57,0x3b,
+  0x4,0x57,0x41, 0x3,0x48,0x42, 0x4,0x57,0x39, 0x3,0x55,0x5e,
+  0x3,0x55,0x5f, 0x4,0x57,0x3f, 0x3,0x58,0x41, 0x4,0x5c,0x2d,
+  0x3,0x58,0x3d, 0x4,0x5c,0x31, 0x4,0x5c,0x2f, 0x4,0x5c,0x2e,
+  0x4,0x60,0x3f, 0x7,0x4e,0x5c, 0x3,0x5c,0x63, 0x4,0x63,0x76,
+  0x4,0x63,0x75, 0x4,0x66,0x5f, 0x4,0x66,0x60, 0x4,0x66,0x61,
+  0x4,0x68,0x7c, 0x4,0x68,0x7b, 0x3,0x60,0x75, 0x3,0x61,0x67,
+  0x3,0x2e,0x3f, 0x4,0x2a,0x67, 0x4,0x2a,0x66, 0x6,0x33,0x48,
+  0x3,0x32,0x6e, 0x4,0x2e,0x64, 0x3,0x32,0x71, 0x3,0x37,0x64,
+  0x4,0x33,0x63, 0x4,0x33,0x62, 0x3,0x3d,0x61, 0x3,0x3d,0x60,
+  0x4,0x39,0x59, 0x4,0x3f,0x45, 0x4,0x3f,0x44, 0x3,0x43,0x3a,
+  0x3,0x43,0x3b, 0x3,0x43,0x3e, 0x4,0x3f,0x47, 0x3,0x43,0x3c,
+  0x3,0x43,0x3f, 0x3,0x48,0x46, 0x5,0x48,0x24, 0x3,0x48,0x49,
+  0x5,0x4e,0x76, 0x3,0x4d,0x4e, 0x4,0x51,0x76, 0x3,0x52,0x25,
+  0x4,0x51,0x74, 0x4,0x51,0x75, 0x4,0x57,0x42, 0x3,0x58,0x46,
+  0x3,0x58,0x47, 0x3,0x5a,0x64, 0x4,0x66,0x63, 0x3,0x62,0x34,
+  0x5,0x24,0x6e, 0x3,0x26,0x7d, 0x5,0x27,0x46, 0x6,0x2d,0x49,
+  0x4,0x27,0x56, 0x3,0x2a,0x40, 0x3,0x2a,0x41, 0x3,0x2a,0x43,
+  0x4,0x2a,0x6a, 0x4,0x2a,0x6f, 0x4,0x2a,0x6b, 0x4,0x2a,0x69,
+  0x4,0x2a,0x6c, 0xf,0x2c,0x6d, 0x4,0x2e,0x65, 0x3,0x32,0x75,
+  0x3,0x32,0x7a, 0x6,0x42,0x66, 0x4,0x33,0x67, 0x4,0x33,0x66,
+  0x3,0x37,0x6d, 0x4,0x33,0x65, 0x5,0x34,0x3b, 0x5,0x34,0x39,
+  0x4,0x33,0x6a, 0x4,0x33,0x69, 0x4,0x33,0x6b, 0x3,0x37,0x68,
+  0x4,0x33,0x6d, 0x5,0x34,0x38, 0x3,0x37,0x6e, 0xf,0x37,0x3b,
+  0x4,0x33,0x64, 0x5,0x3a,0x65, 0x4,0x39,0x5e, 0x4,0x39,0x62,
+  0x3,0x3d,0x67, 0x4,0x39,0x64, 0x3,0x3d,0x6a, 0x4,0x39,0x63,
+  0x3,0x3d,0x6b, 0x4,0x39,0x61, 0x4,0x3f,0x4f, 0x3,0x43,0x40,
+  0x4,0x3f,0x4d, 0x3,0x43,0x45, 0x4,0x3f,0x4c, 0x3,0x43,0x42,
+  0x4,0x3f,0x4b, 0x3,0x43,0x43, 0x4,0x45,0x57, 0x4,0x3f,0x49,
+  0x5,0x41,0x31, 0x3,0x48,0x51, 0x3,0x48,0x4a, 0x4,0x45,0x5b,
+  0x3,0x48,0x53, 0x3,0x48,0x4e, 0x4,0x45,0x5a, 0x3,0x48,0x4c,
+  0x4,0x45,0x58, 0x6,0x5f,0x6b, 0x4,0x45,0x59, 0x4,0x4b,0x65,
+  0x4,0x4b,0x61, 0x3,0x4d,0x54, 0x4,0x4b,0x62, 0x3,0x4d,0x52,
+  0x7,0x26,0x32, 0x3,0x4d,0x58, 0x4,0x4b,0x68, 0x4,0x4b,0x66,
+  0x4,0x4b,0x64, 0x3,0x4d,0x59, 0x4,0x51,0x7d, 0x4,0x51,0x7c,
+  0x3,0x52,0x2b, 0x4,0x51,0x79, 0x4,0x51,0x78, 0x4,0x51,0x7a,
+  0x3,0x52,0x2d, 0x4,0x57,0x45, 0x3,0x55,0x63, 0x4,0x57,0x47,
+  0x3,0x58,0x48, 0x7,0x41,0x2e, 0x4,0x5c,0x37, 0x4,0x5c,0x35,
+  0x4,0x5c,0x36, 0x3,0x5e,0x46, 0x4,0x63,0x79, 0x4,0x66,0x65,
+  0x7,0x58,0x4c, 0x4,0x66,0x64, 0x4,0x68,0x7e, 0x4,0x69,0x21,
+  0x3,0x62,0x39, 0x4,0x24,0x69, 0x6,0x2d,0x4e, 0x3,0x2e,0x46,
+  0x3,0x2e,0x45, 0x4,0x2a,0x71, 0x4,0x2a,0x72, 0x3,0x33,0x21,
+  0x3,0x32,0x7e, 0x3,0x32,0x7d, 0x4,0x33,0x6f, 0x4,0x33,0x70,
+  0x3,0x37,0x6f, 0x5,0x34,0x45, 0x4,0x33,0x72, 0x4,0x33,0x71,
+  0x6,0x42,0x6f, 0x3,0x3d,0x6c, 0x4,0x39,0x67, 0x3,0x3d,0x6d,
+  0x6,0x4c,0x53, 0x3,0x3d,0x6e, 0x5,0x41,0x39, 0x4,0x3f,0x53,
+  0x4,0x3f,0x52, 0x6,0x56,0x27, 0x4,0x45,0x60, 0x6,0x5f,0x78,
+  0x4,0x4b,0x6c, 0x5,0x4f,0x23, 0x5,0x54,0x24, 0x4,0x52,0x25,
+  0x4,0x52,0x22, 0x4,0x52,0x24, 0x7,0x30,0x6f, 0x3,0x55,0x65,
+  0x3,0x55,0x66, 0x4,0x57,0x4c, 0x4,0x57,0x4d, 0x4,0x57,0x4b,
+  0x4,0x57,0x4f, 0x3,0x55,0x67, 0x4,0x5c,0x39, 0x4,0x5c,0x3a,
+  0x4,0x60,0x48, 0x4,0x60,0x49, 0x4,0x63,0x7c, 0x4,0x69,0x22,
+  0x3,0x24,0x34, 0x3,0x2a,0x46, 0x4,0x2a,0x76, 0x3,0x2e,0x4a,
+  0x3,0x33,0x25, 0x4,0x2e,0x6d, 0x3,0x33,0x22, 0x5,0x34,0x46,
+  0x3,0x3d,0x6f, 0x4,0x39,0x6a, 0x3,0x43,0x48, 0x4,0x3f,0x54,
+  0x4,0x3f,0x55, 0x4,0x3f,0x5a, 0x4,0x45,0x63, 0x4,0x57,0x52,
+  0x4,0x5c,0x3b, 0x3,0x5a,0x68, 0x5,0x2b,0x21, 0x4,0x2e,0x75,
+  0x4,0x2e,0x70, 0x3,0x33,0x28, 0x4,0x2e,0x77, 0x3,0x33,0x29,
+  0x4,0x2e,0x73, 0x4,0x2e,0x72, 0x4,0x33,0x76, 0x4,0x33,0x7d,
+  0x3,0x37,0x74, 0x5,0x34,0x48, 0x4,0x33,0x77, 0x4,0x33,0x7b,
+  0x3,0x37,0x75, 0x6,0x42,0x76, 0x4,0x33,0x78, 0x4,0x39,0x6d,
+  0x4,0x39,0x74, 0x4,0x39,0x71, 0x3,0x3d,0x74, 0x4,0x3f,0x5b,
+  0x4,0x39,0x72, 0x3,0x3d,0x7a, 0x4,0x39,0x75, 0x3,0x3d,0x73,
+  0x4,0x39,0x6f, 0x6,0x4c,0x5b, 0x6,0x4c,0x56, 0x3,0x43,0x50,
+  0x4,0x3f,0x66, 0x4,0x3f,0x62, 0x4,0x3f,0x61, 0x3,0x43,0x52,
+  0x3,0x43,0x53, 0x4,0x3f,0x5d, 0x3,0x43,0x4e, 0x4,0x3f,0x60,
+  0x3,0x43,0x4b, 0x4,0x3f,0x63, 0x5,0x48,0x46, 0x4,0x39,0x76,
+  0x4,0x45,0x65, 0x3,0x48,0x5b, 0x4,0x45,0x6a, 0x4,0x45,0x69,
+  0x3,0x48,0x5f, 0x4,0x45,0x6e, 0x4,0x45,0x68, 0x3,0x48,0x59,
+  0x4,0x45,0x6d, 0x4,0x45,0x66, 0x5,0x48,0x36, 0x4,0x4b,0x7b,
+  0x4,0x4b,0x75, 0x4,0x4b,0x70, 0x3,0x4d,0x61, 0x3,0x4d,0x5e,
+  0x4,0x4c,0x22, 0x3,0x4d,0x67, 0x4,0x4b,0x7e, 0x3,0x4d,0x62,
+  0x4,0x4c,0x2e, 0x5,0x4f,0x3b, 0x3,0x4d,0x64, 0x4,0x4c,0x30,
+  0x4,0x4c,0x25, 0x4,0x4c,0x2d, 0x4,0x4b,0x79, 0x5,0x4f,0x32,
+  0x3,0x4d,0x5f, 0x5,0x4f,0x45, 0x4,0x4c,0x2c, 0x4,0x4c,0x27,
+  0x4,0x4b,0x77, 0x3,0x4d,0x66, 0x3,0x4d,0x68, 0x4,0x4c,0x28,
+  0x5,0x4f,0x36, 0x4,0x52,0x34, 0x4,0x52,0x3a, 0x3,0x52,0x31,
+  0x4,0x52,0x37, 0x4,0x52,0x2b, 0x4,0x52,0x38, 0x3,0x52,0x35,
+  0x4,0x52,0x39, 0x4,0x52,0x3b, 0x4,0x52,0x36, 0x4,0x52,0x2f,
+  0x4,0x52,0x3d, 0x4,0x52,0x29, 0x3,0x52,0x32, 0x4,0x57,0x5b,
+  0x5,0x5c,0x6d, 0x4,0x57,0x5e, 0x4,0x57,0x5a, 0x4,0x57,0x62,
+  0x5,0x5c,0x7d, 0x4,0x57,0x65, 0x4,0x57,0x53, 0x3,0x55,0x6c,
+  0x4,0x57,0x56, 0x4,0x57,0x58, 0x4,0x57,0x59, 0x5,0x5c,0x7e,
+  0x4,0x57,0x55, 0x5,0x5d,0x30, 0x4,0x5c,0x44, 0x4,0x5c,0x4f,
+  0x4,0x5c,0x4b, 0x4,0x5c,0x50, 0x4,0x5c,0x43, 0x3,0x58,0x4a,
+  0x4,0x5c,0x4a, 0x3,0x5a,0x6c, 0x4,0x5c,0x42, 0x4,0x5c,0x4c,
+  0x7,0x41,0x3f, 0x4,0x5c,0x46, 0x4,0x5c,0x49, 0x4,0x5c,0x40,
+  0x5,0x63,0x34, 0x4,0x5c,0x48, 0x3,0x58,0x4d, 0x3,0x58,0x4b,
+  0x5,0x63,0x41, 0x4,0x60,0x56, 0x5,0x68,0x6e, 0x3,0x5a,0x6a,
+  0x4,0x60,0x53, 0x5,0x68,0x66, 0x3,0x5a,0x6d, 0x3,0x5a,0x69,
+  0x3,0x5a,0x6b, 0x4,0x5c,0x51, 0x4,0x63,0x7e, 0x4,0x66,0x69,
+  0x4,0x66,0x6c, 0x4,0x66,0x6e, 0x3,0x5e,0x4a, 0x4,0x66,0x6a,
+  0x3,0x5e,0x4d, 0x4,0x66,0x68, 0x4,0x66,0x6d, 0x3,0x5f,0x56,
+  0x5,0x70,0x61, 0x4,0x69,0x26, 0x4,0x69,0x28, 0x4,0x6a,0x5d,
+  0x4,0x6a,0x61, 0x4,0x6a,0x5c, 0x3,0x60,0x5f, 0x4,0x6b,0x76,
+  0x4,0x6d,0x5c, 0x4,0x6d,0x76, 0x7,0x65,0x5d, 0x4,0x2a,0x77,
+  0x3,0x33,0x2f, 0x3,0x33,0x33, 0x6,0x43,0x22, 0x4,0x34,0x25,
+  0x5,0x34,0x59, 0x3,0x37,0x7c, 0x6,0x4c,0x60, 0x4,0x39,0x7b,
+  0x4,0x39,0x7c, 0x3,0x3d,0x7d, 0x3,0x3d,0x7c, 0x4,0x39,0x7d,
+  0x3,0x43,0x5a, 0x3,0x43,0x56, 0x3,0x43,0x57, 0x3,0x43,0x59,
+  0x3,0x43,0x5b, 0x3,0x48,0x63, 0x4,0x45,0x72, 0x3,0x48,0x64,
+  0x3,0x48,0x65, 0x6,0x60,0x2c, 0x3,0x48,0x66, 0x3,0x4d,0x6b,
+  0x3,0x4d,0x6c, 0x3,0x4d,0x69, 0x3,0x4d,0x6a, 0x4,0x4c,0x37,
+  0x7,0x26,0x57, 0x4,0x4c,0x35, 0x3,0x52,0x36, 0x4,0x57,0x6d,
+  0x3,0x55,0x73, 0x3,0x55,0x72, 0x4,0x57,0x69, 0x4,0x57,0x6a,
+  0x3,0x4d,0x74, 0x4,0x57,0x6b, 0x5,0x63,0x4e, 0x4,0x5c,0x56,
+  0x3,0x58,0x52, 0x4,0x5c,0x55, 0x4,0x5c,0x54, 0x5,0x63,0x54,
+  0x3,0x58,0x53, 0x3,0x5a,0x70, 0x4,0x60,0x5b, 0x4,0x60,0x5d,
+  0x4,0x64,0x23, 0x3,0x5c,0x68, 0x7,0x54,0x3a, 0x5,0x70,0x70,
+  0x4,0x6a,0x65, 0x5,0x76,0x39, 0x4,0x6c,0x7a, 0x3,0x61,0x45,
+  0x4,0x27,0x5c, 0x6,0x33,0x64, 0x3,0x2e,0x57, 0x3,0x2e,0x55,
+  0x3,0x2e,0x58, 0x4,0x2e,0x78, 0x4,0x2e,0x7e, 0x3,0x33,0x35,
+  0x3,0x33,0x34, 0x4,0x2e,0x7c, 0x3,0x33,0x39, 0x4,0x2f,0x21,
+  0x3,0x33,0x38, 0x4,0x2e,0x7d, 0x3,0x33,0x36, 0x3,0x33,0x3a,
+  0x4,0x34,0x2e, 0x4,0x34,0x26, 0x3,0x38,0x23, 0x3,0x38,0x2a,
+  0x4,0x34,0x27, 0x4,0x34,0x30, 0x3,0x38,0x2c, 0x4,0x34,0x2d,
+  0x4,0x34,0x2b, 0x4,0x34,0x29, 0x3,0x38,0x28, 0x3,0x38,0x2d,
+  0x3,0x38,0x25, 0x3,0x3e,0x36, 0x5,0x3b,0x2c, 0x3,0x3e,0x2d,
+  0x3,0x3e,0x32, 0x3,0x3e,0x27, 0x3,0x3e,0x30, 0x3,0x3e,0x25,
+  0x6,0x4c,0x71, 0x3,0x3e,0x31, 0x4,0x3f,0x6a, 0x3,0x43,0x65,
+  0x3,0x43,0x6b, 0x4,0x3f,0x6e, 0x4,0x3f,0x73, 0x4,0x3f,0x6f,
+  0x3,0x43,0x61, 0x3,0x43,0x5d, 0x3,0x48,0x6c, 0x4,0x45,0x75,
+  0x4,0x45,0x7e, 0x4,0x45,0x79, 0x4,0x46,0x21, 0x3,0x48,0x67,
+  0x3,0x43,0x5f, 0x3,0x48,0x72, 0x3,0x48,0x75, 0x4,0x46,0x23,
+  0x5,0x48,0x54, 0x3,0x48,0x6f, 0x3,0x4e,0x2a, 0x5,0x4f,0x53,
+  0x4,0x4c,0x3e, 0x4,0x4c,0x3c, 0x4,0x4c,0x40, 0x3,0x4d,0x7b,
+  0x3,0x4e,0x21, 0x3,0x4e,0x2d, 0x3,0x4d,0x76, 0x3,0x4d,0x79,
+  0x4,0x4c,0x3a, 0x4,0x4c,0x3d, 0x4,0x4c,0x3f, 0x3,0x4d,0x7a,
+  0x4,0x4c,0x44, 0x5,0x4f,0x54, 0x3,0x4e,0x26, 0x3,0x4e,0x23,
+  0x3,0x52,0x3a, 0x4,0x52,0x49, 0x3,0x52,0x3c, 0x4,0x52,0x47,
+  0x3,0x52,0x3d, 0x3,0x52,0x3e, 0x4,0x57,0x73, 0x3,0x55,0x78,
+  0x5,0x5d,0x3f, 0x3,0x55,0x76, 0x5,0x5d,0x46, 0x3,0x55,0x77,
+  0x4,0x57,0x6e, 0x3,0x55,0x7c, 0x3,0x55,0x7b, 0x7,0x3a,0x39,
+  0x4,0x5c,0x62, 0x4,0x5c,0x60, 0x4,0x57,0x72, 0x3,0x58,0x57,
+  0x3,0x58,0x56, 0x3,0x59,0x29, 0x4,0x60,0x66, 0x4,0x60,0x63,
+  0x4,0x60,0x68, 0x4,0x60,0x62, 0x7,0x47,0x4a, 0x3,0x5a,0x73,
+  0x3,0x5a,0x71, 0x5,0x6d,0x22, 0x3,0x5c,0x69, 0x4,0x64,0x24,
+  0x3,0x5c,0x6a, 0x3,0x5c,0x6b, 0x3,0x5e,0x4f, 0x3,0x5e,0x4e,
+  0x4,0x69,0x2a, 0x7,0x58,0x58, 0x3,0x5f,0x59, 0x4,0x69,0x2b,
+  0x4,0x6a,0x66, 0x4,0x6b,0x79, 0x4,0x6b,0x78, 0x7,0x5f,0x33,
+  0x3,0x60,0x78, 0x4,0x6c,0x7c, 0x4,0x6c,0x7b, 0x4,0x6d,0x77,
+  0x4,0x2a,0x79, 0x4,0x2f,0x29, 0x3,0x38,0x2f, 0x3,0x38,0x32,
+  0x5,0x34,0x60, 0x4,0x34,0x34, 0x3,0x38,0x30, 0x4,0x34,0x33,
+  0x4,0x3a,0x28, 0x4,0x46,0x25, 0x3,0x48,0x76, 0x4,0x52,0x4e,
+  0x4,0x6a,0x6b, 0xf,0x21,0x47, 0x3,0x2a,0x4d, 0x3,0x2e,0x5c,
+  0x3,0x2e,0x5b, 0x3,0x2e,0x59, 0x4,0x2a,0x7b, 0x4,0x2f,0x2a,
+  0x6,0x3a,0x6b, 0x4,0x2f,0x2d, 0x4,0x34,0x35, 0x4,0x3f,0x75,
+  0x4,0x3a,0x2a, 0x3,0x43,0x6c, 0x3,0x43,0x6d, 0x5,0x41,0x65,
+  0x3,0x48,0x7a, 0x3,0x48,0x7b, 0x4,0x52,0x4f, 0x4,0x57,0x75,
+  0x4,0x5c,0x65, 0x4,0x60,0x6d, 0x4,0x66,0x7b, 0x4,0x6b,0x7b,
+  0x6,0x3a,0x74, 0x4,0x2f,0x2e, 0x3,0x31,0x3f, 0x4,0x34,0x38,
+  0x4,0x34,0x36, 0x4,0x34,0x37, 0x6,0x43,0x3c, 0x4,0x3a,0x2d,
+  0x4,0x3a,0x31, 0x4,0x3a,0x30, 0x4,0x3f,0x76, 0x3,0x48,0x7e,
+  0x4,0x46,0x27, 0x3,0x48,0x7d, 0x4,0x46,0x28, 0x3,0x48,0x7c,
+  0x4,0x4c,0x49, 0x4,0x52,0x53, 0x3,0x52,0x41, 0x4,0x57,0x77,
+  0x4,0x5c,0x6a, 0x4,0x5c,0x6b, 0x4,0x69,0x2c, 0x3,0x33,0x40,
+  0x3,0x33,0x41, 0x4,0x34,0x3a, 0x3,0x38,0x33, 0x4,0x34,0x3b,
+  0x4,0x34,0x3e, 0x4,0x34,0x3c, 0x3,0x38,0x35, 0x3,0x38,0x34,
+  0x4,0x3a,0x34, 0x4,0x3a,0x35, 0x5,0x3b,0x3a, 0x4,0x3a,0x33,
+  0x3,0x43,0x70, 0x4,0x3f,0x78, 0x3,0x43,0x71, 0x4,0x3f,0x77,
+  0x3,0x43,0x6f, 0x3,0x49,0x21, 0x4,0x46,0x2a, 0x4,0x46,0x29,
+  0x4,0x46,0x2b, 0x4,0x52,0x55, 0x4,0x52,0x56, 0x3,0x58,0x5e,
+  0x3,0x58,0x60, 0x3,0x58,0x5f, 0x3,0x5c,0x6e, 0x4,0x66,0x7d,
+  0x3,0x3e,0x39, 0x3,0x3e,0x3a, 0x4,0x2b,0x27, 0x4,0x2b,0x28,
+  0x4,0x2f,0x38, 0x4,0x2b,0x29, 0x3,0x38,0x38, 0x4,0x3f,0x7a,
+  0x4,0x46,0x2e, 0x4,0x46,0x2d, 0x4,0x46,0x2f, 0x4,0x46,0x32,
+  0x4,0x46,0x30, 0x4,0x4c,0x4f, 0x4,0x57,0x7d, 0x4,0x57,0x7a,
+  0x4,0x57,0x7b, 0x4,0x5c,0x70, 0x4,0x67,0x21, 0x4,0x24,0x6d,
+  0x3,0x33,0x46, 0x3,0x33,0x45, 0x3,0x38,0x3a, 0x4,0x34,0x41,
+  0x4,0x3a,0x39, 0x5,0x41,0x70, 0x3,0x43,0x74, 0x4,0x46,0x36,
+  0x4,0x46,0x34, 0x4,0x46,0x35, 0x4,0x46,0x37, 0x3,0x49,0x24,
+  0x3,0x4e,0x33, 0x4,0x4c,0x52, 0x4,0x52,0x5a, 0x3,0x52,0x42,
+  0x4,0x52,0x5b, 0x4,0x58,0x21, 0x4,0x58,0x24, 0x4,0x58,0x23,
+  0x4,0x58,0x22, 0x3,0x58,0x64, 0x4,0x64,0x28, 0x3,0x5f,0x5c,
+  0x6,0x56,0x6d, 0x4,0x23,0x2d, 0x6,0x25,0x49, 0x4,0x24,0x6f,
+  0x4,0x24,0x6e, 0x3,0x2a,0x51, 0x6,0x3b,0x28, 0x3,0x2a,0x55,
+  0x3,0x2a,0x50, 0x4,0x27,0x66, 0xf,0x28,0x52, 0x4,0x27,0x62,
+  0x4,0x27,0x67, 0x4,0x27,0x63, 0x4,0x27,0x65, 0x5,0x27,0x58,
+  0x3,0x2a,0x5a, 0x3,0x2a,0x53, 0x5,0x2b,0x33, 0x4,0x2b,0x2f,
+  0x4,0x2b,0x2a, 0x4,0x2b,0x2c, 0x3,0x2e,0x62, 0x3,0x2e,0x5f,
+  0x6,0x33,0x7d, 0x5,0x2b,0x39, 0x3,0x33,0x51, 0x4,0x2f,0x41,
+  0x4,0x2f,0x46, 0x4,0x2f,0x47, 0x4,0x2f,0x3f, 0x6,0x3b,0x31,
+  0x5,0x2f,0x6d, 0x3,0x38,0x46, 0x4,0x34,0x4c, 0x4,0x34,0x48,
+  0x3,0x38,0x44, 0x4,0x34,0x4b, 0x4,0x34,0x52, 0x4,0x34,0x51,
+  0x4,0x34,0x4a, 0x4,0x34,0x53, 0x6,0x43,0x58, 0x3,0x38,0x40,
+  0x3,0x38,0x3f, 0x3,0x38,0x43, 0x4,0x3a,0x49, 0x4,0x3a,0x3a,
+  0x3,0x3e,0x3f, 0x4,0x3a,0x45, 0x5,0x3b,0x4d, 0x4,0x3a,0x4a,
+  0x4,0x3a,0x41, 0x4,0x3a,0x40, 0x4,0x3a,0x42, 0x4,0x3a,0x3d,
+  0x3,0x3e,0x46, 0x4,0x3a,0x3f, 0x4,0x3a,0x44, 0x4,0x3a,0x4b,
+  0x6,0x49,0x7e, 0x6,0x4d,0x54, 0x6,0x56,0x76, 0x4,0x40,0x27,
+  0x3,0x43,0x78, 0x4,0x40,0x2a, 0x4,0x40,0x23, 0x4,0x40,0x26,
+  0x3,0x43,0x7a, 0x4,0x3f,0x7d, 0x4,0x40,0x28, 0x3,0x44,0x21,
+  0x4,0x40,0x2c, 0x3,0x43,0x7d, 0x3,0x43,0x79, 0x5,0x34,0x6a,
+  0x4,0x40,0x25, 0x4,0x46,0x45, 0x4,0x46,0x3e, 0x4,0x46,0x3c,
+  0x4,0x46,0x3d, 0x4,0x46,0x3f, 0x3,0x52,0x48, 0x4,0x46,0x42,
+  0x4,0x46,0x40, 0x4,0x46,0x3b, 0x3,0x49,0x29, 0x3,0x49,0x28,
+  0x4,0x46,0x38, 0x4,0x46,0x47, 0x4,0x46,0x41, 0x4,0x4c,0x5d,
+  0x4,0x4c,0x58, 0x4,0x4c,0x5e, 0x4,0x4c,0x55, 0x4,0x4c,0x5c,
+  0x6,0x60,0x6f, 0x4,0x4c,0x54, 0x4,0x4c,0x5b, 0x4,0x4c,0x5f,
+  0x5,0x42,0x28, 0x4,0x52,0x63, 0x4,0x52,0x64, 0x3,0x52,0x46,
+  0x3,0x52,0x45, 0x4,0x52,0x5e, 0x4,0x52,0x61, 0x4,0x52,0x62,
+  0x4,0x52,0x66, 0xf,0x51,0x55, 0x5,0x5d,0x5b, 0x4,0x58,0x2b,
+  0x4,0x58,0x28, 0x4,0x58,0x2c, 0x4,0x5c,0x74, 0x3,0x58,0x66,
+  0x4,0x5c,0x76, 0x3,0x58,0x67, 0x3,0x5a,0x76, 0x4,0x60,0x74,
+  0x4,0x60,0x73, 0x5,0x6d,0x2c, 0x4,0x64,0x2a, 0x4,0x67,0x22,
+  0x4,0x67,0x24, 0x4,0x67,0x23, 0x4,0x67,0x25, 0x4,0x69,0x30,
+  0x6,0x43,0x64, 0x7,0x42,0x24, 0x3,0x2b,0x44, 0x3,0x44,0x24,
+  0x4,0x2f,0x4a, 0x4,0x34,0x58, 0x4,0x4c,0x63, 0x4,0x52,0x6b,
+  0x3,0x33,0x53, 0x3,0x33,0x54, 0x3,0x38,0x4a, 0x4,0x4c,0x64,
+  0x6,0x61,0x21, 0x3,0x52,0x4b, 0x3,0x5e,0x54, 0x4,0x27,0x6f,
+  0x4,0x2b,0x33, 0x4,0x2b,0x32, 0x3,0x2e,0x67, 0x3,0x33,0x56,
+  0x4,0x2f,0x50, 0x3,0x38,0x4b, 0x6,0x43,0x71, 0x6,0x43,0x70,
+  0x3,0x3e,0x4a, 0x4,0x3a,0x4e, 0x4,0x3a,0x4f, 0x6,0x4d,0x63,
+  0x5,0x42,0x2d, 0x4,0x40,0x2f, 0x4,0x46,0x4f, 0x4,0x46,0x51,
+  0x4,0x46,0x50, 0x3,0x49,0x2c, 0x6,0x61,0x24, 0x5,0x49,0x2c,
+  0x3,0x4e,0x3e, 0x4,0x4c,0x68, 0x4,0x4c,0x65, 0x4,0x52,0x6c,
+  0x4,0x52,0x6d, 0x4,0x58,0x30, 0x4,0x58,0x34, 0x4,0x58,0x33,
+  0x3,0x56,0x25, 0x3,0x56,0x26, 0x5,0x5d,0x67, 0x5,0x5c,0x4d,
+  0x4,0x58,0x32, 0x4,0x5c,0x7c, 0x4,0x64,0x2d, 0x4,0x2f,0x53,
+  0x4,0x34,0x5c, 0x4,0x52,0x6f, 0x4,0x52,0x6e, 0x4,0x58,0x35,
+  0x4,0x5c,0x7d, 0x4,0x69,0x33, 0x6,0x25,0x4f, 0x3,0x24,0x37,
+  0x3,0x24,0x39, 0x3,0x27,0x27, 0x4,0x24,0x76, 0x4,0x24,0x7d,
+  0x3,0x27,0x2c, 0x3,0x2a,0x63, 0x3,0x2a,0x67, 0x3,0x2a,0x64,
+  0x3,0x2a,0x6a, 0x4,0x27,0x72, 0x3,0x2a,0x62, 0x4,0x28,0x21,
+  0x4,0x27,0x73, 0x3,0x2a,0x65, 0x3,0x2a,0x69, 0x5,0x27,0x63,
+  0x3,0x2a,0x61, 0x3,0x2e,0x6d, 0x4,0x2b,0x36, 0x3,0x2e,0x70,
+  0x3,0x2e,0x71, 0x3,0x2e,0x6c, 0x3,0x2e,0x73, 0x3,0x2e,0x75,
+  0x6,0x34,0x3a, 0x4,0x2f,0x55, 0x3,0x33,0x61, 0x4,0x2f,0x61,
+  0x3,0x33,0x64, 0x3,0x33,0x5b, 0x3,0x33,0x5e, 0x6,0x3b,0x56,
+  0x3,0x33,0x5d, 0x4,0x2f,0x5e, 0x3,0x33,0x5c, 0x3,0x33,0x65,
+  0x5,0x30,0x21, 0x4,0x2f,0x59, 0x4,0x2f,0x64, 0x3,0x33,0x60,
+  0x4,0x34,0x5e, 0x4,0x34,0x6c, 0x4,0x34,0x71, 0x3,0x38,0x5a,
+  0x4,0x34,0x69, 0x4,0x34,0x65, 0x3,0x38,0x56, 0x4,0x34,0x66,
+  0x4,0x34,0x62, 0x4,0x34,0x5d, 0x4,0x34,0x63, 0x6,0x44,0x2c,
+  0x3,0x38,0x4c, 0x6,0x44,0x28, 0x5,0x35,0x2a, 0x3,0x38,0x59,
+  0x3,0x38,0x5c, 0x5,0x35,0x24, 0x4,0x3a,0x6c, 0x4,0x3a,0x60,
+  0x4,0x3a,0x5f, 0x4,0x3a,0x64, 0x4,0x3a,0x59, 0x5,0x3b,0x56,
+  0x4,0x3a,0x5b, 0x4,0x3a,0x56, 0x3,0x3e,0x53, 0x4,0x3a,0x5e,
+  0x3,0x3e,0x54, 0x3,0x3e,0x51, 0x4,0x3a,0x5c, 0x4,0x3a,0x61,
+  0x3,0x3e,0x55, 0x6,0x4e,0x27, 0x3,0x3e,0x4c, 0xf,0x3e,0x6b,
+  0x4,0x40,0x30, 0x4,0x40,0x32, 0x4,0x3a,0x65, 0x3,0x44,0x37,
+  0x4,0x46,0x69, 0x4,0x40,0x47, 0x4,0x40,0x49, 0x4,0x40,0x3a,
+  0x3,0x44,0x2b, 0x3,0x44,0x29, 0x3,0x44,0x34, 0x4,0x40,0x48,
+  0x3,0x44,0x3d, 0x4,0x40,0x4c, 0x4,0x46,0x65, 0x3,0x49,0x2f,
+  0x4,0x46,0x57, 0x6,0x61,0x44, 0x4,0x46,0x64, 0x3,0x49,0x31,
+  0x4,0x46,0x53, 0x5,0x49,0x3c, 0x4,0x46,0x61, 0x3,0x49,0x30,
+  0x4,0x46,0x6d, 0x4,0x46,0x60, 0x4,0x46,0x5c, 0x3,0x49,0x34,
+  0x5,0x49,0x3b, 0x6,0x61,0x58, 0x3,0x49,0x37, 0x3,0x49,0x40,
+  0x3,0x4e,0x43, 0x4,0x4c,0x72, 0x3,0x4e,0x3f, 0x4,0x4c,0x70,
+  0x4,0x4d,0x24, 0x4,0x4c,0x6b, 0x3,0x4e,0x41, 0x4,0x4c,0x71,
+  0x3,0x4e,0x53, 0x4,0x4c,0x6d, 0x4,0x4c,0x73, 0x3,0x4e,0x47,
+  0x3,0x4e,0x45, 0x3,0x4e,0x56, 0x4,0x4c,0x7d, 0x3,0x52,0x51,
+  0x4,0x4c,0x6c, 0x3,0x4e,0x4a, 0x4,0x4c,0x6e, 0x3,0x4e,0x48,
+  0x3,0x4e,0x55, 0x3,0x4e,0x49, 0x5,0x50,0x46, 0x3,0x4e,0x50,
+  0xf,0x51,0x65, 0xf,0x51,0x73, 0xf,0x51,0x76, 0x4,0x4d,0x21,
+  0x4,0x4c,0x6f, 0x3,0x4e,0x51, 0x4,0x4c,0x77, 0x4,0x52,0x77,
+  0x4,0x52,0x7b, 0x4,0x52,0x79, 0x4,0x53,0x2c, 0x4,0x53,0x21,
+  0x4,0x52,0x76, 0x3,0x52,0x53, 0x4,0x53,0x25, 0x3,0x52,0x57,
+  0x4,0x52,0x7e, 0x3,0x52,0x4d, 0x4,0x53,0x23, 0x4,0x52,0x7a,
+  0x4,0x52,0x7c, 0x4,0x52,0x72, 0x5,0x64,0x2d, 0x3,0x52,0x4c,
+  0x4,0x53,0x22, 0x4,0x52,0x73, 0x3,0x52,0x4e, 0x4,0x53,0x27,
+  0x4,0x53,0x31, 0x4,0x46,0x67, 0x4,0x58,0x44, 0x4,0x58,0x3c,
+  0x4,0x58,0x38, 0x4,0x58,0x42, 0x5,0x5d,0x79, 0x4,0x58,0x36,
+  0x4,0x58,0x3b, 0x3,0x56,0x2e, 0x3,0x56,0x27, 0x4,0x58,0x3d,
+  0x3,0x56,0x2a, 0x3,0x56,0x2f, 0x3,0x58,0x69, 0x4,0x5c,0x7e,
+  0x4,0x5d,0x2b, 0x3,0x58,0x6d, 0x3,0x58,0x70, 0x3,0x58,0x6a,
+  0x3,0x58,0x71, 0x4,0x5d,0x23, 0x7,0x42,0x38, 0x4,0x5d,0x21,
+  0xf,0x60,0x4e, 0x7,0x3b,0x32, 0x4,0x60,0x77, 0x3,0x5c,0x73,
+  0x3,0x5b,0x23, 0x4,0x60,0x78, 0x3,0x5b,0x21, 0x3,0x5b,0x24,
+  0x7,0x49,0x53, 0x4,0x64,0x2f, 0x4,0x64,0x34, 0x3,0x5c,0x7d,
+  0x4,0x64,0x33, 0x3,0x5c,0x74, 0x7,0x54,0x68, 0x3,0x5c,0x79,
+  0x4,0x64,0x32, 0x4,0x64,0x38, 0x3,0x5c,0x7a, 0x4,0x64,0x30,
+  0x3,0x5c,0x75, 0x4,0x64,0x36, 0x4,0x67,0x27, 0x3,0x5e,0x59,
+  0x4,0x67,0x28, 0xf,0x68,0x39, 0x3,0x5f,0x5d, 0x4,0x69,0x37,
+  0x7,0x58,0x72, 0x3,0x60,0x41, 0x3,0x60,0x42, 0x5,0x78,0x25,
+  0x4,0x6b,0x7d, 0x4,0x6d,0x5e, 0x4,0x6c,0x7d, 0x3,0x61,0x6a,
+  0x4,0x6d,0x79, 0x4,0x6d,0x7b, 0xf,0x6c,0x6c, 0x4,0x6e,0x37,
+  0x4,0x6e,0x36, 0x5,0x7c,0x3e, 0x3,0x2a,0x6d, 0x4,0x2b,0x3e,
+  0x4,0x2f,0x67, 0x3,0x33,0x67, 0x3,0x33,0x66, 0x3,0x33,0x68,
+  0x5,0x35,0x35, 0x3,0x38,0x62, 0x5,0x3b,0x70, 0x3,0x3e,0x60,
+  0x3,0x44,0x41, 0x5,0x42,0x54, 0x5,0x42,0x53, 0x3,0x44,0x42,
+  0x3,0x44,0x43, 0x4,0x4d,0x26, 0x4,0x53,0x36, 0x4,0x5d,0x32,
+  0x5,0x64,0x3b, 0x5,0x64,0x3a, 0x4,0x64,0x3a, 0x3,0x27,0x2e,
+  0x3,0x2e,0x7d, 0x3,0x2f,0x21, 0x3,0x2f,0x22, 0x4,0x2f,0x69,
+  0x4,0x2f,0x6b, 0x6,0x3b,0x69, 0x3,0x38,0x68, 0x3,0x38,0x67,
+  0x4,0x34,0x7c, 0x3,0x38,0x65, 0x4,0x34,0x7b, 0x4,0x34,0x79,
+  0x5,0x3c,0x26, 0x6,0x44,0x48, 0x4,0x3a,0x72, 0x3,0x3e,0x67,
+  0x4,0x3a,0x74, 0x3,0x3e,0x65, 0x5,0x3b,0x74, 0x4,0x3a,0x70,
+  0x4,0x3a,0x6d, 0x3,0x3e,0x64, 0x3,0x3e,0x66, 0x4,0x40,0x56,
+  0x4,0x40,0x57, 0x3,0x44,0x4b, 0x3,0x44,0x47, 0x4,0x40,0x5b,
+  0x4,0x3a,0x6e, 0x4,0x40,0x5d, 0x3,0x44,0x4a, 0x4,0x46,0x78,
+  0x3,0x49,0x46, 0x4,0x46,0x72, 0x4,0x46,0x73, 0x4,0x46,0x71,
+  0x4,0x46,0x75, 0x3,0x49,0x47, 0x4,0x46,0x70, 0x4,0x46,0x76,
+  0x6,0x61,0x69, 0x3,0x49,0x48, 0x4,0x46,0x7b, 0x3,0x4e,0x5a,
+  0x3,0x4e,0x5c, 0x7,0x28,0x42, 0x3,0x4e,0x57, 0x3,0x4e,0x58,
+  0x4,0x4d,0x30, 0x3,0x4e,0x5b, 0x4,0x46,0x79, 0x4,0x4d,0x36,
+  0x4,0x4d,0x2f, 0x3,0x49,0x4d, 0x4,0x53,0x3e, 0x3,0x52,0x5c,
+  0x7,0x32,0x73, 0x4,0x53,0x3d, 0x4,0x58,0x4d, 0x3,0x52,0x60,
+  0x7,0x32,0x75, 0x3,0x52,0x61, 0x5,0x5e,0x32, 0x4,0x58,0x57,
+  0x4,0x58,0x52, 0x3,0x56,0x37, 0x4,0x58,0x58, 0x4,0x58,0x4f,
+  0x4,0x58,0x56, 0x3,0x56,0x38, 0x4,0x58,0x4e, 0x3,0x56,0x32,
+  0x4,0x58,0x54, 0x4,0x58,0x5f, 0x3,0x56,0x35, 0x3,0x56,0x3c,
+  0x3,0x56,0x31, 0x4,0x5d,0x3b, 0x5,0x5e,0x35, 0x4,0x5d,0x39,
+  0x3,0x58,0x72, 0x4,0x61,0x24, 0x5,0x69,0x41, 0x3,0x5b,0x2a,
+  0x4,0x61,0x21, 0x4,0x61,0x25, 0xf,0x63,0x6e, 0x5,0x6d,0x4b,
+  0x4,0x64,0x3b, 0x4,0x64,0x3c, 0x4,0x64,0x40, 0x4,0x64,0x3e,
+  0x4,0x64,0x41, 0x3,0x5d,0x26, 0x3,0x5e,0x5e, 0x4,0x67,0x30,
+  0x4,0x64,0x3d, 0x4,0x69,0x3e, 0x3,0x5f,0x5e, 0x3,0x5f,0x60,
+  0x3,0x60,0x44, 0x7,0x59,0x25, 0x7,0x5c,0x5e, 0x4,0x6a,0x78,
+  0x7,0x5c,0x63, 0x3,0x61,0x48, 0x4,0x6e,0x39, 0x3,0x2f,0x25,
+  0x6,0x3b,0x73, 0x3,0x38,0x69, 0x3,0x44,0x4c, 0x4,0x47,0x23,
+  0x4,0x4d,0x37, 0x4,0x2f,0x6f, 0x4,0x3a,0x78, 0x3,0x4e,0x5e,
+  0x4,0x53,0x4a, 0x3,0x5b,0x2e, 0x3,0x2a,0x6e, 0x3,0x2f,0x28,
+  0x4,0x2b,0x46, 0x5,0x30,0x3d, 0x4,0x2f,0x72, 0x5,0x30,0x39,
+  0x4,0x35,0x2a, 0x4,0x3a,0x7a, 0x4,0x35,0x2d, 0x4,0x35,0x2e,
+  0x4,0x35,0x2c, 0xf,0x32,0x51, 0x4,0x3a,0x79, 0x3,0x3e,0x71,
+  0x4,0x35,0x30, 0x3,0x3e,0x6e, 0x3,0x3e,0x6c, 0x3,0x3e,0x6b,
+  0x3,0x2f,0x4a, 0x4,0x40,0x62, 0x4,0x47,0x25, 0x6,0x58,0x2b,
+  0x3,0x49,0x53, 0x4,0x47,0x2d, 0x5,0x49,0x6c, 0x5,0x49,0x6d,
+  0x4,0x40,0x66, 0x4,0x47,0x31, 0x4,0x47,0x27, 0x3,0x49,0x55,
+  0x4,0x40,0x60, 0x4,0x47,0x2a, 0x4,0x47,0x2e, 0x4,0x47,0x26,
+  0x4,0x47,0x2b, 0x3,0x49,0x5a, 0x3,0x49,0x50, 0x3,0x49,0x5b,
+  0x4,0x4d,0x3c, 0x4,0x4d,0x3f, 0x4,0x4d,0x3a, 0x4,0x4d,0x39,
+  0x4,0x4d,0x42, 0x4,0x4d,0x40, 0x4,0x4d,0x47, 0x4,0x53,0x52,
+  0x4,0x53,0x55, 0x4,0x53,0x56, 0x3,0x4e,0x63, 0x4,0x53,0x4f,
+  0x4,0x58,0x63, 0x4,0x58,0x67, 0x3,0x56,0x45, 0x3,0x56,0x43,
+  0x4,0x58,0x64, 0x3,0x56,0x3e, 0x7,0x3b,0x59, 0x3,0x56,0x44,
+  0x4,0x58,0x65, 0x3,0x56,0x41, 0x5,0x64,0x56, 0x4,0x5d,0x4a,
+  0x4,0x5d,0x48, 0x4,0x5d,0x49, 0x4,0x5d,0x44, 0x4,0x5d,0x46,
+  0x4,0x61,0x2a, 0x7,0x43,0x22, 0x4,0x64,0x43, 0x7,0x50,0x25,
+  0x3,0x5d,0x27, 0x4,0x64,0x44, 0x3,0x5e,0x5f, 0x4,0x6a,0x7b,
+  0x7,0x59,0x32, 0x3,0x60,0x7a, 0x4,0x6c,0x26, 0x3,0x60,0x79,
+  0x4,0x6d,0x7d, 0x5,0x2b,0x47, 0x4,0x2f,0x73, 0x4,0x35,0x31,
+  0x4,0x3b,0x21, 0x3,0x33,0x79, 0x3,0x33,0x78, 0x4,0x35,0x33,
+  0x4,0x35,0x35, 0x4,0x3b,0x23, 0x5,0x3c,0x35, 0x4,0x3b,0x22,
+  0x3,0x3e,0x73, 0x3,0x44,0x50, 0x3,0x44,0x51, 0x4,0x47,0x36,
+  0x4,0x47,0x38, 0x4,0x4d,0x4a, 0x4,0x4d,0x48, 0x4,0x53,0x5a,
+  0x4,0x53,0x5b, 0x5,0x58,0x32, 0x4,0x53,0x5c, 0x5,0x5e,0x43,
+  0x4,0x58,0x68, 0x4,0x58,0x69, 0x4,0x5d,0x4e, 0x4,0x5d,0x50,
+  0x4,0x61,0x2d, 0x4,0x61,0x2e, 0x3,0x5b,0x30, 0x4,0x61,0x2c,
+  0x4,0x61,0x30, 0x3,0x5e,0x60, 0x3,0x62,0x3c, 0x4,0x35,0x3a,
+  0x3,0x44,0x53, 0x4,0x40,0x67, 0x3,0x44,0x52, 0x4,0x47,0x3a,
+  0x4,0x4d,0x51, 0x4,0x4d,0x4c, 0x4,0x4d,0x4e, 0x4,0x4d,0x53,
+  0x4,0x4d,0x4f, 0x4,0x53,0x64, 0x4,0x53,0x61, 0x4,0x53,0x62,
+  0x4,0x58,0x6b, 0x4,0x58,0x6a, 0x5,0x64,0x63, 0x4,0x61,0x31,
+  0x4,0x61,0x34, 0x4,0x64,0x46, 0x4,0x64,0x47, 0x4,0x6d,0x22,
+  0x3,0x2f,0x2b, 0x5,0x2b,0x49, 0x3,0x2f,0x2d, 0x4,0x2f,0x7e,
+  0x3,0x33,0x7d, 0x4,0x35,0x41, 0x3,0x38,0x7c, 0x3,0x38,0x78,
+  0x5,0x35,0x57, 0x4,0x35,0x44, 0x5,0x35,0x5e, 0x3,0x39,0x24,
+  0x3,0x39,0x28, 0x3,0x39,0x21, 0x4,0x35,0x3f, 0x3,0x38,0x7d,
+  0x3,0x39,0x27, 0x4,0x35,0x43, 0x5,0x35,0x5d, 0x6,0x44,0x6d,
+  0x3,0x39,0x26, 0x5,0x35,0x56, 0x4,0x3b,0x33, 0x3,0x3e,0x79,
+  0x3,0x3e,0x7a, 0x4,0x3b,0x36, 0x4,0x3b,0x35, 0x3,0x3e,0x76,
+  0x3,0x3e,0x7b, 0x3,0x3e,0x77, 0x4,0x3b,0x34, 0x4,0x3b,0x2a,
+  0x4,0x3b,0x29, 0x4,0x3b,0x2b, 0x3,0x3f,0x26, 0x6,0x4e,0x6b,
+  0x3,0x3f,0x25, 0x3,0x44,0x57, 0x6,0x58,0x41, 0x3,0x44,0x5e,
+  0x4,0x40,0x6e, 0x4,0x40,0x6d, 0x4,0x40,0x6c, 0x3,0x44,0x5a,
+  0x3,0x44,0x5f, 0x3,0x44,0x62, 0x4,0x47,0x3d, 0x4,0x47,0x40,
+  0x4,0x47,0x4a, 0x4,0x47,0x3c, 0x3,0x49,0x6a, 0x4,0x47,0x46,
+  0x4,0x47,0x42, 0x3,0x49,0x61, 0x4,0x47,0x43, 0x3,0x49,0x69,
+  0x3,0x49,0x67, 0x3,0x49,0x5d, 0x4,0x4d,0x59, 0x4,0x4d,0x56,
+  0x4,0x4d,0x5c, 0x4,0x4d,0x5e, 0x3,0x4e,0x68, 0x4,0x4d,0x61,
+  0x4,0x4d,0x58, 0x4,0x4d,0x5b, 0x3,0x4e,0x6d, 0x4,0x4d,0x5f,
+  0x4,0x4d,0x5a, 0x3,0x4e,0x6b, 0x4,0x4d,0x60, 0x7,0x28,0x79,
+  0x4,0x4d,0x55, 0x3,0x4e,0x71, 0x4,0x53,0x6a, 0x3,0x52,0x6c,
+  0x3,0x52,0x6d, 0x7,0x33,0x4d, 0x4,0x53,0x6b, 0x3,0x56,0x47,
+  0x4,0x58,0x70, 0x3,0x56,0x4b, 0x3,0x56,0x4c, 0x5,0x5e,0x55,
+  0x4,0x5d,0x5a, 0x7,0x4a,0x25, 0x4,0x5d,0x57, 0x4,0x5d,0x5b,
+  0x3,0x59,0x22, 0x3,0x59,0x25, 0x4,0x5d,0x54, 0x3,0x59,0x27,
+  0x4,0x61,0x40, 0x5,0x69,0x52, 0x3,0x5b,0x33, 0x4,0x61,0x3b,
+  0x4,0x61,0x3d, 0x4,0x61,0x45, 0x5,0x69,0x51, 0x4,0x64,0x4e,
+  0x3,0x5d,0x2d, 0x7,0x50,0x31, 0x4,0x64,0x4c, 0x3,0x5d,0x2f,
+  0x4,0x64,0x48, 0x3,0x5d,0x31, 0x4,0x67,0x3d, 0x4,0x67,0x3f,
+  0x7,0x55,0x32, 0x4,0x67,0x3e, 0x4,0x67,0x40, 0x4,0x67,0x39,
+  0x7,0x59,0x38, 0x3,0x5f,0x63, 0x4,0x69,0x48, 0x5,0x76,0x4c,
+  0x4,0x2b,0x49, 0x4,0x30,0x23, 0x6,0x4e,0x7a, 0x3,0x3f,0x27,
+  0x4,0x47,0x4c, 0x3,0x4e,0x77, 0x4,0x58,0x75, 0x4,0x5d,0x61,
+  0x4,0x69,0x4c, 0x4,0x35,0x4a, 0x3,0x3f,0x28, 0x4,0x40,0x74,
+  0x4,0x47,0x4e, 0x4,0x47,0x4f, 0x3,0x49,0x6c, 0x4,0x4d,0x64,
+  0x3,0x52,0x70, 0x4,0x53,0x73, 0x3,0x52,0x6f, 0x4,0x53,0x72,
+  0x3,0x52,0x71, 0x4,0x58,0x76, 0x4,0x58,0x77, 0x3,0x56,0x4e,
+  0x4,0x67,0x44, 0x4,0x6d,0x24, 0x4,0x30,0x25, 0x4,0x35,0x4b,
+  0x6,0x45,0x22, 0x4,0x35,0x4c, 0xf,0x44,0x74, 0x4,0x4d,0x67,
+  0x4,0x4d,0x65, 0x4,0x4d,0x68, 0x4,0x53,0x75, 0x4,0x53,0x77,
+  0x4,0x5d,0x64, 0x4,0x61,0x48, 0x4,0x61,0x46, 0x4,0x67,0x45,
+  0x3,0x5f,0x65, 0x3,0x61,0x4c, 0x4,0x6d,0x25, 0x4,0x35,0x50,
+  0x6,0x45,0x24, 0x3,0x39,0x2f, 0x4,0x3b,0x3e, 0x3,0x49,0x6e,
+  0x3,0x4e,0x79, 0x3,0x4e,0x78, 0x3,0x52,0x72, 0x3,0x56,0x50,
+  0x3,0x59,0x2c, 0x3,0x59,0x2d, 0x4,0x61,0x4a, 0x7,0x4a,0x41,
+  0x3,0x5b,0x37, 0x4,0x5d,0x68, 0x4,0x35,0x51, 0x4,0x35,0x54,
+  0x5,0x3c,0x4c, 0x4,0x3b,0x3f, 0x4,0x3b,0x41, 0x3,0x3f,0x2e,
+  0x4,0x3b,0x42, 0x6,0x4f,0x29, 0x4,0x3b,0x43, 0x4,0x41,0x21,
+  0x3,0x44,0x66, 0x3,0x44,0x68, 0x5,0x4a,0x29, 0x6,0x62,0x6a,
+  0x3,0x49,0x6f, 0x3,0x4e,0x7b, 0x3,0x4e,0x7c, 0x4,0x4d,0x6e,
+  0x4,0x4d,0x6c, 0x7,0x29,0x36, 0x4,0x4d,0x6d, 0x5,0x51,0x39,
+  0x3,0x4f,0x21, 0x3,0x52,0x74, 0x4,0x53,0x7d, 0x4,0x53,0x79,
+  0x4,0x53,0x7b, 0x4,0x53,0x7a, 0x3,0x52,0x76, 0x7,0x3c,0x33,
+  0x4,0x58,0x7a, 0xf,0x60,0x7a, 0x4,0x53,0x7e, 0x3,0x5d,0x35,
+  0x3,0x5e,0x64, 0x4,0x6b,0x21, 0x5,0x30,0x4b, 0x5,0x43,0x34,
+  0x4,0x47,0x59, 0x4,0x47,0x58, 0x4,0x67,0x48, 0x5,0x30,0x4c,
+  0x4,0x30,0x27, 0x4,0x30,0x28, 0x4,0x35,0x55, 0x4,0x35,0x56,
+  0x3,0x39,0x34, 0x3,0x39,0x36, 0x3,0x3f,0x31, 0x4,0x3b,0x45,
+  0x3,0x3f,0x36, 0x3,0x3f,0x32, 0x5,0x3c,0x52, 0x3,0x3f,0x35,
+  0x4,0x3b,0x48, 0x4,0x3b,0x47, 0x4,0x41,0x26, 0x4,0x41,0x27,
+  0x5,0x43,0x3c, 0x3,0x44,0x6a, 0x4,0x41,0x28, 0x5,0x43,0x38,
+  0x4,0x47,0x5a, 0x6,0x62,0x75, 0x4,0x47,0x5b, 0x3,0x49,0x76,
+  0x5,0x4a,0x34, 0x3,0x49,0x77, 0x5,0x4a,0x32, 0x3,0x4f,0x27,
+  0x4,0x4d,0x73, 0x4,0x4d,0x71, 0x3,0x4f,0x24, 0x4,0x4d,0x74,
+  0x7,0x29,0x3d, 0x4,0x54,0x26, 0x5,0x58,0x5c, 0x5,0x58,0x55,
+  0x3,0x52,0x78, 0x4,0x58,0x7d, 0x4,0x59,0x25, 0x4,0x58,0x7c,
+  0x5,0x5e,0x6d, 0x4,0x5d,0x6d, 0x3,0x59,0x2f, 0x4,0x5d,0x6c,
+  0x4,0x5d,0x6a, 0x4,0x5d,0x6e, 0x3,0x59,0x30, 0x4,0x61,0x4d,
+  0x3,0x5d,0x36, 0x4,0x64,0x55, 0x4,0x64,0x53, 0x4,0x64,0x56,
+  0x4,0x67,0x4a, 0x4,0x69,0x4e, 0x3,0x5f,0x66, 0x4,0x69,0x4f,
+  0x4,0x6b,0x23, 0x4,0x6c,0x28, 0x4,0x6d,0x27, 0x4,0x2b,0x4c,
+  0x3,0x2f,0x2f, 0x4,0x30,0x2a, 0x3,0x33,0x7e, 0x4,0x35,0x5e,
+  0x4,0x35,0x59, 0x5,0x35,0x72, 0x3,0x39,0x3b, 0x4,0x35,0x5b,
+  0x4,0x35,0x5c, 0x4,0x35,0x5d, 0x3,0x39,0x3c, 0x5,0x3c,0x63,
+  0x4,0x3b,0x4c, 0x4,0x3b,0x50, 0x3,0x3f,0x3d, 0x4,0x3b,0x4d,
+  0x4,0x3b,0x49, 0x6,0x4f,0x36, 0x6,0x4f,0x3c, 0x5,0x3c,0x5c,
+  0x4,0x3b,0x4a, 0x4,0x3b,0x4b, 0x4,0x3b,0x4f, 0x3,0x3f,0x3c,
+  0x5,0x3c,0x5f, 0x4,0x3b,0x51, 0x4,0x41,0x29, 0x5,0x43,0x4b,
+  0x3,0x44,0x6c, 0x3,0x44,0x6e, 0xf,0x45,0x58, 0x5,0x4a,0x3e,
+  0x4,0x47,0x5e, 0x4,0x47,0x61, 0x4,0x47,0x5f, 0x4,0x47,0x62,
+  0x4,0x47,0x65, 0x3,0x49,0x78, 0x4,0x47,0x64, 0x3,0x4f,0x28,
+  0x3,0x44,0x6f, 0x4,0x4d,0x77, 0x4,0x4e,0x22, 0x3,0x4f,0x2a,
+  0x7,0x29,0x4e, 0x3,0x4f,0x2e, 0x3,0x4f,0x29, 0x4,0x4d,0x7e,
+  0x4,0x4e,0x21, 0x4,0x4d,0x7d, 0x4,0x4d,0x79, 0x4,0x4d,0x78,
+  0x4,0x4d,0x76, 0x3,0x4f,0x2d, 0x4,0x4e,0x23, 0x4,0x54,0x2e,
+  0x3,0x52,0x7d, 0x3,0x52,0x7a, 0x4,0x54,0x2f, 0x4,0x54,0x2d,
+  0x5,0x58,0x62, 0x4,0x54,0x30, 0x3,0x52,0x79, 0x5,0x5e,0x7b,
+  0x4,0x59,0x2b, 0x4,0x59,0x2c, 0x4,0x59,0x26, 0xf,0x5c,0x78,
+  0x4,0x59,0x2a, 0x4,0x59,0x28, 0x3,0x56,0x53, 0x3,0x59,0x33,
+  0x4,0x5d,0x74, 0x4,0x5d,0x78, 0x4,0x5d,0x72, 0x4,0x5d,0x75,
+  0x7,0x4a,0x57, 0x4,0x61,0x50, 0x3,0x59,0x34, 0x4,0x61,0x51,
+  0x4,0x5d,0x77, 0x4,0x64,0x5b, 0x4,0x64,0x5a, 0x4,0x67,0x50,
+  0x4,0x67,0x4c, 0x5,0x74,0x4b, 0x4,0x6b,0x24, 0x7,0x5c,0x77,
+  0x4,0x6c,0x29, 0x3,0x61,0x4f, 0x3,0x62,0x2e, 0x3,0x3f,0x42,
+  0x5,0x3c,0x67, 0x4,0x3b,0x52, 0x4,0x3b,0x53, 0x3,0x3f,0x41,
+  0x3,0x44,0x71, 0x3,0x44,0x70, 0x3,0x44,0x72, 0x4,0x4e,0x26,
+  0x4,0x54,0x32, 0x4,0x59,0x30, 0x3,0x56,0x56, 0x3,0x5b,0x3e,
+  0x4,0x64,0x5f, 0x3,0x60,0x4c, 0x4,0x2b,0x4d, 0x4,0x2b,0x4e,
+  0xf,0x2d,0x53, 0x3,0x34,0x22, 0x3,0x39,0x43, 0x3,0x39,0x44,
+  0x3,0x39,0x48, 0x4,0x35,0x61, 0x4,0x35,0x62, 0x3,0x39,0x45,
+  0x3,0x39,0x46, 0x3,0x39,0x42, 0x6,0x45,0x45, 0x3,0x3f,0x48,
+  0x3,0x3f,0x43, 0x4,0x3b,0x54, 0x3,0x3f,0x4a, 0x3,0x44,0x75,
+  0x4,0x41,0x2a, 0x3,0x44,0x74, 0x6,0x59,0x24, 0x4,0x41,0x2c,
+  0x4,0x47,0x66, 0x4,0x47,0x69, 0x4,0x47,0x67, 0x3,0x49,0x7e,
+  0x4,0x4e,0x28, 0x4,0x4e,0x27, 0x4,0x4e,0x2a, 0x4,0x4e,0x29,
+  0x3,0x53,0x23, 0x5,0x58,0x72, 0x4,0x54,0x33, 0x4,0x54,0x34,
+  0x5,0x51,0x61, 0x3,0x56,0x58, 0x4,0x59,0x32, 0x4,0x59,0x35,
+  0x4,0x59,0x37, 0x3,0x56,0x57, 0x4,0x59,0x31, 0x4,0x5d,0x7c,
+  0x4,0x5d,0x7b, 0x4,0x5d,0x7a, 0x5,0x65,0x35, 0x4,0x5d,0x7d,
+  0x4,0x5d,0x7e, 0x4,0x61,0x59, 0x4,0x61,0x58, 0x4,0x61,0x57,
+  0x4,0x64,0x60, 0x4,0x64,0x61, 0x4,0x67,0x52, 0xf,0x68,0x53,
+  0x3,0x5f,0x68, 0x3,0x5f,0x67, 0x3,0x60,0x7d, 0x4,0x6d,0x61,
+  0x4,0x6e,0x21, 0x3,0x62,0x3d, 0x4,0x4e,0x2e, 0x3,0x5d,0x39,
+  0x4,0x47,0x6b, 0xf,0x4c,0x67, 0x3,0x4f,0x38, 0x4,0x64,0x63,
+  0x7,0x50,0x56, 0x3,0x27,0x32, 0x4,0x25,0x22, 0xf,0x28,0x72,
+  0x3,0x2a,0x6f, 0x5,0x27,0x69, 0x4,0x2b,0x53, 0x4,0x2b,0x50,
+  0x3,0x34,0x23, 0x4,0x30,0x2d, 0x4,0x30,0x30, 0x3,0x34,0x24,
+  0x4,0x30,0x2e, 0x3,0x39,0x49, 0x4,0x35,0x69, 0x3,0x39,0x4d,
+  0x3,0x3f,0x53, 0x4,0x3b,0x57, 0x3,0x3f,0x4e, 0x6,0x4f,0x48,
+  0x3,0x3f,0x52, 0x4,0x41,0x2f, 0x3,0x4a,0x25, 0x4,0x47,0x6c,
+  0x3,0x4a,0x23, 0x3,0x4f,0x3a, 0x4,0x4e,0x31, 0x4,0x4e,0x35,
+  0x3,0x4f,0x3d, 0x3,0x53,0x2a, 0x3,0x53,0x28, 0x3,0x53,0x29,
+  0x4,0x59,0x38, 0x4,0x59,0x39, 0x7,0x43,0x77, 0x3,0x59,0x39,
+  0x4,0x61,0x5e, 0x4,0x6c,0x2c, 0x3,0x22,0x5f, 0x4,0x23,0x32,
+  0x3,0x27,0x36, 0x3,0x27,0x37, 0x3,0x27,0x38, 0x3,0x2a,0x76,
+  0x4,0x28,0x29, 0x3,0x2f,0x36, 0x4,0x2b,0x56, 0x3,0x45,0x22,
+  0x3,0x2f,0x3d, 0x4,0x2b,0x54, 0x4,0x2b,0x58, 0x3,0x2f,0x39,
+  0x3,0x2f,0x3a, 0x6,0x34,0x6d, 0x4,0x30,0x38, 0x4,0x30,0x34,
+  0x3,0x34,0x28, 0x4,0x30,0x33, 0x4,0x47,0x71, 0x4,0x35,0x6c,
+  0x4,0x35,0x6e, 0x4,0x35,0x73, 0x4,0x35,0x6b, 0x3,0x39,0x50,
+  0x4,0x35,0x70, 0x4,0x3b,0x5e, 0x3,0x3f,0x58, 0x4,0x41,0x34,
+  0x4,0x41,0x36, 0x3,0x45,0x21, 0x4,0x59,0x3c, 0x4,0x41,0x38,
+  0x4,0x47,0x6d, 0x4,0x47,0x6e, 0x3,0x4a,0x29, 0x3,0x4a,0x28,
+  0x5,0x4a,0x60, 0x4,0x47,0x70, 0x3,0x4f,0x3e, 0x4,0x4e,0x3d,
+  0x4,0x4e,0x3c, 0x5,0x58,0x7e, 0x5,0x5f,0x3c, 0x3,0x60,0x4d,
+  0x4,0x6b,0x26, 0x3,0x2f,0x3f, 0x3,0x34,0x2b, 0x3,0x34,0x2c,
+  0x4,0x35,0x78, 0x4,0x35,0x74, 0x3,0x39,0x53, 0x5,0x36,0x36,
+  0x4,0x35,0x75, 0x4,0x3b,0x60, 0x3,0x3f,0x5a, 0x3,0x3f,0x5b,
+  0x3,0x3f,0x5c, 0x4,0x3b,0x64, 0x6,0x59,0x4c, 0x3,0x45,0x26,
+  0x4,0x41,0x3d, 0x4,0x41,0x3c, 0x4,0x41,0x3f, 0x4,0x41,0x3e,
+  0x4,0x47,0x73, 0x4,0x47,0x74, 0x4,0x4e,0x3f, 0x4,0x4e,0x41,
+  0x4,0x4e,0x3e, 0x4,0x4e,0x40, 0x4,0x54,0x3d, 0x4,0x54,0x3c,
+  0x4,0x54,0x3a, 0x3,0x53,0x2e, 0x4,0x54,0x40, 0x4,0x54,0x3b,
+  0x7,0x34,0x54, 0x3,0x53,0x30, 0x4,0x59,0x3d, 0x4,0x59,0x42,
+  0x7,0x3c,0x70, 0x4,0x59,0x41, 0x5,0x65,0x45, 0x4,0x61,0x61,
+  0x4,0x61,0x64, 0x4,0x61,0x63, 0x4,0x61,0x62, 0x4,0x61,0x65,
+  0x4,0x67,0x5a, 0x4,0x67,0x5b, 0x4,0x69,0x54, 0x4,0x69,0x53,
+  0x4,0x6c,0x2e, 0x4,0x6c,0x2d, 0x4,0x6e,0x3d, 0x4,0x35,0x7a,
+  0x6,0x3c,0x63, 0x3,0x39,0x5a, 0x3,0x3f,0x5f, 0x3,0x3f,0x64,
+  0x3,0x3f,0x61, 0x3,0x3f,0x67, 0x3,0x45,0x2c, 0x5,0x43,0x6d,
+  0x3,0x4a,0x2e, 0x4,0x47,0x79, 0x3,0x4a,0x36, 0x4,0x47,0x76,
+  0x4,0x47,0x7b, 0x4,0x47,0x78, 0x3,0x4f,0x4f, 0x4,0x4e,0x43,
+  0x3,0x4f,0x47, 0x3,0x4f,0x46, 0x7,0x2a,0x38, 0x3,0x4f,0x4a,
+  0x7,0x2a,0x3e, 0x3,0x53,0x33, 0x3,0x53,0x34, 0x4,0x54,0x48,
+  0x4,0x54,0x46, 0x7,0x3c,0x7b, 0x3,0x56,0x69, 0x7,0x3c,0x77,
+  0x4,0x59,0x45, 0x4,0x59,0x44, 0xf,0x5d,0x4c, 0x3,0x59,0x3f,
+  0x3,0x59,0x41, 0x4,0x5e,0x2f, 0x4,0x5e,0x2c, 0x7,0x44,0x39,
+  0x4,0x5e,0x27, 0x5,0x65,0x4f, 0x4,0x5e,0x2b, 0x3,0x59,0x48,
+  0x3,0x59,0x47, 0x3,0x5b,0x46, 0x4,0x61,0x66, 0x3,0x5b,0x4b,
+  0x3,0x5b,0x40, 0x3,0x5b,0x52, 0x4,0x61,0x69, 0x5,0x6a,0x33,
+  0x4,0x61,0x68, 0x3,0x5b,0x51, 0x3,0x5b,0x4c, 0x3,0x5b,0x49,
+  0xf,0x64,0x34, 0x3,0x5d,0x3b, 0x4,0x61,0x6c, 0x3,0x5d,0x40,
+  0x4,0x64,0x66, 0x4,0x64,0x6c, 0x5,0x6e,0x35, 0x3,0x5d,0x48,
+  0x4,0x64,0x6d, 0x4,0x67,0x5f, 0x3,0x5e,0x6b, 0x4,0x64,0x69,
+  0x4,0x67,0x61, 0x3,0x5e,0x6c, 0x4,0x67,0x63, 0x7,0x55,0x68,
+  0x3,0x5e,0x69, 0x3,0x5e,0x6e, 0x3,0x5e,0x6f, 0x3,0x5f,0x6f,
+  0x3,0x60,0x51, 0x5,0x71,0x55, 0x7,0x59,0x67, 0x3,0x5f,0x6d,
+  0x7,0x59,0x68, 0x3,0x5f,0x70, 0x5,0x74,0x55, 0x4,0x6b,0x2a,
+  0x5,0x76,0x5f, 0x4,0x6b,0x27, 0x3,0x60,0x4e, 0x3,0x60,0x50,
+  0x3,0x61,0x23, 0x3,0x61,0x21, 0x4,0x6c,0x30, 0x3,0x61,0x24,
+  0x3,0x61,0x6e, 0x6,0x3c,0x65, 0x4,0x3b,0x67, 0xf,0x3f,0x76,
+  0x4,0x41,0x49, 0x4,0x5e,0x32, 0x3,0x39,0x5b, 0x4,0x35,0x7c,
+  0x3,0x3f,0x6a, 0x4,0x3b,0x6b, 0x3,0x3f,0x6e, 0x3,0x3f,0x6b,
+  0x3,0x45,0x3b, 0x4,0x41,0x50, 0x4,0x41,0x4e, 0x4,0x48,0x23,
+  0x3,0x4a,0x3b, 0x3,0x4a,0x3f, 0x3,0x4a,0x3a, 0x5,0x4a,0x6e,
+  0x3,0x4a,0x3c, 0x7,0x2a,0x46, 0x4,0x4e,0x48, 0x3,0x4f,0x54,
+  0x3,0x4f,0x57, 0x4,0x54,0x4f, 0x4,0x54,0x4b, 0x3,0x53,0x3f,
+  0x4,0x54,0x4c, 0x3,0x53,0x41, 0x3,0x53,0x43, 0x3,0x53,0x46,
+  0x3,0x53,0x45, 0x7,0x34,0x73, 0x4,0x59,0x4e, 0x4,0x59,0x4f,
+  0x4,0x59,0x54, 0x3,0x56,0x6e, 0x3,0x56,0x6c, 0x4,0x59,0x4d,
+  0x4,0x59,0x52, 0x4,0x67,0x66, 0x4,0x64,0x71, 0x5,0x71,0x5b,
+  0x4,0x69,0x55, 0x5,0x21,0x7d, 0x3,0x22,0x60, 0x3,0x24,0x3e,
+  0x5,0x24,0x7b, 0x6,0x29,0x35, 0x4,0x28,0x31, 0x4,0x28,0x32,
+  0x3,0x2a,0x7a, 0x5,0x2b,0x64, 0x4,0x2b,0x5a, 0x3,0x2f,0x41,
+  0x4,0x2b,0x59, 0x4,0x30,0x40, 0x4,0x30,0x3d, 0x3,0x34,0x35,
+  0x4,0x30,0x3e, 0x3,0x34,0x37, 0x4,0x30,0x3c, 0x3,0x39,0x63,
+  0x3,0x39,0x5d, 0x4,0x35,0x7d, 0x3,0x39,0x60, 0x3,0x39,0x62,
+  0x3,0x39,0x64, 0x3,0x39,0x5f, 0x3,0x3f,0x6f, 0x4,0x3b,0x6d,
+  0x3,0x3f,0x74, 0x3,0x45,0x3f, 0x3,0x45,0x3e, 0x4,0x41,0x55,
+  0x4,0x41,0x54, 0x3,0x45,0x3d, 0x3,0x45,0x41, 0x3,0x4a,0x41,
+  0x3,0x4a,0x40, 0x3,0x4a,0x43, 0x3,0x4a,0x42, 0x3,0x4f,0x59,
+  0x3,0x4f,0x58, 0x7,0x2a,0x54, 0x3,0x53,0x47, 0x4,0x54,0x53,
+  0x4,0x54,0x51, 0x4,0x59,0x55, 0x3,0x5b,0x54, 0x4,0x64,0x73,
+  0x4,0x67,0x67, 0x3,0x34,0x38, 0x4,0x36,0x24, 0x3,0x3f,0x7a,
+  0x3,0x3f,0x76, 0x3,0x3f,0x79, 0x3,0x3f,0x77, 0x4,0x41,0x56,
+  0x3,0x45,0x44, 0x3,0x45,0x43, 0x3,0x45,0x45, 0x3,0x4a,0x48,
+  0x3,0x4f,0x5d, 0x3,0x4f,0x5c, 0x3,0x53,0x4b, 0x3,0x53,0x4a,
+  0x3,0x52,0x38, 0x4,0x59,0x58, 0x3,0x56,0x72, 0x3,0x59,0x4c,
+  0x3,0x5b,0x55, 0x3,0x5d,0x4a, 0x3,0x5b,0x56, 0x3,0x5d,0x4b,
+  0x4,0x69,0x56, 0x3,0x61,0x51, 0x3,0x62,0x40, 0x3,0x39,0x66,
+  0x3,0x3f,0x7d, 0x6,0x50,0x31, 0x3,0x45,0x48, 0x4,0x48,0x2d,
+  0x4,0x48,0x31, 0x4,0x48,0x2e, 0x3,0x4a,0x4a, 0x4,0x48,0x34,
+  0x3,0x4a,0x4b, 0x4,0x48,0x33, 0x6,0x63,0x7b, 0x3,0x4f,0x5e,
+  0x3,0x4f,0x61, 0x3,0x4f,0x5f, 0x4,0x54,0x59, 0x3,0x53,0x4f,
+  0x3,0x53,0x4e, 0x4,0x59,0x60, 0x3,0x56,0x73, 0x3,0x56,0x77,
+  0x4,0x54,0x58, 0x3,0x56,0x76, 0x4,0x59,0x5d, 0x4,0x59,0x5f,
+  0x4,0x5e,0x35, 0x3,0x59,0x4d, 0x3,0x59,0x4e, 0x4,0x5e,0x36,
+  0x7,0x44,0x58, 0x7,0x44,0x60, 0x4,0x61,0x74, 0x4,0x61,0x73,
+  0x3,0x5b,0x57, 0x3,0x5b,0x58, 0x3,0x5b,0x59, 0x4,0x64,0x75,
+  0x3,0x5d,0x4d, 0x4,0x69,0x58, 0x4,0x69,0x5a, 0x4,0x69,0x5b,
+  0x3,0x60,0x58, 0x3,0x61,0x53, 0x3,0x61,0x27, 0x3,0x61,0x52,
+  0x3,0x62,0x24, 0x3,0x62,0x44, 0x3,0x62,0x46, 0x4,0x69,0x5c,
+  0x4,0x36,0x28, 0x4,0x36,0x2a, 0x4,0x3b,0x74, 0x4,0x4e,0x4c,
+  0x4,0x64,0x7b, 0x4,0x41,0x5a, 0x3,0x45,0x4a, 0x3,0x4a,0x4d,
+  0x4,0x48,0x38, 0x4,0x48,0x37, 0x4,0x54,0x5d, 0x4,0x54,0x5c,
+  0x4,0x59,0x62, 0x4,0x64,0x7c, 0x4,0x67,0x6e, 0x5,0x71,0x63,
+  0x4,0x6c,0x33, 0x4,0x3b,0x79, 0x3,0x40,0x23, 0x4,0x3b,0x76,
+  0x3,0x45,0x4d, 0x4,0x41,0x5d, 0x4,0x41,0x5f, 0x3,0x45,0x4c,
+  0xf,0x46,0x32, 0x6,0x5a,0x28, 0x4,0x48,0x3a, 0x4,0x48,0x40,
+  0x4,0x48,0x3b, 0x3,0x4a,0x4f, 0x3,0x4a,0x50, 0x4,0x48,0x3d,
+  0x4,0x4e,0x4f, 0x4,0x54,0x63, 0x4,0x54,0x61, 0x4,0x54,0x60,
+  0x4,0x54,0x64, 0x4,0x54,0x62, 0x4,0x59,0x63, 0x4,0x54,0x68,
+  0x3,0x53,0x52, 0x3,0x56,0x7c, 0x4,0x59,0x68, 0x4,0x59,0x64,
+  0x7,0x3d,0x56, 0x3,0x56,0x79, 0x3,0x56,0x7d, 0x3,0x56,0x7e,
+  0x4,0x5e,0x3e, 0x5,0x65,0x7e, 0x4,0x5e,0x42, 0x4,0x5e,0x3c,
+  0x5,0x65,0x73, 0x5,0x65,0x7b, 0x4,0x5e,0x3b, 0x4,0x5e,0x41,
+  0x3,0x5b,0x5c, 0x3,0x5b,0x5b, 0x4,0x61,0x77, 0x4,0x61,0x7b,
+  0x3,0x5b,0x5a, 0x4,0x65,0x23, 0x4,0x64,0x7e, 0x5,0x6e,0x49,
+  0x7,0x56,0x27, 0x7,0x56,0x25, 0x4,0x67,0x72, 0x4,0x67,0x70,
+  0x5,0x71,0x69, 0x7,0x56,0x26, 0x3,0x5f,0x74, 0x5,0x74,0x62,
+  0x4,0x6b,0x2c, 0x3,0x60,0x5a, 0x4,0x6c,0x34, 0x4,0x6d,0x2d,
+  0x3,0x61,0x54, 0x4,0x6d,0x65, 0x3,0x61,0x70, 0x4,0x6e,0x22,
+  0x4,0x41,0x61, 0x4,0x48,0x43, 0x4,0x48,0x41, 0x4,0x48,0x42,
+  0x4,0x48,0x44, 0x3,0x53,0x54, 0x4,0x59,0x6b, 0x7,0x44,0x77,
+  0x4,0x5e,0x45, 0x3,0x59,0x52, 0x4,0x61,0x7d, 0x4,0x61,0x7e,
+  0x4,0x67,0x73, 0x4,0x69,0x60, 0x3,0x60,0x5b, 0x3,0x45,0x4e,
+  0x3,0x57,0x21, 0x3,0x5b,0x63, 0x3,0x5b,0x62, 0x3,0x5d,0x52,
+  0x4,0x67,0x75, 0x4,0x6b,0x2d, 0x3,0x40,0x25, 0x3,0x40,0x26,
+  0x3,0x40,0x27, 0x3,0x45,0x51, 0x4,0x54,0x6a, 0x4,0x54,0x69,
+  0x3,0x59,0x53, 0x4,0x62,0x22, 0x4,0x62,0x23, 0x3,0x5f,0x75,
+  0x4,0x3b,0x7b, 0xf,0x40,0x2d, 0x4,0x41,0x65, 0x4,0x41,0x64,
+  0x5,0x44,0x34, 0x5,0x4b,0x3e, 0x4,0x48,0x4d, 0x3,0x4a,0x51,
+  0x4,0x48,0x4e, 0x3,0x4a,0x53, 0x4,0x48,0x4c, 0x4,0x48,0x4b,
+  0x5,0x4b,0x3f, 0x4,0x48,0x47, 0x3,0x4f,0x68, 0x4,0x4e,0x59,
+  0x4,0x4e,0x5c, 0x5,0x52,0x60, 0x4,0x54,0x6d, 0x4,0x54,0x6f,
+  0x3,0x53,0x56, 0x4,0x4e,0x5d, 0x3,0x53,0x60, 0x3,0x53,0x57,
+  0x3,0x53,0x5e, 0x7,0x35,0x51, 0x3,0x57,0x25, 0x4,0x59,0x73,
+  0x7,0x3d,0x69, 0x3,0x57,0x22, 0x4,0x59,0x77, 0x3,0x57,0x23,
+  0x3,0x57,0x24, 0x3,0x57,0x27, 0x3,0x57,0x29, 0x4,0x5e,0x4e,
+  0x3,0x59,0x54, 0x4,0x5e,0x49, 0x4,0x5e,0x47, 0x4,0x5e,0x4b,
+  0x3,0x59,0x57, 0x3,0x59,0x55, 0x4,0x5e,0x4d, 0x4,0x5e,0x4c,
+  0x3,0x59,0x5a, 0x4,0x62,0x27, 0x4,0x62,0x29, 0x4,0x62,0x2d,
+  0x4,0x62,0x26, 0x4,0x62,0x2c, 0x3,0x5b,0x64, 0x4,0x62,0x25,
+  0x4,0x62,0x2f, 0x4,0x62,0x28, 0x4,0x62,0x2b, 0x4,0x65,0x2f,
+  0x4,0x65,0x31, 0x4,0x65,0x30, 0x3,0x5d,0x54, 0x4,0x67,0x77,
+  0x4,0x67,0x79, 0x4,0x67,0x76, 0x4,0x67,0x7c, 0x4,0x67,0x7b,
+  0x7,0x56,0x32, 0x4,0x69,0x63, 0x3,0x5f,0x76, 0x4,0x69,0x62,
+  0x4,0x6c,0x39, 0x5,0x78,0x48, 0x3,0x61,0x55, 0x4,0x36,0x2b,
+  0x4,0x3b,0x7e, 0x3,0x45,0x53, 0x4,0x41,0x6d, 0x4,0x41,0x72,
+  0x4,0x41,0x6e, 0x4,0x48,0x51, 0x4,0x48,0x56, 0x4,0x48,0x59,
+  0x4,0x48,0x50, 0x4,0x48,0x54, 0x3,0x4a,0x57, 0x4,0x4e,0x60,
+  0x4,0x4e,0x61, 0x4,0x54,0x76, 0x4,0x54,0x77, 0x4,0x54,0x73,
+  0x4,0x54,0x74, 0x4,0x54,0x75, 0x4,0x59,0x7d, 0x4,0x5a,0x22,
+  0x4,0x5a,0x21, 0x4,0x59,0x7c, 0x4,0x59,0x7a, 0x4,0x59,0x7e,
+  0x4,0x5e,0x51, 0x7,0x44,0x7e, 0x4,0x5e,0x50, 0x4,0x5e,0x52,
+  0x3,0x59,0x5d, 0x3,0x59,0x5e, 0x3,0x59,0x5f, 0x4,0x62,0x32,
+  0x3,0x5b,0x67, 0x3,0x5b,0x66, 0x4,0x65,0x36, 0x3,0x5d,0x55,
+  0x4,0x67,0x7e, 0x4,0x6b,0x30, 0x4,0x6c,0x3a, 0x3,0x57,0x2b,
+  0x3,0x59,0x60, 0x3,0x34,0x3a, 0x4,0x36,0x2c, 0x3,0x40,0x29,
+  0x3,0x40,0x2a, 0x4,0x3c,0x24, 0x3,0x40,0x28, 0x4,0x3c,0x25,
+  0x3,0x45,0x5d, 0x3,0x40,0x2c, 0x4,0x41,0x77, 0x4,0x41,0x74,
+  0x3,0x4a,0x5c, 0x3,0x45,0x5e, 0x4,0x41,0x75, 0x3,0x45,0x56,
+  0x3,0x45,0x55, 0x3,0x45,0x5a, 0x4,0x41,0x79, 0x4,0x41,0x7a,
+  0x3,0x4a,0x58, 0x3,0x4a,0x59, 0x4,0x48,0x5b, 0x7,0x2b,0x38,
+  0x3,0x4a,0x5a, 0x4,0x48,0x5c, 0x6,0x64,0x40, 0x3,0x4f,0x6a,
+  0x4,0x4e,0x65, 0x4,0x4e,0x64, 0x4,0x4e,0x67, 0x4,0x4e,0x66,
+  0x4,0x54,0x78, 0x4,0x4e,0x69, 0x4,0x54,0x7c, 0x4,0x54,0x7d,
+  0x4,0x54,0x7a, 0x4,0x5a,0x27, 0x4,0x55,0x22, 0x4,0x5a,0x28,
+  0x4,0x5a,0x2a, 0x5,0x60,0x31, 0x3,0x57,0x2d, 0x3,0x59,0x64,
+  0x5,0x60,0x2c, 0x3,0x57,0x2c, 0x4,0x5e,0x58, 0x4,0x5e,0x57,
+  0x4,0x5e,0x5b, 0x4,0x5e,0x59, 0x4,0x5e,0x5a, 0x4,0x65,0x39,
+  0x4,0x62,0x36, 0x3,0x5b,0x68, 0x4,0x65,0x3c, 0x4,0x65,0x3b,
+  0x3,0x5d,0x57, 0x3,0x5d,0x59, 0x4,0x68,0x24, 0x4,0x68,0x23,
+  0x3,0x5e,0x7d, 0x4,0x68,0x22, 0x4,0x69,0x67, 0x4,0x69,0x65,
+  0x3,0x5f,0x77, 0x4,0x69,0x68, 0x4,0x6b,0x31, 0x3,0x61,0x56,
+  0x4,0x6d,0x30, 0x4,0x6d,0x67, 0x4,0x6e,0x25, 0x3,0x4f,0x6c,
+  0x3,0x53,0x67, 0x4,0x5e,0x5f, 0x4,0x62,0x3c, 0x4,0x48,0x5d,
+  0x3,0x57,0x2f, 0x4,0x55,0x26, 0x3,0x57,0x2e, 0x3,0x61,0x71,
+  0x3,0x40,0x2d, 0x5,0x44,0x4a, 0x3,0x45,0x60, 0x4,0x48,0x5e,
+  0x3,0x4a,0x65, 0x4,0x48,0x5f, 0x3,0x4a,0x5f, 0x3,0x4a,0x67,
+  0x3,0x4a,0x68, 0x3,0x4a,0x6b, 0x3,0x4a,0x69, 0x4,0x4e,0x6f,
+  0x3,0x4f,0x71, 0x3,0x4f,0x70, 0x4,0x4e,0x6e, 0x3,0x4f,0x6f,
+  0x4,0x4e,0x6d, 0x4,0x4e,0x70, 0x3,0x53,0x6f, 0x3,0x53,0x6e,
+  0x3,0x53,0x6d, 0x5,0x5a,0x2c, 0x3,0x53,0x69, 0x4,0x55,0x2d,
+  0x5,0x5a,0x2e, 0x7,0x36,0x28, 0x4,0x5a,0x2e, 0x3,0x57,0x32,
+  0x3,0x57,0x35, 0x4,0x5a,0x2d, 0x3,0x57,0x31, 0x4,0x5e,0x67,
+  0x5,0x6a,0x6e, 0x4,0x5e,0x62, 0x3,0x59,0x68, 0x4,0x5e,0x68,
+  0x3,0x59,0x69, 0x4,0x5e,0x63, 0x4,0x5e,0x65, 0x3,0x59,0x6c,
+  0x4,0x62,0x41, 0x4,0x62,0x3f, 0x3,0x5b,0x6a, 0x4,0x62,0x46,
+  0x4,0x62,0x40, 0x4,0x62,0x44, 0x4,0x62,0x45, 0x4,0x65,0x41,
+  0x4,0x65,0x40, 0x3,0x5d,0x5d, 0x3,0x5d,0x5b, 0x4,0x65,0x47,
+  0x5,0x6e,0x66, 0x5,0x6e,0x6d, 0x3,0x5d,0x5c, 0x4,0x68,0x29,
+  0x4,0x68,0x2a, 0x4,0x68,0x2b, 0x4,0x68,0x2d, 0x3,0x5f,0x23,
+  0x5,0x72,0x2d, 0x4,0x68,0x28, 0x7,0x5a,0x3e, 0x5,0x74,0x76,
+  0x4,0x69,0x6b, 0x4,0x69,0x69, 0x3,0x5f,0x7a, 0x4,0x6b,0x33,
+  0x4,0x6b,0x34, 0x4,0x6b,0x32, 0x3,0x61,0x2b, 0x7,0x60,0x2e,
+  0x7,0x60,0x2d, 0x3,0x61,0x57, 0x4,0x6d,0x68, 0x3,0x62,0x27,
+  0x4,0x6e,0x3f, 0x3,0x62,0x37, 0x4,0x6e,0x57, 0x3,0x39,0x69,
+  0x3,0x40,0x2e, 0x4,0x48,0x62, 0x3,0x4a,0x6d, 0x3,0x4f,0x75,
+  0x4,0x4e,0x75, 0x4,0x4e,0x73, 0x4,0x4e,0x76, 0x3,0x4f,0x78,
+  0x3,0x53,0x72, 0x3,0x53,0x73, 0x4,0x55,0x30, 0x4,0x55,0x32,
+  0x4,0x55,0x2f, 0x4,0x55,0x2e, 0x3,0x57,0x39, 0x4,0x5a,0x31,
+  0x4,0x5a,0x35, 0x4,0x5a,0x30, 0x3,0x57,0x38, 0x4,0x5a,0x33,
+  0x5,0x66,0x51, 0x4,0x5e,0x6e, 0x3,0x5b,0x70, 0x4,0x62,0x48,
+  0x4,0x62,0x47, 0x4,0x65,0x49, 0x3,0x5d,0x5f, 0x4,0x68,0x30,
+  0x4,0x69,0x6e, 0x4,0x6b,0x35, 0x4,0x6c,0x3e, 0x4,0x6d,0x33,
+  0x3,0x40,0x30, 0x4,0x42,0x22, 0x4,0x62,0x4a, 0x5,0x74,0x7a,
+  0x7,0x64,0x75, 0x3,0x40,0x31, 0x5,0x3d,0x52, 0x6,0x64,0x5e,
+  0x4,0x48,0x6a, 0x4,0x48,0x69, 0x4,0x48,0x67, 0x3,0x4a,0x74,
+  0x5,0x4b,0x59, 0x4,0x4e,0x7b, 0x3,0x4f,0x7a, 0x4,0x55,0x35,
+  0x4,0x55,0x36, 0x4,0x5a,0x38, 0x3,0x57,0x3d, 0x4,0x5a,0x3b,
+  0x4,0x5e,0x70, 0x4,0x5e,0x73, 0x3,0x59,0x6e, 0x4,0x5e,0x74,
+  0x4,0x5e,0x76, 0x4,0x5e,0x75, 0x4,0x5e,0x77, 0x4,0x62,0x4e,
+  0x3,0x5b,0x72, 0x4,0x62,0x4c, 0x4,0x65,0x4d, 0x4,0x65,0x4f,
+  0x4,0x65,0x4e, 0x7,0x51,0x79, 0x5,0x72,0x3f, 0x3,0x5f,0x26,
+  0x4,0x69,0x72, 0x4,0x6c,0x43, 0x4,0x6c,0x41, 0x3,0x61,0x2d,
+  0x5,0x78,0x52, 0x4,0x6d,0x35, 0x7,0x61,0x6a, 0x4,0x6d,0x69,
+  0x4,0x6e,0x49, 0x7,0x51,0x7d, 0x5,0x72,0x41, 0x3,0x4a,0x77,
+  0x3,0x4a,0x76, 0x3,0x4d,0x3e, 0x3,0x53,0x76, 0x7,0x5a,0x4b,
+  0x3,0x61,0x58, 0x3,0x4a,0x79, 0x4,0x4f,0x24, 0x4,0x4f,0x25,
+  0x4,0x55,0x3f, 0x3,0x53,0x77, 0x4,0x5e,0x7e, 0x3,0x59,0x70,
+  0x4,0x5e,0x7d, 0x4,0x5e,0x7c, 0x3,0x5b,0x73, 0x5,0x66,0x68,
+  0x3,0x5d,0x65, 0x4,0x69,0x77, 0x4,0x69,0x76, 0x7,0x5a,0x4f,
+  0x4,0x6c,0x48, 0x4,0x6c,0x49, 0x4,0x6e,0x58, 0x5,0x3d,0x54,
+  0x4,0x48,0x6d, 0x5,0x4b,0x64, 0x4,0x4f,0x28, 0x4,0x4f,0x34,
+  0x3,0x50,0x21, 0x7,0x2b,0x6a, 0x4,0x4f,0x39, 0x4,0x4f,0x32,
+  0x4,0x4f,0x2b, 0x4,0x4f,0x29, 0x3,0x54,0x27, 0x4,0x55,0x44,
+  0x4,0x55,0x42, 0x4,0x55,0x48, 0x3,0x53,0x7e, 0x3,0x54,0x28,
+  0x4,0x55,0x41, 0x3,0x54,0x26, 0x3,0x54,0x24, 0x3,0x54,0x22,
+  0x3,0x53,0x7b, 0x4,0x5a,0x40, 0x3,0x57,0x41, 0x4,0x5f,0x21,
+  0x7,0x3e,0x49, 0x4,0x5a,0x42, 0x3,0x59,0x72, 0x4,0x5f,0x23,
+  0x5,0x66,0x6e, 0x4,0x5f,0x27, 0x4,0x5f,0x25, 0x3,0x59,0x78,
+  0x4,0x5f,0x24, 0x3,0x59,0x77, 0x4,0x5f,0x29, 0x4,0x5f,0x2b,
+  0x4,0x62,0x5d, 0x5,0x6b,0x35, 0x4,0x62,0x67, 0x4,0x62,0x57,
+  0x4,0x62,0x61, 0x4,0x62,0x59, 0x4,0x62,0x54, 0x3,0x5b,0x76,
+  0x5,0x6b,0x31, 0x4,0x62,0x62, 0x5,0x6b,0x2b, 0x4,0x62,0x60,
+  0x4,0x62,0x64, 0x3,0x5b,0x78, 0x3,0x5b,0x7b, 0x3,0x5b,0x7c,
+  0xf,0x64,0x72, 0x3,0x5d,0x77, 0x4,0x65,0x55, 0x7,0x52,0x31,
+  0x4,0x65,0x5b, 0x3,0x5d,0x6c, 0x7,0x52,0x33, 0x4,0x65,0x53,
+  0x3,0x5d,0x6b, 0x3,0x5d,0x6d, 0x4,0x68,0x3d, 0x3,0x5f,0x2d,
+  0x3,0x5f,0x30, 0x4,0x68,0x3c, 0x3,0x5f,0x2e, 0x3,0x5f,0x2b,
+  0x4,0x68,0x3a, 0x3,0x5f,0x29, 0x3,0x5f,0x2f, 0x4,0x69,0x7d,
+  0x3,0x5f,0x7d, 0x4,0x6a,0x21, 0x4,0x69,0x7c, 0x3,0x5f,0x7c,
+  0x4,0x69,0x7e, 0x3,0x60,0x24, 0x4,0x69,0x7b, 0x3,0x60,0x21,
+  0xf,0x6a,0x3f, 0x4,0x6b,0x3c, 0x4,0x6b,0x3d, 0x4,0x6b,0x40,
+  0x4,0x6b,0x3b, 0x7,0x5e,0x23, 0x3,0x60,0x67, 0x3,0x60,0x64,
+  0x5,0x78,0x5b, 0x5,0x78,0x56, 0x3,0x61,0x30, 0x4,0x6c,0x4d,
+  0x4,0x6c,0x4e, 0x5,0x77,0x24, 0x3,0x61,0x5a, 0x4,0x6d,0x39,
+  0x3,0x61,0x31, 0x4,0x6e,0x2c, 0x4,0x6e,0x2d, 0x4,0x6e,0x5b,
+  0x3,0x45,0x65, 0x3,0x4a,0x7a, 0x3,0x4a,0x7b, 0x3,0x4a,0x7c,
+  0x3,0x4a,0x7e, 0x5,0x4b,0x6b, 0x3,0x4a,0x7d, 0x5,0x53,0x38,
+  0x4,0x4f,0x3f, 0x3,0x50,0x23, 0x4,0x4f,0x44, 0x4,0x4f,0x3b,
+  0x7,0x2b,0x6d, 0x4,0x4f,0x40, 0x3,0x50,0x28, 0x3,0x50,0x29,
+  0x3,0x50,0x26, 0x3,0x4c,0x63, 0x4,0x4f,0x41, 0x4,0x55,0x4e,
+  0x3,0x54,0x2f, 0x4,0x55,0x4d, 0x3,0x54,0x30, 0x4,0x55,0x4f,
+  0x3,0x54,0x2b, 0x4,0x55,0x54, 0x7,0x36,0x4a, 0x4,0x55,0x4a,
+  0x3,0x54,0x2e, 0x4,0x55,0x57, 0x3,0x57,0x4b, 0x4,0x55,0x4b,
+  0x3,0x54,0x31, 0x4,0x55,0x55, 0x3,0x54,0x34, 0x4,0x55,0x50,
+  0x7,0x36,0x51, 0x3,0x56,0x33, 0x3,0x57,0x4c, 0x4,0x5a,0x51,
+  0x3,0x57,0x47, 0x3,0x57,0x49, 0x3,0x57,0x46, 0x4,0x5a,0x52,
+  0x3,0x57,0x4e, 0x4,0x5a,0x50, 0x4,0x5f,0x2f, 0x4,0x5f,0x35,
+  0x4,0x5f,0x2c, 0x3,0x5a,0x21, 0x3,0x59,0x7c, 0x4,0x5f,0x32,
+  0x4,0x5f,0x31, 0x5,0x67,0x26, 0x4,0x5f,0x38, 0x4,0x62,0x6a,
+  0x3,0x5c,0x21, 0x4,0x62,0x6c, 0x4,0x65,0x61, 0x3,0x5c,0x28,
+  0x4,0x62,0x6f, 0x5,0x6b,0x3c, 0x4,0x5f,0x36, 0xf,0x64,0x75,
+  0x3,0x5d,0x78, 0x4,0x65,0x6c, 0x3,0x5d,0x7d, 0x3,0x5d,0x7b,
+  0x4,0x65,0x6a, 0x4,0x65,0x64, 0x3,0x5d,0x7c, 0x7,0x52,0x42,
+  0x4,0x65,0x62, 0x4,0x65,0x6b, 0x3,0x5d,0x7e, 0x3,0x5f,0x34,
+  0x4,0x68,0x40, 0x4,0x68,0x42, 0x4,0x68,0x41, 0x5,0x72,0x63,
+  0x3,0x5f,0x33, 0x4,0x6a,0x27, 0x4,0x6a,0x2c, 0x3,0x60,0x28,
+  0x4,0x6a,0x26, 0x3,0x60,0x26, 0x3,0x60,0x27, 0x4,0x6b,0x45,
+  0x3,0x60,0x6b, 0x5,0x77,0x2c, 0x4,0x6b,0x44, 0x5,0x77,0x34,
+  0x4,0x6b,0x47, 0x3,0x60,0x6a, 0x3,0x60,0x69, 0x4,0x6b,0x48,
+  0x4,0x6c,0x50, 0x4,0x6c,0x52, 0x4,0x6c,0x51, 0x3,0x61,0x36,
+  0x4,0x6c,0x54, 0x4,0x6d,0x3d, 0x3,0x61,0x5c, 0x7,0x63,0x37,
+  0x3,0x62,0x2a, 0x3,0x62,0x3e, 0x4,0x6e,0x59, 0x3,0x62,0x43,
+  0x4,0x4f,0x47, 0x4,0x5f,0x39, 0x7,0x57,0x29, 0x4,0x6b,0x4d,
+  0x5,0x79,0x73, 0x5,0x4b,0x6d, 0x4,0x4f,0x49, 0x4,0x4f,0x4a,
+  0x3,0x50,0x2d, 0x3,0x54,0x38, 0x4,0x55,0x58, 0x7,0x36,0x5c,
+  0x3,0x5a,0x23, 0x4,0x62,0x72, 0x3,0x5f,0x39, 0x3,0x61,0x37,
+  0x3,0x61,0x38, 0x4,0x48,0x73, 0x4,0x48,0x74, 0x3,0x4b,0x21,
+  0x4,0x4f,0x4d, 0x4,0x4f,0x4b, 0x4,0x55,0x59, 0x4,0x55,0x5c,
+  0x4,0x55,0x5a, 0x4,0x55,0x5d, 0x3,0x57,0x4f, 0x4,0x5f,0x3c,
+  0x4,0x5f,0x3b, 0x3,0x5a,0x27, 0x4,0x62,0x79, 0x4,0x62,0x76,
+  0x4,0x62,0x7d, 0x4,0x62,0x77, 0x4,0x62,0x7c, 0x4,0x68,0x49,
+  0x4,0x68,0x48, 0x4,0x68,0x4a, 0x5,0x75,0x4d, 0x5,0x75,0x48,
+  0x4,0x6b,0x4e, 0x3,0x61,0x39, 0x7,0x5a,0x7d, 0x4,0x6d,0x41,
+  0x7,0x2c,0x31, 0x4,0x65,0x71, 0x4,0x65,0x72, 0x7,0x36,0x65,
+  0x4,0x5f,0x3d, 0x4,0x63,0x21, 0x4,0x65,0x76, 0x4,0x68,0x4b,
+  0x4,0x6b,0x52, 0x4,0x6c,0x5a, 0x7,0x2c,0x33, 0x4,0x55,0x5e,
+  0x7,0x36,0x67, 0x5,0x6f,0x52, 0x4,0x65,0x79, 0x5,0x6f,0x54,
+  0x4,0x68,0x4c, 0x4,0x68,0x4e, 0x4,0x68,0x4d, 0x4,0x6a,0x31,
+  0x4,0x6b,0x55, 0x4,0x6d,0x42, 0x4,0x42,0x2c, 0x3,0x4b,0x23,
+  0x4,0x4f,0x52, 0x4,0x4f,0x53, 0x4,0x55,0x5f, 0x4,0x5a,0x5f,
+  0x5,0x61,0x23, 0x5,0x67,0x40, 0x5,0x67,0x3d, 0x4,0x5f,0x3f,
+  0x5,0x67,0x41, 0x4,0x63,0x23, 0x3,0x5c,0x2b, 0x4,0x65,0x7c,
+  0x4,0x66,0x21, 0x4,0x65,0x7d, 0x5,0x6f,0x58, 0x4,0x68,0x52,
+  0x3,0x5f,0x3b, 0x4,0x6b,0x56, 0x4,0x6c,0x5b, 0x4,0x6d,0x44,
+  0x3,0x61,0x5e, 0x4,0x6d,0x43, 0x4,0x6d,0x6f, 0x4,0x5f,0x40,
+  0x3,0x5c,0x2c, 0x4,0x6a,0x37, 0x3,0x61,0x3a, 0x4,0x55,0x61,
+  0x4,0x6c,0x61, 0x4,0x6c,0x62, 0x4,0x5f,0x43, 0x4,0x5f,0x42,
+  0x4,0x5f,0x44, 0x4,0x63,0x26, 0x4,0x68,0x59, 0x4,0x55,0x62,
+  0x4,0x5a,0x63, 0x4,0x5f,0x45, 0x4,0x63,0x27, 0x4,0x68,0x5a,
+  0x3,0x60,0x2a, 0x4,0x6b,0x58, 0x4,0x6b,0x5b, 0x3,0x5a,0x2c,
+  0x4,0x5f,0x46, 0x3,0x5e,0x23, 0x7,0x52,0x67, 0x5,0x6f,0x61,
+  0x4,0x68,0x5c, 0x4,0x6e,0x31, 0x5,0x7b,0x7a, 0x4,0x5a,0x66,
+  0x5,0x61,0x2d, 0x4,0x5f,0x48, 0x4,0x63,0x29, 0x4,0x63,0x2b,
+  0x4,0x66,0x27, 0x4,0x66,0x25, 0x4,0x66,0x26, 0x3,0x5f,0x3d,
+  0x4,0x68,0x61, 0x4,0x6a,0x3d, 0x4,0x6a,0x3c, 0x3,0x60,0x6e,
+  0x5,0x77,0x4d, 0x4,0x6c,0x69, 0x4,0x6c,0x66, 0x4,0x6c,0x6a,
+  0x4,0x6d,0x4c, 0x4,0x6d,0x4b, 0x4,0x6d,0x70, 0x3,0x61,0x76,
+  0x3,0x62,0x2b, 0x3,0x62,0x32, 0x4,0x6e,0x4b, 0x4,0x6e,0x4c,
+  0x4,0x6e,0x5a, 0x5,0x75,0x61, 0x5,0x6b,0x69, 0x5,0x6c,0x44,
+  0x4,0x68,0x62, 0x4,0x68,0x63, 0x4,0x6d,0x51, 0x3,0x62,0x2c,
+  0x1,0x44,0x21, 0x1,0x44,0x23, 0x4,0x21,0x26, 0x1,0x44,0x24,
+  0x3,0x21,0x26, 0x3,0x21,0x25, 0x2,0x21,0x26, 0x1,0x44,0x37,
+  0x1,0x44,0x35, 0x1,0x44,0x38, 0x1,0x44,0x36, 0x2,0x21,0x27,
+  0x1,0x44,0x62, 0x2,0x21,0x2f, 0x2,0x21,0x2d, 0x1,0x44,0x61,
+  0x1,0x44,0x60, 0x4,0x21,0x39, 0x1,0x45,0x62, 0x1,0x45,0x61,
+  0x1,0x45,0x60, 0x4,0x21,0x55, 0x1,0x45,0x63, 0x1,0x45,0x5f,
+  0x1,0x47,0x22, 0x1,0x47,0x23, 0x3,0x22,0x62, 0x3,0x22,0x61,
+  0x3,0x22,0x63, 0x4,0x23,0x35, 0x3,0x24,0x3f, 0x1,0x4b,0x64,
+  0x3,0x21,0x21, 0x4,0x21,0x27, 0x3,0x21,0x2c, 0x1,0x44,0x39,
+  0x1,0x44,0x63, 0x2,0x21,0x30, 0x4,0x21,0x3a, 0x1,0x44,0x64,
+  0x2,0x21,0x43, 0x1,0x48,0x6b, 0x2,0x25,0x31, 0x4,0x2b,0x5e,
+  0x3,0x21,0x22, 0x1,0x44,0x3a, 0x1,0x44,0x65, 0x1,0x45,0x64,
+  0x2,0x21,0x44, 0x3,0x27,0x40, 0x3,0x21,0x23, 0x4,0x21,0x22,
+  0x4,0x21,0x23, 0x2,0x21,0x21, 0x1,0x44,0x25, 0x1,0x44,0x3c,
+  0x3,0x21,0x30, 0x2,0x21,0x28, 0x1,0x44,0x3d, 0x3,0x21,0x2e,
+  0x1,0x44,0x66, 0x1,0x45,0x65, 0x1,0x45,0x67, 0x1,0x45,0x66,
+  0x4,0x22,0x27, 0x1,0x47,0x24, 0x1,0x47,0x25, 0x3,0x23,0x45,
+  0x1,0x4b,0x65, 0x3,0x2b,0x22, 0x1,0x53,0x7d, 0x1,0x44,0x22,
+  0x4,0x21,0x24, 0x2,0x21,0x22, 0x1,0x44,0x26, 0x1,0x44,0x3f,
+  0x1,0x44,0x3e, 0x3,0x21,0x46, 0x3,0x21,0x45, 0x3,0x22,0x64,
+  0x1,0x47,0x26, 0x4,0x22,0x28, 0x3,0x24,0x40, 0x1,0x4b,0x66,
+  0x4,0x25,0x31, 0x4,0x25,0x30, 0x3,0x2b,0x23, 0x1,0x58,0x71,
+  0x2,0x33,0x4e, 0x3,0x39,0x6c, 0x3,0x39,0x6e, 0x1,0x63,0x2a,
+  0x2,0x41,0x56, 0x2,0x41,0x57, 0x3,0x21,0x24, 0x1,0x44,0x27,
+  0x3,0x21,0x2d, 0x1,0x44,0x68, 0x3,0x22,0x65, 0x1,0x4b,0x67,
+  0x1,0x44,0x28, 0x2,0x21,0x29, 0x1,0x44,0x40, 0x3,0x21,0x31,
+  0x1,0x44,0x69, 0x1,0x44,0x6b, 0x2,0x21,0x31, 0x1,0x44,0x6c,
+  0x1,0x44,0x6a, 0x4,0x21,0x3b, 0x3,0x21,0x6c, 0x3,0x22,0x66,
+  0x1,0x47,0x27, 0x1,0x4b,0x68, 0x3,0x24,0x42, 0x3,0x27,0x42,
+  0x1,0x4b,0x69, 0x1,0x4f,0x67, 0x1,0x27,0x28, 0x1,0x44,0x41,
+  0x1,0x44,0x6d, 0x3,0x21,0x47, 0x1,0x47,0x28, 0x1,0x47,0x2a,
+  0x1,0x47,0x29, 0x1,0x48,0x6c, 0x1,0x4b,0x6a, 0x1,0x4b,0x6b,
+  0x1,0x4f,0x68, 0x1,0x4f,0x69, 0x3,0x2b,0x26, 0x3,0x2b,0x25,
+  0x3,0x2b,0x27, 0x3,0x2b,0x24, 0x1,0x53,0x7e, 0x4,0x36,0x2e,
+  0x2,0x41,0x58, 0x3,0x40,0x33, 0x2,0x6d,0x44, 0x1,0x44,0x29,
+  0x3,0x21,0x32, 0x3,0x21,0x33, 0x1,0x44,0x6f, 0x1,0x44,0x6e,
+  0x2,0x21,0x32, 0x1,0x44,0x70, 0x1,0x44,0x76, 0x3,0x21,0x49,
+  0x1,0x44,0x71, 0x1,0x44,0x72, 0x2,0x21,0x34, 0x2,0x21,0x33,
+  0x1,0x44,0x74, 0x1,0x44,0x75, 0x3,0x21,0x4c, 0x1,0x44,0x73,
+  0x3,0x21,0x4b, 0x3,0x21,0x4a, 0x4,0x21,0x3c, 0x1,0x45,0x6a,
+  0x1,0x45,0x6b, 0x1,0x45,0x6c, 0x1,0x45,0x6d, 0x1,0x45,0x69,
+  0x1,0x45,0x70, 0x2,0x21,0x4a, 0x4,0x21,0x5b, 0x2,0x21,0x46,
+  0x2,0x21,0x49, 0x1,0x45,0x71, 0x1,0x46,0x23, 0x3,0x21,0x6d,
+  0x2,0x21,0x48, 0x4,0x21,0x5a, 0x1,0x45,0x6e, 0x1,0x45,0x6f,
+  0x1,0x45,0x68, 0x3,0x21,0x72, 0x3,0x21,0x70, 0x2,0x21,0x45,
+  0x2,0x21,0x47, 0x3,0x22,0x6f, 0x3,0x22,0x68, 0x1,0x47,0x37,
+  0x2,0x21,0x6f, 0x1,0x47,0x34, 0x1,0x47,0x38, 0x2,0x21,0x79,
+  0x2,0x21,0x6d, 0x1,0x47,0x35, 0x2,0x21,0x71, 0x3,0x22,0x6b,
+  0x3,0x22,0x67, 0x3,0x22,0x76, 0x1,0x47,0x36, 0x3,0x22,0x6e,
+  0x1,0x47,0x39, 0x4,0x22,0x2d, 0x1,0x47,0x2b, 0x2,0x21,0x70,
+  0x1,0x47,0x3a, 0x2,0x21,0x74, 0x3,0x22,0x6d, 0x2,0x21,0x78,
+  0x2,0x21,0x75, 0x3,0x22,0x6c, 0x3,0x22,0x74, 0x2,0x21,0x72,
+  0x1,0x47,0x2c, 0x1,0x47,0x2e, 0x1,0x47,0x3b, 0x4,0x22,0x2a,
+  0x1,0x47,0x30, 0x2,0x21,0x6a, 0x1,0x47,0x33, 0x1,0x47,0x31,
+  0x1,0x47,0x32, 0x2,0x21,0x7a, 0x2,0x21,0x77, 0x2,0x21,0x6e,
+  0x1,0x47,0x2f, 0x3,0x22,0x70, 0x3,0x22,0x77, 0x2,0x21,0x6b,
+  0x1,0x47,0x2d, 0x3,0x22,0x75, 0x4,0x22,0x2e, 0x3,0x22,0x73,
+  0x2,0x21,0x73, 0x2,0x21,0x76, 0x3,0x22,0x72, 0xf,0x21,0x71,
+  0x2,0x21,0x6c, 0x2,0x23,0x28, 0x4,0x23,0x39, 0x1,0x49,0x24,
+  0x1,0x48,0x75, 0x3,0x24,0x50, 0x3,0x24,0x48, 0x2,0x23,0x29,
+  0x1,0x48,0x72, 0x3,0x24,0x4f, 0x1,0x49,0x26, 0x3,0x24,0x46,
+  0x1,0x48,0x7a, 0x3,0x24,0x45, 0x1,0x48,0x79, 0x2,0x22,0x7b,
+  0x1,0x48,0x7d, 0x1,0x48,0x78, 0x2,0x23,0x22, 0x2,0x23,0x2a,
+  0x3,0x24,0x4e, 0x2,0x23,0x26, 0x3,0x24,0x49, 0x1,0x48,0x7b,
+  0x3,0x24,0x4b, 0x3,0x24,0x43, 0x1,0x48,0x7e, 0x1,0x48,0x6f,
+  0x1,0x49,0x29, 0x2,0x22,0x7d, 0x3,0x24,0x44, 0x3,0x24,0x4c,
+  0x2,0x25,0x3d, 0x1,0x48,0x6d, 0x1,0x49,0x25, 0x1,0x48,0x6e,
+  0x1,0x48,0x76, 0x1,0x48,0x77, 0x2,0x23,0x24, 0x2,0x22,0x7e,
+  0x1,0x48,0x7c, 0x1,0x48,0x74, 0x2,0x22,0x7a, 0x1,0x48,0x70,
+  0x2,0x23,0x27, 0x1,0x49,0x27, 0x1,0x49,0x2a, 0x1,0x48,0x73,
+  0x1,0x49,0x22, 0x1,0x49,0x28, 0x1,0x48,0x71, 0x2,0x23,0x25,
+  0x1,0x49,0x23, 0x2,0x23,0x2b, 0x2,0x22,0x7c, 0x1,0x49,0x21,
+  0x2,0x23,0x21, 0x3,0x64,0x48, 0x2,0x23,0x23, 0x3,0x64,0x49,
+  0x1,0x4b,0x79, 0x2,0x25,0x3f, 0x2,0x25,0x4b, 0x1,0x4b,0x71,
+  0x3,0x27,0x47, 0x2,0x25,0x4c, 0x1,0x4b,0x6c, 0x1,0x4b,0x76,
+  0x4,0x25,0x3e, 0x3,0x27,0x4f, 0x1,0x4b,0x6f, 0x2,0x25,0x39,
+  0x1,0x4b,0x77, 0x2,0x25,0x38, 0x2,0x25,0x3c, 0x2,0x25,0x43,
+  0x2,0x25,0x41, 0x1,0x4c,0x21, 0x1,0x4b,0x7a, 0x2,0x25,0x33,
+  0x2,0x25,0x35, 0x1,0x4b,0x7c, 0x1,0x4b,0x70, 0x2,0x25,0x36,
+  0x2,0x25,0x42, 0x2,0x25,0x49, 0x1,0x4b,0x75, 0x2,0x25,0x3b,
+  0x2,0x25,0x34, 0x1,0x4b,0x74, 0x2,0x25,0x37, 0x1,0x4b,0x78,
+  0x2,0x25,0x3a, 0x3,0x27,0x44, 0x1,0x4b,0x73, 0x3,0x27,0x51,
+  0x1,0x4b,0x6e, 0x3,0x27,0x48, 0x1,0x4b,0x7d, 0x2,0x25,0x44,
+  0x1,0x4b,0x7e, 0x2,0x25,0x48, 0x3,0x27,0x43, 0x2,0x25,0x46,
+  0x2,0x25,0x4a, 0x1,0x4b,0x7b, 0x2,0x25,0x3e, 0x2,0x25,0x32,
+  0x4,0x25,0x36, 0x2,0x25,0x40, 0x1,0x4b,0x72, 0x2,0x25,0x45,
+  0x1,0x4b,0x6d, 0x2,0x25,0x47, 0x3,0x27,0x4c, 0x3,0x27,0x49,
+  0x3,0x27,0x4b, 0x3,0x27,0x4a, 0x3,0x27,0x4d, 0xf,0x25,0x44,
+  0x1,0x4f,0x78, 0x1,0x4f,0x6c, 0x3,0x2b,0x2d, 0x3,0x2b,0x2e,
+  0x2,0x29,0x22, 0x2,0x29,0x2a, 0x3,0x2b,0x36, 0x1,0x4f,0x6b,
+  0x1,0x4f,0x73, 0x1,0x50,0x21, 0x3,0x2b,0x2c, 0x2,0x29,0x30,
+  0x2,0x29,0x2e, 0x2,0x29,0x29, 0x4,0x28,0x38, 0x4,0x28,0x3e,
+  0x3,0x2b,0x2b, 0x1,0x4f,0x6d, 0x2,0x29,0x2f, 0x2,0x29,0x25,
+  0x1,0x4f,0x7b, 0x1,0x4f,0x72, 0x1,0x4f,0x7a, 0x2,0x28,0x7e,
+  0x3,0x2b,0x32, 0x2,0x29,0x2c, 0x3,0x2b,0x2f, 0x2,0x29,0x23,
+  0x1,0x4f,0x76, 0x2,0x29,0x24, 0x3,0x2b,0x33, 0x2,0x28,0x7d,
+  0x1,0x4f,0x7d, 0x1,0x4f,0x70, 0x1,0x4f,0x79, 0x1,0x4f,0x6f,
+  0x3,0x2b,0x28, 0x2,0x29,0x21, 0x2,0x29,0x26, 0x3,0x2b,0x29,
+  0x2,0x29,0x2d, 0x1,0x4f,0x77, 0x1,0x4f,0x74, 0x2,0x29,0x28,
+  0x1,0x4f,0x7c, 0x2,0x29,0x2b, 0x2,0x29,0x27, 0x1,0x4f,0x71,
+  0x1,0x4f,0x7e, 0x1,0x4f,0x75, 0x1,0x4f,0x6e, 0x1,0x4f,0x6a,
+  0x4,0x28,0x3f, 0x3,0x2b,0x35, 0xf,0x29,0x2d, 0x3,0x2b,0x34,
+  0x3,0x64,0x4a, 0x4,0x28,0x3d, 0x2,0x29,0x31, 0x1,0x54,0x3a,
+  0x1,0x54,0x24, 0x3,0x2f,0x48, 0x1,0x54,0x34, 0x3,0x2f,0x4d,
+  0x1,0x54,0x39, 0x2,0x2d,0x71, 0x2,0x2d,0x70, 0x2,0x2d,0x75,
+  0x2,0x2d,0x76, 0x1,0x54,0x27, 0x3,0x2f,0x44, 0x1,0x54,0x30,
+  0x3,0x2f,0x58, 0x3,0x2f,0x4c, 0x3,0x2f,0x56, 0x1,0x54,0x3d,
+  0x3,0x2f,0x46, 0x1,0x54,0x31, 0x4,0x2b,0x62, 0x3,0x2f,0x4b,
+  0x3,0x2f,0x49, 0x3,0x2f,0x47, 0x2,0x2d,0x6a, 0x1,0x54,0x2a,
+  0x2,0x2d,0x6b, 0x3,0x2f,0x4f, 0x1,0x54,0x3f, 0x4,0x2b,0x64,
+  0x1,0x54,0x36, 0x1,0x54,0x21, 0x1,0x54,0x22, 0x2,0x2d,0x7e,
+  0x1,0x59,0x24, 0x3,0x2f,0x53, 0x1,0x54,0x2f, 0x1,0x54,0x2e,
+  0x2,0x2d,0x6c, 0x1,0x54,0x32, 0x2,0x33,0x5e, 0x1,0x54,0x29,
+  0x2,0x2d,0x77, 0x1,0x54,0x38, 0x1,0x54,0x37, 0x1,0x54,0x2d,
+  0x2,0x2d,0x6f, 0x2,0x2d,0x78, 0x3,0x2f,0x45, 0x2,0x2d,0x69,
+  0x1,0x54,0x2c, 0x2,0x2d,0x79, 0x1,0x54,0x35, 0x2,0x2d,0x6d,
+  0x1,0x54,0x23, 0x3,0x2f,0x4e, 0x1,0x54,0x26, 0x1,0x54,0x25,
+  0x2,0x2d,0x7a, 0x1,0x54,0x33, 0x1,0x54,0x28, 0x1,0x54,0x3c,
+  0x1,0x54,0x3e, 0x2,0x2d,0x74, 0x1,0x54,0x3b, 0x3,0x2f,0x51,
+  0x2,0x2d,0x7c, 0x2,0x2d,0x6e, 0x2,0x2d,0x7d, 0x3,0x2f,0x43,
+  0x2,0x2d,0x72, 0x4,0x2b,0x61, 0x2,0x2d,0x7b, 0x3,0x2f,0x50,
+  0x2,0x2d,0x73, 0x3,0x2f,0x54, 0x3,0x2f,0x55, 0x1,0x54,0x2b,
+  0x3,0x64,0x4b, 0x2,0x33,0x66, 0x2,0x33,0x5a, 0x3,0x34,0x3c,
+  0x1,0x58,0x76, 0x3,0x34,0x3f, 0x2,0x33,0x5f, 0x2,0x33,0x65,
+  0x1,0x58,0x75, 0x2,0x33,0x58, 0x1,0x58,0x79, 0x2,0x33,0x5c,
+  0x2,0x33,0x55, 0x1,0x58,0x77, 0x2,0x33,0x59, 0x1,0x58,0x7c,
+  0x1,0x59,0x23, 0x3,0x34,0x44, 0x2,0x33,0x6a, 0x3,0x34,0x41,
+  0x2,0x33,0x54, 0x3,0x34,0x42, 0x1,0x58,0x7d, 0x3,0x2f,0x57,
+  0x2,0x33,0x69, 0x3,0x34,0x47, 0x3,0x34,0x3d, 0x1,0x58,0x78,
+  0x2,0x33,0x5b, 0x1,0x58,0x74, 0x2,0x33,0x56, 0x2,0x33,0x52,
+  0x2,0x33,0x60, 0x2,0x33,0x53, 0x2,0x33,0x51, 0x2,0x33,0x5d,
+  0x2,0x33,0x63, 0x2,0x33,0x64, 0x1,0x58,0x7a, 0x3,0x34,0x40,
+  0x4,0x30,0x47, 0x2,0x3a,0x3f, 0x2,0x33,0x61, 0x2,0x33,0x50,
+  0x2,0x33,0x62, 0x3,0x34,0x4b, 0x1,0x59,0x26, 0x2,0x33,0x67,
+  0x1,0x59,0x25, 0x2,0x33,0x4f, 0x3,0x34,0x43, 0x2,0x33,0x57,
+  0x2,0x33,0x68, 0x1,0x59,0x21, 0x1,0x58,0x7e, 0x1,0x58,0x7b,
+  0x1,0x59,0x22, 0x3,0x34,0x4c, 0x3,0x34,0x4a, 0x1,0x58,0x72,
+  0x3,0x34,0x45, 0x3,0x34,0x46, 0x1,0x58,0x73, 0x1,0x5e,0x2e,
+  0x3,0x39,0x75, 0x2,0x3a,0x42, 0x2,0x3a,0x3b, 0x4,0x36,0x34,
+  0x1,0x5e,0x2b, 0x4,0x36,0x33, 0x2,0x3a,0x43, 0x3,0x39,0x71,
+  0x3,0x39,0x72, 0x4,0x36,0x36, 0x2,0x3a,0x39, 0x2,0x3a,0x3c,
+  0x1,0x5e,0x2a, 0x2,0x3a,0x3d, 0x3,0x39,0x6f, 0x4,0x36,0x31,
+  0x1,0x5e,0x2d, 0x2,0x3a,0x41, 0x4,0x36,0x3c, 0x2,0x3a,0x37,
+  0x2,0x3a,0x36, 0x1,0x5e,0x2f, 0x3,0x39,0x70, 0x1,0x5e,0x30,
+  0x1,0x5e,0x2c, 0x1,0x5e,0x31, 0x2,0x3a,0x35, 0x2,0x3a,0x40,
+  0x2,0x3a,0x3e, 0x2,0x3a,0x38, 0x4,0x36,0x39, 0x4,0x36,0x30,
+  0x4,0x36,0x3a, 0x1,0x5e,0x29, 0x2,0x3a,0x3a, 0x3,0x64,0x4d,
+  0x3,0x40,0x39, 0x3,0x40,0x3c, 0x1,0x63,0x31, 0x1,0x63,0x2b,
+  0x2,0x41,0x5c, 0x1,0x63,0x34, 0x2,0x41,0x62, 0x2,0x41,0x65,
+  0x1,0x63,0x2d, 0x1,0x63,0x2e, 0x2,0x41,0x5f, 0x1,0x63,0x2c,
+  0x2,0x41,0x68, 0x1,0x63,0x32, 0x2,0x41,0x69, 0x3,0x40,0x3a,
+  0x2,0x41,0x64, 0x1,0x63,0x33, 0x3,0x40,0x37, 0x2,0x41,0x59,
+  0x1,0x63,0x30, 0x2,0x41,0x5a, 0x4,0x3c,0x29, 0x2,0x41,0x63,
+  0x2,0x41,0x61, 0x3,0x40,0x3d, 0x2,0x41,0x5d, 0x1,0x63,0x2f,
+  0x2,0x41,0x5b, 0x1,0x63,0x35, 0x2,0x41,0x60, 0x2,0x41,0x67,
+  0x2,0x41,0x5e, 0x2,0x41,0x66, 0x3,0x40,0x36, 0x3,0x40,0x3e,
+  0x1,0x67,0x7c, 0x1,0x67,0x79, 0x3,0x45,0x6b, 0x1,0x67,0x7a,
+  0x4,0x42,0x2d, 0x2,0x49,0x21, 0x2,0x48,0x77, 0x1,0x67,0x78,
+  0x1,0x67,0x75, 0x2,0x48,0x78, 0x3,0x45,0x6e, 0x3,0x45,0x6c,
+  0x1,0x67,0x77, 0x2,0x48,0x7b, 0x3,0x45,0x6d, 0x2,0x48,0x7d,
+  0x3,0x45,0x76, 0x4,0x42,0x35, 0x2,0x49,0x26, 0x3,0x45,0x70,
+  0x3,0x45,0x75, 0x2,0x49,0x25, 0x2,0x48,0x7e, 0x1,0x67,0x74,
+  0x2,0x48,0x76, 0x1,0x67,0x72, 0x2,0x48,0x79, 0x1,0x67,0x7d,
+  0x2,0x48,0x7c, 0x3,0x45,0x71, 0x2,0x49,0x22, 0x1,0x67,0x76,
+  0x1,0x67,0x73, 0x2,0x49,0x24, 0x2,0x49,0x23, 0x1,0x67,0x7b,
+  0x2,0x48,0x7a, 0x3,0x45,0x74, 0x1,0x6c,0x23, 0x2,0x4f,0x54,
+  0x3,0x4b,0x29, 0x2,0x4f,0x51, 0x1,0x6c,0x24, 0x4,0x48,0x79,
+  0x1,0x6c,0x22, 0x3,0x4b,0x2b, 0x2,0x4f,0x58, 0x2,0x4f,0x55,
+  0x2,0x4f,0x4e, 0x1,0x6c,0x21, 0x3,0x4b,0x2d, 0x1,0x6c,0x25,
+  0x2,0x4f,0x4f, 0x1,0x6b,0x7e, 0x1,0x6c,0x28, 0x2,0x4f,0x52,
+  0x2,0x4f,0x53, 0x1,0x6c,0x26, 0x1,0x6c,0x27, 0x2,0x4f,0x59,
+  0x2,0x4f,0x56, 0x2,0x4f,0x57, 0x3,0x4b,0x2c, 0x3,0x4b,0x27,
+  0x3,0x64,0x4e, 0x1,0x70,0x33, 0x2,0x56,0x43, 0x1,0x70,0x30,
+  0x2,0x56,0x40, 0x1,0x70,0x32, 0x1,0x70,0x34, 0x3,0x50,0x31,
+  0x2,0x56,0x41, 0x1,0x70,0x31, 0x4,0x4f,0x5a, 0x2,0x56,0x42,
+  0x3,0x50,0x35, 0x2,0x56,0x3f, 0x3,0x50,0x30, 0x3,0x50,0x34,
+  0x1,0x73,0x41, 0x2,0x5c,0x49, 0x1,0x73,0x42, 0x2,0x5c,0x47,
+  0x4,0x55,0x65, 0x2,0x5c,0x48, 0x2,0x5c,0x46, 0x2,0x5c,0x45,
+  0x3,0x54,0x41, 0x3,0x54,0x40, 0x2,0x5c,0x4a, 0x1,0x73,0x40,
+  0x3,0x50,0x33, 0x4,0x55,0x69, 0x2,0x61,0x44, 0x2,0x61,0x45,
+  0x3,0x57,0x52, 0x2,0x4f,0x50, 0x2,0x61,0x43, 0x1,0x73,0x43,
+  0x1,0x78,0x2b, 0x2,0x65,0x37, 0x2,0x65,0x38, 0x3,0x5c,0x32,
+  0x1,0x7a,0x62, 0x1,0x7a,0x63, 0x2,0x6b,0x4f, 0x2,0x6b,0x4e,
+  0x1,0x7b,0x58, 0x1,0x7b,0x57, 0x2,0x6e,0x7d, 0x3,0x60,0x6f,
+  0x1,0x44,0x2a, 0x1,0x44,0x42, 0x1,0x44,0x78, 0x4,0x21,0x3d,
+  0x1,0x44,0x77, 0x1,0x45,0x73, 0x1,0x45,0x72, 0x1,0x47,0x3e,
+  0x1,0x47,0x3d, 0x1,0x47,0x3f, 0x1,0x47,0x3c, 0x3,0x22,0x78,
+  0x1,0x49,0x2c, 0x1,0x49,0x2b, 0x1,0x49,0x2d, 0x3,0x24,0x54,
+  0x4,0x23,0x3b, 0x3,0x24,0x53, 0x3,0x24,0x51, 0x1,0x4c,0x23,
+  0x4,0x25,0x3f, 0x1,0x4c,0x22, 0x1,0x4c,0x24, 0x3,0x27,0x52,
+  0x1,0x50,0x22, 0x4,0x28,0x40, 0x1,0x22,0x79, 0x2,0x2e,0x21,
+  0x1,0x22,0x7a, 0x1,0x59,0x27, 0x1,0x22,0x7c, 0x1,0x22,0x7b,
+  0x2,0x3a,0x44, 0x3,0x39,0x76, 0x1,0x22,0x7d, 0x1,0x67,0x7e,
+  0x1,0x22,0x7e, 0x3,0x5e,0x25, 0x1,0x44,0x2b, 0x3,0x21,0x34,
+  0x1,0x44,0x79, 0x1,0x47,0x40, 0x1,0x4c,0x25, 0x3,0x2b,0x37,
+  0x1,0x44,0x2c, 0x1,0x44,0x7c, 0x1,0x44,0x7a, 0x1,0x44,0x7b,
+  0x1,0x47,0x41, 0x3,0x22,0x7a, 0x4,0x22,0x34, 0x1,0x49,0x2e,
+  0x1,0x4c,0x27, 0x1,0x4c,0x26, 0x1,0x4c,0x28, 0x3,0x2e,0x7b,
+  0x1,0x54,0x40, 0x3,0x40,0x3f, 0x3,0x64,0x53, 0x1,0x70,0x35,
+  0x3,0x21,0x27, 0x4,0x21,0x3e, 0x3,0x21,0x4d, 0x3,0x21,0x48,
+  0x3,0x21,0x4e, 0x2,0x21,0x2e, 0x4,0x21,0x52, 0x1,0x45,0x74,
+  0x1,0x45,0x75, 0x3,0x21,0x78, 0x3,0x21,0x79, 0x1,0x47,0x42,
+  0x4,0x22,0x36, 0x2,0x23,0x2c, 0x3,0x27,0x55, 0x1,0x50,0x24,
+  0x1,0x50,0x23, 0x2,0x2e,0x23, 0x2,0x2e,0x22, 0x1,0x59,0x28,
+  0x3,0x21,0x28, 0x1,0x44,0x7d, 0x2,0x21,0x35, 0x3,0x21,0x7a,
+  0x3,0x24,0x57, 0x2,0x25,0x4d, 0x3,0x2b,0x39, 0x1,0x50,0x25,
+  0x3,0x2f,0x5b, 0x1,0x54,0x43, 0x3,0x2f,0x59, 0x1,0x54,0x41,
+  0x1,0x54,0x42, 0x3,0x2f,0x5a, 0x3,0x34,0x4d, 0xf,0x46,0x5c,
+  0x1,0x70,0x36, 0x1,0x27,0x2f, 0x1,0x45,0x76, 0x4,0x21,0x5e,
+  0x1,0x47,0x43, 0x2,0x21,0x7b, 0x3,0x22,0x7e, 0x3,0x22,0x7d,
+  0x3,0x22,0x7c, 0x3,0x24,0x59, 0x1,0x49,0x2f, 0x1,0x49,0x30,
+  0x3,0x24,0x5a, 0x2,0x23,0x2d, 0x4,0x23,0x3d, 0x2,0x25,0x4e,
+  0x1,0x4c,0x29, 0x2,0x25,0x4f, 0x4,0x25,0x40, 0x4,0x25,0x43,
+  0x3,0x2b,0x3b, 0x3,0x2b,0x3d, 0x3,0x2b,0x3e, 0x2,0x2e,0x25,
+  0x2,0x2e,0x26, 0x1,0x54,0x46, 0x3,0x2f,0x5e, 0x2,0x2e,0x27,
+  0x3,0x2f,0x5f, 0x2,0x2e,0x24, 0x1,0x54,0x47, 0x1,0x54,0x45,
+  0x1,0x54,0x44, 0x2,0x2e,0x28, 0x3,0x34,0x4f, 0x2,0x33,0x6b,
+  0x3,0x34,0x4e, 0x3,0x39,0x7d, 0x3,0x39,0x7a, 0x2,0x3a,0x45,
+  0x4,0x36,0x3f, 0x3,0x39,0x7e, 0x2,0x41,0x6a, 0x2,0x49,0x27,
+  0x3,0x4b,0x2f, 0x3,0x4b,0x2e, 0x3,0x4b,0x30, 0x1,0x6c,0x29,
+  0x1,0x70,0x37, 0x2,0x56,0x44, 0x3,0x54,0x42, 0x1,0x44,0x2d,
+  0x1,0x44,0x3b, 0x3,0x21,0x2f, 0x3,0x21,0x35, 0x3,0x21,0x51,
+  0x3,0x21,0x7b, 0x3,0x23,0x22, 0xf,0x22,0x59, 0x3,0x24,0x5b,
+  0x3,0x27,0x59, 0x4,0x25,0x45, 0x1,0x59,0x29, 0x1,0x5e,0x33,
+  0x6,0x46,0x65, 0x1,0x68,0x21, 0x3,0x45,0x7a, 0x2,0x21,0x23,
+  0x1,0x44,0x7e, 0x4,0x21,0x60, 0x1,0x45,0x79, 0x1,0x45,0x77,
+  0x1,0x45,0x78, 0x1,0x4c,0x2a, 0x3,0x27,0x5a, 0x1,0x44,0x2e,
+  0x1,0x44,0x2f, 0x4,0x21,0x2a, 0x1,0x44,0x43, 0x3,0x21,0x36,
+  0x3,0x21,0x52, 0x1,0x45,0x21, 0x1,0x45,0x22, 0x1,0x45,0x23,
+  0x2,0x21,0x4c, 0x1,0x45,0x7a, 0x3,0x21,0x7d, 0x2,0x21,0x4b,
+  0x1,0x47,0x47, 0x3,0x23,0x25, 0x2,0x21,0x7d, 0x1,0x47,0x45,
+  0x1,0x47,0x46, 0x2,0x21,0x7c, 0x3,0x23,0x24, 0x3,0x23,0x26,
+  0x1,0x47,0x48, 0x1,0x47,0x44, 0x3,0x23,0x27, 0x2,0x23,0x2e,
+  0x1,0x4f,0x4f, 0x2,0x23,0x2f, 0x3,0x24,0x5f, 0x3,0x24,0x61,
+  0x2,0x23,0x30, 0x4,0x23,0x40, 0x3,0x24,0x5c, 0x1,0x49,0x32,
+  0x1,0x49,0x31, 0x3,0x24,0x5e, 0x3,0x24,0x5d, 0x1,0x49,0x35,
+  0x1,0x49,0x33, 0x1,0x49,0x34, 0x3,0x24,0x60, 0x1,0x4c,0x30,
+  0x3,0x27,0x5b, 0x1,0x4c,0x2f, 0x2,0x25,0x54, 0x2,0x25,0x51,
+  0x2,0x25,0x52, 0x3,0x27,0x5e, 0x2,0x25,0x50, 0x1,0x4c,0x31,
+  0x1,0x4c,0x2d, 0x1,0x4c,0x2c, 0x3,0x27,0x5f, 0x1,0x4c,0x2e,
+  0x1,0x4c,0x2b, 0x3,0x27,0x5d, 0x4,0x25,0x4e, 0x3,0x64,0x4f,
+  0x1,0x4c,0x32, 0x1,0x50,0x27, 0x2,0x29,0x32, 0x3,0x2b,0x3f,
+  0x2,0x25,0x53, 0x1,0x50,0x2c, 0x3,0x2b,0x40, 0x2,0x29,0x33,
+  0x1,0x50,0x28, 0x1,0x50,0x2b, 0x1,0x50,0x2a, 0x1,0x50,0x29,
+  0x1,0x50,0x26, 0x3,0x2b,0x43, 0x2,0x2e,0x2b, 0x3,0x2f,0x68,
+  0x1,0x54,0x4a, 0x2,0x2e,0x2e, 0x1,0x54,0x48, 0x3,0x2f,0x65,
+  0x4,0x2b,0x6e, 0x3,0x2f,0x62, 0x2,0x2e,0x2a, 0x1,0x54,0x4b,
+  0x1,0x54,0x49, 0x1,0x54,0x4c, 0x2,0x2e,0x2c, 0x2,0x2e,0x2d,
+  0x3,0x2f,0x60, 0x2,0x2e,0x29, 0x2,0x2e,0x2f, 0x3,0x2f,0x66,
+  0x3,0x2f,0x61, 0x3,0x2f,0x63, 0xf,0x2e,0x2d, 0x3,0x2f,0x64,
+  0x3,0x34,0x50, 0x1,0x5e,0x37, 0x1,0x59,0x2a, 0x2,0x33,0x6c,
+  0x2,0x33,0x6e, 0x2,0x33,0x6d, 0x2,0x33,0x6f, 0x1,0x59,0x2b,
+  0x3,0x3a,0x23, 0x1,0x5e,0x34, 0x3,0x3a,0x21, 0x1,0x5e,0x35,
+  0x1,0x5e,0x36, 0x3,0x34,0x51, 0x1,0x63,0x37, 0x2,0x41,0x6c,
+  0x3,0x40,0x41, 0x2,0x41,0x6b, 0x2,0x41,0x6d, 0x2,0x41,0x6e,
+  0x1,0x63,0x38, 0x3,0x40,0x40, 0x1,0x63,0x36, 0x2,0x49,0x28,
+  0x2,0x49,0x29, 0x1,0x68,0x23, 0x1,0x68,0x22, 0x2,0x4c,0x61,
+  0x4,0x49,0x25, 0x3,0x4b,0x31, 0x1,0x6c,0x2a, 0x1,0x6c,0x2b,
+  0x1,0x6c,0x2c, 0x1,0x6c,0x2e, 0x2,0x4f,0x5a, 0x2,0x4f,0x5b,
+  0x1,0x6c,0x2d, 0x3,0x4b,0x32, 0x3,0x50,0x36, 0x1,0x70,0x38,
+  0x4,0x4f,0x64, 0x1,0x70,0x39, 0x3,0x50,0x37, 0x4,0x55,0x6d,
+  0x2,0x65,0x39, 0x2,0x6b,0x51, 0x2,0x6b,0x50, 0x2,0x6e,0x7e,
+  0x3,0x60,0x2c, 0x1,0x44,0x30, 0x3,0x21,0x37, 0x3,0x21,0x54,
+  0x3,0x21,0x53, 0x1,0x45,0x7c, 0x1,0x45,0x7b, 0x1,0x47,0x49,
+  0x4,0x22,0x42, 0x4,0x22,0x3f, 0x2,0x21,0x7e, 0x4,0x22,0x41,
+  0x3,0x23,0x28, 0x1,0x49,0x37, 0x1,0x49,0x38, 0x1,0x49,0x36,
+  0x1,0x49,0x39, 0x2,0x23,0x31, 0x2,0x23,0x32, 0x4,0x23,0x46,
+  0x4,0x23,0x47, 0x4,0x23,0x48, 0x3,0x24,0x63, 0x3,0x24,0x62,
+  0x3,0x27,0x61, 0x5,0x25,0x3a, 0x5,0x25,0x37, 0x5,0x25,0x38,
+  0x3,0x27,0x60, 0x5,0x25,0x3b, 0x1,0x4c,0x34, 0x2,0x25,0x55,
+  0x4,0x25,0x50, 0x1,0x4c,0x33, 0x3,0x27,0x62, 0x2,0x29,0x34,
+  0x1,0x50,0x30, 0x2,0x29,0x35, 0x1,0x50,0x2f, 0x3,0x2b,0x48,
+  0x3,0x2b,0x46, 0x4,0x28,0x49, 0x1,0x50,0x2d, 0x4,0x28,0x4b,
+  0x1,0x50,0x2e, 0x3,0x2b,0x47, 0x3,0x2f,0x6f, 0x2,0x2e,0x30,
+  0x3,0x2f,0x6c, 0x3,0x2f,0x6a, 0x3,0x2f,0x6d, 0x3,0x2f,0x6e,
+  0x1,0x59,0x2c, 0x2,0x33,0x71, 0x3,0x34,0x52, 0x1,0x59,0x2f,
+  0x2,0x33,0x70, 0x1,0x5b,0x2b, 0x1,0x59,0x2e, 0x1,0x59,0x2d,
+  0x1,0x5e,0x3a, 0x5,0x36,0x6a, 0x1,0x5e,0x39, 0x1,0x5e,0x38,
+  0x1,0x63,0x39, 0x3,0x40,0x45, 0x3,0x40,0x44, 0x1,0x63,0x3c,
+  0x1,0x63,0x3d, 0x1,0x63,0x3b, 0x4,0x3c,0x3c, 0x1,0x63,0x3a,
+  0x3,0x40,0x46, 0x5,0x44,0x67, 0x2,0x49,0x2a, 0x3,0x46,0x21,
+  0x2,0x49,0x2b, 0x5,0x44,0x63, 0x3,0x45,0x7e, 0x3,0x4b,0x33,
+  0x2,0x4f,0x5d, 0x1,0x6c,0x2f, 0x2,0x4f,0x5c, 0x3,0x4d,0x2c,
+  0x1,0x70,0x3a, 0x2,0x5c,0x4b, 0x1,0x73,0x44, 0x5,0x53,0x62,
+  0x2,0x65,0x3a, 0x1,0x79,0x61, 0x1,0x27,0x34, 0x1,0x44,0x44,
+  0x1,0x45,0x24, 0x2,0x21,0x36, 0x3,0x21,0x55, 0x1,0x45,0x25,
+  0x1,0x45,0x26, 0x3,0x21,0x56, 0xf,0x21,0x30, 0x3,0x22,0x23,
+  0x3,0x22,0x22, 0x1,0x45,0x7d, 0x1,0x45,0x7e, 0x3,0x22,0x24,
+  0x1,0x47,0x4a, 0x2,0x23,0x33, 0x2,0x25,0x56, 0x2,0x25,0x57,
+  0x4,0x25,0x51, 0x1,0x50,0x31, 0x2,0x2e,0x31, 0x1,0x59,0x31,
+  0x1,0x59,0x30, 0x2,0x3a,0x47, 0x2,0x3a,0x46, 0x6,0x50,0x74,
+  0x3,0x50,0x38, 0x1,0x44,0x31, 0x1,0x45,0x27, 0x1,0x46,0x21,
+  0x4,0x30,0x5e, 0x1,0x59,0x32, 0x2,0x21,0x24, 0x4,0x21,0x65,
+  0x2,0x21,0x4d, 0x1,0x46,0x22, 0x3,0x22,0x26, 0x2,0x22,0x22,
+  0x1,0x47,0x4c, 0x1,0x47,0x4b, 0x2,0x22,0x21, 0x1,0x49,0x3a,
+  0x3,0x64,0x50, 0x3,0x24,0x65, 0x3,0x2b,0x49, 0x4,0x28,0x4e,
+  0x4,0x28,0x50, 0x1,0x54,0x4d, 0x4,0x2b,0x78, 0x4,0x30,0x5f,
+  0x2,0x33,0x72, 0x1,0x63,0x3e, 0x2,0x49,0x2c, 0x1,0x68,0x24,
+  0x3,0x46,0x23, 0x3,0x4b,0x34, 0x2,0x56,0x45, 0x3,0x54,0x44,
+  0x3,0x5c,0x34, 0x2,0x68,0x6a, 0x3,0x21,0x29, 0x1,0x45,0x28,
+  0x3,0x21,0x57, 0x3,0x24,0x66, 0x2,0x25,0x58, 0x2,0x29,0x36,
+  0x1,0x59,0x35, 0x1,0x59,0x33, 0x1,0x59,0x34, 0x1,0x44,0x32,
+  0x4,0x21,0x30, 0x1,0x44,0x45, 0x1,0x24,0x3f, 0x1,0x45,0x2b,
+  0x3,0x21,0x59, 0x1,0x45,0x2a, 0x1,0x45,0x29, 0x1,0x46,0x25,
+  0x1,0x46,0x24, 0x3,0x23,0x2a, 0x2,0x21,0x4e, 0x2,0x22,0x23,
+  0xf,0x22,0x2c, 0x3,0x23,0x2b, 0x3,0x23,0x2d, 0x1,0x4c,0x38,
+  0x1,0x4c,0x35, 0x1,0x4c,0x37, 0x1,0x4c,0x36, 0x3,0x27,0x63,
+  0x1,0x50,0x32, 0x3,0x2b,0x4a, 0x4,0x30,0x60, 0x1,0x5e,0x3b,
+  0x4,0x66,0x30, 0x1,0x44,0x33, 0x3,0x21,0x5a, 0x1,0x45,0x2c,
+  0x3,0x22,0x27, 0x1,0x46,0x27, 0x1,0x46,0x26, 0x2,0x23,0x34,
+  0x4,0x23,0x4d, 0x3,0x64,0x51, 0x1,0x4c,0x39, 0x3,0x2a,0x5c,
+  0x4,0x30,0x64, 0x3,0x21,0x2a, 0x4,0x21,0x31, 0x2,0x21,0x37,
+  0x3,0x22,0x28, 0x1,0x46,0x29, 0x1,0x46,0x28, 0x1,0x47,0x4d,
+  0x1,0x47,0x4e, 0x2,0x23,0x35, 0x1,0x49,0x3b, 0x3,0x24,0x67,
+  0x1,0x49,0x3c, 0x3,0x27,0x65, 0x1,0x4c,0x3a, 0x1,0x4c,0x3b,
+  0x1,0x4c,0x3c, 0x3,0x27,0x66, 0x1,0x50,0x33, 0x2,0x29,0x37,
+  0x3,0x2b,0x4b, 0x4,0x30,0x65, 0x1,0x54,0x4e, 0x3,0x40,0x47,
+  0x2,0x21,0x25, 0x4,0x21,0x44, 0x1,0x45,0x2d, 0x3,0x21,0x5b,
+  0x4,0x21,0x67, 0x4,0x21,0x66, 0x3,0x22,0x29, 0x2,0x22,0x24,
+  0x3,0x23,0x2f, 0x2,0x23,0x36, 0x2,0x23,0x37, 0x2,0x25,0x59,
+  0x3,0x27,0x67, 0x2,0x25,0x5a, 0x2,0x29,0x39, 0x2,0x29,0x38,
+  0x2,0x29,0x3b, 0x2,0x29,0x3a, 0x1,0x50,0x34, 0x3,0x64,0x52,
+  0x2,0x33,0x73, 0x1,0x54,0x50, 0x2,0x2e,0x32, 0x1,0x54,0x4f,
+  0x3,0x34,0x54, 0x4,0x30,0x68, 0x2,0x3a,0x48, 0x1,0x5e,0x3c,
+  0x3,0x3a,0x28, 0x2,0x3a,0x49, 0x3,0x3a,0x27, 0x3,0x40,0x4a,
+  0x3,0x40,0x49, 0x3,0x40,0x48, 0x2,0x49,0x2d, 0x1,0x68,0x25,
+  0x3,0x46,0x25, 0x4,0x3c,0x40, 0x3,0x46,0x26, 0x3,0x4b,0x35,
+  0x1,0x6c,0x30, 0x3,0x54,0x45, 0x2,0x65,0x3b, 0xf,0x6d,0x2e,
+  0x3,0x21,0x2b, 0x3,0x21,0x5c, 0x4,0x21,0x45, 0x2,0x21,0x38,
+  0x3,0x22,0x2a, 0x1,0x46,0x2a, 0x4,0x22,0x48, 0x3,0x23,0x31,
+  0x4,0x25,0x59, 0x3,0x27,0x69, 0x3,0x27,0x6a, 0x1,0x59,0x36,
+  0x3,0x34,0x55, 0x3,0x3a,0x29, 0x1,0x44,0x34, 0x1,0x44,0x46,
+  0x1,0x45,0x2f, 0x1,0x45,0x2e, 0x3,0x21,0x5e, 0x1,0x45,0x30,
+  0x3,0x21,0x60, 0x4,0x21,0x69, 0x3,0x22,0x2b, 0x3,0x23,0x33,
+  0x4,0x23,0x4f, 0x1,0x4c,0x3e, 0x3,0x27,0x6b, 0x1,0x4c,0x3d,
+  0x1,0x4c,0x3f, 0x3,0x2b,0x50, 0x3,0x2b,0x4f, 0x1,0x50,0x35,
+  0x3,0x2b,0x4e, 0x3,0x2b,0x4d, 0x6,0x35,0x78, 0x1,0x54,0x51,
+  0x3,0x40,0x4b, 0x2,0x56,0x46, 0x1,0x76,0x3b, 0x1,0x44,0x47,
+  0x1,0x46,0x2c, 0x1,0x46,0x3b, 0x1,0x46,0x36, 0x4,0x21,0x6c,
+  0x1,0x46,0x31, 0x1,0x46,0x30, 0x1,0x46,0x37, 0x1,0x46,0x35,
+  0x1,0x46,0x2e, 0x1,0x46,0x3c, 0x1,0x46,0x2f, 0x1,0x46,0x2b,
+  0x1,0x46,0x3a, 0x1,0x46,0x39, 0x1,0x46,0x38, 0x1,0x46,0x2d,
+  0x3,0x22,0x31, 0x1,0x46,0x34, 0x3,0x22,0x2d, 0x3,0x22,0x2e,
+  0x1,0x46,0x33, 0x3,0x22,0x2f, 0xf,0x21,0x50, 0x1,0x46,0x3d,
+  0x1,0x46,0x32, 0x4,0x21,0x6a, 0x3,0x23,0x35, 0x3,0x23,0x37,
+  0x1,0x47,0x54, 0x4,0x22,0x4c, 0x1,0x47,0x5a, 0x1,0x47,0x56,
+  0x3,0x23,0x39, 0x1,0x47,0x5c, 0x2,0x22,0x25, 0x1,0x47,0x59,
+  0x1,0x47,0x4f, 0x1,0x47,0x52, 0x1,0x47,0x55, 0x1,0x47,0x51,
+  0x1,0x47,0x58, 0x1,0x47,0x5b, 0x1,0x47,0x50, 0x1,0x47,0x53,
+  0x1,0x47,0x57, 0x1,0x47,0x5d, 0x3,0x23,0x3a, 0x3,0x23,0x3b,
+  0x3,0x23,0x34, 0x2,0x23,0x40, 0x2,0x23,0x3d, 0x3,0x24,0x76,
+  0x1,0x49,0x49, 0x2,0x23,0x3e, 0x1,0x49,0x3d, 0x1,0x49,0x3f,
+  0x1,0x49,0x57, 0x1,0x49,0x52, 0x3,0x24,0x79, 0x3,0x24,0x7e,
+  0x3,0x24,0x75, 0x2,0x23,0x45, 0x2,0x23,0x3f, 0x1,0x49,0x41,
+  0x1,0x49,0x43, 0x2,0x23,0x44, 0x1,0x49,0x4a, 0x2,0x23,0x3a,
+  0x1,0x49,0x56, 0x1,0x49,0x58, 0x1,0x49,0x3e, 0x1,0x49,0x4f,
+  0x3,0x25,0x24, 0x2,0x23,0x38, 0x1,0x49,0x55, 0x3,0x24,0x77,
+  0x1,0x49,0x46, 0x3,0x24,0x7b, 0x1,0x49,0x50, 0x1,0x49,0x51,
+  0x2,0x23,0x39, 0x1,0x49,0x4e, 0x1,0x49,0x4c, 0x3,0x24,0x70,
+  0x1,0x49,0x4d, 0x1,0x49,0x53, 0x2,0x23,0x41, 0x1,0x49,0x40,
+  0x3,0x25,0x21, 0x1,0x49,0x54, 0x2,0x23,0x43, 0x1,0x49,0x48,
+  0x1,0x49,0x45, 0x3,0x24,0x73, 0x2,0x23,0x3c, 0x1,0x49,0x44,
+  0x2,0x23,0x46, 0x1,0x49,0x47, 0x3,0x24,0x7c, 0x1,0x49,0x4b,
+  0x3,0x24,0x78, 0x3,0x24,0x74, 0x3,0x24,0x6d, 0x1,0x49,0x42,
+  0x2,0x23,0x42, 0x3,0x24,0x7d, 0x3,0x25,0x22, 0x2,0x23,0x3b,
+  0x3,0x25,0x23, 0x4,0x25,0x64, 0x4,0x25,0x63, 0x3,0x27,0x6e,
+  0x2,0x25,0x6b, 0x2,0x25,0x6a, 0x1,0x4c,0x51, 0x2,0x25,0x6d,
+  0x2,0x25,0x6f, 0x2,0x25,0x64, 0x2,0x25,0x67, 0x2,0x25,0x6e,
+  0x1,0x4c,0x52, 0x3,0x27,0x74, 0x3,0x27,0x78, 0x2,0x25,0x61,
+  0x2,0x25,0x65, 0x3,0x27,0x75, 0x4,0x25,0x5f, 0x2,0x25,0x69,
+  0x2,0x29,0x4a, 0x1,0x4c,0x4d, 0x2,0x29,0x4e, 0x1,0x4c,0x40,
+  0x2,0x25,0x66, 0x1,0x4c,0x41, 0x1,0x4c,0x4e, 0x1,0x4c,0x47,
+  0x1,0x4c,0x43, 0x3,0x27,0x71, 0x2,0x25,0x62, 0x1,0x4c,0x46,
+  0x1,0x4c,0x4b, 0x1,0x4c,0x54, 0x2,0x25,0x63, 0x2,0x25,0x5c,
+  0x1,0x4c,0x45, 0x2,0x25,0x5d, 0x2,0x25,0x5f, 0x4,0x25,0x60,
+  0x1,0x4c,0x48, 0x3,0x27,0x6c, 0x1,0x4c,0x4a, 0x2,0x25,0x5b,
+  0x2,0x25,0x60, 0x3,0x27,0x70, 0x3,0x27,0x79, 0x1,0x4c,0x53,
+  0x1,0x4c,0x4f, 0x2,0x25,0x68, 0x1,0x4c,0x55, 0x3,0x27,0x73,
+  0x1,0x4c,0x4c, 0x2,0x25,0x5e, 0x1,0x4c,0x49, 0x3,0x27,0x6f,
+  0x3,0x27,0x77, 0x1,0x4c,0x44, 0x1,0x4c,0x42, 0x2,0x25,0x6c,
+  0x1,0x4c,0x50, 0xf,0x25,0x71, 0x3,0x2b,0x5c, 0x3,0x2b,0x5d,
+  0x2,0x29,0x49, 0x2,0x29,0x3d, 0x2,0x29,0x4c, 0x3,0x2b,0x57,
+  0x3,0x2b,0x59, 0x2,0x29,0x3f, 0x1,0x50,0x3c, 0x1,0x50,0x4a,
+  0x1,0x50,0x38, 0x1,0x50,0x49, 0x1,0x50,0x41, 0x1,0x50,0x46,
+  0x1,0x50,0x36, 0x2,0x29,0x3e, 0x2,0x29,0x44, 0x1,0x50,0x45,
+  0x2,0x29,0x50, 0x1,0x50,0x47, 0x3,0x2b,0x5b, 0x1,0x50,0x3d,
+  0x3,0x2b,0x54, 0x3,0x2b,0x5e, 0x2,0x29,0x46, 0x2,0x29,0x43,
+  0x1,0x50,0x3b, 0x3,0x2b,0x51, 0x2,0x29,0x3c, 0x1,0x50,0x48,
+  0x2,0x29,0x4b, 0x1,0x50,0x40, 0x2,0x29,0x4d, 0x1,0x50,0x4b,
+  0x1,0x50,0x37, 0x1,0x50,0x42, 0x1,0x50,0x3f, 0x2,0x29,0x41,
+  0x1,0x50,0x43, 0x2,0x29,0x47, 0x2,0x29,0x48, 0x1,0x50,0x3e,
+  0x1,0x50,0x44, 0x1,0x50,0x3a, 0x3,0x2b,0x55, 0x3,0x64,0x54,
+  0x3,0x2b,0x63, 0x3,0x2b,0x61, 0x1,0x50,0x39, 0x2,0x29,0x40,
+  0x3,0x2b,0x53, 0x2,0x29,0x45, 0x3,0x2b,0x58, 0x2,0x29,0x4f,
+  0x2,0x2e,0x46, 0x1,0x54,0x5e, 0x2,0x2e,0x34, 0x4,0x2c,0x2d,
+  0x2,0x2e,0x39, 0x1,0x54,0x57, 0x1,0x54,0x62, 0x2,0x2e,0x37,
+  0x1,0x54,0x52, 0x1,0x54,0x5c, 0x1,0x54,0x61, 0x2,0x2e,0x3e,
+  0x4,0x2c,0x26, 0x1,0x54,0x5d, 0x1,0x54,0x60, 0x3,0x2f,0x77,
+  0x3,0x30,0x21, 0x2,0x2e,0x41, 0x1,0x54,0x58, 0x2,0x2e,0x38,
+  0x3,0x2f,0x74, 0x3,0x2f,0x78, 0x3,0x30,0x22, 0x2,0x2e,0x44,
+  0x2,0x2e,0x45, 0x3,0x2f,0x79, 0x1,0x54,0x5a, 0x2,0x2e,0x43,
+  0x1,0x54,0x56, 0x1,0x54,0x65, 0x4,0x2c,0x29, 0x2,0x2e,0x3b,
+  0x3,0x2f,0x7b, 0x1,0x54,0x54, 0x3,0x2f,0x7a, 0x2,0x2e,0x48,
+  0x2,0x2e,0x3c, 0x2,0x2e,0x40, 0x1,0x54,0x59, 0x1,0x54,0x64,
+  0x2,0x2e,0x3d, 0x1,0x54,0x5f, 0x2,0x2e,0x42, 0x2,0x2e,0x49,
+  0x2,0x34,0x24, 0x3,0x2f,0x73, 0x2,0x2e,0x47, 0x1,0x54,0x66,
+  0x1,0x54,0x53, 0x2,0x2e,0x3f, 0x2,0x2e,0x36, 0x3,0x2f,0x76,
+  0x1,0x54,0x5b, 0x4,0x2c,0x28, 0x4,0x2c,0x2e, 0x2,0x2e,0x35,
+  0x3,0x2f,0x7e, 0x3,0x30,0x25, 0x2,0x2e,0x3a, 0xf,0x29,0x54,
+  0xf,0x2e,0x42, 0xf,0x2e,0x4a, 0x2,0x2e,0x33, 0x1,0x54,0x63,
+  0x3,0x67,0x21, 0x3,0x34,0x5f, 0x2,0x33,0x7a, 0x3,0x34,0x68,
+  0x1,0x59,0x49, 0x2,0x34,0x2a, 0x1,0x59,0x47, 0x1,0x59,0x44,
+  0x2,0x34,0x21, 0x1,0x59,0x40, 0x2,0x34,0x25, 0x1,0x59,0x4b,
+  0x2,0x33,0x79, 0x2,0x33,0x7e, 0x2,0x33,0x7d, 0x1,0x54,0x55,
+  0x1,0x59,0x46, 0x2,0x34,0x28, 0x3,0x34,0x66, 0x2,0x34,0x2b,
+  0x2,0x33,0x76, 0x4,0x30,0x77, 0x1,0x5e,0x4e, 0x3,0x34,0x67,
+  0x2,0x34,0x2c, 0x1,0x59,0x4c, 0x4,0x30,0x72, 0x1,0x59,0x3e,
+  0x1,0x59,0x3b, 0x2,0x34,0x23, 0x1,0x59,0x38, 0x4,0x30,0x74,
+  0x2,0x34,0x29, 0x3,0x34,0x5b, 0x1,0x59,0x3f, 0x2,0x34,0x2d,
+  0x3,0x34,0x58, 0x2,0x33,0x77, 0x2,0x34,0x27, 0x1,0x59,0x42,
+  0x2,0x33,0x78, 0x2,0x33,0x7b, 0x2,0x34,0x22, 0x3,0x34,0x62,
+  0x3,0x34,0x61, 0x1,0x59,0x43, 0x1,0x59,0x41, 0x1,0x59,0x4d,
+  0x3,0x34,0x57, 0x3,0x3a,0x36, 0x3,0x34,0x64, 0x4,0x30,0x6b,
+  0x1,0x59,0x48, 0x3,0x34,0x5e, 0x1,0x59,0x3c, 0x1,0x5a,0x76,
+  0x4,0x30,0x7a, 0x1,0x59,0x3d, 0x2,0x33,0x7c, 0x1,0x59,0x4a,
+  0x1,0x59,0x45, 0x2,0x34,0x26, 0x1,0x59,0x3a, 0x3,0x34,0x59,
+  0x1,0x59,0x39, 0x3,0x64,0x57, 0x3,0x64,0x56, 0x3,0x67,0x22,
+  0x3,0x64,0x55, 0x2,0x33,0x74, 0x2,0x33,0x75, 0x2,0x3a,0x4e,
+  0x3,0x3a,0x3c, 0x1,0x5e,0x3d, 0x1,0x5e,0x40, 0x2,0x3a,0x59,
+  0x1,0x5e,0x54, 0x2,0x3a,0x5c, 0x1,0x5e,0x3e, 0x2,0x3a,0x55,
+  0x1,0x5e,0x44, 0x1,0x5e,0x4a, 0x1,0x61,0x43, 0x3,0x3a,0x31,
+  0x3,0x3a,0x38, 0x1,0x5e,0x48, 0x2,0x3a,0x52, 0x1,0x5e,0x55,
+  0x1,0x5e,0x41, 0x1,0x5e,0x49, 0x2,0x3a,0x5a, 0x2,0x41,0x7c,
+  0x2,0x3a,0x5f, 0x2,0x3a,0x53, 0x4,0x36,0x5c, 0x2,0x3a,0x4a,
+  0x2,0x3a,0x57, 0x2,0x3a,0x51, 0x1,0x5e,0x47, 0x2,0x3a,0x5d,
+  0x3,0x3a,0x2e, 0x3,0x3a,0x2a, 0x1,0x5e,0x43, 0x1,0x5e,0x57,
+  0x1,0x5e,0x50, 0x3,0x3a,0x33, 0x1,0x5e,0x45, 0x1,0x5e,0x42,
+  0x3,0x3a,0x40, 0x1,0x5e,0x4d, 0x3,0x3a,0x34, 0x2,0x3a,0x5e,
+  0x2,0x3a,0x50, 0x2,0x3a,0x56, 0x2,0x3a,0x58, 0x2,0x3a,0x4c,
+  0x2,0x3a,0x5b, 0x1,0x5e,0x3f, 0x2,0x3a,0x4b, 0x3,0x3a,0x42,
+  0x1,0x5e,0x46, 0x1,0x5e,0x56, 0x1,0x5e,0x52, 0x2,0x3a,0x4d,
+  0x1,0x5e,0x4c, 0x3,0x3a,0x3b, 0xf,0x39,0x71, 0x1,0x5e,0x53,
+  0x1,0x5e,0x4f, 0x1,0x5e,0x4b, 0x3,0x3a,0x2f, 0x2,0x3a,0x54,
+  0x6,0x47,0x29, 0x3,0x67,0x23, 0x1,0x5e,0x51, 0x2,0x41,0x7a,
+  0x2,0x41,0x76, 0x3,0x40,0x51, 0x2,0x42,0x27, 0x2,0x41,0x6f,
+  0x2,0x41,0x78, 0x1,0x63,0x4c, 0x1,0x63,0x4d, 0x1,0x63,0x45,
+  0x2,0x42,0x23, 0x1,0x63,0x4f, 0x2,0x41,0x74, 0x2,0x41,0x73,
+  0x2,0x41,0x71, 0x2,0x42,0x25, 0x1,0x63,0x43, 0x2,0x41,0x7d,
+  0x2,0x41,0x72, 0x1,0x63,0x46, 0x2,0x41,0x7b, 0x1,0x63,0x41,
+  0x2,0x41,0x77, 0x2,0x41,0x7e, 0x2,0x42,0x22, 0x3,0x40,0x4e,
+  0x4,0x3c,0x4b, 0x2,0x42,0x26, 0x1,0x63,0x4a, 0x2,0x41,0x70,
+  0x1,0x63,0x44, 0x2,0x41,0x75, 0x3,0x3a,0x2b, 0x1,0x63,0x3f,
+  0x6,0x51,0x43, 0x1,0x63,0x4b, 0x2,0x42,0x21, 0x1,0x63,0x47,
+  0x1,0x63,0x48, 0x1,0x63,0x4e, 0x1,0x63,0x42, 0x1,0x23,0x21,
+  0x1,0x63,0x40, 0x2,0x41,0x79, 0x3,0x40,0x4c, 0x3,0x67,0x25,
+  0x1,0x63,0x49, 0x3,0x67,0x24, 0xf,0x40,0x62, 0x2,0x42,0x24,
+  0x3,0x64,0x58, 0x1,0x68,0x35, 0x1,0x68,0x30, 0x3,0x46,0x2e,
+  0x2,0x49,0x3c, 0x2,0x49,0x38, 0x3,0x46,0x28, 0x2,0x49,0x32,
+  0x1,0x68,0x2a, 0x1,0x68,0x26, 0x2,0x49,0x3b, 0x1,0x68,0x27,
+  0x2,0x49,0x35, 0x2,0x49,0x37, 0x3,0x46,0x29, 0x2,0x49,0x3a,
+  0x3,0x46,0x36, 0x1,0x68,0x2c, 0x3,0x46,0x2c, 0x1,0x68,0x33,
+  0x1,0x68,0x2d, 0x4,0x42,0x57, 0x3,0x46,0x2a, 0x2,0x49,0x30,
+  0x1,0x68,0x2e, 0x1,0x68,0x2f, 0x2,0x49,0x33, 0x1,0x68,0x34,
+  0x3,0x46,0x34, 0x2,0x49,0x31, 0x2,0x49,0x36, 0x1,0x68,0x2b,
+  0x2,0x49,0x2f, 0x1,0x68,0x31, 0x1,0x68,0x29, 0x3,0x46,0x33,
+  0x4,0x42,0x4b, 0x1,0x68,0x28, 0x2,0x49,0x34, 0x2,0x49,0x39,
+  0x3,0x46,0x31, 0x1,0x68,0x32, 0x3,0x64,0x5a, 0x3,0x64,0x59,
+  0x3,0x46,0x50, 0x2,0x49,0x2e, 0x3,0x46,0x30, 0x1,0x6c,0x37,
+  0x2,0x4f,0x6e, 0x3,0x4b,0x41, 0x2,0x4f,0x6b, 0x3,0x4b,0x38,
+  0x1,0x6c,0x31, 0x1,0x6c,0x3d, 0x1,0x6c,0x3e, 0x3,0x4b,0x3d,
+  0x1,0x6c,0x34, 0x2,0x4f,0x69, 0x1,0x6c,0x36, 0x2,0x4f,0x61,
+  0x1,0x6c,0x3c, 0x3,0x4b,0x44, 0x2,0x4f,0x6d, 0x1,0x6c,0x33,
+  0x2,0x4f,0x6f, 0x1,0x6c,0x32, 0x4,0x49,0x31, 0x2,0x4f,0x6a,
+  0x2,0x4f,0x6c, 0x1,0x6c,0x35, 0x2,0x4f,0x68, 0x2,0x4f,0x62,
+  0x2,0x4f,0x5f, 0x4,0x49,0x2e, 0x3,0x4b,0x3e, 0x2,0x3a,0x4f,
+  0x2,0x4f,0x65, 0x3,0x4b,0x37, 0x2,0x4f,0x5e, 0x2,0x4f,0x64,
+  0x2,0x4f,0x63, 0x3,0x4b,0x3b, 0x2,0x4f,0x60, 0x3,0x4b,0x43,
+  0x1,0x6c,0x39, 0x3,0x4b,0x45, 0x3,0x4b,0x40, 0x3,0x46,0x35,
+  0x3,0x4b,0x3c, 0x1,0x6c,0x38, 0x3,0x4b,0x39, 0x7,0x21,0x63,
+  0x3,0x4b,0x3f, 0x1,0x6c,0x3a, 0x2,0x4f,0x66, 0x1,0x70,0x3b,
+  0x2,0x4f,0x67, 0x2,0x56,0x4f, 0x3,0x50,0x3f, 0x2,0x56,0x48,
+  0x3,0x50,0x40, 0x1,0x70,0x47, 0x2,0x56,0x4c, 0x1,0x70,0x3f,
+  0x1,0x70,0x43, 0x2,0x56,0x4b, 0x3,0x50,0x3b, 0x1,0x70,0x42,
+  0x1,0x70,0x3e, 0x1,0x70,0x41, 0x1,0x70,0x3c, 0x1,0x70,0x46,
+  0x2,0x56,0x4d, 0x2,0x56,0x49, 0x1,0x70,0x45, 0x2,0x56,0x47,
+  0x1,0x70,0x44, 0x2,0x56,0x4e, 0x2,0x56,0x4a, 0x1,0x6c,0x3b,
+  0x4,0x4f,0x71, 0x1,0x70,0x48, 0x2,0x56,0x50, 0x1,0x70,0x40,
+  0x1,0x70,0x3d, 0xf,0x53,0x5d, 0x3,0x50,0x3d, 0x3,0x54,0x48,
+  0x2,0x5c,0x52, 0x2,0x5c,0x54, 0x1,0x73,0x46, 0x2,0x5c,0x55,
+  0x2,0x5c,0x53, 0x2,0x5c,0x51, 0x2,0x5c,0x50, 0x1,0x73,0x48,
+  0x2,0x5c,0x4f, 0x1,0x73,0x49, 0x4,0x55,0x74, 0x3,0x54,0x49,
+  0x3,0x54,0x47, 0x4,0x55,0x78, 0x2,0x5c,0x4d, 0x2,0x5c,0x4e,
+  0x1,0x73,0x45, 0x1,0x73,0x4a, 0x1,0x73,0x47, 0x3,0x64,0x5d,
+  0x3,0x64,0x5b, 0x2,0x5c,0x4c, 0x3,0x57,0x5b, 0x1,0x76,0x3c,
+  0x3,0x57,0x5a, 0x2,0x61,0x48, 0x2,0x61,0x46, 0x2,0x61,0x4b,
+  0x2,0x61,0x49, 0x3,0x57,0x58, 0x2,0x61,0x47, 0x2,0x61,0x4a,
+  0x3,0x57,0x59, 0x3,0x57,0x57, 0x3,0x57,0x5c, 0x1,0x78,0x2c,
+  0x2,0x65,0x3e, 0x2,0x65,0x3f, 0x1,0x78,0x2d, 0x4,0x5f,0x4d,
+  0x2,0x65,0x40, 0x2,0x65,0x3c, 0x2,0x65,0x41, 0x2,0x65,0x3d,
+  0x1,0x76,0x3d, 0x3,0x5a,0x2d, 0x3,0x64,0x5e, 0x4,0x63,0x31,
+  0x2,0x68,0x6b, 0x2,0x68,0x6d, 0x1,0x79,0x64, 0x2,0x68,0x6c,
+  0x1,0x79,0x63, 0x1,0x79,0x62, 0x3,0x67,0x26, 0x3,0x67,0x27,
+  0x3,0x64,0x5c, 0x3,0x5e,0x26, 0x1,0x79,0x65, 0x2,0x6b,0x53,
+  0x2,0x6b,0x54, 0x4,0x66,0x34, 0x1,0x7a,0x65, 0x1,0x7a,0x64,
+  0x1,0x7a,0x66, 0x2,0x6b,0x52, 0x3,0x67,0x28, 0x2,0x6d,0x46,
+  0x2,0x6d,0x45, 0x3,0x5f,0x40, 0x1,0x7b,0x59, 0x1,0x7b,0x5b,
+  0x1,0x7b,0x5a, 0x2,0x6d,0x47, 0x1,0x7c,0x34, 0x2,0x70,0x34,
+  0x4,0x6a,0x44, 0x4,0x6a,0x43, 0x1,0x7c,0x5d, 0x3,0x60,0x71,
+  0x2,0x70,0x33, 0x2,0x70,0x7c, 0x2,0x21,0x2a, 0x3,0x21,0x77,
+  0x4,0x21,0x6f, 0x1,0x46,0x3f, 0x1,0x46,0x3e, 0x4,0x21,0x6d,
+  0x1,0x47,0x60, 0x1,0x47,0x5f, 0x2,0x22,0x27, 0x1,0x47,0x5e,
+  0x2,0x22,0x26, 0x3,0x23,0x3e, 0x1,0x49,0x5b, 0x2,0x23,0x49,
+  0x3,0x25,0x2c, 0x2,0x23,0x48, 0xf,0x23,0x50, 0x3,0x25,0x26,
+  0x1,0x49,0x59, 0x1,0x49,0x5c, 0x3,0x25,0x2b, 0x3,0x25,0x2a,
+  0x2,0x23,0x47, 0x3,0x25,0x29, 0x1,0x49,0x5a, 0x3,0x25,0x48,
+  0x3,0x25,0x27, 0x3,0x25,0x28, 0x3,0x28,0x22, 0x2,0x25,0x70,
+  0x3,0x27,0x7d, 0x2,0x25,0x71, 0x1,0x4c,0x56, 0x3,0x27,0x7c,
+  0x3,0x28,0x21, 0x3,0x27,0x7b, 0x1,0x50,0x4c, 0x3,0x2b,0x65,
+  0x2,0x2e,0x4a, 0x2,0x2e,0x4b, 0x1,0x54,0x67, 0x1,0x54,0x68,
+  0x3,0x30,0x27, 0x2,0x34,0x2f, 0x1,0x59,0x4e, 0x1,0x59,0x50,
+  0x2,0x34,0x2e, 0x1,0x59,0x4f, 0x2,0x3a,0x60, 0x1,0x5e,0x58,
+  0x3,0x3a,0x44, 0x3,0x3a,0x43, 0x4,0x36,0x68, 0x4,0x3c,0x52,
+  0x1,0x63,0x50, 0x1,0x63,0x51, 0x2,0x42,0x28, 0x3,0x40,0x52,
+  0x1,0x68,0x37, 0x3,0x46,0x37, 0x1,0x68,0x36, 0x2,0x4f,0x70,
+  0x2,0x56,0x52, 0x2,0x56,0x51, 0x3,0x5f,0x41, 0x2,0x71,0x5a,
+  0x1,0x44,0x48, 0x2,0x21,0x39, 0x3,0x21,0x61, 0x2,0x21,0x4f,
+  0x2,0x21,0x50, 0x3,0x22,0x34, 0x4,0x21,0x70, 0x4,0x21,0x71,
+  0x1,0x47,0x63, 0x1,0x47,0x67, 0x2,0x22,0x29, 0x4,0x22,0x51,
+  0x1,0x47,0x65, 0x1,0x47,0x64, 0x2,0x22,0x28, 0x1,0x47,0x66,
+  0x1,0x47,0x62, 0x3,0x23,0x41, 0x3,0x23,0x42, 0x1,0x47,0x61,
+  0x2,0x22,0x2a, 0x3,0x23,0x3f, 0x3,0x23,0x40, 0x1,0x49,0x66,
+  0x3,0x25,0x31, 0x3,0x25,0x3e, 0x1,0x49,0x63, 0x3,0x25,0x30,
+  0x1,0x49,0x5f, 0x2,0x23,0x4a, 0x3,0x25,0x40, 0x3,0x25,0x36,
+  0x3,0x25,0x2f, 0x2,0x23,0x4b, 0x3,0x25,0x3c, 0x1,0x49,0x61,
+  0x3,0x25,0x2d, 0x2,0x23,0x4d, 0x1,0x49,0x5d, 0x2,0x23,0x4e,
+  0x2,0x23,0x4c, 0x1,0x49,0x60, 0x1,0x49,0x62, 0x1,0x49,0x65,
+  0x1,0x49,0x64, 0x1,0x49,0x5e, 0x2,0x23,0x4f, 0x3,0x25,0x32,
+  0x3,0x25,0x41, 0x3,0x25,0x42, 0x3,0x25,0x33, 0x3,0x25,0x38,
+  0x3,0x25,0x37, 0x3,0x64,0x5f, 0xf,0x23,0x52, 0x3,0x25,0x35,
+  0x1,0x4c,0x5b, 0x2,0x25,0x7e, 0x3,0x28,0x25, 0x1,0x4c,0x5d,
+  0x3,0x28,0x23, 0x1,0x4c,0x5c, 0x3,0x28,0x26, 0x2,0x26,0x21,
+  0x1,0x4c,0x5a, 0x1,0x4c,0x59, 0x2,0x25,0x75, 0x4,0x25,0x69,
+  0x2,0x25,0x74, 0x3,0x28,0x28, 0x2,0x25,0x72, 0x2,0x25,0x77,
+  0x2,0x25,0x76, 0x2,0x25,0x73, 0x2,0x25,0x7c, 0x2,0x25,0x7d,
+  0x2,0x25,0x7a, 0x2,0x25,0x78, 0x1,0x4c,0x58, 0x3,0x28,0x29,
+  0x4,0x25,0x66, 0x4,0x25,0x68, 0x2,0x25,0x7b, 0x1,0x4c,0x5e,
+  0x2,0x26,0x22, 0x4,0x25,0x65, 0x3,0x28,0x2a, 0x2,0x25,0x79,
+  0x3,0x28,0x24, 0x1,0x50,0x4d, 0x1,0x4c,0x57, 0x4,0x25,0x6e,
+  0xf,0x26,0x33, 0x3,0x64,0x60, 0x1,0x50,0x4e, 0x2,0x29,0x55,
+  0x3,0x2b,0x69, 0x3,0x2b,0x68, 0x2,0x29,0x5b, 0x3,0x2b,0x6c,
+  0x3,0x2b,0x67, 0x3,0x2b,0x6a, 0x1,0x50,0x54, 0x2,0x29,0x59,
+  0x2,0x29,0x5f, 0x3,0x2b,0x71, 0x2,0x29,0x56, 0x2,0x29,0x5a,
+  0x2,0x29,0x5c, 0x2,0x29,0x5e, 0x2,0x29,0x58, 0x3,0x2b,0x70,
+  0x2,0x29,0x57, 0x2,0x29,0x52, 0x2,0x29,0x53, 0x1,0x50,0x4f,
+  0x3,0x2b,0x6b, 0x1,0x50,0x51, 0x1,0x50,0x50, 0x2,0x29,0x54,
+  0x2,0x29,0x5d, 0x3,0x2b,0x6d, 0x3,0x2b,0x72, 0x3,0x2b,0x6e,
+  0x4,0x28,0x60, 0xf,0x29,0x6a, 0xf,0x29,0x71, 0x3,0x2b,0x66,
+  0x1,0x50,0x53, 0x4,0x28,0x5e, 0x2,0x29,0x51, 0x2,0x2e,0x55,
+  0x3,0x30,0x2a, 0x2,0x2e,0x54, 0x2,0x2e,0x59, 0x2,0x2e,0x50,
+  0x3,0x30,0x30, 0x2,0x2e,0x53, 0x2,0x2e,0x52, 0x3,0x30,0x2f,
+  0x2,0x2e,0x56, 0x3,0x30,0x38, 0x2,0x2e,0x5a, 0x1,0x54,0x69,
+  0x1,0x54,0x6c, 0x3,0x30,0x34, 0x3,0x30,0x35, 0x2,0x2e,0x51,
+  0x2,0x2e,0x57, 0x3,0x30,0x33, 0x3,0x30,0x28, 0x3,0x30,0x37,
+  0x1,0x54,0x6b, 0x2,0x2e,0x4c, 0x3,0x30,0x2b, 0x1,0x50,0x52,
+  0x2,0x34,0x3d, 0x2,0x2e,0x58, 0x3,0x30,0x36, 0x2,0x2e,0x4f,
+  0x4,0x2c,0x33, 0x1,0x54,0x6a, 0x2,0x2e,0x4e, 0xf,0x2e,0x5c,
+  0x3,0x30,0x32, 0x2,0x34,0x34, 0x3,0x34,0x6e, 0x3,0x34,0x71,
+  0x1,0x59,0x51, 0x1,0x59,0x55, 0x2,0x34,0x44, 0x2,0x34,0x32,
+  0x2,0x34,0x40, 0x1,0x59,0x56, 0x2,0x34,0x42, 0x3,0x34,0x72,
+  0x2,0x34,0x48, 0x3,0x34,0x74, 0x2,0x34,0x4c, 0x3,0x34,0x69,
+  0x4,0x30,0x7b, 0x2,0x34,0x43, 0x2,0x34,0x37, 0x2,0x34,0x3f,
+  0x3,0x34,0x6b, 0x2,0x34,0x4d, 0x2,0x34,0x4b, 0x2,0x34,0x41,
+  0x2,0x34,0x3c, 0x2,0x34,0x35, 0x2,0x3a,0x68, 0x2,0x34,0x33,
+  0x1,0x59,0x5a, 0x2,0x34,0x3a, 0x1,0x59,0x5b, 0x1,0x59,0x57,
+  0x2,0x34,0x30, 0x2,0x34,0x46, 0x2,0x34,0x38, 0x3,0x34,0x6f,
+  0x3,0x34,0x75, 0x2,0x34,0x36, 0x2,0x34,0x49, 0x1,0x59,0x58,
+  0x3,0x34,0x76, 0x2,0x34,0x4f, 0x1,0x59,0x52, 0x1,0x59,0x54,
+  0x2,0x34,0x3e, 0x2,0x34,0x39, 0x1,0x54,0x6d, 0x1,0x59,0x53,
+  0x2,0x34,0x3b, 0x2,0x34,0x4a, 0x2,0x34,0x4e, 0x2,0x34,0x45,
+  0x3,0x64,0x61, 0x2,0x34,0x47, 0x3,0x64,0x62, 0x3,0x64,0x63,
+  0x2,0x34,0x31, 0x4,0x36,0x69, 0x3,0x3a,0x4a, 0x2,0x3a,0x63,
+  0x3,0x3a,0x45, 0x2,0x3a,0x6c, 0x2,0x3a,0x6b, 0x1,0x5e,0x60,
+  0x2,0x3a,0x64, 0x3,0x3a,0x47, 0x1,0x5e,0x61, 0x1,0x5e,0x5f,
+  0x3,0x3a,0x50, 0x2,0x3a,0x66, 0x1,0x5e,0x5c, 0x2,0x3a,0x6a,
+  0x3,0x3a,0x4c, 0x2,0x3a,0x65, 0x2,0x3a,0x67, 0x2,0x3a,0x61,
+  0x1,0x5e,0x5a, 0x4,0x36,0x6f, 0x2,0x3a,0x74, 0x2,0x3a,0x73,
+  0x2,0x3a,0x70, 0x1,0x5e,0x59, 0x1,0x5e,0x5d, 0x1,0x5e,0x5e,
+  0x2,0x2e,0x4d, 0x2,0x3a,0x6d, 0x1,0x5e,0x5b, 0x1,0x59,0x59,
+  0x2,0x3a,0x6f, 0x2,0x3a,0x62, 0x2,0x3a,0x72, 0x2,0x3a,0x71,
+  0x3,0x3a,0x4e, 0x2,0x3a,0x75, 0x3,0x3a,0x49, 0x2,0x42,0x36,
+  0x3,0x3a,0x4b, 0x2,0x3a,0x6e, 0xf,0x39,0x7d, 0xf,0x39,0x7e,
+  0x4,0x3c,0x57, 0x4,0x36,0x6d, 0x4,0x36,0x71, 0x3,0x64,0x64,
+  0x2,0x3a,0x69, 0x2,0x42,0x2e, 0x1,0x63,0x5b, 0x1,0x63,0x5e,
+  0x1,0x63,0x59, 0x2,0x42,0x2d, 0x2,0x42,0x31, 0x2,0x42,0x2c,
+  0x3,0x40,0x57, 0x1,0x63,0x53, 0x1,0x63,0x5d, 0x2,0x42,0x29,
+  0x1,0x63,0x57, 0x2,0x42,0x30, 0x3,0x40,0x5b, 0x1,0x63,0x55,
+  0x1,0x63,0x54, 0x2,0x42,0x33, 0x1,0x63,0x56, 0x2,0x42,0x35,
+  0x3,0x40,0x56, 0x2,0x42,0x32, 0x1,0x63,0x52, 0x3,0x40,0x5e,
+  0x3,0x40,0x5c, 0x3,0x40,0x58, 0x1,0x63,0x5c, 0x2,0x42,0x37,
+  0x2,0x42,0x2b, 0x2,0x42,0x34, 0x3,0x40,0x5d, 0x4,0x3c,0x53,
+  0x2,0x42,0x2a, 0x3,0x40,0x5a, 0x3,0x40,0x59, 0x1,0x63,0x58,
+  0x3,0x40,0x54, 0x1,0x63,0x5a, 0x2,0x42,0x2f, 0x2,0x42,0x38,
+  0x3,0x46,0x43, 0x3,0x46,0x3e, 0x2,0x49,0x44, 0x1,0x68,0x38,
+  0x2,0x49,0x4a, 0x3,0x46,0x42, 0x3,0x46,0x3c, 0x1,0x68,0x3d,
+  0x2,0x49,0x46, 0x2,0x49,0x4d, 0x2,0x49,0x3e, 0x1,0x68,0x3f,
+  0x1,0x68,0x39, 0x2,0x49,0x43, 0x1,0x6c,0x3f, 0x2,0x49,0x42,
+  0x2,0x49,0x4b, 0x1,0x68,0x3a, 0x3,0x46,0x3d, 0x1,0x68,0x3e,
+  0x2,0x49,0x41, 0x2,0x49,0x47, 0x2,0x49,0x4c, 0x2,0x49,0x3d,
+  0x1,0x68,0x3c, 0x2,0x49,0x45, 0x3,0x46,0x3a, 0x3,0x46,0x45,
+  0x2,0x49,0x49, 0x2,0x49,0x4f, 0x2,0x49,0x3f, 0x2,0x49,0x48,
+  0x3,0x46,0x38, 0x1,0x68,0x3b, 0x2,0x49,0x4e, 0x3,0x46,0x41,
+  0x3,0x46,0x44, 0x3,0x46,0x40, 0x2,0x49,0x40, 0x4,0x42,0x59,
+  0x3,0x64,0x65, 0x1,0x6c,0x43, 0x2,0x4f,0x72, 0x1,0x6c,0x41,
+  0x1,0x6c,0x40, 0x2,0x4f,0x74, 0x2,0x4f,0x79, 0x3,0x4b,0x46,
+  0x2,0x4f,0x75, 0x3,0x4b,0x50, 0x2,0x4f,0x78, 0x1,0x6c,0x46,
+  0x3,0x4b,0x51, 0x1,0x70,0x2e, 0x1,0x6c,0x45, 0x3,0x4b,0x4b,
+  0x2,0x4f,0x71, 0x2,0x4f,0x77, 0x3,0x46,0x3f, 0x1,0x6c,0x44,
+  0x2,0x4f,0x76, 0x3,0x4b,0x4d, 0x2,0x4f,0x73, 0x3,0x4b,0x49,
+  0x1,0x6c,0x42, 0x3,0x4b,0x4f, 0x3,0x4b,0x4c, 0x3,0x4b,0x47,
+  0x2,0x56,0x57, 0x3,0x50,0x4a, 0x2,0x56,0x59, 0x2,0x56,0x54,
+  0x1,0x70,0x4a, 0x2,0x56,0x56, 0x3,0x50,0x4b, 0x1,0x70,0x49,
+  0x2,0x56,0x58, 0x3,0x50,0x48, 0x3,0x50,0x4c, 0x1,0x70,0x4c,
+  0x2,0x56,0x5a, 0x1,0x70,0x4b, 0x2,0x56,0x53, 0x2,0x56,0x55,
+  0x3,0x50,0x49, 0x3,0x54,0x4b, 0x1,0x73,0x4e, 0x2,0x5c,0x58,
+  0x3,0x54,0x4c, 0x1,0x73,0x4d, 0x2,0x5c,0x59, 0x1,0x73,0x4c,
+  0x2,0x5c,0x57, 0x1,0x73,0x4b, 0x2,0x5c,0x56, 0x1,0x76,0x3f,
+  0x1,0x76,0x3e, 0x2,0x65,0x42, 0x2,0x65,0x44, 0x3,0x5a,0x2f,
+  0x2,0x65,0x43, 0x1,0x78,0x2e, 0x1,0x78,0x2f, 0x3,0x5a,0x2e,
+  0x7,0x46,0x45, 0x1,0x78,0x30, 0x2,0x68,0x6e, 0x1,0x79,0x66,
+  0x3,0x5e,0x28, 0x2,0x6f,0x22, 0x2,0x6f,0x21, 0x1,0x7c,0x5e,
+  0x1,0x44,0x49, 0x1,0x45,0x31, 0x3,0x23,0x43, 0x1,0x49,0x67,
+  0x3,0x25,0x45, 0x3,0x25,0x43, 0x3,0x25,0x44, 0x3,0x28,0x2d,
+  0x2,0x29,0x60, 0x3,0x2b,0x77, 0x3,0x34,0x77, 0x1,0x5e,0x62,
+  0x1,0x5e,0x63, 0x3,0x3a,0x52, 0x2,0x42,0x39, 0x1,0x68,0x40,
+  0x2,0x49,0x50, 0x2,0x4f,0x7a, 0x3,0x64,0x66, 0x3,0x50,0x4d,
+  0x3,0x21,0x39, 0x2,0x21,0x3a, 0x3,0x22,0x35, 0x3,0x23,0x44,
+  0x2,0x23,0x50, 0x3,0x2b,0x7a, 0x3,0x2b,0x79, 0x3,0x21,0x3a,
+  0x3,0x25,0x46, 0x2,0x26,0x23, 0x2,0x29,0x61, 0x2,0x2e,0x5b,
+  0x1,0x54,0x6e, 0x3,0x46,0x46, 0x3,0x65,0x60, 0x2,0x65,0x45,
+  0x4,0x5f,0x52, 0x1,0x7a,0x67, 0x1,0x44,0x4a, 0x1,0x46,0x40,
+  0x2,0x21,0x51, 0x3,0x22,0x36, 0x1,0x47,0x68, 0x1,0x47,0x69,
+  0x4,0x22,0x52, 0x1,0x4c,0x5f, 0x4,0x25,0x70, 0x3,0x34,0x79,
+  0x1,0x59,0x5c, 0x5,0x37,0x3d, 0x1,0x68,0x42, 0x3,0x40,0x5f,
+  0x1,0x68,0x43, 0x1,0x68,0x41, 0x3,0x4b,0x53, 0x1,0x44,0x4b,
+  0x4,0x21,0x49, 0x1,0x45,0x32, 0x1,0x45,0x34, 0x1,0x45,0x33,
+  0x2,0x21,0x3b, 0x1,0x45,0x35, 0x1,0x46,0x41, 0x2,0x21,0x52,
+  0x3,0x22,0x38, 0x1,0x46,0x42, 0x3,0x22,0x37, 0x4,0x21,0x72,
+  0x3,0x22,0x39, 0x4,0x22,0x53, 0x3,0x23,0x47, 0x1,0x47,0x6a,
+  0x1,0x47,0x6b, 0x2,0x22,0x2b, 0x3,0x25,0x49, 0x1,0x49,0x68,
+  0x4,0x23,0x62, 0x2,0x23,0x51, 0x4,0x25,0x75, 0x1,0x4c,0x63,
+  0x2,0x26,0x24, 0x4,0x25,0x72, 0x1,0x4c,0x61, 0x1,0x4c,0x62,
+  0x1,0x4c,0x60, 0x2,0x2e,0x5c, 0x3,0x28,0x2e, 0x3,0x28,0x2f,
+  0x3,0x64,0x67, 0x1,0x50,0x58, 0x1,0x50,0x57, 0x1,0x50,0x59,
+  0x1,0x50,0x56, 0x3,0x2b,0x7c, 0x2,0x29,0x62, 0x1,0x4c,0x64,
+  0x1,0x50,0x55, 0x1,0x54,0x6f, 0x1,0x54,0x70, 0x4,0x2c,0x38,
+  0x1,0x54,0x71, 0x3,0x34,0x7b, 0x2,0x34,0x50, 0x3,0x34,0x7c,
+  0x3,0x34,0x7d, 0x4,0x31,0x26, 0x1,0x5e,0x64, 0x2,0x3a,0x76,
+  0x1,0x59,0x5d, 0x3,0x3a,0x53, 0x3,0x3a,0x54, 0x4,0x36,0x79,
+  0x3,0x40,0x60, 0x1,0x63,0x5f, 0x3,0x40,0x61, 0x1,0x68,0x45,
+  0x1,0x68,0x44, 0x2,0x49,0x51, 0x3,0x46,0x48, 0x1,0x6c,0x47,
+  0x1,0x70,0x4d, 0x4,0x4f,0x7b, 0x2,0x61,0x4c, 0x2,0x6d,0x48,
+  0x2,0x6f,0x23, 0x1,0x44,0x4c, 0x1,0x46,0x43, 0x3,0x22,0x3b,
+  0x1,0x46,0x44, 0x2,0x22,0x31, 0x1,0x47,0x6d, 0x1,0x47,0x70,
+  0x3,0x23,0x4b, 0x2,0x22,0x2f, 0x2,0x22,0x2d, 0x1,0x47,0x6f,
+  0x2,0x22,0x30, 0x2,0x22,0x32, 0x2,0x22,0x2c, 0x1,0x47,0x72,
+  0x1,0x47,0x71, 0x1,0x47,0x6e, 0x1,0x47,0x6c, 0x2,0x22,0x2e,
+  0x3,0x23,0x4d, 0x3,0x25,0x55, 0x1,0x49,0x73, 0x4,0x23,0x67,
+  0x3,0x25,0x4c, 0x1,0x49,0x70, 0x2,0x23,0x56, 0x2,0x23,0x59,
+  0x2,0x23,0x58, 0x4,0x23,0x69, 0x1,0x49,0x6a, 0x1,0x49,0x72,
+  0x3,0x25,0x4b, 0x4,0x23,0x6a, 0x1,0x49,0x6f, 0x2,0x23,0x55,
+  0x2,0x23,0x53, 0x1,0x49,0x6e, 0x3,0x25,0x56, 0x3,0x25,0x53,
+  0x3,0x25,0x4e, 0x1,0x49,0x69, 0x1,0x49,0x6c, 0x3,0x25,0x51,
+  0x2,0x23,0x54, 0x2,0x23,0x5b, 0x2,0x23,0x57, 0x1,0x49,0x6d,
+  0x1,0x49,0x71, 0x1,0x49,0x74, 0x2,0x23,0x52, 0x2,0x23,0x5a,
+  0x1,0x49,0x6b, 0x3,0x28,0x41, 0x3,0x28,0x33, 0x1,0x4c,0x69,
+  0x1,0x4c,0x71, 0x3,0x28,0x38, 0x2,0x26,0x30, 0x2,0x26,0x29,
+  0x1,0x4c,0x72, 0x2,0x26,0x34, 0x2,0x26,0x25, 0x2,0x26,0x2c,
+  0x3,0x28,0x45, 0x3,0x28,0x40, 0x1,0x4c,0x68, 0x2,0x26,0x26,
+  0x1,0x4c,0x66, 0x2,0x26,0x2d, 0x2,0x26,0x31, 0x1,0x4c,0x65,
+  0x3,0x28,0x3d, 0x2,0x26,0x32, 0x2,0x26,0x2b, 0x3,0x28,0x37,
+  0x2,0x26,0x2e, 0x3,0x28,0x35, 0x1,0x4c,0x74, 0x1,0x4c,0x6b,
+  0x2,0x26,0x35, 0x2,0x26,0x33, 0x3,0x28,0x3f, 0x1,0x4c,0x70,
+  0x1,0x4c,0x6e, 0x2,0x26,0x2a, 0x1,0x4c,0x6d, 0x2,0x26,0x28,
+  0x2,0x26,0x27, 0x1,0x4c,0x6c, 0x1,0x4c,0x6a, 0x1,0x4c,0x73,
+  0x1,0x4c,0x6f, 0x1,0x4c,0x67, 0x3,0x2c,0x26, 0x2,0x26,0x2f,
+  0x3,0x28,0x46, 0x1,0x50,0x5b, 0x3,0x2c,0x2d, 0x1,0x50,0x62,
+  0x2,0x29,0x70, 0x1,0x50,0x5a, 0x2,0x29,0x68, 0x2,0x29,0x64,
+  0x3,0x2c,0x21, 0x2,0x29,0x74, 0x2,0x29,0x63, 0x3,0x2c,0x2c,
+  0x1,0x50,0x5d, 0x2,0x29,0x6d, 0x1,0x50,0x60, 0x1,0x50,0x63,
+  0x3,0x2c,0x2e, 0x1,0x50,0x5e, 0x2,0x29,0x71, 0x1,0x50,0x61,
+  0x3,0x2c,0x23, 0x1,0x54,0x78, 0x2,0x29,0x77, 0x2,0x29,0x65,
+  0x3,0x2c,0x24, 0x3,0x2c,0x25, 0x2,0x29,0x67, 0x2,0x29,0x6e,
+  0x2,0x29,0x72, 0x2,0x29,0x76, 0x2,0x29,0x73, 0x2,0x29,0x6c,
+  0x2,0x29,0x6f, 0x3,0x2c,0x2b, 0x3,0x2c,0x29, 0x2,0x29,0x69,
+  0x1,0x50,0x65, 0x2,0x29,0x6b, 0x2,0x29,0x6a, 0x2,0x29,0x75,
+  0x1,0x50,0x5c, 0x2,0x29,0x66, 0x1,0x50,0x64, 0x3,0x2c,0x2a,
+  0x1,0x50,0x5f, 0x3,0x2c,0x28, 0x1,0x54,0x7e, 0x2,0x2e,0x64,
+  0x3,0x30,0x40, 0x1,0x54,0x7d, 0x3,0x2c,0x27, 0x4,0x2c,0x40,
+  0x2,0x2e,0x62, 0x4,0x2c,0x3e, 0x1,0x54,0x72, 0x3,0x30,0x4f,
+  0x1,0x54,0x77, 0x3,0x30,0x4a, 0x2,0x2e,0x61, 0x2,0x2e,0x5e,
+  0x2,0x2e,0x63, 0x1,0x54,0x73, 0x2,0x2e,0x5d, 0x3,0x30,0x4e,
+  0x1,0x54,0x76, 0x1,0x54,0x74, 0x3,0x30,0x3e, 0x2,0x2e,0x65,
+  0x1,0x54,0x75, 0x1,0x54,0x79, 0x3,0x30,0x3b, 0x3,0x30,0x45,
+  0x1,0x54,0x7a, 0x3,0x30,0x48, 0x1,0x54,0x7c, 0x3,0x30,0x52,
+  0x4,0x2c,0x39, 0x4,0x2c,0x3d, 0x1,0x54,0x7b, 0x3,0x30,0x3c,
+  0x3,0x35,0x22, 0x3,0x35,0x38, 0x2,0x2e,0x5f, 0x2,0x2e,0x60,
+  0x3,0x30,0x4d, 0x6,0x36,0x57, 0x3,0x30,0x4b, 0x2,0x2e,0x66,
+  0x2,0x34,0x57, 0x1,0x59,0x5e, 0x2,0x3b,0x26, 0x2,0x34,0x56,
+  0x2,0x34,0x69, 0x3,0x35,0x28, 0x3,0x35,0x24, 0x1,0x59,0x64,
+  0x3,0x35,0x31, 0x2,0x34,0x67, 0x3,0x35,0x33, 0x1,0x59,0x63,
+  0x1,0x59,0x5f, 0x2,0x34,0x70, 0x2,0x34,0x60, 0x2,0x34,0x63,
+  0x3,0x35,0x2e, 0x1,0x59,0x67, 0x2,0x34,0x6d, 0x2,0x34,0x65,
+  0x1,0x59,0x60, 0x1,0x59,0x68, 0x3,0x35,0x2a, 0x2,0x34,0x6a,
+  0x2,0x34,0x68, 0x3,0x35,0x2f, 0x3,0x35,0x3b, 0x2,0x34,0x59,
+  0x2,0x34,0x6e, 0x2,0x34,0x62, 0x2,0x34,0x5d, 0x3,0x35,0x3a,
+  0x2,0x34,0x53, 0x2,0x34,0x6f, 0x2,0x34,0x5f, 0x2,0x34,0x52,
+  0x3,0x35,0x39, 0x1,0x59,0x66, 0x2,0x34,0x64, 0x2,0x34,0x71,
+  0x2,0x34,0x61, 0x2,0x34,0x55, 0x2,0x34,0x5a, 0x2,0x34,0x51,
+  0x3,0x35,0x27, 0x1,0x59,0x65, 0x3,0x35,0x3c, 0x2,0x34,0x5e,
+  0x2,0x34,0x5b, 0x1,0x59,0x61, 0x2,0x34,0x54, 0x3,0x35,0x30,
+  0x2,0x34,0x6c, 0x1,0x59,0x62, 0x3,0x35,0x2b, 0x2,0x34,0x5c,
+  0x2,0x34,0x58, 0x3,0x35,0x29, 0x3,0x35,0x34, 0x2,0x34,0x6b,
+  0x3,0x35,0x32, 0xf,0x33,0x73, 0x3,0x35,0x37, 0x3,0x35,0x35,
+  0x1,0x5e,0x65, 0x2,0x3a,0x7d, 0x3,0x3a,0x75, 0x2,0x3a,0x7a,
+  0x2,0x3b,0x2d, 0x2,0x3b,0x21, 0x2,0x3b,0x2e, 0x3,0x3a,0x7c,
+  0x1,0x5e,0x67, 0x3,0x3a,0x63, 0x3,0x3a,0x61, 0x3,0x3a,0x58,
+  0x2,0x3b,0x2a, 0x2,0x3b,0x27, 0x3,0x3a,0x5b, 0x3,0x3a,0x77,
+  0x3,0x3a,0x72, 0x3,0x3a,0x59, 0x3,0x3a,0x60, 0x2,0x3b,0x28,
+  0x2,0x3b,0x2b, 0x2,0x3b,0x2f, 0x3,0x3a,0x7b, 0x2,0x34,0x66,
+  0x2,0x3b,0x31, 0x2,0x42,0x4d, 0x3,0x3a,0x66, 0x1,0x5e,0x68,
+  0x2,0x3b,0x32, 0x2,0x3a,0x78, 0x2,0x3b,0x24, 0x3,0x3a,0x62,
+  0x2,0x3b,0x29, 0x3,0x3a,0x5c, 0x3,0x3a,0x5e, 0x1,0x5e,0x66,
+  0x1,0x5e,0x69, 0x2,0x3b,0x30, 0x2,0x3b,0x33, 0x2,0x3a,0x7c,
+  0x2,0x3a,0x79, 0x3,0x3a,0x73, 0x3,0x3a,0x5a, 0x2,0x3a,0x7b,
+  0x3,0x3a,0x57, 0x3,0x3a,0x7a, 0x2,0x3b,0x22, 0x2,0x3a,0x7e,
+  0x1,0x5e,0x6a, 0x3,0x3a,0x56, 0x2,0x3b,0x2c, 0x3,0x3a,0x79,
+  0x3,0x3a,0x78, 0x2,0x3b,0x23, 0x2,0x3b,0x25, 0x2,0x3a,0x77,
+  0x2,0x42,0x41, 0x2,0x42,0x3f, 0x1,0x63,0x68, 0x1,0x63,0x66,
+  0x2,0x42,0x49, 0x2,0x42,0x40, 0x2,0x42,0x4a, 0x2,0x42,0x46,
+  0x2,0x42,0x3e, 0x2,0x42,0x4c, 0x2,0x42,0x3d, 0x2,0x42,0x44,
+  0x1,0x63,0x65, 0x1,0x63,0x64, 0x1,0x63,0x63, 0x2,0x42,0x42,
+  0x2,0x42,0x47, 0x1,0x63,0x60, 0x1,0x63,0x67, 0x3,0x40,0x67,
+  0x2,0x42,0x3b, 0x3,0x40,0x66, 0x2,0x42,0x45, 0x2,0x42,0x3a,
+  0x2,0x42,0x43, 0x1,0x63,0x61, 0x2,0x42,0x48, 0x2,0x42,0x3c,
+  0x1,0x63,0x62, 0x2,0x42,0x4b, 0x3,0x40,0x64, 0x3,0x3a,0x6b,
+  0x3,0x40,0x6a, 0x3,0x64,0x68, 0x3,0x64,0x69, 0x2,0x49,0x55,
+  0x1,0x68,0x4a, 0x1,0x68,0x49, 0x1,0x68,0x4b, 0x2,0x49,0x61,
+  0x2,0x49,0x57, 0x2,0x49,0x5d, 0x2,0x49,0x52, 0x2,0x49,0x60,
+  0x2,0x49,0x5f, 0x2,0x49,0x63, 0x2,0x49,0x5c, 0x1,0x68,0x46,
+  0x2,0x49,0x5b, 0x1,0x68,0x4c, 0x3,0x46,0x4c, 0x2,0x49,0x54,
+  0x1,0x68,0x47, 0x3,0x46,0x4a, 0x2,0x49,0x62, 0x1,0x68,0x48,
+  0x2,0x49,0x56, 0x2,0x49,0x59, 0x2,0x49,0x5e, 0x2,0x49,0x58,
+  0x2,0x49,0x53, 0x3,0x46,0x4f, 0x3,0x46,0x53, 0x2,0x49,0x5a,
+  0x2,0x4f,0x7c, 0x1,0x6c,0x4b, 0x2,0x50,0x21, 0x2,0x4f,0x7e,
+  0x2,0x50,0x23, 0x2,0x50,0x25, 0x3,0x4b,0x5c, 0x1,0x6c,0x49,
+  0x3,0x4b,0x58, 0x2,0x4f,0x7d, 0x3,0x4b,0x54, 0x2,0x4f,0x7b,
+  0x3,0x4b,0x5e, 0x2,0x50,0x26, 0x2,0x50,0x24, 0x2,0x50,0x22,
+  0x3,0x4b,0x56, 0x2,0x50,0x28, 0x3,0x4b,0x5a, 0x2,0x50,0x27,
+  0x1,0x6c,0x4d, 0x1,0x6c,0x48, 0x3,0x4b,0x5b, 0x1,0x6c,0x4a,
+  0x1,0x6c,0x4c, 0x3,0x4b,0x5d, 0x3,0x4b,0x5f, 0x2,0x50,0x29,
+  0x2,0x56,0x61, 0x3,0x50,0x50, 0x3,0x50,0x53, 0x2,0x56,0x60,
+  0x2,0x56,0x5f, 0x3,0x50,0x51, 0x2,0x56,0x62, 0x2,0x56,0x5b,
+  0x3,0x50,0x4f, 0x2,0x56,0x5c, 0x2,0x56,0x64, 0x2,0x56,0x5d,
+  0x3,0x50,0x54, 0x1,0x70,0x4e, 0x2,0x56,0x66, 0x3,0x50,0x4e,
+  0x2,0x56,0x65, 0x2,0x56,0x5e, 0x3,0x50,0x56, 0x2,0x5c,0x5d,
+  0x1,0x73,0x51, 0x2,0x5c,0x5b, 0x2,0x5c,0x60, 0x2,0x5c,0x5f,
+  0x2,0x56,0x63, 0x3,0x54,0x50, 0x1,0x73,0x50, 0x3,0x54,0x4e,
+  0x2,0x5c,0x5e, 0x2,0x5c,0x5a, 0x2,0x5c,0x62, 0x2,0x5c,0x61,
+  0x1,0x73,0x4f, 0x3,0x54,0x52, 0x2,0x5c,0x5c, 0x3,0x54,0x4f,
+  0x1,0x70,0x4f, 0x3,0x54,0x51, 0x3,0x54,0x53, 0x1,0x76,0x40,
+  0x3,0x5a,0x31, 0x3,0x57,0x61, 0x3,0x57,0x5e, 0x2,0x61,0x4d,
+  0x2,0x65,0x46, 0x2,0x65,0x47, 0x2,0x65,0x48, 0x1,0x79,0x67,
+  0x4,0x63,0x34, 0x3,0x5c,0x36, 0x1,0x79,0x68, 0x3,0x5c,0x39,
+  0x2,0x68,0x6f, 0x3,0x5c,0x3a, 0x2,0x6b,0x56, 0x2,0x6b,0x55,
+  0x3,0x5e,0x29, 0x3,0x5f,0x42, 0x2,0x6d,0x49, 0x2,0x6d,0x4a,
+  0x2,0x6f,0x24, 0x2,0x70,0x35, 0x3,0x60,0x73, 0x1,0x44,0x4d,
+  0x1,0x44,0x4e, 0x4,0x21,0x32, 0x1,0x44,0x4f, 0x1,0x45,0x36,
+  0x1,0x46,0x45, 0x2,0x22,0x33, 0x1,0x47,0x73, 0x1,0x47,0x74,
+  0x1,0x49,0x77, 0x1,0x49,0x78, 0x1,0x49,0x76, 0x1,0x49,0x75,
+  0x1,0x4c,0x75, 0x3,0x28,0x48, 0x4,0x26,0x22, 0x2,0x26,0x36,
+  0x1,0x4c,0x77, 0x1,0x4c,0x76, 0x2,0x26,0x37, 0x4,0x26,0x23,
+  0x3,0x64,0x6a, 0x4,0x28,0x6e, 0x1,0x50,0x66, 0x3,0x2c,0x2f,
+  0x1,0x55,0x21, 0x2,0x2e,0x67, 0x2,0x34,0x73, 0x4,0x31,0x2c,
+  0x1,0x59,0x69, 0x1,0x5e,0x6c, 0x2,0x34,0x72, 0x1,0x5e,0x6b,
+  0x3,0x40,0x71, 0x1,0x68,0x4d, 0x3,0x40,0x72, 0x2,0x49,0x64,
+  0x1,0x70,0x50, 0x3,0x50,0x57, 0x1,0x73,0x52, 0x2,0x5c,0x63,
+  0x3,0x5a,0x34, 0x1,0x79,0x69, 0x3,0x5c,0x3b, 0x1,0x7b,0x5c,
+  0x3,0x21,0x3b, 0x2,0x21,0x53, 0x3,0x22,0x3d, 0x1,0x46,0x46,
+  0x2,0x21,0x54, 0x1,0x47,0x77, 0x3,0x23,0x50, 0x1,0x47,0x75,
+  0x1,0x47,0x76, 0x1,0x47,0x78, 0x4,0x23,0x6f, 0x1,0x49,0x7a,
+  0x1,0x49,0x79, 0x3,0x25,0x5a, 0x2,0x23,0x5c, 0x1,0x49,0x7b,
+  0x4,0x26,0x25, 0x2,0x23,0x5d, 0x2,0x26,0x38, 0x3,0x28,0x4c,
+  0x2,0x26,0x39, 0x3,0x28,0x4a, 0x1,0x4c,0x78, 0x1,0x4c,0x7a,
+  0x1,0x4c,0x7c, 0x1,0x4c,0x79, 0x1,0x4c,0x7d, 0x1,0x4c,0x7b,
+  0x3,0x28,0x4e, 0x3,0x28,0x4b, 0x3,0x28,0x4d, 0x1,0x50,0x6a,
+  0x1,0x50,0x67, 0x1,0x50,0x69, 0x1,0x50,0x6b, 0x1,0x50,0x68,
+  0x2,0x2e,0x68, 0x2,0x29,0x78, 0xf,0x2a,0x39, 0x3,0x2c,0x32,
+  0x2,0x2e,0x6a, 0x2,0x2e,0x69, 0x1,0x55,0x27, 0x4,0x2c,0x46,
+  0x1,0x55,0x23, 0x4,0x2c,0x49, 0x6,0x36,0x66, 0x1,0x55,0x24,
+  0x1,0x55,0x26, 0x1,0x55,0x28, 0x1,0x55,0x25, 0x3,0x30,0x57,
+  0x1,0x55,0x2a, 0x1,0x55,0x29, 0x4,0x2c,0x48, 0x3,0x30,0x56,
+  0x3,0x30,0x55, 0xf,0x2e,0x7e, 0x1,0x59,0x6e, 0x2,0x34,0x75,
+  0x2,0x34,0x74, 0x1,0x59,0x6d, 0x3,0x35,0x41, 0x1,0x59,0x6c,
+  0x1,0x59,0x6b, 0x1,0x59,0x6f, 0x1,0x59,0x6a, 0x3,0x35,0x3f,
+  0x2,0x3b,0x39, 0x2,0x3b,0x36, 0x1,0x5e,0x6e, 0x2,0x3b,0x35,
+  0x2,0x3b,0x3a, 0x4,0x37,0x24, 0x1,0x5e,0x70, 0x2,0x3b,0x38,
+  0x1,0x5e,0x6d, 0x1,0x5e,0x6f, 0x2,0x3b,0x37, 0x3,0x3a,0x7e,
+  0x2,0x42,0x4e, 0x3,0x40,0x74, 0x2,0x42,0x4f, 0x2,0x42,0x50,
+  0x3,0x40,0x75, 0x3,0x40,0x76, 0x3,0x40,0x73, 0x4,0x3c,0x6e,
+  0x1,0x68,0x4e, 0x1,0x68,0x56, 0x2,0x49,0x65, 0x1,0x68,0x50,
+  0x1,0x68,0x54, 0x2,0x49,0x66, 0x1,0x68,0x55, 0x1,0x68,0x51,
+  0x1,0x68,0x52, 0x1,0x68,0x4f, 0x1,0x68,0x53, 0x1,0x6c,0x50,
+  0x2,0x3b,0x34, 0x1,0x6c,0x51, 0x1,0x6c,0x4f, 0x4,0x49,0x44,
+  0x1,0x6c,0x4e, 0x2,0x56,0x67, 0x1,0x70,0x51, 0x2,0x5c,0x64,
+  0x2,0x5c,0x65, 0x3,0x5a,0x35, 0x4,0x5f,0x55, 0x1,0x78,0x31,
+  0x1,0x79,0x6a, 0x3,0x5e,0x2a, 0x1,0x44,0x50, 0x3,0x22,0x3e,
+  0x1,0x47,0x79, 0x3,0x25,0x5e, 0x3,0x25,0x5c, 0x3,0x25,0x5d,
+  0x3,0x28,0x50, 0x1,0x50,0x6c, 0x2,0x2e,0x6b, 0x1,0x55,0x2b,
+  0x3,0x30,0x58, 0x3,0x30,0x59, 0x1,0x59,0x72, 0x1,0x59,0x71,
+  0x1,0x59,0x70, 0x1,0x5e,0x71, 0x1,0x5e,0x72, 0x2,0x3b,0x3b,
+  0x1,0x68,0x57, 0x1,0x70,0x52, 0x1,0x44,0x51, 0x2,0x21,0x3c,
+  0x1,0x45,0x37, 0x2,0x21,0x55, 0x4,0x21,0x73, 0x3,0x22,0x3f,
+  0x2,0x22,0x34, 0x1,0x47,0x7a, 0x4,0x22,0x5c, 0x3,0x23,0x52,
+  0x3,0x28,0x51, 0x1,0x4c,0x7e, 0x3,0x2c,0x34, 0x3,0x3b,0x24,
+  0x2,0x42,0x51, 0x3,0x40,0x78, 0x3,0x65,0x25, 0x1,0x44,0x52,
+  0x4,0x21,0x4b, 0x1,0x45,0x38, 0x2,0x22,0x35, 0x2,0x23,0x5e,
+  0x4,0x26,0x29, 0x2,0x23,0x5f, 0x3,0x25,0x5f, 0x1,0x49,0x7c,
+  0xf,0x25,0x54, 0x3,0x2c,0x35, 0x2,0x3b,0x3c, 0x1,0x5e,0x73,
+  0x2,0x42,0x52, 0x4,0x49,0x49, 0x3,0x54,0x54, 0x1,0x73,0x53,
+  0x1,0x44,0x53, 0x1,0x44,0x67, 0x1,0x45,0x39, 0x2,0x21,0x56,
+  0x1,0x46,0x47, 0x3,0x23,0x54, 0x1,0x4a,0x22, 0x1,0x4a,0x21,
+  0x1,0x49,0x7d, 0x1,0x49,0x7e, 0x2,0x26,0x3a, 0x1,0x4d,0x22,
+  0x1,0x4d,0x23, 0x2,0x26,0x3b, 0x1,0x4d,0x21, 0x3,0x28,0x54,
+  0x3,0x28,0x55, 0x1,0x50,0x70, 0x2,0x29,0x79, 0x1,0x50,0x6f,
+  0x1,0x50,0x6d, 0x1,0x50,0x6e, 0x1,0x55,0x2e, 0x1,0x55,0x2c,
+  0x3,0x30,0x5a, 0x3,0x30,0x5b, 0x2,0x2e,0x6d, 0x1,0x55,0x2d,
+  0x2,0x2e,0x6c, 0x3,0x64,0x6b, 0x1,0x55,0x22, 0x2,0x34,0x76,
+  0x4,0x31,0x35, 0x3,0x35,0x43, 0x1,0x59,0x74, 0x1,0x59,0x75,
+  0x3,0x3b,0x26, 0x3,0x3b,0x25, 0x1,0x59,0x73, 0x3,0x35,0x44,
+  0x1,0x68,0x58, 0x2,0x49,0x67, 0x1,0x6c,0x52, 0x1,0x6c,0x53,
+  0x2,0x50,0x2a, 0x1,0x73,0x54, 0x2,0x61,0x4e, 0x2,0x61,0x4f,
+  0x3,0x5a,0x38, 0x1,0x7a,0x68, 0x2,0x70,0x36, 0x2,0x21,0x2b,
+  0x1,0x45,0x3a, 0x4,0x22,0x5f, 0x1,0x44,0x54, 0x2,0x21,0x58,
+  0x2,0x21,0x57, 0x4,0x21,0x76, 0x3,0x64,0x6c, 0x3,0x23,0x55,
+  0x1,0x47,0x7b, 0x2,0x22,0x37, 0x2,0x22,0x38, 0x2,0x22,0x36,
+  0x4,0x22,0x60, 0x2,0x22,0x39, 0x3,0x23,0x5a, 0xf,0x22,0x47,
+  0x3,0x25,0x61, 0x3,0x25,0x66, 0x2,0x23,0x67, 0x4,0x23,0x7a,
+  0x2,0x23,0x62, 0x2,0x23,0x64, 0x2,0x23,0x66, 0x2,0x23,0x63,
+  0x1,0x4a,0x26, 0x2,0x23,0x60, 0x3,0x25,0x62, 0x2,0x23,0x61,
+  0x1,0x4a,0x23, 0x1,0x4a,0x24, 0x2,0x23,0x65, 0x2,0x23,0x68,
+  0x1,0x4a,0x25, 0x2,0x23,0x69, 0xf,0x23,0x7c, 0xf,0x23,0x78,
+  0x3,0x25,0x63, 0x2,0x26,0x49, 0x3,0x28,0x5d, 0x2,0x26,0x43,
+  0x2,0x26,0x3e, 0x1,0x4d,0x25, 0x2,0x26,0x46, 0x2,0x26,0x44,
+  0x2,0x26,0x3d, 0x2,0x26,0x4a, 0x2,0x26,0x4d, 0x2,0x26,0x48,
+  0x2,0x26,0x41, 0x1,0x4d,0x27, 0x2,0x26,0x47, 0x1,0x4d,0x28,
+  0x2,0x26,0x42, 0x2,0x26,0x45, 0x2,0x26,0x3c, 0x2,0x26,0x40,
+  0x2,0x26,0x4c, 0x1,0x4d,0x29, 0x4,0x26,0x2f, 0x1,0x4d,0x2a,
+  0x3,0x28,0x5e, 0x2,0x26,0x3f, 0x2,0x26,0x4b, 0x1,0x4d,0x24,
+  0x1,0x4d,0x26, 0x3,0x28,0x5c, 0x3,0x28,0x5f, 0x3,0x28,0x57,
+  0x4,0x26,0x34, 0x3,0x28,0x58, 0x2,0x2a,0x2c, 0x2,0x2a,0x25,
+  0x2,0x2a,0x2b, 0x2,0x2a,0x24, 0x2,0x2a,0x26, 0x2,0x29,0x7e,
+  0x2,0x29,0x7c, 0x3,0x2c,0x3f, 0x2,0x2a,0x2d, 0x2,0x2a,0x2a,
+  0x2,0x29,0x7a, 0x3,0x2c,0x3b, 0x1,0x50,0x72, 0x2,0x2a,0x28,
+  0x2,0x2a,0x29, 0x3,0x64,0x6d, 0x2,0x2a,0x27, 0x2,0x29,0x7d,
+  0x2,0x29,0x7b, 0x1,0x50,0x71, 0x2,0x2a,0x23, 0x2,0x2a,0x21,
+  0x3,0x2c,0x3c, 0x3,0x2c,0x42, 0x2,0x2a,0x22, 0x2,0x2a,0x2e,
+  0x3,0x2c,0x3e, 0x3,0x2c,0x41, 0x3,0x2c,0x43, 0x3,0x2c,0x3d,
+  0x1,0x55,0x33, 0x3,0x30,0x63, 0x1,0x55,0x32, 0x3,0x30,0x5f,
+  0x2,0x2e,0x6e, 0x1,0x55,0x2f, 0x2,0x2e,0x70, 0x3,0x30,0x64,
+  0x1,0x55,0x34, 0x2,0x2e,0x71, 0x4,0x2c,0x60, 0x3,0x30,0x61,
+  0x1,0x55,0x37, 0x3,0x30,0x62, 0x1,0x55,0x35, 0x2,0x2e,0x72,
+  0x2,0x2a,0x2f, 0x2,0x2e,0x74, 0x3,0x30,0x5e, 0x1,0x55,0x31,
+  0x4,0x2c,0x5c, 0x1,0x55,0x30, 0x4,0x2c,0x61, 0x2,0x2e,0x6f,
+  0x2,0x2e,0x73, 0x1,0x55,0x36, 0x1,0x59,0x77, 0x1,0x59,0x76,
+  0x3,0x35,0x4b, 0x3,0x35,0x48, 0x3,0x35,0x47, 0x2,0x34,0x78,
+  0x2,0x34,0x7c, 0x2,0x34,0x7e, 0x1,0x59,0x78, 0x2,0x35,0x23,
+  0x3,0x35,0x51, 0x1,0x59,0x7c, 0x2,0x35,0x25, 0x3,0x35,0x52,
+  0x1,0x59,0x7e, 0x3,0x35,0x4f, 0x1,0x59,0x7a, 0x1,0x5a,0x24,
+  0x3,0x35,0x55, 0x1,0x5a,0x21, 0x2,0x34,0x7a, 0x1,0x59,0x79,
+  0x3,0x3b,0x2b, 0x2,0x34,0x79, 0x2,0x34,0x77, 0x2,0x35,0x27,
+  0x2,0x34,0x7b, 0x3,0x35,0x46, 0x1,0x59,0x7b, 0x2,0x35,0x26,
+  0x1,0x5a,0x22, 0x2,0x35,0x22, 0x2,0x35,0x21, 0x1,0x5a,0x23,
+  0x2,0x34,0x7d, 0x1,0x59,0x7d, 0x3,0x35,0x4e, 0x6,0x3e,0x76,
+  0x3,0x35,0x4a, 0x2,0x35,0x28, 0x3,0x35,0x54, 0x2,0x35,0x24,
+  0x2,0x3b,0x4b, 0x2,0x3b,0x52, 0x2,0x3b,0x47, 0x1,0x5e,0x76,
+  0x2,0x3b,0x43, 0x2,0x3b,0x53, 0x2,0x3b,0x3d, 0x2,0x3b,0x50,
+  0x2,0x3b,0x4e, 0x2,0x3b,0x48, 0x3,0x3b,0x36, 0x2,0x3b,0x51,
+  0x2,0x3b,0x4a, 0x3,0x3b,0x28, 0x2,0x3b,0x42, 0x2,0x3b,0x54,
+  0x2,0x3b,0x40, 0x2,0x3b,0x4d, 0x2,0x3b,0x3e, 0x3,0x3b,0x27,
+  0x2,0x3b,0x55, 0x3,0x3b,0x37, 0x1,0x5e,0x77, 0x3,0x3b,0x2a,
+  0x2,0x3b,0x4f, 0x2,0x42,0x55, 0x2,0x3b,0x41, 0x1,0x5e,0x74,
+  0x3,0x3b,0x2e, 0x2,0x3b,0x45, 0x3,0x3b,0x34, 0x1,0x5e,0x75,
+  0x2,0x3b,0x44, 0x2,0x3b,0x49, 0x3,0x3b,0x33, 0x4,0x37,0x35,
+  0x2,0x3b,0x46, 0x4,0x37,0x2f, 0x3,0x3b,0x31, 0x2,0x3b,0x4c,
+  0x3,0x3b,0x2d, 0x2,0x42,0x59, 0x4,0x3c,0x79, 0x3,0x41,0x21,
+  0x4,0x3c,0x7b, 0x2,0x42,0x5c, 0x2,0x42,0x54, 0x3,0x40,0x7c,
+  0x2,0x42,0x56, 0x3,0x40,0x7a, 0x2,0x42,0x5b, 0x2,0x42,0x5a,
+  0x1,0x63,0x69, 0x4,0x3c,0x75, 0x2,0x3b,0x3f, 0x2,0x42,0x58,
+  0x3,0x40,0x79, 0x3,0x40,0x7d, 0x1,0x63,0x6a, 0x4,0x3c,0x74,
+  0x2,0x42,0x53, 0x2,0x42,0x57, 0x4,0x3c,0x7c, 0x4,0x3c,0x78,
+  0x3,0x64,0x6e, 0x2,0x49,0x6e, 0x3,0x46,0x5c, 0x2,0x49,0x75,
+  0x2,0x49,0x6c, 0x3,0x46,0x54, 0x2,0x49,0x73, 0x2,0x49,0x6a,
+  0x2,0x49,0x72, 0x2,0x49,0x76, 0x2,0x49,0x69, 0x2,0x49,0x6d,
+  0x2,0x49,0x68, 0x3,0x46,0x56, 0x1,0x68,0x59, 0x4,0x43,0x2c,
+  0x2,0x49,0x6b, 0x1,0x68,0x5a, 0x2,0x49,0x71, 0x2,0x49,0x70,
+  0x2,0x49,0x6f, 0x3,0x46,0x59, 0x3,0x46,0x5a, 0x2,0x49,0x74,
+  0x3,0x64,0x6f, 0x3,0x4b,0x65, 0x3,0x4b,0x66, 0x3,0x4b,0x63,
+  0x2,0x50,0x2e, 0x2,0x50,0x30, 0x1,0x6c,0x55, 0x2,0x50,0x31,
+  0x3,0x4b,0x6b, 0x2,0x50,0x2c, 0x3,0x4b,0x67, 0x2,0x50,0x2b,
+  0x2,0x50,0x35, 0x3,0x4b,0x69, 0x2,0x50,0x33, 0x1,0x6c,0x54,
+  0x2,0x50,0x36, 0x2,0x50,0x2d, 0x2,0x50,0x32, 0x2,0x50,0x34,
+  0x2,0x50,0x2f, 0x3,0x4b,0x6a, 0x3,0x4b,0x68, 0x3,0x64,0x70,
+  0x3,0x50,0x58, 0x2,0x56,0x6b, 0x2,0x56,0x70, 0x2,0x56,0x6a,
+  0x2,0x56,0x6f, 0x3,0x50,0x5b, 0x2,0x56,0x68, 0x2,0x56,0x72,
+  0x2,0x56,0x6e, 0x2,0x56,0x73, 0x2,0x56,0x6d, 0x2,0x56,0x69,
+  0x2,0x56,0x71, 0x3,0x50,0x5a, 0x2,0x56,0x74, 0x2,0x56,0x6c,
+  0x3,0x64,0x71, 0x2,0x5c,0x66, 0x1,0x73,0x58, 0x3,0x54,0x57,
+  0x1,0x73,0x56, 0x3,0x54,0x59, 0x1,0x73,0x55, 0x1,0x73,0x57,
+  0x3,0x54,0x55, 0x3,0x64,0x72, 0x2,0x61,0x50, 0x3,0x57,0x62,
+  0x2,0x64,0x3e, 0x2,0x65,0x49, 0x3,0x5a,0x39, 0x2,0x68,0x70,
+  0x2,0x68,0x71, 0x3,0x5c,0x3d, 0x1,0x79,0x6b, 0x3,0x5c,0x3c,
+  0x2,0x6b,0x57, 0x3,0x5c,0x3e, 0x1,0x7a,0x69, 0x4,0x66,0x3b,
+  0x2,0x6b,0x58, 0x3,0x5e,0x2d, 0x2,0x6d,0x4c, 0x1,0x7b,0x5e,
+  0x3,0x5f,0x43, 0x1,0x7b,0x5d, 0x2,0x6d,0x4b, 0x1,0x7c,0x35,
+  0x3,0x60,0x30, 0x2,0x6f,0x25, 0x4,0x6b,0x68, 0x4,0x6a,0x46,
+  0x3,0x21,0x3c, 0x4,0x21,0x2c, 0x1,0x44,0x55, 0x1,0x47,0x7c,
+  0x2,0x22,0x3a, 0x2,0x23,0x6a, 0x1,0x4b,0x56, 0x1,0x5a,0x25,
+  0x3,0x35,0x57, 0x3,0x4b,0x6c, 0x1,0x44,0x56, 0x1,0x46,0x4a,
+  0x1,0x46,0x49, 0x1,0x46,0x48, 0x4,0x22,0x63, 0x1,0x4a,0x27,
+  0x1,0x55,0x38, 0x2,0x42,0x5d, 0x1,0x44,0x57, 0x1,0x44,0x58,
+  0x1,0x44,0x59, 0x1,0x45,0x3b, 0x3,0x25,0x67, 0x3,0x28,0x60,
+  0x1,0x50,0x73, 0x4,0x2c,0x64, 0x2,0x2a,0x30, 0x3,0x2c,0x45,
+  0x3,0x2c,0x44, 0x1,0x5e,0x78, 0x1,0x44,0x5a, 0x2,0x21,0x3d,
+  0x3,0x21,0x63, 0x4,0x21,0x4c, 0x1,0x46,0x4b, 0x1,0x46,0x4c,
+  0x2,0x21,0x59, 0x1,0x47,0x7d, 0x5,0x22,0x5c, 0x3,0x23,0x5c,
+  0x3,0x25,0x68, 0x2,0x23,0x6b, 0x3,0x25,0x6b, 0x1,0x4a,0x28,
+  0x4,0x24,0x23, 0x2,0x23,0x6c, 0x1,0x4d,0x30, 0x3,0x28,0x62,
+  0x3,0x28,0x61, 0x2,0x26,0x4f, 0x1,0x4d,0x2e, 0x1,0x4d,0x2d,
+  0x2,0x26,0x4e, 0x1,0x4d,0x2b, 0x2,0x26,0x50, 0x1,0x4d,0x2c,
+  0x1,0x4d,0x2f, 0x1,0x50,0x74, 0x3,0x2c,0x46, 0x1,0x50,0x76,
+  0x2,0x2a,0x34, 0x2,0x2a,0x31, 0x2,0x2a,0x32, 0x2,0x2a,0x33,
+  0x2,0x2a,0x35, 0x1,0x50,0x75, 0x2,0x2e,0x76, 0x2,0x2e,0x75,
+  0x3,0x30,0x66, 0x1,0x55,0x3a, 0x3,0x30,0x69, 0x1,0x55,0x39,
+  0x3,0x30,0x68, 0x3,0x30,0x6a, 0x3,0x30,0x67, 0x3,0x35,0x5b,
+  0x1,0x5a,0x28, 0x2,0x35,0x2a, 0x3,0x35,0x59, 0x1,0x5a,0x27,
+  0x1,0x5a,0x29, 0x1,0x5a,0x26, 0x3,0x35,0x58, 0x3,0x35,0x5a,
+  0x1,0x5e,0x7a, 0x2,0x35,0x29, 0x5,0x37,0x7c, 0x1,0x5e,0x7b,
+  0x2,0x3b,0x57, 0x3,0x39,0x79, 0x1,0x5e,0x7c, 0x2,0x3b,0x56,
+  0x1,0x5e,0x79, 0x3,0x3b,0x3a, 0x3,0x3b,0x3b, 0x3,0x3b,0x3d,
+  0x2,0x42,0x60, 0x2,0x42,0x62, 0x1,0x63,0x6b, 0x2,0x42,0x61,
+  0x2,0x42,0x5f, 0x2,0x42,0x5e, 0x4,0x3d,0x2a, 0x4,0x43,0x35,
+  0x3,0x46,0x5d, 0x2,0x49,0x79, 0x1,0x68,0x5f, 0x1,0x68,0x5d,
+  0x4,0x43,0x30, 0x1,0x68,0x5e, 0x2,0x49,0x77, 0x2,0x49,0x78,
+  0x3,0x4b,0x6d, 0x1,0x68,0x5b, 0x2,0x50,0x3a, 0x2,0x50,0x38,
+  0x3,0x4b,0x70, 0x1,0x6c,0x57, 0x2,0x50,0x39, 0x1,0x6c,0x58,
+  0x1,0x6c,0x56, 0x1,0x68,0x5c, 0xf,0x4e,0x5e, 0x3,0x64,0x73,
+  0x2,0x56,0x77, 0x2,0x56,0x75, 0x2,0x56,0x76, 0x2,0x50,0x37,
+  0x2,0x5c,0x68, 0x1,0x73,0x59, 0x2,0x5c,0x67, 0x2,0x61,0x51,
+  0x2,0x61,0x52, 0x2,0x56,0x78, 0x2,0x65,0x4a, 0x3,0x66,0x77,
+  0x1,0x44,0x5b, 0x1,0x46,0x4d, 0x1,0x48,0x21, 0x2,0x22,0x3b,
+  0x1,0x47,0x7e, 0x3,0x28,0x63, 0x1,0x4d,0x31, 0x1,0x63,0x6c,
+  0x3,0x21,0x3d, 0x1,0x45,0x3c, 0x1,0x46,0x4e, 0x1,0x50,0x77,
+  0x1,0x5e,0x7d, 0x3,0x21,0x3e, 0x2,0x21,0x5a, 0x3,0x22,0x47,
+  0x2,0x21,0x5b, 0x3,0x22,0x48, 0x2,0x22,0x3c, 0x3,0x66,0x78,
+  0x1,0x4a,0x2a, 0x2,0x23,0x70, 0x2,0x23,0x6e, 0x1,0x4a,0x2b,
+  0x2,0x23,0x6d, 0x2,0x23,0x6f, 0x2,0x23,0x71, 0x4,0x24,0x28,
+  0x1,0x4a,0x29, 0x3,0x25,0x6e, 0x3,0x25,0x6d, 0x1,0x4d,0x35,
+  0x1,0x4d,0x36, 0x1,0x4d,0x33, 0x3,0x28,0x65, 0x3,0x28,0x67,
+  0x1,0x4d,0x32, 0x2,0x2a,0x39, 0x1,0x4d,0x34, 0x3,0x28,0x68,
+  0x1,0x50,0x78, 0x3,0x2c,0x48, 0x2,0x2a,0x38, 0x2,0x2a,0x3a,
+  0x2,0x2a,0x37, 0x2,0x2a,0x3b, 0x1,0x50,0x79, 0x1,0x55,0x3d,
+  0x2,0x2e,0x77, 0x3,0x30,0x6c, 0x2,0x2e,0x79, 0x1,0x55,0x3b,
+  0x2,0x2e,0x7a, 0x1,0x55,0x3c, 0x2,0x2e,0x78, 0x3,0x30,0x6b,
+  0x2,0x2a,0x36, 0x2,0x35,0x2b, 0x2,0x35,0x2e, 0x2,0x35,0x2f,
+  0x2,0x35,0x2c, 0x1,0x5a,0x2d, 0x1,0x5a,0x2c, 0x1,0x5a,0x2a,
+  0x1,0x5a,0x2b, 0x2,0x35,0x2d, 0x3,0x35,0x61, 0x3,0x35,0x60,
+  0x3,0x3b,0x3f, 0x1,0x5a,0x2e, 0x3,0x3b,0x40, 0x3,0x3b,0x3e,
+  0x1,0x5f,0x21, 0x1,0x5f,0x22, 0x6,0x48,0x45, 0x1,0x5f,0x23,
+  0x2,0x42,0x63, 0x2,0x42,0x65, 0x2,0x42,0x67, 0x1,0x63,0x6e,
+  0x1,0x63,0x6d, 0x1,0x5e,0x7e, 0x2,0x42,0x66, 0x2,0x42,0x64,
+  0x3,0x64,0x74, 0x2,0x49,0x7d, 0x3,0x46,0x61, 0x3,0x46,0x60,
+  0x2,0x49,0x7b, 0x2,0x4a,0x23, 0x1,0x68,0x60, 0x2,0x4a,0x24,
+  0x2,0x4a,0x21, 0x1,0x68,0x61, 0x2,0x49,0x7c, 0x2,0x49,0x7a,
+  0x2,0x4a,0x22, 0x1,0x6c,0x5a, 0x2,0x50,0x3c, 0x2,0x49,0x7e,
+  0x1,0x6c,0x5c, 0x2,0x50,0x3d, 0x1,0x6c,0x5b, 0x1,0x6c,0x5e,
+  0x2,0x50,0x3e, 0x1,0x6c,0x59, 0x1,0x6c,0x5d, 0x2,0x56,0x7d,
+  0x2,0x56,0x7b, 0x2,0x56,0x7a, 0x2,0x56,0x7c, 0x2,0x56,0x79,
+  0x3,0x50,0x5c, 0x4,0x5b,0x21, 0x1,0x78,0x33, 0x3,0x64,0x75,
+  0x2,0x68,0x72, 0x2,0x68,0x73, 0x3,0x5c,0x3f, 0x2,0x6b,0x59,
+  0x2,0x6d,0x4d, 0x1,0x7d,0x22, 0x3,0x21,0x3f, 0x3,0x23,0x61,
+  0x1,0x4d,0x37, 0x1,0x4a,0x2c, 0x3,0x28,0x69, 0x3,0x28,0x6b,
+  0x1,0x50,0x7a, 0x3,0x2c,0x4c, 0x3,0x2c,0x4b, 0x3,0x30,0x6e,
+  0x1,0x44,0x5c, 0x1,0x45,0x3d, 0x4,0x21,0x4d, 0x1,0x46,0x4f,
+  0x2,0x22,0x3d, 0x3,0x25,0x6f, 0x1,0x4a,0x2d, 0x2,0x23,0x72,
+  0x3,0x28,0x6d, 0x2,0x2a,0x3c, 0x1,0x50,0x7b, 0x1,0x68,0x62,
+  0x1,0x44,0x5d, 0x3,0x21,0x64, 0x3,0x22,0x49, 0x3,0x23,0x62,
+  0x1,0x48,0x22, 0xf,0x22,0x4e, 0x3,0x3b,0x42, 0x1,0x63,0x6f,
+  0x1,0x44,0x5e, 0x1,0x45,0x3e, 0x1,0x45,0x3f, 0x1,0x46,0x51,
+  0x1,0x46,0x50, 0x4,0x22,0x6b, 0x2,0x22,0x3e, 0x1,0x48,0x23,
+  0x4,0x22,0x6c, 0x2,0x23,0x73, 0x3,0x25,0x71, 0x1,0x4a,0x2e,
+  0x3,0x28,0x6e, 0x2,0x26,0x52, 0x2,0x26,0x53, 0x2,0x26,0x54,
+  0x3,0x28,0x70, 0x1,0x4d,0x38, 0x1,0x4d,0x39, 0x2,0x26,0x51,
+  0x1,0x4d,0x3a, 0x4,0x29,0x2c, 0x4,0x2c,0x70, 0x1,0x50,0x7c,
+  0x2,0x2a,0x3d, 0x3,0x2c,0x4d, 0x2,0x2e,0x7c, 0x1,0x55,0x3e,
+  0x3,0x30,0x6f, 0x2,0x2e,0x7b, 0x3,0x35,0x62, 0x1,0x5a,0x2f,
+  0x2,0x35,0x30, 0x1,0x5a,0x30, 0x2,0x35,0x31, 0x3,0x35,0x63,
+  0x3,0x3b,0x47, 0x3,0x3b,0x45, 0x1,0x5f,0x24, 0x4,0x37,0x45,
+  0x3,0x3b,0x44, 0x4,0x3d,0x30, 0x2,0x42,0x68, 0xf,0x41,0x3f,
+  0x3,0x41,0x22, 0x2,0x4a,0x26, 0x2,0x4a,0x25, 0x1,0x68,0x63,
+  0x4,0x49,0x5e, 0x1,0x6c,0x5f, 0x2,0x50,0x3f, 0x1,0x70,0x53,
+  0x2,0x56,0x7e, 0x1,0x73,0x5a, 0x3,0x57,0x63, 0x1,0x7b,0x5f,
+  0x2,0x6f,0x27, 0x3,0x21,0x40, 0x3,0x21,0x41, 0x3,0x22,0x4a,
+  0x3,0x23,0x51, 0x2,0x26,0x55, 0x3,0x28,0x71, 0x2,0x2a,0x3e,
+  0x1,0x5a,0x31, 0x2,0x3b,0x58, 0x1,0x63,0x70, 0x3,0x41,0x23,
+  0x3,0x50,0x5e, 0xf,0x54,0x43, 0x3,0x57,0x64, 0x1,0x76,0x41,
+  0x3,0x61,0x64, 0x3,0x21,0x42, 0x1,0x4a,0x30, 0x3,0x25,0x72,
+  0x1,0x4a,0x2f, 0x1,0x50,0x7d, 0x3,0x2c,0x50, 0x2,0x2e,0x7d,
+  0x1,0x5a,0x33, 0x1,0x5d,0x29, 0x1,0x5a,0x34, 0x1,0x5a,0x32,
+  0x1,0x5f,0x25, 0x3,0x41,0x24, 0x2,0x4a,0x27, 0x1,0x68,0x64,
+  0x1,0x6c,0x60, 0x3,0x5f,0x45, 0x2,0x21,0x2c, 0x2,0x22,0x3f,
+  0x4,0x22,0x6d, 0x2,0x23,0x75, 0x1,0x4a,0x31, 0x2,0x23,0x74,
+  0x1,0x4a,0x32, 0x4,0x24,0x2c, 0x1,0x4d,0x3e, 0x2,0x26,0x58,
+  0x2,0x26,0x57, 0x1,0x4d,0x3d, 0x1,0x4d,0x3b, 0x1,0x4d,0x3c,
+  0x2,0x26,0x56, 0x3,0x28,0x76, 0x3,0x28,0x75, 0x1,0x51,0x21,
+  0x2,0x2a,0x3f, 0x1,0x51,0x24, 0x1,0x50,0x7e, 0x1,0x51,0x26,
+  0x1,0x51,0x22, 0x1,0x51,0x23, 0x1,0x51,0x25, 0x4,0x29,0x31,
+  0x3,0x30,0x70, 0x3,0x30,0x72, 0x1,0x55,0x41, 0x1,0x55,0x40,
+  0x1,0x55,0x3f, 0x3,0x30,0x71, 0x3,0x64,0x76, 0x2,0x35,0x33,
+  0x1,0x5a,0x35, 0x1,0x5a,0x38, 0x1,0x5a,0x36, 0x3,0x64,0x77,
+  0x2,0x35,0x32, 0x1,0x5a,0x3b, 0x4,0x31,0x53, 0x1,0x5a,0x37,
+  0x2,0x35,0x34, 0x1,0x5a,0x3a, 0x1,0x5a,0x39, 0x4,0x31,0x52,
+  0x4,0x31,0x57, 0x4,0x37,0x4a, 0x2,0x3b,0x5a, 0x2,0x3b,0x59,
+  0x3,0x3b,0x4b, 0x1,0x5f,0x28, 0x1,0x5f,0x26, 0x1,0x5f,0x27,
+  0x2,0x3b,0x5b, 0x1,0x63,0x71, 0x2,0x42,0x6a, 0x1,0x63,0x72,
+  0x2,0x42,0x69, 0x4,0x3d,0x34, 0x4,0x43,0x3f, 0x2,0x50,0x40,
+  0x3,0x46,0x63, 0x3,0x46,0x64, 0x1,0x6c,0x62, 0x2,0x4a,0x28,
+  0x1,0x6c,0x61, 0x3,0x4b,0x72, 0x1,0x68,0x65, 0x3,0x64,0x78,
+  0x2,0x57,0x22, 0x2,0x57,0x21, 0x1,0x73,0x5b, 0x2,0x5c,0x69,
+  0x2,0x65,0x4b, 0x2,0x68,0x74, 0x2,0x68,0x75, 0x3,0x5e,0x2f,
+  0x1,0x45,0x40, 0x4,0x21,0x36, 0x1,0x46,0x52, 0x3,0x22,0x4d,
+  0x4,0x22,0x71, 0x2,0x21,0x5c, 0x3,0x22,0x4c, 0x5,0x22,0x66,
+  0x1,0x4a,0x34, 0x1,0x4a,0x36, 0x3,0x25,0x78, 0x2,0x22,0x42,
+  0x2,0x23,0x78, 0x2,0x23,0x77, 0x2,0x23,0x76, 0x3,0x23,0x66,
+  0x2,0x22,0x41, 0x2,0x22,0x40, 0x1,0x48,0x25, 0x1,0x4a,0x35,
+  0x1,0x4a,0x33, 0x1,0x48,0x24, 0x3,0x23,0x67, 0x3,0x23,0x69,
+  0x3,0x25,0x77, 0x1,0x4d,0x3f, 0x2,0x26,0x59, 0x3,0x25,0x7b,
+  0x1,0x4d,0x40, 0x2,0x23,0x7d, 0x4,0x26,0x50, 0x2,0x24,0x21,
+  0x2,0x23,0x7e, 0x2,0x26,0x5a, 0x3,0x25,0x76, 0x3,0x25,0x74,
+  0x2,0x23,0x7a, 0x3,0x28,0x7e, 0x1,0x4a,0x3a, 0x1,0x4a,0x38,
+  0x3,0x25,0x7c, 0x2,0x23,0x79, 0x2,0x23,0x7b, 0x2,0x24,0x23,
+  0x3,0x26,0x22, 0x1,0x4a,0x37, 0x3,0x26,0x21, 0x2,0x23,0x7c,
+  0x2,0x24,0x27, 0x1,0x4d,0x42, 0x3,0x25,0x7d, 0x2,0x24,0x24,
+  0x1,0x4a,0x39, 0x3,0x26,0x23, 0x2,0x24,0x22, 0x2,0x24,0x25,
+  0x3,0x25,0x7a, 0x1,0x4d,0x41, 0x3,0x25,0x75, 0x1,0x4d,0x43,
+  0x2,0x24,0x26, 0x3,0x28,0x78, 0x3,0x29,0x22, 0x2,0x26,0x6e,
+  0x2,0x26,0x61, 0x2,0x26,0x5f, 0x2,0x26,0x6d, 0x2,0x26,0x68,
+  0x1,0x51,0x2b, 0x1,0x4d,0x44, 0x2,0x26,0x69, 0x2,0x26,0x6c,
+  0x1,0x51,0x27, 0x2,0x26,0x6b, 0x1,0x4d,0x45, 0x1,0x4d,0x4a,
+  0x1,0x4d,0x48, 0x2,0x26,0x62, 0x4,0x29,0x36, 0x2,0x26,0x5d,
+  0x2,0x26,0x64, 0x1,0x4d,0x4f, 0x2,0x26,0x6f, 0x1,0x51,0x28,
+  0x2,0x26,0x65, 0x4,0x26,0x4f, 0x1,0x51,0x29, 0x1,0x4d,0x4b,
+  0x2,0x26,0x67, 0x3,0x2c,0x5a, 0x2,0x2a,0x4e, 0x1,0x51,0x2a,
+  0x2,0x26,0x5c, 0x1,0x4d,0x4c, 0x1,0x51,0x2c, 0x1,0x4d,0x4d,
+  0x1,0x4d,0x49, 0x1,0x4d,0x4e, 0x2,0x26,0x66, 0x2,0x26,0x5b,
+  0x2,0x26,0x6a, 0x1,0x4d,0x46, 0x3,0x28,0x77, 0x3,0x2c,0x5b,
+  0x2,0x26,0x5e, 0x2,0x26,0x63, 0x2,0x26,0x60, 0x1,0x4d,0x47,
+  0x3,0x28,0x7a, 0x2,0x2a,0x40, 0x4,0x29,0x45, 0x2,0x2a,0x41,
+  0x3,0x29,0x21, 0x2,0x2a,0x4b, 0x2,0x2f,0x23, 0x2,0x2a,0x4c,
+  0x1,0x51,0x32, 0x2,0x2a,0x4f, 0x2,0x2a,0x45, 0x1,0x51,0x31,
+  0x2,0x2a,0x47, 0x4,0x29,0x3f, 0x2,0x2a,0x48, 0x3,0x2c,0x60,
+  0x3,0x30,0x79, 0x2,0x2a,0x4a, 0x1,0x51,0x2d, 0x3,0x2c,0x56,
+  0x3,0x30,0x73, 0x1,0x55,0x45, 0x3,0x2c,0x57, 0x3,0x2c,0x5d,
+  0x2,0x2a,0x46, 0x2,0x2a,0x42, 0x1,0x55,0x46, 0x3,0x30,0x7e,
+  0x4,0x29,0x3e, 0x2,0x2a,0x50, 0x1,0x55,0x42, 0x2,0x2f,0x21,
+  0x2,0x2a,0x49, 0x3,0x2c,0x54, 0x2,0x2e,0x7e, 0x2,0x2a,0x44,
+  0x2,0x2a,0x4d, 0x3,0x2c,0x5f, 0x3,0x2c,0x61, 0x1,0x51,0x30,
+  0x1,0x55,0x43, 0x1,0x51,0x36, 0x1,0x55,0x44, 0x2,0x2a,0x51,
+  0x2,0x2f,0x22, 0x1,0x51,0x2f, 0x1,0x55,0x48, 0x1,0x51,0x35,
+  0x1,0x51,0x34, 0x1,0x51,0x33, 0x1,0x55,0x47, 0x2,0x2a,0x52,
+  0x1,0x55,0x49, 0x1,0x51,0x2e, 0x4,0x29,0x4b, 0x2,0x2a,0x43,
+  0x3,0x30,0x7a, 0x3,0x30,0x78, 0x3,0x30,0x7b, 0x3,0x2c,0x5c,
+  0x3,0x30,0x76, 0x1,0x5a,0x3c, 0x2,0x2f,0x26, 0x2,0x2f,0x28,
+  0x4,0x2d,0x25, 0x2,0x2f,0x2a, 0x1,0x55,0x4a, 0x1,0x55,0x50,
+  0x2,0x35,0x37, 0x2,0x2f,0x2e, 0x2,0x2f,0x25, 0x1,0x5a,0x3e,
+  0x2,0x35,0x35, 0x3,0x31,0x22, 0x1,0x55,0x4f, 0x1,0x55,0x4d,
+  0x2,0x2f,0x30, 0x4,0x2d,0x2d, 0x2,0x35,0x36, 0x4,0x2d,0x2c,
+  0x2,0x2f,0x27, 0x3,0x31,0x25, 0x1,0x55,0x4e, 0x2,0x2f,0x2b,
+  0x1,0x55,0x51, 0x2,0x2f,0x2d, 0x3,0x35,0x68, 0x3,0x30,0x74,
+  0x1,0x55,0x4c, 0x2,0x2f,0x2c, 0x2,0x2f,0x2f, 0x2,0x2f,0x29,
+  0x3,0x31,0x27, 0x1,0x55,0x4b, 0x1,0x5a,0x3f, 0x3,0x35,0x71,
+  0x2,0x2f,0x24, 0x1,0x5a,0x3d, 0x3,0x35,0x72, 0x4,0x31,0x6b,
+  0x3,0x31,0x23, 0x3,0x31,0x28, 0x1,0x5a,0x40, 0x3,0x31,0x21,
+  0x3,0x35,0x6f, 0x3,0x31,0x26, 0x2,0x35,0x39, 0x2,0x35,0x42,
+  0x1,0x5f,0x2b, 0x3,0x3b,0x54, 0x1,0x5a,0x42, 0x1,0x5a,0x47,
+  0x1,0x5f,0x2c, 0x2,0x35,0x44, 0x1,0x5a,0x4e, 0x2,0x3b,0x5d,
+  0x2,0x35,0x3a, 0x1,0x5a,0x46, 0x1,0x5a,0x49, 0x1,0x5a,0x44,
+  0x2,0x35,0x38, 0x2,0x35,0x46, 0x2,0x35,0x49, 0x2,0x3b,0x6c,
+  0x4,0x31,0x68, 0x2,0x35,0x47, 0x2,0x3b,0x61, 0x1,0x5a,0x45,
+  0x1,0x5a,0x4c, 0x1,0x5a,0x50, 0x2,0x35,0x41, 0x2,0x3b,0x5c,
+  0x2,0x35,0x45, 0x1,0x5a,0x41, 0x2,0x3b,0x5e, 0x2,0x35,0x48,
+  0x2,0x3b,0x60, 0x2,0x35,0x3d, 0x3,0x35,0x6a, 0x1,0x5f,0x29,
+  0x3,0x3b,0x56, 0x2,0x35,0x3b, 0x2,0x35,0x3c, 0x1,0x5a,0x4b,
+  0x3,0x3b,0x55, 0x3,0x35,0x6e, 0x1,0x5a,0x4a, 0x2,0x35,0x3f,
+  0x1,0x5a,0x4f, 0x2,0x35,0x43, 0x1,0x5a,0x48, 0x2,0x35,0x40,
+  0x3,0x35,0x79, 0x1,0x5a,0x4d, 0x1,0x5f,0x2d, 0x1,0x5f,0x2a,
+  0x2,0x3b,0x5f, 0x3,0x3b,0x58, 0x2,0x35,0x3e, 0x3,0x3b,0x59,
+  0x1,0x5a,0x43, 0x3,0x35,0x76, 0x3,0x35,0x78, 0x3,0x3b,0x5a,
+  0x3,0x3b,0x4d, 0x3,0x35,0x74, 0x1,0x5f,0x32, 0x1,0x5f,0x36,
+  0x2,0x3b,0x63, 0x1,0x63,0x77, 0x1,0x5f,0x34, 0x2,0x3b,0x67,
+  0x1,0x5f,0x38, 0x2,0x42,0x6b, 0x2,0x3b,0x69, 0x1,0x63,0x79,
+  0x1,0x5f,0x30, 0x1,0x5f,0x33, 0x2,0x3b,0x6a, 0x3,0x3b,0x5e,
+  0x2,0x3b,0x6b, 0x2,0x3b,0x71, 0x1,0x5f,0x3a, 0x1,0x63,0x7a,
+  0x4,0x3d,0x3d, 0x2,0x3b,0x6d, 0x2,0x3b,0x72, 0x2,0x3b,0x66,
+  0x1,0x64,0x26, 0x3,0x3b,0x4f, 0x1,0x63,0x7b, 0x1,0x5f,0x39,
+  0x2,0x3b,0x64, 0x2,0x3b,0x73, 0x3,0x3b,0x51, 0x1,0x64,0x25,
+  0x1,0x5f,0x37, 0x1,0x63,0x74, 0x2,0x3b,0x70, 0x3,0x3b,0x5d,
+  0x1,0x5f,0x3b, 0x2,0x3b,0x68, 0x2,0x3b,0x62, 0x1,0x5f,0x31,
+  0x2,0x3b,0x65, 0x5,0x3f,0x30, 0x2,0x3b,0x6e, 0x3,0x41,0x2b,
+  0x1,0x63,0x73, 0x1,0x63,0x78, 0x1,0x5f,0x2e, 0x2,0x3b,0x6f,
+  0x3,0x3b,0x61, 0x1,0x63,0x76, 0x3,0x3b,0x62, 0x3,0x3b,0x63,
+  0x3,0x3b,0x50, 0x1,0x5f,0x2f, 0x3,0x64,0x79, 0x1,0x64,0x24,
+  0x2,0x4a,0x2a, 0x2,0x42,0x76, 0x3,0x41,0x29, 0x2,0x42,0x6e,
+  0x2,0x4a,0x29, 0x4,0x3d,0x39, 0x2,0x42,0x72, 0x2,0x42,0x74,
+  0x3,0x41,0x27, 0x3,0x41,0x2c, 0x2,0x42,0x71, 0x3,0x46,0x6f,
+  0x1,0x64,0x23, 0x4,0x3d,0x38, 0x2,0x42,0x70, 0x1,0x64,0x27,
+  0x3,0x46,0x6e, 0x6,0x52,0x64, 0x3,0x41,0x28, 0x2,0x4a,0x39,
+  0x3,0x46,0x6c, 0x3,0x41,0x2e, 0x1,0x64,0x22, 0x1,0x68,0x67,
+  0x2,0x42,0x77, 0x2,0x4a,0x2b, 0x3,0x46,0x6d, 0x3,0x41,0x2a,
+  0x1,0x63,0x7e, 0x2,0x42,0x6f, 0x2,0x42,0x73, 0x1,0x68,0x66,
+  0x1,0x63,0x75, 0x2,0x42,0x6c, 0x2,0x42,0x6d, 0x1,0x68,0x68,
+  0x1,0x63,0x7d, 0x1,0x64,0x21, 0x1,0x63,0x7c, 0x2,0x42,0x75,
+  0x3,0x64,0x7a, 0x2,0x4a,0x2f, 0x2,0x4a,0x30, 0x2,0x4a,0x35,
+  0x1,0x6c,0x67, 0x2,0x4a,0x3c, 0x3,0x4b,0x73, 0x1,0x68,0x6e,
+  0x3,0x4b,0x7e, 0x1,0x68,0x6d, 0x2,0x4a,0x37, 0x3,0x4b,0x74,
+  0x1,0x6c,0x66, 0x2,0x4a,0x2c, 0x1,0x68,0x6c, 0x3,0x46,0x71,
+  0x2,0x4a,0x3b, 0x1,0x68,0x6a, 0x1,0x68,0x6b, 0x3,0x4b,0x7c,
+  0x2,0x4a,0x38, 0x2,0x50,0x51, 0x1,0x6c,0x64, 0x1,0x5f,0x35,
+  0x3,0x46,0x72, 0x2,0x4a,0x3a, 0x1,0x6c,0x6b, 0x2,0x4a,0x32,
+  0x4,0x49,0x6f, 0x1,0x6c,0x65, 0x3,0x46,0x6a, 0x1,0x6c,0x6a,
+  0x2,0x4a,0x2d, 0x2,0x4a,0x31, 0x2,0x4a,0x2e, 0x2,0x4a,0x34,
+  0x1,0x68,0x6f, 0x1,0x6c,0x63, 0x1,0x68,0x69, 0x3,0x4c,0x21,
+  0x2,0x50,0x43, 0x2,0x4a,0x36, 0x3,0x46,0x68, 0x1,0x6c,0x69,
+  0x3,0x46,0x73, 0x1,0x6c,0x6c, 0x7,0x22,0x71, 0x2,0x4a,0x33,
+  0x3,0x46,0x6b, 0x1,0x6c,0x68, 0x2,0x50,0x42, 0x5,0x4d,0x2a,
+  0x3,0x4c,0x23, 0x3,0x46,0x74, 0x3,0x4c,0x24, 0x3,0x4b,0x77,
+  0x2,0x50,0x47, 0x1,0x70,0x57, 0x2,0x50,0x41, 0x2,0x57,0x2e,
+  0x2,0x50,0x50, 0x1,0x6c,0x70, 0x3,0x4b,0x7a, 0x1,0x6c,0x6e,
+  0x1,0x70,0x55, 0x2,0x50,0x4d, 0x2,0x50,0x49, 0x1,0x6c,0x74,
+  0x3,0x4b,0x76, 0x2,0x57,0x25, 0x3,0x50,0x68, 0x3,0x4c,0x28,
+  0x3,0x50,0x67, 0x1,0x6c,0x72, 0x2,0x50,0x48, 0x3,0x4c,0x29,
+  0x2,0x57,0x23, 0x3,0x4c,0x25, 0x2,0x50,0x4c, 0x4,0x50,0x3b,
+  0x2,0x50,0x4f, 0x2,0x50,0x46, 0x3,0x4b,0x79, 0x1,0x6c,0x73,
+  0x4,0x50,0x37, 0x3,0x4b,0x75, 0x1,0x6c,0x6d, 0x2,0x57,0x24,
+  0x1,0x70,0x56, 0x2,0x50,0x4e, 0x1,0x6c,0x6f, 0x1,0x6c,0x71,
+  0x2,0x50,0x4b, 0x1,0x6c,0x75, 0x2,0x50,0x4a, 0x2,0x50,0x45,
+  0x2,0x50,0x44, 0x1,0x70,0x54, 0x2,0x50,0x52, 0x2,0x57,0x27,
+  0x2,0x5c,0x6b, 0x1,0x70,0x59, 0x3,0x50,0x61, 0x2,0x57,0x2d,
+  0x3,0x50,0x63, 0x2,0x57,0x2b, 0x3,0x50,0x6a, 0x2,0x5c,0x6c,
+  0x3,0x50,0x64, 0x1,0x70,0x5a, 0x2,0x57,0x2c, 0x3,0x50,0x66,
+  0x2,0x57,0x29, 0x1,0x73,0x5d, 0x2,0x5c,0x6a, 0x3,0x50,0x6c,
+  0x2,0x57,0x26, 0x2,0x57,0x28, 0x1,0x73,0x5e, 0x1,0x70,0x5c,
+  0x1,0x73,0x5c, 0x1,0x70,0x5b, 0x1,0x73,0x60, 0x2,0x57,0x2a,
+  0x1,0x70,0x58, 0x3,0x50,0x62, 0x3,0x50,0x65, 0x3,0x50,0x6b,
+  0x3,0x66,0x79, 0x4,0x5b,0x2b, 0x2,0x61,0x5b, 0x4,0x56,0x33,
+  0x2,0x61,0x53, 0x3,0x54,0x61, 0x3,0x54,0x5f, 0x3,0x54,0x5c,
+  0x3,0x54,0x5e, 0x3,0x54,0x5d, 0x2,0x5c,0x72, 0x2,0x61,0x54,
+  0x2,0x5c,0x6e, 0x4,0x56,0x32, 0x3,0x54,0x5b, 0x1,0x76,0x42,
+  0x2,0x5c,0x70, 0x2,0x5c,0x6f, 0x1,0x73,0x5f, 0x2,0x5c,0x6d,
+  0x2,0x5c,0x71, 0x2,0x61,0x5c, 0x2,0x61,0x58, 0x2,0x61,0x5a,
+  0x4,0x5f,0x60, 0x2,0x61,0x55, 0x2,0x61,0x56, 0x4,0x5f,0x61,
+  0x2,0x61,0x59, 0x2,0x61,0x57, 0x1,0x78,0x34, 0x3,0x57,0x65,
+  0x1,0x78,0x37, 0x1,0x78,0x36, 0x1,0x78,0x35, 0x1,0x79,0x6c,
+  0x2,0x68,0x76, 0x1,0x79,0x6d, 0x2,0x65,0x4c, 0x1,0x7a,0x6a,
+  0x2,0x6b,0x5a, 0x1,0x7a,0x6b, 0x1,0x7b,0x60, 0x1,0x7c,0x36,
+  0x2,0x6f,0x28, 0x3,0x5f,0x46, 0x2,0x6f,0x29, 0x2,0x6f,0x2a,
+  0x3,0x61,0x3e, 0x2,0x72,0x2a, 0x1,0x45,0x41, 0x2,0x21,0x5d,
+  0x1,0x46,0x53, 0x1,0x48,0x27, 0x1,0x48,0x28, 0x1,0x48,0x26,
+  0x3,0x23,0x6b, 0x1,0x48,0x29, 0x1,0x4a,0x3c, 0x1,0x4a,0x3b,
+  0x3,0x26,0x25, 0x2,0x26,0x70, 0x1,0x4d,0x51, 0x1,0x4d,0x50,
+  0x3,0x2c,0x63, 0x2,0x2f,0x31, 0x1,0x5a,0x51, 0x1,0x5a,0x52,
+  0x4,0x31,0x6e, 0x4,0x31,0x70, 0x3,0x3b,0x64, 0x1,0x5f,0x3c,
+  0x2,0x42,0x78, 0x1,0x64,0x28, 0x1,0x64,0x29, 0x2,0x42,0x7a,
+  0x2,0x42,0x7c, 0x2,0x42,0x7b, 0x4,0x3d,0x43, 0x2,0x4a,0x3e,
+  0x3,0x46,0x76, 0x2,0x4a,0x3d, 0x1,0x68,0x70, 0x2,0x4a,0x3f,
+  0x3,0x46,0x75, 0x2,0x50,0x53, 0x1,0x6c,0x76, 0x3,0x4c,0x2c,
+  0x1,0x70,0x5d, 0x3,0x50,0x6d, 0x1,0x73,0x61, 0x1,0x76,0x43,
+  0x1,0x73,0x62, 0x3,0x5f,0x48, 0x1,0x45,0x42, 0x3,0x21,0x65,
+  0x3,0x21,0x66, 0x3,0x22,0x4e, 0x2,0x24,0x28, 0x3,0x26,0x28,
+  0x3,0x26,0x29, 0x2,0x26,0x71, 0x1,0x4d,0x53, 0x1,0x4d,0x52,
+  0x1,0x4d,0x54, 0x1,0x51,0x37, 0x2,0x2a,0x53, 0x2,0x2a,0x54,
+  0x3,0x31,0x29, 0x2,0x2f,0x32, 0x1,0x55,0x52, 0x1,0x5a,0x53,
+  0x1,0x5f,0x3d, 0x2,0x3b,0x74, 0x1,0x45,0x43, 0x4,0x21,0x37,
+  0x1,0x44,0x5f, 0x1,0x45,0x44, 0x3,0x22,0x50, 0x2,0x21,0x5e,
+  0x1,0x46,0x57, 0x1,0x46,0x56, 0x1,0x46,0x54, 0x1,0x46,0x55,
+  0x3,0x23,0x6f, 0x1,0x48,0x2c, 0x2,0x22,0x49, 0x2,0x22,0x4b,
+  0x1,0x48,0x2b, 0x2,0x22,0x43, 0x3,0x23,0x6c, 0x2,0x22,0x44,
+  0x3,0x23,0x6d, 0x2,0x22,0x4a, 0x2,0x22,0x46, 0x2,0x22,0x48,
+  0x1,0x48,0x2a, 0x2,0x22,0x45, 0x2,0x22,0x4c, 0x2,0x22,0x47,
+  0x3,0x23,0x6e, 0xf,0x22,0x51, 0x1,0x4a,0x43, 0x1,0x4a,0x4c,
+  0x1,0x4a,0x4a, 0x2,0x24,0x32, 0x2,0x24,0x2f, 0x2,0x24,0x37,
+  0x1,0x4a,0x48, 0x2,0x24,0x38, 0x3,0x26,0x39, 0x1,0x4a,0x41,
+  0x2,0x24,0x35, 0x3,0x26,0x2e, 0x1,0x4a,0x47, 0x2,0x24,0x31,
+  0x2,0x24,0x30, 0x1,0x4a,0x45, 0x2,0x24,0x36, 0x1,0x4a,0x46,
+  0x1,0x4d,0x55, 0x1,0x4a,0x40, 0x2,0x24,0x33, 0x3,0x26,0x2a,
+  0x2,0x24,0x29, 0x1,0x4a,0x3d, 0x3,0x26,0x37, 0x1,0x4a,0x50,
+  0x2,0x24,0x2e, 0x2,0x24,0x34, 0x1,0x4a,0x42, 0x1,0x4a,0x44,
+  0x3,0x26,0x2f, 0x2,0x24,0x2a, 0x3,0x26,0x36, 0x2,0x24,0x2b,
+  0x2,0x24,0x2c, 0x4,0x24,0x39, 0x1,0x4a,0x4f, 0x1,0x4a,0x49,
+  0x1,0x4a,0x4e, 0x2,0x24,0x2d, 0x1,0x4a,0x4d, 0x1,0x4a,0x3f,
+  0x1,0x4a,0x3e, 0x1,0x4a,0x4b, 0x3,0x26,0x35, 0x4,0x24,0x3c,
+  0x3,0x26,0x33, 0x3,0x26,0x34, 0x3,0x26,0x38, 0x3,0x26,0x31,
+  0x3,0x64,0x7b, 0xf,0x24,0x39, 0x3,0x26,0x32, 0x3,0x29,0x31,
+  0x3,0x29,0x2a, 0x1,0x4d,0x63, 0x2,0x26,0x7d, 0x2,0x26,0x76,
+  0x1,0x4d,0x5e, 0x1,0x4d,0x71, 0x2,0x26,0x72, 0x2,0x26,0x79,
+  0x2,0x26,0x7b, 0x2,0x26,0x7e, 0x1,0x4d,0x6c, 0x3,0x29,0x26,
+  0x2,0x26,0x7a, 0x2,0x26,0x73, 0x1,0x4d,0x6a, 0x2,0x26,0x77,
+  0x3,0x29,0x28, 0x2,0x27,0x21, 0x1,0x4d,0x5b, 0x3,0x29,0x25,
+  0x2,0x26,0x7c, 0x1,0x4d,0x65, 0x1,0x4d,0x64, 0x2,0x26,0x75,
+  0x1,0x4d,0x59, 0x3,0x29,0x34, 0x3,0x29,0x32, 0x1,0x4d,0x5a,
+  0xf,0x27,0x30, 0x1,0x4d,0x58, 0x3,0x29,0x33, 0x1,0x4d,0x70,
+  0x1,0x4d,0x68, 0x1,0x4d,0x62, 0x1,0x4d,0x56, 0x2,0x26,0x78,
+  0x1,0x4d,0x61, 0x1,0x4d,0x57, 0x1,0x4d,0x69, 0x1,0x4d,0x72,
+  0x2,0x2a,0x55, 0x1,0x4d,0x66, 0x2,0x26,0x74, 0x1,0x4d,0x5c,
+  0x1,0x4d,0x5f, 0x1,0x4d,0x60, 0x3,0x29,0x2e, 0x1,0x4d,0x6e,
+  0x1,0x4d,0x6f, 0x1,0x4d,0x6d, 0x1,0x4d,0x67, 0x1,0x4d,0x6b,
+  0x1,0x4d,0x5d, 0x1,0x51,0x38, 0x3,0x29,0x30, 0x3,0x29,0x37,
+  0x3,0x29,0x35, 0x3,0x29,0x36, 0x3,0x29,0x2f, 0x3,0x29,0x29,
+  0x3,0x2c,0x6d, 0x2,0x2a,0x5b, 0x1,0x51,0x44, 0x1,0x51,0x3c,
+  0x1,0x51,0x3e, 0x1,0x51,0x43, 0x2,0x2a,0x67, 0x1,0x51,0x41,
+  0x2,0x2f,0x33, 0x1,0x55,0x53, 0x1,0x51,0x46, 0x2,0x2a,0x58,
+  0x2,0x2a,0x60, 0x1,0x51,0x42, 0x2,0x2a,0x5f, 0x2,0x2a,0x5c,
+  0x2,0x2a,0x64, 0x2,0x2a,0x66, 0x1,0x51,0x3b, 0x1,0x51,0x3f,
+  0x1,0x51,0x45, 0x1,0x55,0x55, 0x2,0x2a,0x61, 0x1,0x51,0x3d,
+  0x1,0x51,0x48, 0x2,0x2a,0x5a, 0x3,0x2c,0x6f, 0x3,0x2c,0x70,
+  0x5,0x29,0x45, 0x1,0x51,0x40, 0x1,0x55,0x54, 0x1,0x51,0x3a,
+  0x4,0x29,0x59, 0x2,0x2a,0x57, 0x2,0x2a,0x5e, 0x2,0x2a,0x56,
+  0x2,0x2a,0x59, 0x2,0x2a,0x5d, 0x2,0x2f,0x34, 0x1,0x51,0x47,
+  0x4,0x29,0x51, 0x2,0x2a,0x62, 0x2,0x2a,0x63, 0x2,0x2a,0x65,
+  0x1,0x51,0x39, 0x3,0x2c,0x6c, 0x3,0x31,0x32, 0x3,0x31,0x33,
+  0x3,0x2c,0x6b, 0x3,0x2c,0x6e, 0x4,0x29,0x5b, 0x1,0x55,0x63,
+  0x2,0x2f,0x40, 0x1,0x55,0x61, 0x1,0x55,0x62, 0x2,0x2f,0x36,
+  0x2,0x2f,0x46, 0x3,0x31,0x2c, 0x1,0x55,0x58, 0x3,0x31,0x2f,
+  0x3,0x31,0x35, 0x2,0x35,0x4a, 0x2,0x2f,0x48, 0x2,0x2f,0x42,
+  0x3,0x31,0x38, 0x2,0x2f,0x39, 0x3,0x31,0x37, 0x2,0x2f,0x4b,
+  0x2,0x2f,0x3c, 0x1,0x55,0x5e, 0x2,0x35,0x61, 0x2,0x2f,0x3f,
+  0x1,0x55,0x60, 0x1,0x55,0x57, 0x3,0x31,0x3c, 0x2,0x2f,0x4d,
+  0x2,0x2f,0x41, 0x1,0x55,0x5a, 0x2,0x2f,0x3a, 0x2,0x2f,0x37,
+  0x2,0x2f,0x38, 0x1,0x55,0x5b, 0x2,0x2f,0x47, 0x2,0x2f,0x4e,
+  0x1,0x55,0x5d, 0x2,0x2f,0x3e, 0x2,0x2f,0x3d, 0x1,0x55,0x65,
+  0x1,0x55,0x64, 0x1,0x55,0x56, 0x1,0x55,0x5c, 0x1,0x55,0x5f,
+  0x2,0x2f,0x4a, 0x3,0x31,0x2e, 0x3,0x31,0x39, 0x2,0x2f,0x44,
+  0x1,0x55,0x59, 0x2,0x2f,0x35, 0x2,0x2f,0x4c, 0x2,0x2f,0x43,
+  0x2,0x2f,0x45, 0x2,0x2f,0x49, 0x3,0x31,0x30, 0x3,0x31,0x3b,
+  0x3,0x31,0x36, 0x3,0x64,0x7c, 0x3,0x64,0x7d, 0x2,0x35,0x4b,
+  0x3,0x36,0x31, 0x1,0x5a,0x5b, 0x1,0x5a,0x6f, 0x1,0x5a,0x6e,
+  0x3,0x36,0x27, 0x1,0x5a,0x63, 0x3,0x36,0x29, 0x2,0x35,0x5d,
+  0x2,0x35,0x59, 0x2,0x35,0x56, 0x2,0x35,0x68, 0x1,0x5a,0x5e,
+  0x1,0x5a,0x56, 0x3,0x36,0x26, 0x3,0x36,0x32, 0x2,0x35,0x5b,
+  0x1,0x5f,0x4d, 0x1,0x5a,0x5a, 0x2,0x35,0x63, 0x3,0x36,0x22,
+  0x1,0x5a,0x70, 0x1,0x5a,0x6d, 0x2,0x35,0x5f, 0x2,0x35,0x4e,
+  0x3,0x35,0x7c, 0x3,0x36,0x2b, 0x1,0x5a,0x6c, 0x2,0x35,0x65,
+  0x2,0x35,0x4d, 0x1,0x5a,0x61, 0x1,0x5a,0x65, 0x2,0x35,0x64,
+  0x3,0x36,0x23, 0x2,0x35,0x57, 0x1,0x5a,0x66, 0x1,0x5a,0x60,
+  0x2,0x35,0x4c, 0x3,0x35,0x7d, 0x1,0x5f,0x3f, 0x2,0x35,0x67,
+  0x2,0x35,0x55, 0x1,0x5a,0x6b, 0x2,0x35,0x58, 0x2,0x35,0x66,
+  0x1,0x5a,0x6a, 0x3,0x36,0x24, 0x2,0x3b,0x75, 0x4,0x31,0x77,
+  0x1,0x5a,0x57, 0x2,0x35,0x53, 0x1,0x5a,0x5c, 0x1,0x5a,0x67,
+  0x4,0x31,0x78, 0x1,0x5a,0x62, 0x2,0x35,0x5c, 0x2,0x35,0x52,
+  0x2,0x35,0x50, 0x2,0x35,0x62, 0x1,0x5a,0x54, 0x1,0x5a,0x68,
+  0x1,0x5a,0x58, 0x1,0x5f,0x3e, 0x2,0x35,0x60, 0x1,0x5a,0x59,
+  0x4,0x32,0x23, 0x1,0x5a,0x55, 0x1,0x5a,0x64, 0x1,0x5a,0x5f,
+  0x1,0x5a,0x5d, 0x2,0x35,0x54, 0x1,0x5a,0x69, 0x2,0x35,0x51,
+  0x2,0x35,0x5e, 0x2,0x35,0x5a, 0x2,0x3b,0x77, 0x2,0x3b,0x76,
+  0x3,0x36,0x2d, 0x3,0x64,0x7e, 0x3,0x36,0x2e, 0x2,0x35,0x4f,
+  0x2,0x3c,0x29, 0x3,0x3b,0x71, 0x1,0x5f,0x41, 0x3,0x3b,0x70,
+  0x2,0x3c,0x2f, 0x2,0x3b,0x7c, 0x2,0x3c,0x2c, 0x2,0x42,0x7d,
+  0x1,0x5f,0x44, 0x2,0x3c,0x30, 0x2,0x3c,0x33, 0x1,0x5f,0x43,
+  0x2,0x3c,0x21, 0x2,0x3c,0x32, 0x2,0x3c,0x31, 0x1,0x5f,0x45,
+  0x2,0x3b,0x78, 0x1,0x5f,0x40, 0x1,0x5f,0x48, 0x3,0x3b,0x73,
+  0x1,0x5f,0x46, 0x2,0x3c,0x2e, 0x4,0x37,0x71, 0x2,0x3c,0x24,
+  0x1,0x5f,0x4a, 0x2,0x3c,0x35, 0x2,0x3c,0x2d, 0x2,0x3c,0x36,
+  0x1,0x5f,0x52, 0x1,0x5f,0x50, 0x2,0x3c,0x2b, 0x2,0x3c,0x2a,
+  0x3,0x3b,0x67, 0x2,0x3c,0x28, 0x2,0x3c,0x22, 0x1,0x5f,0x49,
+  0x3,0x3b,0x66, 0x1,0x5f,0x47, 0x2,0x2f,0x3b, 0x2,0x3b,0x79,
+  0x3,0x3b,0x68, 0x2,0x43,0x3d, 0x2,0x3b,0x7a, 0x1,0x5f,0x42,
+  0x1,0x5f,0x4f, 0x2,0x43,0x21, 0x4,0x37,0x60, 0x1,0x5f,0x4b,
+  0x1,0x5f,0x4c, 0x2,0x3b,0x7b, 0x2,0x3c,0x34, 0x2,0x42,0x7e,
+  0x2,0x3c,0x25, 0x2,0x3b,0x7e, 0x1,0x5f,0x4e, 0x2,0x3c,0x26,
+  0x2,0x3c,0x23, 0x3,0x3b,0x72, 0x3,0x3b,0x6d, 0x1,0x5f,0x53,
+  0x4,0x37,0x6f, 0x3,0x3b,0x6f, 0x3,0x65,0x21, 0x1,0x64,0x38,
+  0x3,0x41,0x49, 0x3,0x41,0x32, 0x2,0x43,0x24, 0x2,0x43,0x37,
+  0x2,0x43,0x3c, 0x2,0x43,0x30, 0x1,0x64,0x34, 0x2,0x43,0x41,
+  0x1,0x64,0x31, 0x2,0x43,0x22, 0x3,0x41,0x3a, 0x2,0x43,0x23,
+  0x1,0x64,0x2a, 0x1,0x64,0x33, 0x2,0x43,0x2a, 0x1,0x64,0x36,
+  0x1,0x64,0x37, 0x2,0x43,0x2b, 0x3,0x41,0x38, 0x2,0x43,0x38,
+  0x2,0x43,0x3e, 0x1,0x64,0x32, 0x3,0x41,0x3e, 0x1,0x64,0x2c,
+  0x2,0x43,0x29, 0x2,0x43,0x25, 0x2,0x43,0x40, 0x2,0x43,0x2e,
+  0x2,0x43,0x2f, 0x2,0x43,0x26, 0x2,0x43,0x3a, 0x2,0x43,0x31,
+  0x2,0x43,0x3b, 0x2,0x43,0x33, 0x3,0x41,0x3d, 0x1,0x64,0x2d,
+  0x2,0x4a,0x40, 0x1,0x64,0x30, 0x1,0x64,0x2e, 0x2,0x43,0x3f,
+  0x2,0x43,0x36, 0x2,0x43,0x32, 0x3,0x41,0x36, 0x3,0x41,0x33,
+  0x2,0x43,0x27, 0x1,0x68,0x7a, 0x2,0x43,0x35, 0x1,0x64,0x35,
+  0x2,0x43,0x2d, 0x3,0x41,0x34, 0x2,0x43,0x2c, 0x3,0x41,0x48,
+  0x3,0x47,0x25, 0x3,0x41,0x42, 0x1,0x64,0x2f, 0x1,0x64,0x2b,
+  0x2,0x4a,0x55, 0x2,0x43,0x39, 0x2,0x43,0x34, 0x2,0x43,0x28,
+  0x3,0x41,0x44, 0x3,0x41,0x45, 0x3,0x66,0x76, 0x2,0x4a,0x50,
+  0x3,0x46,0x78, 0x2,0x4a,0x41, 0x2,0x4a,0x4c, 0x3,0x47,0x28,
+  0x2,0x4a,0x53, 0x1,0x68,0x78, 0x1,0x5f,0x51, 0x2,0x4a,0x51,
+  0x1,0x68,0x73, 0x3,0x46,0x7e, 0x3,0x47,0x24, 0x3,0x46,0x7a,
+  0x1,0x68,0x72, 0x2,0x4a,0x58, 0x4,0x43,0x5d, 0x2,0x4a,0x42,
+  0x2,0x4a,0x4f, 0x2,0x4a,0x43, 0x2,0x4a,0x4e, 0x1,0x68,0x76,
+  0x2,0x4a,0x52, 0x2,0x3c,0x27, 0x3,0x47,0x21, 0x4,0x43,0x5e,
+  0x3,0x47,0x2a, 0x2,0x4a,0x59, 0x2,0x4a,0x4a, 0x1,0x68,0x79,
+  0x2,0x50,0x61, 0x1,0x6c,0x77, 0x3,0x47,0x23, 0x2,0x4a,0x57,
+  0x2,0x4a,0x56, 0x1,0x68,0x7b, 0x2,0x50,0x54, 0x1,0x6c,0x78,
+  0x2,0x50,0x55, 0x3,0x47,0x22, 0x2,0x4a,0x46, 0x2,0x4a,0x47,
+  0x2,0x4a,0x44, 0x2,0x4a,0x49, 0x2,0x4a,0x45, 0x2,0x4a,0x5a,
+  0x1,0x68,0x75, 0x1,0x6c,0x79, 0x1,0x68,0x77, 0x1,0x68,0x7c,
+  0x3,0x46,0x7b, 0x2,0x4a,0x48, 0x3,0x47,0x29, 0x2,0x4a,0x54,
+  0x3,0x4c,0x2d, 0x3,0x47,0x26, 0x2,0x4a,0x4d, 0x3,0x4c,0x35,
+  0x2,0x50,0x58, 0x3,0x4c,0x38, 0x1,0x68,0x71, 0x1,0x6c,0x7c,
+  0x2,0x57,0x35, 0x2,0x50,0x5d, 0x2,0x50,0x5c, 0x2,0x50,0x5e,
+  0x3,0x4c,0x30, 0x3,0x4c,0x2f, 0x2,0x50,0x5b, 0x1,0x6c,0x7d,
+  0x3,0x4c,0x3b, 0x1,0x6d,0x25, 0x1,0x6d,0x22, 0x3,0x4c,0x31,
+  0x1,0x6d,0x23, 0x2,0x50,0x56, 0x2,0x50,0x59, 0x2,0x50,0x63,
+  0x1,0x6d,0x2b, 0x1,0x6d,0x29, 0x3,0x4c,0x2e, 0x2,0x50,0x5a,
+  0x2,0x3b,0x7d, 0x1,0x6c,0x7a, 0x2,0x50,0x60, 0x2,0x50,0x57,
+  0x3,0x4c,0x3e, 0x1,0x6d,0x2c, 0x2,0x50,0x5f, 0x1,0x68,0x74,
+  0x1,0x6d,0x21, 0x2,0x4a,0x4b, 0x3,0x4c,0x3f, 0x3,0x4c,0x34,
+  0x1,0x6d,0x24, 0x3,0x4c,0x3d, 0x1,0x6d,0x28, 0x1,0x6d,0x2a,
+  0x1,0x6d,0x27, 0x1,0x6d,0x26, 0x3,0x4c,0x3a, 0x1,0x6c,0x7e,
+  0x2,0x50,0x62, 0x1,0x6c,0x7b, 0x1,0x6d,0x2d, 0x3,0x4c,0x39,
+  0x3,0x65,0x22, 0x3,0x4c,0x37, 0x1,0x70,0x61, 0x1,0x70,0x62,
+  0x2,0x57,0x34, 0x1,0x70,0x6b, 0x1,0x70,0x68, 0x3,0x50,0x70,
+  0x1,0x70,0x5f, 0x1,0x70,0x66, 0x2,0x57,0x36, 0x1,0x70,0x64,
+  0x1,0x70,0x5e, 0x3,0x4c,0x32, 0x1,0x70,0x65, 0x3,0x50,0x77,
+  0x2,0x57,0x33, 0x1,0x73,0x64, 0x1,0x70,0x60, 0x5,0x54,0x5e,
+  0x1,0x70,0x67, 0x1,0x73,0x63, 0x2,0x57,0x32, 0x2,0x57,0x31,
+  0x3,0x50,0x76, 0x1,0x70,0x69, 0x3,0x50,0x6f, 0x1,0x70,0x6a,
+  0x3,0x50,0x79, 0x2,0x57,0x30, 0x2,0x57,0x2f, 0x1,0x73,0x65,
+  0x2,0x57,0x39, 0x1,0x70,0x63, 0x2,0x57,0x37, 0x3,0x50,0x75,
+  0x3,0x54,0x64, 0x1,0x73,0x66, 0x3,0x54,0x67, 0x1,0x73,0x6b,
+  0x2,0x5c,0x75, 0x2,0x5c,0x77, 0x3,0x57,0x6b, 0x1,0x73,0x68,
+  0x3,0x57,0x6d, 0x2,0x5c,0x78, 0x2,0x5c,0x74, 0x3,0x57,0x6c,
+  0x2,0x5c,0x76, 0x1,0x73,0x69, 0x1,0x73,0x6c, 0x3,0x54,0x69,
+  0x2,0x5c,0x73, 0x1,0x73,0x67, 0x1,0x73,0x6a, 0x1,0x76,0x45,
+  0x2,0x57,0x38, 0x1,0x76,0x44, 0x7,0x3f,0x62, 0x3,0x57,0x6a,
+  0x1,0x76,0x4a, 0x2,0x61,0x60, 0x3,0x57,0x70, 0x1,0x76,0x48,
+  0x1,0x76,0x49, 0x2,0x61,0x63, 0x2,0x61,0x5f, 0x1,0x76,0x46,
+  0x2,0x61,0x5d, 0x1,0x78,0x38, 0x2,0x61,0x61, 0x4,0x5b,0x36,
+  0x2,0x61,0x62, 0x2,0x61,0x5e, 0x3,0x57,0x6e, 0x1,0x76,0x47,
+  0x2,0x65,0x4d, 0x3,0x5a,0x3b, 0x2,0x65,0x50, 0x3,0x5a,0x3c,
+  0x3,0x5a,0x3a, 0x2,0x65,0x51, 0x2,0x65,0x4f, 0x2,0x65,0x52,
+  0x1,0x78,0x39, 0x2,0x65,0x4e, 0x3,0x5e,0x31, 0x2,0x68,0x7a,
+  0x1,0x79,0x6f, 0x2,0x68,0x79, 0x2,0x68,0x78, 0x2,0x68,0x77,
+  0x1,0x79,0x6e, 0x1,0x79,0x70, 0x3,0x65,0x23, 0x2,0x6b,0x5b,
+  0x1,0x7a,0x6d, 0x1,0x7a,0x6c, 0x3,0x5f,0x4a, 0x3,0x5f,0x4b,
+  0x2,0x6d,0x4f, 0x2,0x6d,0x4e, 0x2,0x6d,0x51, 0x1,0x7c,0x37,
+  0x1,0x7b,0x61, 0x2,0x6f,0x2c, 0x2,0x6d,0x50, 0x3,0x5f,0x49,
+  0x3,0x60,0x32, 0x2,0x6f,0x2b, 0x1,0x7c,0x39, 0x1,0x7c,0x38,
+  0x1,0x7c,0x5f, 0x2,0x70,0x37, 0x2,0x70,0x7d, 0x1,0x45,0x45,
+  0x6,0x23,0x6c, 0x3,0x2c,0x72, 0x2,0x3c,0x37, 0x2,0x57,0x3a,
+  0x3,0x21,0x67, 0x3,0x21,0x68, 0x1,0x48,0x2d, 0x2,0x22,0x4d,
+  0x1,0x4a,0x53, 0x1,0x4a,0x51, 0x4,0x24,0x3f, 0x1,0x4a,0x52,
+  0x4,0x24,0x3e, 0x2,0x27,0x22, 0x1,0x4d,0x73, 0x1,0x51,0x49,
+  0x3,0x2c,0x74, 0x2,0x2a,0x68, 0x3,0x2c,0x76, 0x2,0x2a,0x69,
+  0x3,0x2c,0x73, 0x1,0x51,0x4a, 0x2,0x2f,0x50, 0x4,0x2d,0x43,
+  0x1,0x55,0x66, 0x1,0x55,0x67, 0x2,0x2f,0x4f, 0x3,0x31,0x3d,
+  0x4,0x2d,0x44, 0x3,0x36,0x37, 0x3,0x36,0x36, 0x1,0x5a,0x77,
+  0x4,0x32,0x2b, 0x1,0x5a,0x73, 0x4,0x32,0x2f, 0x2,0x35,0x69,
+  0x1,0x5a,0x7a, 0x1,0x5a,0x79, 0x1,0x5a,0x72, 0x1,0x5a,0x75,
+  0x1,0x5a,0x78, 0x1,0x5a,0x74, 0x3,0x36,0x34, 0x2,0x3c,0x3b,
+  0x1,0x5a,0x71, 0x1,0x5f,0x54, 0x3,0x3b,0x74, 0x3,0x3b,0x75,
+  0x3,0x3b,0x76, 0x1,0x5f,0x56, 0x1,0x5f,0x57, 0x2,0x3c,0x3a,
+  0x2,0x3c,0x3d, 0x1,0x5f,0x55, 0x2,0x3c,0x38, 0x2,0x3c,0x3c,
+  0x2,0x3c,0x39, 0x3,0x41,0x4b, 0x1,0x64,0x39, 0x3,0x41,0x4e,
+  0x4,0x3d,0x5d, 0x2,0x43,0x42, 0x3,0x41,0x4d, 0x3,0x47,0x30,
+  0x1,0x68,0x7d, 0x2,0x4a,0x5b, 0x1,0x70,0x6c, 0x1,0x6d,0x2e,
+  0x2,0x50,0x64, 0x1,0x6d,0x2f, 0x1,0x6d,0x30, 0x2,0x50,0x66,
+  0x2,0x50,0x65, 0x2,0x50,0x67, 0x2,0x57,0x3c, 0x2,0x57,0x3b,
+  0x2,0x5c,0x7a, 0x2,0x5c,0x79, 0x1,0x73,0x6d, 0x1,0x73,0x6e,
+  0x2,0x65,0x53, 0x3,0x5c,0x41, 0x1,0x45,0x46, 0x3,0x25,0x58,
+  0x3,0x29,0x39, 0x4,0x2d,0x47, 0x3,0x31,0x40, 0x2,0x3c,0x3e,
+  0x3,0x36,0x38, 0x3,0x36,0x39, 0x1,0x5f,0x59, 0x1,0x5f,0x58,
+  0x2,0x43,0x43, 0x2,0x61,0x64, 0x1,0x7a,0x6e, 0x2,0x6f,0x2d,
+  0x1,0x45,0x47, 0x4,0x24,0x41, 0x1,0x55,0x68, 0x3,0x31,0x42,
+  0x1,0x5a,0x7c, 0x1,0x5a,0x7b, 0x2,0x3c,0x3f, 0x2,0x3c,0x40,
+  0x1,0x64,0x3a, 0x2,0x4a,0x5c, 0x1,0x68,0x7e, 0x2,0x57,0x3d,
+  0x4,0x56,0x3f, 0x1,0x45,0x48, 0x1,0x46,0x58, 0x3,0x29,0x3b,
+  0x1,0x4d,0x74, 0x2,0x27,0x23, 0x2,0x2a,0x6a, 0x1,0x51,0x4b,
+  0x1,0x5a,0x7d, 0x3,0x36,0x3a, 0x2,0x3c,0x41, 0x1,0x5f,0x5a,
+  0x1,0x64,0x3b, 0x4,0x3d,0x63, 0x2,0x50,0x68, 0x2,0x50,0x69,
+  0x4,0x50,0x4e, 0x3,0x54,0x6b, 0x2,0x5c,0x7b, 0x1,0x76,0x4b,
+  0x2,0x70,0x7e, 0x1,0x45,0x49, 0x3,0x29,0x3c, 0x2,0x27,0x24,
+  0x1,0x4d,0x75, 0x1,0x51,0x4c, 0x3,0x2c,0x77, 0x2,0x2a,0x6b,
+  0x1,0x55,0x69, 0x2,0x2f,0x54, 0x2,0x2f,0x52, 0x2,0x2f,0x53,
+  0x1,0x55,0x6a, 0x2,0x2f,0x51, 0x3,0x36,0x3c, 0x4,0x32,0x34,
+  0x3,0x36,0x3f, 0x3,0x36,0x3d, 0x1,0x5b,0x21, 0x1,0x5b,0x22,
+  0x2,0x35,0x6a, 0x1,0x5b,0x23, 0x1,0x5a,0x7e, 0x2,0x3c,0x42,
+  0x3,0x3b,0x79, 0x2,0x3c,0x43, 0x2,0x43,0x44, 0x4,0x3d,0x64,
+  0x1,0x69,0x22, 0x1,0x69,0x21, 0x4,0x50,0x4f, 0xf,0x54,0x64,
+  0x2,0x5c,0x7c, 0x2,0x61,0x65, 0x3,0x5a,0x3f, 0x2,0x65,0x55,
+  0x2,0x65,0x54, 0x2,0x68,0x7b, 0x3,0x21,0x69, 0x2,0x21,0x3e,
+  0x1,0x51,0x4d, 0x3,0x36,0x41, 0x3,0x41,0x50, 0x1,0x45,0x4a,
+  0x1,0x46,0x59, 0x3,0x22,0x51, 0x1,0x48,0x2f, 0x1,0x48,0x2e,
+  0x3,0x23,0x73, 0x3,0x23,0x72, 0x1,0x48,0x30, 0x1,0x48,0x31,
+  0x2,0x22,0x4f, 0x2,0x22,0x4e, 0x2,0x24,0x39, 0x1,0x4a,0x54,
+  0x2,0x24,0x3c, 0x2,0x24,0x3b, 0x2,0x24,0x3a, 0x2,0x24,0x3d,
+  0x3,0x26,0x3d, 0x4,0x26,0x62, 0x1,0x4d,0x76, 0x2,0x27,0x2a,
+  0x2,0x27,0x26, 0x2,0x27,0x2f, 0x3,0x29,0x43, 0x3,0x29,0x3e,
+  0x1,0x4d,0x7d, 0x3,0x29,0x42, 0x1,0x4d,0x7b, 0x2,0x27,0x2b,
+  0x2,0x27,0x27, 0x2,0x27,0x2e, 0x1,0x4d,0x7a, 0x1,0x4e,0x23,
+  0x2,0x27,0x29, 0x2,0x27,0x25, 0x1,0x4e,0x22, 0x2,0x27,0x2c,
+  0x1,0x4d,0x79, 0x2,0x27,0x2d, 0x1,0x4d,0x7c, 0x1,0x4d,0x7e,
+  0x2,0x27,0x31, 0x2,0x27,0x30, 0x2,0x27,0x28, 0x1,0x4d,0x78,
+  0x1,0x4d,0x77, 0x1,0x4e,0x21, 0x4,0x26,0x61, 0x3,0x29,0x40,
+  0x3,0x29,0x41, 0xf,0x27,0x3e, 0x3,0x2c,0x7e, 0x3,0x2c,0x7a,
+  0x2,0x2a,0x70, 0x2,0x2a,0x76, 0x3,0x2d,0x23, 0x1,0x51,0x53,
+  0x1,0x51,0x50, 0x2,0x2a,0x6d, 0x2,0x2a,0x72, 0x3,0x2c,0x7c,
+  0x1,0x51,0x56, 0x1,0x51,0x4e, 0x2,0x2a,0x71, 0x1,0x51,0x51,
+  0x1,0x51,0x54, 0x3,0x2c,0x79, 0x4,0x29,0x67, 0x2,0x2a,0x74,
+  0x3,0x2c,0x7d, 0x1,0x51,0x4f, 0x2,0x2a,0x79, 0x1,0x51,0x52,
+  0x3,0x2d,0x21, 0x1,0x51,0x55, 0x2,0x2a,0x6e, 0x2,0x2a,0x73,
+  0x2,0x2a,0x77, 0x2,0x2a,0x6f, 0x2,0x2a,0x6c, 0x3,0x2d,0x24,
+  0x3,0x2d,0x25, 0x2,0x2a,0x78, 0x2,0x2a,0x75, 0x3,0x2d,0x22,
+  0x3,0x2c,0x37, 0x3,0x31,0x46, 0x1,0x55,0x72, 0x1,0x55,0x6b,
+  0x1,0x55,0x6e, 0x3,0x31,0x4c, 0x1,0x55,0x71, 0x3,0x31,0x44,
+  0x2,0x2f,0x57, 0x3,0x31,0x49, 0x1,0x55,0x6c, 0x2,0x2f,0x55,
+  0x3,0x31,0x48, 0x1,0x55,0x70, 0x3,0x31,0x4d, 0x3,0x31,0x45,
+  0x1,0x55,0x6d, 0x3,0x31,0x43, 0x2,0x2f,0x58, 0x1,0x55,0x6f,
+  0x3,0x36,0x42, 0x4,0x32,0x39, 0x2,0x35,0x6e, 0x1,0x5b,0x25,
+  0x2,0x35,0x6d, 0x2,0x35,0x6f, 0x1,0x5b,0x24, 0x1,0x5b,0x29,
+  0x2,0x2f,0x56, 0x3,0x31,0x4b, 0x2,0x35,0x6c, 0x2,0x35,0x70,
+  0x3,0x36,0x44, 0x1,0x5b,0x26, 0x2,0x35,0x6b, 0x1,0x5b,0x28,
+  0x3,0x36,0x45, 0x1,0x5b,0x27, 0x3,0x3c,0x26, 0x2,0x3c,0x4a,
+  0x3,0x3b,0x7d, 0x2,0x3c,0x45, 0x3,0x3c,0x25, 0x1,0x5f,0x5b,
+  0x1,0x5f,0x5f, 0x1,0x5f,0x5c, 0x2,0x3c,0x48, 0x2,0x3c,0x4b,
+  0x3,0x3c,0x23, 0x1,0x5f,0x5d, 0x4,0x38,0x24, 0x1,0x5f,0x5e,
+  0x1,0x5f,0x63, 0x2,0x43,0x4d, 0x2,0x3c,0x49, 0x1,0x5f,0x61,
+  0x2,0x3c,0x46, 0x2,0x3c,0x44, 0x3,0x3b,0x7c, 0x1,0x5f,0x62,
+  0x3,0x3b,0x7e, 0x2,0x3c,0x47, 0x3,0x3c,0x24, 0x1,0x64,0x41,
+  0x4,0x3d,0x69, 0x2,0x43,0x45, 0x1,0x64,0x3e, 0x1,0x64,0x3f,
+  0x1,0x64,0x3d, 0x2,0x43,0x4a, 0x2,0x43,0x49, 0x2,0x43,0x46,
+  0x1,0x64,0x43, 0x3,0x41,0x5b, 0x3,0x41,0x56, 0x2,0x43,0x48,
+  0x1,0x5f,0x60, 0x3,0x41,0x59, 0x3,0x41,0x51, 0x2,0x43,0x4c,
+  0x2,0x43,0x47, 0x1,0x64,0x40, 0x1,0x64,0x3c, 0x1,0x64,0x42,
+  0x2,0x43,0x4b, 0x3,0x47,0x34, 0x4,0x43,0x6b, 0x3,0x47,0x35,
+  0x1,0x69,0x25, 0x4,0x43,0x6f, 0x2,0x4a,0x5f, 0x2,0x4a,0x5e,
+  0x2,0x4a,0x5d, 0x1,0x69,0x23, 0x4,0x43,0x6d, 0x3,0x47,0x39,
+  0x3,0x47,0x33, 0x3,0x47,0x37, 0x1,0x69,0x24, 0x2,0x50,0x6c,
+  0x2,0x50,0x6f, 0x1,0x6d,0x32, 0x3,0x4c,0x44, 0x3,0x4c,0x46,
+  0x1,0x6d,0x31, 0x2,0x50,0x70, 0x2,0x50,0x6b, 0x1,0x6d,0x34,
+  0x2,0x50,0x6d, 0x3,0x4c,0x41, 0x1,0x6d,0x33, 0x2,0x50,0x6a,
+  0x3,0x4c,0x40, 0x2,0x50,0x6e, 0x1,0x70,0x72, 0x1,0x70,0x6f,
+  0x2,0x57,0x46, 0x2,0x57,0x45, 0x3,0x4c,0x43, 0x2,0x57,0x44,
+  0x2,0x57,0x3f, 0x3,0x50,0x7d, 0x2,0x57,0x40, 0x3,0x51,0x23,
+  0x4,0x50,0x50, 0x3,0x50,0x7a, 0x1,0x70,0x70, 0x3,0x50,0x7e,
+  0x1,0x70,0x6d, 0x1,0x70,0x71, 0x2,0x57,0x3e, 0x1,0x70,0x6e,
+  0x2,0x57,0x41, 0x2,0x57,0x42, 0x2,0x57,0x47, 0x3,0x51,0x22,
+  0x3,0x54,0x71, 0x2,0x57,0x43, 0x3,0x54,0x6f, 0x3,0x54,0x70,
+  0x2,0x5c,0x7d, 0x4,0x56,0x41, 0x3,0x54,0x6c, 0x3,0x54,0x6d,
+  0x1,0x73,0x70, 0x3,0x54,0x72, 0x2,0x61,0x68, 0x1,0x73,0x6f,
+  0x2,0x61,0x66, 0x2,0x61,0x67, 0x1,0x76,0x4c, 0x1,0x78,0x3b,
+  0x2,0x65,0x56, 0x3,0x5a,0x43, 0x1,0x78,0x3a, 0x3,0x5a,0x42,
+  0x3,0x65,0x26, 0x2,0x68,0x7d, 0x2,0x68,0x7e, 0x3,0x5c,0x42,
+  0x1,0x79,0x71, 0x3,0x5c,0x43, 0x2,0x68,0x7c, 0x1,0x7a,0x6f,
+  0x4,0x6a,0x4c, 0x2,0x6f,0x2e, 0x1,0x7c,0x3a, 0x2,0x70,0x38,
+  0x2,0x70,0x39, 0x3,0x61,0x3f, 0x1,0x45,0x4b, 0x4,0x21,0x7c,
+  0x1,0x48,0x32, 0x1,0x48,0x33, 0x1,0x4a,0x55, 0x3,0x26,0x41,
+  0x2,0x27,0x32, 0x1,0x51,0x57, 0x1,0x55,0x73, 0x1,0x5b,0x2a,
+  0xf,0x32,0x73, 0x1,0x59,0x37, 0x1,0x5f,0x64, 0x1,0x5f,0x65,
+  0x1,0x5e,0x32, 0x2,0x3c,0x4c, 0x3,0x65,0x27, 0x1,0x64,0x44,
+  0x2,0x4a,0x61, 0x2,0x4a,0x60, 0x3,0x51,0x24, 0x7,0x53,0x47,
+  0x1,0x45,0x4c, 0x1,0x48,0x34, 0x2,0x27,0x33, 0x1,0x4e,0x25,
+  0x3,0x29,0x45, 0x1,0x4e,0x24, 0x3,0x2d,0x27, 0x2,0x2a,0x7a,
+  0x2,0x2a,0x7b, 0x3,0x66,0x32, 0x2,0x2f,0x59, 0x2,0x2f,0x5a,
+  0x1,0x55,0x74, 0x1,0x55,0x75, 0x3,0x36,0x48, 0x1,0x55,0x76,
+  0x2,0x35,0x71, 0x3,0x36,0x47, 0x3,0x36,0x46, 0x1,0x5b,0x2c,
+  0x4,0x38,0x29, 0x1,0x5f,0x67, 0x3,0x3c,0x29, 0x1,0x5f,0x66,
+  0x2,0x43,0x4e, 0x2,0x46,0x41, 0x2,0x4a,0x62, 0x2,0x57,0x48,
+  0x3,0x51,0x26, 0x3,0x66,0x33, 0x1,0x76,0x4d, 0x1,0x79,0x72,
+  0x1,0x45,0x4d, 0x1,0x46,0x5c, 0x1,0x46,0x5d, 0x1,0x46,0x5b,
+  0x1,0x46,0x5e, 0x1,0x46,0x5a, 0x3,0x22,0x52, 0x1,0x48,0x37,
+  0x3,0x23,0x77, 0x2,0x22,0x57, 0x1,0x48,0x36, 0x1,0x48,0x38,
+  0x3,0x23,0x78, 0x3,0x23,0x75, 0x2,0x22,0x52, 0x2,0x22,0x51,
+  0x2,0x22,0x54, 0x2,0x22,0x53, 0x2,0x22,0x56, 0x1,0x48,0x35,
+  0x2,0x22,0x50, 0x2,0x22,0x55, 0xf,0x22,0x58, 0xf,0x22,0x57,
+  0x3,0x26,0x48, 0x2,0x24,0x3e, 0x1,0x4a,0x5f, 0x2,0x24,0x3f,
+  0x2,0x24,0x43, 0x1,0x4a,0x5e, 0x3,0x26,0x49, 0x2,0x24,0x47,
+  0x2,0x24,0x42, 0x2,0x24,0x45, 0x1,0x4a,0x57, 0x1,0x4a,0x58,
+  0x1,0x4a,0x59, 0x1,0x4a,0x5a, 0x3,0x26,0x45, 0x1,0x4a,0x61,
+  0x3,0x26,0x44, 0x2,0x24,0x41, 0x1,0x4a,0x5c, 0x1,0x4a,0x62,
+  0x3,0x26,0x47, 0x2,0x24,0x40, 0x2,0x24,0x46, 0x3,0x26,0x42,
+  0x1,0x4a,0x5b, 0x2,0x24,0x44, 0x1,0x4a,0x5d, 0x1,0x4a,0x56,
+  0x1,0x4a,0x60, 0x3,0x26,0x4a, 0xf,0x24,0x22, 0x4,0x24,0x46,
+  0xf,0x24,0x53, 0x1,0x4e,0x3a, 0x3,0x29,0x47, 0x2,0x27,0x35,
+  0x1,0x4e,0x26, 0x4,0x26,0x69, 0x1,0x4e,0x30, 0x1,0x4e,0x31,
+  0x1,0x4e,0x29, 0x1,0x4e,0x3b, 0x1,0x4e,0x2b, 0x2,0x27,0x3d,
+  0x1,0x4e,0x36, 0x2,0x27,0x38, 0x1,0x4e,0x2c, 0x2,0x27,0x47,
+  0x2,0x27,0x48, 0x2,0x27,0x40, 0x2,0x27,0x39, 0x1,0x4e,0x39,
+  0x2,0x27,0x45, 0x1,0x4e,0x34, 0x1,0x4e,0x32, 0x3,0x29,0x52,
+  0x2,0x27,0x46, 0x3,0x29,0x49, 0x2,0x27,0x44, 0x2,0x27,0x3c,
+  0x2,0x27,0x34, 0x2,0x27,0x3b, 0x1,0x4e,0x2d, 0x4,0x26,0x65,
+  0x1,0x4e,0x33, 0x3,0x29,0x4a, 0x1,0x4e,0x27, 0x2,0x27,0x3f,
+  0x2,0x27,0x3e, 0x2,0x27,0x36, 0x3,0x29,0x4f, 0x1,0x4e,0x35,
+  0x2,0x27,0x42, 0x2,0x27,0x37, 0x1,0x4e,0x38, 0x2,0x27,0x49,
+  0x1,0x4e,0x28, 0x3,0x29,0x48, 0x1,0x4e,0x2f, 0x2,0x27,0x3a,
+  0x2,0x27,0x43, 0x1,0x4e,0x37, 0x4,0x26,0x67, 0x1,0x4e,0x2a,
+  0x1,0x4e,0x2e, 0x4,0x26,0x6a, 0x2,0x27,0x41, 0xf,0x27,0x4e,
+  0x3,0x29,0x4e, 0x3,0x29,0x4c, 0x3,0x65,0x28, 0xf,0x27,0x50,
+  0x3,0x65,0x29, 0x2,0x2b,0x3d, 0x1,0x51,0x5f, 0x1,0x51,0x6c,
+  0x3,0x2d,0x36, 0x2,0x2b,0x38, 0x2,0x2b,0x2e, 0x1,0x51,0x65,
+  0x2,0x2b,0x2c, 0x1,0x51,0x5e, 0x2,0x2b,0x27, 0x1,0x51,0x68,
+  0x2,0x2b,0x34, 0x2,0x2b,0x21, 0x2,0x2b,0x23, 0x3,0x2d,0x2e,
+  0x4,0x2d,0x59, 0x4,0x29,0x6e, 0x3,0x2d,0x30, 0x2,0x2b,0x26,
+  0x2,0x2a,0x7c, 0x2,0x2b,0x33, 0x2,0x2b,0x43, 0x1,0x51,0x63,
+  0x2,0x2b,0x28, 0x2,0x2b,0x3a, 0x3,0x2d,0x2d, 0x2,0x2a,0x7e,
+  0x2,0x2b,0x41, 0x2,0x2b,0x42, 0x2,0x2b,0x45, 0x2,0x2b,0x3c,
+  0x2,0x2b,0x2d, 0x2,0x2b,0x35, 0x1,0x51,0x69, 0x1,0x51,0x5c,
+  0x1,0x51,0x64, 0x1,0x51,0x70, 0x1,0x51,0x59, 0x1,0x51,0x5b,
+  0x3,0x2d,0x31, 0x3,0x2d,0x2b, 0x3,0x2d,0x3a, 0x2,0x2b,0x25,
+  0x1,0x51,0x6d, 0x1,0x51,0x66, 0x2,0x2b,0x3f, 0x2,0x2b,0x22,
+  0x1,0x51,0x6f, 0x1,0x51,0x6a, 0x2,0x2b,0x2b, 0x4,0x29,0x6d,
+  0x4,0x2d,0x4e, 0x1,0x51,0x6e, 0x2,0x2b,0x32, 0x2,0x2b,0x2a,
+  0x1,0x51,0x67, 0x2,0x2b,0x3e, 0x2,0x2b,0x36, 0x3,0x2d,0x2a,
+  0x1,0x51,0x61, 0x2,0x2b,0x44, 0x2,0x2b,0x29, 0x1,0x51,0x5d,
+  0x2,0x2b,0x3b, 0x2,0x2b,0x31, 0x1,0x51,0x62, 0x2,0x2b,0x37,
+  0x1,0x51,0x5a, 0x2,0x2a,0x7d, 0x1,0x51,0x6b, 0x1,0x56,0x27,
+  0x1,0x51,0x60, 0x2,0x2b,0x30, 0x2,0x2b,0x2f, 0x2,0x2b,0x24,
+  0x3,0x29,0x51, 0x2,0x2b,0x40, 0x3,0x2d,0x34, 0x2,0x2b,0x39,
+  0x3,0x2d,0x32, 0x1,0x51,0x58, 0x3,0x2d,0x39, 0x3,0x2d,0x37,
+  0x6,0x31,0x72, 0x3,0x2d,0x38, 0x3,0x65,0x2b, 0x3,0x65,0x2a,
+  0xf,0x2b,0x48, 0x2,0x2f,0x6e, 0x1,0x56,0x2e, 0x2,0x2f,0x6f,
+  0x3,0x31,0x5d, 0x2,0x2f,0x63, 0x1,0x56,0x23, 0x1,0x56,0x2f,
+  0x3,0x31,0x57, 0x2,0x2f,0x5c, 0x3,0x31,0x53, 0x2,0x2f,0x65,
+  0x2,0x2f,0x6d, 0x3,0x31,0x5b, 0x2,0x2f,0x5b, 0x2,0x2f,0x76,
+  0x1,0x55,0x77, 0x3,0x31,0x5e, 0x3,0x31,0x64, 0x3,0x31,0x50,
+  0x2,0x2f,0x75, 0x2,0x2f,0x70, 0x3,0x31,0x5f, 0x2,0x2f,0x71,
+  0x1,0x56,0x21, 0x1,0x56,0x2c, 0x2,0x2f,0x67, 0x3,0x31,0x56,
+  0x2,0x2f,0x68, 0x2,0x2f,0x72, 0x2,0x2f,0x69, 0x3,0x31,0x63,
+  0x2,0x2f,0x64, 0x2,0x2f,0x5e, 0x2,0x2f,0x5f, 0x2,0x2f,0x6c,
+  0x2,0x2f,0x66, 0x3,0x31,0x54, 0x3,0x31,0x4f, 0x1,0x55,0x78,
+  0x1,0x55,0x7c, 0x2,0x2f,0x74, 0x2,0x2f,0x60, 0x1,0x56,0x2a,
+  0x1,0x56,0x26, 0x3,0x31,0x5a, 0x4,0x2d,0x55, 0x1,0x56,0x29,
+  0x1,0x56,0x30, 0x1,0x55,0x7d, 0x1,0x56,0x2b, 0x2,0x2f,0x6b,
+  0x1,0x56,0x2d, 0x1,0x55,0x7a, 0x3,0x31,0x59, 0x1,0x55,0x79,
+  0x2,0x2f,0x5d, 0x4,0x2d,0x4f, 0x2,0x2f,0x61, 0x1,0x56,0x24,
+  0x2,0x2f,0x73, 0x2,0x2f,0x6a, 0x2,0x2f,0x62, 0x1,0x56,0x28,
+  0x1,0x56,0x25, 0x3,0x2d,0x2f, 0x1,0x55,0x7b, 0x1,0x55,0x7e,
+  0x3,0x31,0x62, 0x3,0x31,0x58, 0xf,0x30,0x24, 0x3,0x31,0x61,
+  0x3,0x31,0x60, 0x3,0x65,0x2d, 0x3,0x65,0x2c, 0x2,0x36,0x28,
+  0x3,0x36,0x55, 0x2,0x35,0x76, 0x2,0x35,0x77, 0x2,0x35,0x7b,
+  0x3,0x36,0x60, 0x2,0x36,0x2c, 0x2,0x36,0x29, 0x3,0x36,0x4e,
+  0x2,0x36,0x22, 0x2,0x36,0x21, 0x1,0x5b,0x33, 0x2,0x36,0x25,
+  0x2,0x36,0x34, 0x2,0x35,0x72, 0x3,0x36,0x5b, 0x2,0x36,0x35,
+  0x2,0x36,0x27, 0x2,0x36,0x39, 0x2,0x36,0x2d, 0x1,0x5b,0x32,
+  0x2,0x36,0x2b, 0x1,0x5b,0x2d, 0x1,0x5b,0x42, 0x1,0x5b,0x38,
+  0x3,0x36,0x57, 0x1,0x5b,0x3c, 0x1,0x5b,0x3b, 0x2,0x35,0x73,
+  0x4,0x32,0x3f, 0x2,0x36,0x32, 0x2,0x36,0x38, 0x2,0x36,0x30,
+  0x2,0x36,0x37, 0x3,0x36,0x51, 0x2,0x36,0x24, 0x2,0x35,0x74,
+  0x2,0x36,0x36, 0x2,0x36,0x26, 0x1,0x5b,0x30, 0x1,0x5b,0x3d,
+  0x3,0x36,0x5a, 0x2,0x36,0x2f, 0x1,0x5b,0x36, 0x3,0x36,0x4d,
+  0x3,0x36,0x5c, 0x3,0x36,0x50, 0x2,0x36,0x2e, 0x2,0x35,0x75,
+  0x1,0x5b,0x3e, 0x3,0x36,0x4b, 0x1,0x5b,0x40, 0x2,0x36,0x31,
+  0x1,0x5b,0x41, 0x1,0x5b,0x2f, 0x2,0x35,0x7c, 0x2,0x36,0x33,
+  0x3,0x36,0x54, 0x3,0x34,0x78, 0x1,0x5b,0x35, 0x1,0x5b,0x3f,
+  0x2,0x35,0x7e, 0x2,0x36,0x2a, 0x2,0x35,0x79, 0x2,0x35,0x7d,
+  0x1,0x5b,0x3a, 0x2,0x35,0x78, 0x1,0x5b,0x2e, 0x1,0x5b,0x37,
+  0x1,0x5b,0x34, 0x2,0x36,0x23, 0x1,0x56,0x22, 0x2,0x3c,0x63,
+  0x1,0x5b,0x31, 0x3,0x36,0x4c, 0x3,0x36,0x52, 0x3,0x36,0x5e,
+  0x3,0x36,0x5f, 0xf,0x35,0x57, 0x3,0x36,0x56, 0x3,0x3c,0x45,
+  0x1,0x5b,0x39, 0x3,0x3c,0x41, 0x2,0x3c,0x66, 0x2,0x3c,0x7c,
+  0x2,0x3c,0x71, 0x1,0x5f,0x7b, 0x3,0x3c,0x38, 0x1,0x5f,0x76,
+  0x2,0x3c,0x60, 0x1,0x5f,0x77, 0x2,0x3c,0x70, 0x3,0x3c,0x3e,
+  0x2,0x3c,0x69, 0x2,0x3c,0x76, 0x1,0x5f,0x73, 0x2,0x3c,0x4e,
+  0x2,0x3c,0x78, 0x1,0x5f,0x69, 0x2,0x3c,0x56, 0x1,0x5f,0x6c,
+  0x1,0x5f,0x6b, 0x4,0x38,0x32, 0x1,0x5f,0x7c, 0x3,0x36,0x53,
+  0x2,0x3c,0x50, 0x2,0x3c,0x72, 0x2,0x3c,0x73, 0x1,0x5f,0x6e,
+  0x1,0x5f,0x6a, 0x2,0x3c,0x5e, 0x3,0x3c,0x3d, 0x1,0x5f,0x75,
+  0x2,0x3c,0x59, 0x3,0x3c,0x32, 0x2,0x3c,0x74, 0x1,0x5f,0x71,
+  0x2,0x3c,0x6c, 0x2,0x3c,0x79, 0x2,0x3c,0x53, 0x2,0x3c,0x58,
+  0x2,0x3c,0x52, 0x3,0x3c,0x2a, 0x1,0x5f,0x70, 0x2,0x3c,0x65,
+  0x2,0x43,0x64, 0x2,0x3c,0x54, 0x1,0x5f,0x74, 0x2,0x3c,0x5d,
+  0x2,0x3c,0x75, 0x1,0x5f,0x6f, 0x2,0x3c,0x5a, 0x2,0x3c,0x57,
+  0x2,0x3c,0x68, 0x1,0x5f,0x72, 0x1,0x5f,0x68, 0x1,0x5f,0x7e,
+  0x2,0x3c,0x6b, 0x2,0x3c,0x6a, 0x3,0x3c,0x31, 0x3,0x3c,0x42,
+  0x3,0x3c,0x39, 0x3,0x3c,0x3b, 0x3,0x3c,0x34, 0x3,0x3c,0x2f,
+  0x2,0x3c,0x4f, 0x1,0x5f,0x6d, 0x2,0x3c,0x77, 0x2,0x3c,0x5f,
+  0x2,0x3c,0x61, 0x3,0x3c,0x37, 0x2,0x3c,0x6e, 0x2,0x3c,0x6d,
+  0x2,0x3c,0x4d, 0x1,0x5f,0x78, 0x1,0x5f,0x7a, 0x2,0x3c,0x55,
+  0x2,0x3c,0x5c, 0x2,0x3c,0x64, 0x1,0x5f,0x79, 0x2,0x3c,0x5b,
+  0x2,0x3c,0x67, 0x2,0x3c,0x7a, 0xf,0x3b,0x70, 0x2,0x3c,0x6f,
+  0x3,0x3c,0x3c, 0xf,0x3c,0x21, 0x3,0x3c,0x44, 0x3,0x3c,0x33,
+  0x2,0x3c,0x7b, 0xf,0x3c,0x29, 0x3,0x65,0x2f, 0x2,0x3c,0x51,
+  0xf,0x3b,0x6e, 0x3,0x65,0x2e, 0x3,0x3c,0x40, 0x2,0x43,0x78,
+  0x1,0x64,0x4c, 0x3,0x41,0x65, 0x2,0x43,0x76, 0x2,0x43,0x61,
+  0x2,0x43,0x66, 0x2,0x43,0x5f, 0x3,0x41,0x77, 0x2,0x43,0x72,
+  0x2,0x43,0x51, 0x2,0x43,0x58, 0x4,0x3d,0x71, 0x2,0x43,0x70,
+  0x2,0x43,0x7a, 0x2,0x43,0x62, 0x3,0x41,0x68, 0x2,0x43,0x55,
+  0x2,0x43,0x68, 0x2,0x43,0x6d, 0x2,0x43,0x59, 0x3,0x41,0x6b,
+  0x2,0x43,0x6a, 0x2,0x43,0x56, 0x3,0x41,0x5d, 0x3,0x41,0x75,
+  0x2,0x43,0x5d, 0x2,0x43,0x5e, 0x1,0x64,0x4e, 0x2,0x43,0x71,
+  0x2,0x43,0x6f, 0x3,0x41,0x73, 0x2,0x43,0x52, 0x2,0x43,0x74,
+  0x3,0x41,0x74, 0x2,0x43,0x75, 0x2,0x43,0x77, 0x1,0x64,0x52,
+  0x1,0x64,0x4a, 0x3,0x41,0x6f, 0x2,0x35,0x7a, 0x2,0x43,0x5a,
+  0x2,0x43,0x6c, 0x2,0x43,0x5b, 0x1,0x64,0x47, 0x1,0x64,0x57,
+  0x2,0x43,0x73, 0x1,0x64,0x55, 0x1,0x64,0x51, 0x2,0x43,0x50,
+  0x1,0x64,0x49, 0x3,0x41,0x79, 0x2,0x43,0x53, 0x1,0x64,0x56,
+  0x3,0x41,0x78, 0x2,0x43,0x63, 0x2,0x43,0x4f, 0x3,0x41,0x76,
+  0x1,0x64,0x4f, 0x2,0x43,0x67, 0x2,0x43,0x57, 0x1,0x64,0x50,
+  0x2,0x43,0x60, 0x1,0x64,0x46, 0x1,0x5f,0x7d, 0x2,0x43,0x69,
+  0x2,0x3c,0x62, 0x2,0x43,0x54, 0x4,0x3d,0x6c, 0x3,0x41,0x6d,
+  0x2,0x43,0x6e, 0x1,0x64,0x4b, 0x2,0x43,0x6b, 0x1,0x64,0x48,
+  0x2,0x43,0x65, 0x1,0x64,0x53, 0x2,0x43,0x5c, 0x2,0x43,0x79,
+  0x3,0x41,0x6a, 0x3,0x41,0x7b, 0xf,0x42,0x49, 0xf,0x42,0x47,
+  0x1,0x64,0x4d, 0x2,0x45,0x2c, 0x3,0x41,0x72, 0x1,0x64,0x54,
+  0xf,0x42,0x28, 0xf,0x42,0x3c, 0x2,0x4a,0x70, 0x2,0x4a,0x6e,
+  0x3,0x47,0x3a, 0x2,0x4b,0x26, 0x2,0x4a,0x6c, 0x3,0x47,0x3d,
+  0x2,0x4a,0x7e, 0x1,0x64,0x45, 0x1,0x69,0x28, 0x2,0x4a,0x68,
+  0x2,0x4b,0x25, 0x3,0x47,0x51, 0x2,0x4a,0x6d, 0x2,0x4a,0x7b,
+  0x1,0x69,0x2d, 0x1,0x69,0x26, 0x3,0x47,0x4e, 0x2,0x4b,0x23,
+  0x3,0x47,0x46, 0x2,0x4a,0x66, 0x2,0x4b,0x22, 0x3,0x47,0x47,
+  0x1,0x69,0x38, 0x2,0x4a,0x77, 0x2,0x4b,0x29, 0x1,0x69,0x36,
+  0x2,0x4a,0x6f, 0x1,0x69,0x27, 0x2,0x4a,0x71, 0x2,0x4b,0x21,
+  0x1,0x69,0x30, 0x2,0x4a,0x6a, 0x1,0x69,0x34, 0x1,0x69,0x2a,
+  0x2,0x4a,0x73, 0x2,0x4a,0x69, 0x2,0x4a,0x63, 0x3,0x47,0x3e,
+  0x2,0x4a,0x7d, 0x1,0x69,0x31, 0x2,0x4b,0x28, 0x2,0x4a,0x64,
+  0x1,0x69,0x2e, 0x4,0x43,0x77, 0x2,0x4a,0x79, 0x4,0x43,0x79,
+  0x1,0x69,0x2f, 0x2,0x4a,0x6b, 0x2,0x4a,0x76, 0x2,0x4a,0x72,
+  0x2,0x4a,0x74, 0x3,0x47,0x43, 0x1,0x69,0x29, 0x2,0x4b,0x27,
+  0x1,0x69,0x37, 0x2,0x4a,0x75, 0x3,0x47,0x3b, 0x2,0x4b,0x2a,
+  0x4,0x44,0x27, 0x3,0x47,0x3c, 0x2,0x4a,0x65, 0x2,0x4a,0x7a,
+  0x1,0x69,0x2c, 0x1,0x69,0x35, 0x1,0x69,0x33, 0x2,0x4a,0x67,
+  0x2,0x4a,0x7c, 0x1,0x69,0x32, 0x3,0x47,0x45, 0x3,0x47,0x48,
+  0x1,0x69,0x2b, 0x2,0x4a,0x78, 0x3,0x47,0x4d, 0x3,0x47,0x44,
+  0x4,0x44,0x28, 0x3,0x4c,0x54, 0x2,0x4b,0x24, 0x3,0x47,0x4c,
+  0x2,0x50,0x7c, 0x3,0x47,0x42, 0x2,0x50,0x78, 0x2,0x50,0x74,
+  0x2,0x51,0x2a, 0x2,0x51,0x27, 0x1,0x6d,0x37, 0x3,0x4c,0x64,
+  0x3,0x4c,0x60, 0x2,0x51,0x2e, 0x2,0x50,0x7b, 0x1,0x6d,0x42,
+  0x2,0x51,0x24, 0x3,0x4c,0x4f, 0x3,0x4c,0x51, 0x2,0x50,0x77,
+  0x2,0x51,0x23, 0x1,0x6d,0x3f, 0x2,0x51,0x37, 0x4,0x4a,0x3d,
+  0x2,0x51,0x34, 0x2,0x51,0x26, 0x2,0x50,0x75, 0x3,0x4c,0x5f,
+  0x3,0x4c,0x57, 0x2,0x51,0x2b, 0x2,0x51,0x2d, 0x1,0x6d,0x3b,
+  0x2,0x51,0x21, 0x2,0x50,0x7a, 0x2,0x50,0x71, 0x1,0x6d,0x38,
+  0x1,0x6d,0x40, 0x4,0x4a,0x48, 0x2,0x51,0x30, 0x1,0x6d,0x41,
+  0x2,0x50,0x72, 0x2,0x51,0x36, 0x2,0x51,0x29, 0x2,0x51,0x2f,
+  0x1,0x6d,0x3e, 0x3,0x4c,0x4d, 0x3,0x4c,0x50, 0x2,0x51,0x2c,
+  0x3,0x4c,0x47, 0x2,0x51,0x33, 0x3,0x4c,0x5b, 0x1,0x6d,0x43,
+  0x3,0x4c,0x56, 0x1,0x6d,0x3d, 0x2,0x51,0x25, 0x2,0x50,0x76,
+  0x2,0x51,0x38, 0x2,0x50,0x73, 0x2,0x51,0x31, 0x1,0x6d,0x3a,
+  0x3,0x4c,0x4a, 0x2,0x50,0x7d, 0x3,0x4c,0x49, 0x2,0x50,0x7e,
+  0x1,0x6d,0x39, 0x1,0x6d,0x36, 0x2,0x50,0x79, 0x1,0x6d,0x3c,
+  0x3,0x4c,0x52, 0x1,0x6d,0x35, 0x3,0x4c,0x62, 0x2,0x51,0x32,
+  0x2,0x51,0x35, 0x2,0x51,0x22, 0x2,0x57,0x55, 0x3,0x4c,0x5e,
+  0x3,0x4c,0x59, 0xf,0x4f,0x42, 0x3,0x4c,0x61, 0x3,0x65,0x30,
+  0x2,0x57,0x4d, 0x3,0x51,0x2c, 0x2,0x57,0x49, 0x1,0x71,0x21,
+  0x3,0x51,0x3c, 0x3,0x51,0x38, 0x1,0x70,0x74, 0x1,0x70,0x79,
+  0x1,0x70,0x75, 0x2,0x57,0x57, 0x2,0x57,0x62, 0x1,0x70,0x73,
+  0x2,0x57,0x4f, 0x2,0x57,0x58, 0x2,0x51,0x28, 0x2,0x57,0x59,
+  0x3,0x51,0x28, 0x3,0x51,0x2b, 0x1,0x70,0x7a, 0x3,0x51,0x40,
+  0x2,0x57,0x68, 0x1,0x70,0x7e, 0x1,0x71,0x23, 0x2,0x57,0x4b,
+  0x3,0x51,0x3b, 0x1,0x70,0x7d, 0x3,0x51,0x31, 0x2,0x57,0x66,
+  0x2,0x57,0x67, 0x2,0x57,0x5d, 0x2,0x57,0x5c, 0x2,0x57,0x54,
+  0x3,0x51,0x29, 0x3,0x51,0x3e, 0x2,0x57,0x5e, 0x2,0x57,0x65,
+  0x2,0x57,0x64, 0x3,0x51,0x2f, 0x1,0x70,0x78, 0x1,0x70,0x76,
+  0x2,0x57,0x56, 0x2,0x57,0x53, 0x3,0x51,0x44, 0x2,0x57,0x50,
+  0x2,0x57,0x63, 0x1,0x71,0x22, 0x2,0x57,0x61, 0x1,0x70,0x7c,
+  0x1,0x70,0x7b, 0x3,0x51,0x27, 0x2,0x57,0x5b, 0x4,0x4a,0x4b,
+  0x2,0x57,0x4a, 0x2,0x57,0x4c, 0x2,0x57,0x4e, 0x2,0x57,0x60,
+  0x2,0x57,0x5a, 0x1,0x70,0x77, 0x3,0x51,0x2e, 0x2,0x57,0x51,
+  0x3,0x51,0x32, 0x2,0x57,0x5f, 0x3,0x51,0x41, 0x3,0x51,0x3a,
+  0xf,0x54,0x7b, 0x2,0x57,0x52, 0x3,0x65,0x31, 0xf,0x55,0x29,
+  0x3,0x65,0x32, 0x3,0x54,0x75, 0x1,0x73,0x78, 0x2,0x5d,0x31,
+  0x1,0x73,0x71, 0x2,0x5d,0x22, 0x3,0x54,0x7b, 0x2,0x5d,0x2d,
+  0x1,0x73,0x73, 0x2,0x5d,0x34, 0x3,0x55,0x21, 0x2,0x5d,0x29,
+  0x3,0x54,0x7c, 0x2,0x5d,0x24, 0x3,0x54,0x76, 0x4,0x56,0x45,
+  0x2,0x5d,0x35, 0x2,0x5c,0x7e, 0x2,0x5d,0x2b, 0x3,0x55,0x27,
+  0x1,0x73,0x7a, 0x2,0x5d,0x30, 0x2,0x5d,0x36, 0x2,0x5d,0x2a,
+  0x1,0x73,0x72, 0x2,0x5d,0x2c, 0x2,0x5d,0x21, 0x1,0x73,0x79,
+  0x3,0x55,0x23, 0x3,0x54,0x7a, 0x2,0x5d,0x33, 0x2,0x5d,0x26,
+  0x1,0x73,0x75, 0x3,0x55,0x24, 0x2,0x5d,0x28, 0x2,0x5d,0x25,
+  0x1,0x73,0x7b, 0x2,0x5d,0x27, 0x1,0x73,0x74, 0x1,0x73,0x77,
+  0x2,0x5d,0x2f, 0x2,0x5d,0x23, 0x2,0x5d,0x32, 0x3,0x54,0x78,
+  0x2,0x5d,0x2e, 0x3,0x55,0x29, 0x3,0x57,0x74, 0x1,0x76,0x4f,
+  0x2,0x61,0x73, 0x1,0x76,0x54, 0x1,0x76,0x55, 0x3,0x57,0x77,
+  0x3,0x58,0x21, 0x3,0x57,0x76, 0x1,0x76,0x4e, 0x2,0x61,0x72,
+  0x3,0x57,0x78, 0x2,0x61,0x6f, 0x2,0x61,0x70, 0x1,0x76,0x52,
+  0x2,0x61,0x6a, 0x2,0x61,0x6e, 0x1,0x76,0x51, 0x3,0x57,0x7e,
+  0x2,0x61,0x6b, 0x3,0x57,0x79, 0x3,0x58,0x23, 0x3,0x57,0x7d,
+  0x3,0x57,0x7a, 0x1,0x76,0x53, 0x1,0x76,0x50, 0x3,0x58,0x22,
+  0x2,0x61,0x69, 0x2,0x61,0x6d, 0x2,0x61,0x71, 0x3,0x57,0x7b,
+  0x3,0x65,0x33, 0x2,0x65,0x5c, 0x2,0x65,0x59, 0x2,0x65,0x62,
+  0x3,0x5a,0x44, 0x2,0x65,0x61, 0x2,0x65,0x5f, 0x2,0x65,0x5a,
+  0x3,0x5a,0x4f, 0x1,0x78,0x3f, 0x3,0x5a,0x45, 0x3,0x5a,0x4e,
+  0x4,0x5f,0x71, 0x3,0x5a,0x47, 0x3,0x5a,0x4d, 0x2,0x65,0x5b,
+  0x1,0x78,0x3e, 0x1,0x73,0x76, 0x2,0x65,0x5e, 0x1,0x78,0x3d,
+  0x2,0x65,0x63, 0x2,0x65,0x5d, 0x2,0x65,0x58, 0x2,0x61,0x6c,
+  0x3,0x5a,0x48, 0x3,0x5a,0x46, 0x1,0x78,0x3c, 0x3,0x65,0x34,
+  0x2,0x65,0x57, 0x2,0x69,0x24, 0x3,0x5c,0x49, 0x2,0x69,0x23,
+  0x2,0x65,0x60, 0x1,0x79,0x73, 0x3,0x57,0x75, 0x2,0x69,0x27,
+  0x2,0x69,0x28, 0x2,0x69,0x22, 0x2,0x69,0x26, 0x4,0x63,0x50,
+  0x2,0x69,0x21, 0x3,0x5c,0x47, 0x3,0x65,0x35, 0x4,0x63,0x4e,
+  0x2,0x6b,0x5f, 0x2,0x69,0x25, 0x1,0x7a,0x72, 0x1,0x7a,0x70,
+  0x2,0x6b,0x5d, 0x3,0x5e,0x35, 0x3,0x5e,0x34, 0x3,0x5e,0x33,
+  0x2,0x6b,0x60, 0x3,0x5e,0x37, 0x2,0x6b,0x5c, 0x2,0x6b,0x5e,
+  0x1,0x7a,0x71, 0x3,0x5f,0x4f, 0x3,0x5f,0x4e, 0x2,0x6d,0x53,
+  0x2,0x6d,0x54, 0x1,0x7b,0x62, 0x2,0x6d,0x52, 0xf,0x69,0x4c,
+  0x3,0x65,0x36, 0x3,0x65,0x37, 0x2,0x6f,0x31, 0x1,0x7c,0x3b,
+  0x2,0x6f,0x2f, 0x2,0x6f,0x30, 0x2,0x70,0x3a, 0x3,0x60,0x74,
+  0xf,0x6b,0x51, 0x1,0x7d,0x23, 0x2,0x71,0x23, 0x2,0x71,0x21,
+  0x2,0x71,0x22, 0x2,0x71,0x24, 0x3,0x61,0x40, 0x3,0x61,0x65,
+  0x3,0x61,0x41, 0x2,0x72,0x2b, 0x1,0x45,0x4e, 0x1,0x48,0x39,
+  0x3,0x23,0x79, 0x1,0x4e,0x3c, 0x4,0x26,0x71, 0x2,0x27,0x4a,
+  0x3,0x29,0x53, 0x3,0x29,0x54, 0x2,0x2b,0x46, 0x4,0x29,0x72,
+  0x3,0x2d,0x3c, 0x3,0x31,0x66, 0x2,0x2f,0x77, 0x2,0x2f,0x79,
+  0x3,0x31,0x65, 0x2,0x2f,0x78, 0x3,0x31,0x67, 0x2,0x2f,0x7a,
+  0x1,0x5b,0x43, 0x2,0x36,0x3b, 0x2,0x2f,0x7b, 0x3,0x36,0x62,
+  0x2,0x36,0x3a, 0x2,0x36,0x3c, 0x2,0x36,0x3d, 0x2,0x3c,0x7d,
+  0x1,0x60,0x22, 0x2,0x3c,0x7e, 0x2,0x3d,0x22, 0x1,0x60,0x23,
+  0x1,0x60,0x21, 0x2,0x3d,0x21, 0x3,0x41,0x7d, 0x2,0x44,0x22,
+  0x2,0x43,0x7e, 0x2,0x43,0x7d, 0x3,0x41,0x7c, 0x2,0x43,0x7c,
+  0x2,0x43,0x7b, 0x1,0x64,0x58, 0x2,0x44,0x21, 0x1,0x69,0x39,
+  0x2,0x4b,0x2b, 0x2,0x4b,0x2d, 0x1,0x69,0x3a, 0x2,0x4b,0x2c,
+  0x1,0x6d,0x45, 0x3,0x4c,0x66, 0x1,0x6d,0x44, 0x2,0x51,0x39,
+  0x3,0x4c,0x65, 0x3,0x4c,0x67, 0x2,0x57,0x6a, 0x2,0x57,0x69,
+  0x2,0x57,0x6b, 0x3,0x51,0x46, 0x3,0x51,0x45, 0x1,0x71,0x24,
+  0xf,0x55,0x39, 0x2,0x5d,0x37, 0x1,0x73,0x7c, 0x3,0x55,0x2b,
+  0x2,0x61,0x74, 0x1,0x76,0x56, 0x2,0x65,0x64, 0x1,0x7b,0x63,
+  0x1,0x45,0x4f, 0x1,0x46,0x5f, 0x1,0x48,0x3a, 0x1,0x4a,0x63,
+  0x1,0x4e,0x3d, 0x1,0x4e,0x3e, 0x3,0x29,0x55, 0x3,0x29,0x56,
+  0x1,0x51,0x71, 0x3,0x2d,0x3d, 0x3,0x31,0x68, 0x2,0x2f,0x7c,
+  0x3,0x3c,0x49, 0x3,0x3c,0x47, 0x4,0x44,0x2d, 0x3,0x41,0x7e,
+  0x1,0x64,0x59, 0x3,0x42,0x21, 0x3,0x47,0x53, 0x4,0x4a,0x4e,
+  0x2,0x52,0x59, 0x1,0x71,0x25, 0x1,0x76,0x57, 0x1,0x45,0x50,
+  0x3,0x22,0x53, 0x1,0x48,0x3b, 0x4,0x26,0x76, 0x2,0x27,0x4c,
+  0x1,0x4e,0x3f, 0x2,0x27,0x4b, 0x3,0x29,0x58, 0x2,0x2b,0x47,
+  0x1,0x51,0x72, 0x2,0x2b,0x48, 0x5,0x29,0x69, 0x1,0x51,0x73,
+  0x2,0x2f,0x7e, 0x1,0x56,0x32, 0x1,0x56,0x31, 0x3,0x31,0x6a,
+  0x2,0x36,0x42, 0x2,0x36,0x40, 0x2,0x36,0x41, 0x2,0x36,0x3f,
+  0x3,0x36,0x64, 0x2,0x36,0x3e, 0x2,0x3d,0x23, 0x2,0x3d,0x26,
+  0x1,0x60,0x25, 0x2,0x3d,0x24, 0x1,0x60,0x24, 0x2,0x3d,0x25,
+  0x2,0x44,0x23, 0x3,0x42,0x22, 0x4,0x44,0x31, 0x2,0x4b,0x2e,
+  0x2,0x4b,0x2f, 0x2,0x4b,0x30, 0x3,0x47,0x54, 0x2,0x51,0x3c,
+  0x2,0x51,0x3b, 0x1,0x6d,0x46, 0x2,0x51,0x3a, 0x2,0x51,0x3d,
+  0x2,0x57,0x6c, 0x4,0x50,0x6d, 0x5,0x5b,0x72, 0x2,0x57,0x6d,
+  0x2,0x57,0x6e, 0x4,0x56,0x52, 0x2,0x5d,0x38, 0x1,0x73,0x7d,
+  0x1,0x76,0x58, 0x2,0x65,0x65, 0x1,0x7a,0x73, 0x2,0x21,0x3f,
+  0x3,0x29,0x59, 0x1,0x51,0x74, 0x2,0x2b,0x49, 0x1,0x56,0x33,
+  0x4,0x32,0x4e, 0x4,0x32,0x50, 0x1,0x5b,0x44, 0x3,0x36,0x65,
+  0x1,0x60,0x26, 0x2,0x3d,0x27, 0x3,0x3c,0x4b, 0x1,0x64,0x5b,
+  0x1,0x64,0x5a, 0x3,0x42,0x26, 0x2,0x4b,0x31, 0x2,0x4b,0x32,
+  0x1,0x6d,0x47, 0x1,0x6d,0x48, 0x2,0x57,0x70, 0x2,0x57,0x6f,
+  0x2,0x61,0x75, 0x2,0x6f,0x32, 0x1,0x45,0x51, 0x2,0x21,0x40,
+  0x1,0x46,0x60, 0x3,0x23,0x7a, 0x1,0x4a,0x64, 0x2,0x24,0x48,
+  0x3,0x29,0x5a, 0x1,0x51,0x75, 0x1,0x64,0x5c, 0x1,0x45,0x52,
+  0x2,0x2b,0x4a, 0x1,0x51,0x76, 0x2,0x2b,0x4b, 0x1,0x73,0x7e,
+  0x1,0x45,0x53, 0x3,0x65,0x38, 0x3,0x65,0x39, 0x2,0x27,0x4d,
+  0x2,0x2b,0x4c, 0x3,0x2d,0x42, 0x2,0x30,0x25, 0x2,0x30,0x24,
+  0x2,0x30,0x22, 0x3,0x31,0x6e, 0x2,0x30,0x21, 0x2,0x30,0x26,
+  0x2,0x30,0x23, 0x3,0x31,0x6c, 0x3,0x31,0x6d, 0x1,0x5b,0x45,
+  0x1,0x5b,0x46, 0x3,0x36,0x66, 0x1,0x60,0x27, 0x2,0x3d,0x28,
+  0x4,0x38,0x4e, 0x2,0x3d,0x29, 0x2,0x3d,0x2a, 0x3,0x3c,0x4d,
+  0xf,0x3c,0x3c, 0x3,0x65,0x3a, 0x2,0x44,0x27, 0x2,0x44,0x28,
+  0x2,0x44,0x26, 0x3,0x42,0x28, 0x2,0x44,0x24, 0x2,0x44,0x25,
+  0x1,0x64,0x5d, 0x2,0x4b,0x33, 0x2,0x51,0x40, 0x2,0x51,0x3f,
+  0x2,0x51,0x3e, 0x2,0x51,0x41, 0x2,0x57,0x72, 0x2,0x57,0x71,
+  0x1,0x71,0x26, 0x2,0x57,0x73, 0x1,0x74,0x21, 0x2,0x5d,0x39,
+  0x3,0x55,0x2d, 0x2,0x61,0x76, 0x2,0x65,0x66, 0x2,0x6d,0x55,
+  0x1,0x45,0x54, 0x1,0x46,0x62, 0x1,0x46,0x61, 0x4,0x23,0x21,
+  0x1,0x4e,0x40, 0x2,0x21,0x41, 0x2,0x21,0x5f, 0x1,0x48,0x3c,
+  0x2,0x22,0x58, 0x2,0x24,0x49, 0x2,0x24,0x4a, 0x1,0x4e,0x41,
+  0x3,0x29,0x5d, 0x2,0x27,0x4e, 0x3,0x65,0x3b, 0x1,0x51,0x77,
+  0x2,0x2b,0x4d, 0x2,0x2b,0x4e, 0x1,0x56,0x34, 0x1,0x56,0x38,
+  0x2,0x30,0x27, 0x1,0x56,0x37, 0x1,0x56,0x35, 0x1,0x56,0x36,
+  0x2,0x36,0x43, 0x1,0x5b,0x47, 0x1,0x60,0x2a, 0x3,0x3c,0x4e,
+  0x1,0x60,0x28, 0x1,0x60,0x29, 0x2,0x3d,0x2b, 0x3,0x42,0x29,
+  0x3,0x42,0x2a, 0x1,0x69,0x3b, 0x1,0x45,0x55, 0x2,0x21,0x60,
+  0x3,0x22,0x57, 0x1,0x46,0x63, 0x3,0x22,0x54, 0x2,0x21,0x63,
+  0x3,0x24,0x21, 0x1,0x46,0x66, 0x2,0x21,0x62, 0x1,0x46,0x65,
+  0x1,0x46,0x64, 0x1,0x4a,0x65, 0x2,0x21,0x61, 0x3,0x22,0x58,
+  0x3,0x22,0x59, 0x2,0x22,0x59, 0xf,0x21,0x66, 0x2,0x22,0x5d,
+  0x2,0x22,0x5f, 0x2,0x22,0x60, 0x1,0x48,0x46, 0x1,0x48,0x47,
+  0x2,0x22,0x5c, 0x1,0x48,0x42, 0x3,0x23,0x7d, 0x2,0x22,0x5a,
+  0x3,0x24,0x25, 0x2,0x22,0x5e, 0x1,0x48,0x43, 0x3,0x26,0x55,
+  0x1,0x48,0x3e, 0x3,0x23,0x7c, 0x1,0x48,0x3f, 0x3,0x24,0x23,
+  0x1,0x48,0x45, 0x2,0x22,0x5b, 0x1,0x48,0x3d, 0x1,0x4a,0x66,
+  0x1,0x48,0x40, 0x1,0x48,0x41, 0x1,0x48,0x44, 0xf,0x22,0x5d,
+  0x3,0x65,0x3c, 0x2,0x24,0x5b, 0x2,0x24,0x59, 0x2,0x24,0x4c,
+  0x1,0x4a,0x72, 0x2,0x24,0x53, 0x1,0x4a,0x6d, 0x2,0x24,0x4d,
+  0x3,0x29,0x64, 0x2,0x24,0x55, 0x3,0x26,0x50, 0x2,0x24,0x52,
+  0x1,0x4a,0x70, 0x2,0x24,0x51, 0x1,0x4a,0x77, 0x2,0x24,0x5a,
+  0x1,0x4a,0x79, 0x3,0x26,0x53, 0x1,0x4a,0x7b, 0x3,0x23,0x7e,
+  0x2,0x24,0x4b, 0x3,0x26,0x57, 0x1,0x4a,0x6e, 0x2,0x24,0x5c,
+  0x3,0x26,0x51, 0x1,0x4a,0x75, 0x1,0x4a,0x78, 0x3,0x26,0x4c,
+  0x2,0x27,0x65, 0x1,0x4a,0x68, 0x1,0x4b,0x21, 0x1,0x4a,0x76,
+  0x2,0x24,0x4e, 0x1,0x4a,0x6b, 0x1,0x4a,0x7a, 0x2,0x24,0x56,
+  0x1,0x4a,0x69, 0x1,0x4a,0x6a, 0x2,0x27,0x63, 0x2,0x24,0x4f,
+  0x1,0x4a,0x71, 0x1,0x4a,0x7c, 0x2,0x24,0x5d, 0x2,0x24,0x50,
+  0x1,0x4a,0x6f, 0x3,0x26,0x4d, 0x1,0x4a,0x74, 0x2,0x27,0x4f,
+  0x1,0x4a,0x7d, 0x2,0x24,0x57, 0x1,0x4a,0x73, 0x3,0x29,0x63,
+  0x1,0x4a,0x7e, 0x1,0x4a,0x67, 0x2,0x24,0x54, 0x1,0x4a,0x6c,
+  0x2,0x24,0x58, 0x2,0x27,0x64, 0x3,0x26,0x4e, 0x3,0x26,0x52,
+  0x3,0x26,0x5c, 0x3,0x26,0x59, 0x3,0x26,0x56, 0xf,0x24,0x68,
+  0x3,0x26,0x5b, 0x1,0x4e,0x4d, 0x1,0x4e,0x5d, 0x2,0x27,0x56,
+  0x1,0x4e,0x54, 0x3,0x2d,0x4e, 0x2,0x27,0x6b, 0x1,0x4e,0x45,
+  0x3,0x29,0x6b, 0x1,0x4e,0x48, 0x2,0x27,0x62, 0x4,0x27,0x26,
+  0x2,0x27,0x54, 0x2,0x27,0x58, 0x1,0x4e,0x50, 0x1,0x4e,0x52,
+  0x2,0x27,0x5b, 0x1,0x4e,0x59, 0x1,0x4e,0x4b, 0x1,0x4e,0x49,
+  0x1,0x4e,0x4a, 0x1,0x4e,0x58, 0x2,0x27,0x67, 0x1,0x4e,0x53,
+  0x2,0x27,0x5a, 0x2,0x27,0x5c, 0x1,0x4e,0x51, 0x1,0x4e,0x56,
+  0x2,0x27,0x5d, 0x2,0x27,0x6a, 0x3,0x29,0x6d, 0x1,0x51,0x78,
+  0x1,0x4e,0x5c, 0x4,0x26,0x7d, 0x1,0x4e,0x46, 0x2,0x27,0x69,
+  0x3,0x29,0x6c, 0x2,0x27,0x6d, 0x2,0x27,0x59, 0x2,0x27,0x6f,
+  0x2,0x27,0x60, 0x1,0x4e,0x4f, 0x2,0x27,0x55, 0x1,0x4e,0x4e,
+  0x1,0x4e,0x60, 0x1,0x4e,0x55, 0x3,0x29,0x6a, 0x2,0x27,0x53,
+  0x2,0x2b,0x57, 0x1,0x4e,0x5b, 0x1,0x4e,0x5f, 0x2,0x27,0x61,
+  0x2,0x27,0x66, 0x3,0x29,0x65, 0x1,0x4e,0x61, 0x1,0x4e,0x5a,
+  0x1,0x4e,0x4c, 0x1,0x4e,0x42, 0x3,0x29,0x69, 0x1,0x4e,0x47,
+  0x4,0x26,0x7b, 0x2,0x27,0x57, 0x1,0x4e,0x43, 0x2,0x27,0x6e,
+  0x3,0x29,0x67, 0x2,0x27,0x51, 0x2,0x27,0x50, 0x2,0x27,0x5e,
+  0x2,0x27,0x52, 0x1,0x4e,0x5e, 0x1,0x56,0x39, 0x1,0x4e,0x57,
+  0x2,0x27,0x5f, 0x1,0x4e,0x44, 0x3,0x2d,0x4f, 0x1,0x52,0x29,
+  0x2,0x27,0x6c, 0x3,0x2d,0x46, 0x2,0x2b,0x5e, 0x2,0x2b,0x61,
+  0x3,0x2d,0x50, 0x2,0x2b,0x64, 0x2,0x2b,0x59, 0x3,0x2d,0x48,
+  0x3,0x2d,0x4a, 0x2,0x2b,0x67, 0x2,0x2b,0x6a, 0x2,0x2b,0x6c,
+  0x2,0x2b,0x56, 0x1,0x51,0x79, 0x1,0x51,0x7e, 0x2,0x30,0x2c,
+  0x1,0x52,0x30, 0x2,0x2b,0x65, 0x2,0x2b,0x6d, 0x2,0x2b,0x5d,
+  0x2,0x2b,0x55, 0x3,0x2d,0x49, 0x3,0x2d,0x47, 0x3,0x2d,0x4d,
+  0x2,0x30,0x47, 0x1,0x52,0x23, 0x2,0x2b,0x62, 0x2,0x2b,0x5a,
+  0x2,0x2b,0x5c, 0x1,0x52,0x28, 0x3,0x31,0x7a, 0x2,0x2b,0x5f,
+  0x1,0x52,0x22, 0x2,0x2b,0x52, 0x2,0x2b,0x68, 0x3,0x2d,0x4b,
+  0x2,0x2b,0x6b, 0x3,0x2d,0x45, 0x3,0x2d,0x57, 0x1,0x51,0x7d,
+  0x3,0x2d,0x53, 0x1,0x52,0x2b, 0x2,0x2b,0x4f, 0x1,0x52,0x2d,
+  0x1,0x51,0x7b, 0x1,0x52,0x31, 0x2,0x2b,0x69, 0x2,0x2b,0x51,
+  0x1,0x52,0x2e, 0x2,0x30,0x41, 0x2,0x27,0x68, 0x1,0x52,0x21,
+  0x1,0x51,0x7a, 0x2,0x2b,0x58, 0x2,0x2b,0x50, 0x1,0x52,0x2f,
+  0x1,0x52,0x27, 0x2,0x2b,0x63, 0x1,0x52,0x2c, 0x1,0x52,0x2a,
+  0x2,0x2b,0x5b, 0x1,0x52,0x24, 0x2,0x2b,0x53, 0x1,0x52,0x25,
+  0x1,0x52,0x26, 0x2,0x2b,0x54, 0x2,0x2b,0x66, 0x1,0x51,0x7c,
+  0x2,0x2b,0x60, 0x4,0x2a,0x21, 0x3,0x2d,0x55, 0x3,0x2d,0x51,
+  0x3,0x31,0x77, 0x3,0x31,0x73, 0x2,0x30,0x2f, 0x1,0x56,0x41,
+  0x1,0x56,0x46, 0x3,0x31,0x79, 0x3,0x32,0x26, 0x3,0x31,0x76,
+  0x2,0x30,0x38, 0x2,0x30,0x3e, 0x2,0x30,0x3a, 0x2,0x30,0x2d,
+  0x2,0x30,0x30, 0x2,0x30,0x29, 0x2,0x30,0x2a, 0x1,0x56,0x4d,
+  0x1,0x56,0x3e, 0x2,0x30,0x39, 0x2,0x30,0x42, 0x1,0x56,0x48,
+  0x1,0x56,0x3a, 0x3,0x31,0x6f, 0x1,0x56,0x43, 0x2,0x30,0x31,
+  0x1,0x56,0x45, 0x2,0x30,0x32, 0x2,0x30,0x3c, 0x3,0x32,0x22,
+  0x3,0x32,0x25, 0x3,0x31,0x72, 0x1,0x56,0x47, 0x2,0x30,0x4b,
+  0x2,0x30,0x2b, 0x1,0x56,0x40, 0x1,0x56,0x3f, 0x1,0x56,0x4b,
+  0x2,0x30,0x28, 0x2,0x30,0x49, 0x2,0x30,0x3d, 0x2,0x30,0x4a,
+  0x2,0x30,0x44, 0x2,0x30,0x36, 0x2,0x30,0x45, 0x3,0x32,0x21,
+  0x2,0x30,0x3f, 0x2,0x30,0x48, 0x2,0x30,0x46, 0x1,0x56,0x4c,
+  0x2,0x30,0x37, 0x1,0x56,0x3d, 0x1,0x56,0x3c, 0x1,0x56,0x44,
+  0x1,0x56,0x4a, 0x2,0x30,0x43, 0x1,0x56,0x49, 0x2,0x30,0x34,
+  0x1,0x5b,0x48, 0x3,0x31,0x78, 0x2,0x30,0x4c, 0x2,0x30,0x33,
+  0x2,0x30,0x2e, 0x1,0x56,0x42, 0x1,0x56,0x4e, 0x1,0x56,0x3b,
+  0x3,0x32,0x27, 0x2,0x30,0x3b, 0x2,0x30,0x40, 0x3,0x31,0x7d,
+  0x3,0x31,0x7b, 0x3,0x31,0x7c, 0x3,0x65,0x3d, 0x1,0x5b,0x6a,
+  0x2,0x36,0x45, 0x2,0x36,0x49, 0x3,0x36,0x6f, 0x1,0x5b,0x57,
+  0x1,0x5b,0x55, 0x3,0x36,0x7a, 0x3,0x37,0x21, 0x1,0x5b,0x4c,
+  0x2,0x36,0x47, 0x2,0x36,0x46, 0x1,0x5b,0x60, 0x3,0x3c,0x50,
+  0x2,0x36,0x4c, 0x1,0x5b,0x5a, 0x3,0x36,0x72, 0x2,0x36,0x5e,
+  0x2,0x36,0x6a, 0x1,0x5b,0x49, 0x2,0x36,0x5b, 0x2,0x36,0x54,
+  0x1,0x5b,0x6c, 0x2,0x36,0x44, 0x3,0x36,0x6a, 0x2,0x36,0x60,
+  0x3,0x36,0x6b, 0x1,0x5b,0x69, 0x1,0x5b,0x5d, 0x1,0x5b,0x68,
+  0x1,0x5b,0x53, 0x2,0x36,0x50, 0x2,0x36,0x62, 0x2,0x36,0x5a,
+  0x1,0x5b,0x54, 0x1,0x5b,0x4e, 0x2,0x36,0x68, 0x3,0x36,0x6c,
+  0x2,0x36,0x61, 0x2,0x36,0x63, 0x1,0x5b,0x56, 0x1,0x5b,0x5e,
+  0x2,0x36,0x65, 0x2,0x36,0x4e, 0x2,0x36,0x5f, 0x2,0x36,0x53,
+  0x2,0x36,0x67, 0x1,0x5b,0x63, 0x1,0x5b,0x4b, 0x1,0x5b,0x61,
+  0x2,0x36,0x58, 0x2,0x36,0x56, 0x2,0x36,0x57, 0x1,0x5b,0x58,
+  0x2,0x36,0x52, 0x2,0x36,0x51, 0x1,0x5b,0x4d, 0x2,0x36,0x4b,
+  0x2,0x36,0x69, 0x1,0x5b,0x4f, 0x2,0x36,0x55, 0x1,0x5b,0x6d,
+  0x3,0x36,0x74, 0x1,0x5b,0x67, 0x2,0x36,0x4a, 0x1,0x5b,0x64,
+  0x1,0x5b,0x62, 0x1,0x5b,0x6b, 0x2,0x36,0x5c, 0x1,0x5b,0x66,
+  0x2,0x30,0x35, 0x2,0x36,0x5d, 0x1,0x5b,0x65, 0x2,0x36,0x64,
+  0x1,0x5b,0x4a, 0x2,0x36,0x59, 0x1,0x5b,0x5c, 0x2,0x36,0x4d,
+  0x1,0x5b,0x5b, 0x3,0x36,0x7c, 0x1,0x5b,0x59, 0x1,0x5b,0x51,
+  0x1,0x5b,0x50, 0x2,0x3d,0x2c, 0x2,0x36,0x66, 0x3,0x3c,0x5d,
+  0x3,0x37,0x28, 0x2,0x36,0x4f, 0x3,0x37,0x26, 0x3,0x37,0x23,
+  0x2,0x3d,0x41, 0x3,0x36,0x70, 0x1,0x5b,0x52, 0x3,0x36,0x77,
+  0x3,0x37,0x24, 0x3,0x36,0x76, 0x3,0x37,0x25, 0x3,0x36,0x79,
+  0x4,0x32,0x6d, 0x3,0x36,0x7d, 0x3,0x65,0x3e, 0x3,0x37,0x29,
+  0xf,0x36,0x29, 0x3,0x37,0x27, 0x3,0x3c,0x54, 0x1,0x60,0x47,
+  0x1,0x5b,0x5f, 0x1,0x60,0x35, 0x2,0x3d,0x3b, 0x1,0x60,0x43,
+  0x3,0x3c,0x52, 0x2,0x3d,0x2f, 0x1,0x60,0x32, 0x1,0x60,0x2e,
+  0x2,0x3d,0x4d, 0x1,0x60,0x34, 0x1,0x60,0x38, 0x1,0x60,0x33,
+  0x1,0x60,0x3c, 0x2,0x3d,0x51, 0x2,0x3d,0x48, 0x3,0x3c,0x6b,
+  0x3,0x3c,0x6d, 0x2,0x3d,0x36, 0x1,0x60,0x41, 0x1,0x60,0x3b,
+  0x2,0x3d,0x42, 0x1,0x60,0x2b, 0x2,0x3d,0x4e, 0x2,0x3d,0x47,
+  0x1,0x60,0x2f, 0x2,0x3d,0x3c, 0x1,0x60,0x3e, 0x2,0x3d,0x59,
+  0x2,0x3d,0x5a, 0x4,0x38,0x5b, 0x1,0x60,0x2c, 0x2,0x3d,0x4c,
+  0x1,0x60,0x40, 0x2,0x3d,0x40, 0x2,0x3d,0x32, 0x2,0x3d,0x33,
+  0x1,0x60,0x44, 0x2,0x3d,0x37, 0x2,0x3d,0x3e, 0x2,0x3d,0x38,
+  0x3,0x3c,0x5a, 0x1,0x60,0x42, 0x1,0x60,0x4a, 0x2,0x3d,0x34,
+  0x2,0x3d,0x2d, 0x2,0x3d,0x2e, 0x3,0x3c,0x56, 0x2,0x3d,0x30,
+  0x1,0x60,0x31, 0x2,0x3d,0x3d, 0x3,0x3c,0x6e, 0x1,0x60,0x3f,
+  0x1,0x60,0x48, 0x3,0x3c,0x58, 0x3,0x3c,0x69, 0x2,0x3d,0x3f,
+  0x2,0x3d,0x57, 0x2,0x3d,0x4f, 0x1,0x60,0x2d, 0x2,0x3d,0x55,
+  0x1,0x60,0x39, 0x3,0x3c,0x66, 0x1,0x60,0x37, 0x3,0x3c,0x64,
+  0x2,0x3d,0x5b, 0x1,0x60,0x36, 0x2,0x3d,0x45, 0x2,0x3d,0x39,
+  0x2,0x3d,0x43, 0x1,0x60,0x4d, 0x2,0x3d,0x49, 0x2,0x3d,0x46,
+  0x2,0x3d,0x35, 0x1,0x60,0x49, 0x2,0x3d,0x53, 0x2,0x3d,0x50,
+  0x2,0x3d,0x58, 0x1,0x60,0x30, 0x2,0x3d,0x44, 0x1,0x60,0x4c,
+  0x3,0x3c,0x5b, 0x2,0x3d,0x4b, 0x3,0x42,0x3a, 0x3,0x3c,0x60,
+  0x1,0x60,0x3a, 0x1,0x60,0x3d, 0x3,0x3c,0x5c, 0x2,0x3d,0x4a,
+  0x1,0x60,0x4b, 0x2,0x3d,0x3a, 0x2,0x36,0x48, 0x3,0x3c,0x51,
+  0x3,0x3c,0x6c, 0x2,0x3d,0x54, 0x2,0x3d,0x52, 0x2,0x3d,0x56,
+  0xf,0x3c,0x5d, 0x3,0x3c,0x62, 0x3,0x65,0x42, 0x4,0x38,0x5e,
+  0x3,0x3c,0x63, 0x3,0x3c,0x68, 0xf,0x3c,0x47, 0x3,0x65,0x40,
+  0x4,0x38,0x5f, 0x2,0x3d,0x31, 0x1,0x60,0x46, 0x3,0x65,0x3f,
+  0x3,0x65,0x41, 0x2,0x44,0x47, 0x2,0x44,0x46, 0x2,0x44,0x2c,
+  0x1,0x64,0x63, 0x3,0x42,0x30, 0x2,0x44,0x45, 0x2,0x44,0x2f,
+  0x2,0x44,0x30, 0x4,0x3e,0x3f, 0x1,0x64,0x6d, 0x2,0x44,0x4e,
+  0x1,0x64,0x68, 0x2,0x44,0x44, 0x3,0x42,0x33, 0x2,0x44,0x29,
+  0x1,0x64,0x6e, 0x1,0x64,0x64, 0x2,0x44,0x38, 0x2,0x44,0x2e,
+  0x2,0x44,0x31, 0x2,0x44,0x49, 0x1,0x64,0x5e, 0x2,0x44,0x50,
+  0x2,0x44,0x48, 0x1,0x64,0x67, 0x2,0x44,0x3d, 0x1,0x64,0x72,
+  0x3,0x42,0x2e, 0x3,0x42,0x36, 0x1,0x64,0x71, 0x1,0x64,0x6b,
+  0x3,0x42,0x40, 0x4,0x3e,0x36, 0x2,0x44,0x4f, 0x1,0x64,0x5f,
+  0x2,0x44,0x3b, 0x2,0x44,0x32, 0x2,0x44,0x3f, 0x2,0x44,0x4b,
+  0x1,0x64,0x73, 0x3,0x42,0x39, 0x1,0x64,0x61, 0x2,0x44,0x3a,
+  0x3,0x42,0x2d, 0x2,0x44,0x33, 0x1,0x64,0x6a, 0x3,0x42,0x31,
+  0x1,0x64,0x69, 0x2,0x44,0x36, 0x2,0x44,0x40, 0x2,0x44,0x4a,
+  0x2,0x44,0x2d, 0x2,0x44,0x37, 0x1,0x64,0x62, 0x2,0x44,0x41,
+  0x1,0x64,0x6f, 0x1,0x64,0x66, 0x2,0x44,0x34, 0x1,0x64,0x65,
+  0x2,0x44,0x2b, 0x2,0x44,0x39, 0x2,0x44,0x4d, 0x1,0x60,0x45,
+  0x1,0x69,0x57, 0x2,0x44,0x3c, 0x2,0x4b,0x34, 0x2,0x44,0x3e,
+  0x2,0x44,0x4c, 0x1,0x64,0x6c, 0x2,0x44,0x35, 0x1,0x64,0x60,
+  0x1,0x64,0x70, 0x1,0x6d,0x5a, 0x2,0x44,0x2a, 0x6,0x54,0x4e,
+  0x2,0x44,0x43, 0x3,0x42,0x44, 0x3,0x42,0x3e, 0x3,0x42,0x47,
+  0x2,0x44,0x42, 0x3,0x42,0x3d, 0x3,0x42,0x45, 0x3,0x42,0x3f,
+  0x3,0x42,0x3b, 0x3,0x42,0x46, 0x2,0x4b,0x50, 0x1,0x69,0x54,
+  0x2,0x4b,0x45, 0x2,0x4b,0x4a, 0x1,0x69,0x49, 0x3,0x47,0x56,
+  0x2,0x4b,0x36, 0x1,0x69,0x56, 0x3,0x47,0x57, 0x1,0x69,0x40,
+  0x2,0x4b,0x35, 0x2,0x4b,0x56, 0x1,0x69,0x58, 0x2,0x4b,0x39,
+  0x2,0x4b,0x49, 0x3,0x47,0x65, 0x2,0x4b,0x3b, 0x2,0x4b,0x59,
+  0x2,0x4b,0x55, 0x1,0x69,0x3e, 0x1,0x69,0x48, 0x2,0x51,0x5b,
+  0x1,0x69,0x55, 0x1,0x69,0x46, 0x2,0x4b,0x37, 0x3,0x47,0x63,
+  0x2,0x4b,0x54, 0x1,0x69,0x4a, 0x2,0x4b,0x51, 0x2,0x4b,0x5e,
+  0x2,0x4b,0x3d, 0x2,0x4b,0x46, 0x3,0x4c,0x78, 0x3,0x47,0x5b,
+  0x2,0x4b,0x5c, 0x2,0x4b,0x52, 0x1,0x69,0x45, 0x3,0x4c,0x6a,
+  0x3,0x47,0x64, 0x2,0x4b,0x44, 0x1,0x69,0x3f, 0x1,0x69,0x3d,
+  0x1,0x69,0x4f, 0x4,0x44,0x43, 0x3,0x47,0x5f, 0x2,0x4b,0x42,
+  0x2,0x4b,0x3f, 0x2,0x4b,0x40, 0x3,0x47,0x5a, 0x2,0x4b,0x58,
+  0x3,0x47,0x5c, 0x2,0x4b,0x5d, 0x2,0x4b,0x5b, 0x1,0x69,0x43,
+  0x2,0x4b,0x5f, 0x1,0x69,0x47, 0x1,0x69,0x4e, 0x4,0x44,0x44,
+  0x2,0x4b,0x38, 0x2,0x51,0x43, 0x2,0x4b,0x41, 0x3,0x47,0x5e,
+  0x1,0x69,0x41, 0x1,0x69,0x53, 0x1,0x69,0x50, 0x1,0x69,0x44,
+  0x2,0x4b,0x4b, 0x2,0x4b,0x3c, 0x1,0x69,0x51, 0x2,0x4b,0x4d,
+  0x1,0x69,0x4b, 0x1,0x69,0x4d, 0x1,0x69,0x3c, 0x3,0x47,0x5d,
+  0x2,0x4b,0x4f, 0x2,0x4b,0x47, 0x2,0x4b,0x3a, 0x1,0x69,0x4c,
+  0x2,0x4b,0x57, 0x2,0x4b,0x5a, 0x2,0x4b,0x43, 0x2,0x4b,0x4e,
+  0x3,0x4c,0x74, 0x1,0x69,0x42, 0x1,0x6d,0x49, 0x2,0x4b,0x4c,
+  0x2,0x51,0x42, 0x3,0x47,0x62, 0x2,0x4b,0x53, 0x3,0x47,0x61,
+  0x4,0x44,0x52, 0xf,0x4f,0x79, 0x3,0x65,0x44, 0x3,0x65,0x45,
+  0x3,0x47,0x66, 0x3,0x65,0x43, 0x2,0x4b,0x3e, 0x2,0x51,0x4c,
+  0x2,0x51,0x56, 0x1,0x6d,0x4c, 0x2,0x51,0x55, 0x2,0x51,0x61,
+  0x1,0x6d,0x4e, 0x2,0x51,0x53, 0x4,0x4a,0x58, 0x2,0x51,0x57,
+  0x1,0x6d,0x59, 0x3,0x4c,0x7d, 0x2,0x51,0x4e, 0x1,0x6d,0x51,
+  0x3,0x4c,0x73, 0x2,0x51,0x5a, 0x2,0x57,0x7b, 0x1,0x6d,0x5d,
+  0x1,0x6d,0x5c, 0x2,0x51,0x5c, 0x2,0x51,0x4b, 0x2,0x51,0x66,
+  0x1,0x6d,0x57, 0x3,0x4c,0x6b, 0x1,0x6d,0x4d, 0x2,0x51,0x5f,
+  0x4,0x4a,0x69, 0x2,0x51,0x63, 0x2,0x51,0x68, 0x2,0x51,0x5d,
+  0x2,0x51,0x51, 0x1,0x6d,0x50, 0x1,0x6d,0x53, 0x1,0x6d,0x5b,
+  0x1,0x6d,0x56, 0x3,0x4c,0x75, 0x2,0x51,0x54, 0x2,0x4b,0x48,
+  0x3,0x4c,0x7e, 0x3,0x4c,0x6c, 0x2,0x51,0x50, 0x2,0x51,0x67,
+  0x1,0x6d,0x52, 0x3,0x4c,0x79, 0x1,0x6d,0x55, 0x2,0x51,0x69,
+  0x1,0x6d,0x4a, 0x2,0x51,0x5e, 0x2,0x51,0x44, 0x2,0x51,0x64,
+  0x1,0x74,0x2a, 0x3,0x4c,0x7a, 0x2,0x51,0x52, 0x4,0x50,0x75,
+  0x1,0x6d,0x4b, 0x2,0x51,0x4d, 0x1,0x6d,0x4f, 0x2,0x51,0x45,
+  0x1,0x69,0x52, 0x2,0x51,0x49, 0x4,0x4a,0x57, 0x2,0x51,0x62,
+  0x2,0x51,0x4a, 0x2,0x51,0x48, 0x1,0x6d,0x54, 0x3,0x4c,0x7b,
+  0x2,0x51,0x60, 0x3,0x4c,0x77, 0x2,0x51,0x47, 0x2,0x51,0x59,
+  0x2,0x51,0x58, 0x2,0x51,0x65, 0x2,0x51,0x4f, 0x1,0x6d,0x58,
+  0x4,0x4a,0x64, 0x3,0x65,0x47, 0xf,0x4f,0x7d, 0x3,0x65,0x46,
+  0x2,0x57,0x7e, 0x3,0x51,0x56, 0x1,0x71,0x33, 0x1,0x71,0x29,
+  0x2,0x58,0x2c, 0x2,0x57,0x76, 0x1,0x71,0x2b, 0x2,0x58,0x24,
+  0x1,0x71,0x32, 0x1,0x71,0x2d, 0x2,0x58,0x22, 0x2,0x5d,0x3b,
+  0x2,0x58,0x28, 0x2,0x58,0x2e, 0x2,0x58,0x27, 0x2,0x57,0x74,
+  0x2,0x58,0x25, 0x2,0x58,0x30, 0x2,0x58,0x32, 0x1,0x71,0x28,
+  0x2,0x58,0x31, 0x1,0x71,0x2e, 0x1,0x71,0x34, 0x3,0x51,0x54,
+  0x1,0x71,0x31, 0x3,0x51,0x58, 0x2,0x58,0x2b, 0x1,0x71,0x30,
+  0x2,0x58,0x26, 0x3,0x51,0x4d, 0x2,0x57,0x78, 0x2,0x57,0x7d,
+  0x3,0x51,0x50, 0x2,0x58,0x2a, 0x1,0x71,0x2f, 0x1,0x71,0x2c,
+  0x1,0x71,0x27, 0x1,0x71,0x2a, 0x2,0x57,0x7c, 0x4,0x51,0x22,
+  0x2,0x51,0x46, 0x2,0x57,0x77, 0x2,0x57,0x7a, 0x2,0x58,0x2d,
+  0x2,0x58,0x21, 0x2,0x57,0x75, 0x2,0x5d,0x3a, 0x2,0x58,0x2f,
+  0x2,0x57,0x79, 0x2,0x58,0x29, 0x3,0x4c,0x71, 0x3,0x51,0x55,
+  0x2,0x5d,0x3d, 0x1,0x74,0x2e, 0x3,0x55,0x30, 0x3,0x55,0x2f,
+  0x1,0x74,0x22, 0x3,0x55,0x35, 0x3,0x55,0x36, 0x1,0x74,0x26,
+  0x2,0x5d,0x3f, 0x2,0x5d,0x45, 0x2,0x5d,0x43, 0x1,0x74,0x24,
+  0x1,0x74,0x25, 0x1,0x74,0x2c, 0x2,0x5d,0x46, 0x2,0x5d,0x3e,
+  0x1,0x74,0x27, 0x3,0x55,0x31, 0x2,0x5d,0x42, 0x2,0x5d,0x41,
+  0x2,0x5d,0x47, 0x1,0x74,0x2d, 0x3,0x55,0x37, 0x1,0x74,0x28,
+  0x1,0x74,0x2b, 0x2,0x5d,0x40, 0x1,0x74,0x2f, 0x1,0x74,0x29,
+  0x1,0x74,0x30, 0x1,0x74,0x23, 0x2,0x5d,0x44, 0x3,0x5a,0x55,
+  0x2,0x5d,0x3c, 0x3,0x51,0x59, 0x3,0x55,0x39, 0x2,0x62,0x25,
+  0x3,0x65,0x48, 0x1,0x76,0x5d, 0x2,0x62,0x22, 0x2,0x62,0x24,
+  0x3,0x58,0x28, 0x1,0x76,0x5b, 0x2,0x61,0x7e, 0x2,0x62,0x21,
+  0x2,0x61,0x7a, 0x3,0x58,0x2a, 0x3,0x58,0x27, 0x2,0x58,0x23,
+  0x2,0x61,0x7b, 0x1,0x76,0x5c, 0x2,0x61,0x77, 0x3,0x58,0x26,
+  0x1,0x76,0x59, 0x2,0x62,0x26, 0x1,0x76,0x5a, 0x2,0x61,0x78,
+  0x2,0x61,0x79, 0x2,0x61,0x7d, 0x1,0x76,0x5f, 0x3,0x58,0x29,
+  0x1,0x76,0x5e, 0x4,0x5b,0x5e, 0x3,0x58,0x2b, 0x2,0x61,0x7c,
+  0x1,0x78,0x45, 0x2,0x65,0x6a, 0x2,0x65,0x70, 0x1,0x78,0x46,
+  0x2,0x65,0x67, 0x1,0x78,0x43, 0x1,0x78,0x40, 0x2,0x65,0x72,
+  0x1,0x78,0x44, 0x3,0x5a,0x52, 0x1,0x78,0x41, 0x2,0x65,0x69,
+  0x2,0x65,0x6c, 0x2,0x65,0x6d, 0x2,0x65,0x6e, 0x2,0x65,0x71,
+  0x3,0x5a,0x54, 0x2,0x62,0x23, 0x2,0x65,0x68, 0x1,0x78,0x42,
+  0x2,0x65,0x6f, 0x2,0x69,0x34, 0x2,0x65,0x6b, 0x3,0x5a,0x53,
+  0x3,0x65,0x4a, 0x3,0x65,0x49, 0x2,0x69,0x2b, 0x1,0x79,0x75,
+  0x2,0x69,0x2e, 0x1,0x79,0x76, 0x2,0x69,0x37, 0x2,0x69,0x2d,
+  0x2,0x69,0x2a, 0x3,0x5c,0x51, 0x2,0x69,0x2c, 0x2,0x69,0x30,
+  0x2,0x69,0x33, 0x2,0x69,0x32, 0x2,0x69,0x36, 0x2,0x69,0x29,
+  0x3,0x5c,0x4f, 0x1,0x79,0x74, 0x2,0x69,0x31, 0x2,0x69,0x35,
+  0x2,0x69,0x38, 0x2,0x69,0x2f, 0x2,0x6b,0x61, 0x2,0x6b,0x62,
+  0x2,0x6b,0x66, 0x2,0x6b,0x67, 0x3,0x5e,0x3c, 0x2,0x6b,0x64,
+  0x2,0x6b,0x65, 0x2,0x6b,0x63, 0x3,0x5e,0x3a, 0x1,0x7a,0x74,
+  0x3,0x5e,0x3b, 0x1,0x7b,0x64, 0x2,0x6d,0x59, 0x3,0x60,0x36,
+  0x3,0x5f,0x52, 0x2,0x6d,0x56, 0x2,0x6d,0x57, 0x2,0x6d,0x58,
+  0x1,0x7b,0x65, 0x3,0x60,0x37, 0x2,0x6f,0x34, 0x2,0x6f,0x33,
+  0x3,0x65,0x4b, 0x2,0x70,0x3d, 0x1,0x7c,0x60, 0x2,0x70,0x3b,
+  0x2,0x70,0x3e, 0x2,0x70,0x3c, 0x2,0x71,0x25, 0x1,0x7d,0x24,
+  0x1,0x7d,0x32, 0x2,0x71,0x71, 0x2,0x71,0x5b, 0x3,0x61,0x79,
+  0x2,0x71,0x70, 0x2,0x72,0x3e, 0x2,0x72,0x3f, 0x1,0x45,0x56,
+  0x4,0x21,0x50, 0x3,0x24,0x28, 0x3,0x24,0x26, 0x1,0x48,0x48,
+  0x2,0x22,0x61, 0x3,0x24,0x27, 0x3,0x24,0x2b, 0x2,0x24,0x5e,
+  0x3,0x26,0x62, 0x1,0x4b,0x22, 0x3,0x26,0x5f, 0x1,0x4b,0x25,
+  0x3,0x26,0x5e, 0x2,0x24,0x5f, 0x3,0x26,0x63, 0x1,0x4b,0x23,
+  0x1,0x4b,0x24, 0x3,0x26,0x60, 0xf,0x24,0x71, 0x3,0x29,0x77,
+  0x2,0x27,0x78, 0x2,0x27,0x7a, 0x2,0x27,0x75, 0x2,0x27,0x72,
+  0x2,0x27,0x74, 0x3,0x29,0x74, 0x3,0x29,0x70, 0x3,0x29,0x75,
+  0x1,0x4e,0x65, 0x3,0x29,0x6f, 0x3,0x29,0x79, 0x3,0x29,0x76,
+  0x1,0x4e,0x63, 0x3,0x29,0x72, 0x3,0x29,0x71, 0x2,0x27,0x76,
+  0x1,0x4e,0x64, 0x2,0x27,0x73, 0x2,0x27,0x70, 0x1,0x4e,0x62,
+  0x2,0x27,0x77, 0x4,0x27,0x29, 0x2,0x27,0x71, 0x1,0x4e,0x66,
+  0x2,0x27,0x79, 0x4,0x27,0x2b, 0x2,0x2b,0x6f, 0x3,0x2d,0x5e,
+  0x2,0x2b,0x73, 0x3,0x2d,0x5c, 0x3,0x2d,0x5a, 0x1,0x52,0x3a,
+  0x3,0x2d,0x58, 0x4,0x2a,0x26, 0x3,0x2d,0x65, 0x3,0x2d,0x62,
+  0x2,0x2b,0x76, 0x3,0x2d,0x5f, 0x1,0x52,0x32, 0x1,0x52,0x35,
+  0x1,0x52,0x37, 0x1,0x52,0x39, 0x1,0x52,0x36, 0x2,0x2b,0x72,
+  0x2,0x2b,0x71, 0x3,0x2d,0x64, 0x1,0x52,0x34, 0x2,0x2b,0x74,
+  0x2,0x2b,0x75, 0x3,0x2d,0x63, 0x2,0x2b,0x6e, 0x1,0x52,0x38,
+  0x3,0x2d,0x68, 0x1,0x52,0x33, 0x3,0x2d,0x5d, 0x2,0x2b,0x70,
+  0x3,0x65,0x4d, 0x4,0x2a,0x28, 0x3,0x32,0x28, 0x2,0x30,0x5a,
+  0x2,0x30,0x5b, 0x2,0x30,0x5c, 0x1,0x56,0x53, 0x4,0x2d,0x75,
+  0x1,0x56,0x4f, 0x2,0x30,0x51, 0x3,0x32,0x2a, 0x2,0x30,0x59,
+  0x2,0x30,0x5e, 0x1,0x56,0x54, 0x3,0x32,0x2b, 0x2,0x30,0x4f,
+  0x2,0x30,0x55, 0x2,0x30,0x4e, 0x2,0x30,0x58, 0x3,0x32,0x31,
+  0x3,0x32,0x2f, 0x2,0x30,0x54, 0x1,0x56,0x50, 0x1,0x56,0x52,
+  0x2,0x30,0x5d, 0x3,0x32,0x29, 0x2,0x30,0x4d, 0x2,0x30,0x50,
+  0x2,0x30,0x56, 0x3,0x32,0x2d, 0x2,0x30,0x57, 0x2,0x30,0x5f,
+  0x2,0x30,0x53, 0x3,0x32,0x2c, 0x1,0x56,0x51, 0x3,0x65,0x4f,
+  0x3,0x65,0x4e, 0x3,0x32,0x30, 0x1,0x5b,0x72, 0x2,0x36,0x71,
+  0x3,0x37,0x30, 0x3,0x37,0x32, 0x2,0x36,0x73, 0x2,0x36,0x6f,
+  0x3,0x37,0x2f, 0x2,0x36,0x7b, 0x2,0x36,0x6d, 0x2,0x36,0x7a,
+  0x1,0x5b,0x6e, 0x2,0x36,0x6b, 0x2,0x3d,0x5f, 0x2,0x36,0x75,
+  0x1,0x5b,0x71, 0x3,0x37,0x35, 0x2,0x36,0x76, 0x2,0x36,0x79,
+  0x3,0x37,0x2e, 0x2,0x36,0x7d, 0x3,0x37,0x2c, 0x2,0x36,0x72,
+  0x4,0x32,0x72, 0x2,0x36,0x77, 0x3,0x37,0x2d, 0x3,0x37,0x31,
+  0x1,0x5b,0x6f, 0x1,0x5b,0x70, 0x2,0x36,0x7c, 0x2,0x36,0x70,
+  0x2,0x36,0x6c, 0x2,0x36,0x7e, 0x3,0x37,0x33, 0x2,0x36,0x74,
+  0x3,0x65,0x50, 0x3,0x65,0x51, 0x2,0x36,0x78, 0x2,0x36,0x6e,
+  0x1,0x60,0x4e, 0x1,0x60,0x4f, 0x2,0x3d,0x69, 0x1,0x60,0x55,
+  0x3,0x3c,0x74, 0x2,0x3d,0x5d, 0x2,0x3d,0x66, 0x2,0x3d,0x5c,
+  0x1,0x60,0x52, 0x2,0x3d,0x64, 0x2,0x3d,0x62, 0x3,0x3c,0x7d,
+  0x2,0x3d,0x63, 0x1,0x60,0x50, 0x3,0x3c,0x7c, 0x2,0x3d,0x67,
+  0xf,0x3c,0x7e, 0x3,0x3c,0x6f, 0x3,0x3c,0x7a, 0x3,0x3c,0x72,
+  0x3,0x3d,0x21, 0x2,0x3d,0x60, 0x2,0x3d,0x5e, 0x1,0x60,0x51,
+  0x2,0x3d,0x61, 0x2,0x3d,0x65, 0x3,0x3c,0x7b, 0x3,0x3c,0x79,
+  0x3,0x3c,0x71, 0x1,0x60,0x53, 0x3,0x3c,0x73, 0x3,0x3c,0x77,
+  0x3,0x65,0x53, 0x2,0x3d,0x68, 0x3,0x65,0x54, 0x3,0x65,0x55,
+  0x3,0x65,0x52, 0x2,0x44,0x56, 0x2,0x44,0x5d, 0x2,0x44,0x5f,
+  0x2,0x44,0x65, 0x3,0x42,0x57, 0x1,0x65,0x22, 0x2,0x44,0x51,
+  0x3,0x42,0x4c, 0x1,0x64,0x78, 0x3,0x42,0x4e, 0x2,0x44,0x60,
+  0x1,0x64,0x7d, 0x2,0x44,0x66, 0x1,0x64,0x74, 0x3,0x42,0x51,
+  0x2,0x44,0x63, 0x3,0x42,0x58, 0x2,0x44,0x53, 0x2,0x44,0x64,
+  0x2,0x44,0x52, 0x1,0x65,0x24, 0x3,0x42,0x52, 0x2,0x44,0x5e,
+  0x1,0x64,0x75, 0x2,0x44,0x67, 0x3,0x48,0x3c, 0x1,0x64,0x7a,
+  0x2,0x44,0x57, 0x1,0x65,0x21, 0x2,0x44,0x62, 0x2,0x44,0x55,
+  0x2,0x44,0x5c, 0x2,0x44,0x58, 0x2,0x44,0x54, 0x1,0x64,0x77,
+  0x1,0x64,0x7e, 0x1,0x64,0x7c, 0x1,0x64,0x79, 0x1,0x65,0x23,
+  0x1,0x64,0x76, 0x2,0x44,0x5b, 0x3,0x42,0x4f, 0x1,0x64,0x7b,
+  0x3,0x42,0x59, 0x1,0x60,0x54, 0x3,0x42,0x49, 0x2,0x44,0x61,
+  0x3,0x65,0x59, 0x2,0x44,0x59, 0x3,0x42,0x53, 0x3,0x65,0x57,
+  0x3,0x65,0x58, 0x3,0x65,0x56, 0x2,0x44,0x5a, 0x4,0x44,0x57,
+  0x4,0x44,0x5b, 0x2,0x4b,0x67, 0x3,0x47,0x6f, 0x1,0x69,0x5b,
+  0x3,0x47,0x6e, 0x3,0x47,0x6c, 0x2,0x4b,0x63, 0x2,0x4b,0x69,
+  0x2,0x4b,0x65, 0x3,0x47,0x70, 0x1,0x69,0x5d, 0x2,0x4b,0x64,
+  0x2,0x4b,0x68, 0x2,0x4b,0x60, 0x3,0x47,0x72, 0x2,0x4b,0x62,
+  0x1,0x69,0x5c, 0x3,0x47,0x6a, 0x3,0x47,0x6d, 0x3,0x47,0x6b,
+  0x3,0x47,0x68, 0x2,0x4b,0x66, 0x2,0x4b,0x61, 0x3,0x47,0x67,
+  0x1,0x69,0x5e, 0x3,0x65,0x5b, 0x1,0x69,0x59, 0xf,0x49,0x4b,
+  0x3,0x65,0x5a, 0x2,0x4b,0x6a, 0xf,0x49,0x5f, 0x1,0x69,0x5a,
+  0x2,0x51,0x6f, 0x2,0x51,0x6c, 0x2,0x51,0x78, 0x2,0x51,0x72,
+  0x2,0x51,0x74, 0x1,0x6d,0x5e, 0x2,0x51,0x6e, 0x2,0x51,0x76,
+  0x3,0x4d,0x2a, 0x3,0x4d,0x24, 0x2,0x51,0x75, 0x2,0x51,0x73,
+  0x3,0x4d,0x29, 0x2,0x51,0x79, 0x1,0x6d,0x61, 0x2,0x51,0x70,
+  0x2,0x51,0x77, 0x3,0x4d,0x28, 0x1,0x6d,0x5f, 0x3,0x4d,0x25,
+  0x3,0x4d,0x22, 0x2,0x51,0x6b, 0x2,0x51,0x6d, 0x1,0x6d,0x60,
+  0x2,0x51,0x6a, 0x2,0x51,0x7a, 0x3,0x65,0x5c, 0x2,0x51,0x71,
+  0x3,0x51,0x62, 0x3,0x51,0x5a, 0x2,0x58,0x36, 0x1,0x71,0x3b,
+  0x3,0x51,0x60, 0x3,0x51,0x5c, 0x2,0x58,0x41, 0x2,0x58,0x3f,
+  0x1,0x71,0x35, 0x2,0x58,0x35, 0x2,0x58,0x38, 0x2,0x58,0x39,
+  0x2,0x58,0x34, 0x1,0x71,0x3f, 0x1,0x71,0x40, 0x2,0x58,0x33,
+  0x2,0x58,0x42, 0x2,0x58,0x3d, 0x1,0x71,0x39, 0x1,0x71,0x36,
+  0x2,0x58,0x3c, 0x2,0x58,0x3a, 0x3,0x51,0x63, 0x4,0x51,0x23,
+  0x1,0x71,0x3c, 0x2,0x58,0x3e, 0x1,0x71,0x37, 0x3,0x51,0x5e,
+  0x1,0x71,0x38, 0x3,0x51,0x66, 0x2,0x58,0x3b, 0x1,0x71,0x3a,
+  0x2,0x58,0x37, 0x7,0x2f,0x4f, 0x2,0x58,0x40, 0x1,0x71,0x3d,
+  0x2,0x58,0x43, 0x2,0x58,0x44, 0x1,0x71,0x3e, 0x3,0x65,0x5d,
+  0x3,0x65,0x5e, 0x1,0x74,0x32, 0x1,0x74,0x39, 0x2,0x5d,0x48,
+  0x2,0x5d,0x4e, 0x3,0x55,0x3c, 0x2,0x5d,0x4c, 0x1,0x74,0x35,
+  0x1,0x74,0x34, 0x1,0x74,0x31, 0x2,0x5d,0x4a, 0x3,0x55,0x3e,
+  0x3,0x55,0x43, 0x3,0x55,0x40, 0x1,0x74,0x37, 0x1,0x74,0x36,
+  0x1,0x74,0x33, 0x3,0x55,0x41, 0x2,0x5d,0x4d, 0x2,0x5d,0x49,
+  0x2,0x5d,0x4b, 0x3,0x55,0x42, 0x1,0x74,0x38, 0xf,0x5a,0x73,
+  0x1,0x76,0x63, 0x2,0x62,0x29, 0x3,0x58,0x2d, 0x1,0x76,0x60,
+  0x1,0x76,0x61, 0x2,0x62,0x2b, 0x1,0x76,0x62, 0x2,0x62,0x28,
+  0x3,0x58,0x2e, 0x2,0x62,0x27, 0x2,0x65,0x76, 0x2,0x62,0x2a,
+  0x3,0x5a,0x56, 0x2,0x65,0x77, 0x1,0x78,0x47, 0x2,0x65,0x75,
+  0x3,0x5a,0x57, 0x4,0x5f,0x7e, 0x2,0x65,0x74, 0x3,0x5c,0x59,
+  0x2,0x65,0x73, 0x1,0x78,0x48, 0x3,0x65,0x5f, 0x3,0x5c,0x56,
+  0x1,0x79,0x77, 0x3,0x5c,0x58, 0x3,0x5c,0x55, 0x2,0x69,0x39,
+  0x2,0x69,0x3a, 0x3,0x5a,0x58, 0x3,0x5c,0x53, 0x3,0x5c,0x57,
+  0x3,0x65,0x61, 0x2,0x6b,0x6a, 0x2,0x6b,0x69, 0x1,0x7a,0x75,
+  0x3,0x5f,0x53, 0x2,0x6b,0x68, 0x2,0x6d,0x5a, 0x2,0x6d,0x5b,
+  0x3,0x5f,0x54, 0x3,0x60,0x39, 0x2,0x6f,0x35, 0x2,0x70,0x3f,
+  0x3,0x61,0x43, 0x3,0x61,0x42, 0x2,0x71,0x26, 0x2,0x72,0x2c,
+  0x1,0x7d,0x46, 0x2,0x72,0x40, 0x1,0x45,0x57, 0x4,0x21,0x51,
+  0x1,0x4e,0x67, 0x1,0x4e,0x68, 0x3,0x2d,0x69, 0x4,0x2a,0x2a,
+  0x1,0x52,0x3b, 0x3,0x3d,0x22, 0x4,0x4a,0x6c, 0x1,0x74,0x3a,
+  0x1,0x45,0x58, 0x1,0x4e,0x69, 0x1,0x56,0x55, 0x1,0x65,0x25,
+  0x1,0x45,0x59, 0x3,0x2d,0x6b, 0x1,0x5b,0x73, 0x1,0x69,0x5f,
+  0x2,0x21,0x42, 0x3,0x29,0x7c, 0x2,0x2b,0x77, 0x2,0x30,0x60,
+  0x4,0x3e,0x4c, 0x2,0x4b,0x6b, 0x4,0x4a,0x6d, 0x1,0x74,0x3b,
+  0x1,0x45,0x5a, 0x1,0x4e,0x6a, 0x2,0x2b,0x78, 0x2,0x2b,0x79,
+  0x2,0x3d,0x6a, 0x1,0x60,0x56, 0x3,0x42,0x5d, 0x2,0x44,0x68,
+  0x3,0x42,0x5c, 0x3,0x42,0x5b, 0x1,0x65,0x26, 0x2,0x4b,0x6c,
+  0x4,0x44,0x5e, 0x3,0x4d,0x2e, 0x1,0x6d,0x62, 0x3,0x4d,0x2d,
+  0x1,0x78,0x49, 0x1,0x45,0x5b, 0x2,0x3d,0x6b, 0x1,0x45,0x5c,
+  0x1,0x48,0x4a, 0x2,0x22,0x62, 0x1,0x48,0x49, 0x1,0x4b,0x28,
+  0x1,0x4b,0x27, 0x1,0x4b,0x26, 0x2,0x24,0x60, 0x3,0x26,0x64,
+  0x3,0x2a,0x21, 0x3,0x2a,0x22, 0x1,0x4e,0x6b, 0x3,0x2a,0x23,
+  0x1,0x4e,0x6c, 0x2,0x27,0x7b, 0x4,0x27,0x31, 0x2,0x2b,0x7a,
+  0x3,0x2d,0x6d, 0x2,0x2b,0x7d, 0x1,0x52,0x3d, 0x2,0x2b,0x7b,
+  0x4,0x2a,0x2f, 0x1,0x52,0x3c, 0x2,0x2b,0x7c, 0x1,0x52,0x3e,
+  0x2,0x30,0x63, 0x2,0x30,0x62, 0x2,0x30,0x61, 0x1,0x56,0x56,
+  0x3,0x32,0x36, 0x2,0x37,0x22, 0x2,0x37,0x23, 0x1,0x5b,0x74,
+  0x2,0x37,0x21, 0x2,0x37,0x24, 0x1,0x60,0x58, 0x1,0x5b,0x75,
+  0x3,0x3d,0x24, 0x3,0x3d,0x23, 0x1,0x60,0x57, 0x2,0x3d,0x6f,
+  0x2,0x3d,0x6e, 0x3,0x3d,0x25, 0x2,0x3d,0x6c, 0x2,0x3d,0x6d,
+  0x2,0x3d,0x70, 0x2,0x44,0x6a, 0x2,0x44,0x69, 0x2,0x44,0x6d,
+  0x4,0x3e,0x4f, 0x2,0x44,0x6c, 0x2,0x44,0x6b, 0x1,0x69,0x60,
+  0x2,0x4b,0x6f, 0x3,0x47,0x75, 0x2,0x4b,0x6e, 0x1,0x69,0x61,
+  0x2,0x4b,0x6d, 0x2,0x51,0x7b, 0x3,0x4d,0x2f, 0x2,0x51,0x7c,
+  0x1,0x6d,0x63, 0x4,0x51,0x2d, 0x2,0x58,0x45, 0x2,0x58,0x46,
+  0x5,0x4e,0x37, 0x2,0x65,0x7c, 0x1,0x78,0x4a, 0x2,0x65,0x7b,
+  0x2,0x65,0x7a, 0x2,0x65,0x78, 0x2,0x65,0x79, 0x1,0x7a,0x76,
+  0x2,0x69,0x3b, 0x2,0x6d,0x5c, 0x2,0x71,0x27, 0x3,0x61,0x7b,
+  0x1,0x45,0x5d, 0x4,0x21,0x38, 0x2,0x21,0x64, 0x1,0x46,0x67,
+  0x2,0x21,0x65, 0x3,0x24,0x2c, 0x3,0x24,0x2d, 0x4,0x23,0x27,
+  0x2,0x22,0x63, 0x2,0x22,0x64, 0x3,0x26,0x6b, 0x3,0x26,0x69,
+  0x2,0x24,0x66, 0x3,0x26,0x66, 0x3,0x26,0x67, 0x2,0x24,0x62,
+  0x3,0x26,0x6a, 0x2,0x24,0x61, 0x1,0x4e,0x6d, 0x2,0x24,0x65,
+  0x1,0x4b,0x2a, 0x2,0x24,0x63, 0x1,0x4b,0x29, 0x2,0x24,0x67,
+  0x2,0x24,0x64, 0x3,0x26,0x68, 0x2,0x28,0x21, 0x2,0x2b,0x7e,
+  0x2,0x27,0x7d, 0x2,0x28,0x26, 0x3,0x2a,0x26, 0x1,0x4e,0x6e,
+  0x3,0x2a,0x2a, 0x1,0x4e,0x71, 0x2,0x28,0x27, 0x2,0x28,0x23,
+  0x3,0x2a,0x27, 0x2,0x28,0x24, 0x4,0x27,0x36, 0x2,0x27,0x7c,
+  0x1,0x4e,0x70, 0x2,0x27,0x7e, 0x1,0x4e,0x6f, 0x2,0x28,0x25,
+  0x3,0x2a,0x28, 0x2,0x28,0x22, 0x6,0x2c,0x7e, 0x2,0x2c,0x24,
+  0x1,0x52,0x40, 0x1,0x52,0x41, 0x3,0x2d,0x75, 0x2,0x2c,0x27,
+  0x2,0x2c,0x21, 0x3,0x2d,0x74, 0x2,0x2c,0x26, 0x3,0x2d,0x70,
+  0x2,0x2c,0x22, 0x1,0x52,0x3f, 0x2,0x2c,0x25, 0x2,0x2c,0x23,
+  0x3,0x2d,0x73, 0x3,0x2d,0x71, 0x2,0x30,0x69, 0x2,0x30,0x66,
+  0x3,0x32,0x38, 0x2,0x30,0x68, 0x1,0x56,0x5b, 0x1,0x56,0x5a,
+  0x1,0x56,0x58, 0x2,0x30,0x65, 0x2,0x30,0x6a, 0x1,0x56,0x57,
+  0x1,0x56,0x59, 0x2,0x30,0x67, 0x2,0x37,0x2c, 0x2,0x30,0x64,
+  0x2,0x30,0x6b, 0x3,0x32,0x39, 0x4,0x33,0x23, 0x4,0x33,0x2a,
+  0x3,0x3d,0x26, 0x2,0x37,0x27, 0x2,0x37,0x2b, 0x5,0x33,0x54,
+  0x2,0x37,0x2a, 0x2,0x3d,0x72, 0x2,0x3d,0x7d, 0x4,0x33,0x2d,
+  0x3,0x37,0x3b, 0x2,0x37,0x2d, 0x3,0x37,0x3a, 0x2,0x37,0x28,
+  0x2,0x3d,0x71, 0x1,0x5b,0x79, 0x4,0x33,0x22, 0x4,0x33,0x2c,
+  0x1,0x5b,0x78, 0x2,0x37,0x26, 0x2,0x37,0x29, 0x1,0x5b,0x7a,
+  0x3,0x37,0x39, 0x1,0x5b,0x77, 0x1,0x5b,0x76, 0x2,0x37,0x25,
+  0x2,0x37,0x2e, 0x2,0x3d,0x74, 0x2,0x3d,0x7b, 0x3,0x3d,0x27,
+  0x1,0x60,0x5a, 0x2,0x3d,0x7a, 0x2,0x3d,0x77, 0x3,0x3d,0x2e,
+  0x1,0x60,0x5c, 0x3,0x3d,0x29, 0x3,0x3d,0x2b, 0x3,0x3d,0x2a,
+  0x2,0x3d,0x79, 0x3,0x42,0x61, 0x3,0x3d,0x2d, 0x2,0x3d,0x73,
+  0x2,0x3d,0x75, 0x2,0x3d,0x78, 0x2,0x3d,0x76, 0x1,0x60,0x5b,
+  0x2,0x3d,0x7c, 0x1,0x60,0x59, 0x1,0x65,0x27, 0x3,0x3d,0x28,
+  0x2,0x44,0x71, 0x2,0x44,0x70, 0x2,0x44,0x6e, 0x6,0x54,0x7c,
+  0x1,0x65,0x2a, 0x1,0x65,0x29, 0x2,0x44,0x72, 0x3,0x42,0x5f,
+  0x2,0x44,0x6f, 0x2,0x4b,0x70, 0x1,0x69,0x62, 0x1,0x65,0x28,
+  0x3,0x42,0x62, 0x3,0x65,0x62, 0x3,0x65,0x63, 0x2,0x44,0x74,
+  0x2,0x44,0x73, 0x3,0x4d,0x30, 0x2,0x4b,0x73, 0x2,0x4b,0x71,
+  0x1,0x6d,0x64, 0x3,0x47,0x79, 0x1,0x69,0x63, 0x2,0x4b,0x72,
+  0x2,0x51,0x7e, 0x3,0x47,0x78, 0x3,0x47,0x7a, 0x3,0x47,0x77,
+  0x4,0x4a,0x77, 0x1,0x6d,0x65, 0x2,0x51,0x7d, 0x2,0x52,0x28,
+  0x2,0x52,0x27, 0x2,0x52,0x25, 0x4,0x4a,0x75, 0x2,0x52,0x24,
+  0x2,0x52,0x21, 0x2,0x52,0x22, 0x2,0x52,0x23, 0x2,0x52,0x26,
+  0x2,0x52,0x29, 0x2,0x58,0x4b, 0x2,0x58,0x48, 0x2,0x58,0x49,
+  0x1,0x71,0x41, 0x2,0x58,0x47, 0x2,0x58,0x4d, 0x2,0x58,0x4c,
+  0x2,0x58,0x4a, 0x2,0x5d,0x50, 0x2,0x5d,0x51, 0x1,0x74,0x3c,
+  0x3,0x55,0x49, 0x1,0x74,0x3d, 0x2,0x5d,0x4f, 0x4,0x56,0x6c,
+  0x1,0x76,0x65, 0x2,0x62,0x2c, 0x1,0x76,0x64, 0x1,0x78,0x4b,
+  0x4,0x60,0x25, 0x1,0x78,0x4c, 0x1,0x79,0x78, 0x2,0x69,0x3d,
+  0x2,0x69,0x3c, 0x2,0x6b,0x6b, 0x2,0x6d,0x5d, 0x1,0x7b,0x66,
+  0x2,0x6f,0x37, 0x2,0x6f,0x36, 0x2,0x6f,0x38, 0x1,0x46,0x68,
+  0x2,0x2c,0x28, 0x1,0x56,0x5c, 0x1,0x5b,0x7b, 0x2,0x37,0x2f,
+  0x1,0x46,0x69, 0x2,0x21,0x66, 0x1,0x45,0x5e, 0x3,0x22,0x5a,
+  0x3,0x21,0x6b, 0x2,0x22,0x65, 0x3,0x24,0x2f, 0x4,0x23,0x2a,
+  0xf,0x22,0x66, 0x2,0x24,0x6c, 0x2,0x24,0x6a, 0x2,0x24,0x6b,
+  0x2,0x24,0x68, 0x1,0x4b,0x2b, 0x2,0x24,0x69, 0x3,0x26,0x6e,
+  0x3,0x2a,0x33, 0x2,0x28,0x2f, 0x3,0x2a,0x2d, 0x1,0x4e,0x74,
+  0x2,0x28,0x2d, 0x2,0x28,0x29, 0x2,0x28,0x2c, 0x3,0x2a,0x2c,
+  0x2,0x28,0x28, 0x1,0x4e,0x76, 0x2,0x28,0x2b, 0x3,0x2a,0x2b,
+  0x1,0x4e,0x73, 0x1,0x4e,0x72, 0x3,0x2a,0x32, 0x1,0x4e,0x75,
+  0x2,0x28,0x2e, 0x2,0x28,0x2a, 0x3,0x2a,0x2f, 0x1,0x52,0x45,
+  0x1,0x52,0x48, 0x2,0x2c,0x30, 0x2,0x2c,0x2f, 0x2,0x2c,0x2e,
+  0x1,0x52,0x42, 0x2,0x2c,0x37, 0x2,0x2c,0x2d, 0x4,0x2e,0x2a,
+  0x1,0x52,0x44, 0x2,0x30,0x70, 0x3,0x2d,0x78, 0x2,0x2c,0x34,
+  0x2,0x2c,0x32, 0x1,0x52,0x47, 0x3,0x2d,0x7b, 0x2,0x2c,0x2a,
+  0x2,0x2c,0x35, 0x3,0x2d,0x77, 0x2,0x2c,0x2c, 0x2,0x2c,0x36,
+  0x2,0x2c,0x33, 0x2,0x2c,0x2b, 0x3,0x2d,0x7a, 0x1,0x52,0x43,
+  0x2,0x2c,0x38, 0x2,0x2c,0x29, 0x1,0x52,0x46, 0x3,0x2d,0x7e,
+  0x3,0x2d,0x79, 0x3,0x2d,0x7c, 0x2,0x30,0x75, 0x2,0x30,0x6c,
+  0x2,0x30,0x77, 0x3,0x32,0x3e, 0x2,0x30,0x6f, 0x2,0x30,0x7a,
+  0x2,0x30,0x7b, 0x2,0x30,0x6d, 0x2,0x30,0x79, 0x2,0x30,0x76,
+  0x2,0x30,0x74, 0x2,0x30,0x78, 0x1,0x56,0x62, 0x3,0x32,0x40,
+  0x1,0x56,0x60, 0x3,0x32,0x47, 0x3,0x32,0x3c, 0x2,0x30,0x72,
+  0x3,0x32,0x46, 0x2,0x30,0x6e, 0x3,0x32,0x41, 0x2,0x30,0x71,
+  0x2,0x30,0x7c, 0x2,0x30,0x73, 0x1,0x56,0x61, 0x2,0x2c,0x31,
+  0x3,0x32,0x3d, 0x1,0x56,0x5d, 0x1,0x56,0x5f, 0x3,0x65,0x64,
+  0x3,0x37,0x3d, 0x2,0x37,0x3d, 0x2,0x37,0x32, 0x2,0x37,0x30,
+  0x3,0x3d,0x38, 0x2,0x37,0x31, 0x3,0x32,0x3f, 0x2,0x37,0x38,
+  0x3,0x37,0x40, 0x2,0x37,0x39, 0x2,0x37,0x35, 0x1,0x5c,0x22,
+  0x2,0x37,0x3a, 0x2,0x37,0x37, 0x2,0x37,0x34, 0x3,0x37,0x3c,
+  0x1,0x5b,0x7e, 0x2,0x37,0x33, 0x1,0x5b,0x7c, 0x1,0x5c,0x21,
+  0x2,0x37,0x36, 0x2,0x37,0x3e, 0x1,0x56,0x5e, 0x1,0x5b,0x7d,
+  0x2,0x37,0x3c, 0x2,0x37,0x3b, 0x1,0x5c,0x23, 0x3,0x65,0x65,
+  0xf,0x36,0x57, 0x3,0x3d,0x36, 0x3,0x3d,0x3a, 0x2,0x3e,0x24,
+  0x3,0x3d,0x2f, 0x3,0x3d,0x3b, 0x3,0x3d,0x32, 0x2,0x3e,0x25,
+  0x1,0x60,0x66, 0x3,0x3d,0x39, 0x2,0x3e,0x2b, 0x3,0x42,0x6d,
+  0x3,0x3d,0x35, 0x2,0x3e,0x2d, 0x2,0x3e,0x26, 0x1,0x60,0x60,
+  0x2,0x3e,0x2a, 0x2,0x3e,0x29, 0x1,0x60,0x61, 0x1,0x60,0x67,
+  0x3,0x42,0x64, 0x1,0x60,0x68, 0x2,0x3e,0x2c, 0x1,0x60,0x5e,
+  0x2,0x3e,0x23, 0x2,0x3e,0x21, 0x2,0x3e,0x27, 0x2,0x3d,0x7e,
+  0x1,0x60,0x65, 0x2,0x3e,0x22, 0x2,0x3e,0x28, 0x2,0x3e,0x2e,
+  0x1,0x60,0x5f, 0x1,0x60,0x64, 0x1,0x60,0x62, 0x1,0x60,0x63,
+  0x3,0x3d,0x33, 0x3,0x3d,0x3c, 0x1,0x60,0x5d, 0x3,0x65,0x66,
+  0x3,0x3d,0x37, 0x3,0x42,0x68, 0x3,0x42,0x75, 0x1,0x65,0x31,
+  0x2,0x44,0x7b, 0x1,0x65,0x30, 0x2,0x45,0x21, 0x3,0x42,0x6f,
+  0x2,0x44,0x75, 0x3,0x42,0x74, 0x2,0x45,0x22, 0x3,0x42,0x6e,
+  0x3,0x42,0x66, 0x3,0x42,0x71, 0x2,0x44,0x76, 0x2,0x44,0x77,
+  0x3,0x42,0x73, 0x2,0x45,0x23, 0x2,0x44,0x7e, 0x2,0x44,0x7c,
+  0x2,0x44,0x7d, 0x2,0x44,0x79, 0x2,0x44,0x78, 0x3,0x42,0x67,
+  0x2,0x45,0x24, 0x1,0x65,0x2d, 0x3,0x42,0x6b, 0x2,0x44,0x7a,
+  0x3,0x42,0x70, 0x1,0x65,0x32, 0x1,0x65,0x2c, 0x1,0x65,0x33,
+  0x1,0x65,0x34, 0x3,0x42,0x6a, 0x1,0x65,0x2f, 0x1,0x65,0x2e,
+  0x3,0x48,0x25, 0x3,0x47,0x7e, 0x2,0x4b,0x74, 0x1,0x69,0x65,
+  0x1,0x69,0x64, 0x3,0x47,0x7c, 0x3,0x47,0x7d, 0x2,0x4b,0x79,
+  0x3,0x48,0x22, 0x1,0x6d,0x66, 0x1,0x69,0x66, 0x3,0x48,0x21,
+  0x3,0x47,0x7b, 0x1,0x69,0x68, 0x2,0x4b,0x7a, 0x1,0x65,0x2b,
+  0x1,0x69,0x67, 0x2,0x4b,0x76, 0x2,0x4b,0x78, 0x2,0x4b,0x75,
+  0x3,0x48,0x27, 0x2,0x4b,0x77, 0x3,0x48,0x23, 0xf,0x49,0x76,
+  0x2,0x52,0x33, 0x3,0x4d,0x31, 0x3,0x4d,0x3b, 0x2,0x52,0x32,
+  0x2,0x52,0x2f, 0x1,0x6d,0x69, 0x2,0x58,0x4e, 0x1,0x6d,0x6a,
+  0x2,0x52,0x2e, 0x3,0x4d,0x39, 0x1,0x6d,0x68, 0x3,0x4d,0x36,
+  0x2,0x52,0x30, 0x2,0x52,0x2d, 0x2,0x52,0x2a, 0x2,0x52,0x31,
+  0x2,0x52,0x2b, 0x2,0x52,0x2c, 0x1,0x6d,0x67, 0x3,0x4d,0x35,
+  0x3,0x65,0x68, 0x4,0x51,0x39, 0x2,0x5d,0x55, 0x4,0x51,0x3a,
+  0x2,0x58,0x52, 0x3,0x4d,0x3a, 0x2,0x58,0x51, 0x2,0x58,0x53,
+  0x3,0x51,0x6a, 0x2,0x5d,0x52, 0x1,0x71,0x44, 0x4,0x51,0x38,
+  0x2,0x58,0x4f, 0x3,0x51,0x67, 0x1,0x71,0x42, 0x3,0x51,0x6c,
+  0x1,0x71,0x46, 0x1,0x71,0x45, 0x2,0x58,0x50, 0x2,0x58,0x54,
+  0x3,0x51,0x6b, 0x1,0x71,0x43, 0x3,0x65,0x67, 0x2,0x5d,0x59,
+  0x1,0x74,0x40, 0x1,0x76,0x66, 0x1,0x74,0x41, 0x1,0x74,0x3e,
+  0x2,0x5d,0x56, 0x2,0x5d,0x54, 0x3,0x55,0x4f, 0x2,0x5d,0x57,
+  0x3,0x55,0x4b, 0x2,0x5d,0x5a, 0x1,0x74,0x3f, 0x2,0x5d,0x58,
+  0x2,0x5d,0x53, 0x3,0x55,0x4d, 0x3,0x65,0x69, 0x2,0x62,0x2f,
+  0x2,0x62,0x32, 0x2,0x66,0x21, 0x2,0x62,0x2d, 0x3,0x58,0x2f,
+  0x2,0x69,0x3e, 0x2,0x62,0x33, 0x3,0x58,0x30, 0x1,0x78,0x4d,
+  0x2,0x62,0x31, 0x1,0x76,0x67, 0x2,0x62,0x2e, 0x2,0x62,0x30,
+  0x2,0x62,0x34, 0x2,0x66,0x22, 0x3,0x5a,0x5a, 0x2,0x65,0x7e,
+  0x4,0x60,0x27, 0x3,0x5a,0x5c, 0x3,0x5a,0x5d, 0x3,0x5a,0x5b,
+  0x1,0x78,0x4e, 0x2,0x65,0x7d, 0x3,0x5c,0x5e, 0x3,0x5c,0x5c,
+  0x3,0x5c,0x5f, 0x1,0x79,0x79, 0x3,0x5c,0x5d, 0x3,0x5c,0x60,
+  0x3,0x5e,0x3d, 0x1,0x7a,0x78, 0x2,0x6d,0x5f, 0x1,0x7a,0x77,
+  0x2,0x6d,0x61, 0x2,0x6d,0x5e, 0x2,0x6d,0x60, 0x1,0x7c,0x3c,
+  0x2,0x70,0x40, 0x1,0x46,0x6a, 0x2,0x28,0x30, 0x2,0x30,0x7d,
+  0x2,0x30,0x7e, 0x1,0x5c,0x24, 0x2,0x45,0x25, 0x1,0x71,0x47,
+  0x1,0x78,0x4f, 0x1,0x7b,0x67, 0x2,0x70,0x41, 0x1,0x46,0x6b,
+  0x2,0x28,0x31, 0x1,0x23,0x22, 0x4,0x2a,0x3c, 0x3,0x2e,0x22,
+  0x2,0x2c,0x39, 0x3,0x2e,0x21, 0x2,0x2c,0x3a, 0x3,0x2e,0x24,
+  0x3,0x32,0x48, 0x2,0x31,0x21, 0x2,0x31,0x22, 0x1,0x5c,0x25,
+  0x1,0x5c,0x26, 0xf,0x36,0x67, 0x3,0x3d,0x3d, 0x4,0x39,0x25,
+  0x2,0x3e,0x2f, 0x2,0x45,0x28, 0x2,0x45,0x27, 0x2,0x45,0x26,
+  0x2,0x4b,0x7b, 0x3,0x42,0x77, 0x2,0x4b,0x7c, 0x2,0x4b,0x7d,
+  0x1,0x69,0x69, 0x3,0x48,0x28, 0x2,0x52,0x35, 0x2,0x52,0x34,
+  0x3,0x4d,0x3d, 0x3,0x51,0x6d, 0x2,0x58,0x55, 0x1,0x71,0x48,
+  0x1,0x71,0x49, 0x3,0x51,0x6e, 0x2,0x5d,0x5e, 0x2,0x5d,0x5b,
+  0x2,0x5d,0x5c, 0x2,0x5d,0x5d, 0x2,0x62,0x36, 0x2,0x62,0x35,
+  0x1,0x76,0x68, 0x2,0x66,0x23, 0x2,0x6b,0x6c, 0x1,0x46,0x6c,
+  0x1,0x52,0x49, 0x3,0x37,0x44, 0x1,0x5c,0x27, 0x2,0x45,0x29,
+  0x3,0x42,0x78, 0x1,0x46,0x6d, 0x4,0x2a,0x40, 0x2,0x31,0x23,
+  0x1,0x5c,0x28, 0x3,0x37,0x45, 0x3,0x3d,0x3e, 0x1,0x60,0x69,
+  0x1,0x60,0x6a, 0x5,0x47,0x49, 0x1,0x46,0x6e, 0x1,0x46,0x6f,
+  0x2,0x22,0x66, 0x1,0x4b,0x2d, 0x1,0x4b,0x2c, 0x1,0x52,0x4a,
+  0x2,0x2c,0x3b, 0x2,0x3e,0x30, 0x1,0x46,0x70, 0x1,0x46,0x71,
+  0x1,0x46,0x72, 0x1,0x46,0x73, 0x4,0x23,0x2b, 0x1,0x4b,0x2e,
+  0x1,0x4b,0x2f, 0x2,0x24,0x6e, 0x2,0x24,0x6d, 0x3,0x2a,0x37,
+  0x1,0x4e,0x77, 0x2,0x28,0x34, 0x2,0x28,0x32, 0x2,0x28,0x33,
+  0x3,0x2a,0x38, 0x3,0x2a,0x35, 0x4,0x27,0x40, 0x3,0x2a,0x36,
+  0x3,0x2e,0x27, 0x2,0x2c,0x3c, 0x2,0x2c,0x3d, 0x3,0x2e,0x25,
+  0x3,0x2e,0x28, 0x1,0x52,0x4e, 0x1,0x52,0x4c, 0x3,0x2e,0x2a,
+  0x1,0x52,0x4d, 0x1,0x52,0x4b, 0x3,0x2e,0x26, 0xf,0x2b,0x7a,
+  0xf,0x2c,0x4a, 0x1,0x56,0x63, 0x3,0x32,0x4e, 0x3,0x32,0x4d,
+  0x3,0x32,0x50, 0x3,0x32,0x4f, 0x1,0x56,0x67, 0x1,0x56,0x66,
+  0x2,0x31,0x24, 0x1,0x56,0x65, 0x1,0x56,0x64, 0x3,0x32,0x51,
+  0x2,0x31,0x25, 0x3,0x37,0x46, 0x1,0x5c,0x2b, 0x2,0x37,0x40,
+  0x2,0x37,0x3f, 0x1,0x5c,0x29, 0x1,0x5c,0x2a, 0x3,0x37,0x49,
+  0x3,0x37,0x47, 0x1,0x60,0x6c, 0x1,0x60,0x6b, 0x2,0x3e,0x32,
+  0x3,0x3d,0x43, 0x3,0x3d,0x42, 0x2,0x3e,0x31, 0x1,0x5c,0x2c,
+  0x3,0x3d,0x44, 0x4,0x39,0x2c, 0x4,0x3e,0x6b, 0x1,0x65,0x35,
+  0x2,0x45,0x2b, 0x1,0x65,0x36, 0x2,0x45,0x2a, 0x3,0x42,0x7b,
+  0x4,0x44,0x7c, 0x4,0x44,0x7b, 0x2,0x4b,0x7e, 0x2,0x52,0x36,
+  0x1,0x6d,0x6b, 0x2,0x58,0x56, 0x3,0x51,0x70, 0x3,0x55,0x52,
+  0x2,0x5d,0x5f, 0x4,0x5b,0x74, 0x1,0x78,0x51, 0x1,0x78,0x50,
+  0x4,0x63,0x68, 0x3,0x5c,0x62, 0x1,0x7b,0x68, 0x1,0x46,0x74,
+  0x2,0x28,0x35, 0x3,0x3d,0x45, 0x1,0x5c,0x2d, 0x2,0x4c,0x21,
+  0x1,0x69,0x6a, 0x3,0x22,0x5b, 0x3,0x26,0x73, 0x2,0x24,0x6f,
+  0x2,0x24,0x70, 0x2,0x28,0x36, 0x1,0x4e,0x79, 0x1,0x4e,0x7a,
+  0x3,0x2a,0x3a, 0x4,0x27,0x43, 0x1,0x4e,0x78, 0x3,0x2a,0x3b,
+  0x1,0x52,0x52, 0x1,0x52,0x53, 0x1,0x52,0x50, 0x1,0x52,0x51,
+  0x3,0x2e,0x2b, 0x2,0x2c,0x3e, 0x3,0x2e,0x2f, 0x4,0x2a,0x4a,
+  0x2,0x2c,0x3f, 0x1,0x52,0x4f, 0x2,0x31,0x26, 0x3,0x32,0x57,
+  0x1,0x56,0x6b, 0x1,0x56,0x6c, 0x3,0x32,0x55, 0x1,0x5c,0x30,
+  0x2,0x31,0x2c, 0x4,0x2e,0x40, 0x1,0x56,0x71, 0x1,0x56,0x6f,
+  0x2,0x31,0x2d, 0x2,0x31,0x28, 0x1,0x56,0x6e, 0x1,0x56,0x6d,
+  0x1,0x56,0x68, 0x2,0x31,0x2b, 0x2,0x31,0x2a, 0x2,0x31,0x27,
+  0x1,0x56,0x70, 0x3,0x32,0x52, 0x2,0x31,0x29, 0x1,0x56,0x69,
+  0x4,0x2e,0x34, 0x1,0x56,0x6a, 0x1,0x5c,0x31, 0x2,0x37,0x44,
+  0x2,0x37,0x45, 0x1,0x5c,0x32, 0x2,0x37,0x41, 0x2,0x37,0x43,
+  0x2,0x37,0x47, 0x2,0x37,0x46, 0x2,0x37,0x42, 0x3,0x37,0x4a,
+  0x1,0x5c,0x2e, 0x1,0x5c,0x2f, 0x2,0x3e,0x3a, 0x1,0x60,0x71,
+  0x1,0x60,0x70, 0x2,0x3e,0x34, 0x1,0x60,0x6e, 0x4,0x39,0x34,
+  0x2,0x3e,0x37, 0x1,0x60,0x72, 0x2,0x3e,0x38, 0x1,0x60,0x73,
+  0x2,0x3e,0x35, 0x1,0x60,0x6d, 0x1,0x60,0x6f, 0x2,0x3e,0x39,
+  0x3,0x3d,0x47, 0x2,0x3e,0x36, 0x2,0x3e,0x33, 0x4,0x3e,0x77,
+  0x2,0x45,0x38, 0x3,0x42,0x7c, 0x2,0x45,0x2d, 0x1,0x65,0x38,
+  0x1,0x65,0x3b, 0x1,0x65,0x3a, 0x1,0x65,0x3f, 0x1,0x65,0x3e,
+  0x2,0x45,0x39, 0x2,0x45,0x37, 0x2,0x45,0x30, 0x2,0x45,0x34,
+  0x2,0x45,0x33, 0x1,0x65,0x3c, 0x2,0x45,0x36, 0x2,0x45,0x32,
+  0x2,0x45,0x3a, 0x2,0x45,0x31, 0x1,0x65,0x3d, 0x1,0x65,0x37,
+  0x1,0x65,0x39, 0x3,0x42,0x7d, 0x2,0x45,0x2f, 0x3,0x48,0x2b,
+  0x2,0x4c,0x23, 0x1,0x69,0x6e, 0x2,0x4c,0x27, 0x1,0x69,0x6d,
+  0x2,0x4c,0x24, 0x1,0x69,0x6c, 0x3,0x48,0x29, 0x2,0x45,0x2e,
+  0x2,0x45,0x35, 0x2,0x4c,0x26, 0x4,0x44,0x7e, 0x1,0x69,0x6f,
+  0x2,0x4c,0x28, 0x2,0x4c,0x25, 0x2,0x4c,0x22, 0x2,0x52,0x39,
+  0x2,0x52,0x3d, 0x2,0x52,0x3f, 0x2,0x52,0x3b, 0x2,0x52,0x3a,
+  0x2,0x52,0x38, 0x1,0x6d,0x6e, 0x1,0x6d,0x6c, 0x1,0x6d,0x71,
+  0x1,0x6d,0x72, 0x2,0x52,0x3c, 0x1,0x6d,0x6f, 0x2,0x52,0x37,
+  0x1,0x6d,0x70, 0x1,0x69,0x6b, 0x2,0x52,0x3e, 0x1,0x6d,0x6d,
+  0x3,0x51,0x71, 0x2,0x58,0x58, 0x4,0x51,0x4f, 0x2,0x58,0x57,
+  0x2,0x58,0x5f, 0x2,0x58,0x59, 0x2,0x58,0x5e, 0x2,0x58,0x5b,
+  0x1,0x71,0x4a, 0x2,0x58,0x5d, 0x3,0x51,0x73, 0x3,0x51,0x72,
+  0x1,0x71,0x4b, 0x4,0x51,0x4d, 0x1,0x71,0x4c, 0x3,0x51,0x74,
+  0x2,0x58,0x5c, 0x2,0x58,0x5a, 0x4,0x57,0x21, 0x4,0x57,0x24,
+  0x1,0x74,0x43, 0x2,0x5d,0x60, 0x3,0x55,0x55, 0x3,0x55,0x53,
+  0x1,0x74,0x42, 0x2,0x5d,0x63, 0x2,0x5d,0x61, 0x2,0x5d,0x62,
+  0x5,0x55,0x69, 0x5,0x5c,0x36, 0x1,0x74,0x44, 0x3,0x55,0x54,
+  0x3,0x58,0x34, 0x2,0x62,0x3a, 0x3,0x58,0x33, 0x1,0x76,0x6b,
+  0x2,0x62,0x3b, 0x4,0x5b,0x75, 0x4,0x5b,0x79, 0x1,0x76,0x69,
+  0x2,0x62,0x3c, 0x1,0x76,0x6a, 0x2,0x62,0x39, 0x2,0x62,0x3d,
+  0x3,0x58,0x32, 0x2,0x62,0x37, 0x1,0x78,0x52, 0x2,0x66,0x24,
+  0x1,0x78,0x53, 0x1,0x79,0x7a, 0x2,0x62,0x38, 0x1,0x79,0x7b,
+  0x3,0x5e,0x3f, 0x3,0x5e,0x3e, 0x1,0x7a,0x79, 0x2,0x6b,0x6d,
+  0x1,0x7b,0x6a, 0x2,0x6d,0x62, 0x1,0x7b,0x69, 0x3,0x60,0x3b,
+  0x2,0x6f,0x39, 0x1,0x7c,0x61, 0x1,0x7c,0x62, 0x3,0x65,0x6a,
+  0x7,0x64,0x52, 0x2,0x72,0x3a, 0x3,0x22,0x5c, 0x3,0x65,0x6b,
+  0x1,0x52,0x54, 0x2,0x2c,0x40, 0x1,0x60,0x74, 0x1,0x60,0x75,
+  0x1,0x46,0x75, 0x1,0x48,0x4b, 0x2,0x22,0x67, 0x3,0x26,0x74,
+  0x2,0x24,0x71, 0x1,0x4b,0x30, 0x3,0x26,0x76, 0x1,0x4e,0x7b,
+  0x4,0x2a,0x4c, 0x1,0x52,0x55, 0x1,0x52,0x56, 0x1,0x52,0x57,
+  0x2,0x37,0x49, 0x2,0x31,0x2e, 0x1,0x56,0x72, 0x4,0x2e,0x41,
+  0x4,0x2e,0x43, 0x1,0x5c,0x33, 0x2,0x37,0x48, 0x3,0x37,0x4d,
+  0x2,0x3e,0x3c, 0x1,0x60,0x77, 0x3,0x3d,0x4c, 0x2,0x3e,0x3b,
+  0x1,0x60,0x76, 0x3,0x42,0x7e, 0x3,0x43,0x21, 0x2,0x45,0x3b,
+  0x1,0x6d,0x73, 0x2,0x52,0x43, 0x2,0x52,0x40, 0x2,0x52,0x41,
+  0x2,0x52,0x42, 0x4,0x51,0x54, 0x4,0x51,0x55, 0x3,0x51,0x76,
+  0x5,0x5c,0x43, 0x3,0x55,0x56, 0x2,0x5d,0x64, 0x3,0x55,0x57,
+  0x2,0x62,0x3e, 0x4,0x5b,0x7c, 0x4,0x5b,0x7d, 0x3,0x5a,0x5e,
+  0x2,0x69,0x40, 0x2,0x69,0x3f, 0x4,0x66,0x5a, 0x2,0x6d,0x63,
+  0x1,0x46,0x76, 0x2,0x28,0x37, 0x1,0x56,0x73, 0x3,0x3d,0x4d,
+  0x1,0x60,0x78, 0x2,0x45,0x3c, 0x4,0x45,0x34, 0x3,0x48,0x30,
+  0x2,0x4c,0x29, 0x3,0x48,0x2e, 0x1,0x6d,0x74, 0x2,0x58,0x60,
+  0x3,0x65,0x6c, 0x2,0x62,0x3f, 0x2,0x69,0x41, 0x1,0x46,0x77,
+  0x3,0x26,0x77, 0x3,0x26,0x78, 0x1,0x4e,0x7c, 0x1,0x52,0x5a,
+  0x2,0x2c,0x41, 0x1,0x52,0x5b, 0x1,0x52,0x59, 0x3,0x2e,0x32,
+  0x1,0x52,0x58, 0x2,0x31,0x2f, 0x1,0x56,0x74, 0x3,0x32,0x5a,
+  0x3,0x32,0x5b, 0x1,0x56,0x75, 0x1,0x56,0x76, 0x1,0x5c,0x35,
+  0x2,0x37,0x4a, 0x1,0x5c,0x34, 0x3,0x37,0x50, 0x3,0x37,0x52,
+  0x3,0x37,0x51, 0xf,0x37,0x23, 0x3,0x3d,0x4f, 0x2,0x3e,0x3d,
+  0x1,0x5c,0x36, 0x1,0x60,0x79, 0x2,0x45,0x3d, 0x1,0x65,0x40,
+  0x1,0x65,0x41, 0x4,0x45,0x35, 0x1,0x69,0x70, 0x3,0x48,0x31,
+  0x1,0x69,0x71, 0x1,0x6d,0x75, 0x1,0x71,0x4e, 0x2,0x58,0x61,
+  0x1,0x71,0x4d, 0x4,0x57,0x2d, 0x2,0x5d,0x65, 0x1,0x74,0x45,
+  0x3,0x58,0x35, 0x2,0x62,0x40, 0x2,0x69,0x42, 0x1,0x46,0x78,
+  0x1,0x4b,0x31, 0x2,0x28,0x3a, 0x2,0x28,0x39, 0x1,0x4e,0x7d,
+  0x2,0x28,0x38, 0x1,0x4e,0x7e, 0x2,0x28,0x3b, 0x4,0x2a,0x55,
+  0x2,0x2c,0x47, 0x1,0x52,0x5e, 0x1,0x52,0x5d, 0x2,0x2c,0x49,
+  0x2,0x2c,0x48, 0x1,0x52,0x62, 0x3,0x2e,0x35, 0x1,0x52,0x61,
+  0x3,0x2e,0x33, 0x4,0x2a,0x59, 0x1,0x52,0x5c, 0x4,0x2a,0x5d,
+  0x2,0x2c,0x43, 0x2,0x2c,0x44, 0x2,0x2c,0x45, 0x4,0x2a,0x52,
+  0x1,0x52,0x63, 0x2,0x2c,0x42, 0x1,0x52,0x5f, 0x2,0x2c,0x46,
+  0x1,0x52,0x60, 0x3,0x32,0x64, 0x3,0x32,0x5f, 0x2,0x31,0x32,
+  0x2,0x31,0x36, 0x2,0x31,0x34, 0x2,0x31,0x33, 0x4,0x2e,0x55,
+  0x2,0x31,0x37, 0x3,0x32,0x5e, 0x4,0x2e,0x4f, 0x3,0x32,0x68,
+  0x2,0x31,0x38, 0x2,0x31,0x39, 0x2,0x31,0x31, 0x4,0x2e,0x51,
+  0x2,0x31,0x30, 0x3,0x37,0x59, 0x1,0x56,0x78, 0x1,0x56,0x79,
+  0x3,0x32,0x67, 0x2,0x31,0x3a, 0x2,0x31,0x35, 0x3,0x32,0x65,
+  0x2,0x37,0x53, 0x3,0x37,0x55, 0x2,0x31,0x3b, 0x1,0x56,0x7a,
+  0x1,0x56,0x77, 0x3,0x32,0x5c, 0x3,0x32,0x63, 0x2,0x37,0x4d,
+  0x4,0x33,0x4f, 0x2,0x37,0x4c, 0x3,0x37,0x53, 0x2,0x37,0x4e,
+  0x2,0x37,0x4f, 0x2,0x37,0x51, 0x2,0x37,0x50, 0x2,0x37,0x55,
+  0x1,0x5c,0x3a, 0x1,0x5c,0x37, 0x1,0x5c,0x3b, 0x2,0x37,0x4b,
+  0x1,0x5c,0x3c, 0x2,0x37,0x54, 0x1,0x5c,0x39, 0x2,0x37,0x52,
+  0x1,0x5c,0x38, 0x3,0x32,0x62, 0x3,0x37,0x57, 0x4,0x33,0x56,
+  0x3,0x3d,0x56, 0x3,0x3d,0x53, 0x2,0x3e,0x40, 0x2,0x3e,0x42,
+  0x2,0x3e,0x3e, 0x2,0x3e,0x3f, 0x3,0x3d,0x51, 0x3,0x3d,0x52,
+  0x2,0x3e,0x43, 0x2,0x3e,0x45, 0x2,0x3e,0x46, 0x2,0x3e,0x41,
+  0x2,0x3e,0x44, 0x1,0x60,0x7a, 0x2,0x45,0x41, 0x3,0x43,0x27,
+  0x2,0x45,0x46, 0x2,0x45,0x3e, 0x2,0x45,0x42, 0x4,0x3f,0x29,
+  0x3,0x43,0x28, 0x2,0x45,0x47, 0x2,0x45,0x43, 0x1,0x65,0x42,
+  0x1,0x65,0x4a, 0x3,0x43,0x25, 0x1,0x65,0x45, 0x2,0x45,0x3f,
+  0x2,0x45,0x40, 0x1,0x69,0x75, 0x1,0x65,0x4d, 0x1,0x65,0x46,
+  0x3,0x43,0x26, 0x1,0x65,0x4b, 0x1,0x65,0x44, 0x2,0x45,0x45,
+  0x1,0x65,0x4c, 0x2,0x45,0x44, 0x1,0x65,0x48, 0x1,0x65,0x43,
+  0x1,0x65,0x49, 0x2,0x45,0x48, 0x2,0x4c,0x2e, 0x2,0x4c,0x30,
+  0x4,0x45,0x42, 0x3,0x48,0x39, 0x4,0x45,0x40, 0x4,0x45,0x3d,
+  0x3,0x48,0x33, 0x3,0x48,0x36, 0x3,0x48,0x35, 0x3,0x48,0x34,
+  0x3,0x48,0x38, 0x1,0x65,0x47, 0x3,0x48,0x3b, 0x3,0x48,0x3d,
+  0x2,0x4c,0x2b, 0x1,0x69,0x73, 0x2,0x4c,0x31, 0x1,0x69,0x74,
+  0x2,0x4c,0x2f, 0x2,0x4c,0x2a, 0x2,0x4c,0x2d, 0x2,0x4c,0x32,
+  0x1,0x69,0x72, 0x2,0x4c,0x2c, 0x1,0x6d,0x77, 0x2,0x52,0x47,
+  0x2,0x52,0x46, 0x3,0x4d,0x44, 0x1,0x6d,0x7a, 0x1,0x6d,0x78,
+  0x2,0x52,0x44, 0x1,0x6d,0x76, 0x2,0x52,0x45, 0x3,0x4d,0x46,
+  0x1,0x6d,0x79, 0x4,0x51,0x5f, 0x2,0x58,0x69, 0x3,0x51,0x7b,
+  0x2,0x58,0x6b, 0x3,0x51,0x79, 0x2,0x58,0x6a, 0x2,0x58,0x62,
+  0x2,0x58,0x66, 0x2,0x58,0x65, 0x2,0x58,0x63, 0x1,0x71,0x50,
+  0x1,0x71,0x51, 0x1,0x71,0x4f, 0x2,0x58,0x64, 0x2,0x58,0x67,
+  0x2,0x58,0x68, 0x3,0x55,0x59, 0x1,0x71,0x52, 0x3,0x55,0x58,
+  0x1,0x74,0x4a, 0x2,0x5d,0x6d, 0x3,0x55,0x5b, 0x1,0x74,0x47,
+  0x2,0x5d,0x67, 0x1,0x74,0x49, 0x1,0x74,0x4b, 0x4,0x51,0x61,
+  0x3,0x55,0x5c, 0x1,0x74,0x48, 0x2,0x5d,0x6c, 0x2,0x5d,0x68,
+  0x1,0x74,0x46, 0x2,0x5d,0x6b, 0x2,0x5d,0x66, 0x2,0x5d,0x6a,
+  0x2,0x5d,0x69, 0x3,0x58,0x36, 0x3,0x58,0x38, 0x2,0x62,0x42,
+  0x1,0x76,0x6e, 0x1,0x76,0x6f, 0x1,0x76,0x6c, 0x3,0x58,0x3b,
+  0x1,0x76,0x6d, 0x3,0x58,0x3a, 0x3,0x58,0x39, 0x2,0x62,0x41,
+  0x4,0x60,0x39, 0x2,0x66,0x27, 0x3,0x5a,0x60, 0x3,0x5a,0x5f,
+  0x1,0x78,0x54, 0x2,0x66,0x25, 0x2,0x66,0x26, 0x2,0x69,0x43,
+  0x2,0x69,0x46, 0x2,0x69,0x44, 0x2,0x69,0x45, 0x2,0x6b,0x6e,
+  0x3,0x5e,0x42, 0x4,0x66,0x5e, 0x1,0x7a,0x7a, 0x2,0x6f,0x3a,
+  0x2,0x70,0x42, 0x4,0x6b,0x74, 0x1,0x7c,0x63, 0x2,0x71,0x28,
+  0x2,0x71,0x29, 0x1,0x7d,0x33, 0x1,0x46,0x79, 0x1,0x52,0x64,
+  0x3,0x32,0x69, 0x2,0x3e,0x47, 0x3,0x3d,0x57, 0x2,0x45,0x49,
+  0x4,0x6c,0x76, 0x1,0x46,0x7a, 0x1,0x4b,0x32, 0x4,0x27,0x52,
+  0x1,0x4f,0x21, 0x3,0x2e,0x36, 0x2,0x2c,0x4a, 0x2,0x2c,0x4b,
+  0x1,0x56,0x7b, 0x4,0x33,0x5b, 0x2,0x3e,0x48, 0x1,0x60,0x7b,
+  0x1,0x65,0x4e, 0x1,0x74,0x4c, 0x2,0x5d,0x6e, 0x2,0x66,0x28,
+  0x2,0x69,0x47, 0x1,0x46,0x7b, 0x3,0x26,0x7b, 0x3,0x26,0x7c,
+  0xf,0x25,0x23, 0x2,0x28,0x41, 0x2,0x28,0x3c, 0x2,0x28,0x3e,
+  0x2,0x28,0x40, 0x2,0x28,0x3f, 0x2,0x28,0x3d, 0x1,0x4f,0x22,
+  0xf,0x28,0x34, 0x1,0x52,0x65, 0x2,0x2c,0x54, 0x3,0x2e,0x39,
+  0x2,0x2c,0x4f, 0x2,0x2c,0x4c, 0x3,0x2e,0x3b, 0x3,0x2e,0x3e,
+  0x2,0x2c,0x53, 0x3,0x2e,0x37, 0x3,0x2e,0x3a, 0x1,0x52,0x67,
+  0x1,0x52,0x68, 0x2,0x2c,0x52, 0x2,0x2c,0x51, 0x2,0x2c,0x50,
+  0x2,0x2c,0x4d, 0x2,0x2c,0x4e, 0x2,0x2c,0x55, 0x1,0x52,0x66,
+  0x3,0x2e,0x3d, 0xf,0x2c,0x5c, 0x3,0x65,0x6d, 0x3,0x65,0x6e,
+  0x1,0x57,0x21, 0x3,0x66,0x7c, 0x1,0x57,0x27, 0x1,0x57,0x26,
+  0x2,0x31,0x44, 0x2,0x31,0x3e, 0x2,0x31,0x3c, 0x3,0x32,0x6c,
+  0x1,0x57,0x24, 0x2,0x37,0x5c, 0x1,0x56,0x7d, 0x2,0x31,0x41,
+  0x2,0x31,0x45, 0x2,0x31,0x47, 0x2,0x31,0x43, 0x2,0x31,0x3d,
+  0x1,0x57,0x25, 0x2,0x31,0x42, 0x2,0x31,0x40, 0x1,0x56,0x7c,
+  0x2,0x31,0x48, 0x1,0x57,0x28, 0x2,0x31,0x46, 0x1,0x57,0x22,
+  0x2,0x31,0x3f, 0x3,0x32,0x6d, 0x1,0x57,0x23, 0x1,0x56,0x7e,
+  0x3,0x65,0x6f, 0x3,0x37,0x62, 0x1,0x5c,0x3e, 0x4,0x33,0x5d,
+  0x2,0x37,0x5d, 0x3,0x37,0x63, 0x3,0x37,0x5d, 0x2,0x37,0x56,
+  0x2,0x37,0x58, 0x2,0x37,0x5a, 0x3,0x37,0x5f, 0x2,0x37,0x5b,
+  0x2,0x37,0x59, 0x1,0x5c,0x3f, 0x3,0x37,0x61, 0x2,0x37,0x5e,
+  0x3,0x37,0x60, 0x2,0x37,0x57, 0x3,0x65,0x70, 0x3,0x65,0x71,
+  0x3,0x65,0x72, 0x2,0x3e,0x4c, 0x1,0x60,0x7c, 0x2,0x3e,0x54,
+  0x3,0x3d,0x5c, 0x2,0x3e,0x49, 0x6,0x4c,0x2f, 0x2,0x3e,0x55,
+  0x3,0x3d,0x59, 0x2,0x3e,0x4a, 0x2,0x3e,0x4b, 0x3,0x3d,0x5d,
+  0x4,0x39,0x54, 0x2,0x3e,0x53, 0x2,0x3e,0x52, 0x2,0x3e,0x4f,
+  0x1,0x5c,0x3d, 0x1,0x60,0x7d, 0x2,0x3e,0x4d, 0x2,0x3e,0x50,
+  0x1,0x60,0x7e, 0x2,0x3e,0x51, 0x2,0x3e,0x4e, 0x3,0x3d,0x5a,
+  0x3,0x43,0x31, 0x2,0x45,0x54, 0x3,0x43,0x2d, 0x2,0x45,0x58,
+  0x1,0x65,0x55, 0x3,0x43,0x2e, 0x2,0x4c,0x38, 0x1,0x65,0x58,
+  0x2,0x45,0x56, 0x3,0x43,0x37, 0x3,0x43,0x29, 0x2,0x45,0x53,
+  0x2,0x45,0x4e, 0x2,0x45,0x50, 0x2,0x45,0x51, 0x2,0x45,0x4a,
+  0x3,0x43,0x35, 0x1,0x65,0x54, 0x3,0x43,0x2b, 0x3,0x43,0x30,
+  0x1,0x65,0x53, 0x3,0x43,0x34, 0x1,0x65,0x4f, 0x2,0x45,0x4d,
+  0x3,0x43,0x2a, 0x1,0x65,0x56, 0x3,0x43,0x36, 0x1,0x65,0x57,
+  0x2,0x45,0x4c, 0x2,0x45,0x4f, 0x2,0x45,0x57, 0x1,0x65,0x51,
+  0x1,0x65,0x52, 0x2,0x45,0x55, 0x2,0x45,0x4b, 0xf,0x44,0x25,
+  0x4,0x45,0x53, 0x2,0x4c,0x3a, 0x1,0x69,0x77, 0x2,0x4c,0x3c,
+  0x2,0x45,0x52, 0x2,0x4c,0x3e, 0x1,0x69,0x7b, 0x2,0x4c,0x3f,
+  0x2,0x4c,0x3b, 0x3,0x48,0x3e, 0x1,0x69,0x78, 0x2,0x4c,0x37,
+  0x1,0x69,0x7a, 0x2,0x4c,0x34, 0x2,0x4c,0x39, 0x2,0x4c,0x3d,
+  0x2,0x4c,0x36, 0x3,0x48,0x3f, 0x3,0x48,0x45, 0x1,0x65,0x50,
+  0x3,0x48,0x44, 0x2,0x4c,0x33, 0x1,0x69,0x79, 0x2,0x4c,0x35,
+  0x3,0x65,0x73, 0x3,0x48,0x40, 0xf,0x4a,0x3f, 0x1,0x6d,0x7d,
+  0x2,0x52,0x49, 0x1,0x6e,0x23, 0x4,0x4b,0x59, 0x1,0x6e,0x21,
+  0x4,0x4b,0x57, 0x3,0x4d,0x4a, 0x1,0x69,0x76, 0x3,0x4d,0x4d,
+  0x2,0x52,0x50, 0x2,0x52,0x51, 0x1,0x6d,0x7c, 0x3,0x4d,0x48,
+  0x3,0x4d,0x4c, 0x2,0x52,0x4f, 0x2,0x52,0x52, 0x1,0x6d,0x7e,
+  0x1,0x6d,0x7b, 0x2,0x52,0x4b, 0x2,0x52,0x48, 0x2,0x52,0x4d,
+  0x2,0x52,0x4a, 0x1,0x6e,0x24, 0x2,0x52,0x4c, 0x3,0x4d,0x4b,
+  0x3,0x4d,0x49, 0x2,0x52,0x4e, 0x1,0x6e,0x22, 0x3,0x52,0x21,
+  0x3,0x65,0x74, 0x1,0x71,0x54, 0x2,0x58,0x72, 0x3,0x52,0x24,
+  0x2,0x58,0x6c, 0x2,0x58,0x70, 0x2,0x58,0x76, 0x2,0x58,0x77,
+  0x2,0x58,0x73, 0x2,0x58,0x74, 0x2,0x58,0x71, 0x4,0x4b,0x5d,
+  0x2,0x58,0x6e, 0x4,0x51,0x6e, 0x1,0x71,0x56, 0x1,0x71,0x53,
+  0x2,0x58,0x6d, 0x2,0x58,0x6f, 0x3,0x52,0x22, 0x1,0x71,0x55,
+  0x2,0x58,0x75, 0x3,0x65,0x75, 0x1,0x74,0x50, 0x3,0x55,0x60,
+  0x3,0x55,0x62, 0x2,0x5d,0x75, 0x2,0x5d,0x6f, 0x1,0x74,0x4f,
+  0x4,0x57,0x3e, 0x1,0x74,0x4d, 0x3,0x55,0x61, 0x2,0x5d,0x77,
+  0x1,0x74,0x4e, 0x2,0x5d,0x72, 0x2,0x5d,0x73, 0x2,0x5d,0x70,
+  0x2,0x5d,0x78, 0x2,0x5d,0x74, 0x4,0x57,0x40, 0x1,0x74,0x51,
+  0x2,0x5d,0x71, 0x2,0x5d,0x79, 0x2,0x5d,0x76, 0x3,0x58,0x43,
+  0x3,0x58,0x3e, 0x3,0x58,0x40, 0x2,0x62,0x46, 0x3,0x58,0x3f,
+  0x3,0x58,0x3c, 0x2,0x62,0x43, 0x3,0x58,0x42, 0x1,0x76,0x70,
+  0x4,0x5c,0x32, 0x2,0x62,0x47, 0x2,0x62,0x49, 0x2,0x62,0x48,
+  0x2,0x62,0x44, 0x2,0x62,0x45, 0x3,0x58,0x44, 0x2,0x66,0x2d,
+  0x3,0x5a,0x61, 0x1,0x78,0x55, 0x3,0x5a,0x62, 0x2,0x66,0x2a,
+  0x2,0x66,0x2c, 0x2,0x66,0x29, 0x2,0x66,0x2e, 0x4,0x60,0x42,
+  0x3,0x5a,0x63, 0x2,0x66,0x2b, 0x3,0x65,0x76, 0x2,0x69,0x49,
+  0x2,0x69,0x4c, 0x2,0x69,0x48, 0x1,0x79,0x7c, 0x2,0x69,0x4a,
+  0x2,0x69,0x4b, 0x2,0x69,0x4d, 0x1,0x79,0x7d, 0x1,0x7a,0x21,
+  0x1,0x79,0x7e, 0x2,0x6b,0x6f, 0x3,0x5e,0x45, 0x2,0x6b,0x71,
+  0x3,0x5e,0x43, 0x2,0x6b,0x70, 0x3,0x5e,0x44, 0x2,0x6d,0x64,
+  0xf,0x6a,0x66, 0x3,0x60,0x3c, 0x2,0x70,0x43, 0x2,0x71,0x2a,
+  0x1,0x46,0x7c, 0x3,0x24,0x33, 0x2,0x24,0x72, 0x1,0x4f,0x23,
+  0x2,0x28,0x43, 0x1,0x4f,0x24, 0x1,0x4f,0x25, 0x2,0x28,0x42,
+  0x2,0x2c,0x5a, 0x2,0x2c,0x59, 0x1,0x52,0x69, 0x1,0x52,0x6c,
+  0x1,0x52,0x6b, 0x1,0x52,0x6a, 0x2,0x2c,0x56, 0x2,0x2c,0x58,
+  0x2,0x2c,0x57, 0x3,0x65,0x77, 0x2,0x31,0x4b, 0x1,0x57,0x2a,
+  0x2,0x31,0x4f, 0x2,0x31,0x4e, 0x2,0x31,0x4d, 0x2,0x31,0x49,
+  0x1,0x57,0x29, 0x1,0x57,0x2d, 0x1,0x57,0x30, 0x3,0x32,0x6f,
+  0x3,0x32,0x70, 0x1,0x57,0x31, 0x2,0x31,0x4a, 0x2,0x31,0x4c,
+  0x1,0x57,0x2f, 0x1,0x57,0x2e, 0x1,0x57,0x2c, 0x1,0x57,0x2b,
+  0x2,0x37,0x65, 0x3,0x32,0x72, 0x2,0x37,0x63, 0x2,0x37,0x5f,
+  0x1,0x5c,0x40, 0x3,0x3d,0x5e, 0x2,0x37,0x60, 0x1,0x5c,0x41,
+  0x2,0x37,0x61, 0x2,0x37,0x62, 0x2,0x37,0x64, 0x3,0x37,0x66,
+  0x1,0x5c,0x42, 0x3,0x37,0x65, 0x2,0x3e,0x59, 0x3,0x3d,0x5f,
+  0x2,0x3e,0x58, 0x2,0x3e,0x57, 0x2,0x3e,0x56, 0x3,0x3d,0x64,
+  0x3,0x3d,0x62, 0x4,0x39,0x5a, 0x2,0x45,0x5c, 0x1,0x65,0x59,
+  0x4,0x3f,0x46, 0x2,0x45,0x59, 0x2,0x45,0x5b, 0x3,0x43,0x38,
+  0x1,0x65,0x5a, 0x3,0x43,0x3d, 0x1,0x65,0x5b, 0x2,0x45,0x5a,
+  0x3,0x43,0x39, 0x3,0x3d,0x63, 0x3,0x65,0x78, 0x3,0x48,0x48,
+  0x2,0x4c,0x48, 0x3,0x48,0x47, 0x2,0x4c,0x41, 0x2,0x4c,0x42,
+  0x5,0x47,0x7e, 0x1,0x69,0x7e, 0x1,0x69,0x7c, 0x1,0x69,0x7d,
+  0x2,0x4c,0x4a, 0x5,0x48,0x22, 0x2,0x4c,0x49, 0x2,0x4c,0x46,
+  0x2,0x4c,0x45, 0x2,0x4c,0x44, 0x2,0x4c,0x43, 0x2,0x4c,0x47,
+  0x2,0x4c,0x40, 0x3,0x65,0x79, 0x2,0x52,0x53, 0x2,0x52,0x58,
+  0x2,0x52,0x56, 0x3,0x4d,0x50, 0x3,0x4d,0x51, 0x3,0x4d,0x4f,
+  0x2,0x52,0x55, 0x2,0x52,0x54, 0x2,0x52,0x57, 0x3,0x65,0x7a,
+  0x2,0x58,0x78, 0x3,0x52,0x26, 0x1,0x71,0x57, 0x1,0x74,0x52,
+  0x2,0x5d,0x7b, 0x3,0x52,0x27, 0x1,0x74,0x53, 0x2,0x5d,0x7a,
+  0x2,0x62,0x4b, 0x2,0x62,0x4a, 0x1,0x76,0x71, 0x3,0x58,0x45,
+  0x2,0x66,0x2f, 0x1,0x78,0x56, 0x2,0x69,0x4e, 0x1,0x7b,0x6b,
+  0x2,0x6d,0x65, 0x3,0x60,0x3d, 0x2,0x70,0x45, 0x2,0x70,0x44,
+  0x2,0x21,0x67, 0x1,0x52,0x6d, 0x1,0x52,0x6e, 0x2,0x37,0x66,
+  0x3,0x65,0x7b, 0x1,0x65,0x5d, 0x1,0x46,0x7d, 0x1,0x4b,0x35,
+  0x1,0x4b,0x34, 0x1,0x4b,0x33, 0x4,0x24,0x68, 0x3,0x2a,0x3e,
+  0x3,0x2a,0x3d, 0x2,0x28,0x44, 0x3,0x2a,0x3f, 0x3,0x2a,0x42,
+  0x1,0x4f,0x27, 0x1,0x4f,0x26, 0x3,0x2a,0x44, 0x1,0x52,0x71,
+  0x3,0x65,0x4c, 0x2,0x2c,0x5c, 0x2,0x2c,0x5f, 0x2,0x2c,0x5d,
+  0x3,0x2e,0x42, 0x1,0x52,0x6f, 0x1,0x52,0x70, 0x3,0x2e,0x40,
+  0x3,0x2e,0x41, 0x2,0x2c,0x5b, 0x2,0x2c,0x5e, 0x3,0x2e,0x43,
+  0x1,0x57,0x38, 0x3,0x32,0x74, 0x3,0x32,0x73, 0x3,0x32,0x79,
+  0x2,0x31,0x56, 0x2,0x31,0x58, 0x2,0x31,0x57, 0x1,0x57,0x35,
+  0x2,0x31,0x52, 0x3,0x32,0x76, 0x3,0x32,0x7b, 0x1,0x57,0x33,
+  0x1,0x57,0x32, 0x3,0x32,0x77, 0x1,0x57,0x36, 0x1,0x57,0x34,
+  0x3,0x32,0x78, 0x1,0x57,0x37, 0x2,0x31,0x55, 0x2,0x31,0x50,
+  0x2,0x31,0x51, 0x2,0x31,0x54, 0x2,0x31,0x53, 0x3,0x32,0x7c,
+  0x3,0x37,0x69, 0x3,0x37,0x67, 0x3,0x37,0x6b, 0x3,0x37,0x6a,
+  0x2,0x37,0x69, 0x2,0x37,0x6a, 0x2,0x37,0x68, 0x3,0x37,0x6c,
+  0x2,0x37,0x67, 0x1,0x5c,0x43, 0xf,0x37,0x3f, 0x3,0x3d,0x65,
+  0x1,0x61,0x25, 0x6,0x4c,0x48, 0x2,0x3e,0x5a, 0x2,0x3e,0x5c,
+  0x2,0x3e,0x5e, 0x1,0x61,0x24, 0x6,0x4c,0x43, 0x3,0x3d,0x66,
+  0x1,0x61,0x22, 0x3,0x3d,0x69, 0x2,0x3e,0x5b, 0x1,0x61,0x23,
+  0x2,0x3e,0x5d, 0x1,0x61,0x21, 0x3,0x3d,0x68, 0x3,0x43,0x41,
+  0x2,0x45,0x66, 0x2,0x45,0x5d, 0x2,0x45,0x60, 0x2,0x45,0x64,
+  0x1,0x65,0x61, 0x2,0x45,0x62, 0x4,0x3f,0x50, 0x2,0x45,0x61,
+  0x2,0x45,0x5e, 0x2,0x45,0x5f, 0x1,0x65,0x5f, 0x2,0x45,0x65,
+  0x1,0x65,0x5e, 0x3,0x43,0x44, 0x1,0x65,0x63, 0x1,0x65,0x62,
+  0x1,0x65,0x60, 0x4,0x3f,0x4a, 0x2,0x45,0x63, 0x3,0x65,0x24,
+  0x2,0x4c,0x50, 0x4,0x45,0x5d, 0x2,0x4c,0x4f, 0x3,0x48,0x4b,
+  0x3,0x48,0x4d, 0x2,0x4c,0x4b, 0x3,0x48,0x50, 0x3,0x48,0x4f,
+  0x1,0x6a,0x21, 0x2,0x4c,0x4e, 0x2,0x4c,0x4d, 0x1,0x6a,0x22,
+  0x3,0x48,0x52, 0xf,0x4a,0x64, 0x4,0x4b,0x63, 0x4,0x45,0x5e,
+  0x4,0x4b,0x6b, 0x1,0x6e,0x29, 0x3,0x4d,0x55, 0x2,0x52,0x5a,
+  0x3,0x4d,0x56, 0x1,0x6e,0x2a, 0x1,0x6e,0x26, 0x1,0x6e,0x28,
+  0x3,0x4d,0x5a, 0x1,0x6e,0x25, 0x1,0x6e,0x27, 0x3,0x4d,0x53,
+  0x3,0x4d,0x57, 0x2,0x58,0x79, 0x3,0x52,0x2a, 0x1,0x71,0x5a,
+  0x2,0x58,0x7b, 0x2,0x58,0x7a, 0x3,0x55,0x64, 0x2,0x4c,0x4c,
+  0x1,0x71,0x5c, 0x1,0x71,0x5b, 0x1,0x71,0x58, 0x1,0x71,0x59,
+  0x3,0x52,0x2c, 0xf,0x5b,0x59, 0x3,0x52,0x29, 0x2,0x5e,0x22,
+  0x4,0x57,0x49, 0x2,0x5d,0x7e, 0x1,0x74,0x54, 0x2,0x5e,0x21,
+  0x4,0x57,0x48, 0x2,0x5e,0x23, 0x2,0x5d,0x7d, 0x2,0x5d,0x7c,
+  0x2,0x62,0x4c, 0x1,0x76,0x74, 0x1,0x76,0x72, 0x1,0x76,0x73,
+  0x3,0x5a,0x66, 0x4,0x60,0x45, 0x3,0x5a,0x65, 0x2,0x66,0x30,
+  0x2,0x66,0x31, 0x1,0x78,0x58, 0x3,0x5a,0x67, 0x1,0x78,0x57,
+  0x2,0x69,0x50, 0x2,0x69,0x51, 0x2,0x69,0x4f, 0x3,0x5c,0x64,
+  0x2,0x6d,0x66, 0x2,0x6d,0x67, 0x3,0x60,0x76, 0x3,0x60,0x77,
+  0x1,0x46,0x7e, 0x2,0x22,0x68, 0x1,0x4b,0x36, 0x2,0x28,0x45,
+  0x1,0x4f,0x29, 0x1,0x4f,0x28, 0x2,0x28,0x46, 0x3,0x2e,0x44,
+  0x3,0x2e,0x47, 0x2,0x2c,0x61, 0x1,0x52,0x72, 0x2,0x2c,0x60,
+  0x1,0x52,0x73, 0x3,0x2e,0x49, 0x3,0x2e,0x48, 0x1,0x57,0x39,
+  0x2,0x31,0x5b, 0x2,0x31,0x59, 0x2,0x31,0x5f, 0x1,0x57,0x3a,
+  0x2,0x31,0x5a, 0x2,0x31,0x5e, 0x2,0x31,0x5c, 0x2,0x31,0x5d,
+  0x2,0x37,0x6b, 0x2,0x37,0x6d, 0x3,0x37,0x72, 0x1,0x5c,0x44,
+  0x3,0x37,0x71, 0x2,0x37,0x6c, 0x1,0x5c,0x45, 0x1,0x61,0x28,
+  0x1,0x61,0x27, 0x1,0x61,0x26, 0x2,0x3e,0x5f, 0x3,0x37,0x70,
+  0x4,0x39,0x65, 0x2,0x45,0x69, 0x1,0x65,0x64, 0x1,0x65,0x65,
+  0x3,0x43,0x46, 0x2,0x45,0x68, 0x2,0x45,0x67, 0x3,0x43,0x47,
+  0x3,0x65,0x7c, 0x2,0x4c,0x51, 0x1,0x6a,0x24, 0x1,0x6a,0x23,
+  0x2,0x4c,0x52, 0x2,0x4c,0x53, 0x1,0x6e,0x2c, 0x1,0x6e,0x2b,
+  0x3,0x4d,0x5b, 0x2,0x59,0x21, 0x2,0x52,0x5b, 0x2,0x52,0x5d,
+  0x2,0x52,0x5c, 0x2,0x58,0x7e, 0x2,0x58,0x7c, 0x2,0x59,0x22,
+  0x2,0x58,0x7d, 0x5,0x56,0x52, 0x1,0x71,0x5d, 0x3,0x52,0x2f,
+  0x4,0x52,0x27, 0x3,0x52,0x2e, 0x2,0x5e,0x24, 0x1,0x74,0x55,
+  0x2,0x5e,0x25, 0x2,0x5e,0x26, 0x3,0x55,0x68, 0x1,0x76,0x75,
+  0x1,0x76,0x76, 0x4,0x60,0x4b, 0x1,0x7a,0x22, 0x3,0x5e,0x49,
+  0x3,0x5e,0x48, 0x1,0x7c,0x3d, 0x1,0x47,0x21, 0x3,0x26,0x7e,
+  0x3,0x27,0x21, 0x4,0x27,0x5b, 0x3,0x2a,0x47, 0x3,0x2e,0x4e,
+  0x2,0x2c,0x62, 0x3,0x2e,0x4f, 0x3,0x2e,0x4d, 0x3,0x2e,0x4b,
+  0x3,0x2e,0x4c, 0xf,0x2c,0x76, 0x2,0x31,0x60, 0x1,0x57,0x3b,
+  0x3,0x33,0x23, 0x3,0x33,0x26, 0x3,0x33,0x27, 0x3,0x33,0x24,
+  0x1,0x5d,0x7e, 0x1,0x5d,0x7d, 0x3,0x37,0x73, 0x3,0x3d,0x71,
+  0x1,0x61,0x2a, 0x2,0x3e,0x61, 0x1,0x61,0x29, 0x2,0x3e,0x60,
+  0x3,0x3d,0x70, 0x4,0x3f,0x57, 0x3,0x43,0x49, 0x3,0x43,0x4a,
+  0x2,0x45,0x6a, 0x3,0x48,0x54, 0x1,0x6a,0x25, 0x2,0x4c,0x54,
+  0x1,0x6a,0x26, 0x3,0x48,0x55, 0x3,0x52,0x30, 0x3,0x55,0x69,
+  0x3,0x55,0x6a, 0x4,0x57,0x50, 0x3,0x58,0x49, 0x1,0x7a,0x23,
+  0x2,0x69,0x52, 0x3,0x5f,0x55, 0x1,0x48,0x4c, 0x1,0x4f,0x2a,
+  0x2,0x28,0x47, 0x3,0x2e,0x51, 0x1,0x52,0x75, 0x3,0x2e,0x50,
+  0x1,0x52,0x74, 0x2,0x2c,0x63, 0x2,0x2c,0x64, 0x2,0x31,0x62,
+  0x2,0x31,0x64, 0x1,0x57,0x3c, 0x2,0x31,0x66, 0x2,0x31,0x69,
+  0x2,0x31,0x67, 0x3,0x33,0x2b, 0x4,0x2e,0x71, 0x3,0x33,0x2a,
+  0x2,0x31,0x68, 0x2,0x31,0x65, 0x2,0x31,0x61, 0x1,0x57,0x3d,
+  0x2,0x31,0x6a, 0x2,0x31,0x63, 0x3,0x33,0x2c, 0x3,0x37,0x78,
+  0x3,0x37,0x79, 0x2,0x37,0x76, 0x1,0x5c,0x4b, 0x2,0x38,0x21,
+  0x1,0x5c,0x48, 0x3,0x37,0x77, 0x2,0x37,0x78, 0x1,0x5c,0x4c,
+  0x3,0x37,0x7b, 0x1,0x5c,0x46, 0x3,0x37,0x76, 0x2,0x37,0x73,
+  0x2,0x38,0x22, 0x2,0x37,0x74, 0x2,0x37,0x71, 0x1,0x5c,0x4a,
+  0x4,0x33,0x7c, 0x1,0x5c,0x47, 0x4,0x33,0x7a, 0x2,0x37,0x77,
+  0x2,0x37,0x7a, 0x1,0x5c,0x49, 0x2,0x37,0x7b, 0x1,0x5c,0x4d,
+  0x2,0x37,0x7c, 0x2,0x37,0x72, 0x2,0x37,0x79, 0x2,0x37,0x7d,
+  0x2,0x37,0x75, 0x2,0x37,0x70, 0x2,0x37,0x6e, 0x3,0x37,0x7a,
+  0x3,0x65,0x7d, 0x2,0x37,0x7e, 0xf,0x37,0x4d, 0x2,0x37,0x6f,
+  0xf,0x36,0x7e, 0x5,0x3b,0x24, 0x2,0x3e,0x68, 0x3,0x3d,0x7b,
+  0x3,0x3d,0x78, 0x3,0x3d,0x75, 0x2,0x3e,0x64, 0x2,0x3e,0x6a,
+  0x1,0x61,0x2d, 0x2,0x3e,0x63, 0x2,0x3e,0x65, 0x1,0x61,0x2b,
+  0x2,0x3e,0x62, 0x1,0x61,0x32, 0x2,0x3e,0x66, 0x1,0x61,0x31,
+  0x2,0x3e,0x67, 0x1,0x61,0x33, 0x1,0x61,0x2e, 0x1,0x61,0x34,
+  0x1,0x61,0x2f, 0x3,0x3d,0x79, 0x1,0x61,0x30, 0x3,0x3d,0x72,
+  0x1,0x61,0x2c, 0x3,0x3d,0x76, 0x2,0x3e,0x69, 0x3,0x65,0x7e,
+  0x3,0x43,0x4f, 0x4,0x3f,0x67, 0x1,0x65,0x68, 0x2,0x45,0x75,
+  0x3,0x43,0x4c, 0x2,0x45,0x78, 0x2,0x45,0x6c, 0x2,0x45,0x71,
+  0x2,0x45,0x6b, 0x1,0x65,0x6a, 0x3,0x43,0x55, 0x2,0x45,0x6f,
+  0x4,0x3f,0x5e, 0x3,0x43,0x4d, 0x3,0x3d,0x77, 0x2,0x45,0x6d,
+  0x1,0x65,0x69, 0x3,0x43,0x54, 0x2,0x45,0x74, 0x2,0x45,0x73,
+  0x2,0x45,0x70, 0x2,0x45,0x72, 0x2,0x45,0x6e, 0x1,0x6a,0x2a,
+  0x2,0x45,0x77, 0x1,0x65,0x66, 0x2,0x45,0x76, 0x3,0x43,0x51,
+  0xf,0x44,0x45, 0x3,0x48,0x56, 0x2,0x4c,0x64, 0x3,0x48,0x58,
+  0x1,0x6a,0x31, 0x2,0x4c,0x5f, 0x3,0x48,0x60, 0x1,0x6a,0x30,
+  0x2,0x4c,0x55, 0x4,0x45,0x6b, 0x2,0x4c,0x57, 0x1,0x6a,0x29,
+  0x2,0x4c,0x5c, 0x2,0x4c,0x5b, 0x2,0x4c,0x5e, 0x1,0x6a,0x2e,
+  0x2,0x4c,0x59, 0x2,0x4c,0x58, 0x3,0x48,0x5a, 0x3,0x48,0x5e,
+  0x1,0x6a,0x2d, 0x1,0x6a,0x28, 0x2,0x4c,0x5a, 0x1,0x6a,0x2b,
+  0x2,0x4c,0x60, 0x2,0x4c,0x62, 0x2,0x4c,0x5d, 0x2,0x4c,0x56,
+  0x1,0x6a,0x2c, 0x3,0x48,0x57, 0x3,0x48,0x5d, 0x1,0x6e,0x34,
+  0x1,0x6a,0x27, 0x4,0x45,0x64, 0x3,0x48,0x5c, 0x2,0x4c,0x63,
+  0x4,0x45,0x70, 0x2,0x52,0x61, 0x1,0x6e,0x2d, 0x3,0x4d,0x5c,
+  0x2,0x52,0x63, 0x4,0x4c,0x2b, 0x1,0x6e,0x2e, 0x3,0x4d,0x65,
+  0x3,0x4d,0x5d, 0x1,0x6e,0x30, 0x2,0x52,0x66, 0x4,0x4b,0x7a,
+  0x2,0x52,0x5e, 0x1,0x6a,0x2f, 0x2,0x52,0x64, 0x4,0x4b,0x73,
+  0x4,0x4c,0x31, 0x4,0x4b,0x74, 0x4,0x4c,0x2a, 0x2,0x52,0x60,
+  0x3,0x4d,0x60, 0x1,0x65,0x67, 0x1,0x6e,0x33, 0x4,0x4c,0x21,
+  0x4,0x4b,0x78, 0x1,0x6e,0x2f, 0x4,0x4c,0x26, 0x1,0x6e,0x31,
+  0x1,0x6e,0x32, 0x4,0x4b,0x76, 0x1,0x71,0x60, 0x2,0x52,0x65,
+  0x2,0x52,0x5f, 0x1,0x6e,0x35, 0x3,0x4d,0x63, 0x2,0x52,0x62,
+  0x3,0x66,0x21, 0x2,0x59,0x2c, 0x2,0x59,0x27, 0x4,0x52,0x2d,
+  0x5,0x56,0x69, 0x2,0x59,0x31, 0x1,0x71,0x5e, 0x2,0x59,0x29,
+  0x1,0x71,0x62, 0x2,0x59,0x2f, 0x2,0x59,0x26, 0x2,0x59,0x23,
+  0x2,0x59,0x32, 0x1,0x74,0x5b, 0x1,0x71,0x63, 0x2,0x59,0x2e,
+  0x2,0x59,0x24, 0x1,0x71,0x61, 0x2,0x59,0x28, 0x1,0x71,0x65,
+  0x2,0x59,0x25, 0x2,0x59,0x2a, 0x1,0x71,0x64, 0x2,0x59,0x2d,
+  0x2,0x59,0x30, 0x3,0x52,0x33, 0x3,0x52,0x34, 0x2,0x5e,0x38,
+  0x2,0x5e,0x39, 0x2,0x5e,0x29, 0x2,0x5e,0x30, 0x2,0x5e,0x2e,
+  0x4,0x57,0x5f, 0x3,0x55,0x6d, 0x1,0x74,0x59, 0x2,0x5e,0x35,
+  0x2,0x59,0x2b, 0x3,0x55,0x6b, 0x2,0x5e,0x2c, 0x3,0x55,0x6e,
+  0x2,0x5e,0x36, 0x1,0x74,0x58, 0x2,0x5e,0x2b, 0x2,0x5e,0x2a,
+  0x2,0x5e,0x34, 0x2,0x5e,0x31, 0x2,0x5e,0x33, 0x4,0x57,0x54,
+  0x2,0x5e,0x27, 0x2,0x5e,0x37, 0x1,0x74,0x56, 0x3,0x55,0x70,
+  0x2,0x5e,0x32, 0x2,0x5e,0x3b, 0x2,0x5e,0x2f, 0x1,0x74,0x5a,
+  0x1,0x74,0x57, 0x2,0x5e,0x2d, 0x2,0x5e,0x28, 0x2,0x5e,0x3a,
+  0x1,0x71,0x5f, 0x3,0x55,0x71, 0xf,0x5b,0x5f, 0x4,0x57,0x57,
+  0x3,0x55,0x6f, 0x2,0x62,0x4f, 0x3,0x58,0x50, 0x3,0x58,0x4e,
+  0x2,0x62,0x4d, 0x2,0x62,0x53, 0x1,0x76,0x7a, 0x2,0x62,0x51,
+  0x2,0x62,0x50, 0x1,0x76,0x7c, 0x2,0x62,0x56, 0x1,0x76,0x7b,
+  0x3,0x58,0x51, 0x2,0x62,0x57, 0x2,0x62,0x54, 0x1,0x76,0x78,
+  0x2,0x62,0x55, 0x2,0x62,0x4e, 0x1,0x76,0x79, 0x1,0x76,0x77,
+  0x2,0x66,0x35, 0x2,0x62,0x52, 0x3,0x58,0x4c, 0x3,0x66,0x22,
+  0x2,0x62,0x58, 0x3,0x66,0x23, 0x2,0x66,0x32, 0x3,0x5a,0x6f,
+  0x3,0x5a,0x6e, 0x4,0x60,0x4e, 0x1,0x78,0x5d, 0x1,0x78,0x5b,
+  0x2,0x66,0x34, 0x4,0x60,0x4c, 0x2,0x66,0x36, 0x2,0x66,0x33,
+  0x1,0x78,0x5c, 0x1,0x78,0x59, 0x1,0x78,0x5a, 0x1,0x78,0x5e,
+  0x3,0x66,0x24, 0x1,0x7a,0x25, 0x3,0x5c,0x66, 0x2,0x69,0x57,
+  0x5,0x6c,0x79, 0x2,0x69,0x56, 0x2,0x69,0x54, 0x2,0x69,0x53,
+  0x2,0x69,0x55, 0x3,0x5c,0x65, 0x1,0x7a,0x24, 0x1,0x7a,0x26,
+  0x3,0x66,0x25, 0xf,0x65,0x67, 0x1,0x7a,0x7b, 0x3,0x5e,0x4c,
+  0x4,0x66,0x6f, 0x2,0x6b,0x73, 0x2,0x6b,0x72, 0x3,0x5c,0x67,
+  0x3,0x5e,0x4b, 0x2,0x6d,0x68, 0x3,0x5f,0x58, 0x2,0x6d,0x6a,
+  0x2,0x6d,0x6c, 0x2,0x6d,0x6b, 0x2,0x6d,0x69, 0x3,0x5f,0x57,
+  0x3,0x60,0x3f, 0x1,0x7b,0x6d, 0x1,0x7b,0x6c, 0x3,0x60,0x3e,
+  0x1,0x7c,0x3f, 0x1,0x7c,0x3e, 0x1,0x7c,0x40, 0x2,0x6f,0x3c,
+  0x2,0x6f,0x3b, 0x3,0x66,0x26, 0x2,0x71,0x2b, 0x2,0x70,0x46,
+  0x2,0x71,0x2c, 0x1,0x7d,0x25, 0x3,0x61,0x44, 0x1,0x7d,0x26,
+  0x2,0x71,0x5c, 0x4,0x6d,0x5b, 0x3,0x62,0x3a, 0x1,0x7d,0x4b,
+  0x1,0x48,0x4d, 0x3,0x2a,0x49, 0x2,0x28,0x48, 0x3,0x2a,0x48,
+  0x3,0x2e,0x52, 0x2,0x2c,0x66, 0x2,0x2c,0x67, 0x2,0x2c,0x65,
+  0x3,0x2e,0x54, 0x3,0x2e,0x53, 0x1,0x52,0x76, 0xf,0x2d,0x21,
+  0x2,0x2c,0x68, 0x2,0x2c,0x69, 0x2,0x2c,0x6a, 0x3,0x33,0x31,
+  0x2,0x31,0x6b, 0x2,0x31,0x71, 0x3,0x33,0x2e, 0x3,0x33,0x30,
+  0x2,0x31,0x6f, 0x1,0x57,0x3e, 0x2,0x31,0x6d, 0x3,0x33,0x32,
+  0x2,0x31,0x6e, 0x2,0x31,0x70, 0x3,0x33,0x2d, 0x2,0x31,0x6c,
+  0x1,0x5c,0x4e, 0x3,0x37,0x7d, 0x2,0x38,0x23, 0x1,0x5c,0x50,
+  0x2,0x38,0x25, 0x1,0x5c,0x4f, 0x2,0x38,0x24, 0x3,0x37,0x7e,
+  0x3,0x38,0x21, 0x3,0x38,0x3e, 0x3,0x38,0x22, 0x4,0x34,0x22,
+  0x2,0x3e,0x6c, 0x1,0x61,0x35, 0x3,0x3e,0x21, 0x2,0x3e,0x6e,
+  0x2,0x3e,0x6b, 0x2,0x38,0x26, 0x3,0x3e,0x23, 0x1,0x61,0x36,
+  0x3,0x3e,0x22, 0x3,0x3d,0x7e, 0x2,0x3e,0x6d, 0x3,0x66,0x27,
+  0xf,0x3e,0x21, 0xf,0x3e,0x23, 0x3,0x43,0x58, 0x2,0x45,0x7b,
+  0x3,0x43,0x5c, 0x1,0x65,0x6b, 0x2,0x45,0x79, 0x1,0x65,0x6c,
+  0x2,0x45,0x7a, 0x1,0x65,0x6d, 0x4,0x45,0x74, 0x3,0x48,0x62,
+  0x3,0x48,0x61, 0x1,0x6a,0x32, 0x2,0x4c,0x68, 0x2,0x4c,0x65,
+  0x2,0x4c,0x67, 0x1,0x6a,0x33, 0x1,0x6a,0x34, 0x2,0x4c,0x66,
+  0xf,0x4b,0x27, 0xf,0x4b,0x2b, 0x3,0x4d,0x6f, 0x3,0x4d,0x71,
+  0x3,0x4d,0x6d, 0x2,0x52,0x67, 0x3,0x4d,0x70, 0x3,0x4d,0x73,
+  0x2,0x52,0x68, 0x3,0x4d,0x72, 0x1,0x6e,0x36, 0x2,0x52,0x6a,
+  0x2,0x52,0x69, 0x3,0x4d,0x6e, 0x1,0x23,0x23, 0x4,0x52,0x44,
+  0x2,0x59,0x36, 0x2,0x59,0x37, 0x2,0x59,0x33, 0x3,0x52,0x37,
+  0x2,0x59,0x34, 0x1,0x71,0x66, 0x1,0x71,0x67, 0x2,0x59,0x35,
+  0x1,0x74,0x61, 0x3,0x55,0x75, 0x3,0x55,0x74, 0x1,0x74,0x5d,
+  0x1,0x74,0x62, 0x1,0x74,0x5e, 0x1,0x74,0x60, 0x1,0x74,0x5c,
+  0x3,0x52,0x39, 0x1,0x74,0x5f, 0x3,0x58,0x55, 0x4,0x5c,0x5a,
+  0x4,0x5c,0x5b, 0x3,0x58,0x54, 0x1,0x76,0x7d, 0x2,0x5e,0x3c,
+  0x7,0x48,0x57, 0x2,0x66,0x38, 0x4,0x60,0x5a, 0x2,0x66,0x37,
+  0x3,0x66,0x28, 0x2,0x69,0x58, 0x1,0x7a,0x27, 0x1,0x7a,0x28,
+  0x2,0x6d,0x6e, 0x2,0x6b,0x74, 0x3,0x61,0x69, 0x2,0x6d,0x6d,
+  0x3,0x60,0x40, 0x2,0x71,0x2d, 0x2,0x71,0x72, 0x1,0x48,0x4e,
+  0x3,0x27,0x22, 0x1,0x4b,0x37, 0x3,0x2a,0x4b, 0x2,0x28,0x49,
+  0x1,0x4f,0x2b, 0x3,0x2a,0x4a, 0x1,0x52,0x79, 0x2,0x2c,0x6d,
+  0x1,0x52,0x77, 0x2,0x2c,0x6b, 0x1,0x52,0x7c, 0x1,0x52,0x78,
+  0x1,0x52,0x7d, 0x1,0x52,0x7b, 0x2,0x2c,0x6c, 0x1,0x52,0x7a,
+  0x1,0x57,0x42, 0x1,0x57,0x41, 0x2,0x31,0x7c, 0x1,0x57,0x4a,
+  0x2,0x31,0x75, 0x2,0x31,0x7b, 0x1,0x57,0x46, 0x2,0x31,0x74,
+  0x2,0x31,0x7a, 0x2,0x31,0x78, 0x1,0x57,0x45, 0x1,0x57,0x47,
+  0x2,0x31,0x77, 0x1,0x57,0x40, 0x2,0x31,0x76, 0x1,0x57,0x4b,
+  0x1,0x57,0x48, 0x1,0x57,0x4c, 0x1,0x57,0x49, 0x2,0x31,0x73,
+  0x2,0x31,0x72, 0x2,0x31,0x79, 0x1,0x57,0x43, 0x1,0x57,0x3f,
+  0x1,0x57,0x44, 0x4,0x2f,0x25, 0x3,0x33,0x37, 0x3,0x33,0x3b,
+  0x2,0x38,0x35, 0x2,0x38,0x2e, 0x4,0x3a,0x26, 0x1,0x61,0x3b,
+  0x2,0x38,0x2d, 0x3,0x38,0x29, 0x1,0x5c,0x54, 0x1,0x5c,0x5b,
+  0x1,0x5c,0x58, 0x1,0x5c,0x5e, 0x1,0x5c,0x5d, 0x1,0x5c,0x59,
+  0x3,0x38,0x26, 0x2,0x38,0x27, 0x2,0x38,0x2a, 0x3,0x38,0x27,
+  0x2,0x38,0x29, 0x1,0x5c,0x55, 0x2,0x38,0x2b, 0x2,0x38,0x34,
+  0x1,0x5c,0x56, 0x2,0x38,0x28, 0x2,0x38,0x31, 0x2,0x38,0x32,
+  0x1,0x5c,0x57, 0x2,0x38,0x2f, 0x1,0x5c,0x5c, 0x1,0x5c,0x52,
+  0x1,0x5c,0x5a, 0x2,0x38,0x2c, 0x1,0x5c,0x51, 0x2,0x38,0x30,
+  0x3,0x38,0x2e, 0x3,0x38,0x24, 0x2,0x38,0x33, 0xf,0x37,0x54,
+  0x3,0x38,0x2b, 0x3,0x3e,0x34, 0x2,0x3f,0x21, 0x2,0x3e,0x76,
+  0x1,0x61,0x38, 0x2,0x3e,0x7d, 0x2,0x3e,0x7a, 0x2,0x3e,0x72,
+  0x2,0x3e,0x7b, 0x1,0x61,0x3a, 0x2,0x3e,0x73, 0x3,0x3e,0x29,
+  0x2,0x3e,0x6f, 0x3,0x3e,0x26, 0x3,0x3e,0x2e, 0x1,0x65,0x73,
+  0x2,0x3e,0x78, 0x3,0x3e,0x2f, 0x1,0x61,0x37, 0x2,0x3e,0x7e,
+  0x3,0x3e,0x28, 0x1,0x61,0x3e, 0x1,0x61,0x40, 0x2,0x3e,0x71,
+  0x3,0x3e,0x2c, 0x4,0x3a,0x27, 0x1,0x61,0x3f, 0x2,0x3e,0x74,
+  0x1,0x61,0x39, 0x2,0x3e,0x7c, 0x2,0x3e,0x75, 0x2,0x3e,0x79,
+  0x3,0x3e,0x2a, 0x2,0x3e,0x77, 0x1,0x61,0x3c, 0x2,0x3e,0x70,
+  0x1,0x61,0x41, 0x1,0x5c,0x53, 0x1,0x61,0x3d, 0x1,0x61,0x42,
+  0x3,0x3e,0x24, 0x3,0x3e,0x35, 0x3,0x3e,0x33, 0x3,0x43,0x67,
+  0x1,0x65,0x6f, 0x2,0x46,0x24, 0x2,0x46,0x26, 0x2,0x46,0x28,
+  0x2,0x46,0x2c, 0x3,0x3e,0x2b, 0x2,0x46,0x22, 0x2,0x45,0x7e,
+  0x1,0x65,0x71, 0x4,0x3f,0x71, 0x2,0x46,0x27, 0x2,0x46,0x2b,
+  0x2,0x46,0x23, 0x2,0x45,0x7d, 0x3,0x43,0x66, 0x2,0x45,0x7c,
+  0x3,0x43,0x69, 0x3,0x43,0x60, 0x3,0x43,0x62, 0x2,0x46,0x29,
+  0x2,0x46,0x21, 0x2,0x46,0x25, 0x1,0x65,0x72, 0x3,0x43,0x5e,
+  0x1,0x65,0x70, 0x2,0x46,0x2d, 0x1,0x65,0x6e, 0x2,0x46,0x2a,
+  0x3,0x43,0x64, 0x2,0x4c,0x79, 0x3,0x43,0x68, 0x3,0x43,0x6a,
+  0x3,0x43,0x63, 0x1,0x6a,0x37, 0x2,0x4c,0x71, 0x1,0x6e,0x43,
+  0x2,0x4c,0x7b, 0x1,0x6a,0x3a, 0x2,0x4d,0x21, 0x1,0x6a,0x40,
+  0x2,0x4c,0x6c, 0x3,0x48,0x74, 0x4,0x45,0x7b, 0x2,0x4c,0x7c,
+  0x2,0x4c,0x69, 0x3,0x48,0x6d, 0x2,0x4c,0x7e, 0x2,0x4c,0x6d,
+  0x3,0x48,0x6e, 0x1,0x6a,0x47, 0x1,0x6a,0x44, 0x2,0x4c,0x7d,
+  0x2,0x4c,0x77, 0x1,0x6a,0x36, 0x1,0x6a,0x3e, 0x1,0x6a,0x3d,
+  0x3,0x48,0x70, 0x1,0x6a,0x3c, 0x1,0x6a,0x42, 0x3,0x48,0x69,
+  0x2,0x4c,0x6a, 0x1,0x6a,0x43, 0x2,0x4c,0x78, 0x1,0x6a,0x3f,
+  0x1,0x6a,0x35, 0x2,0x4c,0x7a, 0x1,0x6a,0x38, 0x1,0x6a,0x39,
+  0x1,0x6a,0x41, 0x2,0x4c,0x6f, 0x2,0x4c,0x6e, 0x2,0x4c,0x6b,
+  0x4,0x45,0x7c, 0x2,0x4c,0x73, 0x2,0x4c,0x70, 0x2,0x4c,0x74,
+  0x1,0x6a,0x46, 0x3,0x48,0x68, 0x2,0x4d,0x22, 0x1,0x6a,0x3b,
+  0x2,0x4c,0x75, 0x2,0x4c,0x76, 0x3,0x48,0x71, 0x2,0x4c,0x72,
+  0x3,0x48,0x73, 0x3,0x66,0x29, 0x3,0x48,0x6b, 0x1,0x6a,0x45,
+  0x3,0x66,0x2b, 0x3,0x4e,0x22, 0x2,0x52,0x6f, 0x1,0x6e,0x3b,
+  0x1,0x6e,0x44, 0x1,0x6e,0x40, 0x2,0x52,0x6c, 0x3,0x4d,0x7c,
+  0x1,0x6e,0x3d, 0x1,0x6e,0x41, 0x2,0x52,0x78, 0x1,0x6e,0x37,
+  0x2,0x52,0x70, 0x3,0x4d,0x78, 0x1,0x6e,0x3f, 0x3,0x4e,0x24,
+  0x3,0x4e,0x2f, 0x2,0x52,0x73, 0x2,0x52,0x6e, 0x1,0x6e,0x3e,
+  0x1,0x6e,0x42, 0x2,0x52,0x6d, 0x3,0x4e,0x2e, 0x1,0x6e,0x3c,
+  0x3,0x4d,0x77, 0x2,0x52,0x77, 0x1,0x6e,0x39, 0x2,0x52,0x76,
+  0x2,0x52,0x75, 0x1,0x6e,0x45, 0x2,0x50,0x3b, 0x1,0x6e,0x38,
+  0x3,0x4e,0x2b, 0x2,0x52,0x74, 0x2,0x52,0x6b, 0x3,0x4d,0x75,
+  0x1,0x6e,0x46, 0x2,0x52,0x72, 0x1,0x6e,0x3a, 0x3,0x4e,0x28,
+  0x3,0x4e,0x29, 0x3,0x4e,0x25, 0x3,0x4e,0x2c, 0x3,0x4e,0x27,
+  0x3,0x4d,0x7e, 0x3,0x4d,0x7d, 0x2,0x52,0x71, 0x4,0x4c,0x45,
+  0x3,0x66,0x2a, 0x1,0x71,0x6a, 0x1,0x71,0x6f, 0x1,0x71,0x68,
+  0x2,0x59,0x44, 0x2,0x59,0x3b, 0x2,0x59,0x47, 0x2,0x59,0x3f,
+  0x2,0x59,0x45, 0x1,0x71,0x70, 0x1,0x71,0x69, 0x2,0x59,0x38,
+  0x2,0x59,0x3e, 0x2,0x59,0x48, 0x2,0x59,0x41, 0x2,0x59,0x46,
+  0x2,0x59,0x3a, 0x4,0x52,0x4c, 0x3,0x52,0x3b, 0x2,0x59,0x42,
+  0x1,0x71,0x6b, 0x2,0x59,0x40, 0x1,0x71,0x6e, 0x1,0x71,0x6d,
+  0x2,0x59,0x3c, 0x2,0x59,0x3d, 0x2,0x59,0x39, 0x2,0x59,0x43,
+  0x1,0x71,0x6c, 0x2,0x59,0x4a, 0x2,0x59,0x49, 0x3,0x52,0x40,
+  0x3,0x52,0x3f, 0x2,0x5e,0x47, 0x2,0x5e,0x43, 0x1,0x74,0x69,
+  0x3,0x55,0x79, 0x2,0x5e,0x3d, 0x1,0x74,0x63, 0x1,0x74,0x73,
+  0x2,0x5e,0x49, 0x1,0x74,0x6b, 0x1,0x74,0x67, 0x2,0x5e,0x40,
+  0x1,0x74,0x6e, 0x1,0x74,0x71, 0x2,0x5e,0x4b, 0x1,0x74,0x66,
+  0x2,0x5e,0x42, 0x1,0x74,0x6f, 0x2,0x5e,0x4d, 0x2,0x5e,0x4a,
+  0x2,0x5e,0x3e, 0x1,0x74,0x6a, 0x1,0x74,0x64, 0x1,0x74,0x72,
+  0x2,0x5e,0x45, 0x1,0x74,0x6d, 0x2,0x5e,0x3f, 0x1,0x74,0x68,
+  0x2,0x5e,0x4c, 0x1,0x74,0x6c, 0x1,0x74,0x65, 0x2,0x5e,0x46,
+  0x1,0x74,0x70, 0x2,0x5e,0x44, 0x2,0x5e,0x48, 0x3,0x55,0x7a,
+  0x4,0x5c,0x5f, 0x3,0x58,0x59, 0x2,0x62,0x5a, 0x2,0x62,0x60,
+  0x1,0x77,0x25, 0x2,0x62,0x63, 0x1,0x76,0x7e, 0x1,0x77,0x21,
+  0x2,0x62,0x5b, 0x2,0x62,0x62, 0x2,0x62,0x5d, 0x1,0x77,0x26,
+  0x1,0x77,0x23, 0x3,0x58,0x5b, 0x2,0x62,0x59, 0x3,0x58,0x58,
+  0x1,0x77,0x22, 0x2,0x62,0x5f, 0x2,0x62,0x61, 0x1,0x77,0x24,
+  0x2,0x62,0x5e, 0x2,0x62,0x5c, 0x3,0x66,0x2c, 0x4,0x5c,0x5e,
+  0x3,0x58,0x5a, 0x2,0x66,0x42, 0x1,0x78,0x62, 0x1,0x78,0x63,
+  0x1,0x78,0x5f, 0x3,0x5a,0x72, 0x1,0x78,0x60, 0x3,0x5a,0x74,
+  0x2,0x66,0x3e, 0x2,0x66,0x3c, 0x3,0x5a,0x75, 0x2,0x66,0x40,
+  0x1,0x78,0x64, 0x2,0x66,0x41, 0x2,0x66,0x3a, 0x2,0x66,0x39,
+  0x2,0x66,0x3d, 0x2,0x66,0x3b, 0x1,0x78,0x61, 0x2,0x66,0x3f,
+  0x2,0x69,0x59, 0x1,0x7a,0x2b, 0x1,0x7a,0x2a, 0x2,0x69,0x5a,
+  0x3,0x5c,0x6c, 0x2,0x69,0x5c, 0x2,0x69,0x5b, 0x1,0x7a,0x2c,
+  0x3,0x5e,0x53, 0x3,0x5e,0x50, 0x2,0x6b,0x79, 0x2,0x6b,0x76,
+  0x2,0x6b,0x77, 0x3,0x5e,0x51, 0x2,0x6b,0x75, 0x2,0x6b,0x78,
+  0x1,0x7a,0x7d, 0x2,0x6b,0x7a, 0x3,0x5e,0x52, 0x1,0x7a,0x7c,
+  0x2,0x6d,0x6f, 0x3,0x5f,0x5a, 0x1,0x7c,0x41, 0x1,0x7c,0x43,
+  0x2,0x6f,0x3d, 0x1,0x7c,0x42, 0x2,0x70,0x47, 0x2,0x71,0x2f,
+  0x2,0x71,0x31, 0x2,0x71,0x2e, 0x2,0x71,0x30, 0x1,0x7d,0x39,
+  0x4,0x6d,0x78, 0x3,0x62,0x35, 0x1,0x48,0x4f, 0x4,0x25,0x57,
+  0x1,0x52,0x7e, 0x2,0x30,0x52, 0x1,0x57,0x4d, 0x3,0x38,0x31,
+  0xf,0x31,0x78, 0x1,0x5c,0x5f, 0x2,0x3f,0x22, 0x2,0x3f,0x23,
+  0x3,0x66,0x2d, 0x3,0x48,0x77, 0x2,0x59,0x4b, 0x1,0x74,0x74,
+  0x2,0x5e,0x4e, 0x3,0x55,0x7d, 0x3,0x58,0x5c, 0x1,0x77,0x27,
+  0x2,0x66,0x44, 0x2,0x66,0x43, 0x1,0x7a,0x2d, 0x2,0x6b,0x7b,
+  0x3,0x5f,0x5b, 0x2,0x6d,0x70, 0x1,0x7c,0x64, 0x2,0x22,0x69,
+  0x4,0x22,0x21, 0x1,0x4f,0x2c, 0x1,0x4b,0x38, 0xf,0x28,0x4a,
+  0x2,0x2c,0x6e, 0x3,0x2a,0x4e, 0x2,0x32,0x24, 0x2,0x31,0x7d,
+  0x2,0x32,0x23, 0x2,0x32,0x21, 0x1,0x57,0x4e, 0x2,0x32,0x22,
+  0x2,0x31,0x7e, 0x3,0x33,0x3c, 0x2,0x38,0x36, 0x4,0x3a,0x2b,
+  0x2,0x3f,0x24, 0x2,0x3f,0x25, 0x2,0x46,0x30, 0x2,0x46,0x31,
+  0x1,0x65,0x75, 0x1,0x65,0x76, 0x2,0x46,0x2f, 0x2,0x46,0x32,
+  0x2,0x46,0x2e, 0x1,0x65,0x74, 0x3,0x48,0x78, 0x1,0x6a,0x48,
+  0x3,0x48,0x79, 0x1,0x65,0x77, 0x2,0x4d,0x23, 0x1,0x6e,0x47,
+  0x2,0x52,0x79, 0x1,0x6e,0x48, 0x3,0x4e,0x30, 0x1,0x71,0x71,
+  0x2,0x59,0x4e, 0x2,0x59,0x4c, 0x2,0x59,0x4d, 0x2,0x5e,0x51,
+  0x2,0x5e,0x50, 0x2,0x5e,0x4f, 0x7,0x41,0x61, 0x4,0x5c,0x68,
+  0x2,0x66,0x45, 0x4,0x60,0x6f, 0x1,0x78,0x65, 0x2,0x66,0x46,
+  0x2,0x6d,0x71, 0x1,0x7c,0x65, 0x2,0x70,0x48, 0x1,0x48,0x50,
+  0x1,0x4f,0x2e, 0x1,0x4f,0x2d, 0x2,0x2c,0x70, 0x1,0x53,0x21,
+  0x3,0x2e,0x5d, 0x4,0x2f,0x30, 0x2,0x2c,0x6f, 0x2,0x32,0x26,
+  0x3,0x33,0x3d, 0x1,0x57,0x4f, 0x2,0x38,0x37, 0x2,0x32,0x25,
+  0x3,0x33,0x3f, 0x4,0x2f,0x2f, 0x3,0x33,0x3e, 0x1,0x5c,0x61,
+  0x2,0x38,0x3a, 0x2,0x38,0x38, 0x2,0x38,0x39, 0x1,0x5c,0x60,
+  0x2,0x3f,0x27, 0x2,0x3f,0x28, 0x2,0x3f,0x26, 0x3,0x43,0x6e,
+  0x1,0x65,0x7a, 0x2,0x46,0x34, 0x2,0x46,0x33, 0x2,0x46,0x35,
+  0x1,0x65,0x79, 0x1,0x65,0x78, 0x4,0x46,0x26, 0x2,0x52,0x7a,
+  0x2,0x52,0x7c, 0x3,0x4e,0x31, 0x1,0x6e,0x49, 0x2,0x52,0x7b,
+  0x2,0x59,0x4f, 0x1,0x71,0x72, 0x2,0x62,0x65, 0x3,0x58,0x5d,
+  0x2,0x62,0x64, 0x1,0x78,0x66, 0x2,0x66,0x47, 0x1,0x78,0x68,
+  0x1,0x78,0x67, 0x2,0x69,0x5d, 0x2,0x6b,0x7c, 0x1,0x7a,0x7e,
+  0x1,0x48,0x51, 0x2,0x2c,0x71, 0x1,0x53,0x22, 0x2,0x32,0x29,
+  0x1,0x57,0x51, 0x2,0x32,0x28, 0x2,0x32,0x27, 0x3,0x33,0x42,
+  0x1,0x57,0x50, 0x3,0x33,0x43, 0x2,0x38,0x40, 0x4,0x34,0x3d,
+  0x2,0x38,0x42, 0x2,0x38,0x3b, 0x2,0x38,0x3c, 0x1,0x5c,0x62,
+  0x2,0x38,0x3d, 0x1,0x5c,0x63, 0x2,0x38,0x41, 0x2,0x38,0x3e,
+  0x2,0x38,0x3f, 0x1,0x5c,0x64, 0x3,0x3e,0x37, 0x1,0x61,0x44,
+  0x1,0x61,0x45, 0x3,0x3e,0x38, 0x2,0x3f,0x29, 0x2,0x46,0x36,
+  0x2,0x46,0x37, 0x3,0x43,0x72, 0x2,0x4d,0x27, 0x1,0x6a,0x4b,
+  0x1,0x6a,0x49, 0x1,0x6a,0x4a, 0x2,0x4d,0x24, 0x2,0x4d,0x25,
+  0x6,0x60,0x58, 0x2,0x4d,0x26, 0x2,0x53,0x23, 0x3,0x4e,0x32,
+  0x2,0x53,0x24, 0x1,0x6e,0x4a, 0x2,0x53,0x21, 0x2,0x52,0x7e,
+  0x2,0x53,0x22, 0x2,0x52,0x7d, 0x1,0x71,0x75, 0x2,0x59,0x50,
+  0x1,0x71,0x73, 0x1,0x71,0x74, 0x2,0x5e,0x53, 0x1,0x74,0x75,
+  0x2,0x5e,0x52, 0x2,0x61,0x34, 0x3,0x55,0x7e, 0x2,0x62,0x66,
+  0x2,0x62,0x67, 0x1,0x77,0x28, 0x3,0x58,0x61, 0x1,0x77,0x29,
+  0x1,0x74,0x76, 0x2,0x66,0x48, 0x2,0x66,0x49, 0x2,0x69,0x5e,
+  0x1,0x7a,0x2e, 0x1,0x48,0x52, 0x3,0x66,0x7b, 0x1,0x48,0x53,
+  0x1,0x57,0x53, 0x1,0x4f,0x2f, 0x1,0x57,0x52, 0x2,0x2c,0x72,
+  0x3,0x38,0x36, 0x4,0x2b,0x25, 0x3,0x33,0x44, 0x1,0x61,0x46,
+  0x1,0x48,0x54, 0x1,0x53,0x24, 0x2,0x2c,0x73, 0x2,0x2c,0x74,
+  0x1,0x53,0x23, 0x1,0x53,0x25, 0x1,0x48,0x55, 0x4,0x27,0x61,
+  0x2,0x2c,0x75, 0x1,0x57,0x55, 0x2,0x32,0x2a, 0x1,0x57,0x57,
+  0x1,0x57,0x54, 0x1,0x57,0x56, 0x3,0x38,0x37, 0x2,0x38,0x45,
+  0x1,0x5c,0x65, 0x3,0x38,0x39, 0x2,0x38,0x44, 0x2,0x38,0x43,
+  0x4,0x3a,0x38, 0x2,0x46,0x38, 0x3,0x49,0x22, 0x2,0x4d,0x28,
+  0x4,0x46,0x2c, 0x1,0x6e,0x4b, 0x1,0x71,0x76, 0x2,0x59,0x52,
+  0x2,0x59,0x51, 0x3,0x56,0x21, 0x2,0x5e,0x54, 0x4,0x5c,0x71,
+  0x3,0x58,0x62, 0x3,0x5c,0x6f, 0x2,0x6b,0x7d, 0x4,0x69,0x2e,
+  0x4,0x69,0x2d, 0x1,0x48,0x56, 0x2,0x24,0x73, 0x2,0x28,0x4a,
+  0x1,0x53,0x26, 0x2,0x2c,0x76, 0x6,0x3b,0x21, 0x2,0x32,0x2c,
+  0x4,0x2f,0x3a, 0x3,0x33,0x49, 0x3,0x33,0x48, 0x1,0x57,0x58,
+  0x2,0x32,0x2b, 0x1,0x57,0x59, 0x3,0x33,0x47, 0x3,0x66,0x2f,
+  0x2,0x38,0x47, 0x3,0x38,0x3d, 0x3,0x38,0x3c, 0x1,0x5c,0x67,
+  0x2,0x38,0x46, 0x2,0x38,0x48, 0x3,0x38,0x3b, 0x1,0x5c,0x66,
+  0x3,0x3e,0x3c, 0x2,0x3f,0x2b, 0x2,0x3f,0x2c, 0x2,0x3f,0x2a,
+  0x1,0x61,0x47, 0x3,0x67,0x29, 0x4,0x3f,0x7c, 0x1,0x65,0x7b,
+  0x3,0x43,0x73, 0x1,0x65,0x7c, 0x4,0x46,0x33, 0x1,0x6a,0x4d,
+  0x3,0x49,0x23, 0x2,0x4d,0x2a, 0x2,0x4d,0x29, 0x1,0x6a,0x4c,
+  0x3,0x49,0x26, 0x3,0x3e,0x3b, 0x3,0x49,0x25, 0x3,0x66,0x30,
+  0x2,0x53,0x25, 0x3,0x4e,0x34, 0x3,0x4e,0x36, 0x2,0x53,0x26,
+  0x3,0x4e,0x37, 0x3,0x4e,0x35, 0x3,0x4e,0x38, 0x2,0x59,0x53,
+  0x4,0x52,0x5c, 0x3,0x52,0x43, 0x1,0x74,0x7a, 0x1,0x74,0x79,
+  0x1,0x74,0x77, 0x1,0x74,0x78, 0x1,0x74,0x7b, 0x3,0x56,0x22,
+  0x2,0x62,0x68, 0x1,0x77,0x2b, 0x1,0x77,0x2a, 0x2,0x66,0x4a,
+  0x2,0x69,0x5f, 0x3,0x5c,0x70, 0x3,0x5c,0x71, 0x3,0x5c,0x72,
+  0x1,0x7b,0x6f, 0x1,0x7b,0x6e, 0x1,0x48,0x57, 0x6,0x3b,0x24,
+  0x2,0x2f,0x7d, 0x1,0x65,0x7e, 0x1,0x61,0x48, 0x1,0x65,0x7d,
+  0x1,0x6a,0x4e, 0x6,0x60,0x60, 0x1,0x48,0x58, 0x2,0x21,0x68,
+  0x1,0x48,0x59, 0x1,0x48,0x5a, 0x3,0x24,0x35, 0x3,0x24,0x36,
+  0x2,0x28,0x4b, 0x2,0x24,0x76, 0x3,0x27,0x24, 0x2,0x24,0x77,
+  0x1,0x4b,0x3a, 0x3,0x27,0x26, 0x2,0x24,0x74, 0x1,0x4b,0x39,
+  0x3,0x27,0x25, 0x1,0x4b,0x3c, 0x2,0x24,0x75, 0x1,0x4b,0x3e,
+  0x1,0x4b,0x3d, 0x2,0x24,0x78, 0x1,0x4b,0x3b, 0x4,0x24,0x70,
+  0x3,0x27,0x23, 0x1,0x4f,0x34, 0x1,0x4f,0x32, 0x2,0x28,0x4d,
+  0x3,0x2a,0x56, 0x1,0x4f,0x31, 0x3,0x2a,0x5b, 0x3,0x2a,0x58,
+  0x3,0x2a,0x4f, 0x1,0x4f,0x36, 0x1,0x4f,0x38, 0x1,0x4f,0x35,
+  0x3,0x2a,0x59, 0x2,0x28,0x50, 0x2,0x28,0x4c, 0x1,0x4f,0x39,
+  0x3,0x2a,0x52, 0x1,0x4f,0x33, 0x1,0x4b,0x3f, 0x3,0x2a,0x54,
+  0x1,0x4f,0x37, 0x2,0x28,0x4f, 0x3,0x2a,0x57, 0x4,0x27,0x64,
+  0x2,0x28,0x4e, 0x4,0x27,0x69, 0x1,0x4f,0x30, 0x3,0x66,0x31,
+  0x2,0x2c,0x7c, 0x1,0x53,0x2a, 0x1,0x53,0x2b, 0x2,0x2c,0x7e,
+  0x3,0x2e,0x66, 0x2,0x2c,0x78, 0x2,0x2c,0x7b, 0x2,0x2d,0x26,
+  0x2,0x2d,0x24, 0x3,0x2e,0x60, 0x1,0x53,0x2c, 0x2,0x2d,0x2a,
+  0x1,0x53,0x2f, 0x2,0x2d,0x27, 0x2,0x2c,0x7d, 0x2,0x2c,0x7a,
+  0x3,0x2e,0x61, 0x3,0x2e,0x5e, 0x2,0x3f,0x2e, 0x2,0x2d,0x25,
+  0x1,0x53,0x27, 0x2,0x2d,0x28, 0x2,0x2c,0x77, 0x2,0x2d,0x22,
+  0x1,0x53,0x29, 0x1,0x53,0x2e, 0x2,0x2d,0x23, 0x1,0x53,0x32,
+  0x1,0x53,0x30, 0x3,0x2e,0x65, 0x2,0x2c,0x79, 0x1,0x53,0x2d,
+  0x3,0x2e,0x64, 0x2,0x2d,0x21, 0x1,0x53,0x31, 0x1,0x53,0x28,
+  0x2,0x2d,0x29, 0x1,0x57,0x5e, 0x3,0x33,0x4c, 0x1,0x57,0x67,
+  0x1,0x57,0x5c, 0x1,0x57,0x5a, 0x2,0x32,0x2e, 0x1,0x57,0x62,
+  0x1,0x57,0x5f, 0x2,0x32,0x30, 0x3,0x33,0x4a, 0x3,0x33,0x52,
+  0x1,0x57,0x61, 0x2,0x32,0x2f, 0x2,0x32,0x2d, 0x2,0x32,0x32,
+  0x1,0x57,0x66, 0x1,0x57,0x64, 0x2,0x3f,0x2d, 0x3,0x33,0x4b,
+  0x2,0x32,0x33, 0x2,0x32,0x31, 0x1,0x57,0x5b, 0x3,0x33,0x4e,
+  0x3,0x33,0x4d, 0x1,0x57,0x5d, 0x1,0x57,0x60, 0x3,0x33,0x4f,
+  0x1,0x57,0x63, 0x3,0x2e,0x63, 0x1,0x57,0x65, 0x3,0x3e,0x44,
+  0x2,0x38,0x52, 0x1,0x5c,0x69, 0x3,0x38,0x49, 0x2,0x38,0x49,
+  0x2,0x38,0x4b, 0x3,0x38,0x47, 0x2,0x38,0x4c, 0x4,0x34,0x4d,
+  0x2,0x38,0x54, 0x2,0x38,0x50, 0x2,0x38,0x4e, 0x4,0x3a,0x3b,
+  0x2,0x38,0x51, 0x2,0x38,0x55, 0x1,0x5c,0x6a, 0x1,0x5c,0x6e,
+  0x2,0x38,0x4a, 0x4,0x34,0x47, 0x2,0x38,0x53, 0x4,0x34,0x50,
+  0x1,0x5c,0x6c, 0x3,0x38,0x41, 0x1,0x5c,0x6b, 0x2,0x38,0x4f,
+  0x2,0x38,0x4d, 0x3,0x38,0x42, 0x1,0x5c,0x68, 0x1,0x5c,0x6d,
+  0x3,0x38,0x45, 0x3,0x38,0x48, 0x1,0x61,0x4e, 0x2,0x3f,0x36,
+  0x3,0x3e,0x3e, 0x4,0x3a,0x3e, 0x2,0x3f,0x34, 0x1,0x61,0x50,
+  0x4,0x3a,0x47, 0x3,0x3e,0x43, 0x3,0x3e,0x45, 0x3,0x3e,0x41,
+  0x2,0x3f,0x2f, 0x2,0x46,0x46, 0x3,0x3e,0x3d, 0x1,0x61,0x4f,
+  0x2,0x3f,0x33, 0x3,0x3e,0x40, 0x3,0x3e,0x42, 0x2,0x3f,0x30,
+  0x1,0x61,0x4b, 0x1,0x61,0x51, 0x2,0x3f,0x35, 0x1,0x61,0x4d,
+  0x2,0x3f,0x32, 0x1,0x6a,0x4f, 0x1,0x61,0x4c, 0x2,0x3f,0x31,
+  0x1,0x61,0x52, 0x1,0x61,0x4a, 0x1,0x61,0x49, 0x6,0x43,0x5a,
+  0x2,0x46,0x3e, 0x2,0x46,0x3c, 0x3,0x43,0x7b, 0x2,0x46,0x42,
+  0x3,0x43,0x7e, 0x2,0x46,0x3a, 0x2,0x46,0x47, 0x2,0x46,0x3f,
+  0x3,0x43,0x75, 0x2,0x46,0x39, 0x1,0x66,0x24, 0x1,0x66,0x2a,
+  0x2,0x46,0x44, 0x4,0x40,0x29, 0x2,0x46,0x3d, 0x3,0x43,0x76,
+  0x1,0x66,0x27, 0x3,0x43,0x77, 0x3,0x44,0x23, 0x1,0x66,0x25,
+  0x2,0x46,0x45, 0x1,0x66,0x22, 0x1,0x66,0x21, 0x2,0x46,0x40,
+  0x1,0x66,0x26, 0x1,0x61,0x53, 0x3,0x43,0x7c, 0x2,0x46,0x43,
+  0x2,0x46,0x3b, 0x1,0x66,0x23, 0x1,0x66,0x28, 0x1,0x66,0x29,
+  0x3,0x44,0x22, 0x1,0x6a,0x54, 0x1,0x6a,0x50, 0x3,0x49,0x27,
+  0x1,0x6a,0x55, 0x2,0x4d,0x2d, 0x3,0x49,0x2a, 0x4,0x46,0x39,
+  0x2,0x4d,0x2c, 0x2,0x4d,0x2e, 0x1,0x6a,0x52, 0x2,0x4d,0x2b,
+  0x1,0x6a,0x53, 0x2,0x4d,0x31, 0x2,0x4d,0x30, 0x2,0x4d,0x2f,
+  0x4,0x46,0x46, 0x1,0x6a,0x51, 0x4,0x52,0x67, 0x3,0x4e,0x3b,
+  0x3,0x4e,0x3d, 0x3,0x4e,0x39, 0x2,0x53,0x2a, 0x3,0x4e,0x3c,
+  0x2,0x53,0x2d, 0x1,0x6e,0x51, 0x2,0x53,0x2c, 0x1,0x6e,0x50,
+  0x1,0x6e,0x4c, 0x1,0x6e,0x4d, 0x1,0x6e,0x4e, 0x2,0x53,0x29,
+  0x2,0x53,0x28, 0x1,0x6e,0x4f, 0x3,0x4e,0x3a, 0x2,0x53,0x2b,
+  0x2,0x53,0x27, 0x2,0x59,0x55, 0x2,0x59,0x5f, 0x1,0x71,0x79,
+  0x1,0x71,0x78, 0x3,0x52,0x49, 0x2,0x59,0x59, 0x2,0x59,0x5b,
+  0x3,0x52,0x47, 0x2,0x59,0x56, 0x3,0x52,0x44, 0x2,0x59,0x5a,
+  0x2,0x59,0x54, 0x2,0x59,0x5d, 0x1,0x71,0x77, 0x2,0x59,0x5c,
+  0x2,0x59,0x58, 0x2,0x59,0x5e, 0x3,0x56,0x23, 0x2,0x59,0x57,
+  0x1,0x74,0x7e, 0x2,0x5e,0x55, 0x2,0x5e,0x5b, 0x1,0x75,0x24,
+  0x1,0x75,0x26, 0x1,0x75,0x23, 0x1,0x75,0x22, 0x4,0x58,0x27,
+  0x1,0x75,0x21, 0x1,0x74,0x7d, 0x2,0x5e,0x56, 0x2,0x5e,0x59,
+  0x1,0x74,0x7c, 0x2,0x5e,0x5a, 0x3,0x56,0x24, 0x1,0x75,0x25,
+  0x2,0x5e,0x58, 0x7,0x48,0x7c, 0x2,0x5e,0x57, 0x1,0x77,0x2c,
+  0x3,0x58,0x65, 0x1,0x77,0x2d, 0x2,0x62,0x6b, 0x2,0x62,0x69,
+  0x2,0x62,0x6a, 0x3,0x5a,0x77, 0x2,0x66,0x4c, 0x3,0x5a,0x78,
+  0x2,0x66,0x4b, 0x1,0x78,0x69, 0x2,0x69,0x61, 0x1,0x7a,0x2f,
+  0x2,0x69,0x60, 0x2,0x6b,0x7e, 0x2,0x6d,0x72, 0x1,0x7b,0x70,
+  0x2,0x71,0x32, 0x2,0x71,0x33, 0x1,0x7c,0x44, 0x1,0x48,0x5b,
+  0x4,0x27,0x6c, 0x1,0x4f,0x3a, 0x2,0x3f,0x37, 0x1,0x6a,0x56,
+  0x1,0x75,0x27, 0x2,0x5e,0x5c, 0x1,0x48,0x5c, 0x4,0x24,0x73,
+  0x1,0x57,0x69, 0x1,0x57,0x68, 0x2,0x3f,0x38, 0x3,0x3e,0x47,
+  0x4,0x3a,0x4c, 0x4,0x4c,0x62, 0x2,0x59,0x60, 0x1,0x48,0x5d,
+  0x1,0x53,0x33, 0x4,0x3a,0x4d, 0x3,0x3e,0x48, 0x2,0x3f,0x39,
+  0x2,0x3f,0x3a, 0x2,0x3f,0x3b, 0x1,0x6a,0x57, 0x1,0x71,0x7a,
+  0x1,0x48,0x5e, 0x4,0x27,0x6d, 0x1,0x4f,0x3b, 0x2,0x2d,0x2b,
+  0x1,0x57,0x6a, 0x2,0x32,0x34, 0x1,0x5c,0x6f, 0x3,0x3e,0x49,
+  0x2,0x3f,0x3c, 0x1,0x66,0x2b, 0x1,0x6a,0x58, 0x1,0x71,0x7b,
+  0x1,0x75,0x28, 0x1,0x77,0x2e, 0x2,0x66,0x4d, 0x1,0x48,0x5f,
+  0x1,0x4f,0x3c, 0x3,0x2a,0x5d, 0x4,0x27,0x6e, 0x1,0x57,0x6b,
+  0x2,0x38,0x56, 0x1,0x61,0x54, 0x3,0x49,0x2b, 0x1,0x6a,0x59,
+  0x2,0x4d,0x32, 0x2,0x53,0x2e, 0x3,0x52,0x4a, 0x3,0x58,0x68,
+  0x3,0x5a,0x79, 0x1,0x48,0x60, 0x1,0x61,0x55, 0x2,0x46,0x48,
+  0x1,0x6a,0x5a, 0x1,0x48,0x61, 0x2,0x28,0x51, 0x2,0x2d,0x2c,
+  0x1,0x53,0x34, 0x3,0x2e,0x68, 0x2,0x32,0x36, 0x4,0x2f,0x4f,
+  0x3,0x33,0x57, 0x1,0x57,0x6e, 0x3,0x33,0x58, 0x1,0x57,0x6c,
+  0x1,0x57,0x6d, 0x1,0x57,0x6f, 0x3,0x33,0x55, 0x2,0x32,0x35,
+  0x2,0x38,0x5b, 0x2,0x38,0x58, 0x2,0x38,0x5a, 0x1,0x5c,0x70,
+  0x1,0x5c,0x72, 0x1,0x5c,0x71, 0x2,0x38,0x57, 0x1,0x5c,0x73,
+  0x2,0x38,0x59, 0x2,0x3f,0x3d, 0x2,0x3f,0x3e, 0x2,0x3f,0x3f,
+  0x2,0x46,0x4b, 0x3,0x44,0x26, 0x2,0x46,0x4c, 0x4,0x40,0x2e,
+  0x2,0x46,0x4a, 0x2,0x46,0x4d, 0x4,0x40,0x2d, 0x1,0x66,0x2c,
+  0x3,0x66,0x34, 0x2,0x46,0x49, 0x3,0x49,0x2d, 0x1,0x6a,0x5b,
+  0x3,0x49,0x2e, 0x2,0x53,0x33, 0x2,0x53,0x2f, 0x2,0x53,0x32,
+  0x2,0x53,0x34, 0x2,0x53,0x31, 0x2,0x53,0x30, 0x2,0x59,0x61,
+  0x2,0x59,0x62, 0x2,0x59,0x63, 0x1,0x71,0x7c, 0x1,0x71,0x7d,
+  0x2,0x5e,0x5e, 0x2,0x5e,0x5d, 0x2,0x5e,0x5f, 0x2,0x62,0x6d,
+  0x2,0x62,0x6c, 0x2,0x66,0x4f, 0x3,0x5a,0x7a, 0x2,0x66,0x50,
+  0x2,0x66,0x4e, 0x3,0x5a,0x7b, 0x1,0x7a,0x30, 0x4,0x64,0x2c,
+  0x2,0x69,0x62, 0x2,0x69,0x63, 0x3,0x5e,0x55, 0x2,0x6d,0x73,
+  0x2,0x6f,0x3e, 0x2,0x70,0x49, 0x1,0x48,0x62, 0x1,0x4b,0x40,
+  0x1,0x75,0x29, 0x1,0x48,0x63, 0xf,0x32,0x32, 0x2,0x38,0x5c,
+  0x2,0x3f,0x40, 0x3,0x5a,0x7c, 0x1,0x7c,0x6c, 0x2,0x22,0x6a,
+  0x4,0x21,0x53, 0x3,0x24,0x38, 0x2,0x22,0x6b, 0x2,0x22,0x6d,
+  0x1,0x48,0x64, 0x2,0x22,0x6e, 0x2,0x22,0x6c, 0x4,0x23,0x2f,
+  0x2,0x25,0x22, 0x2,0x25,0x23, 0x2,0x24,0x7b, 0x3,0x27,0x28,
+  0x4,0x24,0x7b, 0x4,0x24,0x75, 0x2,0x25,0x21, 0x1,0x4b,0x42,
+  0x3,0x27,0x29, 0x1,0x4b,0x43, 0x2,0x24,0x7c, 0x2,0x24,0x7a,
+  0x2,0x24,0x79, 0x2,0x24,0x7d, 0x1,0x4b,0x41, 0x2,0x24,0x7e,
+  0x2,0x2d,0x2d, 0x3,0x27,0x2b, 0x4,0x24,0x79, 0x2,0x28,0x56,
+  0x1,0x4f,0x3f, 0x2,0x28,0x55, 0x2,0x28,0x57, 0x3,0x2a,0x60,
+  0x1,0x4f,0x3e, 0x2,0x28,0x5c, 0x1,0x4f,0x42, 0x2,0x28,0x52,
+  0x2,0x28,0x60, 0x2,0x28,0x66, 0x1,0x4f,0x49, 0x2,0x28,0x63,
+  0x1,0x4f,0x46, 0x3,0x2a,0x6b, 0x2,0x28,0x59, 0x2,0x28,0x5f,
+  0x2,0x28,0x61, 0x3,0x2a,0x66, 0x2,0x28,0x54, 0x1,0x4f,0x45,
+  0x1,0x4f,0x40, 0x2,0x28,0x5a, 0x1,0x4f,0x47, 0x1,0x4f,0x4a,
+  0x1,0x4f,0x44, 0x3,0x2a,0x6c, 0x1,0x4f,0x3d, 0x2,0x28,0x5e,
+  0x2,0x28,0x58, 0x2,0x28,0x65, 0x1,0x4f,0x4c, 0x1,0x4f,0x48,
+  0x1,0x4f,0x43, 0x2,0x28,0x5d, 0x1,0x57,0x70, 0x2,0x28,0x5b,
+  0x1,0x4f,0x41, 0x1,0x4f,0x4b, 0x4,0x27,0x7a, 0x2,0x28,0x53,
+  0x4,0x27,0x7e, 0x2,0x28,0x62, 0x2,0x28,0x64, 0x3,0x2a,0x5e,
+  0xf,0x28,0x63, 0x3,0x2a,0x68, 0x4,0x27,0x7b, 0x3,0x2e,0x76,
+  0x1,0x53,0x45, 0x1,0x53,0x3f, 0x1,0x53,0x47, 0x1,0x53,0x44,
+  0x2,0x2d,0x34, 0x2,0x2d,0x37, 0x1,0x53,0x40, 0x3,0x2e,0x6a,
+  0x2,0x2d,0x2e, 0x4,0x2b,0x3a, 0x1,0x53,0x39, 0x1,0x53,0x43,
+  0x3,0x2e,0x6b, 0x1,0x53,0x46, 0x1,0x53,0x48, 0x2,0x2d,0x43,
+  0x2,0x2d,0x3a, 0x3,0x2e,0x78, 0x1,0x53,0x38, 0x2,0x2d,0x42,
+  0x1,0x53,0x3c, 0x1,0x53,0x3a, 0x1,0x53,0x35, 0x2,0x2d,0x32,
+  0x3,0x2e,0x72, 0x2,0x2d,0x41, 0x2,0x2d,0x36, 0x2,0x2d,0x39,
+  0x2,0x2d,0x46, 0x3,0x2e,0x74, 0x1,0x53,0x49, 0x2,0x2d,0x40,
+  0x1,0x53,0x41, 0x2,0x2d,0x3b, 0x2,0x2d,0x45, 0x2,0x2d,0x38,
+  0x2,0x2d,0x3c, 0x2,0x2d,0x3f, 0x3,0x2e,0x69, 0x3,0x2e,0x6e,
+  0x2,0x2d,0x30, 0x2,0x2d,0x44, 0x2,0x2d,0x3e, 0x3,0x2e,0x6f,
+  0x3,0x2e,0x7a, 0x2,0x2d,0x2f, 0x6,0x34,0x3c, 0x2,0x2d,0x33,
+  0x1,0x53,0x42, 0x1,0x53,0x3d, 0x1,0x53,0x36, 0x1,0x53,0x3b,
+  0x1,0x53,0x37, 0x1,0x53,0x4a, 0x2,0x2d,0x31, 0x2,0x32,0x47,
+  0x1,0x53,0x3e, 0x4,0x2b,0x3d, 0x3,0x2e,0x79, 0x2,0x2d,0x3d,
+  0x2,0x29,0x42, 0x3,0x2e,0x77, 0x3,0x66,0x35, 0x3,0x66,0x37,
+  0x2,0x32,0x4a, 0x1,0x57,0x7e, 0x3,0x33,0x62, 0x2,0x32,0x3a,
+  0x4,0x2f,0x5d, 0x2,0x32,0x45, 0x2,0x32,0x41, 0x3,0x38,0x4d,
+  0x2,0x32,0x54, 0x3,0x33,0x59, 0x2,0x32,0x4c, 0x3,0x33,0x5f,
+  0x2,0x32,0x42, 0x3,0x38,0x5b, 0x2,0x32,0x4b, 0x2,0x32,0x3c,
+  0x2,0x32,0x40, 0x2,0x32,0x57, 0x1,0x58,0x23, 0x2,0x32,0x4f,
+  0x2,0x32,0x46, 0x1,0x57,0x71, 0x2,0x32,0x55, 0x2,0x32,0x38,
+  0x4,0x2f,0x5a, 0x2,0x32,0x4e, 0x4,0x2f,0x63, 0x1,0x58,0x22,
+  0x1,0x57,0x7b, 0x2,0x32,0x37, 0x1,0x57,0x79, 0x1,0x57,0x78,
+  0x1,0x57,0x7d, 0x2,0x32,0x4d, 0x1,0x57,0x75, 0x1,0x57,0x7c,
+  0x2,0x2d,0x35, 0x2,0x3f,0x41, 0x2,0x32,0x48, 0x4,0x2f,0x5f,
+  0x3,0x2a,0x5f, 0x2,0x32,0x3e, 0x1,0x58,0x21, 0x2,0x32,0x3f,
+  0x2,0x32,0x43, 0x1,0x58,0x24, 0x2,0x32,0x39, 0x2,0x32,0x51,
+  0x3,0x3e,0x57, 0x2,0x32,0x50, 0x2,0x32,0x58, 0x1,0x57,0x77,
+  0x1,0x57,0x74, 0x2,0x32,0x56, 0x2,0x32,0x52, 0x2,0x32,0x49,
+  0x2,0x32,0x44, 0x1,0x57,0x7a, 0x1,0x57,0x76, 0x2,0x32,0x3b,
+  0x1,0x57,0x72, 0x2,0x32,0x53, 0x1,0x57,0x73, 0x4,0x2f,0x5c,
+  0x2,0x32,0x3d, 0x3,0x33,0x5a, 0x3,0x33,0x63, 0x3,0x66,0x36,
+  0x3,0x2d,0x33, 0x4,0x34,0x67, 0x3,0x38,0x4e, 0x3,0x38,0x51,
+  0x2,0x38,0x62, 0x2,0x38,0x64, 0x2,0x38,0x69, 0x2,0x38,0x7d,
+  0x1,0x5d,0x23, 0x1,0x5c,0x77, 0x3,0x38,0x54, 0x2,0x38,0x61,
+  0x1,0x5d,0x24, 0x1,0x5d,0x25, 0x2,0x38,0x6c, 0x2,0x38,0x73,
+  0x2,0x38,0x79, 0x3,0x38,0x50, 0x2,0x38,0x66, 0x4,0x34,0x6d,
+  0x2,0x38,0x6d, 0x3,0x38,0x4f, 0x3,0x38,0x5d, 0x1,0x5d,0x26,
+  0x2,0x38,0x7b, 0x2,0x38,0x76, 0x1,0x5d,0x21, 0x1,0x5c,0x7d,
+  0x2,0x38,0x72, 0x2,0x38,0x6e, 0x2,0x38,0x60, 0x1,0x5c,0x74,
+  0x2,0x38,0x65, 0x2,0x38,0x5d, 0x3,0x38,0x55, 0x1,0x5c,0x7c,
+  0x1,0x5c,0x7e, 0x2,0x38,0x6a, 0x2,0x38,0x67, 0x1,0x5c,0x79,
+  0x2,0x38,0x77, 0x1,0x5c,0x76, 0x2,0x38,0x68, 0x2,0x3f,0x6a,
+  0x2,0x38,0x70, 0x3,0x38,0x5e, 0x2,0x38,0x6f, 0x1,0x5c,0x75,
+  0x3,0x38,0x57, 0x1,0x5d,0x22, 0x3,0x38,0x52, 0x1,0x5c,0x78,
+  0x2,0x38,0x5e, 0x2,0x38,0x63, 0x2,0x38,0x74, 0x2,0x38,0x7a,
+  0x1,0x5d,0x27, 0x2,0x38,0x5f, 0x2,0x38,0x6b, 0x2,0x38,0x71,
+  0x1,0x5c,0x7b, 0x4,0x34,0x6f, 0x3,0x38,0x58, 0x2,0x38,0x7c,
+  0x2,0x38,0x75, 0x2,0x38,0x78, 0x3,0x38,0x5f, 0xf,0x37,0x78,
+  0x1,0x5c,0x7a, 0x4,0x3a,0x68, 0x2,0x3f,0x51, 0x2,0x3f,0x45,
+  0x1,0x61,0x5d, 0x2,0x3f,0x62, 0x2,0x3f,0x6b, 0x2,0x3f,0x6e,
+  0x1,0x61,0x5b, 0x2,0x3f,0x4d, 0x2,0x3f,0x66, 0x2,0x3f,0x4e,
+  0x2,0x3f,0x5c, 0x1,0x61,0x68, 0x2,0x3f,0x58, 0x1,0x61,0x65,
+  0x3,0x3e,0x5e, 0x2,0x3f,0x59, 0x2,0x3f,0x42, 0x5,0x3b,0x6f,
+  0x2,0x3f,0x67, 0x3,0x3e,0x4f, 0x3,0x3e,0x59, 0x1,0x61,0x6e,
+  0x2,0x3f,0x64, 0x2,0x3f,0x5a, 0x2,0x3f,0x70, 0x2,0x3f,0x55,
+  0x2,0x46,0x6d, 0x3,0x3e,0x4d, 0x2,0x3f,0x73, 0x1,0x61,0x6c,
+  0x2,0x3f,0x53, 0x2,0x3f,0x5f, 0x1,0x61,0x6f, 0x1,0x61,0x5a,
+  0x2,0x3f,0x57, 0x2,0x3f,0x71, 0x2,0x3f,0x50, 0x2,0x3f,0x49,
+  0x2,0x3f,0x54, 0x3,0x3e,0x5f, 0x2,0x3f,0x48, 0x2,0x3f,0x46,
+  0x1,0x61,0x56, 0x2,0x3f,0x68, 0x2,0x3f,0x4f, 0x2,0x3f,0x6c,
+  0x3,0x3e,0x4b, 0x2,0x3f,0x6d, 0x1,0x61,0x5e, 0x1,0x61,0x63,
+  0x1,0x61,0x5f, 0x1,0x61,0x67, 0x2,0x3f,0x63, 0x1,0x61,0x60,
+  0x2,0x3f,0x5b, 0x2,0x3f,0x4b, 0xf,0x3e,0x66, 0x1,0x61,0x58,
+  0x2,0x3f,0x43, 0x2,0x3f,0x65, 0x2,0x3f,0x6f, 0x2,0x3f,0x4a,
+  0x1,0x61,0x66, 0x2,0x3f,0x74, 0x2,0x3f,0x56, 0x3,0x3e,0x52,
+  0x2,0x3f,0x52, 0x3,0x3e,0x5c, 0x1,0x61,0x57, 0x1,0x61,0x6b,
+  0x3,0x3e,0x5a, 0x2,0x3f,0x61, 0x1,0x61,0x6d, 0x3,0x3e,0x50,
+  0x2,0x3f,0x5d, 0x1,0x61,0x62, 0x1,0x61,0x5c, 0x1,0x61,0x64,
+  0x1,0x61,0x59, 0x1,0x61,0x6a, 0x2,0x3f,0x5e, 0x2,0x3f,0x4c,
+  0x2,0x3f,0x60, 0x2,0x3f,0x47, 0x2,0x3f,0x69, 0x3,0x3e,0x58,
+  0x4,0x3a,0x67, 0x3,0x3e,0x5d, 0x3,0x3e,0x56, 0x3,0x3e,0x4e,
+  0x2,0x3f,0x72, 0x3,0x66,0x39, 0x3,0x3e,0x5b, 0x3,0x66,0x38,
+  0x2,0x3f,0x44, 0x2,0x46,0x6c, 0x3,0x44,0x2d, 0x2,0x47,0x24,
+  0x1,0x65,0x5c, 0x2,0x46,0x71, 0x3,0x44,0x31, 0x2,0x46,0x6f,
+  0x2,0x46,0x5a, 0x1,0x66,0x30, 0x2,0x46,0x6a, 0x2,0x46,0x7e,
+  0x2,0x46,0x66, 0x1,0x66,0x38, 0x2,0x46,0x7d, 0x2,0x46,0x64,
+  0x1,0x61,0x69, 0x2,0x46,0x74, 0x2,0x46,0x65, 0x2,0x46,0x7b,
+  0x1,0x66,0x37, 0x1,0x66,0x2f, 0x3,0x44,0x3a, 0x2,0x46,0x4f,
+  0x2,0x46,0x57, 0x3,0x44,0x35, 0x2,0x46,0x70, 0x2,0x46,0x68,
+  0x2,0x47,0x23, 0x2,0x46,0x6b, 0x1,0x66,0x3d, 0x2,0x46,0x7c,
+  0x3,0x44,0x2c, 0x1,0x66,0x34, 0x3,0x44,0x3e, 0x2,0x46,0x6e,
+  0x2,0x46,0x76, 0x2,0x46,0x5b, 0x2,0x46,0x75, 0x3,0x44,0x27,
+  0x2,0x47,0x28, 0x2,0x46,0x56, 0x2,0x46,0x77, 0x3,0x44,0x33,
+  0x2,0x47,0x26, 0x3,0x44,0x3f, 0x2,0x46,0x50, 0x1,0x61,0x61,
+  0x3,0x44,0x40, 0x2,0x46,0x5e, 0x2,0x46,0x5d, 0x1,0x66,0x36,
+  0x3,0x44,0x32, 0x2,0x46,0x61, 0x2,0x46,0x63, 0x2,0x46,0x72,
+  0x2,0x47,0x25, 0x1,0x66,0x39, 0x3,0x44,0x38, 0x1,0x66,0x3a,
+  0x3,0x44,0x30, 0x2,0x46,0x55, 0x1,0x66,0x32, 0x2,0x46,0x59,
+  0x2,0x47,0x21, 0x1,0x66,0x3b, 0x4,0x40,0x44, 0x1,0x66,0x33,
+  0x1,0x66,0x35, 0x1,0x66,0x3c, 0x2,0x47,0x27, 0x2,0x46,0x78,
+  0x2,0x46,0x73, 0x3,0x44,0x3c, 0x3,0x44,0x2f, 0x2,0x46,0x60,
+  0x2,0x46,0x5f, 0x1,0x66,0x31, 0x2,0x46,0x51, 0x1,0x66,0x2e,
+  0x2,0x46,0x69, 0x2,0x46,0x52, 0x2,0x46,0x67, 0x3,0x44,0x2e,
+  0x4,0x40,0x41, 0x2,0x46,0x5c, 0x2,0x47,0x22, 0x3,0x44,0x2a,
+  0x3,0x44,0x39, 0x4,0x40,0x36, 0x1,0x66,0x2d, 0x3,0x44,0x3b,
+  0x3,0x44,0x28, 0x2,0x46,0x58, 0x4,0x40,0x46, 0x2,0x46,0x54,
+  0x2,0x46,0x7a, 0x2,0x46,0x53, 0x1,0x6a,0x68, 0x2,0x4d,0x5a,
+  0x3,0x49,0x35, 0x3,0x49,0x44, 0x2,0x4d,0x49, 0x3,0x49,0x33,
+  0x3,0x49,0x38, 0x2,0x4d,0x33, 0x2,0x4d,0x51, 0x1,0x6a,0x60,
+  0x2,0x4d,0x42, 0x2,0x4d,0x4c, 0x1,0x6a,0x63, 0x2,0x4d,0x45,
+  0x1,0x6a,0x61, 0x2,0x4d,0x36, 0x2,0x4d,0x54, 0x2,0x4d,0x35,
+  0x2,0x4d,0x48, 0x3,0x49,0x3c, 0x2,0x4d,0x34, 0x3,0x49,0x39,
+  0x4,0x46,0x6c, 0x2,0x4d,0x46, 0x2,0x4d,0x4f, 0x2,0x4d,0x4d,
+  0x2,0x4d,0x41, 0x2,0x4d,0x3c, 0x2,0x4d,0x3a, 0x3,0x49,0x42,
+  0x2,0x4d,0x3b, 0x2,0x4d,0x4e, 0x2,0x4d,0x59, 0x2,0x4d,0x43,
+  0x1,0x6a,0x62, 0x3,0x49,0x3b, 0x2,0x4d,0x3e, 0x3,0x49,0x3a,
+  0x2,0x4d,0x52, 0x3,0x49,0x41, 0x1,0x6a,0x65, 0x2,0x4d,0x3d,
+  0x2,0x4d,0x37, 0x2,0x4d,0x47, 0x1,0x6a,0x69, 0x3,0x49,0x32,
+  0x4,0x46,0x58, 0x1,0x6a,0x5d, 0x1,0x6a,0x66, 0x2,0x4d,0x3f,
+  0x2,0x4d,0x39, 0x3,0x49,0x36, 0x1,0x6a,0x5f, 0x2,0x46,0x79,
+  0x1,0x6a,0x5e, 0x2,0x4d,0x4a, 0x3,0x44,0x36, 0x1,0x6a,0x5c,
+  0x1,0x6a,0x6b, 0x1,0x6a,0x64, 0x2,0x4d,0x4b, 0x2,0x4d,0x40,
+  0x2,0x4d,0x38, 0x2,0x4d,0x53, 0x2,0x4d,0x44, 0x1,0x6a,0x6a,
+  0x2,0x4d,0x57, 0x1,0x6a,0x67, 0x2,0x4d,0x56, 0x3,0x49,0x3f,
+  0x2,0x4d,0x50, 0x2,0x4d,0x55, 0x3,0x49,0x3e, 0x3,0x49,0x43,
+  0x2,0x4d,0x58, 0x3,0x66,0x3b, 0x3,0x66,0x3c, 0x3,0x66,0x3a,
+  0x3,0x49,0x3d, 0x2,0x53,0x5c, 0x2,0x53,0x5d, 0x2,0x53,0x50,
+  0x2,0x53,0x4f, 0x2,0x53,0x4b, 0x1,0x6e,0x5d, 0x3,0x4e,0x4f,
+  0x1,0x6e,0x55, 0x2,0x53,0x5f, 0x2,0x53,0x5e, 0x2,0x46,0x4e,
+  0x2,0x53,0x48, 0x2,0x53,0x4c, 0x2,0x53,0x46, 0x3,0x4e,0x44,
+  0x2,0x53,0x59, 0x2,0x53,0x4a, 0x3,0x4e,0x42, 0x2,0x53,0x60,
+  0x2,0x53,0x43, 0x2,0x53,0x41, 0x2,0x53,0x4d, 0x2,0x53,0x57,
+  0x2,0x53,0x52, 0x1,0x6e,0x5f, 0x2,0x53,0x38, 0x3,0x4e,0x40,
+  0x2,0x53,0x56, 0x3,0x4e,0x4c, 0x3,0x4e,0x46, 0x3,0x4e,0x54,
+  0x1,0x6e,0x60, 0x2,0x46,0x62, 0x2,0x53,0x44, 0x2,0x53,0x3b,
+  0x2,0x53,0x3e, 0x2,0x53,0x64, 0x2,0x53,0x45, 0x2,0x53,0x3c,
+  0x2,0x53,0x3a, 0x2,0x53,0x37, 0x4,0x4c,0x7a, 0x1,0x6e,0x59,
+  0x2,0x53,0x4e, 0x1,0x6e,0x58, 0x1,0x6e,0x5c, 0x2,0x53,0x49,
+  0x2,0x53,0x51, 0x1,0x6e,0x52, 0x2,0x53,0x61, 0x2,0x53,0x65,
+  0x1,0x6e,0x54, 0x3,0x4e,0x4b, 0x2,0x53,0x40, 0x2,0x53,0x54,
+  0x2,0x53,0x58, 0x2,0x53,0x3d, 0x2,0x53,0x62, 0x1,0x6e,0x5b,
+  0x4,0x4c,0x6a, 0x1,0x6e,0x5a, 0x2,0x53,0x35, 0x1,0x6e,0x5e,
+  0x2,0x53,0x5b, 0x2,0x53,0x3f, 0x2,0x53,0x53, 0x2,0x53,0x39,
+  0x2,0x53,0x47, 0x2,0x53,0x42, 0x1,0x6e,0x56, 0x1,0x6e,0x57,
+  0x2,0x53,0x55, 0x2,0x53,0x66, 0x2,0x53,0x63, 0x2,0x53,0x5a,
+  0x4,0x4c,0x78, 0x3,0x4e,0x4d, 0x3,0x4e,0x4e, 0x3,0x4e,0x52,
+  0x4,0x4c,0x74, 0x2,0x53,0x36, 0x1,0x6e,0x53, 0x2,0x59,0x74,
+  0x3,0x52,0x5a, 0x2,0x59,0x6b, 0x2,0x59,0x6e, 0x3,0x52,0x52,
+  0x1,0x72,0x25, 0x2,0x59,0x70, 0x2,0x59,0x65, 0x2,0x59,0x6c,
+  0x2,0x59,0x72, 0x1,0x72,0x22, 0x1,0x72,0x26, 0x1,0x71,0x7e,
+  0x3,0x52,0x59, 0x3,0x52,0x50, 0x2,0x59,0x67, 0x2,0x59,0x77,
+  0x4,0x4d,0x25, 0x4,0x53,0x33, 0x2,0x59,0x71, 0x4,0x53,0x24,
+  0x2,0x59,0x68, 0x2,0x5a,0x22, 0x2,0x59,0x7a, 0x2,0x59,0x64,
+  0x2,0x5e,0x72, 0x2,0x59,0x6a, 0x1,0x72,0x21, 0x3,0x52,0x58,
+  0x2,0x59,0x75, 0x3,0x52,0x54, 0x2,0x5a,0x21, 0x1,0x72,0x29,
+  0x3,0x52,0x56, 0x2,0x59,0x7c, 0x2,0x59,0x69, 0x2,0x59,0x6f,
+  0x2,0x59,0x73, 0x2,0x59,0x6d, 0x2,0x5a,0x23, 0x2,0x59,0x7e,
+  0x2,0x59,0x7b, 0x1,0x72,0x23, 0x1,0x72,0x24, 0x1,0x72,0x28,
+  0x2,0x59,0x66, 0x2,0x5a,0x24, 0x1,0x72,0x27, 0x2,0x59,0x78,
+  0x3,0x52,0x4f, 0x3,0x52,0x55, 0x2,0x59,0x76, 0x3,0x66,0x3d,
+  0x2,0x59,0x79, 0x2,0x5f,0x21, 0x2,0x5e,0x6c, 0x2,0x5e,0x71,
+  0x2,0x5e,0x7e, 0x2,0x5e,0x70, 0x2,0x5e,0x68, 0x2,0x5e,0x6d,
+  0x4,0x58,0x3e, 0x1,0x75,0x2c, 0x3,0x56,0x2b, 0x2,0x5e,0x61,
+  0x2,0x5e,0x79, 0x2,0x5e,0x7b, 0x2,0x5e,0x60, 0x1,0x75,0x2b,
+  0x2,0x5e,0x7d, 0x2,0x5e,0x75, 0x1,0x75,0x32, 0x2,0x5e,0x7c,
+  0x2,0x5e,0x6e, 0x1,0x75,0x34, 0x2,0x5e,0x66, 0x2,0x59,0x7d,
+  0x2,0x5e,0x76, 0x2,0x5e,0x73, 0x2,0x5e,0x62, 0x2,0x5f,0x23,
+  0x1,0x75,0x2e, 0x3,0x56,0x28, 0x3,0x56,0x29, 0x1,0x75,0x2f,
+  0x2,0x5e,0x64, 0x2,0x5e,0x74, 0x3,0x56,0x2d, 0x2,0x5f,0x22,
+  0x2,0x5e,0x77, 0x2,0x5e,0x6a, 0x1,0x75,0x31, 0x1,0x75,0x2d,
+  0x2,0x5e,0x78, 0x2,0x5e,0x6b, 0x2,0x5f,0x24, 0x2,0x5e,0x65,
+  0x2,0x5e,0x6f, 0x2,0x5e,0x7a, 0x2,0x5e,0x67, 0x2,0x5e,0x69,
+  0x4,0x58,0x40, 0x1,0x75,0x35, 0x2,0x5e,0x63, 0x1,0x75,0x33,
+  0x1,0x77,0x30, 0x1,0x75,0x2a, 0x3,0x56,0x2c, 0x3,0x56,0x30,
+  0x1,0x75,0x30, 0x1,0x77,0x34, 0x2,0x62,0x7d, 0x3,0x58,0x6c,
+  0x2,0x62,0x73, 0x2,0x62,0x6e, 0x2,0x62,0x74, 0x2,0x62,0x7e,
+  0x2,0x63,0x24, 0x2,0x63,0x23, 0x1,0x77,0x36, 0x1,0x77,0x35,
+  0x3,0x58,0x6e, 0x4,0x5d,0x2c, 0x2,0x62,0x75, 0x2,0x63,0x25,
+  0x2,0x62,0x78, 0x2,0x62,0x70, 0x3,0x58,0x6f, 0x2,0x62,0x72,
+  0x2,0x62,0x71, 0x2,0x62,0x77, 0x2,0x62,0x7c, 0x2,0x62,0x6f,
+  0x2,0x62,0x76, 0x2,0x62,0x7b, 0x1,0x77,0x33, 0x4,0x5d,0x28,
+  0x2,0x62,0x79, 0x3,0x58,0x6b, 0x1,0x77,0x31, 0x2,0x62,0x7a,
+  0x1,0x77,0x2f, 0x1,0x77,0x32, 0x2,0x66,0x60, 0x2,0x63,0x21,
+  0x3,0x66,0x3e, 0x1,0x78,0x6d, 0x3,0x5a,0x7e, 0x2,0x66,0x58,
+  0x2,0x66,0x5c, 0x2,0x66,0x54, 0x2,0x66,0x57, 0x3,0x5a,0x7d,
+  0x2,0x66,0x5f, 0x1,0x78,0x6b, 0x2,0x66,0x64, 0x2,0x66,0x5d,
+  0x4,0x60,0x7a, 0x2,0x66,0x55, 0x2,0x66,0x65, 0x2,0x66,0x5e,
+  0x1,0x78,0x6e, 0x1,0x78,0x6f, 0x2,0x66,0x62, 0x3,0x5b,0x22,
+  0x2,0x66,0x56, 0x1,0x78,0x6a, 0x1,0x78,0x6c, 0x2,0x66,0x51,
+  0x2,0x66,0x59, 0x2,0x66,0x53, 0x3,0x5c,0x7b, 0x2,0x66,0x63,
+  0x2,0x66,0x61, 0x2,0x66,0x52, 0x2,0x66,0x5a, 0x4,0x60,0x7b,
+  0x3,0x5b,0x25, 0x3,0x66,0x3f, 0x2,0x69,0x6a, 0x1,0x78,0x70,
+  0x2,0x66,0x5b, 0x1,0x7a,0x32, 0x1,0x7a,0x34, 0x1,0x7a,0x31,
+  0x3,0x5c,0x76, 0x2,0x69,0x6f, 0x2,0x69,0x67, 0x2,0x69,0x65,
+  0x2,0x69,0x69, 0x2,0x69,0x66, 0x3,0x5c,0x78, 0x3,0x5c,0x7c,
+  0x2,0x69,0x6b, 0x2,0x69,0x6d, 0x1,0x7a,0x35, 0x1,0x7a,0x37,
+  0x3,0x5d,0x22, 0x2,0x69,0x6c, 0x1,0x7a,0x38, 0x1,0x7a,0x36,
+  0x2,0x69,0x6e, 0x3,0x5c,0x7e, 0x4,0x64,0x37, 0x3,0x5d,0x23,
+  0x3,0x5c,0x77, 0x1,0x7a,0x33, 0x3,0x5d,0x21, 0x3,0x5e,0x5b,
+  0x3,0x5e,0x5a, 0x1,0x7b,0x21, 0x2,0x6c,0x21, 0x2,0x6c,0x27,
+  0x1,0x7b,0x23, 0x2,0x69,0x68, 0x2,0x6c,0x26, 0x3,0x5e,0x5c,
+  0x2,0x6c,0x2d, 0x2,0x6c,0x24, 0x2,0x6c,0x2b, 0x2,0x6c,0x2a,
+  0x2,0x69,0x64, 0x2,0x6c,0x25, 0x2,0x63,0x22, 0x2,0x6c,0x2e,
+  0x2,0x6c,0x23, 0x2,0x6c,0x28, 0x3,0x5e,0x58, 0x2,0x6c,0x2c,
+  0x2,0x6c,0x22, 0x3,0x5e,0x56, 0x2,0x6d,0x77, 0x1,0x7b,0x22,
+  0x2,0x6c,0x29, 0x3,0x5e,0x57, 0x2,0x6f,0x43, 0x2,0x6d,0x78,
+  0x2,0x6d,0x76, 0x2,0x6d,0x74, 0x2,0x6d,0x75, 0x2,0x6d,0x79,
+  0x3,0x66,0x40, 0x1,0x7c,0x45, 0x2,0x6f,0x41, 0x2,0x6f,0x3f,
+  0x2,0x6f,0x44, 0x2,0x6f,0x42, 0x3,0x60,0x43, 0x2,0x6f,0x45,
+  0x1,0x7c,0x46, 0x2,0x6f,0x40, 0x3,0x60,0x2f, 0x3,0x61,0x46,
+  0x2,0x70,0x4a, 0x3,0x66,0x41, 0x2,0x71,0x34, 0x2,0x71,0x35,
+  0x2,0x71,0x36, 0x3,0x61,0x47, 0x3,0x61,0x7c, 0x2,0x72,0x35,
+  0x2,0x72,0x2d, 0x2,0x22,0x6f, 0x1,0x4f,0x4d, 0x1,0x53,0x4b,
+  0x4,0x2f,0x68, 0x2,0x32,0x5a, 0x2,0x32,0x59, 0x1,0x58,0x25,
+  0x1,0x5d,0x28, 0x2,0x39,0x21, 0x3,0x38,0x63, 0x3,0x38,0x60,
+  0x2,0x38,0x7e, 0x3,0x38,0x61, 0x1,0x61,0x70, 0x1,0x66,0x3f,
+  0x3,0x3e,0x61, 0x1,0x66,0x3e, 0x1,0x66,0x40, 0x5,0x49,0x4e,
+  0x2,0x4d,0x5b, 0x2,0x53,0x67, 0x2,0x5a,0x25, 0x2,0x5a,0x27,
+  0x2,0x5a,0x26, 0x7,0x32,0x61, 0x1,0x75,0x36, 0x2,0x5f,0x25,
+  0x2,0x63,0x26, 0x2,0x71,0x73, 0x1,0x48,0x65, 0x3,0x27,0x2d,
+  0x2,0x28,0x69, 0x2,0x28,0x6a, 0x2,0x28,0x68, 0x2,0x28,0x67,
+  0x1,0x4f,0x4e, 0x3,0x66,0x42, 0x2,0x2d,0x4a, 0x2,0x2d,0x48,
+  0x3,0x2f,0x23, 0x3,0x2e,0x7c, 0x2,0x2d,0x47, 0x3,0x2e,0x7e,
+  0x1,0x53,0x4c, 0x1,0x53,0x4e, 0x1,0x53,0x4d, 0x2,0x2d,0x49,
+  0x3,0x2f,0x24, 0xf,0x2d,0x3e, 0x3,0x33,0x69, 0x2,0x32,0x66,
+  0x2,0x32,0x63, 0x2,0x32,0x61, 0x4,0x2f,0x6d, 0x3,0x33,0x6c,
+  0x1,0x58,0x26, 0x2,0x32,0x64, 0x1,0x58,0x2b, 0x2,0x32,0x5e,
+  0x2,0x32,0x6d, 0x3,0x33,0x6f, 0x2,0x32,0x6f, 0x2,0x32,0x5f,
+  0x3,0x33,0x6e, 0x1,0x58,0x28, 0x2,0x32,0x70, 0x2,0x32,0x6b,
+  0x2,0x32,0x5d, 0x2,0x32,0x62, 0x2,0x32,0x6c, 0x2,0x32,0x68,
+  0x2,0x32,0x65, 0x3,0x33,0x6b, 0x1,0x58,0x2d, 0x2,0x32,0x6e,
+  0x2,0x32,0x60, 0x3,0x33,0x6a, 0x3,0x33,0x70, 0x2,0x32,0x69,
+  0x2,0x32,0x5b, 0x1,0x58,0x2c, 0x1,0x58,0x29, 0x2,0x32,0x67,
+  0x3,0x33,0x6d, 0x2,0x32,0x6a, 0x2,0x32,0x5c, 0x1,0x58,0x2a,
+  0x1,0x58,0x27, 0x4,0x34,0x7a, 0x3,0x38,0x66, 0x1,0x5d,0x32,
+  0x2,0x39,0x28, 0x1,0x5d,0x31, 0x3,0x38,0x64, 0x2,0x39,0x2b,
+  0x2,0x39,0x2e, 0x1,0x5d,0x2e, 0x1,0x5d,0x2c, 0x2,0x39,0x23,
+  0x2,0x39,0x2c, 0x2,0x39,0x2a, 0x2,0x39,0x27, 0x2,0x39,0x2f,
+  0x2,0x39,0x30, 0x2,0x39,0x32, 0x2,0x39,0x33, 0x2,0x39,0x22,
+  0x1,0x5d,0x2b, 0x2,0x39,0x25, 0x2,0x39,0x24, 0x2,0x39,0x31,
+  0x1,0x5d,0x2d, 0x2,0x39,0x26, 0x1,0x5d,0x2f, 0x1,0x5d,0x2a,
+  0x2,0x39,0x29, 0x1,0x5d,0x33, 0x4,0x35,0x26, 0x1,0x5d,0x30,
+  0x2,0x39,0x2d, 0xf,0x38,0x3a, 0x1,0x61,0x77, 0x2,0x40,0x25,
+  0x4,0x3a,0x71, 0x2,0x3f,0x78, 0x1,0x61,0x74, 0x3,0x3e,0x62,
+  0x2,0x47,0x2e, 0x2,0x40,0x23, 0x2,0x3f,0x75, 0x1,0x61,0x72,
+  0x2,0x3f,0x7a, 0x1,0x61,0x75, 0x2,0x3f,0x7e, 0x2,0x3f,0x7c,
+  0x1,0x61,0x78, 0x1,0x61,0x71, 0x4,0x3a,0x76, 0x3,0x3e,0x63,
+  0x2,0x3f,0x76, 0x2,0x3f,0x79, 0x1,0x61,0x76, 0x4,0x3a,0x6f,
+  0x2,0x3f,0x77, 0x5,0x3b,0x7b, 0x2,0x40,0x24, 0x2,0x40,0x22,
+  0x2,0x3f,0x7b, 0x2,0x3f,0x7d, 0x2,0x40,0x21, 0x1,0x61,0x73,
+  0x3,0x3e,0x68, 0x2,0x47,0x2f, 0x2,0x47,0x35, 0x2,0x47,0x2b,
+  0x2,0x47,0x31, 0x1,0x66,0x41, 0x2,0x47,0x2d, 0x1,0x66,0x47,
+  0x3,0x44,0x44, 0x3,0x44,0x45, 0x1,0x66,0x46, 0x3,0x44,0x49,
+  0x1,0x66,0x45, 0x2,0x47,0x34, 0x1,0x66,0x48, 0x1,0x66,0x49,
+  0x2,0x47,0x2a, 0x2,0x47,0x37, 0x1,0x66,0x4a, 0x1,0x66,0x44,
+  0x1,0x66,0x43, 0x2,0x47,0x33, 0x1,0x66,0x4b, 0x2,0x47,0x29,
+  0x2,0x47,0x2c, 0x2,0x47,0x36, 0x2,0x47,0x32, 0x4,0x40,0x59,
+  0x4,0x40,0x52, 0x2,0x4d,0x7b, 0x2,0x4d,0x70, 0x1,0x66,0x42,
+  0x5,0x42,0x5d, 0x3,0x44,0x46, 0x3,0x44,0x48, 0x1,0x6a,0x72,
+  0x2,0x4d,0x64, 0x2,0x4d,0x79, 0x2,0x4d,0x65, 0x1,0x6a,0x6d,
+  0x3,0x49,0x4f, 0x2,0x4d,0x62, 0x4,0x40,0x55, 0x2,0x4d,0x6b,
+  0x2,0x4d,0x63, 0x1,0x6a,0x6f, 0x2,0x4d,0x5d, 0x2,0x4d,0x78,
+  0x1,0x6a,0x70, 0x2,0x4d,0x75, 0x2,0x4d,0x76, 0x2,0x4d,0x5e,
+  0x1,0x6a,0x75, 0x2,0x4d,0x6d, 0x3,0x49,0x4a, 0x2,0x4d,0x67,
+  0x2,0x4d,0x6e, 0x2,0x4d,0x61, 0x4,0x46,0x7e, 0x2,0x4d,0x7a,
+  0x2,0x4d,0x72, 0x2,0x4d,0x6c, 0x2,0x4d,0x5c, 0x1,0x6a,0x71,
+  0x2,0x4d,0x73, 0x3,0x49,0x45, 0x1,0x6a,0x74, 0x2,0x4d,0x77,
+  0x3,0x49,0x4c, 0x2,0x4d,0x71, 0x1,0x6a,0x6e, 0x2,0x4d,0x6f,
+  0x3,0x49,0x49, 0x2,0x4d,0x69, 0x1,0x6a,0x6c, 0x2,0x4d,0x60,
+  0x2,0x4d,0x68, 0x2,0x4d,0x74, 0x2,0x4d,0x66, 0xf,0x4c,0x33,
+  0x3,0x49,0x4e, 0x2,0x4d,0x6a, 0x3,0x49,0x4b, 0x3,0x66,0x43,
+  0x1,0x6e,0x6a, 0x2,0x47,0x30, 0x2,0x53,0x79, 0x2,0x54,0x24,
+  0x2,0x53,0x78, 0x2,0x53,0x74, 0x2,0x53,0x71, 0x1,0x6e,0x6b,
+  0x2,0x53,0x6f, 0x1,0x6a,0x73, 0x2,0x53,0x68, 0x1,0x6e,0x69,
+  0x2,0x53,0x6e, 0x1,0x6e,0x68, 0x2,0x53,0x73, 0x2,0x53,0x70,
+  0x2,0x54,0x22, 0x2,0x53,0x7b, 0x2,0x53,0x75, 0x2,0x53,0x7a,
+  0x1,0x6e,0x64, 0x2,0x53,0x72, 0x2,0x54,0x27, 0x2,0x53,0x69,
+  0x2,0x53,0x6a, 0x2,0x54,0x23, 0x1,0x6e,0x65, 0x2,0x54,0x28,
+  0x1,0x6e,0x67, 0x2,0x54,0x29, 0x2,0x53,0x77, 0x2,0x4d,0x5f,
+  0x2,0x53,0x7d, 0x2,0x53,0x76, 0x2,0x54,0x21, 0x2,0x53,0x7c,
+  0x5,0x50,0x55, 0x3,0x4e,0x5d, 0x4,0x4d,0x28, 0x2,0x53,0x6d,
+  0x1,0x6e,0x62, 0x2,0x54,0x26, 0x1,0x6e,0x63, 0x2,0x53,0x6b,
+  0x1,0x6e,0x66, 0x2,0x5a,0x32, 0x2,0x53,0x7e, 0x2,0x54,0x25,
+  0x4,0x4d,0x31, 0x3,0x4e,0x59, 0x2,0x5a,0x2f, 0x1,0x6e,0x61,
+  0x1,0x72,0x2a, 0x2,0x5a,0x39, 0x2,0x5a,0x35, 0x4,0x53,0x3c,
+  0x2,0x5a,0x33, 0x2,0x5a,0x2e, 0x2,0x5a,0x3d, 0x3,0x52,0x5b,
+  0x3,0x52,0x5d, 0x4,0x53,0x44, 0x1,0x72,0x2e, 0x3,0x52,0x5f,
+  0x2,0x5a,0x2a, 0x2,0x5a,0x36, 0x2,0x5a,0x37, 0x2,0x5a,0x2d,
+  0x2,0x5a,0x2c, 0x2,0x5a,0x3a, 0x4,0x53,0x41, 0x2,0x5a,0x30,
+  0x2,0x5a,0x2b, 0x2,0x5a,0x31, 0x3,0x52,0x62, 0x2,0x5a,0x3c,
+  0x2,0x5a,0x29, 0x2,0x5a,0x3b, 0x2,0x5a,0x38, 0x1,0x72,0x2c,
+  0x1,0x72,0x2b, 0x4,0x53,0x39, 0x3,0x52,0x5e, 0x1,0x72,0x2d,
+  0x2,0x5a,0x34, 0x2,0x5a,0x28, 0x3,0x66,0x45, 0x3,0x66,0x44,
+  0x2,0x5f,0x27, 0x1,0x75,0x3c, 0x2,0x5f,0x2b, 0x2,0x5f,0x28,
+  0x2,0x5f,0x2f, 0x2,0x5f,0x35, 0x2,0x5f,0x2a, 0x3,0x56,0x3a,
+  0x2,0x5f,0x3e, 0x1,0x75,0x39, 0x2,0x5f,0x38, 0x2,0x5f,0x2d,
+  0x2,0x5f,0x39, 0x2,0x5f,0x34, 0x2,0x5f,0x3b, 0x2,0x5f,0x2c,
+  0x1,0x75,0x3e, 0x1,0x75,0x3d, 0x2,0x5f,0x2e, 0x2,0x5f,0x3c,
+  0x2,0x5f,0x26, 0x2,0x5f,0x3a, 0x1,0x75,0x37, 0x3,0x56,0x39,
+  0x2,0x5f,0x32, 0x2,0x5f,0x31, 0x2,0x5f,0x36, 0x2,0x5f,0x29,
+  0x1,0x75,0x3b, 0x3,0x56,0x3b, 0x1,0x75,0x3f, 0x2,0x5f,0x30,
+  0x2,0x5f,0x37, 0x1,0x75,0x40, 0x2,0x5f,0x33, 0x3,0x56,0x36,
+  0x3,0x56,0x34, 0x1,0x75,0x38, 0x1,0x75,0x3a, 0x2,0x63,0x33,
+  0x2,0x63,0x31, 0x3,0x5b,0x28, 0x3,0x58,0x76, 0x2,0x63,0x37,
+  0x2,0x63,0x35, 0x2,0x63,0x38, 0x3,0x58,0x78, 0x2,0x63,0x2a,
+  0x2,0x63,0x32, 0x2,0x63,0x3c, 0x2,0x5f,0x3d, 0x2,0x63,0x2e,
+  0x1,0x77,0x3a, 0x2,0x53,0x6c, 0x2,0x63,0x29, 0x2,0x63,0x36,
+  0x2,0x63,0x30, 0x2,0x63,0x2d, 0x2,0x63,0x28, 0x2,0x63,0x27,
+  0x2,0x63,0x3b, 0x3,0x58,0x73, 0x2,0x63,0x2c, 0x2,0x63,0x2b,
+  0x1,0x77,0x38, 0x2,0x63,0x34, 0x3,0x58,0x74, 0x1,0x77,0x37,
+  0x3,0x58,0x75, 0x5,0x64,0x48, 0x1,0x77,0x39, 0x2,0x63,0x2f,
+  0x2,0x63,0x3a, 0x3,0x66,0x46, 0x2,0x66,0x69, 0x2,0x66,0x6a,
+  0x3,0x5b,0x2c, 0x1,0x78,0x74, 0x2,0x66,0x67, 0x1,0x78,0x71,
+  0x2,0x66,0x6f, 0x3,0x5b,0x27, 0x1,0x78,0x75, 0x2,0x66,0x71,
+  0x2,0x66,0x66, 0x2,0x63,0x39, 0x2,0x66,0x73, 0x2,0x66,0x68,
+  0x5,0x69,0x43, 0x1,0x78,0x72, 0x2,0x66,0x6e, 0x3,0x5b,0x29,
+  0x2,0x66,0x70, 0x2,0x66,0x6b, 0x2,0x66,0x72, 0x2,0x66,0x6d,
+  0x2,0x66,0x6c, 0x1,0x78,0x73, 0x3,0x58,0x77, 0x3,0x5b,0x2b,
+  0x2,0x69,0x71, 0x2,0x69,0x72, 0x3,0x5d,0x25, 0x2,0x69,0x74,
+  0x1,0x7a,0x39, 0x1,0x7a,0x3a, 0x2,0x69,0x75, 0x2,0x69,0x73,
+  0x3,0x5d,0x24, 0x2,0x69,0x70, 0x3,0x5e,0x5d, 0x2,0x6c,0x31,
+  0x2,0x6c,0x34, 0x2,0x6c,0x30, 0x4,0x61,0x26, 0x1,0x7b,0x27,
+  0x2,0x6c,0x32, 0x1,0x7b,0x26, 0x1,0x7b,0x25, 0x1,0x7b,0x24,
+  0x2,0x6c,0x33, 0x2,0x6d,0x7e, 0x2,0x6d,0x7c, 0x3,0x5f,0x5f,
+  0x2,0x6d,0x7b, 0x2,0x6c,0x2f, 0x2,0x6d,0x7d, 0x2,0x6c,0x35,
+  0x2,0x6d,0x7a, 0x3,0x60,0x45, 0x2,0x6f,0x48, 0x2,0x6f,0x26,
+  0x2,0x6f,0x46, 0x1,0x7c,0x47, 0x2,0x6f,0x47, 0x2,0x6f,0x49,
+  0x3,0x66,0x47, 0x2,0x70,0x4d, 0x1,0x7c,0x66, 0x2,0x70,0x4c,
+  0x2,0x70,0x4b, 0x1,0x7c,0x67, 0x4,0x6c,0x23, 0x1,0x7d,0x27,
+  0x2,0x71,0x5d, 0x2,0x71,0x75, 0x2,0x71,0x74, 0x2,0x71,0x76,
+  0x1,0x48,0x66, 0x2,0x2d,0x4b, 0x3,0x2f,0x26, 0x2,0x32,0x71,
+  0x2,0x32,0x72, 0x3,0x38,0x6a, 0x3,0x3e,0x6a, 0x3,0x3e,0x69,
+  0x2,0x40,0x26, 0x6,0x4e,0x4f, 0x2,0x6c,0x36, 0x2,0x70,0x4e,
+  0x1,0x48,0x67, 0x1,0x53,0x4f, 0x2,0x2d,0x4c, 0x3,0x33,0x71,
+  0x3,0x66,0x48, 0x4,0x35,0x27, 0x2,0x39,0x34, 0x1,0x5d,0x34,
+  0x2,0x40,0x28, 0x2,0x40,0x27, 0x1,0x61,0x79, 0x3,0x44,0x4d,
+  0x1,0x66,0x4c, 0x2,0x54,0x2a, 0x1,0x6e,0x6c, 0x3,0x4e,0x5f,
+  0x1,0x6e,0x6d, 0x3,0x52,0x63, 0x3,0x52,0x64, 0x4,0x53,0x4b,
+  0x1,0x72,0x2f, 0x1,0x7c,0x68, 0x1,0x48,0x68, 0x3,0x2f,0x27,
+  0x2,0x2d,0x4d, 0x1,0x4f,0x50, 0x2,0x2d,0x4f, 0x2,0x2d,0x4e,
+  0x1,0x53,0x50, 0x2,0x32,0x73, 0x3,0x33,0x74, 0x2,0x32,0x7a,
+  0x1,0x58,0x2e, 0x2,0x32,0x78, 0x2,0x32,0x76, 0x3,0x33,0x77,
+  0x2,0x32,0x7d, 0x2,0x32,0x74, 0x2,0x32,0x75, 0x1,0x58,0x2f,
+  0x3,0x33,0x72, 0x1,0x58,0x33, 0x3,0x33,0x73, 0x3,0x33,0x75,
+  0x2,0x32,0x7e, 0x1,0x58,0x32, 0x2,0x32,0x7c, 0x2,0x32,0x79,
+  0x2,0x32,0x77, 0x1,0x58,0x30, 0x1,0x58,0x31, 0x2,0x32,0x7b,
+  0x3,0x33,0x76, 0x3,0x66,0x49, 0x1,0x5d,0x36, 0x2,0x39,0x35,
+  0x3,0x38,0x72, 0x1,0x5d,0x3b, 0x2,0x39,0x45, 0x1,0x5d,0x3a,
+  0x2,0x39,0x47, 0x3,0x38,0x6e, 0x3,0x38,0x74, 0x2,0x39,0x3b,
+  0x1,0x5d,0x38, 0x2,0x39,0x46, 0x3,0x38,0x6c, 0x2,0x39,0x36,
+  0x1,0x5d,0x39, 0x2,0x39,0x42, 0x2,0x39,0x3e, 0x2,0x39,0x40,
+  0x2,0x39,0x3a, 0x2,0x39,0x41, 0x3,0x38,0x6b, 0x4,0x35,0x2f,
+  0x1,0x5d,0x35, 0x2,0x39,0x3d, 0x3,0x38,0x73, 0x2,0x39,0x3c,
+  0x2,0x39,0x38, 0x3,0x38,0x6d, 0x2,0x39,0x43, 0x3,0x38,0x6f,
+  0x3,0x38,0x71, 0x2,0x39,0x3f, 0x2,0x39,0x37, 0x3,0x38,0x70,
+  0x2,0x39,0x39, 0x1,0x5d,0x37, 0x2,0x39,0x44, 0x1,0x61,0x7c,
+  0x2,0x40,0x33, 0x4,0x3a,0x7b, 0x3,0x3e,0x70, 0x3,0x3e,0x72,
+  0x2,0x40,0x2f, 0x2,0x40,0x31, 0x2,0x40,0x2c, 0x2,0x40,0x2b,
+  0x2,0x40,0x29, 0x3,0x3e,0x6d, 0x2,0x40,0x30, 0x2,0x40,0x32,
+  0x2,0x40,0x2e, 0x3,0x3e,0x6f, 0x2,0x40,0x2d, 0x1,0x61,0x7a,
+  0x1,0x61,0x7b, 0x2,0x40,0x35, 0x1,0x66,0x54, 0x2,0x47,0x39,
+  0x2,0x47,0x3f, 0x2,0x47,0x3a, 0x2,0x47,0x3b, 0x3,0x44,0x4e,
+  0x2,0x47,0x40, 0x5,0x42,0x6c, 0x1,0x66,0x56, 0x4,0x40,0x61,
+  0x1,0x66,0x4e, 0x1,0x66,0x55, 0x2,0x47,0x38, 0x2,0x40,0x2a,
+  0x1,0x66,0x51, 0x1,0x66,0x4f, 0x2,0x47,0x3e, 0x2,0x47,0x3d,
+  0x1,0x66,0x50, 0x1,0x66,0x52, 0x2,0x47,0x3c, 0x1,0x66,0x4d,
+  0x3,0x44,0x4f, 0x1,0x66,0x53, 0x3,0x4e,0x60, 0x2,0x4d,0x7d,
+  0x1,0x6a,0x7c, 0x3,0x49,0x59, 0x3,0x49,0x52, 0x2,0x4e,0x2a,
+  0x2,0x4e,0x29, 0x3,0x49,0x57, 0x2,0x4e,0x24, 0x1,0x6a,0x7e,
+  0x2,0x4e,0x28, 0x2,0x4d,0x7e, 0x2,0x4e,0x21, 0x1,0x6a,0x76,
+  0x1,0x6a,0x78, 0x3,0x49,0x54, 0x2,0x4e,0x26, 0x2,0x4d,0x7c,
+  0x1,0x6a,0x7a, 0x1,0x6a,0x79, 0x2,0x4e,0x22, 0x2,0x4e,0x27,
+  0x2,0x4e,0x25, 0x1,0x6a,0x7b, 0x2,0x4e,0x23, 0x3,0x49,0x51,
+  0x3,0x49,0x56, 0x2,0x40,0x34, 0x1,0x6a,0x77, 0x3,0x49,0x58,
+  0x2,0x54,0x2b, 0x2,0x54,0x32, 0x1,0x6e,0x6f, 0x4,0x4d,0x46,
+  0x2,0x54,0x36, 0x1,0x6e,0x73, 0x2,0x54,0x2e, 0x2,0x54,0x2c,
+  0x4,0x4d,0x3e, 0x2,0x54,0x35, 0x3,0x4e,0x61, 0x1,0x6e,0x6e,
+  0x2,0x54,0x34, 0x1,0x6e,0x70, 0x1,0x6e,0x71, 0x2,0x54,0x2d,
+  0x1,0x6e,0x72, 0x2,0x54,0x33, 0x2,0x54,0x2f, 0x2,0x54,0x30,
+  0x2,0x54,0x31, 0x1,0x6a,0x7d, 0x3,0x4e,0x62, 0x2,0x5a,0x3e,
+  0x2,0x5a,0x4a, 0x4,0x53,0x53, 0x1,0x72,0x34, 0x2,0x5a,0x45,
+  0x2,0x5a,0x47, 0x3,0x52,0x65, 0x1,0x72,0x32, 0x2,0x5a,0x3f,
+  0x2,0x5a,0x43, 0x4,0x53,0x50, 0x2,0x5a,0x46, 0x1,0x72,0x30,
+  0x1,0x72,0x33, 0x2,0x5a,0x49, 0x2,0x5a,0x41, 0x2,0x5a,0x42,
+  0x2,0x5a,0x48, 0x2,0x5a,0x40, 0x2,0x5a,0x44, 0x1,0x72,0x31,
+  0x2,0x5f,0x40, 0x2,0x5f,0x3f, 0x1,0x75,0x42, 0x2,0x5f,0x45,
+  0x1,0x75,0x44, 0x3,0x56,0x40, 0x4,0x58,0x62, 0x1,0x75,0x41,
+  0x2,0x5f,0x41, 0x1,0x75,0x45, 0x2,0x5f,0x42, 0x3,0x56,0x3f,
+  0x3,0x56,0x3d, 0x2,0x5f,0x43, 0x2,0x5f,0x46, 0x3,0x56,0x42,
+  0x1,0x75,0x43, 0x2,0x63,0x41, 0x3,0x58,0x79, 0x2,0x63,0x44,
+  0x3,0x58,0x7a, 0x2,0x63,0x3e, 0x2,0x63,0x40, 0x3,0x58,0x7c,
+  0x3,0x58,0x7b, 0x2,0x63,0x3f, 0x2,0x63,0x42, 0x2,0x63,0x43,
+  0x2,0x5f,0x44, 0x2,0x63,0x3d, 0x3,0x66,0x4a, 0x1,0x78,0x78,
+  0x2,0x66,0x77, 0x2,0x66,0x7a, 0x2,0x66,0x7c, 0x2,0x66,0x75,
+  0x2,0x66,0x76, 0x2,0x66,0x79, 0x2,0x66,0x7b, 0x1,0x78,0x79,
+  0x1,0x78,0x77, 0x1,0x78,0x76, 0x2,0x66,0x78, 0x2,0x66,0x74,
+  0x2,0x69,0x76, 0x1,0x7a,0x3b, 0x3,0x5d,0x29, 0x2,0x69,0x77,
+  0x3,0x5d,0x28, 0x2,0x6c,0x38, 0x1,0x7b,0x28, 0x2,0x6c,0x3a,
+  0x1,0x7b,0x29, 0x2,0x6c,0x37, 0x2,0x6c,0x39, 0x1,0x7b,0x72,
+  0x5,0x74,0x38, 0x2,0x6e,0x21, 0x1,0x7b,0x71, 0x2,0x6f,0x4c,
+  0x2,0x6f,0x4b, 0x4,0x6c,0x25, 0x2,0x6f,0x4a, 0xf,0x68,0x4a,
+  0x3,0x61,0x49, 0x2,0x71,0x37, 0x2,0x71,0x38, 0x2,0x71,0x3a,
+  0x2,0x71,0x39, 0x3,0x61,0x7d, 0x2,0x22,0x70, 0x1,0x48,0x69,
+  0x1,0x53,0x51, 0x2,0x39,0x48, 0x1,0x61,0x7d, 0x3,0x66,0x4b,
+  0x2,0x47,0x41, 0x1,0x77,0x3b, 0x3,0x5b,0x2f, 0x2,0x66,0x7d,
+  0x3,0x60,0x46, 0x3,0x61,0x4a, 0x1,0x4b,0x44, 0x3,0x2f,0x29,
+  0x4,0x2f,0x76, 0x4,0x2f,0x75, 0x1,0x5d,0x3d, 0x4,0x35,0x34,
+  0x3,0x38,0x76, 0x3,0x38,0x75, 0x1,0x5d,0x3c, 0x3,0x38,0x77,
+  0x2,0x40,0x36, 0x1,0x61,0x7e, 0x2,0x40,0x38, 0x2,0x40,0x37,
+  0x6,0x4e,0x60, 0x3,0x3e,0x74, 0x2,0x47,0x42, 0x1,0x66,0x57,
+  0x2,0x4e,0x2b, 0x2,0x4e,0x2e, 0x2,0x4e,0x2d, 0x4,0x47,0x35,
+  0x2,0x4e,0x2c, 0x2,0x54,0x37, 0x2,0x54,0x39, 0x2,0x54,0x38,
+  0x3,0x4e,0x65, 0x1,0x72,0x36, 0x3,0x52,0x66, 0x4,0x53,0x59,
+  0x3,0x4e,0x64, 0x1,0x72,0x35, 0x3,0x56,0x46, 0x1,0x75,0x46,
+  0x2,0x5f,0x47, 0x2,0x5f,0x49, 0x2,0x5f,0x48, 0x3,0x58,0x7e,
+  0x3,0x58,0x7d, 0x1,0x77,0x3c, 0x3,0x59,0x21, 0x4,0x61,0x2f,
+  0x3,0x5b,0x31, 0x2,0x67,0x21, 0x2,0x66,0x7e, 0xf,0x63,0x77,
+  0x2,0x69,0x78, 0x1,0x7a,0x3c, 0x3,0x5d,0x2a, 0x3,0x5e,0x61,
+  0x1,0x7b,0x2a, 0x2,0x6e,0x23, 0x2,0x6e,0x22, 0x1,0x7d,0x28,
+  0x1,0x4b,0x45, 0x2,0x2d,0x50, 0x1,0x53,0x52, 0x2,0x39,0x4b,
+  0x2,0x39,0x49, 0x4,0x35,0x39, 0x4,0x35,0x38, 0x2,0x39,0x4a,
+  0x2,0x40,0x3a, 0x2,0x40,0x3b, 0x2,0x47,0x49, 0x2,0x40,0x39,
+  0x2,0x47,0x43, 0x2,0x47,0x47, 0x2,0x47,0x46, 0x2,0x47,0x48,
+  0x1,0x66,0x58, 0x2,0x47,0x45, 0x2,0x47,0x44, 0x2,0x47,0x4a,
+  0x3,0x44,0x54, 0x2,0x4e,0x31, 0x2,0x4e,0x2f, 0x3,0x49,0x5c,
+  0x2,0x4e,0x30, 0x2,0x54,0x3c, 0x2,0x54,0x3a, 0x3,0x4e,0x66,
+  0x2,0x54,0x3b, 0x2,0x5a,0x4b, 0x2,0x5f,0x4a, 0x2,0x5f,0x4b,
+  0x1,0x77,0x3d, 0x3,0x5b,0x32, 0x2,0x67,0x22, 0x2,0x69,0x79,
+  0x1,0x7a,0x3d, 0x4,0x61,0x37, 0x2,0x6c,0x3b, 0x2,0x6e,0x24,
+  0x1,0x7b,0x73, 0x4,0x69,0x45, 0x2,0x6f,0x4d, 0x2,0x71,0x3b,
+  0x1,0x4b,0x46, 0x1,0x53,0x54, 0x1,0x53,0x55, 0x2,0x2d,0x51,
+  0x3,0x2f,0x2a, 0x3,0x2f,0x2c, 0x2,0x2d,0x52, 0x1,0x53,0x53,
+  0x4,0x2f,0x7c, 0x1,0x58,0x39, 0x3,0x33,0x7b, 0x1,0x58,0x37,
+  0x3,0x33,0x7a, 0x1,0x58,0x36, 0x1,0x58,0x3d, 0x1,0x58,0x35,
+  0x1,0x58,0x3e, 0x2,0x33,0x21, 0x1,0x58,0x3b, 0x4,0x2f,0x7d,
+  0x1,0x58,0x38, 0x1,0x58,0x3c, 0x1,0x58,0x3a, 0x1,0x58,0x34,
+  0x3,0x33,0x7c, 0x1,0x5d,0x45, 0x3,0x38,0x7e, 0x1,0x5d,0x3f,
+  0x2,0x39,0x4f, 0x1,0x5d,0x44, 0x3,0x39,0x23, 0x3,0x39,0x29,
+  0x1,0x5d,0x46, 0x1,0x5d,0x40, 0x6,0x44,0x70, 0x1,0x5d,0x41,
+  0x3,0x38,0x79, 0x2,0x39,0x4d, 0x3,0x38,0x7b, 0x3,0x39,0x25,
+  0x1,0x5d,0x3e, 0x3,0x39,0x22, 0x2,0x39,0x4e, 0x1,0x5d,0x43,
+  0x4,0x35,0x3d, 0x5,0x35,0x5b, 0x2,0x39,0x4c, 0x1,0x5d,0x42,
+  0x3,0x38,0x7a, 0x1,0x62,0x2b, 0x3,0x3e,0x7c, 0x1,0x62,0x2d,
+  0x4,0x3b,0x2f, 0x3,0x3e,0x7d, 0x2,0x40,0x3e, 0x1,0x62,0x2c,
+  0x1,0x62,0x21, 0x1,0x62,0x25, 0x3,0x3f,0x24, 0x1,0x66,0x6b,
+  0x2,0x47,0x4f, 0x2,0x40,0x40, 0x1,0x62,0x26, 0x3,0x3e,0x7e,
+  0x3,0x3e,0x75, 0x2,0x40,0x43, 0x2,0x40,0x44, 0x1,0x62,0x2a,
+  0x4,0x3b,0x30, 0x2,0x40,0x46, 0x3,0x3f,0x21, 0x2,0x40,0x48,
+  0x3,0x3f,0x23, 0x2,0x40,0x49, 0x2,0x40,0x3d, 0x2,0x40,0x3c,
+  0x2,0x40,0x4a, 0x1,0x62,0x29, 0x2,0x40,0x47, 0x2,0x40,0x45,
+  0x4,0x3b,0x2c, 0x1,0x62,0x27, 0x1,0x62,0x23, 0x1,0x62,0x2e,
+  0x2,0x40,0x41, 0x2,0x40,0x42, 0x2,0x40,0x3f, 0x3,0x3e,0x78,
+  0x1,0x62,0x28, 0x4,0x3b,0x31, 0x3,0x3f,0x22, 0x1,0x62,0x24,
+  0x1,0x62,0x22, 0x2,0x47,0x4e, 0x1,0x66,0x66, 0x1,0x66,0x61,
+  0x3,0x44,0x60, 0x3,0x44,0x59, 0x1,0x66,0x5c, 0x3,0x44,0x63,
+  0x1,0x66,0x6c, 0x1,0x66,0x5d, 0x3,0x44,0x55, 0x1,0x66,0x59,
+  0x1,0x66,0x68, 0x1,0x66,0x65, 0x1,0x66,0x67, 0x3,0x44,0x58,
+  0x1,0x66,0x5e, 0x1,0x66,0x63, 0x1,0x66,0x5a, 0x1,0x66,0x5b,
+  0x2,0x47,0x56, 0x2,0x47,0x53, 0x2,0x47,0x4b, 0x2,0x47,0x50,
+  0x3,0x44,0x5b, 0x1,0x66,0x69, 0x2,0x47,0x57, 0x1,0x66,0x6a,
+  0x1,0x66,0x60, 0x3,0x44,0x5c, 0x3,0x44,0x61, 0x2,0x47,0x4d,
+  0x3,0x44,0x56, 0x2,0x47,0x55, 0x2,0x47,0x51, 0x2,0x47,0x54,
+  0x2,0x47,0x52, 0x1,0x66,0x64, 0x2,0x47,0x4c, 0x1,0x66,0x5f,
+  0x3,0x44,0x5d, 0x2,0x4e,0x34, 0x1,0x6b,0x22, 0x1,0x6b,0x25,
+  0x3,0x49,0x5f, 0x2,0x4e,0x36, 0x3,0x49,0x64, 0x1,0x6b,0x2d,
+  0x2,0x4e,0x35, 0x1,0x6b,0x27, 0x3,0x49,0x63, 0x1,0x6e,0x78,
+  0x2,0x4e,0x37, 0x4,0x47,0x45, 0x1,0x6b,0x2c, 0x2,0x4e,0x33,
+  0x1,0x6b,0x2e, 0x3,0x49,0x5e, 0x3,0x49,0x62, 0x3,0x49,0x6b,
+  0x1,0x6b,0x23, 0x3,0x49,0x68, 0x1,0x66,0x62, 0x1,0x6b,0x26,
+  0x3,0x49,0x60, 0x1,0x6b,0x24, 0x1,0x6b,0x28, 0x1,0x6b,0x2a,
+  0x1,0x6b,0x21, 0x1,0x6b,0x2f, 0x1,0x6b,0x2b, 0x3,0x49,0x65,
+  0x1,0x6b,0x29, 0x2,0x4e,0x32, 0x3,0x49,0x66, 0xf,0x4c,0x41,
+  0x3,0x4e,0x74, 0x1,0x6f,0x21, 0x3,0x4e,0x67, 0x1,0x6e,0x7b,
+  0x3,0x4e,0x72, 0x3,0x4e,0x70, 0x3,0x4e,0x6e, 0x1,0x6f,0x24,
+  0x3,0x4e,0x6c, 0x2,0x54,0x3f, 0x1,0x6f,0x25, 0x2,0x54,0x4b,
+  0x2,0x54,0x44, 0x1,0x6e,0x74, 0x2,0x54,0x4c, 0x2,0x54,0x46,
+  0x1,0x6e,0x7e, 0x2,0x54,0x47, 0x3,0x4e,0x73, 0x1,0x6e,0x7d,
+  0x2,0x54,0x4a, 0x1,0x6e,0x77, 0x2,0x54,0x48, 0x2,0x54,0x3e,
+  0x1,0x6e,0x76, 0x2,0x5a,0x56, 0x1,0x6e,0x7c, 0x3,0x4e,0x75,
+  0x1,0x6e,0x79, 0x3,0x4e,0x69, 0x1,0x6f,0x23, 0x3,0x4e,0x6a,
+  0x2,0x54,0x3d, 0x3,0x4e,0x76, 0x2,0x54,0x41, 0x1,0x6e,0x75,
+  0x2,0x54,0x40, 0x2,0x54,0x42, 0x2,0x54,0x43, 0x1,0x6f,0x22,
+  0x2,0x54,0x45, 0x2,0x54,0x49, 0x2,0x54,0x4d, 0x1,0x6f,0x26,
+  0x1,0x72,0x3c, 0x2,0x5a,0x51, 0x2,0x5a,0x57, 0x2,0x5a,0x54,
+  0x2,0x5a,0x4c, 0x2,0x5a,0x58, 0x2,0x5a,0x4d, 0x3,0x52,0x6a,
+  0x2,0x5a,0x53, 0x3,0x52,0x6b, 0x1,0x72,0x37, 0x1,0x72,0x3d,
+  0x2,0x5a,0x59, 0x3,0x4e,0x6f, 0x3,0x52,0x67, 0x1,0x72,0x39,
+  0x3,0x52,0x6e, 0x1,0x72,0x43, 0x1,0x72,0x3e, 0x2,0x5a,0x5b,
+  0x2,0x5a,0x55, 0x1,0x72,0x3a, 0x2,0x5a,0x4e, 0x1,0x72,0x44,
+  0x2,0x5a,0x4f, 0x2,0x5a,0x50, 0x1,0x72,0x45, 0x1,0x72,0x42,
+  0x1,0x6e,0x7a, 0x3,0x52,0x69, 0x1,0x72,0x38, 0x2,0x5a,0x5c,
+  0x1,0x72,0x46, 0x3,0x52,0x68, 0x1,0x72,0x3f, 0x2,0x5a,0x5a,
+  0x1,0x72,0x3b, 0x1,0x72,0x40, 0x1,0x72,0x41, 0x3,0x66,0x4c,
+  0x1,0x75,0x4e, 0x2,0x5f,0x50, 0x2,0x5f,0x59, 0x2,0x5f,0x56,
+  0x2,0x5f,0x58, 0x3,0x56,0x49, 0x1,0x75,0x4b, 0x2,0x5f,0x51,
+  0x3,0x56,0x4a, 0x2,0x5f,0x57, 0x1,0x75,0x47, 0x2,0x5f,0x53,
+  0x1,0x75,0x4f, 0x2,0x5f,0x4f, 0x2,0x5f,0x54, 0x2,0x5f,0x5b,
+  0x2,0x5a,0x52, 0x2,0x5f,0x55, 0x2,0x5f,0x4e, 0x1,0x75,0x48,
+  0x2,0x5f,0x4d, 0x1,0x75,0x49, 0x2,0x5f,0x5c, 0x1,0x75,0x4a,
+  0x2,0x5f,0x5a, 0x1,0x75,0x4d, 0x2,0x5f,0x4c, 0x3,0x56,0x48,
+  0x1,0x75,0x4c, 0x2,0x5f,0x52, 0x2,0x63,0x47, 0x2,0x63,0x55,
+  0x2,0x63,0x50, 0x2,0x63,0x52, 0x2,0x63,0x46, 0x1,0x77,0x3e,
+  0x3,0x59,0x2a, 0x2,0x63,0x45, 0x1,0x77,0x41, 0x1,0x77,0x40,
+  0x3,0x59,0x26, 0x2,0x63,0x54, 0x2,0x63,0x4c, 0x2,0x63,0x49,
+  0x2,0x63,0x4f, 0x3,0x59,0x24, 0x2,0x63,0x48, 0x3,0x59,0x28,
+  0x2,0x63,0x4a, 0x2,0x63,0x53, 0x2,0x63,0x51, 0x3,0x59,0x23,
+  0x1,0x77,0x3f, 0x2,0x63,0x58, 0x2,0x63,0x56, 0x2,0x63,0x4d,
+  0x2,0x63,0x57, 0x2,0x63,0x4e, 0x3,0x5b,0x34, 0x2,0x67,0x26,
+  0x1,0x78,0x7a, 0x2,0x67,0x2d, 0x3,0x5b,0x35, 0x4,0x61,0x3a,
+  0x2,0x6c,0x3e, 0x1,0x79,0x23, 0x2,0x63,0x4b, 0x2,0x67,0x24,
+  0x1,0x78,0x7d, 0x2,0x67,0x25, 0x2,0x67,0x2a, 0x3,0x5b,0x36,
+  0x3,0x5d,0x33, 0x1,0x79,0x21, 0x1,0x79,0x22, 0x2,0x67,0x23,
+  0x2,0x67,0x2c, 0x2,0x67,0x2e, 0x2,0x67,0x27, 0x2,0x67,0x29,
+  0x2,0x67,0x2b, 0x2,0x67,0x28, 0x2,0x67,0x2f, 0x1,0x78,0x7c,
+  0x1,0x79,0x24, 0x1,0x78,0x7e, 0x1,0x78,0x7b, 0x2,0x69,0x7c,
+  0x4,0x64,0x4d, 0x1,0x7a,0x42, 0x2,0x69,0x7a, 0x3,0x5d,0x30,
+  0x3,0x5d,0x2c, 0x2,0x69,0x7e, 0x3,0x5d,0x32, 0x2,0x6a,0x21,
+  0x1,0x7a,0x40, 0x2,0x6a,0x22, 0x2,0x69,0x7d, 0x3,0x5d,0x2b,
+  0x2,0x69,0x7b, 0x1,0x7a,0x43, 0x1,0x7a,0x3f, 0x2,0x6a,0x23,
+  0x3,0x5d,0x2e, 0x1,0x7a,0x41, 0x1,0x7a,0x3e, 0x3,0x5c,0x6d,
+  0x4,0x67,0x3b, 0x1,0x7b,0x2b, 0x3,0x5e,0x62, 0x4,0x67,0x41,
+  0x1,0x7b,0x2c, 0x2,0x6c,0x3d, 0x2,0x6c,0x3c, 0x2,0x6c,0x3f,
+  0x2,0x6c,0x40, 0x3,0x5e,0x63, 0x1,0x7b,0x2d, 0x2,0x6e,0x25,
+  0x2,0x6e,0x2a, 0x1,0x7b,0x74, 0x3,0x5f,0x61, 0x2,0x6e,0x27,
+  0x3,0x5f,0x62, 0x2,0x6e,0x26, 0x2,0x6e,0x29, 0x2,0x6e,0x28,
+  0x3,0x60,0x48, 0x2,0x6f,0x51, 0x4,0x6a,0x7c, 0x1,0x7c,0x48,
+  0x2,0x6f,0x50, 0x2,0x6f,0x4e, 0x3,0x60,0x47, 0x2,0x6f,0x4f,
+  0x3,0x60,0x49, 0x3,0x60,0x7b, 0x1,0x7c,0x6a, 0x1,0x7c,0x69,
+  0x2,0x70,0x4f, 0x2,0x70,0x50, 0x1,0x7c,0x6b, 0x3,0x61,0x4b,
+  0x2,0x71,0x3c, 0x2,0x71,0x3d, 0x1,0x7d,0x34, 0x3,0x61,0x6b,
+  0x1,0x7d,0x3a, 0x3,0x61,0x7e, 0x2,0x71,0x77, 0x2,0x72,0x36,
+  0x1,0x4b,0x47, 0x5,0x30,0x46, 0x2,0x39,0x50, 0x3,0x39,0x2a,
+  0x2,0x39,0x51, 0x2,0x47,0x58, 0x2,0x4e,0x38, 0x2,0x54,0x4e,
+  0x1,0x75,0x51, 0x3,0x56,0x4d, 0x1,0x75,0x50, 0x2,0x63,0x59,
+  0x2,0x67,0x30, 0x3,0x5f,0x64, 0x2,0x6f,0x52, 0x1,0x4b,0x48,
+  0x2,0x33,0x22, 0x1,0x58,0x3f, 0x1,0x5d,0x47, 0x2,0x47,0x5a,
+  0x2,0x47,0x59, 0x1,0x6f,0x27, 0x2,0x54,0x4f, 0x1,0x6f,0x28,
+  0x2,0x5f,0x5d, 0x1,0x77,0x42, 0x3,0x5d,0x34, 0x3,0x66,0x4d,
+  0x3,0x62,0x21, 0x1,0x7d,0x43, 0x1,0x4b,0x49, 0x2,0x28,0x6b,
+  0x2,0x33,0x23, 0x3,0x39,0x2d, 0x4,0x35,0x4d, 0x1,0x5d,0x48,
+  0x3,0x39,0x2c, 0x2,0x39,0x52, 0x2,0x39,0x53, 0x3,0x3f,0x2a,
+  0x2,0x40,0x4b, 0x3,0x3f,0x29, 0x1,0x62,0x2f, 0x1,0x66,0x6d,
+  0x3,0x44,0x64, 0x2,0x47,0x5c, 0x2,0x47,0x5b, 0x2,0x47,0x5d,
+  0x3,0x49,0x6d, 0x2,0x4e,0x39, 0x2,0x4e,0x3a, 0x1,0x6b,0x30,
+  0x1,0x72,0x47, 0x1,0x6f,0x29, 0x1,0x72,0x48, 0x2,0x5f,0x61,
+  0x2,0x5f,0x5e, 0x2,0x5f,0x60, 0x2,0x5f,0x5f, 0x1,0x75,0x52,
+  0x3,0x59,0x2b, 0x2,0x63,0x5a, 0x2,0x67,0x32, 0x2,0x67,0x31,
+  0x2,0x25,0x24, 0x1,0x58,0x41, 0x1,0x58,0x40, 0x2,0x33,0x24,
+  0x3,0x39,0x2e, 0x2,0x39,0x54, 0x3,0x3f,0x2c, 0x3,0x3f,0x2b,
+  0x2,0x40,0x4d, 0x2,0x40,0x4c, 0x1,0x62,0x30, 0x3,0x3f,0x2d,
+  0x2,0x47,0x5f, 0x2,0x47,0x60, 0x2,0x47,0x5e, 0x4,0x40,0x78,
+  0x3,0x44,0x65, 0x1,0x66,0x6f, 0x1,0x66,0x6e, 0x4,0x47,0x54,
+  0x1,0x6b,0x32, 0x1,0x6b,0x31, 0x3,0x4e,0x7a, 0x2,0x54,0x50,
+  0x2,0x5a,0x5f, 0x2,0x5a,0x5d, 0x2,0x5a,0x5e, 0x1,0x72,0x49,
+  0x2,0x5f,0x63, 0x2,0x5f,0x62, 0x3,0x56,0x4f, 0x2,0x63,0x5d,
+  0x2,0x63,0x5c, 0x2,0x63,0x5b, 0x2,0x67,0x33, 0x3,0x61,0x4d,
+  0x2,0x71,0x78, 0x1,0x4b,0x4a, 0x1,0x53,0x56, 0x3,0x2f,0x2e,
+  0x1,0x53,0x57, 0x1,0x58,0x42, 0x1,0x58,0x43, 0x2,0x33,0x26,
+  0x2,0x33,0x25, 0x2,0x39,0x55, 0x3,0x39,0x30, 0x1,0x5d,0x4e,
+  0x1,0x5d,0x4c, 0x1,0x5d,0x49, 0x1,0x5d,0x4d, 0x1,0x5d,0x4b,
+  0x1,0x5d,0x4a, 0x3,0x39,0x32, 0x3,0x39,0x31, 0x1,0x62,0x31,
+  0x2,0x40,0x50, 0x3,0x3f,0x2f, 0x1,0x66,0x74, 0x1,0x62,0x33,
+  0x1,0x62,0x38, 0x2,0x40,0x52, 0x1,0x62,0x3a, 0x1,0x62,0x39,
+  0x1,0x62,0x3c, 0x2,0x40,0x51, 0x2,0x40,0x4e, 0x1,0x62,0x36,
+  0x1,0x62,0x32, 0x1,0x62,0x34, 0x2,0x40,0x4f, 0x1,0x62,0x3b,
+  0x1,0x62,0x37, 0x1,0x62,0x35, 0x1,0x66,0x76, 0x1,0x66,0x75,
+  0x1,0x66,0x73, 0x1,0x66,0x77, 0x4,0x40,0x7e, 0x1,0x66,0x71,
+  0x1,0x66,0x72, 0x3,0x44,0x69, 0x1,0x66,0x70, 0x5,0x43,0x2d,
+  0x2,0x47,0x61, 0x3,0x44,0x67, 0x2,0x4e,0x3c, 0x3,0x49,0x70,
+  0x1,0x6b,0x34, 0x1,0x6b,0x35, 0x1,0x6b,0x33, 0x3,0x49,0x72,
+  0x2,0x4e,0x3b, 0x3,0x49,0x71, 0x2,0x4e,0x3d, 0x3,0x66,0x4e,
+  0x2,0x54,0x53, 0x2,0x54,0x55, 0x3,0x4e,0x7e, 0x1,0x6f,0x32,
+  0x2,0x54,0x56, 0x1,0x6f,0x2b, 0x2,0x54,0x52, 0x1,0x6f,0x2a,
+  0x1,0x6f,0x34, 0x1,0x6f,0x30, 0x1,0x6f,0x31, 0x1,0x6f,0x2d,
+  0x2,0x54,0x51, 0x1,0x6f,0x2c, 0x2,0x54,0x57, 0x2,0x54,0x54,
+  0x3,0x4e,0x7d, 0x1,0x6f,0x33, 0x3,0x4f,0x22, 0x1,0x6f,0x2e,
+  0x1,0x6f,0x2f, 0x2,0x5a,0x61, 0x3,0x52,0x75, 0x2,0x5a,0x63,
+  0x2,0x5a,0x62, 0x3,0x52,0x73, 0x2,0x5a,0x64, 0x1,0x72,0x4a,
+  0x2,0x5a,0x60, 0x3,0x56,0x51, 0x3,0x56,0x52, 0x1,0x75,0x56,
+  0x2,0x5f,0x64, 0x1,0x75,0x53, 0x1,0x75,0x57, 0x1,0x75,0x55,
+  0x1,0x75,0x54, 0x2,0x63,0x5e, 0x4,0x5d,0x69, 0x2,0x63,0x61,
+  0x7,0x43,0x52, 0x2,0x63,0x60, 0x3,0x59,0x2e, 0x2,0x63,0x5f,
+  0x1,0x77,0x43, 0x2,0x67,0x34, 0x2,0x67,0x35, 0x1,0x79,0x25,
+  0x2,0x67,0x36, 0x1,0x79,0x26, 0x3,0x5b,0x38, 0x3,0x66,0x4f,
+  0x1,0x7a,0x45, 0x4,0x64,0x4f, 0x1,0x7a,0x44, 0x2,0x6c,0x41,
+  0x3,0x5e,0x65, 0x3,0x5e,0x66, 0x1,0x7b,0x2e, 0x2,0x6c,0x42,
+  0x2,0x6e,0x2b, 0x1,0x7b,0x75, 0x1,0x7b,0x76, 0x3,0x66,0x50,
+  0x2,0x6f,0x53, 0x3,0x60,0x4a, 0x1,0x7c,0x6d, 0x3,0x61,0x4e,
+  0x1,0x4b,0x4b, 0x3,0x39,0x33, 0x1,0x5d,0x50, 0x1,0x5d,0x4f,
+  0x2,0x47,0x62, 0x2,0x47,0x63, 0x1,0x6b,0x36, 0x2,0x5a,0x65,
+  0x1,0x6f,0x35, 0x2,0x5a,0x66, 0x2,0x5f,0x65, 0x1,0x4b,0x4c,
+  0x3,0x24,0x3a, 0x2,0x2d,0x53, 0x1,0x53,0x59, 0x1,0x53,0x58,
+  0x2,0x33,0x27, 0x1,0x58,0x44, 0x2,0x33,0x28, 0x2,0x39,0x58,
+  0x3,0x39,0x39, 0x2,0x39,0x57, 0x3,0x39,0x37, 0x2,0x39,0x56,
+  0x3,0x39,0x35, 0x3,0x39,0x38, 0x2,0x40,0x54, 0x1,0x62,0x3f,
+  0x3,0x3f,0x39, 0x3,0x3f,0x34, 0x2,0x40,0x53, 0x1,0x62,0x3e,
+  0x3,0x3f,0x37, 0x3,0x3f,0x30, 0x3,0x3f,0x33, 0x2,0x40,0x55,
+  0x1,0x62,0x3d, 0x3,0x3f,0x38, 0x2,0x47,0x65, 0x2,0x47,0x68,
+  0x2,0x47,0x66, 0x2,0x47,0x67, 0x2,0x47,0x6b, 0x2,0x47,0x64,
+  0x2,0x47,0x6c, 0x2,0x47,0x69, 0x2,0x47,0x6a, 0x1,0x6b,0x38,
+  0x2,0x4e,0x3e, 0x3,0x49,0x75, 0x3,0x49,0x73, 0x1,0x6b,0x37,
+  0x3,0x49,0x74, 0x2,0x54,0x5b, 0x2,0x54,0x59, 0x3,0x4f,0x26,
+  0x4,0x4d,0x75, 0x1,0x6f,0x36, 0x2,0x54,0x58, 0x2,0x54,0x5a,
+  0x3,0x4f,0x25, 0x1,0x6f,0x37, 0x3,0x4f,0x23, 0x2,0x5a,0x67,
+  0x3,0x52,0x77, 0x2,0x5a,0x68, 0x1,0x75,0x58, 0x3,0x59,0x31,
+  0x2,0x67,0x38, 0x2,0x67,0x3a, 0x2,0x67,0x37, 0x2,0x67,0x39,
+  0x2,0x6a,0x24, 0x2,0x6c,0x43, 0x3,0x66,0x51, 0x2,0x71,0x5e,
+  0x1,0x4b,0x4d, 0x1,0x53,0x5a, 0x2,0x33,0x29, 0x2,0x33,0x2b,
+  0x2,0x33,0x2a, 0x2,0x39,0x5b, 0x1,0x5d,0x52, 0x3,0x39,0x3e,
+  0x2,0x39,0x59, 0x3,0x39,0x3a, 0x1,0x5d,0x51, 0x2,0x39,0x5c,
+  0x3,0x39,0x3d, 0x2,0x39,0x5d, 0x2,0x39,0x5a, 0x6,0x45,0x38,
+  0x2,0x40,0x61, 0x1,0x62,0x47, 0x2,0x40,0x59, 0x2,0x40,0x5f,
+  0x3,0x3f,0x3f, 0x3,0x3f,0x3a, 0x1,0x62,0x42, 0x1,0x62,0x45,
+  0x2,0x40,0x58, 0x1,0x62,0x40, 0x2,0x40,0x5c, 0x2,0x47,0x72,
+  0x1,0x62,0x44, 0x3,0x3f,0x3b, 0x2,0x40,0x57, 0x3,0x3f,0x3e,
+  0x2,0x40,0x5d, 0x2,0x40,0x5a, 0x2,0x40,0x60, 0x2,0x40,0x56,
+  0x2,0x40,0x5e, 0x1,0x62,0x43, 0x1,0x62,0x46, 0x2,0x40,0x5b,
+  0x1,0x62,0x41, 0x1,0x66,0x79, 0x2,0x47,0x6e, 0x1,0x66,0x78,
+  0x2,0x47,0x75, 0x2,0x47,0x74, 0x1,0x67,0x21, 0x1,0x67,0x22,
+  0x2,0x47,0x76, 0x1,0x66,0x7a, 0x2,0x47,0x73, 0x1,0x66,0x7e,
+  0x2,0x47,0x78, 0x2,0x47,0x6f, 0x3,0x44,0x6b, 0x2,0x47,0x71,
+  0x1,0x66,0x7b, 0x2,0x47,0x6d, 0x2,0x47,0x70, 0x2,0x47,0x77,
+  0x1,0x66,0x7c, 0x2,0x47,0x79, 0x1,0x66,0x7d, 0x1,0x6b,0x39,
+  0x2,0x4e,0x43, 0x2,0x4e,0x49, 0x2,0x4e,0x41, 0x2,0x4e,0x4a,
+  0x3,0x49,0x7b, 0x2,0x4e,0x40, 0x2,0x4e,0x45, 0x2,0x4e,0x4b,
+  0x2,0x4e,0x48, 0x2,0x4e,0x47, 0x2,0x4e,0x46, 0x3,0x49,0x7a,
+  0x2,0x4e,0x3f, 0x2,0x4e,0x44, 0x3,0x49,0x79, 0x2,0x4e,0x42,
+  0x1,0x6f,0x3c, 0x1,0x6f,0x39, 0x2,0x54,0x64, 0x2,0x54,0x69,
+  0x2,0x54,0x6b, 0x2,0x54,0x68, 0x2,0x54,0x61, 0x2,0x54,0x63,
+  0x2,0x54,0x6d, 0x2,0x54,0x6a, 0x2,0x54,0x65, 0x2,0x54,0x6e,
+  0x2,0x54,0x62, 0x2,0x54,0x6c, 0x1,0x6f,0x3a, 0x1,0x6f,0x40,
+  0x1,0x6f,0x3e, 0x2,0x54,0x5c, 0x1,0x6f,0x3f, 0x1,0x6f,0x3b,
+  0x2,0x54,0x5d, 0x2,0x54,0x5f, 0x2,0x54,0x5e, 0x2,0x54,0x66,
+  0x2,0x54,0x67, 0x3,0x4f,0x2c, 0x1,0x6f,0x3d, 0x3,0x4f,0x2b,
+  0x1,0x6f,0x38, 0x2,0x54,0x60, 0x2,0x5a,0x72, 0x1,0x72,0x4c,
+  0x3,0x52,0x7e, 0x2,0x5a,0x69, 0x1,0x72,0x4d, 0x1,0x72,0x50,
+  0x2,0x5a,0x6e, 0x5,0x51,0x48, 0x2,0x5a,0x6b, 0x1,0x72,0x4f,
+  0x4,0x54,0x29, 0x3,0x52,0x7b, 0x2,0x5a,0x6f, 0x2,0x5a,0x70,
+  0x2,0x5a,0x6a, 0x2,0x5a,0x73, 0x2,0x5a,0x6c, 0x2,0x5a,0x71,
+  0x1,0x72,0x4e, 0x3,0x52,0x7c, 0x1,0x72,0x4b, 0x2,0x5a,0x6d,
+  0x3,0x56,0x54, 0x2,0x5f,0x6b, 0x1,0x75,0x5b, 0x1,0x75,0x59,
+  0x1,0x75,0x5c, 0x1,0x75,0x5a, 0x2,0x5f,0x6a, 0x2,0x5f,0x67,
+  0x2,0x5f,0x66, 0x3,0x56,0x55, 0x2,0x5f,0x69, 0x4,0x59,0x2d,
+  0x2,0x5f,0x68, 0x2,0x63,0x6f, 0x1,0x77,0x49, 0x2,0x63,0x66,
+  0x2,0x63,0x65, 0x3,0x59,0x32, 0x1,0x77,0x44, 0x2,0x63,0x6b,
+  0x2,0x63,0x6a, 0x2,0x63,0x62, 0x2,0x63,0x6d, 0x2,0x63,0x67,
+  0x1,0x77,0x48, 0x2,0x63,0x64, 0x2,0x63,0x6c, 0x2,0x63,0x63,
+  0x1,0x77,0x45, 0x1,0x77,0x47, 0x2,0x63,0x68, 0x1,0x77,0x46,
+  0x2,0x63,0x69, 0x3,0x5b,0x3a, 0x2,0x63,0x6e, 0x2,0x67,0x3e,
+  0x3,0x5b,0x39, 0x1,0x79,0x2b, 0x2,0x67,0x3b, 0x4,0x61,0x52,
+  0x2,0x67,0x3f, 0x3,0x5b,0x3b, 0x4,0x61,0x4f, 0x1,0x79,0x28,
+  0x2,0x67,0x3d, 0x1,0x79,0x2d, 0x3,0x5b,0x3c, 0x1,0x79,0x2a,
+  0x3,0x5b,0x3d, 0x2,0x67,0x3c, 0x4,0x61,0x54, 0x1,0x79,0x2c,
+  0x2,0x67,0x40, 0x1,0x79,0x27, 0x1,0x7a,0x47, 0x1,0x7a,0x49,
+  0x3,0x5d,0x37, 0x2,0x6a,0x27, 0x1,0x7a,0x48, 0x2,0x6a,0x25,
+  0x1,0x79,0x29, 0x2,0x6a,0x26, 0x1,0x7a,0x46, 0x1,0x7b,0x2f,
+  0x1,0x7b,0x31, 0x2,0x6c,0x45, 0x1,0x7b,0x30, 0x2,0x6c,0x44,
+  0x2,0x6e,0x30, 0x1,0x7b,0x77, 0x2,0x6e,0x2f, 0x1,0x7b,0x78,
+  0x2,0x6e,0x2d, 0x2,0x6e,0x2c, 0x2,0x6e,0x31, 0x2,0x6e,0x32,
+  0x2,0x6f,0x54, 0x3,0x60,0x4b, 0x2,0x6e,0x2e, 0x2,0x70,0x54,
+  0x2,0x70,0x51, 0x2,0x70,0x52, 0x2,0x70,0x53, 0x1,0x7d,0x29,
+  0x3,0x61,0x50, 0x2,0x71,0x40, 0x2,0x71,0x3f, 0x2,0x71,0x3e,
+  0x2,0x71,0x5f, 0x3,0x61,0x6c, 0x2,0x72,0x2e, 0x2,0x71,0x79,
+  0x1,0x7d,0x3b, 0x1,0x4b,0x4e, 0x1,0x58,0x45, 0x3,0x39,0x3f,
+  0xf,0x38,0x6c, 0x3,0x39,0x40, 0x3,0x3f,0x40, 0x3,0x44,0x73,
+  0x1,0x67,0x23, 0x3,0x49,0x7d, 0x3,0x49,0x7c, 0x3,0x4f,0x30,
+  0x3,0x4f,0x32, 0x3,0x4f,0x2f, 0x3,0x4f,0x31, 0x1,0x6f,0x41,
+  0x3,0x66,0x52, 0x2,0x5a,0x74, 0xf,0x58,0x33, 0x3,0x59,0x35,
+  0x1,0x77,0x4a, 0x3,0x59,0x36, 0x2,0x67,0x41, 0x3,0x5b,0x3f,
+  0x4,0x61,0x56, 0x3,0x5d,0x38, 0x4,0x67,0x51, 0x2,0x71,0x7a,
+  0x1,0x4b,0x4f, 0x1,0x4f,0x51, 0x1,0x53,0x5c, 0x1,0x53,0x5b,
+  0x5,0x30,0x55, 0x1,0x58,0x48, 0x3,0x34,0x21, 0x2,0x33,0x2c,
+  0x1,0x58,0x46, 0x2,0x33,0x2d, 0x1,0x58,0x47, 0x3,0x66,0x53,
+  0x3,0x39,0x41, 0x2,0x39,0x62, 0x2,0x39,0x5e, 0x3,0x39,0x47,
+  0x4,0x35,0x63, 0x1,0x5d,0x53, 0x2,0x39,0x61, 0x2,0x39,0x60,
+  0x2,0x39,0x5f, 0x1,0x5d,0x54, 0x2,0x39,0x63, 0x2,0x39,0x64,
+  0x3,0x3f,0x45, 0x2,0x40,0x68, 0x2,0x40,0x66, 0x2,0x40,0x6a,
+  0x2,0x40,0x6b, 0x2,0x40,0x71, 0x3,0x3f,0x47, 0x2,0x40,0x6d,
+  0x2,0x40,0x6f, 0x5,0x43,0x50, 0x2,0x40,0x67, 0x2,0x40,0x62,
+  0x4,0x3b,0x55, 0x2,0x40,0x6e, 0x3,0x3f,0x44, 0x3,0x3f,0x46,
+  0x2,0x40,0x70, 0x2,0x40,0x69, 0x2,0x40,0x6c, 0x2,0x40,0x63,
+  0x1,0x62,0x49, 0x2,0x40,0x65, 0x2,0x40,0x64, 0x1,0x62,0x48,
+  0x1,0x62,0x4a, 0x3,0x3f,0x49, 0x1,0x67,0x26, 0x2,0x47,0x7b,
+  0x2,0x47,0x7d, 0x2,0x47,0x7c, 0x2,0x48,0x23, 0x1,0x67,0x24,
+  0x3,0x44,0x76, 0x2,0x47,0x7e, 0x2,0x47,0x7a, 0x2,0x48,0x21,
+  0x2,0x48,0x22, 0x1,0x67,0x25, 0x1,0x67,0x27, 0x2,0x48,0x24,
+  0x2,0x4e,0x4f, 0x2,0x4e,0x4e, 0x4,0x47,0x6a, 0x2,0x4e,0x4c,
+  0x2,0x4e,0x4d, 0x1,0x6b,0x3b, 0x1,0x6b,0x3d, 0x1,0x6b,0x3a,
+  0x1,0x6b,0x3c, 0x2,0x54,0x75, 0x2,0x54,0x76, 0x2,0x54,0x71,
+  0x3,0x4f,0x36, 0x2,0x54,0x72, 0x1,0x6f,0x43, 0x1,0x6f,0x48,
+  0x1,0x6f,0x42, 0x1,0x6f,0x49, 0x1,0x6f,0x44, 0x2,0x54,0x73,
+  0x4,0x4e,0x2d, 0x3,0x4f,0x33, 0x2,0x54,0x74, 0x2,0x54,0x70,
+  0x1,0x6f,0x4a, 0x1,0x6f,0x46, 0x3,0x4f,0x35, 0x4,0x4e,0x2b,
+  0x1,0x6f,0x45, 0x1,0x6f,0x47, 0x3,0x4f,0x34, 0x2,0x54,0x6f,
+  0x3,0x53,0x24, 0x2,0x5a,0x76, 0x1,0x72,0x52, 0x3,0x53,0x22,
+  0x3,0x53,0x21, 0x2,0x5a,0x78, 0x1,0x72,0x54, 0x2,0x5a,0x7b,
+  0x2,0x5a,0x77, 0x2,0x5a,0x75, 0x2,0x5a,0x7a, 0x1,0x72,0x53,
+  0x2,0x5a,0x79, 0x7,0x34,0x32, 0x1,0x72,0x51, 0x3,0x53,0x25,
+  0x3,0x56,0x59, 0x1,0x75,0x5e, 0x1,0x75,0x61, 0x2,0x5f,0x6d,
+  0x3,0x56,0x5a, 0x1,0x75,0x5f, 0x2,0x5f,0x6c, 0x1,0x75,0x5d,
+  0x1,0x75,0x60, 0x2,0x63,0x70, 0x2,0x63,0x71, 0x2,0x63,0x72,
+  0x1,0x77,0x4b, 0x3,0x59,0x37, 0x2,0x63,0x73, 0x1,0x77,0x4c,
+  0x1,0x79,0x2f, 0x2,0x67,0x44, 0x2,0x67,0x45, 0x2,0x67,0x43,
+  0x2,0x67,0x42, 0x2,0x67,0x46, 0x1,0x79,0x2e, 0x2,0x6a,0x2b,
+  0x2,0x6a,0x29, 0x2,0x6a,0x2a, 0x2,0x6a,0x2c, 0x2,0x6a,0x28,
+  0x2,0x6a,0x2d, 0x2,0x6c,0x47, 0x3,0x5e,0x67, 0x2,0x6c,0x48,
+  0x2,0x6c,0x46, 0x1,0x7b,0x32, 0x2,0x6e,0x33, 0x1,0x7b,0x79,
+  0x2,0x6e,0x34, 0x2,0x6f,0x56, 0x2,0x6f,0x55, 0x3,0x62,0x22,
+  0x1,0x4b,0x50, 0x1,0x62,0x4b, 0x3,0x3f,0x4b, 0x3,0x44,0x77,
+  0x1,0x67,0x28, 0x3,0x44,0x78, 0x3,0x4a,0x21, 0x3,0x4a,0x22,
+  0x1,0x6b,0x3e, 0x3,0x4f,0x37, 0x3,0x53,0x27, 0x1,0x72,0x56,
+  0x3,0x53,0x26, 0x1,0x72,0x55, 0x3,0x66,0x54, 0x3,0x59,0x38,
+  0x1,0x79,0x30, 0x1,0x7a,0x29, 0x1,0x7b,0x33, 0x1,0x4b,0x51,
+  0x1,0x58,0x49, 0x1,0x67,0x29, 0x3,0x4f,0x39, 0x2,0x67,0x47,
+  0x3,0x27,0x2f, 0x4,0x21,0x54, 0xf,0x21,0x6a, 0x4,0x23,0x30,
+  0x3,0x24,0x3b, 0xf,0x22,0x71, 0xf,0x22,0x72, 0x3,0x27,0x30,
+  0x2,0x25,0x26, 0x4,0x25,0x21, 0x3,0x27,0x33, 0x1,0x4b,0x52,
+  0x4,0x25,0x23, 0x1,0x4b,0x55, 0x1,0x4b,0x54, 0x1,0x4b,0x53,
+  0x3,0x27,0x31, 0xf,0x25,0x32, 0x2,0x25,0x25, 0x3,0x2a,0x72,
+  0x2,0x28,0x6d, 0x3,0x2a,0x70, 0x2,0x28,0x6f, 0x1,0x4f,0x52,
+  0x3,0x2a,0x74, 0x4,0x28,0x26, 0x1,0x4f,0x54, 0x2,0x28,0x6c,
+  0x2,0x28,0x6e, 0x1,0x4f,0x53, 0x2,0x28,0x71, 0x2,0x28,0x70,
+  0x2,0x28,0x72, 0x3,0x2a,0x73, 0x3,0x2a,0x71, 0xf,0x28,0x71,
+  0xf,0x28,0x6e, 0x2,0x2d,0x57, 0x2,0x2d,0x55, 0x1,0x53,0x5f,
+  0x2,0x2d,0x54, 0x1,0x53,0x64, 0x1,0x53,0x61, 0x1,0x53,0x5e,
+  0x3,0x2f,0x31, 0x1,0x53,0x65, 0x3,0x2f,0x32, 0x1,0x53,0x60,
+  0x1,0x53,0x63, 0x6,0x34,0x60, 0x1,0x53,0x62, 0x2,0x2d,0x56,
+  0x3,0x2f,0x33, 0x1,0x53,0x5d, 0x3,0x2f,0x30, 0x1,0x58,0x4f,
+  0x2,0x33,0x2f, 0x2,0x33,0x35, 0x1,0x58,0x4c, 0x1,0x58,0x53,
+  0x3,0x34,0x25, 0x1,0x58,0x4e, 0x2,0x33,0x32, 0x2,0x33,0x34,
+  0x1,0x58,0x51, 0x2,0x33,0x2e, 0x2,0x33,0x31, 0x1,0x58,0x4d,
+  0x1,0x58,0x4a, 0x2,0x33,0x30, 0x1,0x58,0x50, 0x2,0x33,0x33,
+  0x1,0x58,0x52, 0x1,0x58,0x4b, 0x4,0x30,0x2f, 0x3,0x34,0x27,
+  0x3,0x34,0x26, 0x2,0x39,0x66, 0x2,0x39,0x69, 0x1,0x5d,0x56,
+  0x3,0x39,0x4b, 0x1,0x5d,0x60, 0x1,0x5d,0x5c, 0x2,0x39,0x67,
+  0x3,0x39,0x4a, 0x3,0x39,0x4e, 0x1,0x5d,0x64, 0x1,0x5d,0x5d,
+  0x1,0x5d,0x62, 0x1,0x5d,0x58, 0x4,0x35,0x68, 0x1,0x5d,0x55,
+  0x1,0x5d,0x57, 0x1,0x5d,0x63, 0x2,0x39,0x68, 0x1,0x5d,0x5b,
+  0x1,0x5d,0x5e, 0x1,0x5d,0x5a, 0x1,0x5d,0x5f, 0x2,0x39,0x6a,
+  0x1,0x5d,0x61, 0x1,0x5d,0x59, 0x2,0x39,0x65, 0x3,0x39,0x4c,
+  0x3,0x3f,0x4f, 0x3,0x3f,0x50, 0x3,0x3f,0x4d, 0x3,0x3f,0x4c,
+  0x3,0x3f,0x51, 0x2,0x40,0x72, 0x1,0x62,0x4c, 0x2,0x40,0x74,
+  0x3,0x3f,0x55, 0x1,0x62,0x4e, 0x1,0x62,0x50, 0x4,0x35,0x66,
+  0x2,0x40,0x73, 0x1,0x62,0x4d, 0x1,0x62,0x51, 0x3,0x3f,0x56,
+  0x1,0x62,0x4f, 0x3,0x3f,0x54, 0x3,0x3f,0x57, 0x1,0x67,0x2f,
+  0x2,0x48,0x29, 0x1,0x67,0x37, 0x2,0x48,0x26, 0x3,0x44,0x7d,
+  0x1,0x67,0x38, 0x1,0x67,0x2d, 0x3,0x44,0x79, 0x2,0x48,0x27,
+  0x3,0x44,0x7c, 0x3,0x44,0x7a, 0x1,0x67,0x32, 0x3,0x44,0x7b,
+  0x2,0x48,0x28, 0x1,0x67,0x2b, 0x1,0x67,0x2a, 0x3,0x44,0x7e,
+  0x1,0x67,0x35, 0x1,0x67,0x34, 0x1,0x67,0x33, 0x1,0x67,0x31,
+  0x1,0x67,0x36, 0x2,0x48,0x25, 0x1,0x67,0x2c, 0x1,0x67,0x2e,
+  0x1,0x67,0x30, 0x1,0x6b,0x40, 0x1,0x6b,0x43, 0x3,0x4a,0x24,
+  0x1,0x6b,0x47, 0x1,0x6b,0x41, 0x1,0x6b,0x46, 0x1,0x6b,0x44,
+  0x3,0x4a,0x27, 0x1,0x6b,0x3f, 0x3,0x4a,0x26, 0x1,0x6b,0x45,
+  0x1,0x6b,0x42, 0xf,0x4c,0x6b, 0x4,0x4e,0x32, 0x2,0x54,0x7a,
+  0x1,0x6f,0x4d, 0x1,0x6f,0x4b, 0x3,0x4f,0x3c, 0x2,0x54,0x7b,
+  0x4,0x4e,0x33, 0x1,0x6f,0x4e, 0x1,0x6f,0x4c, 0x2,0x54,0x79,
+  0x2,0x54,0x78, 0x3,0x4f,0x3b, 0x1,0x72,0x5a, 0x2,0x54,0x77,
+  0x1,0x72,0x58, 0x1,0x72,0x57, 0x2,0x5a,0x7c, 0x1,0x6f,0x4f,
+  0x1,0x72,0x59, 0x2,0x5a,0x7d, 0x1,0x72,0x5c, 0x2,0x5a,0x7e,
+  0x1,0x72,0x5b, 0x1,0x75,0x63, 0x2,0x5f,0x6f, 0x1,0x75,0x62,
+  0x1,0x75,0x67, 0x1,0x75,0x65, 0x1,0x75,0x66, 0x1,0x77,0x4e,
+  0x1,0x75,0x64, 0x2,0x5f,0x6e, 0x2,0x5b,0x21, 0x1,0x77,0x4d,
+  0x1,0x77,0x4f, 0x3,0x59,0x3a, 0x1,0x79,0x31, 0x1,0x79,0x32,
+  0x4,0x61,0x5f, 0x2,0x6a,0x2e, 0x4,0x69,0x52, 0x1,0x7c,0x4a,
+  0x1,0x7c,0x49, 0x1,0x4b,0x57, 0x3,0x22,0x5e, 0x3,0x22,0x5d,
+  0x2,0x22,0x75, 0x1,0x58,0x54, 0x3,0x24,0x3c, 0x2,0x22,0x72,
+  0x2,0x22,0x73, 0x2,0x22,0x71, 0x3,0x24,0x3d, 0x2,0x22,0x74,
+  0x3,0x66,0x55, 0x2,0x25,0x2a, 0x2,0x25,0x27, 0x2,0x25,0x2c,
+  0x2,0x25,0x28, 0x1,0x4b,0x58, 0x1,0x4b,0x5b, 0x3,0x27,0x35,
+  0x2,0x25,0x29, 0x1,0x4b,0x5a, 0x2,0x25,0x2b, 0x3,0x27,0x39,
+  0x3,0x27,0x34, 0x1,0x4b,0x59, 0x3,0x39,0x51, 0x3,0x2a,0x77,
+  0x4,0x28,0x2b, 0x2,0x28,0x75, 0x2,0x28,0x77, 0x1,0x4f,0x57,
+  0x2,0x28,0x73, 0x2,0x28,0x76, 0x2,0x28,0x74, 0x1,0x4f,0x55,
+  0x1,0x4f,0x58, 0x3,0x2a,0x75, 0x1,0x4f,0x56, 0x3,0x2a,0x78,
+  0x3,0x2f,0x35, 0x2,0x2d,0x59, 0x2,0x2d,0x5d, 0x2,0x2d,0x5a,
+  0x3,0x2f,0x38, 0x1,0x53,0x68, 0x3,0x2f,0x34, 0x1,0x53,0x69,
+  0x3,0x2f,0x3e, 0x2,0x2d,0x5c, 0x3,0x2f,0x37, 0x2,0x2d,0x5e,
+  0x2,0x2d,0x60, 0x3,0x2f,0x3c, 0x1,0x53,0x66, 0x2,0x2d,0x5f,
+  0x4,0x41,0x39, 0x3,0x2f,0x3b, 0x1,0x53,0x67, 0xf,0x45,0x6d,
+  0x2,0x39,0x71, 0x2,0x2d,0x5b, 0x2,0x33,0x36, 0x2,0x33,0x3f,
+  0x2,0x33,0x3d, 0x2,0x33,0x38, 0x2,0x33,0x39, 0x2,0x33,0x3e,
+  0x2,0x33,0x40, 0x1,0x58,0x56, 0x3,0x34,0x29, 0x2,0x33,0x3b,
+  0x2,0x33,0x37, 0x1,0x58,0x55, 0x1,0x58,0x57, 0x2,0x33,0x3a,
+  0x2,0x33,0x41, 0x2,0x33,0x3c, 0x1,0x5d,0x65, 0x2,0x39,0x74,
+  0x2,0x39,0x6c, 0x2,0x39,0x72, 0x2,0x39,0x73, 0x1,0x5d,0x66,
+  0x3,0x39,0x4f, 0x2,0x39,0x6b, 0x2,0x39,0x6d, 0x2,0x2d,0x58,
+  0x2,0x39,0x6f, 0x2,0x39,0x70, 0x2,0x39,0x6e, 0x1,0x62,0x53,
+  0x4,0x4e,0x3b, 0x3,0x39,0x52, 0x2,0x40,0x7b, 0x2,0x5b,0x22,
+  0x2,0x40,0x7c, 0x2,0x40,0x79, 0x1,0x5d,0x67, 0x1,0x62,0x55,
+  0x2,0x40,0x78, 0x2,0x40,0x7e, 0x2,0x40,0x7d, 0x1,0x62,0x52,
+  0x2,0x41,0x23, 0x2,0x40,0x77, 0x2,0x41,0x22, 0x2,0x40,0x75,
+  0x2,0x41,0x21, 0x2,0x40,0x7a, 0x1,0x62,0x54, 0x3,0x3f,0x59,
+  0x2,0x48,0x30, 0x3,0x45,0x23, 0x2,0x48,0x2b, 0x2,0x48,0x31,
+  0x2,0x48,0x2c, 0x2,0x48,0x2a, 0x2,0x48,0x2d, 0x1,0x67,0x39,
+  0x3,0x45,0x24, 0x2,0x48,0x2f, 0x3,0x45,0x25, 0x2,0x48,0x2e,
+  0x1,0x67,0x3a, 0x1,0x6b,0x49, 0x1,0x6b,0x48, 0x2,0x4e,0x56,
+  0x2,0x4e,0x59, 0x2,0x4e,0x51, 0x2,0x4e,0x55, 0x1,0x6b,0x4a,
+  0x2,0x4e,0x54, 0x2,0x4e,0x52, 0x2,0x4e,0x58, 0x2,0x4e,0x53,
+  0x2,0x4e,0x50, 0x2,0x4e,0x57, 0x3,0x4a,0x2a, 0x2,0x55,0x23,
+  0x1,0x6f,0x52, 0x2,0x63,0x74, 0x2,0x54,0x7e, 0x2,0x55,0x21,
+  0x2,0x54,0x7d, 0x2,0x40,0x76, 0x1,0x6f,0x51, 0x2,0x55,0x24,
+  0x2,0x54,0x7c, 0x1,0x6f,0x50, 0x1,0x6f,0x53, 0x2,0x55,0x22,
+  0x2,0x5b,0x23, 0x1,0x72,0x5d, 0x2,0x5b,0x24, 0x2,0x5b,0x25,
+  0x3,0x53,0x2b, 0x2,0x5f,0x70, 0x1,0x75,0x68, 0x2,0x63,0x75,
+  0x2,0x63,0x76, 0x3,0x59,0x3c, 0x3,0x59,0x3b, 0x2,0x63,0x77,
+  0x2,0x67,0x49, 0x2,0x67,0x48, 0x2,0x6a,0x30, 0x2,0x6a,0x2f,
+  0x2,0x6c,0x4a, 0x2,0x6c,0x4b, 0x2,0x6c,0x49, 0x2,0x6e,0x35,
+  0x1,0x7b,0x7a, 0x1,0x4b,0x5c, 0x1,0x53,0x6b, 0x1,0x53,0x6a,
+  0x1,0x58,0x5a, 0x1,0x58,0x59, 0x2,0x33,0x43, 0x2,0x33,0x44,
+  0x2,0x33,0x42, 0x3,0x34,0x2a, 0x1,0x58,0x58, 0x2,0x39,0x78,
+  0x3,0x39,0x55, 0x2,0x39,0x79, 0x2,0x39,0x75, 0x1,0x5d,0x68,
+  0x2,0x39,0x76, 0x3,0x39,0x54, 0x2,0x39,0x77, 0x3,0x66,0x57,
+  0x2,0x41,0x26, 0x2,0x41,0x28, 0x2,0x41,0x24, 0x2,0x41,0x27,
+  0x1,0x62,0x56, 0x2,0x41,0x25, 0x1,0x62,0x57, 0x3,0x45,0x28,
+  0x2,0x42,0x79, 0x1,0x67,0x3d, 0x1,0x67,0x3c, 0x3,0x45,0x27,
+  0x1,0x67,0x3b, 0x4,0x41,0x3a, 0x2,0x48,0x32, 0x2,0x48,0x33,
+  0x4,0x41,0x3b, 0x2,0x4e,0x5b, 0x2,0x4e,0x5d, 0x1,0x6b,0x4e,
+  0x1,0x6b,0x4b, 0x3,0x4a,0x2c, 0x1,0x6b,0x4d, 0x1,0x6b,0x4c,
+  0x2,0x4e,0x5c, 0x2,0x4e,0x5a, 0x3,0x4a,0x2b, 0x3,0x4a,0x2d,
+  0x2,0x55,0x2b, 0x2,0x55,0x28, 0x2,0x55,0x29, 0x1,0x6f,0x57,
+  0x2,0x55,0x2a, 0x2,0x55,0x25, 0x2,0x55,0x26, 0x1,0x6f,0x54,
+  0x3,0x4f,0x3f, 0x1,0x6f,0x55, 0x2,0x55,0x27, 0x1,0x6f,0x56,
+  0x3,0x4f,0x40, 0x2,0x5b,0x29, 0x3,0x53,0x2d, 0x2,0x5b,0x2a,
+  0x2,0x5b,0x27, 0x2,0x5b,0x28, 0x1,0x72,0x5e, 0x2,0x5b,0x26,
+  0x4,0x54,0x42, 0x3,0x53,0x2c, 0x3,0x53,0x2f, 0x4,0x59,0x3f,
+  0x2,0x5f,0x74, 0x2,0x5f,0x71, 0x2,0x5f,0x73, 0x1,0x75,0x6b,
+  0x2,0x5f,0x77, 0x1,0x75,0x6a, 0x2,0x5f,0x75, 0x2,0x5f,0x78,
+  0x2,0x5f,0x76, 0x2,0x5f,0x72, 0x1,0x75,0x69, 0x2,0x63,0x79,
+  0x4,0x5e,0x24, 0x2,0x63,0x7a, 0x2,0x63,0x78, 0x3,0x59,0x3d,
+  0x2,0x63,0x7c, 0x1,0x77,0x50, 0x1,0x77,0x51, 0x2,0x67,0x4b,
+  0x1,0x79,0x34, 0x2,0x63,0x7b, 0x2,0x67,0x4a, 0x1,0x79,0x33,
+  0x2,0x6a,0x33, 0x2,0x6a,0x34, 0x1,0x7a,0x4a, 0x2,0x6a,0x32,
+  0x4,0x64,0x65, 0x2,0x6a,0x31, 0x2,0x6c,0x4c, 0x1,0x7b,0x34,
+  0x3,0x5e,0x68, 0x2,0x6f,0x57, 0x2,0x70,0x56, 0x2,0x70,0x55,
+  0x3,0x60,0x7e, 0x1,0x7c,0x6e, 0x1,0x7d,0x2a, 0x2,0x70,0x57,
+  0x2,0x71,0x60, 0x3,0x61,0x6d, 0x1,0x7d,0x3c, 0x1,0x4b,0x5d,
+  0x1,0x4f,0x59, 0x1,0x67,0x3e, 0x1,0x7a,0x4b, 0x1,0x4b,0x5e,
+  0x1,0x53,0x6c, 0x1,0x5d,0x69, 0x1,0x62,0x58, 0x1,0x77,0x52,
+  0x1,0x4f,0x5a, 0x2,0x2d,0x62, 0x2,0x2d,0x61, 0x2,0x33,0x45,
+  0x3,0x34,0x30, 0x1,0x58,0x5d, 0x1,0x58,0x5b, 0x1,0x58,0x5f,
+  0x2,0x33,0x47, 0x3,0x34,0x2d, 0x1,0x58,0x5e, 0x1,0x58,0x5c,
+  0x3,0x34,0x2f, 0x3,0x34,0x2e, 0x3,0x34,0x31, 0x2,0x33,0x46,
+  0x1,0x5d,0x6c, 0x2,0x3a,0x21, 0x3,0x39,0x58, 0x1,0x5d,0x6b,
+  0x1,0x5d,0x6d, 0x2,0x3a,0x26, 0x1,0x5d,0x6f, 0x2,0x3a,0x23,
+  0x2,0x3a,0x24, 0x2,0x39,0x7a, 0x1,0x5d,0x6e, 0x2,0x3a,0x27,
+  0x4,0x35,0x7b, 0x3,0x39,0x57, 0x2,0x39,0x7c, 0x3,0x39,0x56,
+  0x2,0x39,0x7d, 0x2,0x39,0x7b, 0x1,0x5d,0x6a, 0x3,0x39,0x59,
+  0x2,0x3a,0x25, 0x2,0x39,0x7e, 0x2,0x3a,0x22, 0x2,0x41,0x34,
+  0x3,0x3f,0x5d, 0x2,0x41,0x33, 0x2,0x41,0x31, 0x2,0x41,0x29,
+  0x2,0x41,0x38, 0x2,0x41,0x2c, 0x2,0x41,0x36, 0x2,0x41,0x3d,
+  0x2,0x41,0x35, 0x1,0x62,0x60, 0x3,0x3f,0x66, 0x1,0x62,0x5c,
+  0x2,0x41,0x2a, 0x3,0x3f,0x60, 0x2,0x41,0x30, 0x1,0x62,0x5e,
+  0x3,0x3f,0x68, 0x2,0x41,0x2f, 0x1,0x62,0x5f, 0x1,0x62,0x61,
+  0x2,0x41,0x32, 0x3,0x3f,0x69, 0x1,0x62,0x59, 0x1,0x62,0x5a,
+  0x2,0x41,0x3e, 0x2,0x41,0x3c, 0x3,0x3f,0x62, 0x2,0x41,0x3b,
+  0x2,0x41,0x2d, 0x3,0x3f,0x65, 0x2,0x41,0x39, 0x4,0x3b,0x66,
+  0x1,0x62,0x5d, 0x6,0x4f,0x6f, 0x3,0x3f,0x5e, 0x3,0x66,0x59,
+  0x3,0x3f,0x63, 0x1,0x62,0x5b, 0x2,0x41,0x3a, 0x2,0x41,0x2b,
+  0x2,0x41,0x2e, 0x2,0x41,0x37, 0x3,0x66,0x58, 0x2,0x4f,0x22,
+  0x2,0x48,0x3d, 0x3,0x45,0x2e, 0x2,0x48,0x36, 0x2,0x48,0x49,
+  0x2,0x48,0x52, 0x2,0x48,0x39, 0x1,0x67,0x49, 0x3,0x45,0x2b,
+  0x2,0x48,0x46, 0x1,0x67,0x3f, 0x1,0x67,0x41, 0x1,0x67,0x4d,
+  0x2,0x48,0x37, 0x3,0x45,0x37, 0x3,0x45,0x2f, 0x1,0x67,0x42,
+  0x1,0x67,0x44, 0x1,0x67,0x4e, 0x1,0x67,0x43, 0x3,0x45,0x39,
+  0x4,0x41,0x41, 0x4,0x41,0x46, 0x3,0x45,0x38, 0x1,0x67,0x4c,
+  0x2,0x48,0x3f, 0x4,0x41,0x48, 0x2,0x48,0x34, 0x1,0x67,0x4a,
+  0x2,0x48,0x3e, 0x1,0x67,0x46, 0x2,0x48,0x50, 0x1,0x67,0x4b,
+  0x2,0x48,0x4e, 0x2,0x48,0x42, 0x2,0x48,0x4c, 0x1,0x67,0x48,
+  0x2,0x48,0x35, 0x2,0x48,0x4f, 0x2,0x48,0x4a, 0x3,0x45,0x2a,
+  0x2,0x48,0x51, 0x1,0x67,0x40, 0x4,0x41,0x40, 0x3,0x45,0x2d,
+  0x1,0x67,0x4f, 0x1,0x67,0x45, 0x3,0x45,0x31, 0x3,0x45,0x29,
+  0x2,0x48,0x3b, 0x3,0x45,0x34, 0x2,0x48,0x43, 0x2,0x48,0x47,
+  0x3,0x45,0x33, 0x2,0x48,0x4b, 0x1,0x67,0x47, 0x2,0x48,0x3a,
+  0x2,0x48,0x38, 0x2,0x48,0x44, 0x4,0x41,0x42, 0x4,0x41,0x43,
+  0x3,0x45,0x32, 0x3,0x45,0x35, 0x2,0x48,0x41, 0x2,0x48,0x40,
+  0x3,0x45,0x36, 0x2,0x48,0x45, 0x2,0x48,0x48, 0x2,0x48,0x4d,
+  0x3,0x66,0x5a, 0xf,0x45,0x72, 0x4,0x47,0x75, 0x2,0x4e,0x60,
+  0xf,0x4d,0x22, 0x1,0x6b,0x4f, 0x2,0x4e,0x6a, 0x2,0x4e,0x62,
+  0x1,0x6b,0x55, 0x1,0x6b,0x59, 0x2,0x4e,0x73, 0x2,0x4e,0x7b,
+  0x2,0x4e,0x6c, 0x1,0x6b,0x51, 0x3,0x4a,0x34, 0x2,0x4e,0x70,
+  0x2,0x48,0x3c, 0x3,0x4a,0x35, 0x1,0x6b,0x52, 0x2,0x4e,0x77,
+  0x2,0x4e,0x7c, 0x2,0x4e,0x74, 0x3,0x4a,0x2f, 0x2,0x4e,0x76,
+  0x2,0x4f,0x21, 0x2,0x4e,0x78, 0x2,0x4e,0x66, 0x2,0x4e,0x6f,
+  0x3,0x45,0x30, 0x3,0x4a,0x38, 0x1,0x6b,0x5a, 0x3,0x4a,0x33,
+  0x1,0x6b,0x56, 0x2,0x4e,0x64, 0x2,0x4e,0x71, 0x1,0x6b,0x54,
+  0x2,0x4e,0x6b, 0x1,0x6b,0x53, 0x2,0x4e,0x79, 0x2,0x4e,0x68,
+  0x2,0x4e,0x61, 0x1,0x6b,0x57, 0x2,0x4e,0x7e, 0x3,0x4a,0x39,
+  0x4,0x47,0x77, 0x2,0x4e,0x63, 0x2,0x4e,0x75, 0x2,0x4e,0x72,
+  0x2,0x4e,0x6d, 0x2,0x4e,0x5f, 0x2,0x4e,0x5e, 0x2,0x4e,0x67,
+  0x2,0x4e,0x7a, 0x1,0x6b,0x58, 0x2,0x4e,0x7d, 0x2,0x4e,0x65,
+  0x2,0x4e,0x69, 0x1,0x6b,0x50, 0x3,0x4a,0x32, 0x3,0x4a,0x37,
+  0xf,0x4d,0x27, 0x3,0x67,0x2a, 0x3,0x4a,0x31, 0x1,0x6f,0x63,
+  0x1,0x6f,0x5e, 0x2,0x55,0x4d, 0x2,0x55,0x49, 0x2,0x55,0x31,
+  0x1,0x6f,0x5a, 0x3,0x4f,0x42, 0x3,0x4f,0x50, 0x4,0x4e,0x45,
+  0x1,0x6f,0x59, 0x1,0x6f,0x5f, 0x4,0x4e,0x47, 0x3,0x4f,0x43,
+  0x3,0x4f,0x41, 0x2,0x55,0x2f, 0x1,0x6f,0x5d, 0x2,0x55,0x3b,
+  0x2,0x55,0x2d, 0x2,0x55,0x2e, 0x1,0x6f,0x58, 0x2,0x55,0x4c,
+  0x1,0x6f,0x61, 0x2,0x55,0x3e, 0x2,0x55,0x43, 0x2,0x55,0x3d,
+  0x2,0x5b,0x3c, 0x2,0x55,0x39, 0x2,0x55,0x41, 0x2,0x55,0x3f,
+  0x2,0x55,0x32, 0x2,0x55,0x2c, 0x2,0x55,0x47, 0x1,0x6f,0x60,
+  0x2,0x55,0x48, 0x3,0x4f,0x48, 0x2,0x55,0x42, 0x3,0x4f,0x49,
+  0x2,0x55,0x37, 0x2,0x55,0x35, 0x2,0x55,0x30, 0x3,0x4f,0x4b,
+  0x3,0x4f,0x4e, 0x3,0x4f,0x44, 0x2,0x55,0x38, 0x2,0x55,0x45,
+  0x2,0x55,0x34, 0x2,0x55,0x44, 0x2,0x55,0x4a, 0x3,0x4f,0x51,
+  0x4,0x4e,0x46, 0x1,0x6f,0x5c, 0x3,0x4f,0x45, 0x2,0x55,0x40,
+  0x2,0x55,0x46, 0x2,0x55,0x3c, 0x2,0x55,0x36, 0x1,0x6f,0x5b,
+  0x3,0x4f,0x52, 0x4,0x4e,0x44, 0x3,0x4f,0x4c, 0x2,0x4e,0x6e,
+  0x2,0x55,0x3a, 0x1,0x6f,0x62, 0x2,0x55,0x33, 0xf,0x52,0x6b,
+  0x3,0x4f,0x4d, 0x3,0x66,0x5b, 0x3,0x66,0x5c, 0x3,0x4a,0x30,
+  0x2,0x5b,0x41, 0x1,0x72,0x61, 0x2,0x5b,0x40, 0x2,0x5b,0x3e,
+  0x2,0x5b,0x50, 0x1,0x72,0x65, 0x3,0x53,0x35, 0x2,0x5b,0x4d,
+  0x2,0x5b,0x45, 0x2,0x5b,0x4f, 0x2,0x5b,0x37, 0x2,0x5b,0x43,
+  0x3,0x53,0x3d, 0x1,0x72,0x67, 0x3,0x53,0x3e, 0x2,0x5b,0x2f,
+  0x3,0x53,0x38, 0x2,0x5b,0x2d, 0x2,0x5b,0x4e, 0x3,0x53,0x32,
+  0x2,0x5b,0x4c, 0x2,0x5b,0x4b, 0x2,0x5b,0x3b, 0x2,0x5b,0x3a,
+  0x2,0x5b,0x30, 0x1,0x72,0x69, 0x4,0x54,0x43, 0x2,0x5b,0x36,
+  0x2,0x5b,0x3f, 0x2,0x5b,0x4a, 0x1,0x72,0x6c, 0x2,0x5b,0x51,
+  0x3,0x53,0x36, 0x1,0x75,0x73, 0x1,0x72,0x6e, 0x1,0x72,0x68,
+  0x2,0x5b,0x34, 0x3,0x53,0x37, 0x2,0x5b,0x3d, 0x2,0x5b,0x2c,
+  0x2,0x5b,0x2e, 0x1,0x72,0x5f, 0x1,0x72,0x6b, 0x1,0x72,0x64,
+  0x2,0x5b,0x35, 0x2,0x5b,0x44, 0x2,0x55,0x4b, 0x1,0x72,0x6a,
+  0x2,0x5b,0x2b, 0x1,0x75,0x6e, 0x2,0x5b,0x46, 0x2,0x5b,0x49,
+  0x1,0x72,0x66, 0x3,0x53,0x3b, 0x2,0x5b,0x39, 0x1,0x72,0x6d,
+  0x1,0x72,0x63, 0x3,0x53,0x3c, 0x3,0x53,0x39, 0x3,0x53,0x3a,
+  0x1,0x72,0x62, 0x2,0x5b,0x42, 0x2,0x5b,0x48, 0x1,0x72,0x60,
+  0x4,0x54,0x45, 0x2,0x5b,0x32, 0x2,0x5b,0x47, 0xf,0x58,0x59,
+  0xf,0x58,0x48, 0x2,0x5b,0x33, 0x7,0x34,0x63, 0x3,0x66,0x5d,
+  0xf,0x58,0x55, 0x3,0x66,0x5e, 0x4,0x54,0x49, 0x3,0x53,0x31,
+  0x2,0x5b,0x38, 0x2,0x5f,0x7e, 0x3,0x56,0x65, 0x2,0x60,0x25,
+  0x1,0x75,0x70, 0x1,0x75,0x72, 0x2,0x60,0x2b, 0x1,0x75,0x6c,
+  0x2,0x60,0x39, 0x2,0x60,0x31, 0x2,0x60,0x26, 0x2,0x60,0x27,
+  0x2,0x60,0x30, 0x3,0x56,0x66, 0x1,0x75,0x79, 0x2,0x60,0x2f,
+  0x2,0x5f,0x7d, 0x2,0x60,0x2e, 0x2,0x60,0x22, 0x2,0x60,0x3a,
+  0x1,0x75,0x78, 0x1,0x75,0x76, 0x2,0x60,0x23, 0x3,0x56,0x5d,
+  0x2,0x60,0x36, 0x3,0x56,0x67, 0x2,0x60,0x28, 0x2,0x60,0x35,
+  0x3,0x56,0x64, 0x2,0x60,0x37, 0x2,0x5f,0x7c, 0x1,0x75,0x71,
+  0x3,0x56,0x5b, 0x2,0x60,0x38, 0x3,0x56,0x68, 0x3,0x56,0x5e,
+  0x2,0x60,0x2c, 0x3,0x56,0x6b, 0x1,0x75,0x75, 0x2,0x60,0x29,
+  0x3,0x56,0x61, 0x4,0x59,0x49, 0x1,0x75,0x77, 0x2,0x60,0x32,
+  0x3,0x56,0x62, 0x3,0x56,0x63, 0x3,0x56,0x5f, 0x1,0x75,0x6f,
+  0x2,0x60,0x24, 0x2,0x60,0x33, 0x3,0x56,0x5c, 0x2,0x60,0x2d,
+  0x2,0x5b,0x31, 0x2,0x60,0x34, 0x2,0x60,0x21, 0x3,0x56,0x60,
+  0x1,0x75,0x74, 0x3,0x56,0x6a, 0x2,0x64,0x2f, 0x4,0x59,0x47,
+  0x1,0x75,0x6d, 0x2,0x5f,0x7a, 0x4,0x59,0x46, 0xf,0x5d,0x41,
+  0x3,0x66,0x5f, 0xf,0x5d,0x39, 0x2,0x64,0x2c, 0x2,0x64,0x25,
+  0x1,0x77,0x54, 0x3,0x59,0x43, 0x2,0x63,0x7e, 0x2,0x64,0x30,
+  0x2,0x64,0x27, 0x2,0x60,0x2a, 0x3,0x59,0x40, 0x2,0x64,0x32,
+  0x2,0x64,0x21, 0x3,0x59,0x42, 0x1,0x77,0x53, 0x2,0x64,0x2b,
+  0x1,0x77,0x55, 0x1,0x77,0x5d, 0x1,0x77,0x5b, 0x2,0x64,0x2d,
+  0x1,0x77,0x5c, 0x2,0x64,0x23, 0x3,0x59,0x49, 0x2,0x64,0x24,
+  0x2,0x64,0x29, 0x2,0x64,0x2e, 0x3,0x59,0x3e, 0x2,0x5f,0x79,
+  0x1,0x77,0x56, 0x2,0x64,0x37, 0x2,0x64,0x34, 0x2,0x67,0x61,
+  0x2,0x64,0x2a, 0x2,0x64,0x26, 0x2,0x64,0x35, 0x2,0x67,0x56,
+  0x2,0x64,0x28, 0x4,0x5e,0x31, 0x1,0x77,0x59, 0x3,0x59,0x44,
+  0x1,0x77,0x58, 0x2,0x5f,0x7b, 0x1,0x77,0x5a, 0x2,0x64,0x31,
+  0x2,0x64,0x33, 0x1,0x77,0x57, 0x2,0x64,0x36, 0x2,0x63,0x7d,
+  0x4,0x5e,0x29, 0x2,0x64,0x22, 0x3,0x59,0x46, 0xf,0x61,0x33,
+  0x3,0x59,0x45, 0x3,0x66,0x61, 0x3,0x66,0x62, 0x3,0x66,0x60,
+  0xf,0x61,0x43, 0x2,0x67,0x5f, 0x3,0x5b,0x50, 0x2,0x67,0x4f,
+  0x1,0x79,0x38, 0x2,0x67,0x5d, 0x3,0x5b,0x44, 0x3,0x5b,0x45,
+  0x2,0x67,0x4d, 0x1,0x79,0x39, 0x4,0x61,0x67, 0x2,0x67,0x58,
+  0x3,0x5b,0x43, 0x2,0x67,0x54, 0x1,0x79,0x3e, 0x2,0x67,0x5e,
+  0x2,0x67,0x4e, 0x2,0x67,0x51, 0x1,0x79,0x36, 0x2,0x67,0x60,
+  0x3,0x5b,0x48, 0x2,0x67,0x59, 0x2,0x67,0x5c, 0x1,0x79,0x3c,
+  0x1,0x79,0x41, 0x1,0x79,0x3f, 0x2,0x67,0x55, 0x2,0x67,0x50,
+  0x3,0x5b,0x4d, 0x1,0x79,0x3a, 0x1,0x79,0x3b, 0x2,0x67,0x4c,
+  0x1,0x79,0x37, 0x3,0x5b,0x4f, 0x1,0x79,0x35, 0x1,0x79,0x3d,
+  0x2,0x67,0x5b, 0x1,0x79,0x40, 0x3,0x5b,0x4a, 0x2,0x67,0x57,
+  0x2,0x67,0x62, 0x1,0x79,0x42, 0x3,0x5b,0x41, 0x3,0x5b,0x42,
+  0x3,0x5b,0x4e, 0x2,0x67,0x53, 0x3,0x5b,0x47, 0x2,0x67,0x5a,
+  0x3,0x66,0x65, 0x3,0x66,0x63, 0x3,0x66,0x64, 0x3,0x5d,0x41,
+  0x3,0x5e,0x6a, 0x2,0x6a,0x41, 0x2,0x6a,0x50, 0x2,0x6a,0x43,
+  0x2,0x6a,0x4a, 0x2,0x67,0x52, 0x2,0x6a,0x48, 0x2,0x6a,0x37,
+  0x2,0x6a,0x4e, 0x1,0x7a,0x4e, 0x2,0x6a,0x3b, 0x2,0x6a,0x4d,
+  0x2,0x6a,0x42, 0x4,0x64,0x67, 0x3,0x5d,0x43, 0x1,0x7a,0x4d,
+  0x3,0x5d,0x3c, 0x3,0x5d,0x3f, 0x2,0x6a,0x52, 0x2,0x6a,0x44,
+  0x3,0x5d,0x3e, 0x2,0x6a,0x49, 0x2,0x6a,0x4c, 0x2,0x6a,0x35,
+  0x2,0x6a,0x4f, 0x2,0x6a,0x40, 0x2,0x6a,0x45, 0x2,0x6a,0x39,
+  0x2,0x6a,0x3d, 0x2,0x6a,0x51, 0x2,0x6a,0x47, 0x2,0x6a,0x36,
+  0x2,0x6a,0x3a, 0x2,0x6a,0x3c, 0x2,0x6a,0x46, 0x3,0x5d,0x3d,
+  0x1,0x7a,0x4c, 0x2,0x6a,0x3f, 0x3,0x5d,0x44, 0x3,0x5d,0x45,
+  0x3,0x5d,0x47, 0x4,0x64,0x6b, 0x3,0x5d,0x42, 0x3,0x5d,0x3a,
+  0x2,0x6a,0x38, 0x3,0x66,0x66, 0x3,0x66,0x67, 0x3,0x66,0x68,
+  0xf,0x66,0x57, 0x3,0x5d,0x46, 0x2,0x6a,0x3e, 0x2,0x6c,0x50,
+  0x2,0x6c,0x54, 0x1,0x7b,0x3b, 0x2,0x6c,0x56, 0x3,0x5e,0x6d,
+  0x1,0x7b,0x35, 0x4,0x64,0x6f, 0x2,0x6c,0x52, 0x2,0x6c,0x58,
+  0x1,0x7b,0x3a, 0x1,0x7b,0x36, 0x4,0x67,0x5c, 0x1,0x7b,0x37,
+  0x2,0x6c,0x4f, 0x2,0x6c,0x55, 0x1,0x7b,0x39, 0x2,0x6c,0x53,
+  0x1,0x7b,0x38, 0x2,0x6c,0x4e, 0x2,0x6a,0x4b, 0x2,0x6c,0x51,
+  0x4,0x67,0x62, 0x2,0x6c,0x4d, 0x2,0x6c,0x57, 0x3,0x5f,0x69,
+  0x3,0x5f,0x6e, 0x1,0x7b,0x7b, 0x2,0x6e,0x3c, 0x2,0x6e,0x3f,
+  0x2,0x6e,0x3b, 0x2,0x6e,0x3d, 0x2,0x6e,0x3e, 0x2,0x6e,0x38,
+  0x2,0x6e,0x39, 0x2,0x6e,0x36, 0x3,0x5f,0x6a, 0x3,0x5f,0x6c,
+  0x2,0x6e,0x3a, 0x2,0x6e,0x37, 0x1,0x7b,0x7c, 0x1,0x7b,0x7d,
+  0x3,0x5f,0x6b, 0x2,0x6f,0x59, 0x3,0x60,0x52, 0x2,0x6f,0x5b,
+  0x4,0x6b,0x29, 0x5,0x76,0x5d, 0x3,0x60,0x55, 0x3,0x60,0x54,
+  0x3,0x60,0x56, 0x2,0x6f,0x5a, 0x2,0x6f,0x5c, 0x3,0x60,0x4f,
+  0x1,0x7c,0x4c, 0x3,0x60,0x53, 0x2,0x6f,0x58, 0x1,0x7c,0x4b,
+  0x1,0x7c,0x4d, 0x3,0x60,0x57, 0x3,0x66,0x6a, 0x3,0x66,0x69,
+  0x2,0x70,0x59, 0x2,0x70,0x5a, 0x1,0x7c,0x6f, 0x2,0x70,0x58,
+  0x3,0x61,0x22, 0x2,0x71,0x42, 0x2,0x71,0x41, 0x2,0x71,0x43,
+  0x1,0x7d,0x2c, 0x2,0x71,0x44, 0x1,0x7d,0x2b, 0x2,0x71,0x45,
+  0x2,0x71,0x61, 0x2,0x71,0x64, 0x2,0x71,0x63, 0x1,0x7d,0x35,
+  0x2,0x71,0x62, 0x4,0x6d,0x62, 0x3,0x61,0x6f, 0x3,0x62,0x23,
+  0x1,0x7d,0x3f, 0x1,0x7d,0x3d, 0x1,0x7d,0x3e, 0x1,0x7d,0x44,
+  0x2,0x72,0x30, 0x2,0x72,0x31, 0x2,0x72,0x2f, 0x2,0x72,0x37,
+  0x3,0x62,0x36, 0x1,0x4f,0x5b, 0x4,0x25,0x2b, 0x4,0x30,0x3a,
+  0x2,0x3a,0x28, 0x2,0x41,0x3f, 0x2,0x55,0x4e, 0x2,0x67,0x63,
+  0x5,0x71,0x56, 0x1,0x4f,0x5c, 0x3,0x2f,0x40, 0x1,0x53,0x6d,
+  0x1,0x58,0x60, 0x4,0x30,0x3b, 0x3,0x34,0x32, 0x2,0x3a,0x29,
+  0x3,0x39,0x5c, 0x2,0x3a,0x2a, 0x1,0x5d,0x70, 0x1,0x62,0x64,
+  0x2,0x41,0x41, 0x2,0x41,0x40, 0x1,0x62,0x68, 0x1,0x62,0x63,
+  0x2,0x41,0x42, 0x1,0x62,0x65, 0x1,0x62,0x67, 0x1,0x62,0x66,
+  0x1,0x62,0x62, 0x3,0x3f,0x6c, 0xf,0x3f,0x7e, 0x3,0x66,0x6b,
+  0x1,0x67,0x50, 0x3,0x45,0x3c, 0x3,0x45,0x3a, 0x2,0x48,0x56,
+  0x2,0x48,0x54, 0x4,0x41,0x53, 0x2,0x48,0x55, 0x2,0x48,0x53,
+  0xf,0x45,0x7b, 0x1,0x6b,0x5b, 0x3,0x4a,0x3d, 0x1,0x6b,0x5e,
+  0x1,0x6b,0x60, 0x1,0x6b,0x5f, 0x4,0x48,0x22, 0x3,0x4a,0x3e,
+  0x1,0x6b,0x5c, 0x1,0x6b,0x5d, 0x2,0x55,0x50, 0x2,0x55,0x4f,
+  0x1,0x6f,0x64, 0x2,0x55,0x51, 0x3,0x4f,0x53, 0x2,0x55,0x52,
+  0x1,0x6f,0x65, 0x3,0x4f,0x55, 0x3,0x4f,0x56, 0x4,0x4e,0x4a,
+  0x2,0x5b,0x59, 0x2,0x5b,0x57, 0x2,0x60,0x40, 0x3,0x53,0x42,
+  0x2,0x5b,0x55, 0x2,0x5b,0x56, 0x1,0x72,0x6f, 0x2,0x5b,0x52,
+  0x2,0x5b,0x5a, 0x2,0x5b,0x54, 0x2,0x5b,0x58, 0x2,0x60,0x3c,
+  0x3,0x53,0x44, 0x3,0x53,0x40, 0x2,0x60,0x3e, 0x3,0x56,0x6d,
+  0x2,0x60,0x3f, 0x1,0x75,0x7e, 0x2,0x60,0x3b, 0x1,0x75,0x7d,
+  0x2,0x60,0x3d, 0x1,0x75,0x7a, 0x1,0x75,0x7b, 0x1,0x75,0x7c,
+  0x2,0x5b,0x53, 0x3,0x66,0x6c, 0x1,0x77,0x60, 0x2,0x64,0x3a,
+  0x2,0x64,0x38, 0x2,0x64,0x39, 0x1,0x77,0x5e, 0x1,0x77,0x61,
+  0x1,0x77,0x5f, 0x3,0x59,0x4b, 0x3,0x59,0x4a, 0x7,0x4b,0x40,
+  0x2,0x67,0x64, 0x2,0x67,0x65, 0x1,0x79,0x43, 0x3,0x5b,0x53,
+  0x2,0x6a,0x53, 0x2,0x6a,0x55, 0x2,0x6a,0x54, 0x1,0x7a,0x4f,
+  0x1,0x7b,0x3c, 0x2,0x6c,0x5b, 0x2,0x6c,0x5a, 0x2,0x6c,0x59,
+  0xf,0x68,0x72, 0x3,0x66,0x6d, 0xf,0x25,0x39, 0x1,0x4f,0x5d,
+  0x3,0x21,0x43, 0x2,0x21,0x69, 0x2,0x22,0x78, 0x1,0x48,0x6a,
+  0x2,0x22,0x76, 0x2,0x22,0x79, 0x2,0x22,0x77, 0x4,0x25,0x2e,
+  0x3,0x27,0x3b, 0x3,0x27,0x3a, 0x2,0x25,0x2e, 0x3,0x27,0x3f,
+  0x1,0x4b,0x62, 0x3,0x27,0x3c, 0x1,0x4b,0x63, 0x2,0x25,0x30,
+  0x1,0x4b,0x60, 0x2,0x25,0x2f, 0x2,0x25,0x2d, 0x1,0x4b,0x61,
+  0x1,0x4b,0x5f, 0x3,0x27,0x3d, 0x3,0x27,0x3e, 0x3,0x2a,0x79,
+  0x4,0x28,0x33, 0x2,0x28,0x78, 0x2,0x28,0x7b, 0x1,0x4f,0x60,
+  0x2,0x28,0x7a, 0x2,0x28,0x79, 0x3,0x2a,0x7c, 0x1,0x4f,0x5f,
+  0x1,0x4f,0x5e, 0x3,0x2a,0x7b, 0x1,0x4f,0x62, 0x2,0x28,0x7c,
+  0x1,0x4f,0x61, 0x2,0x2d,0x67, 0x1,0x53,0x6f, 0x1,0x53,0x70,
+  0x1,0x53,0x71, 0x2,0x2d,0x68, 0x2,0x2d,0x64, 0x1,0x53,0x6e,
+  0x2,0x2d,0x65, 0x4,0x2b,0x5d, 0x2,0x2d,0x66, 0x2,0x2d,0x63,
+  0x4,0x2b,0x5b, 0x3,0x34,0x36, 0x4,0x30,0x3f, 0x1,0x58,0x67,
+  0x3,0x34,0x34, 0x3,0x39,0x5e, 0x1,0x58,0x64, 0x2,0x33,0x48,
+  0x1,0x58,0x65, 0x1,0x58,0x68, 0x2,0x33,0x49, 0x3,0x34,0x33,
+  0x1,0x58,0x63, 0x1,0x58,0x61, 0x1,0x58,0x62, 0x1,0x58,0x66,
+  0x1,0x5d,0x71, 0x2,0x3a,0x2d, 0x1,0x5d,0x79, 0x2,0x3a,0x2c,
+  0x3,0x39,0x61, 0x2,0x3a,0x2f, 0x1,0x5d,0x75, 0x2,0x3a,0x2e,
+  0x1,0x62,0x70, 0x1,0x5d,0x73, 0x1,0x5d,0x76, 0x1,0x5d,0x72,
+  0x1,0x5d,0x77, 0x1,0x5d,0x78, 0x1,0x5d,0x74, 0x3,0x39,0x65,
+  0x3,0x3f,0x71, 0x2,0x3a,0x2b, 0x1,0x62,0x6c, 0x2,0x41,0x44,
+  0x3,0x3f,0x72, 0x2,0x41,0x48, 0x3,0x3f,0x73, 0x3,0x3f,0x75,
+  0x2,0x41,0x47, 0x1,0x62,0x71, 0x1,0x62,0x6d, 0x1,0x62,0x6e,
+  0x2,0x41,0x43, 0x2,0x41,0x45, 0x2,0x41,0x46, 0x1,0x62,0x69,
+  0x1,0x62,0x6b, 0x3,0x3f,0x70, 0x1,0x62,0x6f, 0x1,0x62,0x6a,
+  0x3,0x45,0x40, 0x2,0x48,0x59, 0x2,0x48,0x57, 0x2,0x48,0x58,
+  0x1,0x67,0x52, 0x1,0x67,0x53, 0x3,0x45,0x42, 0x2,0x48,0x5a,
+  0x1,0x67,0x51, 0x1,0x6b,0x61, 0x4,0x48,0x24, 0x1,0x6b,0x63,
+  0x1,0x6b,0x62, 0x3,0x4a,0x45, 0x2,0x4f,0x23, 0x3,0x4a,0x46,
+  0x3,0x4a,0x44, 0x2,0x4f,0x24, 0x2,0x55,0x54, 0x3,0x4f,0x5a,
+  0x2,0x55,0x53, 0x3,0x4f,0x5b, 0x4,0x54,0x52, 0x1,0x72,0x70,
+  0x1,0x72,0x71, 0x2,0x5b,0x5b, 0x1,0x72,0x72, 0x3,0x53,0x48,
+  0x2,0x60,0x43, 0x3,0x56,0x70, 0x2,0x60,0x41, 0x3,0x56,0x6f,
+  0x2,0x60,0x42, 0x1,0x76,0x21, 0x3,0x56,0x71, 0x2,0x64,0x3b,
+  0x1,0x79,0x44, 0x3,0x5d,0x49, 0x3,0x2a,0x7d, 0x3,0x53,0x49,
+  0x1,0x76,0x22, 0x1,0x4f,0x63, 0x4,0x30,0x41, 0x1,0x58,0x69,
+  0x2,0x33,0x4a, 0x3,0x34,0x39, 0xf,0x32,0x6f, 0x2,0x3a,0x30,
+  0x1,0x5d,0x7a, 0x1,0x62,0x72, 0x2,0x41,0x49, 0x2,0x41,0x4b,
+  0x1,0x62,0x74, 0x1,0x62,0x73, 0x1,0x62,0x75, 0x1,0x62,0x76,
+  0x2,0x41,0x4a, 0x1,0x67,0x56, 0x1,0x67,0x57, 0x1,0x67,0x55,
+  0x1,0x6b,0x64, 0x1,0x67,0x54, 0x2,0x48,0x5b, 0x4,0x41,0x57,
+  0x3,0x4a,0x47, 0x3,0x4a,0x49, 0x1,0x6b,0x65, 0x2,0x55,0x55,
+  0x2,0x5b,0x5c, 0x1,0x72,0x73, 0x1,0x76,0x23, 0x2,0x64,0x3c,
+  0x2,0x64,0x40, 0x1,0x77,0x64, 0x2,0x64,0x3d, 0x1,0x77,0x65,
+  0x1,0x77,0x63, 0x2,0x64,0x41, 0x1,0x77,0x66, 0x2,0x64,0x3f,
+  0x2,0x67,0x66, 0x1,0x77,0x62, 0x1,0x79,0x45, 0x3,0x5e,0x70,
+  0x2,0x70,0x5b, 0x3,0x61,0x25, 0x3,0x62,0x2f, 0x1,0x4f,0x64,
+  0x1,0x5d,0x7c, 0x1,0x5d,0x7b, 0xf,0x39,0x2a, 0x3,0x3f,0x7e,
+  0x3,0x3f,0x7c, 0x3,0x3f,0x7b, 0x1,0x62,0x77, 0x2,0x41,0x4d,
+  0x2,0x41,0x4c, 0x1,0x62,0x78, 0x3,0x45,0x46, 0x2,0x48,0x5f,
+  0x1,0x67,0x5b, 0x1,0x67,0x58, 0x2,0x48,0x5e, 0x1,0x67,0x5a,
+  0x2,0x48,0x5c, 0x1,0x67,0x59, 0x3,0x45,0x47, 0x2,0x48,0x5d,
+  0x2,0x4f,0x25, 0x1,0x6b,0x66, 0x2,0x55,0x58, 0x5,0x52,0x3b,
+  0x1,0x6f,0x66, 0x2,0x55,0x56, 0x1,0x6f,0x67, 0x1,0x6f,0x68,
+  0x2,0x55,0x57, 0x1,0x6f,0x69, 0x3,0x4f,0x60, 0x2,0x5b,0x5d,
+  0x3,0x53,0x50, 0x1,0x72,0x77, 0x1,0x72,0x74, 0x1,0x72,0x79,
+  0x2,0x5b,0x5f, 0x1,0x72,0x75, 0x2,0x5b,0x5e, 0x1,0x72,0x78,
+  0x3,0x53,0x4d, 0x3,0x53,0x4c, 0x1,0x72,0x76, 0x3,0x53,0x51,
+  0x2,0x60,0x46, 0x2,0x60,0x48, 0x3,0x56,0x74, 0x3,0x56,0x75,
+  0x1,0x76,0x24, 0x2,0x60,0x47, 0x1,0x76,0x25, 0x2,0x60,0x45,
+  0x2,0x60,0x44, 0x4,0x5e,0x38, 0x2,0x64,0x43, 0x2,0x64,0x42,
+  0x1,0x77,0x67, 0x2,0x64,0x44, 0x2,0x67,0x6b, 0x1,0x79,0x47,
+  0x2,0x67,0x6a, 0x2,0x67,0x67, 0x1,0x79,0x46, 0x2,0x67,0x68,
+  0x2,0x67,0x69, 0x2,0x6a,0x56, 0x2,0x6a,0x57, 0x1,0x7a,0x50,
+  0x3,0x5d,0x4f, 0x1,0x7b,0x3f, 0x3,0x5d,0x4c, 0x3,0x5d,0x4e,
+  0x2,0x6c,0x5c, 0x3,0x5e,0x72, 0x3,0x5e,0x71, 0x1,0x7b,0x3d,
+  0x1,0x7b,0x3e, 0x2,0x6c,0x5d, 0x3,0x66,0x6e, 0x3,0x5f,0x71,
+  0x1,0x7b,0x7e, 0x1,0x7c,0x21, 0x2,0x6e,0x40, 0x3,0x5f,0x72,
+  0x3,0x60,0x59, 0x1,0x7c,0x70, 0x2,0x70,0x5d, 0x1,0x7c,0x72,
+  0x3,0x61,0x26, 0x2,0x70,0x5c, 0x2,0x70,0x5e, 0x1,0x7c,0x71,
+  0x2,0x71,0x46, 0x4,0x6d,0x64, 0x2,0x71,0x7b, 0x3,0x66,0x6f,
+  0x3,0x62,0x45, 0x3,0x2a,0x7e, 0x1,0x4f,0x65, 0x3,0x45,0x49,
+  0x1,0x67,0x5c, 0x4,0x48,0x35, 0x2,0x4f,0x26, 0x3,0x4a,0x4c,
+  0x2,0x55,0x59, 0x1,0x72,0x7a, 0x1,0x72,0x7b, 0x3,0x59,0x4f,
+  0x1,0x4f,0x66, 0x3,0x40,0x21, 0x1,0x6f,0x6a, 0x1,0x79,0x48,
+  0x1,0x53,0x72, 0x3,0x2b,0x21, 0x3,0x4a,0x4e, 0x1,0x72,0x7c,
+  0x3,0x5e,0x73, 0x1,0x7c,0x4e, 0x1,0x53,0x73, 0x2,0x3a,0x31,
+  0x4,0x3b,0x77, 0x2,0x41,0x4e, 0x3,0x40,0x24, 0x2,0x41,0x50,
+  0x3,0x40,0x22, 0x2,0x41,0x4f, 0x2,0x48,0x63, 0x2,0x48,0x60,
+  0x1,0x67,0x5d, 0x6,0x5a,0x24, 0x1,0x67,0x5e, 0x2,0x48,0x61,
+  0x2,0x48,0x62, 0x3,0x45,0x4b, 0x2,0x4f,0x28, 0x2,0x4f,0x2d,
+  0x1,0x6b,0x67, 0x2,0x4f,0x27, 0x2,0x4f,0x29, 0x2,0x4f,0x30,
+  0x2,0x4f,0x2b, 0x2,0x4f,0x2f, 0x2,0x4f,0x2c, 0x2,0x4f,0x2a,
+  0x2,0x4f,0x2e, 0x1,0x6b,0x68, 0x3,0x4f,0x62, 0x2,0x55,0x5c,
+  0x3,0x4f,0x63, 0x2,0x55,0x5a, 0x1,0x6f,0x6c, 0x3,0x4f,0x64,
+  0x1,0x6f,0x6b, 0x2,0x55,0x5b, 0x1,0x6f,0x6d, 0x3,0x53,0x53,
+  0x2,0x5b,0x62, 0x4,0x54,0x5f, 0x4,0x54,0x67, 0x2,0x5b,0x61,
+  0x1,0x72,0x7d, 0x2,0x5b,0x60, 0x2,0x60,0x49, 0x3,0x56,0x7a,
+  0x2,0x60,0x4b, 0x2,0x60,0x4d, 0x2,0x60,0x4c, 0x3,0x56,0x7b,
+  0x1,0x76,0x26, 0x2,0x60,0x4a, 0x2,0x64,0x4b, 0x1,0x77,0x68,
+  0x2,0x64,0x49, 0x2,0x64,0x4c, 0x1,0x77,0x69, 0x4,0x5e,0x43,
+  0x2,0x64,0x47, 0x3,0x59,0x50, 0x2,0x64,0x4a, 0x2,0x64,0x48,
+  0x2,0x64,0x45, 0x1,0x77,0x6a, 0x2,0x64,0x46, 0x4,0x61,0x7c,
+  0x3,0x5b,0x5f, 0x3,0x5b,0x5d, 0x2,0x67,0x6c, 0x3,0x5b,0x5e,
+  0x3,0x5b,0x60, 0x2,0x67,0x6e, 0x2,0x67,0x6d, 0x3,0x5d,0x50,
+  0x2,0x6a,0x58, 0x3,0x5d,0x51, 0x2,0x6a,0x59, 0x4,0x67,0x71,
+  0x3,0x5e,0x75, 0x3,0x5e,0x74, 0x2,0x6c,0x5e, 0x3,0x5f,0x73,
+  0x1,0x7c,0x23, 0x4,0x69,0x5e, 0x1,0x7c,0x22, 0x2,0x6f,0x5d,
+  0x2,0x6f,0x5e, 0x1,0x7c,0x73, 0x2,0x70,0x5f, 0x3,0x61,0x28,
+  0x1,0x7d,0x36, 0x3,0x62,0x3b, 0x1,0x53,0x74, 0x1,0x62,0x79,
+  0x2,0x4f,0x32, 0x2,0x4f,0x31, 0x2,0x55,0x5e, 0x2,0x55,0x5d,
+  0x4,0x4e,0x57, 0x3,0x53,0x55, 0x1,0x76,0x27, 0x2,0x60,0x4f,
+  0x2,0x60,0x4e, 0x2,0x64,0x4f, 0x2,0x64,0x4d, 0x2,0x64,0x50,
+  0x2,0x64,0x4e, 0x3,0x59,0x51, 0x4,0x65,0x29, 0x1,0x79,0x49,
+  0x2,0x67,0x6f, 0x2,0x67,0x70, 0x2,0x67,0x71, 0x4,0x65,0x27,
+  0x2,0x6c,0x5f, 0x3,0x5e,0x76, 0x2,0x6e,0x41, 0x3,0x61,0x29,
+  0x2,0x70,0x60, 0x1,0x53,0x75, 0x3,0x45,0x4f, 0x3,0x4f,0x65,
+  0x2,0x5b,0x63, 0x2,0x60,0x50, 0x3,0x5b,0x61, 0x1,0x53,0x76,
+  0x4,0x41,0x63, 0x3,0x45,0x50, 0x1,0x6b,0x69, 0x4,0x48,0x46,
+  0x2,0x5b,0x64, 0x1,0x77,0x6b, 0x2,0x64,0x51, 0x1,0x79,0x4a,
+  0x3,0x5d,0x53, 0x2,0x6a,0x5a, 0x2,0x6a,0x5b, 0x1,0x7b,0x40,
+  0x2,0x6f,0x5f, 0x1,0x53,0x77, 0x1,0x5e,0x21, 0x1,0x5e,0x22,
+  0x2,0x3a,0x32, 0x1,0x62,0x7a, 0x1,0x62,0x7b, 0x2,0x41,0x51,
+  0x1,0x62,0x7c, 0x4,0x41,0x68, 0x1,0x67,0x62, 0x3,0x45,0x52,
+  0x1,0x67,0x64, 0x2,0x48,0x65, 0x2,0x48,0x66, 0x2,0x48,0x64,
+  0x1,0x67,0x5f, 0x1,0x67,0x60, 0x1,0x67,0x63, 0x1,0x67,0x61,
+  0x3,0x4a,0x54, 0x3,0x4a,0x55, 0x2,0x4f,0x33, 0x1,0x6b,0x6a,
+  0x1,0x6b,0x6b, 0x3,0x4a,0x52, 0x3,0x4a,0x56, 0x2,0x55,0x65,
+  0x1,0x6f,0x70, 0x2,0x55,0x60, 0x2,0x55,0x5f, 0x3,0x4f,0x69,
+  0x2,0x55,0x64, 0x1,0x6f,0x6e, 0x3,0x4f,0x67, 0x4,0x4e,0x5a,
+  0x1,0x73,0x26, 0x4,0x54,0x70, 0x2,0x55,0x61, 0x2,0x55,0x66,
+  0x2,0x55,0x63, 0x2,0x55,0x62, 0x3,0x4f,0x66, 0x1,0x6f,0x6f,
+  0x1,0x73,0x24, 0x3,0x53,0x5c, 0x2,0x5b,0x66, 0x1,0x72,0x7e,
+  0x3,0x53,0x59, 0x2,0x5b,0x67, 0x3,0x53,0x5a, 0x3,0x52,0x28,
+  0x2,0x5b,0x65, 0x3,0x53,0x58, 0x1,0x73,0x23, 0x1,0x73,0x21,
+  0x1,0x73,0x25, 0x3,0x53,0x5d, 0x1,0x73,0x22, 0x3,0x53,0x5b,
+  0x3,0x53,0x5f, 0x4,0x5e,0x4f, 0x3,0x59,0x5b, 0x3,0x57,0x26,
+  0x2,0x60,0x51, 0x4,0x59,0x70, 0x2,0x60,0x56, 0x2,0x60,0x52,
+  0x2,0x60,0x55, 0x1,0x76,0x28, 0x3,0x57,0x28, 0x2,0x5e,0x41,
+  0x2,0x60,0x54, 0x2,0x60,0x53, 0x3,0x59,0x59, 0x1,0x77,0x6e,
+  0x1,0x77,0x6c, 0x1,0x77,0x6f, 0x1,0x77,0x6d, 0x2,0x64,0x52,
+  0x2,0x64,0x53, 0x2,0x64,0x54, 0x1,0x77,0x70, 0x3,0x59,0x56,
+  0x3,0x59,0x58, 0x3,0x5b,0x65, 0x2,0x67,0x75, 0x1,0x79,0x4c,
+  0x2,0x67,0x73, 0x4,0x62,0x30, 0x1,0x79,0x4d, 0x2,0x67,0x72,
+  0x2,0x67,0x74, 0x1,0x79,0x4b, 0x2,0x6a,0x5f, 0x2,0x6a,0x5c,
+  0x4,0x65,0x2c, 0x2,0x6a,0x5d, 0x2,0x6a,0x5e, 0x2,0x6c,0x60,
+  0x1,0x7b,0x42, 0x3,0x5e,0x78, 0x1,0x7b,0x41, 0x3,0x5e,0x77,
+  0x2,0x6e,0x43, 0x2,0x6e,0x42, 0x1,0x7c,0x24, 0x3,0x60,0x5d,
+  0x3,0x60,0x5e, 0x3,0x60,0x5c, 0x1,0x7c,0x4f, 0x1,0x7c,0x74,
+  0x1,0x7d,0x2d, 0x2,0x71,0x47, 0x2,0x71,0x7c, 0x2,0x71,0x7d,
+  0x1,0x53,0x78, 0x2,0x41,0x52, 0x4,0x41,0x71, 0x2,0x48,0x67,
+  0x2,0x4f,0x34, 0x2,0x4f,0x35, 0x1,0x6b,0x6c, 0x4,0x48,0x57,
+  0x1,0x6b,0x6d, 0x2,0x55,0x67, 0x1,0x6f,0x71, 0x3,0x53,0x61,
+  0x1,0x76,0x29, 0x3,0x57,0x2a, 0x2,0x64,0x55, 0x3,0x59,0x5c,
+  0x1,0x77,0x71, 0x2,0x67,0x78, 0x1,0x79,0x4e, 0x2,0x67,0x77,
+  0x2,0x67,0x79, 0x2,0x67,0x76, 0x2,0x6c,0x63, 0x2,0x6a,0x60,
+  0x2,0x6a,0x61, 0x3,0x5d,0x56, 0x1,0x7a,0x51, 0x2,0x6c,0x62,
+  0x3,0x5e,0x7b, 0x3,0x5e,0x79, 0x2,0x6c,0x61, 0x3,0x5e,0x7a,
+  0x2,0x6e,0x44, 0x2,0x71,0x7e, 0x3,0x62,0x25, 0x1,0x53,0x79,
+  0x3,0x5e,0x7c, 0x3,0x62,0x26, 0x1,0x53,0x7a, 0x3,0x39,0x67,
+  0x1,0x58,0x6a, 0x2,0x33,0x4b, 0x3,0x66,0x70, 0x2,0x3a,0x33,
+  0x3,0x39,0x68, 0x1,0x62,0x7d, 0x1,0x63,0x22, 0x1,0x62,0x7e,
+  0x2,0x41,0x53, 0x3,0x45,0x5b, 0x1,0x63,0x24, 0x1,0x63,0x21,
+  0x3,0x40,0x2b, 0x3,0x45,0x5c, 0x1,0x63,0x23, 0x3,0x45,0x54,
+  0x1,0x67,0x66, 0x3,0x45,0x59, 0x2,0x48,0x68, 0x3,0x45,0x57,
+  0x3,0x4a,0x5d, 0x2,0x48,0x69, 0x2,0x55,0x69, 0x4,0x41,0x7b,
+  0x1,0x67,0x65, 0x1,0x67,0x67, 0x1,0x67,0x68, 0x3,0x45,0x58,
+  0x2,0x4f,0x37, 0x3,0x4a,0x5e, 0x2,0x4f,0x36, 0x1,0x6b,0x6e,
+  0x5,0x4b,0x4c, 0x1,0x6b,0x6f, 0x3,0x4a,0x5b, 0x2,0x4f,0x38,
+  0x2,0x55,0x68, 0x1,0x6b,0x71, 0x1,0x6f,0x72, 0x4,0x4e,0x63,
+  0x1,0x6b,0x70, 0x3,0x66,0x7a, 0x1,0x73,0x27, 0x2,0x55,0x6a,
+  0x1,0x6f,0x74, 0x1,0x6f,0x73, 0x2,0x55,0x6b, 0x2,0x55,0x6e,
+  0x2,0x55,0x6c, 0x2,0x55,0x6d, 0x1,0x6f,0x75, 0x3,0x4f,0x6b,
+  0x1,0x73,0x2c, 0x1,0x73,0x2a, 0x3,0x53,0x65, 0x3,0x53,0x66,
+  0x1,0x73,0x29, 0x2,0x5b,0x69, 0x3,0x53,0x64, 0x1,0x73,0x2b,
+  0x3,0x53,0x62, 0x3,0x53,0x63, 0x2,0x5b,0x68, 0x2,0x60,0x57,
+  0x4,0x54,0x7e, 0x2,0x5b,0x6a, 0x1,0x73,0x28, 0x2,0x5b,0x6b,
+  0x2,0x60,0x5a, 0x2,0x60,0x58, 0x2,0x60,0x59, 0x2,0x60,0x5e,
+  0x1,0x77,0x75, 0x2,0x60,0x5d, 0x2,0x60,0x60, 0x2,0x60,0x5f,
+  0x2,0x60,0x5c, 0x2,0x60,0x5b, 0x4,0x55,0x21, 0x1,0x76,0x2a,
+  0x3,0x59,0x62, 0x4,0x5a,0x29, 0x3,0x59,0x61, 0x3,0x59,0x66,
+  0x2,0x64,0x58, 0x3,0x59,0x65, 0x2,0x64,0x57, 0x1,0x77,0x74,
+  0x1,0x77,0x72, 0x1,0x77,0x73, 0x3,0x59,0x63, 0x2,0x64,0x56,
+  0x3,0x66,0x71, 0x2,0x67,0x7c, 0x3,0x5b,0x69, 0x1,0x79,0x4f,
+  0x4,0x62,0x38, 0x2,0x67,0x7b, 0x2,0x67,0x7a, 0x1,0x79,0x50,
+  0x4,0x65,0x3a, 0x2,0x6a,0x66, 0x2,0x6a,0x65, 0x3,0x5d,0x58,
+  0x2,0x6a,0x63, 0x3,0x5e,0x7e, 0x2,0x6a,0x62, 0x1,0x7a,0x53,
+  0x1,0x7a,0x52, 0x2,0x6a,0x67, 0x2,0x6e,0x45, 0x1,0x7c,0x25,
+  0x2,0x6c,0x65, 0x1,0x7b,0x43, 0x2,0x6c,0x64, 0x2,0x6a,0x64,
+  0x3,0x5f,0x78, 0x2,0x6e,0x46, 0x1,0x7c,0x50, 0x3,0x61,0x2a,
+  0x1,0x7d,0x2e, 0x2,0x71,0x48, 0x4,0x6e,0x24, 0x2,0x72,0x21,
+  0x1,0x53,0x7b, 0x2,0x3a,0x34, 0x2,0x60,0x61, 0x1,0x53,0x7c,
+  0x3,0x45,0x5f, 0x5,0x4b,0x4e, 0x2,0x4f,0x3a, 0x2,0x4f,0x39,
+  0x2,0x5b,0x6c, 0x5,0x5a,0x26, 0x3,0x53,0x68, 0x2,0x60,0x63,
+  0x3,0x57,0x30, 0x2,0x60,0x62, 0x3,0x59,0x67, 0x1,0x77,0x76,
+  0x2,0x67,0x7d, 0x2,0x67,0x7e, 0x1,0x7a,0x54, 0x3,0x5f,0x21,
+  0x3,0x60,0x60, 0x2,0x72,0x22, 0x1,0x58,0x6b, 0x1,0x63,0x26,
+  0x1,0x63,0x25, 0x2,0x48,0x6a, 0x2,0x48,0x6c, 0x1,0x67,0x6a,
+  0x2,0x48,0x6b, 0x1,0x67,0x69, 0x1,0x67,0x6b, 0x2,0x48,0x6d,
+  0x3,0x4a,0x63, 0x3,0x4a,0x62, 0x3,0x4a,0x66, 0x2,0x4f,0x3c,
+  0x2,0x4f,0x3e, 0x2,0x4f,0x3d, 0x3,0x4a,0x61, 0x2,0x4f,0x40,
+  0x3,0x4a,0x60, 0x3,0x4a,0x6c, 0x3,0x4a,0x64, 0x1,0x6b,0x72,
+  0x2,0x4f,0x3f, 0x2,0x4f,0x3b, 0x3,0x4a,0x6a, 0x4,0x48,0x60,
+  0x2,0x4f,0x41, 0x3,0x4f,0x73, 0x2,0x55,0x75, 0x3,0x4f,0x6d,
+  0x2,0x55,0x78, 0x2,0x55,0x7a, 0x2,0x55,0x70, 0x2,0x55,0x74,
+  0x2,0x55,0x71, 0x1,0x6f,0x77, 0x1,0x6f,0x7a, 0x1,0x6f,0x7c,
+  0x2,0x55,0x72, 0x2,0x55,0x73, 0x1,0x6f,0x7b, 0x2,0x55,0x76,
+  0x2,0x55,0x79, 0x2,0x55,0x77, 0x1,0x6f,0x7d, 0x3,0x4f,0x6e,
+  0x1,0x6f,0x79, 0x2,0x55,0x6f, 0x1,0x6f,0x76, 0x3,0x4f,0x72,
+  0x1,0x6f,0x78, 0x3,0x4f,0x74, 0x3,0x53,0x70, 0x1,0x73,0x2e,
+  0x2,0x5b,0x72, 0x2,0x5b,0x70, 0x2,0x5b,0x6f, 0x3,0x53,0x71,
+  0x2,0x5b,0x75, 0x3,0x53,0x6b, 0x2,0x5b,0x74, 0x2,0x5b,0x73,
+  0x3,0x53,0x6c, 0x2,0x5b,0x6e, 0x1,0x73,0x2d, 0x2,0x5b,0x6d,
+  0x3,0x53,0x6a, 0x2,0x5b,0x71, 0x1,0x73,0x2f, 0x3,0x57,0x34,
+  0x2,0x60,0x66, 0x3,0x57,0x37, 0x2,0x60,0x6a, 0x2,0x60,0x67,
+  0x2,0x60,0x69, 0x2,0x60,0x68, 0x2,0x60,0x65, 0x2,0x60,0x6b,
+  0x2,0x60,0x6e, 0x2,0x60,0x6c, 0x2,0x60,0x6d, 0x1,0x76,0x2c,
+  0x3,0x57,0x33, 0x1,0x76,0x2b, 0x2,0x60,0x64, 0x2,0x60,0x6f,
+  0x2,0x64,0x5d, 0x2,0x64,0x60, 0x2,0x64,0x62, 0x2,0x64,0x61,
+  0x3,0x59,0x6a, 0x2,0x64,0x5b, 0x2,0x64,0x5f, 0x2,0x64,0x5a,
+  0x3,0x59,0x6b, 0x2,0x64,0x5c, 0x1,0x77,0x77, 0x2,0x64,0x59,
+  0x3,0x59,0x6d, 0x2,0x64,0x5e, 0x2,0x68,0x2d, 0x2,0x68,0x22,
+  0x1,0x79,0x51, 0x3,0x5b,0x6f, 0x3,0x5b,0x6d, 0x1,0x79,0x52,
+  0x2,0x68,0x21, 0x2,0x68,0x26, 0x2,0x68,0x2c, 0x2,0x68,0x24,
+  0x2,0x68,0x2b, 0x3,0x5b,0x6c, 0x2,0x68,0x28, 0x3,0x5b,0x6e,
+  0x2,0x68,0x27, 0x2,0x68,0x2a, 0x2,0x68,0x25, 0x2,0x68,0x23,
+  0x3,0x5b,0x6b, 0x2,0x68,0x29, 0x2,0x6a,0x6e, 0x2,0x6a,0x6c,
+  0x1,0x7a,0x55, 0x2,0x6a,0x6b, 0x2,0x6a,0x71, 0x2,0x6a,0x6f,
+  0x3,0x5d,0x5a, 0x1,0x7a,0x56, 0x2,0x6a,0x6a, 0x2,0x6a,0x68,
+  0x4,0x65,0x46, 0x2,0x6a,0x69, 0x1,0x7a,0x58, 0x2,0x6a,0x6d,
+  0x1,0x7a,0x57, 0x2,0x6a,0x70, 0x2,0x6c,0x66, 0x2,0x6c,0x6c,
+  0x3,0x5f,0x24, 0x3,0x5f,0x22, 0x2,0x6c,0x67, 0x1,0x7b,0x47,
+  0x2,0x6c,0x6d, 0x1,0x7b,0x46, 0x2,0x6c,0x6b, 0x2,0x6c,0x6a,
+  0x1,0x7b,0x45, 0x2,0x6c,0x69, 0x1,0x7b,0x44, 0x2,0x6c,0x68,
+  0x7,0x56,0x51, 0x2,0x6e,0x4c, 0x2,0x6e,0x4e, 0x2,0x6e,0x4d,
+  0x4,0x69,0x6a, 0x2,0x6e,0x4a, 0x1,0x7c,0x27, 0x2,0x6e,0x47,
+  0x2,0x6e,0x4b, 0x2,0x6e,0x50, 0x3,0x5f,0x79, 0x2,0x6e,0x4f,
+  0x2,0x6e,0x48, 0x2,0x6e,0x49, 0x1,0x7c,0x26, 0x2,0x6f,0x60,
+  0x1,0x7c,0x53, 0x3,0x60,0x62, 0x2,0x6f,0x61, 0x1,0x7c,0x51,
+  0x1,0x7c,0x52, 0x3,0x60,0x61, 0x4,0x6c,0x3d, 0x2,0x70,0x61,
+  0x1,0x7c,0x75, 0x2,0x71,0x65, 0x3,0x61,0x72, 0x1,0x7d,0x37,
+  0x3,0x61,0x73, 0x2,0x72,0x23, 0x1,0x7d,0x38, 0x2,0x72,0x24,
+  0x2,0x72,0x25, 0x2,0x72,0x33, 0x2,0x72,0x32, 0x1,0x7d,0x47,
+  0x2,0x72,0x3b, 0x1,0x58,0x6c, 0x3,0x40,0x2f, 0x4,0x42,0x21,
+  0x2,0x48,0x6f, 0x4,0x41,0x7d, 0x2,0x48,0x6e, 0x4,0x41,0x7e,
+  0x1,0x6b,0x73, 0x1,0x6b,0x74, 0x2,0x4f,0x42, 0x4,0x4e,0x74,
+  0x2,0x55,0x7b, 0x2,0x5b,0x78, 0x3,0x4f,0x77, 0x3,0x4f,0x76,
+  0x1,0x6f,0x7e, 0x1,0x73,0x30, 0x2,0x5b,0x76, 0x4,0x55,0x31,
+  0x2,0x5b,0x79, 0x1,0x73,0x31, 0x3,0x57,0x3a, 0x2,0x60,0x70,
+  0x2,0x5b,0x77, 0x2,0x64,0x63, 0x1,0x77,0x78, 0x2,0x68,0x2e,
+  0x4,0x62,0x49, 0x3,0x5d,0x61, 0x2,0x6a,0x74, 0x2,0x6a,0x72,
+  0x3,0x5d,0x60, 0x3,0x5d,0x5e, 0x2,0x6a,0x73, 0x2,0x6c,0x6e,
+  0x3,0x5f,0x25, 0x1,0x7b,0x48, 0x2,0x6e,0x51, 0x1,0x7c,0x56,
+  0x1,0x7c,0x28, 0x1,0x7c,0x54, 0x1,0x7c,0x55, 0x2,0x70,0x62,
+  0x1,0x7d,0x2f, 0x3,0x61,0x74, 0x1,0x58,0x6d, 0x4,0x36,0x2d,
+  0x3,0x4a,0x6e, 0x4,0x4e,0x79, 0x2,0x64,0x64, 0x3,0x5f,0x7b,
+  0x3,0x60,0x63, 0x2,0x33,0x4c, 0x3,0x40,0x32, 0x1,0x67,0x6c,
+  0x3,0x45,0x61, 0x2,0x4f,0x43, 0x3,0x4a,0x6f, 0x3,0x4a,0x73,
+  0x1,0x6b,0x75, 0x2,0x4f,0x44, 0x3,0x4a,0x71, 0x3,0x4a,0x70,
+  0x3,0x4a,0x72, 0x2,0x55,0x7d, 0x2,0x55,0x7c, 0x1,0x73,0x33,
+  0x1,0x70,0x21, 0x1,0x70,0x22, 0x4,0x4f,0x21, 0x2,0x56,0x22,
+  0x2,0x56,0x21, 0x2,0x55,0x7e, 0x3,0x4f,0x79, 0x3,0x53,0x75,
+  0x2,0x5b,0x7a, 0x2,0x5b,0x7d, 0x3,0x53,0x74, 0x2,0x5b,0x7c,
+  0x2,0x5b,0x7b, 0x1,0x73,0x32, 0x2,0x60,0x74, 0x2,0x60,0x72,
+  0x2,0x60,0x71, 0x4,0x5a,0x37, 0x3,0x57,0x3b, 0x2,0x60,0x73,
+  0x3,0x57,0x3c, 0x1,0x77,0x79, 0x2,0x64,0x66, 0x2,0x64,0x67,
+  0x1,0x77,0x7a, 0x3,0x59,0x6f, 0x2,0x64,0x65, 0x3,0x5b,0x71,
+  0x2,0x68,0x30, 0x2,0x68,0x2f, 0x2,0x68,0x32, 0x1,0x79,0x53,
+  0x2,0x68,0x31, 0x4,0x62,0x4f, 0x2,0x6a,0x75, 0x2,0x6a,0x77,
+  0x2,0x6a,0x76, 0x3,0x5f,0x27, 0x2,0x6c,0x6f, 0x2,0x6c,0x72,
+  0x2,0x6c,0x70, 0x2,0x6c,0x71, 0x2,0x6e,0x52, 0x1,0x7c,0x29,
+  0x4,0x69,0x74, 0x4,0x69,0x71, 0x3,0x66,0x72, 0x2,0x6f,0x62,
+  0x2,0x6f,0x63, 0x2,0x6f,0x64, 0x3,0x61,0x2c, 0x1,0x7c,0x76,
+  0x1,0x7d,0x30, 0x2,0x72,0x26, 0x1,0x58,0x6e, 0x3,0x4a,0x75,
+  0x1,0x70,0x23, 0x1,0x73,0x34, 0x2,0x64,0x68, 0x3,0x5d,0x62,
+  0x2,0x6e,0x53, 0x3,0x61,0x2e, 0x4,0x6d,0x37, 0x2,0x71,0x66,
+  0x2,0x33,0x4d, 0x3,0x62,0x28, 0x1,0x7d,0x48, 0x1,0x58,0x6f,
+  0x2,0x5b,0x7e, 0x3,0x57,0x3e, 0x2,0x64,0x69, 0x2,0x68,0x33,
+  0x3,0x5d,0x63, 0x4,0x68,0x36, 0x2,0x6c,0x73, 0x2,0x6e,0x54,
+  0x1,0x58,0x70, 0x3,0x45,0x62, 0x2,0x4f,0x45, 0x2,0x4f,0x46,
+  0x3,0x4a,0x78, 0x1,0x6b,0x76, 0x1,0x6b,0x77, 0x2,0x56,0x24,
+  0x1,0x70,0x25, 0x1,0x70,0x24, 0x2,0x56,0x23, 0x2,0x60,0x75,
+  0x3,0x57,0x3f, 0x2,0x64,0x6a, 0x2,0x64,0x6c, 0x2,0x64,0x6b,
+  0x1,0x77,0x7d, 0x1,0x77,0x7c, 0x1,0x77,0x7b, 0x3,0x5d,0x64,
+  0x1,0x7b,0x4a, 0x2,0x6c,0x74, 0x3,0x5f,0x28, 0x1,0x7b,0x49,
+  0x2,0x6e,0x56, 0x2,0x6e,0x55, 0x3,0x61,0x2f, 0x1,0x7c,0x77,
+  0x2,0x70,0x63, 0x1,0x5e,0x23, 0x2,0x48,0x70, 0x4,0x42,0x29,
+  0x3,0x45,0x63, 0x2,0x4f,0x49, 0x2,0x4f,0x47, 0x2,0x4f,0x48,
+  0x4,0x48,0x6b, 0x3,0x4f,0x7e, 0x2,0x56,0x2d, 0x4,0x4f,0x30,
+  0x2,0x56,0x28, 0x2,0x56,0x25, 0x2,0x56,0x2c, 0x3,0x4f,0x7c,
+  0x4,0x4f,0x35, 0x3,0x4f,0x7b, 0x2,0x56,0x2e, 0x4,0x4f,0x37,
+  0x4,0x4f,0x2c, 0x1,0x70,0x27, 0x2,0x56,0x2b, 0x2,0x56,0x27,
+  0x3,0x4f,0x7d, 0x4,0x4f,0x2a, 0x2,0x56,0x26, 0x2,0x56,0x2a,
+  0x2,0x56,0x29, 0x1,0x70,0x26, 0xf,0x53,0x3e, 0x2,0x5c,0x2b,
+  0x2,0x5c,0x26, 0x2,0x5c,0x24, 0x2,0x5c,0x2d, 0x2,0x5c,0x25,
+  0x4,0x55,0x47, 0x2,0x5c,0x21, 0x4,0x55,0x43, 0x2,0x5c,0x27,
+  0x3,0x53,0x78, 0x3,0x53,0x7a, 0x2,0x5c,0x22, 0x2,0x60,0x7e,
+  0x2,0x5c,0x23, 0x2,0x5c,0x2e, 0x3,0x54,0x23, 0x4,0x55,0x45,
+  0x3,0x53,0x7c, 0x3,0x54,0x21, 0x5,0x5a,0x4a, 0x3,0x54,0x25,
+  0x3,0x53,0x7d, 0x2,0x5c,0x2a, 0x1,0x73,0x35, 0x2,0x5c,0x29,
+  0x2,0x5c,0x28, 0x3,0x53,0x79, 0x2,0x5c,0x2c, 0xf,0x59,0x38,
+  0x3,0x66,0x73, 0x3,0x57,0x44, 0x2,0x60,0x76, 0x2,0x60,0x79,
+  0x4,0x5a,0x49, 0x3,0x57,0x45, 0x2,0x60,0x78, 0x3,0x57,0x40,
+  0x2,0x61,0x22, 0x2,0x60,0x7b, 0x2,0x61,0x21, 0x3,0x57,0x42,
+  0x2,0x60,0x7d, 0x2,0x60,0x7c, 0x2,0x60,0x7a, 0x4,0x5a,0x41,
+  0x2,0x60,0x77, 0x4,0x5a,0x3f, 0x1,0x76,0x2f, 0x1,0x76,0x2e,
+  0x4,0x5a,0x44, 0x1,0x76,0x30, 0x1,0x76,0x2d, 0x2,0x61,0x23,
+  0x4,0x5a,0x45, 0xf,0x5d,0x76, 0x4,0x5a,0x43, 0x2,0x64,0x72,
+  0x2,0x64,0x75, 0x4,0x5f,0x26, 0x2,0x64,0x73, 0x2,0x64,0x77,
+  0x5,0x66,0x79, 0x3,0x59,0x74, 0x4,0x5f,0x22, 0x2,0x64,0x78,
+  0x4,0x5f,0x2a, 0x2,0x64,0x70, 0x1,0x78,0x24, 0x2,0x64,0x71,
+  0x3,0x59,0x73, 0x2,0x64,0x6f, 0x2,0x64,0x76, 0x3,0x5b,0x74,
+  0x2,0x64,0x6e, 0x2,0x64,0x6d, 0x1,0x78,0x23, 0x1,0x78,0x21,
+  0x1,0x77,0x7e, 0x3,0x59,0x76, 0x3,0x59,0x75, 0x3,0x57,0x43,
+  0xf,0x61,0x72, 0x3,0x59,0x71, 0x2,0x64,0x74, 0x2,0x68,0x3c,
+  0x2,0x68,0x42, 0x1,0x79,0x56, 0x2,0x68,0x3d, 0x5,0x6b,0x33,
+  0x2,0x68,0x40, 0x2,0x68,0x44, 0x1,0x79,0x57, 0x2,0x68,0x3f,
+  0x4,0x62,0x5c, 0x2,0x68,0x37, 0x3,0x5b,0x75, 0x2,0x68,0x36,
+  0x2,0x68,0x43, 0x2,0x68,0x3a, 0x3,0x5b,0x77, 0x2,0x68,0x38,
+  0x2,0x68,0x41, 0x2,0x68,0x39, 0x1,0x79,0x55, 0x1,0x79,0x54,
+  0x3,0x5b,0x79, 0x2,0x68,0x34, 0x2,0x68,0x35, 0x2,0x68,0x3e,
+  0x4,0x62,0x66, 0x3,0x5b,0x7a, 0x4,0x62,0x68, 0x2,0x68,0x3b,
+  0xf,0x64,0x6b, 0x4,0x62,0x55, 0x3,0x5d,0x6f, 0x2,0x6a,0x7a,
+  0x2,0x6a,0x7d, 0x3,0x5d,0x71, 0x4,0x62,0x56, 0x3,0x5d,0x67,
+  0x3,0x5d,0x69, 0x1,0x78,0x22, 0x3,0x5d,0x6a, 0x3,0x5d,0x74,
+  0x3,0x5d,0x75, 0x4,0x65,0x5a, 0x3,0x5d,0x6e, 0x4,0x65,0x59,
+  0x3,0x5d,0x68, 0x2,0x6a,0x7b, 0x2,0x6b,0x23, 0x2,0x6b,0x21,
+  0x2,0x6a,0x79, 0x2,0x6b,0x26, 0x3,0x5d,0x66, 0x2,0x6a,0x78,
+  0x3,0x5d,0x76, 0x1,0x7a,0x5a, 0x2,0x6b,0x22, 0x4,0x65,0x54,
+  0x3,0x5d,0x73, 0x4,0x65,0x57, 0x2,0x6a,0x7c, 0x1,0x7a,0x59,
+  0x2,0x6b,0x25, 0x3,0x5d,0x72, 0x4,0x65,0x5d, 0x2,0x6b,0x24,
+  0x3,0x5d,0x70, 0x2,0x6c,0x77, 0x2,0x6c,0x76, 0x5,0x72,0x51,
+  0x3,0x5f,0x2c, 0x5,0x72,0x4b, 0x2,0x6c,0x7d, 0x5,0x72,0x4e,
+  0x2,0x6c,0x79, 0x2,0x6c,0x7c, 0x1,0x7b,0x4c, 0x4,0x68,0x3b,
+  0x4,0x68,0x3e, 0x2,0x6c,0x7a, 0x2,0x6c,0x7b, 0x4,0x68,0x39,
+  0x2,0x6c,0x75, 0x2,0x6c,0x78, 0x1,0x7b,0x4b, 0x3,0x5f,0x2a,
+  0xf,0x69,0x2a, 0x1,0x7c,0x2b, 0x2,0x6e,0x61, 0x2,0x6e,0x5c,
+  0x2,0x6e,0x60, 0x3,0x60,0x25, 0x2,0x6e,0x63, 0x2,0x6e,0x5f,
+  0x3,0x5f,0x7e, 0x2,0x6e,0x5b, 0x3,0x60,0x23, 0x1,0x7c,0x2d,
+  0x2,0x6e,0x5e, 0x2,0x6e,0x62, 0x1,0x7c,0x2c, 0x2,0x6e,0x59,
+  0x2,0x6a,0x7e, 0x2,0x6e,0x5d, 0x4,0x6a,0x23, 0x5,0x75,0x2d,
+  0x2,0x6e,0x5a, 0x3,0x60,0x22, 0x2,0x6e,0x57, 0xf,0x6a,0x3e,
+  0x2,0x6e,0x58, 0x1,0x7c,0x2a, 0x2,0x6f,0x68, 0x2,0x6f,0x6a,
+  0x2,0x6f,0x6d, 0x2,0x6f,0x69, 0x2,0x6f,0x6e, 0x3,0x60,0x65,
+  0x2,0x6f,0x67, 0x3,0x60,0x66, 0x2,0x6f,0x65, 0x3,0x60,0x68,
+  0x1,0x7c,0x57, 0x2,0x6f,0x6b, 0x1,0x7c,0x59, 0x1,0x7c,0x58,
+  0x2,0x6f,0x66, 0x2,0x6f,0x6c, 0x3,0x61,0x32, 0x2,0x70,0x68,
+  0x1,0x7c,0x78, 0x2,0x70,0x69, 0x3,0x61,0x33, 0x2,0x70,0x67,
+  0x2,0x70,0x64, 0x4,0x6c,0x4a, 0x3,0x61,0x34, 0x2,0x70,0x66,
+  0x2,0x70,0x65, 0x2,0x71,0x49, 0x3,0x61,0x59, 0x2,0x71,0x4b,
+  0x2,0x71,0x4a, 0x3,0x61,0x5b, 0x2,0x71,0x69, 0x5,0x7a,0x53,
+  0x2,0x71,0x68, 0x2,0x71,0x67, 0x2,0x71,0x6a, 0x3,0x61,0x75,
+  0x1,0x7d,0x40, 0x1,0x7d,0x41, 0x2,0x72,0x38, 0x2,0x72,0x3c,
+  0x3,0x62,0x41, 0x1,0x5e,0x24, 0x2,0x41,0x54, 0x2,0x48,0x73,
+  0x3,0x45,0x64, 0x1,0x67,0x6d, 0x2,0x48,0x71, 0x3,0x45,0x66,
+  0x3,0x2f,0x42, 0x2,0x48,0x72, 0x3,0x45,0x68, 0x3,0x45,0x67,
+  0x2,0x4f,0x4a, 0x2,0x4f,0x4b, 0x1,0x6b,0x7a, 0x1,0x6b,0x78,
+  0x2,0x4f,0x4c, 0x1,0x6b,0x79, 0x2,0x56,0x33, 0x3,0x50,0x27,
+  0x2,0x56,0x36, 0x2,0x56,0x30, 0x2,0x56,0x37, 0x2,0x56,0x2f,
+  0x2,0x56,0x31, 0x3,0x50,0x2a, 0x2,0x56,0x32, 0x2,0x56,0x35,
+  0x3,0x50,0x24, 0x3,0x50,0x2b, 0x1,0x70,0x2a, 0x2,0x56,0x3a,
+  0x2,0x56,0x39, 0x1,0x70,0x28, 0x2,0x56,0x34, 0x2,0x56,0x38,
+  0x1,0x70,0x29, 0x3,0x54,0x2d, 0x4,0x4f,0x42, 0x3,0x50,0x25,
+  0x3,0x50,0x22, 0x3,0x54,0x2a, 0x2,0x5c,0x38, 0x4,0x55,0x52,
+  0x1,0x73,0x3a, 0x3,0x54,0x2c, 0x2,0x5c,0x33, 0x1,0x73,0x36,
+  0x3,0x54,0x36, 0x2,0x5c,0x30, 0x2,0x5c,0x36, 0x2,0x5c,0x39,
+  0x3,0x54,0x33, 0x1,0x73,0x3b, 0x4,0x5a,0x4e, 0x2,0x5c,0x35,
+  0x2,0x5c,0x32, 0x2,0x5c,0x3a, 0x2,0x5c,0x31, 0x3,0x54,0x37,
+  0x2,0x5c,0x37, 0x1,0x73,0x37, 0x3,0x54,0x29, 0x2,0x5c,0x2f,
+  0x1,0x73,0x38, 0x3,0x54,0x35, 0x1,0x73,0x39, 0x2,0x5c,0x34,
+  0x3,0x54,0x32, 0x2,0x61,0x35, 0x2,0x61,0x28, 0x2,0x61,0x29,
+  0x2,0x61,0x2c, 0x2,0x61,0x2a, 0x4,0x5a,0x55, 0x2,0x61,0x24,
+  0x4,0x5a,0x56, 0x3,0x57,0x4d, 0x2,0x61,0x27, 0x2,0x61,0x31,
+  0x2,0x61,0x2b, 0x3,0x57,0x48, 0x4,0x5a,0x4f, 0x1,0x76,0x31,
+  0x4,0x5a,0x4d, 0x2,0x61,0x33, 0x2,0x61,0x30, 0x1,0x76,0x32,
+  0x2,0x61,0x32, 0x2,0x61,0x25, 0x2,0x61,0x2e, 0x2,0x61,0x2f,
+  0x3,0x57,0x4a, 0x2,0x61,0x2d, 0xf,0x5e,0x24, 0x3,0x66,0x75,
+  0x2,0x64,0x7c, 0x2,0x64,0x7e, 0x2,0x65,0x23, 0x3,0x59,0x79,
+  0x3,0x59,0x7b, 0x2,0x64,0x7b, 0x3,0x59,0x7d, 0x1,0x78,0x25,
+  0x2,0x65,0x25, 0x2,0x64,0x7a, 0x2,0x65,0x26, 0x3,0x59,0x7e,
+  0x2,0x65,0x22, 0x2,0x65,0x24, 0x2,0x65,0x28, 0x2,0x65,0x21,
+  0x2,0x65,0x29, 0x2,0x64,0x7d, 0x2,0x64,0x79, 0x1,0x78,0x26,
+  0x3,0x5a,0x22, 0x2,0x65,0x27, 0x1,0x78,0x27, 0x1,0x79,0x59,
+  0x4,0x5f,0x34, 0x3,0x59,0x7a, 0xf,0x61,0x77, 0x3,0x5b,0x7d,
+  0x2,0x61,0x26, 0x2,0x68,0x5e, 0x2,0x68,0x55, 0x1,0x79,0x5b,
+  0x2,0x68,0x51, 0x1,0x79,0x5c, 0x3,0x5c,0x27, 0x3,0x5c,0x22,
+  0x2,0x68,0x5a, 0x2,0x68,0x54, 0x2,0x68,0x4a, 0x1,0x79,0x5a,
+  0x2,0x68,0x57, 0x2,0x68,0x52, 0x2,0x68,0x53, 0x3,0x5c,0x25,
+  0x2,0x68,0x45, 0x2,0x68,0x4c, 0x2,0x68,0x5b, 0x3,0x5b,0x7e,
+  0x2,0x68,0x58, 0x5,0x6b,0x3f, 0x2,0x68,0x50, 0x3,0x5c,0x26,
+  0x2,0x68,0x5c, 0x2,0x68,0x4b, 0x2,0x68,0x46, 0x2,0x68,0x59,
+  0x3,0x5c,0x24, 0x2,0x68,0x48, 0x2,0x68,0x56, 0x2,0x68,0x4d,
+  0x2,0x68,0x5d, 0x2,0x68,0x49, 0x1,0x79,0x58, 0x2,0x68,0x47,
+  0x2,0x68,0x4e, 0x2,0x68,0x4f, 0x2,0x6b,0x2d, 0x3,0x5c,0x23,
+  0x2,0x6b,0x2b, 0x4,0x65,0x69, 0x2,0x6b,0x30, 0x3,0x5d,0x79,
+  0x2,0x6b,0x3c, 0x2,0x6b,0x33, 0x2,0x6b,0x2c, 0x2,0x6b,0x28,
+  0x2,0x6b,0x35, 0x2,0x6b,0x2e, 0x2,0x6b,0x31, 0x2,0x6b,0x2a,
+  0x2,0x6b,0x38, 0x2,0x6b,0x27, 0x2,0x6b,0x2f, 0x2,0x6b,0x34,
+  0x2,0x6b,0x36, 0x2,0x6b,0x39, 0x2,0x6b,0x29, 0x3,0x5d,0x7a,
+  0x2,0x6b,0x3d, 0x2,0x6b,0x3e, 0x2,0x6b,0x37, 0x2,0x6b,0x3b,
+  0x2,0x6b,0x32, 0x2,0x6d,0x2f, 0x2,0x6d,0x32, 0x3,0x5f,0x35,
+  0x1,0x7b,0x4d, 0x3,0x5f,0x31, 0x2,0x6d,0x31, 0x2,0x6d,0x36,
+  0x2,0x6d,0x34, 0x1,0x7b,0x4e, 0x2,0x6d,0x2b, 0x2,0x6d,0x21,
+  0x2,0x6c,0x7e, 0x1,0x7b,0x50, 0x2,0x6d,0x2d, 0x2,0x6d,0x2e,
+  0x2,0x6d,0x2a, 0x2,0x6d,0x22, 0x3,0x5f,0x32, 0x2,0x6d,0x27,
+  0x2,0x6b,0x3a, 0x4,0x68,0x43, 0x2,0x6d,0x23, 0x1,0x7b,0x4f,
+  0x2,0x6d,0x29, 0x3,0x5f,0x36, 0x2,0x6d,0x28, 0x2,0x6d,0x24,
+  0x2,0x6d,0x30, 0x4,0x68,0x44, 0x2,0x6d,0x25, 0x2,0x6e,0x68,
+  0x2,0x6d,0x33, 0x2,0x6d,0x35, 0x2,0x6d,0x2c, 0x2,0x6d,0x26,
+  0x2,0x6e,0x69, 0x2,0x6e,0x6b, 0x2,0x6e,0x65, 0x1,0x7c,0x2e,
+  0x4,0x6a,0x25, 0x2,0x6e,0x72, 0x2,0x6e,0x70, 0x1,0x7c,0x2f,
+  0x2,0x6e,0x6f, 0x2,0x6e,0x6e, 0x2,0x6e,0x67, 0x2,0x6e,0x64,
+  0x2,0x6e,0x6a, 0x2,0x6e,0x73, 0x2,0x6e,0x66, 0x2,0x6e,0x6c,
+  0x5,0x75,0x45, 0x2,0x6f,0x77, 0x2,0x6f,0x7c, 0x2,0x6f,0x72,
+  0x2,0x6f,0x75, 0x1,0x7c,0x5a, 0x2,0x6f,0x79, 0x4,0x6b,0x46,
+  0x2,0x70,0x22, 0x2,0x6e,0x6d, 0x4,0x6b,0x4a, 0x2,0x6f,0x73,
+  0x2,0x6f,0x7d, 0x2,0x70,0x23, 0x2,0x6f,0x78, 0x2,0x6f,0x71,
+  0x2,0x6f,0x7b, 0x4,0x6b,0x4b, 0x2,0x6f,0x7a, 0x2,0x70,0x21,
+  0x2,0x6f,0x7e, 0x2,0x6e,0x71, 0x2,0x6f,0x76, 0x2,0x6f,0x70,
+  0x2,0x6f,0x74, 0x1,0x7c,0x79, 0x1,0x7c,0x7a, 0x2,0x6f,0x6f,
+  0x3,0x60,0x6c, 0x2,0x70,0x74, 0x2,0x70,0x6b, 0x2,0x70,0x73,
+  0x2,0x70,0x70, 0x2,0x70,0x71, 0x2,0x70,0x6a, 0x2,0x70,0x6d,
+  0x2,0x70,0x75, 0x2,0x70,0x6f, 0x2,0x70,0x6e, 0x2,0x70,0x6c,
+  0x3,0x61,0x35, 0x2,0x70,0x72, 0x4,0x6c,0x56, 0x2,0x71,0x4c,
+  0x4,0x6d,0x3a, 0x2,0x71,0x4d, 0x3,0x61,0x5d, 0x2,0x71,0x4f,
+  0x2,0x71,0x4e, 0x2,0x71,0x51, 0x2,0x71,0x50, 0x2,0x71,0x6c,
+  0x2,0x71,0x6b, 0x2,0x72,0x27, 0x3,0x62,0x29, 0x2,0x72,0x28,
+  0x3,0x62,0x30, 0x2,0x72,0x34, 0x1,0x7d,0x45, 0x1,0x7d,0x49,
+  0x3,0x62,0x38, 0x2,0x72,0x3d, 0x1,0x7d,0x4a, 0x1,0x5e,0x25,
+  0x4,0x4f,0x48, 0x5,0x5a,0x5b, 0x1,0x7a,0x5b, 0x2,0x6d,0x37,
+  0x3,0x5f,0x37, 0x1,0x7c,0x7b, 0x1,0x7c,0x7c, 0x1,0x5e,0x26,
+  0x2,0x48,0x74, 0x3,0x45,0x69, 0x1,0x67,0x6e, 0x2,0x56,0x3b,
+  0x3,0x50,0x2c, 0x3,0x54,0x39, 0x2,0x5c,0x3c, 0x2,0x5c,0x3d,
+  0x2,0x5c,0x3b, 0x2,0x61,0x37, 0x2,0x61,0x36, 0x1,0x76,0x33,
+  0x2,0x65,0x2b, 0x2,0x61,0x38, 0x2,0x65,0x2a, 0x4,0x5f,0x3a,
+  0x3,0x5a,0x24, 0x2,0x68,0x60, 0x1,0x79,0x5d, 0x1,0x79,0x5f,
+  0x2,0x68,0x5f, 0x3,0x5c,0x29, 0x4,0x62,0x75, 0x1,0x79,0x5e,
+  0x3,0x5e,0x21, 0x2,0x6b,0x3f, 0x2,0x6b,0x41, 0x2,0x6b,0x40,
+  0x2,0x6d,0x38, 0x1,0x7b,0x51, 0x3,0x5f,0x3a, 0x1,0x7c,0x5b,
+  0x2,0x70,0x76, 0x2,0x71,0x52, 0x3,0x62,0x31, 0x3,0x62,0x3f,
+  0x2,0x72,0x41, 0x1,0x5e,0x27, 0x3,0x25,0x47, 0x2,0x4f,0x4d,
+  0x4,0x4f,0x4c, 0x1,0x70,0x2b, 0x3,0x50,0x2f, 0x3,0x50,0x2e,
+  0x3,0x54,0x3a, 0x2,0x5c,0x3f, 0x2,0x5c,0x3e, 0x3,0x57,0x50,
+  0x2,0x61,0x39, 0x3,0x5a,0x26, 0x3,0x5a,0x25, 0x4,0x62,0x7e,
+  0x1,0x79,0x60, 0x1,0x7a,0x5c, 0x2,0x6e,0x74, 0x2,0x72,0x39,
+  0x1,0x5e,0x28, 0x1,0x6b,0x7b, 0x3,0x4b,0x22, 0x1,0x70,0x2c,
+  0xf,0x61,0x7c, 0x2,0x68,0x61, 0x3,0x5e,0x22, 0x2,0x70,0x24,
+  0x1,0x63,0x27, 0x3,0x39,0x6a, 0x3,0x54,0x3c, 0x3,0x54,0x3b,
+  0x4,0x5a,0x5d, 0x2,0x61,0x3a, 0x3,0x5a,0x28, 0x4,0x5f,0x3e,
+  0x1,0x7d,0x31, 0x1,0x63,0x28, 0x1,0x70,0x2d, 0x1,0x76,0x34,
+  0x2,0x70,0x25, 0x1,0x63,0x29, 0x3,0x39,0x6b, 0x2,0x56,0x3c,
+  0x1,0x73,0x3d, 0x2,0x5c,0x40, 0x2,0x5c,0x41, 0x3,0x54,0x3d,
+  0x1,0x73,0x3c, 0x4,0x55,0x60, 0x2,0x61,0x3b, 0x1,0x76,0x38,
+  0x1,0x76,0x36, 0x1,0x76,0x37, 0x1,0x76,0x35, 0x2,0x65,0x2c,
+  0x1,0x78,0x28, 0x4,0x63,0x24, 0x3,0x5c,0x2a, 0x2,0x6b,0x43,
+  0x2,0x6b,0x42, 0x2,0x6b,0x45, 0x2,0x6b,0x44, 0x1,0x7a,0x5d,
+  0x2,0x6d,0x39, 0x4,0x68,0x56, 0x2,0x6d,0x3b, 0x2,0x6d,0x3a,
+  0x1,0x7b,0x52, 0x2,0x6e,0x75, 0x3,0x60,0x29, 0x2,0x70,0x26,
+  0x2,0x70,0x27, 0x1,0x7c,0x5c, 0x2,0x71,0x53, 0x2,0x71,0x6d,
+  0x1,0x7d,0x42, 0x4,0x6e,0x43, 0x2,0x41,0x55, 0x2,0x5c,0x42,
+  0x2,0x61,0x3c, 0x2,0x68,0x62, 0x2,0x48,0x75, 0x3,0x27,0x72,
+  0x2,0x61,0x3d, 0x2,0x65,0x2e, 0x2,0x65,0x2d, 0x3,0x5a,0x29,
+  0x3,0x5c,0x2d, 0x3,0x5c,0x2e, 0x3,0x5f,0x3c, 0x2,0x70,0x28,
+  0x1,0x7c,0x7d, 0x3,0x61,0x5f, 0x2,0x71,0x54, 0x2,0x71,0x6e,
+  0x1,0x67,0x6f, 0x2,0x56,0x3d, 0x2,0x56,0x3e, 0x4,0x4f,0x56,
+  0x2,0x5c,0x43, 0x1,0x67,0x70, 0x3,0x45,0x6a, 0x1,0x78,0x29,
+  0x2,0x65,0x2f, 0x3,0x5c,0x30, 0x2,0x6d,0x3d, 0x1,0x7b,0x53,
+  0x2,0x6d,0x3e, 0x2,0x6d,0x3c, 0x2,0x70,0x29, 0x3,0x61,0x60,
+  0x2,0x70,0x77, 0x4,0x6d,0x48, 0x1,0x67,0x71, 0x2,0x61,0x40,
+  0x2,0x61,0x3f, 0x2,0x61,0x3e, 0x2,0x65,0x30, 0x3,0x5a,0x2b,
+  0x3,0x5a,0x2a, 0x2,0x65,0x34, 0x2,0x65,0x33, 0x2,0x65,0x32,
+  0x2,0x65,0x31, 0x1,0x78,0x2a, 0x2,0x68,0x63, 0x2,0x6b,0x47,
+  0x1,0x7a,0x5e, 0x2,0x6b,0x46, 0x2,0x6d,0x3f, 0x2,0x6e,0x78,
+  0x2,0x6e,0x77, 0x1,0x7c,0x30, 0x2,0x6e,0x76, 0x2,0x70,0x2c,
+  0x2,0x70,0x2b, 0x2,0x70,0x2a, 0x3,0x60,0x6d, 0x4,0x6e,0x44,
+  0x1,0x6b,0x7c, 0x4,0x55,0x63, 0x2,0x5c,0x44, 0x1,0x76,0x39,
+  0x4,0x5a,0x64, 0x2,0x68,0x64, 0x2,0x68,0x65, 0x2,0x6e,0x79,
+  0x2,0x70,0x2d, 0x4,0x6b,0x5c, 0x3,0x61,0x3b, 0x2,0x70,0x78,
+  0x2,0x71,0x55, 0x2,0x72,0x29, 0x2,0x72,0x43, 0x1,0x6b,0x7d,
+  0x1,0x76,0x3a, 0x2,0x65,0x35, 0x2,0x68,0x66, 0x2,0x6d,0x40,
+  0x2,0x70,0x2e, 0x3,0x23,0x70, 0x1,0x70,0x2f, 0x3,0x54,0x3e,
+  0x2,0x61,0x41, 0x2,0x65,0x36, 0x2,0x68,0x67, 0x2,0x68,0x68,
+  0x2,0x68,0x69, 0x2,0x6b,0x4c, 0x3,0x5e,0x24, 0x2,0x6b,0x48,
+  0x1,0x7b,0x54, 0x2,0x6b,0x4b, 0x2,0x6b,0x4a, 0x1,0x7a,0x5f,
+  0x2,0x6b,0x49, 0x1,0x7a,0x61, 0x1,0x7a,0x60, 0x2,0x6d,0x42,
+  0x2,0x6d,0x41, 0x1,0x7b,0x55, 0x1,0x7b,0x56, 0x4,0x68,0x60,
+  0x3,0x5f,0x3e, 0x1,0x7c,0x32, 0x2,0x6e,0x7a, 0x1,0x7c,0x31,
+  0x4,0x6b,0x61, 0x2,0x70,0x31, 0x2,0x70,0x32, 0x2,0x70,0x30,
+  0x2,0x70,0x2f, 0x1,0x7d,0x21, 0x4,0x6c,0x64, 0x2,0x70,0x79,
+  0x2,0x70,0x7a, 0x2,0x70,0x7b, 0x1,0x7c,0x7e, 0x2,0x71,0x56,
+  0x2,0x71,0x59, 0x2,0x71,0x58, 0x2,0x71,0x57, 0x3,0x62,0x33,
+  0x4,0x6e,0x45, 0x2,0x72,0x42, 0x1,0x73,0x3e, 0x3,0x57,0x55,
+  0x4,0x63,0x2d, 0x1,0x78,0x32, 0x2,0x6b,0x4d, 0x2,0x6d,0x43,
+  0x3,0x60,0x2b, 0x1,0x7c,0x33, 0x2,0x6e,0x7b, 0x4,0x6e,0x55,
+  0x3,0x62,0x42, 0x2,0x72,0x44, 0xf,0x21,0x59, 0x1,0x73,0x3f,
+  0x3,0x5e,0x47, 0x4,0x6e,0x33, 0x2,0x61,0x42, 0x3,0x5f,0x3f,
+  0x2,0x6e,0x7c, 0x3,0x61,0x61, 0x2,0x71,0x6f, 0x3,0x61,0x77,
+  0xf,0x58,0x4c, 0x1,0x21,0x2b, 0x1,0x21,0x36, 0x1,0x21,0x38,
+  0x1,0x21,0x40, 0x1,0x21,0x41, 0x1,0x21,0x44, 0x1,0x21,0x45,
+  0x1,0x21,0x48, 0x1,0x21,0x49, 0x1,0x21,0x4c, 0x1,0x21,0x4d,
+  0x1,0x21,0x50, 0x1,0x21,0x51, 0x1,0x21,0x54, 0x1,0x21,0x55,
+  0x1,0x21,0x58, 0x1,0x21,0x59, 0x1,0x21,0x5c, 0x1,0x21,0x5d,
+  0x1,0x22,0x27, 0x1,0x22,0x28, 0x1,0x22,0x2b, 0x1,0x22,0x2c,
+  0x1,0x22,0x29, 0x1,0x22,0x2a, 0x1,0x21,0x2e, 0x1,0x21,0x2f,
+  0x1,0x21,0x30, 0x1,0x21,0x32, 0x1,0x21,0x33, 0x1,0x21,0x34,
+  0x1,0x21,0x35, 0x1,0x21,0x5e, 0x1,0x21,0x5f, 0x1,0x21,0x60,
+  0x1,0x21,0x61, 0x1,0x21,0x62, 0x1,0x21,0x63, 0x1,0x22,0x2d,
+  0x1,0x22,0x2e, 0x1,0x22,0x2f, 0x1,0x22,0x3f, 0x1,0x22,0x40,
+  0x1,0x22,0x41, 0x1,0x22,0x43, 0x1,0x22,0x42, 0x1,0x22,0x62,
+  0x1,0x22,0x6c, 0x1,0x22,0x6d, 0x1,0x22,0x6e, 0x1,0x21,0x2a,
+  0x1,0x21,0x6c, 0x1,0x22,0x63, 0x1,0x22,0x68, 0x1,0x21,0x6d,
+  0x1,0x21,0x3e, 0x1,0x21,0x3f, 0x1,0x21,0x6e, 0x1,0x22,0x30,
+  0x1,0x21,0x22, 0x1,0x22,0x31, 0x1,0x21,0x25, 0x1,0x22,0x5f,
+  0x1,0x24,0x21, 0x1,0x24,0x22, 0x1,0x24,0x23, 0x1,0x24,0x24,
+  0x1,0x24,0x25, 0x1,0x24,0x26, 0x1,0x24,0x27, 0x1,0x24,0x28,
+  0x1,0x24,0x29, 0x1,0x24,0x2a, 0x1,0x21,0x28, 0x1,0x21,0x27,
+  0x1,0x22,0x36, 0x1,0x22,0x38, 0x1,0x22,0x37, 0x1,0x21,0x29,
+  0x1,0x22,0x69, 0x1,0x24,0x41, 0x1,0x24,0x42, 0x1,0x24,0x43,
+  0x1,0x24,0x44, 0x1,0x24,0x45, 0x1,0x24,0x46, 0x1,0x24,0x47,
+  0x1,0x24,0x48, 0x1,0x24,0x49, 0x1,0x24,0x4a, 0x1,0x24,0x4b,
+  0x1,0x24,0x4c, 0x1,0x24,0x4d, 0x1,0x24,0x4e, 0x1,0x24,0x4f,
+  0x1,0x24,0x50, 0x1,0x24,0x51, 0x1,0x24,0x52, 0x1,0x24,0x53,
+  0x1,0x24,0x54, 0x1,0x24,0x55, 0x1,0x24,0x56, 0x1,0x24,0x57,
+  0x1,0x24,0x58, 0x1,0x24,0x59, 0x1,0x24,0x5a, 0x1,0x22,0x60,
+  0x1,0x22,0x25, 0x1,0x24,0x5b, 0x1,0x24,0x5c, 0x1,0x24,0x5d,
+  0x1,0x24,0x5e, 0x1,0x24,0x5f, 0x1,0x24,0x60, 0x1,0x24,0x61,
+  0x1,0x24,0x62, 0x1,0x24,0x63, 0x1,0x24,0x64, 0x1,0x24,0x65,
+  0x1,0x24,0x66, 0x1,0x24,0x67, 0x1,0x24,0x68, 0x1,0x24,0x69,
+  0x1,0x24,0x6a, 0x1,0x24,0x6b, 0x1,0x24,0x6c, 0x1,0x24,0x6d,
+  0x1,0x24,0x6e, 0x1,0x24,0x6f, 0x1,0x24,0x70, 0x1,0x24,0x71,
+  0x1,0x24,0x72, 0x1,0x24,0x73, 0x1,0x24,0x74, 0x1,0x21,0x42,
+  0x1,0x22,0x5e, 0x1,0x21,0x43, 0x1,0x22,0x66, 0x1,0x22,0x67,
+  0x1,0x22,0x64, 0x5,0x21,0x25, 0xf,0x21,0x21, 0x6,0x21,0x2f,
+  0x6,0x21,0x2d, 0x6,0x21,0x2e, 0x6,0x21,0x42, 0x6,0x21,0x43,
+  0x5,0x21,0x33, 0x3,0x21,0x44, 0xf,0x21,0x3e, 0xf,0x21,0x3f,
+  0x6,0x22,0x2b, 0x5,0x21,0x4d, 0x6,0x23,0x40, 0x6,0x23,0x3e,
+  0x6,0x23,0x3f, 0x6,0x24,0x67, 0x6,0x25,0x5f, 0x5,0x23,0x2f,
+  0xf,0x22,0x74, 0x6,0x25,0x67, 0x6,0x25,0x63, 0x6,0x29,0x37,
+  0x6,0x29,0x3a, 0x6,0x29,0x38, 0xf,0x29,0x22, 0xf,0x29,0x23,
+  0x6,0x2e,0x66, 0x5,0x30,0x72, 0x5,0x33,0x23, 0xf,0x39,0x32,
+  0xf,0x39,0x33, 0x6,0x47,0x2d, 0xf,0x3b,0x73, 0xf,0x40,0x35,
+  0xf,0x40,0x75, 0xf,0x47,0x42, 0xf,0x4d,0x56, 0x7,0x21,0x21,
+  0xf,0x59,0x47, 0x4,0x4f,0x7c, 0xf,0x5a,0x3f, 0x6,0x21,0x2c,
+  0x6,0x21,0x22, 0x6,0x22,0x5f, 0x4,0x21,0x56, 0x6,0x23,0x41,
+  0x6,0x25,0x60, 0x6,0x29,0x3b, 0x5,0x25,0x21, 0x5,0x27,0x7a,
+  0x6,0x2e,0x4a, 0xf,0x29,0x50, 0x6,0x35,0x25, 0x6,0x35,0x26,
+  0x6,0x45,0x7d, 0x6,0x46,0x3f, 0xf,0x46,0x40, 0x5,0x44,0x7e,
+  0x6,0x21,0x32, 0x5,0x21,0x2d, 0x6,0x22,0x2d, 0x6,0x23,0x42,
+  0xf,0x2d,0x61, 0x6,0x50,0x50, 0xf,0x53,0x44, 0x4,0x21,0x21,
+  0x5,0x21,0x26, 0x6,0x21,0x24, 0xf,0x21,0x22, 0x6,0x21,0x33,
+  0x6,0x21,0x44, 0xf,0x21,0x25, 0xf,0x21,0x26, 0x5,0x21,0x4e,
+  0x6,0x22,0x30, 0xf,0x21,0x45, 0x6,0x22,0x4e, 0x6,0x22,0x2f,
+  0xf,0x21,0x40, 0xf,0x21,0x41, 0x6,0x21,0x45, 0x6,0x22,0x31,
+  0x6,0x22,0x2e, 0x4,0x22,0x26, 0x4,0x22,0x25, 0x5,0x22,0x24,
+  0x5,0x22,0x25, 0x6,0x23,0x43, 0x6,0x29,0x3e, 0x6,0x24,0x5d,
+  0x6,0x25,0x56, 0x6,0x25,0x61, 0x6,0x25,0x62, 0x6,0x2c,0x43,
+  0x6,0x29,0x3c, 0x6,0x3a,0x65, 0xf,0x29,0x25, 0x6,0x2d,0x2d,
+  0x6,0x29,0x3d, 0x6,0x2e,0x4b, 0x5,0x2b,0x67, 0x6,0x35,0x2a,
+  0x6,0x35,0x27, 0x6,0x39,0x64, 0x6,0x35,0x29, 0x6,0x3c,0x7b,
+  0x6,0x45,0x7e, 0x6,0x46,0x40, 0x6,0x46,0x41, 0x5,0x3d,0x56,
+  0x5,0x21,0x23, 0x5,0x21,0x22, 0x6,0x21,0x26, 0x6,0x21,0x25,
+  0x5,0x21,0x21, 0x5,0x21,0x2b, 0xf,0x21,0x23, 0x6,0x21,0x46,
+  0x5,0x21,0x34, 0xf,0x21,0x27, 0xf,0x21,0x28, 0x6,0x22,0x33,
+  0x6,0x22,0x32, 0x6,0x22,0x2a, 0x5,0x21,0x4f, 0x6,0x23,0x46,
+  0x6,0x23,0x44, 0xf,0x21,0x6e, 0x6,0x23,0x45, 0xf,0x22,0x75,
+  0x6,0x29,0x3f, 0x6,0x2d,0x2c, 0x4,0x26,0x24, 0x6,0x2e,0x4d,
+  0x6,0x2e,0x4e, 0xf,0x25,0x40, 0x6,0x2e,0x4c, 0x6,0x35,0x2b,
+  0xf,0x2d,0x60, 0x6,0x3c,0x7e, 0x5,0x30,0x73, 0x6,0x3c,0x7d,
+  0xf,0x39,0x34, 0x6,0x50,0x51, 0x5,0x44,0x55, 0xf,0x46,0x41,
+  0x6,0x5a,0x63, 0x6,0x5a,0x62, 0x7,0x36,0x73, 0x7,0x46,0x27,
+  0x7,0x4d,0x3a, 0x5,0x21,0x24, 0x5,0x21,0x27, 0x4,0x21,0x28,
+  0x5,0x21,0x28, 0x5,0x21,0x2c, 0x6,0x21,0x47, 0x6,0x21,0x48,
+  0x6,0x21,0x49, 0x6,0x23,0x47, 0x5,0x23,0x30, 0x6,0x25,0x64,
+  0x6,0x29,0x40, 0x5,0x30,0x74, 0x6,0x46,0x42, 0x7,0x2c,0x3c,
+  0x6,0x21,0x27, 0x6,0x21,0x28, 0x6,0x21,0x29, 0x6,0x21,0x4a,
+  0x6,0x25,0x65, 0x6,0x23,0x48, 0x6,0x23,0x49, 0x6,0x25,0x68,
+  0xf,0x22,0x76, 0x4,0x25,0x33, 0x5,0x25,0x22, 0x4,0x25,0x32,
+  0x6,0x2e,0x50, 0x5,0x27,0x7b, 0xf,0x29,0x27, 0x6,0x30,0x7c,
+  0x6,0x35,0x2d, 0x6,0x35,0x2c, 0xf,0x2d,0x62, 0x6,0x3d,0x21,
+  0xf,0x4d,0x6e, 0x6,0x23,0x4a, 0xf,0x21,0x6f, 0xf,0x21,0x70,
+  0xf,0x22,0x2b, 0x5,0x23,0x31, 0xf,0x22,0x77, 0xf,0x22,0x78,
+  0xf,0x22,0x79, 0x5,0x25,0x23, 0x6,0x29,0x41, 0xf,0x25,0x43,
+  0x6,0x2e,0x52, 0x6,0x2e,0x51, 0xf,0x29,0x28, 0x6,0x35,0x2f,
+  0x5,0x2c,0x66, 0x4,0x2b,0x5f, 0x6,0x35,0x30, 0xf,0x2d,0x63,
+  0x6,0x35,0x31, 0x6,0x46,0x43, 0x6,0x3d,0x23, 0x6,0x3d,0x22,
+  0x4,0x30,0x44, 0x5,0x30,0x75, 0xf,0x32,0x74, 0xf,0x32,0x75,
+  0xf,0x32,0x72, 0x6,0x46,0x45, 0x6,0x46,0x44, 0x6,0x46,0x46,
+  0x4,0x36,0x2f, 0xf,0x39,0x35, 0xf,0x39,0x36, 0xf,0x39,0x37,
+  0x6,0x4c,0x2d, 0xf,0x40,0x36, 0xf,0x40,0x37, 0xf,0x40,0x38,
+  0xf,0x46,0x42, 0x6,0x50,0x52, 0x5,0x4b,0x71, 0x7,0x21,0x22,
+  0xf,0x4d,0x57, 0xf,0x4d,0x58, 0xf,0x4d,0x59, 0x7,0x26,0x79,
+  0x7,0x21,0x24, 0x7,0x21,0x23, 0x7,0x21,0x46, 0x7,0x2c,0x3f,
+  0x5,0x53,0x53, 0x7,0x2c,0x3e, 0x7,0x2c,0x3d, 0x7,0x46,0x23,
+  0x7,0x46,0x28, 0x6,0x21,0x34, 0x6,0x21,0x35, 0xf,0x21,0x24,
+  0x6,0x21,0x4c, 0xf,0x21,0x29, 0x6,0x21,0x4b, 0x3,0x21,0x6f,
+  0xf,0x21,0x43, 0x6,0x22,0x35, 0x6,0x22,0x34, 0x6,0x22,0x36,
+  0x4,0x21,0x58, 0x4,0x22,0x2c, 0x4,0x22,0x2b, 0x4,0x22,0x29,
+  0x6,0x23,0x4f, 0x4,0x22,0x30, 0x6,0x23,0x50, 0x5,0x22,0x27,
+  0x6,0x23,0x4d, 0x6,0x23,0x4c, 0x4,0x22,0x2f, 0x6,0x23,0x4b,
+  0xf,0x21,0x73, 0xf,0x21,0x74, 0xf,0x21,0x75, 0xf,0x21,0x76,
+  0xf,0x21,0x77, 0xf,0x21,0x78, 0xf,0x21,0x79, 0x5,0x22,0x28,
+  0x6,0x23,0x51, 0x5,0x22,0x26, 0xf,0x21,0x7a, 0x5,0x23,0x32,
+  0x6,0x25,0x6a, 0x4,0x23,0x3a, 0x6,0x25,0x6b, 0x6,0x25,0x74,
+  0x6,0x25,0x70, 0x6,0x25,0x6c, 0xf,0x22,0x7a, 0xf,0x22,0x7b,
+  0xf,0x22,0x7c, 0xf,0x22,0x7d, 0xf,0x23,0x21, 0xf,0x23,0x22,
+  0xf,0x23,0x23, 0xf,0x23,0x25, 0xf,0x23,0x28, 0xf,0x23,0x29,
+  0xf,0x23,0x2a, 0xf,0x23,0x2b, 0xf,0x23,0x2c, 0x4,0x23,0x38,
+  0x6,0x25,0x6d, 0x6,0x25,0x6f, 0xf,0x23,0x26, 0x6,0x25,0x6e,
+  0x6,0x25,0x69, 0x5,0x23,0x33, 0x6,0x25,0x73, 0x6,0x29,0x43,
+  0x6,0x29,0x45, 0x4,0x25,0x3a, 0x5,0x25,0x28, 0x6,0x29,0x46,
+  0x5,0x25,0x29, 0x3,0x27,0x4e, 0x5,0x25,0x2a, 0x4,0x25,0x37,
+  0x4,0x25,0x35, 0x6,0x29,0x4a, 0x6,0x29,0x44, 0x6,0x29,0x4c,
+  0x6,0x29,0x47, 0x6,0x29,0x4e, 0x5,0x25,0x26, 0x6,0x29,0x42,
+  0xf,0x25,0x45, 0xf,0x25,0x46, 0xf,0x25,0x48, 0xf,0x25,0x49,
+  0xf,0x25,0x4b, 0xf,0x25,0x4c, 0xf,0x25,0x4d, 0xf,0x25,0x4e,
+  0xf,0x25,0x4f, 0xf,0x25,0x50, 0xf,0x25,0x51, 0x6,0x29,0x4d,
+  0x6,0x29,0x48, 0x6,0x29,0x49, 0x6,0x29,0x4b, 0x5,0x25,0x24,
+  0x5,0x25,0x27, 0x5,0x27,0x7c, 0x6,0x2e,0x64, 0x6,0x2e,0x59,
+  0x5,0x2b,0x72, 0x4,0x28,0x36, 0x6,0x2e,0x63, 0x6,0x2e,0x57,
+  0x6,0x2e,0x56, 0x5,0x28,0x23, 0x4,0x28,0x3b, 0x6,0x2e,0x5d,
+  0x5,0x27,0x7e, 0x5,0x27,0x7d, 0x5,0x28,0x22, 0x6,0x2e,0x62,
+  0x6,0x2e,0x55, 0x6,0x2e,0x54, 0x6,0x2e,0x65, 0x6,0x2e,0x5c,
+  0xf,0x29,0x29, 0xf,0x29,0x2a, 0xf,0x29,0x2b, 0xf,0x29,0x2c,
+  0xf,0x29,0x2e, 0xf,0x29,0x2f, 0xf,0x29,0x31, 0xf,0x29,0x32,
+  0xf,0x29,0x33, 0xf,0x29,0x34, 0xf,0x29,0x35, 0xf,0x29,0x36,
+  0xf,0x29,0x37, 0xf,0x29,0x38, 0x6,0x2e,0x53, 0x6,0x2e,0x58,
+  0x6,0x2e,0x5b, 0x6,0x2e,0x5e, 0x6,0x2e,0x60, 0xf,0x25,0x47,
+  0x6,0x2e,0x5f, 0x5,0x28,0x24, 0x4,0x2b,0x63, 0x5,0x2b,0x70,
+  0x4,0x2b,0x67, 0x6,0x35,0x36, 0x5,0x2b,0x6b, 0x6,0x35,0x35,
+  0x5,0x2b,0x74, 0x4,0x2b,0x66, 0x4,0x2b,0x68, 0x5,0x2b,0x6f,
+  0x6,0x35,0x32, 0x5,0x2b,0x69, 0xf,0x2d,0x64, 0xf,0x2d,0x6e,
+  0x6,0x35,0x37, 0x5,0x2b,0x6e, 0xf,0x2d,0x66, 0xf,0x2d,0x67,
+  0xf,0x2d,0x6a, 0xf,0x2d,0x6b, 0xf,0x2d,0x6c, 0xf,0x2d,0x6d,
+  0xf,0x2d,0x6f, 0xf,0x2d,0x71, 0xf,0x2d,0x72, 0xf,0x2d,0x73,
+  0xf,0x2d,0x74, 0xf,0x2d,0x75, 0xf,0x2d,0x76, 0xf,0x2d,0x78,
+  0xf,0x2d,0x79, 0xf,0x2d,0x7a, 0xf,0x2d,0x7b, 0xf,0x2d,0x7c,
+  0x6,0x35,0x21, 0x6,0x35,0x3a, 0x6,0x35,0x3b, 0x6,0x35,0x33,
+  0x6,0x35,0x34, 0x5,0x2b,0x68, 0x6,0x35,0x39, 0xf,0x2d,0x77,
+  0xf,0x2d,0x70, 0x5,0x2b,0x6a, 0x5,0x2b,0x6d, 0x5,0x2b,0x75,
+  0x5,0x2b,0x71, 0x5,0x2b,0x73, 0x4,0x2b,0x60, 0x6,0x3d,0x2b,
+  0x6,0x3d,0x2d, 0x6,0x3d,0x2c, 0x4,0x30,0x49, 0x4,0x30,0x48,
+  0x6,0x3d,0x30, 0x6,0x3d,0x28, 0x5,0x31,0x21, 0x6,0x3d,0x33,
+  0x5,0x30,0x77, 0x6,0x3d,0x2e, 0x6,0x3d,0x27, 0x5,0x31,0x22,
+  0x5,0x30,0x76, 0x4,0x30,0x46, 0x6,0x3d,0x2a, 0x6,0x3d,0x31,
+  0x6,0x3d,0x37, 0x6,0x3d,0x32, 0x6,0x3d,0x29, 0x4,0x30,0x4b,
+  0x6,0x3d,0x34, 0xf,0x2d,0x69, 0xf,0x32,0x77, 0xf,0x32,0x78,
+  0xf,0x32,0x79, 0xf,0x32,0x7a, 0xf,0x32,0x7b, 0xf,0x32,0x7c,
+  0xf,0x32,0x7e, 0xf,0x33,0x21, 0xf,0x33,0x23, 0xf,0x33,0x24,
+  0xf,0x33,0x25, 0xf,0x33,0x26, 0xf,0x33,0x27, 0x6,0x46,0x37,
+  0x6,0x3d,0x38, 0x6,0x3e,0x65, 0x6,0x3d,0x39, 0x6,0x3d,0x2f,
+  0x5,0x30,0x7a, 0x6,0x43,0x63, 0x5,0x30,0x7d, 0x5,0x31,0x23,
+  0x6,0x3d,0x24, 0x6,0x3d,0x26, 0xf,0x32,0x7d, 0x5,0x30,0x79,
+  0x5,0x30,0x7e, 0x5,0x30,0x78, 0x6,0x3d,0x25, 0x6,0x3d,0x36,
+  0x5,0x30,0x7c, 0x6,0x46,0x49, 0x6,0x46,0x4f, 0x5,0x36,0x56,
+  0x5,0x36,0x51, 0x6,0x46,0x4c, 0x5,0x36,0x4e, 0x5,0x36,0x52,
+  0x5,0x36,0x63, 0x5,0x36,0x53, 0x6,0x46,0x48, 0x5,0x36,0x55,
+  0x5,0x36,0x50, 0x6,0x46,0x56, 0x4,0x36,0x35, 0x5,0x36,0x54,
+  0x6,0x46,0x52, 0x6,0x46,0x50, 0x6,0x46,0x4b, 0x6,0x46,0x4e,
+  0x6,0x46,0x53, 0xf,0x32,0x76, 0x6,0x46,0x58, 0x5,0x36,0x4f,
+  0x5,0x36,0x57, 0x6,0x46,0x47, 0xf,0x39,0x38, 0xf,0x39,0x39,
+  0xf,0x39,0x3a, 0xf,0x39,0x3b, 0xf,0x39,0x3c, 0xf,0x39,0x3d,
+  0xf,0x39,0x3e, 0xf,0x39,0x3f, 0x6,0x46,0x4d, 0x4,0x36,0x3b,
+  0x6,0x46,0x51, 0x6,0x46,0x54, 0x5,0x36,0x4d, 0x6,0x46,0x4a,
+  0x5,0x34,0x21, 0x6,0x50,0x5a, 0x4,0x42,0x38, 0x5,0x3d,0x5a,
+  0x5,0x3d,0x58, 0x6,0x50,0x53, 0x5,0x30,0x7b, 0x5,0x3d,0x5e,
+  0x5,0x3d,0x5c, 0x6,0x50,0x58, 0x5,0x3d,0x5b, 0x6,0x50,0x5f,
+  0x6,0x50,0x5d, 0x4,0x3c,0x2e, 0x6,0x50,0x5c, 0x6,0x50,0x62,
+  0x6,0x50,0x55, 0x4,0x3c,0x2f, 0x5,0x3d,0x60, 0x6,0x50,0x54,
+  0x5,0x3d,0x57, 0x6,0x50,0x57, 0x6,0x50,0x5e, 0xf,0x40,0x39,
+  0xf,0x40,0x3a, 0xf,0x40,0x3b, 0xf,0x40,0x3c, 0xf,0x40,0x3d,
+  0xf,0x40,0x3e, 0xf,0x40,0x3f, 0xf,0x40,0x40, 0xf,0x40,0x41,
+  0xf,0x40,0x42, 0xf,0x40,0x43, 0xf,0x40,0x44, 0xf,0x40,0x45,
+  0xf,0x40,0x46, 0x6,0x50,0x61, 0x6,0x56,0x4e, 0x6,0x50,0x59,
+  0x6,0x50,0x56, 0x6,0x46,0x57, 0x5,0x3d,0x59, 0x5,0x3d,0x5d,
+  0x5,0x3d,0x5f, 0x4,0x3c,0x2b, 0x6,0x50,0x60, 0x6,0x5a,0x71,
+  0x5,0x3d,0x61, 0x7,0x21,0x2e, 0x4,0x42,0x34, 0x5,0x44,0x56,
+  0x6,0x5a,0x64, 0x6,0x5a,0x69, 0x5,0x3d,0x62, 0x6,0x5a,0x6b,
+  0x4,0x42,0x39, 0x6,0x5a,0x74, 0x4,0x42,0x31, 0x6,0x5a,0x75,
+  0x6,0x5a,0x68, 0x6,0x5a,0x67, 0x6,0x5a,0x76, 0xf,0x46,0x43,
+  0xf,0x46,0x44, 0xf,0x46,0x45, 0xf,0x46,0x46, 0xf,0x46,0x47,
+  0xf,0x46,0x49, 0xf,0x46,0x4a, 0xf,0x46,0x4b, 0xf,0x46,0x4c,
+  0xf,0x46,0x4d, 0xf,0x46,0x4e, 0xf,0x46,0x4f, 0xf,0x46,0x51,
+  0xf,0x46,0x52, 0xf,0x46,0x53, 0xf,0x46,0x54, 0xf,0x46,0x56,
+  0xf,0x46,0x57, 0xf,0x46,0x58, 0xf,0x53,0x45, 0x7,0x26,0x2d,
+  0x5,0x44,0x58, 0x6,0x5a,0x77, 0x6,0x5e,0x57, 0x6,0x5a,0x6d,
+  0x6,0x5a,0x6f, 0x6,0x5a,0x65, 0xf,0x46,0x50, 0xf,0x46,0x48,
+  0xf,0x46,0x55, 0x4,0x42,0x30, 0x6,0x5a,0x66, 0x6,0x5a,0x6a,
+  0x6,0x5a,0x6e, 0x6,0x5a,0x70, 0x4,0x42,0x36, 0x5,0x3f,0x46,
+  0x4,0x48,0x7e, 0x4,0x48,0x7a, 0x6,0x5a,0x6c, 0x7,0x21,0x2f,
+  0x7,0x21,0x31, 0x7,0x21,0x29, 0x7,0x21,0x26, 0x7,0x21,0x25,
+  0x5,0x4b,0x77, 0x4,0x48,0x7c, 0x7,0x21,0x2b, 0x7,0x21,0x2c,
+  0x5,0x4b,0x73, 0x7,0x21,0x2a, 0x5,0x4b,0x79, 0x5,0x4b,0x78,
+  0x7,0x21,0x27, 0xf,0x4d,0x5a, 0xf,0x4d,0x5b, 0xf,0x4d,0x5c,
+  0xf,0x4d,0x5d, 0xf,0x4d,0x5e, 0xf,0x4d,0x60, 0xf,0x4d,0x61,
+  0x7,0x21,0x28, 0x5,0x4b,0x72, 0x7,0x21,0x2d, 0xf,0x4d,0x62,
+  0x4,0x49,0x21, 0x5,0x4b,0x75, 0x7,0x21,0x30, 0x5,0x4b,0x74,
+  0x5,0x4c,0x45, 0x5,0x53,0x54, 0x5,0x53,0x5a, 0x7,0x2c,0x40,
+  0x4,0x4f,0x58, 0x4,0x4f,0x5f, 0x5,0x53,0x58, 0x4,0x4f,0x5c,
+  0x4,0x4f,0x5e, 0x5,0x53,0x55, 0x5,0x53,0x56, 0xf,0x53,0x46,
+  0xf,0x53,0x47, 0xf,0x53,0x48, 0xf,0x53,0x49, 0xf,0x53,0x4a,
+  0x5,0x53,0x5b, 0x5,0x53,0x57, 0x7,0x36,0x78, 0x5,0x4b,0x76,
+  0x5,0x5a,0x6f, 0x5,0x5a,0x70, 0x4,0x55,0x67, 0x4,0x55,0x66,
+  0x7,0x36,0x76, 0xf,0x59,0x48, 0xf,0x59,0x4a, 0xf,0x59,0x4b,
+  0xf,0x59,0x4c, 0xf,0x59,0x4e, 0x7,0x36,0x75, 0x7,0x36,0x77,
+  0xf,0x59,0x49, 0x4,0x55,0x68, 0x7,0x36,0x74, 0x7,0x3e,0x76,
+  0x4,0x5a,0x6b, 0x4,0x5a,0x69, 0x4,0x5a,0x6a, 0x7,0x3e,0x78,
+  0x7,0x3e,0x77, 0xf,0x5e,0x30, 0xf,0x5e,0x31, 0xf,0x5e,0x2c,
+  0xf,0x5e,0x2e, 0xf,0x5e,0x2f, 0x7,0x3e,0x75, 0x5,0x61,0x31,
+  0x4,0x5a,0x6c, 0x5,0x61,0x2f, 0x5,0x61,0x30, 0x5,0x61,0x32,
+  0x5,0x67,0x4a, 0x5,0x67,0x4e, 0x4,0x63,0x2e, 0x5,0x67,0x4d,
+  0x5,0x67,0x4f, 0xf,0x61,0x7e, 0xf,0x62,0x21, 0x7,0x47,0x6f,
+  0x5,0x67,0x4c, 0x5,0x67,0x4b, 0x5,0x69,0x7c, 0x7,0x52,0x75,
+  0x7,0x4d,0x3c, 0xf,0x64,0x7a, 0x5,0x6b,0x6b, 0x7,0x4d,0x3b,
+  0x7,0x4d,0x68, 0x4,0x66,0x2f, 0x4,0x66,0x2e, 0x5,0x6f,0x68,
+  0x7,0x57,0x4e, 0x5,0x6b,0x6c, 0xf,0x67,0x3f, 0xf,0x67,0x7e,
+  0x4,0x66,0x2d, 0x7,0x57,0x4d, 0xf,0x69,0x38, 0xf,0x69,0x3a,
+  0xf,0x69,0x39, 0x5,0x73,0x31, 0x4,0x6a,0x40, 0x7,0x5b,0x45,
+  0xf,0x6a,0x4b, 0xf,0x6b,0x41, 0x5,0x75,0x62, 0x4,0x6d,0x52,
+  0xf,0x6c,0x49, 0x6,0x21,0x4d, 0x4,0x21,0x5c, 0x4,0x22,0x32,
+  0x6,0x23,0x53, 0x6,0x23,0x54, 0x6,0x25,0x75, 0x6,0x25,0x77,
+  0x6,0x25,0x78, 0x5,0x23,0x35, 0x6,0x25,0x76, 0x6,0x29,0x51,
+  0x6,0x29,0x50, 0x6,0x29,0x4f, 0x6,0x29,0x53, 0xf,0x25,0x53,
+  0x6,0x29,0x52, 0xf,0x25,0x52, 0x6,0x2e,0x67, 0x6,0x2e,0x68,
+  0x5,0x2b,0x76, 0xf,0x2d,0x7d, 0xf,0x2d,0x7e, 0xf,0x2e,0x21,
+  0x6,0x35,0x3c, 0xf,0x33,0x28, 0x5,0x31,0x24, 0x5,0x31,0x25,
+  0xf,0x33,0x29, 0xf,0x33,0x2a, 0x6,0x46,0x59, 0xf,0x39,0x40,
+  0xf,0x39,0x41, 0xf,0x39,0x42, 0x5,0x36,0x58, 0xf,0x39,0x43,
+  0xf,0x40,0x47, 0x6,0x50,0x63, 0xf,0x40,0x48, 0xf,0x46,0x59,
+  0xf,0x46,0x5a, 0x5,0x44,0x59, 0x7,0x21,0x34, 0x7,0x21,0x32,
+  0x5,0x4b,0x7b, 0xf,0x4d,0x63, 0xf,0x4d,0x64, 0x5,0x4b,0x7a,
+  0x7,0x21,0x33, 0x5,0x53,0x5c, 0x7,0x2c,0x41, 0xf,0x53,0x4b,
+  0xf,0x53,0x4c, 0xf,0x53,0x4d, 0xf,0x53,0x4e, 0x5,0x5a,0x71,
+  0xf,0x59,0x4f, 0xf,0x59,0x50, 0xf,0x59,0x51, 0x7,0x3e,0x79,
+  0x5,0x61,0x33, 0xf,0x5e,0x32, 0x7,0x46,0x29, 0x5,0x67,0x50,
+  0xf,0x64,0x7b, 0x5,0x67,0x51, 0x5,0x6b,0x6d, 0xf,0x67,0x41,
+  0xf,0x69,0x3b, 0xf,0x6a,0x4c, 0x5,0x77,0x53, 0xf,0x6b,0x42,
+  0x6,0x21,0x36, 0x5,0x21,0x36, 0x5,0x21,0x35, 0x6,0x22,0x37,
+  0x6,0x23,0x56, 0x6,0x23,0x55, 0x5,0x23,0x36, 0x6,0x25,0x79,
+  0x5,0x23,0x38, 0x5,0x28,0x25, 0x5,0x28,0x26, 0x4,0x2b,0x6a,
+  0x6,0x35,0x3d, 0xf,0x2e,0x22, 0xf,0x2e,0x23, 0x6,0x3d,0x3a,
+  0x6,0x46,0x5a, 0x6,0x50,0x64, 0x5,0x3d,0x63, 0x4,0x3c,0x31,
+  0x6,0x5a,0x78, 0x5,0x5a,0x72, 0x6,0x21,0x37, 0x6,0x21,0x4e,
+  0x5,0x21,0x37, 0x6,0x21,0x41, 0x6,0x21,0x59, 0x5,0x21,0x50,
+  0x6,0x23,0x3b, 0x4,0x22,0x35, 0x6,0x23,0x57, 0x6,0x25,0x7c,
+  0x6,0x25,0x7e, 0x5,0x23,0x39, 0xf,0x23,0x2d, 0x6,0x25,0x7a,
+  0x6,0x29,0x54, 0x6,0x2e,0x6b, 0x6,0x2e,0x69, 0x5,0x28,0x27,
+  0x6,0x2e,0x6a, 0x6,0x2e,0x4f, 0x6,0x30,0x7b, 0x6,0x35,0x40,
+  0x6,0x35,0x3f, 0x6,0x35,0x41, 0x6,0x35,0x3e, 0x6,0x3d,0x3b,
+  0x6,0x46,0x5d, 0x5,0x3d,0x64, 0xf,0x39,0x44, 0xf,0x39,0x45,
+  0x6,0x46,0x5b, 0x6,0x46,0x5c, 0x5,0x3d,0x65, 0x6,0x50,0x65,
+  0xf,0x40,0x49, 0xf,0x40,0x4a, 0x4,0x42,0x3a, 0x6,0x5a,0x79,
+  0xf,0x54,0x46, 0xf,0x53,0x4f, 0xf,0x53,0x50, 0x5,0x61,0x34,
+  0xf,0x5e,0x33, 0x7,0x46,0x2a, 0x7,0x46,0x2b, 0x4,0x21,0x2d,
+  0x6,0x21,0x4f, 0x6,0x21,0x51, 0x6,0x22,0x39, 0x4,0x21,0x5d,
+  0x6,0x22,0x38, 0x5,0x21,0x52, 0xf,0x21,0x46, 0x6,0x22,0x3a,
+  0x5,0x21,0x51, 0x6,0x23,0x5a, 0x6,0x23,0x58, 0x6,0x25,0x47,
+  0x6,0x26,0x23, 0x6,0x26,0x21, 0x6,0x26,0x22, 0x5,0x23,0x3a,
+  0x6,0x28,0x7a, 0x5,0x25,0x2c, 0x6,0x29,0x55, 0x6,0x29,0x56,
+  0x6,0x2e,0x6c, 0x6,0x35,0x42, 0x6,0x35,0x43, 0x5,0x2b,0x77,
+  0x5,0x2b,0x78, 0x6,0x3d,0x3d, 0x6,0x46,0x5f, 0x3,0x39,0x77,
+  0x6,0x46,0x5e, 0x4,0x3c,0x33, 0x5,0x3d,0x66, 0x6,0x5a,0x7b,
+  0x6,0x5a,0x7a, 0x7,0x21,0x35, 0x5,0x53,0x5d, 0x7,0x2c,0x42,
+  0xf,0x55,0x76, 0x4,0x5a,0x6d, 0xf,0x67,0x42, 0x7,0x57,0x4f,
+  0x5,0x21,0x38, 0x6,0x22,0x3b, 0xf,0x21,0x48, 0xf,0x21,0x49,
+  0x6,0x23,0x5b, 0x4,0x22,0x37, 0x5,0x22,0x29, 0xf,0x21,0x7b,
+  0xf,0x23,0x2e, 0xf,0x23,0x2f, 0x5,0x25,0x2d, 0xf,0x25,0x55,
+  0x6,0x2e,0x6d, 0x6,0x3d,0x3e, 0xf,0x2e,0x25, 0xf,0x2e,0x26,
+  0xf,0x2e,0x27, 0xf,0x2e,0x28, 0xf,0x2e,0x29, 0x5,0x31,0x27,
+  0x6,0x46,0x60, 0xf,0x39,0x47, 0xf,0x39,0x48, 0x6,0x46,0x61,
+  0xf,0x3a,0x5d, 0x6,0x50,0x66, 0x6,0x5a,0x7c, 0xf,0x46,0x5b,
+  0x5,0x4e,0x77, 0x7,0x2c,0x43, 0xf,0x59,0x52, 0xf,0x53,0x51,
+  0x7,0x3e,0x7a, 0x7,0x46,0x2c, 0x7,0x4d,0x3f, 0x5,0x6f,0x69,
+  0x5,0x75,0x63, 0xf,0x21,0x4a, 0x6,0x23,0x5c, 0xf,0x21,0x7d,
+  0xf,0x21,0x7e, 0x4,0x22,0x38, 0x5,0x23,0x3b, 0x6,0x26,0x24,
+  0x4,0x23,0x3c, 0xf,0x23,0x30, 0xf,0x23,0x31, 0xf,0x23,0x32,
+  0xf,0x23,0x33, 0xf,0x23,0x24, 0xf,0x22,0x7e, 0x4,0x25,0x41,
+  0x4,0x25,0x42, 0x6,0x29,0x58, 0x6,0x29,0x59, 0x5,0x25,0x2f,
+  0xf,0x25,0x57, 0x5,0x28,0x29, 0x4,0x28,0x41, 0x4,0x28,0x42,
+  0x5,0x28,0x2c, 0x5,0x28,0x28, 0x5,0x28,0x2a, 0x6,0x2e,0x6f,
+  0xf,0x29,0x3a, 0xf,0x29,0x3c, 0xf,0x29,0x3d, 0xf,0x29,0x3e,
+  0xf,0x29,0x3f, 0x6,0x2e,0x6e, 0x5,0x2b,0x7a, 0x4,0x2b,0x6b,
+  0x5,0x2b,0x79, 0x5,0x28,0x2b, 0x6,0x35,0x45, 0x5,0x2b,0x7b,
+  0xf,0x2e,0x2a, 0xf,0x2e,0x2b, 0x6,0x35,0x46, 0x5,0x31,0x28,
+  0x6,0x3d,0x3f, 0x6,0x3d,0x40, 0x4,0x30,0x4e, 0xf,0x33,0x2b,
+  0xf,0x33,0x2c, 0xf,0x33,0x2d, 0xf,0x33,0x2f, 0xf,0x33,0x30,
+  0x6,0x46,0x62, 0x5,0x36,0x5c, 0x5,0x36,0x5a, 0x5,0x36,0x5b,
+  0x5,0x36,0x59, 0x4,0x36,0x3e, 0xf,0x33,0x2e, 0x5,0x3d,0x6c,
+  0x5,0x3d,0x67, 0x5,0x3d,0x69, 0x5,0x3d,0x6a, 0x5,0x3d,0x68,
+  0x5,0x3d,0x6b, 0x6,0x50,0x67, 0x6,0x5a,0x7d, 0x5,0x4c,0x21,
+  0x5,0x44,0x5a, 0x7,0x21,0x37, 0xf,0x46,0x5d, 0xf,0x46,0x5e,
+  0x5,0x4b,0x7e, 0x5,0x4b,0x7d, 0x5,0x4b,0x7c, 0x7,0x21,0x36,
+  0xf,0x4d,0x67, 0xf,0x53,0x53, 0x7,0x2c,0x45, 0xf,0x4d,0x66,
+  0xf,0x53,0x52, 0x4,0x55,0x6a, 0x7,0x2c,0x46, 0x5,0x5a,0x73,
+  0xf,0x59,0x53, 0xf,0x59,0x54, 0x5,0x61,0x36, 0x5,0x61,0x35,
+  0x5,0x61,0x37, 0xf,0x5e,0x34, 0x7,0x3e,0x7b, 0x5,0x67,0x52,
+  0x5,0x67,0x53, 0x7,0x52,0x76, 0x5,0x73,0x32, 0x4,0x21,0x29,
+  0x6,0x21,0x52, 0xf,0x21,0x2a, 0xf,0x21,0x2b, 0xf,0x21,0x2c,
+  0xf,0x21,0x2e, 0x6,0x21,0x5c, 0xf,0x21,0x2d, 0x5,0x21,0x53,
+  0x6,0x22,0x3d, 0x4,0x21,0x5f, 0x6,0x23,0x5e, 0x6,0x23,0x5d,
+  0x6,0x23,0x5f, 0x6,0x23,0x60, 0xf,0x21,0x4b, 0x6,0x26,0x27,
+  0x6,0x26,0x25, 0x6,0x26,0x26, 0xf,0x23,0x34, 0xf,0x23,0x35,
+  0x4,0x25,0x46, 0x6,0x29,0x5a, 0x4,0x25,0x44, 0x6,0x29,0x5b,
+  0x6,0x29,0x5c, 0x6,0x29,0x5d, 0xf,0x25,0x58, 0xf,0x25,0x59,
+  0x6,0x2e,0x72, 0x6,0x2e,0x70, 0x6,0x2e,0x71, 0x6,0x35,0x47,
+  0xf,0x2e,0x2c, 0x6,0x37,0x27, 0x6,0x3d,0x42, 0x6,0x3d,0x43,
+  0x6,0x3d,0x41, 0xf,0x33,0x31, 0xf,0x33,0x32, 0xf,0x33,0x33,
+  0x6,0x46,0x63, 0x6,0x46,0x66, 0xf,0x39,0x49, 0x6,0x46,0x64,
+  0xf,0x39,0x4a, 0xf,0x46,0x5f, 0xf,0x46,0x60, 0xf,0x46,0x61,
+  0xf,0x4d,0x68, 0x7,0x2c,0x47, 0xf,0x53,0x54, 0xf,0x53,0x55,
+  0xf,0x53,0x43, 0xf,0x59,0x55, 0xf,0x5e,0x35, 0xf,0x67,0x43,
+  0x4,0x21,0x2e, 0x5,0x21,0x39, 0x6,0x21,0x53, 0x6,0x21,0x54,
+  0x6,0x22,0x3f, 0x5,0x21,0x54, 0x6,0x22,0x3e, 0xf,0x21,0x4c,
+  0x6,0x23,0x65, 0x6,0x23,0x61, 0x6,0x23,0x62, 0x6,0x23,0x63,
+  0xf,0x22,0x21, 0x5,0x22,0x2a, 0x6,0x26,0x28, 0xf,0x23,0x36,
+  0x6,0x29,0x60, 0x6,0x29,0x5f, 0x6,0x2e,0x73, 0x6,0x2e,0x74,
+  0x6,0x34,0x7a, 0x6,0x35,0x48, 0x6,0x3d,0x44, 0x6,0x3d,0x45,
+  0x5,0x36,0x5d, 0x6,0x5a,0x7e, 0xf,0x46,0x62, 0x7,0x21,0x70,
+  0x7,0x36,0x7b, 0x5,0x5a,0x76, 0x5,0x67,0x54, 0x7,0x4e,0x3e,
+  0x6,0x21,0x39, 0x4,0x21,0x40, 0x6,0x21,0x55, 0x5,0x21,0x3a,
+  0x5,0x21,0x3b, 0x6,0x21,0x56, 0x4,0x21,0x41, 0xf,0x21,0x2f,
+  0x6,0x21,0x57, 0x5,0x21,0x55, 0x5,0x21,0x56, 0x4,0x21,0x62,
+  0x6,0x22,0x44, 0x5,0x21,0x57, 0x6,0x22,0x43, 0x6,0x22,0x40,
+  0x6,0x22,0x45, 0x4,0x22,0x3a, 0x6,0x23,0x6a, 0x5,0x22,0x2e,
+  0x5,0x22,0x2c, 0x5,0x22,0x2b, 0x4,0x22,0x3b, 0x4,0x22,0x39,
+  0x6,0x23,0x68, 0x6,0x23,0x67, 0x5,0x22,0x2f, 0x6,0x23,0x6b,
+  0x6,0x23,0x69, 0x5,0x22,0x2d, 0x4,0x22,0x3d, 0xf,0x22,0x22,
+  0xf,0x22,0x23, 0x4,0x22,0x3e, 0x6,0x23,0x66, 0x4,0x23,0x41,
+  0x6,0x26,0x2b, 0x4,0x23,0x43, 0x5,0x23,0x3d, 0x4,0x23,0x42,
+  0x5,0x23,0x46, 0x5,0x23,0x45, 0x5,0x23,0x43, 0x5,0x23,0x40,
+  0x6,0x26,0x29, 0x5,0x23,0x3f, 0x5,0x23,0x42, 0x5,0x23,0x41,
+  0x6,0x26,0x2a, 0x6,0x26,0x2c, 0x5,0x23,0x3e, 0x5,0x23,0x44,
+  0x6,0x29,0x69, 0x5,0x25,0x33, 0x5,0x25,0x35, 0x4,0x25,0x49,
+  0x4,0x25,0x4b, 0x3,0x27,0x5c, 0x6,0x29,0x66, 0x4,0x25,0x4d,
+  0x6,0x29,0x64, 0x6,0x29,0x65, 0x6,0x29,0x6c, 0x6,0x2e,0x75,
+  0x6,0x29,0x6a, 0x5,0x25,0x30, 0x5,0x25,0x36, 0x6,0x29,0x6b,
+  0x5,0x25,0x32, 0x6,0x29,0x67, 0x5,0x25,0x34, 0xf,0x25,0x5a,
+  0xf,0x25,0x5b, 0xf,0x25,0x5c, 0xf,0x25,0x5d, 0x6,0x29,0x68,
+  0x6,0x29,0x62, 0x6,0x29,0x61, 0x5,0x25,0x31, 0x6,0x29,0x57,
+  0x4,0x28,0x47, 0x5,0x28,0x2d, 0x4,0x28,0x45, 0x6,0x2f,0x24,
+  0x6,0x2e,0x7b, 0x6,0x2f,0x22, 0x4,0x28,0x48, 0x6,0x2f,0x21,
+  0x4,0x28,0x44, 0x4,0x28,0x46, 0x6,0x2e,0x78, 0x6,0x2e,0x7e,
+  0x6,0x2f,0x23, 0x6,0x2e,0x7a, 0x6,0x2e,0x7d, 0x6,0x2e,0x7c,
+  0xf,0x29,0x40, 0xf,0x29,0x41, 0xf,0x29,0x42, 0x6,0x2e,0x79,
+  0x5,0x28,0x2e, 0x6,0x2e,0x77, 0x6,0x35,0x49, 0x4,0x2b,0x70,
+  0x4,0x2b,0x6d, 0x5,0x2c,0x25, 0x5,0x2c,0x23, 0x4,0x2b,0x6f,
+  0x4,0x2b,0x73, 0x6,0x35,0x4e, 0x6,0x35,0x52, 0x5,0x2c,0x22,
+  0x6,0x35,0x53, 0x4,0x2b,0x6c, 0x5,0x2c,0x26, 0x6,0x35,0x51,
+  0x4,0x2b,0x71, 0x6,0x35,0x50, 0x6,0x35,0x4f, 0x6,0x35,0x4c,
+  0x6,0x35,0x4b, 0x4,0x2b,0x72, 0x5,0x2c,0x24, 0x6,0x35,0x4d,
+  0xf,0x2e,0x33, 0x6,0x35,0x54, 0xf,0x2e,0x2e, 0xf,0x2e,0x2f,
+  0xf,0x2e,0x30, 0xf,0x2e,0x32, 0xf,0x2e,0x31, 0x6,0x35,0x4a,
+  0x5,0x2c,0x27, 0x5,0x2b,0x7d, 0x5,0x2c,0x21, 0x5,0x2b,0x7e,
+  0x4,0x30,0x50, 0x5,0x31,0x2b, 0x4,0x30,0x51, 0x5,0x31,0x2a,
+  0x6,0x3d,0x46, 0x4,0x30,0x56, 0x4,0x36,0x49, 0x4,0x30,0x55,
+  0x6,0x3d,0x49, 0x6,0x3d,0x47, 0x5,0x36,0x5e, 0x4,0x30,0x4f,
+  0x5,0x2c,0x28, 0xf,0x33,0x34, 0xf,0x33,0x35, 0xf,0x33,0x37,
+  0x6,0x3d,0x48, 0x6,0x3d,0x4a, 0x6,0x3d,0x4b, 0x4,0x36,0x43,
+  0x5,0x36,0x5f, 0x6,0x46,0x6d, 0x6,0x46,0x69, 0x4,0x36,0x46,
+  0x4,0x36,0x47, 0x5,0x36,0x60, 0x5,0x36,0x64, 0x4,0x36,0x4a,
+  0x4,0x36,0x44, 0x4,0x36,0x41, 0x4,0x36,0x40, 0x6,0x46,0x6b,
+  0x6,0x46,0x68, 0x6,0x46,0x6c, 0x5,0x36,0x61, 0x5,0x36,0x62,
+  0x6,0x46,0x6a, 0xf,0x39,0x4b, 0xf,0x39,0x4c, 0xf,0x39,0x4d,
+  0xf,0x39,0x4e, 0x4,0x36,0x48, 0x6,0x4c,0x46, 0x6,0x46,0x6e,
+  0x5,0x36,0x65, 0x4,0x3c,0x39, 0x6,0x50,0x6f, 0x5,0x3d,0x73,
+  0x6,0x50,0x6d, 0x4,0x3c,0x35, 0x5,0x3d,0x74, 0x6,0x50,0x6e,
+  0x5,0x3d,0x6d, 0x4,0x3c,0x37, 0x4,0x3c,0x36, 0x5,0x3d,0x6e,
+  0x4,0x3c,0x3a, 0x5,0x3d,0x6f, 0x6,0x50,0x6b, 0xf,0x40,0x4b,
+  0x6,0x50,0x6a, 0x6,0x50,0x68, 0x6,0x50,0x70, 0x6,0x50,0x69,
+  0x5,0x3d,0x72, 0x5,0x3d,0x71, 0xf,0x40,0x4c, 0x5,0x44,0x5b,
+  0x4,0x42,0x3b, 0x6,0x5b,0x24, 0x5,0x44,0x61, 0x6,0x5b,0x22,
+  0x6,0x5b,0x21, 0x4,0x3c,0x38, 0x4,0x42,0x40, 0x5,0x44,0x62,
+  0x5,0x44,0x5c, 0x5,0x44,0x5f, 0x4,0x42,0x3d, 0x4,0x42,0x44,
+  0x6,0x5b,0x2b, 0x6,0x5b,0x29, 0x6,0x5b,0x28, 0x5,0x44,0x5e,
+  0x5,0x4c,0x22, 0x6,0x5b,0x26, 0x5,0x44,0x5d, 0x6,0x5b,0x2a,
+  0x5,0x44,0x60, 0x6,0x5b,0x25, 0xf,0x46,0x63, 0xf,0x46,0x64,
+  0xf,0x46,0x65, 0x6,0x5b,0x23, 0x6,0x5b,0x27, 0x5,0x4c,0x23,
+  0x5,0x4c,0x27, 0x4,0x49,0x24, 0x5,0x4c,0x24, 0x5,0x4c,0x26,
+  0x7,0x21,0x3c, 0x7,0x21,0x3d, 0x7,0x21,0x3a, 0x7,0x21,0x3e,
+  0x7,0x21,0x3b, 0x5,0x4c,0x25, 0x7,0x21,0x38, 0x7,0x22,0x5a,
+  0x7,0x21,0x39, 0x4,0x4f,0x60, 0x7,0x2c,0x49, 0x5,0x5a,0x77,
+  0x7,0x2c,0x4a, 0x7,0x2c,0x4e, 0x7,0x2c,0x4d, 0x7,0x2c,0x4c,
+  0x5,0x53,0x5f, 0x5,0x53,0x61, 0x5,0x53,0x60, 0x5,0x53,0x5e,
+  0x7,0x2c,0x48, 0x7,0x2c,0x4b, 0x7,0x21,0x3f, 0xf,0x53,0x56,
+  0x5,0x58,0x51, 0x5,0x5a,0x7a, 0x4,0x55,0x6b, 0x5,0x5a,0x79,
+  0x5,0x5a,0x78, 0x7,0x36,0x7c, 0xf,0x59,0x56, 0x4,0x55,0x6e,
+  0x7,0x3e,0x7c, 0x5,0x61,0x38, 0x5,0x61,0x39, 0x7,0x36,0x7d,
+  0xf,0x5e,0x36, 0x5,0x61,0x3a, 0x7,0x46,0x2f, 0x7,0x46,0x2e,
+  0x7,0x46,0x2d, 0x7,0x4d,0x40, 0x7,0x4d,0x41, 0x5,0x6f,0x6a,
+  0x7,0x52,0x77, 0xf,0x67,0x44, 0x5,0x75,0x64, 0x4,0x6b,0x65,
+  0x7,0x62,0x2d, 0x7,0x62,0x2c, 0x6,0x21,0x3a, 0x5,0x21,0x3c,
+  0x6,0x21,0x58, 0x4,0x21,0x63, 0x5,0x21,0x59, 0x5,0x21,0x58,
+  0x5,0x22,0x31, 0x5,0x22,0x32, 0xf,0x22,0x25, 0xf,0x22,0x26,
+  0xf,0x22,0x27, 0xf,0x22,0x28, 0x5,0x22,0x33, 0x6,0x26,0x2e,
+  0x4,0x23,0x45, 0x5,0x23,0x47, 0xf,0x23,0x38, 0xf,0x23,0x3a,
+  0xf,0x23,0x3b, 0x6,0x26,0x2d, 0x4,0x23,0x49, 0x5,0x25,0x3d,
+  0x5,0x25,0x39, 0x6,0x29,0x6d, 0x5,0x25,0x3c, 0x6,0x29,0x6e,
+  0xf,0x25,0x60, 0xf,0x25,0x61, 0xf,0x25,0x62, 0xf,0x25,0x63,
+  0x5,0x28,0x30, 0x4,0x28,0x4a, 0x6,0x2f,0x26, 0x5,0x28,0x31,
+  0x5,0x28,0x2f, 0x6,0x2f,0x28, 0xf,0x29,0x43, 0xf,0x29,0x44,
+  0xf,0x29,0x45, 0x6,0x35,0x55, 0x6,0x35,0x59, 0x4,0x2b,0x74,
+  0x5,0x2c,0x2d, 0x5,0x2c,0x29, 0x5,0x2c,0x2b, 0x5,0x2c,0x2c,
+  0x5,0x2c,0x2a, 0xf,0x2e,0x34, 0xf,0x2e,0x35, 0x6,0x35,0x56,
+  0x6,0x35,0x57, 0x5,0x31,0x2d, 0x6,0x3d,0x4e, 0x6,0x3d,0x4c,
+  0x6,0x3d,0x4f, 0x6,0x3d,0x50, 0x6,0x3d,0x51, 0xf,0x33,0x38,
+  0xf,0x33,0x39, 0x6,0x3d,0x4d, 0x5,0x36,0x69, 0x5,0x36,0x66,
+  0x5,0x36,0x68, 0x5,0x36,0x6b, 0x5,0x36,0x67, 0xf,0x39,0x4f,
+  0xf,0x39,0x50, 0x6,0x46,0x6f, 0x6,0x46,0x70, 0x6,0x46,0x71,
+  0x5,0x3d,0x76, 0x5,0x3d,0x75, 0x4,0x3c,0x3b, 0x6,0x50,0x72,
+  0x6,0x50,0x71, 0xf,0x40,0x4d, 0x5,0x3d,0x77, 0x4,0x42,0x46,
+  0x5,0x44,0x66, 0x5,0x44,0x64, 0x5,0x44,0x65, 0x5,0x44,0x69,
+  0x4,0x42,0x45, 0x5,0x44,0x68, 0x6,0x5b,0x2e, 0xf,0x46,0x66,
+  0x6,0x5b,0x2c, 0x6,0x5b,0x2d, 0x5,0x4c,0x2b, 0x5,0x4c,0x28,
+  0x4,0x49,0x26, 0x5,0x4c,0x29, 0x5,0x4c,0x2a, 0x7,0x2c,0x4f,
+  0x5,0x5a,0x7c, 0xf,0x53,0x57, 0x5,0x5a,0x7b, 0x5,0x5a,0x7d,
+  0x7,0x36,0x7e, 0x7,0x37,0x22, 0x7,0x37,0x21, 0x5,0x61,0x3c,
+  0x7,0x3e,0x7e, 0x7,0x3f,0x21, 0x5,0x67,0x56, 0x5,0x67,0x55,
+  0x7,0x4d,0x42, 0x5,0x6f,0x6b, 0x7,0x5b,0x46, 0x5,0x75,0x65,
+  0x4,0x6c,0x6b, 0x7,0x66,0x3b, 0x5,0x21,0x3d, 0x6,0x22,0x47,
+  0x6,0x22,0x48, 0x5,0x22,0x35, 0x5,0x22,0x34, 0x5,0x22,0x36,
+  0xf,0x22,0x2a, 0x6,0x26,0x2f, 0x5,0x23,0x48, 0x5,0x23,0x49,
+  0x4,0x25,0x52, 0x6,0x29,0x71, 0x6,0x29,0x70, 0xf,0x25,0x64,
+  0xf,0x25,0x65, 0x6,0x2f,0x2a, 0x4,0x28,0x4c, 0x6,0x2f,0x2b,
+  0x6,0x2f,0x2c, 0xf,0x29,0x46, 0x6,0x2f,0x29, 0x4,0x2b,0x76,
+  0x6,0x35,0x5c, 0x6,0x35,0x5b, 0x6,0x35,0x5e, 0x6,0x35,0x5f,
+  0x6,0x35,0x5a, 0x6,0x35,0x5d, 0x5,0x2c,0x2f, 0x4,0x30,0x5d,
+  0x6,0x3d,0x52, 0x5,0x2c,0x2e, 0x5,0x31,0x2e, 0x5,0x31,0x2f,
+  0x6,0x3d,0x53, 0x4,0x36,0x4e, 0xf,0x39,0x51, 0x6,0x50,0x73,
+  0x4,0x30,0x5b, 0x5,0x3d,0x79, 0xf,0x40,0x4e, 0xf,0x40,0x4f,
+  0x6,0x5b,0x2f, 0x4,0x42,0x47, 0x5,0x44,0x6a, 0x5,0x44,0x6b,
+  0xf,0x46,0x67, 0xf,0x4d,0x69, 0x4,0x4f,0x65, 0x7,0x2c,0x50,
+  0x7,0x2c,0x51, 0x7,0x37,0x23, 0x7,0x37,0x24, 0x5,0x5a,0x7e,
+  0x7,0x4d,0x43, 0x6,0x21,0x2a, 0x4,0x21,0x42, 0x6,0x22,0x4a,
+  0x6,0x26,0x30, 0x6,0x26,0x33, 0x5,0x23,0x4a, 0x6,0x26,0x31,
+  0x6,0x26,0x32, 0x4,0x28,0x4d, 0x6,0x2f,0x2f, 0x6,0x2f,0x31,
+  0x6,0x2f,0x2d, 0x6,0x2f,0x2e, 0x6,0x2f,0x30, 0x6,0x3d,0x54,
+  0x6,0x35,0x60, 0xf,0x2e,0x36, 0xf,0x2e,0x37, 0x6,0x35,0x24,
+  0x6,0x46,0x72, 0xf,0x39,0x52, 0x4,0x3c,0x3d, 0xf,0x46,0x68,
+  0x7,0x3f,0x22, 0x5,0x6d,0x32, 0x6,0x21,0x2b, 0xf,0x21,0x31,
+  0x5,0x22,0x37, 0x6,0x23,0x6e, 0x4,0x22,0x43, 0x6,0x23,0x6d,
+  0x6,0x26,0x34, 0x4,0x23,0x4a, 0x6,0x26,0x35, 0xf,0x23,0x3c,
+  0x6,0x29,0x73, 0x5,0x25,0x3e, 0x5,0x25,0x3f, 0x4,0x28,0x4f,
+  0x6,0x2f,0x34, 0x5,0x28,0x33, 0x6,0x2f,0x33, 0x5,0x28,0x32,
+  0x6,0x2f,0x32, 0x6,0x2f,0x37, 0x6,0x2f,0x35, 0xf,0x29,0x47,
+  0x5,0x2c,0x30, 0x6,0x35,0x62, 0x6,0x35,0x61, 0x5,0x2c,0x31,
+  0x6,0x3d,0x55, 0xf,0x33,0x3a, 0x4,0x36,0x4f, 0x6,0x50,0x75,
+  0x6,0x46,0x73, 0x6,0x35,0x63, 0x5,0x3d,0x7a, 0x4,0x42,0x48,
+  0x6,0x5b,0x31, 0x6,0x5b,0x30, 0x5,0x4c,0x2c, 0x5,0x4c,0x2d,
+  0x5,0x4c,0x2e, 0xf,0x4d,0x6a, 0x5,0x53,0x64, 0x7,0x37,0x25,
+  0xf,0x5e,0x37, 0x4,0x5f,0x4b, 0x7,0x3f,0x23, 0x7,0x4d,0x44,
+  0x7,0x60,0x69, 0x7,0x64,0x43, 0xf,0x21,0x32, 0x5,0x22,0x38,
+  0x6,0x23,0x6f, 0x5,0x23,0x4c, 0x6,0x26,0x37, 0xf,0x23,0x3d,
+  0xf,0x25,0x66, 0x6,0x2f,0x36, 0x5,0x28,0x34, 0x6,0x35,0x64,
+  0xf,0x46,0x69, 0x7,0x4d,0x45, 0x7,0x57,0x50, 0x6,0x21,0x5a,
+  0x5,0x21,0x5a, 0x5,0x21,0x5b, 0x6,0x22,0x4b, 0x6,0x23,0x70,
+  0x4,0x22,0x44, 0x4,0x22,0x45, 0x6,0x23,0x73, 0x6,0x23,0x72,
+  0x5,0x22,0x3a, 0x5,0x22,0x39, 0x6,0x23,0x74, 0x6,0x26,0x39,
+  0x5,0x23,0x4d, 0x6,0x26,0x3a, 0x6,0x23,0x75, 0x6,0x26,0x3b,
+  0xf,0x23,0x3e, 0x5,0x25,0x40, 0x6,0x29,0x74, 0x6,0x29,0x77,
+  0x6,0x29,0x78, 0x6,0x29,0x76, 0xf,0x25,0x67, 0xf,0x25,0x69,
+  0xf,0x25,0x6a, 0xf,0x25,0x6b, 0xf,0x25,0x68, 0x6,0x29,0x75,
+  0x6,0x35,0x65, 0x6,0x35,0x66, 0xf,0x2e,0x38, 0xf,0x2e,0x39,
+  0x4,0x30,0x63, 0x4,0x30,0x61, 0x4,0x30,0x62, 0xf,0x33,0x3b,
+  0xf,0x39,0x53, 0xf,0x39,0x54, 0x6,0x50,0x78, 0x6,0x50,0x77,
+  0x6,0x50,0x79, 0x6,0x50,0x7b, 0xf,0x40,0x50, 0xf,0x46,0x6a,
+  0xf,0x46,0x6b, 0x5,0x4c,0x2f, 0xf,0x4d,0x6b, 0xf,0x4d,0x6c,
+  0x7,0x21,0x40, 0x7,0x37,0x26, 0xf,0x5e,0x38, 0x7,0x46,0x30,
+  0x7,0x52,0x78, 0x7,0x60,0x6a, 0x7,0x62,0x2e, 0x6,0x22,0x4c,
+  0x6,0x23,0x77, 0x6,0x23,0x76, 0x6,0x23,0x78, 0x4,0x23,0x4c,
+  0x5,0x23,0x4f, 0x5,0x23,0x4e, 0x6,0x26,0x3c, 0x4,0x25,0x55,
+  0x4,0x25,0x54, 0x6,0x29,0x7c, 0x6,0x29,0x7b, 0x6,0x29,0x7d,
+  0x6,0x29,0x7a, 0x6,0x29,0x7e, 0x6,0x29,0x79, 0xf,0x25,0x6c,
+  0x6,0x2a,0x22, 0x4,0x28,0x52, 0x4,0x28,0x51, 0x5,0x28,0x37,
+  0xf,0x29,0x48, 0xf,0x29,0x49, 0xf,0x29,0x4a, 0xf,0x29,0x4b,
+  0x6,0x2f,0x39, 0x6,0x35,0x68, 0x4,0x2b,0x79, 0x5,0x2c,0x32,
+  0x6,0x35,0x67, 0x6,0x35,0x6a, 0x6,0x3c,0x7a, 0x6,0x35,0x69,
+  0x6,0x3d,0x57, 0x6,0x3d,0x56, 0x6,0x35,0x6b, 0x6,0x3d,0x58,
+  0x6,0x46,0x75, 0x6,0x46,0x76, 0x6,0x46,0x77, 0x5,0x37,0x3f,
+  0x6,0x50,0x7c, 0x5,0x44,0x6d, 0x6,0x5b,0x32, 0x7,0x21,0x41,
+  0xf,0x53,0x58, 0x7,0x63,0x4b, 0x5,0x21,0x3e, 0x4,0x21,0x43,
+  0xf,0x21,0x34, 0x6,0x21,0x5b, 0x4,0x22,0x46, 0x6,0x2a,0x24,
+  0x6,0x23,0x7a, 0x6,0x23,0x79, 0x4,0x23,0x4e, 0x6,0x2f,0x3b,
+  0x5,0x28,0x38, 0x6,0x2f,0x3a, 0x4,0x28,0x53, 0x6,0x35,0x6c,
+  0x6,0x2f,0x3c, 0x6,0x46,0x78, 0x5,0x2c,0x33, 0x5,0x3d,0x7b,
+  0x6,0x50,0x7d, 0x5,0x44,0x6e, 0x7,0x3f,0x24, 0x5,0x21,0x3f,
+  0x5,0x21,0x5c, 0x6,0x23,0x7b, 0x6,0x22,0x4f, 0x6,0x22,0x4d,
+  0x6,0x22,0x50, 0x5,0x21,0x5d, 0x4,0x22,0x47, 0x5,0x22,0x3b,
+  0x6,0x23,0x7c, 0x6,0x23,0x7d, 0x5,0x22,0x3f, 0x5,0x22,0x40,
+  0x5,0x22,0x3d, 0x5,0x22,0x3e, 0xf,0x22,0x2d, 0x6,0x26,0x3e,
+  0x5,0x23,0x50, 0x6,0x26,0x3d, 0x5,0x23,0x51, 0x6,0x25,0x5e,
+  0xf,0x23,0x3f, 0x6,0x2a,0x27, 0x6,0x2a,0x26, 0x6,0x2a,0x29,
+  0x6,0x2a,0x28, 0x5,0x25,0x41, 0x4,0x25,0x58, 0xf,0x25,0x6d,
+  0xf,0x25,0x6e, 0x6,0x2a,0x25, 0x5,0x28,0x39, 0x4,0x28,0x54,
+  0x6,0x2f,0x46, 0x6,0x2f,0x41, 0x6,0x2f,0x44, 0x6,0x2f,0x45,
+  0x6,0x2f,0x40, 0x6,0x2f,0x3e, 0x6,0x2f,0x42, 0x6,0x2f,0x43,
+  0xf,0x29,0x4d, 0xf,0x29,0x4e, 0x4,0x28,0x55, 0x6,0x2f,0x3f,
+  0x6,0x35,0x73, 0x6,0x35,0x74, 0x4,0x2b,0x7b, 0x5,0x2c,0x34,
+  0x4,0x2b,0x7c, 0x6,0x35,0x6f, 0x6,0x35,0x6d, 0x6,0x35,0x70,
+  0x6,0x35,0x72, 0x6,0x35,0x71, 0x6,0x35,0x6e, 0x5,0x2c,0x35,
+  0xf,0x2e,0x3a, 0xf,0x2e,0x3b, 0x6,0x3d,0x60, 0x6,0x3d,0x5b,
+  0x4,0x30,0x67, 0x6,0x3d,0x5f, 0x6,0x3d,0x5c, 0x6,0x3d,0x5d,
+  0xf,0x33,0x3d, 0x5,0x31,0x30, 0x6,0x3d,0x5e, 0x4,0x30,0x66,
+  0x4,0x36,0x52, 0x6,0x46,0x7c, 0x6,0x46,0x7a, 0x4,0x36,0x53,
+  0x6,0x46,0x7b, 0x6,0x46,0x79, 0x6,0x46,0x7d, 0xf,0x39,0x55,
+  0x6,0x46,0x7e, 0x5,0x3d,0x7c, 0x5,0x3d,0x7d, 0x6,0x51,0x24,
+  0x6,0x51,0x23, 0x6,0x50,0x7e, 0xf,0x40,0x51, 0x6,0x51,0x21,
+  0x4,0x3c,0x3f, 0x4,0x42,0x49, 0x6,0x5b,0x34, 0x6,0x5b,0x37,
+  0x6,0x5b,0x33, 0x6,0x5b,0x38, 0x5,0x44,0x6f, 0xf,0x46,0x6d,
+  0xf,0x46,0x6e, 0x6,0x5b,0x36, 0x6,0x5b,0x39, 0x6,0x5b,0x3b,
+  0x6,0x5b,0x3a, 0x6,0x5b,0x35, 0x7,0x21,0x43, 0x4,0x49,0x28,
+  0x5,0x4c,0x30, 0x7,0x21,0x44, 0x7,0x21,0x42, 0xf,0x4d,0x6d,
+  0x7,0x25,0x48, 0x5,0x53,0x65, 0x7,0x2c,0x53, 0x7,0x2c,0x52,
+  0xf,0x53,0x59, 0xf,0x53,0x5a, 0x7,0x3b,0x4d, 0xf,0x5e,0x39,
+  0xf,0x5e,0x3a, 0xf,0x5e,0x3b, 0xf,0x64,0x7c, 0x7,0x4e,0x27,
+  0x7,0x52,0x79, 0x5,0x77,0x54, 0x7,0x5e,0x50, 0x7,0x65,0x33,
+  0x7,0x66,0x33, 0x5,0x21,0x2e, 0x6,0x21,0x3c, 0x6,0x21,0x3d,
+  0x6,0x21,0x5d, 0x6,0x22,0x52, 0x6,0x22,0x51, 0x4,0x22,0x4a,
+  0x6,0x24,0x23, 0x6,0x24,0x21, 0xf,0x22,0x2e, 0x4,0x22,0x49,
+  0x6,0x24,0x22, 0x6,0x26,0x40, 0xf,0x23,0x40, 0x5,0x23,0x3c,
+  0x6,0x2a,0x2c, 0x6,0x2a,0x2b, 0x6,0x2a,0x2d, 0x6,0x2a,0x2e,
+  0x6,0x2f,0x47, 0x6,0x2f,0x48, 0x4,0x28,0x56, 0xf,0x29,0x4f,
+  0x6,0x35,0x76, 0x6,0x35,0x75, 0x6,0x36,0x49, 0x6,0x35,0x2e,
+  0x5,0x36,0x6c, 0x6,0x47,0x22, 0x6,0x47,0x24, 0x6,0x4d,0x62,
+  0xf,0x39,0x56, 0x6,0x47,0x23, 0x5,0x3e,0x21, 0x6,0x51,0x25,
+  0x5,0x3d,0x7e, 0xf,0x40,0x52, 0x6,0x5b,0x3c, 0xf,0x46,0x6f,
+  0x6,0x60,0x72, 0x7,0x21,0x45, 0x5,0x53,0x66, 0xf,0x59,0x57,
+  0x7,0x4b,0x6a, 0x6,0x21,0x60, 0x5,0x21,0x40, 0x6,0x21,0x5e,
+  0x5,0x21,0x42, 0x6,0x21,0x62, 0x6,0x21,0x5f, 0x6,0x22,0x55,
+  0x4,0x21,0x68, 0x5,0x21,0x5e, 0x6,0x22,0x56, 0x5,0x21,0x5f,
+  0x6,0x22,0x53, 0x6,0x22,0x54, 0x6,0x24,0x25, 0x4,0x22,0x4b,
+  0x6,0x24,0x24, 0x5,0x22,0x42, 0x6,0x24,0x26, 0x5,0x22,0x41,
+  0x6,0x24,0x27, 0x6,0x26,0x44, 0x6,0x26,0x42, 0x5,0x23,0x52,
+  0xf,0x23,0x41, 0xf,0x23,0x42, 0xf,0x23,0x43, 0xf,0x23,0x44,
+  0x4,0x23,0x50, 0x6,0x2a,0x31, 0x6,0x2a,0x2f, 0x6,0x2a,0x32,
+  0x6,0x2a,0x30, 0xf,0x25,0x6f, 0x6,0x2f,0x4d, 0x6,0x2f,0x4a,
+  0x6,0x2f,0x4c, 0x6,0x2f,0x4b, 0x6,0x2f,0x49, 0xf,0x29,0x51,
+  0xf,0x29,0x52, 0x6,0x32,0x72, 0x5,0x28,0x36, 0x6,0x35,0x7b,
+  0x5,0x2c,0x36, 0x6,0x35,0x7c, 0x6,0x35,0x79, 0x6,0x35,0x77,
+  0x6,0x35,0x7a, 0xf,0x2e,0x3c, 0xf,0x2e,0x3d, 0xf,0x2e,0x3e,
+  0xf,0x2e,0x3f, 0x6,0x3c,0x67, 0x6,0x3d,0x66, 0x6,0x3d,0x68,
+  0x5,0x31,0x32, 0x5,0x31,0x33, 0x6,0x3d,0x65, 0x6,0x3d,0x63,
+  0x6,0x3d,0x6b, 0x6,0x3d,0x64, 0x5,0x2c,0x37, 0x6,0x3d,0x62,
+  0x6,0x3d,0x69, 0x6,0x3d,0x6a, 0x6,0x3c,0x7c, 0x6,0x3d,0x67,
+  0x4,0x36,0x54, 0x5,0x36,0x6d, 0x6,0x47,0x27, 0x6,0x47,0x25,
+  0xf,0x33,0x3e, 0xf,0x39,0x57, 0xf,0x39,0x58, 0xf,0x39,0x59,
+  0xf,0x39,0x5a, 0x6,0x47,0x26, 0x4,0x3c,0x43, 0x4,0x3c,0x42,
+  0x6,0x51,0x27, 0x6,0x51,0x28, 0x6,0x51,0x26, 0x4,0x3c,0x41,
+  0x6,0x47,0x28, 0x6,0x51,0x5b, 0x6,0x51,0x29, 0x6,0x5f,0x21,
+  0x6,0x5b,0x3e, 0x6,0x5b,0x3d, 0x5,0x44,0x70, 0x6,0x53,0x7b,
+  0xf,0x4d,0x55, 0x5,0x4c,0x33, 0x5,0x4c,0x34, 0xf,0x46,0x70,
+  0x5,0x4c,0x32, 0x7,0x2c,0x55, 0xf,0x53,0x5b, 0x3,0x50,0x39,
+  0x5,0x54,0x2e, 0x7,0x2c,0x54, 0x7,0x37,0x29, 0x7,0x37,0x28,
+  0xf,0x59,0x58, 0x4,0x5a,0x6f, 0x7,0x46,0x32, 0x7,0x46,0x31,
+  0x4,0x66,0x31, 0xf,0x67,0x45, 0x7,0x57,0x51, 0x5,0x75,0x66,
+  0x7,0x5e,0x51, 0x7,0x5e,0x52, 0x5,0x21,0x43, 0x6,0x21,0x64,
+  0x4,0x21,0x47, 0x4,0x21,0x46, 0xf,0x21,0x36, 0x6,0x21,0x63,
+  0x5,0x21,0x61, 0x6,0x22,0x59, 0x6,0x22,0x58, 0x6,0x22,0x5e,
+  0x6,0x22,0x5a, 0x6,0x22,0x5d, 0x6,0x22,0x57, 0x6,0x22,0x42,
+  0xf,0x21,0x4e, 0x6,0x22,0x5c, 0x5,0x22,0x47, 0x6,0x24,0x2d,
+  0x5,0x22,0x45, 0x6,0x24,0x2e, 0x4,0x22,0x4d, 0x5,0x22,0x46,
+  0x4,0x22,0x50, 0x6,0x24,0x2c, 0x4,0x22,0x4f, 0x4,0x22,0x4e,
+  0x5,0x22,0x44, 0x6,0x24,0x28, 0xf,0x22,0x2f, 0xf,0x22,0x30,
+  0xf,0x22,0x32, 0xf,0x22,0x34, 0x6,0x24,0x2a, 0xf,0x22,0x31,
+  0xf,0x22,0x33, 0x5,0x22,0x43, 0x6,0x24,0x29, 0x6,0x24,0x2b,
+  0x4,0x23,0x56, 0x6,0x26,0x4f, 0x6,0x26,0x46, 0x6,0x26,0x4d,
+  0x6,0x26,0x4c, 0x5,0x23,0x56, 0x4,0x23,0x5a, 0x4,0x23,0x5d,
+  0x5,0x23,0x5b, 0x5,0x23,0x54, 0x6,0x26,0x48, 0x4,0x23,0x57,
+  0x4,0x23,0x52, 0x4,0x23,0x58, 0x5,0x23,0x58, 0x6,0x26,0x49,
+  0x5,0x23,0x59, 0x4,0x23,0x55, 0x5,0x23,0x55, 0x6,0x26,0x47,
+  0x5,0x23,0x5c, 0xf,0x23,0x45, 0xf,0x23,0x46, 0xf,0x23,0x47,
+  0xf,0x23,0x4a, 0xf,0x23,0x4b, 0xf,0x23,0x4c, 0xf,0x23,0x48,
+  0x6,0x26,0x4b, 0x6,0x26,0x4a, 0x6,0x26,0x50, 0x6,0x26,0x45,
+  0x5,0x23,0x53, 0x5,0x23,0x57, 0x5,0x23,0x5a, 0x4,0x25,0x5c,
+  0x4,0x25,0x5e, 0x6,0x2a,0x36, 0x5,0x25,0x4c, 0x5,0x25,0x44,
+  0x4,0x25,0x5b, 0x6,0x2a,0x34, 0x5,0x25,0x4d, 0x5,0x25,0x45,
+  0x5,0x25,0x47, 0x4,0x25,0x61, 0x5,0x25,0x50, 0x6,0x2a,0x33,
+  0x5,0x25,0x52, 0x5,0x28,0x47, 0x6,0x2a,0x3b, 0x5,0x25,0x48,
+  0x5,0x25,0x4b, 0x5,0x25,0x4a, 0x5,0x25,0x51, 0x5,0x25,0x49,
+  0x5,0x25,0x4e, 0x6,0x2a,0x3d, 0x5,0x25,0x4f, 0xf,0x25,0x70,
+  0xf,0x25,0x72, 0xf,0x25,0x73, 0xf,0x25,0x74, 0xf,0x25,0x75,
+  0xf,0x25,0x76, 0xf,0x25,0x77, 0xf,0x25,0x78, 0xf,0x25,0x79,
+  0xf,0x25,0x7a, 0xf,0x25,0x7d, 0xf,0x25,0x7e, 0xf,0x26,0x21,
+  0xf,0x26,0x22, 0xf,0x26,0x23, 0x5,0x25,0x46, 0x6,0x2a,0x35,
+  0x5,0x25,0x43, 0x6,0x2a,0x38, 0x6,0x2a,0x37, 0xf,0x25,0x7c,
+  0x6,0x2a,0x3a, 0x5,0x2c,0x38, 0x5,0x28,0x46, 0x5,0x28,0x52,
+  0x5,0x28,0x4d, 0x5,0x28,0x3c, 0x5,0x28,0x51, 0x6,0x2f,0x54,
+  0x6,0x2f,0x4e, 0x5,0x28,0x3f, 0x4,0x28,0x5b, 0x4,0x28,0x5a,
+  0x5,0x28,0x4f, 0x5,0x28,0x45, 0x5,0x28,0x4b, 0x5,0x28,0x4a,
+  0x5,0x28,0x4e, 0x5,0x28,0x48, 0x5,0x28,0x49, 0x5,0x28,0x3d,
+  0x5,0x28,0x41, 0x5,0x28,0x4c, 0x4,0x25,0x62, 0x6,0x2f,0x59,
+  0x6,0x2f,0x5a, 0x5,0x28,0x53, 0x6,0x2f,0x4f, 0x5,0x28,0x3a,
+  0x6,0x2f,0x57, 0x6,0x2f,0x56, 0x5,0x28,0x50, 0x6,0x2f,0x50,
+  0x6,0x2f,0x58, 0x6,0x2f,0x52, 0x5,0x28,0x40, 0x5,0x28,0x42,
+  0xf,0x2b,0x33, 0xf,0x29,0x53, 0xf,0x29,0x55, 0xf,0x29,0x56,
+  0xf,0x29,0x57, 0xf,0x29,0x58, 0xf,0x29,0x59, 0xf,0x29,0x5a,
+  0xf,0x29,0x5b, 0xf,0x29,0x5e, 0xf,0x29,0x5f, 0xf,0x29,0x60,
+  0xf,0x29,0x61, 0xf,0x29,0x62, 0xf,0x29,0x63, 0xf,0x29,0x64,
+  0xf,0x29,0x66, 0xf,0x29,0x67, 0x5,0x28,0x43, 0x5,0x28,0x44,
+  0x4,0x28,0x5d, 0xf,0x29,0x65, 0x6,0x2f,0x55, 0x6,0x2f,0x53,
+  0x4,0x28,0x58, 0x5,0x28,0x3b, 0x5,0x28,0x3e, 0x6,0x2f,0x51,
+  0x6,0x36,0x29, 0x4,0x2c,0x24, 0x4,0x2c,0x2b, 0x4,0x2c,0x2c,
+  0x4,0x2c,0x27, 0x6,0x36,0x22, 0x5,0x2c,0x4e, 0x5,0x2c,0x41,
+  0x5,0x2c,0x3f, 0x5,0x2c,0x4c, 0x5,0x2c,0x3d, 0x5,0x2c,0x46,
+  0x5,0x2c,0x56, 0x5,0x2c,0x49, 0x4,0x2c,0x2a, 0x5,0x2c,0x4d,
+  0x5,0x2c,0x54, 0x5,0x2c,0x52, 0x4,0x2c,0x22, 0x6,0x36,0x23,
+  0x6,0x36,0x24, 0x5,0x2c,0x51, 0x4,0x2c,0x23, 0x5,0x2c,0x40,
+  0x6,0x36,0x27, 0x6,0x36,0x28, 0x5,0x2c,0x57, 0x6,0x36,0x26,
+  0x5,0x2c,0x53, 0x5,0x2c,0x58, 0x5,0x2c,0x47, 0x5,0x2c,0x59,
+  0x5,0x2c,0x44, 0x5,0x2c,0x55, 0xf,0x2e,0x40, 0xf,0x2e,0x41,
+  0xf,0x2e,0x43, 0xf,0x2e,0x44, 0xf,0x2e,0x48, 0xf,0x2e,0x49,
+  0xf,0x2e,0x4b, 0xf,0x2e,0x4c, 0xf,0x2e,0x4d, 0xf,0x2e,0x4e,
+  0xf,0x2e,0x4f, 0xf,0x2e,0x50, 0xf,0x2e,0x51, 0xf,0x2e,0x52,
+  0xf,0x2e,0x53, 0xf,0x2e,0x54, 0x6,0x39,0x5e, 0x6,0x36,0x21,
+  0x5,0x2c,0x42, 0x5,0x2c,0x45, 0x5,0x2c,0x48, 0x6,0x36,0x25,
+  0x5,0x2c,0x50, 0x5,0x2c,0x4b, 0x5,0x2c,0x39, 0x5,0x2c,0x3a,
+  0x5,0x2c,0x3b, 0xf,0x2e,0x45, 0x5,0x2c,0x4a, 0x5,0x2c,0x4f,
+  0x5,0x2c,0x3e, 0x5,0x2c,0x3c, 0x5,0x2c,0x5a, 0x5,0x31,0x46,
+  0x4,0x30,0x69, 0x6,0x3d,0x77, 0x6,0x3d,0x74, 0x4,0x30,0x78,
+  0x6,0x3d,0x6f, 0x4,0x30,0x75, 0x5,0x31,0x51, 0x5,0x31,0x49,
+  0x5,0x31,0x4c, 0x4,0x30,0x6e, 0x4,0x30,0x79, 0x5,0x31,0x44,
+  0x6,0x3d,0x76, 0x5,0x31,0x36, 0x5,0x31,0x4a, 0x5,0x31,0x45,
+  0x5,0x31,0x4e, 0x5,0x31,0x34, 0x5,0x31,0x4d, 0x5,0x31,0x42,
+  0x5,0x31,0x3b, 0x6,0x3d,0x71, 0x6,0x3d,0x75, 0x6,0x3d,0x7d,
+  0x6,0x3d,0x7a, 0x6,0x3d,0x7e, 0x5,0x31,0x3a, 0x5,0x31,0x3c,
+  0x6,0x3d,0x6c, 0x5,0x31,0x38, 0x6,0x3d,0x72, 0x6,0x3d,0x7b,
+  0xf,0x33,0x3f, 0xf,0x33,0x40, 0xf,0x33,0x41, 0xf,0x33,0x42,
+  0xf,0x33,0x44, 0xf,0x33,0x45, 0xf,0x33,0x46, 0xf,0x33,0x47,
+  0xf,0x33,0x48, 0xf,0x33,0x49, 0xf,0x33,0x4c, 0xf,0x33,0x4d,
+  0x5,0x31,0x37, 0x6,0x3d,0x73, 0x5,0x31,0x39, 0x6,0x3d,0x6d,
+  0x5,0x31,0x41, 0x5,0x31,0x48, 0x6,0x3e,0x21, 0x5,0x31,0x52,
+  0x6,0x3d,0x70, 0x5,0x31,0x40, 0x5,0x31,0x35, 0x5,0x31,0x47,
+  0x5,0x31,0x3e, 0x5,0x31,0x43, 0x5,0x31,0x3d, 0x5,0x31,0x50,
+  0x6,0x3d,0x79, 0x3,0x34,0x60, 0x5,0x31,0x53, 0x5,0x31,0x4f,
+  0x6,0x3d,0x78, 0x6,0x3d,0x6e, 0x5,0x31,0x3f, 0x5,0x31,0x4b,
+  0x4,0x36,0x55, 0x4,0x36,0x61, 0x6,0x47,0x32, 0x5,0x37,0x24,
+  0x6,0x47,0x37, 0x6,0x47,0x3e, 0x5,0x36,0x77, 0x6,0x47,0x35,
+  0x5,0x36,0x7c, 0x4,0x36,0x56, 0x5,0x37,0x28, 0x5,0x36,0x6f,
+  0x5,0x36,0x71, 0x4,0x36,0x5a, 0x5,0x36,0x78, 0x4,0x36,0x57,
+  0x5,0x37,0x29, 0x5,0x36,0x7e, 0x4,0x36,0x62, 0x4,0x36,0x5b,
+  0x5,0x37,0x23, 0x5,0x37,0x27, 0x4,0x36,0x66, 0x5,0x37,0x30,
+  0x4,0x36,0x5d, 0x5,0x37,0x2c, 0x5,0x37,0x2e, 0x6,0x47,0x2e,
+  0x6,0x47,0x3c, 0x5,0x3e,0x22, 0x6,0x47,0x2b, 0x6,0x47,0x2f,
+  0x6,0x47,0x38, 0x5,0x37,0x22, 0x6,0x47,0x34, 0x6,0x47,0x3f,
+  0x6,0x47,0x3a, 0x4,0x36,0x64, 0x5,0x37,0x26, 0x5,0x36,0x73,
+  0xf,0x39,0x5b, 0xf,0x39,0x5d, 0xf,0x39,0x5e, 0xf,0x39,0x61,
+  0xf,0x39,0x62, 0xf,0x39,0x63, 0xf,0x39,0x64, 0xf,0x39,0x65,
+  0xf,0x39,0x66, 0xf,0x39,0x67, 0xf,0x39,0x68, 0xf,0x39,0x6a,
+  0xf,0x39,0x6d, 0xf,0x39,0x6e, 0xf,0x39,0x6f, 0xf,0x39,0x70,
+  0x5,0x36,0x74, 0x5,0x36,0x75, 0x5,0x36,0x7b, 0x5,0x37,0x25,
+  0x5,0x37,0x21, 0x6,0x47,0x3b, 0xf,0x39,0x6b, 0xf,0x39,0x5c,
+  0xf,0x39,0x5f, 0xf,0x39,0x69, 0xf,0x39,0x6c, 0x5,0x37,0x2b,
+  0x5,0x37,0x2f, 0x6,0x47,0x3d, 0x5,0x37,0x2d, 0x5,0x37,0x2a,
+  0x5,0x36,0x7d, 0x6,0x47,0x36, 0x6,0x51,0x39, 0x5,0x3e,0x23,
+  0x4,0x3c,0x49, 0x5,0x3e,0x27, 0x4,0x3c,0x4e, 0x5,0x36,0x72,
+  0x6,0x51,0x41, 0x4,0x3c,0x48, 0x4,0x3c,0x44, 0x6,0x5b,0x42,
+  0x5,0x3e,0x2d, 0x6,0x51,0x33, 0x6,0x51,0x35, 0x5,0x3e,0x2a,
+  0x5,0x3e,0x38, 0x6,0x51,0x3a, 0x6,0x51,0x30, 0x5,0x3e,0x2e,
+  0x5,0x3e,0x24, 0x5,0x3e,0x35, 0x5,0x3e,0x3f, 0x6,0x51,0x3f,
+  0x6,0x51,0x37, 0x5,0x3e,0x34, 0x5,0x3e,0x37, 0x4,0x3c,0x4d,
+  0x5,0x3e,0x3a, 0x4,0x3c,0x45, 0x5,0x3e,0x33, 0x5,0x3e,0x2c,
+  0x4,0x3c,0x4f, 0x5,0x3e,0x2f, 0x4,0x3c,0x51, 0x5,0x3e,0x31,
+  0x5,0x3e,0x32, 0x6,0x51,0x3b, 0x6,0x51,0x40, 0x6,0x51,0x2a,
+  0x6,0x51,0x3e, 0x6,0x51,0x3d, 0x5,0x3e,0x3b, 0x6,0x51,0x38,
+  0x5,0x3e,0x28, 0x5,0x3e,0x30, 0x5,0x3e,0x2b, 0x6,0x51,0x2c,
+  0x6,0x51,0x44, 0x6,0x51,0x2e, 0x6,0x51,0x2b, 0x6,0x51,0x2d,
+  0xf,0x47,0x26, 0x5,0x3e,0x3e, 0x6,0x51,0x31, 0xf,0x40,0x56,
+  0xf,0x40,0x57, 0xf,0x40,0x58, 0xf,0x40,0x59, 0xf,0x40,0x5a,
+  0xf,0x40,0x5b, 0xf,0x40,0x5c, 0xf,0x40,0x5d, 0xf,0x40,0x5e,
+  0xf,0x40,0x5f, 0xf,0x40,0x60, 0xf,0x40,0x61, 0xf,0x40,0x63,
+  0x6,0x51,0x2f, 0x6,0x51,0x34, 0x6,0x51,0x3c, 0xf,0x40,0x54,
+  0x6,0x51,0x42, 0x5,0x3e,0x3c, 0x5,0x3e,0x36, 0x5,0x3e,0x25,
+  0x5,0x3e,0x29, 0x5,0x3e,0x26, 0xf,0x40,0x64, 0x6,0x5b,0x46,
+  0x6,0x5b,0x40, 0x6,0x5b,0x4b, 0x4,0x42,0x4d, 0x6,0x5b,0x4f,
+  0x6,0x5b,0x45, 0x6,0x5b,0x51, 0x6,0x5b,0x50, 0x4,0x42,0x4e,
+  0x6,0x5b,0x4c, 0x5,0x44,0x73, 0x5,0x44,0x77, 0x5,0x44,0x75,
+  0x5,0x44,0x7c, 0x6,0x5b,0x43, 0x6,0x5b,0x47, 0x4,0x42,0x4c,
+  0x4,0x42,0x54, 0x5,0x44,0x7b, 0x4,0x42,0x50, 0x5,0x44,0x76,
+  0x6,0x5b,0x41, 0x5,0x44,0x71, 0x5,0x44,0x72, 0x5,0x44,0x79,
+  0x6,0x5b,0x52, 0x6,0x5b,0x3f, 0x6,0x5b,0x49, 0x6,0x5b,0x4a,
+  0x5,0x44,0x78, 0x6,0x5b,0x4d, 0xf,0x46,0x71, 0xf,0x46,0x72,
+  0xf,0x46,0x73, 0xf,0x46,0x74, 0xf,0x46,0x76, 0xf,0x46,0x77,
+  0xf,0x46,0x78, 0xf,0x46,0x79, 0xf,0x46,0x7a, 0xf,0x46,0x7b,
+  0xf,0x46,0x7c, 0xf,0x46,0x7e, 0xf,0x47,0x21, 0xf,0x47,0x22,
+  0xf,0x47,0x23, 0xf,0x47,0x27, 0xf,0x47,0x28, 0xf,0x47,0x29,
+  0xf,0x47,0x2a, 0xf,0x47,0x2b, 0xf,0x47,0x2c, 0xf,0x47,0x2d,
+  0xf,0x47,0x24, 0x6,0x5b,0x48, 0xf,0x46,0x75, 0x5,0x44,0x74,
+  0x5,0x44,0x7a, 0x6,0x5b,0x4e, 0x5,0x45,0x21, 0xf,0x46,0x7d,
+  0x6,0x5b,0x44, 0xf,0x47,0x25, 0x5,0x4c,0x35, 0x5,0x44,0x7d,
+  0xf,0x46,0x6c, 0x7,0x21,0x51, 0x5,0x4c,0x3b, 0x7,0x21,0x55,
+  0x7,0x21,0x52, 0x5,0x4c,0x39, 0x7,0x21,0x58, 0x7,0x21,0x4a,
+  0x5,0x4c,0x40, 0x5,0x4c,0x46, 0x5,0x4c,0x3d, 0x7,0x21,0x4f,
+  0x5,0x4c,0x3e, 0x7,0x21,0x57, 0x7,0x21,0x50, 0x5,0x4c,0x36,
+  0x7,0x21,0x4b, 0x5,0x4c,0x3f, 0x7,0x21,0x56, 0x7,0x21,0x59,
+  0x5,0x4c,0x41, 0x4,0x49,0x2f, 0x7,0x21,0x5b, 0x5,0x4c,0x3a,
+  0x7,0x21,0x48, 0x5,0x4c,0x38, 0x5,0x5b,0x27, 0x7,0x21,0x5a,
+  0x4,0x49,0x2b, 0x7,0x21,0x54, 0x5,0x45,0x23, 0x7,0x21,0x53,
+  0x7,0x21,0x49, 0x7,0x21,0x47, 0x7,0x21,0x62, 0x7,0x21,0x5c,
+  0xf,0x4d,0x7a, 0x7,0x21,0x5e, 0x5,0x4c,0x42, 0x7,0x21,0x61,
+  0x7,0x2c,0x61, 0x5,0x4c,0x37, 0x4,0x49,0x32, 0x5,0x4c,0x47,
+  0xf,0x4d,0x6f, 0xf,0x4d,0x70, 0xf,0x4d,0x71, 0xf,0x4d,0x72,
+  0xf,0x4d,0x73, 0xf,0x4d,0x74, 0xf,0x4d,0x75, 0xf,0x4d,0x76,
+  0xf,0x4d,0x78, 0xf,0x4d,0x79, 0x5,0x4c,0x44, 0x7,0x21,0x5f,
+  0x7,0x26,0x2b, 0x7,0x21,0x5d, 0x7,0x21,0x4d, 0x7,0x21,0x4c,
+  0x5,0x4c,0x3c, 0x5,0x4c,0x43, 0x7,0x2c,0x6a, 0x4,0x4f,0x6e,
+  0x5,0x53,0x74, 0x7,0x2c,0x5c, 0x5,0x53,0x72, 0x7,0x2c,0x68,
+  0x4,0x4f,0x72, 0x5,0x53,0x6a, 0x5,0x53,0x78, 0x7,0x2c,0x60,
+  0x4,0x4f,0x68, 0x4,0x4f,0x73, 0x4,0x4f,0x66, 0x5,0x53,0x71,
+  0x4,0x4f,0x70, 0x5,0x53,0x6f, 0x5,0x53,0x68, 0x7,0x2c,0x6b,
+  0x7,0x2c,0x5b, 0x7,0x2c,0x64, 0x5,0x53,0x6e, 0x7,0x2c,0x5f,
+  0x5,0x53,0x6c, 0x5,0x53,0x67, 0x5,0x53,0x75, 0x5,0x53,0x70,
+  0x5,0x53,0x73, 0x7,0x2c,0x59, 0x5,0x53,0x6b, 0x5,0x53,0x69,
+  0x7,0x2c,0x67, 0x7,0x2c,0x58, 0x7,0x2c,0x57, 0xf,0x4d,0x77,
+  0x4,0x4f,0x69, 0x4,0x4f,0x74, 0x5,0x53,0x77, 0x7,0x2c,0x66,
+  0xf,0x53,0x5c, 0xf,0x53,0x5e, 0xf,0x53,0x5f, 0xf,0x53,0x60,
+  0xf,0x53,0x61, 0xf,0x53,0x62, 0xf,0x53,0x63, 0xf,0x53,0x64,
+  0xf,0x53,0x65, 0xf,0x53,0x67, 0xf,0x53,0x68, 0xf,0x53,0x69,
+  0xf,0x53,0x6a, 0xf,0x53,0x6b, 0xf,0x53,0x6c, 0xf,0x53,0x6d,
+  0xf,0x53,0x6e, 0xf,0x53,0x6f, 0x7,0x2c,0x5e, 0x7,0x2c,0x5d,
+  0x7,0x2c,0x62, 0x7,0x2c,0x69, 0x5,0x53,0x6d, 0xf,0x55,0x74,
+  0x5,0x53,0x76, 0x4,0x55,0x7a, 0x5,0x5b,0x26, 0x5,0x5b,0x21,
+  0x7,0x37,0x2d, 0x7,0x37,0x2a, 0x7,0x37,0x34, 0x7,0x37,0x35,
+  0x5,0x5b,0x23, 0x5,0x5b,0x2b, 0x4,0x55,0x71, 0x4,0x55,0x76,
+  0x5,0x5b,0x28, 0x4,0x55,0x77, 0x7,0x37,0x2b, 0x5,0x5b,0x29,
+  0x4,0x55,0x79, 0x7,0x37,0x31, 0x7,0x37,0x2f, 0x7,0x37,0x2e,
+  0x5,0x5b,0x24, 0x4,0x55,0x75, 0x7,0x37,0x32, 0x7,0x37,0x39,
+  0xf,0x59,0x59, 0xf,0x59,0x5a, 0xf,0x59,0x5e, 0xf,0x59,0x5f,
+  0xf,0x59,0x60, 0xf,0x59,0x61, 0xf,0x59,0x62, 0x7,0x37,0x38,
+  0x7,0x37,0x30, 0x7,0x37,0x36, 0x7,0x37,0x33, 0x7,0x37,0x2c,
+  0x5,0x5b,0x2a, 0x5,0x5b,0x22, 0x4,0x5a,0x74, 0x7,0x3f,0x29,
+  0x7,0x3f,0x2f, 0x4,0x5a,0x73, 0x5,0x61,0x3e, 0x7,0x3f,0x2b,
+  0x4,0x5a,0x71, 0x4,0x5a,0x76, 0x5,0x61,0x46, 0x4,0x5a,0x77,
+  0x5,0x67,0x58, 0x5,0x61,0x3d, 0x5,0x61,0x44, 0x5,0x61,0x43,
+  0x4,0x5a,0x78, 0x7,0x3f,0x2a, 0x4,0x5a,0x75, 0x4,0x5a,0x79,
+  0x4,0x5a,0x72, 0x7,0x3f,0x2e, 0x5,0x61,0x41, 0x7,0x3f,0x27,
+  0x7,0x3f,0x2d, 0x7,0x3f,0x28, 0x7,0x3f,0x26, 0x7,0x3f,0x2c,
+  0x5,0x61,0x42, 0xf,0x59,0x5b, 0x7,0x3f,0x25, 0xf,0x5e,0x3c,
+  0xf,0x5e,0x3d, 0xf,0x5e,0x3e, 0xf,0x5e,0x3f, 0xf,0x5e,0x40,
+  0xf,0x5e,0x43, 0xf,0x5e,0x44, 0xf,0x5e,0x45, 0x5,0x61,0x3f,
+  0xf,0x5e,0x4a, 0x7,0x46,0x34, 0x4,0x5f,0x4e, 0x5,0x5b,0x25,
+  0x7,0x46,0x3b, 0x7,0x46,0x39, 0x7,0x46,0x37, 0x5,0x67,0x5a,
+  0x5,0x67,0x5b, 0x4,0x5f,0x50, 0x5,0x67,0x57, 0x7,0x46,0x3c,
+  0x7,0x46,0x3a, 0x7,0x46,0x33, 0x7,0x46,0x35, 0x7,0x46,0x38,
+  0x4,0x5f,0x4f, 0xf,0x5e,0x46, 0x5,0x67,0x5c, 0xf,0x62,0x22,
+  0xf,0x62,0x23, 0xf,0x62,0x24, 0xf,0x62,0x25, 0xf,0x62,0x26,
+  0x7,0x46,0x36, 0x7,0x47,0x6e, 0x7,0x46,0x3d, 0x5,0x6b,0x74,
+  0x5,0x6b,0x75, 0x5,0x6b,0x6f, 0x5,0x6b,0x71, 0x5,0x6b,0x70,
+  0x7,0x4d,0x47, 0x7,0x4d,0x49, 0x7,0x4d,0x4b, 0x7,0x4d,0x48,
+  0x7,0x4d,0x46, 0x7,0x4d,0x4a, 0xf,0x64,0x7d, 0xf,0x64,0x7e,
+  0xf,0x65,0x21, 0x7,0x4d,0x4c, 0x5,0x6b,0x72, 0x7,0x52,0x7b,
+  0x5,0x6f,0x71, 0x5,0x6f,0x6f, 0x4,0x66,0x35, 0x5,0x6f,0x6e,
+  0x7,0x52,0x7a, 0x5,0x6f,0x6d, 0x7,0x52,0x7e, 0x5,0x6f,0x70,
+  0x7,0x52,0x7d, 0x4,0x66,0x33, 0xf,0x67,0x47, 0xf,0x67,0x48,
+  0x5,0x6f,0x6c, 0x7,0x52,0x7c, 0x7,0x57,0x59, 0x7,0x57,0x5a,
+  0x5,0x73,0x33, 0x7,0x57,0x55, 0x7,0x57,0x56, 0x7,0x57,0x57,
+  0x7,0x57,0x54, 0x7,0x57,0x52, 0x7,0x57,0x53, 0xf,0x69,0x3c,
+  0x4,0x68,0x64, 0x7,0x57,0x58, 0x7,0x5b,0x49, 0x7,0x5b,0x4a,
+  0xf,0x6a,0x4d, 0x7,0x5b,0x48, 0x7,0x5b,0x47, 0x5,0x77,0x55,
+  0x5,0x77,0x56, 0x4,0x6b,0x66, 0x7,0x5e,0x53, 0x7,0x5e,0x55,
+  0x7,0x5e,0x54, 0x7,0x5e,0x56, 0xf,0x6b,0x43, 0x5,0x75,0x67,
+  0x5,0x79,0x23, 0x4,0x6c,0x6d, 0xf,0x6c,0x22, 0xf,0x6c,0x23,
+  0x7,0x60,0x6b, 0x7,0x62,0x32, 0x7,0x62,0x31, 0x7,0x62,0x34,
+  0x7,0x62,0x30, 0x7,0x62,0x33, 0xf,0x6c,0x79, 0xf,0x6c,0x7a,
+  0x6,0x21,0x65, 0x6,0x21,0x66, 0xf,0x21,0x37, 0x4,0x21,0x6e,
+  0x6,0x24,0x32, 0x6,0x24,0x30, 0x5,0x22,0x49, 0xf,0x22,0x35,
+  0x6,0x24,0x31, 0x6,0x24,0x2f, 0x5,0x22,0x48, 0x6,0x26,0x54,
+  0x6,0x2f,0x5c, 0x6,0x2a,0x3e, 0x6,0x26,0x58, 0x6,0x26,0x56,
+  0xf,0x23,0x4f, 0xf,0x23,0x51, 0x6,0x26,0x57, 0x6,0x26,0x59,
+  0x6,0x26,0x5c, 0x6,0x26,0x5a, 0x6,0x26,0x51, 0x6,0x26,0x55,
+  0x6,0x26,0x52, 0x6,0x26,0x53, 0x6,0x26,0x5b, 0x5,0x25,0x55,
+  0x6,0x2a,0x43, 0x6,0x2a,0x40, 0x6,0x2a,0x41, 0x6,0x2a,0x42,
+  0x6,0x2d,0x34, 0x6,0x2a,0x3f, 0xf,0x26,0x24, 0x5,0x25,0x54,
+  0x5,0x28,0x54, 0x5,0x28,0x56, 0x6,0x2f,0x60, 0x6,0x2f,0x5f,
+  0x5,0x28,0x55, 0x6,0x2f,0x5b, 0x6,0x2f,0x5e, 0x6,0x2f,0x5d,
+  0x5,0x2c,0x5c, 0x6,0x36,0x2d, 0x6,0x36,0x2a, 0x6,0x36,0x2c,
+  0x5,0x2c,0x5b, 0x6,0x36,0x2b, 0x5,0x2c,0x5d, 0x5,0x31,0x56,
+  0x6,0x3e,0x25, 0x5,0x31,0x57, 0x6,0x3e,0x24, 0x6,0x3e,0x23,
+  0x6,0x3e,0x22, 0x5,0x31,0x54, 0x6,0x3e,0x26, 0x5,0x37,0x33,
+  0x6,0x47,0x40, 0x6,0x47,0x41, 0x5,0x37,0x31, 0x5,0x31,0x55,
+  0xf,0x39,0x72, 0xf,0x39,0x73, 0xf,0x39,0x74, 0x6,0x47,0x42,
+  0x5,0x37,0x32, 0x5,0x3e,0x40, 0x6,0x51,0x45, 0x5,0x3e,0x41,
+  0x6,0x51,0x47, 0x6,0x51,0x48, 0x5,0x3e,0x42, 0x6,0x51,0x46,
+  0xf,0x40,0x65, 0x6,0x5b,0x54, 0x6,0x5b,0x58, 0x5,0x45,0x24,
+  0x6,0x5b,0x55, 0x6,0x5b,0x5a, 0x6,0x5b,0x56, 0xf,0x47,0x2e,
+  0xf,0x47,0x2f, 0xf,0x47,0x30, 0x6,0x5b,0x57, 0x7,0x21,0x65,
+  0x7,0x21,0x66, 0x7,0x21,0x64, 0xf,0x4d,0x7b, 0x4,0x4f,0x75,
+  0xf,0x53,0x73, 0x7,0x37,0x3c, 0x7,0x37,0x3a, 0x7,0x37,0x3b,
+  0x4,0x5f,0x51, 0x7,0x4d,0x4d, 0x7,0x53,0x22, 0x7,0x53,0x21,
+  0x4,0x21,0x48, 0x5,0x21,0x44, 0x6,0x22,0x60, 0xf,0x21,0x51,
+  0xf,0x21,0x52, 0x6,0x22,0x61, 0x6,0x24,0x35, 0xf,0x22,0x36,
+  0xf,0x22,0x37, 0x6,0x24,0x34, 0x6,0x26,0x6a, 0x4,0x23,0x60,
+  0x6,0x26,0x66, 0x6,0x26,0x62, 0x6,0x26,0x5e, 0x6,0x26,0x69,
+  0x6,0x26,0x5d, 0x6,0x26,0x65, 0x6,0x26,0x67, 0xf,0x23,0x53,
+  0xf,0x23,0x54, 0xf,0x23,0x56, 0xf,0x23,0x58, 0xf,0x23,0x5a,
+  0x6,0x26,0x60, 0x6,0x26,0x63, 0x6,0x26,0x68, 0x6,0x26,0x64,
+  0x6,0x26,0x61, 0x6,0x26,0x5f, 0x5,0x23,0x5e, 0xf,0x23,0x59,
+  0x5,0x23,0x5d, 0x5,0x23,0x5f, 0x5,0x23,0x60, 0x5,0x23,0x61,
+  0x4,0x25,0x6a, 0x6,0x2a,0x4f, 0x6,0x2a,0x47, 0x6,0x2a,0x4c,
+  0x6,0x2a,0x46, 0x4,0x25,0x67, 0x6,0x2a,0x4a, 0x4,0x25,0x6c,
+  0x6,0x2a,0x48, 0x5,0x25,0x56, 0x6,0x2a,0x51, 0x6,0x26,0x41,
+  0x6,0x2a,0x49, 0xf,0x26,0x26, 0xf,0x26,0x27, 0xf,0x26,0x28,
+  0xf,0x26,0x29, 0xf,0x26,0x2a, 0xf,0x26,0x30, 0xf,0x26,0x31,
+  0xf,0x26,0x2c, 0xf,0x26,0x2b, 0x4,0x25,0x6b, 0xf,0x26,0x2f,
+  0xf,0x26,0x2e, 0x6,0x2a,0x50, 0x6,0x2a,0x4b, 0x6,0x2a,0x4d,
+  0x6,0x2a,0x4e, 0xf,0x26,0x32, 0xf,0x26,0x25, 0x6,0x2a,0x45,
+  0x6,0x2a,0x44, 0x5,0x25,0x57, 0x5,0x28,0x5b, 0x6,0x2f,0x62,
+  0x5,0x28,0x57, 0x6,0x2f,0x64, 0x6,0x2f,0x61, 0x5,0x28,0x58,
+  0x4,0x28,0x5f, 0x6,0x2f,0x6b, 0x6,0x2f,0x63, 0xf,0x29,0x7a,
+  0xf,0x29,0x68, 0xf,0x29,0x69, 0xf,0x29,0x6b, 0xf,0x29,0x6c,
+  0xf,0x29,0x6d, 0xf,0x29,0x6e, 0xf,0x29,0x6f, 0xf,0x29,0x70,
+  0xf,0x29,0x72, 0xf,0x29,0x73, 0xf,0x29,0x75, 0xf,0x29,0x76,
+  0xf,0x29,0x77, 0xf,0x29,0x78, 0xf,0x29,0x79, 0xf,0x29,0x7b,
+  0xf,0x29,0x7c, 0xf,0x29,0x7d, 0x6,0x2f,0x6a, 0x6,0x2f,0x6c,
+  0x6,0x34,0x31, 0x6,0x2f,0x67, 0x6,0x2f,0x68, 0x6,0x2f,0x66,
+  0xf,0x29,0x74, 0x5,0x28,0x5d, 0x5,0x28,0x5a, 0x5,0x28,0x5e,
+  0x5,0x28,0x5c, 0x5,0x28,0x59, 0x5,0x2c,0x5e, 0x4,0x2c,0x32,
+  0x6,0x36,0x34, 0x4,0x2c,0x30, 0x4,0x2c,0x34, 0x6,0x36,0x32,
+  0x6,0x36,0x3c, 0x6,0x36,0x36, 0x6,0x36,0x3d, 0x6,0x36,0x3e,
+  0x6,0x36,0x31, 0x6,0x36,0x2e, 0x6,0x36,0x3a, 0x6,0x36,0x2f,
+  0x6,0x36,0x40, 0xf,0x2e,0x55, 0xf,0x2e,0x56, 0xf,0x2e,0x57,
+  0xf,0x2e,0x58, 0xf,0x2e,0x59, 0xf,0x2e,0x5a, 0xf,0x2e,0x5b,
+  0xf,0x2e,0x5e, 0xf,0x2e,0x5f, 0xf,0x2e,0x60, 0x6,0x36,0x30,
+  0x6,0x36,0x3f, 0x6,0x36,0x37, 0x6,0x36,0x38, 0x6,0x36,0x39,
+  0x5,0x2c,0x60, 0x6,0x36,0x3b, 0xf,0x2e,0x5d, 0xf,0x2e,0x61,
+  0x6,0x36,0x33, 0x5,0x2c,0x5f, 0x5,0x2c,0x62, 0x4,0x30,0x7d,
+  0x6,0x3e,0x27, 0x4,0x30,0x7c, 0x5,0x31,0x5d, 0x6,0x3e,0x34,
+  0x6,0x3e,0x2d, 0x5,0x31,0x5b, 0x6,0x3e,0x2a, 0x5,0x2c,0x61,
+  0x6,0x3e,0x33, 0x6,0x3e,0x30, 0x5,0x31,0x5a, 0x4,0x31,0x22,
+  0x4,0x31,0x23, 0xf,0x33,0x4f, 0xf,0x33,0x5b, 0x6,0x3e,0x2e,
+  0x6,0x3e,0x2f, 0xf,0x33,0x4e, 0xf,0x33,0x50, 0xf,0x33,0x51,
+  0xf,0x33,0x52, 0xf,0x33,0x53, 0xf,0x33,0x54, 0xf,0x33,0x55,
+  0xf,0x33,0x56, 0xf,0x33,0x58, 0xf,0x33,0x59, 0xf,0x33,0x5a,
+  0xf,0x33,0x5e, 0xf,0x33,0x5f, 0xf,0x33,0x60, 0xf,0x33,0x61,
+  0x5,0x31,0x5c, 0x6,0x3e,0x31, 0x6,0x3e,0x35, 0x4,0x30,0x7e,
+  0x6,0x3e,0x28, 0x6,0x3e,0x29, 0x5,0x31,0x58, 0x5,0x31,0x59,
+  0x3,0x3a,0x4f, 0x6,0x51,0x4e, 0x4,0x36,0x72, 0x6,0x47,0x47,
+  0x4,0x36,0x6a, 0x6,0x47,0x45, 0x4,0x36,0x70, 0x4,0x36,0x6c,
+  0x6,0x47,0x4b, 0x6,0x47,0x50, 0x4,0x36,0x75, 0x6,0x47,0x44,
+  0x6,0x47,0x46, 0x6,0x47,0x4d, 0x5,0x37,0x34, 0x6,0x3e,0x32,
+  0x6,0x47,0x4f, 0x4,0x3c,0x5a, 0x5,0x37,0x39, 0x4,0x36,0x73,
+  0x6,0x4f,0x6d, 0x5,0x37,0x38, 0xf,0x39,0x76, 0xf,0x39,0x78,
+  0xf,0x39,0x79, 0xf,0x39,0x7a, 0xf,0x39,0x7b, 0xf,0x39,0x7c,
+  0xf,0x3a,0x21, 0xf,0x3a,0x22, 0xf,0x3a,0x23, 0xf,0x3a,0x24,
+  0xf,0x3a,0x25, 0xf,0x3a,0x26, 0x6,0x47,0x51, 0x6,0x47,0x4a,
+  0x6,0x47,0x49, 0x4,0x36,0x74, 0x6,0x47,0x4c, 0xf,0x39,0x75,
+  0x5,0x37,0x37, 0x5,0x37,0x3a, 0x6,0x47,0x48, 0x5,0x37,0x35,
+  0x5,0x37,0x36, 0x5,0x37,0x3b, 0x5,0x3e,0x46, 0x6,0x51,0x56,
+  0x6,0x51,0x4b, 0x6,0x51,0x55, 0x5,0x3e,0x4d, 0x4,0x3c,0x54,
+  0x6,0x5b,0x62, 0x6,0x51,0x52, 0x5,0x3e,0x4c, 0x6,0x51,0x51,
+  0x5,0x3e,0x44, 0x5,0x3e,0x4b, 0x5,0x3e,0x43, 0x6,0x51,0x54,
+  0x6,0x51,0x50, 0x5,0x3e,0x49, 0x5,0x3e,0x4a, 0x4,0x3c,0x55,
+  0x5,0x3e,0x47, 0x6,0x51,0x49, 0x6,0x51,0x4c, 0xf,0x39,0x77,
+  0x6,0x51,0x53, 0x6,0x51,0x4d, 0xf,0x40,0x66, 0xf,0x40,0x67,
+  0xf,0x40,0x68, 0xf,0x40,0x6a, 0xf,0x40,0x6b, 0xf,0x40,0x6c,
+  0xf,0x40,0x6d, 0xf,0x40,0x6e, 0xf,0x40,0x6f, 0xf,0x40,0x70,
+  0xf,0x40,0x71, 0xf,0x40,0x72, 0xf,0x40,0x73, 0x6,0x51,0x4f,
+  0x5,0x3e,0x4e, 0x5,0x3e,0x48, 0x5,0x3e,0x45, 0x5,0x45,0x29,
+  0x5,0x45,0x28, 0x5,0x45,0x27, 0x6,0x5b,0x5c, 0x4,0x42,0x5c,
+  0x6,0x5b,0x64, 0x6,0x5b,0x66, 0x6,0x5b,0x61, 0x5,0x45,0x2a,
+  0x6,0x5b,0x60, 0x5,0x45,0x26, 0x6,0x5b,0x67, 0xf,0x47,0x32,
+  0xf,0x47,0x33, 0xf,0x47,0x34, 0xf,0x47,0x35, 0xf,0x47,0x36,
+  0xf,0x47,0x37, 0xf,0x47,0x39, 0xf,0x47,0x3a, 0xf,0x47,0x3b,
+  0xf,0x47,0x3c, 0x6,0x5b,0x5d, 0xf,0x47,0x38, 0x6,0x5b,0x6b,
+  0x6,0x5b,0x63, 0x6,0x5b,0x53, 0xf,0x47,0x31, 0x4,0x42,0x5a,
+  0x6,0x5b,0x65, 0x6,0x5b,0x5e, 0x5,0x45,0x25, 0x5,0x45,0x2b,
+  0x7,0x21,0x72, 0x4,0x49,0x34, 0x4,0x49,0x35, 0x7,0x21,0x6f,
+  0x4,0x49,0x36, 0x5,0x4c,0x4b, 0x5,0x4c,0x4c, 0x7,0x21,0x6b,
+  0x7,0x21,0x78, 0x4,0x49,0x37, 0x7,0x21,0x77, 0x7,0x21,0x74,
+  0xf,0x4e,0x21, 0x5,0x4c,0x4d, 0x5,0x4c,0x4f, 0x7,0x21,0x67,
+  0x7,0x21,0x75, 0xf,0x4d,0x7c, 0xf,0x4d,0x7d, 0xf,0x4e,0x26,
+  0xf,0x4e,0x27, 0xf,0x4e,0x28, 0xf,0x4e,0x29, 0xf,0x4e,0x2a,
+  0xf,0x4e,0x2b, 0xf,0x4e,0x2d, 0x7,0x21,0x6c, 0x7,0x21,0x6d,
+  0x7,0x21,0x6e, 0x5,0x4c,0x71, 0x7,0x21,0x73, 0x7,0x21,0x71,
+  0x7,0x21,0x69, 0xf,0x4d,0x7e, 0xf,0x4e,0x24, 0xf,0x4e,0x23,
+  0x5,0x4c,0x4e, 0x5,0x4c,0x4a, 0x5,0x4c,0x48, 0x7,0x21,0x68,
+  0x5,0x4c,0x49, 0x7,0x2c,0x6f, 0x7,0x2c,0x71, 0x7,0x2c,0x6c,
+  0x4,0x4f,0x77, 0x4,0x4f,0x7a, 0x4,0x4f,0x79, 0x7,0x2c,0x6d,
+  0x7,0x2c,0x70, 0xf,0x4e,0x2c, 0xf,0x53,0x74, 0xf,0x53,0x76,
+  0xf,0x53,0x78, 0x5,0x53,0x7a, 0x7,0x2c,0x72, 0x5,0x53,0x7b,
+  0x5,0x53,0x79, 0x7,0x34,0x6f, 0x7,0x2c,0x73, 0x7,0x2c,0x6e,
+  0xf,0x53,0x77, 0x4,0x4f,0x76, 0x7,0x37,0x43, 0x4,0x55,0x7d,
+  0x7,0x37,0x3d, 0x5,0x5b,0x2e, 0x7,0x37,0x3f, 0x7,0x37,0x44,
+  0x7,0x37,0x42, 0x7,0x37,0x45, 0x5,0x5b,0x2c, 0x7,0x2c,0x74,
+  0xf,0x59,0x64, 0xf,0x59,0x65, 0xf,0x59,0x66, 0xf,0x59,0x67,
+  0xf,0x59,0x68, 0xf,0x59,0x69, 0xf,0x59,0x6a, 0xf,0x59,0x6b,
+  0x7,0x3e,0x6c, 0x7,0x37,0x40, 0x7,0x37,0x41, 0x4,0x55,0x7e,
+  0x5,0x5b,0x2f, 0x7,0x3f,0x34, 0x5,0x61,0x47, 0x7,0x37,0x3e,
+  0x5,0x61,0x49, 0x7,0x3f,0x33, 0xf,0x5e,0x47, 0xf,0x5e,0x48,
+  0xf,0x5e,0x49, 0xf,0x5e,0x4b, 0xf,0x5e,0x4d, 0xf,0x5e,0x4e,
+  0x7,0x3f,0x31, 0x7,0x3f,0x32, 0x5,0x5b,0x30, 0x5,0x61,0x48,
+  0xf,0x62,0x28, 0x5,0x61,0x4a, 0x7,0x46,0x42, 0x7,0x46,0x3f,
+  0x5,0x67,0x5d, 0x7,0x46,0x47, 0x7,0x46,0x41, 0xf,0x5e,0x4c,
+  0xf,0x62,0x27, 0x7,0x46,0x43, 0x7,0x46,0x46, 0x7,0x4a,0x3b,
+  0x7,0x46,0x40, 0x7,0x3f,0x35, 0x4,0x63,0x33, 0xf,0x65,0x22,
+  0xf,0x65,0x23, 0xf,0x65,0x24, 0xf,0x65,0x25, 0x7,0x4d,0x4e,
+  0x5,0x6b,0x77, 0x7,0x53,0x28, 0x4,0x66,0x36, 0x7,0x53,0x24,
+  0x7,0x53,0x23, 0x7,0x53,0x27, 0x7,0x53,0x25, 0x5,0x6f,0x74,
+  0xf,0x67,0x49, 0xf,0x67,0x4a, 0xf,0x67,0x4c, 0x7,0x53,0x26,
+  0xf,0x67,0x4b, 0x5,0x6f,0x72, 0x5,0x6f,0x73, 0x7,0x57,0x5b,
+  0xf,0x69,0x3d, 0x5,0x73,0x34, 0x7,0x57,0x5d, 0x5,0x73,0x35,
+  0x7,0x5b,0x4b, 0x7,0x57,0x5c, 0x7,0x5e,0x57, 0x5,0x77,0x57,
+  0x5,0x7b,0x5f, 0x7,0x65,0x5a, 0x7,0x66,0x42, 0x7,0x66,0x4f,
+  0x6,0x22,0x62, 0x6,0x2f,0x6d, 0x6,0x26,0x6b, 0x6,0x2a,0x52,
+  0xf,0x29,0x7e, 0xf,0x2a,0x21, 0x5,0x2c,0x64, 0x6,0x36,0x42,
+  0x6,0x2f,0x6e, 0x6,0x36,0x41, 0xf,0x2e,0x62, 0x5,0x2c,0x63,
+  0x6,0x3e,0x36, 0xf,0x33,0x62, 0x6,0x47,0x52, 0x6,0x51,0x59,
+  0x6,0x51,0x58, 0x6,0x5b,0x6a, 0x6,0x64,0x7a, 0x6,0x5b,0x68,
+  0xf,0x47,0x3d, 0x6,0x5b,0x69, 0x7,0x21,0x7a, 0x7,0x21,0x79,
+  0x7,0x2c,0x75, 0x7,0x3f,0x36, 0x7,0x43,0x3f, 0xf,0x5e,0x4f,
+  0x7,0x3f,0x37, 0x7,0x46,0x48, 0x7,0x46,0x49, 0x7,0x48,0x3b,
+  0x7,0x57,0x5e, 0x5,0x21,0x2f, 0x6,0x22,0x63, 0x6,0x24,0x37,
+  0x6,0x24,0x36, 0x6,0x26,0x6c, 0xf,0x23,0x5c, 0x6,0x36,0x43,
+  0x6,0x3e,0x37, 0x6,0x3e,0x38, 0x6,0x51,0x5a, 0x6,0x24,0x39,
+  0x6,0x24,0x38, 0x5,0x23,0x64, 0x5,0x23,0x63, 0x4,0x25,0x6f,
+  0x6,0x2a,0x53, 0xf,0x26,0x34, 0xf,0x2e,0x63, 0x5,0x31,0x5e,
+  0x6,0x3e,0x39, 0x6,0x3e,0x3c, 0x5,0x2c,0x65, 0x6,0x3e,0x3b,
+  0x6,0x3e,0x3a, 0x5,0x3e,0x4f, 0x6,0x51,0x5c, 0xf,0x40,0x74,
+  0x6,0x5b,0x6c, 0xf,0x47,0x3e, 0x6,0x5b,0x6d, 0x5,0x4c,0x50,
+  0xf,0x4e,0x2f, 0xf,0x53,0x79, 0x7,0x2c,0x76, 0x7,0x2c,0x77,
+  0x7,0x37,0x46, 0x7,0x46,0x4a, 0x7,0x3f,0x3a, 0x7,0x3f,0x38,
+  0x7,0x3f,0x39, 0x7,0x46,0x4b, 0x7,0x4d,0x4f, 0x6,0x22,0x64,
+  0x6,0x22,0x65, 0x6,0x24,0x3a, 0x6,0x26,0x6e, 0x6,0x26,0x6d,
+  0x6,0x2a,0x54, 0xf,0x25,0x42, 0x5,0x28,0x5f, 0x5,0x2c,0x68,
+  0x4,0x2c,0x35, 0x5,0x2c,0x67, 0x6,0x36,0x46, 0x6,0x36,0x45,
+  0xf,0x2e,0x64, 0xf,0x2e,0x65, 0x6,0x36,0x47, 0x5,0x2c,0x69,
+  0x4,0x31,0x24, 0x5,0x31,0x61, 0x6,0x3e,0x3d, 0x5,0x31,0x5f,
+  0x5,0x31,0x60, 0x5,0x31,0x62, 0xf,0x33,0x63, 0x6,0x47,0x54,
+  0x5,0x37,0x3e, 0x5,0x37,0x42, 0x5,0x37,0x40, 0x5,0x37,0x41,
+  0xf,0x3a,0x27, 0x5,0x3e,0x50, 0x6,0x51,0x5d, 0x5,0x3e,0x52,
+  0x5,0x3e,0x51, 0x6,0x51,0x5f, 0x4,0x42,0x61, 0x6,0x5b,0x6f,
+  0x6,0x5b,0x70, 0x6,0x5b,0x6e, 0x5,0x45,0x2c, 0x5,0x45,0x2e,
+  0x7,0x21,0x7b, 0x5,0x4c,0x51, 0x7,0x3f,0x3b, 0x5,0x5b,0x31,
+  0x5,0x5b,0x32, 0x7,0x46,0x4c, 0x6,0x21,0x67, 0x6,0x21,0x68,
+  0xf,0x21,0x38, 0x6,0x22,0x66, 0xf,0x21,0x53, 0xf,0x21,0x54,
+  0x5,0x21,0x76, 0x6,0x24,0x3c, 0x4,0x22,0x54, 0x6,0x24,0x3f,
+  0x6,0x24,0x40, 0x6,0x24,0x3e, 0x6,0x24,0x3d, 0xf,0x21,0x6b,
+  0x4,0x23,0x63, 0x4,0x23,0x64, 0x4,0x23,0x66, 0xf,0x23,0x5d,
+  0xf,0x23,0x5e, 0xf,0x23,0x5f, 0xf,0x23,0x60, 0xf,0x23,0x61,
+  0xf,0x23,0x62, 0xf,0x23,0x63, 0x6,0x26,0x70, 0x6,0x26,0x6f,
+  0x4,0x25,0x76, 0x5,0x25,0x5a, 0x4,0x25,0x74, 0x6,0x2a,0x55,
+  0x6,0x2a,0x56, 0x4,0x28,0x63, 0x6,0x2a,0x5c, 0x6,0x2a,0x58,
+  0x6,0x2a,0x59, 0xf,0x26,0x36, 0xf,0x26,0x37, 0x6,0x2a,0x5a,
+  0x6,0x2a,0x5b, 0x6,0x2a,0x5d, 0x4,0x25,0x79, 0x6,0x2a,0x57,
+  0x6,0x29,0x39, 0x4,0x28,0x64, 0x4,0x28,0x62, 0x5,0x28,0x61,
+  0x5,0x28,0x62, 0x5,0x28,0x60, 0xf,0x2a,0x23, 0xf,0x2a,0x24,
+  0xf,0x2a,0x25, 0xf,0x2a,0x26, 0xf,0x2a,0x28, 0xf,0x2a,0x29,
+  0xf,0x2a,0x27, 0xf,0x2a,0x22, 0x5,0x2c,0x6c, 0x6,0x36,0x48,
+  0x6,0x36,0x4b, 0x5,0x2c,0x6a, 0x5,0x2c,0x6d, 0xf,0x2e,0x67,
+  0xf,0x2e,0x68, 0xf,0x2e,0x69, 0x6,0x36,0x4a, 0x4,0x2c,0x37,
+  0x5,0x2c,0x6b, 0x5,0x31,0x64, 0xf,0x2e,0x66, 0x4,0x2c,0x36,
+  0x6,0x3e,0x41, 0x6,0x3e,0x44, 0x3,0x34,0x7e, 0x6,0x3e,0x3e,
+  0x6,0x3e,0x43, 0x6,0x3e,0x40, 0x6,0x3e,0x45, 0x6,0x3e,0x3f,
+  0xf,0x33,0x64, 0xf,0x33,0x65, 0x4,0x31,0x27, 0x5,0x31,0x63,
+  0x4,0x3c,0x5e, 0x6,0x47,0x58, 0x6,0x47,0x5b, 0x6,0x47,0x5d,
+  0x6,0x47,0x5a, 0xf,0x3a,0x28, 0x6,0x47,0x55, 0x6,0x47,0x5c,
+  0x5,0x37,0x43, 0x6,0x47,0x59, 0x4,0x36,0x7a, 0x4,0x36,0x78,
+  0x5,0x37,0x44, 0x6,0x47,0x57, 0x6,0x51,0x60, 0x6,0x51,0x61,
+  0x4,0x3c,0x5d, 0xf,0x40,0x76, 0x5,0x3e,0x53, 0x5,0x3e,0x54,
+  0x5,0x3e,0x55, 0x6,0x5b,0x72, 0x4,0x42,0x63, 0x5,0x45,0x2f,
+  0x4,0x42,0x62, 0xf,0x47,0x3f, 0xf,0x47,0x40, 0xf,0x47,0x41,
+  0x6,0x5b,0x71, 0x5,0x45,0x30, 0x4,0x49,0x38, 0x7,0x22,0x22,
+  0x7,0x21,0x7c, 0x7,0x22,0x21, 0x7,0x2c,0x7c, 0x7,0x21,0x7e,
+  0x5,0x4c,0x53, 0xf,0x4e,0x31, 0xf,0x4e,0x32, 0x7,0x21,0x7d,
+  0x4,0x42,0x64, 0x5,0x4c,0x52, 0x7,0x2c,0x7d, 0x5,0x53,0x7c,
+  0x7,0x2c,0x78, 0x7,0x2c,0x79, 0x4,0x56,0x21, 0xf,0x53,0x7a,
+  0x7,0x2c,0x7a, 0x7,0x37,0x48, 0x7,0x37,0x47, 0x5,0x5b,0x33,
+  0x4,0x56,0x2e, 0x4,0x5a,0x7b, 0xf,0x62,0x29, 0x5,0x6b,0x78,
+  0x7,0x53,0x29, 0xf,0x69,0x3e, 0x5,0x75,0x68, 0xf,0x6b,0x44,
+  0x7,0x5e,0x58, 0xf,0x6c,0x5f, 0x5,0x21,0x62, 0xf,0x21,0x55,
+  0xf,0x21,0x56, 0x6,0x24,0x41, 0x4,0x22,0x58, 0x6,0x24,0x42,
+  0xf,0x22,0x39, 0xf,0x22,0x3a, 0xf,0x22,0x3b, 0xf,0x22,0x3c,
+  0x4,0x22,0x57, 0x5,0x22,0x4b, 0x6,0x24,0x43, 0x5,0x22,0x4a,
+  0x6,0x26,0x74, 0x4,0x23,0x68, 0x4,0x23,0x6b, 0xf,0x23,0x64,
+  0xf,0x23,0x66, 0xf,0x23,0x68, 0xf,0x23,0x69, 0xf,0x23,0x6b,
+  0xf,0x23,0x6c, 0xf,0x23,0x6d, 0xf,0x23,0x6e, 0xf,0x23,0x6f,
+  0xf,0x23,0x65, 0x6,0x26,0x72, 0x6,0x26,0x73, 0x6,0x26,0x75,
+  0x6,0x26,0x71, 0xf,0x23,0x6a, 0xf,0x23,0x67, 0x5,0x23,0x66,
+  0x5,0x23,0x67, 0x5,0x23,0x65, 0x4,0x25,0x7c, 0x6,0x2a,0x61,
+  0x6,0x2a,0x60, 0x5,0x25,0x60, 0x4,0x25,0x7a, 0x5,0x25,0x5e,
+  0x4,0x25,0x7d, 0x5,0x25,0x5b, 0x5,0x25,0x5c, 0x4,0x25,0x7e,
+  0xf,0x26,0x3a, 0xf,0x26,0x3b, 0xf,0x26,0x3e, 0xf,0x26,0x3f,
+  0xf,0x26,0x40, 0xf,0x26,0x41, 0xf,0x26,0x42, 0xf,0x26,0x43,
+  0xf,0x26,0x45, 0xf,0x26,0x46, 0xf,0x26,0x47, 0xf,0x26,0x48,
+  0xf,0x26,0x49, 0x6,0x2a,0x5f, 0x6,0x2a,0x5e, 0xf,0x26,0x44,
+  0xf,0x26,0x3c, 0xf,0x26,0x3d, 0x5,0x25,0x62, 0x5,0x25,0x5f,
+  0x5,0x25,0x63, 0x5,0x25,0x61, 0x4,0x28,0x68, 0x5,0x28,0x64,
+  0x6,0x2f,0x76, 0x6,0x2f,0x78, 0x6,0x2f,0x79, 0x4,0x28,0x65,
+  0x4,0x28,0x6b, 0x5,0x28,0x66, 0x4,0x28,0x66, 0x5,0x28,0x63,
+  0x6,0x2f,0x70, 0x6,0x2f,0x7b, 0x6,0x2f,0x74, 0x5,0x28,0x6b,
+  0x6,0x2f,0x7e, 0xf,0x2a,0x2d, 0xf,0x2a,0x2e, 0xf,0x2a,0x2f,
+  0xf,0x2a,0x30, 0xf,0x2a,0x31, 0xf,0x2a,0x32, 0xf,0x2a,0x33,
+  0xf,0x2a,0x34, 0x6,0x2f,0x73, 0x6,0x2f,0x77, 0x4,0x28,0x6c,
+  0x6,0x2f,0x75, 0x6,0x2f,0x7a, 0x6,0x2f,0x6f, 0x6,0x2f,0x7d,
+  0x5,0x28,0x69, 0x4,0x28,0x6a, 0x5,0x28,0x6a, 0x5,0x28,0x67,
+  0x6,0x2f,0x71, 0x6,0x2f,0x7c, 0x5,0x28,0x65, 0x5,0x28,0x68,
+  0x6,0x2f,0x72, 0x3,0x30,0x53, 0x5,0x2c,0x70, 0x6,0x36,0x4f,
+  0x5,0x2c,0x72, 0x5,0x2c,0x75, 0x5,0x2c,0x6f, 0x6,0x36,0x55,
+  0x5,0x2c,0x6e, 0x6,0x36,0x56, 0x6,0x36,0x50, 0x6,0x36,0x51,
+  0xf,0x2e,0x6c, 0xf,0x2e,0x6e, 0xf,0x2e,0x70, 0xf,0x2e,0x71,
+  0xf,0x2e,0x73, 0xf,0x2e,0x74, 0xf,0x2e,0x75, 0xf,0x2e,0x76,
+  0xf,0x2e,0x77, 0xf,0x2e,0x79, 0x6,0x36,0x54, 0x6,0x36,0x4e,
+  0x5,0x2c,0x71, 0x6,0x36,0x53, 0x6,0x36,0x52, 0xf,0x2e,0x6f,
+  0xf,0x2e,0x72, 0x5,0x2c,0x77, 0x5,0x2c,0x74, 0x5,0x2c,0x73,
+  0x5,0x2c,0x76, 0x5,0x2c,0x78, 0x6,0x3e,0x4c, 0x6,0x3e,0x52,
+  0x6,0x3e,0x46, 0x6,0x3e,0x47, 0x5,0x31,0x6a, 0x6,0x3e,0x48,
+  0x6,0x3e,0x49, 0x6,0x3e,0x4f, 0x5,0x31,0x69, 0x5,0x31,0x6d,
+  0x6,0x3e,0x4d, 0x4,0x31,0x2b, 0x6,0x3e,0x4e, 0x5,0x31,0x6b,
+  0x6,0x3e,0x53, 0xf,0x33,0x68, 0xf,0x33,0x69, 0xf,0x33,0x6a,
+  0xf,0x33,0x6b, 0xf,0x33,0x6c, 0xf,0x33,0x6d, 0xf,0x33,0x6e,
+  0xf,0x33,0x6f, 0xf,0x33,0x71, 0xf,0x33,0x72, 0xf,0x33,0x74,
+  0xf,0x33,0x75, 0xf,0x33,0x76, 0xf,0x33,0x77, 0xf,0x33,0x78,
+  0xf,0x33,0x79, 0xf,0x33,0x7a, 0xf,0x33,0x7b, 0xf,0x33,0x7c,
+  0xf,0x33,0x7d, 0xf,0x33,0x7e, 0xf,0x34,0x21, 0xf,0x34,0x22,
+  0xf,0x34,0x23, 0xf,0x33,0x70, 0x6,0x3e,0x51, 0x4,0x31,0x2a,
+  0x6,0x3e,0x4b, 0x6,0x3e,0x4a, 0x5,0x31,0x66, 0x5,0x31,0x67,
+  0x5,0x31,0x68, 0x5,0x31,0x65, 0x4,0x36,0x7b, 0x6,0x47,0x62,
+  0x4,0x36,0x7c, 0x5,0x37,0x5a, 0x6,0x47,0x5f, 0x4,0x37,0x21,
+  0x5,0x37,0x48, 0x5,0x37,0x59, 0x6,0x47,0x64, 0x6,0x47,0x66,
+  0x5,0x37,0x4f, 0x6,0x47,0x65, 0x6,0x47,0x60, 0x5,0x37,0x50,
+  0x5,0x37,0x49, 0x5,0x37,0x57, 0x5,0x37,0x54, 0x5,0x37,0x47,
+  0x5,0x37,0x4b, 0xf,0x3a,0x29, 0xf,0x3a,0x2b, 0xf,0x3a,0x2c,
+  0xf,0x3a,0x2d, 0xf,0x3a,0x2e, 0xf,0x3a,0x2f, 0xf,0x3a,0x30,
+  0xf,0x3a,0x32, 0xf,0x3a,0x33, 0xf,0x3a,0x34, 0xf,0x3a,0x36,
+  0xf,0x3a,0x37, 0xf,0x3a,0x38, 0xf,0x3a,0x39, 0xf,0x3a,0x3a,
+  0xf,0x3a,0x3e, 0xf,0x3a,0x3f, 0xf,0x3a,0x41, 0xf,0x3a,0x42,
+  0xf,0x3a,0x43, 0xf,0x3a,0x44, 0xf,0x3a,0x45, 0xf,0x3a,0x3b,
+  0x5,0x37,0x56, 0x6,0x47,0x63, 0x5,0x37,0x58, 0x6,0x47,0x5e,
+  0xf,0x3a,0x3d, 0xf,0x3a,0x40, 0xf,0x3a,0x31, 0xf,0x3a,0x2a,
+  0x5,0x37,0x45, 0x5,0x3e,0x56, 0x5,0x37,0x53, 0x5,0x37,0x4c,
+  0x5,0x37,0x52, 0x5,0x37,0x51, 0x5,0x37,0x4a, 0x5,0x37,0x4d,
+  0x5,0x37,0x55, 0x6,0x47,0x67, 0xf,0x33,0x67, 0x5,0x3e,0x5f,
+  0x5,0x3e,0x5a, 0x5,0x3e,0x5d, 0x5,0x3e,0x57, 0x4,0x3c,0x65,
+  0x5,0x3e,0x59, 0x6,0x51,0x63, 0x4,0x3c,0x62, 0x4,0x3c,0x60,
+  0x6,0x51,0x67, 0x6,0x51,0x65, 0x6,0x5b,0x7c, 0x5,0x3e,0x5c,
+  0x5,0x3e,0x5b, 0x6,0x51,0x66, 0xf,0x40,0x78, 0xf,0x40,0x79,
+  0xf,0x40,0x7a, 0xf,0x40,0x7c, 0xf,0x40,0x7d, 0xf,0x40,0x7e,
+  0xf,0x41,0x22, 0xf,0x41,0x23, 0x6,0x51,0x62, 0x6,0x51,0x64,
+  0xf,0x40,0x77, 0x6,0x51,0x68, 0x5,0x3e,0x58, 0x5,0x3e,0x5e,
+  0x5,0x3e,0x60, 0x6,0x51,0x6a, 0xf,0x41,0x21, 0x4,0x42,0x70,
+  0x5,0x45,0x32, 0x4,0x42,0x6a, 0x6,0x5b,0x7b, 0x4,0x42,0x71,
+  0x6,0x5b,0x73, 0x5,0x45,0x34, 0x7,0x22,0x29, 0x4,0x42,0x73,
+  0x6,0x5b,0x75, 0xf,0x47,0x48, 0x4,0x42,0x6f, 0x5,0x45,0x37,
+  0x4,0x42,0x6e, 0xf,0x47,0x47, 0xf,0x47,0x49, 0xf,0x47,0x4a,
+  0xf,0x47,0x4b, 0xf,0x47,0x4c, 0xf,0x47,0x4d, 0xf,0x47,0x4e,
+  0xf,0x47,0x4f, 0xf,0x47,0x50, 0xf,0x47,0x51, 0xf,0x47,0x52,
+  0xf,0x47,0x54, 0x6,0x5b,0x74, 0x6,0x5b,0x78, 0x4,0x42,0x72,
+  0x4,0x42,0x65, 0x6,0x5b,0x76, 0xf,0x47,0x53, 0x5,0x45,0x33,
+  0x5,0x45,0x36, 0x5,0x45,0x35, 0x7,0x22,0x26, 0x5,0x45,0x31,
+  0x6,0x5b,0x77, 0x5,0x4c,0x5b, 0x5,0x4c,0x59, 0x4,0x49,0x39,
+  0x5,0x4c,0x56, 0x7,0x22,0x2f, 0x5,0x4c,0x57, 0x4,0x49,0x3f,
+  0x4,0x49,0x3b, 0x7,0x22,0x2c, 0x4,0x49,0x3e, 0x7,0x22,0x25,
+  0x6,0x5b,0x79, 0x7,0x22,0x24, 0xf,0x4e,0x3a, 0x7,0x37,0x51,
+  0xf,0x47,0x45, 0x5,0x4c,0x54, 0x5,0x4c,0x5c, 0xf,0x4e,0x33,
+  0xf,0x4e,0x34, 0xf,0x4e,0x35, 0xf,0x4e,0x36, 0xf,0x4e,0x37,
+  0xf,0x4e,0x38, 0xf,0x4e,0x39, 0xf,0x4e,0x3b, 0xf,0x4e,0x3d,
+  0xf,0x4e,0x3e, 0xf,0x4e,0x3f, 0xf,0x4e,0x40, 0xf,0x4e,0x41,
+  0xf,0x4e,0x42, 0xf,0x4e,0x44, 0x6,0x5b,0x7a, 0x7,0x22,0x27,
+  0x7,0x22,0x2e, 0x7,0x22,0x2d, 0x7,0x22,0x28, 0x7,0x22,0x23,
+  0xf,0x4e,0x45, 0xf,0x4e,0x43, 0xf,0x4e,0x3c, 0x5,0x4c,0x5a,
+  0x5,0x4c,0x55, 0x4,0x49,0x3d, 0x7,0x22,0x2a, 0x5,0x4c,0x58,
+  0x7,0x22,0x2b, 0xf,0x54,0x25, 0x5,0x54,0x28, 0x5,0x54,0x23,
+  0x7,0x2d,0x25, 0x7,0x2c,0x7e, 0x5,0x54,0x29, 0x5,0x54,0x26,
+  0x7,0x2d,0x21, 0x4,0x4f,0x7e, 0x7,0x2d,0x28, 0x5,0x54,0x22,
+  0x7,0x2d,0x2b, 0x5,0x53,0x7d, 0x7,0x2d,0x2a, 0x7,0x2d,0x2c,
+  0xf,0x53,0x7b, 0xf,0x53,0x7c, 0xf,0x53,0x7d, 0xf,0x53,0x7e,
+  0xf,0x54,0x22, 0xf,0x54,0x23, 0xf,0x54,0x24, 0xf,0x54,0x26,
+  0xf,0x54,0x27, 0xf,0x54,0x2b, 0xf,0x54,0x2c, 0x5,0x53,0x7e,
+  0x7,0x2d,0x26, 0x7,0x2d,0x27, 0x7,0x2d,0x23, 0x7,0x2d,0x22,
+  0x7,0x2d,0x24, 0xf,0x54,0x21, 0xf,0x54,0x28, 0x5,0x54,0x27,
+  0x5,0x54,0x21, 0x5,0x54,0x25, 0x7,0x2d,0x29, 0x7,0x37,0x4b,
+  0x7,0x37,0x54, 0x7,0x37,0x4f, 0x4,0x4f,0x7d, 0x7,0x37,0x4d,
+  0x4,0x56,0x23, 0x7,0x37,0x53, 0x7,0x37,0x4a, 0x5,0x5b,0x36,
+  0x5,0x5b,0x34, 0x7,0x37,0x4c, 0x7,0x37,0x4e, 0x7,0x37,0x50,
+  0x5,0x5b,0x35, 0x4,0x56,0x25, 0xf,0x59,0x6c, 0xf,0x59,0x6d,
+  0xf,0x59,0x6e, 0xf,0x59,0x6f, 0xf,0x59,0x70, 0xf,0x59,0x71,
+  0x7,0x37,0x52, 0x7,0x37,0x55, 0x7,0x37,0x49, 0x5,0x61,0x4b,
+  0x4,0x5a,0x7c, 0x7,0x3f,0x3f, 0x5,0x61,0x4c, 0x5,0x61,0x4d,
+  0x7,0x3f,0x3e, 0x7,0x3f,0x40, 0xf,0x5e,0x50, 0xf,0x5e,0x51,
+  0xf,0x5e,0x52, 0xf,0x5e,0x54, 0x7,0x3f,0x3d, 0x7,0x3f,0x41,
+  0xf,0x5e,0x53, 0x7,0x3f,0x3c, 0x5,0x67,0x5f, 0x4,0x5f,0x53,
+  0x7,0x46,0x4d, 0x7,0x46,0x52, 0x7,0x46,0x50, 0xf,0x5e,0x55,
+  0xf,0x62,0x2a, 0xf,0x62,0x2b, 0x7,0x46,0x4e, 0x5,0x67,0x61,
+  0x5,0x67,0x60, 0xf,0x5f,0x73, 0x7,0x4d,0x51, 0x5,0x6b,0x79,
+  0xf,0x65,0x26, 0x5,0x6b,0x7a, 0x5,0x6b,0x7b, 0x7,0x53,0x2a,
+  0x5,0x6f,0x76, 0x7,0x53,0x2b, 0x5,0x6f,0x75, 0xf,0x67,0x4d,
+  0xf,0x67,0x4e, 0x7,0x57,0x62, 0x5,0x73,0x36, 0x7,0x57,0x61,
+  0x7,0x57,0x63, 0x7,0x57,0x5f, 0xf,0x69,0x3f, 0x7,0x57,0x60,
+  0x7,0x57,0x64, 0xf,0x69,0x40, 0x5,0x75,0x69, 0x7,0x5b,0x4c,
+  0x7,0x5e,0x5a, 0x7,0x5e,0x5b, 0xf,0x6b,0x45, 0x7,0x5e,0x59,
+  0x7,0x5e,0x5c, 0xf,0x6c,0x24, 0x5,0x79,0x24, 0xf,0x6c,0x4a,
+  0x7,0x63,0x4d, 0x5,0x7a,0x65, 0x4,0x21,0x33, 0x6,0x22,0x68,
+  0x5,0x21,0x63, 0x6,0x22,0x69, 0xf,0x21,0x58, 0xf,0x21,0x57,
+  0x6,0x24,0x45, 0x6,0x24,0x44, 0x6,0x26,0x76, 0x6,0x26,0x77,
+  0x5,0x23,0x6a, 0x4,0x23,0x6c, 0xf,0x23,0x70, 0x5,0x23,0x69,
+  0x4,0x28,0x6f, 0x6,0x30,0x24, 0x6,0x2a,0x63, 0x6,0x2a,0x62,
+  0xf,0x26,0x4a, 0xf,0x26,0x4b, 0xf,0x26,0x4c, 0xf,0x26,0x4d,
+  0xf,0x26,0x4f, 0x6,0x2a,0x64, 0xf,0x26,0x4e, 0x6,0x30,0x23,
+  0x6,0x30,0x21, 0x6,0x30,0x26, 0x6,0x30,0x25, 0xf,0x2a,0x35,
+  0xf,0x2a,0x36, 0xf,0x2a,0x37, 0x6,0x30,0x22, 0x6,0x36,0x59,
+  0x5,0x2c,0x79, 0x6,0x36,0x58, 0xf,0x2e,0x7a, 0xf,0x2e,0x7b,
+  0x5,0x2c,0x7a, 0xf,0x33,0x66, 0xf,0x34,0x24, 0xf,0x34,0x25,
+  0xf,0x34,0x26, 0xf,0x34,0x27, 0x5,0x37,0x5c, 0x6,0x47,0x69,
+  0x5,0x37,0x5b, 0x6,0x47,0x6a, 0xf,0x3a,0x47, 0x6,0x47,0x68,
+  0xf,0x3a,0x46, 0x4,0x3c,0x66, 0x4,0x3c,0x68, 0x6,0x51,0x6d,
+  0x5,0x3e,0x62, 0xf,0x41,0x25, 0xf,0x41,0x26, 0x6,0x51,0x6b,
+  0x6,0x51,0x6c, 0x5,0x3e,0x61, 0x4,0x3c,0x69, 0x6,0x5b,0x7d,
+  0xf,0x47,0x55, 0xf,0x47,0x56, 0x5,0x45,0x38, 0x4,0x49,0x41,
+  0x4,0x49,0x42, 0xf,0x4e,0x46, 0x5,0x4c,0x5d, 0x7,0x2d,0x2f,
+  0x7,0x2d,0x2e, 0x7,0x2d,0x31, 0x7,0x2d,0x32, 0x5,0x54,0x2a,
+  0x7,0x2d,0x30, 0xf,0x54,0x2d, 0xf,0x54,0x2e, 0x7,0x37,0x56,
+  0x7,0x4d,0x52, 0xf,0x62,0x2c, 0xf,0x62,0x2d, 0x5,0x6b,0x7c,
+  0xf,0x6c,0x60, 0x6,0x21,0x69, 0x5,0x21,0x64, 0x6,0x24,0x46,
+  0x6,0x24,0x49, 0x6,0x24,0x4a, 0x4,0x22,0x5a, 0xf,0x22,0x3d,
+  0xf,0x22,0x3e, 0xf,0x22,0x3f, 0xf,0x22,0x40, 0xf,0x22,0x41,
+  0x6,0x24,0x47, 0x6,0x26,0x7e, 0x6,0x26,0x7d, 0x4,0x23,0x6e,
+  0x6,0x26,0x7b, 0x6,0x26,0x7c, 0xf,0x23,0x72, 0x5,0x25,0x65,
+  0x5,0x25,0x64, 0x6,0x2a,0x66, 0x5,0x25,0x66, 0x6,0x2a,0x67,
+  0x6,0x2a,0x68, 0xf,0x26,0x51, 0xf,0x26,0x52, 0xf,0x26,0x54,
+  0xf,0x26,0x55, 0x6,0x2a,0x65, 0xf,0x26,0x53, 0x5,0x28,0x6c,
+  0x6,0x30,0x28, 0x6,0x30,0x2a, 0x5,0x28,0x6d, 0x4,0x28,0x71,
+  0x4,0x28,0x72, 0x4,0x28,0x73, 0x6,0x30,0x2b, 0x6,0x30,0x27,
+  0x6,0x30,0x29, 0xf,0x2a,0x38, 0xf,0x2a,0x3a, 0xf,0x2a,0x3b,
+  0xf,0x2a,0x3c, 0x6,0x30,0x2c, 0x6,0x30,0x2d, 0x4,0x2c,0x4a,
+  0x6,0x36,0x61, 0x4,0x2c,0x45, 0x4,0x2c,0x44, 0x4,0x2c,0x43,
+  0x4,0x2c,0x47, 0x6,0x36,0x64, 0x6,0x36,0x65, 0x6,0x36,0x5f,
+  0x6,0x36,0x5e, 0x5,0x2c,0x7d, 0x5,0x2d,0x22, 0x6,0x36,0x5b,
+  0x6,0x36,0x62, 0xf,0x2e,0x7c, 0xf,0x2e,0x7d, 0x6,0x36,0x60,
+  0x6,0x36,0x63, 0x6,0x36,0x5a, 0x6,0x36,0x5c, 0x5,0x2d,0x21,
+  0x5,0x2c,0x7e, 0x4,0x31,0x2d, 0x5,0x31,0x6f, 0x6,0x3e,0x57,
+  0x6,0x3e,0x59, 0x6,0x3e,0x58, 0x6,0x3e,0x56, 0x6,0x3e,0x5b,
+  0x5,0x31,0x70, 0xf,0x34,0x28, 0xf,0x34,0x29, 0xf,0x34,0x2a,
+  0xf,0x34,0x2b, 0xf,0x34,0x2c, 0xf,0x34,0x2d, 0xf,0x34,0x2e,
+  0xf,0x34,0x2f, 0x4,0x31,0x2f, 0x6,0x3e,0x5c, 0x5,0x31,0x6e,
+  0x6,0x3e,0x55, 0x5,0x37,0x5e, 0x4,0x37,0x26, 0x5,0x37,0x61,
+  0x6,0x47,0x70, 0x6,0x47,0x6b, 0x4,0x37,0x23, 0x5,0x37,0x5d,
+  0x5,0x37,0x60, 0x6,0x47,0x6e, 0x4,0x37,0x25, 0x5,0x37,0x5f,
+  0x6,0x47,0x6f, 0x6,0x47,0x6c, 0xf,0x3a,0x48, 0xf,0x3a,0x49,
+  0xf,0x3a,0x4a, 0xf,0x3a,0x4b, 0xf,0x3a,0x4c, 0xf,0x3a,0x4d,
+  0xf,0x3a,0x4e, 0xf,0x3a,0x4f, 0x6,0x47,0x6d, 0x5,0x37,0x62,
+  0xf,0x3d,0x6c, 0x6,0x51,0x74, 0x6,0x51,0x70, 0x4,0x3c,0x6b,
+  0x4,0x3c,0x70, 0x5,0x3e,0x63, 0x6,0x51,0x77, 0x5,0x3e,0x64,
+  0x6,0x51,0x72, 0x6,0x51,0x71, 0x6,0x51,0x76, 0x4,0x3c,0x6d,
+  0x6,0x51,0x73, 0x6,0x51,0x6f, 0x6,0x51,0x75, 0xf,0x41,0x27,
+  0xf,0x41,0x28, 0xf,0x41,0x29, 0xf,0x41,0x2a, 0xf,0x41,0x2c,
+  0xf,0x41,0x2d, 0xf,0x41,0x2e, 0x6,0x51,0x6e, 0x6,0x5b,0x7e,
+  0x6,0x5c,0x27, 0x5,0x45,0x3c, 0x5,0x45,0x3a, 0x6,0x5c,0x24,
+  0x6,0x5c,0x2c, 0x4,0x42,0x76, 0x6,0x5c,0x2e, 0x6,0x5c,0x2b,
+  0x6,0x5c,0x26, 0x5,0x45,0x39, 0x7,0x22,0x33, 0xf,0x47,0x57,
+  0xf,0x47,0x58, 0xf,0x47,0x59, 0xf,0x47,0x5a, 0x6,0x5c,0x28,
+  0x6,0x5c,0x25, 0x6,0x5c,0x29, 0x6,0x5c,0x2d, 0x6,0x5c,0x21,
+  0x6,0x5c,0x23, 0x5,0x45,0x3b, 0x6,0x5c,0x2a, 0xf,0x47,0x44,
+  0x6,0x62,0x67, 0x7,0x22,0x30, 0x5,0x4c,0x5e, 0x4,0x49,0x47,
+  0x7,0x22,0x37, 0x4,0x49,0x48, 0x7,0x22,0x35, 0x7,0x22,0x32,
+  0xf,0x4e,0x47, 0xf,0x4e,0x48, 0xf,0x4e,0x49, 0xf,0x4e,0x4a,
+  0xf,0x4e,0x4b, 0xf,0x4e,0x4c, 0xf,0x4e,0x4e, 0xf,0x4e,0x4f,
+  0x7,0x22,0x38, 0x7,0x22,0x36, 0xf,0x4e,0x4d, 0x5,0x4c,0x61,
+  0x5,0x4c,0x5f, 0x7,0x22,0x31, 0x5,0x4c,0x60, 0x7,0x2d,0x35,
+  0x7,0x2d,0x37, 0x5,0x54,0x2c, 0x4,0x50,0x22, 0x5,0x54,0x2d,
+  0x5,0x54,0x2b, 0x7,0x2d,0x36, 0x7,0x2d,0x33, 0x7,0x2d,0x34,
+  0xf,0x54,0x2f, 0xf,0x54,0x30, 0xf,0x54,0x31, 0xf,0x54,0x33,
+  0xf,0x54,0x34, 0xf,0x54,0x35, 0xf,0x54,0x36, 0xf,0x54,0x37,
+  0x7,0x37,0x59, 0x7,0x37,0x57, 0x5,0x5b,0x38, 0xf,0x59,0x72,
+  0xf,0x59,0x73, 0xf,0x59,0x74, 0xf,0x59,0x75, 0x7,0x37,0x58,
+  0x7,0x37,0x5a, 0x7,0x22,0x34, 0x5,0x5b,0x37, 0x7,0x46,0x58,
+  0x5,0x61,0x4e, 0xf,0x59,0x76, 0xf,0x5e,0x56, 0xf,0x5e,0x57,
+  0x7,0x3f,0x42, 0xf,0x62,0x2e, 0x4,0x5f,0x57, 0x7,0x46,0x53,
+  0x7,0x46,0x55, 0x4,0x5f,0x56, 0x7,0x46,0x57, 0x7,0x46,0x56,
+  0xf,0x62,0x2f, 0x7,0x46,0x54, 0x4,0x63,0x36, 0x7,0x4d,0x53,
+  0x7,0x53,0x2c, 0x4,0x66,0x38, 0x7,0x53,0x2d, 0xf,0x67,0x4f,
+  0xf,0x67,0x50, 0x7,0x53,0x2e, 0x5,0x73,0x38, 0x4,0x68,0x66,
+  0x7,0x57,0x65, 0x5,0x73,0x37, 0x7,0x57,0x66, 0x4,0x6a,0x45,
+  0x4,0x6b,0x67, 0xf,0x6b,0x46, 0x7,0x60,0x6c, 0x7,0x64,0x45,
+  0x5,0x79,0x25, 0xf,0x6c,0x25, 0x4,0x6d,0x54, 0x5,0x7a,0x27,
+  0x4,0x6d,0x71, 0x7,0x63,0x4e, 0x7,0x65,0x34, 0x6,0x21,0x6a,
+  0x6,0x2a,0x6a, 0x6,0x2a,0x69, 0xf,0x26,0x56, 0xf,0x26,0x57,
+  0x5,0x28,0x6f, 0x6,0x30,0x2e, 0xf,0x2a,0x3d, 0x6,0x30,0x31,
+  0x6,0x30,0x2f, 0x4,0x31,0x31, 0x6,0x43,0x67, 0x6,0x3e,0x5e,
+  0x6,0x3e,0x5d, 0x4,0x37,0x27, 0x6,0x3e,0x5f, 0x6,0x51,0x7a,
+  0x6,0x51,0x78, 0x6,0x51,0x79, 0x6,0x5c,0x30, 0x4,0x44,0x26,
+  0xf,0x47,0x5b, 0x6,0x5c,0x31, 0x5,0x45,0x3d, 0xf,0x4e,0x51,
+  0x7,0x22,0x3a, 0x7,0x22,0x39, 0x7,0x2d,0x39, 0x5,0x53,0x52,
+  0x7,0x2d,0x38, 0x7,0x37,0x5b, 0x7,0x37,0x5c, 0x5,0x61,0x4f,
+  0x7,0x46,0x59, 0x7,0x4d,0x54, 0x7,0x53,0x2f, 0x6,0x21,0x6b,
+  0xf,0x21,0x39, 0x6,0x24,0x4c, 0x5,0x22,0x4c, 0x6,0x27,0x24,
+  0x4,0x23,0x72, 0x6,0x27,0x23, 0x6,0x27,0x22, 0xf,0x23,0x73,
+  0x5,0x25,0x67, 0xf,0x26,0x58, 0x6,0x2a,0x6b, 0x6,0x30,0x32,
+  0x6,0x30,0x30, 0x6,0x30,0x33, 0x5,0x28,0x70, 0x4,0x2c,0x4b,
+  0xf,0x2f,0x21, 0x6,0x36,0x69, 0x6,0x3e,0x61, 0x5,0x31,0x71,
+  0x5,0x37,0x63, 0x6,0x3e,0x63, 0x6,0x3e,0x60, 0x6,0x3e,0x62,
+  0xf,0x34,0x30, 0x6,0x47,0x71, 0xf,0x3a,0x50, 0x6,0x47,0x73,
+  0x6,0x47,0x72, 0x5,0x3e,0x65, 0xf,0x41,0x2f, 0x5,0x45,0x3e,
+  0x6,0x5c,0x33, 0x6,0x5c,0x32, 0x5,0x4c,0x62, 0x7,0x22,0x3b,
+  0x5,0x54,0x2f, 0x7,0x2d,0x3a, 0xf,0x59,0x77, 0x5,0x61,0x50,
+  0x5,0x6f,0x77, 0x4,0x21,0x4a, 0xf,0x21,0x3a, 0x5,0x21,0x65,
+  0xf,0x21,0x4d, 0xf,0x21,0x5a, 0x6,0x22,0x6b, 0x6,0x22,0x6a,
+  0x5,0x22,0x4d, 0xf,0x22,0x43, 0x5,0x23,0x6c, 0x4,0x23,0x73,
+  0x5,0x25,0x68, 0x6,0x27,0x25, 0x5,0x23,0x6b, 0x5,0x23,0x6e,
+  0x5,0x23,0x6d, 0x6,0x30,0x34, 0x5,0x25,0x69, 0x6,0x2a,0x6c,
+  0x5,0x25,0x6b, 0xf,0x26,0x59, 0x6,0x30,0x35, 0x5,0x25,0x6a,
+  0x5,0x28,0x71, 0x6,0x30,0x37, 0x6,0x30,0x38, 0x5,0x28,0x72,
+  0x6,0x30,0x39, 0x5,0x2d,0x23, 0x6,0x36,0x6c, 0x6,0x36,0x6a,
+  0x5,0x2d,0x24, 0x6,0x36,0x6b, 0x6,0x36,0x6d, 0xf,0x2f,0x22,
+  0x6,0x3e,0x66, 0x5,0x31,0x72, 0x4,0x31,0x34, 0x5,0x31,0x74,
+  0x6,0x47,0x76, 0x6,0x47,0x74, 0x6,0x47,0x75, 0x4,0x37,0x2a,
+  0x6,0x47,0x77, 0xf,0x3a,0x51, 0x6,0x51,0x7b, 0x6,0x51,0x7d,
+  0x6,0x51,0x7c, 0x5,0x48,0x26, 0x4,0x42,0x7a, 0x6,0x5c,0x34,
+  0x5,0x45,0x40, 0x5,0x45,0x3f, 0x6,0x5c,0x35, 0x5,0x45,0x41,
+  0x7,0x2d,0x3d, 0x7,0x22,0x3e, 0x7,0x22,0x3d, 0x7,0x22,0x3c,
+  0x7,0x2d,0x3b, 0x5,0x54,0x30, 0x7,0x2d,0x3c, 0x7,0x2d,0x3e,
+  0xf,0x54,0x38, 0x7,0x37,0x5d, 0x4,0x66,0x39, 0x4,0x68,0x67,
+  0x5,0x79,0x26, 0x6,0x21,0x3e, 0x4,0x21,0x75, 0x4,0x21,0x74,
+  0x6,0x22,0x6c, 0x6,0x24,0x4d, 0x4,0x22,0x5e, 0x5,0x22,0x4e,
+  0x6,0x24,0x4e, 0x6,0x24,0x50, 0x6,0x24,0x51, 0x6,0x24,0x4f,
+  0xf,0x22,0x44, 0x6,0x27,0x29, 0xf,0x23,0x74, 0x6,0x27,0x27,
+  0x6,0x27,0x26, 0x6,0x27,0x28, 0x5,0x23,0x6f, 0x4,0x26,0x2c,
+  0x4,0x26,0x2b, 0x6,0x2a,0x6d, 0x6,0x2a,0x6e, 0x5,0x25,0x6c,
+  0x6,0x2a,0x6f, 0xf,0x26,0x5b, 0x5,0x25,0x6d, 0x4,0x28,0x77,
+  0x6,0x30,0x3a, 0x6,0x30,0x3f, 0x4,0x28,0x7a, 0x4,0x28,0x76,
+  0x5,0x28,0x75, 0x6,0x30,0x3e, 0x6,0x30,0x3d, 0x6,0x30,0x3c,
+  0x6,0x30,0x3b, 0xf,0x2a,0x40, 0xf,0x2a,0x41, 0xf,0x2a,0x42,
+  0xf,0x2a,0x43, 0xf,0x2a,0x44, 0xf,0x2a,0x3f, 0x6,0x30,0x40,
+  0x5,0x28,0x74, 0x6,0x36,0x72, 0x4,0x2c,0x50, 0x6,0x36,0x6f,
+  0x4,0x2c,0x4f, 0x6,0x3e,0x67, 0x6,0x36,0x70, 0x6,0x36,0x6e,
+  0xf,0x2f,0x23, 0xf,0x2f,0x24, 0xf,0x2f,0x26, 0xf,0x2f,0x27,
+  0xf,0x2f,0x28, 0x5,0x2d,0x26, 0x5,0x2d,0x27, 0x6,0x36,0x71,
+  0x6,0x36,0x73, 0x5,0x2d,0x25, 0x6,0x36,0x74, 0x6,0x3e,0x6d,
+  0x6,0x3e,0x69, 0x5,0x31,0x78, 0x5,0x31,0x7a, 0x5,0x31,0x77,
+  0x5,0x31,0x79, 0x5,0x31,0x76, 0x5,0x31,0x7b, 0x6,0x3e,0x70,
+  0x6,0x3e,0x6a, 0xf,0x34,0x31, 0xf,0x34,0x32, 0xf,0x34,0x35,
+  0xf,0x34,0x36, 0xf,0x34,0x37, 0xf,0x34,0x38, 0xf,0x34,0x39,
+  0xf,0x34,0x3a, 0x6,0x3e,0x68, 0x6,0x3e,0x6c, 0x6,0x3e,0x6f,
+  0x6,0x3e,0x6e, 0xf,0x34,0x33, 0x6,0x48,0x23, 0x6,0x48,0x24,
+  0x6,0x48,0x22, 0x4,0x37,0x2c, 0x6,0x47,0x7e, 0x6,0x47,0x7a,
+  0x5,0x37,0x64, 0x4,0x37,0x2d, 0x5,0x37,0x65, 0x6,0x47,0x79,
+  0x6,0x47,0x78, 0x6,0x48,0x25, 0x6,0x48,0x21, 0x6,0x48,0x26,
+  0x6,0x47,0x7c, 0xf,0x3a,0x52, 0xf,0x3a,0x53, 0xf,0x3a,0x54,
+  0x6,0x47,0x7d, 0x4,0x37,0x2e, 0x6,0x52,0x23, 0x5,0x3e,0x69,
+  0x5,0x3e,0x67, 0x6,0x52,0x26, 0x5,0x3e,0x68, 0x6,0x52,0x25,
+  0x6,0x52,0x29, 0x6,0x52,0x21, 0x6,0x51,0x7e, 0x6,0x52,0x27,
+  0x6,0x52,0x24, 0xf,0x41,0x30, 0xf,0x41,0x31, 0xf,0x41,0x32,
+  0x6,0x52,0x22, 0x6,0x52,0x28, 0x5,0x3e,0x66, 0x4,0x42,0x7c,
+  0x4,0x42,0x7e, 0x4,0x42,0x7b, 0x6,0x5c,0x38, 0x6,0x5c,0x36,
+  0x6,0x5c,0x37, 0xf,0x47,0x5d, 0x6,0x5c,0x39, 0x5,0x45,0x42,
+  0x7,0x22,0x40, 0x5,0x4c,0x66, 0xf,0x4e,0x52, 0xf,0x4e,0x53,
+  0xf,0x4e,0x54, 0xf,0x4e,0x55, 0xf,0x4e,0x56, 0x5,0x4c,0x65,
+  0x5,0x4c,0x64, 0x7,0x2d,0x40, 0x7,0x2d,0x3f, 0x7,0x22,0x3f,
+  0xf,0x54,0x39, 0x7,0x30,0x2d, 0x7,0x37,0x5e, 0x7,0x3f,0x43,
+  0x4,0x5f,0x58, 0x5,0x67,0x62, 0xf,0x65,0x27, 0xf,0x65,0x28,
+  0x5,0x6b,0x7d, 0xf,0x67,0x51, 0x5,0x73,0x3a, 0x5,0x21,0x30,
+  0x6,0x21,0x6c, 0x6,0x22,0x6d, 0x6,0x24,0x54, 0x6,0x24,0x53,
+  0x6,0x24,0x52, 0x5,0x22,0x4f, 0x4,0x23,0x75, 0x6,0x27,0x2a,
+  0x4,0x26,0x2d, 0x6,0x2a,0x71, 0x6,0x2a,0x70, 0x5,0x28,0x77,
+  0x6,0x30,0x42, 0x6,0x30,0x43, 0x5,0x28,0x76, 0x6,0x30,0x44,
+  0x6,0x36,0x77, 0x6,0x36,0x78, 0x6,0x36,0x76, 0x6,0x35,0x28,
+  0x6,0x36,0x75, 0x6,0x3e,0x71, 0x6,0x3e,0x72, 0x6,0x48,0x28,
+  0x5,0x37,0x67, 0x6,0x48,0x29, 0x6,0x48,0x27, 0xf,0x3a,0x55,
+  0x6,0x52,0x2a, 0x6,0x5c,0x3a, 0x7,0x22,0x41, 0x7,0x2d,0x41,
+  0x7,0x22,0x42, 0x7,0x22,0x43, 0x7,0x53,0x30, 0x7,0x5e,0x5d,
+  0x5,0x21,0x45, 0x5,0x21,0x46, 0x6,0x22,0x70, 0x6,0x22,0x6e,
+  0x6,0x22,0x72, 0x6,0x22,0x71, 0xf,0x21,0x5c, 0xf,0x21,0x5d,
+  0xf,0x21,0x5e, 0x6,0x22,0x73, 0x5,0x21,0x66, 0x6,0x22,0x6f,
+  0x6,0x24,0x57, 0x6,0x24,0x55, 0x6,0x24,0x59, 0x3,0x23,0x59,
+  0xf,0x22,0x45, 0xf,0x22,0x46, 0x6,0x24,0x56, 0x5,0x22,0x53,
+  0x6,0x24,0x5a, 0x6,0x24,0x58, 0x5,0x22,0x52, 0x6,0x27,0x2e,
+  0x5,0x23,0x71, 0x5,0x23,0x78, 0x5,0x23,0x79, 0x6,0x27,0x30,
+  0x5,0x23,0x76, 0x5,0x23,0x75, 0x5,0x23,0x77, 0x5,0x23,0x72,
+  0x5,0x23,0x73, 0x6,0x27,0x31, 0x6,0x27,0x2c, 0x6,0x27,0x32,
+  0xf,0x23,0x76, 0xf,0x23,0x77, 0xf,0x23,0x79, 0xf,0x23,0x7a,
+  0xf,0x23,0x7b, 0xf,0x23,0x7e, 0xf,0x24,0x21, 0x6,0x27,0x2d,
+  0x6,0x27,0x2f, 0x4,0x23,0x7d, 0xf,0x23,0x7d, 0x6,0x27,0x34,
+  0x6,0x27,0x33, 0x4,0x23,0x7c, 0x6,0x27,0x2b, 0x5,0x23,0x7a,
+  0x4,0x26,0x30, 0x5,0x25,0x75, 0x6,0x2a,0x75, 0x4,0x26,0x33,
+  0x6,0x2a,0x72, 0x5,0x25,0x73, 0x5,0x25,0x74, 0x6,0x2a,0x7a,
+  0x5,0x25,0x71, 0x6,0x2a,0x77, 0x6,0x2a,0x7c, 0x5,0x25,0x6f,
+  0x6,0x2a,0x79, 0x5,0x25,0x72, 0x5,0x25,0x70, 0x6,0x2a,0x74,
+  0x6,0x27,0x35, 0xf,0x26,0x5c, 0xf,0x26,0x5d, 0xf,0x26,0x5e,
+  0xf,0x26,0x5f, 0xf,0x26,0x60, 0xf,0x26,0x61, 0xf,0x26,0x63,
+  0xf,0x26,0x64, 0xf,0x26,0x65, 0xf,0x26,0x66, 0xf,0x26,0x67,
+  0xf,0x26,0x68, 0x6,0x2a,0x78, 0x6,0x2d,0x2b, 0x6,0x2a,0x73,
+  0x5,0x25,0x76, 0x6,0x30,0x50, 0x6,0x30,0x4a, 0x5,0x28,0x78,
+  0x6,0x30,0x4b, 0x5,0x28,0x79, 0x4,0x28,0x7e, 0x5,0x28,0x7a,
+  0x6,0x30,0x46, 0x6,0x30,0x49, 0x6,0x30,0x52, 0xf,0x2a,0x45,
+  0xf,0x2a,0x47, 0xf,0x2a,0x48, 0xf,0x2a,0x4b, 0xf,0x2a,0x4c,
+  0xf,0x2a,0x4d, 0xf,0x2a,0x4e, 0xf,0x2a,0x4f, 0xf,0x2a,0x50,
+  0xf,0x2a,0x51, 0x6,0x30,0x4d, 0x6,0x30,0x45, 0x6,0x30,0x47,
+  0x6,0x30,0x51, 0x6,0x30,0x4f, 0x6,0x30,0x4c, 0xf,0x2a,0x4a,
+  0xf,0x2a,0x46, 0x6,0x30,0x48, 0x5,0x28,0x7b, 0x4,0x28,0x7c,
+  0x5,0x2d,0x2c, 0x5,0x2d,0x29, 0x4,0x2c,0x52, 0x4,0x2c,0x59,
+  0x5,0x2d,0x2a, 0x6,0x37,0x21, 0x4,0x2c,0x58, 0x5,0x2d,0x34,
+  0x5,0x2d,0x30, 0x5,0x2d,0x2b, 0x6,0x36,0x7d, 0x5,0x2d,0x31,
+  0x5,0x2d,0x2d, 0x5,0x2d,0x2f, 0x6,0x37,0x24, 0x6,0x36,0x7e,
+  0x4,0x2c,0x62, 0x6,0x36,0x79, 0x4,0x2c,0x63, 0x4,0x2c,0x56,
+  0x6,0x37,0x25, 0x6,0x37,0x22, 0x6,0x37,0x23, 0x6,0x36,0x7b,
+  0xf,0x2f,0x29, 0xf,0x2f,0x2a, 0xf,0x2f,0x2b, 0xf,0x2f,0x2c,
+  0xf,0x2f,0x2d, 0xf,0x2f,0x2e, 0xf,0x2f,0x2f, 0xf,0x2f,0x31,
+  0xf,0x2f,0x33, 0x5,0x2d,0x28, 0xf,0x2f,0x30, 0xf,0x2f,0x32,
+  0x5,0x2d,0x33, 0x4,0x2c,0x5d, 0x5,0x2d,0x35, 0x5,0x2d,0x36,
+  0x5,0x2d,0x32, 0x6,0x3b,0x4e, 0x4,0x31,0x3a, 0x6,0x3f,0x2b,
+  0x6,0x3f,0x24, 0x6,0x3f,0x26, 0x4,0x31,0x3c, 0x4,0x31,0x3e,
+  0x5,0x31,0x7e, 0x6,0x3e,0x79, 0x6,0x3f,0x22, 0x6,0x3e,0x7b,
+  0x5,0x32,0x28, 0x4,0x31,0x38, 0x6,0x3f,0x27, 0x6,0x3f,0x2c,
+  0x6,0x3f,0x29, 0x6,0x3e,0x74, 0x6,0x3f,0x2a, 0x4,0x31,0x40,
+  0x4,0x31,0x3b, 0x5,0x31,0x7c, 0x5,0x32,0x26, 0x6,0x3e,0x73,
+  0x4,0x31,0x36, 0x5,0x31,0x7d, 0x5,0x32,0x24, 0x6,0x3f,0x28,
+  0x6,0x3f,0x23, 0xf,0x34,0x3b, 0xf,0x34,0x3c, 0xf,0x34,0x3d,
+  0xf,0x34,0x3e, 0xf,0x34,0x40, 0xf,0x34,0x41, 0xf,0x34,0x42,
+  0xf,0x34,0x43, 0xf,0x34,0x44, 0xf,0x34,0x46, 0xf,0x34,0x47,
+  0xf,0x34,0x48, 0x6,0x3e,0x77, 0x6,0x32,0x2a, 0x6,0x3e,0x7d,
+  0x6,0x3e,0x7c, 0x6,0x3e,0x7e, 0x6,0x3f,0x21, 0x6,0x3f,0x25,
+  0x4,0x31,0x3f, 0x5,0x32,0x29, 0x5,0x32,0x21, 0x5,0x32,0x27,
+  0x5,0x32,0x23, 0x5,0x32,0x22, 0x5,0x32,0x25, 0x5,0x32,0x2a,
+  0x5,0x37,0x69, 0x6,0x48,0x33, 0x5,0x37,0x6e, 0x6,0x48,0x2a,
+  0x6,0x48,0x34, 0x5,0x37,0x6f, 0x5,0x37,0x6c, 0x5,0x37,0x6b,
+  0x4,0x37,0x30, 0x5,0x37,0x70, 0x5,0x37,0x6a, 0x5,0x37,0x71,
+  0x5,0x37,0x72, 0x5,0x37,0x74, 0x6,0x48,0x2e, 0x6,0x3e,0x7a,
+  0x4,0x37,0x31, 0x6,0x48,0x2f, 0x5,0x37,0x6d, 0x4,0x37,0x33,
+  0x5,0x37,0x68, 0x5,0x37,0x73, 0xf,0x3a,0x56, 0xf,0x3a,0x58,
+  0xf,0x3a,0x59, 0xf,0x3a,0x5a, 0xf,0x3a,0x5b, 0x6,0x48,0x2d,
+  0x5,0x37,0x75, 0x6,0x48,0x32, 0x6,0x48,0x2c, 0x6,0x48,0x31,
+  0x6,0x48,0x30, 0xf,0x3a,0x5c, 0x5,0x3e,0x70, 0x6,0x52,0x2d,
+  0x5,0x3e,0x6c, 0x4,0x3c,0x7a, 0x5,0x3e,0x71, 0x6,0x52,0x2e,
+  0x6,0x5c,0x3b, 0x4,0x3c,0x7d, 0x6,0x52,0x35, 0x5,0x3e,0x6a,
+  0x5,0x3e,0x73, 0x6,0x52,0x2b, 0x5,0x3e,0x6f, 0x6,0x52,0x2c,
+  0x6,0x52,0x39, 0x6,0x52,0x30, 0x6,0x52,0x38, 0x5,0x3e,0x6e,
+  0x6,0x52,0x36, 0x6,0x5c,0x40, 0xf,0x41,0x37, 0x5,0x3e,0x72,
+  0xf,0x41,0x33, 0xf,0x41,0x34, 0xf,0x41,0x36, 0xf,0x41,0x38,
+  0xf,0x41,0x39, 0x6,0x52,0x3a, 0x6,0x52,0x32, 0x6,0x52,0x37,
+  0x5,0x3e,0x6b, 0xf,0x41,0x35, 0x6,0x52,0x2f, 0x5,0x45,0x43,
+  0x5,0x45,0x4b, 0x5,0x45,0x49, 0x6,0x5c,0x41, 0x6,0x5c,0x3c,
+  0x4,0x43,0x2b, 0x4,0x43,0x26, 0x4,0x43,0x25, 0x5,0x45,0x44,
+  0x5,0x45,0x48, 0x5,0x45,0x47, 0x5,0x45,0x4a, 0x5,0x45,0x4e,
+  0x6,0x5c,0x3e, 0x6,0x5c,0x47, 0x5,0x45,0x4d, 0x5,0x45,0x45,
+  0x5,0x45,0x46, 0x6,0x5c,0x42, 0x4,0x43,0x29, 0x6,0x5c,0x46,
+  0x4,0x43,0x27, 0x4,0x43,0x23, 0x5,0x45,0x4c, 0x6,0x5c,0x45,
+  0x6,0x5c,0x43, 0x6,0x5c,0x3f, 0x4,0x43,0x28, 0xf,0x47,0x5e,
+  0xf,0x47,0x5f, 0xf,0x47,0x60, 0xf,0x47,0x61, 0x6,0x52,0x31,
+  0x4,0x49,0x4e, 0x7,0x22,0x49, 0x4,0x49,0x52, 0x7,0x22,0x45,
+  0x5,0x4c,0x69, 0x7,0x22,0x50, 0x7,0x22,0x4a, 0x5,0x4c,0x6e,
+  0x5,0x4c,0x67, 0x7,0x22,0x47, 0x7,0x22,0x51, 0x5,0x4c,0x6f,
+  0x7,0x22,0x4f, 0x7,0x22,0x4c, 0x7,0x22,0x4d, 0x5,0x4c,0x70,
+  0x5,0x4c,0x6a, 0x5,0x4c,0x6d, 0x7,0x2d,0x44, 0x7,0x22,0x46,
+  0xf,0x4e,0x57, 0xf,0x4e,0x58, 0xf,0x4e,0x59, 0xf,0x4e,0x5b,
+  0xf,0x4e,0x5c, 0x7,0x22,0x44, 0x7,0x22,0x4b, 0x7,0x22,0x4e,
+  0x5,0x4c,0x6b, 0x7,0x22,0x48, 0x4,0x49,0x51, 0x5,0x54,0x33,
+  0x4,0x50,0x23, 0x7,0x2d,0x4a, 0x4,0x50,0x24, 0x5,0x54,0x35,
+  0x7,0x2d,0x42, 0x5,0x54,0x38, 0x5,0x54,0x34, 0x5,0x54,0x31,
+  0x7,0x2d,0x47, 0x7,0x2d,0x43, 0x5,0x5b,0x39, 0x5,0x54,0x32,
+  0xf,0x54,0x3a, 0xf,0x54,0x3b, 0xf,0x54,0x3c, 0x7,0x2d,0x45,
+  0x7,0x2d,0x49, 0x7,0x2d,0x48, 0x7,0x2d,0x4b, 0x7,0x2d,0x46,
+  0x7,0x2d,0x4d, 0x5,0x54,0x37, 0x4,0x56,0x29, 0x5,0x5b,0x3b,
+  0x5,0x61,0x55, 0x7,0x37,0x60, 0x5,0x5b,0x3f, 0x7,0x37,0x66,
+  0x5,0x5b,0x3a, 0x7,0x37,0x62, 0x7,0x37,0x64, 0x7,0x37,0x61,
+  0x5,0x5b,0x3d, 0x7,0x37,0x5f, 0x7,0x37,0x65, 0xf,0x59,0x79,
+  0xf,0x59,0x7a, 0xf,0x59,0x7b, 0x4,0x56,0x2a, 0x7,0x37,0x63,
+  0x7,0x37,0x67, 0x7,0x39,0x27, 0x5,0x5b,0x40, 0x7,0x46,0x5a,
+  0x5,0x61,0x54, 0x7,0x3f,0x47, 0x4,0x5a,0x7e, 0x5,0x61,0x51,
+  0x5,0x61,0x52, 0x7,0x3f,0x49, 0xf,0x5e,0x59, 0x5,0x61,0x53,
+  0x7,0x3f,0x46, 0xf,0x5e,0x58, 0x7,0x3f,0x45, 0x7,0x3f,0x48,
+  0x5,0x61,0x56, 0x5,0x61,0x57, 0x7,0x46,0x5c, 0x4,0x5f,0x5b,
+  0x7,0x46,0x5e, 0x5,0x67,0x65, 0x4,0x5f,0x59, 0x7,0x46,0x5d,
+  0x7,0x46,0x5f, 0x7,0x46,0x60, 0xf,0x62,0x30, 0xf,0x62,0x31,
+  0xf,0x62,0x32, 0x7,0x46,0x61, 0x7,0x46,0x62, 0x7,0x46,0x5b,
+  0x4,0x63,0x38, 0x7,0x4d,0x55, 0x4,0x63,0x37, 0x5,0x6b,0x7e,
+  0x7,0x4d,0x57, 0xf,0x65,0x29, 0x7,0x4d,0x56, 0x5,0x5b,0x3e,
+  0x5,0x6f,0x78, 0x5,0x6f,0x7a, 0x5,0x6f,0x79, 0x7,0x53,0x32,
+  0x7,0x53,0x31, 0x5,0x73,0x3b, 0x4,0x68,0x69, 0x4,0x68,0x6a,
+  0x7,0x57,0x67, 0x7,0x57,0x69, 0x7,0x57,0x68, 0x7,0x57,0x6a,
+  0x5,0x73,0x3c, 0x7,0x5e,0x5e, 0x4,0x6b,0x6a, 0x4,0x6b,0x69,
+  0x7,0x5e,0x60, 0x5,0x77,0x58, 0x7,0x5e,0x5f, 0x5,0x79,0x27,
+  0xf,0x6c,0x26, 0x5,0x7a,0x28, 0x5,0x7a,0x66, 0x5,0x7b,0x3c,
+  0x7,0x63,0x4f, 0x5,0x7c,0x34, 0x6,0x21,0x6d, 0x4,0x21,0x25,
+  0x4,0x22,0x62, 0x5,0x22,0x54, 0x6,0x24,0x5b, 0x6,0x24,0x5c,
+  0x5,0x22,0x55, 0x6,0x23,0x7e, 0x4,0x23,0x7e, 0x5,0x23,0x7b,
+  0x6,0x2a,0x7d, 0xf,0x26,0x6a, 0xf,0x26,0x69, 0x6,0x30,0x55,
+  0x6,0x30,0x54, 0x6,0x30,0x56, 0x6,0x30,0x53, 0x6,0x37,0x26,
+  0x5,0x32,0x2b, 0x4,0x31,0x41, 0x6,0x3f,0x2d, 0x5,0x37,0x76,
+  0x6,0x5c,0x48, 0x7,0x22,0x52, 0x5,0x54,0x39, 0xf,0x4e,0x5d,
+  0xf,0x54,0x3d, 0x7,0x37,0x68, 0x7,0x3f,0x4a, 0x7,0x46,0x63,
+  0x5,0x67,0x66, 0x7,0x5e,0x61, 0x7,0x65,0x35, 0x6,0x21,0x6f,
+  0x6,0x21,0x71, 0x6,0x21,0x70, 0xf,0x21,0x3b, 0x5,0x21,0x68,
+  0x5,0x21,0x67, 0x5,0x23,0x7c, 0x6,0x27,0x37, 0xf,0x26,0x6b,
+  0x6,0x30,0x57, 0x6,0x37,0x28, 0xf,0x2f,0x34, 0x6,0x3f,0x2e,
+  0xf,0x3a,0x5e, 0x7,0x22,0x53, 0x7,0x46,0x64, 0x6,0x22,0x74,
+  0x5,0x22,0x56, 0x6,0x2a,0x7e, 0x6,0x30,0x59, 0x6,0x30,0x58,
+  0x4,0x2c,0x65, 0x6,0x3f,0x2f, 0x5,0x35,0x5f, 0x5,0x32,0x2d,
+  0x6,0x3f,0x30, 0x5,0x32,0x2c, 0x6,0x48,0x36, 0xf,0x3a,0x5f,
+  0xf,0x3a,0x60, 0xf,0x3a,0x61, 0x7,0x22,0x54, 0x7,0x3f,0x4b,
+  0x4,0x21,0x77, 0x6,0x22,0x75, 0x6,0x22,0x76, 0x5,0x22,0x59,
+  0x5,0x22,0x58, 0x4,0x22,0x64, 0x5,0x22,0x5b, 0x6,0x24,0x61,
+  0x6,0x24,0x60, 0x6,0x24,0x5e, 0xf,0x22,0x48, 0xf,0x22,0x4a,
+  0x5,0x22,0x57, 0x6,0x24,0x5f, 0x5,0x22,0x5a, 0x6,0x27,0x41,
+  0x6,0x27,0x3b, 0x5,0x24,0x22, 0x6,0x27,0x38, 0x5,0x23,0x7e,
+  0x5,0x23,0x7d, 0x5,0x24,0x23, 0x6,0x27,0x40, 0x5,0x24,0x24,
+  0x6,0x27,0x3c, 0x6,0x27,0x3f, 0x5,0x24,0x21, 0xf,0x24,0x24,
+  0x6,0x27,0x39, 0x6,0x27,0x3a, 0x6,0x27,0x3d, 0x5,0x24,0x25,
+  0x6,0x27,0x3e, 0x5,0x25,0x7b, 0x4,0x26,0x35, 0x5,0x25,0x79,
+  0x5,0x25,0x7d, 0x5,0x25,0x7a, 0x5,0x25,0x7c, 0x5,0x26,0x21,
+  0x6,0x2b,0x23, 0x5,0x25,0x7e, 0x5,0x26,0x22, 0x6,0x2b,0x22,
+  0xf,0x26,0x6c, 0x5,0x26,0x23, 0x6,0x2b,0x21, 0x5,0x25,0x77,
+  0x5,0x25,0x78, 0x5,0x28,0x7e, 0x6,0x30,0x62, 0x5,0x28,0x7d,
+  0x5,0x29,0x22, 0x5,0x28,0x7c, 0x5,0x29,0x23, 0x6,0x30,0x5f,
+  0x5,0x29,0x25, 0x5,0x29,0x24, 0x6,0x30,0x5b, 0x5,0x29,0x21,
+  0x6,0x30,0x5a, 0x6,0x30,0x65, 0x6,0x30,0x67, 0xf,0x2a,0x53,
+  0xf,0x2a,0x54, 0xf,0x2a,0x55, 0x4,0x29,0x26, 0x6,0x30,0x61,
+  0x6,0x30,0x60, 0x6,0x30,0x5c, 0x6,0x30,0x5d, 0x6,0x30,0x66,
+  0x6,0x30,0x64, 0x6,0x30,0x5e, 0x5,0x2d,0x38, 0x6,0x37,0x32,
+  0x5,0x2d,0x37, 0x6,0x37,0x2e, 0x5,0x2d,0x39, 0x5,0x32,0x2e,
+  0x6,0x37,0x2a, 0x4,0x2c,0x69, 0x4,0x2c,0x6a, 0x6,0x37,0x2f,
+  0x5,0x2d,0x3a, 0x6,0x37,0x2d, 0x6,0x37,0x31, 0x6,0x37,0x30,
+  0x4,0x2c,0x67, 0x6,0x37,0x33, 0x6,0x37,0x34, 0xf,0x2f,0x36,
+  0xf,0x2f,0x35, 0x6,0x37,0x29, 0x6,0x37,0x2b, 0x6,0x3f,0x35,
+  0x5,0x32,0x35, 0x4,0x31,0x46, 0x4,0x31,0x43, 0x4,0x31,0x44,
+  0x5,0x32,0x33, 0x5,0x32,0x2f, 0x6,0x3f,0x3a, 0x5,0x32,0x30,
+  0x5,0x32,0x34, 0x6,0x3f,0x3c, 0x5,0x32,0x31, 0x5,0x32,0x36,
+  0x6,0x3f,0x36, 0x6,0x3f,0x3b, 0x6,0x3f,0x32, 0x5,0x32,0x32,
+  0x6,0x3f,0x34, 0xf,0x34,0x49, 0xf,0x34,0x4a, 0xf,0x34,0x4b,
+  0xf,0x34,0x4c, 0x6,0x3f,0x39, 0x6,0x3f,0x31, 0x6,0x3f,0x3d,
+  0x6,0x3f,0x37, 0x6,0x3f,0x33, 0x6,0x48,0x39, 0x4,0x37,0x3e,
+  0x6,0x48,0x3e, 0x5,0x37,0x79, 0x5,0x37,0x7a, 0x4,0x37,0x38,
+  0x5,0x37,0x78, 0x6,0x48,0x3a, 0x4,0x37,0x37, 0x5,0x38,0x21,
+  0x5,0x38,0x22, 0x6,0x3f,0x38, 0x6,0x48,0x40, 0x6,0x48,0x3d,
+  0x6,0x48,0x3b, 0x5,0x37,0x7d, 0x6,0x48,0x38, 0xf,0x3a,0x62,
+  0xf,0x3a,0x63, 0x6,0x48,0x3f, 0x5,0x37,0x7b, 0x5,0x37,0x77,
+  0x6,0x48,0x41, 0x5,0x37,0x7e, 0xf,0x40,0x2b, 0x5,0x3e,0x78,
+  0x4,0x3d,0x22, 0x5,0x45,0x52, 0x4,0x3d,0x25, 0x5,0x3e,0x75,
+  0x5,0x3e,0x74, 0x4,0x3d,0x24, 0x5,0x3e,0x77, 0x5,0x3e,0x7a,
+  0x6,0x52,0x3e, 0x6,0x52,0x3b, 0x6,0x52,0x3d, 0x6,0x5c,0x4b,
+  0x5,0x3e,0x7b, 0x6,0x52,0x3c, 0x5,0x3e,0x76, 0x5,0x3e,0x79,
+  0x6,0x5c,0x4c, 0x6,0x5c,0x4d, 0x5,0x45,0x58, 0x4,0x43,0x34,
+  0x5,0x45,0x4f, 0x5,0x45,0x55, 0x6,0x5c,0x4a, 0x5,0x45,0x54,
+  0x5,0x45,0x57, 0xf,0x47,0x62, 0x5,0x45,0x59, 0x5,0x45,0x50,
+  0x5,0x45,0x56, 0x5,0x45,0x51, 0x7,0x22,0x57, 0x7,0x22,0x59,
+  0x5,0x4c,0x74, 0x5,0x4c,0x73, 0x5,0x4c,0x75, 0x4,0x49,0x57,
+  0x5,0x4c,0x76, 0x5,0x4c,0x78, 0x4,0x49,0x56, 0x7,0x22,0x56,
+  0x7,0x22,0x55, 0x7,0x22,0x58, 0x5,0x4c,0x77, 0x5,0x4c,0x79,
+  0x5,0x4c,0x72, 0x7,0x2d,0x50, 0x5,0x54,0x3e, 0x7,0x2d,0x52,
+  0x7,0x2d,0x58, 0x5,0x54,0x3d, 0x4,0x50,0x28, 0x7,0x2d,0x57,
+  0x7,0x2d,0x56, 0x5,0x54,0x3b, 0x7,0x2d,0x51, 0x5,0x54,0x3c,
+  0x7,0x2d,0x54, 0x5,0x54,0x3f, 0x7,0x2d,0x4f, 0x4,0x50,0x2a,
+  0x5,0x5b,0x41, 0x5,0x5b,0x42, 0x4,0x56,0x2c, 0x7,0x37,0x6b,
+  0xf,0x59,0x7c, 0x7,0x37,0x69, 0x7,0x37,0x6a, 0x5,0x61,0x5a,
+  0x5,0x61,0x59, 0x5,0x61,0x58, 0x7,0x46,0x66, 0x4,0x5f,0x5d,
+  0x5,0x67,0x67, 0x4,0x5f,0x5c, 0x7,0x46,0x65, 0x7,0x46,0x67,
+  0x5,0x67,0x68, 0xf,0x62,0x33, 0x7,0x4d,0x58, 0x5,0x6c,0x21,
+  0x7,0x53,0x33, 0x7,0x57,0x6c, 0x5,0x6f,0x7b, 0x5,0x73,0x3d,
+  0x7,0x57,0x6b, 0x7,0x5e,0x62, 0x7,0x5e,0x63, 0x5,0x77,0x59,
+  0x7,0x63,0x50, 0x7,0x63,0x75, 0x4,0x21,0x78, 0x6,0x27,0x42,
+  0x5,0x24,0x26, 0x4,0x24,0x26, 0x6,0x2b,0x24, 0xf,0x26,0x6d,
+  0xf,0x26,0x6e, 0x6,0x30,0x69, 0x6,0x30,0x68, 0xf,0x2a,0x56,
+  0x6,0x37,0x35, 0x5,0x32,0x37, 0x6,0x48,0x42, 0x5,0x38,0x23,
+  0x6,0x52,0x3f, 0x5,0x45,0x5a, 0xf,0x47,0x64, 0x7,0x4d,0x59,
+  0xf,0x6a,0x4e, 0x6,0x21,0x72, 0x6,0x21,0x73, 0x6,0x22,0x78,
+  0x5,0x21,0x69, 0x6,0x22,0x77, 0xf,0x21,0x62, 0x4,0x22,0x67,
+  0x4,0x24,0x27, 0x5,0x24,0x27, 0xf,0x24,0x26, 0x6,0x29,0x5e,
+  0x6,0x2b,0x25, 0x5,0x26,0x24, 0x5,0x26,0x25, 0x6,0x30,0x6a,
+  0x6,0x30,0x41, 0x4,0x2f,0x27, 0x6,0x37,0x36, 0x4,0x31,0x4a,
+  0x6,0x48,0x43, 0x5,0x3e,0x7c, 0x5,0x45,0x5b, 0x7,0x22,0x5b,
+  0xf,0x47,0x65, 0x6,0x5c,0x4e, 0xf,0x4e,0x5f, 0x7,0x22,0x5c,
+  0x7,0x22,0x5d, 0x4,0x56,0x26, 0x7,0x57,0x6d, 0x4,0x22,0x68,
+  0x5,0x22,0x5e, 0x6,0x24,0x64, 0x5,0x22,0x5d, 0x6,0x24,0x63,
+  0x6,0x24,0x62, 0x6,0x24,0x66, 0x4,0x22,0x69, 0x6,0x24,0x65,
+  0x6,0x27,0x45, 0x5,0x24,0x2a, 0x5,0x24,0x2c, 0x5,0x24,0x2b,
+  0x5,0x24,0x28, 0x5,0x24,0x29, 0x6,0x27,0x44, 0x6,0x27,0x48,
+  0x6,0x2b,0x28, 0x6,0x27,0x43, 0x6,0x27,0x46, 0x5,0x24,0x2d,
+  0x5,0x26,0x2c, 0x5,0x26,0x28, 0x5,0x26,0x27, 0x5,0x26,0x2b,
+  0x5,0x26,0x2a, 0x4,0x26,0x39, 0x6,0x2b,0x26, 0x6,0x2b,0x29,
+  0x6,0x2b,0x27, 0x4,0x26,0x3e, 0x6,0x2b,0x2a, 0xf,0x26,0x70,
+  0xf,0x26,0x71, 0xf,0x26,0x72, 0xf,0x26,0x73, 0xf,0x26,0x74,
+  0x5,0x26,0x29, 0x5,0x26,0x2d, 0x6,0x2b,0x2b, 0x5,0x29,0x28,
+  0x5,0x29,0x2a, 0x4,0x29,0x27, 0x6,0x30,0x6c, 0x5,0x29,0x29,
+  0x6,0x30,0x6d, 0xf,0x2a,0x57, 0xf,0x2a,0x59, 0xf,0x2a,0x58,
+  0xf,0x2a,0x5a, 0xf,0x2a,0x5b, 0xf,0x2a,0x5c, 0x6,0x30,0x6b,
+  0x5,0x2d,0x3d, 0x5,0x2d,0x40, 0x5,0x2d,0x3e, 0x5,0x2d,0x41,
+  0x5,0x2d,0x3b, 0x6,0x37,0x3a, 0x6,0x37,0x3b, 0x4,0x2c,0x6e,
+  0x5,0x2d,0x42, 0x5,0x2d,0x3f, 0x6,0x37,0x3c, 0x5,0x2d,0x3c,
+  0x6,0x37,0x39, 0xf,0x2f,0x37, 0x6,0x37,0x37, 0x6,0x37,0x38,
+  0x5,0x2c,0x7b, 0x5,0x32,0x44, 0x5,0x32,0x3b, 0x5,0x32,0x39,
+  0x4,0x31,0x4d, 0x6,0x3f,0x43, 0x5,0x32,0x42, 0x6,0x3f,0x48,
+  0x6,0x3f,0x3e, 0x5,0x32,0x3d, 0x5,0x32,0x3c, 0x5,0x32,0x3f,
+  0x5,0x32,0x3e, 0x6,0x3f,0x3f, 0x6,0x3f,0x40, 0x5,0x32,0x41,
+  0x5,0x32,0x38, 0x4,0x31,0x50, 0x6,0x3f,0x44, 0x5,0x32,0x43,
+  0x5,0x38,0x28, 0x6,0x3f,0x41, 0xf,0x34,0x4d, 0xf,0x34,0x4e,
+  0xf,0x34,0x4f, 0xf,0x34,0x50, 0xf,0x34,0x51, 0xf,0x34,0x52,
+  0xf,0x34,0x53, 0x6,0x3f,0x47, 0x6,0x46,0x3d, 0x5,0x32,0x3a,
+  0x6,0x3f,0x42, 0x5,0x32,0x40, 0x6,0x48,0x4a, 0x4,0x31,0x4b,
+  0x5,0x38,0x2b, 0x5,0x38,0x2c, 0x5,0x38,0x2d, 0x6,0x48,0x4b,
+  0x6,0x48,0x4e, 0x5,0x38,0x27, 0x6,0x48,0x4d, 0x4,0x37,0x42,
+  0x5,0x38,0x2a, 0x5,0x38,0x26, 0x6,0x48,0x49, 0x4,0x37,0x43,
+  0x5,0x38,0x25, 0x6,0x52,0x44, 0x6,0x48,0x46, 0x6,0x48,0x47,
+  0x5,0x38,0x24, 0xf,0x3a,0x65, 0xf,0x3a,0x67, 0xf,0x3a,0x68,
+  0xf,0x3a,0x69, 0xf,0x3a,0x6a, 0x6,0x48,0x48, 0x6,0x48,0x4c,
+  0xf,0x3a,0x66, 0x4,0x3d,0x2b, 0x5,0x3f,0x25, 0x4,0x3d,0x2c,
+  0x6,0x52,0x41, 0x6,0x52,0x42, 0x5,0x3f,0x22, 0x5,0x3f,0x23,
+  0x6,0x52,0x47, 0x5,0x3e,0x7d, 0x6,0x52,0x45, 0xf,0x41,0x3a,
+  0xf,0x41,0x3b, 0xf,0x41,0x3c, 0x6,0x52,0x43, 0x6,0x52,0x48,
+  0x5,0x3f,0x24, 0x5,0x3e,0x7e, 0x6,0x52,0x46, 0x4,0x43,0x38,
+  0x5,0x45,0x5c, 0x4,0x43,0x37, 0x5,0x45,0x5e, 0x6,0x5c,0x50,
+  0x5,0x45,0x60, 0x5,0x45,0x5f, 0x6,0x5c,0x4f, 0xf,0x47,0x67,
+  0xf,0x47,0x68, 0xf,0x47,0x69, 0xf,0x47,0x6a, 0xf,0x47,0x6b,
+  0xf,0x47,0x6c, 0xf,0x47,0x6d, 0xf,0x47,0x6e, 0xf,0x47,0x6f,
+  0x6,0x5c,0x51, 0x6,0x60,0x31, 0xf,0x4a,0x54, 0x7,0x22,0x5e,
+  0x4,0x49,0x5a, 0x4,0x37,0x3f, 0x4,0x49,0x58, 0x5,0x4c,0x7a,
+  0x4,0x49,0x59, 0x7,0x2d,0x59, 0x7,0x22,0x62, 0x5,0x4c,0x7c,
+  0x5,0x4c,0x7e, 0xf,0x4e,0x60, 0xf,0x4e,0x62, 0xf,0x4e,0x63,
+  0x7,0x22,0x5f, 0x7,0x22,0x61, 0x7,0x22,0x63, 0x7,0x22,0x60,
+  0x5,0x4c,0x7b, 0x5,0x54,0x41, 0x5,0x4c,0x7d, 0x5,0x54,0x43,
+  0x5,0x54,0x40, 0x4,0x50,0x2d, 0x5,0x54,0x44, 0xf,0x54,0x3f,
+  0xf,0x54,0x40, 0xf,0x54,0x41, 0xf,0x54,0x42, 0x7,0x37,0x6e,
+  0x5,0x5b,0x44, 0x7,0x37,0x6c, 0x7,0x37,0x6d, 0xf,0x59,0x7e,
+  0xf,0x5a,0x21, 0xf,0x5a,0x22, 0xf,0x5a,0x23, 0x5,0x5b,0x43,
+  0x7,0x37,0x6f, 0x5,0x5b,0x45, 0x7,0x3f,0x51, 0x7,0x3f,0x4e,
+  0x5,0x61,0x5b, 0xf,0x5e,0x5a, 0xf,0x5e,0x5c, 0x7,0x3f,0x4d,
+  0x7,0x3f,0x4f, 0x7,0x3f,0x4c, 0xf,0x5e,0x5b, 0x7,0x3f,0x50,
+  0x7,0x46,0x68, 0x7,0x46,0x69, 0x5,0x61,0x5c, 0x5,0x67,0x69,
+  0xf,0x62,0x34, 0xf,0x62,0x35, 0xf,0x62,0x36, 0x5,0x67,0x6a,
+  0x5,0x6c,0x24, 0x5,0x6c,0x23, 0x7,0x4d,0x5d, 0x7,0x4d,0x5b,
+  0x5,0x6c,0x22, 0x7,0x4d,0x5a, 0x7,0x4d,0x5c, 0x7,0x4d,0x5e,
+  0x4,0x66,0x3c, 0x7,0x53,0x34, 0x7,0x53,0x61, 0x5,0x73,0x3e,
+  0x7,0x57,0x6e, 0x7,0x57,0x6f, 0x5,0x75,0x6a, 0xf,0x6a,0x4f,
+  0x7,0x5b,0x4d, 0x7,0x5e,0x64, 0x7,0x62,0x36, 0x5,0x7a,0x68,
+  0x5,0x7a,0x67, 0xf,0x6c,0x7b, 0xf,0x21,0x63, 0xf,0x22,0x4b,
+  0xf,0x22,0x4c, 0x6,0x2b,0x2c, 0xf,0x24,0x27, 0x6,0x2b,0x2d,
+  0x6,0x2b,0x2e, 0xf,0x2f,0x39, 0xf,0x2f,0x3b, 0xf,0x2f,0x3c,
+  0xf,0x2f,0x3a, 0x5,0x32,0x45, 0xf,0x34,0x54, 0x6,0x48,0x4f,
+  0xf,0x3a,0x6b, 0xf,0x3a,0x6c, 0x5,0x3f,0x26, 0x6,0x21,0x3f,
+  0x6,0x21,0x75, 0x6,0x22,0x79, 0x6,0x27,0x49, 0x4,0x24,0x2a,
+  0x6,0x30,0x70, 0x6,0x27,0x4d, 0xf,0x24,0x28, 0x6,0x27,0x4b,
+  0x6,0x27,0x4e, 0x4,0x26,0x3f, 0x6,0x2b,0x30, 0x5,0x26,0x2e,
+  0x6,0x2b,0x31, 0x3,0x2a,0x39, 0x4,0x27,0x41, 0x6,0x35,0x23,
+  0x6,0x30,0x72, 0x6,0x30,0x73, 0x6,0x30,0x71, 0x6,0x30,0x6f,
+  0x6,0x30,0x6e, 0x6,0x37,0x3f, 0x6,0x37,0x3e, 0x4,0x2c,0x6f,
+  0x6,0x37,0x3d, 0x6,0x37,0x40, 0x6,0x3f,0x49, 0x6,0x3f,0x4a,
+  0x6,0x3f,0x4b, 0x6,0x3f,0x4c, 0x6,0x3f,0x4d, 0x6,0x3f,0x4e,
+  0x4,0x37,0x44, 0x6,0x48,0x50, 0x6,0x48,0x54, 0x6,0x48,0x53,
+  0x6,0x48,0x51, 0xf,0x3a,0x6d, 0x6,0x48,0x52, 0x6,0x52,0x49,
+  0x5,0x3f,0x27, 0xf,0x41,0x3d, 0x6,0x5c,0x53, 0x6,0x5c,0x54,
+  0x6,0x5c,0x52, 0x5,0x45,0x61, 0x7,0x22,0x64, 0x7,0x2d,0x5a,
+  0x7,0x2d,0x5c, 0x4,0x50,0x2f, 0x5,0x54,0x45, 0x7,0x37,0x71,
+  0x7,0x37,0x70, 0x7,0x57,0x70, 0x7,0x63,0x51, 0x7,0x63,0x52,
+  0x7,0x65,0x36, 0x6,0x21,0x40, 0x6,0x21,0x76, 0xf,0x22,0x4d,
+  0x4,0x24,0x2b, 0x6,0x27,0x50, 0x6,0x27,0x4f, 0x5,0x24,0x2e,
+  0x6,0x2b,0x32, 0x6,0x30,0x76, 0x6,0x30,0x75, 0x6,0x30,0x77,
+  0x5,0x2e,0x68, 0x6,0x3f,0x4f, 0x5,0x38,0x2e, 0x6,0x52,0x4a,
+  0x6,0x5c,0x55, 0x7,0x22,0x65, 0x7,0x2d,0x5d, 0x5,0x21,0x2a,
+  0x5,0x21,0x47, 0x6,0x21,0x78, 0x6,0x21,0x7c, 0x6,0x21,0x77,
+  0x6,0x21,0x7a, 0x6,0x21,0x7b, 0x6,0x23,0x21, 0x6,0x23,0x22,
+  0x6,0x22,0x7c, 0x6,0x22,0x7a, 0x6,0x23,0x23, 0x6,0x22,0x7b,
+  0x6,0x22,0x7d, 0x6,0x22,0x7e, 0x5,0x21,0x6a, 0x5,0x22,0x60,
+  0x5,0x22,0x5f, 0x6,0x24,0x68, 0x6,0x24,0x69, 0x6,0x24,0x6a,
+  0x6,0x24,0x6b, 0x5,0x24,0x2f, 0x6,0x27,0x51, 0x5,0x24,0x31,
+  0x6,0x27,0x53, 0x5,0x24,0x30, 0xf,0x24,0x29, 0xf,0x24,0x2a,
+  0xf,0x24,0x2b, 0xf,0x24,0x2c, 0x6,0x27,0x52, 0x5,0x24,0x32,
+  0x5,0x26,0x2f, 0x6,0x2b,0x36, 0x6,0x2b,0x33, 0x6,0x2b,0x34,
+  0x6,0x2b,0x37, 0x6,0x2b,0x35, 0x6,0x30,0x7e, 0x5,0x29,0x2c,
+  0x6,0x30,0x7d, 0x4,0x29,0x30, 0x6,0x30,0x79, 0x5,0x29,0x2b,
+  0x6,0x30,0x78, 0x5,0x2d,0x44, 0x5,0x2d,0x43, 0x5,0x2d,0x45,
+  0x6,0x37,0x43, 0x6,0x37,0x41, 0x5,0x2d,0x46, 0xf,0x2f,0x3d,
+  0x6,0x37,0x42, 0x5,0x32,0x4a, 0x5,0x32,0x48, 0x5,0x32,0x49,
+  0x6,0x3f,0x56, 0x6,0x3f,0x50, 0x4,0x29,0x2f, 0x6,0x48,0x55,
+  0x6,0x3f,0x52, 0x6,0x3f,0x53, 0x5,0x32,0x47, 0x6,0x3f,0x51,
+  0xf,0x34,0x55, 0xf,0x34,0x56, 0xf,0x34,0x57, 0x6,0x3f,0x54,
+  0x6,0x3f,0x57, 0x6,0x3f,0x55, 0x6,0x48,0x56, 0x6,0x48,0x59,
+  0x5,0x38,0x2f, 0x5,0x38,0x32, 0x5,0x38,0x31, 0x6,0x48,0x5a,
+  0x5,0x38,0x30, 0x6,0x48,0x58, 0x6,0x48,0x57, 0x5,0x3f,0x28,
+  0x4,0x3d,0x31, 0x6,0x52,0x4b, 0xf,0x41,0x40, 0x6,0x52,0x4c,
+  0x5,0x45,0x62, 0x6,0x5c,0x56, 0x5,0x45,0x63, 0x6,0x5c,0x57,
+  0x6,0x5c,0x59, 0xf,0x47,0x70, 0x6,0x5c,0x5a, 0x6,0x5c,0x58,
+  0x5,0x4d,0x21, 0x5,0x4d,0x22, 0x4,0x49,0x60, 0x7,0x22,0x66,
+  0xf,0x4e,0x64, 0xf,0x4e,0x65, 0x7,0x22,0x67, 0x7,0x2d,0x5f,
+  0x5,0x54,0x46, 0x4,0x50,0x30, 0x7,0x2d,0x60, 0x7,0x2d,0x5e,
+  0x7,0x37,0x73, 0x7,0x37,0x72, 0x7,0x37,0x74, 0xf,0x5a,0x24,
+  0x4,0x5b,0x22, 0x5,0x61,0x5e, 0x7,0x3f,0x52, 0xf,0x5e,0x5d,
+  0x5,0x61,0x5d, 0x7,0x46,0x6d, 0x7,0x46,0x6b, 0x7,0x46,0x6f,
+  0x7,0x46,0x6a, 0x7,0x46,0x6c, 0x5,0x67,0x6b, 0x5,0x6c,0x25,
+  0x7,0x4d,0x5f, 0x4,0x5f,0x5f, 0x7,0x4d,0x61, 0x7,0x4d,0x60,
+  0x5,0x6c,0x26, 0x5,0x6f,0x7c, 0x5,0x6f,0x7d, 0x4,0x66,0x3d,
+  0x7,0x53,0x35, 0x5,0x73,0x3f, 0x7,0x60,0x3c, 0x7,0x60,0x6f,
+  0x7,0x64,0x46, 0x6,0x24,0x6e, 0x6,0x24,0x6c, 0x6,0x24,0x6d,
+  0x5,0x24,0x33, 0x6,0x31,0x21, 0x6,0x2b,0x38, 0x6,0x2d,0x32,
+  0x6,0x31,0x24, 0x6,0x37,0x44, 0x6,0x31,0x22, 0x6,0x31,0x23,
+  0x6,0x37,0x46, 0x6,0x37,0x45, 0x6,0x3f,0x58, 0x6,0x4f,0x21,
+  0x5,0x38,0x33, 0x6,0x48,0x5c, 0x6,0x48,0x5b, 0x5,0x3f,0x2a,
+  0x6,0x5c,0x5c, 0x6,0x5c,0x5f, 0x6,0x5c,0x5d, 0x6,0x5c,0x5b,
+  0x6,0x5c,0x5e, 0x7,0x2d,0x61, 0x7,0x2d,0x4e, 0x4,0x50,0x32,
+  0x7,0x37,0x75, 0x7,0x3f,0x55, 0x7,0x3f,0x54, 0x7,0x3f,0x53,
+  0x7,0x46,0x72, 0x7,0x46,0x70, 0x7,0x46,0x71, 0x7,0x57,0x71,
+  0x7,0x5b,0x4e, 0x7,0x62,0x37, 0x6,0x23,0x25, 0x6,0x23,0x24,
+  0xf,0x21,0x64, 0x6,0x24,0x71, 0x6,0x24,0x6f, 0xf,0x24,0x2d,
+  0x6,0x27,0x54, 0x5,0x26,0x30, 0x6,0x2b,0x3b, 0x6,0x2b,0x3a,
+  0x6,0x37,0x47, 0x4,0x2c,0x74, 0x4,0x2c,0x73, 0x5,0x35,0x60,
+  0x6,0x3f,0x5d, 0x6,0x3f,0x59, 0x6,0x3f,0x5a, 0xf,0x34,0x58,
+  0xf,0x34,0x59, 0xf,0x34,0x5a, 0x6,0x3f,0x5c, 0x6,0x3f,0x5b,
+  0x5,0x32,0x4b, 0x6,0x48,0x5d, 0x6,0x48,0x60, 0x6,0x48,0x5e,
+  0x6,0x48,0x5f, 0xf,0x3a,0x6e, 0x6,0x52,0x51, 0x6,0x52,0x4e,
+  0x6,0x52,0x50, 0x6,0x52,0x4f, 0xf,0x41,0x41, 0x4,0x43,0x3c,
+  0x6,0x5c,0x60, 0x7,0x22,0x6b, 0x7,0x22,0x6c, 0x7,0x22,0x69,
+  0x7,0x22,0x6a, 0x5,0x4d,0x23, 0x4,0x50,0x33, 0x5,0x54,0x47,
+  0x7,0x2d,0x64, 0x7,0x37,0x76, 0x7,0x3f,0x56, 0xf,0x67,0x54,
+  0x7,0x4d,0x62, 0x7,0x53,0x36, 0x5,0x73,0x41, 0xf,0x6c,0x27,
+  0x6,0x21,0x7d, 0x5,0x21,0x6b, 0x4,0x21,0x79, 0x5,0x22,0x61,
+  0x4,0x22,0x6e, 0x5,0x22,0x62, 0x5,0x24,0x34, 0x6,0x27,0x58,
+  0x5,0x24,0x35, 0x6,0x27,0x57, 0x6,0x27,0x59, 0x6,0x27,0x5b,
+  0x6,0x27,0x56, 0x5,0x24,0x36, 0x6,0x27,0x55, 0x6,0x27,0x5a,
+  0x5,0x26,0x33, 0x6,0x2b,0x3d, 0x5,0x26,0x31, 0x6,0x2b,0x3c,
+  0x5,0x26,0x32, 0x5,0x29,0x2d, 0x6,0x2b,0x3f, 0x4,0x29,0x33,
+  0x6,0x31,0x26, 0x5,0x29,0x30, 0x5,0x29,0x2e, 0x6,0x31,0x28,
+  0x5,0x29,0x32, 0x5,0x29,0x31, 0xf,0x2a,0x5e, 0x6,0x31,0x27,
+  0x6,0x37,0x4d, 0x4,0x2c,0x79, 0x4,0x2c,0x77, 0x4,0x2c,0x7c,
+  0x4,0x2c,0x75, 0x5,0x2d,0x4b, 0x5,0x2d,0x49, 0x4,0x2c,0x78,
+  0x4,0x2c,0x7a, 0x4,0x2c,0x76, 0x4,0x2c,0x7b, 0x5,0x2d,0x4a,
+  0x6,0x37,0x49, 0x6,0x37,0x4f, 0x6,0x37,0x4c, 0xf,0x2f,0x3f,
+  0xf,0x2f,0x40, 0x6,0x37,0x4b, 0x6,0x37,0x50, 0x6,0x37,0x4e,
+  0x6,0x37,0x4a, 0x4,0x31,0x56, 0x5,0x32,0x4f, 0x6,0x3f,0x68,
+  0x6,0x3f,0x61, 0x5,0x32,0x4c, 0x5,0x32,0x51, 0x5,0x32,0x4e,
+  0x6,0x3f,0x60, 0x5,0x32,0x50, 0x4,0x31,0x58, 0x6,0x3f,0x67,
+  0x6,0x3f,0x65, 0x6,0x3f,0x62, 0x4,0x31,0x59, 0x6,0x3f,0x66,
+  0x5,0x32,0x4d, 0x6,0x3f,0x64, 0x6,0x3f,0x5f, 0x6,0x3f,0x63,
+  0x6,0x48,0x64, 0xf,0x34,0x5c, 0x4,0x37,0x46, 0x5,0x38,0x36,
+  0x5,0x38,0x35, 0x5,0x38,0x3b, 0x5,0x38,0x3a, 0x5,0x38,0x37,
+  0x4,0x37,0x47, 0x6,0x48,0x61, 0x5,0x38,0x34, 0x6,0x48,0x63,
+  0x5,0x38,0x38, 0x4,0x31,0x55, 0xf,0x3a,0x70, 0x6,0x48,0x62,
+  0xf,0x3a,0x6f, 0x5,0x38,0x39, 0x5,0x3f,0x2c, 0x5,0x3f,0x2b,
+  0x6,0x52,0x52, 0x6,0x52,0x54, 0x6,0x52,0x57, 0x6,0x52,0x53,
+  0xf,0x41,0x42, 0xf,0x41,0x43, 0xf,0x41,0x44, 0xf,0x41,0x45,
+  0xf,0x41,0x46, 0xf,0x41,0x47, 0x6,0x52,0x55, 0x6,0x52,0x56,
+  0x6,0x56,0x6c, 0x5,0x3f,0x2d, 0x4,0x3d,0x32, 0x6,0x5c,0x66,
+  0x6,0x5c,0x63, 0x5,0x45,0x66, 0x6,0x5c,0x62, 0x4,0x43,0x3e,
+  0x5,0x45,0x65, 0x4,0x43,0x41, 0x4,0x43,0x40, 0x6,0x5c,0x61,
+  0x5,0x45,0x68, 0x5,0x45,0x6a, 0x5,0x45,0x64, 0x6,0x5c,0x68,
+  0x6,0x5c,0x69, 0x6,0x5c,0x6a, 0x5,0x45,0x67, 0x6,0x5c,0x64,
+  0xf,0x47,0x71, 0xf,0x47,0x72, 0xf,0x47,0x73, 0xf,0x47,0x74,
+  0xf,0x47,0x75, 0x6,0x5c,0x65, 0x4,0x49,0x64, 0x5,0x4d,0x24,
+  0x5,0x5b,0x48, 0x4,0x49,0x63, 0x4,0x49,0x62, 0x5,0x4d,0x25,
+  0x7,0x22,0x6d, 0x7,0x22,0x6f, 0xf,0x4e,0x66, 0xf,0x4e,0x67,
+  0x7,0x22,0x6e, 0x7,0x22,0x70, 0x7,0x2d,0x65, 0x5,0x54,0x48,
+  0x5,0x54,0x4a, 0x7,0x2d,0x67, 0x7,0x2d,0x66, 0xf,0x54,0x44,
+  0xf,0x54,0x45, 0x7,0x2d,0x68, 0x5,0x54,0x49, 0x5,0x5b,0x47,
+  0x7,0x37,0x77, 0x4,0x56,0x30, 0xf,0x5c,0x5f, 0x5,0x5b,0x46,
+  0x5,0x61,0x60, 0x7,0x3f,0x57, 0x5,0x61,0x5f, 0x7,0x3f,0x58,
+  0xf,0x5e,0x5e, 0x5,0x61,0x61, 0x7,0x46,0x73, 0x7,0x46,0x75,
+  0x7,0x46,0x76, 0x7,0x4d,0x22, 0x7,0x46,0x74, 0x5,0x6c,0x27,
+  0x4,0x63,0x3e, 0x4,0x63,0x3d, 0xf,0x65,0x2a, 0x7,0x4d,0x63,
+  0x7,0x53,0x37, 0x5,0x6f,0x7e, 0x7,0x57,0x72, 0x4,0x6a,0x47,
+  0x5,0x79,0x28, 0x5,0x21,0x31, 0x6,0x22,0x21, 0x4,0x22,0x6f,
+  0x5,0x21,0x6c, 0x6,0x23,0x26, 0xf,0x22,0x4f, 0x6,0x24,0x75,
+  0x5,0x22,0x63, 0x6,0x27,0x60, 0x5,0x22,0x69, 0x6,0x27,0x5d,
+  0x5,0x22,0x64, 0x6,0x24,0x73, 0x6,0x24,0x74, 0x5,0x22,0x65,
+  0x6,0x27,0x5c, 0x6,0x27,0x5e, 0x6,0x27,0x61, 0x6,0x24,0x72,
+  0x5,0x22,0x68, 0x5,0x24,0x37, 0x5,0x24,0x39, 0x4,0x26,0x45,
+  0x6,0x27,0x66, 0x6,0x27,0x64, 0x6,0x2b,0x46, 0x6,0x27,0x67,
+  0x6,0x2b,0x40, 0x6,0x27,0x62, 0x6,0x27,0x63, 0x6,0x2b,0x44,
+  0x6,0x27,0x65, 0x6,0x27,0x68, 0x3,0x25,0x7e, 0x6,0x27,0x69,
+  0x5,0x24,0x3a, 0xf,0x24,0x2e, 0xf,0x24,0x2f, 0xf,0x24,0x31,
+  0xf,0x24,0x32, 0xf,0x24,0x34, 0xf,0x24,0x35, 0xf,0x24,0x36,
+  0xf,0x26,0x77, 0xf,0x26,0x78, 0xf,0x26,0x79, 0xf,0x26,0x7a,
+  0xf,0x26,0x7b, 0xf,0x26,0x7d, 0xf,0x26,0x7e, 0xf,0x27,0x21,
+  0xf,0x26,0x7c, 0x6,0x2b,0x45, 0x6,0x2b,0x41, 0x6,0x2b,0x42,
+  0x4,0x24,0x2d, 0xf,0x24,0x30, 0x4,0x26,0x44, 0x5,0x26,0x34,
+  0x6,0x2b,0x43, 0x4,0x26,0x47, 0x6,0x2b,0x4c, 0x4,0x29,0x47,
+  0x6,0x31,0x2f, 0x4,0x26,0x4b, 0x6,0x2b,0x4d, 0x6,0x31,0x29,
+  0x5,0x26,0x35, 0x6,0x31,0x2c, 0x6,0x2b,0x4f, 0x4,0x26,0x4a,
+  0x5,0x26,0x37, 0x4,0x29,0x38, 0x5,0x26,0x36, 0x4,0x29,0x43,
+  0x6,0x2b,0x49, 0x5,0x26,0x38, 0x4,0x26,0x51, 0x4,0x29,0x44,
+  0x6,0x31,0x2a, 0x6,0x31,0x2b, 0x6,0x2b,0x50, 0x6,0x2b,0x47,
+  0x6,0x31,0x2d, 0xf,0x26,0x75, 0xf,0x27,0x22, 0xf,0x2a,0x70,
+  0x4,0x29,0x46, 0x6,0x31,0x2e, 0x6,0x2b,0x48, 0x6,0x2b,0x4a,
+  0x6,0x2b,0x4e, 0x6,0x2b,0x4b, 0xf,0x2a,0x64, 0xf,0x2a,0x5f,
+  0xf,0x2a,0x62, 0xf,0x2a,0x65, 0xf,0x2a,0x68, 0xf,0x2a,0x6c,
+  0x6,0x37,0x5b, 0x6,0x37,0x59, 0x6,0x31,0x32, 0x4,0x29,0x49,
+  0x5,0x29,0x37, 0x4,0x29,0x42, 0x4,0x2d,0x29, 0x5,0x2d,0x4e,
+  0x5,0x29,0x36, 0x6,0x31,0x39, 0x6,0x37,0x57, 0x6,0x31,0x33,
+  0x4,0x2c,0x7d, 0x5,0x2d,0x4c, 0x6,0x31,0x35, 0x6,0x37,0x53,
+  0x4,0x2d,0x21, 0x6,0x31,0x38, 0x5,0x29,0x34, 0x4,0x2c,0x7e,
+  0x6,0x31,0x3a, 0x6,0x31,0x31, 0x6,0x31,0x37, 0x6,0x37,0x56,
+  0x6,0x37,0x55, 0x4,0x2d,0x2a, 0x6,0x31,0x34, 0xf,0x2a,0x61,
+  0xf,0x2a,0x66, 0xf,0x2a,0x69, 0xf,0x2a,0x6b, 0xf,0x2a,0x6d,
+  0xf,0x2a,0x6e, 0xf,0x2a,0x6f, 0xf,0x2f,0x46, 0xf,0x2f,0x47,
+  0xf,0x2f,0x48, 0xf,0x2f,0x4a, 0x6,0x37,0x52, 0xf,0x2f,0x44,
+  0x6,0x37,0x58, 0xf,0x2a,0x63, 0x5,0x2d,0x4d, 0x6,0x37,0x51,
+  0x5,0x2d,0x52, 0x5,0x2d,0x58, 0x5,0x2d,0x5b, 0x6,0x3f,0x6d,
+  0x6,0x37,0x63, 0x6,0x3f,0x6f, 0x6,0x3f,0x6b, 0x6,0x3f,0x70,
+  0x6,0x37,0x64, 0x5,0x2d,0x55, 0x6,0x3f,0x69, 0x4,0x2d,0x2e,
+  0x6,0x3f,0x73, 0x5,0x2d,0x56, 0x4,0x2d,0x26, 0x5,0x32,0x5d,
+  0x5,0x2d,0x51, 0x5,0x2d,0x5c, 0x6,0x37,0x62, 0x6,0x37,0x5d,
+  0x5,0x32,0x54, 0x6,0x37,0x5f, 0x6,0x37,0x61, 0x6,0x3f,0x6c,
+  0x6,0x37,0x60, 0x6,0x3f,0x71, 0x4,0x2d,0x27, 0x5,0x2d,0x50,
+  0x6,0x37,0x5c, 0x5,0x32,0x53, 0x6,0x3f,0x72, 0x6,0x3f,0x74,
+  0x5,0x32,0x52, 0x5,0x2d,0x4f, 0xf,0x2f,0x41, 0xf,0x2f,0x42,
+  0xf,0x2f,0x43, 0xf,0x2f,0x49, 0xf,0x2f,0x4b, 0xf,0x34,0x5d,
+  0xf,0x34,0x5f, 0xf,0x34,0x60, 0xf,0x34,0x64, 0xf,0x34,0x65,
+  0xf,0x34,0x66, 0xf,0x34,0x67, 0xf,0x34,0x68, 0x6,0x3f,0x6a,
+  0x6,0x37,0x65, 0x6,0x37,0x66, 0x5,0x2d,0x54, 0x5,0x2d,0x59,
+  0x4,0x37,0x5a, 0x6,0x48,0x71, 0x4,0x37,0x4d, 0x5,0x32,0x59,
+  0x6,0x3f,0x7c, 0x4,0x37,0x4b, 0x6,0x48,0x73, 0x6,0x48,0x69,
+  0x5,0x38,0x55, 0x6,0x3f,0x7e, 0x6,0x48,0x72, 0x6,0x40,0x22,
+  0x4,0x31,0x65, 0x5,0x2d,0x53, 0x4,0x31,0x6d, 0x6,0x3f,0x77,
+  0x6,0x48,0x6e, 0x4,0x31,0x61, 0x5,0x38,0x3f, 0x5,0x32,0x57,
+  0x5,0x32,0x5a, 0x4,0x37,0x4c, 0x6,0x3f,0x79, 0x5,0x32,0x5c,
+  0x6,0x3f,0x76, 0x6,0x3f,0x6e, 0x4,0x31,0x69, 0x5,0x38,0x3c,
+  0x6,0x48,0x70, 0x5,0x32,0x5e, 0x4,0x31,0x5f, 0x6,0x3f,0x7d,
+  0x6,0x3f,0x7b, 0x6,0x3f,0x7a, 0x6,0x48,0x66, 0x6,0x48,0x6c,
+  0x5,0x38,0x3e, 0x5,0x38,0x41, 0x6,0x48,0x74, 0x5,0x32,0x55,
+  0x6,0x48,0x6b, 0x6,0x48,0x76, 0x6,0x48,0x67, 0x6,0x48,0x65,
+  0x6,0x3f,0x75, 0x5,0x38,0x40, 0xf,0x34,0x61, 0xf,0x34,0x5e,
+  0xf,0x34,0x62, 0xf,0x34,0x63, 0xf,0x34,0x69, 0xf,0x34,0x6a,
+  0xf,0x34,0x6b, 0xf,0x34,0x6c, 0xf,0x34,0x6d, 0xf,0x34,0x6f,
+  0xf,0x34,0x70, 0xf,0x34,0x72, 0xf,0x3a,0x72, 0xf,0x3a,0x73,
+  0xf,0x3a,0x74, 0xf,0x3a,0x75, 0xf,0x3a,0x76, 0xf,0x3a,0x77,
+  0xf,0x3a,0x79, 0xf,0x3a,0x7a, 0xf,0x3a,0x7c, 0xf,0x3a,0x7d,
+  0xf,0x3a,0x7e, 0xf,0x3b,0x21, 0xf,0x3b,0x22, 0xf,0x3b,0x25,
+  0xf,0x3b,0x29, 0xf,0x3b,0x2a, 0xf,0x3b,0x2c, 0xf,0x3b,0x2e,
+  0x6,0x48,0x68, 0x5,0x32,0x56, 0x6,0x3f,0x78, 0xf,0x3b,0x27,
+  0xf,0x34,0x6e, 0x6,0x49,0x24, 0x6,0x48,0x6d, 0x6,0x40,0x21,
+  0xf,0x3b,0x24, 0x4,0x3d,0x3f, 0x5,0x38,0x4a, 0x5,0x38,0x4d,
+  0x5,0x38,0x52, 0x4,0x37,0x4f, 0x4,0x37,0x57, 0x4,0x37,0x51,
+  0x6,0x52,0x5d, 0x6,0x49,0x23, 0x5,0x38,0x50, 0x6,0x49,0x22,
+  0x4,0x37,0x53, 0x5,0x38,0x56, 0x5,0x38,0x58, 0x5,0x38,0x43,
+  0x6,0x52,0x61, 0x5,0x38,0x5a, 0x5,0x3f,0x33, 0x4,0x37,0x5b,
+  0x5,0x38,0x53, 0x6,0x49,0x21, 0x5,0x38,0x46, 0x6,0x48,0x7b,
+  0x5,0x3f,0x34, 0x5,0x38,0x44, 0x5,0x38,0x54, 0x5,0x32,0x5f,
+  0x6,0x52,0x58, 0x5,0x38,0x47, 0x4,0x3d,0x36, 0x4,0x37,0x58,
+  0x5,0x38,0x59, 0x5,0x38,0x51, 0x5,0x38,0x4b, 0x5,0x3f,0x31,
+  0x6,0x48,0x77, 0x5,0x38,0x4f, 0x5,0x38,0x3d, 0x6,0x48,0x7e,
+  0x6,0x52,0x62, 0x6,0x52,0x63, 0x6,0x52,0x5a, 0x6,0x48,0x7d,
+  0x5,0x38,0x57, 0x6,0x52,0x5e, 0x6,0x52,0x60, 0x5,0x3f,0x2f,
+  0x4,0x3d,0x40, 0x4,0x37,0x52, 0x5,0x38,0x49, 0x6,0x48,0x79,
+  0xf,0x3a,0x71, 0xf,0x3a,0x7b, 0xf,0x3b,0x23, 0xf,0x3b,0x28,
+  0xf,0x3b,0x2d, 0xf,0x41,0x48, 0xf,0x41,0x4e, 0xf,0x41,0x50,
+  0xf,0x41,0x51, 0xf,0x41,0x52, 0x6,0x52,0x5c, 0x6,0x52,0x5f,
+  0x6,0x52,0x5b, 0x6,0x48,0x7a, 0xf,0x3b,0x2b, 0x5,0x38,0x4e,
+  0x5,0x3f,0x2e, 0x5,0x38,0x4c, 0xf,0x34,0x71, 0xf,0x47,0x7d,
+  0x5,0x3f,0x3c, 0x5,0x3f,0x36, 0x5,0x3f,0x35, 0x6,0x52,0x6b,
+  0x5,0x4d,0x26, 0x5,0x3f,0x45, 0x6,0x5c,0x6f, 0x5,0x3f,0x39,
+  0x5,0x3f,0x3f, 0x5,0x3f,0x44, 0x6,0x5c,0x74, 0x6,0x52,0x6f,
+  0x5,0x45,0x6b, 0x5,0x3f,0x3b, 0x6,0x5c,0x6c, 0x6,0x52,0x65,
+  0x5,0x3f,0x38, 0x5,0x3f,0x3d, 0x5,0x3f,0x3a, 0x6,0x52,0x59,
+  0x4,0x49,0x6e, 0x6,0x5c,0x76, 0x6,0x5c,0x79, 0x5,0x3f,0x43,
+  0x6,0x52,0x68, 0x6,0x5c,0x72, 0x4,0x43,0x4f, 0x6,0x5c,0x78,
+  0x6,0x5c,0x77, 0x5,0x3f,0x41, 0x5,0x45,0x6d, 0x5,0x3f,0x3e,
+  0x6,0x5c,0x71, 0x6,0x5c,0x6e, 0x6,0x5c,0x6d, 0x5,0x3f,0x37,
+  0x6,0x52,0x67, 0x6,0x52,0x6d, 0xf,0x41,0x4a, 0xf,0x41,0x4b,
+  0xf,0x41,0x4c, 0xf,0x41,0x4d, 0xf,0x41,0x4f, 0xf,0x41,0x53,
+  0xf,0x47,0x76, 0xf,0x47,0x77, 0xf,0x47,0x79, 0xf,0x47,0x7a,
+  0xf,0x48,0x25, 0xf,0x48,0x28, 0x6,0x5c,0x70, 0x6,0x5c,0x75,
+  0x5,0x3f,0x40, 0xf,0x41,0x49, 0x6,0x5c,0x73, 0x6,0x52,0x6e,
+  0x6,0x5d,0x23, 0x6,0x5d,0x27, 0x4,0x43,0x45, 0x4,0x43,0x44,
+  0x5,0x4d,0x27, 0x6,0x5c,0x7c, 0x5,0x45,0x77, 0x5,0x45,0x76,
+  0x5,0x45,0x73, 0x4,0x3d,0x35, 0x6,0x5c,0x7b, 0x7,0x22,0x72,
+  0x7,0x22,0x75, 0x5,0x4d,0x29, 0x5,0x45,0x70, 0x5,0x45,0x6f,
+  0x5,0x45,0x6c, 0x5,0x45,0x71, 0x5,0x45,0x72, 0x5,0x45,0x79,
+  0x6,0x5d,0x25, 0x6,0x5c,0x7d, 0x6,0x5c,0x7e, 0x6,0x52,0x6a,
+  0x6,0x5d,0x22, 0x7,0x22,0x74, 0x6,0x5d,0x21, 0x7,0x22,0x77,
+  0x5,0x45,0x74, 0x5,0x45,0x78, 0x7,0x2d,0x6a, 0x4,0x43,0x53,
+  0xf,0x47,0x78, 0xf,0x47,0x7c, 0xf,0x47,0x7e, 0xf,0x48,0x21,
+  0xf,0x48,0x23, 0xf,0x48,0x24, 0xf,0x48,0x26, 0xf,0x4e,0x69,
+  0xf,0x4e,0x6a, 0xf,0x4e,0x6b, 0xf,0x4e,0x6c, 0xf,0x4e,0x6d,
+  0xf,0x4e,0x6e, 0xf,0x4e,0x6f, 0xf,0x4e,0x73, 0xf,0x4e,0x75,
+  0x7,0x22,0x73, 0x7,0x22,0x78, 0x6,0x5c,0x6b, 0x5,0x45,0x6e,
+  0x6,0x5c,0x7a, 0x5,0x4d,0x28, 0x5,0x45,0x75, 0x7,0x2d,0x71,
+  0x4,0x49,0x66, 0x4,0x43,0x52, 0x7,0x2d,0x6b, 0x4,0x49,0x71,
+  0x7,0x2d,0x6d, 0x5,0x4d,0x2f, 0x7,0x2d,0x73, 0x4,0x49,0x6a,
+  0x5,0x4d,0x2e, 0x7,0x22,0x79, 0x5,0x4d,0x33, 0x4,0x49,0x72,
+  0x7,0x2d,0x75, 0x5,0x38,0x45, 0x5,0x4d,0x32, 0x5,0x4d,0x35,
+  0x4,0x50,0x35, 0x4,0x50,0x36, 0x7,0x23,0x21, 0x5,0x4d,0x34,
+  0x7,0x37,0x7c, 0x5,0x4d,0x30, 0x5,0x54,0x4e, 0x4,0x56,0x34,
+  0x7,0x22,0x7a, 0x7,0x23,0x22, 0x5,0x54,0x54, 0x5,0x4d,0x2b,
+  0x5,0x4d,0x2d, 0x5,0x54,0x4d, 0x5,0x4d,0x2c, 0x7,0x2e,0x22,
+  0x7,0x2d,0x77, 0x7,0x2d,0x76, 0x7,0x22,0x7e, 0x4,0x50,0x3c,
+  0x7,0x2d,0x70, 0x7,0x2d,0x6f, 0xf,0x48,0x22, 0xf,0x4e,0x70,
+  0x7,0x2d,0x72, 0x5,0x4d,0x31, 0x7,0x2d,0x6c, 0xf,0x4e,0x71,
+  0xf,0x4e,0x72, 0xf,0x4e,0x74, 0xf,0x4e,0x76, 0xf,0x54,0x47,
+  0xf,0x54,0x48, 0xf,0x54,0x4a, 0xf,0x54,0x4b, 0xf,0x54,0x51,
+  0xf,0x54,0x53, 0x7,0x2d,0x74, 0x5,0x54,0x4b, 0x7,0x30,0x50,
+  0x7,0x22,0x7d, 0x7,0x25,0x71, 0x4,0x49,0x70, 0x5,0x54,0x4c,
+  0x5,0x54,0x4f, 0xf,0x4e,0x68, 0xf,0x54,0x4f, 0x5,0x54,0x50,
+  0x5,0x54,0x52, 0x7,0x2d,0x7b, 0x7,0x2d,0x78, 0x5,0x54,0x55,
+  0x5,0x54,0x56, 0x5,0x54,0x51, 0x7,0x2d,0x7e, 0x7,0x2d,0x7c,
+  0x7,0x2d,0x7d, 0x5,0x54,0x57, 0x4,0x50,0x3d, 0x5,0x5b,0x49,
+  0x7,0x2e,0x21, 0x7,0x37,0x7b, 0x7,0x37,0x7d, 0x7,0x37,0x7a,
+  0x7,0x38,0x21, 0x5,0x5b,0x4b, 0x7,0x2d,0x7a, 0x7,0x37,0x79,
+  0x7,0x2d,0x6e, 0xf,0x54,0x4d, 0x5,0x54,0x53, 0x7,0x38,0x22,
+  0xf,0x54,0x49, 0xf,0x54,0x4e, 0xf,0x54,0x52, 0xf,0x5a,0x25,
+  0xf,0x5a,0x26, 0xf,0x5a,0x2e, 0xf,0x5a,0x27, 0x5,0x5b,0x4a,
+  0x5,0x54,0x58, 0xf,0x5a,0x2a, 0xf,0x54,0x4c, 0x7,0x37,0x78,
+  0x5,0x5b,0x51, 0x4,0x56,0x35, 0x4,0x56,0x31, 0x4,0x5b,0x2a,
+  0x5,0x5b,0x4e, 0x5,0x61,0x64, 0x5,0x61,0x62, 0x7,0x3f,0x5b,
+  0x7,0x38,0x26, 0x4,0x5b,0x26, 0x5,0x5b,0x4d, 0x5,0x5b,0x4f,
+  0x7,0x38,0x23, 0x7,0x38,0x25, 0x5,0x5b,0x50, 0x5,0x61,0x63,
+  0x7,0x3f,0x5a, 0x5,0x61,0x65, 0x7,0x3f,0x59, 0x7,0x22,0x76,
+  0xf,0x5a,0x2b, 0xf,0x5a,0x2d, 0xf,0x5e,0x5f, 0xf,0x5e,0x60,
+  0xf,0x5e,0x62, 0xf,0x5e,0x63, 0xf,0x5e,0x65, 0xf,0x5e,0x66,
+  0xf,0x5e,0x67, 0x7,0x3f,0x5c, 0x7,0x38,0x24, 0xf,0x5a,0x28,
+  0x4,0x5b,0x27, 0x5,0x5b,0x52, 0x7,0x46,0x79, 0x7,0x3f,0x5d,
+  0x5,0x61,0x68, 0x7,0x4d,0x64, 0x4,0x5f,0x63, 0x4,0x5f,0x62,
+  0x7,0x46,0x7c, 0x5,0x61,0x69, 0x7,0x4d,0x67, 0x4,0x5b,0x28,
+  0x5,0x61,0x6a, 0x7,0x47,0x25, 0x7,0x47,0x21, 0x7,0x46,0x78,
+  0x5,0x61,0x67, 0x7,0x46,0x7e, 0x5,0x67,0x6d, 0x7,0x46,0x7a,
+  0x5,0x67,0x70, 0x7,0x46,0x77, 0x7,0x47,0x22, 0x7,0x3f,0x5e,
+  0x7,0x46,0x7d, 0x5,0x67,0x6e, 0xf,0x5e,0x64, 0x5,0x67,0x6f,
+  0x7,0x46,0x7b, 0x5,0x67,0x6c, 0xf,0x62,0x39, 0x7,0x47,0x2a,
+  0x4,0x63,0x44, 0x7,0x47,0x27, 0x5,0x67,0x74, 0x7,0x47,0x24,
+  0x5,0x6c,0x2a, 0x7,0x47,0x29, 0x7,0x47,0x26, 0x7,0x3f,0x5f,
+  0x5,0x67,0x75, 0x4,0x63,0x3f, 0x5,0x67,0x71, 0x5,0x6c,0x28,
+  0x7,0x47,0x2b, 0x7,0x47,0x23, 0x7,0x4d,0x65, 0x5,0x67,0x77,
+  0xf,0x62,0x3a, 0xf,0x62,0x38, 0xf,0x62,0x3b, 0xf,0x62,0x3c,
+  0xf,0x62,0x3d, 0x7,0x4d,0x66, 0x5,0x61,0x66, 0x5,0x67,0x72,
+  0xf,0x65,0x2b, 0x5,0x67,0x76, 0x5,0x6c,0x29, 0x7,0x53,0x39,
+  0x7,0x4d,0x6a, 0x4,0x63,0x41, 0x7,0x4d,0x69, 0x4,0x63,0x45,
+  0x7,0x53,0x38, 0x7,0x4d,0x6b, 0xf,0x67,0x55, 0x7,0x5b,0x4f,
+  0x4,0x66,0x3e, 0x5,0x6c,0x2b, 0x7,0x57,0x73, 0x7,0x57,0x74,
+  0x7,0x57,0x75, 0x7,0x53,0x3b, 0x7,0x53,0x3a, 0x7,0x53,0x3c,
+  0xf,0x69,0x42, 0x7,0x57,0x76, 0x7,0x5b,0x50, 0x7,0x5b,0x52,
+  0x7,0x5b,0x53, 0x7,0x5b,0x51, 0xf,0x6a,0x50, 0xf,0x69,0x41,
+  0xf,0x6a,0x51, 0xf,0x6a,0x52, 0x7,0x5b,0x55, 0x5,0x77,0x5a,
+  0x7,0x5b,0x54, 0x7,0x5e,0x65, 0xf,0x6a,0x53, 0xf,0x6b,0x47,
+  0xf,0x6b,0x48, 0x5,0x77,0x5b, 0x7,0x5e,0x66, 0x5,0x79,0x29,
+  0x7,0x5e,0x67, 0xf,0x6c,0x28, 0xf,0x6c,0x29, 0x4,0x6d,0x72,
+  0xf,0x6c,0x7c, 0xf,0x6c,0x7d, 0x5,0x7b,0x3e, 0x5,0x7b,0x60,
+  0xf,0x6d,0x34, 0x5,0x22,0x6a, 0x4,0x22,0x72, 0x6,0x24,0x76,
+  0x6,0x27,0x6b, 0x5,0x24,0x3b, 0x6,0x27,0x6a, 0x6,0x27,0x6d,
+  0x6,0x27,0x6c, 0x4,0x26,0x52, 0x6,0x2b,0x51, 0x6,0x2b,0x58,
+  0x6,0x2b,0x54, 0x6,0x2b,0x56, 0x4,0x26,0x53, 0x6,0x2b,0x55,
+  0x6,0x2b,0x53, 0x6,0x2b,0x57, 0xf,0x27,0x24, 0xf,0x27,0x23,
+  0x6,0x31,0x3d, 0x6,0x31,0x3b, 0x6,0x31,0x3e, 0x6,0x31,0x40,
+  0x4,0x29,0x4c, 0x6,0x31,0x41, 0x6,0x31,0x3f, 0xf,0x2a,0x71,
+  0xf,0x2a,0x72, 0x6,0x31,0x3c, 0x6,0x37,0x67, 0x5,0x2d,0x5f,
+  0x6,0x37,0x69, 0x5,0x2d,0x5e, 0x6,0x37,0x68, 0x5,0x32,0x61,
+  0x4,0x31,0x6f, 0x6,0x40,0x25, 0xf,0x34,0x73, 0xf,0x34,0x74,
+  0x6,0x40,0x24, 0x5,0x32,0x60, 0x6,0x49,0x28, 0x6,0x49,0x27,
+  0x6,0x49,0x25, 0x6,0x49,0x26, 0x4,0x37,0x5c, 0x6,0x49,0x29,
+  0xf,0x3b,0x2f, 0x5,0x38,0x5b, 0x5,0x38,0x5c, 0xf,0x34,0x76,
+  0x4,0x3d,0x44, 0x6,0x52,0x71, 0x5,0x3f,0x47, 0x5,0x3f,0x49,
+  0xf,0x41,0x55, 0x4,0x3d,0x41, 0x6,0x52,0x70, 0x5,0x3f,0x48,
+  0x6,0x5d,0x29, 0x6,0x5d,0x2a, 0x5,0x45,0x7a, 0x5,0x45,0x7c,
+  0x5,0x45,0x7b, 0x7,0x23,0x24, 0x5,0x45,0x7d, 0xf,0x48,0x29,
+  0xf,0x48,0x2a, 0x6,0x5d,0x28, 0x5,0x4d,0x36, 0x4,0x49,0x73,
+  0x4,0x49,0x74, 0x7,0x23,0x28, 0x7,0x23,0x27, 0x7,0x23,0x25,
+  0x6,0x5d,0x2b, 0x7,0x23,0x23, 0xf,0x4e,0x7b, 0x7,0x23,0x29,
+  0x7,0x23,0x26, 0xf,0x4e,0x77, 0xf,0x4e,0x78, 0xf,0x4e,0x7a,
+  0x7,0x23,0x2a, 0x7,0x2e,0x2a, 0x7,0x2e,0x25, 0x7,0x2e,0x24,
+  0x7,0x2e,0x27, 0x7,0x2e,0x26, 0x7,0x2e,0x29, 0x7,0x2e,0x28,
+  0x7,0x2c,0x63, 0x7,0x31,0x70, 0x7,0x2e,0x23, 0x7,0x38,0x27,
+  0x5,0x5b,0x53, 0xf,0x5a,0x2f, 0x7,0x3f,0x60, 0x7,0x47,0x2d,
+  0x4,0x5f,0x65, 0x7,0x47,0x2e, 0x5,0x6c,0x2c, 0xf,0x65,0x2c,
+  0x5,0x70,0x21, 0x7,0x53,0x3d, 0x6,0x23,0x27, 0x5,0x21,0x6d,
+  0x6,0x24,0x77, 0x6,0x24,0x78, 0x4,0x24,0x34, 0xf,0x24,0x37,
+  0xf,0x24,0x38, 0x5,0x26,0x39, 0x6,0x2b,0x59, 0x6,0x2b,0x5a,
+  0x6,0x31,0x43, 0x6,0x31,0x42, 0x6,0x31,0x44, 0x5,0x29,0x39,
+  0xf,0x2a,0x73, 0xf,0x2a,0x74, 0xf,0x2a,0x75, 0x6,0x31,0x46,
+  0x6,0x31,0x45, 0x5,0x29,0x38, 0x6,0x37,0x6c, 0x6,0x37,0x6a,
+  0x6,0x37,0x6b, 0x5,0x2d,0x61, 0x5,0x2d,0x60, 0x6,0x40,0x26,
+  0xf,0x34,0x77, 0x5,0x38,0x5d, 0x5,0x38,0x5f, 0x5,0x38,0x60,
+  0x5,0x38,0x5e, 0x5,0x3f,0x4a, 0x5,0x45,0x7e, 0x4,0x43,0x55,
+  0x7,0x23,0x2b, 0x5,0x5b,0x54, 0x5,0x70,0x22, 0x6,0x23,0x28,
+  0x5,0x21,0x6e, 0x6,0x23,0x29, 0x6,0x23,0x2a, 0x5,0x21,0x6f,
+  0x5,0x22,0x6c, 0x4,0x22,0x76, 0x6,0x24,0x79, 0x5,0x22,0x72,
+  0x5,0x22,0x70, 0x5,0x22,0x6f, 0x5,0x22,0x6b, 0x5,0x22,0x6d,
+  0xf,0x22,0x50, 0xf,0x22,0x52, 0x5,0x22,0x71, 0x4,0x24,0x37,
+  0x6,0x27,0x73, 0x6,0x27,0x76, 0x6,0x27,0x75, 0x4,0x26,0x57,
+  0x5,0x24,0x3d, 0x6,0x27,0x6f, 0x4,0x24,0x38, 0x4,0x24,0x35,
+  0x6,0x27,0x77, 0x5,0x24,0x3e, 0x4,0x24,0x3b, 0x6,0x27,0x72,
+  0x6,0x2b,0x5d, 0x6,0x27,0x71, 0x6,0x2b,0x65, 0x6,0x2b,0x5b,
+  0x6,0x27,0x70, 0x5,0x24,0x3c, 0x6,0x2b,0x5c, 0x6,0x27,0x74,
+  0xf,0x24,0x3b, 0xf,0x24,0x3c, 0xf,0x24,0x3d, 0xf,0x24,0x3e,
+  0xf,0x24,0x3f, 0xf,0x24,0x40, 0xf,0x24,0x41, 0xf,0x24,0x43,
+  0xf,0x24,0x44, 0xf,0x24,0x45, 0xf,0x24,0x3a, 0x6,0x2b,0x5e,
+  0x6,0x2b,0x5f, 0x6,0x2b,0x61, 0x5,0x26,0x3b, 0x5,0x29,0x3a,
+  0x6,0x2b,0x64, 0x6,0x31,0x48, 0x5,0x26,0x3d, 0x6,0x31,0x4a,
+  0x5,0x26,0x3c, 0x6,0x31,0x49, 0x6,0x31,0x47, 0x6,0x2b,0x62,
+  0xf,0x27,0x26, 0xf,0x27,0x27, 0xf,0x27,0x28, 0xf,0x27,0x29,
+  0xf,0x27,0x2a, 0xf,0x27,0x2b, 0xf,0x27,0x2c, 0xf,0x27,0x2d,
+  0xf,0x27,0x2f, 0xf,0x27,0x25, 0x5,0x26,0x3e, 0x6,0x31,0x52,
+  0x6,0x31,0x54, 0x4,0x29,0x58, 0x4,0x29,0x4f, 0x4,0x29,0x50,
+  0x6,0x31,0x53, 0x6,0x37,0x6d, 0x5,0x29,0x3f, 0x5,0x29,0x42,
+  0x5,0x29,0x41, 0x6,0x31,0x4d, 0x5,0x29,0x47, 0x4,0x2d,0x34,
+  0x4,0x29,0x5c, 0x5,0x29,0x3e, 0x5,0x29,0x3d, 0x5,0x2d,0x63,
+  0x4,0x29,0x53, 0x6,0x37,0x6e, 0x5,0x29,0x48, 0x4,0x29,0x5a,
+  0x6,0x31,0x50, 0x5,0x29,0x40, 0x5,0x29,0x44, 0x6,0x31,0x4e,
+  0x6,0x31,0x56, 0x6,0x31,0x4b, 0x5,0x29,0x43, 0x5,0x29,0x3c,
+  0x6,0x31,0x55, 0x6,0x31,0x51, 0xf,0x2a,0x76, 0xf,0x2a,0x77,
+  0xf,0x2a,0x78, 0xf,0x2a,0x79, 0xf,0x2a,0x7a, 0xf,0x2a,0x7b,
+  0xf,0x2a,0x7c, 0xf,0x2a,0x7d, 0xf,0x2a,0x7e, 0xf,0x2b,0x21,
+  0xf,0x2b,0x23, 0xf,0x2b,0x24, 0xf,0x2b,0x25, 0xf,0x2b,0x26,
+  0xf,0x2b,0x27, 0xf,0x2b,0x28, 0xf,0x2b,0x29, 0xf,0x2b,0x2a,
+  0xf,0x2f,0x53, 0xf,0x2f,0x5c, 0xf,0x2f,0x61, 0x6,0x31,0x4c,
+  0xf,0x2b,0x22, 0x5,0x29,0x3b, 0x5,0x2d,0x62, 0x5,0x2d,0x64,
+  0x4,0x2d,0x3d, 0x6,0x37,0x75, 0x4,0x2d,0x38, 0x5,0x2d,0x6d,
+  0x5,0x2d,0x6b, 0x4,0x2d,0x39, 0x4,0x29,0x57, 0x4,0x2d,0x35,
+  0x5,0x2d,0x6a, 0x6,0x37,0x7b, 0x6,0x37,0x70, 0x6,0x37,0x7d,
+  0x6,0x37,0x73, 0x5,0x2d,0x69, 0x6,0x37,0x72, 0x6,0x37,0x77,
+  0x4,0x2d,0x36, 0x6,0x37,0x78, 0x5,0x2d,0x6c, 0x5,0x2d,0x65,
+  0x4,0x2d,0x37, 0x5,0x2d,0x67, 0x5,0x2d,0x68, 0x4,0x2d,0x3a,
+  0x6,0x37,0x7a, 0x5,0x2d,0x66, 0x6,0x31,0x57, 0x6,0x37,0x76,
+  0x6,0x40,0x27, 0x6,0x37,0x79, 0x6,0x37,0x74, 0x5,0x29,0x46,
+  0x6,0x37,0x7c, 0x6,0x37,0x7e, 0xf,0x2f,0x4c, 0xf,0x2f,0x4d,
+  0xf,0x2f,0x4e, 0xf,0x2f,0x4f, 0xf,0x2f,0x50, 0xf,0x2f,0x51,
+  0xf,0x2f,0x52, 0xf,0x2f,0x55, 0xf,0x2f,0x56, 0xf,0x2f,0x57,
+  0xf,0x2f,0x5a, 0xf,0x2f,0x5b, 0xf,0x2f,0x5d, 0xf,0x2f,0x5e,
+  0xf,0x2f,0x60, 0xf,0x2f,0x62, 0x6,0x40,0x28, 0xf,0x2f,0x58,
+  0x6,0x37,0x6f, 0xf,0x2f,0x54, 0x4,0x31,0x72, 0x4,0x31,0x73,
+  0x4,0x37,0x5e, 0x5,0x32,0x69, 0x6,0x40,0x31, 0x5,0x2d,0x6e,
+  0x6,0x40,0x37, 0x5,0x32,0x63, 0x4,0x31,0x74, 0x4,0x32,0x22,
+  0x4,0x31,0x76, 0x5,0x32,0x62, 0x4,0x31,0x7d, 0x5,0x38,0x61,
+  0x5,0x32,0x64, 0x6,0x40,0x34, 0x5,0x32,0x67, 0x6,0x40,0x35,
+  0x6,0x40,0x2c, 0x6,0x40,0x29, 0x4,0x32,0x24, 0x6,0x49,0x2f,
+  0x6,0x49,0x2a, 0x6,0x40,0x2a, 0x5,0x32,0x65, 0x6,0x49,0x2d,
+  0x4,0x37,0x5d, 0x6,0x40,0x2f, 0x6,0x49,0x2c, 0x6,0x49,0x2b,
+  0x5,0x32,0x68, 0x6,0x40,0x2d, 0x6,0x49,0x2e, 0x6,0x40,0x33,
+  0x6,0x40,0x30, 0x4,0x31,0x75, 0x6,0x40,0x2e, 0xf,0x34,0x78,
+  0xf,0x34,0x79, 0xf,0x34,0x7a, 0xf,0x34,0x7b, 0xf,0x34,0x7c,
+  0xf,0x34,0x7e, 0xf,0x35,0x22, 0xf,0x35,0x23, 0xf,0x35,0x24,
+  0xf,0x35,0x25, 0xf,0x35,0x26, 0xf,0x35,0x27, 0xf,0x35,0x28,
+  0xf,0x35,0x29, 0xf,0x35,0x2a, 0xf,0x35,0x2b, 0xf,0x35,0x2c,
+  0xf,0x35,0x2e, 0xf,0x35,0x2d, 0xf,0x35,0x2f, 0xf,0x35,0x30,
+  0xf,0x3b,0x31, 0xf,0x34,0x7d, 0x5,0x32,0x66, 0x4,0x32,0x26,
+  0xf,0x3b,0x41, 0x5,0x38,0x6b, 0x6,0x49,0x34, 0x4,0x37,0x69,
+  0x6,0x49,0x3b, 0x6,0x49,0x36, 0x5,0x38,0x6d, 0x6,0x49,0x41,
+  0x5,0x38,0x74, 0x6,0x49,0x31, 0x4,0x3d,0x51, 0x4,0x37,0x67,
+  0x5,0x38,0x62, 0x5,0x38,0x6a, 0x4,0x37,0x5f, 0x5,0x38,0x68,
+  0x4,0x37,0x63, 0x5,0x38,0x69, 0x4,0x37,0x6a, 0x5,0x38,0x66,
+  0x4,0x37,0x6d, 0x5,0x38,0x6f, 0x4,0x37,0x66, 0x6,0x49,0x42,
+  0x6,0x49,0x43, 0x6,0x49,0x3a, 0x5,0x38,0x71, 0x6,0x49,0x33,
+  0x6,0x49,0x46, 0x6,0x49,0x37, 0x5,0x38,0x70, 0x4,0x37,0x6c,
+  0x6,0x49,0x47, 0x6,0x49,0x32, 0x5,0x38,0x6c, 0x5,0x38,0x6e,
+  0x6,0x49,0x44, 0x5,0x38,0x64, 0x6,0x49,0x3c, 0x6,0x49,0x45,
+  0x6,0x49,0x40, 0x6,0x49,0x4c, 0x6,0x49,0x3f, 0x6,0x49,0x4d,
+  0x6,0x49,0x48, 0x6,0x49,0x39, 0x5,0x38,0x72, 0x6,0x49,0x3d,
+  0x5,0x38,0x73, 0x5,0x38,0x67, 0x6,0x49,0x38, 0x6,0x49,0x4b,
+  0x5,0x38,0x65, 0x6,0x52,0x73, 0xf,0x3b,0x30, 0xf,0x3b,0x32,
+  0xf,0x3b,0x34, 0xf,0x3b,0x35, 0xf,0x3b,0x36, 0xf,0x3b,0x37,
+  0xf,0x3b,0x38, 0xf,0x3b,0x39, 0xf,0x3b,0x3a, 0xf,0x3b,0x3b,
+  0xf,0x3b,0x3c, 0xf,0x3b,0x3d, 0xf,0x3b,0x3f, 0xf,0x3b,0x40,
+  0xf,0x3b,0x42, 0xf,0x3b,0x43, 0xf,0x3b,0x44, 0xf,0x3b,0x45,
+  0xf,0x3b,0x46, 0xf,0x3b,0x48, 0xf,0x3b,0x49, 0xf,0x3b,0x4a,
+  0x6,0x52,0x74, 0x6,0x49,0x3e, 0x6,0x49,0x49, 0x6,0x49,0x35,
+  0x5,0x38,0x63, 0xf,0x3b,0x47, 0x5,0x3f,0x52, 0x6,0x52,0x7b,
+  0x4,0x3d,0x4b, 0x4,0x3d,0x49, 0x5,0x3f,0x55, 0x4,0x3d,0x46,
+  0x6,0x52,0x78, 0x4,0x3d,0x4d, 0x4,0x3d,0x53, 0x4,0x3d,0x47,
+  0x4,0x3d,0x52, 0x6,0x52,0x7e, 0x5,0x3f,0x51, 0x5,0x46,0x21,
+  0x5,0x3f,0x4b, 0x6,0x5d,0x2c, 0x6,0x53,0x25, 0x6,0x52,0x75,
+  0x6,0x53,0x23, 0x6,0x53,0x22, 0x5,0x3f,0x4d, 0x5,0x3f,0x53,
+  0x5,0x3f,0x4e, 0x6,0x52,0x79, 0x6,0x53,0x21, 0x5,0x3f,0x50,
+  0x6,0x53,0x24, 0x6,0x52,0x7c, 0x5,0x3f,0x4c, 0x6,0x52,0x7a,
+  0x5,0x3f,0x4f, 0xf,0x41,0x56, 0xf,0x41,0x57, 0xf,0x41,0x58,
+  0xf,0x41,0x59, 0xf,0x41,0x5a, 0xf,0x41,0x5b, 0xf,0x41,0x5c,
+  0xf,0x41,0x5d, 0xf,0x41,0x5e, 0xf,0x41,0x60, 0xf,0x41,0x61,
+  0xf,0x41,0x63, 0xf,0x41,0x64, 0xf,0x41,0x65, 0xf,0x41,0x66,
+  0xf,0x41,0x67, 0xf,0x41,0x69, 0xf,0x48,0x30, 0x6,0x52,0x77,
+  0x6,0x52,0x7d, 0x6,0x52,0x76, 0xf,0x41,0x68, 0x5,0x3f,0x54,
+  0x6,0x5d,0x36, 0x5,0x4d,0x39, 0x5,0x46,0x27, 0x5,0x46,0x2a,
+  0x4,0x43,0x62, 0x4,0x43,0x5f, 0x6,0x5d,0x3c, 0x6,0x5d,0x3d,
+  0x6,0x5d,0x2e, 0x4,0x43,0x57, 0x6,0x5d,0x3f, 0x5,0x46,0x26,
+  0x4,0x43,0x63, 0x5,0x4d,0x38, 0x5,0x46,0x29, 0x6,0x5d,0x35,
+  0x4,0x43,0x59, 0x7,0x23,0x2f, 0x4,0x43,0x5b, 0x4,0x43,0x5a,
+  0x7,0x23,0x2e, 0x7,0x23,0x31, 0x5,0x46,0x24, 0x4,0x43,0x65,
+  0x6,0x5d,0x39, 0x6,0x5d,0x3e, 0x6,0x5d,0x3a, 0x5,0x46,0x28,
+  0x6,0x5d,0x37, 0x5,0x46,0x2b, 0x7,0x23,0x2c, 0x6,0x5d,0x3b,
+  0x6,0x5d,0x33, 0x6,0x5d,0x31, 0x5,0x46,0x22, 0x4,0x43,0x60,
+  0x6,0x5d,0x2f, 0x6,0x5d,0x34, 0xf,0x48,0x2b, 0xf,0x48,0x2c,
+  0xf,0x48,0x2d, 0xf,0x48,0x2e, 0xf,0x48,0x2f, 0xf,0x48,0x33,
+  0xf,0x48,0x34, 0xf,0x48,0x35, 0xf,0x48,0x37, 0xf,0x48,0x38,
+  0xf,0x48,0x3a, 0xf,0x48,0x3b, 0xf,0x48,0x39, 0xf,0x48,0x3c,
+  0xf,0x48,0x3d, 0xf,0x48,0x3e, 0xf,0x48,0x3f, 0xf,0x48,0x40,
+  0xf,0x48,0x41, 0xf,0x48,0x42, 0xf,0x48,0x43, 0xf,0x48,0x44,
+  0xf,0x48,0x45, 0xf,0x48,0x47, 0xf,0x48,0x48, 0xf,0x48,0x49,
+  0xf,0x48,0x46, 0x6,0x5d,0x30, 0xf,0x48,0x36, 0x7,0x23,0x33,
+  0x7,0x23,0x38, 0x5,0x4d,0x3c, 0x4,0x4a,0x25, 0x7,0x23,0x3d,
+  0x7,0x23,0x37, 0x7,0x23,0x39, 0x4,0x49,0x7b, 0x4,0x49,0x78,
+  0x5,0x4d,0x3d, 0x5,0x4d,0x3b, 0x7,0x23,0x45, 0x4,0x49,0x7d,
+  0x7,0x2e,0x2f, 0x4,0x4a,0x21, 0x5,0x4d,0x41, 0x4,0x4a,0x26,
+  0x4,0x49,0x7c, 0x5,0x54,0x59, 0x7,0x2e,0x3c, 0x7,0x23,0x35,
+  0x7,0x23,0x34, 0x7,0x2e,0x2d, 0x7,0x2e,0x2b, 0x7,0x23,0x44,
+  0x7,0x2e,0x2c, 0x7,0x23,0x3c, 0x5,0x4d,0x40, 0x7,0x2e,0x2e,
+  0x5,0x4d,0x3f, 0x7,0x23,0x3b, 0x7,0x23,0x42, 0x7,0x23,0x43,
+  0x7,0x23,0x3e, 0x7,0x23,0x41, 0x4,0x49,0x77, 0xf,0x48,0x31,
+  0x7,0x23,0x32, 0x7,0x23,0x3f, 0x7,0x23,0x40, 0xf,0x4e,0x7c,
+  0xf,0x4e,0x7d, 0xf,0x4e,0x7e, 0xf,0x4f,0x21, 0xf,0x4f,0x22,
+  0xf,0x4f,0x23, 0xf,0x4f,0x26, 0xf,0x4f,0x27, 0xf,0x4f,0x28,
+  0xf,0x4f,0x29, 0xf,0x4f,0x2a, 0xf,0x4f,0x2b, 0xf,0x4f,0x2d,
+  0xf,0x4f,0x2e, 0xf,0x4f,0x2f, 0xf,0x4f,0x30, 0xf,0x54,0x5f,
+  0xf,0x4f,0x24, 0x4,0x56,0x38, 0x4,0x50,0x41, 0x7,0x2e,0x35,
+  0x7,0x2e,0x30, 0x5,0x54,0x5a, 0x5,0x54,0x5b, 0x7,0x2e,0x3e,
+  0x7,0x2e,0x3a, 0x7,0x2e,0x32, 0x7,0x23,0x36, 0x4,0x50,0x3e,
+  0x4,0x50,0x43, 0x4,0x50,0x40, 0x5,0x54,0x5d, 0x4,0x50,0x3f,
+  0x7,0x2e,0x3d, 0x4,0x50,0x46, 0x7,0x2e,0x3b, 0x4,0x50,0x48,
+  0x4,0x50,0x42, 0x4,0x50,0x47, 0x7,0x2e,0x39, 0x7,0x2e,0x31,
+  0x7,0x2e,0x40, 0x7,0x38,0x29, 0x7,0x2e,0x38, 0x5,0x54,0x5f,
+  0x5,0x54,0x5c, 0x7,0x2e,0x37, 0x7,0x38,0x28, 0x7,0x2e,0x33,
+  0x7,0x2e,0x3f, 0xf,0x54,0x55, 0xf,0x54,0x56, 0xf,0x54,0x57,
+  0xf,0x54,0x58, 0xf,0x54,0x59, 0xf,0x54,0x5a, 0xf,0x54,0x5b,
+  0xf,0x54,0x5c, 0xf,0x54,0x5d, 0xf,0x54,0x5e, 0xf,0x54,0x60,
+  0x7,0x2e,0x34, 0x7,0x2e,0x36, 0x4,0x50,0x44, 0xf,0x54,0x54,
+  0x5,0x5b,0x56, 0x7,0x38,0x31, 0x5,0x5b,0x57, 0x7,0x38,0x36,
+  0x4,0x56,0x3b, 0x7,0x38,0x2f, 0x7,0x38,0x35, 0x4,0x56,0x3a,
+  0x7,0x38,0x34, 0x7,0x38,0x2c, 0x5,0x5b,0x58, 0x4,0x56,0x37,
+  0x5,0x5b,0x55, 0x7,0x38,0x2a, 0x7,0x38,0x37, 0x7,0x38,0x30,
+  0x7,0x38,0x2e, 0x7,0x38,0x32, 0x7,0x38,0x38, 0x7,0x38,0x2b,
+  0x7,0x38,0x2d, 0xf,0x5a,0x30, 0xf,0x5a,0x31, 0xf,0x5a,0x32,
+  0xf,0x5a,0x33, 0xf,0x5a,0x34, 0xf,0x5a,0x35, 0x7,0x38,0x33,
+  0x4,0x5b,0x33, 0x4,0x5b,0x38, 0x5,0x61,0x6e, 0x5,0x61,0x6b,
+  0x5,0x61,0x6c, 0x5,0x61,0x6d, 0x7,0x3f,0x68, 0x7,0x3f,0x67,
+  0x4,0x5b,0x35, 0x4,0x5b,0x37, 0x5,0x67,0x7a, 0x5,0x6c,0x2d,
+  0x7,0x3f,0x69, 0x7,0x3f,0x66, 0x4,0x5b,0x34, 0x7,0x3f,0x63,
+  0x7,0x3f,0x65, 0x7,0x47,0x2f, 0x7,0x3f,0x61, 0x7,0x3f,0x64,
+  0xf,0x5e,0x68, 0xf,0x5e,0x69, 0xf,0x5e,0x6a, 0xf,0x5e,0x6d,
+  0xf,0x5e,0x6e, 0xf,0x5e,0x6f, 0xf,0x5e,0x71, 0xf,0x5e,0x72,
+  0xf,0x5e,0x74, 0xf,0x5e,0x6c, 0xf,0x5e,0x6b, 0x4,0x5f,0x66,
+  0x4,0x5f,0x68, 0x4,0x5f,0x67, 0x4,0x5f,0x69, 0x5,0x6c,0x2f,
+  0x7,0x47,0x32, 0x7,0x47,0x34, 0x7,0x47,0x36, 0x5,0x67,0x7b,
+  0x7,0x47,0x30, 0x5,0x6c,0x2e, 0x7,0x47,0x38, 0x4,0x5f,0x6b,
+  0x7,0x47,0x35, 0x7,0x47,0x33, 0x7,0x47,0x31, 0x4,0x5f,0x6a,
+  0x5,0x67,0x79, 0xf,0x62,0x3e, 0xf,0x62,0x3f, 0xf,0x62,0x40,
+  0xf,0x62,0x41, 0xf,0x62,0x42, 0xf,0x62,0x43, 0xf,0x62,0x44,
+  0xf,0x62,0x45, 0xf,0x62,0x46, 0xf,0x62,0x49, 0xf,0x65,0x2f,
+  0x7,0x3f,0x6a, 0x7,0x47,0x37, 0xf,0x62,0x47, 0x5,0x6c,0x32,
+  0x4,0x66,0x3f, 0x7,0x4d,0x6d, 0x4,0x63,0x48, 0x7,0x4d,0x6c,
+  0x4,0x63,0x49, 0x7,0x4d,0x70, 0x4,0x63,0x4a, 0x7,0x4d,0x6e,
+  0x5,0x6c,0x33, 0x5,0x6c,0x30, 0x5,0x6c,0x31, 0x7,0x4d,0x6f,
+  0xf,0x65,0x2d, 0xf,0x65,0x2e, 0xf,0x65,0x30, 0x7,0x53,0x44,
+  0x7,0x57,0x77, 0x4,0x66,0x41, 0x7,0x53,0x3f, 0x7,0x53,0x43,
+  0x7,0x53,0x42, 0x4,0x66,0x42, 0x5,0x73,0x45, 0x7,0x53,0x41,
+  0x7,0x53,0x40, 0xf,0x67,0x56, 0xf,0x67,0x57, 0xf,0x67,0x58,
+  0xf,0x67,0x59, 0x7,0x57,0x78, 0x7,0x57,0x79, 0x5,0x73,0x44,
+  0x5,0x73,0x47, 0x5,0x70,0x23, 0x7,0x57,0x7a, 0x5,0x73,0x42,
+  0x5,0x73,0x46, 0x7,0x57,0x7c, 0x7,0x5b,0x57, 0x7,0x53,0x3e,
+  0xf,0x69,0x43, 0xf,0x69,0x44, 0x5,0x73,0x43, 0x7,0x57,0x7b,
+  0x7,0x5b,0x58, 0xf,0x6a,0x54, 0xf,0x6a,0x55, 0xf,0x6a,0x56,
+  0x7,0x5e,0x6a, 0x5,0x77,0x5d, 0x7,0x5e,0x69, 0x4,0x6b,0x6b,
+  0x7,0x5e,0x6b, 0x5,0x77,0x5c, 0x7,0x5e,0x68, 0xf,0x6b,0x49,
+  0xf,0x6b,0x4a, 0xf,0x6b,0x4b, 0xf,0x6b,0x4c, 0x7,0x62,0x38,
+  0xf,0x6c,0x2a, 0xf,0x6c,0x2b, 0x4,0x6d,0x73, 0x7,0x63,0x53,
+  0xf,0x6c,0x61, 0x7,0x66,0x26, 0x4,0x22,0x77, 0x4,0x24,0x3d,
+  0x4,0x26,0x5a, 0xf,0x27,0x31, 0xf,0x27,0x32, 0xf,0x27,0x33,
+  0x6,0x31,0x58, 0x6,0x38,0x22, 0x5,0x2f,0x5c, 0x4,0x2d,0x3e,
+  0x6,0x38,0x21, 0x6,0x36,0x44, 0x6,0x40,0x39, 0x6,0x40,0x38,
+  0x6,0x49,0x4f, 0x6,0x49,0x4e, 0xf,0x3b,0x4c, 0xf,0x3b,0x4d,
+  0x5,0x38,0x75, 0x6,0x53,0x26, 0xf,0x41,0x6a, 0x6,0x53,0x27,
+  0x5,0x46,0x2d, 0x6,0x5d,0x40, 0x7,0x23,0x46, 0x7,0x23,0x47,
+  0x5,0x54,0x60, 0xf,0x54,0x61, 0x7,0x38,0x3b, 0x7,0x38,0x3a,
+  0x5,0x5b,0x59, 0x7,0x38,0x3c, 0x7,0x4d,0x71, 0x5,0x24,0x3f,
+  0x6,0x27,0x79, 0x5,0x24,0x40, 0x6,0x27,0x7a, 0x5,0x24,0x41,
+  0x6,0x27,0x78, 0x6,0x2b,0x68, 0x4,0x26,0x60, 0x5,0x26,0x42,
+  0x5,0x26,0x40, 0x4,0x26,0x5d, 0x6,0x2b,0x6c, 0x6,0x2b,0x66,
+  0x6,0x2b,0x6a, 0x6,0x2b,0x69, 0x6,0x2b,0x67, 0x5,0x26,0x3f,
+  0x5,0x26,0x41, 0x4,0x26,0x5c, 0x4,0x29,0x60, 0x6,0x31,0x59,
+  0x5,0x29,0x4c, 0x5,0x29,0x4b, 0x6,0x31,0x5c, 0x6,0x31,0x5e,
+  0x6,0x31,0x5d, 0x5,0x29,0x49, 0x5,0x29,0x4a, 0x4,0x29,0x5e,
+  0x4,0x29,0x5f, 0x6,0x31,0x5b, 0x6,0x38,0x23, 0x6,0x38,0x24,
+  0x6,0x38,0x26, 0x5,0x2d,0x72, 0x6,0x31,0x5f, 0x4,0x2d,0x45,
+  0x6,0x38,0x28, 0x5,0x2d,0x70, 0x6,0x38,0x2a, 0x5,0x2d,0x6f,
+  0x5,0x2d,0x74, 0x6,0x38,0x25, 0x5,0x2d,0x73, 0x5,0x2d,0x71,
+  0x6,0x38,0x29, 0x6,0x38,0x27, 0x4,0x2d,0x41, 0x5,0x32,0x6d,
+  0x6,0x40,0x40, 0x4,0x32,0x2e, 0x6,0x40,0x3a, 0x6,0x40,0x3b,
+  0x6,0x40,0x3d, 0x5,0x32,0x6f, 0x5,0x32,0x70, 0x4,0x32,0x30,
+  0x6,0x40,0x3e, 0x6,0x40,0x3c, 0x5,0x32,0x6b, 0x6,0x40,0x41,
+  0x4,0x32,0x31, 0x4,0x32,0x2a, 0x4,0x32,0x2d, 0x4,0x32,0x29,
+  0x5,0x32,0x6e, 0xf,0x35,0x31, 0xf,0x35,0x32, 0xf,0x35,0x33,
+  0xf,0x35,0x34, 0xf,0x35,0x35, 0x5,0x32,0x6a, 0x6,0x40,0x3f,
+  0x6,0x49,0x58, 0x5,0x39,0x22, 0x6,0x49,0x55, 0x4,0x37,0x7a,
+  0x4,0x37,0x7b, 0x6,0x49,0x59, 0x6,0x49,0x54, 0x6,0x49,0x5a,
+  0x5,0x38,0x76, 0x5,0x38,0x7e, 0x5,0x39,0x21, 0x5,0x38,0x7d,
+  0x5,0x38,0x77, 0x6,0x49,0x56, 0x5,0x38,0x7b, 0x6,0x49,0x51,
+  0x6,0x49,0x50, 0x6,0x49,0x53, 0x4,0x37,0x72, 0x4,0x37,0x73,
+  0x4,0x37,0x74, 0x5,0x38,0x78, 0x5,0x38,0x79, 0x5,0x32,0x6c,
+  0x6,0x49,0x52, 0x6,0x53,0x2f, 0x5,0x38,0x7a, 0x5,0x3f,0x57,
+  0x5,0x3f,0x5a, 0x5,0x3f,0x5c, 0x4,0x3d,0x57, 0x4,0x3d,0x5f,
+  0x6,0x53,0x2b, 0x6,0x53,0x2e, 0x6,0x53,0x29, 0x5,0x3f,0x5b,
+  0x6,0x53,0x30, 0x6,0x53,0x2d, 0x6,0x53,0x28, 0x4,0x3d,0x60,
+  0x5,0x3f,0x56, 0x6,0x53,0x31, 0x5,0x3f,0x59, 0x4,0x3d,0x5e,
+  0x4,0x3d,0x55, 0x4,0x3d,0x56, 0x4,0x3d,0x58, 0x5,0x3f,0x58,
+  0x6,0x53,0x2a, 0xf,0x41,0x6b, 0x6,0x53,0x2c, 0x5,0x32,0x71,
+  0x4,0x3d,0x5a, 0x6,0x55,0x60, 0x5,0x46,0x34, 0x6,0x5d,0x49,
+  0x5,0x46,0x32, 0x6,0x5d,0x41, 0x4,0x43,0x68, 0x5,0x46,0x31,
+  0x6,0x5d,0x42, 0x5,0x46,0x2f, 0x6,0x5d,0x46, 0x5,0x46,0x37,
+  0x5,0x46,0x35, 0x6,0x5d,0x47, 0x6,0x5d,0x45, 0x6,0x5d,0x44,
+  0x6,0x5d,0x48, 0x6,0x5d,0x43, 0x6,0x5d,0x4a, 0x5,0x46,0x33,
+  0x4,0x43,0x67, 0x5,0x46,0x36, 0x6,0x5d,0x4b, 0x5,0x48,0x25,
+  0x5,0x4d,0x42, 0x5,0x4d,0x47, 0x4,0x4a,0x2c, 0x7,0x23,0x4e,
+  0x7,0x23,0x49, 0x7,0x23,0x48, 0x5,0x4d,0x46, 0x7,0x23,0x52,
+  0x7,0x23,0x4f, 0x7,0x23,0x4d, 0x5,0x4d,0x45, 0x7,0x23,0x50,
+  0x5,0x4d,0x43, 0x5,0x4d,0x44, 0xf,0x4f,0x31, 0x7,0x23,0x4b,
+  0x7,0x23,0x4c, 0x7,0x23,0x4a, 0x4,0x50,0x4b, 0x7,0x2e,0x42,
+  0x7,0x2e,0x46, 0x7,0x2e,0x48, 0xf,0x54,0x62, 0x5,0x54,0x61,
+  0x7,0x2e,0x4b, 0x7,0x2e,0x47, 0x7,0x2e,0x49, 0x7,0x2e,0x41,
+  0x7,0x2e,0x45, 0x7,0x2e,0x4c, 0x5,0x54,0x63, 0x7,0x2e,0x4a,
+  0x4,0x50,0x4a, 0x5,0x54,0x64, 0x5,0x54,0x65, 0x5,0x54,0x66,
+  0xf,0x54,0x63, 0x7,0x2e,0x44, 0x5,0x54,0x62, 0x7,0x23,0x51,
+  0x5,0x54,0x67, 0x7,0x38,0x3e, 0x7,0x38,0x3d, 0x5,0x5b,0x5a,
+  0x5,0x5b,0x5e, 0x5,0x5b,0x5d, 0x4,0x56,0x3c, 0x4,0x56,0x3d,
+  0x5,0x5b,0x5b, 0xf,0x5a,0x37, 0xf,0x5a,0x38, 0x7,0x38,0x3f,
+  0x5,0x5b,0x5c, 0x5,0x61,0x70, 0x7,0x3f,0x6c, 0x5,0x61,0x6f,
+  0x4,0x5b,0x3b, 0x7,0x3f,0x6d, 0x7,0x3f,0x6e, 0x4,0x5b,0x39,
+  0x7,0x3f,0x6b, 0x5,0x68,0x21, 0x5,0x67,0x7e, 0x5,0x67,0x7c,
+  0x5,0x67,0x7d, 0xf,0x62,0x4a, 0x5,0x6c,0x34, 0x4,0x63,0x4d,
+  0x5,0x6c,0x35, 0x7,0x4d,0x72, 0x4,0x63,0x4b, 0x7,0x4d,0x75,
+  0x7,0x4d,0x74, 0x5,0x6c,0x36, 0x7,0x4d,0x76, 0x7,0x4d,0x77,
+  0x4,0x66,0x44, 0x5,0x70,0x25, 0x5,0x70,0x26, 0x5,0x73,0x48,
+  0xf,0x69,0x45, 0x7,0x5b,0x59, 0x5,0x75,0x6b, 0x4,0x6a,0x4a,
+  0x7,0x5b,0x5a, 0x4,0x6c,0x6f, 0xf,0x6c,0x62, 0xf,0x22,0x53,
+  0xf,0x24,0x46, 0x6,0x2b,0x6d, 0xf,0x2b,0x2d, 0xf,0x2b,0x2e,
+  0xf,0x2b,0x2f, 0x6,0x38,0x2d, 0x6,0x38,0x2e, 0xf,0x2f,0x65,
+  0x6,0x40,0x42, 0x6,0x40,0x44, 0xf,0x35,0x37, 0xf,0x35,0x38,
+  0x6,0x40,0x43, 0xf,0x3b,0x4e, 0x5,0x3f,0x5d, 0xf,0x41,0x6c,
+  0x6,0x53,0x32, 0xf,0x35,0x36, 0x5,0x4d,0x48, 0x7,0x23,0x54,
+  0x7,0x23,0x53, 0x5,0x4d,0x49, 0xf,0x4f,0x33, 0xf,0x4f,0x34,
+  0x5,0x4d,0x4a, 0x7,0x2e,0x4d, 0xf,0x5a,0x39, 0xf,0x5e,0x75,
+  0xf,0x62,0x4b, 0xf,0x67,0x5a, 0x7,0x5b,0x5b, 0x6,0x22,0x22,
+  0xf,0x27,0x34, 0x6,0x31,0x60, 0x4,0x2d,0x48, 0x5,0x2d,0x76,
+  0x5,0x2d,0x75, 0x6,0x38,0x2f, 0x5,0x32,0x72, 0xf,0x35,0x39,
+  0x6,0x40,0x46, 0x6,0x40,0x45, 0x6,0x49,0x5d, 0xf,0x40,0x32,
+  0x6,0x49,0x5b, 0x6,0x49,0x5c, 0x4,0x3d,0x61, 0x6,0x5d,0x4c,
+  0x5,0x3f,0x5e, 0xf,0x41,0x6d, 0x4,0x43,0x6a, 0x4,0x4a,0x2d,
+  0x7,0x23,0x55, 0x7,0x38,0x40, 0x4,0x5f,0x6c, 0x6,0x22,0x23,
+  0xf,0x24,0x47, 0x6,0x2b,0x6f, 0x6,0x2b,0x6e, 0x6,0x31,0x61,
+  0xf,0x2f,0x66, 0x4,0x32,0x32, 0x6,0x40,0x48, 0x6,0x40,0x47,
+  0x6,0x49,0x60, 0x6,0x49,0x64, 0x6,0x49,0x63, 0x5,0x39,0x23,
+  0x6,0x49,0x66, 0x6,0x49,0x5f, 0x6,0x49,0x5e, 0x6,0x49,0x62,
+  0x4,0x37,0x7c, 0x6,0x4c,0x3e, 0x6,0x49,0x65, 0x4,0x3d,0x62,
+  0x6,0x53,0x36, 0x6,0x53,0x34, 0x6,0x53,0x37, 0x5,0x3f,0x5f,
+  0x6,0x5d,0x4f, 0x6,0x5d,0x4e, 0x6,0x5d,0x50, 0x3,0x47,0x31,
+  0x4,0x4a,0x2f, 0x6,0x5d,0x4d, 0x5,0x4d,0x4c, 0x5,0x4d,0x4d,
+  0x7,0x2e,0x51, 0x7,0x2e,0x50, 0x7,0x2e,0x4f, 0x7,0x2e,0x52,
+  0x7,0x2e,0x4e, 0x4,0x50,0x4d, 0x7,0x38,0x41, 0x7,0x38,0x42,
+  0x7,0x3f,0x6f, 0x4,0x5b,0x3c, 0x7,0x3f,0x70, 0x7,0x3f,0x71,
+  0x7,0x47,0x39, 0xf,0x62,0x4c, 0x7,0x4d,0x78, 0x7,0x57,0x7d,
+  0x4,0x24,0x42, 0x6,0x27,0x7b, 0xf,0x27,0x35, 0xf,0x27,0x36,
+  0x5,0x29,0x4d, 0x6,0x31,0x64, 0x6,0x31,0x63, 0xf,0x2b,0x30,
+  0x6,0x31,0x62, 0x4,0x2d,0x4a, 0x5,0x2d,0x77, 0x6,0x38,0x31,
+  0x6,0x38,0x33, 0x6,0x38,0x35, 0xf,0x2f,0x67, 0xf,0x2f,0x68,
+  0xf,0x2f,0x69, 0xf,0x2f,0x6a, 0x6,0x38,0x32, 0x4,0x32,0x33,
+  0x4,0x32,0x35, 0x6,0x40,0x4a, 0xf,0x35,0x3a, 0xf,0x35,0x3b,
+  0x6,0x40,0x49, 0x6,0x49,0x69, 0x5,0x39,0x25, 0x5,0x39,0x24,
+  0x6,0x49,0x68, 0x6,0x49,0x6a, 0x6,0x49,0x67, 0xf,0x3b,0x4f,
+  0xf,0x3b,0x50, 0x6,0x53,0x38, 0x5,0x3f,0x60, 0x6,0x53,0x39,
+  0xf,0x41,0x6e, 0xf,0x41,0x6f, 0x5,0x46,0x38, 0x5,0x46,0x3a,
+  0x6,0x5d,0x52, 0x5,0x46,0x39, 0x7,0x23,0x56, 0xf,0x4f,0x35,
+  0x7,0x2e,0x53, 0x5,0x54,0x68, 0x7,0x38,0x43, 0x5,0x5b,0x5f,
+  0x7,0x3f,0x73, 0x5,0x61,0x71, 0x4,0x5b,0x3d, 0x7,0x3f,0x74,
+  0x7,0x3f,0x72, 0x7,0x47,0x3a, 0x7,0x53,0x45, 0x4,0x68,0x6d,
+  0x7,0x57,0x7e, 0x7,0x5e,0x6c, 0x7,0x60,0x70, 0x5,0x24,0x42,
+  0x5,0x29,0x4e, 0x5,0x2d,0x79, 0x5,0x2d,0x78, 0x4,0x37,0x7d,
+  0x6,0x49,0x6b, 0x6,0x53,0x3a, 0x6,0x53,0x3b, 0x4,0x3d,0x66,
+  0xf,0x4f,0x36, 0x6,0x23,0x2c, 0x6,0x23,0x2b, 0x6,0x24,0x7b,
+  0x5,0x22,0x73, 0x6,0x24,0x7a, 0x6,0x24,0x7c, 0xf,0x22,0x54,
+  0xf,0x24,0x4b, 0x6,0x27,0x7c, 0x6,0x27,0x7d, 0x6,0x28,0x25,
+  0x5,0x24,0x43, 0x6,0x28,0x22, 0x6,0x27,0x7e, 0x6,0x28,0x24,
+  0x6,0x28,0x23, 0x6,0x28,0x21, 0xf,0x24,0x48, 0xf,0x24,0x4a,
+  0xf,0x24,0x4c, 0x4,0x24,0x44, 0x5,0x26,0x48, 0x6,0x2b,0x74,
+  0x6,0x2b,0x73, 0x5,0x26,0x49, 0x6,0x2b,0x7d, 0x5,0x26,0x44,
+  0x6,0x2b,0x79, 0x5,0x26,0x47, 0x6,0x2b,0x7a, 0x6,0x2b,0x77,
+  0x5,0x26,0x46, 0x5,0x26,0x45, 0x6,0x2b,0x75, 0x6,0x2b,0x78,
+  0xf,0x27,0x37, 0xf,0x27,0x38, 0xf,0x27,0x39, 0xf,0x27,0x3a,
+  0xf,0x27,0x3b, 0xf,0x27,0x3c, 0xf,0x27,0x3d, 0x6,0x2b,0x71,
+  0x6,0x2b,0x7b, 0x6,0x2b,0x7c, 0x6,0x2b,0x72, 0x6,0x2b,0x76,
+  0x5,0x29,0x51, 0x6,0x31,0x65, 0x6,0x31,0x66, 0x5,0x29,0x50,
+  0x4,0x29,0x66, 0x6,0x31,0x68, 0x6,0x31,0x69, 0x4,0x29,0x68,
+  0xf,0x2b,0x31, 0xf,0x2b,0x32, 0x6,0x31,0x6a, 0xf,0x2b,0x35,
+  0xf,0x2b,0x36, 0x6,0x31,0x6e, 0x6,0x31,0x6c, 0x6,0x31,0x6b,
+  0x5,0x2d,0x7e, 0x6,0x38,0x3a, 0x5,0x2e,0x21, 0x5,0x2e,0x22,
+  0x5,0x2d,0x7b, 0x5,0x2e,0x23, 0x5,0x2d,0x7c, 0x5,0x2d,0x7a,
+  0x6,0x38,0x3e, 0x6,0x38,0x38, 0x6,0x38,0x3c, 0x5,0x2d,0x7d,
+  0x6,0x38,0x39, 0x6,0x38,0x3d, 0xf,0x2f,0x6b, 0xf,0x2f,0x6d,
+  0x6,0x38,0x3b, 0xf,0x2f,0x6c, 0x6,0x38,0x41, 0x6,0x38,0x3f,
+  0x5,0x32,0x73, 0x4,0x32,0x38, 0x4,0x38,0x21, 0x6,0x40,0x53,
+  0x4,0x32,0x3d, 0x6,0x40,0x4e, 0x6,0x40,0x4b, 0x6,0x40,0x4c,
+  0x6,0x40,0x50, 0x6,0x40,0x4d, 0x6,0x40,0x55, 0x5,0x32,0x75,
+  0x6,0x38,0x40, 0x6,0x40,0x54, 0x6,0x40,0x56, 0xf,0x35,0x3c,
+  0xf,0x35,0x3d, 0xf,0x35,0x3e, 0xf,0x35,0x3f, 0xf,0x35,0x40,
+  0xf,0x35,0x41, 0xf,0x35,0x42, 0xf,0x35,0x43, 0xf,0x35,0x44,
+  0xf,0x35,0x45, 0xf,0x35,0x46, 0xf,0x35,0x47, 0x6,0x40,0x52,
+  0x5,0x32,0x74, 0x6,0x49,0x71, 0x6,0x49,0x74, 0x4,0x32,0x3c,
+  0x5,0x3f,0x61, 0x5,0x39,0x2a, 0x6,0x49,0x6f, 0x5,0x39,0x27,
+  0x6,0x49,0x70, 0x5,0x39,0x29, 0x5,0x39,0x26, 0x6,0x49,0x6c,
+  0x6,0x49,0x6d, 0x4,0x38,0x23, 0x6,0x49,0x76, 0x5,0x39,0x2b,
+  0x4,0x38,0x27, 0x6,0x49,0x6e, 0x6,0x49,0x75, 0x6,0x49,0x77,
+  0xf,0x3b,0x51, 0xf,0x3b,0x53, 0xf,0x3b,0x54, 0xf,0x3b,0x56,
+  0xf,0x3b,0x57, 0xf,0x3b,0x59, 0xf,0x3b,0x5a, 0xf,0x3b,0x5c,
+  0xf,0x3b,0x5d, 0xf,0x3b,0x52, 0xf,0x3b,0x58, 0x4,0x38,0x26,
+  0x4,0x38,0x28, 0x6,0x49,0x72, 0x5,0x39,0x2c, 0x5,0x39,0x28,
+  0x6,0x53,0x43, 0x5,0x3f,0x63, 0x6,0x53,0x41, 0x6,0x5d,0x53,
+  0x6,0x53,0x42, 0x6,0x53,0x3f, 0x6,0x53,0x44, 0xf,0x46,0x39,
+  0xf,0x3b,0x5b, 0x6,0x53,0x3e, 0xf,0x41,0x70, 0xf,0x41,0x71,
+  0xf,0x41,0x73, 0xf,0x41,0x74, 0xf,0x41,0x75, 0xf,0x41,0x76,
+  0xf,0x41,0x77, 0xf,0x41,0x78, 0xf,0x41,0x79, 0xf,0x41,0x7a,
+  0xf,0x41,0x7b, 0xf,0x41,0x7d, 0x5,0x3d,0x55, 0x6,0x53,0x45,
+  0x6,0x53,0x40, 0x5,0x3f,0x64, 0x5,0x46,0x3b, 0x5,0x46,0x3f,
+  0x5,0x46,0x3d, 0x5,0x46,0x3e, 0x6,0x5d,0x56, 0x5,0x46,0x40,
+  0x5,0x46,0x43, 0x5,0x46,0x44, 0x4,0x43,0x6c, 0x5,0x46,0x42,
+  0x5,0x4d,0x4e, 0xf,0x48,0x4a, 0xf,0x48,0x4b, 0xf,0x48,0x4c,
+  0xf,0x48,0x4d, 0xf,0x48,0x4e, 0xf,0x48,0x4f, 0x6,0x5d,0x54,
+  0x5,0x46,0x3c, 0x6,0x5d,0x57, 0x6,0x5d,0x59, 0x6,0x5d,0x5a,
+  0x6,0x5d,0x55, 0x6,0x5d,0x58, 0x7,0x23,0x61, 0x7,0x23,0x5c,
+  0x7,0x23,0x5b, 0x7,0x23,0x5e, 0x5,0x4d,0x52, 0x5,0x4d,0x55,
+  0x7,0x23,0x5a, 0x7,0x23,0x57, 0x7,0x23,0x58, 0x7,0x23,0x62,
+  0xf,0x4f,0x37, 0xf,0x4f,0x39, 0xf,0x4f,0x3a, 0x5,0x4d,0x54,
+  0x7,0x23,0x60, 0xf,0x4e,0x30, 0x7,0x23,0x5d, 0x7,0x23,0x5f,
+  0x7,0x23,0x59, 0x5,0x4d,0x51, 0x5,0x54,0x69, 0x5,0x54,0x6b,
+  0x7,0x2e,0x57, 0x4,0x50,0x55, 0x7,0x2e,0x55, 0x7,0x2e,0x5b,
+  0x7,0x2e,0x59, 0x7,0x2e,0x5d, 0x4,0x50,0x54, 0x7,0x2e,0x5c,
+  0x7,0x2e,0x54, 0xf,0x54,0x65, 0xf,0x54,0x66, 0xf,0x54,0x67,
+  0xf,0x54,0x69, 0xf,0x54,0x6a, 0x7,0x2e,0x58, 0x5,0x4d,0x4f,
+  0x7,0x2d,0x62, 0xf,0x54,0x68, 0x7,0x2e,0x43, 0x5,0x54,0x6a,
+  0x7,0x2e,0x56, 0xf,0x4f,0x38, 0x7,0x38,0x47, 0x5,0x5b,0x60,
+  0x5,0x5b,0x61, 0x7,0x38,0x48, 0x5,0x5b,0x62, 0x7,0x38,0x45,
+  0x7,0x38,0x46, 0x7,0x38,0x49, 0xf,0x5a,0x3a, 0xf,0x5a,0x3b,
+  0xf,0x5a,0x3c, 0x7,0x38,0x44, 0xf,0x5a,0x3d, 0x4,0x5b,0x3e,
+  0x5,0x61,0x72, 0x5,0x61,0x73, 0x7,0x3f,0x75, 0xf,0x5e,0x76,
+  0xf,0x5e,0x77, 0xf,0x5e,0x78, 0xf,0x5e,0x79, 0xf,0x5e,0x7b,
+  0x7,0x3f,0x78, 0x5,0x68,0x23, 0x7,0x47,0x3d, 0x7,0x47,0x3c,
+  0x5,0x68,0x22, 0x5,0x68,0x24, 0x7,0x47,0x3b, 0x7,0x47,0x3e,
+  0xf,0x62,0x4d, 0x5,0x6c,0x37, 0xf,0x65,0x31, 0xf,0x65,0x32,
+  0x5,0x6b,0x6e, 0x7,0x4d,0x79, 0x7,0x53,0x46, 0x7,0x58,0x21,
+  0xf,0x69,0x46, 0x5,0x73,0x39, 0x5,0x73,0x49, 0x7,0x5b,0x5c,
+  0x5,0x77,0x5e, 0x7,0x5e,0x6d, 0xf,0x6b,0x4d, 0x5,0x79,0x2b,
+  0x7,0x64,0x47, 0xf,0x24,0x4d, 0x6,0x2b,0x7e, 0xf,0x27,0x3f,
+  0xf,0x27,0x40, 0x6,0x2c,0x21, 0x5,0x29,0x53, 0x5,0x29,0x52,
+  0x6,0x31,0x70, 0xf,0x2b,0x37, 0xf,0x2b,0x39, 0x6,0x31,0x6f,
+  0x6,0x38,0x42, 0xf,0x2f,0x6f, 0xf,0x2f,0x70, 0xf,0x2f,0x71,
+  0xf,0x2f,0x72, 0xf,0x2f,0x73, 0xf,0x35,0x49, 0xf,0x35,0x4a,
+  0xf,0x3b,0x5f, 0x6,0x49,0x7a, 0x6,0x49,0x79, 0x5,0x3f,0x65,
+  0x4,0x43,0x70, 0x6,0x53,0x46, 0x5,0x4d,0x57, 0x5,0x4d,0x56,
+  0x7,0x23,0x63, 0xf,0x54,0x6b, 0x5,0x5b,0x63, 0x7,0x3f,0x7a,
+  0x5,0x61,0x74, 0x7,0x3f,0x79, 0x7,0x3f,0x77, 0x4,0x5f,0x6d,
+  0x7,0x4d,0x7a, 0x7,0x4d,0x7b, 0x5,0x7b,0x3f, 0x7,0x66,0x3e,
+  0x6,0x23,0x2d, 0x6,0x24,0x7d, 0x5,0x24,0x44, 0x6,0x28,0x29,
+  0x6,0x28,0x27, 0x6,0x28,0x28, 0x6,0x28,0x26, 0x6,0x2c,0x22,
+  0x5,0x29,0x54, 0x4,0x29,0x69, 0x4,0x29,0x6a, 0xf,0x2b,0x3a,
+  0x6,0x31,0x71, 0x6,0x38,0x43, 0xf,0x35,0x4b, 0x5,0x32,0x76,
+  0x6,0x40,0x59, 0x6,0x40,0x5b, 0x6,0x49,0x7d, 0x6,0x49,0x7c,
+  0x6,0x40,0x5a, 0x5,0x39,0x2d, 0xf,0x39,0x46, 0xf,0x3b,0x61,
+  0xf,0x3b,0x62, 0x6,0x53,0x47, 0x5,0x3f,0x67, 0xf,0x3b,0x60,
+  0xf,0x41,0x7e, 0xf,0x42,0x21, 0x6,0x53,0x48, 0x6,0x5d,0x5d,
+  0x6,0x5d,0x5e, 0x7,0x23,0x64, 0x4,0x4a,0x34, 0x5,0x4d,0x59,
+  0x4,0x4a,0x33, 0xf,0x4f,0x3b, 0xf,0x4f,0x3c, 0x5,0x54,0x6e,
+  0x5,0x54,0x6c, 0x5,0x5b,0x64, 0x5,0x54,0x6d, 0xf,0x54,0x6d,
+  0xf,0x54,0x6e, 0x7,0x38,0x4b, 0x7,0x38,0x4a, 0xf,0x5a,0x3e,
+  0x5,0x61,0x75, 0xf,0x5e,0x7c, 0x7,0x3f,0x7b, 0x5,0x6c,0x38,
+  0x5,0x75,0x6f, 0x5,0x77,0x5f, 0x5,0x21,0x48, 0x4,0x21,0x4e,
+  0x4,0x21,0x7d, 0xf,0x21,0x65, 0x5,0x22,0x75, 0x6,0x25,0x22,
+  0x5,0x22,0x74, 0x6,0x24,0x7e, 0x6,0x25,0x21, 0xf,0x22,0x56,
+  0x4,0x22,0x7b, 0x4,0x22,0x7a, 0x6,0x28,0x2c, 0x4,0x24,0x49,
+  0x6,0x28,0x2a, 0x6,0x28,0x2b, 0xf,0x24,0x4e, 0xf,0x24,0x4f,
+  0xf,0x24,0x54, 0xf,0x24,0x50, 0xf,0x24,0x52, 0x5,0x24,0x46,
+  0x6,0x28,0x2d, 0x5,0x24,0x45, 0x4,0x24,0x45, 0x4,0x26,0x6b,
+  0x5,0x26,0x4c, 0x4,0x26,0x66, 0x5,0x26,0x4b, 0x6,0x2c,0x2b,
+  0x5,0x26,0x50, 0x5,0x26,0x52, 0x6,0x2c,0x28, 0x6,0x2c,0x27,
+  0x6,0x2c,0x26, 0x5,0x26,0x4d, 0x5,0x26,0x53, 0x5,0x26,0x4f,
+  0x5,0x26,0x4e, 0xf,0x27,0x43, 0xf,0x27,0x45, 0xf,0x27,0x46,
+  0xf,0x27,0x47, 0xf,0x27,0x49, 0xf,0x27,0x4a, 0xf,0x27,0x4b,
+  0xf,0x27,0x4d, 0xf,0x27,0x4f, 0xf,0x27,0x51, 0xf,0x27,0x54,
+  0xf,0x27,0x55, 0x6,0x2c,0x24, 0x6,0x2c,0x29, 0x5,0x26,0x54,
+  0x6,0x2c,0x2c, 0xf,0x27,0x44, 0x6,0x2c,0x2d, 0x6,0x2c,0x2a,
+  0xf,0x27,0x48, 0xf,0x27,0x42, 0x6,0x2c,0x25, 0x5,0x26,0x55,
+  0x6,0x2d,0x5c, 0x6,0x31,0x74, 0x6,0x31,0x73, 0x4,0x29,0x6b,
+  0x5,0x29,0x56, 0x6,0x31,0x75, 0x6,0x31,0x76, 0x5,0x29,0x55,
+  0x5,0x29,0x59, 0x6,0x31,0x77, 0x5,0x2e,0x26, 0x5,0x29,0x5a,
+  0x5,0x29,0x58, 0xf,0x27,0x53, 0xf,0x2b,0x3b, 0xf,0x2b,0x3c,
+  0xf,0x2b,0x3d, 0xf,0x2b,0x3f, 0xf,0x2b,0x40, 0xf,0x2b,0x41,
+  0xf,0x2b,0x42, 0xf,0x2b,0x43, 0xf,0x2b,0x44, 0xf,0x2b,0x45,
+  0xf,0x2b,0x46, 0xf,0x2b,0x47, 0xf,0x2b,0x49, 0xf,0x2b,0x4a,
+  0xf,0x2b,0x4b, 0xf,0x2b,0x4c, 0xf,0x2b,0x4d, 0xf,0x2b,0x4e,
+  0xf,0x2b,0x4f, 0x5,0x29,0x5b, 0x6,0x40,0x5c, 0x6,0x38,0x4f,
+  0x6,0x38,0x53, 0x6,0x38,0x4b, 0x6,0x38,0x4d, 0x6,0x38,0x46,
+  0x5,0x2e,0x27, 0x6,0x38,0x48, 0x6,0x38,0x45, 0x6,0x38,0x51,
+  0x4,0x2d,0x50, 0x6,0x40,0x5d, 0x5,0x29,0x57, 0x5,0x2e,0x29,
+  0x5,0x2e,0x2a, 0x6,0x38,0x44, 0xf,0x2f,0x74, 0xf,0x2f,0x75,
+  0xf,0x2f,0x76, 0xf,0x2f,0x78, 0xf,0x2f,0x79, 0xf,0x2f,0x7a,
+  0xf,0x2f,0x7b, 0xf,0x2f,0x7c, 0xf,0x2f,0x7d, 0xf,0x2f,0x7e,
+  0xf,0x30,0x21, 0xf,0x30,0x22, 0xf,0x30,0x23, 0xf,0x30,0x25,
+  0xf,0x30,0x26, 0xf,0x30,0x27, 0xf,0x30,0x29, 0xf,0x30,0x2a,
+  0xf,0x30,0x2b, 0xf,0x30,0x2c, 0xf,0x30,0x2e, 0x6,0x38,0x4c,
+  0x6,0x38,0x47, 0x6,0x38,0x49, 0x4,0x2d,0x53, 0x6,0x38,0x4e,
+  0xf,0x30,0x30, 0xf,0x30,0x28, 0x4,0x2d,0x5a, 0xf,0x30,0x2d,
+  0x5,0x2e,0x2c, 0x5,0x2e,0x28, 0xf,0x2f,0x77, 0x6,0x38,0x52,
+  0x6,0x40,0x68, 0x6,0x40,0x69, 0x6,0x40,0x5f, 0x5,0x32,0x77,
+  0x5,0x33,0x21, 0x5,0x39,0x36, 0x4,0x32,0x45, 0x4,0x32,0x40,
+  0x5,0x32,0x7d, 0x6,0x40,0x67, 0x6,0x4a,0x2e, 0x6,0x40,0x63,
+  0xf,0x35,0x4c, 0xf,0x35,0x4d, 0xf,0x35,0x4f, 0xf,0x35,0x50,
+  0xf,0x35,0x51, 0xf,0x35,0x52, 0xf,0x35,0x53, 0xf,0x35,0x54,
+  0xf,0x35,0x55, 0xf,0x35,0x56, 0xf,0x35,0x58, 0xf,0x35,0x59,
+  0xf,0x35,0x5a, 0xf,0x35,0x5b, 0xf,0x35,0x5c, 0xf,0x35,0x5d,
+  0xf,0x35,0x5e, 0xf,0x35,0x5f, 0xf,0x35,0x60, 0xf,0x35,0x61,
+  0xf,0x35,0x62, 0xf,0x35,0x63, 0xf,0x35,0x65, 0xf,0x35,0x66,
+  0x6,0x40,0x64, 0x6,0x40,0x66, 0x6,0x40,0x65, 0x4,0x32,0x47,
+  0x6,0x40,0x62, 0x6,0x40,0x60, 0x6,0x40,0x61, 0x4,0x32,0x44,
+  0x5,0x33,0x22, 0x5,0x32,0x78, 0x5,0x32,0x7b, 0x5,0x32,0x7a,
+  0x5,0x32,0x7c, 0x6,0x40,0x6a, 0xf,0x35,0x4e, 0x6,0x40,0x5e,
+  0x4,0x38,0x36, 0x6,0x4a,0x34, 0x5,0x39,0x35, 0x6,0x53,0x49,
+  0x4,0x38,0x2e, 0x5,0x39,0x38, 0x6,0x4a,0x22, 0x5,0x39,0x32,
+  0x4,0x38,0x2b, 0x5,0x39,0x30, 0x5,0x39,0x34, 0x4,0x38,0x31,
+  0x6,0x4a,0x2d, 0x6,0x4a,0x2f, 0x5,0x39,0x3a, 0x6,0x4a,0x24,
+  0x6,0x4a,0x21, 0x5,0x39,0x37, 0x6,0x4a,0x33, 0x5,0x39,0x3c,
+  0x5,0x39,0x3b, 0x6,0x4a,0x26, 0x4,0x38,0x30, 0x6,0x4a,0x27,
+  0x6,0x4a,0x2a, 0x6,0x4a,0x31, 0x5,0x39,0x40, 0x6,0x53,0x4a,
+  0x5,0x39,0x3d, 0x6,0x4a,0x38, 0x6,0x4a,0x23, 0x6,0x4a,0x25,
+  0x6,0x4a,0x35, 0x4,0x38,0x33, 0x4,0x38,0x38, 0x6,0x4a,0x36,
+  0x6,0x4a,0x37, 0xf,0x3b,0x64, 0xf,0x3b,0x65, 0xf,0x3b,0x67,
+  0xf,0x3b,0x68, 0xf,0x3b,0x69, 0xf,0x3b,0x6b, 0xf,0x3b,0x6c,
+  0xf,0x3b,0x6d, 0xf,0x3b,0x6f, 0xf,0x3b,0x71, 0xf,0x3b,0x72,
+  0xf,0x3b,0x74, 0xf,0x3b,0x75, 0xf,0x3b,0x76, 0xf,0x3b,0x77,
+  0xf,0x3b,0x78, 0xf,0x3b,0x79, 0xf,0x3b,0x7a, 0xf,0x3b,0x7b,
+  0xf,0x3b,0x7c, 0xf,0x3b,0x7d, 0xf,0x3b,0x7e, 0xf,0x3c,0x22,
+  0xf,0x3c,0x23, 0xf,0x3c,0x24, 0xf,0x3c,0x25, 0xf,0x3c,0x26,
+  0xf,0x3c,0x27, 0xf,0x3c,0x28, 0xf,0x3c,0x2a, 0xf,0x3c,0x2b,
+  0xf,0x3c,0x2c, 0xf,0x3c,0x2d, 0xf,0x3c,0x2e, 0xf,0x3c,0x2f,
+  0x6,0x4a,0x29, 0x6,0x4a,0x2b, 0x6,0x4a,0x2c, 0x6,0x4a,0x32,
+  0x5,0x39,0x42, 0x6,0x4a,0x30, 0x6,0x4a,0x39, 0x6,0x4a,0x28,
+  0x5,0x39,0x3e, 0x5,0x39,0x41, 0x5,0x39,0x2e, 0x5,0x39,0x2f,
+  0x5,0x39,0x31, 0x6,0x53,0x4e, 0x6,0x53,0x58, 0x4,0x3d,0x77,
+  0x6,0x53,0x56, 0x4,0x3d,0x74, 0x6,0x53,0x57, 0x5,0x3f,0x6f,
+  0x5,0x3f,0x6a, 0x5,0x3f,0x6e, 0x5,0x3f,0x6b, 0x4,0x3d,0x6a,
+  0x6,0x53,0x5b, 0x5,0x3f,0x73, 0x6,0x53,0x61, 0x5,0x3f,0x68,
+  0x4,0x3d,0x7a, 0x5,0x3f,0x74, 0x5,0x3f,0x69, 0x6,0x53,0x55,
+  0x5,0x3f,0x70, 0x5,0x3f,0x6d, 0x6,0x53,0x60, 0x4,0x3d,0x73,
+  0x6,0x53,0x59, 0x6,0x53,0x5a, 0x6,0x53,0x5d, 0x6,0x53,0x50,
+  0x4,0x3d,0x70, 0x6,0x53,0x5c, 0x5,0x3f,0x6c, 0x6,0x53,0x63,
+  0x6,0x53,0x4f, 0x6,0x53,0x51, 0x6,0x53,0x4c, 0xf,0x42,0x23,
+  0xf,0x42,0x24, 0xf,0x42,0x25, 0xf,0x42,0x26, 0xf,0x42,0x27,
+  0xf,0x42,0x29, 0xf,0x42,0x2a, 0xf,0x42,0x2b, 0xf,0x42,0x2c,
+  0xf,0x42,0x2d, 0xf,0x42,0x2e, 0xf,0x42,0x30, 0xf,0x42,0x31,
+  0xf,0x42,0x32, 0xf,0x42,0x33, 0xf,0x42,0x34, 0xf,0x42,0x35,
+  0xf,0x42,0x36, 0xf,0x42,0x38, 0xf,0x42,0x39, 0xf,0x42,0x3a,
+  0xf,0x42,0x3b, 0xf,0x42,0x3d, 0xf,0x42,0x3e, 0xf,0x42,0x3f,
+  0xf,0x42,0x40, 0xf,0x42,0x41, 0xf,0x42,0x42, 0xf,0x42,0x43,
+  0xf,0x42,0x44, 0xf,0x42,0x45, 0xf,0x42,0x46, 0xf,0x42,0x48,
+  0xf,0x42,0x4a, 0xf,0x42,0x4c, 0x6,0x53,0x4d, 0x6,0x53,0x52,
+  0x6,0x53,0x54, 0x4,0x3d,0x79, 0x6,0x53,0x62, 0x6,0x53,0x4b,
+  0x6,0x53,0x5f, 0xf,0x42,0x22, 0xf,0x42,0x2f, 0xf,0x42,0x37,
+  0x5,0x39,0x3f, 0x5,0x3f,0x72, 0x6,0x53,0x53, 0xf,0x43,0x74,
+  0x5,0x46,0x4e, 0xf,0x42,0x4b, 0x5,0x46,0x50, 0x4,0x43,0x7b,
+  0x4,0x43,0x72, 0x5,0x46,0x4d, 0x5,0x46,0x4f, 0x6,0x5d,0x69,
+  0x5,0x46,0x55, 0x5,0x46,0x52, 0x7,0x23,0x65, 0x6,0x53,0x64,
+  0x5,0x46,0x47, 0x6,0x5d,0x5f, 0x5,0x46,0x54, 0x5,0x46,0x46,
+  0x5,0x46,0x58, 0x6,0x5d,0x62, 0x5,0x46,0x4a, 0x5,0x46,0x53,
+  0x6,0x5d,0x63, 0x4,0x43,0x76, 0x5,0x46,0x48, 0x5,0x46,0x49,
+  0x6,0x5d,0x65, 0x5,0x46,0x4c, 0x5,0x46,0x51, 0xf,0x48,0x57,
+  0xf,0x48,0x58, 0xf,0x48,0x59, 0xf,0x48,0x5a, 0xf,0x48,0x5b,
+  0xf,0x48,0x5c, 0xf,0x48,0x5d, 0xf,0x48,0x5e, 0xf,0x48,0x5f,
+  0xf,0x48,0x60, 0xf,0x48,0x61, 0xf,0x48,0x62, 0xf,0x48,0x63,
+  0xf,0x48,0x64, 0xf,0x48,0x65, 0xf,0x48,0x66, 0xf,0x48,0x67,
+  0xf,0x48,0x68, 0xf,0x48,0x69, 0xf,0x48,0x6a, 0xf,0x48,0x6b,
+  0xf,0x48,0x6c, 0xf,0x48,0x6d, 0xf,0x48,0x6e, 0xf,0x48,0x6f,
+  0xf,0x48,0x71, 0xf,0x48,0x72, 0xf,0x48,0x73, 0xf,0x48,0x75,
+  0x3,0x47,0x4b, 0x6,0x5d,0x6a, 0x6,0x5d,0x67, 0x6,0x5d,0x6b,
+  0x6,0x5d,0x6c, 0x5,0x46,0x56, 0x5,0x46,0x57, 0xf,0x48,0x74,
+  0x6,0x5d,0x64, 0x6,0x5d,0x66, 0xf,0x48,0x50, 0xf,0x48,0x51,
+  0xf,0x48,0x53, 0xf,0x48,0x54, 0x6,0x5d,0x60, 0x6,0x5d,0x6d,
+  0x6,0x5d,0x61, 0xf,0x48,0x56, 0x7,0x23,0x68, 0x5,0x4d,0x67,
+  0x5,0x4d,0x5e, 0x4,0x4a,0x3b, 0x4,0x4a,0x47, 0x5,0x4d,0x5b,
+  0x4,0x4a,0x40, 0x7,0x23,0x71, 0x7,0x23,0x6c, 0x7,0x23,0x74,
+  0x5,0x4d,0x6b, 0x5,0x4d,0x65, 0x7,0x23,0x70, 0x4,0x4a,0x46,
+  0x5,0x4d,0x5f, 0x4,0x4a,0x3f, 0x5,0x4d,0x64, 0x4,0x4a,0x43,
+  0x4,0x4a,0x3e, 0x4,0x4a,0x35, 0x7,0x23,0x73, 0x5,0x4d,0x5c,
+  0x4,0x4a,0x4a, 0x5,0x4d,0x69, 0x7,0x23,0x6e, 0x5,0x4d,0x63,
+  0x5,0x4d,0x6a, 0x7,0x23,0x69, 0x4,0x4a,0x41, 0x5,0x4d,0x5d,
+  0x7,0x23,0x75, 0x4,0x4a,0x3c, 0x4,0x4a,0x45, 0x4,0x4a,0x49,
+  0x7,0x23,0x66, 0x7,0x23,0x6a, 0xf,0x4f,0x3d, 0xf,0x4f,0x3e,
+  0xf,0x4f,0x3f, 0xf,0x4f,0x43, 0xf,0x4f,0x44, 0xf,0x4f,0x46,
+  0xf,0x4f,0x47, 0xf,0x4f,0x48, 0xf,0x4f,0x49, 0xf,0x4f,0x4a,
+  0xf,0x4f,0x4b, 0xf,0x4f,0x4c, 0xf,0x4f,0x4d, 0xf,0x4f,0x4e,
+  0xf,0x4f,0x4f, 0xf,0x4f,0x50, 0xf,0x4f,0x51, 0xf,0x4f,0x52,
+  0xf,0x4f,0x53, 0xf,0x4f,0x40, 0x7,0x23,0x6b, 0x5,0x4d,0x6c,
+  0x5,0x4d,0x68, 0x5,0x4d,0x66, 0x7,0x23,0x67, 0x7,0x23,0x6d,
+  0x5,0x4d,0x60, 0x5,0x4d,0x5a, 0x5,0x4d,0x62, 0x4,0x50,0x5b,
+  0x5,0x54,0x7d, 0x7,0x2e,0x69, 0x4,0x50,0x65, 0x4,0x50,0x58,
+  0x5,0x5b,0x65, 0x7,0x38,0x4c, 0x7,0x2e,0x60, 0x7,0x2e,0x63,
+  0x5,0x54,0x7b, 0x7,0x2e,0x68, 0x7,0x2e,0x72, 0x5,0x54,0x7a,
+  0x7,0x2e,0x6f, 0x7,0x2e,0x62, 0x4,0x50,0x62, 0x4,0x56,0x4c,
+  0x4,0x50,0x57, 0x7,0x2e,0x5f, 0x4,0x50,0x5f, 0x5,0x54,0x79,
+  0x7,0x2e,0x67, 0x7,0x2e,0x64, 0x5,0x54,0x71, 0x5,0x54,0x77,
+  0x4,0x50,0x5c, 0x7,0x2e,0x6e, 0x7,0x2e,0x74, 0x5,0x54,0x78,
+  0x4,0x50,0x5d, 0x7,0x2e,0x66, 0x7,0x2e,0x6b, 0x4,0x50,0x63,
+  0x5,0x54,0x70, 0x7,0x2e,0x61, 0x5,0x61,0x7b, 0x5,0x54,0x75,
+  0x5,0x54,0x76, 0x5,0x54,0x72, 0x4,0x4a,0x44, 0x7,0x2e,0x73,
+  0x7,0x2e,0x6c, 0x7,0x2e,0x65, 0x7,0x2e,0x5e, 0x5,0x54,0x7c,
+  0x5,0x54,0x6f, 0x5,0x54,0x73, 0xf,0x54,0x6f, 0xf,0x54,0x70,
+  0xf,0x54,0x71, 0xf,0x54,0x72, 0xf,0x54,0x73, 0xf,0x54,0x75,
+  0xf,0x54,0x76, 0xf,0x54,0x77, 0xf,0x54,0x78, 0xf,0x54,0x79,
+  0xf,0x54,0x7a, 0xf,0x54,0x7c, 0xf,0x54,0x7d, 0xf,0x54,0x7e,
+  0xf,0x55,0x21, 0xf,0x55,0x22, 0xf,0x55,0x24, 0xf,0x55,0x25,
+  0xf,0x55,0x26, 0xf,0x55,0x27, 0xf,0x55,0x28, 0xf,0x55,0x2b,
+  0xf,0x55,0x2c, 0xf,0x55,0x2d, 0xf,0x55,0x2e, 0xf,0x55,0x2f,
+  0xf,0x55,0x30, 0xf,0x55,0x32, 0xf,0x55,0x33, 0xf,0x55,0x34,
+  0xf,0x55,0x35, 0xf,0x55,0x36, 0xf,0x55,0x37, 0xf,0x55,0x38,
+  0x7,0x2e,0x70, 0x7,0x2e,0x71, 0x4,0x50,0x61, 0xf,0x55,0x23,
+  0x5,0x54,0x74, 0xf,0x48,0x70, 0xf,0x4f,0x41, 0x7,0x2e,0x6d,
+  0x4,0x56,0x43, 0x7,0x38,0x50, 0x7,0x38,0x4e, 0x4,0x56,0x47,
+  0x7,0x38,0x52, 0x7,0x38,0x56, 0x5,0x5b,0x6a, 0x5,0x5b,0x6b,
+  0x4,0x56,0x4a, 0x4,0x56,0x46, 0x5,0x5b,0x6e, 0x7,0x38,0x53,
+  0x5,0x5b,0x6c, 0x7,0x38,0x51, 0x7,0x38,0x57, 0x5,0x61,0x7c,
+  0x5,0x5b,0x67, 0x4,0x56,0x4d, 0x4,0x56,0x44, 0x7,0x38,0x59,
+  0x4,0x56,0x42, 0x5,0x5b,0x69, 0x7,0x38,0x5b, 0x5,0x5b,0x66,
+  0x7,0x38,0x54, 0xf,0x5a,0x40, 0xf,0x5a,0x41, 0xf,0x5a,0x43,
+  0xf,0x5a,0x44, 0xf,0x5a,0x45, 0xf,0x5a,0x46, 0xf,0x5a,0x47,
+  0xf,0x5a,0x48, 0xf,0x5a,0x49, 0xf,0x5a,0x4a, 0xf,0x5a,0x4b,
+  0xf,0x5a,0x4c, 0xf,0x5a,0x4e, 0xf,0x5a,0x4f, 0xf,0x5a,0x51,
+  0xf,0x5a,0x52, 0xf,0x5a,0x54, 0x7,0x38,0x58, 0x5,0x5b,0x6d,
+  0x7,0x38,0x5a, 0x7,0x38,0x4d, 0x7,0x38,0x4f, 0x7,0x37,0x27,
+  0xf,0x5a,0x53, 0xf,0x5a,0x4d, 0x5,0x5b,0x6f, 0x5,0x5b,0x70,
+  0xf,0x55,0x31, 0xf,0x5a,0x50, 0x4,0x5b,0x47, 0x5,0x61,0x78,
+  0x7,0x40,0x27, 0x7,0x40,0x23, 0x4,0x5b,0x42, 0x7,0x40,0x2b,
+  0x5,0x62,0x24, 0x5,0x61,0x7d, 0x5,0x62,0x26, 0x7,0x40,0x29,
+  0x4,0x5b,0x45, 0x5,0x61,0x7a, 0x5,0x62,0x22, 0x5,0x62,0x27,
+  0x5,0x61,0x7e, 0x7,0x38,0x5c, 0x5,0x62,0x2b, 0x5,0x61,0x79,
+  0x4,0x5b,0x43, 0x4,0x5b,0x4c, 0x4,0x5b,0x46, 0x7,0x40,0x2d,
+  0x7,0x40,0x28, 0x5,0x62,0x23, 0x7,0x47,0x46, 0x5,0x62,0x29,
+  0x7,0x40,0x26, 0x4,0x5b,0x4b, 0x5,0x62,0x28, 0x5,0x62,0x25,
+  0x5,0x61,0x76, 0x7,0x3f,0x7c, 0x7,0x3f,0x7d, 0xf,0x5e,0x7e,
+  0xf,0x5f,0x22, 0xf,0x5f,0x23, 0xf,0x5f,0x24, 0xf,0x5f,0x25,
+  0xf,0x5f,0x26, 0xf,0x5f,0x27, 0xf,0x5f,0x28, 0xf,0x5f,0x2a,
+  0xf,0x5f,0x2b, 0xf,0x5f,0x2c, 0xf,0x5f,0x2e, 0xf,0x5f,0x2f,
+  0xf,0x5f,0x30, 0x7,0x40,0x21, 0x7,0x40,0x25, 0x7,0x40,0x2c,
+  0x7,0x40,0x2a, 0x5,0x62,0x21, 0xf,0x5f,0x21, 0x5,0x62,0x2a,
+  0x5,0x61,0x77, 0x7,0x40,0x22, 0x7,0x40,0x24, 0xf,0x5f,0x2d,
+  0x5,0x68,0x25, 0x7,0x47,0x43, 0x5,0x68,0x28, 0x5,0x68,0x2b,
+  0x5,0x68,0x29, 0x7,0x47,0x42, 0x7,0x47,0x40, 0x5,0x68,0x2d,
+  0x7,0x47,0x41, 0x4,0x5f,0x74, 0x7,0x47,0x48, 0x7,0x47,0x49,
+  0x5,0x68,0x27, 0x5,0x68,0x26, 0x7,0x47,0x45, 0x5,0x68,0x2f,
+  0x7,0x47,0x47, 0x7,0x3f,0x7e, 0xf,0x62,0x52, 0xf,0x62,0x56,
+  0xf,0x62,0x58, 0xf,0x62,0x59, 0xf,0x62,0x5a, 0xf,0x62,0x5b,
+  0xf,0x62,0x5c, 0xf,0x62,0x5d, 0xf,0x62,0x5f, 0xf,0x62,0x60,
+  0xf,0x62,0x61, 0x5,0x68,0x2e, 0x7,0x47,0x44, 0x7,0x47,0x3f,
+  0xf,0x62,0x54, 0x5,0x68,0x2c, 0xf,0x62,0x57, 0xf,0x62,0x4f,
+  0xf,0x62,0x5e, 0xf,0x5e,0x7d, 0x4,0x63,0x53, 0x7,0x4d,0x7c,
+  0x5,0x6c,0x3f, 0x7,0x4d,0x7e, 0x5,0x6c,0x42, 0x5,0x68,0x30,
+  0x5,0x6c,0x3a, 0x5,0x6c,0x39, 0x5,0x6c,0x3d, 0x7,0x4d,0x7d,
+  0x5,0x6c,0x3c, 0x5,0x6c,0x41, 0x5,0x6c,0x3b, 0x5,0x68,0x2a,
+  0x5,0x6c,0x40, 0x5,0x6c,0x3e, 0xf,0x65,0x33, 0xf,0x65,0x34,
+  0xf,0x65,0x35, 0xf,0x65,0x36, 0xf,0x65,0x37, 0xf,0x65,0x39,
+  0xf,0x65,0x3a, 0xf,0x65,0x3b, 0xf,0x65,0x3c, 0xf,0x65,0x3d,
+  0xf,0x65,0x3f, 0x7,0x4e,0x21, 0x4,0x63,0x52, 0x7,0x53,0x49,
+  0x7,0x53,0x48, 0x5,0x70,0x2b, 0x5,0x70,0x2d, 0x4,0x66,0x46,
+  0x5,0x70,0x29, 0x7,0x53,0x4d, 0x5,0x70,0x28, 0x5,0x70,0x2a,
+  0x5,0x70,0x2c, 0x7,0x53,0x4a, 0x4,0x66,0x45, 0x5,0x70,0x2f,
+  0x7,0x53,0x4e, 0x5,0x70,0x32, 0xf,0x67,0x5b, 0xf,0x67,0x5c,
+  0xf,0x67,0x5d, 0xf,0x67,0x5e, 0xf,0x67,0x5f, 0xf,0x67,0x60,
+  0xf,0x67,0x61, 0xf,0x67,0x62, 0xf,0x67,0x63, 0xf,0x67,0x64,
+  0x7,0x53,0x4c, 0x5,0x70,0x31, 0x5,0x70,0x30, 0x7,0x53,0x4b,
+  0x5,0x70,0x2e, 0x7,0x58,0x26, 0x5,0x73,0x4e, 0x5,0x73,0x4f,
+  0x5,0x73,0x4c, 0x5,0x73,0x4a, 0x4,0x68,0x6f, 0x5,0x73,0x4b,
+  0x5,0x73,0x4d, 0x7,0x58,0x25, 0xf,0x69,0x47, 0xf,0x69,0x48,
+  0xf,0x69,0x49, 0xf,0x69,0x4b, 0xf,0x69,0x4e, 0xf,0x69,0x4f,
+  0xf,0x69,0x50, 0xf,0x69,0x51, 0x7,0x58,0x24, 0x7,0x58,0x22,
+  0xf,0x67,0x65, 0x5,0x75,0x71, 0x5,0x75,0x73, 0x5,0x77,0x60,
+  0x5,0x75,0x74, 0x7,0x5b,0x60, 0x5,0x75,0x72, 0x7,0x5b,0x61,
+  0x5,0x75,0x75, 0x7,0x5b,0x5f, 0x5,0x77,0x61, 0x7,0x5b,0x5d,
+  0xf,0x6a,0x57, 0xf,0x6a,0x59, 0x7,0x5b,0x5e, 0x5,0x75,0x76,
+  0x5,0x75,0x70, 0x4,0x6b,0x6c, 0x7,0x5e,0x6e, 0x5,0x77,0x62,
+  0x7,0x60,0x71, 0xf,0x6b,0x4e, 0xf,0x6b,0x4f, 0xf,0x6b,0x50,
+  0xf,0x6b,0x53, 0xf,0x6b,0x54, 0x7,0x5e,0x6f, 0x7,0x5e,0x70,
+  0xf,0x6a,0x58, 0x7,0x60,0x72, 0x5,0x79,0x2d, 0xf,0x6c,0x2c,
+  0x7,0x60,0x73, 0x5,0x79,0x2c, 0x5,0x79,0x2e, 0xf,0x6b,0x52,
+  0x5,0x7a,0x29, 0x7,0x63,0x54, 0x7,0x60,0x74, 0x4,0x6d,0x55,
+  0xf,0x6c,0x2d, 0xf,0x6c,0x4c, 0xf,0x6c,0x63, 0x7,0x63,0x4c,
+  0x7,0x63,0x55, 0x5,0x7b,0x40, 0x7,0x64,0x48, 0x7,0x64,0x49,
+  0x7,0x65,0x5b, 0xf,0x6d,0x2f, 0x7,0x65,0x74, 0x6,0x25,0x24,
+  0x4,0x24,0x4b, 0x6,0x28,0x2f, 0x6,0x2c,0x2e, 0x6,0x28,0x32,
+  0x5,0x24,0x47, 0x6,0x28,0x31, 0x4,0x24,0x4a, 0x5,0x26,0x5c,
+  0x5,0x26,0x5b, 0x5,0x26,0x58, 0x6,0x2c,0x2f, 0x4,0x26,0x6f,
+  0x6,0x2c,0x30, 0x5,0x26,0x5d, 0x4,0x26,0x6e, 0x5,0x26,0x59,
+  0x5,0x26,0x5a, 0x5,0x26,0x57, 0xf,0x27,0x56, 0x5,0x29,0x5f,
+  0x6,0x31,0x7a, 0x6,0x38,0x54, 0x6,0x31,0x7c, 0x5,0x29,0x62,
+  0x4,0x29,0x75, 0x5,0x29,0x61, 0x5,0x29,0x5e, 0x6,0x31,0x79,
+  0x5,0x29,0x5c, 0x5,0x29,0x60, 0x6,0x31,0x7b, 0x5,0x29,0x5d,
+  0xf,0x2c,0x77, 0x6,0x38,0x57, 0x6,0x38,0x58, 0x6,0x38,0x55,
+  0x5,0x2e,0x33, 0x5,0x2e,0x2d, 0x6,0x38,0x56, 0x6,0x40,0x6b,
+  0x5,0x2e,0x32, 0x4,0x2d,0x5f, 0x5,0x2e,0x2f, 0x5,0x2e,0x34,
+  0x5,0x2e,0x31, 0x5,0x2e,0x30, 0xf,0x30,0x31, 0x5,0x33,0x25,
+  0x6,0x40,0x6c, 0x6,0x40,0x6d, 0xf,0x35,0x67, 0xf,0x35,0x68,
+  0xf,0x35,0x69, 0xf,0x35,0x6a, 0xf,0x35,0x6b, 0xf,0x35,0x6c,
+  0xf,0x35,0x6d, 0xf,0x35,0x6e, 0x4,0x38,0x3d, 0x5,0x39,0x47,
+  0x5,0x3f,0x77, 0x4,0x38,0x3a, 0x5,0x39,0x45, 0x6,0x4a,0x3c,
+  0x5,0x33,0x24, 0x5,0x39,0x48, 0x6,0x4a,0x3d, 0x5,0x39,0x44,
+  0x5,0x39,0x49, 0x6,0x4a,0x3e, 0x5,0x39,0x46, 0x6,0x4a,0x3b,
+  0xf,0x3c,0x30, 0xf,0x3c,0x31, 0x6,0x4a,0x3a, 0x6,0x53,0x6e,
+  0x5,0x3f,0x76, 0x5,0x3f,0x75, 0x5,0x3f,0x7a, 0x6,0x53,0x6b,
+  0x5,0x3f,0x79, 0x6,0x53,0x67, 0x6,0x53,0x66, 0x6,0x53,0x68,
+  0x6,0x53,0x69, 0x6,0x53,0x6a, 0x6,0x53,0x6d, 0x5,0x3f,0x78,
+  0xf,0x42,0x4e, 0x6,0x58,0x5a, 0x6,0x53,0x6c, 0x6,0x53,0x65,
+  0xf,0x42,0x4d, 0x5,0x46,0x5c, 0x4,0x44,0x2b, 0x5,0x46,0x5e,
+  0x6,0x5d,0x6f, 0x6,0x5d,0x6e, 0x4,0x44,0x2c, 0x5,0x46,0x5d,
+  0x4,0x44,0x29, 0x6,0x5d,0x75, 0x6,0x5d,0x70, 0x5,0x46,0x5a,
+  0x6,0x5d,0x76, 0x6,0x5d,0x74, 0x5,0x46,0x5b, 0x6,0x5d,0x72,
+  0x6,0x5d,0x71, 0x6,0x5d,0x73, 0x6,0x53,0x6f, 0xf,0x48,0x76,
+  0xf,0x48,0x78, 0x5,0x46,0x59, 0x5,0x4d,0x6e, 0x7,0x23,0x7d,
+  0x5,0x4d,0x70, 0x5,0x4d,0x71, 0x4,0x4a,0x4d, 0x7,0x23,0x79,
+  0x7,0x23,0x77, 0x7,0x23,0x7e, 0x7,0x23,0x76, 0x7,0x23,0x7a,
+  0x7,0x23,0x7b, 0x5,0x4d,0x6f, 0xf,0x4f,0x54, 0x7,0x23,0x7c,
+  0x5,0x54,0x7e, 0x7,0x2e,0x76, 0x4,0x50,0x68, 0x7,0x2e,0x75,
+  0xf,0x55,0x3a, 0xf,0x55,0x3b, 0x7,0x38,0x5e, 0x7,0x38,0x60,
+  0x5,0x5b,0x71, 0x7,0x38,0x5f, 0xf,0x5a,0x55, 0x7,0x38,0x5d,
+  0x5,0x62,0x2c, 0x5,0x68,0x32, 0x5,0x68,0x31, 0xf,0x62,0x62,
+  0x5,0x70,0x36, 0x7,0x4e,0x23, 0x5,0x70,0x35, 0x5,0x70,0x34,
+  0x4,0x68,0x70, 0x5,0x70,0x33, 0x5,0x73,0x50, 0x7,0x58,0x29,
+  0x7,0x58,0x27, 0x7,0x58,0x28, 0x5,0x77,0x63, 0x7,0x60,0x75,
+  0x4,0x6c,0x70, 0x4,0x6d,0x56, 0x5,0x21,0x32, 0x5,0x21,0x70,
+  0x6,0x23,0x2e, 0x6,0x25,0x26, 0x5,0x24,0x4a, 0x6,0x28,0x34,
+  0x6,0x2c,0x31, 0x5,0x24,0x49, 0x5,0x24,0x4b, 0x6,0x28,0x33,
+  0x6,0x2c,0x3c, 0x6,0x2c,0x34, 0x6,0x2c,0x3b, 0x6,0x2c,0x3a,
+  0x6,0x2c,0x36, 0x6,0x2c,0x33, 0x6,0x2c,0x38, 0x6,0x2c,0x32,
+  0x6,0x2c,0x37, 0x5,0x26,0x5e, 0x6,0x2c,0x39, 0x6,0x2c,0x35,
+  0x5,0x26,0x5f, 0xf,0x27,0x57, 0xf,0x27,0x58, 0xf,0x27,0x59,
+  0x4,0x26,0x72, 0x4,0x29,0x76, 0x5,0x29,0x63, 0x5,0x28,0x35,
+  0x6,0x38,0x59, 0x6,0x38,0x5c, 0x5,0x2e,0x35, 0x6,0x38,0x5a,
+  0x6,0x38,0x5e, 0x6,0x38,0x5d, 0x6,0x38,0x5b, 0x6,0x37,0x48,
+  0x5,0x33,0x26, 0x6,0x40,0x70, 0xf,0x35,0x6f, 0x6,0x40,0x6f,
+  0x4,0x38,0x40, 0x4,0x38,0x3e, 0x5,0x39,0x4a, 0x5,0x39,0x4b,
+  0x6,0x4a,0x43, 0x4,0x38,0x41, 0x6,0x4a,0x42, 0x6,0x4a,0x44,
+  0x6,0x4a,0x40, 0x6,0x4a,0x45, 0x6,0x4a,0x46, 0x6,0x4a,0x41,
+  0x5,0x3f,0x7c, 0x6,0x53,0x70, 0x5,0x3f,0x7b, 0xf,0x42,0x4f,
+  0x6,0x5a,0x61, 0x7,0x24,0x22, 0x7,0x24,0x25, 0x7,0x24,0x23,
+  0x7,0x24,0x26, 0x7,0x24,0x21, 0x7,0x24,0x24, 0xf,0x4f,0x55,
+  0x7,0x2e,0x7a, 0x7,0x2e,0x79, 0x7,0x2e,0x77, 0x7,0x2e,0x78,
+  0x7,0x38,0x61, 0x4,0x56,0x50, 0xf,0x5a,0x56, 0xf,0x5a,0x57,
+  0x5,0x62,0x2d, 0x5,0x62,0x2e, 0x7,0x40,0x2e, 0x5,0x73,0x51,
+  0x7,0x5b,0x62, 0x7,0x5b,0x63, 0x5,0x21,0x71, 0x5,0x21,0x49,
+  0x5,0x22,0x76, 0x6,0x28,0x35, 0x4,0x22,0x7d, 0x6,0x25,0x27,
+  0x5,0x24,0x4c, 0x4,0x24,0x4d, 0x6,0x25,0x28, 0x6,0x28,0x36,
+  0x6,0x28,0x3b, 0x6,0x28,0x37, 0x4,0x24,0x4c, 0x6,0x28,0x3c,
+  0x5,0x24,0x4d, 0x6,0x28,0x39, 0x6,0x28,0x38, 0x6,0x28,0x3a,
+  0x6,0x2c,0x3f, 0x5,0x26,0x60, 0x5,0x26,0x66, 0x5,0x26,0x61,
+  0x5,0x26,0x64, 0x4,0x26,0x73, 0x4,0x26,0x74, 0x5,0x26,0x63,
+  0x4,0x26,0x77, 0x6,0x2c,0x3d, 0x6,0x2c,0x3e, 0x6,0x2c,0x40,
+  0x6,0x31,0x7d, 0x5,0x26,0x65, 0x5,0x29,0x68, 0x4,0x29,0x78,
+  0x4,0x29,0x79, 0x6,0x32,0x26, 0x4,0x29,0x77, 0x6,0x31,0x7e,
+  0x5,0x29,0x64, 0x5,0x29,0x65, 0x5,0x29,0x6b, 0x5,0x29,0x66,
+  0x5,0x29,0x67, 0x6,0x32,0x25, 0x4,0x29,0x7a, 0x6,0x32,0x22,
+  0x6,0x32,0x23, 0x5,0x29,0x6a, 0x6,0x32,0x24, 0x6,0x38,0x5f,
+  0xf,0x2b,0x50, 0x6,0x32,0x21, 0x5,0x29,0x6c, 0x5,0x2e,0x36,
+  0x4,0x2d,0x63, 0x6,0x38,0x62, 0x5,0x2e,0x3b, 0x6,0x38,0x65,
+  0x5,0x2e,0x3c, 0x5,0x2e,0x38, 0x5,0x2e,0x39, 0x6,0x38,0x63,
+  0x6,0x38,0x66, 0x5,0x2e,0x3d, 0x5,0x2e,0x37, 0x5,0x2e,0x3a,
+  0x5,0x2e,0x3e, 0x6,0x38,0x60, 0x6,0x38,0x61, 0x5,0x33,0x2b,
+  0x6,0x40,0x74, 0x5,0x33,0x2a, 0x6,0x40,0x73, 0x5,0x33,0x27,
+  0x5,0x33,0x28, 0x5,0x33,0x29, 0x6,0x40,0x71, 0x4,0x32,0x4b,
+  0x5,0x33,0x2c, 0x6,0x4a,0x49, 0x6,0x40,0x75, 0x6,0x40,0x72,
+  0xf,0x35,0x71, 0x6,0x53,0x72, 0x6,0x4a,0x4a, 0x5,0x39,0x53,
+  0x4,0x38,0x48, 0x6,0x4a,0x4b, 0x4,0x38,0x43, 0x5,0x39,0x4e,
+  0x5,0x39,0x4d, 0x5,0x39,0x4f, 0x4,0x38,0x47, 0x5,0x39,0x52,
+  0x5,0x39,0x54, 0x5,0x39,0x50, 0x5,0x39,0x4c, 0x5,0x39,0x51,
+  0x6,0x4a,0x4c, 0x6,0x53,0x71, 0x6,0x4a,0x48, 0xf,0x3c,0x32,
+  0x6,0x53,0x74, 0x6,0x53,0x79, 0x5,0x3f,0x7d, 0x5,0x3f,0x7e,
+  0x6,0x53,0x76, 0x6,0x53,0x78, 0x4,0x3e,0x25, 0x6,0x5d,0x78,
+  0x6,0x53,0x7a, 0x6,0x53,0x75, 0x6,0x53,0x73, 0xf,0x42,0x50,
+  0xf,0x35,0x70, 0x4,0x44,0x34, 0x4,0x44,0x2e, 0x6,0x5d,0x7b,
+  0x6,0x5d,0x7c, 0x4,0x44,0x2f, 0x6,0x5d,0x79, 0x6,0x5d,0x7a,
+  0x6,0x5d,0x2d, 0x7,0x24,0x29, 0x4,0x4a,0x51, 0x5,0x4d,0x72,
+  0x7,0x24,0x27, 0x5,0x4d,0x75, 0x7,0x24,0x28, 0x7,0x24,0x2b,
+  0x5,0x4d,0x74, 0x4,0x50,0x69, 0x7,0x24,0x2c, 0x7,0x24,0x2a,
+  0xf,0x4f,0x56, 0x5,0x4d,0x73, 0x7,0x2e,0x7b, 0x7,0x2e,0x7c,
+  0x5,0x55,0x21, 0x4,0x50,0x6c, 0x5,0x55,0x23, 0x5,0x55,0x22,
+  0x7,0x2e,0x7e, 0xf,0x55,0x3c, 0xf,0x55,0x3d, 0x7,0x38,0x64,
+  0x7,0x38,0x62, 0x5,0x5b,0x73, 0x7,0x38,0x65, 0x7,0x38,0x63,
+  0x5,0x5b,0x74, 0x5,0x62,0x30, 0x5,0x62,0x2f, 0x4,0x5b,0x4d,
+  0x7,0x40,0x30, 0x7,0x2e,0x7d, 0x5,0x5b,0x75, 0x7,0x40,0x2f,
+  0x5,0x68,0x33, 0x5,0x70,0x37, 0x5,0x70,0x38, 0x7,0x53,0x4f,
+  0x7,0x58,0x2a, 0x5,0x75,0x7a, 0x5,0x75,0x79, 0x5,0x26,0x68,
+  0x5,0x26,0x67, 0x6,0x32,0x27, 0x6,0x32,0x28, 0x5,0x2e,0x3f,
+  0x4,0x32,0x4c, 0x4,0x32,0x4d, 0x6,0x40,0x78, 0x6,0x40,0x79,
+  0x6,0x40,0x76, 0x6,0x40,0x77, 0xf,0x35,0x73, 0xf,0x35,0x75,
+  0xf,0x35,0x76, 0xf,0x35,0x77, 0x6,0x40,0x7b, 0x6,0x40,0x7a,
+  0x5,0x33,0x2d, 0x6,0x4a,0x4f, 0x6,0x4a,0x4e, 0xf,0x3c,0x33,
+  0xf,0x35,0x72, 0x6,0x54,0x21, 0x6,0x54,0x22, 0x6,0x53,0x7d,
+  0x6,0x53,0x7e, 0x6,0x54,0x24, 0xf,0x42,0x51, 0xf,0x42,0x52,
+  0x6,0x54,0x23, 0x6,0x53,0x7c, 0x5,0x40,0x21, 0x5,0x40,0x7b,
+  0x5,0x46,0x61, 0x4,0x44,0x36, 0x6,0x5e,0x21, 0x4,0x44,0x37,
+  0x6,0x5d,0x7e, 0x6,0x5d,0x7d, 0xf,0x48,0x7a, 0x5,0x4d,0x76,
+  0x6,0x5e,0x22, 0x7,0x24,0x2d, 0x4,0x4a,0x52, 0x7,0x2f,0x25,
+  0x7,0x2f,0x23, 0x7,0x2f,0x26, 0x7,0x2f,0x21, 0x7,0x2f,0x24,
+  0x5,0x55,0x24, 0x7,0x2f,0x22, 0xf,0x55,0x3e, 0xf,0x55,0x3f,
+  0xf,0x55,0x40, 0x7,0x38,0x66, 0x7,0x38,0x67, 0x4,0x5b,0x4e,
+  0x7,0x40,0x33, 0x5,0x62,0x32, 0x5,0x62,0x31, 0x7,0x40,0x31,
+  0x7,0x40,0x32, 0x4,0x5f,0x78, 0x7,0x47,0x4c, 0x7,0x4e,0x25,
+  0x7,0x47,0x4d, 0x7,0x53,0x50, 0x4,0x6a,0x4d, 0x5,0x75,0x7b,
+  0x7,0x5b,0x64, 0x5,0x73,0x52, 0x7,0x5e,0x73, 0x5,0x77,0x65,
+  0x5,0x77,0x64, 0x7,0x60,0x76, 0x7,0x63,0x56, 0x5,0x21,0x72,
+  0x6,0x28,0x3d, 0x6,0x2c,0x41, 0x6,0x32,0x29, 0x6,0x38,0x67,
+  0xf,0x3c,0x34, 0x5,0x40,0x22, 0x4,0x4a,0x53, 0xf,0x4f,0x57,
+  0xf,0x4f,0x58, 0xf,0x5a,0x59, 0xf,0x55,0x41, 0xf,0x62,0x63,
+  0xf,0x6a,0x5a, 0x5,0x24,0x4f, 0x6,0x28,0x3e, 0x6,0x2c,0x45,
+  0x6,0x2c,0x44, 0x5,0x26,0x69, 0x6,0x38,0x68, 0x6,0x38,0x6a,
+  0x6,0x38,0x69, 0x6,0x40,0x7c, 0x6,0x40,0x7d, 0x5,0x40,0x23,
+  0x4,0x3e,0x26, 0x5,0x46,0x62, 0x5,0x46,0x63, 0x6,0x5e,0x23,
+  0x7,0x24,0x2e, 0x7,0x2f,0x27, 0x7,0x2f,0x28, 0x5,0x55,0x25,
+  0x7,0x47,0x4e, 0x5,0x6c,0x43, 0x5,0x79,0x30, 0x5,0x21,0x4a,
+  0x4,0x22,0x7e, 0xf,0x22,0x5a, 0xf,0x22,0x5b, 0x6,0x28,0x40,
+  0x6,0x28,0x3f, 0x4,0x24,0x4e, 0xf,0x24,0x55, 0xf,0x24,0x56,
+  0xf,0x24,0x57, 0xf,0x24,0x59, 0xf,0x24,0x5a, 0x5,0x26,0x6d,
+  0x5,0x26,0x6a, 0x5,0x26,0x6c, 0x5,0x26,0x6b, 0x6,0x2c,0x47,
+  0x6,0x2c,0x46, 0xf,0x27,0x5a, 0xf,0x27,0x5c, 0xf,0x27,0x5d,
+  0xf,0x27,0x5e, 0xf,0x27,0x5f, 0x5,0x26,0x43, 0x6,0x32,0x2c,
+  0x5,0x29,0x6e, 0x5,0x29,0x6f, 0x5,0x29,0x6d, 0x5,0x29,0x70,
+  0x5,0x29,0x71, 0x6,0x32,0x2d, 0x5,0x29,0x73, 0x6,0x32,0x2f,
+  0x6,0x38,0x6d, 0x6,0x32,0x2e, 0x5,0x29,0x74, 0x6,0x32,0x2b,
+  0x5,0x29,0x72, 0xf,0x2b,0x51, 0xf,0x2b,0x52, 0xf,0x2b,0x53,
+  0xf,0x2b,0x54, 0xf,0x2b,0x55, 0xf,0x2b,0x56, 0xf,0x2b,0x57,
+  0xf,0x2b,0x58, 0xf,0x2b,0x59, 0xf,0x2b,0x5a, 0xf,0x2b,0x5b,
+  0xf,0x2b,0x5c, 0xf,0x2b,0x5e, 0xf,0x2b,0x5d, 0x6,0x38,0x6f,
+  0x5,0x2e,0x41, 0x6,0x38,0x6e, 0x4,0x2d,0x69, 0x5,0x2e,0x43,
+  0x4,0x2d,0x68, 0x6,0x38,0x6c, 0x5,0x2e,0x42, 0xf,0x30,0x32,
+  0xf,0x30,0x33, 0xf,0x30,0x34, 0xf,0x30,0x35, 0xf,0x30,0x36,
+  0xf,0x30,0x37, 0xf,0x30,0x38, 0xf,0x30,0x39, 0x6,0x38,0x6b,
+  0x5,0x2e,0x40, 0x6,0x41,0x26, 0x4,0x32,0x56, 0x6,0x41,0x21,
+  0x5,0x33,0x31, 0x6,0x41,0x22, 0x6,0x41,0x23, 0x5,0x33,0x2e,
+  0x6,0x41,0x25, 0x5,0x33,0x32, 0x5,0x33,0x30, 0x5,0x33,0x2f,
+  0x6,0x40,0x7e, 0x6,0x41,0x24, 0xf,0x35,0x78, 0xf,0x35,0x79,
+  0xf,0x35,0x7a, 0xf,0x35,0x7b, 0xf,0x35,0x7c, 0x5,0x39,0x55,
+  0x4,0x38,0x4d, 0x5,0x39,0x56, 0x4,0x38,0x50, 0x6,0x4a,0x51,
+  0x6,0x4a,0x53, 0x5,0x39,0x59, 0x5,0x39,0x58, 0x5,0x39,0x5a,
+  0x6,0x4a,0x56, 0x6,0x4a,0x50, 0x6,0x4a,0x55, 0x5,0x39,0x57,
+  0x6,0x4a,0x52, 0xf,0x3c,0x3a, 0xf,0x3c,0x35, 0xf,0x3c,0x37,
+  0xf,0x3c,0x38, 0xf,0x3c,0x39, 0xf,0x3c,0x3b, 0xf,0x3c,0x3d,
+  0xf,0x3c,0x3f, 0xf,0x3c,0x40, 0x6,0x4a,0x54, 0xf,0x3c,0x36,
+  0x5,0x39,0x5c, 0x6,0x54,0x2e, 0x6,0x54,0x2c, 0x4,0x3e,0x2b,
+  0x6,0x54,0x27, 0x6,0x54,0x2b, 0x4,0x3e,0x2a, 0x6,0x54,0x28,
+  0x6,0x54,0x25, 0x6,0x54,0x29, 0x6,0x54,0x26, 0x6,0x54,0x2d,
+  0x6,0x54,0x2a, 0x6,0x54,0x2f, 0x5,0x40,0x24, 0xf,0x42,0x53,
+  0xf,0x42,0x55, 0xf,0x42,0x56, 0xf,0x42,0x57, 0x6,0x54,0x30,
+  0x6,0x5e,0x29, 0x5,0x46,0x66, 0x5,0x46,0x65, 0x6,0x5e,0x2a,
+  0x6,0x5e,0x2b, 0x6,0x5e,0x2d, 0x4,0x44,0x3d, 0x6,0x5e,0x24,
+  0x4,0x44,0x3e, 0x5,0x46,0x67, 0x4,0x44,0x3b, 0x6,0x5e,0x2e,
+  0x6,0x5e,0x2f, 0x6,0x5e,0x26, 0x6,0x5e,0x27, 0xf,0x48,0x7c,
+  0xf,0x48,0x7d, 0xf,0x48,0x7e, 0xf,0x49,0x21, 0x6,0x5e,0x28,
+  0x5,0x46,0x69, 0x6,0x5e,0x30, 0x6,0x5e,0x25, 0x6,0x5e,0x2c,
+  0x4,0x4a,0x56, 0x7,0x24,0x33, 0x7,0x24,0x37, 0x7,0x24,0x35,
+  0x4,0x4a,0x55, 0x4,0x4a,0x54, 0x5,0x4d,0x79, 0x7,0x24,0x34,
+  0x5,0x4d,0x77, 0x5,0x4d,0x78, 0x7,0x24,0x31, 0x7,0x24,0x32,
+  0x7,0x24,0x30, 0x7,0x24,0x2f, 0x7,0x24,0x36, 0x7,0x24,0x38,
+  0x7,0x2f,0x29, 0x5,0x55,0x27, 0x7,0x2f,0x2a, 0x4,0x50,0x70,
+  0x5,0x55,0x26, 0x4,0x50,0x73, 0x7,0x2f,0x2c, 0xf,0x55,0x42,
+  0xf,0x55,0x43, 0xf,0x55,0x44, 0xf,0x55,0x45, 0x7,0x2f,0x2b,
+  0x7,0x24,0x39, 0x7,0x38,0x6a, 0x4,0x56,0x55, 0x4,0x56,0x54,
+  0x7,0x38,0x69, 0x5,0x5b,0x76, 0x7,0x38,0x68, 0xf,0x5a,0x5a,
+  0xf,0x5a,0x5b, 0xf,0x5a,0x5c, 0x7,0x38,0x6c, 0x7,0x38,0x6b,
+  0x5,0x62,0x35, 0x5,0x62,0x34, 0x5,0x62,0x36, 0x7,0x40,0x37,
+  0x7,0x47,0x4f, 0x7,0x40,0x35, 0x5,0x62,0x37, 0x7,0x40,0x34,
+  0x7,0x40,0x36, 0xf,0x5f,0x31, 0x5,0x62,0x33, 0xf,0x5f,0x32,
+  0x7,0x47,0x52, 0x5,0x68,0x34, 0x7,0x47,0x50, 0x7,0x47,0x51,
+  0xf,0x65,0x41, 0x7,0x4e,0x26, 0x4,0x66,0x47, 0x5,0x70,0x39,
+  0x7,0x53,0x51, 0xf,0x67,0x67, 0x7,0x58,0x2b, 0x5,0x73,0x53,
+  0xf,0x69,0x52, 0x5,0x75,0x7c, 0x7,0x5b,0x65, 0x7,0x64,0x4a,
+  0x6,0x2c,0x48, 0x6,0x32,0x30, 0x5,0x29,0x75, 0x5,0x29,0x76,
+  0x6,0x33,0x4c, 0x6,0x41,0x27, 0xf,0x35,0x7d, 0x6,0x41,0x28,
+  0x6,0x54,0x31, 0x4,0x44,0x40, 0x7,0x2f,0x2d, 0x7,0x38,0x6d,
+  0x4,0x5b,0x51, 0xf,0x5a,0x5d, 0x6,0x25,0x2a, 0x6,0x25,0x29,
+  0xf,0x24,0x5c, 0x6,0x2c,0x4b, 0x6,0x2c,0x4a, 0x6,0x2c,0x49,
+  0x6,0x32,0x31, 0x6,0x32,0x32, 0xf,0x2b,0x5f, 0x5,0x29,0x77,
+  0x5,0x2e,0x44, 0xf,0x35,0x7e, 0x5,0x39,0x5d, 0xf,0x3c,0x41,
+  0x6,0x54,0x32, 0x7,0x24,0x3b, 0x7,0x24,0x3a, 0x7,0x40,0x38,
+  0x7,0x53,0x52, 0xf,0x21,0x67, 0x6,0x22,0x24, 0x6,0x25,0x2b,
+  0x5,0x21,0x73, 0x6,0x25,0x2c, 0xf,0x22,0x5e, 0xf,0x24,0x69,
+  0x4,0x23,0x23, 0x6,0x25,0x2d, 0x5,0x24,0x50, 0x6,0x25,0x2f,
+  0x6,0x25,0x31, 0x3,0x24,0x24, 0xf,0x22,0x5c, 0xf,0x24,0x5f,
+  0xf,0x24,0x60, 0x6,0x25,0x30, 0x6,0x2c,0x4d, 0x5,0x24,0x52,
+  0x6,0x28,0x42, 0x5,0x24,0x51, 0x5,0x24,0x53, 0x4,0x24,0x50,
+  0x6,0x28,0x46, 0x6,0x28,0x47, 0x6,0x2c,0x4c, 0x6,0x28,0x43,
+  0x6,0x28,0x41, 0x6,0x28,0x45, 0x6,0x28,0x48, 0xf,0x24,0x61,
+  0xf,0x24,0x5e, 0xf,0x24,0x62, 0xf,0x24,0x63, 0xf,0x24,0x64,
+  0xf,0x24,0x65, 0xf,0x24,0x66, 0xf,0x24,0x67, 0xf,0x27,0x63,
+  0xf,0x27,0x64, 0xf,0x27,0x65, 0x4,0x27,0x23, 0x5,0x26,0x6f,
+  0x6,0x32,0x33, 0x5,0x26,0x72, 0x5,0x26,0x73, 0x4,0x27,0x21,
+  0x6,0x2c,0x57, 0x4,0x27,0x25, 0x6,0x2c,0x50, 0x4,0x27,0x24,
+  0x6,0x2c,0x4e, 0x5,0x26,0x6e, 0x5,0x26,0x70, 0x6,0x2c,0x58,
+  0x5,0x26,0x71, 0x6,0x2c,0x5a, 0x6,0x32,0x34, 0x6,0x2c,0x56,
+  0x6,0x2c,0x5c, 0x4,0x26,0x7c, 0x6,0x2c,0x53, 0xf,0x27,0x60,
+  0xf,0x27,0x61, 0xf,0x27,0x62, 0xf,0x27,0x67, 0xf,0x27,0x68,
+  0xf,0x27,0x69, 0xf,0x27,0x6a, 0xf,0x27,0x6b, 0xf,0x27,0x6d,
+  0xf,0x2b,0x64, 0xf,0x2b,0x67, 0xf,0x2b,0x6c, 0x6,0x2c,0x52,
+  0x6,0x2c,0x54, 0x6,0x2c,0x55, 0x6,0x2c,0x59, 0x6,0x2c,0x4f,
+  0x5,0x29,0x78, 0x4,0x29,0x7c, 0x6,0x32,0x36, 0x5,0x2a,0x22,
+  0x6,0x32,0x3b, 0x6,0x32,0x3e, 0x5,0x29,0x79, 0x4,0x2a,0x22,
+  0x4,0x2d,0x71, 0x5,0x2a,0x21, 0x5,0x29,0x7e, 0x6,0x32,0x3a,
+  0x6,0x32,0x40, 0x5,0x29,0x7a, 0x6,0x32,0x41, 0x5,0x29,0x7d,
+  0x6,0x38,0x70, 0x6,0x32,0x3d, 0x6,0x32,0x3c, 0x4,0x2a,0x23,
+  0x4,0x29,0x7d, 0x6,0x32,0x3f, 0xf,0x2b,0x60, 0xf,0x2b,0x61,
+  0xf,0x2b,0x62, 0xf,0x2b,0x63, 0xf,0x2b,0x65, 0xf,0x2b,0x66,
+  0xf,0x2b,0x68, 0xf,0x2b,0x69, 0xf,0x2b,0x6a, 0xf,0x2b,0x6b,
+  0xf,0x2b,0x6d, 0xf,0x2b,0x6e, 0xf,0x30,0x3a, 0xf,0x30,0x3d,
+  0xf,0x30,0x44, 0x6,0x32,0x38, 0x4,0x2a,0x24, 0x6,0x32,0x35,
+  0x6,0x32,0x37, 0x5,0x2a,0x23, 0xf,0x30,0x57, 0x4,0x2d,0x6e,
+  0x5,0x2e,0x49, 0x6,0x39,0x30, 0x6,0x39,0x2e, 0x5,0x2e,0x48,
+  0x5,0x2e,0x47, 0x6,0x38,0x7c, 0x5,0x2e,0x4a, 0x6,0x38,0x71,
+  0x6,0x38,0x7b, 0x4,0x2d,0x6d, 0x4,0x2d,0x6f, 0x6,0x39,0x25,
+  0x6,0x38,0x76, 0x6,0x39,0x26, 0x6,0x39,0x2a, 0x6,0x38,0x77,
+  0x6,0x39,0x29, 0x6,0x38,0x7e, 0x6,0x39,0x28, 0x6,0x41,0x2a,
+  0x6,0x41,0x29, 0x4,0x32,0x66, 0x6,0x39,0x24, 0x6,0x39,0x2c,
+  0x5,0x2e,0x45, 0x6,0x39,0x23, 0x6,0x38,0x73, 0x6,0x39,0x2b,
+  0x6,0x38,0x78, 0x6,0x39,0x2f, 0x6,0x39,0x32, 0x6,0x41,0x46,
+  0xf,0x30,0x3b, 0xf,0x30,0x3e, 0xf,0x30,0x3f, 0xf,0x30,0x40,
+  0xf,0x30,0x41, 0xf,0x30,0x42, 0xf,0x30,0x43, 0xf,0x30,0x45,
+  0xf,0x30,0x46, 0xf,0x30,0x47, 0xf,0x30,0x48, 0xf,0x30,0x4a,
+  0xf,0x30,0x4b, 0xf,0x30,0x4c, 0xf,0x30,0x4d, 0xf,0x30,0x4e,
+  0xf,0x30,0x4f, 0xf,0x30,0x50, 0xf,0x30,0x51, 0xf,0x30,0x52,
+  0xf,0x30,0x53, 0xf,0x30,0x54, 0xf,0x30,0x55, 0xf,0x30,0x56,
+  0xf,0x30,0x58, 0xf,0x30,0x59, 0xf,0x30,0x5a, 0x6,0x38,0x79,
+  0x6,0x39,0x22, 0x6,0x39,0x31, 0x4,0x2d,0x72, 0x6,0x39,0x27,
+  0x6,0x38,0x7d, 0x6,0x38,0x75, 0x5,0x2e,0x46, 0xf,0x36,0x2d,
+  0x4,0x32,0x5d, 0x5,0x33,0x40, 0x4,0x32,0x5b, 0x4,0x32,0x6b,
+  0x6,0x41,0x34, 0x6,0x41,0x38, 0x6,0x41,0x3c, 0x4,0x32,0x6a,
+  0x6,0x41,0x43, 0x4,0x32,0x61, 0x6,0x41,0x36, 0x4,0x32,0x65,
+  0x6,0x41,0x35, 0x6,0x41,0x45, 0x4,0x32,0x69, 0x5,0x33,0x33,
+  0x6,0x41,0x31, 0x4,0x32,0x60, 0x4,0x32,0x67, 0x6,0x4a,0x64,
+  0x5,0x33,0x3f, 0x6,0x41,0x42, 0x5,0x33,0x3e, 0x6,0x41,0x3f,
+  0x4,0x32,0x59, 0x4,0x32,0x5f, 0x6,0x41,0x2c, 0x4,0x25,0x2f,
+  0x6,0x41,0x3b, 0x6,0x41,0x30, 0x6,0x4a,0x66, 0x5,0x33,0x38,
+  0x5,0x33,0x41, 0x6,0x4a,0x58, 0x6,0x4a,0x59, 0x6,0x41,0x3e,
+  0x6,0x41,0x44, 0x5,0x33,0x36, 0x4,0x32,0x62, 0x6,0x41,0x40,
+  0x5,0x33,0x3b, 0x6,0x41,0x2f, 0x6,0x41,0x32, 0x5,0x33,0x3a,
+  0x5,0x33,0x35, 0x4,0x32,0x6c, 0x4,0x32,0x6e, 0x5,0x33,0x37,
+  0x6,0x41,0x3d, 0xf,0x36,0x21, 0xf,0x36,0x22, 0xf,0x36,0x23,
+  0xf,0x36,0x25, 0xf,0x36,0x26, 0xf,0x36,0x27, 0xf,0x36,0x28,
+  0xf,0x36,0x2a, 0xf,0x36,0x2c, 0xf,0x36,0x2e, 0xf,0x36,0x2f,
+  0xf,0x36,0x30, 0xf,0x36,0x31, 0xf,0x36,0x32, 0xf,0x36,0x36,
+  0xf,0x36,0x37, 0xf,0x36,0x38, 0xf,0x36,0x39, 0xf,0x36,0x3a,
+  0xf,0x36,0x3b, 0xf,0x36,0x3c, 0xf,0x36,0x3d, 0xf,0x3c,0x42,
+  0xf,0x3c,0x4b, 0xf,0x3c,0x4d, 0xf,0x3c,0x57, 0xf,0x42,0x5f,
+  0x6,0x4a,0x57, 0x6,0x41,0x33, 0x6,0x41,0x37, 0x5,0x33,0x39,
+  0x6,0x41,0x3a, 0x6,0x41,0x39, 0x6,0x41,0x47, 0x6,0x41,0x2d,
+  0x6,0x41,0x2e, 0x5,0x33,0x34, 0x5,0x33,0x3c, 0x6,0x38,0x7a,
+  0x6,0x4a,0x62, 0x6,0x4a,0x70, 0x4,0x38,0x54, 0x5,0x39,0x63,
+  0x4,0x38,0x55, 0x6,0x4a,0x5d, 0x6,0x4a,0x5f, 0x5,0x39,0x67,
+  0x5,0x39,0x6a, 0x5,0x39,0x62, 0x6,0x54,0x48, 0x5,0x39,0x6c,
+  0x6,0x4a,0x5a, 0x4,0x38,0x53, 0x5,0x33,0x42, 0x4,0x38,0x58,
+  0x6,0x4a,0x6c, 0x6,0x4a,0x5c, 0x5,0x39,0x68, 0x6,0x4a,0x71,
+  0x6,0x54,0x35, 0x6,0x4a,0x67, 0x6,0x4a,0x68, 0x6,0x4a,0x6e,
+  0x5,0x39,0x60, 0x6,0x54,0x34, 0x6,0x4a,0x6f, 0x4,0x3e,0x2c,
+  0x5,0x39,0x5f, 0x5,0x39,0x66, 0x5,0x39,0x65, 0x5,0x39,0x64,
+  0x6,0x4a,0x6a, 0x5,0x39,0x61, 0x6,0x54,0x33, 0x6,0x4a,0x72,
+  0x5,0x39,0x6d, 0x6,0x4a,0x61, 0xf,0x3c,0x44, 0xf,0x3c,0x45,
+  0xf,0x3c,0x46, 0xf,0x3c,0x48, 0xf,0x3c,0x49, 0xf,0x3c,0x4a,
+  0xf,0x3c,0x4e, 0xf,0x3c,0x4f, 0xf,0x3c,0x50, 0xf,0x3c,0x51,
+  0xf,0x3c,0x52, 0xf,0x3c,0x53, 0xf,0x3c,0x54, 0xf,0x3c,0x55,
+  0xf,0x3c,0x56, 0xf,0x3c,0x58, 0xf,0x3c,0x59, 0xf,0x3c,0x5b,
+  0xf,0x3c,0x5c, 0x6,0x4a,0x69, 0x5,0x39,0x69, 0x6,0x4a,0x6b,
+  0x4,0x38,0x5d, 0x6,0x4a,0x5b, 0x6,0x4a,0x60, 0x6,0x4a,0x5e,
+  0x5,0x39,0x6b, 0xf,0x42,0x73, 0x6,0x54,0x41, 0x5,0x40,0x25,
+  0x4,0x3e,0x41, 0x6,0x54,0x38, 0x4,0x3e,0x34, 0x6,0x54,0x3b,
+  0x6,0x54,0x43, 0x4,0x3e,0x3b, 0x4,0x3e,0x43, 0x4,0x3e,0x3e,
+  0x4,0x3e,0x2e, 0x6,0x54,0x4a, 0x5,0x40,0x29, 0x5,0x40,0x26,
+  0x4,0x3e,0x40, 0x6,0x5e,0x31, 0x6,0x54,0x42, 0x4,0x3e,0x3a,
+  0x5,0x40,0x2f, 0x5,0x40,0x2d, 0x4,0x3e,0x31, 0x6,0x5e,0x32,
+  0x4,0x3e,0x42, 0x5,0x40,0x2c, 0x5,0x40,0x2e, 0x6,0x54,0x3e,
+  0x6,0x54,0x4c, 0x7,0x24,0x3c, 0x6,0x54,0x47, 0x4,0x44,0x4b,
+  0x6,0x54,0x3f, 0x6,0x54,0x46, 0x6,0x54,0x37, 0x6,0x54,0x36,
+  0x5,0x40,0x2b, 0x5,0x40,0x28, 0x4,0x3e,0x3d, 0x6,0x54,0x3c,
+  0x6,0x54,0x3d, 0x6,0x54,0x40, 0x6,0x54,0x45, 0xf,0x42,0x58,
+  0xf,0x42,0x59, 0xf,0x42,0x5a, 0xf,0x42,0x5b, 0xf,0x42,0x5c,
+  0xf,0x42,0x5d, 0xf,0x42,0x5e, 0xf,0x42,0x60, 0xf,0x42,0x61,
+  0xf,0x42,0x62, 0xf,0x42,0x65, 0xf,0x42,0x66, 0xf,0x42,0x67,
+  0xf,0x42,0x68, 0xf,0x42,0x69, 0xf,0x42,0x6a, 0xf,0x42,0x6c,
+  0xf,0x42,0x6d, 0xf,0x42,0x6e, 0xf,0x42,0x6f, 0xf,0x42,0x70,
+  0xf,0x42,0x71, 0xf,0x42,0x72, 0xf,0x42,0x75, 0xf,0x49,0x22,
+  0xf,0x49,0x3e, 0x5,0x40,0x2a, 0x6,0x54,0x44, 0x4,0x3e,0x35,
+  0x6,0x54,0x4d, 0x6,0x54,0x3a, 0x6,0x54,0x4b, 0xf,0x49,0x2f,
+  0xf,0x42,0x6b, 0xf,0x4f,0x6c, 0x6,0x54,0x39, 0x7,0x24,0x3d,
+  0x4,0x44,0x54, 0x4,0x44,0x47, 0x4,0x44,0x48, 0x4,0x44,0x4c,
+  0x5,0x46,0x6b, 0x4,0x44,0x4e, 0x5,0x46,0x6a, 0x5,0x46,0x74,
+  0x5,0x46,0x76, 0x4,0x44,0x45, 0x4,0x44,0x53, 0x6,0x5e,0x44,
+  0x5,0x46,0x6f, 0x6,0x5e,0x41, 0x6,0x5e,0x3a, 0x4,0x44,0x51,
+  0x4,0x44,0x50, 0x5,0x46,0x75, 0x5,0x46,0x72, 0x5,0x46,0x6d,
+  0x7,0x24,0x40, 0x7,0x24,0x3f, 0x5,0x46,0x77, 0x6,0x5e,0x45,
+  0x4,0x44,0x4f, 0x6,0x5e,0x39, 0x6,0x5e,0x42, 0x5,0x46,0x70,
+  0x5,0x46,0x71, 0x4,0x44,0x41, 0x6,0x5e,0x3d, 0x5,0x4d,0x7a,
+  0x7,0x24,0x3e, 0x6,0x5e,0x34, 0x5,0x46,0x6e, 0x6,0x5e,0x3f,
+  0x5,0x46,0x73, 0xf,0x49,0x23, 0xf,0x49,0x24, 0xf,0x49,0x25,
+  0xf,0x49,0x26, 0xf,0x49,0x27, 0xf,0x49,0x28, 0xf,0x49,0x29,
+  0xf,0x49,0x2b, 0xf,0x49,0x2c, 0xf,0x49,0x2d, 0xf,0x49,0x2e,
+  0xf,0x49,0x30, 0xf,0x49,0x31, 0xf,0x49,0x34, 0xf,0x49,0x36,
+  0xf,0x49,0x37, 0xf,0x49,0x38, 0xf,0x49,0x39, 0xf,0x49,0x3a,
+  0xf,0x49,0x3c, 0xf,0x49,0x3d, 0xf,0x49,0x41, 0xf,0x49,0x42,
+  0xf,0x49,0x43, 0xf,0x4f,0x6d, 0x7,0x22,0x68, 0x4,0x44,0x42,
+  0x6,0x5e,0x3c, 0x6,0x5e,0x43, 0x6,0x5e,0x35, 0x5,0x46,0x6c,
+  0x6,0x5e,0x33, 0x6,0x5e,0x37, 0x6,0x5e,0x38, 0xf,0x49,0x3b,
+  0x6,0x5e,0x36, 0xf,0x49,0x2a, 0x7,0x24,0x62, 0x7,0x24,0x52,
+  0x7,0x24,0x4d, 0x4,0x4a,0x60, 0x7,0x24,0x5a, 0x7,0x24,0x54,
+  0x7,0x24,0x4c, 0x4,0x4a,0x65, 0x4,0x4a,0x67, 0x5,0x4e,0x25,
+  0x7,0x24,0x63, 0x7,0x24,0x4e, 0x7,0x24,0x50, 0x7,0x24,0x56,
+  0x4,0x4a,0x5c, 0x7,0x24,0x57, 0x7,0x24,0x49, 0x5,0x4e,0x21,
+  0x7,0x24,0x65, 0x7,0x24,0x47, 0x7,0x24,0x44, 0x4,0x4a,0x66,
+  0x5,0x4d,0x7b, 0x5,0x4e,0x24, 0x7,0x24,0x64, 0x4,0x4a,0x5b,
+  0x7,0x24,0x5b, 0x4,0x4a,0x5a, 0x7,0x24,0x59, 0x5,0x4d,0x7e,
+  0x7,0x24,0x43, 0x7,0x24,0x67, 0x5,0x4e,0x23, 0x5,0x4d,0x7d,
+  0x7,0x24,0x53, 0x7,0x24,0x42, 0x7,0x3a,0x69, 0x7,0x24,0x45,
+  0x7,0x24,0x68, 0x5,0x4e,0x22, 0x7,0x24,0x41, 0x7,0x24,0x5e,
+  0x7,0x24,0x66, 0x5,0x4e,0x26, 0x5,0x4e,0x28, 0x5,0x4d,0x7c,
+  0x4,0x4a,0x5e, 0x7,0x24,0x5f, 0x7,0x24,0x4b, 0x7,0x24,0x51,
+  0x5,0x4e,0x27, 0x7,0x24,0x5c, 0xf,0x4f,0x59, 0xf,0x4f,0x5a,
+  0xf,0x4f,0x5b, 0xf,0x4f,0x5c, 0xf,0x4f,0x5d, 0xf,0x4f,0x5e,
+  0xf,0x4f,0x5f, 0xf,0x4f,0x62, 0xf,0x4f,0x63, 0xf,0x4f,0x64,
+  0xf,0x4f,0x65, 0xf,0x4f,0x66, 0xf,0x4f,0x67, 0xf,0x4f,0x68,
+  0xf,0x4f,0x6a, 0xf,0x4f,0x6b, 0xf,0x4f,0x6f, 0xf,0x4f,0x70,
+  0xf,0x4f,0x71, 0xf,0x4f,0x72, 0xf,0x4f,0x73, 0xf,0x4f,0x74,
+  0xf,0x4f,0x75, 0xf,0x4f,0x76, 0xf,0x4f,0x77, 0xf,0x4f,0x78,
+  0xf,0x4f,0x7b, 0xf,0x4f,0x7c, 0xf,0x55,0x51, 0x7,0x24,0x55,
+  0x7,0x24,0x60, 0x7,0x2f,0x30, 0x4,0x4a,0x63, 0x7,0x24,0x46,
+  0x7,0x24,0x5d, 0x7,0x24,0x48, 0x7,0x24,0x4a, 0xf,0x55,0x4a,
+  0xf,0x4f,0x7e, 0xf,0x49,0x40, 0x4,0x50,0x7c, 0x5,0x55,0x35,
+  0x5,0x55,0x34, 0x5,0x55,0x28, 0x5,0x55,0x29, 0x5,0x55,0x2b,
+  0x7,0x2f,0x33, 0x5,0x55,0x30, 0x7,0x2f,0x47, 0x7,0x2f,0x40,
+  0x7,0x2f,0x3a, 0x4,0x50,0x79, 0x7,0x2f,0x39, 0x4,0x50,0x7e,
+  0x5,0x55,0x33, 0x7,0x2f,0x3d, 0x7,0x2f,0x31, 0x7,0x2f,0x37,
+  0x7,0x2f,0x46, 0x7,0x2f,0x3b, 0x7,0x2f,0x38, 0x7,0x2f,0x43,
+  0x7,0x2f,0x36, 0x7,0x2f,0x32, 0x5,0x55,0x31, 0x5,0x55,0x2a,
+  0x5,0x5b,0x77, 0x7,0x2f,0x3c, 0x7,0x2f,0x49, 0x5,0x55,0x2c,
+  0x5,0x5b,0x79, 0x5,0x55,0x32, 0x7,0x2f,0x2f, 0x7,0x2f,0x34,
+  0x7,0x2f,0x3e, 0x7,0x2f,0x41, 0xf,0x55,0x46, 0xf,0x55,0x48,
+  0xf,0x55,0x49, 0xf,0x55,0x4b, 0xf,0x55,0x4c, 0xf,0x55,0x4f,
+  0xf,0x55,0x50, 0xf,0x55,0x52, 0xf,0x55,0x53, 0xf,0x55,0x54,
+  0xf,0x55,0x55, 0xf,0x55,0x57, 0xf,0x5a,0x6d, 0x5,0x55,0x2f,
+  0x7,0x2f,0x3f, 0x7,0x2f,0x45, 0x7,0x2f,0x48, 0x7,0x2f,0x4a,
+  0x7,0x2f,0x2e, 0x7,0x2f,0x44, 0x4,0x51,0x21, 0xf,0x4f,0x61,
+  0xf,0x5a,0x66, 0xf,0x5a,0x5f, 0x5,0x54,0x3a, 0x5,0x5b,0x7c,
+  0x4,0x56,0x5a, 0x4,0x56,0x5f, 0x5,0x5b,0x7a, 0x7,0x38,0x7a,
+  0x7,0x38,0x6e, 0x4,0x5b,0x52, 0x5,0x5b,0x7b, 0x5,0x5b,0x78,
+  0x7,0x38,0x70, 0x7,0x38,0x76, 0x7,0x38,0x6f, 0x7,0x38,0x79,
+  0x7,0x38,0x74, 0x7,0x38,0x73, 0x5,0x62,0x38, 0x7,0x38,0x75,
+  0x7,0x38,0x7b, 0x5,0x5b,0x7d, 0x7,0x38,0x77, 0x5,0x55,0x37,
+  0x3,0x55,0x3a, 0x7,0x38,0x78, 0xf,0x5a,0x60, 0xf,0x5a,0x61,
+  0xf,0x5a,0x62, 0xf,0x5a,0x63, 0xf,0x5a,0x64, 0xf,0x5a,0x65,
+  0xf,0x5a,0x67, 0xf,0x5a,0x69, 0xf,0x5a,0x6b, 0xf,0x5a,0x70,
+  0x7,0x38,0x72, 0x5,0x5b,0x7e, 0x7,0x38,0x7c, 0x7,0x38,0x71,
+  0xf,0x55,0x4e, 0xf,0x5a,0x6c, 0xf,0x5a,0x6f, 0xf,0x55,0x47,
+  0xf,0x55,0x4d, 0xf,0x5a,0x5e, 0x7,0x2f,0x35, 0x5,0x62,0x3f,
+  0x5,0x62,0x46, 0x5,0x62,0x45, 0x4,0x5b,0x5d, 0x5,0x62,0x3d,
+  0x5,0x62,0x39, 0x5,0x62,0x42, 0x7,0x40,0x40, 0x7,0x40,0x46,
+  0x4,0x5b,0x59, 0x5,0x62,0x4b, 0x5,0x62,0x44, 0x7,0x40,0x3c,
+  0x5,0x62,0x41, 0x5,0x62,0x4a, 0x4,0x5b,0x58, 0x5,0x62,0x43,
+  0x7,0x40,0x47, 0x5,0x62,0x3b, 0x7,0x40,0x41, 0x5,0x62,0x40,
+  0x7,0x40,0x48, 0x7,0x40,0x3a, 0x4,0x5b,0x5f, 0x4,0x5b,0x55,
+  0x7,0x40,0x45, 0x7,0x40,0x44, 0x7,0x40,0x3e, 0x5,0x62,0x3a,
+  0x4,0x5b,0x53, 0x5,0x62,0x3c, 0x5,0x62,0x3e, 0x5,0x62,0x49,
+  0x5,0x62,0x4c, 0x5,0x62,0x47, 0x7,0x40,0x3f, 0x4,0x5b,0x5c,
+  0x7,0x40,0x42, 0x7,0x47,0x5f, 0x5,0x62,0x4d, 0xf,0x5f,0x33,
+  0xf,0x5f,0x35, 0xf,0x5f,0x36, 0xf,0x5f,0x37, 0xf,0x5f,0x39,
+  0xf,0x5f,0x3a, 0xf,0x5f,0x3b, 0xf,0x5f,0x3c, 0xf,0x5f,0x3d,
+  0xf,0x5f,0x3e, 0xf,0x5f,0x3f, 0xf,0x5f,0x40, 0xf,0x5f,0x41,
+  0xf,0x5f,0x42, 0xf,0x5f,0x43, 0xf,0x62,0x64, 0xf,0x62,0x65,
+  0xf,0x62,0x6c, 0x7,0x47,0x5e, 0x7,0x40,0x3d, 0x7,0x40,0x39,
+  0x7,0x40,0x43, 0x7,0x40,0x3b, 0xf,0x5f,0x34, 0xf,0x5a,0x6a,
+  0xf,0x5a,0x6e, 0x5,0x62,0x48, 0x7,0x47,0x65, 0x7,0x47,0x5c,
+  0x7,0x47,0x62, 0x4,0x5f,0x7c, 0x4,0x5f,0x7a, 0x7,0x47,0x53,
+  0x5,0x68,0x36, 0x7,0x47,0x56, 0x7,0x47,0x54, 0x7,0x47,0x5b,
+  0x7,0x47,0x5a, 0x7,0x47,0x55, 0x5,0x68,0x35, 0x7,0x47,0x59,
+  0x7,0x47,0x5d, 0x5,0x6c,0x45, 0x7,0x47,0x61, 0xf,0x62,0x66,
+  0xf,0x62,0x67, 0xf,0x62,0x68, 0xf,0x62,0x69, 0xf,0x62,0x6a,
+  0xf,0x62,0x6d, 0xf,0x62,0x6e, 0xf,0x62,0x6f, 0xf,0x62,0x70,
+  0xf,0x62,0x71, 0x7,0x47,0x57, 0x7,0x47,0x60, 0x7,0x47,0x66,
+  0x7,0x47,0x64, 0x7,0x47,0x63, 0x7,0x47,0x58, 0x5,0x6c,0x47,
+  0x5,0x6c,0x4a, 0x5,0x6c,0x4b, 0x7,0x4e,0x2b, 0x4,0x63,0x59,
+  0x4,0x63,0x5d, 0x7,0x4e,0x2a, 0x7,0x4e,0x29, 0x5,0x6c,0x48,
+  0x4,0x63,0x5c, 0x7,0x4e,0x2e, 0x4,0x63,0x57, 0x4,0x63,0x58,
+  0x4,0x63,0x56, 0x7,0x4e,0x2d, 0x5,0x70,0x3b, 0x5,0x6c,0x49,
+  0x5,0x6c,0x4c, 0x7,0x4e,0x2f, 0xf,0x65,0x42, 0xf,0x65,0x43,
+  0xf,0x65,0x44, 0x7,0x4e,0x2c, 0x4,0x66,0x48, 0x5,0x70,0x40,
+  0x7,0x53,0x56, 0x5,0x70,0x3f, 0x5,0x70,0x3d, 0x4,0x66,0x4b,
+  0x7,0x53,0x54, 0x5,0x70,0x3c, 0x7,0x53,0x59, 0x7,0x53,0x53,
+  0x4,0x66,0x4d, 0x7,0x53,0x5f, 0x5,0x70,0x41, 0x7,0x53,0x55,
+  0x7,0x53,0x5a, 0xf,0x67,0x68, 0xf,0x67,0x69, 0xf,0x67,0x6a,
+  0xf,0x67,0x6b, 0xf,0x67,0x6d, 0xf,0x67,0x6e, 0xf,0x67,0x6f,
+  0x7,0x53,0x5b, 0x7,0x53,0x5c, 0x7,0x53,0x5d, 0x7,0x53,0x5e,
+  0x5,0x70,0x3a, 0xf,0x67,0x70, 0xf,0x69,0x55, 0x7,0x58,0x2e,
+  0x7,0x53,0x57, 0x7,0x58,0x2f, 0x5,0x73,0x54, 0x5,0x70,0x42,
+  0x7,0x58,0x2d, 0x5,0x73,0x55, 0x7,0x58,0x31, 0x4,0x68,0x72,
+  0x7,0x58,0x32, 0xf,0x69,0x53, 0xf,0x69,0x54, 0x7,0x58,0x33,
+  0x7,0x58,0x30, 0x7,0x58,0x2c, 0x5,0x76,0x21, 0x5,0x76,0x22,
+  0x7,0x5b,0x69, 0x7,0x5b,0x68, 0x5,0x75,0x7e, 0x7,0x5b,0x67,
+  0x5,0x75,0x7d, 0xf,0x6a,0x5b, 0xf,0x6a,0x5c, 0xf,0x6a,0x5d,
+  0x7,0x5b,0x6a, 0x7,0x5b,0x66, 0x7,0x5e,0x76, 0x5,0x77,0x67,
+  0x7,0x5e,0x77, 0x4,0x6c,0x71, 0x7,0x5e,0x74, 0x5,0x77,0x66,
+  0x7,0x5e,0x75, 0x4,0x6c,0x72, 0x7,0x60,0x79, 0x7,0x60,0x78,
+  0x7,0x60,0x77, 0xf,0x6c,0x2f, 0x7,0x62,0x39, 0x4,0x6d,0x58,
+  0x5,0x7a,0x2b, 0x5,0x7a,0x2a, 0x4,0x6d,0x59, 0x4,0x6d,0x74,
+  0x5,0x7a,0x69, 0x5,0x7a,0x6a, 0x7,0x63,0x57, 0x7,0x64,0x4b,
+  0x5,0x7b,0x41, 0xf,0x6d,0x26, 0x7,0x65,0x5c, 0x5,0x7c,0x3c,
+  0x6,0x23,0x2f, 0x6,0x25,0x33, 0x4,0x23,0x24, 0x4,0x23,0x25,
+  0x6,0x25,0x32, 0xf,0x22,0x5f, 0xf,0x22,0x60, 0xf,0x22,0x61,
+  0x6,0x25,0x34, 0x4,0x24,0x53, 0x4,0x24,0x54, 0x5,0x24,0x54,
+  0x6,0x28,0x4c, 0x5,0x24,0x55, 0x5,0x24,0x57, 0xf,0x24,0x6b,
+  0xf,0x24,0x6c, 0xf,0x24,0x6d, 0xf,0x24,0x70, 0xf,0x24,0x72,
+  0x6,0x28,0x4b, 0x5,0x26,0x74, 0x4,0x27,0x28, 0x5,0x26,0x75,
+  0xf,0x27,0x6f, 0xf,0x27,0x70, 0xf,0x27,0x71, 0xf,0x27,0x73,
+  0xf,0x27,0x74, 0xf,0x27,0x75, 0xf,0x27,0x76, 0xf,0x27,0x77,
+  0x6,0x2c,0x5f, 0xf,0x27,0x72, 0x6,0x2c,0x5e, 0x4,0x27,0x2a,
+  0x5,0x24,0x56, 0x5,0x2a,0x25, 0x6,0x32,0x4c, 0x5,0x2a,0x26,
+  0x6,0x32,0x44, 0x5,0x2a,0x27, 0x6,0x32,0x4b, 0x6,0x32,0x46,
+  0xf,0x2b,0x6f, 0xf,0x2b,0x70, 0xf,0x2b,0x71, 0xf,0x2b,0x72,
+  0xf,0x2b,0x73, 0xf,0x2b,0x74, 0xf,0x2b,0x75, 0xf,0x2b,0x76,
+  0xf,0x2b,0x77, 0xf,0x2b,0x78, 0xf,0x2b,0x79, 0xf,0x2b,0x7b,
+  0xf,0x2b,0x7c, 0xf,0x2b,0x7d, 0xf,0x2b,0x7e, 0xf,0x2c,0x21,
+  0xf,0x2c,0x23, 0x4,0x2a,0x29, 0x6,0x32,0x45, 0x6,0x32,0x43,
+  0x6,0x32,0x47, 0x6,0x39,0x3a, 0x5,0x2a,0x28, 0x6,0x32,0x4a,
+  0xf,0x2c,0x22, 0x6,0x32,0x49, 0x5,0x2e,0x4f, 0x5,0x2e,0x4e,
+  0x6,0x39,0x36, 0x6,0x39,0x39, 0xf,0x30,0x6a, 0x4,0x32,0x6f,
+  0x6,0x39,0x37, 0x4,0x2d,0x74, 0x6,0x39,0x34, 0x5,0x2e,0x4b,
+  0xf,0x30,0x5d, 0xf,0x30,0x5e, 0xf,0x30,0x5f, 0xf,0x30,0x60,
+  0xf,0x30,0x61, 0xf,0x30,0x62, 0xf,0x30,0x63, 0xf,0x30,0x64,
+  0xf,0x30,0x65, 0xf,0x30,0x66, 0xf,0x30,0x68, 0xf,0x30,0x69,
+  0xf,0x30,0x6b, 0xf,0x30,0x6c, 0xf,0x30,0x6e, 0xf,0x30,0x6f,
+  0xf,0x30,0x70, 0xf,0x30,0x71, 0xf,0x30,0x72, 0x5,0x2e,0x4c,
+  0x6,0x39,0x35, 0x6,0x39,0x3b, 0x6,0x39,0x3c, 0xf,0x30,0x67,
+  0xf,0x30,0x6d, 0x6,0x39,0x38, 0x5,0x2e,0x4d, 0x6,0x41,0x4b,
+  0x4,0x32,0x74, 0x5,0x33,0x44, 0x6,0x41,0x4f, 0x4,0x32,0x73,
+  0x4,0x32,0x75, 0x6,0x41,0x4e, 0x6,0x41,0x54, 0x6,0x41,0x51,
+  0x6,0x41,0x4d, 0x6,0x41,0x4c, 0x6,0x4a,0x73, 0x6,0x41,0x52,
+  0x6,0x41,0x50, 0x6,0x41,0x53, 0xf,0x36,0x24, 0xf,0x36,0x3e,
+  0xf,0x36,0x3f, 0xf,0x36,0x40, 0xf,0x36,0x41, 0xf,0x36,0x43,
+  0xf,0x36,0x44, 0xf,0x36,0x45, 0xf,0x36,0x46, 0xf,0x36,0x47,
+  0xf,0x36,0x49, 0xf,0x36,0x4a, 0xf,0x36,0x4c, 0xf,0x36,0x4d,
+  0xf,0x36,0x4e, 0xf,0x36,0x50, 0x6,0x41,0x49, 0x6,0x41,0x48,
+  0xf,0x36,0x4b, 0x5,0x33,0x43, 0x5,0x33,0x45, 0x6,0x41,0x55,
+  0x4,0x38,0x69, 0x6,0x4a,0x78, 0x6,0x41,0x4a, 0x5,0x39,0x71,
+  0x5,0x39,0x6f, 0x6,0x4a,0x7e, 0x6,0x4b,0x21, 0x5,0x39,0x6e,
+  0x6,0x4a,0x75, 0x4,0x38,0x66, 0x6,0x4a,0x7a, 0x6,0x4a,0x74,
+  0x6,0x4a,0x7d, 0x4,0x38,0x63, 0x5,0x39,0x70, 0x6,0x4a,0x77,
+  0xf,0x3c,0x5e, 0xf,0x3c,0x5f, 0xf,0x3c,0x60, 0xf,0x3c,0x61,
+  0xf,0x3c,0x62, 0xf,0x3c,0x63, 0xf,0x3c,0x64, 0xf,0x3c,0x66,
+  0xf,0x3c,0x67, 0xf,0x3c,0x68, 0xf,0x3c,0x69, 0xf,0x3c,0x6b,
+  0xf,0x3c,0x6c, 0xf,0x3c,0x6d, 0xf,0x3c,0x6e, 0xf,0x3c,0x6f,
+  0xf,0x3c,0x70, 0xf,0x3c,0x71, 0xf,0x3c,0x72, 0xf,0x3c,0x75,
+  0xf,0x3c,0x77, 0xf,0x3c,0x78, 0xf,0x3c,0x79, 0xf,0x3c,0x7a,
+  0xf,0x3c,0x7b, 0xf,0x3c,0x7c, 0xf,0x3d,0x21, 0x6,0x4a,0x79,
+  0x6,0x4a,0x7c, 0x4,0x38,0x67, 0x6,0x4a,0x76, 0x6,0x4a,0x7b,
+  0xf,0x3c,0x6a, 0x5,0x39,0x72, 0x5,0x40,0x34, 0x6,0x54,0x5a,
+  0x6,0x54,0x58, 0x5,0x40,0x30, 0x6,0x54,0x56, 0x6,0x54,0x5d,
+  0x4,0x3e,0x47, 0x6,0x54,0x57, 0x4,0x3e,0x44, 0x6,0x54,0x5b,
+  0x6,0x54,0x5e, 0x4,0x3e,0x45, 0x5,0x40,0x32, 0x6,0x54,0x53,
+  0x6,0x54,0x63, 0x6,0x54,0x5f, 0x6,0x54,0x64, 0x5,0x40,0x35,
+  0x6,0x54,0x5c, 0x6,0x54,0x62, 0xf,0x42,0x76, 0xf,0x42,0x79,
+  0xf,0x42,0x7b, 0xf,0x42,0x7c, 0xf,0x42,0x7d, 0xf,0x43,0x21,
+  0xf,0x43,0x22, 0xf,0x43,0x23, 0xf,0x43,0x25, 0xf,0x43,0x26,
+  0xf,0x43,0x27, 0xf,0x43,0x28, 0xf,0x43,0x29, 0xf,0x43,0x2a,
+  0xf,0x43,0x2b, 0xf,0x43,0x2d, 0xf,0x43,0x2e, 0xf,0x43,0x30,
+  0xf,0x43,0x33, 0xf,0x43,0x34, 0xf,0x43,0x35, 0xf,0x43,0x36,
+  0xf,0x43,0x37, 0xf,0x43,0x38, 0xf,0x43,0x39, 0xf,0x43,0x3a,
+  0xf,0x43,0x3b, 0xf,0x43,0x3d, 0xf,0x43,0x3e, 0x6,0x54,0x51,
+  0x6,0x54,0x52, 0x6,0x54,0x55, 0x6,0x54,0x66, 0x4,0x3e,0x4a,
+  0x6,0x54,0x61, 0x6,0x54,0x65, 0x6,0x5a,0x54, 0xf,0x43,0x2c,
+  0x5,0x40,0x33, 0x5,0x40,0x31, 0xf,0x49,0x54, 0x6,0x5e,0x51,
+  0x6,0x5e,0x50, 0x5,0x46,0x7e, 0x6,0x5e,0x4a, 0x5,0x47,0x22,
+  0x4,0x44,0x55, 0x5,0x46,0x7c, 0x5,0x46,0x7b, 0x5,0x46,0x7a,
+  0x7,0x24,0x70, 0x7,0x24,0x6a, 0x6,0x5e,0x46, 0x5,0x47,0x21,
+  0x6,0x5e,0x47, 0x6,0x5e,0x48, 0x5,0x46,0x79, 0x6,0x5e,0x4b,
+  0x6,0x5e,0x4f, 0xf,0x49,0x44, 0xf,0x49,0x45, 0xf,0x49,0x46,
+  0xf,0x49,0x47, 0xf,0x49,0x49, 0xf,0x49,0x4a, 0xf,0x49,0x4c,
+  0xf,0x49,0x4d, 0xf,0x49,0x4e, 0xf,0x49,0x4f, 0xf,0x49,0x50,
+  0xf,0x49,0x51, 0xf,0x49,0x52, 0xf,0x49,0x53, 0xf,0x49,0x55,
+  0xf,0x49,0x56, 0xf,0x49,0x57, 0xf,0x49,0x5a, 0xf,0x49,0x5b,
+  0xf,0x49,0x5d, 0xf,0x49,0x5e, 0xf,0x49,0x60, 0xf,0x49,0x62,
+  0xf,0x49,0x63, 0xf,0x49,0x64, 0x4,0x44,0x5d, 0x5,0x46,0x7d,
+  0x6,0x5e,0x4c, 0x6,0x5e,0x52, 0x6,0x5e,0x49, 0x6,0x5e,0x4d,
+  0xf,0x49,0x5c, 0x6,0x54,0x60, 0xf,0x42,0x7e, 0xf,0x42,0x7a,
+  0x4,0x4a,0x6b, 0x5,0x4e,0x2c, 0x7,0x24,0x74, 0x7,0x24,0x6d,
+  0x7,0x24,0x69, 0x5,0x4e,0x2a, 0x7,0x24,0x6c, 0x7,0x24,0x71,
+  0x7,0x24,0x72, 0x7,0x24,0x75, 0x7,0x24,0x6b, 0x5,0x4e,0x29,
+  0xf,0x4e,0x22, 0x5,0x4e,0x2b, 0x7,0x24,0x73, 0xf,0x50,0x23,
+  0xf,0x50,0x24, 0xf,0x50,0x26, 0xf,0x50,0x27, 0xf,0x50,0x28,
+  0xf,0x50,0x29, 0xf,0x50,0x2a, 0xf,0x50,0x2b, 0xf,0x50,0x2e,
+  0xf,0x50,0x2f, 0xf,0x50,0x31, 0xf,0x50,0x32, 0xf,0x50,0x33,
+  0xf,0x50,0x34, 0xf,0x50,0x35, 0xf,0x50,0x37, 0xf,0x50,0x38,
+  0xf,0x50,0x39, 0xf,0x50,0x3a, 0xf,0x50,0x3b, 0xf,0x50,0x3c,
+  0x7,0x24,0x6e, 0xf,0x50,0x2c, 0x7,0x2a,0x71, 0xf,0x50,0x2d,
+  0xf,0x50,0x30, 0xf,0x50,0x25, 0xf,0x50,0x22, 0x5,0x4e,0x2e,
+  0x5,0x4e,0x2d, 0x6,0x5e,0x4e, 0x4,0x51,0x2a, 0x7,0x2f,0x52,
+  0x7,0x2f,0x66, 0x7,0x2f,0x50, 0x7,0x2f,0x60, 0x7,0x2f,0x5e,
+  0x5,0x55,0x3b, 0x4,0x51,0x27, 0x7,0x2f,0x61, 0x7,0x2f,0x63,
+  0x7,0x2f,0x55, 0x7,0x24,0x6f, 0x4,0x51,0x28, 0x7,0x2f,0x56,
+  0x7,0x2f,0x64, 0x7,0x2f,0x65, 0x4,0x51,0x26, 0x7,0x2f,0x58,
+  0x7,0x2f,0x54, 0x4,0x51,0x29, 0x7,0x2f,0x67, 0x5,0x55,0x3a,
+  0x5,0x55,0x3c, 0x7,0x2f,0x62, 0x7,0x2f,0x59, 0x7,0x2f,0x5d,
+  0x7,0x2f,0x5a, 0x7,0x2f,0x4b, 0x7,0x2f,0x53, 0x7,0x2f,0x5c,
+  0xf,0x55,0x59, 0xf,0x55,0x5a, 0xf,0x55,0x5b, 0xf,0x55,0x5c,
+  0xf,0x55,0x5d, 0xf,0x55,0x5e, 0xf,0x55,0x5f, 0xf,0x55,0x60,
+  0xf,0x55,0x61, 0xf,0x55,0x62, 0xf,0x55,0x63, 0xf,0x55,0x66,
+  0xf,0x55,0x67, 0xf,0x55,0x68, 0xf,0x55,0x6a, 0xf,0x55,0x6b,
+  0xf,0x55,0x6d, 0xf,0x55,0x6e, 0xf,0x55,0x70, 0xf,0x55,0x71,
+  0xf,0x55,0x72, 0xf,0x55,0x65, 0x5,0x55,0x38, 0x7,0x2f,0x4d,
+  0x7,0x2f,0x4e, 0x7,0x2f,0x5b, 0x7,0x2f,0x5f, 0x7,0x31,0x7a,
+  0x7,0x2f,0x51, 0x7,0x2c,0x7b, 0xf,0x55,0x6f, 0x5,0x55,0x3d,
+  0x5,0x55,0x39, 0x7,0x2f,0x4c, 0x7,0x24,0x76, 0x7,0x2f,0x57,
+  0x7,0x39,0x23, 0x4,0x56,0x61, 0x7,0x39,0x25, 0x5,0x55,0x3e,
+  0x7,0x39,0x29, 0x7,0x39,0x28, 0x4,0x56,0x63, 0x7,0x2f,0x68,
+  0x5,0x5c,0x21, 0x7,0x38,0x7d, 0x5,0x5c,0x24, 0x5,0x5c,0x22,
+  0xf,0x5a,0x71, 0xf,0x5a,0x72, 0xf,0x5a,0x76, 0xf,0x5a,0x77,
+  0xf,0x5a,0x78, 0xf,0x5a,0x79, 0xf,0x5a,0x7a, 0xf,0x5a,0x7b,
+  0xf,0x5a,0x7c, 0xf,0x5a,0x7d, 0xf,0x5a,0x7e, 0xf,0x5b,0x21,
+  0xf,0x5b,0x22, 0xf,0x5b,0x23, 0x7,0x38,0x7e, 0x7,0x39,0x24,
+  0x7,0x39,0x22, 0x5,0x5c,0x23, 0x7,0x39,0x21, 0xf,0x55,0x69,
+  0x7,0x40,0x4f, 0x4,0x5b,0x62, 0x7,0x40,0x4e, 0x5,0x62,0x4e,
+  0x7,0x40,0x4b, 0x7,0x40,0x53, 0x7,0x40,0x51, 0x7,0x40,0x4c,
+  0x4,0x5b,0x63, 0x5,0x62,0x4f, 0x5,0x62,0x50, 0x4,0x5b,0x61,
+  0x7,0x40,0x54, 0x7,0x40,0x4a, 0x7,0x40,0x52, 0xf,0x5f,0x44,
+  0xf,0x5f,0x46, 0xf,0x5f,0x45, 0xf,0x5f,0x47, 0xf,0x5f,0x48,
+  0xf,0x5f,0x49, 0xf,0x5f,0x4a, 0xf,0x5f,0x4c, 0xf,0x5f,0x4d,
+  0x7,0x40,0x50, 0x7,0x42,0x22, 0x7,0x40,0x55, 0x7,0x40,0x4d,
+  0x7,0x40,0x49, 0x7,0x39,0x2a, 0xf,0x61,0x76, 0xf,0x5a,0x74,
+  0xf,0x5a,0x75, 0x7,0x47,0x6c, 0x5,0x68,0x37, 0x4,0x60,0x21,
+  0x7,0x47,0x6d, 0x4,0x60,0x22, 0x7,0x47,0x6a, 0xf,0x62,0x74,
+  0xf,0x62,0x75, 0xf,0x62,0x76, 0xf,0x62,0x77, 0x7,0x47,0x69,
+  0x7,0x47,0x67, 0x7,0x47,0x6b, 0xf,0x5f,0x4b, 0x7,0x47,0x68,
+  0xf,0x65,0x45, 0x5,0x6c,0x4f, 0x7,0x4e,0x30, 0x7,0x4e,0x33,
+  0x7,0x4e,0x3b, 0x5,0x6c,0x4e, 0x5,0x6c,0x4d, 0x5,0x6c,0x51,
+  0x4,0x60,0x23, 0x7,0x4e,0x32, 0x7,0x4e,0x38, 0x4,0x63,0x62,
+  0x4,0x63,0x60, 0x7,0x4e,0x3c, 0x7,0x4e,0x31, 0x7,0x4e,0x35,
+  0x7,0x4e,0x37, 0xf,0x65,0x48, 0x7,0x4e,0x34, 0xf,0x65,0x46,
+  0xf,0x65,0x47, 0xf,0x65,0x4a, 0xf,0x65,0x4b, 0xf,0x65,0x4c,
+  0xf,0x65,0x4d, 0xf,0x65,0x4e, 0x7,0x4e,0x39, 0x7,0x4e,0x36,
+  0x7,0x4e,0x3a, 0x5,0x6c,0x50, 0x7,0x53,0x64, 0x4,0x63,0x61,
+  0x7,0x53,0x66, 0x5,0x70,0x43, 0x4,0x66,0x4f, 0x7,0x53,0x67,
+  0x7,0x53,0x62, 0x7,0x53,0x63, 0x7,0x53,0x65, 0xf,0x67,0x71,
+  0xf,0x67,0x72, 0xf,0x67,0x73, 0xf,0x67,0x74, 0xf,0x67,0x75,
+  0x7,0x58,0x36, 0x5,0x73,0x56, 0x4,0x6a,0x4f, 0x7,0x58,0x37,
+  0x7,0x58,0x38, 0x7,0x58,0x34, 0xf,0x69,0x56, 0xf,0x69,0x57,
+  0xf,0x69,0x58, 0x7,0x58,0x35, 0x7,0x5b,0x24, 0x7,0x5b,0x6e,
+  0x7,0x5b,0x70, 0x7,0x5b,0x6d, 0x7,0x5c,0x44, 0x7,0x5b,0x6f,
+  0x7,0x5b,0x6c, 0x7,0x5b,0x6b, 0x5,0x76,0x23, 0xf,0x6a,0x60,
+  0x7,0x5e,0x78, 0xf,0x6a,0x5f, 0x5,0x77,0x68, 0x7,0x61,0x21,
+  0x7,0x60,0x7c, 0x7,0x60,0x7e, 0x7,0x61,0x38, 0x7,0x60,0x7b,
+  0x7,0x60,0x7d, 0x7,0x62,0x3a, 0x5,0x7a,0x6b, 0xf,0x6c,0x64,
+  0xf,0x6c,0x65, 0x7,0x64,0x4d, 0x7,0x64,0x4c, 0x7,0x64,0x4e,
+  0x7,0x65,0x37, 0x7,0x66,0x34, 0x5,0x21,0x4b, 0x6,0x23,0x30,
+  0x6,0x28,0x4d, 0x6,0x28,0x4e, 0x5,0x24,0x58, 0x6,0x2c,0x62,
+  0x6,0x2c,0x61, 0x6,0x2c,0x63, 0xf,0x27,0x78, 0xf,0x27,0x79,
+  0x6,0x32,0x4e, 0x5,0x2a,0x2b, 0x5,0x2a,0x29, 0x6,0x32,0x4f,
+  0x5,0x2a,0x2a, 0x6,0x32,0x51, 0xf,0x2c,0x24, 0xf,0x2c,0x25,
+  0xf,0x2c,0x26, 0x6,0x32,0x4d, 0x6,0x32,0x50, 0x5,0x2e,0x51,
+  0x5,0x2e,0x50, 0xf,0x30,0x73, 0x6,0x41,0x57, 0x6,0x41,0x56,
+  0x6,0x41,0x58, 0xf,0x36,0x51, 0x4,0x38,0x6a, 0x6,0x4b,0x22,
+  0x6,0x47,0x43, 0x6,0x4d,0x5d, 0x6,0x54,0x68, 0x6,0x54,0x69,
+  0x6,0x5e,0x53, 0x5,0x47,0x23, 0x6,0x5e,0x56, 0x6,0x5e,0x55,
+  0x6,0x5e,0x54, 0x7,0x24,0x7a, 0x5,0x4e,0x2f, 0x7,0x24,0x77,
+  0x7,0x24,0x79, 0x7,0x24,0x78, 0x7,0x2f,0x69, 0x7,0x2f,0x6a,
+  0x5,0x55,0x3f, 0x4,0x56,0x65, 0xf,0x5b,0x24, 0xf,0x5b,0x25,
+  0xf,0x5b,0x26, 0xf,0x55,0x73, 0x7,0x40,0x56, 0x5,0x68,0x38,
+  0xf,0x65,0x4f, 0xf,0x65,0x50, 0x7,0x4e,0x3d, 0x7,0x53,0x68,
+  0x7,0x5b,0x71, 0x7,0x5e,0x79, 0x7,0x61,0x22, 0xf,0x24,0x73,
+  0xf,0x24,0x74, 0x6,0x2c,0x64, 0x6,0x2c,0x65, 0x6,0x41,0x59,
+  0x6,0x41,0x5a, 0xf,0x3d,0x22, 0xf,0x3d,0x23, 0x6,0x54,0x6a,
+  0xf,0x49,0x65, 0x5,0x47,0x24, 0x5,0x55,0x40, 0xf,0x21,0x68,
+  0x6,0x2b,0x6b, 0x5,0x2a,0x2c, 0x4,0x2a,0x2b, 0x4,0x2d,0x77,
+  0xf,0x30,0x74, 0x5,0x31,0x6c, 0x6,0x4b,0x23, 0x6,0x54,0x6c,
+  0x6,0x54,0x6b, 0x5,0x55,0x41, 0x7,0x24,0x7b, 0x7,0x24,0x7c,
+  0x5,0x55,0x42, 0x6,0x22,0x25, 0x6,0x23,0x31, 0x6,0x25,0x35,
+  0x6,0x28,0x4f, 0x4,0x27,0x2d, 0x6,0x2c,0x67, 0x6,0x2c,0x66,
+  0x6,0x32,0x52, 0x4,0x2a,0x2d, 0x6,0x32,0x53, 0x6,0x32,0x54,
+  0x6,0x39,0x3e, 0x4,0x2d,0x78, 0xf,0x30,0x75, 0x6,0x39,0x3d,
+  0x6,0x41,0x5b, 0x6,0x41,0x5e, 0x6,0x41,0x5d, 0x4,0x32,0x78,
+  0x6,0x41,0x5c, 0xf,0x36,0x52, 0xf,0x36,0x53, 0x6,0x4b,0x28,
+  0x6,0x4b,0x24, 0x6,0x4b,0x26, 0x6,0x4b,0x27, 0x6,0x4b,0x29,
+  0x6,0x4b,0x25, 0x6,0x4d,0x58, 0x6,0x54,0x6d, 0x6,0x54,0x6e,
+  0xf,0x43,0x3f, 0x6,0x5e,0x58, 0x6,0x5e,0x59, 0xf,0x49,0x66,
+  0x7,0x24,0x7d, 0xf,0x50,0x3e, 0x7,0x24,0x7e, 0x5,0x55,0x43,
+  0x5,0x62,0x51, 0x4,0x51,0x2c, 0x7,0x2f,0x6b, 0x7,0x25,0x21,
+  0x5,0x55,0x44, 0x7,0x39,0x2b, 0x7,0x39,0x2c, 0x5,0x5c,0x25,
+  0x7,0x47,0x70, 0x5,0x6c,0x52, 0x7,0x58,0x39, 0x7,0x5b,0x72,
+  0x7,0x63,0x58, 0x5,0x7b,0x42, 0x7,0x64,0x4f, 0xf,0x21,0x69,
+  0x6,0x28,0x51, 0x5,0x24,0x59, 0x6,0x28,0x50, 0x4,0x27,0x2e,
+  0x6,0x2c,0x6b, 0x6,0x2c,0x6a, 0x6,0x2c,0x69, 0x6,0x2c,0x68,
+  0x6,0x32,0x56, 0x6,0x32,0x55, 0x5,0x2a,0x2d, 0x6,0x32,0x57,
+  0x5,0x2a,0x2e, 0x5,0x2e,0x52, 0x4,0x2d,0x79, 0x4,0x2d,0x7b,
+  0x6,0x39,0x41, 0x6,0x39,0x3f, 0x5,0x33,0x46, 0x5,0x33,0x47,
+  0x6,0x41,0x5f, 0x6,0x41,0x62, 0x6,0x41,0x60, 0x6,0x4b,0x2b,
+  0x4,0x38,0x6d, 0x6,0x4b,0x2e, 0x6,0x4b,0x2a, 0x6,0x4b,0x2c,
+  0x6,0x4b,0x2d, 0x5,0x39,0x73, 0x5,0x39,0x76, 0x5,0x39,0x74,
+  0x5,0x39,0x75, 0x4,0x38,0x6e, 0x5,0x40,0x38, 0x6,0x54,0x6f,
+  0x4,0x3e,0x4d, 0x5,0x40,0x36, 0x5,0x40,0x37, 0x6,0x54,0x70,
+  0xf,0x3d,0x24, 0x5,0x47,0x25, 0x6,0x5e,0x5b, 0x6,0x5e,0x5c,
+  0x6,0x5e,0x5a, 0xf,0x49,0x67, 0x5,0x4e,0x32, 0x7,0x25,0x25,
+  0x5,0x4e,0x31, 0x5,0x4e,0x30, 0x5,0x4e,0x33, 0x7,0x25,0x24,
+  0x7,0x25,0x22, 0x5,0x4e,0x34, 0x7,0x25,0x23, 0x5,0x55,0x46,
+  0x5,0x55,0x47, 0x5,0x55,0x48, 0x7,0x2f,0x6d, 0x5,0x55,0x45,
+  0x7,0x2f,0x6c, 0x5,0x5c,0x26, 0x4,0x56,0x66, 0xf,0x5b,0x27,
+  0xf,0x5b,0x28, 0x5,0x62,0x53, 0x5,0x62,0x52, 0x5,0x6c,0x53,
+  0x7,0x53,0x69, 0x5,0x23,0x68, 0x6,0x39,0x43, 0x6,0x39,0x42,
+  0x4,0x38,0x6f, 0x6,0x4b,0x2f, 0xf,0x3d,0x25, 0xf,0x3d,0x26,
+  0x6,0x54,0x71, 0x6,0x5e,0x5d, 0x5,0x21,0x75, 0xf,0x22,0x63,
+  0x6,0x25,0x36, 0xf,0x22,0x62, 0x6,0x28,0x53, 0xf,0x24,0x75,
+  0x6,0x28,0x52, 0x6,0x28,0x54, 0x5,0x26,0x79, 0x5,0x27,0x22,
+  0x5,0x26,0x78, 0x5,0x26,0x7b, 0x5,0x26,0x76, 0x5,0x26,0x7d,
+  0x6,0x2c,0x6e, 0x4,0x27,0x30, 0x5,0x27,0x21, 0x6,0x2c,0x6c,
+  0x5,0x26,0x7e, 0x5,0x27,0x23, 0x5,0x26,0x7c, 0x6,0x2c,0x6d,
+  0xf,0x27,0x7b, 0xf,0x27,0x7c, 0xf,0x27,0x7e, 0xf,0x28,0x21,
+  0x5,0x26,0x7a, 0x6,0x2c,0x6f, 0x6,0x2c,0x70, 0x5,0x2a,0x32,
+  0x5,0x2a,0x30, 0x5,0x2a,0x2f, 0x6,0x32,0x5f, 0x6,0x32,0x5c,
+  0x5,0x2a,0x33, 0x5,0x2a,0x31, 0x4,0x2a,0x30, 0x6,0x32,0x5a,
+  0x6,0x32,0x59, 0xf,0x2c,0x28, 0xf,0x2c,0x29, 0x6,0x32,0x5b,
+  0x6,0x32,0x5e, 0x6,0x32,0x58, 0x6,0x32,0x5d, 0x5,0x2a,0x34,
+  0xf,0x27,0x7d, 0x5,0x2e,0x58, 0x5,0x2e,0x54, 0x5,0x2e,0x56,
+  0x5,0x2e,0x57, 0x5,0x2e,0x55, 0x6,0x39,0x44, 0x5,0x2e,0x59,
+  0x4,0x32,0x7b, 0x6,0x41,0x67, 0x6,0x41,0x68, 0x5,0x33,0x49,
+  0x5,0x39,0x77, 0x4,0x32,0x7d, 0x4,0x32,0x7c, 0x5,0x33,0x4b,
+  0x5,0x33,0x4c, 0xf,0x36,0x54, 0xf,0x36,0x55, 0x6,0x41,0x65,
+  0x6,0x41,0x69, 0x6,0x41,0x64, 0x5,0x33,0x48, 0x4,0x38,0x71,
+  0x4,0x38,0x74, 0x5,0x39,0x7d, 0x6,0x4b,0x34, 0x5,0x39,0x79,
+  0x5,0x39,0x7b, 0x5,0x39,0x78, 0x6,0x4b,0x32, 0x6,0x4b,0x35,
+  0xf,0x3d,0x27, 0xf,0x3d,0x28, 0x6,0x4b,0x33, 0x6,0x4b,0x30,
+  0x6,0x4b,0x31, 0x5,0x39,0x7a, 0x5,0x39,0x7c, 0x5,0x33,0x4a,
+  0xf,0x3d,0x29, 0x6,0x4b,0x36, 0x5,0x47,0x2b, 0x5,0x40,0x3e,
+  0x5,0x40,0x3c, 0x4,0x3e,0x50, 0x6,0x5e,0x64, 0x6,0x54,0x73,
+  0x5,0x47,0x26, 0x6,0x54,0x72, 0x6,0x54,0x75, 0x6,0x54,0x74,
+  0xf,0x43,0x40, 0xf,0x43,0x41, 0x5,0x40,0x3d, 0x6,0x54,0x77,
+  0x5,0x40,0x3b, 0x4,0x44,0x61, 0x5,0x47,0x2d, 0x5,0x47,0x28,
+  0x5,0x47,0x2e, 0x5,0x47,0x2c, 0x6,0x5e,0x5f, 0x6,0x5e,0x63,
+  0x5,0x47,0x27, 0x5,0x47,0x2a, 0x6,0x5e,0x67, 0x6,0x5e,0x62,
+  0x6,0x5e,0x61, 0x5,0x40,0x3a, 0x6,0x5e,0x66, 0xf,0x49,0x68,
+  0xf,0x49,0x69, 0xf,0x49,0x6a, 0xf,0x49,0x6b, 0x5,0x47,0x2f,
+  0x5,0x47,0x29, 0x6,0x5e,0x60, 0x6,0x54,0x76, 0x6,0x5e,0x65,
+  0xf,0x49,0x6c, 0x5,0x47,0x30, 0x5,0x4e,0x36, 0x7,0x25,0x26,
+  0x4,0x4a,0x74, 0x5,0x4e,0x39, 0x5,0x4e,0x3a, 0x5,0x4e,0x38,
+  0x4,0x4a,0x70, 0x5,0x4e,0x35, 0xf,0x50,0x3f, 0x7,0x25,0x28,
+  0x7,0x25,0x27, 0x7,0x2f,0x70, 0x5,0x55,0x49, 0x5,0x55,0x4e,
+  0x7,0x2f,0x71, 0x5,0x55,0x4b, 0x5,0x55,0x4d, 0x5,0x55,0x4a,
+  0x5,0x55,0x4c, 0x7,0x2f,0x6f, 0x7,0x39,0x30, 0x7,0x39,0x2e,
+  0x5,0x5c,0x27, 0x4,0x56,0x68, 0x4,0x56,0x69, 0x7,0x2f,0x6e,
+  0x7,0x39,0x2f, 0x7,0x40,0x57, 0x7,0x40,0x58, 0x5,0x68,0x3a,
+  0x7,0x53,0x6a, 0x7,0x47,0x72, 0x7,0x47,0x73, 0x7,0x47,0x71,
+  0x5,0x68,0x39, 0x7,0x4e,0x3f, 0x5,0x6c,0x54, 0x5,0x6c,0x55,
+  0x5,0x70,0x45, 0x7,0x53,0x6c, 0x5,0x70,0x44, 0x5,0x70,0x46,
+  0x7,0x58,0x3a, 0x5,0x73,0x59, 0x7,0x5b,0x74, 0x5,0x73,0x58,
+  0x7,0x5b,0x75, 0x7,0x5b,0x73, 0x5,0x77,0x69, 0x7,0x61,0x23,
+  0xf,0x6c,0x31, 0x7,0x64,0x50, 0xf,0x21,0x3d, 0x6,0x23,0x32,
+  0x5,0x21,0x77, 0x5,0x21,0x78, 0x5,0x22,0x78, 0x5,0x22,0x7b,
+  0x5,0x22,0x77, 0x4,0x23,0x28, 0x5,0x22,0x7a, 0x6,0x25,0x37,
+  0x5,0x22,0x79, 0x5,0x24,0x5e, 0x5,0x24,0x5f, 0x4,0x24,0x5b,
+  0x4,0x27,0x37, 0x6,0x28,0x58, 0x4,0x24,0x5a, 0x5,0x24,0x5a,
+  0x6,0x28,0x5e, 0x5,0x24,0x5b, 0x6,0x28,0x5b, 0x5,0x27,0x2f,
+  0x6,0x2c,0x72, 0x4,0x24,0x57, 0x5,0x24,0x5d, 0x5,0x24,0x5c,
+  0x6,0x28,0x5a, 0x6,0x28,0x59, 0x6,0x2c,0x73, 0xf,0x24,0x77,
+  0x6,0x28,0x57, 0x6,0x28,0x5c, 0x6,0x28,0x5d, 0x6,0x28,0x56,
+  0x4,0x24,0x58, 0x6,0x2c,0x7a, 0x5,0x27,0x28, 0x6,0x2c,0x7b,
+  0x5,0x27,0x2c, 0x6,0x2c,0x79, 0x6,0x2c,0x7c, 0x5,0x27,0x27,
+  0x5,0x27,0x2a, 0x6,0x2c,0x78, 0x5,0x27,0x2d, 0x5,0x27,0x25,
+  0x5,0x27,0x29, 0x5,0x27,0x24, 0x6,0x2c,0x77, 0x4,0x27,0x38,
+  0x5,0x2a,0x36, 0x6,0x28,0x55, 0x6,0x32,0x60, 0x5,0x27,0x2b,
+  0x6,0x2c,0x76, 0xf,0x28,0x22, 0x6,0x2c,0x7d, 0x6,0x2c,0x74,
+  0x4,0x27,0x35, 0x5,0x2a,0x35, 0x5,0x2a,0x3e, 0x6,0x32,0x68,
+  0x5,0x2a,0x39, 0x6,0x39,0x4b, 0x5,0x2a,0x3d, 0x6,0x32,0x61,
+  0x6,0x39,0x4c, 0x6,0x41,0x6c, 0x5,0x2a,0x3c, 0x4,0x2a,0x31,
+  0x5,0x2a,0x3b, 0x6,0x32,0x64, 0x5,0x2a,0x3a, 0x6,0x32,0x66,
+  0x4,0x2a,0x33, 0x5,0x2a,0x40, 0x6,0x32,0x63, 0x5,0x27,0x26,
+  0x5,0x2a,0x37, 0x5,0x2a,0x38, 0xf,0x2c,0x2a, 0xf,0x2c,0x2c,
+  0xf,0x2c,0x2d, 0x6,0x32,0x65, 0xf,0x2c,0x2b, 0x5,0x2a,0x3f,
+  0x6,0x39,0x4e, 0x5,0x2e,0x5e, 0x4,0x33,0x21, 0x6,0x39,0x49,
+  0x6,0x39,0x4d, 0x4,0x2e,0x25, 0x5,0x2e,0x5b, 0x5,0x2e,0x60,
+  0x5,0x2e,0x5d, 0x4,0x2e,0x23, 0x6,0x39,0x45, 0x6,0x39,0x4a,
+  0xf,0x30,0x77, 0xf,0x30,0x78, 0x6,0x39,0x48, 0x5,0x2e,0x5a,
+  0x4,0x2e,0x24, 0x6,0x39,0x47, 0x6,0x39,0x4f, 0x5,0x2e,0x5f,
+  0x6,0x39,0x46, 0x5,0x33,0x4e, 0xf,0x30,0x76, 0x4,0x33,0x24,
+  0x6,0x41,0x6e, 0x5,0x33,0x55, 0x5,0x39,0x7e, 0x5,0x33,0x52,
+  0x6,0x41,0x70, 0x6,0x41,0x73, 0x5,0x33,0x4f, 0x6,0x41,0x6f,
+  0x6,0x4b,0x3b, 0x4,0x33,0x26, 0x5,0x33,0x53, 0x6,0x4b,0x38,
+  0x6,0x4b,0x37, 0x5,0x33,0x50, 0x6,0x4b,0x39, 0x6,0x41,0x71,
+  0x6,0x41,0x72, 0x6,0x41,0x74, 0x6,0x4b,0x3a, 0x5,0x3a,0x28,
+  0x6,0x54,0x7b, 0x5,0x3a,0x26, 0x5,0x40,0x3f, 0x4,0x38,0x75,
+  0x5,0x3a,0x22, 0x6,0x4b,0x44, 0x5,0x40,0x40, 0x5,0x3a,0x27,
+  0x4,0x38,0x76, 0x5,0x3a,0x25, 0x5,0x3a,0x24, 0x4,0x38,0x78,
+  0x6,0x4b,0x3f, 0x4,0x3e,0x51, 0x5,0x3a,0x21, 0x6,0x4b,0x3c,
+  0x6,0x4b,0x3e, 0x4,0x3e,0x57, 0xf,0x3d,0x2a, 0xf,0x3d,0x2b,
+  0x6,0x54,0x79, 0x6,0x52,0x72, 0x6,0x54,0x7a, 0x6,0x4b,0x40,
+  0x6,0x4b,0x41, 0x6,0x4b,0x45, 0x6,0x4b,0x3d, 0x5,0x3a,0x23,
+  0xf,0x43,0x43, 0x4,0x3e,0x56, 0x5,0x40,0x48, 0x6,0x55,0x22,
+  0x5,0x40,0x47, 0x4,0x3e,0x55, 0x6,0x55,0x27, 0x5,0x40,0x4b,
+  0x6,0x55,0x24, 0x6,0x54,0x7e, 0x6,0x54,0x7d, 0x6,0x55,0x26,
+  0x5,0x40,0x46, 0x5,0x40,0x44, 0x5,0x40,0x43, 0x6,0x55,0x21,
+  0x5,0x40,0x42, 0x6,0x55,0x28, 0x5,0x40,0x4a, 0x5,0x40,0x41,
+  0x4,0x3e,0x58, 0x5,0x40,0x49, 0x6,0x55,0x25, 0xf,0x43,0x45,
+  0xf,0x43,0x46, 0xf,0x49,0x70, 0xf,0x50,0x40, 0x5,0x40,0x45,
+  0x6,0x55,0x23, 0x5,0x40,0x4c, 0x6,0x5e,0x6d, 0x5,0x47,0x3a,
+  0x6,0x5e,0x69, 0x7,0x25,0x29, 0x5,0x47,0x37, 0x4,0x44,0x6b,
+  0x5,0x47,0x35, 0x5,0x47,0x33, 0x6,0x5e,0x6c, 0x5,0x47,0x3b,
+  0x5,0x47,0x36, 0x5,0x47,0x34, 0x6,0x5e,0x70, 0x4,0x44,0x6c,
+  0x5,0x47,0x31, 0xf,0x49,0x6d, 0x7,0x25,0x2a, 0xf,0x49,0x6f,
+  0x6,0x5e,0x6b, 0x6,0x5e,0x68, 0x6,0x5e,0x6a, 0x6,0x5e,0x6f,
+  0x4,0x4a,0x7d, 0x5,0x47,0x3d, 0x5,0x47,0x3c, 0x5,0x47,0x39,
+  0x5,0x47,0x38, 0x6,0x5e,0x71, 0x5,0x47,0x32, 0x7,0x25,0x31,
+  0x4,0x4a,0x78, 0x4,0x4a,0x79, 0x7,0x25,0x30, 0x5,0x4e,0x3c,
+  0x7,0x25,0x34, 0x7,0x2f,0x73, 0x5,0x4e,0x41, 0x7,0x25,0x2f,
+  0x7,0x25,0x2b, 0x5,0x4e,0x3e, 0x5,0x4e,0x45, 0x5,0x4e,0x3b,
+  0x5,0x4e,0x44, 0x5,0x4e,0x43, 0x5,0x4e,0x3d, 0x5,0x55,0x4f,
+  0x7,0x2f,0x72, 0x5,0x4e,0x3f, 0x5,0x4e,0x40, 0x5,0x4e,0x46,
+  0x7,0x25,0x2c, 0x7,0x25,0x2d, 0xf,0x55,0x75, 0x5,0x55,0x50,
+  0x7,0x25,0x2e, 0x7,0x25,0x33, 0xf,0x49,0x6e, 0x4,0x51,0x33,
+  0x5,0x4e,0x42, 0x5,0x55,0x57, 0x4,0x51,0x35, 0x5,0x55,0x55,
+  0x5,0x55,0x51, 0x5,0x55,0x52, 0x7,0x2f,0x79, 0x4,0x51,0x31,
+  0x7,0x2f,0x78, 0x7,0x2f,0x77, 0x5,0x5c,0x28, 0x4,0x51,0x36,
+  0x5,0x55,0x53, 0x5,0x55,0x56, 0x7,0x2f,0x75, 0x7,0x39,0x32,
+  0x4,0x56,0x6d, 0x7,0x39,0x31, 0x7,0x2f,0x76, 0x7,0x25,0x32,
+  0xf,0x55,0x77, 0x7,0x25,0x35, 0x5,0x55,0x54, 0x5,0x5c,0x2a,
+  0x7,0x39,0x33, 0x5,0x5c,0x29, 0x7,0x47,0x77, 0x7,0x39,0x35,
+  0x7,0x39,0x34, 0xf,0x5b,0x29, 0xf,0x5b,0x2a, 0xf,0x5b,0x2b,
+  0xf,0x5b,0x2c, 0x7,0x40,0x5d, 0x5,0x62,0x55, 0x5,0x62,0x54,
+  0x7,0x40,0x5a, 0x7,0x40,0x59, 0x7,0x40,0x5c, 0x4,0x5b,0x68,
+  0x7,0x40,0x5b, 0xf,0x5f,0x4e, 0xf,0x5f,0x4f, 0x5,0x62,0x56,
+  0x4,0x63,0x64, 0x7,0x47,0x78, 0x7,0x4e,0x40, 0x7,0x47,0x76,
+  0x7,0x47,0x74, 0x7,0x4e,0x41, 0x5,0x6c,0x56, 0x7,0x4e,0x42,
+  0x5,0x70,0x48, 0x7,0x53,0x6d, 0x5,0x70,0x47, 0x4,0x68,0x74,
+  0x5,0x70,0x49, 0x7,0x58,0x3b, 0x7,0x5b,0x76, 0x7,0x5b,0x78,
+  0x7,0x5b,0x77, 0x5,0x77,0x6a, 0x7,0x5e,0x7a, 0xf,0x6b,0x55,
+  0x7,0x61,0x24, 0x7,0x63,0x59, 0xf,0x28,0x23, 0x6,0x4b,0x46,
+  0x6,0x5e,0x72, 0x5,0x21,0x4c, 0x6,0x25,0x38, 0x6,0x23,0x33,
+  0x6,0x28,0x5f, 0x5,0x24,0x61, 0x4,0x24,0x5d, 0x4,0x24,0x5c,
+  0x6,0x28,0x61, 0x6,0x28,0x60, 0xf,0x24,0x79, 0x5,0x24,0x60,
+  0x5,0x27,0x30, 0x6,0x2d,0x25, 0x4,0x27,0x3c, 0x5,0x2a,0x41,
+  0xf,0x28,0x25, 0xf,0x28,0x26, 0xf,0x28,0x27, 0xf,0x28,0x28,
+  0xf,0x28,0x29, 0x6,0x2d,0x23, 0xf,0x2c,0x40, 0xf,0x28,0x24,
+  0x6,0x2d,0x22, 0xf,0x2c,0x3c, 0x6,0x32,0x69, 0x5,0x2a,0x45,
+  0x5,0x2a,0x42, 0x4,0x2a,0x36, 0x6,0x32,0x6b, 0x6,0x2f,0x69,
+  0xf,0x2c,0x2f, 0xf,0x2c,0x30, 0xf,0x2c,0x31, 0xf,0x2c,0x33,
+  0xf,0x2c,0x34, 0xf,0x2c,0x35, 0xf,0x2c,0x36, 0xf,0x2c,0x37,
+  0xf,0x2c,0x38, 0xf,0x2c,0x3a, 0xf,0x2c,0x3b, 0xf,0x2c,0x3d,
+  0x6,0x32,0x6a, 0x6,0x32,0x6c, 0xf,0x2c,0x3e, 0xf,0x2c,0x3f,
+  0xf,0x2c,0x2e, 0x5,0x2a,0x44, 0x5,0x2a,0x43, 0x6,0x39,0x53,
+  0x5,0x33,0x56, 0x5,0x2e,0x61, 0x4,0x2e,0x29, 0x6,0x39,0x51,
+  0x4,0x2e,0x28, 0x6,0x39,0x52, 0x6,0x39,0x54, 0xf,0x30,0x79,
+  0xf,0x30,0x7a, 0xf,0x30,0x7b, 0xf,0x30,0x7c, 0xf,0x30,0x7d,
+  0xf,0x30,0x7e, 0xf,0x31,0x21, 0xf,0x31,0x23, 0xf,0x31,0x24,
+  0xf,0x31,0x25, 0xf,0x31,0x26, 0x6,0x39,0x50, 0xf,0x36,0x63,
+  0x4,0x33,0x31, 0x6,0x39,0x55, 0x6,0x41,0x7a, 0x5,0x33,0x57,
+  0x6,0x41,0x7b, 0x4,0x33,0x32, 0x6,0x41,0x77, 0x6,0x41,0x78,
+  0x6,0x41,0x79, 0xf,0x31,0x22, 0xf,0x36,0x56, 0xf,0x36,0x58,
+  0xf,0x36,0x5c, 0xf,0x36,0x5f, 0xf,0x36,0x60, 0xf,0x36,0x61,
+  0xf,0x36,0x62, 0xf,0x36,0x64, 0xf,0x36,0x5d, 0x6,0x41,0x7c,
+  0xf,0x36,0x5b, 0xf,0x36,0x5a, 0xf,0x36,0x5e, 0x5,0x33,0x58,
+  0x6,0x41,0x76, 0xf,0x3d,0x3e, 0xf,0x3d,0x34, 0x6,0x4b,0x4b,
+  0x5,0x3a,0x2b, 0x5,0x3a,0x2a, 0x5,0x3a,0x2c, 0x6,0x55,0x29,
+  0x4,0x3e,0x5a, 0x5,0x40,0x4d, 0xf,0x3d,0x38, 0x4,0x38,0x7c,
+  0x6,0x4b,0x49, 0x6,0x4b,0x4c, 0xf,0x3d,0x2c, 0xf,0x3d,0x2d,
+  0xf,0x3d,0x2e, 0xf,0x3d,0x2f, 0xf,0x3d,0x30, 0xf,0x3d,0x32,
+  0xf,0x3d,0x35, 0xf,0x3d,0x36, 0xf,0x3d,0x37, 0xf,0x3d,0x39,
+  0xf,0x3d,0x3a, 0xf,0x3d,0x3f, 0xf,0x43,0x50, 0x6,0x4b,0x4e,
+  0x6,0x55,0x32, 0x6,0x4b,0x4d, 0xf,0x3d,0x40, 0x6,0x4b,0x48,
+  0x6,0x4b,0x4a, 0x6,0x55,0x2a, 0xf,0x3d,0x33, 0xf,0x3d,0x3d,
+  0xf,0x3d,0x31, 0x5,0x3a,0x29, 0x6,0x55,0x2b, 0x6,0x55,0x30,
+  0x4,0x3e,0x5b, 0x6,0x55,0x31, 0x6,0x55,0x2f, 0x6,0x55,0x2e,
+  0x5,0x47,0x3e, 0xf,0x43,0x47, 0xf,0x43,0x4a, 0xf,0x43,0x4c,
+  0xf,0x43,0x4d, 0xf,0x43,0x4e, 0xf,0x43,0x4f, 0xf,0x43,0x51,
+  0xf,0x43,0x52, 0xf,0x43,0x53, 0xf,0x43,0x54, 0xf,0x43,0x55,
+  0xf,0x43,0x57, 0xf,0x43,0x58, 0xf,0x43,0x5a, 0xf,0x43,0x5b,
+  0xf,0x43,0x5c, 0xf,0x43,0x5d, 0xf,0x43,0x5e, 0xf,0x43,0x5f,
+  0xf,0x43,0x60, 0xf,0x43,0x61, 0xf,0x43,0x62, 0xf,0x43,0x63,
+  0xf,0x43,0x65, 0x6,0x55,0x2c, 0x5,0x40,0x4f, 0x5,0x3a,0x2e,
+  0xf,0x43,0x4b, 0xf,0x43,0x48, 0x5,0x47,0x3f, 0x6,0x55,0x2d,
+  0xf,0x43,0x59, 0xf,0x49,0x7a, 0xf,0x49,0x7b, 0xf,0x4a,0x26,
+  0x7,0x25,0x38, 0x6,0x5e,0x74, 0x5,0x47,0x41, 0x7,0x25,0x36,
+  0x4,0x44,0x6d, 0x5,0x47,0x40, 0x6,0x5e,0x75, 0x6,0x5e,0x77,
+  0x6,0x5e,0x76, 0x6,0x5e,0x73, 0xf,0x49,0x71, 0xf,0x49,0x72,
+  0xf,0x49,0x73, 0xf,0x49,0x74, 0xf,0x49,0x75, 0xf,0x49,0x77,
+  0xf,0x49,0x78, 0xf,0x49,0x79, 0xf,0x49,0x7c, 0xf,0x49,0x7d,
+  0xf,0x49,0x7e, 0xf,0x4a,0x21, 0xf,0x4a,0x22, 0xf,0x4a,0x24,
+  0xf,0x4a,0x25, 0xf,0x4a,0x27, 0xf,0x4a,0x28, 0xf,0x4a,0x29,
+  0x5,0x47,0x42, 0x3,0x48,0x26, 0x7,0x25,0x39, 0xf,0x4a,0x23,
+  0x7,0x25,0x40, 0x4,0x4a,0x7e, 0x5,0x4e,0x47, 0x7,0x2f,0x7b,
+  0x7,0x25,0x3a, 0x7,0x2f,0x7a, 0x7,0x25,0x3c, 0x7,0x25,0x3f,
+  0x7,0x25,0x41, 0x7,0x25,0x42, 0xf,0x50,0x41, 0xf,0x50,0x42,
+  0xf,0x50,0x43, 0xf,0x50,0x44, 0xf,0x50,0x45, 0xf,0x50,0x46,
+  0xf,0x50,0x48, 0xf,0x50,0x49, 0xf,0x50,0x4a, 0xf,0x50,0x4b,
+  0xf,0x50,0x4c, 0x7,0x25,0x3d, 0x5,0x4e,0x48, 0x7,0x25,0x3b,
+  0x5,0x4e,0x49, 0xf,0x55,0x7c, 0xf,0x56,0x2e, 0xf,0x50,0x47,
+  0x7,0x30,0x22, 0x7,0x25,0x3e, 0x5,0x55,0x58, 0x5,0x55,0x5b,
+  0x5,0x55,0x59, 0x4,0x51,0x3b, 0x7,0x30,0x24, 0x7,0x2f,0x7d,
+  0x7,0x2f,0x7e, 0x7,0x2f,0x7c, 0x4,0x51,0x3c, 0x7,0x30,0x21,
+  0xf,0x55,0x78, 0xf,0x55,0x79, 0xf,0x55,0x7b, 0xf,0x55,0x7d,
+  0xf,0x56,0x23, 0xf,0x56,0x24, 0xf,0x56,0x25, 0xf,0x56,0x26,
+  0xf,0x56,0x27, 0xf,0x56,0x29, 0xf,0x56,0x2d, 0xf,0x56,0x2f,
+  0x7,0x30,0x25, 0x7,0x30,0x23, 0x7,0x39,0x36, 0xf,0x56,0x30,
+  0xf,0x56,0x21, 0xf,0x56,0x28, 0x5,0x55,0x5c, 0x5,0x55,0x5a,
+  0xf,0x56,0x2c, 0x7,0x39,0x3b, 0x7,0x39,0x3d, 0x5,0x5c,0x2d,
+  0x5,0x5c,0x2b, 0x7,0x40,0x5e, 0x7,0x39,0x39, 0x4,0x5b,0x6a,
+  0x4,0x56,0x6e, 0x4,0x56,0x70, 0x7,0x39,0x38, 0xf,0x5b,0x2e,
+  0xf,0x5b,0x2f, 0xf,0x5b,0x30, 0xf,0x5b,0x31, 0xf,0x5b,0x32,
+  0xf,0x5b,0x33, 0xf,0x5b,0x34, 0xf,0x5b,0x35, 0x5,0x5c,0x2c,
+  0x7,0x39,0x3a, 0x7,0x39,0x3c, 0x7,0x39,0x37, 0x7,0x40,0x5f,
+  0x5,0x68,0x3c, 0x4,0x5b,0x6b, 0x5,0x62,0x57, 0x4,0x60,0x26,
+  0x7,0x40,0x60, 0x4,0x60,0x28, 0xf,0x5f,0x51, 0xf,0x5f,0x53,
+  0xf,0x5f,0x54, 0xf,0x5f,0x55, 0xf,0x5f,0x57, 0xf,0x5f,0x59,
+  0xf,0x5f,0x5a, 0xf,0x5f,0x5b, 0xf,0x5f,0x5c, 0xf,0x5f,0x5f,
+  0x7,0x40,0x61, 0x7,0x40,0x62, 0xf,0x5f,0x50, 0xf,0x5f,0x52,
+  0xf,0x5f,0x58, 0xf,0x63,0x23, 0x7,0x47,0x7c, 0x7,0x47,0x7b,
+  0x5,0x68,0x3e, 0x7,0x47,0x7a, 0x7,0x4e,0x43, 0x5,0x68,0x3d,
+  0x7,0x47,0x79, 0xf,0x62,0x7c, 0xf,0x62,0x7e, 0xf,0x63,0x21,
+  0xf,0x63,0x22, 0x4,0x60,0x29, 0xf,0x62,0x79, 0xf,0x62,0x7a,
+  0xf,0x62,0x7d, 0x7,0x53,0x6f, 0x5,0x6c,0x57, 0x4,0x66,0x52,
+  0xf,0x65,0x52, 0xf,0x65,0x53, 0xf,0x65,0x54, 0xf,0x65,0x55,
+  0x7,0x4e,0x44, 0x7,0x53,0x6e, 0xf,0x5f,0x5e, 0x4,0x66,0x51,
+  0x7,0x55,0x7c, 0x4,0x66,0x53, 0x7,0x58,0x3c, 0xf,0x67,0x76,
+  0x7,0x5b,0x79, 0x4,0x6a,0x52, 0xf,0x69,0x59, 0xf,0x69,0x5a,
+  0x5,0x76,0x24, 0xf,0x6a,0x61, 0xf,0x6a,0x63, 0xf,0x6b,0x56,
+  0xf,0x6a,0x62, 0x5,0x79,0x31, 0x7,0x61,0x26, 0x7,0x61,0x25,
+  0xf,0x6c,0x32, 0x5,0x7a,0x2c, 0x4,0x6e,0x34, 0x6,0x2d,0x26,
+  0x5,0x2a,0x47, 0x5,0x2a,0x46, 0x6,0x32,0x6d, 0xf,0x2c,0x41,
+  0x6,0x32,0x6e, 0x6,0x39,0x56, 0x5,0x2e,0x63, 0x5,0x2e,0x64,
+  0x6,0x39,0x57, 0x6,0x39,0x58, 0x4,0x33,0x36, 0x5,0x33,0x59,
+  0x5,0x33,0x5a, 0xf,0x36,0x65, 0x5,0x3a,0x2f, 0x5,0x3a,0x30,
+  0x6,0x4b,0x4f, 0xf,0x3d,0x41, 0x6,0x4b,0x50, 0x4,0x3e,0x5c,
+  0x5,0x40,0x50, 0x5,0x40,0x51, 0xf,0x43,0x66, 0x7,0x25,0x45,
+  0x6,0x5e,0x78, 0x5,0x47,0x43, 0xf,0x4a,0x2a, 0x5,0x47,0x44,
+  0x7,0x25,0x44, 0x7,0x30,0x26, 0x4,0x51,0x3d, 0x5,0x4e,0x4a,
+  0xf,0x50,0x4d, 0x7,0x25,0x43, 0x4,0x51,0x3e, 0x7,0x39,0x3e,
+  0x5,0x62,0x58, 0xf,0x5f,0x60, 0x4,0x5b,0x6d, 0x4,0x66,0x54,
+  0x7,0x53,0x70, 0x5,0x70,0x4a, 0x5,0x76,0x25, 0x7,0x5b,0x7a,
+  0x7,0x5e,0x7b, 0x7,0x62,0x3b, 0x7,0x62,0x3c, 0x5,0x24,0x62,
+  0x5,0x27,0x31, 0x4,0x27,0x3d, 0x6,0x2d,0x27, 0x5,0x2a,0x48,
+  0x5,0x2a,0x49, 0x6,0x32,0x6f, 0x4,0x2a,0x3b, 0x4,0x2a,0x3e,
+  0x5,0x2e,0x65, 0x5,0x2e,0x67, 0x6,0x39,0x5c, 0x5,0x2e,0x66,
+  0xf,0x31,0x29, 0x6,0x39,0x5b, 0x6,0x39,0x59, 0x6,0x39,0x5a,
+  0x5,0x33,0x5d, 0x6,0x42,0x22, 0x6,0x41,0x7e, 0x6,0x42,0x24,
+  0x5,0x33,0x5e, 0x6,0x42,0x23, 0x5,0x33,0x5c, 0xf,0x36,0x66,
+  0xf,0x36,0x68, 0x4,0x39,0x22, 0x5,0x3a,0x31, 0x6,0x55,0x36,
+  0x4,0x39,0x27, 0x5,0x3a,0x34, 0x5,0x3a,0x33, 0x5,0x33,0x5f,
+  0x6,0x4b,0x52, 0x5,0x3a,0x32, 0x5,0x33,0x5b, 0x6,0x4b,0x51,
+  0x6,0x4b,0x53, 0x4,0x3e,0x64, 0x5,0x40,0x52, 0x6,0x55,0x37,
+  0x4,0x3e,0x5e, 0x5,0x40,0x53, 0x6,0x55,0x33, 0x6,0x55,0x35,
+  0x4,0x3e,0x5f, 0x6,0x55,0x38, 0xf,0x43,0x67, 0x6,0x55,0x34,
+  0x5,0x47,0x47, 0x6,0x5e,0x7c, 0x5,0x47,0x45, 0x6,0x5e,0x7a,
+  0x4,0x44,0x72, 0x6,0x5e,0x79, 0x6,0x5e,0x7b, 0x5,0x47,0x46,
+  0x4,0x4b,0x28, 0x7,0x25,0x4a, 0x5,0x4e,0x4c, 0x5,0x4e,0x4d,
+  0x5,0x4e,0x4e, 0x7,0x25,0x46, 0x7,0x25,0x47, 0x7,0x25,0x49,
+  0x7,0x30,0x27, 0x4,0x56,0x74, 0x7,0x30,0x28, 0x5,0x55,0x5f,
+  0x5,0x55,0x61, 0x4,0x51,0x40, 0x5,0x55,0x60, 0x5,0x55,0x5e,
+  0x4,0x56,0x76, 0x5,0x5c,0x2e, 0x4,0x56,0x77, 0x7,0x39,0x40,
+  0x7,0x39,0x3f, 0x5,0x4e,0x4b, 0x4,0x5b,0x70, 0x5,0x62,0x5b,
+  0x5,0x62,0x5a, 0x7,0x40,0x64, 0x5,0x62,0x59, 0x7,0x40,0x65,
+  0x5,0x68,0x3f, 0x7,0x4e,0x45, 0x7,0x53,0x71, 0x7,0x53,0x72,
+  0x4,0x66,0x56, 0x5,0x70,0x4b, 0x4,0x66,0x55, 0x7,0x53,0x73,
+  0x4,0x68,0x76, 0x7,0x58,0x3d, 0x5,0x73,0x5a, 0x5,0x76,0x28,
+  0x5,0x76,0x27, 0x7,0x5b,0x7b, 0x5,0x76,0x26, 0x7,0x5c,0x6b,
+  0x5,0x7a,0x6c, 0x7,0x65,0x38, 0x6,0x23,0x34, 0x6,0x2d,0x28,
+  0x5,0x27,0x33, 0x4,0x27,0x3e, 0xf,0x28,0x2b, 0x6,0x32,0x70,
+  0xf,0x2c,0x43, 0x5,0x40,0x54, 0x6,0x5e,0x7d, 0x7,0x30,0x2b,
+  0x7,0x30,0x29, 0x7,0x30,0x2a, 0x4,0x56,0x79, 0x7,0x40,0x66,
+  0x5,0x70,0x4c, 0x6,0x23,0x35, 0x6,0x25,0x39, 0x6,0x2d,0x29,
+  0x5,0x27,0x34, 0x6,0x2d,0x2a, 0xf,0x2c,0x44, 0xf,0x2c,0x45,
+  0x5,0x2a,0x4a, 0x4,0x2a,0x3f, 0x6,0x32,0x71, 0x6,0x34,0x79,
+  0x5,0x2e,0x69, 0x6,0x42,0x26, 0x5,0x33,0x60, 0x6,0x42,0x25,
+  0x6,0x42,0x27, 0xf,0x36,0x69, 0x6,0x55,0x39, 0x6,0x4b,0x54,
+  0xf,0x3d,0x43, 0xf,0x3d,0x42, 0x6,0x55,0x3b, 0xf,0x43,0x68,
+  0x6,0x55,0x3a, 0x6,0x5e,0x7e, 0x7,0x25,0x4b, 0xf,0x4a,0x2b,
+  0x4,0x56,0x7a, 0xf,0x5b,0x36, 0xf,0x63,0x26, 0x7,0x46,0x6e,
+  0xf,0x63,0x25, 0x7,0x53,0x74, 0x6,0x25,0x3a, 0xf,0x24,0x7a,
+  0x5,0x27,0x35, 0x6,0x2d,0x2e, 0x6,0x39,0x5d, 0x5,0x33,0x61,
+  0xf,0x4a,0x2c, 0xf,0x5f,0x61, 0x7,0x47,0x7d, 0xf,0x6c,0x33,
+  0x5,0x73,0x5b, 0x4,0x24,0x5f, 0xf,0x24,0x7c, 0xf,0x24,0x7b,
+  0x6,0x28,0x63, 0x4,0x27,0x42, 0x4,0x25,0x53, 0x4,0x27,0x3f,
+  0x5,0x27,0x36, 0x6,0x2d,0x31, 0x6,0x2d,0x30, 0x6,0x2d,0x33,
+  0xf,0x28,0x2c, 0xf,0x28,0x2d, 0x6,0x2d,0x2f, 0x4,0x2a,0x42,
+  0x5,0x2a,0x4d, 0x6,0x32,0x74, 0x5,0x2a,0x4c, 0x6,0x32,0x73,
+  0x5,0x2a,0x4b, 0x6,0x32,0x76, 0x6,0x32,0x7a, 0x6,0x32,0x77,
+  0x6,0x39,0x65, 0x5,0x2a,0x4e, 0x6,0x32,0x78, 0x6,0x32,0x75,
+  0x5,0x2e,0x6e, 0xf,0x2c,0x46, 0xf,0x2c,0x47, 0xf,0x2c,0x48,
+  0xf,0x2c,0x49, 0xf,0x2c,0x4b, 0xf,0x2c,0x4c, 0xf,0x2c,0x4d,
+  0xf,0x2c,0x4e, 0xf,0x2c,0x4f, 0x5,0x2a,0x4f, 0x5,0x2e,0x6a,
+  0x4,0x2e,0x2e, 0x5,0x2e,0x6b, 0x6,0x39,0x61, 0x6,0x39,0x60,
+  0x6,0x39,0x62, 0x6,0x39,0x5f, 0x6,0x39,0x63, 0xf,0x31,0x2a,
+  0xf,0x31,0x2b, 0xf,0x31,0x2c, 0xf,0x31,0x2e, 0x4,0x2e,0x30,
+  0xf,0x31,0x2d, 0x5,0x2e,0x6d, 0x5,0x2e,0x6c, 0x4,0x33,0x3e,
+  0x6,0x42,0x28, 0x5,0x33,0x63, 0x5,0x33,0x62, 0x4,0x33,0x3d,
+  0x6,0x42,0x2c, 0x6,0x42,0x2f, 0x6,0x42,0x2a, 0x6,0x42,0x2d,
+  0x6,0x42,0x2e, 0xf,0x36,0x6b, 0xf,0x36,0x6c, 0x6,0x42,0x2b,
+  0x6,0x42,0x29, 0x6,0x41,0x6b, 0x4,0x39,0x2b, 0x4,0x39,0x29,
+  0x4,0x39,0x2a, 0x6,0x4b,0x57, 0x6,0x4b,0x59, 0xf,0x36,0x6a,
+  0xf,0x3d,0x46, 0xf,0x3d,0x47, 0xf,0x3d,0x48, 0x6,0x4b,0x58,
+  0x4,0x39,0x2d, 0x6,0x4b,0x55, 0xf,0x3d,0x44, 0xf,0x3d,0x45,
+  0x6,0x55,0x40, 0x4,0x3e,0x6a, 0x4,0x3e,0x67, 0x6,0x55,0x3e,
+  0x6,0x55,0x3f, 0x4,0x3e,0x66, 0x5,0x40,0x56, 0x6,0x55,0x3c,
+  0x6,0x55,0x42, 0x5,0x40,0x55, 0x6,0x55,0x43, 0x6,0x55,0x44,
+  0x6,0x55,0x41, 0xf,0x43,0x69, 0xf,0x43,0x6a, 0x5,0x40,0x57,
+  0x6,0x55,0x3d, 0x6,0x5f,0x23, 0x4,0x44,0x7a, 0x5,0x47,0x4a,
+  0x6,0x5f,0x22, 0x6,0x5f,0x25, 0x6,0x5f,0x28, 0xf,0x4a,0x2d,
+  0x6,0x5f,0x26, 0x6,0x5f,0x24, 0x6,0x5f,0x27, 0x7,0x25,0x50,
+  0x4,0x4b,0x2c, 0x7,0x25,0x4c, 0x7,0x25,0x4e, 0x7,0x25,0x4d,
+  0x7,0x25,0x4f, 0x5,0x4e,0x4f, 0x7,0x25,0x51, 0xf,0x50,0x4f,
+  0x4,0x4b,0x2b, 0x4,0x51,0x45, 0x4,0x51,0x43, 0x4,0x51,0x46,
+  0x7,0x30,0x2c, 0x5,0x55,0x62, 0xf,0x56,0x32, 0x7,0x2c,0x3b,
+  0x7,0x39,0x41, 0x5,0x5c,0x33, 0x7,0x39,0x43, 0x5,0x5c,0x31,
+  0x4,0x56,0x7b, 0x7,0x39,0x42, 0x5,0x5c,0x34, 0xf,0x5b,0x37,
+  0x7,0x3c,0x76, 0x5,0x5c,0x30, 0x5,0x5c,0x32, 0xf,0x56,0x31,
+  0x4,0x5b,0x71, 0x7,0x47,0x7e, 0x5,0x68,0x41, 0x7,0x48,0x23,
+  0x7,0x4e,0x46, 0x7,0x48,0x21, 0x7,0x48,0x24, 0x4,0x60,0x2d,
+  0x7,0x48,0x22, 0x7,0x4e,0x48, 0x7,0x4e,0x47, 0x7,0x53,0x77,
+  0xf,0x67,0x77, 0x7,0x53,0x75, 0x7,0x53,0x76, 0xf,0x67,0x52,
+  0x7,0x58,0x3e, 0x4,0x68,0x77, 0x7,0x53,0x78, 0x7,0x5b,0x7d,
+  0xf,0x6a,0x64, 0x7,0x5b,0x7c, 0x7,0x5e,0x7c, 0x7,0x62,0x3e,
+  0x7,0x62,0x3d, 0x7,0x63,0x5a, 0x7,0x63,0x5c, 0x7,0x63,0x5b,
+  0x7,0x66,0x29, 0x7,0x66,0x35, 0x7,0x66,0x46, 0x6,0x23,0x36,
+  0x6,0x25,0x3b, 0xf,0x28,0x2e, 0x4,0x2e,0x32, 0x5,0x2a,0x50,
+  0x4,0x39,0x2e, 0x6,0x55,0x46, 0x6,0x55,0x45, 0x6,0x5f,0x29,
+  0x5,0x55,0x63, 0x7,0x30,0x2e, 0x7,0x25,0x52, 0x7,0x58,0x3f,
+  0x5,0x22,0x7c, 0x5,0x24,0x64, 0x5,0x24,0x65, 0x4,0x24,0x60,
+  0x6,0x28,0x66, 0x6,0x28,0x67, 0x6,0x28,0x65, 0x6,0x28,0x68,
+  0x4,0x27,0x45, 0x6,0x2d,0x35, 0x4,0x27,0x44, 0xf,0x28,0x2f,
+  0x5,0x27,0x38, 0x6,0x2d,0x36, 0x6,0x32,0x7d, 0x4,0x2a,0x4b,
+  0x6,0x32,0x7c, 0x6,0x32,0x7b, 0x5,0x2a,0x52, 0x5,0x2a,0x56,
+  0x4,0x2a,0x47, 0x4,0x2a,0x48, 0x5,0x2a,0x53, 0x4,0x2a,0x45,
+  0x5,0x2a,0x54, 0x5,0x2a,0x51, 0x5,0x2a,0x55, 0x6,0x33,0x24,
+  0xf,0x2c,0x50, 0x6,0x32,0x7e, 0xf,0x2c,0x51, 0x6,0x33,0x22,
+  0x6,0x33,0x23, 0x6,0x33,0x21, 0x6,0x39,0x69, 0x5,0x2e,0x6f,
+  0x5,0x2e,0x73, 0x6,0x39,0x6f, 0x5,0x2e,0x71, 0x6,0x39,0x70,
+  0x6,0x39,0x6a, 0x5,0x2e,0x76, 0x5,0x2e,0x72, 0x5,0x2e,0x75,
+  0x6,0x39,0x6d, 0x6,0x39,0x71, 0x6,0x39,0x66, 0x4,0x2e,0x3d,
+  0x5,0x2e,0x74, 0x6,0x39,0x68, 0x4,0x2e,0x3e, 0x5,0x2e,0x70,
+  0x6,0x39,0x6e, 0xf,0x31,0x2f, 0x6,0x39,0x67, 0x6,0x39,0x6c,
+  0x6,0x42,0x31, 0x6,0x42,0x37, 0x5,0x33,0x68, 0x6,0x42,0x35,
+  0x5,0x33,0x6b, 0x4,0x33,0x41, 0x5,0x33,0x6a, 0x5,0x33,0x66,
+  0x6,0x42,0x33, 0x4,0x33,0x44, 0x5,0x33,0x69, 0xf,0x36,0x6d,
+  0xf,0x36,0x6e, 0xf,0x36,0x6f, 0x6,0x42,0x36, 0x6,0x42,0x39,
+  0x6,0x42,0x34, 0x6,0x42,0x38, 0xf,0x36,0x70, 0x6,0x42,0x30,
+  0x5,0x33,0x67, 0x5,0x33,0x6c, 0x5,0x3a,0x36, 0x5,0x3a,0x3f,
+  0x6,0x4b,0x61, 0x5,0x3a,0x35, 0x6,0x4b,0x65, 0x5,0x3a,0x39,
+  0x5,0x3a,0x3a, 0x5,0x3a,0x3c, 0x5,0x3a,0x37, 0x6,0x4b,0x63,
+  0x6,0x4b,0x5f, 0x5,0x3a,0x40, 0x6,0x4b,0x62, 0x6,0x4b,0x5b,
+  0x6,0x4b,0x66, 0x5,0x3a,0x3e, 0x6,0x4b,0x5e, 0x4,0x39,0x39,
+  0x6,0x4b,0x5d, 0x6,0x4b,0x60, 0x6,0x4b,0x64, 0xf,0x3d,0x49,
+  0xf,0x3d,0x4a, 0x4,0x39,0x37, 0x6,0x4b,0x5c, 0x4,0x39,0x31,
+  0x5,0x3a,0x38, 0x6,0x55,0x4c, 0x4,0x3e,0x72, 0x4,0x3e,0x70,
+  0x4,0x3e,0x7b, 0x5,0x40,0x59, 0x4,0x3e,0x71, 0x4,0x3e,0x75,
+  0x4,0x44,0x7d, 0x4,0x3e,0x79, 0x6,0x55,0x49, 0x5,0x40,0x5a,
+  0x5,0x40,0x5c, 0x5,0x40,0x62, 0x4,0x3e,0x7c, 0x6,0x55,0x47,
+  0x5,0x40,0x61, 0x6,0x55,0x4d, 0x5,0x40,0x65, 0x5,0x40,0x63,
+  0x5,0x40,0x5b, 0x5,0x3a,0x3d, 0x5,0x40,0x5f, 0x5,0x40,0x5e,
+  0x6,0x55,0x4b, 0x6,0x55,0x4a, 0x4,0x3e,0x7d, 0xf,0x43,0x6b,
+  0xf,0x43,0x6c, 0x6,0x55,0x48, 0x6,0x55,0x4e, 0x5,0x40,0x58,
+  0x5,0x40,0x66, 0x5,0x40,0x5d, 0x5,0x47,0x58, 0x5,0x47,0x50,
+  0x4,0x45,0x25, 0x4,0x45,0x2b, 0x5,0x47,0x4b, 0x5,0x47,0x4f,
+  0x4,0x45,0x26, 0x6,0x5f,0x2f, 0x6,0x5f,0x2a, 0x4,0x45,0x2e,
+  0x4,0x45,0x2a, 0x6,0x5f,0x2b, 0x6,0x5f,0x34, 0x5,0x47,0x4d,
+  0x5,0x47,0x4e, 0x5,0x47,0x53, 0x4,0x45,0x2c, 0x6,0x5f,0x37,
+  0x6,0x5f,0x35, 0x5,0x47,0x5a, 0x6,0x5f,0x2e, 0x4,0x45,0x27,
+  0x4,0x45,0x22, 0x5,0x47,0x51, 0x5,0x47,0x52, 0x6,0x5f,0x33,
+  0x5,0x47,0x4c, 0x5,0x47,0x56, 0x6,0x5f,0x31, 0x6,0x5f,0x30,
+  0xf,0x4a,0x2e, 0x6,0x5f,0x38, 0x6,0x5f,0x2c, 0x4,0x45,0x2d,
+  0x6,0x5f,0x32, 0x6,0x5f,0x36, 0x5,0x47,0x55, 0x4,0x4b,0x3a,
+  0x4,0x4b,0x36, 0x4,0x4b,0x2d, 0x4,0x4b,0x39, 0x5,0x4e,0x53,
+  0x4,0x4b,0x34, 0x7,0x25,0x5d, 0x4,0x4b,0x32, 0x5,0x4e,0x55,
+  0x5,0x4e,0x57, 0x5,0x4e,0x54, 0x4,0x4b,0x31, 0x7,0x25,0x55,
+  0x4,0x4b,0x30, 0x5,0x4e,0x51, 0x5,0x4e,0x52, 0x7,0x25,0x53,
+  0x5,0x47,0x57, 0x5,0x4e,0x58, 0x7,0x25,0x54, 0x7,0x25,0x5b,
+  0x7,0x25,0x59, 0xf,0x50,0x50, 0xf,0x50,0x51, 0xf,0x50,0x52,
+  0xf,0x50,0x53, 0xf,0x50,0x54, 0x7,0x25,0x56, 0x7,0x25,0x5a,
+  0x7,0x25,0x5e, 0x5,0x4e,0x56, 0x5,0x4e,0x50, 0x4,0x51,0x4b,
+  0x5,0x55,0x65, 0x7,0x30,0x2f, 0x7,0x30,0x30, 0x5,0x55,0x6c,
+  0x5,0x55,0x6d, 0x4,0x51,0x4c, 0x4,0x51,0x47, 0x5,0x55,0x68,
+  0x7,0x30,0x35, 0x5,0x55,0x66, 0x5,0x55,0x67, 0x5,0x55,0x6b,
+  0x7,0x30,0x31, 0x7,0x30,0x37, 0x5,0x55,0x6e, 0xf,0x56,0x34,
+  0xf,0x56,0x35, 0x7,0x30,0x34, 0x7,0x30,0x33, 0x5,0x55,0x6a,
+  0x7,0x30,0x32, 0x7,0x30,0x38, 0x7,0x30,0x39, 0x5,0x55,0x64,
+  0x7,0x25,0x57, 0x4,0x56,0x7c, 0x5,0x5c,0x39, 0x5,0x55,0x70,
+  0x7,0x39,0x50, 0x4,0x51,0x51, 0x4,0x45,0x29, 0x4,0x56,0x7e,
+  0x7,0x39,0x47, 0x5,0x5c,0x35, 0x7,0x39,0x48, 0x5,0x5c,0x3c,
+  0x5,0x5c,0x3a, 0x5,0x5c,0x3d, 0x7,0x39,0x4f, 0x7,0x40,0x6a,
+  0x5,0x55,0x6f, 0x5,0x5c,0x37, 0x4,0x56,0x7d, 0x5,0x5c,0x38,
+  0x4,0x57,0x23, 0x7,0x39,0x49, 0x7,0x39,0x4d, 0x7,0x39,0x51,
+  0x7,0x39,0x4b, 0x7,0x39,0x46, 0x7,0x39,0x4c, 0xf,0x5b,0x38,
+  0x7,0x39,0x44, 0x7,0x39,0x45, 0x7,0x39,0x4e, 0x5,0x5c,0x3b,
+  0x5,0x62,0x5c, 0x5,0x5c,0x3e, 0x7,0x39,0x4a, 0x4,0x5b,0x78,
+  0x5,0x5c,0x40, 0x5,0x62,0x60, 0x7,0x40,0x68, 0x5,0x62,0x65,
+  0x7,0x40,0x69, 0x5,0x62,0x61, 0x5,0x62,0x64, 0x4,0x5b,0x76,
+  0x5,0x5c,0x3f, 0x5,0x62,0x5d, 0x5,0x62,0x62, 0x5,0x62,0x5e,
+  0x5,0x62,0x5f, 0x4,0x5b,0x7a, 0x7,0x40,0x6d, 0x5,0x62,0x63,
+  0x7,0x48,0x2b, 0x4,0x60,0x33, 0x7,0x48,0x27, 0x4,0x60,0x34,
+  0x5,0x68,0x44, 0x4,0x60,0x35, 0x7,0x48,0x26, 0x5,0x68,0x43,
+  0x5,0x68,0x42, 0x4,0x60,0x36, 0xf,0x63,0x27, 0x4,0x60,0x31,
+  0x7,0x48,0x28, 0x7,0x48,0x29, 0x7,0x48,0x25, 0x7,0x48,0x2a,
+  0x7,0x40,0x6c, 0x4,0x63,0x6a, 0x4,0x63,0x6b, 0x7,0x4e,0x49,
+  0x7,0x4e,0x4d, 0x7,0x4e,0x4c, 0x5,0x6c,0x58, 0x5,0x6c,0x59,
+  0x7,0x4e,0x4e, 0x7,0x4e,0x4b, 0x7,0x4e,0x4a, 0x5,0x70,0x51,
+  0x5,0x70,0x50, 0x5,0x70,0x4e, 0x4,0x66,0x57, 0x7,0x53,0x7a,
+  0x5,0x70,0x4f, 0x7,0x53,0x79, 0xf,0x67,0x78, 0x5,0x73,0x5f,
+  0x5,0x73,0x5e, 0x5,0x73,0x5d, 0x7,0x5c,0x22, 0x7,0x5b,0x7e,
+  0x4,0x6a,0x56, 0x7,0x5c,0x21, 0x5,0x76,0x29, 0x5,0x77,0x6b,
+  0x7,0x5e,0x7d, 0x7,0x5e,0x7e, 0x7,0x61,0x42, 0x7,0x61,0x27,
+  0x7,0x62,0x3f, 0x7,0x62,0x40, 0x7,0x62,0x41, 0x5,0x7a,0x6d,
+  0x7,0x64,0x51, 0x7,0x65,0x39, 0x4,0x24,0x63, 0x6,0x33,0x25,
+  0xf,0x2c,0x52, 0x6,0x39,0x73, 0x6,0x39,0x72, 0xf,0x31,0x30,
+  0x6,0x42,0x3a, 0xf,0x36,0x71, 0x6,0x4b,0x69, 0x6,0x4b,0x67,
+  0x5,0x3a,0x41, 0x6,0x4b,0x68, 0x7,0x25,0x5f, 0x4,0x51,0x53,
+  0x4,0x51,0x52, 0x7,0x30,0x3a, 0x6,0x25,0x3c, 0x6,0x25,0x3d,
+  0x5,0x24,0x66, 0x5,0x27,0x3a, 0x5,0x27,0x3b, 0x5,0x27,0x39,
+  0x5,0x27,0x3c, 0x4,0x2a,0x4d, 0x5,0x2a,0x59, 0x5,0x2a,0x58,
+  0x5,0x2a,0x57, 0x6,0x33,0x27, 0x6,0x33,0x28, 0x6,0x33,0x26,
+  0xf,0x2c,0x53, 0xf,0x2c,0x54, 0x6,0x33,0x29, 0x5,0x2a,0x5a,
+  0x6,0x39,0x74, 0x4,0x2e,0x42, 0x6,0x39,0x75, 0x6,0x42,0x3c,
+  0xf,0x31,0x31, 0xf,0x31,0x32, 0xf,0x31,0x33, 0xf,0x31,0x35,
+  0xf,0x31,0x36, 0xf,0x36,0x75, 0x4,0x33,0x46, 0x5,0x33,0x6e,
+  0x6,0x42,0x3b, 0xf,0x36,0x72, 0xf,0x36,0x73, 0xf,0x36,0x76,
+  0x6,0x4b,0x6b, 0x6,0x4b,0x6c, 0x6,0x4b,0x6a, 0xf,0x36,0x74,
+  0x5,0x40,0x68, 0x5,0x40,0x67, 0x6,0x55,0x50, 0x4,0x3e,0x7e,
+  0x6,0x55,0x4f, 0x5,0x40,0x69, 0xf,0x43,0x6d, 0x4,0x45,0x2f,
+  0x6,0x5f,0x39, 0x6,0x5f,0x3a, 0xf,0x4a,0x30, 0xf,0x4a,0x31,
+  0xf,0x4a,0x33, 0xf,0x4a,0x34, 0xf,0x4a,0x32, 0x4,0x4b,0x3c,
+  0x7,0x25,0x60, 0x7,0x25,0x61, 0x5,0x55,0x72, 0x7,0x30,0x3c,
+  0x5,0x55,0x71, 0x7,0x30,0x3b, 0x4,0x57,0x27, 0x4,0x57,0x28,
+  0x5,0x5c,0x42, 0x5,0x5c,0x44, 0x7,0x40,0x6e, 0x5,0x5c,0x41,
+  0x7,0x39,0x52, 0x5,0x62,0x66, 0x7,0x40,0x6f, 0x7,0x40,0x70,
+  0x5,0x68,0x45, 0x5,0x68,0x46, 0x5,0x68,0x47, 0x5,0x68,0x48,
+  0x7,0x48,0x2c, 0x7,0x4e,0x50, 0x7,0x4e,0x4f, 0x5,0x62,0x67,
+  0x7,0x58,0x40, 0x7,0x58,0x41, 0xf,0x67,0x79, 0x7,0x5c,0x23,
+  0x4,0x6b,0x73, 0x7,0x5f,0x21, 0x7,0x65,0x3a, 0x5,0x24,0x67,
+  0x5,0x24,0x68, 0x6,0x2d,0x39, 0x6,0x2d,0x37, 0x6,0x2d,0x38,
+  0x5,0x27,0x3d, 0x6,0x33,0x2b, 0x5,0x2a,0x5b, 0x4,0x2a,0x4f,
+  0x6,0x30,0x36, 0x6,0x33,0x2a, 0x5,0x2e,0x77, 0x5,0x2e,0x78,
+  0x6,0x39,0x76, 0x6,0x39,0x7a, 0x5,0x33,0x6f, 0x4,0x2e,0x44,
+  0x6,0x39,0x77, 0x6,0x39,0x78, 0x6,0x39,0x79, 0x4,0x33,0x49,
+  0x5,0x33,0x70, 0x6,0x42,0x3e, 0xf,0x36,0x79, 0x6,0x42,0x3d,
+  0x4,0x39,0x3c, 0x6,0x4b,0x6d, 0x5,0x3a,0x42, 0x6,0x4b,0x6f,
+  0x4,0x39,0x3b, 0xf,0x3d,0x4b, 0x6,0x4b,0x6e, 0xf,0x36,0x78,
+  0x5,0x40,0x6a, 0x5,0x40,0x6d, 0x5,0x40,0x6b, 0x5,0x40,0x6c,
+  0x5,0x40,0x6e, 0x6,0x55,0x53, 0xf,0x43,0x6e, 0x6,0x55,0x51,
+  0x4,0x3f,0x21, 0x4,0x45,0x31, 0x4,0x45,0x33, 0x6,0x5f,0x3e,
+  0xf,0x4a,0x35, 0x6,0x5f,0x3d, 0x5,0x47,0x5c, 0x6,0x5f,0x3f,
+  0x6,0x5f,0x3b, 0x6,0x5f,0x3c, 0x7,0x25,0x63, 0x5,0x4e,0x5a,
+  0x5,0x4e,0x5b, 0x5,0x4e,0x5c, 0x7,0x25,0x62, 0x5,0x55,0x76,
+  0x5,0x55,0x78, 0x5,0x55,0x74, 0x4,0x51,0x58, 0x5,0x55,0x77,
+  0x5,0x55,0x75, 0xf,0x56,0x36, 0x5,0x55,0x73, 0x7,0x30,0x3d,
+  0x7,0x30,0x3e, 0x7,0x39,0x53, 0x7,0x30,0x3f, 0x4,0x57,0x29,
+  0x5,0x62,0x68, 0x7,0x40,0x72, 0x7,0x40,0x73, 0x7,0x40,0x74,
+  0x7,0x40,0x71, 0x5,0x68,0x4a, 0x5,0x68,0x49, 0x7,0x48,0x2d,
+  0x4,0x63,0x6d, 0x5,0x6c,0x5b, 0x5,0x6c,0x5a, 0x7,0x4e,0x51,
+  0x7,0x53,0x7c, 0x4,0x66,0x5c, 0x7,0x58,0x42, 0x5,0x77,0x6c,
+  0x5,0x77,0x6d, 0x7,0x63,0x44, 0x7,0x65,0x58, 0x6,0x28,0x69,
+  0xf,0x24,0x7d, 0x4,0x27,0x49, 0x5,0x27,0x3e, 0x4,0x27,0x47,
+  0x6,0x2d,0x3b, 0x5,0x27,0x3f, 0x5,0x2a,0x5e, 0x5,0x2a,0x5c,
+  0x5,0x2a,0x5d, 0x6,0x33,0x2d, 0x6,0x33,0x2c, 0xf,0x2c,0x55,
+  0x5,0x2e,0x79, 0x6,0x3a,0x21, 0x6,0x3a,0x23, 0x4,0x2e,0x48,
+  0x5,0x2e,0x7a, 0x6,0x39,0x7e, 0x6,0x39,0x7b, 0x4,0x2e,0x4a,
+  0x6,0x3a,0x22, 0xf,0x31,0x37, 0xf,0x31,0x38, 0x6,0x3a,0x24,
+  0x6,0x39,0x7c, 0x6,0x39,0x7d, 0x4,0x33,0x4c, 0x5,0x33,0x72,
+  0x4,0x33,0x4a, 0x6,0x42,0x3f, 0xf,0x36,0x7a, 0xf,0x36,0x7b,
+  0xf,0x36,0x7c, 0xf,0x36,0x7d, 0xf,0x37,0x21, 0xf,0x37,0x22,
+  0x6,0x42,0x40, 0x6,0x42,0x41, 0x6,0x3a,0x25, 0x6,0x4b,0x74,
+  0x6,0x4b,0x70, 0x5,0x3a,0x43, 0x4,0x39,0x3d, 0x6,0x4b,0x72,
+  0x6,0x4b,0x73, 0xf,0x3d,0x4c, 0xf,0x3d,0x4d, 0x6,0x4b,0x71,
+  0x6,0x55,0x54, 0x6,0x55,0x56, 0x5,0x40,0x70, 0x6,0x55,0x58,
+  0x6,0x55,0x57, 0x6,0x55,0x55, 0xf,0x43,0x6f, 0xf,0x43,0x70,
+  0x6,0x5f,0x41, 0x6,0x5f,0x40, 0x6,0x5f,0x4b, 0xf,0x4a,0x36,
+  0x5,0x4e,0x5d, 0x7,0x25,0x64, 0x7,0x25,0x65, 0xf,0x50,0x55,
+  0xf,0x50,0x56, 0xf,0x50,0x57, 0xf,0x50,0x58, 0xf,0x50,0x59,
+  0xf,0x50,0x5a, 0x4,0x51,0x59, 0x7,0x30,0x44, 0x4,0x51,0x5b,
+  0x7,0x30,0x40, 0x7,0x30,0x45, 0x5,0x55,0x7a, 0x5,0x55,0x79,
+  0xf,0x56,0x37, 0xf,0x56,0x38, 0xf,0x56,0x39, 0xf,0x56,0x3a,
+  0xf,0x56,0x3b, 0x7,0x30,0x43, 0x7,0x30,0x41, 0x4,0x57,0x2b,
+  0x4,0x5c,0x23, 0x4,0x57,0x2a, 0x7,0x39,0x54, 0x5,0x5c,0x47,
+  0x7,0x40,0x75, 0x5,0x5c,0x46, 0xf,0x5b,0x3b, 0xf,0x5b,0x3c,
+  0x7,0x39,0x55, 0x7,0x39,0x56, 0x7,0x36,0x79, 0x5,0x5c,0x45,
+  0x7,0x30,0x42, 0x7,0x39,0x57, 0x4,0x5c,0x22, 0x4,0x5c,0x21,
+  0x7,0x40,0x76, 0x7,0x40,0x78, 0x7,0x40,0x77, 0xf,0x5f,0x62,
+  0x7,0x40,0x79, 0x7,0x48,0x2e, 0x5,0x68,0x4b, 0x7,0x48,0x2f,
+  0xf,0x63,0x28, 0xf,0x63,0x29, 0x5,0x6c,0x5d, 0x7,0x4e,0x53,
+  0x5,0x6c,0x5c, 0x7,0x4e,0x55, 0xf,0x65,0x56, 0x7,0x4e,0x52,
+  0x7,0x4e,0x54, 0xf,0x67,0x7b, 0x7,0x58,0x44, 0x5,0x73,0x60,
+  0x7,0x58,0x43, 0x7,0x58,0x45, 0xf,0x67,0x7a, 0x7,0x5f,0x22,
+  0x5,0x76,0x2a, 0x7,0x5f,0x23, 0x7,0x62,0x42, 0x5,0x22,0x7d,
+  0xf,0x22,0x67, 0x6,0x28,0x6a, 0x4,0x24,0x64, 0x5,0x24,0x6a,
+  0x4,0x24,0x66, 0x5,0x24,0x6b, 0x5,0x24,0x69, 0xf,0x24,0x7e,
+  0x4,0x27,0x50, 0x6,0x2d,0x3c, 0x5,0x27,0x41, 0x4,0x27,0x4b,
+  0x6,0x2d,0x40, 0x6,0x2d,0x42, 0x6,0x2d,0x3e, 0x5,0x27,0x42,
+  0x5,0x27,0x43, 0x6,0x2d,0x41, 0x6,0x2d,0x3f, 0x5,0x27,0x40,
+  0x6,0x2d,0x43, 0x6,0x2d,0x44, 0x6,0x33,0x39, 0x6,0x33,0x35,
+  0x6,0x33,0x2e, 0x6,0x33,0x32, 0x4,0x2a,0x5e, 0x6,0x33,0x36,
+  0x4,0x2a,0x5c, 0x6,0x33,0x3c, 0x5,0x2a,0x65, 0x6,0x33,0x33,
+  0x5,0x2a,0x69, 0x4,0x2a,0x5b, 0x6,0x33,0x2f, 0x6,0x33,0x3b,
+  0x5,0x2a,0x60, 0x5,0x2a,0x67, 0x5,0x2a,0x6b, 0x5,0x2a,0x61,
+  0x5,0x2a,0x6a, 0x5,0x2a,0x68, 0x5,0x2a,0x63, 0x5,0x2a,0x6c,
+  0x6,0x33,0x30, 0x5,0x2a,0x5f, 0x5,0x2a,0x66, 0x5,0x2a,0x62,
+  0x5,0x2a,0x64, 0xf,0x2c,0x56, 0xf,0x2c,0x58, 0x6,0x33,0x37,
+  0x6,0x33,0x3a, 0x6,0x33,0x34, 0x4,0x2e,0x50, 0x5,0x2f,0x24,
+  0x3,0x2e,0x5a, 0x4,0x2e,0x4c, 0x5,0x2e,0x7b, 0x6,0x3a,0x26,
+  0x4,0x2e,0x4e, 0x5,0x2f,0x22, 0x5,0x2e,0x7c, 0x6,0x3a,0x28,
+  0x4,0x2e,0x4b, 0x6,0x3a,0x29, 0x5,0x2f,0x23, 0x6,0x3a,0x2a,
+  0x4,0x2e,0x53, 0x6,0x3a,0x2c, 0x5,0x2e,0x7e, 0x5,0x2f,0x25,
+  0x6,0x3a,0x2b, 0xf,0x31,0x39, 0xf,0x31,0x3a, 0xf,0x31,0x3b,
+  0xf,0x31,0x3c, 0xf,0x31,0x3d, 0x6,0x3a,0x27, 0x5,0x2f,0x21,
+  0x5,0x2e,0x7d, 0x4,0x2e,0x54, 0x4,0x33,0x55, 0x6,0x42,0x53,
+  0x6,0x42,0x46, 0x6,0x42,0x4d, 0x5,0x33,0x74, 0x5,0x33,0x73,
+  0x5,0x33,0x7d, 0x4,0x33,0x54, 0x6,0x42,0x47, 0x6,0x42,0x44,
+  0x6,0x42,0x42, 0x5,0x33,0x7a, 0x5,0x33,0x7b, 0x5,0x33,0x75,
+  0x6,0x42,0x4a, 0x5,0x33,0x78, 0x6,0x42,0x54, 0x5,0x33,0x79,
+  0x6,0x42,0x43, 0x6,0x42,0x4f, 0x6,0x42,0x4b, 0x6,0x42,0x50,
+  0xf,0x37,0x25, 0x6,0x42,0x52, 0x6,0x42,0x4c, 0x6,0x42,0x49,
+  0x6,0x42,0x51, 0xf,0x37,0x26, 0x5,0x33,0x7e, 0x6,0x42,0x45,
+  0x6,0x42,0x4e, 0x5,0x33,0x77, 0x5,0x33,0x7c, 0x5,0x3a,0x49,
+  0x5,0x3a,0x4c, 0x6,0x4b,0x79, 0x6,0x4c,0x23, 0x4,0x33,0x53,
+  0x6,0x4b,0x78, 0x5,0x3a,0x4b, 0x6,0x4b,0x7d, 0x6,0x4c,0x21,
+  0x5,0x3a,0x46, 0x6,0x4c,0x26, 0x6,0x4b,0x77, 0x4,0x39,0x4f,
+  0x5,0x3a,0x4a, 0x5,0x3a,0x48, 0x5,0x3a,0x44, 0x4,0x39,0x4e,
+  0x5,0x40,0x71, 0x6,0x4c,0x25, 0x5,0x40,0x7e, 0x4,0x39,0x40,
+  0x6,0x4b,0x7e, 0x5,0x3a,0x4d, 0x6,0x4b,0x7b, 0x5,0x3a,0x4e,
+  0x6,0x4c,0x28, 0x5,0x3a,0x45, 0x5,0x3a,0x47, 0xf,0x3d,0x4f,
+  0xf,0x3d,0x50, 0xf,0x3d,0x51, 0x6,0x4b,0x7c, 0x6,0x4c,0x27,
+  0x6,0x4b,0x76, 0x6,0x4c,0x24, 0x6,0x4c,0x22, 0x4,0x39,0x44,
+  0x4,0x39,0x50, 0x5,0x3a,0x4f, 0x4,0x39,0x3e, 0x6,0x55,0x5b,
+  0x6,0x55,0x5e, 0x6,0x55,0x5a, 0x4,0x3f,0x2a, 0x5,0x40,0x78,
+  0x6,0x55,0x5c, 0x5,0x40,0x77, 0x6,0x55,0x5f, 0x5,0x40,0x75,
+  0x6,0x55,0x59, 0x4,0x3f,0x23, 0x4,0x3f,0x28, 0x4,0x3f,0x31,
+  0x4,0x3f,0x2e, 0x5,0x40,0x7a, 0x6,0x55,0x62, 0x5,0x40,0x76,
+  0x4,0x3f,0x2f, 0x4,0x3f,0x24, 0x6,0x55,0x64, 0x5,0x40,0x79,
+  0x5,0x40,0x72, 0x5,0x40,0x7c, 0x6,0x55,0x66, 0x6,0x55,0x5d,
+  0xf,0x43,0x71, 0xf,0x43,0x72, 0xf,0x43,0x73, 0x6,0x4b,0x75,
+  0x6,0x55,0x63, 0x6,0x53,0x35, 0x5,0x40,0x73, 0x5,0x40,0x7d,
+  0x5,0x40,0x74, 0x6,0x55,0x65, 0x5,0x47,0x60, 0x4,0x45,0x45,
+  0x6,0x5f,0x44, 0x4,0x45,0x3e, 0x5,0x47,0x63, 0x6,0x5f,0x48,
+  0x5,0x47,0x65, 0x5,0x47,0x66, 0x6,0x5f,0x49, 0x4,0x4b,0x4f,
+  0x6,0x5f,0x4e, 0x6,0x5f,0x46, 0x6,0x5f,0x4f, 0x7,0x25,0x6c,
+  0x6,0x5f,0x47, 0x5,0x47,0x67, 0x5,0x47,0x64, 0x6,0x5f,0x43,
+  0x6,0x5f,0x4a, 0x6,0x5f,0x45, 0x5,0x47,0x62, 0x6,0x5f,0x42,
+  0x5,0x47,0x5f, 0x5,0x47,0x5e, 0x5,0x47,0x5d, 0x7,0x25,0x66,
+  0xf,0x4a,0x37, 0xf,0x4a,0x38, 0xf,0x4a,0x39, 0xf,0x4a,0x3a,
+  0xf,0x4a,0x3b, 0xf,0x4a,0x3c, 0xf,0x4a,0x3d, 0x4,0x45,0x3a,
+  0x6,0x5f,0x4d, 0x6,0x5f,0x4c, 0x5,0x47,0x69, 0x4,0x45,0x3b,
+  0x4,0x4b,0x50, 0x4,0x4b,0x4c, 0x4,0x4b,0x3e, 0x5,0x4e,0x62,
+  0x5,0x4e,0x67, 0x4,0x4b,0x4e, 0x7,0x25,0x6b, 0x5,0x4e,0x6c,
+  0x5,0x4e,0x65, 0x4,0x4b,0x41, 0x7,0x25,0x70, 0x4,0x4b,0x40,
+  0x4,0x51,0x65, 0x7,0x30,0x4d, 0x5,0x4e,0x64, 0x5,0x56,0x21,
+  0x5,0x4e,0x66, 0x7,0x25,0x6d, 0x5,0x4e,0x6a, 0x7,0x25,0x72,
+  0x4,0x4b,0x49, 0x4,0x4b,0x4b, 0x4,0x4b,0x46, 0x5,0x4e,0x5f,
+  0x5,0x4e,0x6b, 0x7,0x25,0x67, 0x7,0x25,0x68, 0x7,0x25,0x6a,
+  0x4,0x4b,0x4a, 0x5,0x4e,0x63, 0x7,0x25,0x6e, 0x5,0x4e,0x5e,
+  0x5,0x4e,0x61, 0x5,0x55,0x7b, 0x5,0x4e,0x69, 0x5,0x4e,0x68,
+  0x7,0x25,0x69, 0xf,0x50,0x5b, 0xf,0x50,0x5c, 0xf,0x50,0x5d,
+  0x7,0x25,0x6f, 0x4,0x4b,0x48, 0x5,0x56,0x2a, 0x5,0x56,0x2b,
+  0x4,0x51,0x5e, 0x5,0x56,0x25, 0x5,0x56,0x23, 0x5,0x56,0x27,
+  0x5,0x55,0x7d, 0x4,0x51,0x63, 0x5,0x56,0x29, 0x5,0x55,0x7e,
+  0x5,0x56,0x26, 0x5,0x56,0x24, 0x4,0x51,0x62, 0x7,0x30,0x46,
+  0x7,0x30,0x4e, 0x7,0x30,0x4f, 0x7,0x30,0x4b, 0x7,0x30,0x47,
+  0x5,0x4e,0x6d, 0x4,0x51,0x67, 0x5,0x55,0x7c, 0x7,0x30,0x49,
+  0xf,0x56,0x3d, 0x7,0x30,0x51, 0x7,0x30,0x4c, 0x5,0x56,0x2c,
+  0x4,0x51,0x66, 0x5,0x47,0x68, 0x5,0x56,0x28, 0x4,0x5c,0x2b,
+  0x5,0x5c,0x48, 0x5,0x5c,0x4b, 0x4,0x57,0x35, 0x4,0x57,0x36,
+  0x7,0x30,0x52, 0x7,0x39,0x5e, 0x7,0x39,0x59, 0x5,0x5c,0x4a,
+  0x7,0x39,0x5a, 0x5,0x5c,0x4c, 0x7,0x39,0x64, 0x5,0x5c,0x49,
+  0x7,0x41,0x22, 0x7,0x39,0x5f, 0x7,0x39,0x60, 0x7,0x39,0x5d,
+  0x4,0x57,0x37, 0x7,0x39,0x63, 0x5,0x5c,0x4f, 0x7,0x30,0x48,
+  0x5,0x5c,0x4e, 0x7,0x39,0x61, 0x7,0x39,0x5c, 0x7,0x39,0x5b,
+  0xf,0x5b,0x3e, 0xf,0x5b,0x3f, 0xf,0x5b,0x40, 0x7,0x39,0x62,
+  0x7,0x39,0x58, 0x4,0x5c,0x28, 0x7,0x41,0x23, 0x7,0x40,0x7e,
+  0x5,0x62,0x6e, 0x4,0x5c,0x2c, 0x5,0x62,0x6b, 0x7,0x40,0x7b,
+  0x7,0x40,0x7c, 0x5,0x62,0x70, 0x4,0x5c,0x24, 0x5,0x62,0x6c,
+  0x5,0x62,0x6f, 0x5,0x62,0x71, 0x5,0x62,0x6a, 0xf,0x5f,0x63,
+  0xf,0x5f,0x64, 0x7,0x41,0x24, 0x7,0x41,0x25, 0x7,0x40,0x7d,
+  0x5,0x62,0x6d, 0x7,0x40,0x7a, 0x7,0x41,0x21, 0x5,0x68,0x4f,
+  0x5,0x68,0x4c, 0x5,0x68,0x51, 0x4,0x60,0x3e, 0x5,0x68,0x50,
+  0x4,0x60,0x3b, 0x5,0x68,0x54, 0x5,0x68,0x4e, 0x7,0x48,0x32,
+  0x4,0x60,0x3a, 0x7,0x48,0x34, 0x4,0x60,0x3c, 0x4,0x60,0x3d,
+  0x7,0x48,0x30, 0x5,0x68,0x4d, 0x7,0x48,0x31, 0x5,0x68,0x53,
+  0x5,0x68,0x52, 0xf,0x63,0x2a, 0x7,0x4b,0x5d, 0x7,0x48,0x35,
+  0x7,0x48,0x33, 0x5,0x6c,0x60, 0x5,0x6c,0x62, 0x5,0x6c,0x5e,
+  0x7,0x4e,0x58, 0x5,0x6c,0x61, 0x5,0x6c,0x63, 0x7,0x4e,0x57,
+  0xf,0x65,0x57, 0x4,0x63,0x72, 0x5,0x6c,0x5f, 0x4,0x63,0x73,
+  0x7,0x4e,0x56, 0x7,0x54,0x22, 0x5,0x70,0x52, 0x5,0x70,0x54,
+  0x5,0x70,0x53, 0x5,0x70,0x55, 0x7,0x53,0x7e, 0x7,0x54,0x23,
+  0x7,0x53,0x7d, 0x4,0x68,0x79, 0x5,0x73,0x63, 0x7,0x58,0x46,
+  0x5,0x73,0x61, 0x5,0x73,0x62, 0x7,0x58,0x47, 0x5,0x73,0x65,
+  0x4,0x6a,0x59, 0x7,0x54,0x21, 0x5,0x73,0x64, 0x7,0x59,0x33,
+  0x5,0x73,0x66, 0x5,0x76,0x2b, 0x7,0x5c,0x26, 0x4,0x6a,0x58,
+  0x7,0x5c,0x25, 0x7,0x5f,0x24, 0x4,0x6c,0x74, 0x7,0x62,0x43,
+  0x7,0x62,0x45, 0x7,0x62,0x44, 0xf,0x6c,0x66, 0x5,0x7b,0x43,
+  0x5,0x27,0x44, 0x4,0x2a,0x60, 0x4,0x2a,0x61, 0x4,0x2e,0x56,
+  0x5,0x2f,0x28, 0x5,0x2f,0x27, 0x6,0x3a,0x2f, 0x6,0x3a,0x30,
+  0x4,0x33,0x58, 0x5,0x34,0x22, 0xf,0x37,0x27, 0x5,0x3a,0x52,
+  0x4,0x39,0x51, 0x5,0x3a,0x53, 0x5,0x3a,0x51, 0x5,0x3a,0x55,
+  0x5,0x3a,0x50, 0x6,0x4c,0x29, 0x5,0x3a,0x54, 0x5,0x41,0x23,
+  0x5,0x41,0x22, 0x5,0x41,0x21, 0x6,0x5f,0x51, 0x6,0x5f,0x52,
+  0x4,0x45,0x47, 0x4,0x45,0x48, 0x5,0x47,0x6c, 0x5,0x47,0x6a,
+  0x5,0x47,0x6b, 0x4,0x45,0x49, 0x6,0x5f,0x50, 0x4,0x45,0x4b,
+  0xf,0x4d,0x3f, 0x5,0x4e,0x6e, 0x4,0x4b,0x52, 0x7,0x25,0x75,
+  0x5,0x4e,0x6f, 0x4,0x4b,0x51, 0x7,0x25,0x74, 0x4,0x4b,0x53,
+  0x4,0x51,0x69, 0x4,0x51,0x68, 0x4,0x51,0x6a, 0x5,0x56,0x2d,
+  0x5,0x62,0x75, 0x7,0x39,0x65, 0x5,0x5a,0x75, 0x5,0x5c,0x50,
+  0x5,0x62,0x74, 0x5,0x62,0x73, 0x5,0x62,0x72, 0x5,0x68,0x57,
+  0x5,0x68,0x56, 0x5,0x68,0x55, 0x5,0x68,0x58, 0x7,0x48,0x36,
+  0x7,0x48,0x37, 0x4,0x6a,0x5a, 0x7,0x66,0x3f, 0x7,0x66,0x49,
+  0x6,0x26,0x3f, 0x6,0x28,0x6b, 0x6,0x28,0x6c, 0x6,0x33,0x41,
+  0x6,0x33,0x3f, 0x6,0x33,0x40, 0x5,0x2a,0x6e, 0x5,0x2f,0x2a,
+  0x5,0x2f,0x2b, 0x6,0x3a,0x33, 0xf,0x31,0x3f, 0xf,0x31,0x40,
+  0x6,0x3a,0x31, 0x6,0x3a,0x32, 0x5,0x2f,0x29, 0x5,0x34,0x23,
+  0x5,0x34,0x24, 0x4,0x33,0x5c, 0x6,0x42,0x59, 0x6,0x42,0x57,
+  0x5,0x34,0x25, 0x6,0x42,0x55, 0x6,0x42,0x5b, 0x6,0x42,0x56,
+  0x6,0x42,0x5a, 0x6,0x42,0x58, 0x4,0x39,0x52, 0x6,0x4c,0x2c,
+  0xf,0x3d,0x52, 0x6,0x4c,0x2a, 0xf,0x3d,0x53, 0x5,0x41,0x24,
+  0x4,0x3f,0x32, 0x6,0x55,0x69, 0x4,0x3f,0x35, 0x4,0x3f,0x34,
+  0x6,0x55,0x67, 0x5,0x3a,0x56, 0x4,0x3f,0x36, 0xf,0x43,0x75,
+  0x6,0x55,0x68, 0x5,0x47,0x6d, 0x5,0x47,0x6e, 0x6,0x5f,0x53,
+  0x5,0x47,0x6f, 0x5,0x47,0x70, 0xf,0x4a,0x3e, 0x7,0x25,0x78,
+  0x4,0x4b,0x54, 0x7,0x25,0x76, 0x7,0x25,0x77, 0xf,0x50,0x61,
+  0x7,0x25,0x79, 0x7,0x30,0x54, 0x4,0x51,0x6b, 0xf,0x56,0x3f,
+  0x7,0x30,0x53, 0x5,0x5c,0x51, 0x5,0x5c,0x52, 0x7,0x39,0x66,
+  0x7,0x39,0x67, 0x5,0x73,0x67, 0x5,0x76,0x2c, 0x5,0x22,0x7e,
+  0x6,0x25,0x3e, 0x4,0x24,0x67, 0x6,0x28,0x6d, 0x5,0x24,0x6d,
+  0x5,0x24,0x6c, 0xf,0x25,0x21, 0xf,0x25,0x22, 0x5,0x27,0x45,
+  0x4,0x27,0x54, 0xf,0x28,0x30, 0xf,0x28,0x31, 0xf,0x28,0x32,
+  0xf,0x28,0x33, 0x6,0x2d,0x47, 0xf,0x28,0x35, 0x4,0x2a,0x65,
+  0x4,0x2a,0x63, 0x6,0x33,0x45, 0x5,0x2a,0x70, 0xf,0x2c,0x59,
+  0xf,0x2c,0x5a, 0xf,0x2c,0x5b, 0xf,0x2c,0x5d, 0xf,0x2c,0x5e,
+  0xf,0x2c,0x5f, 0xf,0x2c,0x61, 0xf,0x2c,0x63, 0x6,0x33,0x43,
+  0x6,0x33,0x44, 0xf,0x2c,0x64, 0xf,0x2c,0x60, 0x6,0x33,0x42,
+  0x5,0x2a,0x6f, 0x5,0x2a,0x71, 0x4,0x2e,0x60, 0x5,0x2f,0x33,
+  0x6,0x3a,0x34, 0x6,0x33,0x46, 0x6,0x3a,0x35, 0x5,0x2f,0x2f,
+  0x6,0x3a,0x39, 0x5,0x2f,0x2c, 0x5,0x2f,0x31, 0x5,0x2f,0x30,
+  0x4,0x2e,0x5b, 0x4,0x2e,0x5d, 0x5,0x2f,0x36, 0x5,0x2f,0x32,
+  0x5,0x2f,0x35, 0xf,0x31,0x3e, 0x4,0x2e,0x59, 0x5,0x2f,0x37,
+  0x6,0x3a,0x38, 0xf,0x31,0x42, 0xf,0x31,0x43, 0xf,0x31,0x45,
+  0xf,0x31,0x46, 0x4,0x2e,0x5a, 0x5,0x2f,0x2d, 0x6,0x3a,0x37,
+  0xf,0x31,0x48, 0xf,0x31,0x41, 0x5,0x34,0x26, 0x5,0x2f,0x2e,
+  0x6,0x3a,0x36, 0x5,0x34,0x2c, 0x5,0x34,0x28, 0x6,0x42,0x61,
+  0x6,0x42,0x5f, 0x5,0x34,0x31, 0x5,0x34,0x30, 0x5,0x34,0x2a,
+  0x6,0x42,0x60, 0x5,0x34,0x34, 0x5,0x34,0x32, 0x5,0x2f,0x38,
+  0x5,0x34,0x2e, 0x5,0x34,0x27, 0x5,0x34,0x29, 0x5,0x34,0x2d,
+  0xf,0x37,0x28, 0xf,0x37,0x29, 0xf,0x37,0x2a, 0xf,0x37,0x2b,
+  0xf,0x37,0x2e, 0xf,0x37,0x2f, 0xf,0x37,0x31, 0xf,0x37,0x32,
+  0xf,0x37,0x33, 0x6,0x42,0x5e, 0x6,0x42,0x5c, 0x6,0x4c,0x2e,
+  0xf,0x37,0x30, 0x5,0x34,0x2b, 0xf,0x37,0x2c, 0x6,0x42,0x62,
+  0x5,0x34,0x2f, 0x5,0x34,0x33, 0x6,0x42,0x5d, 0x5,0x3a,0x58,
+  0x5,0x3a,0x5e, 0x5,0x3a,0x57, 0x5,0x3a,0x5b, 0x4,0x39,0x56,
+  0x6,0x4c,0x35, 0x4,0x39,0x57, 0x4,0x39,0x55, 0x5,0x3a,0x5c,
+  0x5,0x3a,0x5d, 0x6,0x4c,0x31, 0x5,0x3a,0x5a, 0x5,0x3a,0x5f,
+  0xf,0x3d,0x54, 0xf,0x3d,0x55, 0xf,0x3d,0x56, 0xf,0x3d,0x57,
+  0x6,0x4c,0x34, 0x6,0x4c,0x30, 0x6,0x4c,0x32, 0x5,0x3a,0x61,
+  0x5,0x3a,0x60, 0x5,0x41,0x28, 0x6,0x55,0x71, 0x4,0x3f,0x37,
+  0x5,0x41,0x29, 0x6,0x55,0x6a, 0x6,0x55,0x6c, 0x5,0x41,0x25,
+  0x6,0x55,0x6e, 0x4,0x3f,0x41, 0x4,0x3f,0x43, 0x6,0x55,0x6f,
+  0x6,0x55,0x72, 0x5,0x41,0x26, 0x5,0x41,0x27, 0x6,0x55,0x6d,
+  0xf,0x43,0x77, 0xf,0x43,0x78, 0xf,0x43,0x79, 0xf,0x43,0x7a,
+  0xf,0x43,0x7b, 0xf,0x43,0x7c, 0xf,0x43,0x7d, 0xf,0x43,0x7e,
+  0xf,0x44,0x21, 0xf,0x44,0x22, 0xf,0x44,0x23, 0xf,0x44,0x24,
+  0xf,0x44,0x26, 0x6,0x55,0x70, 0x6,0x55,0x73, 0x6,0x5f,0x5b,
+  0x5,0x47,0x78, 0x6,0x5f,0x54, 0x7,0x25,0x7e, 0x5,0x47,0x7a,
+  0x6,0x5f,0x56, 0x4,0x45,0x52, 0x5,0x47,0x73, 0x5,0x47,0x72,
+  0x6,0x5f,0x57, 0x5,0x47,0x7b, 0x6,0x5f,0x59, 0x6,0x5f,0x5a,
+  0x5,0x47,0x75, 0x6,0x5f,0x55, 0x5,0x47,0x71, 0x5,0x47,0x7d,
+  0x6,0x5f,0x58, 0xf,0x4a,0x41, 0xf,0x4a,0x43, 0xf,0x4a,0x44,
+  0xf,0x4a,0x45, 0xf,0x4a,0x46, 0xf,0x4a,0x47, 0xf,0x4a,0x48,
+  0xf,0x4a,0x49, 0xf,0x4a,0x4b, 0xf,0x4a,0x4c, 0xf,0x4a,0x4d,
+  0xf,0x4a,0x4f, 0xf,0x4a,0x50, 0xf,0x4a,0x51, 0xf,0x4a,0x52,
+  0x4,0x45,0x54, 0xf,0x4a,0x40, 0x5,0x47,0x77, 0x5,0x47,0x7c,
+  0x5,0x47,0x79, 0x5,0x47,0x74, 0xf,0x50,0x64, 0x4,0x4b,0x5a,
+  0x5,0x4e,0x72, 0x5,0x4e,0x73, 0x7,0x26,0x21, 0x5,0x4e,0x70,
+  0x4,0x45,0x50, 0x7,0x26,0x25, 0x5,0x4e,0x75, 0x7,0x25,0x7d,
+  0xf,0x50,0x62, 0xf,0x50,0x63, 0xf,0x50,0x65, 0xf,0x50,0x66,
+  0xf,0x50,0x68, 0x7,0x26,0x22, 0x7,0x25,0x7a, 0x7,0x26,0x23,
+  0x5,0x4e,0x71, 0x5,0x4e,0x74, 0x7,0x25,0x7c, 0xf,0x4a,0x4a,
+  0x7,0x30,0x58, 0x5,0x56,0x31, 0x5,0x56,0x2e, 0x5,0x56,0x32,
+  0x7,0x30,0x55, 0x4,0x51,0x71, 0x4,0x51,0x73, 0x5,0x56,0x34,
+  0x4,0x51,0x72, 0x7,0x30,0x56, 0x7,0x30,0x5a, 0x4,0x51,0x6f,
+  0x7,0x30,0x57, 0xf,0x56,0x41, 0xf,0x56,0x42, 0xf,0x56,0x43,
+  0x5,0x56,0x30, 0xf,0x56,0x44, 0x5,0x56,0x2f, 0xf,0x56,0x45,
+  0xf,0x56,0x46, 0xf,0x56,0x47, 0xf,0x56,0x49, 0xf,0x56,0x4b,
+  0xf,0x56,0x4c, 0xf,0x56,0x4d, 0x5,0x5c,0x56, 0x7,0x39,0x68,
+  0x5,0x5c,0x54, 0x7,0x39,0x6f, 0x7,0x39,0x6a, 0x5,0x5c,0x53,
+  0x4,0x57,0x3a, 0x7,0x39,0x69, 0x5,0x5c,0x55, 0x4,0x57,0x3d,
+  0x7,0x39,0x6c, 0x4,0x57,0x3c, 0x5,0x56,0x35, 0x5,0x5c,0x58,
+  0x5,0x5c,0x57, 0x5,0x5c,0x59, 0xf,0x5b,0x41, 0xf,0x5b,0x42,
+  0xf,0x5b,0x43, 0xf,0x5b,0x44, 0xf,0x5b,0x45, 0xf,0x5b,0x46,
+  0xf,0x5b,0x47, 0xf,0x5b,0x48, 0xf,0x5b,0x49, 0x7,0x39,0x6b,
+  0x7,0x39,0x6e, 0xf,0x56,0x4a, 0x7,0x41,0x29, 0x5,0x62,0x76,
+  0x5,0x62,0x78, 0x7,0x41,0x26, 0x7,0x41,0x28, 0x5,0x62,0x77,
+  0x4,0x5c,0x30, 0x5,0x62,0x7a, 0x7,0x41,0x27, 0x5,0x62,0x79,
+  0x7,0x41,0x2a, 0xf,0x5f,0x65, 0xf,0x5f,0x66, 0xf,0x5f,0x67,
+  0xf,0x5f,0x68, 0xf,0x5f,0x69, 0x4,0x60,0x40, 0x5,0x68,0x5a,
+  0x5,0x68,0x59, 0xf,0x63,0x2b, 0xf,0x63,0x2c, 0xf,0x63,0x2d,
+  0xf,0x63,0x2e, 0x7,0x48,0x3a, 0x7,0x48,0x38, 0x7,0x48,0x39,
+  0xf,0x63,0x2f, 0x5,0x6c,0x65, 0x5,0x6c,0x66, 0x7,0x4e,0x59,
+  0x7,0x4e,0x5a, 0x5,0x6c,0x64, 0x5,0x6c,0x67, 0x4,0x60,0x41,
+  0x7,0x4e,0x5b, 0xf,0x65,0x5a, 0xf,0x65,0x5b, 0xf,0x65,0x5c,
+  0xf,0x65,0x5d, 0x7,0x4e,0x5d, 0x5,0x70,0x56, 0x5,0x70,0x57,
+  0xf,0x67,0x7d, 0x7,0x54,0x24, 0x4,0x66,0x62, 0xf,0x67,0x7c,
+  0x5,0x73,0x68, 0x7,0x58,0x48, 0x5,0x73,0x69, 0xf,0x69,0x5b,
+  0xf,0x69,0x5c, 0x7,0x58,0x49, 0x5,0x73,0x6a, 0x5,0x76,0x2e,
+  0x4,0x6a,0x5b, 0x5,0x76,0x2d, 0x5,0x76,0x2f, 0xf,0x6a,0x65,
+  0x7,0x5c,0x28, 0x7,0x5c,0x27, 0x7,0x5f,0x26, 0x7,0x5f,0x25,
+  0x7,0x5f,0x27, 0x7,0x62,0x46, 0x5,0x7a,0x2d, 0x5,0x7a,0x6e,
+  0x4,0x6d,0x75, 0x7,0x64,0x53, 0x7,0x65,0x3b, 0x5,0x7c,0x43,
+  0x6,0x22,0x27, 0x6,0x25,0x40, 0x6,0x28,0x6e, 0xf,0x22,0x68,
+  0x6,0x2d,0x48, 0xf,0x25,0x24, 0x6,0x33,0x47, 0x6,0x33,0x49,
+  0xf,0x28,0x36, 0xf,0x28,0x38, 0xf,0x28,0x39, 0xf,0x28,0x3a,
+  0xf,0x28,0x3b, 0xf,0x28,0x3d, 0xf,0x28,0x37, 0x6,0x31,0x5a,
+  0x5,0x2f,0x39, 0x6,0x3a,0x3a, 0x4,0x2e,0x63, 0x5,0x2f,0x3a,
+  0x6,0x3a,0x3b, 0x6,0x33,0x4b, 0xf,0x2c,0x65, 0xf,0x2c,0x66,
+  0xf,0x2c,0x67, 0xf,0x2c,0x68, 0xf,0x2c,0x69, 0xf,0x31,0x49,
+  0xf,0x31,0x4b, 0xf,0x31,0x4e, 0x6,0x3a,0x3e, 0x6,0x3a,0x3f,
+  0x6,0x3a,0x3d, 0x6,0x3a,0x40, 0x6,0x3a,0x3c, 0xf,0x2c,0x6a,
+  0x4,0x2a,0x68, 0x5,0x34,0x36, 0x6,0x3a,0x41, 0xf,0x31,0x4a,
+  0xf,0x31,0x4c, 0xf,0x31,0x4d, 0xf,0x31,0x4f, 0xf,0x31,0x50,
+  0xf,0x31,0x51, 0xf,0x31,0x52, 0xf,0x31,0x53, 0xf,0x31,0x54,
+  0xf,0x37,0x37, 0x6,0x42,0x63, 0x5,0x34,0x35, 0x6,0x4c,0x38,
+  0x5,0x3a,0x62, 0x6,0x4c,0x39, 0x6,0x4c,0x3a, 0x6,0x4c,0x3c,
+  0x5,0x3a,0x63, 0x6,0x4c,0x3d, 0x6,0x4c,0x3b, 0x6,0x4c,0x36,
+  0x6,0x4c,0x37, 0xf,0x37,0x34, 0xf,0x37,0x36, 0xf,0x37,0x38,
+  0xf,0x3d,0x5b, 0xf,0x37,0x35, 0x6,0x55,0x75, 0x5,0x41,0x2b,
+  0x5,0x41,0x2a, 0x5,0x41,0x2c, 0x6,0x4c,0x3f, 0x4,0x3f,0x48,
+  0xf,0x3d,0x58, 0xf,0x3d,0x59, 0xf,0x3d,0x5a, 0xf,0x3d,0x5c,
+  0xf,0x3d,0x5d, 0xf,0x3d,0x5e, 0xf,0x3d,0x5f, 0xf,0x3d,0x62,
+  0xf,0x3d,0x63, 0xf,0x3d,0x64, 0xf,0x44,0x28, 0xf,0x44,0x2a,
+  0xf,0x3d,0x61, 0x6,0x55,0x74, 0x5,0x48,0x23, 0x6,0x5f,0x5f,
+  0x6,0x5f,0x60, 0x4,0x45,0x56, 0x6,0x5f,0x63, 0x6,0x5f,0x61,
+  0xf,0x44,0x27, 0xf,0x44,0x29, 0xf,0x44,0x2b, 0xf,0x44,0x2c,
+  0xf,0x44,0x2d, 0xf,0x44,0x2e, 0xf,0x44,0x2f, 0xf,0x44,0x30,
+  0xf,0x44,0x31, 0xf,0x44,0x32, 0x6,0x5f,0x5d, 0x6,0x5f,0x62,
+  0x5,0x48,0x21, 0x6,0x5f,0x5e, 0x4,0x4b,0x5f, 0x7,0x26,0x26,
+  0x6,0x5f,0x5c, 0x6,0x5f,0x64, 0xf,0x4a,0x53, 0xf,0x4a,0x55,
+  0xf,0x4a,0x56, 0xf,0x4a,0x57, 0xf,0x4a,0x58, 0xf,0x4a,0x5a,
+  0x7,0x26,0x28, 0x5,0x56,0x38, 0x7,0x30,0x5c, 0x5,0x56,0x36,
+  0x7,0x30,0x5d, 0x4,0x51,0x77, 0x5,0x56,0x39, 0x5,0x56,0x37,
+  0x5,0x56,0x3a, 0x7,0x26,0x2a, 0x7,0x30,0x5b, 0xf,0x50,0x6a,
+  0xf,0x50,0x69, 0xf,0x56,0x51, 0x4,0x57,0x43, 0x5,0x5c,0x5a,
+  0x7,0x39,0x73, 0x4,0x57,0x44, 0x7,0x39,0x76, 0x7,0x39,0x74,
+  0x7,0x30,0x5e, 0xf,0x50,0x6b, 0xf,0x56,0x4e, 0xf,0x56,0x4f,
+  0xf,0x56,0x50, 0xf,0x56,0x52, 0x7,0x39,0x71, 0x7,0x39,0x75,
+  0x7,0x39,0x72, 0x7,0x39,0x70, 0xf,0x5b,0x4d, 0xf,0x5b,0x4f,
+  0x4,0x5c,0x34, 0x5,0x62,0x7b, 0x7,0x41,0x2c, 0xf,0x5b,0x4b,
+  0xf,0x5b,0x4c, 0xf,0x5b,0x4e, 0xf,0x5b,0x50, 0xf,0x5b,0x51,
+  0xf,0x5b,0x52, 0x7,0x41,0x2b, 0x4,0x5c,0x33, 0x5,0x68,0x5b,
+  0x7,0x48,0x3c, 0x7,0x48,0x3d, 0xf,0x5f,0x6a, 0xf,0x5f,0x6b,
+  0x5,0x6c,0x68, 0x4,0x63,0x77, 0xf,0x65,0x5e, 0x7,0x4e,0x5e,
+  0x7,0x54,0x26, 0x7,0x54,0x25, 0xf,0x65,0x5f, 0x4,0x68,0x7d,
+  0x7,0x58,0x4a, 0x7,0x58,0x4b, 0x7,0x5c,0x29, 0xf,0x69,0x5d,
+  0x7,0x5c,0x2a, 0x7,0x5c,0x2b, 0x5,0x77,0x6e, 0x7,0x5c,0x2c,
+  0x5,0x77,0x6f, 0xf,0x6a,0x67, 0x5,0x79,0x32, 0x7,0x62,0x49,
+  0x7,0x62,0x47, 0x7,0x63,0x5d, 0xf,0x6c,0x67, 0xf,0x22,0x69,
+  0x6,0x33,0x4d, 0x6,0x42,0x64, 0x4,0x39,0x5b, 0x6,0x4c,0x40,
+  0x6,0x55,0x76, 0x6,0x5f,0x65, 0x7,0x26,0x2c, 0x7,0x30,0x5f,
+  0x7,0x30,0x60, 0x7,0x41,0x2d, 0x5,0x73,0x6b, 0x7,0x61,0x28,
+  0x4,0x21,0x7e, 0x6,0x25,0x41, 0xf,0x22,0x6a, 0x6,0x28,0x6f,
+  0xf,0x25,0x25, 0x6,0x28,0x70, 0x4,0x27,0x55, 0x5,0x27,0x48,
+  0x4,0x27,0x57, 0x5,0x27,0x47, 0xf,0x28,0x3e, 0xf,0x28,0x3f,
+  0xf,0x28,0x40, 0xf,0x28,0x41, 0xf,0x28,0x42, 0x6,0x2d,0x4a,
+  0x6,0x33,0x51, 0x6,0x33,0x54, 0x5,0x2a,0x74, 0x5,0x2a,0x72,
+  0x4,0x2a,0x70, 0x5,0x2a,0x75, 0x6,0x33,0x56, 0x6,0x33,0x50,
+  0x6,0x33,0x52, 0x4,0x2a,0x6d, 0x6,0x33,0x4f, 0x5,0x2a,0x73,
+  0x6,0x33,0x57, 0xf,0x2c,0x6b, 0xf,0x2c,0x6c, 0xf,0x2c,0x6e,
+  0xf,0x2c,0x6f, 0xf,0x2c,0x70, 0x6,0x33,0x55, 0x6,0x33,0x53,
+  0x6,0x33,0x4e, 0x5,0x2f,0x3c, 0x5,0x2f,0x3b, 0x6,0x3a,0x45,
+  0x5,0x2f,0x3d, 0x6,0x3a,0x46, 0x5,0x2f,0x3e, 0x5,0x2a,0x76,
+  0x5,0x34,0x3c, 0x6,0x3a,0x47, 0xf,0x31,0x55, 0xf,0x31,0x56,
+  0x6,0x3a,0x42, 0x6,0x3a,0x44, 0x5,0x34,0x3a, 0x6,0x42,0x69,
+  0x5,0x34,0x3f, 0x4,0x33,0x68, 0x5,0x34,0x3d, 0x6,0x42,0x68,
+  0x5,0x34,0x37, 0xf,0x37,0x3a, 0xf,0x37,0x3c, 0xf,0x37,0x3d,
+  0xf,0x37,0x3e, 0x4,0x33,0x6c, 0x6,0x42,0x65, 0x6,0x42,0x6a,
+  0x4,0x39,0x5f, 0x5,0x3a,0x64, 0x4,0x39,0x60, 0x4,0x39,0x5c,
+  0x6,0x4c,0x41, 0x6,0x4c,0x42, 0x6,0x4c,0x45, 0x6,0x4c,0x47,
+  0x4,0x39,0x5d, 0x6,0x4c,0x44, 0x4,0x3f,0x51, 0xf,0x3d,0x65,
+  0xf,0x3d,0x67, 0xf,0x3d,0x69, 0x5,0x34,0x3e, 0xf,0x3d,0x66,
+  0x5,0x41,0x36, 0x5,0x41,0x2f, 0x6,0x55,0x79, 0x6,0x55,0x77,
+  0x6,0x55,0x7a, 0x5,0x41,0x30, 0x5,0x41,0x2d, 0x5,0x41,0x32,
+  0x5,0x41,0x34, 0x5,0x41,0x38, 0x5,0x41,0x33, 0x4,0x3f,0x4e,
+  0x6,0x56,0x21, 0x5,0x41,0x2e, 0x6,0x55,0x7b, 0x6,0x55,0x7e,
+  0x6,0x55,0x7c, 0xf,0x44,0x33, 0xf,0x44,0x34, 0xf,0x44,0x35,
+  0xf,0x44,0x36, 0xf,0x44,0x37, 0xf,0x44,0x38, 0xf,0x44,0x39,
+  0xf,0x44,0x3a, 0x6,0x55,0x78, 0x6,0x55,0x7d, 0x5,0x41,0x37,
+  0x5,0x41,0x35, 0x5,0x48,0x28, 0x6,0x5f,0x69, 0x5,0x45,0x2d,
+  0x5,0x48,0x2d, 0x6,0x5f,0x68, 0x6,0x5f,0x66, 0x6,0x5f,0x6a,
+  0x4,0x45,0x5c, 0x5,0x48,0x2e, 0x5,0x48,0x29, 0x6,0x5f,0x6e,
+  0x6,0x5f,0x6f, 0x5,0x48,0x2b, 0x5,0x48,0x27, 0x5,0x48,0x2c,
+  0x6,0x5f,0x70, 0x5,0x48,0x2a, 0x6,0x5f,0x67, 0xf,0x4a,0x60,
+  0xf,0x4a,0x5b, 0xf,0x4a,0x5c, 0xf,0x4a,0x5d, 0xf,0x4a,0x5e,
+  0xf,0x4a,0x5f, 0xf,0x4a,0x61, 0xf,0x4a,0x62, 0xf,0x4a,0x63,
+  0xf,0x4a,0x65, 0x6,0x5f,0x6d, 0x6,0x5f,0x6c, 0x5,0x4e,0x7b,
+  0x5,0x4e,0x78, 0x5,0x4e,0x7a, 0x7,0x26,0x33, 0x7,0x26,0x30,
+  0x5,0x4e,0x79, 0x4,0x4b,0x69, 0x7,0x26,0x34, 0x7,0x26,0x31,
+  0x7,0x26,0x38, 0x5,0x48,0x2f, 0x7,0x26,0x2f, 0x5,0x56,0x45,
+  0x5,0x4e,0x7c, 0x5,0x4e,0x7d, 0x4,0x4b,0x67, 0x4,0x4b,0x6a,
+  0x7,0x26,0x35, 0xf,0x50,0x6c, 0xf,0x50,0x6e, 0xf,0x50,0x6f,
+  0xf,0x50,0x70, 0xf,0x50,0x71, 0xf,0x50,0x72, 0x7,0x26,0x2e,
+  0x7,0x26,0x36, 0x7,0x26,0x37, 0x4,0x51,0x7b, 0x7,0x30,0x6d,
+  0x5,0x56,0x3d, 0x5,0x56,0x40, 0x7,0x30,0x69, 0x5,0x56,0x3c,
+  0x5,0x56,0x3f, 0x5,0x56,0x3e, 0x4,0x51,0x7e, 0x5,0x56,0x3b,
+  0x5,0x56,0x43, 0x7,0x30,0x63, 0x7,0x30,0x64, 0x5,0x56,0x42,
+  0x7,0x30,0x62, 0x5,0x56,0x46, 0x5,0x5c,0x5b, 0x5,0x56,0x47,
+  0x7,0x30,0x6b, 0x7,0x30,0x6a, 0x7,0x30,0x6c, 0x7,0x30,0x61,
+  0xf,0x56,0x54, 0xf,0x56,0x55, 0x7,0x30,0x65, 0x7,0x30,0x67,
+  0x7,0x30,0x68, 0x5,0x56,0x44, 0x5,0x56,0x41, 0x5,0x5c,0x5e,
+  0x5,0x5c,0x61, 0x5,0x5c,0x62, 0x5,0x5c,0x5f, 0x5,0x5c,0x5c,
+  0x5,0x5c,0x5d, 0x4,0x57,0x4a, 0x7,0x39,0x77, 0x5,0x5c,0x64,
+  0x4,0x57,0x46, 0x5,0x5c,0x60, 0x7,0x39,0x7a, 0xf,0x5b,0x54,
+  0xf,0x5b,0x55, 0xf,0x5b,0x56, 0xf,0x5b,0x57, 0xf,0x5b,0x58,
+  0xf,0x5b,0x5a, 0x7,0x39,0x78, 0xf,0x5b,0x53, 0x5,0x56,0x48,
+  0x7,0x39,0x79, 0x5,0x5c,0x63, 0xf,0x56,0x53, 0x5,0x62,0x7d,
+  0x5,0x63,0x26, 0x5,0x63,0x24, 0x5,0x63,0x21, 0x5,0x63,0x22,
+  0x5,0x63,0x25, 0x7,0x41,0x30, 0x5,0x62,0x7e, 0x7,0x41,0x2f,
+  0x5,0x63,0x23, 0xf,0x5f,0x6c, 0xf,0x5f,0x6d, 0xf,0x5f,0x6e,
+  0xf,0x5f,0x6f, 0xf,0x5f,0x70, 0xf,0x5f,0x71, 0xf,0x5f,0x72,
+  0x5,0x62,0x7c, 0x5,0x68,0x5e, 0x4,0x60,0x43, 0x5,0x68,0x5c,
+  0x4,0x60,0x44, 0x4,0x60,0x47, 0x7,0x48,0x3f, 0x4,0x60,0x46,
+  0x5,0x68,0x5d, 0x7,0x4e,0x62, 0x7,0x48,0x41, 0x7,0x48,0x3e,
+  0xf,0x63,0x30, 0x7,0x48,0x40, 0x5,0x6c,0x6b, 0x4,0x63,0x7a,
+  0x4,0x63,0x78, 0x5,0x6c,0x6a, 0x7,0x4e,0x60, 0x4,0x5c,0x38,
+  0x5,0x6c,0x69, 0x5,0x6c,0x6c, 0x7,0x4e,0x5f, 0x7,0x4e,0x61,
+  0xf,0x65,0x60, 0xf,0x65,0x61, 0xf,0x65,0x63, 0x7,0x4e,0x63,
+  0x5,0x6c,0x6d, 0x7,0x54,0x28, 0x7,0x54,0x27, 0x5,0x70,0x58,
+  0x7,0x54,0x29, 0x7,0x58,0x4d, 0x5,0x73,0x6c, 0x7,0x58,0x4e,
+  0x5,0x76,0x30, 0x5,0x76,0x31, 0x7,0x58,0x4f, 0x5,0x77,0x70,
+  0x7,0x5c,0x2d, 0x7,0x5c,0x2e, 0x7,0x5f,0x28, 0x7,0x5e,0x71,
+  0xf,0x6b,0x57, 0xf,0x6b,0x58, 0x4,0x6c,0x77, 0x5,0x79,0x33,
+  0xf,0x6c,0x34, 0x4,0x6c,0x78, 0x5,0x7a,0x2e, 0x5,0x7b,0x61,
+  0x5,0x7b,0x62, 0x6,0x23,0x37, 0x5,0x24,0x6f, 0x5,0x24,0x70,
+  0x4,0x27,0x59, 0x4,0x27,0x5a, 0x4,0x27,0x58, 0x6,0x2d,0x4d,
+  0x6,0x2d,0x4c, 0x6,0x2d,0x4f, 0x3,0x2a,0x45, 0x6,0x2d,0x4b,
+  0xf,0x28,0x43, 0x4,0x2a,0x74, 0x6,0x33,0x59, 0x6,0x33,0x5b,
+  0x6,0x33,0x58, 0x5,0x2a,0x77, 0x4,0x2a,0x73, 0x5,0x2a,0x79,
+  0x5,0x2a,0x78, 0x6,0x33,0x5a, 0x6,0x33,0x5c, 0x6,0x33,0x5d,
+  0x5,0x2a,0x7a, 0xf,0x2c,0x71, 0xf,0x2c,0x72, 0xf,0x2c,0x73,
+  0x5,0x2f,0x3f, 0x4,0x2e,0x66, 0x4,0x2e,0x6b, 0x4,0x2e,0x68,
+  0x5,0x2f,0x43, 0x5,0x2f,0x42, 0x5,0x2f,0x41, 0x6,0x3a,0x4c,
+  0x4,0x2e,0x69, 0x4,0x2e,0x6a, 0x4,0x2e,0x67, 0x6,0x3a,0x4a,
+  0x6,0x3a,0x48, 0x5,0x2f,0x40, 0x5,0x2f,0x44, 0xf,0x31,0x58,
+  0xf,0x31,0x59, 0xf,0x31,0x5a, 0x6,0x3a,0x4b, 0x6,0x3a,0x49,
+  0x5,0x34,0x44, 0x5,0x34,0x43, 0x6,0x42,0x6c, 0x6,0x42,0x6b,
+  0x6,0x42,0x6d, 0x5,0x34,0x41, 0x4,0x33,0x6e, 0x5,0x34,0x42,
+  0x5,0x34,0x40, 0x6,0x42,0x6e, 0xf,0x37,0x40, 0xf,0x37,0x41,
+  0xf,0x37,0x42, 0xf,0x37,0x43, 0xf,0x37,0x44, 0x5,0x3a,0x72,
+  0x4,0x39,0x66, 0x5,0x3a,0x74, 0x6,0x4c,0x4e, 0x6,0x4c,0x4a,
+  0x4,0x39,0x69, 0x6,0x4c,0x52, 0x5,0x3a,0x69, 0x5,0x3a,0x6f,
+  0x5,0x3a,0x71, 0x6,0x4c,0x50, 0x5,0x3a,0x67, 0x6,0x4c,0x51,
+  0x5,0x3a,0x68, 0x6,0x4c,0x4b, 0x5,0x3a,0x6a, 0x4,0x39,0x68,
+  0x5,0x3a,0x73, 0x6,0x4c,0x4c, 0x5,0x3a,0x70, 0x6,0x4c,0x49,
+  0x5,0x3a,0x66, 0x5,0x3a,0x6d, 0x6,0x4c,0x4f, 0x5,0x3a,0x6e,
+  0x5,0x3a,0x6b, 0x6,0x4c,0x4d, 0xf,0x3d,0x6b, 0x5,0x41,0x3a,
+  0x6,0x56,0x29, 0x5,0x41,0x3c, 0x5,0x41,0x3b, 0x5,0x41,0x3e,
+  0x6,0x56,0x22, 0x6,0x56,0x24, 0x5,0x3a,0x6c, 0x5,0x41,0x3d,
+  0x5,0x41,0x3f, 0x6,0x56,0x28, 0x6,0x56,0x2b, 0x5,0x41,0x40,
+  0x6,0x56,0x26, 0x6,0x56,0x25, 0xf,0x44,0x3b, 0xf,0x44,0x3d,
+  0xf,0x44,0x3e, 0xf,0x44,0x3f, 0xf,0x44,0x40, 0x6,0x56,0x23,
+  0x6,0x56,0x2a, 0x6,0x57,0x26, 0x4,0x45,0x61, 0x6,0x5f,0x77,
+  0x5,0x48,0x32, 0x6,0x5f,0x76, 0x6,0x5f,0x72, 0x6,0x5f,0x74,
+  0x6,0x5f,0x73, 0x5,0x48,0x31, 0x6,0x5f,0x79, 0xf,0x4a,0x66,
+  0x5,0x48,0x33, 0x6,0x5f,0x71, 0xf,0x44,0x3c, 0x7,0x26,0x3b,
+  0x5,0x4f,0x21, 0x5,0x4f,0x27, 0x5,0x4f,0x2a, 0x5,0x48,0x30,
+  0x7,0x26,0x3a, 0x5,0x4f,0x2b, 0x5,0x4f,0x26, 0x5,0x4f,0x22,
+  0x5,0x4f,0x2c, 0x5,0x4f,0x25, 0x7,0x26,0x39, 0x5,0x4e,0x7e,
+  0x5,0x4f,0x28, 0x5,0x4f,0x24, 0x5,0x4f,0x29, 0x7,0x27,0x2e,
+  0x4,0x4b,0x6d, 0x5,0x56,0x4f, 0x5,0x56,0x51, 0x4,0x52,0x23,
+  0x5,0x56,0x50, 0x4,0x52,0x26, 0x5,0x56,0x49, 0x4,0x52,0x28,
+  0x7,0x30,0x70, 0x5,0x56,0x4a, 0x5,0x56,0x4c, 0x5,0x56,0x4b,
+  0x5,0x56,0x53, 0x5,0x56,0x4d, 0x5,0x56,0x54, 0x7,0x30,0x6e,
+  0x5,0x56,0x4e, 0x5,0x5c,0x65, 0x5,0x56,0x55, 0xf,0x56,0x56,
+  0xf,0x56,0x57, 0xf,0x56,0x58, 0xf,0x56,0x59, 0xf,0x56,0x5a,
+  0x7,0x30,0x71, 0x5,0x5c,0x6a, 0x5,0x5c,0x67, 0x7,0x3a,0x21,
+  0x4,0x57,0x4e, 0x5,0x5c,0x69, 0x7,0x39,0x7c, 0x7,0x39,0x7d,
+  0x7,0x39,0x7b, 0x5,0x5c,0x66, 0x7,0x39,0x7e, 0x7,0x30,0x72,
+  0x5,0x5c,0x68, 0xf,0x5b,0x5b, 0x5,0x63,0x28, 0x5,0x63,0x27,
+  0xf,0x5f,0x74, 0x4,0x60,0x4a, 0x7,0x48,0x44, 0x7,0x48,0x43,
+  0x5,0x68,0x5f, 0x7,0x48,0x42, 0x7,0x4e,0x64, 0x7,0x4e,0x66,
+  0x5,0x68,0x60, 0x4,0x63,0x7b, 0x5,0x6c,0x6e, 0x7,0x54,0x2d,
+  0x7,0x4e,0x67, 0x7,0x4e,0x65, 0xf,0x65,0x64, 0x5,0x70,0x5b,
+  0x7,0x54,0x2b, 0x4,0x66,0x67, 0x4,0x66,0x66, 0x5,0x70,0x59,
+  0x7,0x54,0x2c, 0x5,0x70,0x5a, 0xf,0x68,0x21, 0xf,0x65,0x65,
+  0x5,0x76,0x32, 0x7,0x5c,0x2f, 0x5,0x77,0x71, 0x7,0x61,0x2a,
+  0xf,0x6b,0x59, 0x7,0x5f,0x29, 0x5,0x79,0x34, 0x7,0x62,0x4a,
+  0x5,0x7b,0x63, 0x6,0x28,0x72, 0x6,0x28,0x71, 0x5,0x27,0x49,
+  0x5,0x27,0x4a, 0x4,0x2a,0x75, 0xf,0x2c,0x74, 0xf,0x2c,0x78,
+  0x4,0x2e,0x6f, 0x5,0x2f,0x47, 0x5,0x2f,0x48, 0x4,0x2e,0x6c,
+  0x5,0x2f,0x46, 0x5,0x2f,0x45, 0x4,0x2e,0x6e, 0xf,0x31,0x5c,
+  0xf,0x31,0x5d, 0xf,0x31,0x5e, 0xf,0x31,0x5f, 0xf,0x31,0x61,
+  0xf,0x31,0x62, 0x6,0x3a,0x4d, 0x6,0x3a,0x4e, 0x6,0x42,0x72,
+  0x4,0x33,0x73, 0x6,0x42,0x71, 0x6,0x42,0x73, 0x6,0x42,0x70,
+  0x4,0x33,0x74, 0xf,0x37,0x45, 0xf,0x37,0x47, 0x5,0x34,0x47,
+  0xf,0x37,0x48, 0x4,0x39,0x6b, 0x6,0x4c,0x55, 0x5,0x3a,0x75,
+  0x5,0x3a,0x77, 0x5,0x3a,0x76, 0x5,0x3a,0x78, 0x6,0x4c,0x54,
+  0xf,0x3d,0x6d, 0xf,0x3d,0x6e, 0xf,0x3d,0x6f, 0xf,0x3d,0x70,
+  0x4,0x3f,0x56, 0x4,0x3f,0x58, 0x5,0x41,0x42, 0x4,0x3f,0x59,
+  0x6,0x56,0x2c, 0x5,0x41,0x41, 0x6,0x56,0x2d, 0x6,0x56,0x2e,
+  0xf,0x44,0x41, 0xf,0x44,0x42, 0xf,0x44,0x43, 0x5,0x41,0x43,
+  0x5,0x48,0x34, 0x6,0x5f,0x7a, 0x5,0x48,0x35, 0x4,0x45,0x62,
+  0xf,0x4a,0x67, 0xf,0x4a,0x68, 0xf,0x4a,0x6a, 0xf,0x4a,0x69,
+  0x7,0x26,0x3f, 0x4,0x4b,0x6e, 0x5,0x4f,0x2d, 0xf,0x50,0x73,
+  0xf,0x50,0x74, 0xf,0x50,0x75, 0x7,0x26,0x3d, 0xf,0x56,0x5c,
+  0xf,0x56,0x5b, 0x4,0x57,0x51, 0x7,0x30,0x74, 0x5,0x56,0x56,
+  0xf,0x5b,0x5c, 0x5,0x5c,0x6c, 0x5,0x5d,0x63, 0x7,0x3a,0x22,
+  0x5,0x5c,0x6b, 0x5,0x63,0x2a, 0x7,0x3a,0x23, 0xf,0x5f,0x75,
+  0x7,0x41,0x31, 0x5,0x63,0x29, 0x7,0x4e,0x68, 0x7,0x54,0x2e,
+  0xf,0x65,0x66, 0x7,0x48,0x45, 0x5,0x70,0x5c, 0xf,0x68,0x22,
+  0x7,0x58,0x50, 0xf,0x69,0x5e, 0xf,0x6a,0x68, 0x7,0x61,0x2b,
+  0xf,0x25,0x26, 0x5,0x27,0x4b, 0x6,0x2d,0x50, 0x5,0x27,0x4d,
+  0x5,0x27,0x4c, 0x5,0x2a,0x7c, 0x5,0x2a,0x7d, 0x5,0x2a,0x7b,
+  0x6,0x33,0x5f, 0x6,0x33,0x5e, 0x5,0x2a,0x7e, 0xf,0x2c,0x79,
+  0xf,0x2c,0x7a, 0xf,0x2c,0x7b, 0xf,0x2c,0x7c, 0xf,0x2c,0x7d,
+  0xf,0x29,0x24, 0x5,0x2f,0x4e, 0x5,0x2f,0x49, 0x4,0x2e,0x74,
+  0x5,0x2f,0x4a, 0x5,0x2f,0x4c, 0x5,0x2f,0x4d, 0x6,0x3a,0x50,
+  0x5,0x2f,0x51, 0x5,0x2f,0x4f, 0x5,0x2f,0x4b, 0x6,0x3a,0x4f,
+  0x6,0x3a,0x51, 0x5,0x2f,0x50, 0x5,0x2f,0x52, 0xf,0x31,0x63,
+  0xf,0x31,0x64, 0xf,0x31,0x65, 0xf,0x31,0x66, 0xf,0x31,0x67,
+  0xf,0x31,0x68, 0xf,0x31,0x69, 0xf,0x31,0x6a, 0x4,0x2e,0x76,
+  0x6,0x42,0x74, 0x6,0x42,0x7a, 0x5,0x34,0x4a, 0x4,0x33,0x79,
+  0x5,0x34,0x4d, 0x6,0x42,0x77, 0x5,0x34,0x4c, 0x6,0x42,0x7c,
+  0x4,0x33,0x75, 0x5,0x34,0x4e, 0x6,0x42,0x75, 0x5,0x2f,0x53,
+  0x5,0x34,0x49, 0x6,0x42,0x79, 0x6,0x42,0x7b, 0x5,0x34,0x50,
+  0x5,0x34,0x51, 0x6,0x42,0x78, 0xf,0x37,0x49, 0xf,0x37,0x4a,
+  0xf,0x37,0x4b, 0xf,0x37,0x4c, 0xf,0x37,0x4e, 0xf,0x37,0x4f,
+  0x5,0x3a,0x7c, 0x5,0x3b,0x22, 0x5,0x3a,0x7b, 0x5,0x3a,0x7e,
+  0x4,0x39,0x6c, 0x4,0x39,0x6e, 0x6,0x4c,0x5a, 0x5,0x34,0x4b,
+  0x4,0x39,0x73, 0x5,0x3b,0x21, 0x5,0x3a,0x7a, 0x4,0x39,0x79,
+  0x4,0x39,0x77, 0x4,0x39,0x70, 0x6,0x4c,0x5d, 0x4,0x39,0x78,
+  0x6,0x4c,0x57, 0x5,0x3b,0x25, 0x6,0x4c,0x59, 0x6,0x4c,0x5c,
+  0x5,0x34,0x4f, 0x5,0x3a,0x7d, 0xf,0x3d,0x71, 0xf,0x3d,0x72,
+  0xf,0x3d,0x73, 0xf,0x3d,0x74, 0xf,0x3d,0x75, 0xf,0x3d,0x76,
+  0xf,0x3d,0x78, 0xf,0x3d,0x79, 0xf,0x3d,0x7a, 0xf,0x3d,0x77,
+  0x5,0x3b,0x23, 0x5,0x41,0x54, 0x5,0x41,0x48, 0x5,0x41,0x4f,
+  0x4,0x3f,0x5c, 0x5,0x41,0x4d, 0x5,0x41,0x45, 0x4,0x3f,0x64,
+  0x4,0x3f,0x65, 0x5,0x41,0x50, 0x4,0x3f,0x5f, 0x5,0x3a,0x79,
+  0x6,0x56,0x30, 0x5,0x41,0x46, 0x5,0x41,0x55, 0x5,0x41,0x4b,
+  0x5,0x41,0x52, 0x5,0x41,0x44, 0x5,0x41,0x49, 0x5,0x41,0x4c,
+  0x6,0x56,0x34, 0x6,0x56,0x32, 0x6,0x56,0x37, 0x6,0x56,0x3a,
+  0x6,0x56,0x33, 0x6,0x56,0x36, 0x6,0x56,0x38, 0x6,0x5f,0x7b,
+  0x5,0x41,0x53, 0x5,0x41,0x51, 0x5,0x41,0x4e, 0x5,0x41,0x47,
+  0x6,0x56,0x31, 0x6,0x4c,0x58, 0x6,0x56,0x35, 0x6,0x56,0x39,
+  0xf,0x44,0x44, 0xf,0x44,0x46, 0xf,0x44,0x47, 0xf,0x44,0x48,
+  0xf,0x44,0x49, 0xf,0x44,0x4a, 0xf,0x44,0x4b, 0xf,0x44,0x4c,
+  0xf,0x44,0x4d, 0xf,0x44,0x4e, 0xf,0x44,0x4f, 0xf,0x44,0x50,
+  0x6,0x56,0x2f, 0xf,0x41,0x3e, 0x5,0x48,0x45, 0x5,0x41,0x56,
+  0x4,0x45,0x6c, 0x5,0x48,0x43, 0x6,0x60,0x27, 0x4,0x45,0x67,
+  0x6,0x5f,0x7c, 0x6,0x5f,0x7d, 0x5,0x48,0x3c, 0x5,0x48,0x3b,
+  0x5,0x48,0x42, 0x4,0x45,0x6f, 0x6,0x60,0x28, 0x5,0x48,0x40,
+  0x6,0x60,0x26, 0x5,0x48,0x38, 0x5,0x48,0x39, 0x6,0x60,0x25,
+  0x6,0x60,0x21, 0x5,0x48,0x3a, 0x5,0x48,0x41, 0x5,0x48,0x37,
+  0x5,0x48,0x3d, 0x6,0x60,0x22, 0x5,0x41,0x4a, 0x5,0x48,0x47,
+  0x6,0x5f,0x7e, 0x5,0x48,0x3e, 0x6,0x60,0x24, 0x5,0x48,0x3f,
+  0x4,0x45,0x71, 0x5,0x48,0x44, 0xf,0x4a,0x6b, 0xf,0x4a,0x6c,
+  0xf,0x4a,0x6d, 0xf,0x4a,0x6e, 0xf,0x4a,0x6f, 0xf,0x4a,0x70,
+  0xf,0x4a,0x73, 0xf,0x4a,0x74, 0xf,0x4a,0x75, 0xf,0x4a,0x76,
+  0xf,0x4a,0x77, 0xf,0x4a,0x78, 0xf,0x4a,0x79, 0xf,0x4a,0x7a,
+  0xf,0x4a,0x72, 0xf,0x4a,0x71, 0x5,0x4f,0x3a, 0x7,0x26,0x49,
+  0x7,0x26,0x4b, 0x5,0x4f,0x44, 0x4,0x4c,0x2f, 0x5,0x4f,0x33,
+  0x7,0x26,0x51, 0x7,0x26,0x4a, 0x5,0x4f,0x3e, 0x4,0x4b,0x71,
+  0x4,0x4b,0x6f, 0x5,0x4f,0x41, 0x5,0x4f,0x2f, 0x5,0x4f,0x34,
+  0x5,0x4f,0x43, 0x7,0x26,0x42, 0x5,0x4f,0x40, 0x5,0x4f,0x31,
+  0x4,0x52,0x40, 0x5,0x4f,0x39, 0x5,0x4f,0x42, 0x4,0x4b,0x72,
+  0x4,0x4c,0x29, 0x4,0x4c,0x23, 0x4,0x4b,0x7d, 0x5,0x4f,0x38,
+  0x5,0x4f,0x37, 0x5,0x4f,0x3c, 0x7,0x26,0x4e, 0x5,0x48,0x48,
+  0x5,0x4f,0x35, 0x7,0x26,0x50, 0x7,0x26,0x47, 0x7,0x26,0x44,
+  0x5,0x4f,0x3f, 0x7,0x26,0x40, 0x7,0x26,0x53, 0x4,0x4c,0x24,
+  0x7,0x26,0x4f, 0x4,0x4b,0x7c, 0x7,0x26,0x4c, 0x5,0x4f,0x3d,
+  0x7,0x26,0x45, 0x7,0x26,0x43, 0x5,0x4f,0x2e, 0x7,0x26,0x48,
+  0x7,0x26,0x46, 0x5,0x4f,0x46, 0xf,0x50,0x78, 0x7,0x26,0x52,
+  0xf,0x50,0x77, 0xf,0x50,0x7a, 0xf,0x50,0x7b, 0xf,0x50,0x7c,
+  0xf,0x50,0x7d, 0xf,0x50,0x7e, 0xf,0x51,0x22, 0xf,0x51,0x24,
+  0xf,0x51,0x29, 0xf,0x51,0x25, 0xf,0x51,0x26, 0xf,0x51,0x27,
+  0xf,0x51,0x2a, 0x5,0x56,0x64, 0x4,0x52,0x41, 0x4,0x52,0x3e,
+  0x5,0x56,0x58, 0x5,0x56,0x5e, 0x5,0x56,0x66, 0x7,0x31,0x2a,
+  0x5,0x56,0x5c, 0x4,0x52,0x2e, 0x5,0x56,0x5d, 0x4,0x52,0x2c,
+  0x5,0x56,0x68, 0x7,0x26,0x41, 0x7,0x31,0x25, 0x4,0x52,0x32,
+  0x5,0x56,0x67, 0x4,0x52,0x31, 0x7,0x31,0x29, 0x4,0x52,0x3c,
+  0x7,0x30,0x7e, 0x7,0x31,0x26, 0x4,0x52,0x30, 0x5,0x56,0x60,
+  0x7,0x30,0x7b, 0x4,0x52,0x3f, 0x5,0x56,0x5f, 0x5,0x56,0x59,
+  0x7,0x30,0x7a, 0x7,0x31,0x28, 0x4,0x52,0x2a, 0x5,0x56,0x57,
+  0x7,0x31,0x24, 0x4,0x52,0x35, 0x5,0x56,0x65, 0x7,0x30,0x7d,
+  0x5,0x56,0x62, 0x4,0x52,0x33, 0x7,0x31,0x2b, 0x7,0x30,0x75,
+  0x7,0x31,0x27, 0x5,0x4f,0x30, 0x5,0x56,0x63, 0x5,0x56,0x5a,
+  0x7,0x30,0x78, 0x7,0x31,0x23, 0x7,0x30,0x76, 0x5,0x56,0x61,
+  0xf,0x56,0x72, 0x5,0x56,0x5b, 0x7,0x30,0x7c, 0x7,0x30,0x77,
+  0x7,0x31,0x22, 0xf,0x56,0x5d, 0xf,0x56,0x5e, 0xf,0x56,0x60,
+  0xf,0x56,0x61, 0xf,0x56,0x62, 0xf,0x56,0x63, 0xf,0x56,0x64,
+  0xf,0x56,0x65, 0xf,0x56,0x66, 0xf,0x56,0x67, 0xf,0x56,0x68,
+  0xf,0x56,0x69, 0xf,0x56,0x6a, 0xf,0x56,0x6b, 0xf,0x56,0x6c,
+  0xf,0x56,0x6d, 0xf,0x56,0x6e, 0xf,0x56,0x6f, 0xf,0x56,0x70,
+  0xf,0x56,0x71, 0xf,0x56,0x73, 0x7,0x30,0x79, 0xf,0x50,0x79,
+  0x5,0x5d,0x24, 0x5,0x5d,0x21, 0x4,0x57,0x5d, 0x5,0x5c,0x75,
+  0x5,0x5d,0x2d, 0x5,0x5c,0x79, 0x4,0x57,0x5c, 0x4,0x57,0x63,
+  0x4,0x57,0x67, 0x7,0x3a,0x2c, 0x5,0x5d,0x2b, 0x4,0x57,0x60,
+  0x5,0x5d,0x22, 0x5,0x5c,0x70, 0x5,0x5d,0x23, 0x5,0x5c,0x72,
+  0x5,0x5d,0x31, 0x5,0x5c,0x7b, 0x5,0x5d,0x2a, 0x5,0x5c,0x77,
+  0x5,0x5d,0x34, 0x7,0x3a,0x24, 0x5,0x5c,0x76, 0x5,0x5c,0x7c,
+  0x5,0x5d,0x26, 0x4,0x57,0x64, 0x5,0x5d,0x27, 0x7,0x3a,0x29,
+  0x5,0x63,0x42, 0x5,0x5d,0x2c, 0x5,0x5c,0x7a, 0x7,0x3a,0x2f,
+  0x7,0x3a,0x28, 0x5,0x5c,0x6f, 0x5,0x5d,0x32, 0x5,0x5d,0x29,
+  0x5,0x5c,0x73, 0x7,0x3a,0x2b, 0x5,0x5d,0x2e, 0x5,0x5c,0x71,
+  0x5,0x5c,0x6e, 0x5,0x5d,0x28, 0x4,0x57,0x66, 0x4,0x5c,0x3c,
+  0x5,0x5d,0x33, 0x5,0x5c,0x78, 0x5,0x5d,0x2f, 0x5,0x5d,0x25,
+  0x7,0x31,0x21, 0x5,0x5c,0x74, 0x7,0x3a,0x27, 0x7,0x3a,0x26,
+  0x7,0x3a,0x25, 0x7,0x3a,0x2d, 0xf,0x5b,0x5d, 0xf,0x5b,0x5e,
+  0xf,0x5b,0x60, 0xf,0x5b,0x61, 0xf,0x5b,0x62, 0xf,0x5b,0x63,
+  0xf,0x5b,0x64, 0xf,0x5b,0x66, 0xf,0x5b,0x67, 0xf,0x5b,0x68,
+  0xf,0x5b,0x69, 0x7,0x3a,0x2a, 0x7,0x3a,0x2e, 0x4,0x57,0x68,
+  0xf,0x5b,0x65, 0x4,0x57,0x61, 0x5,0x63,0x4b, 0x5,0x63,0x47,
+  0x5,0x5d,0x35, 0x4,0x5c,0x52, 0x5,0x63,0x45, 0x5,0x63,0x38,
+  0x5,0x63,0x33, 0x4,0x5c,0x47, 0x5,0x63,0x4a, 0x5,0x63,0x40,
+  0x3,0x58,0x4f, 0x5,0x63,0x2e, 0x4,0x5c,0x4e, 0x4,0x5c,0x45,
+  0x5,0x63,0x43, 0x5,0x63,0x39, 0x5,0x63,0x4c, 0x4,0x5c,0x3d,
+  0x7,0x41,0x3b, 0x5,0x63,0x46, 0x5,0x63,0x30, 0x5,0x63,0x37,
+  0x4,0x5c,0x3e, 0x4,0x5c,0x3f, 0x5,0x63,0x48, 0x7,0x41,0x39,
+  0x5,0x63,0x35, 0x5,0x63,0x32, 0x5,0x63,0x3f, 0x7,0x41,0x35,
+  0x5,0x63,0x2c, 0x7,0x41,0x36, 0x4,0x5c,0x41, 0x7,0x41,0x33,
+  0x4,0x5c,0x53, 0x5,0x63,0x3e, 0x7,0x41,0x38, 0x5,0x63,0x3d,
+  0x7,0x41,0x3a, 0x7,0x41,0x3e, 0x7,0x41,0x34, 0x5,0x63,0x31,
+  0x4,0x5c,0x4d, 0x5,0x63,0x36, 0x5,0x63,0x3a, 0x5,0x63,0x44,
+  0x5,0x63,0x49, 0x5,0x63,0x3c, 0x5,0x63,0x2d, 0x7,0x41,0x42,
+  0x7,0x41,0x41, 0x5,0x63,0x3b, 0x5,0x63,0x2b, 0x5,0x63,0x2f,
+  0x7,0x41,0x32, 0x7,0x41,0x37, 0xf,0x5f,0x76, 0xf,0x5f,0x77,
+  0xf,0x5f,0x78, 0xf,0x5f,0x79, 0xf,0x5f,0x7a, 0xf,0x5f,0x7b,
+  0xf,0x5f,0x7c, 0xf,0x5f,0x7d, 0xf,0x5f,0x7e, 0xf,0x60,0x21,
+  0xf,0x60,0x23, 0xf,0x60,0x24, 0xf,0x60,0x25, 0x7,0x41,0x40,
+  0x7,0x41,0x3d, 0xf,0x5b,0x6a, 0xf,0x63,0x36, 0xf,0x63,0x37,
+  0xf,0x60,0x22, 0x5,0x68,0x6a, 0x5,0x68,0x6f, 0x7,0x48,0x4e,
+  0x4,0x60,0x59, 0x7,0x48,0x4c, 0x5,0x68,0x63, 0x4,0x60,0x54,
+  0x4,0x60,0x55, 0x4,0x60,0x51, 0x5,0x68,0x69, 0x4,0x60,0x4f,
+  0x4,0x60,0x50, 0x7,0x48,0x48, 0x4,0x60,0x52, 0x5,0x68,0x62,
+  0x4,0x60,0x58, 0x4,0x60,0x4d, 0x7,0x48,0x47, 0x5,0x68,0x6d,
+  0x5,0x68,0x68, 0x5,0x68,0x70, 0x5,0x68,0x6c, 0x5,0x68,0x6b,
+  0x5,0x68,0x65, 0x5,0x68,0x64, 0x5,0x68,0x67, 0x7,0x48,0x46,
+  0x7,0x48,0x4a, 0x5,0x68,0x61, 0x5,0x68,0x71, 0x7,0x48,0x49,
+  0xf,0x63,0x31, 0xf,0x63,0x33, 0xf,0x63,0x34, 0xf,0x63,0x35,
+  0xf,0x63,0x38, 0xf,0x63,0x39, 0xf,0x63,0x3a, 0xf,0x63,0x3b,
+  0xf,0x63,0x3c, 0x7,0x48,0x4b, 0x7,0x48,0x4d, 0x5,0x6c,0x7c,
+  0x5,0x6c,0x7b, 0x5,0x6c,0x76, 0x4,0x60,0x57, 0x5,0x6c,0x74,
+  0x7,0x4e,0x6c, 0x5,0x6c,0x7a, 0x4,0x63,0x7d, 0x7,0x4e,0x74,
+  0x4,0x64,0x22, 0x5,0x6c,0x78, 0x5,0x6c,0x73, 0x4,0x66,0x70,
+  0x7,0x4e,0x6a, 0x5,0x6c,0x6f, 0x5,0x6c,0x75, 0x5,0x6c,0x71,
+  0x7,0x4e,0x69, 0x7,0x4e,0x75, 0x5,0x6c,0x77, 0x7,0x4e,0x6d,
+  0x7,0x4e,0x6e, 0x5,0x6c,0x72, 0x7,0x4e,0x6f, 0x7,0x54,0x38,
+  0x7,0x4e,0x71, 0x7,0x4e,0x70, 0x7,0x4e,0x72, 0x7,0x4e,0x73,
+  0xf,0x65,0x68, 0xf,0x65,0x69, 0x7,0x4e,0x6b, 0x5,0x70,0x64,
+  0x5,0x70,0x68, 0x5,0x70,0x69, 0x4,0x66,0x71, 0x4,0x66,0x6b,
+  0x5,0x70,0x66, 0x5,0x70,0x6b, 0x7,0x54,0x2f, 0x5,0x70,0x5e,
+  0x5,0x70,0x63, 0x5,0x70,0x60, 0x4,0x64,0x21, 0x5,0x70,0x67,
+  0x5,0x70,0x5f, 0x5,0x6c,0x70, 0x7,0x54,0x35, 0x5,0x70,0x6a,
+  0x5,0x70,0x5d, 0x7,0x54,0x31, 0x5,0x70,0x65, 0x4,0x69,0x27,
+  0x5,0x70,0x6c, 0x7,0x54,0x36, 0x7,0x54,0x30, 0x7,0x54,0x34,
+  0xf,0x68,0x23, 0xf,0x68,0x24, 0xf,0x68,0x25, 0xf,0x68,0x26,
+  0xf,0x68,0x27, 0xf,0x68,0x28, 0xf,0x68,0x29, 0x7,0x54,0x33,
+  0x7,0x54,0x39, 0x7,0x54,0x32, 0x7,0x58,0x55, 0x4,0x69,0x24,
+  0x4,0x69,0x23, 0x5,0x73,0x70, 0x5,0x73,0x6e, 0x5,0x70,0x62,
+  0x5,0x73,0x71, 0x7,0x58,0x52, 0x5,0x70,0x6d, 0x7,0x58,0x51,
+  0x5,0x73,0x74, 0x4,0x69,0x25, 0x5,0x73,0x6d, 0x7,0x58,0x54,
+  0x7,0x54,0x37, 0x5,0x73,0x76, 0x5,0x73,0x73, 0x5,0x73,0x6f,
+  0x5,0x73,0x75, 0x5,0x73,0x72, 0x7,0x58,0x56, 0xf,0x69,0x5f,
+  0xf,0x69,0x60, 0xf,0x69,0x61, 0xf,0x69,0x62, 0x7,0x58,0x53,
+  0x7,0x59,0x34, 0x4,0x6a,0x5e, 0x5,0x76,0x33, 0x7,0x5c,0x31,
+  0x5,0x76,0x34, 0x4,0x6a,0x5f, 0x4,0x6a,0x60, 0x4,0x6a,0x62,
+  0x7,0x5c,0x30, 0x5,0x76,0x36, 0x7,0x5c,0x32, 0x5,0x76,0x35,
+  0x7,0x5c,0x36, 0x7,0x5c,0x35, 0xf,0x6a,0x69, 0x7,0x5c,0x33,
+  0x7,0x5c,0x37, 0x7,0x5c,0x34, 0x5,0x77,0x72, 0x7,0x5f,0x2b,
+  0x7,0x5f,0x2e, 0x5,0x77,0x74, 0x5,0x77,0x75, 0x7,0x5f,0x2d,
+  0x5,0x76,0x37, 0x7,0x5f,0x2c, 0x7,0x5f,0x2a, 0x5,0x77,0x73,
+  0x7,0x5f,0x31, 0x4,0x6b,0x77, 0xf,0x6b,0x5a, 0xf,0x6b,0x5b,
+  0xf,0x6b,0x5c, 0x7,0x5f,0x2f, 0x5,0x79,0x35, 0x7,0x61,0x2c,
+  0x7,0x61,0x2e, 0x7,0x61,0x31, 0x4,0x6c,0x79, 0x7,0x61,0x2f,
+  0x7,0x5f,0x30, 0x7,0x61,0x2d, 0x5,0x7a,0x31, 0x5,0x7a,0x2f,
+  0x5,0x7a,0x30, 0x7,0x61,0x30, 0xf,0x6c,0x4f, 0xf,0x6c,0x4d,
+  0x7,0x63,0x5e, 0x7,0x63,0x5f, 0xf,0x6c,0x68, 0x7,0x63,0x60,
+  0x5,0x7b,0x44, 0x5,0x7b,0x64, 0xf,0x6d,0x27, 0x7,0x64,0x54,
+  0x4,0x6e,0x4e, 0x5,0x7b,0x7c, 0x5,0x7c,0x2b, 0x5,0x24,0x71,
+  0xf,0x25,0x27, 0x5,0x27,0x4e, 0x6,0x2d,0x51, 0xf,0x28,0x45,
+  0x6,0x33,0x61, 0x5,0x2b,0x22, 0x6,0x33,0x60, 0x5,0x2b,0x23,
+  0xf,0x2c,0x7e, 0xf,0x2d,0x22, 0x6,0x3a,0x52, 0x5,0x2f,0x54,
+  0x6,0x3a,0x56, 0x5,0x2f,0x55, 0x6,0x3a,0x54, 0x5,0x2f,0x56,
+  0xf,0x31,0x6b, 0xf,0x31,0x6c, 0xf,0x31,0x6d, 0xf,0x31,0x6e,
+  0x6,0x3a,0x53, 0x6,0x3a,0x55, 0x4,0x33,0x7e, 0x5,0x34,0x55,
+  0x4,0x34,0x24, 0x5,0x34,0x54, 0x4,0x34,0x21, 0x5,0x34,0x58,
+  0x5,0x34,0x53, 0x5,0x34,0x56, 0x5,0x34,0x57, 0x4,0x34,0x23,
+  0x5,0x34,0x5a, 0x5,0x34,0x52, 0x6,0x42,0x7d, 0x6,0x4c,0x63,
+  0x6,0x43,0x21, 0xf,0x37,0x50, 0xf,0x37,0x51, 0x6,0x42,0x7e,
+  0xf,0x37,0x52, 0x5,0x3b,0x26, 0x4,0x39,0x7a, 0x6,0x4c,0x61,
+  0x6,0x4c,0x5e, 0x6,0x4c,0x65, 0x5,0x3b,0x28, 0x4,0x3a,0x21,
+  0x6,0x4c,0x64, 0x6,0x4c,0x5f, 0xf,0x3d,0x7c, 0xf,0x3d,0x7e,
+  0xf,0x3e,0x22, 0xf,0x3d,0x7b, 0x6,0x4c,0x62, 0x5,0x41,0x57,
+  0x4,0x3f,0x68, 0x6,0x56,0x3d, 0x5,0x41,0x59, 0x5,0x41,0x5a,
+  0x5,0x3b,0x27, 0x5,0x41,0x58, 0x6,0x56,0x3f, 0x6,0x56,0x3e,
+  0x4,0x39,0x7e, 0x5,0x41,0x5b, 0x5,0x41,0x5d, 0x5,0x41,0x5c,
+  0x6,0x56,0x41, 0xf,0x44,0x52, 0xf,0x44,0x53, 0xf,0x44,0x55,
+  0xf,0x44,0x56, 0x6,0x56,0x3b, 0xf,0x44,0x54, 0x6,0x56,0x40,
+  0xf,0x44,0x51, 0x6,0x60,0x2d, 0x5,0x48,0x4a, 0x6,0x60,0x2b,
+  0x6,0x60,0x2e, 0x5,0x48,0x4c, 0x4,0x45,0x73, 0x6,0x56,0x3c,
+  0x6,0x60,0x33, 0x6,0x60,0x32, 0x5,0x48,0x4b, 0x6,0x60,0x30,
+  0x5,0x48,0x49, 0x5,0x48,0x4d, 0xf,0x4a,0x7c, 0xf,0x4a,0x7d,
+  0xf,0x4a,0x7e, 0xf,0x4b,0x21, 0xf,0x4b,0x22, 0xf,0x4b,0x23,
+  0xf,0x4b,0x25, 0xf,0x4b,0x26, 0xf,0x4b,0x28, 0xf,0x4b,0x29,
+  0xf,0x4b,0x2a, 0xf,0x4b,0x2d, 0x6,0x60,0x2f, 0xf,0x4b,0x2c,
+  0x6,0x60,0x29, 0x6,0x60,0x2a, 0xf,0x4b,0x24, 0x7,0x26,0x58,
+  0x7,0x26,0x54, 0x4,0x4c,0x36, 0x5,0x4f,0x4b, 0x7,0x26,0x55,
+  0x7,0x26,0x59, 0x4,0x4c,0x33, 0x5,0x4f,0x4a, 0x5,0x4f,0x4c,
+  0x5,0x4f,0x50, 0x5,0x48,0x4e, 0x5,0x4f,0x4f, 0x5,0x4f,0x4d,
+  0x7,0x26,0x5b, 0x7,0x26,0x56, 0x5,0x4f,0x49, 0x4,0x4c,0x34,
+  0x5,0x4f,0x4e, 0x4,0x4c,0x32, 0x7,0x26,0x5a, 0x5,0x4f,0x48,
+  0x5,0x4f,0x47, 0xf,0x51,0x2b, 0xf,0x51,0x2c, 0xf,0x51,0x2d,
+  0xf,0x51,0x2f, 0x5,0x56,0x6e, 0x5,0x56,0x6c, 0x5,0x5d,0x3c,
+  0x4,0x52,0x43, 0x5,0x56,0x6b, 0x4,0x52,0x42, 0x7,0x31,0x2f,
+  0x7,0x31,0x30, 0x5,0x56,0x6f, 0x7,0x31,0x2c, 0x5,0x56,0x6a,
+  0x5,0x56,0x6d, 0x5,0x56,0x70, 0xf,0x56,0x74, 0xf,0x56,0x75,
+  0x7,0x31,0x2e, 0x5,0x5d,0x36, 0x5,0x5d,0x38, 0x7,0x3a,0x30,
+  0x5,0x5d,0x39, 0x5,0x5d,0x37, 0x5,0x5d,0x3a, 0x5,0x5d,0x3b,
+  0x7,0x3a,0x32, 0x7,0x3a,0x34, 0x7,0x3a,0x35, 0x7,0x3a,0x31,
+  0xf,0x5b,0x6b, 0xf,0x5b,0x6c, 0xf,0x5b,0x6d, 0xf,0x5b,0x6f,
+  0xf,0x5b,0x70, 0xf,0x5b,0x71, 0xf,0x5b,0x72, 0x4,0x57,0x6c,
+  0x5,0x63,0x52, 0x7,0x41,0x45, 0x4,0x5c,0x57, 0x5,0x63,0x53,
+  0x5,0x63,0x4f, 0x7,0x48,0x56, 0x5,0x63,0x51, 0x5,0x5d,0x3d,
+  0x7,0x41,0x46, 0x5,0x63,0x50, 0x7,0x4e,0x78, 0x5,0x63,0x4d,
+  0x7,0x41,0x43, 0xf,0x60,0x27, 0xf,0x60,0x28, 0xf,0x60,0x29,
+  0xf,0x5b,0x6e, 0x5,0x68,0x74, 0x7,0x48,0x4f, 0x7,0x48,0x50,
+  0x4,0x60,0x5e, 0x4,0x60,0x5c, 0x5,0x68,0x73, 0x5,0x70,0x6e,
+  0x7,0x48,0x52, 0x7,0x48,0x53, 0x7,0x41,0x48, 0x4,0x60,0x5f,
+  0x4,0x5c,0x58, 0x5,0x68,0x75, 0x7,0x41,0x47, 0x5,0x68,0x72,
+  0xf,0x63,0x3e, 0x7,0x48,0x51, 0x7,0x48,0x54, 0x7,0x48,0x55,
+  0xf,0x63,0x3f, 0x7,0x4e,0x77, 0x5,0x6c,0x7e, 0x7,0x4e,0x76,
+  0xf,0x65,0x6a, 0xf,0x65,0x6b, 0x4,0x66,0x73, 0x4,0x66,0x72,
+  0x5,0x70,0x6f, 0x7,0x54,0x3d, 0x7,0x54,0x3c, 0xf,0x68,0x2a,
+  0xf,0x68,0x2b, 0x7,0x54,0x3b, 0x5,0x73,0x77, 0x7,0x58,0x57,
+  0x5,0x73,0x78, 0x4,0x6a,0x63, 0x4,0x6a,0x64, 0x7,0x5c,0x38,
+  0xf,0x6a,0x6a, 0x5,0x76,0x38, 0x7,0x5c,0x39, 0x7,0x5f,0x32,
+  0x5,0x77,0x77, 0x5,0x77,0x76, 0x5,0x79,0x38, 0x7,0x61,0x33,
+  0x5,0x79,0x37, 0x5,0x79,0x36, 0x7,0x61,0x32, 0x7,0x62,0x4c,
+  0x4,0x6d,0x5d, 0x5,0x7a,0x32, 0x7,0x62,0x4b, 0x5,0x7a,0x33,
+  0x7,0x63,0x62, 0x7,0x63,0x61, 0x5,0x7b,0x7d, 0x7,0x66,0x36,
+  0x5,0x27,0x4f, 0x6,0x2d,0x52, 0x5,0x27,0x50, 0xf,0x28,0x47,
+  0xf,0x28,0x48, 0x5,0x27,0x51, 0x5,0x2b,0x26, 0x6,0x33,0x62,
+  0x6,0x33,0x65, 0x5,0x2b,0x24, 0x5,0x2b,0x25, 0x6,0x33,0x67,
+  0x6,0x33,0x63, 0x5,0x2b,0x27, 0xf,0x2d,0x23, 0x6,0x33,0x68,
+  0x6,0x3a,0x5b, 0x6,0x3a,0x57, 0x4,0x2e,0x79, 0x6,0x3a,0x63,
+  0x4,0x2e,0x7b, 0x6,0x3a,0x5d, 0x6,0x3a,0x5c, 0x6,0x3a,0x5f,
+  0x5,0x2f,0x5a, 0x4,0x2e,0x7a, 0x4,0x2f,0x24, 0x6,0x3a,0x64,
+  0x6,0x3a,0x59, 0x4,0x2f,0x23, 0x6,0x3a,0x5e, 0x4,0x2f,0x22,
+  0x6,0x3a,0x60, 0x6,0x3a,0x58, 0x5,0x2f,0x59, 0x6,0x3a,0x61,
+  0x5,0x2f,0x58, 0x5,0x2f,0x57, 0x6,0x3a,0x5a, 0xf,0x31,0x71,
+  0xf,0x31,0x72, 0xf,0x31,0x73, 0xf,0x31,0x74, 0xf,0x31,0x75,
+  0xf,0x31,0x76, 0xf,0x31,0x77, 0x4,0x2f,0x26, 0x6,0x3a,0x62,
+  0x5,0x34,0x5f, 0x5,0x34,0x5d, 0x4,0x34,0x32, 0x4,0x34,0x28,
+  0x4,0x34,0x2a, 0x6,0x43,0x28, 0x4,0x34,0x2f, 0x5,0x34,0x5e,
+  0x4,0x34,0x31, 0x6,0x43,0x29, 0x5,0x34,0x5b, 0x4,0x34,0x2c,
+  0x6,0x43,0x2b, 0x6,0x43,0x2a, 0x6,0x43,0x25, 0x6,0x43,0x23,
+  0x6,0x43,0x24, 0x5,0x34,0x5c, 0xf,0x37,0x58, 0xf,0x37,0x59,
+  0xf,0x37,0x5a, 0xf,0x37,0x5b, 0x6,0x43,0x27, 0x6,0x43,0x2c,
+  0xf,0x37,0x55, 0x5,0x3b,0x31, 0x5,0x3b,0x30, 0x5,0x3b,0x2e,
+  0x5,0x3b,0x32, 0x6,0x4c,0x6d, 0x4,0x3a,0x23, 0x6,0x4c,0x66,
+  0x6,0x4c,0x6c, 0x4,0x3a,0x22, 0x4,0x3a,0x24, 0x6,0x4c,0x6e,
+  0x6,0x43,0x26, 0x6,0x4c,0x67, 0x6,0x4c,0x70, 0x6,0x4c,0x68,
+  0x5,0x3b,0x2d, 0x6,0x4c,0x6a, 0x6,0x4c,0x69, 0x6,0x4c,0x6f,
+  0x5,0x3b,0x2a, 0x5,0x3b,0x29, 0x5,0x3b,0x2b, 0xf,0x3e,0x25,
+  0xf,0x3e,0x26, 0xf,0x3e,0x27, 0xf,0x3e,0x28, 0xf,0x3e,0x29,
+  0xf,0x3e,0x2a, 0xf,0x3e,0x2b, 0xf,0x3e,0x2c, 0xf,0x3e,0x2d,
+  0xf,0x3e,0x2e, 0x6,0x4c,0x6b, 0x5,0x3b,0x2f, 0x6,0x56,0x4b,
+  0x6,0x56,0x42, 0x5,0x41,0x5f, 0x5,0x41,0x5e, 0x4,0x3f,0x6c,
+  0x6,0x56,0x44, 0x4,0x3f,0x6d, 0x6,0x56,0x48, 0x6,0x56,0x45,
+  0x4,0x3f,0x69, 0x5,0x41,0x61, 0x5,0x41,0x60, 0x6,0x56,0x43,
+  0x6,0x56,0x49, 0x4,0x3a,0x25, 0x4,0x3f,0x6b, 0x6,0x56,0x46,
+  0x5,0x41,0x62, 0x6,0x56,0x4c, 0x6,0x56,0x4d, 0x4,0x3f,0x72,
+  0x6,0x56,0x4a, 0xf,0x44,0x57, 0xf,0x44,0x58, 0xf,0x44,0x59,
+  0xf,0x44,0x5a, 0xf,0x44,0x5b, 0xf,0x44,0x5c, 0xf,0x44,0x5d,
+  0xf,0x44,0x5e, 0xf,0x44,0x5f, 0xf,0x44,0x60, 0xf,0x44,0x61,
+  0xf,0x44,0x62, 0x6,0x56,0x47, 0x4,0x3f,0x70, 0x4,0x45,0x78,
+  0x5,0x48,0x50, 0x4,0x45,0x76, 0x5,0x48,0x52, 0x6,0x60,0x3f,
+  0x6,0x60,0x3e, 0x5,0x48,0x56, 0x4,0x45,0x7a, 0x5,0x48,0x55,
+  0x4,0x45,0x77, 0x6,0x60,0x39, 0x6,0x60,0x43, 0x6,0x60,0x42,
+  0x6,0x60,0x36, 0x4,0x45,0x7d, 0x5,0x48,0x4f, 0x5,0x41,0x63,
+  0x6,0x60,0x41, 0x5,0x48,0x51, 0x6,0x60,0x3c, 0x6,0x60,0x34,
+  0x5,0x48,0x53, 0x5,0x48,0x57, 0x6,0x60,0x40, 0x6,0x60,0x3b,
+  0x4,0x46,0x22, 0x6,0x60,0x38, 0xf,0x4b,0x2e, 0xf,0x4b,0x2f,
+  0xf,0x4b,0x30, 0xf,0x4b,0x31, 0xf,0x4b,0x32, 0xf,0x4b,0x33,
+  0xf,0x4b,0x34, 0xf,0x4b,0x35, 0xf,0x4b,0x36, 0xf,0x4b,0x37,
+  0x6,0x60,0x35, 0x6,0x60,0x37, 0x6,0x60,0x3d, 0x4,0x4c,0x38,
+  0x4,0x4c,0x43, 0x7,0x26,0x60, 0x4,0x4c,0x42, 0x4,0x4c,0x3b,
+  0x5,0x4f,0x5b, 0x5,0x4f,0x59, 0x4,0x52,0x48, 0x5,0x4f,0x58,
+  0x5,0x4f,0x5d, 0x5,0x4f,0x55, 0x4,0x4c,0x46, 0x5,0x4f,0x5a,
+  0x7,0x26,0x6c, 0x7,0x26,0x5e, 0x7,0x26,0x64, 0x5,0x4f,0x5c,
+  0x5,0x4f,0x52, 0x7,0x26,0x61, 0x7,0x26,0x66, 0x5,0x4f,0x57,
+  0x4,0x4c,0x41, 0x4,0x4c,0x39, 0x7,0x26,0x5d, 0x7,0x26,0x65,
+  0x7,0x26,0x5c, 0x7,0x26,0x67, 0x6,0x60,0x3a, 0x7,0x26,0x6d,
+  0x7,0x26,0x6b, 0x5,0x4f,0x51, 0x5,0x4f,0x56, 0x5,0x4f,0x5e,
+  0xf,0x51,0x30, 0xf,0x51,0x31, 0xf,0x51,0x32, 0xf,0x51,0x33,
+  0xf,0x51,0x34, 0xf,0x51,0x35, 0xf,0x51,0x38, 0xf,0x51,0x39,
+  0xf,0x51,0x3a, 0xf,0x51,0x3d, 0xf,0x51,0x3e, 0xf,0x51,0x3f,
+  0x7,0x26,0x62, 0x7,0x26,0x68, 0x7,0x26,0x5f, 0x7,0x26,0x63,
+  0x7,0x31,0x46, 0x4,0x52,0x46, 0x7,0x31,0x43, 0x7,0x31,0x44,
+  0x4,0x52,0x4a, 0x7,0x31,0x40, 0x7,0x31,0x3d, 0x5,0x56,0x74,
+  0x5,0x56,0x76, 0x7,0x31,0x31, 0x7,0x31,0x42, 0x7,0x31,0x32,
+  0x7,0x3a,0x36, 0x7,0x31,0x33, 0x7,0x31,0x36, 0x5,0x56,0x75,
+  0x5,0x56,0x77, 0x5,0x56,0x73, 0x5,0x5d,0x45, 0x4,0x52,0x45,
+  0x5,0x56,0x71, 0x5,0x56,0x72, 0x4,0x52,0x4b, 0x7,0x31,0x3a,
+  0x7,0x31,0x37, 0x7,0x31,0x38, 0x7,0x31,0x41, 0x4,0x52,0x4d,
+  0x7,0x31,0x35, 0x5,0x56,0x79, 0x7,0x31,0x34, 0x7,0x31,0x45,
+  0x7,0x31,0x3b, 0x5,0x56,0x78, 0x7,0x31,0x3f, 0x7,0x31,0x3e,
+  0x7,0x31,0x39, 0x7,0x31,0x3c, 0xf,0x56,0x76, 0xf,0x56,0x77,
+  0xf,0x56,0x78, 0xf,0x56,0x79, 0xf,0x56,0x7a, 0xf,0x56,0x7b,
+  0xf,0x56,0x7c, 0xf,0x56,0x7d, 0xf,0x56,0x7e, 0x7,0x3a,0x44,
+  0x7,0x3a,0x43, 0x5,0x5d,0x43, 0x5,0x5d,0x40, 0x4,0x57,0x71,
+  0x7,0x3a,0x37, 0x5,0x5d,0x41, 0x7,0x3a,0x42, 0x4,0x57,0x6f,
+  0x7,0x3a,0x3a, 0x5,0x5d,0x44, 0x5,0x5d,0x3e, 0x7,0x3a,0x3e,
+  0x7,0x3a,0x3b, 0x7,0x3a,0x3c, 0x7,0x3a,0x40, 0x5,0x5d,0x42,
+  0x7,0x3a,0x41, 0x7,0x3a,0x3d, 0x5,0x5d,0x47, 0xf,0x5b,0x73,
+  0xf,0x5b,0x74, 0xf,0x5b,0x75, 0xf,0x5b,0x77, 0xf,0x5b,0x78,
+  0xf,0x5b,0x79, 0xf,0x5b,0x7a, 0xf,0x5b,0x7b, 0xf,0x5b,0x7c,
+  0xf,0x5b,0x7d, 0xf,0x5b,0x7e, 0xf,0x5c,0x21, 0xf,0x5c,0x22,
+  0x7,0x3a,0x3f, 0x7,0x3a,0x38, 0x4,0x5c,0x64, 0x4,0x5c,0x5c,
+  0x7,0x41,0x4e, 0x4,0x5c,0x63, 0x4,0x5c,0x5d, 0x7,0x41,0x4d,
+  0x7,0x41,0x54, 0x4,0x5c,0x61, 0x4,0x57,0x70, 0x7,0x41,0x49,
+  0x5,0x63,0x55, 0x5,0x63,0x58, 0x5,0x63,0x57, 0x7,0x41,0x4b,
+  0x7,0x41,0x51, 0x5,0x63,0x56, 0x7,0x41,0x4a, 0x7,0x41,0x4f,
+  0x7,0x41,0x52, 0x7,0x41,0x4c, 0x7,0x41,0x57, 0x7,0x41,0x55,
+  0x7,0x41,0x50, 0x7,0x41,0x5b, 0x5,0x63,0x5a, 0x7,0x41,0x56,
+  0xf,0x60,0x2a, 0xf,0x60,0x2b, 0xf,0x60,0x2c, 0xf,0x60,0x2d,
+  0xf,0x60,0x2e, 0xf,0x60,0x2f, 0xf,0x60,0x30, 0xf,0x60,0x31,
+  0xf,0x60,0x32, 0x5,0x63,0x59, 0x7,0x41,0x5c, 0x7,0x41,0x5a,
+  0x7,0x41,0x58, 0x7,0x41,0x53, 0x4,0x60,0x64, 0x4,0x60,0x65,
+  0x7,0x48,0x5f, 0x4,0x60,0x69, 0x7,0x48,0x67, 0x5,0x68,0x76,
+  0x7,0x48,0x64, 0x4,0x60,0x67, 0x7,0x48,0x66, 0x4,0x60,0x6b,
+  0x5,0x68,0x79, 0x4,0x60,0x60, 0x5,0x68,0x7a, 0x7,0x48,0x61,
+  0x7,0x47,0x4b, 0x4,0x60,0x61, 0x7,0x48,0x5d, 0x5,0x68,0x77,
+  0x7,0x48,0x63, 0x7,0x48,0x5b, 0x7,0x48,0x62, 0x5,0x68,0x78,
+  0x7,0x48,0x59, 0x7,0x48,0x5a, 0x7,0x48,0x60, 0x7,0x48,0x5e,
+  0xf,0x63,0x40, 0xf,0x63,0x41, 0xf,0x63,0x43, 0xf,0x63,0x44,
+  0xf,0x63,0x45, 0x7,0x4a,0x73, 0x7,0x48,0x5c, 0x7,0x48,0x65,
+  0x4,0x60,0x6a, 0x7,0x4e,0x7d, 0x7,0x4e,0x7c, 0x5,0x6d,0x23,
+  0x5,0x6d,0x21, 0x4,0x64,0x25, 0x7,0x4e,0x7e, 0x7,0x4f,0x23,
+  0x7,0x4e,0x7b, 0x7,0x54,0x42, 0x7,0x48,0x58, 0x5,0x6d,0x24,
+  0x7,0x4f,0x24, 0x7,0x4f,0x26, 0x7,0x4e,0x7a, 0x4,0x66,0x79,
+  0x7,0x4f,0x22, 0x7,0x4e,0x79, 0x7,0x4f,0x25, 0xf,0x65,0x6c,
+  0xf,0x65,0x6d, 0xf,0x65,0x6e, 0xf,0x65,0x70, 0xf,0x65,0x71,
+  0x7,0x4f,0x21, 0x5,0x70,0x72, 0x4,0x66,0x75, 0x7,0x54,0x43,
+  0x5,0x70,0x73, 0x4,0x66,0x78, 0x4,0x66,0x76, 0x4,0x66,0x77,
+  0x7,0x58,0x5e, 0x7,0x4f,0x27, 0x7,0x54,0x3f, 0x7,0x54,0x3e,
+  0x7,0x54,0x41, 0xf,0x68,0x2c, 0xf,0x68,0x2d, 0xf,0x68,0x2e,
+  0xf,0x68,0x2f, 0x4,0x66,0x74, 0x7,0x54,0x40, 0x5,0x70,0x71,
+  0x7,0x54,0x44, 0x5,0x73,0x7b, 0x7,0x58,0x59, 0x5,0x73,0x7c,
+  0x5,0x73,0x79, 0x4,0x69,0x29, 0x5,0x76,0x3a, 0x7,0x58,0x5d,
+  0x5,0x73,0x7a, 0x7,0x58,0x5b, 0xf,0x69,0x63, 0xf,0x69,0x64,
+  0xf,0x69,0x65, 0xf,0x69,0x66, 0x7,0x58,0x5a, 0x7,0x58,0x5c,
+  0x4,0x69,0x4b, 0x4,0x6a,0x67, 0x7,0x58,0x5f, 0x7,0x5c,0x3a,
+  0x7,0x5c,0x3b, 0x4,0x6a,0x68, 0x4,0x6a,0x69, 0x4,0x6b,0x7a,
+  0x5,0x77,0x78, 0x7,0x5f,0x37, 0x7,0x5f,0x35, 0xf,0x6b,0x5d,
+  0x7,0x5f,0x36, 0x7,0x5f,0x38, 0x5,0x79,0x3a, 0x7,0x5f,0x34,
+  0x5,0x79,0x39, 0x7,0x61,0x34, 0x7,0x62,0x4f, 0x7,0x62,0x4e,
+  0x7,0x63,0x63, 0xf,0x6c,0x69, 0x7,0x63,0x65, 0x7,0x63,0x64,
+  0x7,0x64,0x55, 0x5,0x7b,0x65, 0xf,0x6d,0x30, 0x7,0x65,0x75,
+  0x6,0x25,0x42, 0x4,0x2a,0x78, 0x5,0x2b,0x28, 0x4,0x2f,0x28,
+  0x6,0x3a,0x66, 0x5,0x2f,0x5b, 0x5,0x34,0x61, 0x6,0x43,0x2d,
+  0x5,0x3b,0x34, 0x6,0x43,0x2f, 0x6,0x43,0x2e, 0x6,0x4c,0x74,
+  0x4,0x3a,0x29, 0x6,0x4c,0x73, 0x5,0x3b,0x33, 0xf,0x3e,0x2f,
+  0x6,0x56,0x50, 0x6,0x56,0x4f, 0x4,0x3f,0x74, 0x4,0x46,0x24,
+  0x6,0x60,0x45, 0x5,0x48,0x58, 0x6,0x60,0x44, 0x7,0x26,0x6e,
+  0xf,0x4b,0x39, 0xf,0x4b,0x3a, 0xf,0x4b,0x3b, 0x7,0x26,0x70,
+  0x4,0x4c,0x47, 0xf,0x51,0x40, 0xf,0x51,0x41, 0x7,0x26,0x6f,
+  0x5,0x56,0x7b, 0x5,0x56,0x7a, 0xf,0x57,0x22, 0xf,0x57,0x21,
+  0x5,0x5d,0x49, 0x7,0x3a,0x45, 0x5,0x5d,0x48, 0xf,0x5a,0x58,
+  0xf,0x5c,0x23, 0xf,0x5c,0x24, 0x7,0x41,0x5d, 0x7,0x41,0x5e,
+  0xf,0x60,0x33, 0x7,0x48,0x68, 0x4,0x60,0x6c, 0xf,0x63,0x46,
+  0x5,0x70,0x74, 0x4,0x64,0x27, 0x4,0x66,0x7a, 0x7,0x54,0x45,
+  0x4,0x6a,0x6a, 0x7,0x5c,0x3c, 0xf,0x6a,0x6b, 0x7,0x5f,0x3a,
+  0x7,0x5f,0x39, 0x5,0x7a,0x34, 0x7,0x66,0x2a, 0x6,0x22,0x29,
+  0x6,0x22,0x28, 0x4,0x24,0x6a, 0x6,0x25,0x44, 0x6,0x25,0x45,
+  0x6,0x28,0x73, 0xf,0x21,0x7c, 0x6,0x25,0x43, 0xf,0x25,0x28,
+  0xf,0x25,0x2a, 0x6,0x2d,0x53, 0x6,0x33,0x6a, 0x4,0x27,0x5d,
+  0x6,0x33,0x69, 0x6,0x2d,0x54, 0x4,0x27,0x5e, 0x6,0x28,0x74,
+  0x4,0x24,0x6b, 0x6,0x33,0x6b, 0x4,0x2a,0x7a, 0x4,0x2a,0x7c,
+  0xf,0x25,0x56, 0x5,0x2b,0x29, 0xf,0x28,0x49, 0x5,0x27,0x52,
+  0x6,0x3a,0x67, 0x6,0x3a,0x68, 0x6,0x3a,0x69, 0x5,0x2f,0x5f,
+  0x6,0x3a,0x6c, 0x6,0x3a,0x6a, 0x4,0x2f,0x2c, 0x4,0x2f,0x2b,
+  0x6,0x33,0x6e, 0x6,0x33,0x6c, 0x6,0x33,0x6f, 0x6,0x43,0x35,
+  0xf,0x29,0x39, 0x5,0x2f,0x5d, 0x6,0x43,0x30, 0x6,0x43,0x31,
+  0x6,0x43,0x32, 0x6,0x43,0x34, 0x6,0x43,0x36, 0xf,0x31,0x79,
+  0x6,0x33,0x6d, 0x6,0x36,0x7a, 0x5,0x2b,0x2a, 0x4,0x2a,0x7d,
+  0x6,0x43,0x33, 0x6,0x4c,0x77, 0x6,0x43,0x37, 0x6,0x3a,0x6d,
+  0x6,0x4c,0x76, 0x6,0x43,0x38, 0x5,0x2f,0x5e, 0x5,0x34,0x62,
+  0xf,0x37,0x5c, 0x6,0x4c,0x75, 0x5,0x3b,0x36, 0x5,0x3b,0x35,
+  0x4,0x3a,0x2c, 0x6,0x4c,0x78, 0xf,0x3e,0x30, 0x6,0x56,0x52,
+  0x5,0x41,0x67, 0x6,0x56,0x54, 0x6,0x4c,0x7a, 0x5,0x41,0x64,
+  0x5,0x41,0x66, 0x6,0x56,0x53, 0x6,0x56,0x55, 0x6,0x4c,0x79,
+  0x6,0x56,0x56, 0xf,0x3e,0x31, 0x6,0x56,0x51, 0xf,0x44,0x63,
+  0x6,0x60,0x46, 0x6,0x60,0x48, 0x6,0x60,0x49, 0x6,0x60,0x4a,
+  0x6,0x60,0x4b, 0x6,0x60,0x4c, 0x6,0x60,0x4d, 0x6,0x60,0x50,
+  0x5,0x48,0x5b, 0x7,0x26,0x75, 0x6,0x60,0x4e, 0x5,0x48,0x5a,
+  0x6,0x56,0x57, 0x5,0x48,0x59, 0x6,0x60,0x4f, 0x6,0x60,0x47,
+  0xf,0x4b,0x3c, 0x7,0x26,0x71, 0x7,0x26,0x72, 0x7,0x26,0x73,
+  0x7,0x26,0x74, 0x5,0x4f,0x62, 0x5,0x4f,0x5f, 0x6,0x60,0x52,
+  0x7,0x26,0x76, 0x5,0x4f,0x60, 0x5,0x4f,0x61, 0x6,0x60,0x51,
+  0xf,0x51,0x42, 0xf,0x51,0x43, 0x7,0x25,0x73, 0x7,0x31,0x47,
+  0x7,0x31,0x48, 0x7,0x31,0x4c, 0x7,0x31,0x49, 0x5,0x56,0x7c,
+  0x7,0x31,0x4b, 0x4,0x52,0x51, 0x7,0x3a,0x4e, 0x7,0x31,0x4a,
+  0x7,0x31,0x4d, 0x5,0x4f,0x63, 0x5,0x56,0x7d, 0x4,0x52,0x50,
+  0x7,0x26,0x77, 0x7,0x26,0x78, 0x7,0x3a,0x47, 0x7,0x3a,0x48,
+  0x7,0x3a,0x4b, 0x5,0x5d,0x4a, 0x7,0x31,0x4e, 0x4,0x57,0x74,
+  0x5,0x63,0x5b, 0x7,0x3a,0x4c, 0x7,0x3a,0x4d, 0xf,0x5c,0x25,
+  0xf,0x57,0x23, 0x7,0x41,0x5f, 0x7,0x41,0x60, 0x7,0x41,0x62,
+  0x7,0x41,0x64, 0x4,0x5c,0x67, 0x4,0x5c,0x66, 0x5,0x63,0x5c,
+  0x7,0x41,0x63, 0x7,0x48,0x69, 0x7,0x3a,0x4a, 0x5,0x63,0x5e,
+  0x5,0x68,0x7b, 0x7,0x48,0x6c, 0x4,0x60,0x6e, 0x7,0x48,0x6a,
+  0x7,0x48,0x6b, 0x7,0x4f,0x28, 0x7,0x4f,0x29, 0x7,0x4f,0x2a,
+  0x7,0x4f,0x2b, 0x5,0x6d,0x25, 0x5,0x6d,0x27, 0x7,0x4f,0x2c,
+  0x5,0x6d,0x26, 0x5,0x6d,0x28, 0x7,0x54,0x46, 0x7,0x4f,0x2d,
+  0x5,0x77,0x7a, 0x4,0x6b,0x7c, 0x7,0x5f,0x3b, 0x5,0x77,0x7b,
+  0x5,0x77,0x79, 0x7,0x61,0x35, 0x7,0x62,0x50, 0x7,0x63,0x66,
+  0x7,0x64,0x56, 0x7,0x65,0x3c, 0x4,0x24,0x6c, 0x4,0x23,0x2c,
+  0xf,0x21,0x60, 0x6,0x2d,0x56, 0x5,0x27,0x53, 0x6,0x2d,0x55,
+  0xf,0x2d,0x24, 0x6,0x33,0x71, 0x6,0x33,0x70, 0x4,0x2a,0x7e,
+  0xf,0x28,0x4b, 0x6,0x3a,0x6e, 0x6,0x3a,0x6f, 0x6,0x43,0x3b,
+  0x6,0x3a,0x73, 0x6,0x3a,0x72, 0x6,0x3a,0x71, 0x6,0x3a,0x70,
+  0x6,0x43,0x3a, 0xf,0x31,0x7a, 0xf,0x31,0x7b, 0x6,0x43,0x3d,
+  0x5,0x34,0x64, 0x4,0x3a,0x2e, 0x6,0x43,0x3e, 0x4,0x34,0x39,
+  0x5,0x34,0x65, 0xf,0x37,0x5d, 0x5,0x34,0x63, 0x6,0x43,0x39,
+  0xf,0x37,0x5e, 0xf,0x37,0x5f, 0x6,0x43,0x3f, 0x5,0x3b,0x39,
+  0x5,0x3b,0x37, 0x6,0x4c,0x7d, 0x4,0x3a,0x2f, 0x6,0x4d,0x21,
+  0x5,0x3b,0x38, 0x6,0x4c,0x7e, 0x6,0x4c,0x7c, 0x6,0x4d,0x22,
+  0x6,0x47,0x21, 0x6,0x56,0x5a, 0x5,0x41,0x68, 0x6,0x56,0x5b,
+  0x6,0x56,0x58, 0x5,0x41,0x69, 0x6,0x56,0x59, 0x6,0x56,0x5c,
+  0x5,0x41,0x6a, 0xf,0x3e,0x33, 0xf,0x3e,0x34, 0x5,0x48,0x5c,
+  0x6,0x60,0x53, 0x6,0x60,0x55, 0x5,0x48,0x5d, 0x6,0x60,0x54,
+  0x5,0x4f,0x64, 0x4,0x4c,0x4a, 0x7,0x26,0x7b, 0x7,0x26,0x7c,
+  0x4,0x4c,0x4b, 0x7,0x31,0x4f, 0x7,0x26,0x7a, 0x4,0x4c,0x48,
+  0x5,0x57,0x21, 0x5,0x56,0x7e, 0x4,0x52,0x52, 0xf,0x57,0x25,
+  0x7,0x31,0x50, 0x4,0x57,0x78, 0x4,0x57,0x76, 0x5,0x5d,0x4b,
+  0x7,0x3a,0x50, 0x7,0x3a,0x4f, 0x7,0x3a,0x52, 0xf,0x5c,0x26,
+  0x4,0x52,0x54, 0x7,0x3a,0x51, 0x5,0x63,0x5d, 0x4,0x5c,0x69,
+  0x5,0x63,0x5f, 0x7,0x41,0x69, 0x7,0x41,0x6a, 0x4,0x5c,0x6d,
+  0x7,0x41,0x67, 0x7,0x41,0x68, 0x7,0x41,0x66, 0xf,0x57,0x24,
+  0xf,0x60,0x34, 0xf,0x60,0x35, 0x4,0x5c,0x6c, 0x5,0x68,0x7c,
+  0x7,0x48,0x70, 0x5,0x76,0x3b, 0x7,0x48,0x6f, 0x7,0x4f,0x2e,
+  0x7,0x48,0x6e, 0x5,0x6d,0x29, 0x7,0x4f,0x2f, 0x7,0x4f,0x30,
+  0x7,0x4f,0x31, 0x7,0x4f,0x32, 0x7,0x41,0x65, 0x5,0x70,0x75,
+  0x7,0x54,0x47, 0x7,0x54,0x48, 0x5,0x73,0x7d, 0x7,0x58,0x60,
+  0x7,0x5c,0x3e, 0x7,0x5c,0x3d, 0x7,0x61,0x36, 0x7,0x63,0x67,
+  0x7,0x65,0x5e, 0x6,0x2d,0x57, 0x6,0x33,0x75, 0x6,0x33,0x72,
+  0x6,0x33,0x76, 0x5,0x2b,0x2b, 0x4,0x2b,0x22, 0x4,0x2b,0x21,
+  0x4,0x2b,0x24, 0x6,0x33,0x74, 0x4,0x2b,0x23, 0xf,0x2d,0x25,
+  0xf,0x2d,0x26, 0x6,0x33,0x73, 0x4,0x2f,0x33, 0x6,0x3a,0x76,
+  0x5,0x2f,0x61, 0x5,0x2f,0x63, 0x5,0x2f,0x60, 0x4,0x2f,0x31,
+  0x4,0x2f,0x36, 0x4,0x2f,0x35, 0x6,0x3a,0x75, 0x5,0x2f,0x62,
+  0x4,0x2f,0x34, 0x4,0x2f,0x32, 0x6,0x3a,0x77, 0xf,0x2f,0x63,
+  0xf,0x2f,0x64, 0x4,0x2f,0x37, 0xf,0x31,0x7c, 0x5,0x34,0x66,
+  0x6,0x43,0x41, 0x6,0x43,0x40, 0x6,0x43,0x42, 0x6,0x43,0x43,
+  0x6,0x43,0x44, 0x6,0x43,0x46, 0x6,0x43,0x47, 0x4,0x34,0x3f,
+  0x6,0x43,0x45, 0x5,0x3b,0x3b, 0x4,0x3a,0x32, 0x6,0x4d,0x26,
+  0x6,0x4d,0x27, 0x6,0x4d,0x2d, 0x5,0x3b,0x3d, 0x4,0x3a,0x36,
+  0x6,0x4d,0x2e, 0x6,0x4d,0x28, 0x6,0x4d,0x25, 0x6,0x4d,0x2f,
+  0x6,0x4d,0x30, 0x5,0x3b,0x3c, 0x6,0x4d,0x2a, 0x6,0x4d,0x2c,
+  0x6,0x4d,0x2b, 0xf,0x3e,0x35, 0xf,0x3e,0x36, 0x6,0x4d,0x29,
+  0x5,0x41,0x6e, 0x5,0x41,0x6b, 0x4,0x3f,0x79, 0x6,0x56,0x5d,
+  0x6,0x56,0x5e, 0x6,0x56,0x5f, 0x5,0x41,0x6d, 0x5,0x41,0x6c,
+  0xf,0x44,0x64, 0x6,0x4d,0x24, 0x5,0x48,0x65, 0x5,0x48,0x5e,
+  0x6,0x60,0x57, 0x5,0x48,0x5f, 0x5,0x48,0x63, 0x5,0x48,0x60,
+  0x5,0x48,0x64, 0x5,0x48,0x61, 0x5,0x48,0x62, 0x6,0x60,0x56,
+  0x5,0x48,0x66, 0xf,0x4b,0x3d, 0xf,0x4b,0x3e, 0xf,0x4b,0x3f,
+  0xf,0x4b,0x40, 0x5,0x4f,0x6a, 0x5,0x4f,0x6b, 0x7,0x26,0x7e,
+  0x5,0x4f,0x68, 0x4,0x4c,0x4c, 0x5,0x4f,0x6c, 0x5,0x4f,0x65,
+  0x7,0x26,0x7d, 0x5,0x4f,0x67, 0xf,0x51,0x46, 0x6,0x60,0x59,
+  0x5,0x4f,0x66, 0x7,0x27,0x24, 0x7,0x27,0x25, 0x7,0x27,0x21,
+  0x4,0x4c,0x4e, 0x7,0x27,0x22, 0x4,0x4c,0x4d, 0x7,0x27,0x23,
+  0xf,0x51,0x44, 0xf,0x51,0x45, 0x7,0x31,0x51, 0x7,0x31,0x53,
+  0x5,0x57,0x25, 0x7,0x31,0x56, 0x7,0x31,0x52, 0x7,0x31,0x54,
+  0x4,0x52,0x57, 0x5,0x57,0x23, 0x5,0x57,0x26, 0x5,0x57,0x24,
+  0x5,0x4f,0x69, 0x5,0x57,0x22, 0x7,0x31,0x55, 0x5,0x57,0x27,
+  0xf,0x57,0x26, 0x4,0x57,0x79, 0x7,0x3a,0x54, 0x5,0x5d,0x4c,
+  0x7,0x3a,0x55, 0x7,0x48,0x71, 0x5,0x5d,0x4d, 0x7,0x3a,0x53,
+  0xf,0x5c,0x27, 0xf,0x5c,0x28, 0x5,0x63,0x60, 0x4,0x5c,0x6e,
+  0x7,0x41,0x71, 0x5,0x5d,0x4e, 0x4,0x5c,0x6f, 0x7,0x41,0x6d,
+  0x7,0x41,0x6f, 0x7,0x41,0x6c, 0x7,0x41,0x70, 0x7,0x41,0x6e,
+  0xf,0x60,0x36, 0xf,0x60,0x37, 0x7,0x41,0x6b, 0x4,0x60,0x70,
+  0x5,0x68,0x7e, 0x5,0x68,0x7d, 0x7,0x48,0x72, 0x7,0x4f,0x35,
+  0x7,0x4f,0x36, 0xf,0x65,0x72, 0x7,0x4f,0x33, 0x4,0x66,0x7c,
+  0x7,0x54,0x49, 0x7,0x54,0x4b, 0x7,0x4f,0x34, 0x7,0x54,0x4a,
+  0x7,0x58,0x62, 0x7,0x58,0x63, 0x7,0x58,0x61, 0x6,0x25,0x46,
+  0x6,0x2d,0x58, 0x6,0x28,0x75, 0x4,0x27,0x5f, 0x4,0x27,0x60,
+  0x6,0x3a,0x78, 0x4,0x34,0x40, 0x5,0x2b,0x2c, 0xf,0x37,0x60,
+  0xf,0x37,0x61, 0x6,0x43,0x48, 0x6,0x4d,0x31, 0x7,0x27,0x26,
+  0x7,0x31,0x58, 0x7,0x31,0x57, 0xf,0x6b,0x5e, 0x6,0x2d,0x59,
+  0x6,0x2d,0x5a, 0x5,0x21,0x79, 0xf,0x28,0x4c, 0x4,0x2f,0x39,
+  0x5,0x34,0x67, 0x5,0x3b,0x3e, 0x5,0x41,0x6f, 0x6,0x60,0x5a,
+  0x7,0x27,0x27, 0x7,0x27,0x29, 0x5,0x48,0x67, 0x7,0x31,0x5a,
+  0x7,0x31,0x59, 0x7,0x3a,0x56, 0x5,0x23,0x21, 0x6,0x2d,0x5b,
+  0xf,0x28,0x4d, 0x6,0x33,0x77, 0xf,0x2d,0x27, 0x6,0x33,0x78,
+  0xf,0x31,0x7e, 0x5,0x34,0x68, 0xf,0x37,0x62, 0x6,0x43,0x49,
+  0x4,0x3a,0x37, 0x5,0x3b,0x41, 0x5,0x3b,0x40, 0x4,0x3f,0x7b,
+  0x6,0x56,0x60, 0x6,0x60,0x5c, 0x5,0x48,0x6c, 0x5,0x48,0x68,
+  0x5,0x48,0x6d, 0x5,0x48,0x6a, 0x5,0x48,0x69, 0x5,0x48,0x6b,
+  0x4,0x46,0x31, 0xf,0x44,0x65, 0x6,0x60,0x5b, 0x5,0x4f,0x6f,
+  0x5,0x4f,0x70, 0x5,0x4f,0x71, 0x5,0x4f,0x6d, 0x5,0x4f,0x6e,
+  0x7,0x27,0x2a, 0x5,0x57,0x29, 0x5,0x57,0x28, 0x4,0x52,0x58,
+  0x4,0x52,0x59, 0x7,0x31,0x5c, 0x7,0x31,0x5d, 0x7,0x31,0x5b,
+  0xf,0x51,0x47, 0x5,0x5d,0x4f, 0x4,0x57,0x7c, 0x7,0x3a,0x5a,
+  0x7,0x3a,0x57, 0x7,0x3a,0x58, 0xf,0x57,0x29, 0x5,0x63,0x61,
+  0x4,0x57,0x7e, 0x7,0x41,0x72, 0x7,0x3a,0x59, 0x7,0x48,0x75,
+  0x5,0x63,0x62, 0x7,0x41,0x74, 0x7,0x41,0x73, 0xf,0x5c,0x29,
+  0xf,0x5c,0x2a, 0x7,0x48,0x74, 0x5,0x69,0x21, 0x7,0x48,0x73,
+  0x4,0x66,0x7e, 0x7,0x54,0x4c, 0x4,0x6a,0x6c, 0x5,0x77,0x7c,
+  0x5,0x79,0x3b, 0x5,0x27,0x55, 0x5,0x27,0x54, 0x6,0x2d,0x5e,
+  0xf,0x28,0x4e, 0xf,0x28,0x4f, 0x6,0x2d,0x5d, 0x5,0x2b,0x2f,
+  0x5,0x2b,0x2d, 0x5,0x2b,0x2e, 0x4,0x2f,0x3c, 0x6,0x3a,0x7e,
+  0x4,0x2f,0x3b, 0x6,0x3a,0x7a, 0x5,0x2f,0x64, 0x6,0x3b,0x22,
+  0xf,0x32,0x21, 0xf,0x32,0x24, 0xf,0x32,0x26, 0xf,0x32,0x27,
+  0x6,0x3a,0x7b, 0xf,0x32,0x22, 0x6,0x3a,0x7d, 0x6,0x3a,0x7c,
+  0x6,0x3b,0x23, 0x6,0x3a,0x79, 0xf,0x32,0x25, 0x5,0x2f,0x65,
+  0x6,0x43,0x4b, 0x4,0x34,0x43, 0x4,0x34,0x42, 0x4,0x34,0x44,
+  0x6,0x43,0x4d, 0x5,0x34,0x69, 0x6,0x43,0x4f, 0x6,0x43,0x4e,
+  0x6,0x43,0x4c, 0x6,0x43,0x4a, 0xf,0x37,0x63, 0xf,0x37,0x64,
+  0xf,0x37,0x65, 0xf,0x37,0x66, 0x5,0x3b,0x42, 0x6,0x4d,0x33,
+  0x6,0x4d,0x34, 0x5,0x3b,0x43, 0x6,0x4d,0x35, 0xf,0x3e,0x37,
+  0xf,0x3e,0x38, 0xf,0x3e,0x39, 0xf,0x3e,0x3a, 0xf,0x3e,0x3c,
+  0xf,0x3e,0x3d, 0xf,0x3e,0x3e, 0xf,0x3e,0x3f, 0xf,0x3e,0x40,
+  0x6,0x4d,0x32, 0xf,0x3e,0x3b, 0x6,0x56,0x62, 0x6,0x56,0x66,
+  0x5,0x41,0x71, 0x5,0x41,0x72, 0x6,0x56,0x61, 0x6,0x56,0x6b,
+  0x6,0x56,0x69, 0x6,0x56,0x67, 0x5,0x41,0x73, 0x6,0x56,0x68,
+  0x6,0x56,0x64, 0x6,0x56,0x6a, 0x6,0x56,0x63, 0xf,0x44,0x66,
+  0xf,0x44,0x67, 0x6,0x56,0x65, 0x5,0x48,0x70, 0x5,0x48,0x71,
+  0x5,0x48,0x6e, 0x4,0x4c,0x50, 0x6,0x60,0x5e, 0x5,0x48,0x72,
+  0x5,0x48,0x6f, 0x5,0x48,0x73, 0xf,0x4b,0x41, 0xf,0x4b,0x42,
+  0xf,0x4b,0x43, 0xf,0x4b,0x44, 0xf,0x4b,0x45, 0xf,0x4b,0x46,
+  0xf,0x4b,0x47, 0xf,0x4b,0x48, 0xf,0x4b,0x4a, 0xf,0x4b,0x4b,
+  0xf,0x4b,0x4c, 0x6,0x60,0x5f, 0x5,0x4f,0x72, 0x7,0x27,0x2c,
+  0x5,0x4f,0x75, 0x7,0x27,0x2f, 0x5,0x4f,0x74, 0x5,0x4f,0x73,
+  0x4,0x4c,0x51, 0x5,0x4f,0x77, 0x7,0x27,0x2b, 0x7,0x27,0x30,
+  0x5,0x4f,0x76, 0xf,0x51,0x48, 0xf,0x51,0x49, 0xf,0x51,0x4a,
+  0xf,0x51,0x4b, 0xf,0x51,0x4c, 0xf,0x51,0x4d, 0xf,0x51,0x4e,
+  0xf,0x51,0x4f, 0x7,0x27,0x2d, 0x5,0x57,0x2c, 0x5,0x57,0x2f,
+  0x5,0x57,0x2b, 0x5,0x57,0x2d, 0x5,0x57,0x2e, 0x7,0x31,0x61,
+  0x7,0x31,0x5f, 0x7,0x31,0x5e, 0xf,0x57,0x2a, 0xf,0x57,0x2b,
+  0xf,0x57,0x2c, 0xf,0x57,0x2d, 0xf,0x57,0x2e, 0xf,0x57,0x2f,
+  0x7,0x31,0x60, 0x5,0x57,0x2a, 0x5,0x5d,0x50, 0x5,0x5d,0x51,
+  0x5,0x5d,0x52, 0x7,0x3a,0x5b, 0x4,0x58,0x25, 0x4,0x58,0x26,
+  0x5,0x5d,0x54, 0x5,0x5d,0x53, 0xf,0x5c,0x2c, 0x7,0x3a,0x5d,
+  0x7,0x3a,0x5c, 0x3,0x58,0x63, 0x7,0x41,0x77, 0x5,0x63,0x66,
+  0x5,0x63,0x63, 0x4,0x5c,0x72, 0x7,0x41,0x79, 0x5,0x5d,0x55,
+  0x7,0x41,0x78, 0x5,0x63,0x64, 0x5,0x63,0x65, 0x7,0x41,0x75,
+  0xf,0x60,0x38, 0xf,0x60,0x39, 0xf,0x60,0x3a, 0x7,0x41,0x76,
+  0xf,0x5c,0x2b, 0xf,0x63,0x47, 0x7,0x48,0x76, 0x5,0x69,0x22,
+  0x5,0x69,0x23, 0x7,0x48,0x78, 0x7,0x48,0x77, 0xf,0x63,0x48,
+  0xf,0x63,0x49, 0x7,0x4f,0x39, 0xf,0x65,0x73, 0xf,0x65,0x74,
+  0xf,0x65,0x75, 0x7,0x4f,0x38, 0x7,0x4f,0x37, 0x5,0x70,0x76,
+  0xf,0x68,0x30, 0xf,0x68,0x31, 0x7,0x54,0x4d, 0x7,0x54,0x4e,
+  0x5,0x73,0x7e, 0x7,0x58,0x64, 0x4,0x6a,0x6d, 0xf,0x6a,0x6c,
+  0xf,0x6b,0x5f, 0xf,0x6c,0x36, 0xf,0x6c,0x50, 0x5,0x21,0x7a,
+  0x6,0x2d,0x5f, 0x5,0x2b,0x30, 0x6,0x43,0x50, 0x6,0x4d,0x36,
+  0x6,0x48,0x6a, 0x6,0x56,0x6e, 0x6,0x60,0x62, 0x6,0x60,0x61,
+  0x7,0x27,0x31, 0xf,0x51,0x50, 0x7,0x31,0x62, 0x7,0x4f,0x3a,
+  0x5,0x23,0x25, 0x5,0x23,0x23, 0x6,0x2d,0x60, 0x6,0x2d,0x61,
+  0x6,0x25,0x48, 0xf,0x22,0x6c, 0xf,0x22,0x6d, 0x5,0x23,0x24,
+  0x5,0x23,0x22, 0x5,0x24,0x73, 0x5,0x24,0x72, 0x6,0x28,0x79,
+  0x6,0x28,0x78, 0x6,0x28,0x77, 0x6,0x28,0x76, 0x6,0x33,0x7b,
+  0x6,0x33,0x7a, 0x6,0x33,0x79, 0x5,0x27,0x5a, 0x5,0x27,0x5e,
+  0x6,0x2d,0x64, 0x4,0x2f,0x43, 0x6,0x2d,0x6d, 0x6,0x2d,0x6e,
+  0x6,0x2d,0x62, 0x5,0x27,0x5d, 0x6,0x2d,0x66, 0x5,0x27,0x59,
+  0x5,0x27,0x57, 0x6,0x2d,0x6b, 0x5,0x27,0x5b, 0x4,0x27,0x6b,
+  0x6,0x2d,0x68, 0x6,0x2d,0x6f, 0xf,0x28,0x50, 0xf,0x28,0x51,
+  0xf,0x28,0x53, 0xf,0x28,0x54, 0x6,0x2d,0x6c, 0x4,0x26,0x64,
+  0x6,0x2d,0x65, 0x6,0x2d,0x67, 0x5,0x27,0x5c, 0x6,0x2d,0x6a,
+  0x6,0x2d,0x63, 0x6,0x3b,0x27, 0x6,0x3b,0x25, 0x4,0x2f,0x3d,
+  0x5,0x27,0x56, 0x6,0x3b,0x26, 0x6,0x34,0x2d, 0x4,0x2b,0x2d,
+  0x5,0x2b,0x34, 0x6,0x34,0x28, 0x5,0x2b,0x31, 0x5,0x2b,0x38,
+  0x6,0x34,0x29, 0x4,0x2b,0x2e, 0x6,0x43,0x54, 0x6,0x34,0x27,
+  0x4,0x2b,0x2b, 0x6,0x34,0x2b, 0x4,0x2b,0x30, 0x6,0x34,0x25,
+  0x5,0x2b,0x36, 0x6,0x34,0x26, 0x5,0x2b,0x37, 0x5,0x2b,0x32,
+  0x4,0x2f,0x48, 0x5,0x2b,0x35, 0x6,0x33,0x7c, 0x6,0x34,0x21,
+  0x6,0x34,0x22, 0x6,0x34,0x24, 0xf,0x2d,0x2a, 0xf,0x2d,0x2f,
+  0xf,0x37,0x67, 0xf,0x37,0x68, 0x6,0x33,0x7e, 0x6,0x34,0x2f,
+  0x6,0x34,0x2c, 0x6,0x34,0x2a, 0x6,0x34,0x30, 0x6,0x34,0x2e,
+  0x6,0x43,0x53, 0x6,0x43,0x52, 0xf,0x2d,0x2b, 0x6,0x43,0x55,
+  0x6,0x43,0x56, 0x6,0x3b,0x30, 0x6,0x43,0x51, 0xf,0x2d,0x2d,
+  0x5,0x2f,0x67, 0x4,0x2f,0x3e, 0x4,0x34,0x45, 0x4,0x2f,0x45,
+  0x6,0x3b,0x32, 0x5,0x2f,0x6c, 0x4,0x2f,0x44, 0x6,0x3b,0x2e,
+  0x5,0x2f,0x6e, 0x6,0x3b,0x2a, 0x5,0x2f,0x70, 0x5,0x3b,0x44,
+  0x5,0x2f,0x6f, 0x6,0x3b,0x29, 0x5,0x2f,0x66, 0x6,0x3b,0x2b,
+  0x4,0x2f,0x40, 0x6,0x4d,0x3b, 0x5,0x2f,0x69, 0xf,0x2d,0x29,
+  0xf,0x32,0x28, 0xf,0x32,0x29, 0xf,0x32,0x2d, 0xf,0x3e,0x4c,
+  0x5,0x2f,0x68, 0x5,0x2e,0x24, 0x6,0x3b,0x2f, 0x6,0x3b,0x2d,
+  0x6,0x3b,0x2c, 0x6,0x3b,0x33, 0x6,0x4d,0x3a, 0x6,0x4d,0x38,
+  0x6,0x4d,0x39, 0x6,0x4d,0x37, 0x6,0x34,0x23, 0x5,0x2f,0x6b,
+  0x5,0x2f,0x71, 0x5,0x2f,0x6a, 0x5,0x34,0x74, 0x6,0x43,0x5b,
+  0x6,0x43,0x59, 0x5,0x34,0x6b, 0x4,0x34,0x4e, 0x5,0x34,0x6c,
+  0x4,0x2f,0x42, 0x5,0x34,0x71, 0x4,0x34,0x46, 0x4,0x34,0x55,
+  0x5,0x41,0x74, 0x4,0x34,0x54, 0x6,0x43,0x57, 0x5,0x34,0x6e,
+  0x6,0x43,0x5f, 0x4,0x34,0x49, 0x5,0x34,0x75, 0x5,0x34,0x76,
+  0x6,0x43,0x60, 0x6,0x43,0x5e, 0x4,0x34,0x4f, 0x5,0x34,0x72,
+  0x6,0x43,0x61, 0x6,0x43,0x62, 0xf,0x37,0x69, 0xf,0x37,0x6b,
+  0x6,0x43,0x5c, 0x6,0x43,0x5d, 0x6,0x56,0x6f, 0x6,0x56,0x70,
+  0x6,0x56,0x71, 0x5,0x34,0x73, 0x5,0x34,0x6f, 0x5,0x34,0x70,
+  0x6,0x4d,0x43, 0x5,0x3b,0x48, 0x6,0x4d,0x3d, 0x5,0x3b,0x45,
+  0x6,0x4d,0x4b, 0x6,0x4d,0x42, 0x4,0x3a,0x3c, 0x5,0x3b,0x4a,
+  0x6,0x4d,0x4f, 0x6,0x4d,0x3c, 0x6,0x60,0x65, 0x5,0x3b,0x47,
+  0x6,0x4d,0x50, 0x6,0x56,0x75, 0x4,0x3a,0x48, 0x5,0x3b,0x4c,
+  0x6,0x4d,0x55, 0x6,0x4d,0x4e, 0x6,0x4d,0x4c, 0x6,0x4d,0x53,
+  0x5,0x3b,0x46, 0x5,0x48,0x75, 0x6,0x4d,0x3e, 0x6,0x4d,0x47,
+  0x6,0x4d,0x4a, 0xf,0x3e,0x41, 0xf,0x3e,0x44, 0xf,0x3e,0x46,
+  0xf,0x3e,0x47, 0xf,0x3e,0x48, 0xf,0x3e,0x49, 0xf,0x3e,0x4a,
+  0xf,0x3e,0x4b, 0x6,0x4d,0x44, 0x6,0x4d,0x49, 0xf,0x3b,0x63,
+  0x6,0x4d,0x4d, 0x6,0x4d,0x41, 0x6,0x4d,0x52, 0x6,0x4d,0x3f,
+  0x6,0x4d,0x40, 0x6,0x60,0x63, 0x6,0x60,0x67, 0x6,0x60,0x64,
+  0xf,0x3e,0x45, 0x5,0x3b,0x49, 0x6,0x4d,0x46, 0x5,0x34,0x6d,
+  0x5,0x3b,0x4b, 0x5,0x3b,0x4e, 0x5,0x3b,0x4f, 0x6,0x4d,0x51,
+  0x5,0x3b,0x51, 0x6,0x4d,0x45, 0x6,0x60,0x68, 0x6,0x60,0x66,
+  0x5,0x41,0x7d, 0x4,0x40,0x21, 0x5,0x42,0x26, 0x5,0x42,0x21,
+  0x5,0x41,0x75, 0x5,0x41,0x79, 0x5,0x42,0x27, 0x6,0x56,0x7d,
+  0x4,0x3f,0x7e, 0x6,0x56,0x72, 0x4,0x3a,0x46, 0x5,0x42,0x22,
+  0x5,0x41,0x78, 0x6,0x56,0x77, 0x4,0x40,0x24, 0x6,0x56,0x79,
+  0x4,0x40,0x22, 0x6,0x57,0x21, 0x6,0x56,0x73, 0x5,0x42,0x29,
+  0x6,0x56,0x74, 0x6,0x56,0x78, 0x5,0x42,0x23, 0x6,0x56,0x7c,
+  0x5,0x41,0x7b, 0x5,0x41,0x7a, 0x5,0x42,0x25, 0x5,0x42,0x24,
+  0x6,0x56,0x7a, 0x5,0x41,0x76, 0x6,0x56,0x7e, 0xf,0x44,0x69,
+  0xf,0x44,0x6a, 0xf,0x44,0x6b, 0xf,0x44,0x6c, 0xf,0x44,0x6d,
+  0xf,0x44,0x6f, 0xf,0x44,0x71, 0x4,0x40,0x2b, 0x6,0x57,0x23,
+  0x6,0x57,0x22, 0xf,0x44,0x70, 0x7,0x27,0x32, 0x7,0x27,0x33,
+  0x6,0x56,0x7b, 0x5,0x41,0x7e, 0x5,0x41,0x7c, 0x4,0x46,0x44,
+  0x5,0x48,0x7b, 0x4,0x46,0x4c, 0x4,0x46,0x43, 0x5,0x49,0x23,
+  0x6,0x60,0x6a, 0x5,0x48,0x7a, 0x4,0x46,0x4a, 0x5,0x49,0x24,
+  0x5,0x49,0x21, 0x4,0x46,0x49, 0x5,0x48,0x77, 0x5,0x48,0x7d,
+  0x4,0x46,0x3a, 0x4,0x46,0x4b, 0x5,0x48,0x78, 0x6,0x60,0x71,
+  0x6,0x60,0x6c, 0x5,0x48,0x76, 0x6,0x60,0x6e, 0x5,0x48,0x79,
+  0x6,0x60,0x6d, 0x5,0x48,0x7c, 0x7,0x31,0x63, 0x5,0x49,0x22,
+  0x4,0x46,0x48, 0x6,0x60,0x6b, 0xf,0x4b,0x4d, 0xf,0x4b,0x4e,
+  0xf,0x4b,0x4f, 0xf,0x4b,0x51, 0xf,0x4b,0x52, 0xf,0x4b,0x55,
+  0xf,0x4b,0x53, 0x6,0x60,0x70, 0x6,0x5d,0x5c, 0x5,0x41,0x77,
+  0x5,0x48,0x7e, 0x4,0x4c,0x53, 0x5,0x4f,0x7b, 0x7,0x27,0x34,
+  0x4,0x4c,0x57, 0x7,0x27,0x3b, 0x5,0x4f,0x7a, 0x4,0x4c,0x59,
+  0x7,0x3a,0x60, 0x7,0x27,0x37, 0x5,0x4f,0x7c, 0x7,0x27,0x35,
+  0x4,0x4c,0x5a, 0x7,0x3a,0x5e, 0x5,0x4f,0x78, 0x7,0x27,0x38,
+  0xf,0x51,0x51, 0xf,0x51,0x52, 0xf,0x51,0x53, 0xf,0x51,0x54,
+  0x7,0x27,0x36, 0x7,0x27,0x39, 0x7,0x27,0x3a, 0x7,0x3a,0x5f,
+  0x6,0x60,0x69, 0x5,0x4f,0x79, 0xf,0x5c,0x35, 0x7,0x31,0x6c,
+  0x5,0x57,0x37, 0x5,0x57,0x32, 0x4,0x52,0x68, 0x4,0x52,0x5d,
+  0x5,0x57,0x31, 0x4,0x52,0x5f, 0x7,0x31,0x67, 0x7,0x31,0x6e,
+  0x5,0x57,0x35, 0x5,0x57,0x36, 0x4,0x52,0x65, 0x5,0x4f,0x7d,
+  0x5,0x57,0x34, 0x7,0x31,0x65, 0x7,0x31,0x6d, 0x5,0x57,0x39,
+  0x7,0x31,0x6a, 0x5,0x69,0x24, 0x4,0x52,0x60, 0x7,0x31,0x6f,
+  0xf,0x57,0x31, 0xf,0x57,0x33, 0xf,0x57,0x32, 0x7,0x27,0x3c,
+  0x7,0x31,0x68, 0x7,0x31,0x69, 0x7,0x31,0x64, 0x7,0x31,0x66,
+  0x7,0x31,0x6b, 0x7,0x41,0x7a, 0x7,0x48,0x79, 0x7,0x41,0x7b,
+  0x5,0x57,0x3a, 0x5,0x57,0x30, 0x5,0x57,0x3b, 0x5,0x57,0x38,
+  0x5,0x57,0x33, 0x7,0x42,0x21, 0x5,0x5d,0x5a, 0x5,0x5d,0x59,
+  0x7,0x3a,0x62, 0x4,0x58,0x2e, 0x4,0x58,0x2a, 0x4,0x58,0x29,
+  0x5,0x5d,0x58, 0x5,0x5d,0x56, 0x4,0x60,0x71, 0x7,0x48,0x7b,
+  0x5,0x5d,0x5e, 0x7,0x3a,0x65, 0xf,0x5c,0x2e, 0xf,0x5c,0x2f,
+  0xf,0x5c,0x31, 0xf,0x5c,0x32, 0xf,0x5c,0x33, 0xf,0x5c,0x34,
+  0xf,0x5c,0x36, 0xf,0x5c,0x30, 0x7,0x37,0x7e, 0x7,0x3a,0x63,
+  0x7,0x48,0x7a, 0x7,0x48,0x7d, 0x5,0x5d,0x5d, 0x7,0x3a,0x61,
+  0x5,0x5d,0x5c, 0x5,0x5d,0x57, 0x7,0x3a,0x64, 0x7,0x48,0x7e,
+  0x4,0x5c,0x75, 0x5,0x63,0x6a, 0x5,0x63,0x67, 0x5,0x63,0x69,
+  0x5,0x63,0x6c, 0x7,0x41,0x7c, 0x5,0x63,0x6e, 0x7,0x41,0x7e,
+  0x5,0x63,0x6b, 0x7,0x42,0x23, 0x5,0x63,0x68, 0x5,0x6d,0x2a,
+  0x5,0x63,0x6f, 0xf,0x60,0x3b, 0xf,0x60,0x3c, 0xf,0x60,0x3d,
+  0xf,0x60,0x40, 0xf,0x60,0x41, 0x7,0x41,0x7d, 0x7,0x42,0x6d,
+  0x4,0x5c,0x73, 0x4,0x60,0x72, 0x7,0x49,0x23, 0x7,0x49,0x29,
+  0x5,0x69,0x25, 0x5,0x69,0x26, 0x5,0x63,0x6d, 0x7,0x49,0x24,
+  0xf,0x63,0x4a, 0x7,0x49,0x28, 0x7,0x49,0x2a, 0xf,0x63,0x4c,
+  0xf,0x63,0x4d, 0x7,0x49,0x22, 0x7,0x49,0x26, 0x7,0x49,0x25,
+  0x7,0x49,0x27, 0x7,0x49,0x21, 0xf,0x63,0x4b, 0x7,0x49,0x2b,
+  0x7,0x4f,0x3d, 0x5,0x6d,0x2e, 0x5,0x6d,0x2d, 0x4,0x64,0x2b,
+  0x4,0x64,0x29, 0x5,0x6d,0x2b, 0xf,0x65,0x76, 0x7,0x4f,0x3c,
+  0x7,0x4f,0x3b, 0x4,0x67,0x26, 0x7,0x54,0x4f, 0x5,0x70,0x77,
+  0x7,0x5c,0x40, 0x7,0x55,0x3a, 0x7,0x5c,0x3f, 0x4,0x69,0x31,
+  0x4,0x69,0x2f, 0x7,0x58,0x65, 0xf,0x68,0x33, 0x7,0x5c,0x41,
+  0x5,0x76,0x3d, 0x7,0x5c,0x43, 0x7,0x5c,0x45, 0x7,0x5c,0x46,
+  0x5,0x76,0x3c, 0x7,0x5c,0x42, 0x4,0x6a,0x6e, 0x7,0x5c,0x47,
+  0x7,0x5c,0x48, 0x7,0x5f,0x3d, 0x5,0x77,0x7d, 0x7,0x5f,0x3e,
+  0x5,0x79,0x3c, 0x7,0x64,0x57, 0x5,0x7a,0x6f, 0x5,0x7b,0x45,
+  0x6,0x28,0x7c, 0x4,0x24,0x71, 0xf,0x2a,0x49, 0x6,0x3b,0x34,
+  0xf,0x32,0x2f, 0x6,0x4d,0x56, 0x6,0x4d,0x57, 0xf,0x4b,0x58,
+  0xf,0x4b,0x59, 0xf,0x51,0x56, 0x6,0x60,0x73, 0xf,0x5c,0x37,
+  0x7,0x42,0x25, 0xf,0x60,0x42, 0x5,0x70,0x79, 0xf,0x68,0x34,
+  0xf,0x69,0x67, 0x7,0x65,0x3d, 0x5,0x7c,0x2c, 0x6,0x25,0x4a,
+  0x6,0x28,0x7e, 0x4,0x24,0x72, 0x6,0x28,0x7d, 0x6,0x2d,0x70,
+  0x5,0x2b,0x3a, 0x6,0x34,0x32, 0xf,0x2d,0x30, 0x5,0x2f,0x72,
+  0x6,0x3b,0x36, 0x4,0x2f,0x49, 0xf,0x32,0x30, 0x6,0x3b,0x37,
+  0x6,0x3b,0x35, 0x6,0x43,0x66, 0x6,0x43,0x65, 0xf,0x37,0x6d,
+  0xf,0x37,0x6e, 0x6,0x4d,0x59, 0x6,0x4d,0x5a, 0x6,0x57,0x24,
+  0x5,0x49,0x25, 0xf,0x4b,0x5a, 0x4,0x4c,0x60, 0x4,0x4c,0x61,
+  0x5,0x4f,0x7e, 0xf,0x51,0x57, 0x7,0x27,0x3d, 0x4,0x52,0x69,
+  0x5,0x57,0x3c, 0x7,0x3a,0x66, 0x5,0x5d,0x60, 0x5,0x5d,0x5f,
+  0xf,0x5c,0x38, 0xf,0x60,0x43, 0x5,0x69,0x27, 0x4,0x60,0x75,
+  0x5,0x6d,0x31, 0xf,0x63,0x4e, 0x7,0x49,0x2c, 0x5,0x6d,0x2f,
+  0x5,0x6d,0x30, 0x7,0x62,0x51, 0x6,0x29,0x21, 0x6,0x2d,0x71,
+  0x6,0x2d,0x72, 0x6,0x3b,0x3a, 0xf,0x2d,0x31, 0x6,0x3b,0x38,
+  0x6,0x3b,0x39, 0x5,0x34,0x77, 0x4,0x34,0x56, 0x6,0x4d,0x5b,
+  0x5,0x42,0x2a, 0x5,0x49,0x26, 0xf,0x4b,0x5b, 0x5,0x50,0x21,
+  0x7,0x27,0x3e, 0xf,0x51,0x58, 0x5,0x50,0x22, 0x7,0x31,0x71,
+  0x4,0x52,0x6a, 0x5,0x57,0x3d, 0xf,0x57,0x34, 0x4,0x58,0x2f,
+  0x5,0x63,0x70, 0x5,0x63,0x71, 0x4,0x24,0x74, 0x6,0x25,0x4b,
+  0x6,0x23,0x64, 0x6,0x2d,0x73, 0x6,0x2d,0x74, 0xf,0x2d,0x32,
+  0x4,0x2f,0x4b, 0x6,0x34,0x33, 0x6,0x3b,0x3b, 0x6,0x3b,0x41,
+  0x6,0x3b,0x3d, 0x6,0x3b,0x3c, 0x4,0x2f,0x4c, 0x6,0x3b,0x3f,
+  0x6,0x3b,0x40, 0x6,0x43,0x69, 0x5,0x34,0x78, 0x6,0x3b,0x3e,
+  0x6,0x43,0x68, 0x6,0x43,0x6b, 0x6,0x43,0x6a, 0x5,0x3b,0x52,
+  0x6,0x4d,0x5c, 0x5,0x3b,0x53, 0x5,0x49,0x27, 0x6,0x57,0x28,
+  0x6,0x57,0x27, 0x6,0x57,0x25, 0x6,0x60,0x74, 0x6,0x60,0x7a,
+  0x6,0x60,0x75, 0x6,0x60,0x76, 0x5,0x50,0x23, 0x7,0x27,0x3f,
+  0x6,0x60,0x77, 0x6,0x60,0x7b, 0x6,0x60,0x78, 0x7,0x27,0x40,
+  0x7,0x27,0x41, 0x7,0x27,0x42, 0x6,0x60,0x79, 0x5,0x49,0x28,
+  0x5,0x50,0x24, 0x5,0x50,0x25, 0x7,0x27,0x43, 0x7,0x27,0x44,
+  0x7,0x31,0x72, 0x7,0x27,0x45, 0x7,0x27,0x46, 0xf,0x57,0x35,
+  0x7,0x31,0x74, 0x7,0x31,0x73, 0x5,0x5d,0x62, 0x7,0x31,0x77,
+  0x7,0x31,0x76, 0x7,0x31,0x75, 0x5,0x5d,0x61, 0x5,0x5d,0x64,
+  0x7,0x3a,0x67, 0x7,0x42,0x28, 0x7,0x42,0x27, 0x5,0x5d,0x65,
+  0x4,0x5c,0x77, 0x7,0x42,0x26, 0xf,0x60,0x44, 0xf,0x60,0x45,
+  0x7,0x49,0x2d, 0x5,0x63,0x73, 0x5,0x63,0x72, 0x7,0x49,0x2e,
+  0x7,0x4f,0x3f, 0x5,0x69,0x28, 0x5,0x6d,0x33, 0x5,0x6d,0x34,
+  0x5,0x6d,0x35, 0x7,0x4f,0x3e, 0x7,0x49,0x2f, 0xf,0x63,0x4f,
+  0x5,0x69,0x29, 0x7,0x4f,0x40, 0x7,0x4f,0x41, 0x5,0x70,0x7a,
+  0xf,0x65,0x78, 0xf,0x68,0x35, 0xf,0x68,0x37, 0x7,0x58,0x66,
+  0xf,0x68,0x36, 0x7,0x58,0x67, 0x7,0x5c,0x49, 0x5,0x77,0x7e,
+  0x7,0x61,0x37, 0x5,0x79,0x3d, 0x5,0x79,0x3f, 0x5,0x79,0x3e,
+  0xf,0x6c,0x6a, 0x7,0x65,0x3e, 0x7,0x65,0x3f, 0x7,0x66,0x53,
+  0x5,0x7c,0x50, 0xf,0x25,0x2b, 0x6,0x34,0x34, 0x4,0x2f,0x4e,
+  0x4,0x2f,0x4d, 0x6,0x3b,0x42, 0x6,0x3b,0x43, 0x6,0x3b,0x44,
+  0x5,0x2f,0x73, 0x5,0x2f,0x74, 0x6,0x43,0x6c, 0x6,0x43,0x6d,
+  0x6,0x41,0x7d, 0x6,0x4d,0x60, 0x6,0x4d,0x5f, 0x6,0x4d,0x61,
+  0xf,0x3e,0x50, 0x5,0x49,0x29, 0x4,0x46,0x4d, 0x5,0x45,0x53,
+  0x4,0x46,0x4e, 0x6,0x57,0x29, 0xf,0x4b,0x5c, 0x6,0x60,0x7c,
+  0x6,0x60,0x7e, 0x6,0x60,0x7d, 0x7,0x27,0x47, 0xf,0x51,0x59,
+  0x7,0x27,0x49, 0x7,0x27,0x48, 0x7,0x31,0x78, 0x5,0x57,0x3e,
+  0x7,0x31,0x79, 0x7,0x3a,0x68, 0xf,0x60,0x46, 0x5,0x63,0x74,
+  0x7,0x42,0x2a, 0x7,0x42,0x29, 0x5,0x6d,0x36, 0x5,0x70,0x7b,
+  0x7,0x5c,0x4a, 0x5,0x76,0x3e, 0x5,0x50,0x26, 0x5,0x50,0x27,
+  0xf,0x60,0x47, 0x7,0x4f,0x42, 0x7,0x5c,0x4b, 0x7,0x5f,0x3f,
+  0x7,0x61,0x39, 0x5,0x7a,0x70, 0x5,0x24,0x74, 0x4,0x27,0x71,
+  0x4,0x27,0x70, 0x6,0x2d,0x77, 0x6,0x2d,0x76, 0x6,0x2d,0x75,
+  0x5,0x27,0x5f, 0x4,0x2b,0x31, 0x4,0x2b,0x35, 0x4,0x2b,0x34,
+  0x6,0x34,0x35, 0x6,0x34,0x37, 0x6,0x34,0x36, 0x6,0x3b,0x4a,
+  0x5,0x2f,0x75, 0x6,0x3b,0x49, 0x6,0x3b,0x45, 0x5,0x2f,0x76,
+  0x4,0x2f,0x52, 0x4,0x2f,0x51, 0x6,0x3b,0x46, 0x6,0x3b,0x47,
+  0x6,0x3b,0x48, 0x5,0x34,0x7a, 0x4,0x34,0x59, 0x4,0x34,0x5b,
+  0x6,0x43,0x72, 0x5,0x34,0x7b, 0x6,0x43,0x6e, 0x6,0x43,0x6f,
+  0xf,0x37,0x71, 0x5,0x34,0x79, 0xf,0x37,0x70, 0xf,0x37,0x72,
+  0x5,0x3b,0x54, 0x6,0x4d,0x65, 0x6,0x4d,0x64, 0x4,0x34,0x5a,
+  0x4,0x3a,0x52, 0x4,0x3a,0x50, 0x4,0x3a,0x51, 0x4,0x3a,0x53,
+  0x6,0x4d,0x66, 0x5,0x42,0x2b, 0x6,0x57,0x2c, 0x5,0x42,0x2c,
+  0x6,0x57,0x2a, 0xf,0x44,0x72, 0x6,0x57,0x2b, 0x6,0x57,0x2d,
+  0x6,0x57,0x2e, 0x5,0x42,0x2e, 0x6,0x61,0x27, 0x5,0x49,0x2d,
+  0x5,0x49,0x2b, 0x4,0x46,0x52, 0x6,0x61,0x22, 0x6,0x61,0x26,
+  0xf,0x4b,0x5e, 0xf,0x4b,0x5f, 0xf,0x4b,0x5d, 0x6,0x61,0x23,
+  0x5,0x49,0x2a, 0x5,0x50,0x2f, 0x4,0x4c,0x67, 0x4,0x4c,0x66,
+  0x5,0x50,0x2e, 0x5,0x50,0x2b, 0x5,0x50,0x2c, 0x5,0x50,0x30,
+  0x5,0x50,0x28, 0x7,0x27,0x4f, 0x7,0x27,0x4d, 0x5,0x50,0x31,
+  0x7,0x27,0x4a, 0x7,0x27,0x4c, 0x7,0x27,0x4e, 0x7,0x27,0x4b,
+  0x5,0x50,0x2d, 0x5,0x50,0x29, 0x5,0x50,0x2a, 0x5,0x57,0x42,
+  0x5,0x57,0x3f, 0x5,0x57,0x43, 0x7,0x31,0x7c, 0x5,0x57,0x40,
+  0x7,0x32,0x21, 0x7,0x31,0x7d, 0x7,0x32,0x23, 0x5,0x57,0x41,
+  0x7,0x32,0x22, 0xf,0x57,0x36, 0x7,0x31,0x7e, 0x7,0x31,0x7b,
+  0x7,0x3a,0x6a, 0x4,0x58,0x31, 0x5,0x5d,0x6c, 0x5,0x5d,0x66,
+  0x5,0x5d,0x69, 0x5,0x5d,0x68, 0x5,0x5d,0x6a, 0x5,0x5d,0x6b,
+  0x4,0x5c,0x79, 0x5,0x63,0x7b, 0x7,0x42,0x2c, 0x5,0x63,0x75,
+  0x5,0x63,0x7a, 0x5,0x63,0x7d, 0x5,0x63,0x79, 0x4,0x5c,0x7a,
+  0x4,0x5c,0x7b, 0x5,0x63,0x76, 0x5,0x63,0x77, 0x5,0x63,0x7c,
+  0x4,0x5c,0x78, 0x7,0x42,0x2d, 0x7,0x42,0x2b, 0x5,0x63,0x78,
+  0x7,0x49,0x30, 0x5,0x69,0x2d, 0x5,0x69,0x2c, 0x5,0x69,0x2b,
+  0x5,0x69,0x2a, 0x7,0x49,0x31, 0xf,0x63,0x50, 0x7,0x49,0x32,
+  0x5,0x6d,0x37, 0x7,0x4f,0x43, 0x5,0x70,0x7d, 0x5,0x70,0x7c,
+  0x7,0x54,0x52, 0x5,0x74,0x21, 0x5,0x74,0x22, 0x4,0x69,0x32,
+  0x7,0x58,0x68, 0x7,0x54,0x50, 0x7,0x54,0x51, 0x4,0x6a,0x6f,
+  0x7,0x5c,0x4c, 0x7,0x61,0x3b, 0x7,0x61,0x3a, 0x7,0x62,0x52,
+  0x5,0x7a,0x71, 0x4,0x6e,0x4f, 0x6,0x34,0x38, 0xf,0x37,0x73,
+  0x5,0x3b,0x3f, 0xf,0x3e,0x51, 0xf,0x51,0x5a, 0xf,0x5c,0x39,
+  0x7,0x4f,0x44, 0x5,0x34,0x7c, 0x5,0x34,0x7d, 0x6,0x43,0x73,
+  0x5,0x34,0x7e, 0xf,0x3e,0x52, 0x6,0x57,0x2f, 0x6,0x57,0x30,
+  0x6,0x57,0x31, 0x6,0x61,0x29, 0xf,0x4b,0x60, 0x6,0x61,0x2a,
+  0x6,0x61,0x28, 0x7,0x27,0x51, 0x7,0x27,0x50, 0x7,0x27,0x52,
+  0xf,0x51,0x5b, 0xf,0x51,0x5c, 0xf,0x51,0x5d, 0x5,0x57,0x44,
+  0x5,0x57,0x45, 0x7,0x32,0x25, 0x7,0x32,0x24, 0x5,0x6d,0x39,
+  0x5,0x6d,0x38, 0x7,0x4f,0x45, 0xf,0x6c,0x37, 0x5,0x21,0x7b,
+  0x6,0x23,0x38, 0x4,0x23,0x2e, 0x6,0x25,0x50, 0x6,0x25,0x51,
+  0x6,0x2d,0x78, 0x6,0x25,0x4e, 0x5,0x23,0x26, 0x6,0x25,0x4d,
+  0xf,0x22,0x6f, 0xf,0x22,0x70, 0xf,0x22,0x6e, 0x6,0x25,0x4c,
+  0x4,0x24,0x77, 0x4,0x24,0x78, 0x4,0x24,0x7c, 0x6,0x29,0x22,
+  0x4,0x24,0x7a, 0x6,0x29,0x25, 0x6,0x29,0x23, 0x6,0x29,0x24,
+  0x6,0x29,0x26, 0xf,0x25,0x2c, 0xf,0x25,0x2d, 0xf,0x25,0x2e,
+  0xf,0x25,0x2f, 0xf,0x25,0x30, 0xf,0x25,0x31, 0x6,0x2d,0x7b,
+  0x4,0x27,0x7c, 0x4,0x27,0x77, 0x4,0x27,0x79, 0x5,0x27,0x62,
+  0x4,0x27,0x7d, 0x4,0x27,0x78, 0x4,0x27,0x75, 0x5,0x27,0x60,
+  0x6,0x2d,0x7c, 0x5,0x27,0x61, 0x4,0x27,0x74, 0x6,0x3b,0x4b,
+  0x6,0x27,0x4c, 0x6,0x2e,0x21, 0x5,0x27,0x64, 0x4,0x27,0x76,
+  0x6,0x2d,0x7a, 0x6,0x2d,0x7e, 0x6,0x3b,0x4d, 0x6,0x3b,0x4c,
+  0xf,0x28,0x57, 0xf,0x28,0x58, 0xf,0x28,0x59, 0xf,0x28,0x5a,
+  0xf,0x28,0x5b, 0xf,0x28,0x5d, 0xf,0x28,0x5e, 0xf,0x28,0x5f,
+  0xf,0x28,0x60, 0xf,0x28,0x61, 0xf,0x28,0x62, 0xf,0x28,0x64,
+  0x6,0x2d,0x79, 0x4,0x2b,0x3b, 0x4,0x2b,0x37, 0x4,0x2b,0x38,
+  0x4,0x2b,0x39, 0x5,0x2b,0x3f, 0x6,0x34,0x43, 0x6,0x34,0x3b,
+  0x4,0x2b,0x3c, 0x6,0x34,0x41, 0x6,0x34,0x3d, 0x5,0x2b,0x3d,
+  0x6,0x34,0x39, 0x6,0x34,0x40, 0x6,0x34,0x3e, 0x6,0x34,0x42,
+  0x6,0x34,0x45, 0x6,0x34,0x46, 0x5,0x2b,0x3b, 0x5,0x2b,0x3e,
+  0x5,0x2b,0x3c, 0xf,0x2d,0x33, 0xf,0x2d,0x35, 0xf,0x2d,0x37,
+  0xf,0x2d,0x38, 0xf,0x2d,0x39, 0xf,0x2d,0x3a, 0xf,0x2d,0x3b,
+  0xf,0x2d,0x3c, 0xf,0x2d,0x36, 0x6,0x33,0x3e, 0x6,0x34,0x3f,
+  0xf,0x2d,0x34, 0x6,0x2d,0x7d, 0x6,0x4d,0x68, 0xf,0x2a,0x52,
+  0x5,0x2f,0x7c, 0x4,0x2f,0x56, 0x4,0x2f,0x57, 0x4,0x2f,0x62,
+  0x5,0x2f,0x78, 0x5,0x2f,0x7a, 0x5,0x2f,0x7e, 0x4,0x2f,0x54,
+  0x5,0x2f,0x77, 0x5,0x30,0x23, 0x4,0x2f,0x5b, 0x5,0x30,0x27,
+  0x4,0x2f,0x58, 0x4,0x2f,0x65, 0x5,0x30,0x24, 0x4,0x2f,0x60,
+  0x6,0x3b,0x5e, 0x6,0x3b,0x5f, 0x5,0x30,0x25, 0x6,0x3b,0x61,
+  0x5,0x30,0x22, 0x4,0x2f,0x66, 0x6,0x3b,0x59, 0x6,0x3b,0x58,
+  0x6,0x4d,0x67, 0x6,0x44,0x22, 0x6,0x3b,0x55, 0x5,0x2f,0x7d,
+  0x6,0x3b,0x54, 0x6,0x3b,0x51, 0x6,0x3b,0x4f, 0x6,0x3b,0x5a,
+  0x6,0x3b,0x5c, 0x5,0x2f,0x7b, 0x6,0x3b,0x57, 0x5,0x30,0x26,
+  0x5,0x2f,0x79, 0x6,0x3b,0x53, 0x6,0x3b,0x5b, 0x6,0x3b,0x5d,
+  0x6,0x3b,0x62, 0xf,0x32,0x33, 0xf,0x32,0x35, 0xf,0x32,0x36,
+  0xf,0x32,0x37, 0xf,0x32,0x38, 0xf,0x32,0x39, 0xf,0x32,0x3b,
+  0xf,0x32,0x3c, 0xf,0x32,0x3d, 0xf,0x32,0x3f, 0xf,0x32,0x40,
+  0xf,0x32,0x42, 0xf,0x32,0x43, 0xf,0x32,0x44, 0xf,0x32,0x45,
+  0xf,0x32,0x47, 0xf,0x32,0x48, 0xf,0x32,0x49, 0xf,0x32,0x4a,
+  0xf,0x32,0x4b, 0x6,0x3b,0x50, 0xf,0x32,0x46, 0xf,0x32,0x4c,
+  0xf,0x32,0x3e, 0x5,0x35,0x2b, 0x5,0x35,0x2e, 0x5,0x35,0x27,
+  0x4,0x34,0x70, 0x5,0x35,0x2c, 0x4,0x34,0x61, 0x4,0x34,0x6e,
+  0x4,0x34,0x68, 0x6,0x44,0x32, 0x4,0x34,0x72, 0x4,0x34,0x75,
+  0x6,0x44,0x26, 0x6,0x43,0x7b, 0x6,0x44,0x23, 0x5,0x35,0x23,
+  0x6,0x43,0x79, 0x6,0x43,0x75, 0x4,0x34,0x60, 0x5,0x35,0x32,
+  0x6,0x43,0x74, 0x6,0x44,0x21, 0x6,0x44,0x38, 0x4,0x34,0x64,
+  0x6,0x44,0x36, 0x6,0x4e,0x3a, 0x6,0x44,0x34, 0x6,0x3b,0x60,
+  0x6,0x4d,0x78, 0x4,0x34,0x5f, 0x5,0x35,0x21, 0x4,0x34,0x6b,
+  0x6,0x43,0x77, 0x6,0x44,0x24, 0x5,0x35,0x30, 0x6,0x44,0x2f,
+  0x6,0x44,0x35, 0x6,0x44,0x2e, 0x6,0x44,0x29, 0x5,0x35,0x2f,
+  0x6,0x44,0x33, 0x6,0x43,0x78, 0x6,0x44,0x27, 0x5,0x35,0x31,
+  0x5,0x42,0x2f, 0x6,0x57,0x32, 0x6,0x57,0x33, 0x6,0x44,0x30,
+  0x6,0x44,0x31, 0x6,0x43,0x7e, 0x5,0x35,0x22, 0x5,0x35,0x33,
+  0x6,0x44,0x2a, 0x5,0x35,0x29, 0x5,0x35,0x2d, 0x5,0x35,0x26,
+  0x6,0x4e,0x37, 0x6,0x44,0x39, 0x6,0x44,0x3a, 0x6,0x43,0x7c,
+  0x6,0x43,0x7a, 0xf,0x37,0x74, 0xf,0x37,0x75, 0xf,0x37,0x76,
+  0xf,0x37,0x77, 0xf,0x37,0x79, 0xf,0x37,0x7b, 0xf,0x37,0x7c,
+  0xf,0x37,0x7d, 0xf,0x37,0x7e, 0xf,0x38,0x21, 0xf,0x38,0x22,
+  0xf,0x38,0x24, 0xf,0x38,0x25, 0xf,0x38,0x26, 0xf,0x38,0x27,
+  0xf,0x38,0x28, 0xf,0x38,0x29, 0xf,0x38,0x2a, 0xf,0x38,0x2b,
+  0xf,0x38,0x2c, 0xf,0x38,0x2d, 0xf,0x38,0x2e, 0xf,0x38,0x2f,
+  0xf,0x38,0x30, 0xf,0x38,0x31, 0xf,0x38,0x32, 0xf,0x38,0x33,
+  0xf,0x38,0x34, 0xf,0x38,0x35, 0x5,0x3b,0x5d, 0x6,0x43,0x7d,
+  0x5,0x35,0x28, 0x6,0x44,0x25, 0xf,0x37,0x7a, 0x6,0x44,0x2d,
+  0x6,0x44,0x37, 0xf,0x38,0x23, 0x5,0x35,0x25, 0x5,0x3b,0x55,
+  0x4,0x3a,0x55, 0x5,0x3b,0x69, 0x5,0x3b,0x6a, 0x5,0x3b,0x62,
+  0x5,0x3b,0x6c, 0x5,0x3b,0x6d, 0x5,0x3b,0x63, 0x4,0x3a,0x5d,
+  0x6,0x4d,0x7a, 0x6,0x4d,0x72, 0x6,0x4e,0x2b, 0x6,0x4d,0x70,
+  0x6,0x4d,0x6b, 0x5,0x3b,0x5f, 0x5,0x3b,0x67, 0x5,0x3b,0x68,
+  0x6,0x4d,0x7b, 0x6,0x4d,0x79, 0x5,0x3b,0x5e, 0x5,0x3b,0x6e,
+  0x5,0x3b,0x6b, 0x4,0x34,0x6a, 0x4,0x3a,0x57, 0x4,0x3a,0x5a,
+  0x4,0x3a,0x58, 0x4,0x3a,0x62, 0x5,0x3b,0x5a, 0x4,0x3a,0x54,
+  0x6,0x4d,0x69, 0x6,0x4e,0x35, 0x4,0x3a,0x63, 0x6,0x4d,0x6a,
+  0x5,0x3b,0x64, 0x6,0x4d,0x7c, 0x6,0x4e,0x36, 0x6,0x4d,0x7d,
+  0x6,0x4e,0x2f, 0x6,0x4e,0x30, 0x4,0x3a,0x6b, 0x6,0x4e,0x26,
+  0x4,0x3a,0x69, 0x6,0x4e,0x23, 0x5,0x3b,0x5c, 0x6,0x4e,0x28,
+  0x6,0x4d,0x75, 0x6,0x4e,0x2d, 0x6,0x4d,0x74, 0x6,0x4e,0x22,
+  0x6,0x4e,0x31, 0x6,0x4e,0x29, 0x5,0x3b,0x65, 0x6,0x61,0x32,
+  0x6,0x61,0x2d, 0x6,0x61,0x2e, 0x5,0x3b,0x57, 0x6,0x4e,0x24,
+  0x6,0x4d,0x6f, 0x6,0x4e,0x2e, 0x5,0x49,0x2e, 0x6,0x4d,0x73,
+  0x6,0x4e,0x2c, 0x6,0x4d,0x77, 0x6,0x4e,0x25, 0x6,0x4d,0x6d,
+  0x6,0x4e,0x2a, 0x4,0x3a,0x6a, 0x5,0x3b,0x60, 0x5,0x3b,0x5b,
+  0x6,0x4d,0x76, 0x6,0x4e,0x38, 0x6,0x61,0x2b, 0x5,0x3b,0x66,
+  0x6,0x61,0x2f, 0x5,0x3b,0x61, 0x6,0x4e,0x34, 0x6,0x61,0x31,
+  0x6,0x61,0x30, 0x6,0x4d,0x6c, 0x6,0x4d,0x7e, 0x6,0x4c,0x7b,
+  0x5,0x3b,0x58, 0x6,0x4d,0x6e, 0x6,0x4d,0x71, 0x6,0x4e,0x33,
+  0x6,0x4e,0x39, 0xf,0x3e,0x53, 0xf,0x3e,0x55, 0xf,0x3e,0x56,
+  0xf,0x3e,0x58, 0xf,0x3e,0x5a, 0xf,0x3e,0x5b, 0xf,0x3e,0x5c,
+  0xf,0x3e,0x5d, 0xf,0x3e,0x5e, 0xf,0x3e,0x5f, 0xf,0x3e,0x60,
+  0xf,0x3e,0x61, 0xf,0x3e,0x63, 0xf,0x3e,0x64, 0xf,0x3e,0x65,
+  0xf,0x3e,0x68, 0xf,0x3e,0x69, 0xf,0x3e,0x6a, 0xf,0x3e,0x6d,
+  0xf,0x3e,0x6f, 0xf,0x3e,0x70, 0xf,0x3e,0x71, 0xf,0x3e,0x72,
+  0xf,0x3e,0x74, 0xf,0x3e,0x75, 0xf,0x3e,0x76, 0xf,0x3e,0x77,
+  0xf,0x3e,0x78, 0xf,0x3e,0x79, 0xf,0x3e,0x7a, 0xf,0x3e,0x7b,
+  0xf,0x3e,0x7c, 0xf,0x3e,0x7d, 0xf,0x3e,0x7e, 0x6,0x61,0x2c,
+  0x5,0x3b,0x59, 0x6,0x4e,0x21, 0xf,0x3e,0x62, 0xf,0x3e,0x54,
+  0xf,0x3e,0x6e, 0xf,0x3e,0x73, 0x4,0x40,0x43, 0x6,0x57,0x34,
+  0x6,0x57,0x46, 0x5,0x42,0x4e, 0x6,0x57,0x3a, 0x6,0x57,0x3b,
+  0x5,0x42,0x34, 0x4,0x40,0x3d, 0x6,0x57,0x49, 0x6,0x57,0x5a,
+  0x4,0x40,0x40, 0x4,0x40,0x42, 0x5,0x42,0x45, 0x6,0x57,0x5e,
+  0x5,0x42,0x3a, 0x4,0x40,0x37, 0x4,0x40,0x34, 0x6,0x57,0x41,
+  0x6,0x57,0x63, 0x5,0x42,0x33, 0x6,0x57,0x51, 0x6,0x57,0x55,
+  0x5,0x42,0x43, 0x6,0x57,0x4a, 0x4,0x40,0x38, 0x4,0x40,0x3b,
+  0x5,0x42,0x36, 0x6,0x57,0x43, 0x4,0x40,0x3c, 0x4,0x40,0x45,
+  0x5,0x42,0x41, 0x4,0x40,0x4d, 0x5,0x42,0x4f, 0x4,0x40,0x3e,
+  0x5,0x42,0x46, 0x6,0x57,0x5d, 0x5,0x42,0x3f, 0x4,0x40,0x33,
+  0x4,0x40,0x31, 0x6,0x57,0x65, 0x4,0x40,0x3f, 0x6,0x57,0x42,
+  0x5,0x42,0x48, 0x5,0x42,0x42, 0x5,0x42,0x38, 0x5,0x42,0x3e,
+  0x6,0x57,0x38, 0x6,0x57,0x53, 0x6,0x57,0x4f, 0x6,0x57,0x40,
+  0x6,0x57,0x67, 0x5,0x42,0x3d, 0x6,0x57,0x39, 0x6,0x57,0x64,
+  0x6,0x57,0x37, 0x5,0x42,0x50, 0x6,0x57,0x4e, 0x6,0x57,0x45,
+  0x6,0x57,0x3c, 0x5,0x42,0x49, 0x5,0x42,0x4d, 0x5,0x42,0x3b,
+  0x5,0x42,0x47, 0x6,0x57,0x52, 0x6,0x57,0x60, 0x6,0x57,0x5c,
+  0x6,0x57,0x48, 0x6,0x57,0x56, 0x5,0x42,0x39, 0x4,0x40,0x39,
+  0x6,0x57,0x57, 0x5,0x42,0x30, 0x5,0x42,0x40, 0x5,0x42,0x32,
+  0x5,0x42,0x4a, 0x6,0x57,0x3f, 0x4,0x40,0x35, 0x4,0x40,0x4b,
+  0x6,0x57,0x4c, 0x5,0x42,0x35, 0x5,0x42,0x31, 0x6,0x57,0x47,
+  0x6,0x57,0x58, 0x7,0x27,0x53, 0x6,0x57,0x61, 0x5,0x42,0x3c,
+  0x6,0x57,0x44, 0x6,0x57,0x54, 0x6,0x57,0x36, 0x6,0x57,0x62,
+  0x6,0x57,0x66, 0x6,0x57,0x59, 0x4,0x40,0x4e, 0x5,0x42,0x44,
+  0x5,0x42,0x4b, 0x6,0x57,0x35, 0x6,0x57,0x3e, 0x6,0x57,0x4b,
+  0x6,0x57,0x4d, 0x6,0x57,0x5b, 0x6,0x57,0x5f, 0xf,0x44,0x73,
+  0xf,0x44,0x75, 0xf,0x44,0x76, 0xf,0x44,0x77, 0xf,0x44,0x78,
+  0xf,0x44,0x79, 0xf,0x44,0x7a, 0xf,0x44,0x7b, 0xf,0x44,0x7c,
+  0xf,0x44,0x7d, 0xf,0x44,0x7e, 0xf,0x45,0x21, 0xf,0x45,0x22,
+  0xf,0x45,0x23, 0xf,0x45,0x24, 0xf,0x45,0x25, 0xf,0x45,0x26,
+  0xf,0x45,0x27, 0xf,0x45,0x28, 0xf,0x45,0x29, 0xf,0x45,0x2a,
+  0xf,0x45,0x2b, 0xf,0x45,0x2c, 0xf,0x45,0x2e, 0xf,0x45,0x2f,
+  0xf,0x45,0x30, 0xf,0x45,0x31, 0x5,0x42,0x4c, 0x4,0x40,0x4a,
+  0x6,0x57,0x3d, 0x6,0x4e,0x32, 0xf,0x3e,0x57, 0x5,0x42,0x37,
+  0x4,0x46,0x66, 0x6,0x61,0x60, 0x5,0x49,0x45, 0x6,0x61,0x33,
+  0x6,0x61,0x43, 0x5,0x49,0x4b, 0x4,0x46,0x63, 0x6,0x61,0x56,
+  0x4,0x46,0x56, 0x6,0x61,0x45, 0x4,0x46,0x59, 0x6,0x61,0x3c,
+  0x5,0x49,0x41, 0x6,0x61,0x4a, 0x4,0x46,0x55, 0x6,0x61,0x52,
+  0x5,0x49,0x3d, 0x6,0x61,0x40, 0x6,0x61,0x59, 0x5,0x49,0x49,
+  0x5,0x49,0x46, 0x6,0x61,0x4c, 0x5,0x49,0x3a, 0x4,0x46,0x5a,
+  0x6,0x61,0x39, 0x6,0x61,0x55, 0x6,0x61,0x4d, 0x6,0x61,0x3f,
+  0x5,0x49,0x44, 0x5,0x49,0x39, 0x5,0x49,0x30, 0x4,0x46,0x62,
+  0x6,0x61,0x41, 0x4,0x46,0x5e, 0x6,0x61,0x36, 0x4,0x46,0x5d,
+  0x4,0x46,0x6b, 0x4,0x46,0x5b, 0x5,0x49,0x3f, 0x7,0x27,0x58,
+  0x6,0x61,0x37, 0x5,0x49,0x32, 0x5,0x49,0x37, 0x5,0x49,0x31,
+  0x5,0x49,0x48, 0x5,0x50,0x3b, 0x4,0x46,0x5f, 0x5,0x49,0x43,
+  0x6,0x61,0x38, 0x4,0x46,0x68, 0x6,0x61,0x50, 0x5,0x49,0x38,
+  0x6,0x61,0x57, 0x6,0x61,0x46, 0x6,0x61,0x3b, 0x5,0x49,0x40,
+  0x5,0x49,0x36, 0x7,0x32,0x27, 0x5,0x49,0x2f, 0x5,0x49,0x34,
+  0x6,0x61,0x47, 0x6,0x61,0x49, 0x6,0x61,0x4b, 0x6,0x61,0x4e,
+  0x6,0x61,0x5a, 0x6,0x61,0x5d, 0x6,0x61,0x5e, 0xf,0x4b,0x61,
+  0xf,0x4b,0x62, 0xf,0x4b,0x63, 0xf,0x4b,0x66, 0xf,0x4b,0x68,
+  0xf,0x4b,0x69, 0xf,0x4b,0x6a, 0xf,0x4b,0x6b, 0xf,0x4b,0x6c,
+  0xf,0x4b,0x6d, 0xf,0x4b,0x6e, 0xf,0x4b,0x6f, 0xf,0x4b,0x70,
+  0xf,0x4b,0x71, 0xf,0x4b,0x72, 0xf,0x4b,0x73, 0xf,0x4b,0x74,
+  0xf,0x4b,0x75, 0xf,0x4b,0x76, 0xf,0x4b,0x78, 0xf,0x4b,0x79,
+  0xf,0x4b,0x7a, 0xf,0x4b,0x7c, 0xf,0x4b,0x7d, 0xf,0x4b,0x7e,
+  0xf,0x4c,0x21, 0xf,0x4c,0x22, 0xf,0x4c,0x23, 0xf,0x4c,0x25,
+  0xf,0x4c,0x26, 0xf,0x4c,0x27, 0xf,0x4c,0x28, 0xf,0x4c,0x29,
+  0xf,0x4c,0x2a, 0x6,0x61,0x48, 0x5,0x49,0x42, 0x6,0x61,0x53,
+  0x6,0x61,0x51, 0x6,0x57,0x68, 0x5,0x49,0x4a, 0x6,0x61,0x5c,
+  0x6,0x61,0x5f, 0x6,0x61,0x5b, 0x6,0x61,0x3a, 0x6,0x61,0x35,
+  0x6,0x61,0x42, 0x6,0x61,0x3d, 0x6,0x57,0x50, 0xf,0x4b,0x64,
+  0xf,0x4b,0x67, 0x6,0x61,0x54, 0x4,0x46,0x6a, 0x4,0x46,0x54,
+  0x5,0x49,0x35, 0x5,0x49,0x4d, 0x7,0x32,0x26, 0x5,0x49,0x33,
+  0x6,0x61,0x61, 0x5,0x49,0x47, 0x5,0x49,0x4c, 0x5,0x57,0x46,
+  0xf,0x4b,0x7b, 0x5,0x49,0x3e, 0x7,0x27,0x6c, 0x4,0x4c,0x7e,
+  0x5,0x50,0x32, 0x4,0x4c,0x69, 0x4,0x4c,0x7c, 0x7,0x28,0x21,
+  0x5,0x50,0x35, 0x7,0x28,0x24, 0x7,0x27,0x77, 0x7,0x27,0x5c,
+  0x5,0x50,0x39, 0x7,0x27,0x69, 0x7,0x27,0x78, 0x7,0x27,0x79,
+  0x7,0x27,0x6a, 0x7,0x27,0x73, 0x5,0x50,0x3a, 0x7,0x27,0x6f,
+  0x4,0x4c,0x75, 0x5,0x50,0x3d, 0x5,0x50,0x42, 0x7,0x27,0x60,
+  0x7,0x28,0x22, 0x5,0x50,0x40, 0x5,0x50,0x3f, 0x5,0x57,0x47,
+  0x5,0x50,0x41, 0x5,0x50,0x4b, 0x7,0x27,0x6b, 0x7,0x27,0x76,
+  0x7,0x27,0x59, 0x7,0x27,0x72, 0x7,0x27,0x65, 0x5,0x50,0x48,
+  0x5,0x50,0x37, 0x4,0x4c,0x7b, 0x7,0x27,0x54, 0x7,0x27,0x5b,
+  0x7,0x27,0x64, 0x7,0x27,0x63, 0x7,0x27,0x67, 0x5,0x50,0x33,
+  0x7,0x27,0x66, 0x7,0x27,0x7d, 0x7,0x27,0x5e, 0x5,0x50,0x3e,
+  0x7,0x27,0x56, 0x5,0x50,0x34, 0x5,0x50,0x4a, 0x7,0x27,0x7c,
+  0x7,0x27,0x62, 0x7,0x27,0x5d, 0x7,0x27,0x6e, 0x4,0x4c,0x76,
+  0x5,0x50,0x49, 0x5,0x50,0x45, 0x7,0x27,0x74, 0x5,0x57,0x58,
+  0x4,0x4d,0x22, 0x5,0x50,0x43, 0x7,0x27,0x55, 0x7,0x27,0x5a,
+  0x7,0x27,0x5f, 0x7,0x27,0x70, 0x7,0x27,0x71, 0x7,0x28,0x23,
+  0xf,0x51,0x5e, 0xf,0x51,0x5f, 0xf,0x51,0x60, 0xf,0x51,0x62,
+  0xf,0x51,0x63, 0xf,0x51,0x66, 0xf,0x51,0x67, 0xf,0x51,0x68,
+  0xf,0x51,0x69, 0xf,0x51,0x6a, 0xf,0x51,0x6c, 0xf,0x51,0x6d,
+  0xf,0x51,0x6e, 0xf,0x51,0x6f, 0xf,0x51,0x70, 0xf,0x51,0x72,
+  0xf,0x51,0x75, 0xf,0x51,0x77, 0x4,0x4d,0x23, 0x7,0x27,0x7a,
+  0x5,0x50,0x44, 0x7,0x27,0x7e, 0x7,0x27,0x75, 0x7,0x27,0x68,
+  0xf,0x51,0x71, 0xf,0x51,0x61, 0xf,0x51,0x6b, 0x5,0x50,0x36,
+  0x7,0x27,0x57, 0x5,0x50,0x47, 0x5,0x50,0x3c, 0x6,0x61,0x34,
+  0x7,0x42,0x2e, 0xf,0x4c,0x24, 0x7,0x32,0x51, 0x4,0x53,0x2d,
+  0x7,0x32,0x32, 0x4,0x53,0x2a, 0x4,0x53,0x34, 0x7,0x32,0x53,
+  0x5,0x57,0x49, 0x4,0x53,0x2b, 0x5,0x57,0x5d, 0x7,0x32,0x43,
+  0x5,0x57,0x54, 0x4,0x52,0x71, 0x4,0x53,0x30, 0x5,0x57,0x51,
+  0x5,0x57,0x5b, 0x7,0x32,0x3c, 0x4,0x52,0x75, 0x5,0x57,0x5a,
+  0x5,0x57,0x4b, 0x5,0x57,0x5f, 0x7,0x32,0x33, 0x5,0x57,0x61,
+  0x4,0x53,0x2f, 0x7,0x32,0x28, 0x5,0x57,0x4d, 0x5,0x57,0x4f,
+  0x7,0x32,0x4c, 0x5,0x57,0x55, 0x5,0x57,0x62, 0x7,0x32,0x3d,
+  0x7,0x32,0x3b, 0x5,0x50,0x4c, 0x4,0x52,0x70, 0x5,0x57,0x48,
+  0x5,0x57,0x5e, 0x7,0x32,0x45, 0x7,0x32,0x4b, 0x7,0x32,0x41,
+  0x5,0x57,0x64, 0x5,0x57,0x60, 0x7,0x28,0x25, 0x7,0x27,0x7b,
+  0x7,0x32,0x52, 0x5,0x5d,0x7a, 0x4,0x53,0x26, 0x7,0x32,0x2e,
+  0x4,0x53,0x29, 0x7,0x32,0x36, 0x5,0x57,0x53, 0x4,0x53,0x28,
+  0x4,0x52,0x74, 0x5,0x50,0x38, 0x7,0x32,0x2f, 0x5,0x57,0x52,
+  0x7,0x32,0x38, 0x5,0x57,0x56, 0x5,0x57,0x4c, 0x7,0x32,0x2d,
+  0x7,0x32,0x57, 0x7,0x32,0x4e, 0x4,0x53,0x2e, 0x5,0x57,0x5c,
+  0x7,0x32,0x2a, 0x4,0x52,0x78, 0x7,0x32,0x39, 0x7,0x42,0x2f,
+  0x7,0x32,0x2b, 0x7,0x32,0x55, 0x4,0x53,0x32, 0x7,0x32,0x42,
+  0x7,0x32,0x35, 0x7,0x32,0x3f, 0xf,0x57,0x3e, 0xf,0x57,0x3f,
+  0xf,0x57,0x40, 0xf,0x57,0x41, 0x5,0x57,0x4a, 0x5,0x57,0x50,
+  0x5,0x57,0x57, 0x7,0x32,0x2c, 0x7,0x32,0x34, 0x7,0x32,0x37,
+  0x7,0x32,0x3e, 0x7,0x32,0x40, 0x7,0x32,0x47, 0x7,0x32,0x49,
+  0x7,0x32,0x4d, 0x7,0x32,0x4f, 0x7,0x32,0x54, 0x7,0x32,0x59,
+  0x7,0x32,0x5a, 0xf,0x57,0x37, 0xf,0x57,0x38, 0xf,0x57,0x39,
+  0xf,0x57,0x3a, 0xf,0x57,0x3b, 0xf,0x57,0x3c, 0xf,0x57,0x3d,
+  0xf,0x57,0x42, 0xf,0x57,0x43, 0xf,0x57,0x44, 0xf,0x57,0x49,
+  0xf,0x57,0x4c, 0xf,0x57,0x4d, 0xf,0x57,0x4e, 0xf,0x57,0x4f,
+  0xf,0x57,0x50, 0xf,0x57,0x51, 0xf,0x57,0x52, 0xf,0x57,0x53,
+  0xf,0x57,0x54, 0xf,0x57,0x56, 0xf,0x57,0x57, 0xf,0x57,0x58,
+  0xf,0x57,0x59, 0xf,0x57,0x5a, 0xf,0x57,0x5b, 0xf,0x57,0x5c,
+  0x7,0x32,0x31, 0xf,0x57,0x45, 0x4,0x52,0x7d, 0x7,0x32,0x3a,
+  0x7,0x32,0x58, 0x7,0x32,0x50, 0x5,0x57,0x65, 0x5,0x57,0x4e,
+  0x7,0x32,0x30, 0x7,0x32,0x29, 0x7,0x32,0x48, 0xf,0x57,0x4a,
+  0x7,0x32,0x56, 0x5,0x57,0x63, 0x5,0x57,0x59, 0x7,0x32,0x46,
+  0x7,0x3a,0x76, 0x4,0x58,0x3a, 0x4,0x58,0x3f, 0x7,0x3a,0x6e,
+  0x7,0x42,0x3b, 0x7,0x3a,0x78, 0x4,0x58,0x48, 0x4,0x58,0x49,
+  0x5,0x57,0x66, 0x5,0x5d,0x75, 0x5,0x5d,0x7d, 0x5,0x5d,0x73,
+  0x7,0x3b,0x2b, 0x7,0x3b,0x2f, 0x5,0x5d,0x6f, 0x4,0x58,0x4a,
+  0x4,0x58,0x37, 0x7,0x3a,0x7b, 0x4,0x58,0x45, 0x5,0x5e,0x21,
+  0x7,0x3a,0x7c, 0x7,0x3b,0x23, 0x7,0x3b,0x33, 0x5,0x5d,0x7e,
+  0x5,0x5e,0x25, 0x7,0x3b,0x31, 0x5,0x5e,0x22, 0x5,0x5d,0x6e,
+  0x5,0x5d,0x78, 0x7,0x3a,0x7e, 0x5,0x5d,0x7c, 0x7,0x3a,0x73,
+  0x7,0x3b,0x24, 0x7,0x3b,0x2a, 0x5,0x5d,0x7b, 0x4,0x58,0x4b,
+  0x5,0x5d,0x6d, 0x5,0x5e,0x23, 0x4,0x58,0x41, 0x7,0x3b,0x30,
+  0x5,0x5d,0x77, 0x4,0x58,0x46, 0x5,0x5d,0x71, 0x5,0x5e,0x24,
+  0x7,0x3b,0x25, 0x5,0x5d,0x76, 0x7,0x3a,0x70, 0x7,0x3a,0x75,
+  0x7,0x42,0x39, 0x7,0x3a,0x6b, 0x7,0x3a,0x6c, 0x7,0x3b,0x35,
+  0x7,0x3a,0x7d, 0x4,0x58,0x47, 0x7,0x3b,0x2e, 0x7,0x3a,0x72,
+  0x7,0x3a,0x77, 0x7,0x49,0x34, 0x7,0x3a,0x71, 0x7,0x3b,0x22,
+  0x7,0x3b,0x29, 0x7,0x32,0x4a, 0x7,0x3a,0x79, 0x7,0x3b,0x21,
+  0x7,0x3b,0x37, 0x5,0x5d,0x74, 0x5,0x50,0x4d, 0x4,0x58,0x43,
+  0x7,0x49,0x35, 0x5,0x5d,0x70, 0x5,0x5d,0x72, 0x7,0x3a,0x6d,
+  0x7,0x3b,0x27, 0x7,0x3b,0x28, 0x7,0x3b,0x2c, 0x7,0x3b,0x34,
+  0xf,0x5c,0x3a, 0xf,0x5c,0x3b, 0xf,0x5c,0x3c, 0xf,0x5c,0x3d,
+  0xf,0x5c,0x3e, 0xf,0x5c,0x40, 0xf,0x5c,0x41, 0xf,0x5c,0x42,
+  0xf,0x5c,0x43, 0xf,0x5c,0x44, 0xf,0x5c,0x45, 0xf,0x5c,0x46,
+  0xf,0x5c,0x47, 0xf,0x5c,0x49, 0xf,0x5c,0x4a, 0xf,0x5c,0x4b,
+  0xf,0x5c,0x4c, 0xf,0x5c,0x4f, 0xf,0x5c,0x50, 0x4,0x58,0x39,
+  0x7,0x3a,0x7a, 0x7,0x3b,0x2d, 0x7,0x3b,0x36, 0x7,0x3a,0x74,
+  0xf,0x5c,0x48, 0xf,0x5c,0x3f, 0xf,0x5c,0x4e, 0xf,0x57,0x55,
+  0xf,0x63,0x5b, 0x5,0x64,0x2c, 0x7,0x42,0x4b, 0x4,0x5d,0x24,
+  0x7,0x42,0x4c, 0x5,0x64,0x22, 0x4,0x5d,0x25, 0x5,0x5e,0x26,
+  0x5,0x64,0x2f, 0x7,0x42,0x48, 0x5,0x64,0x25, 0x5,0x63,0x7e,
+  0x7,0x42,0x30, 0x5,0x64,0x21, 0x5,0x64,0x29, 0x5,0x64,0x36,
+  0x5,0x64,0x39, 0x7,0x42,0x36, 0x5,0x64,0x33, 0x7,0x42,0x46,
+  0x4,0x5d,0x22, 0x5,0x5e,0x27, 0x5,0x64,0x38, 0x5,0x64,0x26,
+  0x5,0x64,0x30, 0x7,0x42,0x3d, 0x5,0x64,0x24, 0x5,0x64,0x2e,
+  0x7,0x42,0x4d, 0x4,0x5d,0x30, 0x5,0x64,0x31, 0x4,0x5d,0x2e,
+  0x4,0x5d,0x26, 0x4,0x5d,0x2a, 0x5,0x64,0x34, 0x5,0x64,0x32,
+  0x7,0x42,0x3e, 0x7,0x4f,0x46, 0x7,0x42,0x3a, 0x7,0x42,0x37,
+  0x4,0x5d,0x2f, 0x7,0x49,0x44, 0x5,0x64,0x2b, 0x7,0x42,0x33,
+  0x7,0x42,0x45, 0x7,0x42,0x49, 0x4,0x5d,0x2d, 0x7,0x3b,0x26,
+  0x7,0x42,0x32, 0x7,0x42,0x34, 0x7,0x42,0x35, 0x7,0x42,0x3f,
+  0x7,0x42,0x42, 0x7,0x42,0x44, 0x7,0x42,0x4a, 0x7,0x42,0x4e,
+  0x7,0x42,0x4f, 0xf,0x60,0x48, 0xf,0x60,0x49, 0xf,0x60,0x4a,
+  0xf,0x60,0x4b, 0xf,0x60,0x4c, 0xf,0x60,0x4f, 0xf,0x60,0x50,
+  0xf,0x60,0x51, 0xf,0x60,0x52, 0xf,0x60,0x53, 0xf,0x60,0x54,
+  0xf,0x60,0x55, 0xf,0x60,0x56, 0xf,0x60,0x57, 0xf,0x60,0x58,
+  0xf,0x60,0x59, 0xf,0x60,0x5a, 0xf,0x60,0x5b, 0xf,0x60,0x5c,
+  0xf,0x60,0x5e, 0xf,0x60,0x5f, 0x4,0x5d,0x27, 0x7,0x42,0x40,
+  0x5,0x64,0x27, 0x7,0x42,0x41, 0x7,0x49,0x33, 0x5,0x64,0x35,
+  0x5,0x64,0x2a, 0x4,0x5d,0x29, 0x7,0x42,0x47, 0x5,0x64,0x23,
+  0x5,0x64,0x28, 0x5,0x64,0x37, 0x7,0x42,0x43, 0x7,0x42,0x31,
+  0x5,0x69,0x3e, 0x5,0x69,0x2f, 0x7,0x4f,0x5d, 0x5,0x69,0x30,
+  0x5,0x69,0x3a, 0x5,0x69,0x36, 0x4,0x60,0x7d, 0x4,0x60,0x79,
+  0x5,0x69,0x3f, 0x5,0x69,0x37, 0x7,0x49,0x38, 0x7,0x49,0x45,
+  0x5,0x69,0x3b, 0x5,0x69,0x35, 0x4,0x60,0x7c, 0x5,0x69,0x2e,
+  0x5,0x6d,0x42, 0x7,0x49,0x43, 0x5,0x69,0x38, 0x7,0x49,0x46,
+  0x5,0x69,0x39, 0x7,0x49,0x41, 0x7,0x49,0x54, 0x7,0x49,0x51,
+  0x7,0x49,0x3c, 0x5,0x69,0x33, 0x5,0x69,0x3d, 0x7,0x49,0x4b,
+  0x7,0x49,0x4e, 0x7,0x49,0x3e, 0x7,0x49,0x3d, 0x7,0x49,0x42,
+  0x7,0x49,0x47, 0x7,0x4f,0x54, 0x7,0x49,0x4d, 0x7,0x49,0x39,
+  0x7,0x49,0x4c, 0x7,0x49,0x4a, 0x7,0x4f,0x47, 0x5,0x69,0x34,
+  0x5,0x69,0x32, 0x4,0x60,0x76, 0x5,0x69,0x3c, 0x7,0x49,0x49,
+  0x7,0x49,0x40, 0x7,0x49,0x3f, 0x7,0x49,0x36, 0x7,0x49,0x37,
+  0x7,0x49,0x3a, 0x7,0x49,0x48, 0x7,0x49,0x50, 0x7,0x49,0x52,
+  0xf,0x63,0x51, 0xf,0x63,0x52, 0xf,0x63,0x54, 0xf,0x63,0x55,
+  0xf,0x63,0x56, 0xf,0x63,0x57, 0xf,0x63,0x58, 0xf,0x63,0x59,
+  0xf,0x63,0x5a, 0xf,0x63,0x5c, 0xf,0x63,0x5d, 0xf,0x63,0x5e,
+  0xf,0x63,0x5f, 0xf,0x63,0x60, 0xf,0x63,0x61, 0xf,0x63,0x62,
+  0xf,0x63,0x63, 0xf,0x63,0x64, 0xf,0x63,0x65, 0xf,0x63,0x66,
+  0xf,0x63,0x67, 0xf,0x63,0x68, 0xf,0x63,0x69, 0x7,0x49,0x4f,
+  0x7,0x4f,0x5e, 0x7,0x4f,0x55, 0x7,0x4f,0x4e, 0x5,0x6d,0x40,
+  0x5,0x6d,0x47, 0x7,0x4f,0x61, 0x5,0x6d,0x41, 0x5,0x6d,0x44,
+  0x4,0x64,0x39, 0x7,0x4f,0x58, 0x5,0x6d,0x46, 0x4,0x64,0x35,
+  0x5,0x6d,0x3f, 0x5,0x70,0x7e, 0x7,0x4f,0x5f, 0x5,0x6d,0x3b,
+  0x7,0x4f,0x51, 0x7,0x4f,0x50, 0x7,0x4f,0x4c, 0x5,0x6d,0x3e,
+  0x5,0x6d,0x45, 0x7,0x4f,0x4d, 0x4,0x64,0x31, 0x7,0x4f,0x67,
+  0x5,0x6d,0x3c, 0x7,0x4f,0x4b, 0x7,0x4f,0x53, 0x7,0x4f,0x62,
+  0x7,0x4f,0x5b, 0x7,0x49,0x3b, 0x7,0x4f,0x65, 0x5,0x6d,0x43,
+  0x4,0x64,0x2e, 0x7,0x4f,0x59, 0x5,0x6d,0x3d, 0x7,0x4f,0x66,
+  0x7,0x4f,0x5a, 0x5,0x69,0x31, 0x7,0x54,0x67, 0x7,0x58,0x69,
+  0x7,0x4f,0x49, 0x5,0x6d,0x3a, 0x5,0x6d,0x48, 0x7,0x4f,0x52,
+  0x7,0x4f,0x56, 0x7,0x4f,0x57, 0x7,0x4f,0x5c, 0x7,0x4f,0x63,
+  0x7,0x4f,0x64, 0xf,0x65,0x79, 0xf,0x65,0x7a, 0xf,0x65,0x7b,
+  0xf,0x65,0x7c, 0xf,0x65,0x7d, 0xf,0x65,0x7e, 0xf,0x66,0x21,
+  0xf,0x66,0x22, 0xf,0x66,0x23, 0xf,0x66,0x24, 0xf,0x66,0x25,
+  0xf,0x66,0x26, 0xf,0x66,0x27, 0xf,0x66,0x28, 0xf,0x66,0x29,
+  0xf,0x66,0x2a, 0xf,0x66,0x2b, 0xf,0x66,0x2c, 0x7,0x4f,0x4a,
+  0x7,0x4f,0x48, 0x7,0x4f,0x60, 0x7,0x54,0x63, 0x4,0x69,0x35,
+  0x5,0x71,0x28, 0x7,0x54,0x66, 0x7,0x54,0x5f, 0x5,0x71,0x24,
+  0x4,0x67,0x2c, 0x4,0x67,0x2a, 0x7,0x54,0x59, 0x4,0x67,0x2e,
+  0x5,0x71,0x22, 0x7,0x54,0x64, 0x5,0x71,0x25, 0x7,0x54,0x65,
+  0x4,0x67,0x29, 0x5,0x6d,0x49, 0x5,0x71,0x27, 0x7,0x54,0x5b,
+  0x7,0x54,0x53, 0x5,0x71,0x26, 0x7,0x54,0x62, 0x7,0x54,0x57,
+  0x7,0x54,0x55, 0x7,0x54,0x60, 0x4,0x67,0x2d, 0x5,0x71,0x23,
+  0x5,0x71,0x29, 0x5,0x71,0x2a, 0x7,0x54,0x54, 0x7,0x54,0x5c,
+  0x7,0x4f,0x4f, 0x7,0x54,0x5a, 0x7,0x58,0x76, 0x5,0x71,0x21,
+  0x7,0x54,0x56, 0x7,0x54,0x5d, 0x7,0x54,0x61, 0xf,0x68,0x38,
+  0xf,0x68,0x3a, 0xf,0x68,0x3b, 0xf,0x68,0x3c, 0xf,0x68,0x3d,
+  0xf,0x68,0x3e, 0xf,0x68,0x3f, 0xf,0x68,0x41, 0xf,0x68,0x42,
+  0xf,0x68,0x43, 0xf,0x68,0x44, 0xf,0x68,0x40, 0x7,0x54,0x58,
+  0x5,0x74,0x24, 0x4,0x69,0x36, 0x5,0x74,0x25, 0x5,0x74,0x27,
+  0x5,0x74,0x28, 0x7,0x58,0x70, 0x5,0x74,0x29, 0x4,0x69,0x3b,
+  0x4,0x69,0x3a, 0x7,0x58,0x77, 0x7,0x58,0x75, 0x7,0x58,0x6d,
+  0x7,0x5c,0x53, 0x5,0x74,0x23, 0x5,0x74,0x26, 0x7,0x58,0x6f,
+  0x4,0x69,0x38, 0x4,0x69,0x39, 0x7,0x58,0x6e, 0x4,0x69,0x34,
+  0x7,0x58,0x73, 0x7,0x58,0x6b, 0x7,0x58,0x78, 0x7,0x58,0x6a,
+  0x7,0x58,0x6c, 0x7,0x58,0x71, 0x7,0x58,0x74, 0xf,0x69,0x68,
+  0xf,0x69,0x6b, 0xf,0x69,0x6c, 0x7,0x5c,0x4f, 0x7,0x5c,0x5a,
+  0x4,0x6a,0x75, 0x5,0x76,0x40, 0x4,0x6a,0x74, 0x5,0x76,0x3f,
+  0x4,0x6a,0x71, 0x4,0x6a,0x73, 0x4,0x6a,0x72, 0x4,0x6a,0x70,
+  0x5,0x76,0x43, 0x7,0x5c,0x51, 0x7,0x5c,0x5b, 0x5,0x76,0x42,
+  0x5,0x79,0x40, 0x7,0x5c,0x55, 0x5,0x76,0x44, 0x7,0x5c,0x57,
+  0x7,0x5c,0x58, 0x7,0x5c,0x4d, 0x7,0x5c,0x50, 0x5,0x76,0x41,
+  0x7,0x5c,0x56, 0x7,0x5c,0x54, 0x7,0x5c,0x52, 0x7,0x5c,0x59,
+  0xf,0x6a,0x6d, 0xf,0x6a,0x6e, 0xf,0x6a,0x6f, 0x7,0x5c,0x4e,
+  0xf,0x69,0x6a, 0x5,0x78,0x23, 0x5,0x78,0x22, 0x5,0x78,0x21,
+  0x7,0x5f,0x40, 0x5,0x78,0x24, 0x7,0x5f,0x42, 0x7,0x5f,0x46,
+  0x7,0x5f,0x43, 0x7,0x5f,0x44, 0x7,0x5f,0x49, 0x7,0x5f,0x41,
+  0x7,0x5f,0x47, 0x5,0x79,0x42, 0xf,0x6b,0x60, 0xf,0x6b,0x61,
+  0xf,0x6b,0x63, 0x7,0x5f,0x45, 0x7,0x5f,0x48, 0x5,0x79,0x43,
+  0x7,0x62,0x55, 0x5,0x79,0x41, 0x7,0x62,0x53, 0x7,0x61,0x3e,
+  0x7,0x61,0x3d, 0x7,0x61,0x3c, 0xf,0x6c,0x38, 0xf,0x6c,0x39,
+  0x7,0x61,0x3f, 0x5,0x7a,0x35, 0x5,0x7a,0x36, 0x7,0x62,0x59,
+  0x7,0x62,0x57, 0x7,0x62,0x56, 0x7,0x62,0x58, 0x7,0x62,0x54,
+  0xf,0x6c,0x51, 0x7,0x62,0x48, 0x4,0x6d,0x7a, 0x7,0x63,0x68,
+  0x5,0x7a,0x72, 0x4,0x6d,0x5f, 0x4,0x6d,0x7c, 0xf,0x6c,0x6b,
+  0xf,0x6c,0x6d, 0x5,0x7b,0x46, 0x4,0x6e,0x35, 0x7,0x64,0x58,
+  0x7,0x64,0x59, 0x5,0x7c,0x49, 0x7,0x65,0x40, 0x5,0x7b,0x66,
+  0x7,0x65,0x60, 0x7,0x65,0x76, 0x5,0x7c,0x4f, 0x5,0x7c,0x3d,
+  0x7,0x65,0x5f, 0xf,0x28,0x65, 0x4,0x2b,0x3f, 0x6,0x34,0x49,
+  0x6,0x34,0x48, 0xf,0x32,0x4e, 0x5,0x35,0x36, 0x5,0x35,0x34,
+  0x4,0x34,0x77, 0x4,0x34,0x76, 0x6,0x44,0x41, 0x4,0x34,0x78,
+  0x6,0x44,0x42, 0x6,0x44,0x40, 0x6,0x44,0x3f, 0x6,0x3b,0x63,
+  0x6,0x4e,0x3c, 0x5,0x3b,0x71, 0x6,0x4e,0x3d, 0xf,0x3f,0x22,
+  0xf,0x3f,0x23, 0xf,0x3f,0x24, 0x5,0x42,0x55, 0x5,0x42,0x51,
+  0x5,0x42,0x52, 0x6,0x57,0x6b, 0x6,0x57,0x6a, 0x6,0x57,0x69,
+  0x5,0x49,0x4f, 0x6,0x61,0x62, 0x6,0x61,0x66, 0x4,0x46,0x6f,
+  0x6,0x61,0x65, 0x6,0x61,0x67, 0x6,0x61,0x63, 0x6,0x61,0x64,
+  0x5,0x49,0x50, 0xf,0x4c,0x2b, 0xf,0x4c,0x2c, 0x4,0x46,0x6e,
+  0x7,0x28,0x29, 0x7,0x28,0x27, 0x7,0x32,0x5f, 0x5,0x50,0x4e,
+  0x7,0x28,0x26, 0x7,0x28,0x28, 0xf,0x51,0x79, 0x7,0x26,0x29,
+  0x5,0x57,0x6a, 0x5,0x57,0x6b, 0x5,0x57,0x68, 0x5,0x57,0x69,
+  0x4,0x53,0x35, 0x5,0x57,0x67, 0x7,0x32,0x60, 0x7,0x32,0x5c,
+  0x7,0x32,0x5d, 0x4,0x53,0x38, 0x4,0x53,0x37, 0x5,0x57,0x6d,
+  0x7,0x32,0x5e, 0xf,0x57,0x5d, 0xf,0x57,0x5e, 0xf,0x57,0x5f,
+  0x5,0x57,0x6c, 0x7,0x32,0x5b, 0x4,0x58,0x4c, 0x7,0x3b,0x39,
+  0xf,0x5c,0x51, 0xf,0x5c,0x52, 0xf,0x5c,0x53, 0x7,0x42,0x51,
+  0x5,0x64,0x3d, 0x4,0x5d,0x33, 0x7,0x42,0x50, 0x4,0x5d,0x31,
+  0x7,0x42,0x52, 0x5,0x64,0x3c, 0xf,0x60,0x60, 0x7,0x49,0x56,
+  0x7,0x49,0x55, 0x4,0x60,0x7e, 0x7,0x49,0x57, 0x7,0x4f,0x69,
+  0x5,0x6d,0x4a, 0x7,0x4f,0x6a, 0x7,0x4c,0x26, 0x5,0x71,0x2c,
+  0x7,0x4f,0x68, 0x5,0x71,0x2b, 0x5,0x70,0x4d, 0x7,0x54,0x6a,
+  0x7,0x54,0x69, 0x5,0x74,0x2a, 0x7,0x5c,0x24, 0x4,0x6e,0x38,
+  0x5,0x24,0x75, 0x6,0x29,0x29, 0x4,0x28,0x22, 0x6,0x2e,0x25,
+  0xf,0x28,0x66, 0xf,0x28,0x67, 0xf,0x28,0x69, 0xf,0x28,0x6a,
+  0x4,0x2b,0x43, 0x6,0x34,0x4b, 0x4,0x2b,0x40, 0x4,0x2b,0x42,
+  0x6,0x34,0x4a, 0x5,0x2b,0x40, 0x6,0x34,0x4d, 0x6,0x34,0x4c,
+  0x6,0x34,0x4e, 0xf,0x2d,0x3d, 0xf,0x2d,0x3f, 0xf,0x2d,0x42,
+  0xf,0x2d,0x43, 0xf,0x2d,0x44, 0xf,0x2d,0x41, 0x4,0x2b,0x41,
+  0x5,0x30,0x30, 0x6,0x3b,0x68, 0x5,0x30,0x2c, 0x5,0x30,0x33,
+  0x6,0x3b,0x67, 0x5,0x30,0x2d, 0x5,0x30,0x32, 0x6,0x3b,0x66,
+  0x4,0x2f,0x6c, 0x4,0x2f,0x6a, 0x4,0x2f,0x6e, 0x5,0x30,0x2e,
+  0x6,0x3b,0x70, 0x5,0x30,0x29, 0x6,0x3b,0x6b, 0x5,0x30,0x31,
+  0x5,0x30,0x28, 0x6,0x3b,0x6a, 0x5,0x30,0x2f, 0x5,0x30,0x34,
+  0x6,0x3b,0x6e, 0x6,0x3b,0x64, 0x5,0x30,0x2b, 0x6,0x3b,0x65,
+  0xf,0x32,0x4f, 0x6,0x3b,0x6c, 0x6,0x3b,0x6d, 0x5,0x30,0x2a,
+  0x6,0x3b,0x6f, 0x5,0x35,0x37, 0x4,0x34,0x7d, 0x6,0x44,0x45,
+  0x5,0x35,0x38, 0x5,0x35,0x39, 0x5,0x35,0x3a, 0x5,0x35,0x40,
+  0x4,0x35,0x22, 0xf,0x38,0x3d, 0x4,0x35,0x23, 0x6,0x44,0x4c,
+  0x5,0x35,0x3c, 0x4,0x35,0x21, 0x5,0x35,0x3d, 0x6,0x44,0x46,
+  0x5,0x35,0x41, 0x6,0x44,0x49, 0x4,0x35,0x24, 0x4,0x34,0x7e,
+  0x6,0x44,0x47, 0x6,0x44,0x4a, 0x6,0x44,0x44, 0x6,0x44,0x4b,
+  0x6,0x44,0x4d, 0xf,0x38,0x36, 0xf,0x38,0x37, 0xf,0x38,0x38,
+  0xf,0x38,0x39, 0xf,0x38,0x3b, 0xf,0x38,0x3c, 0xf,0x38,0x3e,
+  0xf,0x38,0x3f, 0xf,0x38,0x40, 0x5,0x35,0x3e, 0x6,0x44,0x4e,
+  0x4,0x35,0x25, 0x6,0x44,0x43, 0x5,0x35,0x3f, 0x5,0x35,0x3b,
+  0x5,0x3b,0x73, 0x6,0x4e,0x40, 0xf,0x3f,0x28, 0x4,0x3a,0x73,
+  0x6,0x4e,0x48, 0x5,0x3c,0x28, 0x5,0x3b,0x78, 0x5,0x3b,0x75,
+  0x5,0x3b,0x77, 0x5,0x3b,0x7a, 0x5,0x3c,0x23, 0x5,0x3b,0x7d,
+  0x6,0x4e,0x49, 0x6,0x4e,0x3e, 0x6,0x4e,0x43, 0x5,0x3b,0x76,
+  0x5,0x3c,0x27, 0x6,0x4e,0x42, 0x6,0x4e,0x4b, 0x6,0x4e,0x4a,
+  0x5,0x3b,0x7c, 0x6,0x4e,0x3f, 0x5,0x3b,0x79, 0x5,0x3c,0x21,
+  0x6,0x4e,0x4d, 0x6,0x4e,0x44, 0x6,0x4e,0x45, 0x6,0x57,0x6e,
+  0x5,0x3c,0x25, 0x5,0x3b,0x7e, 0x6,0x57,0x78, 0x5,0x3c,0x24,
+  0x6,0x4e,0x4c, 0x6,0x4e,0x47, 0x5,0x3c,0x22, 0x5,0x3b,0x72,
+  0x6,0x4e,0x41, 0xf,0x3f,0x25, 0xf,0x3f,0x26, 0xf,0x3f,0x27,
+  0xf,0x3f,0x29, 0x4,0x3a,0x77, 0x6,0x57,0x70, 0x6,0x57,0x6f,
+  0x4,0x40,0x5a, 0x4,0x40,0x5c, 0x6,0x57,0x74, 0x4,0x40,0x54,
+  0x5,0x42,0x58, 0x5,0x42,0x5b, 0x5,0x42,0x56, 0x4,0x40,0x51,
+  0x4,0x40,0x53, 0x5,0x42,0x5c, 0x5,0x42,0x5e, 0x5,0x42,0x5a,
+  0x5,0x42,0x57, 0x4,0x40,0x5e, 0x4,0x40,0x50, 0x6,0x57,0x72,
+  0x6,0x57,0x73, 0x6,0x57,0x6c, 0x6,0x57,0x6d, 0x6,0x61,0x68,
+  0x6,0x57,0x71, 0x6,0x57,0x75, 0x5,0x42,0x59, 0xf,0x45,0x32,
+  0xf,0x45,0x33, 0xf,0x45,0x34, 0xf,0x45,0x35, 0xf,0x45,0x36,
+  0xf,0x45,0x37, 0xf,0x45,0x38, 0xf,0x45,0x39, 0x6,0x57,0x76,
+  0x7,0x49,0x6b, 0x6,0x57,0x77, 0x6,0x57,0x79, 0x5,0x49,0x51,
+  0x5,0x49,0x56, 0x5,0x49,0x5b, 0x5,0x49,0x57, 0x5,0x49,0x5c,
+  0x4,0x47,0x21, 0x5,0x49,0x55, 0x4,0x46,0x7d, 0x6,0x62,0x23,
+  0x5,0x49,0x5f, 0x4,0x46,0x77, 0x5,0x49,0x59, 0x4,0x46,0x74,
+  0x6,0x61,0x76, 0x6,0x61,0x6a, 0x6,0x61,0x75, 0x4,0x47,0x22,
+  0x5,0x49,0x5e, 0x6,0x61,0x6b, 0x6,0x61,0x71, 0x5,0x49,0x54,
+  0x6,0x61,0x7c, 0x5,0x49,0x5d, 0x5,0x49,0x58, 0x6,0x61,0x7b,
+  0x6,0x62,0x21, 0x5,0x49,0x60, 0x6,0x61,0x74, 0x6,0x61,0x7d,
+  0x6,0x61,0x6d, 0x5,0x49,0x61, 0x5,0x49,0x62, 0x6,0x61,0x72,
+  0x6,0x62,0x22, 0x5,0x49,0x5a, 0x6,0x61,0x6c, 0x6,0x61,0x79,
+  0x6,0x61,0x7a, 0x6,0x61,0x70, 0x5,0x49,0x52, 0x6,0x61,0x6e,
+  0x5,0x49,0x53, 0x6,0x61,0x73, 0xf,0x4c,0x2d, 0xf,0x4c,0x2e,
+  0xf,0x4c,0x30, 0xf,0x4c,0x31, 0xf,0x4c,0x32, 0x6,0x61,0x78,
+  0x4,0x40,0x58, 0x6,0x61,0x7e, 0x6,0x61,0x6f, 0x4,0x4d,0x2d,
+  0x7,0x28,0x43, 0x5,0x50,0x53, 0x4,0x4d,0x2e, 0x4,0x4d,0x2b,
+  0x7,0x28,0x38, 0x4,0x4d,0x34, 0x5,0x50,0x5f, 0x7,0x28,0x37,
+  0x7,0x28,0x2c, 0x5,0x50,0x51, 0x7,0x28,0x2b, 0x7,0x28,0x35,
+  0x7,0x28,0x3f, 0x5,0x50,0x57, 0x4,0x4d,0x32, 0x4,0x4d,0x2a,
+  0x7,0x28,0x40, 0x7,0x28,0x34, 0x5,0x50,0x56, 0x7,0x28,0x3b,
+  0x7,0x28,0x31, 0x7,0x28,0x3e, 0x5,0x57,0x6e, 0x4,0x4d,0x2c,
+  0x4,0x4d,0x29, 0x5,0x50,0x5c, 0x5,0x50,0x5a, 0x5,0x50,0x50,
+  0x5,0x50,0x59, 0x5,0x50,0x58, 0x7,0x28,0x2a, 0x5,0x50,0x5b,
+  0x4,0x46,0x7a, 0x5,0x50,0x52, 0x5,0x50,0x5e, 0x5,0x50,0x5d,
+  0x4,0x4d,0x35, 0x7,0x28,0x46, 0x7,0x28,0x30, 0x7,0x28,0x2d,
+  0x7,0x28,0x44, 0x7,0x28,0x39, 0x7,0x28,0x45, 0x7,0x28,0x3c,
+  0x7,0x28,0x2f, 0x6,0x61,0x77, 0x7,0x28,0x36, 0x7,0x28,0x3d,
+  0x5,0x50,0x54, 0x4,0x4d,0x27, 0x5,0x50,0x4f, 0xf,0x51,0x7a,
+  0xf,0x51,0x7b, 0xf,0x51,0x7e, 0xf,0x52,0x21, 0xf,0x52,0x22,
+  0xf,0x52,0x23, 0xf,0x52,0x25, 0xf,0x52,0x28, 0xf,0x52,0x29,
+  0xf,0x52,0x2a, 0xf,0x52,0x2b, 0x7,0x28,0x33, 0x7,0x28,0x41,
+  0x7,0x28,0x3a, 0xf,0x52,0x27, 0x7,0x28,0x32, 0xf,0x4c,0x2f,
+  0x5,0x57,0x70, 0x4,0x53,0x45, 0x5,0x57,0x76, 0x5,0x57,0x75,
+  0x4,0x53,0x3a, 0x5,0x57,0x74, 0x5,0x57,0x71, 0x7,0x32,0x6e,
+  0x7,0x32,0x7d, 0x5,0x57,0x77, 0x4,0x53,0x48, 0x5,0x57,0x7b,
+  0x4,0x53,0x49, 0x4,0x53,0x40, 0x4,0x53,0x42, 0x5,0x57,0x7c,
+  0x7,0x32,0x6d, 0x4,0x53,0x3b, 0x7,0x32,0x67, 0x4,0x53,0x3f,
+  0x7,0x32,0x7c, 0x5,0x57,0x79, 0x5,0x57,0x6f, 0x5,0x58,0x21,
+  0x5,0x57,0x72, 0x7,0x3b,0x3a, 0x5,0x57,0x78, 0x7,0x32,0x69,
+  0x4,0x53,0x46, 0x5,0x57,0x7a, 0x7,0x32,0x70, 0x7,0x33,0x22,
+  0x5,0x57,0x73, 0x7,0x32,0x64, 0x5,0x57,0x7e, 0x7,0x32,0x74,
+  0x4,0x53,0x47, 0x5,0x50,0x60, 0x7,0x32,0x6b, 0x7,0x32,0x65,
+  0x5,0x57,0x7d, 0x7,0x32,0x76, 0x4,0x53,0x43, 0x7,0x32,0x7b,
+  0x7,0x33,0x24, 0x7,0x32,0x62, 0x7,0x32,0x77, 0x7,0x32,0x63,
+  0x7,0x32,0x78, 0x7,0x32,0x6f, 0x7,0x32,0x7e, 0x7,0x32,0x72,
+  0x7,0x32,0x68, 0x7,0x33,0x23, 0xf,0x57,0x60, 0xf,0x57,0x61,
+  0xf,0x57,0x63, 0xf,0x57,0x64, 0xf,0x57,0x65, 0xf,0x57,0x66,
+  0x7,0x32,0x79, 0x7,0x32,0x6a, 0x7,0x32,0x7a, 0x7,0x32,0x71,
+  0x7,0x32,0x66, 0x7,0x32,0x6c, 0x4,0x58,0x59, 0x5,0x5e,0x29,
+  0x5,0x5e,0x2c, 0x4,0x58,0x55, 0x7,0x3b,0x52, 0x7,0x3b,0x44,
+  0x4,0x58,0x60, 0x4,0x58,0x5c, 0x7,0x3b,0x48, 0x7,0x3b,0x42,
+  0x7,0x3b,0x55, 0x4,0x58,0x5e, 0x7,0x3b,0x46, 0x7,0x28,0x47,
+  0x4,0x58,0x50, 0x5,0x5e,0x31, 0x7,0x3b,0x50, 0x7,0x3b,0x3f,
+  0x4,0x58,0x5d, 0x7,0x3b,0x4f, 0x5,0x5e,0x2b, 0x5,0x5e,0x2f,
+  0x7,0x3b,0x53, 0x4,0x58,0x5a, 0x7,0x3b,0x47, 0x7,0x3b,0x41,
+  0x5,0x5e,0x33, 0x4,0x58,0x53, 0x7,0x3b,0x40, 0x4,0x58,0x51,
+  0x7,0x3b,0x3e, 0x7,0x3b,0x54, 0x5,0x5e,0x2a, 0x7,0x3b,0x3c,
+  0x7,0x3b,0x3b, 0x7,0x3b,0x49, 0x4,0x58,0x5b, 0x5,0x5e,0x2d,
+  0x5,0x5e,0x2e, 0x7,0x3b,0x45, 0xf,0x5c,0x54, 0xf,0x5c,0x55,
+  0xf,0x5c,0x56, 0xf,0x5c,0x57, 0xf,0x5c,0x58, 0xf,0x5c,0x59,
+  0xf,0x5c,0x5a, 0xf,0x5c,0x5c, 0x7,0x3b,0x43, 0x7,0x3b,0x4b,
+  0x7,0x3b,0x4e, 0x7,0x3b,0x51, 0x7,0x3b,0x3d, 0x5,0x5e,0x28,
+  0x7,0x3b,0x4a, 0x7,0x3b,0x4c, 0x5,0x5e,0x30, 0x4,0x5d,0x3d,
+  0x4,0x5d,0x37, 0x7,0x42,0x55, 0x7,0x42,0x61, 0x7,0x42,0x58,
+  0x7,0x42,0x68, 0x5,0x64,0x43, 0x5,0x64,0x44, 0x5,0x5e,0x34,
+  0x4,0x5d,0x38, 0x5,0x64,0x50, 0x7,0x42,0x59, 0x4,0x5d,0x36,
+  0x5,0x64,0x45, 0x4,0x5d,0x35, 0x4,0x5d,0x3a, 0x5,0x64,0x3f,
+  0x5,0x64,0x42, 0x5,0x64,0x4d, 0x4,0x5d,0x34, 0x5,0x64,0x4a,
+  0x7,0x42,0x56, 0x5,0x64,0x3e, 0x5,0x64,0x41, 0x5,0x64,0x4b,
+  0x7,0x42,0x57, 0x7,0x42,0x5c, 0x7,0x42,0x5b, 0x5,0x64,0x40,
+  0x7,0x42,0x6f, 0x7,0x42,0x6b, 0x5,0x64,0x4f, 0x7,0x42,0x6e,
+  0x5,0x64,0x49, 0x5,0x64,0x4c, 0x7,0x42,0x69, 0x5,0x64,0x46,
+  0x7,0x42,0x6c, 0x5,0x64,0x47, 0x7,0x42,0x65, 0x7,0x42,0x62,
+  0x7,0x42,0x5d, 0x7,0x42,0x63, 0x7,0x42,0x54, 0x7,0x42,0x5a,
+  0x7,0x42,0x53, 0x7,0x42,0x5e, 0x7,0x42,0x6a, 0x7,0x42,0x66,
+  0xf,0x60,0x62, 0xf,0x60,0x64, 0xf,0x60,0x65, 0xf,0x60,0x66,
+  0xf,0x60,0x68, 0xf,0x60,0x69, 0xf,0x60,0x6a, 0x7,0x42,0x64,
+  0x4,0x5d,0x3c, 0x7,0x42,0x67, 0xf,0x60,0x67, 0xf,0x60,0x61,
+  0x5,0x64,0x4e, 0x4,0x61,0x28, 0x7,0x49,0x6a, 0x7,0x49,0x59,
+  0x7,0x49,0x60, 0x7,0x49,0x6c, 0x7,0x49,0x5a, 0x7,0x49,0x69,
+  0x7,0x49,0x6d, 0x4,0x61,0x23, 0x5,0x69,0x42, 0x5,0x69,0x40,
+  0x7,0x49,0x62, 0x7,0x49,0x67, 0x7,0x49,0x65, 0x5,0x69,0x44,
+  0x7,0x49,0x5d, 0x7,0x49,0x68, 0x7,0x49,0x64, 0x7,0x49,0x66,
+  0x7,0x4f,0x6b, 0x7,0x49,0x61, 0x7,0x49,0x6e, 0x7,0x49,0x6f,
+  0x7,0x49,0x63, 0x5,0x69,0x45, 0x7,0x49,0x5c, 0x7,0x49,0x5f,
+  0x7,0x49,0x58, 0xf,0x63,0x6b, 0xf,0x63,0x6c, 0xf,0x63,0x6d,
+  0xf,0x63,0x6f, 0xf,0x63,0x70, 0xf,0x63,0x71, 0xf,0x63,0x72,
+  0xf,0x63,0x73, 0xf,0x63,0x74, 0xf,0x63,0x75, 0x7,0x49,0x5b,
+  0x4,0x61,0x22, 0x4,0x61,0x27, 0x7,0x49,0x5e, 0x7,0x42,0x70,
+  0x7,0x4f,0x75, 0x7,0x4f,0x7a, 0x5,0x6d,0x4d, 0x7,0x4f,0x6c,
+  0x4,0x64,0x42, 0x5,0x6d,0x4c, 0x5,0x6d,0x51, 0x7,0x4f,0x78,
+  0x7,0x4f,0x70, 0x5,0x6d,0x50, 0x7,0x4f,0x74, 0x5,0x6d,0x52,
+  0x5,0x6d,0x53, 0x7,0x4f,0x73, 0x5,0x6d,0x4e, 0x7,0x4f,0x72,
+  0x7,0x4f,0x77, 0x7,0x4f,0x71, 0x7,0x4f,0x6d, 0x5,0x6d,0x4f,
+  0x7,0x4f,0x6f, 0x7,0x54,0x77, 0x7,0x4f,0x6e, 0x7,0x4f,0x7b,
+  0xf,0x66,0x2d, 0xf,0x66,0x2e, 0xf,0x66,0x2f, 0xf,0x66,0x30,
+  0xf,0x66,0x31, 0x7,0x4f,0x76, 0x4,0x67,0x2f, 0x4,0x67,0x34,
+  0x7,0x54,0x6b, 0x7,0x54,0x70, 0x5,0x71,0x2f, 0x7,0x54,0x75,
+  0x7,0x54,0x6e, 0x7,0x54,0x71, 0x5,0x71,0x2e, 0x7,0x54,0x73,
+  0x5,0x71,0x2d, 0x5,0x71,0x30, 0x7,0x54,0x6c, 0x4,0x67,0x33,
+  0x7,0x54,0x6f, 0x4,0x67,0x35, 0x4,0x67,0x31, 0x7,0x54,0x72,
+  0x5,0x71,0x32, 0x7,0x54,0x78, 0x7,0x4f,0x79, 0x7,0x54,0x74,
+  0x4,0x67,0x32, 0x7,0x54,0x79, 0x5,0x71,0x31, 0x5,0x71,0x33,
+  0x7,0x54,0x76, 0xf,0x68,0x45, 0xf,0x68,0x46, 0xf,0x68,0x47,
+  0xf,0x68,0x48, 0xf,0x68,0x49, 0x7,0x54,0x6d, 0x5,0x74,0x2e,
+  0x4,0x69,0x3c, 0x5,0x74,0x2c, 0x5,0x74,0x2b, 0x7,0x59,0x23,
+  0x7,0x58,0x7c, 0x5,0x74,0x2d, 0x5,0x74,0x31, 0x5,0x74,0x30,
+  0x7,0x58,0x7a, 0x5,0x74,0x33, 0x5,0x74,0x35, 0x5,0x74,0x32,
+  0x7,0x58,0x79, 0x4,0x69,0x3d, 0x7,0x59,0x26, 0x7,0x59,0x28,
+  0x7,0x59,0x27, 0x7,0x58,0x7e, 0x7,0x59,0x21, 0x5,0x74,0x34,
+  0x5,0x74,0x36, 0x7,0x59,0x24, 0x7,0x59,0x29, 0x5,0x74,0x2f,
+  0x7,0x58,0x7d, 0x7,0x58,0x7b, 0xf,0x69,0x6d, 0xf,0x69,0x6e,
+  0x5,0x76,0x46, 0x4,0x6a,0x76, 0x4,0x6a,0x77, 0x7,0x5c,0x5d,
+  0x5,0x76,0x47, 0x4,0x6a,0x79, 0x7,0x5c,0x5f, 0x7,0x5c,0x5c,
+  0x5,0x76,0x48, 0x7,0x5c,0x62, 0x5,0x76,0x45, 0x7,0x5f,0x4a,
+  0x7,0x5c,0x60, 0x4,0x6a,0x7a, 0x7,0x5c,0x61, 0x5,0x76,0x4a,
+  0x7,0x59,0x22, 0x5,0x76,0x49, 0xf,0x6a,0x70, 0xf,0x6a,0x71,
+  0xf,0x6a,0x72, 0x5,0x78,0x2c, 0x7,0x5f,0x4b, 0x4,0x6b,0x7e,
+  0x5,0x78,0x2b, 0x5,0x78,0x29, 0x7,0x5f,0x4c, 0x5,0x78,0x26,
+  0x4,0x6c,0x22, 0x7,0x5f,0x4d, 0x5,0x78,0x2a, 0x5,0x78,0x28,
+  0x4,0x6c,0x24, 0x5,0x78,0x2d, 0x5,0x78,0x27, 0x5,0x79,0x44,
+  0x4,0x6c,0x7e, 0x5,0x79,0x48, 0x5,0x79,0x4a, 0x4,0x6c,0x21,
+  0x7,0x61,0x40, 0x5,0x79,0x46, 0x7,0x61,0x44, 0x7,0x61,0x43,
+  0x7,0x61,0x45, 0x5,0x79,0x47, 0x5,0x79,0x49, 0x7,0x61,0x41,
+  0x5,0x79,0x45, 0x7,0x62,0x5d, 0x7,0x62,0x5b, 0x7,0x62,0x5e,
+  0x7,0x62,0x5c, 0x7,0x62,0x5f, 0x7,0x63,0x6e, 0x7,0x63,0x6c,
+  0x5,0x7a,0x73, 0x7,0x63,0x6b, 0x7,0x63,0x6f, 0x7,0x62,0x5a,
+  0x7,0x63,0x69, 0x7,0x63,0x71, 0x7,0x63,0x6a, 0x7,0x63,0x70,
+  0x7,0x63,0x6d, 0x7,0x64,0x5c, 0x4,0x6e,0x3a, 0x7,0x64,0x5d,
+  0x5,0x7b,0x47, 0x5,0x7b,0x48, 0x7,0x64,0x5a, 0x7,0x64,0x5b,
+  0x5,0x7b,0x67, 0x7,0x65,0x41, 0x7,0x65,0x42, 0x5,0x7b,0x68,
+  0x4,0x6e,0x50, 0x7,0x65,0x62, 0x7,0x65,0x61, 0xf,0x6d,0x31,
+  0x7,0x66,0x2b, 0x5,0x27,0x65, 0x6,0x2e,0x27, 0x6,0x2e,0x26,
+  0x4,0x2b,0x44, 0x6,0x3b,0x72, 0x5,0x30,0x35, 0x6,0x3b,0x75,
+  0x6,0x3b,0x74, 0xf,0x38,0x41, 0x6,0x4e,0x4e, 0x6,0x4e,0x50,
+  0x5,0x42,0x5f, 0x6,0x57,0x7c, 0x6,0x57,0x7a, 0x6,0x57,0x7d,
+  0x6,0x57,0x7b, 0x5,0x49,0x65, 0x5,0x49,0x63, 0x5,0x49,0x64,
+  0x6,0x62,0x26, 0x6,0x62,0x24, 0x7,0x28,0x48, 0x5,0x50,0x61,
+  0x7,0x28,0x49, 0x7,0x28,0x4a, 0x6,0x62,0x25, 0x5,0x58,0x23,
+  0x5,0x58,0x24, 0x5,0x58,0x22, 0x7,0x33,0x25, 0x7,0x33,0x26,
+  0x5,0x5e,0x37, 0x5,0x5e,0x36, 0xf,0x5c,0x5d, 0x4,0x5d,0x3e,
+  0x4,0x5d,0x3f, 0x7,0x42,0x71, 0x7,0x42,0x73, 0x4,0x5d,0x40,
+  0x7,0x42,0x72, 0x5,0x69,0x46, 0x5,0x6d,0x54, 0x7,0x4f,0x7c,
+  0x7,0x54,0x7a, 0x7,0x59,0x2b, 0x7,0x59,0x2a, 0x7,0x5f,0x4e,
+  0x7,0x65,0x63, 0x4,0x28,0x23, 0x6,0x2e,0x28, 0x4,0x28,0x24,
+  0x6,0x34,0x4f, 0x6,0x34,0x50, 0x5,0x2b,0x41, 0xf,0x2d,0x45,
+  0x5,0x30,0x36, 0x6,0x3b,0x77, 0x6,0x3b,0x76, 0x5,0x30,0x37,
+  0x6,0x44,0x4f, 0x5,0x3c,0x29, 0x6,0x4e,0x53, 0x6,0x4e,0x52,
+  0xf,0x3f,0x2a, 0xf,0x3f,0x2b, 0x6,0x4e,0x51, 0x6,0x58,0x23,
+  0x6,0x58,0x21, 0x4,0x40,0x5f, 0x6,0x58,0x22, 0x6,0x57,0x7e,
+  0xf,0x45,0x3a, 0x4,0x47,0x24, 0x5,0x50,0x62, 0x6,0x62,0x27,
+  0x6,0x62,0x28, 0x4,0x58,0x61, 0x7,0x3b,0x56, 0xf,0x5c,0x5e,
+  0x4,0x5d,0x41, 0x7,0x42,0x74, 0x7,0x49,0x70, 0x7,0x54,0x7b,
+  0x7,0x5c,0x64, 0x5,0x27,0x66, 0x6,0x2e,0x29, 0x6,0x2e,0x2a,
+  0x6,0x2e,0x2b, 0x5,0x2b,0x43, 0x6,0x34,0x51, 0x4,0x2b,0x45,
+  0x4,0x2b,0x47, 0x5,0x2b,0x45, 0x6,0x34,0x53, 0x5,0x2b,0x44,
+  0xf,0x28,0x6b, 0x6,0x34,0x52, 0x5,0x2b,0x42, 0x5,0x2b,0x46,
+  0x6,0x3b,0x7d, 0x5,0x30,0x3c, 0x4,0x2f,0x71, 0x6,0x3c,0x21,
+  0x6,0x3c,0x25, 0x5,0x30,0x3f, 0x6,0x3c,0x26, 0x6,0x3c,0x27,
+  0x4,0x2f,0x70, 0x6,0x3b,0x79, 0x5,0x30,0x40, 0x6,0x3b,0x7b,
+  0x5,0x30,0x38, 0x6,0x3c,0x22, 0x6,0x3b,0x7c, 0x6,0x3c,0x23,
+  0x6,0x3b,0x7e, 0x5,0x30,0x3b, 0x6,0x3b,0x7a, 0x6,0x3b,0x78,
+  0x5,0x30,0x3a, 0xf,0x32,0x50, 0x6,0x3c,0x24, 0x6,0x3c,0x28,
+  0x6,0x3c,0x29, 0xf,0x2d,0x48, 0xf,0x2d,0x49, 0xf,0x32,0x52,
+  0x4,0x35,0x28, 0x5,0x3c,0x32, 0x4,0x35,0x2b, 0x4,0x3a,0x7c,
+  0x5,0x35,0x46, 0x4,0x35,0x29, 0x6,0x44,0x58, 0x5,0x35,0x47,
+  0x5,0x35,0x4a, 0x5,0x35,0x44, 0x5,0x35,0x45, 0x5,0x35,0x43,
+  0x6,0x44,0x59, 0x6,0x44,0x5a, 0x5,0x35,0x42, 0x6,0x44,0x53,
+  0x6,0x44,0x55, 0x6,0x44,0x54, 0x6,0x44,0x51, 0x6,0x44,0x50,
+  0x6,0x44,0x57, 0x6,0x44,0x52, 0xf,0x2d,0x46, 0xf,0x38,0x45,
+  0x5,0x35,0x48, 0x6,0x44,0x56, 0x5,0x35,0x49, 0x5,0x3c,0x31,
+  0x6,0x4e,0x5b, 0x6,0x4e,0x59, 0x5,0x3c,0x2e, 0x6,0x4e,0x57,
+  0x5,0x3c,0x2f, 0x5,0x3c,0x33, 0x4,0x3a,0x7e, 0x6,0x4e,0x58,
+  0x6,0x4e,0x54, 0x4,0x3a,0x7d, 0x6,0x4e,0x56, 0x5,0x3c,0x30,
+  0x5,0x3c,0x2d, 0x5,0x3c,0x2b, 0x5,0x42,0x64, 0x5,0x3c,0x2a,
+  0xf,0x38,0x44, 0xf,0x3f,0x2e, 0x6,0x4e,0x55, 0x6,0x4e,0x5a,
+  0x6,0x4e,0x5c, 0x5,0x3c,0x2c, 0xf,0x38,0x43, 0x5,0x42,0x6a,
+  0x5,0x42,0x62, 0x5,0x42,0x66, 0x4,0x40,0x65, 0x5,0x42,0x6b,
+  0x5,0x42,0x63, 0x5,0x42,0x67, 0x4,0x40,0x63, 0x5,0x42,0x65,
+  0x5,0x42,0x69, 0x6,0x58,0x2f, 0x4,0x40,0x64, 0x6,0x58,0x2a,
+  0x6,0x58,0x28, 0x6,0x58,0x30, 0x5,0x42,0x68, 0x5,0x42,0x60,
+  0x6,0x58,0x24, 0x6,0x58,0x27, 0x6,0x58,0x2d, 0xf,0x3f,0x2c,
+  0xf,0x3f,0x2d, 0xf,0x3f,0x2f, 0xf,0x3f,0x30, 0xf,0x45,0x3b,
+  0x6,0x58,0x26, 0x6,0x58,0x31, 0x6,0x58,0x25, 0x6,0x58,0x29,
+  0x5,0x42,0x61, 0xf,0x45,0x3e, 0x4,0x47,0x30, 0x4,0x47,0x2c,
+  0x6,0x62,0x2d, 0x6,0x62,0x33, 0x4,0x47,0x29, 0x5,0x49,0x66,
+  0x5,0x49,0x69, 0x4,0x47,0x28, 0x5,0x49,0x68, 0x5,0x3c,0x34,
+  0x6,0x62,0x34, 0x5,0x49,0x6a, 0x6,0x62,0x2b, 0x6,0x62,0x29,
+  0x6,0x62,0x2a, 0x6,0x62,0x32, 0x6,0x62,0x31, 0x5,0x49,0x67,
+  0x6,0x62,0x2f, 0x5,0x49,0x6b, 0x6,0x62,0x30, 0x6,0x62,0x2c,
+  0x4,0x47,0x33, 0x6,0x62,0x35, 0x6,0x62,0x2e, 0xf,0x4c,0x34,
+  0xf,0x4c,0x36, 0xf,0x4c,0x37, 0x4,0x47,0x2f, 0xf,0x45,0x3c,
+  0xf,0x45,0x3f, 0x5,0x50,0x66, 0x7,0x28,0x54, 0x4,0x4d,0x41,
+  0x5,0x50,0x69, 0x7,0x28,0x57, 0x4,0x47,0x32, 0x7,0x28,0x56,
+  0x5,0x50,0x65, 0x4,0x4d,0x38, 0x7,0x28,0x55, 0x7,0x33,0x28,
+  0x5,0x50,0x67, 0x7,0x28,0x5a, 0x7,0x28,0x4b, 0x4,0x4d,0x45,
+  0x4,0x4d,0x3b, 0x4,0x4d,0x3d, 0x7,0x28,0x53, 0x4,0x4d,0x44,
+  0x4,0x4d,0x43, 0x5,0x50,0x63, 0x7,0x28,0x58, 0x7,0x28,0x52,
+  0x7,0x28,0x4c, 0x5,0x50,0x64, 0x7,0x28,0x4f, 0x5,0x50,0x68,
+  0x7,0x28,0x51, 0x7,0x28,0x50, 0x7,0x28,0x4d, 0xf,0x4c,0x35,
+  0xf,0x52,0x2d, 0x7,0x28,0x4e, 0x7,0x28,0x59, 0x5,0x58,0x2c,
+  0x5,0x58,0x2b, 0x7,0x33,0x2b, 0x5,0x58,0x27, 0x5,0x58,0x2a,
+  0x7,0x33,0x27, 0x4,0x53,0x51, 0x7,0x33,0x29, 0x4,0x53,0x54,
+  0x7,0x3b,0x62, 0x5,0x58,0x29, 0x5,0x58,0x28, 0x7,0x33,0x2a,
+  0x4,0x53,0x4e, 0x7,0x33,0x2c, 0x7,0x33,0x2f, 0x4,0x53,0x4d,
+  0x5,0x58,0x25, 0x7,0x33,0x30, 0x5,0x58,0x26, 0x7,0x33,0x2e,
+  0xf,0x52,0x2c, 0x7,0x33,0x2d, 0x5,0x5e,0x3e, 0x5,0x5e,0x3f,
+  0x7,0x3b,0x57, 0x5,0x5e,0x3b, 0x7,0x3b,0x5d, 0x7,0x3b,0x64,
+  0x4,0x58,0x66, 0x5,0x5e,0x38, 0x5,0x5e,0x39, 0x5,0x5e,0x3d,
+  0x5,0x5e,0x3c, 0x7,0x3b,0x5f, 0x7,0x3b,0x5b, 0x7,0x3b,0x63,
+  0x7,0x42,0x7b, 0x7,0x3b,0x5c, 0x7,0x28,0x5b, 0x7,0x3b,0x5e,
+  0x7,0x3b,0x60, 0x5,0x5e,0x40, 0x7,0x3b,0x58, 0x7,0x3b,0x5a,
+  0x5,0x5e,0x3a, 0xf,0x57,0x67, 0xf,0x57,0x68, 0xf,0x57,0x69,
+  0xf,0x57,0x6a, 0x7,0x42,0x75, 0x4,0x5d,0x45, 0x7,0x42,0x7c,
+  0x7,0x42,0x7e, 0x5,0x64,0x5b, 0x5,0x64,0x57, 0x7,0x42,0x7d,
+  0x4,0x5d,0x4b, 0x5,0x64,0x54, 0x5,0x64,0x55, 0x5,0x64,0x5f,
+  0x4,0x5d,0x4d, 0x4,0x5d,0x42, 0x7,0x42,0x7a, 0x5,0x64,0x53,
+  0x4,0x5d,0x47, 0x4,0x5d,0x4c, 0x5,0x64,0x5d, 0x7,0x42,0x79,
+  0x7,0x42,0x77, 0x5,0x64,0x51, 0x4,0x5d,0x43, 0x5,0x5e,0x42,
+  0x5,0x64,0x52, 0x7,0x42,0x78, 0x7,0x43,0x23, 0x7,0x42,0x76,
+  0x5,0x64,0x59, 0x5,0x64,0x5a, 0x5,0x5e,0x41, 0x5,0x64,0x5c,
+  0x5,0x64,0x5e, 0x5,0x64,0x58, 0xf,0x5c,0x60, 0x7,0x49,0x76,
+  0x5,0x69,0x49, 0x5,0x69,0x4a, 0x4,0x61,0x29, 0x7,0x49,0x7b,
+  0x7,0x49,0x7c, 0x5,0x69,0x47, 0x5,0x69,0x48, 0x7,0x49,0x72,
+  0x7,0x49,0x73, 0x7,0x49,0x75, 0x7,0x49,0x79, 0x7,0x49,0x7a,
+  0x7,0x49,0x74, 0x7,0x49,0x78, 0x4,0x61,0x2b, 0x7,0x49,0x77,
+  0x7,0x43,0x21, 0xf,0x60,0x6b, 0xf,0x60,0x6c, 0xf,0x63,0x76,
+  0x7,0x4f,0x7d, 0x5,0x6d,0x58, 0x7,0x50,0x26, 0x5,0x6d,0x5b,
+  0x5,0x71,0x34, 0x5,0x6d,0x55, 0x4,0x64,0x45, 0x7,0x50,0x23,
+  0x5,0x6d,0x56, 0x7,0x50,0x22, 0x7,0x54,0x7c, 0x7,0x4f,0x7e,
+  0x5,0x6d,0x59, 0x7,0x49,0x71, 0x5,0x6d,0x5a, 0x5,0x6d,0x5c,
+  0x7,0x50,0x24, 0xf,0x66,0x34, 0x7,0x50,0x21, 0x5,0x6d,0x5d,
+  0x7,0x55,0x22, 0x7,0x55,0x24, 0x5,0x71,0x36, 0x4,0x67,0x36,
+  0x7,0x55,0x26, 0x7,0x55,0x25, 0x5,0x71,0x35, 0x7,0x54,0x7e,
+  0x7,0x55,0x21, 0x4,0x67,0x37, 0x7,0x55,0x23, 0x7,0x59,0x31,
+  0x7,0x54,0x7d, 0xf,0x66,0x33, 0x4,0x69,0x41, 0x7,0x59,0x2e,
+  0x4,0x69,0x40, 0x4,0x69,0x3f, 0x5,0x74,0x37, 0x7,0x59,0x2c,
+  0x7,0x59,0x2d, 0x7,0x59,0x30, 0x7,0x59,0x2f, 0x5,0x78,0x2e,
+  0xf,0x69,0x6f, 0x7,0x5f,0x51, 0x7,0x5f,0x50, 0x7,0x5f,0x4f,
+  0x5,0x79,0x4b, 0x7,0x61,0x48, 0x7,0x61,0x47, 0x7,0x61,0x46,
+  0x7,0x62,0x61, 0x5,0x7a,0x37, 0x7,0x62,0x62, 0x7,0x62,0x60,
+  0x7,0x64,0x5f, 0x7,0x63,0x73, 0x7,0x63,0x72, 0x7,0x64,0x5e,
+  0x5,0x7b,0x7e, 0x7,0x65,0x64, 0x7,0x66,0x2c, 0x5,0x7c,0x4b,
+  0x7,0x66,0x4d, 0x5,0x24,0x76, 0x6,0x2e,0x2c, 0x4,0x2b,0x48,
+  0x5,0x30,0x41, 0x4,0x2f,0x74, 0x6,0x3c,0x2a, 0x6,0x44,0x5b,
+  0xf,0x38,0x46, 0xf,0x3f,0x31, 0xf,0x3f,0x32, 0x6,0x58,0x32,
+  0x4,0x47,0x34, 0x6,0x62,0x36, 0x6,0x62,0x37, 0x6,0x62,0x38,
+  0xf,0x4c,0x38, 0xf,0x4c,0x39, 0x7,0x28,0x5c, 0xf,0x4c,0x3a,
+  0xf,0x52,0x30, 0x7,0x33,0x31, 0x7,0x33,0x32, 0xf,0x52,0x2f,
+  0x7,0x3b,0x65, 0xf,0x60,0x6d, 0xf,0x60,0x6e, 0x5,0x69,0x4b,
+  0x7,0x50,0x27, 0x7,0x55,0x27, 0x5,0x27,0x67, 0x6,0x2e,0x2d,
+  0x4,0x2f,0x77, 0x5,0x30,0x42, 0xf,0x32,0x53, 0x5,0x35,0x4d,
+  0x5,0x35,0x4e, 0x6,0x44,0x5c, 0x6,0x44,0x5d, 0x5,0x35,0x50,
+  0x5,0x35,0x4b, 0xf,0x38,0x47, 0xf,0x38,0x49, 0xf,0x38,0x4b,
+  0x4,0x35,0x32, 0x4,0x35,0x36, 0x5,0x35,0x4c, 0x5,0x35,0x4f,
+  0x6,0x4e,0x5f, 0x4,0x3b,0x25, 0x6,0x4e,0x62, 0x6,0x4e,0x61,
+  0x5,0x3c,0x36, 0x6,0x4e,0x5e, 0x4,0x3b,0x24, 0x6,0x4e,0x5d,
+  0x6,0x58,0x36, 0x5,0x42,0x6d, 0x5,0x42,0x6f, 0x5,0x42,0x6e,
+  0x6,0x58,0x33, 0x6,0x58,0x37, 0x5,0x42,0x70, 0xf,0x45,0x40,
+  0xf,0x45,0x41, 0xf,0x45,0x42, 0x6,0x58,0x35, 0x6,0x62,0x39,
+  0x5,0x49,0x71, 0x5,0x49,0x6e, 0x5,0x49,0x72, 0x4,0x47,0x37,
+  0x6,0x62,0x3a, 0xf,0x4c,0x3b, 0xf,0x4c,0x3c, 0x5,0x49,0x6f,
+  0x6,0x62,0x3b, 0x5,0x49,0x70, 0x4,0x4d,0x49, 0x7,0x28,0x5f,
+  0x5,0x50,0x6c, 0x4,0x4d,0x4b, 0x5,0x50,0x6b, 0x7,0x28,0x63,
+  0x5,0x50,0x6d, 0x6,0x58,0x34, 0x7,0x28,0x62, 0x5,0x50,0x6a,
+  0x5,0x50,0x6e, 0xf,0x52,0x31, 0x7,0x28,0x60, 0x7,0x28,0x5e,
+  0x7,0x28,0x5d, 0x7,0x28,0x61, 0x5,0x58,0x30, 0x5,0x58,0x2f,
+  0x5,0x58,0x2e, 0x4,0x53,0x57, 0x7,0x33,0x34, 0x5,0x58,0x34,
+  0x7,0x3b,0x67, 0x4,0x53,0x58, 0x4,0x53,0x5e, 0x4,0x53,0x5d,
+  0x5,0x58,0x31, 0x5,0x58,0x35, 0x7,0x33,0x33, 0x5,0x58,0x2d,
+  0x5,0x58,0x33, 0xf,0x57,0x6b, 0xf,0x57,0x6c, 0xf,0x57,0x6d,
+  0x7,0x3b,0x66, 0x5,0x64,0x60, 0x5,0x5e,0x45, 0x5,0x5e,0x44,
+  0x7,0x3b,0x6a, 0x7,0x3b,0x69, 0x7,0x3b,0x6b, 0x7,0x3b,0x68,
+  0xf,0x5c,0x61, 0xf,0x5c,0x62, 0x5,0x64,0x62, 0x4,0x5d,0x51,
+  0x4,0x5d,0x4f, 0x7,0x43,0x24, 0x5,0x64,0x61, 0xf,0x60,0x6f,
+  0xf,0x60,0x70, 0xf,0x60,0x71, 0x7,0x43,0x25, 0x7,0x49,0x7d,
+  0x7,0x49,0x7e, 0x5,0x6d,0x5f, 0x7,0x50,0x29, 0x7,0x50,0x28,
+  0xf,0x66,0x35, 0x5,0x6d,0x5e, 0xf,0x68,0x4b, 0xf,0x68,0x4c,
+  0x7,0x55,0x28, 0x4,0x69,0x43, 0x5,0x74,0x39, 0x4,0x69,0x42,
+  0xf,0x69,0x70, 0xf,0x69,0x71, 0x5,0x78,0x2f, 0x7,0x5f,0x53,
+  0xf,0x6b,0x64, 0x7,0x5f,0x52, 0x5,0x79,0x4d, 0x5,0x79,0x4c,
+  0x7,0x61,0x49, 0x4,0x6d,0x21, 0x5,0x7a,0x74, 0x4,0x6e,0x3b,
+  0x5,0x7c,0x44, 0x7,0x66,0x54, 0x6,0x2e,0x2e, 0x6,0x2e,0x2f,
+  0x6,0x34,0x54, 0x5,0x2b,0x48, 0x4,0x2f,0x78, 0x6,0x3c,0x2c,
+  0x4,0x2f,0x79, 0x6,0x3c,0x2b, 0x6,0x44,0x67, 0x4,0x35,0x3b,
+  0x5,0x35,0x53, 0x5,0x35,0x52, 0x6,0x44,0x5f, 0x6,0x44,0x63,
+  0x4,0x35,0x37, 0x6,0x44,0x64, 0x5,0x35,0x51, 0x6,0x44,0x60,
+  0xf,0x38,0x4d, 0xf,0x38,0x4e, 0xf,0x38,0x4f, 0x4,0x35,0x3c,
+  0x6,0x44,0x66, 0x6,0x44,0x5e, 0x6,0x44,0x62, 0x6,0x44,0x65,
+  0x6,0x44,0x61, 0x5,0x3c,0x37, 0x4,0x3b,0x26, 0x6,0x4e,0x64,
+  0x6,0x4e,0x67, 0x5,0x3c,0x38, 0x6,0x4e,0x63, 0x6,0x4e,0x66,
+  0x6,0x4e,0x69, 0x6,0x4e,0x65, 0x4,0x3b,0x27, 0x4,0x3b,0x28,
+  0x6,0x4e,0x68, 0xf,0x3f,0x33, 0x5,0x42,0x73, 0x5,0x42,0x71,
+  0x5,0x42,0x72, 0x6,0x58,0x38, 0x6,0x62,0x3e, 0x5,0x49,0x75,
+  0x4,0x47,0x39, 0x6,0x62,0x40, 0x5,0x49,0x73, 0x5,0x49,0x74,
+  0x6,0x62,0x3d, 0x6,0x62,0x41, 0x6,0x62,0x3c, 0x6,0x62,0x3f,
+  0x7,0x28,0x66, 0x5,0x50,0x75, 0x7,0x28,0x67, 0x5,0x50,0x74,
+  0x5,0x50,0x70, 0x5,0x50,0x6f, 0x4,0x4d,0x50, 0x4,0x4d,0x52,
+  0x4,0x4d,0x4d, 0x7,0x28,0x69, 0x4,0x4d,0x54, 0x5,0x50,0x72,
+  0x7,0x28,0x68, 0x7,0x28,0x6a, 0x5,0x50,0x71, 0x7,0x28,0x64,
+  0x7,0x28,0x65, 0x5,0x50,0x73, 0x7,0x33,0x38, 0x7,0x33,0x37,
+  0x4,0x53,0x5f, 0x5,0x58,0x36, 0x4,0x53,0x63, 0x5,0x58,0x39,
+  0x5,0x58,0x3b, 0x4,0x53,0x60, 0x7,0x33,0x36, 0x7,0x33,0x35,
+  0x5,0x58,0x37, 0x5,0x58,0x38, 0x5,0x58,0x3a, 0x7,0x33,0x39,
+  0x5,0x5e,0x46, 0x7,0x3b,0x6d, 0x7,0x3b,0x73, 0x7,0x3b,0x6c,
+  0x5,0x5e,0x4a, 0x5,0x5e,0x49, 0x7,0x3b,0x6e, 0x7,0x33,0x3a,
+  0x5,0x5e,0x48, 0x7,0x3b,0x6f, 0x7,0x3b,0x70, 0x7,0x3b,0x71,
+  0x4,0x58,0x6c, 0x7,0x3b,0x74, 0x7,0x3b,0x72, 0x5,0x5e,0x47,
+  0x7,0x43,0x27, 0x7,0x43,0x28, 0x4,0x5d,0x52, 0x7,0x43,0x26,
+  0x7,0x43,0x29, 0x4,0x61,0x35, 0x5,0x69,0x4c, 0x4,0x61,0x32,
+  0x4,0x61,0x33, 0x7,0x4a,0x21, 0x7,0x4a,0x22, 0x7,0x4a,0x23,
+  0x7,0x4a,0x24, 0x4,0x61,0x36, 0x7,0x50,0x2a, 0x5,0x71,0x37,
+  0x7,0x55,0x29, 0x5,0x74,0x3a, 0x4,0x69,0x44, 0x7,0x5c,0x65,
+  0x5,0x78,0x30, 0x7,0x62,0x63, 0x4,0x6d,0x60, 0x7,0x64,0x60,
+  0x7,0x64,0x61, 0x5,0x7b,0x69, 0x7,0x65,0x43, 0x5,0x23,0x27,
+  0x5,0x23,0x28, 0x6,0x2e,0x30, 0x6,0x3c,0x33, 0x4,0x30,0x21,
+  0x4,0x2f,0x7b, 0x4,0x2f,0x7a, 0x4,0x30,0x22, 0x5,0x30,0x43,
+  0x6,0x3c,0x30, 0x6,0x3c,0x31, 0x6,0x3c,0x2f, 0x6,0x3c,0x32,
+  0x6,0x3c,0x2e, 0x4,0x35,0x40, 0x6,0x44,0x6a, 0x6,0x44,0x73,
+  0x4,0x35,0x3e, 0x6,0x44,0x6f, 0x5,0x35,0x5c, 0x5,0x35,0x59,
+  0x6,0x44,0x71, 0x4,0x35,0x42, 0x5,0x35,0x54, 0x4,0x35,0x46,
+  0x6,0x44,0x79, 0x5,0x35,0x55, 0x6,0x44,0x77, 0x6,0x44,0x6b,
+  0x6,0x44,0x78, 0x5,0x35,0x58, 0x6,0x44,0x74, 0x6,0x44,0x75,
+  0x6,0x44,0x6e, 0x6,0x44,0x7a, 0xf,0x38,0x50, 0xf,0x38,0x51,
+  0xf,0x38,0x53, 0xf,0x38,0x54, 0xf,0x38,0x55, 0xf,0x38,0x56,
+  0x6,0x44,0x72, 0x6,0x44,0x69, 0x6,0x44,0x68, 0x6,0x44,0x76,
+  0x6,0x44,0x6c, 0x5,0x35,0x5a, 0x6,0x4e,0x74, 0x4,0x3b,0x32,
+  0x4,0x3b,0x2e, 0x5,0x3c,0x3b, 0x6,0x4e,0x6f, 0x6,0x4e,0x6e,
+  0x6,0x4e,0x71, 0x6,0x4e,0x6a, 0x4,0x3b,0x2d, 0x6,0x4e,0x78,
+  0x4,0x3b,0x38, 0x4,0x3b,0x39, 0x5,0x3c,0x3c, 0x6,0x4e,0x6d,
+  0x6,0x4e,0x76, 0x6,0x4e,0x70, 0x6,0x4e,0x77, 0x4,0x3b,0x37,
+  0x5,0x3c,0x39, 0x5,0x3c,0x3a, 0xf,0x3f,0x34, 0xf,0x3f,0x35,
+  0xf,0x3f,0x36, 0xf,0x3f,0x37, 0xf,0x3f,0x38, 0xf,0x3f,0x39,
+  0xf,0x3f,0x3a, 0xf,0x3f,0x3c, 0x6,0x4e,0x72, 0x6,0x4e,0x75,
+  0x6,0x4e,0x6c, 0x6,0x4e,0x79, 0x6,0x4e,0x73, 0x5,0x42,0x75,
+  0x4,0x40,0x68, 0x4,0x40,0x6a, 0x6,0x58,0x46, 0x5,0x42,0x76,
+  0x5,0x3c,0x3d, 0x5,0x42,0x79, 0x4,0x40,0x71, 0x4,0x40,0x70,
+  0x6,0x58,0x40, 0x6,0x58,0x4b, 0x6,0x58,0x3d, 0x6,0x58,0x49,
+  0x4,0x40,0x69, 0x4,0x40,0x6b, 0x5,0x42,0x7c, 0x5,0x42,0x74,
+  0x4,0x40,0x73, 0x6,0x58,0x43, 0x6,0x58,0x3c, 0x6,0x58,0x47,
+  0x6,0x58,0x42, 0x6,0x58,0x3f, 0x4,0x40,0x72, 0x5,0x42,0x7a,
+  0x6,0x58,0x48, 0x5,0x42,0x78, 0x5,0x42,0x77, 0x6,0x58,0x44,
+  0xf,0x45,0x43, 0xf,0x45,0x45, 0xf,0x45,0x46, 0x6,0x58,0x4a,
+  0x5,0x42,0x7b, 0x6,0x58,0x39, 0x6,0x58,0x3b, 0x4,0x40,0x6f,
+  0x6,0x58,0x3a, 0x6,0x58,0x45, 0x6,0x58,0x3e, 0x6,0x62,0x4e,
+  0x4,0x47,0x3f, 0x5,0x49,0x7a, 0x4,0x47,0x3b, 0x5,0x49,0x78,
+  0x5,0x49,0x7b, 0x4,0x47,0x3e, 0x4,0x47,0x48, 0x6,0x62,0x42,
+  0x6,0x62,0x4c, 0x4,0x47,0x41, 0x6,0x62,0x53, 0x4,0x47,0x44,
+  0x6,0x62,0x4f, 0x4,0x47,0x47, 0x6,0x62,0x46, 0x5,0x49,0x79,
+  0x6,0x62,0x51, 0x6,0x62,0x45, 0x4,0x47,0x49, 0x6,0x62,0x50,
+  0x6,0x62,0x44, 0x5,0x49,0x76, 0x5,0x49,0x77, 0xf,0x4c,0x3d,
+  0xf,0x4c,0x3e, 0xf,0x4c,0x3f, 0xf,0x4c,0x40, 0xf,0x4c,0x42,
+  0xf,0x4c,0x43, 0xf,0x4c,0x44, 0xf,0x4c,0x45, 0x6,0x62,0x48,
+  0x4,0x47,0x4b, 0x6,0x62,0x4a, 0x5,0x42,0x7d, 0x6,0x62,0x4b,
+  0x6,0x62,0x4d, 0x6,0x62,0x43, 0x6,0x62,0x52, 0x6,0x62,0x49,
+  0x7,0x29,0x21, 0x5,0x51,0x2a, 0x7,0x28,0x6b, 0x5,0x50,0x7a,
+  0x5,0x51,0x22, 0x7,0x28,0x71, 0x7,0x28,0x74, 0x7,0x29,0x22,
+  0x7,0x28,0x7c, 0x7,0x28,0x70, 0x5,0x51,0x27, 0x4,0x4d,0x57,
+  0x5,0x51,0x29, 0x5,0x51,0x23, 0x5,0x50,0x7b, 0x5,0x50,0x7e,
+  0x7,0x28,0x78, 0x5,0x51,0x24, 0x4,0x4d,0x5d, 0x5,0x51,0x26,
+  0x4,0x4d,0x62, 0x7,0x29,0x24, 0x7,0x28,0x77, 0x7,0x28,0x6f,
+  0x5,0x50,0x78, 0x5,0x50,0x7c, 0x7,0x28,0x7d, 0x7,0x28,0x6d,
+  0x5,0x51,0x25, 0x5,0x50,0x7d, 0x5,0x50,0x77, 0x5,0x50,0x79,
+  0x5,0x50,0x76, 0xf,0x52,0x32, 0xf,0x52,0x33, 0xf,0x52,0x34,
+  0xf,0x52,0x35, 0xf,0x52,0x37, 0xf,0x52,0x39, 0xf,0x52,0x3a,
+  0x7,0x28,0x76, 0x7,0x28,0x75, 0x7,0x28,0x6c, 0x7,0x28,0x72,
+  0xf,0x52,0x38, 0x5,0x51,0x21, 0x7,0x28,0x7b, 0x7,0x28,0x6e,
+  0x5,0x51,0x28, 0x7,0x29,0x23, 0x7,0x28,0x7e, 0x7,0x28,0x7a,
+  0x7,0x28,0x73, 0x7,0x33,0x46, 0x5,0x58,0x40, 0x4,0x53,0x71,
+  0x7,0x33,0x52, 0x4,0x53,0x68, 0x4,0x53,0x65, 0x4,0x53,0x6c,
+  0x7,0x33,0x49, 0x7,0x33,0x51, 0x7,0x33,0x43, 0x5,0x58,0x3d,
+  0x7,0x33,0x42, 0x5,0x58,0x3c, 0x7,0x33,0x3c, 0x4,0x53,0x70,
+  0x4,0x53,0x67, 0x7,0x33,0x45, 0x4,0x53,0x6f, 0x7,0x33,0x3d,
+  0x4,0x53,0x6e, 0x7,0x33,0x47, 0x7,0x33,0x4e, 0x4,0x53,0x66,
+  0x7,0x33,0x50, 0x7,0x33,0x3e, 0x4,0x53,0x69, 0x7,0x33,0x3b,
+  0x7,0x33,0x53, 0x7,0x33,0x40, 0x7,0x33,0x3f, 0x7,0x33,0x48,
+  0x7,0x33,0x4a, 0x5,0x58,0x3f, 0x7,0x33,0x4c, 0x4,0x53,0x6d,
+  0x7,0x33,0x44, 0x5,0x58,0x3e, 0xf,0x57,0x6e, 0xf,0x57,0x6f,
+  0xf,0x57,0x70, 0xf,0x57,0x71, 0xf,0x57,0x72, 0xf,0x57,0x73,
+  0xf,0x57,0x74, 0xf,0x57,0x75, 0xf,0x57,0x76, 0xf,0x57,0x77,
+  0xf,0x57,0x78, 0x7,0x33,0x54, 0x7,0x33,0x41, 0x7,0x33,0x4b,
+  0x4,0x58,0x6e, 0x5,0x5e,0x52, 0x5,0x5e,0x51, 0x7,0x3b,0x7d,
+  0x4,0x58,0x6f, 0x5,0x5e,0x54, 0x4,0x58,0x71, 0x7,0x3b,0x79,
+  0x4,0x58,0x6d, 0x5,0x5e,0x4d, 0x5,0x5e,0x53, 0x5,0x5e,0x4e,
+  0x7,0x3b,0x76, 0x7,0x3c,0x25, 0x4,0x58,0x72, 0x7,0x43,0x2a,
+  0x5,0x5e,0x4f, 0x7,0x3c,0x21, 0x7,0x3b,0x77, 0x5,0x5e,0x56,
+  0x7,0x3c,0x27, 0x7,0x3b,0x7c, 0x7,0x3b,0x78, 0x5,0x5e,0x50,
+  0x4,0x58,0x74, 0x7,0x3b,0x7b, 0x7,0x3b,0x7e, 0x7,0x3c,0x22,
+  0x7,0x3c,0x23, 0x4,0x58,0x73, 0x5,0x5e,0x4b, 0x7,0x3c,0x26,
+  0x5,0x5e,0x4c, 0x7,0x3c,0x24, 0x7,0x3b,0x75, 0xf,0x5c,0x63,
+  0xf,0x5c,0x64, 0xf,0x5c,0x65, 0xf,0x5c,0x66, 0xf,0x5c,0x67,
+  0xf,0x5c,0x68, 0xf,0x5c,0x69, 0xf,0x5c,0x6a, 0xf,0x5c,0x6b,
+  0x7,0x3c,0x28, 0x7,0x3c,0x29, 0x7,0x3b,0x7a, 0x4,0x5d,0x5e,
+  0x4,0x5d,0x56, 0x7,0x43,0x37, 0x4,0x5d,0x58, 0x7,0x43,0x35,
+  0x5,0x64,0x68, 0x7,0x43,0x3a, 0x7,0x43,0x2b, 0x4,0x5d,0x60,
+  0x5,0x64,0x66, 0x5,0x58,0x41, 0x4,0x5d,0x59, 0x5,0x64,0x67,
+  0x7,0x43,0x38, 0x7,0x43,0x32, 0x5,0x64,0x64, 0x4,0x5d,0x53,
+  0x7,0x43,0x3b, 0x4,0x5d,0x55, 0x5,0x64,0x65, 0x4,0x5d,0x5d,
+  0x7,0x43,0x39, 0x7,0x43,0x2f, 0x7,0x43,0x33, 0x7,0x4a,0x2a,
+  0x7,0x43,0x30, 0x4,0x5d,0x5c, 0x7,0x43,0x34, 0x7,0x43,0x31,
+  0x7,0x43,0x3c, 0x7,0x43,0x2c, 0x7,0x43,0x2d, 0xf,0x60,0x72,
+  0xf,0x60,0x75, 0x7,0x43,0x36, 0x4,0x5d,0x5f, 0x7,0x43,0x2e,
+  0x5,0x69,0x4d, 0x5,0x69,0x4f, 0x7,0x4a,0x2f, 0x4,0x61,0x3e,
+  0x7,0x4a,0x2c, 0x7,0x4a,0x2e, 0x4,0x61,0x43, 0x4,0x61,0x39,
+  0x5,0x69,0x50, 0x4,0x61,0x41, 0x7,0x4a,0x34, 0x4,0x61,0x42,
+  0x5,0x69,0x4e, 0x4,0x61,0x3f, 0x7,0x4a,0x26, 0x7,0x4a,0x29,
+  0x7,0x43,0x3d, 0x7,0x4a,0x28, 0x7,0x4a,0x35, 0x7,0x50,0x33,
+  0x7,0x4a,0x33, 0x4,0x61,0x3c, 0x5,0x6d,0x60, 0x7,0x4a,0x27,
+  0xf,0x63,0x78, 0xf,0x63,0x79, 0xf,0x63,0x7a, 0x4,0x61,0x44,
+  0x7,0x4a,0x2b, 0x7,0x50,0x35, 0x7,0x4a,0x30, 0x7,0x4a,0x31,
+  0x7,0x4a,0x2d, 0x7,0x4a,0x32, 0x4,0x61,0x38, 0xf,0x60,0x74,
+  0x4,0x64,0x4a, 0x4,0x64,0x4b, 0x5,0x6d,0x62, 0x5,0x6d,0x61,
+  0x7,0x50,0x2d, 0x5,0x6d,0x63, 0x7,0x50,0x2f, 0x4,0x64,0x49,
+  0x7,0x50,0x2b, 0x5,0x69,0x53, 0x7,0x50,0x32, 0x7,0x50,0x2e,
+  0x7,0x50,0x34, 0x7,0x50,0x36, 0x7,0x50,0x2c, 0x7,0x50,0x30,
+  0xf,0x66,0x36, 0xf,0x66,0x37, 0xf,0x66,0x38, 0xf,0x66,0x39,
+  0x7,0x50,0x38, 0x7,0x50,0x37, 0x7,0x50,0x39, 0x7,0x55,0x2a,
+  0x4,0x67,0x42, 0x7,0x55,0x34, 0x7,0x55,0x2d, 0x7,0x55,0x33,
+  0x4,0x67,0x38, 0x7,0x55,0x2e, 0x5,0x71,0x3d, 0x7,0x55,0x2c,
+  0x7,0x55,0x2f, 0x4,0x67,0x3c, 0x5,0x71,0x3a, 0x5,0x71,0x39,
+  0x4,0x67,0x43, 0x7,0x59,0x3b, 0x7,0x59,0x35, 0x4,0x67,0x3a,
+  0x5,0x71,0x3c, 0x5,0x71,0x3b, 0x7,0x55,0x31, 0x7,0x55,0x2b,
+  0x7,0x55,0x30, 0x5,0x71,0x38, 0x7,0x55,0x35, 0x5,0x74,0x3b,
+  0x5,0x74,0x3d, 0x5,0x74,0x40, 0x5,0x76,0x4b, 0x4,0x69,0x47,
+  0x7,0x59,0x39, 0x4,0x69,0x4a, 0x5,0x74,0x3f, 0x4,0x69,0x49,
+  0x5,0x74,0x3e, 0x7,0x59,0x37, 0x7,0x59,0x40, 0x7,0x55,0x36,
+  0x5,0x74,0x3c, 0x7,0x59,0x36, 0x7,0x59,0x3a, 0x7,0x59,0x3f,
+  0x4,0x69,0x46, 0x7,0x59,0x3e, 0xf,0x69,0x72, 0xf,0x69,0x73,
+  0xf,0x69,0x74, 0x7,0x59,0x3c, 0x7,0x59,0x3d, 0x4,0x6a,0x7d,
+  0x4,0x6a,0x7e, 0x7,0x5c,0x66, 0x5,0x76,0x4e, 0x5,0x76,0x4d,
+  0x5,0x78,0x31, 0x7,0x5c,0x68, 0x7,0x5c,0x69, 0x7,0x5c,0x6a,
+  0xf,0x6a,0x74, 0xf,0x6a,0x75, 0x7,0x5c,0x67, 0x7,0x59,0x42,
+  0x7,0x5f,0x57, 0x7,0x5f,0x58, 0x7,0x5f,0x55, 0x4,0x6c,0x27,
+  0x7,0x5f,0x56, 0x7,0x5f,0x5a, 0xf,0x6b,0x65, 0xf,0x6b,0x66,
+  0x7,0x5f,0x54, 0x7,0x5f,0x59, 0x7,0x5f,0x5b, 0x4,0x6d,0x23,
+  0x7,0x61,0x4b, 0x5,0x79,0x4e, 0x7,0x61,0x4c, 0xf,0x6c,0x3a,
+  0xf,0x6c,0x3b, 0x7,0x61,0x4a, 0x5,0x7a,0x75, 0x7,0x62,0x65,
+  0x7,0x62,0x64, 0x5,0x7a,0x39, 0x4,0x6d,0x7e, 0x7,0x63,0x74,
+  0x7,0x64,0x62, 0x4,0x6e,0x3c, 0x7,0x64,0x44, 0x7,0x65,0x44,
+  0x7,0x66,0x50, 0x5,0x24,0x77, 0x4,0x30,0x24, 0x5,0x30,0x44,
+  0x5,0x30,0x45, 0x4,0x35,0x48, 0x4,0x35,0x49, 0x4,0x35,0x47,
+  0x6,0x44,0x7b, 0x4,0x3b,0x3a, 0x5,0x42,0x7e, 0x5,0x43,0x21,
+  0x6,0x58,0x4c, 0x4,0x47,0x4d, 0x5,0x51,0x2c, 0x4,0x4d,0x63,
+  0x5,0x51,0x2d, 0x5,0x51,0x2b, 0x5,0x58,0x42, 0x7,0x33,0x56,
+  0x7,0x33,0x55, 0x7,0x3c,0x2a, 0x5,0x5e,0x57, 0x7,0x43,0x3e,
+  0x7,0x4a,0x36, 0x7,0x4a,0x39, 0x5,0x69,0x54, 0x7,0x4a,0x37,
+  0x5,0x69,0x55, 0x7,0x4a,0x38, 0x7,0x50,0x3a, 0x7,0x4a,0x3a,
+  0x5,0x71,0x3e, 0x5,0x7a,0x76, 0x7,0x65,0x77, 0x6,0x34,0x55,
+  0x6,0x3c,0x35, 0x6,0x3c,0x34, 0xf,0x38,0x57, 0x4,0x3b,0x3b,
+  0x5,0x3c,0x3e, 0x6,0x4e,0x7b, 0xf,0x3f,0x3d, 0x5,0x43,0x22,
+  0x4,0x40,0x75, 0x6,0x5b,0x5f, 0x4,0x47,0x50, 0x6,0x62,0x54,
+  0x4,0x47,0x51, 0x7,0x29,0x28, 0x7,0x29,0x27, 0x7,0x29,0x25,
+  0x5,0x51,0x2f, 0x5,0x51,0x2e, 0x7,0x29,0x26, 0xf,0x52,0x3b,
+  0x5,0x58,0x43, 0x4,0x53,0x74, 0x7,0x33,0x57, 0x5,0x58,0x44,
+  0x7,0x2c,0x56, 0x5,0x5e,0x5a, 0x7,0x3c,0x2d, 0x5,0x5e,0x58,
+  0x7,0x3c,0x2c, 0x5,0x5e,0x59, 0x7,0x3c,0x2b, 0x5,0x64,0x69,
+  0x4,0x5d,0x63, 0x7,0x43,0x40, 0x4,0x5d,0x62, 0x5,0x5e,0x5b,
+  0x7,0x4a,0x3c, 0x5,0x69,0x57, 0x7,0x4a,0x3d, 0x7,0x43,0x41,
+  0x7,0x43,0x42, 0x5,0x69,0x56, 0x5,0x6d,0x66, 0x5,0x6d,0x65,
+  0x5,0x6d,0x67, 0xf,0x66,0x3a, 0x5,0x6d,0x64, 0xf,0x63,0x7b,
+  0x5,0x71,0x3f, 0x5,0x74,0x41, 0xf,0x6a,0x76, 0xf,0x6a,0x77,
+  0x5,0x78,0x32, 0x5,0x79,0x4f, 0x5,0x7a,0x77, 0x7,0x65,0x45,
+  0x6,0x25,0x54, 0x5,0x23,0x29, 0x5,0x2b,0x4a, 0x5,0x30,0x48,
+  0x5,0x30,0x47, 0x6,0x3c,0x37, 0x6,0x3c,0x36, 0x6,0x44,0x7e,
+  0x6,0x44,0x7c, 0x5,0x35,0x61, 0x6,0x45,0x21, 0x6,0x44,0x7d,
+  0x4,0x3b,0x3c, 0x6,0x4e,0x7c, 0x4,0x3b,0x3d, 0x5,0x3c,0x40,
+  0x5,0x3c,0x3f, 0x6,0x4e,0x7e, 0x5,0x3c,0x41, 0x6,0x4f,0x23,
+  0x6,0x4e,0x7d, 0xf,0x32,0x55, 0x4,0x40,0x77, 0x5,0x43,0x25,
+  0x4,0x40,0x76, 0x6,0x58,0x4e, 0x6,0x58,0x4f, 0x5,0x43,0x27,
+  0x5,0x43,0x23, 0x5,0x43,0x26, 0x6,0x58,0x4d, 0x6,0x4f,0x22,
+  0x5,0x43,0x24, 0x5,0x43,0x28, 0x6,0x62,0x55, 0x6,0x62,0x56,
+  0x4,0x47,0x53, 0x4,0x47,0x52, 0x6,0x62,0x59, 0x5,0x49,0x7d,
+  0x5,0x49,0x7c, 0x6,0x62,0x5b, 0x6,0x62,0x5a, 0x6,0x62,0x57,
+  0x6,0x62,0x58, 0x5,0x51,0x32, 0x4,0x4d,0x66, 0x7,0x29,0x29,
+  0x7,0x29,0x2b, 0x5,0x51,0x31, 0x5,0x51,0x33, 0x7,0x29,0x2d,
+  0x7,0x29,0x2c, 0x5,0x49,0x7e, 0x5,0x51,0x30, 0x7,0x29,0x2a,
+  0x5,0x4a,0x21, 0x7,0x29,0x2e, 0xf,0x52,0x3c, 0x5,0x58,0x47,
+  0x5,0x58,0x48, 0x5,0x58,0x46, 0x7,0x33,0x59, 0x4,0x53,0x76,
+  0x7,0x33,0x5a, 0x7,0x33,0x5c, 0x7,0x33,0x5b, 0x5,0x58,0x45,
+  0x7,0x33,0x58, 0x5,0x5e,0x5d, 0x5,0x5e,0x5e, 0x5,0x5e,0x5f,
+  0x5,0x5e,0x5c, 0x7,0x3c,0x30, 0x7,0x3c,0x2e, 0x7,0x3c,0x2f,
+  0x4,0x5d,0x65, 0x5,0x64,0x6a, 0x5,0x64,0x6b, 0x7,0x43,0x43,
+  0x7,0x43,0x44, 0x7,0x43,0x45, 0x4,0x61,0x47, 0x5,0x69,0x58,
+  0x5,0x58,0x49, 0x7,0x4a,0x3e, 0x4,0x61,0x49, 0x5,0x6d,0x6b,
+  0x5,0x6d,0x68, 0x7,0x50,0x3b, 0x5,0x6d,0x6a, 0x5,0x6d,0x69,
+  0x4,0x67,0x46, 0x5,0x71,0x40, 0x7,0x55,0x37, 0x7,0x55,0x38,
+  0x7,0x59,0x43, 0x7,0x5c,0x6c, 0x7,0x59,0x44, 0x7,0x59,0x45,
+  0x7,0x5c,0x6d, 0x7,0x5c,0x6e, 0x5,0x74,0x42, 0x7,0x5f,0x5c,
+  0x7,0x61,0x4d, 0x7,0x5f,0x5d, 0x5,0x79,0x50, 0x5,0x7a,0x3a,
+  0x7,0x65,0x46, 0x7,0x66,0x43, 0xf,0x28,0x6c, 0x5,0x2b,0x4b,
+  0x6,0x3c,0x38, 0xf,0x32,0x56, 0x5,0x35,0x64, 0x5,0x35,0x63,
+  0x4,0x35,0x4f, 0x5,0x35,0x62, 0x4,0x35,0x4e, 0x6,0x45,0x25,
+  0x6,0x45,0x23, 0x6,0x4f,0x25, 0x5,0x3c,0x42, 0x5,0x3c,0x46,
+  0x5,0x3c,0x44, 0x5,0x3c,0x48, 0x5,0x3c,0x45, 0x6,0x4f,0x28,
+  0x6,0x4f,0x26, 0x5,0x3c,0x47, 0x5,0x3c,0x43, 0x6,0x4f,0x27,
+  0x6,0x4f,0x24, 0xf,0x3f,0x3e, 0x4,0x40,0x7c, 0x4,0x40,0x7d,
+  0x4,0x40,0x7a, 0x6,0x58,0x52, 0x5,0x43,0x2b, 0x6,0x58,0x51,
+  0x5,0x43,0x2a, 0x4,0x40,0x79, 0x4,0x40,0x7b, 0x6,0x58,0x53,
+  0xf,0x45,0x47, 0x5,0x43,0x29, 0x6,0x62,0x61, 0x6,0x62,0x5c,
+  0x5,0x4a,0x25, 0x5,0x4a,0x23, 0x5,0x4a,0x22, 0x6,0x62,0x5f,
+  0x5,0x4a,0x24, 0x6,0x62,0x5e, 0x6,0x62,0x60, 0xf,0x4c,0x48,
+  0x6,0x62,0x5d, 0x6,0x62,0x62, 0xf,0x4c,0x49, 0x5,0x51,0x35,
+  0x5,0x51,0x34, 0x4,0x4d,0x69, 0x5,0x51,0x37, 0x5,0x51,0x36,
+  0x5,0x51,0x38, 0x4,0x4d,0x6a, 0x7,0x29,0x2f, 0x7,0x29,0x30,
+  0x4,0x4d,0x6b, 0x7,0x29,0x31, 0x7,0x33,0x64, 0x5,0x58,0x4b,
+  0x7,0x33,0x5e, 0x7,0x33,0x60, 0x7,0x33,0x61, 0x4,0x53,0x78,
+  0x5,0x58,0x4a, 0x7,0x33,0x62, 0x5,0x58,0x4c, 0x7,0x33,0x5f,
+  0xf,0x57,0x7a, 0x7,0x33,0x5d, 0x7,0x33,0x63, 0x4,0x58,0x79,
+  0x5,0x5e,0x63, 0x7,0x3c,0x31, 0x5,0x5e,0x62, 0x4,0x58,0x78,
+  0x5,0x5e,0x60, 0x5,0x5e,0x64, 0x5,0x5e,0x61, 0xf,0x5c,0x6c,
+  0x7,0x43,0x46, 0x4,0x5d,0x67, 0x7,0x43,0x47, 0x4,0x5d,0x66,
+  0x5,0x64,0x6c, 0x7,0x4a,0x3f, 0x5,0x64,0x6d, 0x5,0x69,0x5b,
+  0x7,0x4a,0x40, 0x5,0x69,0x5a, 0x7,0x4a,0x43, 0x7,0x50,0x3d,
+  0x7,0x4a,0x42, 0x5,0x69,0x59, 0x5,0x6d,0x6d, 0x5,0x6d,0x6c,
+  0x7,0x50,0x3c, 0x5,0x71,0x42, 0x5,0x6d,0x6e, 0x5,0x71,0x41,
+  0x7,0x55,0x39, 0x7,0x59,0x46, 0x7,0x5c,0x70, 0x7,0x5c,0x6f,
+  0x5,0x7a,0x78, 0x5,0x2b,0x4c, 0x4,0x2b,0x4a, 0x6,0x34,0x56,
+  0xf,0x2d,0x4a, 0x4,0x30,0x26, 0x6,0x3c,0x39, 0x5,0x30,0x49,
+  0x5,0x30,0x4a, 0xf,0x32,0x57, 0xf,0x32,0x58, 0x6,0x3c,0x3a,
+  0x6,0x45,0x2a, 0x6,0x45,0x2c, 0x6,0x45,0x27, 0x6,0x45,0x28,
+  0x6,0x45,0x26, 0x6,0x45,0x2b, 0x5,0x35,0x65, 0xf,0x38,0x59,
+  0xf,0x38,0x5a, 0xf,0x38,0x5b, 0xf,0x38,0x5c, 0xf,0x38,0x5d,
+  0xf,0x38,0x5e, 0xf,0x38,0x5f, 0xf,0x38,0x60, 0x6,0x45,0x2d,
+  0x4,0x35,0x53, 0x6,0x45,0x29, 0x4,0x35,0x52, 0x6,0x4f,0x2b,
+  0x4,0x3b,0x40, 0x5,0x3c,0x49, 0x5,0x3c,0x4b, 0x6,0x4f,0x2e,
+  0x6,0x4f,0x2c, 0x6,0x4f,0x2d, 0x6,0x58,0x57, 0x5,0x3c,0x4a,
+  0xf,0x3f,0x3f, 0xf,0x3f,0x41, 0xf,0x3f,0x42, 0xf,0x3f,0x43,
+  0xf,0x3f,0x44, 0xf,0x3f,0x45, 0x6,0x4f,0x2f, 0x6,0x4f,0x2a,
+  0x5,0x3c,0x4d, 0x4,0x41,0x22, 0x6,0x58,0x54, 0x6,0x58,0x59,
+  0x6,0x58,0x56, 0x5,0x43,0x30, 0x5,0x43,0x2c, 0x6,0x58,0x5e,
+  0x6,0x58,0x55, 0x5,0x43,0x2f, 0x5,0x43,0x31, 0x5,0x43,0x32,
+  0x6,0x58,0x58, 0x6,0x58,0x60, 0x6,0x58,0x62, 0x5,0x43,0x33,
+  0x6,0x58,0x5f, 0xf,0x45,0x48, 0xf,0x45,0x49, 0xf,0x45,0x4a,
+  0xf,0x45,0x4b, 0xf,0x45,0x4c, 0xf,0x45,0x4d, 0xf,0x45,0x4e,
+  0x6,0x58,0x61, 0xf,0x3f,0x40, 0x6,0x58,0x5b, 0x5,0x43,0x2e,
+  0xf,0x46,0x34, 0x6,0x62,0x65, 0x4,0x47,0x55, 0x5,0x4a,0x26,
+  0x6,0x62,0x64, 0x6,0x62,0x66, 0x6,0x62,0x6c, 0x6,0x62,0x63,
+  0x6,0x62,0x69, 0x5,0x4a,0x27, 0x4,0x47,0x57, 0xf,0x4c,0x4d,
+  0xf,0x4c,0x4e, 0xf,0x4c,0x4f, 0xf,0x4c,0x51, 0xf,0x4c,0x50,
+  0xf,0x4c,0x4c, 0x6,0x62,0x6b, 0x6,0x58,0x5d, 0x7,0x29,0x33,
+  0x7,0x29,0x35, 0x5,0x4a,0x28, 0x4,0x4d,0x6f, 0x7,0x29,0x34,
+  0x5,0x51,0x3a, 0x4,0x4d,0x70, 0x5,0x51,0x3b, 0x7,0x29,0x39,
+  0x7,0x29,0x38, 0x7,0x29,0x32, 0xf,0x52,0x3d, 0xf,0x52,0x3e,
+  0xf,0x52,0x3f, 0x7,0x29,0x37, 0xf,0x4c,0x4b, 0x7,0x33,0x6a,
+  0x5,0x58,0x4e, 0x7,0x33,0x67, 0x7,0x33,0x66, 0x5,0x58,0x4f,
+  0x7,0x33,0x6b, 0x7,0x33,0x6e, 0x4,0x53,0x7c, 0x7,0x33,0x68,
+  0x5,0x58,0x4d, 0x6,0x62,0x68, 0xf,0x54,0x32, 0xf,0x57,0x7b,
+  0xf,0x57,0x7c, 0xf,0x57,0x7d, 0xf,0x57,0x7e, 0xf,0x58,0x21,
+  0xf,0x58,0x22, 0x7,0x33,0x6d, 0x7,0x33,0x6c, 0x7,0x33,0x65,
+  0x7,0x33,0x69, 0x5,0x58,0x50, 0x7,0x3c,0x32, 0x5,0x5e,0x65,
+  0x5,0x5b,0x2d, 0x5,0x5e,0x67, 0x5,0x58,0x52, 0x5,0x5e,0x66,
+  0x4,0x58,0x7b, 0x7,0x3c,0x38, 0x7,0x3c,0x34, 0x7,0x3c,0x36,
+  0x7,0x3c,0x37, 0x7,0x3c,0x35, 0xf,0x5c,0x6e, 0xf,0x5c,0x70,
+  0xf,0x5c,0x6f, 0x7,0x43,0x4b, 0x5,0x64,0x73, 0x7,0x43,0x4e,
+  0x5,0x64,0x6f, 0x7,0x43,0x49, 0x7,0x43,0x4a, 0x7,0x43,0x51,
+  0x5,0x64,0x71, 0x5,0x64,0x6e, 0x5,0x64,0x72, 0x7,0x43,0x4d,
+  0x7,0x43,0x4c, 0xf,0x60,0x76, 0xf,0x60,0x77, 0xf,0x60,0x78,
+  0xf,0x60,0x79, 0xf,0x60,0x7b, 0xf,0x60,0x7c, 0x7,0x43,0x48,
+  0x7,0x43,0x50, 0x5,0x64,0x70, 0x7,0x4a,0x47, 0x7,0x4a,0x4b,
+  0x5,0x69,0x5d, 0x5,0x64,0x74, 0x7,0x4a,0x4a, 0x7,0x43,0x4f,
+  0x5,0x69,0x5c, 0x4,0x61,0x4b, 0x7,0x4a,0x48, 0x5,0x69,0x5e,
+  0x7,0x4a,0x4d, 0x7,0x4a,0x4c, 0x5,0x69,0x60, 0x7,0x4a,0x44,
+  0x7,0x4a,0x49, 0x7,0x4a,0x46, 0xf,0x63,0x7c, 0xf,0x63,0x7d,
+  0xf,0x63,0x7e, 0xf,0x64,0x21, 0x7,0x4a,0x4e, 0x7,0x4a,0x45,
+  0x5,0x69,0x5f, 0x4,0x64,0x51, 0x5,0x6d,0x70, 0x4,0x64,0x50,
+  0x5,0x6d,0x6f, 0x7,0x50,0x3e, 0x7,0x50,0x40, 0xf,0x66,0x3b,
+  0xf,0x66,0x3c, 0xf,0x66,0x3d, 0xf,0x66,0x3e, 0xf,0x66,0x3f,
+  0x7,0x50,0x3f, 0x5,0x71,0x43, 0x4,0x67,0x47, 0x5,0x71,0x44,
+  0x5,0x71,0x45, 0xf,0x68,0x4e, 0xf,0x68,0x4f, 0x7,0x55,0x3b,
+  0x7,0x59,0x47, 0x5,0x74,0x45, 0x5,0x74,0x44, 0xf,0x69,0x76,
+  0xf,0x69,0x77, 0xf,0x69,0x78, 0x7,0x59,0x4a, 0x7,0x59,0x48,
+  0x7,0x59,0x49, 0xf,0x68,0x4d, 0x7,0x5c,0x71, 0x4,0x6b,0x22,
+  0x5,0x74,0x43, 0x7,0x5c,0x72, 0xf,0x6a,0x78, 0x7,0x5c,0x73,
+  0x7,0x5f,0x5e, 0x7,0x5f,0x60, 0x7,0x5f,0x5f, 0x7,0x62,0x66,
+  0x6,0x2e,0x31, 0x6,0x34,0x57, 0x6,0x34,0x58, 0x5,0x35,0x66,
+  0xf,0x38,0x61, 0x6,0x4f,0x30, 0x4,0x3b,0x44, 0x6,0x58,0x63,
+  0xf,0x45,0x4f, 0x5,0x4a,0x2a, 0xf,0x4c,0x52, 0x7,0x29,0x3a,
+  0x5,0x58,0x54, 0x5,0x58,0x53, 0xf,0x58,0x23, 0x7,0x33,0x6f,
+  0x5,0x5e,0x69, 0x5,0x5e,0x6a, 0x5,0x5e,0x68, 0xf,0x5c,0x71,
+  0x5,0x64,0x75, 0x7,0x43,0x53, 0x7,0x4a,0x50, 0x7,0x4a,0x4f,
+  0x5,0x71,0x46, 0x7,0x5c,0x74, 0x6,0x2e,0x32, 0x6,0x2e,0x33,
+  0x6,0x34,0x59, 0xf,0x2d,0x4b, 0xf,0x2d,0x4d, 0xf,0x2d,0x4e,
+  0xf,0x2d,0x4f, 0xf,0x2d,0x50, 0x4,0x2b,0x4b, 0x5,0x30,0x4d,
+  0x6,0x3c,0x3e, 0x6,0x3c,0x3d, 0x5,0x30,0x4e, 0x6,0x3c,0x3c,
+  0x4,0x30,0x29, 0xf,0x32,0x59, 0xf,0x32,0x5a, 0xf,0x32,0x5b,
+  0xf,0x32,0x5c, 0xf,0x32,0x5d, 0x5,0x35,0x6d, 0x6,0x45,0x30,
+  0x5,0x35,0x67, 0x4,0x35,0x57, 0x5,0x35,0x6a, 0x5,0x35,0x6f,
+  0x5,0x35,0x6e, 0x4,0x35,0x58, 0x6,0x45,0x2e, 0x6,0x45,0x2f,
+  0x5,0x35,0x6b, 0x5,0x35,0x68, 0xf,0x38,0x63, 0xf,0x38,0x64,
+  0xf,0x38,0x65, 0xf,0x38,0x66, 0xf,0x38,0x68, 0xf,0x38,0x69,
+  0xf,0x38,0x62, 0x5,0x35,0x6c, 0x5,0x35,0x69, 0xf,0x38,0x67,
+  0x5,0x3c,0x51, 0x5,0x3c,0x50, 0x5,0x3c,0x54, 0x5,0x3c,0x4f,
+  0x6,0x4f,0x34, 0x6,0x4f,0x31, 0x5,0x43,0x39, 0x5,0x3c,0x53,
+  0x5,0x3c,0x4e, 0x6,0x4f,0x33, 0x4,0x3b,0x46, 0x5,0x3c,0x55,
+  0x6,0x58,0x64, 0x6,0x4f,0x35, 0xf,0x3f,0x47, 0xf,0x3f,0x48,
+  0xf,0x3f,0x49, 0xf,0x3f,0x4a, 0xf,0x3f,0x4b, 0xf,0x3f,0x4c,
+  0xf,0x3f,0x4f, 0xf,0x3f,0x50, 0xf,0x3f,0x51, 0x6,0x4f,0x32,
+  0xf,0x3f,0x4e, 0x6,0x58,0x66, 0x5,0x43,0x36, 0x4,0x41,0x23,
+  0x6,0x58,0x68, 0x4,0x41,0x25, 0x5,0x43,0x3b, 0x5,0x43,0x35,
+  0x5,0x43,0x3d, 0x5,0x43,0x37, 0x4,0x41,0x24, 0x6,0x58,0x6a,
+  0x6,0x58,0x69, 0x5,0x43,0x3a, 0xf,0x45,0x50, 0xf,0x45,0x51,
+  0xf,0x45,0x52, 0xf,0x45,0x53, 0xf,0x45,0x54, 0xf,0x45,0x55,
+  0xf,0x45,0x56, 0xf,0x45,0x57, 0x6,0x58,0x65, 0x6,0x58,0x67,
+  0x6,0x62,0x6d, 0xf,0x3f,0x4d, 0x6,0x62,0x6e, 0x4,0x47,0x5c,
+  0x5,0x4a,0x2c, 0x5,0x4a,0x30, 0x6,0x62,0x72, 0x5,0x4a,0x2b,
+  0x5,0x4a,0x2e, 0x5,0x4a,0x31, 0x6,0x62,0x71, 0x6,0x62,0x6f,
+  0x5,0x4a,0x33, 0x4,0x47,0x5d, 0x5,0x4a,0x2f, 0x6,0x62,0x76,
+  0x5,0x4a,0x2d, 0x6,0x62,0x73, 0xf,0x4c,0x53, 0xf,0x4c,0x54,
+  0xf,0x4c,0x55, 0xf,0x4c,0x56, 0xf,0x4c,0x57, 0xf,0x4c,0x58,
+  0xf,0x4c,0x59, 0x6,0x62,0x70, 0x5,0x51,0x42, 0x5,0x51,0x3c,
+  0x4,0x4d,0x72, 0x5,0x51,0x3f, 0x5,0x51,0x3e, 0x5,0x51,0x3d,
+  0x5,0x51,0x40, 0x7,0x29,0x3f, 0x5,0x51,0x46, 0x5,0x51,0x43,
+  0x7,0x29,0x41, 0x5,0x51,0x41, 0x7,0x29,0x3c, 0x7,0x29,0x40,
+  0x7,0x29,0x3e, 0x6,0x62,0x74, 0x7,0x29,0x42, 0x7,0x33,0x72,
+  0x5,0x51,0x45, 0x5,0x51,0x44, 0xf,0x52,0x40, 0xf,0x52,0x41,
+  0x7,0x29,0x43, 0x7,0x29,0x3b, 0xf,0x58,0x2d, 0x4,0x54,0x23,
+  0x4,0x54,0x24, 0x4,0x54,0x28, 0x7,0x33,0x74, 0x5,0x58,0x59,
+  0x4,0x54,0x21, 0x4,0x54,0x22, 0x4,0x54,0x27, 0x7,0x33,0x75,
+  0x4,0x54,0x25, 0x7,0x33,0x71, 0x7,0x33,0x70, 0x5,0x58,0x58,
+  0x5,0x58,0x5a, 0x7,0x33,0x76, 0xf,0x58,0x24, 0xf,0x58,0x26,
+  0xf,0x58,0x27, 0xf,0x58,0x28, 0xf,0x58,0x29, 0xf,0x58,0x2a,
+  0xf,0x58,0x2b, 0xf,0x58,0x2c, 0xf,0x58,0x2e, 0x7,0x33,0x78,
+  0x7,0x33,0x77, 0x5,0x58,0x5b, 0x5,0x58,0x56, 0x5,0x58,0x57,
+  0x5,0x5e,0x6f, 0x5,0x5e,0x71, 0x4,0x59,0x22, 0x5,0x5e,0x70,
+  0x4,0x59,0x24, 0x4,0x59,0x21, 0x5,0x5e,0x72, 0x4,0x58,0x7e,
+  0x5,0x5e,0x6c, 0x4,0x59,0x23, 0x5,0x5e,0x6e, 0x5,0x5e,0x6b,
+  0x7,0x3c,0x3a, 0x5,0x5e,0x73, 0xf,0x58,0x25, 0xf,0x5c,0x72,
+  0xf,0x5c,0x73, 0xf,0x5c,0x74, 0xf,0x5c,0x75, 0xf,0x5c,0x76,
+  0x7,0x3c,0x39, 0x5,0x64,0x79, 0x5,0x64,0x7c, 0x4,0x5d,0x6b,
+  0x7,0x43,0x57, 0x7,0x43,0x56, 0x5,0x64,0x76, 0x5,0x64,0x7a,
+  0x5,0x64,0x78, 0x5,0x64,0x77, 0x5,0x64,0x7d, 0x5,0x64,0x7e,
+  0x7,0x43,0x5b, 0x7,0x43,0x5a, 0x5,0x64,0x7b, 0xf,0x60,0x7d,
+  0x7,0x43,0x58, 0x7,0x43,0x55, 0x7,0x43,0x59, 0x7,0x43,0x54,
+  0x5,0x58,0x5d, 0x5,0x69,0x62, 0x5,0x69,0x66, 0x5,0x69,0x68,
+  0x4,0x61,0x4e, 0x4,0x61,0x4c, 0x5,0x69,0x63, 0x5,0x69,0x67,
+  0x5,0x69,0x65, 0x5,0x69,0x61, 0x7,0x4a,0x52, 0x5,0x69,0x69,
+  0x5,0x69,0x64, 0xf,0x64,0x23, 0xf,0x64,0x24, 0xf,0x64,0x25,
+  0x7,0x4a,0x51, 0x7,0x4a,0x53, 0x4,0x64,0x52, 0x4,0x64,0x54,
+  0x4,0x64,0x58, 0x4,0x64,0x57, 0x5,0x6d,0x71, 0x7,0x50,0x41,
+  0x7,0x50,0x43, 0x5,0x6d,0x72, 0x7,0x50,0x42, 0xf,0x66,0x40,
+  0xf,0x66,0x41, 0xf,0x66,0x42, 0x4,0x67,0x49, 0x5,0x71,0x48,
+  0x5,0x71,0x49, 0x7,0x55,0x3f, 0x7,0x55,0x3d, 0x7,0x55,0x3c,
+  0x7,0x55,0x3e, 0x5,0x71,0x47, 0x5,0x74,0x46, 0x5,0x74,0x49,
+  0x4,0x69,0x4d, 0x5,0x74,0x48, 0x5,0x74,0x47, 0xf,0x69,0x79,
+  0x5,0x76,0x4f, 0x5,0x76,0x50, 0xf,0x6a,0x79, 0x7,0x59,0x4b,
+  0x7,0x5c,0x75, 0x7,0x5c,0x76, 0x5,0x78,0x33, 0x5,0x78,0x34,
+  0x5,0x78,0x35, 0x4,0x6d,0x26, 0x7,0x61,0x4e, 0x5,0x7a,0x79,
+  0x5,0x7b,0x49, 0x6,0x2e,0x35, 0x6,0x2e,0x34, 0x6,0x34,0x5b,
+  0x5,0x2b,0x4d, 0xf,0x2d,0x51, 0x6,0x34,0x5a, 0x6,0x3c,0x41,
+  0x4,0x30,0x2b, 0x6,0x3c,0x42, 0x6,0x3c,0x40, 0x5,0x30,0x50,
+  0x5,0x30,0x4f, 0x6,0x3c,0x3f, 0x6,0x3c,0x43, 0x4,0x35,0x5f,
+  0x6,0x45,0x33, 0x4,0x35,0x5a, 0x5,0x35,0x73, 0x6,0x45,0x37,
+  0x5,0x35,0x77, 0x6,0x45,0x3a, 0x5,0x35,0x71, 0x5,0x35,0x75,
+  0x6,0x45,0x3c, 0x6,0x45,0x3d, 0x5,0x35,0x74, 0x6,0x45,0x3b,
+  0x6,0x45,0x32, 0x6,0x45,0x36, 0xf,0x38,0x6a, 0x6,0x45,0x31,
+  0x6,0x45,0x35, 0x6,0x45,0x39, 0x5,0x35,0x76, 0x5,0x35,0x70,
+  0x6,0x45,0x34, 0x5,0x3c,0x60, 0x5,0x3c,0x57, 0x5,0x3c,0x58,
+  0x5,0x3c,0x5b, 0x6,0x4f,0x3b, 0x5,0x3c,0x56, 0x6,0x4f,0x38,
+  0x4,0x3b,0x4e, 0x5,0x3c,0x5d, 0x5,0x3c,0x59, 0x5,0x3c,0x61,
+  0x5,0x3c,0x5a, 0x6,0x4f,0x39, 0x6,0x58,0x79, 0x5,0x3c,0x62,
+  0xf,0x3f,0x54, 0x6,0x4f,0x37, 0xf,0x3f,0x52, 0x6,0x4f,0x3a,
+  0x5,0x3c,0x5e, 0x5,0x43,0x41, 0x5,0x43,0x3f, 0x6,0x58,0x71,
+  0x5,0x43,0x40, 0x5,0x43,0x42, 0x6,0x58,0x74, 0x6,0x58,0x70,
+  0x5,0x43,0x47, 0x5,0x43,0x45, 0x6,0x58,0x6e, 0x6,0x58,0x6d,
+  0x5,0x43,0x3e, 0x6,0x58,0x6f, 0x6,0x58,0x72, 0x6,0x58,0x76,
+  0x5,0x43,0x4a, 0x6,0x58,0x6c, 0x6,0x58,0x77, 0x5,0x43,0x43,
+  0x5,0x43,0x4c, 0x5,0x43,0x48, 0x6,0x58,0x73, 0x5,0x43,0x49,
+  0x5,0x43,0x46, 0x6,0x58,0x75, 0x5,0x4a,0x35, 0xf,0x45,0x59,
+  0x6,0x58,0x78, 0x6,0x58,0x6b, 0x6,0x63,0x22, 0x5,0x4a,0x43,
+  0x4,0x47,0x60, 0x5,0x4a,0x37, 0x5,0x4a,0x3f, 0x5,0x4a,0x36,
+  0x5,0x51,0x4e, 0x5,0x4a,0x3b, 0x6,0x62,0x77, 0x6,0x62,0x7b,
+  0x5,0x4a,0x42, 0x5,0x4a,0x3c, 0x5,0x4a,0x39, 0x5,0x4a,0x40,
+  0x5,0x4a,0x41, 0x5,0x4a,0x3d, 0x5,0x43,0x44, 0x5,0x4a,0x38,
+  0x5,0x4a,0x44, 0x6,0x62,0x7e, 0x5,0x4a,0x46, 0x6,0x62,0x79,
+  0x5,0x4a,0x47, 0xf,0x4c,0x5a, 0xf,0x4c,0x5b, 0x6,0x62,0x78,
+  0x6,0x62,0x7a, 0x6,0x62,0x7d, 0x6,0x63,0x21, 0x6,0x62,0x7c,
+  0x5,0x4a,0x3a, 0x7,0x29,0x46, 0x4,0x4d,0x7a, 0x5,0x51,0x4c,
+  0x5,0x51,0x47, 0x5,0x51,0x4a, 0x5,0x51,0x4f, 0x7,0x29,0x45,
+  0x7,0x29,0x49, 0x4,0x4d,0x7c, 0x7,0x29,0x4d, 0x4,0x4d,0x7b,
+  0x5,0x51,0x4b, 0x5,0x51,0x4d, 0x4,0x4e,0x24, 0x5,0x51,0x51,
+  0x5,0x51,0x52, 0x4,0x47,0x63, 0x7,0x29,0x4f, 0x5,0x51,0x49,
+  0x7,0x29,0x4b, 0xf,0x52,0x42, 0xf,0x52,0x43, 0xf,0x52,0x44,
+  0xf,0x52,0x45, 0x7,0x29,0x48, 0x7,0x29,0x4c, 0x7,0x29,0x47,
+  0x7,0x29,0x4a, 0x5,0x51,0x50, 0x5,0x51,0x54, 0x5,0x51,0x55,
+  0x5,0x4a,0x45, 0x7,0x34,0x21, 0x5,0x58,0x60, 0x5,0x4a,0x48,
+  0x5,0x58,0x69, 0x4,0x54,0x2a, 0x7,0x33,0x7a, 0x5,0x58,0x63,
+  0x7,0x33,0x7e, 0x7,0x34,0x23, 0x7,0x33,0x7c, 0x5,0x58,0x5f,
+  0x7,0x33,0x7b, 0x7,0x34,0x25, 0x5,0x51,0x53, 0x7,0x34,0x26,
+  0x5,0x58,0x67, 0x5,0x58,0x68, 0x5,0x58,0x5e, 0x5,0x58,0x61,
+  0x7,0x33,0x7d, 0x5,0x58,0x65, 0x5,0x58,0x64, 0x7,0x34,0x24,
+  0x4,0x54,0x2b, 0x5,0x58,0x66, 0x4,0x54,0x2c, 0xf,0x58,0x31,
+  0xf,0x58,0x32, 0x7,0x34,0x22, 0x5,0x5e,0x7a, 0x5,0x5e,0x7d,
+  0x5,0x5e,0x75, 0x7,0x3c,0x40, 0x5,0x5e,0x76, 0x5,0x5e,0x7c,
+  0x5,0x5e,0x78, 0x4,0x59,0x29, 0x7,0x3c,0x3e, 0x7,0x43,0x67,
+  0x7,0x3c,0x43, 0x5,0x5e,0x7e, 0x4,0x59,0x2e, 0x7,0x3c,0x3b,
+  0x7,0x3c,0x42, 0x7,0x3c,0x44, 0x5,0x5e,0x79, 0x4,0x59,0x27,
+  0x7,0x3c,0x41, 0x7,0x34,0x27, 0x7,0x3c,0x3f, 0x4,0x59,0x2f,
+  0xf,0x5c,0x77, 0x7,0x3c,0x3d, 0xf,0x5c,0x79, 0x5,0x5e,0x77,
+  0x5,0x5e,0x74, 0x7,0x43,0x62, 0x4,0x5d,0x70, 0x7,0x43,0x66,
+  0x4,0x5d,0x6f, 0x5,0x65,0x21, 0x5,0x65,0x22, 0x5,0x65,0x2d,
+  0x5,0x65,0x26, 0x4,0x5d,0x71, 0x5,0x65,0x2c, 0x5,0x65,0x28,
+  0x7,0x43,0x5f, 0x5,0x69,0x70, 0x7,0x43,0x65, 0x7,0x43,0x5c,
+  0x5,0x65,0x2e, 0x7,0x43,0x5e, 0x5,0x65,0x24, 0x7,0x43,0x61,
+  0x5,0x65,0x23, 0x5,0x65,0x29, 0x4,0x5f,0x33, 0x4,0x5d,0x76,
+  0x5,0x65,0x25, 0xf,0x60,0x7e, 0xf,0x61,0x21, 0xf,0x61,0x22,
+  0xf,0x61,0x23, 0xf,0x61,0x24, 0xf,0x61,0x25, 0x7,0x43,0x6b,
+  0x5,0x65,0x27, 0x7,0x43,0x60, 0x7,0x43,0x69, 0x7,0x43,0x68,
+  0x7,0x43,0x6a, 0x7,0x43,0x5d, 0x5,0x65,0x2b, 0x7,0x43,0x63,
+  0x7,0x3c,0x3c, 0x5,0x65,0x2f, 0x5,0x69,0x6a, 0x7,0x4a,0x65,
+  0x5,0x69,0x6f, 0x5,0x69,0x71, 0x7,0x4a,0x68, 0x5,0x69,0x74,
+  0x7,0x4a,0x5b, 0x5,0x65,0x2a, 0x5,0x69,0x6e, 0x7,0x4a,0x58,
+  0x5,0x69,0x6d, 0x5,0x69,0x72, 0x4,0x61,0x55, 0x7,0x4a,0x54,
+  0x4,0x5d,0x73, 0x7,0x4a,0x59, 0x7,0x43,0x64, 0x7,0x4a,0x5e,
+  0x5,0x69,0x73, 0x7,0x4a,0x5a, 0x7,0x4a,0x66, 0x7,0x4a,0x55,
+  0x7,0x4a,0x5c, 0x5,0x69,0x6b, 0x5,0x69,0x6c, 0x7,0x4a,0x61,
+  0x7,0x4a,0x62, 0x7,0x4a,0x63, 0x7,0x4a,0x5f, 0x5,0x69,0x76,
+  0x5,0x69,0x75, 0x7,0x4a,0x60, 0x7,0x4a,0x5d, 0x7,0x4a,0x67,
+  0x7,0x4a,0x56, 0x7,0x4a,0x64, 0x4,0x61,0x53, 0x4,0x64,0x59,
+  0x5,0x6d,0x7d, 0x5,0x6d,0x77, 0x7,0x50,0x44, 0x5,0x6d,0x7b,
+  0x5,0x6d,0x76, 0x5,0x6d,0x79, 0x7,0x50,0x48, 0x7,0x50,0x46,
+  0x4,0x64,0x5c, 0x5,0x6d,0x73, 0x4,0x64,0x5d, 0x7,0x50,0x47,
+  0x5,0x6d,0x78, 0x5,0x6d,0x75, 0x5,0x6d,0x74, 0x7,0x50,0x49,
+  0xf,0x66,0x43, 0xf,0x66,0x44, 0xf,0x66,0x45, 0xf,0x66,0x46,
+  0xf,0x66,0x47, 0x7,0x50,0x45, 0x7,0x50,0x4a, 0x7,0x50,0x4b,
+  0x5,0x6d,0x7c, 0x5,0x6d,0x7e, 0x5,0x6d,0x7a, 0x4,0x67,0x4e,
+  0x7,0x55,0x42, 0x4,0x67,0x4f, 0x5,0x71,0x4b, 0x7,0x55,0x41,
+  0x7,0x55,0x44, 0x4,0x67,0x4d, 0x4,0x67,0x4b, 0x5,0x71,0x4c,
+  0x7,0x55,0x43, 0x7,0x55,0x40, 0x5,0x71,0x4a, 0xf,0x68,0x51,
+  0xf,0x68,0x52, 0x5,0x74,0x4a, 0x7,0x55,0x45, 0x7,0x59,0x4c,
+  0x5,0x74,0x4d, 0x5,0x74,0x4f, 0x5,0x74,0x4e, 0x5,0x74,0x4c,
+  0x7,0x59,0x4d, 0x5,0x74,0x51, 0x7,0x59,0x4e, 0xf,0x69,0x7a,
+  0x7,0x59,0x4f, 0x5,0x74,0x50, 0x5,0x76,0x54, 0x5,0x76,0x52,
+  0x5,0x76,0x55, 0x7,0x5c,0x79, 0x7,0x5c,0x78, 0x5,0x76,0x53,
+  0x5,0x76,0x51, 0x4,0x6c,0x2b, 0x7,0x5f,0x61, 0x5,0x78,0x37,
+  0x5,0x78,0x36, 0x4,0x6c,0x2a, 0x5,0x78,0x38, 0x7,0x5f,0x62,
+  0x7,0x61,0x4f, 0x7,0x5f,0x63, 0x7,0x61,0x52, 0x4,0x6d,0x28,
+  0x7,0x61,0x54, 0x7,0x62,0x67, 0x7,0x61,0x53, 0x7,0x61,0x51,
+  0x7,0x61,0x50, 0xf,0x6b,0x67, 0x5,0x7a,0x3c, 0x5,0x7a,0x3b,
+  0x5,0x7a,0x3d, 0x7,0x63,0x76, 0x5,0x7b,0x4a, 0x7,0x64,0x63,
+  0x5,0x7b,0x6a, 0xf,0x6d,0x28, 0x7,0x65,0x65, 0xf,0x6d,0x33,
+  0x6,0x23,0x39, 0x6,0x23,0x3a, 0x6,0x25,0x55, 0x5,0x30,0x52,
+  0x6,0x3c,0x44, 0x5,0x30,0x51, 0x5,0x35,0x7a, 0x5,0x35,0x79,
+  0x5,0x35,0x78, 0x6,0x45,0x3e, 0x6,0x45,0x41, 0x6,0x45,0x40,
+  0x6,0x45,0x42, 0x6,0x45,0x3f, 0x6,0x45,0x43, 0x6,0x45,0x44,
+  0x4,0x35,0x60, 0xf,0x38,0x6b, 0x5,0x3c,0x65, 0x6,0x4f,0x3f,
+  0x5,0x3c,0x64, 0x6,0x4f,0x41, 0x6,0x4f,0x3e, 0x5,0x3c,0x66,
+  0xf,0x3f,0x55, 0xf,0x3f,0x56, 0xf,0x3f,0x57, 0xf,0x3f,0x58,
+  0x6,0x4f,0x3d, 0x6,0x4f,0x40, 0x6,0x58,0x7d, 0x5,0x43,0x4d,
+  0x6,0x58,0x7a, 0x6,0x58,0x7e, 0x6,0x59,0x21, 0xf,0x45,0x5a,
+  0xf,0x45,0x5b, 0xf,0x45,0x5c, 0x6,0x58,0x7b, 0x6,0x58,0x7c,
+  0x6,0x59,0x22, 0x5,0x4a,0x4a, 0x6,0x63,0x23, 0x6,0x63,0x24,
+  0x5,0x4a,0x49, 0x6,0x63,0x25, 0x6,0x63,0x26, 0xf,0x4c,0x5c,
+  0xf,0x4c,0x5d, 0xf,0x4c,0x5e, 0x7,0x29,0x51, 0x5,0x51,0x56,
+  0x4,0x4e,0x25, 0xf,0x52,0x46, 0xf,0x52,0x48, 0x7,0x29,0x50,
+  0x5,0x58,0x6a, 0x4,0x54,0x31, 0x5,0x58,0x6b, 0x7,0x34,0x28,
+  0x7,0x3c,0x46, 0xf,0x58,0x34, 0xf,0x58,0x36, 0x7,0x3c,0x48,
+  0x7,0x3c,0x47, 0x7,0x3c,0x45, 0x5,0x5f,0x21, 0xf,0x5c,0x7a,
+  0xf,0x5c,0x7b, 0x5,0x65,0x30, 0x7,0x43,0x6c, 0xf,0x61,0x26,
+  0xf,0x61,0x27, 0x7,0x4a,0x6c, 0x7,0x4a,0x6d, 0x7,0x4a,0x6a,
+  0xf,0x64,0x26, 0xf,0x64,0x27, 0x7,0x4a,0x6b, 0x7,0x4a,0x69,
+  0x4,0x64,0x5e, 0x7,0x50,0x4d, 0xf,0x66,0x48, 0xf,0x66,0x49,
+  0x7,0x50,0x4e, 0x7,0x55,0x46, 0x5,0x71,0x4d, 0x7,0x55,0x47,
+  0x7,0x55,0x48, 0x7,0x55,0x49, 0x7,0x59,0x50, 0xf,0x69,0x7c,
+  0x5,0x76,0x56, 0x5,0x79,0x51, 0x6,0x34,0x5c, 0x5,0x2b,0x4e,
+  0x6,0x34,0x5e, 0xf,0x2d,0x52, 0xf,0x2d,0x54, 0x6,0x3c,0x45,
+  0x5,0x30,0x54, 0x6,0x3c,0x47, 0xf,0x32,0x5f, 0xf,0x32,0x60,
+  0x6,0x3c,0x46, 0x5,0x30,0x53, 0xf,0x32,0x5e, 0x5,0x35,0x7b,
+  0x6,0x45,0x4e, 0x6,0x45,0x4d, 0x6,0x45,0x46, 0x4,0x35,0x64,
+  0x5,0x36,0x22, 0x5,0x36,0x21, 0x6,0x45,0x4a, 0x5,0x35,0x7d,
+  0x6,0x45,0x47, 0x6,0x45,0x4c, 0x6,0x45,0x4b, 0x5,0x35,0x7c,
+  0x5,0x35,0x7e, 0xf,0x38,0x6d, 0x6,0x45,0x48, 0x6,0x45,0x49,
+  0x4,0x35,0x65, 0x6,0x4f,0x46, 0x6,0x4f,0x47, 0x5,0x3c,0x70,
+  0x5,0x3c,0x6e, 0x6,0x4f,0x45, 0x6,0x4f,0x44, 0x6,0x4f,0x42,
+  0x5,0x36,0x23, 0x5,0x3c,0x6d, 0x5,0x3c,0x68, 0x5,0x3c,0x6b,
+  0x5,0x3c,0x6a, 0x6,0x4f,0x43, 0x5,0x3c,0x69, 0x5,0x3c,0x71,
+  0x5,0x3c,0x6c, 0x5,0x3c,0x6f, 0x6,0x59,0x23, 0x6,0x59,0x28,
+  0x5,0x43,0x53, 0x6,0x59,0x26, 0x6,0x59,0x29, 0x5,0x43,0x51,
+  0x4,0x41,0x2b, 0x5,0x43,0x52, 0x5,0x43,0x4f, 0x6,0x59,0x27,
+  0x5,0x43,0x4e, 0xf,0x45,0x5d, 0xf,0x45,0x5e, 0xf,0x45,0x5f,
+  0x6,0x59,0x25, 0x4,0x41,0x2d, 0x5,0x43,0x54, 0x6,0x63,0x2d,
+  0x6,0x63,0x2f, 0x5,0x4a,0x50, 0x4,0x47,0x68, 0x6,0x63,0x28,
+  0x6,0x63,0x2b, 0x5,0x4a,0x4d, 0x6,0x63,0x2c, 0x6,0x63,0x27,
+  0x6,0x63,0x30, 0x5,0x4a,0x4b, 0x5,0x4a,0x4e, 0x6,0x63,0x31,
+  0x6,0x63,0x2e, 0xf,0x4c,0x5f, 0xf,0x4c,0x60, 0xf,0x4c,0x61,
+  0xf,0x4c,0x63, 0x5,0x4a,0x4f, 0x5,0x4a,0x4c, 0x7,0x29,0x59,
+  0x6,0x63,0x2a, 0x5,0x51,0x60, 0x7,0x29,0x57, 0x7,0x29,0x5e,
+  0x7,0x29,0x62, 0x7,0x29,0x56, 0x5,0x51,0x59, 0x7,0x29,0x5a,
+  0x7,0x29,0x55, 0x7,0x29,0x5c, 0x5,0x51,0x58, 0x5,0x51,0x5b,
+  0x5,0x51,0x5e, 0x4,0x4e,0x2c, 0x6,0x63,0x29, 0x7,0x29,0x58,
+  0x7,0x29,0x5d, 0x7,0x29,0x5b, 0x5,0x51,0x5d, 0x5,0x51,0x5f,
+  0x7,0x29,0x52, 0x5,0x51,0x57, 0x7,0x29,0x54, 0x7,0x29,0x63,
+  0xf,0x52,0x49, 0xf,0x52,0x4a, 0xf,0x52,0x4b, 0xf,0x52,0x4c,
+  0x7,0x29,0x53, 0x7,0x29,0x5f, 0x7,0x29,0x60, 0x7,0x29,0x61,
+  0x5,0x51,0x5c, 0x5,0x51,0x5a, 0x7,0x34,0x29, 0x5,0x58,0x73,
+  0x7,0x34,0x2f, 0x5,0x58,0x74, 0x7,0x34,0x2d, 0x5,0x58,0x70,
+  0x7,0x34,0x2b, 0x7,0x34,0x34, 0x5,0x58,0x6e, 0x5,0x58,0x71,
+  0x5,0x58,0x6d, 0x7,0x34,0x35, 0x7,0x34,0x30, 0x7,0x34,0x36,
+  0x5,0x58,0x6c, 0x7,0x34,0x33, 0xf,0x58,0x37, 0xf,0x58,0x39,
+  0xf,0x58,0x3a, 0x7,0x34,0x2c, 0x7,0x34,0x2e, 0x7,0x34,0x2a,
+  0xf,0x58,0x38, 0x4,0x54,0x35, 0x5,0x58,0x6f, 0x7,0x3c,0x4a,
+  0x7,0x3c,0x52, 0x5,0x5f,0x25, 0x7,0x3c,0x4d, 0x7,0x3c,0x4c,
+  0x7,0x3c,0x4b, 0x7,0x3c,0x53, 0x4,0x59,0x33, 0x7,0x3c,0x50,
+  0x4,0x59,0x34, 0x7,0x3c,0x51, 0x5,0x5f,0x22, 0x5,0x5f,0x2b,
+  0x4,0x59,0x36, 0x5,0x5f,0x28, 0x5,0x5f,0x27, 0x7,0x3c,0x54,
+  0x5,0x5f,0x24, 0x5,0x5f,0x2a, 0x7,0x3c,0x49, 0xf,0x5c,0x7c,
+  0xf,0x5c,0x7d, 0x7,0x3c,0x4e, 0x7,0x3c,0x4f, 0x5,0x5f,0x26,
+  0x5,0x5f,0x23, 0x5,0x5f,0x29, 0x4,0x5d,0x79, 0x7,0x43,0x70,
+  0x4,0x5e,0x21, 0x5,0x65,0x32, 0x5,0x65,0x34, 0xf,0x61,0x28,
+  0xf,0x61,0x29, 0xf,0x61,0x2a, 0x7,0x43,0x6f, 0x7,0x43,0x72,
+  0x7,0x43,0x71, 0x7,0x43,0x6e, 0x7,0x43,0x6d, 0x5,0x65,0x31,
+  0x5,0x65,0x33, 0x5,0x69,0x78, 0x7,0x4a,0x6e, 0x7,0x4a,0x71,
+  0x7,0x4a,0x6f, 0x7,0x4a,0x70, 0x5,0x69,0x7a, 0x4,0x61,0x5a,
+  0x4,0x61,0x5b, 0x5,0x69,0x79, 0x5,0x69,0x77, 0x5,0x69,0x7b,
+  0x7,0x4a,0x72, 0xf,0x64,0x28, 0x7,0x4a,0x74, 0x4,0x64,0x62,
+  0x5,0x6e,0x25, 0x5,0x6e,0x23, 0x7,0x50,0x53, 0x5,0x6e,0x24,
+  0x5,0x6e,0x22, 0x7,0x50,0x51, 0x5,0x6e,0x21, 0xf,0x66,0x4a,
+  0x7,0x50,0x52, 0x7,0x50,0x50, 0x7,0x50,0x4f, 0x5,0x6e,0x26,
+  0x7,0x50,0x54, 0x4,0x67,0x53, 0x5,0x71,0x4e, 0x4,0x67,0x54,
+  0x7,0x55,0x4c, 0x7,0x55,0x4b, 0x7,0x55,0x4a, 0x7,0x59,0x56,
+  0x4,0x69,0x50, 0x7,0x59,0x52, 0x7,0x59,0x51, 0x4,0x69,0x51,
+  0x7,0x59,0x57, 0x7,0x59,0x53, 0x7,0x59,0x54, 0x7,0x59,0x55,
+  0x7,0x5c,0x7e, 0x7,0x5d,0x21, 0x5,0x76,0x57, 0x7,0x5c,0x7b,
+  0x7,0x5c,0x7a, 0x7,0x5c,0x7c, 0x7,0x5c,0x7d, 0x5,0x76,0x59,
+  0x5,0x76,0x58, 0x5,0x78,0x3c, 0x5,0x78,0x3b, 0x5,0x78,0x3a,
+  0x7,0x5f,0x67, 0x7,0x5f,0x65, 0x7,0x5f,0x64, 0x5,0x78,0x39,
+  0x7,0x5f,0x66, 0x5,0x79,0x53, 0x5,0x79,0x52, 0x5,0x7a,0x3e,
+  0x5,0x7a,0x3f, 0x7,0x62,0x68, 0x5,0x7a,0x7a, 0x7,0x64,0x64,
+  0x7,0x62,0x69, 0x7,0x63,0x77, 0x5,0x7b,0x6b, 0x7,0x65,0x66,
+  0x6,0x29,0x2b, 0x6,0x2e,0x36, 0x6,0x3c,0x48, 0x6,0x45,0x4f,
+  0x5,0x36,0x25, 0x5,0x36,0x24, 0x4,0x41,0x2e, 0x6,0x59,0x2a,
+  0xf,0x45,0x61, 0x5,0x4a,0x51, 0xf,0x4c,0x65, 0xf,0x4c,0x66,
+  0x5,0x4a,0x52, 0x7,0x29,0x64, 0x7,0x29,0x65, 0x7,0x29,0x66,
+  0x5,0x51,0x62, 0x7,0x34,0x37, 0x5,0x58,0x75, 0x7,0x34,0x38,
+  0xf,0x58,0x3b, 0x5,0x5f,0x2d, 0x5,0x5f,0x2c, 0xf,0x5c,0x7e,
+  0xf,0x5d,0x21, 0xf,0x5d,0x22, 0xf,0x5d,0x23, 0x5,0x5f,0x2e,
+  0x5,0x65,0x37, 0x5,0x65,0x36, 0x7,0x43,0x73, 0x7,0x4a,0x75,
+  0x4,0x61,0x5c, 0x7,0x4a,0x76, 0xf,0x66,0x4b, 0x7,0x50,0x55,
+  0xf,0x68,0x54, 0x7,0x59,0x58, 0x7,0x5f,0x68, 0x7,0x65,0x47,
+  0x7,0x65,0x67, 0x6,0x29,0x2c, 0x6,0x2e,0x37, 0x6,0x59,0x2d,
+  0x6,0x59,0x2c, 0x6,0x59,0x2b, 0xf,0x52,0x4d, 0x7,0x33,0x21,
+  0x4,0x61,0x5d, 0x7,0x55,0x4d, 0x6,0x25,0x59, 0x6,0x25,0x58,
+  0x6,0x25,0x57, 0x4,0x24,0x7e, 0x6,0x29,0x2d, 0x4,0x25,0x24,
+  0x6,0x3c,0x49, 0x6,0x29,0x2e, 0xf,0x25,0x33, 0xf,0x25,0x34,
+  0x6,0x3c,0x4a, 0x6,0x29,0x2f, 0x5,0x24,0x78, 0x6,0x3c,0x4b,
+  0x6,0x45,0x50, 0x5,0x27,0x6a, 0x5,0x27,0x6b, 0x5,0x27,0x70,
+  0x6,0x2e,0x38, 0x6,0x2e,0x3d, 0x5,0x27,0x6f, 0x4,0x28,0x25,
+  0x5,0x27,0x71, 0x5,0x27,0x6d, 0x4,0x28,0x28, 0x6,0x2e,0x3b,
+  0xf,0x28,0x6d, 0xf,0x28,0x6f, 0xf,0x28,0x70, 0xf,0x28,0x73,
+  0xf,0x28,0x74, 0xf,0x28,0x75, 0x6,0x2e,0x3a, 0x6,0x2e,0x3f,
+  0x5,0x27,0x6e, 0x5,0x27,0x68, 0x6,0x2e,0x3c, 0x5,0x27,0x6c,
+  0x6,0x2e,0x39, 0x6,0x2e,0x3e, 0x5,0x2b,0x4f, 0x5,0x2b,0x56,
+  0x5,0x2b,0x52, 0x6,0x34,0x5f, 0x5,0x2b,0x51, 0x6,0x34,0x62,
+  0x5,0x2b,0x55, 0x5,0x2b,0x53, 0x4,0x2b,0x4f, 0x4,0x2b,0x51,
+  0x5,0x2b,0x50, 0x6,0x34,0x64, 0x6,0x34,0x63, 0xf,0x2d,0x55,
+  0xf,0x2d,0x56, 0xf,0x2d,0x57, 0xf,0x2d,0x58, 0xf,0x2d,0x59,
+  0x4,0x2b,0x52, 0x6,0x34,0x65, 0x6,0x34,0x61, 0x6,0x4a,0x47,
+  0x5,0x2b,0x57, 0x5,0x2b,0x54, 0x6,0x3c,0x54, 0x6,0x3c,0x58,
+  0x5,0x30,0x5b, 0x6,0x3c,0x53, 0x5,0x30,0x56, 0x5,0x30,0x5a,
+  0x4,0x30,0x31, 0x5,0x30,0x57, 0x5,0x30,0x59, 0x6,0x3c,0x52,
+  0x6,0x3c,0x4c, 0x6,0x3c,0x56, 0x4,0x30,0x32, 0x6,0x3c,0x57,
+  0x6,0x3c,0x4d, 0x5,0x43,0x55, 0x6,0x3c,0x55, 0x5,0x30,0x58,
+  0x6,0x3c,0x50, 0x6,0x3c,0x4e, 0x5,0x30,0x5c, 0x5,0x36,0x27,
+  0x5,0x36,0x26, 0x6,0x3c,0x4f, 0x6,0x45,0x5b, 0x5,0x36,0x2c,
+  0x4,0x35,0x6a, 0x6,0x45,0x5c, 0x5,0x36,0x2b, 0x6,0x3c,0x51,
+  0x5,0x36,0x29, 0x6,0x45,0x57, 0x6,0x45,0x5a, 0xf,0x38,0x70,
+  0xf,0x38,0x71, 0xf,0x38,0x72, 0x6,0x45,0x56, 0x6,0x45,0x54,
+  0x6,0x45,0x55, 0x6,0x45,0x52, 0x6,0x45,0x5d, 0x6,0x45,0x58,
+  0x6,0x45,0x53, 0x5,0x36,0x2a, 0x4,0x35,0x67, 0x6,0x45,0x59,
+  0x5,0x36,0x2d, 0x5,0x36,0x28, 0xf,0x38,0x6f, 0x6,0x45,0x51,
+  0x5,0x3c,0x76, 0x5,0x3c,0x72, 0x5,0x3c,0x78, 0x5,0x3c,0x77,
+  0x4,0x3b,0x56, 0x6,0x4f,0x53, 0x4,0x3b,0x5a, 0x4,0x3b,0x58,
+  0x5,0x3c,0x79, 0x6,0x4f,0x52, 0x7,0x29,0x67, 0x6,0x4f,0x4d,
+  0x6,0x4f,0x4c, 0x6,0x4f,0x50, 0x6,0x4f,0x4f, 0x4,0x3b,0x5b,
+  0x6,0x4f,0x49, 0x6,0x4f,0x4b, 0xf,0x3f,0x62, 0x6,0x4f,0x51,
+  0x6,0x4f,0x54, 0x6,0x4f,0x55, 0x6,0x4f,0x4a, 0xf,0x3f,0x59,
+  0xf,0x3f,0x5a, 0xf,0x3f,0x5b, 0xf,0x3f,0x5c, 0xf,0x3f,0x5d,
+  0xf,0x3f,0x5f, 0xf,0x3f,0x60, 0xf,0x3f,0x61, 0x5,0x3c,0x75,
+  0x6,0x4f,0x4e, 0x5,0x3c,0x74, 0x5,0x3c,0x73, 0x4,0x3b,0x59,
+  0x6,0x4f,0x56, 0x6,0x59,0x40, 0x6,0x59,0x34, 0x6,0x59,0x3d,
+  0x6,0x59,0x30, 0x4,0x41,0x31, 0x4,0x41,0x30, 0x6,0x59,0x2e,
+  0x5,0x43,0x59, 0x6,0x59,0x31, 0x6,0x59,0x41, 0x6,0x59,0x3b,
+  0x6,0x59,0x3f, 0x6,0x59,0x37, 0x6,0x59,0x35, 0x6,0x59,0x43,
+  0x6,0x59,0x42, 0x5,0x3c,0x7a, 0x4,0x41,0x32, 0x6,0x59,0x33,
+  0x6,0x59,0x3e, 0xf,0x45,0x62, 0xf,0x45,0x63, 0xf,0x45,0x64,
+  0xf,0x45,0x65, 0xf,0x45,0x66, 0xf,0x45,0x67, 0xf,0x45,0x68,
+  0xf,0x45,0x69, 0xf,0x45,0x6a, 0xf,0x45,0x6b, 0xf,0x45,0x6c,
+  0x6,0x59,0x32, 0x6,0x59,0x36, 0x6,0x59,0x3c, 0x6,0x59,0x39,
+  0x6,0x59,0x38, 0x6,0x59,0x3a, 0x6,0x59,0x2f, 0x5,0x43,0x58,
+  0x5,0x43,0x57, 0x5,0x43,0x56, 0x6,0x63,0x35, 0x6,0x63,0x34,
+  0x6,0x63,0x37, 0x6,0x63,0x32, 0x6,0x63,0x3a, 0x5,0x4a,0x54,
+  0x6,0x63,0x36, 0x6,0x63,0x38, 0x6,0x63,0x3c, 0x5,0x4a,0x53,
+  0x5,0x4a,0x56, 0x6,0x63,0x33, 0x6,0x63,0x3b, 0x7,0x3c,0x55,
+  0xf,0x4c,0x69, 0xf,0x4c,0x6a, 0xf,0x4c,0x6c, 0xf,0x4c,0x6d,
+  0xf,0x4c,0x6e, 0xf,0x4c,0x6f, 0xf,0x4c,0x70, 0xf,0x4c,0x71,
+  0xf,0x4c,0x72, 0x6,0x63,0x39, 0x7,0x3c,0x56, 0x7,0x3c,0x57,
+  0x7,0x3c,0x58, 0x5,0x4a,0x55, 0x7,0x29,0x6e, 0x7,0x29,0x6c,
+  0x7,0x29,0x72, 0x7,0x29,0x69, 0x7,0x29,0x6b, 0x4,0x4e,0x2f,
+  0x5,0x51,0x64, 0x4,0x4e,0x30, 0x5,0x51,0x68, 0x5,0x51,0x65,
+  0x4,0x4e,0x34, 0x7,0x29,0x70, 0xf,0x52,0x4e, 0xf,0x52,0x4f,
+  0xf,0x52,0x50, 0xf,0x52,0x51, 0xf,0x52,0x52, 0x5,0x51,0x6d,
+  0x7,0x29,0x6a, 0x7,0x29,0x6f, 0x7,0x29,0x74, 0x7,0x29,0x75,
+  0x7,0x29,0x71, 0x7,0x29,0x73, 0x7,0x43,0x74, 0x7,0x29,0x68,
+  0x7,0x43,0x75, 0x7,0x29,0x6d, 0x5,0x51,0x69, 0x5,0x51,0x67,
+  0x5,0x51,0x6c, 0x5,0x51,0x66, 0x5,0x51,0x6a, 0x5,0x51,0x6b,
+  0x5,0x51,0x63, 0x7,0x34,0x46, 0x5,0x58,0x7c, 0x5,0x58,0x7b,
+  0x5,0x58,0x79, 0x7,0x34,0x41, 0x5,0x58,0x77, 0x7,0x34,0x45,
+  0x7,0x34,0x3e, 0x7,0x34,0x47, 0x4,0x54,0x36, 0x7,0x34,0x42,
+  0x7,0x34,0x44, 0x7,0x34,0x39, 0x7,0x34,0x4a, 0x7,0x4a,0x77,
+  0x7,0x34,0x3c, 0x7,0x34,0x40, 0x7,0x34,0x4c, 0xf,0x58,0x3c,
+  0xf,0x58,0x3d, 0xf,0x58,0x3e, 0x7,0x34,0x3d, 0xf,0x58,0x3f,
+  0x7,0x2c,0x5a, 0x7,0x34,0x48, 0x7,0x34,0x3b, 0x7,0x34,0x3a,
+  0x7,0x34,0x43, 0x7,0x34,0x4b, 0x5,0x58,0x78, 0x5,0x58,0x7d,
+  0x5,0x58,0x7a, 0x7,0x34,0x3f, 0x5,0x58,0x76, 0x5,0x5f,0x2f,
+  0x4,0x59,0x3a, 0x7,0x3c,0x60, 0x5,0x5f,0x33, 0x7,0x3c,0x5d,
+  0x5,0x5f,0x34, 0x7,0x3c,0x5b, 0x7,0x50,0x57, 0x7,0x34,0x49,
+  0x7,0x3c,0x62, 0x7,0x3c,0x5e, 0x5,0x5f,0x32, 0x5,0x5f,0x35,
+  0xf,0x5d,0x24, 0xf,0x5d,0x26, 0xf,0x5d,0x27, 0xf,0x5d,0x28,
+  0x7,0x3c,0x59, 0x7,0x3c,0x5c, 0x7,0x3c,0x5f, 0x7,0x3c,0x63,
+  0xf,0x5d,0x25, 0x5,0x5f,0x36, 0x5,0x5f,0x37, 0x5,0x5f,0x31,
+  0x5,0x5f,0x30, 0x7,0x3c,0x5a, 0x5,0x65,0x3d, 0x7,0x43,0x7c,
+  0x4,0x5e,0x22, 0x7,0x43,0x7a, 0x5,0x65,0x3a, 0x7,0x43,0x78,
+  0xf,0x61,0x2b, 0xf,0x61,0x2c, 0xf,0x61,0x2d, 0x7,0x44,0x21,
+  0x7,0x43,0x7e, 0x5,0x65,0x39, 0x7,0x43,0x7d, 0x7,0x43,0x76,
+  0x7,0x43,0x79, 0x5,0x65,0x3c, 0x5,0x65,0x3b, 0x5,0x65,0x38,
+  0x7,0x43,0x7b, 0x7,0x4b,0x21, 0x7,0x4b,0x22, 0x7,0x4a,0x7e,
+  0xf,0x64,0x2a, 0xf,0x64,0x2b, 0xf,0x64,0x2d, 0xf,0x64,0x2e,
+  0x7,0x4a,0x79, 0x7,0x4a,0x7a, 0x7,0x4a,0x7d, 0x7,0x4a,0x7b,
+  0x7,0x4a,0x7c, 0x7,0x4a,0x78, 0x5,0x6a,0x21, 0x5,0x69,0x7e,
+  0xf,0x64,0x2c, 0x7,0x50,0x5a, 0x5,0x6e,0x29, 0x7,0x50,0x59,
+  0x5,0x6e,0x27, 0xf,0x66,0x4c, 0x7,0x50,0x58, 0x5,0x6e,0x28,
+  0x7,0x5d,0x22, 0x4,0x67,0x55, 0x7,0x55,0x4f, 0x5,0x71,0x51,
+  0x7,0x55,0x50, 0x7,0x55,0x4e, 0xf,0x68,0x55, 0xf,0x68,0x56,
+  0xf,0x68,0x57, 0xf,0x68,0x58, 0x5,0x71,0x4f, 0x5,0x71,0x50,
+  0x5,0x69,0x7d, 0x7,0x55,0x51, 0x5,0x71,0x52, 0x5,0x74,0x52,
+  0x4,0x6b,0x25, 0x7,0x59,0x5b, 0x7,0x59,0x5a, 0x7,0x59,0x59,
+  0x7,0x5d,0x23, 0x7,0x5d,0x25, 0x7,0x5d,0x24, 0x7,0x62,0x6a,
+  0x7,0x5f,0x6a, 0x7,0x5f,0x69, 0x5,0x78,0x3d, 0x7,0x61,0x55,
+  0x7,0x62,0x6b, 0x7,0x65,0x68, 0x6,0x29,0x30, 0x5,0x21,0x7c,
+  0x5,0x23,0x2c, 0x5,0x23,0x2b, 0x5,0x23,0x2d, 0x5,0x23,0x2a,
+  0x4,0x23,0x31, 0x6,0x25,0x5a, 0x6,0x25,0x5c, 0x4,0x23,0x33,
+  0x4,0x25,0x27, 0x5,0x24,0x79, 0x4,0x25,0x26, 0x4,0x25,0x28,
+  0x4,0x25,0x25, 0x6,0x29,0x33, 0x4,0x25,0x2a, 0x5,0x24,0x7a,
+  0x4,0x35,0x71, 0x6,0x29,0x32, 0xf,0x25,0x35, 0xf,0x25,0x36,
+  0xf,0x25,0x37, 0xf,0x38,0x73, 0xf,0x38,0x75, 0x6,0x45,0x61,
+  0x6,0x45,0x5f, 0x6,0x45,0x60, 0x6,0x29,0x31, 0x4,0x25,0x29,
+  0x4,0x28,0x2e, 0x6,0x45,0x5e, 0x4,0x28,0x2a, 0x4,0x28,0x2d,
+  0x4,0x28,0x2c, 0x6,0x34,0x69, 0x4,0x28,0x2f, 0x5,0x27,0x72,
+  0x5,0x27,0x73, 0x6,0x4f,0x58, 0x6,0x2e,0x43, 0xf,0x28,0x76,
+  0xf,0x28,0x78, 0xf,0x28,0x79, 0xf,0x28,0x7c, 0x6,0x4f,0x5a,
+  0x6,0x2e,0x41, 0x6,0x2e,0x42, 0x6,0x2e,0x40, 0xf,0x28,0x77,
+  0xf,0x28,0x7b, 0x6,0x4f,0x57, 0x6,0x4f,0x59, 0x5,0x27,0x74,
+  0x5,0x2b,0x5a, 0x5,0x2b,0x59, 0x5,0x2b,0x58, 0x4,0x2b,0x57,
+  0x4,0x2b,0x55, 0x5,0x2b,0x5f, 0x4,0x41,0x33, 0x5,0x2b,0x5b,
+  0xf,0x2d,0x5a, 0xf,0x45,0x6e, 0x6,0x59,0x45, 0x6,0x59,0x44,
+  0x6,0x59,0x46, 0x6,0x34,0x6c, 0x6,0x34,0x66, 0x6,0x34,0x67,
+  0x6,0x34,0x68, 0x6,0x34,0x6b, 0x6,0x34,0x6a, 0x5,0x2b,0x5e,
+  0x5,0x2b,0x5c, 0x5,0x2b,0x5d, 0x5,0x30,0x61, 0x5,0x30,0x5d,
+  0x4,0x30,0x36, 0x6,0x3c,0x5b, 0x5,0x30,0x65, 0x5,0x30,0x66,
+  0x5,0x30,0x5e, 0x5,0x30,0x63, 0x5,0x30,0x5f, 0x4,0x30,0x35,
+  0x6,0x3c,0x5d, 0x4,0x30,0x37, 0x6,0x3c,0x5f, 0x6,0x63,0x3d,
+  0x6,0x63,0x3f, 0x6,0x63,0x40, 0x6,0x3c,0x5c, 0x6,0x3c,0x5e,
+  0x6,0x3c,0x5a, 0x5,0x30,0x62, 0x5,0x30,0x64, 0x5,0x30,0x60,
+  0x5,0x30,0x67, 0x6,0x63,0x3e, 0x6,0x3c,0x59, 0xf,0x32,0x62,
+  0xf,0x32,0x63, 0xf,0x32,0x64, 0x5,0x51,0x6e, 0x4,0x4e,0x36,
+  0x4,0x35,0x6f, 0x5,0x36,0x31, 0x5,0x36,0x30, 0x5,0x36,0x35,
+  0x5,0x36,0x2e, 0x5,0x36,0x32, 0x4,0x35,0x6d, 0x6,0x45,0x66,
+  0x5,0x36,0x34, 0x7,0x29,0x7a, 0x7,0x29,0x79, 0x6,0x45,0x68,
+  0xf,0x32,0x61, 0xf,0x38,0x76, 0xf,0x52,0x54, 0x7,0x29,0x76,
+  0x7,0x29,0x77, 0x7,0x29,0x7b, 0x7,0x29,0x78, 0x6,0x45,0x63,
+  0x6,0x45,0x65, 0x6,0x45,0x64, 0x6,0x45,0x62, 0xf,0x33,0x3c,
+  0x6,0x45,0x67, 0x5,0x36,0x2f, 0x5,0x36,0x33, 0x5,0x30,0x68,
+  0x4,0x3b,0x5f, 0x5,0x3d,0x23, 0x5,0x3c,0x7e, 0x5,0x3d,0x22,
+  0x4,0x3b,0x5d, 0x5,0x3d,0x24, 0x6,0x4f,0x64, 0x5,0x3d,0x21,
+  0x5,0x43,0x67, 0x5,0x3c,0x7d, 0x5,0x3c,0x7c, 0x6,0x4f,0x62,
+  0x6,0x4f,0x5b, 0x4,0x3b,0x5c, 0xf,0x3f,0x63, 0xf,0x3f,0x64,
+  0xf,0x3f,0x65, 0xf,0x58,0x41, 0x7,0x34,0x4e, 0x6,0x4f,0x5d,
+  0x6,0x4f,0x5c, 0x6,0x4f,0x5e, 0x6,0x4f,0x5f, 0x6,0x4f,0x60,
+  0x6,0x4f,0x61, 0xf,0x3f,0x66, 0x6,0x4f,0x63, 0x7,0x34,0x4d,
+  0x5,0x3c,0x7b, 0x7,0x3c,0x64, 0x5,0x43,0x5b, 0x5,0x43,0x60,
+  0x5,0x43,0x63, 0x5,0x43,0x5e, 0x5,0x43,0x5d, 0x4,0x41,0x35,
+  0x6,0x63,0x41, 0x5,0x43,0x5c, 0x5,0x43,0x62, 0x5,0x43,0x5f,
+  0x5,0x43,0x64, 0x5,0x43,0x66, 0x4,0x41,0x37, 0x5,0x43,0x65,
+  0x6,0x59,0x49, 0x5,0x43,0x5a, 0xf,0x45,0x6f, 0x6,0x59,0x48,
+  0x6,0x59,0x4b, 0x5,0x43,0x61, 0x4,0x47,0x6f, 0x5,0x4a,0x5d,
+  0x5,0x4a,0x5c, 0x5,0x4a,0x59, 0x5,0x4a,0x58, 0x5,0x4a,0x63,
+  0x5,0x4a,0x5f, 0x5,0x4a,0x5b, 0x6,0x63,0x46, 0x6,0x63,0x43,
+  0x6,0x63,0x42, 0x5,0x4a,0x61, 0x5,0x4a,0x62, 0x7,0x44,0x22,
+  0x7,0x44,0x24, 0x7,0x44,0x23, 0x7,0x44,0x25, 0x6,0x63,0x45,
+  0x5,0x4a,0x57, 0x4,0x47,0x72, 0x6,0x63,0x44, 0x5,0x65,0x3e,
+  0x5,0x4a,0x5a, 0x5,0x4a,0x5e, 0x5,0x4a,0x64, 0x4,0x4e,0x38,
+  0x7,0x4b,0x23, 0x5,0x51,0x72, 0x7,0x2a,0x21, 0x4,0x4e,0x37,
+  0x5,0x51,0x73, 0x4,0x4e,0x39, 0x5,0x59,0x28, 0x5,0x51,0x6f,
+  0x5,0x51,0x70, 0x7,0x29,0x7e, 0x7,0x2a,0x22, 0x4,0x4e,0x3a,
+  0xf,0x52,0x53, 0xf,0x52,0x55, 0xf,0x52,0x56, 0x7,0x4b,0x26,
+  0x7,0x4b,0x24, 0x7,0x2a,0x23, 0x7,0x2a,0x25, 0x7,0x2a,0x26,
+  0x7,0x2a,0x24, 0x7,0x29,0x7c, 0x7,0x29,0x7d, 0x5,0x51,0x74,
+  0x7,0x34,0x50, 0x5,0x51,0x71, 0x7,0x4b,0x25, 0x5,0x6e,0x2a,
+  0x5,0x59,0x25, 0x5,0x59,0x26, 0x7,0x50,0x5c, 0x4,0x54,0x38,
+  0x7,0x34,0x4f, 0x5,0x59,0x21, 0x5,0x59,0x24, 0x7,0x34,0x52,
+  0x5,0x59,0x22, 0x5,0x59,0x23, 0x4,0x54,0x39, 0x7,0x34,0x51,
+  0xf,0x58,0x40, 0x7,0x50,0x5d, 0x7,0x50,0x5b, 0x5,0x6e,0x2b,
+  0x7,0x3c,0x65, 0x7,0x3c,0x69, 0x5,0x5f,0x38, 0x4,0x59,0x3b,
+  0x5,0x5f,0x39, 0x7,0x55,0x52, 0x7,0x55,0x53, 0x7,0x55,0x54,
+  0x7,0x3c,0x67, 0x7,0x3c,0x6a, 0x7,0x3c,0x66, 0x5,0x5f,0x3b,
+  0x5,0x5f,0x3a, 0x7,0x55,0x55, 0x7,0x3c,0x68, 0x5,0x65,0x40,
+  0x7,0x44,0x26, 0x7,0x44,0x27, 0x5,0x65,0x41, 0x5,0x6a,0x25,
+  0x5,0x65,0x44, 0x7,0x44,0x29, 0x7,0x44,0x28, 0x5,0x65,0x42,
+  0x5,0x65,0x43, 0x7,0x59,0x5c, 0x5,0x65,0x3f, 0x7,0x44,0x2a,
+  0x7,0x4b,0x28, 0x7,0x44,0x2b, 0x5,0x6a,0x24, 0x7,0x4b,0x27,
+  0x5,0x6a,0x23, 0x7,0x4b,0x2a, 0x7,0x4b,0x29, 0x4,0x61,0x60,
+  0x5,0x59,0x27, 0x5,0x6a,0x22, 0x4,0x64,0x64, 0x5,0x6e,0x2c,
+  0x7,0x50,0x5f, 0x7,0x50,0x61, 0x7,0x50,0x5e, 0x7,0x50,0x60,
+  0x4,0x67,0x56, 0xf,0x68,0x59, 0x7,0x55,0x56, 0x7,0x55,0x57,
+  0x7,0x59,0x5d, 0x7,0x55,0x58, 0xf,0x68,0x5a, 0x7,0x5d,0x26,
+  0x7,0x5f,0x6b, 0x7,0x5f,0x6c, 0x5,0x7b,0x4b, 0x7,0x63,0x78,
+  0x4,0x30,0x39, 0xf,0x32,0x65, 0x6,0x3c,0x60, 0x5,0x36,0x38,
+  0x5,0x36,0x37, 0x6,0x45,0x72, 0x6,0x45,0x6e, 0x5,0x36,0x39,
+  0x4,0x35,0x76, 0x6,0x45,0x6c, 0x6,0x45,0x73, 0x6,0x45,0x69,
+  0x4,0x35,0x77, 0x5,0x36,0x3a, 0x6,0x45,0x70, 0x6,0x45,0x6f,
+  0x6,0x45,0x6a, 0x6,0x45,0x6b, 0xf,0x38,0x77, 0x6,0x45,0x71,
+  0x4,0x35,0x79, 0x6,0x45,0x6d, 0x6,0x45,0x74, 0x6,0x4f,0x6b,
+  0x5,0x3d,0x25, 0x5,0x3d,0x26, 0x4,0x3b,0x65, 0x6,0x4f,0x69,
+  0x5,0x43,0x6a, 0x4,0x3b,0x62, 0x4,0x3b,0x63, 0x6,0x4f,0x6a,
+  0x6,0x4f,0x66, 0x6,0x4f,0x65, 0x4,0x3b,0x61, 0x6,0x4f,0x67,
+  0x6,0x4f,0x68, 0xf,0x3f,0x68, 0xf,0x3f,0x69, 0xf,0x3f,0x6a,
+  0xf,0x3f,0x6b, 0x6,0x4f,0x6c, 0x5,0x43,0x69, 0x5,0x43,0x6c,
+  0x5,0x43,0x68, 0x6,0x59,0x4e, 0x6,0x59,0x4d, 0x5,0x43,0x6b,
+  0x6,0x63,0x4a, 0x5,0x4a,0x66, 0x5,0x4a,0x65, 0xf,0x4c,0x73,
+  0xf,0x4c,0x74, 0xf,0x4c,0x75, 0xf,0x4c,0x77, 0x6,0x63,0x49,
+  0x6,0x63,0x48, 0xf,0x4c,0x78, 0x6,0x63,0x47, 0x7,0x2a,0x28,
+  0x5,0x51,0x78, 0x7,0x2a,0x2c, 0x5,0x51,0x79, 0x5,0x51,0x75,
+  0x7,0x2a,0x30, 0x5,0x51,0x76, 0x7,0x2a,0x2f, 0x7,0x2a,0x2e,
+  0x7,0x2a,0x2d, 0x7,0x2a,0x29, 0x7,0x2a,0x27, 0x5,0x51,0x77,
+  0xf,0x4c,0x76, 0xf,0x52,0x58, 0xf,0x52,0x59, 0x7,0x2a,0x2a,
+  0x7,0x2a,0x2b, 0x7,0x2a,0x32, 0x7,0x2a,0x31, 0x7,0x34,0x56,
+  0x7,0x34,0x55, 0x5,0x59,0x29, 0x7,0x34,0x58, 0x5,0x59,0x2c,
+  0x7,0x34,0x5a, 0x4,0x54,0x41, 0x7,0x34,0x5f, 0x4,0x54,0x3e,
+  0x4,0x54,0x3f, 0x7,0x34,0x5e, 0x5,0x59,0x2a, 0x7,0x34,0x57,
+  0x7,0x34,0x5d, 0x7,0x34,0x5c, 0x5,0x59,0x2b, 0xf,0x58,0x42,
+  0xf,0x58,0x43, 0x7,0x34,0x59, 0x7,0x34,0x5b, 0x7,0x34,0x53,
+  0x7,0x34,0x60, 0x5,0x5f,0x41, 0x5,0x5f,0x3f, 0x5,0x5f,0x40,
+  0x5,0x5f,0x43, 0x4,0x59,0x40, 0x7,0x3c,0x6c, 0x5,0x5f,0x42,
+  0x4,0x59,0x3e, 0x7,0x3c,0x6e, 0x5,0x5f,0x3e, 0x7,0x3c,0x74,
+  0x5,0x5f,0x44, 0x7,0x3c,0x6d, 0x7,0x3c,0x73, 0xf,0x5d,0x2a,
+  0xf,0x5d,0x2b, 0xf,0x5d,0x2c, 0x7,0x3c,0x6f, 0x7,0x3c,0x71,
+  0x7,0x3c,0x72, 0x5,0x5f,0x3d, 0x5,0x65,0x46, 0x5,0x65,0x47,
+  0x5,0x65,0x49, 0x7,0x44,0x33, 0x7,0x44,0x2f, 0x4,0x5e,0x23,
+  0x7,0x44,0x2c, 0x5,0x65,0x48, 0x4,0x5e,0x26, 0x5,0x65,0x4a,
+  0x7,0x3c,0x75, 0x4,0x5e,0x25, 0x7,0x44,0x32, 0x5,0x65,0x4b,
+  0x7,0x44,0x35, 0x7,0x44,0x36, 0x7,0x44,0x2d, 0xf,0x61,0x2e,
+  0x7,0x44,0x31, 0x7,0x44,0x2e, 0x5,0x65,0x4c, 0x7,0x44,0x30,
+  0x7,0x4b,0x2f, 0x7,0x4b,0x2c, 0x5,0x6a,0x2e, 0x5,0x6a,0x2b,
+  0x5,0x6a,0x27, 0x5,0x6a,0x2a, 0x5,0x6a,0x29, 0x5,0x6a,0x2f,
+  0x5,0x6a,0x2c, 0x5,0x6a,0x28, 0x5,0x6a,0x2d, 0x7,0x4b,0x2d,
+  0x7,0x4b,0x2e, 0x7,0x4b,0x30, 0x7,0x4b,0x2b, 0x7,0x44,0x34,
+  0x5,0x6a,0x30, 0x5,0x6a,0x26, 0x7,0x50,0x62, 0x5,0x6e,0x31,
+  0x5,0x6e,0x2e, 0x5,0x6e,0x2f, 0x5,0x6e,0x2d, 0x5,0x6e,0x30,
+  0x7,0x50,0x63, 0x7,0x50,0x64, 0xf,0x66,0x4e, 0x7,0x50,0x65,
+  0x7,0x50,0x67, 0x7,0x50,0x66, 0x4,0x67,0x59, 0x4,0x67,0x57,
+  0x4,0x67,0x58, 0x5,0x71,0x53, 0x7,0x55,0x5a, 0xf,0x68,0x5b,
+  0x7,0x55,0x59, 0x7,0x59,0x5e, 0x7,0x59,0x5f, 0x7,0x59,0x62,
+  0x5,0x74,0x53, 0x7,0x59,0x61, 0x7,0x59,0x60, 0xf,0x69,0x7d,
+  0x7,0x5d,0x27, 0x7,0x5d,0x29, 0x5,0x76,0x5a, 0x7,0x5d,0x2b,
+  0x7,0x5d,0x2a, 0x5,0x76,0x5b, 0x7,0x5d,0x28, 0xf,0x6a,0x7a,
+  0x5,0x78,0x3f, 0x4,0x6c,0x2f, 0x7,0x5f,0x6d, 0x7,0x5f,0x6e,
+  0x5,0x78,0x3e, 0x7,0x62,0x6c, 0x5,0x7a,0x7b, 0x7,0x63,0x7a,
+  0x7,0x63,0x79, 0x7,0x64,0x66, 0x7,0x64,0x65, 0x7,0x65,0x78,
+  0x7,0x65,0x79, 0x6,0x34,0x6e, 0x5,0x3d,0x27, 0x5,0x36,0x3b,
+  0x6,0x63,0x4b, 0x6,0x63,0x4c, 0x5,0x51,0x7a, 0x7,0x2a,0x34,
+  0x7,0x2a,0x33, 0x5,0x59,0x2d, 0x7,0x34,0x61, 0x5,0x5f,0x45,
+  0xf,0x5d,0x2d, 0x7,0x44,0x37, 0xf,0x66,0x4f, 0xf,0x68,0x5c,
+  0x5,0x74,0x54, 0x5,0x36,0x3c, 0x6,0x3c,0x61, 0x6,0x45,0x75,
+  0x6,0x4f,0x6e, 0x5,0x3d,0x29, 0x5,0x3d,0x28, 0xf,0x45,0x70,
+  0x6,0x63,0x4d, 0x7,0x2a,0x35, 0x5,0x5f,0x46, 0xf,0x61,0x2f,
+  0x5,0x65,0x4d, 0xf,0x68,0x5d, 0x5,0x71,0x54, 0x7,0x55,0x5b,
+  0x6,0x3c,0x64, 0xf,0x32,0x66, 0x6,0x3c,0x62, 0x5,0x36,0x3d,
+  0x6,0x45,0x76, 0x6,0x45,0x77, 0xf,0x38,0x78, 0x6,0x4f,0x73,
+  0x6,0x4f,0x74, 0x6,0x4f,0x75, 0x6,0x4f,0x71, 0x6,0x4f,0x72,
+  0x6,0x4f,0x78, 0x6,0x4f,0x76, 0x6,0x4f,0x70, 0x6,0x4f,0x79,
+  0xf,0x3f,0x6c, 0xf,0x3f,0x6d, 0xf,0x3f,0x6e, 0xf,0x3f,0x6f,
+  0xf,0x3f,0x72, 0xf,0x3f,0x74, 0xf,0x3f,0x71, 0x6,0x4f,0x77,
+  0xf,0x3f,0x70, 0x4,0x41,0x47, 0x5,0x43,0x6e, 0x4,0x41,0x45,
+  0x4,0x41,0x44, 0x6,0x59,0x53, 0x6,0x59,0x4f, 0xf,0x45,0x71,
+  0xf,0x45,0x75, 0xf,0x45,0x76, 0xf,0x45,0x77, 0xf,0x45,0x78,
+  0x6,0x59,0x55, 0x6,0x59,0x51, 0x6,0x59,0x52, 0xf,0x45,0x79,
+  0x6,0x59,0x54, 0x6,0x59,0x50, 0xf,0x45,0x74, 0x5,0x4a,0x67,
+  0x5,0x4a,0x68, 0x6,0x63,0x52, 0x5,0x4a,0x69, 0xf,0x4c,0x68,
+  0xf,0x4c,0x79, 0xf,0x4c,0x7b, 0xf,0x4c,0x7c, 0xf,0x4c,0x7d,
+  0xf,0x4d,0x21, 0xf,0x4d,0x23, 0xf,0x4d,0x24, 0xf,0x4d,0x25,
+  0xf,0x4d,0x28, 0xf,0x4d,0x29, 0x6,0x63,0x4e, 0x4,0x47,0x7a,
+  0x6,0x63,0x50, 0x6,0x63,0x51, 0xf,0x4d,0x2a, 0x6,0x63,0x54,
+  0xf,0x4c,0x7a, 0x6,0x63,0x55, 0xf,0x4d,0x2b, 0xf,0x4d,0x26,
+  0xf,0x4c,0x7e, 0x7,0x2a,0x3a, 0x4,0x4e,0x42, 0x5,0x51,0x7e,
+  0x7,0x2a,0x41, 0x7,0x2a,0x3b, 0x7,0x2a,0x40, 0x7,0x2a,0x39,
+  0x5,0x51,0x7d, 0x7,0x2a,0x43, 0x7,0x2a,0x44, 0x7,0x2a,0x3d,
+  0x5,0x51,0x7b, 0x7,0x2a,0x37, 0xf,0x52,0x5b, 0xf,0x52,0x5d,
+  0xf,0x52,0x5f, 0xf,0x52,0x60, 0xf,0x52,0x63, 0xf,0x52,0x64,
+  0xf,0x52,0x65, 0xf,0x52,0x67, 0xf,0x52,0x68, 0xf,0x52,0x69,
+  0xf,0x52,0x6a, 0xf,0x52,0x6c, 0xf,0x52,0x6d, 0x7,0x2a,0x42,
+  0x7,0x2a,0x3c, 0x7,0x2a,0x3f, 0x7,0x2a,0x45, 0xf,0x52,0x5e,
+  0x7,0x2a,0x36, 0x5,0x51,0x7c, 0xf,0x52,0x62, 0xf,0x52,0x66,
+  0xf,0x52,0x5a, 0x5,0x59,0x34, 0x5,0x59,0x37, 0x5,0x59,0x32,
+  0x4,0x54,0x47, 0x5,0x59,0x2e, 0x5,0x59,0x30, 0x7,0x34,0x65,
+  0x7,0x34,0x64, 0x7,0x34,0x6b, 0x7,0x34,0x69, 0x7,0x34,0x67,
+  0x5,0x59,0x36, 0x4,0x54,0x44, 0x7,0x34,0x62, 0x7,0x34,0x6a,
+  0x7,0x34,0x68, 0x5,0x59,0x2f, 0x7,0x34,0x66, 0xf,0x52,0x5c,
+  0x5,0x59,0x33, 0xf,0x58,0x44, 0xf,0x58,0x46, 0xf,0x58,0x47,
+  0xf,0x58,0x49, 0xf,0x58,0x4a, 0xf,0x58,0x4b, 0xf,0x58,0x4d,
+  0xf,0x58,0x4e, 0xf,0x58,0x4f, 0xf,0x58,0x51, 0xf,0x58,0x53,
+  0xf,0x58,0x54, 0xf,0x58,0x56, 0xf,0x58,0x57, 0xf,0x58,0x5a,
+  0xf,0x58,0x5c, 0xf,0x58,0x5d, 0xf,0x58,0x5e, 0xf,0x58,0x60,
+  0xf,0x58,0x61, 0xf,0x58,0x63, 0xf,0x58,0x64, 0xf,0x58,0x50,
+  0xf,0x58,0x52, 0xf,0x58,0x5f, 0xf,0x58,0x45, 0xf,0x58,0x58,
+  0x5,0x59,0x38, 0x5,0x59,0x31, 0x5,0x5f,0x48, 0x5,0x5f,0x49,
+  0x7,0x3c,0x79, 0x4,0x59,0x43, 0x5,0x5f,0x4c, 0x5,0x5f,0x4b,
+  0x7,0x3c,0x7c, 0x5,0x59,0x35, 0x5,0x5f,0x47, 0x7,0x3c,0x7a,
+  0x5,0x5f,0x4a, 0x5,0x5f,0x4f, 0x7,0x3c,0x7e, 0x7,0x3d,0x24,
+  0x7,0x3d,0x21, 0x7,0x3d,0x25, 0xf,0x5d,0x2f, 0xf,0x5d,0x30,
+  0xf,0x5d,0x34, 0xf,0x5d,0x35, 0xf,0x5d,0x36, 0xf,0x5d,0x37,
+  0xf,0x5d,0x3a, 0xf,0x5d,0x3b, 0xf,0x5d,0x3c, 0xf,0x5d,0x3d,
+  0xf,0x5d,0x3f, 0xf,0x5d,0x40, 0xf,0x5d,0x42, 0xf,0x5d,0x43,
+  0xf,0x5d,0x44, 0xf,0x5d,0x45, 0xf,0x5d,0x46, 0xf,0x5d,0x47,
+  0xf,0x5d,0x48, 0xf,0x5d,0x49, 0xf,0x5d,0x4b, 0xf,0x5d,0x4e,
+  0xf,0x5d,0x4f, 0x7,0x3c,0x7d, 0x7,0x3d,0x22, 0x7,0x3c,0x78,
+  0x7,0x3d,0x23, 0x4,0x59,0x48, 0xf,0x5d,0x4a, 0xf,0x5d,0x38,
+  0xf,0x5d,0x33, 0xf,0x5d,0x31, 0x5,0x5f,0x4e, 0x5,0x5f,0x4d,
+  0xf,0x5d,0x2e, 0x5,0x65,0x51, 0x4,0x5e,0x2d, 0x4,0x5e,0x2e,
+  0x5,0x65,0x52, 0x4,0x5e,0x28, 0x4,0x5e,0x2a, 0x7,0x44,0x38,
+  0x5,0x65,0x50, 0x5,0x65,0x4e, 0x5,0x6a,0x31, 0x7,0x44,0x3a,
+  0x5,0x65,0x53, 0x4,0x5e,0x30, 0x7,0x44,0x40, 0x7,0x44,0x3f,
+  0x5,0x65,0x54, 0x5,0x65,0x55, 0x7,0x44,0x41, 0xf,0x61,0x31,
+  0xf,0x61,0x32, 0xf,0x61,0x34, 0xf,0x61,0x36, 0xf,0x61,0x37,
+  0xf,0x61,0x38, 0xf,0x61,0x3a, 0xf,0x61,0x3c, 0xf,0x61,0x3d,
+  0xf,0x61,0x3e, 0xf,0x61,0x40, 0xf,0x61,0x41, 0xf,0x61,0x42,
+  0xf,0x61,0x44, 0xf,0x61,0x45, 0xf,0x61,0x46, 0x7,0x44,0x3b,
+  0x7,0x44,0x3c, 0x7,0x44,0x3e, 0x7,0x44,0x3d, 0xf,0x61,0x30,
+  0xf,0x61,0x39, 0xf,0x61,0x35, 0xf,0x5f,0x5d, 0x4,0x61,0x6b,
+  0x7,0x4b,0x33, 0x7,0x4b,0x37, 0x5,0x6a,0x32, 0x7,0x4b,0x34,
+  0x5,0x6a,0x34, 0x7,0x4b,0x32, 0x7,0x4b,0x3a, 0x7,0x4b,0x36,
+  0x7,0x4b,0x39, 0x7,0x4b,0x3b, 0xf,0x64,0x31, 0xf,0x64,0x32,
+  0xf,0x64,0x33, 0xf,0x64,0x35, 0xf,0x64,0x36, 0xf,0x64,0x38,
+  0xf,0x64,0x39, 0xf,0x64,0x3a, 0xf,0x64,0x3b, 0xf,0x64,0x3c,
+  0xf,0x64,0x3d, 0xf,0x64,0x3f, 0xf,0x64,0x40, 0xf,0x64,0x41,
+  0xf,0x64,0x42, 0xf,0x64,0x43, 0xf,0x64,0x44, 0xf,0x64,0x45,
+  0x7,0x4b,0x3c, 0x7,0x4b,0x35, 0x7,0x4b,0x38, 0x4,0x61,0x6a,
+  0x7,0x4b,0x31, 0x5,0x65,0x56, 0xf,0x64,0x3e, 0x4,0x64,0x68,
+  0x7,0x50,0x6d, 0x7,0x50,0x6e, 0x5,0x6e,0x38, 0x7,0x50,0x72,
+  0x5,0x6e,0x33, 0x4,0x64,0x6a, 0x5,0x6e,0x36, 0x5,0x6e,0x32,
+  0x7,0x50,0x70, 0x7,0x50,0x68, 0x7,0x50,0x69, 0x5,0x6e,0x37,
+  0x4,0x64,0x6e, 0x7,0x50,0x71, 0x5,0x6e,0x34, 0xf,0x66,0x50,
+  0xf,0x66,0x51, 0xf,0x66,0x53, 0xf,0x66,0x54, 0xf,0x66,0x55,
+  0xf,0x66,0x56, 0xf,0x66,0x58, 0xf,0x66,0x59, 0xf,0x66,0x5a,
+  0xf,0x66,0x5b, 0xf,0x66,0x5d, 0xf,0x66,0x5f, 0xf,0x66,0x60,
+  0xf,0x66,0x61, 0xf,0x66,0x62, 0xf,0x66,0x63, 0xf,0x66,0x64,
+  0xf,0x66,0x66, 0xf,0x66,0x68, 0xf,0x66,0x6a, 0xf,0x66,0x6b,
+  0xf,0x66,0x6c, 0xf,0x66,0x6d, 0xf,0x66,0x6e, 0xf,0x66,0x6f,
+  0x7,0x50,0x6c, 0x7,0x50,0x6f, 0xf,0x66,0x52, 0xf,0x66,0x5c,
+  0xf,0x66,0x67, 0x7,0x50,0x6a, 0x7,0x55,0x62, 0x4,0x67,0x5e,
+  0x7,0x55,0x67, 0x7,0x55,0x61, 0x7,0x55,0x5c, 0x4,0x67,0x60,
+  0x4,0x67,0x5d, 0x7,0x55,0x60, 0x7,0x55,0x63, 0x7,0x55,0x69,
+  0x7,0x55,0x5e, 0xf,0x68,0x5e, 0xf,0x68,0x5f, 0xf,0x68,0x60,
+  0xf,0x68,0x61, 0xf,0x68,0x62, 0xf,0x68,0x63, 0xf,0x68,0x64,
+  0xf,0x68,0x65, 0xf,0x68,0x66, 0xf,0x68,0x67, 0xf,0x68,0x68,
+  0xf,0x68,0x69, 0xf,0x68,0x6b, 0xf,0x68,0x6c, 0xf,0x68,0x6d,
+  0xf,0x68,0x6e, 0xf,0x68,0x6f, 0x7,0x55,0x5f, 0x7,0x55,0x64,
+  0x7,0x55,0x65, 0x7,0x55,0x66, 0x7,0x55,0x5d, 0xf,0x68,0x6a,
+  0x5,0x74,0x57, 0x7,0x59,0x6b, 0x7,0x59,0x6a, 0x7,0x5d,0x30,
+  0x7,0x59,0x66, 0x7,0x59,0x64, 0xf,0x69,0x7e, 0xf,0x6a,0x21,
+  0xf,0x6a,0x22, 0xf,0x6a,0x23, 0xf,0x6a,0x24, 0xf,0x6a,0x25,
+  0xf,0x6a,0x26, 0xf,0x6a,0x27, 0xf,0x6a,0x28, 0xf,0x6a,0x29,
+  0xf,0x6a,0x2a, 0xf,0x6a,0x2b, 0x7,0x59,0x63, 0x7,0x59,0x65,
+  0x5,0x74,0x56, 0x5,0x76,0x5e, 0x4,0x6b,0x28, 0x5,0x76,0x5c,
+  0xf,0x6b,0x2f, 0x7,0x5d,0x2f, 0x7,0x5d,0x2d, 0x7,0x59,0x69,
+  0x7,0x5d,0x2c, 0xf,0x6a,0x7c, 0xf,0x6a,0x7d, 0xf,0x6b,0x23,
+  0xf,0x6b,0x24, 0xf,0x6b,0x25, 0xf,0x6b,0x26, 0xf,0x6b,0x29,
+  0xf,0x6b,0x2a, 0xf,0x6b,0x2b, 0xf,0x6b,0x2c, 0xf,0x6b,0x2d,
+  0xf,0x6b,0x2e, 0x7,0x5d,0x2e, 0x7,0x5d,0x31, 0xf,0x6b,0x21,
+  0xf,0x6a,0x7e, 0xf,0x6b,0x27, 0x5,0x78,0x40, 0x7,0x5f,0x70,
+  0x7,0x5f,0x71, 0x7,0x5f,0x72, 0x7,0x5f,0x6f, 0x7,0x5f,0x73,
+  0xf,0x6b,0x68, 0xf,0x6b,0x69, 0xf,0x6b,0x6a, 0xf,0x6b,0x6b,
+  0xf,0x6b,0x6c, 0x4,0x6d,0x63, 0x7,0x61,0x57, 0x7,0x61,0x58,
+  0xf,0x6b,0x6d, 0xf,0x6c,0x3c, 0xf,0x6c,0x3d, 0x7,0x61,0x56,
+  0x7,0x62,0x72, 0x7,0x62,0x6d, 0x7,0x62,0x6e, 0x7,0x62,0x74,
+  0x7,0x62,0x70, 0x7,0x62,0x6f, 0x5,0x7a,0x40, 0x7,0x62,0x73,
+  0x7,0x62,0x71, 0x7,0x62,0x75, 0xf,0x6c,0x52, 0xf,0x6c,0x53,
+  0xf,0x6c,0x54, 0xf,0x6c,0x55, 0xf,0x6c,0x56, 0xf,0x6c,0x57,
+  0xf,0x6c,0x58, 0xf,0x6c,0x40, 0x5,0x7a,0x41, 0x5,0x7a,0x7c,
+  0x7,0x63,0x7d, 0x7,0x63,0x7b, 0xf,0x6c,0x6f, 0x7,0x63,0x7c,
+  0xf,0x6d,0x23, 0x7,0x64,0x68, 0xf,0x6d,0x21, 0x7,0x64,0x67,
+  0x7,0x64,0x69, 0xf,0x6d,0x22, 0xf,0x6c,0x3e, 0x7,0x65,0x48,
+  0x7,0x65,0x49, 0xf,0x6d,0x29, 0x5,0x7c,0x21, 0xf,0x6d,0x35,
+  0xf,0x6d,0x38, 0xf,0x6d,0x39, 0x6,0x2e,0x44, 0x6,0x29,0x34,
+  0x5,0x2b,0x60, 0x5,0x36,0x3f, 0x6,0x45,0x7b, 0x5,0x36,0x3e,
+  0x5,0x36,0x40, 0x6,0x45,0x7a, 0xf,0x38,0x79, 0x6,0x45,0x79,
+  0x6,0x45,0x78, 0x5,0x3d,0x2a, 0x5,0x3d,0x2b, 0x4,0x3b,0x68,
+  0x6,0x4f,0x7a, 0x6,0x4f,0x7b, 0xf,0x3f,0x75, 0x6,0x59,0x59,
+  0x6,0x59,0x58, 0x4,0x41,0x4a, 0x6,0x59,0x56, 0x6,0x59,0x57,
+  0xf,0x45,0x7a, 0x5,0x43,0x70, 0x5,0x43,0x6f, 0x5,0x4a,0x6a,
+  0x4,0x47,0x7c, 0x6,0x63,0x56, 0x6,0x63,0x57, 0x5,0x4a,0x6b,
+  0x5,0x52,0x21, 0x5,0x52,0x23, 0x5,0x59,0x39, 0x5,0x52,0x22,
+  0x5,0x52,0x24, 0x5,0x52,0x25, 0xf,0x58,0x65, 0x5,0x59,0x3b,
+  0x7,0x34,0x6e, 0x5,0x59,0x3a, 0x7,0x3d,0x26, 0x7,0x34,0x6d,
+  0x7,0x34,0x70, 0x7,0x34,0x6c, 0x7,0x3d,0x29, 0x4,0x59,0x4a,
+  0x5,0x5f,0x50, 0x4,0x59,0x4b, 0x7,0x3d,0x2a, 0x7,0x3d,0x28,
+  0x7,0x3d,0x27, 0x7,0x44,0x43, 0x5,0x65,0x58, 0x7,0x44,0x42,
+  0x5,0x65,0x57, 0x5,0x6a,0x38, 0x5,0x6a,0x36, 0x5,0x6a,0x35,
+  0x5,0x6a,0x37, 0x5,0x6e,0x39, 0x7,0x50,0x73, 0x7,0x50,0x74,
+  0x4,0x67,0x64, 0x7,0x55,0x6a, 0x7,0x59,0x6d, 0x7,0x59,0x6e,
+  0x7,0x59,0x6c, 0x5,0x76,0x61, 0x5,0x76,0x60, 0x5,0x78,0x41,
+  0x7,0x5f,0x74, 0x7,0x62,0x76, 0x7,0x64,0x6a, 0x5,0x2b,0x61,
+  0x5,0x30,0x6a, 0x5,0x30,0x6b, 0x5,0x30,0x69, 0xf,0x32,0x67,
+  0x6,0x3c,0x66, 0x5,0x36,0x42, 0x5,0x36,0x41, 0xf,0x38,0x7a,
+  0xf,0x38,0x7b, 0x6,0x45,0x7c, 0x5,0x3d,0x33, 0x5,0x3d,0x31,
+  0x5,0x3d,0x2f, 0x4,0x3b,0x6a, 0x5,0x3d,0x30, 0x4,0x3b,0x6c,
+  0x3,0x3f,0x6d, 0x5,0x3d,0x2c, 0x5,0x3d,0x2d, 0x5,0x3d,0x2e,
+  0x6,0x4f,0x7e, 0x6,0x50,0x21, 0x5,0x3d,0x32, 0x6,0x4f,0x7c,
+  0xf,0x3f,0x78, 0xf,0x3f,0x79, 0xf,0x3f,0x7a, 0xf,0x3f,0x7b,
+  0xf,0x3f,0x7c, 0xf,0x3f,0x7d, 0xf,0x40,0x21, 0x6,0x4f,0x7d,
+  0x4,0x3b,0x69, 0x4,0x41,0x4c, 0x6,0x59,0x5e, 0x4,0x41,0x52,
+  0x4,0x41,0x4d, 0x4,0x41,0x4b, 0xf,0x45,0x7e, 0x6,0x59,0x5d,
+  0x5,0x43,0x74, 0x5,0x43,0x71, 0x5,0x43,0x73, 0x5,0x43,0x72,
+  0x6,0x59,0x5b, 0x4,0x41,0x51, 0x4,0x41,0x4f, 0x6,0x59,0x5c,
+  0x6,0x59,0x5a, 0xf,0x45,0x7d, 0xf,0x46,0x21, 0x5,0x4a,0x73,
+  0x5,0x4a,0x6f, 0x5,0x4a,0x71, 0x4,0x47,0x7e, 0x5,0x4a,0x6d,
+  0x4,0x48,0x21, 0x5,0x4a,0x74, 0x6,0x63,0x5a, 0x5,0x4a,0x70,
+  0x5,0x4a,0x75, 0x4,0x47,0x7d, 0x5,0x4a,0x72, 0x5,0x4a,0x76,
+  0x6,0x63,0x59, 0x6,0x63,0x5b, 0x6,0x63,0x5c, 0x5,0x4a,0x6c,
+  0x7,0x2a,0x48, 0x5,0x52,0x2d, 0x5,0x52,0x28, 0x7,0x2a,0x4d,
+  0x5,0x52,0x2a, 0x5,0x52,0x27, 0x7,0x2a,0x4e, 0x4,0x4e,0x49,
+  0x5,0x52,0x2c, 0x5,0x52,0x29, 0x7,0x2a,0x4c, 0xf,0x52,0x6e,
+  0xf,0x52,0x6f, 0xf,0x52,0x71, 0x7,0x2a,0x47, 0x7,0x2a,0x49,
+  0x7,0x2a,0x4a, 0x7,0x2a,0x4b, 0x5,0x52,0x26, 0x5,0x52,0x2b,
+  0x5,0x52,0x2e, 0xf,0x52,0x70, 0x4,0x54,0x50, 0x4,0x54,0x4d,
+  0x5,0x59,0x3d, 0x5,0x59,0x40, 0x7,0x34,0x72, 0x5,0x59,0x3c,
+  0x5,0x59,0x3e, 0x5,0x59,0x3f, 0x7,0x34,0x75, 0x7,0x34,0x77,
+  0x7,0x34,0x79, 0xf,0x58,0x66, 0xf,0x58,0x67, 0xf,0x58,0x68,
+  0x7,0x34,0x74, 0x7,0x34,0x78, 0x7,0x34,0x76, 0x4,0x54,0x4e,
+  0x4,0x59,0x53, 0x4,0x59,0x51, 0x5,0x5f,0x54, 0x7,0x3d,0x2b,
+  0x5,0x5f,0x51, 0x5,0x5f,0x53, 0x5,0x5f,0x55, 0x5,0x5f,0x52,
+  0x7,0x3d,0x2d, 0x4,0x59,0x50, 0x7,0x3d,0x2c, 0x4,0x59,0x4c,
+  0x7,0x3d,0x2e, 0xf,0x5d,0x50, 0x7,0x3d,0x2f, 0x7,0x3d,0x30,
+  0x7,0x3d,0x31, 0x5,0x65,0x5f, 0x5,0x65,0x5e, 0x5,0x65,0x5a,
+  0x4,0x5e,0x33, 0x7,0x44,0x44, 0x5,0x65,0x5b, 0x5,0x65,0x61,
+  0x5,0x65,0x60, 0x7,0x44,0x46, 0x5,0x65,0x5d, 0x5,0x65,0x59,
+  0x5,0x65,0x5c, 0xf,0x61,0x47, 0xf,0x61,0x48, 0xf,0x61,0x49,
+  0xf,0x61,0x4c, 0xf,0x61,0x4b, 0x7,0x44,0x45, 0x7,0x44,0x47,
+  0x5,0x6a,0x39, 0x7,0x4b,0x3e, 0x7,0x4b,0x3f, 0x4,0x61,0x6d,
+  0x5,0x6a,0x3a, 0x7,0x4b,0x3d, 0x4,0x61,0x6e, 0xf,0x64,0x46,
+  0xf,0x64,0x47, 0xf,0x64,0x48, 0xf,0x64,0x49, 0xf,0x64,0x4a,
+  0x4,0x64,0x70, 0x5,0x6e,0x3f, 0x5,0x6e,0x3a, 0x5,0x6e,0x3d,
+  0x5,0x6e,0x3c, 0x5,0x6e,0x3e, 0x5,0x6e,0x40, 0x4,0x64,0x72,
+  0x7,0x50,0x78, 0x5,0x6a,0x3b, 0x7,0x50,0x75, 0xf,0x66,0x70,
+  0xf,0x66,0x71, 0x7,0x50,0x76, 0x5,0x6e,0x3b, 0x7,0x50,0x77,
+  0x5,0x71,0x5a, 0x5,0x6e,0x41, 0x4,0x67,0x65, 0x5,0x71,0x59,
+  0x5,0x71,0x57, 0xf,0x68,0x70, 0xf,0x68,0x71, 0xf,0x68,0x73,
+  0xf,0x68,0x74, 0xf,0x68,0x75, 0x5,0x71,0x5c, 0x5,0x71,0x58,
+  0x5,0x74,0x58, 0x7,0x55,0x6b, 0xf,0x6a,0x2f, 0x7,0x59,0x6f,
+  0xf,0x6a,0x2c, 0xf,0x6a,0x2d, 0xf,0x6a,0x2e, 0xf,0x6a,0x30,
+  0xf,0x6a,0x31, 0xf,0x6b,0x30, 0xf,0x6b,0x31, 0xf,0x6b,0x32,
+  0x7,0x5d,0x32, 0x5,0x78,0x42, 0xf,0x6b,0x6e, 0xf,0x6b,0x6f,
+  0x7,0x5f,0x76, 0x7,0x5f,0x75, 0x5,0x79,0x54, 0x4,0x6d,0x29,
+  0x4,0x6d,0x2a, 0x7,0x61,0x59, 0x7,0x62,0x77, 0x7,0x62,0x78,
+  0x5,0x7a,0x7d, 0xf,0x6d,0x2a, 0x6,0x2e,0x45, 0x5,0x22,0x22,
+  0x5,0x21,0x7e, 0x4,0x22,0x23, 0x5,0x22,0x23, 0x4,0x22,0x22,
+  0x5,0x22,0x21, 0x5,0x23,0x2e, 0x4,0x23,0x34, 0x6,0x25,0x5d,
+  0x5,0x24,0x7d, 0x4,0x25,0x2c, 0x4,0x25,0x2d, 0x5,0x24,0x7e,
+  0x5,0x24,0x7c, 0xf,0x25,0x3a, 0xf,0x25,0x3b, 0xf,0x25,0x3c,
+  0xf,0x25,0x3d, 0xf,0x25,0x3e, 0xf,0x25,0x3f, 0x5,0x27,0x75,
+  0x6,0x2e,0x47, 0x5,0x27,0x76, 0x5,0x27,0x78, 0x5,0x27,0x79,
+  0x4,0x28,0x30, 0x5,0x27,0x77, 0x6,0x2e,0x46, 0x6,0x2e,0x48,
+  0xf,0x28,0x7d, 0xf,0x28,0x7e, 0x5,0x2b,0x62, 0x6,0x34,0x70,
+  0x6,0x34,0x73, 0x4,0x2b,0x5c, 0x5,0x2b,0x65, 0x6,0x34,0x71,
+  0x6,0x63,0x5d, 0x6,0x34,0x75, 0x6,0x34,0x76, 0x6,0x34,0x77,
+  0x6,0x34,0x72, 0x5,0x2b,0x63, 0x6,0x34,0x78, 0xf,0x2d,0x5b,
+  0xf,0x2d,0x5c, 0xf,0x2d,0x5d, 0x6,0x34,0x74, 0x6,0x34,0x6f,
+  0x6,0x3c,0x69, 0x5,0x30,0x6f, 0x5,0x2b,0x66, 0x6,0x3c,0x68,
+  0x5,0x30,0x6c, 0x5,0x30,0x6e, 0x6,0x3c,0x6e, 0x6,0x3c,0x6b,
+  0x6,0x3c,0x6f, 0x5,0x30,0x6d, 0x6,0x3c,0x6a, 0x6,0x3c,0x6d,
+  0x6,0x3c,0x6c, 0xf,0x32,0x68, 0xf,0x32,0x69, 0xf,0x32,0x6a,
+  0xf,0x32,0x6b, 0xf,0x32,0x6c, 0xf,0x32,0x6d, 0xf,0x32,0x6e,
+  0x5,0x36,0x43, 0x6,0x46,0x28, 0x6,0x46,0x21, 0x4,0x35,0x7e,
+  0x4,0x36,0x22, 0x4,0x36,0x21, 0x5,0x36,0x44, 0x6,0x46,0x23,
+  0x6,0x46,0x24, 0x6,0x46,0x2b, 0x6,0x46,0x2a, 0x6,0x63,0x5e,
+  0x6,0x46,0x26, 0x6,0x46,0x22, 0x6,0x46,0x29, 0x6,0x46,0x27,
+  0x7,0x34,0x7b, 0x6,0x46,0x25, 0xf,0x38,0x7c, 0xf,0x38,0x7d,
+  0xf,0x38,0x7e, 0xf,0x39,0x21, 0xf,0x39,0x22, 0xf,0x39,0x23,
+  0xf,0x39,0x24, 0xf,0x39,0x25, 0xf,0x39,0x26, 0xf,0x39,0x27,
+  0x5,0x3d,0x38, 0x5,0x3d,0x3d, 0x5,0x3d,0x39, 0x5,0x3d,0x3a,
+  0x5,0x3d,0x3c, 0x6,0x50,0x25, 0x6,0x50,0x23, 0x5,0x3d,0x34,
+  0x5,0x3d,0x35, 0x5,0x3d,0x37, 0x6,0x50,0x24, 0x6,0x50,0x29,
+  0x7,0x3d,0x34, 0x6,0x50,0x27, 0x5,0x3d,0x3b, 0x6,0x50,0x28,
+  0x6,0x50,0x26, 0xf,0x40,0x22, 0xf,0x40,0x23, 0x7,0x3d,0x32,
+  0x5,0x3d,0x36, 0x6,0x59,0x6a, 0x5,0x43,0x7b, 0x5,0x43,0x78,
+  0x6,0x59,0x62, 0x6,0x59,0x69, 0x6,0x59,0x67, 0x5,0x43,0x7c,
+  0x5,0x43,0x79, 0x5,0x43,0x77, 0x6,0x63,0x5f, 0x6,0x59,0x63,
+  0x6,0x59,0x65, 0x5,0x43,0x7d, 0x5,0x43,0x7a, 0x6,0x59,0x66,
+  0x7,0x44,0x49, 0x6,0x59,0x64, 0x7,0x44,0x48, 0x5,0x43,0x76,
+  0x6,0x59,0x5f, 0x6,0x59,0x6b, 0x6,0x59,0x60, 0x5,0x43,0x75,
+  0x6,0x59,0x61, 0xf,0x46,0x22, 0xf,0x46,0x23, 0xf,0x46,0x24,
+  0xf,0x46,0x25, 0xf,0x46,0x26, 0xf,0x46,0x27, 0xf,0x46,0x28,
+  0xf,0x46,0x29, 0x6,0x59,0x68, 0x6,0x59,0x6c, 0x7,0x3d,0x33,
+  0x6,0x63,0x64, 0x6,0x63,0x62, 0x6,0x63,0x66, 0x4,0x48,0x27,
+  0x4,0x48,0x26, 0x5,0x52,0x2f, 0x4,0x48,0x28, 0x4,0x48,0x29,
+  0x5,0x4a,0x78, 0x6,0x63,0x63, 0x6,0x63,0x60, 0x4,0x48,0x25,
+  0x5,0x4a,0x79, 0x5,0x4a,0x7a, 0x6,0x63,0x65, 0x6,0x63,0x67,
+  0x7,0x4b,0x41, 0xf,0x4d,0x2e, 0xf,0x4d,0x2f, 0xf,0x4d,0x30,
+  0xf,0x4d,0x31, 0xf,0x4d,0x32, 0xf,0x4d,0x33, 0x6,0x63,0x61,
+  0x5,0x4a,0x77, 0x5,0x52,0x36, 0x5,0x52,0x34, 0x5,0x52,0x35,
+  0x7,0x2a,0x55, 0x5,0x52,0x38, 0x5,0x52,0x32, 0x5,0x52,0x31,
+  0x7,0x2a,0x4f, 0x5,0x52,0x33, 0x5,0x52,0x37, 0x5,0x52,0x30,
+  0x7,0x50,0x7a, 0x7,0x2a,0x53, 0x7,0x2a,0x51, 0x7,0x2a,0x50,
+  0x7,0x2a,0x52, 0xf,0x52,0x72, 0xf,0x52,0x73, 0xf,0x52,0x74,
+  0xf,0x52,0x75, 0xf,0x52,0x76, 0xf,0x52,0x77, 0x7,0x2a,0x56,
+  0x5,0x59,0x41, 0x5,0x59,0x42, 0x4,0x54,0x54, 0x7,0x34,0x7c,
+  0x5,0x59,0x44, 0x5,0x59,0x43, 0x7,0x34,0x7e, 0x7,0x50,0x79,
+  0xf,0x58,0x69, 0xf,0x58,0x6a, 0xf,0x58,0x6b, 0xf,0x58,0x6c,
+  0x5,0x6a,0x3c, 0x7,0x34,0x7d, 0x5,0x5f,0x56, 0x5,0x5f,0x57,
+  0x7,0x3d,0x36, 0x7,0x3d,0x37, 0x7,0x3d,0x35, 0x5,0x74,0x59,
+  0xf,0x5d,0x51, 0xf,0x5d,0x52, 0xf,0x5d,0x53, 0xf,0x5d,0x54,
+  0x5,0x65,0x62, 0x7,0x44,0x4c, 0x4,0x5e,0x34, 0x7,0x44,0x4a,
+  0x7,0x44,0x4b, 0xf,0x61,0x4d, 0xf,0x61,0x4e, 0xf,0x61,0x4f,
+  0xf,0x61,0x50, 0x5,0x6a,0x3d, 0x7,0x4b,0x43, 0x7,0x55,0x6c,
+  0x7,0x4b,0x45, 0xf,0x64,0x4c, 0x5,0x78,0x43, 0x7,0x4b,0x42,
+  0x7,0x4b,0x44, 0x7,0x5f,0x77, 0xf,0x66,0x72, 0xf,0x66,0x73,
+  0x7,0x51,0x72, 0x5,0x71,0x5d, 0x7,0x55,0x6e, 0x7,0x55,0x6d,
+  0x7,0x62,0x79, 0x7,0x62,0x7a, 0x7,0x59,0x70, 0x7,0x5d,0x49,
+  0x7,0x5f,0x78, 0x5,0x7a,0x7e, 0x5,0x7b,0x21, 0x7,0x66,0x37,
+  0x7,0x66,0x28, 0x6,0x59,0x6d, 0x4,0x4e,0x4b, 0x7,0x2a,0x57,
+  0xf,0x52,0x79, 0xf,0x52,0x78, 0x5,0x59,0x45, 0x7,0x35,0x21,
+  0x4,0x59,0x56, 0x7,0x44,0x4d, 0x7,0x44,0x4e, 0x5,0x6a,0x3e,
+  0x7,0x50,0x7b, 0x6,0x3c,0x70, 0x6,0x3c,0x71, 0x6,0x3c,0x72,
+  0x6,0x46,0x2c, 0x5,0x36,0x45, 0x4,0x36,0x23, 0x6,0x46,0x2e,
+  0x6,0x46,0x2d, 0x6,0x46,0x30, 0x6,0x46,0x2f, 0x4,0x3b,0x70,
+  0x6,0x50,0x2c, 0x4,0x3b,0x6e, 0x6,0x50,0x2a, 0x6,0x59,0x73,
+  0x6,0x50,0x30, 0x6,0x50,0x2e, 0x6,0x50,0x2b, 0x4,0x3b,0x71,
+  0x4,0x3b,0x6f, 0x6,0x50,0x2f, 0x6,0x50,0x2d, 0x6,0x59,0x7b,
+  0x5,0x43,0x7e, 0x6,0x59,0x6e, 0x6,0x59,0x71, 0x6,0x59,0x77,
+  0x6,0x59,0x75, 0x6,0x59,0x7a, 0x6,0x59,0x72, 0x6,0x59,0x70,
+  0x6,0x59,0x74, 0x6,0x59,0x79, 0x6,0x59,0x78, 0x6,0x59,0x6f,
+  0x6,0x59,0x76, 0x6,0x63,0x74, 0x6,0x63,0x72, 0x5,0x4a,0x7b,
+  0x6,0x63,0x6b, 0x6,0x63,0x6c, 0x6,0x63,0x76, 0x6,0x63,0x68,
+  0x6,0x63,0x77, 0x6,0x63,0x70, 0x4,0x48,0x2a, 0x6,0x63,0x75,
+  0x6,0x63,0x6f, 0x5,0x4a,0x7c, 0x6,0x63,0x71, 0x6,0x63,0x69,
+  0x5,0x4a,0x7d, 0x4,0x48,0x2b, 0x6,0x63,0x6a, 0xf,0x4d,0x34,
+  0xf,0x4d,0x35, 0x6,0x63,0x73, 0x6,0x63,0x78, 0x6,0x63,0x6d,
+  0x7,0x2a,0x5d, 0x7,0x2a,0x5b, 0x7,0x2a,0x64, 0x7,0x2a,0x5f,
+  0x7,0x2a,0x5c, 0x5,0x52,0x3a, 0x7,0x2a,0x5e, 0x7,0x2a,0x66,
+  0x7,0x2a,0x62, 0x7,0x2a,0x60, 0x7,0x2a,0x61, 0x7,0x2a,0x63,
+  0x7,0x2a,0x5a, 0x7,0x2a,0x58, 0x5,0x52,0x39, 0x7,0x2a,0x65,
+  0x7,0x2a,0x67, 0x4,0x59,0x57, 0x4,0x54,0x55, 0x5,0x59,0x47,
+  0x7,0x35,0x29, 0x7,0x35,0x24, 0x7,0x35,0x2f, 0x7,0x35,0x22,
+  0x7,0x35,0x2d, 0x7,0x35,0x28, 0x7,0x35,0x25, 0x7,0x35,0x2c,
+  0x7,0x35,0x2a, 0x7,0x35,0x26, 0x5,0x59,0x46, 0x7,0x35,0x30,
+  0x4,0x54,0x56, 0x7,0x35,0x2b, 0x7,0x35,0x33, 0x7,0x35,0x27,
+  0x7,0x2a,0x59, 0x7,0x35,0x34, 0x7,0x35,0x31, 0x7,0x35,0x23,
+  0x7,0x35,0x32, 0xf,0x58,0x6d, 0x7,0x35,0x2e, 0xf,0x52,0x7a,
+  0x4,0x59,0x59, 0x7,0x3d,0x3d, 0x7,0x3d,0x3b, 0x7,0x3d,0x45,
+  0x7,0x3d,0x3c, 0x7,0x3d,0x3e, 0x7,0x3d,0x49, 0x7,0x3d,0x3a,
+  0x7,0x3d,0x42, 0x7,0x3d,0x39, 0x7,0x3d,0x38, 0x7,0x3d,0x3f,
+  0x5,0x5f,0x58, 0x7,0x3d,0x47, 0x7,0x3d,0x41, 0x7,0x3d,0x40,
+  0x7,0x3d,0x43, 0x7,0x3d,0x48, 0x7,0x35,0x36, 0xf,0x5d,0x55,
+  0xf,0x5d,0x57, 0x7,0x3d,0x44, 0x7,0x3d,0x46, 0x7,0x44,0x50,
+  0x7,0x44,0x56, 0x7,0x44,0x52, 0x7,0x44,0x53, 0x7,0x44,0x4f,
+  0x5,0x65,0x63, 0x7,0x44,0x57, 0x7,0x44,0x55, 0x5,0x65,0x64,
+  0x7,0x44,0x51, 0x7,0x44,0x54, 0x7,0x4b,0x4a, 0x7,0x4b,0x47,
+  0x7,0x4b,0x4b, 0x7,0x4b,0x48, 0x5,0x6a,0x3f, 0x7,0x4b,0x4e,
+  0x4,0x61,0x6f, 0x5,0x6a,0x40, 0x7,0x4b,0x46, 0x7,0x4b,0x4c,
+  0x7,0x4b,0x4d, 0x4,0x61,0x70, 0x7,0x4b,0x49, 0x7,0x4b,0x4f,
+  0x7,0x51,0x23, 0x7,0x51,0x27, 0x7,0x50,0x7d, 0x7,0x51,0x2a,
+  0x7,0x51,0x24, 0x7,0x51,0x2b, 0x7,0x51,0x28, 0x7,0x50,0x7c,
+  0x5,0x6e,0x42, 0x7,0x51,0x25, 0x7,0x51,0x26, 0x5,0x6e,0x43,
+  0x7,0x51,0x22, 0xf,0x66,0x74, 0x7,0x50,0x7e, 0x7,0x51,0x2c,
+  0x7,0x51,0x29, 0x7,0x55,0x74, 0x4,0x67,0x68, 0x7,0x55,0x72,
+  0x7,0x55,0x6f, 0x7,0x55,0x76, 0x7,0x55,0x70, 0x7,0x55,0x75,
+  0x7,0x55,0x73, 0x7,0x55,0x77, 0x7,0x51,0x21, 0xf,0x68,0x76,
+  0x7,0x55,0x71, 0x7,0x59,0x71, 0x7,0x59,0x72, 0x4,0x69,0x57,
+  0x7,0x59,0x75, 0x7,0x59,0x76, 0x7,0x59,0x74, 0xf,0x6a,0x32,
+  0x7,0x59,0x73, 0x7,0x5d,0x38, 0x7,0x5d,0x39, 0x7,0x5d,0x3a,
+  0x4,0x6b,0x2b, 0x7,0x5d,0x37, 0x7,0x5d,0x33, 0x7,0x5d,0x34,
+  0x7,0x5d,0x35, 0x7,0x5d,0x36, 0x7,0x5f,0x7c, 0x7,0x5f,0x7a,
+  0x7,0x5f,0x7b, 0x7,0x5f,0x79, 0x7,0x61,0x5a, 0xf,0x6c,0x41,
+  0x7,0x63,0x7e, 0x7,0x64,0x6b, 0x7,0x66,0x40, 0xf,0x2d,0x5e,
+  0x5,0x30,0x70, 0xf,0x32,0x70, 0x6,0x46,0x32, 0x6,0x46,0x33,
+  0x4,0x36,0x25, 0x6,0x46,0x31, 0xf,0x39,0x28, 0xf,0x39,0x29,
+  0x5,0x3d,0x40, 0x5,0x3d,0x3e, 0x5,0x3d,0x41, 0x5,0x3d,0x3f,
+  0x4,0x3b,0x73, 0x6,0x50,0x33, 0x4,0x3b,0x72, 0x6,0x50,0x32,
+  0xf,0x40,0x25, 0xf,0x40,0x27, 0xf,0x40,0x26, 0x4,0x41,0x58,
+  0x5,0x44,0x25, 0x5,0x44,0x22, 0x5,0x44,0x21, 0x5,0x44,0x24,
+  0x5,0x44,0x23, 0x6,0x59,0x7c, 0xf,0x46,0x2b, 0xf,0x46,0x2c,
+  0xf,0x46,0x2d, 0x5,0x44,0x26, 0x5,0x4b,0x22, 0x4,0x48,0x30,
+  0x5,0x4b,0x23, 0x5,0x4b,0x21, 0x5,0x4a,0x7e, 0x4,0x48,0x2c,
+  0x4,0x48,0x2f, 0x6,0x63,0x7d, 0x4,0x48,0x32, 0x6,0x63,0x7c,
+  0x6,0x63,0x7e, 0xf,0x4d,0x37, 0xf,0x4d,0x38, 0x6,0x63,0x7a,
+  0x6,0x63,0x79, 0x7,0x2a,0x6a, 0x7,0x2a,0x69, 0x5,0x52,0x45,
+  0x5,0x52,0x40, 0x5,0x52,0x41, 0x5,0x52,0x3f, 0x5,0x52,0x3e,
+  0x5,0x52,0x43, 0x5,0x52,0x3d, 0x4,0x54,0x57, 0x5,0x52,0x3c,
+  0x7,0x2a,0x6b, 0x7,0x2a,0x6c, 0xf,0x46,0x2a, 0xf,0x52,0x7b,
+  0xf,0x52,0x7c, 0xf,0x52,0x7d, 0xf,0x52,0x7e, 0xf,0x53,0x21,
+  0x7,0x2a,0x68, 0x5,0x52,0x44, 0x5,0x52,0x42, 0x5,0x5f,0x59,
+  0x7,0x35,0x3b, 0x4,0x54,0x5b, 0x5,0x59,0x4e, 0x5,0x59,0x4b,
+  0x4,0x54,0x5a, 0x7,0x35,0x38, 0x5,0x59,0x4d, 0x5,0x59,0x4a,
+  0x7,0x35,0x3a, 0x5,0x59,0x49, 0x7,0x35,0x39, 0x7,0x35,0x37,
+  0x5,0x59,0x48, 0x7,0x35,0x3c, 0xf,0x58,0x6e, 0xf,0x58,0x6f,
+  0xf,0x58,0x71, 0xf,0x58,0x72, 0xf,0x58,0x73, 0xf,0x58,0x74,
+  0xf,0x58,0x75, 0xf,0x58,0x70, 0xf,0x55,0x64, 0x5,0x59,0x4c,
+  0x4,0x59,0x5c, 0x4,0x59,0x5a, 0x4,0x59,0x5b, 0x5,0x5f,0x5a,
+  0x4,0x59,0x61, 0x5,0x5f,0x5c, 0x4,0x59,0x5e, 0x7,0x3d,0x4a,
+  0x5,0x65,0x68, 0x7,0x3d,0x4b, 0x7,0x3d,0x4d, 0x5,0x5f,0x5b,
+  0xf,0x5d,0x59, 0x7,0x3d,0x4c, 0x7,0x3d,0x4e, 0xf,0x5d,0x5a,
+  0x5,0x5f,0x5d, 0x5,0x65,0x6c, 0x5,0x65,0x6f, 0x7,0x44,0x5f,
+  0x7,0x44,0x63, 0x5,0x65,0x69, 0x7,0x44,0x5e, 0x5,0x65,0x66,
+  0x7,0x44,0x65, 0x7,0x44,0x62, 0x4,0x5e,0x37, 0x5,0x65,0x65,
+  0x5,0x65,0x67, 0x7,0x44,0x61, 0x7,0x44,0x5a, 0x7,0x44,0x5d,
+  0x5,0x65,0x6e, 0x7,0x44,0x5b, 0xf,0x61,0x51, 0x7,0x44,0x64,
+  0x7,0x44,0x59, 0x7,0x44,0x5c, 0x5,0x65,0x6b, 0x5,0x65,0x6d,
+  0xf,0x5d,0x58, 0x5,0x65,0x6a, 0x5,0x6a,0x47, 0x5,0x6a,0x41,
+  0x5,0x6a,0x45, 0x5,0x6a,0x42, 0x5,0x6a,0x43, 0x4,0x61,0x72,
+  0x5,0x6a,0x46, 0x5,0x6a,0x44, 0x5,0x6a,0x49, 0x4,0x61,0x71,
+  0x7,0x4b,0x50, 0x7,0x4b,0x55, 0x7,0x4b,0x51, 0x5,0x6a,0x48,
+  0x7,0x4b,0x53, 0xf,0x64,0x4e, 0x7,0x4b,0x57, 0x7,0x4b,0x56,
+  0x7,0x4b,0x54, 0x7,0x4b,0x52, 0x7,0x4b,0x58, 0x7,0x51,0x2e,
+  0x4,0x64,0x74, 0x7,0x51,0x36, 0x4,0x64,0x76, 0x5,0x6e,0x44,
+  0x4,0x67,0x6d, 0x4,0x64,0x78, 0x7,0x51,0x34, 0x7,0x51,0x33,
+  0x5,0x6e,0x45, 0x4,0x64,0x7a, 0x4,0x64,0x77, 0x4,0x64,0x79,
+  0x7,0x51,0x2f, 0x7,0x51,0x31, 0x7,0x51,0x32, 0xf,0x66,0x75,
+  0x7,0x51,0x35, 0x7,0x51,0x37, 0x7,0x51,0x30, 0x7,0x51,0x2d,
+  0x4,0x67,0x6a, 0x4,0x67,0x69, 0x7,0x55,0x78, 0x5,0x71,0x5e,
+  0x5,0x71,0x5f, 0x4,0x67,0x6b, 0x4,0x67,0x6c, 0x7,0x55,0x7a,
+  0x5,0x71,0x60, 0x5,0x71,0x61, 0x7,0x55,0x7d, 0x7,0x55,0x79,
+  0x7,0x55,0x7e, 0x7,0x55,0x7b, 0x5,0x74,0x5c, 0x5,0x74,0x5f,
+  0x4,0x69,0x59, 0x7,0x59,0x78, 0x5,0x74,0x5d, 0x7,0x59,0x79,
+  0x7,0x59,0x7a, 0x5,0x74,0x5a, 0x5,0x74,0x5e, 0x5,0x74,0x5b,
+  0x7,0x59,0x77, 0x5,0x76,0x62, 0x7,0x5d,0x3b, 0x7,0x5d,0x3c,
+  0xf,0x6b,0x33, 0x5,0x76,0x63, 0x5,0x78,0x44, 0x4,0x6c,0x32,
+  0x4,0x6c,0x31, 0x7,0x5f,0x7d, 0x7,0x5f,0x7e, 0x7,0x60,0x21,
+  0xf,0x6b,0x70, 0x4,0x6d,0x2c, 0x5,0x79,0x56, 0x4,0x6d,0x2b,
+  0x5,0x79,0x55, 0x7,0x61,0x5b, 0x5,0x79,0x57, 0x5,0x7a,0x44,
+  0x7,0x62,0x7b, 0x5,0x7a,0x43, 0x7,0x62,0x7c, 0xf,0x6c,0x59,
+  0x7,0x63,0x23, 0x5,0x7a,0x42, 0x7,0x64,0x6c, 0x4,0x6e,0x3e,
+  0x7,0x65,0x4b, 0x7,0x65,0x4a, 0x7,0x65,0x4c, 0x5,0x7b,0x6c,
+  0x7,0x66,0x2d, 0x7,0x66,0x4e, 0x7,0x66,0x51, 0x4,0x6e,0x5c,
+  0x4,0x36,0x26, 0x6,0x50,0x34, 0xf,0x46,0x2e, 0xf,0x46,0x2f,
+  0xf,0x46,0x30, 0x6,0x59,0x7d, 0x4,0x48,0x36, 0x7,0x2c,0x44,
+  0x7,0x35,0x3d, 0x5,0x5a,0x74, 0x7,0x44,0x66, 0xf,0x64,0x4f,
+  0x5,0x71,0x62, 0xf,0x6b,0x71, 0x6,0x3c,0x74, 0x6,0x2e,0x49,
+  0x6,0x3c,0x73, 0x4,0x36,0x27, 0x6,0x46,0x34, 0x4,0x36,0x29,
+  0xf,0x39,0x2d, 0x6,0x50,0x35, 0x5,0x3d,0x42, 0x4,0x3b,0x75,
+  0x6,0x50,0x37, 0x6,0x50,0x36, 0xf,0x40,0x28, 0xf,0x40,0x29,
+  0x6,0x5a,0x21, 0x6,0x59,0x7e, 0xf,0x4d,0x3b, 0x4,0x4e,0x4d,
+  0x7,0x2a,0x6e, 0x7,0x2a,0x6d, 0x7,0x35,0x3e, 0x7,0x51,0x38,
+  0x7,0x51,0x39, 0x6,0x50,0x39, 0x6,0x50,0x3a, 0x6,0x50,0x38,
+  0x4,0x41,0x59, 0x4,0x41,0x5b, 0x5,0x44,0x28, 0x5,0x44,0x27,
+  0x6,0x5a,0x23, 0x6,0x5a,0x22, 0x6,0x64,0x22, 0x5,0x4b,0x25,
+  0x4,0x48,0x39, 0x6,0x64,0x21, 0x5,0x4b,0x24, 0xf,0x4d,0x3c,
+  0x6,0x64,0x23, 0x4,0x4e,0x4e, 0x5,0x52,0x46, 0x5,0x52,0x48,
+  0x5,0x52,0x47, 0x7,0x2a,0x70, 0x7,0x2a,0x6f, 0xf,0x58,0x77,
+  0x5,0x59,0x50, 0x5,0x59,0x4f, 0x5,0x59,0x54, 0x5,0x59,0x51,
+  0x5,0x59,0x52, 0x5,0x59,0x53, 0xf,0x58,0x76, 0x7,0x35,0x3f,
+  0x7,0x3d,0x4f, 0x5,0x5f,0x5f, 0x5,0x5f,0x60, 0x5,0x5f,0x62,
+  0x5,0x5f,0x61, 0xf,0x5d,0x5b, 0x7,0x3d,0x51, 0x5,0x65,0x72,
+  0x7,0x44,0x67, 0x5,0x65,0x70, 0x5,0x65,0x71, 0x4,0x5e,0x39,
+  0x5,0x6a,0x4b, 0x5,0x6a,0x4a, 0x5,0x6e,0x47, 0x5,0x6e,0x46,
+  0x7,0x4d,0x50, 0x7,0x51,0x3a, 0x5,0x6c,0x46, 0x5,0x71,0x64,
+  0x7,0x56,0x22, 0x5,0x71,0x66, 0x5,0x71,0x65, 0xf,0x68,0x79,
+  0x7,0x56,0x21, 0x7,0x56,0x24, 0x7,0x56,0x23, 0x7,0x59,0x7b,
+  0x7,0x59,0x7c, 0x7,0x5d,0x3d, 0x5,0x76,0x64, 0xf,0x6b,0x34,
+  0x7,0x60,0x22, 0x5,0x7a,0x45, 0x7,0x64,0x21, 0x7,0x64,0x6e,
+  0x7,0x64,0x6d, 0xf,0x39,0x2e, 0x5,0x3d,0x43, 0x4,0x3b,0x78,
+  0x6,0x50,0x3b, 0x5,0x44,0x2c, 0x5,0x44,0x2b, 0x6,0x5a,0x26,
+  0x6,0x5a,0x29, 0x5,0x44,0x2a, 0x6,0x5a,0x27, 0x5,0x44,0x29,
+  0x6,0x5a,0x25, 0x6,0x5a,0x2b, 0x6,0x5a,0x2a, 0x4,0x41,0x5c,
+  0x4,0x41,0x5e, 0xf,0x46,0x31, 0x5,0x4b,0x27, 0x4,0x48,0x3c,
+  0x5,0x4b,0x26, 0x6,0x64,0x27, 0x6,0x64,0x25, 0x5,0x4b,0x28,
+  0x5,0x4b,0x29, 0x4,0x48,0x3e, 0x5,0x4b,0x2c, 0x5,0x4b,0x2a,
+  0x5,0x4b,0x2d, 0x5,0x4b,0x2b, 0x6,0x64,0x29, 0x4,0x48,0x3f,
+  0x6,0x64,0x28, 0x6,0x64,0x24, 0x6,0x64,0x26, 0x7,0x2a,0x73,
+  0x5,0x52,0x49, 0x7,0x2a,0x77, 0x7,0x2a,0x76, 0x4,0x4e,0x51,
+  0x7,0x2a,0x79, 0x5,0x52,0x4a, 0x4,0x4e,0x52, 0x7,0x2a,0x75,
+  0x4,0x4e,0x53, 0x5,0x52,0x4d, 0x4,0x4e,0x50, 0x5,0x52,0x4c,
+  0x5,0x52,0x4e, 0x7,0x2a,0x74, 0x5,0x52,0x4b, 0x7,0x2a,0x78,
+  0x7,0x2a,0x72, 0x7,0x35,0x44, 0x5,0x59,0x55, 0x5,0x59,0x58,
+  0x4,0x54,0x66, 0x4,0x54,0x5e, 0x4,0x54,0x65, 0x5,0x59,0x56,
+  0x5,0x59,0x57, 0x7,0x35,0x43, 0x7,0x35,0x47, 0x7,0x35,0x40,
+  0x7,0x35,0x41, 0x7,0x35,0x45, 0x7,0x35,0x46, 0x7,0x3d,0x58,
+  0x7,0x3d,0x5a, 0x5,0x5f,0x63, 0x5,0x5f,0x69, 0x4,0x59,0x66,
+  0x5,0x5f,0x65, 0x7,0x3d,0x53, 0x4,0x59,0x67, 0x7,0x35,0x42,
+  0x5,0x5f,0x6d, 0x7,0x3d,0x57, 0x4,0x59,0x65, 0x7,0x3d,0x59,
+  0x5,0x5f,0x67, 0x5,0x5f,0x6a, 0x7,0x3d,0x55, 0x5,0x5f,0x6b,
+  0x7,0x3d,0x5b, 0x7,0x35,0x48, 0x5,0x5f,0x68, 0x7,0x3d,0x54,
+  0x7,0x3d,0x5c, 0xf,0x5d,0x5c, 0x7,0x3d,0x52, 0x5,0x5f,0x6c,
+  0x5,0x5f,0x66, 0x4,0x5e,0x44, 0x5,0x65,0x7c, 0x5,0x65,0x74,
+  0x4,0x5e,0x3a, 0x5,0x65,0x76, 0x5,0x66,0x22, 0x7,0x44,0x6a,
+  0x7,0x44,0x68, 0x4,0x5e,0x3f, 0x5,0x65,0x77, 0x4,0x5e,0x40,
+  0x7,0x44,0x6d, 0x7,0x44,0x70, 0x5,0x66,0x21, 0x7,0x44,0x6f,
+  0x4,0x5e,0x3d, 0x5,0x66,0x23, 0x7,0x44,0x71, 0x7,0x44,0x72,
+  0x7,0x44,0x6e, 0xf,0x61,0x53, 0xf,0x61,0x54, 0x5,0x5f,0x64,
+  0x7,0x44,0x6c, 0x7,0x44,0x6b, 0x5,0x65,0x78, 0x5,0x66,0x24,
+  0x7,0x44,0x69, 0x5,0x65,0x75, 0x5,0x65,0x7a, 0x5,0x65,0x79,
+  0x5,0x65,0x7d, 0x4,0x61,0x7a, 0x5,0x6a,0x51, 0x5,0x6a,0x54,
+  0x5,0x6a,0x4f, 0x4,0x61,0x79, 0x5,0x6a,0x4d, 0x7,0x4b,0x5a,
+  0x5,0x6a,0x55, 0x7,0x4b,0x63, 0x5,0x6a,0x4e, 0x4,0x61,0x78,
+  0x7,0x4b,0x61, 0x4,0x61,0x76, 0x7,0x4b,0x5e, 0x4,0x61,0x75,
+  0x7,0x4b,0x62, 0x5,0x6a,0x50, 0x7,0x4b,0x60, 0xf,0x64,0x50,
+  0xf,0x64,0x52, 0xf,0x64,0x53, 0x7,0x4b,0x5b, 0x7,0x4b,0x5c,
+  0x5,0x6a,0x53, 0x5,0x6a,0x52, 0x7,0x4b,0x59, 0x5,0x6a,0x4c,
+  0x4,0x65,0x24, 0x5,0x6e,0x4e, 0x4,0x64,0x7d, 0x5,0x6e,0x4f,
+  0x5,0x6e,0x4a, 0x7,0x51,0x3b, 0x5,0x6e,0x48, 0x7,0x51,0x3d,
+  0x4,0x65,0x21, 0x5,0x6e,0x4c, 0x4,0x65,0x22, 0x4,0x65,0x25,
+  0x5,0x6e,0x4d, 0x7,0x51,0x41, 0x7,0x51,0x3c, 0xf,0x66,0x78,
+  0x7,0x51,0x3e, 0x7,0x51,0x43, 0x7,0x51,0x40, 0x5,0x6e,0x4b,
+  0x7,0x51,0x3f, 0x5,0x6e,0x50, 0x4,0x65,0x26, 0x7,0x51,0x42,
+  0x5,0x71,0x6d, 0x7,0x56,0x28, 0x4,0x67,0x6f, 0x7,0x56,0x2a,
+  0x7,0x56,0x2b, 0x5,0x71,0x6a, 0x5,0x71,0x6b, 0x5,0x71,0x6c,
+  0x5,0x71,0x67, 0x5,0x71,0x68, 0x7,0x56,0x29, 0xf,0x66,0x77,
+  0x5,0x74,0x60, 0x7,0x5a,0x26, 0x7,0x59,0x7d, 0x4,0x69,0x5d,
+  0x5,0x74,0x61, 0x7,0x5a,0x25, 0x7,0x5a,0x23, 0x7,0x59,0x7e,
+  0x7,0x5a,0x24, 0x5,0x74,0x63, 0x5,0x74,0x64, 0x7,0x5a,0x21,
+  0x7,0x5a,0x22, 0x5,0x74,0x65, 0x5,0x76,0x65, 0x5,0x76,0x68,
+  0x5,0x76,0x66, 0x7,0x5d,0x3e, 0x5,0x76,0x69, 0x5,0x76,0x67,
+  0x7,0x5d,0x41, 0x7,0x5d,0x3f, 0x7,0x5d,0x42, 0x7,0x5d,0x40,
+  0x5,0x78,0x46, 0x5,0x79,0x58, 0x7,0x60,0x23, 0x5,0x78,0x45,
+  0x5,0x78,0x47, 0x7,0x61,0x5e, 0x7,0x61,0x5c, 0x7,0x61,0x5d,
+  0x5,0x7a,0x46, 0x7,0x62,0x7e, 0x7,0x63,0x22, 0x5,0x79,0x59,
+  0x7,0x63,0x21, 0x7,0x62,0x7d, 0x5,0x7b,0x22, 0x7,0x64,0x70,
+  0x7,0x64,0x6f, 0x5,0x7b,0x4c, 0x7,0x65,0x69, 0x5,0x7c,0x35,
+  0x7,0x66,0x2e, 0x7,0x66,0x39, 0x7,0x66,0x38, 0x5,0x7c,0x4c,
+  0x5,0x3d,0x44, 0x4,0x41,0x60, 0x4,0x41,0x62, 0x6,0x5a,0x2c,
+  0x5,0x44,0x2d, 0x6,0x64,0x2b, 0x5,0x4b,0x2f, 0x5,0x4b,0x31,
+  0x5,0x4b,0x2e, 0x5,0x4b,0x30, 0x6,0x64,0x2a, 0xf,0x4d,0x3d,
+  0x5,0x4b,0x32, 0x4,0x4e,0x55, 0x5,0x52,0x50, 0x4,0x4e,0x54,
+  0x4,0x4e,0x56, 0x7,0x2a,0x7b, 0x7,0x2a,0x7a, 0x7,0x2a,0x7c,
+  0x7,0x2a,0x7d, 0x7,0x2a,0x7e, 0x5,0x52,0x4f, 0x5,0x52,0x51,
+  0x5,0x59,0x59, 0x7,0x35,0x49, 0x7,0x35,0x4a, 0x5,0x59,0x5c,
+  0x5,0x59,0x5d, 0x5,0x59,0x5b, 0x7,0x35,0x4b, 0x5,0x59,0x5a,
+  0x4,0x59,0x69, 0x7,0x3d,0x5e, 0x5,0x5f,0x6e, 0x7,0x3d,0x5f,
+  0x4,0x59,0x6c, 0x4,0x59,0x6a, 0x5,0x5f,0x6f, 0x5,0x5f,0x70,
+  0xf,0x5d,0x5d, 0x7,0x3d,0x5d, 0x7,0x3d,0x60, 0x7,0x44,0x76,
+  0x7,0x44,0x73, 0x4,0x5e,0x46, 0x7,0x44,0x74, 0x7,0x3d,0x61,
+  0x5,0x66,0x25, 0x7,0x44,0x78, 0x7,0x44,0x75, 0x7,0x4b,0x64,
+  0x7,0x4b,0x66, 0x7,0x4b,0x69, 0x7,0x4b,0x65, 0x7,0x4b,0x68,
+  0x7,0x4b,0x67, 0x7,0x51,0x44, 0x5,0x6a,0x56, 0x5,0x6a,0x57,
+  0x7,0x51,0x45, 0x7,0x51,0x46, 0x4,0x65,0x28, 0xf,0x66,0x79,
+  0x5,0x6e,0x52, 0x5,0x6e,0x51, 0x5,0x71,0x6e, 0x5,0x71,0x70,
+  0x5,0x71,0x72, 0x4,0x67,0x74, 0x7,0x56,0x2c, 0x5,0x71,0x6f,
+  0x5,0x71,0x71, 0x7,0x5a,0x27, 0x4,0x69,0x5f, 0x5,0x74,0x66,
+  0x7,0x5a,0x28, 0x7,0x5a,0x29, 0x5,0x74,0x67, 0x7,0x5d,0x43,
+  0x7,0x5d,0x46, 0x7,0x5d,0x45, 0x7,0x5d,0x44, 0x4,0x6c,0x35,
+  0x7,0x61,0x5f, 0x5,0x7a,0x47, 0x7,0x64,0x24, 0x7,0x64,0x22,
+  0x7,0x64,0x23, 0x5,0x7b,0x4d, 0x5,0x7b,0x6d, 0x5,0x7c,0x22,
+  0x5,0x44,0x2e, 0x6,0x5a,0x2d, 0x5,0x52,0x52, 0x7,0x35,0x4c,
+  0x4,0x59,0x6d, 0x7,0x3d,0x62, 0x7,0x4b,0x6c, 0x7,0x51,0x48,
+  0x4,0x65,0x2b, 0x5,0x71,0x73, 0x7,0x51,0x47, 0x7,0x56,0x2d,
+  0x7,0x5a,0x2a, 0x7,0x5d,0x48, 0x7,0x5d,0x47, 0x7,0x61,0x60,
+  0xf,0x40,0x2c, 0x5,0x44,0x30, 0x5,0x44,0x2f, 0x5,0x4b,0x33,
+  0x4,0x48,0x45, 0x5,0x4b,0x34, 0x5,0x52,0x5a, 0x7,0x2b,0x21,
+  0x5,0x52,0x54, 0x5,0x52,0x57, 0x7,0x2b,0x22, 0x5,0x52,0x55,
+  0x5,0x52,0x56, 0x5,0x52,0x59, 0x5,0x52,0x53, 0x4,0x54,0x6b,
+  0x5,0x52,0x58, 0xf,0x58,0x79, 0x5,0x59,0x5e, 0x7,0x35,0x4d,
+  0x7,0x3d,0x63, 0x5,0x5f,0x71, 0x5,0x5f,0x72, 0x5,0x66,0x26,
+  0x5,0x66,0x27, 0x5,0x66,0x28, 0x4,0x62,0x21, 0x5,0x6a,0x58,
+  0x5,0x6a,0x59, 0x7,0x51,0x49, 0x7,0x51,0x4a, 0x5,0x6e,0x54,
+  0x5,0x6e,0x53, 0x5,0x6e,0x55, 0x7,0x56,0x2e, 0x5,0x71,0x74,
+  0x5,0x66,0x29, 0x5,0x74,0x68, 0x5,0x74,0x69, 0x4,0x69,0x61,
+  0xf,0x6a,0x33, 0x7,0x5d,0x4a, 0x4,0x6c,0x36, 0x5,0x7b,0x23,
+  0x5,0x7c,0x3f, 0x6,0x34,0x7b, 0x6,0x46,0x35, 0x5,0x36,0x46,
+  0x5,0x3d,0x4a, 0x5,0x3d,0x48, 0x5,0x3d,0x49, 0x5,0x3d,0x46,
+  0x4,0x3b,0x7d, 0x5,0x3d,0x45, 0x4,0x3b,0x7c, 0x6,0x50,0x3c,
+  0x4,0x3b,0x7a, 0x4,0x41,0x6c, 0x5,0x44,0x3a, 0x4,0x41,0x6b,
+  0x5,0x44,0x31, 0x5,0x44,0x39, 0x6,0x5a,0x2f, 0x4,0x41,0x69,
+  0x5,0x4b,0x3b, 0x5,0x44,0x37, 0x4,0x41,0x66, 0x4,0x41,0x67,
+  0x4,0x41,0x6a, 0x6,0x5a,0x32, 0x5,0x44,0x36, 0x5,0x44,0x32,
+  0x6,0x5a,0x30, 0x6,0x5a,0x31, 0x6,0x5a,0x2e, 0xf,0x46,0x33,
+  0x5,0x44,0x33, 0x5,0x44,0x38, 0x5,0x4b,0x3d, 0x6,0x64,0x31,
+  0x6,0x64,0x32, 0x5,0x4b,0x37, 0x5,0x4b,0x44, 0x5,0x4b,0x38,
+  0x4,0x48,0x49, 0x4,0x48,0x48, 0x5,0x4b,0x3a, 0x5,0x4b,0x36,
+  0x4,0x48,0x4f, 0x5,0x4b,0x42, 0x5,0x4b,0x39, 0x7,0x2b,0x2b,
+  0x5,0x4b,0x43, 0x6,0x64,0x35, 0x6,0x64,0x33, 0x6,0x64,0x2e,
+  0x5,0x4b,0x3c, 0x5,0x4b,0x41, 0xf,0x4d,0x3e, 0x6,0x64,0x2d,
+  0x5,0x4b,0x40, 0x6,0x64,0x2c, 0x6,0x64,0x36, 0x5,0x4b,0x35,
+  0x6,0x64,0x2f, 0x6,0x64,0x34, 0x5,0x52,0x5d, 0x4,0x4e,0x5b,
+  0x7,0x2b,0x25, 0x7,0x2b,0x30, 0x5,0x52,0x5c, 0x5,0x52,0x5b,
+  0x4,0x4e,0x58, 0x7,0x2b,0x24, 0x7,0x2b,0x2a, 0x4,0x48,0x4a,
+  0x7,0x2b,0x2e, 0x5,0x52,0x5e, 0x4,0x4e,0x5e, 0x7,0x2b,0x2d,
+  0x7,0x2b,0x29, 0x7,0x35,0x4f, 0x7,0x2b,0x2c, 0xf,0x53,0x23,
+  0xf,0x53,0x24, 0x7,0x2b,0x27, 0x7,0x2b,0x28, 0x7,0x2b,0x2f,
+  0x7,0x2b,0x31, 0x7,0x2b,0x23, 0x7,0x2b,0x26, 0x5,0x52,0x5f,
+  0x4,0x54,0x6c, 0x5,0x59,0x61, 0x4,0x54,0x6e, 0x5,0x59,0x69,
+  0x7,0x35,0x58, 0x5,0x59,0x68, 0x5,0x59,0x66, 0x7,0x35,0x59,
+  0x7,0x35,0x57, 0x5,0x59,0x65, 0x5,0x59,0x63, 0x7,0x35,0x5b,
+  0x7,0x35,0x50, 0x5,0x59,0x6a, 0x5,0x59,0x62, 0x5,0x59,0x6b,
+  0x5,0x59,0x64, 0x5,0x59,0x67, 0x4,0x54,0x71, 0x7,0x35,0x4e,
+  0x5,0x59,0x60, 0x7,0x35,0x5a, 0x4,0x54,0x72, 0x7,0x35,0x56,
+  0x7,0x35,0x5c, 0xf,0x4d,0x40, 0xf,0x58,0x7a, 0xf,0x58,0x7c,
+  0xf,0x58,0x7d, 0xf,0x59,0x21, 0xf,0x59,0x22, 0xf,0x59,0x23,
+  0x7,0x35,0x52, 0x7,0x35,0x53, 0x7,0x35,0x54, 0x7,0x35,0x55,
+  0x5,0x59,0x6c, 0x5,0x59,0x5f, 0xf,0x58,0x7e, 0x5,0x59,0x6d,
+  0x4,0x59,0x75, 0x4,0x59,0x71, 0x4,0x59,0x6e, 0x7,0x3d,0x65,
+  0x5,0x5f,0x77, 0x4,0x59,0x79, 0x5,0x5f,0x78, 0x4,0x59,0x74,
+  0x5,0x5f,0x76, 0x5,0x5f,0x73, 0x5,0x5f,0x75, 0x4,0x59,0x6f,
+  0x5,0x5f,0x7b, 0x7,0x3d,0x6a, 0x4,0x59,0x72, 0x7,0x3d,0x6c,
+  0x5,0x5f,0x74, 0x7,0x3d,0x67, 0x4,0x59,0x78, 0x7,0x3d,0x6b,
+  0xf,0x5d,0x5e, 0xf,0x5d,0x5f, 0xf,0x5d,0x60, 0xf,0x5d,0x61,
+  0xf,0x5d,0x62, 0xf,0x5d,0x63, 0x7,0x3d,0x64, 0x7,0x3d,0x66,
+  0x5,0x5f,0x79, 0x5,0x5f,0x7a, 0x7,0x3d,0x68, 0x7,0x3d,0x6d,
+  0x5,0x66,0x2a, 0x4,0x5e,0x4a, 0x5,0x66,0x30, 0x5,0x66,0x2e,
+  0x4,0x62,0x24, 0x5,0x66,0x2d, 0x5,0x66,0x2b, 0x7,0x44,0x7b,
+  0x5,0x66,0x2c, 0x4,0x5e,0x48, 0x5,0x66,0x31, 0x5,0x66,0x2f,
+  0x7,0x44,0x7c, 0xf,0x61,0x55, 0xf,0x61,0x56, 0xf,0x61,0x57,
+  0xf,0x61,0x58, 0x7,0x44,0x79, 0x7,0x44,0x7a, 0x7,0x4b,0x76,
+  0x5,0x6a,0x5d, 0x7,0x4b,0x70, 0x7,0x4b,0x6d, 0x5,0x6a,0x5e,
+  0x4,0x62,0x2e, 0x7,0x4b,0x72, 0x5,0x6a,0x5c, 0x5,0x6e,0x56,
+  0x5,0x6a,0x5b, 0x5,0x6a,0x5a, 0x7,0x4b,0x74, 0x7,0x4b,0x6f,
+  0x4,0x62,0x2a, 0x7,0x4b,0x6e, 0x7,0x4b,0x75, 0x7,0x4b,0x71,
+  0xf,0x64,0x54, 0xf,0x64,0x55, 0x7,0x4b,0x77, 0x7,0x4b,0x73,
+  0x4,0x65,0x2e, 0x4,0x65,0x2d, 0x5,0x6e,0x5b, 0x5,0x6e,0x59,
+  0x7,0x51,0x4e, 0x5,0x6e,0x5a, 0x4,0x65,0x32, 0x7,0x51,0x4d,
+  0x4,0x65,0x33, 0x5,0x6e,0x58, 0x7,0x51,0x4b, 0x7,0x51,0x4f,
+  0xf,0x66,0x7a, 0x4,0x65,0x34, 0x7,0x51,0x50, 0x7,0x51,0x4c,
+  0x5,0x6e,0x57, 0x7,0x50,0x4c, 0x5,0x71,0x75, 0x5,0x71,0x76,
+  0x7,0x56,0x2f, 0x5,0x71,0x78, 0x7,0x56,0x38, 0x7,0x5a,0x31,
+  0x4,0x67,0x7a, 0x4,0x67,0x78, 0x7,0x56,0x33, 0x7,0x56,0x31,
+  0x7,0x56,0x36, 0x5,0x71,0x77, 0x5,0x71,0x79, 0x5,0x71,0x7a,
+  0x7,0x56,0x30, 0x7,0x56,0x34, 0xf,0x68,0x7a, 0xf,0x68,0x7b,
+  0xf,0x68,0x7c, 0x7,0x56,0x37, 0x7,0x56,0x35, 0x7,0x5a,0x30,
+  0x5,0x74,0x6c, 0x5,0x74,0x6b, 0x7,0x5a,0x2d, 0x7,0x5a,0x2f,
+  0x5,0x74,0x6a, 0xf,0x6a,0x34, 0x7,0x5a,0x2b, 0x7,0x5a,0x2e,
+  0x7,0x5a,0x2c, 0x7,0x5d,0x52, 0x7,0x5d,0x51, 0x7,0x5d,0x4f,
+  0x5,0x76,0x6c, 0x5,0x76,0x6d, 0x4,0x6b,0x2e, 0x5,0x76,0x6a,
+  0x7,0x5d,0x4d, 0x4,0x6b,0x2f, 0x7,0x5d,0x4e, 0xf,0x6b,0x35,
+  0x7,0x5d,0x50, 0x7,0x5d,0x4c, 0x7,0x5d,0x4b, 0x4,0x6c,0x38,
+  0x7,0x60,0x24, 0x5,0x76,0x6b, 0x4,0x6c,0x37, 0xf,0x6b,0x72,
+  0x7,0x60,0x25, 0x4,0x6d,0x2e, 0x5,0x79,0x5a, 0x5,0x7a,0x48,
+  0x7,0x63,0x24, 0x5,0x7a,0x49, 0x7,0x63,0x25, 0x7,0x63,0x26,
+  0x4,0x6e,0x23, 0x7,0x64,0x25, 0x7,0x65,0x4d, 0x6,0x46,0x36,
+  0x6,0x50,0x3f, 0x4,0x3c,0x21, 0x6,0x50,0x3d, 0x5,0x3d,0x4b,
+  0xf,0x40,0x2e, 0x6,0x50,0x3e, 0x5,0x44,0x3b, 0x5,0x44,0x40,
+  0x4,0x41,0x6f, 0x5,0x44,0x3d, 0x5,0x44,0x3e, 0x6,0x5a,0x34,
+  0x6,0x5a,0x36, 0x5,0x44,0x3c, 0x4,0x41,0x70, 0x6,0x5a,0x35,
+  0x6,0x53,0x33, 0x5,0x44,0x3f, 0x6,0x5a,0x37, 0x4,0x48,0x58,
+  0x5,0x4b,0x48, 0x4,0x48,0x55, 0x5,0x4b,0x47, 0x5,0x4b,0x46,
+  0x5,0x4b,0x45, 0x4,0x48,0x53, 0x6,0x64,0x37, 0x4,0x48,0x52,
+  0x6,0x64,0x3b, 0x6,0x64,0x39, 0x6,0x64,0x38, 0x4,0x4e,0x5f,
+  0x5,0x52,0x62, 0x4,0x4e,0x62, 0x7,0x2b,0x34, 0x7,0x2b,0x33,
+  0x7,0x2b,0x32, 0x5,0x52,0x61, 0x7,0x2b,0x35, 0xf,0x53,0x25,
+  0xf,0x53,0x26, 0x5,0x59,0x6f, 0x5,0x59,0x77, 0x5,0x59,0x70,
+  0x7,0x35,0x5d, 0x7,0x35,0x60, 0x5,0x59,0x6e, 0x5,0x59,0x73,
+  0x5,0x59,0x76, 0x7,0x35,0x5f, 0x7,0x35,0x61, 0x5,0x59,0x74,
+  0x5,0x59,0x75, 0x7,0x35,0x5e, 0xf,0x59,0x25, 0x5,0x59,0x72,
+  0x5,0x59,0x71, 0x7,0x3d,0x71, 0x4,0x5a,0x25, 0x5,0x60,0x25,
+  0x5,0x60,0x26, 0x4,0x59,0x7b, 0x5,0x5f,0x7c, 0x7,0x3d,0x70,
+  0x4,0x5a,0x24, 0x5,0x66,0x32, 0x5,0x60,0x22, 0x4,0x5a,0x23,
+  0x5,0x5f,0x7e, 0x5,0x60,0x21, 0x5,0x60,0x24, 0x5,0x5f,0x7d,
+  0x5,0x60,0x23, 0x7,0x3d,0x6e, 0xf,0x5d,0x64, 0xf,0x5d,0x65,
+  0x7,0x3d,0x72, 0x7,0x3d,0x6f, 0x4,0x5e,0x53, 0x7,0x45,0x22,
+  0x7,0x45,0x24, 0x5,0x66,0x37, 0x7,0x45,0x26, 0x5,0x66,0x34,
+  0x5,0x66,0x38, 0x4,0x5e,0x54, 0x5,0x66,0x3a, 0x4,0x62,0x31,
+  0x5,0x66,0x35, 0x7,0x45,0x25, 0x5,0x66,0x36, 0x5,0x66,0x39,
+  0x5,0x66,0x33, 0xf,0x61,0x59, 0x7,0x45,0x28, 0x7,0x45,0x23,
+  0x7,0x45,0x21, 0x7,0x45,0x27, 0x7,0x44,0x7d, 0x5,0x6a,0x5f,
+  0x4,0x62,0x33, 0x4,0x62,0x34, 0x4,0x62,0x35, 0x5,0x6a,0x60,
+  0x7,0x4b,0x79, 0xf,0x64,0x56, 0xf,0x64,0x57, 0x7,0x4b,0x78,
+  0x7,0x4b,0x7a, 0x7,0x4b,0x7b, 0x7,0x4b,0x7c, 0x5,0x6e,0x5e,
+  0x5,0x6e,0x61, 0x5,0x6e,0x60, 0x4,0x65,0x35, 0x5,0x6e,0x5c,
+  0x4,0x65,0x37, 0x5,0x6e,0x5f, 0xf,0x66,0x7b, 0x5,0x6e,0x62,
+  0x5,0x6e,0x5d, 0x4,0x65,0x38, 0x7,0x56,0x40, 0x4,0x67,0x7d,
+  0x4,0x68,0x21, 0x5,0x71,0x7b, 0x7,0x56,0x39, 0x5,0x71,0x7c,
+  0x7,0x56,0x3c, 0x7,0x56,0x3a, 0xf,0x68,0x7d, 0x7,0x56,0x3f,
+  0x7,0x56,0x41, 0x7,0x56,0x42, 0x7,0x56,0x3d, 0x7,0x56,0x3e,
+  0x7,0x56,0x3b, 0x7,0x5a,0x32, 0xf,0x6a,0x35, 0x7,0x5a,0x33,
+  0x7,0x5d,0x53, 0x5,0x78,0x49, 0x4,0x6c,0x3b, 0x7,0x60,0x26,
+  0x7,0x60,0x27, 0x5,0x79,0x5b, 0x7,0x61,0x61, 0x5,0x79,0x5c,
+  0x4,0x6d,0x2f, 0x4,0x6d,0x66, 0x5,0x7a,0x4a, 0x5,0x7b,0x24,
+  0x7,0x64,0x26, 0xf,0x6d,0x24, 0x5,0x7c,0x47, 0x7,0x66,0x55,
+  0x6,0x3c,0x75, 0x5,0x40,0x39, 0x7,0x2b,0x36, 0x7,0x4b,0x7d,
+  0x5,0x6a,0x61, 0x7,0x56,0x43, 0x4,0x69,0x64, 0x5,0x74,0x6d,
+  0x6,0x34,0x7c, 0x6,0x34,0x7d, 0x6,0x35,0x22, 0x6,0x34,0x7e,
+  0x5,0x30,0x71, 0x6,0x3c,0x76, 0x6,0x3c,0x78, 0x5,0x3d,0x4c,
+  0x5,0x36,0x4a, 0x5,0x36,0x47, 0x6,0x46,0x3a, 0x6,0x46,0x38,
+  0x5,0x36,0x49, 0x6,0x46,0x39, 0x6,0x46,0x3b, 0x6,0x50,0x40,
+  0x5,0x36,0x48, 0x6,0x50,0x41, 0x6,0x50,0x46, 0x4,0x3c,0x22,
+  0x5,0x3d,0x4d, 0x6,0x50,0x44, 0x6,0x50,0x45, 0x4,0x3c,0x26,
+  0x5,0x3d,0x4e, 0x6,0x5a,0x38, 0x5,0x3d,0x4f, 0x6,0x50,0x42,
+  0xf,0x40,0x2f, 0x6,0x50,0x43, 0x4,0x3c,0x23, 0x6,0x5a,0x42,
+  0x6,0x5a,0x39, 0x5,0x44,0x42, 0x5,0x44,0x44, 0x5,0x44,0x41,
+  0x5,0x44,0x47, 0x4,0x41,0x76, 0x5,0x44,0x43, 0x6,0x64,0x43,
+  0x5,0x44,0x45, 0x6,0x5a,0x3c, 0x6,0x5a,0x3b, 0x6,0x64,0x3d,
+  0x4,0x41,0x73, 0x6,0x5a,0x3a, 0x6,0x64,0x3e, 0x6,0x5a,0x3e,
+  0x5,0x44,0x48, 0x6,0x5a,0x41, 0x5,0x52,0x63, 0xf,0x46,0x37,
+  0x6,0x5a,0x40, 0x6,0x5a,0x3f, 0x6,0x64,0x3c, 0x4,0x41,0x78,
+  0x5,0x44,0x46, 0x6,0x64,0x3f, 0x7,0x2b,0x37, 0x6,0x64,0x44,
+  0x5,0x4b,0x4d, 0x5,0x4b,0x49, 0x6,0x64,0x45, 0x5,0x4b,0x4a,
+  0x4,0x48,0x5a, 0x6,0x64,0x42, 0x5,0x4b,0x4b, 0x7,0x2b,0x39,
+  0x6,0x64,0x41, 0xf,0x46,0x36, 0xf,0x53,0x28, 0x7,0x2b,0x3a,
+  0x4,0x4e,0x6b, 0x7,0x2b,0x40, 0x4,0x4e,0x6a, 0x5,0x52,0x69,
+  0x5,0x52,0x64, 0x5,0x59,0x79, 0x4,0x4e,0x68, 0x5,0x52,0x66,
+  0x5,0x52,0x6b, 0x5,0x52,0x68, 0x4,0x4e,0x6c, 0x5,0x52,0x6a,
+  0x7,0x2b,0x3c, 0x5,0x52,0x65, 0x7,0x2b,0x3b, 0x7,0x3d,0x73,
+  0x5,0x52,0x67, 0x7,0x2b,0x3e, 0x7,0x2b,0x3d, 0xf,0x53,0x27,
+  0x5,0x59,0x78, 0x7,0x2b,0x3f, 0x5,0x5a,0x23, 0x4,0x5a,0x26,
+  0x5,0x5a,0x24, 0x4,0x54,0x7b, 0x7,0x35,0x66, 0x7,0x35,0x6a,
+  0x5,0x60,0x27, 0x5,0x59,0x7b, 0x7,0x35,0x69, 0x5,0x59,0x7e,
+  0x7,0x35,0x67, 0x5,0x59,0x7c, 0x7,0x35,0x6f, 0x4,0x54,0x79,
+  0x7,0x35,0x6b, 0x7,0x35,0x70, 0x5,0x5a,0x25, 0x7,0x35,0x68,
+  0x7,0x35,0x63, 0x5,0x59,0x7a, 0x7,0x35,0x65, 0x7,0x35,0x64,
+  0x7,0x35,0x6c, 0x5,0x60,0x29, 0x7,0x35,0x6e, 0x7,0x3d,0x75,
+  0x7,0x35,0x62, 0x5,0x5a,0x22, 0x7,0x35,0x6d, 0x5,0x59,0x7d,
+  0xf,0x59,0x26, 0xf,0x59,0x27, 0xf,0x59,0x28, 0xf,0x59,0x29,
+  0x5,0x5a,0x21, 0x7,0x3d,0x74, 0x5,0x60,0x28, 0x5,0x60,0x34,
+  0x7,0x3d,0x77, 0x5,0x60,0x2d, 0x5,0x60,0x2f, 0x5,0x60,0x33,
+  0x5,0x60,0x2b, 0x7,0x3d,0x76, 0x5,0x60,0x32, 0x5,0x60,0x35,
+  0x4,0x5a,0x2b, 0x5,0x60,0x36, 0x7,0x3d,0x78, 0x7,0x3d,0x7d,
+  0x7,0x45,0x2a, 0x7,0x3d,0x7a, 0x5,0x60,0x2a, 0x7,0x45,0x2b,
+  0x7,0x3e,0x21, 0x5,0x60,0x2e, 0x7,0x3d,0x79, 0x7,0x3d,0x7e,
+  0xf,0x5d,0x66, 0xf,0x5d,0x67, 0x7,0x3d,0x7b, 0x5,0x60,0x30,
+  0x7,0x3d,0x7c, 0x7,0x45,0x2f, 0x5,0x66,0x3f, 0x5,0x66,0x3b,
+  0x4,0x5e,0x56, 0x4,0x5e,0x5c, 0x5,0x60,0x38, 0x4,0x5e,0x5d,
+  0x5,0x66,0x3d, 0x5,0x60,0x37, 0x5,0x66,0x3c, 0x7,0x45,0x2e,
+  0x7,0x45,0x2d, 0x7,0x4b,0x7e, 0x4,0x5e,0x5e, 0x5,0x66,0x3e,
+  0x7,0x4c,0x22, 0x7,0x51,0x54, 0x7,0x45,0x2c, 0x7,0x45,0x29,
+  0x7,0x45,0x31, 0xf,0x61,0x5a, 0xf,0x61,0x5b, 0x7,0x4c,0x25,
+  0x7,0x4c,0x21, 0x4,0x5e,0x55, 0x7,0x45,0x32, 0x7,0x45,0x30,
+  0x5,0x6a,0x64, 0x7,0x4c,0x23, 0x5,0x6a,0x62, 0x4,0x62,0x3b,
+  0x4,0x65,0x3d, 0x7,0x51,0x53, 0x5,0x6a,0x69, 0x5,0x6a,0x66,
+  0x5,0x6a,0x68, 0x5,0x6a,0x6a, 0x7,0x51,0x51, 0x4,0x62,0x37,
+  0x5,0x6a,0x67, 0x5,0x60,0x39, 0x5,0x6a,0x63, 0x7,0x51,0x52,
+  0x4,0x62,0x39, 0x7,0x51,0x58, 0x7,0x4c,0x24, 0x7,0x51,0x57,
+  0x4,0x62,0x3a, 0xf,0x64,0x58, 0xf,0x64,0x59, 0x5,0x6a,0x65,
+  0x7,0x51,0x56, 0x5,0x6a,0x6b, 0x4,0x65,0x3e, 0x7,0x51,0x55,
+  0x7,0x51,0x59, 0x7,0x51,0x5f, 0x7,0x56,0x44, 0x5,0x71,0x7d,
+  0x7,0x51,0x60, 0x5,0x6e,0x65, 0x4,0x65,0x3f, 0x5,0x71,0x7e,
+  0x5,0x6e,0x64, 0x7,0x51,0x5e, 0x7,0x51,0x62, 0x5,0x6e,0x63,
+  0x7,0x4c,0x27, 0x7,0x51,0x61, 0x7,0x51,0x5b, 0x7,0x51,0x5c,
+  0x7,0x51,0x5d, 0x7,0x56,0x45, 0x7,0x51,0x63, 0x7,0x51,0x5a,
+  0x5,0x72,0x28, 0x5,0x72,0x22, 0x7,0x56,0x46, 0x4,0x68,0x25,
+  0x5,0x72,0x24, 0x5,0x72,0x21, 0x7,0x56,0x47, 0x5,0x72,0x2b,
+  0x7,0x56,0x48, 0x5,0x72,0x2a, 0x5,0x72,0x23, 0x5,0x72,0x27,
+  0x5,0x72,0x25, 0x7,0x56,0x49, 0x5,0x72,0x26, 0x5,0x72,0x29,
+  0xf,0x68,0x7e, 0x4,0x69,0x66, 0x5,0x74,0x6e, 0x5,0x74,0x6f,
+  0x7,0x5a,0x37, 0x7,0x5d,0x54, 0x7,0x5a,0x36, 0x5,0x74,0x70,
+  0x7,0x5a,0x35, 0xf,0x6a,0x37, 0x7,0x5a,0x34, 0x5,0x76,0x6e,
+  0x7,0x5d,0x56, 0x5,0x76,0x6f, 0x5,0x76,0x70, 0x5,0x78,0x4a,
+  0x7,0x5d,0x55, 0x5,0x78,0x4b, 0x5,0x78,0x4c, 0x4,0x6c,0x3c,
+  0x7,0x60,0x28, 0x7,0x60,0x2a, 0x7,0x60,0x29, 0x5,0x79,0x5d,
+  0x7,0x64,0x27, 0x5,0x7b,0x25, 0x6,0x3c,0x79, 0x6,0x46,0x3c,
+  0x6,0x64,0x46, 0x7,0x2b,0x41, 0x6,0x64,0x48, 0x6,0x64,0x47,
+  0x5,0x52,0x6c, 0x4,0x55,0x24, 0x4,0x55,0x25, 0x7,0x3e,0x22,
+  0x7,0x3e,0x23, 0x7,0x35,0x71, 0x7,0x35,0x73, 0x7,0x35,0x72,
+  0x7,0x4c,0x29, 0x7,0x4c,0x28, 0x7,0x45,0x33, 0x7,0x4d,0x73,
+  0x7,0x51,0x64, 0x7,0x60,0x2b, 0x4,0x6e,0x26, 0xf,0x32,0x71,
+  0x4,0x41,0x7c, 0x6,0x5a,0x43, 0x5,0x47,0x54, 0x6,0x64,0x49,
+  0x6,0x64,0x4a, 0xf,0x4d,0x41, 0xf,0x53,0x29, 0x6,0x64,0x4b,
+  0x7,0x2b,0x42, 0xf,0x53,0x2a, 0xf,0x59,0x2a, 0x7,0x35,0x74,
+  0xf,0x5d,0x68, 0x7,0x3e,0x24, 0x7,0x45,0x36, 0x5,0x66,0x41,
+  0x5,0x66,0x40, 0x5,0x66,0x42, 0x7,0x45,0x35, 0x7,0x45,0x34,
+  0x5,0x6a,0x6c, 0x4,0x62,0x3d, 0x4,0x62,0x3e, 0x7,0x4c,0x2a,
+  0x7,0x51,0x65, 0xf,0x66,0x7c, 0x5,0x72,0x2c, 0xf,0x69,0x21,
+  0x7,0x56,0x4a, 0x7,0x5d,0x57, 0x5,0x7a,0x4b, 0x5,0x36,0x4b,
+  0x5,0x36,0x4c, 0x5,0x3d,0x50, 0x6,0x50,0x48, 0xf,0x40,0x31,
+  0x6,0x50,0x47, 0x5,0x44,0x49, 0x6,0x5a,0x45, 0x6,0x5a,0x44,
+  0x6,0x5a,0x47, 0x6,0x5a,0x46, 0x5,0x4b,0x51, 0x6,0x64,0x4d,
+  0x6,0x64,0x4e, 0x5,0x4b,0x50, 0x4,0x48,0x61, 0x6,0x64,0x4c,
+  0x6,0x64,0x52, 0x5,0x4b,0x4f, 0x7,0x2b,0x43, 0xf,0x4d,0x42,
+  0xf,0x4d,0x43, 0xf,0x4d,0x44, 0xf,0x4d,0x45, 0x7,0x2b,0x46,
+  0x6,0x64,0x4f, 0x6,0x64,0x51, 0x5,0x4b,0x52, 0x7,0x2b,0x4a,
+  0x5,0x52,0x72, 0x7,0x2b,0x4e, 0x7,0x2b,0x47, 0x5,0x5a,0x32,
+  0x5,0x52,0x74, 0x5,0x52,0x77, 0x5,0x52,0x6d, 0x5,0x52,0x70,
+  0x5,0x52,0x6e, 0x5,0x52,0x75, 0x7,0x2b,0x44, 0x5,0x52,0x76,
+  0x7,0x2b,0x48, 0x5,0x52,0x73, 0x7,0x2b,0x4b, 0x7,0x2b,0x49,
+  0x5,0x52,0x6f, 0x7,0x2b,0x45, 0x7,0x2b,0x4c, 0x5,0x52,0x71,
+  0xf,0x53,0x2b, 0xf,0x53,0x2c, 0xf,0x53,0x2d, 0x7,0x2b,0x4d,
+  0x7,0x35,0x7a, 0x4,0x55,0x2c, 0x7,0x35,0x79, 0x5,0x5a,0x2f,
+  0x4,0x55,0x2a, 0x4,0x55,0x27, 0x4,0x55,0x2b, 0x4,0x55,0x28,
+  0x7,0x35,0x75, 0x5,0x5a,0x29, 0x4,0x55,0x29, 0x5,0x5a,0x30,
+  0x5,0x5a,0x2d, 0x7,0x36,0x24, 0x5,0x5a,0x33, 0x5,0x5a,0x27,
+  0x5,0x5a,0x31, 0x5,0x5a,0x34, 0x5,0x5a,0x2b, 0x7,0x35,0x7c,
+  0x7,0x35,0x7b, 0x7,0x36,0x26, 0x7,0x36,0x21, 0x7,0x35,0x78,
+  0x7,0x36,0x23, 0x5,0x5a,0x2a, 0x7,0x36,0x22, 0xf,0x59,0x2c,
+  0x5,0x5a,0x28, 0x7,0x35,0x7d, 0x7,0x35,0x7e, 0x7,0x36,0x27,
+  0x7,0x36,0x25, 0xf,0x59,0x2b, 0x7,0x35,0x76, 0x7,0x35,0x77,
+  0x5,0x60,0x3a, 0x7,0x3e,0x2c, 0x5,0x60,0x3b, 0x7,0x3e,0x26,
+  0x4,0x5a,0x2f, 0x7,0x3e,0x27, 0x7,0x3e,0x25, 0x5,0x60,0x3c,
+  0x4,0x5a,0x2c, 0x7,0x3e,0x2a, 0x7,0x3e,0x2b, 0x5,0x4b,0x53,
+  0x7,0x3e,0x28, 0x5,0x60,0x3e, 0x5,0x60,0x3d, 0xf,0x5d,0x69,
+  0xf,0x5d,0x6a, 0x7,0x45,0x3c, 0x5,0x66,0x4c, 0x5,0x66,0x4b,
+  0x5,0x66,0x47, 0x4,0x5e,0x64, 0x5,0x66,0x49, 0x5,0x66,0x48,
+  0x4,0x5e,0x61, 0x5,0x66,0x45, 0x5,0x66,0x4e, 0x4,0x5e,0x6d,
+  0x4,0x5e,0x69, 0x4,0x5e,0x6a, 0x4,0x5e,0x66, 0x5,0x66,0x4f,
+  0x5,0x66,0x43, 0x4,0x5e,0x6c, 0x7,0x45,0x3b, 0x7,0x45,0x3a,
+  0x7,0x45,0x37, 0x5,0x66,0x4a, 0xf,0x61,0x5d, 0xf,0x61,0x5e,
+  0xf,0x61,0x60, 0x4,0x5e,0x6b, 0xf,0x61,0x5c, 0x7,0x45,0x38,
+  0x5,0x66,0x44, 0x7,0x45,0x39, 0x5,0x66,0x4d, 0x5,0x6a,0x6d,
+  0x5,0x6a,0x73, 0x5,0x6a,0x6f, 0x4,0x62,0x43, 0x7,0x4c,0x31,
+  0x5,0x66,0x50, 0x7,0x4c,0x2c, 0x5,0x66,0x46, 0x5,0x6a,0x71,
+  0x5,0x6a,0x70, 0x5,0x6a,0x74, 0x7,0x4c,0x2b, 0x5,0x6a,0x72,
+  0x5,0x6a,0x76, 0x4,0x62,0x42, 0x5,0x6a,0x77, 0x7,0x4c,0x32,
+  0x7,0x4c,0x34, 0x5,0x6a,0x75, 0x7,0x4c,0x33, 0x7,0x4c,0x2d,
+  0x7,0x4c,0x2e, 0x7,0x4c,0x2f, 0xf,0x64,0x5b, 0xf,0x64,0x5c,
+  0xf,0x64,0x5d, 0x7,0x4c,0x30, 0x3,0x57,0x36, 0x7,0x4c,0x35,
+  0x4,0x65,0x45, 0x7,0x51,0x6a, 0x7,0x51,0x69, 0x5,0x6e,0x6e,
+  0x5,0x6e,0x69, 0x5,0x6e,0x6b, 0x5,0x6e,0x68, 0x4,0x65,0x42,
+  0x5,0x6e,0x70, 0xf,0x66,0x7d, 0x4,0x65,0x43, 0x4,0x65,0x44,
+  0x4,0x65,0x48, 0x5,0x6e,0x71, 0x5,0x6e,0x72, 0x5,0x6e,0x67,
+  0x7,0x51,0x68, 0x4,0x68,0x26, 0x5,0x6e,0x6a, 0x5,0x6e,0x6f,
+  0x5,0x6e,0x6c, 0x7,0x51,0x6b, 0x7,0x51,0x6f, 0x7,0x51,0x70,
+  0x7,0x51,0x71, 0x7,0x51,0x6d, 0x7,0x51,0x6c, 0xf,0x66,0x7e,
+  0xf,0x67,0x21, 0x7,0x51,0x67, 0x7,0x51,0x6e, 0x7,0x52,0x27,
+  0x7,0x51,0x66, 0x5,0x72,0x2f, 0x5,0x72,0x2e, 0x5,0x72,0x31,
+  0x4,0x68,0x27, 0x5,0x72,0x32, 0x5,0x72,0x30, 0x4,0x68,0x2c,
+  0x7,0x56,0x4d, 0x7,0x56,0x4c, 0x7,0x56,0x4e, 0x7,0x56,0x4b,
+  0xf,0x69,0x22, 0x7,0x56,0x4f, 0x7,0x56,0x50, 0x5,0x74,0x78,
+  0x7,0x5a,0x3d, 0x5,0x72,0x34, 0x7,0x5a,0x41, 0x7,0x5a,0x38,
+  0x5,0x74,0x71, 0x7,0x5a,0x3b, 0x5,0x72,0x33, 0x5,0x74,0x74,
+  0x5,0x74,0x77, 0x5,0x74,0x73, 0x7,0x5a,0x40, 0x4,0x69,0x6c,
+  0x5,0x74,0x75, 0x7,0x5a,0x39, 0x7,0x5a,0x3a, 0x7,0x5a,0x3c,
+  0xf,0x6a,0x38, 0xf,0x6a,0x39, 0xf,0x6a,0x3a, 0x5,0x74,0x72,
+  0x5,0x74,0x79, 0x7,0x5a,0x3f, 0x7,0x5d,0x5f, 0x7,0x5d,0x5d,
+  0x5,0x76,0x71, 0x5,0x78,0x4e, 0x7,0x5d,0x5c, 0x7,0x5d,0x59,
+  0x5,0x76,0x72, 0x7,0x5d,0x5a, 0x7,0x5d,0x5e, 0x7,0x5d,0x5b,
+  0x7,0x5d,0x60, 0xf,0x6b,0x38, 0xf,0x6b,0x39, 0x7,0x5d,0x58,
+  0x5,0x78,0x4f, 0x7,0x60,0x31, 0x7,0x60,0x34, 0x5,0x78,0x4d,
+  0x7,0x60,0x33, 0x7,0x60,0x36, 0x7,0x60,0x35, 0x7,0x60,0x2f,
+  0x7,0x60,0x30, 0x7,0x60,0x2c, 0x7,0x60,0x32, 0x5,0x79,0x62,
+  0x7,0x61,0x63, 0x5,0x79,0x63, 0x5,0x79,0x5f, 0x4,0x6d,0x31,
+  0x5,0x79,0x60, 0x7,0x61,0x62, 0x5,0x79,0x5e, 0x5,0x79,0x61,
+  0x4,0x6d,0x32, 0x7,0x61,0x64, 0x5,0x7a,0x4c, 0x5,0x7a,0x4d,
+  0x4,0x6e,0x27, 0x7,0x64,0x29, 0x7,0x64,0x28, 0x4,0x6e,0x40,
+  0x7,0x64,0x72, 0x7,0x64,0x73, 0x7,0x64,0x71, 0x7,0x65,0x4e,
+  0x5,0x7c,0x23, 0x7,0x65,0x6a, 0x7,0x65,0x7a, 0x7,0x65,0x7b,
+  0x7,0x66,0x44, 0x5,0x3d,0x51, 0x4,0x3c,0x27, 0x6,0x5a,0x49,
+  0x6,0x5a,0x4a, 0x6,0x5a,0x48, 0x6,0x5a,0x4b, 0x4,0x48,0x63,
+  0x4,0x48,0x65, 0x5,0x4b,0x55, 0x6,0x64,0x58, 0x5,0x4b,0x54,
+  0x4,0x48,0x64, 0x6,0x64,0x56, 0x6,0x64,0x53, 0x6,0x64,0x54,
+  0x6,0x64,0x55, 0x6,0x64,0x57, 0x4,0x4e,0x72, 0x4,0x4e,0x71,
+  0x5,0x52,0x7a, 0x5,0x52,0x79, 0x7,0x2b,0x52, 0x7,0x36,0x2c,
+  0x5,0x52,0x78, 0x5,0x52,0x7b, 0x4,0x4e,0x77, 0x7,0x2b,0x50,
+  0x7,0x2b,0x54, 0x7,0x2b,0x51, 0x4,0x4e,0x78, 0x7,0x2b,0x53,
+  0x5,0x5a,0x36, 0x5,0x5a,0x35, 0x4,0x55,0x33, 0x7,0x36,0x2b,
+  0x7,0x2b,0x4f, 0x7,0x36,0x2a, 0x7,0x36,0x29, 0x7,0x3e,0x2e,
+  0x4,0x5a,0x34, 0x7,0x3e,0x32, 0x4,0x5a,0x32, 0x7,0x3e,0x33,
+  0x5,0x60,0x3f, 0x7,0x3e,0x31, 0x7,0x3e,0x2d, 0x7,0x3e,0x2f,
+  0x7,0x3e,0x30, 0x5,0x66,0x59, 0x7,0x45,0x3e, 0x4,0x5e,0x6f,
+  0x7,0x45,0x3d, 0x5,0x66,0x57, 0x7,0x45,0x3f, 0x5,0x66,0x52,
+  0x5,0x6a,0x78, 0x5,0x66,0x55, 0x5,0x66,0x53, 0x5,0x66,0x56,
+  0x5,0x66,0x58, 0x7,0x3e,0x34, 0x5,0x66,0x54, 0x7,0x4c,0x3b,
+  0x5,0x6a,0x7a, 0x5,0x6a,0x79, 0x7,0x4c,0x3a, 0x7,0x4c,0x37,
+  0x5,0x6a,0x7c, 0x5,0x6a,0x7d, 0x5,0x6a,0x7b, 0x7,0x4c,0x3d,
+  0x7,0x4c,0x3e, 0x7,0x4c,0x39, 0x7,0x4c,0x38, 0x7,0x4c,0x3c,
+  0x7,0x4c,0x36, 0x4,0x65,0x4a, 0x5,0x6e,0x75, 0x5,0x6e,0x74,
+  0x5,0x6e,0x73, 0x7,0x51,0x73, 0x7,0x51,0x74, 0x7,0x51,0x75,
+  0x4,0x68,0x2f, 0x5,0x72,0x36, 0x7,0x56,0x57, 0x4,0x68,0x2e,
+  0x5,0x72,0x35, 0x5,0x72,0x37, 0x7,0x56,0x53, 0x7,0x56,0x54,
+  0x5,0x72,0x38, 0x7,0x56,0x55, 0xf,0x69,0x23, 0x7,0x56,0x56,
+  0x7,0x56,0x52, 0x4,0x69,0x6d, 0x7,0x5a,0x42, 0x4,0x69,0x70,
+  0x7,0x5a,0x43, 0x4,0x69,0x6f, 0x7,0x5a,0x44, 0x7,0x5d,0x65,
+  0x7,0x5d,0x66, 0x5,0x76,0x73, 0x4,0x6b,0x36, 0x5,0x76,0x75,
+  0x4,0x6b,0x37, 0x7,0x5d,0x62, 0x5,0x76,0x74, 0x7,0x5d,0x67,
+  0x7,0x5d,0x61, 0x7,0x5d,0x63, 0x7,0x5d,0x64, 0x4,0x6c,0x3f,
+  0x5,0x78,0x50, 0x4,0x6d,0x34, 0x7,0x61,0x65, 0xf,0x6b,0x3a,
+  0x7,0x63,0x27, 0x5,0x7a,0x4e, 0x7,0x63,0x28, 0x7,0x64,0x2a,
+  0x7,0x64,0x74, 0x5,0x7b,0x6e, 0x4,0x42,0x23, 0x4,0x48,0x66,
+  0x5,0x46,0x64, 0x5,0x4b,0x56, 0x6,0x64,0x5a, 0xf,0x4d,0x46,
+  0xf,0x4d,0x47, 0xf,0x4d,0x48, 0x6,0x64,0x59, 0x7,0x2b,0x56,
+  0xf,0x53,0x2e, 0xf,0x53,0x2f, 0x7,0x36,0x2e, 0x7,0x36,0x2d,
+  0xf,0x59,0x2d, 0xf,0x59,0x2e, 0x4,0x5a,0x36, 0x5,0x60,0x40,
+  0xf,0x5d,0x6b, 0xf,0x5d,0x6c, 0x7,0x45,0x40, 0xf,0x61,0x61,
+  0xf,0x61,0x62, 0x7,0x4c,0x3f, 0xf,0x64,0x5f, 0x5,0x6e,0x76,
+  0xf,0x67,0x22, 0xf,0x67,0x23, 0xf,0x67,0x24, 0xf,0x67,0x25,
+  0x4,0x68,0x31, 0x7,0x56,0x58, 0x7,0x5a,0x45, 0x7,0x5d,0x68,
+  0x7,0x5d,0x69, 0x7,0x5d,0x6a, 0x7,0x60,0x37, 0xf,0x6b,0x73,
+  0x7,0x61,0x66, 0x7,0x61,0x67, 0x7,0x63,0x29, 0x7,0x64,0x2b,
+  0x4,0x6e,0x28, 0x7,0x65,0x7c, 0x6,0x50,0x49, 0x6,0x50,0x4a,
+  0x6,0x5a,0x4d, 0x6,0x5a,0x4c, 0xf,0x46,0x3a, 0xf,0x40,0x69,
+  0x4,0x48,0x68, 0x5,0x4b,0x58, 0x6,0x64,0x60, 0x6,0x64,0x5f,
+  0x6,0x64,0x5d, 0x6,0x64,0x61, 0x6,0x64,0x5b, 0x6,0x64,0x5c,
+  0x5,0x4b,0x57, 0x5,0x4b,0x5a, 0x5,0x52,0x7e, 0x7,0x2b,0x57,
+  0x7,0x2b,0x5a, 0x4,0x4e,0x7e, 0x7,0x2b,0x58, 0x5,0x53,0x24,
+  0x4,0x4f,0x22, 0x7,0x2b,0x5b, 0x5,0x53,0x23, 0x4,0x4e,0x7c,
+  0x4,0x4e,0x7d, 0x5,0x52,0x7c, 0x4,0x4e,0x7a, 0x5,0x52,0x7d,
+  0x5,0x53,0x22, 0x5,0x53,0x21, 0x7,0x2b,0x5c, 0x7,0x2b,0x59,
+  0xf,0x53,0x30, 0xf,0x53,0x31, 0xf,0x53,0x32, 0xf,0x53,0x33,
+  0x7,0x36,0x2f, 0x4,0x55,0x37, 0x7,0x36,0x31, 0x5,0x5a,0x3a,
+  0x7,0x36,0x30, 0x4,0x55,0x39, 0x4,0x55,0x34, 0x4,0x55,0x3b,
+  0x5,0x5a,0x37, 0x5,0x5a,0x39, 0x4,0x55,0x3a, 0x4,0x55,0x38,
+  0x7,0x36,0x33, 0x5,0x5a,0x38, 0xf,0x59,0x2f, 0xf,0x59,0x30,
+  0xf,0x59,0x31, 0xf,0x59,0x33, 0x7,0x36,0x32, 0x4,0x5a,0x3a,
+  0x4,0x5a,0x3c, 0x7,0x3e,0x3a, 0x5,0x60,0x41, 0x5,0x60,0x44,
+  0x5,0x60,0x42, 0x7,0x3e,0x38, 0x5,0x60,0x45, 0x5,0x60,0x46,
+  0x5,0x60,0x43, 0x7,0x3e,0x35, 0x4,0x5a,0x39, 0x7,0x3e,0x36,
+  0xf,0x5d,0x6d, 0xf,0x5d,0x6e, 0xf,0x5d,0x6f, 0x7,0x3e,0x37,
+  0x7,0x3e,0x39, 0x7,0x3e,0x3b, 0x7,0x45,0x42, 0x5,0x66,0x5e,
+  0x4,0x5e,0x71, 0x5,0x66,0x5c, 0x5,0x66,0x60, 0x5,0x66,0x5f,
+  0x7,0x45,0x44, 0x5,0x66,0x61, 0x7,0x4c,0x40, 0x7,0x45,0x43,
+  0x4,0x5e,0x72, 0x5,0x66,0x5a, 0x4,0x5e,0x78, 0x5,0x66,0x5b,
+  0xf,0x61,0x63, 0xf,0x61,0x65, 0x5,0x66,0x5d, 0x7,0x45,0x41,
+  0xf,0x61,0x64, 0x4,0x62,0x4d, 0x7,0x4c,0x43, 0x7,0x4c,0x47,
+  0x5,0x6a,0x7e, 0x5,0x6b,0x21, 0x5,0x6b,0x23, 0x4,0x62,0x50,
+  0x7,0x4c,0x48, 0x7,0x4c,0x46, 0x7,0x4c,0x41, 0x5,0x6b,0x24,
+  0x5,0x6b,0x22, 0x7,0x4c,0x45, 0x7,0x4c,0x42, 0x4,0x62,0x4b,
+  0x7,0x4c,0x44, 0xf,0x64,0x60, 0xf,0x64,0x61, 0xf,0x64,0x63,
+  0x5,0x6e,0x7c, 0x7,0x51,0x76, 0x5,0x6e,0x77, 0x5,0x6e,0x7b,
+  0x5,0x6e,0x7a, 0x5,0x6e,0x79, 0x4,0x65,0x50, 0x4,0x65,0x4c,
+  0x5,0x6e,0x7e, 0x5,0x6e,0x78, 0x4,0x65,0x4b, 0x7,0x51,0x77,
+  0x7,0x51,0x78, 0x7,0x51,0x7b, 0x7,0x51,0x7c, 0xf,0x67,0x26,
+  0xf,0x67,0x27, 0xf,0x67,0x28, 0x5,0x6e,0x7d, 0x5,0x72,0x3b,
+  0x5,0x72,0x3e, 0x5,0x72,0x3a, 0x7,0x56,0x59, 0x4,0x68,0x32,
+  0x4,0x68,0x34, 0x5,0x72,0x39, 0x4,0x68,0x33, 0x5,0x72,0x3d,
+  0x7,0x56,0x5a, 0x5,0x72,0x3c, 0x7,0x56,0x5e, 0xf,0x69,0x24,
+  0x7,0x56,0x5b, 0x7,0x56,0x5c, 0x5,0x75,0x21, 0x5,0x74,0x7c,
+  0x7,0x5a,0x46, 0x5,0x75,0x22, 0x5,0x74,0x7e, 0x5,0x74,0x7b,
+  0x5,0x75,0x25, 0x5,0x75,0x24, 0x5,0x75,0x23, 0x5,0x74,0x7d,
+  0x5,0x75,0x26, 0x7,0x56,0x5d, 0x4,0x69,0x73, 0x7,0x5a,0x47,
+  0x7,0x5a,0x48, 0xf,0x6a,0x3b, 0xf,0x6a,0x3c, 0x5,0x76,0x77,
+  0x4,0x6b,0x38, 0x4,0x6b,0x39, 0x5,0x76,0x76, 0x7,0x5d,0x6c,
+  0x7,0x5d,0x6d, 0x7,0x5d,0x6b, 0xf,0x6b,0x3b, 0x4,0x6c,0x40,
+  0x7,0x60,0x38, 0x5,0x78,0x51, 0x4,0x6c,0x44, 0x4,0x6c,0x42,
+  0x5,0x79,0x65, 0x7,0x61,0x68, 0x5,0x79,0x64, 0x4,0x6d,0x36,
+  0xf,0x6c,0x42, 0xf,0x6c,0x43, 0x7,0x61,0x69, 0x5,0x7a,0x4f,
+  0x7,0x63,0x2a, 0x7,0x63,0x2b, 0x7,0x64,0x2c, 0x4,0x6e,0x29,
+  0x5,0x7b,0x26, 0xf,0x6c,0x72, 0x7,0x64,0x77, 0x7,0x64,0x76,
+  0x5,0x7b,0x4e, 0x4,0x6e,0x54, 0x6,0x23,0x3d, 0x6,0x23,0x3c,
+  0x5,0x44,0x4b, 0x5,0x4b,0x5b, 0x5,0x4b,0x5c, 0x6,0x64,0x62,
+  0x7,0x2b,0x5d, 0x7,0x36,0x34, 0x7,0x3e,0x3c, 0x7,0x45,0x45,
+  0x4,0x5e,0x79, 0x7,0x51,0x7e, 0x7,0x56,0x5f, 0x5,0x72,0x40,
+  0x7,0x5a,0x49, 0x7,0x60,0x3a, 0x7,0x60,0x39, 0x5,0x78,0x53,
+  0x5,0x7b,0x4f, 0x7,0x2b,0x5e, 0x4,0x4f,0x23, 0x4,0x55,0x3c,
+  0x7,0x45,0x46, 0x7,0x52,0x21, 0x7,0x56,0x61, 0x7,0x56,0x60,
+  0x7,0x5a,0x4a, 0x7,0x5d,0x6e, 0xf,0x6c,0x73, 0x5,0x7b,0x50,
+  0x4,0x42,0x24, 0x6,0x5a,0x4e, 0x6,0x64,0x64, 0x6,0x64,0x63,
+  0x7,0x2b,0x5f, 0x7,0x36,0x38, 0x4,0x55,0x3e, 0x5,0x5a,0x3b,
+  0x7,0x36,0x36, 0x7,0x36,0x35, 0x4,0x55,0x3d, 0x7,0x36,0x37,
+  0x5,0x60,0x47, 0x7,0x3e,0x3d, 0x4,0x5e,0x7a, 0x7,0x45,0x48,
+  0x7,0x45,0x49, 0x7,0x45,0x47, 0x7,0x4c,0x49, 0x5,0x6b,0x25,
+  0x7,0x4c,0x4a, 0x4,0x65,0x51, 0x7,0x52,0x24, 0x7,0x52,0x23,
+  0x7,0x52,0x22, 0x7,0x52,0x25, 0x7,0x56,0x62, 0x4,0x68,0x35,
+  0x7,0x56,0x64, 0x5,0x72,0x42, 0x7,0x56,0x63, 0x7,0x56,0x65,
+  0x7,0x56,0x66, 0x5,0x75,0x27, 0x7,0x5a,0x4c, 0x7,0x5d,0x71,
+  0x7,0x5d,0x72, 0x5,0x76,0x78, 0x4,0x69,0x75, 0x4,0x6b,0x3a,
+  0x7,0x5d,0x70, 0x5,0x76,0x79, 0x7,0x5d,0x6f, 0x7,0x5d,0x73,
+  0x4,0x6c,0x46, 0x4,0x6c,0x45, 0x7,0x5d,0x74, 0x7,0x60,0x3b,
+  0x7,0x61,0x6b, 0x7,0x61,0x6c, 0x5,0x7a,0x50, 0x7,0x63,0x2c,
+  0x7,0x63,0x2d, 0x7,0x63,0x2e, 0x4,0x6e,0x2a, 0x7,0x64,0x2d,
+  0x7,0x64,0x79, 0x7,0x64,0x78, 0x7,0x64,0x7a, 0x7,0x65,0x4f,
+  0x5,0x7c,0x24, 0x4,0x6e,0x51, 0x5,0x7c,0x2d, 0x7,0x65,0x7d,
+  0x7,0x66,0x4a, 0x7,0x66,0x4b, 0x6,0x50,0x4b, 0x5,0x3d,0x53,
+  0x6,0x5a,0x52, 0x5,0x44,0x4e, 0x6,0x5a,0x51, 0x4,0x42,0x26,
+  0x5,0x44,0x4c, 0x6,0x5a,0x50, 0x5,0x44,0x4d, 0x4,0x42,0x25,
+  0x6,0x5a,0x4f, 0xf,0x39,0x30, 0xf,0x39,0x2f, 0x6,0x5a,0x53,
+  0x5,0x4b,0x5f, 0x5,0x4b,0x60, 0x5,0x4b,0x61, 0x5,0x4b,0x5e,
+  0x5,0x4b,0x5d, 0x5,0x4b,0x62, 0x6,0x64,0x68, 0x6,0x64,0x65,
+  0x6,0x64,0x69, 0xf,0x4d,0x49, 0xf,0x4d,0x4a, 0xf,0x4d,0x4b,
+  0x6,0x64,0x6b, 0x6,0x64,0x66, 0x6,0x64,0x6e, 0x6,0x64,0x6c,
+  0x6,0x64,0x6d, 0x6,0x64,0x6a, 0x6,0x64,0x67, 0x4,0x4f,0x27,
+  0x5,0x53,0x29, 0x7,0x2b,0x61, 0x7,0x2b,0x60, 0x5,0x53,0x28,
+  0x5,0x53,0x2b, 0x5,0x5a,0x41, 0x5,0x53,0x2a, 0x4,0x4f,0x26,
+  0x7,0x2b,0x63, 0x5,0x53,0x25, 0xf,0x53,0x34, 0xf,0x53,0x35,
+  0xf,0x53,0x36, 0x5,0x53,0x27, 0x7,0x2b,0x62, 0x5,0x53,0x26,
+  0x5,0x5a,0x3c, 0x7,0x36,0x3a, 0x5,0x5a,0x45, 0x5,0x5a,0x43,
+  0x7,0x36,0x39, 0x4,0x55,0x40, 0x5,0x5a,0x44, 0x7,0x36,0x3b,
+  0xf,0x59,0x34, 0x5,0x5a,0x3e, 0x5,0x5a,0x3d, 0x5,0x5a,0x3f,
+  0x5,0x5a,0x42, 0x7,0x36,0x3c, 0x5,0x5a,0x40, 0x4,0x5a,0x3d,
+  0x5,0x60,0x49, 0x5,0x60,0x4c, 0x5,0x60,0x50, 0x4,0x5a,0x3e,
+  0x7,0x3e,0x3e, 0x5,0x60,0x48, 0x5,0x60,0x4a, 0x5,0x60,0x4f,
+  0x5,0x60,0x4d, 0x7,0x3e,0x40, 0x7,0x3e,0x41, 0x7,0x3e,0x43,
+  0xf,0x5d,0x70, 0xf,0x5d,0x71, 0xf,0x5d,0x72, 0x5,0x60,0x4e,
+  0x7,0x3e,0x3f, 0x7,0x3e,0x42, 0x5,0x60,0x4b, 0x5,0x66,0x63,
+  0x7,0x45,0x4b, 0x4,0x5e,0x7b, 0x5,0x66,0x69, 0x7,0x45,0x4e,
+  0x5,0x66,0x67, 0x5,0x66,0x65, 0x7,0x45,0x4f, 0x7,0x45,0x4c,
+  0xf,0x61,0x67, 0x7,0x45,0x4a, 0x7,0x45,0x51, 0x5,0x66,0x62,
+  0x7,0x45,0x4d, 0x7,0x45,0x50, 0x5,0x66,0x66, 0x5,0x6b,0x26,
+  0x5,0x6b,0x29, 0x7,0x4c,0x4b, 0x5,0x6b,0x27, 0x7,0x4c,0x4c,
+  0x7,0x4c,0x4d, 0xf,0x64,0x64, 0xf,0x64,0x65, 0xf,0x64,0x66,
+  0xf,0x64,0x67, 0x5,0x66,0x64, 0x5,0x6b,0x28, 0x7,0x52,0x2b,
+  0x4,0x65,0x52, 0x7,0x52,0x2a, 0x5,0x6f,0x21, 0x7,0x52,0x29,
+  0x7,0x52,0x28, 0x5,0x6f,0x22, 0x7,0x52,0x26, 0xf,0x67,0x29,
+  0x5,0x72,0x44, 0x5,0x72,0x46, 0x5,0x72,0x48, 0x4,0x68,0x37,
+  0x7,0x56,0x67, 0x7,0x56,0x68, 0xf,0x69,0x25, 0x5,0x72,0x45,
+  0x5,0x72,0x43, 0x7,0x56,0x69, 0x5,0x72,0x47, 0x5,0x75,0x2a,
+  0x4,0x62,0x51, 0x7,0x5a,0x50, 0x4,0x69,0x78, 0x5,0x75,0x28,
+  0x7,0x5a,0x4e, 0x4,0x69,0x79, 0x5,0x75,0x2b, 0xf,0x6a,0x3d,
+  0x5,0x75,0x2c, 0x5,0x75,0x29, 0x4,0x69,0x7a, 0xf,0x67,0x2a,
+  0x7,0x5a,0x4d, 0x5,0x76,0x7b, 0x5,0x76,0x7a, 0xf,0x69,0x26,
+  0x5,0x78,0x54, 0x5,0x78,0x55, 0x4,0x6c,0x47, 0x7,0x60,0x3f,
+  0x7,0x60,0x3e, 0x7,0x60,0x40, 0x7,0x60,0x3d, 0x5,0x79,0x67,
+  0x5,0x79,0x66, 0xf,0x6c,0x44, 0x7,0x63,0x2f, 0x4,0x6e,0x2b,
+  0x7,0x64,0x2e, 0x7,0x64,0x2f, 0x4,0x6e,0x41, 0x5,0x7b,0x51,
+  0x5,0x7b,0x6f, 0x5,0x7c,0x25, 0x5,0x7c,0x40, 0x4,0x30,0x43,
+  0x4,0x42,0x2a, 0x4,0x42,0x27, 0x6,0x5a,0x55, 0x4,0x42,0x28,
+  0x6,0x5a,0x56, 0x5,0x44,0x4f, 0xf,0x46,0x3b, 0x6,0x64,0x6f,
+  0x5,0x4b,0x65, 0x4,0x48,0x6c, 0x5,0x4b,0x63, 0xf,0x4d,0x4c,
+  0xf,0x4d,0x4d, 0x5,0x4b,0x66, 0x4,0x4f,0x2f, 0x4,0x4f,0x33,
+  0x4,0x4f,0x31, 0x4,0x4f,0x2d, 0x7,0x2b,0x68, 0x5,0x53,0x31,
+  0x5,0x53,0x30, 0x7,0x2b,0x65, 0x7,0x2b,0x64, 0x5,0x53,0x2e,
+  0x4,0x4f,0x38, 0x5,0x53,0x33, 0x5,0x53,0x2c, 0x5,0x53,0x2d,
+  0x7,0x2b,0x6c, 0x7,0x2b,0x66, 0x4,0x4f,0x36, 0x5,0x53,0x32,
+  0xf,0x53,0x37, 0xf,0x53,0x3a, 0xf,0x53,0x3d, 0x7,0x2b,0x6b,
+  0x7,0x2b,0x67, 0x7,0x2b,0x69, 0x4,0x4f,0x2e, 0xf,0x53,0x39,
+  0x5,0x53,0x2f, 0x5,0x5a,0x48, 0x5,0x5a,0x46, 0x7,0x36,0x3d,
+  0x5,0x5a,0x49, 0x4,0x55,0x46, 0x4,0x5a,0x46, 0x5,0x5a,0x4e,
+  0x5,0x5a,0x4d, 0x4,0x55,0x49, 0x7,0x36,0x43, 0x7,0x36,0x3e,
+  0x7,0x36,0x41, 0x7,0x36,0x40, 0x5,0x5a,0x4c, 0x7,0x36,0x44,
+  0xf,0x59,0x36, 0xf,0x59,0x37, 0xf,0x59,0x39, 0xf,0x59,0x3a,
+  0x5,0x5a,0x4b, 0x7,0x36,0x42, 0xf,0x59,0x35, 0x5,0x5a,0x47,
+  0x7,0x36,0x3f, 0x5,0x60,0x56, 0x4,0x5a,0x48, 0x5,0x60,0x57,
+  0x5,0x60,0x54, 0x5,0x60,0x52, 0x4,0x5a,0x47, 0x7,0x3e,0x4b,
+  0x5,0x60,0x55, 0x7,0x3e,0x46, 0x7,0x3e,0x4d, 0x7,0x3e,0x45,
+  0x4,0x5a,0x4b, 0x7,0x3e,0x4c, 0x5,0x60,0x5a, 0x5,0x60,0x58,
+  0x7,0x3e,0x44, 0x4,0x5a,0x4a, 0xf,0x46,0x3c, 0xf,0x5d,0x73,
+  0xf,0x5d,0x74, 0xf,0x5d,0x75, 0xf,0x5d,0x77, 0xf,0x5d,0x79,
+  0x7,0x3e,0x48, 0x5,0x60,0x5b, 0x5,0x60,0x53, 0x7,0x3e,0x4a,
+  0x5,0x60,0x51, 0x5,0x60,0x59, 0x5,0x66,0x77, 0x5,0x66,0x74,
+  0x5,0x66,0x70, 0x5,0x66,0x6b, 0x7,0x45,0x53, 0x4,0x5f,0x28,
+  0x5,0x66,0x6d, 0x7,0x45,0x52, 0x5,0x66,0x6a, 0x5,0x66,0x71,
+  0x5,0x66,0x75, 0x5,0x66,0x72, 0x5,0x66,0x6f, 0x5,0x66,0x6c,
+  0x7,0x45,0x54, 0xf,0x61,0x68, 0xf,0x61,0x69, 0xf,0x61,0x6a,
+  0xf,0x61,0x6b, 0xf,0x61,0x6c, 0xf,0x61,0x6d, 0xf,0x61,0x6e,
+  0xf,0x61,0x6f, 0xf,0x61,0x71, 0xf,0x61,0x73, 0x7,0x45,0x55,
+  0x7,0x3e,0x47, 0x5,0x66,0x76, 0x5,0x66,0x73, 0x7,0x4c,0x5b,
+  0x7,0x4c,0x58, 0x4,0x62,0x5e, 0x7,0x4c,0x52, 0x5,0x6b,0x2d,
+  0x4,0x62,0x52, 0x5,0x6b,0x2f, 0x7,0x4c,0x4f, 0x7,0x4c,0x51,
+  0x4,0x62,0x5f, 0x5,0x66,0x78, 0x4,0x62,0x63, 0x5,0x6b,0x32,
+  0x4,0x62,0x5b, 0x7,0x4c,0x4e, 0x4,0x62,0x5a, 0x4,0x62,0x65,
+  0x7,0x4c,0x5a, 0x7,0x4c,0x53, 0x7,0x4c,0x59, 0x4,0x62,0x58,
+  0x7,0x4c,0x55, 0x5,0x6b,0x36, 0x5,0x6b,0x2e, 0x7,0x4c,0x50,
+  0x5,0x6b,0x34, 0xf,0x64,0x6e, 0xf,0x64,0x68, 0xf,0x64,0x6a,
+  0xf,0x64,0x6c, 0xf,0x64,0x6f, 0xf,0x64,0x70, 0xf,0x64,0x71,
+  0x5,0x6b,0x30, 0x7,0x4c,0x54, 0x7,0x4c,0x57, 0x4,0x62,0x53,
+  0x5,0x6b,0x37, 0x5,0x6b,0x2a, 0xf,0x64,0x69, 0x5,0x6b,0x2c,
+  0xf,0x61,0x70, 0x7,0x4c,0x56, 0x5,0x6f,0x27, 0x7,0x52,0x2e,
+  0x5,0x6f,0x26, 0x5,0x6b,0x38, 0x5,0x6f,0x29, 0x7,0x52,0x2c,
+  0x4,0x65,0x58, 0x5,0x6f,0x2b, 0x7,0x52,0x2f, 0x7,0x52,0x2d,
+  0x5,0x6f,0x28, 0x4,0x65,0x56, 0x5,0x6f,0x24, 0x7,0x52,0x32,
+  0x4,0x65,0x5e, 0x5,0x6f,0x25, 0x5,0x6f,0x23, 0x4,0x65,0x60,
+  0x7,0x52,0x30, 0x5,0x6f,0x2c, 0x7,0x52,0x34, 0xf,0x67,0x2b,
+  0xf,0x67,0x2c, 0xf,0x67,0x2d, 0xf,0x67,0x2f, 0xf,0x67,0x30,
+  0xf,0x67,0x31, 0xf,0x67,0x32, 0xf,0x67,0x2e, 0x5,0x6f,0x2a,
+  0xf,0x67,0x34, 0x5,0x72,0x4a, 0x4,0x68,0x3f, 0x5,0x72,0x4f,
+  0x5,0x72,0x53, 0x5,0x77,0x23, 0x5,0x72,0x49, 0x5,0x72,0x52,
+  0x4,0x68,0x38, 0x7,0x56,0x71, 0x5,0x72,0x4c, 0x7,0x56,0x72,
+  0x5,0x72,0x57, 0x7,0x56,0x6d, 0x5,0x72,0x54, 0x5,0x72,0x4d,
+  0x7,0x56,0x73, 0x7,0x56,0x75, 0x7,0x56,0x6a, 0x7,0x56,0x74,
+  0x5,0x72,0x56, 0x7,0x56,0x6e, 0x7,0x56,0x6f, 0xf,0x69,0x28,
+  0xf,0x69,0x29, 0xf,0x69,0x2b, 0xf,0x69,0x2c, 0xf,0x69,0x2d,
+  0xf,0x69,0x2e, 0xf,0x69,0x2f, 0xf,0x69,0x30, 0xf,0x69,0x31,
+  0xf,0x69,0x32, 0x7,0x56,0x6b, 0x7,0x56,0x6c, 0x5,0x72,0x55,
+  0x7,0x56,0x70, 0x5,0x72,0x50, 0x7,0x5a,0x54, 0x7,0x5a,0x52,
+  0x5,0x75,0x32, 0x4,0x6a,0x22, 0x5,0x75,0x2e, 0x5,0x75,0x2f,
+  0x7,0x5a,0x5a, 0x7,0x5a,0x57, 0x5,0x75,0x30, 0x7,0x5a,0x5c,
+  0x7,0x5a,0x59, 0x5,0x75,0x34, 0x7,0x5a,0x56, 0x7,0x5a,0x5b,
+  0x7,0x5a,0x53, 0x7,0x5a,0x55, 0x7,0x5a,0x51, 0x7,0x5a,0x5e,
+  0xf,0x6a,0x41, 0xf,0x6a,0x42, 0xf,0x6a,0x43, 0xf,0x6a,0x40,
+  0x7,0x5a,0x5f, 0x5,0x75,0x33, 0x7,0x5a,0x58, 0x7,0x5a,0x5d,
+  0x5,0x75,0x31, 0x5,0x76,0x7e, 0x7,0x5d,0x78, 0x5,0x77,0x22,
+  0x4,0x6b,0x3e, 0x4,0x6b,0x3f, 0x5,0x76,0x7c, 0x7,0x5d,0x77,
+  0x4,0x65,0x5c, 0x7,0x60,0x46, 0x7,0x5d,0x75, 0x7,0x5e,0x22,
+  0x7,0x5d,0x76, 0x5,0x76,0x7d, 0x7,0x5e,0x21, 0x7,0x5d,0x7c,
+  0x5,0x77,0x21, 0x7,0x5d,0x79, 0xf,0x6b,0x3d, 0xf,0x6b,0x3f,
+  0x7,0x5d,0x7a, 0x7,0x5d,0x7d, 0x7,0x5d,0x7e, 0x7,0x5d,0x7b,
+  0xf,0x6b,0x3c, 0x7,0x60,0x43, 0x5,0x78,0x5c, 0x5,0x78,0x60,
+  0x5,0x78,0x5a, 0x7,0x60,0x41, 0x4,0x6c,0x4f, 0x4,0x6c,0x4c,
+  0x5,0x78,0x59, 0x5,0x78,0x61, 0x4,0x6c,0x4b, 0x5,0x78,0x5f,
+  0x5,0x78,0x5e, 0x5,0x78,0x57, 0x7,0x60,0x4b, 0x7,0x60,0x47,
+  0x5,0x78,0x58, 0xf,0x6b,0x75, 0xf,0x6b,0x78, 0x7,0x60,0x48,
+  0x7,0x60,0x42, 0x7,0x60,0x44, 0x7,0x60,0x45, 0x5,0x78,0x5d,
+  0x7,0x60,0x4a, 0x7,0x60,0x49, 0x7,0x61,0x73, 0x5,0x79,0x68,
+  0x4,0x6d,0x38, 0x5,0x79,0x69, 0x7,0x61,0x6e, 0x7,0x60,0x7a,
+  0x7,0x61,0x71, 0x7,0x61,0x6f, 0x5,0x79,0x6b, 0x7,0x61,0x72,
+  0x7,0x61,0x70, 0xf,0x6c,0x45, 0xf,0x6c,0x46, 0x5,0x79,0x6a,
+  0x7,0x61,0x6d, 0x7,0x63,0x35, 0x7,0x63,0x30, 0x7,0x63,0x32,
+  0x7,0x63,0x33, 0x7,0x63,0x34, 0x5,0x7a,0x51, 0x5,0x7a,0x52,
+  0xf,0x6c,0x5a, 0xf,0x6c,0x5b, 0xf,0x6c,0x5c, 0xf,0x6c,0x5d,
+  0x7,0x63,0x31, 0x5,0x7b,0x28, 0x5,0x7b,0x27, 0x7,0x64,0x30,
+  0x5,0x7b,0x29, 0xf,0x6c,0x74, 0x7,0x64,0x31, 0x5,0x7b,0x2a,
+  0x7,0x64,0x32, 0x7,0x64,0x7e, 0x5,0x7b,0x53, 0x5,0x7b,0x52,
+  0x5,0x7b,0x55, 0x7,0x64,0x7c, 0x7,0x65,0x21, 0x7,0x64,0x7b,
+  0x5,0x7b,0x54, 0x7,0x64,0x7d, 0xf,0x6c,0x75, 0x5,0x7b,0x73,
+  0x5,0x7b,0x72, 0x5,0x7b,0x71, 0x5,0x7b,0x70, 0x7,0x65,0x50,
+  0x5,0x7c,0x26, 0xf,0x6d,0x2b, 0xf,0x6d,0x2c, 0x5,0x7c,0x27,
+  0x7,0x65,0x6b, 0x5,0x7c,0x2e, 0x5,0x7c,0x37, 0x7,0x66,0x2f,
+  0x5,0x7c,0x36, 0xf,0x53,0x3c, 0xf,0x5d,0x78, 0xf,0x6b,0x3e,
+  0x6,0x50,0x4c, 0xf,0x40,0x33, 0x6,0x50,0x4d, 0x4,0x42,0x2b,
+  0x6,0x5a,0x57, 0x5,0x44,0x51, 0x5,0x44,0x52, 0x6,0x5a,0x5c,
+  0x6,0x5a,0x58, 0x6,0x5a,0x59, 0x5,0x44,0x50, 0x6,0x5a,0x5a,
+  0x6,0x5a,0x5b, 0x6,0x64,0x70, 0x5,0x4b,0x6a, 0x6,0x64,0x71,
+  0x5,0x4b,0x69, 0x4,0x48,0x6e, 0x4,0x48,0x6f, 0x6,0x64,0x72,
+  0x6,0x64,0x73, 0x6,0x64,0x74, 0x4,0x48,0x70, 0x5,0x4b,0x68,
+  0xf,0x4d,0x4f, 0xf,0x4d,0x50, 0xf,0x4d,0x51, 0x5,0x4b,0x67,
+  0x4,0x4f,0x45, 0x7,0x2b,0x72, 0x7,0x2b,0x7d, 0x7,0x2b,0x6f,
+  0x7,0x2b,0x73, 0x7,0x2b,0x79, 0x5,0x53,0x37, 0x5,0x53,0x3b,
+  0x5,0x53,0x3d, 0x5,0x53,0x39, 0x7,0x2b,0x76, 0x7,0x2b,0x7c,
+  0x5,0x53,0x3f, 0x5,0x53,0x34, 0x4,0x4f,0x3d, 0x5,0x53,0x41,
+  0x5,0x53,0x3e, 0x5,0x53,0x35, 0x4,0x4f,0x3e, 0x5,0x53,0x42,
+  0x7,0x2b,0x7a, 0x4,0x4f,0x3c, 0x7,0x2b,0x75, 0x4,0x4f,0x43,
+  0x4,0x4f,0x3a, 0x5,0x53,0x43, 0x4,0x4f,0x46, 0x7,0x2b,0x70,
+  0x7,0x2b,0x7b, 0xf,0x53,0x40, 0x7,0x2b,0x6e, 0x7,0x2b,0x77,
+  0x7,0x2b,0x78, 0x5,0x53,0x36, 0x5,0x53,0x3a, 0x5,0x53,0x40,
+  0x7,0x2b,0x71, 0x7,0x2b,0x74, 0x5,0x53,0x3c, 0x7,0x36,0x4b,
+  0x5,0x5a,0x54, 0x5,0x5a,0x56, 0x5,0x5a,0x51, 0x5,0x5a,0x4f,
+  0x4,0x55,0x4c, 0x5,0x5a,0x53, 0x5,0x5a,0x59, 0x5,0x5a,0x52,
+  0x7,0x36,0x57, 0x7,0x36,0x52, 0x5,0x5a,0x57, 0x4,0x55,0x56,
+  0x7,0x36,0x54, 0x5,0x5a,0x58, 0x7,0x36,0x50, 0x5,0x5a,0x55,
+  0x7,0x36,0x53, 0x7,0x36,0x4c, 0x7,0x36,0x45, 0x7,0x36,0x4e,
+  0xf,0x59,0x3d, 0xf,0x59,0x3e, 0xf,0x59,0x3f, 0xf,0x59,0x40,
+  0x7,0x36,0x4d, 0x7,0x36,0x4f, 0x7,0x36,0x58, 0x7,0x36,0x56,
+  0x7,0x36,0x47, 0x7,0x36,0x48, 0x7,0x36,0x55, 0x4,0x55,0x53,
+  0x4,0x55,0x51, 0x6,0x50,0x4e, 0x7,0x36,0x49, 0x5,0x5a,0x50,
+  0x7,0x36,0x46, 0xf,0x56,0x33, 0x7,0x3e,0x51, 0x4,0x5a,0x4c,
+  0x5,0x60,0x5e, 0x5,0x60,0x69, 0x7,0x3e,0x54, 0x4,0x5a,0x53,
+  0x5,0x60,0x67, 0x7,0x3e,0x55, 0x5,0x60,0x5d, 0x5,0x60,0x61,
+  0x7,0x3e,0x4e, 0x5,0x60,0x64, 0x5,0x60,0x6b, 0x5,0x60,0x60,
+  0x5,0x60,0x62, 0x4,0x5a,0x54, 0x7,0x3e,0x57, 0x5,0x60,0x5c,
+  0x5,0x60,0x63, 0x4,0x5a,0x58, 0x7,0x3e,0x4f, 0x4,0x5a,0x5b,
+  0x5,0x60,0x6c, 0x7,0x3e,0x58, 0x7,0x3e,0x53, 0x5,0x60,0x68,
+  0x5,0x60,0x6a, 0xf,0x5d,0x7a, 0xf,0x5d,0x7b, 0xf,0x5d,0x7c,
+  0xf,0x5d,0x7d, 0xf,0x5e,0x21, 0xf,0x5e,0x22, 0xf,0x5e,0x23,
+  0xf,0x5e,0x25, 0x7,0x3e,0x50, 0x5,0x60,0x5f, 0x4,0x5a,0x5a,
+  0x7,0x3e,0x56, 0x5,0x60,0x65, 0x5,0x60,0x66, 0x7,0x3e,0x52,
+  0x4,0x5a,0x57, 0x7,0x45,0x5b, 0x5,0x60,0x6d, 0x7,0x45,0x5f,
+  0x5,0x66,0x7d, 0x5,0x67,0x25, 0x5,0x67,0x27, 0x4,0x5f,0x2e,
+  0x5,0x67,0x2a, 0x5,0x66,0x7a, 0x5,0x67,0x21, 0x5,0x66,0x7e,
+  0x5,0x66,0x7b, 0x7,0x45,0x5d, 0x7,0x45,0x58, 0x4,0x5f,0x2d,
+  0x7,0x45,0x5e, 0x5,0x66,0x7c, 0x5,0x67,0x2b, 0x4,0x5f,0x30,
+  0x7,0x45,0x67, 0x5,0x67,0x22, 0x7,0x45,0x64, 0x7,0x45,0x5c,
+  0x5,0x67,0x28, 0x7,0x45,0x61, 0x7,0x45,0x62, 0x7,0x45,0x66,
+  0x5,0x67,0x24, 0x7,0x45,0x59, 0x5,0x67,0x23, 0x7,0x45,0x68,
+  0x7,0x45,0x56, 0x7,0x45,0x60, 0xf,0x61,0x74, 0xf,0x61,0x75,
+  0x7,0x45,0x57, 0x5,0x67,0x29, 0x7,0x45,0x63, 0x5,0x6b,0x39,
+  0x7,0x4c,0x5d, 0x5,0x6b,0x3a, 0x7,0x4c,0x62, 0x5,0x6b,0x3e,
+  0x5,0x6b,0x4a, 0x5,0x6b,0x40, 0x7,0x4c,0x6a, 0x7,0x4c,0x64,
+  0x5,0x6b,0x3b, 0x7,0x4c,0x68, 0x7,0x4c,0x6b, 0x7,0x4c,0x63,
+  0x5,0x6b,0x4c, 0x5,0x6b,0x3d, 0x5,0x6b,0x4b, 0x4,0x62,0x6b,
+  0x5,0x6b,0x42, 0x5,0x6b,0x45, 0x7,0x4c,0x60, 0x7,0x4c,0x5e,
+  0x5,0x6b,0x48, 0x5,0x6b,0x44, 0x7,0x4c,0x5c, 0x7,0x4c,0x66,
+  0x7,0x4c,0x6c, 0x5,0x6b,0x41, 0x4,0x62,0x6d, 0x7,0x4c,0x69,
+  0x5,0x6b,0x46, 0xf,0x64,0x74, 0xf,0x64,0x76, 0xf,0x64,0x77,
+  0x7,0x4c,0x61, 0x5,0x6b,0x47, 0x7,0x4c,0x6f, 0x5,0x6b,0x49,
+  0x7,0x45,0x69, 0x7,0x4c,0x65, 0x7,0x4c,0x67, 0x7,0x4c,0x6d,
+  0x5,0x6b,0x43, 0x7,0x4c,0x6e, 0x7,0x4c,0x5f, 0x4,0x62,0x69,
+  0x5,0x6f,0x38, 0x5,0x6f,0x30, 0x7,0x52,0x3a, 0x4,0x65,0x65,
+  0x5,0x6f,0x3e, 0x7,0x52,0x43, 0x5,0x6f,0x32, 0x5,0x6f,0x42,
+  0x4,0x62,0x70, 0x7,0x52,0x36, 0x5,0x6f,0x2f, 0x4,0x65,0x63,
+  0x5,0x6f,0x31, 0x4,0x65,0x6e, 0x4,0x65,0x68, 0x5,0x6f,0x33,
+  0x5,0x6f,0x2d, 0x5,0x6f,0x37, 0x5,0x6f,0x44, 0x5,0x6f,0x39,
+  0x4,0x65,0x6d, 0x4,0x65,0x66, 0x5,0x6f,0x3a, 0x5,0x6f,0x3c,
+  0x5,0x6f,0x40, 0x4,0x65,0x67, 0x5,0x6f,0x2e, 0x5,0x6f,0x3b,
+  0x5,0x6f,0x36, 0x5,0x6f,0x3f, 0x7,0x52,0x3f, 0x7,0x52,0x3b,
+  0x7,0x52,0x40, 0x7,0x52,0x35, 0x7,0x52,0x37, 0x5,0x6f,0x3d,
+  0x5,0x6f,0x35, 0x5,0x6f,0x34, 0x5,0x6f,0x43, 0x7,0x52,0x38,
+  0xf,0x67,0x37, 0x7,0x52,0x3e, 0x7,0x52,0x3d, 0x7,0x52,0x39,
+  0x7,0x52,0x44, 0x7,0x52,0x41, 0x7,0x52,0x3c, 0xf,0x67,0x38,
+  0x5,0x6f,0x41, 0x7,0x45,0x5a, 0x5,0x72,0x5e, 0x7,0x56,0x79,
+  0x5,0x72,0x66, 0x7,0x56,0x7e, 0x5,0x72,0x5d, 0x5,0x72,0x60,
+  0x5,0x72,0x5b, 0x5,0x72,0x65, 0x5,0x72,0x64, 0x7,0x57,0x21,
+  0x7,0x56,0x7d, 0x7,0x56,0x7a, 0x5,0x72,0x68, 0x7,0x57,0x27,
+  0x7,0x57,0x26, 0x7,0x57,0x24, 0x5,0x72,0x5c, 0x5,0x72,0x61,
+  0x5,0x6f,0x45, 0x5,0x72,0x5a, 0x5,0x72,0x62, 0x7,0x57,0x22,
+  0x7,0x56,0x7c, 0x5,0x72,0x69, 0x5,0x72,0x6a, 0xf,0x69,0x34,
+  0x5,0x72,0x5f, 0x7,0x57,0x23, 0x7,0x56,0x77, 0x7,0x57,0x28,
+  0x7,0x56,0x76, 0x7,0x56,0x7b, 0xf,0x69,0x33, 0x5,0x72,0x58,
+  0x7,0x56,0x78, 0x5,0x72,0x59, 0xf,0x67,0x36, 0x5,0x75,0x42,
+  0x5,0x75,0x3d, 0x4,0x6a,0x24, 0x4,0x6a,0x2d, 0x5,0x75,0x3c,
+  0x4,0x6a,0x28, 0x5,0x75,0x43, 0x5,0x75,0x39, 0x5,0x6f,0x46,
+  0x5,0x75,0x44, 0x5,0x75,0x40, 0x5,0x75,0x3f, 0x4,0x6a,0x2b,
+  0x7,0x5a,0x62, 0x7,0x5a,0x6c, 0x7,0x5a,0x6a, 0x7,0x5a,0x70,
+  0x4,0x6a,0x2a, 0x7,0x5a,0x6b, 0x7,0x5a,0x6e, 0x5,0x75,0x3b,
+  0x4,0x6a,0x29, 0x7,0x5a,0x69, 0x5,0x75,0x37, 0x7,0x5a,0x68,
+  0x5,0x75,0x38, 0x5,0x75,0x46, 0x5,0x72,0x67, 0x7,0x5a,0x71,
+  0x5,0x75,0x41, 0x7,0x5a,0x6f, 0x7,0x5a,0x67, 0x7,0x57,0x25,
+  0xf,0x6a,0x44, 0xf,0x6a,0x45, 0xf,0x6a,0x46, 0xf,0x6a,0x47,
+  0xf,0x6a,0x48, 0x5,0x75,0x3e, 0x7,0x5a,0x66, 0x7,0x5a,0x64,
+  0x7,0x5a,0x61, 0x7,0x5a,0x63, 0x5,0x75,0x3a, 0x7,0x5e,0x2b,
+  0x7,0x5e,0x27, 0x7,0x5e,0x31, 0x5,0x77,0x33, 0x7,0x5e,0x2f,
+  0x5,0x77,0x2e, 0x5,0x77,0x29, 0x4,0x6b,0x43, 0x7,0x5e,0x32,
+  0x7,0x5e,0x36, 0x5,0x77,0x25, 0x5,0x77,0x30, 0x5,0x77,0x2a,
+  0x5,0x77,0x28, 0x5,0x77,0x2f, 0x7,0x5e,0x2c, 0x5,0x77,0x27,
+  0x5,0x77,0x26, 0x5,0x77,0x38, 0x5,0x77,0x2b, 0x4,0x6b,0x49,
+  0x4,0x6b,0x42, 0x7,0x5e,0x35, 0x5,0x77,0x31, 0x7,0x5e,0x30,
+  0x7,0x5e,0x33, 0x5,0x77,0x2d, 0x7,0x5a,0x65, 0x5,0x77,0x35,
+  0x7,0x5a,0x6d, 0x7,0x5e,0x34, 0x5,0x77,0x36, 0x7,0x5e,0x2d,
+  0xf,0x6b,0x40, 0x7,0x5e,0x24, 0x7,0x5e,0x26, 0x7,0x5e,0x2e,
+  0x7,0x5e,0x29, 0x7,0x5e,0x28, 0x5,0x77,0x32, 0x7,0x5e,0x2a,
+  0x7,0x5e,0x25, 0x4,0x6b,0x41, 0xf,0x6b,0x7a, 0x7,0x5e,0x37,
+  0x7,0x60,0x4d, 0x5,0x78,0x67, 0x5,0x78,0x69, 0x5,0x78,0x6d,
+  0x5,0x78,0x65, 0x5,0x77,0x37, 0x5,0x78,0x68, 0x7,0x60,0x4e,
+  0x5,0x78,0x6a, 0x5,0x78,0x6b, 0x7,0x60,0x4f, 0x7,0x60,0x50,
+  0x7,0x60,0x54, 0x5,0x78,0x6c, 0x7,0x60,0x53, 0x7,0x60,0x4c,
+  0x7,0x60,0x51, 0x5,0x78,0x63, 0x5,0x78,0x66, 0x5,0x78,0x62,
+  0xf,0x6b,0x79, 0x7,0x60,0x52, 0x4,0x6c,0x55, 0x5,0x78,0x64,
+  0x4,0x6c,0x53, 0x5,0x79,0x71, 0x5,0x79,0x6d, 0x5,0x79,0x70,
+  0x7,0x61,0x76, 0x4,0x6d,0x3b, 0x5,0x79,0x6e, 0x5,0x79,0x6c,
+  0x4,0x6d,0x3c, 0x7,0x61,0x74, 0x5,0x79,0x6f, 0x7,0x61,0x78,
+  0x7,0x61,0x75, 0x7,0x61,0x77, 0x4,0x6d,0x3e, 0x5,0x7a,0x58,
+  0x7,0x63,0x39, 0x5,0x7a,0x56, 0x4,0x6d,0x6b, 0x5,0x7a,0x5a,
+  0x5,0x7a,0x59, 0x5,0x7a,0x55, 0x5,0x7a,0x57, 0x4,0x6d,0x6a,
+  0x7,0x63,0x38, 0x5,0x7a,0x54, 0x7,0x63,0x3b, 0x5,0x7a,0x5b,
+  0x7,0x63,0x3d, 0xf,0x6c,0x5e, 0x7,0x63,0x3a, 0x7,0x63,0x36,
+  0x7,0x63,0x3c, 0x5,0x7b,0x2e, 0x7,0x64,0x34, 0x7,0x64,0x36,
+  0x5,0x7b,0x2f, 0x5,0x7b,0x2c, 0x5,0x7b,0x2b, 0x5,0x7b,0x31,
+  0x5,0x7b,0x30, 0x5,0x7b,0x2d, 0x7,0x64,0x37, 0xf,0x6c,0x76,
+  0x4,0x6e,0x2e, 0x7,0x64,0x33, 0x7,0x64,0x35, 0x5,0x7b,0x56,
+  0x7,0x65,0x22, 0x7,0x65,0x53, 0x7,0x65,0x24, 0x7,0x65,0x26,
+  0x7,0x65,0x23, 0x7,0x65,0x27, 0x5,0x7b,0x57, 0x7,0x65,0x25,
+  0x4,0x6e,0x42, 0x5,0x7b,0x74, 0x7,0x65,0x54, 0x7,0x65,0x55,
+  0x5,0x7b,0x75, 0x7,0x65,0x52, 0x7,0x65,0x56, 0x7,0x65,0x51,
+  0x7,0x65,0x6d, 0x7,0x65,0x6c, 0x5,0x7c,0x29, 0x5,0x7c,0x28,
+  0xf,0x6d,0x32, 0x5,0x7c,0x2f, 0x7,0x66,0x21, 0x7,0x65,0x7e,
+  0x5,0x7c,0x38, 0x7,0x66,0x30, 0x5,0x7c,0x39, 0x7,0x66,0x3a,
+  0x5,0x7c,0x41, 0xf,0x6d,0x37, 0x5,0x7c,0x48, 0x7,0x66,0x45,
+  0x4,0x48,0x71, 0x4,0x48,0x72, 0x5,0x53,0x44, 0x7,0x2c,0x22,
+  0x7,0x2c,0x21, 0x7,0x2b,0x7e, 0x5,0x5a,0x5a, 0x5,0x5a,0x5c,
+  0x7,0x36,0x5a, 0x7,0x36,0x5b, 0xf,0x59,0x41, 0x7,0x36,0x59,
+  0x5,0x67,0x2c, 0x7,0x3e,0x59, 0x4,0x62,0x71, 0x7,0x4c,0x70,
+  0x5,0x6b,0x4d, 0x7,0x4c,0x71, 0x7,0x52,0x46, 0x5,0x6f,0x48,
+  0x5,0x6f,0x49, 0x7,0x52,0x47, 0x5,0x6f,0x47, 0x7,0x52,0x49,
+  0x7,0x52,0x48, 0x4,0x68,0x45, 0x7,0x57,0x2b, 0x7,0x57,0x2a,
+  0x5,0x72,0x6b, 0x7,0x5a,0x73, 0x7,0x5a,0x72, 0x4,0x6b,0x4c,
+  0x7,0x5e,0x38, 0x7,0x5e,0x39, 0x5,0x77,0x39, 0x7,0x60,0x55,
+  0x4,0x6c,0x57, 0x5,0x79,0x72, 0x4,0x6d,0x3f, 0x7,0x63,0x3e,
+  0x5,0x7b,0x32, 0x6,0x5a,0x5d, 0xf,0x46,0x3d, 0x5,0x4b,0x6c,
+  0xf,0x4d,0x52, 0x7,0x2c,0x28, 0x5,0x53,0x45, 0x7,0x2c,0x27,
+  0x7,0x2c,0x26, 0x7,0x2c,0x24, 0x5,0x53,0x46, 0x7,0x2c,0x25,
+  0x5,0x53,0x47, 0x7,0x2c,0x29, 0x7,0x2c,0x23, 0x7,0x36,0x5d,
+  0x5,0x5a,0x5d, 0xf,0x59,0x42, 0xf,0x59,0x43, 0xf,0x59,0x44,
+  0x5,0x60,0x6f, 0x5,0x60,0x72, 0x5,0x60,0x70, 0x4,0x5a,0x5c,
+  0x5,0x60,0x73, 0x5,0x60,0x71, 0x7,0x3e,0x5b, 0x7,0x3e,0x5a,
+  0x7,0x3e,0x5e, 0x7,0x3e,0x5d, 0xf,0x5e,0x26, 0x5,0x60,0x6e,
+  0x7,0x45,0x6e, 0x5,0x67,0x31, 0x5,0x67,0x2e, 0x5,0x67,0x2d,
+  0x7,0x45,0x6b, 0x7,0x45,0x6d, 0x7,0x45,0x6a, 0x5,0x67,0x30,
+  0x7,0x45,0x6c, 0xf,0x61,0x78, 0xf,0x61,0x79, 0xf,0x61,0x7a,
+  0x5,0x67,0x2f, 0x5,0x6b,0x4f, 0x5,0x6b,0x4e, 0x5,0x6b,0x51,
+  0x4,0x62,0x73, 0x7,0x4c,0x73, 0x5,0x6b,0x50, 0x7,0x4c,0x72,
+  0x5,0x68,0x40, 0x7,0x52,0x4b, 0x4,0x62,0x74, 0x4,0x65,0x6f,
+  0x7,0x4c,0x74, 0xf,0x67,0x39, 0x7,0x52,0x4a, 0x7,0x52,0x4c,
+  0x5,0x6f,0x4a, 0x4,0x68,0x47, 0x7,0x57,0x2c, 0x7,0x57,0x2d,
+  0x4,0x68,0x46, 0xf,0x69,0x35, 0x5,0x75,0x47, 0x4,0x6a,0x2e,
+  0xf,0x6a,0x49, 0x5,0x77,0x3a, 0x5,0x77,0x3c, 0x5,0x77,0x3b,
+  0x7,0x5e,0x3a, 0x7,0x5e,0x3b, 0x7,0x60,0x56, 0x4,0x6c,0x58,
+  0x7,0x60,0x57, 0xf,0x6b,0x7b, 0x5,0x79,0x75, 0x5,0x79,0x74,
+  0x5,0x78,0x6e, 0x4,0x6d,0x40, 0x4,0x6d,0x6c, 0xf,0x6c,0x47,
+  0x7,0x65,0x28, 0x7,0x65,0x57, 0x5,0x7c,0x46, 0x7,0x66,0x47,
+  0x6,0x5a,0x5f, 0x6,0x5a,0x5e, 0x5,0x44,0x53, 0xf,0x46,0x3f,
+  0x4,0x48,0x75, 0x6,0x64,0x75, 0xf,0x4d,0x53, 0x5,0x53,0x4b,
+  0x5,0x53,0x4a, 0x4,0x4f,0x4f, 0x5,0x53,0x49, 0x5,0x53,0x48,
+  0x7,0x2c,0x2b, 0x7,0x2c,0x2f, 0x7,0x2c,0x2a, 0x4,0x4f,0x4e,
+  0x7,0x2c,0x2c, 0x5,0x53,0x4c, 0x7,0x2c,0x2e, 0x7,0x2c,0x2d,
+  0x7,0x36,0x61, 0x7,0x36,0x5f, 0x7,0x36,0x5e, 0x7,0x36,0x63,
+  0x4,0x55,0x5b, 0x7,0x36,0x62, 0x6,0x47,0x53, 0xf,0x59,0x45,
+  0x5,0x5a,0x5e, 0x7,0x36,0x60, 0x5,0x60,0x74, 0x5,0x60,0x75,
+  0x7,0x3e,0x60, 0x7,0x3e,0x61, 0xf,0x5e,0x28, 0x7,0x3e,0x62,
+  0x7,0x3e,0x5f, 0x7,0x45,0x70, 0x5,0x67,0x32, 0x7,0x45,0x72,
+  0x5,0x67,0x33, 0x5,0x67,0x35, 0x7,0x45,0x73, 0x5,0x67,0x34,
+  0xf,0x61,0x7b, 0x7,0x45,0x71, 0x7,0x45,0x6f, 0x4,0x62,0x7a,
+  0x4,0x62,0x78, 0x7,0x4c,0x79, 0x7,0x4c,0x7b, 0x7,0x4c,0x75,
+  0x5,0x6b,0x54, 0x5,0x6b,0x52, 0x7,0x4c,0x7a, 0x5,0x6b,0x55,
+  0x5,0x6b,0x53, 0x7,0x4c,0x78, 0x4,0x62,0x7b, 0x7,0x4c,0x77,
+  0x7,0x4c,0x76, 0x5,0x6f,0x4b, 0x7,0x52,0x53, 0x7,0x52,0x52,
+  0x5,0x6f,0x4c, 0x7,0x52,0x50, 0x4,0x65,0x70, 0x7,0x52,0x4f,
+  0x5,0x6f,0x4e, 0x5,0x6f,0x4d, 0x7,0x52,0x51, 0xf,0x67,0x3a,
+  0x7,0x52,0x4e, 0x7,0x52,0x4d, 0x5,0x72,0x6c, 0x7,0x57,0x2f,
+  0x5,0x72,0x6f, 0x7,0x57,0x30, 0x5,0x72,0x6e, 0x7,0x57,0x31,
+  0x7,0x57,0x2e, 0x5,0x72,0x6d, 0x5,0x75,0x4b, 0x5,0x75,0x4c,
+  0x7,0x5a,0x74, 0x5,0x75,0x49, 0x5,0x75,0x4e, 0x7,0x5a,0x7b,
+  0x7,0x5a,0x76, 0x7,0x5a,0x77, 0x7,0x5a,0x7c, 0x7,0x5a,0x79,
+  0x5,0x75,0x4a, 0x7,0x5a,0x75, 0x7,0x5a,0x78, 0x7,0x5a,0x7a,
+  0x5,0x77,0x3f, 0x4,0x6b,0x4f, 0x5,0x77,0x3e, 0x5,0x77,0x40,
+  0x5,0x77,0x3d, 0x5,0x78,0x6f, 0x5,0x78,0x71, 0x5,0x78,0x70,
+  0x7,0x60,0x59, 0x7,0x5e,0x3c, 0x4,0x6c,0x59, 0x7,0x60,0x58,
+  0x4,0x6d,0x6d, 0x7,0x63,0x3f, 0x7,0x64,0x39, 0x7,0x64,0x38,
+  0x5,0x7b,0x58, 0x7,0x65,0x29, 0x4,0x6e,0x52, 0x5,0x7c,0x30,
+  0xf,0x29,0x21, 0xf,0x46,0x3e, 0xf,0x53,0x42, 0xf,0x5e,0x27,
+  0x5,0x4b,0x70, 0x5,0x4b,0x6e, 0x5,0x4b,0x6f, 0x5,0x53,0x4e,
+  0x4,0x4f,0x50, 0x5,0x53,0x4d, 0x7,0x2c,0x30, 0x5,0x5a,0x61,
+  0x7,0x36,0x64, 0x5,0x5a,0x5f, 0x5,0x5a,0x60, 0xf,0x59,0x46,
+  0x5,0x60,0x78, 0x5,0x60,0x76, 0xf,0x5e,0x29, 0x5,0x60,0x77,
+  0x5,0x67,0x36, 0x7,0x4c,0x7c, 0x5,0x6b,0x56, 0x7,0x4c,0x7d,
+  0x4,0x65,0x73, 0x7,0x57,0x32, 0x5,0x72,0x70, 0x7,0x5a,0x7e,
+  0x4,0x6b,0x50, 0x7,0x5b,0x56, 0x7,0x5e,0x3d, 0x4,0x6b,0x51,
+  0x5,0x7c,0x31, 0xf,0x4d,0x54, 0x7,0x2c,0x32, 0x5,0x5a,0x62,
+  0x5,0x5a,0x64, 0x5,0x5a,0x63, 0x5,0x60,0x7a, 0x5,0x67,0x38,
+  0x5,0x60,0x79, 0x5,0x67,0x39, 0x5,0x67,0x37, 0x5,0x6b,0x57,
+  0x4,0x63,0x22, 0xf,0x64,0x79, 0x4,0x65,0x75, 0x4,0x65,0x74,
+  0x5,0x6f,0x50, 0x5,0x6f,0x4f, 0x4,0x65,0x77, 0x7,0x52,0x54,
+  0x7,0x52,0x55, 0x7,0x52,0x56, 0xf,0x67,0x3b, 0x7,0x52,0x57,
+  0x5,0x72,0x73, 0x5,0x72,0x72, 0x5,0x72,0x71, 0x7,0x57,0x33,
+  0x7,0x57,0x34, 0x5,0x75,0x4f, 0x4,0x6a,0x2f, 0x4,0x6a,0x30,
+  0x7,0x5b,0x23, 0x7,0x5b,0x22, 0x7,0x5b,0x21, 0x7,0x5e,0x3e,
+  0x5,0x78,0x72, 0x7,0x60,0x5a, 0x5,0x78,0x73, 0x7,0x61,0x79,
+  0x5,0x79,0x76, 0x7,0x66,0x27, 0x4,0x48,0x76, 0x5,0x53,0x4f,
+  0x4,0x4f,0x51, 0x7,0x36,0x68, 0x7,0x36,0x66, 0x5,0x5a,0x66,
+  0x5,0x5a,0x65, 0x5,0x5a,0x67, 0x5,0x60,0x7e, 0x7,0x3e,0x64,
+  0x5,0x60,0x7c, 0x7,0x3e,0x63, 0x5,0x60,0x7b, 0x4,0x5a,0x5e,
+  0x5,0x60,0x7d, 0x7,0x3e,0x65, 0x7,0x3e,0x66, 0x5,0x67,0x3b,
+  0x5,0x67,0x3a, 0x4,0x65,0x78, 0x5,0x6f,0x51, 0x5,0x6f,0x53,
+  0x5,0x72,0x74, 0x7,0x57,0x36, 0x7,0x57,0x35, 0xf,0x69,0x36,
+  0x5,0x75,0x50, 0x4,0x6b,0x54, 0x5,0x77,0x42, 0x5,0x77,0x41,
+  0x4,0x6b,0x53, 0x7,0x63,0x40, 0x7,0x61,0x7a, 0x4,0x6d,0x6e,
+  0x5,0x7b,0x5a, 0x7,0x65,0x2a, 0x5,0x7b,0x59, 0x6,0x64,0x76,
+  0x5,0x44,0x54, 0x6,0x64,0x78, 0x6,0x64,0x77, 0x7,0x2c,0x34,
+  0x4,0x4f,0x55, 0x4,0x4f,0x54, 0x5,0x53,0x50, 0x7,0x2c,0x35,
+  0x7,0x2c,0x36, 0x7,0x36,0x6a, 0x5,0x5a,0x6a, 0x5,0x5a,0x68,
+  0x5,0x5a,0x69, 0x7,0x36,0x69, 0x7,0x36,0x6b, 0x7,0x36,0x6c,
+  0x4,0x5a,0x60, 0x7,0x3e,0x68, 0x5,0x61,0x21, 0xf,0x5e,0x2a,
+  0x7,0x3e,0x67, 0x5,0x67,0x3e, 0x5,0x67,0x3c, 0x7,0x45,0x74,
+  0x5,0x6b,0x58, 0x5,0x61,0x22, 0x5,0x67,0x3f, 0x5,0x6b,0x5a,
+  0x5,0x6b,0x59, 0x5,0x6b,0x5b, 0x5,0x6b,0x5d, 0x5,0x6b,0x5c,
+  0x7,0x4d,0x21, 0x7,0x4c,0x7e, 0x5,0x6f,0x56, 0x5,0x6f,0x57,
+  0x7,0x52,0x5b, 0x5,0x6f,0x5b, 0x5,0x6f,0x59, 0x5,0x6f,0x55,
+  0x7,0x52,0x58, 0x4,0x65,0x7e, 0x4,0x65,0x7b, 0x7,0x52,0x5c,
+  0x5,0x6f,0x5a, 0x4,0x65,0x7a, 0x7,0x52,0x5a, 0xf,0x67,0x3c,
+  0x7,0x52,0x59, 0x7,0x57,0x38, 0x4,0x68,0x53, 0x4,0x68,0x51,
+  0x5,0x72,0x78, 0x4,0x68,0x50, 0x5,0x72,0x7b, 0x7,0x57,0x37,
+  0x5,0x72,0x75, 0x5,0x72,0x79, 0x5,0x72,0x77, 0x4,0x68,0x54,
+  0x5,0x72,0x76, 0x4,0x68,0x55, 0x4,0x6a,0x34, 0x7,0x57,0x39,
+  0x7,0x57,0x3a, 0x5,0x72,0x7a, 0x5,0x75,0x51, 0x4,0x6a,0x33,
+  0x4,0x6a,0x35, 0x7,0x5b,0x2a, 0x7,0x5b,0x27, 0x7,0x5b,0x26,
+  0x4,0x6a,0x32, 0x7,0x5b,0x29, 0x7,0x5b,0x28, 0x5,0x75,0x52,
+  0x7,0x5b,0x25, 0x5,0x77,0x47, 0x7,0x5e,0x41, 0x5,0x77,0x46,
+  0x5,0x77,0x44, 0x5,0x77,0x45, 0x5,0x77,0x43, 0x5,0x77,0x48,
+  0x7,0x5e,0x3f, 0x5,0x78,0x76, 0x5,0x78,0x77, 0x7,0x60,0x5d,
+  0x4,0x6c,0x5c, 0x4,0x6c,0x60, 0x5,0x78,0x75, 0x7,0x60,0x5c,
+  0x5,0x78,0x74, 0x4,0x6c,0x5f, 0x4,0x6c,0x5e, 0x4,0x6c,0x5d,
+  0x7,0x5e,0x40, 0x7,0x60,0x5b, 0x5,0x79,0x78, 0x5,0x79,0x79,
+  0x5,0x79,0x7a, 0x5,0x79,0x77, 0x4,0x6d,0x45, 0x7,0x61,0x7b,
+  0x7,0x61,0x7c, 0x4,0x6d,0x46, 0x5,0x7a,0x5c, 0x7,0x64,0x3a,
+  0x7,0x65,0x2b, 0x4,0x6e,0x30, 0x7,0x64,0x3b, 0x5,0x7b,0x33,
+  0x4,0x6e,0x2f, 0x5,0x7b,0x5b, 0x5,0x7b,0x5c, 0x7,0x65,0x2c,
+  0x4,0x6e,0x4a, 0x5,0x7b,0x76, 0x7,0x65,0x6e, 0x5,0x7c,0x4a,
+  0x7,0x66,0x52, 0x7,0x45,0x75, 0x4,0x66,0x22, 0x5,0x72,0x7c,
+  0x4,0x68,0x57, 0x5,0x77,0x49, 0x6,0x64,0x79, 0x7,0x2c,0x38,
+  0x7,0x2c,0x37, 0x5,0x61,0x24, 0x7,0x36,0x6d, 0x4,0x5a,0x61,
+  0x7,0x3e,0x69, 0x7,0x3e,0x6a, 0x7,0x45,0x78, 0x5,0x67,0x42,
+  0x7,0x45,0x79, 0x7,0x45,0x77, 0x7,0x45,0x76, 0x4,0x5f,0x41,
+  0x7,0x4d,0x24, 0x7,0x4d,0x25, 0x7,0x3e,0x6b, 0x7,0x4d,0x23,
+  0x7,0x52,0x5e, 0x7,0x52,0x5f, 0x7,0x52,0x5d, 0x5,0x72,0x7d,
+  0x7,0x57,0x3b, 0x4,0x6a,0x36, 0x7,0x5b,0x2c, 0x7,0x5b,0x31,
+  0x7,0x5b,0x32, 0x7,0x5b,0x2e, 0x7,0x5b,0x30, 0x7,0x5b,0x2d,
+  0x7,0x5b,0x2b, 0x7,0x5b,0x2f, 0x5,0x77,0x4a, 0x7,0x5e,0x42,
+  0x5,0x78,0x78, 0x5,0x79,0x7b, 0x5,0x7a,0x5d, 0x4,0x6d,0x47,
+  0x7,0x63,0x41, 0x5,0x7b,0x34, 0x7,0x63,0x42, 0x7,0x65,0x2d,
+  0x6,0x50,0x4f, 0x7,0x36,0x6e, 0x7,0x36,0x6f, 0x5,0x5a,0x6b,
+  0x7,0x46,0x4f, 0x7,0x65,0x2e, 0x5,0x5a,0x6c, 0x5,0x61,0x25,
+  0x7,0x3e,0x6d, 0x5,0x67,0x43, 0x7,0x45,0x7a, 0x5,0x67,0x44,
+  0xf,0x61,0x7d, 0x7,0x4d,0x27, 0x5,0x6b,0x60, 0x7,0x4d,0x26,
+  0x5,0x6b,0x5e, 0x5,0x6b,0x5f, 0x4,0x63,0x25, 0x4,0x66,0x23,
+  0x7,0x52,0x60, 0x4,0x6a,0x39, 0x4,0x68,0x58, 0x7,0x57,0x3c,
+  0x7,0x57,0x3d, 0x5,0x75,0x53, 0x7,0x5b,0x34, 0x7,0x5b,0x35,
+  0x5,0x75,0x55, 0x4,0x6a,0x38, 0x7,0x5b,0x33, 0x5,0x75,0x54,
+  0x7,0x5e,0x43, 0x7,0x60,0x5e, 0x5,0x78,0x79, 0x7,0x60,0x5f,
+  0x5,0x79,0x7c, 0x7,0x63,0x43, 0x5,0x7b,0x35, 0x5,0x7b,0x77,
+  0x7,0x2c,0x39, 0x5,0x5a,0x6d, 0x7,0x3e,0x6e, 0x5,0x5a,0x6e,
+  0x5,0x61,0x28, 0x5,0x61,0x2a, 0x5,0x61,0x2b, 0x5,0x61,0x29,
+  0x5,0x61,0x27, 0x7,0x3e,0x70, 0x5,0x61,0x26, 0x7,0x3e,0x6f,
+  0x5,0x61,0x2c, 0x4,0x5a,0x62, 0x7,0x45,0x7c, 0x7,0x4d,0x2c,
+  0x5,0x67,0x47, 0x5,0x67,0x48, 0x5,0x67,0x46, 0x5,0x67,0x45,
+  0x7,0x45,0x7b, 0x7,0x4d,0x2a, 0x5,0x6b,0x61, 0x5,0x6b,0x63,
+  0x5,0x6b,0x62, 0x7,0x4d,0x2d, 0x7,0x4d,0x2e, 0x7,0x4d,0x29,
+  0x7,0x52,0x62, 0x7,0x52,0x64, 0x7,0x52,0x63, 0x5,0x6f,0x5d,
+  0x5,0x6f,0x5e, 0x7,0x4d,0x2b, 0x7,0x52,0x65, 0x5,0x6f,0x5c,
+  0x7,0x52,0x61, 0x5,0x73,0x21, 0x5,0x72,0x7e, 0x7,0x57,0x3e,
+  0x5,0x75,0x57, 0x7,0x5b,0x36, 0x5,0x75,0x58, 0x5,0x75,0x59,
+  0x5,0x75,0x56, 0x4,0x6a,0x3a, 0x7,0x5e,0x44, 0x5,0x77,0x4b,
+  0x4,0x6b,0x59, 0x7,0x5e,0x48, 0x4,0x6b,0x57, 0x4,0x6b,0x5a,
+  0x7,0x5e,0x47, 0x7,0x5e,0x46, 0x7,0x5e,0x45, 0x5,0x78,0x7d,
+  0x4,0x6c,0x63, 0x5,0x78,0x7b, 0x5,0x78,0x7a, 0x7,0x60,0x60,
+  0x7,0x61,0x7e, 0x7,0x61,0x7d, 0x4,0x6d,0x49, 0x5,0x79,0x7d,
+  0x5,0x7b,0x36, 0x5,0x7b,0x79, 0x5,0x7b,0x78, 0x7,0x65,0x6f,
+  0x7,0x66,0x22, 0x4,0x4f,0x57, 0x7,0x36,0x70, 0x7,0x36,0x71,
+  0x7,0x3e,0x72, 0x7,0x3e,0x71, 0x5,0x67,0x49, 0x7,0x45,0x7e,
+  0x7,0x46,0x21, 0x7,0x45,0x7d, 0x5,0x6b,0x64, 0x5,0x6b,0x65,
+  0x7,0x52,0x66, 0x5,0x6f,0x5f, 0x5,0x6f,0x60, 0x7,0x52,0x68,
+  0x4,0x68,0x5b, 0x5,0x73,0x22, 0x7,0x57,0x3f, 0x7,0x57,0x40,
+  0x5,0x73,0x23, 0x5,0x73,0x24, 0x7,0x5b,0x37, 0x5,0x77,0x4c,
+  0x7,0x5e,0x49, 0x5,0x78,0x7c, 0xf,0x6b,0x7e, 0x7,0x60,0x61,
+  0x5,0x79,0x7e, 0x5,0x7a,0x21, 0x7,0x63,0x46, 0x5,0x7a,0x5e,
+  0x7,0x63,0x45, 0x7,0x64,0x3c, 0x4,0x6e,0x53, 0x5,0x7c,0x32,
+  0xf,0x40,0x34, 0x4,0x55,0x64, 0x4,0x5a,0x65, 0x7,0x46,0x22,
+  0x4,0x63,0x28, 0x7,0x4d,0x2f, 0x5,0x6d,0x57, 0x4,0x66,0x24,
+  0x4,0x6a,0x3b, 0xf,0x69,0x37, 0x5,0x7a,0x23, 0x5,0x7a,0x22,
+  0x7,0x62,0x21, 0x7,0x65,0x2f, 0x5,0x61,0x2e, 0x7,0x3e,0x73,
+  0x7,0x46,0x25, 0x4,0x5f,0x47, 0x7,0x46,0x24, 0x7,0x4d,0x30,
+  0x5,0x6b,0x66, 0x4,0x63,0x2a, 0x7,0x4d,0x31, 0x7,0x4d,0x34,
+  0x7,0x4d,0x32, 0x7,0x4d,0x33, 0x7,0x4d,0x35, 0x7,0x4d,0x36,
+  0x5,0x6b,0x67, 0x7,0x52,0x6b, 0x5,0x6f,0x63, 0x5,0x6f,0x62,
+  0x4,0x66,0x28, 0x7,0x52,0x69, 0x4,0x66,0x2a, 0x7,0x52,0x6d,
+  0x4,0x66,0x29, 0x7,0x52,0x6e, 0x7,0x52,0x6a, 0x4,0x48,0x78,
+  0x7,0x52,0x6c, 0x7,0x57,0x46, 0x5,0x73,0x2a, 0x5,0x73,0x27,
+  0x7,0x57,0x43, 0x7,0x57,0x42, 0x4,0x68,0x5e, 0x5,0x73,0x28,
+  0x4,0x68,0x5f, 0x4,0x68,0x5d, 0x7,0x57,0x44, 0x5,0x73,0x25,
+  0x5,0x73,0x2b, 0x7,0x57,0x45, 0x7,0x57,0x47, 0x5,0x73,0x29,
+  0x7,0x57,0x41, 0x5,0x73,0x26, 0x7,0x5b,0x38, 0x4,0x6a,0x3e,
+  0x5,0x75,0x5c, 0x5,0x75,0x5b, 0x5,0x75,0x5e, 0x7,0x5b,0x40,
+  0x7,0x5b,0x3f, 0x5,0x75,0x5f, 0x7,0x5b,0x3a, 0x5,0x75,0x60,
+  0x4,0x6a,0x3f, 0x7,0x5b,0x39, 0x5,0x75,0x5a, 0x7,0x5b,0x3b,
+  0x7,0x5b,0x3d, 0x7,0x5b,0x3e, 0x7,0x5b,0x3c, 0x5,0x75,0x5d,
+  0x5,0x77,0x4f, 0x5,0x77,0x4e, 0x4,0x6b,0x5e, 0x4,0x6b,0x62,
+  0x4,0x6b,0x63, 0x4,0x6b,0x5f, 0x4,0x6b,0x60, 0x5,0x77,0x50,
+  0x7,0x5e,0x4e, 0x7,0x5e,0x4c, 0x4,0x6b,0x5d, 0x7,0x5e,0x4a,
+  0x7,0x5e,0x4b, 0x7,0x5e,0x4f, 0x4,0x6b,0x64, 0x4,0x6c,0x67,
+  0x5,0x78,0x7e, 0x7,0x60,0x67, 0x4,0x6c,0x68, 0x7,0x60,0x65,
+  0x5,0x79,0x21, 0x7,0x62,0x23, 0x4,0x6c,0x65, 0x7,0x60,0x63,
+  0x7,0x60,0x66, 0x7,0x60,0x64, 0x7,0x60,0x62, 0x7,0x60,0x68,
+  0x5,0x79,0x22, 0x4,0x6d,0x4e, 0x4,0x6d,0x4a, 0x7,0x62,0x25,
+  0x5,0x7a,0x26, 0x4,0x6d,0x50, 0x4,0x6d,0x4d, 0x5,0x7a,0x24,
+  0x7,0x62,0x27, 0x4,0x6d,0x4f, 0x7,0x62,0x24, 0x7,0x62,0x26,
+  0x7,0x62,0x28, 0x7,0x62,0x29, 0x7,0x62,0x22, 0x5,0x7a,0x25,
+  0x7,0x63,0x48, 0x5,0x7a,0x60, 0x7,0x63,0x47, 0x5,0x7a,0x62,
+  0x5,0x7a,0x5f, 0x5,0x7a,0x61, 0x7,0x64,0x3e, 0x4,0x6e,0x32,
+  0x7,0x64,0x3d, 0x5,0x7b,0x37, 0x5,0x7b,0x39, 0x5,0x7b,0x38,
+  0x7,0x64,0x40, 0x7,0x64,0x41, 0x7,0x64,0x3f, 0x4,0x6e,0x46,
+  0x7,0x65,0x32, 0x5,0x7b,0x5d, 0x7,0x65,0x31, 0x7,0x65,0x30,
+  0x7,0x65,0x59, 0x7,0x65,0x71, 0x7,0x65,0x72, 0x5,0x7c,0x2a,
+  0x7,0x65,0x70, 0x7,0x65,0x73, 0x5,0x7c,0x33, 0x7,0x66,0x24,
+  0x7,0x66,0x23, 0x5,0x7c,0x3b, 0x7,0x66,0x32, 0x5,0x7c,0x3a,
+  0x7,0x66,0x31, 0x7,0x66,0x3d, 0x7,0x66,0x3c, 0x5,0x7c,0x45,
+  0x7,0x66,0x41, 0x7,0x66,0x48, 0x5,0x7c,0x4e, 0x5,0x7c,0x4d,
+  0x5,0x6b,0x68, 0x7,0x4d,0x37, 0x4,0x63,0x2c, 0x7,0x52,0x70,
+  0x7,0x52,0x6f, 0x7,0x4e,0x24, 0x5,0x6f,0x64, 0x7,0x57,0x48,
+  0xf,0x67,0x3d, 0x7,0x5b,0x42, 0x7,0x5b,0x41, 0x7,0x5b,0x43,
+  0x7,0x5b,0x44, 0x5,0x77,0x51, 0x5,0x7c,0x51, 0x7,0x36,0x72,
+  0x7,0x3e,0x74, 0x7,0x46,0x26, 0x7,0x57,0x49, 0x5,0x6f,0x65,
+  0x4,0x66,0x2b, 0x5,0x6f,0x67, 0x5,0x6f,0x66, 0x4,0x66,0x2c,
+  0x7,0x52,0x73, 0x7,0x52,0x71, 0xf,0x67,0x3e, 0x7,0x52,0x72,
+  0x5,0x73,0x2c, 0x5,0x73,0x2e, 0x7,0x57,0x4b, 0x5,0x73,0x2f,
+  0x5,0x6b,0x6a, 0x5,0x73,0x2d, 0x7,0x54,0x2a, 0x7,0x57,0x4a,
+  0x7,0x4d,0x39, 0x7,0x4d,0x38, 0x5,0x7b,0x5e, 0x7,0x61,0x29,
+  0x5,0x7b,0x3a, 0x5,0x77,0x52, 0x7,0x64,0x42, 0xf,0x6d,0x2d,
+  0x5,0x7c,0x42, 0xf,0x29,0x26, 0x5,0x73,0x30, 0x7,0x62,0x2b,
+  0x7,0x62,0x2a, 0x5,0x7a,0x64, 0x5,0x7a,0x63, 0x7,0x63,0x4a,
+  0x7,0x63,0x49, 0x5,0x7b,0x3b, 0x4,0x6e,0x47, 0x7,0x66,0x25,
+  0x4,0x6e,0x56, 0x7,0x66,0x4c, 0x6,0x29,0x36, 0x6,0x21,0x31,
+  0x6,0x21,0x21, 0x6,0x25,0x66, 0x6,0x25,0x72, 0x4,0x25,0x3d,
+  0x6,0x2e,0x61, 0xf,0x2d,0x68, 0x6,0x3d,0x35, 0x6,0x50,0x5b,
+  0x4,0x3c,0x30, 0x6,0x5a,0x72, 0xf,0x59,0x4d, 0x6,0x23,0x52,
+  0x3,0x24,0x52, 0x3,0x27,0x53, 0xf,0x67,0x40, 0x3,0x27,0x54,
+  0x6,0x3d,0x3c, 0x7,0x4d,0x3e, 0x6,0x21,0x50, 0x3,0x22,0x7b,
+  0x6,0x23,0x59, 0x3,0x21,0x4f, 0x6,0x35,0x44, 0x4,0x21,0x3f,
+  0x6,0x22,0x3c, 0x3,0x24,0x41, 0x7,0x36,0x7a, 0x5,0x21,0x29,
+  0x6,0x21,0x38, 0xf,0x23,0x37, 0x6,0x29,0x63, 0x6,0x2e,0x76,
+  0x6,0x46,0x67, 0x3,0x40,0x43, 0xf,0x22,0x29, 0x6,0x2f,0x25,
+  0x6,0x35,0x58, 0x4,0x36,0x4c, 0x4,0x21,0x2f, 0x6,0x22,0x46,
+  0x3,0x22,0x25, 0x6,0x22,0x49, 0x3,0x23,0x29, 0x6,0x2f,0x38,
+  0x6,0x46,0x74, 0x6,0x2a,0x23, 0x6,0x2f,0x3d, 0x6,0x3d,0x59,
+  0x6,0x3d,0x5a, 0x3,0x3a,0x26, 0xf,0x21,0x33, 0x3,0x24,0x29,
+  0x6,0x21,0x61, 0x6,0x26,0x43, 0x5,0x31,0x31, 0x6,0x22,0x5b,
+  0x5,0x21,0x60, 0x3,0x23,0x3c, 0x4,0x23,0x5c, 0x6,0x26,0x4e,
+  0x4,0x23,0x5b, 0x6,0x2a,0x3c, 0x3,0x30,0x23, 0x6,0x35,0x7e,
+  0x4,0x30,0x76, 0x6,0x3d,0x7c, 0x6,0x47,0x2a, 0x6,0x47,0x2c,
+  0x6,0x47,0x30, 0x6,0x47,0x31, 0x6,0x47,0x33, 0x4,0x3c,0x50,
+  0x6,0x5b,0x5b, 0x6,0x51,0x36, 0x6,0x5b,0x59, 0x7,0x21,0x60,
+  0x7,0x2c,0x65, 0x3,0x21,0x7c, 0x6,0x24,0x33, 0x6,0x36,0x35,
+  0x6,0x3e,0x2c, 0x6,0x3e,0x2b, 0x3,0x34,0x70, 0x4,0x36,0x76,
+  0x6,0x51,0x4a, 0x7,0x21,0x76, 0x7,0x46,0x3e, 0xf,0x23,0x5b,
+  0x6,0x51,0x57, 0x5,0x23,0x62, 0x6,0x24,0x3b, 0x6,0x51,0x5e,
+  0x6,0x47,0x56, 0x6,0x22,0x67, 0xf,0x2a,0x2b, 0x6,0x36,0x4c,
+  0x6,0x36,0x4d, 0xf,0x2e,0x6d, 0x6,0x3e,0x54, 0x6,0x3e,0x50,
+  0x6,0x47,0x61, 0x6,0x51,0x69, 0xf,0x47,0x46, 0x3,0x5a,0x33,
+  0x7,0x46,0x51, 0x6,0x24,0x48, 0x4,0x31,0x30, 0xf,0x41,0x2b,
+  0x6,0x5c,0x22, 0x3,0x5a,0x36, 0x7,0x60,0x6d, 0x6,0x27,0x21,
+  0x6,0x36,0x67, 0x6,0x24,0x4b, 0x4,0x21,0x34, 0x5,0x28,0x73,
+  0x6,0x47,0x7b, 0x4,0x21,0x35, 0xf,0x26,0x62, 0x3,0x2c,0x40,
+  0x6,0x30,0x4e, 0x6,0x48,0x2b, 0x6,0x48,0x35, 0x3,0x40,0x7e,
+  0x6,0x52,0x33, 0x6,0x5c,0x3d, 0x6,0x27,0x36, 0x6,0x5c,0x49,
+  0xf,0x21,0x5f, 0x6,0x48,0x37, 0x6,0x37,0x2c, 0x6,0x48,0x3c,
+  0x7,0x2d,0x53, 0x7,0x2d,0x55, 0x7,0x60,0x6e, 0x5,0x29,0x27,
+  0x6,0x3f,0x46, 0x6,0x3f,0x45, 0x3,0x35,0x5f, 0x6,0x52,0x40,
+  0x5,0x45,0x5d, 0x6,0x21,0x74, 0x6,0x27,0x4a, 0x6,0x2b,0x2f,
+  0x6,0x30,0x74, 0xf,0x2a,0x5d, 0x6,0x2b,0x39, 0x7,0x2d,0x63,
+  0x5,0x73,0x40, 0x3,0x2c,0x51, 0x6,0x3f,0x5e, 0x5,0x2d,0x48,
+  0x3,0x35,0x65, 0x6,0x27,0x5f, 0xf,0x24,0x33, 0x5,0x24,0x38,
+  0x6,0x31,0x36, 0x6,0x31,0x30, 0xf,0x2a,0x67, 0x4,0x29,0x4a,
+  0x6,0x48,0x7c, 0x6,0x48,0x78, 0x3,0x46,0x70, 0x6,0x52,0x6c,
+  0x6,0x52,0x66, 0x6,0x5d,0x26, 0x6,0x5d,0x24, 0x4,0x43,0x51,
+  0x7,0x2d,0x69, 0x7,0x2d,0x79, 0x7,0x22,0x7b, 0x3,0x54,0x60,
+  0x4,0x5b,0x2c, 0x7,0x47,0x28, 0x3,0x26,0x27, 0x6,0x40,0x23,
+  0x5,0x22,0x6e, 0x6,0x2b,0x63, 0x6,0x2b,0x60, 0x6,0x31,0x4f,
+  0xf,0x2b,0x2b, 0x6,0x37,0x71, 0x3,0x36,0x28, 0x6,0x40,0x36,
+  0x6,0x40,0x2b, 0x6,0x49,0x4a, 0x6,0x49,0x30, 0xf,0x41,0x5f,
+  0x7,0x23,0x30, 0x6,0x5d,0x38, 0x5,0x46,0x2c, 0x7,0x23,0x2d,
+  0xf,0x4f,0x25, 0x4,0x4a,0x27, 0x7,0x38,0x39, 0xf,0x5e,0x70,
+  0x4,0x2d,0x46, 0x6,0x49,0x57, 0xf,0x5a,0x36, 0x3,0x36,0x40,
+  0x6,0x38,0x36, 0xf,0x41,0x72, 0x6,0x53,0x3c, 0x5,0x46,0x41,
+  0xf,0x2b,0x38, 0x6,0x31,0x6d, 0x6,0x40,0x57, 0x6,0x49,0x78,
+  0x6,0x5d,0x5b, 0x6,0x2c,0x23, 0x5,0x26,0x4a, 0x4,0x32,0x3e,
+  0x6,0x40,0x58, 0x5,0x3f,0x66, 0x4,0x24,0x47, 0x6,0x28,0x2e,
+  0xf,0x24,0x51, 0x4,0x26,0x68, 0x3,0x2d,0x35, 0x6,0x38,0x4a,
+  0x3,0x31,0x5c, 0x4,0x2d,0x5c, 0x6,0x38,0x50, 0x5,0x32,0x7e,
+  0x3,0x3c,0x3a, 0x6,0x53,0x5e, 0x5,0x3f,0x71, 0x3,0x41,0x6e,
+  0x6,0x5d,0x68, 0x7,0x23,0x72, 0xf,0x54,0x74, 0x7,0x2e,0x6a,
+  0x4,0x5f,0x76, 0x7,0x58,0x23, 0x6,0x25,0x23, 0x6,0x4a,0x3f,
+  0x7,0x23,0x78, 0x7,0x5e,0x72, 0xf,0x48,0x79, 0x6,0x53,0x77,
+  0x4,0x2d,0x65, 0xf,0x35,0x74, 0x6,0x4a,0x4d, 0x6,0x2c,0x42,
+  0xf,0x48,0x7b, 0x6,0x25,0x2e, 0xf,0x24,0x5d, 0x6,0x2c,0x5b,
+  0x6,0x2c,0x51, 0x3,0x2d,0x52, 0x6,0x32,0x39, 0x6,0x32,0x42,
+  0x4,0x2a,0x25, 0x4,0x2d,0x70, 0x6,0x39,0x2d, 0x6,0x38,0x74,
+  0x6,0x39,0x21, 0xf,0x30,0x5b, 0x3,0x36,0x75, 0x6,0x4a,0x65,
+  0x6,0x4a,0x63, 0x4,0x3e,0x33, 0x6,0x54,0x49, 0x6,0x54,0x4f,
+  0xf,0x42,0x74, 0x6,0x5e,0x3e, 0x7,0x24,0x4f, 0x7,0x24,0x58,
+  0xf,0x4f,0x69, 0x7,0x2f,0x42, 0xf,0x55,0x56, 0x4,0x56,0x5d,
+  0x7,0x4e,0x28, 0x7,0x53,0x60, 0x7,0x53,0x58, 0x6,0x2c,0x60,
+  0x6,0x2c,0x5d, 0x6,0x32,0x48, 0x4,0x38,0x68, 0xf,0x43,0x2f,
+  0x6,0x54,0x59, 0xf,0x50,0x3d, 0xf,0x55,0x58, 0x5,0x7b,0x7b,
+  0x3,0x55,0x45, 0x6,0x41,0x61, 0x6,0x41,0x63, 0x6,0x41,0x6a,
+  0x6,0x5e,0x5e, 0x6,0x32,0x62, 0x6,0x4b,0x42, 0x7,0x47,0x75,
+  0x6,0x22,0x26, 0xf,0x24,0x78, 0x6,0x2d,0x24, 0xf,0x2c,0x39,
+  0xf,0x31,0x28, 0x6,0x4b,0x47, 0xf,0x43,0x64, 0x4,0x44,0x6e,
+  0x7,0x40,0x63, 0xf,0x63,0x24, 0x6,0x42,0x21, 0x3,0x3d,0x3f,
+  0x6,0x32,0x79, 0x4,0x2a,0x44, 0x5,0x33,0x65, 0x6,0x4b,0x56,
+  0x4,0x3e,0x6c, 0x6,0x42,0x32, 0xf,0x4a,0x2f, 0x7,0x53,0x7b,
+  0x6,0x2d,0x3a, 0x5,0x33,0x71, 0xf,0x56,0x3c, 0x6,0x2d,0x45,
+  0x6,0x2d,0x3d, 0x6,0x33,0x3d, 0x6,0x33,0x31, 0x5,0x2f,0x26,
+  0xf,0x2c,0x57, 0x6,0x3a,0x2d, 0x6,0x3a,0x2e, 0x6,0x42,0x48,
+  0x6,0x4b,0x7a, 0xf,0x50,0x5f, 0x7,0x30,0x4a, 0x6,0x25,0x3f,
+  0x6,0x2d,0x46, 0x3,0x43,0x33, 0x6,0x55,0x6b, 0x7,0x25,0x7b,
+  0x7,0x39,0x6d, 0xf,0x28,0x3c, 0x6,0x33,0x4a, 0xf,0x3d,0x60,
+  0x4,0x4b,0x60, 0x7,0x26,0x27, 0x6,0x3a,0x43, 0x6,0x42,0x67,
+  0x4,0x45,0x5f, 0x4,0x52,0x21, 0x7,0x30,0x66, 0x6,0x5f,0x75,
+  0x7,0x26,0x3e, 0x7,0x26,0x3c, 0x7,0x30,0x73, 0xf,0x4a,0x7b,
+  0x6,0x60,0x23, 0xf,0x51,0x23, 0x7,0x26,0x4d, 0x7,0x41,0x3c,
+  0x5,0x6c,0x7d, 0x7,0x31,0x2d, 0x7,0x3a,0x33, 0x4,0x5c,0x59,
+  0x7,0x41,0x44, 0x3,0x2e,0x56, 0x6,0x33,0x66, 0x3,0x48,0x6a,
+  0xf,0x51,0x37, 0x7,0x26,0x6a, 0x7,0x26,0x69, 0x4,0x64,0x26,
+  0x7,0x62,0x4d, 0x6,0x4c,0x72, 0x7,0x3a,0x46, 0xf,0x3e,0x32,
+  0x7,0x3a,0x49, 0x7,0x48,0x6d, 0x7,0x5f,0x3c, 0x6,0x4d,0x23,
+  0xf,0x57,0x27, 0x4,0x2b,0x26, 0x7,0x27,0x28, 0xf,0x57,0x28,
+  0x6,0x60,0x5d, 0x5,0x48,0x74, 0xf,0x5c,0x2d, 0x6,0x28,0x7b,
+  0x4,0x27,0x68, 0x6,0x2d,0x69, 0x3,0x33,0x50, 0x5,0x3b,0x50,
+  0x6,0x4d,0x48, 0xf,0x44,0x68, 0xf,0x4b,0x57, 0xf,0x4b,0x56,
+  0x4,0x4c,0x56, 0x4,0x58,0x2d, 0x4,0x34,0x57, 0x6,0x4d,0x5e,
+  0x3,0x44,0x25, 0x6,0x61,0x25, 0x3,0x27,0x2a, 0x6,0x25,0x52,
+  0x6,0x29,0x27, 0xf,0x28,0x5c, 0x6,0x29,0x28, 0x6,0x2e,0x22,
+  0x6,0x2e,0x23, 0x6,0x34,0x44, 0x6,0x2e,0x24, 0x6,0x3b,0x52,
+  0xf,0x32,0x3a, 0x4,0x34,0x73, 0x6,0x44,0x2b, 0x4,0x34,0x74,
+  0x6,0x43,0x76, 0x6,0x44,0x3b, 0x4,0x3a,0x66, 0x6,0x44,0x3e,
+  0x6,0x44,0x3c, 0x6,0x44,0x3d, 0x6,0x4e,0x3b, 0x6,0x61,0x3e,
+  0x6,0x61,0x4f, 0xf,0x51,0x64, 0x4,0x4c,0x79, 0x7,0x27,0x61,
+  0x7,0x27,0x6d, 0x7,0x32,0x44, 0xf,0x57,0x47, 0x7,0x3a,0x6f,
+  0xf,0x60,0x5d, 0x7,0x42,0x3c, 0x7,0x54,0x5e, 0x4,0x67,0x2b,
+  0x6,0x34,0x47, 0x4,0x40,0x4f, 0x7,0x3b,0x38, 0x3,0x5b,0x26,
+  0x6,0x3b,0x71, 0x4,0x3a,0x75, 0x6,0x4e,0x46, 0x4,0x46,0x7c,
+  0x4,0x4d,0x33, 0xf,0x52,0x24, 0x7,0x28,0x2e, 0xf,0x51,0x7d,
+  0x7,0x42,0x60, 0x7,0x42,0x5f, 0x3,0x5b,0x2d, 0x4,0x64,0x3f,
+  0x4,0x53,0x4c, 0x6,0x25,0x53, 0x5,0x30,0x3e, 0x6,0x58,0x2e,
+  0x6,0x58,0x2c, 0xf,0x45,0x3d, 0x7,0x3b,0x61, 0xf,0x38,0x4a,
+  0x5,0x7a,0x38, 0x6,0x3c,0x2d, 0x4,0x35,0x45, 0xf,0x3f,0x3b,
+  0x6,0x62,0x47, 0x7,0x33,0x4f, 0x7,0x59,0x41, 0x6,0x29,0x2a,
+  0x6,0x58,0x50, 0x6,0x58,0x5c, 0x3,0x60,0x7c, 0x6,0x3c,0x3b,
+  0x7,0x33,0x79, 0x7,0x33,0x73, 0xf,0x3f,0x53, 0x3,0x44,0x6d,
+  0x7,0x29,0x44, 0x6,0x34,0x5d, 0x4,0x30,0x2c, 0x7,0x34,0x31,
+  0x4,0x54,0x37, 0x7,0x3c,0x61, 0x6,0x25,0x5b, 0x4,0x35,0x72,
+  0x6,0x59,0x47, 0x6,0x59,0x4a, 0x7,0x3c,0x6b, 0xf,0x45,0x73,
+  0x6,0x63,0x53, 0x6,0x63,0x4f, 0x4,0x54,0x4a, 0xf,0x66,0x5e,
+  0x7,0x50,0x6b, 0xf,0x6c,0x3f, 0x6,0x63,0x58, 0x7,0x34,0x7a,
+  0x7,0x34,0x71, 0xf,0x61,0x4a, 0x6,0x50,0x22, 0x6,0x63,0x6e,
+  0x7,0x35,0x35, 0x3,0x56,0x78, 0x5,0x5f,0x5e, 0x7,0x3d,0x50,
+  0xf,0x58,0x78, 0x7,0x4b,0x5f, 0x4,0x65,0x2a, 0x7,0x4b,0x6b,
+  0x5,0x3d,0x47, 0x5,0x44,0x35, 0x6,0x5a,0x33, 0x6,0x64,0x30,
+  0x4,0x59,0x76, 0x6,0x64,0x3a, 0x6,0x3c,0x77, 0x6,0x5a,0x3d,
+  0x4,0x55,0x23, 0x4,0x5e,0x60, 0x6,0x64,0x50, 0x7,0x3e,0x29,
+  0x7,0x2b,0x55, 0xf,0x59,0x32, 0x7,0x51,0x7a, 0x7,0x5a,0x60,
+  0x4,0x5a,0x59, 0x7,0x45,0x65, 0x4,0x5f,0x37, 0x4,0x62,0x6e,
+  0x7,0x52,0x45, 0x5,0x75,0x36, 0x5,0x75,0x35, 0xf,0x6c,0x77,
+  0x7,0x3e,0x5c, 0x6,0x46,0x3e, 0x4,0x68,0x4f, 0x6,0x5a,0x60,
+  0x4,0x28,0x34, 0x3,0x5c,0x2f, 0x5,0x53,0x51, 0x7,0x4d,0x28,
+  0x4,0x48,0x77, 0x7,0x5e,0x4d,
+};
+
+static const Summary16 cns11643_inv_uni2indx_page00[16] = {
+  /* 0x0000 */
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0080 }, {    1, 0x0083 },
+  {    4, 0x0000 }, {    4, 0x0080 }, {    5, 0x0000 }, {    5, 0x0080 },
+};
+static const Summary16 cns11643_inv_uni2indx_page02[29] = {
+  /* 0x0200 */
+  {    6, 0x0000 }, {    6, 0x0000 }, {    6, 0x0000 }, {    6, 0x0000 },
+  {    6, 0x0000 }, {    6, 0x0000 }, {    6, 0x0000 }, {    6, 0x0000 },
+  {    6, 0x0000 }, {    6, 0x0000 }, {    6, 0x0000 }, {    6, 0x0000 },
+  {    6, 0x0e80 }, {   10, 0x0200 }, {   11, 0x0000 }, {   11, 0x0000 },
+  /* 0x0300 */
+  {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 },
+  {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 },
+  {   11, 0x0000 }, {   11, 0xfffe }, {   26, 0x03fb }, {   35, 0xfffe },
+  {   50, 0x03fb },
+};
+static const Summary16 cns11643_inv_uni2indx_page20[44] = {
+  /* 0x2000 */
+  {   59, 0x0000 }, {   59, 0x3358 }, {   66, 0x0060 }, {   68, 0x4824 },
+  {   72, 0x0000 }, {   72, 0x0000 }, {   72, 0x0000 }, {   72, 0x0000 },
+  {   72, 0x0000 }, {   72, 0x0000 }, {   72, 0x1000 }, {   73, 0x0000 },
+  {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0000 },
+  /* 0x2100 */
+  {   73, 0x0228 }, {   76, 0x0000 }, {   76, 0x0000 }, {   76, 0x0000 },
+  {   76, 0x0000 }, {   76, 0x0000 }, {   76, 0x03ff }, {   86, 0x03ff },
+  {   96, 0x0000 }, {   96, 0x03cf }, {  104, 0x0000 }, {  104, 0x0000 },
+  {  104, 0x0000 }, {  104, 0x0000 }, {  104, 0x0000 }, {  104, 0x0000 },
+  /* 0x2200 */
+  {  104, 0x0000 }, {  104, 0xc420 }, {  108, 0x4e01 }, {  113, 0x1030 },
+  {  116, 0x0000 }, {  116, 0x0004 }, {  117, 0x00c3 }, {  121, 0x0000 },
+  {  121, 0x0000 }, {  121, 0x0000 }, {  121, 0x0020 }, {  122, 0x8000 },
+};
+static const Summary16 cns11643_inv_uni2indx_page24[37] = {
+  /* 0x2400 */
+  {  123, 0xffff }, {  139, 0xffff }, {  155, 0x0002 }, {  156, 0x0000 },
+  {  156, 0x0000 }, {  156, 0x0000 }, {  156, 0x03ff }, {  166, 0x3ff0 },
+  {  176, 0x0000 }, {  176, 0x0000 }, {  176, 0x0000 }, {  176, 0x0000 },
+  {  176, 0x0000 }, {  176, 0x0000 }, {  176, 0x0000 }, {  176, 0x0000 },
+  /* 0x2500 */
+  {  176, 0x1005 }, {  179, 0x1111 }, {  183, 0x1010 }, {  185, 0x1010 },
+  {  187, 0x0000 }, {  187, 0x4001 }, {  189, 0xe402 }, {  194, 0x000f },
+  {  198, 0xfffe }, {  213, 0x0030 }, {  215, 0x0003 }, {  217, 0x300c },
+  {  221, 0xc8c0 }, {  226, 0x0000 }, {  226, 0x003c }, {  230, 0x0000 },
+  /* 0x2600 */
+  {  230, 0x0260 }, {  233, 0x0000 }, {  233, 0x0000 }, {  233, 0x0000 },
+  {  233, 0x0007 },
+};
+static const Summary16 cns11643_inv_uni2indx_page30[1787] = {
+  /* 0x3000 */
+  {  236, 0xff0f }, {  248, 0x6037 }, {  255, 0x03fe }, {  264, 0x0000 },
+  {  264, 0x0000 }, {  264, 0x0000 }, {  264, 0x0000 }, {  264, 0x0000 },
+  {  264, 0x0000 }, {  264, 0x0000 }, {  264, 0x0000 }, {  264, 0x0000 },
+  {  264, 0x0000 }, {  264, 0x0000 }, {  264, 0x0000 }, {  264, 0x0800 },
+  /* 0x3100 */
+  {  265, 0xffe0 }, {  276, 0xffff }, {  292, 0x03ff }, {  302, 0x0000 },
+  {  302, 0x0000 }, {  302, 0x0000 }, {  302, 0x0000 }, {  302, 0x0000 },
+  {  302, 0x0000 }, {  302, 0x0000 }, {  302, 0x0000 }, {  302, 0x0000 },
+  {  302, 0x0000 }, {  302, 0x0000 }, {  302, 0x0000 }, {  302, 0x0000 },
+  /* 0x3200 */
+  {  302, 0x0000 }, {  302, 0x0000 }, {  302, 0x0000 }, {  302, 0x0000 },
+  {  302, 0x0000 }, {  302, 0x0000 }, {  302, 0x0000 }, {  302, 0x0000 },
+  {  302, 0x0000 }, {  302, 0x0000 }, {  302, 0x0008 }, {  303, 0x0000 },
+  {  303, 0x0000 }, {  303, 0x0000 }, {  303, 0x0000 }, {  303, 0x0000 },
+  /* 0x3300 */
+  {  303, 0x0000 }, {  303, 0x0000 }, {  303, 0x0000 }, {  303, 0x0000 },
+  {  303, 0x0000 }, {  303, 0x0000 }, {  303, 0x0000 }, {  303, 0x0000 },
+  {  303, 0xc000 }, {  305, 0x7000 }, {  308, 0x0002 }, {  309, 0x0000 },
+  {  309, 0x4010 }, {  311, 0x0026 }, {  314, 0x0000 }, {  314, 0x0000 },
+  /* 0x3400 */
+  {  314, 0x1073 }, {  320, 0x1040 }, {  322, 0x7b12 }, {  330, 0x5f5f },
+  {  342, 0xfe3e }, {  354, 0xff8b }, {  366, 0xc0f8 }, {  373, 0xfefb },
+  {  387, 0x7fff }, {  402, 0xfefe }, {  416, 0xbff3 }, {  429, 0xfffd },
+  {  444, 0xdfbc }, {  456, 0xfdfb }, {  470, 0xf39f }, {  482, 0x7ffe },
+  /* 0x3500 */
+  {  496, 0xfcff }, {  510, 0x77af }, {  522, 0xf7ff }, {  537, 0xffff },
+  {  553, 0xffff }, {  569, 0xdff7 }, {  583, 0xfeff }, {  598, 0x1fef },
+  {  610, 0x81ff }, {  620, 0x81ff }, {  630, 0x0fff }, {  642, 0xfff0 },
+  {  654, 0x3fff }, {  668, 0x1ff9 }, {  679, 0x3ffc }, {  691, 0xf87f },
+  /* 0x3600 */
+  {  703, 0x3fe7 }, {  715, 0xfe7b }, {  728, 0xbfff }, {  743, 0x8fdf },
+  {  755, 0xefbf }, {  769, 0x7e2f }, {  780, 0xffbf }, {  795, 0x5fff },
+  {  809, 0xfebf }, {  823, 0xf5fd }, {  836, 0x7fff }, {  851, 0xffff },
+  {  867, 0xe63e }, {  877, 0x7fff }, {  892, 0xffe6 }, {  905, 0x7fff },
+  /* 0x3700 */
+  {  920, 0xfffe }, {  935, 0x7fef }, {  949, 0xdfff }, {  964, 0xffff },
+  {  980, 0xf5bf }, {  993, 0xfbff }, { 1008, 0xfefd }, { 1022, 0xfff7 },
+  { 1037, 0x9fff }, { 1051, 0x9fff }, { 1065, 0xbffe }, { 1079, 0xfeff },
+  { 1094, 0xffbb }, { 1108, 0xffdf }, { 1123, 0xbfe5 }, { 1135, 0xff7f },
+  /* 0x3800 */
+  { 1150, 0xfff7 }, { 1165, 0x3fff }, { 1179, 0xe7e7 }, { 1191, 0xfff6 },
+  { 1205, 0xdfff }, { 1220, 0xffff }, { 1236, 0xefed }, { 1249, 0xffff },
+  { 1265, 0xff7f }, { 1280, 0xffff }, { 1296, 0xd7eb }, { 1308, 0x7d7d },
+  { 1320, 0xfbff }, { 1335, 0xff1f }, { 1348, 0xb87d }, { 1358, 0xfce7 },
+  /* 0x3900 */
+  { 1370, 0xfffe }, { 1385, 0xfeff }, { 1400, 0xd7ff }, { 1414, 0xcfff },
+  { 1428, 0xffff }, { 1444, 0xfc7f }, { 1457, 0xfbff }, { 1472, 0xf7ff },
+  { 1487, 0xfeff }, { 1502, 0xfdff }, { 1517, 0xffff }, { 1533, 0xfff5 },
+  { 1547, 0x7fff }, { 1562, 0x47fc }, { 1572, 0xfffe }, { 1587, 0xfffe },
+  /* 0x3a00 */
+  { 1602, 0xffff }, { 1618, 0xfeff }, { 1633, 0xe7ff }, { 1647, 0xffff },
+  { 1663, 0x7ff9 }, { 1676, 0x7ffd }, { 1690, 0xbfff }, { 1705, 0xfeff },
+  { 1720, 0xfbb7 }, { 1733, 0xf46e }, { 1743, 0xfb7f }, { 1757, 0xdff3 },
+  { 1770, 0xec3f }, { 1781, 0xffbf }, { 1796, 0xdef3 }, { 1808, 0x3fff },
+  /* 0x3b00 */
+  { 1822, 0xfffe }, { 1837, 0x7fbd }, { 1850, 0xfeef }, { 1864, 0x9b7f },
+  { 1876, 0x1f9e }, { 1886, 0xff3e }, { 1899, 0xff07 }, { 1910, 0xff07 },
+  { 1921, 0xf9ff }, { 1935, 0xffff }, { 1951, 0xfffa }, { 1965, 0x97ff },
+  { 1978, 0xffff }, { 1994, 0xfff9 }, { 2008, 0xfc7f }, { 2021, 0xcfff },
+  /* 0x3c00 */
+  { 2035, 0xffff }, { 2051, 0xeff7 }, { 2065, 0xffff }, { 2081, 0xfeff },
+  { 2096, 0xffff }, { 2112, 0xdff4 }, { 2124, 0xbdff }, { 2138, 0xff7f },
+  { 2153, 0xffff }, { 2169, 0xfffe }, { 2184, 0xbdff }, { 2198, 0x7fff },
+  { 2213, 0xfdff }, { 2228, 0xffcf }, { 2242, 0x7ff0 }, { 2253, 0xfff8 },
+  /* 0x3d00 */
+  { 2266, 0xc7ff }, { 2279, 0x7fff }, { 2294, 0xffe3 }, { 2307, 0xf9ff },
+  { 2321, 0xfc7f }, { 2334, 0xe3ff }, { 2347, 0xffff }, { 2363, 0xefff },
+  { 2378, 0xf1f3 }, { 2389, 0xddfe }, { 2402, 0xfffb }, { 2417, 0xde3d },
+  { 2428, 0xefff }, { 2443, 0x8fff }, { 2456, 0xf97f }, { 2469, 0xdbf9 },
+  /* 0x3e00 */
+  { 2481, 0xff3f }, { 2495, 0xffff }, { 2511, 0xffff }, { 2527, 0x7fef },
+  { 2541, 0xfeff }, { 2556, 0xffff }, { 2572, 0xf8ff }, { 2585, 0xfffe },
+  { 2600, 0xdfbf }, { 2614, 0xfdff }, { 2629, 0x7ffb }, { 2643, 0xa7bf },
+  { 2655, 0x7f9f }, { 2668, 0xe6fe }, { 2680, 0xf98f }, { 2691, 0xffe7 },
+  /* 0x3f00 */
+  { 2705, 0xfef6 }, { 2718, 0xffff }, { 2734, 0xffff }, { 2750, 0xffff },
+  { 2766, 0x7fdf }, { 2780, 0xffef }, { 2795, 0xffff }, { 2811, 0xefb7 },
+  { 2824, 0xffff }, { 2840, 0xffff }, { 2856, 0xffff }, { 2872, 0xffc1 },
+  { 2883, 0xfffe }, { 2898, 0xffee }, { 2912, 0xfffe }, { 2927, 0xffff },
+  /* 0x4000 */
+  { 2943, 0xefff }, { 2958, 0xdfff }, { 2973, 0xff9f }, { 2987, 0xffff },
+  { 3003, 0xfffe }, { 3018, 0xffbf }, { 3033, 0xfbfd }, { 3047, 0xffff },
+  { 3063, 0xf7ff }, { 3078, 0xffff }, { 3094, 0xfeff }, { 3109, 0xffdf },
+  { 3124, 0xff87 }, { 3136, 0x7ffe }, { 3150, 0x7eff }, { 3164, 0xefff },
+  /* 0x4100 */
+  { 3179, 0xfbff }, { 3194, 0xbf3f }, { 3207, 0xfff7 }, { 3222, 0xfdcf },
+  { 3235, 0xfdff }, { 3250, 0x7fff }, { 3265, 0xf3ff }, { 3279, 0xffff },
+  { 3295, 0xef3f }, { 3308, 0xffff }, { 3324, 0xbfff }, { 3339, 0xffef },
+  { 3354, 0xfbef }, { 3368, 0xffff }, { 3384, 0xffff }, { 3400, 0x7fe7 },
+  /* 0x4200 */
+  { 3413, 0xffff }, { 3429, 0xffff }, { 3445, 0xfcff }, { 3459, 0xffff },
+  { 3475, 0xff7f }, { 3490, 0xffff }, { 3506, 0xffef }, { 3521, 0xffff },
+  { 3537, 0xefff }, { 3552, 0xffff }, { 3568, 0xfffb }, { 3583, 0xffff },
+  { 3599, 0xff1f }, { 3612, 0xdfff }, { 3627, 0xffff }, { 3643, 0xffff },
+  /* 0x4300 */
+  { 3659, 0xf7ff }, { 3674, 0xffff }, { 3690, 0xffff }, { 3706, 0x003f },
+  { 3712, 0xfffc }, { 3726, 0xffff }, { 3742, 0xfffe }, { 3757, 0xffff },
+  { 3773, 0xffff }, { 3789, 0xb7ff }, { 3803, 0xefdf }, { 3817, 0xffff },
+  { 3833, 0xffff }, { 3849, 0xdfff }, { 3864, 0x9fff }, { 3878, 0xffff },
+  /* 0x4400 */
+  { 3894, 0xffbf }, { 3909, 0xffff }, { 3925, 0xfbff }, { 3940, 0xffff },
+  { 3956, 0xffff }, { 3972, 0xffbf }, { 3987, 0xbdff }, { 4001, 0xbe7f },
+  { 4014, 0xff7f }, { 4029, 0xfdfd }, { 4043, 0x3fff }, { 4057, 0x3fff },
+  { 4071, 0xfffe }, { 4086, 0xff8f }, { 4099, 0xe4ff }, { 4111, 0xf7ff },
+  /* 0x4500 */
+  { 4126, 0xffff }, { 4142, 0xffff }, { 4158, 0xffff }, { 4174, 0xffff },
+  { 4190, 0xfffb }, { 4205, 0xfffe }, { 4220, 0xfff7 }, { 4235, 0xffbf },
+  { 4250, 0xffff }, { 4266, 0xffff }, { 4282, 0xefff }, { 4297, 0xbfff },
+  { 4312, 0xffff }, { 4328, 0xffbf }, { 4343, 0xdfff }, { 4358, 0xf7f7 },
+  /* 0x4600 */
+  { 4372, 0xffff }, { 4388, 0xb7ff }, { 4402, 0xffff }, { 4418, 0xfffb },
+  { 4433, 0xc3ff }, { 4445, 0xfff7 }, { 4460, 0xf7ff }, { 4475, 0xf7bf },
+  { 4489, 0xffff }, { 4505, 0xffdf }, { 4520, 0xefef }, { 4534, 0xffff },
+  { 4550, 0xffff }, { 4566, 0xfff7 }, { 4581, 0xffff }, { 4597, 0xffff },
+  /* 0x4700 */
+  { 4613, 0xffff }, { 4629, 0xffff }, { 4645, 0xfc07 }, { 4654, 0xfff7 },
+  { 4669, 0xffff }, { 4685, 0xf5ff }, { 4699, 0xffff }, { 4715, 0xefff },
+  { 4730, 0x0fff }, { 4742, 0xfffe }, { 4757, 0xffff }, { 4773, 0xfffb },
+  { 4788, 0xffff }, { 4804, 0xffff }, { 4820, 0xffff }, { 4836, 0xfffb },
+  /* 0x4800 */
+  { 4851, 0xefff }, { 4866, 0xffbf }, { 4881, 0xffff }, { 4897, 0xfbff },
+  { 4912, 0xffff }, { 4928, 0xffff }, { 4944, 0xffff }, { 4960, 0xf7fd },
+  { 4974, 0x7ff8 }, { 4986, 0xfe7f }, { 5000, 0xfff7 }, { 5015, 0xfbff },
+  { 5030, 0xfdff }, { 5045, 0xfffb }, { 5060, 0xffbf }, { 5075, 0xfff7 },
+  /* 0x4900 */
+  { 5090, 0xfffe }, { 5105, 0xffff }, { 5121, 0xfdf7 }, { 5135, 0xfffb },
+  { 5150, 0xff7f }, { 5165, 0xefff }, { 5180, 0xffff }, { 5196, 0x01ff },
+  { 5205, 0xff80 }, { 5214, 0xf7ff }, { 5229, 0xfdff }, { 5244, 0x3e3e },
+  { 5254, 0x7efe }, { 5267, 0xffff }, { 5283, 0xd5ff }, { 5296, 0xffff },
+  /* 0x4a00 */
+  { 5312, 0xffff }, { 5328, 0xfbff }, { 5343, 0xffff }, { 5359, 0xffff },
+  { 5375, 0xbfef }, { 5389, 0xffff }, { 5405, 0xffff }, { 5421, 0xffff },
+  { 5437, 0xffff }, { 5453, 0x7fff }, { 5468, 0xfbff }, { 5483, 0xffff },
+  { 5499, 0xffff }, { 5515, 0xffff }, { 5531, 0xffff }, { 5547, 0xffff },
+  /* 0x4b00 */
+  { 5563, 0xffff }, { 5579, 0xffff }, { 5595, 0xffff }, { 5611, 0xffff },
+  { 5627, 0x7fff }, { 5642, 0xefff }, { 5657, 0xfbff }, { 5672, 0xffff },
+  { 5688, 0xffff }, { 5704, 0xffff }, { 5720, 0xffff }, { 5736, 0xffff },
+  { 5752, 0xffc7 }, { 5765, 0xffff }, { 5781, 0xfdff }, { 5796, 0xf7ff },
+  /* 0x4c00 */
+  { 5811, 0xff7f }, { 5826, 0xffff }, { 5842, 0xbfff }, { 5857, 0xffb7 },
+  { 5871, 0xffff }, { 5887, 0xffff }, { 5903, 0xfbff }, { 5918, 0xffef },
+  { 5933, 0xff7f }, { 5948, 0x1eff }, { 5960, 0xffe0 }, { 5971, 0xffbf },
+  { 5986, 0xffff }, { 6002, 0xffff }, { 6018, 0xffff }, { 6034, 0xfdff },
+  /* 0x4d00 */
+  { 6049, 0xffff }, { 6065, 0xfc07 }, { 6074, 0xfeff }, { 6089, 0xffff },
+  { 6105, 0xffff }, { 6121, 0xffff }, { 6137, 0xffff }, { 6153, 0xffff },
+  { 6169, 0xffff }, { 6185, 0xffff }, { 6201, 0x9fff }, { 6215, 0x003b },
+  { 6220, 0x0000 }, { 6220, 0x0000 }, { 6220, 0x0000 }, { 6220, 0x0000 },
+  /* 0x4e00 */
+  { 6220, 0xffbf }, { 6235, 0xc3f7 }, { 6246, 0xef5f }, { 6259, 0xbb6f },
+  { 6271, 0xebef }, { 6284, 0xf7de }, { 6297, 0x070c }, { 6302, 0xc23a },
+  { 6309, 0xfbff }, { 6324, 0xfbfe }, { 6338, 0xf97f }, { 6351, 0x56df },
+  { 6362, 0xffff }, { 6378, 0xfff1 }, { 6391, 0xc3ff }, { 6403, 0xffff },
+  /* 0x4f00 */
+  { 6419, 0xffff }, { 6435, 0x3fff }, { 6449, 0xf304 }, { 6456, 0xffff },
+  { 6472, 0xffff }, { 6488, 0xffff }, { 6504, 0xffdf }, { 6519, 0xffff },
+  { 6535, 0xffff }, { 6551, 0xffff }, { 6567, 0xc80f }, { 6574, 0xffff },
+  { 6590, 0xffff }, { 6606, 0xffff }, { 6622, 0xd2bf }, { 6633, 0xffff },
+  /* 0x5000 */
+  { 6649, 0xffff }, { 6665, 0xffff }, { 6681, 0xffff }, { 6697, 0x93ff },
+  { 6709, 0xffff }, { 6725, 0xffff }, { 6741, 0xffff }, { 6757, 0x3fff },
+  { 6771, 0xffff }, { 6787, 0xffff }, { 6803, 0xfc4f }, { 6814, 0xffff },
+  { 6830, 0xffff }, { 6846, 0xffff }, { 6862, 0xffff }, { 6878, 0xfffb },
+  /* 0x5100 */
+  { 6893, 0xffff }, { 6909, 0xffff }, { 6925, 0xffff }, { 6941, 0xffff },
+  { 6957, 0xffff }, { 6973, 0xffff }, { 6989, 0x7fff }, { 7004, 0xd3ee },
+  { 7015, 0xfffd }, { 7030, 0xe3ff }, { 7043, 0x3f7f }, { 7056, 0xf7ff },
+  { 7071, 0xffff }, { 7087, 0xffff }, { 7103, 0x753f }, { 7114, 0x67ff },
+  /* 0x5200 */
+  { 7127, 0xdfff }, { 7142, 0xf1ff }, { 7155, 0xcfff }, { 7169, 0x7fff },
+  { 7184, 0xfffa }, { 7198, 0xfffc }, { 7212, 0xffff }, { 7228, 0xfffd },
+  { 7243, 0x7fff }, { 7258, 0xffff }, { 7274, 0xfff9 }, { 7288, 0xfffb },
+  { 7303, 0xf7ff }, { 7318, 0xfbff }, { 7333, 0xffff }, { 7349, 0xffff },
+  /* 0x5300 */
+  { 7365, 0xfffb }, { 7380, 0xffff }, { 7396, 0xbfbf }, { 7410, 0xffff },
+  { 7426, 0xffff }, { 7442, 0xffbf }, { 7457, 0xf7fb }, { 7471, 0xffff },
+  { 7487, 0xcfdd }, { 7499, 0xffdc }, { 7512, 0xfff3 }, { 7526, 0x6fff },
+  { 7540, 0xff3f }, { 7554, 0xfefd }, { 7568, 0xffff }, { 7584, 0xbfff },
+  /* 0x5400 */
+  { 7599, 0xffff }, { 7615, 0xff6f }, { 7629, 0xffff }, { 7645, 0xffff },
+  { 7661, 0xffff }, { 7677, 0xe413 }, { 7684, 0xffff }, { 7700, 0xffff },
+  { 7716, 0xffff }, { 7732, 0xd57f }, { 7744, 0xffff }, { 7760, 0xffff },
+  { 7776, 0xffff }, { 7792, 0x4441 }, { 7796, 0xffff }, { 7812, 0xffff },
+  /* 0x5500 */
+  { 7828, 0xffff }, { 7844, 0x0fff }, { 7856, 0xffc3 }, { 7868, 0xffff },
+  { 7884, 0xffff }, { 7900, 0xffff }, { 7916, 0x0d7f }, { 7926, 0xfcee },
+  { 7938, 0xffff }, { 7954, 0xffff }, { 7970, 0xffff }, { 7986, 0x8c7f },
+  { 7996, 0xffff }, { 8012, 0xffff }, { 8028, 0xc7ff }, { 8041, 0xffd7 },
+  /* 0x5600 */
+  { 8055, 0xffff }, { 8071, 0xfbff }, { 8086, 0xffc5 }, { 8098, 0xffff },
+  { 8114, 0xffff }, { 8130, 0xc7ff }, { 8143, 0xffff }, { 8159, 0xefff },
+  { 8174, 0xffff }, { 8190, 0xffff }, { 8206, 0xffe1 }, { 8218, 0xffff },
+  { 8234, 0xbfff }, { 8249, 0xff9f }, { 8263, 0xfffb }, { 8278, 0xbfcf },
+  /* 0x5700 */
+  { 8291, 0xffbf }, { 8306, 0xfdff }, { 8321, 0xffbf }, { 8336, 0xf87f },
+  { 8348, 0xffff }, { 8364, 0x8bff }, { 8376, 0xfffe }, { 8391, 0xffff },
+  { 8407, 0xfd8f }, { 8419, 0xffff }, { 8435, 0x5fff }, { 8449, 0xfff0 },
+  { 8461, 0xffff }, { 8477, 0xf8bf }, { 8489, 0xffff }, { 8505, 0xffff },
+  /* 0x5800 */
+  { 8521, 0xffff }, { 8537, 0xff9d }, { 8550, 0xffff }, { 8566, 0xffff },
+  { 8582, 0xffbd }, { 8596, 0xffff }, { 8612, 0xbfff }, { 8627, 0xfffe },
+  { 8642, 0xffff }, { 8658, 0xfdff }, { 8673, 0xffff }, { 8689, 0xfcbf },
+  { 8702, 0xe7ff }, { 8716, 0xff7f }, { 8731, 0xdbdf }, { 8744, 0xfebf },
+  /* 0x5900 */
+  { 8758, 0xff7f }, { 8773, 0xbfff }, { 8788, 0xffff }, { 8804, 0xf1ff },
+  { 8817, 0xfff9 }, { 8831, 0xffbf }, { 8846, 0xffff }, { 8862, 0xffff },
+  { 8878, 0xfe7f }, { 8892, 0xffff }, { 8908, 0xf1ff }, { 8921, 0xffff },
+  { 8937, 0xffff }, { 8953, 0xffff }, { 8969, 0xffff }, { 8985, 0xffff },
+  /* 0x5a00 */
+  { 9001, 0xfe1f }, { 9013, 0xffff }, { 9029, 0xffff }, { 9045, 0xffeb },
+  { 9059, 0xffff }, { 9075, 0xffff }, { 9091, 0xffff }, { 9107, 0xffaf },
+  { 9121, 0xffff }, { 9137, 0xffff }, { 9153, 0xdfff }, { 9168, 0xffff },
+  { 9184, 0xffff }, { 9200, 0xffeb }, { 9214, 0xffff }, { 9230, 0xfff9 },
+  /* 0x5b00 */
+  { 9244, 0xffff }, { 9260, 0xffff }, { 9276, 0xffff }, { 9292, 0xffbf },
+  { 9307, 0xffff }, { 9323, 0xbdff }, { 9337, 0xdfff }, { 9352, 0xffff },
+  { 9368, 0xffff }, { 9384, 0xfffd }, { 9399, 0xfbfc }, { 9412, 0xdfff },
+  { 9427, 0xfdff }, { 9442, 0xffff }, { 9458, 0xffff }, { 9474, 0xe7ff },
+  /* 0x5c00 */
+  { 9488, 0xfffb }, { 9503, 0xcfff }, { 9517, 0xbf3f }, { 9530, 0xffeb },
+  { 9544, 0xfff3 }, { 9558, 0xffff }, { 9574, 0xffbf }, { 9589, 0x7fbb },
+  { 9602, 0xfff3 }, { 9616, 0xf2bf }, { 9628, 0xffff }, { 9644, 0x0fff },
+  { 9656, 0xffc3 }, { 9668, 0xffff }, { 9684, 0xff66 }, { 9696, 0xffff },
+  /* 0x5d00 */
+  { 9712, 0xffc3 }, { 9724, 0xffff }, { 9740, 0xdfff }, { 9755, 0xffff },
+  { 9771, 0xffff }, { 9787, 0xcaff }, { 9799, 0xffff }, { 9815, 0xffbf },
+  { 9830, 0xffff }, { 9846, 0xffff }, { 9862, 0xffff }, { 9878, 0xffff },
+  { 9894, 0xffdf }, { 9909, 0xffff }, { 9925, 0x4bff }, { 9937, 0xefff },
+  /* 0x5e00 */
+  { 9952, 0x7fdf }, { 9966, 0xeffe }, { 9980, 0xff3f }, { 9994, 0xe7fd },
+  { 10007, 0xfdff }, { 10022, 0xffff }, { 10038, 0xffff }, { 10054, 0xffff },
+  { 10070, 0xffbf }, { 10085, 0x3fe5 }, { 10096, 0xffff }, { 10112, 0xefff },
+  { 10127, 0xffff }, { 10143, 0xffff }, { 10159, 0xffef }, { 10174, 0xffff },
+  /* 0x5f00 */
+  { 10190, 0xfdff }, { 10205, 0xffbf }, { 10220, 0xfbfe }, { 10234, 0xffff },
+  { 10250, 0xffdf }, { 10265, 0x7fff }, { 10280, 0xfeff }, { 10295, 0xf7ff },
+  { 10310, 0xffff }, { 10326, 0xffdf }, { 10341, 0xffff }, { 10357, 0xffff },
+  { 10373, 0xffbf }, { 10388, 0xffff }, { 10404, 0xffff }, { 10420, 0xffff },
+  /* 0x6000 */
+  { 10436, 0xff81 }, { 10446, 0xffff }, { 10462, 0xffff }, { 10478, 0x23ff },
+  { 10489, 0xffff }, { 10505, 0xffff }, { 10521, 0xffff }, { 10537, 0xd03f },
+  { 10546, 0xffff }, { 10562, 0xffff }, { 10578, 0x47ff }, { 10590, 0xffff },
+  { 10606, 0xffff }, { 10622, 0xffff }, { 10638, 0x47ff }, { 10650, 0xffff },
+  /* 0x6100 */
+  { 10666, 0xffff }, { 10682, 0xffff }, { 10698, 0xffaf }, { 10712, 0xffff },
+  { 10728, 0xffff }, { 10744, 0xfffd }, { 10759, 0xffff }, { 10775, 0xffff },
+  { 10791, 0xffff }, { 10807, 0xffff }, { 10823, 0xffff }, { 10839, 0xffff },
+  { 10855, 0xffff }, { 10871, 0xffe9 }, { 10884, 0xffff }, { 10900, 0xffef },
+  /* 0x6200 */
+  { 10915, 0xf7bf }, { 10929, 0xff7f }, { 10944, 0xffff }, { 10960, 0xffff },
+  { 10976, 0xffef }, { 10991, 0xff9f }, { 11005, 0xe1ff }, { 11017, 0xffff },
+  { 11033, 0xffff }, { 11049, 0x7fff }, { 11064, 0xfff8 }, { 11077, 0xffff },
+  { 11093, 0xffff }, { 11109, 0xffff }, { 11125, 0xfc13 }, { 11134, 0xffff },
+  /* 0x6300 */
+  { 11150, 0xffff }, { 11166, 0x8aff }, { 11177, 0xff0a }, { 11187, 0xffff },
+  { 11203, 0xffff }, { 11219, 0x3fff }, { 11233, 0xfff1 }, { 11246, 0xffff },
+  { 11262, 0xffff }, { 11278, 0xffff }, { 11294, 0xffff }, { 11310, 0xe447 },
+  { 11318, 0xffff }, { 11334, 0xffff }, { 11350, 0xffff }, { 11366, 0x47ff },
+  /* 0x6400 */
+  { 11378, 0xffc8 }, { 11389, 0xffff }, { 11405, 0xffff }, { 11421, 0xffff },
+  { 11437, 0xfacb }, { 11448, 0xffff }, { 11464, 0xffff }, { 11480, 0xffff },
+  { 11496, 0xffef }, { 11511, 0xffff }, { 11527, 0xffff }, { 11543, 0xfa5f },
+  { 11555, 0xffff }, { 11571, 0x9fff }, { 11585, 0xffff }, { 11601, 0xffff },
+  /* 0x6500 */
+  { 11617, 0xffff }, { 11633, 0xfffb }, { 11648, 0xffff }, { 11664, 0xffff },
+  { 11680, 0xffff }, { 11696, 0xf7ff }, { 11711, 0xfdff }, { 11726, 0x9fff },
+  { 11740, 0x7fbf }, { 11754, 0xfff7 }, { 11769, 0xfdff }, { 11784, 0xffff },
+  { 11800, 0xfffe }, { 11815, 0xffdf }, { 11830, 0xffff }, { 11846, 0xfe7f },
+  /* 0x6600 */
+  { 11860, 0xffff }, { 11876, 0xffff }, { 11892, 0xffff }, { 11908, 0x1fff },
+  { 11921, 0xffff }, { 11937, 0xff87 }, { 11949, 0xffff }, { 11965, 0xffff },
+  { 11981, 0xfff3 }, { 11995, 0xffff }, { 12011, 0xff7f }, { 12026, 0xffff },
+  { 12042, 0xffff }, { 12058, 0xffff }, { 12074, 0xffff }, { 12090, 0xd7ff },
+  /* 0x6700 */
+  { 12104, 0xffff }, { 12120, 0xffff }, { 12136, 0xfdff }, { 12151, 0xfffe },
+  { 12166, 0xfff5 }, { 12180, 0xffff }, { 12196, 0xfc67 }, { 12207, 0xffff },
+  { 12223, 0xffff }, { 12239, 0xffff }, { 12255, 0xd05e }, { 12263, 0xffff },
+  { 12279, 0xffff }, { 12295, 0xffff }, { 12311, 0xffff }, { 12327, 0xdfff },
+  /* 0x6800 */
+  { 12342, 0x0073 }, { 12347, 0xffff }, { 12363, 0xffff }, { 12379, 0xffff },
+  { 12395, 0xffff }, { 12411, 0x47ff }, { 12423, 0xf800 }, { 12428, 0xffff },
+  { 12444, 0xdfff }, { 12459, 0xffff }, { 12475, 0xffff }, { 12491, 0x23ff },
+  { 12502, 0xfffa }, { 12516, 0xffff }, { 12532, 0xffff }, { 12548, 0xffff },
+  /* 0x6900 */
+  { 12564, 0xffff }, { 12580, 0x59ff }, { 12592, 0xdea0 }, { 12600, 0xffff },
+  { 12616, 0xffff }, { 12632, 0xffff }, { 12648, 0xffff }, { 12664, 0xbfff },
+  { 12679, 0xf46d }, { 12689, 0xffff }, { 12705, 0xffff }, { 12721, 0xffff },
+  { 12737, 0xffff }, { 12753, 0x03ff }, { 12763, 0xfffe }, { 12778, 0xffff },
+  /* 0x6a00 */
+  { 12794, 0xffff }, { 12810, 0xffff }, { 12826, 0x3fff }, { 12840, 0xfffc },
+  { 12854, 0xffff }, { 12870, 0xffff }, { 12886, 0xffff }, { 12902, 0xe5c7 },
+  { 12912, 0xffff }, { 12928, 0xffff }, { 12944, 0xfdff }, { 12959, 0xffff },
+  { 12975, 0xfdff }, { 12990, 0xffff }, { 13006, 0xffef }, { 13021, 0xff7f },
+  /* 0x6b00 */
+  { 13036, 0xffdf }, { 13051, 0x7fff }, { 13066, 0xffff }, { 13082, 0xffff },
+  { 13098, 0xffff }, { 13114, 0xffff }, { 13130, 0xffff }, { 13146, 0xefff },
+  { 13161, 0xff7f }, { 13176, 0xfbf3 }, { 13189, 0xffff }, { 13205, 0xfffd },
+  { 13220, 0xfffb }, { 13235, 0x7ddf }, { 13248, 0xbfff }, { 13263, 0xffff },
+  /* 0x6c00 */
+  { 13279, 0xbf7f }, { 13293, 0xff7f }, { 13308, 0xfdfb }, { 13322, 0xdbdf },
+  { 13335, 0xfe7f }, { 13349, 0xffff }, { 13365, 0xffef }, { 13380, 0xffff },
+  { 13396, 0xffff }, { 13412, 0xffff }, { 13428, 0xfc0f }, { 13438, 0xffff },
+  { 13454, 0xffff }, { 13470, 0xffff }, { 13486, 0xffff }, { 13502, 0x823f },
+  /* 0x6d00 */
+  { 13510, 0xffff }, { 13526, 0xffff }, { 13542, 0xffff }, { 13558, 0xffff },
+  { 13574, 0x003f }, { 13580, 0xffc0 }, { 13590, 0xffff }, { 13606, 0xffff },
+  { 13622, 0xffff }, { 13638, 0x0fff }, { 13650, 0xfc20 }, { 13657, 0xffff },
+  { 13673, 0xffff }, { 13689, 0xffff }, { 13705, 0xffff }, { 13721, 0xffff },
+  /* 0x6e00 */
+  { 13737, 0x9fff }, { 13751, 0xffa4 }, { 13762, 0xffff }, { 13778, 0xffff },
+  { 13794, 0xffff }, { 13810, 0xffff }, { 13826, 0xffff }, { 13842, 0x7fff },
+  { 13857, 0xef55 }, { 13868, 0xffff }, { 13884, 0xffff }, { 13900, 0xffff },
+  { 13916, 0xffff }, { 13932, 0x3fff }, { 13946, 0xfb48 }, { 13955, 0xffff },
+  /* 0x6f00 */
+  { 13971, 0xffff }, { 13987, 0xffff }, { 14003, 0xffff }, { 14019, 0xffff },
+  { 14035, 0xd77f }, { 14048, 0xffff }, { 14064, 0xffff }, { 14080, 0xffff },
+  { 14096, 0xffff }, { 14112, 0xe7ff }, { 14126, 0xffff }, { 14142, 0xffff },
+  { 14158, 0xffff }, { 14174, 0xfff9 }, { 14188, 0xffff }, { 14204, 0xfdff },
+  /* 0x7000 */
+  { 14219, 0xffff }, { 14235, 0xffff }, { 14251, 0xffff }, { 14267, 0xffff },
+  { 14283, 0x3fff }, { 14297, 0xfffe }, { 14312, 0xdfff }, { 14327, 0xffff },
+  { 14343, 0xfffe }, { 14358, 0x8fff }, { 14371, 0xffff }, { 14387, 0xcfff },
+  { 14401, 0xfff1 }, { 14414, 0xffff }, { 14430, 0xc43f }, { 14439, 0xffff },
+  /* 0x7100 */
+  { 14455, 0xffff }, { 14471, 0xfe8f }, { 14483, 0xffff }, { 14499, 0xafff },
+  { 14513, 0xfffe }, { 14528, 0xffdf }, { 14543, 0xffff }, { 14559, 0xfff7 },
+  { 14574, 0xffff }, { 14590, 0xffff }, { 14606, 0xffff }, { 14622, 0xffff },
+  { 14638, 0xffff }, { 14654, 0xffff }, { 14670, 0xffff }, { 14686, 0xff3f },
+  /* 0x7200 */
+  { 14700, 0xffff }, { 14716, 0xffff }, { 14732, 0xffff }, { 14748, 0xff75 },
+  { 14761, 0xdfff }, { 14776, 0xefff }, { 14791, 0xffff }, { 14807, 0xffdf },
+  { 14822, 0xfbff }, { 14837, 0xffff }, { 14853, 0xfffe }, { 14868, 0xfe7f },
+  { 14882, 0xfeff }, { 14897, 0xbfff }, { 14912, 0x3fff }, { 14926, 0xfff8 },
+  /* 0x7300 */
+  { 14939, 0xfff7 }, { 14954, 0x7fff }, { 14969, 0xfffc }, { 14983, 0xfdff },
+  { 14998, 0xffff }, { 15014, 0xffff }, { 15030, 0xdfe7 }, { 15043, 0xffff },
+  { 15059, 0xffff }, { 15075, 0xf1ff }, { 15088, 0xbfff }, { 15103, 0xfffc },
+  { 15117, 0xffff }, { 15133, 0xfffd }, { 15148, 0xffff }, { 15164, 0xfff8 },
+  /* 0x7400 */
+  { 15177, 0x3fff }, { 15191, 0xfffc }, { 15205, 0xffff }, { 15221, 0xff7f },
+  { 15236, 0xffff }, { 15252, 0xffff }, { 15268, 0xffff }, { 15284, 0xff7f },
+  { 15299, 0xbfff }, { 15314, 0xffff }, { 15330, 0xffff }, { 15346, 0xffff },
+  { 15362, 0xffff }, { 15378, 0xfffb }, { 15393, 0xff7f }, { 15408, 0xeff8 },
+  /* 0x7500 */
+  { 15420, 0xffdf }, { 15435, 0xfdff }, { 15450, 0xffff }, { 15466, 0xefcf },
+  { 15479, 0xffdf }, { 15494, 0xfffb }, { 15509, 0xfdfe }, { 15523, 0xffe7 },
+  { 15537, 0xdffb }, { 15551, 0x7f3f }, { 15564, 0x0ffc }, { 15574, 0xffff },
+  { 15590, 0xfcff }, { 15604, 0xffbf }, { 15619, 0xf0ff }, { 15631, 0xffff },
+  /* 0x7600 */
+  { 15647, 0xff8f }, { 15660, 0xfe7f }, { 15674, 0xf3ff }, { 15688, 0x3fff },
+  { 15702, 0xdfff }, { 15717, 0x9fff }, { 15731, 0xf7b7 }, { 15744, 0xfbff },
+  { 15759, 0xffff }, { 15775, 0xfffd }, { 15790, 0xffff }, { 15806, 0xfff9 },
+  { 15820, 0x7fff }, { 15835, 0xfffc }, { 15849, 0xffff }, { 15865, 0xffff },
+  /* 0x7700 */
+  { 15881, 0xcfff }, { 15895, 0xffff }, { 15911, 0xefff }, { 15926, 0xffff },
+  { 15942, 0xffff }, { 15958, 0xfffc }, { 15972, 0xffff }, { 15988, 0xffff },
+  { 16004, 0xffbf }, { 16019, 0xfff3 }, { 16033, 0xffff }, { 16049, 0xffff },
+  { 16065, 0xf6ff }, { 16079, 0xffff }, { 16095, 0xf7ff }, { 16110, 0x7fff },
+  /* 0x7800 */
+  { 16125, 0xfffc }, { 16139, 0xeb3f }, { 16151, 0xffff }, { 16167, 0x21ff },
+  { 16177, 0xfffc }, { 16191, 0xf11f }, { 16201, 0xffff }, { 16217, 0xff43 },
+  { 16228, 0xffff }, { 16244, 0xf7ff }, { 16259, 0xffff }, { 16275, 0xff9f },
+  { 16289, 0xffff }, { 16305, 0xfd7f }, { 16319, 0xffff }, { 16335, 0xffdf },
+  /* 0x7900 */
+  { 16350, 0xfff7 }, { 16365, 0xffbf }, { 16380, 0xffff }, { 16396, 0xf7e7 },
+  { 16409, 0xbff7 }, { 16423, 0xffff }, { 16439, 0x7fff }, { 16454, 0xfeff },
+  { 16469, 0xffdf }, { 16484, 0xffff }, { 16500, 0xffff }, { 16516, 0xffff },
+  { 16532, 0xffff }, { 16548, 0xffff }, { 16564, 0x7fff }, { 16579, 0x9fef },
+  /* 0x7a00 */
+  { 16592, 0xffff }, { 16608, 0xffff }, { 16624, 0xffe7 }, { 16638, 0xffff },
+  { 16654, 0xfff7 }, { 16669, 0x9ff9 }, { 16681, 0xfff7 }, { 16696, 0xff7f },
+  { 16711, 0x9fff }, { 16725, 0xcfff }, { 16739, 0xdf9f }, { 16752, 0xffff },
+  { 16768, 0xfff7 }, { 16783, 0xbfbf }, { 16797, 0xffff }, { 16813, 0xffff },
+  /* 0x7b00 */
+  { 16829, 0xff73 }, { 16842, 0xffdf }, { 16857, 0xffff }, { 16873, 0xabff },
+  { 16886, 0xffff }, { 16902, 0xc3ff }, { 16914, 0xffff }, { 16930, 0x0bff },
+  { 16941, 0xfffe }, { 16956, 0xfbff }, { 16971, 0xf03f }, { 16981, 0xffff },
+  { 16997, 0x7fff }, { 17012, 0xfff1 }, { 17025, 0x3fff }, { 17039, 0xffff },
+  /* 0x7c00 */
+  { 17055, 0xffff }, { 17071, 0xff37 }, { 17084, 0xffff }, { 17100, 0xfffd },
+  { 17115, 0xfffd }, { 17130, 0xffff }, { 17146, 0xfffd }, { 17161, 0xffff },
+  { 17177, 0x7ffb }, { 17191, 0xfffe }, { 17206, 0xdbff }, { 17220, 0xffff },
+  { 17236, 0xffff }, { 17252, 0xfeff }, { 17267, 0xffff }, { 17283, 0xfdff },
+  /* 0x7d00 */
+  { 17298, 0xffff }, { 17314, 0xffff }, { 17330, 0xff3f }, { 17344, 0xffff },
+  { 17360, 0xffff }, { 17376, 0xffff }, { 17392, 0xffff }, { 17408, 0xff7f },
+  { 17423, 0xffff }, { 17439, 0xf3ff }, { 17453, 0xffff }, { 17469, 0xffff },
+  { 17485, 0xffff }, { 17501, 0xffcf }, { 17515, 0xffff }, { 17531, 0xffff },
+  /* 0x7e00 */
+  { 17547, 0xff9f }, { 17561, 0xffff }, { 17577, 0xfeff }, { 17592, 0xffff },
+  { 17608, 0xf3ff }, { 17622, 0xffff }, { 17638, 0xff7f }, { 17653, 0xffff },
+  { 17669, 0xfff7 }, { 17684, 0x7ffe }, { 17698, 0x0000 }, { 17698, 0x0000 },
+  { 17698, 0x0000 }, { 17698, 0x0000 }, { 17698, 0x0000 }, { 17698, 0x0000 },
+  /* 0x7f00 */
+  { 17698, 0x0000 }, { 17698, 0x0000 }, { 17698, 0x0000 }, { 17698, 0xffc0 },
+  { 17708, 0xfdfb }, { 17722, 0xfbb7 }, { 17735, 0xffff }, { 17751, 0xffef },
+  { 17766, 0xfffd }, { 17781, 0x7fff }, { 17796, 0xfbff }, { 17811, 0xffff },
+  { 17827, 0xffff }, { 17843, 0xf8ff }, { 17856, 0xffff }, { 17872, 0xffff },
+  /* 0x8000 */
+  { 17888, 0xffff }, { 17904, 0xffff }, { 17920, 0xff7b }, { 17934, 0xffff },
+  { 17950, 0xc7fb }, { 17962, 0xffef }, { 17977, 0xfdfb }, { 17991, 0xffff },
+  { 18007, 0xfff6 }, { 18021, 0xffff }, { 18037, 0xfffe }, { 18052, 0x0fff },
+  { 18064, 0xfffc }, { 18078, 0xffff }, { 18094, 0xe07f }, { 18104, 0xffff },
+  /* 0x8100 */
+  { 18120, 0x07ff }, { 18131, 0xfff0 }, { 18143, 0xffff }, { 18159, 0xfe13 },
+  { 18169, 0xffff }, { 18185, 0xf93f }, { 18197, 0xffff }, { 18213, 0xa7ff },
+  { 18226, 0xffff }, { 18242, 0xfffd }, { 18257, 0xffcf }, { 18271, 0xffbf },
+  { 18286, 0xffff }, { 18302, 0xeff7 }, { 18316, 0xffff }, { 18332, 0xffff },
+  /* 0x8200 */
+  { 18348, 0xffbf }, { 18363, 0xff7f }, { 18378, 0xbff7 }, { 18392, 0xb7fc },
+  { 18404, 0xdfff }, { 18419, 0xdfef }, { 18433, 0xfffe }, { 18448, 0xfbfe },
+  { 18462, 0xfefb }, { 18476, 0xff7f }, { 18491, 0xffff }, { 18507, 0xffff },
+  { 18523, 0x063f }, { 18531, 0xffff }, { 18547, 0xffff }, { 18563, 0xffff },
+  /* 0x8300 */
+  { 18579, 0x7fff }, { 18594, 0xffc5 }, { 18606, 0xffff }, { 18622, 0xffff },
+  { 18638, 0xffff }, { 18654, 0x01ff }, { 18663, 0x000c }, { 18665, 0xffff },
+  { 18681, 0xffff }, { 18697, 0xffff }, { 18713, 0xffff }, { 18729, 0xe281 },
+  { 18735, 0xffff }, { 18751, 0xffff }, { 18767, 0xffff }, { 18783, 0xffff },
+  /* 0x8400 */
+  { 18799, 0xffff }, { 18815, 0xc9ff }, { 18827, 0xfe0a }, { 18836, 0xffff },
+  { 18852, 0xffff }, { 18868, 0xffff }, { 18884, 0xffff }, { 18900, 0xffff },
+  { 18916, 0xe15f }, { 18926, 0xffff }, { 18942, 0xffff }, { 18958, 0xffff },
+  { 18974, 0xffff }, { 18990, 0x4dff }, { 19002, 0xff96 }, { 19014, 0xffff },
+  /* 0x8500 */
+  { 19030, 0xffff }, { 19046, 0xffff }, { 19062, 0xffff }, { 19078, 0xe93f },
+  { 19089, 0xffff }, { 19105, 0xffff }, { 19121, 0xffff }, { 19137, 0xffeb },
+  { 19151, 0xffff }, { 19167, 0xffff }, { 19183, 0x9fff }, { 19197, 0xffff },
+  { 19213, 0xffff }, { 19229, 0xfff7 }, { 19244, 0xffff }, { 19260, 0xffff },
+  /* 0x8600 */
+  { 19276, 0xffff }, { 19292, 0xffeb }, { 19306, 0xffff }, { 19322, 0xfffe },
+  { 19337, 0x7fef }, { 19351, 0xffff }, { 19367, 0xffff }, { 19383, 0x7fff },
+  { 19398, 0xfff0 }, { 19410, 0xffff }, { 19426, 0xe7ff }, { 19440, 0xffff },
+  { 19456, 0x9fff }, { 19470, 0xffff }, { 19486, 0x7fff }, { 19501, 0xffe0 },
+  /* 0x8700 */
+  { 19512, 0xffff }, { 19528, 0xff7f }, { 19543, 0xffff }, { 19559, 0xffff },
+  { 19575, 0xf4ff }, { 19588, 0xffff }, { 19604, 0xffff }, { 19620, 0x3fff },
+  { 19634, 0xfffe }, { 19649, 0xffff }, { 19665, 0xfe3f }, { 19678, 0xffff },
+  { 19694, 0x7fff }, { 19709, 0xfffe }, { 19724, 0xffff }, { 19740, 0xffff },
+  /* 0x8800 */
+  { 19756, 0xffff }, { 19772, 0xffff }, { 19788, 0xffff }, { 19804, 0xffff },
+  { 19820, 0xffff }, { 19836, 0xffef }, { 19851, 0xefcf }, { 19864, 0xffff },
+  { 19880, 0xff9f }, { 19894, 0xffff }, { 19910, 0x1fff }, { 19923, 0xfffe },
+  { 19938, 0xfe07 }, { 19948, 0xffff }, { 19964, 0xffc3 }, { 19976, 0xffff },
+  /* 0x8900 */
+  { 19992, 0xffef }, { 20007, 0xcfff }, { 20021, 0xffff }, { 20037, 0xffef },
+  { 20052, 0xff5f }, { 20066, 0xffdf }, { 20081, 0xfeff }, { 20096, 0xffff },
+  { 20112, 0xfffe }, { 20127, 0xffff }, { 20143, 0xffff }, { 20159, 0xffff },
+  { 20175, 0x0001 }, { 20176, 0xbffc }, { 20189, 0x7fff }, { 20204, 0xffff },
+  /* 0x8a00 */
+  { 20220, 0xfffd }, { 20235, 0xfbff }, { 20250, 0xffff }, { 20266, 0xfff7 },
+  { 20281, 0xffff }, { 20297, 0x7fff }, { 20312, 0xffff }, { 20328, 0xffff },
+  { 20344, 0xf9ff }, { 20358, 0xffff }, { 20374, 0xbfff }, { 20389, 0xffff },
+  { 20405, 0xffff }, { 20421, 0xfbff }, { 20436, 0xffff }, { 20452, 0xffff },
+  /* 0x8b00 */
+  { 20468, 0xffff }, { 20484, 0xffff }, { 20500, 0xfffd }, { 20515, 0xffff },
+  { 20531, 0xffff }, { 20547, 0xf7ff }, { 20562, 0xffff }, { 20578, 0xfffb },
+  { 20593, 0x7fff }, { 20608, 0xffff }, { 20624, 0x0000 }, { 20624, 0x0000 },
+  { 20624, 0x0000 }, { 20624, 0x0000 }, { 20624, 0x0000 }, { 20624, 0x0000 },
+  /* 0x8c00 */
+  { 20624, 0x0000 }, { 20624, 0x0000 }, { 20624, 0x0000 }, { 20624, 0xff80 },
+  { 20633, 0xffff }, { 20649, 0xffff }, { 20665, 0xbfff }, { 20680, 0xffff },
+  { 20696, 0xffff }, { 20712, 0xffff }, { 20728, 0xffff }, { 20744, 0xffff },
+  { 20760, 0xbfff }, { 20775, 0xffff }, { 20791, 0xffff }, { 20807, 0xffff },
+  /* 0x8d00 */
+  { 20823, 0xffff }, { 20839, 0x1fff }, { 20852, 0x0000 }, { 20852, 0x0000 },
+  { 20852, 0x0000 }, { 20852, 0x0000 }, { 20852, 0xfbf0 }, { 20863, 0xffdf },
+  { 20878, 0xffff }, { 20894, 0xffff }, { 20910, 0xffff }, { 20926, 0xfefd },
+  { 20940, 0xffef }, { 20955, 0xbfff }, { 20970, 0xffdf }, { 20985, 0xf41f },
+  /* 0x8e00 */
+  { 20995, 0xafff }, { 21009, 0xffff }, { 21025, 0x4fff }, { 21038, 0xffff },
+  { 21054, 0xffff }, { 21070, 0xfffb }, { 21085, 0xffff }, { 21101, 0x1fff },
+  { 21114, 0x7ffe }, { 21128, 0xe7ff }, { 21142, 0xffff }, { 21158, 0xf7df },
+  { 21172, 0xfedf }, { 21186, 0xffff }, { 21202, 0xfff3 }, { 21216, 0xffff },
+  /* 0x8f00 */
+  { 21232, 0xefff }, { 21247, 0xffff }, { 21263, 0xffff }, { 21279, 0xffff },
+  { 21295, 0xefff }, { 21310, 0xffff }, { 21326, 0x003f }, { 21332, 0x0000 },
+  { 21332, 0x0000 }, { 21332, 0xf800 }, { 21337, 0xf5ff }, { 21351, 0xdbff },
+  { 21365, 0xffff }, { 21381, 0x93ff }, { 21393, 0xffff }, { 21409, 0xfff3 },
+  /* 0x9000 */
+  { 21423, 0xfbff }, { 21438, 0xffff }, { 21454, 0xff3f }, { 21468, 0xfdff },
+  { 21483, 0xffff }, { 21499, 0xff3f }, { 21513, 0xffdf }, { 21528, 0xffff },
+  { 21544, 0xffff }, { 21560, 0xdfff }, { 21575, 0xefff }, { 21590, 0xf3ff },
+  { 21604, 0x7fff }, { 21619, 0xfff4 }, { 21632, 0xff3f }, { 21646, 0xfeff },
+  /* 0x9100 */
+  { 21661, 0xffff }, { 21677, 0xffff }, { 21693, 0xffff }, { 21709, 0xffff },
+  { 21725, 0xfffb }, { 21740, 0x97ff }, { 21753, 0xffbf }, { 21768, 0x1ffd },
+  { 21780, 0xffff }, { 21796, 0xff7f }, { 21811, 0xffef }, { 21826, 0xfeff },
+  { 21841, 0xfaff }, { 21855, 0xfffb }, { 21870, 0xfffd }, { 21885, 0xe3ff },
+  /* 0x9200 */
+  { 21898, 0xffff }, { 21914, 0xffff }, { 21930, 0xe8ff }, { 21942, 0xffff },
+  { 21958, 0xffff }, { 21974, 0xffff }, { 21990, 0xffff }, { 22006, 0xfffd },
+  { 22021, 0xffff }, { 22037, 0xffff }, { 22053, 0xffff }, { 22069, 0xffff },
+  { 22085, 0xffff }, { 22101, 0xffff }, { 22117, 0xffff }, { 22133, 0xffff },
+  /* 0x9300 */
+  { 22149, 0xffff }, { 22165, 0xffff }, { 22181, 0xffff }, { 22197, 0xbfff },
+  { 22212, 0xffed }, { 22226, 0xffff }, { 22242, 0xffff }, { 22258, 0xffff },
+  { 22274, 0xffff }, { 22290, 0xffff }, { 22306, 0xffff }, { 22322, 0xfbff },
+  { 22337, 0xffff }, { 22353, 0xffff }, { 22369, 0xffff }, { 22385, 0xfffe },
+  /* 0x9400 */
+  { 22400, 0xffff }, { 22416, 0xffff }, { 22432, 0xffbd }, { 22446, 0xffff },
+  { 22462, 0xfffd }, { 22477, 0xfff7 }, { 22492, 0xffff }, { 22508, 0xffff },
+  { 22524, 0x001f }, { 22529, 0x0000 }, { 22529, 0x0000 }, { 22529, 0x0000 },
+  { 22529, 0x0000 }, { 22529, 0x0000 }, { 22529, 0x0000 }, { 22529, 0x0000 },
+  /* 0x9500 */
+  { 22529, 0x0000 }, { 22529, 0x0000 }, { 22529, 0x0000 }, { 22529, 0x0000 },
+  { 22529, 0x0000 }, { 22529, 0x0000 }, { 22529, 0x0000 }, { 22529, 0x7f80 },
+  { 22537, 0xfbff }, { 22552, 0xffff }, { 22568, 0xfbff }, { 22583, 0xffff },
+  { 22599, 0x7fff }, { 22614, 0xffff }, { 22630, 0x00ff }, { 22638, 0x0020 },
+  /* 0x9600 */
+  { 22639, 0x0000 }, { 22639, 0x7000 }, { 22642, 0xffff }, { 22658, 0xff9f },
+  { 22672, 0xfc1f }, { 22683, 0xffff }, { 22699, 0xfc1f }, { 22710, 0xfbff },
+  { 22725, 0xffff }, { 22741, 0xfffe }, { 22756, 0xffff }, { 22772, 0xffff },
+  { 22788, 0xffff }, { 22804, 0xffff }, { 22820, 0xfffe }, { 22835, 0xbff7 },
+  /* 0x9700 */
+  { 22849, 0xfffd }, { 22864, 0xffff }, { 22880, 0xdfff }, { 22895, 0xffff },
+  { 22911, 0x2fff }, { 22924, 0xffe7 }, { 22938, 0xffdf }, { 22953, 0xfffd },
+  { 22968, 0xffbf }, { 22983, 0xfff8 }, { 22996, 0x7fff }, { 23011, 0xffff },
+  { 23027, 0xffff }, { 23043, 0xffff }, { 23059, 0xe03f }, { 23068, 0xffff },
+  /* 0x9800 */
+  { 23084, 0xffff }, { 23100, 0xffff }, { 23116, 0xefff }, { 23131, 0xffff },
+  { 23147, 0xffff }, { 23163, 0xffff }, { 23179, 0xffff }, { 23195, 0x001f },
+  { 23200, 0x0000 }, { 23200, 0x0000 }, { 23200, 0xfb00 }, { 23207, 0xffef },
+  { 23222, 0x3fdf }, { 23235, 0xb800 }, { 23239, 0xbefe }, { 23252, 0xffff },
+  /* 0x9900 */
+  { 23268, 0x5fff }, { 23282, 0xffff }, { 23298, 0xffff }, { 23314, 0xffff },
+  { 23330, 0xffff }, { 23346, 0xffff }, { 23362, 0x0003 }, { 23364, 0x0000 },
+  { 23364, 0x0000 }, { 23364, 0xffc0 }, { 23374, 0xffff }, { 23390, 0xffff },
+  { 23406, 0xffdf }, { 23421, 0xffff }, { 23437, 0xffff }, { 23453, 0xfffb },
+  /* 0x9a00 */
+  { 23468, 0xffff }, { 23484, 0xfff3 }, { 23498, 0xfeff }, { 23513, 0xffff },
+  { 23529, 0xffff }, { 23545, 0xffff }, { 23561, 0x0fff }, { 23573, 0x0000 },
+  { 23573, 0x0000 }, { 23573, 0x0000 }, { 23573, 0xff00 }, { 23581, 0xffff },
+  { 23597, 0xe7df }, { 23610, 0xffff }, { 23626, 0xffff }, { 23642, 0xffff },
+  /* 0x9b00 */
+  { 23658, 0xffff }, { 23674, 0xfff7 }, { 23689, 0xffff }, { 23705, 0xffbf },
+  { 23720, 0xff7f }, { 23735, 0xbfff }, { 23750, 0xffff }, { 23766, 0xfeff },
+  { 23781, 0xffff }, { 23797, 0xff7f }, { 23812, 0xffff }, { 23828, 0xffeb },
+  { 23842, 0xbfff }, { 23857, 0xfffc }, { 23871, 0xffff }, { 23887, 0xffd9 },
+  /* 0x9c00 */
+  { 23900, 0xffff }, { 23916, 0xf8ff }, { 23929, 0xffff }, { 23945, 0xfffe },
+  { 23960, 0xffff }, { 23976, 0xe3ff }, { 23989, 0xf1ff }, { 24002, 0x0ffe },
+  { 24013, 0x0000 }, { 24013, 0x0000 }, { 24013, 0x0000 }, { 24013, 0x0000 },
+  { 24013, 0x0000 }, { 24013, 0x0000 }, { 24013, 0xffe0 }, { 24024, 0xfffe },
+  /* 0x9d00 */
+  { 24039, 0xbfff }, { 24054, 0xffff }, { 24070, 0xe7ff }, { 24084, 0xffff },
+  { 24100, 0xfebf }, { 24114, 0xffff }, { 24130, 0xffdf }, { 24145, 0xffff },
+  { 24161, 0x1fff }, { 24174, 0xffff }, { 24190, 0xf7ff }, { 24205, 0xffff },
+  { 24221, 0xffbf }, { 24236, 0xffff }, { 24252, 0xffff }, { 24268, 0xffff },
+  /* 0x9e00 */
+  { 24284, 0xffff }, { 24300, 0x7fff }, { 24315, 0x0000 }, { 24315, 0x0000 },
+  { 24315, 0x0000 }, { 24315, 0x0000 }, { 24315, 0x0000 }, { 24315, 0xbee0 },
+  { 24324, 0xffff }, { 24340, 0xffff }, { 24356, 0xffff }, { 24372, 0xf8ff },
+  { 24385, 0xfdff }, { 24400, 0xffff }, { 24416, 0xf9fd }, { 24429, 0xffff },
+  /* 0x9f00 */
+  { 24445, 0xc7ff }, { 24458, 0xffff }, { 24474, 0xfffd }, { 24489, 0xffff },
+  { 24505, 0xffff }, { 24521, 0xfffd }, { 24536, 0xfffb }, { 24551, 0x7fff },
+  { 24566, 0xe000 }, { 24569, 0x73ff }, { 24582, 0x003f },
+};
+static const Summary16 cns11643_inv_uni2indx_pagefa[3] = {
+  /* 0xfa00 */
+  { 24588, 0x0000 }, { 24588, 0x0000 }, { 24588, 0x0100 },
+};
+static const Summary16 cns11643_inv_uni2indx_pagefe[31] = {
+  /* 0xfe00 */
+  { 24589, 0x0000 }, { 24589, 0x0000 }, { 24589, 0x0000 }, { 24589, 0xffe7 },
+  { 24603, 0x7e1f }, { 24614, 0xfef7 }, { 24628, 0x0f7f }, { 24639, 0x0000 },
+  { 24639, 0x0000 }, { 24639, 0x0000 }, { 24639, 0x0000 }, { 24639, 0x0000 },
+  { 24639, 0x0000 }, { 24639, 0x0000 }, { 24639, 0x0000 }, { 24639, 0x0000 },
+  /* 0xff00 */
+  { 24639, 0xff7a }, { 24652, 0xffff }, { 24668, 0xffff }, { 24684, 0x97ff },
+  { 24697, 0xfffe }, { 24712, 0x3fff }, { 24726, 0x0000 }, { 24726, 0x0000 },
+  { 24726, 0x0000 }, { 24726, 0x0000 }, { 24726, 0x0000 }, { 24726, 0x0000 },
+  { 24726, 0x0000 }, { 24726, 0x0000 }, { 24726, 0x0023 },
+};
+static const Summary16 cns11643_inv_uni2indx_page200[2670] = {
+  /* 0x20000 */
+  { 24729, 0x8bbd }, { 24739, 0x0715 }, { 24745, 0x722f }, { 24754, 0x0860 },
+  { 24757, 0x39ca }, { 24765, 0x08ec }, { 24771, 0xeaf6 }, { 24782, 0xe0d7 },
+  { 24791, 0xb1fc }, { 24801, 0x5fbc }, { 24812, 0xd33d }, { 24822, 0xf6ff },
+  { 24836, 0x8a5c }, { 24843, 0xc377 }, { 24853, 0x24f3 }, { 24861, 0x795f },
+  /* 0x20100 */
+  { 24872, 0xfff4 }, { 24885, 0xeefe }, { 24898, 0x751f }, { 24908, 0x03b7 },
+  { 24916, 0x9fb9 }, { 24927, 0xe3fa }, { 24938, 0xfebf }, { 24952, 0x4071 },
+  { 24957, 0xd6ff }, { 24970, 0x3004 }, { 24973, 0xb3f8 }, { 24983, 0x1ff5 },
+  { 24994, 0x8ffc }, { 25005, 0xff11 }, { 25015, 0x0fff }, { 25027, 0xc096 },
+  /* 0x20200 */
+  { 25033, 0xfffb }, { 25048, 0xffe3 }, { 25061, 0xf787 }, { 25072, 0xffff },
+  { 25088, 0xfff0 }, { 25100, 0x0977 }, { 25108, 0x7ffe }, { 25122, 0xffce },
+  { 25135, 0x1dff }, { 25147, 0x4056 }, { 25152, 0x7ffd }, { 25166, 0x4fff },
+  { 25179, 0xfffe }, { 25194, 0x287f }, { 25203, 0xffae }, { 25216, 0xffff },
+  /* 0x20300 */
+  { 25232, 0xfb81 }, { 25241, 0x119f }, { 25249, 0xfe03 }, { 25258, 0xdeff },
+  { 25272, 0xff11 }, { 25282, 0xc17f }, { 25292, 0xdf84 }, { 25301, 0x0fff },
+  { 25313, 0xfffc }, { 25327, 0x4fff }, { 25340, 0xd08e }, { 25347, 0xffcf },
+  { 25361, 0xf59f }, { 25373, 0x04d7 }, { 25380, 0xff9e }, { 25393, 0x0dd1 },
+  /* 0x20400 */
+  { 25400, 0x7f41 }, { 25409, 0x8de4 }, { 25417, 0xcdfe }, { 25429, 0xfc6f },
+  { 25441, 0xf037 }, { 25450, 0xbf8e }, { 25461, 0xefd0 }, { 25471, 0xeecc },
+  { 25481, 0x3d7b }, { 25492, 0xcff9 }, { 25504, 0x2f1f }, { 25514, 0xbf7f },
+  { 25528, 0xfb5c }, { 25539, 0xb9ac }, { 25548, 0xecb3 }, { 25558, 0x21db },
+  /* 0x20500 */
+  { 25566, 0xdfdf }, { 25580, 0xbfed }, { 25593, 0x8fa7 }, { 25603, 0x73fa },
+  { 25614, 0x6d5e }, { 25624, 0xed5f }, { 25636, 0xf3fd }, { 25649, 0x2eef },
+  { 25660, 0xb433 }, { 25668, 0xd6ff }, { 25681, 0x4acf }, { 25690, 0x3fd6 },
+  { 25701, 0x7fff }, { 25716, 0x7fbe }, { 25729, 0xf5e6 }, { 25740, 0xfcfe },
+  /* 0x20600 */
+  { 25753, 0x7ff1 }, { 25765, 0xf9de }, { 25777, 0xfabf }, { 25790, 0xf5ef },
+  { 25803, 0xbfc1 }, { 25813, 0xbf8f }, { 25825, 0xef87 }, { 25836, 0xefef },
+  { 25850, 0xe9c7 }, { 25860, 0xefc6 }, { 25871, 0xffea }, { 25884, 0xff9f },
+  { 25898, 0xe39f }, { 25909, 0x0fff }, { 25921, 0xffe1 }, { 25933, 0xfbf7 },
+  /* 0x20700 */
+  { 25947, 0x12c4 }, { 25952, 0xbfff }, { 25967, 0x016f }, { 25974, 0xffff },
+  { 25990, 0x3f3f }, { 26002, 0xef06 }, { 26011, 0xe7bf }, { 26024, 0xe002 },
+  { 26028, 0xffff }, { 26044, 0x311f }, { 26052, 0xfff0 }, { 26064, 0xf88f },
+  { 26074, 0xfffe }, { 26089, 0x9fff }, { 26103, 0xffc0 }, { 26113, 0xfc2b },
+  /* 0x20800 */
+  { 26123, 0xe9ff }, { 26136, 0xf88d }, { 26145, 0xdccf }, { 26156, 0xfbdf },
+  { 26170, 0x31de }, { 26179, 0xc3fe }, { 26190, 0xff47 }, { 26202, 0xfb37 },
+  { 26214, 0xcff7 }, { 26227, 0x03fc }, { 26235, 0xa1ff }, { 26246, 0x9fdf },
+  { 26259, 0xfffb }, { 26274, 0xf7de }, { 26287, 0xcfff }, { 26301, 0xffbb },
+  /* 0x20900 */
+  { 26315, 0xcfbb }, { 26327, 0xdfbf }, { 26341, 0xfd3f }, { 26354, 0xd77b },
+  { 26366, 0xde3f }, { 26378, 0x7e4f }, { 26389, 0xfe6e }, { 26401, 0x6dff },
+  { 26414, 0x31ed }, { 26423, 0xff7e }, { 26437, 0x3c7f }, { 26448, 0x70f3 },
+  { 26457, 0xc517 }, { 26465, 0xdf9b }, { 26477, 0xff7f }, { 26492, 0x3ffc },
+  /* 0x20a00 */
+  { 26504, 0xebef }, { 26517, 0xff5d }, { 26530, 0xf0ad }, { 26539, 0x2ff7 },
+  { 26551, 0xfc9f }, { 26563, 0xffc6 }, { 26575, 0xffdd }, { 26589, 0xff1f },
+  { 26602, 0xffd0 }, { 26613, 0xff7e }, { 26627, 0xec75 }, { 26637, 0xfe29 },
+  { 26647, 0x5387 }, { 26655, 0xc6bd }, { 26665, 0x1ff5 }, { 26676, 0x9e1b },
+  /* 0x20b00 */
+  { 26685, 0xc5f7 }, { 26696, 0xfd8b }, { 26707, 0xffee }, { 26721, 0xbffe },
+  { 26735, 0xfebf }, { 26749, 0xffff }, { 26765, 0xffeb }, { 26779, 0xd97f },
+  { 26791, 0xeffe }, { 26805, 0x7fff }, { 26820, 0xfdff }, { 26835, 0x0fbf },
+  { 26846, 0xff46 }, { 26857, 0x7fff }, { 26872, 0x59fa }, { 26882, 0x0068 },
+  /* 0x20c00 */
+  { 26885, 0xff30 }, { 26895, 0x7fff }, { 26910, 0xfffe }, { 26925, 0x8165 },
+  { 26931, 0x4001 }, { 26933, 0xffff }, { 26949, 0xfbff }, { 26964, 0xfe2f },
+  { 26976, 0xdbff }, { 26990, 0x0089 }, { 26993, 0xee00 }, { 26999, 0xffff },
+  { 27015, 0x7fff }, { 27030, 0xf800 }, { 27035, 0xcfff }, { 27049, 0x8f93 },
+  /* 0x20d00 */
+  { 27058, 0x0008 }, { 27059, 0x0000 }, { 27059, 0xffce }, { 27072, 0xffff },
+  { 27088, 0x040f }, { 27093, 0xfffe }, { 27108, 0x0427 }, { 27113, 0x02a5 },
+  { 27118, 0x0000 }, { 27118, 0x0000 }, { 27118, 0x7f80 }, { 27126, 0xfdbf },
+  { 27140, 0xffff }, { 27156, 0xfffe }, { 27171, 0xff80 }, { 27180, 0x79ff },
+  /* 0x20e00 */
+  { 27193, 0x3011 }, { 27197, 0x2040 }, { 27199, 0x6000 }, { 27201, 0x8fef },
+  { 27213, 0xffff }, { 27229, 0xdfff }, { 27244, 0x4fff }, { 27257, 0x8000 },
+  { 27258, 0xffff }, { 27274, 0x0008 }, { 27275, 0x0014 }, { 27277, 0x0000 },
+  { 27277, 0xf000 }, { 27281, 0xfff3 }, { 27295, 0xffff }, { 27311, 0xc043 },
+  /* 0x20f00 */
+  { 27316, 0xffff }, { 27332, 0x557f }, { 27343, 0x020c }, { 27346, 0x0000 },
+  { 27346, 0x0000 }, { 27346, 0x3000 }, { 27348, 0xfffd }, { 27363, 0xff7f },
+  { 27378, 0x1f7f }, { 27390, 0xffc0 }, { 27400, 0x84e3 }, { 27407, 0x0001 },
+  { 27408, 0xffe0 }, { 27419, 0xffff }, { 27435, 0x40ff }, { 27444, 0xfc00 },
+  /* 0x21000 */
+  { 27450, 0xffff }, { 27466, 0x000d }, { 27469, 0x0000 }, { 27469, 0xbe00 },
+  { 27475, 0xfbfe }, { 27489, 0x80ef }, { 27497, 0x3b3f }, { 27508, 0x0000 },
+  { 27508, 0x8c00 }, { 27511, 0xffff }, { 27527, 0x13ff }, { 27538, 0x7fc0 },
+  { 27547, 0x0000 }, { 27547, 0xa000 }, { 27549, 0xffff }, { 27565, 0x0084 },
+  /* 0x21100 */
+  { 27567, 0x077c }, { 27575, 0x7ffe }, { 27589, 0x0009 }, { 27591, 0x8ffe },
+  { 27603, 0x0003 }, { 27605, 0xf790 }, { 27614, 0x600a }, { 27618, 0xff47 },
+  { 27630, 0xce68 }, { 27638, 0x180f }, { 27644, 0x238f }, { 27652, 0xdffd },
+  { 27666, 0x7fda }, { 27678, 0x09ff }, { 27688, 0x041f }, { 27694, 0xf2ff },
+  /* 0x21200 */
+  { 27707, 0xfe9d }, { 27719, 0xbff2 }, { 27731, 0x743c }, { 27739, 0xd38a },
+  { 27747, 0x3416 }, { 27753, 0xaf04 }, { 27760, 0x10ff }, { 27769, 0x10ee },
+  { 27776, 0xffff }, { 27792, 0x5ff8 }, { 27803, 0x11fb }, { 27812, 0x7ff0 },
+  { 27823, 0xfff0 }, { 27835, 0x797f }, { 27847, 0xff89 }, { 27858, 0x01ff },
+  /* 0x21300 */
+  { 27867, 0xffc2 }, { 27878, 0x97ed }, { 27889, 0xfef0 }, { 27900, 0xfbdf },
+  { 27914, 0x87ff }, { 27926, 0x003a }, { 27930, 0xfff3 }, { 27944, 0xfcff },
+  { 27958, 0x40ff }, { 27967, 0x04e1 }, { 27972, 0xdf80 }, { 27980, 0xfffb },
+  { 27995, 0xffaf }, { 28009, 0x00bf }, { 28016, 0xee00 }, { 28022, 0x81ff },
+  /* 0x21400 */
+  { 28032, 0x47ff }, { 28044, 0xe83b }, { 28053, 0x2f7f }, { 28065, 0x5fff },
+  { 28079, 0x8784 }, { 28085, 0xdf16 }, { 28095, 0x395f }, { 28105, 0x07c0 },
+  { 28110, 0x7fc4 }, { 28120, 0xfe4d }, { 28131, 0x811b }, { 28137, 0x3fbf },
+  { 28150, 0x3600 }, { 28154, 0x0ebf }, { 28164, 0x1ed8 }, { 28172, 0xbf7f },
+  /* 0x21500 */
+  { 28186, 0x8f96 }, { 28195, 0xefa0 }, { 28204, 0xb1f7 }, { 28215, 0x7ee1 },
+  { 28225, 0x7c60 }, { 28232, 0xff6e }, { 28245, 0xdfdf }, { 28259, 0xffde },
+  { 28273, 0xad53 }, { 28282, 0xf7be }, { 28295, 0xfe3c }, { 28306, 0xe3dd },
+  { 28317, 0x114a }, { 28322, 0xf33c }, { 28332, 0xff6f }, { 28346, 0xff91 },
+  /* 0x21600 */
+  { 28357, 0xfa77 }, { 28369, 0xa7f5 }, { 28380, 0x0a7d }, { 28388, 0xbffd },
+  { 28402, 0xf792 }, { 28412, 0x35e1 }, { 28420, 0xff05 }, { 28430, 0xffc7 },
+  { 28443, 0x9fe3 }, { 28454, 0x59c3 }, { 28462, 0x8d39 }, { 28470, 0xff3f },
+  { 28484, 0x6ff8 }, { 28495, 0xffed }, { 28509, 0xfe27 }, { 28520, 0x7e9f },
+  /* 0x21700 */
+  { 28532, 0xffff }, { 28548, 0xbbfe }, { 28561, 0xffeb }, { 28575, 0xe17f },
+  { 28586, 0xb4ff }, { 28598, 0xff82 }, { 28608, 0x0fff }, { 28620, 0xffe4 },
+  { 28632, 0x5fff }, { 28646, 0xff1b }, { 28658, 0xffdf }, { 28673, 0xffc1 },
+  { 28684, 0x47ff }, { 28696, 0xfe72 }, { 28707, 0xffff }, { 28723, 0xe09f },
+  /* 0x21800 */
+  { 28732, 0x493f }, { 28741, 0xfebf }, { 28755, 0xf8f5 }, { 28766, 0x21ff },
+  { 28776, 0xbf2c }, { 28786, 0xbeff }, { 28800, 0xff21 }, { 28810, 0xf2ff },
+  { 28823, 0x2ffc }, { 28834, 0x3ffe }, { 28847, 0x7ff8 }, { 28859, 0xc1b6 },
+  { 28867, 0xfbef }, { 28881, 0xfc37 }, { 28892, 0xee12 }, { 28900, 0xf5bf },
+  /* 0x21900 */
+  { 28913, 0xb9c7 }, { 28923, 0x3fe4 }, { 28933, 0xdf7e }, { 28946, 0xd6d7 },
+  { 28957, 0xe7ef }, { 28970, 0x79ff }, { 28983, 0xff4e }, { 28995, 0x6ec7 },
+  { 29005, 0xdaf8 }, { 29015, 0xe5ae }, { 29025, 0xa23f }, { 29034, 0xf321 },
+  { 29042, 0xf9fc }, { 29054, 0xf7c2 }, { 29064, 0xfe0d }, { 29074, 0x0df3 },
+  /* 0x21a00 */
+  { 29083, 0xe7ff }, { 29097, 0xd01b }, { 29104, 0xfffd }, { 29119, 0xf853 },
+  { 29128, 0xc3ff }, { 29140, 0xca3f }, { 29150, 0xf7ff }, { 29165, 0xfc1f },
+  { 29176, 0xcf7f }, { 29189, 0x8dd9 }, { 29198, 0x7fbf }, { 29212, 0xf5d0 },
+  { 29221, 0x7fff }, { 29236, 0xfdfc }, { 29249, 0xf60d }, { 29258, 0xf88f },
+  /* 0x21b00 */
+  { 29268, 0xb4f9 }, { 29278, 0xaf5e }, { 29289, 0xd78d }, { 29299, 0xee1b },
+  { 29309, 0x7d66 }, { 29319, 0xe66f }, { 29330, 0x8f23 }, { 29338, 0xe238 },
+  { 29345, 0xc00f }, { 29351, 0xe221 }, { 29357, 0x00c2 }, { 29360, 0x8813 },
+  { 29365, 0xe67c }, { 29375, 0xfb55 }, { 29386, 0xf7ef }, { 29400, 0x1dfc },
+  /* 0x21c00 */
+  { 29410, 0x7e9c }, { 29420, 0x33f7 }, { 29431, 0xfe7d }, { 29444, 0xf5c1 },
+  { 29453, 0xf81f }, { 29463, 0x2fbf }, { 29475, 0x7dff }, { 29489, 0xfe97 },
+  { 29501, 0x5fff }, { 29515, 0xfffe }, { 29530, 0xf7cb }, { 29542, 0x4f7f },
+  { 29554, 0xa7f4 }, { 29564, 0xc1fb }, { 29574, 0x39c3 }, { 29582, 0xc196 },
+  /* 0x21d00 */
+  { 29589, 0xf977 }, { 29601, 0xfbee }, { 29614, 0xbbfa }, { 29626, 0x99ef },
+  { 29637, 0xcdc3 }, { 29646, 0x7ffa }, { 29659, 0x4fd8 }, { 29668, 0x560b },
+  { 29675, 0xfffc }, { 29689, 0xefff }, { 29704, 0xfe15 }, { 29714, 0xfb0b },
+  { 29724, 0x92ff }, { 29735, 0xffff }, { 29751, 0xe7ff }, { 29765, 0x81ff },
+  /* 0x21e00 */
+  { 29775, 0x5704 }, { 29781, 0xdfff }, { 29796, 0x17ff }, { 29808, 0xff60 },
+  { 29818, 0xac4f }, { 29827, 0x0014 }, { 29829, 0xffbc }, { 29842, 0x7fed },
+  { 29855, 0xfd40 }, { 29863, 0x2614 }, { 29868, 0xf812 }, { 29875, 0xfeff },
+  { 29890, 0x28ff }, { 29900, 0xffa2 }, { 29911, 0xf7ff }, { 29926, 0x43f7 },
+  /* 0x21f00 */
+  { 29936, 0x7c00 }, { 29941, 0x3fff }, { 29955, 0x87e0 }, { 29962, 0xf441 },
+  { 29969, 0x77ff }, { 29983, 0xfd39 }, { 29994, 0xf0fb }, { 30005, 0x2521 },
+  { 30010, 0x7fe5 }, { 30022, 0xff33 }, { 30034, 0xc2dc }, { 30042, 0x78c7 },
+  { 30051, 0x9fc2 }, { 30060, 0xb972 }, { 30069, 0xffaf }, { 30083, 0xeb8f },
+  /* 0x22000 */
+  { 30094, 0x47ff }, { 30106, 0xb31f }, { 30116, 0x821f }, { 30123, 0x8ad0 },
+  { 30129, 0x11ff }, { 30139, 0x9ffd }, { 30152, 0xf7fc }, { 30165, 0xfe3f },
+  { 30178, 0xadcf }, { 30189, 0xe5ff }, { 30202, 0xde6f }, { 30214, 0xfff6 },
+  { 30228, 0xf85f }, { 30239, 0xffff }, { 30255, 0xfd9b }, { 30267, 0x6fff },
+  /* 0x22100 */
+  { 30281, 0xfdf2 }, { 30293, 0xddf9 }, { 30305, 0x08ff }, { 30314, 0xf7ff },
+  { 30329, 0xee04 }, { 30336, 0xceff }, { 30349, 0xef4f }, { 30361, 0xfb67 },
+  { 30373, 0xefb8 }, { 30384, 0x9e0f }, { 30393, 0xd014 }, { 30398, 0xfbfe },
+  { 30412, 0xfcc3 }, { 30422, 0x7fd7 }, { 30435, 0xaff9 }, { 30447, 0xfffd },
+  /* 0x22200 */
+  { 30462, 0xffb7 }, { 30476, 0xfe87 }, { 30487, 0x313f }, { 30496, 0xfffc },
+  { 30510, 0xfd7f }, { 30524, 0xff61 }, { 30535, 0xffff }, { 30551, 0x9057 },
+  { 30558, 0x5eff }, { 30571, 0xfbfd }, { 30585, 0xf57f }, { 30598, 0x1fff },
+  { 30611, 0xf0fe }, { 30622, 0x35ff }, { 30634, 0xacfe }, { 30645, 0xf9e7 },
+  /* 0x22300 */
+  { 30657, 0xabdd }, { 30668, 0x7bfe }, { 30681, 0xbfed }, { 30694, 0xfd7a },
+  { 30706, 0xe47e }, { 30716, 0xfff5 }, { 30730, 0xd9dd }, { 30741, 0xcfcf },
+  { 30753, 0x74db }, { 30763, 0xb70f }, { 30773, 0x2ffd }, { 30785, 0xdfc7 },
+  { 30797, 0x03e3 }, { 30804, 0x07fc }, { 30813, 0xdfd0 }, { 30823, 0x7fff },
+  /* 0x22400 */
+  { 30838, 0xbdff }, { 30852, 0xe37c }, { 30862, 0xb3ff }, { 30875, 0xdfbd },
+  { 30888, 0x3fdf }, { 30901, 0x5fff }, { 30915, 0xaf5e }, { 30926, 0xe3ef },
+  { 30938, 0x979f }, { 30949, 0xfff3 }, { 30963, 0xfff7 }, { 30978, 0xebfd },
+  { 30991, 0x8ffd }, { 31003, 0xf1fd }, { 31015, 0xfe2d }, { 31026, 0x77ff },
+  /* 0x22500 */
+  { 31040, 0xffdf }, { 31055, 0xf503 }, { 31063, 0x2fff }, { 31076, 0xf9fb },
+  { 31089, 0xe189 }, { 31096, 0xffff }, { 31112, 0xfc9f }, { 31124, 0x5edb },
+  { 31135, 0xe71e }, { 31145, 0xff8f }, { 31158, 0x3efd }, { 31170, 0x2ffd },
+  { 31182, 0x7f8a }, { 31192, 0xf9bf }, { 31205, 0x5fff }, { 31219, 0x8e26 },
+  /* 0x22600 */
+  { 31226, 0xffff }, { 31242, 0x647f }, { 31252, 0x8dc9 }, { 31260, 0xfdff },
+  { 31275, 0x7fff }, { 31290, 0xffc0 }, { 31300, 0x414f }, { 31307, 0xffff },
+  { 31323, 0xffff }, { 31339, 0xfe83 }, { 31349, 0x807f }, { 31357, 0x0c01 },
+  { 31360, 0xfffe }, { 31375, 0xffff }, { 31391, 0x7fff }, { 31406, 0xff81 },
+  /* 0x22700 */
+  { 31416, 0xffff }, { 31432, 0x8ccf }, { 31441, 0xffb8 }, { 31453, 0xffff },
+  { 31469, 0xffff }, { 31485, 0xe0bf }, { 31495, 0x67ff }, { 31508, 0x2004 },
+  { 31510, 0xf682 }, { 31518, 0xf7ff }, { 31533, 0xffff }, { 31549, 0xffcf },
+  { 31563, 0x0c1f }, { 31570, 0x3000 }, { 31572, 0xdfdf }, { 31586, 0xffff },
+  /* 0x22800 */
+  { 31602, 0xfc01 }, { 31609, 0xd7ff }, { 31623, 0x5003 }, { 31627, 0xfffe },
+  { 31642, 0xcfff }, { 31656, 0x43ff }, { 31667, 0xfff6 }, { 31681, 0xe118 },
+  { 31687, 0xb000 }, { 31690, 0xfffe }, { 31705, 0x40ff }, { 31714, 0x00ff },
+  { 31722, 0xfe02 }, { 31730, 0xff7f }, { 31745, 0xff07 }, { 31756, 0xf8c5 },
+  /* 0x22900 */
+  { 31765, 0xdfff }, { 31780, 0x03ef }, { 31789, 0xfff0 }, { 31801, 0x7c7f },
+  { 31813, 0xfc1a }, { 31822, 0xfd9f }, { 31835, 0xfbf2 }, { 31847, 0xff07 },
+  { 31858, 0xcbe2 }, { 31867, 0xfe79 }, { 31879, 0xdfdf }, { 31893, 0x8fc0 },
+  { 31900, 0x7fcf }, { 31913, 0x997e }, { 31923, 0x1ff5 }, { 31934, 0xe7f8 },
+  /* 0x22a00 */
+  { 31945, 0x7ff0 }, { 31956, 0xce3f }, { 31967, 0xb67b }, { 31978, 0x7f94 },
+  { 31988, 0x69f2 }, { 31997, 0x236e }, { 32005, 0x7b65 }, { 32015, 0x007f },
+  { 32022, 0xfffc }, { 32036, 0xf0ff }, { 32048, 0x029f }, { 32055, 0xfdf0 },
+  { 32066, 0x7fc5 }, { 32077, 0x0010 }, { 32078, 0xfff4 }, { 32091, 0xffff },
+  /* 0x22b00 */
+  { 32107, 0xffc9 }, { 32119, 0x4fff }, { 32132, 0x9c04 }, { 32137, 0xffff },
+  { 32153, 0x7fff }, { 32168, 0xfffc }, { 32182, 0x055f }, { 32190, 0x0000 },
+  { 32190, 0xffde }, { 32204, 0xf7ff }, { 32219, 0xc19f }, { 32228, 0xffff },
+  { 32244, 0x115f }, { 32252, 0x0000 }, { 32252, 0xfe08 }, { 32260, 0xffff },
+  /* 0x22c00 */
+  { 32276, 0xffff }, { 32292, 0x1fff }, { 32305, 0xff00 }, { 32313, 0x7fff },
+  { 32328, 0x20ad }, { 32334, 0x8000 }, { 32335, 0xdfff }, { 32350, 0xdfdf },
+  { 32364, 0xffff }, { 32380, 0x0167 }, { 32386, 0x0002 }, { 32387, 0x7ff9 },
+  { 32400, 0xebff }, { 32414, 0x077f }, { 32424, 0xfffe }, { 32439, 0x5fff },
+  /* 0x22d00 */
+  { 32453, 0x0003 }, { 32455, 0x0000 }, { 32455, 0x7fff }, { 32470, 0xffff },
+  { 32486, 0xe51b }, { 32495, 0xffff }, { 32511, 0x0009 }, { 32513, 0x8000 },
+  { 32514, 0xffff }, { 32530, 0x3fff }, { 32544, 0xffc0 }, { 32554, 0x0023 },
+  { 32557, 0xfb80 }, { 32565, 0x3fff }, { 32579, 0x2ff0 }, { 32588, 0xffc0 },
+  /* 0x22e00 */
+  { 32598, 0xc3ff }, { 32610, 0x037f }, { 32619, 0xfff8 }, { 32632, 0xff9f },
+  { 32646, 0xa817 }, { 32653, 0x87fb }, { 32664, 0xf007 }, { 32671, 0x0ebf },
+  { 32681, 0x9ffc }, { 32693, 0xc763 }, { 32702, 0x77e7 }, { 32714, 0x47f7 },
+  { 32725, 0xe51e }, { 32734, 0x6cf3 }, { 32744, 0xf6e3 }, { 32755, 0x6ede },
+  /* 0x22f00 */
+  { 32766, 0xffe0 }, { 32777, 0xf133 }, { 32786, 0xf5af }, { 32798, 0xac40 },
+  { 32803, 0x8fff }, { 32816, 0xe9bf }, { 32828, 0xf7f3 }, { 32841, 0x84fd },
+  { 32850, 0xbbfd }, { 32863, 0xfe1d }, { 32874, 0xffb9 }, { 32887, 0x77fa },
+  { 32899, 0x6fc0 }, { 32907, 0xcbff }, { 32920, 0x7f3b }, { 32932, 0xe3fc },
+  /* 0x23000 */
+  { 32943, 0xde47 }, { 32953, 0x6577 }, { 32963, 0xfdff }, { 32978, 0x34fa },
+  { 32987, 0xddce }, { 32998, 0xf7a7 }, { 33010, 0x5abf }, { 33021, 0xbdfa },
+  { 33033, 0x9677 }, { 33043, 0xca3a }, { 33051, 0xedff }, { 33065, 0xbf66 },
+  { 33076, 0xbd4f }, { 33087, 0xfb5b }, { 33099, 0xffc6 }, { 33111, 0xfba8 },
+  /* 0x23100 */
+  { 33121, 0xdf17 }, { 33132, 0xe793 }, { 33142, 0x4dd7 }, { 33152, 0xdbf7 },
+  { 33165, 0x5fd7 }, { 33177, 0xfc4f }, { 33188, 0xffff }, { 33204, 0x7f9e },
+  { 33216, 0x0e7a }, { 33224, 0x7ffc }, { 33237, 0x0bc9 }, { 33244, 0xfffc },
+  { 33258, 0xf841 }, { 33265, 0x043f }, { 33272, 0xdffc }, { 33285, 0xfc4f },
+  /* 0x23200 */
+  { 33296, 0xa19f }, { 33305, 0x8000 }, { 33306, 0x47f3 }, { 33316, 0x7fe0 },
+  { 33326, 0x051f }, { 33333, 0x1ffe }, { 33345, 0x3ff8 }, { 33356, 0xfc01 },
+  { 33363, 0x805e }, { 33369, 0xee73 }, { 33380, 0xc1fb }, { 33390, 0x255f },
+  { 33399, 0xbf30 }, { 33408, 0xc1f9 }, { 33417, 0xfc28 }, { 33425, 0x85fc },
+  /* 0x23300 */
+  { 33434, 0xe1b8 }, { 33442, 0x93c8 }, { 33449, 0xbffc }, { 33462, 0x798f },
+  { 33472, 0x91d8 }, { 33479, 0xfb5e }, { 33491, 0x58ff }, { 33502, 0x17f8 },
+  { 33511, 0x3e36 }, { 33520, 0x9f9d }, { 33531, 0x723b }, { 33540, 0xbf7e },
+  { 33553, 0x0fef }, { 33564, 0xfff7 }, { 33579, 0xffa3 }, { 33591, 0x6b4f },
+  /* 0x23400 */
+  { 33601, 0xff8b }, { 33613, 0xff8f }, { 33626, 0x07ff }, { 33637, 0xffe1 },
+  { 33649, 0x801f }, { 33655, 0xfffe }, { 33670, 0xed3f }, { 33682, 0xe306 },
+  { 33689, 0x83ff }, { 33700, 0xffff }, { 33716, 0xbfff }, { 33731, 0x9fc0 },
+  { 33739, 0xffff }, { 33755, 0xffff }, { 33771, 0xff83 }, { 33782, 0xffff },
+  /* 0x23500 */
+  { 33798, 0xffff }, { 33814, 0x007e }, { 33820, 0xf800 }, { 33825, 0xfffe },
+  { 33840, 0x7fff }, { 33855, 0xfa0f }, { 33865, 0xffff }, { 33881, 0x9fff },
+  { 33895, 0x048f }, { 33901, 0x0029 }, { 33904, 0xff78 }, { 33916, 0xfff7 },
+  { 33931, 0x000e }, { 33934, 0xfff1 }, { 33947, 0xffff }, { 33963, 0x0db9 },
+  /* 0x23600 */
+  { 33971, 0xe8a1 }, { 33978, 0xfff7 }, { 33993, 0xffff }, { 34009, 0x880f },
+  { 34015, 0xfffe }, { 34030, 0x0a7f }, { 34039, 0x0010 }, { 34040, 0xf87f },
+  { 34052, 0xffff }, { 34068, 0xfff7 }, { 34083, 0x877f }, { 34094, 0xffff },
+  { 34110, 0xffff }, { 34126, 0x8543 }, { 34132, 0x5800 }, { 34135, 0xbfff },
+  /* 0x23700 */
+  { 34150, 0xe1ff }, { 34162, 0xffff }, { 34178, 0x91f8 }, { 34186, 0x9600 },
+  { 34190, 0xfffe }, { 34205, 0x7fff }, { 34220, 0xffa0 }, { 34230, 0x5aff },
+  { 34242, 0x1ac2 }, { 34248, 0xffff }, { 34264, 0xfff8 }, { 34277, 0x98e5 },
+  { 34285, 0xfff4 }, { 34298, 0xff07 }, { 34309, 0x910f }, { 34316, 0x7f7d },
+  /* 0x23800 */
+  { 34329, 0xdffe }, { 34343, 0xfe11 }, { 34352, 0x7fe3 }, { 34364, 0xffa0 },
+  { 34374, 0xf679 }, { 34385, 0x591f }, { 34394, 0x6fad }, { 34405, 0x1dde },
+  { 34415, 0xfeff }, { 34430, 0xff9f }, { 34444, 0xf7cf }, { 34457, 0xac3f },
+  { 34467, 0xff7f }, { 34482, 0xe3ef }, { 34494, 0x9bff }, { 34507, 0xffff },
+  /* 0x23900 */
+  { 34523, 0xffbf }, { 34538, 0x77b7 }, { 34550, 0x723f }, { 34560, 0xdef6 },
+  { 34572, 0xffbf }, { 34587, 0x3bff }, { 34600, 0x2fed }, { 34611, 0xff3c },
+  { 34623, 0x0fbe }, { 34633, 0xf7f0 }, { 34644, 0x81f6 }, { 34652, 0xbfe6 },
+  { 34664, 0xfeff }, { 34679, 0xe07f }, { 34689, 0xffff }, { 34705, 0xfbff },
+  /* 0x23a00 */
+  { 34720, 0xffeb }, { 34734, 0xffc7 }, { 34747, 0x837f }, { 34757, 0x2bfe },
+  { 34768, 0xfbf8 }, { 34780, 0xe3ff }, { 34793, 0xbf3f }, { 34806, 0xdcdf },
+  { 34818, 0xf96d }, { 34829, 0x9aff }, { 34841, 0xf6fb }, { 34854, 0xfbef },
+  { 34868, 0x30e3 }, { 34875, 0xc74f }, { 34885, 0xbbfe }, { 34898, 0xf711 },
+  /* 0x23b00 */
+  { 34907, 0xff7f }, { 34922, 0xdcff }, { 34935, 0xfffe }, { 34950, 0xff2f },
+  { 34963, 0xfeb7 }, { 34976, 0xf43f }, { 34987, 0x7fef }, { 35001, 0xfffe },
+  { 35016, 0xff07 }, { 35027, 0xffbf }, { 35042, 0xff98 }, { 35053, 0x3e1f },
+  { 35063, 0xffe4 }, { 35075, 0xbbee }, { 35087, 0xfff4 }, { 35100, 0xff87 },
+  /* 0x23c00 */
+  { 35112, 0x7e47 }, { 35122, 0xdc5f }, { 35133, 0x7d1f }, { 35144, 0xdbc6 },
+  { 35154, 0xdfb1 }, { 35165, 0xdf7f }, { 35179, 0xcc7b }, { 35189, 0x03f4 },
+  { 35196, 0xcbdf }, { 35208, 0xe03f }, { 35217, 0xffa3 }, { 35229, 0xfffd },
+  { 35244, 0xfc37 }, { 35255, 0x2fff }, { 35268, 0xfff8 }, { 35281, 0x00ff },
+  /* 0x23d00 */
+  { 35289, 0xfffe }, { 35304, 0xe077 }, { 35313, 0xffff }, { 35329, 0x5fff },
+  { 35343, 0xfffc }, { 35357, 0x7fff }, { 35372, 0x1354 }, { 35378, 0xff8a },
+  { 35389, 0xffff }, { 35405, 0xff7f }, { 35420, 0x007e }, { 35426, 0xc020 },
+  { 35429, 0xffff }, { 35445, 0xafff }, { 35459, 0x02d6 }, { 35465, 0xf860 },
+  /* 0x23e00 */
+  { 35472, 0xffff }, { 35488, 0xffff }, { 35504, 0x0003 }, { 35506, 0xfffc },
+  { 35520, 0x76df }, { 35532, 0xec00 }, { 35537, 0xffff }, { 35553, 0xfffe },
+  { 35568, 0xf003 }, { 35574, 0xffff }, { 35590, 0x97ff }, { 35603, 0x8057 },
+  { 35609, 0xb400 }, { 35613, 0xffff }, { 35629, 0xffff }, { 35645, 0x8007 },
+  /* 0x23f00 */
+  { 35649, 0xffff }, { 35665, 0xafff }, { 35679, 0x000f }, { 35683, 0x8820 },
+  { 35686, 0xdff8 }, { 35698, 0xffff }, { 35714, 0xffff }, { 35730, 0x2079 },
+  { 35736, 0xfff0 }, { 35748, 0xffff }, { 35764, 0x7f0f }, { 35775, 0x0081 },
+  { 35777, 0xffe2 }, { 35789, 0xffff }, { 35805, 0x001f }, { 35810, 0xfffe },
+  /* 0x24000 */
+  { 35825, 0x49f3 }, { 35834, 0x8002 }, { 35836, 0xffff }, { 35852, 0xc2ff },
+  { 35863, 0x37ff }, { 35876, 0xf481 }, { 35883, 0xfffe }, { 35898, 0xffff },
+  { 35914, 0xc4ff }, { 35925, 0xffff }, { 35941, 0x806e }, { 35947, 0xefff },
+  { 35962, 0xfc17 }, { 35972, 0x07bf }, { 35982, 0xbe08 }, { 35989, 0x7bf7 },
+  /* 0x24100 */
+  { 36002, 0xc2e0 }, { 36008, 0xfffb }, { 36023, 0x1f5f }, { 36034, 0x2ff8 },
+  { 36044, 0x7cee }, { 36055, 0x2f06 }, { 36062, 0x6f5f }, { 36074, 0xfb9f },
+  { 36087, 0xef7d }, { 36100, 0xe5f7 }, { 36112, 0xbfc0 }, { 36121, 0xf017 },
+  { 36129, 0xff83 }, { 36140, 0xafff }, { 36154, 0x8807 }, { 36159, 0xe0ff },
+  /* 0x24200 */
+  { 36170, 0xffff }, { 36186, 0x0967 }, { 36193, 0xffec }, { 36206, 0xfe07 },
+  { 36216, 0x07ff }, { 36227, 0xa202 }, { 36231, 0xfefe }, { 36245, 0xfe00 },
+  { 36252, 0xffff }, { 36268, 0x1bff }, { 36280, 0x8020 }, { 36282, 0xfff4 },
+  { 36295, 0xf8df }, { 36307, 0xffff }, { 36323, 0x97ff }, { 36336, 0x040b },
+  /* 0x24300 */
+  { 36340, 0xff8a }, { 36351, 0xf87f }, { 36363, 0xffff }, { 36379, 0x3f7f },
+  { 36392, 0xe100 }, { 36396, 0x3ff9 }, { 36408, 0xffc4 }, { 36419, 0xdfff },
+  { 36434, 0x1034 }, { 36438, 0xe5c0 }, { 36445, 0xffff }, { 36461, 0xc1bf },
+  { 36471, 0xffff }, { 36487, 0xefbf }, { 36501, 0xe201 }, { 36506, 0xfff1 },
+  /* 0x24400 */
+  { 36519, 0xfff1 }, { 36532, 0xc0a7 }, { 36539, 0xbfc4 }, { 36549, 0xff8f },
+  { 36562, 0xcc6f }, { 36572, 0xf0dd }, { 36582, 0x0185 }, { 36586, 0xf7ff },
+  { 36601, 0xff47 }, { 36613, 0x5089 }, { 36618, 0x58de }, { 36627, 0x7de8 },
+  { 36637, 0x873f }, { 36647, 0xf6f5 }, { 36659, 0xfde3 }, { 36671, 0x79de },
+  /* 0x24500 */
+  { 36682, 0xd4ff }, { 36694, 0x11bf }, { 36703, 0x57fd }, { 36715, 0x033f },
+  { 36723, 0xeb2d }, { 36733, 0xffeb }, { 36747, 0xefff }, { 36762, 0x7eff },
+  { 36776, 0xffee }, { 36790, 0x7ffb }, { 36804, 0xfffd }, { 36819, 0x7c9f },
+  { 36830, 0xffb7 }, { 36844, 0x1f82 }, { 36851, 0xffef }, { 36866, 0xbdfa },
+  /* 0x24600 */
+  { 36878, 0xf339 }, { 36888, 0xfff3 }, { 36902, 0xf8ff }, { 36915, 0xff1d },
+  { 36927, 0xb61d }, { 36936, 0xf9bf }, { 36949, 0x2dd7 }, { 36959, 0x0fbf },
+  { 36970, 0xff1c }, { 36981, 0x437f }, { 36991, 0xff01 }, { 37000, 0xff7f },
+  { 37015, 0xff04 }, { 37024, 0x8823 }, { 37029, 0x8afe }, { 37039, 0xee5f },
+  /* 0x24700 */
+  { 37051, 0xbbbd }, { 37063, 0x3ed7 }, { 37074, 0x895e }, { 37082, 0xffff },
+  { 37098, 0xb04f }, { 37106, 0xdfff }, { 37121, 0xd17b }, { 37131, 0xffff },
+  { 37147, 0x8177 }, { 37155, 0xfe80 }, { 37163, 0xb02f }, { 37171, 0xc305 },
+  { 37177, 0xfffb }, { 37192, 0xf6b7 }, { 37204, 0x3fff }, { 37218, 0x2d7c },
+  /* 0x24800 */
+  { 37227, 0xe480 }, { 37232, 0xf7ff }, { 37247, 0x1bf3 }, { 37257, 0xfe20 },
+  { 37265, 0x60ff }, { 37275, 0xf383 }, { 37284, 0x7fff }, { 37299, 0xbe7f },
+  { 37312, 0xfe28 }, { 37321, 0x77ff }, { 37335, 0x87cf }, { 37345, 0x0fff },
+  { 37357, 0x6f2b }, { 37367, 0xbb8f }, { 37378, 0xcfdd }, { 37390, 0x1fb5 },
+  /* 0x24900 */
+  { 37400, 0xf97c }, { 37411, 0xfd0f }, { 37422, 0x9d3f }, { 37433, 0x1fe6 },
+  { 37443, 0xfff8 }, { 37456, 0x1ff0 }, { 37465, 0x3ff0 }, { 37475, 0xfbf2 },
+  { 37487, 0x002b }, { 37491, 0xffff }, { 37507, 0xf977 }, { 37519, 0xf01f },
+  { 37528, 0xffff }, { 37544, 0xc2df }, { 37554, 0xfcfd }, { 37567, 0xfc05 },
+  /* 0x24a00 */
+  { 37575, 0xbfff }, { 37590, 0x3ff9 }, { 37602, 0xf800 }, { 37607, 0x7f3f },
+  { 37620, 0x0bff }, { 37631, 0xfffc }, { 37645, 0xfff8 }, { 37658, 0xf837 },
+  { 37668, 0xf8ff }, { 37681, 0xff81 }, { 37691, 0x7f7d }, { 37704, 0xf7f0 },
+  { 37715, 0x377f }, { 37727, 0x9df1 }, { 37737, 0xff78 }, { 37749, 0x7dff },
+  /* 0x24b00 */
+  { 37763, 0xfb9e }, { 37775, 0x3fc7 }, { 37786, 0xf75f }, { 37799, 0xdef1 },
+  { 37810, 0xf07f }, { 37821, 0xf9bf }, { 37834, 0x17ef }, { 37845, 0xfe19 },
+  { 37855, 0xefe1 }, { 37866, 0x3f59 }, { 37876, 0xefc6 }, { 37887, 0x3f2f },
+  { 37898, 0x7b8b }, { 37908, 0xeff9 }, { 37921, 0xdcdf }, { 37933, 0x729c },
+  /* 0x24c00 */
+  { 37941, 0x65f9 }, { 37951, 0xeaa3 }, { 37960, 0xff3f }, { 37974, 0xff7f },
+  { 37989, 0xf801 }, { 37995, 0xc7e5 }, { 38005, 0xfff8 }, { 38018, 0x704b },
+  { 38025, 0xe9f8 }, { 38035, 0x3fff }, { 38049, 0xf88b }, { 38058, 0xefe7 },
+  { 38071, 0xbf21 }, { 38080, 0x8dfc }, { 38090, 0xfe13 }, { 38100, 0xde4c },
+  /* 0x24d00 */
+  { 38109, 0x59bf }, { 38120, 0xf3ef }, { 38133, 0xcff3 }, { 38145, 0xff9f },
+  { 38159, 0x398f }, { 38168, 0xff92 }, { 38179, 0x2fff }, { 38192, 0xff80 },
+  { 38201, 0x1e7f }, { 38212, 0xfff8 }, { 38225, 0x3f3f }, { 38237, 0x00c0 },
+  { 38239, 0xffff }, { 38255, 0x7ffb }, { 38269, 0x0021 }, { 38271, 0xfb80 },
+  /* 0x24e00 */
+  { 38279, 0xffff }, { 38295, 0xe3fe }, { 38307, 0xfe15 }, { 38317, 0xffff },
+  { 38333, 0xa27c }, { 38341, 0xf800 }, { 38346, 0x9fff }, { 38360, 0x0a5b },
+  { 38367, 0xfff3 }, { 38381, 0x3fff }, { 38395, 0x03c2 }, { 38400, 0xff80 },
+  { 38409, 0x23ff }, { 38420, 0x7fe0 }, { 38430, 0xc12e }, { 38437, 0x07fe },
+  /* 0x24f00 */
+  { 38447, 0x38ff }, { 38458, 0xb7c7 }, { 38469, 0xbfbf }, { 38483, 0x7687 },
+  { 38492, 0x77ce }, { 38503, 0xef57 }, { 38515, 0x97f3 }, { 38526, 0xbe81 },
+  { 38534, 0xff08 }, { 38543, 0x7b20 }, { 38550, 0x3dff }, { 38563, 0x795c },
+  { 38572, 0xcfe9 }, { 38583, 0xbfe7 }, { 38596, 0x5fa7 }, { 38607, 0x86fc },
+  /* 0x25000 */
+  { 38616, 0xefde }, { 38629, 0xdff3 }, { 38642, 0xb97e }, { 38653, 0xb677 },
+  { 38664, 0xdbff }, { 38678, 0xdf7f }, { 38692, 0xfffb }, { 38707, 0x9fdb },
+  { 38719, 0xf5f9 }, { 38731, 0xdffb }, { 38745, 0x73f3 }, { 38756, 0xd7ee },
+  { 38768, 0x6fbf }, { 38781, 0x13fc }, { 38790, 0x1ff2 }, { 38800, 0x3ffc },
+  /* 0x25100 */
+  { 38812, 0xfffd }, { 38827, 0x7bff }, { 38841, 0x02b8 }, { 38846, 0xfffe },
+  { 38861, 0x7e13 }, { 38870, 0xff88 }, { 38880, 0x7fef }, { 38894, 0x324f },
+  { 38902, 0xfbe0 }, { 38912, 0xffff }, { 38928, 0x1c7f }, { 38938, 0x0069 },
+  { 38942, 0xfef8 }, { 38954, 0xff7f }, { 38969, 0x4f13 }, { 38977, 0xc030 },
+  /* 0x25200 */
+  { 38981, 0xffed }, { 38995, 0x1fff }, { 39008, 0x07fc }, { 39017, 0xf980 },
+  { 39024, 0xffff }, { 39040, 0xffff }, { 39056, 0x007c }, { 39061, 0xfff1 },
+  { 39074, 0x47f7 }, { 39085, 0x0021 }, { 39087, 0xfd80 }, { 39095, 0xffff },
+  { 39111, 0x271f }, { 39120, 0xfe01 }, { 39128, 0xbf3f }, { 39141, 0x8801 },
+  /* 0x25300 */
+  { 39144, 0xffff }, { 39160, 0xfcf1 }, { 39171, 0xe70e }, { 39180, 0xfc67 },
+  { 39191, 0x9e5f }, { 39202, 0xc6b8 }, { 39210, 0xffbf }, { 39225, 0xffef },
+  { 39240, 0xfefd }, { 39254, 0x17fd }, { 39265, 0x1ff2 }, { 39275, 0xff7f },
+  { 39290, 0xc207 }, { 39296, 0xf792 }, { 39306, 0x9c07 }, { 39313, 0x78ff },
+  /* 0x25400 */
+  { 39325, 0x001b }, { 39329, 0x7fea }, { 39341, 0x1e3f }, { 39351, 0x35fe },
+  { 39362, 0xfff3 }, { 39376, 0x7f9f }, { 39389, 0xd20c }, { 39395, 0xff7d },
+  { 39409, 0xbfd7 }, { 39422, 0x5054 }, { 39427, 0xff90 }, { 39437, 0x3e7f },
+  { 39449, 0xfcc3 }, { 39459, 0xfcff }, { 39473, 0x20ff }, { 39482, 0xfc02 },
+  /* 0x25500 */
+  { 39489, 0x07ff }, { 39500, 0xfffd }, { 39515, 0xff0d }, { 39526, 0x07ff },
+  { 39537, 0xfbe8 }, { 39548, 0xc5fb }, { 39559, 0x3fe3 }, { 39570, 0xffff },
+  { 39586, 0x9ffc }, { 39598, 0xff80 }, { 39607, 0xdc7f }, { 39619, 0xfa9b },
+  { 39630, 0x027f }, { 39638, 0xeb4c }, { 39647, 0xfc0e }, { 39656, 0xcd96 },
+  /* 0x25600 */
+  { 39665, 0x637a }, { 39674, 0x7e60 }, { 39682, 0x7850 }, { 39688, 0xff03 },
+  { 39698, 0xfe14 }, { 39707, 0x3ff0 }, { 39717, 0xf910 }, { 39724, 0x1f87 },
+  { 39733, 0xff08 }, { 39742, 0x17ff }, { 39754, 0x0fc0 }, { 39760, 0x03ff },
+  { 39770, 0xfdef }, { 39784, 0xff10 }, { 39793, 0xc01f }, { 39800, 0xbfbf },
+  /* 0x25700 */
+  { 39814, 0x9fbe }, { 39826, 0xccbe }, { 39836, 0x9ee9 }, { 39846, 0xff9f },
+  { 39860, 0xbdba }, { 39871, 0x7d7d }, { 39883, 0xfffc }, { 39897, 0xde78 },
+  { 39907, 0x037f }, { 39916, 0xff84 }, { 39926, 0x8207 }, { 39931, 0xfffe },
+  { 39946, 0xe0a0 }, { 39951, 0x5fff }, { 39965, 0x03fc }, { 39973, 0xed80 },
+  /* 0x25800 */
+  { 39980, 0xffff }, { 39996, 0x01ff }, { 40005, 0x0006 }, { 40007, 0xf6fe },
+  { 40020, 0x1feb }, { 40031, 0xbc10 }, { 40037, 0xffff }, { 40053, 0x0279 },
+  { 40059, 0xfd83 }, { 40069, 0x7f7e }, { 40082, 0x6080 }, { 40085, 0xbff3 },
+  { 40098, 0x003f }, { 40104, 0xd7c8 }, { 40113, 0xffe1 }, { 40125, 0x40bf },
+  /* 0x25900 */
+  { 40133, 0x5cef }, { 40144, 0xd7fe }, { 40157, 0x6f9c }, { 40167, 0xfff3 },
+  { 40181, 0xff8e }, { 40193, 0x4f9f }, { 40204, 0x7fff }, { 40219, 0xffc0 },
+  { 40229, 0xfdff }, { 40244, 0xf80b }, { 40252, 0xe7f7 }, { 40265, 0xff67 },
+  { 40278, 0x84e0 }, { 40283, 0xfffd }, { 40298, 0xf025 }, { 40305, 0xbfff },
+  /* 0x25a00 */
+  { 40320, 0xe40f }, { 40328, 0x05ff }, { 40338, 0x7c0e }, { 40346, 0xb9ff },
+  { 40359, 0xdd0f }, { 40369, 0x1bfd }, { 40380, 0x7fff }, { 40395, 0xdb7e },
+  { 40407, 0xffdf }, { 40422, 0x8f3f }, { 40433, 0xf7f3 }, { 40446, 0xf86f },
+  { 40457, 0xe708 }, { 40464, 0xff47 }, { 40476, 0xe1e7 }, { 40486, 0xfffb },
+  /* 0x25b00 */
+  { 40501, 0xf0bf }, { 40512, 0xeeff }, { 40526, 0xfc7e }, { 40538, 0xfbff },
+  { 40553, 0x0fff }, { 40565, 0xffff }, { 40581, 0xfdff }, { 40596, 0xff83 },
+  { 40607, 0xf03f }, { 40617, 0x7fff }, { 40632, 0xeffd }, { 40646, 0xffe0 },
+  { 40657, 0x0047 }, { 40661, 0xffff }, { 40677, 0xffff }, { 40693, 0xf7ff },
+  /* 0x25c00 */
+  { 40708, 0xfa64 }, { 40717, 0xffff }, { 40733, 0xffff }, { 40749, 0xffff },
+  { 40765, 0xf0f7 }, { 40776, 0xffff }, { 40792, 0x025f }, { 40799, 0xffe8 },
+  { 40811, 0xfff3 }, { 40825, 0xffe7 }, { 40839, 0xdfff }, { 40854, 0x3fff },
+  { 40868, 0xffc1 }, { 40879, 0xffff }, { 40895, 0xffff }, { 40911, 0x87ff },
+  /* 0x25d00 */
+  { 40923, 0xffff }, { 40939, 0xe018 }, { 40944, 0xffff }, { 40960, 0xeff7 },
+  { 40974, 0x7ff0 }, { 40985, 0xf009 }, { 40991, 0xffff }, { 41007, 0x2f7f },
+  { 41019, 0xfdc0 }, { 41028, 0xffff }, { 41044, 0x0ff8 }, { 41053, 0xfff0 },
+  { 41065, 0xf3ff }, { 41079, 0xfff3 }, { 41093, 0xff1f }, { 41106, 0xf1f7 },
+  /* 0x25e00 */
+  { 41118, 0xcfa9 }, { 41128, 0x13d3 }, { 41136, 0xbbee }, { 41148, 0x7ffb },
+  { 41162, 0xffee }, { 41176, 0xf467 }, { 41186, 0x29d7 }, { 41195, 0xfffc },
+  { 41209, 0x0bf0 }, { 41216, 0xff80 }, { 41225, 0xff9f }, { 41239, 0x115f },
+  { 41247, 0xfffe }, { 41262, 0x1e7f }, { 41273, 0xfff0 }, { 41285, 0x800f },
+  /* 0x25f00 */
+  { 41290, 0xf3ff }, { 41304, 0xff0f }, { 41316, 0x01f7 }, { 41324, 0xffe0 },
+  { 41335, 0x8eef }, { 41346, 0x6fe3 }, { 41357, 0xf0e8 }, { 41365, 0xffdf },
+  { 41380, 0xf7f7 }, { 41394, 0x7e5f }, { 41406, 0xffff }, { 41422, 0x0dfd },
+  { 41432, 0xfff8 }, { 41445, 0x93ef }, { 41456, 0xffc2 }, { 41467, 0xf7ff },
+  /* 0x26000 */
+  { 41482, 0x02ff }, { 41491, 0xfffc }, { 41505, 0xf0ff }, { 41517, 0x00ff },
+  { 41525, 0xff58 }, { 41536, 0x7fff }, { 41551, 0xfff2 }, { 41564, 0x0013 },
+  { 41567, 0xfbff }, { 41582, 0xffbf }, { 41597, 0xffc7 }, { 41610, 0x00b3 },
+  { 41615, 0xfffa }, { 41629, 0xfbff }, { 41644, 0x01fd }, { 41652, 0x07ff },
+  /* 0x26100 */
+  { 41663, 0xfe00 }, { 41670, 0x1fff }, { 41683, 0x7ffc }, { 41696, 0xf006 },
+  { 41702, 0xffff }, { 41718, 0xe03f }, { 41727, 0x15bf }, { 41737, 0xffe8 },
+  { 41749, 0xff7f }, { 41764, 0xf8ff }, { 41777, 0x9eff }, { 41790, 0xf87f },
+  { 41802, 0xdf3f }, { 41815, 0xdffa }, { 41828, 0x1faf }, { 41839, 0xffdf },
+  /* 0x26200 */
+  { 41854, 0x00eb }, { 41860, 0x0000 }, { 41860, 0xfbec }, { 41872, 0xdf7f },
+  { 41886, 0xdbb7 }, { 41898, 0xeeef }, { 41911, 0xfefd }, { 41925, 0xdbbc },
+  { 41936, 0xeb8f }, { 41947, 0xf3ff }, { 41961, 0xef9f }, { 41974, 0xf078 },
+  { 41982, 0x3ff4 }, { 41993, 0xffc7 }, { 42006, 0xf99f }, { 42018, 0xfbbf },
+  /* 0x26300 */
+  { 42032, 0xe66f }, { 42043, 0xfaff }, { 42057, 0x7f1f }, { 42069, 0xddfe },
+  { 42082, 0xfdcf }, { 42095, 0xfdf7 }, { 42109, 0xf7e6 }, { 42121, 0xfe05 },
+  { 42130, 0x2fe9 }, { 42140, 0x27f0 }, { 42148, 0x8afc }, { 42157, 0x9f9b },
+  { 42168, 0xffea }, { 42181, 0xf7e3 }, { 42193, 0xaf8f }, { 42204, 0x7ff5 },
+  /* 0x26400 */
+  { 42217, 0x7ffd }, { 42231, 0x5ffb }, { 42244, 0xf7fc }, { 42257, 0x7fef },
+  { 42271, 0xffd1 }, { 42283, 0xff3f }, { 42297, 0x1fff }, { 42310, 0xff7f },
+  { 42325, 0xfdf8 }, { 42337, 0xbe7f }, { 42350, 0xf77d }, { 42363, 0x7dce },
+  { 42374, 0xd01b }, { 42381, 0x67df }, { 42393, 0xff71 }, { 42405, 0x7fb3 },
+  /* 0x26500 */
+  { 42417, 0xfa7f }, { 42430, 0xfdbf }, { 42444, 0xbf7f }, { 42458, 0xf3af },
+  { 42470, 0xfdbf }, { 42484, 0x7dff }, { 42498, 0xffe7 }, { 42512, 0xffe6 },
+  { 42525, 0x7f3d }, { 42537, 0x1fff }, { 42550, 0x9ffc }, { 42562, 0xf27f },
+  { 42574, 0x27ff }, { 42586, 0x87ff }, { 42598, 0x9fff }, { 42612, 0x43fe },
+  /* 0x26600 */
+  { 42622, 0xefff }, { 42637, 0xe93f }, { 42648, 0xff0d }, { 42659, 0xedfc },
+  { 42671, 0x2fff }, { 42684, 0x99ff }, { 42696, 0xff87 }, { 42708, 0x9fff },
+  { 42722, 0x73ff }, { 42735, 0xff1e }, { 42747, 0x7fff }, { 42762, 0x2ffc },
+  { 42773, 0xc03e }, { 42780, 0xfffd }, { 42795, 0x7efb }, { 42808, 0x02d8 },
+  /* 0x26700 */
+  { 42813, 0xfddc }, { 42825, 0x9fff }, { 42839, 0x17ff }, { 42851, 0xee68 },
+  { 42860, 0x8002 }, { 42862, 0xffff }, { 42878, 0xffff }, { 42894, 0xfdff },
+  { 42909, 0x0ab3 }, { 42916, 0xfee0 }, { 42926, 0xbfff }, { 42941, 0x3fe7 },
+  { 42953, 0x0003 }, { 42955, 0xbb30 }, { 42963, 0xbeff }, { 42977, 0x0019 },
+  /* 0x26800 */
+  { 42980, 0xffff }, { 42996, 0xd6ff }, { 43009, 0x1b31 }, { 43016, 0xdf80 },
+  { 43024, 0xf1ef }, { 43036, 0x19bf }, { 43046, 0x3f00 }, { 43052, 0xfff7 },
+  { 43067, 0xf52f }, { 43078, 0x3ff3 }, { 43090, 0xbff0 }, { 43101, 0xbf00 },
+  { 43108, 0xbfe3 }, { 43120, 0xfc4f }, { 43131, 0x7a13 }, { 43139, 0xfffe },
+  /* 0x26900 */
+  { 43154, 0xf47d }, { 43165, 0xef75 }, { 43177, 0x1ffe }, { 43189, 0x9efc },
+  { 43200, 0xdff6 }, { 43213, 0xebbf }, { 43226, 0x6be7 }, { 43237, 0xfffc },
+  { 43251, 0xd7ff }, { 43265, 0xffeb }, { 43279, 0xfebf }, { 43293, 0xff7f },
+  { 43308, 0xd7f7 }, { 43321, 0xa4fb }, { 43331, 0x6dff }, { 43344, 0xdb7b },
+  /* 0x26a00 */
+  { 43356, 0xfffb }, { 43371, 0xb7fd }, { 43384, 0xf5df }, { 43397, 0xf4f7 },
+  { 43409, 0xff98 }, { 43420, 0xf318 }, { 43428, 0x1fff }, { 43441, 0x7ff6 },
+  { 43454, 0x6ff0 }, { 43464, 0x3ffe }, { 43477, 0xfeb0 }, { 43487, 0xe1c7 },
+  { 43496, 0xddff }, { 43510, 0x7eb7 }, { 43522, 0xbffd }, { 43536, 0xffdf },
+  /* 0x26b00 */
+  { 43551, 0xfbff }, { 43566, 0xfff9 }, { 43580, 0xfeff }, { 43595, 0xffbf },
+  { 43610, 0x0bff }, { 43621, 0x3ff0 }, { 43631, 0xfb04 }, { 43639, 0xffff },
+  { 43655, 0xffff }, { 43671, 0xff0f }, { 43683, 0xffff }, { 43699, 0xffa8 },
+  { 43710, 0xffff }, { 43726, 0xff7e }, { 43740, 0xff7f }, { 43755, 0xff1f },
+  /* 0x26c00 */
+  { 43768, 0xffff }, { 43784, 0x6bff }, { 43797, 0xfc82 }, { 43805, 0xffff },
+  { 43821, 0xffbf }, { 43836, 0xdfff }, { 43851, 0xffff }, { 43867, 0x1ffd },
+  { 43879, 0xfff8 }, { 43892, 0xffff }, { 43908, 0x97ff }, { 43921, 0x20c1 },
+  { 43925, 0xffff }, { 43941, 0xffff }, { 43957, 0x7fff }, { 43972, 0xffff },
+  /* 0x26d00 */
+  { 43988, 0xffa7 }, { 44001, 0xffff }, { 44017, 0xf801 }, { 44023, 0xffff },
+  { 44039, 0x7fff }, { 44054, 0xe007 }, { 44060, 0xfffe }, { 44075, 0xffff },
+  { 44091, 0xfff7 }, { 44106, 0x0fff }, { 44118, 0xff00 }, { 44126, 0xffff },
+  { 44142, 0xffff }, { 44158, 0xefbf }, { 44172, 0x040b }, { 44176, 0xbfff },
+  /* 0x26e00 */
+  { 44191, 0xffdf }, { 44206, 0xffff }, { 44222, 0xffdf }, { 44237, 0x07ff },
+  { 44248, 0xffc0 }, { 44258, 0xffff }, { 44274, 0x451e }, { 44281, 0xe084 },
+  { 44286, 0xffd7 }, { 44300, 0xffff }, { 44316, 0xffff }, { 44332, 0xffff },
+  { 44348, 0x3fff }, { 44362, 0xff00 }, { 44370, 0xffff }, { 44386, 0xffff },
+  /* 0x26f00 */
+  { 44402, 0xfcff }, { 44416, 0x0227 }, { 44421, 0xfe16 }, { 44431, 0xffff },
+  { 44447, 0xdfff }, { 44462, 0xffff }, { 44478, 0x5fff }, { 44492, 0xffe2 },
+  { 44504, 0xffff }, { 44520, 0x8895 }, { 44526, 0xf482 }, { 44533, 0xffff },
+  { 44549, 0xff7f }, { 44564, 0x03ff }, { 44574, 0xffff }, { 44590, 0xfe3f },
+  /* 0x27000 */
+  { 44603, 0x20f7 }, { 44611, 0x2ff0 }, { 44620, 0xffff }, { 44636, 0xffbf },
+  { 44651, 0xbfff }, { 44666, 0xfff2 }, { 44679, 0xffff }, { 44695, 0xf801 },
+  { 44701, 0xff7f }, { 44716, 0xffff }, { 44732, 0x03ba }, { 44739, 0xffff },
+  { 44755, 0xc3ff }, { 44767, 0xffff }, { 44783, 0xdfff }, { 44798, 0xfe01 },
+  /* 0x27100 */
+  { 44806, 0xeaff }, { 44819, 0xffff }, { 44835, 0x7f0f }, { 44846, 0xffc0 },
+  { 44856, 0xffff }, { 44872, 0xffdf }, { 44887, 0xc7c7 }, { 44897, 0x7ddf },
+  { 44910, 0xefea }, { 44922, 0x7fff }, { 44937, 0x1ff9 }, { 44948, 0xfc7e },
+  { 44960, 0x2ffe }, { 44972, 0xf1bf }, { 44984, 0x3fff }, { 44998, 0xf83e },
+  /* 0x27200 */
+  { 45008, 0x6bcb }, { 45018, 0xf5ef }, { 45031, 0xffb9 }, { 45044, 0xfff1 },
+  { 45057, 0xffff }, { 45073, 0xd9e3 }, { 45083, 0xffff }, { 45099, 0xf8f9 },
+  { 45110, 0xe1ef }, { 45121, 0xffff }, { 45137, 0xfbff }, { 45152, 0x9fc3 },
+  { 45162, 0xff00 }, { 45170, 0xfbff }, { 45185, 0xff83 }, { 45196, 0x0009 },
+  /* 0x27300 */
+  { 45198, 0xfffa }, { 45212, 0xbfff }, { 45227, 0x3fdf }, { 45240, 0xaff0 },
+  { 45250, 0x0000 }, { 45250, 0xfffe }, { 45265, 0xffff }, { 45281, 0xffff },
+  { 45297, 0xff1f }, { 45310, 0xc59f }, { 45320, 0xff7e }, { 45334, 0xffff },
+  { 45350, 0xffff }, { 45366, 0xf03f }, { 45376, 0x175f }, { 45386, 0xff00 },
+  /* 0x27400 */
+  { 45394, 0xfff7 }, { 45409, 0xffff }, { 45425, 0xeff8 }, { 45437, 0x007a },
+  { 45442, 0xfff1 }, { 45455, 0xf7ff }, { 45470, 0xffff }, { 45486, 0xff1f },
+  { 45499, 0xc15e }, { 45507, 0xfdff }, { 45522, 0x0ffe }, { 45533, 0xfffc },
+  { 45547, 0xdf00 }, { 45554, 0xffff }, { 45570, 0x18fe }, { 45579, 0xfffe },
+  /* 0x27500 */
+  { 45594, 0xc1df }, { 45604, 0xe13f }, { 45614, 0xddff }, { 45628, 0x24ff },
+  { 45638, 0xfffe }, { 45653, 0xf9f7 }, { 45666, 0xc1ff }, { 45677, 0xf7ff },
+  { 45692, 0xfdf5 }, { 45705, 0xfffe }, { 45720, 0xbf90 }, { 45729, 0x7ffc },
+  { 45742, 0xffdf }, { 45757, 0xfff7 }, { 45772, 0xffee }, { 45786, 0x8ffe },
+  /* 0x27600 */
+  { 45798, 0xef7f }, { 45812, 0xf64f }, { 45823, 0xffff }, { 45839, 0x7cf9 },
+  { 45850, 0xffff }, { 45866, 0xff07 }, { 45877, 0xffbf }, { 45892, 0xc2ac },
+  { 45899, 0xffff }, { 45915, 0x7fe7 }, { 45928, 0xfffa }, { 45942, 0xf7ff },
+  { 45957, 0xe009 }, { 45962, 0xffff }, { 45978, 0x1fff }, { 45991, 0xff0f },
+  /* 0x27700 */
+  { 46003, 0x2dff }, { 46015, 0xe026 }, { 46021, 0xfaff }, { 46035, 0xe187 },
+  { 46043, 0xbfff }, { 46058, 0x0fff }, { 46070, 0xfc0c }, { 46078, 0xffff },
+  { 46094, 0xf1c7 }, { 46104, 0xfafd }, { 46117, 0xffc6 }, { 46129, 0x3fef },
+  { 46142, 0xf78c }, { 46152, 0xcff7 }, { 46165, 0xefca }, { 46176, 0xff9e },
+  /* 0x27800 */
+  { 46189, 0xdadf }, { 46201, 0xffef }, { 46216, 0x6f0f }, { 46226, 0xf82f },
+  { 46236, 0xf979 }, { 46247, 0x29ef }, { 46257, 0xffff }, { 46273, 0xef8e },
+  { 46284, 0xe77f }, { 46297, 0x777c }, { 46308, 0xe9ff }, { 46321, 0xffbe },
+  { 46335, 0xe3ff }, { 46348, 0x5fff }, { 46362, 0xff2e }, { 46374, 0x7ff3 },
+  /* 0x27900 */
+  { 46387, 0xfbf8 }, { 46399, 0xf9ff }, { 46413, 0xdecf }, { 46425, 0xfcc6 },
+  { 46435, 0x3517 }, { 46443, 0x3fea }, { 46454, 0xef7e }, { 46467, 0xffbb },
+  { 46481, 0xbfc7 }, { 46493, 0xfe84 }, { 46502, 0xffff }, { 46518, 0x4cff },
+  { 46529, 0xff76 }, { 46542, 0xffff }, { 46558, 0x0df3 }, { 46567, 0xffff },
+  /* 0x27a00 */
+  { 46583, 0x8fff }, { 46596, 0x7e7f }, { 46609, 0xffd9 }, { 46622, 0xffff },
+  { 46638, 0xfefd }, { 46652, 0xff43 }, { 46663, 0xffff }, { 46679, 0xfffe },
+  { 46694, 0xffff }, { 46710, 0xffd7 }, { 46724, 0xffff }, { 46740, 0x86ff },
+  { 46751, 0x89ff }, { 46762, 0xfffd }, { 46777, 0xffff }, { 46793, 0xe565 },
+  /* 0x27b00 */
+  { 46802, 0xfffd }, { 46817, 0xbeef }, { 46830, 0xffbf }, { 46845, 0xf87f },
+  { 46857, 0xff7f }, { 46872, 0xff7f }, { 46887, 0xffbf }, { 46902, 0xff97 },
+  { 46915, 0xdfff }, { 46930, 0xef7f }, { 46944, 0xfb2c }, { 46954, 0x3def },
+  { 46966, 0xfe47 }, { 46977, 0x9f39 }, { 46987, 0xeeef }, { 47000, 0xff9b },
+  /* 0x27c00 */
+  { 47013, 0x3efb }, { 47025, 0x637f }, { 47036, 0xffab }, { 47049, 0xfff5 },
+  { 47063, 0xe7ff }, { 47077, 0xffff }, { 47093, 0xff3f }, { 47107, 0xd9ff },
+  { 47120, 0xffff }, { 47136, 0xfdbf }, { 47150, 0xf7ff }, { 47165, 0xc2ff },
+  { 47176, 0xffff }, { 47192, 0xfedf }, { 47206, 0xffe7 }, { 47220, 0x5fee },
+  /* 0x27d00 */
+  { 47232, 0xf0fe }, { 47243, 0xe7f1 }, { 47254, 0x3d7b }, { 47265, 0xffef },
+  { 47280, 0xffb7 }, { 47294, 0x37e3 }, { 47304, 0xfff9 }, { 47318, 0xe7f7 },
+  { 47331, 0x7fec }, { 47343, 0xff8f }, { 47356, 0x05ff }, { 47366, 0xdfff },
+  { 47381, 0xfe9f }, { 47394, 0xd6ff }, { 47407, 0xfbff }, { 47422, 0xf825 },
+  /* 0x27e00 */
+  { 47430, 0xffff }, { 47446, 0x47f2 }, { 47455, 0xe9ff }, { 47468, 0xf3fe },
+  { 47481, 0x43c9 }, { 47488, 0x7f00 }, { 47495, 0xf09b }, { 47504, 0x23fc },
+  { 47513, 0xffd0 }, { 47524, 0xefdd }, { 47537, 0xffff }, { 47553, 0xffec },
+  { 47566, 0xdfff }, { 47581, 0xbffe }, { 47595, 0xd8ff }, { 47607, 0xbf7f },
+  /* 0x27f00 */
+  { 47621, 0xc2ff }, { 47632, 0xffff }, { 47648, 0xffef }, { 47663, 0xffff },
+  { 47679, 0xfe76 }, { 47691, 0xffff }, { 47707, 0xbfff }, { 47722, 0xffd8 },
+  { 47734, 0xe93f }, { 47745, 0xffff }, { 47761, 0xff7f }, { 47776, 0x1f73 },
+  { 47786, 0x227f }, { 47795, 0xfffc }, { 47809, 0xc05d }, { 47816, 0xfffe },
+  /* 0x28000 */
+  { 47831, 0x0249 }, { 47835, 0xfff8 }, { 47848, 0x7fff }, { 47863, 0x00c2 },
+  { 47866, 0xffff }, { 47882, 0x5e3f }, { 47893, 0x000d }, { 47896, 0xffe8 },
+  { 47908, 0xf9ff }, { 47922, 0xf80a }, { 47929, 0xffff }, { 47945, 0x81ff },
+  { 47955, 0x0003 }, { 47957, 0xfffc }, { 47971, 0x51ff }, { 47982, 0x8008 },
+  /* 0x28100 */
+  { 47984, 0xffe9 }, { 47997, 0x0fff }, { 48009, 0x3ffe }, { 48022, 0x0000 },
+  { 48022, 0xdd60 }, { 48030, 0xffff }, { 48046, 0x07ff }, { 48057, 0x0076 },
+  { 48062, 0xffff }, { 48078, 0x1df3 }, { 48088, 0xfdc0 }, { 48097, 0x183f },
+  { 48105, 0x9dfe }, { 48117, 0x67d0 }, { 48125, 0xeff0 }, { 48136, 0x3c1f },
+  /* 0x28200 */
+  { 48145, 0xad38 }, { 48153, 0xff3b }, { 48166, 0xfe17 }, { 48177, 0xff37 },
+  { 48190, 0xff0d }, { 48201, 0x0bb1 }, { 48208, 0xc1fc }, { 48217, 0x9e0f },
+  { 48226, 0xe45b }, { 48235, 0x2bfd }, { 48246, 0x9e9f }, { 48257, 0xfffe },
+  { 48272, 0xd0d1 }, { 48279, 0x1fff }, { 48292, 0xffc0 }, { 48302, 0x1277 },
+  /* 0x28300 */
+  { 48310, 0xeffe }, { 48324, 0xbe40 }, { 48331, 0xffff }, { 48347, 0x79ff },
+  { 48360, 0xffef }, { 48375, 0x87df }, { 48386, 0xffa9 }, { 48398, 0x8bdf },
+  { 48409, 0x3fbf }, { 48422, 0x136f }, { 48431, 0xfff6 }, { 48445, 0x53ff },
+  { 48457, 0xcfe2 }, { 48467, 0xe37e }, { 48478, 0x9f5f }, { 48490, 0x677f },
+  /* 0x28400 */
+  { 48502, 0xb806 }, { 48508, 0xffb3 }, { 48521, 0xbf17 }, { 48532, 0x7a67 },
+  { 48542, 0xafff }, { 48556, 0x4f1f }, { 48566, 0xbfff }, { 48581, 0xf0bf },
+  { 48592, 0xfffb }, { 48607, 0x2cf8 }, { 48615, 0xfffd }, { 48630, 0xf00d },
+  { 48637, 0x6fbf }, { 48650, 0x2bfc }, { 48660, 0xfff0 }, { 48672, 0xefff },
+  /* 0x28500 */
+  { 48687, 0xc829 }, { 48693, 0xfeff }, { 48708, 0xffde }, { 48722, 0x0007 },
+  { 48725, 0xaffe }, { 48738, 0xfc5b }, { 48749, 0xc7ff }, { 48762, 0x317f },
+  { 48772, 0xffca }, { 48784, 0xe3f9 }, { 48795, 0xfc3b }, { 48806, 0xdffb },
+  { 48820, 0xf81f }, { 48830, 0xc3bd }, { 48840, 0xffee }, { 48854, 0x3fc3 },
+  /* 0x28600 */
+  { 48864, 0xf7bf }, { 48878, 0xfe0b }, { 48888, 0x7fcf }, { 48901, 0xb3e5 },
+  { 48911, 0xc7ff }, { 48924, 0xd7bf }, { 48937, 0xebd9 }, { 48948, 0x7fe7 },
+  { 48961, 0xaefc }, { 48972, 0xfffe }, { 48987, 0xfd25 }, { 48997, 0xbe7f },
+  { 49010, 0xffda }, { 49023, 0xde7f }, { 49036, 0xfffb }, { 49051, 0xf9fb },
+  /* 0x28700 */
+  { 49064, 0xfd6f }, { 49077, 0x9fff }, { 49091, 0xe5ff }, { 49104, 0xfffd },
+  { 49119, 0xfe9b }, { 49131, 0xe9bb }, { 49142, 0xfdef }, { 49156, 0xe1fb },
+  { 49167, 0xf2bf }, { 49179, 0xdffe }, { 49193, 0xcfc3 }, { 49203, 0xffeb },
+  { 49217, 0xe13f }, { 49227, 0xdff3 }, { 49240, 0xd9df }, { 49252, 0xfff7 },
+  /* 0x28800 */
+  { 49267, 0xfde7 }, { 49280, 0x79ff }, { 49293, 0x40f4 }, { 49299, 0x7fc0 },
+  { 49308, 0xf826 }, { 49316, 0x3dfb }, { 49328, 0xfe0d }, { 49338, 0x61ff },
+  { 49349, 0xfffb }, { 49364, 0x0e77 }, { 49373, 0xbfff }, { 49388, 0xe66f },
+  { 49399, 0x48ff }, { 49409, 0xbffb }, { 49423, 0xefcb }, { 49435, 0xffdf },
+  /* 0x28900 */
+  { 49450, 0xf7a7 }, { 49462, 0x6fef }, { 49475, 0x376f }, { 49486, 0xc7d0 },
+  { 49494, 0xfe1d }, { 49505, 0x03ff }, { 49515, 0xe7f4 }, { 49526, 0x4a6f },
+  { 49535, 0xfc74 }, { 49545, 0xf25f }, { 49556, 0xfd09 }, { 49565, 0xc19f },
+  { 49574, 0xfffe }, { 49589, 0x1a68 }, { 49595, 0xfff2 }, { 49608, 0xe07f },
+  /* 0x28a00 */
+  { 49618, 0x7fff }, { 49633, 0x20ff }, { 49642, 0xd220 }, { 49647, 0x7fff },
+  { 49662, 0xf000 }, { 49666, 0xf9ff }, { 49680, 0x121f }, { 49687, 0x1620 },
+  { 49691, 0xfffe }, { 49706, 0x80df }, { 49714, 0xffff }, { 49730, 0x30c1 },
+  { 49735, 0xd840 }, { 49740, 0x037f }, { 49749, 0xffc0 }, { 49759, 0x2bff },
+  /* 0x28b00 */
+  { 49771, 0xf038 }, { 49778, 0xafdf }, { 49791, 0xc7f8 }, { 49801, 0x7fff },
+  { 49816, 0x4290 }, { 49820, 0xffe9 }, { 49833, 0xef84 }, { 49842, 0x50ff },
+  { 49852, 0x8019 }, { 49856, 0xccbc }, { 49865, 0x89ff }, { 49876, 0xfb80 },
+  { 49884, 0xffd0 }, { 49895, 0xc697 }, { 49904, 0xe04f }, { 49912, 0x5c01 },
+  /* 0x28c00 */
+  { 49917, 0xfe23 }, { 49927, 0xf7f7 }, { 49941, 0xd315 }, { 49949, 0x394f },
+  { 49958, 0x0000 }, { 49958, 0xff80 }, { 49967, 0x0bf4 }, { 49975, 0x86f8 },
+  { 49983, 0x3fcf }, { 49995, 0xedb8 }, { 50005, 0xe3e7 }, { 50016, 0x5d5c },
+  { 50025, 0xde3f }, { 50037, 0xffeb }, { 50051, 0x3faf }, { 50063, 0xfffd },
+  /* 0x28d00 */
+  { 50078, 0xe037 }, { 50086, 0xa3ff }, { 50098, 0xff21 }, { 50108, 0x81eb },
+  { 50116, 0xbff3 }, { 50129, 0x10ff }, { 50138, 0xfff4 }, { 50151, 0x02ad },
+  { 50157, 0xffff }, { 50173, 0xf444 }, { 50180, 0xf0ff }, { 50192, 0x43df },
+  { 50202, 0x3efe }, { 50214, 0xfabc }, { 50225, 0x0dde }, { 50234, 0x198f },
+  /* 0x28e00 */
+  { 50242, 0x8000 }, { 50243, 0x7dff }, { 50257, 0xfa1f }, { 50268, 0x012f },
+  { 50274, 0xdffe }, { 50288, 0xff2b }, { 50300, 0xe08f }, { 50308, 0xffef },
+  { 50323, 0xfc7f }, { 50336, 0x800f }, { 50341, 0xffff }, { 50357, 0x8032 },
+  { 50361, 0xffff }, { 50377, 0xfd7f }, { 50391, 0x8543 }, { 50397, 0xffff },
+  /* 0x28f00 */
+  { 50413, 0xfd7f }, { 50427, 0xfbff }, { 50442, 0xfc41 }, { 50450, 0xe07b },
+  { 50459, 0xf0ff }, { 50471, 0xb3ff }, { 50484, 0x5def }, { 50496, 0xbf7e },
+  { 50509, 0xafef }, { 50522, 0x3ffe }, { 50535, 0xcfff }, { 50549, 0xfffc },
+  { 50563, 0xfb7f }, { 50577, 0x47ff }, { 50589, 0xffff }, { 50605, 0xe67f },
+  /* 0x29000 */
+  { 50617, 0xffff }, { 50633, 0xffbf }, { 50648, 0xfff3 }, { 50662, 0xfff3 },
+  { 50676, 0xffe7 }, { 50690, 0xfbff }, { 50705, 0x3b9f }, { 50716, 0x7fe5 },
+  { 50728, 0x37fc }, { 50739, 0x1dfc }, { 50749, 0x77fe }, { 50762, 0xffac },
+  { 50774, 0x17ef }, { 50785, 0x7fff }, { 50800, 0xafcb }, { 50811, 0xf7f0 },
+  /* 0x29100 */
+  { 50822, 0x221b }, { 50828, 0xffc0 }, { 50838, 0x6aff }, { 50850, 0xff80 },
+  { 50859, 0xceff }, { 50872, 0xe00d }, { 50878, 0x3fff }, { 50892, 0xf0c6 },
+  { 50900, 0x03ff }, { 50910, 0x8dfe }, { 50921, 0xea70 }, { 50929, 0xa5ef },
+  { 50940, 0x5f9f }, { 50952, 0xffbe }, { 50966, 0xffdb }, { 50980, 0xd7ef },
+  /* 0x29200 */
+  { 50993, 0xf7f8 }, { 51005, 0xbe4e }, { 51015, 0xf9ff }, { 51029, 0x7b7f },
+  { 51042, 0x7fbf }, { 51056, 0xee52 }, { 51065, 0x5ffe }, { 51078, 0xff00 },
+  { 51086, 0x0b3f }, { 51095, 0xffff }, { 51111, 0xfe60 }, { 51120, 0x938d },
+  { 51128, 0xffff }, { 51144, 0xe83f }, { 51154, 0xffff }, { 51170, 0xf77f },
+  /* 0x29300 */
+  { 51184, 0xfff9 }, { 51198, 0x2cff }, { 51209, 0xffc7 }, { 51222, 0xcecf },
+  { 51233, 0xceff }, { 51246, 0xfffe }, { 51261, 0xcff0 }, { 51271, 0xc3be },
+  { 51281, 0xffb7 }, { 51295, 0x7fbe }, { 51308, 0xfff2 }, { 51321, 0xffef },
+  { 51336, 0xcfeb }, { 51348, 0xcfff }, { 51362, 0xff7f }, { 51377, 0x0ff7 },
+  /* 0x29400 */
+  { 51388, 0xbebe }, { 51400, 0xdff8 }, { 51412, 0x7dff }, { 51426, 0xdef7 },
+  { 51439, 0x3fef }, { 51452, 0xffff }, { 51468, 0x5fff }, { 51482, 0x7fff },
+  { 51497, 0x9fff }, { 51511, 0xffff }, { 51527, 0xecd7 }, { 51538, 0xffff },
+  { 51554, 0x7f7f }, { 51568, 0xe37a }, { 51578, 0xffff }, { 51594, 0x7dff },
+  /* 0x29500 */
+  { 51608, 0xffff }, { 51624, 0xfe19 }, { 51634, 0xb3ff }, { 51647, 0xfff9 },
+  { 51661, 0xff65 }, { 51673, 0xefff }, { 51688, 0xfa7f }, { 51701, 0xd5fe },
+  { 51713, 0xfcdb }, { 51725, 0xbe09 }, { 51733, 0x53fe }, { 51744, 0x7ffd },
+  { 51758, 0x3ff2 }, { 51769, 0xeff8 }, { 51781, 0xff0f }, { 51793, 0x0dff },
+  /* 0x29600 */
+  { 51804, 0xffea }, { 51817, 0xf6ff }, { 51831, 0xe0ff }, { 51842, 0xffff },
+  { 51858, 0x477f }, { 51869, 0xfede }, { 51882, 0x0012 }, { 51884, 0x34d6 },
+  { 51892, 0xffff }, { 51908, 0x7fec }, { 51920, 0xff19 }, { 51931, 0xafff },
+  { 51945, 0xff63 }, { 51957, 0xe8cf }, { 51967, 0xffff }, { 51983, 0xfe0a },
+  /* 0x29700 */
+  { 51992, 0xffff }, { 52008, 0xfcfd }, { 52021, 0xb004 }, { 52025, 0xffff },
+  { 52041, 0x0267 }, { 52047, 0xef80 }, { 52055, 0x5bff }, { 52068, 0xf337 },
+  { 52079, 0xffff }, { 52095, 0xc6c3 }, { 52103, 0x7fff }, { 52118, 0xf4a4 },
+  { 52126, 0xbfff }, { 52141, 0x2bf8 }, { 52150, 0xe5f8 }, { 52160, 0x01d3 },
+  /* 0x29800 */
+  { 52166, 0x0000 }, { 52166, 0x1ee3 }, { 52175, 0x1c7c }, { 52183, 0xde85 },
+  { 52192, 0x77f7 }, { 52205, 0x6d3f }, { 52216, 0x67b2 }, { 52225, 0xffaf },
+  { 52239, 0xf35e }, { 52250, 0xffff }, { 52266, 0xe0eb }, { 52275, 0xffff },
+  { 52291, 0x77bf }, { 52304, 0xffe7 }, { 52318, 0xe19f }, { 52328, 0xffff },
+  /* 0x29900 */
+  { 52344, 0x82d3 }, { 52351, 0xffcd }, { 52364, 0x7fff }, { 52379, 0xe88b },
+  { 52387, 0xffff }, { 52403, 0x5ddf }, { 52415, 0xf814 }, { 52422, 0x0c1f },
+  { 52429, 0xffff }, { 52445, 0xdaf3 }, { 52456, 0x31ff }, { 52467, 0xffc8 },
+  { 52478, 0xcffd }, { 52491, 0x0f71 }, { 52499, 0x003f }, { 52505, 0x0000 },
+  /* 0x29a00 */
+  { 52505, 0x0000 }, { 52505, 0xf8e6 }, { 52515, 0xf0df }, { 52526, 0xe5ff },
+  { 52539, 0xfe4f }, { 52551, 0xffa8 }, { 52562, 0xe04f }, { 52570, 0x637f },
+  { 52581, 0xfe7f }, { 52595, 0x1fbf }, { 52607, 0x6fff }, { 52621, 0xdbcc },
+  { 52631, 0xde7f }, { 52644, 0xf7a3 }, { 52655, 0xffff }, { 52671, 0xb69b },
+  /* 0x29b00 */
+  { 52681, 0x8e1b }, { 52689, 0xffff }, { 52705, 0x03c7 }, { 52712, 0xbfff },
+  { 52727, 0xff8f }, { 52740, 0xe5ef }, { 52752, 0x6fff }, { 52766, 0xff80 },
+  { 52775, 0x3bff }, { 52788, 0xffc0 }, { 52798, 0xc3cf }, { 52808, 0x77ff },
+  { 52822, 0xfff8 }, { 52835, 0xf853 }, { 52844, 0x23f1 }, { 52852, 0x8d3f },
+  /* 0x29c00 */
+  { 52862, 0xfefe }, { 52876, 0xf2ff }, { 52889, 0xffff }, { 52905, 0xd2fe },
+  { 52916, 0xffbb }, { 52930, 0xbfdf }, { 52944, 0xbbff }, { 52958, 0xe7bf },
+  { 52971, 0xfdff }, { 52986, 0x7ff3 }, { 52999, 0xdfee }, { 53012, 0xfa49 },
+  { 53021, 0xfbf7 }, { 53035, 0xbf7f }, { 53049, 0xf7ff }, { 53064, 0xf7e7 },
+  /* 0x29d00 */
+  { 53077, 0xefc9 }, { 53088, 0xfb7f }, { 53102, 0xef5f }, { 53115, 0xaddf },
+  { 53127, 0xfdb7 }, { 53140, 0x0bfb }, { 53150, 0xffff }, { 53166, 0x13fb },
+  { 53176, 0x7fff }, { 53191, 0x4c7e }, { 53200, 0xfffd }, { 53215, 0xbfc3 },
+  { 53226, 0xf80c }, { 53233, 0xf7ff }, { 53248, 0x507f }, { 53257, 0xffb0 },
+  /* 0x29e00 */
+  { 53268, 0xffff }, { 53284, 0x9f85 }, { 53293, 0x21a5 }, { 53299, 0xd600 },
+  { 53304, 0xffff }, { 53320, 0x5fc7 }, { 53331, 0x0104 }, { 53333, 0xfffe },
+  { 53348, 0xe07f }, { 53358, 0x1e7f }, { 53369, 0xe800 }, { 53373, 0x7fff },
+  { 53388, 0x2fe0 }, { 53396, 0xff40 }, { 53405, 0x0dff }, { 53416, 0x0174 },
+  /* 0x29f00 */
+  { 53421, 0x7ffc }, { 53434, 0xf1c7 }, { 53444, 0x7fe3 }, { 53456, 0xf83e },
+  { 53466, 0xf11f }, { 53476, 0xfd2b }, { 53487, 0x7fcb }, { 53499, 0x00eb },
+  { 53505, 0xa201 }, { 53509, 0xfbff }, { 53524, 0x1eff }, { 53536, 0xffff },
+  { 53552, 0x9fff }, { 53566, 0xf8ff }, { 53579, 0x7fff }, { 53594, 0x11fe },
+  /* 0x2a000 */
+  { 53603, 0xbf83 }, { 53613, 0xeffe }, { 53627, 0x3fff }, { 53641, 0xb5ff },
+  { 53654, 0xff01 }, { 53663, 0xffff }, { 53679, 0x7fff }, { 53694, 0xfb85 },
+  { 53704, 0xffff }, { 53720, 0xefbb }, { 53733, 0x242a }, { 53738, 0xfff0 },
+  { 53750, 0xffff }, { 53766, 0x3dff }, { 53779, 0x86d5 }, { 53787, 0xfe48 },
+  /* 0x2a100 */
+  { 53796, 0xfeff }, { 53811, 0x599f }, { 53821, 0xfe09 }, { 53830, 0xfbff },
+  { 53845, 0x7fff }, { 53860, 0x947e }, { 53869, 0xc002 }, { 53872, 0xffff },
+  { 53888, 0x3fff }, { 53902, 0x24f2 }, { 53909, 0xff02 }, { 53918, 0xffff },
+  { 53934, 0x065e }, { 53941, 0x35fe }, { 53952, 0xf003 }, { 53958, 0x9fff },
+  /* 0x2a200 */
+  { 53972, 0x7efa }, { 53984, 0xff0d }, { 53995, 0xcff4 }, { 54006, 0xbfb7 },
+  { 54019, 0x0001 }, { 54020, 0xffc0 }, { 54030, 0xe3db }, { 54041, 0x95ef },
+  { 54052, 0xfbdf }, { 54066, 0x5bfb }, { 54078, 0xbde3 }, { 54089, 0xfffe },
+  { 54104, 0xebf8 }, { 54115, 0x7ff7 }, { 54129, 0xfcae }, { 54140, 0xfd9d },
+  /* 0x2a300 */
+  { 54152, 0x7fee }, { 54165, 0x3df7 }, { 54177, 0xf17d }, { 54188, 0xf91f },
+  { 54199, 0xfaff }, { 54213, 0xfd7f }, { 54227, 0xffff }, { 54243, 0xff7d },
+  { 54257, 0xe0df }, { 54267, 0xfcfd }, { 54280, 0xfdff }, { 54295, 0x6e7d },
+  { 54306, 0x7fde }, { 54319, 0x7f7a }, { 54331, 0xf1f2 }, { 54341, 0xffdf },
+  /* 0x2a400 */
+  { 54356, 0xff9d }, { 54369, 0xfbfe }, { 54383, 0x0df3 }, { 54392, 0x831c },
+  { 54398, 0x7f1f }, { 54410, 0x7ffc }, { 54423, 0xffea }, { 54436, 0xc09f },
+  { 54444, 0x993f }, { 54454, 0xff7f }, { 54469, 0xfe8f }, { 54481, 0xcf31 },
+  { 54490, 0xde5b }, { 54501, 0xfdff }, { 54516, 0xf3b6 }, { 54527, 0xfbff },
+  /* 0x2a500 */
+  { 54542, 0xed77 }, { 54554, 0x39f7 }, { 54565, 0xdffc }, { 54578, 0xfdeb },
+  { 54591, 0xff5f }, { 54605, 0xff9e }, { 54618, 0xff92 }, { 54629, 0xefe2 },
+  { 54640, 0xf9ef }, { 54653, 0x0dff }, { 54664, 0xc7fe }, { 54676, 0x78f9 },
+  { 54686, 0xfef6 }, { 54699, 0xff37 }, { 54712, 0xbfff }, { 54727, 0xffe4 },
+  /* 0x2a600 */
+  { 54739, 0xec33 }, { 54748, 0x99ff }, { 54760, 0x77f7 }, { 54773, 0xffd5 },
+  { 54786, 0xffcf }, { 54800, 0xffcf }, { 54814, 0x56f8 }, { 54823, 0xbbfd },
+  { 54836, 0x7b5f }, { 54848, 0xfbee }, { 54861, 0xf9e1 }, { 54871, 0xfffb },
+  { 54886, 0xef5f }, { 54899, 0x007f },
+};
+static const Summary16 cns11643_inv_uni2indx_page2f8[34] = {
+  /* 0x2f800 */
+  { 54906, 0xffff }, { 54922, 0xffff }, { 54938, 0xffff }, { 54954, 0xffff },
+  { 54970, 0xfffe }, { 54985, 0xffff }, { 55001, 0xffff }, { 55017, 0xffff },
+  { 55033, 0xffff }, { 55049, 0xffef }, { 55064, 0xffff }, { 55080, 0xffff },
+  { 55096, 0xdfff }, { 55111, 0xffff }, { 55127, 0xffff }, { 55143, 0xffff },
+  /* 0x2f900 */
+  { 55159, 0xffff }, { 55175, 0xffff }, { 55191, 0xffff }, { 55207, 0xffff },
+  { 55223, 0xffff }, { 55239, 0xffff }, { 55255, 0xffff }, { 55271, 0xffff },
+  { 55287, 0xffff }, { 55303, 0xffef }, { 55318, 0xffff }, { 55334, 0xfffb },
+  { 55349, 0xffff }, { 55365, 0xffef }, { 55380, 0xffff }, { 55396, 0xffff },
+  /* 0x2fa00 */
+  { 55412, 0xffff }, { 55428, 0x3fff },
+};
+
+static int
+cns11643_inv_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 2) {
+    const Summary16 *summary = NULL;
+    if (wc >= 0x0000 && wc < 0x0100)
+      summary = &cns11643_inv_uni2indx_page00[(wc>>4)];
+    else if (wc >= 0x0200 && wc < 0x03d0)
+      summary = &cns11643_inv_uni2indx_page02[(wc>>4)-0x020];
+    else if (wc >= 0x2000 && wc < 0x22c0)
+      summary = &cns11643_inv_uni2indx_page20[(wc>>4)-0x200];
+    else if (wc >= 0x2400 && wc < 0x2650)
+      summary = &cns11643_inv_uni2indx_page24[(wc>>4)-0x240];
+    else if (wc >= 0x3000 && wc < 0x9fb0)
+      summary = &cns11643_inv_uni2indx_page30[(wc>>4)-0x300];
+    else if (wc >= 0xfa00 && wc < 0xfa30)
+      summary = &cns11643_inv_uni2indx_pagefa[(wc>>4)-0xfa0];
+    else if (wc >= 0xfe00 && wc < 0xfff0)
+      summary = &cns11643_inv_uni2indx_pagefe[(wc>>4)-0xfe0];
+    else if (wc >= 0x20000 && wc < 0x2a6e0)
+      summary = &cns11643_inv_uni2indx_page200[(wc>>4)-0x2000];
+    else if (wc >= 0x2f800 && wc < 0x2fa20)
+      summary = &cns11643_inv_uni2indx_page2f8[(wc>>4)-0x2f80];
+    if (summary) {
+      unsigned short used = summary->used;
+      unsigned int i = wc & 0x0f;
+      if (used & ((unsigned short) 1 << i)) {
+        /* Keep in `used' only the bits 0..i-1. */
+        used &= ((unsigned short) 1 << i) - 1;
+        /* Add `summary->indx' and the number of bits set in `used'. */
+        used = (used & 0x5555) + ((used & 0xaaaa) >> 1);
+        used = (used & 0x3333) + ((used & 0xcccc) >> 2);
+        used = (used & 0x0f0f) + ((used & 0xf0f0) >> 4);
+        used = (used & 0x00ff) + (used >> 8);
+        used += summary->indx;
+        r[0] = cns11643_inv_2charset[3*used];
+        r[1] = cns11643_inv_2charset[3*used+1];
+        r[2] = cns11643_inv_2charset[3*used+2];
+        return 3;
+      }
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/config.h b/graf2d/win32gdk/gdk/src/iconv/config.h
new file mode 100644
index 00000000000..fb706d02e66
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/config.h
@@ -0,0 +1,458 @@
+/* config.h.in.  Generated from configure.ac by autoheader.  */
+
+/* Define if the compiler is building for multiple architectures of Apple
+   platforms at once. */
+#undef AA_APPLE_UNIVERSAL_BUILD
+
+/* Define to the number of bits in type 'ptrdiff_t'. */
+#undef BITSIZEOF_PTRDIFF_T
+
+/* Define to the number of bits in type 'sig_atomic_t'. */
+#undef BITSIZEOF_SIG_ATOMIC_T
+
+/* Define to the number of bits in type 'size_t'. */
+#undef BITSIZEOF_SIZE_T
+
+/* Define to the number of bits in type 'wchar_t'. */
+#undef BITSIZEOF_WCHAR_T
+
+/* Define to the number of bits in type 'wint_t'. */
+#undef BITSIZEOF_WINT_T
+
+/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
+   systems. This function is required for `alloca.c' support on those systems.
+   */
+#undef CRAY_STACKSEG_END
+
+/* Define to 1 if using `alloca.c'. */
+#undef C_ALLOCA
+
+/* Define as good substitute value for EILSEQ. */
+//#undef EILSEQ
+
+/* Define to 1 to enable a few rarely used encodings. */
+#undef ENABLE_EXTRA
+
+/* Define to 1 if translation of program messages to the user's native
+   language is requested. */
+#undef ENABLE_NLS
+
+/* Define to 1 if the package shall run at any location in the filesystem. */
+#undef ENABLE_RELOCATABLE
+
+/* Define to 1 when using the gnulib module canonicalize-lgpl. */
+#undef GNULIB_CANONICALIZE_LGPL
+
+/* Define to 1 when using the gnulib module sigpipe. */
+#undef GNULIB_SIGPIPE
+
+/* Define to 1 if you have `alloca', as a function or macro. */
+#undef HAVE_ALLOCA
+
+/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
+   */
+#undef HAVE_ALLOCA_H
+
+/* Define to 1 if you have the `canonicalize_file_name' function. */
+#undef HAVE_CANONICALIZE_FILE_NAME
+
+/* Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the
+   CoreFoundation framework. */
+#undef HAVE_CFLOCALECOPYCURRENT
+
+/* Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in
+   the CoreFoundation framework. */
+#undef HAVE_CFPREFERENCESCOPYAPPVALUE
+
+/* Define if the GNU dcgettext() function is already present or preinstalled.
+   */
+#undef HAVE_DCGETTEXT
+
+/* Define to 1 if you have the declaration of `canonicalize_file_name', and to
+   0 if you don't. */
+#undef HAVE_DECL_CANONICALIZE_FILE_NAME
+
+/* Define to 1 if you have the declaration of `clearerr_unlocked', and to 0 if
+   you don't. */
+#undef HAVE_DECL_CLEARERR_UNLOCKED
+
+/* Define to 1 if you have the declaration of `feof_unlocked', and to 0 if you
+   don't. */
+#undef HAVE_DECL_FEOF_UNLOCKED
+
+/* Define to 1 if you have the declaration of `ferror_unlocked', and to 0 if
+   you don't. */
+#undef HAVE_DECL_FERROR_UNLOCKED
+
+/* Define to 1 if you have the declaration of `fflush_unlocked', and to 0 if
+   you don't. */
+#undef HAVE_DECL_FFLUSH_UNLOCKED
+
+/* Define to 1 if you have the declaration of `fgets_unlocked', and to 0 if
+   you don't. */
+#undef HAVE_DECL_FGETS_UNLOCKED
+
+/* Define to 1 if you have the declaration of `fputc_unlocked', and to 0 if
+   you don't. */
+#undef HAVE_DECL_FPUTC_UNLOCKED
+
+/* Define to 1 if you have the declaration of `fputs_unlocked', and to 0 if
+   you don't. */
+#undef HAVE_DECL_FPUTS_UNLOCKED
+
+/* Define to 1 if you have the declaration of `fread_unlocked', and to 0 if
+   you don't. */
+#undef HAVE_DECL_FREAD_UNLOCKED
+
+/* Define to 1 if you have the declaration of `fwrite_unlocked', and to 0 if
+   you don't. */
+#undef HAVE_DECL_FWRITE_UNLOCKED
+
+/* Define to 1 if you have the declaration of `getchar_unlocked', and to 0 if
+   you don't. */
+#undef HAVE_DECL_GETCHAR_UNLOCKED
+
+/* Define to 1 if you have the declaration of `getc_unlocked', and to 0 if you
+   don't. */
+#undef HAVE_DECL_GETC_UNLOCKED
+
+/* Define to 1 if you have the declaration of `putchar_unlocked', and to 0 if
+   you don't. */
+#undef HAVE_DECL_PUTCHAR_UNLOCKED
+
+/* Define to 1 if you have the declaration of `putc_unlocked', and to 0 if you
+   don't. */
+#undef HAVE_DECL_PUTC_UNLOCKED
+
+/* Define to 1 if you have the declaration of `strerror', and to 0 if you
+   don't. */
+#undef HAVE_DECL_STRERROR
+
+/* Define to 1 if you have the declaration of `strerror_r', and to 0 if you
+   don't. */
+#undef HAVE_DECL_STRERROR_R
+
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#undef HAVE_DLFCN_H
+
+/* Define if you have the declaration of environ. */
+#undef HAVE_ENVIRON_DECL
+
+/* Define to 1 if you have the <errno.h> header file. */
+#undef HAVE_ERRNO_H
+
+/* Define to 1 if you have the `getcwd' function. */
+#undef HAVE_GETCWD
+
+/* Define to 1 if you have the `getc_unlocked' function. */
+#undef HAVE_GETC_UNLOCKED
+
+/* Define if the GNU gettext() function is already present or preinstalled. */
+#undef HAVE_GETTEXT
+
+/* Define if you have the iconv() function and it works. */
+#undef HAVE_ICONV
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+#undef HAVE_INTTYPES_H
+
+/* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
+#undef HAVE_LANGINFO_CODESET
+
+/* Define to 1 if the system has the type `long long int'. */
+#undef HAVE_LONG_LONG_INT
+
+/* Define to 1 if you have the <mach-o/dyld.h> header file. */
+#undef HAVE_MACH_O_DYLD_H
+
+/* Define if the 'malloc' function is POSIX compliant. */
+#undef HAVE_MALLOC_POSIX
+
+/* Define to 1 if you have the `mbrtowc' function. */
+#undef HAVE_MBRTOWC
+
+/* Define to 1 if you have the `mbsinit' function. */
+#undef HAVE_MBSINIT
+
+/* Define to 1 if <wchar.h> declares mbstate_t. */
+#undef HAVE_MBSTATE_T
+
+/* Define to 1 if you have the <memory.h> header file. */
+#undef HAVE_MEMORY_H
+
+/* Define to 1 if you have the `pathconf' function. */
+#undef HAVE_PATHCONF
+
+/* Define to 1 if you have the <random.h> header file. */
+#undef HAVE_RANDOM_H
+
+/* Define to 1 if you have the `readlink' function. */
+#undef HAVE_READLINK
+
+/* Define to 1 if you have the <search.h> header file. */
+#undef HAVE_SEARCH_H
+
+/* Define to 1 if you have the `setenv' function. */
+#undef HAVE_SETENV
+
+/* Define to 1 if you have the `setlocale' function. */
+#undef HAVE_SETLOCALE
+
+/* Define to 1 if you have the <signal.h> header file. */
+#undef HAVE_SIGNAL_H
+
+/* Define to 1 if 'sig_atomic_t' is a signed integer type. */
+#undef HAVE_SIGNED_SIG_ATOMIC_T
+
+/* Define to 1 if 'wchar_t' is a signed integer type. */
+#undef HAVE_SIGNED_WCHAR_T
+
+/* Define to 1 if 'wint_t' is a signed integer type. */
+#undef HAVE_SIGNED_WINT_T
+
+/* Define to 1 if the system has the type `sigset_t'. */
+#undef HAVE_SIGSET_T
+
+/* Define to 1 if stdbool.h conforms to C99. */
+#undef HAVE_STDBOOL_H
+
+/* Define to 1 if you have the <stdint.h> header file. */
+#undef HAVE_STDINT_H
+
+/* Define to 1 if you have the <stdio.h> header file. */
+#undef HAVE_STDIO_H
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#undef HAVE_STDLIB_H
+
+/* Define to 1 if you have the `strerror_r' function. */
+#undef HAVE_STRERROR_R
+
+/* Define to 1 if you have the <strings.h> header file. */
+#undef HAVE_STRINGS_H
+
+/* Define to 1 if you have the <string.h> header file. */
+#undef HAVE_STRING_H
+
+/* Define to 1 if the system has the type `struct random_data'. */
+#undef HAVE_STRUCT_RANDOM_DATA
+
+/* Define to 1 if you have the <sys/bitypes.h> header file. */
+#undef HAVE_SYS_BITYPES_H
+
+/* Define to 1 if you have the <sys/inttypes.h> header file. */
+#undef HAVE_SYS_INTTYPES_H
+
+/* Define to 1 if you have the <sys/param.h> header file. */
+#undef HAVE_SYS_PARAM_H
+
+/* Define to 1 if you have the <sys/socket.h> header file. */
+#undef HAVE_SYS_SOCKET_H
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#undef HAVE_SYS_STAT_H
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#undef HAVE_SYS_TYPES_H
+
+/* Define to 1 if you have the `tsearch' function. */
+#undef HAVE_TSEARCH
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#undef HAVE_UNISTD_H
+
+/* Define to 1 if the system has the type `unsigned long long int'. */
+#undef HAVE_UNSIGNED_LONG_LONG_INT
+
+/* Define to 1 or 0, depending whether the compiler supports simple visibility
+   declarations. */
+#undef HAVE_VISIBILITY
+
+/* Define to 1 if you have the <wchar.h> header file. */
+#undef HAVE_WCHAR_H
+
+/* Define if you have the 'wchar_t' type. */
+#undef HAVE_WCHAR_T
+
+/* Define to 1 if you have the `wcrtomb' function. */
+#undef HAVE_WCRTOMB
+
+/* Define to 1 if you have the <winsock2.h> header file. */
+#undef HAVE_WINSOCK2_H
+
+/* Define if you have the 'wint_t' type. */
+#undef HAVE_WINT_T
+
+/* Define to 1 if the system has the type `_Bool'. */
+#undef HAVE__BOOL
+
+/* Define to 1 if you have the `_NSGetExecutablePath' function. */
+#undef HAVE__NSGETEXECUTABLEPATH
+
+/* Define as const if the declaration of iconv() needs const. */
+#undef ICONV_CONST
+
+/* Define to the value of ${prefix}, as a string. */
+#undef INSTALLPREFIX
+
+/* Define to the sub-directory in which libtool stores uninstalled libraries.
+   */
+#undef LT_OBJDIR
+
+/* If malloc(0) is != NULL, define this to 1. Otherwise define this to 0. */
+#undef MALLOC_0_IS_NONNULL
+
+/* Define to 1 if your C compiler doesn't accept -c and -o together. */
+#undef NO_MINUS_C_MINUS_O
+
+/* Name of package */
+#undef PACKAGE
+
+/* Define to the address where bug reports for this package should be sent. */
+#undef PACKAGE_BUGREPORT
+
+/* Define to the full name of this package. */
+#undef PACKAGE_NAME
+
+/* Define to the full name and version of this package. */
+#undef PACKAGE_STRING
+
+/* Define to the one symbol short name of this package. */
+#undef PACKAGE_TARNAME
+
+/* Define to the version of this package. */
+#undef PACKAGE_VERSION
+
+/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
+   'ptrdiff_t'. */
+#undef PTRDIFF_T_SUFFIX
+
+/* Define this to 1 if strerror is broken. */
+#undef REPLACE_STRERROR
+
+/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
+   'sig_atomic_t'. */
+#undef SIG_ATOMIC_T_SUFFIX
+
+/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
+   'size_t'. */
+#undef SIZE_T_SUFFIX
+
+/* If using the C implementation of alloca, define if you know the
+   direction of stack growth for your system; otherwise it will be
+   automatically deduced at runtime.
+	STACK_DIRECTION > 0 => grows toward higher addresses
+	STACK_DIRECTION < 0 => grows toward lower addresses
+	STACK_DIRECTION = 0 => direction of growth unknown */
+#undef STACK_DIRECTION
+
+/* Define to 1 if you have the ANSI C header files. */
+#undef STDC_HEADERS
+
+/* Define to 1 if strerror_r returns char *. */
+#undef STRERROR_R_CHAR_P
+
+/* Define to 1 if you want getc etc. to use unlocked I/O if available.
+   Unlocked I/O can improve performance in unithreaded apps, but it is not
+   safe for multithreaded apps. */
+#undef USE_UNLOCKED_IO
+
+/* Version number of package */
+#undef VERSION
+
+/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
+   'wchar_t'. */
+#undef WCHAR_T_SUFFIX
+
+/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
+   'wint_t'. */
+#undef WINT_T_SUFFIX
+
+/* Define if the machine's byte ordering is little endian. */
+#undef WORDS_LITTLEENDIAN
+
+/* Define to 1 if on MINIX. */
+#undef _MINIX
+
+/* Define to 2 if the system does not provide POSIX.1 features except with
+   this defined. */
+#undef _POSIX_1_SOURCE
+
+/* Define to 1 if you need to in order for `stat' and other things to work. */
+#undef _POSIX_SOURCE
+
+/* Define to 500 only on HP-UX. */
+#undef _XOPEN_SOURCE
+
+/* Enable extensions on AIX 3, Interix.  */
+#ifndef _ALL_SOURCE
+# undef _ALL_SOURCE
+#endif
+/* Enable GNU extensions on systems that have them.  */
+#ifndef _GNU_SOURCE
+# undef _GNU_SOURCE
+#endif
+/* Enable threading extensions on Solaris.  */
+#ifndef _POSIX_PTHREAD_SEMANTICS
+# undef _POSIX_PTHREAD_SEMANTICS
+#endif
+/* Enable extensions on HP NonStop.  */
+#ifndef _TANDEM_SOURCE
+# undef _TANDEM_SOURCE
+#endif
+/* Enable general extensions on Solaris.  */
+#ifndef __EXTENSIONS__
+# undef __EXTENSIONS__
+#endif
+
+
+/* Work around a bug in Apple GCC 4.0.1 build 5465: In C99 mode, it supports
+   the ISO C 99 semantics of 'extern inline' (unlike the GNU C semantics of
+   earlier versions), but does not display it by setting __GNUC_STDC_INLINE__.
+   __APPLE__ && __MACH__ test for MacOS X.
+   __APPLE_CC__ tests for the Apple compiler and its version.
+   __STDC_VERSION__ tests for the C99 mode.  */
+#if defined __APPLE__ && defined __MACH__ && __APPLE_CC__ >= 5465 && !defined __cplusplus && __STDC_VERSION__ >= 199901L && !defined __GNUC_STDC_INLINE__
+# define __GNUC_STDC_INLINE__ 1
+#endif
+
+/* Define to a type if <wchar.h> does not define. */
+#undef mbstate_t
+
+/* Define to a replacement function name for realpath(). */
+#undef realpath
+
+/* Define to the equivalent of the C99 'restrict' keyword, or to
+   nothing if this is not supported.  Do not define if restrict is
+   supported directly.  */
+#undef restrict
+/* Work around a bug in Sun C++: it does not support _Restrict, even
+   though the corresponding Sun C compiler does, which causes
+   "#define restrict _Restrict" in the previous line.  Perhaps some future
+   version of Sun C++ will work with _Restrict; if so, it'll probably
+   define __RESTRICT, just as Sun C does.  */
+#if defined __SUNPRO_CC && !defined __RESTRICT
+# define _Restrict
+#endif
+
+/* Define as a signed type of the same size as size_t. */
+#undef ssize_t
+
+/* Define as a marker that can be attached to function parameter declarations
+   for parameters that are not used.  This helps to reduce warnings, such as
+   from GCC -Wunused-parameter.  */
+#if __GNUC__ >= 3 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
+# define _UNUSED_PARAMETER_ __attribute__ ((__unused__))
+#else
+# define _UNUSED_PARAMETER_
+#endif
+
+
+
+/* On Windows, variables that may be in a DLL must be marked specially.  */
+#if defined _MSC_VER && defined _DLL
+# define DLL_VARIABLE __declspec (dllimport)
+#else
+# define DLL_VARIABLE
+#endif
+
diff --git a/graf2d/win32gdk/gdk/src/iconv/converters.h b/graf2d/win32gdk/gdk/src/iconv/converters.h
new file mode 100644
index 00000000000..f2cd366978b
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/converters.h
@@ -0,0 +1,297 @@
+/*
+ * Copyright (C) 1999-2002, 2004-2009 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/* This file defines all the converters. */
+
+
+/* Our own notion of wide character, as UCS-4, according to ISO-10646-1. */
+typedef unsigned int ucs4_t;
+
+/* State used by a conversion. 0 denotes the initial state. */
+typedef unsigned int state_t;
+
+/* iconv_t is an opaque type. This is the real iconv_t type. */
+typedef struct conv_struct * conv_t;
+
+/*
+ * Data type for conversion multibyte -> unicode
+ */
+struct mbtowc_funcs {
+  int (*xxx_mbtowc) (conv_t conv, ucs4_t *pwc, unsigned char const *s, int n);
+  /*
+   * int xxx_mbtowc (conv_t conv, ucs4_t *pwc, unsigned char const *s, int n)
+   * converts the byte sequence starting at s to a wide character. Up to n bytes
+   * are available at s. n is >= 1.
+   * Result is number of bytes consumed (if a wide character was read),
+   * or -1 if invalid, or -2 if n too small, or -2-(number of bytes consumed)
+   * if only a shift sequence was read.
+   */
+  int (*xxx_flushwc) (conv_t conv, ucs4_t *pwc);
+  /*
+   * int xxx_flushwc (conv_t conv, ucs4_t *pwc)
+   * returns to the initial state and stores the pending wide character, if any.
+   * Result is 1 (if a wide character was read) or 0 if none was pending.
+   */
+};
+
+/* Return code if invalid input after a shift sequence of n bytes was read.
+   (xxx_mbtowc) */
+#define RET_SHIFT_ILSEQ(n)  (-1-2*(n))
+/* Return code if invalid. (xxx_mbtowc) */
+#define RET_ILSEQ           RET_SHIFT_ILSEQ(0)
+/* Return code if only a shift sequence of n bytes was read. (xxx_mbtowc) */
+#define RET_TOOFEW(n)       (-2-2*(n))
+/* Retrieve the n from the encoded RET_... value. */
+#define DECODE_SHIFT_ILSEQ(r)  ((unsigned int)(RET_SHIFT_ILSEQ(0) - (r)) / 2)
+#define DECODE_TOOFEW(r)       ((unsigned int)(RET_TOOFEW(0) - (r)) / 2)
+
+/*
+ * Data type for conversion unicode -> multibyte
+ */
+struct wctomb_funcs {
+  int (*xxx_wctomb) (conv_t conv, unsigned char *r, ucs4_t wc, int n);
+  /*
+   * int xxx_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+   * converts the wide character wc to the character set xxx, and stores the
+   * result beginning at r. Up to n bytes may be written at r. n is >= 1.
+   * Result is number of bytes written, or -1 if invalid, or -2 if n too small.
+   */
+  int (*xxx_reset) (conv_t conv, unsigned char *r, int n);
+  /*
+   * int xxx_reset (conv_t conv, unsigned char *r, int n)
+   * stores a shift sequences returning to the initial state beginning at r.
+   * Up to n bytes may be written at r. n is >= 0.
+   * Result is number of bytes written, or -2 if n too small.
+   */
+};
+
+/* Return code if invalid. (xxx_wctomb) */
+#define RET_ILUNI      -1
+/* Return code if output buffer is too small. (xxx_wctomb, xxx_reset) */
+#define RET_TOOSMALL   -2
+
+/*
+ * Contents of a conversion descriptor.
+ */
+struct conv_struct {
+  struct loop_funcs lfuncs;
+  /* Input (conversion multibyte -> unicode) */
+  int iindex;
+  struct mbtowc_funcs ifuncs;
+  state_t istate;
+  /* Output (conversion unicode -> multibyte) */
+  int oindex;
+  struct wctomb_funcs ofuncs;
+  int oflags;
+  state_t ostate;
+  /* Operation flags */
+  int transliterate;
+  int discard_ilseq;
+  #ifndef LIBICONV_PLUG
+  struct iconv_fallbacks fallbacks;
+  struct iconv_hooks hooks;
+  #endif
+};
+
+/*
+ * Include all the converters.
+ */
+
+#include "ascii.h"
+
+/* General multi-byte encodings */
+#include "utf8.h"
+#include "ucs2.h"
+#include "ucs2be.h"
+#include "ucs2le.h"
+#include "ucs4.h"
+#include "ucs4be.h"
+#include "ucs4le.h"
+#include "utf16.h"
+#include "utf16be.h"
+#include "utf16le.h"
+#include "utf32.h"
+#include "utf32be.h"
+#include "utf32le.h"
+#include "utf7.h"
+#include "ucs2internal.h"
+#include "ucs2swapped.h"
+#include "ucs4internal.h"
+#include "ucs4swapped.h"
+#include "c99.h"
+#include "java.h"
+
+/* 8-bit encodings */
+#include "iso8859_1.h"
+#include "iso8859_2.h"
+#include "iso8859_3.h"
+#include "iso8859_4.h"
+#include "iso8859_5.h"
+#include "iso8859_6.h"
+#include "iso8859_7.h"
+#include "iso8859_8.h"
+#include "iso8859_9.h"
+#include "iso8859_10.h"
+#include "iso8859_11.h"
+#include "iso8859_13.h"
+#include "iso8859_14.h"
+#include "iso8859_15.h"
+#include "iso8859_16.h"
+#include "koi8_r.h"
+#include "koi8_u.h"
+#include "koi8_ru.h"
+#include "cp1250.h"
+#include "cp1251.h"
+#include "cp1252.h"
+#include "cp1253.h"
+#include "cp1254.h"
+#include "cp1255.h"
+#include "cp1256.h"
+#include "cp1257.h"
+#include "cp1258.h"
+#include "cp850.h"
+#include "cp862.h"
+#include "cp866.h"
+#include "cp1131.h"
+#include "mac_roman.h"
+#include "mac_centraleurope.h"
+#include "mac_iceland.h"
+#include "mac_croatian.h"
+#include "mac_romania.h"
+#include "mac_cyrillic.h"
+#include "mac_ukraine.h"
+#include "mac_greek.h"
+#include "mac_turkish.h"
+#include "mac_hebrew.h"
+#include "mac_arabic.h"
+#include "mac_thai.h"
+#include "hp_roman8.h"
+#include "nextstep.h"
+#include "armscii_8.h"
+#include "georgian_academy.h"
+#include "georgian_ps.h"
+#include "koi8_t.h"
+#include "pt154.h"
+#include "rk1048.h"
+#include "mulelao.h"
+#include "cp1133.h"
+#include "tis620.h"
+#include "cp874.h"
+#include "viscii.h"
+#include "tcvn.h"
+
+/* CJK character sets [CCS = coded character set] [CJKV.INF chapter 3] */
+
+typedef struct {
+  unsigned short indx; /* index into big table */
+  unsigned short used; /* bitmask of used entries */
+} Summary16;
+
+#include "iso646_jp.h"
+#include "jisx0201.h"
+#include "jisx0208.h"
+#include "jisx0212.h"
+
+#include "iso646_cn.h"
+#include "gb2312.h"
+#include "isoir165.h"
+/*#include "gb12345.h"*/
+#include "gbk.h"
+#include "cns11643.h"
+#include "big5.h"
+
+#include "ksc5601.h"
+#include "johab_hangul.h"
+
+/* CJK encodings [CES = character encoding scheme] [CJKV.INF chapter 4] */
+
+#include "euc_jp.h"
+#include "sjis.h"
+#include "cp932.h"
+#include "iso2022_jp.h"
+#include "iso2022_jp1.h"
+#include "iso2022_jp2.h"
+
+#include "euc_cn.h"
+#include "ces_gbk.h"
+#include "cp936.h"
+#include "gb18030.h"
+#include "iso2022_cn.h"
+#include "iso2022_cnext.h"
+#include "hz.h"
+#include "euc_tw.h"
+#include "ces_big5.h"
+#include "cp950.h"
+#include "big5hkscs1999.h"
+#include "big5hkscs2001.h"
+#include "big5hkscs2004.h"
+
+#include "euc_kr.h"
+#include "cp949.h"
+#include "johab.h"
+#include "iso2022_kr.h"
+
+/* Encodings used by system dependent locales. */
+
+#ifdef USE_AIX
+#include "cp856.h"
+#include "cp922.h"
+#include "cp943.h"
+#include "cp1046.h"
+#include "cp1124.h"
+#include "cp1129.h"
+#include "cp1161.h"
+#include "cp1162.h"
+#include "cp1163.h"
+#endif
+
+#ifdef USE_OSF1
+#include "dec_kanji.h"
+#include "dec_hanyu.h"
+#endif
+
+#ifdef USE_DOS
+#include "cp437.h"
+#include "cp737.h"
+#include "cp775.h"
+#include "cp852.h"
+#include "cp853.h"
+#include "cp855.h"
+#include "cp857.h"
+#include "cp858.h"
+#include "cp860.h"
+#include "cp861.h"
+#include "cp863.h"
+#include "cp864.h"
+#include "cp865.h"
+#include "cp869.h"
+#include "cp1125.h"
+#endif
+
+#ifdef USE_EXTRA
+#include "euc_jisx0213.h"
+#include "shift_jisx0213.h"
+#include "iso2022_jp3.h"
+#include "big5_2003.h"
+#include "tds565.h"
+#include "atarist.h"
+#include "riscos1.h"
+#endif
+
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp1046.h b/graf2d/win32gdk/gdk/src/iconv/cp1046.h
new file mode 100644
index 00000000000..b6716b73db3
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp1046.h
@@ -0,0 +1,157 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP1046
+ */
+
+static const unsigned short cp1046_2uni[128] = {
+  /* 0x80 */
+  0xfe88, 0x00d7, 0x00f7, 0xf8f6, 0xf8f5, 0xf8f4, 0xf8f7, 0xfe71,
+  0x0088, 0x25a0, 0x2502, 0x2500, 0x2510, 0x250c, 0x2514, 0x2518,
+  /* 0x90 */
+  0xfe79, 0xfe7b, 0xfe7d, 0xfe7f, 0xfe77, 0xfe8a, 0xfef0, 0xfef3,
+  0xfef2, 0xfece, 0xfecf, 0xfed0, 0xfef6, 0xfef8, 0xfefa, 0xfefc,
+  /* 0xa0 */
+  0x00a0, 0xf8fa, 0xf8f9, 0xf8f8, 0x00a4, 0xf8fb, 0xfe8b, 0xfe91,
+  0xfe97, 0xfe9b, 0xfe9f, 0xfea3, 0x060c, 0x00ad, 0xfea7, 0xfeb3,
+  /* 0xb0 */
+  0x0660, 0x0661, 0x0662, 0x0663, 0x0664, 0x0665, 0x0666, 0x0667,
+  0x0668, 0x0669, 0xfeb7, 0x061b, 0xfebb, 0xfebf, 0xfeca, 0x061f,
+  /* 0xc0 */
+  0xfecb, 0x0621, 0x0622, 0x0623, 0x0624, 0x0625, 0x0626, 0x0627,
+  0x0628, 0x0629, 0x062a, 0x062b, 0x062c, 0x062d, 0x062e, 0x062f,
+  /* 0xd0 */
+  0x0630, 0x0631, 0x0632, 0x0633, 0x0634, 0x0635, 0x0636, 0x0637,
+  0xfec7, 0x0639, 0x063a, 0xfecc, 0xfe82, 0xfe84, 0xfe8e, 0xfed3,
+  /* 0xe0 */
+  0x0640, 0x0641, 0x0642, 0x0643, 0x0644, 0x0645, 0x0646, 0x0647,
+  0x0648, 0x0649, 0x064a, 0x064b, 0x064c, 0x064d, 0x064e, 0x064f,
+  /* 0xf0 */
+  0x0650, 0x0651, 0x0652, 0xfed7, 0xfedb, 0xfedf, 0xf8fc, 0xfef5,
+  0xfef7, 0xfef9, 0xfefb, 0xfee3, 0xfee7, 0xfeec, 0xfee9, 0xfffd,
+};
+
+static int
+cp1046_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = cp1046_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char cp1046_page00[112] = {
+  0x88, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xa0, 0x00, 0x00, 0x00, 0xa4, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0xad, 0x00, 0x00, /* 0xa8-0xaf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x82, /* 0xf0-0xf7 */
+};
+static const unsigned char cp1046_page06[104] = {
+  0x00, 0x00, 0x00, 0x00, 0xac, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0xbb, 0x00, 0x00, 0x00, 0xbf, /* 0x18-0x1f */
+  0x00, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x20-0x27 */
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x28-0x2f */
+  0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0x30-0x37 */
+  0x00, 0xd9, 0xda, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x40-0x47 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x48-0x4f */
+  0xf0, 0xf1, 0xf2, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0x60-0x67 */
+  0xb8, 0xb9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+};
+static const unsigned char cp1046_page25[32] = {
+  0x8b, 0x00, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x8d, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x8c, 0x00, 0x00, 0x00, 0x8e, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x8f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+};
+static const unsigned char cp1046_pagef8[16] = {
+  0x00, 0x00, 0x00, 0x00, 0x85, 0x84, 0x83, 0x86, /* 0xf0-0xf7 */
+  0xa3, 0xa2, 0xa1, 0xa5, 0xf6, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+};
+static const unsigned char cp1046_pagefe[144] = {
+  0x00, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00, 0x94, /* 0x70-0x77 */
+  0x00, 0x90, 0x00, 0x91, 0x00, 0x92, 0x00, 0x93, /* 0x78-0x7f */
+  0x00, 0x00, 0xdc, 0x00, 0xdd, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x80, 0x00, 0x95, 0xa6, 0x00, 0x00, 0xde, 0x00, /* 0x88-0x8f */
+  0x00, 0xa7, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0xa9, 0x00, 0x00, 0x00, 0xaa, /* 0x98-0x9f */
+  0x00, 0x00, 0x00, 0xab, 0x00, 0x00, 0x00, 0xae, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x00, 0x00, 0x00, 0xaf, 0x00, 0x00, 0x00, 0xba, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0xbc, 0x00, 0x00, 0x00, 0xbd, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, /* 0xc0-0xc7 */
+  0x00, 0x00, 0xbe, 0xc0, 0xdb, 0x00, 0x99, 0x9a, /* 0xc8-0xcf */
+  0x9b, 0x00, 0x00, 0xdf, 0x00, 0x00, 0x00, 0xf3, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0xf4, 0x00, 0x00, 0x00, 0xf5, /* 0xd8-0xdf */
+  0x00, 0x00, 0x00, 0xfb, 0x00, 0x00, 0x00, 0xfc, /* 0xe0-0xe7 */
+  0x00, 0xfe, 0x00, 0x00, 0xfd, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+  0x96, 0x00, 0x98, 0x97, 0x00, 0xf7, 0x9c, 0xf8, /* 0xf0-0xf7 */
+  0x9d, 0xf9, 0x9e, 0xfa, 0x9f, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+};
+
+static int
+cp1046_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x0088 && wc < 0x00f8)
+    c = cp1046_page00[wc-0x0088];
+  else if (wc >= 0x0608 && wc < 0x0670)
+    c = cp1046_page06[wc-0x0608];
+  else if (wc >= 0x2500 && wc < 0x2520)
+    c = cp1046_page25[wc-0x2500];
+  else if (wc == 0x25a0)
+    c = 0x89;
+  else if (wc >= 0xf8f0 && wc < 0xf900)
+    c = cp1046_pagef8[wc-0xf8f0];
+  else if (wc >= 0xfe70 && wc < 0xff00)
+    c = cp1046_pagefe[wc-0xfe70];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp1124.h b/graf2d/win32gdk/gdk/src/iconv/cp1124.h
new file mode 100644
index 00000000000..8b97a7e8515
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp1124.h
@@ -0,0 +1,102 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP1124
+ */
+
+static const unsigned short cp1124_2uni[96] = {
+  /* 0xa0 */
+  0x00a0, 0x0401, 0x0402, 0x0490, 0x0404, 0x0405, 0x0406, 0x0407,
+  0x0408, 0x0409, 0x040a, 0x040b, 0x040c, 0x00ad, 0x040e, 0x040f,
+  /* 0xb0 */
+  0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417,
+  0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e, 0x041f,
+  /* 0xc0 */
+  0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427,
+  0x0428, 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e, 0x042f,
+  /* 0xd0 */
+  0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437,
+  0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f,
+  /* 0xe0 */
+  0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
+  0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x044f,
+  /* 0xf0 */
+  0x2116, 0x0451, 0x0452, 0x0491, 0x0454, 0x0455, 0x0456, 0x0457,
+  0x0458, 0x0459, 0x045a, 0x045b, 0x045c, 0x00a7, 0x045e, 0x045f,
+};
+
+static int
+cp1124_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0xa0)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) cp1124_2uni[c-0xa0];
+  return 1;
+}
+
+static const unsigned char cp1124_page00[16] = {
+  0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfd, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0xad, 0x00, 0x00, /* 0xa8-0xaf */
+};
+static const unsigned char cp1124_page04[152] = {
+  0x00, 0xa1, 0xa2, 0x00, 0xa4, 0xa5, 0xa6, 0xa7, /* 0x00-0x07 */
+  0xa8, 0xa9, 0xaa, 0xab, 0xac, 0x00, 0xae, 0xaf, /* 0x08-0x0f */
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0x10-0x17 */
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, /* 0x18-0x1f */
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x20-0x27 */
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x28-0x2f */
+  0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0x30-0x37 */
+  0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, /* 0x38-0x3f */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x40-0x47 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x48-0x4f */
+  0x00, 0xf1, 0xf2, 0x00, 0xf4, 0xf5, 0xf6, 0xf7, /* 0x50-0x57 */
+  0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0x00, 0xfe, 0xff, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0xa3, 0xf3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+
+static int
+cp1124_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a0) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00b0)
+    c = cp1124_page00[wc-0x00a0];
+  else if (wc >= 0x0400 && wc < 0x0498)
+    c = cp1124_page04[wc-0x0400];
+  else if (wc == 0x2116)
+    c = 0xf0;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp1125.h b/graf2d/win32gdk/gdk/src/iconv/cp1125.h
new file mode 100644
index 00000000000..802f0742d6c
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp1125.h
@@ -0,0 +1,129 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP1125
+ */
+
+static const unsigned short cp1125_2uni[80] = {
+  /* 0xb0 */
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+  0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+  /* 0xc0 */
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+  /* 0xd0 */
+  0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+  0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+  /* 0xe0 */
+  0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
+  0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x044f,
+  /* 0xf0 */
+  0x0401, 0x0451, 0x0490, 0x0491, 0x0404, 0x0454, 0x0406, 0x0456,
+  0x0407, 0x0457, 0x00b7, 0x221a, 0x2116, 0x00a4, 0x25a0, 0x00a0,
+};
+
+static int
+cp1125_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else if (c < 0xb0)
+    *pwc = (ucs4_t) c + 0x0390;
+  else
+    *pwc = (ucs4_t) cp1125_2uni[c-0xb0];
+  return 1;
+}
+
+static const unsigned char cp1125_page00[24] = {
+  0xff, 0x00, 0x00, 0x00, 0xfd, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfa, /* 0xb0-0xb7 */
+};
+static const unsigned char cp1125_page04[152] = {
+  0x00, 0xf0, 0x00, 0x00, 0xf4, 0x00, 0xf6, 0xf8, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, /* 0x10-0x17 */
+  0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, /* 0x18-0x1f */
+  0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, /* 0x20-0x27 */
+  0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, /* 0x28-0x2f */
+  0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, /* 0x30-0x37 */
+  0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, /* 0x38-0x3f */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x40-0x47 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x48-0x4f */
+  0x00, 0xf1, 0x00, 0x00, 0xf5, 0x00, 0xf7, 0xf9, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0xf2, 0xf3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char cp1125_page25[168] = {
+  0xc4, 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xbf, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd9, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xcd, 0xba, 0xd5, 0xd6, 0xc9, 0xb8, 0xb7, 0xbb, /* 0x50-0x57 */
+  0xd4, 0xd3, 0xc8, 0xbe, 0xbd, 0xbc, 0xc6, 0xc7, /* 0x58-0x5f */
+  0xcc, 0xb5, 0xb6, 0xb9, 0xd1, 0xd2, 0xcb, 0xcf, /* 0x60-0x67 */
+  0xd0, 0xca, 0xd8, 0xd7, 0xce, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xdf, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0xdb, 0x00, 0x00, 0x00, 0xdd, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0xde, 0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+cp1125_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00b8)
+    c = cp1125_page00[wc-0x00a0];
+  else if (wc >= 0x0400 && wc < 0x0498)
+    c = cp1125_page04[wc-0x0400];
+  else if (wc == 0x2116)
+    c = 0xfc;
+  else if (wc == 0x221a)
+    c = 0xfb;
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = cp1125_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp1129.h b/graf2d/win32gdk/gdk/src/iconv/cp1129.h
new file mode 100644
index 00000000000..1b7cff85943
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp1129.h
@@ -0,0 +1,121 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP1129
+ */
+
+static const unsigned short cp1129_2uni[96] = {
+  /* 0xa0 */
+  0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+  0x0153, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
+  /* 0xb0 */
+  0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x0178, 0x00b5, 0x00b6, 0x00b7,
+  0x0152, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
+  /* 0xc0 */
+  0x00c0, 0x00c1, 0x00c2, 0x0102, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
+  0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x0300, 0x00cd, 0x00ce, 0x00cf,
+  /* 0xd0 */
+  0x0110, 0x00d1, 0x0309, 0x00d3, 0x00d4, 0x01a0, 0x00d6, 0x00d7,
+  0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x01af, 0x0303, 0x00df,
+  /* 0xe0 */
+  0x00e0, 0x00e1, 0x00e2, 0x0103, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
+  0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x0301, 0x00ed, 0x00ee, 0x00ef,
+  /* 0xf0 */
+  0x0111, 0x00f1, 0x0323, 0x00f3, 0x00f4, 0x01a1, 0x00f6, 0x00f7,
+  0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x01b0, 0x20ab, 0x00ff,
+};
+
+static int
+cp1129_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0xa0)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) cp1129_2uni[c-0xa0];
+  return 1;
+}
+
+static const unsigned char cp1129_page00[272] = {
+  0x00, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, /* 0xa8-0xaf */
+  0xb0, 0xb1, 0xb2, 0xb3, 0x00, 0xb5, 0xb6, 0xb7, /* 0xb0-0xb7 */
+  0x00, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, /* 0xb8-0xbf */
+  0xc0, 0xc1, 0xc2, 0x00, 0xc4, 0xc5, 0xc6, 0xc7, /* 0xc0-0xc7 */
+  0xc8, 0xc9, 0xca, 0xcb, 0x00, 0xcd, 0xce, 0xcf, /* 0xc8-0xcf */
+  0x00, 0xd1, 0x00, 0xd3, 0xd4, 0x00, 0xd6, 0xd7, /* 0xd0-0xd7 */
+  0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0x00, 0x00, 0xdf, /* 0xd8-0xdf */
+  0xe0, 0xe1, 0xe2, 0x00, 0xe4, 0xe5, 0xe6, 0xe7, /* 0xe0-0xe7 */
+  0xe8, 0xe9, 0xea, 0xeb, 0x00, 0xed, 0xee, 0xef, /* 0xe8-0xef */
+  0x00, 0xf1, 0x00, 0xf3, 0xf4, 0x00, 0xf6, 0xf7, /* 0xf0-0xf7 */
+  0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0x00, 0x00, 0xff, /* 0xf8-0xff */
+  /* 0x0100 */
+  0x00, 0x00, 0xc3, 0xe3, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xd0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0xb8, 0xa8, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0xb4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xd5, 0xf5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdd, /* 0xa8-0xaf */
+  0xfd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+};
+static const unsigned char cp1129_page03[40] = {
+  0xcc, 0xec, 0x00, 0xde, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0xd2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0xf2, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+};
+
+static int
+cp1129_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a8) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a8 && wc < 0x01b8)
+    c = cp1129_page00[wc-0x00a8];
+  else if (wc >= 0x0300 && wc < 0x0328)
+    c = cp1129_page03[wc-0x0300];
+  else if (wc == 0x20ab)
+    c = 0xfe;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp1131.h b/graf2d/win32gdk/gdk/src/iconv/cp1131.h
new file mode 100644
index 00000000000..15f4ed2accf
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp1131.h
@@ -0,0 +1,132 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP1131
+ */
+
+static const unsigned short cp1131_2uni[128] = {
+  /* 0x80 */
+  0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417,
+  0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e, 0x041f,
+  /* 0x90 */
+  0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427,
+  0x0428, 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e, 0x042f,
+  /* 0xa0 */
+  0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437,
+  0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f,
+  /* 0xb0 */
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+  0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+  /* 0xc0 */
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+  /* 0xd0 */
+  0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+  0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+  /* 0xe0 */
+  0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
+  0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x044f,
+  /* 0xf0 */
+  0x0401, 0x0451, 0x0404, 0x0454, 0x0407, 0x0457, 0x040e, 0x045e,
+  0x0406, 0x0456, 0x00b7, 0x00a4, 0x0490, 0x0491, 0x2219, 0x00a0,
+};
+
+static int
+cp1131_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) cp1131_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char cp1131_page00[24] = {
+  0xff, 0x00, 0x00, 0x00, 0xfb, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfa, /* 0xb0-0xb7 */
+};
+static const unsigned char cp1131_page04[152] = {
+  0x00, 0xf0, 0x00, 0x00, 0xf2, 0x00, 0xf8, 0xf4, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf6, 0x00, /* 0x08-0x0f */
+  0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, /* 0x10-0x17 */
+  0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, /* 0x18-0x1f */
+  0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, /* 0x20-0x27 */
+  0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, /* 0x28-0x2f */
+  0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, /* 0x30-0x37 */
+  0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, /* 0x38-0x3f */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x40-0x47 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x48-0x4f */
+  0x00, 0xf1, 0x00, 0x00, 0xf3, 0x00, 0xf9, 0xf5, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf7, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0xfc, 0xfd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char cp1131_page25[152] = {
+  0xc4, 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xbf, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd9, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xcd, 0xba, 0xd5, 0xd6, 0xc9, 0xb8, 0xb7, 0xbb, /* 0x50-0x57 */
+  0xd4, 0xd3, 0xc8, 0xbe, 0xbd, 0xbc, 0xc6, 0xc7, /* 0x58-0x5f */
+  0xcc, 0xb5, 0xb6, 0xb9, 0xd1, 0xd2, 0xcb, 0xcf, /* 0x60-0x67 */
+  0xd0, 0xca, 0xd8, 0xd7, 0xce, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xdf, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0xdb, 0x00, 0x00, 0x00, 0xdd, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0xde, 0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+
+static int
+cp1131_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00b8)
+    c = cp1131_page00[wc-0x00a0];
+  else if (wc >= 0x0400 && wc < 0x0498)
+    c = cp1131_page04[wc-0x0400];
+  else if (wc == 0x2219)
+    c = 0xfe;
+  else if (wc >= 0x2500 && wc < 0x2598)
+    c = cp1131_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp1133.h b/graf2d/win32gdk/gdk/src/iconv/cp1133.h
new file mode 100644
index 00000000000..a16d93f1a46
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp1133.h
@@ -0,0 +1,110 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * IBM-CP1133
+ */
+
+static const unsigned short cp1133_2uni_1[64] = {
+  /* 0xa0 */
+  0x00a0, 0x0e81, 0x0e82, 0x0e84, 0x0e87, 0x0e88, 0x0eaa, 0x0e8a,
+  0x0e8d, 0x0e94, 0x0e95, 0x0e96, 0x0e97, 0x0e99, 0x0e9a, 0x0e9b,
+  /* 0xb0 */
+  0x0e9c, 0x0e9d, 0x0e9e, 0x0e9f, 0x0ea1, 0x0ea2, 0x0ea3, 0x0ea5,
+  0x0ea7, 0x0eab, 0x0ead, 0x0eae, 0xfffd, 0xfffd, 0xfffd, 0x0eaf,
+  /* 0xc0 */
+  0x0eb0, 0x0eb2, 0x0eb3, 0x0eb4, 0x0eb5, 0x0eb6, 0x0eb7, 0x0eb8,
+  0x0eb9, 0x0ebc, 0x0eb1, 0x0ebb, 0x0ebd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0xd0 */
+  0x0ec0, 0x0ec1, 0x0ec2, 0x0ec3, 0x0ec4, 0x0ec8, 0x0ec9, 0x0eca,
+  0x0ecb, 0x0ecc, 0x0ecd, 0x0ec6, 0xfffd, 0x0edc, 0x0edd, 0x20ad,
+};
+static const unsigned short cp1133_2uni_2[16] = {
+  /* 0xf0 */
+  0x0ed0, 0x0ed1, 0x0ed2, 0x0ed3, 0x0ed4, 0x0ed5, 0x0ed6, 0x0ed7,
+  0x0ed8, 0x0ed9, 0xfffd, 0xfffd, 0x00a2, 0x00ac, 0x00a6, 0xfffd,
+};
+
+static int
+cp1133_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0xa0) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else if (c < 0xe0) {
+    unsigned short wc = cp1133_2uni_1[c-0xa0];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  else if (c < 0xf0) {
+  }
+  else {
+    unsigned short wc = cp1133_2uni_2[c-0xf0];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char cp1133_page00[16] = {
+  0xa0, 0x00, 0xfc, 0x00, 0x00, 0x00, 0xfe, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0xfd, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+};
+static const unsigned char cp1133_page0e[96] = {
+  0x00, 0xa1, 0xa2, 0x00, 0xa3, 0x00, 0x00, 0xa4, /* 0x80-0x87 */
+  0xa5, 0x00, 0xa7, 0x00, 0x00, 0xa8, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0x00, 0x00, 0xa9, 0xaa, 0xab, 0xac, /* 0x90-0x97 */
+  0x00, 0xad, 0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, /* 0x98-0x9f */
+  0x00, 0xb4, 0xb5, 0xb6, 0x00, 0xb7, 0x00, 0xb8, /* 0xa0-0xa7 */
+  0x00, 0x00, 0xa6, 0xb9, 0x00, 0xba, 0xbb, 0xbf, /* 0xa8-0xaf */
+  0xc0, 0xca, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, /* 0xb0-0xb7 */
+  0xc7, 0xc8, 0x00, 0xcb, 0xc9, 0xcc, 0x00, 0x00, /* 0xb8-0xbf */
+  0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0x00, 0xdb, 0x00, /* 0xc0-0xc7 */
+  0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0x00, 0x00, /* 0xc8-0xcf */
+  0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0xd0-0xd7 */
+  0xf8, 0xf9, 0x00, 0x00, 0xdd, 0xde, 0x00, 0x00, /* 0xd8-0xdf */
+};
+
+static int
+cp1133_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a0) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00b0)
+    c = cp1133_page00[wc-0x00a0];
+  else if (wc >= 0x0e80 && wc < 0x0ee0)
+    c = cp1133_page0e[wc-0x0e80];
+  else if (wc == 0x20ad)
+    c = 0xdf;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp1161.h b/graf2d/win32gdk/gdk/src/iconv/cp1161.h
new file mode 100644
index 00000000000..b6349c67c4c
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp1161.h
@@ -0,0 +1,89 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP1161
+ */
+
+static const unsigned short cp1161_2uni[96] = {
+  /* 0xa0 */
+  0x0e48, 0x0e01, 0x0e02, 0x0e03, 0x0e04, 0x0e05, 0x0e06, 0x0e07,
+  0x0e08, 0x0e09, 0x0e0a, 0x0e0b, 0x0e0c, 0x0e0d, 0x0e0e, 0x0e0f,
+  /* 0xb0 */
+  0x0e10, 0x0e11, 0x0e12, 0x0e13, 0x0e14, 0x0e15, 0x0e16, 0x0e17,
+  0x0e18, 0x0e19, 0x0e1a, 0x0e1b, 0x0e1c, 0x0e1d, 0x0e1e, 0x0e1f,
+  /* 0xc0 */
+  0x0e20, 0x0e21, 0x0e22, 0x0e23, 0x0e24, 0x0e25, 0x0e26, 0x0e27,
+  0x0e28, 0x0e29, 0x0e2a, 0x0e2b, 0x0e2c, 0x0e2d, 0x0e2e, 0x0e2f,
+  /* 0xd0 */
+  0x0e30, 0x0e31, 0x0e32, 0x0e33, 0x0e34, 0x0e35, 0x0e36, 0x0e37,
+  0x0e38, 0x0e39, 0x0e3a, 0x0e49, 0x0e4a, 0x0e4b, 0x20ac, 0x0e3f,
+  /* 0xe0 */
+  0x0e40, 0x0e41, 0x0e42, 0x0e43, 0x0e44, 0x0e45, 0x0e46, 0x0e47,
+  0x0e48, 0x0e49, 0x0e4a, 0x0e4b, 0x0e4c, 0x0e4d, 0x0e4e, 0x0e4f,
+  /* 0xf0 */
+  0x0e50, 0x0e51, 0x0e52, 0x0e53, 0x0e54, 0x0e55, 0x0e56, 0x0e57,
+  0x0e58, 0x0e59, 0x0e5a, 0x0e5b, 0x00a2, 0x00ac, 0x00a6, 0x00a0,
+};
+
+static int
+cp1161_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else if (c < 0xa0) {
+  }
+  else {
+    *pwc = (ucs4_t) cp1161_2uni[c-0xa0];
+    return 1;
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char cp1161_page00[16] = {
+  0xff, 0x00, 0xfc, 0x00, 0x00, 0x00, 0xfe, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0xfd, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+};
+
+static int
+cp1161_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00b0)
+    c = cp1161_page00[wc-0x00a0];
+  else if (wc >= 0x0e48 && wc < 0x0e4c)
+    c = wc-0x0d60;
+  else if (wc >= 0x0e00 && wc < 0x0e60)
+    c = cp874_page0e[wc-0x0e00];
+  else if (wc == 0x20ac)
+    c = 0xde;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp1162.h b/graf2d/win32gdk/gdk/src/iconv/cp1162.h
new file mode 100644
index 00000000000..6c7fa82ae5d
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp1162.h
@@ -0,0 +1,70 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP1162
+ */
+
+static int
+cp1162_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = cp874_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+    if (c < 0xa0) {
+      *pwc = (ucs4_t) c;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static int
+cp1162_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x0080 && wc < 0x00a0 && cp874_2uni[wc-0x0080] == 0xfffd)
+    c = wc;
+  else if (wc == 0x00a0)
+    c = 0xa0;
+  else if (wc >= 0x0e00 && wc < 0x0e60)
+    c = cp874_page0e[wc-0x0e00];
+  else if (wc >= 0x2010 && wc < 0x2028)
+    c = cp874_page20[wc-0x2010];
+  else if (wc == 0x20ac)
+    c = 0x80;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp1163.h b/graf2d/win32gdk/gdk/src/iconv/cp1163.h
new file mode 100644
index 00000000000..ca5d0b07d11
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp1163.h
@@ -0,0 +1,63 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP1163
+ */
+
+static int
+cp1163_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0xa0)
+    *pwc = (ucs4_t) c;
+  else if (c == 0xa4)
+    *pwc = 0x20ac;
+  else
+    *pwc = (ucs4_t) cp1129_2uni[c-0xa0];
+  return 1;
+}
+
+static const unsigned char cp1163_page20[8] = {
+  0x00, 0x00, 0x00, 0xfe, 0xa4, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+};
+
+static int
+cp1163_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a0 || (wc < 0x00a8 && wc != 0x00a4) || wc == 0x00d0) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a8 && wc < 0x01b8)
+    c = cp1129_page00[wc-0x00a8];
+  else if (wc >= 0x0300 && wc < 0x0328)
+    c = cp1129_page03[wc-0x0300];
+  else if (wc == 0x203e)
+    c = 0xaf;
+  else if (wc >= 0x20a8 && wc < 0x20b0)
+    c = cp1163_page20[wc-0x20a8];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp1250.h b/graf2d/win32gdk/gdk/src/iconv/cp1250.h
new file mode 100644
index 00000000000..b89300fecb8
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp1250.h
@@ -0,0 +1,139 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP1250
+ */
+
+static const unsigned short cp1250_2uni[128] = {
+  /* 0x80 */
+  0x20ac, 0xfffd, 0x201a, 0xfffd, 0x201e, 0x2026, 0x2020, 0x2021,
+  0xfffd, 0x2030, 0x0160, 0x2039, 0x015a, 0x0164, 0x017d, 0x0179,
+  /* 0x90 */
+  0xfffd, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+  0xfffd, 0x2122, 0x0161, 0x203a, 0x015b, 0x0165, 0x017e, 0x017a,
+  /* 0xa0 */
+  0x00a0, 0x02c7, 0x02d8, 0x0141, 0x00a4, 0x0104, 0x00a6, 0x00a7,
+  0x00a8, 0x00a9, 0x015e, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x017b,
+  /* 0xb0 */
+  0x00b0, 0x00b1, 0x02db, 0x0142, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+  0x00b8, 0x0105, 0x015f, 0x00bb, 0x013d, 0x02dd, 0x013e, 0x017c,
+  /* 0xc0 */
+  0x0154, 0x00c1, 0x00c2, 0x0102, 0x00c4, 0x0139, 0x0106, 0x00c7,
+  0x010c, 0x00c9, 0x0118, 0x00cb, 0x011a, 0x00cd, 0x00ce, 0x010e,
+  /* 0xd0 */
+  0x0110, 0x0143, 0x0147, 0x00d3, 0x00d4, 0x0150, 0x00d6, 0x00d7,
+  0x0158, 0x016e, 0x00da, 0x0170, 0x00dc, 0x00dd, 0x0162, 0x00df,
+  /* 0xe0 */
+  0x0155, 0x00e1, 0x00e2, 0x0103, 0x00e4, 0x013a, 0x0107, 0x00e7,
+  0x010d, 0x00e9, 0x0119, 0x00eb, 0x011b, 0x00ed, 0x00ee, 0x010f,
+  /* 0xf0 */
+  0x0111, 0x0144, 0x0148, 0x00f3, 0x00f4, 0x0151, 0x00f6, 0x00f7,
+  0x0159, 0x016f, 0x00fa, 0x0171, 0x00fc, 0x00fd, 0x0163, 0x02d9,
+};
+
+static int
+cp1250_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = cp1250_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char cp1250_page00[224] = {
+  0xa0, 0x00, 0x00, 0x00, 0xa4, 0x00, 0xa6, 0xa7, /* 0xa0-0xa7 */
+  0xa8, 0xa9, 0x00, 0xab, 0xac, 0xad, 0xae, 0x00, /* 0xa8-0xaf */
+  0xb0, 0xb1, 0x00, 0x00, 0xb4, 0xb5, 0xb6, 0xb7, /* 0xb0-0xb7 */
+  0xb8, 0x00, 0x00, 0xbb, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0xc1, 0xc2, 0x00, 0xc4, 0x00, 0x00, 0xc7, /* 0xc0-0xc7 */
+  0x00, 0xc9, 0x00, 0xcb, 0x00, 0xcd, 0xce, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0xd3, 0xd4, 0x00, 0xd6, 0xd7, /* 0xd0-0xd7 */
+  0x00, 0x00, 0xda, 0x00, 0xdc, 0xdd, 0x00, 0xdf, /* 0xd8-0xdf */
+  0x00, 0xe1, 0xe2, 0x00, 0xe4, 0x00, 0x00, 0xe7, /* 0xe0-0xe7 */
+  0x00, 0xe9, 0x00, 0xeb, 0x00, 0xed, 0xee, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0xf3, 0xf4, 0x00, 0xf6, 0xf7, /* 0xf0-0xf7 */
+  0x00, 0x00, 0xfa, 0x00, 0xfc, 0xfd, 0x00, 0x00, /* 0xf8-0xff */
+  /* 0x0100 */
+  0x00, 0x00, 0xc3, 0xe3, 0xa5, 0xb9, 0xc6, 0xe6, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xc8, 0xe8, 0xcf, 0xef, /* 0x08-0x0f */
+  0xd0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xca, 0xea, 0xcc, 0xec, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0xc5, 0xe5, 0x00, 0x00, 0xbc, 0xbe, 0x00, /* 0x38-0x3f */
+  0x00, 0xa3, 0xb3, 0xd1, 0xf1, 0x00, 0x00, 0xd2, /* 0x40-0x47 */
+  0xf2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xd5, 0xf5, 0x00, 0x00, 0xc0, 0xe0, 0x00, 0x00, /* 0x50-0x57 */
+  0xd8, 0xf8, 0x8c, 0x9c, 0x00, 0x00, 0xaa, 0xba, /* 0x58-0x5f */
+  0x8a, 0x9a, 0xde, 0xfe, 0x8d, 0x9d, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd9, 0xf9, /* 0x68-0x6f */
+  0xdb, 0xfb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x8f, 0x9f, 0xaf, 0xbf, 0x8e, 0x9e, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char cp1250_page02[32] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa1, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0xa2, 0xff, 0x00, 0xb2, 0x00, 0xbd, 0x00, 0x00, /* 0xd8-0xdf */
+};
+static const unsigned char cp1250_page20[48] = {
+  0x00, 0x00, 0x00, 0x96, 0x97, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x91, 0x92, 0x82, 0x00, 0x93, 0x94, 0x84, 0x00, /* 0x18-0x1f */
+  0x86, 0x87, 0x95, 0x00, 0x00, 0x00, 0x85, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x89, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x8b, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+};
+
+static int
+cp1250_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0180)
+    c = cp1250_page00[wc-0x00a0];
+  else if (wc >= 0x02c0 && wc < 0x02e0)
+    c = cp1250_page02[wc-0x02c0];
+  else if (wc >= 0x2010 && wc < 0x2040)
+    c = cp1250_page20[wc-0x2010];
+  else if (wc == 0x20ac)
+    c = 0x80;
+  else if (wc == 0x2122)
+    c = 0x99;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp1251.h b/graf2d/win32gdk/gdk/src/iconv/cp1251.h
new file mode 100644
index 00000000000..0fa540db490
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp1251.h
@@ -0,0 +1,131 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP1251
+ */
+
+static const unsigned short cp1251_2uni[128] = {
+  /* 0x80 */
+  0x0402, 0x0403, 0x201a, 0x0453, 0x201e, 0x2026, 0x2020, 0x2021,
+  0x20ac, 0x2030, 0x0409, 0x2039, 0x040a, 0x040c, 0x040b, 0x040f,
+  /* 0x90 */
+  0x0452, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+  0xfffd, 0x2122, 0x0459, 0x203a, 0x045a, 0x045c, 0x045b, 0x045f,
+  /* 0xa0 */
+  0x00a0, 0x040e, 0x045e, 0x0408, 0x00a4, 0x0490, 0x00a6, 0x00a7,
+  0x0401, 0x00a9, 0x0404, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x0407,
+  /* 0xb0 */
+  0x00b0, 0x00b1, 0x0406, 0x0456, 0x0491, 0x00b5, 0x00b6, 0x00b7,
+  0x0451, 0x2116, 0x0454, 0x00bb, 0x0458, 0x0405, 0x0455, 0x0457,
+  /* 0xc0 */
+  0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417,
+  0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e, 0x041f,
+  /* 0xd0 */
+  0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427,
+  0x0428, 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e, 0x042f,
+  /* 0xe0 */
+  0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437,
+  0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f,
+  /* 0xf0 */
+  0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
+  0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x044f,
+};
+
+static int
+cp1251_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = cp1251_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char cp1251_page00[32] = {
+  0xa0, 0x00, 0x00, 0x00, 0xa4, 0x00, 0xa6, 0xa7, /* 0xa0-0xa7 */
+  0x00, 0xa9, 0x00, 0xab, 0xac, 0xad, 0xae, 0x00, /* 0xa8-0xaf */
+  0xb0, 0xb1, 0x00, 0x00, 0x00, 0xb5, 0xb6, 0xb7, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0xbb, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+};
+static const unsigned char cp1251_page04[152] = {
+  0x00, 0xa8, 0x80, 0x81, 0xaa, 0xbd, 0xb2, 0xaf, /* 0x00-0x07 */
+  0xa3, 0x8a, 0x8c, 0x8e, 0x8d, 0x00, 0xa1, 0x8f, /* 0x08-0x0f */
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x10-0x17 */
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x18-0x1f */
+  0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0x20-0x27 */
+  0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, /* 0x28-0x2f */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x30-0x37 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x38-0x3f */
+  0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0x40-0x47 */
+  0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff, /* 0x48-0x4f */
+  0x00, 0xb8, 0x90, 0x83, 0xba, 0xbe, 0xb3, 0xbf, /* 0x50-0x57 */
+  0xbc, 0x9a, 0x9c, 0x9e, 0x9d, 0x00, 0xa2, 0x9f, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0xa5, 0xb4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char cp1251_page20[48] = {
+  0x00, 0x00, 0x00, 0x96, 0x97, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x91, 0x92, 0x82, 0x00, 0x93, 0x94, 0x84, 0x00, /* 0x18-0x1f */
+  0x86, 0x87, 0x95, 0x00, 0x00, 0x00, 0x85, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x89, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x8b, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+};
+
+static int
+cp1251_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00c0)
+    c = cp1251_page00[wc-0x00a0];
+  else if (wc >= 0x0400 && wc < 0x0498)
+    c = cp1251_page04[wc-0x0400];
+  else if (wc >= 0x2010 && wc < 0x2040)
+    c = cp1251_page20[wc-0x2010];
+  else if (wc == 0x20ac)
+    c = 0x88;
+  else if (wc == 0x2116)
+    c = 0xb9;
+  else if (wc == 0x2122)
+    c = 0x99;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp1252.h b/graf2d/win32gdk/gdk/src/iconv/cp1252.h
new file mode 100644
index 00000000000..15644423add
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp1252.h
@@ -0,0 +1,103 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP1252
+ */
+
+static const unsigned short cp1252_2uni[32] = {
+  /* 0x80 */
+  0x20ac, 0xfffd, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
+  0x02c6, 0x2030, 0x0160, 0x2039, 0x0152, 0xfffd, 0x017d, 0xfffd,
+  /* 0x90 */
+  0xfffd, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+  0x02dc, 0x2122, 0x0161, 0x203a, 0x0153, 0xfffd, 0x017e, 0x0178,
+};
+
+static int
+cp1252_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80 || c >= 0xa0) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = cp1252_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char cp1252_page01[72] = {
+  0x00, 0x00, 0x8c, 0x9c, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x8a, 0x9a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x9f, 0x00, 0x00, 0x00, 0x00, 0x8e, 0x9e, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0x83, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char cp1252_page02[32] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x98, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+};
+static const unsigned char cp1252_page20[48] = {
+  0x00, 0x00, 0x00, 0x96, 0x97, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x91, 0x92, 0x82, 0x00, 0x93, 0x94, 0x84, 0x00, /* 0x18-0x1f */
+  0x86, 0x87, 0x95, 0x00, 0x00, 0x00, 0x85, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x89, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x8b, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+};
+
+static int
+cp1252_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = wc;
+  else if (wc >= 0x0150 && wc < 0x0198)
+    c = cp1252_page01[wc-0x0150];
+  else if (wc >= 0x02c0 && wc < 0x02e0)
+    c = cp1252_page02[wc-0x02c0];
+  else if (wc >= 0x2010 && wc < 0x2040)
+    c = cp1252_page20[wc-0x2010];
+  else if (wc == 0x20ac)
+    c = 0x80;
+  else if (wc == 0x2122)
+    c = 0x99;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp1253.h b/graf2d/win32gdk/gdk/src/iconv/cp1253.h
new file mode 100644
index 00000000000..020f0d6e057
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp1253.h
@@ -0,0 +1,122 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP1253
+ */
+
+static const unsigned short cp1253_2uni[128] = {
+  /* 0x80 */
+  0x20ac, 0xfffd, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
+  0xfffd, 0x2030, 0xfffd, 0x2039, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x90 */
+  0xfffd, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+  0xfffd, 0x2122, 0xfffd, 0x203a, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0xa0 */
+  0x00a0, 0x0385, 0x0386, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+  0x00a8, 0x00a9, 0xfffd, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x2015,
+  /* 0xb0 */
+  0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x0384, 0x00b5, 0x00b6, 0x00b7,
+  0x0388, 0x0389, 0x038a, 0x00bb, 0x038c, 0x00bd, 0x038e, 0x038f,
+  /* 0xc0 */
+  0x0390, 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397,
+  0x0398, 0x0399, 0x039a, 0x039b, 0x039c, 0x039d, 0x039e, 0x039f,
+  /* 0xd0 */
+  0x03a0, 0x03a1, 0xfffd, 0x03a3, 0x03a4, 0x03a5, 0x03a6, 0x03a7,
+  0x03a8, 0x03a9, 0x03aa, 0x03ab, 0x03ac, 0x03ad, 0x03ae, 0x03af,
+  /* 0xe0 */
+  0x03b0, 0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7,
+  0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf,
+  /* 0xf0 */
+  0x03c0, 0x03c1, 0x03c2, 0x03c3, 0x03c4, 0x03c5, 0x03c6, 0x03c7,
+  0x03c8, 0x03c9, 0x03ca, 0x03cb, 0x03cc, 0x03cd, 0x03ce, 0xfffd,
+};
+
+static int
+cp1253_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = cp1253_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char cp1253_page00[32] = {
+  0xa0, 0x00, 0x00, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, /* 0xa0-0xa7 */
+  0xa8, 0xa9, 0x00, 0xab, 0xac, 0xad, 0xae, 0x00, /* 0xa8-0xaf */
+  0xb0, 0xb1, 0xb2, 0xb3, 0x00, 0xb5, 0xb6, 0xb7, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0xbb, 0x00, 0xbd, 0x00, 0x00, /* 0xb8-0xbf */
+};
+static const unsigned char cp1253_page03[80] = {
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0xa1, 0xa2, 0x00, /* 0x80-0x87 */
+  0xb8, 0xb9, 0xba, 0x00, 0xbc, 0x00, 0xbe, 0xbf, /* 0x88-0x8f */
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x90-0x97 */
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x98-0x9f */
+  0xd0, 0xd1, 0x00, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0xa0-0xa7 */
+  0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, /* 0xa8-0xaf */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0xb0-0xb7 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0xb8-0xbf */
+  0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0xc0-0xc7 */
+  0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0x00, /* 0xc8-0xcf */
+};
+static const unsigned char cp1253_page20[48] = {
+  0x00, 0x00, 0x00, 0x96, 0x97, 0xaf, 0x00, 0x00, /* 0x10-0x17 */
+  0x91, 0x92, 0x82, 0x00, 0x93, 0x94, 0x84, 0x00, /* 0x18-0x1f */
+  0x86, 0x87, 0x95, 0x00, 0x00, 0x00, 0x85, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x89, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x8b, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+};
+
+static int
+cp1253_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00c0)
+    c = cp1253_page00[wc-0x00a0];
+  else if (wc == 0x0192)
+    c = 0x83;
+  else if (wc >= 0x0380 && wc < 0x03d0)
+    c = cp1253_page03[wc-0x0380];
+  else if (wc >= 0x2010 && wc < 0x2040)
+    c = cp1253_page20[wc-0x2010];
+  else if (wc == 0x20ac)
+    c = 0x80;
+  else if (wc == 0x2122)
+    c = 0x99;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp1254.h b/graf2d/win32gdk/gdk/src/iconv/cp1254.h
new file mode 100644
index 00000000000..845a01b8948
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp1254.h
@@ -0,0 +1,146 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP1254
+ */
+
+static const unsigned short cp1254_2uni_1[32] = {
+  /* 0x80 */
+  0x20ac, 0xfffd, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
+  0x02c6, 0x2030, 0x0160, 0x2039, 0x0152, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x90 */
+  0xfffd, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+  0x02dc, 0x2122, 0x0161, 0x203a, 0x0153, 0xfffd, 0xfffd, 0x0178,
+};
+static const unsigned short cp1254_2uni_2[16] = {
+  /* 0xd0 */
+  0x011e, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
+  0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x0130, 0x015e, 0x00df,
+};
+static const unsigned short cp1254_2uni_3[16] = {
+  /* 0xf0 */
+  0x011f, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
+  0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x0131, 0x015f, 0x00ff,
+};
+
+static int
+cp1254_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else if (c < 0xa0) {
+    unsigned short wc = cp1254_2uni_1[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  else if (c < 0xd0) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else if (c < 0xe0) {
+    *pwc = (ucs4_t) cp1254_2uni_2[c-0xd0];
+    return 1;
+  }
+  else if (c < 0xf0) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    *pwc = (ucs4_t) cp1254_2uni_3[c-0xf0];
+    return 1;
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char cp1254_page00[48] = {
+  0x00, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0xd0-0xd7 */
+  0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0x00, 0x00, 0xdf, /* 0xd8-0xdf */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0xe0-0xe7 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0xe8-0xef */
+  0x00, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0xf0-0xf7 */
+  0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0x00, 0x00, 0xff, /* 0xf8-0xff */
+};
+static const unsigned char cp1254_page01[128] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0xf0, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0xdd, 0xfd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x8c, 0x9c, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xde, 0xfe, /* 0x58-0x5f */
+  0x8a, 0x9a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x9f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0x83, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char cp1254_page02[32] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x98, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+};
+static const unsigned char cp1254_page20[48] = {
+  0x00, 0x00, 0x00, 0x96, 0x97, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x91, 0x92, 0x82, 0x00, 0x93, 0x94, 0x84, 0x00, /* 0x18-0x1f */
+  0x86, 0x87, 0x95, 0x00, 0x00, 0x00, 0x85, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x89, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x8b, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+};
+
+static int
+cp1254_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00d0)
+    c = wc;
+  else if (wc >= 0x00d0 && wc < 0x0100)
+    c = cp1254_page00[wc-0x00d0];
+  else if (wc >= 0x0118 && wc < 0x0198)
+    c = cp1254_page01[wc-0x0118];
+  else if (wc >= 0x02c0 && wc < 0x02e0)
+    c = cp1254_page02[wc-0x02c0];
+  else if (wc >= 0x2010 && wc < 0x2040)
+    c = cp1254_page20[wc-0x2010];
+  else if (wc == 0x20ac)
+    c = 0x80;
+  else if (wc == 0x2122)
+    c = 0x99;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp1255.h b/graf2d/win32gdk/gdk/src/iconv/cp1255.h
new file mode 100644
index 00000000000..e7761aeb5b3
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp1255.h
@@ -0,0 +1,380 @@
+/*
+ * Copyright (C) 1999-2001, 2004 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP1255
+ */
+
+#include "flushwc.h"
+
+/* Combining characters used in Hebrew encoding CP1255. */
+
+/* Relevant combining characters:
+   0x05b4, 0x05b7, 0x05b8, 0x05b9, 0x05bc, 0x05bf, 0x05c1, 0x05c2. */
+
+/* Composition tables for each of the relevant combining characters. */
+static const struct { unsigned short base; unsigned short composed; } cp1255_comp_table_data[] = {
+#define cp1255_comp_table05b4_idx 0
+#define cp1255_comp_table05b4_len 1
+  { 0x05D9, 0xFB1D },
+#define cp1255_comp_table05b7_idx (cp1255_comp_table05b4_idx+cp1255_comp_table05b4_len)
+#define cp1255_comp_table05b7_len 2
+  { 0x05D0, 0xFB2E },
+  { 0x05F2, 0xFB1F },
+#define cp1255_comp_table05b8_idx (cp1255_comp_table05b7_idx+cp1255_comp_table05b7_len)
+#define cp1255_comp_table05b8_len 1
+  { 0x05D0, 0xFB2F },
+#define cp1255_comp_table05b9_idx (cp1255_comp_table05b8_idx+cp1255_comp_table05b8_len)
+#define cp1255_comp_table05b9_len 1
+  { 0x05D5, 0xFB4B },
+#define cp1255_comp_table05bc_idx (cp1255_comp_table05b9_idx+cp1255_comp_table05b9_len)
+#define cp1255_comp_table05bc_len 24
+  { 0x05D0, 0xFB30 },
+  { 0x05D1, 0xFB31 },
+  { 0x05D2, 0xFB32 },
+  { 0x05D3, 0xFB33 },
+  { 0x05D4, 0xFB34 },
+  { 0x05D5, 0xFB35 },
+  { 0x05D6, 0xFB36 },
+  { 0x05D8, 0xFB38 },
+  { 0x05D9, 0xFB39 },
+  { 0x05DA, 0xFB3A },
+  { 0x05DB, 0xFB3B },
+  { 0x05DC, 0xFB3C },
+  { 0x05DE, 0xFB3E },
+  { 0x05E0, 0xFB40 },
+  { 0x05E1, 0xFB41 },
+  { 0x05E3, 0xFB43 },
+  { 0x05E4, 0xFB44 },
+  { 0x05E6, 0xFB46 },
+  { 0x05E7, 0xFB47 },
+  { 0x05E8, 0xFB48 },
+  { 0x05E9, 0xFB49 },
+  { 0x05EA, 0xFB4A },
+  { 0xFB2A, 0xFB2C },
+  { 0xFB2B, 0xFB2D },
+#define cp1255_comp_table05bf_idx (cp1255_comp_table05bc_idx+cp1255_comp_table05bc_len)
+#define cp1255_comp_table05bf_len 3
+  { 0x05D1, 0xFB4C },
+  { 0x05DB, 0xFB4D },
+  { 0x05E4, 0xFB4E },
+#define cp1255_comp_table05c1_idx (cp1255_comp_table05bf_idx+cp1255_comp_table05bf_len)
+#define cp1255_comp_table05c1_len 2
+  { 0x05E9, 0xFB2A },
+  { 0xFB49, 0xFB2C },
+#define cp1255_comp_table05c2_idx (cp1255_comp_table05c1_idx+cp1255_comp_table05c1_len)
+#define cp1255_comp_table05c2_len 2
+  { 0x05E9, 0xFB2B },
+  { 0xFB49, 0xFB2D },
+};
+static const struct { unsigned int len; unsigned int idx; } cp1255_comp_table[] = {
+  { cp1255_comp_table05b4_len, cp1255_comp_table05b4_idx },
+  { cp1255_comp_table05b7_len, cp1255_comp_table05b7_idx },
+  { cp1255_comp_table05b8_len, cp1255_comp_table05b8_idx },
+  { cp1255_comp_table05b9_len, cp1255_comp_table05b9_idx },
+  { cp1255_comp_table05bc_len, cp1255_comp_table05bc_idx },
+  { cp1255_comp_table05bf_len, cp1255_comp_table05bf_idx },
+  { cp1255_comp_table05c1_len, cp1255_comp_table05c1_idx },
+  { cp1255_comp_table05c2_len, cp1255_comp_table05c2_idx },
+};
+
+/* Decomposition table for the relevant Unicode characters. */
+struct cp1255_decomp { unsigned short composed; unsigned short base; int comb1 : 8; signed int comb2 : 8; };
+static const struct cp1255_decomp cp1255_decomp_table[] = {
+  { 0xFB1D, 0x05D9, 0, -1 },
+  { 0xFB1F, 0x05F2, 1, -1 },
+  { 0xFB2A, 0x05E9, 6, -1 },
+  { 0xFB2B, 0x05E9, 7, -1 },
+  { 0xFB2C, 0x05E9, 4, 6 },
+  { 0xFB2D, 0x05E9, 4, 7 },
+  { 0xFB2E, 0x05D0, 1, -1 },
+  { 0xFB2F, 0x05D0, 2, -1 },
+  { 0xFB30, 0x05D0, 4, -1 },
+  { 0xFB31, 0x05D1, 4, -1 },
+  { 0xFB32, 0x05D2, 4, -1 },
+  { 0xFB33, 0x05D3, 4, -1 },
+  { 0xFB34, 0x05D4, 4, -1 },
+  { 0xFB35, 0x05D5, 4, -1 },
+  { 0xFB36, 0x05D6, 4, -1 },
+  { 0xFB38, 0x05D8, 4, -1 },
+  { 0xFB39, 0x05D9, 4, -1 },
+  { 0xFB3A, 0x05DA, 4, -1 },
+  { 0xFB3B, 0x05DB, 4, -1 },
+  { 0xFB3C, 0x05DC, 4, -1 },
+  { 0xFB3E, 0x05DE, 4, -1 },
+  { 0xFB40, 0x05E0, 4, -1 },
+  { 0xFB41, 0x05E1, 4, -1 },
+  { 0xFB43, 0x05E3, 4, -1 },
+  { 0xFB44, 0x05E4, 4, -1 },
+  { 0xFB46, 0x05E6, 4, -1 },
+  { 0xFB47, 0x05E7, 4, -1 },
+  { 0xFB48, 0x05E8, 4, -1 },
+  { 0xFB49, 0x05E9, 4, -1 },
+  { 0xFB4A, 0x05EA, 4, -1 },
+  { 0xFB4B, 0x05D5, 3, -1 },
+  { 0xFB4C, 0x05D1, 5, -1 },
+  { 0xFB4D, 0x05DB, 5, -1 },
+  { 0xFB4E, 0x05E4, 5, -1 },
+};
+
+static const unsigned char cp1255_comb_table[] = {
+  0xc4, 0xc7, 0xc8, 0xc9, 0xcc, 0xcf, 0xd1, 0xd2,
+};
+
+static const unsigned short cp1255_2uni[128] = {
+  /* 0x80 */
+  0x20ac, 0xfffd, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
+  0x02c6, 0x2030, 0xfffd, 0x2039, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x90 */
+  0xfffd, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+  0x02dc, 0x2122, 0xfffd, 0x203a, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0xa0 */
+  0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x20aa, 0x00a5, 0x00a6, 0x00a7,
+  0x00a8, 0x00a9, 0x00d7, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
+  /* 0xb0 */
+  0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+  0x00b8, 0x00b9, 0x00f7, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
+  /* 0xc0 */
+  0x05b0, 0x05b1, 0x05b2, 0x05b3, 0x05b4, 0x05b5, 0x05b6, 0x05b7,
+  0x05b8, 0x05b9, 0xfffd, 0x05bb, 0x05bc, 0x05bd, 0x05be, 0x05bf,
+  /* 0xd0 */
+  0x05c0, 0x05c1, 0x05c2, 0x05c3, 0x05f0, 0x05f1, 0x05f2, 0x05f3,
+  0x05f4, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0xe0 */
+  0x05d0, 0x05d1, 0x05d2, 0x05d3, 0x05d4, 0x05d5, 0x05d6, 0x05d7,
+  0x05d8, 0x05d9, 0x05da, 0x05db, 0x05dc, 0x05dd, 0x05de, 0x05df,
+  /* 0xf0 */
+  0x05e0, 0x05e1, 0x05e2, 0x05e3, 0x05e4, 0x05e5, 0x05e6, 0x05e7,
+  0x05e8, 0x05e9, 0x05ea, 0xfffd, 0xfffd, 0x200e, 0x200f, 0xfffd,
+};
+
+/* In the CP1255 to Unicode direction, the state contains a buffered
+   character, or 0 if none. */
+
+static int
+cp1255_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  unsigned short wc;
+  unsigned short last_wc;
+  if (c < 0x80) {
+    wc = c;
+  } else {
+    wc = cp1255_2uni[c-0x80];
+    if (wc == 0xfffd)
+      return RET_ILSEQ;
+  }
+  last_wc = conv->istate;
+  if (last_wc) {
+    if (wc >= 0x05b0 && wc < 0x05c5) {
+      /* See whether last_wc and wc can be combined. */
+      unsigned int k;
+      unsigned int i1, i2;
+      switch (wc) {
+        case 0x05b4: k = 0; break;
+        case 0x05b7: k = 1; break;
+        case 0x05b8: k = 2; break;
+        case 0x05b9: k = 3; break;
+        case 0x05bc: k = 4; break;
+        case 0x05bf: k = 5; break;
+        case 0x05c1: k = 6; break;
+        case 0x05c2: k = 7; break;
+        default: goto not_combining;
+      }
+      i1 = cp1255_comp_table[k].idx;
+      i2 = i1 + cp1255_comp_table[k].len-1;
+      if (last_wc >= cp1255_comp_table_data[i1].base
+          && last_wc <= cp1255_comp_table_data[i2].base) {
+        unsigned int i;
+        for (;;) {
+          i = (i1+i2)>>1;
+          if (last_wc == cp1255_comp_table_data[i].base)
+            break;
+          if (last_wc < cp1255_comp_table_data[i].base) {
+            if (i1 == i)
+              goto not_combining;
+            i2 = i;
+          } else {
+            if (i1 != i)
+              i1 = i;
+            else {
+              i = i2;
+              if (last_wc == cp1255_comp_table_data[i].base)
+                break;
+              goto not_combining;
+            }
+          }
+        }
+        last_wc = cp1255_comp_table_data[i].composed;
+        if (last_wc == 0xfb2a || last_wc == 0xfb2b || last_wc == 0xfb49) {
+          /* Buffer the combined character. */
+          conv->istate = last_wc;
+          return RET_TOOFEW(1);
+        } else {
+          /* Output the combined character. */
+          conv->istate = 0;
+          *pwc = (ucs4_t) last_wc;
+          return 1;
+        }
+      }
+    }
+  not_combining:
+    /* Output the buffered character. */
+    conv->istate = 0;
+    *pwc = (ucs4_t) last_wc;
+    return 0; /* Don't advance the input pointer. */
+  }
+  if ((wc >= 0x05d0 && wc <= 0x05ea && ((0x07db5f7f >> (wc - 0x05d0)) & 1))
+      || wc == 0x05f2) {
+    /* wc is a possible match in cp1255_comp_table_data. Buffer it. */
+    conv->istate = wc;
+    return RET_TOOFEW(1);
+  } else {
+    /* Output wc immediately. */
+    *pwc = (ucs4_t) wc;
+    return 1;
+  }
+}
+
+#define cp1255_flushwc normal_flushwc
+
+static const unsigned char cp1255_page00[88] = {
+  0xa0, 0xa1, 0xa2, 0xa3, 0x00, 0xa5, 0xa6, 0xa7, /* 0xa0-0xa7 */
+  0xa8, 0xa9, 0x00, 0xab, 0xac, 0xad, 0xae, 0xaf, /* 0xa8-0xaf */
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0xb0-0xb7 */
+  0xb8, 0xb9, 0x00, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xba, /* 0xf0-0xf7 */
+};
+static const unsigned char cp1255_page02[32] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x98, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+};
+static const unsigned char cp1255_page05[72] = {
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0xb0-0xb7 */
+  0xc8, 0xc9, 0x00, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0xb8-0xbf */
+  0xd0, 0xd1, 0xd2, 0xd3, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0xd0-0xd7 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0xd8-0xdf */
+  0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0xe0-0xe7 */
+  0xf8, 0xf9, 0xfa, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+  0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0x00, 0x00, 0x00, /* 0xf0-0xf7 */
+};
+static const unsigned char cp1255_page20[56] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfd, 0xfe, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x96, 0x97, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x91, 0x92, 0x82, 0x00, 0x93, 0x94, 0x84, 0x00, /* 0x18-0x1f */
+  0x86, 0x87, 0x95, 0x00, 0x00, 0x00, 0x85, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x89, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x8b, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+};
+
+static int
+cp1255_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00f8)
+    c = cp1255_page00[wc-0x00a0];
+  else if (wc == 0x0192)
+    c = 0x83;
+  else if (wc >= 0x02c0 && wc < 0x02e0)
+    c = cp1255_page02[wc-0x02c0];
+  else if (wc >= 0x05b0 && wc < 0x05f8)
+    c = cp1255_page05[wc-0x05b0];
+  else if (wc >= 0x2008 && wc < 0x2040)
+    c = cp1255_page20[wc-0x2008];
+  else if (wc == 0x20aa)
+    c = 0xa4;
+  else if (wc == 0x20ac)
+    c = 0x80;
+  else if (wc == 0x2122)
+    c = 0x99;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  /* Try canonical decomposition. */
+  {
+    /* Binary search through cp1255_decomp_table. */
+    unsigned int i1 = 0;
+    unsigned int i2 = sizeof(cp1255_decomp_table)/sizeof(cp1255_decomp_table[0])-1;
+    if (wc >= cp1255_decomp_table[i1].composed
+        && wc <= cp1255_decomp_table[i2].composed) {
+      unsigned int i;
+      for (;;) {
+        /* Here i2 - i1 > 0. */
+        i = (i1+i2)>>1;
+        if (wc == cp1255_decomp_table[i].composed)
+          break;
+        if (wc < cp1255_decomp_table[i].composed) {
+          if (i1 == i)
+            return RET_ILUNI;
+          /* Here i1 < i < i2. */
+          i2 = i;
+        } else {
+          /* Here i1 <= i < i2. */
+          if (i1 != i)
+            i1 = i;
+          else {
+            /* Here i2 - i1 = 1. */
+            i = i2;
+            if (wc == cp1255_decomp_table[i].composed)
+              break;
+            else
+              return RET_ILUNI;
+          }
+        }
+      }
+      /* Found a canonical decomposition. */
+      wc = cp1255_decomp_table[i].base;
+      /* wc is one of 0x05d0..0x05d6, 0x05d8..0x05dc, 0x05de, 0x05e0..0x05e1,
+         0x05e3..0x05e4, 0x05e6..0x05ea, 0x05f2. */
+      c = cp1255_page05[wc-0x05b0];
+      if (cp1255_decomp_table[i].comb2 < 0) {
+        if (n < 2)
+          return RET_TOOSMALL;
+        r[0] = c;
+        r[1] = cp1255_comb_table[cp1255_decomp_table[i].comb1];
+        return 2;
+      } else {
+        if (n < 3)
+          return RET_TOOSMALL;
+        r[0] = c;
+        r[1] = cp1255_comb_table[cp1255_decomp_table[i].comb1];
+        r[2] = cp1255_comb_table[cp1255_decomp_table[i].comb2];
+        return 3;
+      }
+    }
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp1256.h b/graf2d/win32gdk/gdk/src/iconv/cp1256.h
new file mode 100644
index 00000000000..3804e8f4bdf
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp1256.h
@@ -0,0 +1,153 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP1256
+ */
+
+static const unsigned short cp1256_2uni[128] = {
+  /* 0x80 */
+  0x20ac, 0x067e, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
+  0x02c6, 0x2030, 0x0679, 0x2039, 0x0152, 0x0686, 0x0698, 0x0688,
+  /* 0x90 */
+  0x06af, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+  0x06a9, 0x2122, 0x0691, 0x203a, 0x0153, 0x200c, 0x200d, 0x06ba,
+  /* 0xa0 */
+  0x00a0, 0x060c, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+  0x00a8, 0x00a9, 0x06be, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
+  /* 0xb0 */
+  0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+  0x00b8, 0x00b9, 0x061b, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x061f,
+  /* 0xc0 */
+  0x06c1, 0x0621, 0x0622, 0x0623, 0x0624, 0x0625, 0x0626, 0x0627,
+  0x0628, 0x0629, 0x062a, 0x062b, 0x062c, 0x062d, 0x062e, 0x062f,
+  /* 0xd0 */
+  0x0630, 0x0631, 0x0632, 0x0633, 0x0634, 0x0635, 0x0636, 0x00d7,
+  0x0637, 0x0638, 0x0639, 0x063a, 0x0640, 0x0641, 0x0642, 0x0643,
+  /* 0xe0 */
+  0x00e0, 0x0644, 0x00e2, 0x0645, 0x0646, 0x0647, 0x0648, 0x00e7,
+  0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x0649, 0x064a, 0x00ee, 0x00ef,
+  /* 0xf0 */
+  0x064b, 0x064c, 0x064d, 0x064e, 0x00f4, 0x064f, 0x0650, 0x00f7,
+  0x0651, 0x00f9, 0x0652, 0x00fb, 0x00fc, 0x200e, 0x200f, 0x06d2,
+};
+
+static int
+cp1256_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) cp1256_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char cp1256_page00[96] = {
+  0xa0, 0x00, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, /* 0xa0-0xa7 */
+  0xa8, 0xa9, 0x00, 0xab, 0xac, 0xad, 0xae, 0xaf, /* 0xa8-0xaf */
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0xb0-0xb7 */
+  0xb8, 0xb9, 0x00, 0xbb, 0xbc, 0xbd, 0xbe, 0x00, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+  0xe0, 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, 0xe7, /* 0xe0-0xe7 */
+  0xe8, 0xe9, 0xea, 0xeb, 0x00, 0x00, 0xee, 0xef, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0x00, 0xf4, 0x00, 0x00, 0xf7, /* 0xf0-0xf7 */
+  0x00, 0xf9, 0x00, 0xfb, 0xfc, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+};
+static const unsigned char cp1256_page01[72] = {
+  0x00, 0x00, 0x8c, 0x9c, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0x83, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char cp1256_page06[208] = {
+  0x00, 0x00, 0x00, 0x00, 0xa1, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0xba, 0x00, 0x00, 0x00, 0xbf, /* 0x18-0x1f */
+  0x00, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x20-0x27 */
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x28-0x2f */
+  0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd8, /* 0x30-0x37 */
+  0xd9, 0xda, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0xdc, 0xdd, 0xde, 0xdf, 0xe1, 0xe3, 0xe4, 0xe5, /* 0x40-0x47 */
+  0xe6, 0xec, 0xed, 0xf0, 0xf1, 0xf2, 0xf3, 0xf5, /* 0x48-0x4f */
+  0xf6, 0xf8, 0xfa, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x81, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8d, 0x00, /* 0x80-0x87 */
+  0x8f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x9a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x8e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x98, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, /* 0xa8-0xaf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x9f, 0x00, 0x00, 0x00, 0xaa, 0x00, /* 0xb8-0xbf */
+  0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+};
+static const unsigned char cp1256_page20[56] = {
+  0x00, 0x00, 0x00, 0x00, 0x9d, 0x9e, 0xfd, 0xfe, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x96, 0x97, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x91, 0x92, 0x82, 0x00, 0x93, 0x94, 0x84, 0x00, /* 0x18-0x1f */
+  0x86, 0x87, 0x95, 0x00, 0x00, 0x00, 0x85, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x89, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x8b, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+};
+
+static int
+cp1256_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = cp1256_page00[wc-0x00a0];
+  else if (wc >= 0x0150 && wc < 0x0198)
+    c = cp1256_page01[wc-0x0150];
+  else if (wc == 0x02c6)
+    c = 0x88;
+  else if (wc >= 0x0608 && wc < 0x06d8)
+    c = cp1256_page06[wc-0x0608];
+  else if (wc >= 0x2008 && wc < 0x2040)
+    c = cp1256_page20[wc-0x2008];
+  else if (wc == 0x20ac)
+    c = 0x80;
+  else if (wc == 0x2122)
+    c = 0x99;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp1257.h b/graf2d/win32gdk/gdk/src/iconv/cp1257.h
new file mode 100644
index 00000000000..0d8518e4e23
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp1257.h
@@ -0,0 +1,139 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP1257
+ */
+
+static const unsigned short cp1257_2uni[128] = {
+  /* 0x80 */
+  0x20ac, 0xfffd, 0x201a, 0xfffd, 0x201e, 0x2026, 0x2020, 0x2021,
+  0xfffd, 0x2030, 0xfffd, 0x2039, 0xfffd, 0x00a8, 0x02c7, 0x00b8,
+  /* 0x90 */
+  0xfffd, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+  0xfffd, 0x2122, 0xfffd, 0x203a, 0xfffd, 0x00af, 0x02db, 0xfffd,
+  /* 0xa0 */
+  0x00a0, 0xfffd, 0x00a2, 0x00a3, 0x00a4, 0xfffd, 0x00a6, 0x00a7,
+  0x00d8, 0x00a9, 0x0156, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00c6,
+  /* 0xb0 */
+  0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+  0x00f8, 0x00b9, 0x0157, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00e6,
+  /* 0xc0 */
+  0x0104, 0x012e, 0x0100, 0x0106, 0x00c4, 0x00c5, 0x0118, 0x0112,
+  0x010c, 0x00c9, 0x0179, 0x0116, 0x0122, 0x0136, 0x012a, 0x013b,
+  /* 0xd0 */
+  0x0160, 0x0143, 0x0145, 0x00d3, 0x014c, 0x00d5, 0x00d6, 0x00d7,
+  0x0172, 0x0141, 0x015a, 0x016a, 0x00dc, 0x017b, 0x017d, 0x00df,
+  /* 0xe0 */
+  0x0105, 0x012f, 0x0101, 0x0107, 0x00e4, 0x00e5, 0x0119, 0x0113,
+  0x010d, 0x00e9, 0x017a, 0x0117, 0x0123, 0x0137, 0x012b, 0x013c,
+  /* 0xf0 */
+  0x0161, 0x0144, 0x0146, 0x00f3, 0x014d, 0x00f5, 0x00f6, 0x00f7,
+  0x0173, 0x0142, 0x015b, 0x016b, 0x00fc, 0x017c, 0x017e, 0x02d9,
+};
+
+static int
+cp1257_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = cp1257_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char cp1257_page00[224] = {
+  0xa0, 0x00, 0xa2, 0xa3, 0xa4, 0x00, 0xa6, 0xa7, /* 0xa0-0xa7 */
+  0x8d, 0xa9, 0x00, 0xab, 0xac, 0xad, 0xae, 0x9d, /* 0xa8-0xaf */
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0xb0-0xb7 */
+  0x8f, 0xb9, 0x00, 0xbb, 0xbc, 0xbd, 0xbe, 0x00, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0xc4, 0xc5, 0xaf, 0x00, /* 0xc0-0xc7 */
+  0x00, 0xc9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0xd3, 0x00, 0xd5, 0xd6, 0xd7, /* 0xd0-0xd7 */
+  0xa8, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0xdf, /* 0xd8-0xdf */
+  0x00, 0x00, 0x00, 0x00, 0xe4, 0xe5, 0xbf, 0x00, /* 0xe0-0xe7 */
+  0x00, 0xe9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0xf3, 0x00, 0xf5, 0xf6, 0xf7, /* 0xf0-0xf7 */
+  0xb8, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+  /* 0x0100 */
+  0xc2, 0xe2, 0x00, 0x00, 0xc0, 0xe0, 0xc3, 0xe3, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xc8, 0xe8, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0xc7, 0xe7, 0x00, 0x00, 0xcb, 0xeb, /* 0x10-0x17 */
+  0xc6, 0xe6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0xcc, 0xec, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0xce, 0xee, 0x00, 0x00, 0xc1, 0xe1, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcd, 0xed, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0xcf, 0xef, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0xd9, 0xf9, 0xd1, 0xf1, 0xd2, 0xf2, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0xd4, 0xf4, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xba, /* 0x50-0x57 */
+  0x00, 0x00, 0xda, 0xfa, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xd0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0xdb, 0xfb, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0xd8, 0xf8, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0xca, 0xea, 0xdd, 0xfd, 0xde, 0xfe, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char cp1257_page02[32] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8e, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0xff, 0x00, 0x9e, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+};
+static const unsigned char cp1257_page20[48] = {
+  0x00, 0x00, 0x00, 0x96, 0x97, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x91, 0x92, 0x82, 0x00, 0x93, 0x94, 0x84, 0x00, /* 0x18-0x1f */
+  0x86, 0x87, 0x95, 0x00, 0x00, 0x00, 0x85, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x89, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x8b, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+};
+
+static int
+cp1257_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0180)
+    c = cp1257_page00[wc-0x00a0];
+  else if (wc >= 0x02c0 && wc < 0x02e0)
+    c = cp1257_page02[wc-0x02c0];
+  else if (wc >= 0x2010 && wc < 0x2040)
+    c = cp1257_page20[wc-0x2010];
+  else if (wc == 0x20ac)
+    c = 0x80;
+  else if (wc == 0x2122)
+    c = 0x99;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp1258.h b/graf2d/win32gdk/gdk/src/iconv/cp1258.h
new file mode 100644
index 00000000000..57834048373
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp1258.h
@@ -0,0 +1,288 @@
+/*
+ * Copyright (C) 1999-2001, 2004 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP1258
+ */
+
+#include "flushwc.h"
+#include "vietcomb.h"
+
+static const unsigned char cp1258_comb_table[] = {
+  0xcc, 0xec, 0xde, 0xd2, 0xf2,
+};
+
+/* The possible bases in viet_comp_table_data:
+   0x0041..0x0045, 0x0047..0x0049, 0x004B..0x0050, 0x0052..0x0057,
+   0x0059..0x005A, 0x0061..0x0065, 0x0067..0x0069, 0x006B..0x0070,
+   0x0072..0x0077, 0x0079..0x007A, 0x00A5, 0x00A8, 0x00C2, 0x00C5..0x00C7,
+   0x00CA, 0x00CF, 0x00D3..0x00D4, 0x00D6, 0x00D8, 0x00DA, 0x00DC, 0x00E2,
+   0x00E5..0x00E7, 0x00EA, 0x00EF, 0x00F3..0x00F4, 0x00F6, 0x00F8, 0x00FA,
+   0x00FC, 0x0102..0x0103, 0x01A0..0x01A1, 0x01AF..0x01B0. */
+static const unsigned int cp1258_comp_bases[] = {
+  0x06fdfbbe, 0x06fdfbbe, 0x00000000, 0x00000120, 0x155884e4, 0x155884e4,
+  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00018003
+};
+
+static const unsigned short cp1258_2uni[128] = {
+  /* 0x80 */
+  0x20ac, 0xfffd, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
+  0x02c6, 0x2030, 0xfffd, 0x2039, 0x0152, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x90 */
+  0xfffd, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+  0x02dc, 0x2122, 0xfffd, 0x203a, 0x0153, 0xfffd, 0xfffd, 0x0178,
+  /* 0xa0 */
+  0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+  0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
+  /* 0xb0 */
+  0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+  0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
+  /* 0xc0 */
+  0x00c0, 0x00c1, 0x00c2, 0x0102, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
+  0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x0300, 0x00cd, 0x00ce, 0x00cf,
+  /* 0xd0 */
+  0x0110, 0x00d1, 0x0309, 0x00d3, 0x00d4, 0x01a0, 0x00d6, 0x00d7,
+  0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x01af, 0x0303, 0x00df,
+  /* 0xe0 */
+  0x00e0, 0x00e1, 0x00e2, 0x0103, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
+  0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x0301, 0x00ed, 0x00ee, 0x00ef,
+  /* 0xf0 */
+  0x0111, 0x00f1, 0x0323, 0x00f3, 0x00f4, 0x01a1, 0x00f6, 0x00f7,
+  0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x01b0, 0x20ab, 0x00ff,
+};
+
+/* In the CP1258 to Unicode direction, the state contains a buffered
+   character, or 0 if none. */
+
+static int
+cp1258_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  unsigned short wc;
+  unsigned short last_wc;
+  if (c < 0x80) {
+    wc = c;
+  } else {
+    wc = cp1258_2uni[c-0x80];
+    if (wc == 0xfffd)
+      return RET_ILSEQ;
+  }
+  last_wc = conv->istate;
+  if (last_wc) {
+    if (wc >= 0x0300 && wc < 0x0340) {
+      /* See whether last_wc and wc can be combined. */
+      unsigned int k;
+      unsigned int i1, i2;
+      switch (wc) {
+        case 0x0300: k = 0; break;
+        case 0x0301: k = 1; break;
+        case 0x0303: k = 2; break;
+        case 0x0309: k = 3; break;
+        case 0x0323: k = 4; break;
+        default: abort();
+      }
+      i1 = viet_comp_table[k].idx;
+      i2 = i1 + viet_comp_table[k].len-1;
+      if (last_wc >= viet_comp_table_data[i1].base
+          && last_wc <= viet_comp_table_data[i2].base) {
+        unsigned int i;
+        for (;;) {
+          i = (i1+i2)>>1;
+          if (last_wc == viet_comp_table_data[i].base)
+            break;
+          if (last_wc < viet_comp_table_data[i].base) {
+            if (i1 == i)
+              goto not_combining;
+            i2 = i;
+          } else {
+            if (i1 != i)
+              i1 = i;
+            else {
+              i = i2;
+              if (last_wc == viet_comp_table_data[i].base)
+                break;
+              goto not_combining;
+            }
+          }
+        }
+        last_wc = viet_comp_table_data[i].composed;
+        /* Output the combined character. */
+        conv->istate = 0;
+        *pwc = (ucs4_t) last_wc;
+        return 1;
+      }
+    }
+  not_combining:
+    /* Output the buffered character. */
+    conv->istate = 0;
+    *pwc = (ucs4_t) last_wc;
+    return 0; /* Don't advance the input pointer. */
+  }
+  if (wc >= 0x0041 && wc <= 0x01b0
+      && ((cp1258_comp_bases[(wc - 0x0040) >> 5] >> (wc & 0x1f)) & 1)) {
+    /* wc is a possible match in viet_comp_table_data. Buffer it. */
+    conv->istate = wc;
+    return RET_TOOFEW(1);
+  } else {
+    /* Output wc immediately. */
+    *pwc = (ucs4_t) wc;
+    return 1;
+  }
+}
+
+#define cp1258_flushwc normal_flushwc
+
+static const unsigned char cp1258_page00[88] = {
+  0xc0, 0xc1, 0xc2, 0x00, 0xc4, 0xc5, 0xc6, 0xc7, /* 0xc0-0xc7 */
+  0xc8, 0xc9, 0xca, 0xcb, 0x00, 0xcd, 0xce, 0xcf, /* 0xc8-0xcf */
+  0x00, 0xd1, 0x00, 0xd3, 0xd4, 0x00, 0xd6, 0xd7, /* 0xd0-0xd7 */
+  0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0x00, 0x00, 0xdf, /* 0xd8-0xdf */
+  0xe0, 0xe1, 0xe2, 0x00, 0xe4, 0xe5, 0xe6, 0xe7, /* 0xe0-0xe7 */
+  0xe8, 0xe9, 0xea, 0xeb, 0x00, 0xed, 0xee, 0xef, /* 0xe8-0xef */
+  0x00, 0xf1, 0x00, 0xf3, 0xf4, 0x00, 0xf6, 0xf7, /* 0xf0-0xf7 */
+  0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0x00, 0x00, 0xff, /* 0xf8-0xff */
+  /* 0x0100 */
+  0x00, 0x00, 0xc3, 0xe3, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xd0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+};
+static const unsigned char cp1258_page01[104] = {
+  0x00, 0x00, 0x8c, 0x9c, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x9f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0x83, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xd5, 0xf5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdd, /* 0xa8-0xaf */
+  0xfd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+};
+static const unsigned char cp1258_page02[32] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x98, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+};
+static const unsigned char cp1258_page03[40] = {
+  0xcc, 0xec, 0x00, 0xde, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0xd2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0xf2, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char cp1258_page20[48] = {
+  0x00, 0x00, 0x00, 0x96, 0x97, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x91, 0x92, 0x82, 0x00, 0x93, 0x94, 0x84, 0x00, /* 0x18-0x1f */
+  0x86, 0x87, 0x95, 0x00, 0x00, 0x00, 0x85, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x89, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x8b, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+};
+
+static int
+cp1258_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00c0)
+    c = wc;
+  else if (wc >= 0x00c0 && wc < 0x0118)
+    c = cp1258_page00[wc-0x00c0];
+  else if (wc >= 0x0150 && wc < 0x01b8)
+    c = cp1258_page01[wc-0x0150];
+  else if (wc >= 0x02c0 && wc < 0x02e0)
+    c = cp1258_page02[wc-0x02c0];
+  else if (wc >= 0x0300 && wc < 0x0328)
+    c = cp1258_page03[wc-0x0300];
+  else if (wc >= 0x0340 && wc < 0x0342) /* deprecated Vietnamese tone marks */
+    c = cp1258_page03[wc-0x0340];
+  else if (wc >= 0x2010 && wc < 0x2040)
+    c = cp1258_page20[wc-0x2010];
+  else if (wc == 0x20ab)
+    c = 0xfe;
+  else if (wc == 0x20ac)
+    c = 0x80;
+  else if (wc == 0x2122)
+    c = 0x99;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  /* Try canonical decomposition. */
+  {
+    /* Binary search through viet_decomp_table. */
+    unsigned int i1 = 0;
+    unsigned int i2 = sizeof(viet_decomp_table)/sizeof(viet_decomp_table[0])-1;
+    if (wc >= viet_decomp_table[i1].composed
+        && wc <= viet_decomp_table[i2].composed) {
+      unsigned int i;
+      for (;;) {
+        /* Here i2 - i1 > 0. */
+        i = (i1+i2)>>1;
+        if (wc == viet_decomp_table[i].composed)
+          break;
+        if (wc < viet_decomp_table[i].composed) {
+          if (i1 == i)
+            return RET_ILUNI;
+          /* Here i1 < i < i2. */
+          i2 = i;
+        } else {
+          /* Here i1 <= i < i2. */
+          if (i1 != i)
+            i1 = i;
+          else {
+            /* Here i2 - i1 = 1. */
+            i = i2;
+            if (wc == viet_decomp_table[i].composed)
+              break;
+            else
+              return RET_ILUNI;
+          }
+        }
+      }
+      /* Found a canonical decomposition. */
+      wc = viet_decomp_table[i].base;
+      /* wc is one of 0x0020, 0x0041..0x005a, 0x0061..0x007a, 0x00a5, 0x00a8,
+         0x00c2, 0x00c5..0x00c7, 0x00ca, 0x00cf, 0x00d3, 0x00d4, 0x00d6,
+         0x00d8, 0x00da, 0x00dc, 0x00e2, 0x00e5..0x00e7, 0x00ea, 0x00ef,
+         0x00f3, 0x00f4, 0x00f6, 0x00f8, 0x00fc, 0x0102, 0x0103, 0x01a0,
+         0x01a1, 0x01af, 0x01b0. */
+      if (wc < 0x0100)
+        c = wc;
+      else if (wc < 0x0118)
+        c = cp1258_page00[wc-0x00c0];
+      else
+        c = cp1258_page01[wc-0x0150];
+      if (n < 2)
+        return RET_TOOSMALL;
+      r[0] = c;
+      r[1] = cp1258_comb_table[viet_decomp_table[i].comb1];
+      return 2;
+    }
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp437.h b/graf2d/win32gdk/gdk/src/iconv/cp437.h
new file mode 100644
index 00000000000..a3c8e685bb4
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp437.h
@@ -0,0 +1,156 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP437
+ */
+
+static const unsigned short cp437_2uni[128] = {
+  /* 0x80 */
+  0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+  0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x00ec, 0x00c4, 0x00c5,
+  /* 0x90 */
+  0x00c9, 0x00e6, 0x00c6, 0x00f4, 0x00f6, 0x00f2, 0x00fb, 0x00f9,
+  0x00ff, 0x00d6, 0x00dc, 0x00a2, 0x00a3, 0x00a5, 0x20a7, 0x0192,
+  /* 0xa0 */
+  0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x00ba,
+  0x00bf, 0x2310, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+  /* 0xb0 */
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+  0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+  /* 0xc0 */
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+  /* 0xd0 */
+  0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+  0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+  /* 0xe0 */
+  0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+  0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x03c6, 0x03b5, 0x2229,
+  /* 0xf0 */
+  0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+  0x00b0, 0x2219, 0x00b7, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0,
+};
+
+static int
+cp437_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) cp437_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char cp437_page00[96] = {
+  0xff, 0xad, 0x9b, 0x9c, 0x00, 0x9d, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0xa6, 0xae, 0xaa, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0xf8, 0xf1, 0xfd, 0x00, 0x00, 0xe6, 0x00, 0xfa, /* 0xb0-0xb7 */
+  0x00, 0x00, 0xa7, 0xaf, 0xac, 0xab, 0x00, 0xa8, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x8e, 0x8f, 0x92, 0x80, /* 0xc0-0xc7 */
+  0x00, 0x90, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0xa5, 0x00, 0x00, 0x00, 0x00, 0x99, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x9a, 0x00, 0x00, 0xe1, /* 0xd8-0xdf */
+  0x85, 0xa0, 0x83, 0x00, 0x84, 0x86, 0x91, 0x87, /* 0xe0-0xe7 */
+  0x8a, 0x82, 0x88, 0x89, 0x8d, 0xa1, 0x8c, 0x8b, /* 0xe8-0xef */
+  0x00, 0xa4, 0x95, 0xa2, 0x93, 0x00, 0x94, 0xf6, /* 0xf0-0xf7 */
+  0x00, 0x97, 0xa3, 0x96, 0x81, 0x00, 0x00, 0x98, /* 0xf8-0xff */
+};
+static const unsigned char cp437_page03[56] = {
+  0x00, 0x00, 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0xe9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0x00, 0x00, 0x00, 0xe4, 0x00, 0x00, 0xe8, 0x00, /* 0xa0-0xa7 */
+  0x00, 0xea, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x00, 0xe0, 0x00, 0x00, 0xeb, 0xee, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0xe3, 0x00, 0x00, 0xe5, 0xe7, 0x00, 0xed, 0x00, /* 0xc0-0xc7 */
+};
+static const unsigned char cp437_page22[80] = {
+  0x00, 0xf9, 0xfb, 0x00, 0x00, 0x00, 0xec, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0xef, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0xf7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0xf0, 0x00, 0x00, 0xf3, 0xf2, 0x00, 0x00, /* 0x60-0x67 */
+};
+static const unsigned char cp437_page23[24] = {
+  0xa9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0xf4, 0xf5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char cp437_page25[168] = {
+  0xc4, 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xbf, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd9, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xcd, 0xba, 0xd5, 0xd6, 0xc9, 0xb8, 0xb7, 0xbb, /* 0x50-0x57 */
+  0xd4, 0xd3, 0xc8, 0xbe, 0xbd, 0xbc, 0xc6, 0xc7, /* 0x58-0x5f */
+  0xcc, 0xb5, 0xb6, 0xb9, 0xd1, 0xd2, 0xcb, 0xcf, /* 0x60-0x67 */
+  0xd0, 0xca, 0xd8, 0xd7, 0xce, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xdf, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0xdb, 0x00, 0x00, 0x00, 0xdd, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0xde, 0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+cp437_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = cp437_page00[wc-0x00a0];
+  else if (wc == 0x0192)
+    c = 0x9f;
+  else if (wc >= 0x0390 && wc < 0x03c8)
+    c = cp437_page03[wc-0x0390];
+  else if (wc == 0x207f)
+    c = 0xfc;
+  else if (wc == 0x20a7)
+    c = 0x9e;
+  else if (wc >= 0x2218 && wc < 0x2268)
+    c = cp437_page22[wc-0x2218];
+  else if (wc >= 0x2310 && wc < 0x2328)
+    c = cp437_page23[wc-0x2310];
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = cp437_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp737.h b/graf2d/win32gdk/gdk/src/iconv/cp737.h
new file mode 100644
index 00000000000..955e458d043
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp737.h
@@ -0,0 +1,141 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP737
+ */
+
+static const unsigned short cp737_2uni[128] = {
+  /* 0x80 */
+  0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, 0x0398,
+  0x0399, 0x039a, 0x039b, 0x039c, 0x039d, 0x039e, 0x039f, 0x03a0,
+  /* 0x90 */
+  0x03a1, 0x03a3, 0x03a4, 0x03a5, 0x03a6, 0x03a7, 0x03a8, 0x03a9,
+  0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7, 0x03b8,
+  /* 0xa0 */
+  0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf, 0x03c0,
+  0x03c1, 0x03c3, 0x03c2, 0x03c4, 0x03c5, 0x03c6, 0x03c7, 0x03c8,
+  /* 0xb0 */
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+  0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+  /* 0xc0 */
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+  /* 0xd0 */
+  0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+  0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+  /* 0xe0 */
+  0x03c9, 0x03ac, 0x03ad, 0x03ae, 0x03ca, 0x03af, 0x03cc, 0x03cd,
+  0x03cb, 0x03ce, 0x0386, 0x0388, 0x0389, 0x038a, 0x038c, 0x038e,
+  /* 0xf0 */
+  0x038f, 0x00b1, 0x2265, 0x2264, 0x03aa, 0x03ab, 0x00f7, 0x2248,
+  0x00b0, 0x2219, 0x00b7, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0,
+};
+
+static int
+cp737_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) cp737_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char cp737_page00[24] = {
+  0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0xf8, 0xf1, 0xfd, 0x00, 0x00, 0x00, 0x00, 0xfa, /* 0xb0-0xb7 */
+};
+static const unsigned char cp737_page03[80] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xea, 0x00, /* 0x80-0x87 */
+  0xeb, 0xec, 0xed, 0x00, 0xee, 0x00, 0xef, 0xf0, /* 0x88-0x8f */
+  0x00, 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, /* 0x90-0x97 */
+  0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, /* 0x98-0x9f */
+  0x8f, 0x90, 0x00, 0x91, 0x92, 0x93, 0x94, 0x95, /* 0xa0-0xa7 */
+  0x96, 0x97, 0xf4, 0xf5, 0xe1, 0xe2, 0xe3, 0xe5, /* 0xa8-0xaf */
+  0x00, 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, /* 0xb0-0xb7 */
+  0x9f, 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, /* 0xb8-0xbf */
+  0xa7, 0xa8, 0xaa, 0xa9, 0xab, 0xac, 0xad, 0xae, /* 0xc0-0xc7 */
+  0xaf, 0xe0, 0xe4, 0xe8, 0xe6, 0xe7, 0xe9, 0x00, /* 0xc8-0xcf */
+};
+static const unsigned char cp737_page22[80] = {
+  0x00, 0xf9, 0xfb, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0xf7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0xf3, 0xf2, 0x00, 0x00, /* 0x60-0x67 */
+};
+static const unsigned char cp737_page25[168] = {
+  0xc4, 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xbf, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd9, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xcd, 0xba, 0xd5, 0xd6, 0xc9, 0xb8, 0xb7, 0xbb, /* 0x50-0x57 */
+  0xd4, 0xd3, 0xc8, 0xbe, 0xbd, 0xbc, 0xc6, 0xc7, /* 0x58-0x5f */
+  0xcc, 0xb5, 0xb6, 0xb9, 0xd1, 0xd2, 0xcb, 0xcf, /* 0x60-0x67 */
+  0xd0, 0xca, 0xd8, 0xd7, 0xce, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xdf, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0xdb, 0x00, 0x00, 0x00, 0xdd, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0xde, 0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+cp737_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00b8)
+    c = cp737_page00[wc-0x00a0];
+  else if (wc == 0x00f7)
+    c = 0xf6;
+  else if (wc >= 0x0380 && wc < 0x03d0)
+    c = cp737_page03[wc-0x0380];
+  else if (wc == 0x207f)
+    c = 0xfc;
+  else if (wc >= 0x2218 && wc < 0x2268)
+    c = cp737_page22[wc-0x2218];
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = cp737_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp775.h b/graf2d/win32gdk/gdk/src/iconv/cp775.h
new file mode 100644
index 00000000000..b9a5a5c4eb9
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp775.h
@@ -0,0 +1,142 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP775
+ */
+
+static const unsigned short cp775_2uni[128] = {
+  /* 0x80 */
+  0x0106, 0x00fc, 0x00e9, 0x0101, 0x00e4, 0x0123, 0x00e5, 0x0107,
+  0x0142, 0x0113, 0x0156, 0x0157, 0x012b, 0x0179, 0x00c4, 0x00c5,
+  /* 0x90 */
+  0x00c9, 0x00e6, 0x00c6, 0x014d, 0x00f6, 0x0122, 0x00a2, 0x015a,
+  0x015b, 0x00d6, 0x00dc, 0x00f8, 0x00a3, 0x00d8, 0x00d7, 0x00a4,
+  /* 0xa0 */
+  0x0100, 0x012a, 0x00f3, 0x017b, 0x017c, 0x017a, 0x201d, 0x00a6,
+  0x00a9, 0x00ae, 0x00ac, 0x00bd, 0x00bc, 0x0141, 0x00ab, 0x00bb,
+  /* 0xb0 */
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x0104, 0x010c, 0x0118,
+  0x0116, 0x2563, 0x2551, 0x2557, 0x255d, 0x012e, 0x0160, 0x2510,
+  /* 0xc0 */
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x0172, 0x016a,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x017d,
+  /* 0xd0 */
+  0x0105, 0x010d, 0x0119, 0x0117, 0x012f, 0x0161, 0x0173, 0x016b,
+  0x017e, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+  /* 0xe0 */
+  0x00d3, 0x00df, 0x014c, 0x0143, 0x00f5, 0x00d5, 0x00b5, 0x0144,
+  0x0136, 0x0137, 0x013b, 0x013c, 0x0146, 0x0112, 0x0145, 0x2019,
+  /* 0xf0 */
+  0x00ad, 0x00b1, 0x201c, 0x00be, 0x00b6, 0x00a7, 0x00f7, 0x201e,
+  0x00b0, 0x2219, 0x00b7, 0x00b9, 0x00b3, 0x00b2, 0x25a0, 0x00a0,
+};
+
+static int
+cp775_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) cp775_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char cp775_page00[224] = {
+  0xff, 0x00, 0x96, 0x9c, 0x9f, 0x00, 0xa7, 0xf5, /* 0xa0-0xa7 */
+  0x00, 0xa8, 0x00, 0xae, 0xaa, 0xf0, 0xa9, 0x00, /* 0xa8-0xaf */
+  0xf8, 0xf1, 0xfd, 0xfc, 0x00, 0xe6, 0xf4, 0xfa, /* 0xb0-0xb7 */
+  0x00, 0xfb, 0x00, 0xaf, 0xac, 0xab, 0xf3, 0x00, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x8e, 0x8f, 0x92, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x90, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0xe0, 0x00, 0xe5, 0x99, 0x9e, /* 0xd0-0xd7 */
+  0x9d, 0x00, 0x00, 0x00, 0x9a, 0x00, 0x00, 0xe1, /* 0xd8-0xdf */
+  0x00, 0x00, 0x00, 0x00, 0x84, 0x86, 0x91, 0x00, /* 0xe0-0xe7 */
+  0x00, 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0xa2, 0x00, 0xe4, 0x94, 0xf6, /* 0xf0-0xf7 */
+  0x9b, 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+  /* 0x0100 */
+  0xa0, 0x83, 0x00, 0x00, 0xb5, 0xd0, 0x80, 0x87, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xb6, 0xd1, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0xed, 0x89, 0x00, 0x00, 0xb8, 0xd3, /* 0x10-0x17 */
+  0xb7, 0xd2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x95, 0x85, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0xa1, 0x8c, 0x00, 0x00, 0xbd, 0xd4, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe8, 0xe9, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0xea, 0xeb, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0xad, 0x88, 0xe3, 0xe7, 0xee, 0xec, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0xe2, 0x93, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8a, 0x8b, /* 0x50-0x57 */
+  0x00, 0x00, 0x97, 0x98, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xbe, 0xd5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0xc7, 0xd7, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0xc6, 0xd6, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x8d, 0xa5, 0xa3, 0xa4, 0xcf, 0xd8, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char cp775_page20[8] = {
+  0x00, 0xef, 0x00, 0x00, 0xf2, 0xa6, 0xf7, 0x00, /* 0x18-0x1f */
+};
+static const unsigned char cp775_page25[168] = {
+  0xc4, 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xbf, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd9, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xcd, 0xba, 0x00, 0x00, 0xc9, 0x00, 0x00, 0xbb, /* 0x50-0x57 */
+  0x00, 0x00, 0xc8, 0x00, 0x00, 0xbc, 0x00, 0x00, /* 0x58-0x5f */
+  0xcc, 0x00, 0x00, 0xb9, 0x00, 0x00, 0xcb, 0x00, /* 0x60-0x67 */
+  0x00, 0xca, 0x00, 0x00, 0xce, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xdf, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0xdb, 0x00, 0x00, 0x00, 0xdd, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0xde, 0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+cp775_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0180)
+    c = cp775_page00[wc-0x00a0];
+  else if (wc >= 0x2018 && wc < 0x2020)
+    c = cp775_page20[wc-0x2018];
+  else if (wc == 0x2219)
+    c = 0xf9;
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = cp775_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp850.h b/graf2d/win32gdk/gdk/src/iconv/cp850.h
new file mode 100644
index 00000000000..25acfee1481
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp850.h
@@ -0,0 +1,124 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP850
+ */
+
+static const unsigned short cp850_2uni[128] = {
+  /* 0x80 */
+  0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+  0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x00ec, 0x00c4, 0x00c5,
+  /* 0x90 */
+  0x00c9, 0x00e6, 0x00c6, 0x00f4, 0x00f6, 0x00f2, 0x00fb, 0x00f9,
+  0x00ff, 0x00d6, 0x00dc, 0x00f8, 0x00a3, 0x00d8, 0x00d7, 0x0192,
+  /* 0xa0 */
+  0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x00ba,
+  0x00bf, 0x00ae, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+  /* 0xb0 */
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x00c1, 0x00c2, 0x00c0,
+  0x00a9, 0x2563, 0x2551, 0x2557, 0x255d, 0x00a2, 0x00a5, 0x2510,
+  /* 0xc0 */
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x00e3, 0x00c3,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x00a4,
+  /* 0xd0 */
+  0x00f0, 0x00d0, 0x00ca, 0x00cb, 0x00c8, 0x0131, 0x00cd, 0x00ce,
+  0x00cf, 0x2518, 0x250c, 0x2588, 0x2584, 0x00a6, 0x00cc, 0x2580,
+  /* 0xe0 */
+  0x00d3, 0x00df, 0x00d4, 0x00d2, 0x00f5, 0x00d5, 0x00b5, 0x00fe,
+  0x00de, 0x00da, 0x00db, 0x00d9, 0x00fd, 0x00dd, 0x00af, 0x00b4,
+  /* 0xf0 */
+  0x00ad, 0x00b1, 0x2017, 0x00be, 0x00b6, 0x00a7, 0x00f7, 0x00b8,
+  0x00b0, 0x00a8, 0x00b7, 0x00b9, 0x00b3, 0x00b2, 0x25a0, 0x00a0,
+};
+
+static int
+cp850_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) cp850_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char cp850_page00[96] = {
+  0xff, 0xad, 0xbd, 0x9c, 0xcf, 0xbe, 0xdd, 0xf5, /* 0xa0-0xa7 */
+  0xf9, 0xb8, 0xa6, 0xae, 0xaa, 0xf0, 0xa9, 0xee, /* 0xa8-0xaf */
+  0xf8, 0xf1, 0xfd, 0xfc, 0xef, 0xe6, 0xf4, 0xfa, /* 0xb0-0xb7 */
+  0xf7, 0xfb, 0xa7, 0xaf, 0xac, 0xab, 0xf3, 0xa8, /* 0xb8-0xbf */
+  0xb7, 0xb5, 0xb6, 0xc7, 0x8e, 0x8f, 0x92, 0x80, /* 0xc0-0xc7 */
+  0xd4, 0x90, 0xd2, 0xd3, 0xde, 0xd6, 0xd7, 0xd8, /* 0xc8-0xcf */
+  0xd1, 0xa5, 0xe3, 0xe0, 0xe2, 0xe5, 0x99, 0x9e, /* 0xd0-0xd7 */
+  0x9d, 0xeb, 0xe9, 0xea, 0x9a, 0xed, 0xe8, 0xe1, /* 0xd8-0xdf */
+  0x85, 0xa0, 0x83, 0xc6, 0x84, 0x86, 0x91, 0x87, /* 0xe0-0xe7 */
+  0x8a, 0x82, 0x88, 0x89, 0x8d, 0xa1, 0x8c, 0x8b, /* 0xe8-0xef */
+  0xd0, 0xa4, 0x95, 0xa2, 0x93, 0xe4, 0x94, 0xf6, /* 0xf0-0xf7 */
+  0x9b, 0x97, 0xa3, 0x96, 0x81, 0xec, 0xe7, 0x98, /* 0xf8-0xff */
+};
+static const unsigned char cp850_page25[168] = {
+  0xc4, 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xbf, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd9, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xcd, 0xba, 0x00, 0x00, 0xc9, 0x00, 0x00, 0xbb, /* 0x50-0x57 */
+  0x00, 0x00, 0xc8, 0x00, 0x00, 0xbc, 0x00, 0x00, /* 0x58-0x5f */
+  0xcc, 0x00, 0x00, 0xb9, 0x00, 0x00, 0xcb, 0x00, /* 0x60-0x67 */
+  0x00, 0xca, 0x00, 0x00, 0xce, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xdf, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+cp850_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = cp850_page00[wc-0x00a0];
+  else if (wc == 0x0131)
+    c = 0xd5;
+  else if (wc == 0x0192)
+    c = 0x9f;
+  else if (wc == 0x2017)
+    c = 0xf2;
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = cp850_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp852.h b/graf2d/win32gdk/gdk/src/iconv/cp852.h
new file mode 100644
index 00000000000..fac7a63f15c
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp852.h
@@ -0,0 +1,143 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP852
+ */
+
+static const unsigned short cp852_2uni[128] = {
+  /* 0x80 */
+  0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x016f, 0x0107, 0x00e7,
+  0x0142, 0x00eb, 0x0150, 0x0151, 0x00ee, 0x0179, 0x00c4, 0x0106,
+  /* 0x90 */
+  0x00c9, 0x0139, 0x013a, 0x00f4, 0x00f6, 0x013d, 0x013e, 0x015a,
+  0x015b, 0x00d6, 0x00dc, 0x0164, 0x0165, 0x0141, 0x00d7, 0x010d,
+  /* 0xa0 */
+  0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x0104, 0x0105, 0x017d, 0x017e,
+  0x0118, 0x0119, 0x00ac, 0x017a, 0x010c, 0x015f, 0x00ab, 0x00bb,
+  /* 0xb0 */
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x00c1, 0x00c2, 0x011a,
+  0x015e, 0x2563, 0x2551, 0x2557, 0x255d, 0x017b, 0x017c, 0x2510,
+  /* 0xc0 */
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x0102, 0x0103,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x00a4,
+  /* 0xd0 */
+  0x0111, 0x0110, 0x010e, 0x00cb, 0x010f, 0x0147, 0x00cd, 0x00ce,
+  0x011b, 0x2518, 0x250c, 0x2588, 0x2584, 0x0162, 0x016e, 0x2580,
+  /* 0xe0 */
+  0x00d3, 0x00df, 0x00d4, 0x0143, 0x0144, 0x0148, 0x0160, 0x0161,
+  0x0154, 0x00da, 0x0155, 0x0170, 0x00fd, 0x00dd, 0x0163, 0x00b4,
+  /* 0xf0 */
+  0x00ad, 0x02dd, 0x02db, 0x02c7, 0x02d8, 0x00a7, 0x00f7, 0x00b8,
+  0x00b0, 0x00a8, 0x02d9, 0x0171, 0x0158, 0x0159, 0x25a0, 0x00a0,
+};
+
+static int
+cp852_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) cp852_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char cp852_page00[224] = {
+  0xff, 0x00, 0x00, 0x00, 0xcf, 0x00, 0x00, 0xf5, /* 0xa0-0xa7 */
+  0xf9, 0x00, 0x00, 0xae, 0xaa, 0xf0, 0x00, 0x00, /* 0xa8-0xaf */
+  0xf8, 0x00, 0x00, 0x00, 0xef, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+  0xf7, 0x00, 0x00, 0xaf, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0xb5, 0xb6, 0x00, 0x8e, 0x00, 0x00, 0x80, /* 0xc0-0xc7 */
+  0x00, 0x90, 0x00, 0xd3, 0x00, 0xd6, 0xd7, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0xe0, 0xe2, 0x00, 0x99, 0x9e, /* 0xd0-0xd7 */
+  0x00, 0x00, 0xe9, 0x00, 0x9a, 0xed, 0x00, 0xe1, /* 0xd8-0xdf */
+  0x00, 0xa0, 0x83, 0x00, 0x84, 0x00, 0x00, 0x87, /* 0xe0-0xe7 */
+  0x00, 0x82, 0x00, 0x89, 0x00, 0xa1, 0x8c, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0xa2, 0x93, 0x00, 0x94, 0xf6, /* 0xf0-0xf7 */
+  0x00, 0x00, 0xa3, 0x00, 0x81, 0xec, 0x00, 0x00, /* 0xf8-0xff */
+  /* 0x0100 */
+  0x00, 0x00, 0xc6, 0xc7, 0xa4, 0xa5, 0x8f, 0x86, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xac, 0x9f, 0xd2, 0xd4, /* 0x08-0x0f */
+  0xd1, 0xd0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xa8, 0xa9, 0xb7, 0xd8, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x91, 0x92, 0x00, 0x00, 0x95, 0x96, 0x00, /* 0x38-0x3f */
+  0x00, 0x9d, 0x88, 0xe3, 0xe4, 0x00, 0x00, 0xd5, /* 0x40-0x47 */
+  0xe5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x8a, 0x8b, 0x00, 0x00, 0xe8, 0xea, 0x00, 0x00, /* 0x50-0x57 */
+  0xfc, 0xfd, 0x97, 0x98, 0x00, 0x00, 0xb8, 0xad, /* 0x58-0x5f */
+  0xe6, 0xe7, 0xdd, 0xee, 0x9b, 0x9c, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xde, 0x85, /* 0x68-0x6f */
+  0xeb, 0xfb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x8d, 0xab, 0xbd, 0xbe, 0xa6, 0xa7, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char cp852_page02[32] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf3, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0xf4, 0xfa, 0x00, 0xf2, 0x00, 0xf1, 0x00, 0x00, /* 0xd8-0xdf */
+};
+static const unsigned char cp852_page25[168] = {
+  0xc4, 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xbf, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd9, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xcd, 0xba, 0x00, 0x00, 0xc9, 0x00, 0x00, 0xbb, /* 0x50-0x57 */
+  0x00, 0x00, 0xc8, 0x00, 0x00, 0xbc, 0x00, 0x00, /* 0x58-0x5f */
+  0xcc, 0x00, 0x00, 0xb9, 0x00, 0x00, 0xcb, 0x00, /* 0x60-0x67 */
+  0x00, 0xca, 0x00, 0x00, 0xce, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xdf, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+cp852_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0180)
+    c = cp852_page00[wc-0x00a0];
+  else if (wc >= 0x02c0 && wc < 0x02e0)
+    c = cp852_page02[wc-0x02c0];
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = cp852_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp853.h b/graf2d/win32gdk/gdk/src/iconv/cp853.h
new file mode 100644
index 00000000000..fe82ae9817b
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp853.h
@@ -0,0 +1,151 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP853
+ */
+
+static const unsigned short cp853_2uni[128] = {
+  /* 0x80 */
+  0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x0109, 0x00e7,
+  0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x00ec, 0x00c4, 0x0108,
+  /* 0x90 */
+  0x00c9, 0x010b, 0x010a, 0x00f4, 0x00f6, 0x00f2, 0x00fb, 0x00f9,
+  0x0130, 0x00d6, 0x00dc, 0x011d, 0x00a3, 0x011c, 0x00d7, 0x0135,
+  /* 0xa0 */
+  0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x011e, 0x011f,
+  0x0124, 0x0125, 0xfffd, 0x00bd, 0x0134, 0x015f, 0x00ab, 0x00bb,
+  /* 0xb0 */
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x00c1, 0x00c2, 0x00c0,
+  0x015e, 0x2563, 0x2551, 0x2557, 0x255d, 0x017b, 0x017c, 0x2510,
+  /* 0xc0 */
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x015c, 0x015d,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x00a4,
+  /* 0xd0 */
+  0xfffd, 0xfffd, 0x00ca, 0x00cb, 0x00c8, 0x0131, 0x00cd, 0x00ce,
+  0x00cf, 0x2518, 0x250c, 0x2588, 0x2584, 0xfffd, 0x00cc, 0x2580,
+  /* 0xe0 */
+  0x00d3, 0x00df, 0x00d4, 0x00d2, 0x0120, 0x0121, 0x00b5, 0x0126,
+  0x0127, 0x00da, 0x00db, 0x00d9, 0x016c, 0x016d, 0xfffd, 0x00b4,
+  /* 0xf0 */
+  0x00ad, 0xfffd, 0x2113, 0x0149, 0x02d8, 0x00a7, 0x00f7, 0x00b8,
+  0x00b0, 0x00a8, 0x02d9, 0xfffd, 0x00b3, 0x00b2, 0x25a0, 0x00a0,
+};
+
+static int
+cp853_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = cp853_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char cp853_page00[96] = {
+  0xff, 0x00, 0x00, 0x9c, 0xcf, 0x00, 0x00, 0xf5, /* 0xa0-0xa7 */
+  0xf9, 0x00, 0x00, 0xae, 0x00, 0xf0, 0x00, 0x00, /* 0xa8-0xaf */
+  0xf8, 0x00, 0xfd, 0xfc, 0xef, 0xe6, 0x00, 0x00, /* 0xb0-0xb7 */
+  0xf7, 0x00, 0x00, 0xaf, 0x00, 0xab, 0x00, 0x00, /* 0xb8-0xbf */
+  0xb7, 0xb5, 0xb6, 0x00, 0x8e, 0x00, 0x00, 0x80, /* 0xc0-0xc7 */
+  0xd4, 0x90, 0xd2, 0xd3, 0xde, 0xd6, 0xd7, 0xd8, /* 0xc8-0xcf */
+  0x00, 0xa5, 0xe3, 0xe0, 0xe2, 0x00, 0x99, 0x9e, /* 0xd0-0xd7 */
+  0x00, 0xeb, 0xe9, 0xea, 0x9a, 0x00, 0x00, 0xe1, /* 0xd8-0xdf */
+  0x85, 0xa0, 0x83, 0x00, 0x84, 0x00, 0x00, 0x87, /* 0xe0-0xe7 */
+  0x8a, 0x82, 0x88, 0x89, 0x8d, 0xa1, 0x8c, 0x8b, /* 0xe8-0xef */
+  0x00, 0xa4, 0x95, 0xa2, 0x93, 0x00, 0x94, 0xf6, /* 0xf0-0xf7 */
+  0x00, 0x97, 0xa3, 0x96, 0x81, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+};
+static const unsigned char cp853_page01[120] = {
+  0x8f, 0x86, 0x92, 0x91, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x9d, 0x9b, 0xa6, 0xa7, /* 0x18-0x1f */
+  0xe4, 0xe5, 0x00, 0x00, 0xa8, 0xa9, 0xe7, 0xe8, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x98, 0xd5, 0x00, 0x00, 0xac, 0x9f, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0xf3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0xc6, 0xc7, 0xb8, 0xad, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0xec, 0xed, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0xbd, 0xbe, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char cp853_page02[8] = {
+  0xf4, 0xfa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+};
+static const unsigned char cp853_page25[168] = {
+  0xc4, 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xbf, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd9, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xcd, 0xba, 0x00, 0x00, 0xc9, 0x00, 0x00, 0xbb, /* 0x50-0x57 */
+  0x00, 0x00, 0xc8, 0x00, 0x00, 0xbc, 0x00, 0x00, /* 0x58-0x5f */
+  0xcc, 0x00, 0x00, 0xb9, 0x00, 0x00, 0xcb, 0x00, /* 0x60-0x67 */
+  0x00, 0xca, 0x00, 0x00, 0xce, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xdf, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+cp853_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = cp853_page00[wc-0x00a0];
+  else if (wc >= 0x0108 && wc < 0x0180)
+    c = cp853_page01[wc-0x0108];
+  else if (wc >= 0x02d8 && wc < 0x02e0)
+    c = cp853_page02[wc-0x02d8];
+  else if (wc == 0x2113)
+    c = 0xf2;
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = cp853_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp855.h b/graf2d/win32gdk/gdk/src/iconv/cp855.h
new file mode 100644
index 00000000000..ddb8bf17d08
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp855.h
@@ -0,0 +1,128 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP855
+ */
+
+static const unsigned short cp855_2uni[128] = {
+  /* 0x80 */
+  0x0452, 0x0402, 0x0453, 0x0403, 0x0451, 0x0401, 0x0454, 0x0404,
+  0x0455, 0x0405, 0x0456, 0x0406, 0x0457, 0x0407, 0x0458, 0x0408,
+  /* 0x90 */
+  0x0459, 0x0409, 0x045a, 0x040a, 0x045b, 0x040b, 0x045c, 0x040c,
+  0x045e, 0x040e, 0x045f, 0x040f, 0x044e, 0x042e, 0x044a, 0x042a,
+  /* 0xa0 */
+  0x0430, 0x0410, 0x0431, 0x0411, 0x0446, 0x0426, 0x0434, 0x0414,
+  0x0435, 0x0415, 0x0444, 0x0424, 0x0433, 0x0413, 0x00ab, 0x00bb,
+  /* 0xb0 */
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x0445, 0x0425, 0x0438,
+  0x0418, 0x2563, 0x2551, 0x2557, 0x255d, 0x0439, 0x0419, 0x2510,
+  /* 0xc0 */
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x043a, 0x041a,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x00a4,
+  /* 0xd0 */
+  0x043b, 0x041b, 0x043c, 0x041c, 0x043d, 0x041d, 0x043e, 0x041e,
+  0x043f, 0x2518, 0x250c, 0x2588, 0x2584, 0x041f, 0x044f, 0x2580,
+  /* 0xe0 */
+  0x042f, 0x0440, 0x0420, 0x0441, 0x0421, 0x0442, 0x0422, 0x0443,
+  0x0423, 0x0436, 0x0416, 0x0432, 0x0412, 0x044c, 0x042c, 0x2116,
+  /* 0xf0 */
+  0x00ad, 0x044b, 0x042b, 0x0437, 0x0417, 0x0448, 0x0428, 0x044d,
+  0x042d, 0x0449, 0x0429, 0x0447, 0x0427, 0x00a7, 0x25a0, 0x00a0,
+};
+
+static int
+cp855_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) cp855_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char cp855_page00[32] = {
+  0xff, 0x00, 0x00, 0x00, 0xcf, 0x00, 0x00, 0xfd, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0xae, 0x00, 0xf0, 0x00, 0x00, /* 0xa8-0xaf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0xaf, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+};
+static const unsigned char cp855_page04[96] = {
+  0x00, 0x85, 0x81, 0x83, 0x87, 0x89, 0x8b, 0x8d, /* 0x00-0x07 */
+  0x8f, 0x91, 0x93, 0x95, 0x97, 0x00, 0x99, 0x9b, /* 0x08-0x0f */
+  0xa1, 0xa3, 0xec, 0xad, 0xa7, 0xa9, 0xea, 0xf4, /* 0x10-0x17 */
+  0xb8, 0xbe, 0xc7, 0xd1, 0xd3, 0xd5, 0xd7, 0xdd, /* 0x18-0x1f */
+  0xe2, 0xe4, 0xe6, 0xe8, 0xab, 0xb6, 0xa5, 0xfc, /* 0x20-0x27 */
+  0xf6, 0xfa, 0x9f, 0xf2, 0xee, 0xf8, 0x9d, 0xe0, /* 0x28-0x2f */
+  0xa0, 0xa2, 0xeb, 0xac, 0xa6, 0xa8, 0xe9, 0xf3, /* 0x30-0x37 */
+  0xb7, 0xbd, 0xc6, 0xd0, 0xd2, 0xd4, 0xd6, 0xd8, /* 0x38-0x3f */
+  0xe1, 0xe3, 0xe5, 0xe7, 0xaa, 0xb5, 0xa4, 0xfb, /* 0x40-0x47 */
+  0xf5, 0xf9, 0x9e, 0xf1, 0xed, 0xf7, 0x9c, 0xde, /* 0x48-0x4f */
+  0x00, 0x84, 0x80, 0x82, 0x86, 0x88, 0x8a, 0x8c, /* 0x50-0x57 */
+  0x8e, 0x90, 0x92, 0x94, 0x96, 0x00, 0x98, 0x9a, /* 0x58-0x5f */
+};
+static const unsigned char cp855_page25[168] = {
+  0xc4, 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xbf, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd9, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xcd, 0xba, 0x00, 0x00, 0xc9, 0x00, 0x00, 0xbb, /* 0x50-0x57 */
+  0x00, 0x00, 0xc8, 0x00, 0x00, 0xbc, 0x00, 0x00, /* 0x58-0x5f */
+  0xcc, 0x00, 0x00, 0xb9, 0x00, 0x00, 0xcb, 0x00, /* 0x60-0x67 */
+  0x00, 0xca, 0x00, 0x00, 0xce, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xdf, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+cp855_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00c0)
+    c = cp855_page00[wc-0x00a0];
+  else if (wc >= 0x0400 && wc < 0x0460)
+    c = cp855_page04[wc-0x0400];
+  else if (wc == 0x2116)
+    c = 0xef;
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = cp855_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp856.h b/graf2d/win32gdk/gdk/src/iconv/cp856.h
new file mode 100644
index 00000000000..30ba80b331d
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp856.h
@@ -0,0 +1,134 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP856
+ */
+
+static const unsigned short cp856_2uni[128] = {
+  /* 0x80 */
+  0x05d0, 0x05d1, 0x05d2, 0x05d3, 0x05d4, 0x05d5, 0x05d6, 0x05d7,
+  0x05d8, 0x05d9, 0x05da, 0x05db, 0x05dc, 0x05dd, 0x05de, 0x05df,
+  /* 0x90 */
+  0x05e0, 0x05e1, 0x05e2, 0x05e3, 0x05e4, 0x05e5, 0x05e6, 0x05e7,
+  0x05e8, 0x05e9, 0x05ea, 0xfffd, 0x00a3, 0xfffd, 0x00d7, 0xfffd,
+  /* 0xa0 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x00ae, 0x00ac, 0x00bd, 0x00bc, 0xfffd, 0x00ab, 0x00bb,
+  /* 0xb0 */
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0xfffd, 0xfffd, 0xfffd,
+  0x00a9, 0x2563, 0x2551, 0x2557, 0x255d, 0x00a2, 0x00a5, 0x2510,
+  /* 0xc0 */
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0xfffd, 0xfffd,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x00a4,
+  /* 0xd0 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x2518, 0x250c, 0x2588, 0x2584, 0x00a6, 0xfffd, 0x2580,
+  /* 0xe0 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x00b5, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x00af, 0x00b4,
+  /* 0xf0 */
+  0x00ad, 0x00b1, 0x2017, 0x00be, 0x00b6, 0x00a7, 0x00f7, 0x00b8,
+  0x00b0, 0x00a8, 0x00b7, 0x00b9, 0x00b3, 0x00b2, 0x25a0, 0x00a0,
+};
+
+static int
+cp856_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = cp856_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char cp856_page00[88] = {
+  0xff, 0x00, 0xbd, 0x9c, 0xcf, 0xbe, 0xdd, 0xf5, /* 0xa0-0xa7 */
+  0xf9, 0xb8, 0x00, 0xae, 0xaa, 0xf0, 0xa9, 0xee, /* 0xa8-0xaf */
+  0xf8, 0xf1, 0xfd, 0xfc, 0xef, 0xe6, 0xf4, 0xfa, /* 0xb0-0xb7 */
+  0xf7, 0xfb, 0x00, 0xaf, 0xac, 0xab, 0xf3, 0x00, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9e, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf6, /* 0xf0-0xf7 */
+};
+static const unsigned char cp856_page05[32] = {
+  0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, /* 0xd0-0xd7 */
+  0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, /* 0xd8-0xdf */
+  0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, /* 0xe0-0xe7 */
+  0x98, 0x99, 0x9a, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+};
+static const unsigned char cp856_page25[168] = {
+  0xc4, 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xbf, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd9, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xcd, 0xba, 0x00, 0x00, 0xc9, 0x00, 0x00, 0xbb, /* 0x50-0x57 */
+  0x00, 0x00, 0xc8, 0x00, 0x00, 0xbc, 0x00, 0x00, /* 0x58-0x5f */
+  0xcc, 0x00, 0x00, 0xb9, 0x00, 0x00, 0xcb, 0x00, /* 0x60-0x67 */
+  0x00, 0xca, 0x00, 0x00, 0xce, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xdf, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+cp856_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00f8)
+    c = cp856_page00[wc-0x00a0];
+  else if (wc >= 0x05d0 && wc < 0x05f0)
+    c = cp856_page05[wc-0x05d0];
+  else if (wc == 0x2017)
+    c = 0xf2;
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = cp856_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp857.h b/graf2d/win32gdk/gdk/src/iconv/cp857.h
new file mode 100644
index 00000000000..09de722d215
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp857.h
@@ -0,0 +1,138 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP857
+ */
+
+static const unsigned short cp857_2uni[128] = {
+  /* 0x80 */
+  0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+  0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x0131, 0x00c4, 0x00c5,
+  /* 0x90 */
+  0x00c9, 0x00e6, 0x00c6, 0x00f4, 0x00f6, 0x00f2, 0x00fb, 0x00f9,
+  0x0130, 0x00d6, 0x00dc, 0x00f8, 0x00a3, 0x00d8, 0x015e, 0x015f,
+  /* 0xa0 */
+  0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x011e, 0x011f,
+  0x00bf, 0x00ae, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+  /* 0xb0 */
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x00c1, 0x00c2, 0x00c0,
+  0x00a9, 0x2563, 0x2551, 0x2557, 0x255d, 0x00a2, 0x00a5, 0x2510,
+  /* 0xc0 */
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x00e3, 0x00c3,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x00a4,
+  /* 0xd0 */
+  0x00ba, 0x00aa, 0x00ca, 0x00cb, 0x00c8, 0xfffd, 0x00cd, 0x00ce,
+  0x00cf, 0x2518, 0x250c, 0x2588, 0x2584, 0x00a6, 0x00cc, 0x2580,
+  /* 0xe0 */
+  0x00d3, 0x00df, 0x00d4, 0x00d2, 0x00f5, 0x00d5, 0x00b5, 0xfffd,
+  0x00d7, 0x00da, 0x00db, 0x00d9, 0x00ec, 0x00ff, 0x00af, 0x00b4,
+  /* 0xf0 */
+  0x00ad, 0x00b1, 0xfffd, 0x00be, 0x00b6, 0x00a7, 0x00f7, 0x00b8,
+  0x00b0, 0x00a8, 0x00b7, 0x00b9, 0x00b3, 0x00b2, 0x25a0, 0x00a0,
+};
+
+static int
+cp857_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = cp857_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char cp857_page00[96] = {
+  0xff, 0xad, 0xbd, 0x9c, 0xcf, 0xbe, 0xdd, 0xf5, /* 0xa0-0xa7 */
+  0xf9, 0xb8, 0xd1, 0xae, 0xaa, 0xf0, 0xa9, 0xee, /* 0xa8-0xaf */
+  0xf8, 0xf1, 0xfd, 0xfc, 0xef, 0xe6, 0xf4, 0xfa, /* 0xb0-0xb7 */
+  0xf7, 0xfb, 0xd0, 0xaf, 0xac, 0xab, 0xf3, 0xa8, /* 0xb8-0xbf */
+  0xb7, 0xb5, 0xb6, 0xc7, 0x8e, 0x8f, 0x92, 0x80, /* 0xc0-0xc7 */
+  0xd4, 0x90, 0xd2, 0xd3, 0xde, 0xd6, 0xd7, 0xd8, /* 0xc8-0xcf */
+  0x00, 0xa5, 0xe3, 0xe0, 0xe2, 0xe5, 0x99, 0xe8, /* 0xd0-0xd7 */
+  0x9d, 0xeb, 0xe9, 0xea, 0x9a, 0x00, 0x00, 0xe1, /* 0xd8-0xdf */
+  0x85, 0xa0, 0x83, 0xc6, 0x84, 0x86, 0x91, 0x87, /* 0xe0-0xe7 */
+  0x8a, 0x82, 0x88, 0x89, 0xec, 0xa1, 0x8c, 0x8b, /* 0xe8-0xef */
+  0x00, 0xa4, 0x95, 0xa2, 0x93, 0xe4, 0x94, 0xf6, /* 0xf0-0xf7 */
+  0x9b, 0x97, 0xa3, 0x96, 0x81, 0x00, 0x00, 0xed, /* 0xf8-0xff */
+};
+static const unsigned char cp857_page01[72] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa6, 0xa7, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x98, 0x8d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9e, 0x9f, /* 0x58-0x5f */
+};
+static const unsigned char cp857_page25[168] = {
+  0xc4, 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xbf, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd9, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xcd, 0xba, 0x00, 0x00, 0xc9, 0x00, 0x00, 0xbb, /* 0x50-0x57 */
+  0x00, 0x00, 0xc8, 0x00, 0x00, 0xbc, 0x00, 0x00, /* 0x58-0x5f */
+  0xcc, 0x00, 0x00, 0xb9, 0x00, 0x00, 0xcb, 0x00, /* 0x60-0x67 */
+  0x00, 0xca, 0x00, 0x00, 0xce, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xdf, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+cp857_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = cp857_page00[wc-0x00a0];
+  else if (wc >= 0x0118 && wc < 0x0160)
+    c = cp857_page01[wc-0x0118];
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = cp857_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp858.h b/graf2d/win32gdk/gdk/src/iconv/cp858.h
new file mode 100644
index 00000000000..dd26d0a27e2
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp858.h
@@ -0,0 +1,61 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP858
+ */
+
+static int
+cp858_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else if (c == 0xd5)
+    *pwc = 0x20ac;
+  else
+    *pwc = (ucs4_t) cp850_2uni[c-0x80];
+  return 1;
+}
+
+static int
+cp858_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = cp850_page00[wc-0x00a0];
+  else if (wc == 0x0192)
+    c = 0x9f;
+  else if (wc == 0x2017)
+    c = 0xf2;
+  else if (wc == 0x20ac)
+    c = 0xd5;
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = cp850_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp860.h b/graf2d/win32gdk/gdk/src/iconv/cp860.h
new file mode 100644
index 00000000000..2cca2f12ff9
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp860.h
@@ -0,0 +1,149 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP860
+ */
+
+static const unsigned short cp860_2uni[128] = {
+  /* 0x80 */
+  0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e3, 0x00e0, 0x00c1, 0x00e7,
+  0x00ea, 0x00ca, 0x00e8, 0x00cd, 0x00d4, 0x00ec, 0x00c3, 0x00c2,
+  /* 0x90 */
+  0x00c9, 0x00c0, 0x00c8, 0x00f4, 0x00f5, 0x00f2, 0x00da, 0x00f9,
+  0x00cc, 0x00d5, 0x00dc, 0x00a2, 0x00a3, 0x00d9, 0x20a7, 0x00d3,
+  /* 0xa0 */
+  0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x00ba,
+  0x00bf, 0x00d2, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+  /* 0xb0 */
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+  0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+  /* 0xc0 */
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+  /* 0xd0 */
+  0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+  0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+  /* 0xe0 */
+  0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+  0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x03c6, 0x03b5, 0x2229,
+  /* 0xf0 */
+  0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+  0x00b0, 0x2219, 0x00b7, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0,
+};
+
+static int
+cp860_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) cp860_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char cp860_page00[96] = {
+  0xff, 0xad, 0x9b, 0x9c, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0xa6, 0xae, 0xaa, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0xf8, 0xf1, 0xfd, 0x00, 0x00, 0xe6, 0x00, 0xfa, /* 0xb0-0xb7 */
+  0x00, 0x00, 0xa7, 0xaf, 0xac, 0xab, 0x00, 0xa8, /* 0xb8-0xbf */
+  0x91, 0x86, 0x8f, 0x8e, 0x00, 0x00, 0x00, 0x80, /* 0xc0-0xc7 */
+  0x92, 0x90, 0x89, 0x00, 0x98, 0x8b, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0xa5, 0xa9, 0x9f, 0x8c, 0x99, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x9d, 0x96, 0x00, 0x9a, 0x00, 0x00, 0xe1, /* 0xd8-0xdf */
+  0x85, 0xa0, 0x83, 0x84, 0x00, 0x00, 0x00, 0x87, /* 0xe0-0xe7 */
+  0x8a, 0x82, 0x88, 0x00, 0x8d, 0xa1, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0xa4, 0x95, 0xa2, 0x93, 0x94, 0x00, 0xf6, /* 0xf0-0xf7 */
+  0x00, 0x97, 0xa3, 0x00, 0x81, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+};
+static const unsigned char cp860_page03[56] = {
+  0x00, 0x00, 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0xe9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0x00, 0x00, 0x00, 0xe4, 0x00, 0x00, 0xe8, 0x00, /* 0xa0-0xa7 */
+  0x00, 0xea, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x00, 0xe0, 0x00, 0x00, 0xeb, 0xee, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0xe3, 0x00, 0x00, 0xe5, 0xe7, 0x00, 0xed, 0x00, /* 0xc0-0xc7 */
+};
+static const unsigned char cp860_page22[80] = {
+  0x00, 0xf9, 0xfb, 0x00, 0x00, 0x00, 0xec, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0xef, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0xf7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0xf0, 0x00, 0x00, 0xf3, 0xf2, 0x00, 0x00, /* 0x60-0x67 */
+};
+static const unsigned char cp860_page25[168] = {
+  0xc4, 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xbf, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd9, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xcd, 0xba, 0xd5, 0xd6, 0xc9, 0xb8, 0xb7, 0xbb, /* 0x50-0x57 */
+  0xd4, 0xd3, 0xc8, 0xbe, 0xbd, 0xbc, 0xc6, 0xc7, /* 0x58-0x5f */
+  0xcc, 0xb5, 0xb6, 0xb9, 0xd1, 0xd2, 0xcb, 0xcf, /* 0x60-0x67 */
+  0xd0, 0xca, 0xd8, 0xd7, 0xce, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xdf, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0xdb, 0x00, 0x00, 0x00, 0xdd, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0xde, 0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+cp860_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = cp860_page00[wc-0x00a0];
+  else if (wc >= 0x0390 && wc < 0x03c8)
+    c = cp860_page03[wc-0x0390];
+  else if (wc == 0x207f)
+    c = 0xfc;
+  else if (wc == 0x20a7)
+    c = 0x9e;
+  else if (wc >= 0x2218 && wc < 0x2268)
+    c = cp860_page22[wc-0x2218];
+  else if (wc >= 0x2320 && wc < 0x2322)
+    c = wc-0x222c;
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = cp860_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp861.h b/graf2d/win32gdk/gdk/src/iconv/cp861.h
new file mode 100644
index 00000000000..07bcf5f2d8a
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp861.h
@@ -0,0 +1,156 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP861
+ */
+
+static const unsigned short cp861_2uni[128] = {
+  /* 0x80 */
+  0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+  0x00ea, 0x00eb, 0x00e8, 0x00d0, 0x00f0, 0x00de, 0x00c4, 0x00c5,
+  /* 0x90 */
+  0x00c9, 0x00e6, 0x00c6, 0x00f4, 0x00f6, 0x00fe, 0x00fb, 0x00dd,
+  0x00fd, 0x00d6, 0x00dc, 0x00f8, 0x00a3, 0x00d8, 0x20a7, 0x0192,
+  /* 0xa0 */
+  0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00c1, 0x00cd, 0x00d3, 0x00da,
+  0x00bf, 0x2310, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+  /* 0xb0 */
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+  0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+  /* 0xc0 */
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+  /* 0xd0 */
+  0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+  0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+  /* 0xe0 */
+  0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+  0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x03c6, 0x03b5, 0x2229,
+  /* 0xf0 */
+  0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+  0x00b0, 0x2219, 0x00b7, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0,
+};
+
+static int
+cp861_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) cp861_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char cp861_page00[96] = {
+  0xff, 0xad, 0x00, 0x9c, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0xae, 0xaa, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0xf8, 0xf1, 0xfd, 0x00, 0x00, 0xe6, 0x00, 0xfa, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0xaf, 0xac, 0xab, 0x00, 0xa8, /* 0xb8-0xbf */
+  0x00, 0xa4, 0x00, 0x00, 0x8e, 0x8f, 0x92, 0x80, /* 0xc0-0xc7 */
+  0x00, 0x90, 0x00, 0x00, 0x00, 0xa5, 0x00, 0x00, /* 0xc8-0xcf */
+  0x8b, 0x00, 0x00, 0xa6, 0x00, 0x00, 0x99, 0x00, /* 0xd0-0xd7 */
+  0x9d, 0x00, 0xa7, 0x00, 0x9a, 0x97, 0x8d, 0xe1, /* 0xd8-0xdf */
+  0x85, 0xa0, 0x83, 0x00, 0x84, 0x86, 0x91, 0x87, /* 0xe0-0xe7 */
+  0x8a, 0x82, 0x88, 0x89, 0x00, 0xa1, 0x00, 0x00, /* 0xe8-0xef */
+  0x8c, 0x00, 0x00, 0xa2, 0x93, 0x00, 0x94, 0xf6, /* 0xf0-0xf7 */
+  0x9b, 0x00, 0xa3, 0x96, 0x81, 0x98, 0x95, 0x00, /* 0xf8-0xff */
+};
+static const unsigned char cp861_page03[56] = {
+  0x00, 0x00, 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0xe9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0x00, 0x00, 0x00, 0xe4, 0x00, 0x00, 0xe8, 0x00, /* 0xa0-0xa7 */
+  0x00, 0xea, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x00, 0xe0, 0x00, 0x00, 0xeb, 0xee, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0xe3, 0x00, 0x00, 0xe5, 0xe7, 0x00, 0xed, 0x00, /* 0xc0-0xc7 */
+};
+static const unsigned char cp861_page22[80] = {
+  0x00, 0xf9, 0xfb, 0x00, 0x00, 0x00, 0xec, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0xef, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0xf7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0xf0, 0x00, 0x00, 0xf3, 0xf2, 0x00, 0x00, /* 0x60-0x67 */
+};
+static const unsigned char cp861_page23[24] = {
+  0xa9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0xf4, 0xf5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char cp861_page25[168] = {
+  0xc4, 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xbf, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd9, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xcd, 0xba, 0xd5, 0xd6, 0xc9, 0xb8, 0xb7, 0xbb, /* 0x50-0x57 */
+  0xd4, 0xd3, 0xc8, 0xbe, 0xbd, 0xbc, 0xc6, 0xc7, /* 0x58-0x5f */
+  0xcc, 0xb5, 0xb6, 0xb9, 0xd1, 0xd2, 0xcb, 0xcf, /* 0x60-0x67 */
+  0xd0, 0xca, 0xd8, 0xd7, 0xce, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xdf, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0xdb, 0x00, 0x00, 0x00, 0xdd, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0xde, 0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+cp861_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = cp861_page00[wc-0x00a0];
+  else if (wc == 0x0192)
+    c = 0x9f;
+  else if (wc >= 0x0390 && wc < 0x03c8)
+    c = cp861_page03[wc-0x0390];
+  else if (wc == 0x207f)
+    c = 0xfc;
+  else if (wc == 0x20a7)
+    c = 0x9e;
+  else if (wc >= 0x2218 && wc < 0x2268)
+    c = cp861_page22[wc-0x2218];
+  else if (wc >= 0x2310 && wc < 0x2328)
+    c = cp861_page23[wc-0x2310];
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = cp861_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp862.h b/graf2d/win32gdk/gdk/src/iconv/cp862.h
new file mode 100644
index 00000000000..623fc4d5fa5
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp862.h
@@ -0,0 +1,155 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP862
+ */
+
+static const unsigned short cp862_2uni[128] = {
+  /* 0x80 */
+  0x05d0, 0x05d1, 0x05d2, 0x05d3, 0x05d4, 0x05d5, 0x05d6, 0x05d7,
+  0x05d8, 0x05d9, 0x05da, 0x05db, 0x05dc, 0x05dd, 0x05de, 0x05df,
+  /* 0x90 */
+  0x05e0, 0x05e1, 0x05e2, 0x05e3, 0x05e4, 0x05e5, 0x05e6, 0x05e7,
+  0x05e8, 0x05e9, 0x05ea, 0x00a2, 0x00a3, 0x00a5, 0x20a7, 0x0192,
+  /* 0xa0 */
+  0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x00ba,
+  0x00bf, 0x2310, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+  /* 0xb0 */
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+  0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+  /* 0xc0 */
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+  /* 0xd0 */
+  0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+  0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+  /* 0xe0 */
+  0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+  0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x03c6, 0x03b5, 0x2229,
+  /* 0xf0 */
+  0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+  0x00b0, 0x2219, 0x00b7, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0,
+};
+
+static int
+cp862_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) cp862_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char cp862_page00[96] = {
+  0xff, 0xad, 0x9b, 0x9c, 0x00, 0x9d, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0xa6, 0xae, 0xaa, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0xf8, 0xf1, 0xfd, 0x00, 0x00, 0xe6, 0x00, 0xfa, /* 0xb0-0xb7 */
+  0x00, 0x00, 0xa7, 0xaf, 0xac, 0xab, 0x00, 0xa8, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0xa5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe1, /* 0xd8-0xdf */
+  0x00, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0xa1, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0xa4, 0x00, 0xa2, 0x00, 0x00, 0x00, 0xf6, /* 0xf0-0xf7 */
+  0x00, 0x00, 0xa3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+};
+static const unsigned char cp862_page03[56] = {
+  0x00, 0x00, 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0xe9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0x00, 0x00, 0x00, 0xe4, 0x00, 0x00, 0xe8, 0x00, /* 0xa0-0xa7 */
+  0x00, 0xea, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x00, 0xe0, 0x00, 0x00, 0xeb, 0xee, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0xe3, 0x00, 0x00, 0xe5, 0xe7, 0x00, 0xed, 0x00, /* 0xc0-0xc7 */
+};
+static const unsigned char cp862_page22[80] = {
+  0x00, 0xf9, 0xfb, 0x00, 0x00, 0x00, 0xec, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0xef, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0xf7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0xf0, 0x00, 0x00, 0xf3, 0xf2, 0x00, 0x00, /* 0x60-0x67 */
+};
+static const unsigned char cp862_page25[168] = {
+  0xc4, 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xbf, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd9, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xcd, 0xba, 0xd5, 0xd6, 0xc9, 0xb8, 0xb7, 0xbb, /* 0x50-0x57 */
+  0xd4, 0xd3, 0xc8, 0xbe, 0xbd, 0xbc, 0xc6, 0xc7, /* 0x58-0x5f */
+  0xcc, 0xb5, 0xb6, 0xb9, 0xd1, 0xd2, 0xcb, 0xcf, /* 0x60-0x67 */
+  0xd0, 0xca, 0xd8, 0xd7, 0xce, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xdf, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0xdb, 0x00, 0x00, 0x00, 0xdd, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0xde, 0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+cp862_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = cp862_page00[wc-0x00a0];
+  else if (wc == 0x0192)
+    c = 0x9f;
+  else if (wc >= 0x0390 && wc < 0x03c8)
+    c = cp862_page03[wc-0x0390];
+  else if (wc >= 0x05d0 && wc < 0x05eb)
+    c = wc-0x0550;
+  else if (wc == 0x207f)
+    c = 0xfc;
+  else if (wc == 0x20a7)
+    c = 0x9e;
+  else if (wc >= 0x2218 && wc < 0x2268)
+    c = cp862_page22[wc-0x2218];
+  else if (wc == 0x2310)
+    c = 0xa9;
+  else if (wc >= 0x2320 && wc < 0x2322)
+    c = wc-0x222c;
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = cp862_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp863.h b/graf2d/win32gdk/gdk/src/iconv/cp863.h
new file mode 100644
index 00000000000..5890ad423d5
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp863.h
@@ -0,0 +1,156 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP863
+ */
+
+static const unsigned short cp863_2uni[128] = {
+  /* 0x80 */
+  0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00c2, 0x00e0, 0x00b6, 0x00e7,
+  0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x2017, 0x00c0, 0x00a7,
+  /* 0x90 */
+  0x00c9, 0x00c8, 0x00ca, 0x00f4, 0x00cb, 0x00cf, 0x00fb, 0x00f9,
+  0x00a4, 0x00d4, 0x00dc, 0x00a2, 0x00a3, 0x00d9, 0x00db, 0x0192,
+  /* 0xa0 */
+  0x00a6, 0x00b4, 0x00f3, 0x00fa, 0x00a8, 0x00b8, 0x00b3, 0x00af,
+  0x00ce, 0x2310, 0x00ac, 0x00bd, 0x00bc, 0x00be, 0x00ab, 0x00bb,
+  /* 0xb0 */
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+  0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+  /* 0xc0 */
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+  /* 0xd0 */
+  0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+  0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+  /* 0xe0 */
+  0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+  0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x03c6, 0x03b5, 0x2229,
+  /* 0xf0 */
+  0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+  0x00b0, 0x2219, 0x00b7, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0,
+};
+
+static int
+cp863_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) cp863_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char cp863_page00[96] = {
+  0xff, 0x00, 0x9b, 0x9c, 0x98, 0x00, 0xa0, 0x8f, /* 0xa0-0xa7 */
+  0xa4, 0x00, 0x00, 0xae, 0xaa, 0x00, 0x00, 0xa7, /* 0xa8-0xaf */
+  0xf8, 0xf1, 0xfd, 0xa6, 0xa1, 0xe6, 0x86, 0xfa, /* 0xb0-0xb7 */
+  0xa5, 0x00, 0x00, 0xaf, 0xac, 0xab, 0xad, 0x00, /* 0xb8-0xbf */
+  0x8e, 0x00, 0x84, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0xc0-0xc7 */
+  0x91, 0x90, 0x92, 0x94, 0x00, 0x00, 0xa8, 0x95, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x99, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x9d, 0x00, 0x9e, 0x9a, 0x00, 0x00, 0xe1, /* 0xd8-0xdf */
+  0x85, 0x00, 0x83, 0x00, 0x00, 0x00, 0x00, 0x87, /* 0xe0-0xe7 */
+  0x8a, 0x82, 0x88, 0x89, 0x00, 0x00, 0x8c, 0x8b, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0xa2, 0x93, 0x00, 0x00, 0xf6, /* 0xf0-0xf7 */
+  0x00, 0x97, 0xa3, 0x96, 0x81, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+};
+static const unsigned char cp863_page03[56] = {
+  0x00, 0x00, 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0xe9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0x00, 0x00, 0x00, 0xe4, 0x00, 0x00, 0xe8, 0x00, /* 0xa0-0xa7 */
+  0x00, 0xea, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x00, 0xe0, 0x00, 0x00, 0xeb, 0xee, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0xe3, 0x00, 0x00, 0xe5, 0xe7, 0x00, 0xed, 0x00, /* 0xc0-0xc7 */
+};
+static const unsigned char cp863_page22[80] = {
+  0x00, 0xf9, 0xfb, 0x00, 0x00, 0x00, 0xec, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0xef, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0xf7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0xf0, 0x00, 0x00, 0xf3, 0xf2, 0x00, 0x00, /* 0x60-0x67 */
+};
+static const unsigned char cp863_page23[24] = {
+  0xa9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0xf4, 0xf5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char cp863_page25[168] = {
+  0xc4, 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xbf, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd9, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xcd, 0xba, 0xd5, 0xd6, 0xc9, 0xb8, 0xb7, 0xbb, /* 0x50-0x57 */
+  0xd4, 0xd3, 0xc8, 0xbe, 0xbd, 0xbc, 0xc6, 0xc7, /* 0x58-0x5f */
+  0xcc, 0xb5, 0xb6, 0xb9, 0xd1, 0xd2, 0xcb, 0xcf, /* 0x60-0x67 */
+  0xd0, 0xca, 0xd8, 0xd7, 0xce, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xdf, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0xdb, 0x00, 0x00, 0x00, 0xdd, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0xde, 0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+cp863_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = cp863_page00[wc-0x00a0];
+  else if (wc == 0x0192)
+    c = 0x9f;
+  else if (wc >= 0x0390 && wc < 0x03c8)
+    c = cp863_page03[wc-0x0390];
+  else if (wc == 0x2017)
+    c = 0x8d;
+  else if (wc == 0x207f)
+    c = 0xfc;
+  else if (wc >= 0x2218 && wc < 0x2268)
+    c = cp863_page22[wc-0x2218];
+  else if (wc >= 0x2310 && wc < 0x2328)
+    c = cp863_page23[wc-0x2310];
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = cp863_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp864.h b/graf2d/win32gdk/gdk/src/iconv/cp864.h
new file mode 100644
index 00000000000..a1d8c4a23fd
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp864.h
@@ -0,0 +1,188 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP864
+ */
+
+static const unsigned short cp864_2uni_1[16] = {
+  /* 0x20 */
+  0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x066a, 0x0026, 0x0027,
+  0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+};
+static const unsigned short cp864_2uni_2[128] = {
+  /* 0x80 */
+  0x00b0, 0x00b7, 0x2219, 0x221a, 0x2592, 0x2500, 0x2502, 0x253c,
+  0x2524, 0x252c, 0x251c, 0x2534, 0x2510, 0x250c, 0x2514, 0x2518,
+  /* 0x90 */
+  0x03b2, 0x221e, 0x03c6, 0x00b1, 0x00bd, 0x00bc, 0x2248, 0x00ab,
+  0x00bb, 0xfef7, 0xfef8, 0xfffd, 0xfffd, 0xfefb, 0xfefc, 0xfffd,
+  /* 0xa0 */
+  0x00a0, 0x00ad, 0xfe82, 0x00a3, 0x00a4, 0xfe84, 0xfffd, 0xfffd,
+  0xfe8e, 0xfe8f, 0xfe95, 0xfe99, 0x060c, 0xfe9d, 0xfea1, 0xfea5,
+  /* 0xb0 */
+  0x0660, 0x0661, 0x0662, 0x0663, 0x0664, 0x0665, 0x0666, 0x0667,
+  0x0668, 0x0669, 0xfed1, 0x061b, 0xfeb1, 0xfeb5, 0xfeb9, 0x061f,
+  /* 0xc0 */
+  0x00a2, 0xfe80, 0xfe81, 0xfe83, 0xfe85, 0xfeca, 0xfe8b, 0xfe8d,
+  0xfe91, 0xfe93, 0xfe97, 0xfe9b, 0xfe9f, 0xfea3, 0xfea7, 0xfea9,
+  /* 0xd0 */
+  0xfeab, 0xfead, 0xfeaf, 0xfeb3, 0xfeb7, 0xfebb, 0xfebf, 0xfec1,
+  0xfec5, 0xfecb, 0xfecf, 0x00a6, 0x00ac, 0x00f7, 0x00d7, 0xfec9,
+  /* 0xe0 */
+  0x0640, 0xfed3, 0xfed7, 0xfedb, 0xfedf, 0xfee3, 0xfee7, 0xfeeb,
+  0xfeed, 0xfeef, 0xfef3, 0xfebd, 0xfecc, 0xfece, 0xfecd, 0xfee1,
+  /* 0xf0 */
+  0xfe7d, 0x0651, 0xfee5, 0xfee9, 0xfeec, 0xfef0, 0xfef2, 0xfed0,
+  0xfed5, 0xfef5, 0xfef6, 0xfedd, 0xfed9, 0xfef1, 0x25a0, 0xfffd,
+};
+
+static int
+cp864_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x20) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else if (c < 0x30) {
+    *pwc = (ucs4_t) cp864_2uni_1[c-0x20];
+    return 1;
+  }
+  else if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = cp864_2uni_2[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char cp864_page00[8] = {
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x00, 0x26, 0x27, /* 0x20-0x27 */
+};
+static const unsigned char cp864_page00_1[88] = {
+  0xa0, 0x00, 0xc0, 0xa3, 0xa4, 0x00, 0xdb, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x97, 0xdc, 0xa1, 0x00, 0x00, /* 0xa8-0xaf */
+  0x80, 0x93, 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x98, 0x95, 0x94, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xde, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdd, /* 0xf0-0xf7 */
+};
+static const unsigned char cp864_page06[104] = {
+  0x00, 0x00, 0x00, 0x00, 0xac, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0xbb, 0x00, 0x00, 0x00, 0xbf, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0xf1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0x60-0x67 */
+  0xb8, 0xb9, 0x25, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+};
+static const unsigned char cp864_page22[56] = {
+  0x00, 0x82, 0x83, 0x00, 0x00, 0x00, 0x91, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x96, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+};
+static const unsigned char cp864_page25[64] = {
+  0x85, 0x00, 0x86, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x8d, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x8c, 0x00, 0x00, 0x00, 0x8e, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x8f, 0x00, 0x00, 0x00, 0x8a, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x88, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x89, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x8b, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x87, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+};
+static const unsigned char cp864_pagefe[136] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, /* 0x78-0x7f */
+  0xc1, 0xc2, 0xa2, 0xc3, 0xa5, 0xc4, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0xc6, 0x00, 0xc7, 0xa8, 0xa9, /* 0x88-0x8f */
+  0x00, 0xc8, 0x00, 0xc9, 0x00, 0xaa, 0x00, 0xca, /* 0x90-0x97 */
+  0x00, 0xab, 0x00, 0xcb, 0x00, 0xad, 0x00, 0xcc, /* 0x98-0x9f */
+  0x00, 0xae, 0x00, 0xcd, 0x00, 0xaf, 0x00, 0xce, /* 0xa0-0xa7 */
+  0x00, 0xcf, 0x00, 0xd0, 0x00, 0xd1, 0x00, 0xd2, /* 0xa8-0xaf */
+  0x00, 0xbc, 0x00, 0xd3, 0x00, 0xbd, 0x00, 0xd4, /* 0xb0-0xb7 */
+  0x00, 0xbe, 0x00, 0xd5, 0x00, 0xeb, 0x00, 0xd6, /* 0xb8-0xbf */
+  0x00, 0xd7, 0x00, 0x00, 0x00, 0xd8, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0xdf, 0xc5, 0xd9, 0xec, 0xee, 0xed, 0xda, /* 0xc8-0xcf */
+  0xf7, 0xba, 0x00, 0xe1, 0x00, 0xf8, 0x00, 0xe2, /* 0xd0-0xd7 */
+  0x00, 0xfc, 0x00, 0xe3, 0x00, 0xfb, 0x00, 0xe4, /* 0xd8-0xdf */
+  0x00, 0xef, 0x00, 0xe5, 0x00, 0xf2, 0x00, 0xe6, /* 0xe0-0xe7 */
+  0x00, 0xf3, 0x00, 0xe7, 0xf4, 0xe8, 0x00, 0xe9, /* 0xe8-0xef */
+  0xf5, 0xfd, 0xf6, 0xea, 0x00, 0xf9, 0xfa, 0x99, /* 0xf0-0xf7 */
+  0x9a, 0x00, 0x00, 0x9d, 0x9e, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+};
+
+static int
+cp864_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0020) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x0020 && wc < 0x0028)
+    c = cp864_page00[wc-0x0020];
+  else if (wc >= 0x0028 && wc < 0x0080)
+    c = wc;
+  else if (wc >= 0x00a0 && wc < 0x00f8)
+    c = cp864_page00_1[wc-0x00a0];
+  else if (wc == 0x03b2)
+    c = 0x90;
+  else if (wc == 0x03c6)
+    c = 0x92;
+  else if (wc >= 0x0608 && wc < 0x0670)
+    c = cp864_page06[wc-0x0608];
+  else if (wc >= 0x2218 && wc < 0x2250)
+    c = cp864_page22[wc-0x2218];
+  else if (wc >= 0x2500 && wc < 0x2540)
+    c = cp864_page25[wc-0x2500];
+  else if (wc == 0x2592)
+    c = 0x84;
+  else if (wc == 0x25a0)
+    c = 0xfe;
+  else if (wc >= 0xfe78 && wc < 0xff00)
+    c = cp864_pagefe[wc-0xfe78];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp865.h b/graf2d/win32gdk/gdk/src/iconv/cp865.h
new file mode 100644
index 00000000000..3944916d9fd
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp865.h
@@ -0,0 +1,156 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP865
+ */
+
+static const unsigned short cp865_2uni[128] = {
+  /* 0x80 */
+  0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+  0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x00ec, 0x00c4, 0x00c5,
+  /* 0x90 */
+  0x00c9, 0x00e6, 0x00c6, 0x00f4, 0x00f6, 0x00f2, 0x00fb, 0x00f9,
+  0x00ff, 0x00d6, 0x00dc, 0x00f8, 0x00a3, 0x00d8, 0x20a7, 0x0192,
+  /* 0xa0 */
+  0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x00ba,
+  0x00bf, 0x2310, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00a4,
+  /* 0xb0 */
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+  0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+  /* 0xc0 */
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+  /* 0xd0 */
+  0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+  0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+  /* 0xe0 */
+  0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+  0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x03c6, 0x03b5, 0x2229,
+  /* 0xf0 */
+  0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+  0x00b0, 0x2219, 0x00b7, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0,
+};
+
+static int
+cp865_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) cp865_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char cp865_page00[96] = {
+  0xff, 0xad, 0x00, 0x9c, 0xaf, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0xa6, 0xae, 0xaa, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0xf8, 0xf1, 0xfd, 0x00, 0x00, 0xe6, 0x00, 0xfa, /* 0xb0-0xb7 */
+  0x00, 0x00, 0xa7, 0x00, 0xac, 0xab, 0x00, 0xa8, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x8e, 0x8f, 0x92, 0x80, /* 0xc0-0xc7 */
+  0x00, 0x90, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0xa5, 0x00, 0x00, 0x00, 0x00, 0x99, 0x00, /* 0xd0-0xd7 */
+  0x9d, 0x00, 0x00, 0x00, 0x9a, 0x00, 0x00, 0xe1, /* 0xd8-0xdf */
+  0x85, 0xa0, 0x83, 0x00, 0x84, 0x86, 0x91, 0x87, /* 0xe0-0xe7 */
+  0x8a, 0x82, 0x88, 0x89, 0x8d, 0xa1, 0x8c, 0x8b, /* 0xe8-0xef */
+  0x00, 0xa4, 0x95, 0xa2, 0x93, 0x00, 0x94, 0xf6, /* 0xf0-0xf7 */
+  0x9b, 0x97, 0xa3, 0x96, 0x81, 0x00, 0x00, 0x98, /* 0xf8-0xff */
+};
+static const unsigned char cp865_page03[56] = {
+  0x00, 0x00, 0x00, 0xe2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0xe9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0x00, 0x00, 0x00, 0xe4, 0x00, 0x00, 0xe8, 0x00, /* 0xa0-0xa7 */
+  0x00, 0xea, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x00, 0xe0, 0x00, 0x00, 0xeb, 0xee, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0xe3, 0x00, 0x00, 0xe5, 0xe7, 0x00, 0xed, 0x00, /* 0xc0-0xc7 */
+};
+static const unsigned char cp865_page22[80] = {
+  0x00, 0xf9, 0xfb, 0x00, 0x00, 0x00, 0xec, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0xef, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0xf7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0xf0, 0x00, 0x00, 0xf3, 0xf2, 0x00, 0x00, /* 0x60-0x67 */
+};
+static const unsigned char cp865_page23[24] = {
+  0xa9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0xf4, 0xf5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char cp865_page25[168] = {
+  0xc4, 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xbf, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd9, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xcd, 0xba, 0xd5, 0xd6, 0xc9, 0xb8, 0xb7, 0xbb, /* 0x50-0x57 */
+  0xd4, 0xd3, 0xc8, 0xbe, 0xbd, 0xbc, 0xc6, 0xc7, /* 0x58-0x5f */
+  0xcc, 0xb5, 0xb6, 0xb9, 0xd1, 0xd2, 0xcb, 0xcf, /* 0x60-0x67 */
+  0xd0, 0xca, 0xd8, 0xd7, 0xce, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xdf, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0xdb, 0x00, 0x00, 0x00, 0xdd, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0xde, 0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+cp865_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = cp865_page00[wc-0x00a0];
+  else if (wc == 0x0192)
+    c = 0x9f;
+  else if (wc >= 0x0390 && wc < 0x03c8)
+    c = cp865_page03[wc-0x0390];
+  else if (wc == 0x207f)
+    c = 0xfc;
+  else if (wc == 0x20a7)
+    c = 0x9e;
+  else if (wc >= 0x2218 && wc < 0x2268)
+    c = cp865_page22[wc-0x2218];
+  else if (wc >= 0x2310 && wc < 0x2328)
+    c = cp865_page23[wc-0x2310];
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = cp865_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp866.h b/graf2d/win32gdk/gdk/src/iconv/cp866.h
new file mode 100644
index 00000000000..0aaa2169f04
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp866.h
@@ -0,0 +1,125 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP866
+ */
+
+static const unsigned short cp866_2uni[80] = {
+  /* 0xb0 */
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+  0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+  /* 0xc0 */
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+  /* 0xd0 */
+  0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+  0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+  /* 0xe0 */
+  0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
+  0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x044f,
+  /* 0xf0 */
+  0x0401, 0x0451, 0x0404, 0x0454, 0x0407, 0x0457, 0x040e, 0x045e,
+  0x00b0, 0x2219, 0x00b7, 0x221a, 0x2116, 0x00a4, 0x25a0, 0x00a0,
+};
+
+static int
+cp866_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else if (c < 0xb0)
+    *pwc = (ucs4_t) c + 0x0390;
+  else
+    *pwc = (ucs4_t) cp866_2uni[c-0xb0];
+  return 1;
+}
+
+static const unsigned char cp866_page00[24] = {
+  0xff, 0x00, 0x00, 0x00, 0xfd, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfa, /* 0xb0-0xb7 */
+};
+static const unsigned char cp866_page04[96] = {
+  0x00, 0xf0, 0x00, 0x00, 0xf2, 0x00, 0x00, 0xf4, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf6, 0x00, /* 0x08-0x0f */
+  0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, /* 0x10-0x17 */
+  0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, /* 0x18-0x1f */
+  0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, /* 0x20-0x27 */
+  0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, /* 0x28-0x2f */
+  0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, /* 0x30-0x37 */
+  0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, /* 0x38-0x3f */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x40-0x47 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x48-0x4f */
+  0x00, 0xf1, 0x00, 0x00, 0xf3, 0x00, 0x00, 0xf5, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf7, 0x00, /* 0x58-0x5f */
+};
+static const unsigned char cp866_page22[8] = {
+  0x00, 0xf9, 0xfb, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+};
+static const unsigned char cp866_page25[168] = {
+  0xc4, 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xbf, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd9, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xcd, 0xba, 0xd5, 0xd6, 0xc9, 0xb8, 0xb7, 0xbb, /* 0x50-0x57 */
+  0xd4, 0xd3, 0xc8, 0xbe, 0xbd, 0xbc, 0xc6, 0xc7, /* 0x58-0x5f */
+  0xcc, 0xb5, 0xb6, 0xb9, 0xd1, 0xd2, 0xcb, 0xcf, /* 0x60-0x67 */
+  0xd0, 0xca, 0xd8, 0xd7, 0xce, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xdf, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0xdb, 0x00, 0x00, 0x00, 0xdd, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0xde, 0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+cp866_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00b8)
+    c = cp866_page00[wc-0x00a0];
+  else if (wc >= 0x0400 && wc < 0x0460)
+    c = cp866_page04[wc-0x0400];
+  else if (wc == 0x2116)
+    c = 0xfc;
+  else if (wc >= 0x2218 && wc < 0x2220)
+    c = cp866_page22[wc-0x2218];
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = cp866_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp869.h b/graf2d/win32gdk/gdk/src/iconv/cp869.h
new file mode 100644
index 00000000000..8e839d2cfa8
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp869.h
@@ -0,0 +1,137 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP869
+ */
+
+static const unsigned short cp869_2uni[128] = {
+  /* 0x80 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x0386, 0xfffd,
+  0x00b7, 0x00ac, 0x00a6, 0x2018, 0x2019, 0x0388, 0x2015, 0x0389,
+  /* 0x90 */
+  0x038a, 0x03aa, 0x038c, 0xfffd, 0xfffd, 0x038e, 0x03ab, 0x00a9,
+  0x038f, 0x00b2, 0x00b3, 0x03ac, 0x00a3, 0x03ad, 0x03ae, 0x03af,
+  /* 0xa0 */
+  0x03ca, 0x0390, 0x03cc, 0x03cd, 0x0391, 0x0392, 0x0393, 0x0394,
+  0x0395, 0x0396, 0x0397, 0x00bd, 0x0398, 0x0399, 0x00ab, 0x00bb,
+  /* 0xb0 */
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x039a, 0x039b, 0x039c,
+  0x039d, 0x2563, 0x2551, 0x2557, 0x255d, 0x039e, 0x039f, 0x2510,
+  /* 0xc0 */
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x03a0, 0x03a1,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x03a3,
+  /* 0xd0 */
+  0x03a4, 0x03a5, 0x03a6, 0x03a7, 0x03a8, 0x03a9, 0x03b1, 0x03b2,
+  0x03b3, 0x2518, 0x250c, 0x2588, 0x2584, 0x03b4, 0x03b5, 0x2580,
+  /* 0xe0 */
+  0x03b6, 0x03b7, 0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd,
+  0x03be, 0x03bf, 0x03c0, 0x03c1, 0x03c3, 0x03c2, 0x03c4, 0x0384,
+  /* 0xf0 */
+  0x00ad, 0x00b1, 0x03c5, 0x03c6, 0x03c7, 0x00a7, 0x03c8, 0x0385,
+  0x00b0, 0x00a8, 0x03c9, 0x03cb, 0x03b0, 0x03ce, 0x25a0, 0x00a0,
+};
+
+static int
+cp869_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = cp869_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char cp869_page00[32] = {
+  0xff, 0x00, 0x00, 0x9c, 0x00, 0x00, 0x8a, 0xf5, /* 0xa0-0xa7 */
+  0xf9, 0x97, 0x00, 0xae, 0x89, 0xf0, 0x00, 0x00, /* 0xa8-0xaf */
+  0xf8, 0xf1, 0x99, 0x9a, 0x00, 0x00, 0x00, 0x88, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0xaf, 0x00, 0xab, 0x00, 0x00, /* 0xb8-0xbf */
+};
+static const unsigned char cp869_page03[80] = {
+  0x00, 0x00, 0x00, 0x00, 0xef, 0xf7, 0x86, 0x00, /* 0x80-0x87 */
+  0x8d, 0x8f, 0x90, 0x00, 0x92, 0x00, 0x95, 0x98, /* 0x88-0x8f */
+  0xa1, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, /* 0x90-0x97 */
+  0xac, 0xad, 0xb5, 0xb6, 0xb7, 0xb8, 0xbd, 0xbe, /* 0x98-0x9f */
+  0xc6, 0xc7, 0x00, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, /* 0xa0-0xa7 */
+  0xd4, 0xd5, 0x91, 0x96, 0x9b, 0x9d, 0x9e, 0x9f, /* 0xa8-0xaf */
+  0xfc, 0xd6, 0xd7, 0xd8, 0xdd, 0xde, 0xe0, 0xe1, /* 0xb0-0xb7 */
+  0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, /* 0xb8-0xbf */
+  0xea, 0xeb, 0xed, 0xec, 0xee, 0xf2, 0xf3, 0xf4, /* 0xc0-0xc7 */
+  0xf6, 0xfa, 0xa0, 0xfb, 0xa2, 0xa3, 0xfd, 0x00, /* 0xc8-0xcf */
+};
+static const unsigned char cp869_page20[16] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x8e, 0x00, 0x00, /* 0x10-0x17 */
+  0x8b, 0x8c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+};
+static const unsigned char cp869_page25[168] = {
+  0xc4, 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xbf, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd9, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xcd, 0xba, 0x00, 0x00, 0xc9, 0x00, 0x00, 0xbb, /* 0x50-0x57 */
+  0x00, 0x00, 0xc8, 0x00, 0x00, 0xbc, 0x00, 0x00, /* 0x58-0x5f */
+  0xcc, 0x00, 0x00, 0xb9, 0x00, 0x00, 0xcb, 0x00, /* 0x60-0x67 */
+  0x00, 0xca, 0x00, 0x00, 0xce, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xdf, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+cp869_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00c0)
+    c = cp869_page00[wc-0x00a0];
+  else if (wc >= 0x0380 && wc < 0x03d0)
+    c = cp869_page03[wc-0x0380];
+  else if (wc >= 0x2010 && wc < 0x2020)
+    c = cp869_page20[wc-0x2010];
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = cp869_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp874.h b/graf2d/win32gdk/gdk/src/iconv/cp874.h
new file mode 100644
index 00000000000..6374dd7d05c
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp874.h
@@ -0,0 +1,111 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP874
+ */
+
+static const unsigned short cp874_2uni[128] = {
+  /* 0x80 */
+  0x20ac, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x2026, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x90 */
+  0xfffd, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0xa0 */
+  0x00a0, 0x0e01, 0x0e02, 0x0e03, 0x0e04, 0x0e05, 0x0e06, 0x0e07,
+  0x0e08, 0x0e09, 0x0e0a, 0x0e0b, 0x0e0c, 0x0e0d, 0x0e0e, 0x0e0f,
+  /* 0xb0 */
+  0x0e10, 0x0e11, 0x0e12, 0x0e13, 0x0e14, 0x0e15, 0x0e16, 0x0e17,
+  0x0e18, 0x0e19, 0x0e1a, 0x0e1b, 0x0e1c, 0x0e1d, 0x0e1e, 0x0e1f,
+  /* 0xc0 */
+  0x0e20, 0x0e21, 0x0e22, 0x0e23, 0x0e24, 0x0e25, 0x0e26, 0x0e27,
+  0x0e28, 0x0e29, 0x0e2a, 0x0e2b, 0x0e2c, 0x0e2d, 0x0e2e, 0x0e2f,
+  /* 0xd0 */
+  0x0e30, 0x0e31, 0x0e32, 0x0e33, 0x0e34, 0x0e35, 0x0e36, 0x0e37,
+  0x0e38, 0x0e39, 0x0e3a, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x0e3f,
+  /* 0xe0 */
+  0x0e40, 0x0e41, 0x0e42, 0x0e43, 0x0e44, 0x0e45, 0x0e46, 0x0e47,
+  0x0e48, 0x0e49, 0x0e4a, 0x0e4b, 0x0e4c, 0x0e4d, 0x0e4e, 0x0e4f,
+  /* 0xf0 */
+  0x0e50, 0x0e51, 0x0e52, 0x0e53, 0x0e54, 0x0e55, 0x0e56, 0x0e57,
+  0x0e58, 0x0e59, 0x0e5a, 0x0e5b, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+};
+
+static int
+cp874_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = cp874_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char cp874_page0e[96] = {
+  0x00, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, /* 0x00-0x07 */
+  0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, /* 0x08-0x0f */
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0x10-0x17 */
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, /* 0x18-0x1f */
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x20-0x27 */
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x28-0x2f */
+  0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0x30-0x37 */
+  0xd8, 0xd9, 0xda, 0x00, 0x00, 0x00, 0x00, 0xdf, /* 0x38-0x3f */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x40-0x47 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x48-0x4f */
+  0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0x50-0x57 */
+  0xf8, 0xf9, 0xfa, 0xfb, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+};
+static const unsigned char cp874_page20[24] = {
+  0x00, 0x00, 0x00, 0x96, 0x97, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x91, 0x92, 0x00, 0x00, 0x93, 0x94, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0x85, 0x00, /* 0x20-0x27 */
+};
+
+static int
+cp874_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc == 0x00a0)
+    c = 0xa0;
+  else if (wc >= 0x0e00 && wc < 0x0e60)
+    c = cp874_page0e[wc-0x0e00];
+  else if (wc >= 0x2010 && wc < 0x2028)
+    c = cp874_page20[wc-0x2010];
+  else if (wc == 0x20ac)
+    c = 0x80;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp922.h b/graf2d/win32gdk/gdk/src/iconv/cp922.h
new file mode 100644
index 00000000000..ca661b3862f
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp922.h
@@ -0,0 +1,99 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP922
+ */
+
+static const unsigned short cp922_2uni_1[16] = {
+  /* 0xa0 */
+  0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+  0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x203e,
+};
+static const unsigned short cp922_2uni_2[16] = {
+  /* 0xd0 */
+  0x0160, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
+  0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x017d, 0x00df,
+};
+static const unsigned short cp922_2uni_3[16] = {
+  /* 0xf0 */
+  0x0161, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
+  0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x017e, 0x00ff,
+};
+
+static int
+cp922_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0xa0)
+    *pwc = (ucs4_t) c;
+  else if (c < 0xb0)
+    *pwc = (ucs4_t) cp922_2uni_1[c-0xa0];
+  else if (c < 0xd0)
+    *pwc = (ucs4_t) c;
+  else if (c < 0xe0)
+    *pwc = (ucs4_t) cp922_2uni_2[c-0xd0];
+  else if (c < 0xf0)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) cp922_2uni_3[c-0xf0];
+  return 1;
+}
+
+static const unsigned char cp922_page00[88] = {
+  0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0x00, /* 0xa8-0xaf */
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0xb0-0xb7 */
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, /* 0xb8-0xbf */
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0xc0-0xc7 */
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0xc8-0xcf */
+  0x00, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0xd0-0xd7 */
+  0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0x00, 0xdf, /* 0xd8-0xdf */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0xe0-0xe7 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0xe8-0xef */
+  0x00, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0xf0-0xf7 */
+  0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0x00, 0xff, /* 0xf8-0xff */
+};
+static const unsigned char cp922_page01[32] = {
+  0xd0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0xde, 0xfe, 0x00, /* 0x78-0x7f */
+};
+
+static int
+cp922_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a8) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a8 && wc < 0x0100)
+    c = cp922_page00[wc-0x00a8];
+  else if (wc >= 0x0160 && wc < 0x0180)
+    c = cp922_page01[wc-0x0160];
+  else if (wc == 0x203e)
+    c = 0xaf;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp932.h b/graf2d/win32gdk/gdk/src/iconv/cp932.h
new file mode 100644
index 00000000000..6534cd0297d
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp932.h
@@ -0,0 +1,240 @@
+/*
+ * Copyright (C) 1999-2002, 2005 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP932
+ */
+
+/*
+ * Microsoft CP932 is a slightly extended version of SHIFT_JIS.
+ * The differences between the EASTASIA/JIS/SHIFTJIS.TXT and the
+ * VENDORS/MICSFT/WINDOWS/CP932.TXT tables found on ftp.unicode.org are
+ * as follows:
+ *
+ * 1. CP932 uses ASCII, not JISX0201 Roman.
+ *
+ * 2. Some characters in the JISX0208 range are defined differently:
+ *
+ *     code   SHIFTJIS.TXT                   CP932.TXT
+ *    0x815F  0x005C # REVERSE SOLIDUS       0xFF3C # FULLWIDTH REVERSE SOLIDUS
+ *    0x8160  0x301C # WAVE DASH             0xFF5E # FULLWIDTH TILDE
+ *    0x8161  0x2016 # DOUBLE VERTICAL LINE  0x2225 # PARALLEL TO
+ *    0x817C  0x2212 # MINUS SIGN            0xFF0D # FULLWIDTH HYPHEN-MINUS
+ *    0x8191  0x00A2 # CENT SIGN             0xFFE0 # FULLWIDTH CENT SIGN
+ *    0x8192  0x00A3 # POUND SIGN            0xFFE1 # FULLWIDTH POUND SIGN
+ *    0x81CA  0x00AC # NOT SIGN              0xFFE2 # FULLWIDTH NOT SIGN
+ *
+ *    We don't implement the latter 6 of these changes, only the first one.
+ *    SHIFTJIS.TXT makes more sense. However, as a compromise with user
+ *    expectation, we implement the middle 5 of these changes in the
+ *    Unicode to CP932 direction. We don't implement the last one at all,
+ *    because it would collide with the mapping of 0xFA54.
+ *
+ * 3. A few new rows. See cp932ext.h.
+ *
+ * Many variants of CP932 (in GNU libc, JDK, OSF/1, Windows-2000, ICU) also
+ * add:
+ *
+ * 4. Private area mappings:
+ *
+ *              code                 Unicode
+ *    0x{F0..F9}{40..7E,80..FC}  U+E000..U+E757
+ *
+ * We add them too because, although there are backward compatibility problems
+ * when a character from a private area is moved to an official Unicode code
+ * point, they are useful for some people in practice.
+ */
+
+#include "cp932ext.h"
+
+/*
+   Conversion between SJIS codes (s1,s2) and JISX0208 codes (c1,c2):
+   Example. (s1,s2) = 0x8140, (c1,c2) = 0x2121.
+   0x81 <= s1 <= 0x9F || 0xE0 <= s1 <= 0xEA,
+   0x40 <= s2 <= 0x7E || 0x80 <= s2 <= 0xFC,
+   0x21 <= c1 <= 0x74, 0x21 <= c2 <= 0x7E.
+   Invariant:
+     94*2*(s1 < 0xE0 ? s1-0x81 : s1-0xC1) + (s2 < 0x80 ? s2-0x40 : s2-0x41)
+     = 94*(c1-0x21)+(c2-0x21)
+   Conversion (s1,s2) -> (c1,c2):
+     t1 := (s1 < 0xE0 ? s1-0x81 : s1-0xC1)
+     t2 := (s2 < 0x80 ? s2-0x40 : s2-0x41)
+     c1 := 2*t1 + (t2 < 0x5E ? 0 : 1) + 0x21
+     c2 := (t2 < 0x5E ? t2 : t2-0x5E) + 0x21
+   Conversion (c1,c2) -> (s1,s2):
+     t1 := (c1 - 0x21) >> 1
+     t2 := ((c1 - 0x21) & 1) * 0x5E + (c2 - 0x21)
+     s1 := (t1 < 0x1F ? t1+0x81 : t1+0xC1)
+     s2 := (t2 < 0x3F ? t2+0x40 : t2+0x41)
+ */
+
+static int
+cp932_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    return ascii_mbtowc(conv,pwc,s,n);
+  else if (c >= 0xa1 && c <= 0xdf)
+    return jisx0201_mbtowc(conv,pwc,s,n);
+  else {
+    unsigned char s1, s2;
+    s1 = c;
+    if ((s1 >= 0x81 && s1 <= 0x9f && s1 != 0x87) || (s1 >= 0xe0 && s1 <= 0xea)) {
+      if (n < 2)
+        return RET_TOOFEW(0);
+      s2 = s[1];
+      if ((s2 >= 0x40 && s2 <= 0x7e) || (s2 >= 0x80 && s2 <= 0xfc)) {
+        unsigned char t1 = (s1 < 0xe0 ? s1-0x81 : s1-0xc1);
+        unsigned char t2 = (s2 < 0x80 ? s2-0x40 : s2-0x41);
+        unsigned char buf[2];
+        buf[0] = 2*t1 + (t2 < 0x5e ? 0 : 1) + 0x21;
+        buf[1] = (t2 < 0x5e ? t2 : t2-0x5e) + 0x21;
+        return jisx0208_mbtowc(conv,pwc,buf,2);
+      }
+    } else if ((s1 == 0x87) || (s1 >= 0xed && s1 <= 0xee) || (s1 >= 0xfa)) {
+      if (n < 2)
+        return RET_TOOFEW(0);
+      return cp932ext_mbtowc(conv,pwc,s,2);
+    } else if (s1 >= 0xf0 && s1 <= 0xf9) {
+      /* User-defined range. See
+       * Ken Lunde's "CJKV Information Processing", table 4-66, p. 206. */
+      if (n < 2)
+        return RET_TOOFEW(0);
+      s2 = s[1];
+      if ((s2 >= 0x40 && s2 <= 0x7e) || (s2 >= 0x80 && s2 <= 0xfc)) {
+        *pwc = 0xe000 + 188*(s1 - 0xf0) + (s2 < 0x80 ? s2-0x40 : s2-0x41);
+        return 2;
+      }
+    }
+    return RET_ILSEQ;
+  }
+}
+
+static int
+cp932_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char buf[2];
+  int ret;
+
+  /* Try ASCII. */
+  ret = ascii_wctomb(conv,buf,wc,1);
+  if (ret != RET_ILUNI) {
+    unsigned char c;
+    if (ret != 1) abort();
+    c = buf[0];
+    if (c < 0x80) {
+      r[0] = c;
+      return 1;
+    }
+  }
+
+  /* Try JIS X 0201-1976 Katakana. */
+  ret = jisx0201_wctomb(conv,buf,wc,1);
+  if (ret != RET_ILUNI) {
+    unsigned char c;
+    if (ret != 1) abort();
+    c = buf[0];
+    if (c >= 0xa1 && c <= 0xdf) {
+      r[0] = c;
+      return 1;
+    }
+  }
+
+  /* Try JIS X 0208-1990. */
+  ret = jisx0208_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    unsigned char c1, c2;
+    if (ret != 2) abort();
+    if (n < 2)
+      return RET_TOOSMALL;
+    c1 = buf[0];
+    c2 = buf[1];
+    if ((c1 >= 0x21 && c1 <= 0x74) && (c2 >= 0x21 && c2 <= 0x7e)) {
+      unsigned char t1 = (c1 - 0x21) >> 1;
+      unsigned char t2 = (((c1 - 0x21) & 1) ? 0x5e : 0) + (c2 - 0x21);
+      r[0] = (t1 < 0x1f ? t1+0x81 : t1+0xc1);
+      r[1] = (t2 < 0x3f ? t2+0x40 : t2+0x41);
+      return 2;
+    }
+  }
+
+  /* Try CP932 extensions. */
+  ret = cp932ext_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = buf[0];
+    r[1] = buf[1];
+    return 2;
+  }
+
+  /* User-defined range. See
+   * Ken Lunde's "CJKV Information Processing", table 4-66, p. 206. */
+  if (wc >= 0xe000 && wc < 0xe758) {
+    unsigned char c1, c2;
+    if (n < 2)
+      return RET_TOOSMALL;
+    c1 = (unsigned int) (wc - 0xe000) / 188;
+    c2 = (unsigned int) (wc - 0xe000) % 188;
+    r[0] = c1+0xf0;
+    r[1] = (c2 < 0x3f ? c2+0x40 : c2+0x41);
+    return 2;
+  }
+
+  /* Irreversible mappings.  */
+  if (wc == 0xff5e) {
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = 0x81;
+    r[1] = 0x60;
+    return 2;
+  }
+  if (wc == 0x2225) {
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = 0x81;
+    r[1] = 0x61;
+    return 2;
+  }
+  if (wc == 0xff0d) {
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = 0x81;
+    r[1] = 0x7c;
+    return 2;
+  }
+  if (wc == 0xffe0) {
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = 0x81;
+    r[1] = 0x91;
+    return 2;
+  }
+  if (wc == 0xffe1) {
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = 0x81;
+    r[1] = 0x92;
+    return 2;
+  }
+
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp932ext.h b/graf2d/win32gdk/gdk/src/iconv/cp932ext.h
new file mode 100644
index 00000000000..6f94c9a5cfb
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp932ext.h
@@ -0,0 +1,709 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP932 extensions
+ */
+
+static const unsigned short cp932ext_2uni_page87[92] = {
+  /* 0x87 */
+  0x2460, 0x2461, 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, 0x2467,
+  0x2468, 0x2469, 0x246a, 0x246b, 0x246c, 0x246d, 0x246e, 0x246f,
+  0x2470, 0x2471, 0x2472, 0x2473, 0x2160, 0x2161, 0x2162, 0x2163,
+  0x2164, 0x2165, 0x2166, 0x2167, 0x2168, 0x2169, 0xfffd, 0x3349,
+  0x3314, 0x3322, 0x334d, 0x3318, 0x3327, 0x3303, 0x3336, 0x3351,
+  0x3357, 0x330d, 0x3326, 0x3323, 0x332b, 0x334a, 0x333b, 0x339c,
+  0x339d, 0x339e, 0x338e, 0x338f, 0x33c4, 0x33a1, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x337b, 0x301d,
+  0x301f, 0x2116, 0x33cd, 0x2121, 0x32a4, 0x32a5, 0x32a6, 0x32a7,
+  0x32a8, 0x3231, 0x3232, 0x3239, 0x337e, 0x337d, 0x337c, 0x2252,
+  0x2261, 0x222b, 0x222e, 0x2211, 0x221a, 0x22a5, 0x2220, 0x221f,
+  0x22bf, 0x2235, 0x2229, 0x222a,
+};
+static const unsigned short cp932ext_2uni_pageed[376] = {
+  /* 0xed */
+  0x7e8a, 0x891c, 0x9348, 0x9288, 0x84dc, 0x4fc9, 0x70bb, 0x6631,
+  0x68c8, 0x92f9, 0x66fb, 0x5f45, 0x4e28, 0x4ee1, 0x4efc, 0x4f00,
+  0x4f03, 0x4f39, 0x4f56, 0x4f92, 0x4f8a, 0x4f9a, 0x4f94, 0x4fcd,
+  0x5040, 0x5022, 0x4fff, 0x501e, 0x5046, 0x5070, 0x5042, 0x5094,
+  0x50f4, 0x50d8, 0x514a, 0x5164, 0x519d, 0x51be, 0x51ec, 0x5215,
+  0x529c, 0x52a6, 0x52c0, 0x52db, 0x5300, 0x5307, 0x5324, 0x5372,
+  0x5393, 0x53b2, 0x53dd, 0xfa0e, 0x549c, 0x548a, 0x54a9, 0x54ff,
+  0x5586, 0x5759, 0x5765, 0x57ac, 0x57c8, 0x57c7, 0xfa0f, 0xfa10,
+  0x589e, 0x58b2, 0x590b, 0x5953, 0x595b, 0x595d, 0x5963, 0x59a4,
+  0x59ba, 0x5b56, 0x5bc0, 0x752f, 0x5bd8, 0x5bec, 0x5c1e, 0x5ca6,
+  0x5cba, 0x5cf5, 0x5d27, 0x5d53, 0xfa11, 0x5d42, 0x5d6d, 0x5db8,
+  0x5db9, 0x5dd0, 0x5f21, 0x5f34, 0x5f67, 0x5fb7, 0x5fde, 0x605d,
+  0x6085, 0x608a, 0x60de, 0x60d5, 0x6120, 0x60f2, 0x6111, 0x6137,
+  0x6130, 0x6198, 0x6213, 0x62a6, 0x63f5, 0x6460, 0x649d, 0x64ce,
+  0x654e, 0x6600, 0x6615, 0x663b, 0x6609, 0x662e, 0x661e, 0x6624,
+  0x6665, 0x6657, 0x6659, 0xfa12, 0x6673, 0x6699, 0x66a0, 0x66b2,
+  0x66bf, 0x66fa, 0x670e, 0xf929, 0x6766, 0x67bb, 0x6852, 0x67c0,
+  0x6801, 0x6844, 0x68cf, 0xfa13, 0x6968, 0xfa14, 0x6998, 0x69e2,
+  0x6a30, 0x6a6b, 0x6a46, 0x6a73, 0x6a7e, 0x6ae2, 0x6ae4, 0x6bd6,
+  0x6c3f, 0x6c5c, 0x6c86, 0x6c6f, 0x6cda, 0x6d04, 0x6d87, 0x6d6f,
+  0x6d96, 0x6dac, 0x6dcf, 0x6df8, 0x6df2, 0x6dfc, 0x6e39, 0x6e5c,
+  0x6e27, 0x6e3c, 0x6ebf, 0x6f88, 0x6fb5, 0x6ff5, 0x7005, 0x7007,
+  0x7028, 0x7085, 0x70ab, 0x710f, 0x7104, 0x715c, 0x7146, 0x7147,
+  0xfa15, 0x71c1, 0x71fe, 0x72b1,
+  /* 0xee */
+  0x72be, 0x7324, 0xfa16, 0x7377, 0x73bd, 0x73c9, 0x73d6, 0x73e3,
+  0x73d2, 0x7407, 0x73f5, 0x7426, 0x742a, 0x7429, 0x742e, 0x7462,
+  0x7489, 0x749f, 0x7501, 0x756f, 0x7682, 0x769c, 0x769e, 0x769b,
+  0x76a6, 0xfa17, 0x7746, 0x52af, 0x7821, 0x784e, 0x7864, 0x787a,
+  0x7930, 0xfa18, 0xfa19, 0xfa1a, 0x7994, 0xfa1b, 0x799b, 0x7ad1,
+  0x7ae7, 0xfa1c, 0x7aeb, 0x7b9e, 0xfa1d, 0x7d48, 0x7d5c, 0x7db7,
+  0x7da0, 0x7dd6, 0x7e52, 0x7f47, 0x7fa1, 0xfa1e, 0x8301, 0x8362,
+  0x837f, 0x83c7, 0x83f6, 0x8448, 0x84b4, 0x8553, 0x8559, 0x856b,
+  0xfa1f, 0x85b0, 0xfa20, 0xfa21, 0x8807, 0x88f5, 0x8a12, 0x8a37,
+  0x8a79, 0x8aa7, 0x8abe, 0x8adf, 0xfa22, 0x8af6, 0x8b53, 0x8b7f,
+  0x8cf0, 0x8cf4, 0x8d12, 0x8d76, 0xfa23, 0x8ecf, 0xfa24, 0xfa25,
+  0x9067, 0x90de, 0xfa26, 0x9115, 0x9127, 0x91da, 0x91d7, 0x91de,
+  0x91ed, 0x91ee, 0x91e4, 0x91e5, 0x9206, 0x9210, 0x920a, 0x923a,
+  0x9240, 0x923c, 0x924e, 0x9259, 0x9251, 0x9239, 0x9267, 0x92a7,
+  0x9277, 0x9278, 0x92e7, 0x92d7, 0x92d9, 0x92d0, 0xfa27, 0x92d5,
+  0x92e0, 0x92d3, 0x9325, 0x9321, 0x92fb, 0xfa28, 0x931e, 0x92ff,
+  0x931d, 0x9302, 0x9370, 0x9357, 0x93a4, 0x93c6, 0x93de, 0x93f8,
+  0x9431, 0x9445, 0x9448, 0x9592, 0xf9dc, 0xfa29, 0x969d, 0x96af,
+  0x9733, 0x973b, 0x9743, 0x974d, 0x974f, 0x9751, 0x9755, 0x9857,
+  0x9865, 0xfa2a, 0xfa2b, 0x9927, 0xfa2c, 0x999e, 0x9a4e, 0x9ad9,
+  0x9adc, 0x9b75, 0x9b72, 0x9b8f, 0x9bb1, 0x9bbb, 0x9c00, 0x9d70,
+  0x9d6b, 0xfa2d, 0x9e19, 0x9ed1, 0xfffd, 0xfffd, 0x2170, 0x2171,
+  0x2172, 0x2173, 0x2174, 0x2175, 0x2176, 0x2177, 0x2178, 0x2179,
+  0xffe2, 0xffe4, 0xff07, 0xff02,
+};
+static const unsigned short cp932ext_2uni_pagefa[388] = {
+  /* 0xfa */
+  0x2170, 0x2171, 0x2172, 0x2173, 0x2174, 0x2175, 0x2176, 0x2177,
+  0x2178, 0x2179, 0x2160, 0x2161, 0x2162, 0x2163, 0x2164, 0x2165,
+  0x2166, 0x2167, 0x2168, 0x2169, 0xffe2, 0xffe4, 0xff07, 0xff02,
+  0x3231, 0x2116, 0x2121, 0x2235, 0x7e8a, 0x891c, 0x9348, 0x9288,
+  0x84dc, 0x4fc9, 0x70bb, 0x6631, 0x68c8, 0x92f9, 0x66fb, 0x5f45,
+  0x4e28, 0x4ee1, 0x4efc, 0x4f00, 0x4f03, 0x4f39, 0x4f56, 0x4f92,
+  0x4f8a, 0x4f9a, 0x4f94, 0x4fcd, 0x5040, 0x5022, 0x4fff, 0x501e,
+  0x5046, 0x5070, 0x5042, 0x5094, 0x50f4, 0x50d8, 0x514a, 0x5164,
+  0x519d, 0x51be, 0x51ec, 0x5215, 0x529c, 0x52a6, 0x52c0, 0x52db,
+  0x5300, 0x5307, 0x5324, 0x5372, 0x5393, 0x53b2, 0x53dd, 0xfa0e,
+  0x549c, 0x548a, 0x54a9, 0x54ff, 0x5586, 0x5759, 0x5765, 0x57ac,
+  0x57c8, 0x57c7, 0xfa0f, 0xfa10, 0x589e, 0x58b2, 0x590b, 0x5953,
+  0x595b, 0x595d, 0x5963, 0x59a4, 0x59ba, 0x5b56, 0x5bc0, 0x752f,
+  0x5bd8, 0x5bec, 0x5c1e, 0x5ca6, 0x5cba, 0x5cf5, 0x5d27, 0x5d53,
+  0xfa11, 0x5d42, 0x5d6d, 0x5db8, 0x5db9, 0x5dd0, 0x5f21, 0x5f34,
+  0x5f67, 0x5fb7, 0x5fde, 0x605d, 0x6085, 0x608a, 0x60de, 0x60d5,
+  0x6120, 0x60f2, 0x6111, 0x6137, 0x6130, 0x6198, 0x6213, 0x62a6,
+  0x63f5, 0x6460, 0x649d, 0x64ce, 0x654e, 0x6600, 0x6615, 0x663b,
+  0x6609, 0x662e, 0x661e, 0x6624, 0x6665, 0x6657, 0x6659, 0xfa12,
+  0x6673, 0x6699, 0x66a0, 0x66b2, 0x66bf, 0x66fa, 0x670e, 0xf929,
+  0x6766, 0x67bb, 0x6852, 0x67c0, 0x6801, 0x6844, 0x68cf, 0xfa13,
+  0x6968, 0xfa14, 0x6998, 0x69e2, 0x6a30, 0x6a6b, 0x6a46, 0x6a73,
+  0x6a7e, 0x6ae2, 0x6ae4, 0x6bd6, 0x6c3f, 0x6c5c, 0x6c86, 0x6c6f,
+  0x6cda, 0x6d04, 0x6d87, 0x6d6f,
+  /* 0xfb */
+  0x6d96, 0x6dac, 0x6dcf, 0x6df8, 0x6df2, 0x6dfc, 0x6e39, 0x6e5c,
+  0x6e27, 0x6e3c, 0x6ebf, 0x6f88, 0x6fb5, 0x6ff5, 0x7005, 0x7007,
+  0x7028, 0x7085, 0x70ab, 0x710f, 0x7104, 0x715c, 0x7146, 0x7147,
+  0xfa15, 0x71c1, 0x71fe, 0x72b1, 0x72be, 0x7324, 0xfa16, 0x7377,
+  0x73bd, 0x73c9, 0x73d6, 0x73e3, 0x73d2, 0x7407, 0x73f5, 0x7426,
+  0x742a, 0x7429, 0x742e, 0x7462, 0x7489, 0x749f, 0x7501, 0x756f,
+  0x7682, 0x769c, 0x769e, 0x769b, 0x76a6, 0xfa17, 0x7746, 0x52af,
+  0x7821, 0x784e, 0x7864, 0x787a, 0x7930, 0xfa18, 0xfa19, 0xfa1a,
+  0x7994, 0xfa1b, 0x799b, 0x7ad1, 0x7ae7, 0xfa1c, 0x7aeb, 0x7b9e,
+  0xfa1d, 0x7d48, 0x7d5c, 0x7db7, 0x7da0, 0x7dd6, 0x7e52, 0x7f47,
+  0x7fa1, 0xfa1e, 0x8301, 0x8362, 0x837f, 0x83c7, 0x83f6, 0x8448,
+  0x84b4, 0x8553, 0x8559, 0x856b, 0xfa1f, 0x85b0, 0xfa20, 0xfa21,
+  0x8807, 0x88f5, 0x8a12, 0x8a37, 0x8a79, 0x8aa7, 0x8abe, 0x8adf,
+  0xfa22, 0x8af6, 0x8b53, 0x8b7f, 0x8cf0, 0x8cf4, 0x8d12, 0x8d76,
+  0xfa23, 0x8ecf, 0xfa24, 0xfa25, 0x9067, 0x90de, 0xfa26, 0x9115,
+  0x9127, 0x91da, 0x91d7, 0x91de, 0x91ed, 0x91ee, 0x91e4, 0x91e5,
+  0x9206, 0x9210, 0x920a, 0x923a, 0x9240, 0x923c, 0x924e, 0x9259,
+  0x9251, 0x9239, 0x9267, 0x92a7, 0x9277, 0x9278, 0x92e7, 0x92d7,
+  0x92d9, 0x92d0, 0xfa27, 0x92d5, 0x92e0, 0x92d3, 0x9325, 0x9321,
+  0x92fb, 0xfa28, 0x931e, 0x92ff, 0x931d, 0x9302, 0x9370, 0x9357,
+  0x93a4, 0x93c6, 0x93de, 0x93f8, 0x9431, 0x9445, 0x9448, 0x9592,
+  0xf9dc, 0xfa29, 0x969d, 0x96af, 0x9733, 0x973b, 0x9743, 0x974d,
+  0x974f, 0x9751, 0x9755, 0x9857, 0x9865, 0xfa2a, 0xfa2b, 0x9927,
+  0xfa2c, 0x999e, 0x9a4e, 0x9ad9,
+  /* 0xfc */
+  0x9adc, 0x9b75, 0x9b72, 0x9b8f, 0x9bb1, 0x9bbb, 0x9c00, 0x9d70,
+  0x9d6b, 0xfa2d, 0x9e19, 0x9ed1,
+};
+
+static int
+cp932ext_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 == 0x87) || (c1 >= 0xed && c1 <= 0xee) || (c1 >= 0xfa && c1 <= 0xfc)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if ((c2 >= 0x40 && c2 < 0x7f) || (c2 >= 0x80 && c2 < 0xfd)) {
+        unsigned int i = 188 * (c1 - (c1 >= 0xe0 ? 0xc1 : 0x81)) + (c2 - (c2 >= 0x80 ? 0x41 : 0x40));
+        unsigned short wc = 0xfffd;
+        if (i < 8272) {
+          if (i < 1220)
+            wc = cp932ext_2uni_page87[i-1128];
+        } else if (i < 10716) {
+          if (i < 8648)
+            wc = cp932ext_2uni_pageed[i-8272];
+        } else {
+          if (i < 11104)
+            wc = cp932ext_2uni_pagefa[i-10716];
+        }
+        if (wc != 0xfffd) {
+          *pwc = (ucs4_t) wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned short cp932ext_2charset[457] = {
+  0xfa59, 0xfa5a, 0xfa4a, 0xfa4b, 0xfa4c, 0xfa4d, 0xfa4e, 0xfa4f,
+  0xfa50, 0xfa51, 0xfa52, 0xfa53, 0xfa40, 0xfa41, 0xfa42, 0xfa43,
+  0xfa44, 0xfa45, 0xfa46, 0xfa47, 0xfa48, 0xfa49, 0x8794, 0x8795,
+  0x8798, 0x8797, 0x879b, 0x879c, 0x8792, 0x8793, 0xfa5b, 0x8790,
+  0x8791, 0x8796, 0x8799, 0x8740, 0x8741, 0x8742, 0x8743, 0x8744,
+  0x8745, 0x8746, 0x8747, 0x8748, 0x8749, 0x874a, 0x874b, 0x874c,
+  0x874d, 0x874e, 0x874f, 0x8750, 0x8751, 0x8752, 0x8753, 0x8780,
+  0x8781, 0xfa58, 0x878b, 0x878c, 0x8785, 0x8786, 0x8787, 0x8788,
+  0x8789, 0x8765, 0x8769, 0x8760, 0x8763, 0x8761, 0x876b, 0x876a,
+  0x8764, 0x876c, 0x8766, 0x876e, 0x875f, 0x876d, 0x8762, 0x8767,
+  0x8768, 0x877e, 0x878f, 0x878e, 0x878d, 0x8772, 0x8773, 0x876f,
+  0x8770, 0x8771, 0x8775, 0x8774, 0x8783, 0xfa68, 0xfa69, 0xfa6a,
+  0xfa6b, 0xfa6c, 0xfa6d, 0xfa6e, 0xfa70, 0xfa6f, 0xfa72, 0xfa71,
+  0xfa61, 0xfa73, 0xfa76, 0xfa77, 0xfa75, 0xfa74, 0xfa7a, 0xfa78,
+  0xfa79, 0xfa7b, 0xfa7d, 0xfa7c, 0xfa7e, 0xfa80, 0xfa81, 0xfa82,
+  0xfa83, 0xfa84, 0xfa85, 0xfa86, 0xfb77, 0xfa87, 0xfa88, 0xfa89,
+  0xfa8a, 0xfa8b, 0xfa8c, 0xfa8d, 0xfa8e, 0xfa8f, 0xfa92, 0xfa91,
+  0xfa93, 0xfa94, 0xfa95, 0xfa96, 0xfa97, 0xfa98, 0xfa9a, 0xfa99,
+  0xfa9d, 0xfa9e, 0xfa9f, 0xfaa0, 0xfaa1, 0xfaa2, 0xfaa3, 0xfaa4,
+  0xfaa5, 0xfaa6, 0xfaa7, 0xfaa9, 0xfaaa, 0xfaab, 0xfaac, 0xfaad,
+  0xfaae, 0xfaaf, 0xfab2, 0xfab0, 0xfab3, 0xfab4, 0xfab5, 0xfab6,
+  0xfab7, 0xfab8, 0xfa67, 0xfab9, 0xfaba, 0xfabb, 0xfabc, 0xfabd,
+  0xfabe, 0xfac0, 0xfabf, 0xfac2, 0xfac3, 0xfac1, 0xfac5, 0xfac4,
+  0xfac6, 0xfac7, 0xfac8, 0xfac9, 0xfaca, 0xfacb, 0xfacc, 0xfacd,
+  0xface, 0xfad1, 0xfacf, 0xfad3, 0xfad4, 0xfad2, 0xfa63, 0xfad0,
+  0xfad6, 0xfad7, 0xfad5, 0xfad9, 0xfada, 0xfadb, 0xfadc, 0xfadd,
+  0xfade, 0xfa66, 0xfadf, 0xfae1, 0xfae2, 0xfae4, 0xfae5, 0xfae6,
+  0xfae3, 0xfa64, 0xfae7, 0xfae9, 0xfaeb, 0xfaec, 0xfaed, 0xfaef,
+  0xfaee, 0xfaf0, 0xfaf1, 0xfaf2, 0xfaf3, 0xfaf4, 0xfaf5, 0xfaf6,
+  0xfaf8, 0xfaf7, 0xfaf9, 0xfafa, 0xfafc, 0xfafb, 0xfb40, 0xfb41,
+  0xfb42, 0xfb44, 0xfb43, 0xfb45, 0xfb48, 0xfb46, 0xfb49, 0xfb47,
+  0xfb4a, 0xfb4b, 0xfb4c, 0xfb4d, 0xfb4e, 0xfb4f, 0xfb50, 0xfb51,
+  0xfb52, 0xfa62, 0xfb54, 0xfb53, 0xfb56, 0xfb57, 0xfb55, 0xfb59,
+  0xfb5a, 0xfb5b, 0xfb5c, 0xfb5d, 0xfb5f, 0xfb60, 0xfb61, 0xfb64,
+  0xfb62, 0xfb63, 0xfb66, 0xfb65, 0xfb67, 0xfb69, 0xfb68, 0xfb6a,
+  0xfb6b, 0xfb6c, 0xfb6d, 0xfb6e, 0xfaa8, 0xfb6f, 0xfb70, 0xfb73,
+  0xfb71, 0xfb72, 0xfb74, 0xfb76, 0xfb78, 0xfb79, 0xfb7a, 0xfb7b,
+  0xfb7c, 0xfb81, 0xfb83, 0xfb84, 0xfb85, 0xfb87, 0xfb88, 0xfb8a,
+  0xfb8b, 0xfb8d, 0xfb8c, 0xfb8e, 0xfb8f, 0xfa5c, 0xfb90, 0xfb91,
+  0xfb93, 0xfb94, 0xfb95, 0xfb96, 0xfb97, 0xfb98, 0xfb99, 0xfa60,
+  0xfb9a, 0xfb9b, 0xfb9c, 0xfb9e, 0xfba1, 0xfba2, 0xfa5d, 0xfba3,
+  0xfba4, 0xfba5, 0xfba6, 0xfba7, 0xfba8, 0xfbaa, 0xfbab, 0xfbac,
+  0xfbad, 0xfbae, 0xfbaf, 0xfbb0, 0xfbb2, 0xfbb5, 0xfbb6, 0xfbb8,
+  0xfbb9, 0xfbbb, 0xfbba, 0xfbbc, 0xfbbf, 0xfbc0, 0xfbbd, 0xfbbe,
+  0xfbc1, 0xfbc3, 0xfbc2, 0xfbca, 0xfbc4, 0xfbc6, 0xfbc5, 0xfbc7,
+  0xfbc9, 0xfbc8, 0xfbcb, 0xfbcd, 0xfbce, 0xfa5f, 0xfbcc, 0xfbd2,
+  0xfbd6, 0xfbd4, 0xfbd0, 0xfbd1, 0xfbd5, 0xfbcf, 0xfa65, 0xfbd9,
+  0xfbdc, 0xfbde, 0xfbdd, 0xfbdb, 0xfbd8, 0xfbd7, 0xfa5e, 0xfbe0,
+  0xfbdf, 0xfbe1, 0xfbe2, 0xfbe3, 0xfbe4, 0xfbe5, 0xfbe6, 0xfbe7,
+  0xfbe8, 0xfbeb, 0xfbec, 0xfbed, 0xfbee, 0xfbef, 0xfbf0, 0xfbf1,
+  0xfbf2, 0xfbf3, 0xfbf4, 0xfbf5, 0xfbf8, 0xfbfa, 0xfbfb, 0xfbfc,
+  0xfc40, 0xfc42, 0xfc41, 0xfc43, 0xfc44, 0xfc45, 0xfc46, 0xfc48,
+  0xfc47, 0xfc4a, 0xfc4b, 0xfae0, 0xfbe9, 0xfa90, 0xfa9b, 0xfa9c,
+  0xfab1, 0xfad8, 0xfae8, 0xfaea, 0xfb58, 0xfb5e, 0xfb75, 0xfb7d,
+  0xfb7e, 0xfb80, 0xfb82, 0xfb86, 0xfb89, 0xfb92, 0xfb9d, 0xfb9f,
+  0xfba0, 0xfba9, 0xfbb1, 0xfbb3, 0xfbb4, 0xfbb7, 0xfbd3, 0xfbda,
+  0xfbea, 0xfbf6, 0xfbf7, 0xfbf9, 0xfc49, 0xfa57, 0xfa56, 0xfa54,
+  0xfa55,
+};
+
+static const Summary16 cp932ext_uni2indx_page21[28] = {
+  /* 0x2100 */
+  {    0, 0x0000 }, {    0, 0x0040 }, {    1, 0x0002 }, {    2, 0x0000 },
+  {    2, 0x0000 }, {    2, 0x0000 }, {    2, 0x03ff }, {   12, 0x03ff },
+  {   22, 0x0000 }, {   22, 0x0000 }, {   22, 0x0000 }, {   22, 0x0000 },
+  {   22, 0x0000 }, {   22, 0x0000 }, {   22, 0x0000 }, {   22, 0x0000 },
+  /* 0x2200 */
+  {   22, 0x0000 }, {   22, 0x8402 }, {   25, 0x4e01 }, {   30, 0x0020 },
+  {   31, 0x0000 }, {   31, 0x0004 }, {   32, 0x0002 }, {   33, 0x0000 },
+  {   33, 0x0000 }, {   33, 0x0000 }, {   33, 0x0020 }, {   34, 0x8000 },
+};
+static const Summary16 cp932ext_uni2indx_page24[8] = {
+  /* 0x2400 */
+  {   35, 0x0000 }, {   35, 0x0000 }, {   35, 0x0000 }, {   35, 0x0000 },
+  {   35, 0x0000 }, {   35, 0x0000 }, {   35, 0xffff }, {   51, 0x000f },
+};
+static const Summary16 cp932ext_uni2indx_page30[2] = {
+  /* 0x3000 */
+  {   55, 0x0000 }, {   55, 0xa000 },
+};
+static const Summary16 cp932ext_uni2indx_page32[29] = {
+  /* 0x3200 */
+  {   57, 0x0000 }, {   57, 0x0000 }, {   57, 0x0000 }, {   57, 0x0206 },
+  {   60, 0x0000 }, {   60, 0x0000 }, {   60, 0x0000 }, {   60, 0x0000 },
+  {   60, 0x0000 }, {   60, 0x0000 }, {   60, 0x01f0 }, {   65, 0x0000 },
+  {   65, 0x0000 }, {   65, 0x0000 }, {   65, 0x0000 }, {   65, 0x0000 },
+  /* 0x3300 */
+  {   65, 0x2008 }, {   67, 0x0110 }, {   69, 0x08cc }, {   74, 0x0840 },
+  {   76, 0x2600 }, {   79, 0x0082 }, {   81, 0x0000 }, {   81, 0x7800 },
+  {   85, 0xc000 }, {   87, 0x7000 }, {   90, 0x0002 }, {   91, 0x0000 },
+  {   91, 0x2010 },
+};
+static const Summary16 cp932ext_uni2indx_page4e[121] = {
+  /* 0x4e00 */
+  {   93, 0x0000 }, {   93, 0x0000 }, {   93, 0x0100 }, {   94, 0x0000 },
+  {   94, 0x0000 }, {   94, 0x0000 }, {   94, 0x0000 }, {   94, 0x0000 },
+  {   94, 0x0000 }, {   94, 0x0000 }, {   94, 0x0000 }, {   94, 0x0000 },
+  {   94, 0x0000 }, {   94, 0x0000 }, {   94, 0x0002 }, {   95, 0x1000 },
+  /* 0x4f00 */
+  {   96, 0x0009 }, {   98, 0x0000 }, {   98, 0x0000 }, {   98, 0x0200 },
+  {   99, 0x0000 }, {   99, 0x0040 }, {  100, 0x0000 }, {  100, 0x0000 },
+  {  100, 0x0400 }, {  101, 0x0414 }, {  104, 0x0000 }, {  104, 0x0000 },
+  {  104, 0x2200 }, {  106, 0x0000 }, {  106, 0x0000 }, {  106, 0x8000 },
+  /* 0x5000 */
+  {  107, 0x0000 }, {  107, 0x4000 }, {  108, 0x0004 }, {  109, 0x0000 },
+  {  109, 0x0045 }, {  112, 0x0000 }, {  112, 0x0000 }, {  112, 0x0001 },
+  {  113, 0x0000 }, {  113, 0x0010 }, {  114, 0x0000 }, {  114, 0x0000 },
+  {  114, 0x0000 }, {  114, 0x0100 }, {  115, 0x0000 }, {  115, 0x0010 },
+  /* 0x5100 */
+  {  116, 0x0000 }, {  116, 0x0000 }, {  116, 0x0000 }, {  116, 0x0000 },
+  {  116, 0x0400 }, {  117, 0x0000 }, {  117, 0x0010 }, {  118, 0x0000 },
+  {  118, 0x0000 }, {  118, 0x2000 }, {  119, 0x0000 }, {  119, 0x4000 },
+  {  120, 0x0000 }, {  120, 0x0000 }, {  120, 0x1000 }, {  121, 0x0000 },
+  /* 0x5200 */
+  {  121, 0x0000 }, {  121, 0x0020 }, {  122, 0x0000 }, {  122, 0x0000 },
+  {  122, 0x0000 }, {  122, 0x0000 }, {  122, 0x0000 }, {  122, 0x0000 },
+  {  122, 0x0000 }, {  122, 0x1000 }, {  123, 0x8040 }, {  125, 0x0000 },
+  {  125, 0x0001 }, {  126, 0x0800 }, {  127, 0x0000 }, {  127, 0x0000 },
+  /* 0x5300 */
+  {  127, 0x0081 }, {  129, 0x0000 }, {  129, 0x0010 }, {  130, 0x0000 },
+  {  130, 0x0000 }, {  130, 0x0000 }, {  130, 0x0000 }, {  130, 0x0004 },
+  {  131, 0x0000 }, {  131, 0x0008 }, {  132, 0x0000 }, {  132, 0x0004 },
+  {  133, 0x0000 }, {  133, 0x2000 }, {  134, 0x0000 }, {  134, 0x0000 },
+  /* 0x5400 */
+  {  134, 0x0000 }, {  134, 0x0000 }, {  134, 0x0000 }, {  134, 0x0000 },
+  {  134, 0x0000 }, {  134, 0x0000 }, {  134, 0x0000 }, {  134, 0x0000 },
+  {  134, 0x0400 }, {  135, 0x1000 }, {  136, 0x0200 }, {  137, 0x0000 },
+  {  137, 0x0000 }, {  137, 0x0000 }, {  137, 0x0000 }, {  137, 0x8000 },
+  /* 0x5500 */
+  {  138, 0x0000 }, {  138, 0x0000 }, {  138, 0x0000 }, {  138, 0x0000 },
+  {  138, 0x0000 }, {  138, 0x0000 }, {  138, 0x0000 }, {  138, 0x0000 },
+  {  138, 0x0040 },
+};
+static const Summary16 cp932ext_uni2indx_page57[44] = {
+  /* 0x5700 */
+  {  139, 0x0000 }, {  139, 0x0000 }, {  139, 0x0000 }, {  139, 0x0000 },
+  {  139, 0x0000 }, {  139, 0x0200 }, {  140, 0x0020 }, {  141, 0x0000 },
+  {  141, 0x0000 }, {  141, 0x0000 }, {  141, 0x1000 }, {  142, 0x0000 },
+  {  142, 0x0180 }, {  144, 0x0000 }, {  144, 0x0000 }, {  144, 0x0000 },
+  /* 0x5800 */
+  {  144, 0x0000 }, {  144, 0x0000 }, {  144, 0x0000 }, {  144, 0x0000 },
+  {  144, 0x0000 }, {  144, 0x0000 }, {  144, 0x0000 }, {  144, 0x0000 },
+  {  144, 0x0000 }, {  144, 0x4000 }, {  145, 0x0000 }, {  145, 0x0004 },
+  {  146, 0x0000 }, {  146, 0x0000 }, {  146, 0x0000 }, {  146, 0x0000 },
+  /* 0x5900 */
+  {  146, 0x0800 }, {  147, 0x0000 }, {  147, 0x0000 }, {  147, 0x0000 },
+  {  147, 0x0000 }, {  147, 0x2808 }, {  150, 0x0008 }, {  151, 0x0000 },
+  {  151, 0x0000 }, {  151, 0x0000 }, {  151, 0x0010 }, {  152, 0x0400 },
+};
+static const Summary16 cp932ext_uni2indx_page5b[46] = {
+  /* 0x5b00 */
+  {  153, 0x0000 }, {  153, 0x0000 }, {  153, 0x0000 }, {  153, 0x0000 },
+  {  153, 0x0000 }, {  153, 0x0040 }, {  154, 0x0000 }, {  154, 0x0000 },
+  {  154, 0x0000 }, {  154, 0x0000 }, {  154, 0x0000 }, {  154, 0x0000 },
+  {  154, 0x0001 }, {  155, 0x0100 }, {  156, 0x1000 }, {  157, 0x0000 },
+  /* 0x5c00 */
+  {  157, 0x0000 }, {  157, 0x4000 }, {  158, 0x0000 }, {  158, 0x0000 },
+  {  158, 0x0000 }, {  158, 0x0000 }, {  158, 0x0000 }, {  158, 0x0000 },
+  {  158, 0x0000 }, {  158, 0x0000 }, {  158, 0x0040 }, {  159, 0x0400 },
+  {  160, 0x0000 }, {  160, 0x0000 }, {  160, 0x0000 }, {  160, 0x0020 },
+  /* 0x5d00 */
+  {  161, 0x0000 }, {  161, 0x0000 }, {  161, 0x0080 }, {  162, 0x0000 },
+  {  162, 0x0004 }, {  163, 0x0008 }, {  164, 0x2000 }, {  165, 0x0000 },
+  {  165, 0x0000 }, {  165, 0x0000 }, {  165, 0x0000 }, {  165, 0x0300 },
+  {  167, 0x0000 }, {  167, 0x0001 },
+};
+static const Summary16 cp932ext_uni2indx_page5f[458] = {
+  /* 0x5f00 */
+  {  168, 0x0000 }, {  168, 0x0000 }, {  168, 0x0002 }, {  169, 0x0010 },
+  {  170, 0x0020 }, {  171, 0x0000 }, {  171, 0x0080 }, {  172, 0x0000 },
+  {  172, 0x0000 }, {  172, 0x0000 }, {  172, 0x0000 }, {  172, 0x0080 },
+  {  173, 0x0000 }, {  173, 0x4000 }, {  174, 0x0000 }, {  174, 0x0000 },
+  /* 0x6000 */
+  {  174, 0x0000 }, {  174, 0x0000 }, {  174, 0x0000 }, {  174, 0x0000 },
+  {  174, 0x0000 }, {  174, 0x2000 }, {  175, 0x0000 }, {  175, 0x0000 },
+  {  175, 0x0420 }, {  177, 0x0000 }, {  177, 0x0000 }, {  177, 0x0000 },
+  {  177, 0x0000 }, {  177, 0x4020 }, {  179, 0x0000 }, {  179, 0x0004 },
+  /* 0x6100 */
+  {  180, 0x0000 }, {  180, 0x0002 }, {  181, 0x0001 }, {  182, 0x0081 },
+  {  184, 0x0000 }, {  184, 0x0000 }, {  184, 0x0000 }, {  184, 0x0000 },
+  {  184, 0x0000 }, {  184, 0x0100 }, {  185, 0x0000 }, {  185, 0x0000 },
+  {  185, 0x0000 }, {  185, 0x0000 }, {  185, 0x0000 }, {  185, 0x0000 },
+  /* 0x6200 */
+  {  185, 0x0000 }, {  185, 0x0008 }, {  186, 0x0000 }, {  186, 0x0000 },
+  {  186, 0x0000 }, {  186, 0x0000 }, {  186, 0x0000 }, {  186, 0x0000 },
+  {  186, 0x0000 }, {  186, 0x0000 }, {  186, 0x0040 }, {  187, 0x0000 },
+  {  187, 0x0000 }, {  187, 0x0000 }, {  187, 0x0000 }, {  187, 0x0000 },
+  /* 0x6300 */
+  {  187, 0x0000 }, {  187, 0x0000 }, {  187, 0x0000 }, {  187, 0x0000 },
+  {  187, 0x0000 }, {  187, 0x0000 }, {  187, 0x0000 }, {  187, 0x0000 },
+  {  187, 0x0000 }, {  187, 0x0000 }, {  187, 0x0000 }, {  187, 0x0000 },
+  {  187, 0x0000 }, {  187, 0x0000 }, {  187, 0x0000 }, {  187, 0x0020 },
+  /* 0x6400 */
+  {  188, 0x0000 }, {  188, 0x0000 }, {  188, 0x0000 }, {  188, 0x0000 },
+  {  188, 0x0000 }, {  188, 0x0000 }, {  188, 0x0001 }, {  189, 0x0000 },
+  {  189, 0x0000 }, {  189, 0x2000 }, {  190, 0x0000 }, {  190, 0x0000 },
+  {  190, 0x4000 }, {  191, 0x0000 }, {  191, 0x0000 }, {  191, 0x0000 },
+  /* 0x6500 */
+  {  191, 0x0000 }, {  191, 0x0000 }, {  191, 0x0000 }, {  191, 0x0000 },
+  {  191, 0x4000 }, {  192, 0x0000 }, {  192, 0x0000 }, {  192, 0x0000 },
+  {  192, 0x0000 }, {  192, 0x0000 }, {  192, 0x0000 }, {  192, 0x0000 },
+  {  192, 0x0000 }, {  192, 0x0000 }, {  192, 0x0000 }, {  192, 0x0000 },
+  /* 0x6600 */
+  {  192, 0x0201 }, {  194, 0x4020 }, {  196, 0x4010 }, {  198, 0x0802 },
+  {  200, 0x0000 }, {  200, 0x0280 }, {  202, 0x0020 }, {  203, 0x0008 },
+  {  204, 0x0000 }, {  204, 0x0200 }, {  205, 0x0001 }, {  206, 0x8004 },
+  {  208, 0x0000 }, {  208, 0x0000 }, {  208, 0x0000 }, {  208, 0x0c00 },
+  /* 0x6700 */
+  {  210, 0x4000 }, {  211, 0x0000 }, {  211, 0x0000 }, {  211, 0x0000 },
+  {  211, 0x0000 }, {  211, 0x0000 }, {  211, 0x0040 }, {  212, 0x0000 },
+  {  212, 0x0000 }, {  212, 0x0000 }, {  212, 0x0000 }, {  212, 0x0800 },
+  {  213, 0x0001 }, {  214, 0x0000 }, {  214, 0x0000 }, {  214, 0x0000 },
+  /* 0x6800 */
+  {  214, 0x0002 }, {  215, 0x0000 }, {  215, 0x0000 }, {  215, 0x0000 },
+  {  215, 0x0010 }, {  216, 0x0004 }, {  217, 0x0000 }, {  217, 0x0000 },
+  {  217, 0x0000 }, {  217, 0x0000 }, {  217, 0x0000 }, {  217, 0x0000 },
+  {  217, 0x8100 }, {  219, 0x0000 }, {  219, 0x0000 }, {  219, 0x0000 },
+  /* 0x6900 */
+  {  219, 0x0000 }, {  219, 0x0000 }, {  219, 0x0000 }, {  219, 0x0000 },
+  {  219, 0x0000 }, {  219, 0x0000 }, {  219, 0x0100 }, {  220, 0x0000 },
+  {  220, 0x0000 }, {  220, 0x0100 }, {  221, 0x0000 }, {  221, 0x0000 },
+  {  221, 0x0000 }, {  221, 0x0000 }, {  221, 0x0004 }, {  222, 0x0000 },
+  /* 0x6a00 */
+  {  222, 0x0000 }, {  222, 0x0000 }, {  222, 0x0000 }, {  222, 0x0001 },
+  {  223, 0x0040 }, {  224, 0x0000 }, {  224, 0x0800 }, {  225, 0x4008 },
+  {  227, 0x0000 }, {  227, 0x0000 }, {  227, 0x0000 }, {  227, 0x0000 },
+  {  227, 0x0000 }, {  227, 0x0000 }, {  227, 0x0014 }, {  229, 0x0000 },
+  /* 0x6b00 */
+  {  229, 0x0000 }, {  229, 0x0000 }, {  229, 0x0000 }, {  229, 0x0000 },
+  {  229, 0x0000 }, {  229, 0x0000 }, {  229, 0x0000 }, {  229, 0x0000 },
+  {  229, 0x0000 }, {  229, 0x0000 }, {  229, 0x0000 }, {  229, 0x0000 },
+  {  229, 0x0000 }, {  229, 0x0040 }, {  230, 0x0000 }, {  230, 0x0000 },
+  /* 0x6c00 */
+  {  230, 0x0000 }, {  230, 0x0000 }, {  230, 0x0000 }, {  230, 0x8000 },
+  {  231, 0x0000 }, {  231, 0x1000 }, {  232, 0x8000 }, {  233, 0x0000 },
+  {  233, 0x0040 }, {  234, 0x0000 }, {  234, 0x0000 }, {  234, 0x0000 },
+  {  234, 0x0000 }, {  234, 0x0400 }, {  235, 0x0000 }, {  235, 0x0000 },
+  /* 0x6d00 */
+  {  235, 0x0010 }, {  236, 0x0000 }, {  236, 0x0000 }, {  236, 0x0000 },
+  {  236, 0x0000 }, {  236, 0x0000 }, {  236, 0x8000 }, {  237, 0x0000 },
+  {  237, 0x0080 }, {  238, 0x0040 }, {  239, 0x1000 }, {  240, 0x0000 },
+  {  240, 0x8000 }, {  241, 0x0000 }, {  241, 0x0000 }, {  241, 0x1104 },
+  /* 0x6e00 */
+  {  244, 0x0000 }, {  244, 0x0000 }, {  244, 0x0080 }, {  245, 0x1200 },
+  {  247, 0x0000 }, {  247, 0x1000 }, {  248, 0x0000 }, {  248, 0x0000 },
+  {  248, 0x0000 }, {  248, 0x0000 }, {  248, 0x0000 }, {  248, 0x8000 },
+  {  249, 0x0000 }, {  249, 0x0000 }, {  249, 0x0000 }, {  249, 0x0000 },
+  /* 0x6f00 */
+  {  249, 0x0000 }, {  249, 0x0000 }, {  249, 0x0000 }, {  249, 0x0000 },
+  {  249, 0x0000 }, {  249, 0x0000 }, {  249, 0x0000 }, {  249, 0x0000 },
+  {  249, 0x0100 }, {  250, 0x0000 }, {  250, 0x0000 }, {  250, 0x0020 },
+  {  251, 0x0000 }, {  251, 0x0000 }, {  251, 0x0000 }, {  251, 0x0020 },
+  /* 0x7000 */
+  {  252, 0x00a0 }, {  254, 0x0000 }, {  254, 0x0100 }, {  255, 0x0000 },
+  {  255, 0x0000 }, {  255, 0x0000 }, {  255, 0x0000 }, {  255, 0x0000 },
+  {  255, 0x0020 }, {  256, 0x0000 }, {  256, 0x0800 }, {  257, 0x0800 },
+  {  258, 0x0000 }, {  258, 0x0000 }, {  258, 0x0000 }, {  258, 0x0000 },
+  /* 0x7100 */
+  {  258, 0x8010 }, {  260, 0x0000 }, {  260, 0x0000 }, {  260, 0x0000 },
+  {  260, 0x00c0 }, {  262, 0x1000 }, {  263, 0x0000 }, {  263, 0x0000 },
+  {  263, 0x0000 }, {  263, 0x0000 }, {  263, 0x0000 }, {  263, 0x0000 },
+  {  263, 0x0002 }, {  264, 0x0000 }, {  264, 0x0000 }, {  264, 0x4000 },
+  /* 0x7200 */
+  {  265, 0x0000 }, {  265, 0x0000 }, {  265, 0x0000 }, {  265, 0x0000 },
+  {  265, 0x0000 }, {  265, 0x0000 }, {  265, 0x0000 }, {  265, 0x0000 },
+  {  265, 0x0000 }, {  265, 0x0000 }, {  265, 0x0000 }, {  265, 0x4002 },
+  {  267, 0x0000 }, {  267, 0x0000 }, {  267, 0x0000 }, {  267, 0x0000 },
+  /* 0x7300 */
+  {  267, 0x0000 }, {  267, 0x0000 }, {  267, 0x0010 }, {  268, 0x0000 },
+  {  268, 0x0000 }, {  268, 0x0000 }, {  268, 0x0000 }, {  268, 0x0080 },
+  {  269, 0x0000 }, {  269, 0x0000 }, {  269, 0x0000 }, {  269, 0x2000 },
+  {  270, 0x0200 }, {  271, 0x0044 }, {  273, 0x0008 }, {  274, 0x0020 },
+  /* 0x7400 */
+  {  275, 0x0080 }, {  276, 0x0000 }, {  276, 0x4640 }, {  280, 0x0000 },
+  {  280, 0x0000 }, {  280, 0x0000 }, {  280, 0x0004 }, {  281, 0x0000 },
+  {  281, 0x0200 }, {  282, 0x8000 }, {  283, 0x0000 }, {  283, 0x0000 },
+  {  283, 0x0000 }, {  283, 0x0000 }, {  283, 0x0000 }, {  283, 0x0000 },
+  /* 0x7500 */
+  {  283, 0x0002 }, {  284, 0x0000 }, {  284, 0x8000 }, {  285, 0x0000 },
+  {  285, 0x0000 }, {  285, 0x0000 }, {  285, 0x8000 }, {  286, 0x0000 },
+  {  286, 0x0000 }, {  286, 0x0000 }, {  286, 0x0000 }, {  286, 0x0000 },
+  {  286, 0x0000 }, {  286, 0x0000 }, {  286, 0x0000 }, {  286, 0x0000 },
+  /* 0x7600 */
+  {  286, 0x0000 }, {  286, 0x0000 }, {  286, 0x0000 }, {  286, 0x0000 },
+  {  286, 0x0000 }, {  286, 0x0000 }, {  286, 0x0000 }, {  286, 0x0000 },
+  {  286, 0x0004 }, {  287, 0x5800 }, {  290, 0x0040 }, {  291, 0x0000 },
+  {  291, 0x0000 }, {  291, 0x0000 }, {  291, 0x0000 }, {  291, 0x0000 },
+  /* 0x7700 */
+  {  291, 0x0000 }, {  291, 0x0000 }, {  291, 0x0000 }, {  291, 0x0000 },
+  {  291, 0x0040 }, {  292, 0x0000 }, {  292, 0x0000 }, {  292, 0x0000 },
+  {  292, 0x0000 }, {  292, 0x0000 }, {  292, 0x0000 }, {  292, 0x0000 },
+  {  292, 0x0000 }, {  292, 0x0000 }, {  292, 0x0000 }, {  292, 0x0000 },
+  /* 0x7800 */
+  {  292, 0x0000 }, {  292, 0x0000 }, {  292, 0x0002 }, {  293, 0x0000 },
+  {  293, 0x4000 }, {  294, 0x0000 }, {  294, 0x0010 }, {  295, 0x0400 },
+  {  296, 0x0000 }, {  296, 0x0000 }, {  296, 0x0000 }, {  296, 0x0000 },
+  {  296, 0x0000 }, {  296, 0x0000 }, {  296, 0x0000 }, {  296, 0x0000 },
+  /* 0x7900 */
+  {  296, 0x0000 }, {  296, 0x0000 }, {  296, 0x0000 }, {  296, 0x0001 },
+  {  297, 0x0000 }, {  297, 0x0000 }, {  297, 0x0000 }, {  297, 0x0000 },
+  {  297, 0x0000 }, {  297, 0x0810 }, {  299, 0x0000 }, {  299, 0x0000 },
+  {  299, 0x0000 }, {  299, 0x0000 }, {  299, 0x0000 }, {  299, 0x0000 },
+  /* 0x7a00 */
+  {  299, 0x0000 }, {  299, 0x0000 }, {  299, 0x0000 }, {  299, 0x0000 },
+  {  299, 0x0000 }, {  299, 0x0000 }, {  299, 0x0000 }, {  299, 0x0000 },
+  {  299, 0x0000 }, {  299, 0x0000 }, {  299, 0x0000 }, {  299, 0x0000 },
+  {  299, 0x0000 }, {  299, 0x0002 }, {  300, 0x0880 }, {  302, 0x0000 },
+  /* 0x7b00 */
+  {  302, 0x0000 }, {  302, 0x0000 }, {  302, 0x0000 }, {  302, 0x0000 },
+  {  302, 0x0000 }, {  302, 0x0000 }, {  302, 0x0000 }, {  302, 0x0000 },
+  {  302, 0x0000 }, {  302, 0x4000 },
+};
+static const Summary16 cp932ext_uni2indx_page7d[43] = {
+  /* 0x7d00 */
+  {  303, 0x0000 }, {  303, 0x0000 }, {  303, 0x0000 }, {  303, 0x0000 },
+  {  303, 0x0100 }, {  304, 0x1000 }, {  305, 0x0000 }, {  305, 0x0000 },
+  {  305, 0x0000 }, {  305, 0x0000 }, {  305, 0x0001 }, {  306, 0x0080 },
+  {  307, 0x0000 }, {  307, 0x0040 }, {  308, 0x0000 }, {  308, 0x0000 },
+  /* 0x7e00 */
+  {  308, 0x0000 }, {  308, 0x0000 }, {  308, 0x0000 }, {  308, 0x0000 },
+  {  308, 0x0000 }, {  308, 0x0004 }, {  309, 0x0000 }, {  309, 0x0000 },
+  {  309, 0x0400 }, {  310, 0x0000 }, {  310, 0x0000 }, {  310, 0x0000 },
+  {  310, 0x0000 }, {  310, 0x0000 }, {  310, 0x0000 }, {  310, 0x0000 },
+  /* 0x7f00 */
+  {  310, 0x0000 }, {  310, 0x0000 }, {  310, 0x0000 }, {  310, 0x0000 },
+  {  310, 0x0080 }, {  311, 0x0000 }, {  311, 0x0000 }, {  311, 0x0000 },
+  {  311, 0x0000 }, {  311, 0x0000 }, {  311, 0x0002 },
+};
+static const Summary16 cp932ext_uni2indx_page83[44] = {
+  /* 0x8300 */
+  {  312, 0x0002 }, {  313, 0x0000 }, {  313, 0x0000 }, {  313, 0x0000 },
+  {  313, 0x0000 }, {  313, 0x0000 }, {  313, 0x0004 }, {  314, 0x8000 },
+  {  315, 0x0000 }, {  315, 0x0000 }, {  315, 0x0000 }, {  315, 0x0000 },
+  {  315, 0x0080 }, {  316, 0x0000 }, {  316, 0x0000 }, {  316, 0x0040 },
+  /* 0x8400 */
+  {  317, 0x0000 }, {  317, 0x0000 }, {  317, 0x0000 }, {  317, 0x0000 },
+  {  317, 0x0100 }, {  318, 0x0000 }, {  318, 0x0000 }, {  318, 0x0000 },
+  {  318, 0x0000 }, {  318, 0x0000 }, {  318, 0x0000 }, {  318, 0x0010 },
+  {  319, 0x0000 }, {  319, 0x1000 }, {  320, 0x0000 }, {  320, 0x0000 },
+  /* 0x8500 */
+  {  320, 0x0000 }, {  320, 0x0000 }, {  320, 0x0000 }, {  320, 0x0000 },
+  {  320, 0x0000 }, {  320, 0x0208 }, {  322, 0x0800 }, {  323, 0x0000 },
+  {  323, 0x0000 }, {  323, 0x0000 }, {  323, 0x0000 }, {  323, 0x0001 },
+};
+static const Summary16 cp932ext_uni2indx_page88[109] = {
+  /* 0x8800 */
+  {  324, 0x0080 }, {  325, 0x0000 }, {  325, 0x0000 }, {  325, 0x0000 },
+  {  325, 0x0000 }, {  325, 0x0000 }, {  325, 0x0000 }, {  325, 0x0000 },
+  {  325, 0x0000 }, {  325, 0x0000 }, {  325, 0x0000 }, {  325, 0x0000 },
+  {  325, 0x0000 }, {  325, 0x0000 }, {  325, 0x0000 }, {  325, 0x0020 },
+  /* 0x8900 */
+  {  326, 0x0000 }, {  326, 0x1000 }, {  327, 0x0000 }, {  327, 0x0000 },
+  {  327, 0x0000 }, {  327, 0x0000 }, {  327, 0x0000 }, {  327, 0x0000 },
+  {  327, 0x0000 }, {  327, 0x0000 }, {  327, 0x0000 }, {  327, 0x0000 },
+  {  327, 0x0000 }, {  327, 0x0000 }, {  327, 0x0000 }, {  327, 0x0000 },
+  /* 0x8a00 */
+  {  327, 0x0000 }, {  327, 0x0004 }, {  328, 0x0000 }, {  328, 0x0080 },
+  {  329, 0x0000 }, {  329, 0x0000 }, {  329, 0x0000 }, {  329, 0x0200 },
+  {  330, 0x0000 }, {  330, 0x0000 }, {  330, 0x0080 }, {  331, 0x4000 },
+  {  332, 0x0000 }, {  332, 0x8000 }, {  333, 0x0000 }, {  333, 0x0040 },
+  /* 0x8b00 */
+  {  334, 0x0000 }, {  334, 0x0000 }, {  334, 0x0000 }, {  334, 0x0000 },
+  {  334, 0x0000 }, {  334, 0x0008 }, {  335, 0x0000 }, {  335, 0x8000 },
+  {  336, 0x0000 }, {  336, 0x0000 }, {  336, 0x0000 }, {  336, 0x0000 },
+  {  336, 0x0000 }, {  336, 0x0000 }, {  336, 0x0000 }, {  336, 0x0000 },
+  /* 0x8c00 */
+  {  336, 0x0000 }, {  336, 0x0000 }, {  336, 0x0000 }, {  336, 0x0000 },
+  {  336, 0x0000 }, {  336, 0x0000 }, {  336, 0x0000 }, {  336, 0x0000 },
+  {  336, 0x0000 }, {  336, 0x0000 }, {  336, 0x0000 }, {  336, 0x0000 },
+  {  336, 0x0000 }, {  336, 0x0000 }, {  336, 0x0000 }, {  336, 0x0011 },
+  /* 0x8d00 */
+  {  338, 0x0000 }, {  338, 0x0004 }, {  339, 0x0000 }, {  339, 0x0000 },
+  {  339, 0x0000 }, {  339, 0x0000 }, {  339, 0x0000 }, {  339, 0x0040 },
+  {  340, 0x0000 }, {  340, 0x0000 }, {  340, 0x0000 }, {  340, 0x0000 },
+  {  340, 0x0000 }, {  340, 0x0000 }, {  340, 0x0000 }, {  340, 0x0000 },
+  /* 0x8e00 */
+  {  340, 0x0000 }, {  340, 0x0000 }, {  340, 0x0000 }, {  340, 0x0000 },
+  {  340, 0x0000 }, {  340, 0x0000 }, {  340, 0x0000 }, {  340, 0x0000 },
+  {  340, 0x0000 }, {  340, 0x0000 }, {  340, 0x0000 }, {  340, 0x0000 },
+  {  340, 0x8000 },
+};
+static const Summary16 cp932ext_uni2indx_page90[238] = {
+  /* 0x9000 */
+  {  341, 0x0000 }, {  341, 0x0000 }, {  341, 0x0000 }, {  341, 0x0000 },
+  {  341, 0x0000 }, {  341, 0x0000 }, {  341, 0x0080 }, {  342, 0x0000 },
+  {  342, 0x0000 }, {  342, 0x0000 }, {  342, 0x0000 }, {  342, 0x0000 },
+  {  342, 0x0000 }, {  342, 0x4000 }, {  343, 0x0000 }, {  343, 0x0000 },
+  /* 0x9100 */
+  {  343, 0x0000 }, {  343, 0x0020 }, {  344, 0x0080 }, {  345, 0x0000 },
+  {  345, 0x0000 }, {  345, 0x0000 }, {  345, 0x0000 }, {  345, 0x0000 },
+  {  345, 0x0000 }, {  345, 0x0000 }, {  345, 0x0000 }, {  345, 0x0000 },
+  {  345, 0x0000 }, {  345, 0x4480 }, {  348, 0x6030 }, {  352, 0x0000 },
+  /* 0x9200 */
+  {  352, 0x0440 }, {  354, 0x0001 }, {  355, 0x0000 }, {  355, 0x1600 },
+  {  358, 0x4001 }, {  360, 0x0202 }, {  362, 0x0080 }, {  363, 0x0180 },
+  {  365, 0x0100 }, {  366, 0x0000 }, {  366, 0x0080 }, {  367, 0x0000 },
+  {  367, 0x0000 }, {  367, 0x02a9 }, {  372, 0x0081 }, {  374, 0x8a00 },
+  /* 0x9300 */
+  {  377, 0x0004 }, {  378, 0x6000 }, {  380, 0x0022 }, {  382, 0x0000 },
+  {  382, 0x0100 }, {  383, 0x0080 }, {  384, 0x0000 }, {  384, 0x0001 },
+  {  385, 0x0000 }, {  385, 0x0000 }, {  385, 0x0010 }, {  386, 0x0000 },
+  {  386, 0x0040 }, {  387, 0x4000 }, {  388, 0x0000 }, {  388, 0x0100 },
+  /* 0x9400 */
+  {  389, 0x0000 }, {  389, 0x0000 }, {  389, 0x0000 }, {  389, 0x0002 },
+  {  390, 0x0120 }, {  392, 0x0000 }, {  392, 0x0000 }, {  392, 0x0000 },
+  {  392, 0x0000 }, {  392, 0x0000 }, {  392, 0x0000 }, {  392, 0x0000 },
+  {  392, 0x0000 }, {  392, 0x0000 }, {  392, 0x0000 }, {  392, 0x0000 },
+  /* 0x9500 */
+  {  392, 0x0000 }, {  392, 0x0000 }, {  392, 0x0000 }, {  392, 0x0000 },
+  {  392, 0x0000 }, {  392, 0x0000 }, {  392, 0x0000 }, {  392, 0x0000 },
+  {  392, 0x0000 }, {  392, 0x0004 }, {  393, 0x0000 }, {  393, 0x0000 },
+  {  393, 0x0000 }, {  393, 0x0000 }, {  393, 0x0000 }, {  393, 0x0000 },
+  /* 0x9600 */
+  {  393, 0x0000 }, {  393, 0x0000 }, {  393, 0x0000 }, {  393, 0x0000 },
+  {  393, 0x0000 }, {  393, 0x0000 }, {  393, 0x0000 }, {  393, 0x0000 },
+  {  393, 0x0000 }, {  393, 0x2000 }, {  394, 0x8000 }, {  395, 0x0000 },
+  {  395, 0x0000 }, {  395, 0x0000 }, {  395, 0x0000 }, {  395, 0x0000 },
+  /* 0x9700 */
+  {  395, 0x0000 }, {  395, 0x0000 }, {  395, 0x0000 }, {  395, 0x0808 },
+  {  397, 0xa008 }, {  400, 0x0022 }, {  402, 0x0000 }, {  402, 0x0000 },
+  {  402, 0x0000 }, {  402, 0x0000 }, {  402, 0x0000 }, {  402, 0x0000 },
+  {  402, 0x0000 }, {  402, 0x0000 }, {  402, 0x0000 }, {  402, 0x0000 },
+  /* 0x9800 */
+  {  402, 0x0000 }, {  402, 0x0000 }, {  402, 0x0000 }, {  402, 0x0000 },
+  {  402, 0x0000 }, {  402, 0x0080 }, {  403, 0x0020 }, {  404, 0x0000 },
+  {  404, 0x0000 }, {  404, 0x0000 }, {  404, 0x0000 }, {  404, 0x0000 },
+  {  404, 0x0000 }, {  404, 0x0000 }, {  404, 0x0000 }, {  404, 0x0000 },
+  /* 0x9900 */
+  {  404, 0x0000 }, {  404, 0x0000 }, {  404, 0x0080 }, {  405, 0x0000 },
+  {  405, 0x0000 }, {  405, 0x0000 }, {  405, 0x0000 }, {  405, 0x0000 },
+  {  405, 0x0000 }, {  405, 0x4000 }, {  406, 0x0000 }, {  406, 0x0000 },
+  {  406, 0x0000 }, {  406, 0x0000 }, {  406, 0x0000 }, {  406, 0x0000 },
+  /* 0x9a00 */
+  {  406, 0x0000 }, {  406, 0x0000 }, {  406, 0x0000 }, {  406, 0x0000 },
+  {  406, 0x4000 }, {  407, 0x0000 }, {  407, 0x0000 }, {  407, 0x0000 },
+  {  407, 0x0000 }, {  407, 0x0000 }, {  407, 0x0000 }, {  407, 0x0000 },
+  {  407, 0x0000 }, {  407, 0x1200 }, {  409, 0x0000 }, {  409, 0x0000 },
+  /* 0x9b00 */
+  {  409, 0x0000 }, {  409, 0x0000 }, {  409, 0x0000 }, {  409, 0x0000 },
+  {  409, 0x0000 }, {  409, 0x0000 }, {  409, 0x0000 }, {  409, 0x0024 },
+  {  411, 0x8000 }, {  412, 0x0000 }, {  412, 0x0000 }, {  412, 0x0802 },
+  {  414, 0x0000 }, {  414, 0x0000 }, {  414, 0x0000 }, {  414, 0x0000 },
+  /* 0x9c00 */
+  {  414, 0x0001 }, {  415, 0x0000 }, {  415, 0x0000 }, {  415, 0x0000 },
+  {  415, 0x0000 }, {  415, 0x0000 }, {  415, 0x0000 }, {  415, 0x0000 },
+  {  415, 0x0000 }, {  415, 0x0000 }, {  415, 0x0000 }, {  415, 0x0000 },
+  {  415, 0x0000 }, {  415, 0x0000 }, {  415, 0x0000 }, {  415, 0x0000 },
+  /* 0x9d00 */
+  {  415, 0x0000 }, {  415, 0x0000 }, {  415, 0x0000 }, {  415, 0x0000 },
+  {  415, 0x0000 }, {  415, 0x0000 }, {  415, 0x0800 }, {  416, 0x0001 },
+  {  417, 0x0000 }, {  417, 0x0000 }, {  417, 0x0000 }, {  417, 0x0000 },
+  {  417, 0x0000 }, {  417, 0x0000 }, {  417, 0x0000 }, {  417, 0x0000 },
+  /* 0x9e00 */
+  {  417, 0x0000 }, {  417, 0x0200 }, {  418, 0x0000 }, {  418, 0x0000 },
+  {  418, 0x0000 }, {  418, 0x0000 }, {  418, 0x0000 }, {  418, 0x0000 },
+  {  418, 0x0000 }, {  418, 0x0000 }, {  418, 0x0000 }, {  418, 0x0000 },
+  {  418, 0x0000 }, {  418, 0x0002 },
+};
+static const Summary16 cp932ext_uni2indx_pagef9[19] = {
+  /* 0xf900 */
+  {  419, 0x0000 }, {  419, 0x0000 }, {  419, 0x0200 }, {  420, 0x0000 },
+  {  420, 0x0000 }, {  420, 0x0000 }, {  420, 0x0000 }, {  420, 0x0000 },
+  {  420, 0x0000 }, {  420, 0x0000 }, {  420, 0x0000 }, {  420, 0x0000 },
+  {  420, 0x0000 }, {  420, 0x1000 }, {  421, 0x0000 }, {  421, 0x0000 },
+  /* 0xfa00 */
+  {  421, 0xc000 }, {  423, 0xffff }, {  439, 0x3fff },
+};
+static const Summary16 cp932ext_uni2indx_pageff[15] = {
+  /* 0xff00 */
+  {  453, 0x0084 }, {  455, 0x0000 }, {  455, 0x0000 }, {  455, 0x0000 },
+  {  455, 0x0000 }, {  455, 0x0000 }, {  455, 0x0000 }, {  455, 0x0000 },
+  {  455, 0x0000 }, {  455, 0x0000 }, {  455, 0x0000 }, {  455, 0x0000 },
+  {  455, 0x0000 }, {  455, 0x0000 }, {  455, 0x0014 },
+};
+
+static int
+cp932ext_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 2) {
+    const Summary16 *summary = NULL;
+    if (wc >= 0x2100 && wc < 0x22c0)
+      summary = &cp932ext_uni2indx_page21[(wc>>4)-0x210];
+    else if (wc >= 0x2400 && wc < 0x2480)
+      summary = &cp932ext_uni2indx_page24[(wc>>4)-0x240];
+    else if (wc >= 0x3000 && wc < 0x3020)
+      summary = &cp932ext_uni2indx_page30[(wc>>4)-0x300];
+    else if (wc >= 0x3200 && wc < 0x33d0)
+      summary = &cp932ext_uni2indx_page32[(wc>>4)-0x320];
+    else if (wc >= 0x4e00 && wc < 0x5590)
+      summary = &cp932ext_uni2indx_page4e[(wc>>4)-0x4e0];
+    else if (wc >= 0x5700 && wc < 0x59c0)
+      summary = &cp932ext_uni2indx_page57[(wc>>4)-0x570];
+    else if (wc >= 0x5b00 && wc < 0x5de0)
+      summary = &cp932ext_uni2indx_page5b[(wc>>4)-0x5b0];
+    else if (wc >= 0x5f00 && wc < 0x7ba0)
+      summary = &cp932ext_uni2indx_page5f[(wc>>4)-0x5f0];
+    else if (wc >= 0x7d00 && wc < 0x7fb0)
+      summary = &cp932ext_uni2indx_page7d[(wc>>4)-0x7d0];
+    else if (wc >= 0x8300 && wc < 0x85c0)
+      summary = &cp932ext_uni2indx_page83[(wc>>4)-0x830];
+    else if (wc >= 0x8800 && wc < 0x8ed0)
+      summary = &cp932ext_uni2indx_page88[(wc>>4)-0x880];
+    else if (wc >= 0x9000 && wc < 0x9ee0)
+      summary = &cp932ext_uni2indx_page90[(wc>>4)-0x900];
+    else if (wc >= 0xf900 && wc < 0xfa30)
+      summary = &cp932ext_uni2indx_pagef9[(wc>>4)-0xf90];
+    else if (wc >= 0xff00 && wc < 0xfff0)
+      summary = &cp932ext_uni2indx_pageff[(wc>>4)-0xff0];
+    if (summary) {
+      unsigned short used = summary->used;
+      unsigned int i = wc & 0x0f;
+      if (used & ((unsigned short) 1 << i)) {
+        unsigned short c;
+        /* Keep in `used' only the bits 0..i-1. */
+        used &= ((unsigned short) 1 << i) - 1;
+        /* Add `summary->indx' and the number of bits set in `used'. */
+        used = (used & 0x5555) + ((used & 0xaaaa) >> 1);
+        used = (used & 0x3333) + ((used & 0xcccc) >> 2);
+        used = (used & 0x0f0f) + ((used & 0xf0f0) >> 4);
+        used = (used & 0x00ff) + (used >> 8);
+        c = cp932ext_2charset[summary->indx + used];
+        r[0] = (c >> 8); r[1] = (c & 0xff);
+        return 2;
+      }
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp936.h b/graf2d/win32gdk/gdk/src/iconv/cp936.h
new file mode 100644
index 00000000000..06e510cae28
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp936.h
@@ -0,0 +1,126 @@
+/*
+ * Copyright (C) 2005 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP936
+ */
+
+/*
+ * The IANA has CP936 as an alias of GBK. But GBK is an official Chinese
+ * specification, whereas CP936 is de-facto maintained by Microsoft. And,
+ * of course, Microsoft modified CP936 since 1999.
+ *
+ * The differences from GBK are:
+ *
+ * 1. A single character:
+ *
+ *    code   CP936.TXT
+ *    0x80   0x20AC # EURO SIGN
+ *
+ * Some variants of CP936 (in JDK, Windows-2000, ICU) also add:
+ *
+ * 2. Private area mappings:
+ *
+ *              code                 Unicode
+ *    0x{A1..A2}{40..7E,80..A0}  U+E4C6..U+E585
+ *    0x{AA..AF,F8..FE}{A1..FE}  U+E000..U+E4C5
+ *
+ * We add them too because, although there are backward compatibility problems
+ * when a character from a private area is moved to an official Unicode code
+ * point, they are useful for some people in practice.
+ */
+
+static int
+cp936_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  /* Try GBK first. */
+  {
+    int ret = ces_gbk_mbtowc(conv,pwc,s,n);
+    if (ret != RET_ILSEQ)
+      return ret;
+  }
+  /* Then handle the additional mappings. */
+  {
+    unsigned char c = *s;
+    if (c == 0x80) {
+      *pwc = 0x20ac;
+      return 1;
+    }
+    /* User-defined characters */
+    if (c >= 0xa1 && c <= 0xa2) {
+      if (n < 2)
+        return RET_TOOFEW(0);
+      {
+        unsigned char c2 = s[1];
+        if ((c2 >= 0x40 && c2 < 0x7f) || (c2 >= 0x80 && c2 < 0xa1)) {
+          *pwc = 0xe4c6 + 96 * (c - 0xa1) + (c2 - (c2 >= 0x80 ? 0x41 : 0x40));
+          return 2;
+        }
+      }
+    } else if ((c >= 0xaa && c < 0xb0) || (c >= 0xf8 && c < 0xff)) {
+      if (n < 2)
+        return RET_TOOFEW(0);
+      {
+        unsigned char c2 = s[1];
+        if (c2 >= 0xa1 && c2 < 0xff) {
+          *pwc = 0xe000 + 94 * (c - (c >= 0xf8 ? 0xf2 : 0xaa)) + (c2 - 0xa1);
+          return 2;
+        }
+      }
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static int
+cp936_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  /* Try GBK first. */
+  {
+    int ret = ces_gbk_wctomb(conv,r,wc,n);
+    if (ret != RET_ILUNI)
+      return ret;
+  }
+  /* Then handle the additional mappings. */
+  if (wc >= 0xe000 && wc < 0xe586) {
+    /* User-defined characters */
+    if (n < 2)
+      return RET_TOOFEW(0);
+    if (wc < 0xe4c6) {
+      unsigned int i = wc - 0xe000;
+      unsigned int c1 = i / 94;
+      unsigned int c2 = i % 94;
+      r[0] = c1 + (c1 < 6 ? 0xaa : 0xf2);
+      r[1] = c2 + 0xa1;
+      return 2;
+    } else {
+      unsigned int i = wc - 0xe4c6;
+      unsigned int c1 = i / 96;
+      unsigned int c2 = i % 96;
+      r[0] = c1 + 0xa1;
+      r[1] = c2 + (c2 < 0x3f ? 0x40 : 0x41);
+      return 2;
+    }
+  } else if (wc == 0x20ac) {
+    r[0] = 0x80;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp936ext.h b/graf2d/win32gdk/gdk/src/iconv/cp936ext.h
new file mode 100644
index 00000000000..db1817b701e
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp936ext.h
@@ -0,0 +1,99 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP936 extensions
+ */
+
+static const unsigned short cp936ext_2uni_pagea6[181-159] = {
+  /* 0xa6 */
+                                                          0xfe35,
+  0xfe36, 0xfe39, 0xfe3a, 0xfe3f, 0xfe40, 0xfe3d, 0xfe3e, 0xfe41,
+  0xfe42, 0xfe43, 0xfe44, 0xfffd, 0xfffd, 0xfe3b, 0xfe3c, 0xfe37,
+  0xfe38, 0xfe31, 0xfffd, 0xfe33, 0xfe34,
+};
+static const unsigned short cp936ext_2uni_pagea8[128-122] = {
+  /* 0xa8 */
+                  0x0251, 0xfffd, 0x0144, 0x0148, 0xfffd, 0x0261,
+};
+
+static int
+cp936ext_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 == 0xa6) || (c1 == 0xa8)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if ((c2 >= 0x40 && c2 < 0x7f) || (c2 >= 0x80 && c2 < 0xff)) {
+        unsigned int i = 190 * (c1 - 0x81) + (c2 - (c2 >= 0x80 ? 0x41 : 0x40));
+        unsigned short wc = 0xfffd;
+        if (i < 7410) {
+          if (i >= 7189 && i < 7211)
+            wc = cp936ext_2uni_pagea6[i-7189];
+        } else {
+          if (i >= 7532 && i < 7538)
+            wc = cp936ext_2uni_pagea8[i-7532];
+        }
+        if (wc != 0xfffd) {
+          *pwc = (ucs4_t) wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned short cp936ext_page01[16] = {
+  0x0000, 0x0000, 0x0000, 0x0000, 0xa8bd, 0x0000, 0x0000, 0x0000, /*0x40-0x47*/
+  0xa8be, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x48-0x4f*/
+};
+static const unsigned short cp936ext_page02[24] = {
+  0x0000, 0xa8bb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x50-0x57*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x58-0x5f*/
+  0x0000, 0xa8c0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x60-0x67*/
+};
+static const unsigned short cp936ext_pagefe[24] = {
+  0x0000, 0xa6f2, 0x0000, 0xa6f4, 0xa6f5, 0xa6e0, 0xa6e1, 0xa6f0, /*0x30-0x37*/
+  0xa6f1, 0xa6e2, 0xa6e3, 0xa6ee, 0xa6ef, 0xa6e6, 0xa6e7, 0xa6e4, /*0x38-0x3f*/
+  0xa6e5, 0xa6e8, 0xa6e9, 0xa6ea, 0xa6eb, 0x0000, 0x0000, 0x0000, /*0x40-0x47*/
+};
+
+static int
+cp936ext_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 2) {
+    unsigned short c = 0;
+    if (wc >= 0x0140 && wc < 0x0150)
+      c = cp936ext_page01[wc-0x0140];
+    else if (wc >= 0x0250 && wc < 0x0268)
+      c = cp936ext_page02[wc-0x0250];
+    else if (wc >= 0xfe30 && wc < 0xfe48)
+      c = cp936ext_pagefe[wc-0xfe30];
+    if (c != 0) {
+      r[0] = (c >> 8); r[1] = (c & 0xff);
+      return 2;
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp943.h b/graf2d/win32gdk/gdk/src/iconv/cp943.h
new file mode 100644
index 00000000000..dbaebe97e2a
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp943.h
@@ -0,0 +1,29 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * IBM CP943
+ */
+
+/* This is essentially CP932, with many mappings missing in the AIX conversion
+   table. We just pretend it were the same as CP932. */
+
+#define cp943_mbtowc cp932_mbtowc
+#define cp943_wctomb cp932_wctomb
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp949.h b/graf2d/win32gdk/gdk/src/iconv/cp949.h
new file mode 100644
index 00000000000..665e7243ae9
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp949.h
@@ -0,0 +1,128 @@
+/*
+ * Copyright (C) 1999-2001, 2005, 2007 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP949 is EUC-KR, extended with UHC (Unified Hangul Code).
+ *
+ * Some variants of CP949 (in JDK, Windows-2000, ICU) also add:
+ *
+ * 2. Private area mappings:
+ *
+ *        code           Unicode
+ *    0xC9{A1..FE}   U+E000..U+E05D
+ *    0xFE{A1..FE}   U+E05E..U+E0BB
+ *
+ * We add them too because, although there are backward compatibility problems
+ * when a character from a private area is moved to an official Unicode code
+ * point, they are useful for some people in practice.
+ */
+
+#include "uhc_1.h"
+#include "uhc_2.h"
+
+static int
+cp949_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  /* Code set 0 (ASCII) */
+  if (c < 0x80)
+    return ascii_mbtowc(conv,pwc,s,n);
+  /* UHC part 1 */
+  if (c >= 0x81 && c <= 0xa0)
+    return uhc_1_mbtowc(conv,pwc,s,n);
+  if (c >= 0xa1 && c < 0xff) {
+    if (n < 2)
+      return RET_TOOFEW(0);
+    {
+      unsigned char c2 = s[1];
+      if (c2 < 0xa1)
+        /* UHC part 2 */
+        return uhc_2_mbtowc(conv,pwc,s,n);
+      else if (c2 < 0xff && !(c == 0xa2 && c2 == 0xe8)) {
+        /* Code set 1 (KS C 5601-1992, now KS X 1001:1998) */
+        unsigned char buf[2];
+        int ret;
+        buf[0] = c-0x80; buf[1] = c2-0x80;
+        ret = ksc5601_mbtowc(conv,pwc,buf,2);
+        if (ret != RET_ILSEQ)
+          return ret;
+        /* User-defined characters */
+        if (c == 0xc9) {
+          *pwc = 0xe000 + (c2 - 0xa1);
+          return 2;
+        }
+        if (c == 0xfe) {
+          *pwc = 0xe05e + (c2 - 0xa1);
+          return 2;
+        }
+      }
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static int
+cp949_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char buf[2];
+  int ret;
+
+  /* Code set 0 (ASCII) */
+  ret = ascii_wctomb(conv,r,wc,n);
+  if (ret != RET_ILUNI)
+    return ret;
+
+  /* Code set 1 (KS C 5601-1992, now KS X 1001:1998) */
+  if (wc != 0x327e) {
+    ret = ksc5601_wctomb(conv,buf,wc,2);
+    if (ret != RET_ILUNI) {
+      if (ret != 2) abort();
+      if (n < 2)
+        return RET_TOOSMALL;
+      r[0] = buf[0]+0x80;
+      r[1] = buf[1]+0x80;
+      return 2;
+    }
+  }
+
+  /* UHC */
+  if (wc >= 0xac00 && wc < 0xd7a4) {
+    if (wc < 0xc8a5)
+      return uhc_1_wctomb(conv,r,wc,n);
+    else
+      return uhc_2_wctomb(conv,r,wc,n);
+  }
+
+  /* User-defined characters */
+  if (wc >= 0xe000 && wc < 0xe0bc) {
+    if (n < 2)
+      return RET_TOOSMALL;
+    if (wc < 0xe05e) {
+      r[0] = 0xc9;
+      r[1] = wc - 0xe000 + 0xa1;
+    } else {
+      r[0] = 0xfe;
+      r[1] = wc - 0xe05e + 0xa1;
+    }
+    return 2;
+  }
+
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp950.h b/graf2d/win32gdk/gdk/src/iconv/cp950.h
new file mode 100644
index 00000000000..28ca19945cc
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp950.h
@@ -0,0 +1,284 @@
+/*
+ * Copyright (C) 1999-2001, 2005 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP950
+ */
+
+/*
+ * Microsoft CP950 is a slightly extended and slightly modified version of
+ * BIG5. The differences between the EASTASIA/OTHER/BIG5.TXT and
+ * VENDORS/MICSFT/WINDOWS/CP950.TXT tables found on ftp.unicode.org are
+ * as follows:
+ *
+ * 1. Some characters in the BIG5 range are defined differently:
+ *
+ *     code   BIG5.TXT                       CP950.TXT
+ *    0xA145  0x2022 # BULLET                0x2027 # HYPHENATION POINT
+ *    0xA14E  0xFF64 # HALFWIDTH IDEOGRAPHIC COMMA
+ *                                           0xFE51 # SMALL IDEOGRAPHIC COMMA
+ *    0xA15A    ---                          0x2574 # BOX DRAWINGS LIGHT LEFT
+ *    0xA1C2  0x203E # OVERLINE              0x00AF # MACRON
+ *    0xA1C3    ---                          0xFFE3 # FULLWIDTH MACRON
+ *    0xA1C5    ---                          0x02CD # MODIFIER LETTER LOW MACRON
+ *    0xA1E3  0x223C # TILDE OPERATOR        0xFF5E # FULLWIDTH TILDE
+ *    0xA1F2  0x2641 # EARTH                 0x2295 # CIRCLED PLUS
+ *    0xA1F3  0x2609 # SUN                   0x2299 # CIRCLED DOT OPERATOR
+ *    0xA1FE    ---                          0xFF0F # FULLWIDTH SOLIDUS
+ *    0xA240    ---                          0xFF3C # FULLWIDTH REVERSE SOLIDUS
+ *    0xA241  0xFF0F # FULLWIDTH SOLIDUS     0x2215 # DIVISION SLASH
+ *    0xA242  0xFF3C # FULLWIDTH REVERSE SOLIDUS
+ *                                           0xFE68 # SMALL REVERSE SOLIDUS
+ *    0xA244  0x00A5 # YEN SIGN              0xFFE5 # FULLWIDTH YEN SIGN
+ *    0xA246  0x00A2 # CENT SIGN             0xFFE0 # FULLWIDTH CENT SIGN
+ *    0xA247  0x00A3 # POUND SIGN            0xFFE1 # FULLWIDTH POUND SIGN
+ *    0xA2CC    ---                          0x5341
+ *    0xA2CE    ---                          0x5345
+ *
+ * 2. A small new row. See cp950ext.h.
+ *
+ * 3. CP950.TXT is lacking the range 0xC6A1..0xC7FC (Hiragana, Katakana,
+ *    Cyrillic, circled digits, parenthesized digits).
+ *
+ *    We implement this omission, because said range is marked "uncertain"
+ *    in the unicode.org BIG5 table.
+ *
+ * The table found on Microsoft's website furthermore adds:
+ *
+ * 4. A single character:
+ *
+ *     code   CP950.TXT
+ *    0xA3E1  0x20AC # EURO SIGN
+ *
+ * Many variants of BIG5 or CP950 (in JDK, Solaris, OSF/1, Windows-2000, ICU,
+ * as well as our BIG5-2003 converter) also add:
+ *
+ * 5. Private area mappings:
+ *
+ *              code                 Unicode
+ *    0x{81..8D}{40..7E,A1..FE}  U+EEB8..U+F6B0
+ *    0x{8E..A0}{40..7E,A1..FE}  U+E311..U+EEB7
+ *    0x{FA..FE}{40..7E,A1..FE}  U+E000..U+E310
+ *
+ * We add them too because, although there are backward compatibility problems
+ * when a character from a private area is moved to an official Unicode code
+ * point, they are useful for some people in practice.
+ */
+
+static const unsigned short cp950_2uni_pagea1[314] = {
+  /* 0xa1 */
+  0x3000, 0xff0c, 0x3001, 0x3002, 0xff0e, 0x2027, 0xff1b, 0xff1a,
+  0xff1f, 0xff01, 0xfe30, 0x2026, 0x2025, 0xfe50, 0xfe51, 0xfe52,
+  0x00b7, 0xfe54, 0xfe55, 0xfe56, 0xfe57, 0xff5c, 0x2013, 0xfe31,
+  0x2014, 0xfe33, 0x2574, 0xfe34, 0xfe4f, 0xff08, 0xff09, 0xfe35,
+  0xfe36, 0xff5b, 0xff5d, 0xfe37, 0xfe38, 0x3014, 0x3015, 0xfe39,
+  0xfe3a, 0x3010, 0x3011, 0xfe3b, 0xfe3c, 0x300a, 0x300b, 0xfe3d,
+  0xfe3e, 0x3008, 0x3009, 0xfe3f, 0xfe40, 0x300c, 0x300d, 0xfe41,
+  0xfe42, 0x300e, 0x300f, 0xfe43, 0xfe44, 0xfe59, 0xfe5a, 0xfe5b,
+  0xfe5c, 0xfe5d, 0xfe5e, 0x2018, 0x2019, 0x201c, 0x201d, 0x301d,
+  0x301e, 0x2035, 0x2032, 0xff03, 0xff06, 0xff0a, 0x203b, 0x00a7,
+  0x3003, 0x25cb, 0x25cf, 0x25b3, 0x25b2, 0x25ce, 0x2606, 0x2605,
+  0x25c7, 0x25c6, 0x25a1, 0x25a0, 0x25bd, 0x25bc, 0x32a3, 0x2105,
+  0x00af, 0xffe3, 0xff3f, 0x02cd, 0xfe49, 0xfe4a, 0xfe4d, 0xfe4e,
+  0xfe4b, 0xfe4c, 0xfe5f, 0xfe60, 0xfe61, 0xff0b, 0xff0d, 0x00d7,
+  0x00f7, 0x00b1, 0x221a, 0xff1c, 0xff1e, 0xff1d, 0x2266, 0x2267,
+  0x2260, 0x221e, 0x2252, 0x2261, 0xfe62, 0xfe63, 0xfe64, 0xfe65,
+  0xfe66, 0xff5e, 0x2229, 0x222a, 0x22a5, 0x2220, 0x221f, 0x22bf,
+  0x33d2, 0x33d1, 0x222b, 0x222e, 0x2235, 0x2234, 0x2640, 0x2642,
+  0x2295, 0x2299, 0x2191, 0x2193, 0x2190, 0x2192, 0x2196, 0x2197,
+  0x2199, 0x2198, 0x2225, 0x2223, 0xff0f,
+  /* 0xa2 */
+  0xff3c, 0x2215, 0xfe68, 0xff04, 0xffe5, 0x3012, 0xffe0, 0xffe1,
+  0xff05, 0xff20, 0x2103, 0x2109, 0xfe69, 0xfe6a, 0xfe6b, 0x33d5,
+  0x339c, 0x339d, 0x339e, 0x33ce, 0x33a1, 0x338e, 0x338f, 0x33c4,
+  0x00b0, 0x5159, 0x515b, 0x515e, 0x515d, 0x5161, 0x5163, 0x55e7,
+  0x74e9, 0x7cce, 0x2581, 0x2582, 0x2583, 0x2584, 0x2585, 0x2586,
+  0x2587, 0x2588, 0x258f, 0x258e, 0x258d, 0x258c, 0x258b, 0x258a,
+  0x2589, 0x253c, 0x2534, 0x252c, 0x2524, 0x251c, 0x2594, 0x2500,
+  0x2502, 0x2595, 0x250c, 0x2510, 0x2514, 0x2518, 0x256d, 0x256e,
+  0x2570, 0x256f, 0x2550, 0x255e, 0x256a, 0x2561, 0x25e2, 0x25e3,
+  0x25e5, 0x25e4, 0x2571, 0x2572, 0x2573, 0xff10, 0xff11, 0xff12,
+  0xff13, 0xff14, 0xff15, 0xff16, 0xff17, 0xff18, 0xff19, 0x2160,
+  0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, 0x2167, 0x2168,
+  0x2169, 0x3021, 0x3022, 0x3023, 0x3024, 0x3025, 0x3026, 0x3027,
+  0x3028, 0x3029, 0x5341, 0x5344, 0x5345, 0xff21, 0xff22, 0xff23,
+  0xff24, 0xff25, 0xff26, 0xff27, 0xff28, 0xff29, 0xff2a, 0xff2b,
+  0xff2c, 0xff2d, 0xff2e, 0xff2f, 0xff30, 0xff31, 0xff32, 0xff33,
+  0xff34, 0xff35, 0xff36, 0xff37, 0xff38, 0xff39, 0xff3a, 0xff41,
+  0xff42, 0xff43, 0xff44, 0xff45, 0xff46, 0xff47, 0xff48, 0xff49,
+  0xff4a, 0xff4b, 0xff4c, 0xff4d, 0xff4e, 0xff4f, 0xff50, 0xff51,
+  0xff52, 0xff53, 0xff54, 0xff55, 0xff56,
+};
+
+#include "cp950ext.h"
+
+static int
+cp950_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  /* Code set 0 (ASCII) */
+  if (c < 0x80)
+    return ascii_mbtowc(conv,pwc,s,n);
+  /* Code set 1 (BIG5 extended) */
+  if (c >= 0x81 && c < 0xff) {
+    if (n < 2)
+      return RET_TOOFEW(0);
+    {
+      unsigned char c2 = s[1];
+      if ((c2 >= 0x40 && c2 < 0x7f) || (c2 >= 0xa1 && c2 < 0xff)) {
+        if (c >= 0xa1) {
+          if (c < 0xa3) {
+            unsigned int i = 157 * (c - 0xa1) + (c2 - (c2 >= 0xa1 ? 0x62 : 0x40));
+            unsigned short wc = cp950_2uni_pagea1[i];
+            if (wc != 0xfffd) {
+              *pwc = (ucs4_t) wc;
+              return 2;
+            }
+          }
+          if (!((c == 0xc6 && c2 >= 0xa1) || c == 0xc7)) {
+            int ret = big5_mbtowc(conv,pwc,s,2);
+            if (ret != RET_ILSEQ)
+              return ret;
+          }
+          if (c == 0xa3 && c2 == 0xe1) {
+            *pwc = 0x20ac;
+            return 2;
+          }
+          if (c >= 0xfa) {
+            /* User-defined characters */
+            *pwc = 0xe000 + 157 * (c - 0xfa) + (c2 - (c2 >= 0xa1 ? 0x62 : 0x40));
+            return 2;
+          }
+        } else {
+          /* 0x81 <= c < 0xa1. */
+          /* User-defined characters */
+          *pwc = (c >= 0x8e ? 0xdb18 : 0xeeb8) + 157 * (c - 0x81)
+                 + (c2 - (c2 >= 0xa1 ? 0x62 : 0x40));
+          return 2;
+        }
+      }
+    }
+    if (c == 0xf9) {
+      int ret = cp950ext_mbtowc(conv,pwc,s,2);
+      if (ret != RET_ILSEQ)
+        return ret;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static int
+cp950_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char buf[2];
+  int ret;
+
+  /* Code set 0 (ASCII) */
+  ret = ascii_wctomb(conv,r,wc,n);
+  if (ret != RET_ILUNI)
+    return ret;
+
+  /* Code set 1 (BIG5 extended) */
+  switch (wc >> 8) {
+    case 0x00:
+      if (wc == 0x00af) { buf[0] = 0xa1; buf[1] = 0xc2; ret = 2; break; }
+      if (wc == 0x00a2 || wc == 0x00a3 || wc == 0x00a4)
+        return RET_ILUNI;
+      break;
+    case 0x02:
+      if (wc == 0x02cd) { buf[0] = 0xa1; buf[1] = 0xc5; ret = 2; break; }
+      break;
+    case 0x20:
+      if (wc == 0x2027) { buf[0] = 0xa1; buf[1] = 0x45; ret = 2; break; }
+      if (wc == 0x20ac) { buf[0] = 0xa3; buf[1] = 0xe1; ret = 2; break; }
+      if (wc == 0x2022 || wc == 0x203e)
+        return RET_ILUNI;
+      break;
+    case 0x22:
+      if (wc == 0x2215) { buf[0] = 0xa2; buf[1] = 0x41; ret = 2; break; }
+      if (wc == 0x2295) { buf[0] = 0xa1; buf[1] = 0xf2; ret = 2; break; }
+      if (wc == 0x2299) { buf[0] = 0xa1; buf[1] = 0xf3; ret = 2; break; }
+      if (wc == 0x223c)
+        return RET_ILUNI;
+      break;
+    case 0x25:
+      if (wc == 0x2574) { buf[0] = 0xa1; buf[1] = 0x5a; ret = 2; break; }
+      break;
+    case 0x26:
+      if (wc == 0x2609 || wc == 0x2641)
+        return RET_ILUNI;
+      break;
+    case 0xe0: case 0xe1: case 0xe2: case 0xe3: case 0xe4: case 0xe5:
+    case 0xe6: case 0xe7: case 0xe8: case 0xe9: case 0xea: case 0xeb:
+    case 0xec: case 0xed: case 0xee: case 0xef: case 0xf0: case 0xf1:
+    case 0xf2: case 0xf3: case 0xf4: case 0xf5: case 0xf6:
+      {
+        /* User-defined characters */
+        unsigned int i = wc - 0xe000;
+        if (i < 5809) {
+          unsigned int c1 = i / 157;
+          unsigned int c2 = i % 157;
+          buf[0] = c1 + (c1 < 5 ? 0xfa : c1 < 24 ? 0x89 : 0x69);
+          buf[1] = c2 + (c2 < 0x3f ? 0x40 : 0x62);
+          ret = 2;
+          break;
+        }
+      }
+      break;
+    case 0xfe:
+      if (wc == 0xfe51) { buf[0] = 0xa1; buf[1] = 0x4e; ret = 2; break; }
+      if (wc == 0xfe68) { buf[0] = 0xa2; buf[1] = 0x42; ret = 2; break; }
+      break;
+    case 0xff:
+      if (wc == 0xff0f) { buf[0] = 0xa1; buf[1] = 0xfe; ret = 2; break; }
+      if (wc == 0xff3c) { buf[0] = 0xa2; buf[1] = 0x40; ret = 2; break; }
+      if (wc == 0xff5e) { buf[0] = 0xa1; buf[1] = 0xe3; ret = 2; break; }
+      if (wc == 0xffe0) { buf[0] = 0xa2; buf[1] = 0x46; ret = 2; break; }
+      if (wc == 0xffe1) { buf[0] = 0xa2; buf[1] = 0x47; ret = 2; break; }
+      if (wc == 0xffe3) { buf[0] = 0xa1; buf[1] = 0xc3; ret = 2; break; }
+      if (wc == 0xffe5) { buf[0] = 0xa2; buf[1] = 0x44; ret = 2; break; }
+      if (wc == 0xff64)
+        return RET_ILUNI;
+      break;
+  }
+  if (ret == RET_ILUNI)
+    ret = big5_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (!((buf[0] == 0xc6 && buf[1] >= 0xa1) || buf[0] == 0xc7)) {
+      if (n < 2)
+        return RET_TOOSMALL;
+      r[0] = buf[0];
+      r[1] = buf[1];
+      return 2;
+    }
+  }
+  ret = cp950ext_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = buf[0];
+    r[1] = buf[1];
+    return 2;
+  }
+
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/cp950ext.h b/graf2d/win32gdk/gdk/src/iconv/cp950ext.h
new file mode 100644
index 00000000000..2a18d805454
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/cp950ext.h
@@ -0,0 +1,161 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * CP950 extensions
+ */
+
+static const unsigned short cp950ext_2uni_pagef9[157-116] = {
+  /* 0xf9 */
+                                  0x7881, 0x92b9, 0x88cf, 0x58bb,
+  0x6052, 0x7ca7, 0x5afa, 0x2554, 0x2566, 0x2557, 0x2560, 0x256c,
+  0x2563, 0x255a, 0x2569, 0x255d, 0x2552, 0x2564, 0x2555, 0x255e,
+  0x256a, 0x2561, 0x2558, 0x2567, 0x255b, 0x2553, 0x2565, 0x2556,
+  0x255f, 0x256b, 0x2562, 0x2559, 0x2568, 0x255c, 0x2551, 0x2550,
+  0x256d, 0x256e, 0x2570, 0x256f, 0x2593,
+};
+
+static int
+cp950ext_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 == 0xf9)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if ((c2 >= 0x40 && c2 < 0x7f) || (c2 >= 0xa1 && c2 < 0xff)) {
+        unsigned int i = 157 * (c1 - 0xa1) + (c2 - (c2 >= 0xa1 ? 0x62 : 0x40));
+        unsigned short wc = 0xfffd;
+        {
+          if (i >= 13932 && i < 13973)
+            wc = cp950ext_2uni_pagef9[i-13932];
+        }
+        if (wc != 0xfffd) {
+          *pwc = (ucs4_t) wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned short cp950ext_2charset[41] = {
+  0xf9f9, 0xf9f8, 0xf9e6, 0xf9ef, 0xf9dd, 0xf9e8, 0xf9f1, 0xf9df,
+  0xf9ec, 0xf9f5, 0xf9e3, 0xf9ee, 0xf9f7, 0xf9e5, 0xf9e9, 0xf9f2,
+  0xf9e0, 0xf9eb, 0xf9f4, 0xf9e2, 0xf9e7, 0xf9f0, 0xf9de, 0xf9ed,
+  0xf9f6, 0xf9e4, 0xf9ea, 0xf9f3, 0xf9e1, 0xf9fa, 0xf9fb, 0xf9fd,
+  0xf9fc, 0xf9fe, 0xf9d9, 0xf9dc, 0xf9da, 0xf9d6, 0xf9db, 0xf9d8,
+  0xf9d7,
+};
+
+static const Summary16 cp950ext_uni2indx_page25[10] = {
+  /* 0x2500 */
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0xffff }, {   16, 0xffff }, {   32, 0x0001 },
+  {   33, 0x0000 }, {   33, 0x0008 },
+};
+static const Summary16 cp950ext_uni2indx_page58[12] = {
+  /* 0x5800 */
+  {   34, 0x0000 }, {   34, 0x0000 }, {   34, 0x0000 }, {   34, 0x0000 },
+  {   34, 0x0000 }, {   34, 0x0000 }, {   34, 0x0000 }, {   34, 0x0000 },
+  {   34, 0x0000 }, {   34, 0x0000 }, {   34, 0x0000 }, {   34, 0x0800 },
+};
+static const Summary16 cp950ext_uni2indx_page5a[16] = {
+  /* 0x5a00 */
+  {   35, 0x0000 }, {   35, 0x0000 }, {   35, 0x0000 }, {   35, 0x0000 },
+  {   35, 0x0000 }, {   35, 0x0000 }, {   35, 0x0000 }, {   35, 0x0000 },
+  {   35, 0x0000 }, {   35, 0x0000 }, {   35, 0x0000 }, {   35, 0x0000 },
+  {   35, 0x0000 }, {   35, 0x0000 }, {   35, 0x0000 }, {   35, 0x0400 },
+};
+static const Summary16 cp950ext_uni2indx_page60[6] = {
+  /* 0x6000 */
+  {   36, 0x0000 }, {   36, 0x0000 }, {   36, 0x0000 }, {   36, 0x0000 },
+  {   36, 0x0000 }, {   36, 0x0004 },
+};
+static const Summary16 cp950ext_uni2indx_page78[9] = {
+  /* 0x7800 */
+  {   37, 0x0000 }, {   37, 0x0000 }, {   37, 0x0000 }, {   37, 0x0000 },
+  {   37, 0x0000 }, {   37, 0x0000 }, {   37, 0x0000 }, {   37, 0x0000 },
+  {   37, 0x0002 },
+};
+static const Summary16 cp950ext_uni2indx_page7c[11] = {
+  /* 0x7c00 */
+  {   38, 0x0000 }, {   38, 0x0000 }, {   38, 0x0000 }, {   38, 0x0000 },
+  {   38, 0x0000 }, {   38, 0x0000 }, {   38, 0x0000 }, {   38, 0x0000 },
+  {   38, 0x0000 }, {   38, 0x0000 }, {   38, 0x0080 },
+};
+static const Summary16 cp950ext_uni2indx_page88[13] = {
+  /* 0x8800 */
+  {   39, 0x0000 }, {   39, 0x0000 }, {   39, 0x0000 }, {   39, 0x0000 },
+  {   39, 0x0000 }, {   39, 0x0000 }, {   39, 0x0000 }, {   39, 0x0000 },
+  {   39, 0x0000 }, {   39, 0x0000 }, {   39, 0x0000 }, {   39, 0x0000 },
+  {   39, 0x8000 },
+};
+static const Summary16 cp950ext_uni2indx_page92[12] = {
+  /* 0x9200 */
+  {   40, 0x0000 }, {   40, 0x0000 }, {   40, 0x0000 }, {   40, 0x0000 },
+  {   40, 0x0000 }, {   40, 0x0000 }, {   40, 0x0000 }, {   40, 0x0000 },
+  {   40, 0x0000 }, {   40, 0x0000 }, {   40, 0x0000 }, {   40, 0x0200 },
+};
+
+static int
+cp950ext_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 2) {
+    const Summary16 *summary = NULL;
+    if (wc >= 0x2500 && wc < 0x25a0)
+      summary = &cp950ext_uni2indx_page25[(wc>>4)-0x250];
+    else if (wc >= 0x5800 && wc < 0x58c0)
+      summary = &cp950ext_uni2indx_page58[(wc>>4)-0x580];
+    else if (wc >= 0x5a00 && wc < 0x5b00)
+      summary = &cp950ext_uni2indx_page5a[(wc>>4)-0x5a0];
+    else if (wc >= 0x6000 && wc < 0x6060)
+      summary = &cp950ext_uni2indx_page60[(wc>>4)-0x600];
+    else if (wc >= 0x7800 && wc < 0x7890)
+      summary = &cp950ext_uni2indx_page78[(wc>>4)-0x780];
+    else if (wc >= 0x7c00 && wc < 0x7cb0)
+      summary = &cp950ext_uni2indx_page7c[(wc>>4)-0x7c0];
+    else if (wc >= 0x8800 && wc < 0x88d0)
+      summary = &cp950ext_uni2indx_page88[(wc>>4)-0x880];
+    else if (wc >= 0x9200 && wc < 0x92c0)
+      summary = &cp950ext_uni2indx_page92[(wc>>4)-0x920];
+    if (summary) {
+      unsigned short used = summary->used;
+      unsigned int i = wc & 0x0f;
+      if (used & ((unsigned short) 1 << i)) {
+        unsigned short c;
+        /* Keep in `used' only the bits 0..i-1. */
+        used &= ((unsigned short) 1 << i) - 1;
+        /* Add `summary->indx' and the number of bits set in `used'. */
+        used = (used & 0x5555) + ((used & 0xaaaa) >> 1);
+        used = (used & 0x3333) + ((used & 0xcccc) >> 2);
+        used = (used & 0x0f0f) + ((used & 0xf0f0) >> 4);
+        used = (used & 0x00ff) + (used >> 8);
+        c = cp950ext_2charset[summary->indx + used];
+        r[0] = (c >> 8); r[1] = (c & 0xff);
+        return 2;
+      }
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/dec_hanyu.h b/graf2d/win32gdk/gdk/src/iconv/dec_hanyu.h
new file mode 100644
index 00000000000..065fd5d5158
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/dec_hanyu.h
@@ -0,0 +1,115 @@
+/*
+ * Copyright (C) 2001, 2005 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * DEC-HANYU
+ */
+
+static int
+dec_hanyu_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  /* Code set 0 (ASCII) */
+  if (c < 0x80)
+    return ascii_mbtowc(conv,pwc,s,n);
+  /* Code set 1 (CNS 11643-1992 Plane 1),
+     Code set 2 (CNS 11643-1992 Plane 2),
+     Code set 3 (CNS 11643-1992 Plane 3) */
+  if (c >= 0xa1 && c < 0xff) {
+    if (n < 2)
+      return RET_TOOFEW(0);
+    {
+      unsigned char c2 = s[1];
+      if (c == 0xc2 && c2 == 0xcb) {
+        if (n < 4)
+          return RET_TOOFEW(0);
+        if (s[2] >= 0xa1 && s[2] < 0xff && s[3] >= 0xa1 && s[3] < 0xff) {
+          unsigned char buf[2];
+          int ret;
+          buf[0] = s[2]-0x80; buf[1] = s[3]-0x80;
+          ret = cns11643_3_mbtowc(conv,pwc,buf,2);
+          if (ret != RET_ILSEQ) {
+            if (ret != 2) abort();
+            return 4;
+          }
+        }
+      } else if (c2 >= 0xa1 && c2 < 0xff) {
+        if (c != 0xc2 || c2 < 0xc2) {
+          unsigned char buf[2];
+          buf[0] = c-0x80; buf[1] = c2-0x80;
+          return cns11643_1_mbtowc(conv,pwc,buf,2);
+        }
+      } else if (c2 >= 0x21 && c2 < 0x7f) {
+        unsigned char buf[2];
+        buf[0] = c-0x80; buf[1] = c2;
+        return cns11643_2_mbtowc(conv,pwc,buf,2);
+      }
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static int
+dec_hanyu_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char buf[3];
+  int ret;
+
+  /* Code set 0 (ASCII) */
+  ret = ascii_wctomb(conv,r,wc,n);
+  if (ret != RET_ILUNI)
+    return ret;
+
+  ret = cns11643_wctomb(conv,buf,wc,3);
+  if (ret != RET_ILUNI) {
+    if (ret != 3) abort();
+
+    /* Code set 1 (CNS 11643-1992 Plane 1) */
+    if (buf[0] == 1 && (buf[1] != 0x42 || buf[2] < 0x42)) {
+      if (n < 2)
+        return RET_TOOSMALL;
+      r[0] = buf[1]+0x80;
+      r[1] = buf[2]+0x80;
+      return 2;
+    }
+
+    /* Code set 2 (CNS 11643-1992 Plane 2) */
+    if (buf[0] == 2) {
+      if (n < 2)
+        return RET_TOOSMALL;
+      r[0] = buf[1]+0x80;
+      r[1] = buf[2];
+      return 2;
+    }
+
+    /* Code set 3 (CNS 11643-1992 Plane 3) */
+    if (buf[0] == 3) {
+      if (n < 4)
+        return RET_TOOSMALL;
+      r[0] = 0xc2;
+      r[1] = 0xcb;
+      r[2] = buf[1]+0x80;
+      r[3] = buf[2]+0x80;
+      return 4;
+    }
+  }
+
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/dec_kanji.h b/graf2d/win32gdk/gdk/src/iconv/dec_kanji.h
new file mode 100644
index 00000000000..0a056fb87ed
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/dec_kanji.h
@@ -0,0 +1,71 @@
+/*
+ * Copyright (C) 2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * DEC-KANJI
+ */
+
+static int
+dec_kanji_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  /* Code set 0 (ASCII or JIS X 0201-1976 Roman) */
+  if (c < 0x80)
+    return ascii_mbtowc(conv,pwc,s,n);
+  /* Code set 1 (JIS X 0208) */
+  if (c >= 0xa1 && c < 0xf5) {
+    if (n < 2)
+      return RET_TOOFEW(0);
+    {
+      unsigned char c2 = s[1];
+      if (c2 >= 0xa1 && c2 < 0xff) {
+        unsigned char buf[2];
+        buf[0] = c-0x80; buf[1] = c2-0x80;
+        return jisx0208_mbtowc(conv,pwc,buf,2);
+      }
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static int
+dec_kanji_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char buf[2];
+  int ret;
+
+  /* Code set 0 (ASCII or JIS X 0201-1976 Roman) */
+  ret = ascii_wctomb(conv,r,wc,n);
+  if (ret != RET_ILUNI)
+    return ret;
+
+  /* Code set 1 (JIS X 0208) */
+  ret = jisx0208_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = buf[0]+0x80;
+    r[1] = buf[1]+0x80;
+    return 2;
+  }
+
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/encodings.def b/graf2d/win32gdk/gdk/src/iconv/encodings.def
new file mode 100644
index 00000000000..b5fda5480f0
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/encodings.def
@@ -0,0 +1,1025 @@
+/* Copyright (C) 1999-2009 Free Software Foundation, Inc.
+   This file is part of the GNU LIBICONV Library.
+
+   The GNU LIBICONV Library is free software; you can redistribute it
+   and/or modify it under the terms of the GNU Library General Public
+   License as published by the Free Software Foundation; either version 2
+   of the License, or (at your option) any later version.
+
+   The GNU LIBICONV Library is distributed in the hope that it will be
+   useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Library General Public License for more details.
+
+   You should have received a copy of the GNU Library General Public
+   License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+   If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+   Fifth Floor, Boston, MA 02110-1301, USA.  */
+
+/* The list of all system independent user-visible encodings. */
+
+/* By convention, an encoding named FOOBAR or FOO_BAR or FOO-BAR is defined
+   in a file named "foobar.h" through the functions foobar_mbtowc and
+   foobar_wctomb (and possibly foobar_reset). */
+
+/* DEFENCODING(( name, alias1, ..., ),
+               xxx,
+               { xxx_mbtowc, xxx_flushwc },
+               { xxx_wctomb, xxx_reset })
+   defines an encoding with the given name and aliases. (There is no
+   difference between a name and an alias. By convention, the name is chosen
+   as the preferred MIME name or the standard name.)
+   All names and aliases must be in ASCII. Case is not significant, but
+   for the "cs*" aliases mixed case is preferred, otherwise UPPERCASE is
+   preferred. For all names and aliases, note where it comes from.
+   xxx is the name as used in the C code (lowercase).
+ */
+
+
+DEFENCODING(( "US-ASCII",               /* IANA */
+              "ASCII",                  /* IANA, JDK 1.1 */
+              "ISO646-US",              /* IANA */
+              "ISO_646.IRV:1991",       /* IANA */
+              "ISO-IR-6",               /* IANA */
+              "ANSI_X3.4-1968",         /* IANA */
+              "ANSI_X3.4-1986",         /* IANA */
+              "CP367",                  /* IANA */
+              "IBM367",                 /* IANA */
+              "US",                     /* IANA */
+              "csASCII",                /* IANA */
+            /*"ISO646.1991-IRV",           X11R6.4 */
+            ),
+            ascii,
+            { ascii_mbtowc, NULL },       { ascii_wctomb, NULL })
+#ifdef USE_SOLARIS_ALIASES
+DEFALIAS(     "646",                    /* Solaris */
+            ascii)
+#endif
+
+/* General multi-byte encodings */
+
+DEFENCODING(( "UTF-8",                  /* IANA, RFC 2279 */
+            /*"UTF8",                      JDK 1.1 */
+            /*"CP65001",                   Windows */
+            ),
+            utf8,
+            { utf8_mbtowc, NULL },        { utf8_wctomb, NULL })
+#ifdef USE_HPUX_ALIASES
+DEFALIAS(     "UTF8",                   /* HP-UX */
+            utf8)
+#endif
+
+DEFENCODING(( "UCS-2",                  /* glibc */
+              "ISO-10646-UCS-2",        /* IANA */
+              "csUnicode",              /* IANA */
+            ),
+            ucs2,
+            { ucs2_mbtowc, NULL },        { ucs2_wctomb, NULL })
+
+DEFENCODING(( "UCS-2BE",                /* glibc */
+              "UNICODEBIG",             /* glibc */
+              "UNICODE-1-1",            /* IANA */
+              "csUnicode11",            /* IANA */
+            /*"CP1201",                    Windows */
+            ),
+            ucs2be,
+            { ucs2be_mbtowc, NULL },      { ucs2be_wctomb, NULL })
+
+DEFENCODING(( "UCS-2LE",                /* glibc */
+              "UNICODELITTLE",          /* glibc */
+            /*"CP1200",                    Windows */
+            ),
+            ucs2le,
+            { ucs2le_mbtowc, NULL },      { ucs2le_wctomb, NULL })
+
+DEFENCODING(( "UCS-4",                  /* glibc */
+              "ISO-10646-UCS-4",        /* IANA */
+              "csUCS4",                 /* IANA */
+            ),
+            ucs4,
+            { ucs4_mbtowc, NULL },        { ucs4_wctomb, NULL })
+
+DEFENCODING(( "UCS-4BE",                /* glibc */
+            /*"CP12001",                   Windows */
+            ),
+            ucs4be,
+            { ucs4be_mbtowc, NULL },      { ucs4be_wctomb, NULL })
+
+DEFENCODING(( "UCS-4LE",                /* glibc */
+            /*"CP12000",                   Windows */
+            ),
+            ucs4le,
+            { ucs4le_mbtowc, NULL },      { ucs4le_wctomb, NULL })
+
+DEFENCODING(( "UTF-16",                 /* IANA, RFC 2781 */
+            ),
+            utf16,
+            { utf16_mbtowc, NULL },       { utf16_wctomb, NULL })
+
+DEFENCODING(( "UTF-16BE",               /* IANA, RFC 2781 */
+            ),
+            utf16be,
+            { utf16be_mbtowc, NULL },     { utf16be_wctomb, NULL })
+
+DEFENCODING(( "UTF-16LE",               /* IANA, RFC 2781 */
+            ),
+            utf16le,
+            { utf16le_mbtowc, NULL },     { utf16le_wctomb, NULL })
+
+DEFENCODING(( "UTF-32",                 /* IANA, Unicode 3.1 */
+            ),
+            utf32,
+            { utf32_mbtowc, NULL },       { utf32_wctomb, NULL })
+
+DEFENCODING(( "UTF-32BE",               /* IANA, Unicode 3.1 */
+            ),
+            utf32be,
+            { utf32be_mbtowc, NULL },     { utf32be_wctomb, NULL })
+
+DEFENCODING(( "UTF-32LE",               /* IANA, Unicode 3.1 */
+            ),
+            utf32le,
+            { utf32le_mbtowc, NULL },     { utf32le_wctomb, NULL })
+
+DEFENCODING(( "UTF-7",                  /* IANA, RFC 2152 */
+              "UNICODE-1-1-UTF-7",      /* IANA, RFC 1642 */
+              "csUnicode11UTF7",        /* IANA */
+            /*"CP65000",                   Windows */
+            ),
+            utf7,
+            { utf7_mbtowc, NULL },        { utf7_wctomb, utf7_reset })
+
+DEFENCODING(( "UCS-2-INTERNAL",         /* libiconv */
+            ),
+            ucs2internal,
+            { ucs2internal_mbtowc, NULL }, { ucs2internal_wctomb, NULL })
+
+DEFENCODING(( "UCS-2-SWAPPED",          /* libiconv */
+            ),
+            ucs2swapped,
+            { ucs2swapped_mbtowc, NULL }, { ucs2swapped_wctomb, NULL })
+
+DEFENCODING(( "UCS-4-INTERNAL",         /* libiconv */
+            ),
+            ucs4internal,
+            { ucs4internal_mbtowc, NULL },{ ucs4internal_wctomb, NULL })
+
+DEFENCODING(( "UCS-4-SWAPPED",          /* libiconv */
+            ),
+            ucs4swapped,
+            { ucs4swapped_mbtowc, NULL }, { ucs4swapped_wctomb, NULL })
+
+DEFENCODING(( "C99",
+            ),
+            c99,
+            { c99_mbtowc, NULL },         { c99_wctomb, NULL })
+
+DEFENCODING(( "JAVA",
+            ),
+            java,
+            { java_mbtowc, NULL },        { java_wctomb, NULL })
+
+/* Standard 8-bit encodings */
+
+DEFENCODING(( "ISO-8859-1",             /* IANA */
+              "ISO_8859-1",             /* IANA */
+              "ISO_8859-1:1987",        /* IANA */
+              "ISO-IR-100",             /* IANA */
+              "CP819",                  /* IANA */
+              "IBM819",                 /* IANA */
+              "LATIN1",                 /* IANA */
+              "L1",                     /* IANA */
+              "csISOLatin1",            /* IANA */
+              "ISO8859-1",              /* X11R6.4, glibc, FreeBSD, AIX, IRIX, OSF/1, Solaris */
+            /*"ISO8859_1",                 JDK 1.1 */
+            /*"CP28591",                   Windows */
+            ),
+            iso8859_1,
+            { iso8859_1_mbtowc, NULL },   { iso8859_1_wctomb, NULL })
+#ifdef USE_HPUX_ALIASES
+DEFALIAS(     "ISO88591",               /* HP-UX */
+            iso8859_1)
+#endif
+
+DEFENCODING(( "ISO-8859-2",             /* IANA */
+              "ISO_8859-2",             /* IANA */
+              "ISO_8859-2:1987",        /* IANA */
+              "ISO-IR-101",             /* IANA */
+              "LATIN2",                 /* IANA */
+              "L2",                     /* IANA */
+              "csISOLatin2",            /* IANA */
+              "ISO8859-2",              /* X11R6.4, glibc, FreeBSD, AIX, IRIX, OSF/1, Solaris */
+            /*"ISO8859_2",                 JDK 1.1 */
+            /*"CP28592",                   Windows */
+            ),
+            iso8859_2,
+            { iso8859_2_mbtowc, NULL },   { iso8859_2_wctomb, NULL })
+#ifdef USE_HPUX_ALIASES
+DEFALIAS(     "ISO88592",               /* HP-UX */
+            iso8859_2)
+#endif
+
+DEFENCODING(( "ISO-8859-3",             /* IANA */
+              "ISO_8859-3",             /* IANA */
+              "ISO_8859-3:1988",        /* IANA */
+              "ISO-IR-109",             /* IANA */
+              "LATIN3",                 /* IANA */
+              "L3",                     /* IANA */
+              "csISOLatin3",            /* IANA */
+              "ISO8859-3",              /* X11R6.4, glibc, FreeBSD, Solaris */
+            /*"ISO8859_3",                 JDK 1.1 */
+            /*"CP28593",                   Windows */
+            ),
+            iso8859_3,
+            { iso8859_3_mbtowc, NULL },   { iso8859_3_wctomb, NULL })
+
+DEFENCODING(( "ISO-8859-4",             /* IANA */
+              "ISO_8859-4",             /* IANA */
+              "ISO_8859-4:1988",        /* IANA */
+              "ISO-IR-110",             /* IANA */
+              "LATIN4",                 /* IANA */
+              "L4",                     /* IANA */
+              "csISOLatin4",            /* IANA */
+              "ISO8859-4",              /* X11R6.4, glibc, FreeBSD, OSF/1, Solaris */
+            /*"ISO8859_4",                 JDK 1.1 */
+            /*"CP28594",                   Windows */
+            ),
+            iso8859_4,
+            { iso8859_4_mbtowc, NULL },   { iso8859_4_wctomb, NULL })
+
+DEFENCODING(( "ISO-8859-5",             /* IANA */
+              "ISO_8859-5",             /* IANA */
+              "ISO_8859-5:1988",        /* IANA */
+              "ISO-IR-144",             /* IANA */
+              "CYRILLIC",               /* IANA */
+              "csISOLatinCyrillic",     /* IANA */
+              "ISO8859-5",              /* X11R6.4, glibc, FreeBSD, AIX, IRIX, OSF/1, Solaris */
+            /*"ISO8859_5",                 JDK 1.1 */
+            /*"CP28595",                   Windows */
+            ),
+            iso8859_5,
+            { iso8859_5_mbtowc, NULL },   { iso8859_5_wctomb, NULL })
+#ifdef USE_HPUX_ALIASES
+DEFALIAS(     "ISO88595",               /* HP-UX */
+            iso8859_5)
+#endif
+
+DEFENCODING(( "ISO-8859-6",             /* IANA */
+              "ISO_8859-6",             /* IANA */
+              "ISO_8859-6:1987",        /* IANA */
+              "ISO-IR-127",             /* IANA */
+              "ECMA-114",               /* IANA */
+              "ASMO-708",               /* IANA */
+              "ARABIC",                 /* IANA */
+              "csISOLatinArabic",       /* IANA */
+              "ISO8859-6",              /* X11R6.4, glibc, FreeBSD, AIX, Solaris */
+            /*"ISO8859_6",                 JDK 1.1 */
+            /*"CP28596",                   Windows */
+            ),
+            iso8859_6,
+            { iso8859_6_mbtowc, NULL },   { iso8859_6_wctomb, NULL })
+#ifdef USE_HPUX_ALIASES
+DEFALIAS(     "ISO88596",               /* HP-UX */
+            iso8859_6)
+#endif
+
+DEFENCODING(( "ISO-8859-7",             /* IANA, RFC 1947 */
+              "ISO_8859-7",             /* IANA */
+              "ISO_8859-7:1987",        /* IANA */
+              "ISO_8859-7:2003",
+              "ISO-IR-126",             /* IANA */
+              "ECMA-118",               /* IANA */
+              "ELOT_928",               /* IANA */
+              "GREEK8",                 /* IANA */
+              "GREEK",                  /* IANA */
+              "csISOLatinGreek",        /* IANA */
+              "ISO8859-7",              /* X11R6.4, glibc, FreeBSD, AIX, IRIX, OSF/1, Solaris */
+            /*"ISO8859_7",                 JDK 1.1 */
+            /*"CP28597",                   Windows */
+            ),
+            iso8859_7,
+            { iso8859_7_mbtowc, NULL },   { iso8859_7_wctomb, NULL })
+#ifdef USE_HPUX_ALIASES
+DEFALIAS(     "ISO88597",               /* HP-UX */
+            iso8859_7)
+#endif
+
+DEFENCODING(( "ISO-8859-8",             /* IANA */
+              "ISO_8859-8",             /* IANA */
+              "ISO_8859-8:1988",        /* IANA */
+              "ISO-IR-138",             /* IANA */
+              "HEBREW",                 /* IANA */
+              "csISOLatinHebrew",       /* IANA */
+              "ISO8859-8",              /* X11R6.4, glibc, FreeBSD, AIX, OSF/1, Solaris */
+            /*"ISO8859_8",                 JDK 1.1 */
+            /*"CP28598",                   Windows */
+            /*"CP38598",                   Windows */
+            ),
+            iso8859_8,
+            { iso8859_8_mbtowc, NULL },   { iso8859_8_wctomb, NULL })
+#ifdef USE_HPUX_ALIASES
+DEFALIAS(     "ISO88598",               /* HP-UX */
+            iso8859_8)
+#endif
+
+DEFENCODING(( "ISO-8859-9",             /* IANA */
+              "ISO_8859-9",             /* IANA */
+              "ISO_8859-9:1989",        /* IANA */
+              "ISO-IR-148",             /* IANA */
+              "LATIN5",                 /* IANA */
+              "L5",                     /* IANA */
+              "csISOLatin5",            /* IANA */
+              "ISO8859-9",              /* X11R6.4, glibc, FreeBSD, AIX, IRIX, OSF/1, Solaris */
+            /*"ISO8859_9",                 JDK 1.1 */
+            /*"CP28599",                   Windows */
+            ),
+            iso8859_9,
+            { iso8859_9_mbtowc, NULL },   { iso8859_9_wctomb, NULL })
+#ifdef USE_HPUX_ALIASES
+DEFALIAS(     "ISO88599",               /* HP-UX */
+            iso8859_9)
+#endif
+
+DEFENCODING(( "ISO-8859-10",            /* IANA */
+              "ISO_8859-10",
+              "ISO_8859-10:1992",       /* IANA */
+              "ISO-IR-157",             /* IANA */
+              "LATIN6",                 /* IANA */
+              "L6",                     /* IANA */
+              "csISOLatin6",            /* IANA */
+              "ISO8859-10",             /* X11R6.4, glibc, FreeBSD */
+            ),
+            iso8859_10,
+            { iso8859_10_mbtowc, NULL },  { iso8859_10_wctomb, NULL })
+
+DEFENCODING(( "ISO-8859-11",            /* glibc */
+              "ISO_8859-11",
+              "ISO8859-11",             /* X11R6.7, glibc */
+            ),
+            iso8859_11,
+            { iso8859_11_mbtowc, NULL },  { iso8859_11_wctomb, NULL })
+
+DEFENCODING(( "ISO-8859-13",            /* IANA, glibc */
+              "ISO_8859-13",
+              "ISO-IR-179",             /* glibc */
+              "LATIN7",                 /* glibc */
+              "L7",                     /* glibc */
+              "ISO8859-13",             /* glibc, FreeBSD */
+            ),
+            iso8859_13,
+            { iso8859_13_mbtowc, NULL },  { iso8859_13_wctomb, NULL })
+#ifdef USE_AIX_ALIASES
+DEFALIAS(     "IBM-921",                /* AIX */
+            iso8859_13)
+#endif
+
+DEFENCODING(( "ISO-8859-14",            /* IANA, glibc */
+              "ISO_8859-14",            /* IANA */
+              "ISO_8859-14:1998",       /* IANA, glibc */
+              "ISO-IR-199",             /* IANA */
+              "LATIN8",                 /* IANA, glibc */
+              "L8",                     /* IANA, glibc */
+              "ISO-CELTIC",             /* IANA */
+              "ISO8859-14",             /* glibc, FreeBSD */
+            ),
+            iso8859_14,
+            { iso8859_14_mbtowc, NULL },  { iso8859_14_wctomb, NULL })
+
+DEFENCODING(( "ISO-8859-15",            /* IANA, glibc */
+              "ISO_8859-15",            /* IANA */
+              "ISO_8859-15:1998",       /* glibc */
+              "ISO-IR-203",
+              "LATIN-9",                /* IANA */
+              "ISO8859-15",             /* glibc, FreeBSD, AIX, OSF/1, Solaris */
+            /*"CP28605",                   Windows */
+            ),
+            iso8859_15,
+            { iso8859_15_mbtowc, NULL },  { iso8859_15_wctomb, NULL })
+#ifdef USE_HPUX_ALIASES
+DEFALIAS(     "ISO885915",              /* HP-UX */
+            iso8859_15)
+#endif
+
+DEFENCODING(( "ISO-8859-16",            /* IANA */
+              "ISO_8859-16",            /* IANA */
+              "ISO_8859-16:2001",       /* IANA */
+              "ISO-IR-226",             /* IANA */
+              "LATIN10",                /* IANA */
+              "L10",                    /* IANA */
+              "ISO8859-16",             /* glibc, FreeBSD */
+            ),
+            iso8859_16,
+            { iso8859_16_mbtowc, NULL },  { iso8859_16_wctomb, NULL })
+
+DEFENCODING(( "KOI8-R",                 /* IANA, RFC 1489, X11R6.4, JDK 1.1 */
+              "csKOI8R",                /* IANA */
+            /*"CP20866",                   Windows */
+            ),
+            koi8_r,
+            { koi8_r_mbtowc, NULL },      { koi8_r_wctomb, NULL })
+
+DEFENCODING(( "KOI8-U",                 /* IANA, RFC 2319 */
+            ),
+            koi8_u,
+            { koi8_u_mbtowc, NULL },      { koi8_u_wctomb, NULL })
+
+DEFENCODING(( "KOI8-RU",
+            ),
+            koi8_ru,
+            { koi8_ru_mbtowc, NULL },     { koi8_ru_wctomb, NULL })
+
+/* Windows 8-bit encodings */
+
+DEFENCODING(( "CP1250",                 /* JDK 1.1 */
+              "WINDOWS-1250",           /* IANA */
+              "MS-EE",
+            ),
+            cp1250,
+            { cp1250_mbtowc, NULL },      { cp1250_wctomb, NULL })
+
+DEFENCODING(( "CP1251",                 /* JDK 1.1 */
+              "WINDOWS-1251",           /* IANA */
+              "MS-CYRL",
+            ),
+            cp1251,
+            { cp1251_mbtowc, NULL },      { cp1251_wctomb, NULL })
+#ifdef USE_SOLARIS_ALIASES
+DEFALIAS(     "ANSI-1251",              /* Solaris */
+            cp1251)
+#endif
+
+DEFENCODING(( "CP1252",                 /* JDK 1.1 */
+              "WINDOWS-1252",           /* IANA */
+              "MS-ANSI",
+            ),
+            cp1252,
+            { cp1252_mbtowc, NULL },      { cp1252_wctomb, NULL })
+#ifdef USE_AIX_ALIASES
+DEFALIAS(     "IBM-1252",               /* AIX */
+            cp1252)
+#endif
+
+DEFENCODING(( "CP1253",                 /* JDK 1.1 */
+              "WINDOWS-1253",           /* IANA */
+              "MS-GREEK",
+            ),
+            cp1253,
+            { cp1253_mbtowc, NULL },      { cp1253_wctomb, NULL })
+
+DEFENCODING(( "CP1254",                 /* JDK 1.1 */
+              "WINDOWS-1254",           /* IANA */
+              "MS-TURK",
+            ),
+            cp1254,
+            { cp1254_mbtowc, NULL },      { cp1254_wctomb, NULL })
+
+DEFENCODING(( "CP1255",                 /* JDK 1.1 */
+              "WINDOWS-1255",           /* IANA */
+              "MS-HEBR",
+            ),
+            cp1255,
+            { cp1255_mbtowc, cp1255_flushwc }, { cp1255_wctomb, NULL })
+
+DEFENCODING(( "CP1256",                 /* JDK 1.1 */
+              "WINDOWS-1256",           /* IANA */
+              "MS-ARAB",
+            ),
+            cp1256,
+            { cp1256_mbtowc, NULL },      { cp1256_wctomb, NULL })
+
+DEFENCODING(( "CP1257",                 /* JDK 1.1 */
+              "WINDOWS-1257",           /* IANA */
+              "WINBALTRIM",
+            ),
+            cp1257,
+            { cp1257_mbtowc, NULL },      { cp1257_wctomb, NULL })
+
+DEFENCODING(( "CP1258",                 /* JDK 1.1 */
+              "WINDOWS-1258",           /* IANA */
+            ),
+            cp1258,
+            { cp1258_mbtowc, cp1258_flushwc }, { cp1258_wctomb, NULL })
+
+/* DOS 8-bit encodings */
+
+DEFENCODING(( "CP850",                  /* IANA, JDK 1.1 */
+              "IBM850",                 /* IANA */
+              "850",                    /* IANA */
+              "csPC850Multilingual",    /* IANA */
+            ),
+            cp850,
+            { cp850_mbtowc, NULL },       { cp850_wctomb, NULL })
+#ifdef USE_AIX_ALIASES
+DEFALIAS(     "IBM-850",                /* AIX */
+            cp850)
+#endif
+
+DEFENCODING(( "CP862",                  /* IANA, JDK 1.1 */
+              "IBM862",                 /* IANA */
+              "862",                    /* IANA */
+              "csPC862LatinHebrew",     /* IANA */
+            ),
+            cp862,
+            { cp862_mbtowc, NULL },       { cp862_wctomb, NULL })
+
+DEFENCODING(( "CP866",                  /* IANA, JDK 1.1 */
+              "IBM866",                 /* IANA */
+              "866",                    /* IANA */
+              "csIBM866",               /* IANA */
+            ),
+            cp866,
+            { cp866_mbtowc, NULL },       { cp866_wctomb, NULL })
+
+DEFENCODING(( "CP1131",                 /* FreeBSD, MacOS X */
+            ),
+            cp1131,
+            { cp1131_mbtowc, NULL },      { cp1131_wctomb, NULL })
+#ifdef USE_AIX_ALIASES
+DEFALIAS(     "IBM-1131",               /* AIX */
+            cp1131)
+#endif
+
+/* Macintosh 8-bit encodings */
+
+DEFENCODING(( "MacRoman",               /* JDK 1.1 */
+              /* This is the best table for MACINTOSH. The ones */
+              /* in glibc and FreeBSD-iconv are bad quality. */
+              "MACINTOSH",              /* IANA */
+              "MAC",                    /* IANA */
+              "csMacintosh",            /* IANA */
+            /*"CP10000",                   Windows */
+            ),
+            mac_roman,
+            { mac_roman_mbtowc, NULL },   { mac_roman_wctomb, NULL })
+
+DEFENCODING(( "MacCentralEurope",       /* JDK 1.1 */
+            /*"CP10029",                   Windows */
+            ),
+            mac_centraleurope,
+            { mac_centraleurope_mbtowc, NULL }, { mac_centraleurope_wctomb, NULL })
+
+DEFENCODING(( "MacIceland",             /* JDK 1.1 */
+            /*"CP10079",                   Windows */
+            ),
+            mac_iceland,
+            { mac_iceland_mbtowc, NULL }, { mac_iceland_wctomb, NULL })
+
+DEFENCODING(( "MacCroatian",            /* JDK 1.1 */
+            /*"CP10082",                   Windows */
+            ),
+            mac_croatian,
+            { mac_croatian_mbtowc, NULL }, { mac_croatian_wctomb, NULL })
+
+DEFENCODING(( "MacRomania",             /* JDK 1.1 */
+            /*"CP10010",                   Windows */
+            ),
+            mac_romania,
+            { mac_romania_mbtowc, NULL }, { mac_romania_wctomb, NULL })
+
+DEFENCODING(( "MacCyrillic",            /* JDK 1.1 */
+            /*"CP10007",                   Windows */
+            ),
+            mac_cyrillic,
+            { mac_cyrillic_mbtowc, NULL }, { mac_cyrillic_wctomb, NULL })
+
+DEFENCODING(( "MacUkraine",             /* JDK 1.1 */
+            /*"CP10017",                   Windows */
+            ),
+            mac_ukraine,
+            { mac_ukraine_mbtowc, NULL }, { mac_ukraine_wctomb, NULL })
+
+DEFENCODING(( "MacGreek",               /* JDK 1.1 */
+            /*"CP10006",                   Windows */
+            ),
+            mac_greek,
+            { mac_greek_mbtowc, NULL },   { mac_greek_wctomb, NULL })
+
+DEFENCODING(( "MacTurkish",             /* JDK 1.1 */
+            /*"CP10081",                   Windows */
+            ),
+            mac_turkish,
+            { mac_turkish_mbtowc, NULL }, { mac_turkish_wctomb, NULL })
+
+DEFENCODING(( "MacHebrew",              /* JDK 1.1 */
+            /*"CP10005",                   Windows */
+            ),
+            mac_hebrew,
+            { mac_hebrew_mbtowc, NULL },  { mac_hebrew_wctomb, NULL })
+
+DEFENCODING(( "MacArabic",              /* JDK 1.1 */
+            /*"CP10004",                   Windows */
+            ),
+            mac_arabic,
+            { mac_arabic_mbtowc, NULL },  { mac_arabic_wctomb, NULL })
+
+DEFENCODING(( "MacThai",                /* JDK 1.1 */
+            /*"CP10021",                   Windows */
+            ),
+            mac_thai,
+            { mac_thai_mbtowc, NULL },    { mac_thai_wctomb, NULL })
+
+/* Other platform specific 8-bit encodings */
+
+DEFENCODING(( "HP-ROMAN8",              /* IANA, X11R6.4 */
+              "ROMAN8",                 /* IANA */
+              "R8",                     /* IANA */
+              "csHPRoman8",             /* IANA */
+            ),
+            hp_roman8,
+            { hp_roman8_mbtowc, NULL },   { hp_roman8_wctomb, NULL })
+
+DEFENCODING(( "NEXTSTEP",
+            ),
+            nextstep,
+            { nextstep_mbtowc, NULL },    { nextstep_wctomb, NULL })
+
+/* Regional 8-bit encodings used for a single language */
+
+DEFENCODING(( "ARMSCII-8",
+            ),
+            armscii_8,
+            { armscii_8_mbtowc, NULL },   { armscii_8_wctomb, NULL })
+
+DEFENCODING(( "GEORGIAN-ACADEMY",
+            ),
+            georgian_academy,
+            { georgian_academy_mbtowc, NULL }, { georgian_academy_wctomb, NULL })
+
+DEFENCODING(( "GEORGIAN-PS",
+            ),
+            georgian_ps,
+            { georgian_ps_mbtowc, NULL }, { georgian_ps_wctomb, NULL })
+
+DEFENCODING(( "KOI8-T",
+            ),
+            koi8_t,
+            { koi8_t_mbtowc, NULL },      { koi8_t_wctomb, NULL })
+
+DEFENCODING(( "PT154",                  /* IANA, glibc */
+              "PTCP154",                /* IANA */
+              "CP154",                  /* IANA */
+              "CYRILLIC-ASIAN",         /* IANA */
+              "csPTCP154",              /* IANA */
+            ),
+            pt154,
+            { pt154_mbtowc, NULL },       { pt154_wctomb, NULL })
+
+DEFENCODING(( "RK1048",                 /* IANA, glibc */
+              "STRK1048-2002",          /* IANA */
+              "KZ-1048",                /* IANA */
+              "csKZ1048",               /* IANA */
+            ),
+            rk1048,
+            { rk1048_mbtowc, NULL },      { rk1048_wctomb, NULL })
+
+DEFENCODING(( "MULELAO-1",
+            ),
+            mulelao,
+            { mulelao_mbtowc, NULL },     { mulelao_wctomb, NULL })
+
+DEFENCODING(( "CP1133",
+              "IBM-CP1133",
+            ),
+            cp1133,
+            { cp1133_mbtowc, NULL },      { cp1133_wctomb, NULL })
+
+DEFENCODING(( "TIS-620",                /* IANA */
+              "TIS620",                 /* glibc, HP-UX */
+              "TIS620-0",               /* glibc */
+              "TIS620.2529-1",          /* glibc */
+              "TIS620.2533-0",          /* glibc */
+              "TIS620.2533-1",
+              "ISO-IR-166",             /* glibc */
+            ),
+            tis620,
+            { tis620_mbtowc, NULL },      { tis620_wctomb, NULL })
+#ifdef USE_OSF1_ALIASES
+DEFALIAS(     "TACTIS",                 /* OSF/1 */
+            tis620)
+#endif
+#ifdef USE_SOLARIS_ALIASES
+DEFALIAS(     "TIS620.2533",            /* Solaris */
+            tis620)
+#endif
+
+DEFENCODING(( "CP874",                  /* JDK 1.1 */
+              "WINDOWS-874",
+            ),
+            cp874,
+            { cp874_mbtowc, NULL },       { cp874_wctomb, NULL })
+
+DEFENCODING(( "VISCII",                 /* IANA, RFC 1456 */
+              "VISCII1.1-1",
+              "csVISCII",               /* IANA */
+            ),
+            viscii,
+            { viscii_mbtowc, NULL },      { viscii_wctomb, NULL })
+
+DEFENCODING(( "TCVN",
+              "TCVN-5712",
+              "TCVN5712-1",
+              "TCVN5712-1:1993",
+            ),
+            tcvn,
+            { tcvn_mbtowc, tcvn_flushwc }, { tcvn_wctomb, NULL })
+
+/* CJK character sets (not documented) */
+
+DEFENCODING(( "JIS_C6220-1969-RO",      /* IANA */
+              "ISO646-JP",              /* IANA */
+              "ISO-IR-14",              /* IANA */
+              "JP",                     /* IANA */
+              "csISO14JISC6220ro",      /* IANA */
+            ),
+            iso646_jp,
+            { iso646_jp_mbtowc, NULL },   { iso646_jp_wctomb, NULL })
+
+DEFENCODING(( "JIS_X0201",              /* IANA */
+              "JISX0201-1976",
+              "X0201",                  /* IANA */
+              "csHalfWidthKatakana",    /* IANA */
+            /*"JISX0201.1976-0",           X11R6.4 */
+            /*"JIS0201",                   JDK 1.1 */
+            ),
+            jisx0201,
+            { jisx0201_mbtowc, NULL },    { jisx0201_wctomb, NULL })
+
+DEFENCODING(( "JIS_X0208",
+              "JIS_X0208-1983",         /* IANA */
+              "JIS_X0208-1990",
+              "JIS0208",
+              "X0208",                  /* IANA */
+              "ISO-IR-87",              /* IANA */
+              "JIS_C6226-1983",         /* IANA */
+              "csISO87JISX0208",        /* IANA */
+            /*"JISX0208.1983-0",           X11R6.4 */
+            /*"JISX0208.1990-0",           X11R6.4 */
+            /*"JIS0208",                   JDK 1.1 */
+            ),
+            jisx0208,
+            { jisx0208_mbtowc, NULL },    { jisx0208_wctomb, NULL })
+
+DEFENCODING(( "JIS_X0212",
+              "JIS_X0212.1990-0",
+              "JIS_X0212-1990",         /* IANA */
+              "X0212",                  /* IANA */
+              "ISO-IR-159",             /* IANA */
+              "csISO159JISX02121990",   /* IANA */
+            /*"JISX0212.1990-0",           X11R6.4 */
+            /*"JIS0212",                   JDK 1.1 */
+            ),
+            jisx0212,
+            { jisx0212_mbtowc, NULL },    { jisx0212_wctomb, NULL })
+
+DEFENCODING(( "GB_1988-80",             /* IANA */
+              "ISO646-CN",              /* IANA */
+              "ISO-IR-57",              /* IANA */
+              "CN",                     /* IANA */
+              "csISO57GB1988",          /* IANA */
+            ),
+            iso646_cn,
+            { iso646_cn_mbtowc, NULL },   { iso646_cn_wctomb, NULL })
+
+DEFENCODING(( "GB_2312-80",             /* IANA */
+              "ISO-IR-58",              /* IANA */
+              "csISO58GB231280",        /* IANA */
+              "CHINESE",                /* IANA */
+            /*"GB2312.1980-0",             X11R6.4 */
+            ),
+            gb2312,
+            { gb2312_mbtowc, NULL },      { gb2312_wctomb, NULL })
+
+DEFENCODING(( "ISO-IR-165",
+              "CN-GB-ISOIR165",         /* RFC 1922 */
+            ),
+            isoir165,
+            { isoir165_mbtowc, NULL },    { isoir165_wctomb, NULL })
+
+DEFENCODING(( "KSC_5601",               /* IANA */
+              "KS_C_5601-1987",         /* IANA */
+              "KS_C_5601-1989",         /* IANA */
+              "ISO-IR-149",             /* IANA */
+              "csKSC56011987",          /* IANA */
+              "KOREAN",                 /* IANA */
+            /*"KSC5601.1987-0",            X11R6.4 */
+            /*"KSX1001:1992",              Ken Lunde */
+            ),
+            ksc5601,
+            { ksc5601_mbtowc, NULL },     { ksc5601_wctomb, NULL })
+
+/* CJK encodings */
+
+DEFENCODING(( "EUC-JP",                 /* IANA */
+              "EUCJP",                  /* glibc, HP-UX, IRIX, OSF/1, Solaris */
+              "Extended_UNIX_Code_Packed_Format_for_Japanese", /* IANA */
+              "csEUCPkdFmtJapanese",    /* IANA */
+            /*"EUC_JP",                    JDK 1.1 */
+            /*"CP51932",                   Windows */
+            ),
+            euc_jp,
+            { euc_jp_mbtowc, NULL },      { euc_jp_wctomb, NULL })
+#ifdef USE_AIX_ALIASES
+DEFALIAS(     "IBM-EUCJP",              /* AIX */
+            euc_jp)
+#endif
+#ifdef USE_OSF1_ALIASES
+DEFALIAS(     "SDECKANJI",              /* OSF/1 */
+            euc_jp)
+#endif
+
+DEFENCODING(( "SHIFT_JIS",              /* IANA */
+              "SHIFT-JIS",              /* glibc */
+              "SJIS",                   /* JDK 1.1, HP-UX, OSF/1 */
+              "MS_KANJI",               /* IANA */
+              "csShiftJIS",             /* IANA */
+            ),
+            sjis,
+            { sjis_mbtowc, NULL },        { sjis_wctomb, NULL })
+#ifdef USE_SOLARIS_ALIASES
+DEFALIAS(     "PCK",                    /* Solaris */
+            sjis)
+#endif
+
+DEFENCODING(( "CP932",                  /* glibc */
+            ),
+            cp932,
+            { cp932_mbtowc, NULL },       { cp932_wctomb, NULL })
+#ifdef USE_AIX_ALIASES
+DEFALIAS(     "IBM-932",                /* AIX */
+            cp932)
+#endif
+
+DEFENCODING(( "ISO-2022-JP",            /* IANA, RFC 1468 */
+              "csISO2022JP",            /* IANA */
+            /*"ISO2022JP",                 JDK 1.1 */
+            ),
+            iso2022_jp,
+            { iso2022_jp_mbtowc, NULL },  { iso2022_jp_wctomb, iso2022_jp_reset })
+
+DEFENCODING(( "ISO-2022-JP-1",          /* RFC 2237 */
+            ),
+            iso2022_jp1,
+            { iso2022_jp1_mbtowc, NULL }, { iso2022_jp1_wctomb, iso2022_jp1_reset })
+
+DEFENCODING(( "ISO-2022-JP-2",          /* IANA, RFC 1554 */
+              "csISO2022JP2",           /* IANA */
+            ),
+            iso2022_jp2,
+            { iso2022_jp2_mbtowc, NULL }, { iso2022_jp2_wctomb, iso2022_jp2_reset })
+
+DEFENCODING(( "EUC-CN",                 /* glibc */
+              "EUCCN",                  /* glibc, IRIX */
+              "GB2312",                 /* IANA */
+              "CN-GB",                  /* RFC 1922 */
+              "csGB2312",               /* IANA */
+            /*"EUC_CN",                    JDK 1.1 */
+            /*"CP51936",                   Windows */
+            ),
+            euc_cn,
+            { euc_cn_mbtowc, NULL },      { euc_cn_wctomb, NULL })
+#ifdef USE_AIX_ALIASES
+DEFALIAS(     "IBM-EUCCN",              /* AIX */
+            euc_cn)
+#endif
+#ifdef USE_HPUX_ALIASES
+DEFALIAS(     "HP15CN",                 /* HP-UX */
+            euc_cn)
+#endif
+#ifdef USE_OSF1_ALIASES
+DEFALIAS(     "DECHANZI",               /* OSF/1 */
+            euc_cn)
+#endif
+
+DEFENCODING(( "GBK",                    /* IANA, JDK 1.1 */
+            ),
+            ces_gbk,
+            { ces_gbk_mbtowc, NULL },     { ces_gbk_wctomb, NULL })
+
+DEFENCODING(( "CP936",                  /* IANA */
+              "MS936",                  /* IANA */
+              "WINDOWS-936",            /* IANA */
+            ),
+            cp936,
+            { cp936_mbtowc, NULL },       { cp936_wctomb, NULL })
+
+DEFENCODING(( "GB18030",                /* IANA, glibc */
+            /*"CP54936",                   Windows */
+            ),
+            gb18030,
+            { gb18030_mbtowc, NULL },     { gb18030_wctomb, NULL })
+
+DEFENCODING(( "ISO-2022-CN",            /* IANA, RFC 1922 */
+              "csISO2022CN",
+            /*"ISO2022CN",                 JDK 1.1 */
+            ),
+            iso2022_cn,
+            { iso2022_cn_mbtowc, NULL },  { iso2022_cn_wctomb, iso2022_cn_reset })
+
+DEFENCODING(( "ISO-2022-CN-EXT",        /* IANA, RFC 1922 */
+            ),
+            iso2022_cn_ext,
+            { iso2022_cn_ext_mbtowc, NULL }, { iso2022_cn_ext_wctomb, iso2022_cn_ext_reset })
+
+DEFENCODING(( "HZ",                     /* RFC 1843 */
+              "HZ-GB-2312",             /* IANA, RFC 1842 */
+            ),
+            hz,
+            { hz_mbtowc, NULL },          { hz_wctomb, hz_reset })
+
+DEFENCODING(( "EUC-TW",                 /* glibc */
+              "EUCTW",                  /* glibc, HP-UX, IRIX, OSF/1 */
+              "csEUCTW",
+            /*"EUC_TW",                    JDK 1.1 */
+            /*"CP51950",                   Windows */
+            ),
+            euc_tw,
+            { euc_tw_mbtowc, NULL },      { euc_tw_wctomb, NULL })
+#ifdef USE_AIX_ALIASES
+DEFALIAS(     "IBM-EUCTW",              /* AIX */
+            euc_tw)
+#endif
+#ifdef USE_SOLARIS_ALIASES
+DEFALIAS(     "CNS11643",               /* Solaris */
+            euc_tw)
+#endif
+
+DEFENCODING(( "BIG5",                   /* IANA, JDK 1.1 */
+              "BIG-5",                  /* glibc */
+              "BIG-FIVE",               /* glibc */
+              "BIGFIVE",                /* glibc */
+              "CN-BIG5",                /* RFC 1922 */
+              "csBig5",                 /* IANA */
+            ),
+            ces_big5,
+            { ces_big5_mbtowc, NULL },    { ces_big5_wctomb, NULL })
+
+DEFENCODING(( "CP950",                  /* JDK 1.1 */
+            ),
+            cp950,
+            { cp950_mbtowc, NULL },       { cp950_wctomb, NULL })
+
+DEFENCODING(( "BIG5-HKSCS:1999",
+            ),
+            big5hkscs1999,
+            { big5hkscs1999_mbtowc, big5hkscs1999_flushwc }, { big5hkscs1999_wctomb, big5hkscs1999_reset })
+
+DEFENCODING(( "BIG5-HKSCS:2001",
+            ),
+            big5hkscs2001,
+            { big5hkscs2001_mbtowc, big5hkscs2001_flushwc }, { big5hkscs2001_wctomb, big5hkscs2001_reset })
+
+DEFENCODING(( "BIG5-HKSCS",             /* IANA */
+              "BIG5HKSCS",              /* glibc */
+              "BIG5-HKSCS:2004",
+            ),
+            big5hkscs2004,
+            { big5hkscs2004_mbtowc, big5hkscs2004_flushwc }, { big5hkscs2004_wctomb, big5hkscs2004_reset })
+
+DEFENCODING(( "EUC-KR",                 /* IANA, RFC 1557 */
+              "EUCKR",                  /* glibc, HP-UX, IRIX, OSF/1 */
+              "csEUCKR",                /* IANA */
+            /*"EUC_KR",                    JDK 1.1 */
+            /*"CP51949",                   Windows */
+            ),
+            euc_kr,
+            { euc_kr_mbtowc, NULL },      { euc_kr_wctomb, NULL })
+#ifdef USE_AIX_ALIASES
+DEFALIAS(     "IBM-EUCKR",              /* AIX */
+            euc_kr)
+#endif
+#ifdef USE_OSF1_ALIASES
+DEFALIAS(     "DECKOREAN",              /* OSF/1 */
+            euc_kr)
+#endif
+#ifdef USE_SOLARIS_ALIASES
+DEFALIAS(     "5601",                   /* Solaris */
+            euc_kr)
+#endif
+
+DEFENCODING(( "CP949",                  /* JDK 1.1 */
+              "UHC",                    /* glibc */
+            ),
+            cp949,
+            { cp949_mbtowc, NULL },       { cp949_wctomb, NULL })
+#ifdef USE_OSF1_ALIASES
+DEFALIAS(     "KSC5601",                /* OSF/1 */
+            cp949)
+#endif
+
+DEFENCODING(( "JOHAB",                  /* glibc */
+              "CP1361",                 /* glibc */
+            ),
+            johab,
+            { johab_mbtowc, NULL },       { johab_wctomb, NULL })
+#ifdef USE_SOLARIS_ALIASES
+DEFALIAS(     "KO_KR.JOHAP92",          /* Solaris */
+            johab)
+#endif
+
+DEFENCODING(( "ISO-2022-KR",            /* IANA, RFC 1557 */
+              "csISO2022KR",            /* IANA */
+            /*"ISO2022KR",                 JDK 1.1 */
+            ),
+            iso2022_kr,
+            { iso2022_kr_mbtowc, NULL },  { iso2022_kr_wctomb, iso2022_kr_reset })
+
diff --git a/graf2d/win32gdk/gdk/src/iconv/encodings_aix.def b/graf2d/win32gdk/gdk/src/iconv/encodings_aix.def
new file mode 100644
index 00000000000..259452eb538
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/encodings_aix.def
@@ -0,0 +1,97 @@
+/* Copyright (C) 2000-2002, 2008 Free Software Foundation, Inc.
+   This file is part of the GNU LIBICONV Library.
+
+   The GNU LIBICONV Library is free software; you can redistribute it
+   and/or modify it under the terms of the GNU Library General Public
+   License as published by the Free Software Foundation; either version 2
+   of the License, or (at your option) any later version.
+
+   The GNU LIBICONV Library is distributed in the hope that it will be
+   useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Library General Public License for more details.
+
+   You should have received a copy of the GNU Library General Public
+   License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+   If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+   Fifth Floor, Boston, MA 02110-1301, USA.  */
+
+/* Encodings used by system dependent locales on AIX. */
+
+DEFENCODING(( "CP856",
+            ),
+            cp856,
+            { cp856_mbtowc, NULL },       { cp856_wctomb, NULL })
+#ifdef USE_AIX_ALIASES
+DEFALIAS(     "IBM-856",                /* AIX */
+            cp856)
+#endif
+
+DEFENCODING(( "CP922",
+            ),
+            cp922,
+            { cp922_mbtowc, NULL },       { cp922_wctomb, NULL })
+#ifdef USE_AIX_ALIASES
+DEFALIAS(     "IBM-922",                /* AIX */
+            cp922)
+#endif
+
+DEFENCODING(( "CP943",
+            ),
+            cp943,
+            { cp943_mbtowc, NULL },       { cp943_wctomb, NULL })
+#ifdef USE_AIX_ALIASES
+DEFALIAS(     "IBM-943",                /* AIX */
+            cp943)
+#endif
+
+DEFENCODING(( "CP1046",
+            ),
+            cp1046,
+            { cp1046_mbtowc, NULL },      { cp1046_wctomb, NULL })
+#ifdef USE_AIX_ALIASES
+DEFALIAS(     "IBM-1046",               /* AIX */
+            cp1046)
+#endif
+
+DEFENCODING(( "CP1124",
+            ),
+            cp1124,
+            { cp1124_mbtowc, NULL },      { cp1124_wctomb, NULL })
+#ifdef USE_AIX_ALIASES
+DEFALIAS(     "IBM-1124",               /* AIX */
+            cp1124)
+#endif
+
+DEFENCODING(( "CP1129",
+            ),
+            cp1129,
+            { cp1129_mbtowc, NULL },      { cp1129_wctomb, NULL })
+#ifdef USE_AIX_ALIASES
+DEFALIAS(     "IBM-1129",               /* AIX */
+            cp1129)
+#endif
+
+DEFENCODING(( "CP1161",
+              "IBM1161",                /* glibc */
+              "IBM-1161",               /* glibc */
+              "csIBM1161",              /* glibc */
+            ),
+            cp1161,
+            { cp1161_mbtowc, NULL },      { cp1161_wctomb, NULL })
+
+DEFENCODING(( "CP1162",
+              "IBM1162",                /* glibc */
+              "IBM-1162",               /* glibc */
+              "csIBM1162",              /* glibc */
+            ),
+            cp1162,
+            { cp1162_mbtowc, NULL },      { cp1162_wctomb, NULL })
+
+DEFENCODING(( "CP1163",
+              "IBM1163",                /* glibc */
+              "IBM-1163",               /* glibc */
+              "csIBM1163",              /* glibc */
+            ),
+            cp1163,
+            { cp1163_mbtowc, NULL },      { cp1163_wctomb, NULL })
diff --git a/graf2d/win32gdk/gdk/src/iconv/encodings_dos.def b/graf2d/win32gdk/gdk/src/iconv/encodings_dos.def
new file mode 100644
index 00000000000..c9d30c8c0ff
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/encodings_dos.def
@@ -0,0 +1,127 @@
+/* Copyright (C) 2001-2002 Free Software Foundation, Inc.
+   This file is part of the GNU LIBICONV Library.
+
+   The GNU LIBICONV Library is free software; you can redistribute it
+   and/or modify it under the terms of the GNU Library General Public
+   License as published by the Free Software Foundation; either version 2
+   of the License, or (at your option) any later version.
+
+   The GNU LIBICONV Library is distributed in the hope that it will be
+   useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Library General Public License for more details.
+
+   You should have received a copy of the GNU Library General Public
+   License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+   If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+   Fifth Floor, Boston, MA 02110-1301, USA.  */
+
+/* Encodings used by system dependent locales on MSDOS. */
+
+DEFENCODING(( "CP437",                  /* IANA, JDK 1.1 */
+              "IBM437",                 /* IANA */
+              "437",                    /* IANA */
+              "csPC8CodePage437",       /* IANA */
+            ),
+            cp437,
+            { cp437_mbtowc, NULL },       { cp437_wctomb, NULL })
+
+DEFENCODING(( "CP737",                  /* JDK 1.1 */
+            ),
+            cp737,
+            { cp737_mbtowc, NULL },       { cp737_wctomb, NULL })
+
+DEFENCODING(( "CP775",                  /* IANA, JDK 1.1 */
+              "IBM775",                 /* IANA */
+              "csPC775Baltic",          /* IANA */
+            ),
+            cp775,
+            { cp775_mbtowc, NULL },       { cp775_wctomb, NULL })
+
+DEFENCODING(( "CP852",                  /* IANA, JDK 1.1 */
+              "IBM852",                 /* IANA */
+              "852",                    /* IANA */
+              "csPCp852",               /* IANA */
+            ),
+            cp852,
+            { cp852_mbtowc, NULL },       { cp852_wctomb, NULL })
+
+DEFENCODING(( "CP853",
+            ),
+            cp853,
+            { cp853_mbtowc, NULL },       { cp853_wctomb, NULL })
+
+DEFENCODING(( "CP855",                  /* IANA, JDK 1.1 */
+              "IBM855",                 /* IANA */
+              "855",                    /* IANA */
+              "csIBM855",               /* IANA */
+            ),
+            cp855,
+            { cp855_mbtowc, NULL },       { cp855_wctomb, NULL })
+
+DEFENCODING(( "CP857",                  /* IANA, JDK 1.1 */
+              "IBM857",                 /* IANA */
+              "857",                    /* IANA */
+              "csIBM857",               /* IANA */
+            ),
+            cp857,
+            { cp857_mbtowc, NULL },       { cp857_wctomb, NULL })
+
+DEFENCODING(( "CP858",                  /* JDK 1.1.7 */
+            ),
+            cp858,
+            { cp858_mbtowc, NULL },       { cp858_wctomb, NULL })
+
+DEFENCODING(( "CP860",                  /* IANA, JDK 1.1 */
+              "IBM860",                 /* IANA */
+              "860",                    /* IANA */
+              "csIBM860",               /* IANA */
+            ),
+            cp860,
+            { cp860_mbtowc, NULL },       { cp860_wctomb, NULL })
+
+DEFENCODING(( "CP861",                  /* IANA, JDK 1.1 */
+              "IBM861",                 /* IANA */
+              "861",                    /* IANA */
+              "CP-IS",                  /* IANA */
+              "csIBM861",               /* IANA */
+            ),
+            cp861,
+            { cp861_mbtowc, NULL },       { cp861_wctomb, NULL })
+
+DEFENCODING(( "CP863",                  /* IANA, JDK 1.1 */
+              "IBM863",                 /* IANA */
+              "863",                    /* IANA */
+              "csIBM863",               /* IANA */
+            ),
+            cp863,
+            { cp863_mbtowc, NULL },       { cp863_wctomb, NULL })
+
+DEFENCODING(( "CP864",                  /* IANA, JDK 1.1 */
+              "IBM864",                 /* IANA */
+              "csIBM864",               /* IANA */
+            ),
+            cp864,
+            { cp864_mbtowc, NULL },       { cp864_wctomb, NULL })
+
+DEFENCODING(( "CP865",                  /* IANA, JDK 1.1 */
+              "IBM865",                 /* IANA */
+              "865",                    /* IANA */
+              "csIBM865",               /* IANA */
+            ),
+            cp865,
+            { cp865_mbtowc, NULL },       { cp865_wctomb, NULL })
+
+DEFENCODING(( "CP869",                  /* IANA, JDK 1.1 */
+              "IBM869",                 /* IANA */
+              "869",                    /* IANA */
+              "CP-GR",                  /* IANA */
+              "csIBM869",               /* IANA */
+            ),
+            cp869,
+            { cp869_mbtowc, NULL },       { cp869_wctomb, NULL })
+
+DEFENCODING(( "CP1125",                 /* ICU */
+            ),
+            cp1125,
+            { cp1125_mbtowc, NULL },      { cp1125_wctomb, NULL })
diff --git a/graf2d/win32gdk/gdk/src/iconv/encodings_extra.def b/graf2d/win32gdk/gdk/src/iconv/encodings_extra.def
new file mode 100644
index 00000000000..614422b68d6
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/encodings_extra.def
@@ -0,0 +1,57 @@
+/* Copyright (C) 2002, 2005, 2008 Free Software Foundation, Inc.
+   This file is part of the GNU LIBICONV Library.
+
+   The GNU LIBICONV Library is free software; you can redistribute it
+   and/or modify it under the terms of the GNU Library General Public
+   License as published by the Free Software Foundation; either version 2
+   of the License, or (at your option) any later version.
+
+   The GNU LIBICONV Library is distributed in the hope that it will be
+   useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Library General Public License for more details.
+
+   You should have received a copy of the GNU Library General Public
+   License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+   If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+   Fifth Floor, Boston, MA 02110-1301, USA.  */
+
+DEFENCODING(( "EUC-JISX0213",
+              "EUC-JIS-2004",           /* x0213.org */
+            ),
+            euc_jisx0213,
+            { euc_jisx0213_mbtowc, euc_jisx0213_flushwc }, { euc_jisx0213_wctomb, euc_jisx0213_reset })
+
+DEFENCODING(( "SHIFT_JISX0213",
+              "SHIFT_JIS-2004",         /* x0213.org */
+            ),
+            shift_jisx0213,
+            { shift_jisx0213_mbtowc, shift_jisx0213_flushwc }, { shift_jisx0213_wctomb, shift_jisx0213_reset })
+
+DEFENCODING(( "ISO-2022-JP-3",
+              "ISO-2022-JP-2004",       /* x0213.org */
+            ),
+            iso2022_jp3,
+            { iso2022_jp3_mbtowc, iso2022_jp3_flushwc }, { iso2022_jp3_wctomb, iso2022_jp3_reset })
+
+DEFENCODING(( "BIG5-2003",
+            ),
+            big5_2003,
+            { big5_2003_mbtowc, NULL },   { big5_2003_wctomb, NULL })
+
+DEFENCODING(( "TDS565",
+              "ISO-IR-230",
+            ),
+            tds565,
+            { tds565_mbtowc, NULL },      { tds565_wctomb, NULL })
+
+DEFENCODING(( "ATARIST",
+              "ATARI",
+            ),
+            atarist,
+            { atarist_mbtowc, NULL },     { atarist_wctomb, NULL })
+
+DEFENCODING(( "RISCOS-LATIN1",
+            ),
+            riscos1,
+            { riscos1_mbtowc, NULL },     { riscos1_wctomb, NULL })
diff --git a/graf2d/win32gdk/gdk/src/iconv/encodings_local.def b/graf2d/win32gdk/gdk/src/iconv/encodings_local.def
new file mode 100644
index 00000000000..4e793e5bd97
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/encodings_local.def
@@ -0,0 +1,29 @@
+/* Copyright (C) 2000-2001 Free Software Foundation, Inc.
+   This file is part of the GNU LIBICONV Library.
+
+   The GNU LIBICONV Library is free software; you can redistribute it
+   and/or modify it under the terms of the GNU Library General Public
+   License as published by the Free Software Foundation; either version 2
+   of the License, or (at your option) any later version.
+
+   The GNU LIBICONV Library is distributed in the hope that it will be
+   useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Library General Public License for more details.
+
+   You should have received a copy of the GNU Library General Public
+   License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+   If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+   Fifth Floor, Boston, MA 02110-1301, USA.  */
+
+/* Names for locale dependent encodings. */
+
+DEFENCODING(( "CHAR",
+            ),
+            local_char,
+            { NULL, NULL },               { NULL, NULL })
+
+DEFENCODING(( "WCHAR_T",                /* glibc */
+            ),
+            local_wchar_t,
+            { NULL, NULL },               { NULL, NULL })
diff --git a/graf2d/win32gdk/gdk/src/iconv/encodings_osf1.def b/graf2d/win32gdk/gdk/src/iconv/encodings_osf1.def
new file mode 100644
index 00000000000..7912854bbbd
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/encodings_osf1.def
@@ -0,0 +1,37 @@
+/* Copyright (C) 2001, 2008 Free Software Foundation, Inc.
+   This file is part of the GNU LIBICONV Library.
+
+   The GNU LIBICONV Library is free software; you can redistribute it
+   and/or modify it under the terms of the GNU Library General Public
+   License as published by the Free Software Foundation; either version 2
+   of the License, or (at your option) any later version.
+
+   The GNU LIBICONV Library is distributed in the hope that it will be
+   useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Library General Public License for more details.
+
+   You should have received a copy of the GNU Library General Public
+   License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+   If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+   Fifth Floor, Boston, MA 02110-1301, USA.  */
+
+/* Encodings used by system dependent locales on OSF/1 a.k.a. Tru64. */
+
+DEFENCODING(( "DEC-KANJI",
+            ),
+            dec_kanji,
+            { dec_kanji_mbtowc, NULL },   { dec_kanji_wctomb, NULL })
+#ifdef USE_OSF1_ALIASES
+DEFALIAS(     "DECKANJI",               /* OSF/1 */
+            dec_kanji)
+#endif
+
+DEFENCODING(( "DEC-HANYU",
+            ),
+            dec_hanyu,
+            { dec_hanyu_mbtowc, NULL },   { dec_hanyu_wctomb, NULL })
+#ifdef USE_OSF1_ALIASES
+DEFALIAS(     "DECHANYU",               /* OSF/1 */
+            dec_hanyu)
+#endif
diff --git a/graf2d/win32gdk/gdk/src/iconv/euc_cn.h b/graf2d/win32gdk/gdk/src/iconv/euc_cn.h
new file mode 100644
index 00000000000..a25417a989c
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/euc_cn.h
@@ -0,0 +1,72 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * EUC-CN
+ */
+
+static int
+euc_cn_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  /* Code set 0 (ASCII or GB 1988-89) */
+  if (c < 0x80)
+    return ascii_mbtowc(conv,pwc,s,n);
+  /* Code set 1 (GB 2312-1980) */
+  if (c >= 0xa1 && c < 0xff) {
+    if (n < 2)
+      return RET_TOOFEW(0);
+    {
+      unsigned char c2 = s[1];
+      if (c2 >= 0xa1 && c2 < 0xff) {
+        unsigned char buf[2];
+        buf[0] = c-0x80; buf[1] = c2-0x80;
+        return gb2312_mbtowc(conv,pwc,buf,2);
+      } else
+        return RET_ILSEQ;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static int
+euc_cn_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char buf[2];
+  int ret;
+
+  /* Code set 0 (ASCII or GB 1988-89) */
+  ret = ascii_wctomb(conv,r,wc,n);
+  if (ret != RET_ILUNI)
+    return ret;
+
+  /* Code set 1 (GB 2312-1980) */
+  ret = gb2312_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = buf[0]+0x80;
+    r[1] = buf[1]+0x80;
+    return 2;
+  }
+
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/euc_jisx0213.h b/graf2d/win32gdk/gdk/src/iconv/euc_jisx0213.h
new file mode 100644
index 00000000000..4d417ca12e1
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/euc_jisx0213.h
@@ -0,0 +1,268 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * EUC-JISX0213
+ */
+
+/* The structure of EUC-JISX0213 is as follows:
+
+   0x00..0x7F: ASCII
+
+   0x8E{A1..FE}: JISX0201 Katakana, with prefix 0x8E, offset by +0x80.
+
+   0x8F{A1..FE}{A1..FE}: JISX0213 plane 2, with prefix 0x8F, offset by +0x8080.
+
+   0x{A1..FE}{A1..FE}: JISX0213 plane 1, offset by +0x8080.
+
+   Note that some JISX0213 characters are not contained in Unicode 3.2
+   and are therefore best represented as sequences of Unicode characters.
+*/
+
+#include "jisx0213.h"
+#include "flushwc.h"
+
+static int
+euc_jisx0213_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  ucs4_t last_wc = conv->istate;
+  if (last_wc) {
+    /* Output the buffered character. */
+    conv->istate = 0;
+    *pwc = last_wc;
+    return 0; /* Don't advance the input pointer. */
+  } else {
+    unsigned char c = *s;
+    if (c < 0x80) {
+      /* Plain ASCII character. */
+      *pwc = (ucs4_t) c;
+      return 1;
+    } else {
+      if ((c >= 0xa1 && c <= 0xfe) || c == 0x8e || c == 0x8f) {
+        /* Two or three byte character. */
+        if (n >= 2) {
+          unsigned char c2 = s[1];
+          if (c2 >= 0xa1 && c2 <= 0xfe) {
+            if (c == 0x8e) {
+              /* Half-width katakana. */
+              if (c2 <= 0xdf) {
+                *pwc = c2 + 0xfec0;
+                return 2;
+              }
+            } else {
+              ucs4_t wc;
+              if (c == 0x8f) {
+                /* JISX 0213 plane 2. */
+                if (n >= 3) {
+                  unsigned char c3 = s[2];
+                  wc = jisx0213_to_ucs4(0x200-0x80+c2,c3^0x80);
+                } else
+                  return RET_TOOFEW(0);
+              } else {
+                /* JISX 0213 plane 1. */
+                wc = jisx0213_to_ucs4(0x100-0x80+c,c2^0x80);
+              }
+              if (wc) {
+                if (wc < 0x80) {
+                  /* It's a combining character. */
+                  ucs4_t wc1 = jisx0213_to_ucs_combining[wc - 1][0];
+                  ucs4_t wc2 = jisx0213_to_ucs_combining[wc - 1][1];
+                  /* We cannot output two Unicode characters at once. So,
+                     output the first character and buffer the second one. */
+                  *pwc = wc1;
+                  conv->istate = wc2;
+                } else
+                  *pwc = wc;
+                return (c == 0x8f ? 3 : 2);
+              }
+            }
+          }
+        } else
+          return RET_TOOFEW(0);
+      }
+      return RET_ILSEQ;
+    }
+  }
+}
+
+#define euc_jisx0213_flushwc normal_flushwc
+
+/* Composition tables for each of the relevant combining characters.  */
+static const struct { unsigned short base; unsigned short composed; } euc_jisx0213_comp_table_data[] = {
+#define euc_jisx0213_comp_table02e5_idx 0
+#define euc_jisx0213_comp_table02e5_len 1
+  { 0xabe4, 0xabe5 }, /* 0x12B65 = 0x12B64 U+02E5 */
+#define euc_jisx0213_comp_table02e9_idx (euc_jisx0213_comp_table02e5_idx+euc_jisx0213_comp_table02e5_len)
+#define euc_jisx0213_comp_table02e9_len 1
+  { 0xabe0, 0xabe6 }, /* 0x12B66 = 0x12B60 U+02E9 */
+#define euc_jisx0213_comp_table0300_idx (euc_jisx0213_comp_table02e9_idx+euc_jisx0213_comp_table02e9_len)
+#define euc_jisx0213_comp_table0300_len 5
+  { 0xa9dc, 0xabc4 }, /* 0x12B44 = 0x1295C U+0300 */
+  { 0xabb8, 0xabc8 }, /* 0x12B48 = 0x12B38 U+0300 */
+  { 0xabb7, 0xabca }, /* 0x12B4A = 0x12B37 U+0300 */
+  { 0xabb0, 0xabcc }, /* 0x12B4C = 0x12B30 U+0300 */
+  { 0xabc3, 0xabce }, /* 0x12B4E = 0x12B43 U+0300 */
+#define euc_jisx0213_comp_table0301_idx (euc_jisx0213_comp_table0300_idx+euc_jisx0213_comp_table0300_len)
+#define euc_jisx0213_comp_table0301_len 4
+  { 0xabb8, 0xabc9 }, /* 0x12B49 = 0x12B38 U+0301 */
+  { 0xabb7, 0xabcb }, /* 0x12B4B = 0x12B37 U+0301 */
+  { 0xabb0, 0xabcd }, /* 0x12B4D = 0x12B30 U+0301 */
+  { 0xabc3, 0xabcf }, /* 0x12B4F = 0x12B43 U+0301 */
+#define euc_jisx0213_comp_table309a_idx (euc_jisx0213_comp_table0301_idx+euc_jisx0213_comp_table0301_len)
+#define euc_jisx0213_comp_table309a_len 14
+  { 0xa4ab, 0xa4f7 }, /* 0x12477 = 0x1242B U+309A */
+  { 0xa4ad, 0xa4f8 }, /* 0x12478 = 0x1242D U+309A */
+  { 0xa4af, 0xa4f9 }, /* 0x12479 = 0x1242F U+309A */
+  { 0xa4b1, 0xa4fa }, /* 0x1247A = 0x12431 U+309A */
+  { 0xa4b3, 0xa4fb }, /* 0x1247B = 0x12433 U+309A */
+  { 0xa5ab, 0xa5f7 }, /* 0x12577 = 0x1252B U+309A */
+  { 0xa5ad, 0xa5f8 }, /* 0x12578 = 0x1252D U+309A */
+  { 0xa5af, 0xa5f9 }, /* 0x12579 = 0x1252F U+309A */
+  { 0xa5b1, 0xa5fa }, /* 0x1257A = 0x12531 U+309A */
+  { 0xa5b3, 0xa5fb }, /* 0x1257B = 0x12533 U+309A */
+  { 0xa5bb, 0xa5fc }, /* 0x1257C = 0x1253B U+309A */
+  { 0xa5c4, 0xa5fd }, /* 0x1257D = 0x12544 U+309A */
+  { 0xa5c8, 0xa5fe }, /* 0x1257E = 0x12548 U+309A */
+  { 0xa6f5, 0xa6f8 }, /* 0x12678 = 0x12675 U+309A */
+};
+
+static int
+euc_jisx0213_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  int count = 0;
+  unsigned short lasttwo = conv->ostate;
+
+  if (lasttwo) {
+    /* Attempt to combine the last character with this one. */
+    unsigned int idx;
+    unsigned int len;
+
+    if (wc == 0x02e5)
+      idx = euc_jisx0213_comp_table02e5_idx,
+      len = euc_jisx0213_comp_table02e5_len;
+    else if (wc == 0x02e9)
+      idx = euc_jisx0213_comp_table02e9_idx,
+      len = euc_jisx0213_comp_table02e9_len;
+    else if (wc == 0x0300)
+      idx = euc_jisx0213_comp_table0300_idx,
+      len = euc_jisx0213_comp_table0300_len;
+    else if (wc == 0x0301)
+      idx = euc_jisx0213_comp_table0301_idx,
+      len = euc_jisx0213_comp_table0301_len;
+    else if (wc == 0x309a)
+      idx = euc_jisx0213_comp_table309a_idx,
+      len = euc_jisx0213_comp_table309a_len;
+    else
+      goto not_combining;
+
+    do
+      if (euc_jisx0213_comp_table_data[idx].base == lasttwo)
+        break;
+    while (++idx, --len > 0);
+
+    if (len > 0) {
+      /* Output the combined character. */
+      if (n >= 2) {
+        lasttwo = euc_jisx0213_comp_table_data[idx].composed;
+        r[0] = (lasttwo >> 8) & 0xff;
+        r[1] = lasttwo & 0xff;
+        conv->ostate = 0;
+        return 2;
+      } else
+        return RET_TOOSMALL;
+    }
+
+  not_combining:
+    /* Output the buffered character. */
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = (lasttwo >> 8) & 0xff;
+    r[1] = lasttwo & 0xff;
+    r += 2;
+    count = 2;
+  }
+
+  if (wc < 0x80) {
+    /* Plain ASCII character. */
+    if (n > count) {
+      r[0] = (unsigned char) wc;
+      conv->ostate = 0;
+      return count+1;
+    } else
+      return RET_TOOSMALL;
+  } else if (wc >= 0xff61 && wc <= 0xff9f) {
+    /* Half-width katakana. */
+    if (n >= count+2) {
+      r[0] = 0x8e;
+      r[1] = wc - 0xfec0;
+      conv->ostate = 0;
+      return count+2;
+    } else
+      return RET_TOOSMALL;
+  } else {
+    unsigned short jch = ucs4_to_jisx0213(wc);
+    if (jch != 0) {
+      if (jch & 0x0080) {
+        /* A possible match in comp_table_data. We have to buffer it. */
+        /* We know it's a JISX 0213 plane 1 character. */
+        if (jch & 0x8000) abort();
+        conv->ostate = jch | 0x8080;
+        return count+0;
+      }
+      if (jch & 0x8000) {
+        /* JISX 0213 plane 2. */
+        if (n >= count+3) {
+          r[0] = 0x8f;
+          r[1] = (jch >> 8) | 0x80;
+          r[2] = (jch & 0xff) | 0x80;
+          conv->ostate = 0;
+          return count+3;
+        } else
+          return RET_TOOSMALL;
+      } else {
+        /* JISX 0213 plane 1. */
+        if (n >= count+2) {
+          r[0] = (jch >> 8) | 0x80;
+          r[1] = (jch & 0xff) | 0x80;
+          conv->ostate = 0;
+          return count+2;
+        } else
+          return RET_TOOSMALL;
+      }
+    }
+    return RET_ILUNI;
+  }
+}
+
+static int
+euc_jisx0213_reset (conv_t conv, unsigned char *r, int n)
+{
+  state_t lasttwo = conv->ostate;
+
+  if (lasttwo) {
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = (lasttwo >> 8) & 0xff;
+    r[1] = lasttwo & 0xff;
+    /* conv->ostate = 0; will be done by the caller */
+    return 2;
+  } else
+    return 0;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/euc_jp.h b/graf2d/win32gdk/gdk/src/iconv/euc_jp.h
new file mode 100644
index 00000000000..84fa2e7eb03
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/euc_jp.h
@@ -0,0 +1,191 @@
+/*
+ * Copyright (C) 1999-2001, 2005 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * EUC-JP
+ */
+
+static int
+euc_jp_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  /* Code set 0 (ASCII or JIS X 0201-1976 Roman) */
+  if (c < 0x80)
+    return ascii_mbtowc(conv,pwc,s,n);
+  /* Code set 1 (JIS X 0208) */
+  if (c >= 0xa1 && c < 0xff) {
+    if (n < 2)
+      return RET_TOOFEW(0);
+    if (c < 0xf5) {
+      unsigned char c2 = s[1];
+      if (c2 >= 0xa1 && c2 < 0xff) {
+        unsigned char buf[2];
+        buf[0] = c-0x80; buf[1] = c2-0x80;
+        return jisx0208_mbtowc(conv,pwc,buf,2);
+      } else
+        return RET_ILSEQ;
+    } else {
+      /* User-defined range. See
+       * Ken Lunde's "CJKV Information Processing", table 4-66, p. 206. */
+      unsigned char c2 = s[1];
+      if (c2 >= 0xa1 && c2 < 0xff) {
+        *pwc = 0xe000 + 94*(c-0xf5) + (c2-0xa1);
+        return 2;
+      } else
+        return RET_ILSEQ;
+    }
+  }
+  /* Code set 2 (half-width katakana) */
+  if (c == 0x8e) {
+    if (n < 2)
+      return RET_TOOFEW(0);
+    {
+      unsigned char c2 = s[1];
+      if (c2 >= 0xa1 && c2 < 0xe0) {
+        int ret = jisx0201_mbtowc(conv,pwc,s+1,n-1);
+        if (ret == RET_ILSEQ)
+          return RET_ILSEQ;
+        if (ret != 1) abort();
+        return 2;
+      } else
+        return RET_ILSEQ;
+    }
+  }
+  /* Code set 3 (JIS X 0212-1990) */
+  if (c == 0x8f) {
+    if (n < 2)
+      return RET_TOOFEW(0);
+    {
+      unsigned char c2 = s[1];
+      if (c2 >= 0xa1 && c2 < 0xff) {
+        if (n < 3)
+          return RET_TOOFEW(0);
+        if (c2 < 0xf5) {
+          unsigned char c3 = s[2];
+          if (c3 >= 0xa1 && c3 < 0xff) {
+            unsigned char buf[2];
+            int ret;
+            buf[0] = c2-0x80; buf[1] = c3-0x80;
+            ret = jisx0212_mbtowc(conv,pwc,buf,2);
+            if (ret == RET_ILSEQ)
+              return RET_ILSEQ;
+            if (ret != 2) abort();
+            return 3;
+          } else
+            return RET_ILSEQ;
+        } else {
+          /* User-defined range. See
+           * Ken Lunde's "CJKV Information Processing", table 4-66, p. 206. */
+          unsigned char c3 = s[2];
+          if (c3 >= 0xa1 && c3 < 0xff) {
+            *pwc = 0xe3ac + 94*(c2-0xf5) + (c3-0xa1);
+            return 3;
+          } else
+            return RET_ILSEQ;
+        }
+      } else
+        return RET_ILSEQ;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static int
+euc_jp_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char buf[2];
+  int ret;
+
+  /* Code set 0 (ASCII or JIS X 0201-1976 Roman) */
+  ret = ascii_wctomb(conv,r,wc,n);
+  if (ret != RET_ILUNI)
+    return ret;
+
+  /* Code set 1 (JIS X 0208) */
+  ret = jisx0208_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = buf[0]+0x80;
+    r[1] = buf[1]+0x80;
+    return 2;
+  }
+
+  /* Code set 2 (half-width katakana) */
+  ret = jisx0201_wctomb(conv,buf,wc,1);
+  if (ret != RET_ILUNI && buf[0] >= 0x80) {
+    if (ret != 1) abort();
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = 0x8e;
+    r[1] = buf[0];
+    return 2;
+  }
+
+  /* Code set 3 (JIS X 0212-1990) */
+  ret = jisx0212_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (n < 3)
+      return RET_TOOSMALL;
+    r[0] = 0x8f;
+    r[1] = buf[0]+0x80;
+    r[2] = buf[1]+0x80;
+    return 3;
+  }
+
+  /* Extra compatibility with Shift_JIS.  */
+  if (wc == 0x00a5) {
+    r[0] = 0x5c;
+    return 1;
+  }
+  if (wc == 0x203e) {
+    r[0] = 0x7e;
+    return 1;
+  }
+
+  /* User-defined range. See
+   * Ken Lunde's "CJKV Information Processing", table 4-66, p. 206. */
+  if (wc >= 0xe000 && wc < 0xe758) {
+    if (wc < 0xe3ac) {
+      unsigned char c1, c2;
+      if (n < 2)
+        return RET_TOOSMALL;
+      c1 = (unsigned int) (wc - 0xe000) / 94;
+      c2 = (unsigned int) (wc - 0xe000) % 94;
+      r[0] = c1+0xf5;
+      r[1] = c2+0xa1;
+      return 2;
+    } else {
+      unsigned char c1, c2;
+      if (n < 3)
+        return RET_TOOSMALL;
+      c1 = (unsigned int) (wc - 0xe3ac) / 94;
+      c2 = (unsigned int) (wc - 0xe3ac) % 94;
+      r[0] = 0x8f;
+      r[1] = c1+0xf5;
+      r[2] = c2+0xa1;
+      return 3;
+    }
+  }
+
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/euc_kr.h b/graf2d/win32gdk/gdk/src/iconv/euc_kr.h
new file mode 100644
index 00000000000..8b3dd0528d7
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/euc_kr.h
@@ -0,0 +1,74 @@
+/*
+ * Copyright (C) 1999-2001, 2007 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * EUC-KR
+ */
+
+/* Specification: RFC 1557 */
+
+static int
+euc_kr_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  /* Code set 0 (ASCII or KS C 5636-1993) */
+  if (c < 0x80)
+    return ascii_mbtowc(conv,pwc,s,n);
+  /* Code set 1 (KS C 5601-1992, now KS X 1001:2002) */
+  if (c >= 0xa1 && c < 0xff) {
+    if (n < 2)
+      return RET_TOOFEW(0);
+    {
+      unsigned char c2 = s[1];
+      if (c2 >= 0xa1 && c2 < 0xff) {
+        unsigned char buf[2];
+        buf[0] = c-0x80; buf[1] = c2-0x80;
+        return ksc5601_mbtowc(conv,pwc,buf,2);
+      } else
+        return RET_ILSEQ;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static int
+euc_kr_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char buf[2];
+  int ret;
+
+  /* Code set 0 (ASCII or KS C 5636-1993) */
+  ret = ascii_wctomb(conv,r,wc,n);
+  if (ret != RET_ILUNI)
+    return ret;
+
+  /* Code set 1 (KS C 5601-1992, now KS X 1001:2002) */
+  ret = ksc5601_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = buf[0]+0x80;
+    r[1] = buf[1]+0x80;
+    return 2;
+  }
+
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/euc_tw.h b/graf2d/win32gdk/gdk/src/iconv/euc_tw.h
new file mode 100644
index 00000000000..f7bdc8b7ca3
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/euc_tw.h
@@ -0,0 +1,116 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * EUC-TW
+ */
+
+static int
+euc_tw_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  /* Code set 0 (ASCII) */
+  if (c < 0x80)
+    return ascii_mbtowc(conv,pwc,s,n);
+  /* Code set 1 (CNS 11643-1992 Plane 1) */
+  if (c >= 0xa1 && c < 0xff) {
+    if (n < 2)
+      return RET_TOOFEW(0);
+    {
+      unsigned char c2 = s[1];
+      if (c2 >= 0xa1 && c2 < 0xff) {
+        unsigned char buf[2];
+        buf[0] = c-0x80; buf[1] = c2-0x80;
+        return cns11643_1_mbtowc(conv,pwc,buf,2);
+      } else
+        return RET_ILSEQ;
+    }
+  }
+  /* Code set 2 (CNS 11643-1992 Planes 1-16) */
+  if (c == 0x8e) {
+    if (n < 4)
+      return RET_TOOFEW(0);
+    {
+      unsigned char c2 = s[1];
+      if (c2 >= 0xa1 && c2 <= 0xb0) {
+        unsigned char c3 = s[2];
+        unsigned char c4 = s[3];
+        if (c3 >= 0xa1 && c3 < 0xff && c4 >= 0xa1 && c4 < 0xff) {
+          unsigned char buf[2];
+          int ret;
+          buf[0] = c3-0x80; buf[1] = c4-0x80;
+          switch (c2-0xa0) {
+            case 1: ret = cns11643_1_mbtowc(conv,pwc,buf,2); break;
+            case 2: ret = cns11643_2_mbtowc(conv,pwc,buf,2); break;
+            case 3: ret = cns11643_3_mbtowc(conv,pwc,buf,2); break;
+            case 4: ret = cns11643_4_mbtowc(conv,pwc,buf,2); break;
+            case 5: ret = cns11643_5_mbtowc(conv,pwc,buf,2); break;
+            case 6: ret = cns11643_6_mbtowc(conv,pwc,buf,2); break;
+            case 7: ret = cns11643_7_mbtowc(conv,pwc,buf,2); break;
+            case 15: ret = cns11643_15_mbtowc(conv,pwc,buf,2); break;
+            default: return RET_ILSEQ;
+          }
+          if (ret == RET_ILSEQ)
+            return RET_ILSEQ;
+          if (ret != 2) abort();
+          return 4;
+        }
+      }
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static int
+euc_tw_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char buf[3];
+  int ret;
+
+  /* Code set 0 (ASCII) */
+  ret = ascii_wctomb(conv,r,wc,n);
+  if (ret != RET_ILUNI)
+    return ret;
+
+  ret = cns11643_wctomb(conv,buf,wc,3);
+  if (ret != RET_ILUNI) {
+    if (ret != 3) abort();
+
+    /* Code set 1 (CNS 11643-1992 Plane 1) */
+    if (buf[0] == 1) {
+      if (n < 2)
+        return RET_TOOSMALL;
+      r[0] = buf[1]+0x80;
+      r[1] = buf[2]+0x80;
+      return 2;
+    }
+
+    /* Code set 2 (CNS 11643-1992 Planes 1-16) */
+    if (n < 4)
+      return RET_TOOSMALL;
+    r[0] = 0x8e;
+    r[1] = buf[0]+0xa0;
+    r[2] = buf[1]+0x80;
+    r[3] = buf[2]+0x80;
+    return 4;
+  }
+
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/flags.h b/graf2d/win32gdk/gdk/src/iconv/flags.h
new file mode 100644
index 00000000000..d7cda212c68
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/flags.h
@@ -0,0 +1,156 @@
+/* Generated automatically by genflags. */
+
+/* Set if the encoding can encode
+   the acute and grave accents U+00B4 and U+0060. */
+#define HAVE_ACCENTS 1
+
+/* Set if the encoding can encode
+   the single quotation marks U+2018 and U+2019. */
+#define HAVE_QUOTATION_MARKS 2
+
+/* Set if the encoding can encode
+   the double-width Hangul letters (Jamo) U+3131 to U+3163. */
+#define HAVE_HANGUL_JAMO 4
+
+#define ei_ascii_oflags (0)
+#define ei_utf8_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_ucs2_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_ucs2be_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_ucs2le_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_ucs4_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_ucs4be_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_ucs4le_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_utf16_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_utf16be_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_utf16le_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_utf32_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_utf32be_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_utf32le_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_utf7_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_ucs2internal_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_ucs2swapped_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_ucs4internal_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_ucs4swapped_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_c99_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_java_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_iso8859_1_oflags (HAVE_ACCENTS)
+#define ei_iso8859_2_oflags (HAVE_ACCENTS)
+#define ei_iso8859_3_oflags (HAVE_ACCENTS)
+#define ei_iso8859_4_oflags (HAVE_ACCENTS)
+#define ei_iso8859_5_oflags (0)
+#define ei_iso8859_6_oflags (0)
+#define ei_iso8859_7_oflags (HAVE_QUOTATION_MARKS)
+#define ei_iso8859_8_oflags (HAVE_ACCENTS)
+#define ei_iso8859_9_oflags (HAVE_ACCENTS)
+#define ei_iso8859_10_oflags (0)
+#define ei_iso8859_11_oflags (0)
+#define ei_iso8859_13_oflags (0)
+#define ei_iso8859_14_oflags (0)
+#define ei_iso8859_15_oflags (0)
+#define ei_iso8859_16_oflags (0)
+#define ei_koi8_r_oflags (0)
+#define ei_koi8_u_oflags (0)
+#define ei_koi8_ru_oflags (0)
+#define ei_cp1250_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_cp1251_oflags (HAVE_QUOTATION_MARKS)
+#define ei_cp1252_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_cp1253_oflags (HAVE_QUOTATION_MARKS)
+#define ei_cp1254_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_cp1255_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_cp1256_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_cp1257_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_cp1258_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_cp850_oflags (HAVE_ACCENTS)
+#define ei_cp862_oflags (0)
+#define ei_cp866_oflags (0)
+#define ei_cp1131_oflags (0)
+#define ei_mac_roman_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_mac_centraleurope_oflags (HAVE_QUOTATION_MARKS)
+#define ei_mac_iceland_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_mac_croatian_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_mac_romania_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_mac_cyrillic_oflags (HAVE_QUOTATION_MARKS)
+#define ei_mac_ukraine_oflags (HAVE_QUOTATION_MARKS)
+#define ei_mac_greek_oflags (HAVE_QUOTATION_MARKS)
+#define ei_mac_turkish_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_mac_hebrew_oflags (HAVE_QUOTATION_MARKS)
+#define ei_mac_arabic_oflags (0)
+#define ei_mac_thai_oflags (HAVE_QUOTATION_MARKS)
+#define ei_hp_roman8_oflags (HAVE_ACCENTS)
+#define ei_nextstep_oflags (HAVE_ACCENTS)
+#define ei_armscii_8_oflags (0)
+#define ei_georgian_academy_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_georgian_ps_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_koi8_t_oflags (HAVE_QUOTATION_MARKS)
+#define ei_pt154_oflags (HAVE_QUOTATION_MARKS)
+#define ei_rk1048_oflags (HAVE_QUOTATION_MARKS)
+#define ei_mulelao_oflags (0)
+#define ei_cp1133_oflags (0)
+#define ei_tis620_oflags (0)
+#define ei_cp874_oflags (HAVE_QUOTATION_MARKS)
+#define ei_viscii_oflags (0)
+#define ei_tcvn_oflags (HAVE_ACCENTS)
+#define ei_iso646_jp_oflags (0)
+#define ei_jisx0201_oflags (0)
+#define ei_jisx0208_oflags (HAVE_QUOTATION_MARKS)
+#define ei_jisx0212_oflags (0)
+#define ei_iso646_cn_oflags (0)
+#define ei_gb2312_oflags (HAVE_QUOTATION_MARKS)
+#define ei_isoir165_oflags (HAVE_QUOTATION_MARKS)
+#define ei_ksc5601_oflags (HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_euc_jp_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_sjis_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_cp932_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_iso2022_jp_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_iso2022_jp1_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_iso2022_jp2_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_euc_cn_oflags (HAVE_QUOTATION_MARKS)
+#define ei_ces_gbk_oflags (HAVE_QUOTATION_MARKS)
+#define ei_cp936_oflags (HAVE_QUOTATION_MARKS)
+#define ei_gb18030_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_iso2022_cn_oflags (HAVE_QUOTATION_MARKS)
+#define ei_iso2022_cn_ext_oflags (HAVE_QUOTATION_MARKS)
+#define ei_hz_oflags (HAVE_QUOTATION_MARKS)
+#define ei_euc_tw_oflags (HAVE_QUOTATION_MARKS)
+#define ei_ces_big5_oflags (HAVE_QUOTATION_MARKS)
+#define ei_cp950_oflags (HAVE_QUOTATION_MARKS)
+#define ei_big5hkscs1999_oflags (HAVE_QUOTATION_MARKS)
+#define ei_big5hkscs2001_oflags (HAVE_QUOTATION_MARKS)
+#define ei_big5hkscs2004_oflags (HAVE_QUOTATION_MARKS)
+#define ei_euc_kr_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_cp949_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_johab_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_iso2022_kr_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_cp856_oflags (HAVE_ACCENTS)
+#define ei_cp922_oflags (HAVE_ACCENTS)
+#define ei_cp943_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_cp1046_oflags (0)
+#define ei_cp1124_oflags (0)
+#define ei_cp1129_oflags (0)
+#define ei_cp1161_oflags (0)
+#define ei_cp1162_oflags (HAVE_QUOTATION_MARKS)
+#define ei_cp1163_oflags (0)
+#define ei_dec_kanji_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_dec_hanyu_oflags (HAVE_QUOTATION_MARKS)
+#define ei_cp437_oflags (0)
+#define ei_cp737_oflags (0)
+#define ei_cp775_oflags (0)
+#define ei_cp852_oflags (HAVE_ACCENTS)
+#define ei_cp853_oflags (HAVE_ACCENTS)
+#define ei_cp855_oflags (0)
+#define ei_cp857_oflags (HAVE_ACCENTS)
+#define ei_cp858_oflags (HAVE_ACCENTS)
+#define ei_cp860_oflags (0)
+#define ei_cp861_oflags (0)
+#define ei_cp863_oflags (HAVE_ACCENTS)
+#define ei_cp864_oflags (0)
+#define ei_cp865_oflags (0)
+#define ei_cp869_oflags (HAVE_QUOTATION_MARKS)
+#define ei_cp1125_oflags (0)
+#define ei_euc_jisx0213_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_shift_jisx0213_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_iso2022_jp3_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
+#define ei_big5_2003_oflags (HAVE_QUOTATION_MARKS)
+#define ei_tds565_oflags (0)
+#define ei_atarist_oflags (HAVE_ACCENTS)
+#define ei_riscos1_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS)
diff --git a/graf2d/win32gdk/gdk/src/iconv/flushwc.h b/graf2d/win32gdk/gdk/src/iconv/flushwc.h
new file mode 100644
index 00000000000..da25212efaa
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/flushwc.h
@@ -0,0 +1,37 @@
+/*
+ * Copyright (C) 2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#ifndef _FLUSHWC_H
+#define _FLUSHWC_H
+
+static int
+normal_flushwc (conv_t conv, ucs4_t *pwc)
+{
+  ucs4_t last_wc = conv->istate;
+  if (last_wc) {
+    /* Output the buffered character. */
+    conv->istate = 0;
+    *pwc = (ucs4_t) last_wc;
+    return 1;
+  } else
+    return 0;
+}
+
+#endif /* _FLUSHWC_H */
diff --git a/graf2d/win32gdk/gdk/src/iconv/gb12345.h b/graf2d/win32gdk/gdk/src/iconv/gb12345.h
new file mode 100644
index 00000000000..b7e062e3e62
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/gb12345.h
@@ -0,0 +1,67 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * GB/T 12345-1990
+ */
+
+/*
+ * GB/T 12345-1990 is a traditional chinese counterpart of GB 2312-1986.
+ * According to the unicode.org tables:
+ * 2146 characters have been changed to their traditional counterpart,
+ * 103 characters have been added, no characters have been removed.
+ * Therefore we use an auxiliary table, which contains only the changes.
+ */
+
+#include "gb12345ext.h"
+
+static int
+gb12345_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  int ret;
+
+  /* The gb12345ext table overrides some entries in the gb2312 table. */
+  /* Try the GB12345 extensions -> Unicode table. */
+  ret = gb12345ext_mbtowc(conv,pwc,s,n);
+  if (ret != RET_ILSEQ)
+    return ret;
+  /* Try the GB2312 -> Unicode table. */
+  ret = gb2312_mbtowc(conv,pwc,s,n);
+  return ret;
+}
+
+static int
+gb12345_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  int ret;
+
+  /* The gb12345ext table overrides some entries in the gb2312 table. */
+  /* Try the Unicode -> GB12345 extensions table. */
+  ret = gb12345ext_wctomb(conv,r,wc,n);
+  if (ret != RET_ILUNI)
+    return ret;
+  /* Try the Unicode -> GB2312 table, and check that the resulting GB2312
+     byte sequence is not overridden by the GB12345 extensions table. */
+  ret = gb2312_wctomb(conv,r,wc,n);
+  if (ret == 2 && gb12345ext_mbtowc(conv,&wc,r,2) == 2)
+    return RET_ILUNI;
+  else
+    return ret;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/gb12345ext.h b/graf2d/win32gdk/gdk/src/iconv/gb12345ext.h
new file mode 100644
index 00000000000..b461ec87d56
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/gb12345ext.h
@@ -0,0 +1,1796 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * GB/T 12345.1990-0 extensions
+ */
+
+static const unsigned short gb12345ext_2uni_page21[12] = {
+  /* 0x21 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x2225,
+};
+static const unsigned short gb12345ext_2uni_page26[85] = {
+  /* 0x26 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfe35,
+  0xfe36, 0xfe39, 0xfe3a, 0xfe3f, 0xfe40, 0xfe3d, 0xfe3e, 0xfe41,
+  0xfe42, 0xfe43, 0xfe44, 0xfffd, 0xfffd, 0xfe3b, 0xfe3c, 0xfe37,
+  0xfe38, 0xfe31, 0xfffd, 0xfe33, 0xfe34,
+};
+static const unsigned short gb12345ext_2uni_page28[32] = {
+  /* 0x28 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x0251, 0x1e3f, 0x0144, 0x0148, 0x01f9, 0x0261,
+};
+static const unsigned short gb12345ext_2uni_page30[6871] = {
+  /* 0x30 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x769a,
+  0xfffd, 0x85f9, 0xfffd, 0xfffd, 0x7919, 0x611b, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x9aaf, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8956,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x58e9, 0xfffd, 0x7f77, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x64fa, 0xfffd, 0x6557, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x9812, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x8fa6, 0x7d46, 0xfffd, 0x5e6b, 0xfffd,
+  0xfffd, 0xfffd, 0x7d81, 0xfffd, 0xfffd, 0xfffd, 0x938a, 0xfffd,
+  0x8b17, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x31 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x98fd, 0x5bf6, 0xfffd, 0x5831,
+  0xfffd, 0xfffd, 0x9b91, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x8f29, 0xfffd, 0x8c9d, 0x92c7, 0xfffd, 0x72fd, 0x5099,
+  0x618a, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x7db3, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x7b46, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7562, 0x6583,
+  0xfffd, 0x5e63, 0xfffd, 0xfffd, 0x9589, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x908a, 0x7de8,
+  0x8cb6, 0xfffd, 0xfffd, 0x8b8a, 0xfffd, 0xfffd, 0x8faf, 0x8fae,
+  0xfffd, 0x6a19, 0xfffd, 0xfffd, 0xfffd, 0x9c49, 0xfffd, 0xfffd,
+  0x765f, 0xfffd, 0xfffd, 0x7015, 0x6ff1, 0x8cd3, 0x64ef, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9905, 0xfffd,
+  /* 0x32 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x64a5, 0x9262, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x9251, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x99c1, 0xfffd, 0xfffd, 0xfffd,
+  0x88dc, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8ca1, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x53c3, 0x8836, 0x6b98,
+  0x615a, 0x6158, 0x71e6, 0x84bc, 0x8259, 0x5009, 0x6ec4, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x53a0, 0xfffd, 0x5074,
+  0xfffd, 0x6e2c, 0x5c64, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8a6b, 0xfffd,
+  0xfffd, 0xfffd, 0x6519, 0x647b, 0x87ec, 0x995e, 0x8b92, 0x7e8f,
+  0x93df, 0x7523, 0x95e1, 0x986b, 0xfffd, 0xfffd,
+  /* 0x33 */
+  0x5834, 0x5617, 0xfffd, 0x9577, 0x511f, 0x8178, 0x5ee0, 0xfffd,
+  0x66a2, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9214, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8eca, 0xfffd, 0xfffd, 0xfffd,
+  0x5fb9, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5875, 0xfffd, 0xfffd,
+  0xfffd, 0x9673, 0xfffd, 0x896f, 0xfffd, 0x7a31, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x61f2, 0xfffd, 0x8aa0, 0xfffd,
+  0xfffd, 0x9a01, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x9072, 0xfffd, 0x99b3, 0xfffd, 0x9f52, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x71be, 0xfffd, 0x885d, 0x87f2, 0xfffd, 0x5bf5,
+  0xfffd, 0xfffd, 0x7587, 0x8e8a, 0xfffd, 0xfffd, 0x7c4c, 0xfffd,
+  0x7da2, 0xfffd, 0x919c, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x92e4, 0x96db, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x34 */
+  0x790e, 0x5132, 0xfffd, 0xfffd, 0x89f8, 0x8655, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x50b3, 0xfffd, 0xfffd, 0xfffd, 0x7621, 0xfffd,
+  0xfffd, 0xfffd, 0x95d6, 0x5275, 0xfffd, 0xfffd, 0xfffd, 0x9318,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7d14, 0xfffd,
+  0xfffd, 0x7dbd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8fad, 0xfffd,
+  0xfffd, 0x8a5e, 0xfffd, 0xfffd, 0x8cdc, 0xfffd, 0x8070, 0xfffd,
+  0xfffd, 0xfffd, 0x5f9e, 0x53e2, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x8ea5, 0xfffd, 0x7ac4, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x932f, 0xfffd, 0x9054, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5e36,
+  0xfffd, 0xfffd, 0x8cb8, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x35 */
+  0xfffd, 0xfffd, 0x64d4, 0xfffd, 0x55ae, 0x9132, 0x64a3, 0x81bd,
+  0xfffd, 0xfffd, 0xfffd, 0x619a, 0xfffd, 0x8a95, 0x5f48, 0xfffd,
+  0x7576, 0x64cb, 0x9ee8, 0x8569, 0x6a94, 0xfffd, 0x6417, 0xfffd,
+  0xfffd, 0x5cf6, 0x79b1, 0x5c0e, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x71c8, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x9127, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x6575,
+  0xfffd, 0xfffd, 0x6ecc, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x905e, 0x7de0, 0x985b, 0xfffd,
+  0xfffd, 0xfffd, 0x9ede, 0xfffd, 0xfffd, 0x588a, 0x96fb, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x6fb1, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x91e3, 0x8abf, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8adc, 0xfffd,
+  /* 0x36 */
+  0xfffd, 0xfffd, 0xfffd, 0x91d8, 0x9802, 0xfffd, 0x9320, 0xfffd,
+  0x8a02, 0xfffd, 0x6771, 0xfffd, 0xfffd, 0xfffd, 0x52d5, 0x68df,
+  0xfffd, 0xfffd, 0x51cd, 0xfffd, 0xfffd, 0xfffd, 0x9b25, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x72a2, 0x7368,
+  0x8b80, 0xfffd, 0xfffd, 0x8ced, 0xfffd, 0x934d, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x935b, 0xfffd, 0x65b7, 0x7dde,
+  0xfffd, 0xfffd, 0x968a, 0x5c0d, 0xfffd, 0x5678, 0xfffd, 0xfffd,
+  0x9813, 0xfffd, 0x920d, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x596a, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x58ae, 0xfffd, 0xfffd, 0x9d5d, 0xfffd, 0x984d, 0x8a1b, 0xfffd,
+  0x60e1, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9913, 0xfffd, 0xfffd,
+  0x5152, 0xfffd, 0x723e, 0x990c, 0xfffd, 0xfffd,
+  /* 0x37 */
+  0x8cb3, 0x767c, 0x7f70, 0xfffd, 0xfffd, 0xfffd, 0x95a5, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x792c, 0x91e9,
+  0xfffd, 0xfffd, 0x7169, 0xfffd, 0xfffd, 0x7bc4, 0x8ca9, 0xfffd,
+  0x98ef, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x8a2a, 0x7d21, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x98db, 0xfffd, 0xfffd, 0x8ab9, 0xfffd, 0xfffd, 0x5ee2, 0xfffd,
+  0x8cbb, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7d1b, 0x58b3,
+  0xfffd, 0xfffd, 0xfffd, 0x596e, 0xfffd, 0xfffd, 0x61a4, 0x7cde,
+  0x8c50, 0xfffd, 0x6953, 0xfffd, 0xfffd, 0x92d2, 0x98a8, 0x760b,
+  0xfffd, 0xfffd, 0x99ae, 0x7e2b, 0x8af7, 0xfffd, 0x9cf3, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x819a, 0xfffd, 0xfffd, 0xfffd, 0x8f3b,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x38 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x64ab, 0x8f14,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x8ce6, 0x5fa9, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x8ca0, 0xfffd, 0x8a03, 0xfffd, 0x5a66, 0x7e1b, 0xfffd,
+  0xfffd, 0xfffd, 0x8a72, 0xfffd, 0xfffd, 0x9223, 0x84cb, 0xfffd,
+  0x5e79, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8d95, 0xfffd,
+  0xfffd, 0xfffd, 0x8d1b, 0x5ca1, 0x525b, 0x92fc, 0xfffd, 0xfffd,
+  0x7db1, 0x5d17, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x93ac, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x64f1, 0xfffd, 0x9d3f, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x95a3, 0xfffd, 0x927b, 0x500b, 0xfffd, 0x7d66,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x39 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9f94,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x978f, 0xfffd, 0xfffd,
+  0x8ca2, 0xfffd, 0x920e, 0xfffd, 0x6e9d, 0xfffd, 0xfffd, 0xfffd,
+  0x69cb, 0x8cfc, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8831, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x9867, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x526e,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x95dc,
+  0xfffd, 0xfffd, 0x89c0, 0xfffd, 0x9928, 0xfffd, 0x6163, 0xfffd,
+  0x8cab, 0xfffd, 0x5ee3, 0xfffd, 0xfffd, 0x898f, 0xfffd, 0xfffd,
+  0x6b78, 0x9f9c, 0x95a8, 0x8ecc, 0xfffd, 0x8a6d, 0xfffd, 0xfffd,
+  0x6ac3, 0xfffd, 0x8cb4, 0x528a, 0x8f25, 0xfffd, 0xfffd, 0x934b,
+  0xfffd, 0x570b, 0xfffd, 0xfffd, 0x904e, 0xfffd,
+  /* 0x3a */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x99ed, 0xfffd,
+  0xfffd, 0xfffd, 0x97d3, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x6f22, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x865f, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x95a1, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9db4, 0x8cc0,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x8f5f, 0xfffd, 0xfffd, 0xfffd, 0x9d3b,
+  0xfffd, 0xfffd, 0xfffd, 0x7d05, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x5f8c, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x58fa,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x3b */
+  0xfffd, 0xfffd, 0xfffd, 0x8b77, 0xfffd, 0x6eec, 0xfffd, 0xfffd,
+  0x5629, 0x83ef, 0xfffd, 0xfffd, 0x756b, 0x5283, 0xfffd, 0x8a71,
+  0xfffd, 0xfffd, 0x61f7, 0xfffd, 0x58de, 0x6b61, 0x74b0, 0xfffd,
+  0x9084, 0x7de9, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x8b0a, 0xfffd, 0x63ee, 0x8f1d, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8cc4, 0x7a62,
+  0x6703, 0x71f4, 0x532f, 0x8af1, 0x8aa8, 0x7e6a, 0x8477, 0xfffd,
+  0xfffd, 0xfffd, 0x6e3e, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x7372, 0xfffd, 0xfffd, 0xfffd, 0x8ca8, 0x798d, 0x64ca, 0xfffd,
+  0xfffd, 0x6a5f, 0xfffd, 0xfffd, 0x7a4d, 0xfffd,
+  /* 0x3c */
+  0xfffd, 0x9951, 0xfffd, 0xfffd, 0x8b4f, 0x9dc4, 0xfffd, 0x7e3e,
+  0x7ddd, 0xfffd, 0x6975, 0xfffd, 0x8f2f, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7d1a, 0x64e0, 0x5e7e,
+  0xfffd, 0xfffd, 0x858a, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x5291, 0xfffd, 0x6fdf, 0xfffd, 0xfffd, 0x8a08, 0x8a18, 0xfffd,
+  0xfffd, 0x969b, 0xfffd, 0x7e7c, 0x7d00, 0xfffd, 0xfffd, 0x593e,
+  0xfffd, 0xfffd, 0xfffd, 0x83a2, 0x9830, 0x8cc8, 0xfffd, 0x9240,
+  0xfffd, 0xfffd, 0x50f9, 0xfffd, 0x99d5, 0xfffd, 0x6bb2, 0x76e3,
+  0x5805, 0xfffd, 0x7b8b, 0x9593, 0xfffd, 0xfffd, 0xfffd, 0x8271,
+  0xfffd, 0x7dd8, 0x7e6d, 0x6aa2, 0xfffd, 0xfffd, 0x9e7c, 0x63c0,
+  0x64bf, 0x7c21, 0x5109, 0xfffd, 0xfffd, 0x85a6, 0x6abb, 0x9452,
+  0x8e10, 0x8ce4, 0x898b, 0x9375, 0xfffd, 0xfffd,
+  /* 0x3d */
+  0xfffd, 0x8266, 0x528d, 0x991e, 0x6f38, 0x6ffa, 0x6f97, 0xfffd,
+  0xfffd, 0xfffd, 0x5c07, 0x6f3f, 0xfffd, 0xfffd, 0x8523, 0x69f3,
+  0x596c, 0x8b1b, 0xfffd, 0x91ac, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x81a0, 0xfffd, 0xfffd, 0x6f86, 0x9a55, 0x5b0c, 0xfffd,
+  0x652a, 0x9278, 0x77ef, 0x50e5, 0xfffd, 0xfffd, 0xfffd, 0x9903,
+  0x7e73, 0x7d5e, 0xfffd, 0xfffd, 0xfffd, 0x8f4e, 0x8f03, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x968e, 0xfffd,
+  0xfffd, 0x7bc0, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x6f54,
+  0x7d50, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x8aa1, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x7dca, 0x9326, 0x50c5, 0x8b39, 0x9032,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x71fc, 0xfffd,
+  /* 0x3e */
+  0x76e1, 0x52c1, 0xfffd, 0xfffd, 0x8396, 0xfffd, 0xfffd, 0x9be8,
+  0xfffd, 0x9a5a, 0xfffd, 0xfffd, 0x7d93, 0xfffd, 0xfffd, 0xfffd,
+  0x9838, 0xfffd, 0xfffd, 0xfffd, 0x93e1, 0x5f91, 0x75d9, 0xfffd,
+  0xfffd, 0x7af6, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7cfe,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x820a, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x99d2, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x8209, 0xfffd, 0xfffd, 0xfffd, 0x64da, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x92f8, 0xfffd, 0xfffd, 0x61fc, 0xfffd, 0x5287, 0xfffd,
+  0x9d51, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7d79, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x89ba, 0xfffd, 0x8a23, 0x7d76,
+  0xfffd, 0xfffd, 0x921e, 0x8ecd, 0xfffd, 0xfffd,
+  /* 0x3f */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x99ff, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x958b, 0xfffd, 0xfffd, 0x51f1, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9846, 0xfffd, 0x6bbb, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8ab2, 0xfffd, 0xfffd,
+  0x58be, 0x61c7, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x6473, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x5eab, 0x8932, 0x8a87, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x584a, 0xfffd, 0x5108, 0xfffd, 0x5bec, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x7926, 0xfffd, 0x66e0, 0xfffd, 0x8667, 0xfffd,
+  0x5dcb, 0x7aba, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x40 */
+  0x994b, 0xfffd, 0x6f70, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x64f4, 0xfffd, 0x95ca, 0xfffd, 0xfffd, 0xfffd, 0x881f, 0x81d8,
+  0xfffd, 0xfffd, 0x840a, 0x4f86, 0x8cf4, 0x85cd, 0xfffd, 0x6b04,
+  0x6514, 0x7c43, 0x95cc, 0x862d, 0x703e, 0x8b95, 0x652c, 0x89bd,
+  0x61f6, 0x7e9c, 0x721b, 0x6feb, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x6488, 0x52de, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x6f87, 0xfffd, 0x6a02, 0xfffd, 0x9433,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x58d8, 0xfffd, 0xfffd, 0x985e,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x7c6c, 0xfffd, 0x96e2, 0x7055, 0xfffd, 0xfffd, 0x88cf, 0x9bc9,
+  0x79ae, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9e97, 0x53b2, 0x52f5,
+  0x792b, 0x6b77, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x41 */
+  0xfffd, 0xfffd, 0xfffd, 0x701d, 0x96b8, 0xfffd, 0xfffd, 0xfffd,
+  0x5006, 0x806f, 0x84ee, 0x9023, 0x942e, 0xfffd, 0x6190, 0x6f23,
+  0x7c3e, 0x6582, 0x81c9, 0x93c8, 0x6200, 0x7149, 0x7df4, 0x7ce7,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5169, 0x8f1b, 0xfffd, 0xfffd,
+  0xfffd, 0x8ad2, 0xfffd, 0xfffd, 0xfffd, 0x7642, 0xfffd, 0xfffd,
+  0x907c, 0xfffd, 0xfffd, 0xfffd, 0x9410, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x7375, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x81e8, 0x9130, 0x9c57, 0xfffd, 0xfffd, 0x8cc3, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x9f61, 0x9234, 0xfffd, 0xfffd, 0xfffd,
+  0x9748, 0xfffd, 0x5dba, 0x9818, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x993e, 0xfffd, 0x5289, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x9f8d, 0x807e, 0x56a8, 0x7c60, 0xfffd,
+  /* 0x42 */
+  0xfffd, 0x58df, 0x650f, 0x96b4, 0x6a13, 0x5a41, 0x645f, 0x7c0d,
+  0xfffd, 0xfffd, 0x8606, 0x76e7, 0x9871, 0x5eec, 0x7210, 0x64c4,
+  0x6ef7, 0x865c, 0x9b6f, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8cc2,
+  0xfffd, 0xfffd, 0xfffd, 0x9332, 0x9678, 0xfffd, 0x9a62, 0xfffd,
+  0x92c1, 0xfffd, 0xfffd, 0xfffd, 0x5c62, 0x7e37, 0x616e, 0xfffd,
+  0xfffd, 0xfffd, 0x6ffe, 0x7dd1, 0x5dd2, 0x6523, 0x5b7f, 0x7064,
+  0xfffd, 0x4e82, 0xfffd, 0xfffd, 0x6384, 0x8f2a, 0x502b, 0x4f96,
+  0x6dea, 0x7db8, 0x8ad6, 0x863f, 0xfffd, 0x7f85, 0x908f, 0x947c,
+  0x7c6e, 0x9a3e, 0xfffd, 0xfffd, 0xfffd, 0x99f1, 0x7d61, 0x5abd,
+  0xfffd, 0x746a, 0x78bc, 0x879e, 0x99ac, 0x99e1, 0xfffd, 0x55ce,
+  0xfffd, 0x8cb7, 0x9ea5, 0x8ce3, 0x9081, 0xfffd, 0x779e, 0x9945,
+  0x883b, 0x6eff, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x43 */
+  0x8b3e, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x9328, 0xfffd, 0xfffd, 0x925a, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x8cbf, 0x9ebd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9382, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9580, 0x60b6, 0x5011, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x9333, 0xfffd, 0x5922, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8b0e, 0x5f4c, 0xfffd, 0xfffd,
+  0x8993, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7dbf,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7dec, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5edf, 0xfffd, 0xfffd, 0x6ec5,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x61ab, 0x95a9, 0xfffd, 0xfffd,
+  0x9cf4, 0x9298, 0xfffd, 0xfffd, 0x8b2c, 0xfffd,
+  /* 0x44 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x8b00, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x755d, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9209, 0xfffd, 0xfffd,
+  0x7d0d, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x96e3, 0xfffd, 0x6493, 0x8166, 0x60f1, 0x9b27, 0xfffd, 0xfffd,
+  0x9912, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x64ec, 0xfffd, 0xfffd, 0x81a9, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x6506, 0xfffd, 0xfffd, 0xfffd, 0x91c0,
+  0x9ce5, 0xfffd, 0xfffd, 0x8076, 0xfffd, 0x5699, 0x9477, 0x93b3,
+  0xfffd, 0xfffd, 0x6ab8, 0x7370, 0xfffd, 0x5be7,
+  /* 0x45 */
+  0x64f0, 0x6fd8, 0xfffd, 0xfffd, 0x9215, 0x7d10, 0x81bf, 0x6fc3,
+  0x8fb2, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x7627, 0xfffd, 0xfffd, 0xfffd, 0x8afe, 0xfffd, 0x6b50, 0x9dd7,
+  0x6bc6, 0xfffd, 0x5614, 0xfffd, 0x6f1a, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x76e4, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x9f90, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x8ce0, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5674, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x9d6c, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x46 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9a19, 0x98c4, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x983b, 0x8ca7, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x860b, 0xfffd, 0xfffd, 0x6191, 0xfffd, 0x8a55,
+  0xfffd, 0xfffd, 0x6f51, 0x9817, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x64b2, 0x92ea, 0x50d5, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x6a38, 0xfffd, 0xfffd, 0xfffd, 0x8b5c, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x81cd, 0x9f4a, 0xfffd, 0xfffd, 0xfffd, 0x9a0e, 0xfffd,
+  0x8c48, 0xfffd, 0xfffd, 0x5553, 0xfffd, 0xfffd, 0xfffd, 0x6c23,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8a16, 0xfffd,
+  /* 0x47 */
+  0xfffd, 0xfffd, 0x727d, 0xfffd, 0x91fa, 0x925b, 0xfffd, 0x9077,
+  0x7c3d, 0xfffd, 0x8b19, 0xfffd, 0xfffd, 0x9322, 0x9257, 0xfffd,
+  0xfffd, 0xfffd, 0x6dfa, 0x8b74, 0x5879, 0xfffd, 0xfffd, 0xfffd,
+  0x69cd, 0x55c6, 0xfffd, 0xfffd, 0x58bb, 0x8594, 0xfffd, 0x6436,
+  0xfffd, 0x936c, 0xfffd, 0xfffd, 0x6a4b, 0xfffd, 0x55ac, 0x50d1,
+  0xfffd, 0xfffd, 0xfffd, 0x7ff9, 0xfffd, 0xfffd, 0x7ac5, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x7aca, 0x6b3d, 0xfffd, 0x89aa, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5be2, 0xfffd, 0xfffd,
+  0x8f15, 0x6c2b, 0x50be, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x9803, 0x8acb, 0x6176, 0x74ca, 0x7aae, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8da8, 0x5340,
+  0xfffd, 0xfffd, 0x8ec0, 0xfffd, 0x9a45, 0xfffd,
+  /* 0x48 */
+  0xfffd, 0xfffd, 0x9f72, 0xfffd, 0xfffd, 0xfffd, 0x9874, 0x6b0a,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x52f8,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9d72, 0xfffd, 0x78ba, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x8b93, 0x9952, 0x64fe, 0x7e5e, 0xfffd, 0x71b1,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x97cc, 0xfffd, 0x8a8d, 0xfffd,
+  0xfffd, 0x7d09, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x69ae, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7d68, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8edf, 0xfffd, 0xfffd, 0xfffd,
+  0x92ed, 0x958f, 0x6f64, 0xfffd, 0xfffd, 0xfffd, 0x7051, 0x85a9,
+  0xfffd, 0x9c13, 0xfffd, 0x8cfd, 0xfffd, 0xfffd,
+  /* 0x49 */
+  0x5098, 0xfffd, 0xfffd, 0xfffd, 0x55aa, 0xfffd, 0x9a37, 0x6383,
+  0xfffd, 0xfffd, 0xfffd, 0x6f80, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x6bba, 0xfffd, 0xfffd, 0x7d17, 0xfffd, 0xfffd, 0xfffd, 0x7be9,
+  0x66ec, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x9583, 0x965d, 0xfffd, 0x8d0d, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x7e55, 0xfffd, 0x50b7, 0xfffd, 0x8cde, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x71d2, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x7d39, 0xfffd, 0x8cd2, 0xfffd, 0xfffd,
+  0x6368, 0xfffd, 0x651d, 0xfffd, 0x61fe, 0xfffd, 0xfffd, 0x8a2d,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7d33,
+  0xfffd, 0xfffd, 0x5be9, 0x5b38, 0xfffd, 0x814e, 0xfffd, 0x6ef2,
+  0x8072, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7e69,
+  /* 0x4a */
+  0xfffd, 0xfffd, 0xfffd, 0x52dd, 0x8056, 0x5e2b, 0xfffd, 0x7345,
+  0xfffd, 0x6fd5, 0x8a69, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x6642, 0xfffd, 0xfffd, 0x8755, 0x5be6, 0x8b58, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x99db, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x52e2, 0xfffd, 0xfffd,
+  0xfffd, 0x9069, 0xfffd, 0xfffd, 0x91cb, 0x98fe, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x8996, 0x8a66, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x58fd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7378, 0xfffd, 0x6a1e,
+  0xfffd, 0xfffd, 0xfffd, 0x8f38, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x66f8, 0x8d16, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x5c6c, 0x8853, 0xfffd, 0x6a39, 0xfffd,
+  0xfffd, 0x7aea, 0xfffd, 0xfffd, 0x6578, 0xfffd,
+  /* 0x4b */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5e25, 0xfffd,
+  0xfffd, 0xfffd, 0x96d9, 0xfffd, 0x8ab0, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x9806, 0xfffd, 0x8aac, 0x78a9, 0xfffd, 0x720d,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7d72, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x98fc, 0xfffd,
+  0x9b06, 0x8073, 0x616b, 0x980c, 0xfffd, 0xfffd, 0x8a1f, 0x8aa6,
+  0xfffd, 0xfffd, 0x64fb, 0xfffd, 0x8607, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8a34, 0x8085,
+  0xfffd, 0xfffd, 0xfffd, 0x96d6, 0xfffd, 0x96a8, 0x7d8f, 0xfffd,
+  0xfffd, 0x6b72, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5b6b, 0x640d,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7e2e, 0x7463, 0xfffd, 0x9396,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x4c */
+  0x737a, 0x64bb, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x81fa,
+  0xfffd, 0xfffd, 0xfffd, 0x614b, 0xfffd, 0xfffd, 0x6524, 0x8caa,
+  0x7671, 0x7058, 0x58c7, 0xfffd, 0xfffd, 0xfffd, 0x8b5a, 0x8ac7,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5606, 0xfffd, 0x6e6f,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x71d9, 0xfffd, 0x6fe4, 0xfffd, 0x7e27,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8a0e, 0xfffd, 0xfffd,
+  0xfffd, 0x9a30, 0xfffd, 0x8b04, 0xfffd, 0xfffd, 0xfffd, 0x92bb,
+  0xfffd, 0x984c, 0xfffd, 0xfffd, 0x9ad4, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x689d, 0xfffd, 0xfffd, 0xfffd,
+  0x8cbc, 0x9435, 0xfffd, 0x5ef3, 0x807d, 0x70f4,
+  /* 0x4d */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9285, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x7d71, 0xfffd, 0xfffd, 0xfffd, 0x982d, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x5716, 0xfffd, 0xfffd, 0x5857, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5718, 0xfffd, 0x983d, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x9d15, 0xfffd, 0x99b1, 0x99dd, 0x6a62, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7aaa, 0xfffd, 0xfffd, 0x896a,
+  0xfffd, 0xfffd, 0xfffd, 0x5f4e, 0x7063, 0xfffd, 0x9811, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x842c, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7db2,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x4e */
+  0xfffd, 0xfffd, 0xfffd, 0x97cb, 0x9055, 0xfffd, 0x570d, 0xfffd,
+  0xfffd, 0x7232, 0x6ff0, 0x7dad, 0x8466, 0xfffd, 0xfffd, 0x5049,
+  0x50de, 0xfffd, 0x7def, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8b02, 0xfffd, 0xfffd, 0x885b,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x805e, 0x7d0b, 0xfffd, 0x7a69,
+  0xfffd, 0x554f, 0xfffd, 0xfffd, 0xfffd, 0x64be, 0x8778, 0x6e26,
+  0x7aa9, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x55da,
+  0x93a2, 0x70cf, 0xfffd, 0x8aa3, 0xfffd, 0x7121, 0x856a, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x5862, 0xfffd, 0x9727, 0xfffd, 0xfffd, 0xfffd,
+  0x52d9, 0xfffd, 0x8aa4, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x932b, 0x72a7,
+  /* 0x4f */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8972, 0xfffd, 0x7fd2,
+  0xfffd, 0xfffd, 0x9291, 0xfffd, 0xfffd, 0xfffd, 0x6232, 0x7d30,
+  0xfffd, 0x8766, 0xfffd, 0xfffd, 0x8f44, 0xfffd, 0x5cfd, 0x4fe0,
+  0x72f9, 0xfffd, 0xfffd, 0xfffd, 0x5687, 0xfffd, 0x9341, 0xfffd,
+  0xfffd, 0x9bae, 0x7e96, 0xfffd, 0x8ce2, 0x929c, 0xfffd, 0x9591,
+  0xfffd, 0xfffd, 0xfffd, 0x986f, 0x96aa, 0x73fe, 0x737b, 0x7e23,
+  0xfffd, 0x9921, 0xfffd, 0x61b2, 0xfffd, 0xfffd, 0x7dab, 0xfffd,
+  0xfffd, 0x9472, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9109, 0xfffd,
+  0xfffd, 0x8a73, 0xfffd, 0x97ff, 0xfffd, 0x9805, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x856d, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x56c2, 0x92b7, 0xfffd, 0xfffd, 0xfffd, 0x66c9,
+  /* 0x50 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x562f, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5354, 0x633e, 0xfffd, 0xfffd,
+  0xfffd, 0x8105, 0x8ae7, 0x5beb, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x7009, 0x8b1d, 0xfffd, 0xfffd, 0xfffd, 0x92c5, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x91c1, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x8208, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x92b9, 0xfffd, 0xfffd, 0x7d89, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x9808, 0xfffd, 0x8a31, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7dd2, 0x7e8c,
+  0x8ed2, 0xfffd, 0xfffd, 0x61f8, 0xfffd, 0xfffd,
+  /* 0x51 */
+  0x9078, 0x766c, 0xfffd, 0x7d62, 0xfffd, 0xfffd, 0x5b78, 0xfffd,
+  0xfffd, 0xfffd, 0x52db, 0xfffd, 0xfffd, 0xfffd, 0x8a62, 0x5c0b,
+  0x99b4, 0xfffd, 0xfffd, 0xfffd, 0x8a13, 0x8a0a, 0x905c, 0xfffd,
+  0x58d3, 0xfffd, 0x9d09, 0x9d28, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x555e, 0x4e9e, 0x8a1d,
+  0xfffd, 0xfffd, 0x95b9, 0xfffd, 0xfffd, 0x9e7d, 0x56b4, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9854, 0x95bb, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8277, 0xfffd, 0xfffd,
+  0x53ad, 0x786f, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8afa,
+  0x9a57, 0xfffd, 0xfffd, 0x9d26, 0xfffd, 0x694a, 0x63da, 0xfffd,
+  0x760d, 0xfffd, 0xfffd, 0x967d, 0xfffd, 0xfffd, 0x7662, 0x990a,
+  0x6a23, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x52 */
+  0xfffd, 0x582f, 0xfffd, 0xfffd, 0x8b21, 0xfffd, 0xfffd, 0xfffd,
+  0x85e5, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x723a, 0xfffd,
+  0xfffd, 0xfffd, 0x9801, 0xfffd, 0x696d, 0x8449, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x91ab, 0xfffd, 0x92a5, 0xfffd,
+  0xfffd, 0xfffd, 0x9824, 0xfffd, 0x907a, 0xfffd, 0x5100, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x87fb, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x85dd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x5104, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x61b6, 0x7fa9, 0xfffd, 0xfffd, 0x8a63,
+  0x8b70, 0x8abc, 0x8b6f, 0xfffd, 0xfffd, 0xfffd, 0x7e79, 0xfffd,
+  0x852d, 0xfffd, 0xfffd, 0xfffd, 0x9670, 0xfffd, 0xfffd, 0x9280,
+  0xfffd, 0xfffd, 0x98f2, 0xfffd, 0xfffd, 0x96b1,
+  /* 0x53 */
+  0xfffd, 0xfffd, 0x6afb, 0x5b30, 0x9df9, 0x61c9, 0x7e93, 0x7469,
+  0x87a2, 0x71df, 0x7192, 0x8805, 0xfffd, 0x8d0f, 0xfffd, 0xfffd,
+  0x7a4e, 0xfffd, 0xfffd, 0x55b2, 0x64c1, 0x50ad, 0xfffd, 0x7670,
+  0xfffd, 0xfffd, 0x8e34, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x512a, 0xfffd, 0x6182, 0xfffd,
+  0xfffd, 0x90f5, 0x923e, 0x7336, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8a98, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8f3f, 0x9918,
+  0xfffd, 0xfffd, 0x9b5a, 0xfffd, 0xfffd, 0x6f01, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x8207, 0x5dbc, 0xfffd, 0xfffd, 0x8a9e, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x9b31, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x7344, 0xfffd, 0x8b7d,
+  /* 0x54 */
+  0xfffd, 0xfffd, 0xfffd, 0x9810, 0xfffd, 0x99ad, 0x9d1b, 0x6df5,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8f45, 0x5712,
+  0x54e1, 0x5713, 0xfffd, 0xfffd, 0x7de3, 0x9060, 0xfffd, 0x9858,
+  0xfffd, 0xfffd, 0xfffd, 0x7d04, 0xfffd, 0x8e8d, 0x9470, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x95b2, 0xfffd, 0x96f2, 0x9116, 0xfffd,
+  0x9695, 0xfffd, 0x904b, 0x85f4, 0x9196, 0x6688, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x96dc, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8f09,
+  0xfffd, 0xfffd, 0xfffd, 0x6522, 0x66ab, 0x8d0a, 0x8d1c, 0x81df,
+  0xfffd, 0xfffd, 0xfffd, 0x947f, 0xfffd, 0x68d7, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7ac8, 0xfffd, 0x8cac,
+  0x64c7, 0x5247, 0x6fa4, 0x8cca, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x8d08, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8ecb,
+  /* 0x55 */
+  0x9358, 0x9598, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x8a50, 0xfffd, 0x9f4b, 0xfffd, 0xfffd, 0x50b5, 0xfffd, 0xfffd,
+  0x6c08, 0xfffd, 0xfffd, 0xfffd, 0x76de, 0x65ac, 0x8f3e, 0x5d84,
+  0xfffd, 0xfffd, 0x68e7, 0xfffd, 0x6230, 0xfffd, 0xfffd, 0x7dbb,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5f35, 0xfffd, 0x6f32, 0xfffd,
+  0xfffd, 0x5e33, 0x8cec, 0xfffd, 0x8139, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x8d99, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x87c4, 0x8f4d, 0xfffd, 0x937a,
+  0xfffd, 0x9019, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x8c9e, 0x91dd, 0x5075, 0xfffd, 0xfffd, 0x8a3a, 0xfffd,
+  0xfffd, 0x93ae, 0x9663, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x56 */
+  0x5e40, 0x7665, 0x912d, 0x8b49, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7e54, 0x8077,
+  0xfffd, 0xfffd, 0xfffd, 0x57f7, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x8879, 0xfffd, 0x7d19, 0xfffd, 0x646f, 0x64f2,
+  0xfffd, 0xfffd, 0xfffd, 0x5e5f, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x8cea, 0xfffd, 0xfffd, 0x6eef, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x9418, 0xfffd, 0x7d42, 0x7a2e, 0x816b, 0xfffd,
+  0xfffd, 0x8846, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8b05, 0xfffd,
+  0x8ef8, 0xfffd, 0xfffd, 0xfffd, 0x76ba, 0xfffd, 0x665d, 0x9a5f,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8af8, 0x8a85, 0xfffd,
+  0xfffd, 0x71ed, 0xfffd, 0xfffd, 0x77da, 0x56d1, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x8caf, 0x9444, 0x7bc9,
+  /* 0x57 */
+  0xfffd, 0xfffd, 0xfffd, 0x99d0, 0xfffd, 0xfffd, 0xfffd, 0x5c08,
+  0x78da, 0x8f49, 0xfffd, 0x8cfa, 0xfffd, 0x6a01, 0x838a, 0x88dd,
+  0x599d, 0xfffd, 0x58ef, 0x72c0, 0xfffd, 0x9310, 0xfffd, 0x8d05,
+  0x589c, 0x7db4, 0x8ac4, 0x6e96, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x6fc1, 0xfffd,
+  0xfffd, 0x8cc7, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x6f2c, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x7d9c, 0x7e3d, 0x7e31, 0x9112, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8a5b, 0xfffd,
+  0x7d44, 0x947d, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x58 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x55c7, 0xfffd, 0xfffd, 0x5399, 0xfffd,
+  0x53b4, 0xfffd, 0xfffd, 0x9768, 0x8d0b, 0xfffd, 0xfffd, 0x532d,
+  0x5331, 0xfffd, 0x8cfe, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x5244, 0xfffd, 0x528c, 0x5274, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x50b4, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5000, 0x5096, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x59 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5115, 0xfffd, 0x5102, 0xfffd,
+  0x5114, 0x513c, 0x5137, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x50e8, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x50c2, 0x513b, 0x5110, 0x513a,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x50c9, 0xfffd, 0xfffd, 0xfffd,
+  0x7cf4, 0xfffd, 0xfffd, 0x9ecc, 0xfffd, 0x56c5, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x9cec, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x893b, 0x81e0, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x5a */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8a01, 0x8a10, 0x8a0c, 0x8a15,
+  0x8b33, 0x8a4e, 0x8a25, 0x8a41, 0x8a36, 0x8a46, 0x8a54, 0x8a58,
+  0x8a52, 0x8a86, 0x8a84, 0x8a7f, 0x8a70, 0x8a7c, 0x8a75, 0x8a6c,
+  0x8a6e, 0x8acd, 0x8ae2, 0x8a61, 0x8a9a, 0x8aa5, 0x8a91, 0x8a92,
+  0x8acf, 0x8ad1, 0x8ac9, 0x8adb, 0x8ad7, 0x8ac2, 0x8ab6, 0x8af6,
+  0x8aeb, 0x8b14, 0x8b01, 0x8ae4, 0x8aed, 0x8afc, 0x8af3, 0x8ae6,
+  0x8aee, 0x8ade, 0x8b28, 0x8b9c, 0x8b16, 0x8b1a, 0x8b10, 0x8b2b,
+  0x8b2d, 0x8b56, 0x8b59, 0x8b4e, 0x8b9e, 0x8b6b, 0x8b96, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x9658, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x913a, 0xfffd,
+  0x9114, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9134,
+  /* 0x5b */
+  0xfffd, 0xfffd, 0x90df, 0xfffd, 0xfffd, 0x9136, 0xfffd, 0xfffd,
+  0x9106, 0x9148, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x82bb, 0xfffd, 0x52f1, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5df0, 0xfffd,
+  0x580a, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x58d9, 0xfffd, 0xfffd, 0x58e2, 0xfffd, 0xfffd,
+  0xfffd, 0x58e0, 0xfffd, 0x58da, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x57e1, 0xfffd, 0xfffd, 0x584f, 0xfffd, 0xfffd,
+  0x5816, 0xfffd, 0xfffd, 0xfffd, 0x5852, 0x581d, 0x5864, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x5c */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x858c, 0xfffd, 0xfffd, 0x8553, 0xfffd,
+  0xfffd, 0x85f6, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x83a7,
+  0x8407, 0x84ef, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x82e7, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8622, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8526,
+  0xfffd, 0xfffd, 0x584b, 0x7162, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x8558, 0x84fd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x854e, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8588, 0xfffd, 0xfffd,
+  0x85ba, 0xfffd, 0xfffd, 0xfffd, 0x7296, 0x6ece,
+  /* 0x5d */
+  0x8541, 0xfffd, 0x85ce, 0x8552, 0x84c0, 0x8452, 0x8464, 0xfffd,
+  0xfffd, 0x8494, 0x8435, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x859f, 0xfffd, 0xfffd, 0x8555, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x9daf, 0x8493, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x7e08, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x8546, 0xfffd, 0xfffd, 0x8562, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x851e, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x9a40, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x863a, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x93a3, 0x8577, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x861e, 0xfffd, 0x85fa,
+  /* 0x5e */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8604, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x85ea, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x861a, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5969, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5c37, 0xfffd,
+  0x636b, 0x6476, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x649f,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x6451, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x645c,
+  0xfffd, 0xfffd, 0xfffd, 0x64b3, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x6504, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x6516, 0xfffd, 0xfffd,
+  /* 0x5f */
+  0xfffd, 0x64f7, 0x64fc, 0xfffd, 0x651b, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x5630, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x5638, 0x56c8, 0xfffd, 0x56a6, 0xfffd,
+  0xfffd, 0x5504, 0x54bc, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x5680, 0xfffd, 0xfffd, 0xfffd, 0x565d,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5660, 0xfffd, 0xfffd, 0x5635,
+  0x55f6, 0xfffd, 0xfffd, 0x5666, 0xfffd, 0xfffd, 0xfffd, 0x5672,
+  0xfffd, 0x568c, 0xfffd, 0xfffd, 0xfffd, 0x5665, 0xfffd, 0xfffd,
+  0x561c, 0xfffd, 0x562e, 0xfffd, 0xfffd, 0xfffd, 0x55e9, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5616, 0xfffd, 0xfffd, 0xfffd,
+  0x56c0, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x60 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x560d, 0x56b3, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x56c1, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x566f,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8f61, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x56b6, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5695,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5707,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5e43,
+  0xfffd, 0xfffd, 0xfffd, 0x5e6c, 0x5e58, 0x5e57,
+  /* 0x61 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x5d87, 0xfffd, 0x5cf4, 0xfffd, 0xfffd, 0x5d50,
+  0xfffd, 0xfffd, 0xfffd, 0x5d2c, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x5da7, 0xfffd, 0x5da0, 0xfffd, 0xfffd, 0x5d97,
+  0x5d0d, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x5db8, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5d81,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x5dd4, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x540e, 0x5fa0, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7377, 0x7341, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x736a, 0xfffd, 0x733b,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x736b, 0xfffd,
+  /* 0x62 */
+  0xfffd, 0xfffd, 0xfffd, 0x7380, 0xfffd, 0xfffd, 0xfffd, 0x737c,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x98e0, 0x9933, 0x98e9, 0x993c, 0x98ea, 0x98eb,
+  0x98ed, 0x98f4, 0x9909, 0x9911, 0x4f59, 0x991b, 0x9937, 0x993f,
+  0x9943, 0x9948, 0x9949, 0x994a, 0x994c, 0x9962, 0xfffd, 0x5ee1,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x8ce1, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x61fa, 0x61ae, 0xfffd, 0x616a, 0xfffd, 0xfffd,
+  0x613e, 0x60b5, 0x6134, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x61cc,
+  0xfffd, 0x615f, 0x61e8, 0x60fb, 0x6137, 0xfffd,
+  /* 0x63 */
+  0xfffd, 0x60f2, 0xfffd, 0xfffd, 0x6173, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x611c, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x6192, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9582, 0x9586, 0x95c8, 0x958e,
+  0x9594, 0x958c, 0x95e5, 0x95ad, 0x95ab, 0x9b2e, 0x95ac, 0x95be,
+  0x95b6, 0x9b29, 0x95bf, 0x95bd, 0x95bc, 0x95c3, 0x95cb, 0x95d4,
+  0x95d0, 0x95d5, 0x95de, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x7043, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x6f59, 0xfffd, 0xfffd, 0xfffd,
+  0x7027, 0x7018, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x6ffc,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x6d87,
+  /* 0x64 */
+  0xfffd, 0xfffd, 0xfffd, 0x6d79, 0x6e5e, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x6fae, 0xfffd, 0xfffd, 0xfffd, 0x700f, 0x6ef8,
+  0x6f6f, 0xfffd, 0xfffd, 0xfffd, 0x6df6, 0x6f7f, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x7006, 0xfffd, 0xfffd, 0x6fa0, 0xfffd, 0xfffd, 0xfffd,
+  0x700b, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x7067, 0xfffd, 0xfffd, 0x7044, 0xfffd, 0x7005, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x6f77, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x7020, 0x701f, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x7032, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7028,
+  /* 0x65 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x705d,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x9a2b, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9087, 0xfffd,
+  0x9015, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9090, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5c68,
+  0xfffd, 0x5f33, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x5af5, 0x5ad7, 0xfffd,
+  /* 0x66 */
+  0xfffd, 0xfffd, 0x5b00, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x5a6d, 0x5b08, 0xfffd, 0x5b4c, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x5aa7, 0x5afb, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5b0b, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x5b21,
+  0x5b2a, 0xfffd, 0xfffd, 0xfffd, 0x5b19, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x99d4,
+  0x99df, 0x99d9, 0x9a36, 0x9a5b, 0x99d1, 0x99d8, 0x9a4d, 0x9a4a,
+  0x99e2, 0x9a6a, 0x9a0f, 0x9a0d, 0x9a05, 0x9a42, 0x9a2d, 0x9a16,
+  0x9a41, 0x9a2e, 0x9a38, 0x9a43, 0x9a44, 0x9a4f, 0x9a65, 0x9a64,
+  0x7cf9, 0x7d06, 0x7d02, 0x7d07, 0x7d08, 0x7e8a,
+  /* 0x67 */
+  0x7d1c, 0x7d15, 0x7d13, 0x7d3a, 0x7d32, 0x7d31, 0x7e10, 0x7d3c,
+  0x7d40, 0x7d3f, 0x7d5d, 0x7d4e, 0x7d73, 0x7d86, 0x7d83, 0x7d88,
+  0x7dbe, 0x7dba, 0x7dcb, 0x7dd4, 0x7dc4, 0x7d9e, 0x7dac, 0x7db9,
+  0x7da3, 0x7db0, 0x7dc7, 0x7dd9, 0x7dd7, 0x7df9, 0x7df2, 0x7e62,
+  0x7de6, 0x7df6, 0x7df1, 0x7e0b, 0x7de1, 0x7e09, 0x7e1d, 0x7e1f,
+  0x7e1e, 0x7e2d, 0x7e0a, 0x7e11, 0x7e7d, 0x7e39, 0x7e35, 0x7e32,
+  0x7e46, 0x7e45, 0x7e88, 0x7e5a, 0x7e52, 0x7e6e, 0x7e7e, 0x7e70,
+  0x7e6f, 0x7e98, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x74a3, 0x744b, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x74cf, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x980a, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x74bd, 0x743f, 0x7489, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x68 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x74a6,
+  0xfffd, 0xfffd, 0xfffd, 0x74d4, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x74da, 0xfffd, 0x97d9,
+  0x97de, 0x97dc, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x69aa, 0x6aea,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x6898, 0xfffd, 0x68d6, 0x6a05,
+  0x689f, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x6adb, 0xfffd, 0x6af3,
+  0xfffd, 0xfffd, 0x6ae8, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x6adf, 0xfffd, 0x6a89, 0xfffd,
+  0xfffd, 0x690f, 0x6a48, 0xfffd, 0x6968, 0xfffd, 0x69bf, 0xfffd,
+  0xfffd, 0xfffd, 0x6a3a, 0xfffd, 0x6a9c, 0xfffd, 0x6b12, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x6b1e, 0xfffd, 0xfffd, 0x6add, 0x69e7, 0xfffd,
+  /* 0x69 */
+  0x6b0f, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x6b16, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x6aec, 0x6ada, 0xfffd, 0x6af8, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x6ab3, 0xfffd, 0x6ae7, 0xfffd, 0xfffd,
+  0x6aa3, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x6ad3, 0xfffd, 0xfffd,
+  0xfffd, 0x6ade, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x6ba4, 0xfffd, 0x6b9e, 0x6bae, 0xfffd,
+  0x6bab, 0xfffd, 0x6baf, 0xfffd, 0x8ed4, 0x8edb, 0x8ef2, 0x8efb,
+  0x8f64, 0x8ef9, 0x8efc, 0x8eeb, 0x8ee4, 0x8f62, 0x8efa, 0x8efe,
+  0x8f0a, 0x8f07, 0x8f05, 0x8f12, 0x8f26, 0x8f1e,
+  /* 0x6a */
+  0x8f1f, 0x8f1c, 0x8f33, 0x8f46, 0x8f54, 0xfffd, 0x6214, 0x6227,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x750c, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x66c7, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x66c4, 0xfffd, 0xfffd, 0x6689, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x66d6, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x8cc1, 0x8cb0, 0x8cba, 0x8cbd, 0x8d04, 0x8cb2, 0x8cc5,
+  0x8d10, 0x8cd1, 0x8cda, 0x8cd5, 0x8ceb, 0x8ce7, 0x8cfb, 0x8998,
+  0x89ac, 0x89a1, 0x89bf, 0x89a6, 0x89af, 0x89b2, 0x89b7, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x6b */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x6bff, 0xfffd,
+  0xfffd, 0x6c0c, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x6c2c, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x7258, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x6727, 0x8156, 0xfffd, 0x81da, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x811b, 0xfffd, 0xfffd,
+  0xfffd, 0x81be, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x8161, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x81cf, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x6c */
+  0xfffd, 0xfffd, 0x6b5f, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x98ae, 0x98af, 0x98b6, 0x98bc, 0x98c6, 0x98c8, 0xfffd, 0xfffd,
+  0x8f42, 0xfffd, 0xfffd, 0x9f4f, 0x6595, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x716c, 0x7152, 0xfffd,
+  0x7197, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x71c1, 0xfffd,
+  0xfffd, 0xfffd, 0x71dc, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x71fe, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x79b0, 0xfffd, 0xfffd, 0x798e, 0xfffd, 0xfffd, 0x79aa,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x6d */
+  0x61df, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x6164,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x61e3, 0x6207,
+  0xfffd, 0xfffd, 0xfffd, 0x6fa9, 0xfffd, 0x78ef, 0xfffd, 0x78ad,
+  0xfffd, 0x7868, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x78b8, 0xfffd,
+  0xfffd, 0x792a, 0x7931, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x7864, 0x78fd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x78e7, 0xfffd, 0xfffd, 0xfffd, 0x78e3, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9f95,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7798, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x775e, 0x77bc, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x6e */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x7f86, 0xfffd, 0xfffd, 0x7f88, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x91d2, 0x91d3, 0x91d4, 0x91d9, 0x91d7,
+  0x91d5, 0x91f7, 0x91e7, 0x91e4, 0x9346, 0x91f5, 0x91f9, 0x9208,
+  0x9226, 0x9245, 0x9211, 0x9210, 0x9201, 0x9227, 0x9204, 0x9225,
+  0x9200, 0x923a, 0x9266, 0x9237, 0x9233, 0x9255, 0x923d, 0x9238,
+  0x925e, 0x926c, 0x926d, 0x923f, 0x9460, 0x9230, 0x9249, 0x9248,
+  0x924d, 0x922e, 0x9239, 0x9438, 0x92ac, 0x92a0, 0x927a, 0x92aa,
+  0x92ee, 0x92cf, 0x9403, 0x92e3, 0x943a, 0x92b1, 0x92a6, 0x93a7,
+  0x9296, 0x92cc, 0x92a9, 0x93f5, 0x9293, 0x927f,
+  /* 0x6f */
+  0x93a9, 0x929a, 0x931a, 0x92ab, 0x9283, 0x940b, 0x92a8, 0x92a3,
+  0x9412, 0x9338, 0x92f1, 0x93d7, 0x92e5, 0x92f0, 0x92ef, 0x92e8,
+  0x92bc, 0x92dd, 0x92f6, 0x9426, 0x9427, 0x92c3, 0x92df, 0x92e6,
+  0x9312, 0x9306, 0x9369, 0x931b, 0x9340, 0x9301, 0x9315, 0x932e,
+  0x9343, 0x9307, 0x9308, 0x931f, 0x9319, 0x9365, 0x9347, 0x9376,
+  0x9354, 0x9364, 0x93aa, 0x9370, 0x9384, 0x93e4, 0x93d8, 0x9428,
+  0x9387, 0x93cc, 0x9398, 0x93b8, 0x93bf, 0x93a6, 0x93b0, 0x93b5,
+  0x944c, 0x93e2, 0x93dc, 0x93dd, 0x93cd, 0x93de, 0x93c3, 0x93c7,
+  0x93d1, 0x9414, 0x941d, 0x93f7, 0x9465, 0x9413, 0x946d, 0x9420,
+  0x9479, 0x93f9, 0x9419, 0x944a, 0x9432, 0x943f, 0x9454, 0x9463,
+  0x937e, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x70 */
+  0xfffd, 0xfffd, 0x7a61, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9ce9, 0x9cf6,
+  0x9d07, 0x9d06, 0x9d23, 0x9d87, 0x9e15, 0x9d1d, 0x9d1f, 0x9de5,
+  0x9d2f, 0x9dd9, 0x9d30, 0x9d42, 0x9e1e, 0x9d53, 0x9e1d, 0x9d60,
+  0x9d52, 0x9df3, 0x9d5c, 0x9d61, 0x9d93, 0x9d6a, 0x9d6f, 0x9d89,
+  0x9d98, 0x9d9a, 0x9dc0, 0x9da5, 0x9da9, 0x9dc2, 0x9dbc, 0x9e1a,
+  0x9dd3, 0x9dda, 0x9def, 0x9de6, 0x9df2, 0x9df8, 0x9e0c, 0x9dfa,
+  0x9e1b, 0xfffd, 0xfffd, 0x7664, 0x7658, 0xfffd, 0x7667, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x7602, 0xfffd, 0xfffd, 0x7646, 0xfffd, 0xfffd, 0x7647, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7649, 0xfffd,
+  0x761e, 0xfffd, 0xfffd, 0x763b, 0xfffd, 0xfffd,
+  /* 0x71 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x766d,
+  0xfffd, 0xfffd, 0x766e, 0xfffd, 0xfffd, 0x7669, 0xfffd, 0xfffd,
+  0xfffd, 0x7672, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x7ac7, 0xfffd, 0xfffd, 0xfffd, 0x7ab6,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x8960, 0xfffd, 0xfffd, 0xfffd, 0x8933, 0xfffd, 0x895d, 0x8947,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x8938, 0xfffd, 0x8964, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x76b8, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x802e, 0xfffd, 0xfffd, 0x802c, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8079, 0xfffd,
+  0x8075, 0xfffd, 0xfffd, 0x9807, 0x980e, 0x980f,
+  /* 0x72 */
+  0x9821, 0x981c, 0x6f41, 0x9826, 0x9837, 0x984e, 0x9853, 0x9873,
+  0x9862, 0x9859, 0x9865, 0x986c, 0x9870, 0xfffd, 0xfffd, 0xfffd,
+  0x87e3, 0x8806, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x8706, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x8823, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x87f6, 0xfffd, 0xfffd, 0x86fa, 0x87ef, 0xfffd, 0x8784, 0xfffd,
+  0xfffd, 0xfffd, 0x8810, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x87c8, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8811, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x87bb, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x87ce, 0xfffd,
+  /* 0x73 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7f4c, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7be4, 0xfffd, 0x7b67,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7c69, 0xfffd, 0xfffd,
+  0x7bf3, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7c00, 0x7bcb, 0xfffd, 0xfffd,
+  0xfffd, 0x7c5c, 0xfffd, 0x7c1e, 0xfffd, 0xfffd, 0x7c2b, 0xfffd,
+  0x7c23, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7c6a, 0xfffd,
+  /* 0x74 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7c5f, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8264, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x826b, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x88ca, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7fa5, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7cf2, 0x7cf6,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x7cdd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x7e36, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9ea9, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8db2, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x75 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x91c5, 0x91c3, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x9e7a, 0x8e89, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x8e4c, 0xfffd, 0xfffd, 0xfffd, 0x8e92,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8e7a, 0x8e55, 0xfffd,
+  0x8e9a, 0x8e8b, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x8e93, 0xfffd, 0xfffd, 0x8e91, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8ea1, 0x8e63, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8eaa, 0xfffd,
+  0xfffd, 0x8ea6, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x89f4, 0xfffd, 0xfffd,
+  /* 0x76 */
+  0xfffd, 0xfffd, 0x89f6, 0xfffd, 0xfffd, 0x975a, 0xfffd, 0x9742,
+  0xfffd, 0xfffd, 0x973d, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9744,
+  0xfffd, 0xfffd, 0x9f54, 0x9f5f, 0x9f59, 0x9f60, 0x9f5c, 0x9f66,
+  0x9f6c, 0x9f6a, 0x9f77, 0x9efd, 0x9eff, 0x9f09, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x8b8e, 0xfffd, 0x947e, 0xfffd,
+  0x93e8, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9b77, 0x9b74,
+  0x9b81, 0x9b83, 0x9b8e, 0x9c78, 0x7a4c, 0x9b92, 0x9c5f, 0x9b90,
+  0x9bad, 0x9b9a, 0x9baa, 0x9b9e, 0x9c6d, 0x9bab, 0x9b9d, 0x9c58,
+  0x9bc1, 0x9c7a, 0x9c31, 0x9c39, 0x9c23, 0x9c37, 0x9bc0, 0x9bca,
+  0x9bc7, 0x9bfd, 0x9bd6, 0x9bea, 0x9beb, 0x9be1, 0x9be4, 0x9be7,
+  0x9bdd, 0x9be2, 0x9bf0, 0x9bdb, 0x9bf4, 0x9bd4, 0x9c5d, 0x9c08,
+  0x9c10, 0x9c0d, 0x9c12, 0x9c09, 0x9bff, 0x9c20,
+  /* 0x77 */
+  0x9c32, 0x9c2d, 0x9c28, 0x9c25, 0x9c29, 0x9c33, 0x9c3e, 0x9c48,
+  0x9c3b, 0x9c35, 0x9c45, 0x9c56, 0x9c54, 0x9c52, 0x9c67, 0xfffd,
+  0xfffd, 0x97c3, 0x97bd, 0xfffd, 0x97c9, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9dbb, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x9acf, 0xfffd, 0x9ad6, 0x9ad5, 0xfffd, 0xfffd,
+  0xfffd, 0x9b58, 0x9b4e, 0xfffd, 0xfffd, 0xfffd, 0x9957, 0x995c,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x9b22, 0xfffd, 0xfffd,
+  0x4e48, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x9ef7, 0xfffd, 0xfffd, 0x9ef2, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x78 */
+  0x896c, 0x95c6, 0x9336, 0x5f46, 0x8514, 0x7e94, 0x5382, 0x51b2,
+  0x4e11, 0x9f63, 0x5679, 0x515a, 0x6dc0, 0x9f15, 0x6597, 0x5641,
+  0x9aee, 0x8303, 0x4e30, 0x8907, 0x5e72, 0x7a40, 0x98b3, 0x5e7f,
+  0x95a4, 0x9b0d, 0x5212, 0x8ff4, 0x5f59, 0x7a6b, 0x98e2, 0x51e0,
+  0x50a2, 0x4ef7, 0x8350, 0x8591, 0x5118, 0x636e, 0x6372, 0x524b,
+  0x5938, 0x774f, 0x8721, 0x814a, 0x7e8d, 0x91cc, 0x66c6, 0x5e18,
+  0x77ad, 0x9e75, 0x56c9, 0x9ef4, 0x6fdb, 0x61de, 0x77c7, 0x7030,
+  0x9eb5, 0x884a, 0x95e2, 0x82f9, 0x51ed, 0x6251, 0x4ec6, 0x6734,
+  0x97c6, 0x7c64, 0x7e34, 0x97a6, 0x9eaf, 0x786e, 0x820d, 0x672f,
+  0x677e, 0x56cc, 0x53f0, 0x98b1, 0x6aaf, 0x7f4e, 0x6d82, 0x7cf0,
+  0x4e07, 0x4fc2, 0x7e6b, 0x9e79, 0x56ae, 0x9b1a, 0x846f, 0x53f6,
+  0x90c1, 0x79a6, 0x7c72, 0x613f, 0x4e91, 0x9ad2,
+  /* 0x79 */
+  0x75c7, 0x96bb, 0x53ea, 0x7dfb, 0x88fd, 0x79cd, 0x7843, 0x7b51,
+  0x51c6,
+};
+
+static int
+gb12345ext_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 == 0x21) || (c1 == 0x26) || (c1 == 0x28) || (c1 >= 0x30 && c1 <= 0x79)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if (c2 >= 0x21 && c2 < 0x7f) {
+        unsigned int i = 94 * (c1 - 0x21) + (c2 - 0x21);
+        unsigned short wc = 0xfffd;
+        if (i < 470) {
+          if (i < 12)
+            wc = gb12345ext_2uni_page21[i];
+        } else if (i < 658) {
+          if (i < 555)
+            wc = gb12345ext_2uni_page26[i-470];
+        } else if (i < 1410) {
+          if (i < 690)
+            wc = gb12345ext_2uni_page28[i-658];
+        } else {
+          if (i < 8281)
+            wc = gb12345ext_2uni_page30[i-1410];
+        }
+        if (wc != 0xfffd) {
+          *pwc = (ucs4_t) wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned short gb12345ext_2charset[2252] = {
+  0x283d, 0x283e, 0x283f, 0x283b, 0x2840, 0x283c, 0x212c, 0x7871,
+  0x7829, 0x7833, 0x7761, 0x4252, 0x787d, 0x5147, 0x785f, 0x7842,
+  0x6245, 0x4034, 0x4258, 0x7872, 0x4f40, 0x5876, 0x4129, 0x3256,
+  0x3876, 0x4347, 0x4257, 0x4e30, 0x3260, 0x556c, 0x5877, 0x4921,
+  0x3138, 0x7841, 0x5336, 0x342b, 0x5871, 0x552e, 0x494b, 0x4763,
+  0x594d, 0x3d76, 0x595d, 0x4748, 0x464d, 0x4e31, 0x3d44, 0x5947,
+  0x3c5b, 0x5247, 0x592f, 0x525a, 0x3f6b, 0x3c73, 0x594f, 0x5931,
+  0x592d, 0x7845, 0x3325, 0x5345, 0x3422, 0x5933, 0x5950, 0x594e,
+  0x5932, 0x3679, 0x782c, 0x413d, 0x7828, 0x7929, 0x3633, 0x7840,
+  0x785d, 0x3f2d, 0x783b, 0x5859, 0x5472, 0x7848, 0x3855, 0x3950,
+  0x585c, 0x3434, 0x3b2e, 0x3e67, 0x4175, 0x3974, 0x585b, 0x3d23,
+  0x3c41, 0x3e22, 0x362f, 0x4e71, 0x512b, 0x4a24, 0x404d, 0x4a46,
+  0x5b3d, 0x4078, 0x4830, 0x5850, 0x3b63, 0x5851, 0x4778, 0x502d,
+  0x7827, 0x5847, 0x325e, 0x5161, 0x4077, 0x5849, 0x324e, 0x3454,
+  0x7923, 0x786b, 0x7878, 0x6161, 0x5f43, 0x5431, 0x5f42, 0x4e4a,
+  0x4674, 0x5146, 0x4925, 0x4747, 0x3525, 0x5334, 0x473a, 0x5844,
+  0x4270, 0x4e58, 0x5f6f, 0x5f59, 0x4c3e, 0x6036, 0x453b, 0x5f75,
+  0x3322, 0x5f69, 0x3b29, 0x5f6b, 0x5025, 0x5f34, 0x5f58, 0x5f3c,
+  0x7830, 0x5f50, 0x5f55, 0x5f66, 0x5f5c, 0x6048, 0x5f60, 0x4567,
+  0x3656, 0x782b, 0x5f4c, 0x4f45, 0x5f62, 0x6060, 0x4476, 0x5f3f,
+  0x417c, 0x7875, 0x6037, 0x514f, 0x6053, 0x5f79, 0x603f, 0x4f79,
+  0x5966, 0x5f3d, 0x7853, 0x786a, 0x5676, 0x6070, 0x397a, 0x4e27,
+  0x5430, 0x5432, 0x4d3c, 0x4d45, 0x5b6b, 0x5634, 0x3c61, 0x5b51,
+  0x5b71, 0x5b76, 0x5222, 0x3128, 0x3321, 0x3f69, 0x5c63, 0x5b6e,
+  0x5b75, 0x4d3f, 0x4e6b, 0x5b77, 0x333e, 0x4735, 0x3566, 0x5739,
+  0x3669, 0x3758, 0x473d, 0x3f51, 0x4c33, 0x5139, 0x405d, 0x5b5b,
+  0x5b64, 0x3b35, 0x4222, 0x5b62, 0x5b5e, 0x3053, 0x5733, 0x3a78,
+  0x4a59, 0x434e, 0x7849, 0x3c50, 0x5e46, 0x3661, 0x3d31, 0x375c,
+  0x5731, 0x4226, 0x383e, 0x662b, 0x6634, 0x4268, 0x657d, 0x657c,
+  0x6635, 0x6623, 0x662c, 0x663f, 0x3d3f, 0x664d, 0x6648, 0x6649,
+  0x5324, 0x4974, 0x662e, 0x4b6f, 0x5127, 0x424f, 0x475e, 0x4a35,
+  0x447e, 0x4973, 0x5034, 0x3f6d, 0x3368, 0x3126, 0x3d2b, 0x5728,
+  0x5130, 0x3654, 0x353c, 0x5e4f, 0x4245, 0x3263, 0x6570, 0x4a74,
+  0x3854, 0x612d, 0x353a, 0x4f3f, 0x6141, 0x385a, 0x6134, 0x6130,
+  0x6150, 0x5538, 0x612b, 0x6140, 0x613d, 0x613b, 0x6149, 0x416b,
+  0x536c, 0x3f79, 0x424d, 0x615b, 0x5b4f, 0x7850, 0x4b27, 0x4a26,
+  0x554a, 0x3478, 0x5621, 0x6078, 0x607e, 0x607d, 0x5644, 0x3152,
+  0x306f, 0x607c, 0x7835, 0x3849, 0x3c38, 0x7838, 0x3f62, 0x436d,
+  0x3327, 0x6250, 0x374f, 0x3963, 0x422e, 0x4c7c, 0x6572, 0x5545,
+  0x7824, 0x352f, 0x4356, 0x4d64, 0x783d, 0x3a73, 0x3e36, 0x3453,
+  0x6162, 0x3834, 0x3339, 0x626a, 0x4346, 0x3671, 0x4455, 0x6322,
+  0x627c, 0x302e, 0x632b, 0x626b, 0x627d, 0x6269, 0x787c, 0x4c2c,
+  0x3252, 0x3251, 0x627a, 0x395f, 0x6d28, 0x6266, 0x4b4b, 0x4247,
+  0x6325, 0x476c, 0x5347, 0x3139, 0x412f, 0x463e, 0x6334, 0x352c,
+  0x375f, 0x4375, 0x6264, 0x4f5c, 0x5264, 0x3f52, 0x5326, 0x6278,
+  0x7856, 0x6d21, 0x6d2f, 0x627b, 0x334d, 0x4041, 0x3b33, 0x507c,
+  0x6263, 0x3e65, 0x4965, 0x4135, 0x6d30, 0x6a27, 0x6a28, 0x553d,
+  0x4f37, 0x785e, 0x502e, 0x4961, 0x5e51, 0x7846, 0x7847, 0x4928,
+  0x4255, 0x3c70, 0x516f, 0x3b53, 0x4b70, 0x3537, 0x4740, 0x5e62,
+  0x5e68, 0x4227, 0x563f, 0x3f59, 0x5e52, 0x3274, 0x404c, 0x4453,
+  0x5e58, 0x3527, 0x3226, 0x3827, 0x464b, 0x5e6c, 0x4c22, 0x4e4e,
+  0x3c71, 0x5335, 0x4230, 0x5471, 0x3b77, 0x3532, 0x3523, 0x3e5d,
+  0x3c37, 0x4462, 0x3177, 0x4521, 0x3869, 0x5640, 0x4029, 0x5f22,
+  0x305a, 0x4b53, 0x5f23, 0x4845, 0x5e73, 0x446c, 0x4223, 0x4039,
+  0x5e7c, 0x3273, 0x5f25, 0x4963, 0x545c, 0x424e, 0x4c2f, 0x3d41,
+  0x403f, 0x305c, 0x3550, 0x4a7d, 0x4132, 0x3150, 0x6c35, 0x782f,
+  0x5536, 0x364f, 0x4a31, 0x5667, 0x544e, 0x6a4d, 0x3329, 0x545d,
+  0x6a4a, 0x784f, 0x6a3c, 0x4f7e, 0x6a53, 0x3f75, 0x4939, 0x4a69,
+  0x3b61, 0x6b4a, 0x7868, 0x7860, 0x362b, 0x7869, 0x6845, 0x4c75,
+  0x6849, 0x6847, 0x5466, 0x3630, 0x553b, 0x6862, 0x516e, 0x3763,
+  0x6865, 0x5235, 0x3c2b, 0x683f, 0x4859, 0x6867, 0x3939, 0x4739,
+  0x687d, 0x3d30, 0x572e, 0x4056, 0x6848, 0x4225, 0x316a, 0x4a60,
+  0x5179, 0x4653, 0x4a77, 0x686b, 0x6863, 0x4745, 0x3b7a, 0x4d56,
+  0x685f, 0x3535, 0x686d, 0x3c6c, 0x6949, 0x786d, 0x6944, 0x447b,
+  0x3c77, 0x3971, 0x6956, 0x6935, 0x684e, 0x687c, 0x695a, 0x685d,
+  0x6946, 0x6853, 0x6840, 0x6934, 0x6850, 0x6937, 0x5323, 0x4038,
+  0x4828, 0x6921, 0x686f, 0x692d, 0x6879, 0x4755, 0x4537, 0x6c23,
+  0x3b36, 0x4b6a, 0x407a, 0x3969, 0x3250, 0x6966, 0x6964, 0x6969,
+  0x6967, 0x696b, 0x3c5f, 0x4931, 0x3f47, 0x4539, 0x6b27, 0x5531,
+  0x6b2a, 0x4678, 0x4762, 0x6b32, 0x6424, 0x786f, 0x637e, 0x782d,
+  0x4259, 0x5428, 0x6435, 0x4733, 0x4e50, 0x3262, 0x3b6b, 0x6425,
+  0x4c40, 0x573c, 0x3935, 0x3257, 0x4370, 0x3553, 0x5c7e, 0x3b26,
+  0x564d, 0x4978, 0x4231, 0x6430, 0x427a, 0x5366, 0x453d, 0x3a3a,
+  0x4130, 0x5755, 0x5547, 0x3d25, 0x3d2c, 0x7223, 0x4643, 0x3d60,
+  0x636d, 0x4873, 0x6431, 0x4023, 0x6464, 0x6436, 0x492c, 0x3d3d,
+  0x4054, 0x3d27, 0x6445, 0x5473, 0x6d34, 0x642b, 0x356d, 0x5747,
+  0x4528, 0x4a2a, 0x4522, 0x7855, 0x3c43, 0x4c4e, 0x4044, 0x4e2b,
+  0x3175, 0x3d26, 0x6378, 0x424b, 0x645e, 0x6442, 0x503a, 0x6449,
+  0x642f, 0x3174, 0x6372, 0x4124, 0x646c, 0x646b, 0x6371, 0x647e,
+  0x7858, 0x6472, 0x403d, 0x6363, 0x645c, 0x4877, 0x406c, 0x4c32,
+  0x6530, 0x4d65, 0x4250, 0x6459, 0x4e5a, 0x4c7e, 0x4e5e, 0x4136,
+  0x6c3f, 0x5c64, 0x3733, 0x6c3e, 0x532b, 0x6c41, 0x4848, 0x3363,
+  0x6c47, 0x3546, 0x4955, 0x4c4c, 0x6c4b, 0x532a, 0x3253, 0x5672,
+  0x3b62, 0x3d7d, 0x6c62, 0x4b38, 0x422f, 0x4043, 0x4e2a, 0x522f,
+  0x367b, 0x6b39, 0x4723, 0x5c7d, 0x363f, 0x4e7e, 0x5734, 0x4f41,
+  0x3137, 0x534c, 0x6178, 0x616f, 0x537c, 0x4a28, 0x3640, 0x6176,
+  0x617d, 0x447c, 0x3b71, 0x4154, 0x616e, 0x4a5e, 0x4c21, 0x4f57,
+  0x6228, 0x6224, 0x4f56, 0x6775, 0x6762, 0x4b76, 0x5328, 0x426a,
+  0x6776, 0x6761, 0x6828, 0x3b37, 0x6774, 0x476d, 0x6767, 0x682c,
+  0x6836, 0x6a31, 0x327a, 0x4436, 0x314f, 0x3b2d, 0x3531, 0x336b,
+  0x7921, 0x3e37, 0x7069, 0x3768, 0x5171, 0x7079, 0x342f, 0x4531,
+  0x707c, 0x4146, 0x706c, 0x706f, 0x7077, 0x705d, 0x3171, 0x5177,
+  0x705c, 0x5622, 0x705f, 0x712e, 0x5122, 0x7128, 0x712b, 0x5338,
+  0x4c31, 0x7132, 0x3722, 0x3028, 0x7164, 0x5665, 0x5535, 0x3e21,
+  0x3c60, 0x454c, 0x422c, 0x784a, 0x6d79, 0x6d6e, 0x4277, 0x7851,
+  0x6d7a, 0x7857, 0x5675, 0x3d43, 0x7927, 0x6d4c, 0x6d3a, 0x7866,
+  0x5162, 0x4b36, 0x6d38, 0x6d3f, 0x4837, 0x426b, 0x5729, 0x6d57,
+  0x6d53, 0x6d36, 0x6d4d, 0x3421, 0x302d, 0x3f73, 0x6d42, 0x4079,
+  0x372f, 0x6d43, 0x3b76, 0x6c75, 0x787a, 0x6c78, 0x4071, 0x6c72,
+  0x353b, 0x7926, 0x5656, 0x3346, 0x7836, 0x7655, 0x3b7d, 0x5331,
+  0x7023, 0x3b60, 0x4e48, 0x783e, 0x4e51, 0x4d5d, 0x476e, 0x7140,
+  0x3f7a, 0x345c, 0x474f, 0x713c, 0x546e, 0x4754, 0x4a7a, 0x3e3a,
+  0x314a, 0x7928, 0x7348, 0x3c63, 0x3d5a, 0x3736, 0x567e, 0x7366,
+  0x7346, 0x4938, 0x7359, 0x7365, 0x4228, 0x736c, 0x3c72, 0x7371,
+  0x736f, 0x4729, 0x4131, 0x403a, 0x336f, 0x736a, 0x7425, 0x417d,
+  0x7862, 0x7356, 0x737d, 0x4069, 0x4261, 0x787b, 0x7456, 0x3760,
+  0x4138, 0x7870, 0x744f, 0x5961, 0x7450, 0x6679, 0x3e40, 0x3c4d,
+  0x667b, 0x543c, 0x3a6c, 0x667a, 0x667c, 0x667d, 0x4852, 0x4e46,
+  0x4449, 0x4526, 0x6723, 0x343f, 0x6722, 0x4934, 0x563d, 0x3c36,
+  0x3757, 0x6721, 0x3744, 0x4f38, 0x6726, 0x6725, 0x4970, 0x495c,
+  0x6724, 0x6728, 0x672a, 0x6729, 0x5655, 0x5769, 0x306d, 0x672c,
+  0x3d61, 0x672b, 0x3d4a, 0x4267, 0x5124, 0x3878, 0x485e, 0x4d33,
+  0x4b3f, 0x672d, 0x3e78, 0x3e6e, 0x3073, 0x672f, 0x672e, 0x6730,
+  0x5065, 0x4b67, 0x3e2d, 0x575b, 0x6736, 0x3371, 0x6739, 0x4f5f,
+  0x6737, 0x4e2c, 0x673a, 0x3859, 0x4d78, 0x3141, 0x573a, 0x425a,
+  0x6738, 0x6732, 0x5540, 0x3442, 0x6731, 0x4360, 0x6735, 0x673b,
+  0x3d74, 0x6733, 0x424c, 0x5077, 0x6734, 0x673d, 0x3c6a, 0x673c,
+  0x3c29, 0x3650, 0x355e, 0x6745, 0x5435, 0x6741, 0x3160, 0x3b3a,
+  0x4365, 0x4e33, 0x6743, 0x673f, 0x4137, 0x6742, 0x673e, 0x7924,
+  0x5d53, 0x6746, 0x674b, 0x6744, 0x6727, 0x674c, 0x383f, 0x6747,
+  0x6749, 0x6748, 0x4f58, 0x4c50, 0x376c, 0x674a, 0x4b75, 0x575d,
+  0x6750, 0x7863, 0x674f, 0x746a, 0x4246, 0x674e, 0x575c, 0x3c28,
+  0x6752, 0x6751, 0x6755, 0x562f, 0x4949, 0x6754, 0x4846, 0x6740,
+  0x497e, 0x3b66, 0x7873, 0x3c6b, 0x6756, 0x6759, 0x6758, 0x3d49,
+  0x526f, 0x3c4c, 0x674d, 0x6757, 0x6753, 0x667e, 0x5078, 0x784d,
+  0x3278, 0x5327, 0x7826, 0x4f4b, 0x675a, 0x4042, 0x733f, 0x786e,
+  0x3723, 0x3055, 0x425e, 0x6e3c, 0x6e3f, 0x7447, 0x5265, 0x4f30,
+  0x474c, 0x716f, 0x716c, 0x4a25, 0x4e45, 0x412a, 0x344f, 0x4979,
+  0x4b4a, 0x7179, 0x4474, 0x5630, 0x7177, 0x4c7d, 0x417b, 0x4b60,
+  0x5032, 0x6b56, 0x554d, 0x784c, 0x4976, 0x6b4b, 0x6b61, 0x4454,
+  0x5657, 0x3326, 0x3774, 0x3d3a, 0x4465, 0x3528, 0x6b5a, 0x4527,
+  0x4133, 0x466a, 0x6b77, 0x4030, 0x6b4d, 0x5460, 0x5975, 0x4159,
+  0x4c28, 0x536b, 0x504b, 0x3e59, 0x3e49, 0x7867, 0x3255, 0x742f,
+  0x3d22, 0x7435, 0x3c68, 0x515e, 0x5b3b, 0x5c51, 0x785c, 0x7832,
+  0x7843, 0x572f, 0x3e25, 0x3c54, 0x5c48, 0x3b2a, 0x5c49, 0x4033,
+  0x4d72, 0x5d2b, 0x5236, 0x5d26, 0x5d27, 0x4e2d, 0x7877, 0x3b67,
+  0x5d3b, 0x5d2a, 0x3254, 0x5d25, 0x3847, 0x412b, 0x5c4a, 0x5c6a,
+  0x7825, 0x5d64, 0x3d2f, 0x5c60, 0x5271, 0x5d21, 0x5d5b, 0x5c71,
+  0x5d24, 0x5c3f, 0x5d35, 0x5c69, 0x5d5e, 0x3534, 0x4e5f, 0x4f74,
+  0x5d77, 0x5c76, 0x3c3b, 0x5c3c, 0x7844, 0x473e, 0x5d32, 0x3c76,
+  0x4878, 0x5c79, 0x4036, 0x5d23, 0x5255, 0x5229, 0x5e34, 0x544c,
+  0x5c42, 0x302a, 0x5d7e, 0x5e2d, 0x422b, 0x4b55, 0x463b, 0x5e3a,
+  0x5d7c, 0x5c57, 0x403c, 0x5d71, 0x425c, 0x3426, 0x4232, 0x3a45,
+  0x3f77, 0x724c, 0x7239, 0x784b, 0x4a34, 0x4f3a, 0x4e4f, 0x724f,
+  0x426c, 0x5329, 0x7277, 0x555d, 0x7265, 0x727d, 0x7231, 0x3275,
+  0x724d, 0x3366, 0x7249, 0x524f, 0x532c, 0x7232, 0x7253, 0x726e,
+  0x402f, 0x7243, 0x3946, 0x324f, 0x4279, 0x565a, 0x785a, 0x4a75,
+  0x4e40, 0x3365, 0x563b, 0x7441, 0x406f, 0x3239, 0x5730, 0x7925,
+  0x7834, 0x3f63, 0x714d, 0x715a, 0x5974, 0x7150, 0x3040, 0x714f,
+  0x7149, 0x715c, 0x4d60, 0x7821, 0x3344, 0x4f2e, 0x3c7b, 0x3966,
+  0x4359, 0x4a53, 0x6a68, 0x6a6a, 0x6a6c, 0x4757, 0x6a69, 0x6a6d,
+  0x6a6e, 0x6a6f, 0x3e75, 0x4040, 0x6a6b, 0x395b, 0x757c, 0x7623,
+  0x3425, 0x5a25, 0x3629, 0x383c, 0x3c46, 0x5136, 0x5a27, 0x4c56,
+  0x5a26, 0x5135, 0x5a28, 0x467d, 0x3c47, 0x366f, 0x5148, 0x4b4f,
+  0x3e77, 0x5a2b, 0x3743, 0x4968, 0x506d, 0x4b5f, 0x5a2d, 0x556f,
+  0x5a2c, 0x5a2e, 0x5a2a, 0x5529, 0x5a31, 0x5a2f, 0x4640, 0x5a30,
+  0x5767, 0x344a, 0x5a3c, 0x512f, 0x5268, 0x4a54, 0x4a2b, 0x326f,
+  0x5a38, 0x396e, 0x5a39, 0x5a35, 0x3b30, 0x3843, 0x4f6a, 0x5a37,
+  0x5a36, 0x5a34, 0x5a33, 0x566f, 0x5a32, 0x3f64, 0x484f, 0x5a3f,
+  0x5a40, 0x352e, 0x5355, 0x5a3d, 0x536f, 0x334f, 0x3d6b, 0x4e5c,
+  0x4e73, 0x5a3e, 0x4b50, 0x3b65, 0x4b35, 0x4b2d, 0x3f4e, 0x5a47,
+  0x374c, 0x526a, 0x3577, 0x5a46, 0x573b, 0x4c38, 0x5a43, 0x476b,
+  0x5a3a, 0x5a41, 0x5a42, 0x4142, 0x425b, 0x5a45, 0x5a44, 0x357d,
+  0x5a52, 0x5a3b, 0x5a4c, 0x5a50, 0x5033, 0x5a49, 0x5a4d, 0x5a51,
+  0x3b64, 0x5a4f, 0x5a48, 0x376d, 0x566e, 0x5168, 0x5a4e, 0x4535,
+  0x4431, 0x5a4b, 0x4e3d, 0x4c5c, 0x565f, 0x3b51, 0x4355, 0x5a57,
+  0x5a4a, 0x5a55, 0x3079, 0x472b, 0x5a56, 0x3d32, 0x503b, 0x5225,
+  0x5a53, 0x5a58, 0x437d, 0x5a59, 0x5a29, 0x3d77, 0x4321, 0x5624,
+  0x5a5c, 0x3c25, 0x5a5a, 0x4a36, 0x5a5b, 0x4c37, 0x4657, 0x5a5e,
+  0x526b, 0x5269, 0x4734, 0x3b24, 0x537e, 0x3641, 0x3164, 0x7645,
+  0x3277, 0x4843, 0x403e, 0x5a5f, 0x5a54, 0x5a5d, 0x4671, 0x3761,
+  0x3134, 0x556a, 0x383a, 0x3246, 0x3931, 0x4636, 0x3b75, 0x3737,
+  0x4c30, 0x3961, 0x5470, 0x567c, 0x6a5b, 0x6a5f, 0x3721, 0x3973,
+  0x3161, 0x4272, 0x347b, 0x6a5c, 0x3751, 0x4c79, 0x6a5d, 0x4333,
+  0x3a58, 0x6a5a, 0x4238, 0x415e, 0x3b5f, 0x6a60, 0x574a, 0x3c56,
+  0x5474, 0x6a62, 0x495e, 0x3176, 0x6a64, 0x6a63, 0x344d, 0x494d,
+  0x4562, 0x6259, 0x4f4d, 0x4274, 0x3c7a, 0x3833, 0x6a66, 0x564a,
+  0x6a65, 0x554b, 0x3644, 0x4035, 0x572c, 0x6a67, 0x393a, 0x487c,
+  0x5853, 0x6a5e, 0x5738, 0x5479, 0x545e, 0x584d, 0x4944, 0x532e,
+  0x6a61, 0x4a6a, 0x3853, 0x545f, 0x384f, 0x5554, 0x4777, 0x7475,
+  0x3c79, 0x533b, 0x7544, 0x754f, 0x7567, 0x754e, 0x753b, 0x336c,
+  0x7552, 0x543e, 0x755c, 0x7548, 0x7559, 0x7551, 0x7566, 0x345a,
+  0x7572, 0x756f, 0x477b, 0x3335, 0x547e, 0x396c, 0x3e7c, 0x5079,
+  0x696d, 0x696e, 0x486d, 0x6975, 0x6974, 0x696f, 0x5661, 0x6972,
+  0x6977, 0x6970, 0x6973, 0x6978, 0x3d4f, 0x697b, 0x697a, 0x5458,
+  0x6979, 0x697c, 0x3828, 0x4761, 0x413e, 0x6a22, 0x3b54, 0x697e,
+  0x6a21, 0x3975, 0x697d, 0x3132, 0x4256, 0x3c2d, 0x6a23, 0x4a64,
+  0x3778, 0x5537, 0x535f, 0x6c31, 0x4f3d, 0x542f, 0x6a24, 0x572a,
+  0x555e, 0x3d4e, 0x6a25, 0x3a64, 0x604e, 0x6976, 0x6971, 0x306c,
+  0x3447, 0x3168, 0x3167, 0x4529, 0x783c, 0x6549, 0x5562, 0x412c,
+  0x3d78, 0x544b, 0x397d, 0x346f, 0x4e25, 0x5137, 0x355d, 0x5436,
+  0x4a4a, 0x3359, 0x4728, 0x5121, 0x5245, 0x4149, 0x4275, 0x3b39,
+  0x6547, 0x315f, 0x425f, 0x654e, 0x7879, 0x5b23, 0x534a, 0x5b29,
+  0x4f67, 0x575e, 0x5a79, 0x5447, 0x354b, 0x5623, 0x415a, 0x3526,
+  0x5a7e, 0x5b26, 0x5a77, 0x5b2a, 0x544d, 0x3373, 0x523d, 0x3d34,
+  0x4470, 0x5046, 0x7527, 0x7526, 0x4a4d, 0x784e, 0x6e44, 0x6e45,
+  0x6e46, 0x6e49, 0x6e48, 0x3624, 0x6e47, 0x556b, 0x3576, 0x6e4c,
+  0x6e4b, 0x3730, 0x6e4e, 0x6e4a, 0x6e4f, 0x4725, 0x6e59, 0x6e55,
+  0x6e57, 0x6e50, 0x4446, 0x365b, 0x3933, 0x6e54, 0x6e53, 0x332e,
+  0x4525, 0x3e7b, 0x3846, 0x6e58, 0x6e51, 0x6e56, 0x6e6a, 0x6e66,
+  0x6e5d, 0x4165, 0x6e5c, 0x6e60, 0x6e6b, 0x6e5a, 0x6e5f, 0x534b,
+  0x6e64, 0x3c58, 0x6e52, 0x6e68, 0x6e67, 0x6e69, 0x322c, 0x6e5e,
+  0x472f, 0x432d, 0x4726, 0x6e61, 0x3227, 0x6e5b, 0x6e62, 0x6e63,
+  0x3d42, 0x6e6f, 0x3875, 0x6e7e, 0x5278, 0x6f25, 0x4d2d, 0x4f33,
+  0x6e7d, 0x6e79, 0x437a, 0x6f22, 0x4f4e, 0x6e6e, 0x6f28, 0x523f,
+  0x6e77, 0x6f27, 0x6e7b, 0x6e70, 0x6f24, 0x6e6d, 0x6e76, 0x4f7a,
+  0x5062, 0x4c60, 0x6f31, 0x4241, 0x6f36, 0x503f, 0x3135, 0x6e7a,
+  0x6e72, 0x3766, 0x6f32, 0x6f37, 0x6e74, 0x337a, 0x6f2d, 0x6f38,
+  0x6f30, 0x464c, 0x4871, 0x6e71, 0x6f2f, 0x6f2e, 0x6f2b, 0x6f33,
+  0x3e62, 0x3856, 0x6f3e, 0x6f3a, 0x6f42, 0x6f43, 0x5736, 0x6f39,
+  0x6f3f, 0x3438, 0x6f45, 0x6f23, 0x6f3c, 0x6f44, 0x3627, 0x472e,
+  0x3d75, 0x432a, 0x4e7d, 0x6f40, 0x346d, 0x423c, 0x434c, 0x7823,
+  0x6f2a, 0x6f3d, 0x4f47, 0x6f41, 0x6e4d, 0x6f47, 0x3978, 0x3646,
+  0x6f49, 0x5521, 0x364d, 0x6f4a, 0x6f46, 0x6f3b, 0x4742, 0x6f4c,
+  0x3c7c, 0x6f48, 0x5560, 0x6f71, 0x433e, 0x6f4d, 0x6f51, 0x3077,
+  0x4b78, 0x6f53, 0x4e59, 0x5d76, 0x6f56, 0x6e78, 0x6f21, 0x6f4b,
+  0x3864, 0x5572, 0x6f57, 0x4478, 0x6f58, 0x6f54, 0x6f55, 0x6f5f,
+  0x6f60, 0x4134, 0x6f52, 0x6f5d, 0x6f61, 0x6f2c, 0x6f4f, 0x6f5b,
+  0x6f5c, 0x6f5e, 0x3279, 0x3e35, 0x6f5a, 0x6f4e, 0x7649, 0x6e7c,
+  0x6f64, 0x6f6a, 0x6e73, 0x6f26, 0x414d, 0x6f29, 0x6f66, 0x6f62,
+  0x5653, 0x6f6b, 0x6f63, 0x6f68, 0x6f34, 0x6f35, 0x6f50, 0x412d,
+  0x6f6d, 0x4058, 0x4c7a, 0x6e6c, 0x6e75, 0x6f6e, 0x567d, 0x6f6c,
+  0x6f59, 0x3c78, 0x6f6f, 0x6e65, 0x6f70, 0x6f65, 0x6f67, 0x543f,
+  0x4f62, 0x4477, 0x6f69, 0x4260, 0x576a, 0x7647, 0x5464, 0x3324,
+  0x4345, 0x6345, 0x4941, 0x6346, 0x3155, 0x3f2a, 0x634a, 0x6348,
+  0x4872, 0x4f50, 0x3c64, 0x6349, 0x5522, 0x3a52, 0x3873, 0x7839,
+  0x3727, 0x396b, 0x4376, 0x634d, 0x634f, 0x634c, 0x5444, 0x6351,
+  0x514b, 0x5156, 0x6355, 0x6354, 0x6350, 0x6353, 0x6356, 0x7822,
+  0x6347, 0x402b, 0x6357, 0x403b, 0x6359, 0x6358, 0x635a, 0x3433,
+  0x3958, 0x635b, 0x327b, 0x785b, 0x634b, 0x5a6a, 0x4942, 0x5573,
+  0x5275, 0x3342, 0x423d, 0x5174, 0x3653, 0x3d57, 0x5449, 0x3c4a,
+  0x4b66, 0x4f55, 0x527e, 0x4224, 0x4125, 0x7922, 0x4b64, 0x4b2b,
+  0x337b, 0x5453, 0x406b, 0x4451, 0x5446, 0x3567, 0x4e6d, 0x762b,
+  0x7628, 0x7630, 0x4169, 0x7626, 0x584c, 0x392e, 0x7864, 0x7733,
+  0x7732, 0x7861, 0x7735, 0x4e24, 0x484d, 0x3a2b, 0x6838, 0x683a,
+  0x6839, 0x4f6c, 0x5233, 0x3625, 0x476a, 0x4f6e, 0x4b33, 0x717c,
+  0x506b, 0x676f, 0x4b4c, 0x717d, 0x717e, 0x5424, 0x4d67, 0x3064,
+  0x3659, 0x4644, 0x416c, 0x7222, 0x7221, 0x5243, 0x7224, 0x4d37,
+  0x3c55, 0x7225, 0x3e31, 0x4635, 0x4d47, 0x3f45, 0x4c62, 0x366e,
+  0x7226, 0x7227, 0x5155, 0x5438, 0x722a, 0x355f, 0x4060, 0x7229,
+  0x722b, 0x394b, 0x327c, 0x722c, 0x4f54, 0x722d, 0x422d, 0x7228,
+  0x4827, 0x3767, 0x6c29, 0x6c2a, 0x786c, 0x7837, 0x6c2b, 0x6c2c,
+  0x462e, 0x6c2d, 0x6c2e, 0x3749, 0x623b, 0x783f, 0x623d, 0x623f,
+  0x6240, 0x6241, 0x3739, 0x527b, 0x6242, 0x4b47, 0x3125, 0x4a4e,
+  0x3d48, 0x317d, 0x6243, 0x5178, 0x367c, 0x6244, 0x4459, 0x3676,
+  0x5360, 0x6246, 0x3d24, 0x4f5a, 0x395d, 0x623c, 0x6247, 0x623e,
+  0x4173, 0x6248, 0x6249, 0x4278, 0x624a, 0x624b, 0x624c, 0x4021,
+  0x624d, 0x3c22, 0x4844, 0x774f, 0x7750, 0x3276, 0x624e, 0x426d,
+  0x5426, 0x376b, 0x4d54, 0x335b, 0x5131, 0x3235, 0x5724, 0x6665,
+  0x3e54, 0x6660, 0x3c5d, 0x6666, 0x6662, 0x4a3b, 0x4d55, 0x6661,
+  0x426e, 0x6669, 0x3a27, 0x4266, 0x3f25, 0x3352, 0x666d, 0x666c,
+  0x466f, 0x666b, 0x6670, 0x462d, 0x6539, 0x666f, 0x6672, 0x4c5a,
+  0x6663, 0x4927, 0x6673, 0x4262, 0x5d6b, 0x6671, 0x666e, 0x6674,
+  0x6675, 0x477d, 0x6668, 0x6667, 0x6676, 0x3d3e, 0x5169, 0x3e2a,
+  0x6664, 0x5668, 0x423f, 0x6678, 0x6677, 0x666a, 0x3039, 0x7743,
+  0x787e, 0x4c65, 0x7746, 0x7745, 0x7831, 0x4b49, 0x783a, 0x7876,
+  0x775e, 0x3637, 0x4456, 0x6352, 0x634e, 0x5374, 0x774b, 0x774a,
+  0x5363, 0x4233, 0x7650, 0x764f, 0x7651, 0x7652, 0x7653, 0x7658,
+  0x312b, 0x7656, 0x765a, 0x765f, 0x765c, 0x765b, 0x765e, 0x7659,
+  0x4f4a, 0x7667, 0x7661, 0x7669, 0x4070, 0x7668, 0x7676, 0x766b,
+  0x7674, 0x7671, 0x766e, 0x7672, 0x766f, 0x7670, 0x3e28, 0x766c,
+  0x766d, 0x7673, 0x7675, 0x766a, 0x767d, 0x7678, 0x767c, 0x767a,
+  0x7679, 0x767b, 0x487a, 0x767e, 0x7665, 0x7724, 0x7723, 0x7725,
+  0x7722, 0x7663, 0x7721, 0x7726, 0x772a, 0x7666, 0x7664, 0x7729,
+  0x7727, 0x772b, 0x7728, 0x316e, 0x772e, 0x772d, 0x772c, 0x415b,
+  0x7660, 0x7677, 0x7657, 0x772f, 0x765d, 0x7654, 0x7662, 0x4471,
+  0x702f, 0x596c, 0x376f, 0x4379, 0x7030, 0x7032, 0x7031, 0x513b,
+  0x4d52, 0x5427, 0x7036, 0x7037, 0x7033, 0x516c, 0x513c, 0x7039,
+  0x703b, 0x3a68, 0x386b, 0x703c, 0x3e69, 0x7041, 0x703e, 0x7043,
+  0x366c, 0x7040, 0x7044, 0x7046, 0x4574, 0x7047, 0x4835, 0x7034,
+  0x7048, 0x7045, 0x7049, 0x704a, 0x704c, 0x704d, 0x5d3a, 0x3a57,
+  0x773d, 0x704f, 0x704b, 0x704e, 0x3c26, 0x7051, 0x4538, 0x703a,
+  0x7052, 0x7038, 0x7054, 0x7053, 0x7055, 0x7042, 0x7056, 0x5325,
+  0x7058, 0x7057, 0x7035, 0x7050, 0x7059, 0x703f, 0x703d, 0x7852,
+  0x7874, 0x753a, 0x3c6f, 0x514e, 0x4076, 0x4273, 0x746f, 0x7865,
+  0x7859, 0x4334, 0x5964, 0x3563, 0x3533, 0x7775, 0x7854, 0x7772,
+  0x763c, 0x763d, 0x763e, 0x782e, 0x466b, 0x552b, 0x6c34, 0x335d,
+  0x7633, 0x7635, 0x7637, 0x7634, 0x7636, 0x4164, 0x782a, 0x7638,
+  0x763a, 0x7639, 0x4823, 0x763b, 0x417a, 0x4553, 0x3928, 0x6d68,
+  0x396a, 0x2672, 0x2674, 0x2675, 0x2660, 0x2661, 0x2670, 0x2671,
+  0x2662, 0x2663, 0x266e, 0x266f, 0x2666, 0x2667, 0x2664, 0x2665,
+  0x2668, 0x2669, 0x266a, 0x266b,
+};
+
+static const Summary16 gb12345ext_uni2indx_page01[23] = {
+  /* 0x0100 */
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0110 }, {    2, 0x0000 }, {    2, 0x0000 }, {    2, 0x0000 },
+  {    2, 0x0000 }, {    2, 0x0000 }, {    2, 0x0000 }, {    2, 0x0000 },
+  {    2, 0x0000 }, {    2, 0x0000 }, {    2, 0x0000 }, {    2, 0x0200 },
+  /* 0x0200 */
+  {    3, 0x0000 }, {    3, 0x0000 }, {    3, 0x0000 }, {    3, 0x0000 },
+  {    3, 0x0000 }, {    3, 0x0002 }, {    4, 0x0002 },
+};
+static const Summary16 gb12345ext_uni2indx_page1e[4] = {
+  /* 0x1e00 */
+  {    5, 0x0000 }, {    5, 0x0000 }, {    5, 0x0000 }, {    5, 0x8000 },
+};
+static const Summary16 gb12345ext_uni2indx_page22[3] = {
+  /* 0x2200 */
+  {    6, 0x0000 }, {    6, 0x0000 }, {    6, 0x0020 },
+};
+static const Summary16 gb12345ext_uni2indx_page4e[1306] = {
+  /* 0x4e00 */
+  {    7, 0x0080 }, {    8, 0x0002 }, {    9, 0x0000 }, {    9, 0x0001 },
+  {   10, 0x0100 }, {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 },
+  {   11, 0x0004 }, {   12, 0x4002 }, {   14, 0x0000 }, {   14, 0x0000 },
+  {   14, 0x0040 }, {   15, 0x0000 }, {   15, 0x0000 }, {   15, 0x0080 },
+  /* 0x4f00 */
+  {   16, 0x0000 }, {   16, 0x0000 }, {   16, 0x0000 }, {   16, 0x0000 },
+  {   16, 0x0000 }, {   16, 0x0200 }, {   17, 0x0000 }, {   17, 0x0000 },
+  {   17, 0x0040 }, {   18, 0x0040 }, {   19, 0x0000 }, {   19, 0x0000 },
+  {   19, 0x0004 }, {   20, 0x0000 }, {   20, 0x0001 }, {   21, 0x0000 },
+  /* 0x5000 */
+  {   21, 0x0a41 }, {   25, 0x0002 }, {   26, 0x0800 }, {   27, 0x0000 },
+  {   27, 0x0200 }, {   28, 0x0000 }, {   28, 0x0000 }, {   28, 0x0030 },
+  {   30, 0x0000 }, {   30, 0x0340 }, {   33, 0x2004 }, {   35, 0x40b8 },
+  {   40, 0x0224 }, {   43, 0x4022 }, {   46, 0x0120 }, {   48, 0x0200 },
+  /* 0x5100 */
+  {   49, 0x0315 }, {   54, 0x8131 }, {   59, 0x0400 }, {   60, 0x1c84 },
+  {   65, 0x0000 }, {   65, 0x0404 }, {   67, 0x0200 }, {   68, 0x0000 },
+  {   68, 0x0000 }, {   68, 0x0000 }, {   68, 0x0000 }, {   68, 0x0004 },
+  {   69, 0x2040 }, {   71, 0x0000 }, {   71, 0x2001 }, {   73, 0x0002 },
+  /* 0x5200 */
+  {   74, 0x0000 }, {   74, 0x0004 }, {   75, 0x0000 }, {   75, 0x0000 },
+  {   75, 0x0890 }, {   78, 0x0800 }, {   79, 0x4000 }, {   80, 0x0030 },
+  {   82, 0x3688 }, {   88, 0x0002 }, {   89, 0x0000 }, {   89, 0x0000 },
+  {   89, 0x0002 }, {   90, 0x6a20 }, {   95, 0x0004 }, {   96, 0x0122 },
+  /* 0x5300 */
+  {   99, 0x0000 }, {   99, 0x0000 }, {   99, 0xa000 }, {  101, 0x0002 },
+  {  102, 0x0001 }, {  103, 0x0010 }, {  104, 0x0000 }, {  104, 0x0000 },
+  {  104, 0x0004 }, {  105, 0x0200 }, {  106, 0x2001 }, {  108, 0x0014 },
+  {  110, 0x0008 }, {  111, 0x0000 }, {  111, 0x0404 }, {  113, 0x0041 },
+  /* 0x5400 */
+  {  115, 0x4000 }, {  116, 0x0000 }, {  116, 0x0000 }, {  116, 0x0000 },
+  {  116, 0x0000 }, {  116, 0x0000 }, {  116, 0x0000 }, {  116, 0x0000 },
+  {  116, 0x0000 }, {  116, 0x0000 }, {  116, 0x0000 }, {  116, 0x1000 },
+  {  117, 0x0000 }, {  117, 0x0000 }, {  117, 0x0002 }, {  118, 0x0000 },
+  /* 0x5500 */
+  {  118, 0x0010 }, {  119, 0x0000 }, {  119, 0x0000 }, {  119, 0x0000 },
+  {  119, 0x8000 }, {  120, 0x4008 }, {  122, 0x0000 }, {  122, 0x0000 },
+  {  122, 0x0000 }, {  122, 0x0000 }, {  122, 0x5400 }, {  125, 0x0004 },
+  {  126, 0x40c0 }, {  129, 0x0400 }, {  130, 0x0200 }, {  131, 0x0040 },
+  /* 0x5600 */
+  {  132, 0x2040 }, {  134, 0x10d0 }, {  138, 0xc200 }, {  141, 0x0121 },
+  {  144, 0x0002 }, {  145, 0x2000 }, {  146, 0x8061 }, {  150, 0x0314 },
+  {  154, 0x1081 }, {  157, 0x0220 }, {  159, 0x4140 }, {  162, 0x0058 },
+  {  165, 0x1327 }, {  172, 0x0002 }, {  173, 0x0000 }, {  173, 0x0000 },
+  /* 0x5700 */
+  {  173, 0x2880 }, {  176, 0x014c }, {  180, 0x0000 }, {  180, 0x0000 },
+  {  180, 0x0000 }, {  180, 0x0000 }, {  180, 0x0000 }, {  180, 0x0000 },
+  {  180, 0x0000 }, {  180, 0x0000 }, {  180, 0x0000 }, {  180, 0x0000 },
+  {  180, 0x0000 }, {  180, 0x0000 }, {  180, 0x0002 }, {  181, 0x0080 },
+  /* 0x5800 */
+  {  182, 0x0420 }, {  184, 0x2040 }, {  186, 0x8000 }, {  187, 0x0012 },
+  {  189, 0x8c00 }, {  192, 0x0084 }, {  194, 0x0014 }, {  196, 0x0220 },
+  {  198, 0x0400 }, {  199, 0x1000 }, {  200, 0x4000 }, {  201, 0x4808 },
+  {  204, 0x0080 }, {  205, 0xc708 }, {  211, 0x8205 }, {  215, 0x2400 },
+  /* 0x5900 */
+  {  217, 0x0000 }, {  217, 0x0000 }, {  217, 0x0004 }, {  218, 0x4100 },
+  {  220, 0x0000 }, {  220, 0x0000 }, {  220, 0x5600 }, {  224, 0x0000 },
+  {  224, 0x0000 }, {  224, 0x2000 }, {  225, 0x0000 }, {  225, 0x0000 },
+  {  225, 0x0000 }, {  225, 0x0000 }, {  225, 0x0000 }, {  225, 0x0000 },
+  /* 0x5a00 */
+  {  225, 0x0000 }, {  225, 0x0000 }, {  225, 0x0000 }, {  225, 0x0000 },
+  {  225, 0x0002 }, {  226, 0x0000 }, {  226, 0x2040 }, {  228, 0x0000 },
+  {  228, 0x0000 }, {  228, 0x0000 }, {  228, 0x0080 }, {  229, 0x2000 },
+  {  230, 0x0000 }, {  230, 0x0080 }, {  231, 0x0000 }, {  231, 0x0820 },
+  /* 0x5b00 */
+  {  233, 0x1901 }, {  237, 0x0200 }, {  238, 0x0402 }, {  240, 0x0101 },
+  {  242, 0x1000 }, {  243, 0x0000 }, {  243, 0x0800 }, {  244, 0x8100 },
+  {  246, 0x0000 }, {  246, 0x0000 }, {  246, 0x0000 }, {  246, 0x0000 },
+  {  246, 0x0000 }, {  246, 0x0000 }, {  246, 0x1ac4 }, {  252, 0x0060 },
+  /* 0x5c00 */
+  {  254, 0x6980 }, {  259, 0x0000 }, {  259, 0x0000 }, {  259, 0x0080 },
+  {  260, 0x0000 }, {  260, 0x0000 }, {  260, 0x1114 }, {  264, 0x0000 },
+  {  264, 0x0000 }, {  264, 0x0000 }, {  264, 0x0002 }, {  265, 0x0000 },
+  {  265, 0x0000 }, {  265, 0x0000 }, {  265, 0x0000 }, {  265, 0x2050 },
+  /* 0x5d00 */
+  {  268, 0x2000 }, {  269, 0x0080 }, {  270, 0x1000 }, {  271, 0x0000 },
+  {  271, 0x0000 }, {  271, 0x0001 }, {  272, 0x0000 }, {  272, 0x0000 },
+  {  272, 0x0092 }, {  275, 0x0080 }, {  276, 0x0081 }, {  278, 0x1500 },
+  {  281, 0x0800 }, {  282, 0x0014 }, {  284, 0x0000 }, {  284, 0x0001 },
+  /* 0x5e00 */
+  {  285, 0x0000 }, {  285, 0x0100 }, {  286, 0x0820 }, {  288, 0x0048 },
+  {  290, 0x0009 }, {  292, 0x8180 }, {  295, 0x1808 }, {  298, 0xc204 },
+  {  302, 0x0000 }, {  302, 0x0000 }, {  302, 0x0800 }, {  303, 0x0000 },
+  {  303, 0x0000 }, {  303, 0x8000 }, {  304, 0x100f }, {  309, 0x0008 },
+  /* 0x5f00 */
+  {  310, 0x0000 }, {  310, 0x0000 }, {  310, 0x0000 }, {  310, 0x0028 },
+  {  312, 0x5140 }, {  316, 0x0200 }, {  317, 0x0000 }, {  317, 0x0000 },
+  {  317, 0x1000 }, {  318, 0x4002 }, {  320, 0x0201 }, {  322, 0x0200 },
+  {  323, 0x0000 }, {  323, 0x0000 }, {  323, 0x0000 }, {  323, 0x0000 },
+  /* 0x6000 */
+  {  323, 0x0000 }, {  323, 0x0000 }, {  323, 0x0000 }, {  323, 0x0000 },
+  {  323, 0x0000 }, {  323, 0x0000 }, {  323, 0x0000 }, {  323, 0x0000 },
+  {  323, 0x0000 }, {  323, 0x0000 }, {  323, 0x0000 }, {  323, 0x0060 },
+  {  325, 0x0000 }, {  325, 0x0000 }, {  325, 0x0002 }, {  326, 0x0806 },
+  /* 0x6100 */
+  {  329, 0x0000 }, {  329, 0x1800 }, {  331, 0x0000 }, {  331, 0xc090 },
+  {  335, 0x0800 }, {  336, 0x8500 }, {  339, 0x4c18 }, {  344, 0x0048 },
+  {  346, 0x0404 }, {  348, 0x0407 }, {  352, 0x4810 }, {  355, 0x0044 },
+  {  357, 0x1280 }, {  360, 0xc000 }, {  362, 0x0108 }, {  364, 0x55c4 },
+  /* 0x6200 */
+  {  371, 0x0081 }, {  373, 0x0010 }, {  374, 0x0080 }, {  375, 0x0005 },
+  {  377, 0x0000 }, {  377, 0x0002 }, {  378, 0x0000 }, {  378, 0x0000 },
+  {  378, 0x0000 }, {  378, 0x0000 }, {  378, 0x0000 }, {  378, 0x0000 },
+  {  378, 0x0000 }, {  378, 0x0000 }, {  378, 0x0000 }, {  378, 0x0000 },
+  /* 0x6300 */
+  {  378, 0x0000 }, {  378, 0x0000 }, {  378, 0x0000 }, {  378, 0x4000 },
+  {  379, 0x0000 }, {  379, 0x0000 }, {  379, 0x4900 }, {  382, 0x0004 },
+  {  383, 0x0018 }, {  385, 0x0000 }, {  385, 0x0000 }, {  385, 0x0000 },
+  {  385, 0x0001 }, {  386, 0x0400 }, {  387, 0x4000 }, {  388, 0x0000 },
+  /* 0x6400 */
+  {  388, 0x2000 }, {  389, 0x0080 }, {  390, 0x0000 }, {  390, 0x0040 },
+  {  391, 0x0000 }, {  391, 0x9002 }, {  394, 0x8000 }, {  395, 0x0848 },
+  {  398, 0x0100 }, {  399, 0x8008 }, {  401, 0x0828 }, {  404, 0xc80c },
+  {  409, 0x0c92 }, {  414, 0x0410 }, {  416, 0x9001 }, {  419, 0x5c97 },
+  /* 0x6500 */
+  {  428, 0x8050 }, {  431, 0x2a50 }, {  436, 0x141c }, {  441, 0x0000 },
+  {  441, 0x0000 }, {  441, 0x0080 }, {  442, 0x0000 }, {  442, 0x0120 },
+  {  444, 0x000c }, {  446, 0x00a0 }, {  448, 0x1000 }, {  449, 0x0080 },
+  {  450, 0x0000 }, {  450, 0x0000 }, {  450, 0x0000 }, {  450, 0x0000 },
+  /* 0x6600 */
+  {  450, 0x0000 }, {  450, 0x0000 }, {  450, 0x0000 }, {  450, 0x0000 },
+  {  450, 0x0004 }, {  451, 0x2000 }, {  452, 0x0000 }, {  452, 0x0000 },
+  {  452, 0x0300 }, {  454, 0x0000 }, {  454, 0x0804 }, {  456, 0x0000 },
+  {  456, 0x02d0 }, {  460, 0x0040 }, {  461, 0x1001 }, {  463, 0x0100 },
+  /* 0x6700 */
+  {  464, 0x0008 }, {  465, 0x0000 }, {  465, 0x8080 }, {  467, 0x0010 },
+  {  468, 0x0000 }, {  468, 0x0000 }, {  468, 0x0000 }, {  468, 0x4002 },
+  {  470, 0x0000 }, {  470, 0x0000 }, {  470, 0x0000 }, {  470, 0x0000 },
+  {  470, 0x0000 }, {  470, 0x0000 }, {  470, 0x0000 }, {  470, 0x0000 },
+  /* 0x6800 */
+  {  470, 0x0000 }, {  470, 0x0000 }, {  470, 0x0000 }, {  470, 0x0000 },
+  {  470, 0x0000 }, {  470, 0x0000 }, {  470, 0x0000 }, {  470, 0x0000 },
+  {  470, 0x0000 }, {  470, 0xa100 }, {  473, 0x0000 }, {  473, 0x0000 },
+  {  473, 0x0000 }, {  473, 0x80c0 }, {  476, 0x0080 }, {  477, 0x0000 },
+  /* 0x6900 */
+  {  477, 0x8000 }, {  478, 0x0000 }, {  478, 0x0000 }, {  478, 0x0000 },
+  {  478, 0x0400 }, {  479, 0x0008 }, {  480, 0x2100 }, {  482, 0x0020 },
+  {  483, 0x0000 }, {  483, 0x0000 }, {  483, 0x4400 }, {  485, 0x8000 },
+  {  486, 0x2800 }, {  488, 0x0000 }, {  488, 0x0080 }, {  489, 0x0008 },
+  /* 0x6a00 */
+  {  490, 0x0026 }, {  493, 0x4208 }, {  496, 0x0008 }, {  497, 0x0700 },
+  {  500, 0x0900 }, {  502, 0x8000 }, {  503, 0x0004 }, {  504, 0x0000 },
+  {  504, 0x0200 }, {  505, 0x1010 }, {  507, 0x800c }, {  510, 0x0908 },
+  {  513, 0x0008 }, {  514, 0xec08 }, {  520, 0x1580 }, {  524, 0x0908 },
+  /* 0x6b00 */
+  {  527, 0x8410 }, {  530, 0x4044 }, {  533, 0x0000 }, {  533, 0x2000 },
+  {  534, 0x0000 }, {  534, 0x8001 }, {  536, 0x0002 }, {  537, 0x0184 },
+  {  540, 0x0000 }, {  540, 0x4100 }, {  542, 0xc810 }, {  546, 0x0c04 },
+  {  549, 0x0040 }, {  550, 0x0000 }, {  550, 0x0000 }, {  550, 0x8000 },
+  /* 0x6c00 */
+  {  551, 0x1100 }, {  553, 0x0000 }, {  553, 0x1808 }, {  556, 0x0000 },
+  {  556, 0x0000 }, {  556, 0x0000 }, {  556, 0x0000 }, {  556, 0x0000 },
+  {  556, 0x0000 }, {  556, 0x0000 }, {  556, 0x0000 }, {  556, 0x0000 },
+  {  556, 0x0000 }, {  556, 0x0000 }, {  556, 0x0000 }, {  556, 0x0000 },
+  /* 0x6d00 */
+  {  556, 0x0000 }, {  556, 0x0000 }, {  556, 0x0000 }, {  556, 0x0000 },
+  {  556, 0x0000 }, {  556, 0x0000 }, {  556, 0x0000 }, {  556, 0x0200 },
+  {  557, 0x0084 }, {  559, 0x0000 }, {  559, 0x0000 }, {  559, 0x0000 },
+  {  559, 0x0001 }, {  560, 0x0000 }, {  560, 0x0400 }, {  561, 0x0460 },
+  /* 0x6e00 */
+  {  564, 0x0000 }, {  564, 0x0000 }, {  564, 0x1040 }, {  566, 0x4000 },
+  {  567, 0x0000 }, {  567, 0x4000 }, {  568, 0x8000 }, {  569, 0x0000 },
+  {  569, 0x0000 }, {  569, 0x2040 }, {  571, 0x0000 }, {  571, 0x0000 },
+  {  571, 0x5030 }, {  575, 0x0000 }, {  575, 0x9000 }, {  577, 0x8184 },
+  /* 0x6f00 */
+  {  581, 0x0002 }, {  582, 0x0400 }, {  583, 0x100c }, {  586, 0x8104 },
+  {  589, 0x0002 }, {  590, 0x0212 }, {  593, 0x8010 }, {  595, 0x8081 },
+  {  598, 0x00c1 }, {  601, 0x0080 }, {  602, 0x4211 }, {  606, 0x0002 },
+  {  607, 0x000a }, {  609, 0x8920 }, {  613, 0x0810 }, {  615, 0x5403 },
+  /* 0x7000 */
+  {  620, 0x8a60 }, {  625, 0xa120 }, {  629, 0x0181 }, {  632, 0x4005 },
+  {  635, 0x0018 }, {  637, 0x2122 }, {  641, 0x0098 }, {  644, 0x0000 },
+  {  644, 0x0000 }, {  644, 0x0000 }, {  644, 0x0000 }, {  644, 0x0000 },
+  {  644, 0x8000 }, {  645, 0x0000 }, {  645, 0x0000 }, {  645, 0x0010 },
+  /* 0x7100 */
+  {  646, 0x0000 }, {  646, 0x0000 }, {  646, 0x0002 }, {  647, 0x0000 },
+  {  647, 0x0200 }, {  648, 0x0004 }, {  649, 0x1204 }, {  652, 0x0000 },
+  {  652, 0x0000 }, {  652, 0x0084 }, {  654, 0x0000 }, {  654, 0x4002 },
+  {  656, 0x0102 }, {  658, 0x9204 }, {  662, 0x2040 }, {  664, 0x5010 },
+  /* 0x7200 */
+  {  667, 0x2000 }, {  668, 0x0801 }, {  670, 0x0000 }, {  670, 0x4404 },
+  {  673, 0x0000 }, {  673, 0x0100 }, {  674, 0x0000 }, {  674, 0x2000 },
+  {  675, 0x0000 }, {  675, 0x0040 }, {  676, 0x0084 }, {  678, 0x0000 },
+  {  678, 0x0001 }, {  679, 0x0000 }, {  679, 0x0000 }, {  679, 0x2200 },
+  /* 0x7300 */
+  {  681, 0x0000 }, {  681, 0x0000 }, {  681, 0x0000 }, {  681, 0x0840 },
+  {  683, 0x0032 }, {  686, 0x0000 }, {  686, 0x0d00 }, {  689, 0x1da5 },
+  {  697, 0x0001 }, {  698, 0x0000 }, {  698, 0x0000 }, {  698, 0x0000 },
+  {  698, 0x0000 }, {  698, 0x0000 }, {  698, 0x0000 }, {  698, 0x4000 },
+  /* 0x7400 */
+  {  699, 0x0000 }, {  699, 0x0000 }, {  699, 0x0000 }, {  699, 0x8000 },
+  {  700, 0x0800 }, {  701, 0x0000 }, {  701, 0x0608 }, {  704, 0x0000 },
+  {  704, 0x0200 }, {  705, 0x0000 }, {  705, 0x0048 }, {  707, 0x2001 },
+  {  709, 0x8400 }, {  711, 0x0410 }, {  713, 0x0000 }, {  713, 0x0000 },
+  /* 0x7500 */
+  {  713, 0x1000 }, {  714, 0x0000 }, {  714, 0x0008 }, {  715, 0x0000 },
+  {  715, 0x0000 }, {  715, 0x2000 }, {  716, 0x0804 }, {  718, 0x0040 },
+  {  719, 0x0080 }, {  720, 0x0000 }, {  720, 0x0000 }, {  720, 0x0000 },
+  {  720, 0x0080 }, {  721, 0x0200 }, {  722, 0x0000 }, {  722, 0x0000 },
+  /* 0x7600 */
+  {  722, 0x2804 }, {  725, 0x4000 }, {  726, 0x0082 }, {  728, 0x0800 },
+  {  729, 0x02c4 }, {  733, 0x8100 }, {  735, 0x72b4 }, {  743, 0x1007 },
+  {  747, 0x0000 }, {  747, 0x0400 }, {  748, 0x0000 }, {  748, 0x0500 },
+  {  750, 0x0000 }, {  750, 0x4000 }, {  751, 0x009a }, {  755, 0x0000 },
+  /* 0x7700 */
+  {  755, 0x0000 }, {  755, 0x0000 }, {  755, 0x0000 }, {  755, 0x0000 },
+  {  755, 0x8000 }, {  756, 0x4000 }, {  757, 0x0000 }, {  757, 0x0000 },
+  {  757, 0x0000 }, {  757, 0x4100 }, {  759, 0x2000 }, {  760, 0x1000 },
+  {  761, 0x0080 }, {  762, 0x0400 }, {  763, 0x8000 }, {  764, 0x0000 },
+  /* 0x7800 */
+  {  764, 0x0000 }, {  764, 0x0000 }, {  764, 0x0000 }, {  764, 0x0000 },
+  {  764, 0x0008 }, {  765, 0x0000 }, {  765, 0xc110 }, {  769, 0x0000 },
+  {  769, 0x0000 }, {  769, 0x0000 }, {  769, 0x2200 }, {  771, 0x1500 },
+  {  774, 0x0000 }, {  774, 0x0400 }, {  775, 0x8088 }, {  778, 0x2000 },
+  /* 0x7900 */
+  {  779, 0x4000 }, {  780, 0x0200 }, {  781, 0x1c40 }, {  785, 0x0002 },
+  {  786, 0x0000 }, {  786, 0x0000 }, {  786, 0x0000 }, {  786, 0x0000 },
+  {  786, 0x6000 }, {  788, 0x0000 }, {  788, 0x4440 }, {  791, 0x0003 },
+  {  793, 0x2000 }, {  794, 0x0000 }, {  794, 0x0000 }, {  794, 0x0000 },
+  /* 0x7a00 */
+  {  794, 0x0000 }, {  794, 0x0000 }, {  794, 0x4000 }, {  795, 0x0002 },
+  {  796, 0x7001 }, {  800, 0x0000 }, {  800, 0x0a06 }, {  804, 0x0000 },
+  {  804, 0x0000 }, {  804, 0x0000 }, {  804, 0x4600 }, {  807, 0x0440 },
+  {  809, 0x05b0 }, {  814, 0x0000 }, {  814, 0x0400 }, {  815, 0x0040 },
+  /* 0x7b00 */
+  {  816, 0x0000 }, {  816, 0x0000 }, {  816, 0x0000 }, {  816, 0x0000 },
+  {  816, 0x0040 }, {  817, 0x0002 }, {  818, 0x0080 }, {  819, 0x0000 },
+  {  819, 0x0800 }, {  820, 0x0000 }, {  820, 0x0000 }, {  820, 0x0000 },
+  {  820, 0x0a11 }, {  824, 0x0000 }, {  824, 0x0210 }, {  826, 0x0008 },
+  /* 0x7c00 */
+  {  827, 0x2001 }, {  829, 0x4000 }, {  830, 0x080a }, {  833, 0x6000 },
+  {  835, 0x1008 }, {  837, 0x9000 }, {  839, 0x5611 }, {  845, 0x0004 },
+  {  846, 0x0000 }, {  846, 0x0000 }, {  846, 0x0000 }, {  846, 0x0000 },
+  {  846, 0x0000 }, {  846, 0x6000 }, {  848, 0x0080 }, {  849, 0x4255 },
+  /* 0x7d00 */
+  {  855, 0x2bf5 }, {  865, 0x1eb9 }, {  874, 0x0002 }, {  875, 0x960f },
+  {  883, 0x4055 }, {  888, 0x6001 }, {  891, 0x0146 }, {  895, 0x024e },
+  {  900, 0x834a }, {  906, 0x5008 }, {  909, 0x380c }, {  914, 0xef1f },
+  {  926, 0x0c90 }, {  930, 0x6396 }, {  938, 0x934b }, {  946, 0x0a56 },
+  /* 0x7e00 */
+  {  952, 0x0f00 }, {  956, 0xe803 }, {  962, 0x6888 }, {  967, 0x62f6 },
+  {  976, 0x0060 }, {  978, 0x4434 }, {  983, 0xee04 }, {  990, 0x7209 },
+  {  996, 0xb500 }, { 1001, 0x1158 }, { 1006, 0x0000 }, { 1006, 0x0000 },
+  { 1006, 0x0000 }, { 1006, 0x0000 }, { 1006, 0x0000 }, { 1006, 0x0000 },
+  /* 0x7f00 */
+  { 1006, 0x0000 }, { 1006, 0x0000 }, { 1006, 0x0000 }, { 1006, 0x0000 },
+  { 1006, 0x5000 }, { 1008, 0x0000 }, { 1008, 0x0000 }, { 1008, 0x0081 },
+  { 1010, 0x0160 }, { 1013, 0x0000 }, { 1013, 0x0220 }, { 1015, 0x0000 },
+  { 1015, 0x0000 }, { 1015, 0x0004 }, { 1016, 0x0000 }, { 1016, 0x0200 },
+  /* 0x8000 */
+  { 1017, 0x0000 }, { 1017, 0x0000 }, { 1017, 0x5000 }, { 1019, 0x0000 },
+  { 1019, 0x0000 }, { 1019, 0x4040 }, { 1021, 0x8000 }, { 1022, 0x62ed },
+  { 1031, 0x0020 }, { 1032, 0x0000 }, { 1032, 0x0000 }, { 1032, 0x0000 },
+  { 1032, 0x0000 }, { 1032, 0x0000 }, { 1032, 0x0000 }, { 1032, 0x0000 },
+  /* 0x8100 */
+  { 1032, 0x0020 }, { 1033, 0x0800 }, { 1034, 0x0000 }, { 1034, 0x0200 },
+  { 1035, 0x4400 }, { 1037, 0x0040 }, { 1038, 0x0842 }, { 1041, 0x0100 },
+  { 1042, 0x0000 }, { 1042, 0x0400 }, { 1043, 0x0201 }, { 1045, 0xe000 },
+  { 1048, 0xa200 }, { 1051, 0x8500 }, { 1054, 0x0101 }, { 1056, 0x0400 },
+  /* 0x8200 */
+  { 1057, 0x2780 }, { 1062, 0x0000 }, { 1062, 0x0000 }, { 1062, 0x0000 },
+  { 1062, 0x0000 }, { 1062, 0x0200 }, { 1063, 0x0850 }, { 1066, 0x0082 },
+  { 1068, 0x0000 }, { 1068, 0x0000 }, { 1068, 0x0000 }, { 1068, 0x0800 },
+  { 1069, 0x0000 }, { 1069, 0x0000 }, { 1069, 0x0080 }, { 1070, 0x0200 },
+  /* 0x8300 */
+  { 1071, 0x0008 }, { 1072, 0x0000 }, { 1072, 0x0000 }, { 1072, 0x0000 },
+  { 1072, 0x0000 }, { 1072, 0x0001 }, { 1073, 0x0000 }, { 1073, 0x0000 },
+  { 1073, 0x0400 }, { 1074, 0x0040 }, { 1075, 0x0084 }, { 1077, 0x0000 },
+  { 1077, 0x0000 }, { 1077, 0x0000 }, { 1077, 0x8000 }, { 1078, 0x0000 },
+  /* 0x8400 */
+  { 1078, 0x0480 }, { 1080, 0x0000 }, { 1080, 0x1000 }, { 1081, 0x0020 },
+  { 1082, 0x0200 }, { 1083, 0x0004 }, { 1084, 0x8050 }, { 1087, 0x0080 },
+  { 1088, 0x0000 }, { 1088, 0x0018 }, { 1090, 0x0000 }, { 1090, 0x1000 },
+  { 1091, 0x0801 }, { 1093, 0x0000 }, { 1093, 0xc000 }, { 1095, 0x2000 },
+  /* 0x8500 */
+  { 1096, 0x0000 }, { 1096, 0x4010 }, { 1098, 0x2048 }, { 1101, 0x0000 },
+  { 1101, 0x4042 }, { 1104, 0x012c }, { 1108, 0x2604 }, { 1112, 0x0080 },
+  { 1113, 0x1500 }, { 1116, 0x8012 }, { 1119, 0x0240 }, { 1121, 0x0400 },
+  { 1122, 0x6000 }, { 1124, 0x2000 }, { 1125, 0x0420 }, { 1127, 0x0650 },
+  /* 0x8600 */
+  { 1131, 0x08d0 }, { 1135, 0x4400 }, { 1137, 0x2004 }, { 1139, 0x8400 },
+  { 1141, 0x0000 }, { 1141, 0x9020 }, { 1144, 0x0080 }, { 1145, 0x0000 },
+  { 1145, 0x0000 }, { 1145, 0x0000 }, { 1145, 0x0000 }, { 1145, 0x0000 },
+  { 1145, 0x0000 }, { 1145, 0x0000 }, { 1145, 0x0000 }, { 1145, 0x0400 },
+  /* 0x8700 */
+  { 1146, 0x0040 }, { 1147, 0x0000 }, { 1147, 0x0002 }, { 1148, 0x0000 },
+  { 1148, 0x0000 }, { 1148, 0x0020 }, { 1149, 0x0040 }, { 1150, 0x0100 },
+  { 1151, 0x0010 }, { 1152, 0x4000 }, { 1153, 0x0004 }, { 1154, 0x0800 },
+  { 1155, 0x4110 }, { 1158, 0x0000 }, { 1158, 0x9008 }, { 1161, 0x0844 },
+  /* 0x8800 */
+  { 1164, 0x0060 }, { 1166, 0x8003 }, { 1169, 0x0008 }, { 1170, 0x0842 },
+  { 1173, 0x0440 }, { 1175, 0x2808 }, { 1178, 0x0000 }, { 1178, 0x0200 },
+  { 1179, 0x0000 }, { 1179, 0x0000 }, { 1179, 0x0000 }, { 1179, 0x0000 },
+  { 1179, 0x8400 }, { 1181, 0x3000 }, { 1183, 0x0000 }, { 1183, 0x2000 },
+  /* 0x8900 */
+  { 1184, 0x0080 }, { 1185, 0x0000 }, { 1185, 0x0000 }, { 1185, 0x090c },
+  { 1189, 0x0080 }, { 1190, 0x2040 }, { 1192, 0x9411 }, { 1197, 0x0004 },
+  { 1198, 0x8800 }, { 1200, 0x0148 }, { 1203, 0x9442 }, { 1208, 0xa484 },
+  { 1213, 0x0001 }, { 1214, 0x0000 }, { 1214, 0x0000 }, { 1214, 0x0150 },
+  /* 0x8a00 */
+  { 1217, 0x550e }, { 1224, 0xa969 }, { 1232, 0x2428 }, { 1236, 0x0452 },
+  { 1240, 0x4042 }, { 1243, 0x4935 }, { 1250, 0x7a4e }, { 1259, 0x902f },
+  { 1266, 0x20f0 }, { 1271, 0x4526 }, { 1277, 0x117b }, { 1285, 0x9245 },
+  { 1291, 0xaa94 }, { 1298, 0x58c6 }, { 1305, 0x68d4 }, { 1312, 0x55ca },
+  /* 0x8b00 */
+  { 1320, 0x4437 }, { 1327, 0x2ed1 }, { 1335, 0x3902 }, { 1340, 0x4208 },
+  { 1343, 0xc200 }, { 1346, 0x1740 }, { 1351, 0x8800 }, { 1353, 0x2091 },
+  { 1357, 0x4401 }, { 1360, 0x506c }, { 1366, 0x0000 }, { 1366, 0x0000 },
+  { 1366, 0x0000 }, { 1366, 0x0000 }, { 1366, 0x0000 }, { 1366, 0x0000 },
+  /* 0x8c00 */
+  { 1366, 0x0000 }, { 1366, 0x0000 }, { 1366, 0x0000 }, { 1366, 0x0000 },
+  { 1366, 0x0100 }, { 1367, 0x0001 }, { 1368, 0x0000 }, { 1368, 0x0000 },
+  { 1368, 0x0000 }, { 1368, 0x6000 }, { 1370, 0x9f87 }, { 1380, 0xbddd },
+  { 1392, 0x05bf }, { 1401, 0x542e }, { 1408, 0x3cdf }, { 1419, 0x7c10 },
+  /* 0x8d00 */
+  { 1425, 0xad30 }, { 1432, 0x1841 }, { 1436, 0x0000 }, { 1436, 0x0000 },
+  { 1436, 0x0000 }, { 1436, 0x0000 }, { 1436, 0x0000 }, { 1436, 0x0000 },
+  { 1436, 0x0000 }, { 1436, 0x0220 }, { 1438, 0x0100 }, { 1439, 0x0004 },
+  { 1440, 0x0000 }, { 1440, 0x0000 }, { 1440, 0x0000 }, { 1440, 0x0000 },
+  /* 0x8e00 */
+  { 1440, 0x0000 }, { 1440, 0x0001 }, { 1441, 0x0000 }, { 1441, 0x0010 },
+  { 1442, 0x1000 }, { 1443, 0x0020 }, { 1444, 0x0008 }, { 1445, 0x0400 },
+  { 1446, 0x2e00 }, { 1450, 0x040e }, { 1454, 0x0462 }, { 1458, 0x0000 },
+  { 1458, 0x3c01 }, { 1463, 0x8814 }, { 1467, 0x0810 }, { 1469, 0x5f04 },
+  /* 0x8f00 */
+  { 1476, 0x06a8 }, { 1481, 0xf834 }, { 1489, 0x8660 }, { 1494, 0xc908 },
+  { 1499, 0x6274 }, { 1506, 0x8010 }, { 1508, 0x0016 }, { 1511, 0x0000 },
+  { 1511, 0x0000 }, { 1511, 0x0000 }, { 1511, 0xe040 }, { 1515, 0x0004 },
+  { 1516, 0x0000 }, { 1516, 0x0000 }, { 1516, 0x0000 }, { 1516, 0x0010 },
+  /* 0x9000 */
+  { 1517, 0x0000 }, { 1517, 0x0220 }, { 1519, 0x0008 }, { 1520, 0x0004 },
+  { 1521, 0x4800 }, { 1523, 0x5030 }, { 1527, 0x0201 }, { 1529, 0x1584 },
+  { 1534, 0x8492 }, { 1539, 0x0001 }, { 1540, 0x0000 }, { 1540, 0x0000 },
+  { 1540, 0x0002 }, { 1541, 0x8000 }, { 1542, 0x0000 }, { 1542, 0x0020 },
+  /* 0x9100 */
+  { 1543, 0x0240 }, { 1545, 0x0054 }, { 1548, 0x2080 }, { 1550, 0x0455 },
+  { 1555, 0x0100 }, { 1556, 0x0000 }, { 1556, 0x0000 }, { 1556, 0x0000 },
+  { 1556, 0x0000 }, { 1556, 0x1040 }, { 1558, 0x1800 }, { 1560, 0x0000 },
+  { 1560, 0x182b }, { 1566, 0x23bc }, { 1574, 0x0298 }, { 1578, 0x06a0 },
+  /* 0x9200 */
+  { 1582, 0x6313 }, { 1589, 0x4033 }, { 1594, 0x40e8 }, { 1599, 0xe799 },
+  { 1609, 0x2321 }, { 1614, 0x4ca2 }, { 1620, 0x3044 }, { 1624, 0x8d00 },
+  { 1628, 0x0029 }, { 1631, 0x154a }, { 1637, 0x1f69 }, { 1646, 0x1a82 },
+  { 1651, 0x90aa }, { 1657, 0xa004 }, { 1660, 0xe578 }, { 1669, 0x1143 },
+  /* 0x9300 */
+  { 1674, 0x01c2 }, { 1678, 0x8f25 }, { 1686, 0xc945 }, { 1693, 0x014c },
+  { 1697, 0x28cb }, { 1704, 0x0910 }, { 1707, 0x1230 }, { 1711, 0x4461 },
+  { 1716, 0x0494 }, { 1720, 0x0140 }, { 1722, 0x56cc }, { 1730, 0x8129 },
+  { 1735, 0x3188 }, { 1740, 0xf182 }, { 1747, 0x0116 }, { 1751, 0x02a0 },
+  /* 0x9400 */
+  { 1754, 0x0808 }, { 1756, 0x231d }, { 1763, 0x41c1 }, { 1768, 0x852c },
+  { 1774, 0x1410 }, { 1777, 0x0014 }, { 1779, 0x2029 }, { 1783, 0xf285 },
+  { 1791, 0x0000 }, { 1791, 0x0000 }, { 1791, 0x0000 }, { 1791, 0x0000 },
+  { 1791, 0x0000 }, { 1791, 0x0000 }, { 1791, 0x0000 }, { 1791, 0x0000 },
+  /* 0x9500 */
+  { 1791, 0x0000 }, { 1791, 0x0000 }, { 1791, 0x0000 }, { 1791, 0x0000 },
+  { 1791, 0x0000 }, { 1791, 0x0000 }, { 1791, 0x0000 }, { 1791, 0x0080 },
+  { 1792, 0xda4d }, { 1801, 0x011a }, { 1805, 0x3b3a }, { 1814, 0xfa44 },
+  { 1822, 0x1d48 }, { 1828, 0x5071 }, { 1834, 0x0026 }, { 1837, 0x0000 },
+  /* 0x9600 */
+  { 1837, 0x0000 }, { 1837, 0x0000 }, { 1837, 0x0000 }, { 1837, 0x0000 },
+  { 1837, 0x0000 }, { 1837, 0x2100 }, { 1839, 0x0008 }, { 1840, 0x2109 },
+  { 1844, 0x4400 }, { 1846, 0x0820 }, { 1848, 0x0500 }, { 1850, 0x0912 },
+  { 1854, 0x0000 }, { 1854, 0x1a40 }, { 1858, 0x000c }, { 1860, 0x0804 },
+  /* 0x9700 */
+  { 1862, 0x0000 }, { 1862, 0x0000 }, { 1862, 0x0080 }, { 1863, 0x2000 },
+  { 1864, 0x0114 }, { 1867, 0x0400 }, { 1868, 0x0100 }, { 1869, 0x0000 },
+  { 1869, 0x8000 }, { 1870, 0x0000 }, { 1870, 0x0040 }, { 1871, 0x2000 },
+  { 1872, 0x1a48 }, { 1877, 0x5208 }, { 1881, 0x0000 }, { 1881, 0x8000 },
+  /* 0x9800 */
+  { 1882, 0xd5ee }, { 1893, 0x118f }, { 1900, 0x2052 }, { 1904, 0x2981 },
+  { 1909, 0x7040 }, { 1913, 0x4b18 }, { 1919, 0x98a4 }, { 1925, 0x001b },
+  { 1929, 0x0000 }, { 1929, 0x0000 }, { 1929, 0xc100 }, { 1932, 0x104a },
+  { 1936, 0x0150 }, { 1939, 0x0800 }, { 1940, 0xae05 }, { 1947, 0x7014 },
+  /* 0x9900 */
+  { 1952, 0x1628 }, { 1957, 0x490e }, { 1963, 0x0102 }, { 1965, 0xd088 },
+  { 1970, 0x1f28 }, { 1977, 0x5086 }, { 1982, 0x0004 }, { 1983, 0x0000 },
+  { 1983, 0x0000 }, { 1983, 0x0000 }, { 1983, 0x7000 }, { 1986, 0x001a },
+  { 1989, 0x0002 }, { 1990, 0xab37 }, { 2000, 0x2006 }, { 2003, 0x8002 },
+  /* 0x9a00 */
+  { 2005, 0xe022 }, { 2010, 0x0240 }, { 2012, 0x6800 }, { 2015, 0x41c1 },
+  { 2020, 0xa43f }, { 2029, 0x8ca0 }, { 2034, 0x0434 }, { 2038, 0x0000 },
+  { 2038, 0x0000 }, { 2038, 0x0000 }, { 2038, 0x8000 }, { 2039, 0x0000 },
+  { 2039, 0x8000 }, { 2040, 0x0074 }, { 2044, 0x4000 }, { 2045, 0x0000 },
+  /* 0x9b00 */
+  { 2045, 0x2040 }, { 2047, 0x0400 }, { 2048, 0x42a4 }, { 2053, 0x0002 },
+  { 2054, 0x4000 }, { 2055, 0x0500 }, { 2057, 0x8000 }, { 2058, 0x0090 },
+  { 2060, 0x400a }, { 2063, 0x6407 }, { 2069, 0x6c00 }, { 2073, 0x0000 },
+  { 2073, 0x0683 }, { 2078, 0x2850 }, { 2082, 0x0d96 }, { 2089, 0xa011 },
+  /* 0x9c00 */
+  { 2093, 0x2300 }, { 2096, 0x000d }, { 2099, 0x2329 }, { 2105, 0x4aae },
+  { 2113, 0x0320 }, { 2116, 0xa1d4 }, { 2123, 0x2080 }, { 2125, 0x0500 },
+  { 2127, 0x0000 }, { 2127, 0x0000 }, { 2127, 0x0000 }, { 2127, 0x0000 },
+  { 2127, 0x0000 }, { 2127, 0x0000 }, { 2127, 0x1220 }, { 2130, 0x0058 },
+  /* 0x9d00 */
+  { 2133, 0x02c0 }, { 2136, 0xa820 }, { 2140, 0x8148 }, { 2144, 0x8801 },
+  { 2147, 0x0004 }, { 2148, 0x300e }, { 2153, 0x9403 }, { 2158, 0x0004 },
+  { 2159, 0x0280 }, { 2161, 0x0508 }, { 2164, 0x8220 }, { 2167, 0x1810 },
+  { 2170, 0x0015 }, { 2173, 0x0688 }, { 2177, 0x8060 }, { 2180, 0x070c },
+  /* 0x9e00 */
+  { 2185, 0x1000 }, { 2186, 0x6c20 }, { 2191, 0x0000 }, { 2191, 0x0000 },
+  { 2191, 0x0000 }, { 2191, 0x0000 }, { 2191, 0x0000 }, { 2191, 0x3620 },
+  { 2196, 0x0000 }, { 2196, 0x0080 }, { 2197, 0x8220 }, { 2200, 0x2020 },
+  { 2202, 0x1000 }, { 2203, 0x4000 }, { 2204, 0x0100 }, { 2205, 0xa094 },
+  /* 0x9f00 */
+  { 2210, 0x0200 }, { 2211, 0x0020 }, { 2212, 0x0000 }, { 2212, 0x0000 },
+  { 2212, 0x8c00 }, { 2215, 0x9214 }, { 2220, 0x144b }, { 2226, 0x0084 },
+  { 2228, 0x2000 }, { 2229, 0x1031 },
+};
+static const Summary16 gb12345ext_uni2indx_pagefe[5] = {
+  /* 0xfe00 */
+  { 2233, 0x0000 }, { 2233, 0x0000 }, { 2233, 0x0000 }, { 2233, 0xfffa },
+  { 2247, 0x001f },
+};
+
+static int
+gb12345ext_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 2) {
+    const Summary16 *summary = NULL;
+    if (wc >= 0x0100 && wc < 0x0270)
+      summary = &gb12345ext_uni2indx_page01[(wc>>4)-0x010];
+    else if (wc >= 0x1e00 && wc < 0x1e40)
+      summary = &gb12345ext_uni2indx_page1e[(wc>>4)-0x1e0];
+    else if (wc >= 0x2200 && wc < 0x2230)
+      summary = &gb12345ext_uni2indx_page22[(wc>>4)-0x220];
+    else if (wc >= 0x4e00 && wc < 0x9fa0)
+      summary = &gb12345ext_uni2indx_page4e[(wc>>4)-0x4e0];
+    else if (wc >= 0xfe00 && wc < 0xfe50)
+      summary = &gb12345ext_uni2indx_pagefe[(wc>>4)-0xfe0];
+    if (summary) {
+      unsigned short used = summary->used;
+      unsigned int i = wc & 0x0f;
+      if (used & ((unsigned short) 1 << i)) {
+        unsigned short c;
+        /* Keep in `used' only the bits 0..i-1. */
+        used &= ((unsigned short) 1 << i) - 1;
+        /* Add `summary->indx' and the number of bits set in `used'. */
+        used = (used & 0x5555) + ((used & 0xaaaa) >> 1);
+        used = (used & 0x3333) + ((used & 0xcccc) >> 2);
+        used = (used & 0x0f0f) + ((used & 0xf0f0) >> 4);
+        used = (used & 0x00ff) + (used >> 8);
+        c = gb12345ext_2charset[summary->indx + used];
+        r[0] = (c >> 8); r[1] = (c & 0xff);
+        return 2;
+      }
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/gb18030.h b/graf2d/win32gdk/gdk/src/iconv/gb18030.h
new file mode 100644
index 00000000000..e9502e1bdd8
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/gb18030.h
@@ -0,0 +1,382 @@
+/*
+ * Copyright (C) 1999-2001, 2005 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * GB18030
+ */
+
+/*
+ * GB18030, as specified in the GB18030 standard, is an extension of GBK.
+ *
+ * In what follows, page numbers refer to the GB18030 standard (second
+ * printing).
+ *
+ *
+ * It consists of the following parts:
+ *
+ * One-byte range:
+ *   ASCII        p. 2         0x{00..7F}
+ *
+ * Two-byte range:
+ *   GBK part 1   p. 10..12    0x{A1..A9}{A1..FE}
+ *   GBK part 2   p. 13..36    0x{B0..F7}{A1..FE}
+ *   GBK part 3   p. 37..52    0x{81..A0}{40..7E,80..FE}
+ *   GBK part 4   p. 53..81    0x{AA..FE}{40..7E,80..A0}
+ *   GBK part 5   p. 82        0x{A8..A9}{40..7E,80..A0}
+ *   UDA part 1   p. 83..84    0x{AA..AF}{A1..FE}              U+E000..U+E233
+ *   UDA part 2   p. 85..87    0x{F8..FE}{A1..FE}              U+E234..U+E4C5
+ *   UDA part 3   p. 88..90    0x{A1..A7}{40..7E,80..A0}       U+E4C6..U+E765
+ *
+ * Four-byte range:
+ *   BMP rest     p. 94..283   0x{81..84}{30..39}{81..FE}{30..39}
+ *                                                     rest of U+0080..U+FFFF
+ *   Planes 1-16  p. 5         0x{90..FE}{30..39}{81..FE}{30..39}
+ *                                                            U+10000..U+10FFFF
+ *
+ * To GBK part 1 were added:
+ * 1. 0xA2E3, 0xA8BF.
+ * 2. Characters mapped to the Unicode PUA
+ *      0xA2AB..0xA2B0                      U+E766..U+E76B
+ *      0xA2E4                              U+E76D
+ *      0xA2EF..0xA2F0                      U+E76E..U+E76F
+ *      0xA2FD..0xA2FE                      U+E770..U+E771
+ *      0xA4F4..0xA4FE                      U+E772..U+E77C
+ *      0xA5F7..0xA5FE                      U+E77D..U+E784
+ *      0xA6B9..0xA6C0                      U+E785..U+E78C
+ *      0xA6D9..0xA6DF [glyphs here!!]      U+E78D..U+E793
+ *      0xA6EC..0xA6ED [glyphs here!!]      U+E794..U+E795
+ *      0xA6F3         [glyphs here!!]      U+E796
+ *      0xA6F6..0xA6FE                      U+E797..U+E79F
+ *      0xA7C2..0xA7D0                      U+E7A0..U+E7AE
+ *      0xA7F2..0xA7FE                      U+E7AF..U+E7BB
+ *      0xA8BC         [glyphs here!!]      U+E7C7
+ *      0xA8C1..0xA8C4                      U+E7C9..U+E7CC
+ *      0xA8EA..0xA8FE                      U+E7CD..U+E7E1
+ *      0xA9A1..0xA9A3                      U+E7FE..U+E800
+ *      0xA9F0..0xA9FE                      U+E801..U+E80F
+ *
+ * To GBK part 2 were added:
+ * 3. Characters mapped to the Unicode PUA
+ *      0xD7FA..0xD7FE                      U+E810..0xE814
+ *
+ * To GBK part 3 nothing was added.
+ *
+ * To GBK part 4 were added:
+ * 4. 0xFE{50,54..58,5A..60,62..65,68..6B,6E..75,77..7D,80..8F,92..9F}.
+ * 5. Characters mapped to the Unicode PUA
+ *      0xFE51..0xFE53 [glyphs here!!]      U+E816..U+E818
+ *      0xFE59         [glyphs here!!]      U+E81E
+ *      0xFE61         [glyphs here!!]      U+E826
+ *      0xFE66..0xFE67 [glyphs here!!]      U+E82B..U+E82C
+ *      0xFE6C..0xFE6D [glyphs here!!]      U+E831..U+E832
+ *      0xFE76         [glyphs here!!]      U+E83B
+ *      0xFE7E         [glyphs here!!]      U+E843
+ *      0xFE90..0xFE91 [glyphs here!!]      U+E854..U+E855
+ *      0xFEA0         [glyphs here!!]      U+E864
+ *
+ * To GBK part 5 were added:
+ * 6. 0xA98A..0xA995.
+ * 7. Characters mapped to the Unicode PUA
+ *      0xA896..0xA8A0                      U+E7BC..U+E7C6
+ *      0xA958                              U+E7E2
+ *      0xA95B                              U+E7E3
+ *      0xA95D..0xA95F                      U+E7E4..U+E7E6
+ *      0xA997..0xA9A0                      U+E7F4..U+E7FD
+ *
+ * UDA part 1 contains the user-defined characters, mapped to the Unicode PUA
+ * U+E000..U+E233 in ascending order.
+ *
+ * UDA part 2 contains the user-defined characters, mapped to the Unicode PUA
+ * U+E234..U+E4C5 in ascending order.
+ *
+ * UDA part 3 contains the user-defined characters, mapped to the Unicode PUA
+ * U+E4C6..U+E765 in ascending order.
+ *
+ * The four-byte range 0x{81..84}{30..39}{81..FE}{30..39}
+ * contains the rest of the Unicode BMP in ascending order.
+ *    Start: 0x81308130 = 0x0080
+ *    End:   0x8431A439 = 0xFFFF
+ *
+ * The four-byte range 0x{90..E3}{30..39}{81..FE}{30..39}
+ * contains the remaining 16 Unicode planes in Unicode order.
+ *    Start: 0x90308130 = 0x010000
+ *    End:   0xE3329A35 = 0x10FFFF
+ *
+ *
+ * Unassigned Unicode characters are mapped. For example,
+ *   U+173F = 0x8134BF35   (p. 120)
+ *   U+2EFF = 0x81398B31   (p. 148)
+ *   U+FFFE = 0x8431A438   (p. 283)
+ *
+ *
+ * The Unicode PUA (U+E000..U+F8FF) is mapped as follows:
+ *   p. 83..84    0x{AA..AF}{A1..FE}                  U+E000..U+E233
+ *   p. 85..87    0x{F8..FE}{A1..FE}                  U+E234..U+E4C5
+ *   p. 88..90    0x{A1..A7}{40..7E,80..A0}           U+E4C6..U+E765
+ *   p. 10        0xA2AB..0xA2B0                      U+E766..U+E76B
+ *   p. 255       0x8336C739                          U+E76C
+ *   p. 10        0xA2E4                              U+E76D
+ *   p. 10        0xA2EF..0xA2F0                      U+E76E..U+E76F
+ *   p. 10        0xA2FD..0xA2FE                      U+E770..U+E771
+ *   p. 11        0xA4F4..0xA4FE                      U+E772..U+E77C
+ *   p. 11        0xA5F7..0xA5FE                      U+E77D..U+E784
+ *   p. 11        0xA6B9..0xA6C0                      U+E785..U+E78C
+ *   p. 11        0xA6D9..0xA6DF [glyphs here!!]      U+E78D..U+E793
+ *   p. 11        0xA6EC..0xA6ED [glyphs here!!]      U+E794..U+E795
+ *   p. 11        0xA6F3 [glyphs here!!]              U+E796
+ *   p. 11        0xA6F6..0xA6FE                      U+E797..U+E79F
+ *   p. 12        0xA7C2..0xA7D0                      U+E7A0..U+E7AE
+ *   p. 12        0xA7F2..0xA7FE                      U+E7AF..U+E7BB
+ *   p. 82        0xA896..0xA8A0                      U+E7BC..U+E7C6
+ *   p. 12        0xA8BC [glyphs here!!]              U+E7C7
+ *   p. 255       0x8336C830                          U+E7C8
+ *   p. 12        0xA8C1..0xA8C4                      U+E7C9..U+E7CC
+ *   p. 12        0xA8EA..0xA8FE                      U+E7CD..U+E7E1
+ *   p. 82        0xA958                              U+E7E2
+ *   p. 82        0xA95B                              U+E7E3
+ *   p. 82        0xA95D..0xA95F                      U+E7E4..U+E7E6
+ *   p. 255       0x8336C831..0x8336C933              U+E7E7..U+E7F3
+ *   p. 82        0xA997..0xA9A0                      U+E7F4..U+E7FD
+ *   p. 12        0xA9A1..0xA9A3                      U+E7FE..U+E800
+ *   p. 12        0xA9F0..0xA9FE                      U+E801..U+E80F
+ *   p. 26        0xD7FA..0xD7FE                      U+E810..0xE814
+ *   p. 255       0x8336C934                          U+E815
+ *   p. 81        0xFE51..0xFE53 [glyphs here!!]      U+E816..U+E818
+ *   p. 255       0x8336C935..0x8336C939              U+E819..U+E81D
+ *   p. 81        0xFE59 [glyphs here!!]              U+E81E
+ *   p. 255       0x8336CA30..0x8336CA36              U+E81F..U+E825
+ *   p. 81        0xFE61 [glyphs here!!]              U+E826
+ *   p. 255       0x8336CA37..0x8336CB30              U+E827..U+E82A
+ *   p. 81        0xFE66..0xFE67 [glyphs here!!]      U+E82B..U+E82C
+ *   p. 255       0x8336CB31..0x8336CB34              U+E82D..U+E830
+ *   p. 81        0xFE6C..0xFE6D [glyphs here!!]      U+E831..U+E832
+ *   p. 255       0x8336CB35..0x8336CC32              U+E833..U+E83A
+ *   p. 81        0xFE76 [glyphs here!!]              U+E83B
+ *   p. 255       0x8336CC33..0x8336CC39              U+E83C..U+E842
+ *   p. 81        0xFE7E [glyphs here!!]              U+E843
+ *   p. 255       0x8336CD30..0x8336CE35              U+E844..U+E853
+ *   p. 81        0xFE90..0xFE91 [glyphs here!!]      U+E854..U+E855
+ *   p. 255       0x8336CE36..0x8336CF39              U+E856..U+E863
+ *   p. 81        0xFEA0 [glyphs here!!]              U+E864
+ *   p. 255..276  0x8336D030..0x84308130              U+E865..U+F8FF
+ *
+ *
+ * The Unicode surrogate area (U+D800..U+DFFF) is not mapped. (p. 255)
+ *
+ */
+
+#include "gb18030ext.h"
+#include "gb18030uni.h"
+
+static int
+gb18030_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  int ret;
+
+  /* Code set 0 (ASCII) */
+  if (*s < 0x80)
+    return ascii_mbtowc(conv,pwc,s,n);
+
+  /* Code set 1 (GBK extended) */
+  ret = gbk_mbtowc(conv,pwc,s,n);
+  if (ret != RET_ILSEQ)
+    return ret;
+
+  ret = gb18030ext_mbtowc(conv,pwc,s,n);
+  if (ret != RET_ILSEQ)
+    return ret;
+
+  /* Code set 2 (remainder of Unicode U+0000..U+FFFF), including
+     User-defined characters, two-byte part of range U+E766..U+E864 */
+  ret = gb18030uni_mbtowc(conv,pwc,s,n);
+  if (ret != RET_ILSEQ)
+    return ret;
+  /* User-defined characters range U+E000..U+E765 */
+  {
+    unsigned char c1 = s[0];
+    if ((c1 >= 0xaa && c1 <= 0xaf) || (c1 >= 0xf8 && c1 <= 0xfe)) {
+      if (n >= 2) {
+        unsigned char c2 = s[1];
+        if (c2 >= 0xa1 && c2 <= 0xfe) {
+          *pwc = 0xe000 + 94 * (c1 >= 0xf8 ? c1 - 0xf2 : c1 - 0xaa) + (c2 - 0xa1);
+          return 2;
+        }
+      } else
+        return RET_TOOFEW(0);
+    } else if (c1 >= 0xa1 && c1 <= 0xa7) {
+      if (n >= 2) {
+        unsigned char c2 = s[1];
+        if (c2 >= 0x40 && c2 <= 0xa1 && c2 != 0x7f) {
+          *pwc = 0xe4c6 + 96 * (c1 - 0xa1) + c2 - (c2 >= 0x80 ? 0x41 : 0x40);
+          return 2;
+        }
+      } else
+        return RET_TOOFEW(0);
+    }
+  }
+
+  /* Code set 3 (Unicode U+10000..U+10FFFF) */
+  {
+    unsigned char c1 = s[0];
+    if (c1 >= 0x90 && c1 <= 0xe3) {
+      if (n >= 2) {
+        unsigned char c2 = s[1];
+        if (c2 >= 0x30 && c2 <= 0x39) {
+          if (n >= 3) {
+            unsigned char c3 = s[2];
+            if (c3 >= 0x81 && c3 <= 0xfe) {
+              if (n >= 4) {
+                unsigned char c4 = s[3];
+                if (c4 >= 0x30 && c4 <= 0x39) {
+                  unsigned int i = (((c1 - 0x90) * 10 + (c2 - 0x30)) * 126 + (c3 - 0x81)) * 10 + (c4 - 0x30);
+                  if (i >= 0 && i < 0x100000) {
+                    *pwc = (ucs4_t) (0x10000 + i);
+                    return 4;
+                  }
+                }
+                return RET_ILSEQ;
+              }
+              return RET_TOOFEW(0);
+            }
+            return RET_ILSEQ;
+          }
+          return RET_TOOFEW(0);
+        }
+        return RET_ILSEQ;
+      }
+      return RET_TOOFEW(0);
+    }
+    return RET_ILSEQ;
+  }
+}
+
+static const unsigned short gb18030_pua2charset[32*3] = {
+/* Unicode range   GB18030 range */
+  0xe766, 0xe76b,  0xa2ab, /*.. 0xa2b0, */
+  0xe76d, 0xe76d,  0xa2e4,
+  0xe76e, 0xe76f,  0xa2ef, /*.. 0xa2f0, */
+  0xe770, 0xe771,  0xa2fd, /*.. 0xa2fe, */
+  0xe772, 0xe77c,  0xa4f4, /*.. 0xa4fe, */
+  0xe77d, 0xe784,  0xa5f7, /*.. 0xa5fe, */
+  0xe785, 0xe78c,  0xa6b9, /*.. 0xa6c0, */
+  0xe78d, 0xe793,  0xa6d9, /*.. 0xa6df, */
+  0xe794, 0xe795,  0xa6ec, /*.. 0xa6ed, */
+  0xe796, 0xe796,  0xa6f3,
+  0xe797, 0xe79f,  0xa6f6, /*.. 0xa6fe, */
+  0xe7a0, 0xe7ae,  0xa7c2, /*.. 0xa7d0, */
+  0xe7af, 0xe7bb,  0xa7f2, /*.. 0xa7fe, */
+  0xe7bc, 0xe7c6,  0xa896, /*.. 0xa8a0, */
+  0xe7c7, 0xe7c7,  0xa8bc,
+  0xe7c9, 0xe7cc,  0xa8c1, /*.. 0xa8c4, */
+  0xe7cd, 0xe7e1,  0xa8ea, /*.. 0xa8fe, */
+  0xe7e2, 0xe7e2,  0xa958,
+  0xe7e3, 0xe7e3,  0xa95b,
+  0xe7e4, 0xe7e6,  0xa95d, /*.. 0xa95f, */
+  0xe7f4, 0xe800,  0xa997, /*.. 0xa9a3, */
+  0xe801, 0xe80f,  0xa9f0, /*.. 0xa9fe, */
+  0xe810, 0xe814,  0xd7fa, /*.. 0xd7fe, */
+  0xe816, 0xe818,  0xfe51, /*.. 0xfe53, */
+  0xe81e, 0xe81e,  0xfe59,
+  0xe826, 0xe826,  0xfe61,
+  0xe82b, 0xe82c,  0xfe66, /*.. 0xfe67, */
+  0xe831, 0xe832,  0xfe6c, /*.. 0xfe6d, */
+  0xe83b, 0xe83b,  0xfe76,
+  0xe843, 0xe843,  0xfe7e,
+  0xe854, 0xe855,  0xfe90, /*.. 0xfe91, */
+  0xe864, 0xe864,  0xfea0,
+};
+
+static int
+gb18030_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  int ret;
+
+  /* Code set 0 (ASCII) */
+  ret = ascii_wctomb(conv,r,wc,n);
+  if (ret != RET_ILUNI)
+    return ret;
+
+  /* Code set 1 (GBK extended) */
+  ret = gbk_wctomb(conv,r,wc,n);
+  if (ret != RET_ILUNI)
+    return ret;
+
+  ret = gb18030ext_wctomb(conv,r,wc,n);
+  if (ret != RET_ILUNI)
+    return ret;
+
+  /* Code set 2 (remainder of Unicode U+0000..U+FFFF) */
+  if (wc >= 0xe000 && wc <= 0xe864) {
+    if (n >= 2) {
+      if (wc < 0xe766) {
+        /* User-defined characters range U+E000..U+E765 */
+        if (wc < 0xe4c6) {
+          unsigned int i = wc - 0xe000;
+          r[1] = (i % 94) + 0xa1; i = i / 94;
+          r[0] = (i < 6 ? i + 0xaa : i + 0xf2);
+          return 2;
+        } else {
+          unsigned int i = wc - 0xe4c6;
+          r[0] = (i / 96) + 0xa1; i = i % 96;
+          r[1] = i + (i >= 0x3f ? 0x41 : 0x40);
+          return 2;
+        }
+      } else {
+        /* User-defined characters, two-byte part of range U+E766..U+E864 */
+        unsigned int k1 = 0;
+        unsigned int k2 = 32;
+        /* Invariant: We know that if wc occurs in Unicode interval in
+           gb18030_pua2charset, it does so at a k with  k1 <= k < k2. */
+        while (k1 < k2) {
+          unsigned int k = (k1 + k2) / 2;
+          if (wc < gb18030_pua2charset[k*3+0])
+            k2 = k;
+          else if (wc > gb18030_pua2charset[k*3+1])
+            k1 = k + 1;
+          else {
+            unsigned short c =
+              gb18030_pua2charset[k*3+2] + (wc - gb18030_pua2charset[k*3+0]);
+            r[0] = (c >> 8);
+            r[1] = (c & 0xff);
+            return 2;
+          }
+        }
+      }
+    } else
+      return RET_TOOSMALL;
+  }
+  ret = gb18030uni_wctomb(conv,r,wc,n);
+  if (ret != RET_ILUNI)
+    return ret;
+
+  /* Code set 3 (Unicode U+10000..U+10FFFF) */
+  if (n >= 4) {
+    if (wc >= 0x10000 && wc < 0x110000) {
+      unsigned int i = wc - 0x10000;
+      r[3] = (i % 10) + 0x30; i = i / 10;
+      r[2] = (i % 126) + 0x81; i = i / 126;
+      r[1] = (i % 10) + 0x30; i = i / 10;
+      r[0] = i + 0x90;
+      return 4;
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/gb18030ext.h b/graf2d/win32gdk/gdk/src/iconv/gb18030ext.h
new file mode 100644
index 00000000000..14b0e452ed0
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/gb18030ext.h
@@ -0,0 +1,300 @@
+/*
+ * Copyright (C) 1999-2001, 2005 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * GB18030 two-byte extension
+ */
+
+static const unsigned short gb18030ext_2uni_pagea9[13] = {
+  /* 0xa9 */
+  0x303e, 0x2ff0, 0x2ff1, 0x2ff2, 0x2ff3, 0x2ff4, 0x2ff5, 0x2ff6,
+  0x2ff7, 0x2ff8, 0x2ff9, 0x2ffa, 0x2ffb,
+};
+static const unsigned short gb18030ext_2uni_pagefe[96] = {
+  /* 0xfe */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x2e81, 0xe816, 0xe817, 0xe818, 0x2e84, 0x3473, 0x3447, 0x2e88,
+  0x2e8b, 0xe81e, 0x359e, 0x361a, 0x360e, 0x2e8c, 0x2e97, 0x396e,
+  0x3918, 0xe826, 0x39cf, 0x39df, 0x3a73, 0x39d0, 0xe82b, 0xe82c,
+  0x3b4e, 0x3c6e, 0x3ce0, 0x2ea7, 0xe831, 0xe832, 0x2eaa, 0x4056,
+  0x415f, 0x2eae, 0x4337, 0x2eb3, 0x2eb6, 0x2eb7, 0xe83b, 0x43b1,
+  0x43ac, 0x2ebb, 0x43dd, 0x44d6, 0x4661, 0x464c, 0xe843, 0x4723,
+  0x4729, 0x477c, 0x478d, 0x2eca, 0x4947, 0x497a, 0x497d, 0x4982,
+  0x4983, 0x4985, 0x4986, 0x499f, 0x499b, 0x49b7, 0x49b6, 0xe854,
+  0xe855, 0x4ca3, 0x4c9f, 0x4ca0, 0x4ca1, 0x4c77, 0x4ca2, 0x4d13,
+  0x4d14, 0x4d15, 0x4d16, 0x4d17, 0x4d18, 0x4d19, 0x4dae, 0xe864,
+};
+
+static int
+gb18030ext_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 == 0xa2) || (c1 >= 0xa4 && c1 <= 0xa9) || (c1 == 0xd7) || (c1 == 0xfe)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if ((c2 >= 0x40 && c2 < 0x7f) || (c2 >= 0x80 && c2 < 0xff)) {
+        unsigned int i = 190 * (c1 - 0x81) + (c2 - (c2 >= 0x80 ? 0x41 : 0x40));
+        unsigned short wc = 0xfffd;
+        switch (c1) {
+          case 0xa2:
+            if (i >= 6376 && i <= 6381) /* 0xA2AB..0xA2B0 */
+              wc = 0xe766 + (i - 6376);
+            else if (i == 6432) /* 0xA2E3 */
+              wc = 0x20ac;
+            else if (i == 6433) /* 0xA2E4 */
+              wc = 0xe76d;
+            else if (i >= 6444 && i <= 6445) /* 0xA2EF..0xA2F0 */
+              wc = 0xe76e + (i - 6444);
+            else if (i >= 6458 && i <= 6459) /* 0xA2FD..0xA2FE */
+              wc = 0xe770 + (i - 6458);
+            break;
+          case 0xa4:
+            if (i >= 6829 && i <= 6839) /* 0xA4F4..0xA4FE */
+              wc = 0xe772 + (i - 6829);
+            break;
+          case 0xa5:
+            if (i >= 7022 && i <= 7029) /* 0xA5F7..0xA5FE */
+              wc = 0xe77d + (i - 7022);
+            break;
+          case 0xa6:
+            if (i >= 7150 && i <= 7157) /* 0xA6B9..0xA6C0 */
+              wc = 0xe785 + (i - 7150);
+            else if (i >= 7182 && i <= 7190) /* 0xA6D9..0xA6DF */
+              wc = 0xe78d + (i - 7182);
+            else if (i >= 7201 && i <= 7202) /* 0xA6EC..0xA6ED */
+              wc = 0xe794 + (i - 7201);
+            else if (i == 7208) /* 0xA6F3 */
+              wc = 0xe796;
+            else if (i >= 7211 && i <= 7219) /* 0xA6F6..0xA6FE */
+              wc = 0xe797 + (i - 7211);
+            break;
+          case 0xa7:
+            if (i >= 7349 && i <= 7363) /* 0xA7C2..0xA7D0 */
+              wc = 0xe7a0 + (i - 7349);
+            else if (i >= 7397 && i <= 7409) /* 0xA7F2..0xA7FE */
+              wc = 0xe7af + (i - 7397);
+            break;
+          case 0xa8:
+            if (i >= 7495 && i <= 7505) /* 0xA896..0xA8A0 */
+              wc = 0xe7bc + (i - 7495);
+            else if (i == 7533) /* 0xA8BC */
+              wc = 0xe7c7;
+            else if (i == 7536) /* 0xA8BF */
+              wc = 0x01f9;
+            else if (i >= 7538 && i <= 7541) /* 0xA8C1..0xA8C4 */
+              wc = 0xe7c9 + (i - 7538);
+            else if (i >= 7579 && i <= 7599) /* 0xA8EA..0xA8FE */
+              wc = 0xe7cd + (i - 7579);
+            break;
+          case 0xa9:
+            if (i == 7624) /* 0xA958 */
+              wc = 0xe7e2;
+            else if (i == 7627) /* 0xA95B */
+              wc = 0xe7e3;
+            else if (i >= 7629 && i <= 7631) /* 0xA95D..0xA95F */
+              wc = 0xe7e4 + (i - 7629);
+            else if (i >= 7672 && i < 7685) /* 0xA989..0xA995 */
+              wc = gb18030ext_2uni_pagea9[i-7672];
+            else if (i >= 7686 && i <= 7698) /* 0xA997..0xA9A3 */
+              wc = 0xe7f4 + (i - 7686);
+            else if (i >= 7775 && i <= 7789) /* 0xA9F0..0xA9FE */
+              wc = 0xe801 + (i - 7775);
+            break;
+          case 0xd7:
+            if (i >= 16525 && i <= 16529) /* 0xD7FA..0xD7FE */
+              wc = 0xe810 + (i - 16525);
+            break;
+          case 0xfe:
+            if (i < 23846)
+              wc = gb18030ext_2uni_pagefe[i-23750];
+            break;
+          default:
+            break;
+        }
+        if (wc != 0xfffd) {
+          *pwc = (ucs4_t) wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned short gb18030ext_page2e[80] = {
+  0x0000, 0xfe50, 0x0000, 0x0000, 0xfe54, 0x0000, 0x0000, 0x0000, /*0x80-0x87*/
+  0xfe57, 0x0000, 0x0000, 0xfe58, 0xfe5d, 0x0000, 0x0000, 0x0000, /*0x88-0x8f*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xfe5e, /*0x90-0x97*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x98-0x9f*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xfe6b, /*0xa0-0xa7*/
+  0x0000, 0x0000, 0xfe6e, 0x0000, 0x0000, 0x0000, 0xfe71, 0x0000, /*0xa8-0xaf*/
+  0x0000, 0x0000, 0x0000, 0xfe73, 0x0000, 0x0000, 0xfe74, 0xfe75, /*0xb0-0xb7*/
+  0x0000, 0x0000, 0x0000, 0xfe79, 0x0000, 0x0000, 0x0000, 0x0000, /*0xb8-0xbf*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0xc0-0xc7*/
+  0x0000, 0x0000, 0xfe84, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0xc8-0xcf*/
+};
+static const unsigned short gb18030ext_page2f[16] = {
+  0xa98a, 0xa98b, 0xa98c, 0xa98d, 0xa98e, 0xa98f, 0xa990, 0xa991, /*0xf0-0xf7*/
+  0xa992, 0xa993, 0xa994, 0xa995, 0x0000, 0x0000, 0x0000, 0x0000, /*0xf8-0xff*/
+};
+static const unsigned short gb18030ext_page34[56] = {
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xfe56, /*0x40-0x47*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x48-0x4f*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x50-0x57*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x58-0x5f*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x60-0x67*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x68-0x6f*/
+  0x0000, 0x0000, 0x0000, 0xfe55, 0x0000, 0x0000, 0x0000, 0x0000, /*0x70-0x77*/
+};
+static const unsigned short gb18030ext_page36[24] = {
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xfe5c, 0x0000, /*0x08-0x0f*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x10-0x17*/
+  0x0000, 0x0000, 0xfe5b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x18-0x1f*/
+};
+static const unsigned short gb18030ext_page39[24] = {
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xfe62, /*0xc8-0xcf*/
+  0xfe65, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0xd0-0xd7*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xfe63, /*0xd8-0xdf*/
+};
+static const unsigned short gb18030ext_page43[56] = {
+  0x0000, 0x0000, 0x0000, 0x0000, 0xfe78, 0x0000, 0x0000, 0x0000, /*0xa8-0xaf*/
+  0x0000, 0xfe77, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0xb0-0xb7*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0xb8-0xbf*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0xc0-0xc7*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0xc8-0xcf*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0xd0-0xd7*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xfe7a, 0x0000, 0x0000, /*0xd8-0xdf*/
+};
+static const unsigned short gb18030ext_page46[32] = {
+  0x0000, 0x0000, 0x0000, 0x0000, 0xfe7d, 0x0000, 0x0000, 0x0000, /*0x48-0x4f*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x50-0x57*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x58-0x5f*/
+  0x0000, 0xfe7c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x60-0x67*/
+};
+static const unsigned short gb18030ext_page47_1[16] = {
+  0x0000, 0x0000, 0x0000, 0xfe80, 0x0000, 0x0000, 0x0000, 0x0000, /*0x20-0x27*/
+  0x0000, 0xfe81, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x28-0x2f*/
+};
+static const unsigned short gb18030ext_page47_2[24] = {
+  0x0000, 0x0000, 0x0000, 0x0000, 0xfe82, 0x0000, 0x0000, 0x0000, /*0x78-0x7f*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x80-0x87*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xfe83, 0x0000, 0x0000, /*0x88-0x8f*/
+};
+static const unsigned short gb18030ext_page49[120] = {
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xfe85, /*0x40-0x47*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x48-0x4f*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x50-0x57*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x58-0x5f*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x60-0x67*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x68-0x6f*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x70-0x77*/
+  0x0000, 0x0000, 0xfe86, 0x0000, 0x0000, 0xfe87, 0x0000, 0x0000, /*0x78-0x7f*/
+  0x0000, 0x0000, 0xfe88, 0xfe89, 0x0000, 0xfe8a, 0xfe8b, 0x0000, /*0x80-0x87*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x88-0x8f*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x90-0x97*/
+  0x0000, 0x0000, 0x0000, 0xfe8d, 0x0000, 0x0000, 0x0000, 0xfe8c, /*0x98-0x9f*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0xa0-0xa7*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0xa8-0xaf*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xfe8f, 0xfe8e, /*0xb0-0xb7*/
+};
+static const unsigned short gb18030ext_page4c[56] = {
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xfe96, /*0x70-0x77*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x78-0x7f*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x80-0x87*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x88-0x8f*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x90-0x97*/
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xfe93, /*0x98-0x9f*/
+  0xfe94, 0xfe95, 0xfe97, 0xfe92, 0x0000, 0x0000, 0x0000, 0x0000, /*0xa0-0xa7*/
+};
+static const unsigned short gb18030ext_page4d[16] = {
+  0x0000, 0x0000, 0x0000, 0xfe98, 0xfe99, 0xfe9a, 0xfe9b, 0xfe9c, /*0x10-0x17*/
+  0xfe9d, 0xfe9e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /*0x18-0x1f*/
+};
+
+static int
+gb18030ext_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 2) {
+    unsigned short c = 0;
+    if (wc == 0x01f9)
+      c = 0xa8bf;
+    else if (wc == 0x20ac)
+      c = 0xa2e3;
+    else if (wc >= 0x2e80 && wc < 0x2ed0)
+      c = gb18030ext_page2e[wc-0x2e80];
+    else if (wc >= 0x2ff0 && wc < 0x3000)
+      c = gb18030ext_page2f[wc-0x2ff0];
+    else if (wc == 0x303e)
+      c = 0xa989;
+    else if (wc >= 0x3440 && wc < 0x3478)
+      c = gb18030ext_page34[wc-0x3440];
+    else if (wc == 0x359e)
+      c = 0xfe5a;
+    else if (wc >= 0x3608 && wc < 0x3620)
+      c = gb18030ext_page36[wc-0x3608];
+    else if (wc == 0x3918)
+      c = 0xfe60;
+    else if (wc == 0x396e)
+      c = 0xfe5f;
+    else if (wc >= 0x39c8 && wc < 0x39e0)
+      c = gb18030ext_page39[wc-0x39c8];
+    else if (wc == 0x3a73)
+      c = 0xfe64;
+    else if (wc == 0x3b4e)
+      c = 0xfe68;
+    else if (wc == 0x3c6e)
+      c = 0xfe69;
+    else if (wc == 0x3ce0)
+      c = 0xfe6a;
+    else if (wc == 0x4056)
+      c = 0xfe6f;
+    else if (wc == 0x415f)
+      c = 0xfe70;
+    else if (wc == 0x4337)
+      c = 0xfe72;
+    else if (wc >= 0x43a8 && wc < 0x43e0)
+      c = gb18030ext_page43[wc-0x43a8];
+    else if (wc == 0x44d6)
+      c = 0xfe7b;
+    else if (wc >= 0x4648 && wc < 0x4668)
+      c = gb18030ext_page46[wc-0x4648];
+    else if (wc >= 0x4720 && wc < 0x4730)
+      c = gb18030ext_page47_1[wc-0x4720];
+    else if (wc >= 0x4778 && wc < 0x4790)
+      c = gb18030ext_page47_2[wc-0x4778];
+    else if (wc >= 0x4940 && wc < 0x49b8)
+      c = gb18030ext_page49[wc-0x4940];
+    else if (wc >= 0x4c70 && wc < 0x4ca8)
+      c = gb18030ext_page4c[wc-0x4c70];
+    else if (wc >= 0x4d10 && wc < 0x4d20)
+      c = gb18030ext_page4d[wc-0x4d10];
+    else if (wc == 0x4dae)
+      c = 0xfe9f;
+    if (c != 0) {
+      r[0] = (c >> 8); r[1] = (c & 0xff);
+      return 2;
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/gb18030uni.h b/graf2d/win32gdk/gdk/src/iconv/gb18030uni.h
new file mode 100644
index 00000000000..bea31e513b7
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/gb18030uni.h
@@ -0,0 +1,249 @@
+/*
+ * Copyright (C) 1999-2001, 2005 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * GB18030 four-byte extension
+ */
+
+static const unsigned short gb18030uni_charset2uni_ranges[412] = {
+  0x0000, 0x0023,  0x0024, 0x0025,  0x0026, 0x002c,  0x002d, 0x0031,
+  0x0032, 0x0050,  0x0051, 0x0058,  0x0059, 0x005e,  0x005f, 0x005f,
+  0x0060, 0x0063,  0x0064, 0x0066,  0x0067, 0x0067,  0x0068, 0x0068,
+  0x0069, 0x006c,  0x006d, 0x007d,  0x007e, 0x0084,  0x0085, 0x0093,
+  0x0094, 0x00ab,  0x00ac, 0x00ae,  0x00af, 0x00b2,  0x00b3, 0x00cf,
+  0x00d0, 0x0131,  0x0132, 0x0132,  0x0133, 0x0133,  0x0134, 0x0134,
+  0x0135, 0x0135,  0x0136, 0x0136,  0x0137, 0x0137,  0x0138, 0x0138,
+  0x0139, 0x0154,  0x0155, 0x01ab,  0x01ac, 0x01ba,  0x01bb, 0x021f,
+  0x0220, 0x0220,  0x0221, 0x022d,  0x022e, 0x02e4,  0x02e5, 0x02e5,
+  0x02e6, 0x02ec,  0x02ed, 0x02ed,  0x02ee, 0x0324,  0x0325, 0x0332,
+  0x0333, 0x0333,  0x0334, 0x1ef1,  0x1ef2, 0x1ef3,  0x1ef4, 0x1ef4,
+  0x1ef5, 0x1ef6,  0x1ef7, 0x1efd,  0x1efe, 0x1f06,  0x1f07, 0x1f07,
+  0x1f08, 0x1f08,  0x1f09, 0x1f0d,  0x1f0e, 0x1f7d,  0x1f7e, 0x1fd3,
+  0x1fd4, 0x1fd4,  0x1fd5, 0x1fd7,  0x1fd8, 0x1fe3,  0x1fe4, 0x1fed,
+  0x1fee, 0x202b,  0x202c, 0x202f,  0x2030, 0x2045,  0x2046, 0x2047,
+  0x2048, 0x20b5,  0x20b6, 0x20bb,  0x20bc, 0x20bc,  0x20bd, 0x20bf,
+  0x20c0, 0x20c3,  0x20c4, 0x20c5,  0x20c6, 0x20c7,  0x20c8, 0x20c8,
+  0x20c9, 0x20c9,  0x20ca, 0x20cb,  0x20cc, 0x20d0,  0x20d1, 0x20d5,
+  0x20d6, 0x20df,  0x20e0, 0x20e2,  0x20e3, 0x20e7,  0x20e8, 0x20f4,
+  0x20f5, 0x20f6,  0x20f7, 0x20fc,  0x20fd, 0x2121,  0x2122, 0x2124,
+  0x2125, 0x212f,  0x2130, 0x2148,  0x2149, 0x219a,  0x219b, 0x22e7,
+  0x22e8, 0x22f1,  0x22f2, 0x2355,  0x2356, 0x2359,  0x235a, 0x2366,
+  0x2367, 0x2369,  0x236a, 0x2373,  0x2374, 0x2383,  0x2384, 0x238b,
+  0x238c, 0x2393,  0x2394, 0x2396,  0x2397, 0x2398,  0x2399, 0x23aa,
+  0x23ab, 0x23c9,  0x23ca, 0x23cb,  0x23cc, 0x2401,  0x2402, 0x2402,
+  0x2403, 0x2c40,  0x2c41, 0x2c42,  0x2c43, 0x2c45,  0x2c46, 0x2c47,
+  0x2c48, 0x2c51,  0x2c52, 0x2c60,  0x2c61, 0x2c62,  0x2c63, 0x2c65,
+  0x2c66, 0x2c69,  0x2c6a, 0x2c6b,  0x2c6c, 0x2c6e,  0x2c6f, 0x2c7c,
+  0x2c7d, 0x2da1,  0x2da2, 0x2da5,  0x2da6, 0x2da6,  0x2da7, 0x2dab,
+  0x2dac, 0x2dad,  0x2dae, 0x2dc1,  0x2dc2, 0x2dc3,  0x2dc4, 0x2dca,
+  0x2dcb, 0x2dcc,  0x2dcd, 0x2dd1,  0x2dd2, 0x2dd7,  0x2dd8, 0x2ecd,
+  0x2ece, 0x2ed4,  0x2ed5, 0x2f45,  0x2f46, 0x302f,  0x3030, 0x303b,
+  0x303c, 0x303d,  0x303e, 0x305f,  0x3060, 0x3068,  0x3069, 0x306a,
+  0x306b, 0x306c,  0x306d, 0x30dd,  0x30de, 0x3108,  0x3109, 0x3232,
+  0x3233, 0x32a1,  0x32a2, 0x32ac,  0x32ad, 0x35a9,  0x35aa, 0x35fe,
+  0x35ff, 0x365e,  0x365f, 0x366c,  0x366d, 0x36ff,  0x3700, 0x37d9,
+  0x37da, 0x38f8,  0x38f9, 0x3969,  0x396a, 0x3cde,  0x3cdf, 0x3de6,
+  0x3de7, 0x3fbd,  0x3fbe, 0x4031,  0x4032, 0x4035,  0x4036, 0x4060,
+  0x4061, 0x4158,  0x4159, 0x42cd,  0x42ce, 0x42e1,  0x42e2, 0x43a2,
+  0x43a3, 0x43a7,  0x43a8, 0x43f9,  0x43fa, 0x4409,  0x440a, 0x45c2,
+  0x45c3, 0x45f4,  0x45f5, 0x45f6,  0x45f7, 0x45fa,  0x45fb, 0x45fb,
+  0x45fc, 0x460f,  0x4610, 0x4612,  0x4613, 0x4628,  0x4629, 0x48e7,
+  0x48e8, 0x490e,  0x490f, 0x497d,  0x497e, 0x4a11,  0x4a12, 0x4a62,
+  0x4a63, 0x82bc,
+                   0x82bd, 0x82bd,  0x82be, 0x82be,  0x82bf, 0x82cb,
+  0x82cc, 0x82cc,  0x82cd, 0x82d1,  0x82d2, 0x82d8,  0x82d9, 0x82dc,
+  0x82dd, 0x82e0,  0x82e1, 0x82e8,  0x82e9, 0x82ef,  0x82f0, 0x82ff,
+  0x8300, 0x830d,
+                   0x830e, 0x93d4,  0x93d5, 0x9420,  0x9421, 0x943b,
+  0x943c, 0x948c,  0x948d, 0x9495,  0x9496, 0x94af,  0x94b0, 0x94b0,
+  0x94b1, 0x94b1,  0x94b2, 0x94b4,  0x94b5, 0x94ba,  0x94bb, 0x94bb,
+  0x94bc, 0x94bd,  0x94be, 0x98c3,  0x98c4, 0x98c4,  0x98c5, 0x98c8,
+  0x98c9, 0x98c9,  0x98ca, 0x98ca,  0x98cb, 0x98cb,  0x98cc, 0x9960,
+  0x9961, 0x99e1,  0x99e2, 0x99fb
+};
+
+static const unsigned short gb18030uni_uni2charset_ranges[412] = {
+  0x0080, 0x00a3,  0x00a5, 0x00a6,  0x00a9, 0x00af,  0x00b2, 0x00b6,
+  0x00b8, 0x00d6,  0x00d8, 0x00df,  0x00e2, 0x00e7,  0x00eb, 0x00eb,
+  0x00ee, 0x00f1,  0x00f4, 0x00f6,  0x00f8, 0x00f8,  0x00fb, 0x00fb,
+  0x00fd, 0x0100,  0x0102, 0x0112,  0x0114, 0x011a,  0x011c, 0x012a,
+  0x012c, 0x0143,  0x0145, 0x0147,  0x0149, 0x014c,  0x014e, 0x016a,
+  0x016c, 0x01cd,  0x01cf, 0x01cf,  0x01d1, 0x01d1,  0x01d3, 0x01d3,
+  0x01d5, 0x01d5,  0x01d7, 0x01d7,  0x01d9, 0x01d9,  0x01db, 0x01db,
+  0x01dd, 0x01f8,  0x01fa, 0x0250,  0x0252, 0x0260,  0x0262, 0x02c6,
+  0x02c8, 0x02c8,  0x02cc, 0x02d8,  0x02da, 0x0390,  0x03a2, 0x03a2,
+  0x03aa, 0x03b0,  0x03c2, 0x03c2,  0x03ca, 0x0400,  0x0402, 0x040f,
+  0x0450, 0x0450,  0x0452, 0x200f,  0x2011, 0x2012,  0x2017, 0x2017,
+  0x201a, 0x201b,  0x201e, 0x2024,  0x2027, 0x202f,  0x2031, 0x2031,
+  0x2034, 0x2034,  0x2036, 0x203a,  0x203c, 0x20ab,  0x20ad, 0x2102,
+  0x2104, 0x2104,  0x2106, 0x2108,  0x210a, 0x2115,  0x2117, 0x2120,
+  0x2122, 0x215f,  0x216c, 0x216f,  0x217a, 0x218f,  0x2194, 0x2195,
+  0x219a, 0x2207,  0x2209, 0x220e,  0x2210, 0x2210,  0x2212, 0x2214,
+  0x2216, 0x2219,  0x221b, 0x221c,  0x2221, 0x2222,  0x2224, 0x2224,
+  0x2226, 0x2226,  0x222c, 0x222d,  0x222f, 0x2233,  0x2238, 0x223c,
+  0x223e, 0x2247,  0x2249, 0x224b,  0x224d, 0x2251,  0x2253, 0x225f,
+  0x2262, 0x2263,  0x2268, 0x226d,  0x2270, 0x2294,  0x2296, 0x2298,
+  0x229a, 0x22a4,  0x22a6, 0x22be,  0x22c0, 0x2311,  0x2313, 0x245f,
+  0x246a, 0x2473,  0x249c, 0x24ff,  0x254c, 0x254f,  0x2574, 0x2580,
+  0x2590, 0x2592,  0x2596, 0x259f,  0x25a2, 0x25b1,  0x25b4, 0x25bb,
+  0x25be, 0x25c5,  0x25c8, 0x25ca,  0x25cc, 0x25cd,  0x25d0, 0x25e1,
+  0x25e6, 0x2604,  0x2607, 0x2608,  0x260a, 0x263f,  0x2641, 0x2641,
+  0x2643, 0x2e80,  0x2e82, 0x2e83,  0x2e85, 0x2e87,  0x2e89, 0x2e8a,
+  0x2e8d, 0x2e96,  0x2e98, 0x2ea6,  0x2ea8, 0x2ea9,  0x2eab, 0x2ead,
+  0x2eaf, 0x2eb2,  0x2eb4, 0x2eb5,  0x2eb8, 0x2eba,  0x2ebc, 0x2ec9,
+  0x2ecb, 0x2fef,  0x2ffc, 0x2fff,  0x3004, 0x3004,  0x3018, 0x301c,
+  0x301f, 0x3020,  0x302a, 0x303d,  0x303f, 0x3040,  0x3094, 0x309a,
+  0x309f, 0x30a0,  0x30f7, 0x30fb,  0x30ff, 0x3104,  0x312a, 0x321f,
+  0x322a, 0x3230,  0x3232, 0x32a2,  0x32a4, 0x338d,  0x3390, 0x339b,
+  0x339f, 0x33a0,  0x33a2, 0x33c3,  0x33c5, 0x33cd,  0x33cf, 0x33d0,
+  0x33d3, 0x33d4,  0x33d6, 0x3446,  0x3448, 0x3472,  0x3474, 0x359d,
+  0x359f, 0x360d,  0x360f, 0x3619,  0x361b, 0x3917,  0x3919, 0x396d,
+  0x396f, 0x39ce,  0x39d1, 0x39de,  0x39e0, 0x3a72,  0x3a74, 0x3b4d,
+  0x3b4f, 0x3c6d,  0x3c6f, 0x3cdf,  0x3ce1, 0x4055,  0x4057, 0x415e,
+  0x4160, 0x4336,  0x4338, 0x43ab,  0x43ad, 0x43b0,  0x43b2, 0x43dc,
+  0x43de, 0x44d5,  0x44d7, 0x464b,  0x464d, 0x4660,  0x4662, 0x4722,
+  0x4724, 0x4728,  0x472a, 0x477b,  0x477d, 0x478c,  0x478e, 0x4946,
+  0x4948, 0x4979,  0x497b, 0x497c,  0x497e, 0x4981,  0x4984, 0x4984,
+  0x4987, 0x499a,  0x499c, 0x499e,  0x49a0, 0x49b5,  0x49b8, 0x4c76,
+  0x4c78, 0x4c9e,  0x4ca4, 0x4d12,  0x4d1a, 0x4dad,  0x4daf, 0x4dff,
+  0x9fa6, 0xd7ff,
+                   0xe76c, 0xe76c,  0xe7c8, 0xe7c8,  0xe7e7, 0xe7f3,
+  0xe815, 0xe815,  0xe819, 0xe81d,  0xe81f, 0xe825,  0xe827, 0xe82a,
+  0xe82d, 0xe830,  0xe833, 0xe83a,  0xe83c, 0xe842,  0xe844, 0xe853,
+  0xe856, 0xe863,
+                   0xe865, 0xf92b,  0xf92d, 0xf978,  0xf97a, 0xf994,
+  0xf996, 0xf9e6,  0xf9e8, 0xf9f0,  0xf9f2, 0xfa0b,  0xfa10, 0xfa10,
+  0xfa12, 0xfa12,  0xfa15, 0xfa17,  0xfa19, 0xfa1e,  0xfa22, 0xfa22,
+  0xfa25, 0xfa26,  0xfa2a, 0xfe2f,  0xfe32, 0xfe32,  0xfe45, 0xfe48,
+  0xfe53, 0xfe53,  0xfe58, 0xfe58,  0xfe67, 0xfe67,  0xfe6c, 0xff00,
+  0xff5f, 0xffdf,  0xffe6, 0xffff
+};
+
+static const unsigned short gb18030uni_ranges[206] = {
+    128,   129,   131,   133,   134,   135,   137,   140,
+    142,   144,   145,   147,   148,   149,   150,   151,
+    152,   153,   154,   155,   156,   157,   158,   159,
+    160,   161,   162,   163,   164,   165,   166,   167,
+    168,   171,   172,   189,   196,   213,   220,   221,
+    285,   286,   287,   291,   293,   295,   297,   298,
+    300,   301,   302,   303,   304,   305,   306,   307,
+    308,   320,   330,   334,   338,   339,   340,   341,
+    342,   343,   347,   348,   349,   354,   355,   359,
+    360,   361,   362,   363,   365,   369,   371,   372,
+    373,   374,   375,   376,   386,   426,   502,   538,
+    553,   556,   558,   560,   562,   564,   565,   567,
+    571,   573,   574,   575,   576,   577,   578,   579,
+    581,   582,   583,   584,   585,   586,   588,   589,
+    590,   602,   606,   625,   627,   636,   637,   720,
+    724,   810,   813,   850,   860,   861,   862,   864,
+    867,   868,   869,   870,   872,   873,   874,   875,
+    876,   877,   878,   879,   880,   882,   883,   884,
+    885,   886,   887,   888,   889,   890,   891,   892,
+    893,   894,   895,   896,   897,   898,   899,   900,
+    901,   902,   903,   905,   907,   908,   909,   911,
+    912,   917,   924,   925, 21827,
+                                     25775, 25866, 25896,
+  25929, 25932, 25933, 25934, 25936, 25938, 25939, 25940,
+  25942,
+         25943, 25944, 25945, 25946, 25947, 25948, 25952,
+  25953, 25955, 25956, 25959, 25961, 25964, 25966, 25984,
+  25994, 25998, 26012, 26016, 26110, 26116
+};
+
+static int
+gb18030uni_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if (c1 >= 0x81 && c1 <= 0x84) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if (c2 >= 0x30 && c2 <= 0x39) {
+        if (n >= 3) {
+          unsigned char c3 = s[2];
+          if (c3 >= 0x81 && c3 <= 0xfe) {
+            if (n >= 4) {
+              unsigned char c4 = s[3];
+              if (c4 >= 0x30 && c4 <= 0x39) {
+                unsigned int i = (((c1 - 0x81) * 10 + (c2 - 0x30)) * 126 + (c3 - 0x81)) * 10 + (c4 - 0x30);
+                if (i >= 0 && i <= 39419) {
+                  unsigned int k1 = 0;
+                  unsigned int k2 = 205;
+                  while (k1 < k2) {
+                    unsigned int k = (k1 + k2) / 2;
+                    if (i <= gb18030uni_charset2uni_ranges[2*k+1])
+                      k2 = k;
+                    else if (i >= gb18030uni_charset2uni_ranges[2*k+2])
+                      k1 = k + 1;
+                    else
+                      return RET_ILSEQ;
+                  }
+                  {
+                    unsigned int diff = gb18030uni_ranges[k1];
+                    *pwc = (ucs4_t) (i + diff);
+                    return 4;
+                  }
+                }
+              }
+              return RET_ILSEQ;
+            }
+            return RET_TOOFEW(0);
+          }
+          return RET_ILSEQ;
+        }
+        return RET_TOOFEW(0);
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
+static int
+gb18030uni_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 4) {
+    unsigned int i = wc;
+    if (i >= 0x0080 && i <= 0xffff) {
+      unsigned int k1 = 0;
+      unsigned int k2 = 205;
+      while (k1 < k2) {
+        unsigned int k = (k1 + k2) / 2;
+        if (i <= gb18030uni_uni2charset_ranges[2*k+1])
+          k2 = k;
+        else if (i >= gb18030uni_uni2charset_ranges[2*k+2])
+          k1 = k + 1;
+        else
+          return RET_ILUNI;
+      }
+      {
+        unsigned int diff = gb18030uni_ranges[k1];
+        i -= diff;
+        r[3] = (i % 10) + 0x30; i = i / 10;
+        r[2] = (i % 126) + 0x81; i = i / 126;
+        r[1] = (i % 10) + 0x30; i = i / 10;
+        r[0] = i + 0x81;
+        return 4;
+      }
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/gb2312.h b/graf2d/win32gdk/gdk/src/iconv/gb2312.h
new file mode 100644
index 00000000000..831a5691273
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/gb2312.h
@@ -0,0 +1,2571 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * GB2312.1980-0
+ */
+
+static const unsigned short gb2312_2uni_page21[831] = {
+  /* 0x21 */
+  0x3000, 0x3001, 0x3002, 0x30fb, 0x02c9, 0x02c7, 0x00a8, 0x3003,
+  0x3005, 0x2015, 0xff5e, 0x2016, 0x2026, 0x2018, 0x2019, 0x201c,
+  0x201d, 0x3014, 0x3015, 0x3008, 0x3009, 0x300a, 0x300b, 0x300c,
+  0x300d, 0x300e, 0x300f, 0x3016, 0x3017, 0x3010, 0x3011, 0x00b1,
+  0x00d7, 0x00f7, 0x2236, 0x2227, 0x2228, 0x2211, 0x220f, 0x222a,
+  0x2229, 0x2208, 0x2237, 0x221a, 0x22a5, 0x2225, 0x2220, 0x2312,
+  0x2299, 0x222b, 0x222e, 0x2261, 0x224c, 0x2248, 0x223d, 0x221d,
+  0x2260, 0x226e, 0x226f, 0x2264, 0x2265, 0x221e, 0x2235, 0x2234,
+  0x2642, 0x2640, 0x00b0, 0x2032, 0x2033, 0x2103, 0xff04, 0x00a4,
+  0xffe0, 0xffe1, 0x2030, 0x00a7, 0x2116, 0x2606, 0x2605, 0x25cb,
+  0x25cf, 0x25ce, 0x25c7, 0x25c6, 0x25a1, 0x25a0, 0x25b3, 0x25b2,
+  0x203b, 0x2192, 0x2190, 0x2191, 0x2193, 0x3013,
+  /* 0x22 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x2488, 0x2489, 0x248a, 0x248b, 0x248c, 0x248d, 0x248e, 0x248f,
+  0x2490, 0x2491, 0x2492, 0x2493, 0x2494, 0x2495, 0x2496, 0x2497,
+  0x2498, 0x2499, 0x249a, 0x249b, 0x2474, 0x2475, 0x2476, 0x2477,
+  0x2478, 0x2479, 0x247a, 0x247b, 0x247c, 0x247d, 0x247e, 0x247f,
+  0x2480, 0x2481, 0x2482, 0x2483, 0x2484, 0x2485, 0x2486, 0x2487,
+  0x2460, 0x2461, 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, 0x2467,
+  0x2468, 0x2469, 0xfffd, 0xfffd, 0x3220, 0x3221, 0x3222, 0x3223,
+  0x3224, 0x3225, 0x3226, 0x3227, 0x3228, 0x3229, 0xfffd, 0xfffd,
+  0x2160, 0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, 0x2167,
+  0x2168, 0x2169, 0x216a, 0x216b, 0xfffd, 0xfffd,
+  /* 0x23 */
+  0xff01, 0xff02, 0xff03, 0xffe5, 0xff05, 0xff06, 0xff07, 0xff08,
+  0xff09, 0xff0a, 0xff0b, 0xff0c, 0xff0d, 0xff0e, 0xff0f, 0xff10,
+  0xff11, 0xff12, 0xff13, 0xff14, 0xff15, 0xff16, 0xff17, 0xff18,
+  0xff19, 0xff1a, 0xff1b, 0xff1c, 0xff1d, 0xff1e, 0xff1f, 0xff20,
+  0xff21, 0xff22, 0xff23, 0xff24, 0xff25, 0xff26, 0xff27, 0xff28,
+  0xff29, 0xff2a, 0xff2b, 0xff2c, 0xff2d, 0xff2e, 0xff2f, 0xff30,
+  0xff31, 0xff32, 0xff33, 0xff34, 0xff35, 0xff36, 0xff37, 0xff38,
+  0xff39, 0xff3a, 0xff3b, 0xff3c, 0xff3d, 0xff3e, 0xff3f, 0xff40,
+  0xff41, 0xff42, 0xff43, 0xff44, 0xff45, 0xff46, 0xff47, 0xff48,
+  0xff49, 0xff4a, 0xff4b, 0xff4c, 0xff4d, 0xff4e, 0xff4f, 0xff50,
+  0xff51, 0xff52, 0xff53, 0xff54, 0xff55, 0xff56, 0xff57, 0xff58,
+  0xff59, 0xff5a, 0xff5b, 0xff5c, 0xff5d, 0xffe3,
+  /* 0x24 */
+  0x3041, 0x3042, 0x3043, 0x3044, 0x3045, 0x3046, 0x3047, 0x3048,
+  0x3049, 0x304a, 0x304b, 0x304c, 0x304d, 0x304e, 0x304f, 0x3050,
+  0x3051, 0x3052, 0x3053, 0x3054, 0x3055, 0x3056, 0x3057, 0x3058,
+  0x3059, 0x305a, 0x305b, 0x305c, 0x305d, 0x305e, 0x305f, 0x3060,
+  0x3061, 0x3062, 0x3063, 0x3064, 0x3065, 0x3066, 0x3067, 0x3068,
+  0x3069, 0x306a, 0x306b, 0x306c, 0x306d, 0x306e, 0x306f, 0x3070,
+  0x3071, 0x3072, 0x3073, 0x3074, 0x3075, 0x3076, 0x3077, 0x3078,
+  0x3079, 0x307a, 0x307b, 0x307c, 0x307d, 0x307e, 0x307f, 0x3080,
+  0x3081, 0x3082, 0x3083, 0x3084, 0x3085, 0x3086, 0x3087, 0x3088,
+  0x3089, 0x308a, 0x308b, 0x308c, 0x308d, 0x308e, 0x308f, 0x3090,
+  0x3091, 0x3092, 0x3093, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x25 */
+  0x30a1, 0x30a2, 0x30a3, 0x30a4, 0x30a5, 0x30a6, 0x30a7, 0x30a8,
+  0x30a9, 0x30aa, 0x30ab, 0x30ac, 0x30ad, 0x30ae, 0x30af, 0x30b0,
+  0x30b1, 0x30b2, 0x30b3, 0x30b4, 0x30b5, 0x30b6, 0x30b7, 0x30b8,
+  0x30b9, 0x30ba, 0x30bb, 0x30bc, 0x30bd, 0x30be, 0x30bf, 0x30c0,
+  0x30c1, 0x30c2, 0x30c3, 0x30c4, 0x30c5, 0x30c6, 0x30c7, 0x30c8,
+  0x30c9, 0x30ca, 0x30cb, 0x30cc, 0x30cd, 0x30ce, 0x30cf, 0x30d0,
+  0x30d1, 0x30d2, 0x30d3, 0x30d4, 0x30d5, 0x30d6, 0x30d7, 0x30d8,
+  0x30d9, 0x30da, 0x30db, 0x30dc, 0x30dd, 0x30de, 0x30df, 0x30e0,
+  0x30e1, 0x30e2, 0x30e3, 0x30e4, 0x30e5, 0x30e6, 0x30e7, 0x30e8,
+  0x30e9, 0x30ea, 0x30eb, 0x30ec, 0x30ed, 0x30ee, 0x30ef, 0x30f0,
+  0x30f1, 0x30f2, 0x30f3, 0x30f4, 0x30f5, 0x30f6, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x26 */
+  0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, 0x0398,
+  0x0399, 0x039a, 0x039b, 0x039c, 0x039d, 0x039e, 0x039f, 0x03a0,
+  0x03a1, 0x03a3, 0x03a4, 0x03a5, 0x03a6, 0x03a7, 0x03a8, 0x03a9,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7, 0x03b8,
+  0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf, 0x03c0,
+  0x03c1, 0x03c3, 0x03c4, 0x03c5, 0x03c6, 0x03c7, 0x03c8, 0x03c9,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x27 */
+  0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0401, 0x0416,
+  0x0417, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+  0x041f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426,
+  0x0427, 0x0428, 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e,
+  0x042f, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0451, 0x0436,
+  0x0437, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+  0x043f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446,
+  0x0447, 0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e,
+  0x044f, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x28 */
+  0x0101, 0x00e1, 0x01ce, 0x00e0, 0x0113, 0x00e9, 0x011b, 0x00e8,
+  0x012b, 0x00ed, 0x01d0, 0x00ec, 0x014d, 0x00f3, 0x01d2, 0x00f2,
+  0x016b, 0x00fa, 0x01d4, 0x00f9, 0x01d6, 0x01d8, 0x01da, 0x01dc,
+  0x00fc, 0x00ea, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x3105, 0x3106, 0x3107, 0x3108,
+  0x3109, 0x310a, 0x310b, 0x310c, 0x310d, 0x310e, 0x310f, 0x3110,
+  0x3111, 0x3112, 0x3113, 0x3114, 0x3115, 0x3116, 0x3117, 0x3118,
+  0x3119, 0x311a, 0x311b, 0x311c, 0x311d, 0x311e, 0x311f, 0x3120,
+  0x3121, 0x3122, 0x3123, 0x3124, 0x3125, 0x3126, 0x3127, 0x3128,
+  0x3129, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x29 */
+  0xfffd, 0xfffd, 0xfffd, 0x2500, 0x2501, 0x2502, 0x2503, 0x2504,
+  0x2505, 0x2506, 0x2507, 0x2508, 0x2509, 0x250a, 0x250b, 0x250c,
+  0x250d, 0x250e, 0x250f, 0x2510, 0x2511, 0x2512, 0x2513, 0x2514,
+  0x2515, 0x2516, 0x2517, 0x2518, 0x2519, 0x251a, 0x251b, 0x251c,
+  0x251d, 0x251e, 0x251f, 0x2520, 0x2521, 0x2522, 0x2523, 0x2524,
+  0x2525, 0x2526, 0x2527, 0x2528, 0x2529, 0x252a, 0x252b, 0x252c,
+  0x252d, 0x252e, 0x252f, 0x2530, 0x2531, 0x2532, 0x2533, 0x2534,
+  0x2535, 0x2536, 0x2537, 0x2538, 0x2539, 0x253a, 0x253b, 0x253c,
+  0x253d, 0x253e, 0x253f, 0x2540, 0x2541, 0x2542, 0x2543, 0x2544,
+  0x2545, 0x2546, 0x2547, 0x2548, 0x2549, 0x254a, 0x254b,
+};
+static const unsigned short gb2312_2uni_page30[6768] = {
+  /* 0x30 */
+  0x554a, 0x963f, 0x57c3, 0x6328, 0x54ce, 0x5509, 0x54c0, 0x7691,
+  0x764c, 0x853c, 0x77ee, 0x827e, 0x788d, 0x7231, 0x9698, 0x978d,
+  0x6c28, 0x5b89, 0x4ffa, 0x6309, 0x6697, 0x5cb8, 0x80fa, 0x6848,
+  0x80ae, 0x6602, 0x76ce, 0x51f9, 0x6556, 0x71ac, 0x7ff1, 0x8884,
+  0x50b2, 0x5965, 0x61ca, 0x6fb3, 0x82ad, 0x634c, 0x6252, 0x53ed,
+  0x5427, 0x7b06, 0x516b, 0x75a4, 0x5df4, 0x62d4, 0x8dcb, 0x9776,
+  0x628a, 0x8019, 0x575d, 0x9738, 0x7f62, 0x7238, 0x767d, 0x67cf,
+  0x767e, 0x6446, 0x4f70, 0x8d25, 0x62dc, 0x7a17, 0x6591, 0x73ed,
+  0x642c, 0x6273, 0x822c, 0x9881, 0x677f, 0x7248, 0x626e, 0x62cc,
+  0x4f34, 0x74e3, 0x534a, 0x529e, 0x7eca, 0x90a6, 0x5e2e, 0x6886,
+  0x699c, 0x8180, 0x7ed1, 0x68d2, 0x78c5, 0x868c, 0x9551, 0x508d,
+  0x8c24, 0x82de, 0x80de, 0x5305, 0x8912, 0x5265,
+  /* 0x31 */
+  0x8584, 0x96f9, 0x4fdd, 0x5821, 0x9971, 0x5b9d, 0x62b1, 0x62a5,
+  0x66b4, 0x8c79, 0x9c8d, 0x7206, 0x676f, 0x7891, 0x60b2, 0x5351,
+  0x5317, 0x8f88, 0x80cc, 0x8d1d, 0x94a1, 0x500d, 0x72c8, 0x5907,
+  0x60eb, 0x7119, 0x88ab, 0x5954, 0x82ef, 0x672c, 0x7b28, 0x5d29,
+  0x7ef7, 0x752d, 0x6cf5, 0x8e66, 0x8ff8, 0x903c, 0x9f3b, 0x6bd4,
+  0x9119, 0x7b14, 0x5f7c, 0x78a7, 0x84d6, 0x853d, 0x6bd5, 0x6bd9,
+  0x6bd6, 0x5e01, 0x5e87, 0x75f9, 0x95ed, 0x655d, 0x5f0a, 0x5fc5,
+  0x8f9f, 0x58c1, 0x81c2, 0x907f, 0x965b, 0x97ad, 0x8fb9, 0x7f16,
+  0x8d2c, 0x6241, 0x4fbf, 0x53d8, 0x535e, 0x8fa8, 0x8fa9, 0x8fab,
+  0x904d, 0x6807, 0x5f6a, 0x8198, 0x8868, 0x9cd6, 0x618b, 0x522b,
+  0x762a, 0x5f6c, 0x658c, 0x6fd2, 0x6ee8, 0x5bbe, 0x6448, 0x5175,
+  0x51b0, 0x67c4, 0x4e19, 0x79c9, 0x997c, 0x70b3,
+  /* 0x32 */
+  0x75c5, 0x5e76, 0x73bb, 0x83e0, 0x64ad, 0x62e8, 0x94b5, 0x6ce2,
+  0x535a, 0x52c3, 0x640f, 0x94c2, 0x7b94, 0x4f2f, 0x5e1b, 0x8236,
+  0x8116, 0x818a, 0x6e24, 0x6cca, 0x9a73, 0x6355, 0x535c, 0x54fa,
+  0x8865, 0x57e0, 0x4e0d, 0x5e03, 0x6b65, 0x7c3f, 0x90e8, 0x6016,
+  0x64e6, 0x731c, 0x88c1, 0x6750, 0x624d, 0x8d22, 0x776c, 0x8e29,
+  0x91c7, 0x5f69, 0x83dc, 0x8521, 0x9910, 0x53c2, 0x8695, 0x6b8b,
+  0x60ed, 0x60e8, 0x707f, 0x82cd, 0x8231, 0x4ed3, 0x6ca7, 0x85cf,
+  0x64cd, 0x7cd9, 0x69fd, 0x66f9, 0x8349, 0x5395, 0x7b56, 0x4fa7,
+  0x518c, 0x6d4b, 0x5c42, 0x8e6d, 0x63d2, 0x53c9, 0x832c, 0x8336,
+  0x67e5, 0x78b4, 0x643d, 0x5bdf, 0x5c94, 0x5dee, 0x8be7, 0x62c6,
+  0x67f4, 0x8c7a, 0x6400, 0x63ba, 0x8749, 0x998b, 0x8c17, 0x7f20,
+  0x94f2, 0x4ea7, 0x9610, 0x98a4, 0x660c, 0x7316,
+  /* 0x33 */
+  0x573a, 0x5c1d, 0x5e38, 0x957f, 0x507f, 0x80a0, 0x5382, 0x655e,
+  0x7545, 0x5531, 0x5021, 0x8d85, 0x6284, 0x949e, 0x671d, 0x5632,
+  0x6f6e, 0x5de2, 0x5435, 0x7092, 0x8f66, 0x626f, 0x64a4, 0x63a3,
+  0x5f7b, 0x6f88, 0x90f4, 0x81e3, 0x8fb0, 0x5c18, 0x6668, 0x5ff1,
+  0x6c89, 0x9648, 0x8d81, 0x886c, 0x6491, 0x79f0, 0x57ce, 0x6a59,
+  0x6210, 0x5448, 0x4e58, 0x7a0b, 0x60e9, 0x6f84, 0x8bda, 0x627f,
+  0x901e, 0x9a8b, 0x79e4, 0x5403, 0x75f4, 0x6301, 0x5319, 0x6c60,
+  0x8fdf, 0x5f1b, 0x9a70, 0x803b, 0x9f7f, 0x4f88, 0x5c3a, 0x8d64,
+  0x7fc5, 0x65a5, 0x70bd, 0x5145, 0x51b2, 0x866b, 0x5d07, 0x5ba0,
+  0x62bd, 0x916c, 0x7574, 0x8e0c, 0x7a20, 0x6101, 0x7b79, 0x4ec7,
+  0x7ef8, 0x7785, 0x4e11, 0x81ed, 0x521d, 0x51fa, 0x6a71, 0x53a8,
+  0x8e87, 0x9504, 0x96cf, 0x6ec1, 0x9664, 0x695a,
+  /* 0x34 */
+  0x7840, 0x50a8, 0x77d7, 0x6410, 0x89e6, 0x5904, 0x63e3, 0x5ddd,
+  0x7a7f, 0x693d, 0x4f20, 0x8239, 0x5598, 0x4e32, 0x75ae, 0x7a97,
+  0x5e62, 0x5e8a, 0x95ef, 0x521b, 0x5439, 0x708a, 0x6376, 0x9524,
+  0x5782, 0x6625, 0x693f, 0x9187, 0x5507, 0x6df3, 0x7eaf, 0x8822,
+  0x6233, 0x7ef0, 0x75b5, 0x8328, 0x78c1, 0x96cc, 0x8f9e, 0x6148,
+  0x74f7, 0x8bcd, 0x6b64, 0x523a, 0x8d50, 0x6b21, 0x806a, 0x8471,
+  0x56f1, 0x5306, 0x4ece, 0x4e1b, 0x51d1, 0x7c97, 0x918b, 0x7c07,
+  0x4fc3, 0x8e7f, 0x7be1, 0x7a9c, 0x6467, 0x5d14, 0x50ac, 0x8106,
+  0x7601, 0x7cb9, 0x6dec, 0x7fe0, 0x6751, 0x5b58, 0x5bf8, 0x78cb,
+  0x64ae, 0x6413, 0x63aa, 0x632b, 0x9519, 0x642d, 0x8fbe, 0x7b54,
+  0x7629, 0x6253, 0x5927, 0x5446, 0x6b79, 0x50a3, 0x6234, 0x5e26,
+  0x6b86, 0x4ee3, 0x8d37, 0x888b, 0x5f85, 0x902e,
+  /* 0x35 */
+  0x6020, 0x803d, 0x62c5, 0x4e39, 0x5355, 0x90f8, 0x63b8, 0x80c6,
+  0x65e6, 0x6c2e, 0x4f46, 0x60ee, 0x6de1, 0x8bde, 0x5f39, 0x86cb,
+  0x5f53, 0x6321, 0x515a, 0x8361, 0x6863, 0x5200, 0x6363, 0x8e48,
+  0x5012, 0x5c9b, 0x7977, 0x5bfc, 0x5230, 0x7a3b, 0x60bc, 0x9053,
+  0x76d7, 0x5fb7, 0x5f97, 0x7684, 0x8e6c, 0x706f, 0x767b, 0x7b49,
+  0x77aa, 0x51f3, 0x9093, 0x5824, 0x4f4e, 0x6ef4, 0x8fea, 0x654c,
+  0x7b1b, 0x72c4, 0x6da4, 0x7fdf, 0x5ae1, 0x62b5, 0x5e95, 0x5730,
+  0x8482, 0x7b2c, 0x5e1d, 0x5f1f, 0x9012, 0x7f14, 0x98a0, 0x6382,
+  0x6ec7, 0x7898, 0x70b9, 0x5178, 0x975b, 0x57ab, 0x7535, 0x4f43,
+  0x7538, 0x5e97, 0x60e6, 0x5960, 0x6dc0, 0x6bbf, 0x7889, 0x53fc,
+  0x96d5, 0x51cb, 0x5201, 0x6389, 0x540a, 0x9493, 0x8c03, 0x8dcc,
+  0x7239, 0x789f, 0x8776, 0x8fed, 0x8c0d, 0x53e0,
+  /* 0x36 */
+  0x4e01, 0x76ef, 0x53ee, 0x9489, 0x9876, 0x9f0e, 0x952d, 0x5b9a,
+  0x8ba2, 0x4e22, 0x4e1c, 0x51ac, 0x8463, 0x61c2, 0x52a8, 0x680b,
+  0x4f97, 0x606b, 0x51bb, 0x6d1e, 0x515c, 0x6296, 0x6597, 0x9661,
+  0x8c46, 0x9017, 0x75d8, 0x90fd, 0x7763, 0x6bd2, 0x728a, 0x72ec,
+  0x8bfb, 0x5835, 0x7779, 0x8d4c, 0x675c, 0x9540, 0x809a, 0x5ea6,
+  0x6e21, 0x5992, 0x7aef, 0x77ed, 0x953b, 0x6bb5, 0x65ad, 0x7f0e,
+  0x5806, 0x5151, 0x961f, 0x5bf9, 0x58a9, 0x5428, 0x8e72, 0x6566,
+  0x987f, 0x56e4, 0x949d, 0x76fe, 0x9041, 0x6387, 0x54c6, 0x591a,
+  0x593a, 0x579b, 0x8eb2, 0x6735, 0x8dfa, 0x8235, 0x5241, 0x60f0,
+  0x5815, 0x86fe, 0x5ce8, 0x9e45, 0x4fc4, 0x989d, 0x8bb9, 0x5a25,
+  0x6076, 0x5384, 0x627c, 0x904f, 0x9102, 0x997f, 0x6069, 0x800c,
+  0x513f, 0x8033, 0x5c14, 0x9975, 0x6d31, 0x4e8c,
+  /* 0x37 */
+  0x8d30, 0x53d1, 0x7f5a, 0x7b4f, 0x4f10, 0x4e4f, 0x9600, 0x6cd5,
+  0x73d0, 0x85e9, 0x5e06, 0x756a, 0x7ffb, 0x6a0a, 0x77fe, 0x9492,
+  0x7e41, 0x51e1, 0x70e6, 0x53cd, 0x8fd4, 0x8303, 0x8d29, 0x72af,
+  0x996d, 0x6cdb, 0x574a, 0x82b3, 0x65b9, 0x80aa, 0x623f, 0x9632,
+  0x59a8, 0x4eff, 0x8bbf, 0x7eba, 0x653e, 0x83f2, 0x975e, 0x5561,
+  0x98de, 0x80a5, 0x532a, 0x8bfd, 0x5420, 0x80ba, 0x5e9f, 0x6cb8,
+  0x8d39, 0x82ac, 0x915a, 0x5429, 0x6c1b, 0x5206, 0x7eb7, 0x575f,
+  0x711a, 0x6c7e, 0x7c89, 0x594b, 0x4efd, 0x5fff, 0x6124, 0x7caa,
+  0x4e30, 0x5c01, 0x67ab, 0x8702, 0x5cf0, 0x950b, 0x98ce, 0x75af,
+  0x70fd, 0x9022, 0x51af, 0x7f1d, 0x8bbd, 0x5949, 0x51e4, 0x4f5b,
+  0x5426, 0x592b, 0x6577, 0x80a4, 0x5b75, 0x6276, 0x62c2, 0x8f90,
+  0x5e45, 0x6c1f, 0x7b26, 0x4f0f, 0x4fd8, 0x670d,
+  /* 0x38 */
+  0x6d6e, 0x6daa, 0x798f, 0x88b1, 0x5f17, 0x752b, 0x629a, 0x8f85,
+  0x4fef, 0x91dc, 0x65a7, 0x812f, 0x8151, 0x5e9c, 0x8150, 0x8d74,
+  0x526f, 0x8986, 0x8d4b, 0x590d, 0x5085, 0x4ed8, 0x961c, 0x7236,
+  0x8179, 0x8d1f, 0x5bcc, 0x8ba3, 0x9644, 0x5987, 0x7f1a, 0x5490,
+  0x5676, 0x560e, 0x8be5, 0x6539, 0x6982, 0x9499, 0x76d6, 0x6e89,
+  0x5e72, 0x7518, 0x6746, 0x67d1, 0x7aff, 0x809d, 0x8d76, 0x611f,
+  0x79c6, 0x6562, 0x8d63, 0x5188, 0x521a, 0x94a2, 0x7f38, 0x809b,
+  0x7eb2, 0x5c97, 0x6e2f, 0x6760, 0x7bd9, 0x768b, 0x9ad8, 0x818f,
+  0x7f94, 0x7cd5, 0x641e, 0x9550, 0x7a3f, 0x544a, 0x54e5, 0x6b4c,
+  0x6401, 0x6208, 0x9e3d, 0x80f3, 0x7599, 0x5272, 0x9769, 0x845b,
+  0x683c, 0x86e4, 0x9601, 0x9694, 0x94ec, 0x4e2a, 0x5404, 0x7ed9,
+  0x6839, 0x8ddf, 0x8015, 0x66f4, 0x5e9a, 0x7fb9,
+  /* 0x39 */
+  0x57c2, 0x803f, 0x6897, 0x5de5, 0x653b, 0x529f, 0x606d, 0x9f9a,
+  0x4f9b, 0x8eac, 0x516c, 0x5bab, 0x5f13, 0x5de9, 0x6c5e, 0x62f1,
+  0x8d21, 0x5171, 0x94a9, 0x52fe, 0x6c9f, 0x82df, 0x72d7, 0x57a2,
+  0x6784, 0x8d2d, 0x591f, 0x8f9c, 0x83c7, 0x5495, 0x7b8d, 0x4f30,
+  0x6cbd, 0x5b64, 0x59d1, 0x9f13, 0x53e4, 0x86ca, 0x9aa8, 0x8c37,
+  0x80a1, 0x6545, 0x987e, 0x56fa, 0x96c7, 0x522e, 0x74dc, 0x5250,
+  0x5be1, 0x6302, 0x8902, 0x4e56, 0x62d0, 0x602a, 0x68fa, 0x5173,
+  0x5b98, 0x51a0, 0x89c2, 0x7ba1, 0x9986, 0x7f50, 0x60ef, 0x704c,
+  0x8d2f, 0x5149, 0x5e7f, 0x901b, 0x7470, 0x89c4, 0x572d, 0x7845,
+  0x5f52, 0x9f9f, 0x95fa, 0x8f68, 0x9b3c, 0x8be1, 0x7678, 0x6842,
+  0x67dc, 0x8dea, 0x8d35, 0x523d, 0x8f8a, 0x6eda, 0x68cd, 0x9505,
+  0x90ed, 0x56fd, 0x679c, 0x88f9, 0x8fc7, 0x54c8,
+  /* 0x3a */
+  0x9ab8, 0x5b69, 0x6d77, 0x6c26, 0x4ea5, 0x5bb3, 0x9a87, 0x9163,
+  0x61a8, 0x90af, 0x97e9, 0x542b, 0x6db5, 0x5bd2, 0x51fd, 0x558a,
+  0x7f55, 0x7ff0, 0x64bc, 0x634d, 0x65f1, 0x61be, 0x608d, 0x710a,
+  0x6c57, 0x6c49, 0x592f, 0x676d, 0x822a, 0x58d5, 0x568e, 0x8c6a,
+  0x6beb, 0x90dd, 0x597d, 0x8017, 0x53f7, 0x6d69, 0x5475, 0x559d,
+  0x8377, 0x83cf, 0x6838, 0x79be, 0x548c, 0x4f55, 0x5408, 0x76d2,
+  0x8c89, 0x9602, 0x6cb3, 0x6db8, 0x8d6b, 0x8910, 0x9e64, 0x8d3a,
+  0x563f, 0x9ed1, 0x75d5, 0x5f88, 0x72e0, 0x6068, 0x54fc, 0x4ea8,
+  0x6a2a, 0x8861, 0x6052, 0x8f70, 0x54c4, 0x70d8, 0x8679, 0x9e3f,
+  0x6d2a, 0x5b8f, 0x5f18, 0x7ea2, 0x5589, 0x4faf, 0x7334, 0x543c,
+  0x539a, 0x5019, 0x540e, 0x547c, 0x4e4e, 0x5ffd, 0x745a, 0x58f6,
+  0x846b, 0x80e1, 0x8774, 0x72d0, 0x7cca, 0x6e56,
+  /* 0x3b */
+  0x5f27, 0x864e, 0x552c, 0x62a4, 0x4e92, 0x6caa, 0x6237, 0x82b1,
+  0x54d7, 0x534e, 0x733e, 0x6ed1, 0x753b, 0x5212, 0x5316, 0x8bdd,
+  0x69d0, 0x5f8a, 0x6000, 0x6dee, 0x574f, 0x6b22, 0x73af, 0x6853,
+  0x8fd8, 0x7f13, 0x6362, 0x60a3, 0x5524, 0x75ea, 0x8c62, 0x7115,
+  0x6da3, 0x5ba6, 0x5e7b, 0x8352, 0x614c, 0x9ec4, 0x78fa, 0x8757,
+  0x7c27, 0x7687, 0x51f0, 0x60f6, 0x714c, 0x6643, 0x5e4c, 0x604d,
+  0x8c0e, 0x7070, 0x6325, 0x8f89, 0x5fbd, 0x6062, 0x86d4, 0x56de,
+  0x6bc1, 0x6094, 0x6167, 0x5349, 0x60e0, 0x6666, 0x8d3f, 0x79fd,
+  0x4f1a, 0x70e9, 0x6c47, 0x8bb3, 0x8bf2, 0x7ed8, 0x8364, 0x660f,
+  0x5a5a, 0x9b42, 0x6d51, 0x6df7, 0x8c41, 0x6d3b, 0x4f19, 0x706b,
+  0x83b7, 0x6216, 0x60d1, 0x970d, 0x8d27, 0x7978, 0x51fb, 0x573e,
+  0x57fa, 0x673a, 0x7578, 0x7a3d, 0x79ef, 0x7b95,
+  /* 0x3c */
+  0x808c, 0x9965, 0x8ff9, 0x6fc0, 0x8ba5, 0x9e21, 0x59ec, 0x7ee9,
+  0x7f09, 0x5409, 0x6781, 0x68d8, 0x8f91, 0x7c4d, 0x96c6, 0x53ca,
+  0x6025, 0x75be, 0x6c72, 0x5373, 0x5ac9, 0x7ea7, 0x6324, 0x51e0,
+  0x810a, 0x5df1, 0x84df, 0x6280, 0x5180, 0x5b63, 0x4f0e, 0x796d,
+  0x5242, 0x60b8, 0x6d4e, 0x5bc4, 0x5bc2, 0x8ba1, 0x8bb0, 0x65e2,
+  0x5fcc, 0x9645, 0x5993, 0x7ee7, 0x7eaa, 0x5609, 0x67b7, 0x5939,
+  0x4f73, 0x5bb6, 0x52a0, 0x835a, 0x988a, 0x8d3e, 0x7532, 0x94be,
+  0x5047, 0x7a3c, 0x4ef7, 0x67b6, 0x9a7e, 0x5ac1, 0x6b7c, 0x76d1,
+  0x575a, 0x5c16, 0x7b3a, 0x95f4, 0x714e, 0x517c, 0x80a9, 0x8270,
+  0x5978, 0x7f04, 0x8327, 0x68c0, 0x67ec, 0x78b1, 0x7877, 0x62e3,
+  0x6361, 0x7b80, 0x4fed, 0x526a, 0x51cf, 0x8350, 0x69db, 0x9274,
+  0x8df5, 0x8d31, 0x89c1, 0x952e, 0x7bad, 0x4ef6,
+  /* 0x3d */
+  0x5065, 0x8230, 0x5251, 0x996f, 0x6e10, 0x6e85, 0x6da7, 0x5efa,
+  0x50f5, 0x59dc, 0x5c06, 0x6d46, 0x6c5f, 0x7586, 0x848b, 0x6868,
+  0x5956, 0x8bb2, 0x5320, 0x9171, 0x964d, 0x8549, 0x6912, 0x7901,
+  0x7126, 0x80f6, 0x4ea4, 0x90ca, 0x6d47, 0x9a84, 0x5a07, 0x56bc,
+  0x6405, 0x94f0, 0x77eb, 0x4fa5, 0x811a, 0x72e1, 0x89d2, 0x997a,
+  0x7f34, 0x7ede, 0x527f, 0x6559, 0x9175, 0x8f7f, 0x8f83, 0x53eb,
+  0x7a96, 0x63ed, 0x63a5, 0x7686, 0x79f8, 0x8857, 0x9636, 0x622a,
+  0x52ab, 0x8282, 0x6854, 0x6770, 0x6377, 0x776b, 0x7aed, 0x6d01,
+  0x7ed3, 0x89e3, 0x59d0, 0x6212, 0x85c9, 0x82a5, 0x754c, 0x501f,
+  0x4ecb, 0x75a5, 0x8beb, 0x5c4a, 0x5dfe, 0x7b4b, 0x65a4, 0x91d1,
+  0x4eca, 0x6d25, 0x895f, 0x7d27, 0x9526, 0x4ec5, 0x8c28, 0x8fdb,
+  0x9773, 0x664b, 0x7981, 0x8fd1, 0x70ec, 0x6d78,
+  /* 0x3e */
+  0x5c3d, 0x52b2, 0x8346, 0x5162, 0x830e, 0x775b, 0x6676, 0x9cb8,
+  0x4eac, 0x60ca, 0x7cbe, 0x7cb3, 0x7ecf, 0x4e95, 0x8b66, 0x666f,
+  0x9888, 0x9759, 0x5883, 0x656c, 0x955c, 0x5f84, 0x75c9, 0x9756,
+  0x7adf, 0x7ade, 0x51c0, 0x70af, 0x7a98, 0x63ea, 0x7a76, 0x7ea0,
+  0x7396, 0x97ed, 0x4e45, 0x7078, 0x4e5d, 0x9152, 0x53a9, 0x6551,
+  0x65e7, 0x81fc, 0x8205, 0x548e, 0x5c31, 0x759a, 0x97a0, 0x62d8,
+  0x72d9, 0x75bd, 0x5c45, 0x9a79, 0x83ca, 0x5c40, 0x5480, 0x77e9,
+  0x4e3e, 0x6cae, 0x805a, 0x62d2, 0x636e, 0x5de8, 0x5177, 0x8ddd,
+  0x8e1e, 0x952f, 0x4ff1, 0x53e5, 0x60e7, 0x70ac, 0x5267, 0x6350,
+  0x9e43, 0x5a1f, 0x5026, 0x7737, 0x5377, 0x7ee2, 0x6485, 0x652b,
+  0x6289, 0x6398, 0x5014, 0x7235, 0x89c9, 0x51b3, 0x8bc0, 0x7edd,
+  0x5747, 0x83cc, 0x94a7, 0x519b, 0x541b, 0x5cfb,
+  /* 0x3f */
+  0x4fca, 0x7ae3, 0x6d5a, 0x90e1, 0x9a8f, 0x5580, 0x5496, 0x5361,
+  0x54af, 0x5f00, 0x63e9, 0x6977, 0x51ef, 0x6168, 0x520a, 0x582a,
+  0x52d8, 0x574e, 0x780d, 0x770b, 0x5eb7, 0x6177, 0x7ce0, 0x625b,
+  0x6297, 0x4ea2, 0x7095, 0x8003, 0x62f7, 0x70e4, 0x9760, 0x5777,
+  0x82db, 0x67ef, 0x68f5, 0x78d5, 0x9897, 0x79d1, 0x58f3, 0x54b3,
+  0x53ef, 0x6e34, 0x514b, 0x523b, 0x5ba2, 0x8bfe, 0x80af, 0x5543,
+  0x57a6, 0x6073, 0x5751, 0x542d, 0x7a7a, 0x6050, 0x5b54, 0x63a7,
+  0x62a0, 0x53e3, 0x6263, 0x5bc7, 0x67af, 0x54ed, 0x7a9f, 0x82e6,
+  0x9177, 0x5e93, 0x88e4, 0x5938, 0x57ae, 0x630e, 0x8de8, 0x80ef,
+  0x5757, 0x7b77, 0x4fa9, 0x5feb, 0x5bbd, 0x6b3e, 0x5321, 0x7b50,
+  0x72c2, 0x6846, 0x77ff, 0x7736, 0x65f7, 0x51b5, 0x4e8f, 0x76d4,
+  0x5cbf, 0x7aa5, 0x8475, 0x594e, 0x9b41, 0x5080,
+  /* 0x40 */
+  0x9988, 0x6127, 0x6e83, 0x5764, 0x6606, 0x6346, 0x56f0, 0x62ec,
+  0x6269, 0x5ed3, 0x9614, 0x5783, 0x62c9, 0x5587, 0x8721, 0x814a,
+  0x8fa3, 0x5566, 0x83b1, 0x6765, 0x8d56, 0x84dd, 0x5a6a, 0x680f,
+  0x62e6, 0x7bee, 0x9611, 0x5170, 0x6f9c, 0x8c30, 0x63fd, 0x89c8,
+  0x61d2, 0x7f06, 0x70c2, 0x6ee5, 0x7405, 0x6994, 0x72fc, 0x5eca,
+  0x90ce, 0x6717, 0x6d6a, 0x635e, 0x52b3, 0x7262, 0x8001, 0x4f6c,
+  0x59e5, 0x916a, 0x70d9, 0x6d9d, 0x52d2, 0x4e50, 0x96f7, 0x956d,
+  0x857e, 0x78ca, 0x7d2f, 0x5121, 0x5792, 0x64c2, 0x808b, 0x7c7b,
+  0x6cea, 0x68f1, 0x695e, 0x51b7, 0x5398, 0x68a8, 0x7281, 0x9ece,
+  0x7bf1, 0x72f8, 0x79bb, 0x6f13, 0x7406, 0x674e, 0x91cc, 0x9ca4,
+  0x793c, 0x8389, 0x8354, 0x540f, 0x6817, 0x4e3d, 0x5389, 0x52b1,
+  0x783e, 0x5386, 0x5229, 0x5088, 0x4f8b, 0x4fd0,
+  /* 0x41 */
+  0x75e2, 0x7acb, 0x7c92, 0x6ca5, 0x96b6, 0x529b, 0x7483, 0x54e9,
+  0x4fe9, 0x8054, 0x83b2, 0x8fde, 0x9570, 0x5ec9, 0x601c, 0x6d9f,
+  0x5e18, 0x655b, 0x8138, 0x94fe, 0x604b, 0x70bc, 0x7ec3, 0x7cae,
+  0x51c9, 0x6881, 0x7cb1, 0x826f, 0x4e24, 0x8f86, 0x91cf, 0x667e,
+  0x4eae, 0x8c05, 0x64a9, 0x804a, 0x50da, 0x7597, 0x71ce, 0x5be5,
+  0x8fbd, 0x6f66, 0x4e86, 0x6482, 0x9563, 0x5ed6, 0x6599, 0x5217,
+  0x88c2, 0x70c8, 0x52a3, 0x730e, 0x7433, 0x6797, 0x78f7, 0x9716,
+  0x4e34, 0x90bb, 0x9cde, 0x6dcb, 0x51db, 0x8d41, 0x541d, 0x62ce,
+  0x73b2, 0x83f1, 0x96f6, 0x9f84, 0x94c3, 0x4f36, 0x7f9a, 0x51cc,
+  0x7075, 0x9675, 0x5cad, 0x9886, 0x53e6, 0x4ee4, 0x6e9c, 0x7409,
+  0x69b4, 0x786b, 0x998f, 0x7559, 0x5218, 0x7624, 0x6d41, 0x67f3,
+  0x516d, 0x9f99, 0x804b, 0x5499, 0x7b3c, 0x7abf,
+  /* 0x42 */
+  0x9686, 0x5784, 0x62e2, 0x9647, 0x697c, 0x5a04, 0x6402, 0x7bd3,
+  0x6f0f, 0x964b, 0x82a6, 0x5362, 0x9885, 0x5e90, 0x7089, 0x63b3,
+  0x5364, 0x864f, 0x9c81, 0x9e93, 0x788c, 0x9732, 0x8def, 0x8d42,
+  0x9e7f, 0x6f5e, 0x7984, 0x5f55, 0x9646, 0x622e, 0x9a74, 0x5415,
+  0x94dd, 0x4fa3, 0x65c5, 0x5c65, 0x5c61, 0x7f15, 0x8651, 0x6c2f,
+  0x5f8b, 0x7387, 0x6ee4, 0x7eff, 0x5ce6, 0x631b, 0x5b6a, 0x6ee6,
+  0x5375, 0x4e71, 0x63a0, 0x7565, 0x62a1, 0x8f6e, 0x4f26, 0x4ed1,
+  0x6ca6, 0x7eb6, 0x8bba, 0x841d, 0x87ba, 0x7f57, 0x903b, 0x9523,
+  0x7ba9, 0x9aa1, 0x88f8, 0x843d, 0x6d1b, 0x9a86, 0x7edc, 0x5988,
+  0x9ebb, 0x739b, 0x7801, 0x8682, 0x9a6c, 0x9a82, 0x561b, 0x5417,
+  0x57cb, 0x4e70, 0x9ea6, 0x5356, 0x8fc8, 0x8109, 0x7792, 0x9992,
+  0x86ee, 0x6ee1, 0x8513, 0x66fc, 0x6162, 0x6f2b,
+  /* 0x43 */
+  0x8c29, 0x8292, 0x832b, 0x76f2, 0x6c13, 0x5fd9, 0x83bd, 0x732b,
+  0x8305, 0x951a, 0x6bdb, 0x77db, 0x94c6, 0x536f, 0x8302, 0x5192,
+  0x5e3d, 0x8c8c, 0x8d38, 0x4e48, 0x73ab, 0x679a, 0x6885, 0x9176,
+  0x9709, 0x7164, 0x6ca1, 0x7709, 0x5a92, 0x9541, 0x6bcf, 0x7f8e,
+  0x6627, 0x5bd0, 0x59b9, 0x5a9a, 0x95e8, 0x95f7, 0x4eec, 0x840c,
+  0x8499, 0x6aac, 0x76df, 0x9530, 0x731b, 0x68a6, 0x5b5f, 0x772f,
+  0x919a, 0x9761, 0x7cdc, 0x8ff7, 0x8c1c, 0x5f25, 0x7c73, 0x79d8,
+  0x89c5, 0x6ccc, 0x871c, 0x5bc6, 0x5e42, 0x68c9, 0x7720, 0x7ef5,
+  0x5195, 0x514d, 0x52c9, 0x5a29, 0x7f05, 0x9762, 0x82d7, 0x63cf,
+  0x7784, 0x85d0, 0x79d2, 0x6e3a, 0x5e99, 0x5999, 0x8511, 0x706d,
+  0x6c11, 0x62bf, 0x76bf, 0x654f, 0x60af, 0x95fd, 0x660e, 0x879f,
+  0x9e23, 0x94ed, 0x540d, 0x547d, 0x8c2c, 0x6478,
+  /* 0x44 */
+  0x6479, 0x8611, 0x6a21, 0x819c, 0x78e8, 0x6469, 0x9b54, 0x62b9,
+  0x672b, 0x83ab, 0x58a8, 0x9ed8, 0x6cab, 0x6f20, 0x5bde, 0x964c,
+  0x8c0b, 0x725f, 0x67d0, 0x62c7, 0x7261, 0x4ea9, 0x59c6, 0x6bcd,
+  0x5893, 0x66ae, 0x5e55, 0x52df, 0x6155, 0x6728, 0x76ee, 0x7766,
+  0x7267, 0x7a46, 0x62ff, 0x54ea, 0x5450, 0x94a0, 0x90a3, 0x5a1c,
+  0x7eb3, 0x6c16, 0x4e43, 0x5976, 0x8010, 0x5948, 0x5357, 0x7537,
+  0x96be, 0x56ca, 0x6320, 0x8111, 0x607c, 0x95f9, 0x6dd6, 0x5462,
+  0x9981, 0x5185, 0x5ae9, 0x80fd, 0x59ae, 0x9713, 0x502a, 0x6ce5,
+  0x5c3c, 0x62df, 0x4f60, 0x533f, 0x817b, 0x9006, 0x6eba, 0x852b,
+  0x62c8, 0x5e74, 0x78be, 0x64b5, 0x637b, 0x5ff5, 0x5a18, 0x917f,
+  0x9e1f, 0x5c3f, 0x634f, 0x8042, 0x5b7d, 0x556e, 0x954a, 0x954d,
+  0x6d85, 0x60a8, 0x67e0, 0x72de, 0x51dd, 0x5b81,
+  /* 0x45 */
+  0x62e7, 0x6cde, 0x725b, 0x626d, 0x94ae, 0x7ebd, 0x8113, 0x6d53,
+  0x519c, 0x5f04, 0x5974, 0x52aa, 0x6012, 0x5973, 0x6696, 0x8650,
+  0x759f, 0x632a, 0x61e6, 0x7cef, 0x8bfa, 0x54e6, 0x6b27, 0x9e25,
+  0x6bb4, 0x85d5, 0x5455, 0x5076, 0x6ca4, 0x556a, 0x8db4, 0x722c,
+  0x5e15, 0x6015, 0x7436, 0x62cd, 0x6392, 0x724c, 0x5f98, 0x6e43,
+  0x6d3e, 0x6500, 0x6f58, 0x76d8, 0x78d0, 0x76fc, 0x7554, 0x5224,
+  0x53db, 0x4e53, 0x5e9e, 0x65c1, 0x802a, 0x80d6, 0x629b, 0x5486,
+  0x5228, 0x70ae, 0x888d, 0x8dd1, 0x6ce1, 0x5478, 0x80da, 0x57f9,
+  0x88f4, 0x8d54, 0x966a, 0x914d, 0x4f69, 0x6c9b, 0x55b7, 0x76c6,
+  0x7830, 0x62a8, 0x70f9, 0x6f8e, 0x5f6d, 0x84ec, 0x68da, 0x787c,
+  0x7bf7, 0x81a8, 0x670b, 0x9e4f, 0x6367, 0x78b0, 0x576f, 0x7812,
+  0x9739, 0x6279, 0x62ab, 0x5288, 0x7435, 0x6bd7,
+  /* 0x46 */
+  0x5564, 0x813e, 0x75b2, 0x76ae, 0x5339, 0x75de, 0x50fb, 0x5c41,
+  0x8b6c, 0x7bc7, 0x504f, 0x7247, 0x9a97, 0x98d8, 0x6f02, 0x74e2,
+  0x7968, 0x6487, 0x77a5, 0x62fc, 0x9891, 0x8d2b, 0x54c1, 0x8058,
+  0x4e52, 0x576a, 0x82f9, 0x840d, 0x5e73, 0x51ed, 0x74f6, 0x8bc4,
+  0x5c4f, 0x5761, 0x6cfc, 0x9887, 0x5a46, 0x7834, 0x9b44, 0x8feb,
+  0x7c95, 0x5256, 0x6251, 0x94fa, 0x4ec6, 0x8386, 0x8461, 0x83e9,
+  0x84b2, 0x57d4, 0x6734, 0x5703, 0x666e, 0x6d66, 0x8c31, 0x66dd,
+  0x7011, 0x671f, 0x6b3a, 0x6816, 0x621a, 0x59bb, 0x4e03, 0x51c4,
+  0x6f06, 0x67d2, 0x6c8f, 0x5176, 0x68cb, 0x5947, 0x6b67, 0x7566,
+  0x5d0e, 0x8110, 0x9f50, 0x65d7, 0x7948, 0x7941, 0x9a91, 0x8d77,
+  0x5c82, 0x4e5e, 0x4f01, 0x542f, 0x5951, 0x780c, 0x5668, 0x6c14,
+  0x8fc4, 0x5f03, 0x6c7d, 0x6ce3, 0x8bab, 0x6390,
+  /* 0x47 */
+  0x6070, 0x6d3d, 0x7275, 0x6266, 0x948e, 0x94c5, 0x5343, 0x8fc1,
+  0x7b7e, 0x4edf, 0x8c26, 0x4e7e, 0x9ed4, 0x94b1, 0x94b3, 0x524d,
+  0x6f5c, 0x9063, 0x6d45, 0x8c34, 0x5811, 0x5d4c, 0x6b20, 0x6b49,
+  0x67aa, 0x545b, 0x8154, 0x7f8c, 0x5899, 0x8537, 0x5f3a, 0x62a2,
+  0x6a47, 0x9539, 0x6572, 0x6084, 0x6865, 0x77a7, 0x4e54, 0x4fa8,
+  0x5de7, 0x9798, 0x64ac, 0x7fd8, 0x5ced, 0x4fcf, 0x7a8d, 0x5207,
+  0x8304, 0x4e14, 0x602f, 0x7a83, 0x94a6, 0x4fb5, 0x4eb2, 0x79e6,
+  0x7434, 0x52e4, 0x82b9, 0x64d2, 0x79bd, 0x5bdd, 0x6c81, 0x9752,
+  0x8f7b, 0x6c22, 0x503e, 0x537f, 0x6e05, 0x64ce, 0x6674, 0x6c30,
+  0x60c5, 0x9877, 0x8bf7, 0x5e86, 0x743c, 0x7a77, 0x79cb, 0x4e18,
+  0x90b1, 0x7403, 0x6c42, 0x56da, 0x914b, 0x6cc5, 0x8d8b, 0x533a,
+  0x86c6, 0x66f2, 0x8eaf, 0x5c48, 0x9a71, 0x6e20,
+  /* 0x48 */
+  0x53d6, 0x5a36, 0x9f8b, 0x8da3, 0x53bb, 0x5708, 0x98a7, 0x6743,
+  0x919b, 0x6cc9, 0x5168, 0x75ca, 0x62f3, 0x72ac, 0x5238, 0x529d,
+  0x7f3a, 0x7094, 0x7638, 0x5374, 0x9e4a, 0x69b7, 0x786e, 0x96c0,
+  0x88d9, 0x7fa4, 0x7136, 0x71c3, 0x5189, 0x67d3, 0x74e4, 0x58e4,
+  0x6518, 0x56b7, 0x8ba9, 0x9976, 0x6270, 0x7ed5, 0x60f9, 0x70ed,
+  0x58ec, 0x4ec1, 0x4eba, 0x5fcd, 0x97e7, 0x4efb, 0x8ba4, 0x5203,
+  0x598a, 0x7eab, 0x6254, 0x4ecd, 0x65e5, 0x620e, 0x8338, 0x84c9,
+  0x8363, 0x878d, 0x7194, 0x6eb6, 0x5bb9, 0x7ed2, 0x5197, 0x63c9,
+  0x67d4, 0x8089, 0x8339, 0x8815, 0x5112, 0x5b7a, 0x5982, 0x8fb1,
+  0x4e73, 0x6c5d, 0x5165, 0x8925, 0x8f6f, 0x962e, 0x854a, 0x745e,
+  0x9510, 0x95f0, 0x6da6, 0x82e5, 0x5f31, 0x6492, 0x6d12, 0x8428,
+  0x816e, 0x9cc3, 0x585e, 0x8d5b, 0x4e09, 0x53c1,
+  /* 0x49 */
+  0x4f1e, 0x6563, 0x6851, 0x55d3, 0x4e27, 0x6414, 0x9a9a, 0x626b,
+  0x5ac2, 0x745f, 0x8272, 0x6da9, 0x68ee, 0x50e7, 0x838e, 0x7802,
+  0x6740, 0x5239, 0x6c99, 0x7eb1, 0x50bb, 0x5565, 0x715e, 0x7b5b,
+  0x6652, 0x73ca, 0x82eb, 0x6749, 0x5c71, 0x5220, 0x717d, 0x886b,
+  0x95ea, 0x9655, 0x64c5, 0x8d61, 0x81b3, 0x5584, 0x6c55, 0x6247,
+  0x7f2e, 0x5892, 0x4f24, 0x5546, 0x8d4f, 0x664c, 0x4e0a, 0x5c1a,
+  0x88f3, 0x68a2, 0x634e, 0x7a0d, 0x70e7, 0x828d, 0x52fa, 0x97f6,
+  0x5c11, 0x54e8, 0x90b5, 0x7ecd, 0x5962, 0x8d4a, 0x86c7, 0x820c,
+  0x820d, 0x8d66, 0x6444, 0x5c04, 0x6151, 0x6d89, 0x793e, 0x8bbe,
+  0x7837, 0x7533, 0x547b, 0x4f38, 0x8eab, 0x6df1, 0x5a20, 0x7ec5,
+  0x795e, 0x6c88, 0x5ba1, 0x5a76, 0x751a, 0x80be, 0x614e, 0x6e17,
+  0x58f0, 0x751f, 0x7525, 0x7272, 0x5347, 0x7ef3,
+  /* 0x4a */
+  0x7701, 0x76db, 0x5269, 0x80dc, 0x5723, 0x5e08, 0x5931, 0x72ee,
+  0x65bd, 0x6e7f, 0x8bd7, 0x5c38, 0x8671, 0x5341, 0x77f3, 0x62fe,
+  0x65f6, 0x4ec0, 0x98df, 0x8680, 0x5b9e, 0x8bc6, 0x53f2, 0x77e2,
+  0x4f7f, 0x5c4e, 0x9a76, 0x59cb, 0x5f0f, 0x793a, 0x58eb, 0x4e16,
+  0x67ff, 0x4e8b, 0x62ed, 0x8a93, 0x901d, 0x52bf, 0x662f, 0x55dc,
+  0x566c, 0x9002, 0x4ed5, 0x4f8d, 0x91ca, 0x9970, 0x6c0f, 0x5e02,
+  0x6043, 0x5ba4, 0x89c6, 0x8bd5, 0x6536, 0x624b, 0x9996, 0x5b88,
+  0x5bff, 0x6388, 0x552e, 0x53d7, 0x7626, 0x517d, 0x852c, 0x67a2,
+  0x68b3, 0x6b8a, 0x6292, 0x8f93, 0x53d4, 0x8212, 0x6dd1, 0x758f,
+  0x4e66, 0x8d4e, 0x5b70, 0x719f, 0x85af, 0x6691, 0x66d9, 0x7f72,
+  0x8700, 0x9ecd, 0x9f20, 0x5c5e, 0x672f, 0x8ff0, 0x6811, 0x675f,
+  0x620d, 0x7ad6, 0x5885, 0x5eb6, 0x6570, 0x6f31,
+  /* 0x4b */
+  0x6055, 0x5237, 0x800d, 0x6454, 0x8870, 0x7529, 0x5e05, 0x6813,
+  0x62f4, 0x971c, 0x53cc, 0x723d, 0x8c01, 0x6c34, 0x7761, 0x7a0e,
+  0x542e, 0x77ac, 0x987a, 0x821c, 0x8bf4, 0x7855, 0x6714, 0x70c1,
+  0x65af, 0x6495, 0x5636, 0x601d, 0x79c1, 0x53f8, 0x4e1d, 0x6b7b,
+  0x8086, 0x5bfa, 0x55e3, 0x56db, 0x4f3a, 0x4f3c, 0x9972, 0x5df3,
+  0x677e, 0x8038, 0x6002, 0x9882, 0x9001, 0x5b8b, 0x8bbc, 0x8bf5,
+  0x641c, 0x8258, 0x64de, 0x55fd, 0x82cf, 0x9165, 0x4fd7, 0x7d20,
+  0x901f, 0x7c9f, 0x50f3, 0x5851, 0x6eaf, 0x5bbf, 0x8bc9, 0x8083,
+  0x9178, 0x849c, 0x7b97, 0x867d, 0x968b, 0x968f, 0x7ee5, 0x9ad3,
+  0x788e, 0x5c81, 0x7a57, 0x9042, 0x96a7, 0x795f, 0x5b59, 0x635f,
+  0x7b0b, 0x84d1, 0x68ad, 0x5506, 0x7f29, 0x7410, 0x7d22, 0x9501,
+  0x6240, 0x584c, 0x4ed6, 0x5b83, 0x5979, 0x5854,
+  /* 0x4c */
+  0x736d, 0x631e, 0x8e4b, 0x8e0f, 0x80ce, 0x82d4, 0x62ac, 0x53f0,
+  0x6cf0, 0x915e, 0x592a, 0x6001, 0x6c70, 0x574d, 0x644a, 0x8d2a,
+  0x762b, 0x6ee9, 0x575b, 0x6a80, 0x75f0, 0x6f6d, 0x8c2d, 0x8c08,
+  0x5766, 0x6bef, 0x8892, 0x78b3, 0x63a2, 0x53f9, 0x70ad, 0x6c64,
+  0x5858, 0x642a, 0x5802, 0x68e0, 0x819b, 0x5510, 0x7cd6, 0x5018,
+  0x8eba, 0x6dcc, 0x8d9f, 0x70eb, 0x638f, 0x6d9b, 0x6ed4, 0x7ee6,
+  0x8404, 0x6843, 0x9003, 0x6dd8, 0x9676, 0x8ba8, 0x5957, 0x7279,
+  0x85e4, 0x817e, 0x75bc, 0x8a8a, 0x68af, 0x5254, 0x8e22, 0x9511,
+  0x63d0, 0x9898, 0x8e44, 0x557c, 0x4f53, 0x66ff, 0x568f, 0x60d5,
+  0x6d95, 0x5243, 0x5c49, 0x5929, 0x6dfb, 0x586b, 0x7530, 0x751c,
+  0x606c, 0x8214, 0x8146, 0x6311, 0x6761, 0x8fe2, 0x773a, 0x8df3,
+  0x8d34, 0x94c1, 0x5e16, 0x5385, 0x542c, 0x70c3,
+  /* 0x4d */
+  0x6c40, 0x5ef7, 0x505c, 0x4ead, 0x5ead, 0x633a, 0x8247, 0x901a,
+  0x6850, 0x916e, 0x77b3, 0x540c, 0x94dc, 0x5f64, 0x7ae5, 0x6876,
+  0x6345, 0x7b52, 0x7edf, 0x75db, 0x5077, 0x6295, 0x5934, 0x900f,
+  0x51f8, 0x79c3, 0x7a81, 0x56fe, 0x5f92, 0x9014, 0x6d82, 0x5c60,
+  0x571f, 0x5410, 0x5154, 0x6e4d, 0x56e2, 0x63a8, 0x9893, 0x817f,
+  0x8715, 0x892a, 0x9000, 0x541e, 0x5c6f, 0x81c0, 0x62d6, 0x6258,
+  0x8131, 0x9e35, 0x9640, 0x9a6e, 0x9a7c, 0x692d, 0x59a5, 0x62d3,
+  0x553e, 0x6316, 0x54c7, 0x86d9, 0x6d3c, 0x5a03, 0x74e6, 0x889c,
+  0x6b6a, 0x5916, 0x8c4c, 0x5f2f, 0x6e7e, 0x73a9, 0x987d, 0x4e38,
+  0x70f7, 0x5b8c, 0x7897, 0x633d, 0x665a, 0x7696, 0x60cb, 0x5b9b,
+  0x5a49, 0x4e07, 0x8155, 0x6c6a, 0x738b, 0x4ea1, 0x6789, 0x7f51,
+  0x5f80, 0x65fa, 0x671b, 0x5fd8, 0x5984, 0x5a01,
+  /* 0x4e */
+  0x5dcd, 0x5fae, 0x5371, 0x97e6, 0x8fdd, 0x6845, 0x56f4, 0x552f,
+  0x60df, 0x4e3a, 0x6f4d, 0x7ef4, 0x82c7, 0x840e, 0x59d4, 0x4f1f,
+  0x4f2a, 0x5c3e, 0x7eac, 0x672a, 0x851a, 0x5473, 0x754f, 0x80c3,
+  0x5582, 0x9b4f, 0x4f4d, 0x6e2d, 0x8c13, 0x5c09, 0x6170, 0x536b,
+  0x761f, 0x6e29, 0x868a, 0x6587, 0x95fb, 0x7eb9, 0x543b, 0x7a33,
+  0x7d0a, 0x95ee, 0x55e1, 0x7fc1, 0x74ee, 0x631d, 0x8717, 0x6da1,
+  0x7a9d, 0x6211, 0x65a1, 0x5367, 0x63e1, 0x6c83, 0x5deb, 0x545c,
+  0x94a8, 0x4e4c, 0x6c61, 0x8bec, 0x5c4b, 0x65e0, 0x829c, 0x68a7,
+  0x543e, 0x5434, 0x6bcb, 0x6b66, 0x4e94, 0x6342, 0x5348, 0x821e,
+  0x4f0d, 0x4fae, 0x575e, 0x620a, 0x96fe, 0x6664, 0x7269, 0x52ff,
+  0x52a1, 0x609f, 0x8bef, 0x6614, 0x7199, 0x6790, 0x897f, 0x7852,
+  0x77fd, 0x6670, 0x563b, 0x5438, 0x9521, 0x727a,
+  /* 0x4f */
+  0x7a00, 0x606f, 0x5e0c, 0x6089, 0x819d, 0x5915, 0x60dc, 0x7184,
+  0x70ef, 0x6eaa, 0x6c50, 0x7280, 0x6a84, 0x88ad, 0x5e2d, 0x4e60,
+  0x5ab3, 0x559c, 0x94e3, 0x6d17, 0x7cfb, 0x9699, 0x620f, 0x7ec6,
+  0x778e, 0x867e, 0x5323, 0x971e, 0x8f96, 0x6687, 0x5ce1, 0x4fa0,
+  0x72ed, 0x4e0b, 0x53a6, 0x590f, 0x5413, 0x6380, 0x9528, 0x5148,
+  0x4ed9, 0x9c9c, 0x7ea4, 0x54b8, 0x8d24, 0x8854, 0x8237, 0x95f2,
+  0x6d8e, 0x5f26, 0x5acc, 0x663e, 0x9669, 0x73b0, 0x732e, 0x53bf,
+  0x817a, 0x9985, 0x7fa1, 0x5baa, 0x9677, 0x9650, 0x7ebf, 0x76f8,
+  0x53a2, 0x9576, 0x9999, 0x7bb1, 0x8944, 0x6e58, 0x4e61, 0x7fd4,
+  0x7965, 0x8be6, 0x60f3, 0x54cd, 0x4eab, 0x9879, 0x5df7, 0x6a61,
+  0x50cf, 0x5411, 0x8c61, 0x8427, 0x785d, 0x9704, 0x524a, 0x54ee,
+  0x56a3, 0x9500, 0x6d88, 0x5bb5, 0x6dc6, 0x6653,
+  /* 0x50 */
+  0x5c0f, 0x5b5d, 0x6821, 0x8096, 0x5578, 0x7b11, 0x6548, 0x6954,
+  0x4e9b, 0x6b47, 0x874e, 0x978b, 0x534f, 0x631f, 0x643a, 0x90aa,
+  0x659c, 0x80c1, 0x8c10, 0x5199, 0x68b0, 0x5378, 0x87f9, 0x61c8,
+  0x6cc4, 0x6cfb, 0x8c22, 0x5c51, 0x85aa, 0x82af, 0x950c, 0x6b23,
+  0x8f9b, 0x65b0, 0x5ffb, 0x5fc3, 0x4fe1, 0x8845, 0x661f, 0x8165,
+  0x7329, 0x60fa, 0x5174, 0x5211, 0x578b, 0x5f62, 0x90a2, 0x884c,
+  0x9192, 0x5e78, 0x674f, 0x6027, 0x59d3, 0x5144, 0x51f6, 0x80f8,
+  0x5308, 0x6c79, 0x96c4, 0x718a, 0x4f11, 0x4fee, 0x7f9e, 0x673d,
+  0x55c5, 0x9508, 0x79c0, 0x8896, 0x7ee3, 0x589f, 0x620c, 0x9700,
+  0x865a, 0x5618, 0x987b, 0x5f90, 0x8bb8, 0x84c4, 0x9157, 0x53d9,
+  0x65ed, 0x5e8f, 0x755c, 0x6064, 0x7d6e, 0x5a7f, 0x7eea, 0x7eed,
+  0x8f69, 0x55a7, 0x5ba3, 0x60ac, 0x65cb, 0x7384,
+  /* 0x51 */
+  0x9009, 0x7663, 0x7729, 0x7eda, 0x9774, 0x859b, 0x5b66, 0x7a74,
+  0x96ea, 0x8840, 0x52cb, 0x718f, 0x5faa, 0x65ec, 0x8be2, 0x5bfb,
+  0x9a6f, 0x5de1, 0x6b89, 0x6c5b, 0x8bad, 0x8baf, 0x900a, 0x8fc5,
+  0x538b, 0x62bc, 0x9e26, 0x9e2d, 0x5440, 0x4e2b, 0x82bd, 0x7259,
+  0x869c, 0x5d16, 0x8859, 0x6daf, 0x96c5, 0x54d1, 0x4e9a, 0x8bb6,
+  0x7109, 0x54bd, 0x9609, 0x70df, 0x6df9, 0x76d0, 0x4e25, 0x7814,
+  0x8712, 0x5ca9, 0x5ef6, 0x8a00, 0x989c, 0x960e, 0x708e, 0x6cbf,
+  0x5944, 0x63a9, 0x773c, 0x884d, 0x6f14, 0x8273, 0x5830, 0x71d5,
+  0x538c, 0x781a, 0x96c1, 0x5501, 0x5f66, 0x7130, 0x5bb4, 0x8c1a,
+  0x9a8c, 0x6b83, 0x592e, 0x9e2f, 0x79e7, 0x6768, 0x626c, 0x4f6f,
+  0x75a1, 0x7f8a, 0x6d0b, 0x9633, 0x6c27, 0x4ef0, 0x75d2, 0x517b,
+  0x6837, 0x6f3e, 0x9080, 0x8170, 0x5996, 0x7476,
+  /* 0x52 */
+  0x6447, 0x5c27, 0x9065, 0x7a91, 0x8c23, 0x59da, 0x54ac, 0x8200,
+  0x836f, 0x8981, 0x8000, 0x6930, 0x564e, 0x8036, 0x7237, 0x91ce,
+  0x51b6, 0x4e5f, 0x9875, 0x6396, 0x4e1a, 0x53f6, 0x66f3, 0x814b,
+  0x591c, 0x6db2, 0x4e00, 0x58f9, 0x533b, 0x63d6, 0x94f1, 0x4f9d,
+  0x4f0a, 0x8863, 0x9890, 0x5937, 0x9057, 0x79fb, 0x4eea, 0x80f0,
+  0x7591, 0x6c82, 0x5b9c, 0x59e8, 0x5f5d, 0x6905, 0x8681, 0x501a,
+  0x5df2, 0x4e59, 0x77e3, 0x4ee5, 0x827a, 0x6291, 0x6613, 0x9091,
+  0x5c79, 0x4ebf, 0x5f79, 0x81c6, 0x9038, 0x8084, 0x75ab, 0x4ea6,
+  0x88d4, 0x610f, 0x6bc5, 0x5fc6, 0x4e49, 0x76ca, 0x6ea2, 0x8be3,
+  0x8bae, 0x8c0a, 0x8bd1, 0x5f02, 0x7ffc, 0x7fcc, 0x7ece, 0x8335,
+  0x836b, 0x56e0, 0x6bb7, 0x97f3, 0x9634, 0x59fb, 0x541f, 0x94f6,
+  0x6deb, 0x5bc5, 0x996e, 0x5c39, 0x5f15, 0x9690,
+  /* 0x53 */
+  0x5370, 0x82f1, 0x6a31, 0x5a74, 0x9e70, 0x5e94, 0x7f28, 0x83b9,
+  0x8424, 0x8425, 0x8367, 0x8747, 0x8fce, 0x8d62, 0x76c8, 0x5f71,
+  0x9896, 0x786c, 0x6620, 0x54df, 0x62e5, 0x4f63, 0x81c3, 0x75c8,
+  0x5eb8, 0x96cd, 0x8e0a, 0x86f9, 0x548f, 0x6cf3, 0x6d8c, 0x6c38,
+  0x607f, 0x52c7, 0x7528, 0x5e7d, 0x4f18, 0x60a0, 0x5fe7, 0x5c24,
+  0x7531, 0x90ae, 0x94c0, 0x72b9, 0x6cb9, 0x6e38, 0x9149, 0x6709,
+  0x53cb, 0x53f3, 0x4f51, 0x91c9, 0x8bf1, 0x53c8, 0x5e7c, 0x8fc2,
+  0x6de4, 0x4e8e, 0x76c2, 0x6986, 0x865e, 0x611a, 0x8206, 0x4f59,
+  0x4fde, 0x903e, 0x9c7c, 0x6109, 0x6e1d, 0x6e14, 0x9685, 0x4e88,
+  0x5a31, 0x96e8, 0x4e0e, 0x5c7f, 0x79b9, 0x5b87, 0x8bed, 0x7fbd,
+  0x7389, 0x57df, 0x828b, 0x90c1, 0x5401, 0x9047, 0x55bb, 0x5cea,
+  0x5fa1, 0x6108, 0x6b32, 0x72f1, 0x80b2, 0x8a89,
+  /* 0x54 */
+  0x6d74, 0x5bd3, 0x88d5, 0x9884, 0x8c6b, 0x9a6d, 0x9e33, 0x6e0a,
+  0x51a4, 0x5143, 0x57a3, 0x8881, 0x539f, 0x63f4, 0x8f95, 0x56ed,
+  0x5458, 0x5706, 0x733f, 0x6e90, 0x7f18, 0x8fdc, 0x82d1, 0x613f,
+  0x6028, 0x9662, 0x66f0, 0x7ea6, 0x8d8a, 0x8dc3, 0x94a5, 0x5cb3,
+  0x7ca4, 0x6708, 0x60a6, 0x9605, 0x8018, 0x4e91, 0x90e7, 0x5300,
+  0x9668, 0x5141, 0x8fd0, 0x8574, 0x915d, 0x6655, 0x97f5, 0x5b55,
+  0x531d, 0x7838, 0x6742, 0x683d, 0x54c9, 0x707e, 0x5bb0, 0x8f7d,
+  0x518d, 0x5728, 0x54b1, 0x6512, 0x6682, 0x8d5e, 0x8d43, 0x810f,
+  0x846c, 0x906d, 0x7cdf, 0x51ff, 0x85fb, 0x67a3, 0x65e9, 0x6fa1,
+  0x86a4, 0x8e81, 0x566a, 0x9020, 0x7682, 0x7076, 0x71e5, 0x8d23,
+  0x62e9, 0x5219, 0x6cfd, 0x8d3c, 0x600e, 0x589e, 0x618e, 0x66fe,
+  0x8d60, 0x624e, 0x55b3, 0x6e23, 0x672d, 0x8f67,
+  /* 0x55 */
+  0x94e1, 0x95f8, 0x7728, 0x6805, 0x69a8, 0x548b, 0x4e4d, 0x70b8,
+  0x8bc8, 0x6458, 0x658b, 0x5b85, 0x7a84, 0x503a, 0x5be8, 0x77bb,
+  0x6be1, 0x8a79, 0x7c98, 0x6cbe, 0x76cf, 0x65a9, 0x8f97, 0x5d2d,
+  0x5c55, 0x8638, 0x6808, 0x5360, 0x6218, 0x7ad9, 0x6e5b, 0x7efd,
+  0x6a1f, 0x7ae0, 0x5f70, 0x6f33, 0x5f20, 0x638c, 0x6da8, 0x6756,
+  0x4e08, 0x5e10, 0x8d26, 0x4ed7, 0x80c0, 0x7634, 0x969c, 0x62db,
+  0x662d, 0x627e, 0x6cbc, 0x8d75, 0x7167, 0x7f69, 0x5146, 0x8087,
+  0x53ec, 0x906e, 0x6298, 0x54f2, 0x86f0, 0x8f99, 0x8005, 0x9517,
+  0x8517, 0x8fd9, 0x6d59, 0x73cd, 0x659f, 0x771f, 0x7504, 0x7827,
+  0x81fb, 0x8d1e, 0x9488, 0x4fa6, 0x6795, 0x75b9, 0x8bca, 0x9707,
+  0x632f, 0x9547, 0x9635, 0x84b8, 0x6323, 0x7741, 0x5f81, 0x72f0,
+  0x4e89, 0x6014, 0x6574, 0x62ef, 0x6b63, 0x653f,
+  /* 0x56 */
+  0x5e27, 0x75c7, 0x90d1, 0x8bc1, 0x829d, 0x679d, 0x652f, 0x5431,
+  0x8718, 0x77e5, 0x80a2, 0x8102, 0x6c41, 0x4e4b, 0x7ec7, 0x804c,
+  0x76f4, 0x690d, 0x6b96, 0x6267, 0x503c, 0x4f84, 0x5740, 0x6307,
+  0x6b62, 0x8dbe, 0x53ea, 0x65e8, 0x7eb8, 0x5fd7, 0x631a, 0x63b7,
+  0x81f3, 0x81f4, 0x7f6e, 0x5e1c, 0x5cd9, 0x5236, 0x667a, 0x79e9,
+  0x7a1a, 0x8d28, 0x7099, 0x75d4, 0x6ede, 0x6cbb, 0x7a92, 0x4e2d,
+  0x76c5, 0x5fe0, 0x949f, 0x8877, 0x7ec8, 0x79cd, 0x80bf, 0x91cd,
+  0x4ef2, 0x4f17, 0x821f, 0x5468, 0x5dde, 0x6d32, 0x8bcc, 0x7ca5,
+  0x8f74, 0x8098, 0x5e1a, 0x5492, 0x76b1, 0x5b99, 0x663c, 0x9aa4,
+  0x73e0, 0x682a, 0x86db, 0x6731, 0x732a, 0x8bf8, 0x8bdb, 0x9010,
+  0x7af9, 0x70db, 0x716e, 0x62c4, 0x77a9, 0x5631, 0x4e3b, 0x8457,
+  0x67f1, 0x52a9, 0x86c0, 0x8d2e, 0x94f8, 0x7b51,
+  /* 0x57 */
+  0x4f4f, 0x6ce8, 0x795d, 0x9a7b, 0x6293, 0x722a, 0x62fd, 0x4e13,
+  0x7816, 0x8f6c, 0x64b0, 0x8d5a, 0x7bc6, 0x6869, 0x5e84, 0x88c5,
+  0x5986, 0x649e, 0x58ee, 0x72b6, 0x690e, 0x9525, 0x8ffd, 0x8d58,
+  0x5760, 0x7f00, 0x8c06, 0x51c6, 0x6349, 0x62d9, 0x5353, 0x684c,
+  0x7422, 0x8301, 0x914c, 0x5544, 0x7740, 0x707c, 0x6d4a, 0x5179,
+  0x54a8, 0x8d44, 0x59ff, 0x6ecb, 0x6dc4, 0x5b5c, 0x7d2b, 0x4ed4,
+  0x7c7d, 0x6ed3, 0x5b50, 0x81ea, 0x6e0d, 0x5b57, 0x9b03, 0x68d5,
+  0x8e2a, 0x5b97, 0x7efc, 0x603b, 0x7eb5, 0x90b9, 0x8d70, 0x594f,
+  0x63cd, 0x79df, 0x8db3, 0x5352, 0x65cf, 0x7956, 0x8bc5, 0x963b,
+  0x7ec4, 0x94bb, 0x7e82, 0x5634, 0x9189, 0x6700, 0x7f6a, 0x5c0a,
+  0x9075, 0x6628, 0x5de6, 0x4f50, 0x67de, 0x505a, 0x4f5c, 0x5750,
+  0x5ea7, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x58 */
+  0x4e8d, 0x4e0c, 0x5140, 0x4e10, 0x5eff, 0x5345, 0x4e15, 0x4e98,
+  0x4e1e, 0x9b32, 0x5b6c, 0x5669, 0x4e28, 0x79ba, 0x4e3f, 0x5315,
+  0x4e47, 0x592d, 0x723b, 0x536e, 0x6c10, 0x56df, 0x80e4, 0x9997,
+  0x6bd3, 0x777e, 0x9f17, 0x4e36, 0x4e9f, 0x9f10, 0x4e5c, 0x4e69,
+  0x4e93, 0x8288, 0x5b5b, 0x556c, 0x560f, 0x4ec4, 0x538d, 0x539d,
+  0x53a3, 0x53a5, 0x53ae, 0x9765, 0x8d5d, 0x531a, 0x53f5, 0x5326,
+  0x532e, 0x533e, 0x8d5c, 0x5366, 0x5363, 0x5202, 0x5208, 0x520e,
+  0x522d, 0x5233, 0x523f, 0x5240, 0x524c, 0x525e, 0x5261, 0x525c,
+  0x84af, 0x527d, 0x5282, 0x5281, 0x5290, 0x5293, 0x5182, 0x7f54,
+  0x4ebb, 0x4ec3, 0x4ec9, 0x4ec2, 0x4ee8, 0x4ee1, 0x4eeb, 0x4ede,
+  0x4f1b, 0x4ef3, 0x4f22, 0x4f64, 0x4ef5, 0x4f25, 0x4f27, 0x4f09,
+  0x4f2b, 0x4f5e, 0x4f67, 0x6538, 0x4f5a, 0x4f5d,
+  /* 0x59 */
+  0x4f5f, 0x4f57, 0x4f32, 0x4f3d, 0x4f76, 0x4f74, 0x4f91, 0x4f89,
+  0x4f83, 0x4f8f, 0x4f7e, 0x4f7b, 0x4faa, 0x4f7c, 0x4fac, 0x4f94,
+  0x4fe6, 0x4fe8, 0x4fea, 0x4fc5, 0x4fda, 0x4fe3, 0x4fdc, 0x4fd1,
+  0x4fdf, 0x4ff8, 0x5029, 0x504c, 0x4ff3, 0x502c, 0x500f, 0x502e,
+  0x502d, 0x4ffe, 0x501c, 0x500c, 0x5025, 0x5028, 0x507e, 0x5043,
+  0x5055, 0x5048, 0x504e, 0x506c, 0x507b, 0x50a5, 0x50a7, 0x50a9,
+  0x50ba, 0x50d6, 0x5106, 0x50ed, 0x50ec, 0x50e6, 0x50ee, 0x5107,
+  0x510b, 0x4edd, 0x6c3d, 0x4f58, 0x4f65, 0x4fce, 0x9fa0, 0x6c46,
+  0x7c74, 0x516e, 0x5dfd, 0x9ec9, 0x9998, 0x5181, 0x5914, 0x52f9,
+  0x530d, 0x8a07, 0x5310, 0x51eb, 0x5919, 0x5155, 0x4ea0, 0x5156,
+  0x4eb3, 0x886e, 0x88a4, 0x4eb5, 0x8114, 0x88d2, 0x7980, 0x5b34,
+  0x8803, 0x7fb8, 0x51ab, 0x51b1, 0x51bd, 0x51bc,
+  /* 0x5a */
+  0x51c7, 0x5196, 0x51a2, 0x51a5, 0x8ba0, 0x8ba6, 0x8ba7, 0x8baa,
+  0x8bb4, 0x8bb5, 0x8bb7, 0x8bc2, 0x8bc3, 0x8bcb, 0x8bcf, 0x8bce,
+  0x8bd2, 0x8bd3, 0x8bd4, 0x8bd6, 0x8bd8, 0x8bd9, 0x8bdc, 0x8bdf,
+  0x8be0, 0x8be4, 0x8be8, 0x8be9, 0x8bee, 0x8bf0, 0x8bf3, 0x8bf6,
+  0x8bf9, 0x8bfc, 0x8bff, 0x8c00, 0x8c02, 0x8c04, 0x8c07, 0x8c0c,
+  0x8c0f, 0x8c11, 0x8c12, 0x8c14, 0x8c15, 0x8c16, 0x8c19, 0x8c1b,
+  0x8c18, 0x8c1d, 0x8c1f, 0x8c20, 0x8c21, 0x8c25, 0x8c27, 0x8c2a,
+  0x8c2b, 0x8c2e, 0x8c2f, 0x8c32, 0x8c33, 0x8c35, 0x8c36, 0x5369,
+  0x537a, 0x961d, 0x9622, 0x9621, 0x9631, 0x962a, 0x963d, 0x963c,
+  0x9642, 0x9649, 0x9654, 0x965f, 0x9667, 0x966c, 0x9672, 0x9674,
+  0x9688, 0x968d, 0x9697, 0x96b0, 0x9097, 0x909b, 0x909d, 0x9099,
+  0x90ac, 0x90a1, 0x90b4, 0x90b3, 0x90b6, 0x90ba,
+  /* 0x5b */
+  0x90b8, 0x90b0, 0x90cf, 0x90c5, 0x90be, 0x90d0, 0x90c4, 0x90c7,
+  0x90d3, 0x90e6, 0x90e2, 0x90dc, 0x90d7, 0x90db, 0x90eb, 0x90ef,
+  0x90fe, 0x9104, 0x9122, 0x911e, 0x9123, 0x9131, 0x912f, 0x9139,
+  0x9143, 0x9146, 0x520d, 0x5942, 0x52a2, 0x52ac, 0x52ad, 0x52be,
+  0x54ff, 0x52d0, 0x52d6, 0x52f0, 0x53df, 0x71ee, 0x77cd, 0x5ef4,
+  0x51f5, 0x51fc, 0x9b2f, 0x53b6, 0x5f01, 0x755a, 0x5def, 0x574c,
+  0x57a9, 0x57a1, 0x587e, 0x58bc, 0x58c5, 0x58d1, 0x5729, 0x572c,
+  0x572a, 0x5733, 0x5739, 0x572e, 0x572f, 0x575c, 0x573b, 0x5742,
+  0x5769, 0x5785, 0x576b, 0x5786, 0x577c, 0x577b, 0x5768, 0x576d,
+  0x5776, 0x5773, 0x57ad, 0x57a4, 0x578c, 0x57b2, 0x57cf, 0x57a7,
+  0x57b4, 0x5793, 0x57a0, 0x57d5, 0x57d8, 0x57da, 0x57d9, 0x57d2,
+  0x57b8, 0x57f4, 0x57ef, 0x57f8, 0x57e4, 0x57dd,
+  /* 0x5c */
+  0x580b, 0x580d, 0x57fd, 0x57ed, 0x5800, 0x581e, 0x5819, 0x5844,
+  0x5820, 0x5865, 0x586c, 0x5881, 0x5889, 0x589a, 0x5880, 0x99a8,
+  0x9f19, 0x61ff, 0x8279, 0x827d, 0x827f, 0x828f, 0x828a, 0x82a8,
+  0x8284, 0x828e, 0x8291, 0x8297, 0x8299, 0x82ab, 0x82b8, 0x82be,
+  0x82b0, 0x82c8, 0x82ca, 0x82e3, 0x8298, 0x82b7, 0x82ae, 0x82cb,
+  0x82cc, 0x82c1, 0x82a9, 0x82b4, 0x82a1, 0x82aa, 0x829f, 0x82c4,
+  0x82ce, 0x82a4, 0x82e1, 0x8309, 0x82f7, 0x82e4, 0x830f, 0x8307,
+  0x82dc, 0x82f4, 0x82d2, 0x82d8, 0x830c, 0x82fb, 0x82d3, 0x8311,
+  0x831a, 0x8306, 0x8314, 0x8315, 0x82e0, 0x82d5, 0x831c, 0x8351,
+  0x835b, 0x835c, 0x8308, 0x8392, 0x833c, 0x8334, 0x8331, 0x839b,
+  0x835e, 0x832f, 0x834f, 0x8347, 0x8343, 0x835f, 0x8340, 0x8317,
+  0x8360, 0x832d, 0x833a, 0x8333, 0x8366, 0x8365,
+  /* 0x5d */
+  0x8368, 0x831b, 0x8369, 0x836c, 0x836a, 0x836d, 0x836e, 0x83b0,
+  0x8378, 0x83b3, 0x83b4, 0x83a0, 0x83aa, 0x8393, 0x839c, 0x8385,
+  0x837c, 0x83b6, 0x83a9, 0x837d, 0x83b8, 0x837b, 0x8398, 0x839e,
+  0x83a8, 0x83ba, 0x83bc, 0x83c1, 0x8401, 0x83e5, 0x83d8, 0x5807,
+  0x8418, 0x840b, 0x83dd, 0x83fd, 0x83d6, 0x841c, 0x8438, 0x8411,
+  0x8406, 0x83d4, 0x83df, 0x840f, 0x8403, 0x83f8, 0x83f9, 0x83ea,
+  0x83c5, 0x83c0, 0x8426, 0x83f0, 0x83e1, 0x845c, 0x8451, 0x845a,
+  0x8459, 0x8473, 0x8487, 0x8488, 0x847a, 0x8489, 0x8478, 0x843c,
+  0x8446, 0x8469, 0x8476, 0x848c, 0x848e, 0x8431, 0x846d, 0x84c1,
+  0x84cd, 0x84d0, 0x84e6, 0x84bd, 0x84d3, 0x84ca, 0x84bf, 0x84ba,
+  0x84e0, 0x84a1, 0x84b9, 0x84b4, 0x8497, 0x84e5, 0x84e3, 0x850c,
+  0x750d, 0x8538, 0x84f0, 0x8539, 0x851f, 0x853a,
+  /* 0x5e */
+  0x8556, 0x853b, 0x84ff, 0x84fc, 0x8559, 0x8548, 0x8568, 0x8564,
+  0x855e, 0x857a, 0x77a2, 0x8543, 0x8572, 0x857b, 0x85a4, 0x85a8,
+  0x8587, 0x858f, 0x8579, 0x85ae, 0x859c, 0x8585, 0x85b9, 0x85b7,
+  0x85b0, 0x85d3, 0x85c1, 0x85dc, 0x85ff, 0x8627, 0x8605, 0x8629,
+  0x8616, 0x863c, 0x5efe, 0x5f08, 0x593c, 0x5941, 0x8037, 0x5955,
+  0x595a, 0x5958, 0x530f, 0x5c22, 0x5c25, 0x5c2c, 0x5c34, 0x624c,
+  0x626a, 0x629f, 0x62bb, 0x62ca, 0x62da, 0x62d7, 0x62ee, 0x6322,
+  0x62f6, 0x6339, 0x634b, 0x6343, 0x63ad, 0x63f6, 0x6371, 0x637a,
+  0x638e, 0x63b4, 0x636d, 0x63ac, 0x638a, 0x6369, 0x63ae, 0x63bc,
+  0x63f2, 0x63f8, 0x63e0, 0x63ff, 0x63c4, 0x63de, 0x63ce, 0x6452,
+  0x63c6, 0x63be, 0x6445, 0x6441, 0x640b, 0x641b, 0x6420, 0x640c,
+  0x6426, 0x6421, 0x645e, 0x6484, 0x646d, 0x6496,
+  /* 0x5f */
+  0x647a, 0x64b7, 0x64b8, 0x6499, 0x64ba, 0x64c0, 0x64d0, 0x64d7,
+  0x64e4, 0x64e2, 0x6509, 0x6525, 0x652e, 0x5f0b, 0x5fd2, 0x7519,
+  0x5f11, 0x535f, 0x53f1, 0x53fd, 0x53e9, 0x53e8, 0x53fb, 0x5412,
+  0x5416, 0x5406, 0x544b, 0x5452, 0x5453, 0x5454, 0x5456, 0x5443,
+  0x5421, 0x5457, 0x5459, 0x5423, 0x5432, 0x5482, 0x5494, 0x5477,
+  0x5471, 0x5464, 0x549a, 0x549b, 0x5484, 0x5476, 0x5466, 0x549d,
+  0x54d0, 0x54ad, 0x54c2, 0x54b4, 0x54d2, 0x54a7, 0x54a6, 0x54d3,
+  0x54d4, 0x5472, 0x54a3, 0x54d5, 0x54bb, 0x54bf, 0x54cc, 0x54d9,
+  0x54da, 0x54dc, 0x54a9, 0x54aa, 0x54a4, 0x54dd, 0x54cf, 0x54de,
+  0x551b, 0x54e7, 0x5520, 0x54fd, 0x5514, 0x54f3, 0x5522, 0x5523,
+  0x550f, 0x5511, 0x5527, 0x552a, 0x5567, 0x558f, 0x55b5, 0x5549,
+  0x556d, 0x5541, 0x5555, 0x553f, 0x5550, 0x553c,
+  /* 0x60 */
+  0x5537, 0x5556, 0x5575, 0x5576, 0x5577, 0x5533, 0x5530, 0x555c,
+  0x558b, 0x55d2, 0x5583, 0x55b1, 0x55b9, 0x5588, 0x5581, 0x559f,
+  0x557e, 0x55d6, 0x5591, 0x557b, 0x55df, 0x55bd, 0x55be, 0x5594,
+  0x5599, 0x55ea, 0x55f7, 0x55c9, 0x561f, 0x55d1, 0x55eb, 0x55ec,
+  0x55d4, 0x55e6, 0x55dd, 0x55c4, 0x55ef, 0x55e5, 0x55f2, 0x55f3,
+  0x55cc, 0x55cd, 0x55e8, 0x55f5, 0x55e4, 0x8f94, 0x561e, 0x5608,
+  0x560c, 0x5601, 0x5624, 0x5623, 0x55fe, 0x5600, 0x5627, 0x562d,
+  0x5658, 0x5639, 0x5657, 0x562c, 0x564d, 0x5662, 0x5659, 0x565c,
+  0x564c, 0x5654, 0x5686, 0x5664, 0x5671, 0x566b, 0x567b, 0x567c,
+  0x5685, 0x5693, 0x56af, 0x56d4, 0x56d7, 0x56dd, 0x56e1, 0x56f5,
+  0x56eb, 0x56f9, 0x56ff, 0x5704, 0x570a, 0x5709, 0x571c, 0x5e0f,
+  0x5e19, 0x5e14, 0x5e11, 0x5e31, 0x5e3b, 0x5e3c,
+  /* 0x61 */
+  0x5e37, 0x5e44, 0x5e54, 0x5e5b, 0x5e5e, 0x5e61, 0x5c8c, 0x5c7a,
+  0x5c8d, 0x5c90, 0x5c96, 0x5c88, 0x5c98, 0x5c99, 0x5c91, 0x5c9a,
+  0x5c9c, 0x5cb5, 0x5ca2, 0x5cbd, 0x5cac, 0x5cab, 0x5cb1, 0x5ca3,
+  0x5cc1, 0x5cb7, 0x5cc4, 0x5cd2, 0x5ce4, 0x5ccb, 0x5ce5, 0x5d02,
+  0x5d03, 0x5d27, 0x5d26, 0x5d2e, 0x5d24, 0x5d1e, 0x5d06, 0x5d1b,
+  0x5d58, 0x5d3e, 0x5d34, 0x5d3d, 0x5d6c, 0x5d5b, 0x5d6f, 0x5d5d,
+  0x5d6b, 0x5d4b, 0x5d4a, 0x5d69, 0x5d74, 0x5d82, 0x5d99, 0x5d9d,
+  0x8c73, 0x5db7, 0x5dc5, 0x5f73, 0x5f77, 0x5f82, 0x5f87, 0x5f89,
+  0x5f8c, 0x5f95, 0x5f99, 0x5f9c, 0x5fa8, 0x5fad, 0x5fb5, 0x5fbc,
+  0x8862, 0x5f61, 0x72ad, 0x72b0, 0x72b4, 0x72b7, 0x72b8, 0x72c3,
+  0x72c1, 0x72ce, 0x72cd, 0x72d2, 0x72e8, 0x72ef, 0x72e9, 0x72f2,
+  0x72f4, 0x72f7, 0x7301, 0x72f3, 0x7303, 0x72fa,
+  /* 0x62 */
+  0x72fb, 0x7317, 0x7313, 0x7321, 0x730a, 0x731e, 0x731d, 0x7315,
+  0x7322, 0x7339, 0x7325, 0x732c, 0x7338, 0x7331, 0x7350, 0x734d,
+  0x7357, 0x7360, 0x736c, 0x736f, 0x737e, 0x821b, 0x5925, 0x98e7,
+  0x5924, 0x5902, 0x9963, 0x9967, 0x9968, 0x9969, 0x996a, 0x996b,
+  0x996c, 0x9974, 0x9977, 0x997d, 0x9980, 0x9984, 0x9987, 0x998a,
+  0x998d, 0x9990, 0x9991, 0x9993, 0x9994, 0x9995, 0x5e80, 0x5e91,
+  0x5e8b, 0x5e96, 0x5ea5, 0x5ea0, 0x5eb9, 0x5eb5, 0x5ebe, 0x5eb3,
+  0x8d53, 0x5ed2, 0x5ed1, 0x5edb, 0x5ee8, 0x5eea, 0x81ba, 0x5fc4,
+  0x5fc9, 0x5fd6, 0x5fcf, 0x6003, 0x5fee, 0x6004, 0x5fe1, 0x5fe4,
+  0x5ffe, 0x6005, 0x6006, 0x5fea, 0x5fed, 0x5ff8, 0x6019, 0x6035,
+  0x6026, 0x601b, 0x600f, 0x600d, 0x6029, 0x602b, 0x600a, 0x603f,
+  0x6021, 0x6078, 0x6079, 0x607b, 0x607a, 0x6042,
+  /* 0x63 */
+  0x606a, 0x607d, 0x6096, 0x609a, 0x60ad, 0x609d, 0x6083, 0x6092,
+  0x608c, 0x609b, 0x60ec, 0x60bb, 0x60b1, 0x60dd, 0x60d8, 0x60c6,
+  0x60da, 0x60b4, 0x6120, 0x6126, 0x6115, 0x6123, 0x60f4, 0x6100,
+  0x610e, 0x612b, 0x614a, 0x6175, 0x61ac, 0x6194, 0x61a7, 0x61b7,
+  0x61d4, 0x61f5, 0x5fdd, 0x96b3, 0x95e9, 0x95eb, 0x95f1, 0x95f3,
+  0x95f5, 0x95f6, 0x95fc, 0x95fe, 0x9603, 0x9604, 0x9606, 0x9608,
+  0x960a, 0x960b, 0x960c, 0x960d, 0x960f, 0x9612, 0x9615, 0x9616,
+  0x9617, 0x9619, 0x961a, 0x4e2c, 0x723f, 0x6215, 0x6c35, 0x6c54,
+  0x6c5c, 0x6c4a, 0x6ca3, 0x6c85, 0x6c90, 0x6c94, 0x6c8c, 0x6c68,
+  0x6c69, 0x6c74, 0x6c76, 0x6c86, 0x6ca9, 0x6cd0, 0x6cd4, 0x6cad,
+  0x6cf7, 0x6cf8, 0x6cf1, 0x6cd7, 0x6cb2, 0x6ce0, 0x6cd6, 0x6cfa,
+  0x6ceb, 0x6cee, 0x6cb1, 0x6cd3, 0x6cef, 0x6cfe,
+  /* 0x64 */
+  0x6d39, 0x6d27, 0x6d0c, 0x6d43, 0x6d48, 0x6d07, 0x6d04, 0x6d19,
+  0x6d0e, 0x6d2b, 0x6d4d, 0x6d2e, 0x6d35, 0x6d1a, 0x6d4f, 0x6d52,
+  0x6d54, 0x6d33, 0x6d91, 0x6d6f, 0x6d9e, 0x6da0, 0x6d5e, 0x6d93,
+  0x6d94, 0x6d5c, 0x6d60, 0x6d7c, 0x6d63, 0x6e1a, 0x6dc7, 0x6dc5,
+  0x6dde, 0x6e0e, 0x6dbf, 0x6de0, 0x6e11, 0x6de6, 0x6ddd, 0x6dd9,
+  0x6e16, 0x6dab, 0x6e0c, 0x6dae, 0x6e2b, 0x6e6e, 0x6e4e, 0x6e6b,
+  0x6eb2, 0x6e5f, 0x6e86, 0x6e53, 0x6e54, 0x6e32, 0x6e25, 0x6e44,
+  0x6edf, 0x6eb1, 0x6e98, 0x6ee0, 0x6f2d, 0x6ee2, 0x6ea5, 0x6ea7,
+  0x6ebd, 0x6ebb, 0x6eb7, 0x6ed7, 0x6eb4, 0x6ecf, 0x6e8f, 0x6ec2,
+  0x6e9f, 0x6f62, 0x6f46, 0x6f47, 0x6f24, 0x6f15, 0x6ef9, 0x6f2f,
+  0x6f36, 0x6f4b, 0x6f74, 0x6f2a, 0x6f09, 0x6f29, 0x6f89, 0x6f8d,
+  0x6f8c, 0x6f78, 0x6f72, 0x6f7c, 0x6f7a, 0x6fd1,
+  /* 0x65 */
+  0x6fc9, 0x6fa7, 0x6fb9, 0x6fb6, 0x6fc2, 0x6fe1, 0x6fee, 0x6fde,
+  0x6fe0, 0x6fef, 0x701a, 0x7023, 0x701b, 0x7039, 0x7035, 0x704f,
+  0x705e, 0x5b80, 0x5b84, 0x5b95, 0x5b93, 0x5ba5, 0x5bb8, 0x752f,
+  0x9a9e, 0x6434, 0x5be4, 0x5bee, 0x8930, 0x5bf0, 0x8e47, 0x8b07,
+  0x8fb6, 0x8fd3, 0x8fd5, 0x8fe5, 0x8fee, 0x8fe4, 0x8fe9, 0x8fe6,
+  0x8ff3, 0x8fe8, 0x9005, 0x9004, 0x900b, 0x9026, 0x9011, 0x900d,
+  0x9016, 0x9021, 0x9035, 0x9036, 0x902d, 0x902f, 0x9044, 0x9051,
+  0x9052, 0x9050, 0x9068, 0x9058, 0x9062, 0x905b, 0x66b9, 0x9074,
+  0x907d, 0x9082, 0x9088, 0x9083, 0x908b, 0x5f50, 0x5f57, 0x5f56,
+  0x5f58, 0x5c3b, 0x54ab, 0x5c50, 0x5c59, 0x5b71, 0x5c63, 0x5c66,
+  0x7fbc, 0x5f2a, 0x5f29, 0x5f2d, 0x8274, 0x5f3c, 0x9b3b, 0x5c6e,
+  0x5981, 0x5983, 0x598d, 0x59a9, 0x59aa, 0x59a3,
+  /* 0x66 */
+  0x5997, 0x59ca, 0x59ab, 0x599e, 0x59a4, 0x59d2, 0x59b2, 0x59af,
+  0x59d7, 0x59be, 0x5a05, 0x5a06, 0x59dd, 0x5a08, 0x59e3, 0x59d8,
+  0x59f9, 0x5a0c, 0x5a09, 0x5a32, 0x5a34, 0x5a11, 0x5a23, 0x5a13,
+  0x5a40, 0x5a67, 0x5a4a, 0x5a55, 0x5a3c, 0x5a62, 0x5a75, 0x80ec,
+  0x5aaa, 0x5a9b, 0x5a77, 0x5a7a, 0x5abe, 0x5aeb, 0x5ab2, 0x5ad2,
+  0x5ad4, 0x5ab8, 0x5ae0, 0x5ae3, 0x5af1, 0x5ad6, 0x5ae6, 0x5ad8,
+  0x5adc, 0x5b09, 0x5b17, 0x5b16, 0x5b32, 0x5b37, 0x5b40, 0x5c15,
+  0x5c1c, 0x5b5a, 0x5b65, 0x5b73, 0x5b51, 0x5b53, 0x5b62, 0x9a75,
+  0x9a77, 0x9a78, 0x9a7a, 0x9a7f, 0x9a7d, 0x9a80, 0x9a81, 0x9a85,
+  0x9a88, 0x9a8a, 0x9a90, 0x9a92, 0x9a93, 0x9a96, 0x9a98, 0x9a9b,
+  0x9a9c, 0x9a9d, 0x9a9f, 0x9aa0, 0x9aa2, 0x9aa3, 0x9aa5, 0x9aa7,
+  0x7e9f, 0x7ea1, 0x7ea3, 0x7ea5, 0x7ea8, 0x7ea9,
+  /* 0x67 */
+  0x7ead, 0x7eb0, 0x7ebe, 0x7ec0, 0x7ec1, 0x7ec2, 0x7ec9, 0x7ecb,
+  0x7ecc, 0x7ed0, 0x7ed4, 0x7ed7, 0x7edb, 0x7ee0, 0x7ee1, 0x7ee8,
+  0x7eeb, 0x7eee, 0x7eef, 0x7ef1, 0x7ef2, 0x7f0d, 0x7ef6, 0x7efa,
+  0x7efb, 0x7efe, 0x7f01, 0x7f02, 0x7f03, 0x7f07, 0x7f08, 0x7f0b,
+  0x7f0c, 0x7f0f, 0x7f11, 0x7f12, 0x7f17, 0x7f19, 0x7f1c, 0x7f1b,
+  0x7f1f, 0x7f21, 0x7f22, 0x7f23, 0x7f24, 0x7f25, 0x7f26, 0x7f27,
+  0x7f2a, 0x7f2b, 0x7f2c, 0x7f2d, 0x7f2f, 0x7f30, 0x7f31, 0x7f32,
+  0x7f33, 0x7f35, 0x5e7a, 0x757f, 0x5ddb, 0x753e, 0x9095, 0x738e,
+  0x7391, 0x73ae, 0x73a2, 0x739f, 0x73cf, 0x73c2, 0x73d1, 0x73b7,
+  0x73b3, 0x73c0, 0x73c9, 0x73c8, 0x73e5, 0x73d9, 0x987c, 0x740a,
+  0x73e9, 0x73e7, 0x73de, 0x73ba, 0x73f2, 0x740f, 0x742a, 0x745b,
+  0x7426, 0x7425, 0x7428, 0x7430, 0x742e, 0x742c,
+  /* 0x68 */
+  0x741b, 0x741a, 0x7441, 0x745c, 0x7457, 0x7455, 0x7459, 0x7477,
+  0x746d, 0x747e, 0x749c, 0x748e, 0x7480, 0x7481, 0x7487, 0x748b,
+  0x749e, 0x74a8, 0x74a9, 0x7490, 0x74a7, 0x74d2, 0x74ba, 0x97ea,
+  0x97eb, 0x97ec, 0x674c, 0x6753, 0x675e, 0x6748, 0x6769, 0x67a5,
+  0x6787, 0x676a, 0x6773, 0x6798, 0x67a7, 0x6775, 0x67a8, 0x679e,
+  0x67ad, 0x678b, 0x6777, 0x677c, 0x67f0, 0x6809, 0x67d8, 0x680a,
+  0x67e9, 0x67b0, 0x680c, 0x67d9, 0x67b5, 0x67da, 0x67b3, 0x67dd,
+  0x6800, 0x67c3, 0x67b8, 0x67e2, 0x680e, 0x67c1, 0x67fd, 0x6832,
+  0x6833, 0x6860, 0x6861, 0x684e, 0x6862, 0x6844, 0x6864, 0x6883,
+  0x681d, 0x6855, 0x6866, 0x6841, 0x6867, 0x6840, 0x683e, 0x684a,
+  0x6849, 0x6829, 0x68b5, 0x688f, 0x6874, 0x6877, 0x6893, 0x686b,
+  0x68c2, 0x696e, 0x68fc, 0x691f, 0x6920, 0x68f9,
+  /* 0x69 */
+  0x6924, 0x68f0, 0x690b, 0x6901, 0x6957, 0x68e3, 0x6910, 0x6971,
+  0x6939, 0x6960, 0x6942, 0x695d, 0x6984, 0x696b, 0x6980, 0x6998,
+  0x6978, 0x6934, 0x69cc, 0x6987, 0x6988, 0x69ce, 0x6989, 0x6966,
+  0x6963, 0x6979, 0x699b, 0x69a7, 0x69bb, 0x69ab, 0x69ad, 0x69d4,
+  0x69b1, 0x69c1, 0x69ca, 0x69df, 0x6995, 0x69e0, 0x698d, 0x69ff,
+  0x6a2f, 0x69ed, 0x6a17, 0x6a18, 0x6a65, 0x69f2, 0x6a44, 0x6a3e,
+  0x6aa0, 0x6a50, 0x6a5b, 0x6a35, 0x6a8e, 0x6a79, 0x6a3d, 0x6a28,
+  0x6a58, 0x6a7c, 0x6a91, 0x6a90, 0x6aa9, 0x6a97, 0x6aab, 0x7337,
+  0x7352, 0x6b81, 0x6b82, 0x6b87, 0x6b84, 0x6b92, 0x6b93, 0x6b8d,
+  0x6b9a, 0x6b9b, 0x6ba1, 0x6baa, 0x8f6b, 0x8f6d, 0x8f71, 0x8f72,
+  0x8f73, 0x8f75, 0x8f76, 0x8f78, 0x8f77, 0x8f79, 0x8f7a, 0x8f7c,
+  0x8f7e, 0x8f81, 0x8f82, 0x8f84, 0x8f87, 0x8f8b,
+  /* 0x6a */
+  0x8f8d, 0x8f8e, 0x8f8f, 0x8f98, 0x8f9a, 0x8ece, 0x620b, 0x6217,
+  0x621b, 0x621f, 0x6222, 0x6221, 0x6225, 0x6224, 0x622c, 0x81e7,
+  0x74ef, 0x74f4, 0x74ff, 0x750f, 0x7511, 0x7513, 0x6534, 0x65ee,
+  0x65ef, 0x65f0, 0x660a, 0x6619, 0x6772, 0x6603, 0x6615, 0x6600,
+  0x7085, 0x66f7, 0x661d, 0x6634, 0x6631, 0x6636, 0x6635, 0x8006,
+  0x665f, 0x6654, 0x6641, 0x664f, 0x6656, 0x6661, 0x6657, 0x6677,
+  0x6684, 0x668c, 0x66a7, 0x669d, 0x66be, 0x66db, 0x66dc, 0x66e6,
+  0x66e9, 0x8d32, 0x8d33, 0x8d36, 0x8d3b, 0x8d3d, 0x8d40, 0x8d45,
+  0x8d46, 0x8d48, 0x8d49, 0x8d47, 0x8d4d, 0x8d55, 0x8d59, 0x89c7,
+  0x89ca, 0x89cb, 0x89cc, 0x89ce, 0x89cf, 0x89d0, 0x89d1, 0x726e,
+  0x729f, 0x725d, 0x7266, 0x726f, 0x727e, 0x727f, 0x7284, 0x728b,
+  0x728d, 0x728f, 0x7292, 0x6308, 0x6332, 0x63b0,
+  /* 0x6b */
+  0x643f, 0x64d8, 0x8004, 0x6bea, 0x6bf3, 0x6bfd, 0x6bf5, 0x6bf9,
+  0x6c05, 0x6c07, 0x6c06, 0x6c0d, 0x6c15, 0x6c18, 0x6c19, 0x6c1a,
+  0x6c21, 0x6c29, 0x6c24, 0x6c2a, 0x6c32, 0x6535, 0x6555, 0x656b,
+  0x724d, 0x7252, 0x7256, 0x7230, 0x8662, 0x5216, 0x809f, 0x809c,
+  0x8093, 0x80bc, 0x670a, 0x80bd, 0x80b1, 0x80ab, 0x80ad, 0x80b4,
+  0x80b7, 0x80e7, 0x80e8, 0x80e9, 0x80ea, 0x80db, 0x80c2, 0x80c4,
+  0x80d9, 0x80cd, 0x80d7, 0x6710, 0x80dd, 0x80eb, 0x80f1, 0x80f4,
+  0x80ed, 0x810d, 0x810e, 0x80f2, 0x80fc, 0x6715, 0x8112, 0x8c5a,
+  0x8136, 0x811e, 0x812c, 0x8118, 0x8132, 0x8148, 0x814c, 0x8153,
+  0x8174, 0x8159, 0x815a, 0x8171, 0x8160, 0x8169, 0x817c, 0x817d,
+  0x816d, 0x8167, 0x584d, 0x5ab5, 0x8188, 0x8182, 0x8191, 0x6ed5,
+  0x81a3, 0x81aa, 0x81cc, 0x6726, 0x81ca, 0x81bb,
+  /* 0x6c */
+  0x81c1, 0x81a6, 0x6b24, 0x6b37, 0x6b39, 0x6b43, 0x6b46, 0x6b59,
+  0x98d1, 0x98d2, 0x98d3, 0x98d5, 0x98d9, 0x98da, 0x6bb3, 0x5f40,
+  0x6bc2, 0x89f3, 0x6590, 0x9f51, 0x6593, 0x65bc, 0x65c6, 0x65c4,
+  0x65c3, 0x65cc, 0x65ce, 0x65d2, 0x65d6, 0x7080, 0x709c, 0x7096,
+  0x709d, 0x70bb, 0x70c0, 0x70b7, 0x70ab, 0x70b1, 0x70e8, 0x70ca,
+  0x7110, 0x7113, 0x7116, 0x712f, 0x7131, 0x7173, 0x715c, 0x7168,
+  0x7145, 0x7172, 0x714a, 0x7178, 0x717a, 0x7198, 0x71b3, 0x71b5,
+  0x71a8, 0x71a0, 0x71e0, 0x71d4, 0x71e7, 0x71f9, 0x721d, 0x7228,
+  0x706c, 0x7118, 0x7166, 0x71b9, 0x623e, 0x623d, 0x6243, 0x6248,
+  0x6249, 0x793b, 0x7940, 0x7946, 0x7949, 0x795b, 0x795c, 0x7953,
+  0x795a, 0x7962, 0x7957, 0x7960, 0x796f, 0x7967, 0x797a, 0x7985,
+  0x798a, 0x799a, 0x79a7, 0x79b3, 0x5fd1, 0x5fd0,
+  /* 0x6d */
+  0x603c, 0x605d, 0x605a, 0x6067, 0x6041, 0x6059, 0x6063, 0x60ab,
+  0x6106, 0x610d, 0x615d, 0x61a9, 0x619d, 0x61cb, 0x61d1, 0x6206,
+  0x8080, 0x807f, 0x6c93, 0x6cf6, 0x6dfc, 0x77f6, 0x77f8, 0x7800,
+  0x7809, 0x7817, 0x7818, 0x7811, 0x65ab, 0x782d, 0x781c, 0x781d,
+  0x7839, 0x783a, 0x783b, 0x781f, 0x783c, 0x7825, 0x782c, 0x7823,
+  0x7829, 0x784e, 0x786d, 0x7856, 0x7857, 0x7826, 0x7850, 0x7847,
+  0x784c, 0x786a, 0x789b, 0x7893, 0x789a, 0x7887, 0x789c, 0x78a1,
+  0x78a3, 0x78b2, 0x78b9, 0x78a5, 0x78d4, 0x78d9, 0x78c9, 0x78ec,
+  0x78f2, 0x7905, 0x78f4, 0x7913, 0x7924, 0x791e, 0x7934, 0x9f9b,
+  0x9ef9, 0x9efb, 0x9efc, 0x76f1, 0x7704, 0x770d, 0x76f9, 0x7707,
+  0x7708, 0x771a, 0x7722, 0x7719, 0x772d, 0x7726, 0x7735, 0x7738,
+  0x7750, 0x7751, 0x7747, 0x7743, 0x775a, 0x7768,
+  /* 0x6e */
+  0x7762, 0x7765, 0x777f, 0x778d, 0x777d, 0x7780, 0x778c, 0x7791,
+  0x779f, 0x77a0, 0x77b0, 0x77b5, 0x77bd, 0x753a, 0x7540, 0x754e,
+  0x754b, 0x7548, 0x755b, 0x7572, 0x7579, 0x7583, 0x7f58, 0x7f61,
+  0x7f5f, 0x8a48, 0x7f68, 0x7f74, 0x7f71, 0x7f79, 0x7f81, 0x7f7e,
+  0x76cd, 0x76e5, 0x8832, 0x9485, 0x9486, 0x9487, 0x948b, 0x948a,
+  0x948c, 0x948d, 0x948f, 0x9490, 0x9494, 0x9497, 0x9495, 0x949a,
+  0x949b, 0x949c, 0x94a3, 0x94a4, 0x94ab, 0x94aa, 0x94ad, 0x94ac,
+  0x94af, 0x94b0, 0x94b2, 0x94b4, 0x94b6, 0x94b7, 0x94b8, 0x94b9,
+  0x94ba, 0x94bc, 0x94bd, 0x94bf, 0x94c4, 0x94c8, 0x94c9, 0x94ca,
+  0x94cb, 0x94cc, 0x94cd, 0x94ce, 0x94d0, 0x94d1, 0x94d2, 0x94d5,
+  0x94d6, 0x94d7, 0x94d9, 0x94d8, 0x94db, 0x94de, 0x94df, 0x94e0,
+  0x94e2, 0x94e4, 0x94e5, 0x94e7, 0x94e8, 0x94ea,
+  /* 0x6f */
+  0x94e9, 0x94eb, 0x94ee, 0x94ef, 0x94f3, 0x94f4, 0x94f5, 0x94f7,
+  0x94f9, 0x94fc, 0x94fd, 0x94ff, 0x9503, 0x9502, 0x9506, 0x9507,
+  0x9509, 0x950a, 0x950d, 0x950e, 0x950f, 0x9512, 0x9513, 0x9514,
+  0x9515, 0x9516, 0x9518, 0x951b, 0x951d, 0x951e, 0x951f, 0x9522,
+  0x952a, 0x952b, 0x9529, 0x952c, 0x9531, 0x9532, 0x9534, 0x9536,
+  0x9537, 0x9538, 0x953c, 0x953e, 0x953f, 0x9542, 0x9535, 0x9544,
+  0x9545, 0x9546, 0x9549, 0x954c, 0x954e, 0x954f, 0x9552, 0x9553,
+  0x9554, 0x9556, 0x9557, 0x9558, 0x9559, 0x955b, 0x955e, 0x955f,
+  0x955d, 0x9561, 0x9562, 0x9564, 0x9565, 0x9566, 0x9567, 0x9568,
+  0x9569, 0x956a, 0x956b, 0x956c, 0x956f, 0x9571, 0x9572, 0x9573,
+  0x953a, 0x77e7, 0x77ec, 0x96c9, 0x79d5, 0x79ed, 0x79e3, 0x79eb,
+  0x7a06, 0x5d47, 0x7a03, 0x7a02, 0x7a1e, 0x7a14,
+  /* 0x70 */
+  0x7a39, 0x7a37, 0x7a51, 0x9ecf, 0x99a5, 0x7a70, 0x7688, 0x768e,
+  0x7693, 0x7699, 0x76a4, 0x74de, 0x74e0, 0x752c, 0x9e20, 0x9e22,
+  0x9e28, 0x9e29, 0x9e2a, 0x9e2b, 0x9e2c, 0x9e32, 0x9e31, 0x9e36,
+  0x9e38, 0x9e37, 0x9e39, 0x9e3a, 0x9e3e, 0x9e41, 0x9e42, 0x9e44,
+  0x9e46, 0x9e47, 0x9e48, 0x9e49, 0x9e4b, 0x9e4c, 0x9e4e, 0x9e51,
+  0x9e55, 0x9e57, 0x9e5a, 0x9e5b, 0x9e5c, 0x9e5e, 0x9e63, 0x9e66,
+  0x9e67, 0x9e68, 0x9e69, 0x9e6a, 0x9e6b, 0x9e6c, 0x9e71, 0x9e6d,
+  0x9e73, 0x7592, 0x7594, 0x7596, 0x75a0, 0x759d, 0x75ac, 0x75a3,
+  0x75b3, 0x75b4, 0x75b8, 0x75c4, 0x75b1, 0x75b0, 0x75c3, 0x75c2,
+  0x75d6, 0x75cd, 0x75e3, 0x75e8, 0x75e6, 0x75e4, 0x75eb, 0x75e7,
+  0x7603, 0x75f1, 0x75fc, 0x75ff, 0x7610, 0x7600, 0x7605, 0x760c,
+  0x7617, 0x760a, 0x7625, 0x7618, 0x7615, 0x7619,
+  /* 0x71 */
+  0x761b, 0x763c, 0x7622, 0x7620, 0x7640, 0x762d, 0x7630, 0x763f,
+  0x7635, 0x7643, 0x763e, 0x7633, 0x764d, 0x765e, 0x7654, 0x765c,
+  0x7656, 0x766b, 0x766f, 0x7fca, 0x7ae6, 0x7a78, 0x7a79, 0x7a80,
+  0x7a86, 0x7a88, 0x7a95, 0x7aa6, 0x7aa0, 0x7aac, 0x7aa8, 0x7aad,
+  0x7ab3, 0x8864, 0x8869, 0x8872, 0x887d, 0x887f, 0x8882, 0x88a2,
+  0x88c6, 0x88b7, 0x88bc, 0x88c9, 0x88e2, 0x88ce, 0x88e3, 0x88e5,
+  0x88f1, 0x891a, 0x88fc, 0x88e8, 0x88fe, 0x88f0, 0x8921, 0x8919,
+  0x8913, 0x891b, 0x890a, 0x8934, 0x892b, 0x8936, 0x8941, 0x8966,
+  0x897b, 0x758b, 0x80e5, 0x76b2, 0x76b4, 0x77dc, 0x8012, 0x8014,
+  0x8016, 0x801c, 0x8020, 0x8022, 0x8025, 0x8026, 0x8027, 0x8029,
+  0x8028, 0x8031, 0x800b, 0x8035, 0x8043, 0x8046, 0x804d, 0x8052,
+  0x8069, 0x8071, 0x8983, 0x9878, 0x9880, 0x9883,
+  /* 0x72 */
+  0x9889, 0x988c, 0x988d, 0x988f, 0x9894, 0x989a, 0x989b, 0x989e,
+  0x989f, 0x98a1, 0x98a2, 0x98a5, 0x98a6, 0x864d, 0x8654, 0x866c,
+  0x866e, 0x867f, 0x867a, 0x867c, 0x867b, 0x86a8, 0x868d, 0x868b,
+  0x86ac, 0x869d, 0x86a7, 0x86a3, 0x86aa, 0x8693, 0x86a9, 0x86b6,
+  0x86c4, 0x86b5, 0x86ce, 0x86b0, 0x86ba, 0x86b1, 0x86af, 0x86c9,
+  0x86cf, 0x86b4, 0x86e9, 0x86f1, 0x86f2, 0x86ed, 0x86f3, 0x86d0,
+  0x8713, 0x86de, 0x86f4, 0x86df, 0x86d8, 0x86d1, 0x8703, 0x8707,
+  0x86f8, 0x8708, 0x870a, 0x870d, 0x8709, 0x8723, 0x873b, 0x871e,
+  0x8725, 0x872e, 0x871a, 0x873e, 0x8748, 0x8734, 0x8731, 0x8729,
+  0x8737, 0x873f, 0x8782, 0x8722, 0x877d, 0x877e, 0x877b, 0x8760,
+  0x8770, 0x874c, 0x876e, 0x878b, 0x8753, 0x8763, 0x877c, 0x8764,
+  0x8759, 0x8765, 0x8793, 0x87af, 0x87a8, 0x87d2,
+  /* 0x73 */
+  0x87c6, 0x8788, 0x8785, 0x87ad, 0x8797, 0x8783, 0x87ab, 0x87e5,
+  0x87ac, 0x87b5, 0x87b3, 0x87cb, 0x87d3, 0x87bd, 0x87d1, 0x87c0,
+  0x87ca, 0x87db, 0x87ea, 0x87e0, 0x87ee, 0x8816, 0x8813, 0x87fe,
+  0x880a, 0x881b, 0x8821, 0x8839, 0x883c, 0x7f36, 0x7f42, 0x7f44,
+  0x7f45, 0x8210, 0x7afa, 0x7afd, 0x7b08, 0x7b03, 0x7b04, 0x7b15,
+  0x7b0a, 0x7b2b, 0x7b0f, 0x7b47, 0x7b38, 0x7b2a, 0x7b19, 0x7b2e,
+  0x7b31, 0x7b20, 0x7b25, 0x7b24, 0x7b33, 0x7b3e, 0x7b1e, 0x7b58,
+  0x7b5a, 0x7b45, 0x7b75, 0x7b4c, 0x7b5d, 0x7b60, 0x7b6e, 0x7b7b,
+  0x7b62, 0x7b72, 0x7b71, 0x7b90, 0x7ba6, 0x7ba7, 0x7bb8, 0x7bac,
+  0x7b9d, 0x7ba8, 0x7b85, 0x7baa, 0x7b9c, 0x7ba2, 0x7bab, 0x7bb4,
+  0x7bd1, 0x7bc1, 0x7bcc, 0x7bdd, 0x7bda, 0x7be5, 0x7be6, 0x7bea,
+  0x7c0c, 0x7bfe, 0x7bfc, 0x7c0f, 0x7c16, 0x7c0b,
+  /* 0x74 */
+  0x7c1f, 0x7c2a, 0x7c26, 0x7c38, 0x7c41, 0x7c40, 0x81fe, 0x8201,
+  0x8202, 0x8204, 0x81ec, 0x8844, 0x8221, 0x8222, 0x8223, 0x822d,
+  0x822f, 0x8228, 0x822b, 0x8238, 0x823b, 0x8233, 0x8234, 0x823e,
+  0x8244, 0x8249, 0x824b, 0x824f, 0x825a, 0x825f, 0x8268, 0x887e,
+  0x8885, 0x8888, 0x88d8, 0x88df, 0x895e, 0x7f9d, 0x7f9f, 0x7fa7,
+  0x7faf, 0x7fb0, 0x7fb2, 0x7c7c, 0x6549, 0x7c91, 0x7c9d, 0x7c9c,
+  0x7c9e, 0x7ca2, 0x7cb2, 0x7cbc, 0x7cbd, 0x7cc1, 0x7cc7, 0x7ccc,
+  0x7ccd, 0x7cc8, 0x7cc5, 0x7cd7, 0x7ce8, 0x826e, 0x66a8, 0x7fbf,
+  0x7fce, 0x7fd5, 0x7fe5, 0x7fe1, 0x7fe6, 0x7fe9, 0x7fee, 0x7ff3,
+  0x7cf8, 0x7d77, 0x7da6, 0x7dae, 0x7e47, 0x7e9b, 0x9eb8, 0x9eb4,
+  0x8d73, 0x8d84, 0x8d94, 0x8d91, 0x8db1, 0x8d67, 0x8d6d, 0x8c47,
+  0x8c49, 0x914a, 0x9150, 0x914e, 0x914f, 0x9164,
+  /* 0x75 */
+  0x9162, 0x9161, 0x9170, 0x9169, 0x916f, 0x917d, 0x917e, 0x9172,
+  0x9174, 0x9179, 0x918c, 0x9185, 0x9190, 0x918d, 0x9191, 0x91a2,
+  0x91a3, 0x91aa, 0x91ad, 0x91ae, 0x91af, 0x91b5, 0x91b4, 0x91ba,
+  0x8c55, 0x9e7e, 0x8db8, 0x8deb, 0x8e05, 0x8e59, 0x8e69, 0x8db5,
+  0x8dbf, 0x8dbc, 0x8dba, 0x8dc4, 0x8dd6, 0x8dd7, 0x8dda, 0x8dde,
+  0x8dce, 0x8dcf, 0x8ddb, 0x8dc6, 0x8dec, 0x8df7, 0x8df8, 0x8de3,
+  0x8df9, 0x8dfb, 0x8de4, 0x8e09, 0x8dfd, 0x8e14, 0x8e1d, 0x8e1f,
+  0x8e2c, 0x8e2e, 0x8e23, 0x8e2f, 0x8e3a, 0x8e40, 0x8e39, 0x8e35,
+  0x8e3d, 0x8e31, 0x8e49, 0x8e41, 0x8e42, 0x8e51, 0x8e52, 0x8e4a,
+  0x8e70, 0x8e76, 0x8e7c, 0x8e6f, 0x8e74, 0x8e85, 0x8e8f, 0x8e94,
+  0x8e90, 0x8e9c, 0x8e9e, 0x8c78, 0x8c82, 0x8c8a, 0x8c85, 0x8c98,
+  0x8c94, 0x659b, 0x89d6, 0x89de, 0x89da, 0x89dc,
+  /* 0x76 */
+  0x89e5, 0x89eb, 0x89ef, 0x8a3e, 0x8b26, 0x9753, 0x96e9, 0x96f3,
+  0x96ef, 0x9706, 0x9701, 0x9708, 0x970f, 0x970e, 0x972a, 0x972d,
+  0x9730, 0x973e, 0x9f80, 0x9f83, 0x9f85, 0x9f86, 0x9f87, 0x9f88,
+  0x9f89, 0x9f8a, 0x9f8c, 0x9efe, 0x9f0b, 0x9f0d, 0x96b9, 0x96bc,
+  0x96bd, 0x96ce, 0x96d2, 0x77bf, 0x96e0, 0x928e, 0x92ae, 0x92c8,
+  0x933e, 0x936a, 0x93ca, 0x938f, 0x943e, 0x946b, 0x9c7f, 0x9c82,
+  0x9c85, 0x9c86, 0x9c87, 0x9c88, 0x7a23, 0x9c8b, 0x9c8e, 0x9c90,
+  0x9c91, 0x9c92, 0x9c94, 0x9c95, 0x9c9a, 0x9c9b, 0x9c9e, 0x9c9f,
+  0x9ca0, 0x9ca1, 0x9ca2, 0x9ca3, 0x9ca5, 0x9ca6, 0x9ca7, 0x9ca8,
+  0x9ca9, 0x9cab, 0x9cad, 0x9cae, 0x9cb0, 0x9cb1, 0x9cb2, 0x9cb3,
+  0x9cb4, 0x9cb5, 0x9cb6, 0x9cb7, 0x9cba, 0x9cbb, 0x9cbc, 0x9cbd,
+  0x9cc4, 0x9cc5, 0x9cc6, 0x9cc7, 0x9cca, 0x9ccb,
+  /* 0x77 */
+  0x9ccc, 0x9ccd, 0x9cce, 0x9ccf, 0x9cd0, 0x9cd3, 0x9cd4, 0x9cd5,
+  0x9cd7, 0x9cd8, 0x9cd9, 0x9cdc, 0x9cdd, 0x9cdf, 0x9ce2, 0x977c,
+  0x9785, 0x9791, 0x9792, 0x9794, 0x97af, 0x97ab, 0x97a3, 0x97b2,
+  0x97b4, 0x9ab1, 0x9ab0, 0x9ab7, 0x9e58, 0x9ab6, 0x9aba, 0x9abc,
+  0x9ac1, 0x9ac0, 0x9ac5, 0x9ac2, 0x9acb, 0x9acc, 0x9ad1, 0x9b45,
+  0x9b43, 0x9b47, 0x9b49, 0x9b48, 0x9b4d, 0x9b51, 0x98e8, 0x990d,
+  0x992e, 0x9955, 0x9954, 0x9adf, 0x9ae1, 0x9ae6, 0x9aef, 0x9aeb,
+  0x9afb, 0x9aed, 0x9af9, 0x9b08, 0x9b0f, 0x9b13, 0x9b1f, 0x9b23,
+  0x9ebd, 0x9ebe, 0x7e3b, 0x9e82, 0x9e87, 0x9e88, 0x9e8b, 0x9e92,
+  0x93d6, 0x9e9d, 0x9e9f, 0x9edb, 0x9edc, 0x9edd, 0x9ee0, 0x9edf,
+  0x9ee2, 0x9ee9, 0x9ee7, 0x9ee5, 0x9eea, 0x9eef, 0x9f22, 0x9f2c,
+  0x9f2f, 0x9f39, 0x9f37, 0x9f3d, 0x9f3e, 0x9f44,
+};
+
+static int
+gb2312_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 >= 0x21 && c1 <= 0x29) || (c1 >= 0x30 && c1 <= 0x77)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if (c2 >= 0x21 && c2 < 0x7f) {
+        unsigned int i = 94 * (c1 - 0x21) + (c2 - 0x21);
+        unsigned short wc = 0xfffd;
+        if (i < 1410) {
+          if (i < 831)
+            wc = gb2312_2uni_page21[i];
+        } else {
+          if (i < 8178)
+            wc = gb2312_2uni_page30[i-1410];
+        }
+        if (wc != 0xfffd) {
+          *pwc = (ucs4_t) wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned short gb2312_2charset[7445] = {
+  0x2168, 0x216c, 0x2127, 0x2163, 0x2140, 0x2141, 0x2824, 0x2822,
+  0x2828, 0x2826, 0x283a, 0x282c, 0x282a, 0x2830, 0x282e, 0x2142,
+  0x2834, 0x2832, 0x2839, 0x2821, 0x2825, 0x2827, 0x2829, 0x282d,
+  0x2831, 0x2823, 0x282b, 0x282f, 0x2833, 0x2835, 0x2836, 0x2837,
+  0x2838, 0x2126, 0x2125, 0x2621, 0x2622, 0x2623, 0x2624, 0x2625,
+  0x2626, 0x2627, 0x2628, 0x2629, 0x262a, 0x262b, 0x262c, 0x262d,
+  0x262e, 0x262f, 0x2630, 0x2631, 0x2632, 0x2633, 0x2634, 0x2635,
+  0x2636, 0x2637, 0x2638, 0x2641, 0x2642, 0x2643, 0x2644, 0x2645,
+  0x2646, 0x2647, 0x2648, 0x2649, 0x264a, 0x264b, 0x264c, 0x264d,
+  0x264e, 0x264f, 0x2650, 0x2651, 0x2652, 0x2653, 0x2654, 0x2655,
+  0x2656, 0x2657, 0x2658, 0x2727, 0x2721, 0x2722, 0x2723, 0x2724,
+  0x2725, 0x2726, 0x2728, 0x2729, 0x272a, 0x272b, 0x272c, 0x272d,
+  0x272e, 0x272f, 0x2730, 0x2731, 0x2732, 0x2733, 0x2734, 0x2735,
+  0x2736, 0x2737, 0x2738, 0x2739, 0x273a, 0x273b, 0x273c, 0x273d,
+  0x273e, 0x273f, 0x2740, 0x2741, 0x2751, 0x2752, 0x2753, 0x2754,
+  0x2755, 0x2756, 0x2758, 0x2759, 0x275a, 0x275b, 0x275c, 0x275d,
+  0x275e, 0x275f, 0x2760, 0x2761, 0x2762, 0x2763, 0x2764, 0x2765,
+  0x2766, 0x2767, 0x2768, 0x2769, 0x276a, 0x276b, 0x276c, 0x276d,
+  0x276e, 0x276f, 0x2770, 0x2771, 0x2757, 0x212a, 0x212c, 0x212e,
+  0x212f, 0x2130, 0x2131, 0x212d, 0x216b, 0x2164, 0x2165, 0x2179,
+  0x2166, 0x216d, 0x2271, 0x2272, 0x2273, 0x2274, 0x2275, 0x2276,
+  0x2277, 0x2278, 0x2279, 0x227a, 0x227b, 0x227c, 0x217b, 0x217c,
+  0x217a, 0x217d, 0x214a, 0x2147, 0x2146, 0x214c, 0x2158, 0x215e,
+  0x214f, 0x214e, 0x2144, 0x2145, 0x2149, 0x2148, 0x2152, 0x2153,
+  0x2160, 0x215f, 0x2143, 0x214b, 0x2157, 0x2156, 0x2155, 0x2159,
+  0x2154, 0x215c, 0x215d, 0x215a, 0x215b, 0x2151, 0x214d, 0x2150,
+  0x2259, 0x225a, 0x225b, 0x225c, 0x225d, 0x225e, 0x225f, 0x2260,
+  0x2261, 0x2262, 0x2245, 0x2246, 0x2247, 0x2248, 0x2249, 0x224a,
+  0x224b, 0x224c, 0x224d, 0x224e, 0x224f, 0x2250, 0x2251, 0x2252,
+  0x2253, 0x2254, 0x2255, 0x2256, 0x2257, 0x2258, 0x2231, 0x2232,
+  0x2233, 0x2234, 0x2235, 0x2236, 0x2237, 0x2238, 0x2239, 0x223a,
+  0x223b, 0x223c, 0x223d, 0x223e, 0x223f, 0x2240, 0x2241, 0x2242,
+  0x2243, 0x2244, 0x2924, 0x2925, 0x2926, 0x2927, 0x2928, 0x2929,
+  0x292a, 0x292b, 0x292c, 0x292d, 0x292e, 0x292f, 0x2930, 0x2931,
+  0x2932, 0x2933, 0x2934, 0x2935, 0x2936, 0x2937, 0x2938, 0x2939,
+  0x293a, 0x293b, 0x293c, 0x293d, 0x293e, 0x293f, 0x2940, 0x2941,
+  0x2942, 0x2943, 0x2944, 0x2945, 0x2946, 0x2947, 0x2948, 0x2949,
+  0x294a, 0x294b, 0x294c, 0x294d, 0x294e, 0x294f, 0x2950, 0x2951,
+  0x2952, 0x2953, 0x2954, 0x2955, 0x2956, 0x2957, 0x2958, 0x2959,
+  0x295a, 0x295b, 0x295c, 0x295d, 0x295e, 0x295f, 0x2960, 0x2961,
+  0x2962, 0x2963, 0x2964, 0x2965, 0x2966, 0x2967, 0x2968, 0x2969,
+  0x296a, 0x296b, 0x296c, 0x296d, 0x296e, 0x296f, 0x2176, 0x2175,
+  0x2178, 0x2177, 0x2174, 0x2173, 0x2170, 0x2172, 0x2171, 0x216f,
+  0x216e, 0x2162, 0x2161, 0x2121, 0x2122, 0x2123, 0x2128, 0x2129,
+  0x2134, 0x2135, 0x2136, 0x2137, 0x2138, 0x2139, 0x213a, 0x213b,
+  0x213e, 0x213f, 0x217e, 0x2132, 0x2133, 0x213c, 0x213d, 0x2421,
+  0x2422, 0x2423, 0x2424, 0x2425, 0x2426, 0x2427, 0x2428, 0x2429,
+  0x242a, 0x242b, 0x242c, 0x242d, 0x242e, 0x242f, 0x2430, 0x2431,
+  0x2432, 0x2433, 0x2434, 0x2435, 0x2436, 0x2437, 0x2438, 0x2439,
+  0x243a, 0x243b, 0x243c, 0x243d, 0x243e, 0x243f, 0x2440, 0x2441,
+  0x2442, 0x2443, 0x2444, 0x2445, 0x2446, 0x2447, 0x2448, 0x2449,
+  0x244a, 0x244b, 0x244c, 0x244d, 0x244e, 0x244f, 0x2450, 0x2451,
+  0x2452, 0x2453, 0x2454, 0x2455, 0x2456, 0x2457, 0x2458, 0x2459,
+  0x245a, 0x245b, 0x245c, 0x245d, 0x245e, 0x245f, 0x2460, 0x2461,
+  0x2462, 0x2463, 0x2464, 0x2465, 0x2466, 0x2467, 0x2468, 0x2469,
+  0x246a, 0x246b, 0x246c, 0x246d, 0x246e, 0x246f, 0x2470, 0x2471,
+  0x2472, 0x2473, 0x2521, 0x2522, 0x2523, 0x2524, 0x2525, 0x2526,
+  0x2527, 0x2528, 0x2529, 0x252a, 0x252b, 0x252c, 0x252d, 0x252e,
+  0x252f, 0x2530, 0x2531, 0x2532, 0x2533, 0x2534, 0x2535, 0x2536,
+  0x2537, 0x2538, 0x2539, 0x253a, 0x253b, 0x253c, 0x253d, 0x253e,
+  0x253f, 0x2540, 0x2541, 0x2542, 0x2543, 0x2544, 0x2545, 0x2546,
+  0x2547, 0x2548, 0x2549, 0x254a, 0x254b, 0x254c, 0x254d, 0x254e,
+  0x254f, 0x2550, 0x2551, 0x2552, 0x2553, 0x2554, 0x2555, 0x2556,
+  0x2557, 0x2558, 0x2559, 0x255a, 0x255b, 0x255c, 0x255d, 0x255e,
+  0x255f, 0x2560, 0x2561, 0x2562, 0x2563, 0x2564, 0x2565, 0x2566,
+  0x2567, 0x2568, 0x2569, 0x256a, 0x256b, 0x256c, 0x256d, 0x256e,
+  0x256f, 0x2570, 0x2571, 0x2572, 0x2573, 0x2574, 0x2575, 0x2576,
+  0x2124, 0x2845, 0x2846, 0x2847, 0x2848, 0x2849, 0x284a, 0x284b,
+  0x284c, 0x284d, 0x284e, 0x284f, 0x2850, 0x2851, 0x2852, 0x2853,
+  0x2854, 0x2855, 0x2856, 0x2857, 0x2858, 0x2859, 0x285a, 0x285b,
+  0x285c, 0x285d, 0x285e, 0x285f, 0x2860, 0x2861, 0x2862, 0x2863,
+  0x2864, 0x2865, 0x2866, 0x2867, 0x2868, 0x2869, 0x2265, 0x2266,
+  0x2267, 0x2268, 0x2269, 0x226a, 0x226b, 0x226c, 0x226d, 0x226e,
+  0x523b, 0x3621, 0x465f, 0x4d72, 0x5549, 0x487d, 0x494f, 0x4f42,
+  0x5822, 0x323b, 0x536b, 0x5824, 0x3373, 0x5728, 0x4752, 0x5827,
+  0x4a40, 0x4770, 0x317b, 0x5235, 0x3454, 0x362b, 0x4b3f, 0x5829,
+  0x362a, 0x413d, 0x514f, 0x4925, 0x582d, 0x3876, 0x513e, 0x635c,
+  0x5650, 0x3761, 0x342e, 0x4159, 0x583c, 0x4d68, 0x3524, 0x4e2a,
+  0x5677, 0x4076, 0x3e59, 0x582f, 0x444b, 0x3e43, 0x5831, 0x4334,
+  0x5265, 0x562e, 0x4e5a, 0x5527, 0x3a75, 0x3726, 0x4056, 0x4639,
+  0x4552, 0x4747, 0x3954, 0x334b, 0x5252, 0x583f, 0x3e45, 0x4672,
+  0x5232, 0x4f30, 0x4f67, 0x4a69, 0x5840, 0x4272, 0x4252, 0x4869,
+  0x472c, 0x414b, 0x5368, 0x5579, 0x4a42, 0x367e, 0x5821, 0x535a,
+  0x3f77, 0x5446, 0x3b25, 0x5841, 0x4e65, 0x3e2e, 0x5828, 0x5147,
+  0x5029, 0x583d, 0x596f, 0x4d76, 0x3f3a, 0x3d3b, 0x3a25, 0x5260,
+  0x327a, 0x3a60, 0x4436, 0x4f6d, 0x3e29, 0x4d24, 0x4141, 0x4757,
+  0x5971, 0x5974, 0x484b, 0x5869, 0x525a, 0x4a32, 0x484a, 0x586c,
+  0x586a, 0x5846, 0x3d76, 0x464d, 0x3370, 0x586b, 0x3d71, 0x3d69,
+  0x4854, 0x3453, 0x4258, 0x3256, 0x5750, 0x4a4b, 0x4b7b, 0x554c,
+  0x3836, 0x4f49, 0x595a, 0x5870, 0x472a, 0x586e, 0x347a, 0x416e,
+  0x5254, 0x586d, 0x5247, 0x586f, 0x4347, 0x5176, 0x5659, 0x5872,
+  0x5875, 0x3c7e, 0x3c5b, 0x484e, 0x375d, 0x3742, 0x4673, 0x5878,
+  0x5241, 0x4e69, 0x3c3f, 0x377c, 0x3725, 0x505d, 0x565a, 0x5345,
+  0x3b6f, 0x3b61, 0x5871, 0x4921, 0x4e30, 0x342b, 0x5873, 0x494b,
+  0x5876, 0x4257, 0x5877, 0x4e31, 0x5879, 0x322e, 0x3940, 0x5923,
+  0x3069, 0x4166, 0x496c, 0x4b45, 0x4b46, 0x5924, 0x3568, 0x352b,
+  0x4e3b, 0x354d, 0x5721, 0x5774, 0x5353, 0x4c65, 0x3a4e, 0x5922,
+  0x595c, 0x5360, 0x587d, 0x3770, 0x5777, 0x587e, 0x587a, 0x5921,
+  0x4463, 0x5336, 0x5874, 0x595d, 0x587b, 0x4565, 0x4050, 0x5170,
+  0x305b, 0x3c51, 0x5926, 0x5925, 0x592c, 0x592e, 0x592b, 0x4a39,
+  0x5929, 0x5636, 0x335e, 0x5928, 0x407d, 0x4a4c, 0x592a, 0x5927,
+  0x5930, 0x3631, 0x3929, 0x5240, 0x4f40, 0x4242, 0x3d44, 0x556c,
+  0x3260, 0x4748, 0x3f6b, 0x592d, 0x592f, 0x4e6a, 0x3a6e, 0x4756,
+  0x3163, 0x3459, 0x366d, 0x5934, 0x3f21, 0x595e, 0x474e, 0x407e,
+  0x5938, 0x4b57, 0x377d, 0x5935, 0x5937, 0x3123, 0x5361, 0x5939,
+  0x5045, 0x5936, 0x5931, 0x5932, 0x4129, 0x5933, 0x3c73, 0x505e,
+  0x3829, 0x3e63, 0x593d, 0x593a, 0x3033, 0x5942, 0x5944, 0x3136,
+  0x593f, 0x3539, 0x3e73, 0x4c48, 0x3a72, 0x5250, 0x5943, 0x3d68,
+  0x332b, 0x5945, 0x3e6b, 0x5946, 0x593b, 0x445f, 0x593e, 0x5941,
+  0x5940, 0x552e, 0x5635, 0x4763, 0x5948, 0x3c59, 0x594a, 0x593c,
+  0x594b, 0x462b, 0x5949, 0x5776, 0x4d23, 0x3d21, 0x594c, 0x453c,
+  0x4d35, 0x594d, 0x5947, 0x3325, 0x3f7e, 0x3835, 0x407c, 0x3078,
+  0x3476, 0x594e, 0x594f, 0x3422, 0x5950, 0x345f, 0x3041, 0x5951,
+  0x4935, 0x4f71, 0x5952, 0x4145, 0x5956, 0x492e, 0x5955, 0x5954,
+  0x5957, 0x4b5b, 0x3d29, 0x4627, 0x5953, 0x5958, 0x5959, 0x4865,
+  0x405c, 0x3679, 0x5823, 0x544a, 0x542a, 0x5056, 0x3364, 0x5557,
+  0x4f48, 0x3962, 0x3f4b, 0x4362, 0x3652, 0x4d43, 0x596e, 0x5970,
+  0x3533, 0x3635, 0x3e24, 0x486b, 0x482b, 0x304b, 0x392b, 0x4179,
+  0x5962, 0x403c, 0x3932, 0x3958, 0x504b, 0x3178, 0x4664, 0x3e5f,
+  0x3564, 0x5748, 0x5178, 0x3c66, 0x4a5e, 0x3c3d, 0x5966, 0x5867,
+  0x445a, 0x3854, 0x483d, 0x3261, 0x5459, 0x4330, 0x4361, 0x5a22,
+  0x485f, 0x5034, 0x3e7c, 0x4529, 0x395a, 0x5a23, 0x5429, 0x5a24,
+  0x597b, 0x362c, 0x376b, 0x3179, 0x597c, 0x3365, 0x3e76, 0x3f76,
+  0x5231, 0x4064, 0x3633, 0x597e, 0x597d, 0x3e3b, 0x4660, 0x573c,
+  0x5a21, 0x4139, 0x3572, 0x4168, 0x3c75, 0x3455, 0x415d, 0x447d,
+  0x3c38, 0x3732, 0x376f, 0x596c, 0x463e, 0x3f2d, 0x3b4b, 0x354a,
+  0x5b49, 0x5057, 0x4d39, 0x303c, 0x3376, 0x3b77, 0x5b4a, 0x3a2f,
+  0x5464, 0x3536, 0x3573, 0x5856, 0x4850, 0x3756, 0x4750, 0x5857,
+  0x3f2f, 0x5b3b, 0x5858, 0x504c, 0x3b2e, 0x6b3e, 0x4150, 0x4175,
+  0x5472, 0x3855, 0x3434, 0x3375, 0x493e, 0x4550, 0x4559, 0x407b,
+  0x3170, 0x5859, 0x394e, 0x353d, 0x585a, 0x5646, 0x4b22, 0x482f,
+  0x4932, 0x344c, 0x3f4c, 0x3974, 0x585b, 0x585c, 0x3667, 0x3c41,
+  0x4c6a, 0x4f77, 0x585d, 0x4730, 0x3950, 0x3d23, 0x4c5e, 0x464a,
+  0x5860, 0x585e, 0x585f, 0x307e, 0x3e67, 0x4a23, 0x3c74, 0x3831,
+  0x386e, 0x5862, 0x3d4b, 0x5864, 0x5863, 0x457c, 0x5865, 0x5866,
+  0x4126, 0x4830, 0x306c, 0x3926, 0x3c53, 0x4e71, 0x5b3d, 0x4153,
+  0x362f, 0x567a, 0x452c, 0x3d59, 0x5b3e, 0x5b3f, 0x4078, 0x3e22,
+  0x404d, 0x5b40, 0x4a46, 0x322a, 0x5342, 0x4363, 0x512b, 0x5b42,
+  0x4055, 0x5b43, 0x3f31, 0x443c, 0x475a, 0x5b44, 0x5968, 0x4957,
+  0x3934, 0x4e70, 0x5448, 0x307c, 0x3452, 0x5059, 0x5969, 0x5e4b,
+  0x596b, 0x5830, 0x3b2f, 0x3131, 0x3357, 0x584e, 0x5451, 0x3d33,
+  0x3f6f, 0x4f3b, 0x5850, 0x374b, 0x5851, 0x4625, 0x4778, 0x523d,
+  0x5852, 0x4464, 0x4a2e, 0x4727, 0x5826, 0x497d, 0x4e67, 0x3b5c,
+  0x306b, 0x3b2a, 0x502d, 0x3130, 0x5764, 0x573f, 0x3525, 0x4274,
+  0x444f, 0x3229, 0x3237, 0x3165, 0x5f32, 0x553c, 0x3f28, 0x422c,
+  0x5855, 0x4231, 0x5854, 0x4e54, 0x5a60, 0x4e40, 0x5834, 0x432e,
+  0x5321, 0x4e23, 0x3c34, 0x4834, 0x4251, 0x3e6d, 0x5036, 0x5a61,
+  0x4764, 0x3327, 0x3672, 0x4c7c, 0x407a, 0x4077, 0x5139, 0x5161,
+  0x5847, 0x325e, 0x4065, 0x3a71, 0x5848, 0x542d, 0x4f61, 0x5849,
+  0x584a, 0x4f43, 0x3378, 0x3e47, 0x584b, 0x5b4c, 0x4825, 0x4f58,
+  0x487e, 0x324e, 0x5356, 0x3266, 0x3c30, 0x5351, 0x4b2b, 0x3734,
+  0x3722, 0x4a65, 0x4821, 0x4a5c, 0x3164, 0x5070, 0x4551, 0x5b45,
+  0x357e, 0x3f5a, 0x3945, 0x3e64, 0x416d, 0x5f36, 0x5f35, 0x563b,
+  0x3d50, 0x5559, 0x3048, 0x3623, 0x3f49, 0x4c28, 0x5f33, 0x4a37,
+  0x5352, 0x584f, 0x5236, 0x3a45, 0x4b3e, 0x4c3e, 0x5f37, 0x3570,
+  0x5f34, 0x5375, 0x3354, 0x3877, 0x5f3a, 0x3a4f, 0x3c2a, 0x3575,
+  0x4d2c, 0x437b, 0x3a73, 0x4074, 0x4d42, 0x4f72, 0x5f38, 0x4f45,
+  0x4240, 0x5f39, 0x4270, 0x3e7d, 0x415f, 0x4d4c, 0x5277, 0x374d,
+  0x5f41, 0x5f44, 0x3771, 0x3049, 0x3656, 0x3754, 0x3a2c, 0x4c7d,
+  0x3f54, 0x4b31, 0x4674, 0x5628, 0x5f45, 0x4e62, 0x3333, 0x4e7c,
+  0x3435, 0x4e47, 0x3a70, 0x4e61, 0x513d, 0x5f40, 0x3474, 0x334a,
+  0x3866, 0x5f3b, 0x4445, 0x5f3c, 0x5f3d, 0x5f3e, 0x453b, 0x5f3f,
+  0x5f42, 0x5431, 0x5f43, 0x473a, 0x4e58, 0x4458, 0x5f4a, 0x5f4f,
+  0x565c, 0x5f49, 0x5f5a, 0x4e36, 0x3a47, 0x5f4e, 0x5f48, 0x455e,
+  0x496b, 0x3a74, 0x437c, 0x3e57, 0x5f46, 0x5f4d, 0x4558, 0x5526,
+  0x3a4d, 0x3e4c, 0x533d, 0x3840, 0x5664, 0x5f47, 0x393e, 0x3f27,
+  0x417c, 0x5f4b, 0x5f4c, 0x5f50, 0x5f5b, 0x5f65, 0x5f57, 0x5f56,
+  0x5749, 0x5f63, 0x5f64, 0x656b, 0x5227, 0x5f52, 0x3f29, 0x545b,
+  0x3f48, 0x5f54, 0x4f4c, 0x5f5d, 0x514a, 0x5f5e, 0x3027, 0x4637,
+  0x5f53, 0x3a65, 0x365f, 0x4d5b, 0x397e, 0x5455, 0x5f5f, 0x4f6c,
+  0x3025, 0x5f67, 0x5f51, 0x5146, 0x5f55, 0x5f58, 0x5f59, 0x5f5c,
+  0x3b29, 0x5f60, 0x5f61, 0x5f62, 0x5f66, 0x5f68, 0x5334, 0x3867,
+  0x4536, 0x5f6a, 0x495a, 0x4128, 0x4444, 0x3f5e, 0x4f78, 0x555c,
+  0x5f6e, 0x3238, 0x3a5f, 0x5f6c, 0x5b41, 0x5164, 0x4b74, 0x343d,
+  0x3026, 0x5f71, 0x4c46, 0x5f72, 0x5f6d, 0x5f69, 0x5f6b, 0x5f6f,
+  0x5f70, 0x3b3d, 0x5f73, 0x5f74, 0x3b23, 0x4a5b, 0x4e28, 0x6027,
+  0x332a, 0x6026, 0x6021, 0x5f7e, 0x4d59, 0x5f7c, 0x5f7a, 0x3f50,
+  0x5744, 0x494c, 0x5f78, 0x3021, 0x5f7d, 0x5f7b, 0x6022, 0x6028,
+  0x3748, 0x4621, 0x4936, 0x4032, 0x5f75, 0x453e, 0x5844, 0x5f79,
+  0x4476, 0x6023, 0x6024, 0x6025, 0x5025, 0x6034, 0x4c64, 0x6031,
+  0x3f26, 0x602f, 0x4e39, 0x602b, 0x4946, 0x402e, 0x602e, 0x3a6d,
+  0x3a30, 0x6029, 0x5f76, 0x6033, 0x6038, 0x342d, 0x6039, 0x4f32,
+  0x3a48, 0x6030, 0x507a, 0x602c, 0x547b, 0x5f77, 0x4567, 0x602d,
+  0x5377, 0x6036, 0x6037, 0x6044, 0x5061, 0x603c, 0x6049, 0x604a,
+  0x603e, 0x602a, 0x4924, 0x6041, 0x6032, 0x4a48, 0x6043, 0x6035,
+  0x4e4b, 0x4b43, 0x604d, 0x6046, 0x6042, 0x604b, 0x603a, 0x603f,
+  0x6040, 0x6045, 0x6047, 0x6048, 0x604c, 0x603b, 0x4b54, 0x6055,
+  0x6056, 0x6052, 0x6050, 0x3c4e, 0x6051, 0x3842, 0x5845, 0x506a,
+  0x426f, 0x604f, 0x603d, 0x6054, 0x6053, 0x6057, 0x605c, 0x6058,
+  0x5676, 0x3330, 0x576c, 0x4b3b, 0x605a, 0x4e7b, 0x3a59, 0x6061,
+  0x605d, 0x522d, 0x6062, 0x605b, 0x6059, 0x605f, 0x6060, 0x605e,
+  0x6064, 0x4677, 0x582c, 0x546b, 0x6066, 0x4a49, 0x6065, 0x3841,
+  0x6067, 0x6068, 0x6069, 0x6063, 0x3a3f, 0x4c67, 0x606a, 0x4f79,
+  0x606b, 0x4842, 0x3d40, 0x4452, 0x606c, 0x606d, 0x4774, 0x4b44,
+  0x606e, 0x3b58, 0x5836, 0x5272, 0x606f, 0x4d45, 0x365a, 0x6071,
+  0x5430, 0x4027, 0x3451, 0x4e27, 0x6070, 0x6072, 0x394c, 0x397a,
+  0x4d3c, 0x6073, 0x4654, 0x6074, 0x5432, 0x4826, 0x6076, 0x6075,
+  0x6077, 0x4d41, 0x4a25, 0x545a, 0x5b57, 0x5b59, 0x5b58, 0x3967,
+  0x5b5c, 0x5b5d, 0x3558, 0x5b5a, 0x5b5b, 0x3321, 0x5b5f, 0x3b78,
+  0x5637, 0x5b60, 0x3e79, 0x373b, 0x5b50, 0x4c2e, 0x3f32, 0x3b35,
+  0x5778, 0x3f53, 0x3f69, 0x3c61, 0x4c33, 0x5b5e, 0x3053, 0x4e6b,
+  0x3758, 0x5739, 0x4642, 0x4024, 0x4c39, 0x5b67, 0x5b61, 0x463a,
+  0x5b63, 0x5b68, 0x4577, 0x5b6a, 0x5b69, 0x3f40, 0x5b66, 0x5b65,
+  0x3439, 0x402c, 0x4222, 0x5b62, 0x5b64, 0x504d, 0x5b6d, 0x405d,
+  0x5b72, 0x3662, 0x5b73, 0x5b52, 0x3938, 0x542b, 0x5b6c, 0x3f51,
+  0x5b70, 0x5b51, 0x3566, 0x5b6b, 0x3f65, 0x5b6e, 0x5b71, 0x5b79,
+  0x3921, 0x3023, 0x4271, 0x3347, 0x5b6f, 0x5b78, 0x4652, 0x5b74,
+  0x5b75, 0x5b77, 0x5b76, 0x5b7e, 0x5372, 0x323a, 0x5b7d, 0x5c24,
+  0x5b7b, 0x5b7a, 0x5b7c, 0x4560, 0x3b79, 0x5c23, 0x5c25, 0x4c43,
+  0x3651, 0x5d40, 0x5c21, 0x5c22, 0x4735, 0x3669, 0x5c27, 0x5c26,
+  0x5c29, 0x3124, 0x354c, 0x3f30, 0x515f, 0x3642, 0x5c28, 0x4b7a,
+  0x6b73, 0x4b5c, 0x4b7e, 0x4c41, 0x487b, 0x5c2a, 0x4c6e, 0x5c2b,
+  0x5b53, 0x5c2f, 0x5c2c, 0x3e33, 0x4a7b, 0x5c2d, 0x494a, 0x4439,
+  0x473d, 0x5c2e, 0x5476, 0x5066, 0x442b, 0x3655, 0x5b54, 0x315a,
+  0x5b55, 0x5b56, 0x3a3e, 0x4840, 0x4a3f, 0x4849, 0x5733, 0x4979,
+  0x3f47, 0x3a78, 0x523c, 0x623a, 0x3426, 0x3138, 0x3834, 0x4f44,
+  0x5967, 0x4f26, 0x4d62, 0x596d, 0x3660, 0x5239, 0x393b, 0x6239,
+  0x6237, 0x3473, 0x4c6c, 0x4c2b, 0x3772, 0x5832, 0x516b, 0x3a3b,
+  0x4a27, 0x4d37, 0x5244, 0x3f64, 0x3c50, 0x3661, 0x5e45, 0x5e46,
+  0x5b3c, 0x5159, 0x4666, 0x444e, 0x376e, 0x375c, 0x3f7c, 0x5760,
+  0x4675, 0x313c, 0x5e48, 0x3d31, 0x4c57, 0x5e4a, 0x5e49, 0x356c,
+  0x495d, 0x3042, 0x452e, 0x452b, 0x444c, 0x3c69, 0x4b7d, 0x3a43,
+  0x6579, 0x4867, 0x657a, 0x4d7d, 0x5731, 0x383e, 0x4268, 0x4851,
+  0x657b, 0x364a, 0x3c4b, 0x517d, 0x6621, 0x436e, 0x6624, 0x657e,
+  0x6625, 0x4d57, 0x3741, 0x657c, 0x657d, 0x6623, 0x445d, 0x6628,
+  0x6627, 0x4343, 0x465e, 0x662a, 0x4437, 0x6622, 0x4a3c, 0x3d63,
+  0x3943, 0x6626, 0x5055, 0x4e2f, 0x6629, 0x6630, 0x5226, 0x3d2a,
+  0x662d, 0x662f, 0x4051, 0x524c, 0x3c27, 0x6631, 0x5276, 0x574b,
+  0x4d7e, 0x4d5e, 0x4226, 0x662b, 0x662c, 0x3d3f, 0x662e, 0x6633,
+  0x6632, 0x6636, 0x6638, 0x446f, 0x4448, 0x3e6a, 0x496f, 0x6637,
+  0x3670, 0x4364, 0x5369, 0x6634, 0x6635, 0x4822, 0x663d, 0x6639,
+  0x4645, 0x4d71, 0x663b, 0x663c, 0x3b69, 0x663e, 0x663a, 0x4037,
+  0x5324, 0x663f, 0x4974, 0x6643, 0x6644, 0x5076, 0x433d, 0x4344,
+  0x6642, 0x6641, 0x6647, 0x4f31, 0x6b74, 0x664a, 0x6645, 0x3c5e,
+  0x4929, 0x3c35, 0x4f53, 0x6648, 0x6649, 0x664e, 0x6650, 0x6651,
+  0x664b, 0x3555, 0x664c, 0x664f, 0x445b, 0x6646, 0x664d, 0x6652,
+  0x6654, 0x6653, 0x6655, 0x5978, 0x6656, 0x6657, 0x5753, 0x665d,
+  0x665e, 0x3f57, 0x5450, 0x5756, 0x3466, 0x4b6f, 0x665a, 0x5843,
+  0x574e, 0x5022, 0x434f, 0x665f, 0x3c3e, 0x3942, 0x665b, 0x5127,
+  0x3a22, 0x424f, 0x582b, 0x4a6b, 0x656e, 0x665c, 0x3775, 0x4866,
+  0x4475, 0x6532, 0x447e, 0x4b7c, 0x6533, 0x552c, 0x536e, 0x4a58,
+  0x3032, 0x4b4e, 0x4d6a, 0x3a6a, 0x6535, 0x6534, 0x575a, 0x3959,
+  0x5666, 0x3628, 0x4d70, 0x524b, 0x3126, 0x4a35, 0x3368, 0x4973,
+  0x3f4d, 0x507b, 0x4a52, 0x6536, 0x3b42, 0x4f5c, 0x392c, 0x5457,
+  0x3a26, 0x5167, 0x4f7c, 0x3c52, 0x6537, 0x485d, 0x3f6d, 0x3176,
+  0x4b5e, 0x3c45, 0x3c44, 0x527a, 0x435c, 0x3f5c, 0x383b, 0x4342,
+  0x3a2e, 0x5422, 0x475e, 0x442f, 0x326c, 0x3951, 0x653b, 0x4148,
+  0x552f, 0x653c, 0x653e, 0x3467, 0x3654, 0x4b42, 0x5130, 0x353c,
+  0x4a59, 0x3762, 0x4964, 0x3d2b, 0x4e3e, 0x5770, 0x5021, 0x4959,
+  0x367b, 0x6658, 0x3c62, 0x333e, 0x4950, 0x6659, 0x3322, 0x5e4c,
+  0x5348, 0x5e4d, 0x5222, 0x5e4e, 0x3e4d, 0x5e4f, 0x4a2c, 0x527c,
+  0x335f, 0x656a, 0x4461, 0x3e21, 0x4e32, 0x4472, 0x3e56, 0x4628,
+  0x3263, 0x3e53, 0x477c, 0x4c6b, 0x3d6c, 0x4e5d, 0x4a3a, 0x4641,
+  0x656c, 0x503c, 0x5539, 0x656d, 0x4a74, 0x4d40, 0x4245, 0x656f,
+  0x4244, 0x6570, 0x6578, 0x4d4d, 0x493d, 0x5259, 0x6128, 0x536c,
+  0x4b6a, 0x4671, 0x612c, 0x6127, 0x6129, 0x612a, 0x612f, 0x326d,
+  0x612b, 0x385a, 0x612d, 0x612e, 0x6130, 0x353a, 0x6131, 0x6133,
+  0x6138, 0x5152, 0x6136, 0x6135, 0x416b, 0x6137, 0x5440, 0x6132,
+  0x613a, 0x3036, 0x6134, 0x3f79, 0x6139, 0x613b, 0x613e, 0x613c,
+  0x5645, 0x4f3f, 0x613d, 0x613f, 0x424d, 0x366b, 0x5378, 0x474d,
+  0x3765, 0x3e7e, 0x6140, 0x6141, 0x6147, 0x3367, 0x4669, 0x345e,
+  0x5142, 0x6148, 0x6146, 0x6145, 0x6143, 0x6142, 0x3140, 0x5538,
+  0x6144, 0x614b, 0x614c, 0x614a, 0x6f7a, 0x6153, 0x6152, 0x4736,
+  0x6149, 0x614e, 0x6150, 0x6154, 0x6151, 0x614d, 0x614f, 0x6155,
+  0x6156, 0x6157, 0x6158, 0x615a, 0x615b, 0x4e21, 0x675d, 0x3428,
+  0x565d, 0x5132, 0x3332, 0x3924, 0x5773, 0x4749, 0x3e5e, 0x392e,
+  0x4e57, 0x326e, 0x5b4f, 0x3c3a, 0x5251, 0x4b48, 0x304d, 0x4f6f,
+  0x5963, 0x3d6d, 0x3152, 0x4a50, 0x323c, 0x4b27, 0x372b, 0x4a26,
+  0x4f23, 0x6078, 0x554a, 0x607b, 0x607a, 0x4541, 0x4c7b, 0x4131,
+  0x6079, 0x5663, 0x322f, 0x5644, 0x355b, 0x3478, 0x5621, 0x4f2f,
+  0x306f, 0x607c, 0x6121, 0x3323, 0x607d, 0x607e, 0x4331, 0x435d,
+  0x6122, 0x3779, 0x3b4f, 0x6123, 0x443b, 0x6124, 0x6125, 0x6126,
+  0x3431, 0x3849, 0x463d, 0x446a, 0x3222, 0x5052, 0x675b, 0x3b43,
+  0x5357, 0x5344, 0x3963, 0x624f, 0x572f, 0x476c, 0x3153, 0x3432,
+  0x6251, 0x5072, 0x422e, 0x6250, 0x3f62, 0x5326, 0x3557, 0x6252,
+  0x356a, 0x436d, 0x387d, 0x382e, 0x4553, 0x374f, 0x6254, 0x6253,
+  0x3648, 0x5779, 0x4d25, 0x6258, 0x6256, 0x4a7c, 0x3f35, 0x5339,
+  0x6255, 0x6257, 0x412e, 0x4048, 0x625b, 0x625a, 0x402a, 0x414e,
+  0x625c, 0x625d, 0x625e, 0x5b48, 0x5153, 0x4d22, 0x3d28, 0x5e43,
+  0x5825, 0x3f2a, 0x5b4d, 0x526c, 0x467a, 0x452a, 0x5e44, 0x3157,
+  0x5f2e, 0x4a3d, 0x5f31, 0x392d, 0x527d, 0x3825, 0x3a6b, 0x335a,
+  0x355c, 0x5545, 0x4356, 0x4f52, 0x3b21, 0x6573, 0x6572, 0x6574,
+  0x4d64, 0x4875, 0x352f, 0x473f, 0x6576, 0x6c30, 0x6566, 0x3969,
+  0x3531, 0x423c, 0x6568, 0x6567, 0x6569, 0x524d, 0x616a, 0x504e,
+  0x4d2e, 0x5165, 0x324a, 0x316b, 0x3172, 0x456d, 0x5543, 0x5330,
+  0x615c, 0x615d, 0x525b, 0x3339, 0x314b, 0x4d79, 0x5577, 0x615e,
+  0x3e36, 0x347d, 0x615f, 0x3a5c, 0x6160, 0x3b32, 0x4249, 0x6161,
+  0x506c, 0x4d3d, 0x6162, 0x3543, 0x4547, 0x6163, 0x6164, 0x5379,
+  0x6165, 0x512d, 0x6166, 0x4e22, 0x6167, 0x3542, 0x6168, 0x3b55,
+  0x5044, 0x6260, 0x3158, 0x5264, 0x6261, 0x3c49, 0x484c, 0x6263,
+  0x6c7e, 0x6c7d, 0x5f2f, 0x6262, 0x563e, 0x4d7c, 0x4326, 0x6343,
+  0x5652, 0x6267, 0x6268, 0x5347, 0x626c, 0x3f6c, 0x626d, 0x6265,
+  0x3340, 0x446e, 0x626e, 0x5043, 0x3a76, 0x6269, 0x375e, 0x3b33,
+  0x4c2c, 0x4b4b, 0x6264, 0x6266, 0x626a, 0x626b, 0x6277, 0x6274,
+  0x5475, 0x6273, 0x452d, 0x557a, 0x4542, 0x3240, 0x626f, 0x6272,
+  0x412f, 0x4b3c, 0x3521, 0x6279, 0x3c31, 0x6271, 0x5054, 0x5439,
+  0x6275, 0x3956, 0x6276, 0x4753, 0x6270, 0x575c, 0x6d21, 0x6278,
+  0x6d25, 0x627e, 0x4a51, 0x4135, 0x3b50, 0x3f56, 0x3a63, 0x4b21,
+  0x6d26, 0x6d23, 0x6d22, 0x3b56, 0x6d27, 0x5074, 0x6d24, 0x3a5e,
+  0x3677, 0x6321, 0x3632, 0x4c71, 0x3927, 0x4f22, 0x4721, 0x3f52,
+  0x3671, 0x627a, 0x627b, 0x627d, 0x627c, 0x4455, 0x6322, 0x5341,
+  0x6327, 0x4744, 0x4f24, 0x6329, 0x3a37, 0x6328, 0x3b5a, 0x6323,
+  0x6324, 0x632a, 0x6326, 0x4e72, 0x5346, 0x3b3c, 0x5443, 0x447a,
+  0x6d28, 0x507c, 0x6325, 0x4375, 0x632d, 0x312f, 0x6332, 0x3c42,
+  0x632c, 0x353f, 0x4769, 0x6330, 0x3e2a, 0x4d6f, 0x3b73, 0x4c68,
+  0x632f, 0x6331, 0x4f27, 0x632e, 0x4e29, 0x3b5d, 0x356b, 0x3e65,
+  0x3252, 0x334d, 0x3139, 0x632b, 0x3251, 0x352c, 0x395f, 0x3668,
+  0x4f6b, 0x6337, 0x3b4c, 0x4847, 0x504a, 0x6338, 0x336e, 0x6d29,
+  0x537a, 0x5364, 0x6d2a, 0x6339, 0x5262, 0x6335, 0x535e, 0x3850,
+  0x6333, 0x6336, 0x375f, 0x6334, 0x4022, 0x633a, 0x5438, 0x3448,
+  0x633b, 0x3b45, 0x4977, 0x4965, 0x443d, 0x6d2b, 0x427d, 0x3b5b,
+  0x3f2e, 0x4e3f, 0x633c, 0x3f36, 0x316f, 0x5477, 0x633e, 0x6d2d,
+  0x633f, 0x3a29, 0x6d2c, 0x633d, 0x6340, 0x3a36, 0x362e, 0x5038,
+  0x3043, 0x6d2e, 0x6d2f, 0x4041, 0x6341, 0x4533, 0x6342, 0x5c32,
+  0x6d30, 0x386a, 0x4e6c, 0x6a27, 0x5067, 0x4a79, 0x4856, 0x4f37,
+  0x3349, 0x4e52, 0x3d64, 0x635e, 0x3b72, 0x6a28, 0x553d, 0x465d,
+  0x6a29, 0x6a2a, 0x6a2c, 0x6a2b, 0x6a2e, 0x6a2d, 0x3d58, 0x6a2f,
+  0x423e, 0x3441, 0x3477, 0x3b27, 0x6c66, 0x6c65, 0x373f, 0x4b79,
+  0x3162, 0x6c67, 0x4948, 0x6c68, 0x6c69, 0x4a56, 0x5e50, 0x3245,
+  0x547a, 0x464b, 0x3047, 0x3472, 0x4853, 0x4d50, 0x3f38, 0x3f5b,
+  0x4724, 0x5634, 0x4029, 0x5e51, 0x4928, 0x516f, 0x4524, 0x3067,
+  0x3336, 0x4845, 0x3062, 0x3776, 0x457a, 0x3673, 0x5552, 0x3350,
+  0x3c3c, 0x332d, 0x3e71, 0x3051, 0x5256, 0x4a63, 0x5725, 0x4d36,
+  0x3636, 0x3f39, 0x555b, 0x3827, 0x4557, 0x5e52, 0x3f59, 0x4255,
+  0x4740, 0x3b24, 0x3128, 0x456a, 0x457b, 0x4c27, 0x3127, 0x3556,
+  0x4428, 0x5e53, 0x513a, 0x3369, 0x4372, 0x3777, 0x5674, 0x3523,
+  0x3270, 0x4434, 0x4469, 0x402d, 0x5e54, 0x3068, 0x4544, 0x4160,
+  0x3955, 0x3e5c, 0x4d58, 0x304e, 0x4d4f, 0x5e56, 0x3e50, 0x573e,
+  0x5e55, 0x5550, 0x305d, 0x4462, 0x4223, 0x3c70, 0x5335, 0x4039,
+  0x4521, 0x3226, 0x5471, 0x4028, 0x4a43, 0x5e57, 0x557c, 0x3930,
+  0x482d, 0x4b29, 0x5e59, 0x3f3d, 0x4634, 0x5727, 0x4a30, 0x4443,
+  0x3356, 0x3952, 0x5638, 0x6a7c, 0x3034, 0x3f66, 0x4c74, 0x4d5a,
+  0x563f, 0x424e, 0x4e4e, 0x4c22, 0x502e, 0x4453, 0x3532, 0x5e58,
+  0x5575, 0x3c37, 0x3b53, 0x3024, 0x4532, 0x346c, 0x5571, 0x6a7d,
+  0x5e5a, 0x4d26, 0x4d6c, 0x4e66, 0x5e5c, 0x4d31, 0x4026, 0x573d,
+  0x5e5b, 0x3046, 0x3a34, 0x4953, 0x4473, 0x3e68, 0x3236, 0x404c,
+  0x4b70, 0x3c71, 0x3b3b, 0x3537, 0x4575, 0x5e66, 0x5e63, 0x3e5d,
+  0x5e5f, 0x3437, 0x3d5d, 0x5e60, 0x446d, 0x4f46, 0x3560, 0x365e,
+  0x4a5a, 0x3574, 0x5e65, 0x5546, 0x5e61, 0x4c4d, 0x467e, 0x4545,
+  0x5234, 0x3e72, 0x4253, 0x4c3d, 0x3338, 0x3d53, 0x3f58, 0x4d46,
+  0x515a, 0x346b, 0x5e64, 0x5e5d, 0x5e67, 0x6a7e, 0x4230, 0x5e62,
+  0x5640, 0x3527, 0x3274, 0x5e68, 0x5e72, 0x5e6d, 0x5e71, 0x4860,
+  0x5761, 0x5e6f, 0x4368, 0x4c61, 0x3265, 0x523e, 0x5e6e, 0x5e6b,
+  0x4e55, 0x3427, 0x3f2b, 0x3e3e, 0x3d52, 0x5e69, 0x542e, 0x5e5e,
+  0x5e6a, 0x403f, 0x5e6c, 0x3273, 0x3869, 0x4227, 0x3d41, 0x5e75,
+  0x5e78, 0x322b, 0x3424, 0x346a, 0x4926, 0x5e76, 0x4b51, 0x3863,
+  0x5e77, 0x5e7a, 0x5e79, 0x4c42, 0x3061, 0x346e, 0x653a, 0x502f,
+  0x326b, 0x6b21, 0x5e74, 0x4963, 0x5e73, 0x305a, 0x5221, 0x3177,
+  0x4c2f, 0x5e70, 0x4b24, 0x552a, 0x5e7b, 0x345d, 0x4426, 0x5e7d,
+  0x437e, 0x4421, 0x5f21, 0x414c, 0x5e7c, 0x3e6f, 0x4632, 0x3345,
+  0x4876, 0x4b3a, 0x5e7e, 0x5f24, 0x5732, 0x3337, 0x4143, 0x474b,
+  0x3225, 0x3469, 0x572b, 0x446c, 0x5f22, 0x5f23, 0x5f25, 0x3a33,
+  0x5f26, 0x405e, 0x4943, 0x3259, 0x4766, 0x5f27, 0x475c, 0x5f28,
+  0x6b22, 0x4b53, 0x5f2a, 0x5f29, 0x3241, 0x454a, 0x5f2b, 0x545c,
+  0x4841, 0x5f2c, 0x3e70, 0x5f2d, 0x5627, 0x6a37, 0x6b36, 0x4a55,
+  0x587c, 0x3844, 0x3925, 0x3745, 0x557e, 0x394a, 0x5027, 0x744d,
+  0x3550, 0x4374, 0x3e48, 0x6b37, 0x303d, 0x3d4c, 0x4132, 0x3156,
+  0x3328, 0x3852, 0x4922, 0x3658, 0x6b38, 0x3e34, 0x4a7d, 0x4743,
+  0x557b, 0x3773, 0x4e44, 0x552b, 0x3173, 0x6c33, 0x305f, 0x6c35,
+  0x3637, 0x414f, 0x757a, 0x5031, 0x5565, 0x4e53, 0x3d6f, 0x3362,
+  0x382b, 0x5536, 0x6d3d, 0x364f, 0x4b39, 0x5042, 0x373d, 0x6c36,
+  0x4a29, 0x4554, 0x6c39, 0x6c38, 0x4243, 0x6c37, 0x507d, 0x6c3a,
+  0x6c3b, 0x5765, 0x6c3c, 0x6c3d, 0x466c, 0x4e5e, 0x3c48, 0x4855,
+  0x3529, 0x3e49, 0x563c, 0x5467, 0x512e, 0x5071, 0x6a38, 0x6a39,
+  0x6a3a, 0x3a35, 0x4a31, 0x3f75, 0x4d7a, 0x6a40, 0x303a, 0x6a3e,
+  0x4025, 0x6a3b, 0x327d, 0x4377, 0x3b68, 0x5257, 0x4e74, 0x6a3f,
+  0x6a3c, 0x6a43, 0x5047, 0x5333, 0x343a, 0x4341, 0x5772, 0x5551,
+  0x4a47, 0x6a45, 0x6a44, 0x6a47, 0x6a46, 0x5667, 0x4f54, 0x6a4b,
+  0x3b4e, 0x3d7a, 0x494e, 0x6a4c, 0x4939, 0x4f7e, 0x6a4a, 0x544e,
+  0x6a4d, 0x6a4f, 0x4d6d, 0x6a49, 0x6a4e, 0x4e6e, 0x3b5e, 0x333f,
+  0x4655, 0x3e30, 0x4e7a, 0x4767, 0x3e27, 0x6a50, 0x5647, 0x4140,
+  0x545d, 0x6a51, 0x4f3e, 0x6a52, 0x4a6e, 0x452f, 0x3035, 0x6a54,
+  0x6a53, 0x745f, 0x443a, 0x3129, 0x655f, 0x6a55, 0x4a6f, 0x6a56,
+  0x6a57, 0x4658, 0x6a58, 0x6a59, 0x543b, 0x477a, 0x5237, 0x387c,
+  0x6a42, 0x325c, 0x427c, 0x5478, 0x4c66, 0x576e, 0x5442, 0x5350,
+  0x6b43, 0x4573, 0x377e, 0x6b54, 0x4b37, 0x6b5e, 0x404a, 0x4d7b,
+  0x332f, 0x465a, 0x6b7c, 0x443e, 0x4e34, 0x4429, 0x313e, 0x547d,
+  0x4a75, 0x566c, 0x4653, 0x3664, 0x3b7a, 0x5060, 0x4931, 0x5453,
+  0x4828, 0x384b, 0x683e, 0x493c, 0x683b, 0x406e, 0x5053, 0x3244,
+  0x3465, 0x683c, 0x5548, 0x3645, 0x683d, 0x4a78, 0x385c, 0x4c75,
+  0x4034, 0x516e, 0x683f, 0x6842, 0x3a3c, 0x312d, 0x3d5c, 0x6a3d,
+  0x6843, 0x6846, 0x684b, 0x684c, 0x4b49, 0x3065, 0x3c2b, 0x3939,
+  0x6841, 0x4d77, 0x684a, 0x4e76, 0x556d, 0x4156, 0x6844, 0x4336,
+  0x397b, 0x5626, 0x6848, 0x4a60, 0x5466, 0x6840, 0x6845, 0x6847,
+  0x4739, 0x3763, 0x6849, 0x3f5d, 0x6852, 0x6857, 0x6855, 0x3c5c,
+  0x3c4f, 0x685b, 0x685e, 0x685a, 0x317a, 0x3058, 0x4433, 0x384c,
+  0x4662, 0x483e, 0x4861, 0x684f, 0x6854, 0x6856, 0x3971, 0x6858,
+  0x5775, 0x447b, 0x685c, 0x3269, 0x6851, 0x3c6d, 0x3f42, 0x684d,
+  0x5679, 0x4178, 0x3271, 0x685f, 0x4a41, 0x6859, 0x5524, 0x316a,
+  0x553b, 0x684e, 0x6850, 0x3630, 0x6853, 0x685d, 0x4038, 0x4a77,
+  0x4b28, 0x465c, 0x4075, 0x6869, 0x5023, 0x6872, 0x566a, 0x6860,
+  0x6861, 0x5179, 0x3a4b, 0x3879, 0x3871, 0x5454, 0x686f, 0x686e,
+  0x686c, 0x3970, 0x4c52, 0x6866, 0x4e26, 0x3f72, 0x3038, 0x6871,
+  0x6870, 0x5740, 0x6864, 0x4d29, 0x4923, 0x3b38, 0x3d5b, 0x686a,
+  0x6862, 0x6863, 0x6865, 0x3535, 0x6867, 0x4745, 0x686b, 0x686d,
+  0x3d30, 0x572e, 0x6878, 0x6875, 0x4d30, 0x6876, 0x413a, 0x6868,
+  0x4337, 0x3070, 0x6874, 0x6877, 0x3923, 0x4952, 0x434e, 0x4e60,
+  0x4066, 0x4b73, 0x4c5d, 0x5035, 0x4a61, 0x6873, 0x3c6c, 0x6879,
+  0x435e, 0x4665, 0x3977, 0x3074, 0x5758, 0x3c2c, 0x456f, 0x4c44,
+  0x6926, 0x492d, 0x6922, 0x4062, 0x3f43, 0x687e, 0x3957, 0x687b,
+  0x6924, 0x524e, 0x6923, 0x5632, 0x5735, 0x6927, 0x3d37, 0x687c,
+  0x687d, 0x6921, 0x4d56, 0x522c, 0x6932, 0x6929, 0x342a, 0x343b,
+  0x692b, 0x5028, 0x6925, 0x337e, 0x692c, 0x4063, 0x692a, 0x6939,
+  0x6938, 0x692e, 0x687a, 0x6928, 0x3f2c, 0x6931, 0x693a, 0x4225,
+  0x692f, 0x3845, 0x692d, 0x535c, 0x6934, 0x6935, 0x6937, 0x6947,
+  0x4046, 0x6945, 0x6930, 0x693b, 0x3071, 0x693c, 0x5525, 0x693e,
+  0x693f, 0x6941, 0x4171, 0x4836, 0x693d, 0x6942, 0x6943, 0x6933,
+  0x6936, 0x3b31, 0x6940, 0x3c77, 0x6944, 0x6946, 0x694a, 0x694e,
+  0x325b, 0x6948, 0x372e, 0x694b, 0x694c, 0x5541, 0x4423, 0x6958,
+  0x3a61, 0x6949, 0x5323, 0x6954, 0x6957, 0x6950, 0x694f, 0x4741,
+  0x6952, 0x6959, 0x3348, 0x6953, 0x4f70, 0x694d, 0x3377, 0x6956,
+  0x695a, 0x4c34, 0x4f2d, 0x6955, 0x695c, 0x695b, 0x695e, 0x6951,
+  0x695d, 0x695f, 0x434a, 0x4737, 0x344e, 0x3b36, 0x5040, 0x6c23,
+  0x4537, 0x537b, 0x6c24, 0x6c25, 0x465b, 0x3f6e, 0x6c26, 0x6c27,
+  0x502a, 0x4738, 0x3868, 0x6c28, 0x5639, 0x557d, 0x344b, 0x323d,
+  0x4e64, 0x4667, 0x4d61, 0x3475, 0x4b40, 0x3c5f, 0x6962, 0x6963,
+  0x516a, 0x6965, 0x3479, 0x6964, 0x5133, 0x4a62, 0x3250, 0x6968,
+  0x6966, 0x6967, 0x5633, 0x6969, 0x696a, 0x696b, 0x696c, 0x6c2f,
+  0x4539, 0x364e, 0x5273, 0x356e, 0x3b59, 0x6c31, 0x5263, 0x4e63,
+  0x4438, 0x433f, 0x363e, 0x5839, 0x3148, 0x314f, 0x3151, 0x457e,
+  0x3150, 0x432b, 0x5531, 0x6b24, 0x3a41, 0x4c3a, 0x6b25, 0x6b27,
+  0x6b28, 0x6b26, 0x6b29, 0x6b2b, 0x6b2a, 0x6b2c, 0x4a4f, 0x5835,
+  0x4371, 0x4325, 0x4678, 0x6b2d, 0x444a, 0x6b2e, 0x6b2f, 0x6b30,
+  0x3755, 0x377a, 0x6b31, 0x4762, 0x6b33, 0x3a24, 0x5175, 0x3031,
+  0x6b32, 0x6b34, 0x352a, 0x4248, 0x4768, 0x6b35, 0x4b2e, 0x635f,
+  0x5340, 0x595b, 0x4d21, 0x562d, 0x4773, 0x5960, 0x3b63, 0x3a3a,
+  0x6362, 0x4f2b, 0x6360, 0x4947, 0x3a39, 0x5134, 0x6361, 0x486a,
+  0x392f, 0x3d2d, 0x3358, 0x4e5b, 0x4c40, 0x6368, 0x6369, 0x4d74,
+  0x4c2d, 0x3c33, 0x636a, 0x636b, 0x505a, 0x467b, 0x375a, 0x475f,
+  0x524a, 0x4e56, 0x6364, 0x636c, 0x4972, 0x3341, 0x6367, 0x4663,
+  0x6365, 0x6d33, 0x6366, 0x4933, 0x4566, 0x3935, 0x433b, 0x6363,
+  0x453d, 0x4124, 0x4259, 0x3257, 0x636d, 0x3b26, 0x442d, 0x6370,
+  0x3e5a, 0x637b, 0x6375, 0x3a53, 0x3750, 0x534d, 0x564e, 0x5553,
+  0x3941, 0x5534, 0x5158, 0x5039, 0x4776, 0x482a, 0x3234, 0x435a,
+  0x636e, 0x637c, 0x636f, 0x3728, 0x6377, 0x6374, 0x373a, 0x4522,
+  0x6376, 0x455d, 0x3228, 0x467c, 0x4460, 0x5722, 0x4061, 0x6379,
+  0x637a, 0x637d, 0x4c29, 0x6373, 0x533e, 0x3143, 0x6d34, 0x6371,
+  0x6372, 0x6378, 0x503a, 0x4643, 0x5473, 0x637e, 0x3d60, 0x6427,
+  0x6426, 0x5173, 0x6423, 0x6429, 0x4877, 0x4f34, 0x6428, 0x642e,
+  0x4265, 0x3634, 0x3d72, 0x6422, 0x3a69, 0x642a, 0x642c, 0x367d,
+  0x565e, 0x6432, 0x642d, 0x6421, 0x3b6e, 0x4d5d, 0x4722, 0x4549,
+  0x4177, 0x6424, 0x4733, 0x3d2c, 0x3d3d, 0x6425, 0x5747, 0x3262,
+  0x642b, 0x3c43, 0x642f, 0x3b6b, 0x6430, 0x4528, 0x6431, 0x5563,
+  0x3f23, 0x643a, 0x6437, 0x643b, 0x643d, 0x4656, 0x3a46, 0x404b,
+  0x3821, 0x6434, 0x5421, 0x3a23, 0x3d7e, 0x643c, 0x4d3f, 0x4479,
+  0x4f7b, 0x4966, 0x533f, 0x4f51, 0x6433, 0x6438, 0x6439, 0x4c69,
+  0x4c4e, 0x4054, 0x6435, 0x4130, 0x6436, 0x4e50, 0x3b41, 0x3553,
+  0x4873, 0x3d27, 0x5547, 0x492c, 0x3822, 0x644a, 0x644c, 0x5144,
+  0x523a, 0x3a2d, 0x3a54, 0x6443, 0x356d, 0x574d, 0x6440, 0x4f7d,
+  0x643f, 0x415c, 0x4c4a, 0x4a67, 0x4457, 0x4c54, 0x6448, 0x6447,
+  0x6441, 0x6444, 0x352d, 0x5359, 0x6446, 0x5279, 0x3463, 0x3b34,
+  0x496e, 0x343e, 0x3b6c, 0x514d, 0x4c6d, 0x6d35, 0x4765, 0x5428,
+  0x644b, 0x5755, 0x6442, 0x3d25, 0x6445, 0x5366, 0x6449, 0x4978,
+  0x643e, 0x5365, 0x477e, 0x3649, 0x547c, 0x3233, 0x6457, 0x4e42,
+  0x644d, 0x4e3c, 0x385b, 0x6456, 0x3f4a, 0x534e, 0x436c, 0x4548,
+  0x6458, 0x4d44, 0x644f, 0x6454, 0x6455, 0x3a7e, 0x4f66, 0x553f,
+  0x6452, 0x6450, 0x644e, 0x4d65, 0x4a2a, 0x4023, 0x3d26, 0x6453,
+  0x3848, 0x6467, 0x5434, 0x645b, 0x416f, 0x6469, 0x5267, 0x645f,
+  0x6460, 0x4f2a, 0x4b5d, 0x645a, 0x6451, 0x6465, 0x485c, 0x6463,
+  0x4467, 0x6462, 0x6461, 0x337c, 0x6468, 0x3561, 0x574c, 0x6466,
+  0x3b2c, 0x5752, 0x4c4f, 0x6b78, 0x6464, 0x3976, 0x564d, 0x6459,
+  0x645c, 0x427a, 0x645e, 0x424b, 0x4044, 0x4250, 0x3175, 0x4c32,
+  0x354e, 0x646f, 0x462f, 0x4661, 0x6475, 0x4229, 0x406c, 0x515d,
+  0x646e, 0x442e, 0x646d, 0x6476, 0x6474, 0x427e, 0x645d, 0x6470,
+  0x4a7e, 0x5544, 0x6471, 0x517a, 0x646b, 0x646c, 0x6472, 0x4e2b,
+  0x454b, 0x4731, 0x423a, 0x646a, 0x414a, 0x4c36, 0x3331, 0x647b,
+  0x6473, 0x647a, 0x647d, 0x647c, 0x334e, 0x333a, 0x6477, 0x6479,
+  0x6478, 0x456c, 0x403d, 0x5468, 0x6522, 0x3044, 0x6524, 0x6523,
+  0x3c24, 0x6525, 0x6521, 0x647e, 0x3174, 0x6528, 0x6529, 0x6526,
+  0x6527, 0x652a, 0x4659, 0x652b, 0x652d, 0x652c, 0x652f, 0x652e,
+  0x3960, 0x6530, 0x6531, 0x3b70, 0x6c61, 0x4370, 0x3546, 0x3b52,
+  0x4169, 0x546e, 0x3e44, 0x5746, 0x5456, 0x3253, 0x6c3e, 0x6a41,
+  0x422f, 0x3436, 0x5157, 0x3334, 0x4832, 0x3f3b, 0x6c40, 0x564b,
+  0x6c3f, 0x6c41, 0x6c45, 0x3e66, 0x4c3f, 0x455a, 0x3e3c, 0x6c46,
+  0x317e, 0x6c44, 0x5528, 0x3563, 0x6c42, 0x4136, 0x3363, 0x6c43,
+  0x4b38, 0x4043, 0x4c7e, 0x4152, 0x6c48, 0x3a66, 0x4053, 0x5672,
+  0x514c, 0x3f3e, 0x3733, 0x4955, 0x6c47, 0x3b62, 0x4c4c, 0x3d7d,
+  0x4848, 0x4f29, 0x4d69, 0x456b, 0x3769, 0x5149, 0x3a38, 0x6c49,
+  0x6c4a, 0x3b40, 0x6c4b, 0x6c62, 0x313a, 0x3759, 0x3d39, 0x6c4c,
+  0x5166, 0x6c4d, 0x483b, 0x6c51, 0x6c53, 0x3b4d, 0x3c65, 0x6c4f,
+  0x4937, 0x433a, 0x6c63, 0x5555, 0x6c50, 0x5673, 0x6c52, 0x6c4e,
+  0x6c54, 0x6c55, 0x493f, 0x4f28, 0x505c, 0x512c, 0x485b, 0x6c56,
+  0x4e75, 0x4a6c, 0x6c5a, 0x6c59, 0x303e, 0x6c57, 0x6c58, 0x6c64,
+  0x483c, 0x4147, 0x6c5c, 0x5160, 0x6c5b, 0x546f, 0x6c5d, 0x5b46,
+  0x6c5e, 0x312c, 0x6c5f, 0x6c60, 0x5726, 0x4540, 0x6b3c, 0x302e,
+  0x3e74, 0x3838, 0x522f, 0x3056, 0x3579, 0x5833, 0x4b2c, 0x635d,
+  0x462c, 0x3066, 0x4546, 0x6b39, 0x6b3a, 0x6b3b, 0x5140, 0x4523,
+  0x6a72, 0x4432, 0x4435, 0x404e, 0x6a73, 0x4441, 0x4e6f, 0x6a70,
+  0x6a74, 0x497c, 0x4723, 0x4c58, 0x4e7e, 0x6a75, 0x6a76, 0x4f2c,
+  0x4067, 0x6a77, 0x363f, 0x6a78, 0x6a79, 0x6a7a, 0x6a7b, 0x6a71,
+  0x482e, 0x616b, 0x3738, 0x616c, 0x616d, 0x5734, 0x616e, 0x616f,
+  0x534c, 0x6171, 0x3f71, 0x6170, 0x3552, 0x3137, 0x6173, 0x6172,
+  0x3a7c, 0x6174, 0x3937, 0x3e51, 0x447c, 0x3a5d, 0x3d46, 0x6175,
+  0x6177, 0x3640, 0x4f41, 0x4a28, 0x6176, 0x5578, 0x537c, 0x6178,
+  0x617c, 0x6179, 0x617a, 0x406a, 0x617e, 0x6221, 0x4047, 0x617b,
+  0x617d, 0x6225, 0x4154, 0x6223, 0x6228, 0x327e, 0x6222, 0x434d,
+  0x3242, 0x6227, 0x6226, 0x6224, 0x6229, 0x622b, 0x5049, 0x566d,
+  0x4328, 0x622c, 0x4f57, 0x622e, 0x3a6f, 0x6960, 0x622d, 0x622a,
+  0x3b2b, 0x5433, 0x6230, 0x622f, 0x6961, 0x6231, 0x6232, 0x6233,
+  0x4c21, 0x6234, 0x6235, 0x507e, 0x424a, 0x5371, 0x4d75, 0x6760,
+  0x6761, 0x3e41, 0x426a, 0x6764, 0x6763, 0x4d66, 0x4335, 0x6762,
+  0x3b37, 0x4f56, 0x4161, 0x6769, 0x6768, 0x6774, 0x3223, 0x676a,
+  0x6766, 0x676c, 0x676b, 0x493a, 0x5564, 0x6765, 0x3729, 0x6767,
+  0x676e, 0x6773, 0x5669, 0x676d, 0x6772, 0x6771, 0x3060, 0x6775,
+  0x4772, 0x4045, 0x406d, 0x4170, 0x6770, 0x6776, 0x4b76, 0x6822,
+  0x6821, 0x5741, 0x677a, 0x6779, 0x677b, 0x6777, 0x677e, 0x677d,
+  0x677c, 0x4155, 0x4759, 0x457d, 0x4543, 0x476d, 0x6823, 0x6826,
+  0x6825, 0x6827, 0x3a77, 0x6778, 0x6824, 0x4870, 0x492a, 0x6829,
+  0x3965, 0x517e, 0x6828, 0x682a, 0x682d, 0x682e, 0x4127, 0x682f,
+  0x6830, 0x682c, 0x6834, 0x682b, 0x6831, 0x6835, 0x6832, 0x6833,
+  0x6837, 0x6836, 0x394f, 0x702c, 0x702d, 0x4630, 0x306a, 0x483f,
+  0x4d5f, 0x4e4d, 0x6a31, 0x6a32, 0x463f, 0x3449, 0x6a33, 0x5567,
+  0x5d79, 0x6a34, 0x6a35, 0x6a36, 0x384a, 0x5f30, 0x4975, 0x4c70,
+  0x497a, 0x497b, 0x5343, 0x4b26, 0x3826, 0x702e, 0x3142, 0x6538,
+  0x4c6f, 0x5349, 0x3c57, 0x496a, 0x3567, 0x4450, 0x3569, 0x6e2e,
+  0x3b2d, 0x675e, 0x6e2f, 0x3329, 0x6e32, 0x6e31, 0x3d67, 0x6e30,
+  0x4e37, 0x454f, 0x4174, 0x5b4e, 0x6e33, 0x5073, 0x4254, 0x4668,
+  0x372c, 0x6e34, 0x336b, 0x3b7b, 0x6e35, 0x675c, 0x6e36, 0x3d2e,
+  0x7162, 0x4a68, 0x5249, 0x705a, 0x705b, 0x705c, 0x4146, 0x386d,
+  0x3e4e, 0x705e, 0x4531, 0x705d, 0x5171, 0x7060, 0x304c, 0x3d6a,
+  0x525f, 0x705f, 0x342f, 0x3768, 0x7066, 0x7065, 0x4623, 0x7061,
+  0x7062, 0x3443, 0x7063, 0x556e, 0x4c5b, 0x3e52, 0x3c32, 0x7068,
+  0x7067, 0x7064, 0x3221, 0x5622, 0x5338, 0x3e37, 0x482c, 0x706a,
+  0x5177, 0x564c, 0x3a5b, 0x7069, 0x363b, 0x4d34, 0x4626, 0x4121,
+  0x706b, 0x706e, 0x706d, 0x7070, 0x706c, 0x3b3e, 0x706f, 0x4c35,
+  0x7072, 0x3355, 0x3154, 0x7073, 0x7074, 0x7076, 0x3461, 0x7071,
+  0x7077, 0x707a, 0x7078, 0x7075, 0x707d, 0x7079, 0x707c, 0x707e,
+  0x7121, 0x4e41, 0x7124, 0x7123, 0x4176, 0x707b, 0x4a5d, 0x3471,
+  0x3171, 0x4c31, 0x7126, 0x7127, 0x712c, 0x554e, 0x7129, 0x4833,
+  0x7122, 0x712b, 0x7128, 0x7125, 0x712a, 0x3029, 0x712d, 0x712f,
+  0x7131, 0x7130, 0x712e, 0x5122, 0x7132, 0x7133, 0x396f, 0x3547,
+  0x3057, 0x3059, 0x546d, 0x3544, 0x3d54, 0x3b4a, 0x7027, 0x385e,
+  0x7028, 0x3028, 0x7029, 0x4d6e, 0x702a, 0x702b, 0x4624, 0x5665,
+  0x7164, 0x7165, 0x4373, 0x535b, 0x5651, 0x4568, 0x532f, 0x5266,
+  0x6e41, 0x303b, 0x5535, 0x514e, 0x3c60, 0x3a50, 0x3f78, 0x3847,
+  0x3541, 0x454c, 0x4a22, 0x434b, 0x6e42, 0x443f, 0x3622, 0x6d6c,
+  0x4324, 0x5631, 0x4f60, 0x6d6f, 0x454e, 0x365c, 0x4a21, 0x6d6d,
+  0x6d70, 0x6d71, 0x433c, 0x3f34, 0x6d6e, 0x6d74, 0x6d72, 0x5566,
+  0x435f, 0x6d73, 0x6d76, 0x5523, 0x5123, 0x6d75, 0x4350, 0x6d77,
+  0x3f74, 0x3e6c, 0x6d78, 0x4c77, 0x515b, 0x5745, 0x5576, 0x6d7c,
+  0x6d7b, 0x6d79, 0x6d7a, 0x6d7d, 0x3e26, 0x4b2f, 0x6e21, 0x363d,
+  0x6e22, 0x4440, 0x6d7e, 0x3d5e, 0x3247, 0x3643, 0x6e25, 0x583a,
+  0x6e23, 0x6e26, 0x4369, 0x3372, 0x6e27, 0x6e24, 0x4f39, 0x6e28,
+  0x4277, 0x6e29, 0x6e2a, 0x5e2b, 0x4633, 0x4746, 0x5675, 0x3549,
+  0x4b32, 0x6e2b, 0x4d2b, 0x6e2c, 0x5530, 0x6e2d, 0x7644, 0x5b47,
+  0x3423, 0x432c, 0x7166, 0x4a38, 0x5253, 0x562a, 0x6f72, 0x3e58,
+  0x3d43, 0x6f73, 0x364c, 0x302b, 0x4a2f, 0x6d36, 0x6d37, 0x4e79,
+  0x372f, 0x3f73, 0x6d38, 0x426b, 0x4930, 0x6d39, 0x4676, 0x3f33,
+  0x6d3c, 0x4578, 0x5150, 0x5729, 0x6d3a, 0x6d3b, 0x5162, 0x6d3f,
+  0x6d40, 0x6d44, 0x6d48, 0x6d46, 0x6d4e, 0x5568, 0x6d49, 0x6d47,
+  0x6d3e, 0x4569, 0x4646, 0x4969, 0x5452, 0x6d41, 0x6d42, 0x6d43,
+  0x6d45, 0x4079, 0x3421, 0x3968, 0x6d50, 0x6d51, 0x6d4a, 0x6d4f,
+  0x4e78, 0x4b36, 0x6d4c, 0x6d4d, 0x4f75, 0x6d52, 0x4172, 0x5332,
+  0x6d4b, 0x4837, 0x3c6f, 0x4570, 0x6d56, 0x356f, 0x4235, 0x302d,
+  0x4b69, 0x312e, 0x6d54, 0x4d6b, 0x3562, 0x6d55, 0x6d53, 0x6d57,
+  0x357a, 0x6d58, 0x6d59, 0x6d5c, 0x314c, 0x4576, 0x3c6e, 0x6d5a,
+  0x4c3c, 0x326a, 0x6d5b, 0x446b, 0x3445, 0x3075, 0x6d5f, 0x405a,
+  0x3468, 0x454d, 0x6d5d, 0x3f44, 0x6d5e, 0x4425, 0x6d60, 0x6d61,
+  0x6d63, 0x4157, 0x3b47, 0x3d38, 0x6d62, 0x6d64, 0x6d66, 0x6d65,
+  0x6d67, 0x4a3e, 0x6c6a, 0x4071, 0x4967, 0x6c6b, 0x466e, 0x6c6c,
+  0x466d, 0x6c6d, 0x6c70, 0x5766, 0x6c73, 0x6c71, 0x6c6e, 0x6c6f,
+  0x5723, 0x4971, 0x4b6e, 0x6c74, 0x6c72, 0x4f69, 0x6c76, 0x4631,
+  0x3c40, 0x6c75, 0x353b, 0x3b76, 0x6c77, 0x5977, 0x3d7b, 0x423b,
+  0x6c78, 0x6c79, 0x3823, 0x6c7a, 0x6c7b, 0x6c7c, 0x536d, 0x582e,
+  0x406b, 0x475d, 0x3a4c, 0x5063, 0x4b3d, 0x4d3a, 0x3851, 0x317c,
+  0x476f, 0x5656, 0x3f46, 0x436b, 0x6f75, 0x4358, 0x5762, 0x6f77,
+  0x3353, 0x4758, 0x516d, 0x5648, 0x6f78, 0x6f76, 0x3b7d, 0x3346,
+  0x3d55, 0x5246, 0x3b60, 0x4f21, 0x6f7c, 0x6f7b, 0x6f79, 0x334c,
+  0x4954, 0x4b30, 0x6f7e, 0x305e, 0x5649, 0x6f7d, 0x336d, 0x7655,
+  0x4e48, 0x7022, 0x7021, 0x353e, 0x3c5a, 0x3b7c, 0x3865, 0x4442,
+  0x7023, 0x4b6b, 0x7026, 0x5128, 0x3e3f, 0x476e, 0x7136, 0x7137,
+  0x3f55, 0x3429, 0x7138, 0x4d3b, 0x4754, 0x552d, 0x7139, 0x713a,
+  0x474f, 0x5224, 0x564f, 0x713b, 0x3d51, 0x3430, 0x3e3d, 0x345c,
+  0x4e51, 0x3f5f, 0x713d, 0x3f7a, 0x713c, 0x713f, 0x713e, 0x7140,
+  0x7141, 0x417e, 0x4122, 0x4a7a, 0x553e, 0x3e3a, 0x3e39, 0x5542,
+  0x3f22, 0x4d2f, 0x7135, 0x3d5f, 0x364b, 0x5671, 0x7343, 0x7344,
+  0x384d, 0x7346, 0x7347, 0x304a, 0x7345, 0x7349, 0x4b71, 0x734b,
+  0x5026, 0x314a, 0x7348, 0x734f, 0x3551, 0x7357, 0x7352, 0x7354,
+  0x7353, 0x377b, 0x313f, 0x734e, 0x734a, 0x355a, 0x7350, 0x7351,
+  0x7355, 0x734d, 0x3c63, 0x417d, 0x7356, 0x735a, 0x734c, 0x3548,
+  0x3d6e, 0x735c, 0x3724, 0x3f70, 0x567e, 0x4d32, 0x3470, 0x325f,
+  0x7358, 0x7359, 0x4938, 0x735d, 0x735e, 0x7361, 0x735f, 0x7363,
+  0x7362, 0x735b, 0x3f6a, 0x336f, 0x7360, 0x4729, 0x3c72, 0x736b,
+  0x393f, 0x7364, 0x322d, 0x3b7e, 0x4b63, 0x736d, 0x7369, 0x395c,
+  0x736e, 0x7365, 0x7366, 0x736a, 0x4261, 0x736c, 0x736f, 0x7368,
+  0x3c7d, 0x4f64, 0x7370, 0x7367, 0x7372, 0x572d, 0x462a, 0x7373,
+  0x7371, 0x4228, 0x385d, 0x7375, 0x7374, 0x345b, 0x7376, 0x7377,
+  0x7378, 0x403a, 0x4069, 0x4571, 0x737b, 0x737a, 0x3458, 0x737e,
+  0x7379, 0x737c, 0x737d, 0x7421, 0x7423, 0x3b49, 0x7422, 0x7424,
+  0x323e, 0x7426, 0x7425, 0x3c2e, 0x4357, 0x5961, 0x4060, 0x744c,
+  0x5751, 0x375b, 0x744e, 0x4123, 0x4649, 0x3456, 0x5533, 0x7450,
+  0x744f, 0x7451, 0x4b5a, 0x7452, 0x5441, 0x5660, 0x3760, 0x4138,
+  0x413b, 0x7453, 0x3e2c, 0x3462, 0x7454, 0x7455, 0x3e2b, 0x7456,
+  0x745b, 0x7457, 0x745a, 0x3a7d, 0x7458, 0x7459, 0x3862, 0x4c47,
+  0x745c, 0x325a, 0x4353, 0x5463, 0x3f37, 0x745d, 0x4534, 0x7469,
+  0x4f35, 0x4e49, 0x4b58, 0x4b77, 0x3d74, 0x574f, 0x405b, 0x5075,
+  0x746a, 0x746b, 0x746c, 0x7763, 0x3731, 0x746d, 0x576b, 0x746e,
+  0x6679, 0x3e40, 0x667a, 0x3a6c, 0x667b, 0x4f4b, 0x667c, 0x543c,
+  0x3c36, 0x667d, 0x667e, 0x3c4d, 0x4852, 0x4e33, 0x6721, 0x343f,
+  0x6722, 0x4934, 0x3859, 0x4449, 0x575d, 0x425a, 0x3757, 0x563d,
+  0x4e46, 0x3744, 0x4526, 0x6723, 0x4f5f, 0x6724, 0x6725, 0x6726,
+  0x4137, 0x5769, 0x4970, 0x4f38, 0x562f, 0x5655, 0x6727, 0x306d,
+  0x6728, 0x6729, 0x495c, 0x526f, 0x3e2d, 0x672a, 0x3073, 0x485e,
+  0x3d61, 0x672b, 0x4846, 0x672c, 0x3b66, 0x3878, 0x5124, 0x672d,
+  0x4267, 0x3e78, 0x3d4a, 0x4d33, 0x672e, 0x672f, 0x3e6e, 0x5065,
+  0x4b67, 0x4c50, 0x3c4c, 0x6730, 0x3c28, 0x5077, 0x6731, 0x5078,
+  0x6732, 0x6733, 0x3442, 0x6734, 0x6735, 0x497e, 0x4e2c, 0x4360,
+  0x6737, 0x3141, 0x3371, 0x6738, 0x6739, 0x575b, 0x5540, 0x673a,
+  0x424c, 0x573a, 0x673b, 0x673c, 0x673d, 0x3c6a, 0x4365, 0x4042,
+  0x673e, 0x673f, 0x3c29, 0x6740, 0x6741, 0x6736, 0x3650, 0x6742,
+  0x6743, 0x6744, 0x3b3a, 0x355e, 0x4246, 0x3160, 0x6745, 0x5435,
+  0x6746, 0x383f, 0x6748, 0x6747, 0x376c, 0x6749, 0x3278, 0x674a,
+  0x674b, 0x674c, 0x674d, 0x674e, 0x674f, 0x6750, 0x5327, 0x4b75,
+  0x6751, 0x6752, 0x6753, 0x6754, 0x4949, 0x6755, 0x6756, 0x6757,
+  0x6758, 0x6759, 0x3d49, 0x675a, 0x733e, 0x3857, 0x4831, 0x733f,
+  0x7340, 0x7341, 0x395e, 0x4d78, 0x5868, 0x3a31, 0x425e, 0x6e37,
+  0x3723, 0x6e39, 0x6e38, 0x3055, 0x6e3b, 0x5556, 0x576f, 0x5643,
+  0x6e3d, 0x4a70, 0x6e3c, 0x6e3e, 0x6e40, 0x6e3f, 0x5172, 0x473c,
+  0x4340, 0x3861, 0x4167, 0x7446, 0x505f, 0x7447, 0x4f5b, 0x483a,
+  0x7448, 0x7449, 0x744a, 0x744b, 0x597a, 0x387e, 0x6571, 0x5370,
+  0x7460, 0x4e4c, 0x3361, 0x7134, 0x526e, 0x7461, 0x4f68, 0x7462,
+  0x474c, 0x3554, 0x3464, 0x7464, 0x7463, 0x7465, 0x7466, 0x7467,
+  0x3a32, 0x303f, 0x7468, 0x372d, 0x526d, 0x522b, 0x404f, 0x3f3c,
+  0x6b23, 0x555f, 0x6a48, 0x7173, 0x3678, 0x4b23, 0x444d, 0x7167,
+  0x7168, 0x387b, 0x7169, 0x3a44, 0x5445, 0x3052, 0x716a, 0x716b,
+  0x716c, 0x716d, 0x716e, 0x716f, 0x7171, 0x7170, 0x4555, 0x7172,
+  0x367a, 0x7174, 0x522e, 0x5e47, 0x4b4a, 0x335c, 0x3522, 0x3922,
+  0x4474, 0x7175, 0x7176, 0x4144, 0x417b, 0x5630, 0x7177, 0x7178,
+  0x412a, 0x4638, 0x3e5b, 0x7179, 0x344f, 0x717a, 0x6d32, 0x6d31,
+  0x4b60, 0x525e, 0x4b41, 0x5558, 0x4862, 0x405f, 0x3c21, 0x6b41,
+  0x5024, 0x5662, 0x3647, 0x3858, 0x6b40, 0x384e, 0x6b3f, 0x3326,
+  0x3949, 0x562b, 0x3774, 0x374a, 0x3c67, 0x373e, 0x6b46, 0x6b47,
+  0x3039, 0x3f4f, 0x6b45, 0x537d, 0x6b48, 0x6b49, 0x374e, 0x6b42,
+  0x6b44, 0x4976, 0x5657, 0x554d, 0x5032, 0x6b4f, 0x4e38, 0x6b50,
+  0x3528, 0x3133, 0x6b52, 0x4c25, 0x4556, 0x6b53, 0x6b51, 0x455f,
+  0x6b4e, 0x4a24, 0x6b55, 0x307b, 0x3a7a, 0x5837, 0x7163, 0x6b4a,
+  0x6b4b, 0x6b4c, 0x6b4d, 0x6b56, 0x6640, 0x6b59, 0x3f68, 0x5248,
+  0x6b57, 0x6b5c, 0x386c, 0x6b58, 0x3d3a, 0x5058, 0x3037, 0x6b5d,
+  0x445c, 0x562c, 0x3460, 0x4276, 0x3c39, 0x6b5a, 0x6b5b, 0x5460,
+  0x466a, 0x4454, 0x6b5f, 0x4527, 0x5975, 0x3231, 0x6b64, 0x3d45,
+  0x6b62, 0x6b63, 0x382c, 0x4d51, 0x6b65, 0x6b61, 0x4133, 0x4622,
+  0x4c73, 0x6b66, 0x4030, 0x5238, 0x6b67, 0x382f, 0x382d, 0x6b68,
+  0x473b, 0x4d73, 0x6b6a, 0x6b6b, 0x6b6d, 0x5048, 0x6b72, 0x6b6e,
+  0x6b71, 0x4879, 0x517c, 0x6b6c, 0x6b69, 0x3839, 0x4f59, 0x4465,
+  0x6b6f, 0x6b70, 0x4c5a, 0x4d48, 0x3072, 0x6b76, 0x6b75, 0x3232,
+  0x3860, 0x6b77, 0x316c, 0x4c45, 0x4424, 0x4f25, 0x6b79, 0x6c22,
+  0x4572, 0x6b7a, 0x4945, 0x625f, 0x6b7e, 0x4d4e, 0x6c21, 0x315b,
+  0x5337, 0x525c, 0x6b7d, 0x6b7b, 0x333c, 0x6a30, 0x5754, 0x742b,
+  0x3374, 0x5641, 0x5642, 0x5569, 0x3e4a, 0x7427, 0x5228, 0x7428,
+  0x7429, 0x742a, 0x3e4b, 0x535f, 0x4960, 0x4961, 0x7342, 0x4a66,
+  0x4c72, 0x6236, 0x4b34, 0x4e68, 0x565b, 0x742d, 0x742e, 0x742f,
+  0x7432, 0x3a3d, 0x7433, 0x3063, 0x7430, 0x7431, 0x3d22, 0x3255,
+  0x7436, 0x7437, 0x3666, 0x3230, 0x4f4f, 0x7434, 0x342c, 0x7435,
+  0x7438, 0x7439, 0x4d27, 0x743a, 0x743b, 0x743c, 0x4b52, 0x743d,
+  0x743e, 0x743f, 0x745e, 0x413c, 0x3c68, 0x492b, 0x515e, 0x6575,
+  0x5c33, 0x5255, 0x5c34, 0x302c, 0x5c35, 0x3d5a, 0x5c39, 0x5842,
+  0x5c37, 0x5373, 0x4956, 0x5c3a, 0x5c36, 0x5c3b, 0x4322, 0x5c3c,
+  0x5c45, 0x5c3d, 0x4e5f, 0x5625, 0x5c4f, 0x5c4d, 0x5c52, 0x3d66,
+  0x422b, 0x5c38, 0x5c4b, 0x5c4e, 0x5c3e, 0x3752, 0x3045, 0x5c47,
+  0x503e, 0x5c41, 0x3b28, 0x373c, 0x5c4c, 0x5c46, 0x5c3f, 0x475b,
+  0x513f, 0x5c40, 0x5c4a, 0x5c50, 0x4e2d, 0x5c42, 0x5c43, 0x5c48,
+  0x5c49, 0x3254, 0x5c51, 0x4b55, 0x5437, 0x5c5b, 0x5c5f, 0x4c26,
+  0x5c66, 0x4367, 0x5c5c, 0x3f41, 0x5c59, 0x307a, 0x3936, 0x5c65,
+  0x5c53, 0x5c44, 0x5c56, 0x4874, 0x3f60, 0x493b, 0x313d, 0x5322,
+  0x5c5a, 0x5c55, 0x463b, 0x5c5e, 0x5742, 0x432f, 0x3736, 0x4751,
+  0x4329, 0x5c62, 0x5c58, 0x5c6b, 0x5c54, 0x5c5d, 0x3e25, 0x5c57,
+  0x5c60, 0x5c63, 0x5c64, 0x5c78, 0x5c61, 0x5d22, 0x5c67, 0x3c6b,
+  0x3444, 0x4323, 0x3267, 0x5c7a, 0x5c72, 0x5c6f, 0x5c7c, 0x5c6e,
+  0x5270, 0x3268, 0x4857, 0x4863, 0x5c7b, 0x5c6d, 0x5c77, 0x5c75,
+  0x3e23, 0x5c74, 0x325d, 0x5c73, 0x3c76, 0x5c68, 0x3b44, 0x4073,
+  0x3c54, 0x5c69, 0x5c6a, 0x5c71, 0x5c76, 0x5c79, 0x3534, 0x4859,
+  0x3b67, 0x5c7e, 0x5c7d, 0x532b, 0x5d21, 0x5d23, 0x5d25, 0x5271,
+  0x5d24, 0x5d26, 0x5d27, 0x5229, 0x3a49, 0x5d29, 0x5d36, 0x5d31,
+  0x5d34, 0x5d30, 0x464e, 0x4072, 0x492f, 0x5c6c, 0x5d2e, 0x5d37,
+  0x5c70, 0x5d2f, 0x5d38, 0x5d2c, 0x5d39, 0x5d33, 0x5d2d, 0x442a,
+  0x5d28, 0x4033, 0x412b, 0x5d2a, 0x5d2b, 0x5d32, 0x3b71, 0x5d35,
+  0x5328, 0x5d3a, 0x5d3b, 0x4327, 0x5d52, 0x5d3c, 0x5d51, 0x393d,
+  0x3e55, 0x3e7a, 0x3a4a, 0x5d4a, 0x5d45, 0x5d3f, 0x324b, 0x5d43,
+  0x5d4b, 0x3224, 0x5d55, 0x5d3e, 0x4650, 0x5d50, 0x5d54, 0x4162,
+  0x3746, 0x5d4e, 0x5d4f, 0x5d44, 0x5d3d, 0x5d4d, 0x4c51, 0x5d49,
+  0x5d42, 0x4348, 0x463c, 0x4e2e, 0x5d4c, 0x5d48, 0x5d41, 0x5d46,
+  0x425c, 0x5329, 0x532a, 0x5d53, 0x4f74, 0x4878, 0x5d66, 0x5d47,
+  0x5d60, 0x4264, 0x5d61, 0x5d57, 0x5678, 0x5d59, 0x5d58, 0x3870,
+  0x5d56, 0x464f, 0x362d, 0x5d62, 0x3a79, 0x5461, 0x5d67, 0x3450,
+  0x5d5a, 0x3f7b, 0x5d63, 0x5d5f, 0x5d5d, 0x3559, 0x5d5b, 0x5d5c,
+  0x5d5e, 0x3d2f, 0x5d64, 0x5d65, 0x5d75, 0x4349, 0x4b62, 0x5d72,
+  0x5861, 0x4651, 0x5d74, 0x5574, 0x5d73, 0x5d70, 0x5d6c, 0x5d6f,
+  0x5d68, 0x506e, 0x4858, 0x5d6e, 0x5d69, 0x5d6a, 0x4b72, 0x5d6d,
+  0x314d, 0x4036, 0x3c3b, 0x5d71, 0x5d77, 0x5d76, 0x5d6b, 0x456e,
+  0x5d7b, 0x5e24, 0x5e23, 0x5d78, 0x436f, 0x427b, 0x5561, 0x4e35,
+  0x5d7d, 0x324c, 0x4468, 0x4a5f, 0x473e, 0x5d7a, 0x5d7c, 0x5d7e,
+  0x5e22, 0x302a, 0x314e, 0x5e2c, 0x5e26, 0x3d36, 0x486f, 0x5e21,
+  0x5e25, 0x5e29, 0x5e28, 0x5e27, 0x5e2d, 0x544c, 0x5e33, 0x5e2a,
+  0x5e2e, 0x4059, 0x3121, 0x5e36, 0x5e31, 0x5e32, 0x5126, 0x5e35,
+  0x5e2f, 0x5e30, 0x503d, 0x5e34, 0x4a6d, 0x5e39, 0x5e38, 0x5e37,
+  0x5e3b, 0x3d65, 0x3258, 0x436a, 0x5e3a, 0x453a, 0x5e3c, 0x4c59,
+  0x372a, 0x5465, 0x5e3d, 0x5e3f, 0x4422, 0x5e41, 0x5e3e, 0x5e40,
+  0x553a, 0x5e42, 0x722e, 0x3b22, 0x4232, 0x4530, 0x4247, 0x722f,
+  0x5069, 0x535d, 0x6b3d, 0x3366, 0x7230, 0x7231, 0x4a2d, 0x3a67,
+  0x7233, 0x7235, 0x7234, 0x4b64, 0x4f3a, 0x7232, 0x4a34, 0x524f,
+  0x426c, 0x4e43, 0x7238, 0x3076, 0x7237, 0x723e, 0x324f, 0x5141,
+  0x723a, 0x723c, 0x5469, 0x723b, 0x7236, 0x723f, 0x723d, 0x7239,
+  0x7247, 0x7244, 0x7246, 0x724a, 0x7242, 0x7240, 0x7245, 0x567b,
+  0x7241, 0x4779, 0x495f, 0x7248, 0x3946, 0x3530, 0x7243, 0x7249,
+  0x7250, 0x7256, 0x3b57, 0x7255, 0x4d5c, 0x566b, 0x7252, 0x7254,
+  0x3872, 0x724b, 0x724e, 0x4279, 0x555d, 0x724c, 0x724d, 0x724f,
+  0x7253, 0x7259, 0x533c, 0x366a, 0x4a71, 0x3764, 0x7257, 0x7258,
+  0x725a, 0x725d, 0x725b, 0x725c, 0x5151, 0x7251, 0x4d49, 0x4e4f,
+  0x5629, 0x7263, 0x435b, 0x7260, 0x402f, 0x726c, 0x725e, 0x7261,
+  0x7268, 0x7262, 0x7267, 0x7266, 0x7269, 0x725f, 0x7264, 0x726a,
+  0x532c, 0x7265, 0x3275, 0x7272, 0x502b, 0x7275, 0x3b48, 0x7279,
+  0x7270, 0x7276, 0x7278, 0x727a, 0x7273, 0x7271, 0x3a7b, 0x357b,
+  0x726f, 0x7277, 0x726d, 0x726e, 0x726b, 0x7326, 0x7323, 0x7322,
+  0x7274, 0x485a, 0x727b, 0x7325, 0x4378, 0x727d, 0x7327, 0x7329,
+  0x7324, 0x727c, 0x732b, 0x732a, 0x425d, 0x732e, 0x7330, 0x7321,
+  0x7331, 0x732c, 0x732f, 0x727e, 0x732d, 0x7332, 0x7334, 0x7328,
+  0x7333, 0x7335, 0x5037, 0x7338, 0x5979, 0x7339, 0x7337, 0x4864,
+  0x7336, 0x733a, 0x733b, 0x3440, 0x6e43, 0x733c, 0x733d, 0x512a,
+  0x742c, 0x5046, 0x5050, 0x515c, 0x4f4e, 0x3d56, 0x5143, 0x3a62,
+  0x6169, 0x5242, 0x7142, 0x3239, 0x316d, 0x7143, 0x4940, 0x3344,
+  0x5972, 0x4b25, 0x7144, 0x5654, 0x7145, 0x7440, 0x7146, 0x542c,
+  0x7147, 0x3040, 0x7441, 0x7442, 0x347c, 0x455b, 0x4c3b, 0x5064,
+  0x4d60, 0x7148, 0x5973, 0x313b, 0x4f2e, 0x3824, 0x714a, 0x714b,
+  0x3243, 0x4151, 0x5730, 0x7149, 0x714c, 0x714e, 0x5976, 0x5261,
+  0x5423, 0x7443, 0x4839, 0x7444, 0x714d, 0x714f, 0x3f63, 0x7150,
+  0x7154, 0x7156, 0x7151, 0x4951, 0x4561, 0x4263, 0x397c, 0x7153,
+  0x7155, 0x3953, 0x715b, 0x3a56, 0x307d, 0x7159, 0x7158, 0x7152,
+  0x715a, 0x7157, 0x486c, 0x4d4a, 0x715d, 0x653d, 0x715c, 0x715e,
+  0x715f, 0x4f65, 0x7445, 0x3d73, 0x7160, 0x7161, 0x4e77, 0x522a,
+  0x717b, 0x3832, 0x3c7b, 0x395b, 0x3966, 0x4359, 0x4a53, 0x6a68,
+  0x4040, 0x3e75, 0x6a69, 0x6a6a, 0x6a6b, 0x6a6c, 0x6a6d, 0x6a6e,
+  0x6a6f, 0x3d47, 0x757b, 0x757d, 0x757e, 0x757c, 0x3d62, 0x7621,
+  0x3425, 0x7622, 0x7623, 0x6c32, 0x5154, 0x596a, 0x7624, 0x6e3a,
+  0x5532, 0x537e, 0x4c5c, 0x4a44, 0x6540, 0x7625, 0x3e2f, 0x4629,
+  0x5a25, 0x3c46, 0x3629, 0x383c, 0x484f, 0x3c25, 0x5a26, 0x5a27,
+  0x4c56, 0x4843, 0x5a28, 0x467d, 0x5135, 0x5269, 0x5136, 0x3c47,
+  0x3d32, 0x3b64, 0x5a29, 0x5a2a, 0x5148, 0x5a2b, 0x506d, 0x366f,
+  0x425b, 0x4b4f, 0x376d, 0x4968, 0x3743, 0x3e77, 0x5624, 0x5a2c,
+  0x5a2d, 0x4640, 0x5767, 0x4a36, 0x5529, 0x4b5f, 0x556f, 0x5a2e,
+  0x565f, 0x344a, 0x5a30, 0x5a2f, 0x526b, 0x5a31, 0x5a32, 0x5a33,
+  0x4a54, 0x5a34, 0x4a2b, 0x5a35, 0x5a36, 0x334f, 0x566f, 0x5a37,
+  0x3b30, 0x352e, 0x5a38, 0x5a39, 0x396e, 0x512f, 0x5268, 0x5a3a,
+  0x3843, 0x4f6a, 0x326f, 0x5a3b, 0x5a3c, 0x3d6b, 0x4e5c, 0x536f,
+  0x5a3d, 0x4e73, 0x5a3e, 0x5355, 0x3b65, 0x5a3f, 0x4b35, 0x4b50,
+  0x5a40, 0x476b, 0x566e, 0x5a41, 0x4535, 0x3641, 0x5a42, 0x374c,
+  0x3f4e, 0x5a43, 0x5a44, 0x4b2d, 0x5a45, 0x3577, 0x5a46, 0x4142,
+  0x573b, 0x5a47, 0x4c38, 0x526a, 0x4431, 0x5a48, 0x357d, 0x3b51,
+  0x5a49, 0x5033, 0x5a4a, 0x5a4b, 0x4e3d, 0x5a4c, 0x5a4d, 0x5a4e,
+  0x3277, 0x5a51, 0x5a4f, 0x5168, 0x5a50, 0x4355, 0x5a52, 0x5a53,
+  0x5a54, 0x5a55, 0x503b, 0x5225, 0x3079, 0x5a56, 0x472b, 0x5a57,
+  0x3d77, 0x4321, 0x5a58, 0x5a59, 0x437d, 0x4c37, 0x5a5a, 0x5a5b,
+  0x403e, 0x4657, 0x5a5c, 0x5a5d, 0x4734, 0x5a5e, 0x5a5f, 0x3948,
+  0x3b6d, 0x3639, 0x7478, 0x7479, 0x4d63, 0x7539, 0x6b60, 0x4f73,
+  0x3b3f, 0x3a40, 0x5425, 0x6159, 0x7574, 0x312a, 0x3272, 0x7575,
+  0x7577, 0x3a51, 0x7576, 0x4332, 0x7579, 0x7578, 0x3134, 0x556a,
+  0x383a, 0x3931, 0x3246, 0x5470, 0x4f4d, 0x305c, 0x554b, 0x3b75,
+  0x564a, 0x3737, 0x4c30, 0x4636, 0x3161, 0x393a, 0x567c, 0x3961,
+  0x3721, 0x3c7a, 0x6a5a, 0x6a5b, 0x4c79, 0x3973, 0x6a5c, 0x347b,
+  0x4333, 0x3751, 0x3a58, 0x6a5d, 0x5474, 0x6a5e, 0x3c56, 0x3b5f,
+  0x6a5f, 0x415e, 0x4238, 0x545f, 0x574a, 0x6a60, 0x6a61, 0x6a64,
+  0x6a62, 0x6a63, 0x495e, 0x3833, 0x3644, 0x6a65, 0x4a6a, 0x494d,
+  0x344d, 0x6259, 0x4562, 0x6a66, 0x4035, 0x5738, 0x6a67, 0x572c,
+  0x487c, 0x5853, 0x584d, 0x545e, 0x5479, 0x4944, 0x532e, 0x3853,
+  0x3360, 0x4962, 0x7476, 0x3a55, 0x7477, 0x575f, 0x7471, 0x3830,
+  0x5554, 0x384f, 0x4670, 0x3343, 0x7472, 0x332c, 0x543d, 0x4777,
+  0x7474, 0x7473, 0x4c4b, 0x4824, 0x7475, 0x5763, 0x453f, 0x7540,
+  0x753b, 0x7543, 0x7542, 0x563a, 0x7541, 0x543e, 0x7544, 0x754c,
+  0x304f, 0x3578, 0x7549, 0x754a, 0x455c, 0x7545, 0x7546, 0x7547,
+  0x754b, 0x3e60, 0x7548, 0x387a, 0x7550, 0x7553, 0x3f67, 0x3972,
+  0x753c, 0x754d, 0x4237, 0x4c78, 0x3c79, 0x754e, 0x754f, 0x7551,
+  0x3665, 0x7552, 0x7555, 0x753d, 0x7554, 0x533b, 0x336c, 0x4c24,
+  0x7556, 0x7557, 0x3e61, 0x7558, 0x4c5f, 0x755b, 0x3248, 0x5759,
+  0x7559, 0x755a, 0x755c, 0x7562, 0x7560, 0x755f, 0x755d, 0x7561,
+  0x755e, 0x7564, 0x7565, 0x4c63, 0x653f, 0x3538, 0x7563, 0x7568,
+  0x4c23, 0x7566, 0x7567, 0x753e, 0x3144, 0x753f, 0x3545, 0x3264,
+  0x756c, 0x7569, 0x3657, 0x756d, 0x756a, 0x756b, 0x345a, 0x546a,
+  0x756e, 0x3379, 0x756f, 0x7571, 0x7570, 0x7572, 0x7573, 0x496d,
+  0x392a, 0x477b, 0x3663, 0x4c49, 0x6a26, 0x3335, 0x547e, 0x396c,
+  0x5079, 0x696d, 0x572a, 0x696e, 0x4256, 0x486d, 0x3a64, 0x696f,
+  0x6970, 0x6971, 0x5661, 0x6972, 0x6973, 0x6975, 0x6974, 0x6976,
+  0x6977, 0x4761, 0x6978, 0x5458, 0x6979, 0x3d4e, 0x697a, 0x697b,
+  0x3d4f, 0x697c, 0x3828, 0x413e, 0x697d, 0x3132, 0x3b54, 0x3975,
+  0x697e, 0x6a21, 0x6a22, 0x6a23, 0x3778, 0x3c2d, 0x4a64, 0x604e,
+  0x542f, 0x4f3d, 0x5537, 0x6a24, 0x555e, 0x6a25, 0x5041, 0x393c,
+  0x3447, 0x3159, 0x4031, 0x3166, 0x3167, 0x3168, 0x333d, 0x4868,
+  0x6541, 0x315f, 0x4149, 0x346f, 0x4728, 0x5358, 0x4679, 0x5138,
+  0x397d, 0x4275, 0x532d, 0x544b, 0x3d7c, 0x6542, 0x3735, 0x6543,
+  0x3b39, 0x5562, 0x3d78, 0x5436, 0x4e25, 0x412c, 0x3359, 0x4c76,
+  0x6546, 0x6544, 0x6548, 0x654a, 0x6547, 0x354f, 0x4648, 0x357c,
+  0x6545, 0x4a76, 0x6549, 0x4354, 0x3145, 0x3c23, 0x5737, 0x4d4b,
+  0x4b4d, 0x4a4a, 0x4c53, 0x654c, 0x654b, 0x4466, 0x5121, 0x5137,
+  0x654d, 0x6550, 0x4d38, 0x5670, 0x654f, 0x355d, 0x4d3e, 0x6551,
+  0x363a, 0x4d28, 0x3964, 0x4a45, 0x3351, 0x4b59, 0x546c, 0x6552,
+  0x376a, 0x654e, 0x6555, 0x347e, 0x6556, 0x6553, 0x6554, 0x525d,
+  0x425f, 0x3146, 0x5362, 0x365d, 0x4b6c, 0x6557, 0x5376, 0x3169,
+  0x3674, 0x655a, 0x6558, 0x6559, 0x3540, 0x5245, 0x655c, 0x655e,
+  0x655d, 0x4732, 0x5223, 0x655b, 0x5462, 0x555a, 0x6560, 0x5771,
+  0x6561, 0x315c, 0x517b, 0x6562, 0x6564, 0x6563, 0x6565, 0x5258,
+  0x354b, 0x675f, 0x5a75, 0x5a78, 0x5a76, 0x5a77, 0x5a7a, 0x504f,
+  0x4447, 0x306e, 0x5030, 0x5a79, 0x534a, 0x3a2a, 0x5b22, 0x4771,
+  0x5a7c, 0x5a7b, 0x495b, 0x5a7d, 0x5b21, 0x575e, 0x5a7e, 0x415a,
+  0x5b25, 0x5374, 0x5b27, 0x5b24, 0x5b28, 0x3d3c, 0x4049, 0x5b23,
+  0x5b26, 0x5623, 0x5b29, 0x5b2d, 0x5b2e, 0x5b2c, 0x3a42, 0x3f24,
+  0x5b2b, 0x5b2a, 0x5447, 0x323f, 0x5b2f, 0x3979, 0x5b30, 0x333b,
+  0x3526, 0x363c, 0x5b31, 0x3675, 0x5b32, 0x3149, 0x5b34, 0x5b33,
+  0x5b35, 0x5b37, 0x5b36, 0x5b38, 0x5b39, 0x5b3a, 0x534f, 0x747a,
+  0x4775, 0x5743, 0x4564, 0x747c, 0x747d, 0x747b, 0x3e46, 0x506f,
+  0x3753, 0x544d, 0x4c2a, 0x7522, 0x7521, 0x3a28, 0x747e, 0x4b56,
+  0x7524, 0x4052, 0x336a, 0x4d2a, 0x7525, 0x7523, 0x3d34, 0x7528,
+  0x7529, 0x3d4d, 0x4338, 0x3f61, 0x4b61, 0x752a, 0x7526, 0x7527,
+  0x4470, 0x752c, 0x343c, 0x576d, 0x3457, 0x752b, 0x752e, 0x752d,
+  0x752f, 0x5051, 0x4351, 0x4829, 0x7530, 0x7531, 0x7532, 0x7533,
+  0x7534, 0x7535, 0x7537, 0x7536, 0x7538, 0x3249, 0x5354, 0x4a4d,
+  0x406f, 0x5658, 0x5230, 0x413f, 0x3d70, 0x382a, 0x3c78, 0x7646,
+  0x7647, 0x7648, 0x7649, 0x764a, 0x764c, 0x764b, 0x7769, 0x764d,
+  0x764e, 0x6e44, 0x6e45, 0x6e46, 0x556b, 0x3624, 0x6e48, 0x6e47,
+  0x6e49, 0x6e4a, 0x4725, 0x6e4b, 0x6e4c, 0x3730, 0x3576, 0x6e4d,
+  0x6e4f, 0x6e4e, 0x3846, 0x6e50, 0x6e51, 0x6e52, 0x365b, 0x332e,
+  0x5653, 0x4446, 0x3135, 0x3856, 0x6e53, 0x6e54, 0x543f, 0x4755,
+  0x3e7b, 0x4e59, 0x3933, 0x6e56, 0x6e55, 0x6e58, 0x6e57, 0x4525,
+  0x6e59, 0x6e5a, 0x472e, 0x6e5b, 0x472f, 0x6e5c, 0x3227, 0x6e5d,
+  0x6e5e, 0x6e5f, 0x6e60, 0x6e61, 0x576a, 0x6e62, 0x6e63, 0x3c58,
+  0x6e64, 0x534b, 0x4c7a, 0x322c, 0x4165, 0x6e65, 0x4726, 0x432d,
+  0x6e66, 0x6e67, 0x6e68, 0x6e69, 0x6e6a, 0x6e6b, 0x6e6c, 0x6e6d,
+  0x6e6e, 0x6e6f, 0x6e70, 0x6e71, 0x6e72, 0x6e74, 0x6e73, 0x6e75,
+  0x4d2d, 0x4241, 0x6e76, 0x6e77, 0x6e78, 0x5521, 0x6e79, 0x4f33,
+  0x6e7a, 0x6e7b, 0x6e7c, 0x6e7d, 0x6f21, 0x6e7e, 0x6f22, 0x3875,
+  0x437a, 0x6f23, 0x6f24, 0x3d42, 0x523f, 0x3279, 0x6f25, 0x6f26,
+  0x6f27, 0x5278, 0x6f28, 0x567d, 0x6f29, 0x464c, 0x6f2a, 0x6f2b,
+  0x4134, 0x6f2c, 0x4f7a, 0x4b78, 0x6f2e, 0x6f2d, 0x337a, 0x3978,
+  0x6f2f, 0x6f30, 0x5062, 0x6f31, 0x6f32, 0x3766, 0x503f, 0x6f33,
+  0x6f34, 0x6f35, 0x4871, 0x4c60, 0x6f36, 0x6f37, 0x6f38, 0x6f39,
+  0x6f3a, 0x5560, 0x6f3b, 0x346d, 0x432a, 0x6f3c, 0x6f3d, 0x6f3e,
+  0x6f3f, 0x4e7d, 0x6f40, 0x4260, 0x3438, 0x5736, 0x3d75, 0x4f47,
+  0x6f43, 0x6f41, 0x6f42, 0x6f44, 0x3627, 0x3c7c, 0x3e62, 0x434c,
+  0x6f45, 0x6f46, 0x6f47, 0x6f4f, 0x6f48, 0x6f49, 0x6f4a, 0x4742,
+  0x6f71, 0x364d, 0x6f4b, 0x6f4c, 0x6f4d, 0x3646, 0x433e, 0x6f4e,
+  0x6f50, 0x6f51, 0x6f52, 0x5572, 0x6f53, 0x4477, 0x6f54, 0x4478,
+  0x6f55, 0x6f56, 0x3864, 0x3077, 0x6f57, 0x6f58, 0x6f59, 0x6f5a,
+  0x6f5b, 0x6f5c, 0x6f5d, 0x6f5e, 0x3e35, 0x6f61, 0x6f5f, 0x6f60,
+  0x6f62, 0x6f63, 0x414d, 0x6f64, 0x6f65, 0x6f66, 0x6f67, 0x6f68,
+  0x6f69, 0x6f6a, 0x6f6b, 0x6f6c, 0x4058, 0x6f6d, 0x412d, 0x6f6e,
+  0x6f6f, 0x6f70, 0x4f62, 0x3324, 0x4345, 0x6345, 0x4941, 0x6346,
+  0x3155, 0x4e4a, 0x3433, 0x4872, 0x6347, 0x4f50, 0x6348, 0x3c64,
+  0x6349, 0x634a, 0x4346, 0x5522, 0x4456, 0x396b, 0x4e45, 0x634b,
+  0x4376, 0x634c, 0x3727, 0x3873, 0x3a52, 0x634d, 0x634e, 0x5444,
+  0x634f, 0x6350, 0x514b, 0x6351, 0x6352, 0x6353, 0x6354, 0x5156,
+  0x6355, 0x327b, 0x403b, 0x6356, 0x402b, 0x6357, 0x6358, 0x6359,
+  0x635a, 0x635b, 0x3837, 0x5a62, 0x3653, 0x5a64, 0x5a63, 0x5a66,
+  0x486e, 0x5a65, 0x3740, 0x5174, 0x5275, 0x5573, 0x3d57, 0x5768,
+  0x5a68, 0x5a67, 0x3022, 0x4d53, 0x5a69, 0x383d, 0x3c4a, 0x423d,
+  0x4224, 0x3342, 0x5a6a, 0x422a, 0x4430, 0x3d35, 0x4f5e, 0x5a6b,
+  0x4942, 0x315d, 0x5a6c, 0x3638, 0x543a, 0x337d, 0x5a6d, 0x5449,
+  0x4f55, 0x4563, 0x5a6e, 0x5a6f, 0x5a70, 0x416a, 0x4c55, 0x4f5d,
+  0x5367, 0x4221, 0x5a71, 0x4b65, 0x5a72, 0x4b66, 0x527e, 0x3874,
+  0x5a73, 0x302f, 0x4f36, 0x554f, 0x4b6d, 0x5a74, 0x6344, 0x4125,
+  0x763f, 0x7640, 0x7641, 0x4451, 0x4838, 0x5163, 0x505b, 0x5145,
+  0x3c2f, 0x394d, 0x6f74, 0x3446, 0x533a, 0x7642, 0x337b, 0x7643,
+  0x3571, 0x7645, 0x536a, 0x7627, 0x5129, 0x7629, 0x7628, 0x4163,
+  0x4057, 0x3122, 0x4e6d, 0x5068, 0x762b, 0x4f76, 0x762a, 0x5570,
+  0x762c, 0x4339, 0x3b74, 0x762e, 0x762d, 0x445e, 0x4158, 0x4b2a,
+  0x4f3c, 0x762f, 0x7630, 0x7631, 0x4236, 0x3054, 0x4579, 0x7632,
+  0x4760, 0x7626, 0x3e38, 0x3e32, 0x3565, 0x3747, 0x3f3f, 0x4352,
+  0x4366, 0x584c, 0x386f, 0x3d79, 0x5125, 0x3050, 0x7730, 0x7731,
+  0x502c, 0x3030, 0x7732, 0x7733, 0x7734, 0x474a, 0x3e4f, 0x7737,
+  0x7736, 0x315e, 0x7735, 0x7738, 0x7739, 0x4e24, 0x484d, 0x3a2b,
+  0x6838, 0x6839, 0x683a, 0x3e42, 0x5274, 0x544f, 0x4958, 0x5233,
+  0x3625, 0x476a, 0x717c, 0x4f6e, 0x4b33, 0x506b, 0x676f, 0x4d67,
+  0x394b, 0x3659, 0x717d, 0x3064, 0x4b4c, 0x717e, 0x5424, 0x422d,
+  0x416c, 0x4644, 0x3e31, 0x7221, 0x3c55, 0x7222, 0x7223, 0x7224,
+  0x5243, 0x4635, 0x4d47, 0x7225, 0x5331, 0x3f45, 0x4c62, 0x7226,
+  0x7227, 0x5155, 0x366e, 0x7228, 0x7229, 0x355f, 0x722a, 0x722b,
+  0x327c, 0x722c, 0x722d, 0x4827, 0x3767, 0x6c29, 0x6c2a, 0x6c2b,
+  0x6c2c, 0x462e, 0x6c2d, 0x6c2e, 0x3749, 0x4a33, 0x6238, 0x774f,
+  0x7750, 0x324d, 0x7751, 0x7753, 0x7752, 0x623b, 0x3c22, 0x623c,
+  0x623d, 0x623e, 0x623f, 0x6240, 0x6241, 0x3739, 0x527b, 0x3d24,
+  0x4a4e, 0x3125, 0x4b47, 0x6242, 0x367c, 0x4844, 0x6243, 0x3d48,
+  0x317d, 0x6244, 0x3676, 0x6245, 0x4459, 0x6246, 0x4f5a, 0x395d,
+  0x6247, 0x4021, 0x6248, 0x3276, 0x6249, 0x4173, 0x624a, 0x624b,
+  0x4278, 0x624c, 0x624d, 0x624e, 0x4a57, 0x5838, 0x5965, 0x4f63,
+  0x7025, 0x5c30, 0x426d, 0x5426, 0x4d54, 0x5131, 0x335b, 0x477d,
+  0x3235, 0x423f, 0x6660, 0x4a3b, 0x6661, 0x6662, 0x3e54, 0x6663,
+  0x5724, 0x4d55, 0x6665, 0x3c5d, 0x6664, 0x6666, 0x6667, 0x426e,
+  0x3d3e, 0x6668, 0x4266, 0x3a27, 0x6669, 0x666a, 0x3352, 0x5169,
+  0x3f25, 0x666b, 0x466f, 0x666c, 0x666d, 0x666e, 0x462d, 0x666f,
+  0x4927, 0x6670, 0x6671, 0x6672, 0x6539, 0x6673, 0x6674, 0x4262,
+  0x6675, 0x6676, 0x5668, 0x6677, 0x6678, 0x3947, 0x773b, 0x773a,
+  0x773e, 0x773c, 0x3a21, 0x773f, 0x7740, 0x7742, 0x7741, 0x7744,
+  0x7743, 0x7745, 0x7746, 0x7747, 0x4b68, 0x385f, 0x7754, 0x7755,
+  0x7756, 0x7758, 0x775a, 0x7757, 0x775b, 0x7759, 0x5757, 0x775c,
+  0x775d, 0x775e, 0x775f, 0x7760, 0x5b4b, 0x582a, 0x6577, 0x396d,
+  0x3f7d, 0x3b6a, 0x7749, 0x4647, 0x7748, 0x774a, 0x774c, 0x774b,
+  0x774d, 0x4e3a, 0x774e, 0x4427, 0x5363, 0x764f, 0x4233, 0x7650,
+  0x7651, 0x7652, 0x7653, 0x7654, 0x7656, 0x312b, 0x7657, 0x7658,
+  0x7659, 0x765a, 0x765b, 0x765c, 0x765d, 0x765e, 0x4f4a, 0x765f,
+  0x7660, 0x7661, 0x7662, 0x7663, 0x7664, 0x4070, 0x7665, 0x7666,
+  0x7667, 0x7668, 0x7669, 0x766a, 0x766b, 0x766c, 0x766d, 0x766e,
+  0x766f, 0x7670, 0x7671, 0x7672, 0x7673, 0x7674, 0x3e28, 0x7675,
+  0x7676, 0x7677, 0x7678, 0x487a, 0x7679, 0x767a, 0x767b, 0x767c,
+  0x767d, 0x767e, 0x7721, 0x7722, 0x7723, 0x7724, 0x7725, 0x7726,
+  0x7727, 0x7728, 0x316e, 0x7729, 0x772a, 0x772b, 0x772c, 0x772d,
+  0x415b, 0x772e, 0x772f, 0x4471, 0x702f, 0x3c26, 0x7030, 0x4379,
+  0x4538, 0x513b, 0x7031, 0x7032, 0x7033, 0x7034, 0x7035, 0x513c,
+  0x516c, 0x7037, 0x7036, 0x5427, 0x4d52, 0x7038, 0x703a, 0x7039,
+  0x703b, 0x703c, 0x386b, 0x703d, 0x3a68, 0x703e, 0x703f, 0x3e69,
+  0x7040, 0x366c, 0x7041, 0x7042, 0x7043, 0x7044, 0x4835, 0x7045,
+  0x7046, 0x7047, 0x4574, 0x7048, 0x7049, 0x704a, 0x773d, 0x704b,
+  0x704c, 0x704d, 0x704e, 0x704f, 0x3a57, 0x7050, 0x7051, 0x7052,
+  0x7053, 0x7054, 0x7055, 0x7056, 0x7058, 0x5325, 0x7057, 0x7059,
+  0x753a, 0x4239, 0x7764, 0x7765, 0x7766, 0x7767, 0x7768, 0x4234,
+  0x776a, 0x776b, 0x4273, 0x7470, 0x746f, 0x4269, 0x7761, 0x7762,
+  0x3b46, 0x5964, 0x4a72, 0x4068, 0x7024, 0x3a5a, 0x472d, 0x442c,
+  0x776c, 0x776d, 0x776e, 0x7770, 0x776f, 0x7771, 0x7774, 0x7773,
+  0x7772, 0x7775, 0x7776, 0x6d69, 0x6d6a, 0x6d6b, 0x763c, 0x763d,
+  0x763e, 0x3626, 0x583e, 0x3944, 0x583b, 0x5c31, 0x4a73, 0x7777,
+  0x7778, 0x7779, 0x777b, 0x777a, 0x3147, 0x777c, 0x777d, 0x777e,
+  0x466b, 0x6c34, 0x335d, 0x7633, 0x7634, 0x4164, 0x7635, 0x7636,
+  0x7637, 0x7638, 0x7639, 0x763a, 0x4823, 0x763b, 0x417a, 0x3928,
+  0x6d68, 0x396a, 0x595f, 0x2321, 0x2322, 0x2323, 0x2167, 0x2325,
+  0x2326, 0x2327, 0x2328, 0x2329, 0x232a, 0x232b, 0x232c, 0x232d,
+  0x232e, 0x232f, 0x2330, 0x2331, 0x2332, 0x2333, 0x2334, 0x2335,
+  0x2336, 0x2337, 0x2338, 0x2339, 0x233a, 0x233b, 0x233c, 0x233d,
+  0x233e, 0x233f, 0x2340, 0x2341, 0x2342, 0x2343, 0x2344, 0x2345,
+  0x2346, 0x2347, 0x2348, 0x2349, 0x234a, 0x234b, 0x234c, 0x234d,
+  0x234e, 0x234f, 0x2350, 0x2351, 0x2352, 0x2353, 0x2354, 0x2355,
+  0x2356, 0x2357, 0x2358, 0x2359, 0x235a, 0x235b, 0x235c, 0x235d,
+  0x235e, 0x235f, 0x2360, 0x2361, 0x2362, 0x2363, 0x2364, 0x2365,
+  0x2366, 0x2367, 0x2368, 0x2369, 0x236a, 0x236b, 0x236c, 0x236d,
+  0x236e, 0x236f, 0x2370, 0x2371, 0x2372, 0x2373, 0x2374, 0x2375,
+  0x2376, 0x2377, 0x2378, 0x2379, 0x237a, 0x237b, 0x237c, 0x237d,
+  0x212b, 0x2169, 0x216a, 0x237e, 0x2324,
+};
+
+static const Summary16 gb2312_uni2indx_page00[70] = {
+  /* 0x0000 */
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0190 }, {    3, 0x0003 },
+  {    5, 0x0000 }, {    5, 0x0080 }, {    6, 0x3703 }, {   13, 0x168c },
+  /* 0x0100 */
+  {   19, 0x0002 }, {   20, 0x0808 }, {   22, 0x0800 }, {   23, 0x0000 },
+  {   23, 0x2000 }, {   24, 0x0000 }, {   24, 0x0800 }, {   25, 0x0000 },
+  {   25, 0x0000 }, {   25, 0x0000 }, {   25, 0x0000 }, {   25, 0x0000 },
+  {   25, 0x4000 }, {   26, 0x1555 }, {   33, 0x0000 }, {   33, 0x0000 },
+  /* 0x0200 */
+  {   33, 0x0000 }, {   33, 0x0000 }, {   33, 0x0000 }, {   33, 0x0000 },
+  {   33, 0x0000 }, {   33, 0x0000 }, {   33, 0x0000 }, {   33, 0x0000 },
+  {   33, 0x0000 }, {   33, 0x0000 }, {   33, 0x0000 }, {   33, 0x0000 },
+  {   33, 0x0280 }, {   35, 0x0000 }, {   35, 0x0000 }, {   35, 0x0000 },
+  /* 0x0300 */
+  {   35, 0x0000 }, {   35, 0x0000 }, {   35, 0x0000 }, {   35, 0x0000 },
+  {   35, 0x0000 }, {   35, 0x0000 }, {   35, 0x0000 }, {   35, 0x0000 },
+  {   35, 0x0000 }, {   35, 0xfffe }, {   50, 0x03fb }, {   59, 0xfffe },
+  {   74, 0x03fb }, {   83, 0x0000 }, {   83, 0x0000 }, {   83, 0x0000 },
+  /* 0x0400 */
+  {   83, 0x0002 }, {   84, 0xffff }, {  100, 0xffff }, {  116, 0xffff },
+  {  132, 0xffff }, {  148, 0x0002 },
+};
+static const Summary16 gb2312_uni2indx_page20[101] = {
+  /* 0x2000 */
+  {  149, 0x0000 }, {  149, 0x3360 }, {  155, 0x0040 }, {  156, 0x080d },
+  {  160, 0x0000 }, {  160, 0x0000 }, {  160, 0x0000 }, {  160, 0x0000 },
+  {  160, 0x0000 }, {  160, 0x0000 }, {  160, 0x0000 }, {  160, 0x0000 },
+  {  160, 0x0000 }, {  160, 0x0000 }, {  160, 0x0000 }, {  160, 0x0000 },
+  /* 0x2100 */
+  {  160, 0x0008 }, {  161, 0x0040 }, {  162, 0x0000 }, {  162, 0x0000 },
+  {  162, 0x0000 }, {  162, 0x0000 }, {  162, 0x0fff }, {  174, 0x0000 },
+  {  174, 0x0000 }, {  174, 0x000f }, {  178, 0x0000 }, {  178, 0x0000 },
+  {  178, 0x0000 }, {  178, 0x0000 }, {  178, 0x0000 }, {  178, 0x0000 },
+  /* 0x2200 */
+  {  178, 0x8100 }, {  180, 0x6402 }, {  184, 0x4fa1 }, {  192, 0x20f0 },
+  {  197, 0x1100 }, {  199, 0x0000 }, {  199, 0xc033 }, {  205, 0x0000 },
+  {  205, 0x0000 }, {  205, 0x0200 }, {  206, 0x0020 }, {  207, 0x0000 },
+  {  207, 0x0000 }, {  207, 0x0000 }, {  207, 0x0000 }, {  207, 0x0000 },
+  /* 0x2300 */
+  {  207, 0x0000 }, {  207, 0x0004 }, {  208, 0x0000 }, {  208, 0x0000 },
+  {  208, 0x0000 }, {  208, 0x0000 }, {  208, 0x0000 }, {  208, 0x0000 },
+  {  208, 0x0000 }, {  208, 0x0000 }, {  208, 0x0000 }, {  208, 0x0000 },
+  {  208, 0x0000 }, {  208, 0x0000 }, {  208, 0x0000 }, {  208, 0x0000 },
+  /* 0x2400 */
+  {  208, 0x0000 }, {  208, 0x0000 }, {  208, 0x0000 }, {  208, 0x0000 },
+  {  208, 0x0000 }, {  208, 0x0000 }, {  208, 0x03ff }, {  218, 0xfff0 },
+  {  230, 0xffff }, {  246, 0x0fff }, {  258, 0x0000 }, {  258, 0x0000 },
+  {  258, 0x0000 }, {  258, 0x0000 }, {  258, 0x0000 }, {  258, 0x0000 },
+  /* 0x2500 */
+  {  258, 0xffff }, {  274, 0xffff }, {  290, 0xffff }, {  306, 0xffff },
+  {  322, 0x0fff }, {  334, 0x0000 }, {  334, 0x0000 }, {  334, 0x0000 },
+  {  334, 0x0000 }, {  334, 0x0000 }, {  334, 0x0003 }, {  336, 0x000c },
+  {  338, 0xc8c0 }, {  343, 0x0000 }, {  343, 0x0000 }, {  343, 0x0000 },
+  /* 0x2600 */
+  {  343, 0x0060 }, {  345, 0x0000 }, {  345, 0x0000 }, {  345, 0x0000 },
+  {  345, 0x0005 },
+};
+static const Summary16 gb2312_uni2indx_page30[35] = {
+  /* 0x3000 */
+  {  347, 0xff2f }, {  360, 0x00fb }, {  367, 0x0000 }, {  367, 0x0000 },
+  {  367, 0xfffe }, {  382, 0xffff }, {  398, 0xffff }, {  414, 0xffff },
+  {  430, 0xffff }, {  446, 0x000f }, {  450, 0xfffe }, {  465, 0xffff },
+  {  481, 0xffff }, {  497, 0xffff }, {  513, 0xffff }, {  529, 0x087f },
+  /* 0x3100 */
+  {  537, 0xffe0 }, {  548, 0xffff }, {  564, 0x03ff }, {  574, 0x0000 },
+  {  574, 0x0000 }, {  574, 0x0000 }, {  574, 0x0000 }, {  574, 0x0000 },
+  {  574, 0x0000 }, {  574, 0x0000 }, {  574, 0x0000 }, {  574, 0x0000 },
+  {  574, 0x0000 }, {  574, 0x0000 }, {  574, 0x0000 }, {  574, 0x0000 },
+  /* 0x3200 */
+  {  574, 0x0000 }, {  574, 0x0000 }, {  574, 0x03ff },
+};
+static const Summary16 gb2312_uni2indx_page4e[1263] = {
+  /* 0x4e00 */
+  {  584, 0x7f8b }, {  595, 0x7f7b }, {  608, 0x3db4 }, {  617, 0xef55 },
+  {  628, 0xfba8 }, {  638, 0xf35d }, {  649, 0x0243 }, {  653, 0x400b },
+  {  657, 0xfb40 }, {  665, 0x8d3e }, {  674, 0x7bf7 }, {  687, 0x8c2c },
+  {  693, 0x6eff }, {  706, 0xe3fa }, {  717, 0x1d3a }, {  725, 0xa8ed },
+  /* 0x4f00 */
+  {  734, 0xe602 }, {  740, 0xcf83 }, {  749, 0x8cf5 }, {  758, 0x3555 },
+  {  766, 0xe048 }, {  771, 0xffab }, {  784, 0x92b9 }, {  792, 0xd859 },
+  {  800, 0xab18 }, {  807, 0x2892 }, {  812, 0xd7e9 }, {  823, 0x8020 },
+  {  825, 0xc438 }, {  831, 0xf583 }, {  840, 0xe74a }, {  849, 0x450a },
+  /* 0x5000 */
+  {  854, 0xb000 }, {  857, 0x9714 }, {  864, 0x7762 }, {  873, 0x5400 },
+  {  876, 0xd188 }, {  882, 0x1420 }, {  885, 0x1020 }, {  887, 0xc8c0 },
+  {  892, 0x2121 }, {  896, 0x0000 }, {  896, 0x13a8 }, {  902, 0x0c04 },
+  {  905, 0x8000 }, {  906, 0x0440 }, {  908, 0x70c0 }, {  913, 0x0828 },
+  /* 0x5100 */
+  {  916, 0x08c0 }, {  919, 0x0004 }, {  920, 0x0002 }, {  921, 0x8000 },
+  {  922, 0x2b7b }, {  932, 0x1472 }, {  938, 0x7924 }, {  945, 0x3bfb },
+  {  957, 0x3327 }, {  965, 0x1ae4 }, {  972, 0x9835 }, {  979, 0x38ef },
+  {  989, 0x9ad1 }, {  997, 0x2802 }, { 1000, 0xa813 }, { 1006, 0xbf69 },
+  /* 0x5200 */
+  { 1017, 0x65cf }, { 1027, 0x2fc6 }, { 1036, 0x6b11 }, { 1043, 0xafc9 },
+  { 1053, 0x340f }, { 1060, 0x5053 }, { 1066, 0x86a2 }, { 1072, 0xa004 },
+  { 1075, 0x0106 }, { 1078, 0xe809 }, { 1084, 0x3f0f }, { 1094, 0xc00e },
+  { 1099, 0x0a88 }, { 1103, 0x8145 }, { 1108, 0x0010 }, { 1109, 0xc601 },
+  /* 0x5300 */
+  { 1114, 0xa161 }, { 1120, 0x26e1 }, { 1127, 0x444b }, { 1133, 0xce00 },
+  { 1138, 0xc7aa }, { 1147, 0xd4ee }, { 1157, 0xcadf }, { 1168, 0x85bb },
+  { 1177, 0x3a74 }, { 1185, 0xa520 }, { 1190, 0x436c }, { 1197, 0x8840 },
+  { 1200, 0x3f06 }, { 1208, 0x8bd2 }, { 1216, 0xff79 }, { 1229, 0x3bef },
+  /* 0x5400 */
+  { 1241, 0xf75a }, { 1252, 0xe8ef }, { 1263, 0xfbcb }, { 1275, 0x5b36 },
+  { 1284, 0x0d49 }, { 1290, 0x1bfd }, { 1301, 0x0154 }, { 1305, 0x39ee },
+  { 1315, 0xd855 }, { 1323, 0x2e75 }, { 1332, 0xbfd8 }, { 1343, 0xa91a },
+  { 1350, 0xf3d7 }, { 1362, 0xf6bf }, { 1375, 0x67e0 }, { 1383, 0xb40c },
+  /* 0x5500 */
+  { 1389, 0x82c2 }, { 1394, 0x0813 }, { 1398, 0xd49d }, { 1407, 0xd08b },
+  { 1414, 0x065a }, { 1420, 0x1061 }, { 1424, 0x74f2 }, { 1433, 0x59e0 },
+  { 1440, 0x8f9f }, { 1451, 0xb312 }, { 1458, 0x0080 }, { 1459, 0x6aaa },
+  { 1467, 0x3230 }, { 1472, 0xb05e }, { 1480, 0x9d7a }, { 1490, 0x60ac },
+  /* 0x5600 */
+  { 1496, 0xd303 }, { 1503, 0xc900 }, { 1507, 0x3098 }, { 1512, 0x8a56 },
+  { 1519, 0x7000 }, { 1522, 0x1390 }, { 1527, 0x1f14 }, { 1534, 0x1842 },
+  { 1538, 0xc060 }, { 1542, 0x0008 }, { 1543, 0x8008 }, { 1545, 0x1080 },
+  { 1547, 0x0400 }, { 1548, 0xec90 }, { 1555, 0x2817 }, { 1561, 0xe633 },
+  /* 0x5700 */
+  { 1570, 0x0758 }, { 1576, 0x9000 }, { 1578, 0xf708 }, { 1586, 0x4e09 },
+  { 1592, 0xf485 }, { 1600, 0xfc83 }, { 1609, 0xaf53 }, { 1619, 0x18c8 },
+  { 1624, 0x187c }, { 1631, 0x080c }, { 1634, 0x6adf }, { 1645, 0x0114 },
+  { 1648, 0xc80c }, { 1653, 0xa734 }, { 1661, 0xa011 }, { 1665, 0x2710 },
+  /* 0x5800 */
+  { 1670, 0x28c5 }, { 1676, 0x4222 }, { 1680, 0x0413 }, { 1684, 0x0021 },
+  { 1686, 0x3010 }, { 1689, 0x4112 }, { 1693, 0x1820 }, { 1696, 0x4000 },
+  { 1697, 0x022b }, { 1702, 0xc60c }, { 1708, 0x0300 }, { 1710, 0x1000 },
+  { 1711, 0x0022 }, { 1713, 0x0022 }, { 1715, 0x5810 }, { 1719, 0x0249 },
+  /* 0x5900 */
+  { 1723, 0xa094 }, { 1728, 0x9670 }, { 1735, 0xeeb0 }, { 1744, 0x1792 },
+  { 1751, 0xcb96 }, { 1760, 0x05f2 }, { 1767, 0x0025 }, { 1770, 0x2358 },
+  { 1776, 0x25de }, { 1785, 0x42cc }, { 1791, 0xcf38 }, { 1800, 0x4a04 },
+  { 1804, 0x0c40 }, { 1807, 0x359f }, { 1817, 0x1128 }, { 1821, 0x8a00 },
+  /* 0x5a00 */
+  { 1824, 0x13fa }, { 1833, 0x910a }, { 1838, 0x0229 }, { 1842, 0x1056 },
+  { 1847, 0x0641 }, { 1851, 0x0420 }, { 1853, 0x0484 }, { 1856, 0x84f0 },
+  { 1862, 0x0000 }, { 1862, 0x0c04 }, { 1865, 0x0400 }, { 1866, 0x412c },
+  { 1871, 0x1206 }, { 1875, 0x1154 }, { 1880, 0x0a4b }, { 1886, 0x0002 },
+  /* 0x5b00 */
+  { 1887, 0x0200 }, { 1888, 0x00c0 }, { 1890, 0x0000 }, { 1890, 0x0094 },
+  { 1893, 0x0001 }, { 1894, 0xbfbb }, { 1907, 0x167c }, { 1915, 0x242b },
+  { 1921, 0x9bbb }, { 1932, 0x7fa8 }, { 1942, 0x0c7f }, { 1951, 0xe379 },
+  { 1961, 0x10f4 }, { 1967, 0xe00d }, { 1973, 0x4132 }, { 1978, 0x9f01 },
+  /* 0x5c00 */
+  { 1985, 0x8652 }, { 1991, 0x3572 }, { 1999, 0x10b4 }, { 2004, 0xff12 },
+  { 2014, 0xcf27 }, { 2024, 0x4223 }, { 2029, 0xc06b }, { 2036, 0x8602 },
+  { 2040, 0x3106 }, { 2045, 0x1fd3 }, { 2055, 0x3a0c }, { 2061, 0xa1aa },
+  { 2068, 0x0812 }, { 2071, 0x0204 }, { 2073, 0x2572 }, { 2080, 0x0801 },
+  /* 0x5d00 */
+  { 2082, 0x40cc }, { 2087, 0x4850 }, { 2091, 0x62d0 }, { 2097, 0x6010 },
+  { 2100, 0x1c80 }, { 2104, 0x2900 }, { 2107, 0x9a00 }, { 2111, 0x0010 },
+  { 2112, 0x0004 }, { 2113, 0x2200 }, { 2115, 0x0000 }, { 2115, 0x0080 },
+  { 2116, 0x2020 }, { 2118, 0x6800 }, { 2121, 0xcbe6 }, { 2131, 0x609e },
+  /* 0x5e00 */
+  { 2138, 0x916e }, { 2146, 0x3f73 }, { 2157, 0x60c0 }, { 2161, 0x3982 },
+  { 2167, 0x1034 }, { 2171, 0x4830 }, { 2175, 0x0006 }, { 2177, 0xbd5c },
+  { 2187, 0x8cd1 }, { 2194, 0xd6fb }, { 2206, 0x20e1 }, { 2211, 0x43e8 },
+  { 2218, 0x0600 }, { 2220, 0x084e }, { 2225, 0x0500 }, { 2227, 0xc4d0 },
+  /* 0x5f00 */
+  { 2233, 0x8d1f }, { 2242, 0x89aa }, { 2249, 0xa6e1 }, { 2257, 0x1602 },
+  { 2261, 0x0001 }, { 2262, 0x21ed }, { 2270, 0x3656 }, { 2278, 0x1a8b },
+  { 2285, 0x1fb7 }, { 2296, 0x13a5 }, { 2303, 0x6502 }, { 2308, 0x30a0 },
+  { 2312, 0xb278 }, { 2320, 0x23c7 }, { 2328, 0x6c93 }, { 2336, 0xe922 },
+  /* 0x6000 */
+  { 2343, 0xe47f }, { 2354, 0x3a74 }, { 2362, 0x8fe3 }, { 2372, 0x9820 },
+  { 2376, 0x280e }, { 2381, 0x2625 }, { 2387, 0xbf9c }, { 2398, 0xbf49 },
+  { 2408, 0x3218 }, { 2413, 0xac54 }, { 2420, 0xb949 }, { 2428, 0x1916 },
+  { 2434, 0x0c60 }, { 2438, 0xb522 }, { 2445, 0xfbc1 }, { 2455, 0x0659 },
+  /* 0x6100 */
+  { 2461, 0xe343 }, { 2469, 0x8420 }, { 2472, 0x08d9 }, { 2478, 0x8000 },
+  { 2479, 0x5500 }, { 2483, 0x2022 }, { 2486, 0x0184 }, { 2489, 0x00a1 },
+  { 2492, 0x4800 }, { 2494, 0x2010 }, { 2496, 0x1380 }, { 2500, 0x4080 },
+  { 2502, 0x0d04 }, { 2506, 0x0016 }, { 2509, 0x0040 }, { 2510, 0x8020 },
+  /* 0x6200 */
+  { 2512, 0xfd40 }, { 2520, 0x8de7 }, { 2530, 0x5436 }, { 2537, 0xe098 },
+  { 2543, 0x7b8b }, { 2553, 0x091e }, { 2559, 0xfec8 }, { 2569, 0xd249 },
+  { 2576, 0x0611 }, { 2580, 0x8dee }, { 2590, 0x1937 }, { 2598, 0xba22 },
+  { 2605, 0x77f4 }, { 2616, 0x9fdd }, { 2628, 0xf3ec }, { 2639, 0xf0da },
+  /* 0x6300 */
+  { 2648, 0x4386 }, { 2654, 0xec42 }, { 2661, 0x8d3f }, { 2671, 0x2604 },
+  { 2675, 0xfa6c }, { 2685, 0xc021 }, { 2689, 0x628e }, { 2696, 0x0cc2 },
+  { 2701, 0xd785 }, { 2710, 0x0145 }, { 2714, 0x77ad }, { 2725, 0x5599 },
+  { 2733, 0xe250 }, { 2739, 0x4045 }, { 2743, 0x260b }, { 2749, 0xa154 },
+  /* 0x6400 */
+  { 2755, 0x9827 }, { 2762, 0x5819 }, { 2768, 0x3443 }, { 2774, 0xa410 },
+  { 2778, 0x05f2 }, { 2785, 0x4114 }, { 2789, 0x2280 }, { 2792, 0x0700 },
+  { 2795, 0x00b4 }, { 2799, 0x4266 }, { 2805, 0x7210 }, { 2810, 0x15a1 },
+  { 2816, 0x6025 }, { 2821, 0x4185 }, { 2826, 0x0054 }, { 2829, 0x0000 },
+  /* 0x6500 */
+  { 2829, 0x0201 }, { 2831, 0x0104 }, { 2833, 0xc820 }, { 2837, 0xcb70 },
+  { 2845, 0x9320 }, { 2850, 0x6a62 }, { 2857, 0x184c }, { 2862, 0x0095 },
+  { 2866, 0x1880 }, { 2869, 0x9a8b }, { 2877, 0xaab2 }, { 2885, 0x3201 },
+  { 2889, 0xd87a }, { 2898, 0x00c4 }, { 2901, 0xf3e5 }, { 2912, 0x04c3 },
+  /* 0x6600 */
+  { 2917, 0xd44d }, { 2925, 0xa238 }, { 2931, 0xa1a1 }, { 2937, 0x5072 },
+  { 2943, 0x980a }, { 2948, 0x84fc }, { 2956, 0xc152 }, { 2962, 0x44d1 },
+  { 2968, 0x1094 }, { 2972, 0x20c2 }, { 2976, 0x4180 }, { 2979, 0x4210 },
+  { 2982, 0x0000 }, { 2982, 0x3a00 }, { 2986, 0x0240 }, { 2988, 0xd29d },
+  /* 0x6700 */
+  { 2997, 0x2f01 }, { 3003, 0xa8b1 }, { 3010, 0xbd40 }, { 3017, 0x2432 },
+  { 3022, 0xd34d }, { 3031, 0xd04b }, { 3038, 0xa723 }, { 3046, 0xd0ad },
+  { 3054, 0x0a92 }, { 3059, 0x75a1 }, { 3067, 0xadac }, { 3076, 0x01e9 },
+  { 3082, 0x801a }, { 3086, 0x771f }, { 3097, 0x9225 }, { 3103, 0xa01b },
+  /* 0x6800 */
+  { 3109, 0xdfa1 }, { 3119, 0x20ca }, { 3124, 0x0602 }, { 3127, 0x738c },
+  { 3135, 0x577f }, { 3147, 0x003b }, { 3152, 0x0bff }, { 3163, 0x00d0 },
+  { 3166, 0x806a }, { 3171, 0x0088 }, { 3173, 0xa1c4 }, { 3179, 0x0029 },
+  { 3182, 0x2a05 }, { 3187, 0x0524 }, { 3191, 0x4009 }, { 3194, 0x1623 },
+  /* 0x6900 */
+  { 3200, 0x6822 }, { 3205, 0x8005 }, { 3208, 0x2011 }, { 3211, 0xa211 },
+  { 3216, 0x0004 }, { 3217, 0x6490 }, { 3222, 0x4849 }, { 3227, 0x1382 },
+  { 3232, 0x23d5 }, { 3240, 0x1930 }, { 3245, 0x2980 }, { 3249, 0x0892 },
+  { 3253, 0x5402 }, { 3257, 0x8811 }, { 3261, 0x2001 }, { 3263, 0xa004 },
+  /* 0x6a00 */
+  { 3266, 0x0400 }, { 3267, 0x8180 }, { 3270, 0x8502 }, { 3274, 0x6022 },
+  { 3278, 0x0090 }, { 3280, 0x0b01 }, { 3284, 0x0022 }, { 3286, 0x1202 },
+  { 3289, 0x4011 }, { 3292, 0x0083 }, { 3295, 0x1a01 }, { 3299, 0x0000 },
+  { 3299, 0x0000 }, { 3299, 0x0000 }, { 3299, 0x0000 }, { 3299, 0x0000 },
+  /* 0x6b00 */
+  { 3299, 0x0000 }, { 3299, 0x0000 }, { 3299, 0x009f }, { 3305, 0x4684 },
+  { 3310, 0x12c8 }, { 3315, 0x0200 }, { 3316, 0x04fc }, { 3323, 0x1a00 },
+  { 3326, 0x2ede }, { 3336, 0x0c4c }, { 3341, 0x0402 }, { 3343, 0x80b8 },
+  { 3348, 0xa826 }, { 3354, 0x0afc }, { 3362, 0x8c02 }, { 3366, 0x2228 },
+  /* 0x6c00 */
+  { 3370, 0xa0e0 }, { 3375, 0x8f7b }, { 3386, 0xc7d6 }, { 3396, 0x2135 },
+  { 3402, 0x06c7 }, { 3409, 0xf8b1 }, { 3418, 0x0713 }, { 3424, 0x6255 },
+  { 3431, 0x936e }, { 3440, 0x8a19 }, { 3446, 0x6efa }, { 3457, 0xfb0e },
+  { 3467, 0x1630 }, { 3472, 0x48f9 }, { 3480, 0xcd2f }, { 3490, 0x7deb },
+  /* 0x6d00 */
+  { 3502, 0x5892 }, { 3508, 0x4e84 }, { 3514, 0x4ca0 }, { 3519, 0x7a2e },
+  { 3528, 0xedea }, { 3539, 0x561e }, { 3547, 0xc649 }, { 3554, 0x1190 },
+  { 3558, 0x5324 }, { 3564, 0xe83a }, { 3572, 0xcfdb }, { 3584, 0x8124 },
+  { 3588, 0x18f1 }, { 3595, 0x6342 }, { 3601, 0x5853 }, { 3608, 0x1a8a },
+  /* 0x6e00 */
+  { 3614, 0x7420 }, { 3619, 0x24d3 }, { 3626, 0xaa3b }, { 3635, 0x0514 },
+  { 3639, 0x6018 }, { 3643, 0x8958 }, { 3649, 0x4800 }, { 3651, 0xc000 },
+  { 3653, 0x8268 }, { 3658, 0x9101 }, { 3662, 0x84a4 }, { 3667, 0x2cd6 },
+  { 3675, 0x8886 }, { 3680, 0xc4ba }, { 3688, 0x0377 }, { 3696, 0x0210 },
+  /* 0x6f00 */
+  { 3698, 0x8244 }, { 3702, 0x0038 }, { 3705, 0xae11 }, { 3712, 0x404a },
+  { 3716, 0x28c0 }, { 3720, 0x5100 }, { 3723, 0x6044 }, { 3727, 0x1514 },
+  { 3732, 0x7310 }, { 3738, 0x1000 }, { 3739, 0x0082 }, { 3741, 0x0248 },
+  { 3744, 0x0205 }, { 3747, 0x4006 }, { 3750, 0xc003 }, { 3754, 0x0000 },
+  /* 0x7000 */
+  { 3754, 0x0000 }, { 3754, 0x0c02 }, { 3757, 0x0008 }, { 3758, 0x0220 },
+  { 3760, 0x9000 }, { 3762, 0x4000 }, { 3763, 0xb800 }, { 3767, 0xd161 },
+  { 3774, 0x4621 }, { 3779, 0x3274 }, { 3786, 0xf800 }, { 3791, 0x3b8a },
+  { 3799, 0x050f }, { 3805, 0x8b00 }, { 3809, 0xbbd0 }, { 3818, 0x2280 },
+  /* 0x7100 */
+  { 3821, 0x0600 }, { 3823, 0x0769 }, { 3830, 0x8040 }, { 3832, 0x0043 },
+  { 3835, 0x5420 }, { 3839, 0x5000 }, { 3841, 0x41d0 }, { 3846, 0x250c },
+  { 3851, 0x8410 }, { 3854, 0x8310 }, { 3858, 0x1101 }, { 3861, 0x0228 },
+  { 3864, 0x4008 }, { 3866, 0x0030 }, { 3868, 0x40a1 }, { 3872, 0x0200 },
+  /* 0x7200 */
+  { 3873, 0x0040 }, { 3874, 0x2000 }, { 3875, 0x1500 }, { 3878, 0xabe3 },
+  { 3888, 0x3180 }, { 3892, 0xaa44 }, { 3898, 0xc2c6 }, { 3905, 0xc624 },
+  { 3911, 0xac13 }, { 3918, 0x8004 }, { 3920, 0xb000 }, { 3923, 0x03d1 },
+  { 3929, 0x611e }, { 3936, 0x4285 }, { 3941, 0xf303 }, { 3949, 0x1d9f },
+  /* 0x7300 */
+  { 3959, 0x440a }, { 3963, 0x78e8 }, { 3971, 0x5e26 }, { 3979, 0xc392 },
+  { 3986, 0x2000 }, { 3987, 0x0085 }, { 3990, 0xb001 }, { 3994, 0x4000 },
+  { 3995, 0x4a90 }, { 4000, 0x8842 }, { 4004, 0xca04 }, { 4009, 0x0c8d },
+  { 4015, 0xa705 }, { 4022, 0x4203 }, { 4026, 0x22a1 }, { 4031, 0x0004 },
+  /* 0x7400 */
+  { 4032, 0x8668 }, { 4038, 0x0c01 }, { 4041, 0x5564 }, { 4048, 0x1079 },
+  { 4054, 0x0002 }, { 4055, 0xdea0 }, { 4063, 0x2000 }, { 4064, 0x40c1 },
+  { 4068, 0x488b }, { 4074, 0x5001 }, { 4077, 0x0380 }, { 4080, 0x0400 },
+  { 4081, 0x0000 }, { 4081, 0x5004 }, { 4084, 0xc05d }, { 4091, 0x80d0 },
+  /* 0x7500 */
+  { 4095, 0xa010 }, { 4098, 0x970a }, { 4105, 0xbb20 }, { 4112, 0x4daf },
+  { 4122, 0xd921 }, { 4129, 0x1e10 }, { 4134, 0x0460 }, { 4137, 0x8314 },
+  { 4142, 0x8848 }, { 4146, 0xa6d6 }, { 4155, 0xd83b }, { 4164, 0x733f },
+  { 4175, 0x27bc }, { 4184, 0x4974 }, { 4191, 0x0ddc }, { 4199, 0x9213 },
+  /* 0x7600 */
+  { 4205, 0x142b }, { 4211, 0x8ba1 }, { 4218, 0x2e75 }, { 4227, 0xd139 },
+  { 4235, 0x3009 }, { 4239, 0x5050 }, { 4243, 0x8808 }, { 4246, 0x6900 },
+  { 4250, 0x49d4 }, { 4257, 0x024a }, { 4261, 0x4010 }, { 4263, 0x8016 },
+  { 4267, 0xe564 }, { 4275, 0x89d7 }, { 4284, 0xc020 }, { 4287, 0x5316 },
+  /* 0x7700 */
+  { 4294, 0x2b92 }, { 4301, 0x8600 }, { 4304, 0xa345 }, { 4311, 0x15e0 },
+  { 4317, 0x008b }, { 4321, 0x0c03 }, { 4325, 0x196e }, { 4333, 0xe200 },
+  { 4337, 0x7031 }, { 4343, 0x8006 }, { 4346, 0x16a5 }, { 4353, 0xa829 },
+  { 4359, 0x2000 }, { 4360, 0x1880 }, { 4363, 0x7aac }, { 4372, 0xe148 },
+  /* 0x7800 */
+  { 4378, 0x3207 }, { 4384, 0xb5d6 }, { 4394, 0x32e8 }, { 4401, 0x5f91 },
+  { 4410, 0x50a1 }, { 4415, 0x20e5 }, { 4421, 0x7c00 }, { 4426, 0x1080 },
+  { 4428, 0x7280 }, { 4433, 0x9d8a }, { 4441, 0x00aa }, { 4445, 0x421f },
+  { 4452, 0x0e22 }, { 4457, 0x0231 }, { 4461, 0x1100 }, { 4463, 0x0494 },
+  /* 0x7900 */
+  { 4467, 0x0022 }, { 4469, 0x4008 }, { 4471, 0x0010 }, { 4472, 0x5c10 },
+  { 4477, 0x0343 }, { 4482, 0xfcc8 }, { 4491, 0xa1a5 }, { 4498, 0x0580 },
+  { 4501, 0x8433 }, { 4507, 0x0400 }, { 4508, 0x0080 }, { 4509, 0x6e08 },
+  { 4515, 0x2a4b }, { 4522, 0x8126 }, { 4527, 0xaad8 }, { 4535, 0x2901 },
+  /* 0x7a00 */
+  { 4539, 0x684d }, { 4546, 0x4490 }, { 4550, 0x0009 }, { 4552, 0xba88 },
+  { 4559, 0x0040 }, { 4560, 0x0082 }, { 4562, 0x0000 }, { 4562, 0x87d1 },
+  { 4570, 0x215b }, { 4577, 0xb1e6 }, { 4586, 0x3161 }, { 4592, 0x8008 },
+  { 4594, 0x0800 }, { 4595, 0xc240 }, { 4599, 0xa069 }, { 4605, 0xa600 },
+  /* 0x7b00 */
+  { 4609, 0x8d58 }, { 4616, 0x4a32 }, { 4622, 0x5d71 }, { 4631, 0x550a },
+  { 4637, 0x9aa0 }, { 4643, 0x2d57 }, { 4652, 0x4005 }, { 4655, 0x4aa6 },
+  { 4662, 0x2021 }, { 4665, 0x30b1 }, { 4671, 0x3fc6 }, { 4681, 0x0112 },
+  { 4684, 0x10c2 }, { 4688, 0x260a }, { 4693, 0x4462 }, { 4698, 0x5082 },
+  /* 0x7c00 */
+  { 4702, 0x9880 }, { 4706, 0x8040 }, { 4708, 0x04c0 }, { 4711, 0x8100 },
+  { 4713, 0x2003 }, { 4716, 0x0000 }, { 4716, 0x0000 }, { 4716, 0x3818 },
+  { 4721, 0x0200 }, { 4722, 0xf1a6 }, { 4731, 0x4434 }, { 4736, 0x720e },
+  { 4743, 0x35a2 }, { 4750, 0x92e0 }, { 4756, 0x8101 }, { 4759, 0x0900 },
+  /* 0x7d00 */
+  { 4761, 0x0400 }, { 4762, 0x0000 }, { 4762, 0x8885 }, { 4767, 0x0000 },
+  { 4767, 0x0000 }, { 4767, 0x0000 }, { 4767, 0x4000 }, { 4768, 0x0080 },
+  { 4769, 0x0000 }, { 4769, 0x0000 }, { 4769, 0x4040 }, { 4771, 0x0000 },
+  { 4771, 0x0000 }, { 4771, 0x0000 }, { 4771, 0x0000 }, { 4771, 0x0000 },
+  /* 0x7e00 */
+  { 4771, 0x0000 }, { 4771, 0x0000 }, { 4771, 0x0000 }, { 4771, 0x0800 },
+  { 4772, 0x0082 }, { 4774, 0x0000 }, { 4774, 0x0000 }, { 4774, 0x0000 },
+  { 4774, 0x0004 }, { 4775, 0x8800 }, { 4777, 0xbfff }, { 4792, 0xe7ef },
+  { 4805, 0xffff }, { 4821, 0xffbf }, { 4836, 0xefef }, { 4850, 0xfdff },
+  /* 0x7f00 */
+  { 4865, 0xfbff }, { 4880, 0xbffe }, { 4894, 0xffff }, { 4910, 0x057f },
+  { 4919, 0x0034 }, { 4922, 0x85b3 }, { 4930, 0x4706 }, { 4936, 0x4216 },
+  { 4941, 0x5402 }, { 4945, 0xe410 }, { 4950, 0x8092 }, { 4954, 0xb305 },
+  { 4961, 0x5422 }, { 4966, 0x8130 }, { 4970, 0x4263 }, { 4976, 0x180b },
+  /* 0x8000 */
+  { 4981, 0x387b }, { 4990, 0x13f5 }, { 4999, 0x07e5 }, { 5007, 0xa9ea },
+  { 5016, 0x3c4c }, { 5023, 0x0514 }, { 5027, 0x0600 }, { 5029, 0x8002 },
+  { 5031, 0x1ad9 }, { 5039, 0xbd48 }, { 5047, 0xee37 }, { 5058, 0xf496 },
+  { 5067, 0x705f }, { 5076, 0x7ec0 }, { 5084, 0xbfb2 }, { 5095, 0x355f },
+  /* 0x8100 */
+  { 5105, 0xe644 }, { 5112, 0x455f }, { 5121, 0x9000 }, { 5123, 0x4146 },
+  { 5128, 0x1d40 }, { 5133, 0x063b }, { 5140, 0x62a1 }, { 5146, 0xfe13 },
+  { 5156, 0x8505 }, { 5161, 0x3902 }, { 5166, 0x0548 }, { 5170, 0x0c08 },
+  { 5173, 0x144f }, { 5180, 0x0000 }, { 5180, 0x3488 }, { 5185, 0x5818 },
+  /* 0x8200 */
+  { 5190, 0x3077 }, { 5198, 0xd815 }, { 5205, 0xbd0e }, { 5214, 0x4bfb },
+  { 5225, 0x8a90 }, { 5230, 0x8500 }, { 5233, 0xc100 }, { 5236, 0xe61d },
+  { 5245, 0xed14 }, { 5253, 0xb386 }, { 5261, 0xff72 }, { 5273, 0x639b },
+  { 5282, 0xfd92 }, { 5292, 0xd9be }, { 5303, 0x887b }, { 5311, 0x0a92 },
+  /* 0x8300 */
+  { 5316, 0xd3fe }, { 5328, 0x1cb2 }, { 5335, 0xb980 }, { 5341, 0x177a },
+  { 5350, 0x82c9 }, { 5356, 0xdc17 }, { 5365, 0xfffb }, { 5380, 0x3980 },
+  { 5385, 0x4260 }, { 5389, 0x590c }, { 5395, 0x0f01 }, { 5400, 0x37df },
+  { 5412, 0x94a3 }, { 5419, 0xb150 }, { 5425, 0x0623 }, { 5430, 0x2307 },
+  /* 0x8400 */
+  { 5436, 0xf85a }, { 5445, 0x3102 }, { 5449, 0x01f0 }, { 5454, 0x3102 },
+  { 5458, 0x0040 }, { 5459, 0x1e82 }, { 5465, 0x3a0a }, { 5471, 0x056a },
+  { 5477, 0x5b84 }, { 5484, 0x1280 }, { 5487, 0x8002 }, { 5489, 0xa714 },
+  { 5496, 0x2612 }, { 5501, 0xa04b }, { 5507, 0x1069 }, { 5512, 0x9001 },
+  /* 0x8500 */
+  { 5515, 0x1000 }, { 5516, 0x848a }, { 5521, 0x1802 }, { 5524, 0x3f80 },
+  { 5531, 0x0708 }, { 5535, 0x4240 }, { 5538, 0x0110 }, { 5540, 0x4e14 },
+  { 5546, 0x80b0 }, { 5550, 0x1800 }, { 5552, 0xc510 }, { 5557, 0x0281 },
+  { 5560, 0x8202 }, { 5563, 0x1029 }, { 5567, 0x0210 }, { 5569, 0x8800 },
+  /* 0x8600 */
+  { 5571, 0x0020 }, { 5572, 0x0042 }, { 5574, 0x0280 }, { 5576, 0x1100 },
+  { 5578, 0xe000 }, { 5581, 0x4413 }, { 5586, 0x5804 }, { 5590, 0xfe02 },
+  { 5598, 0x3c07 }, { 5605, 0x3028 }, { 5609, 0x9798 }, { 5617, 0x0473 },
+  { 5623, 0xced1 }, { 5632, 0xcb13 }, { 5640, 0x6210 }, { 5644, 0x431f },
+  /* 0x8700 */
+  { 5652, 0x278d }, { 5660, 0x55ac }, { 5668, 0x422e }, { 5674, 0xc892 },
+  { 5680, 0x5380 }, { 5685, 0x0288 }, { 5688, 0x4039 }, { 5693, 0x7851 },
+  { 5700, 0x292c }, { 5706, 0x8088 }, { 5709, 0xb900 }, { 5714, 0x2428 },
+  { 5718, 0x0c41 }, { 5722, 0x080e }, { 5726, 0x4421 }, { 5730, 0x4200 },
+  /* 0x8800 */
+  { 5732, 0x0408 }, { 5734, 0x0868 }, { 5738, 0x0006 }, { 5740, 0x1204 },
+  { 5743, 0x3031 }, { 5748, 0x0290 }, { 5751, 0x5b3e }, { 5761, 0xe085 },
+  { 5767, 0x2936 }, { 5774, 0x1044 }, { 5777, 0x2814 }, { 5781, 0x1082 },
+  { 5784, 0x4266 }, { 5790, 0x8334 }, { 5796, 0x013c }, { 5801, 0x531b },
+  /* 0x8900 */
+  { 5809, 0x0404 }, { 5811, 0x0e0d }, { 5817, 0x0c22 }, { 5821, 0x0051 },
+  { 5824, 0x0012 }, { 5826, 0xc000 }, { 5828, 0x0040 }, { 5829, 0x8800 },
+  { 5831, 0x004a }, { 5834, 0x0000 }, { 5834, 0x0000 }, { 5834, 0x0000 },
+  { 5834, 0xdff6 }, { 5847, 0x5447 }, { 5854, 0x8868 }, { 5859, 0x0008 },
+  /* 0x8a00 */
+  { 5860, 0x0081 }, { 5862, 0x0000 }, { 5862, 0x0000 }, { 5862, 0x4000 },
+  { 5863, 0x0100 }, { 5864, 0x0000 }, { 5864, 0x0000 }, { 5864, 0x0200 },
+  { 5865, 0x0600 }, { 5867, 0x0008 }, { 5868, 0x0000 }, { 5868, 0x0000 },
+  { 5868, 0x0000 }, { 5868, 0x0000 }, { 5868, 0x0000 }, { 5868, 0x0000 },
+  /* 0x8b00 */
+  { 5868, 0x0080 }, { 5869, 0x0000 }, { 5869, 0x0040 }, { 5870, 0x0000 },
+  { 5870, 0x0000 }, { 5870, 0x0000 }, { 5870, 0x1040 }, { 5872, 0x0000 },
+  { 5872, 0x0000 }, { 5872, 0x0000 }, { 5872, 0xefff }, { 5887, 0xf7fd },
+  { 5901, 0xff7f }, { 5916, 0xfffe }, { 5931, 0xfbff }, { 5946, 0xffff },
+  /* 0x8c00 */
+  { 5962, 0xfdff }, { 5977, 0xbfff }, { 5992, 0xffff }, { 6008, 0x00ff },
+  { 6016, 0x12c2 }, { 6021, 0x0420 }, { 6023, 0x0c06 }, { 6027, 0x0708 },
+  { 6031, 0x1624 }, { 6036, 0x0110 }, { 6038, 0x0000 }, { 6038, 0x0000 },
+  { 6038, 0x0000 }, { 6038, 0x0000 }, { 6038, 0x0000 }, { 6038, 0x0000 },
+  /* 0x8d00 */
+  { 6038, 0x0000 }, { 6038, 0xe000 }, { 6041, 0xfffe }, { 6056, 0xffff },
+  { 6072, 0xffff }, { 6088, 0x7f79 }, { 6100, 0x28df }, { 6109, 0x00f9 },
+  { 6115, 0x0c32 }, { 6120, 0x8012 }, { 6123, 0x0008 }, { 6124, 0xd53a },
+  { 6133, 0xd858 }, { 6140, 0xecc2 }, { 6148, 0x9d18 }, { 6155, 0x2fa8 },
+  /* 0x8e00 */
+  { 6163, 0x9620 }, { 6168, 0xe010 }, { 6172, 0xd60c }, { 6179, 0x2622 },
+  { 6184, 0x0f97 }, { 6193, 0x0206 }, { 6196, 0xb240 }, { 6201, 0x9055 },
+  { 6207, 0x80a2 }, { 6211, 0x5011 }, { 6215, 0x9800 }, { 6218, 0x0404 },
+  { 6220, 0x4000 }, { 6221, 0x0000 }, { 6221, 0x0000 }, { 6221, 0x0000 },
+  /* 0x8f00 */
+  { 6221, 0x0000 }, { 6221, 0x0000 }, { 6221, 0x0000 }, { 6221, 0x0000 },
+  { 6221, 0x0000 }, { 6221, 0x0000 }, { 6221, 0xfbc0 }, { 6230, 0xffff },
+  { 6246, 0xeffe }, { 6260, 0xdffb }, { 6274, 0x0b08 }, { 6278, 0x6243 },
+  { 6284, 0x41b6 }, { 6291, 0xfb3b }, { 6303, 0x6f74 }, { 6313, 0x2389 },
+  /* 0x9000 */
+  { 6319, 0xae7f }, { 6331, 0xecd7 }, { 6342, 0xe047 }, { 6349, 0x5960 },
+  { 6355, 0xa096 }, { 6361, 0x098f }, { 6368, 0x612c }, { 6374, 0xa030 },
+  { 6378, 0x090d }, { 6383, 0x2aaa }, { 6390, 0xd44e }, { 6398, 0x4f7b },
+  { 6409, 0xc4b2 }, { 6416, 0x388b }, { 6423, 0xa9c6 }, { 6431, 0x6110 },
+  /* 0x9100 */
+  { 6435, 0x0014 }, { 6437, 0x4200 }, { 6439, 0x800c }, { 6442, 0x0202 },
+  { 6444, 0xfe48 }, { 6453, 0x6485 }, { 6459, 0xd63e }, { 6469, 0xe3f7 },
+  { 6481, 0x3aa0 }, { 6487, 0x0c07 }, { 6492, 0xe40c }, { 6498, 0x0430 },
+  { 6501, 0xf680 }, { 6508, 0x1002 }, { 6510, 0x0000 }, { 6510, 0x0000 },
+  /* 0x9200 */
+  { 6510, 0x0000 }, { 6510, 0x0000 }, { 6510, 0x0000 }, { 6510, 0x0000 },
+  { 6510, 0x0000 }, { 6510, 0x0000 }, { 6510, 0x0000 }, { 6510, 0x0010 },
+  { 6511, 0x4000 }, { 6512, 0x0000 }, { 6512, 0x4000 }, { 6513, 0x0000 },
+  { 6513, 0x0100 }, { 6514, 0x0000 }, { 6514, 0x0000 }, { 6514, 0x0000 },
+  /* 0x9300 */
+  { 6514, 0x0000 }, { 6514, 0x0000 }, { 6514, 0x0000 }, { 6514, 0x4000 },
+  { 6515, 0x0000 }, { 6515, 0x0000 }, { 6515, 0x0400 }, { 6516, 0x0000 },
+  { 6516, 0x8000 }, { 6517, 0x0000 }, { 6517, 0x0000 }, { 6517, 0x0000 },
+  { 6517, 0x0400 }, { 6518, 0x0040 }, { 6519, 0x0000 }, { 6519, 0x0000 },
+  /* 0x9400 */
+  { 6519, 0x0000 }, { 6519, 0x0000 }, { 6519, 0x0000 }, { 6519, 0x4000 },
+  { 6520, 0x0000 }, { 6520, 0x0000 }, { 6520, 0x0800 }, { 6521, 0x0000 },
+  { 6521, 0xffe0 }, { 6532, 0xfebd }, { 6545, 0xffff }, { 6561, 0xffff },
+  { 6577, 0x7f7f }, { 6591, 0xfbe7 }, { 6604, 0xffbf }, { 6619, 0xf7ff },
+  /* 0x9500 */
+  { 6634, 0xffff }, { 6650, 0xefff }, { 6665, 0xff7e }, { 6679, 0xdff7 },
+  { 6693, 0xf6f7 }, { 6706, 0xfbdf }, { 6720, 0xbffe }, { 6734, 0x804f },
+  { 6740, 0x0000 }, { 6740, 0x0000 }, { 6740, 0x0000 }, { 6740, 0x0000 },
+  { 6740, 0x0000 }, { 6740, 0x0000 }, { 6740, 0xef00 }, { 6747, 0x7fff },
+  /* 0x9600 */
+  { 6762, 0xff7f }, { 6777, 0xb6f7 }, { 6789, 0x4406 }, { 6793, 0xb87e },
+  { 6803, 0x3bf5 }, { 6814, 0x8831 }, { 6819, 0x1796 }, { 6827, 0x00f4 },
+  { 6832, 0xa960 }, { 6838, 0x1391 }, { 6844, 0x0080 }, { 6845, 0x7249 },
+  { 6852, 0xf2f3 }, { 6863, 0x0024 }, { 6865, 0x8701 }, { 6870, 0x42c8 },
+  /* 0x9700 */
+  { 6875, 0xe3d3 }, { 6885, 0x5048 }, { 6889, 0x2400 }, { 6891, 0x4305 },
+  { 6896, 0x0000 }, { 6896, 0x4a4c }, { 6902, 0x0227 }, { 6907, 0x1058 },
+  { 6911, 0x2820 }, { 6914, 0x0116 }, { 6918, 0xa809 }, { 6923, 0x0014 },
+  { 6925, 0x0000 }, { 6925, 0x0000 }, { 6925, 0x3ec0 }, { 6932, 0x0068 },
+  /* 0x9800 */
+  { 6935, 0x0000 }, { 6935, 0x0000 }, { 6935, 0x0000 }, { 6935, 0x0000 },
+  { 6935, 0x0000 }, { 6935, 0x0000 }, { 6935, 0x0000 }, { 6935, 0xffe0 },
+  { 6946, 0xb7ff }, { 6960, 0xfddb }, { 6973, 0x00f7 }, { 6980, 0x0000 },
+  { 6980, 0x4000 }, { 6981, 0xc72e }, { 6990, 0x0180 }, { 6992, 0x0000 },
+  /* 0x9900 */
+  { 6992, 0x2000 }, { 6993, 0x0001 }, { 6994, 0x4000 }, { 6995, 0x0000 },
+  { 6995, 0x0000 }, { 6995, 0x0030 }, { 6997, 0xffa8 }, { 7008, 0xb4f7 },
+  { 7019, 0xadf3 }, { 7030, 0x03ff }, { 7040, 0x0120 }, { 7042, 0x0000 },
+  { 7042, 0x0000 }, { 7042, 0x0000 }, { 7042, 0x0000 }, { 7042, 0x0000 },
+  /* 0x9a00 */
+  { 7042, 0x0000 }, { 7042, 0x0000 }, { 7042, 0x0000 }, { 7042, 0x0000 },
+  { 7042, 0x0000 }, { 7042, 0x0000 }, { 7042, 0xf000 }, { 7046, 0xfffb },
+  { 7061, 0x9df7 }, { 7073, 0xfdcf }, { 7086, 0x01bf }, { 7094, 0x15c3 },
+  { 7101, 0x1827 }, { 7107, 0x810a }, { 7111, 0xa842 }, { 7116, 0x0a00 },
+  /* 0x9b00 */
+  { 7118, 0x8108 }, { 7121, 0x8008 }, { 7123, 0x8008 }, { 7125, 0x1804 },
+  { 7128, 0xa3be }, { 7138, 0x0012 }, { 7140, 0x0000 }, { 7140, 0x0000 },
+  { 7140, 0x0000 }, { 7140, 0x0000 }, { 7140, 0x0000 }, { 7140, 0x0000 },
+  { 7140, 0x0000 }, { 7140, 0x0000 }, { 7140, 0x0000 }, { 7140, 0x0000 },
+  /* 0x9c00 */
+  { 7140, 0x0000 }, { 7140, 0x0000 }, { 7140, 0x0000 }, { 7140, 0x0000 },
+  { 7140, 0x0000 }, { 7140, 0x0000 }, { 7140, 0x0000 }, { 7140, 0x9000 },
+  { 7142, 0x69e6 }, { 7151, 0xdc37 }, { 7161, 0x6bff }, { 7174, 0x3dff },
+  { 7187, 0xfcf8 }, { 7198, 0xf3f9 }, { 7210, 0x0004 },
+};
+static const Summary16 gb2312_uni2indx_page9e[27] = {
+  /* 0x9e00 */
+  { 7211, 0x0000 }, { 7211, 0x8000 }, { 7212, 0xbf6f }, { 7225, 0xe7ee },
+  { 7237, 0xdffe }, { 7251, 0x5da2 }, { 7259, 0x3fd8 }, { 7269, 0xc00b },
+  { 7274, 0x0984 }, { 7278, 0xa00c }, { 7282, 0x0040 }, { 7283, 0x6910 },
+  { 7288, 0xe210 }, { 7293, 0xb912 }, { 7300, 0x86a5 }, { 7307, 0x5a00 },
+  /* 0x9f00 */
+  { 7311, 0x6800 }, { 7314, 0x0289 }, { 7318, 0x9005 }, { 7322, 0x6a80 },
+  { 7327, 0x0010 }, { 7328, 0x0003 }, { 7330, 0x0000 }, { 7330, 0x8000 },
+  { 7331, 0x1ff9 }, { 7342, 0x8e00 }, { 7346, 0x0001 },
+};
+static const Summary16 gb2312_uni2indx_pageff[15] = {
+  /* 0xff00 */
+  { 7347, 0xfffe }, { 7362, 0xffff }, { 7378, 0xffff }, { 7394, 0xffff },
+  { 7410, 0xffff }, { 7426, 0x7fff }, { 7441, 0x0000 }, { 7441, 0x0000 },
+  { 7441, 0x0000 }, { 7441, 0x0000 }, { 7441, 0x0000 }, { 7441, 0x0000 },
+  { 7441, 0x0000 }, { 7441, 0x0000 }, { 7441, 0x002b },
+};
+
+static int
+gb2312_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 2) {
+    const Summary16 *summary = NULL;
+    if (wc >= 0x0000 && wc < 0x0460)
+      summary = &gb2312_uni2indx_page00[(wc>>4)];
+    else if (wc >= 0x2000 && wc < 0x2650)
+      summary = &gb2312_uni2indx_page20[(wc>>4)-0x200];
+    else if (wc >= 0x3000 && wc < 0x3230)
+      summary = &gb2312_uni2indx_page30[(wc>>4)-0x300];
+    else if (wc >= 0x4e00 && wc < 0x9cf0)
+      summary = &gb2312_uni2indx_page4e[(wc>>4)-0x4e0];
+    else if (wc >= 0x9e00 && wc < 0x9fb0)
+      summary = &gb2312_uni2indx_page9e[(wc>>4)-0x9e0];
+    else if (wc >= 0xff00 && wc < 0xfff0)
+      summary = &gb2312_uni2indx_pageff[(wc>>4)-0xff0];
+    if (summary) {
+      unsigned short used = summary->used;
+      unsigned int i = wc & 0x0f;
+      if (used & ((unsigned short) 1 << i)) {
+        unsigned short c;
+        /* Keep in `used' only the bits 0..i-1. */
+        used &= ((unsigned short) 1 << i) - 1;
+        /* Add `summary->indx' and the number of bits set in `used'. */
+        used = (used & 0x5555) + ((used & 0xaaaa) >> 1);
+        used = (used & 0x3333) + ((used & 0xcccc) >> 2);
+        used = (used & 0x0f0f) + ((used & 0xf0f0) >> 4);
+        used = (used & 0x00ff) + (used >> 8);
+        c = gb2312_2charset[summary->indx + used];
+        r[0] = (c >> 8); r[1] = (c & 0xff);
+        return 2;
+      }
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/gbk.h b/graf2d/win32gdk/gdk/src/iconv/gbk.h
new file mode 100644
index 00000000000..b6ff526284e
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/gbk.h
@@ -0,0 +1,169 @@
+/*
+ * Copyright (C) 1999-2001, 2005, 2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * GBK
+ */
+
+/*
+ * GBK, as described in Ken Lunde's book, is an extension of GB 2312-1980
+ * (shifted by adding 0x8080 to the range 0xA1A1..0xFEFE, as used in EUC-CN).
+ * It adds the following ranges:
+ *
+ * (part of GBK/1)  0xA2A1-0xA2AA  Small Roman numerals
+ * GBK/3   0x{81-A0}{40-7E,80-FE}  6080 new characters, all in Unicode
+ * GBK/4   0x{AA-FE}{40-7E,80-A0}  8160 new characters, 8080 in Unicode
+ * GBK/5   0x{A8-A9}{40-7E,80-A0}  166 new characters, 153 in Unicode
+ *
+ * Furthermore, all four tables I have looked at
+ *   - the CP936 table by Microsoft, found on ftp.unicode.org in 1999,
+ *   - the GBK table by Sun, investigated on a Solaris 2.7 machine,
+ *   - the GBK tables by CWEX, found in the Big5+ package,
+ *   - the GB18030 standard (second printing),
+ * agree in the following extensions. (Ken Lunde must have overlooked these
+ * differences between GB2312 and GBK. Also, the CWEX tables have additional
+ * differences.)
+ *
+ * 1. Some characters in the GB2312 range are defined differently:
+ *
+ *     code    GB2312                         GBK
+ *    0xA1A4   0x30FB # KATAKANA MIDDLE DOT   0x00B7 # MIDDLE DOT
+ *    0xA1AA   0x2015 # HORIZONTAL BAR        0x2014 # EM DASH
+ *
+ * 2. 19 characters added in the range 0xA6E0-0xA6F5.
+ *
+ * 3. 4 characters added in the range 0xA8BB-0xA8C0.
+ *
+ * CP936 as of 1999 was identical to GBK. However, since 1999, Microsoft has
+ * added new mappings to CP936...
+ */
+
+#include "gbkext1.h"
+#include "gbkext2.h"
+#include "gbkext_inv.h"
+#include "cp936ext.h"
+
+static int
+gbk_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+
+  if (c >= 0x81 && c < 0xff) {
+    if (n < 2)
+      return RET_TOOFEW(0);
+    if (c >= 0xa1 && c <= 0xf7) {
+      unsigned char c2 = s[1];
+      if (c == 0xa1) {
+        if (c2 == 0xa4) {
+          *pwc = 0x00b7;
+          return 2;
+        }
+        if (c2 == 0xaa) {
+          *pwc = 0x2014;
+          return 2;
+        }
+      }
+      if (c2 >= 0xa1 && c2 < 0xff) {
+        unsigned char buf[2];
+        int ret;
+        buf[0] = c-0x80; buf[1] = c2-0x80;
+        ret = gb2312_mbtowc(conv,pwc,buf,2);
+        if (ret != RET_ILSEQ)
+          return ret;
+        buf[0] = c; buf[1] = c2;
+        ret = cp936ext_mbtowc(conv,pwc,buf,2);
+        if (ret != RET_ILSEQ)
+          return ret;
+      }
+    }
+    if (c >= 0x81 && c <= 0xa0)
+      return gbkext1_mbtowc(conv,pwc,s,2);
+    if (c >= 0xa8 && c <= 0xfe)
+      return gbkext2_mbtowc(conv,pwc,s,2);
+    if (c == 0xa2) {
+      unsigned char c2 = s[1];
+      if (c2 >= 0xa1 && c2 <= 0xaa) {
+        *pwc = 0x2170+(c2-0xa1);
+        return 2;
+      }
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static int
+gbk_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char buf[2];
+  int ret;
+
+  if (wc != 0x30fb && wc != 0x2015) {
+    ret = gb2312_wctomb(conv,buf,wc,2);
+    if (ret != RET_ILUNI) {
+      if (ret != 2) abort();
+      if (n < 2)
+        return RET_TOOSMALL;
+      r[0] = buf[0]+0x80;
+      r[1] = buf[1]+0x80;
+      return 2;
+    }
+  }
+  ret = gbkext_inv_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = buf[0];
+    r[1] = buf[1];
+    return 2;
+  }
+  if (wc >= 0x2170 && wc <= 0x2179) {
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = 0xa2;
+    r[1] = 0xa1 + (wc-0x2170);
+    return 2;
+  }
+  ret = cp936ext_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = buf[0];
+    r[1] = buf[1];
+    return 2;
+  }
+  if (wc == 0x00b7) {
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = 0xa1;
+    r[1] = 0xa4;
+    return 2;
+  }
+  if (wc == 0x2014) {
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = 0xa1;
+    r[1] = 0xaa;
+    return 2;
+  }
+
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/gbkext1.h b/graf2d/win32gdk/gdk/src/iconv/gbkext1.h
new file mode 100644
index 00000000000..d244c7695e2
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/gbkext1.h
@@ -0,0 +1,853 @@
+/*
+ * Copyright (C) 1999-2000 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * GBK/3 extensions
+ */
+
+static const unsigned short gbkext1_2uni_page81[6080] = {
+  /* 0x81 */
+  0x4e02, 0x4e04, 0x4e05, 0x4e06, 0x4e0f, 0x4e12, 0x4e17, 0x4e1f,
+  0x4e20, 0x4e21, 0x4e23, 0x4e26, 0x4e29, 0x4e2e, 0x4e2f, 0x4e31,
+  0x4e33, 0x4e35, 0x4e37, 0x4e3c, 0x4e40, 0x4e41, 0x4e42, 0x4e44,
+  0x4e46, 0x4e4a, 0x4e51, 0x4e55, 0x4e57, 0x4e5a, 0x4e5b, 0x4e62,
+  0x4e63, 0x4e64, 0x4e65, 0x4e67, 0x4e68, 0x4e6a, 0x4e6b, 0x4e6c,
+  0x4e6d, 0x4e6e, 0x4e6f, 0x4e72, 0x4e74, 0x4e75, 0x4e76, 0x4e77,
+  0x4e78, 0x4e79, 0x4e7a, 0x4e7b, 0x4e7c, 0x4e7d, 0x4e7f, 0x4e80,
+  0x4e81, 0x4e82, 0x4e83, 0x4e84, 0x4e85, 0x4e87, 0x4e8a, 0x4e90,
+  0x4e96, 0x4e97, 0x4e99, 0x4e9c, 0x4e9d, 0x4e9e, 0x4ea3, 0x4eaa,
+  0x4eaf, 0x4eb0, 0x4eb1, 0x4eb4, 0x4eb6, 0x4eb7, 0x4eb8, 0x4eb9,
+  0x4ebc, 0x4ebd, 0x4ebe, 0x4ec8, 0x4ecc, 0x4ecf, 0x4ed0, 0x4ed2,
+  0x4eda, 0x4edb, 0x4edc, 0x4ee0, 0x4ee2, 0x4ee6, 0x4ee7, 0x4ee9,
+  0x4eed, 0x4eee, 0x4eef, 0x4ef1, 0x4ef4, 0x4ef8, 0x4ef9, 0x4efa,
+  0x4efc, 0x4efe, 0x4f00, 0x4f02, 0x4f03, 0x4f04, 0x4f05, 0x4f06,
+  0x4f07, 0x4f08, 0x4f0b, 0x4f0c, 0x4f12, 0x4f13, 0x4f14, 0x4f15,
+  0x4f16, 0x4f1c, 0x4f1d, 0x4f21, 0x4f23, 0x4f28, 0x4f29, 0x4f2c,
+  0x4f2d, 0x4f2e, 0x4f31, 0x4f33, 0x4f35, 0x4f37, 0x4f39, 0x4f3b,
+  0x4f3e, 0x4f3f, 0x4f40, 0x4f41, 0x4f42, 0x4f44, 0x4f45, 0x4f47,
+  0x4f48, 0x4f49, 0x4f4a, 0x4f4b, 0x4f4c, 0x4f52, 0x4f54, 0x4f56,
+  0x4f61, 0x4f62, 0x4f66, 0x4f68, 0x4f6a, 0x4f6b, 0x4f6d, 0x4f6e,
+  0x4f71, 0x4f72, 0x4f75, 0x4f77, 0x4f78, 0x4f79, 0x4f7a, 0x4f7d,
+  0x4f80, 0x4f81, 0x4f82, 0x4f85, 0x4f86, 0x4f87, 0x4f8a, 0x4f8c,
+  0x4f8e, 0x4f90, 0x4f92, 0x4f93, 0x4f95, 0x4f96, 0x4f98, 0x4f99,
+  0x4f9a, 0x4f9c, 0x4f9e, 0x4f9f, 0x4fa1, 0x4fa2,
+  /* 0x82 */
+  0x4fa4, 0x4fab, 0x4fad, 0x4fb0, 0x4fb1, 0x4fb2, 0x4fb3, 0x4fb4,
+  0x4fb6, 0x4fb7, 0x4fb8, 0x4fb9, 0x4fba, 0x4fbb, 0x4fbc, 0x4fbd,
+  0x4fbe, 0x4fc0, 0x4fc1, 0x4fc2, 0x4fc6, 0x4fc7, 0x4fc8, 0x4fc9,
+  0x4fcb, 0x4fcc, 0x4fcd, 0x4fd2, 0x4fd3, 0x4fd4, 0x4fd5, 0x4fd6,
+  0x4fd9, 0x4fdb, 0x4fe0, 0x4fe2, 0x4fe4, 0x4fe5, 0x4fe7, 0x4feb,
+  0x4fec, 0x4ff0, 0x4ff2, 0x4ff4, 0x4ff5, 0x4ff6, 0x4ff7, 0x4ff9,
+  0x4ffb, 0x4ffc, 0x4ffd, 0x4fff, 0x5000, 0x5001, 0x5002, 0x5003,
+  0x5004, 0x5005, 0x5006, 0x5007, 0x5008, 0x5009, 0x500a, 0x500b,
+  0x500e, 0x5010, 0x5011, 0x5013, 0x5015, 0x5016, 0x5017, 0x501b,
+  0x501d, 0x501e, 0x5020, 0x5022, 0x5023, 0x5024, 0x5027, 0x502b,
+  0x502f, 0x5030, 0x5031, 0x5032, 0x5033, 0x5034, 0x5035, 0x5036,
+  0x5037, 0x5038, 0x5039, 0x503b, 0x503d, 0x503f, 0x5040, 0x5041,
+  0x5042, 0x5044, 0x5045, 0x5046, 0x5049, 0x504a, 0x504b, 0x504d,
+  0x5050, 0x5051, 0x5052, 0x5053, 0x5054, 0x5056, 0x5057, 0x5058,
+  0x5059, 0x505b, 0x505d, 0x505e, 0x505f, 0x5060, 0x5061, 0x5062,
+  0x5063, 0x5064, 0x5066, 0x5067, 0x5068, 0x5069, 0x506a, 0x506b,
+  0x506d, 0x506e, 0x506f, 0x5070, 0x5071, 0x5072, 0x5073, 0x5074,
+  0x5075, 0x5078, 0x5079, 0x507a, 0x507c, 0x507d, 0x5081, 0x5082,
+  0x5083, 0x5084, 0x5086, 0x5087, 0x5089, 0x508a, 0x508b, 0x508c,
+  0x508e, 0x508f, 0x5090, 0x5091, 0x5092, 0x5093, 0x5094, 0x5095,
+  0x5096, 0x5097, 0x5098, 0x5099, 0x509a, 0x509b, 0x509c, 0x509d,
+  0x509e, 0x509f, 0x50a0, 0x50a1, 0x50a2, 0x50a4, 0x50a6, 0x50aa,
+  0x50ab, 0x50ad, 0x50ae, 0x50af, 0x50b0, 0x50b1, 0x50b3, 0x50b4,
+  0x50b5, 0x50b6, 0x50b7, 0x50b8, 0x50b9, 0x50bc,
+  /* 0x83 */
+  0x50bd, 0x50be, 0x50bf, 0x50c0, 0x50c1, 0x50c2, 0x50c3, 0x50c4,
+  0x50c5, 0x50c6, 0x50c7, 0x50c8, 0x50c9, 0x50ca, 0x50cb, 0x50cc,
+  0x50cd, 0x50ce, 0x50d0, 0x50d1, 0x50d2, 0x50d3, 0x50d4, 0x50d5,
+  0x50d7, 0x50d8, 0x50d9, 0x50db, 0x50dc, 0x50dd, 0x50de, 0x50df,
+  0x50e0, 0x50e1, 0x50e2, 0x50e3, 0x50e4, 0x50e5, 0x50e8, 0x50e9,
+  0x50ea, 0x50eb, 0x50ef, 0x50f0, 0x50f1, 0x50f2, 0x50f4, 0x50f6,
+  0x50f7, 0x50f8, 0x50f9, 0x50fa, 0x50fc, 0x50fd, 0x50fe, 0x50ff,
+  0x5100, 0x5101, 0x5102, 0x5103, 0x5104, 0x5105, 0x5108, 0x5109,
+  0x510a, 0x510c, 0x510d, 0x510e, 0x510f, 0x5110, 0x5111, 0x5113,
+  0x5114, 0x5115, 0x5116, 0x5117, 0x5118, 0x5119, 0x511a, 0x511b,
+  0x511c, 0x511d, 0x511e, 0x511f, 0x5120, 0x5122, 0x5123, 0x5124,
+  0x5125, 0x5126, 0x5127, 0x5128, 0x5129, 0x512a, 0x512b, 0x512c,
+  0x512d, 0x512e, 0x512f, 0x5130, 0x5131, 0x5132, 0x5133, 0x5134,
+  0x5135, 0x5136, 0x5137, 0x5138, 0x5139, 0x513a, 0x513b, 0x513c,
+  0x513d, 0x513e, 0x5142, 0x5147, 0x514a, 0x514c, 0x514e, 0x514f,
+  0x5150, 0x5152, 0x5153, 0x5157, 0x5158, 0x5159, 0x515b, 0x515d,
+  0x515e, 0x515f, 0x5160, 0x5161, 0x5163, 0x5164, 0x5166, 0x5167,
+  0x5169, 0x516a, 0x516f, 0x5172, 0x517a, 0x517e, 0x517f, 0x5183,
+  0x5184, 0x5186, 0x5187, 0x518a, 0x518b, 0x518e, 0x518f, 0x5190,
+  0x5191, 0x5193, 0x5194, 0x5198, 0x519a, 0x519d, 0x519e, 0x519f,
+  0x51a1, 0x51a3, 0x51a6, 0x51a7, 0x51a8, 0x51a9, 0x51aa, 0x51ad,
+  0x51ae, 0x51b4, 0x51b8, 0x51b9, 0x51ba, 0x51be, 0x51bf, 0x51c1,
+  0x51c2, 0x51c3, 0x51c5, 0x51c8, 0x51ca, 0x51cd, 0x51ce, 0x51d0,
+  0x51d2, 0x51d3, 0x51d4, 0x51d5, 0x51d6, 0x51d7,
+  /* 0x84 */
+  0x51d8, 0x51d9, 0x51da, 0x51dc, 0x51de, 0x51df, 0x51e2, 0x51e3,
+  0x51e5, 0x51e6, 0x51e7, 0x51e8, 0x51e9, 0x51ea, 0x51ec, 0x51ee,
+  0x51f1, 0x51f2, 0x51f4, 0x51f7, 0x51fe, 0x5204, 0x5205, 0x5209,
+  0x520b, 0x520c, 0x520f, 0x5210, 0x5213, 0x5214, 0x5215, 0x521c,
+  0x521e, 0x521f, 0x5221, 0x5222, 0x5223, 0x5225, 0x5226, 0x5227,
+  0x522a, 0x522c, 0x522f, 0x5231, 0x5232, 0x5234, 0x5235, 0x523c,
+  0x523e, 0x5244, 0x5245, 0x5246, 0x5247, 0x5248, 0x5249, 0x524b,
+  0x524e, 0x524f, 0x5252, 0x5253, 0x5255, 0x5257, 0x5258, 0x5259,
+  0x525a, 0x525b, 0x525d, 0x525f, 0x5260, 0x5262, 0x5263, 0x5264,
+  0x5266, 0x5268, 0x526b, 0x526c, 0x526d, 0x526e, 0x5270, 0x5271,
+  0x5273, 0x5274, 0x5275, 0x5276, 0x5277, 0x5278, 0x5279, 0x527a,
+  0x527b, 0x527c, 0x527e, 0x5280, 0x5283, 0x5284, 0x5285, 0x5286,
+  0x5287, 0x5289, 0x528a, 0x528b, 0x528c, 0x528d, 0x528e, 0x528f,
+  0x5291, 0x5292, 0x5294, 0x5295, 0x5296, 0x5297, 0x5298, 0x5299,
+  0x529a, 0x529c, 0x52a4, 0x52a5, 0x52a6, 0x52a7, 0x52ae, 0x52af,
+  0x52b0, 0x52b4, 0x52b5, 0x52b6, 0x52b7, 0x52b8, 0x52b9, 0x52ba,
+  0x52bb, 0x52bc, 0x52bd, 0x52c0, 0x52c1, 0x52c2, 0x52c4, 0x52c5,
+  0x52c6, 0x52c8, 0x52ca, 0x52cc, 0x52cd, 0x52ce, 0x52cf, 0x52d1,
+  0x52d3, 0x52d4, 0x52d5, 0x52d7, 0x52d9, 0x52da, 0x52db, 0x52dc,
+  0x52dd, 0x52de, 0x52e0, 0x52e1, 0x52e2, 0x52e3, 0x52e5, 0x52e6,
+  0x52e7, 0x52e8, 0x52e9, 0x52ea, 0x52eb, 0x52ec, 0x52ed, 0x52ee,
+  0x52ef, 0x52f1, 0x52f2, 0x52f3, 0x52f4, 0x52f5, 0x52f6, 0x52f7,
+  0x52f8, 0x52fb, 0x52fc, 0x52fd, 0x5301, 0x5302, 0x5303, 0x5304,
+  0x5307, 0x5309, 0x530a, 0x530b, 0x530c, 0x530e,
+  /* 0x85 */
+  0x5311, 0x5312, 0x5313, 0x5314, 0x5318, 0x531b, 0x531c, 0x531e,
+  0x531f, 0x5322, 0x5324, 0x5325, 0x5327, 0x5328, 0x5329, 0x532b,
+  0x532c, 0x532d, 0x532f, 0x5330, 0x5331, 0x5332, 0x5333, 0x5334,
+  0x5335, 0x5336, 0x5337, 0x5338, 0x533c, 0x533d, 0x5340, 0x5342,
+  0x5344, 0x5346, 0x534b, 0x534c, 0x534d, 0x5350, 0x5354, 0x5358,
+  0x5359, 0x535b, 0x535d, 0x5365, 0x5368, 0x536a, 0x536c, 0x536d,
+  0x5372, 0x5376, 0x5379, 0x537b, 0x537c, 0x537d, 0x537e, 0x5380,
+  0x5381, 0x5383, 0x5387, 0x5388, 0x538a, 0x538e, 0x538f, 0x5390,
+  0x5391, 0x5392, 0x5393, 0x5394, 0x5396, 0x5397, 0x5399, 0x539b,
+  0x539c, 0x539e, 0x53a0, 0x53a1, 0x53a4, 0x53a7, 0x53aa, 0x53ab,
+  0x53ac, 0x53ad, 0x53af, 0x53b0, 0x53b1, 0x53b2, 0x53b3, 0x53b4,
+  0x53b5, 0x53b7, 0x53b8, 0x53b9, 0x53ba, 0x53bc, 0x53bd, 0x53be,
+  0x53c0, 0x53c3, 0x53c4, 0x53c5, 0x53c6, 0x53c7, 0x53ce, 0x53cf,
+  0x53d0, 0x53d2, 0x53d3, 0x53d5, 0x53da, 0x53dc, 0x53dd, 0x53de,
+  0x53e1, 0x53e2, 0x53e7, 0x53f4, 0x53fa, 0x53fe, 0x53ff, 0x5400,
+  0x5402, 0x5405, 0x5407, 0x540b, 0x5414, 0x5418, 0x5419, 0x541a,
+  0x541c, 0x5422, 0x5424, 0x5425, 0x542a, 0x5430, 0x5433, 0x5436,
+  0x5437, 0x543a, 0x543d, 0x543f, 0x5441, 0x5442, 0x5444, 0x5445,
+  0x5447, 0x5449, 0x544c, 0x544d, 0x544e, 0x544f, 0x5451, 0x545a,
+  0x545d, 0x545e, 0x545f, 0x5460, 0x5461, 0x5463, 0x5465, 0x5467,
+  0x5469, 0x546a, 0x546b, 0x546c, 0x546d, 0x546e, 0x546f, 0x5470,
+  0x5474, 0x5479, 0x547a, 0x547e, 0x547f, 0x5481, 0x5483, 0x5485,
+  0x5487, 0x5488, 0x5489, 0x548a, 0x548d, 0x5491, 0x5493, 0x5497,
+  0x5498, 0x549c, 0x549e, 0x549f, 0x54a0, 0x54a1,
+  /* 0x86 */
+  0x54a2, 0x54a5, 0x54ae, 0x54b0, 0x54b2, 0x54b5, 0x54b6, 0x54b7,
+  0x54b9, 0x54ba, 0x54bc, 0x54be, 0x54c3, 0x54c5, 0x54ca, 0x54cb,
+  0x54d6, 0x54d8, 0x54db, 0x54e0, 0x54e1, 0x54e2, 0x54e3, 0x54e4,
+  0x54eb, 0x54ec, 0x54ef, 0x54f0, 0x54f1, 0x54f4, 0x54f5, 0x54f6,
+  0x54f7, 0x54f8, 0x54f9, 0x54fb, 0x54fe, 0x5500, 0x5502, 0x5503,
+  0x5504, 0x5505, 0x5508, 0x550a, 0x550b, 0x550c, 0x550d, 0x550e,
+  0x5512, 0x5513, 0x5515, 0x5516, 0x5517, 0x5518, 0x5519, 0x551a,
+  0x551c, 0x551d, 0x551e, 0x551f, 0x5521, 0x5525, 0x5526, 0x5528,
+  0x5529, 0x552b, 0x552d, 0x5532, 0x5534, 0x5535, 0x5536, 0x5538,
+  0x5539, 0x553a, 0x553b, 0x553d, 0x5540, 0x5542, 0x5545, 0x5547,
+  0x5548, 0x554b, 0x554c, 0x554d, 0x554e, 0x554f, 0x5551, 0x5552,
+  0x5553, 0x5554, 0x5557, 0x5558, 0x5559, 0x555a, 0x555b, 0x555d,
+  0x555e, 0x555f, 0x5560, 0x5562, 0x5563, 0x5568, 0x5569, 0x556b,
+  0x556f, 0x5570, 0x5571, 0x5572, 0x5573, 0x5574, 0x5579, 0x557a,
+  0x557d, 0x557f, 0x5585, 0x5586, 0x558c, 0x558d, 0x558e, 0x5590,
+  0x5592, 0x5593, 0x5595, 0x5596, 0x5597, 0x559a, 0x559b, 0x559e,
+  0x55a0, 0x55a1, 0x55a2, 0x55a3, 0x55a4, 0x55a5, 0x55a6, 0x55a8,
+  0x55a9, 0x55aa, 0x55ab, 0x55ac, 0x55ad, 0x55ae, 0x55af, 0x55b0,
+  0x55b2, 0x55b4, 0x55b6, 0x55b8, 0x55ba, 0x55bc, 0x55bf, 0x55c0,
+  0x55c1, 0x55c2, 0x55c3, 0x55c6, 0x55c7, 0x55c8, 0x55ca, 0x55cb,
+  0x55ce, 0x55cf, 0x55d0, 0x55d5, 0x55d7, 0x55d8, 0x55d9, 0x55da,
+  0x55db, 0x55de, 0x55e0, 0x55e2, 0x55e7, 0x55e9, 0x55ed, 0x55ee,
+  0x55f0, 0x55f1, 0x55f4, 0x55f6, 0x55f8, 0x55f9, 0x55fa, 0x55fb,
+  0x55fc, 0x55ff, 0x5602, 0x5603, 0x5604, 0x5605,
+  /* 0x87 */
+  0x5606, 0x5607, 0x560a, 0x560b, 0x560d, 0x5610, 0x5611, 0x5612,
+  0x5613, 0x5614, 0x5615, 0x5616, 0x5617, 0x5619, 0x561a, 0x561c,
+  0x561d, 0x5620, 0x5621, 0x5622, 0x5625, 0x5626, 0x5628, 0x5629,
+  0x562a, 0x562b, 0x562e, 0x562f, 0x5630, 0x5633, 0x5635, 0x5637,
+  0x5638, 0x563a, 0x563c, 0x563d, 0x563e, 0x5640, 0x5641, 0x5642,
+  0x5643, 0x5644, 0x5645, 0x5646, 0x5647, 0x5648, 0x5649, 0x564a,
+  0x564b, 0x564f, 0x5650, 0x5651, 0x5652, 0x5653, 0x5655, 0x5656,
+  0x565a, 0x565b, 0x565d, 0x565e, 0x565f, 0x5660, 0x5661, 0x5663,
+  0x5665, 0x5666, 0x5667, 0x566d, 0x566e, 0x566f, 0x5670, 0x5672,
+  0x5673, 0x5674, 0x5675, 0x5677, 0x5678, 0x5679, 0x567a, 0x567d,
+  0x567e, 0x567f, 0x5680, 0x5681, 0x5682, 0x5683, 0x5684, 0x5687,
+  0x5688, 0x5689, 0x568a, 0x568b, 0x568c, 0x568d, 0x5690, 0x5691,
+  0x5692, 0x5694, 0x5695, 0x5696, 0x5697, 0x5698, 0x5699, 0x569a,
+  0x569b, 0x569c, 0x569d, 0x569e, 0x569f, 0x56a0, 0x56a1, 0x56a2,
+  0x56a4, 0x56a5, 0x56a6, 0x56a7, 0x56a8, 0x56a9, 0x56aa, 0x56ab,
+  0x56ac, 0x56ad, 0x56ae, 0x56b0, 0x56b1, 0x56b2, 0x56b3, 0x56b4,
+  0x56b5, 0x56b6, 0x56b8, 0x56b9, 0x56ba, 0x56bb, 0x56bd, 0x56be,
+  0x56bf, 0x56c0, 0x56c1, 0x56c2, 0x56c3, 0x56c4, 0x56c5, 0x56c6,
+  0x56c7, 0x56c8, 0x56c9, 0x56cb, 0x56cc, 0x56cd, 0x56ce, 0x56cf,
+  0x56d0, 0x56d1, 0x56d2, 0x56d3, 0x56d5, 0x56d6, 0x56d8, 0x56d9,
+  0x56dc, 0x56e3, 0x56e5, 0x56e6, 0x56e7, 0x56e8, 0x56e9, 0x56ea,
+  0x56ec, 0x56ee, 0x56ef, 0x56f2, 0x56f3, 0x56f6, 0x56f7, 0x56f8,
+  0x56fb, 0x56fc, 0x5700, 0x5701, 0x5702, 0x5705, 0x5707, 0x570b,
+  0x570c, 0x570d, 0x570e, 0x570f, 0x5710, 0x5711,
+  /* 0x88 */
+  0x5712, 0x5713, 0x5714, 0x5715, 0x5716, 0x5717, 0x5718, 0x5719,
+  0x571a, 0x571b, 0x571d, 0x571e, 0x5720, 0x5721, 0x5722, 0x5724,
+  0x5725, 0x5726, 0x5727, 0x572b, 0x5731, 0x5732, 0x5734, 0x5735,
+  0x5736, 0x5737, 0x5738, 0x573c, 0x573d, 0x573f, 0x5741, 0x5743,
+  0x5744, 0x5745, 0x5746, 0x5748, 0x5749, 0x574b, 0x5752, 0x5753,
+  0x5754, 0x5755, 0x5756, 0x5758, 0x5759, 0x5762, 0x5763, 0x5765,
+  0x5767, 0x576c, 0x576e, 0x5770, 0x5771, 0x5772, 0x5774, 0x5775,
+  0x5778, 0x5779, 0x577a, 0x577d, 0x577e, 0x577f, 0x5780, 0x5781,
+  0x5787, 0x5788, 0x5789, 0x578a, 0x578d, 0x578e, 0x578f, 0x5790,
+  0x5791, 0x5794, 0x5795, 0x5796, 0x5797, 0x5798, 0x5799, 0x579a,
+  0x579c, 0x579d, 0x579e, 0x579f, 0x57a5, 0x57a8, 0x57aa, 0x57ac,
+  0x57af, 0x57b0, 0x57b1, 0x57b3, 0x57b5, 0x57b6, 0x57b7, 0x57b9,
+  0x57ba, 0x57bb, 0x57bc, 0x57bd, 0x57be, 0x57bf, 0x57c0, 0x57c1,
+  0x57c4, 0x57c5, 0x57c6, 0x57c7, 0x57c8, 0x57c9, 0x57ca, 0x57cc,
+  0x57cd, 0x57d0, 0x57d1, 0x57d3, 0x57d6, 0x57d7, 0x57db, 0x57dc,
+  0x57de, 0x57e1, 0x57e2, 0x57e3, 0x57e5, 0x57e6, 0x57e7, 0x57e8,
+  0x57e9, 0x57ea, 0x57eb, 0x57ec, 0x57ee, 0x57f0, 0x57f1, 0x57f2,
+  0x57f3, 0x57f5, 0x57f6, 0x57f7, 0x57fb, 0x57fc, 0x57fe, 0x57ff,
+  0x5801, 0x5803, 0x5804, 0x5805, 0x5808, 0x5809, 0x580a, 0x580c,
+  0x580e, 0x580f, 0x5810, 0x5812, 0x5813, 0x5814, 0x5816, 0x5817,
+  0x5818, 0x581a, 0x581b, 0x581c, 0x581d, 0x581f, 0x5822, 0x5823,
+  0x5825, 0x5826, 0x5827, 0x5828, 0x5829, 0x582b, 0x582c, 0x582d,
+  0x582e, 0x582f, 0x5831, 0x5832, 0x5833, 0x5834, 0x5836, 0x5837,
+  0x5838, 0x5839, 0x583a, 0x583b, 0x583c, 0x583d,
+  /* 0x89 */
+  0x583e, 0x583f, 0x5840, 0x5841, 0x5842, 0x5843, 0x5845, 0x5846,
+  0x5847, 0x5848, 0x5849, 0x584a, 0x584b, 0x584e, 0x584f, 0x5850,
+  0x5852, 0x5853, 0x5855, 0x5856, 0x5857, 0x5859, 0x585a, 0x585b,
+  0x585c, 0x585d, 0x585f, 0x5860, 0x5861, 0x5862, 0x5863, 0x5864,
+  0x5866, 0x5867, 0x5868, 0x5869, 0x586a, 0x586d, 0x586e, 0x586f,
+  0x5870, 0x5871, 0x5872, 0x5873, 0x5874, 0x5875, 0x5876, 0x5877,
+  0x5878, 0x5879, 0x587a, 0x587b, 0x587c, 0x587d, 0x587f, 0x5882,
+  0x5884, 0x5886, 0x5887, 0x5888, 0x588a, 0x588b, 0x588c, 0x588d,
+  0x588e, 0x588f, 0x5890, 0x5891, 0x5894, 0x5895, 0x5896, 0x5897,
+  0x5898, 0x589b, 0x589c, 0x589d, 0x58a0, 0x58a1, 0x58a2, 0x58a3,
+  0x58a4, 0x58a5, 0x58a6, 0x58a7, 0x58aa, 0x58ab, 0x58ac, 0x58ad,
+  0x58ae, 0x58af, 0x58b0, 0x58b1, 0x58b2, 0x58b3, 0x58b4, 0x58b5,
+  0x58b6, 0x58b7, 0x58b8, 0x58b9, 0x58ba, 0x58bb, 0x58bd, 0x58be,
+  0x58bf, 0x58c0, 0x58c2, 0x58c3, 0x58c4, 0x58c6, 0x58c7, 0x58c8,
+  0x58c9, 0x58ca, 0x58cb, 0x58cc, 0x58cd, 0x58ce, 0x58cf, 0x58d0,
+  0x58d2, 0x58d3, 0x58d4, 0x58d6, 0x58d7, 0x58d8, 0x58d9, 0x58da,
+  0x58db, 0x58dc, 0x58dd, 0x58de, 0x58df, 0x58e0, 0x58e1, 0x58e2,
+  0x58e3, 0x58e5, 0x58e6, 0x58e7, 0x58e8, 0x58e9, 0x58ea, 0x58ed,
+  0x58ef, 0x58f1, 0x58f2, 0x58f4, 0x58f5, 0x58f7, 0x58f8, 0x58fa,
+  0x58fb, 0x58fc, 0x58fd, 0x58fe, 0x58ff, 0x5900, 0x5901, 0x5903,
+  0x5905, 0x5906, 0x5908, 0x5909, 0x590a, 0x590b, 0x590c, 0x590e,
+  0x5910, 0x5911, 0x5912, 0x5913, 0x5917, 0x5918, 0x591b, 0x591d,
+  0x591e, 0x5920, 0x5921, 0x5922, 0x5923, 0x5926, 0x5928, 0x592c,
+  0x5930, 0x5932, 0x5933, 0x5935, 0x5936, 0x593b,
+  /* 0x8a */
+  0x593d, 0x593e, 0x593f, 0x5940, 0x5943, 0x5945, 0x5946, 0x594a,
+  0x594c, 0x594d, 0x5950, 0x5952, 0x5953, 0x5959, 0x595b, 0x595c,
+  0x595d, 0x595e, 0x595f, 0x5961, 0x5963, 0x5964, 0x5966, 0x5967,
+  0x5968, 0x5969, 0x596a, 0x596b, 0x596c, 0x596d, 0x596e, 0x596f,
+  0x5970, 0x5971, 0x5972, 0x5975, 0x5977, 0x597a, 0x597b, 0x597c,
+  0x597e, 0x597f, 0x5980, 0x5985, 0x5989, 0x598b, 0x598c, 0x598e,
+  0x598f, 0x5990, 0x5991, 0x5994, 0x5995, 0x5998, 0x599a, 0x599b,
+  0x599c, 0x599d, 0x599f, 0x59a0, 0x59a1, 0x59a2, 0x59a6, 0x59a7,
+  0x59ac, 0x59ad, 0x59b0, 0x59b1, 0x59b3, 0x59b4, 0x59b5, 0x59b6,
+  0x59b7, 0x59b8, 0x59ba, 0x59bc, 0x59bd, 0x59bf, 0x59c0, 0x59c1,
+  0x59c2, 0x59c3, 0x59c4, 0x59c5, 0x59c7, 0x59c8, 0x59c9, 0x59cc,
+  0x59cd, 0x59ce, 0x59cf, 0x59d5, 0x59d6, 0x59d9, 0x59db, 0x59de,
+  0x59df, 0x59e0, 0x59e1, 0x59e2, 0x59e4, 0x59e6, 0x59e7, 0x59e9,
+  0x59ea, 0x59eb, 0x59ed, 0x59ee, 0x59ef, 0x59f0, 0x59f1, 0x59f2,
+  0x59f3, 0x59f4, 0x59f5, 0x59f6, 0x59f7, 0x59f8, 0x59fa, 0x59fc,
+  0x59fd, 0x59fe, 0x5a00, 0x5a02, 0x5a0a, 0x5a0b, 0x5a0d, 0x5a0e,
+  0x5a0f, 0x5a10, 0x5a12, 0x5a14, 0x5a15, 0x5a16, 0x5a17, 0x5a19,
+  0x5a1a, 0x5a1b, 0x5a1d, 0x5a1e, 0x5a21, 0x5a22, 0x5a24, 0x5a26,
+  0x5a27, 0x5a28, 0x5a2a, 0x5a2b, 0x5a2c, 0x5a2d, 0x5a2e, 0x5a2f,
+  0x5a30, 0x5a33, 0x5a35, 0x5a37, 0x5a38, 0x5a39, 0x5a3a, 0x5a3b,
+  0x5a3d, 0x5a3e, 0x5a3f, 0x5a41, 0x5a42, 0x5a43, 0x5a44, 0x5a45,
+  0x5a47, 0x5a48, 0x5a4b, 0x5a4c, 0x5a4d, 0x5a4e, 0x5a4f, 0x5a50,
+  0x5a51, 0x5a52, 0x5a53, 0x5a54, 0x5a56, 0x5a57, 0x5a58, 0x5a59,
+  0x5a5b, 0x5a5c, 0x5a5d, 0x5a5e, 0x5a5f, 0x5a60,
+  /* 0x8b */
+  0x5a61, 0x5a63, 0x5a64, 0x5a65, 0x5a66, 0x5a68, 0x5a69, 0x5a6b,
+  0x5a6c, 0x5a6d, 0x5a6e, 0x5a6f, 0x5a70, 0x5a71, 0x5a72, 0x5a73,
+  0x5a78, 0x5a79, 0x5a7b, 0x5a7c, 0x5a7d, 0x5a7e, 0x5a80, 0x5a81,
+  0x5a82, 0x5a83, 0x5a84, 0x5a85, 0x5a86, 0x5a87, 0x5a88, 0x5a89,
+  0x5a8a, 0x5a8b, 0x5a8c, 0x5a8d, 0x5a8e, 0x5a8f, 0x5a90, 0x5a91,
+  0x5a93, 0x5a94, 0x5a95, 0x5a96, 0x5a97, 0x5a98, 0x5a99, 0x5a9c,
+  0x5a9d, 0x5a9e, 0x5a9f, 0x5aa0, 0x5aa1, 0x5aa2, 0x5aa3, 0x5aa4,
+  0x5aa5, 0x5aa6, 0x5aa7, 0x5aa8, 0x5aa9, 0x5aab, 0x5aac, 0x5aad,
+  0x5aae, 0x5aaf, 0x5ab0, 0x5ab1, 0x5ab4, 0x5ab6, 0x5ab7, 0x5ab9,
+  0x5aba, 0x5abb, 0x5abc, 0x5abd, 0x5abf, 0x5ac0, 0x5ac3, 0x5ac4,
+  0x5ac5, 0x5ac6, 0x5ac7, 0x5ac8, 0x5aca, 0x5acb, 0x5acd, 0x5ace,
+  0x5acf, 0x5ad0, 0x5ad1, 0x5ad3, 0x5ad5, 0x5ad7, 0x5ad9, 0x5ada,
+  0x5adb, 0x5add, 0x5ade, 0x5adf, 0x5ae2, 0x5ae4, 0x5ae5, 0x5ae7,
+  0x5ae8, 0x5aea, 0x5aec, 0x5aed, 0x5aee, 0x5aef, 0x5af0, 0x5af2,
+  0x5af3, 0x5af4, 0x5af5, 0x5af6, 0x5af7, 0x5af8, 0x5af9, 0x5afa,
+  0x5afb, 0x5afc, 0x5afd, 0x5afe, 0x5aff, 0x5b00, 0x5b01, 0x5b02,
+  0x5b03, 0x5b04, 0x5b05, 0x5b06, 0x5b07, 0x5b08, 0x5b0a, 0x5b0b,
+  0x5b0c, 0x5b0d, 0x5b0e, 0x5b0f, 0x5b10, 0x5b11, 0x5b12, 0x5b13,
+  0x5b14, 0x5b15, 0x5b18, 0x5b19, 0x5b1a, 0x5b1b, 0x5b1c, 0x5b1d,
+  0x5b1e, 0x5b1f, 0x5b20, 0x5b21, 0x5b22, 0x5b23, 0x5b24, 0x5b25,
+  0x5b26, 0x5b27, 0x5b28, 0x5b29, 0x5b2a, 0x5b2b, 0x5b2c, 0x5b2d,
+  0x5b2e, 0x5b2f, 0x5b30, 0x5b31, 0x5b33, 0x5b35, 0x5b36, 0x5b38,
+  0x5b39, 0x5b3a, 0x5b3b, 0x5b3c, 0x5b3d, 0x5b3e, 0x5b3f, 0x5b41,
+  0x5b42, 0x5b43, 0x5b44, 0x5b45, 0x5b46, 0x5b47,
+  /* 0x8c */
+  0x5b48, 0x5b49, 0x5b4a, 0x5b4b, 0x5b4c, 0x5b4d, 0x5b4e, 0x5b4f,
+  0x5b52, 0x5b56, 0x5b5e, 0x5b60, 0x5b61, 0x5b67, 0x5b68, 0x5b6b,
+  0x5b6d, 0x5b6e, 0x5b6f, 0x5b72, 0x5b74, 0x5b76, 0x5b77, 0x5b78,
+  0x5b79, 0x5b7b, 0x5b7c, 0x5b7e, 0x5b7f, 0x5b82, 0x5b86, 0x5b8a,
+  0x5b8d, 0x5b8e, 0x5b90, 0x5b91, 0x5b92, 0x5b94, 0x5b96, 0x5b9f,
+  0x5ba7, 0x5ba8, 0x5ba9, 0x5bac, 0x5bad, 0x5bae, 0x5baf, 0x5bb1,
+  0x5bb2, 0x5bb7, 0x5bba, 0x5bbb, 0x5bbc, 0x5bc0, 0x5bc1, 0x5bc3,
+  0x5bc8, 0x5bc9, 0x5bca, 0x5bcb, 0x5bcd, 0x5bce, 0x5bcf, 0x5bd1,
+  0x5bd4, 0x5bd5, 0x5bd6, 0x5bd7, 0x5bd8, 0x5bd9, 0x5bda, 0x5bdb,
+  0x5bdc, 0x5be0, 0x5be2, 0x5be3, 0x5be6, 0x5be7, 0x5be9, 0x5bea,
+  0x5beb, 0x5bec, 0x5bed, 0x5bef, 0x5bf1, 0x5bf2, 0x5bf3, 0x5bf4,
+  0x5bf5, 0x5bf6, 0x5bf7, 0x5bfd, 0x5bfe, 0x5c00, 0x5c02, 0x5c03,
+  0x5c05, 0x5c07, 0x5c08, 0x5c0b, 0x5c0c, 0x5c0d, 0x5c0e, 0x5c10,
+  0x5c12, 0x5c13, 0x5c17, 0x5c19, 0x5c1b, 0x5c1e, 0x5c1f, 0x5c20,
+  0x5c21, 0x5c23, 0x5c26, 0x5c28, 0x5c29, 0x5c2a, 0x5c2b, 0x5c2d,
+  0x5c2e, 0x5c2f, 0x5c30, 0x5c32, 0x5c33, 0x5c35, 0x5c36, 0x5c37,
+  0x5c43, 0x5c44, 0x5c46, 0x5c47, 0x5c4c, 0x5c4d, 0x5c52, 0x5c53,
+  0x5c54, 0x5c56, 0x5c57, 0x5c58, 0x5c5a, 0x5c5b, 0x5c5c, 0x5c5d,
+  0x5c5f, 0x5c62, 0x5c64, 0x5c67, 0x5c68, 0x5c69, 0x5c6a, 0x5c6b,
+  0x5c6c, 0x5c6d, 0x5c70, 0x5c72, 0x5c73, 0x5c74, 0x5c75, 0x5c76,
+  0x5c77, 0x5c78, 0x5c7b, 0x5c7c, 0x5c7d, 0x5c7e, 0x5c80, 0x5c83,
+  0x5c84, 0x5c85, 0x5c86, 0x5c87, 0x5c89, 0x5c8a, 0x5c8b, 0x5c8e,
+  0x5c8f, 0x5c92, 0x5c93, 0x5c95, 0x5c9d, 0x5c9e, 0x5c9f, 0x5ca0,
+  0x5ca1, 0x5ca4, 0x5ca5, 0x5ca6, 0x5ca7, 0x5ca8,
+  /* 0x8d */
+  0x5caa, 0x5cae, 0x5caf, 0x5cb0, 0x5cb2, 0x5cb4, 0x5cb6, 0x5cb9,
+  0x5cba, 0x5cbb, 0x5cbc, 0x5cbe, 0x5cc0, 0x5cc2, 0x5cc3, 0x5cc5,
+  0x5cc6, 0x5cc7, 0x5cc8, 0x5cc9, 0x5cca, 0x5ccc, 0x5ccd, 0x5cce,
+  0x5ccf, 0x5cd0, 0x5cd1, 0x5cd3, 0x5cd4, 0x5cd5, 0x5cd6, 0x5cd7,
+  0x5cd8, 0x5cda, 0x5cdb, 0x5cdc, 0x5cdd, 0x5cde, 0x5cdf, 0x5ce0,
+  0x5ce2, 0x5ce3, 0x5ce7, 0x5ce9, 0x5ceb, 0x5cec, 0x5cee, 0x5cef,
+  0x5cf1, 0x5cf2, 0x5cf3, 0x5cf4, 0x5cf5, 0x5cf6, 0x5cf7, 0x5cf8,
+  0x5cf9, 0x5cfa, 0x5cfc, 0x5cfd, 0x5cfe, 0x5cff, 0x5d00, 0x5d01,
+  0x5d04, 0x5d05, 0x5d08, 0x5d09, 0x5d0a, 0x5d0b, 0x5d0c, 0x5d0d,
+  0x5d0f, 0x5d10, 0x5d11, 0x5d12, 0x5d13, 0x5d15, 0x5d17, 0x5d18,
+  0x5d19, 0x5d1a, 0x5d1c, 0x5d1d, 0x5d1f, 0x5d20, 0x5d21, 0x5d22,
+  0x5d23, 0x5d25, 0x5d28, 0x5d2a, 0x5d2b, 0x5d2c, 0x5d2f, 0x5d30,
+  0x5d31, 0x5d32, 0x5d33, 0x5d35, 0x5d36, 0x5d37, 0x5d38, 0x5d39,
+  0x5d3a, 0x5d3b, 0x5d3c, 0x5d3f, 0x5d40, 0x5d41, 0x5d42, 0x5d43,
+  0x5d44, 0x5d45, 0x5d46, 0x5d48, 0x5d49, 0x5d4d, 0x5d4e, 0x5d4f,
+  0x5d50, 0x5d51, 0x5d52, 0x5d53, 0x5d54, 0x5d55, 0x5d56, 0x5d57,
+  0x5d59, 0x5d5a, 0x5d5c, 0x5d5e, 0x5d5f, 0x5d60, 0x5d61, 0x5d62,
+  0x5d63, 0x5d64, 0x5d65, 0x5d66, 0x5d67, 0x5d68, 0x5d6a, 0x5d6d,
+  0x5d6e, 0x5d70, 0x5d71, 0x5d72, 0x5d73, 0x5d75, 0x5d76, 0x5d77,
+  0x5d78, 0x5d79, 0x5d7a, 0x5d7b, 0x5d7c, 0x5d7d, 0x5d7e, 0x5d7f,
+  0x5d80, 0x5d81, 0x5d83, 0x5d84, 0x5d85, 0x5d86, 0x5d87, 0x5d88,
+  0x5d89, 0x5d8a, 0x5d8b, 0x5d8c, 0x5d8d, 0x5d8e, 0x5d8f, 0x5d90,
+  0x5d91, 0x5d92, 0x5d93, 0x5d94, 0x5d95, 0x5d96, 0x5d97, 0x5d98,
+  0x5d9a, 0x5d9b, 0x5d9c, 0x5d9e, 0x5d9f, 0x5da0,
+  /* 0x8e */
+  0x5da1, 0x5da2, 0x5da3, 0x5da4, 0x5da5, 0x5da6, 0x5da7, 0x5da8,
+  0x5da9, 0x5daa, 0x5dab, 0x5dac, 0x5dad, 0x5dae, 0x5daf, 0x5db0,
+  0x5db1, 0x5db2, 0x5db3, 0x5db4, 0x5db5, 0x5db6, 0x5db8, 0x5db9,
+  0x5dba, 0x5dbb, 0x5dbc, 0x5dbd, 0x5dbe, 0x5dbf, 0x5dc0, 0x5dc1,
+  0x5dc2, 0x5dc3, 0x5dc4, 0x5dc6, 0x5dc7, 0x5dc8, 0x5dc9, 0x5dca,
+  0x5dcb, 0x5dcc, 0x5dce, 0x5dcf, 0x5dd0, 0x5dd1, 0x5dd2, 0x5dd3,
+  0x5dd4, 0x5dd5, 0x5dd6, 0x5dd7, 0x5dd8, 0x5dd9, 0x5dda, 0x5ddc,
+  0x5ddf, 0x5de0, 0x5de3, 0x5de4, 0x5dea, 0x5dec, 0x5ded, 0x5df0,
+  0x5df5, 0x5df6, 0x5df8, 0x5df9, 0x5dfa, 0x5dfb, 0x5dfc, 0x5dff,
+  0x5e00, 0x5e04, 0x5e07, 0x5e09, 0x5e0a, 0x5e0b, 0x5e0d, 0x5e0e,
+  0x5e12, 0x5e13, 0x5e17, 0x5e1e, 0x5e1f, 0x5e20, 0x5e21, 0x5e22,
+  0x5e23, 0x5e24, 0x5e25, 0x5e28, 0x5e29, 0x5e2a, 0x5e2b, 0x5e2c,
+  0x5e2f, 0x5e30, 0x5e32, 0x5e33, 0x5e34, 0x5e35, 0x5e36, 0x5e39,
+  0x5e3a, 0x5e3e, 0x5e3f, 0x5e40, 0x5e41, 0x5e43, 0x5e46, 0x5e47,
+  0x5e48, 0x5e49, 0x5e4a, 0x5e4b, 0x5e4d, 0x5e4e, 0x5e4f, 0x5e50,
+  0x5e51, 0x5e52, 0x5e53, 0x5e56, 0x5e57, 0x5e58, 0x5e59, 0x5e5a,
+  0x5e5c, 0x5e5d, 0x5e5f, 0x5e60, 0x5e63, 0x5e64, 0x5e65, 0x5e66,
+  0x5e67, 0x5e68, 0x5e69, 0x5e6a, 0x5e6b, 0x5e6c, 0x5e6d, 0x5e6e,
+  0x5e6f, 0x5e70, 0x5e71, 0x5e75, 0x5e77, 0x5e79, 0x5e7e, 0x5e81,
+  0x5e82, 0x5e83, 0x5e85, 0x5e88, 0x5e89, 0x5e8c, 0x5e8d, 0x5e8e,
+  0x5e92, 0x5e98, 0x5e9b, 0x5e9d, 0x5ea1, 0x5ea2, 0x5ea3, 0x5ea4,
+  0x5ea8, 0x5ea9, 0x5eaa, 0x5eab, 0x5eac, 0x5eae, 0x5eaf, 0x5eb0,
+  0x5eb1, 0x5eb2, 0x5eb4, 0x5eba, 0x5ebb, 0x5ebc, 0x5ebd, 0x5ebf,
+  0x5ec0, 0x5ec1, 0x5ec2, 0x5ec3, 0x5ec4, 0x5ec5,
+  /* 0x8f */
+  0x5ec6, 0x5ec7, 0x5ec8, 0x5ecb, 0x5ecc, 0x5ecd, 0x5ece, 0x5ecf,
+  0x5ed0, 0x5ed4, 0x5ed5, 0x5ed7, 0x5ed8, 0x5ed9, 0x5eda, 0x5edc,
+  0x5edd, 0x5ede, 0x5edf, 0x5ee0, 0x5ee1, 0x5ee2, 0x5ee3, 0x5ee4,
+  0x5ee5, 0x5ee6, 0x5ee7, 0x5ee9, 0x5eeb, 0x5eec, 0x5eed, 0x5eee,
+  0x5eef, 0x5ef0, 0x5ef1, 0x5ef2, 0x5ef3, 0x5ef5, 0x5ef8, 0x5ef9,
+  0x5efb, 0x5efc, 0x5efd, 0x5f05, 0x5f06, 0x5f07, 0x5f09, 0x5f0c,
+  0x5f0d, 0x5f0e, 0x5f10, 0x5f12, 0x5f14, 0x5f16, 0x5f19, 0x5f1a,
+  0x5f1c, 0x5f1d, 0x5f1e, 0x5f21, 0x5f22, 0x5f23, 0x5f24, 0x5f28,
+  0x5f2b, 0x5f2c, 0x5f2e, 0x5f30, 0x5f32, 0x5f33, 0x5f34, 0x5f35,
+  0x5f36, 0x5f37, 0x5f38, 0x5f3b, 0x5f3d, 0x5f3e, 0x5f3f, 0x5f41,
+  0x5f42, 0x5f43, 0x5f44, 0x5f45, 0x5f46, 0x5f47, 0x5f48, 0x5f49,
+  0x5f4a, 0x5f4b, 0x5f4c, 0x5f4d, 0x5f4e, 0x5f4f, 0x5f51, 0x5f54,
+  0x5f59, 0x5f5a, 0x5f5b, 0x5f5c, 0x5f5e, 0x5f5f, 0x5f60, 0x5f63,
+  0x5f65, 0x5f67, 0x5f68, 0x5f6b, 0x5f6e, 0x5f6f, 0x5f72, 0x5f74,
+  0x5f75, 0x5f76, 0x5f78, 0x5f7a, 0x5f7d, 0x5f7e, 0x5f7f, 0x5f83,
+  0x5f86, 0x5f8d, 0x5f8e, 0x5f8f, 0x5f91, 0x5f93, 0x5f94, 0x5f96,
+  0x5f9a, 0x5f9b, 0x5f9d, 0x5f9e, 0x5f9f, 0x5fa0, 0x5fa2, 0x5fa3,
+  0x5fa4, 0x5fa5, 0x5fa6, 0x5fa7, 0x5fa9, 0x5fab, 0x5fac, 0x5faf,
+  0x5fb0, 0x5fb1, 0x5fb2, 0x5fb3, 0x5fb4, 0x5fb6, 0x5fb8, 0x5fb9,
+  0x5fba, 0x5fbb, 0x5fbe, 0x5fbf, 0x5fc0, 0x5fc1, 0x5fc2, 0x5fc7,
+  0x5fc8, 0x5fca, 0x5fcb, 0x5fce, 0x5fd3, 0x5fd4, 0x5fd5, 0x5fda,
+  0x5fdb, 0x5fdc, 0x5fde, 0x5fdf, 0x5fe2, 0x5fe3, 0x5fe5, 0x5fe6,
+  0x5fe8, 0x5fe9, 0x5fec, 0x5fef, 0x5ff0, 0x5ff2, 0x5ff3, 0x5ff4,
+  0x5ff6, 0x5ff7, 0x5ff9, 0x5ffa, 0x5ffc, 0x6007,
+  /* 0x90 */
+  0x6008, 0x6009, 0x600b, 0x600c, 0x6010, 0x6011, 0x6013, 0x6017,
+  0x6018, 0x601a, 0x601e, 0x601f, 0x6022, 0x6023, 0x6024, 0x602c,
+  0x602d, 0x602e, 0x6030, 0x6031, 0x6032, 0x6033, 0x6034, 0x6036,
+  0x6037, 0x6038, 0x6039, 0x603a, 0x603d, 0x603e, 0x6040, 0x6044,
+  0x6045, 0x6046, 0x6047, 0x6048, 0x6049, 0x604a, 0x604c, 0x604e,
+  0x604f, 0x6051, 0x6053, 0x6054, 0x6056, 0x6057, 0x6058, 0x605b,
+  0x605c, 0x605e, 0x605f, 0x6060, 0x6061, 0x6065, 0x6066, 0x606e,
+  0x6071, 0x6072, 0x6074, 0x6075, 0x6077, 0x607e, 0x6080, 0x6081,
+  0x6082, 0x6085, 0x6086, 0x6087, 0x6088, 0x608a, 0x608b, 0x608e,
+  0x608f, 0x6090, 0x6091, 0x6093, 0x6095, 0x6097, 0x6098, 0x6099,
+  0x609c, 0x609e, 0x60a1, 0x60a2, 0x60a4, 0x60a5, 0x60a7, 0x60a9,
+  0x60aa, 0x60ae, 0x60b0, 0x60b3, 0x60b5, 0x60b6, 0x60b7, 0x60b9,
+  0x60ba, 0x60bd, 0x60be, 0x60bf, 0x60c0, 0x60c1, 0x60c2, 0x60c3,
+  0x60c4, 0x60c7, 0x60c8, 0x60c9, 0x60cc, 0x60cd, 0x60ce, 0x60cf,
+  0x60d0, 0x60d2, 0x60d3, 0x60d4, 0x60d6, 0x60d7, 0x60d9, 0x60db,
+  0x60de, 0x60e1, 0x60e2, 0x60e3, 0x60e4, 0x60e5, 0x60ea, 0x60f1,
+  0x60f2, 0x60f5, 0x60f7, 0x60f8, 0x60fb, 0x60fc, 0x60fd, 0x60fe,
+  0x60ff, 0x6102, 0x6103, 0x6104, 0x6105, 0x6107, 0x610a, 0x610b,
+  0x610c, 0x6110, 0x6111, 0x6112, 0x6113, 0x6114, 0x6116, 0x6117,
+  0x6118, 0x6119, 0x611b, 0x611c, 0x611d, 0x611e, 0x6121, 0x6122,
+  0x6125, 0x6128, 0x6129, 0x612a, 0x612c, 0x612d, 0x612e, 0x612f,
+  0x6130, 0x6131, 0x6132, 0x6133, 0x6134, 0x6135, 0x6136, 0x6137,
+  0x6138, 0x6139, 0x613a, 0x613b, 0x613c, 0x613d, 0x613e, 0x6140,
+  0x6141, 0x6142, 0x6143, 0x6144, 0x6145, 0x6146,
+  /* 0x91 */
+  0x6147, 0x6149, 0x614b, 0x614d, 0x614f, 0x6150, 0x6152, 0x6153,
+  0x6154, 0x6156, 0x6157, 0x6158, 0x6159, 0x615a, 0x615b, 0x615c,
+  0x615e, 0x615f, 0x6160, 0x6161, 0x6163, 0x6164, 0x6165, 0x6166,
+  0x6169, 0x616a, 0x616b, 0x616c, 0x616d, 0x616e, 0x616f, 0x6171,
+  0x6172, 0x6173, 0x6174, 0x6176, 0x6178, 0x6179, 0x617a, 0x617b,
+  0x617c, 0x617d, 0x617e, 0x617f, 0x6180, 0x6181, 0x6182, 0x6183,
+  0x6184, 0x6185, 0x6186, 0x6187, 0x6188, 0x6189, 0x618a, 0x618c,
+  0x618d, 0x618f, 0x6190, 0x6191, 0x6192, 0x6193, 0x6195, 0x6196,
+  0x6197, 0x6198, 0x6199, 0x619a, 0x619b, 0x619c, 0x619e, 0x619f,
+  0x61a0, 0x61a1, 0x61a2, 0x61a3, 0x61a4, 0x61a5, 0x61a6, 0x61aa,
+  0x61ab, 0x61ad, 0x61ae, 0x61af, 0x61b0, 0x61b1, 0x61b2, 0x61b3,
+  0x61b4, 0x61b5, 0x61b6, 0x61b8, 0x61b9, 0x61ba, 0x61bb, 0x61bc,
+  0x61bd, 0x61bf, 0x61c0, 0x61c1, 0x61c3, 0x61c4, 0x61c5, 0x61c6,
+  0x61c7, 0x61c9, 0x61cc, 0x61cd, 0x61ce, 0x61cf, 0x61d0, 0x61d3,
+  0x61d5, 0x61d6, 0x61d7, 0x61d8, 0x61d9, 0x61da, 0x61db, 0x61dc,
+  0x61dd, 0x61de, 0x61df, 0x61e0, 0x61e1, 0x61e2, 0x61e3, 0x61e4,
+  0x61e5, 0x61e7, 0x61e8, 0x61e9, 0x61ea, 0x61eb, 0x61ec, 0x61ed,
+  0x61ee, 0x61ef, 0x61f0, 0x61f1, 0x61f2, 0x61f3, 0x61f4, 0x61f6,
+  0x61f7, 0x61f8, 0x61f9, 0x61fa, 0x61fb, 0x61fc, 0x61fd, 0x61fe,
+  0x6200, 0x6201, 0x6202, 0x6203, 0x6204, 0x6205, 0x6207, 0x6209,
+  0x6213, 0x6214, 0x6219, 0x621c, 0x621d, 0x621e, 0x6220, 0x6223,
+  0x6226, 0x6227, 0x6228, 0x6229, 0x622b, 0x622d, 0x622f, 0x6230,
+  0x6231, 0x6232, 0x6235, 0x6236, 0x6238, 0x6239, 0x623a, 0x623b,
+  0x623c, 0x6242, 0x6244, 0x6245, 0x6246, 0x624a,
+  /* 0x92 */
+  0x624f, 0x6250, 0x6255, 0x6256, 0x6257, 0x6259, 0x625a, 0x625c,
+  0x625d, 0x625e, 0x625f, 0x6260, 0x6261, 0x6262, 0x6264, 0x6265,
+  0x6268, 0x6271, 0x6272, 0x6274, 0x6275, 0x6277, 0x6278, 0x627a,
+  0x627b, 0x627d, 0x6281, 0x6282, 0x6283, 0x6285, 0x6286, 0x6287,
+  0x6288, 0x628b, 0x628c, 0x628d, 0x628e, 0x628f, 0x6290, 0x6294,
+  0x6299, 0x629c, 0x629d, 0x629e, 0x62a3, 0x62a6, 0x62a7, 0x62a9,
+  0x62aa, 0x62ad, 0x62ae, 0x62af, 0x62b0, 0x62b2, 0x62b3, 0x62b4,
+  0x62b6, 0x62b7, 0x62b8, 0x62ba, 0x62be, 0x62c0, 0x62c1, 0x62c3,
+  0x62cb, 0x62cf, 0x62d1, 0x62d5, 0x62dd, 0x62de, 0x62e0, 0x62e1,
+  0x62e4, 0x62ea, 0x62eb, 0x62f0, 0x62f2, 0x62f5, 0x62f8, 0x62f9,
+  0x62fa, 0x62fb, 0x6300, 0x6303, 0x6304, 0x6305, 0x6306, 0x630a,
+  0x630b, 0x630c, 0x630d, 0x630f, 0x6310, 0x6312, 0x6313, 0x6314,
+  0x6315, 0x6317, 0x6318, 0x6319, 0x631c, 0x6326, 0x6327, 0x6329,
+  0x632c, 0x632d, 0x632e, 0x6330, 0x6331, 0x6333, 0x6334, 0x6335,
+  0x6336, 0x6337, 0x6338, 0x633b, 0x633c, 0x633e, 0x633f, 0x6340,
+  0x6341, 0x6344, 0x6347, 0x6348, 0x634a, 0x6351, 0x6352, 0x6353,
+  0x6354, 0x6356, 0x6357, 0x6358, 0x6359, 0x635a, 0x635b, 0x635c,
+  0x635d, 0x6360, 0x6364, 0x6365, 0x6366, 0x6368, 0x636a, 0x636b,
+  0x636c, 0x636f, 0x6370, 0x6372, 0x6373, 0x6374, 0x6375, 0x6378,
+  0x6379, 0x637c, 0x637d, 0x637e, 0x637f, 0x6381, 0x6383, 0x6384,
+  0x6385, 0x6386, 0x638b, 0x638d, 0x6391, 0x6393, 0x6394, 0x6395,
+  0x6397, 0x6399, 0x639a, 0x639b, 0x639c, 0x639d, 0x639e, 0x639f,
+  0x63a1, 0x63a4, 0x63a6, 0x63ab, 0x63af, 0x63b1, 0x63b2, 0x63b5,
+  0x63b6, 0x63b9, 0x63bb, 0x63bd, 0x63bf, 0x63c0,
+  /* 0x93 */
+  0x63c1, 0x63c2, 0x63c3, 0x63c5, 0x63c7, 0x63c8, 0x63ca, 0x63cb,
+  0x63cc, 0x63d1, 0x63d3, 0x63d4, 0x63d5, 0x63d7, 0x63d8, 0x63d9,
+  0x63da, 0x63db, 0x63dc, 0x63dd, 0x63df, 0x63e2, 0x63e4, 0x63e5,
+  0x63e6, 0x63e7, 0x63e8, 0x63eb, 0x63ec, 0x63ee, 0x63ef, 0x63f0,
+  0x63f1, 0x63f3, 0x63f5, 0x63f7, 0x63f9, 0x63fa, 0x63fb, 0x63fc,
+  0x63fe, 0x6403, 0x6404, 0x6406, 0x6407, 0x6408, 0x6409, 0x640a,
+  0x640d, 0x640e, 0x6411, 0x6412, 0x6415, 0x6416, 0x6417, 0x6418,
+  0x6419, 0x641a, 0x641d, 0x641f, 0x6422, 0x6423, 0x6424, 0x6425,
+  0x6427, 0x6428, 0x6429, 0x642b, 0x642e, 0x642f, 0x6430, 0x6431,
+  0x6432, 0x6433, 0x6435, 0x6436, 0x6437, 0x6438, 0x6439, 0x643b,
+  0x643c, 0x643e, 0x6440, 0x6442, 0x6443, 0x6449, 0x644b, 0x644c,
+  0x644d, 0x644e, 0x644f, 0x6450, 0x6451, 0x6453, 0x6455, 0x6456,
+  0x6457, 0x6459, 0x645a, 0x645b, 0x645c, 0x645d, 0x645f, 0x6460,
+  0x6461, 0x6462, 0x6463, 0x6464, 0x6465, 0x6466, 0x6468, 0x646a,
+  0x646b, 0x646c, 0x646e, 0x646f, 0x6470, 0x6471, 0x6472, 0x6473,
+  0x6474, 0x6475, 0x6476, 0x6477, 0x647b, 0x647c, 0x647d, 0x647e,
+  0x647f, 0x6480, 0x6481, 0x6483, 0x6486, 0x6488, 0x6489, 0x648a,
+  0x648b, 0x648c, 0x648d, 0x648e, 0x648f, 0x6490, 0x6493, 0x6494,
+  0x6497, 0x6498, 0x649a, 0x649b, 0x649c, 0x649d, 0x649f, 0x64a0,
+  0x64a1, 0x64a2, 0x64a3, 0x64a5, 0x64a6, 0x64a7, 0x64a8, 0x64aa,
+  0x64ab, 0x64af, 0x64b1, 0x64b2, 0x64b3, 0x64b4, 0x64b6, 0x64b9,
+  0x64bb, 0x64bd, 0x64be, 0x64bf, 0x64c1, 0x64c3, 0x64c4, 0x64c6,
+  0x64c7, 0x64c8, 0x64c9, 0x64ca, 0x64cb, 0x64cc, 0x64cf, 0x64d1,
+  0x64d3, 0x64d4, 0x64d5, 0x64d6, 0x64d9, 0x64da,
+  /* 0x94 */
+  0x64db, 0x64dc, 0x64dd, 0x64df, 0x64e0, 0x64e1, 0x64e3, 0x64e5,
+  0x64e7, 0x64e8, 0x64e9, 0x64ea, 0x64eb, 0x64ec, 0x64ed, 0x64ee,
+  0x64ef, 0x64f0, 0x64f1, 0x64f2, 0x64f3, 0x64f4, 0x64f5, 0x64f6,
+  0x64f7, 0x64f8, 0x64f9, 0x64fa, 0x64fb, 0x64fc, 0x64fd, 0x64fe,
+  0x64ff, 0x6501, 0x6502, 0x6503, 0x6504, 0x6505, 0x6506, 0x6507,
+  0x6508, 0x650a, 0x650b, 0x650c, 0x650d, 0x650e, 0x650f, 0x6510,
+  0x6511, 0x6513, 0x6514, 0x6515, 0x6516, 0x6517, 0x6519, 0x651a,
+  0x651b, 0x651c, 0x651d, 0x651e, 0x651f, 0x6520, 0x6521, 0x6522,
+  0x6523, 0x6524, 0x6526, 0x6527, 0x6528, 0x6529, 0x652a, 0x652c,
+  0x652d, 0x6530, 0x6531, 0x6532, 0x6533, 0x6537, 0x653a, 0x653c,
+  0x653d, 0x6540, 0x6541, 0x6542, 0x6543, 0x6544, 0x6546, 0x6547,
+  0x654a, 0x654b, 0x654d, 0x654e, 0x6550, 0x6552, 0x6553, 0x6554,
+  0x6557, 0x6558, 0x655a, 0x655c, 0x655f, 0x6560, 0x6561, 0x6564,
+  0x6565, 0x6567, 0x6568, 0x6569, 0x656a, 0x656d, 0x656e, 0x656f,
+  0x6571, 0x6573, 0x6575, 0x6576, 0x6578, 0x6579, 0x657a, 0x657b,
+  0x657c, 0x657d, 0x657e, 0x657f, 0x6580, 0x6581, 0x6582, 0x6583,
+  0x6584, 0x6585, 0x6586, 0x6588, 0x6589, 0x658a, 0x658d, 0x658e,
+  0x658f, 0x6592, 0x6594, 0x6595, 0x6596, 0x6598, 0x659a, 0x659d,
+  0x659e, 0x65a0, 0x65a2, 0x65a3, 0x65a6, 0x65a8, 0x65aa, 0x65ac,
+  0x65ae, 0x65b1, 0x65b2, 0x65b3, 0x65b4, 0x65b5, 0x65b6, 0x65b7,
+  0x65b8, 0x65ba, 0x65bb, 0x65be, 0x65bf, 0x65c0, 0x65c2, 0x65c7,
+  0x65c8, 0x65c9, 0x65ca, 0x65cd, 0x65d0, 0x65d1, 0x65d3, 0x65d4,
+  0x65d5, 0x65d8, 0x65d9, 0x65da, 0x65db, 0x65dc, 0x65dd, 0x65de,
+  0x65df, 0x65e1, 0x65e3, 0x65e4, 0x65ea, 0x65eb,
+  /* 0x95 */
+  0x65f2, 0x65f3, 0x65f4, 0x65f5, 0x65f8, 0x65f9, 0x65fb, 0x65fc,
+  0x65fd, 0x65fe, 0x65ff, 0x6601, 0x6604, 0x6605, 0x6607, 0x6608,
+  0x6609, 0x660b, 0x660d, 0x6610, 0x6611, 0x6612, 0x6616, 0x6617,
+  0x6618, 0x661a, 0x661b, 0x661c, 0x661e, 0x6621, 0x6622, 0x6623,
+  0x6624, 0x6626, 0x6629, 0x662a, 0x662b, 0x662c, 0x662e, 0x6630,
+  0x6632, 0x6633, 0x6637, 0x6638, 0x6639, 0x663a, 0x663b, 0x663d,
+  0x663f, 0x6640, 0x6642, 0x6644, 0x6645, 0x6646, 0x6647, 0x6648,
+  0x6649, 0x664a, 0x664d, 0x664e, 0x6650, 0x6651, 0x6658, 0x6659,
+  0x665b, 0x665c, 0x665d, 0x665e, 0x6660, 0x6662, 0x6663, 0x6665,
+  0x6667, 0x6669, 0x666a, 0x666b, 0x666c, 0x666d, 0x6671, 0x6672,
+  0x6673, 0x6675, 0x6678, 0x6679, 0x667b, 0x667c, 0x667d, 0x667f,
+  0x6680, 0x6681, 0x6683, 0x6685, 0x6686, 0x6688, 0x6689, 0x668a,
+  0x668b, 0x668d, 0x668e, 0x668f, 0x6690, 0x6692, 0x6693, 0x6694,
+  0x6695, 0x6698, 0x6699, 0x669a, 0x669b, 0x669c, 0x669e, 0x669f,
+  0x66a0, 0x66a1, 0x66a2, 0x66a3, 0x66a4, 0x66a5, 0x66a6, 0x66a9,
+  0x66aa, 0x66ab, 0x66ac, 0x66ad, 0x66af, 0x66b0, 0x66b1, 0x66b2,
+  0x66b3, 0x66b5, 0x66b6, 0x66b7, 0x66b8, 0x66ba, 0x66bb, 0x66bc,
+  0x66bd, 0x66bf, 0x66c0, 0x66c1, 0x66c2, 0x66c3, 0x66c4, 0x66c5,
+  0x66c6, 0x66c7, 0x66c8, 0x66c9, 0x66ca, 0x66cb, 0x66cc, 0x66cd,
+  0x66ce, 0x66cf, 0x66d0, 0x66d1, 0x66d2, 0x66d3, 0x66d4, 0x66d5,
+  0x66d6, 0x66d7, 0x66d8, 0x66da, 0x66de, 0x66df, 0x66e0, 0x66e1,
+  0x66e2, 0x66e3, 0x66e4, 0x66e5, 0x66e7, 0x66e8, 0x66ea, 0x66eb,
+  0x66ec, 0x66ed, 0x66ee, 0x66ef, 0x66f1, 0x66f5, 0x66f6, 0x66f8,
+  0x66fa, 0x66fb, 0x66fd, 0x6701, 0x6702, 0x6703,
+  /* 0x96 */
+  0x6704, 0x6705, 0x6706, 0x6707, 0x670c, 0x670e, 0x670f, 0x6711,
+  0x6712, 0x6713, 0x6716, 0x6718, 0x6719, 0x671a, 0x671c, 0x671e,
+  0x6720, 0x6721, 0x6722, 0x6723, 0x6724, 0x6725, 0x6727, 0x6729,
+  0x672e, 0x6730, 0x6732, 0x6733, 0x6736, 0x6737, 0x6738, 0x6739,
+  0x673b, 0x673c, 0x673e, 0x673f, 0x6741, 0x6744, 0x6745, 0x6747,
+  0x674a, 0x674b, 0x674d, 0x6752, 0x6754, 0x6755, 0x6757, 0x6758,
+  0x6759, 0x675a, 0x675b, 0x675d, 0x6762, 0x6763, 0x6764, 0x6766,
+  0x6767, 0x676b, 0x676c, 0x676e, 0x6771, 0x6774, 0x6776, 0x6778,
+  0x6779, 0x677a, 0x677b, 0x677d, 0x6780, 0x6782, 0x6783, 0x6785,
+  0x6786, 0x6788, 0x678a, 0x678c, 0x678d, 0x678e, 0x678f, 0x6791,
+  0x6792, 0x6793, 0x6794, 0x6796, 0x6799, 0x679b, 0x679f, 0x67a0,
+  0x67a1, 0x67a4, 0x67a6, 0x67a9, 0x67ac, 0x67ae, 0x67b1, 0x67b2,
+  0x67b4, 0x67b9, 0x67ba, 0x67bb, 0x67bc, 0x67bd, 0x67be, 0x67bf,
+  0x67c0, 0x67c2, 0x67c5, 0x67c6, 0x67c7, 0x67c8, 0x67c9, 0x67ca,
+  0x67cb, 0x67cc, 0x67cd, 0x67ce, 0x67d5, 0x67d6, 0x67d7, 0x67db,
+  0x67df, 0x67e1, 0x67e3, 0x67e4, 0x67e6, 0x67e7, 0x67e8, 0x67ea,
+  0x67eb, 0x67ed, 0x67ee, 0x67f2, 0x67f5, 0x67f6, 0x67f7, 0x67f8,
+  0x67f9, 0x67fa, 0x67fb, 0x67fc, 0x67fe, 0x6801, 0x6802, 0x6803,
+  0x6804, 0x6806, 0x680d, 0x6810, 0x6812, 0x6814, 0x6815, 0x6818,
+  0x6819, 0x681a, 0x681b, 0x681c, 0x681e, 0x681f, 0x6820, 0x6822,
+  0x6823, 0x6824, 0x6825, 0x6826, 0x6827, 0x6828, 0x682b, 0x682c,
+  0x682d, 0x682e, 0x682f, 0x6830, 0x6831, 0x6834, 0x6835, 0x6836,
+  0x683a, 0x683b, 0x683f, 0x6847, 0x684b, 0x684d, 0x684f, 0x6852,
+  0x6856, 0x6857, 0x6858, 0x6859, 0x685a, 0x685b,
+  /* 0x97 */
+  0x685c, 0x685d, 0x685e, 0x685f, 0x686a, 0x686c, 0x686d, 0x686e,
+  0x686f, 0x6870, 0x6871, 0x6872, 0x6873, 0x6875, 0x6878, 0x6879,
+  0x687a, 0x687b, 0x687c, 0x687d, 0x687e, 0x687f, 0x6880, 0x6882,
+  0x6884, 0x6887, 0x6888, 0x6889, 0x688a, 0x688b, 0x688c, 0x688d,
+  0x688e, 0x6890, 0x6891, 0x6892, 0x6894, 0x6895, 0x6896, 0x6898,
+  0x6899, 0x689a, 0x689b, 0x689c, 0x689d, 0x689e, 0x689f, 0x68a0,
+  0x68a1, 0x68a3, 0x68a4, 0x68a5, 0x68a9, 0x68aa, 0x68ab, 0x68ac,
+  0x68ae, 0x68b1, 0x68b2, 0x68b4, 0x68b6, 0x68b7, 0x68b8, 0x68b9,
+  0x68ba, 0x68bb, 0x68bc, 0x68bd, 0x68be, 0x68bf, 0x68c1, 0x68c3,
+  0x68c4, 0x68c5, 0x68c6, 0x68c7, 0x68c8, 0x68ca, 0x68cc, 0x68ce,
+  0x68cf, 0x68d0, 0x68d1, 0x68d3, 0x68d4, 0x68d6, 0x68d7, 0x68d9,
+  0x68db, 0x68dc, 0x68dd, 0x68de, 0x68df, 0x68e1, 0x68e2, 0x68e4,
+  0x68e5, 0x68e6, 0x68e7, 0x68e8, 0x68e9, 0x68ea, 0x68eb, 0x68ec,
+  0x68ed, 0x68ef, 0x68f2, 0x68f3, 0x68f4, 0x68f6, 0x68f7, 0x68f8,
+  0x68fb, 0x68fd, 0x68fe, 0x68ff, 0x6900, 0x6902, 0x6903, 0x6904,
+  0x6906, 0x6907, 0x6908, 0x6909, 0x690a, 0x690c, 0x690f, 0x6911,
+  0x6913, 0x6914, 0x6915, 0x6916, 0x6917, 0x6918, 0x6919, 0x691a,
+  0x691b, 0x691c, 0x691d, 0x691e, 0x6921, 0x6922, 0x6923, 0x6925,
+  0x6926, 0x6927, 0x6928, 0x6929, 0x692a, 0x692b, 0x692c, 0x692e,
+  0x692f, 0x6931, 0x6932, 0x6933, 0x6935, 0x6936, 0x6937, 0x6938,
+  0x693a, 0x693b, 0x693c, 0x693e, 0x6940, 0x6941, 0x6943, 0x6944,
+  0x6945, 0x6946, 0x6947, 0x6948, 0x6949, 0x694a, 0x694b, 0x694c,
+  0x694d, 0x694e, 0x694f, 0x6950, 0x6951, 0x6952, 0x6953, 0x6955,
+  0x6956, 0x6958, 0x6959, 0x695b, 0x695c, 0x695f,
+  /* 0x98 */
+  0x6961, 0x6962, 0x6964, 0x6965, 0x6967, 0x6968, 0x6969, 0x696a,
+  0x696c, 0x696d, 0x696f, 0x6970, 0x6972, 0x6973, 0x6974, 0x6975,
+  0x6976, 0x697a, 0x697b, 0x697d, 0x697e, 0x697f, 0x6981, 0x6983,
+  0x6985, 0x698a, 0x698b, 0x698c, 0x698e, 0x698f, 0x6990, 0x6991,
+  0x6992, 0x6993, 0x6996, 0x6997, 0x6999, 0x699a, 0x699d, 0x699e,
+  0x699f, 0x69a0, 0x69a1, 0x69a2, 0x69a3, 0x69a4, 0x69a5, 0x69a6,
+  0x69a9, 0x69aa, 0x69ac, 0x69ae, 0x69af, 0x69b0, 0x69b2, 0x69b3,
+  0x69b5, 0x69b6, 0x69b8, 0x69b9, 0x69ba, 0x69bc, 0x69bd, 0x69be,
+  0x69bf, 0x69c0, 0x69c2, 0x69c3, 0x69c4, 0x69c5, 0x69c6, 0x69c7,
+  0x69c8, 0x69c9, 0x69cb, 0x69cd, 0x69cf, 0x69d1, 0x69d2, 0x69d3,
+  0x69d5, 0x69d6, 0x69d7, 0x69d8, 0x69d9, 0x69da, 0x69dc, 0x69dd,
+  0x69de, 0x69e1, 0x69e2, 0x69e3, 0x69e4, 0x69e5, 0x69e6, 0x69e7,
+  0x69e8, 0x69e9, 0x69ea, 0x69eb, 0x69ec, 0x69ee, 0x69ef, 0x69f0,
+  0x69f1, 0x69f3, 0x69f4, 0x69f5, 0x69f6, 0x69f7, 0x69f8, 0x69f9,
+  0x69fa, 0x69fb, 0x69fc, 0x69fe, 0x6a00, 0x6a01, 0x6a02, 0x6a03,
+  0x6a04, 0x6a05, 0x6a06, 0x6a07, 0x6a08, 0x6a09, 0x6a0b, 0x6a0c,
+  0x6a0d, 0x6a0e, 0x6a0f, 0x6a10, 0x6a11, 0x6a12, 0x6a13, 0x6a14,
+  0x6a15, 0x6a16, 0x6a19, 0x6a1a, 0x6a1b, 0x6a1c, 0x6a1d, 0x6a1e,
+  0x6a20, 0x6a22, 0x6a23, 0x6a24, 0x6a25, 0x6a26, 0x6a27, 0x6a29,
+  0x6a2b, 0x6a2c, 0x6a2d, 0x6a2e, 0x6a30, 0x6a32, 0x6a33, 0x6a34,
+  0x6a36, 0x6a37, 0x6a38, 0x6a39, 0x6a3a, 0x6a3b, 0x6a3c, 0x6a3f,
+  0x6a40, 0x6a41, 0x6a42, 0x6a43, 0x6a45, 0x6a46, 0x6a48, 0x6a49,
+  0x6a4a, 0x6a4b, 0x6a4c, 0x6a4d, 0x6a4e, 0x6a4f, 0x6a51, 0x6a52,
+  0x6a53, 0x6a54, 0x6a55, 0x6a56, 0x6a57, 0x6a5a,
+  /* 0x99 */
+  0x6a5c, 0x6a5d, 0x6a5e, 0x6a5f, 0x6a60, 0x6a62, 0x6a63, 0x6a64,
+  0x6a66, 0x6a67, 0x6a68, 0x6a69, 0x6a6a, 0x6a6b, 0x6a6c, 0x6a6d,
+  0x6a6e, 0x6a6f, 0x6a70, 0x6a72, 0x6a73, 0x6a74, 0x6a75, 0x6a76,
+  0x6a77, 0x6a78, 0x6a7a, 0x6a7b, 0x6a7d, 0x6a7e, 0x6a7f, 0x6a81,
+  0x6a82, 0x6a83, 0x6a85, 0x6a86, 0x6a87, 0x6a88, 0x6a89, 0x6a8a,
+  0x6a8b, 0x6a8c, 0x6a8d, 0x6a8f, 0x6a92, 0x6a93, 0x6a94, 0x6a95,
+  0x6a96, 0x6a98, 0x6a99, 0x6a9a, 0x6a9b, 0x6a9c, 0x6a9d, 0x6a9e,
+  0x6a9f, 0x6aa1, 0x6aa2, 0x6aa3, 0x6aa4, 0x6aa5, 0x6aa6, 0x6aa7,
+  0x6aa8, 0x6aaa, 0x6aad, 0x6aae, 0x6aaf, 0x6ab0, 0x6ab1, 0x6ab2,
+  0x6ab3, 0x6ab4, 0x6ab5, 0x6ab6, 0x6ab7, 0x6ab8, 0x6ab9, 0x6aba,
+  0x6abb, 0x6abc, 0x6abd, 0x6abe, 0x6abf, 0x6ac0, 0x6ac1, 0x6ac2,
+  0x6ac3, 0x6ac4, 0x6ac5, 0x6ac6, 0x6ac7, 0x6ac8, 0x6ac9, 0x6aca,
+  0x6acb, 0x6acc, 0x6acd, 0x6ace, 0x6acf, 0x6ad0, 0x6ad1, 0x6ad2,
+  0x6ad3, 0x6ad4, 0x6ad5, 0x6ad6, 0x6ad7, 0x6ad8, 0x6ad9, 0x6ada,
+  0x6adb, 0x6adc, 0x6add, 0x6ade, 0x6adf, 0x6ae0, 0x6ae1, 0x6ae2,
+  0x6ae3, 0x6ae4, 0x6ae5, 0x6ae6, 0x6ae7, 0x6ae8, 0x6ae9, 0x6aea,
+  0x6aeb, 0x6aec, 0x6aed, 0x6aee, 0x6aef, 0x6af0, 0x6af1, 0x6af2,
+  0x6af3, 0x6af4, 0x6af5, 0x6af6, 0x6af7, 0x6af8, 0x6af9, 0x6afa,
+  0x6afb, 0x6afc, 0x6afd, 0x6afe, 0x6aff, 0x6b00, 0x6b01, 0x6b02,
+  0x6b03, 0x6b04, 0x6b05, 0x6b06, 0x6b07, 0x6b08, 0x6b09, 0x6b0a,
+  0x6b0b, 0x6b0c, 0x6b0d, 0x6b0e, 0x6b0f, 0x6b10, 0x6b11, 0x6b12,
+  0x6b13, 0x6b14, 0x6b15, 0x6b16, 0x6b17, 0x6b18, 0x6b19, 0x6b1a,
+  0x6b1b, 0x6b1c, 0x6b1d, 0x6b1e, 0x6b1f, 0x6b25, 0x6b26, 0x6b28,
+  0x6b29, 0x6b2a, 0x6b2b, 0x6b2c, 0x6b2d, 0x6b2e,
+  /* 0x9a */
+  0x6b2f, 0x6b30, 0x6b31, 0x6b33, 0x6b34, 0x6b35, 0x6b36, 0x6b38,
+  0x6b3b, 0x6b3c, 0x6b3d, 0x6b3f, 0x6b40, 0x6b41, 0x6b42, 0x6b44,
+  0x6b45, 0x6b48, 0x6b4a, 0x6b4b, 0x6b4d, 0x6b4e, 0x6b4f, 0x6b50,
+  0x6b51, 0x6b52, 0x6b53, 0x6b54, 0x6b55, 0x6b56, 0x6b57, 0x6b58,
+  0x6b5a, 0x6b5b, 0x6b5c, 0x6b5d, 0x6b5e, 0x6b5f, 0x6b60, 0x6b61,
+  0x6b68, 0x6b69, 0x6b6b, 0x6b6c, 0x6b6d, 0x6b6e, 0x6b6f, 0x6b70,
+  0x6b71, 0x6b72, 0x6b73, 0x6b74, 0x6b75, 0x6b76, 0x6b77, 0x6b78,
+  0x6b7a, 0x6b7d, 0x6b7e, 0x6b7f, 0x6b80, 0x6b85, 0x6b88, 0x6b8c,
+  0x6b8e, 0x6b8f, 0x6b90, 0x6b91, 0x6b94, 0x6b95, 0x6b97, 0x6b98,
+  0x6b99, 0x6b9c, 0x6b9d, 0x6b9e, 0x6b9f, 0x6ba0, 0x6ba2, 0x6ba3,
+  0x6ba4, 0x6ba5, 0x6ba6, 0x6ba7, 0x6ba8, 0x6ba9, 0x6bab, 0x6bac,
+  0x6bad, 0x6bae, 0x6baf, 0x6bb0, 0x6bb1, 0x6bb2, 0x6bb6, 0x6bb8,
+  0x6bb9, 0x6bba, 0x6bbb, 0x6bbc, 0x6bbd, 0x6bbe, 0x6bc0, 0x6bc3,
+  0x6bc4, 0x6bc6, 0x6bc7, 0x6bc8, 0x6bc9, 0x6bca, 0x6bcc, 0x6bce,
+  0x6bd0, 0x6bd1, 0x6bd8, 0x6bda, 0x6bdc, 0x6bdd, 0x6bde, 0x6bdf,
+  0x6be0, 0x6be2, 0x6be3, 0x6be4, 0x6be5, 0x6be6, 0x6be7, 0x6be8,
+  0x6be9, 0x6bec, 0x6bed, 0x6bee, 0x6bf0, 0x6bf1, 0x6bf2, 0x6bf4,
+  0x6bf6, 0x6bf7, 0x6bf8, 0x6bfa, 0x6bfb, 0x6bfc, 0x6bfe, 0x6bff,
+  0x6c00, 0x6c01, 0x6c02, 0x6c03, 0x6c04, 0x6c08, 0x6c09, 0x6c0a,
+  0x6c0b, 0x6c0c, 0x6c0e, 0x6c12, 0x6c17, 0x6c1c, 0x6c1d, 0x6c1e,
+  0x6c20, 0x6c23, 0x6c25, 0x6c2b, 0x6c2c, 0x6c2d, 0x6c31, 0x6c33,
+  0x6c36, 0x6c37, 0x6c39, 0x6c3a, 0x6c3b, 0x6c3c, 0x6c3e, 0x6c3f,
+  0x6c43, 0x6c44, 0x6c45, 0x6c48, 0x6c4b, 0x6c4c, 0x6c4d, 0x6c4e,
+  0x6c4f, 0x6c51, 0x6c52, 0x6c53, 0x6c56, 0x6c58,
+  /* 0x9b */
+  0x6c59, 0x6c5a, 0x6c62, 0x6c63, 0x6c65, 0x6c66, 0x6c67, 0x6c6b,
+  0x6c6c, 0x6c6d, 0x6c6e, 0x6c6f, 0x6c71, 0x6c73, 0x6c75, 0x6c77,
+  0x6c78, 0x6c7a, 0x6c7b, 0x6c7c, 0x6c7f, 0x6c80, 0x6c84, 0x6c87,
+  0x6c8a, 0x6c8b, 0x6c8d, 0x6c8e, 0x6c91, 0x6c92, 0x6c95, 0x6c96,
+  0x6c97, 0x6c98, 0x6c9a, 0x6c9c, 0x6c9d, 0x6c9e, 0x6ca0, 0x6ca2,
+  0x6ca8, 0x6cac, 0x6caf, 0x6cb0, 0x6cb4, 0x6cb5, 0x6cb6, 0x6cb7,
+  0x6cba, 0x6cc0, 0x6cc1, 0x6cc2, 0x6cc3, 0x6cc6, 0x6cc7, 0x6cc8,
+  0x6ccb, 0x6ccd, 0x6cce, 0x6ccf, 0x6cd1, 0x6cd2, 0x6cd8, 0x6cd9,
+  0x6cda, 0x6cdc, 0x6cdd, 0x6cdf, 0x6ce4, 0x6ce6, 0x6ce7, 0x6ce9,
+  0x6cec, 0x6ced, 0x6cf2, 0x6cf4, 0x6cf9, 0x6cff, 0x6d00, 0x6d02,
+  0x6d03, 0x6d05, 0x6d06, 0x6d08, 0x6d09, 0x6d0a, 0x6d0d, 0x6d0f,
+  0x6d10, 0x6d11, 0x6d13, 0x6d14, 0x6d15, 0x6d16, 0x6d18, 0x6d1c,
+  0x6d1d, 0x6d1f, 0x6d20, 0x6d21, 0x6d22, 0x6d23, 0x6d24, 0x6d26,
+  0x6d28, 0x6d29, 0x6d2c, 0x6d2d, 0x6d2f, 0x6d30, 0x6d34, 0x6d36,
+  0x6d37, 0x6d38, 0x6d3a, 0x6d3f, 0x6d40, 0x6d42, 0x6d44, 0x6d49,
+  0x6d4c, 0x6d50, 0x6d55, 0x6d56, 0x6d57, 0x6d58, 0x6d5b, 0x6d5d,
+  0x6d5f, 0x6d61, 0x6d62, 0x6d64, 0x6d65, 0x6d67, 0x6d68, 0x6d6b,
+  0x6d6c, 0x6d6d, 0x6d70, 0x6d71, 0x6d72, 0x6d73, 0x6d75, 0x6d76,
+  0x6d79, 0x6d7a, 0x6d7b, 0x6d7d, 0x6d7e, 0x6d7f, 0x6d80, 0x6d81,
+  0x6d83, 0x6d84, 0x6d86, 0x6d87, 0x6d8a, 0x6d8b, 0x6d8d, 0x6d8f,
+  0x6d90, 0x6d92, 0x6d96, 0x6d97, 0x6d98, 0x6d99, 0x6d9a, 0x6d9c,
+  0x6da2, 0x6da5, 0x6dac, 0x6dad, 0x6db0, 0x6db1, 0x6db3, 0x6db4,
+  0x6db6, 0x6db7, 0x6db9, 0x6dba, 0x6dbb, 0x6dbc, 0x6dbd, 0x6dbe,
+  0x6dc1, 0x6dc2, 0x6dc3, 0x6dc8, 0x6dc9, 0x6dca,
+  /* 0x9c */
+  0x6dcd, 0x6dce, 0x6dcf, 0x6dd0, 0x6dd2, 0x6dd3, 0x6dd4, 0x6dd5,
+  0x6dd7, 0x6dda, 0x6ddb, 0x6ddc, 0x6ddf, 0x6de2, 0x6de3, 0x6de5,
+  0x6de7, 0x6de8, 0x6de9, 0x6dea, 0x6ded, 0x6def, 0x6df0, 0x6df2,
+  0x6df4, 0x6df5, 0x6df6, 0x6df8, 0x6dfa, 0x6dfd, 0x6dfe, 0x6dff,
+  0x6e00, 0x6e01, 0x6e02, 0x6e03, 0x6e04, 0x6e06, 0x6e07, 0x6e08,
+  0x6e09, 0x6e0b, 0x6e0f, 0x6e12, 0x6e13, 0x6e15, 0x6e18, 0x6e19,
+  0x6e1b, 0x6e1c, 0x6e1e, 0x6e1f, 0x6e22, 0x6e26, 0x6e27, 0x6e28,
+  0x6e2a, 0x6e2c, 0x6e2e, 0x6e30, 0x6e31, 0x6e33, 0x6e35, 0x6e36,
+  0x6e37, 0x6e39, 0x6e3b, 0x6e3c, 0x6e3d, 0x6e3e, 0x6e3f, 0x6e40,
+  0x6e41, 0x6e42, 0x6e45, 0x6e46, 0x6e47, 0x6e48, 0x6e49, 0x6e4a,
+  0x6e4b, 0x6e4c, 0x6e4f, 0x6e50, 0x6e51, 0x6e52, 0x6e55, 0x6e57,
+  0x6e59, 0x6e5a, 0x6e5c, 0x6e5d, 0x6e5e, 0x6e60, 0x6e61, 0x6e62,
+  0x6e63, 0x6e64, 0x6e65, 0x6e66, 0x6e67, 0x6e68, 0x6e69, 0x6e6a,
+  0x6e6c, 0x6e6d, 0x6e6f, 0x6e70, 0x6e71, 0x6e72, 0x6e73, 0x6e74,
+  0x6e75, 0x6e76, 0x6e77, 0x6e78, 0x6e79, 0x6e7a, 0x6e7b, 0x6e7c,
+  0x6e7d, 0x6e80, 0x6e81, 0x6e82, 0x6e84, 0x6e87, 0x6e88, 0x6e8a,
+  0x6e8b, 0x6e8c, 0x6e8d, 0x6e8e, 0x6e91, 0x6e92, 0x6e93, 0x6e94,
+  0x6e95, 0x6e96, 0x6e97, 0x6e99, 0x6e9a, 0x6e9b, 0x6e9d, 0x6e9e,
+  0x6ea0, 0x6ea1, 0x6ea3, 0x6ea4, 0x6ea6, 0x6ea8, 0x6ea9, 0x6eab,
+  0x6eac, 0x6ead, 0x6eae, 0x6eb0, 0x6eb3, 0x6eb5, 0x6eb8, 0x6eb9,
+  0x6ebc, 0x6ebe, 0x6ebf, 0x6ec0, 0x6ec3, 0x6ec4, 0x6ec5, 0x6ec6,
+  0x6ec8, 0x6ec9, 0x6eca, 0x6ecc, 0x6ecd, 0x6ece, 0x6ed0, 0x6ed2,
+  0x6ed6, 0x6ed8, 0x6ed9, 0x6edb, 0x6edc, 0x6edd, 0x6ee3, 0x6ee7,
+  0x6eea, 0x6eeb, 0x6eec, 0x6eed, 0x6eee, 0x6eef,
+  /* 0x9d */
+  0x6ef0, 0x6ef1, 0x6ef2, 0x6ef3, 0x6ef5, 0x6ef6, 0x6ef7, 0x6ef8,
+  0x6efa, 0x6efb, 0x6efc, 0x6efd, 0x6efe, 0x6eff, 0x6f00, 0x6f01,
+  0x6f03, 0x6f04, 0x6f05, 0x6f07, 0x6f08, 0x6f0a, 0x6f0b, 0x6f0c,
+  0x6f0d, 0x6f0e, 0x6f10, 0x6f11, 0x6f12, 0x6f16, 0x6f17, 0x6f18,
+  0x6f19, 0x6f1a, 0x6f1b, 0x6f1c, 0x6f1d, 0x6f1e, 0x6f1f, 0x6f21,
+  0x6f22, 0x6f23, 0x6f25, 0x6f26, 0x6f27, 0x6f28, 0x6f2c, 0x6f2e,
+  0x6f30, 0x6f32, 0x6f34, 0x6f35, 0x6f37, 0x6f38, 0x6f39, 0x6f3a,
+  0x6f3b, 0x6f3c, 0x6f3d, 0x6f3f, 0x6f40, 0x6f41, 0x6f42, 0x6f43,
+  0x6f44, 0x6f45, 0x6f48, 0x6f49, 0x6f4a, 0x6f4c, 0x6f4e, 0x6f4f,
+  0x6f50, 0x6f51, 0x6f52, 0x6f53, 0x6f54, 0x6f55, 0x6f56, 0x6f57,
+  0x6f59, 0x6f5a, 0x6f5b, 0x6f5d, 0x6f5f, 0x6f60, 0x6f61, 0x6f63,
+  0x6f64, 0x6f65, 0x6f67, 0x6f68, 0x6f69, 0x6f6a, 0x6f6b, 0x6f6c,
+  0x6f6f, 0x6f70, 0x6f71, 0x6f73, 0x6f75, 0x6f76, 0x6f77, 0x6f79,
+  0x6f7b, 0x6f7d, 0x6f7e, 0x6f7f, 0x6f80, 0x6f81, 0x6f82, 0x6f83,
+  0x6f85, 0x6f86, 0x6f87, 0x6f8a, 0x6f8b, 0x6f8f, 0x6f90, 0x6f91,
+  0x6f92, 0x6f93, 0x6f94, 0x6f95, 0x6f96, 0x6f97, 0x6f98, 0x6f99,
+  0x6f9a, 0x6f9b, 0x6f9d, 0x6f9e, 0x6f9f, 0x6fa0, 0x6fa2, 0x6fa3,
+  0x6fa4, 0x6fa5, 0x6fa6, 0x6fa8, 0x6fa9, 0x6faa, 0x6fab, 0x6fac,
+  0x6fad, 0x6fae, 0x6faf, 0x6fb0, 0x6fb1, 0x6fb2, 0x6fb4, 0x6fb5,
+  0x6fb7, 0x6fb8, 0x6fba, 0x6fbb, 0x6fbc, 0x6fbd, 0x6fbe, 0x6fbf,
+  0x6fc1, 0x6fc3, 0x6fc4, 0x6fc5, 0x6fc6, 0x6fc7, 0x6fc8, 0x6fca,
+  0x6fcb, 0x6fcc, 0x6fcd, 0x6fce, 0x6fcf, 0x6fd0, 0x6fd3, 0x6fd4,
+  0x6fd5, 0x6fd6, 0x6fd7, 0x6fd8, 0x6fd9, 0x6fda, 0x6fdb, 0x6fdc,
+  0x6fdd, 0x6fdf, 0x6fe2, 0x6fe3, 0x6fe4, 0x6fe5,
+  /* 0x9e */
+  0x6fe6, 0x6fe7, 0x6fe8, 0x6fe9, 0x6fea, 0x6feb, 0x6fec, 0x6fed,
+  0x6ff0, 0x6ff1, 0x6ff2, 0x6ff3, 0x6ff4, 0x6ff5, 0x6ff6, 0x6ff7,
+  0x6ff8, 0x6ff9, 0x6ffa, 0x6ffb, 0x6ffc, 0x6ffd, 0x6ffe, 0x6fff,
+  0x7000, 0x7001, 0x7002, 0x7003, 0x7004, 0x7005, 0x7006, 0x7007,
+  0x7008, 0x7009, 0x700a, 0x700b, 0x700c, 0x700d, 0x700e, 0x700f,
+  0x7010, 0x7012, 0x7013, 0x7014, 0x7015, 0x7016, 0x7017, 0x7018,
+  0x7019, 0x701c, 0x701d, 0x701e, 0x701f, 0x7020, 0x7021, 0x7022,
+  0x7024, 0x7025, 0x7026, 0x7027, 0x7028, 0x7029, 0x702a, 0x702b,
+  0x702c, 0x702d, 0x702e, 0x702f, 0x7030, 0x7031, 0x7032, 0x7033,
+  0x7034, 0x7036, 0x7037, 0x7038, 0x703a, 0x703b, 0x703c, 0x703d,
+  0x703e, 0x703f, 0x7040, 0x7041, 0x7042, 0x7043, 0x7044, 0x7045,
+  0x7046, 0x7047, 0x7048, 0x7049, 0x704a, 0x704b, 0x704d, 0x704e,
+  0x7050, 0x7051, 0x7052, 0x7053, 0x7054, 0x7055, 0x7056, 0x7057,
+  0x7058, 0x7059, 0x705a, 0x705b, 0x705c, 0x705d, 0x705f, 0x7060,
+  0x7061, 0x7062, 0x7063, 0x7064, 0x7065, 0x7066, 0x7067, 0x7068,
+  0x7069, 0x706a, 0x706e, 0x7071, 0x7072, 0x7073, 0x7074, 0x7077,
+  0x7079, 0x707a, 0x707b, 0x707d, 0x7081, 0x7082, 0x7083, 0x7084,
+  0x7086, 0x7087, 0x7088, 0x708b, 0x708c, 0x708d, 0x708f, 0x7090,
+  0x7091, 0x7093, 0x7097, 0x7098, 0x709a, 0x709b, 0x709e, 0x709f,
+  0x70a0, 0x70a1, 0x70a2, 0x70a3, 0x70a4, 0x70a5, 0x70a6, 0x70a7,
+  0x70a8, 0x70a9, 0x70aa, 0x70b0, 0x70b2, 0x70b4, 0x70b5, 0x70b6,
+  0x70ba, 0x70be, 0x70bf, 0x70c4, 0x70c5, 0x70c6, 0x70c7, 0x70c9,
+  0x70cb, 0x70cc, 0x70cd, 0x70ce, 0x70cf, 0x70d0, 0x70d1, 0x70d2,
+  0x70d3, 0x70d4, 0x70d5, 0x70d6, 0x70d7, 0x70da,
+  /* 0x9f */
+  0x70dc, 0x70dd, 0x70de, 0x70e0, 0x70e1, 0x70e2, 0x70e3, 0x70e5,
+  0x70ea, 0x70ee, 0x70f0, 0x70f1, 0x70f2, 0x70f3, 0x70f4, 0x70f5,
+  0x70f6, 0x70f8, 0x70fa, 0x70fb, 0x70fc, 0x70fe, 0x70ff, 0x7100,
+  0x7101, 0x7102, 0x7103, 0x7104, 0x7105, 0x7106, 0x7107, 0x7108,
+  0x710b, 0x710c, 0x710d, 0x710e, 0x710f, 0x7111, 0x7112, 0x7114,
+  0x7117, 0x711b, 0x711c, 0x711d, 0x711e, 0x711f, 0x7120, 0x7121,
+  0x7122, 0x7123, 0x7124, 0x7125, 0x7127, 0x7128, 0x7129, 0x712a,
+  0x712b, 0x712c, 0x712d, 0x712e, 0x7132, 0x7133, 0x7134, 0x7135,
+  0x7137, 0x7138, 0x7139, 0x713a, 0x713b, 0x713c, 0x713d, 0x713e,
+  0x713f, 0x7140, 0x7141, 0x7142, 0x7143, 0x7144, 0x7146, 0x7147,
+  0x7148, 0x7149, 0x714b, 0x714d, 0x714f, 0x7150, 0x7151, 0x7152,
+  0x7153, 0x7154, 0x7155, 0x7156, 0x7157, 0x7158, 0x7159, 0x715a,
+  0x715b, 0x715d, 0x715f, 0x7160, 0x7161, 0x7162, 0x7163, 0x7165,
+  0x7169, 0x716a, 0x716b, 0x716c, 0x716d, 0x716f, 0x7170, 0x7171,
+  0x7174, 0x7175, 0x7176, 0x7177, 0x7179, 0x717b, 0x717c, 0x717e,
+  0x717f, 0x7180, 0x7181, 0x7182, 0x7183, 0x7185, 0x7186, 0x7187,
+  0x7188, 0x7189, 0x718b, 0x718c, 0x718d, 0x718e, 0x7190, 0x7191,
+  0x7192, 0x7193, 0x7195, 0x7196, 0x7197, 0x719a, 0x719b, 0x719c,
+  0x719d, 0x719e, 0x71a1, 0x71a2, 0x71a3, 0x71a4, 0x71a5, 0x71a6,
+  0x71a7, 0x71a9, 0x71aa, 0x71ab, 0x71ad, 0x71ae, 0x71af, 0x71b0,
+  0x71b1, 0x71b2, 0x71b4, 0x71b6, 0x71b7, 0x71b8, 0x71ba, 0x71bb,
+  0x71bc, 0x71bd, 0x71be, 0x71bf, 0x71c0, 0x71c1, 0x71c2, 0x71c4,
+  0x71c5, 0x71c6, 0x71c7, 0x71c8, 0x71c9, 0x71ca, 0x71cb, 0x71cc,
+  0x71cd, 0x71cf, 0x71d0, 0x71d1, 0x71d2, 0x71d3,
+  /* 0xa0 */
+  0x71d6, 0x71d7, 0x71d8, 0x71d9, 0x71da, 0x71db, 0x71dc, 0x71dd,
+  0x71de, 0x71df, 0x71e1, 0x71e2, 0x71e3, 0x71e4, 0x71e6, 0x71e8,
+  0x71e9, 0x71ea, 0x71eb, 0x71ec, 0x71ed, 0x71ef, 0x71f0, 0x71f1,
+  0x71f2, 0x71f3, 0x71f4, 0x71f5, 0x71f6, 0x71f7, 0x71f8, 0x71fa,
+  0x71fb, 0x71fc, 0x71fd, 0x71fe, 0x71ff, 0x7200, 0x7201, 0x7202,
+  0x7203, 0x7204, 0x7205, 0x7207, 0x7208, 0x7209, 0x720a, 0x720b,
+  0x720c, 0x720d, 0x720e, 0x720f, 0x7210, 0x7211, 0x7212, 0x7213,
+  0x7214, 0x7215, 0x7216, 0x7217, 0x7218, 0x7219, 0x721a, 0x721b,
+  0x721c, 0x721e, 0x721f, 0x7220, 0x7221, 0x7222, 0x7223, 0x7224,
+  0x7225, 0x7226, 0x7227, 0x7229, 0x722b, 0x722d, 0x722e, 0x722f,
+  0x7232, 0x7233, 0x7234, 0x723a, 0x723c, 0x723e, 0x7240, 0x7241,
+  0x7242, 0x7243, 0x7244, 0x7245, 0x7246, 0x7249, 0x724a, 0x724b,
+  0x724e, 0x724f, 0x7250, 0x7251, 0x7253, 0x7254, 0x7255, 0x7257,
+  0x7258, 0x725a, 0x725c, 0x725e, 0x7260, 0x7263, 0x7264, 0x7265,
+  0x7268, 0x726a, 0x726b, 0x726c, 0x726d, 0x7270, 0x7271, 0x7273,
+  0x7274, 0x7276, 0x7277, 0x7278, 0x727b, 0x727c, 0x727d, 0x7282,
+  0x7283, 0x7285, 0x7286, 0x7287, 0x7288, 0x7289, 0x728c, 0x728e,
+  0x7290, 0x7291, 0x7293, 0x7294, 0x7295, 0x7296, 0x7297, 0x7298,
+  0x7299, 0x729a, 0x729b, 0x729c, 0x729d, 0x729e, 0x72a0, 0x72a1,
+  0x72a2, 0x72a3, 0x72a4, 0x72a5, 0x72a6, 0x72a7, 0x72a8, 0x72a9,
+  0x72aa, 0x72ab, 0x72ae, 0x72b1, 0x72b2, 0x72b3, 0x72b5, 0x72ba,
+  0x72bb, 0x72bc, 0x72bd, 0x72be, 0x72bf, 0x72c0, 0x72c5, 0x72c6,
+  0x72c7, 0x72c9, 0x72ca, 0x72cb, 0x72cc, 0x72cf, 0x72d1, 0x72d3,
+  0x72d4, 0x72d5, 0x72d6, 0x72d8, 0x72da, 0x72db,
+};
+
+static int
+gbkext1_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 >= 0x81 && c1 <= 0xa0)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if ((c2 >= 0x40 && c2 < 0x7f) || (c2 >= 0x80 && c2 < 0xff)) {
+        unsigned int i = 190 * (c1 - 0x81) + (c2 - (c2 >= 0x80 ? 0x41 : 0x40));
+        unsigned short wc = 0xfffd;
+        {
+          if (i < 6080)
+            wc = gbkext1_2uni_page81[i];
+        }
+        if (wc != 0xfffd) {
+          *pwc = (ucs4_t) wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
diff --git a/graf2d/win32gdk/gdk/src/iconv/gbkext2.h b/graf2d/win32gdk/gdk/src/iconv/gbkext2.h
new file mode 100644
index 00000000000..5a0dbdec57f
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/gbkext2.h
@@ -0,0 +1,1174 @@
+/*
+ * Copyright (C) 1999-2000 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * GBK/4 and GBK/5 extensions
+ */
+
+static const unsigned short gbkext2_2uni_pagea8[8272] = {
+  /* 0xa8 */
+  0x02ca, 0x02cb, 0x02d9, 0x2013, 0x2015, 0x2025, 0x2035, 0x2105,
+  0x2109, 0x2196, 0x2197, 0x2198, 0x2199, 0x2215, 0x221f, 0x2223,
+  0x2252, 0x2266, 0x2267, 0x22bf, 0x2550, 0x2551, 0x2552, 0x2553,
+  0x2554, 0x2555, 0x2556, 0x2557, 0x2558, 0x2559, 0x255a, 0x255b,
+  0x255c, 0x255d, 0x255e, 0x255f, 0x2560, 0x2561, 0x2562, 0x2563,
+  0x2564, 0x2565, 0x2566, 0x2567, 0x2568, 0x2569, 0x256a, 0x256b,
+  0x256c, 0x256d, 0x256e, 0x256f, 0x2570, 0x2571, 0x2572, 0x2573,
+  0x2581, 0x2582, 0x2583, 0x2584, 0x2585, 0x2586, 0x2587, 0x2588,
+  0x2589, 0x258a, 0x258b, 0x258c, 0x258d, 0x258e, 0x258f, 0x2593,
+  0x2594, 0x2595, 0x25bc, 0x25bd, 0x25e2, 0x25e3, 0x25e4, 0x25e5,
+  0x2609, 0x2295, 0x3012, 0x301d, 0x301e, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0xa9 */
+  0x3021, 0x3022, 0x3023, 0x3024, 0x3025, 0x3026, 0x3027, 0x3028,
+  0x3029, 0x32a3, 0x338e, 0x338f, 0x339c, 0x339d, 0x339e, 0x33a1,
+  0x33c4, 0x33ce, 0x33d1, 0x33d2, 0x33d5, 0xfe30, 0xffe2, 0xffe4,
+  0xfffd, 0x2121, 0x3231, 0xfffd, 0x2010, 0xfffd, 0xfffd, 0xfffd,
+  0x30fc, 0x309b, 0x309c, 0x30fd, 0x30fe, 0x3006, 0x309d, 0x309e,
+  0xfe49, 0xfe4a, 0xfe4b, 0xfe4c, 0xfe4d, 0xfe4e, 0xfe4f, 0xfe50,
+  0xfe51, 0xfe52, 0xfe54, 0xfe55, 0xfe56, 0xfe57, 0xfe59, 0xfe5a,
+  0xfe5b, 0xfe5c, 0xfe5d, 0xfe5e, 0xfe5f, 0xfe60, 0xfe61, 0xfe62,
+  0xfe63, 0xfe64, 0xfe65, 0xfe66, 0xfe68, 0xfe69, 0xfe6a, 0xfe6b,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x3007, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0xaa */
+  0x72dc, 0x72dd, 0x72df, 0x72e2, 0x72e3, 0x72e4, 0x72e5, 0x72e6,
+  0x72e7, 0x72ea, 0x72eb, 0x72f5, 0x72f6, 0x72f9, 0x72fd, 0x72fe,
+  0x72ff, 0x7300, 0x7302, 0x7304, 0x7305, 0x7306, 0x7307, 0x7308,
+  0x7309, 0x730b, 0x730c, 0x730d, 0x730f, 0x7310, 0x7311, 0x7312,
+  0x7314, 0x7318, 0x7319, 0x731a, 0x731f, 0x7320, 0x7323, 0x7324,
+  0x7326, 0x7327, 0x7328, 0x732d, 0x732f, 0x7330, 0x7332, 0x7333,
+  0x7335, 0x7336, 0x733a, 0x733b, 0x733c, 0x733d, 0x7340, 0x7341,
+  0x7342, 0x7343, 0x7344, 0x7345, 0x7346, 0x7347, 0x7348, 0x7349,
+  0x734a, 0x734b, 0x734c, 0x734e, 0x734f, 0x7351, 0x7353, 0x7354,
+  0x7355, 0x7356, 0x7358, 0x7359, 0x735a, 0x735b, 0x735c, 0x735d,
+  0x735e, 0x735f, 0x7361, 0x7362, 0x7363, 0x7364, 0x7365, 0x7366,
+  0x7367, 0x7368, 0x7369, 0x736a, 0x736b, 0x736e, 0x7370, 0x7371,
+  /* 0xab */
+  0x7372, 0x7373, 0x7374, 0x7375, 0x7376, 0x7377, 0x7378, 0x7379,
+  0x737a, 0x737b, 0x737c, 0x737d, 0x737f, 0x7380, 0x7381, 0x7382,
+  0x7383, 0x7385, 0x7386, 0x7388, 0x738a, 0x738c, 0x738d, 0x738f,
+  0x7390, 0x7392, 0x7393, 0x7394, 0x7395, 0x7397, 0x7398, 0x7399,
+  0x739a, 0x739c, 0x739d, 0x739e, 0x73a0, 0x73a1, 0x73a3, 0x73a4,
+  0x73a5, 0x73a6, 0x73a7, 0x73a8, 0x73aa, 0x73ac, 0x73ad, 0x73b1,
+  0x73b4, 0x73b5, 0x73b6, 0x73b8, 0x73b9, 0x73bc, 0x73bd, 0x73be,
+  0x73bf, 0x73c1, 0x73c3, 0x73c4, 0x73c5, 0x73c6, 0x73c7, 0x73cb,
+  0x73cc, 0x73ce, 0x73d2, 0x73d3, 0x73d4, 0x73d5, 0x73d6, 0x73d7,
+  0x73d8, 0x73da, 0x73db, 0x73dc, 0x73dd, 0x73df, 0x73e1, 0x73e2,
+  0x73e3, 0x73e4, 0x73e6, 0x73e8, 0x73ea, 0x73eb, 0x73ec, 0x73ee,
+  0x73ef, 0x73f0, 0x73f1, 0x73f3, 0x73f4, 0x73f5, 0x73f6, 0x73f7,
+  /* 0xac */
+  0x73f8, 0x73f9, 0x73fa, 0x73fb, 0x73fc, 0x73fd, 0x73fe, 0x73ff,
+  0x7400, 0x7401, 0x7402, 0x7404, 0x7407, 0x7408, 0x740b, 0x740c,
+  0x740d, 0x740e, 0x7411, 0x7412, 0x7413, 0x7414, 0x7415, 0x7416,
+  0x7417, 0x7418, 0x7419, 0x741c, 0x741d, 0x741e, 0x741f, 0x7420,
+  0x7421, 0x7423, 0x7424, 0x7427, 0x7429, 0x742b, 0x742d, 0x742f,
+  0x7431, 0x7432, 0x7437, 0x7438, 0x7439, 0x743a, 0x743b, 0x743d,
+  0x743e, 0x743f, 0x7440, 0x7442, 0x7443, 0x7444, 0x7445, 0x7446,
+  0x7447, 0x7448, 0x7449, 0x744a, 0x744b, 0x744c, 0x744d, 0x744e,
+  0x744f, 0x7450, 0x7451, 0x7452, 0x7453, 0x7454, 0x7456, 0x7458,
+  0x745d, 0x7460, 0x7461, 0x7462, 0x7463, 0x7464, 0x7465, 0x7466,
+  0x7467, 0x7468, 0x7469, 0x746a, 0x746b, 0x746c, 0x746e, 0x746f,
+  0x7471, 0x7472, 0x7473, 0x7474, 0x7475, 0x7478, 0x7479, 0x747a,
+  /* 0xad */
+  0x747b, 0x747c, 0x747d, 0x747f, 0x7482, 0x7484, 0x7485, 0x7486,
+  0x7488, 0x7489, 0x748a, 0x748c, 0x748d, 0x748f, 0x7491, 0x7492,
+  0x7493, 0x7494, 0x7495, 0x7496, 0x7497, 0x7498, 0x7499, 0x749a,
+  0x749b, 0x749d, 0x749f, 0x74a0, 0x74a1, 0x74a2, 0x74a3, 0x74a4,
+  0x74a5, 0x74a6, 0x74aa, 0x74ab, 0x74ac, 0x74ad, 0x74ae, 0x74af,
+  0x74b0, 0x74b1, 0x74b2, 0x74b3, 0x74b4, 0x74b5, 0x74b6, 0x74b7,
+  0x74b8, 0x74b9, 0x74bb, 0x74bc, 0x74bd, 0x74be, 0x74bf, 0x74c0,
+  0x74c1, 0x74c2, 0x74c3, 0x74c4, 0x74c5, 0x74c6, 0x74c7, 0x74c8,
+  0x74c9, 0x74ca, 0x74cb, 0x74cc, 0x74cd, 0x74ce, 0x74cf, 0x74d0,
+  0x74d1, 0x74d3, 0x74d4, 0x74d5, 0x74d6, 0x74d7, 0x74d8, 0x74d9,
+  0x74da, 0x74db, 0x74dd, 0x74df, 0x74e1, 0x74e5, 0x74e7, 0x74e8,
+  0x74e9, 0x74ea, 0x74eb, 0x74ec, 0x74ed, 0x74f0, 0x74f1, 0x74f2,
+  /* 0xae */
+  0x74f3, 0x74f5, 0x74f8, 0x74f9, 0x74fa, 0x74fb, 0x74fc, 0x74fd,
+  0x74fe, 0x7500, 0x7501, 0x7502, 0x7503, 0x7505, 0x7506, 0x7507,
+  0x7508, 0x7509, 0x750a, 0x750b, 0x750c, 0x750e, 0x7510, 0x7512,
+  0x7514, 0x7515, 0x7516, 0x7517, 0x751b, 0x751d, 0x751e, 0x7520,
+  0x7521, 0x7522, 0x7523, 0x7524, 0x7526, 0x7527, 0x752a, 0x752e,
+  0x7534, 0x7536, 0x7539, 0x753c, 0x753d, 0x753f, 0x7541, 0x7542,
+  0x7543, 0x7544, 0x7546, 0x7547, 0x7549, 0x754a, 0x754d, 0x7550,
+  0x7551, 0x7552, 0x7553, 0x7555, 0x7556, 0x7557, 0x7558, 0x755d,
+  0x755e, 0x755f, 0x7560, 0x7561, 0x7562, 0x7563, 0x7564, 0x7567,
+  0x7568, 0x7569, 0x756b, 0x756c, 0x756d, 0x756e, 0x756f, 0x7570,
+  0x7571, 0x7573, 0x7575, 0x7576, 0x7577, 0x757a, 0x757b, 0x757c,
+  0x757d, 0x757e, 0x7580, 0x7581, 0x7582, 0x7584, 0x7585, 0x7587,
+  /* 0xaf */
+  0x7588, 0x7589, 0x758a, 0x758c, 0x758d, 0x758e, 0x7590, 0x7593,
+  0x7595, 0x7598, 0x759b, 0x759c, 0x759e, 0x75a2, 0x75a6, 0x75a7,
+  0x75a8, 0x75a9, 0x75aa, 0x75ad, 0x75b6, 0x75b7, 0x75ba, 0x75bb,
+  0x75bf, 0x75c0, 0x75c1, 0x75c6, 0x75cb, 0x75cc, 0x75ce, 0x75cf,
+  0x75d0, 0x75d1, 0x75d3, 0x75d7, 0x75d9, 0x75da, 0x75dc, 0x75dd,
+  0x75df, 0x75e0, 0x75e1, 0x75e5, 0x75e9, 0x75ec, 0x75ed, 0x75ee,
+  0x75ef, 0x75f2, 0x75f3, 0x75f5, 0x75f6, 0x75f7, 0x75f8, 0x75fa,
+  0x75fb, 0x75fd, 0x75fe, 0x7602, 0x7604, 0x7606, 0x7607, 0x7608,
+  0x7609, 0x760b, 0x760d, 0x760e, 0x760f, 0x7611, 0x7612, 0x7613,
+  0x7614, 0x7616, 0x761a, 0x761c, 0x761d, 0x761e, 0x7621, 0x7623,
+  0x7627, 0x7628, 0x762c, 0x762e, 0x762f, 0x7631, 0x7632, 0x7636,
+  0x7637, 0x7639, 0x763a, 0x763b, 0x763d, 0x7641, 0x7642, 0x7644,
+  /* 0xb0 */
+  0x7645, 0x7646, 0x7647, 0x7648, 0x7649, 0x764a, 0x764b, 0x764e,
+  0x764f, 0x7650, 0x7651, 0x7652, 0x7653, 0x7655, 0x7657, 0x7658,
+  0x7659, 0x765a, 0x765b, 0x765d, 0x765f, 0x7660, 0x7661, 0x7662,
+  0x7664, 0x7665, 0x7666, 0x7667, 0x7668, 0x7669, 0x766a, 0x766c,
+  0x766d, 0x766e, 0x7670, 0x7671, 0x7672, 0x7673, 0x7674, 0x7675,
+  0x7676, 0x7677, 0x7679, 0x767a, 0x767c, 0x767f, 0x7680, 0x7681,
+  0x7683, 0x7685, 0x7689, 0x768a, 0x768c, 0x768d, 0x768f, 0x7690,
+  0x7692, 0x7694, 0x7695, 0x7697, 0x7698, 0x769a, 0x769b, 0x769c,
+  0x769d, 0x769e, 0x769f, 0x76a0, 0x76a1, 0x76a2, 0x76a3, 0x76a5,
+  0x76a6, 0x76a7, 0x76a8, 0x76a9, 0x76aa, 0x76ab, 0x76ac, 0x76ad,
+  0x76af, 0x76b0, 0x76b3, 0x76b5, 0x76b6, 0x76b7, 0x76b8, 0x76b9,
+  0x76ba, 0x76bb, 0x76bc, 0x76bd, 0x76be, 0x76c0, 0x76c1, 0x76c3,
+  /* 0xb1 */
+  0x76c4, 0x76c7, 0x76c9, 0x76cb, 0x76cc, 0x76d3, 0x76d5, 0x76d9,
+  0x76da, 0x76dc, 0x76dd, 0x76de, 0x76e0, 0x76e1, 0x76e2, 0x76e3,
+  0x76e4, 0x76e6, 0x76e7, 0x76e8, 0x76e9, 0x76ea, 0x76eb, 0x76ec,
+  0x76ed, 0x76f0, 0x76f3, 0x76f5, 0x76f6, 0x76f7, 0x76fa, 0x76fb,
+  0x76fd, 0x76ff, 0x7700, 0x7702, 0x7703, 0x7705, 0x7706, 0x770a,
+  0x770c, 0x770e, 0x770f, 0x7710, 0x7711, 0x7712, 0x7713, 0x7714,
+  0x7715, 0x7716, 0x7717, 0x7718, 0x771b, 0x771c, 0x771d, 0x771e,
+  0x7721, 0x7723, 0x7724, 0x7725, 0x7727, 0x772a, 0x772b, 0x772c,
+  0x772e, 0x7730, 0x7731, 0x7732, 0x7733, 0x7734, 0x7739, 0x773b,
+  0x773d, 0x773e, 0x773f, 0x7742, 0x7744, 0x7745, 0x7746, 0x7748,
+  0x7749, 0x774a, 0x774b, 0x774c, 0x774d, 0x774e, 0x774f, 0x7752,
+  0x7753, 0x7754, 0x7755, 0x7756, 0x7757, 0x7758, 0x7759, 0x775c,
+  /* 0xb2 */
+  0x775d, 0x775e, 0x775f, 0x7760, 0x7764, 0x7767, 0x7769, 0x776a,
+  0x776d, 0x776e, 0x776f, 0x7770, 0x7771, 0x7772, 0x7773, 0x7774,
+  0x7775, 0x7776, 0x7777, 0x7778, 0x777a, 0x777b, 0x777c, 0x7781,
+  0x7782, 0x7783, 0x7786, 0x7787, 0x7788, 0x7789, 0x778a, 0x778b,
+  0x778f, 0x7790, 0x7793, 0x7794, 0x7795, 0x7796, 0x7797, 0x7798,
+  0x7799, 0x779a, 0x779b, 0x779c, 0x779d, 0x779e, 0x77a1, 0x77a3,
+  0x77a4, 0x77a6, 0x77a8, 0x77ab, 0x77ad, 0x77ae, 0x77af, 0x77b1,
+  0x77b2, 0x77b4, 0x77b6, 0x77b7, 0x77b8, 0x77b9, 0x77ba, 0x77bc,
+  0x77be, 0x77c0, 0x77c1, 0x77c2, 0x77c3, 0x77c4, 0x77c5, 0x77c6,
+  0x77c7, 0x77c8, 0x77c9, 0x77ca, 0x77cb, 0x77cc, 0x77ce, 0x77cf,
+  0x77d0, 0x77d1, 0x77d2, 0x77d3, 0x77d4, 0x77d5, 0x77d6, 0x77d8,
+  0x77d9, 0x77da, 0x77dd, 0x77de, 0x77df, 0x77e0, 0x77e1, 0x77e4,
+  /* 0xb3 */
+  0x77e6, 0x77e8, 0x77ea, 0x77ef, 0x77f0, 0x77f1, 0x77f2, 0x77f4,
+  0x77f5, 0x77f7, 0x77f9, 0x77fa, 0x77fb, 0x77fc, 0x7803, 0x7804,
+  0x7805, 0x7806, 0x7807, 0x7808, 0x780a, 0x780b, 0x780e, 0x780f,
+  0x7810, 0x7813, 0x7815, 0x7819, 0x781b, 0x781e, 0x7820, 0x7821,
+  0x7822, 0x7824, 0x7828, 0x782a, 0x782b, 0x782e, 0x782f, 0x7831,
+  0x7832, 0x7833, 0x7835, 0x7836, 0x783d, 0x783f, 0x7841, 0x7842,
+  0x7843, 0x7844, 0x7846, 0x7848, 0x7849, 0x784a, 0x784b, 0x784d,
+  0x784f, 0x7851, 0x7853, 0x7854, 0x7858, 0x7859, 0x785a, 0x785b,
+  0x785c, 0x785e, 0x785f, 0x7860, 0x7861, 0x7862, 0x7863, 0x7864,
+  0x7865, 0x7866, 0x7867, 0x7868, 0x7869, 0x786f, 0x7870, 0x7871,
+  0x7872, 0x7873, 0x7874, 0x7875, 0x7876, 0x7878, 0x7879, 0x787a,
+  0x787b, 0x787d, 0x787e, 0x787f, 0x7880, 0x7881, 0x7882, 0x7883,
+  /* 0xb4 */
+  0x7884, 0x7885, 0x7886, 0x7888, 0x788a, 0x788b, 0x788f, 0x7890,
+  0x7892, 0x7894, 0x7895, 0x7896, 0x7899, 0x789d, 0x789e, 0x78a0,
+  0x78a2, 0x78a4, 0x78a6, 0x78a8, 0x78a9, 0x78aa, 0x78ab, 0x78ac,
+  0x78ad, 0x78ae, 0x78af, 0x78b5, 0x78b6, 0x78b7, 0x78b8, 0x78ba,
+  0x78bb, 0x78bc, 0x78bd, 0x78bf, 0x78c0, 0x78c2, 0x78c3, 0x78c4,
+  0x78c6, 0x78c7, 0x78c8, 0x78cc, 0x78cd, 0x78ce, 0x78cf, 0x78d1,
+  0x78d2, 0x78d3, 0x78d6, 0x78d7, 0x78d8, 0x78da, 0x78db, 0x78dc,
+  0x78dd, 0x78de, 0x78df, 0x78e0, 0x78e1, 0x78e2, 0x78e3, 0x78e4,
+  0x78e5, 0x78e6, 0x78e7, 0x78e9, 0x78ea, 0x78eb, 0x78ed, 0x78ee,
+  0x78ef, 0x78f0, 0x78f1, 0x78f3, 0x78f5, 0x78f6, 0x78f8, 0x78f9,
+  0x78fb, 0x78fc, 0x78fd, 0x78fe, 0x78ff, 0x7900, 0x7902, 0x7903,
+  0x7904, 0x7906, 0x7907, 0x7908, 0x7909, 0x790a, 0x790b, 0x790c,
+  /* 0xb5 */
+  0x790d, 0x790e, 0x790f, 0x7910, 0x7911, 0x7912, 0x7914, 0x7915,
+  0x7916, 0x7917, 0x7918, 0x7919, 0x791a, 0x791b, 0x791c, 0x791d,
+  0x791f, 0x7920, 0x7921, 0x7922, 0x7923, 0x7925, 0x7926, 0x7927,
+  0x7928, 0x7929, 0x792a, 0x792b, 0x792c, 0x792d, 0x792e, 0x792f,
+  0x7930, 0x7931, 0x7932, 0x7933, 0x7935, 0x7936, 0x7937, 0x7938,
+  0x7939, 0x793d, 0x793f, 0x7942, 0x7943, 0x7944, 0x7945, 0x7947,
+  0x794a, 0x794b, 0x794c, 0x794d, 0x794e, 0x794f, 0x7950, 0x7951,
+  0x7952, 0x7954, 0x7955, 0x7958, 0x7959, 0x7961, 0x7963, 0x7964,
+  0x7966, 0x7969, 0x796a, 0x796b, 0x796c, 0x796e, 0x7970, 0x7971,
+  0x7972, 0x7973, 0x7974, 0x7975, 0x7976, 0x7979, 0x797b, 0x797c,
+  0x797d, 0x797e, 0x797f, 0x7982, 0x7983, 0x7986, 0x7987, 0x7988,
+  0x7989, 0x798b, 0x798c, 0x798d, 0x798e, 0x7990, 0x7991, 0x7992,
+  /* 0xb6 */
+  0x7993, 0x7994, 0x7995, 0x7996, 0x7997, 0x7998, 0x7999, 0x799b,
+  0x799c, 0x799d, 0x799e, 0x799f, 0x79a0, 0x79a1, 0x79a2, 0x79a3,
+  0x79a4, 0x79a5, 0x79a6, 0x79a8, 0x79a9, 0x79aa, 0x79ab, 0x79ac,
+  0x79ad, 0x79ae, 0x79af, 0x79b0, 0x79b1, 0x79b2, 0x79b4, 0x79b5,
+  0x79b6, 0x79b7, 0x79b8, 0x79bc, 0x79bf, 0x79c2, 0x79c4, 0x79c5,
+  0x79c7, 0x79c8, 0x79ca, 0x79cc, 0x79ce, 0x79cf, 0x79d0, 0x79d3,
+  0x79d4, 0x79d6, 0x79d7, 0x79d9, 0x79da, 0x79db, 0x79dc, 0x79dd,
+  0x79de, 0x79e0, 0x79e1, 0x79e2, 0x79e5, 0x79e8, 0x79ea, 0x79ec,
+  0x79ee, 0x79f1, 0x79f2, 0x79f3, 0x79f4, 0x79f5, 0x79f6, 0x79f7,
+  0x79f9, 0x79fa, 0x79fc, 0x79fe, 0x79ff, 0x7a01, 0x7a04, 0x7a05,
+  0x7a07, 0x7a08, 0x7a09, 0x7a0a, 0x7a0c, 0x7a0f, 0x7a10, 0x7a11,
+  0x7a12, 0x7a13, 0x7a15, 0x7a16, 0x7a18, 0x7a19, 0x7a1b, 0x7a1c,
+  /* 0xb7 */
+  0x7a1d, 0x7a1f, 0x7a21, 0x7a22, 0x7a24, 0x7a25, 0x7a26, 0x7a27,
+  0x7a28, 0x7a29, 0x7a2a, 0x7a2b, 0x7a2c, 0x7a2d, 0x7a2e, 0x7a2f,
+  0x7a30, 0x7a31, 0x7a32, 0x7a34, 0x7a35, 0x7a36, 0x7a38, 0x7a3a,
+  0x7a3e, 0x7a40, 0x7a41, 0x7a42, 0x7a43, 0x7a44, 0x7a45, 0x7a47,
+  0x7a48, 0x7a49, 0x7a4a, 0x7a4b, 0x7a4c, 0x7a4d, 0x7a4e, 0x7a4f,
+  0x7a50, 0x7a52, 0x7a53, 0x7a54, 0x7a55, 0x7a56, 0x7a58, 0x7a59,
+  0x7a5a, 0x7a5b, 0x7a5c, 0x7a5d, 0x7a5e, 0x7a5f, 0x7a60, 0x7a61,
+  0x7a62, 0x7a63, 0x7a64, 0x7a65, 0x7a66, 0x7a67, 0x7a68, 0x7a69,
+  0x7a6a, 0x7a6b, 0x7a6c, 0x7a6d, 0x7a6e, 0x7a6f, 0x7a71, 0x7a72,
+  0x7a73, 0x7a75, 0x7a7b, 0x7a7c, 0x7a7d, 0x7a7e, 0x7a82, 0x7a85,
+  0x7a87, 0x7a89, 0x7a8a, 0x7a8b, 0x7a8c, 0x7a8e, 0x7a8f, 0x7a90,
+  0x7a93, 0x7a94, 0x7a99, 0x7a9a, 0x7a9b, 0x7a9e, 0x7aa1, 0x7aa2,
+  /* 0xb8 */
+  0x7aa3, 0x7aa4, 0x7aa7, 0x7aa9, 0x7aaa, 0x7aab, 0x7aae, 0x7aaf,
+  0x7ab0, 0x7ab1, 0x7ab2, 0x7ab4, 0x7ab5, 0x7ab6, 0x7ab7, 0x7ab8,
+  0x7ab9, 0x7aba, 0x7abb, 0x7abc, 0x7abd, 0x7abe, 0x7ac0, 0x7ac1,
+  0x7ac2, 0x7ac3, 0x7ac4, 0x7ac5, 0x7ac6, 0x7ac7, 0x7ac8, 0x7ac9,
+  0x7aca, 0x7acc, 0x7acd, 0x7ace, 0x7acf, 0x7ad0, 0x7ad1, 0x7ad2,
+  0x7ad3, 0x7ad4, 0x7ad5, 0x7ad7, 0x7ad8, 0x7ada, 0x7adb, 0x7adc,
+  0x7add, 0x7ae1, 0x7ae2, 0x7ae4, 0x7ae7, 0x7ae8, 0x7ae9, 0x7aea,
+  0x7aeb, 0x7aec, 0x7aee, 0x7af0, 0x7af1, 0x7af2, 0x7af3, 0x7af4,
+  0x7af5, 0x7af6, 0x7af7, 0x7af8, 0x7afb, 0x7afc, 0x7afe, 0x7b00,
+  0x7b01, 0x7b02, 0x7b05, 0x7b07, 0x7b09, 0x7b0c, 0x7b0d, 0x7b0e,
+  0x7b10, 0x7b12, 0x7b13, 0x7b16, 0x7b17, 0x7b18, 0x7b1a, 0x7b1c,
+  0x7b1d, 0x7b1f, 0x7b21, 0x7b22, 0x7b23, 0x7b27, 0x7b29, 0x7b2d,
+  /* 0xb9 */
+  0x7b2f, 0x7b30, 0x7b32, 0x7b34, 0x7b35, 0x7b36, 0x7b37, 0x7b39,
+  0x7b3b, 0x7b3d, 0x7b3f, 0x7b40, 0x7b41, 0x7b42, 0x7b43, 0x7b44,
+  0x7b46, 0x7b48, 0x7b4a, 0x7b4d, 0x7b4e, 0x7b53, 0x7b55, 0x7b57,
+  0x7b59, 0x7b5c, 0x7b5e, 0x7b5f, 0x7b61, 0x7b63, 0x7b64, 0x7b65,
+  0x7b66, 0x7b67, 0x7b68, 0x7b69, 0x7b6a, 0x7b6b, 0x7b6c, 0x7b6d,
+  0x7b6f, 0x7b70, 0x7b73, 0x7b74, 0x7b76, 0x7b78, 0x7b7a, 0x7b7c,
+  0x7b7d, 0x7b7f, 0x7b81, 0x7b82, 0x7b83, 0x7b84, 0x7b86, 0x7b87,
+  0x7b88, 0x7b89, 0x7b8a, 0x7b8b, 0x7b8c, 0x7b8e, 0x7b8f, 0x7b91,
+  0x7b92, 0x7b93, 0x7b96, 0x7b98, 0x7b99, 0x7b9a, 0x7b9b, 0x7b9e,
+  0x7b9f, 0x7ba0, 0x7ba3, 0x7ba4, 0x7ba5, 0x7bae, 0x7baf, 0x7bb0,
+  0x7bb2, 0x7bb3, 0x7bb5, 0x7bb6, 0x7bb7, 0x7bb9, 0x7bba, 0x7bbb,
+  0x7bbc, 0x7bbd, 0x7bbe, 0x7bbf, 0x7bc0, 0x7bc2, 0x7bc3, 0x7bc4,
+  /* 0xba */
+  0x7bc5, 0x7bc8, 0x7bc9, 0x7bca, 0x7bcb, 0x7bcd, 0x7bce, 0x7bcf,
+  0x7bd0, 0x7bd2, 0x7bd4, 0x7bd5, 0x7bd6, 0x7bd7, 0x7bd8, 0x7bdb,
+  0x7bdc, 0x7bde, 0x7bdf, 0x7be0, 0x7be2, 0x7be3, 0x7be4, 0x7be7,
+  0x7be8, 0x7be9, 0x7beb, 0x7bec, 0x7bed, 0x7bef, 0x7bf0, 0x7bf2,
+  0x7bf3, 0x7bf4, 0x7bf5, 0x7bf6, 0x7bf8, 0x7bf9, 0x7bfa, 0x7bfb,
+  0x7bfd, 0x7bff, 0x7c00, 0x7c01, 0x7c02, 0x7c03, 0x7c04, 0x7c05,
+  0x7c06, 0x7c08, 0x7c09, 0x7c0a, 0x7c0d, 0x7c0e, 0x7c10, 0x7c11,
+  0x7c12, 0x7c13, 0x7c14, 0x7c15, 0x7c17, 0x7c18, 0x7c19, 0x7c1a,
+  0x7c1b, 0x7c1c, 0x7c1d, 0x7c1e, 0x7c20, 0x7c21, 0x7c22, 0x7c23,
+  0x7c24, 0x7c25, 0x7c28, 0x7c29, 0x7c2b, 0x7c2c, 0x7c2d, 0x7c2e,
+  0x7c2f, 0x7c30, 0x7c31, 0x7c32, 0x7c33, 0x7c34, 0x7c35, 0x7c36,
+  0x7c37, 0x7c39, 0x7c3a, 0x7c3b, 0x7c3c, 0x7c3d, 0x7c3e, 0x7c42,
+  /* 0xbb */
+  0x7c43, 0x7c44, 0x7c45, 0x7c46, 0x7c47, 0x7c48, 0x7c49, 0x7c4a,
+  0x7c4b, 0x7c4c, 0x7c4e, 0x7c4f, 0x7c50, 0x7c51, 0x7c52, 0x7c53,
+  0x7c54, 0x7c55, 0x7c56, 0x7c57, 0x7c58, 0x7c59, 0x7c5a, 0x7c5b,
+  0x7c5c, 0x7c5d, 0x7c5e, 0x7c5f, 0x7c60, 0x7c61, 0x7c62, 0x7c63,
+  0x7c64, 0x7c65, 0x7c66, 0x7c67, 0x7c68, 0x7c69, 0x7c6a, 0x7c6b,
+  0x7c6c, 0x7c6d, 0x7c6e, 0x7c6f, 0x7c70, 0x7c71, 0x7c72, 0x7c75,
+  0x7c76, 0x7c77, 0x7c78, 0x7c79, 0x7c7a, 0x7c7e, 0x7c7f, 0x7c80,
+  0x7c81, 0x7c82, 0x7c83, 0x7c84, 0x7c85, 0x7c86, 0x7c87, 0x7c88,
+  0x7c8a, 0x7c8b, 0x7c8c, 0x7c8d, 0x7c8e, 0x7c8f, 0x7c90, 0x7c93,
+  0x7c94, 0x7c96, 0x7c99, 0x7c9a, 0x7c9b, 0x7ca0, 0x7ca1, 0x7ca3,
+  0x7ca6, 0x7ca7, 0x7ca8, 0x7ca9, 0x7cab, 0x7cac, 0x7cad, 0x7caf,
+  0x7cb0, 0x7cb4, 0x7cb5, 0x7cb6, 0x7cb7, 0x7cb8, 0x7cba, 0x7cbb,
+  /* 0xbc */
+  0x7cbf, 0x7cc0, 0x7cc2, 0x7cc3, 0x7cc4, 0x7cc6, 0x7cc9, 0x7ccb,
+  0x7cce, 0x7ccf, 0x7cd0, 0x7cd1, 0x7cd2, 0x7cd3, 0x7cd4, 0x7cd8,
+  0x7cda, 0x7cdb, 0x7cdd, 0x7cde, 0x7ce1, 0x7ce2, 0x7ce3, 0x7ce4,
+  0x7ce5, 0x7ce6, 0x7ce7, 0x7ce9, 0x7cea, 0x7ceb, 0x7cec, 0x7ced,
+  0x7cee, 0x7cf0, 0x7cf1, 0x7cf2, 0x7cf3, 0x7cf4, 0x7cf5, 0x7cf6,
+  0x7cf7, 0x7cf9, 0x7cfa, 0x7cfc, 0x7cfd, 0x7cfe, 0x7cff, 0x7d00,
+  0x7d01, 0x7d02, 0x7d03, 0x7d04, 0x7d05, 0x7d06, 0x7d07, 0x7d08,
+  0x7d09, 0x7d0b, 0x7d0c, 0x7d0d, 0x7d0e, 0x7d0f, 0x7d10, 0x7d11,
+  0x7d12, 0x7d13, 0x7d14, 0x7d15, 0x7d16, 0x7d17, 0x7d18, 0x7d19,
+  0x7d1a, 0x7d1b, 0x7d1c, 0x7d1d, 0x7d1e, 0x7d1f, 0x7d21, 0x7d23,
+  0x7d24, 0x7d25, 0x7d26, 0x7d28, 0x7d29, 0x7d2a, 0x7d2c, 0x7d2d,
+  0x7d2e, 0x7d30, 0x7d31, 0x7d32, 0x7d33, 0x7d34, 0x7d35, 0x7d36,
+  /* 0xbd */
+  0x7d37, 0x7d38, 0x7d39, 0x7d3a, 0x7d3b, 0x7d3c, 0x7d3d, 0x7d3e,
+  0x7d3f, 0x7d40, 0x7d41, 0x7d42, 0x7d43, 0x7d44, 0x7d45, 0x7d46,
+  0x7d47, 0x7d48, 0x7d49, 0x7d4a, 0x7d4b, 0x7d4c, 0x7d4d, 0x7d4e,
+  0x7d4f, 0x7d50, 0x7d51, 0x7d52, 0x7d53, 0x7d54, 0x7d55, 0x7d56,
+  0x7d57, 0x7d58, 0x7d59, 0x7d5a, 0x7d5b, 0x7d5c, 0x7d5d, 0x7d5e,
+  0x7d5f, 0x7d60, 0x7d61, 0x7d62, 0x7d63, 0x7d64, 0x7d65, 0x7d66,
+  0x7d67, 0x7d68, 0x7d69, 0x7d6a, 0x7d6b, 0x7d6c, 0x7d6d, 0x7d6f,
+  0x7d70, 0x7d71, 0x7d72, 0x7d73, 0x7d74, 0x7d75, 0x7d76, 0x7d78,
+  0x7d79, 0x7d7a, 0x7d7b, 0x7d7c, 0x7d7d, 0x7d7e, 0x7d7f, 0x7d80,
+  0x7d81, 0x7d82, 0x7d83, 0x7d84, 0x7d85, 0x7d86, 0x7d87, 0x7d88,
+  0x7d89, 0x7d8a, 0x7d8b, 0x7d8c, 0x7d8d, 0x7d8e, 0x7d8f, 0x7d90,
+  0x7d91, 0x7d92, 0x7d93, 0x7d94, 0x7d95, 0x7d96, 0x7d97, 0x7d98,
+  /* 0xbe */
+  0x7d99, 0x7d9a, 0x7d9b, 0x7d9c, 0x7d9d, 0x7d9e, 0x7d9f, 0x7da0,
+  0x7da1, 0x7da2, 0x7da3, 0x7da4, 0x7da5, 0x7da7, 0x7da8, 0x7da9,
+  0x7daa, 0x7dab, 0x7dac, 0x7dad, 0x7daf, 0x7db0, 0x7db1, 0x7db2,
+  0x7db3, 0x7db4, 0x7db5, 0x7db6, 0x7db7, 0x7db8, 0x7db9, 0x7dba,
+  0x7dbb, 0x7dbc, 0x7dbd, 0x7dbe, 0x7dbf, 0x7dc0, 0x7dc1, 0x7dc2,
+  0x7dc3, 0x7dc4, 0x7dc5, 0x7dc6, 0x7dc7, 0x7dc8, 0x7dc9, 0x7dca,
+  0x7dcb, 0x7dcc, 0x7dcd, 0x7dce, 0x7dcf, 0x7dd0, 0x7dd1, 0x7dd2,
+  0x7dd3, 0x7dd4, 0x7dd5, 0x7dd6, 0x7dd7, 0x7dd8, 0x7dd9, 0x7dda,
+  0x7ddb, 0x7ddc, 0x7ddd, 0x7dde, 0x7ddf, 0x7de0, 0x7de1, 0x7de2,
+  0x7de3, 0x7de4, 0x7de5, 0x7de6, 0x7de7, 0x7de8, 0x7de9, 0x7dea,
+  0x7deb, 0x7dec, 0x7ded, 0x7dee, 0x7def, 0x7df0, 0x7df1, 0x7df2,
+  0x7df3, 0x7df4, 0x7df5, 0x7df6, 0x7df7, 0x7df8, 0x7df9, 0x7dfa,
+  /* 0xbf */
+  0x7dfb, 0x7dfc, 0x7dfd, 0x7dfe, 0x7dff, 0x7e00, 0x7e01, 0x7e02,
+  0x7e03, 0x7e04, 0x7e05, 0x7e06, 0x7e07, 0x7e08, 0x7e09, 0x7e0a,
+  0x7e0b, 0x7e0c, 0x7e0d, 0x7e0e, 0x7e0f, 0x7e10, 0x7e11, 0x7e12,
+  0x7e13, 0x7e14, 0x7e15, 0x7e16, 0x7e17, 0x7e18, 0x7e19, 0x7e1a,
+  0x7e1b, 0x7e1c, 0x7e1d, 0x7e1e, 0x7e1f, 0x7e20, 0x7e21, 0x7e22,
+  0x7e23, 0x7e24, 0x7e25, 0x7e26, 0x7e27, 0x7e28, 0x7e29, 0x7e2a,
+  0x7e2b, 0x7e2c, 0x7e2d, 0x7e2e, 0x7e2f, 0x7e30, 0x7e31, 0x7e32,
+  0x7e33, 0x7e34, 0x7e35, 0x7e36, 0x7e37, 0x7e38, 0x7e39, 0x7e3a,
+  0x7e3c, 0x7e3d, 0x7e3e, 0x7e3f, 0x7e40, 0x7e42, 0x7e43, 0x7e44,
+  0x7e45, 0x7e46, 0x7e48, 0x7e49, 0x7e4a, 0x7e4b, 0x7e4c, 0x7e4d,
+  0x7e4e, 0x7e4f, 0x7e50, 0x7e51, 0x7e52, 0x7e53, 0x7e54, 0x7e55,
+  0x7e56, 0x7e57, 0x7e58, 0x7e59, 0x7e5a, 0x7e5b, 0x7e5c, 0x7e5d,
+  /* 0xc0 */
+  0x7e5e, 0x7e5f, 0x7e60, 0x7e61, 0x7e62, 0x7e63, 0x7e64, 0x7e65,
+  0x7e66, 0x7e67, 0x7e68, 0x7e69, 0x7e6a, 0x7e6b, 0x7e6c, 0x7e6d,
+  0x7e6e, 0x7e6f, 0x7e70, 0x7e71, 0x7e72, 0x7e73, 0x7e74, 0x7e75,
+  0x7e76, 0x7e77, 0x7e78, 0x7e79, 0x7e7a, 0x7e7b, 0x7e7c, 0x7e7d,
+  0x7e7e, 0x7e7f, 0x7e80, 0x7e81, 0x7e83, 0x7e84, 0x7e85, 0x7e86,
+  0x7e87, 0x7e88, 0x7e89, 0x7e8a, 0x7e8b, 0x7e8c, 0x7e8d, 0x7e8e,
+  0x7e8f, 0x7e90, 0x7e91, 0x7e92, 0x7e93, 0x7e94, 0x7e95, 0x7e96,
+  0x7e97, 0x7e98, 0x7e99, 0x7e9a, 0x7e9c, 0x7e9d, 0x7e9e, 0x7eae,
+  0x7eb4, 0x7ebb, 0x7ebc, 0x7ed6, 0x7ee4, 0x7eec, 0x7ef9, 0x7f0a,
+  0x7f10, 0x7f1e, 0x7f37, 0x7f39, 0x7f3b, 0x7f3c, 0x7f3d, 0x7f3e,
+  0x7f3f, 0x7f40, 0x7f41, 0x7f43, 0x7f46, 0x7f47, 0x7f48, 0x7f49,
+  0x7f4a, 0x7f4b, 0x7f4c, 0x7f4d, 0x7f4e, 0x7f4f, 0x7f52, 0x7f53,
+  /* 0xc1 */
+  0x7f56, 0x7f59, 0x7f5b, 0x7f5c, 0x7f5d, 0x7f5e, 0x7f60, 0x7f63,
+  0x7f64, 0x7f65, 0x7f66, 0x7f67, 0x7f6b, 0x7f6c, 0x7f6d, 0x7f6f,
+  0x7f70, 0x7f73, 0x7f75, 0x7f76, 0x7f77, 0x7f78, 0x7f7a, 0x7f7b,
+  0x7f7c, 0x7f7d, 0x7f7f, 0x7f80, 0x7f82, 0x7f83, 0x7f84, 0x7f85,
+  0x7f86, 0x7f87, 0x7f88, 0x7f89, 0x7f8b, 0x7f8d, 0x7f8f, 0x7f90,
+  0x7f91, 0x7f92, 0x7f93, 0x7f95, 0x7f96, 0x7f97, 0x7f98, 0x7f99,
+  0x7f9b, 0x7f9c, 0x7fa0, 0x7fa2, 0x7fa3, 0x7fa5, 0x7fa6, 0x7fa8,
+  0x7fa9, 0x7faa, 0x7fab, 0x7fac, 0x7fad, 0x7fae, 0x7fb1, 0x7fb3,
+  0x7fb4, 0x7fb5, 0x7fb6, 0x7fb7, 0x7fba, 0x7fbb, 0x7fbe, 0x7fc0,
+  0x7fc2, 0x7fc3, 0x7fc4, 0x7fc6, 0x7fc7, 0x7fc8, 0x7fc9, 0x7fcb,
+  0x7fcd, 0x7fcf, 0x7fd0, 0x7fd1, 0x7fd2, 0x7fd3, 0x7fd6, 0x7fd7,
+  0x7fd9, 0x7fda, 0x7fdb, 0x7fdc, 0x7fdd, 0x7fde, 0x7fe2, 0x7fe3,
+  /* 0xc2 */
+  0x7fe4, 0x7fe7, 0x7fe8, 0x7fea, 0x7feb, 0x7fec, 0x7fed, 0x7fef,
+  0x7ff2, 0x7ff4, 0x7ff5, 0x7ff6, 0x7ff7, 0x7ff8, 0x7ff9, 0x7ffa,
+  0x7ffd, 0x7ffe, 0x7fff, 0x8002, 0x8007, 0x8008, 0x8009, 0x800a,
+  0x800e, 0x800f, 0x8011, 0x8013, 0x801a, 0x801b, 0x801d, 0x801e,
+  0x801f, 0x8021, 0x8023, 0x8024, 0x802b, 0x802c, 0x802d, 0x802e,
+  0x802f, 0x8030, 0x8032, 0x8034, 0x8039, 0x803a, 0x803c, 0x803e,
+  0x8040, 0x8041, 0x8044, 0x8045, 0x8047, 0x8048, 0x8049, 0x804e,
+  0x804f, 0x8050, 0x8051, 0x8053, 0x8055, 0x8056, 0x8057, 0x8059,
+  0x805b, 0x805c, 0x805d, 0x805e, 0x805f, 0x8060, 0x8061, 0x8062,
+  0x8063, 0x8064, 0x8065, 0x8066, 0x8067, 0x8068, 0x806b, 0x806c,
+  0x806d, 0x806e, 0x806f, 0x8070, 0x8072, 0x8073, 0x8074, 0x8075,
+  0x8076, 0x8077, 0x8078, 0x8079, 0x807a, 0x807b, 0x807c, 0x807d,
+  /* 0xc3 */
+  0x807e, 0x8081, 0x8082, 0x8085, 0x8088, 0x808a, 0x808d, 0x808e,
+  0x808f, 0x8090, 0x8091, 0x8092, 0x8094, 0x8095, 0x8097, 0x8099,
+  0x809e, 0x80a3, 0x80a6, 0x80a7, 0x80a8, 0x80ac, 0x80b0, 0x80b3,
+  0x80b5, 0x80b6, 0x80b8, 0x80b9, 0x80bb, 0x80c5, 0x80c7, 0x80c8,
+  0x80c9, 0x80ca, 0x80cb, 0x80cf, 0x80d0, 0x80d1, 0x80d2, 0x80d3,
+  0x80d4, 0x80d5, 0x80d8, 0x80df, 0x80e0, 0x80e2, 0x80e3, 0x80e6,
+  0x80ee, 0x80f5, 0x80f7, 0x80f9, 0x80fb, 0x80fe, 0x80ff, 0x8100,
+  0x8101, 0x8103, 0x8104, 0x8105, 0x8107, 0x8108, 0x810b, 0x810c,
+  0x8115, 0x8117, 0x8119, 0x811b, 0x811c, 0x811d, 0x811f, 0x8120,
+  0x8121, 0x8122, 0x8123, 0x8124, 0x8125, 0x8126, 0x8127, 0x8128,
+  0x8129, 0x812a, 0x812b, 0x812d, 0x812e, 0x8130, 0x8133, 0x8134,
+  0x8135, 0x8137, 0x8139, 0x813a, 0x813b, 0x813c, 0x813d, 0x813f,
+  /* 0xc4 */
+  0x8140, 0x8141, 0x8142, 0x8143, 0x8144, 0x8145, 0x8147, 0x8149,
+  0x814d, 0x814e, 0x814f, 0x8152, 0x8156, 0x8157, 0x8158, 0x815b,
+  0x815c, 0x815d, 0x815e, 0x815f, 0x8161, 0x8162, 0x8163, 0x8164,
+  0x8166, 0x8168, 0x816a, 0x816b, 0x816c, 0x816f, 0x8172, 0x8173,
+  0x8175, 0x8176, 0x8177, 0x8178, 0x8181, 0x8183, 0x8184, 0x8185,
+  0x8186, 0x8187, 0x8189, 0x818b, 0x818c, 0x818d, 0x818e, 0x8190,
+  0x8192, 0x8193, 0x8194, 0x8195, 0x8196, 0x8197, 0x8199, 0x819a,
+  0x819e, 0x819f, 0x81a0, 0x81a1, 0x81a2, 0x81a4, 0x81a5, 0x81a7,
+  0x81a9, 0x81ab, 0x81ac, 0x81ad, 0x81ae, 0x81af, 0x81b0, 0x81b1,
+  0x81b2, 0x81b4, 0x81b5, 0x81b6, 0x81b7, 0x81b8, 0x81b9, 0x81bc,
+  0x81bd, 0x81be, 0x81bf, 0x81c4, 0x81c5, 0x81c7, 0x81c8, 0x81c9,
+  0x81cb, 0x81cd, 0x81ce, 0x81cf, 0x81d0, 0x81d1, 0x81d2, 0x81d3,
+  /* 0xc5 */
+  0x81d4, 0x81d5, 0x81d6, 0x81d7, 0x81d8, 0x81d9, 0x81da, 0x81db,
+  0x81dc, 0x81dd, 0x81de, 0x81df, 0x81e0, 0x81e1, 0x81e2, 0x81e4,
+  0x81e5, 0x81e6, 0x81e8, 0x81e9, 0x81eb, 0x81ee, 0x81ef, 0x81f0,
+  0x81f1, 0x81f2, 0x81f5, 0x81f6, 0x81f7, 0x81f8, 0x81f9, 0x81fa,
+  0x81fd, 0x81ff, 0x8203, 0x8207, 0x8208, 0x8209, 0x820a, 0x820b,
+  0x820e, 0x820f, 0x8211, 0x8213, 0x8215, 0x8216, 0x8217, 0x8218,
+  0x8219, 0x821a, 0x821d, 0x8220, 0x8224, 0x8225, 0x8226, 0x8227,
+  0x8229, 0x822e, 0x8232, 0x823a, 0x823c, 0x823d, 0x823f, 0x8240,
+  0x8241, 0x8242, 0x8243, 0x8245, 0x8246, 0x8248, 0x824a, 0x824c,
+  0x824d, 0x824e, 0x8250, 0x8251, 0x8252, 0x8253, 0x8254, 0x8255,
+  0x8256, 0x8257, 0x8259, 0x825b, 0x825c, 0x825d, 0x825e, 0x8260,
+  0x8261, 0x8262, 0x8263, 0x8264, 0x8265, 0x8266, 0x8267, 0x8269,
+  /* 0xc6 */
+  0x826a, 0x826b, 0x826c, 0x826d, 0x8271, 0x8275, 0x8276, 0x8277,
+  0x8278, 0x827b, 0x827c, 0x8280, 0x8281, 0x8283, 0x8285, 0x8286,
+  0x8287, 0x8289, 0x828c, 0x8290, 0x8293, 0x8294, 0x8295, 0x8296,
+  0x829a, 0x829b, 0x829e, 0x82a0, 0x82a2, 0x82a3, 0x82a7, 0x82b2,
+  0x82b5, 0x82b6, 0x82ba, 0x82bb, 0x82bc, 0x82bf, 0x82c0, 0x82c2,
+  0x82c3, 0x82c5, 0x82c6, 0x82c9, 0x82d0, 0x82d6, 0x82d9, 0x82da,
+  0x82dd, 0x82e2, 0x82e7, 0x82e8, 0x82e9, 0x82ea, 0x82ec, 0x82ed,
+  0x82ee, 0x82f0, 0x82f2, 0x82f3, 0x82f5, 0x82f6, 0x82f8, 0x82fa,
+  0x82fc, 0x82fd, 0x82fe, 0x82ff, 0x8300, 0x830a, 0x830b, 0x830d,
+  0x8310, 0x8312, 0x8313, 0x8316, 0x8318, 0x8319, 0x831d, 0x831e,
+  0x831f, 0x8320, 0x8321, 0x8322, 0x8323, 0x8324, 0x8325, 0x8326,
+  0x8329, 0x832a, 0x832e, 0x8330, 0x8332, 0x8337, 0x833b, 0x833d,
+  /* 0xc7 */
+  0x833e, 0x833f, 0x8341, 0x8342, 0x8344, 0x8345, 0x8348, 0x834a,
+  0x834b, 0x834c, 0x834d, 0x834e, 0x8353, 0x8355, 0x8356, 0x8357,
+  0x8358, 0x8359, 0x835d, 0x8362, 0x8370, 0x8371, 0x8372, 0x8373,
+  0x8374, 0x8375, 0x8376, 0x8379, 0x837a, 0x837e, 0x837f, 0x8380,
+  0x8381, 0x8382, 0x8383, 0x8384, 0x8387, 0x8388, 0x838a, 0x838b,
+  0x838c, 0x838d, 0x838f, 0x8390, 0x8391, 0x8394, 0x8395, 0x8396,
+  0x8397, 0x8399, 0x839a, 0x839d, 0x839f, 0x83a1, 0x83a2, 0x83a3,
+  0x83a4, 0x83a5, 0x83a6, 0x83a7, 0x83ac, 0x83ad, 0x83ae, 0x83af,
+  0x83b5, 0x83bb, 0x83be, 0x83bf, 0x83c2, 0x83c3, 0x83c4, 0x83c6,
+  0x83c8, 0x83c9, 0x83cb, 0x83cd, 0x83ce, 0x83d0, 0x83d1, 0x83d2,
+  0x83d3, 0x83d5, 0x83d7, 0x83d9, 0x83da, 0x83db, 0x83de, 0x83e2,
+  0x83e3, 0x83e4, 0x83e6, 0x83e7, 0x83e8, 0x83eb, 0x83ec, 0x83ed,
+  /* 0xc8 */
+  0x83ee, 0x83ef, 0x83f3, 0x83f4, 0x83f5, 0x83f6, 0x83f7, 0x83fa,
+  0x83fb, 0x83fc, 0x83fe, 0x83ff, 0x8400, 0x8402, 0x8405, 0x8407,
+  0x8408, 0x8409, 0x840a, 0x8410, 0x8412, 0x8413, 0x8414, 0x8415,
+  0x8416, 0x8417, 0x8419, 0x841a, 0x841b, 0x841e, 0x841f, 0x8420,
+  0x8421, 0x8422, 0x8423, 0x8429, 0x842a, 0x842b, 0x842c, 0x842d,
+  0x842e, 0x842f, 0x8430, 0x8432, 0x8433, 0x8434, 0x8435, 0x8436,
+  0x8437, 0x8439, 0x843a, 0x843b, 0x843e, 0x843f, 0x8440, 0x8441,
+  0x8442, 0x8443, 0x8444, 0x8445, 0x8447, 0x8448, 0x8449, 0x844a,
+  0x844b, 0x844c, 0x844d, 0x844e, 0x844f, 0x8450, 0x8452, 0x8453,
+  0x8454, 0x8455, 0x8456, 0x8458, 0x845d, 0x845e, 0x845f, 0x8460,
+  0x8462, 0x8464, 0x8465, 0x8466, 0x8467, 0x8468, 0x846a, 0x846e,
+  0x846f, 0x8470, 0x8472, 0x8474, 0x8477, 0x8479, 0x847b, 0x847c,
+  /* 0xc9 */
+  0x847d, 0x847e, 0x847f, 0x8480, 0x8481, 0x8483, 0x8484, 0x8485,
+  0x8486, 0x848a, 0x848d, 0x848f, 0x8490, 0x8491, 0x8492, 0x8493,
+  0x8494, 0x8495, 0x8496, 0x8498, 0x849a, 0x849b, 0x849d, 0x849e,
+  0x849f, 0x84a0, 0x84a2, 0x84a3, 0x84a4, 0x84a5, 0x84a6, 0x84a7,
+  0x84a8, 0x84a9, 0x84aa, 0x84ab, 0x84ac, 0x84ad, 0x84ae, 0x84b0,
+  0x84b1, 0x84b3, 0x84b5, 0x84b6, 0x84b7, 0x84bb, 0x84bc, 0x84be,
+  0x84c0, 0x84c2, 0x84c3, 0x84c5, 0x84c6, 0x84c7, 0x84c8, 0x84cb,
+  0x84cc, 0x84ce, 0x84cf, 0x84d2, 0x84d4, 0x84d5, 0x84d7, 0x84d8,
+  0x84d9, 0x84da, 0x84db, 0x84dc, 0x84de, 0x84e1, 0x84e2, 0x84e4,
+  0x84e7, 0x84e8, 0x84e9, 0x84ea, 0x84eb, 0x84ed, 0x84ee, 0x84ef,
+  0x84f1, 0x84f2, 0x84f3, 0x84f4, 0x84f5, 0x84f6, 0x84f7, 0x84f8,
+  0x84f9, 0x84fa, 0x84fb, 0x84fd, 0x84fe, 0x8500, 0x8501, 0x8502,
+  /* 0xca */
+  0x8503, 0x8504, 0x8505, 0x8506, 0x8507, 0x8508, 0x8509, 0x850a,
+  0x850b, 0x850d, 0x850e, 0x850f, 0x8510, 0x8512, 0x8514, 0x8515,
+  0x8516, 0x8518, 0x8519, 0x851b, 0x851c, 0x851d, 0x851e, 0x8520,
+  0x8522, 0x8523, 0x8524, 0x8525, 0x8526, 0x8527, 0x8528, 0x8529,
+  0x852a, 0x852d, 0x852e, 0x852f, 0x8530, 0x8531, 0x8532, 0x8533,
+  0x8534, 0x8535, 0x8536, 0x853e, 0x853f, 0x8540, 0x8541, 0x8542,
+  0x8544, 0x8545, 0x8546, 0x8547, 0x854b, 0x854c, 0x854d, 0x854e,
+  0x854f, 0x8550, 0x8551, 0x8552, 0x8553, 0x8554, 0x8555, 0x8557,
+  0x8558, 0x855a, 0x855b, 0x855c, 0x855d, 0x855f, 0x8560, 0x8561,
+  0x8562, 0x8563, 0x8565, 0x8566, 0x8567, 0x8569, 0x856a, 0x856b,
+  0x856c, 0x856d, 0x856e, 0x856f, 0x8570, 0x8571, 0x8573, 0x8575,
+  0x8576, 0x8577, 0x8578, 0x857c, 0x857d, 0x857f, 0x8580, 0x8581,
+  /* 0xcb */
+  0x8582, 0x8583, 0x8586, 0x8588, 0x8589, 0x858a, 0x858b, 0x858c,
+  0x858d, 0x858e, 0x8590, 0x8591, 0x8592, 0x8593, 0x8594, 0x8595,
+  0x8596, 0x8597, 0x8598, 0x8599, 0x859a, 0x859d, 0x859e, 0x859f,
+  0x85a0, 0x85a1, 0x85a2, 0x85a3, 0x85a5, 0x85a6, 0x85a7, 0x85a9,
+  0x85ab, 0x85ac, 0x85ad, 0x85b1, 0x85b2, 0x85b3, 0x85b4, 0x85b5,
+  0x85b6, 0x85b8, 0x85ba, 0x85bb, 0x85bc, 0x85bd, 0x85be, 0x85bf,
+  0x85c0, 0x85c2, 0x85c3, 0x85c4, 0x85c5, 0x85c6, 0x85c7, 0x85c8,
+  0x85ca, 0x85cb, 0x85cc, 0x85cd, 0x85ce, 0x85d1, 0x85d2, 0x85d4,
+  0x85d6, 0x85d7, 0x85d8, 0x85d9, 0x85da, 0x85db, 0x85dd, 0x85de,
+  0x85df, 0x85e0, 0x85e1, 0x85e2, 0x85e3, 0x85e5, 0x85e6, 0x85e7,
+  0x85e8, 0x85ea, 0x85eb, 0x85ec, 0x85ed, 0x85ee, 0x85ef, 0x85f0,
+  0x85f1, 0x85f2, 0x85f3, 0x85f4, 0x85f5, 0x85f6, 0x85f7, 0x85f8,
+  /* 0xcc */
+  0x85f9, 0x85fa, 0x85fc, 0x85fd, 0x85fe, 0x8600, 0x8601, 0x8602,
+  0x8603, 0x8604, 0x8606, 0x8607, 0x8608, 0x8609, 0x860a, 0x860b,
+  0x860c, 0x860d, 0x860e, 0x860f, 0x8610, 0x8612, 0x8613, 0x8614,
+  0x8615, 0x8617, 0x8618, 0x8619, 0x861a, 0x861b, 0x861c, 0x861d,
+  0x861e, 0x861f, 0x8620, 0x8621, 0x8622, 0x8623, 0x8624, 0x8625,
+  0x8626, 0x8628, 0x862a, 0x862b, 0x862c, 0x862d, 0x862e, 0x862f,
+  0x8630, 0x8631, 0x8632, 0x8633, 0x8634, 0x8635, 0x8636, 0x8637,
+  0x8639, 0x863a, 0x863b, 0x863d, 0x863e, 0x863f, 0x8640, 0x8641,
+  0x8642, 0x8643, 0x8644, 0x8645, 0x8646, 0x8647, 0x8648, 0x8649,
+  0x864a, 0x864b, 0x864c, 0x8652, 0x8653, 0x8655, 0x8656, 0x8657,
+  0x8658, 0x8659, 0x865b, 0x865c, 0x865d, 0x865f, 0x8660, 0x8661,
+  0x8663, 0x8664, 0x8665, 0x8666, 0x8667, 0x8668, 0x8669, 0x866a,
+  /* 0xcd */
+  0x866d, 0x866f, 0x8670, 0x8672, 0x8673, 0x8674, 0x8675, 0x8676,
+  0x8677, 0x8678, 0x8683, 0x8684, 0x8685, 0x8686, 0x8687, 0x8688,
+  0x8689, 0x868e, 0x868f, 0x8690, 0x8691, 0x8692, 0x8694, 0x8696,
+  0x8697, 0x8698, 0x8699, 0x869a, 0x869b, 0x869e, 0x869f, 0x86a0,
+  0x86a1, 0x86a2, 0x86a5, 0x86a6, 0x86ab, 0x86ad, 0x86ae, 0x86b2,
+  0x86b3, 0x86b7, 0x86b8, 0x86b9, 0x86bb, 0x86bc, 0x86bd, 0x86be,
+  0x86bf, 0x86c1, 0x86c2, 0x86c3, 0x86c5, 0x86c8, 0x86cc, 0x86cd,
+  0x86d2, 0x86d3, 0x86d5, 0x86d6, 0x86d7, 0x86da, 0x86dc, 0x86dd,
+  0x86e0, 0x86e1, 0x86e2, 0x86e3, 0x86e5, 0x86e6, 0x86e7, 0x86e8,
+  0x86ea, 0x86eb, 0x86ec, 0x86ef, 0x86f5, 0x86f6, 0x86f7, 0x86fa,
+  0x86fb, 0x86fc, 0x86fd, 0x86ff, 0x8701, 0x8704, 0x8705, 0x8706,
+  0x870b, 0x870c, 0x870e, 0x870f, 0x8710, 0x8711, 0x8714, 0x8716,
+  /* 0xce */
+  0x8719, 0x871b, 0x871d, 0x871f, 0x8720, 0x8724, 0x8726, 0x8727,
+  0x8728, 0x872a, 0x872b, 0x872c, 0x872d, 0x872f, 0x8730, 0x8732,
+  0x8733, 0x8735, 0x8736, 0x8738, 0x8739, 0x873a, 0x873c, 0x873d,
+  0x8740, 0x8741, 0x8742, 0x8743, 0x8744, 0x8745, 0x8746, 0x874a,
+  0x874b, 0x874d, 0x874f, 0x8750, 0x8751, 0x8752, 0x8754, 0x8755,
+  0x8756, 0x8758, 0x875a, 0x875b, 0x875c, 0x875d, 0x875e, 0x875f,
+  0x8761, 0x8762, 0x8766, 0x8767, 0x8768, 0x8769, 0x876a, 0x876b,
+  0x876c, 0x876d, 0x876f, 0x8771, 0x8772, 0x8773, 0x8775, 0x8777,
+  0x8778, 0x8779, 0x877a, 0x877f, 0x8780, 0x8781, 0x8784, 0x8786,
+  0x8787, 0x8789, 0x878a, 0x878c, 0x878e, 0x878f, 0x8790, 0x8791,
+  0x8792, 0x8794, 0x8795, 0x8796, 0x8798, 0x8799, 0x879a, 0x879b,
+  0x879c, 0x879d, 0x879e, 0x87a0, 0x87a1, 0x87a2, 0x87a3, 0x87a4,
+  /* 0xcf */
+  0x87a5, 0x87a6, 0x87a7, 0x87a9, 0x87aa, 0x87ae, 0x87b0, 0x87b1,
+  0x87b2, 0x87b4, 0x87b6, 0x87b7, 0x87b8, 0x87b9, 0x87bb, 0x87bc,
+  0x87be, 0x87bf, 0x87c1, 0x87c2, 0x87c3, 0x87c4, 0x87c5, 0x87c7,
+  0x87c8, 0x87c9, 0x87cc, 0x87cd, 0x87ce, 0x87cf, 0x87d0, 0x87d4,
+  0x87d5, 0x87d6, 0x87d7, 0x87d8, 0x87d9, 0x87da, 0x87dc, 0x87dd,
+  0x87de, 0x87df, 0x87e1, 0x87e2, 0x87e3, 0x87e4, 0x87e6, 0x87e7,
+  0x87e8, 0x87e9, 0x87eb, 0x87ec, 0x87ed, 0x87ef, 0x87f0, 0x87f1,
+  0x87f2, 0x87f3, 0x87f4, 0x87f5, 0x87f6, 0x87f7, 0x87f8, 0x87fa,
+  0x87fb, 0x87fc, 0x87fd, 0x87ff, 0x8800, 0x8801, 0x8802, 0x8804,
+  0x8805, 0x8806, 0x8807, 0x8808, 0x8809, 0x880b, 0x880c, 0x880d,
+  0x880e, 0x880f, 0x8810, 0x8811, 0x8812, 0x8814, 0x8817, 0x8818,
+  0x8819, 0x881a, 0x881c, 0x881d, 0x881e, 0x881f, 0x8820, 0x8823,
+  /* 0xd0 */
+  0x8824, 0x8825, 0x8826, 0x8827, 0x8828, 0x8829, 0x882a, 0x882b,
+  0x882c, 0x882d, 0x882e, 0x882f, 0x8830, 0x8831, 0x8833, 0x8834,
+  0x8835, 0x8836, 0x8837, 0x8838, 0x883a, 0x883b, 0x883d, 0x883e,
+  0x883f, 0x8841, 0x8842, 0x8843, 0x8846, 0x8847, 0x8848, 0x8849,
+  0x884a, 0x884b, 0x884e, 0x884f, 0x8850, 0x8851, 0x8852, 0x8853,
+  0x8855, 0x8856, 0x8858, 0x885a, 0x885b, 0x885c, 0x885d, 0x885e,
+  0x885f, 0x8860, 0x8866, 0x8867, 0x886a, 0x886d, 0x886f, 0x8871,
+  0x8873, 0x8874, 0x8875, 0x8876, 0x8878, 0x8879, 0x887a, 0x887b,
+  0x887c, 0x8880, 0x8883, 0x8886, 0x8887, 0x8889, 0x888a, 0x888c,
+  0x888e, 0x888f, 0x8890, 0x8891, 0x8893, 0x8894, 0x8895, 0x8897,
+  0x8898, 0x8899, 0x889a, 0x889b, 0x889d, 0x889e, 0x889f, 0x88a0,
+  0x88a1, 0x88a3, 0x88a5, 0x88a6, 0x88a7, 0x88a8, 0x88a9, 0x88aa,
+  /* 0xd1 */
+  0x88ac, 0x88ae, 0x88af, 0x88b0, 0x88b2, 0x88b3, 0x88b4, 0x88b5,
+  0x88b6, 0x88b8, 0x88b9, 0x88ba, 0x88bb, 0x88bd, 0x88be, 0x88bf,
+  0x88c0, 0x88c3, 0x88c4, 0x88c7, 0x88c8, 0x88ca, 0x88cb, 0x88cc,
+  0x88cd, 0x88cf, 0x88d0, 0x88d1, 0x88d3, 0x88d6, 0x88d7, 0x88da,
+  0x88db, 0x88dc, 0x88dd, 0x88de, 0x88e0, 0x88e1, 0x88e6, 0x88e7,
+  0x88e9, 0x88ea, 0x88eb, 0x88ec, 0x88ed, 0x88ee, 0x88ef, 0x88f2,
+  0x88f5, 0x88f6, 0x88f7, 0x88fa, 0x88fb, 0x88fd, 0x88ff, 0x8900,
+  0x8901, 0x8903, 0x8904, 0x8905, 0x8906, 0x8907, 0x8908, 0x8909,
+  0x890b, 0x890c, 0x890d, 0x890e, 0x890f, 0x8911, 0x8914, 0x8915,
+  0x8916, 0x8917, 0x8918, 0x891c, 0x891d, 0x891e, 0x891f, 0x8920,
+  0x8922, 0x8923, 0x8924, 0x8926, 0x8927, 0x8928, 0x8929, 0x892c,
+  0x892d, 0x892e, 0x892f, 0x8931, 0x8932, 0x8933, 0x8935, 0x8937,
+  /* 0xd2 */
+  0x8938, 0x8939, 0x893a, 0x893b, 0x893c, 0x893d, 0x893e, 0x893f,
+  0x8940, 0x8942, 0x8943, 0x8945, 0x8946, 0x8947, 0x8948, 0x8949,
+  0x894a, 0x894b, 0x894c, 0x894d, 0x894e, 0x894f, 0x8950, 0x8951,
+  0x8952, 0x8953, 0x8954, 0x8955, 0x8956, 0x8957, 0x8958, 0x8959,
+  0x895a, 0x895b, 0x895c, 0x895d, 0x8960, 0x8961, 0x8962, 0x8963,
+  0x8964, 0x8965, 0x8967, 0x8968, 0x8969, 0x896a, 0x896b, 0x896c,
+  0x896d, 0x896e, 0x896f, 0x8970, 0x8971, 0x8972, 0x8973, 0x8974,
+  0x8975, 0x8976, 0x8977, 0x8978, 0x8979, 0x897a, 0x897c, 0x897d,
+  0x897e, 0x8980, 0x8982, 0x8984, 0x8985, 0x8987, 0x8988, 0x8989,
+  0x898a, 0x898b, 0x898c, 0x898d, 0x898e, 0x898f, 0x8990, 0x8991,
+  0x8992, 0x8993, 0x8994, 0x8995, 0x8996, 0x8997, 0x8998, 0x8999,
+  0x899a, 0x899b, 0x899c, 0x899d, 0x899e, 0x899f, 0x89a0, 0x89a1,
+  /* 0xd3 */
+  0x89a2, 0x89a3, 0x89a4, 0x89a5, 0x89a6, 0x89a7, 0x89a8, 0x89a9,
+  0x89aa, 0x89ab, 0x89ac, 0x89ad, 0x89ae, 0x89af, 0x89b0, 0x89b1,
+  0x89b2, 0x89b3, 0x89b4, 0x89b5, 0x89b6, 0x89b7, 0x89b8, 0x89b9,
+  0x89ba, 0x89bb, 0x89bc, 0x89bd, 0x89be, 0x89bf, 0x89c0, 0x89c3,
+  0x89cd, 0x89d3, 0x89d4, 0x89d5, 0x89d7, 0x89d8, 0x89d9, 0x89db,
+  0x89dd, 0x89df, 0x89e0, 0x89e1, 0x89e2, 0x89e4, 0x89e7, 0x89e8,
+  0x89e9, 0x89ea, 0x89ec, 0x89ed, 0x89ee, 0x89f0, 0x89f1, 0x89f2,
+  0x89f4, 0x89f5, 0x89f6, 0x89f7, 0x89f8, 0x89f9, 0x89fa, 0x89fb,
+  0x89fc, 0x89fd, 0x89fe, 0x89ff, 0x8a01, 0x8a02, 0x8a03, 0x8a04,
+  0x8a05, 0x8a06, 0x8a08, 0x8a09, 0x8a0a, 0x8a0b, 0x8a0c, 0x8a0d,
+  0x8a0e, 0x8a0f, 0x8a10, 0x8a11, 0x8a12, 0x8a13, 0x8a14, 0x8a15,
+  0x8a16, 0x8a17, 0x8a18, 0x8a19, 0x8a1a, 0x8a1b, 0x8a1c, 0x8a1d,
+  /* 0xd4 */
+  0x8a1e, 0x8a1f, 0x8a20, 0x8a21, 0x8a22, 0x8a23, 0x8a24, 0x8a25,
+  0x8a26, 0x8a27, 0x8a28, 0x8a29, 0x8a2a, 0x8a2b, 0x8a2c, 0x8a2d,
+  0x8a2e, 0x8a2f, 0x8a30, 0x8a31, 0x8a32, 0x8a33, 0x8a34, 0x8a35,
+  0x8a36, 0x8a37, 0x8a38, 0x8a39, 0x8a3a, 0x8a3b, 0x8a3c, 0x8a3d,
+  0x8a3f, 0x8a40, 0x8a41, 0x8a42, 0x8a43, 0x8a44, 0x8a45, 0x8a46,
+  0x8a47, 0x8a49, 0x8a4a, 0x8a4b, 0x8a4c, 0x8a4d, 0x8a4e, 0x8a4f,
+  0x8a50, 0x8a51, 0x8a52, 0x8a53, 0x8a54, 0x8a55, 0x8a56, 0x8a57,
+  0x8a58, 0x8a59, 0x8a5a, 0x8a5b, 0x8a5c, 0x8a5d, 0x8a5e, 0x8a5f,
+  0x8a60, 0x8a61, 0x8a62, 0x8a63, 0x8a64, 0x8a65, 0x8a66, 0x8a67,
+  0x8a68, 0x8a69, 0x8a6a, 0x8a6b, 0x8a6c, 0x8a6d, 0x8a6e, 0x8a6f,
+  0x8a70, 0x8a71, 0x8a72, 0x8a73, 0x8a74, 0x8a75, 0x8a76, 0x8a77,
+  0x8a78, 0x8a7a, 0x8a7b, 0x8a7c, 0x8a7d, 0x8a7e, 0x8a7f, 0x8a80,
+  /* 0xd5 */
+  0x8a81, 0x8a82, 0x8a83, 0x8a84, 0x8a85, 0x8a86, 0x8a87, 0x8a88,
+  0x8a8b, 0x8a8c, 0x8a8d, 0x8a8e, 0x8a8f, 0x8a90, 0x8a91, 0x8a92,
+  0x8a94, 0x8a95, 0x8a96, 0x8a97, 0x8a98, 0x8a99, 0x8a9a, 0x8a9b,
+  0x8a9c, 0x8a9d, 0x8a9e, 0x8a9f, 0x8aa0, 0x8aa1, 0x8aa2, 0x8aa3,
+  0x8aa4, 0x8aa5, 0x8aa6, 0x8aa7, 0x8aa8, 0x8aa9, 0x8aaa, 0x8aab,
+  0x8aac, 0x8aad, 0x8aae, 0x8aaf, 0x8ab0, 0x8ab1, 0x8ab2, 0x8ab3,
+  0x8ab4, 0x8ab5, 0x8ab6, 0x8ab7, 0x8ab8, 0x8ab9, 0x8aba, 0x8abb,
+  0x8abc, 0x8abd, 0x8abe, 0x8abf, 0x8ac0, 0x8ac1, 0x8ac2, 0x8ac3,
+  0x8ac4, 0x8ac5, 0x8ac6, 0x8ac7, 0x8ac8, 0x8ac9, 0x8aca, 0x8acb,
+  0x8acc, 0x8acd, 0x8ace, 0x8acf, 0x8ad0, 0x8ad1, 0x8ad2, 0x8ad3,
+  0x8ad4, 0x8ad5, 0x8ad6, 0x8ad7, 0x8ad8, 0x8ad9, 0x8ada, 0x8adb,
+  0x8adc, 0x8add, 0x8ade, 0x8adf, 0x8ae0, 0x8ae1, 0x8ae2, 0x8ae3,
+  /* 0xd6 */
+  0x8ae4, 0x8ae5, 0x8ae6, 0x8ae7, 0x8ae8, 0x8ae9, 0x8aea, 0x8aeb,
+  0x8aec, 0x8aed, 0x8aee, 0x8aef, 0x8af0, 0x8af1, 0x8af2, 0x8af3,
+  0x8af4, 0x8af5, 0x8af6, 0x8af7, 0x8af8, 0x8af9, 0x8afa, 0x8afb,
+  0x8afc, 0x8afd, 0x8afe, 0x8aff, 0x8b00, 0x8b01, 0x8b02, 0x8b03,
+  0x8b04, 0x8b05, 0x8b06, 0x8b08, 0x8b09, 0x8b0a, 0x8b0b, 0x8b0c,
+  0x8b0d, 0x8b0e, 0x8b0f, 0x8b10, 0x8b11, 0x8b12, 0x8b13, 0x8b14,
+  0x8b15, 0x8b16, 0x8b17, 0x8b18, 0x8b19, 0x8b1a, 0x8b1b, 0x8b1c,
+  0x8b1d, 0x8b1e, 0x8b1f, 0x8b20, 0x8b21, 0x8b22, 0x8b23, 0x8b24,
+  0x8b25, 0x8b27, 0x8b28, 0x8b29, 0x8b2a, 0x8b2b, 0x8b2c, 0x8b2d,
+  0x8b2e, 0x8b2f, 0x8b30, 0x8b31, 0x8b32, 0x8b33, 0x8b34, 0x8b35,
+  0x8b36, 0x8b37, 0x8b38, 0x8b39, 0x8b3a, 0x8b3b, 0x8b3c, 0x8b3d,
+  0x8b3e, 0x8b3f, 0x8b40, 0x8b41, 0x8b42, 0x8b43, 0x8b44, 0x8b45,
+  /* 0xd7 */
+  0x8b46, 0x8b47, 0x8b48, 0x8b49, 0x8b4a, 0x8b4b, 0x8b4c, 0x8b4d,
+  0x8b4e, 0x8b4f, 0x8b50, 0x8b51, 0x8b52, 0x8b53, 0x8b54, 0x8b55,
+  0x8b56, 0x8b57, 0x8b58, 0x8b59, 0x8b5a, 0x8b5b, 0x8b5c, 0x8b5d,
+  0x8b5e, 0x8b5f, 0x8b60, 0x8b61, 0x8b62, 0x8b63, 0x8b64, 0x8b65,
+  0x8b67, 0x8b68, 0x8b69, 0x8b6a, 0x8b6b, 0x8b6d, 0x8b6e, 0x8b6f,
+  0x8b70, 0x8b71, 0x8b72, 0x8b73, 0x8b74, 0x8b75, 0x8b76, 0x8b77,
+  0x8b78, 0x8b79, 0x8b7a, 0x8b7b, 0x8b7c, 0x8b7d, 0x8b7e, 0x8b7f,
+  0x8b80, 0x8b81, 0x8b82, 0x8b83, 0x8b84, 0x8b85, 0x8b86, 0x8b87,
+  0x8b88, 0x8b89, 0x8b8a, 0x8b8b, 0x8b8c, 0x8b8d, 0x8b8e, 0x8b8f,
+  0x8b90, 0x8b91, 0x8b92, 0x8b93, 0x8b94, 0x8b95, 0x8b96, 0x8b97,
+  0x8b98, 0x8b99, 0x8b9a, 0x8b9b, 0x8b9c, 0x8b9d, 0x8b9e, 0x8b9f,
+  0x8bac, 0x8bb1, 0x8bbb, 0x8bc7, 0x8bd0, 0x8bea, 0x8c09, 0x8c1e,
+  /* 0xd8 */
+  0x8c38, 0x8c39, 0x8c3a, 0x8c3b, 0x8c3c, 0x8c3d, 0x8c3e, 0x8c3f,
+  0x8c40, 0x8c42, 0x8c43, 0x8c44, 0x8c45, 0x8c48, 0x8c4a, 0x8c4b,
+  0x8c4d, 0x8c4e, 0x8c4f, 0x8c50, 0x8c51, 0x8c52, 0x8c53, 0x8c54,
+  0x8c56, 0x8c57, 0x8c58, 0x8c59, 0x8c5b, 0x8c5c, 0x8c5d, 0x8c5e,
+  0x8c5f, 0x8c60, 0x8c63, 0x8c64, 0x8c65, 0x8c66, 0x8c67, 0x8c68,
+  0x8c69, 0x8c6c, 0x8c6d, 0x8c6e, 0x8c6f, 0x8c70, 0x8c71, 0x8c72,
+  0x8c74, 0x8c75, 0x8c76, 0x8c77, 0x8c7b, 0x8c7c, 0x8c7d, 0x8c7e,
+  0x8c7f, 0x8c80, 0x8c81, 0x8c83, 0x8c84, 0x8c86, 0x8c87, 0x8c88,
+  0x8c8b, 0x8c8d, 0x8c8e, 0x8c8f, 0x8c90, 0x8c91, 0x8c92, 0x8c93,
+  0x8c95, 0x8c96, 0x8c97, 0x8c99, 0x8c9a, 0x8c9b, 0x8c9c, 0x8c9d,
+  0x8c9e, 0x8c9f, 0x8ca0, 0x8ca1, 0x8ca2, 0x8ca3, 0x8ca4, 0x8ca5,
+  0x8ca6, 0x8ca7, 0x8ca8, 0x8ca9, 0x8caa, 0x8cab, 0x8cac, 0x8cad,
+  /* 0xd9 */
+  0x8cae, 0x8caf, 0x8cb0, 0x8cb1, 0x8cb2, 0x8cb3, 0x8cb4, 0x8cb5,
+  0x8cb6, 0x8cb7, 0x8cb8, 0x8cb9, 0x8cba, 0x8cbb, 0x8cbc, 0x8cbd,
+  0x8cbe, 0x8cbf, 0x8cc0, 0x8cc1, 0x8cc2, 0x8cc3, 0x8cc4, 0x8cc5,
+  0x8cc6, 0x8cc7, 0x8cc8, 0x8cc9, 0x8cca, 0x8ccb, 0x8ccc, 0x8ccd,
+  0x8cce, 0x8ccf, 0x8cd0, 0x8cd1, 0x8cd2, 0x8cd3, 0x8cd4, 0x8cd5,
+  0x8cd6, 0x8cd7, 0x8cd8, 0x8cd9, 0x8cda, 0x8cdb, 0x8cdc, 0x8cdd,
+  0x8cde, 0x8cdf, 0x8ce0, 0x8ce1, 0x8ce2, 0x8ce3, 0x8ce4, 0x8ce5,
+  0x8ce6, 0x8ce7, 0x8ce8, 0x8ce9, 0x8cea, 0x8ceb, 0x8cec, 0x8ced,
+  0x8cee, 0x8cef, 0x8cf0, 0x8cf1, 0x8cf2, 0x8cf3, 0x8cf4, 0x8cf5,
+  0x8cf6, 0x8cf7, 0x8cf8, 0x8cf9, 0x8cfa, 0x8cfb, 0x8cfc, 0x8cfd,
+  0x8cfe, 0x8cff, 0x8d00, 0x8d01, 0x8d02, 0x8d03, 0x8d04, 0x8d05,
+  0x8d06, 0x8d07, 0x8d08, 0x8d09, 0x8d0a, 0x8d0b, 0x8d0c, 0x8d0d,
+  /* 0xda */
+  0x8d0e, 0x8d0f, 0x8d10, 0x8d11, 0x8d12, 0x8d13, 0x8d14, 0x8d15,
+  0x8d16, 0x8d17, 0x8d18, 0x8d19, 0x8d1a, 0x8d1b, 0x8d1c, 0x8d20,
+  0x8d51, 0x8d52, 0x8d57, 0x8d5f, 0x8d65, 0x8d68, 0x8d69, 0x8d6a,
+  0x8d6c, 0x8d6e, 0x8d6f, 0x8d71, 0x8d72, 0x8d78, 0x8d79, 0x8d7a,
+  0x8d7b, 0x8d7c, 0x8d7d, 0x8d7e, 0x8d7f, 0x8d80, 0x8d82, 0x8d83,
+  0x8d86, 0x8d87, 0x8d88, 0x8d89, 0x8d8c, 0x8d8d, 0x8d8e, 0x8d8f,
+  0x8d90, 0x8d92, 0x8d93, 0x8d95, 0x8d96, 0x8d97, 0x8d98, 0x8d99,
+  0x8d9a, 0x8d9b, 0x8d9c, 0x8d9d, 0x8d9e, 0x8da0, 0x8da1, 0x8da2,
+  0x8da4, 0x8da5, 0x8da6, 0x8da7, 0x8da8, 0x8da9, 0x8daa, 0x8dab,
+  0x8dac, 0x8dad, 0x8dae, 0x8daf, 0x8db0, 0x8db2, 0x8db6, 0x8db7,
+  0x8db9, 0x8dbb, 0x8dbd, 0x8dc0, 0x8dc1, 0x8dc2, 0x8dc5, 0x8dc7,
+  0x8dc8, 0x8dc9, 0x8dca, 0x8dcd, 0x8dd0, 0x8dd2, 0x8dd3, 0x8dd4,
+  /* 0xdb */
+  0x8dd5, 0x8dd8, 0x8dd9, 0x8ddc, 0x8de0, 0x8de1, 0x8de2, 0x8de5,
+  0x8de6, 0x8de7, 0x8de9, 0x8ded, 0x8dee, 0x8df0, 0x8df1, 0x8df2,
+  0x8df4, 0x8df6, 0x8dfc, 0x8dfe, 0x8dff, 0x8e00, 0x8e01, 0x8e02,
+  0x8e03, 0x8e04, 0x8e06, 0x8e07, 0x8e08, 0x8e0b, 0x8e0d, 0x8e0e,
+  0x8e10, 0x8e11, 0x8e12, 0x8e13, 0x8e15, 0x8e16, 0x8e17, 0x8e18,
+  0x8e19, 0x8e1a, 0x8e1b, 0x8e1c, 0x8e20, 0x8e21, 0x8e24, 0x8e25,
+  0x8e26, 0x8e27, 0x8e28, 0x8e2b, 0x8e2d, 0x8e30, 0x8e32, 0x8e33,
+  0x8e34, 0x8e36, 0x8e37, 0x8e38, 0x8e3b, 0x8e3c, 0x8e3e, 0x8e3f,
+  0x8e43, 0x8e45, 0x8e46, 0x8e4c, 0x8e4d, 0x8e4e, 0x8e4f, 0x8e50,
+  0x8e53, 0x8e54, 0x8e55, 0x8e56, 0x8e57, 0x8e58, 0x8e5a, 0x8e5b,
+  0x8e5c, 0x8e5d, 0x8e5e, 0x8e5f, 0x8e60, 0x8e61, 0x8e62, 0x8e63,
+  0x8e64, 0x8e65, 0x8e67, 0x8e68, 0x8e6a, 0x8e6b, 0x8e6e, 0x8e71,
+  /* 0xdc */
+  0x8e73, 0x8e75, 0x8e77, 0x8e78, 0x8e79, 0x8e7a, 0x8e7b, 0x8e7d,
+  0x8e7e, 0x8e80, 0x8e82, 0x8e83, 0x8e84, 0x8e86, 0x8e88, 0x8e89,
+  0x8e8a, 0x8e8b, 0x8e8c, 0x8e8d, 0x8e8e, 0x8e91, 0x8e92, 0x8e93,
+  0x8e95, 0x8e96, 0x8e97, 0x8e98, 0x8e99, 0x8e9a, 0x8e9b, 0x8e9d,
+  0x8e9f, 0x8ea0, 0x8ea1, 0x8ea2, 0x8ea3, 0x8ea4, 0x8ea5, 0x8ea6,
+  0x8ea7, 0x8ea8, 0x8ea9, 0x8eaa, 0x8ead, 0x8eae, 0x8eb0, 0x8eb1,
+  0x8eb3, 0x8eb4, 0x8eb5, 0x8eb6, 0x8eb7, 0x8eb8, 0x8eb9, 0x8ebb,
+  0x8ebc, 0x8ebd, 0x8ebe, 0x8ebf, 0x8ec0, 0x8ec1, 0x8ec2, 0x8ec3,
+  0x8ec4, 0x8ec5, 0x8ec6, 0x8ec7, 0x8ec8, 0x8ec9, 0x8eca, 0x8ecb,
+  0x8ecc, 0x8ecd, 0x8ecf, 0x8ed0, 0x8ed1, 0x8ed2, 0x8ed3, 0x8ed4,
+  0x8ed5, 0x8ed6, 0x8ed7, 0x8ed8, 0x8ed9, 0x8eda, 0x8edb, 0x8edc,
+  0x8edd, 0x8ede, 0x8edf, 0x8ee0, 0x8ee1, 0x8ee2, 0x8ee3, 0x8ee4,
+  /* 0xdd */
+  0x8ee5, 0x8ee6, 0x8ee7, 0x8ee8, 0x8ee9, 0x8eea, 0x8eeb, 0x8eec,
+  0x8eed, 0x8eee, 0x8eef, 0x8ef0, 0x8ef1, 0x8ef2, 0x8ef3, 0x8ef4,
+  0x8ef5, 0x8ef6, 0x8ef7, 0x8ef8, 0x8ef9, 0x8efa, 0x8efb, 0x8efc,
+  0x8efd, 0x8efe, 0x8eff, 0x8f00, 0x8f01, 0x8f02, 0x8f03, 0x8f04,
+  0x8f05, 0x8f06, 0x8f07, 0x8f08, 0x8f09, 0x8f0a, 0x8f0b, 0x8f0c,
+  0x8f0d, 0x8f0e, 0x8f0f, 0x8f10, 0x8f11, 0x8f12, 0x8f13, 0x8f14,
+  0x8f15, 0x8f16, 0x8f17, 0x8f18, 0x8f19, 0x8f1a, 0x8f1b, 0x8f1c,
+  0x8f1d, 0x8f1e, 0x8f1f, 0x8f20, 0x8f21, 0x8f22, 0x8f23, 0x8f24,
+  0x8f25, 0x8f26, 0x8f27, 0x8f28, 0x8f29, 0x8f2a, 0x8f2b, 0x8f2c,
+  0x8f2d, 0x8f2e, 0x8f2f, 0x8f30, 0x8f31, 0x8f32, 0x8f33, 0x8f34,
+  0x8f35, 0x8f36, 0x8f37, 0x8f38, 0x8f39, 0x8f3a, 0x8f3b, 0x8f3c,
+  0x8f3d, 0x8f3e, 0x8f3f, 0x8f40, 0x8f41, 0x8f42, 0x8f43, 0x8f44,
+  /* 0xde */
+  0x8f45, 0x8f46, 0x8f47, 0x8f48, 0x8f49, 0x8f4a, 0x8f4b, 0x8f4c,
+  0x8f4d, 0x8f4e, 0x8f4f, 0x8f50, 0x8f51, 0x8f52, 0x8f53, 0x8f54,
+  0x8f55, 0x8f56, 0x8f57, 0x8f58, 0x8f59, 0x8f5a, 0x8f5b, 0x8f5c,
+  0x8f5d, 0x8f5e, 0x8f5f, 0x8f60, 0x8f61, 0x8f62, 0x8f63, 0x8f64,
+  0x8f65, 0x8f6a, 0x8f80, 0x8f8c, 0x8f92, 0x8f9d, 0x8fa0, 0x8fa1,
+  0x8fa2, 0x8fa4, 0x8fa5, 0x8fa6, 0x8fa7, 0x8faa, 0x8fac, 0x8fad,
+  0x8fae, 0x8faf, 0x8fb2, 0x8fb3, 0x8fb4, 0x8fb5, 0x8fb7, 0x8fb8,
+  0x8fba, 0x8fbb, 0x8fbc, 0x8fbf, 0x8fc0, 0x8fc3, 0x8fc6, 0x8fc9,
+  0x8fca, 0x8fcb, 0x8fcc, 0x8fcd, 0x8fcf, 0x8fd2, 0x8fd6, 0x8fd7,
+  0x8fda, 0x8fe0, 0x8fe1, 0x8fe3, 0x8fe7, 0x8fec, 0x8fef, 0x8ff1,
+  0x8ff2, 0x8ff4, 0x8ff5, 0x8ff6, 0x8ffa, 0x8ffb, 0x8ffc, 0x8ffe,
+  0x8fff, 0x9007, 0x9008, 0x900c, 0x900e, 0x9013, 0x9015, 0x9018,
+  /* 0xdf */
+  0x9019, 0x901c, 0x9023, 0x9024, 0x9025, 0x9027, 0x9028, 0x9029,
+  0x902a, 0x902b, 0x902c, 0x9030, 0x9031, 0x9032, 0x9033, 0x9034,
+  0x9037, 0x9039, 0x903a, 0x903d, 0x903f, 0x9040, 0x9043, 0x9045,
+  0x9046, 0x9048, 0x9049, 0x904a, 0x904b, 0x904c, 0x904e, 0x9054,
+  0x9055, 0x9056, 0x9059, 0x905a, 0x905c, 0x905d, 0x905e, 0x905f,
+  0x9060, 0x9061, 0x9064, 0x9066, 0x9067, 0x9069, 0x906a, 0x906b,
+  0x906c, 0x906f, 0x9070, 0x9071, 0x9072, 0x9073, 0x9076, 0x9077,
+  0x9078, 0x9079, 0x907a, 0x907b, 0x907c, 0x907e, 0x9081, 0x9084,
+  0x9085, 0x9086, 0x9087, 0x9089, 0x908a, 0x908c, 0x908d, 0x908e,
+  0x908f, 0x9090, 0x9092, 0x9094, 0x9096, 0x9098, 0x909a, 0x909c,
+  0x909e, 0x909f, 0x90a0, 0x90a4, 0x90a5, 0x90a7, 0x90a8, 0x90a9,
+  0x90ab, 0x90ad, 0x90b2, 0x90b7, 0x90bc, 0x90bd, 0x90bf, 0x90c0,
+  /* 0xe0 */
+  0x90c2, 0x90c3, 0x90c6, 0x90c8, 0x90c9, 0x90cb, 0x90cc, 0x90cd,
+  0x90d2, 0x90d4, 0x90d5, 0x90d6, 0x90d8, 0x90d9, 0x90da, 0x90de,
+  0x90df, 0x90e0, 0x90e3, 0x90e4, 0x90e5, 0x90e9, 0x90ea, 0x90ec,
+  0x90ee, 0x90f0, 0x90f1, 0x90f2, 0x90f3, 0x90f5, 0x90f6, 0x90f7,
+  0x90f9, 0x90fa, 0x90fb, 0x90fc, 0x90ff, 0x9100, 0x9101, 0x9103,
+  0x9105, 0x9106, 0x9107, 0x9108, 0x9109, 0x910a, 0x910b, 0x910c,
+  0x910d, 0x910e, 0x910f, 0x9110, 0x9111, 0x9112, 0x9113, 0x9114,
+  0x9115, 0x9116, 0x9117, 0x9118, 0x911a, 0x911b, 0x911c, 0x911d,
+  0x911f, 0x9120, 0x9121, 0x9124, 0x9125, 0x9126, 0x9127, 0x9128,
+  0x9129, 0x912a, 0x912b, 0x912c, 0x912d, 0x912e, 0x9130, 0x9132,
+  0x9133, 0x9134, 0x9135, 0x9136, 0x9137, 0x9138, 0x913a, 0x913b,
+  0x913c, 0x913d, 0x913e, 0x913f, 0x9140, 0x9141, 0x9142, 0x9144,
+  /* 0xe1 */
+  0x9145, 0x9147, 0x9148, 0x9151, 0x9153, 0x9154, 0x9155, 0x9156,
+  0x9158, 0x9159, 0x915b, 0x915c, 0x915f, 0x9160, 0x9166, 0x9167,
+  0x9168, 0x916b, 0x916d, 0x9173, 0x917a, 0x917b, 0x917c, 0x9180,
+  0x9181, 0x9182, 0x9183, 0x9184, 0x9186, 0x9188, 0x918a, 0x918e,
+  0x918f, 0x9193, 0x9194, 0x9195, 0x9196, 0x9197, 0x9198, 0x9199,
+  0x919c, 0x919d, 0x919e, 0x919f, 0x91a0, 0x91a1, 0x91a4, 0x91a5,
+  0x91a6, 0x91a7, 0x91a8, 0x91a9, 0x91ab, 0x91ac, 0x91b0, 0x91b1,
+  0x91b2, 0x91b3, 0x91b6, 0x91b7, 0x91b8, 0x91b9, 0x91bb, 0x91bc,
+  0x91bd, 0x91be, 0x91bf, 0x91c0, 0x91c1, 0x91c2, 0x91c3, 0x91c4,
+  0x91c5, 0x91c6, 0x91c8, 0x91cb, 0x91d0, 0x91d2, 0x91d3, 0x91d4,
+  0x91d5, 0x91d6, 0x91d7, 0x91d8, 0x91d9, 0x91da, 0x91db, 0x91dd,
+  0x91de, 0x91df, 0x91e0, 0x91e1, 0x91e2, 0x91e3, 0x91e4, 0x91e5,
+  /* 0xe2 */
+  0x91e6, 0x91e7, 0x91e8, 0x91e9, 0x91ea, 0x91eb, 0x91ec, 0x91ed,
+  0x91ee, 0x91ef, 0x91f0, 0x91f1, 0x91f2, 0x91f3, 0x91f4, 0x91f5,
+  0x91f6, 0x91f7, 0x91f8, 0x91f9, 0x91fa, 0x91fb, 0x91fc, 0x91fd,
+  0x91fe, 0x91ff, 0x9200, 0x9201, 0x9202, 0x9203, 0x9204, 0x9205,
+  0x9206, 0x9207, 0x9208, 0x9209, 0x920a, 0x920b, 0x920c, 0x920d,
+  0x920e, 0x920f, 0x9210, 0x9211, 0x9212, 0x9213, 0x9214, 0x9215,
+  0x9216, 0x9217, 0x9218, 0x9219, 0x921a, 0x921b, 0x921c, 0x921d,
+  0x921e, 0x921f, 0x9220, 0x9221, 0x9222, 0x9223, 0x9224, 0x9225,
+  0x9226, 0x9227, 0x9228, 0x9229, 0x922a, 0x922b, 0x922c, 0x922d,
+  0x922e, 0x922f, 0x9230, 0x9231, 0x9232, 0x9233, 0x9234, 0x9235,
+  0x9236, 0x9237, 0x9238, 0x9239, 0x923a, 0x923b, 0x923c, 0x923d,
+  0x923e, 0x923f, 0x9240, 0x9241, 0x9242, 0x9243, 0x9244, 0x9245,
+  /* 0xe3 */
+  0x9246, 0x9247, 0x9248, 0x9249, 0x924a, 0x924b, 0x924c, 0x924d,
+  0x924e, 0x924f, 0x9250, 0x9251, 0x9252, 0x9253, 0x9254, 0x9255,
+  0x9256, 0x9257, 0x9258, 0x9259, 0x925a, 0x925b, 0x925c, 0x925d,
+  0x925e, 0x925f, 0x9260, 0x9261, 0x9262, 0x9263, 0x9264, 0x9265,
+  0x9266, 0x9267, 0x9268, 0x9269, 0x926a, 0x926b, 0x926c, 0x926d,
+  0x926e, 0x926f, 0x9270, 0x9271, 0x9272, 0x9273, 0x9275, 0x9276,
+  0x9277, 0x9278, 0x9279, 0x927a, 0x927b, 0x927c, 0x927d, 0x927e,
+  0x927f, 0x9280, 0x9281, 0x9282, 0x9283, 0x9284, 0x9285, 0x9286,
+  0x9287, 0x9288, 0x9289, 0x928a, 0x928b, 0x928c, 0x928d, 0x928f,
+  0x9290, 0x9291, 0x9292, 0x9293, 0x9294, 0x9295, 0x9296, 0x9297,
+  0x9298, 0x9299, 0x929a, 0x929b, 0x929c, 0x929d, 0x929e, 0x929f,
+  0x92a0, 0x92a1, 0x92a2, 0x92a3, 0x92a4, 0x92a5, 0x92a6, 0x92a7,
+  /* 0xe4 */
+  0x92a8, 0x92a9, 0x92aa, 0x92ab, 0x92ac, 0x92ad, 0x92af, 0x92b0,
+  0x92b1, 0x92b2, 0x92b3, 0x92b4, 0x92b5, 0x92b6, 0x92b7, 0x92b8,
+  0x92b9, 0x92ba, 0x92bb, 0x92bc, 0x92bd, 0x92be, 0x92bf, 0x92c0,
+  0x92c1, 0x92c2, 0x92c3, 0x92c4, 0x92c5, 0x92c6, 0x92c7, 0x92c9,
+  0x92ca, 0x92cb, 0x92cc, 0x92cd, 0x92ce, 0x92cf, 0x92d0, 0x92d1,
+  0x92d2, 0x92d3, 0x92d4, 0x92d5, 0x92d6, 0x92d7, 0x92d8, 0x92d9,
+  0x92da, 0x92db, 0x92dc, 0x92dd, 0x92de, 0x92df, 0x92e0, 0x92e1,
+  0x92e2, 0x92e3, 0x92e4, 0x92e5, 0x92e6, 0x92e7, 0x92e8, 0x92e9,
+  0x92ea, 0x92eb, 0x92ec, 0x92ed, 0x92ee, 0x92ef, 0x92f0, 0x92f1,
+  0x92f2, 0x92f3, 0x92f4, 0x92f5, 0x92f6, 0x92f7, 0x92f8, 0x92f9,
+  0x92fa, 0x92fb, 0x92fc, 0x92fd, 0x92fe, 0x92ff, 0x9300, 0x9301,
+  0x9302, 0x9303, 0x9304, 0x9305, 0x9306, 0x9307, 0x9308, 0x9309,
+  /* 0xe5 */
+  0x930a, 0x930b, 0x930c, 0x930d, 0x930e, 0x930f, 0x9310, 0x9311,
+  0x9312, 0x9313, 0x9314, 0x9315, 0x9316, 0x9317, 0x9318, 0x9319,
+  0x931a, 0x931b, 0x931c, 0x931d, 0x931e, 0x931f, 0x9320, 0x9321,
+  0x9322, 0x9323, 0x9324, 0x9325, 0x9326, 0x9327, 0x9328, 0x9329,
+  0x932a, 0x932b, 0x932c, 0x932d, 0x932e, 0x932f, 0x9330, 0x9331,
+  0x9332, 0x9333, 0x9334, 0x9335, 0x9336, 0x9337, 0x9338, 0x9339,
+  0x933a, 0x933b, 0x933c, 0x933d, 0x933f, 0x9340, 0x9341, 0x9342,
+  0x9343, 0x9344, 0x9345, 0x9346, 0x9347, 0x9348, 0x9349, 0x934a,
+  0x934b, 0x934c, 0x934d, 0x934e, 0x934f, 0x9350, 0x9351, 0x9352,
+  0x9353, 0x9354, 0x9355, 0x9356, 0x9357, 0x9358, 0x9359, 0x935a,
+  0x935b, 0x935c, 0x935d, 0x935e, 0x935f, 0x9360, 0x9361, 0x9362,
+  0x9363, 0x9364, 0x9365, 0x9366, 0x9367, 0x9368, 0x9369, 0x936b,
+  /* 0xe6 */
+  0x936c, 0x936d, 0x936e, 0x936f, 0x9370, 0x9371, 0x9372, 0x9373,
+  0x9374, 0x9375, 0x9376, 0x9377, 0x9378, 0x9379, 0x937a, 0x937b,
+  0x937c, 0x937d, 0x937e, 0x937f, 0x9380, 0x9381, 0x9382, 0x9383,
+  0x9384, 0x9385, 0x9386, 0x9387, 0x9388, 0x9389, 0x938a, 0x938b,
+  0x938c, 0x938d, 0x938e, 0x9390, 0x9391, 0x9392, 0x9393, 0x9394,
+  0x9395, 0x9396, 0x9397, 0x9398, 0x9399, 0x939a, 0x939b, 0x939c,
+  0x939d, 0x939e, 0x939f, 0x93a0, 0x93a1, 0x93a2, 0x93a3, 0x93a4,
+  0x93a5, 0x93a6, 0x93a7, 0x93a8, 0x93a9, 0x93aa, 0x93ab, 0x93ac,
+  0x93ad, 0x93ae, 0x93af, 0x93b0, 0x93b1, 0x93b2, 0x93b3, 0x93b4,
+  0x93b5, 0x93b6, 0x93b7, 0x93b8, 0x93b9, 0x93ba, 0x93bb, 0x93bc,
+  0x93bd, 0x93be, 0x93bf, 0x93c0, 0x93c1, 0x93c2, 0x93c3, 0x93c4,
+  0x93c5, 0x93c6, 0x93c7, 0x93c8, 0x93c9, 0x93cb, 0x93cc, 0x93cd,
+  /* 0xe7 */
+  0x93ce, 0x93cf, 0x93d0, 0x93d1, 0x93d2, 0x93d3, 0x93d4, 0x93d5,
+  0x93d7, 0x93d8, 0x93d9, 0x93da, 0x93db, 0x93dc, 0x93dd, 0x93de,
+  0x93df, 0x93e0, 0x93e1, 0x93e2, 0x93e3, 0x93e4, 0x93e5, 0x93e6,
+  0x93e7, 0x93e8, 0x93e9, 0x93ea, 0x93eb, 0x93ec, 0x93ed, 0x93ee,
+  0x93ef, 0x93f0, 0x93f1, 0x93f2, 0x93f3, 0x93f4, 0x93f5, 0x93f6,
+  0x93f7, 0x93f8, 0x93f9, 0x93fa, 0x93fb, 0x93fc, 0x93fd, 0x93fe,
+  0x93ff, 0x9400, 0x9401, 0x9402, 0x9403, 0x9404, 0x9405, 0x9406,
+  0x9407, 0x9408, 0x9409, 0x940a, 0x940b, 0x940c, 0x940d, 0x940e,
+  0x940f, 0x9410, 0x9411, 0x9412, 0x9413, 0x9414, 0x9415, 0x9416,
+  0x9417, 0x9418, 0x9419, 0x941a, 0x941b, 0x941c, 0x941d, 0x941e,
+  0x941f, 0x9420, 0x9421, 0x9422, 0x9423, 0x9424, 0x9425, 0x9426,
+  0x9427, 0x9428, 0x9429, 0x942a, 0x942b, 0x942c, 0x942d, 0x942e,
+  /* 0xe8 */
+  0x942f, 0x9430, 0x9431, 0x9432, 0x9433, 0x9434, 0x9435, 0x9436,
+  0x9437, 0x9438, 0x9439, 0x943a, 0x943b, 0x943c, 0x943d, 0x943f,
+  0x9440, 0x9441, 0x9442, 0x9443, 0x9444, 0x9445, 0x9446, 0x9447,
+  0x9448, 0x9449, 0x944a, 0x944b, 0x944c, 0x944d, 0x944e, 0x944f,
+  0x9450, 0x9451, 0x9452, 0x9453, 0x9454, 0x9455, 0x9456, 0x9457,
+  0x9458, 0x9459, 0x945a, 0x945b, 0x945c, 0x945d, 0x945e, 0x945f,
+  0x9460, 0x9461, 0x9462, 0x9463, 0x9464, 0x9465, 0x9466, 0x9467,
+  0x9468, 0x9469, 0x946a, 0x946c, 0x946d, 0x946e, 0x946f, 0x9470,
+  0x9471, 0x9472, 0x9473, 0x9474, 0x9475, 0x9476, 0x9477, 0x9478,
+  0x9479, 0x947a, 0x947b, 0x947c, 0x947d, 0x947e, 0x947f, 0x9480,
+  0x9481, 0x9482, 0x9483, 0x9484, 0x9491, 0x9496, 0x9498, 0x94c7,
+  0x94cf, 0x94d3, 0x94d4, 0x94da, 0x94e6, 0x94fb, 0x951c, 0x9520,
+  /* 0xe9 */
+  0x9527, 0x9533, 0x953d, 0x9543, 0x9548, 0x954b, 0x9555, 0x955a,
+  0x9560, 0x956e, 0x9574, 0x9575, 0x9577, 0x9578, 0x9579, 0x957a,
+  0x957b, 0x957c, 0x957d, 0x957e, 0x9580, 0x9581, 0x9582, 0x9583,
+  0x9584, 0x9585, 0x9586, 0x9587, 0x9588, 0x9589, 0x958a, 0x958b,
+  0x958c, 0x958d, 0x958e, 0x958f, 0x9590, 0x9591, 0x9592, 0x9593,
+  0x9594, 0x9595, 0x9596, 0x9597, 0x9598, 0x9599, 0x959a, 0x959b,
+  0x959c, 0x959d, 0x959e, 0x959f, 0x95a0, 0x95a1, 0x95a2, 0x95a3,
+  0x95a4, 0x95a5, 0x95a6, 0x95a7, 0x95a8, 0x95a9, 0x95aa, 0x95ab,
+  0x95ac, 0x95ad, 0x95ae, 0x95af, 0x95b0, 0x95b1, 0x95b2, 0x95b3,
+  0x95b4, 0x95b5, 0x95b6, 0x95b7, 0x95b8, 0x95b9, 0x95ba, 0x95bb,
+  0x95bc, 0x95bd, 0x95be, 0x95bf, 0x95c0, 0x95c1, 0x95c2, 0x95c3,
+  0x95c4, 0x95c5, 0x95c6, 0x95c7, 0x95c8, 0x95c9, 0x95ca, 0x95cb,
+  /* 0xea */
+  0x95cc, 0x95cd, 0x95ce, 0x95cf, 0x95d0, 0x95d1, 0x95d2, 0x95d3,
+  0x95d4, 0x95d5, 0x95d6, 0x95d7, 0x95d8, 0x95d9, 0x95da, 0x95db,
+  0x95dc, 0x95dd, 0x95de, 0x95df, 0x95e0, 0x95e1, 0x95e2, 0x95e3,
+  0x95e4, 0x95e5, 0x95e6, 0x95e7, 0x95ec, 0x95ff, 0x9607, 0x9613,
+  0x9618, 0x961b, 0x961e, 0x9620, 0x9623, 0x9624, 0x9625, 0x9626,
+  0x9627, 0x9628, 0x9629, 0x962b, 0x962c, 0x962d, 0x962f, 0x9630,
+  0x9637, 0x9638, 0x9639, 0x963a, 0x963e, 0x9641, 0x9643, 0x964a,
+  0x964e, 0x964f, 0x9651, 0x9652, 0x9653, 0x9656, 0x9657, 0x9658,
+  0x9659, 0x965a, 0x965c, 0x965d, 0x965e, 0x9660, 0x9663, 0x9665,
+  0x9666, 0x966b, 0x966d, 0x966e, 0x966f, 0x9670, 0x9671, 0x9673,
+  0x9678, 0x9679, 0x967a, 0x967b, 0x967c, 0x967d, 0x967e, 0x967f,
+  0x9680, 0x9681, 0x9682, 0x9683, 0x9684, 0x9687, 0x9689, 0x968a,
+  /* 0xeb */
+  0x968c, 0x968e, 0x9691, 0x9692, 0x9693, 0x9695, 0x9696, 0x969a,
+  0x969b, 0x969d, 0x969e, 0x969f, 0x96a0, 0x96a1, 0x96a2, 0x96a3,
+  0x96a4, 0x96a5, 0x96a6, 0x96a8, 0x96a9, 0x96aa, 0x96ab, 0x96ac,
+  0x96ad, 0x96ae, 0x96af, 0x96b1, 0x96b2, 0x96b4, 0x96b5, 0x96b7,
+  0x96b8, 0x96ba, 0x96bb, 0x96bf, 0x96c2, 0x96c3, 0x96c8, 0x96ca,
+  0x96cb, 0x96d0, 0x96d1, 0x96d3, 0x96d4, 0x96d6, 0x96d7, 0x96d8,
+  0x96d9, 0x96da, 0x96db, 0x96dc, 0x96dd, 0x96de, 0x96df, 0x96e1,
+  0x96e2, 0x96e3, 0x96e4, 0x96e5, 0x96e6, 0x96e7, 0x96eb, 0x96ec,
+  0x96ed, 0x96ee, 0x96f0, 0x96f1, 0x96f2, 0x96f4, 0x96f5, 0x96f8,
+  0x96fa, 0x96fb, 0x96fc, 0x96fd, 0x96ff, 0x9702, 0x9703, 0x9705,
+  0x970a, 0x970b, 0x970c, 0x9710, 0x9711, 0x9712, 0x9714, 0x9715,
+  0x9717, 0x9718, 0x9719, 0x971a, 0x971b, 0x971d, 0x971f, 0x9720,
+  /* 0xec */
+  0x9721, 0x9722, 0x9723, 0x9724, 0x9725, 0x9726, 0x9727, 0x9728,
+  0x9729, 0x972b, 0x972c, 0x972e, 0x972f, 0x9731, 0x9733, 0x9734,
+  0x9735, 0x9736, 0x9737, 0x973a, 0x973b, 0x973c, 0x973d, 0x973f,
+  0x9740, 0x9741, 0x9742, 0x9743, 0x9744, 0x9745, 0x9746, 0x9747,
+  0x9748, 0x9749, 0x974a, 0x974b, 0x974c, 0x974d, 0x974e, 0x974f,
+  0x9750, 0x9751, 0x9754, 0x9755, 0x9757, 0x9758, 0x975a, 0x975c,
+  0x975d, 0x975f, 0x9763, 0x9764, 0x9766, 0x9767, 0x9768, 0x976a,
+  0x976b, 0x976c, 0x976d, 0x976e, 0x976f, 0x9770, 0x9771, 0x9772,
+  0x9775, 0x9777, 0x9778, 0x9779, 0x977a, 0x977b, 0x977d, 0x977e,
+  0x977f, 0x9780, 0x9781, 0x9782, 0x9783, 0x9784, 0x9786, 0x9787,
+  0x9788, 0x9789, 0x978a, 0x978c, 0x978e, 0x978f, 0x9790, 0x9793,
+  0x9795, 0x9796, 0x9797, 0x9799, 0x979a, 0x979b, 0x979c, 0x979d,
+  /* 0xed */
+  0x979e, 0x979f, 0x97a1, 0x97a2, 0x97a4, 0x97a5, 0x97a6, 0x97a7,
+  0x97a8, 0x97a9, 0x97aa, 0x97ac, 0x97ae, 0x97b0, 0x97b1, 0x97b3,
+  0x97b5, 0x97b6, 0x97b7, 0x97b8, 0x97b9, 0x97ba, 0x97bb, 0x97bc,
+  0x97bd, 0x97be, 0x97bf, 0x97c0, 0x97c1, 0x97c2, 0x97c3, 0x97c4,
+  0x97c5, 0x97c6, 0x97c7, 0x97c8, 0x97c9, 0x97ca, 0x97cb, 0x97cc,
+  0x97cd, 0x97ce, 0x97cf, 0x97d0, 0x97d1, 0x97d2, 0x97d3, 0x97d4,
+  0x97d5, 0x97d6, 0x97d7, 0x97d8, 0x97d9, 0x97da, 0x97db, 0x97dc,
+  0x97dd, 0x97de, 0x97df, 0x97e0, 0x97e1, 0x97e2, 0x97e3, 0x97e4,
+  0x97e5, 0x97e8, 0x97ee, 0x97ef, 0x97f0, 0x97f1, 0x97f2, 0x97f4,
+  0x97f7, 0x97f8, 0x97f9, 0x97fa, 0x97fb, 0x97fc, 0x97fd, 0x97fe,
+  0x97ff, 0x9800, 0x9801, 0x9802, 0x9803, 0x9804, 0x9805, 0x9806,
+  0x9807, 0x9808, 0x9809, 0x980a, 0x980b, 0x980c, 0x980d, 0x980e,
+  /* 0xee */
+  0x980f, 0x9810, 0x9811, 0x9812, 0x9813, 0x9814, 0x9815, 0x9816,
+  0x9817, 0x9818, 0x9819, 0x981a, 0x981b, 0x981c, 0x981d, 0x981e,
+  0x981f, 0x9820, 0x9821, 0x9822, 0x9823, 0x9824, 0x9825, 0x9826,
+  0x9827, 0x9828, 0x9829, 0x982a, 0x982b, 0x982c, 0x982d, 0x982e,
+  0x982f, 0x9830, 0x9831, 0x9832, 0x9833, 0x9834, 0x9835, 0x9836,
+  0x9837, 0x9838, 0x9839, 0x983a, 0x983b, 0x983c, 0x983d, 0x983e,
+  0x983f, 0x9840, 0x9841, 0x9842, 0x9843, 0x9844, 0x9845, 0x9846,
+  0x9847, 0x9848, 0x9849, 0x984a, 0x984b, 0x984c, 0x984d, 0x984e,
+  0x984f, 0x9850, 0x9851, 0x9852, 0x9853, 0x9854, 0x9855, 0x9856,
+  0x9857, 0x9858, 0x9859, 0x985a, 0x985b, 0x985c, 0x985d, 0x985e,
+  0x985f, 0x9860, 0x9861, 0x9862, 0x9863, 0x9864, 0x9865, 0x9866,
+  0x9867, 0x9868, 0x9869, 0x986a, 0x986b, 0x986c, 0x986d, 0x986e,
+  /* 0xef */
+  0x986f, 0x9870, 0x9871, 0x9872, 0x9873, 0x9874, 0x988b, 0x988e,
+  0x9892, 0x9895, 0x9899, 0x98a3, 0x98a8, 0x98a9, 0x98aa, 0x98ab,
+  0x98ac, 0x98ad, 0x98ae, 0x98af, 0x98b0, 0x98b1, 0x98b2, 0x98b3,
+  0x98b4, 0x98b5, 0x98b6, 0x98b7, 0x98b8, 0x98b9, 0x98ba, 0x98bb,
+  0x98bc, 0x98bd, 0x98be, 0x98bf, 0x98c0, 0x98c1, 0x98c2, 0x98c3,
+  0x98c4, 0x98c5, 0x98c6, 0x98c7, 0x98c8, 0x98c9, 0x98ca, 0x98cb,
+  0x98cc, 0x98cd, 0x98cf, 0x98d0, 0x98d4, 0x98d6, 0x98d7, 0x98db,
+  0x98dc, 0x98dd, 0x98e0, 0x98e1, 0x98e2, 0x98e3, 0x98e4, 0x98e5,
+  0x98e6, 0x98e9, 0x98ea, 0x98eb, 0x98ec, 0x98ed, 0x98ee, 0x98ef,
+  0x98f0, 0x98f1, 0x98f2, 0x98f3, 0x98f4, 0x98f5, 0x98f6, 0x98f7,
+  0x98f8, 0x98f9, 0x98fa, 0x98fb, 0x98fc, 0x98fd, 0x98fe, 0x98ff,
+  0x9900, 0x9901, 0x9902, 0x9903, 0x9904, 0x9905, 0x9906, 0x9907,
+  /* 0xf0 */
+  0x9908, 0x9909, 0x990a, 0x990b, 0x990c, 0x990e, 0x990f, 0x9911,
+  0x9912, 0x9913, 0x9914, 0x9915, 0x9916, 0x9917, 0x9918, 0x9919,
+  0x991a, 0x991b, 0x991c, 0x991d, 0x991e, 0x991f, 0x9920, 0x9921,
+  0x9922, 0x9923, 0x9924, 0x9925, 0x9926, 0x9927, 0x9928, 0x9929,
+  0x992a, 0x992b, 0x992c, 0x992d, 0x992f, 0x9930, 0x9931, 0x9932,
+  0x9933, 0x9934, 0x9935, 0x9936, 0x9937, 0x9938, 0x9939, 0x993a,
+  0x993b, 0x993c, 0x993d, 0x993e, 0x993f, 0x9940, 0x9941, 0x9942,
+  0x9943, 0x9944, 0x9945, 0x9946, 0x9947, 0x9948, 0x9949, 0x994a,
+  0x994b, 0x994c, 0x994d, 0x994e, 0x994f, 0x9950, 0x9951, 0x9952,
+  0x9953, 0x9956, 0x9957, 0x9958, 0x9959, 0x995a, 0x995b, 0x995c,
+  0x995d, 0x995e, 0x995f, 0x9960, 0x9961, 0x9962, 0x9964, 0x9966,
+  0x9973, 0x9978, 0x9979, 0x997b, 0x997e, 0x9982, 0x9983, 0x9989,
+  /* 0xf1 */
+  0x998c, 0x998e, 0x999a, 0x999b, 0x999c, 0x999d, 0x999e, 0x999f,
+  0x99a0, 0x99a1, 0x99a2, 0x99a3, 0x99a4, 0x99a6, 0x99a7, 0x99a9,
+  0x99aa, 0x99ab, 0x99ac, 0x99ad, 0x99ae, 0x99af, 0x99b0, 0x99b1,
+  0x99b2, 0x99b3, 0x99b4, 0x99b5, 0x99b6, 0x99b7, 0x99b8, 0x99b9,
+  0x99ba, 0x99bb, 0x99bc, 0x99bd, 0x99be, 0x99bf, 0x99c0, 0x99c1,
+  0x99c2, 0x99c3, 0x99c4, 0x99c5, 0x99c6, 0x99c7, 0x99c8, 0x99c9,
+  0x99ca, 0x99cb, 0x99cc, 0x99cd, 0x99ce, 0x99cf, 0x99d0, 0x99d1,
+  0x99d2, 0x99d3, 0x99d4, 0x99d5, 0x99d6, 0x99d7, 0x99d8, 0x99d9,
+  0x99da, 0x99db, 0x99dc, 0x99dd, 0x99de, 0x99df, 0x99e0, 0x99e1,
+  0x99e2, 0x99e3, 0x99e4, 0x99e5, 0x99e6, 0x99e7, 0x99e8, 0x99e9,
+  0x99ea, 0x99eb, 0x99ec, 0x99ed, 0x99ee, 0x99ef, 0x99f0, 0x99f1,
+  0x99f2, 0x99f3, 0x99f4, 0x99f5, 0x99f6, 0x99f7, 0x99f8, 0x99f9,
+  /* 0xf2 */
+  0x99fa, 0x99fb, 0x99fc, 0x99fd, 0x99fe, 0x99ff, 0x9a00, 0x9a01,
+  0x9a02, 0x9a03, 0x9a04, 0x9a05, 0x9a06, 0x9a07, 0x9a08, 0x9a09,
+  0x9a0a, 0x9a0b, 0x9a0c, 0x9a0d, 0x9a0e, 0x9a0f, 0x9a10, 0x9a11,
+  0x9a12, 0x9a13, 0x9a14, 0x9a15, 0x9a16, 0x9a17, 0x9a18, 0x9a19,
+  0x9a1a, 0x9a1b, 0x9a1c, 0x9a1d, 0x9a1e, 0x9a1f, 0x9a20, 0x9a21,
+  0x9a22, 0x9a23, 0x9a24, 0x9a25, 0x9a26, 0x9a27, 0x9a28, 0x9a29,
+  0x9a2a, 0x9a2b, 0x9a2c, 0x9a2d, 0x9a2e, 0x9a2f, 0x9a30, 0x9a31,
+  0x9a32, 0x9a33, 0x9a34, 0x9a35, 0x9a36, 0x9a37, 0x9a38, 0x9a39,
+  0x9a3a, 0x9a3b, 0x9a3c, 0x9a3d, 0x9a3e, 0x9a3f, 0x9a40, 0x9a41,
+  0x9a42, 0x9a43, 0x9a44, 0x9a45, 0x9a46, 0x9a47, 0x9a48, 0x9a49,
+  0x9a4a, 0x9a4b, 0x9a4c, 0x9a4d, 0x9a4e, 0x9a4f, 0x9a50, 0x9a51,
+  0x9a52, 0x9a53, 0x9a54, 0x9a55, 0x9a56, 0x9a57, 0x9a58, 0x9a59,
+  /* 0xf3 */
+  0x9a5a, 0x9a5b, 0x9a5c, 0x9a5d, 0x9a5e, 0x9a5f, 0x9a60, 0x9a61,
+  0x9a62, 0x9a63, 0x9a64, 0x9a65, 0x9a66, 0x9a67, 0x9a68, 0x9a69,
+  0x9a6a, 0x9a6b, 0x9a72, 0x9a83, 0x9a89, 0x9a8d, 0x9a8e, 0x9a94,
+  0x9a95, 0x9a99, 0x9aa6, 0x9aa9, 0x9aaa, 0x9aab, 0x9aac, 0x9aad,
+  0x9aae, 0x9aaf, 0x9ab2, 0x9ab3, 0x9ab4, 0x9ab5, 0x9ab9, 0x9abb,
+  0x9abd, 0x9abe, 0x9abf, 0x9ac3, 0x9ac4, 0x9ac6, 0x9ac7, 0x9ac8,
+  0x9ac9, 0x9aca, 0x9acd, 0x9ace, 0x9acf, 0x9ad0, 0x9ad2, 0x9ad4,
+  0x9ad5, 0x9ad6, 0x9ad7, 0x9ad9, 0x9ada, 0x9adb, 0x9adc, 0x9add,
+  0x9ade, 0x9ae0, 0x9ae2, 0x9ae3, 0x9ae4, 0x9ae5, 0x9ae7, 0x9ae8,
+  0x9ae9, 0x9aea, 0x9aec, 0x9aee, 0x9af0, 0x9af1, 0x9af2, 0x9af3,
+  0x9af4, 0x9af5, 0x9af6, 0x9af7, 0x9af8, 0x9afa, 0x9afc, 0x9afd,
+  0x9afe, 0x9aff, 0x9b00, 0x9b01, 0x9b02, 0x9b04, 0x9b05, 0x9b06,
+  /* 0xf4 */
+  0x9b07, 0x9b09, 0x9b0a, 0x9b0b, 0x9b0c, 0x9b0d, 0x9b0e, 0x9b10,
+  0x9b11, 0x9b12, 0x9b14, 0x9b15, 0x9b16, 0x9b17, 0x9b18, 0x9b19,
+  0x9b1a, 0x9b1b, 0x9b1c, 0x9b1d, 0x9b1e, 0x9b20, 0x9b21, 0x9b22,
+  0x9b24, 0x9b25, 0x9b26, 0x9b27, 0x9b28, 0x9b29, 0x9b2a, 0x9b2b,
+  0x9b2c, 0x9b2d, 0x9b2e, 0x9b30, 0x9b31, 0x9b33, 0x9b34, 0x9b35,
+  0x9b36, 0x9b37, 0x9b38, 0x9b39, 0x9b3a, 0x9b3d, 0x9b3e, 0x9b3f,
+  0x9b40, 0x9b46, 0x9b4a, 0x9b4b, 0x9b4c, 0x9b4e, 0x9b50, 0x9b52,
+  0x9b53, 0x9b55, 0x9b56, 0x9b57, 0x9b58, 0x9b59, 0x9b5a, 0x9b5b,
+  0x9b5c, 0x9b5d, 0x9b5e, 0x9b5f, 0x9b60, 0x9b61, 0x9b62, 0x9b63,
+  0x9b64, 0x9b65, 0x9b66, 0x9b67, 0x9b68, 0x9b69, 0x9b6a, 0x9b6b,
+  0x9b6c, 0x9b6d, 0x9b6e, 0x9b6f, 0x9b70, 0x9b71, 0x9b72, 0x9b73,
+  0x9b74, 0x9b75, 0x9b76, 0x9b77, 0x9b78, 0x9b79, 0x9b7a, 0x9b7b,
+  /* 0xf5 */
+  0x9b7c, 0x9b7d, 0x9b7e, 0x9b7f, 0x9b80, 0x9b81, 0x9b82, 0x9b83,
+  0x9b84, 0x9b85, 0x9b86, 0x9b87, 0x9b88, 0x9b89, 0x9b8a, 0x9b8b,
+  0x9b8c, 0x9b8d, 0x9b8e, 0x9b8f, 0x9b90, 0x9b91, 0x9b92, 0x9b93,
+  0x9b94, 0x9b95, 0x9b96, 0x9b97, 0x9b98, 0x9b99, 0x9b9a, 0x9b9b,
+  0x9b9c, 0x9b9d, 0x9b9e, 0x9b9f, 0x9ba0, 0x9ba1, 0x9ba2, 0x9ba3,
+  0x9ba4, 0x9ba5, 0x9ba6, 0x9ba7, 0x9ba8, 0x9ba9, 0x9baa, 0x9bab,
+  0x9bac, 0x9bad, 0x9bae, 0x9baf, 0x9bb0, 0x9bb1, 0x9bb2, 0x9bb3,
+  0x9bb4, 0x9bb5, 0x9bb6, 0x9bb7, 0x9bb8, 0x9bb9, 0x9bba, 0x9bbb,
+  0x9bbc, 0x9bbd, 0x9bbe, 0x9bbf, 0x9bc0, 0x9bc1, 0x9bc2, 0x9bc3,
+  0x9bc4, 0x9bc5, 0x9bc6, 0x9bc7, 0x9bc8, 0x9bc9, 0x9bca, 0x9bcb,
+  0x9bcc, 0x9bcd, 0x9bce, 0x9bcf, 0x9bd0, 0x9bd1, 0x9bd2, 0x9bd3,
+  0x9bd4, 0x9bd5, 0x9bd6, 0x9bd7, 0x9bd8, 0x9bd9, 0x9bda, 0x9bdb,
+  /* 0xf6 */
+  0x9bdc, 0x9bdd, 0x9bde, 0x9bdf, 0x9be0, 0x9be1, 0x9be2, 0x9be3,
+  0x9be4, 0x9be5, 0x9be6, 0x9be7, 0x9be8, 0x9be9, 0x9bea, 0x9beb,
+  0x9bec, 0x9bed, 0x9bee, 0x9bef, 0x9bf0, 0x9bf1, 0x9bf2, 0x9bf3,
+  0x9bf4, 0x9bf5, 0x9bf6, 0x9bf7, 0x9bf8, 0x9bf9, 0x9bfa, 0x9bfb,
+  0x9bfc, 0x9bfd, 0x9bfe, 0x9bff, 0x9c00, 0x9c01, 0x9c02, 0x9c03,
+  0x9c04, 0x9c05, 0x9c06, 0x9c07, 0x9c08, 0x9c09, 0x9c0a, 0x9c0b,
+  0x9c0c, 0x9c0d, 0x9c0e, 0x9c0f, 0x9c10, 0x9c11, 0x9c12, 0x9c13,
+  0x9c14, 0x9c15, 0x9c16, 0x9c17, 0x9c18, 0x9c19, 0x9c1a, 0x9c1b,
+  0x9c1c, 0x9c1d, 0x9c1e, 0x9c1f, 0x9c20, 0x9c21, 0x9c22, 0x9c23,
+  0x9c24, 0x9c25, 0x9c26, 0x9c27, 0x9c28, 0x9c29, 0x9c2a, 0x9c2b,
+  0x9c2c, 0x9c2d, 0x9c2e, 0x9c2f, 0x9c30, 0x9c31, 0x9c32, 0x9c33,
+  0x9c34, 0x9c35, 0x9c36, 0x9c37, 0x9c38, 0x9c39, 0x9c3a, 0x9c3b,
+  /* 0xf7 */
+  0x9c3c, 0x9c3d, 0x9c3e, 0x9c3f, 0x9c40, 0x9c41, 0x9c42, 0x9c43,
+  0x9c44, 0x9c45, 0x9c46, 0x9c47, 0x9c48, 0x9c49, 0x9c4a, 0x9c4b,
+  0x9c4c, 0x9c4d, 0x9c4e, 0x9c4f, 0x9c50, 0x9c51, 0x9c52, 0x9c53,
+  0x9c54, 0x9c55, 0x9c56, 0x9c57, 0x9c58, 0x9c59, 0x9c5a, 0x9c5b,
+  0x9c5c, 0x9c5d, 0x9c5e, 0x9c5f, 0x9c60, 0x9c61, 0x9c62, 0x9c63,
+  0x9c64, 0x9c65, 0x9c66, 0x9c67, 0x9c68, 0x9c69, 0x9c6a, 0x9c6b,
+  0x9c6c, 0x9c6d, 0x9c6e, 0x9c6f, 0x9c70, 0x9c71, 0x9c72, 0x9c73,
+  0x9c74, 0x9c75, 0x9c76, 0x9c77, 0x9c78, 0x9c79, 0x9c7a, 0x9c7b,
+  0x9c7d, 0x9c7e, 0x9c80, 0x9c83, 0x9c84, 0x9c89, 0x9c8a, 0x9c8c,
+  0x9c8f, 0x9c93, 0x9c96, 0x9c97, 0x9c98, 0x9c99, 0x9c9d, 0x9caa,
+  0x9cac, 0x9caf, 0x9cb9, 0x9cbe, 0x9cbf, 0x9cc0, 0x9cc1, 0x9cc2,
+  0x9cc8, 0x9cc9, 0x9cd1, 0x9cd2, 0x9cda, 0x9cdb, 0x9ce0, 0x9ce1,
+  /* 0xf8 */
+  0x9ce3, 0x9ce4, 0x9ce5, 0x9ce6, 0x9ce7, 0x9ce8, 0x9ce9, 0x9cea,
+  0x9ceb, 0x9cec, 0x9ced, 0x9cee, 0x9cef, 0x9cf0, 0x9cf1, 0x9cf2,
+  0x9cf3, 0x9cf4, 0x9cf5, 0x9cf6, 0x9cf7, 0x9cf8, 0x9cf9, 0x9cfa,
+  0x9cfb, 0x9cfc, 0x9cfd, 0x9cfe, 0x9cff, 0x9d00, 0x9d01, 0x9d02,
+  0x9d03, 0x9d04, 0x9d05, 0x9d06, 0x9d07, 0x9d08, 0x9d09, 0x9d0a,
+  0x9d0b, 0x9d0c, 0x9d0d, 0x9d0e, 0x9d0f, 0x9d10, 0x9d11, 0x9d12,
+  0x9d13, 0x9d14, 0x9d15, 0x9d16, 0x9d17, 0x9d18, 0x9d19, 0x9d1a,
+  0x9d1b, 0x9d1c, 0x9d1d, 0x9d1e, 0x9d1f, 0x9d20, 0x9d21, 0x9d22,
+  0x9d23, 0x9d24, 0x9d25, 0x9d26, 0x9d27, 0x9d28, 0x9d29, 0x9d2a,
+  0x9d2b, 0x9d2c, 0x9d2d, 0x9d2e, 0x9d2f, 0x9d30, 0x9d31, 0x9d32,
+  0x9d33, 0x9d34, 0x9d35, 0x9d36, 0x9d37, 0x9d38, 0x9d39, 0x9d3a,
+  0x9d3b, 0x9d3c, 0x9d3d, 0x9d3e, 0x9d3f, 0x9d40, 0x9d41, 0x9d42,
+  /* 0xf9 */
+  0x9d43, 0x9d44, 0x9d45, 0x9d46, 0x9d47, 0x9d48, 0x9d49, 0x9d4a,
+  0x9d4b, 0x9d4c, 0x9d4d, 0x9d4e, 0x9d4f, 0x9d50, 0x9d51, 0x9d52,
+  0x9d53, 0x9d54, 0x9d55, 0x9d56, 0x9d57, 0x9d58, 0x9d59, 0x9d5a,
+  0x9d5b, 0x9d5c, 0x9d5d, 0x9d5e, 0x9d5f, 0x9d60, 0x9d61, 0x9d62,
+  0x9d63, 0x9d64, 0x9d65, 0x9d66, 0x9d67, 0x9d68, 0x9d69, 0x9d6a,
+  0x9d6b, 0x9d6c, 0x9d6d, 0x9d6e, 0x9d6f, 0x9d70, 0x9d71, 0x9d72,
+  0x9d73, 0x9d74, 0x9d75, 0x9d76, 0x9d77, 0x9d78, 0x9d79, 0x9d7a,
+  0x9d7b, 0x9d7c, 0x9d7d, 0x9d7e, 0x9d7f, 0x9d80, 0x9d81, 0x9d82,
+  0x9d83, 0x9d84, 0x9d85, 0x9d86, 0x9d87, 0x9d88, 0x9d89, 0x9d8a,
+  0x9d8b, 0x9d8c, 0x9d8d, 0x9d8e, 0x9d8f, 0x9d90, 0x9d91, 0x9d92,
+  0x9d93, 0x9d94, 0x9d95, 0x9d96, 0x9d97, 0x9d98, 0x9d99, 0x9d9a,
+  0x9d9b, 0x9d9c, 0x9d9d, 0x9d9e, 0x9d9f, 0x9da0, 0x9da1, 0x9da2,
+  /* 0xfa */
+  0x9da3, 0x9da4, 0x9da5, 0x9da6, 0x9da7, 0x9da8, 0x9da9, 0x9daa,
+  0x9dab, 0x9dac, 0x9dad, 0x9dae, 0x9daf, 0x9db0, 0x9db1, 0x9db2,
+  0x9db3, 0x9db4, 0x9db5, 0x9db6, 0x9db7, 0x9db8, 0x9db9, 0x9dba,
+  0x9dbb, 0x9dbc, 0x9dbd, 0x9dbe, 0x9dbf, 0x9dc0, 0x9dc1, 0x9dc2,
+  0x9dc3, 0x9dc4, 0x9dc5, 0x9dc6, 0x9dc7, 0x9dc8, 0x9dc9, 0x9dca,
+  0x9dcb, 0x9dcc, 0x9dcd, 0x9dce, 0x9dcf, 0x9dd0, 0x9dd1, 0x9dd2,
+  0x9dd3, 0x9dd4, 0x9dd5, 0x9dd6, 0x9dd7, 0x9dd8, 0x9dd9, 0x9dda,
+  0x9ddb, 0x9ddc, 0x9ddd, 0x9dde, 0x9ddf, 0x9de0, 0x9de1, 0x9de2,
+  0x9de3, 0x9de4, 0x9de5, 0x9de6, 0x9de7, 0x9de8, 0x9de9, 0x9dea,
+  0x9deb, 0x9dec, 0x9ded, 0x9dee, 0x9def, 0x9df0, 0x9df1, 0x9df2,
+  0x9df3, 0x9df4, 0x9df5, 0x9df6, 0x9df7, 0x9df8, 0x9df9, 0x9dfa,
+  0x9dfb, 0x9dfc, 0x9dfd, 0x9dfe, 0x9dff, 0x9e00, 0x9e01, 0x9e02,
+  /* 0xfb */
+  0x9e03, 0x9e04, 0x9e05, 0x9e06, 0x9e07, 0x9e08, 0x9e09, 0x9e0a,
+  0x9e0b, 0x9e0c, 0x9e0d, 0x9e0e, 0x9e0f, 0x9e10, 0x9e11, 0x9e12,
+  0x9e13, 0x9e14, 0x9e15, 0x9e16, 0x9e17, 0x9e18, 0x9e19, 0x9e1a,
+  0x9e1b, 0x9e1c, 0x9e1d, 0x9e1e, 0x9e24, 0x9e27, 0x9e2e, 0x9e30,
+  0x9e34, 0x9e3b, 0x9e3c, 0x9e40, 0x9e4d, 0x9e50, 0x9e52, 0x9e53,
+  0x9e54, 0x9e56, 0x9e59, 0x9e5d, 0x9e5f, 0x9e60, 0x9e61, 0x9e62,
+  0x9e65, 0x9e6e, 0x9e6f, 0x9e72, 0x9e74, 0x9e75, 0x9e76, 0x9e77,
+  0x9e78, 0x9e79, 0x9e7a, 0x9e7b, 0x9e7c, 0x9e7d, 0x9e80, 0x9e81,
+  0x9e83, 0x9e84, 0x9e85, 0x9e86, 0x9e89, 0x9e8a, 0x9e8c, 0x9e8d,
+  0x9e8e, 0x9e8f, 0x9e90, 0x9e91, 0x9e94, 0x9e95, 0x9e96, 0x9e97,
+  0x9e98, 0x9e99, 0x9e9a, 0x9e9b, 0x9e9c, 0x9e9e, 0x9ea0, 0x9ea1,
+  0x9ea2, 0x9ea3, 0x9ea4, 0x9ea5, 0x9ea7, 0x9ea8, 0x9ea9, 0x9eaa,
+  /* 0xfc */
+  0x9eab, 0x9eac, 0x9ead, 0x9eae, 0x9eaf, 0x9eb0, 0x9eb1, 0x9eb2,
+  0x9eb3, 0x9eb5, 0x9eb6, 0x9eb7, 0x9eb9, 0x9eba, 0x9ebc, 0x9ebf,
+  0x9ec0, 0x9ec1, 0x9ec2, 0x9ec3, 0x9ec5, 0x9ec6, 0x9ec7, 0x9ec8,
+  0x9eca, 0x9ecb, 0x9ecc, 0x9ed0, 0x9ed2, 0x9ed3, 0x9ed5, 0x9ed6,
+  0x9ed7, 0x9ed9, 0x9eda, 0x9ede, 0x9ee1, 0x9ee3, 0x9ee4, 0x9ee6,
+  0x9ee8, 0x9eeb, 0x9eec, 0x9eed, 0x9eee, 0x9ef0, 0x9ef1, 0x9ef2,
+  0x9ef3, 0x9ef4, 0x9ef5, 0x9ef6, 0x9ef7, 0x9ef8, 0x9efa, 0x9efd,
+  0x9eff, 0x9f00, 0x9f01, 0x9f02, 0x9f03, 0x9f04, 0x9f05, 0x9f06,
+  0x9f07, 0x9f08, 0x9f09, 0x9f0a, 0x9f0c, 0x9f0f, 0x9f11, 0x9f12,
+  0x9f14, 0x9f15, 0x9f16, 0x9f18, 0x9f1a, 0x9f1b, 0x9f1c, 0x9f1d,
+  0x9f1e, 0x9f1f, 0x9f21, 0x9f23, 0x9f24, 0x9f25, 0x9f26, 0x9f27,
+  0x9f28, 0x9f29, 0x9f2a, 0x9f2b, 0x9f2d, 0x9f2e, 0x9f30, 0x9f31,
+  /* 0xfd */
+  0x9f32, 0x9f33, 0x9f34, 0x9f35, 0x9f36, 0x9f38, 0x9f3a, 0x9f3c,
+  0x9f3f, 0x9f40, 0x9f41, 0x9f42, 0x9f43, 0x9f45, 0x9f46, 0x9f47,
+  0x9f48, 0x9f49, 0x9f4a, 0x9f4b, 0x9f4c, 0x9f4d, 0x9f4e, 0x9f4f,
+  0x9f52, 0x9f53, 0x9f54, 0x9f55, 0x9f56, 0x9f57, 0x9f58, 0x9f59,
+  0x9f5a, 0x9f5b, 0x9f5c, 0x9f5d, 0x9f5e, 0x9f5f, 0x9f60, 0x9f61,
+  0x9f62, 0x9f63, 0x9f64, 0x9f65, 0x9f66, 0x9f67, 0x9f68, 0x9f69,
+  0x9f6a, 0x9f6b, 0x9f6c, 0x9f6d, 0x9f6e, 0x9f6f, 0x9f70, 0x9f71,
+  0x9f72, 0x9f73, 0x9f74, 0x9f75, 0x9f76, 0x9f77, 0x9f78, 0x9f79,
+  0x9f7a, 0x9f7b, 0x9f7c, 0x9f7d, 0x9f7e, 0x9f81, 0x9f82, 0x9f8d,
+  0x9f8e, 0x9f8f, 0x9f90, 0x9f91, 0x9f92, 0x9f93, 0x9f94, 0x9f95,
+  0x9f96, 0x9f97, 0x9f98, 0x9f9c, 0x9f9d, 0x9f9e, 0x9fa1, 0x9fa2,
+  0x9fa3, 0x9fa4, 0x9fa5, 0xf92c, 0xf979, 0xf995, 0xf9e7, 0xf9f1,
+  /* 0xfe */
+  0xfa0c, 0xfa0d, 0xfa0e, 0xfa0f, 0xfa11, 0xfa13, 0xfa14, 0xfa18,
+  0xfa1f, 0xfa20, 0xfa21, 0xfa23, 0xfa24, 0xfa27, 0xfa28, 0xfa29,
+};
+
+static int
+gbkext2_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 >= 0xa8 && c1 <= 0xfe)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if ((c2 >= 0x40 && c2 < 0x7f) || (c2 >= 0x80 && c2 < 0xa1)) {
+        unsigned int i = 96 * (c1 - 0x81) + (c2 - (c2 >= 0x80 ? 0x41 : 0x40));
+        unsigned short wc = 0xfffd;
+        {
+          if (i < 12016)
+            wc = gbkext2_2uni_pagea8[i-3744];
+        }
+        if (wc != 0xfffd) {
+          *pwc = (ucs4_t) wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
diff --git a/graf2d/win32gdk/gdk/src/iconv/gbkext_inv.h b/graf2d/win32gdk/gdk/src/iconv/gbkext_inv.h
new file mode 100644
index 00000000000..45f57d9b762
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/gbkext_inv.h
@@ -0,0 +1,2343 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * GBK extensions
+ */
+
+static const unsigned short gbkext_inv_2charset[14313] = {
+  0xa840, 0xa841, 0xa842, 0xa95c, 0xa843, 0xa844, 0xa845, 0xa846,
+  0xa847, 0xa848, 0xa959, 0xa849, 0xa84a, 0xa84b, 0xa84c, 0xa84d,
+  0xa84e, 0xa84f, 0xa850, 0xa851, 0xa852, 0xa892, 0xa853, 0xa854,
+  0xa855, 0xa856, 0xa857, 0xa858, 0xa859, 0xa85a, 0xa85b, 0xa85c,
+  0xa85d, 0xa85e, 0xa85f, 0xa860, 0xa861, 0xa862, 0xa863, 0xa864,
+  0xa865, 0xa866, 0xa867, 0xa868, 0xa869, 0xa86a, 0xa86b, 0xa86c,
+  0xa86d, 0xa86e, 0xa86f, 0xa870, 0xa871, 0xa872, 0xa873, 0xa874,
+  0xa875, 0xa876, 0xa877, 0xa878, 0xa879, 0xa87a, 0xa87b, 0xa87c,
+  0xa87d, 0xa87e, 0xa880, 0xa881, 0xa882, 0xa883, 0xa884, 0xa885,
+  0xa886, 0xa887, 0xa888, 0xa889, 0xa88a, 0xa88b, 0xa88c, 0xa88d,
+  0xa88e, 0xa88f, 0xa890, 0xa891, 0xa965, 0xa996, 0xa893, 0xa894,
+  0xa895, 0xa940, 0xa941, 0xa942, 0xa943, 0xa944, 0xa945, 0xa946,
+  0xa947, 0xa948, 0xa961, 0xa962, 0xa966, 0xa967, 0xa960, 0xa963,
+  0xa964, 0xa95a, 0xa949, 0xa94a, 0xa94b, 0xa94c, 0xa94d, 0xa94e,
+  0xa94f, 0xa950, 0xa951, 0xa952, 0xa953, 0xa954, 0x8140, 0x8141,
+  0x8142, 0x8143, 0x8144, 0x8145, 0x8146, 0x8147, 0x8148, 0x8149,
+  0x814a, 0x814b, 0x814c, 0x814d, 0x814e, 0x814f, 0x8150, 0x8151,
+  0x8152, 0x8153, 0x8154, 0x8155, 0x8156, 0x8157, 0x8158, 0x8159,
+  0x815a, 0x815b, 0x815c, 0x815d, 0x815e, 0x815f, 0x8160, 0x8161,
+  0x8162, 0x8163, 0x8164, 0x8165, 0x8166, 0x8167, 0x8168, 0x8169,
+  0x816a, 0x816b, 0x816c, 0x816d, 0x816e, 0x816f, 0x8170, 0x8171,
+  0x8172, 0x8173, 0x8174, 0x8175, 0x8176, 0x8177, 0x8178, 0x8179,
+  0x817a, 0x817b, 0x817c, 0x817d, 0x817e, 0x8180, 0x8181, 0x8182,
+  0x8183, 0x8184, 0x8185, 0x8186, 0x8187, 0x8188, 0x8189, 0x818a,
+  0x818b, 0x818c, 0x818d, 0x818e, 0x818f, 0x8190, 0x8191, 0x8192,
+  0x8193, 0x8194, 0x8195, 0x8196, 0x8197, 0x8198, 0x8199, 0x819a,
+  0x819b, 0x819c, 0x819d, 0x819e, 0x819f, 0x81a0, 0x81a1, 0x81a2,
+  0x81a3, 0x81a4, 0x81a5, 0x81a6, 0x81a7, 0x81a8, 0x81a9, 0x81aa,
+  0x81ab, 0x81ac, 0x81ad, 0x81ae, 0x81af, 0x81b0, 0x81b1, 0x81b2,
+  0x81b3, 0x81b4, 0x81b5, 0x81b6, 0x81b7, 0x81b8, 0x81b9, 0x81ba,
+  0x81bb, 0x81bc, 0x81bd, 0x81be, 0x81bf, 0x81c0, 0x81c1, 0x81c2,
+  0x81c3, 0x81c4, 0x81c5, 0x81c6, 0x81c7, 0x81c8, 0x81c9, 0x81ca,
+  0x81cb, 0x81cc, 0x81cd, 0x81ce, 0x81cf, 0x81d0, 0x81d1, 0x81d2,
+  0x81d3, 0x81d4, 0x81d5, 0x81d6, 0x81d7, 0x81d8, 0x81d9, 0x81da,
+  0x81db, 0x81dc, 0x81dd, 0x81de, 0x81df, 0x81e0, 0x81e1, 0x81e2,
+  0x81e3, 0x81e4, 0x81e5, 0x81e6, 0x81e7, 0x81e8, 0x81e9, 0x81ea,
+  0x81eb, 0x81ec, 0x81ed, 0x81ee, 0x81ef, 0x81f0, 0x81f1, 0x81f2,
+  0x81f3, 0x81f4, 0x81f5, 0x81f6, 0x81f7, 0x81f8, 0x81f9, 0x81fa,
+  0x81fb, 0x81fc, 0x81fd, 0x81fe, 0x8240, 0x8241, 0x8242, 0x8243,
+  0x8244, 0x8245, 0x8246, 0x8247, 0x8248, 0x8249, 0x824a, 0x824b,
+  0x824c, 0x824d, 0x824e, 0x824f, 0x8250, 0x8251, 0x8252, 0x8253,
+  0x8254, 0x8255, 0x8256, 0x8257, 0x8258, 0x8259, 0x825a, 0x825b,
+  0x825c, 0x825d, 0x825e, 0x825f, 0x8260, 0x8261, 0x8262, 0x8263,
+  0x8264, 0x8265, 0x8266, 0x8267, 0x8268, 0x8269, 0x826a, 0x826b,
+  0x826c, 0x826d, 0x826e, 0x826f, 0x8270, 0x8271, 0x8272, 0x8273,
+  0x8274, 0x8275, 0x8276, 0x8277, 0x8278, 0x8279, 0x827a, 0x827b,
+  0x827c, 0x827d, 0x827e, 0x8280, 0x8281, 0x8282, 0x8283, 0x8284,
+  0x8285, 0x8286, 0x8287, 0x8288, 0x8289, 0x828a, 0x828b, 0x828c,
+  0x828d, 0x828e, 0x828f, 0x8290, 0x8291, 0x8292, 0x8293, 0x8294,
+  0x8295, 0x8296, 0x8297, 0x8298, 0x8299, 0x829a, 0x829b, 0x829c,
+  0x829d, 0x829e, 0x829f, 0x82a0, 0x82a1, 0x82a2, 0x82a3, 0x82a4,
+  0x82a5, 0x82a6, 0x82a7, 0x82a8, 0x82a9, 0x82aa, 0x82ab, 0x82ac,
+  0x82ad, 0x82ae, 0x82af, 0x82b0, 0x82b1, 0x82b2, 0x82b3, 0x82b4,
+  0x82b5, 0x82b6, 0x82b7, 0x82b8, 0x82b9, 0x82ba, 0x82bb, 0x82bc,
+  0x82bd, 0x82be, 0x82bf, 0x82c0, 0x82c1, 0x82c2, 0x82c3, 0x82c4,
+  0x82c5, 0x82c6, 0x82c7, 0x82c8, 0x82c9, 0x82ca, 0x82cb, 0x82cc,
+  0x82cd, 0x82ce, 0x82cf, 0x82d0, 0x82d1, 0x82d2, 0x82d3, 0x82d4,
+  0x82d5, 0x82d6, 0x82d7, 0x82d8, 0x82d9, 0x82da, 0x82db, 0x82dc,
+  0x82dd, 0x82de, 0x82df, 0x82e0, 0x82e1, 0x82e2, 0x82e3, 0x82e4,
+  0x82e5, 0x82e6, 0x82e7, 0x82e8, 0x82e9, 0x82ea, 0x82eb, 0x82ec,
+  0x82ed, 0x82ee, 0x82ef, 0x82f0, 0x82f1, 0x82f2, 0x82f3, 0x82f4,
+  0x82f5, 0x82f6, 0x82f7, 0x82f8, 0x82f9, 0x82fa, 0x82fb, 0x82fc,
+  0x82fd, 0x82fe, 0x8340, 0x8341, 0x8342, 0x8343, 0x8344, 0x8345,
+  0x8346, 0x8347, 0x8348, 0x8349, 0x834a, 0x834b, 0x834c, 0x834d,
+  0x834e, 0x834f, 0x8350, 0x8351, 0x8352, 0x8353, 0x8354, 0x8355,
+  0x8356, 0x8357, 0x8358, 0x8359, 0x835a, 0x835b, 0x835c, 0x835d,
+  0x835e, 0x835f, 0x8360, 0x8361, 0x8362, 0x8363, 0x8364, 0x8365,
+  0x8366, 0x8367, 0x8368, 0x8369, 0x836a, 0x836b, 0x836c, 0x836d,
+  0x836e, 0x836f, 0x8370, 0x8371, 0x8372, 0x8373, 0x8374, 0x8375,
+  0x8376, 0x8377, 0x8378, 0x8379, 0x837a, 0x837b, 0x837c, 0x837d,
+  0x837e, 0x8380, 0x8381, 0x8382, 0x8383, 0x8384, 0x8385, 0x8386,
+  0x8387, 0x8388, 0x8389, 0x838a, 0x838b, 0x838c, 0x838d, 0x838e,
+  0x838f, 0x8390, 0x8391, 0x8392, 0x8393, 0x8394, 0x8395, 0x8396,
+  0x8397, 0x8398, 0x8399, 0x839a, 0x839b, 0x839c, 0x839d, 0x839e,
+  0x839f, 0x83a0, 0x83a1, 0x83a2, 0x83a3, 0x83a4, 0x83a5, 0x83a6,
+  0x83a7, 0x83a8, 0x83a9, 0x83aa, 0x83ab, 0x83ac, 0x83ad, 0x83ae,
+  0x83af, 0x83b0, 0x83b1, 0x83b2, 0x83b3, 0x83b4, 0x83b5, 0x83b6,
+  0x83b7, 0x83b8, 0x83b9, 0x83ba, 0x83bb, 0x83bc, 0x83bd, 0x83be,
+  0x83bf, 0x83c0, 0x83c1, 0x83c2, 0x83c3, 0x83c4, 0x83c5, 0x83c6,
+  0x83c7, 0x83c8, 0x83c9, 0x83ca, 0x83cb, 0x83cc, 0x83cd, 0x83ce,
+  0x83cf, 0x83d0, 0x83d1, 0x83d2, 0x83d3, 0x83d4, 0x83d5, 0x83d6,
+  0x83d7, 0x83d8, 0x83d9, 0x83da, 0x83db, 0x83dc, 0x83dd, 0x83de,
+  0x83df, 0x83e0, 0x83e1, 0x83e2, 0x83e3, 0x83e4, 0x83e5, 0x83e6,
+  0x83e7, 0x83e8, 0x83e9, 0x83ea, 0x83eb, 0x83ec, 0x83ed, 0x83ee,
+  0x83ef, 0x83f0, 0x83f1, 0x83f2, 0x83f3, 0x83f4, 0x83f5, 0x83f6,
+  0x83f7, 0x83f8, 0x83f9, 0x83fa, 0x83fb, 0x83fc, 0x83fd, 0x83fe,
+  0x8440, 0x8441, 0x8442, 0x8443, 0x8444, 0x8445, 0x8446, 0x8447,
+  0x8448, 0x8449, 0x844a, 0x844b, 0x844c, 0x844d, 0x844e, 0x844f,
+  0x8450, 0x8451, 0x8452, 0x8453, 0x8454, 0x8455, 0x8456, 0x8457,
+  0x8458, 0x8459, 0x845a, 0x845b, 0x845c, 0x845d, 0x845e, 0x845f,
+  0x8460, 0x8461, 0x8462, 0x8463, 0x8464, 0x8465, 0x8466, 0x8467,
+  0x8468, 0x8469, 0x846a, 0x846b, 0x846c, 0x846d, 0x846e, 0x846f,
+  0x8470, 0x8471, 0x8472, 0x8473, 0x8474, 0x8475, 0x8476, 0x8477,
+  0x8478, 0x8479, 0x847a, 0x847b, 0x847c, 0x847d, 0x847e, 0x8480,
+  0x8481, 0x8482, 0x8483, 0x8484, 0x8485, 0x8486, 0x8487, 0x8488,
+  0x8489, 0x848a, 0x848b, 0x848c, 0x848d, 0x848e, 0x848f, 0x8490,
+  0x8491, 0x8492, 0x8493, 0x8494, 0x8495, 0x8496, 0x8497, 0x8498,
+  0x8499, 0x849a, 0x849b, 0x849c, 0x849d, 0x849e, 0x849f, 0x84a0,
+  0x84a1, 0x84a2, 0x84a3, 0x84a4, 0x84a5, 0x84a6, 0x84a7, 0x84a8,
+  0x84a9, 0x84aa, 0x84ab, 0x84ac, 0x84ad, 0x84ae, 0x84af, 0x84b0,
+  0x84b1, 0x84b2, 0x84b3, 0x84b4, 0x84b5, 0x84b6, 0x84b7, 0x84b8,
+  0x84b9, 0x84ba, 0x84bb, 0x84bc, 0x84bd, 0x84be, 0x84bf, 0x84c0,
+  0x84c1, 0x84c2, 0x84c3, 0x84c4, 0x84c5, 0x84c6, 0x84c7, 0x84c8,
+  0x84c9, 0x84ca, 0x84cb, 0x84cc, 0x84cd, 0x84ce, 0x84cf, 0x84d0,
+  0x84d1, 0x84d2, 0x84d3, 0x84d4, 0x84d5, 0x84d6, 0x84d7, 0x84d8,
+  0x84d9, 0x84da, 0x84db, 0x84dc, 0x84dd, 0x84de, 0x84df, 0x84e0,
+  0x84e1, 0x84e2, 0x84e3, 0x84e4, 0x84e5, 0x84e6, 0x84e7, 0x84e8,
+  0x84e9, 0x84ea, 0x84eb, 0x84ec, 0x84ed, 0x84ee, 0x84ef, 0x84f0,
+  0x84f1, 0x84f2, 0x84f3, 0x84f4, 0x84f5, 0x84f6, 0x84f7, 0x84f8,
+  0x84f9, 0x84fa, 0x84fb, 0x84fc, 0x84fd, 0x84fe, 0x8540, 0x8541,
+  0x8542, 0x8543, 0x8544, 0x8545, 0x8546, 0x8547, 0x8548, 0x8549,
+  0x854a, 0x854b, 0x854c, 0x854d, 0x854e, 0x854f, 0x8550, 0x8551,
+  0x8552, 0x8553, 0x8554, 0x8555, 0x8556, 0x8557, 0x8558, 0x8559,
+  0x855a, 0x855b, 0x855c, 0x855d, 0x855e, 0x855f, 0x8560, 0x8561,
+  0x8562, 0x8563, 0x8564, 0x8565, 0x8566, 0x8567, 0x8568, 0x8569,
+  0x856a, 0x856b, 0x856c, 0x856d, 0x856e, 0x856f, 0x8570, 0x8571,
+  0x8572, 0x8573, 0x8574, 0x8575, 0x8576, 0x8577, 0x8578, 0x8579,
+  0x857a, 0x857b, 0x857c, 0x857d, 0x857e, 0x8580, 0x8581, 0x8582,
+  0x8583, 0x8584, 0x8585, 0x8586, 0x8587, 0x8588, 0x8589, 0x858a,
+  0x858b, 0x858c, 0x858d, 0x858e, 0x858f, 0x8590, 0x8591, 0x8592,
+  0x8593, 0x8594, 0x8595, 0x8596, 0x8597, 0x8598, 0x8599, 0x859a,
+  0x859b, 0x859c, 0x859d, 0x859e, 0x859f, 0x85a0, 0x85a1, 0x85a2,
+  0x85a3, 0x85a4, 0x85a5, 0x85a6, 0x85a7, 0x85a8, 0x85a9, 0x85aa,
+  0x85ab, 0x85ac, 0x85ad, 0x85ae, 0x85af, 0x85b0, 0x85b1, 0x85b2,
+  0x85b3, 0x85b4, 0x85b5, 0x85b6, 0x85b7, 0x85b8, 0x85b9, 0x85ba,
+  0x85bb, 0x85bc, 0x85bd, 0x85be, 0x85bf, 0x85c0, 0x85c1, 0x85c2,
+  0x85c3, 0x85c4, 0x85c5, 0x85c6, 0x85c7, 0x85c8, 0x85c9, 0x85ca,
+  0x85cb, 0x85cc, 0x85cd, 0x85ce, 0x85cf, 0x85d0, 0x85d1, 0x85d2,
+  0x85d3, 0x85d4, 0x85d5, 0x85d6, 0x85d7, 0x85d8, 0x85d9, 0x85da,
+  0x85db, 0x85dc, 0x85dd, 0x85de, 0x85df, 0x85e0, 0x85e1, 0x85e2,
+  0x85e3, 0x85e4, 0x85e5, 0x85e6, 0x85e7, 0x85e8, 0x85e9, 0x85ea,
+  0x85eb, 0x85ec, 0x85ed, 0x85ee, 0x85ef, 0x85f0, 0x85f1, 0x85f2,
+  0x85f3, 0x85f4, 0x85f5, 0x85f6, 0x85f7, 0x85f8, 0x85f9, 0x85fa,
+  0x85fb, 0x85fc, 0x85fd, 0x85fe, 0x8640, 0x8641, 0x8642, 0x8643,
+  0x8644, 0x8645, 0x8646, 0x8647, 0x8648, 0x8649, 0x864a, 0x864b,
+  0x864c, 0x864d, 0x864e, 0x864f, 0x8650, 0x8651, 0x8652, 0x8653,
+  0x8654, 0x8655, 0x8656, 0x8657, 0x8658, 0x8659, 0x865a, 0x865b,
+  0x865c, 0x865d, 0x865e, 0x865f, 0x8660, 0x8661, 0x8662, 0x8663,
+  0x8664, 0x8665, 0x8666, 0x8667, 0x8668, 0x8669, 0x866a, 0x866b,
+  0x866c, 0x866d, 0x866e, 0x866f, 0x8670, 0x8671, 0x8672, 0x8673,
+  0x8674, 0x8675, 0x8676, 0x8677, 0x8678, 0x8679, 0x867a, 0x867b,
+  0x867c, 0x867d, 0x867e, 0x8680, 0x8681, 0x8682, 0x8683, 0x8684,
+  0x8685, 0x8686, 0x8687, 0x8688, 0x8689, 0x868a, 0x868b, 0x868c,
+  0x868d, 0x868e, 0x868f, 0x8690, 0x8691, 0x8692, 0x8693, 0x8694,
+  0x8695, 0x8696, 0x8697, 0x8698, 0x8699, 0x869a, 0x869b, 0x869c,
+  0x869d, 0x869e, 0x869f, 0x86a0, 0x86a1, 0x86a2, 0x86a3, 0x86a4,
+  0x86a5, 0x86a6, 0x86a7, 0x86a8, 0x86a9, 0x86aa, 0x86ab, 0x86ac,
+  0x86ad, 0x86ae, 0x86af, 0x86b0, 0x86b1, 0x86b2, 0x86b3, 0x86b4,
+  0x86b5, 0x86b6, 0x86b7, 0x86b8, 0x86b9, 0x86ba, 0x86bb, 0x86bc,
+  0x86bd, 0x86be, 0x86bf, 0x86c0, 0x86c1, 0x86c2, 0x86c3, 0x86c4,
+  0x86c5, 0x86c6, 0x86c7, 0x86c8, 0x86c9, 0x86ca, 0x86cb, 0x86cc,
+  0x86cd, 0x86ce, 0x86cf, 0x86d0, 0x86d1, 0x86d2, 0x86d3, 0x86d4,
+  0x86d5, 0x86d6, 0x86d7, 0x86d8, 0x86d9, 0x86da, 0x86db, 0x86dc,
+  0x86dd, 0x86de, 0x86df, 0x86e0, 0x86e1, 0x86e2, 0x86e3, 0x86e4,
+  0x86e5, 0x86e6, 0x86e7, 0x86e8, 0x86e9, 0x86ea, 0x86eb, 0x86ec,
+  0x86ed, 0x86ee, 0x86ef, 0x86f0, 0x86f1, 0x86f2, 0x86f3, 0x86f4,
+  0x86f5, 0x86f6, 0x86f7, 0x86f8, 0x86f9, 0x86fa, 0x86fb, 0x86fc,
+  0x86fd, 0x86fe, 0x8740, 0x8741, 0x8742, 0x8743, 0x8744, 0x8745,
+  0x8746, 0x8747, 0x8748, 0x8749, 0x874a, 0x874b, 0x874c, 0x874d,
+  0x874e, 0x874f, 0x8750, 0x8751, 0x8752, 0x8753, 0x8754, 0x8755,
+  0x8756, 0x8757, 0x8758, 0x8759, 0x875a, 0x875b, 0x875c, 0x875d,
+  0x875e, 0x875f, 0x8760, 0x8761, 0x8762, 0x8763, 0x8764, 0x8765,
+  0x8766, 0x8767, 0x8768, 0x8769, 0x876a, 0x876b, 0x876c, 0x876d,
+  0x876e, 0x876f, 0x8770, 0x8771, 0x8772, 0x8773, 0x8774, 0x8775,
+  0x8776, 0x8777, 0x8778, 0x8779, 0x877a, 0x877b, 0x877c, 0x877d,
+  0x877e, 0x8780, 0x8781, 0x8782, 0x8783, 0x8784, 0x8785, 0x8786,
+  0x8787, 0x8788, 0x8789, 0x878a, 0x878b, 0x878c, 0x878d, 0x878e,
+  0x878f, 0x8790, 0x8791, 0x8792, 0x8793, 0x8794, 0x8795, 0x8796,
+  0x8797, 0x8798, 0x8799, 0x879a, 0x879b, 0x879c, 0x879d, 0x879e,
+  0x879f, 0x87a0, 0x87a1, 0x87a2, 0x87a3, 0x87a4, 0x87a5, 0x87a6,
+  0x87a7, 0x87a8, 0x87a9, 0x87aa, 0x87ab, 0x87ac, 0x87ad, 0x87ae,
+  0x87af, 0x87b0, 0x87b1, 0x87b2, 0x87b3, 0x87b4, 0x87b5, 0x87b6,
+  0x87b7, 0x87b8, 0x87b9, 0x87ba, 0x87bb, 0x87bc, 0x87bd, 0x87be,
+  0x87bf, 0x87c0, 0x87c1, 0x87c2, 0x87c3, 0x87c4, 0x87c5, 0x87c6,
+  0x87c7, 0x87c8, 0x87c9, 0x87ca, 0x87cb, 0x87cc, 0x87cd, 0x87ce,
+  0x87cf, 0x87d0, 0x87d1, 0x87d2, 0x87d3, 0x87d4, 0x87d5, 0x87d6,
+  0x87d7, 0x87d8, 0x87d9, 0x87da, 0x87db, 0x87dc, 0x87dd, 0x87de,
+  0x87df, 0x87e0, 0x87e1, 0x87e2, 0x87e3, 0x87e4, 0x87e5, 0x87e6,
+  0x87e7, 0x87e8, 0x87e9, 0x87ea, 0x87eb, 0x87ec, 0x87ed, 0x87ee,
+  0x87ef, 0x87f0, 0x87f1, 0x87f2, 0x87f3, 0x87f4, 0x87f5, 0x87f6,
+  0x87f7, 0x87f8, 0x87f9, 0x87fa, 0x87fb, 0x87fc, 0x87fd, 0x87fe,
+  0x8840, 0x8841, 0x8842, 0x8843, 0x8844, 0x8845, 0x8846, 0x8847,
+  0x8848, 0x8849, 0x884a, 0x884b, 0x884c, 0x884d, 0x884e, 0x884f,
+  0x8850, 0x8851, 0x8852, 0x8853, 0x8854, 0x8855, 0x8856, 0x8857,
+  0x8858, 0x8859, 0x885a, 0x885b, 0x885c, 0x885d, 0x885e, 0x885f,
+  0x8860, 0x8861, 0x8862, 0x8863, 0x8864, 0x8865, 0x8866, 0x8867,
+  0x8868, 0x8869, 0x886a, 0x886b, 0x886c, 0x886d, 0x886e, 0x886f,
+  0x8870, 0x8871, 0x8872, 0x8873, 0x8874, 0x8875, 0x8876, 0x8877,
+  0x8878, 0x8879, 0x887a, 0x887b, 0x887c, 0x887d, 0x887e, 0x8880,
+  0x8881, 0x8882, 0x8883, 0x8884, 0x8885, 0x8886, 0x8887, 0x8888,
+  0x8889, 0x888a, 0x888b, 0x888c, 0x888d, 0x888e, 0x888f, 0x8890,
+  0x8891, 0x8892, 0x8893, 0x8894, 0x8895, 0x8896, 0x8897, 0x8898,
+  0x8899, 0x889a, 0x889b, 0x889c, 0x889d, 0x889e, 0x889f, 0x88a0,
+  0x88a1, 0x88a2, 0x88a3, 0x88a4, 0x88a5, 0x88a6, 0x88a7, 0x88a8,
+  0x88a9, 0x88aa, 0x88ab, 0x88ac, 0x88ad, 0x88ae, 0x88af, 0x88b0,
+  0x88b1, 0x88b2, 0x88b3, 0x88b4, 0x88b5, 0x88b6, 0x88b7, 0x88b8,
+  0x88b9, 0x88ba, 0x88bb, 0x88bc, 0x88bd, 0x88be, 0x88bf, 0x88c0,
+  0x88c1, 0x88c2, 0x88c3, 0x88c4, 0x88c5, 0x88c6, 0x88c7, 0x88c8,
+  0x88c9, 0x88ca, 0x88cb, 0x88cc, 0x88cd, 0x88ce, 0x88cf, 0x88d0,
+  0x88d1, 0x88d2, 0x88d3, 0x88d4, 0x88d5, 0x88d6, 0x88d7, 0x88d8,
+  0x88d9, 0x88da, 0x88db, 0x88dc, 0x88dd, 0x88de, 0x88df, 0x88e0,
+  0x88e1, 0x88e2, 0x88e3, 0x88e4, 0x88e5, 0x88e6, 0x88e7, 0x88e8,
+  0x88e9, 0x88ea, 0x88eb, 0x88ec, 0x88ed, 0x88ee, 0x88ef, 0x88f0,
+  0x88f1, 0x88f2, 0x88f3, 0x88f4, 0x88f5, 0x88f6, 0x88f7, 0x88f8,
+  0x88f9, 0x88fa, 0x88fb, 0x88fc, 0x88fd, 0x88fe, 0x8940, 0x8941,
+  0x8942, 0x8943, 0x8944, 0x8945, 0x8946, 0x8947, 0x8948, 0x8949,
+  0x894a, 0x894b, 0x894c, 0x894d, 0x894e, 0x894f, 0x8950, 0x8951,
+  0x8952, 0x8953, 0x8954, 0x8955, 0x8956, 0x8957, 0x8958, 0x8959,
+  0x895a, 0x895b, 0x895c, 0x895d, 0x895e, 0x895f, 0x8960, 0x8961,
+  0x8962, 0x8963, 0x8964, 0x8965, 0x8966, 0x8967, 0x8968, 0x8969,
+  0x896a, 0x896b, 0x896c, 0x896d, 0x896e, 0x896f, 0x8970, 0x8971,
+  0x8972, 0x8973, 0x8974, 0x8975, 0x8976, 0x8977, 0x8978, 0x8979,
+  0x897a, 0x897b, 0x897c, 0x897d, 0x897e, 0x8980, 0x8981, 0x8982,
+  0x8983, 0x8984, 0x8985, 0x8986, 0x8987, 0x8988, 0x8989, 0x898a,
+  0x898b, 0x898c, 0x898d, 0x898e, 0x898f, 0x8990, 0x8991, 0x8992,
+  0x8993, 0x8994, 0x8995, 0x8996, 0x8997, 0x8998, 0x8999, 0x899a,
+  0x899b, 0x899c, 0x899d, 0x899e, 0x899f, 0x89a0, 0x89a1, 0x89a2,
+  0x89a3, 0x89a4, 0x89a5, 0x89a6, 0x89a7, 0x89a8, 0x89a9, 0x89aa,
+  0x89ab, 0x89ac, 0x89ad, 0x89ae, 0x89af, 0x89b0, 0x89b1, 0x89b2,
+  0x89b3, 0x89b4, 0x89b5, 0x89b6, 0x89b7, 0x89b8, 0x89b9, 0x89ba,
+  0x89bb, 0x89bc, 0x89bd, 0x89be, 0x89bf, 0x89c0, 0x89c1, 0x89c2,
+  0x89c3, 0x89c4, 0x89c5, 0x89c6, 0x89c7, 0x89c8, 0x89c9, 0x89ca,
+  0x89cb, 0x89cc, 0x89cd, 0x89ce, 0x89cf, 0x89d0, 0x89d1, 0x89d2,
+  0x89d3, 0x89d4, 0x89d5, 0x89d6, 0x89d7, 0x89d8, 0x89d9, 0x89da,
+  0x89db, 0x89dc, 0x89dd, 0x89de, 0x89df, 0x89e0, 0x89e1, 0x89e2,
+  0x89e3, 0x89e4, 0x89e5, 0x89e6, 0x89e7, 0x89e8, 0x89e9, 0x89ea,
+  0x89eb, 0x89ec, 0x89ed, 0x89ee, 0x89ef, 0x89f0, 0x89f1, 0x89f2,
+  0x89f3, 0x89f4, 0x89f5, 0x89f6, 0x89f7, 0x89f8, 0x89f9, 0x89fa,
+  0x89fb, 0x89fc, 0x89fd, 0x89fe, 0x8a40, 0x8a41, 0x8a42, 0x8a43,
+  0x8a44, 0x8a45, 0x8a46, 0x8a47, 0x8a48, 0x8a49, 0x8a4a, 0x8a4b,
+  0x8a4c, 0x8a4d, 0x8a4e, 0x8a4f, 0x8a50, 0x8a51, 0x8a52, 0x8a53,
+  0x8a54, 0x8a55, 0x8a56, 0x8a57, 0x8a58, 0x8a59, 0x8a5a, 0x8a5b,
+  0x8a5c, 0x8a5d, 0x8a5e, 0x8a5f, 0x8a60, 0x8a61, 0x8a62, 0x8a63,
+  0x8a64, 0x8a65, 0x8a66, 0x8a67, 0x8a68, 0x8a69, 0x8a6a, 0x8a6b,
+  0x8a6c, 0x8a6d, 0x8a6e, 0x8a6f, 0x8a70, 0x8a71, 0x8a72, 0x8a73,
+  0x8a74, 0x8a75, 0x8a76, 0x8a77, 0x8a78, 0x8a79, 0x8a7a, 0x8a7b,
+  0x8a7c, 0x8a7d, 0x8a7e, 0x8a80, 0x8a81, 0x8a82, 0x8a83, 0x8a84,
+  0x8a85, 0x8a86, 0x8a87, 0x8a88, 0x8a89, 0x8a8a, 0x8a8b, 0x8a8c,
+  0x8a8d, 0x8a8e, 0x8a8f, 0x8a90, 0x8a91, 0x8a92, 0x8a93, 0x8a94,
+  0x8a95, 0x8a96, 0x8a97, 0x8a98, 0x8a99, 0x8a9a, 0x8a9b, 0x8a9c,
+  0x8a9d, 0x8a9e, 0x8a9f, 0x8aa0, 0x8aa1, 0x8aa2, 0x8aa3, 0x8aa4,
+  0x8aa5, 0x8aa6, 0x8aa7, 0x8aa8, 0x8aa9, 0x8aaa, 0x8aab, 0x8aac,
+  0x8aad, 0x8aae, 0x8aaf, 0x8ab0, 0x8ab1, 0x8ab2, 0x8ab3, 0x8ab4,
+  0x8ab5, 0x8ab6, 0x8ab7, 0x8ab8, 0x8ab9, 0x8aba, 0x8abb, 0x8abc,
+  0x8abd, 0x8abe, 0x8abf, 0x8ac0, 0x8ac1, 0x8ac2, 0x8ac3, 0x8ac4,
+  0x8ac5, 0x8ac6, 0x8ac7, 0x8ac8, 0x8ac9, 0x8aca, 0x8acb, 0x8acc,
+  0x8acd, 0x8ace, 0x8acf, 0x8ad0, 0x8ad1, 0x8ad2, 0x8ad3, 0x8ad4,
+  0x8ad5, 0x8ad6, 0x8ad7, 0x8ad8, 0x8ad9, 0x8ada, 0x8adb, 0x8adc,
+  0x8add, 0x8ade, 0x8adf, 0x8ae0, 0x8ae1, 0x8ae2, 0x8ae3, 0x8ae4,
+  0x8ae5, 0x8ae6, 0x8ae7, 0x8ae8, 0x8ae9, 0x8aea, 0x8aeb, 0x8aec,
+  0x8aed, 0x8aee, 0x8aef, 0x8af0, 0x8af1, 0x8af2, 0x8af3, 0x8af4,
+  0x8af5, 0x8af6, 0x8af7, 0x8af8, 0x8af9, 0x8afa, 0x8afb, 0x8afc,
+  0x8afd, 0x8afe, 0x8b40, 0x8b41, 0x8b42, 0x8b43, 0x8b44, 0x8b45,
+  0x8b46, 0x8b47, 0x8b48, 0x8b49, 0x8b4a, 0x8b4b, 0x8b4c, 0x8b4d,
+  0x8b4e, 0x8b4f, 0x8b50, 0x8b51, 0x8b52, 0x8b53, 0x8b54, 0x8b55,
+  0x8b56, 0x8b57, 0x8b58, 0x8b59, 0x8b5a, 0x8b5b, 0x8b5c, 0x8b5d,
+  0x8b5e, 0x8b5f, 0x8b60, 0x8b61, 0x8b62, 0x8b63, 0x8b64, 0x8b65,
+  0x8b66, 0x8b67, 0x8b68, 0x8b69, 0x8b6a, 0x8b6b, 0x8b6c, 0x8b6d,
+  0x8b6e, 0x8b6f, 0x8b70, 0x8b71, 0x8b72, 0x8b73, 0x8b74, 0x8b75,
+  0x8b76, 0x8b77, 0x8b78, 0x8b79, 0x8b7a, 0x8b7b, 0x8b7c, 0x8b7d,
+  0x8b7e, 0x8b80, 0x8b81, 0x8b82, 0x8b83, 0x8b84, 0x8b85, 0x8b86,
+  0x8b87, 0x8b88, 0x8b89, 0x8b8a, 0x8b8b, 0x8b8c, 0x8b8d, 0x8b8e,
+  0x8b8f, 0x8b90, 0x8b91, 0x8b92, 0x8b93, 0x8b94, 0x8b95, 0x8b96,
+  0x8b97, 0x8b98, 0x8b99, 0x8b9a, 0x8b9b, 0x8b9c, 0x8b9d, 0x8b9e,
+  0x8b9f, 0x8ba0, 0x8ba1, 0x8ba2, 0x8ba3, 0x8ba4, 0x8ba5, 0x8ba6,
+  0x8ba7, 0x8ba8, 0x8ba9, 0x8baa, 0x8bab, 0x8bac, 0x8bad, 0x8bae,
+  0x8baf, 0x8bb0, 0x8bb1, 0x8bb2, 0x8bb3, 0x8bb4, 0x8bb5, 0x8bb6,
+  0x8bb7, 0x8bb8, 0x8bb9, 0x8bba, 0x8bbb, 0x8bbc, 0x8bbd, 0x8bbe,
+  0x8bbf, 0x8bc0, 0x8bc1, 0x8bc2, 0x8bc3, 0x8bc4, 0x8bc5, 0x8bc6,
+  0x8bc7, 0x8bc8, 0x8bc9, 0x8bca, 0x8bcb, 0x8bcc, 0x8bcd, 0x8bce,
+  0x8bcf, 0x8bd0, 0x8bd1, 0x8bd2, 0x8bd3, 0x8bd4, 0x8bd5, 0x8bd6,
+  0x8bd7, 0x8bd8, 0x8bd9, 0x8bda, 0x8bdb, 0x8bdc, 0x8bdd, 0x8bde,
+  0x8bdf, 0x8be0, 0x8be1, 0x8be2, 0x8be3, 0x8be4, 0x8be5, 0x8be6,
+  0x8be7, 0x8be8, 0x8be9, 0x8bea, 0x8beb, 0x8bec, 0x8bed, 0x8bee,
+  0x8bef, 0x8bf0, 0x8bf1, 0x8bf2, 0x8bf3, 0x8bf4, 0x8bf5, 0x8bf6,
+  0x8bf7, 0x8bf8, 0x8bf9, 0x8bfa, 0x8bfb, 0x8bfc, 0x8bfd, 0x8bfe,
+  0x8c40, 0x8c41, 0x8c42, 0x8c43, 0x8c44, 0x8c45, 0x8c46, 0x8c47,
+  0x8c48, 0x8c49, 0x8c4a, 0x8c4b, 0x8c4c, 0x8c4d, 0x8c4e, 0x8c4f,
+  0x8c50, 0x8c51, 0x8c52, 0x8c53, 0x8c54, 0x8c55, 0x8c56, 0x8c57,
+  0x8c58, 0x8c59, 0x8c5a, 0x8c5b, 0x8c5c, 0x8c5d, 0x8c5e, 0x8c5f,
+  0x8c60, 0x8c61, 0x8c62, 0x8c63, 0x8c64, 0x8c65, 0x8c66, 0x8c67,
+  0x8c68, 0x8c69, 0x8c6a, 0x8c6b, 0x8c6c, 0x8c6d, 0x8c6e, 0x8c6f,
+  0x8c70, 0x8c71, 0x8c72, 0x8c73, 0x8c74, 0x8c75, 0x8c76, 0x8c77,
+  0x8c78, 0x8c79, 0x8c7a, 0x8c7b, 0x8c7c, 0x8c7d, 0x8c7e, 0x8c80,
+  0x8c81, 0x8c82, 0x8c83, 0x8c84, 0x8c85, 0x8c86, 0x8c87, 0x8c88,
+  0x8c89, 0x8c8a, 0x8c8b, 0x8c8c, 0x8c8d, 0x8c8e, 0x8c8f, 0x8c90,
+  0x8c91, 0x8c92, 0x8c93, 0x8c94, 0x8c95, 0x8c96, 0x8c97, 0x8c98,
+  0x8c99, 0x8c9a, 0x8c9b, 0x8c9c, 0x8c9d, 0x8c9e, 0x8c9f, 0x8ca0,
+  0x8ca1, 0x8ca2, 0x8ca3, 0x8ca4, 0x8ca5, 0x8ca6, 0x8ca7, 0x8ca8,
+  0x8ca9, 0x8caa, 0x8cab, 0x8cac, 0x8cad, 0x8cae, 0x8caf, 0x8cb0,
+  0x8cb1, 0x8cb2, 0x8cb3, 0x8cb4, 0x8cb5, 0x8cb6, 0x8cb7, 0x8cb8,
+  0x8cb9, 0x8cba, 0x8cbb, 0x8cbc, 0x8cbd, 0x8cbe, 0x8cbf, 0x8cc0,
+  0x8cc1, 0x8cc2, 0x8cc3, 0x8cc4, 0x8cc5, 0x8cc6, 0x8cc7, 0x8cc8,
+  0x8cc9, 0x8cca, 0x8ccb, 0x8ccc, 0x8ccd, 0x8cce, 0x8ccf, 0x8cd0,
+  0x8cd1, 0x8cd2, 0x8cd3, 0x8cd4, 0x8cd5, 0x8cd6, 0x8cd7, 0x8cd8,
+  0x8cd9, 0x8cda, 0x8cdb, 0x8cdc, 0x8cdd, 0x8cde, 0x8cdf, 0x8ce0,
+  0x8ce1, 0x8ce2, 0x8ce3, 0x8ce4, 0x8ce5, 0x8ce6, 0x8ce7, 0x8ce8,
+  0x8ce9, 0x8cea, 0x8ceb, 0x8cec, 0x8ced, 0x8cee, 0x8cef, 0x8cf0,
+  0x8cf1, 0x8cf2, 0x8cf3, 0x8cf4, 0x8cf5, 0x8cf6, 0x8cf7, 0x8cf8,
+  0x8cf9, 0x8cfa, 0x8cfb, 0x8cfc, 0x8cfd, 0x8cfe, 0x8d40, 0x8d41,
+  0x8d42, 0x8d43, 0x8d44, 0x8d45, 0x8d46, 0x8d47, 0x8d48, 0x8d49,
+  0x8d4a, 0x8d4b, 0x8d4c, 0x8d4d, 0x8d4e, 0x8d4f, 0x8d50, 0x8d51,
+  0x8d52, 0x8d53, 0x8d54, 0x8d55, 0x8d56, 0x8d57, 0x8d58, 0x8d59,
+  0x8d5a, 0x8d5b, 0x8d5c, 0x8d5d, 0x8d5e, 0x8d5f, 0x8d60, 0x8d61,
+  0x8d62, 0x8d63, 0x8d64, 0x8d65, 0x8d66, 0x8d67, 0x8d68, 0x8d69,
+  0x8d6a, 0x8d6b, 0x8d6c, 0x8d6d, 0x8d6e, 0x8d6f, 0x8d70, 0x8d71,
+  0x8d72, 0x8d73, 0x8d74, 0x8d75, 0x8d76, 0x8d77, 0x8d78, 0x8d79,
+  0x8d7a, 0x8d7b, 0x8d7c, 0x8d7d, 0x8d7e, 0x8d80, 0x8d81, 0x8d82,
+  0x8d83, 0x8d84, 0x8d85, 0x8d86, 0x8d87, 0x8d88, 0x8d89, 0x8d8a,
+  0x8d8b, 0x8d8c, 0x8d8d, 0x8d8e, 0x8d8f, 0x8d90, 0x8d91, 0x8d92,
+  0x8d93, 0x8d94, 0x8d95, 0x8d96, 0x8d97, 0x8d98, 0x8d99, 0x8d9a,
+  0x8d9b, 0x8d9c, 0x8d9d, 0x8d9e, 0x8d9f, 0x8da0, 0x8da1, 0x8da2,
+  0x8da3, 0x8da4, 0x8da5, 0x8da6, 0x8da7, 0x8da8, 0x8da9, 0x8daa,
+  0x8dab, 0x8dac, 0x8dad, 0x8dae, 0x8daf, 0x8db0, 0x8db1, 0x8db2,
+  0x8db3, 0x8db4, 0x8db5, 0x8db6, 0x8db7, 0x8db8, 0x8db9, 0x8dba,
+  0x8dbb, 0x8dbc, 0x8dbd, 0x8dbe, 0x8dbf, 0x8dc0, 0x8dc1, 0x8dc2,
+  0x8dc3, 0x8dc4, 0x8dc5, 0x8dc6, 0x8dc7, 0x8dc8, 0x8dc9, 0x8dca,
+  0x8dcb, 0x8dcc, 0x8dcd, 0x8dce, 0x8dcf, 0x8dd0, 0x8dd1, 0x8dd2,
+  0x8dd3, 0x8dd4, 0x8dd5, 0x8dd6, 0x8dd7, 0x8dd8, 0x8dd9, 0x8dda,
+  0x8ddb, 0x8ddc, 0x8ddd, 0x8dde, 0x8ddf, 0x8de0, 0x8de1, 0x8de2,
+  0x8de3, 0x8de4, 0x8de5, 0x8de6, 0x8de7, 0x8de8, 0x8de9, 0x8dea,
+  0x8deb, 0x8dec, 0x8ded, 0x8dee, 0x8def, 0x8df0, 0x8df1, 0x8df2,
+  0x8df3, 0x8df4, 0x8df5, 0x8df6, 0x8df7, 0x8df8, 0x8df9, 0x8dfa,
+  0x8dfb, 0x8dfc, 0x8dfd, 0x8dfe, 0x8e40, 0x8e41, 0x8e42, 0x8e43,
+  0x8e44, 0x8e45, 0x8e46, 0x8e47, 0x8e48, 0x8e49, 0x8e4a, 0x8e4b,
+  0x8e4c, 0x8e4d, 0x8e4e, 0x8e4f, 0x8e50, 0x8e51, 0x8e52, 0x8e53,
+  0x8e54, 0x8e55, 0x8e56, 0x8e57, 0x8e58, 0x8e59, 0x8e5a, 0x8e5b,
+  0x8e5c, 0x8e5d, 0x8e5e, 0x8e5f, 0x8e60, 0x8e61, 0x8e62, 0x8e63,
+  0x8e64, 0x8e65, 0x8e66, 0x8e67, 0x8e68, 0x8e69, 0x8e6a, 0x8e6b,
+  0x8e6c, 0x8e6d, 0x8e6e, 0x8e6f, 0x8e70, 0x8e71, 0x8e72, 0x8e73,
+  0x8e74, 0x8e75, 0x8e76, 0x8e77, 0x8e78, 0x8e79, 0x8e7a, 0x8e7b,
+  0x8e7c, 0x8e7d, 0x8e7e, 0x8e80, 0x8e81, 0x8e82, 0x8e83, 0x8e84,
+  0x8e85, 0x8e86, 0x8e87, 0x8e88, 0x8e89, 0x8e8a, 0x8e8b, 0x8e8c,
+  0x8e8d, 0x8e8e, 0x8e8f, 0x8e90, 0x8e91, 0x8e92, 0x8e93, 0x8e94,
+  0x8e95, 0x8e96, 0x8e97, 0x8e98, 0x8e99, 0x8e9a, 0x8e9b, 0x8e9c,
+  0x8e9d, 0x8e9e, 0x8e9f, 0x8ea0, 0x8ea1, 0x8ea2, 0x8ea3, 0x8ea4,
+  0x8ea5, 0x8ea6, 0x8ea7, 0x8ea8, 0x8ea9, 0x8eaa, 0x8eab, 0x8eac,
+  0x8ead, 0x8eae, 0x8eaf, 0x8eb0, 0x8eb1, 0x8eb2, 0x8eb3, 0x8eb4,
+  0x8eb5, 0x8eb6, 0x8eb7, 0x8eb8, 0x8eb9, 0x8eba, 0x8ebb, 0x8ebc,
+  0x8ebd, 0x8ebe, 0x8ebf, 0x8ec0, 0x8ec1, 0x8ec2, 0x8ec3, 0x8ec4,
+  0x8ec5, 0x8ec6, 0x8ec7, 0x8ec8, 0x8ec9, 0x8eca, 0x8ecb, 0x8ecc,
+  0x8ecd, 0x8ece, 0x8ecf, 0x8ed0, 0x8ed1, 0x8ed2, 0x8ed3, 0x8ed4,
+  0x8ed5, 0x8ed6, 0x8ed7, 0x8ed8, 0x8ed9, 0x8eda, 0x8edb, 0x8edc,
+  0x8edd, 0x8ede, 0x8edf, 0x8ee0, 0x8ee1, 0x8ee2, 0x8ee3, 0x8ee4,
+  0x8ee5, 0x8ee6, 0x8ee7, 0x8ee8, 0x8ee9, 0x8eea, 0x8eeb, 0x8eec,
+  0x8eed, 0x8eee, 0x8eef, 0x8ef0, 0x8ef1, 0x8ef2, 0x8ef3, 0x8ef4,
+  0x8ef5, 0x8ef6, 0x8ef7, 0x8ef8, 0x8ef9, 0x8efa, 0x8efb, 0x8efc,
+  0x8efd, 0x8efe, 0x8f40, 0x8f41, 0x8f42, 0x8f43, 0x8f44, 0x8f45,
+  0x8f46, 0x8f47, 0x8f48, 0x8f49, 0x8f4a, 0x8f4b, 0x8f4c, 0x8f4d,
+  0x8f4e, 0x8f4f, 0x8f50, 0x8f51, 0x8f52, 0x8f53, 0x8f54, 0x8f55,
+  0x8f56, 0x8f57, 0x8f58, 0x8f59, 0x8f5a, 0x8f5b, 0x8f5c, 0x8f5d,
+  0x8f5e, 0x8f5f, 0x8f60, 0x8f61, 0x8f62, 0x8f63, 0x8f64, 0x8f65,
+  0x8f66, 0x8f67, 0x8f68, 0x8f69, 0x8f6a, 0x8f6b, 0x8f6c, 0x8f6d,
+  0x8f6e, 0x8f6f, 0x8f70, 0x8f71, 0x8f72, 0x8f73, 0x8f74, 0x8f75,
+  0x8f76, 0x8f77, 0x8f78, 0x8f79, 0x8f7a, 0x8f7b, 0x8f7c, 0x8f7d,
+  0x8f7e, 0x8f80, 0x8f81, 0x8f82, 0x8f83, 0x8f84, 0x8f85, 0x8f86,
+  0x8f87, 0x8f88, 0x8f89, 0x8f8a, 0x8f8b, 0x8f8c, 0x8f8d, 0x8f8e,
+  0x8f8f, 0x8f90, 0x8f91, 0x8f92, 0x8f93, 0x8f94, 0x8f95, 0x8f96,
+  0x8f97, 0x8f98, 0x8f99, 0x8f9a, 0x8f9b, 0x8f9c, 0x8f9d, 0x8f9e,
+  0x8f9f, 0x8fa0, 0x8fa1, 0x8fa2, 0x8fa3, 0x8fa4, 0x8fa5, 0x8fa6,
+  0x8fa7, 0x8fa8, 0x8fa9, 0x8faa, 0x8fab, 0x8fac, 0x8fad, 0x8fae,
+  0x8faf, 0x8fb0, 0x8fb1, 0x8fb2, 0x8fb3, 0x8fb4, 0x8fb5, 0x8fb6,
+  0x8fb7, 0x8fb8, 0x8fb9, 0x8fba, 0x8fbb, 0x8fbc, 0x8fbd, 0x8fbe,
+  0x8fbf, 0x8fc0, 0x8fc1, 0x8fc2, 0x8fc3, 0x8fc4, 0x8fc5, 0x8fc6,
+  0x8fc7, 0x8fc8, 0x8fc9, 0x8fca, 0x8fcb, 0x8fcc, 0x8fcd, 0x8fce,
+  0x8fcf, 0x8fd0, 0x8fd1, 0x8fd2, 0x8fd3, 0x8fd4, 0x8fd5, 0x8fd6,
+  0x8fd7, 0x8fd8, 0x8fd9, 0x8fda, 0x8fdb, 0x8fdc, 0x8fdd, 0x8fde,
+  0x8fdf, 0x8fe0, 0x8fe1, 0x8fe2, 0x8fe3, 0x8fe4, 0x8fe5, 0x8fe6,
+  0x8fe7, 0x8fe8, 0x8fe9, 0x8fea, 0x8feb, 0x8fec, 0x8fed, 0x8fee,
+  0x8fef, 0x8ff0, 0x8ff1, 0x8ff2, 0x8ff3, 0x8ff4, 0x8ff5, 0x8ff6,
+  0x8ff7, 0x8ff8, 0x8ff9, 0x8ffa, 0x8ffb, 0x8ffc, 0x8ffd, 0x8ffe,
+  0x9040, 0x9041, 0x9042, 0x9043, 0x9044, 0x9045, 0x9046, 0x9047,
+  0x9048, 0x9049, 0x904a, 0x904b, 0x904c, 0x904d, 0x904e, 0x904f,
+  0x9050, 0x9051, 0x9052, 0x9053, 0x9054, 0x9055, 0x9056, 0x9057,
+  0x9058, 0x9059, 0x905a, 0x905b, 0x905c, 0x905d, 0x905e, 0x905f,
+  0x9060, 0x9061, 0x9062, 0x9063, 0x9064, 0x9065, 0x9066, 0x9067,
+  0x9068, 0x9069, 0x906a, 0x906b, 0x906c, 0x906d, 0x906e, 0x906f,
+  0x9070, 0x9071, 0x9072, 0x9073, 0x9074, 0x9075, 0x9076, 0x9077,
+  0x9078, 0x9079, 0x907a, 0x907b, 0x907c, 0x907d, 0x907e, 0x9080,
+  0x9081, 0x9082, 0x9083, 0x9084, 0x9085, 0x9086, 0x9087, 0x9088,
+  0x9089, 0x908a, 0x908b, 0x908c, 0x908d, 0x908e, 0x908f, 0x9090,
+  0x9091, 0x9092, 0x9093, 0x9094, 0x9095, 0x9096, 0x9097, 0x9098,
+  0x9099, 0x909a, 0x909b, 0x909c, 0x909d, 0x909e, 0x909f, 0x90a0,
+  0x90a1, 0x90a2, 0x90a3, 0x90a4, 0x90a5, 0x90a6, 0x90a7, 0x90a8,
+  0x90a9, 0x90aa, 0x90ab, 0x90ac, 0x90ad, 0x90ae, 0x90af, 0x90b0,
+  0x90b1, 0x90b2, 0x90b3, 0x90b4, 0x90b5, 0x90b6, 0x90b7, 0x90b8,
+  0x90b9, 0x90ba, 0x90bb, 0x90bc, 0x90bd, 0x90be, 0x90bf, 0x90c0,
+  0x90c1, 0x90c2, 0x90c3, 0x90c4, 0x90c5, 0x90c6, 0x90c7, 0x90c8,
+  0x90c9, 0x90ca, 0x90cb, 0x90cc, 0x90cd, 0x90ce, 0x90cf, 0x90d0,
+  0x90d1, 0x90d2, 0x90d3, 0x90d4, 0x90d5, 0x90d6, 0x90d7, 0x90d8,
+  0x90d9, 0x90da, 0x90db, 0x90dc, 0x90dd, 0x90de, 0x90df, 0x90e0,
+  0x90e1, 0x90e2, 0x90e3, 0x90e4, 0x90e5, 0x90e6, 0x90e7, 0x90e8,
+  0x90e9, 0x90ea, 0x90eb, 0x90ec, 0x90ed, 0x90ee, 0x90ef, 0x90f0,
+  0x90f1, 0x90f2, 0x90f3, 0x90f4, 0x90f5, 0x90f6, 0x90f7, 0x90f8,
+  0x90f9, 0x90fa, 0x90fb, 0x90fc, 0x90fd, 0x90fe, 0x9140, 0x9141,
+  0x9142, 0x9143, 0x9144, 0x9145, 0x9146, 0x9147, 0x9148, 0x9149,
+  0x914a, 0x914b, 0x914c, 0x914d, 0x914e, 0x914f, 0x9150, 0x9151,
+  0x9152, 0x9153, 0x9154, 0x9155, 0x9156, 0x9157, 0x9158, 0x9159,
+  0x915a, 0x915b, 0x915c, 0x915d, 0x915e, 0x915f, 0x9160, 0x9161,
+  0x9162, 0x9163, 0x9164, 0x9165, 0x9166, 0x9167, 0x9168, 0x9169,
+  0x916a, 0x916b, 0x916c, 0x916d, 0x916e, 0x916f, 0x9170, 0x9171,
+  0x9172, 0x9173, 0x9174, 0x9175, 0x9176, 0x9177, 0x9178, 0x9179,
+  0x917a, 0x917b, 0x917c, 0x917d, 0x917e, 0x9180, 0x9181, 0x9182,
+  0x9183, 0x9184, 0x9185, 0x9186, 0x9187, 0x9188, 0x9189, 0x918a,
+  0x918b, 0x918c, 0x918d, 0x918e, 0x918f, 0x9190, 0x9191, 0x9192,
+  0x9193, 0x9194, 0x9195, 0x9196, 0x9197, 0x9198, 0x9199, 0x919a,
+  0x919b, 0x919c, 0x919d, 0x919e, 0x919f, 0x91a0, 0x91a1, 0x91a2,
+  0x91a3, 0x91a4, 0x91a5, 0x91a6, 0x91a7, 0x91a8, 0x91a9, 0x91aa,
+  0x91ab, 0x91ac, 0x91ad, 0x91ae, 0x91af, 0x91b0, 0x91b1, 0x91b2,
+  0x91b3, 0x91b4, 0x91b5, 0x91b6, 0x91b7, 0x91b8, 0x91b9, 0x91ba,
+  0x91bb, 0x91bc, 0x91bd, 0x91be, 0x91bf, 0x91c0, 0x91c1, 0x91c2,
+  0x91c3, 0x91c4, 0x91c5, 0x91c6, 0x91c7, 0x91c8, 0x91c9, 0x91ca,
+  0x91cb, 0x91cc, 0x91cd, 0x91ce, 0x91cf, 0x91d0, 0x91d1, 0x91d2,
+  0x91d3, 0x91d4, 0x91d5, 0x91d6, 0x91d7, 0x91d8, 0x91d9, 0x91da,
+  0x91db, 0x91dc, 0x91dd, 0x91de, 0x91df, 0x91e0, 0x91e1, 0x91e2,
+  0x91e3, 0x91e4, 0x91e5, 0x91e6, 0x91e7, 0x91e8, 0x91e9, 0x91ea,
+  0x91eb, 0x91ec, 0x91ed, 0x91ee, 0x91ef, 0x91f0, 0x91f1, 0x91f2,
+  0x91f3, 0x91f4, 0x91f5, 0x91f6, 0x91f7, 0x91f8, 0x91f9, 0x91fa,
+  0x91fb, 0x91fc, 0x91fd, 0x91fe, 0x9240, 0x9241, 0x9242, 0x9243,
+  0x9244, 0x9245, 0x9246, 0x9247, 0x9248, 0x9249, 0x924a, 0x924b,
+  0x924c, 0x924d, 0x924e, 0x924f, 0x9250, 0x9251, 0x9252, 0x9253,
+  0x9254, 0x9255, 0x9256, 0x9257, 0x9258, 0x9259, 0x925a, 0x925b,
+  0x925c, 0x925d, 0x925e, 0x925f, 0x9260, 0x9261, 0x9262, 0x9263,
+  0x9264, 0x9265, 0x9266, 0x9267, 0x9268, 0x9269, 0x926a, 0x926b,
+  0x926c, 0x926d, 0x926e, 0x926f, 0x9270, 0x9271, 0x9272, 0x9273,
+  0x9274, 0x9275, 0x9276, 0x9277, 0x9278, 0x9279, 0x927a, 0x927b,
+  0x927c, 0x927d, 0x927e, 0x9280, 0x9281, 0x9282, 0x9283, 0x9284,
+  0x9285, 0x9286, 0x9287, 0x9288, 0x9289, 0x928a, 0x928b, 0x928c,
+  0x928d, 0x928e, 0x928f, 0x9290, 0x9291, 0x9292, 0x9293, 0x9294,
+  0x9295, 0x9296, 0x9297, 0x9298, 0x9299, 0x929a, 0x929b, 0x929c,
+  0x929d, 0x929e, 0x929f, 0x92a0, 0x92a1, 0x92a2, 0x92a3, 0x92a4,
+  0x92a5, 0x92a6, 0x92a7, 0x92a8, 0x92a9, 0x92aa, 0x92ab, 0x92ac,
+  0x92ad, 0x92ae, 0x92af, 0x92b0, 0x92b1, 0x92b2, 0x92b3, 0x92b4,
+  0x92b5, 0x92b6, 0x92b7, 0x92b8, 0x92b9, 0x92ba, 0x92bb, 0x92bc,
+  0x92bd, 0x92be, 0x92bf, 0x92c0, 0x92c1, 0x92c2, 0x92c3, 0x92c4,
+  0x92c5, 0x92c6, 0x92c7, 0x92c8, 0x92c9, 0x92ca, 0x92cb, 0x92cc,
+  0x92cd, 0x92ce, 0x92cf, 0x92d0, 0x92d1, 0x92d2, 0x92d3, 0x92d4,
+  0x92d5, 0x92d6, 0x92d7, 0x92d8, 0x92d9, 0x92da, 0x92db, 0x92dc,
+  0x92dd, 0x92de, 0x92df, 0x92e0, 0x92e1, 0x92e2, 0x92e3, 0x92e4,
+  0x92e5, 0x92e6, 0x92e7, 0x92e8, 0x92e9, 0x92ea, 0x92eb, 0x92ec,
+  0x92ed, 0x92ee, 0x92ef, 0x92f0, 0x92f1, 0x92f2, 0x92f3, 0x92f4,
+  0x92f5, 0x92f6, 0x92f7, 0x92f8, 0x92f9, 0x92fa, 0x92fb, 0x92fc,
+  0x92fd, 0x92fe, 0x9340, 0x9341, 0x9342, 0x9343, 0x9344, 0x9345,
+  0x9346, 0x9347, 0x9348, 0x9349, 0x934a, 0x934b, 0x934c, 0x934d,
+  0x934e, 0x934f, 0x9350, 0x9351, 0x9352, 0x9353, 0x9354, 0x9355,
+  0x9356, 0x9357, 0x9358, 0x9359, 0x935a, 0x935b, 0x935c, 0x935d,
+  0x935e, 0x935f, 0x9360, 0x9361, 0x9362, 0x9363, 0x9364, 0x9365,
+  0x9366, 0x9367, 0x9368, 0x9369, 0x936a, 0x936b, 0x936c, 0x936d,
+  0x936e, 0x936f, 0x9370, 0x9371, 0x9372, 0x9373, 0x9374, 0x9375,
+  0x9376, 0x9377, 0x9378, 0x9379, 0x937a, 0x937b, 0x937c, 0x937d,
+  0x937e, 0x9380, 0x9381, 0x9382, 0x9383, 0x9384, 0x9385, 0x9386,
+  0x9387, 0x9388, 0x9389, 0x938a, 0x938b, 0x938c, 0x938d, 0x938e,
+  0x938f, 0x9390, 0x9391, 0x9392, 0x9393, 0x9394, 0x9395, 0x9396,
+  0x9397, 0x9398, 0x9399, 0x939a, 0x939b, 0x939c, 0x939d, 0x939e,
+  0x939f, 0x93a0, 0x93a1, 0x93a2, 0x93a3, 0x93a4, 0x93a5, 0x93a6,
+  0x93a7, 0x93a8, 0x93a9, 0x93aa, 0x93ab, 0x93ac, 0x93ad, 0x93ae,
+  0x93af, 0x93b0, 0x93b1, 0x93b2, 0x93b3, 0x93b4, 0x93b5, 0x93b6,
+  0x93b7, 0x93b8, 0x93b9, 0x93ba, 0x93bb, 0x93bc, 0x93bd, 0x93be,
+  0x93bf, 0x93c0, 0x93c1, 0x93c2, 0x93c3, 0x93c4, 0x93c5, 0x93c6,
+  0x93c7, 0x93c8, 0x93c9, 0x93ca, 0x93cb, 0x93cc, 0x93cd, 0x93ce,
+  0x93cf, 0x93d0, 0x93d1, 0x93d2, 0x93d3, 0x93d4, 0x93d5, 0x93d6,
+  0x93d7, 0x93d8, 0x93d9, 0x93da, 0x93db, 0x93dc, 0x93dd, 0x93de,
+  0x93df, 0x93e0, 0x93e1, 0x93e2, 0x93e3, 0x93e4, 0x93e5, 0x93e6,
+  0x93e7, 0x93e8, 0x93e9, 0x93ea, 0x93eb, 0x93ec, 0x93ed, 0x93ee,
+  0x93ef, 0x93f0, 0x93f1, 0x93f2, 0x93f3, 0x93f4, 0x93f5, 0x93f6,
+  0x93f7, 0x93f8, 0x93f9, 0x93fa, 0x93fb, 0x93fc, 0x93fd, 0x93fe,
+  0x9440, 0x9441, 0x9442, 0x9443, 0x9444, 0x9445, 0x9446, 0x9447,
+  0x9448, 0x9449, 0x944a, 0x944b, 0x944c, 0x944d, 0x944e, 0x944f,
+  0x9450, 0x9451, 0x9452, 0x9453, 0x9454, 0x9455, 0x9456, 0x9457,
+  0x9458, 0x9459, 0x945a, 0x945b, 0x945c, 0x945d, 0x945e, 0x945f,
+  0x9460, 0x9461, 0x9462, 0x9463, 0x9464, 0x9465, 0x9466, 0x9467,
+  0x9468, 0x9469, 0x946a, 0x946b, 0x946c, 0x946d, 0x946e, 0x946f,
+  0x9470, 0x9471, 0x9472, 0x9473, 0x9474, 0x9475, 0x9476, 0x9477,
+  0x9478, 0x9479, 0x947a, 0x947b, 0x947c, 0x947d, 0x947e, 0x9480,
+  0x9481, 0x9482, 0x9483, 0x9484, 0x9485, 0x9486, 0x9487, 0x9488,
+  0x9489, 0x948a, 0x948b, 0x948c, 0x948d, 0x948e, 0x948f, 0x9490,
+  0x9491, 0x9492, 0x9493, 0x9494, 0x9495, 0x9496, 0x9497, 0x9498,
+  0x9499, 0x949a, 0x949b, 0x949c, 0x949d, 0x949e, 0x949f, 0x94a0,
+  0x94a1, 0x94a2, 0x94a3, 0x94a4, 0x94a5, 0x94a6, 0x94a7, 0x94a8,
+  0x94a9, 0x94aa, 0x94ab, 0x94ac, 0x94ad, 0x94ae, 0x94af, 0x94b0,
+  0x94b1, 0x94b2, 0x94b3, 0x94b4, 0x94b5, 0x94b6, 0x94b7, 0x94b8,
+  0x94b9, 0x94ba, 0x94bb, 0x94bc, 0x94bd, 0x94be, 0x94bf, 0x94c0,
+  0x94c1, 0x94c2, 0x94c3, 0x94c4, 0x94c5, 0x94c6, 0x94c7, 0x94c8,
+  0x94c9, 0x94ca, 0x94cb, 0x94cc, 0x94cd, 0x94ce, 0x94cf, 0x94d0,
+  0x94d1, 0x94d2, 0x94d3, 0x94d4, 0x94d5, 0x94d6, 0x94d7, 0x94d8,
+  0x94d9, 0x94da, 0x94db, 0x94dc, 0x94dd, 0x94de, 0x94df, 0x94e0,
+  0x94e1, 0x94e2, 0x94e3, 0x94e4, 0x94e5, 0x94e6, 0x94e7, 0x94e8,
+  0x94e9, 0x94ea, 0x94eb, 0x94ec, 0x94ed, 0x94ee, 0x94ef, 0x94f0,
+  0x94f1, 0x94f2, 0x94f3, 0x94f4, 0x94f5, 0x94f6, 0x94f7, 0x94f8,
+  0x94f9, 0x94fa, 0x94fb, 0x94fc, 0x94fd, 0x94fe, 0x9540, 0x9541,
+  0x9542, 0x9543, 0x9544, 0x9545, 0x9546, 0x9547, 0x9548, 0x9549,
+  0x954a, 0x954b, 0x954c, 0x954d, 0x954e, 0x954f, 0x9550, 0x9551,
+  0x9552, 0x9553, 0x9554, 0x9555, 0x9556, 0x9557, 0x9558, 0x9559,
+  0x955a, 0x955b, 0x955c, 0x955d, 0x955e, 0x955f, 0x9560, 0x9561,
+  0x9562, 0x9563, 0x9564, 0x9565, 0x9566, 0x9567, 0x9568, 0x9569,
+  0x956a, 0x956b, 0x956c, 0x956d, 0x956e, 0x956f, 0x9570, 0x9571,
+  0x9572, 0x9573, 0x9574, 0x9575, 0x9576, 0x9577, 0x9578, 0x9579,
+  0x957a, 0x957b, 0x957c, 0x957d, 0x957e, 0x9580, 0x9581, 0x9582,
+  0x9583, 0x9584, 0x9585, 0x9586, 0x9587, 0x9588, 0x9589, 0x958a,
+  0x958b, 0x958c, 0x958d, 0x958e, 0x958f, 0x9590, 0x9591, 0x9592,
+  0x9593, 0x9594, 0x9595, 0x9596, 0x9597, 0x9598, 0x9599, 0x959a,
+  0x959b, 0x959c, 0x959d, 0x959e, 0x959f, 0x95a0, 0x95a1, 0x95a2,
+  0x95a3, 0x95a4, 0x95a5, 0x95a6, 0x95a7, 0x95a8, 0x95a9, 0x95aa,
+  0x95ab, 0x95ac, 0x95ad, 0x95ae, 0x95af, 0x95b0, 0x95b1, 0x95b2,
+  0x95b3, 0x95b4, 0x95b5, 0x95b6, 0x95b7, 0x95b8, 0x95b9, 0x95ba,
+  0x95bb, 0x95bc, 0x95bd, 0x95be, 0x95bf, 0x95c0, 0x95c1, 0x95c2,
+  0x95c3, 0x95c4, 0x95c5, 0x95c6, 0x95c7, 0x95c8, 0x95c9, 0x95ca,
+  0x95cb, 0x95cc, 0x95cd, 0x95ce, 0x95cf, 0x95d0, 0x95d1, 0x95d2,
+  0x95d3, 0x95d4, 0x95d5, 0x95d6, 0x95d7, 0x95d8, 0x95d9, 0x95da,
+  0x95db, 0x95dc, 0x95dd, 0x95de, 0x95df, 0x95e0, 0x95e1, 0x95e2,
+  0x95e3, 0x95e4, 0x95e5, 0x95e6, 0x95e7, 0x95e8, 0x95e9, 0x95ea,
+  0x95eb, 0x95ec, 0x95ed, 0x95ee, 0x95ef, 0x95f0, 0x95f1, 0x95f2,
+  0x95f3, 0x95f4, 0x95f5, 0x95f6, 0x95f7, 0x95f8, 0x95f9, 0x95fa,
+  0x95fb, 0x95fc, 0x95fd, 0x95fe, 0x9640, 0x9641, 0x9642, 0x9643,
+  0x9644, 0x9645, 0x9646, 0x9647, 0x9648, 0x9649, 0x964a, 0x964b,
+  0x964c, 0x964d, 0x964e, 0x964f, 0x9650, 0x9651, 0x9652, 0x9653,
+  0x9654, 0x9655, 0x9656, 0x9657, 0x9658, 0x9659, 0x965a, 0x965b,
+  0x965c, 0x965d, 0x965e, 0x965f, 0x9660, 0x9661, 0x9662, 0x9663,
+  0x9664, 0x9665, 0x9666, 0x9667, 0x9668, 0x9669, 0x966a, 0x966b,
+  0x966c, 0x966d, 0x966e, 0x966f, 0x9670, 0x9671, 0x9672, 0x9673,
+  0x9674, 0x9675, 0x9676, 0x9677, 0x9678, 0x9679, 0x967a, 0x967b,
+  0x967c, 0x967d, 0x967e, 0x9680, 0x9681, 0x9682, 0x9683, 0x9684,
+  0x9685, 0x9686, 0x9687, 0x9688, 0x9689, 0x968a, 0x968b, 0x968c,
+  0x968d, 0x968e, 0x968f, 0x9690, 0x9691, 0x9692, 0x9693, 0x9694,
+  0x9695, 0x9696, 0x9697, 0x9698, 0x9699, 0x969a, 0x969b, 0x969c,
+  0x969d, 0x969e, 0x969f, 0x96a0, 0x96a1, 0x96a2, 0x96a3, 0x96a4,
+  0x96a5, 0x96a6, 0x96a7, 0x96a8, 0x96a9, 0x96aa, 0x96ab, 0x96ac,
+  0x96ad, 0x96ae, 0x96af, 0x96b0, 0x96b1, 0x96b2, 0x96b3, 0x96b4,
+  0x96b5, 0x96b6, 0x96b7, 0x96b8, 0x96b9, 0x96ba, 0x96bb, 0x96bc,
+  0x96bd, 0x96be, 0x96bf, 0x96c0, 0x96c1, 0x96c2, 0x96c3, 0x96c4,
+  0x96c5, 0x96c6, 0x96c7, 0x96c8, 0x96c9, 0x96ca, 0x96cb, 0x96cc,
+  0x96cd, 0x96ce, 0x96cf, 0x96d0, 0x96d1, 0x96d2, 0x96d3, 0x96d4,
+  0x96d5, 0x96d6, 0x96d7, 0x96d8, 0x96d9, 0x96da, 0x96db, 0x96dc,
+  0x96dd, 0x96de, 0x96df, 0x96e0, 0x96e1, 0x96e2, 0x96e3, 0x96e4,
+  0x96e5, 0x96e6, 0x96e7, 0x96e8, 0x96e9, 0x96ea, 0x96eb, 0x96ec,
+  0x96ed, 0x96ee, 0x96ef, 0x96f0, 0x96f1, 0x96f2, 0x96f3, 0x96f4,
+  0x96f5, 0x96f6, 0x96f7, 0x96f8, 0x96f9, 0x96fa, 0x96fb, 0x96fc,
+  0x96fd, 0x96fe, 0x9740, 0x9741, 0x9742, 0x9743, 0x9744, 0x9745,
+  0x9746, 0x9747, 0x9748, 0x9749, 0x974a, 0x974b, 0x974c, 0x974d,
+  0x974e, 0x974f, 0x9750, 0x9751, 0x9752, 0x9753, 0x9754, 0x9755,
+  0x9756, 0x9757, 0x9758, 0x9759, 0x975a, 0x975b, 0x975c, 0x975d,
+  0x975e, 0x975f, 0x9760, 0x9761, 0x9762, 0x9763, 0x9764, 0x9765,
+  0x9766, 0x9767, 0x9768, 0x9769, 0x976a, 0x976b, 0x976c, 0x976d,
+  0x976e, 0x976f, 0x9770, 0x9771, 0x9772, 0x9773, 0x9774, 0x9775,
+  0x9776, 0x9777, 0x9778, 0x9779, 0x977a, 0x977b, 0x977c, 0x977d,
+  0x977e, 0x9780, 0x9781, 0x9782, 0x9783, 0x9784, 0x9785, 0x9786,
+  0x9787, 0x9788, 0x9789, 0x978a, 0x978b, 0x978c, 0x978d, 0x978e,
+  0x978f, 0x9790, 0x9791, 0x9792, 0x9793, 0x9794, 0x9795, 0x9796,
+  0x9797, 0x9798, 0x9799, 0x979a, 0x979b, 0x979c, 0x979d, 0x979e,
+  0x979f, 0x97a0, 0x97a1, 0x97a2, 0x97a3, 0x97a4, 0x97a5, 0x97a6,
+  0x97a7, 0x97a8, 0x97a9, 0x97aa, 0x97ab, 0x97ac, 0x97ad, 0x97ae,
+  0x97af, 0x97b0, 0x97b1, 0x97b2, 0x97b3, 0x97b4, 0x97b5, 0x97b6,
+  0x97b7, 0x97b8, 0x97b9, 0x97ba, 0x97bb, 0x97bc, 0x97bd, 0x97be,
+  0x97bf, 0x97c0, 0x97c1, 0x97c2, 0x97c3, 0x97c4, 0x97c5, 0x97c6,
+  0x97c7, 0x97c8, 0x97c9, 0x97ca, 0x97cb, 0x97cc, 0x97cd, 0x97ce,
+  0x97cf, 0x97d0, 0x97d1, 0x97d2, 0x97d3, 0x97d4, 0x97d5, 0x97d6,
+  0x97d7, 0x97d8, 0x97d9, 0x97da, 0x97db, 0x97dc, 0x97dd, 0x97de,
+  0x97df, 0x97e0, 0x97e1, 0x97e2, 0x97e3, 0x97e4, 0x97e5, 0x97e6,
+  0x97e7, 0x97e8, 0x97e9, 0x97ea, 0x97eb, 0x97ec, 0x97ed, 0x97ee,
+  0x97ef, 0x97f0, 0x97f1, 0x97f2, 0x97f3, 0x97f4, 0x97f5, 0x97f6,
+  0x97f7, 0x97f8, 0x97f9, 0x97fa, 0x97fb, 0x97fc, 0x97fd, 0x97fe,
+  0x9840, 0x9841, 0x9842, 0x9843, 0x9844, 0x9845, 0x9846, 0x9847,
+  0x9848, 0x9849, 0x984a, 0x984b, 0x984c, 0x984d, 0x984e, 0x984f,
+  0x9850, 0x9851, 0x9852, 0x9853, 0x9854, 0x9855, 0x9856, 0x9857,
+  0x9858, 0x9859, 0x985a, 0x985b, 0x985c, 0x985d, 0x985e, 0x985f,
+  0x9860, 0x9861, 0x9862, 0x9863, 0x9864, 0x9865, 0x9866, 0x9867,
+  0x9868, 0x9869, 0x986a, 0x986b, 0x986c, 0x986d, 0x986e, 0x986f,
+  0x9870, 0x9871, 0x9872, 0x9873, 0x9874, 0x9875, 0x9876, 0x9877,
+  0x9878, 0x9879, 0x987a, 0x987b, 0x987c, 0x987d, 0x987e, 0x9880,
+  0x9881, 0x9882, 0x9883, 0x9884, 0x9885, 0x9886, 0x9887, 0x9888,
+  0x9889, 0x988a, 0x988b, 0x988c, 0x988d, 0x988e, 0x988f, 0x9890,
+  0x9891, 0x9892, 0x9893, 0x9894, 0x9895, 0x9896, 0x9897, 0x9898,
+  0x9899, 0x989a, 0x989b, 0x989c, 0x989d, 0x989e, 0x989f, 0x98a0,
+  0x98a1, 0x98a2, 0x98a3, 0x98a4, 0x98a5, 0x98a6, 0x98a7, 0x98a8,
+  0x98a9, 0x98aa, 0x98ab, 0x98ac, 0x98ad, 0x98ae, 0x98af, 0x98b0,
+  0x98b1, 0x98b2, 0x98b3, 0x98b4, 0x98b5, 0x98b6, 0x98b7, 0x98b8,
+  0x98b9, 0x98ba, 0x98bb, 0x98bc, 0x98bd, 0x98be, 0x98bf, 0x98c0,
+  0x98c1, 0x98c2, 0x98c3, 0x98c4, 0x98c5, 0x98c6, 0x98c7, 0x98c8,
+  0x98c9, 0x98ca, 0x98cb, 0x98cc, 0x98cd, 0x98ce, 0x98cf, 0x98d0,
+  0x98d1, 0x98d2, 0x98d3, 0x98d4, 0x98d5, 0x98d6, 0x98d7, 0x98d8,
+  0x98d9, 0x98da, 0x98db, 0x98dc, 0x98dd, 0x98de, 0x98df, 0x98e0,
+  0x98e1, 0x98e2, 0x98e3, 0x98e4, 0x98e5, 0x98e6, 0x98e7, 0x98e8,
+  0x98e9, 0x98ea, 0x98eb, 0x98ec, 0x98ed, 0x98ee, 0x98ef, 0x98f0,
+  0x98f1, 0x98f2, 0x98f3, 0x98f4, 0x98f5, 0x98f6, 0x98f7, 0x98f8,
+  0x98f9, 0x98fa, 0x98fb, 0x98fc, 0x98fd, 0x98fe, 0x9940, 0x9941,
+  0x9942, 0x9943, 0x9944, 0x9945, 0x9946, 0x9947, 0x9948, 0x9949,
+  0x994a, 0x994b, 0x994c, 0x994d, 0x994e, 0x994f, 0x9950, 0x9951,
+  0x9952, 0x9953, 0x9954, 0x9955, 0x9956, 0x9957, 0x9958, 0x9959,
+  0x995a, 0x995b, 0x995c, 0x995d, 0x995e, 0x995f, 0x9960, 0x9961,
+  0x9962, 0x9963, 0x9964, 0x9965, 0x9966, 0x9967, 0x9968, 0x9969,
+  0x996a, 0x996b, 0x996c, 0x996d, 0x996e, 0x996f, 0x9970, 0x9971,
+  0x9972, 0x9973, 0x9974, 0x9975, 0x9976, 0x9977, 0x9978, 0x9979,
+  0x997a, 0x997b, 0x997c, 0x997d, 0x997e, 0x9980, 0x9981, 0x9982,
+  0x9983, 0x9984, 0x9985, 0x9986, 0x9987, 0x9988, 0x9989, 0x998a,
+  0x998b, 0x998c, 0x998d, 0x998e, 0x998f, 0x9990, 0x9991, 0x9992,
+  0x9993, 0x9994, 0x9995, 0x9996, 0x9997, 0x9998, 0x9999, 0x999a,
+  0x999b, 0x999c, 0x999d, 0x999e, 0x999f, 0x99a0, 0x99a1, 0x99a2,
+  0x99a3, 0x99a4, 0x99a5, 0x99a6, 0x99a7, 0x99a8, 0x99a9, 0x99aa,
+  0x99ab, 0x99ac, 0x99ad, 0x99ae, 0x99af, 0x99b0, 0x99b1, 0x99b2,
+  0x99b3, 0x99b4, 0x99b5, 0x99b6, 0x99b7, 0x99b8, 0x99b9, 0x99ba,
+  0x99bb, 0x99bc, 0x99bd, 0x99be, 0x99bf, 0x99c0, 0x99c1, 0x99c2,
+  0x99c3, 0x99c4, 0x99c5, 0x99c6, 0x99c7, 0x99c8, 0x99c9, 0x99ca,
+  0x99cb, 0x99cc, 0x99cd, 0x99ce, 0x99cf, 0x99d0, 0x99d1, 0x99d2,
+  0x99d3, 0x99d4, 0x99d5, 0x99d6, 0x99d7, 0x99d8, 0x99d9, 0x99da,
+  0x99db, 0x99dc, 0x99dd, 0x99de, 0x99df, 0x99e0, 0x99e1, 0x99e2,
+  0x99e3, 0x99e4, 0x99e5, 0x99e6, 0x99e7, 0x99e8, 0x99e9, 0x99ea,
+  0x99eb, 0x99ec, 0x99ed, 0x99ee, 0x99ef, 0x99f0, 0x99f1, 0x99f2,
+  0x99f3, 0x99f4, 0x99f5, 0x99f6, 0x99f7, 0x99f8, 0x99f9, 0x99fa,
+  0x99fb, 0x99fc, 0x99fd, 0x99fe, 0x9a40, 0x9a41, 0x9a42, 0x9a43,
+  0x9a44, 0x9a45, 0x9a46, 0x9a47, 0x9a48, 0x9a49, 0x9a4a, 0x9a4b,
+  0x9a4c, 0x9a4d, 0x9a4e, 0x9a4f, 0x9a50, 0x9a51, 0x9a52, 0x9a53,
+  0x9a54, 0x9a55, 0x9a56, 0x9a57, 0x9a58, 0x9a59, 0x9a5a, 0x9a5b,
+  0x9a5c, 0x9a5d, 0x9a5e, 0x9a5f, 0x9a60, 0x9a61, 0x9a62, 0x9a63,
+  0x9a64, 0x9a65, 0x9a66, 0x9a67, 0x9a68, 0x9a69, 0x9a6a, 0x9a6b,
+  0x9a6c, 0x9a6d, 0x9a6e, 0x9a6f, 0x9a70, 0x9a71, 0x9a72, 0x9a73,
+  0x9a74, 0x9a75, 0x9a76, 0x9a77, 0x9a78, 0x9a79, 0x9a7a, 0x9a7b,
+  0x9a7c, 0x9a7d, 0x9a7e, 0x9a80, 0x9a81, 0x9a82, 0x9a83, 0x9a84,
+  0x9a85, 0x9a86, 0x9a87, 0x9a88, 0x9a89, 0x9a8a, 0x9a8b, 0x9a8c,
+  0x9a8d, 0x9a8e, 0x9a8f, 0x9a90, 0x9a91, 0x9a92, 0x9a93, 0x9a94,
+  0x9a95, 0x9a96, 0x9a97, 0x9a98, 0x9a99, 0x9a9a, 0x9a9b, 0x9a9c,
+  0x9a9d, 0x9a9e, 0x9a9f, 0x9aa0, 0x9aa1, 0x9aa2, 0x9aa3, 0x9aa4,
+  0x9aa5, 0x9aa6, 0x9aa7, 0x9aa8, 0x9aa9, 0x9aaa, 0x9aab, 0x9aac,
+  0x9aad, 0x9aae, 0x9aaf, 0x9ab0, 0x9ab1, 0x9ab2, 0x9ab3, 0x9ab4,
+  0x9ab5, 0x9ab6, 0x9ab7, 0x9ab8, 0x9ab9, 0x9aba, 0x9abb, 0x9abc,
+  0x9abd, 0x9abe, 0x9abf, 0x9ac0, 0x9ac1, 0x9ac2, 0x9ac3, 0x9ac4,
+  0x9ac5, 0x9ac6, 0x9ac7, 0x9ac8, 0x9ac9, 0x9aca, 0x9acb, 0x9acc,
+  0x9acd, 0x9ace, 0x9acf, 0x9ad0, 0x9ad1, 0x9ad2, 0x9ad3, 0x9ad4,
+  0x9ad5, 0x9ad6, 0x9ad7, 0x9ad8, 0x9ad9, 0x9ada, 0x9adb, 0x9adc,
+  0x9add, 0x9ade, 0x9adf, 0x9ae0, 0x9ae1, 0x9ae2, 0x9ae3, 0x9ae4,
+  0x9ae5, 0x9ae6, 0x9ae7, 0x9ae8, 0x9ae9, 0x9aea, 0x9aeb, 0x9aec,
+  0x9aed, 0x9aee, 0x9aef, 0x9af0, 0x9af1, 0x9af2, 0x9af3, 0x9af4,
+  0x9af5, 0x9af6, 0x9af7, 0x9af8, 0x9af9, 0x9afa, 0x9afb, 0x9afc,
+  0x9afd, 0x9afe, 0x9b40, 0x9b41, 0x9b42, 0x9b43, 0x9b44, 0x9b45,
+  0x9b46, 0x9b47, 0x9b48, 0x9b49, 0x9b4a, 0x9b4b, 0x9b4c, 0x9b4d,
+  0x9b4e, 0x9b4f, 0x9b50, 0x9b51, 0x9b52, 0x9b53, 0x9b54, 0x9b55,
+  0x9b56, 0x9b57, 0x9b58, 0x9b59, 0x9b5a, 0x9b5b, 0x9b5c, 0x9b5d,
+  0x9b5e, 0x9b5f, 0x9b60, 0x9b61, 0x9b62, 0x9b63, 0x9b64, 0x9b65,
+  0x9b66, 0x9b67, 0x9b68, 0x9b69, 0x9b6a, 0x9b6b, 0x9b6c, 0x9b6d,
+  0x9b6e, 0x9b6f, 0x9b70, 0x9b71, 0x9b72, 0x9b73, 0x9b74, 0x9b75,
+  0x9b76, 0x9b77, 0x9b78, 0x9b79, 0x9b7a, 0x9b7b, 0x9b7c, 0x9b7d,
+  0x9b7e, 0x9b80, 0x9b81, 0x9b82, 0x9b83, 0x9b84, 0x9b85, 0x9b86,
+  0x9b87, 0x9b88, 0x9b89, 0x9b8a, 0x9b8b, 0x9b8c, 0x9b8d, 0x9b8e,
+  0x9b8f, 0x9b90, 0x9b91, 0x9b92, 0x9b93, 0x9b94, 0x9b95, 0x9b96,
+  0x9b97, 0x9b98, 0x9b99, 0x9b9a, 0x9b9b, 0x9b9c, 0x9b9d, 0x9b9e,
+  0x9b9f, 0x9ba0, 0x9ba1, 0x9ba2, 0x9ba3, 0x9ba4, 0x9ba5, 0x9ba6,
+  0x9ba7, 0x9ba8, 0x9ba9, 0x9baa, 0x9bab, 0x9bac, 0x9bad, 0x9bae,
+  0x9baf, 0x9bb0, 0x9bb1, 0x9bb2, 0x9bb3, 0x9bb4, 0x9bb5, 0x9bb6,
+  0x9bb7, 0x9bb8, 0x9bb9, 0x9bba, 0x9bbb, 0x9bbc, 0x9bbd, 0x9bbe,
+  0x9bbf, 0x9bc0, 0x9bc1, 0x9bc2, 0x9bc3, 0x9bc4, 0x9bc5, 0x9bc6,
+  0x9bc7, 0x9bc8, 0x9bc9, 0x9bca, 0x9bcb, 0x9bcc, 0x9bcd, 0x9bce,
+  0x9bcf, 0x9bd0, 0x9bd1, 0x9bd2, 0x9bd3, 0x9bd4, 0x9bd5, 0x9bd6,
+  0x9bd7, 0x9bd8, 0x9bd9, 0x9bda, 0x9bdb, 0x9bdc, 0x9bdd, 0x9bde,
+  0x9bdf, 0x9be0, 0x9be1, 0x9be2, 0x9be3, 0x9be4, 0x9be5, 0x9be6,
+  0x9be7, 0x9be8, 0x9be9, 0x9bea, 0x9beb, 0x9bec, 0x9bed, 0x9bee,
+  0x9bef, 0x9bf0, 0x9bf1, 0x9bf2, 0x9bf3, 0x9bf4, 0x9bf5, 0x9bf6,
+  0x9bf7, 0x9bf8, 0x9bf9, 0x9bfa, 0x9bfb, 0x9bfc, 0x9bfd, 0x9bfe,
+  0x9c40, 0x9c41, 0x9c42, 0x9c43, 0x9c44, 0x9c45, 0x9c46, 0x9c47,
+  0x9c48, 0x9c49, 0x9c4a, 0x9c4b, 0x9c4c, 0x9c4d, 0x9c4e, 0x9c4f,
+  0x9c50, 0x9c51, 0x9c52, 0x9c53, 0x9c54, 0x9c55, 0x9c56, 0x9c57,
+  0x9c58, 0x9c59, 0x9c5a, 0x9c5b, 0x9c5c, 0x9c5d, 0x9c5e, 0x9c5f,
+  0x9c60, 0x9c61, 0x9c62, 0x9c63, 0x9c64, 0x9c65, 0x9c66, 0x9c67,
+  0x9c68, 0x9c69, 0x9c6a, 0x9c6b, 0x9c6c, 0x9c6d, 0x9c6e, 0x9c6f,
+  0x9c70, 0x9c71, 0x9c72, 0x9c73, 0x9c74, 0x9c75, 0x9c76, 0x9c77,
+  0x9c78, 0x9c79, 0x9c7a, 0x9c7b, 0x9c7c, 0x9c7d, 0x9c7e, 0x9c80,
+  0x9c81, 0x9c82, 0x9c83, 0x9c84, 0x9c85, 0x9c86, 0x9c87, 0x9c88,
+  0x9c89, 0x9c8a, 0x9c8b, 0x9c8c, 0x9c8d, 0x9c8e, 0x9c8f, 0x9c90,
+  0x9c91, 0x9c92, 0x9c93, 0x9c94, 0x9c95, 0x9c96, 0x9c97, 0x9c98,
+  0x9c99, 0x9c9a, 0x9c9b, 0x9c9c, 0x9c9d, 0x9c9e, 0x9c9f, 0x9ca0,
+  0x9ca1, 0x9ca2, 0x9ca3, 0x9ca4, 0x9ca5, 0x9ca6, 0x9ca7, 0x9ca8,
+  0x9ca9, 0x9caa, 0x9cab, 0x9cac, 0x9cad, 0x9cae, 0x9caf, 0x9cb0,
+  0x9cb1, 0x9cb2, 0x9cb3, 0x9cb4, 0x9cb5, 0x9cb6, 0x9cb7, 0x9cb8,
+  0x9cb9, 0x9cba, 0x9cbb, 0x9cbc, 0x9cbd, 0x9cbe, 0x9cbf, 0x9cc0,
+  0x9cc1, 0x9cc2, 0x9cc3, 0x9cc4, 0x9cc5, 0x9cc6, 0x9cc7, 0x9cc8,
+  0x9cc9, 0x9cca, 0x9ccb, 0x9ccc, 0x9ccd, 0x9cce, 0x9ccf, 0x9cd0,
+  0x9cd1, 0x9cd2, 0x9cd3, 0x9cd4, 0x9cd5, 0x9cd6, 0x9cd7, 0x9cd8,
+  0x9cd9, 0x9cda, 0x9cdb, 0x9cdc, 0x9cdd, 0x9cde, 0x9cdf, 0x9ce0,
+  0x9ce1, 0x9ce2, 0x9ce3, 0x9ce4, 0x9ce5, 0x9ce6, 0x9ce7, 0x9ce8,
+  0x9ce9, 0x9cea, 0x9ceb, 0x9cec, 0x9ced, 0x9cee, 0x9cef, 0x9cf0,
+  0x9cf1, 0x9cf2, 0x9cf3, 0x9cf4, 0x9cf5, 0x9cf6, 0x9cf7, 0x9cf8,
+  0x9cf9, 0x9cfa, 0x9cfb, 0x9cfc, 0x9cfd, 0x9cfe, 0x9d40, 0x9d41,
+  0x9d42, 0x9d43, 0x9d44, 0x9d45, 0x9d46, 0x9d47, 0x9d48, 0x9d49,
+  0x9d4a, 0x9d4b, 0x9d4c, 0x9d4d, 0x9d4e, 0x9d4f, 0x9d50, 0x9d51,
+  0x9d52, 0x9d53, 0x9d54, 0x9d55, 0x9d56, 0x9d57, 0x9d58, 0x9d59,
+  0x9d5a, 0x9d5b, 0x9d5c, 0x9d5d, 0x9d5e, 0x9d5f, 0x9d60, 0x9d61,
+  0x9d62, 0x9d63, 0x9d64, 0x9d65, 0x9d66, 0x9d67, 0x9d68, 0x9d69,
+  0x9d6a, 0x9d6b, 0x9d6c, 0x9d6d, 0x9d6e, 0x9d6f, 0x9d70, 0x9d71,
+  0x9d72, 0x9d73, 0x9d74, 0x9d75, 0x9d76, 0x9d77, 0x9d78, 0x9d79,
+  0x9d7a, 0x9d7b, 0x9d7c, 0x9d7d, 0x9d7e, 0x9d80, 0x9d81, 0x9d82,
+  0x9d83, 0x9d84, 0x9d85, 0x9d86, 0x9d87, 0x9d88, 0x9d89, 0x9d8a,
+  0x9d8b, 0x9d8c, 0x9d8d, 0x9d8e, 0x9d8f, 0x9d90, 0x9d91, 0x9d92,
+  0x9d93, 0x9d94, 0x9d95, 0x9d96, 0x9d97, 0x9d98, 0x9d99, 0x9d9a,
+  0x9d9b, 0x9d9c, 0x9d9d, 0x9d9e, 0x9d9f, 0x9da0, 0x9da1, 0x9da2,
+  0x9da3, 0x9da4, 0x9da5, 0x9da6, 0x9da7, 0x9da8, 0x9da9, 0x9daa,
+  0x9dab, 0x9dac, 0x9dad, 0x9dae, 0x9daf, 0x9db0, 0x9db1, 0x9db2,
+  0x9db3, 0x9db4, 0x9db5, 0x9db6, 0x9db7, 0x9db8, 0x9db9, 0x9dba,
+  0x9dbb, 0x9dbc, 0x9dbd, 0x9dbe, 0x9dbf, 0x9dc0, 0x9dc1, 0x9dc2,
+  0x9dc3, 0x9dc4, 0x9dc5, 0x9dc6, 0x9dc7, 0x9dc8, 0x9dc9, 0x9dca,
+  0x9dcb, 0x9dcc, 0x9dcd, 0x9dce, 0x9dcf, 0x9dd0, 0x9dd1, 0x9dd2,
+  0x9dd3, 0x9dd4, 0x9dd5, 0x9dd6, 0x9dd7, 0x9dd8, 0x9dd9, 0x9dda,
+  0x9ddb, 0x9ddc, 0x9ddd, 0x9dde, 0x9ddf, 0x9de0, 0x9de1, 0x9de2,
+  0x9de3, 0x9de4, 0x9de5, 0x9de6, 0x9de7, 0x9de8, 0x9de9, 0x9dea,
+  0x9deb, 0x9dec, 0x9ded, 0x9dee, 0x9def, 0x9df0, 0x9df1, 0x9df2,
+  0x9df3, 0x9df4, 0x9df5, 0x9df6, 0x9df7, 0x9df8, 0x9df9, 0x9dfa,
+  0x9dfb, 0x9dfc, 0x9dfd, 0x9dfe, 0x9e40, 0x9e41, 0x9e42, 0x9e43,
+  0x9e44, 0x9e45, 0x9e46, 0x9e47, 0x9e48, 0x9e49, 0x9e4a, 0x9e4b,
+  0x9e4c, 0x9e4d, 0x9e4e, 0x9e4f, 0x9e50, 0x9e51, 0x9e52, 0x9e53,
+  0x9e54, 0x9e55, 0x9e56, 0x9e57, 0x9e58, 0x9e59, 0x9e5a, 0x9e5b,
+  0x9e5c, 0x9e5d, 0x9e5e, 0x9e5f, 0x9e60, 0x9e61, 0x9e62, 0x9e63,
+  0x9e64, 0x9e65, 0x9e66, 0x9e67, 0x9e68, 0x9e69, 0x9e6a, 0x9e6b,
+  0x9e6c, 0x9e6d, 0x9e6e, 0x9e6f, 0x9e70, 0x9e71, 0x9e72, 0x9e73,
+  0x9e74, 0x9e75, 0x9e76, 0x9e77, 0x9e78, 0x9e79, 0x9e7a, 0x9e7b,
+  0x9e7c, 0x9e7d, 0x9e7e, 0x9e80, 0x9e81, 0x9e82, 0x9e83, 0x9e84,
+  0x9e85, 0x9e86, 0x9e87, 0x9e88, 0x9e89, 0x9e8a, 0x9e8b, 0x9e8c,
+  0x9e8d, 0x9e8e, 0x9e8f, 0x9e90, 0x9e91, 0x9e92, 0x9e93, 0x9e94,
+  0x9e95, 0x9e96, 0x9e97, 0x9e98, 0x9e99, 0x9e9a, 0x9e9b, 0x9e9c,
+  0x9e9d, 0x9e9e, 0x9e9f, 0x9ea0, 0x9ea1, 0x9ea2, 0x9ea3, 0x9ea4,
+  0x9ea5, 0x9ea6, 0x9ea7, 0x9ea8, 0x9ea9, 0x9eaa, 0x9eab, 0x9eac,
+  0x9ead, 0x9eae, 0x9eaf, 0x9eb0, 0x9eb1, 0x9eb2, 0x9eb3, 0x9eb4,
+  0x9eb5, 0x9eb6, 0x9eb7, 0x9eb8, 0x9eb9, 0x9eba, 0x9ebb, 0x9ebc,
+  0x9ebd, 0x9ebe, 0x9ebf, 0x9ec0, 0x9ec1, 0x9ec2, 0x9ec3, 0x9ec4,
+  0x9ec5, 0x9ec6, 0x9ec7, 0x9ec8, 0x9ec9, 0x9eca, 0x9ecb, 0x9ecc,
+  0x9ecd, 0x9ece, 0x9ecf, 0x9ed0, 0x9ed1, 0x9ed2, 0x9ed3, 0x9ed4,
+  0x9ed5, 0x9ed6, 0x9ed7, 0x9ed8, 0x9ed9, 0x9eda, 0x9edb, 0x9edc,
+  0x9edd, 0x9ede, 0x9edf, 0x9ee0, 0x9ee1, 0x9ee2, 0x9ee3, 0x9ee4,
+  0x9ee5, 0x9ee6, 0x9ee7, 0x9ee8, 0x9ee9, 0x9eea, 0x9eeb, 0x9eec,
+  0x9eed, 0x9eee, 0x9eef, 0x9ef0, 0x9ef1, 0x9ef2, 0x9ef3, 0x9ef4,
+  0x9ef5, 0x9ef6, 0x9ef7, 0x9ef8, 0x9ef9, 0x9efa, 0x9efb, 0x9efc,
+  0x9efd, 0x9efe, 0x9f40, 0x9f41, 0x9f42, 0x9f43, 0x9f44, 0x9f45,
+  0x9f46, 0x9f47, 0x9f48, 0x9f49, 0x9f4a, 0x9f4b, 0x9f4c, 0x9f4d,
+  0x9f4e, 0x9f4f, 0x9f50, 0x9f51, 0x9f52, 0x9f53, 0x9f54, 0x9f55,
+  0x9f56, 0x9f57, 0x9f58, 0x9f59, 0x9f5a, 0x9f5b, 0x9f5c, 0x9f5d,
+  0x9f5e, 0x9f5f, 0x9f60, 0x9f61, 0x9f62, 0x9f63, 0x9f64, 0x9f65,
+  0x9f66, 0x9f67, 0x9f68, 0x9f69, 0x9f6a, 0x9f6b, 0x9f6c, 0x9f6d,
+  0x9f6e, 0x9f6f, 0x9f70, 0x9f71, 0x9f72, 0x9f73, 0x9f74, 0x9f75,
+  0x9f76, 0x9f77, 0x9f78, 0x9f79, 0x9f7a, 0x9f7b, 0x9f7c, 0x9f7d,
+  0x9f7e, 0x9f80, 0x9f81, 0x9f82, 0x9f83, 0x9f84, 0x9f85, 0x9f86,
+  0x9f87, 0x9f88, 0x9f89, 0x9f8a, 0x9f8b, 0x9f8c, 0x9f8d, 0x9f8e,
+  0x9f8f, 0x9f90, 0x9f91, 0x9f92, 0x9f93, 0x9f94, 0x9f95, 0x9f96,
+  0x9f97, 0x9f98, 0x9f99, 0x9f9a, 0x9f9b, 0x9f9c, 0x9f9d, 0x9f9e,
+  0x9f9f, 0x9fa0, 0x9fa1, 0x9fa2, 0x9fa3, 0x9fa4, 0x9fa5, 0x9fa6,
+  0x9fa7, 0x9fa8, 0x9fa9, 0x9faa, 0x9fab, 0x9fac, 0x9fad, 0x9fae,
+  0x9faf, 0x9fb0, 0x9fb1, 0x9fb2, 0x9fb3, 0x9fb4, 0x9fb5, 0x9fb6,
+  0x9fb7, 0x9fb8, 0x9fb9, 0x9fba, 0x9fbb, 0x9fbc, 0x9fbd, 0x9fbe,
+  0x9fbf, 0x9fc0, 0x9fc1, 0x9fc2, 0x9fc3, 0x9fc4, 0x9fc5, 0x9fc6,
+  0x9fc7, 0x9fc8, 0x9fc9, 0x9fca, 0x9fcb, 0x9fcc, 0x9fcd, 0x9fce,
+  0x9fcf, 0x9fd0, 0x9fd1, 0x9fd2, 0x9fd3, 0x9fd4, 0x9fd5, 0x9fd6,
+  0x9fd7, 0x9fd8, 0x9fd9, 0x9fda, 0x9fdb, 0x9fdc, 0x9fdd, 0x9fde,
+  0x9fdf, 0x9fe0, 0x9fe1, 0x9fe2, 0x9fe3, 0x9fe4, 0x9fe5, 0x9fe6,
+  0x9fe7, 0x9fe8, 0x9fe9, 0x9fea, 0x9feb, 0x9fec, 0x9fed, 0x9fee,
+  0x9fef, 0x9ff0, 0x9ff1, 0x9ff2, 0x9ff3, 0x9ff4, 0x9ff5, 0x9ff6,
+  0x9ff7, 0x9ff8, 0x9ff9, 0x9ffa, 0x9ffb, 0x9ffc, 0x9ffd, 0x9ffe,
+  0xa040, 0xa041, 0xa042, 0xa043, 0xa044, 0xa045, 0xa046, 0xa047,
+  0xa048, 0xa049, 0xa04a, 0xa04b, 0xa04c, 0xa04d, 0xa04e, 0xa04f,
+  0xa050, 0xa051, 0xa052, 0xa053, 0xa054, 0xa055, 0xa056, 0xa057,
+  0xa058, 0xa059, 0xa05a, 0xa05b, 0xa05c, 0xa05d, 0xa05e, 0xa05f,
+  0xa060, 0xa061, 0xa062, 0xa063, 0xa064, 0xa065, 0xa066, 0xa067,
+  0xa068, 0xa069, 0xa06a, 0xa06b, 0xa06c, 0xa06d, 0xa06e, 0xa06f,
+  0xa070, 0xa071, 0xa072, 0xa073, 0xa074, 0xa075, 0xa076, 0xa077,
+  0xa078, 0xa079, 0xa07a, 0xa07b, 0xa07c, 0xa07d, 0xa07e, 0xa080,
+  0xa081, 0xa082, 0xa083, 0xa084, 0xa085, 0xa086, 0xa087, 0xa088,
+  0xa089, 0xa08a, 0xa08b, 0xa08c, 0xa08d, 0xa08e, 0xa08f, 0xa090,
+  0xa091, 0xa092, 0xa093, 0xa094, 0xa095, 0xa096, 0xa097, 0xa098,
+  0xa099, 0xa09a, 0xa09b, 0xa09c, 0xa09d, 0xa09e, 0xa09f, 0xa0a0,
+  0xa0a1, 0xa0a2, 0xa0a3, 0xa0a4, 0xa0a5, 0xa0a6, 0xa0a7, 0xa0a8,
+  0xa0a9, 0xa0aa, 0xa0ab, 0xa0ac, 0xa0ad, 0xa0ae, 0xa0af, 0xa0b0,
+  0xa0b1, 0xa0b2, 0xa0b3, 0xa0b4, 0xa0b5, 0xa0b6, 0xa0b7, 0xa0b8,
+  0xa0b9, 0xa0ba, 0xa0bb, 0xa0bc, 0xa0bd, 0xa0be, 0xa0bf, 0xa0c0,
+  0xa0c1, 0xa0c2, 0xa0c3, 0xa0c4, 0xa0c5, 0xa0c6, 0xa0c7, 0xa0c8,
+  0xa0c9, 0xa0ca, 0xa0cb, 0xa0cc, 0xa0cd, 0xa0ce, 0xa0cf, 0xa0d0,
+  0xa0d1, 0xa0d2, 0xa0d3, 0xa0d4, 0xa0d5, 0xa0d6, 0xa0d7, 0xa0d8,
+  0xa0d9, 0xa0da, 0xa0db, 0xa0dc, 0xa0dd, 0xa0de, 0xa0df, 0xa0e0,
+  0xa0e1, 0xa0e2, 0xa0e3, 0xa0e4, 0xa0e5, 0xa0e6, 0xa0e7, 0xa0e8,
+  0xa0e9, 0xa0ea, 0xa0eb, 0xa0ec, 0xa0ed, 0xa0ee, 0xa0ef, 0xa0f0,
+  0xa0f1, 0xa0f2, 0xa0f3, 0xa0f4, 0xa0f5, 0xa0f6, 0xa0f7, 0xa0f8,
+  0xa0f9, 0xa0fa, 0xa0fb, 0xa0fc, 0xa0fd, 0xa0fe, 0xaa40, 0xaa41,
+  0xaa42, 0xaa43, 0xaa44, 0xaa45, 0xaa46, 0xaa47, 0xaa48, 0xaa49,
+  0xaa4a, 0xaa4b, 0xaa4c, 0xaa4d, 0xaa4e, 0xaa4f, 0xaa50, 0xaa51,
+  0xaa52, 0xaa53, 0xaa54, 0xaa55, 0xaa56, 0xaa57, 0xaa58, 0xaa59,
+  0xaa5a, 0xaa5b, 0xaa5c, 0xaa5d, 0xaa5e, 0xaa5f, 0xaa60, 0xaa61,
+  0xaa62, 0xaa63, 0xaa64, 0xaa65, 0xaa66, 0xaa67, 0xaa68, 0xaa69,
+  0xaa6a, 0xaa6b, 0xaa6c, 0xaa6d, 0xaa6e, 0xaa6f, 0xaa70, 0xaa71,
+  0xaa72, 0xaa73, 0xaa74, 0xaa75, 0xaa76, 0xaa77, 0xaa78, 0xaa79,
+  0xaa7a, 0xaa7b, 0xaa7c, 0xaa7d, 0xaa7e, 0xaa80, 0xaa81, 0xaa82,
+  0xaa83, 0xaa84, 0xaa85, 0xaa86, 0xaa87, 0xaa88, 0xaa89, 0xaa8a,
+  0xaa8b, 0xaa8c, 0xaa8d, 0xaa8e, 0xaa8f, 0xaa90, 0xaa91, 0xaa92,
+  0xaa93, 0xaa94, 0xaa95, 0xaa96, 0xaa97, 0xaa98, 0xaa99, 0xaa9a,
+  0xaa9b, 0xaa9c, 0xaa9d, 0xaa9e, 0xaa9f, 0xaaa0, 0xab40, 0xab41,
+  0xab42, 0xab43, 0xab44, 0xab45, 0xab46, 0xab47, 0xab48, 0xab49,
+  0xab4a, 0xab4b, 0xab4c, 0xab4d, 0xab4e, 0xab4f, 0xab50, 0xab51,
+  0xab52, 0xab53, 0xab54, 0xab55, 0xab56, 0xab57, 0xab58, 0xab59,
+  0xab5a, 0xab5b, 0xab5c, 0xab5d, 0xab5e, 0xab5f, 0xab60, 0xab61,
+  0xab62, 0xab63, 0xab64, 0xab65, 0xab66, 0xab67, 0xab68, 0xab69,
+  0xab6a, 0xab6b, 0xab6c, 0xab6d, 0xab6e, 0xab6f, 0xab70, 0xab71,
+  0xab72, 0xab73, 0xab74, 0xab75, 0xab76, 0xab77, 0xab78, 0xab79,
+  0xab7a, 0xab7b, 0xab7c, 0xab7d, 0xab7e, 0xab80, 0xab81, 0xab82,
+  0xab83, 0xab84, 0xab85, 0xab86, 0xab87, 0xab88, 0xab89, 0xab8a,
+  0xab8b, 0xab8c, 0xab8d, 0xab8e, 0xab8f, 0xab90, 0xab91, 0xab92,
+  0xab93, 0xab94, 0xab95, 0xab96, 0xab97, 0xab98, 0xab99, 0xab9a,
+  0xab9b, 0xab9c, 0xab9d, 0xab9e, 0xab9f, 0xaba0, 0xac40, 0xac41,
+  0xac42, 0xac43, 0xac44, 0xac45, 0xac46, 0xac47, 0xac48, 0xac49,
+  0xac4a, 0xac4b, 0xac4c, 0xac4d, 0xac4e, 0xac4f, 0xac50, 0xac51,
+  0xac52, 0xac53, 0xac54, 0xac55, 0xac56, 0xac57, 0xac58, 0xac59,
+  0xac5a, 0xac5b, 0xac5c, 0xac5d, 0xac5e, 0xac5f, 0xac60, 0xac61,
+  0xac62, 0xac63, 0xac64, 0xac65, 0xac66, 0xac67, 0xac68, 0xac69,
+  0xac6a, 0xac6b, 0xac6c, 0xac6d, 0xac6e, 0xac6f, 0xac70, 0xac71,
+  0xac72, 0xac73, 0xac74, 0xac75, 0xac76, 0xac77, 0xac78, 0xac79,
+  0xac7a, 0xac7b, 0xac7c, 0xac7d, 0xac7e, 0xac80, 0xac81, 0xac82,
+  0xac83, 0xac84, 0xac85, 0xac86, 0xac87, 0xac88, 0xac89, 0xac8a,
+  0xac8b, 0xac8c, 0xac8d, 0xac8e, 0xac8f, 0xac90, 0xac91, 0xac92,
+  0xac93, 0xac94, 0xac95, 0xac96, 0xac97, 0xac98, 0xac99, 0xac9a,
+  0xac9b, 0xac9c, 0xac9d, 0xac9e, 0xac9f, 0xaca0, 0xad40, 0xad41,
+  0xad42, 0xad43, 0xad44, 0xad45, 0xad46, 0xad47, 0xad48, 0xad49,
+  0xad4a, 0xad4b, 0xad4c, 0xad4d, 0xad4e, 0xad4f, 0xad50, 0xad51,
+  0xad52, 0xad53, 0xad54, 0xad55, 0xad56, 0xad57, 0xad58, 0xad59,
+  0xad5a, 0xad5b, 0xad5c, 0xad5d, 0xad5e, 0xad5f, 0xad60, 0xad61,
+  0xad62, 0xad63, 0xad64, 0xad65, 0xad66, 0xad67, 0xad68, 0xad69,
+  0xad6a, 0xad6b, 0xad6c, 0xad6d, 0xad6e, 0xad6f, 0xad70, 0xad71,
+  0xad72, 0xad73, 0xad74, 0xad75, 0xad76, 0xad77, 0xad78, 0xad79,
+  0xad7a, 0xad7b, 0xad7c, 0xad7d, 0xad7e, 0xad80, 0xad81, 0xad82,
+  0xad83, 0xad84, 0xad85, 0xad86, 0xad87, 0xad88, 0xad89, 0xad8a,
+  0xad8b, 0xad8c, 0xad8d, 0xad8e, 0xad8f, 0xad90, 0xad91, 0xad92,
+  0xad93, 0xad94, 0xad95, 0xad96, 0xad97, 0xad98, 0xad99, 0xad9a,
+  0xad9b, 0xad9c, 0xad9d, 0xad9e, 0xad9f, 0xada0, 0xae40, 0xae41,
+  0xae42, 0xae43, 0xae44, 0xae45, 0xae46, 0xae47, 0xae48, 0xae49,
+  0xae4a, 0xae4b, 0xae4c, 0xae4d, 0xae4e, 0xae4f, 0xae50, 0xae51,
+  0xae52, 0xae53, 0xae54, 0xae55, 0xae56, 0xae57, 0xae58, 0xae59,
+  0xae5a, 0xae5b, 0xae5c, 0xae5d, 0xae5e, 0xae5f, 0xae60, 0xae61,
+  0xae62, 0xae63, 0xae64, 0xae65, 0xae66, 0xae67, 0xae68, 0xae69,
+  0xae6a, 0xae6b, 0xae6c, 0xae6d, 0xae6e, 0xae6f, 0xae70, 0xae71,
+  0xae72, 0xae73, 0xae74, 0xae75, 0xae76, 0xae77, 0xae78, 0xae79,
+  0xae7a, 0xae7b, 0xae7c, 0xae7d, 0xae7e, 0xae80, 0xae81, 0xae82,
+  0xae83, 0xae84, 0xae85, 0xae86, 0xae87, 0xae88, 0xae89, 0xae8a,
+  0xae8b, 0xae8c, 0xae8d, 0xae8e, 0xae8f, 0xae90, 0xae91, 0xae92,
+  0xae93, 0xae94, 0xae95, 0xae96, 0xae97, 0xae98, 0xae99, 0xae9a,
+  0xae9b, 0xae9c, 0xae9d, 0xae9e, 0xae9f, 0xaea0, 0xaf40, 0xaf41,
+  0xaf42, 0xaf43, 0xaf44, 0xaf45, 0xaf46, 0xaf47, 0xaf48, 0xaf49,
+  0xaf4a, 0xaf4b, 0xaf4c, 0xaf4d, 0xaf4e, 0xaf4f, 0xaf50, 0xaf51,
+  0xaf52, 0xaf53, 0xaf54, 0xaf55, 0xaf56, 0xaf57, 0xaf58, 0xaf59,
+  0xaf5a, 0xaf5b, 0xaf5c, 0xaf5d, 0xaf5e, 0xaf5f, 0xaf60, 0xaf61,
+  0xaf62, 0xaf63, 0xaf64, 0xaf65, 0xaf66, 0xaf67, 0xaf68, 0xaf69,
+  0xaf6a, 0xaf6b, 0xaf6c, 0xaf6d, 0xaf6e, 0xaf6f, 0xaf70, 0xaf71,
+  0xaf72, 0xaf73, 0xaf74, 0xaf75, 0xaf76, 0xaf77, 0xaf78, 0xaf79,
+  0xaf7a, 0xaf7b, 0xaf7c, 0xaf7d, 0xaf7e, 0xaf80, 0xaf81, 0xaf82,
+  0xaf83, 0xaf84, 0xaf85, 0xaf86, 0xaf87, 0xaf88, 0xaf89, 0xaf8a,
+  0xaf8b, 0xaf8c, 0xaf8d, 0xaf8e, 0xaf8f, 0xaf90, 0xaf91, 0xaf92,
+  0xaf93, 0xaf94, 0xaf95, 0xaf96, 0xaf97, 0xaf98, 0xaf99, 0xaf9a,
+  0xaf9b, 0xaf9c, 0xaf9d, 0xaf9e, 0xaf9f, 0xafa0, 0xb040, 0xb041,
+  0xb042, 0xb043, 0xb044, 0xb045, 0xb046, 0xb047, 0xb048, 0xb049,
+  0xb04a, 0xb04b, 0xb04c, 0xb04d, 0xb04e, 0xb04f, 0xb050, 0xb051,
+  0xb052, 0xb053, 0xb054, 0xb055, 0xb056, 0xb057, 0xb058, 0xb059,
+  0xb05a, 0xb05b, 0xb05c, 0xb05d, 0xb05e, 0xb05f, 0xb060, 0xb061,
+  0xb062, 0xb063, 0xb064, 0xb065, 0xb066, 0xb067, 0xb068, 0xb069,
+  0xb06a, 0xb06b, 0xb06c, 0xb06d, 0xb06e, 0xb06f, 0xb070, 0xb071,
+  0xb072, 0xb073, 0xb074, 0xb075, 0xb076, 0xb077, 0xb078, 0xb079,
+  0xb07a, 0xb07b, 0xb07c, 0xb07d, 0xb07e, 0xb080, 0xb081, 0xb082,
+  0xb083, 0xb084, 0xb085, 0xb086, 0xb087, 0xb088, 0xb089, 0xb08a,
+  0xb08b, 0xb08c, 0xb08d, 0xb08e, 0xb08f, 0xb090, 0xb091, 0xb092,
+  0xb093, 0xb094, 0xb095, 0xb096, 0xb097, 0xb098, 0xb099, 0xb09a,
+  0xb09b, 0xb09c, 0xb09d, 0xb09e, 0xb09f, 0xb0a0, 0xb140, 0xb141,
+  0xb142, 0xb143, 0xb144, 0xb145, 0xb146, 0xb147, 0xb148, 0xb149,
+  0xb14a, 0xb14b, 0xb14c, 0xb14d, 0xb14e, 0xb14f, 0xb150, 0xb151,
+  0xb152, 0xb153, 0xb154, 0xb155, 0xb156, 0xb157, 0xb158, 0xb159,
+  0xb15a, 0xb15b, 0xb15c, 0xb15d, 0xb15e, 0xb15f, 0xb160, 0xb161,
+  0xb162, 0xb163, 0xb164, 0xb165, 0xb166, 0xb167, 0xb168, 0xb169,
+  0xb16a, 0xb16b, 0xb16c, 0xb16d, 0xb16e, 0xb16f, 0xb170, 0xb171,
+  0xb172, 0xb173, 0xb174, 0xb175, 0xb176, 0xb177, 0xb178, 0xb179,
+  0xb17a, 0xb17b, 0xb17c, 0xb17d, 0xb17e, 0xb180, 0xb181, 0xb182,
+  0xb183, 0xb184, 0xb185, 0xb186, 0xb187, 0xb188, 0xb189, 0xb18a,
+  0xb18b, 0xb18c, 0xb18d, 0xb18e, 0xb18f, 0xb190, 0xb191, 0xb192,
+  0xb193, 0xb194, 0xb195, 0xb196, 0xb197, 0xb198, 0xb199, 0xb19a,
+  0xb19b, 0xb19c, 0xb19d, 0xb19e, 0xb19f, 0xb1a0, 0xb240, 0xb241,
+  0xb242, 0xb243, 0xb244, 0xb245, 0xb246, 0xb247, 0xb248, 0xb249,
+  0xb24a, 0xb24b, 0xb24c, 0xb24d, 0xb24e, 0xb24f, 0xb250, 0xb251,
+  0xb252, 0xb253, 0xb254, 0xb255, 0xb256, 0xb257, 0xb258, 0xb259,
+  0xb25a, 0xb25b, 0xb25c, 0xb25d, 0xb25e, 0xb25f, 0xb260, 0xb261,
+  0xb262, 0xb263, 0xb264, 0xb265, 0xb266, 0xb267, 0xb268, 0xb269,
+  0xb26a, 0xb26b, 0xb26c, 0xb26d, 0xb26e, 0xb26f, 0xb270, 0xb271,
+  0xb272, 0xb273, 0xb274, 0xb275, 0xb276, 0xb277, 0xb278, 0xb279,
+  0xb27a, 0xb27b, 0xb27c, 0xb27d, 0xb27e, 0xb280, 0xb281, 0xb282,
+  0xb283, 0xb284, 0xb285, 0xb286, 0xb287, 0xb288, 0xb289, 0xb28a,
+  0xb28b, 0xb28c, 0xb28d, 0xb28e, 0xb28f, 0xb290, 0xb291, 0xb292,
+  0xb293, 0xb294, 0xb295, 0xb296, 0xb297, 0xb298, 0xb299, 0xb29a,
+  0xb29b, 0xb29c, 0xb29d, 0xb29e, 0xb29f, 0xb2a0, 0xb340, 0xb341,
+  0xb342, 0xb343, 0xb344, 0xb345, 0xb346, 0xb347, 0xb348, 0xb349,
+  0xb34a, 0xb34b, 0xb34c, 0xb34d, 0xb34e, 0xb34f, 0xb350, 0xb351,
+  0xb352, 0xb353, 0xb354, 0xb355, 0xb356, 0xb357, 0xb358, 0xb359,
+  0xb35a, 0xb35b, 0xb35c, 0xb35d, 0xb35e, 0xb35f, 0xb360, 0xb361,
+  0xb362, 0xb363, 0xb364, 0xb365, 0xb366, 0xb367, 0xb368, 0xb369,
+  0xb36a, 0xb36b, 0xb36c, 0xb36d, 0xb36e, 0xb36f, 0xb370, 0xb371,
+  0xb372, 0xb373, 0xb374, 0xb375, 0xb376, 0xb377, 0xb378, 0xb379,
+  0xb37a, 0xb37b, 0xb37c, 0xb37d, 0xb37e, 0xb380, 0xb381, 0xb382,
+  0xb383, 0xb384, 0xb385, 0xb386, 0xb387, 0xb388, 0xb389, 0xb38a,
+  0xb38b, 0xb38c, 0xb38d, 0xb38e, 0xb38f, 0xb390, 0xb391, 0xb392,
+  0xb393, 0xb394, 0xb395, 0xb396, 0xb397, 0xb398, 0xb399, 0xb39a,
+  0xb39b, 0xb39c, 0xb39d, 0xb39e, 0xb39f, 0xb3a0, 0xb440, 0xb441,
+  0xb442, 0xb443, 0xb444, 0xb445, 0xb446, 0xb447, 0xb448, 0xb449,
+  0xb44a, 0xb44b, 0xb44c, 0xb44d, 0xb44e, 0xb44f, 0xb450, 0xb451,
+  0xb452, 0xb453, 0xb454, 0xb455, 0xb456, 0xb457, 0xb458, 0xb459,
+  0xb45a, 0xb45b, 0xb45c, 0xb45d, 0xb45e, 0xb45f, 0xb460, 0xb461,
+  0xb462, 0xb463, 0xb464, 0xb465, 0xb466, 0xb467, 0xb468, 0xb469,
+  0xb46a, 0xb46b, 0xb46c, 0xb46d, 0xb46e, 0xb46f, 0xb470, 0xb471,
+  0xb472, 0xb473, 0xb474, 0xb475, 0xb476, 0xb477, 0xb478, 0xb479,
+  0xb47a, 0xb47b, 0xb47c, 0xb47d, 0xb47e, 0xb480, 0xb481, 0xb482,
+  0xb483, 0xb484, 0xb485, 0xb486, 0xb487, 0xb488, 0xb489, 0xb48a,
+  0xb48b, 0xb48c, 0xb48d, 0xb48e, 0xb48f, 0xb490, 0xb491, 0xb492,
+  0xb493, 0xb494, 0xb495, 0xb496, 0xb497, 0xb498, 0xb499, 0xb49a,
+  0xb49b, 0xb49c, 0xb49d, 0xb49e, 0xb49f, 0xb4a0, 0xb540, 0xb541,
+  0xb542, 0xb543, 0xb544, 0xb545, 0xb546, 0xb547, 0xb548, 0xb549,
+  0xb54a, 0xb54b, 0xb54c, 0xb54d, 0xb54e, 0xb54f, 0xb550, 0xb551,
+  0xb552, 0xb553, 0xb554, 0xb555, 0xb556, 0xb557, 0xb558, 0xb559,
+  0xb55a, 0xb55b, 0xb55c, 0xb55d, 0xb55e, 0xb55f, 0xb560, 0xb561,
+  0xb562, 0xb563, 0xb564, 0xb565, 0xb566, 0xb567, 0xb568, 0xb569,
+  0xb56a, 0xb56b, 0xb56c, 0xb56d, 0xb56e, 0xb56f, 0xb570, 0xb571,
+  0xb572, 0xb573, 0xb574, 0xb575, 0xb576, 0xb577, 0xb578, 0xb579,
+  0xb57a, 0xb57b, 0xb57c, 0xb57d, 0xb57e, 0xb580, 0xb581, 0xb582,
+  0xb583, 0xb584, 0xb585, 0xb586, 0xb587, 0xb588, 0xb589, 0xb58a,
+  0xb58b, 0xb58c, 0xb58d, 0xb58e, 0xb58f, 0xb590, 0xb591, 0xb592,
+  0xb593, 0xb594, 0xb595, 0xb596, 0xb597, 0xb598, 0xb599, 0xb59a,
+  0xb59b, 0xb59c, 0xb59d, 0xb59e, 0xb59f, 0xb5a0, 0xb640, 0xb641,
+  0xb642, 0xb643, 0xb644, 0xb645, 0xb646, 0xb647, 0xb648, 0xb649,
+  0xb64a, 0xb64b, 0xb64c, 0xb64d, 0xb64e, 0xb64f, 0xb650, 0xb651,
+  0xb652, 0xb653, 0xb654, 0xb655, 0xb656, 0xb657, 0xb658, 0xb659,
+  0xb65a, 0xb65b, 0xb65c, 0xb65d, 0xb65e, 0xb65f, 0xb660, 0xb661,
+  0xb662, 0xb663, 0xb664, 0xb665, 0xb666, 0xb667, 0xb668, 0xb669,
+  0xb66a, 0xb66b, 0xb66c, 0xb66d, 0xb66e, 0xb66f, 0xb670, 0xb671,
+  0xb672, 0xb673, 0xb674, 0xb675, 0xb676, 0xb677, 0xb678, 0xb679,
+  0xb67a, 0xb67b, 0xb67c, 0xb67d, 0xb67e, 0xb680, 0xb681, 0xb682,
+  0xb683, 0xb684, 0xb685, 0xb686, 0xb687, 0xb688, 0xb689, 0xb68a,
+  0xb68b, 0xb68c, 0xb68d, 0xb68e, 0xb68f, 0xb690, 0xb691, 0xb692,
+  0xb693, 0xb694, 0xb695, 0xb696, 0xb697, 0xb698, 0xb699, 0xb69a,
+  0xb69b, 0xb69c, 0xb69d, 0xb69e, 0xb69f, 0xb6a0, 0xb740, 0xb741,
+  0xb742, 0xb743, 0xb744, 0xb745, 0xb746, 0xb747, 0xb748, 0xb749,
+  0xb74a, 0xb74b, 0xb74c, 0xb74d, 0xb74e, 0xb74f, 0xb750, 0xb751,
+  0xb752, 0xb753, 0xb754, 0xb755, 0xb756, 0xb757, 0xb758, 0xb759,
+  0xb75a, 0xb75b, 0xb75c, 0xb75d, 0xb75e, 0xb75f, 0xb760, 0xb761,
+  0xb762, 0xb763, 0xb764, 0xb765, 0xb766, 0xb767, 0xb768, 0xb769,
+  0xb76a, 0xb76b, 0xb76c, 0xb76d, 0xb76e, 0xb76f, 0xb770, 0xb771,
+  0xb772, 0xb773, 0xb774, 0xb775, 0xb776, 0xb777, 0xb778, 0xb779,
+  0xb77a, 0xb77b, 0xb77c, 0xb77d, 0xb77e, 0xb780, 0xb781, 0xb782,
+  0xb783, 0xb784, 0xb785, 0xb786, 0xb787, 0xb788, 0xb789, 0xb78a,
+  0xb78b, 0xb78c, 0xb78d, 0xb78e, 0xb78f, 0xb790, 0xb791, 0xb792,
+  0xb793, 0xb794, 0xb795, 0xb796, 0xb797, 0xb798, 0xb799, 0xb79a,
+  0xb79b, 0xb79c, 0xb79d, 0xb79e, 0xb79f, 0xb7a0, 0xb840, 0xb841,
+  0xb842, 0xb843, 0xb844, 0xb845, 0xb846, 0xb847, 0xb848, 0xb849,
+  0xb84a, 0xb84b, 0xb84c, 0xb84d, 0xb84e, 0xb84f, 0xb850, 0xb851,
+  0xb852, 0xb853, 0xb854, 0xb855, 0xb856, 0xb857, 0xb858, 0xb859,
+  0xb85a, 0xb85b, 0xb85c, 0xb85d, 0xb85e, 0xb85f, 0xb860, 0xb861,
+  0xb862, 0xb863, 0xb864, 0xb865, 0xb866, 0xb867, 0xb868, 0xb869,
+  0xb86a, 0xb86b, 0xb86c, 0xb86d, 0xb86e, 0xb86f, 0xb870, 0xb871,
+  0xb872, 0xb873, 0xb874, 0xb875, 0xb876, 0xb877, 0xb878, 0xb879,
+  0xb87a, 0xb87b, 0xb87c, 0xb87d, 0xb87e, 0xb880, 0xb881, 0xb882,
+  0xb883, 0xb884, 0xb885, 0xb886, 0xb887, 0xb888, 0xb889, 0xb88a,
+  0xb88b, 0xb88c, 0xb88d, 0xb88e, 0xb88f, 0xb890, 0xb891, 0xb892,
+  0xb893, 0xb894, 0xb895, 0xb896, 0xb897, 0xb898, 0xb899, 0xb89a,
+  0xb89b, 0xb89c, 0xb89d, 0xb89e, 0xb89f, 0xb8a0, 0xb940, 0xb941,
+  0xb942, 0xb943, 0xb944, 0xb945, 0xb946, 0xb947, 0xb948, 0xb949,
+  0xb94a, 0xb94b, 0xb94c, 0xb94d, 0xb94e, 0xb94f, 0xb950, 0xb951,
+  0xb952, 0xb953, 0xb954, 0xb955, 0xb956, 0xb957, 0xb958, 0xb959,
+  0xb95a, 0xb95b, 0xb95c, 0xb95d, 0xb95e, 0xb95f, 0xb960, 0xb961,
+  0xb962, 0xb963, 0xb964, 0xb965, 0xb966, 0xb967, 0xb968, 0xb969,
+  0xb96a, 0xb96b, 0xb96c, 0xb96d, 0xb96e, 0xb96f, 0xb970, 0xb971,
+  0xb972, 0xb973, 0xb974, 0xb975, 0xb976, 0xb977, 0xb978, 0xb979,
+  0xb97a, 0xb97b, 0xb97c, 0xb97d, 0xb97e, 0xb980, 0xb981, 0xb982,
+  0xb983, 0xb984, 0xb985, 0xb986, 0xb987, 0xb988, 0xb989, 0xb98a,
+  0xb98b, 0xb98c, 0xb98d, 0xb98e, 0xb98f, 0xb990, 0xb991, 0xb992,
+  0xb993, 0xb994, 0xb995, 0xb996, 0xb997, 0xb998, 0xb999, 0xb99a,
+  0xb99b, 0xb99c, 0xb99d, 0xb99e, 0xb99f, 0xb9a0, 0xba40, 0xba41,
+  0xba42, 0xba43, 0xba44, 0xba45, 0xba46, 0xba47, 0xba48, 0xba49,
+  0xba4a, 0xba4b, 0xba4c, 0xba4d, 0xba4e, 0xba4f, 0xba50, 0xba51,
+  0xba52, 0xba53, 0xba54, 0xba55, 0xba56, 0xba57, 0xba58, 0xba59,
+  0xba5a, 0xba5b, 0xba5c, 0xba5d, 0xba5e, 0xba5f, 0xba60, 0xba61,
+  0xba62, 0xba63, 0xba64, 0xba65, 0xba66, 0xba67, 0xba68, 0xba69,
+  0xba6a, 0xba6b, 0xba6c, 0xba6d, 0xba6e, 0xba6f, 0xba70, 0xba71,
+  0xba72, 0xba73, 0xba74, 0xba75, 0xba76, 0xba77, 0xba78, 0xba79,
+  0xba7a, 0xba7b, 0xba7c, 0xba7d, 0xba7e, 0xba80, 0xba81, 0xba82,
+  0xba83, 0xba84, 0xba85, 0xba86, 0xba87, 0xba88, 0xba89, 0xba8a,
+  0xba8b, 0xba8c, 0xba8d, 0xba8e, 0xba8f, 0xba90, 0xba91, 0xba92,
+  0xba93, 0xba94, 0xba95, 0xba96, 0xba97, 0xba98, 0xba99, 0xba9a,
+  0xba9b, 0xba9c, 0xba9d, 0xba9e, 0xba9f, 0xbaa0, 0xbb40, 0xbb41,
+  0xbb42, 0xbb43, 0xbb44, 0xbb45, 0xbb46, 0xbb47, 0xbb48, 0xbb49,
+  0xbb4a, 0xbb4b, 0xbb4c, 0xbb4d, 0xbb4e, 0xbb4f, 0xbb50, 0xbb51,
+  0xbb52, 0xbb53, 0xbb54, 0xbb55, 0xbb56, 0xbb57, 0xbb58, 0xbb59,
+  0xbb5a, 0xbb5b, 0xbb5c, 0xbb5d, 0xbb5e, 0xbb5f, 0xbb60, 0xbb61,
+  0xbb62, 0xbb63, 0xbb64, 0xbb65, 0xbb66, 0xbb67, 0xbb68, 0xbb69,
+  0xbb6a, 0xbb6b, 0xbb6c, 0xbb6d, 0xbb6e, 0xbb6f, 0xbb70, 0xbb71,
+  0xbb72, 0xbb73, 0xbb74, 0xbb75, 0xbb76, 0xbb77, 0xbb78, 0xbb79,
+  0xbb7a, 0xbb7b, 0xbb7c, 0xbb7d, 0xbb7e, 0xbb80, 0xbb81, 0xbb82,
+  0xbb83, 0xbb84, 0xbb85, 0xbb86, 0xbb87, 0xbb88, 0xbb89, 0xbb8a,
+  0xbb8b, 0xbb8c, 0xbb8d, 0xbb8e, 0xbb8f, 0xbb90, 0xbb91, 0xbb92,
+  0xbb93, 0xbb94, 0xbb95, 0xbb96, 0xbb97, 0xbb98, 0xbb99, 0xbb9a,
+  0xbb9b, 0xbb9c, 0xbb9d, 0xbb9e, 0xbb9f, 0xbba0, 0xbc40, 0xbc41,
+  0xbc42, 0xbc43, 0xbc44, 0xbc45, 0xbc46, 0xbc47, 0xbc48, 0xbc49,
+  0xbc4a, 0xbc4b, 0xbc4c, 0xbc4d, 0xbc4e, 0xbc4f, 0xbc50, 0xbc51,
+  0xbc52, 0xbc53, 0xbc54, 0xbc55, 0xbc56, 0xbc57, 0xbc58, 0xbc59,
+  0xbc5a, 0xbc5b, 0xbc5c, 0xbc5d, 0xbc5e, 0xbc5f, 0xbc60, 0xbc61,
+  0xbc62, 0xbc63, 0xbc64, 0xbc65, 0xbc66, 0xbc67, 0xbc68, 0xbc69,
+  0xbc6a, 0xbc6b, 0xbc6c, 0xbc6d, 0xbc6e, 0xbc6f, 0xbc70, 0xbc71,
+  0xbc72, 0xbc73, 0xbc74, 0xbc75, 0xbc76, 0xbc77, 0xbc78, 0xbc79,
+  0xbc7a, 0xbc7b, 0xbc7c, 0xbc7d, 0xbc7e, 0xbc80, 0xbc81, 0xbc82,
+  0xbc83, 0xbc84, 0xbc85, 0xbc86, 0xbc87, 0xbc88, 0xbc89, 0xbc8a,
+  0xbc8b, 0xbc8c, 0xbc8d, 0xbc8e, 0xbc8f, 0xbc90, 0xbc91, 0xbc92,
+  0xbc93, 0xbc94, 0xbc95, 0xbc96, 0xbc97, 0xbc98, 0xbc99, 0xbc9a,
+  0xbc9b, 0xbc9c, 0xbc9d, 0xbc9e, 0xbc9f, 0xbca0, 0xbd40, 0xbd41,
+  0xbd42, 0xbd43, 0xbd44, 0xbd45, 0xbd46, 0xbd47, 0xbd48, 0xbd49,
+  0xbd4a, 0xbd4b, 0xbd4c, 0xbd4d, 0xbd4e, 0xbd4f, 0xbd50, 0xbd51,
+  0xbd52, 0xbd53, 0xbd54, 0xbd55, 0xbd56, 0xbd57, 0xbd58, 0xbd59,
+  0xbd5a, 0xbd5b, 0xbd5c, 0xbd5d, 0xbd5e, 0xbd5f, 0xbd60, 0xbd61,
+  0xbd62, 0xbd63, 0xbd64, 0xbd65, 0xbd66, 0xbd67, 0xbd68, 0xbd69,
+  0xbd6a, 0xbd6b, 0xbd6c, 0xbd6d, 0xbd6e, 0xbd6f, 0xbd70, 0xbd71,
+  0xbd72, 0xbd73, 0xbd74, 0xbd75, 0xbd76, 0xbd77, 0xbd78, 0xbd79,
+  0xbd7a, 0xbd7b, 0xbd7c, 0xbd7d, 0xbd7e, 0xbd80, 0xbd81, 0xbd82,
+  0xbd83, 0xbd84, 0xbd85, 0xbd86, 0xbd87, 0xbd88, 0xbd89, 0xbd8a,
+  0xbd8b, 0xbd8c, 0xbd8d, 0xbd8e, 0xbd8f, 0xbd90, 0xbd91, 0xbd92,
+  0xbd93, 0xbd94, 0xbd95, 0xbd96, 0xbd97, 0xbd98, 0xbd99, 0xbd9a,
+  0xbd9b, 0xbd9c, 0xbd9d, 0xbd9e, 0xbd9f, 0xbda0, 0xbe40, 0xbe41,
+  0xbe42, 0xbe43, 0xbe44, 0xbe45, 0xbe46, 0xbe47, 0xbe48, 0xbe49,
+  0xbe4a, 0xbe4b, 0xbe4c, 0xbe4d, 0xbe4e, 0xbe4f, 0xbe50, 0xbe51,
+  0xbe52, 0xbe53, 0xbe54, 0xbe55, 0xbe56, 0xbe57, 0xbe58, 0xbe59,
+  0xbe5a, 0xbe5b, 0xbe5c, 0xbe5d, 0xbe5e, 0xbe5f, 0xbe60, 0xbe61,
+  0xbe62, 0xbe63, 0xbe64, 0xbe65, 0xbe66, 0xbe67, 0xbe68, 0xbe69,
+  0xbe6a, 0xbe6b, 0xbe6c, 0xbe6d, 0xbe6e, 0xbe6f, 0xbe70, 0xbe71,
+  0xbe72, 0xbe73, 0xbe74, 0xbe75, 0xbe76, 0xbe77, 0xbe78, 0xbe79,
+  0xbe7a, 0xbe7b, 0xbe7c, 0xbe7d, 0xbe7e, 0xbe80, 0xbe81, 0xbe82,
+  0xbe83, 0xbe84, 0xbe85, 0xbe86, 0xbe87, 0xbe88, 0xbe89, 0xbe8a,
+  0xbe8b, 0xbe8c, 0xbe8d, 0xbe8e, 0xbe8f, 0xbe90, 0xbe91, 0xbe92,
+  0xbe93, 0xbe94, 0xbe95, 0xbe96, 0xbe97, 0xbe98, 0xbe99, 0xbe9a,
+  0xbe9b, 0xbe9c, 0xbe9d, 0xbe9e, 0xbe9f, 0xbea0, 0xbf40, 0xbf41,
+  0xbf42, 0xbf43, 0xbf44, 0xbf45, 0xbf46, 0xbf47, 0xbf48, 0xbf49,
+  0xbf4a, 0xbf4b, 0xbf4c, 0xbf4d, 0xbf4e, 0xbf4f, 0xbf50, 0xbf51,
+  0xbf52, 0xbf53, 0xbf54, 0xbf55, 0xbf56, 0xbf57, 0xbf58, 0xbf59,
+  0xbf5a, 0xbf5b, 0xbf5c, 0xbf5d, 0xbf5e, 0xbf5f, 0xbf60, 0xbf61,
+  0xbf62, 0xbf63, 0xbf64, 0xbf65, 0xbf66, 0xbf67, 0xbf68, 0xbf69,
+  0xbf6a, 0xbf6b, 0xbf6c, 0xbf6d, 0xbf6e, 0xbf6f, 0xbf70, 0xbf71,
+  0xbf72, 0xbf73, 0xbf74, 0xbf75, 0xbf76, 0xbf77, 0xbf78, 0xbf79,
+  0xbf7a, 0xbf7b, 0xbf7c, 0xbf7d, 0xbf7e, 0xbf80, 0xbf81, 0xbf82,
+  0xbf83, 0xbf84, 0xbf85, 0xbf86, 0xbf87, 0xbf88, 0xbf89, 0xbf8a,
+  0xbf8b, 0xbf8c, 0xbf8d, 0xbf8e, 0xbf8f, 0xbf90, 0xbf91, 0xbf92,
+  0xbf93, 0xbf94, 0xbf95, 0xbf96, 0xbf97, 0xbf98, 0xbf99, 0xbf9a,
+  0xbf9b, 0xbf9c, 0xbf9d, 0xbf9e, 0xbf9f, 0xbfa0, 0xc040, 0xc041,
+  0xc042, 0xc043, 0xc044, 0xc045, 0xc046, 0xc047, 0xc048, 0xc049,
+  0xc04a, 0xc04b, 0xc04c, 0xc04d, 0xc04e, 0xc04f, 0xc050, 0xc051,
+  0xc052, 0xc053, 0xc054, 0xc055, 0xc056, 0xc057, 0xc058, 0xc059,
+  0xc05a, 0xc05b, 0xc05c, 0xc05d, 0xc05e, 0xc05f, 0xc060, 0xc061,
+  0xc062, 0xc063, 0xc064, 0xc065, 0xc066, 0xc067, 0xc068, 0xc069,
+  0xc06a, 0xc06b, 0xc06c, 0xc06d, 0xc06e, 0xc06f, 0xc070, 0xc071,
+  0xc072, 0xc073, 0xc074, 0xc075, 0xc076, 0xc077, 0xc078, 0xc079,
+  0xc07a, 0xc07b, 0xc07c, 0xc07d, 0xc07e, 0xc080, 0xc081, 0xc082,
+  0xc083, 0xc084, 0xc085, 0xc086, 0xc087, 0xc088, 0xc089, 0xc08a,
+  0xc08b, 0xc08c, 0xc08d, 0xc08e, 0xc08f, 0xc090, 0xc091, 0xc092,
+  0xc093, 0xc094, 0xc095, 0xc096, 0xc097, 0xc098, 0xc099, 0xc09a,
+  0xc09b, 0xc09c, 0xc09d, 0xc09e, 0xc09f, 0xc0a0, 0xc140, 0xc141,
+  0xc142, 0xc143, 0xc144, 0xc145, 0xc146, 0xc147, 0xc148, 0xc149,
+  0xc14a, 0xc14b, 0xc14c, 0xc14d, 0xc14e, 0xc14f, 0xc150, 0xc151,
+  0xc152, 0xc153, 0xc154, 0xc155, 0xc156, 0xc157, 0xc158, 0xc159,
+  0xc15a, 0xc15b, 0xc15c, 0xc15d, 0xc15e, 0xc15f, 0xc160, 0xc161,
+  0xc162, 0xc163, 0xc164, 0xc165, 0xc166, 0xc167, 0xc168, 0xc169,
+  0xc16a, 0xc16b, 0xc16c, 0xc16d, 0xc16e, 0xc16f, 0xc170, 0xc171,
+  0xc172, 0xc173, 0xc174, 0xc175, 0xc176, 0xc177, 0xc178, 0xc179,
+  0xc17a, 0xc17b, 0xc17c, 0xc17d, 0xc17e, 0xc180, 0xc181, 0xc182,
+  0xc183, 0xc184, 0xc185, 0xc186, 0xc187, 0xc188, 0xc189, 0xc18a,
+  0xc18b, 0xc18c, 0xc18d, 0xc18e, 0xc18f, 0xc190, 0xc191, 0xc192,
+  0xc193, 0xc194, 0xc195, 0xc196, 0xc197, 0xc198, 0xc199, 0xc19a,
+  0xc19b, 0xc19c, 0xc19d, 0xc19e, 0xc19f, 0xc1a0, 0xc240, 0xc241,
+  0xc242, 0xc243, 0xc244, 0xc245, 0xc246, 0xc247, 0xc248, 0xc249,
+  0xc24a, 0xc24b, 0xc24c, 0xc24d, 0xc24e, 0xc24f, 0xc250, 0xc251,
+  0xc252, 0xc253, 0xc254, 0xc255, 0xc256, 0xc257, 0xc258, 0xc259,
+  0xc25a, 0xc25b, 0xc25c, 0xc25d, 0xc25e, 0xc25f, 0xc260, 0xc261,
+  0xc262, 0xc263, 0xc264, 0xc265, 0xc266, 0xc267, 0xc268, 0xc269,
+  0xc26a, 0xc26b, 0xc26c, 0xc26d, 0xc26e, 0xc26f, 0xc270, 0xc271,
+  0xc272, 0xc273, 0xc274, 0xc275, 0xc276, 0xc277, 0xc278, 0xc279,
+  0xc27a, 0xc27b, 0xc27c, 0xc27d, 0xc27e, 0xc280, 0xc281, 0xc282,
+  0xc283, 0xc284, 0xc285, 0xc286, 0xc287, 0xc288, 0xc289, 0xc28a,
+  0xc28b, 0xc28c, 0xc28d, 0xc28e, 0xc28f, 0xc290, 0xc291, 0xc292,
+  0xc293, 0xc294, 0xc295, 0xc296, 0xc297, 0xc298, 0xc299, 0xc29a,
+  0xc29b, 0xc29c, 0xc29d, 0xc29e, 0xc29f, 0xc2a0, 0xc340, 0xc341,
+  0xc342, 0xc343, 0xc344, 0xc345, 0xc346, 0xc347, 0xc348, 0xc349,
+  0xc34a, 0xc34b, 0xc34c, 0xc34d, 0xc34e, 0xc34f, 0xc350, 0xc351,
+  0xc352, 0xc353, 0xc354, 0xc355, 0xc356, 0xc357, 0xc358, 0xc359,
+  0xc35a, 0xc35b, 0xc35c, 0xc35d, 0xc35e, 0xc35f, 0xc360, 0xc361,
+  0xc362, 0xc363, 0xc364, 0xc365, 0xc366, 0xc367, 0xc368, 0xc369,
+  0xc36a, 0xc36b, 0xc36c, 0xc36d, 0xc36e, 0xc36f, 0xc370, 0xc371,
+  0xc372, 0xc373, 0xc374, 0xc375, 0xc376, 0xc377, 0xc378, 0xc379,
+  0xc37a, 0xc37b, 0xc37c, 0xc37d, 0xc37e, 0xc380, 0xc381, 0xc382,
+  0xc383, 0xc384, 0xc385, 0xc386, 0xc387, 0xc388, 0xc389, 0xc38a,
+  0xc38b, 0xc38c, 0xc38d, 0xc38e, 0xc38f, 0xc390, 0xc391, 0xc392,
+  0xc393, 0xc394, 0xc395, 0xc396, 0xc397, 0xc398, 0xc399, 0xc39a,
+  0xc39b, 0xc39c, 0xc39d, 0xc39e, 0xc39f, 0xc3a0, 0xc440, 0xc441,
+  0xc442, 0xc443, 0xc444, 0xc445, 0xc446, 0xc447, 0xc448, 0xc449,
+  0xc44a, 0xc44b, 0xc44c, 0xc44d, 0xc44e, 0xc44f, 0xc450, 0xc451,
+  0xc452, 0xc453, 0xc454, 0xc455, 0xc456, 0xc457, 0xc458, 0xc459,
+  0xc45a, 0xc45b, 0xc45c, 0xc45d, 0xc45e, 0xc45f, 0xc460, 0xc461,
+  0xc462, 0xc463, 0xc464, 0xc465, 0xc466, 0xc467, 0xc468, 0xc469,
+  0xc46a, 0xc46b, 0xc46c, 0xc46d, 0xc46e, 0xc46f, 0xc470, 0xc471,
+  0xc472, 0xc473, 0xc474, 0xc475, 0xc476, 0xc477, 0xc478, 0xc479,
+  0xc47a, 0xc47b, 0xc47c, 0xc47d, 0xc47e, 0xc480, 0xc481, 0xc482,
+  0xc483, 0xc484, 0xc485, 0xc486, 0xc487, 0xc488, 0xc489, 0xc48a,
+  0xc48b, 0xc48c, 0xc48d, 0xc48e, 0xc48f, 0xc490, 0xc491, 0xc492,
+  0xc493, 0xc494, 0xc495, 0xc496, 0xc497, 0xc498, 0xc499, 0xc49a,
+  0xc49b, 0xc49c, 0xc49d, 0xc49e, 0xc49f, 0xc4a0, 0xc540, 0xc541,
+  0xc542, 0xc543, 0xc544, 0xc545, 0xc546, 0xc547, 0xc548, 0xc549,
+  0xc54a, 0xc54b, 0xc54c, 0xc54d, 0xc54e, 0xc54f, 0xc550, 0xc551,
+  0xc552, 0xc553, 0xc554, 0xc555, 0xc556, 0xc557, 0xc558, 0xc559,
+  0xc55a, 0xc55b, 0xc55c, 0xc55d, 0xc55e, 0xc55f, 0xc560, 0xc561,
+  0xc562, 0xc563, 0xc564, 0xc565, 0xc566, 0xc567, 0xc568, 0xc569,
+  0xc56a, 0xc56b, 0xc56c, 0xc56d, 0xc56e, 0xc56f, 0xc570, 0xc571,
+  0xc572, 0xc573, 0xc574, 0xc575, 0xc576, 0xc577, 0xc578, 0xc579,
+  0xc57a, 0xc57b, 0xc57c, 0xc57d, 0xc57e, 0xc580, 0xc581, 0xc582,
+  0xc583, 0xc584, 0xc585, 0xc586, 0xc587, 0xc588, 0xc589, 0xc58a,
+  0xc58b, 0xc58c, 0xc58d, 0xc58e, 0xc58f, 0xc590, 0xc591, 0xc592,
+  0xc593, 0xc594, 0xc595, 0xc596, 0xc597, 0xc598, 0xc599, 0xc59a,
+  0xc59b, 0xc59c, 0xc59d, 0xc59e, 0xc59f, 0xc5a0, 0xc640, 0xc641,
+  0xc642, 0xc643, 0xc644, 0xc645, 0xc646, 0xc647, 0xc648, 0xc649,
+  0xc64a, 0xc64b, 0xc64c, 0xc64d, 0xc64e, 0xc64f, 0xc650, 0xc651,
+  0xc652, 0xc653, 0xc654, 0xc655, 0xc656, 0xc657, 0xc658, 0xc659,
+  0xc65a, 0xc65b, 0xc65c, 0xc65d, 0xc65e, 0xc65f, 0xc660, 0xc661,
+  0xc662, 0xc663, 0xc664, 0xc665, 0xc666, 0xc667, 0xc668, 0xc669,
+  0xc66a, 0xc66b, 0xc66c, 0xc66d, 0xc66e, 0xc66f, 0xc670, 0xc671,
+  0xc672, 0xc673, 0xc674, 0xc675, 0xc676, 0xc677, 0xc678, 0xc679,
+  0xc67a, 0xc67b, 0xc67c, 0xc67d, 0xc67e, 0xc680, 0xc681, 0xc682,
+  0xc683, 0xc684, 0xc685, 0xc686, 0xc687, 0xc688, 0xc689, 0xc68a,
+  0xc68b, 0xc68c, 0xc68d, 0xc68e, 0xc68f, 0xc690, 0xc691, 0xc692,
+  0xc693, 0xc694, 0xc695, 0xc696, 0xc697, 0xc698, 0xc699, 0xc69a,
+  0xc69b, 0xc69c, 0xc69d, 0xc69e, 0xc69f, 0xc6a0, 0xc740, 0xc741,
+  0xc742, 0xc743, 0xc744, 0xc745, 0xc746, 0xc747, 0xc748, 0xc749,
+  0xc74a, 0xc74b, 0xc74c, 0xc74d, 0xc74e, 0xc74f, 0xc750, 0xc751,
+  0xc752, 0xc753, 0xc754, 0xc755, 0xc756, 0xc757, 0xc758, 0xc759,
+  0xc75a, 0xc75b, 0xc75c, 0xc75d, 0xc75e, 0xc75f, 0xc760, 0xc761,
+  0xc762, 0xc763, 0xc764, 0xc765, 0xc766, 0xc767, 0xc768, 0xc769,
+  0xc76a, 0xc76b, 0xc76c, 0xc76d, 0xc76e, 0xc76f, 0xc770, 0xc771,
+  0xc772, 0xc773, 0xc774, 0xc775, 0xc776, 0xc777, 0xc778, 0xc779,
+  0xc77a, 0xc77b, 0xc77c, 0xc77d, 0xc77e, 0xc780, 0xc781, 0xc782,
+  0xc783, 0xc784, 0xc785, 0xc786, 0xc787, 0xc788, 0xc789, 0xc78a,
+  0xc78b, 0xc78c, 0xc78d, 0xc78e, 0xc78f, 0xc790, 0xc791, 0xc792,
+  0xc793, 0xc794, 0xc795, 0xc796, 0xc797, 0xc798, 0xc799, 0xc79a,
+  0xc79b, 0xc79c, 0xc79d, 0xc79e, 0xc79f, 0xc7a0, 0xc840, 0xc841,
+  0xc842, 0xc843, 0xc844, 0xc845, 0xc846, 0xc847, 0xc848, 0xc849,
+  0xc84a, 0xc84b, 0xc84c, 0xc84d, 0xc84e, 0xc84f, 0xc850, 0xc851,
+  0xc852, 0xc853, 0xc854, 0xc855, 0xc856, 0xc857, 0xc858, 0xc859,
+  0xc85a, 0xc85b, 0xc85c, 0xc85d, 0xc85e, 0xc85f, 0xc860, 0xc861,
+  0xc862, 0xc863, 0xc864, 0xc865, 0xc866, 0xc867, 0xc868, 0xc869,
+  0xc86a, 0xc86b, 0xc86c, 0xc86d, 0xc86e, 0xc86f, 0xc870, 0xc871,
+  0xc872, 0xc873, 0xc874, 0xc875, 0xc876, 0xc877, 0xc878, 0xc879,
+  0xc87a, 0xc87b, 0xc87c, 0xc87d, 0xc87e, 0xc880, 0xc881, 0xc882,
+  0xc883, 0xc884, 0xc885, 0xc886, 0xc887, 0xc888, 0xc889, 0xc88a,
+  0xc88b, 0xc88c, 0xc88d, 0xc88e, 0xc88f, 0xc890, 0xc891, 0xc892,
+  0xc893, 0xc894, 0xc895, 0xc896, 0xc897, 0xc898, 0xc899, 0xc89a,
+  0xc89b, 0xc89c, 0xc89d, 0xc89e, 0xc89f, 0xc8a0, 0xc940, 0xc941,
+  0xc942, 0xc943, 0xc944, 0xc945, 0xc946, 0xc947, 0xc948, 0xc949,
+  0xc94a, 0xc94b, 0xc94c, 0xc94d, 0xc94e, 0xc94f, 0xc950, 0xc951,
+  0xc952, 0xc953, 0xc954, 0xc955, 0xc956, 0xc957, 0xc958, 0xc959,
+  0xc95a, 0xc95b, 0xc95c, 0xc95d, 0xc95e, 0xc95f, 0xc960, 0xc961,
+  0xc962, 0xc963, 0xc964, 0xc965, 0xc966, 0xc967, 0xc968, 0xc969,
+  0xc96a, 0xc96b, 0xc96c, 0xc96d, 0xc96e, 0xc96f, 0xc970, 0xc971,
+  0xc972, 0xc973, 0xc974, 0xc975, 0xc976, 0xc977, 0xc978, 0xc979,
+  0xc97a, 0xc97b, 0xc97c, 0xc97d, 0xc97e, 0xc980, 0xc981, 0xc982,
+  0xc983, 0xc984, 0xc985, 0xc986, 0xc987, 0xc988, 0xc989, 0xc98a,
+  0xc98b, 0xc98c, 0xc98d, 0xc98e, 0xc98f, 0xc990, 0xc991, 0xc992,
+  0xc993, 0xc994, 0xc995, 0xc996, 0xc997, 0xc998, 0xc999, 0xc99a,
+  0xc99b, 0xc99c, 0xc99d, 0xc99e, 0xc99f, 0xc9a0, 0xca40, 0xca41,
+  0xca42, 0xca43, 0xca44, 0xca45, 0xca46, 0xca47, 0xca48, 0xca49,
+  0xca4a, 0xca4b, 0xca4c, 0xca4d, 0xca4e, 0xca4f, 0xca50, 0xca51,
+  0xca52, 0xca53, 0xca54, 0xca55, 0xca56, 0xca57, 0xca58, 0xca59,
+  0xca5a, 0xca5b, 0xca5c, 0xca5d, 0xca5e, 0xca5f, 0xca60, 0xca61,
+  0xca62, 0xca63, 0xca64, 0xca65, 0xca66, 0xca67, 0xca68, 0xca69,
+  0xca6a, 0xca6b, 0xca6c, 0xca6d, 0xca6e, 0xca6f, 0xca70, 0xca71,
+  0xca72, 0xca73, 0xca74, 0xca75, 0xca76, 0xca77, 0xca78, 0xca79,
+  0xca7a, 0xca7b, 0xca7c, 0xca7d, 0xca7e, 0xca80, 0xca81, 0xca82,
+  0xca83, 0xca84, 0xca85, 0xca86, 0xca87, 0xca88, 0xca89, 0xca8a,
+  0xca8b, 0xca8c, 0xca8d, 0xca8e, 0xca8f, 0xca90, 0xca91, 0xca92,
+  0xca93, 0xca94, 0xca95, 0xca96, 0xca97, 0xca98, 0xca99, 0xca9a,
+  0xca9b, 0xca9c, 0xca9d, 0xca9e, 0xca9f, 0xcaa0, 0xcb40, 0xcb41,
+  0xcb42, 0xcb43, 0xcb44, 0xcb45, 0xcb46, 0xcb47, 0xcb48, 0xcb49,
+  0xcb4a, 0xcb4b, 0xcb4c, 0xcb4d, 0xcb4e, 0xcb4f, 0xcb50, 0xcb51,
+  0xcb52, 0xcb53, 0xcb54, 0xcb55, 0xcb56, 0xcb57, 0xcb58, 0xcb59,
+  0xcb5a, 0xcb5b, 0xcb5c, 0xcb5d, 0xcb5e, 0xcb5f, 0xcb60, 0xcb61,
+  0xcb62, 0xcb63, 0xcb64, 0xcb65, 0xcb66, 0xcb67, 0xcb68, 0xcb69,
+  0xcb6a, 0xcb6b, 0xcb6c, 0xcb6d, 0xcb6e, 0xcb6f, 0xcb70, 0xcb71,
+  0xcb72, 0xcb73, 0xcb74, 0xcb75, 0xcb76, 0xcb77, 0xcb78, 0xcb79,
+  0xcb7a, 0xcb7b, 0xcb7c, 0xcb7d, 0xcb7e, 0xcb80, 0xcb81, 0xcb82,
+  0xcb83, 0xcb84, 0xcb85, 0xcb86, 0xcb87, 0xcb88, 0xcb89, 0xcb8a,
+  0xcb8b, 0xcb8c, 0xcb8d, 0xcb8e, 0xcb8f, 0xcb90, 0xcb91, 0xcb92,
+  0xcb93, 0xcb94, 0xcb95, 0xcb96, 0xcb97, 0xcb98, 0xcb99, 0xcb9a,
+  0xcb9b, 0xcb9c, 0xcb9d, 0xcb9e, 0xcb9f, 0xcba0, 0xcc40, 0xcc41,
+  0xcc42, 0xcc43, 0xcc44, 0xcc45, 0xcc46, 0xcc47, 0xcc48, 0xcc49,
+  0xcc4a, 0xcc4b, 0xcc4c, 0xcc4d, 0xcc4e, 0xcc4f, 0xcc50, 0xcc51,
+  0xcc52, 0xcc53, 0xcc54, 0xcc55, 0xcc56, 0xcc57, 0xcc58, 0xcc59,
+  0xcc5a, 0xcc5b, 0xcc5c, 0xcc5d, 0xcc5e, 0xcc5f, 0xcc60, 0xcc61,
+  0xcc62, 0xcc63, 0xcc64, 0xcc65, 0xcc66, 0xcc67, 0xcc68, 0xcc69,
+  0xcc6a, 0xcc6b, 0xcc6c, 0xcc6d, 0xcc6e, 0xcc6f, 0xcc70, 0xcc71,
+  0xcc72, 0xcc73, 0xcc74, 0xcc75, 0xcc76, 0xcc77, 0xcc78, 0xcc79,
+  0xcc7a, 0xcc7b, 0xcc7c, 0xcc7d, 0xcc7e, 0xcc80, 0xcc81, 0xcc82,
+  0xcc83, 0xcc84, 0xcc85, 0xcc86, 0xcc87, 0xcc88, 0xcc89, 0xcc8a,
+  0xcc8b, 0xcc8c, 0xcc8d, 0xcc8e, 0xcc8f, 0xcc90, 0xcc91, 0xcc92,
+  0xcc93, 0xcc94, 0xcc95, 0xcc96, 0xcc97, 0xcc98, 0xcc99, 0xcc9a,
+  0xcc9b, 0xcc9c, 0xcc9d, 0xcc9e, 0xcc9f, 0xcca0, 0xcd40, 0xcd41,
+  0xcd42, 0xcd43, 0xcd44, 0xcd45, 0xcd46, 0xcd47, 0xcd48, 0xcd49,
+  0xcd4a, 0xcd4b, 0xcd4c, 0xcd4d, 0xcd4e, 0xcd4f, 0xcd50, 0xcd51,
+  0xcd52, 0xcd53, 0xcd54, 0xcd55, 0xcd56, 0xcd57, 0xcd58, 0xcd59,
+  0xcd5a, 0xcd5b, 0xcd5c, 0xcd5d, 0xcd5e, 0xcd5f, 0xcd60, 0xcd61,
+  0xcd62, 0xcd63, 0xcd64, 0xcd65, 0xcd66, 0xcd67, 0xcd68, 0xcd69,
+  0xcd6a, 0xcd6b, 0xcd6c, 0xcd6d, 0xcd6e, 0xcd6f, 0xcd70, 0xcd71,
+  0xcd72, 0xcd73, 0xcd74, 0xcd75, 0xcd76, 0xcd77, 0xcd78, 0xcd79,
+  0xcd7a, 0xcd7b, 0xcd7c, 0xcd7d, 0xcd7e, 0xcd80, 0xcd81, 0xcd82,
+  0xcd83, 0xcd84, 0xcd85, 0xcd86, 0xcd87, 0xcd88, 0xcd89, 0xcd8a,
+  0xcd8b, 0xcd8c, 0xcd8d, 0xcd8e, 0xcd8f, 0xcd90, 0xcd91, 0xcd92,
+  0xcd93, 0xcd94, 0xcd95, 0xcd96, 0xcd97, 0xcd98, 0xcd99, 0xcd9a,
+  0xcd9b, 0xcd9c, 0xcd9d, 0xcd9e, 0xcd9f, 0xcda0, 0xce40, 0xce41,
+  0xce42, 0xce43, 0xce44, 0xce45, 0xce46, 0xce47, 0xce48, 0xce49,
+  0xce4a, 0xce4b, 0xce4c, 0xce4d, 0xce4e, 0xce4f, 0xce50, 0xce51,
+  0xce52, 0xce53, 0xce54, 0xce55, 0xce56, 0xce57, 0xce58, 0xce59,
+  0xce5a, 0xce5b, 0xce5c, 0xce5d, 0xce5e, 0xce5f, 0xce60, 0xce61,
+  0xce62, 0xce63, 0xce64, 0xce65, 0xce66, 0xce67, 0xce68, 0xce69,
+  0xce6a, 0xce6b, 0xce6c, 0xce6d, 0xce6e, 0xce6f, 0xce70, 0xce71,
+  0xce72, 0xce73, 0xce74, 0xce75, 0xce76, 0xce77, 0xce78, 0xce79,
+  0xce7a, 0xce7b, 0xce7c, 0xce7d, 0xce7e, 0xce80, 0xce81, 0xce82,
+  0xce83, 0xce84, 0xce85, 0xce86, 0xce87, 0xce88, 0xce89, 0xce8a,
+  0xce8b, 0xce8c, 0xce8d, 0xce8e, 0xce8f, 0xce90, 0xce91, 0xce92,
+  0xce93, 0xce94, 0xce95, 0xce96, 0xce97, 0xce98, 0xce99, 0xce9a,
+  0xce9b, 0xce9c, 0xce9d, 0xce9e, 0xce9f, 0xcea0, 0xcf40, 0xcf41,
+  0xcf42, 0xcf43, 0xcf44, 0xcf45, 0xcf46, 0xcf47, 0xcf48, 0xcf49,
+  0xcf4a, 0xcf4b, 0xcf4c, 0xcf4d, 0xcf4e, 0xcf4f, 0xcf50, 0xcf51,
+  0xcf52, 0xcf53, 0xcf54, 0xcf55, 0xcf56, 0xcf57, 0xcf58, 0xcf59,
+  0xcf5a, 0xcf5b, 0xcf5c, 0xcf5d, 0xcf5e, 0xcf5f, 0xcf60, 0xcf61,
+  0xcf62, 0xcf63, 0xcf64, 0xcf65, 0xcf66, 0xcf67, 0xcf68, 0xcf69,
+  0xcf6a, 0xcf6b, 0xcf6c, 0xcf6d, 0xcf6e, 0xcf6f, 0xcf70, 0xcf71,
+  0xcf72, 0xcf73, 0xcf74, 0xcf75, 0xcf76, 0xcf77, 0xcf78, 0xcf79,
+  0xcf7a, 0xcf7b, 0xcf7c, 0xcf7d, 0xcf7e, 0xcf80, 0xcf81, 0xcf82,
+  0xcf83, 0xcf84, 0xcf85, 0xcf86, 0xcf87, 0xcf88, 0xcf89, 0xcf8a,
+  0xcf8b, 0xcf8c, 0xcf8d, 0xcf8e, 0xcf8f, 0xcf90, 0xcf91, 0xcf92,
+  0xcf93, 0xcf94, 0xcf95, 0xcf96, 0xcf97, 0xcf98, 0xcf99, 0xcf9a,
+  0xcf9b, 0xcf9c, 0xcf9d, 0xcf9e, 0xcf9f, 0xcfa0, 0xd040, 0xd041,
+  0xd042, 0xd043, 0xd044, 0xd045, 0xd046, 0xd047, 0xd048, 0xd049,
+  0xd04a, 0xd04b, 0xd04c, 0xd04d, 0xd04e, 0xd04f, 0xd050, 0xd051,
+  0xd052, 0xd053, 0xd054, 0xd055, 0xd056, 0xd057, 0xd058, 0xd059,
+  0xd05a, 0xd05b, 0xd05c, 0xd05d, 0xd05e, 0xd05f, 0xd060, 0xd061,
+  0xd062, 0xd063, 0xd064, 0xd065, 0xd066, 0xd067, 0xd068, 0xd069,
+  0xd06a, 0xd06b, 0xd06c, 0xd06d, 0xd06e, 0xd06f, 0xd070, 0xd071,
+  0xd072, 0xd073, 0xd074, 0xd075, 0xd076, 0xd077, 0xd078, 0xd079,
+  0xd07a, 0xd07b, 0xd07c, 0xd07d, 0xd07e, 0xd080, 0xd081, 0xd082,
+  0xd083, 0xd084, 0xd085, 0xd086, 0xd087, 0xd088, 0xd089, 0xd08a,
+  0xd08b, 0xd08c, 0xd08d, 0xd08e, 0xd08f, 0xd090, 0xd091, 0xd092,
+  0xd093, 0xd094, 0xd095, 0xd096, 0xd097, 0xd098, 0xd099, 0xd09a,
+  0xd09b, 0xd09c, 0xd09d, 0xd09e, 0xd09f, 0xd0a0, 0xd140, 0xd141,
+  0xd142, 0xd143, 0xd144, 0xd145, 0xd146, 0xd147, 0xd148, 0xd149,
+  0xd14a, 0xd14b, 0xd14c, 0xd14d, 0xd14e, 0xd14f, 0xd150, 0xd151,
+  0xd152, 0xd153, 0xd154, 0xd155, 0xd156, 0xd157, 0xd158, 0xd159,
+  0xd15a, 0xd15b, 0xd15c, 0xd15d, 0xd15e, 0xd15f, 0xd160, 0xd161,
+  0xd162, 0xd163, 0xd164, 0xd165, 0xd166, 0xd167, 0xd168, 0xd169,
+  0xd16a, 0xd16b, 0xd16c, 0xd16d, 0xd16e, 0xd16f, 0xd170, 0xd171,
+  0xd172, 0xd173, 0xd174, 0xd175, 0xd176, 0xd177, 0xd178, 0xd179,
+  0xd17a, 0xd17b, 0xd17c, 0xd17d, 0xd17e, 0xd180, 0xd181, 0xd182,
+  0xd183, 0xd184, 0xd185, 0xd186, 0xd187, 0xd188, 0xd189, 0xd18a,
+  0xd18b, 0xd18c, 0xd18d, 0xd18e, 0xd18f, 0xd190, 0xd191, 0xd192,
+  0xd193, 0xd194, 0xd195, 0xd196, 0xd197, 0xd198, 0xd199, 0xd19a,
+  0xd19b, 0xd19c, 0xd19d, 0xd19e, 0xd19f, 0xd1a0, 0xd240, 0xd241,
+  0xd242, 0xd243, 0xd244, 0xd245, 0xd246, 0xd247, 0xd248, 0xd249,
+  0xd24a, 0xd24b, 0xd24c, 0xd24d, 0xd24e, 0xd24f, 0xd250, 0xd251,
+  0xd252, 0xd253, 0xd254, 0xd255, 0xd256, 0xd257, 0xd258, 0xd259,
+  0xd25a, 0xd25b, 0xd25c, 0xd25d, 0xd25e, 0xd25f, 0xd260, 0xd261,
+  0xd262, 0xd263, 0xd264, 0xd265, 0xd266, 0xd267, 0xd268, 0xd269,
+  0xd26a, 0xd26b, 0xd26c, 0xd26d, 0xd26e, 0xd26f, 0xd270, 0xd271,
+  0xd272, 0xd273, 0xd274, 0xd275, 0xd276, 0xd277, 0xd278, 0xd279,
+  0xd27a, 0xd27b, 0xd27c, 0xd27d, 0xd27e, 0xd280, 0xd281, 0xd282,
+  0xd283, 0xd284, 0xd285, 0xd286, 0xd287, 0xd288, 0xd289, 0xd28a,
+  0xd28b, 0xd28c, 0xd28d, 0xd28e, 0xd28f, 0xd290, 0xd291, 0xd292,
+  0xd293, 0xd294, 0xd295, 0xd296, 0xd297, 0xd298, 0xd299, 0xd29a,
+  0xd29b, 0xd29c, 0xd29d, 0xd29e, 0xd29f, 0xd2a0, 0xd340, 0xd341,
+  0xd342, 0xd343, 0xd344, 0xd345, 0xd346, 0xd347, 0xd348, 0xd349,
+  0xd34a, 0xd34b, 0xd34c, 0xd34d, 0xd34e, 0xd34f, 0xd350, 0xd351,
+  0xd352, 0xd353, 0xd354, 0xd355, 0xd356, 0xd357, 0xd358, 0xd359,
+  0xd35a, 0xd35b, 0xd35c, 0xd35d, 0xd35e, 0xd35f, 0xd360, 0xd361,
+  0xd362, 0xd363, 0xd364, 0xd365, 0xd366, 0xd367, 0xd368, 0xd369,
+  0xd36a, 0xd36b, 0xd36c, 0xd36d, 0xd36e, 0xd36f, 0xd370, 0xd371,
+  0xd372, 0xd373, 0xd374, 0xd375, 0xd376, 0xd377, 0xd378, 0xd379,
+  0xd37a, 0xd37b, 0xd37c, 0xd37d, 0xd37e, 0xd380, 0xd381, 0xd382,
+  0xd383, 0xd384, 0xd385, 0xd386, 0xd387, 0xd388, 0xd389, 0xd38a,
+  0xd38b, 0xd38c, 0xd38d, 0xd38e, 0xd38f, 0xd390, 0xd391, 0xd392,
+  0xd393, 0xd394, 0xd395, 0xd396, 0xd397, 0xd398, 0xd399, 0xd39a,
+  0xd39b, 0xd39c, 0xd39d, 0xd39e, 0xd39f, 0xd3a0, 0xd440, 0xd441,
+  0xd442, 0xd443, 0xd444, 0xd445, 0xd446, 0xd447, 0xd448, 0xd449,
+  0xd44a, 0xd44b, 0xd44c, 0xd44d, 0xd44e, 0xd44f, 0xd450, 0xd451,
+  0xd452, 0xd453, 0xd454, 0xd455, 0xd456, 0xd457, 0xd458, 0xd459,
+  0xd45a, 0xd45b, 0xd45c, 0xd45d, 0xd45e, 0xd45f, 0xd460, 0xd461,
+  0xd462, 0xd463, 0xd464, 0xd465, 0xd466, 0xd467, 0xd468, 0xd469,
+  0xd46a, 0xd46b, 0xd46c, 0xd46d, 0xd46e, 0xd46f, 0xd470, 0xd471,
+  0xd472, 0xd473, 0xd474, 0xd475, 0xd476, 0xd477, 0xd478, 0xd479,
+  0xd47a, 0xd47b, 0xd47c, 0xd47d, 0xd47e, 0xd480, 0xd481, 0xd482,
+  0xd483, 0xd484, 0xd485, 0xd486, 0xd487, 0xd488, 0xd489, 0xd48a,
+  0xd48b, 0xd48c, 0xd48d, 0xd48e, 0xd48f, 0xd490, 0xd491, 0xd492,
+  0xd493, 0xd494, 0xd495, 0xd496, 0xd497, 0xd498, 0xd499, 0xd49a,
+  0xd49b, 0xd49c, 0xd49d, 0xd49e, 0xd49f, 0xd4a0, 0xd540, 0xd541,
+  0xd542, 0xd543, 0xd544, 0xd545, 0xd546, 0xd547, 0xd548, 0xd549,
+  0xd54a, 0xd54b, 0xd54c, 0xd54d, 0xd54e, 0xd54f, 0xd550, 0xd551,
+  0xd552, 0xd553, 0xd554, 0xd555, 0xd556, 0xd557, 0xd558, 0xd559,
+  0xd55a, 0xd55b, 0xd55c, 0xd55d, 0xd55e, 0xd55f, 0xd560, 0xd561,
+  0xd562, 0xd563, 0xd564, 0xd565, 0xd566, 0xd567, 0xd568, 0xd569,
+  0xd56a, 0xd56b, 0xd56c, 0xd56d, 0xd56e, 0xd56f, 0xd570, 0xd571,
+  0xd572, 0xd573, 0xd574, 0xd575, 0xd576, 0xd577, 0xd578, 0xd579,
+  0xd57a, 0xd57b, 0xd57c, 0xd57d, 0xd57e, 0xd580, 0xd581, 0xd582,
+  0xd583, 0xd584, 0xd585, 0xd586, 0xd587, 0xd588, 0xd589, 0xd58a,
+  0xd58b, 0xd58c, 0xd58d, 0xd58e, 0xd58f, 0xd590, 0xd591, 0xd592,
+  0xd593, 0xd594, 0xd595, 0xd596, 0xd597, 0xd598, 0xd599, 0xd59a,
+  0xd59b, 0xd59c, 0xd59d, 0xd59e, 0xd59f, 0xd5a0, 0xd640, 0xd641,
+  0xd642, 0xd643, 0xd644, 0xd645, 0xd646, 0xd647, 0xd648, 0xd649,
+  0xd64a, 0xd64b, 0xd64c, 0xd64d, 0xd64e, 0xd64f, 0xd650, 0xd651,
+  0xd652, 0xd653, 0xd654, 0xd655, 0xd656, 0xd657, 0xd658, 0xd659,
+  0xd65a, 0xd65b, 0xd65c, 0xd65d, 0xd65e, 0xd65f, 0xd660, 0xd661,
+  0xd662, 0xd663, 0xd664, 0xd665, 0xd666, 0xd667, 0xd668, 0xd669,
+  0xd66a, 0xd66b, 0xd66c, 0xd66d, 0xd66e, 0xd66f, 0xd670, 0xd671,
+  0xd672, 0xd673, 0xd674, 0xd675, 0xd676, 0xd677, 0xd678, 0xd679,
+  0xd67a, 0xd67b, 0xd67c, 0xd67d, 0xd67e, 0xd680, 0xd681, 0xd682,
+  0xd683, 0xd684, 0xd685, 0xd686, 0xd687, 0xd688, 0xd689, 0xd68a,
+  0xd68b, 0xd68c, 0xd68d, 0xd68e, 0xd68f, 0xd690, 0xd691, 0xd692,
+  0xd693, 0xd694, 0xd695, 0xd696, 0xd697, 0xd698, 0xd699, 0xd69a,
+  0xd69b, 0xd69c, 0xd69d, 0xd69e, 0xd69f, 0xd6a0, 0xd740, 0xd741,
+  0xd742, 0xd743, 0xd744, 0xd745, 0xd746, 0xd747, 0xd748, 0xd749,
+  0xd74a, 0xd74b, 0xd74c, 0xd74d, 0xd74e, 0xd74f, 0xd750, 0xd751,
+  0xd752, 0xd753, 0xd754, 0xd755, 0xd756, 0xd757, 0xd758, 0xd759,
+  0xd75a, 0xd75b, 0xd75c, 0xd75d, 0xd75e, 0xd75f, 0xd760, 0xd761,
+  0xd762, 0xd763, 0xd764, 0xd765, 0xd766, 0xd767, 0xd768, 0xd769,
+  0xd76a, 0xd76b, 0xd76c, 0xd76d, 0xd76e, 0xd76f, 0xd770, 0xd771,
+  0xd772, 0xd773, 0xd774, 0xd775, 0xd776, 0xd777, 0xd778, 0xd779,
+  0xd77a, 0xd77b, 0xd77c, 0xd77d, 0xd77e, 0xd780, 0xd781, 0xd782,
+  0xd783, 0xd784, 0xd785, 0xd786, 0xd787, 0xd788, 0xd789, 0xd78a,
+  0xd78b, 0xd78c, 0xd78d, 0xd78e, 0xd78f, 0xd790, 0xd791, 0xd792,
+  0xd793, 0xd794, 0xd795, 0xd796, 0xd797, 0xd798, 0xd799, 0xd79a,
+  0xd79b, 0xd79c, 0xd79d, 0xd79e, 0xd79f, 0xd7a0, 0xd840, 0xd841,
+  0xd842, 0xd843, 0xd844, 0xd845, 0xd846, 0xd847, 0xd848, 0xd849,
+  0xd84a, 0xd84b, 0xd84c, 0xd84d, 0xd84e, 0xd84f, 0xd850, 0xd851,
+  0xd852, 0xd853, 0xd854, 0xd855, 0xd856, 0xd857, 0xd858, 0xd859,
+  0xd85a, 0xd85b, 0xd85c, 0xd85d, 0xd85e, 0xd85f, 0xd860, 0xd861,
+  0xd862, 0xd863, 0xd864, 0xd865, 0xd866, 0xd867, 0xd868, 0xd869,
+  0xd86a, 0xd86b, 0xd86c, 0xd86d, 0xd86e, 0xd86f, 0xd870, 0xd871,
+  0xd872, 0xd873, 0xd874, 0xd875, 0xd876, 0xd877, 0xd878, 0xd879,
+  0xd87a, 0xd87b, 0xd87c, 0xd87d, 0xd87e, 0xd880, 0xd881, 0xd882,
+  0xd883, 0xd884, 0xd885, 0xd886, 0xd887, 0xd888, 0xd889, 0xd88a,
+  0xd88b, 0xd88c, 0xd88d, 0xd88e, 0xd88f, 0xd890, 0xd891, 0xd892,
+  0xd893, 0xd894, 0xd895, 0xd896, 0xd897, 0xd898, 0xd899, 0xd89a,
+  0xd89b, 0xd89c, 0xd89d, 0xd89e, 0xd89f, 0xd8a0, 0xd940, 0xd941,
+  0xd942, 0xd943, 0xd944, 0xd945, 0xd946, 0xd947, 0xd948, 0xd949,
+  0xd94a, 0xd94b, 0xd94c, 0xd94d, 0xd94e, 0xd94f, 0xd950, 0xd951,
+  0xd952, 0xd953, 0xd954, 0xd955, 0xd956, 0xd957, 0xd958, 0xd959,
+  0xd95a, 0xd95b, 0xd95c, 0xd95d, 0xd95e, 0xd95f, 0xd960, 0xd961,
+  0xd962, 0xd963, 0xd964, 0xd965, 0xd966, 0xd967, 0xd968, 0xd969,
+  0xd96a, 0xd96b, 0xd96c, 0xd96d, 0xd96e, 0xd96f, 0xd970, 0xd971,
+  0xd972, 0xd973, 0xd974, 0xd975, 0xd976, 0xd977, 0xd978, 0xd979,
+  0xd97a, 0xd97b, 0xd97c, 0xd97d, 0xd97e, 0xd980, 0xd981, 0xd982,
+  0xd983, 0xd984, 0xd985, 0xd986, 0xd987, 0xd988, 0xd989, 0xd98a,
+  0xd98b, 0xd98c, 0xd98d, 0xd98e, 0xd98f, 0xd990, 0xd991, 0xd992,
+  0xd993, 0xd994, 0xd995, 0xd996, 0xd997, 0xd998, 0xd999, 0xd99a,
+  0xd99b, 0xd99c, 0xd99d, 0xd99e, 0xd99f, 0xd9a0, 0xda40, 0xda41,
+  0xda42, 0xda43, 0xda44, 0xda45, 0xda46, 0xda47, 0xda48, 0xda49,
+  0xda4a, 0xda4b, 0xda4c, 0xda4d, 0xda4e, 0xda4f, 0xda50, 0xda51,
+  0xda52, 0xda53, 0xda54, 0xda55, 0xda56, 0xda57, 0xda58, 0xda59,
+  0xda5a, 0xda5b, 0xda5c, 0xda5d, 0xda5e, 0xda5f, 0xda60, 0xda61,
+  0xda62, 0xda63, 0xda64, 0xda65, 0xda66, 0xda67, 0xda68, 0xda69,
+  0xda6a, 0xda6b, 0xda6c, 0xda6d, 0xda6e, 0xda6f, 0xda70, 0xda71,
+  0xda72, 0xda73, 0xda74, 0xda75, 0xda76, 0xda77, 0xda78, 0xda79,
+  0xda7a, 0xda7b, 0xda7c, 0xda7d, 0xda7e, 0xda80, 0xda81, 0xda82,
+  0xda83, 0xda84, 0xda85, 0xda86, 0xda87, 0xda88, 0xda89, 0xda8a,
+  0xda8b, 0xda8c, 0xda8d, 0xda8e, 0xda8f, 0xda90, 0xda91, 0xda92,
+  0xda93, 0xda94, 0xda95, 0xda96, 0xda97, 0xda98, 0xda99, 0xda9a,
+  0xda9b, 0xda9c, 0xda9d, 0xda9e, 0xda9f, 0xdaa0, 0xdb40, 0xdb41,
+  0xdb42, 0xdb43, 0xdb44, 0xdb45, 0xdb46, 0xdb47, 0xdb48, 0xdb49,
+  0xdb4a, 0xdb4b, 0xdb4c, 0xdb4d, 0xdb4e, 0xdb4f, 0xdb50, 0xdb51,
+  0xdb52, 0xdb53, 0xdb54, 0xdb55, 0xdb56, 0xdb57, 0xdb58, 0xdb59,
+  0xdb5a, 0xdb5b, 0xdb5c, 0xdb5d, 0xdb5e, 0xdb5f, 0xdb60, 0xdb61,
+  0xdb62, 0xdb63, 0xdb64, 0xdb65, 0xdb66, 0xdb67, 0xdb68, 0xdb69,
+  0xdb6a, 0xdb6b, 0xdb6c, 0xdb6d, 0xdb6e, 0xdb6f, 0xdb70, 0xdb71,
+  0xdb72, 0xdb73, 0xdb74, 0xdb75, 0xdb76, 0xdb77, 0xdb78, 0xdb79,
+  0xdb7a, 0xdb7b, 0xdb7c, 0xdb7d, 0xdb7e, 0xdb80, 0xdb81, 0xdb82,
+  0xdb83, 0xdb84, 0xdb85, 0xdb86, 0xdb87, 0xdb88, 0xdb89, 0xdb8a,
+  0xdb8b, 0xdb8c, 0xdb8d, 0xdb8e, 0xdb8f, 0xdb90, 0xdb91, 0xdb92,
+  0xdb93, 0xdb94, 0xdb95, 0xdb96, 0xdb97, 0xdb98, 0xdb99, 0xdb9a,
+  0xdb9b, 0xdb9c, 0xdb9d, 0xdb9e, 0xdb9f, 0xdba0, 0xdc40, 0xdc41,
+  0xdc42, 0xdc43, 0xdc44, 0xdc45, 0xdc46, 0xdc47, 0xdc48, 0xdc49,
+  0xdc4a, 0xdc4b, 0xdc4c, 0xdc4d, 0xdc4e, 0xdc4f, 0xdc50, 0xdc51,
+  0xdc52, 0xdc53, 0xdc54, 0xdc55, 0xdc56, 0xdc57, 0xdc58, 0xdc59,
+  0xdc5a, 0xdc5b, 0xdc5c, 0xdc5d, 0xdc5e, 0xdc5f, 0xdc60, 0xdc61,
+  0xdc62, 0xdc63, 0xdc64, 0xdc65, 0xdc66, 0xdc67, 0xdc68, 0xdc69,
+  0xdc6a, 0xdc6b, 0xdc6c, 0xdc6d, 0xdc6e, 0xdc6f, 0xdc70, 0xdc71,
+  0xdc72, 0xdc73, 0xdc74, 0xdc75, 0xdc76, 0xdc77, 0xdc78, 0xdc79,
+  0xdc7a, 0xdc7b, 0xdc7c, 0xdc7d, 0xdc7e, 0xdc80, 0xdc81, 0xdc82,
+  0xdc83, 0xdc84, 0xdc85, 0xdc86, 0xdc87, 0xdc88, 0xdc89, 0xdc8a,
+  0xdc8b, 0xdc8c, 0xdc8d, 0xdc8e, 0xdc8f, 0xdc90, 0xdc91, 0xdc92,
+  0xdc93, 0xdc94, 0xdc95, 0xdc96, 0xdc97, 0xdc98, 0xdc99, 0xdc9a,
+  0xdc9b, 0xdc9c, 0xdc9d, 0xdc9e, 0xdc9f, 0xdca0, 0xdd40, 0xdd41,
+  0xdd42, 0xdd43, 0xdd44, 0xdd45, 0xdd46, 0xdd47, 0xdd48, 0xdd49,
+  0xdd4a, 0xdd4b, 0xdd4c, 0xdd4d, 0xdd4e, 0xdd4f, 0xdd50, 0xdd51,
+  0xdd52, 0xdd53, 0xdd54, 0xdd55, 0xdd56, 0xdd57, 0xdd58, 0xdd59,
+  0xdd5a, 0xdd5b, 0xdd5c, 0xdd5d, 0xdd5e, 0xdd5f, 0xdd60, 0xdd61,
+  0xdd62, 0xdd63, 0xdd64, 0xdd65, 0xdd66, 0xdd67, 0xdd68, 0xdd69,
+  0xdd6a, 0xdd6b, 0xdd6c, 0xdd6d, 0xdd6e, 0xdd6f, 0xdd70, 0xdd71,
+  0xdd72, 0xdd73, 0xdd74, 0xdd75, 0xdd76, 0xdd77, 0xdd78, 0xdd79,
+  0xdd7a, 0xdd7b, 0xdd7c, 0xdd7d, 0xdd7e, 0xdd80, 0xdd81, 0xdd82,
+  0xdd83, 0xdd84, 0xdd85, 0xdd86, 0xdd87, 0xdd88, 0xdd89, 0xdd8a,
+  0xdd8b, 0xdd8c, 0xdd8d, 0xdd8e, 0xdd8f, 0xdd90, 0xdd91, 0xdd92,
+  0xdd93, 0xdd94, 0xdd95, 0xdd96, 0xdd97, 0xdd98, 0xdd99, 0xdd9a,
+  0xdd9b, 0xdd9c, 0xdd9d, 0xdd9e, 0xdd9f, 0xdda0, 0xde40, 0xde41,
+  0xde42, 0xde43, 0xde44, 0xde45, 0xde46, 0xde47, 0xde48, 0xde49,
+  0xde4a, 0xde4b, 0xde4c, 0xde4d, 0xde4e, 0xde4f, 0xde50, 0xde51,
+  0xde52, 0xde53, 0xde54, 0xde55, 0xde56, 0xde57, 0xde58, 0xde59,
+  0xde5a, 0xde5b, 0xde5c, 0xde5d, 0xde5e, 0xde5f, 0xde60, 0xde61,
+  0xde62, 0xde63, 0xde64, 0xde65, 0xde66, 0xde67, 0xde68, 0xde69,
+  0xde6a, 0xde6b, 0xde6c, 0xde6d, 0xde6e, 0xde6f, 0xde70, 0xde71,
+  0xde72, 0xde73, 0xde74, 0xde75, 0xde76, 0xde77, 0xde78, 0xde79,
+  0xde7a, 0xde7b, 0xde7c, 0xde7d, 0xde7e, 0xde80, 0xde81, 0xde82,
+  0xde83, 0xde84, 0xde85, 0xde86, 0xde87, 0xde88, 0xde89, 0xde8a,
+  0xde8b, 0xde8c, 0xde8d, 0xde8e, 0xde8f, 0xde90, 0xde91, 0xde92,
+  0xde93, 0xde94, 0xde95, 0xde96, 0xde97, 0xde98, 0xde99, 0xde9a,
+  0xde9b, 0xde9c, 0xde9d, 0xde9e, 0xde9f, 0xdea0, 0xdf40, 0xdf41,
+  0xdf42, 0xdf43, 0xdf44, 0xdf45, 0xdf46, 0xdf47, 0xdf48, 0xdf49,
+  0xdf4a, 0xdf4b, 0xdf4c, 0xdf4d, 0xdf4e, 0xdf4f, 0xdf50, 0xdf51,
+  0xdf52, 0xdf53, 0xdf54, 0xdf55, 0xdf56, 0xdf57, 0xdf58, 0xdf59,
+  0xdf5a, 0xdf5b, 0xdf5c, 0xdf5d, 0xdf5e, 0xdf5f, 0xdf60, 0xdf61,
+  0xdf62, 0xdf63, 0xdf64, 0xdf65, 0xdf66, 0xdf67, 0xdf68, 0xdf69,
+  0xdf6a, 0xdf6b, 0xdf6c, 0xdf6d, 0xdf6e, 0xdf6f, 0xdf70, 0xdf71,
+  0xdf72, 0xdf73, 0xdf74, 0xdf75, 0xdf76, 0xdf77, 0xdf78, 0xdf79,
+  0xdf7a, 0xdf7b, 0xdf7c, 0xdf7d, 0xdf7e, 0xdf80, 0xdf81, 0xdf82,
+  0xdf83, 0xdf84, 0xdf85, 0xdf86, 0xdf87, 0xdf88, 0xdf89, 0xdf8a,
+  0xdf8b, 0xdf8c, 0xdf8d, 0xdf8e, 0xdf8f, 0xdf90, 0xdf91, 0xdf92,
+  0xdf93, 0xdf94, 0xdf95, 0xdf96, 0xdf97, 0xdf98, 0xdf99, 0xdf9a,
+  0xdf9b, 0xdf9c, 0xdf9d, 0xdf9e, 0xdf9f, 0xdfa0, 0xe040, 0xe041,
+  0xe042, 0xe043, 0xe044, 0xe045, 0xe046, 0xe047, 0xe048, 0xe049,
+  0xe04a, 0xe04b, 0xe04c, 0xe04d, 0xe04e, 0xe04f, 0xe050, 0xe051,
+  0xe052, 0xe053, 0xe054, 0xe055, 0xe056, 0xe057, 0xe058, 0xe059,
+  0xe05a, 0xe05b, 0xe05c, 0xe05d, 0xe05e, 0xe05f, 0xe060, 0xe061,
+  0xe062, 0xe063, 0xe064, 0xe065, 0xe066, 0xe067, 0xe068, 0xe069,
+  0xe06a, 0xe06b, 0xe06c, 0xe06d, 0xe06e, 0xe06f, 0xe070, 0xe071,
+  0xe072, 0xe073, 0xe074, 0xe075, 0xe076, 0xe077, 0xe078, 0xe079,
+  0xe07a, 0xe07b, 0xe07c, 0xe07d, 0xe07e, 0xe080, 0xe081, 0xe082,
+  0xe083, 0xe084, 0xe085, 0xe086, 0xe087, 0xe088, 0xe089, 0xe08a,
+  0xe08b, 0xe08c, 0xe08d, 0xe08e, 0xe08f, 0xe090, 0xe091, 0xe092,
+  0xe093, 0xe094, 0xe095, 0xe096, 0xe097, 0xe098, 0xe099, 0xe09a,
+  0xe09b, 0xe09c, 0xe09d, 0xe09e, 0xe09f, 0xe0a0, 0xe140, 0xe141,
+  0xe142, 0xe143, 0xe144, 0xe145, 0xe146, 0xe147, 0xe148, 0xe149,
+  0xe14a, 0xe14b, 0xe14c, 0xe14d, 0xe14e, 0xe14f, 0xe150, 0xe151,
+  0xe152, 0xe153, 0xe154, 0xe155, 0xe156, 0xe157, 0xe158, 0xe159,
+  0xe15a, 0xe15b, 0xe15c, 0xe15d, 0xe15e, 0xe15f, 0xe160, 0xe161,
+  0xe162, 0xe163, 0xe164, 0xe165, 0xe166, 0xe167, 0xe168, 0xe169,
+  0xe16a, 0xe16b, 0xe16c, 0xe16d, 0xe16e, 0xe16f, 0xe170, 0xe171,
+  0xe172, 0xe173, 0xe174, 0xe175, 0xe176, 0xe177, 0xe178, 0xe179,
+  0xe17a, 0xe17b, 0xe17c, 0xe17d, 0xe17e, 0xe180, 0xe181, 0xe182,
+  0xe183, 0xe184, 0xe185, 0xe186, 0xe187, 0xe188, 0xe189, 0xe18a,
+  0xe18b, 0xe18c, 0xe18d, 0xe18e, 0xe18f, 0xe190, 0xe191, 0xe192,
+  0xe193, 0xe194, 0xe195, 0xe196, 0xe197, 0xe198, 0xe199, 0xe19a,
+  0xe19b, 0xe19c, 0xe19d, 0xe19e, 0xe19f, 0xe1a0, 0xe240, 0xe241,
+  0xe242, 0xe243, 0xe244, 0xe245, 0xe246, 0xe247, 0xe248, 0xe249,
+  0xe24a, 0xe24b, 0xe24c, 0xe24d, 0xe24e, 0xe24f, 0xe250, 0xe251,
+  0xe252, 0xe253, 0xe254, 0xe255, 0xe256, 0xe257, 0xe258, 0xe259,
+  0xe25a, 0xe25b, 0xe25c, 0xe25d, 0xe25e, 0xe25f, 0xe260, 0xe261,
+  0xe262, 0xe263, 0xe264, 0xe265, 0xe266, 0xe267, 0xe268, 0xe269,
+  0xe26a, 0xe26b, 0xe26c, 0xe26d, 0xe26e, 0xe26f, 0xe270, 0xe271,
+  0xe272, 0xe273, 0xe274, 0xe275, 0xe276, 0xe277, 0xe278, 0xe279,
+  0xe27a, 0xe27b, 0xe27c, 0xe27d, 0xe27e, 0xe280, 0xe281, 0xe282,
+  0xe283, 0xe284, 0xe285, 0xe286, 0xe287, 0xe288, 0xe289, 0xe28a,
+  0xe28b, 0xe28c, 0xe28d, 0xe28e, 0xe28f, 0xe290, 0xe291, 0xe292,
+  0xe293, 0xe294, 0xe295, 0xe296, 0xe297, 0xe298, 0xe299, 0xe29a,
+  0xe29b, 0xe29c, 0xe29d, 0xe29e, 0xe29f, 0xe2a0, 0xe340, 0xe341,
+  0xe342, 0xe343, 0xe344, 0xe345, 0xe346, 0xe347, 0xe348, 0xe349,
+  0xe34a, 0xe34b, 0xe34c, 0xe34d, 0xe34e, 0xe34f, 0xe350, 0xe351,
+  0xe352, 0xe353, 0xe354, 0xe355, 0xe356, 0xe357, 0xe358, 0xe359,
+  0xe35a, 0xe35b, 0xe35c, 0xe35d, 0xe35e, 0xe35f, 0xe360, 0xe361,
+  0xe362, 0xe363, 0xe364, 0xe365, 0xe366, 0xe367, 0xe368, 0xe369,
+  0xe36a, 0xe36b, 0xe36c, 0xe36d, 0xe36e, 0xe36f, 0xe370, 0xe371,
+  0xe372, 0xe373, 0xe374, 0xe375, 0xe376, 0xe377, 0xe378, 0xe379,
+  0xe37a, 0xe37b, 0xe37c, 0xe37d, 0xe37e, 0xe380, 0xe381, 0xe382,
+  0xe383, 0xe384, 0xe385, 0xe386, 0xe387, 0xe388, 0xe389, 0xe38a,
+  0xe38b, 0xe38c, 0xe38d, 0xe38e, 0xe38f, 0xe390, 0xe391, 0xe392,
+  0xe393, 0xe394, 0xe395, 0xe396, 0xe397, 0xe398, 0xe399, 0xe39a,
+  0xe39b, 0xe39c, 0xe39d, 0xe39e, 0xe39f, 0xe3a0, 0xe440, 0xe441,
+  0xe442, 0xe443, 0xe444, 0xe445, 0xe446, 0xe447, 0xe448, 0xe449,
+  0xe44a, 0xe44b, 0xe44c, 0xe44d, 0xe44e, 0xe44f, 0xe450, 0xe451,
+  0xe452, 0xe453, 0xe454, 0xe455, 0xe456, 0xe457, 0xe458, 0xe459,
+  0xe45a, 0xe45b, 0xe45c, 0xe45d, 0xe45e, 0xe45f, 0xe460, 0xe461,
+  0xe462, 0xe463, 0xe464, 0xe465, 0xe466, 0xe467, 0xe468, 0xe469,
+  0xe46a, 0xe46b, 0xe46c, 0xe46d, 0xe46e, 0xe46f, 0xe470, 0xe471,
+  0xe472, 0xe473, 0xe474, 0xe475, 0xe476, 0xe477, 0xe478, 0xe479,
+  0xe47a, 0xe47b, 0xe47c, 0xe47d, 0xe47e, 0xe480, 0xe481, 0xe482,
+  0xe483, 0xe484, 0xe485, 0xe486, 0xe487, 0xe488, 0xe489, 0xe48a,
+  0xe48b, 0xe48c, 0xe48d, 0xe48e, 0xe48f, 0xe490, 0xe491, 0xe492,
+  0xe493, 0xe494, 0xe495, 0xe496, 0xe497, 0xe498, 0xe499, 0xe49a,
+  0xe49b, 0xe49c, 0xe49d, 0xe49e, 0xe49f, 0xe4a0, 0xe540, 0xe541,
+  0xe542, 0xe543, 0xe544, 0xe545, 0xe546, 0xe547, 0xe548, 0xe549,
+  0xe54a, 0xe54b, 0xe54c, 0xe54d, 0xe54e, 0xe54f, 0xe550, 0xe551,
+  0xe552, 0xe553, 0xe554, 0xe555, 0xe556, 0xe557, 0xe558, 0xe559,
+  0xe55a, 0xe55b, 0xe55c, 0xe55d, 0xe55e, 0xe55f, 0xe560, 0xe561,
+  0xe562, 0xe563, 0xe564, 0xe565, 0xe566, 0xe567, 0xe568, 0xe569,
+  0xe56a, 0xe56b, 0xe56c, 0xe56d, 0xe56e, 0xe56f, 0xe570, 0xe571,
+  0xe572, 0xe573, 0xe574, 0xe575, 0xe576, 0xe577, 0xe578, 0xe579,
+  0xe57a, 0xe57b, 0xe57c, 0xe57d, 0xe57e, 0xe580, 0xe581, 0xe582,
+  0xe583, 0xe584, 0xe585, 0xe586, 0xe587, 0xe588, 0xe589, 0xe58a,
+  0xe58b, 0xe58c, 0xe58d, 0xe58e, 0xe58f, 0xe590, 0xe591, 0xe592,
+  0xe593, 0xe594, 0xe595, 0xe596, 0xe597, 0xe598, 0xe599, 0xe59a,
+  0xe59b, 0xe59c, 0xe59d, 0xe59e, 0xe59f, 0xe5a0, 0xe640, 0xe641,
+  0xe642, 0xe643, 0xe644, 0xe645, 0xe646, 0xe647, 0xe648, 0xe649,
+  0xe64a, 0xe64b, 0xe64c, 0xe64d, 0xe64e, 0xe64f, 0xe650, 0xe651,
+  0xe652, 0xe653, 0xe654, 0xe655, 0xe656, 0xe657, 0xe658, 0xe659,
+  0xe65a, 0xe65b, 0xe65c, 0xe65d, 0xe65e, 0xe65f, 0xe660, 0xe661,
+  0xe662, 0xe663, 0xe664, 0xe665, 0xe666, 0xe667, 0xe668, 0xe669,
+  0xe66a, 0xe66b, 0xe66c, 0xe66d, 0xe66e, 0xe66f, 0xe670, 0xe671,
+  0xe672, 0xe673, 0xe674, 0xe675, 0xe676, 0xe677, 0xe678, 0xe679,
+  0xe67a, 0xe67b, 0xe67c, 0xe67d, 0xe67e, 0xe680, 0xe681, 0xe682,
+  0xe683, 0xe684, 0xe685, 0xe686, 0xe687, 0xe688, 0xe689, 0xe68a,
+  0xe68b, 0xe68c, 0xe68d, 0xe68e, 0xe68f, 0xe690, 0xe691, 0xe692,
+  0xe693, 0xe694, 0xe695, 0xe696, 0xe697, 0xe698, 0xe699, 0xe69a,
+  0xe69b, 0xe69c, 0xe69d, 0xe69e, 0xe69f, 0xe6a0, 0xe740, 0xe741,
+  0xe742, 0xe743, 0xe744, 0xe745, 0xe746, 0xe747, 0xe748, 0xe749,
+  0xe74a, 0xe74b, 0xe74c, 0xe74d, 0xe74e, 0xe74f, 0xe750, 0xe751,
+  0xe752, 0xe753, 0xe754, 0xe755, 0xe756, 0xe757, 0xe758, 0xe759,
+  0xe75a, 0xe75b, 0xe75c, 0xe75d, 0xe75e, 0xe75f, 0xe760, 0xe761,
+  0xe762, 0xe763, 0xe764, 0xe765, 0xe766, 0xe767, 0xe768, 0xe769,
+  0xe76a, 0xe76b, 0xe76c, 0xe76d, 0xe76e, 0xe76f, 0xe770, 0xe771,
+  0xe772, 0xe773, 0xe774, 0xe775, 0xe776, 0xe777, 0xe778, 0xe779,
+  0xe77a, 0xe77b, 0xe77c, 0xe77d, 0xe77e, 0xe780, 0xe781, 0xe782,
+  0xe783, 0xe784, 0xe785, 0xe786, 0xe787, 0xe788, 0xe789, 0xe78a,
+  0xe78b, 0xe78c, 0xe78d, 0xe78e, 0xe78f, 0xe790, 0xe791, 0xe792,
+  0xe793, 0xe794, 0xe795, 0xe796, 0xe797, 0xe798, 0xe799, 0xe79a,
+  0xe79b, 0xe79c, 0xe79d, 0xe79e, 0xe79f, 0xe7a0, 0xe840, 0xe841,
+  0xe842, 0xe843, 0xe844, 0xe845, 0xe846, 0xe847, 0xe848, 0xe849,
+  0xe84a, 0xe84b, 0xe84c, 0xe84d, 0xe84e, 0xe84f, 0xe850, 0xe851,
+  0xe852, 0xe853, 0xe854, 0xe855, 0xe856, 0xe857, 0xe858, 0xe859,
+  0xe85a, 0xe85b, 0xe85c, 0xe85d, 0xe85e, 0xe85f, 0xe860, 0xe861,
+  0xe862, 0xe863, 0xe864, 0xe865, 0xe866, 0xe867, 0xe868, 0xe869,
+  0xe86a, 0xe86b, 0xe86c, 0xe86d, 0xe86e, 0xe86f, 0xe870, 0xe871,
+  0xe872, 0xe873, 0xe874, 0xe875, 0xe876, 0xe877, 0xe878, 0xe879,
+  0xe87a, 0xe87b, 0xe87c, 0xe87d, 0xe87e, 0xe880, 0xe881, 0xe882,
+  0xe883, 0xe884, 0xe885, 0xe886, 0xe887, 0xe888, 0xe889, 0xe88a,
+  0xe88b, 0xe88c, 0xe88d, 0xe88e, 0xe88f, 0xe890, 0xe891, 0xe892,
+  0xe893, 0xe894, 0xe895, 0xe896, 0xe897, 0xe898, 0xe899, 0xe89a,
+  0xe89b, 0xe89c, 0xe89d, 0xe89e, 0xe89f, 0xe8a0, 0xe940, 0xe941,
+  0xe942, 0xe943, 0xe944, 0xe945, 0xe946, 0xe947, 0xe948, 0xe949,
+  0xe94a, 0xe94b, 0xe94c, 0xe94d, 0xe94e, 0xe94f, 0xe950, 0xe951,
+  0xe952, 0xe953, 0xe954, 0xe955, 0xe956, 0xe957, 0xe958, 0xe959,
+  0xe95a, 0xe95b, 0xe95c, 0xe95d, 0xe95e, 0xe95f, 0xe960, 0xe961,
+  0xe962, 0xe963, 0xe964, 0xe965, 0xe966, 0xe967, 0xe968, 0xe969,
+  0xe96a, 0xe96b, 0xe96c, 0xe96d, 0xe96e, 0xe96f, 0xe970, 0xe971,
+  0xe972, 0xe973, 0xe974, 0xe975, 0xe976, 0xe977, 0xe978, 0xe979,
+  0xe97a, 0xe97b, 0xe97c, 0xe97d, 0xe97e, 0xe980, 0xe981, 0xe982,
+  0xe983, 0xe984, 0xe985, 0xe986, 0xe987, 0xe988, 0xe989, 0xe98a,
+  0xe98b, 0xe98c, 0xe98d, 0xe98e, 0xe98f, 0xe990, 0xe991, 0xe992,
+  0xe993, 0xe994, 0xe995, 0xe996, 0xe997, 0xe998, 0xe999, 0xe99a,
+  0xe99b, 0xe99c, 0xe99d, 0xe99e, 0xe99f, 0xe9a0, 0xea40, 0xea41,
+  0xea42, 0xea43, 0xea44, 0xea45, 0xea46, 0xea47, 0xea48, 0xea49,
+  0xea4a, 0xea4b, 0xea4c, 0xea4d, 0xea4e, 0xea4f, 0xea50, 0xea51,
+  0xea52, 0xea53, 0xea54, 0xea55, 0xea56, 0xea57, 0xea58, 0xea59,
+  0xea5a, 0xea5b, 0xea5c, 0xea5d, 0xea5e, 0xea5f, 0xea60, 0xea61,
+  0xea62, 0xea63, 0xea64, 0xea65, 0xea66, 0xea67, 0xea68, 0xea69,
+  0xea6a, 0xea6b, 0xea6c, 0xea6d, 0xea6e, 0xea6f, 0xea70, 0xea71,
+  0xea72, 0xea73, 0xea74, 0xea75, 0xea76, 0xea77, 0xea78, 0xea79,
+  0xea7a, 0xea7b, 0xea7c, 0xea7d, 0xea7e, 0xea80, 0xea81, 0xea82,
+  0xea83, 0xea84, 0xea85, 0xea86, 0xea87, 0xea88, 0xea89, 0xea8a,
+  0xea8b, 0xea8c, 0xea8d, 0xea8e, 0xea8f, 0xea90, 0xea91, 0xea92,
+  0xea93, 0xea94, 0xea95, 0xea96, 0xea97, 0xea98, 0xea99, 0xea9a,
+  0xea9b, 0xea9c, 0xea9d, 0xea9e, 0xea9f, 0xeaa0, 0xeb40, 0xeb41,
+  0xeb42, 0xeb43, 0xeb44, 0xeb45, 0xeb46, 0xeb47, 0xeb48, 0xeb49,
+  0xeb4a, 0xeb4b, 0xeb4c, 0xeb4d, 0xeb4e, 0xeb4f, 0xeb50, 0xeb51,
+  0xeb52, 0xeb53, 0xeb54, 0xeb55, 0xeb56, 0xeb57, 0xeb58, 0xeb59,
+  0xeb5a, 0xeb5b, 0xeb5c, 0xeb5d, 0xeb5e, 0xeb5f, 0xeb60, 0xeb61,
+  0xeb62, 0xeb63, 0xeb64, 0xeb65, 0xeb66, 0xeb67, 0xeb68, 0xeb69,
+  0xeb6a, 0xeb6b, 0xeb6c, 0xeb6d, 0xeb6e, 0xeb6f, 0xeb70, 0xeb71,
+  0xeb72, 0xeb73, 0xeb74, 0xeb75, 0xeb76, 0xeb77, 0xeb78, 0xeb79,
+  0xeb7a, 0xeb7b, 0xeb7c, 0xeb7d, 0xeb7e, 0xeb80, 0xeb81, 0xeb82,
+  0xeb83, 0xeb84, 0xeb85, 0xeb86, 0xeb87, 0xeb88, 0xeb89, 0xeb8a,
+  0xeb8b, 0xeb8c, 0xeb8d, 0xeb8e, 0xeb8f, 0xeb90, 0xeb91, 0xeb92,
+  0xeb93, 0xeb94, 0xeb95, 0xeb96, 0xeb97, 0xeb98, 0xeb99, 0xeb9a,
+  0xeb9b, 0xeb9c, 0xeb9d, 0xeb9e, 0xeb9f, 0xeba0, 0xec40, 0xec41,
+  0xec42, 0xec43, 0xec44, 0xec45, 0xec46, 0xec47, 0xec48, 0xec49,
+  0xec4a, 0xec4b, 0xec4c, 0xec4d, 0xec4e, 0xec4f, 0xec50, 0xec51,
+  0xec52, 0xec53, 0xec54, 0xec55, 0xec56, 0xec57, 0xec58, 0xec59,
+  0xec5a, 0xec5b, 0xec5c, 0xec5d, 0xec5e, 0xec5f, 0xec60, 0xec61,
+  0xec62, 0xec63, 0xec64, 0xec65, 0xec66, 0xec67, 0xec68, 0xec69,
+  0xec6a, 0xec6b, 0xec6c, 0xec6d, 0xec6e, 0xec6f, 0xec70, 0xec71,
+  0xec72, 0xec73, 0xec74, 0xec75, 0xec76, 0xec77, 0xec78, 0xec79,
+  0xec7a, 0xec7b, 0xec7c, 0xec7d, 0xec7e, 0xec80, 0xec81, 0xec82,
+  0xec83, 0xec84, 0xec85, 0xec86, 0xec87, 0xec88, 0xec89, 0xec8a,
+  0xec8b, 0xec8c, 0xec8d, 0xec8e, 0xec8f, 0xec90, 0xec91, 0xec92,
+  0xec93, 0xec94, 0xec95, 0xec96, 0xec97, 0xec98, 0xec99, 0xec9a,
+  0xec9b, 0xec9c, 0xec9d, 0xec9e, 0xec9f, 0xeca0, 0xed40, 0xed41,
+  0xed42, 0xed43, 0xed44, 0xed45, 0xed46, 0xed47, 0xed48, 0xed49,
+  0xed4a, 0xed4b, 0xed4c, 0xed4d, 0xed4e, 0xed4f, 0xed50, 0xed51,
+  0xed52, 0xed53, 0xed54, 0xed55, 0xed56, 0xed57, 0xed58, 0xed59,
+  0xed5a, 0xed5b, 0xed5c, 0xed5d, 0xed5e, 0xed5f, 0xed60, 0xed61,
+  0xed62, 0xed63, 0xed64, 0xed65, 0xed66, 0xed67, 0xed68, 0xed69,
+  0xed6a, 0xed6b, 0xed6c, 0xed6d, 0xed6e, 0xed6f, 0xed70, 0xed71,
+  0xed72, 0xed73, 0xed74, 0xed75, 0xed76, 0xed77, 0xed78, 0xed79,
+  0xed7a, 0xed7b, 0xed7c, 0xed7d, 0xed7e, 0xed80, 0xed81, 0xed82,
+  0xed83, 0xed84, 0xed85, 0xed86, 0xed87, 0xed88, 0xed89, 0xed8a,
+  0xed8b, 0xed8c, 0xed8d, 0xed8e, 0xed8f, 0xed90, 0xed91, 0xed92,
+  0xed93, 0xed94, 0xed95, 0xed96, 0xed97, 0xed98, 0xed99, 0xed9a,
+  0xed9b, 0xed9c, 0xed9d, 0xed9e, 0xed9f, 0xeda0, 0xee40, 0xee41,
+  0xee42, 0xee43, 0xee44, 0xee45, 0xee46, 0xee47, 0xee48, 0xee49,
+  0xee4a, 0xee4b, 0xee4c, 0xee4d, 0xee4e, 0xee4f, 0xee50, 0xee51,
+  0xee52, 0xee53, 0xee54, 0xee55, 0xee56, 0xee57, 0xee58, 0xee59,
+  0xee5a, 0xee5b, 0xee5c, 0xee5d, 0xee5e, 0xee5f, 0xee60, 0xee61,
+  0xee62, 0xee63, 0xee64, 0xee65, 0xee66, 0xee67, 0xee68, 0xee69,
+  0xee6a, 0xee6b, 0xee6c, 0xee6d, 0xee6e, 0xee6f, 0xee70, 0xee71,
+  0xee72, 0xee73, 0xee74, 0xee75, 0xee76, 0xee77, 0xee78, 0xee79,
+  0xee7a, 0xee7b, 0xee7c, 0xee7d, 0xee7e, 0xee80, 0xee81, 0xee82,
+  0xee83, 0xee84, 0xee85, 0xee86, 0xee87, 0xee88, 0xee89, 0xee8a,
+  0xee8b, 0xee8c, 0xee8d, 0xee8e, 0xee8f, 0xee90, 0xee91, 0xee92,
+  0xee93, 0xee94, 0xee95, 0xee96, 0xee97, 0xee98, 0xee99, 0xee9a,
+  0xee9b, 0xee9c, 0xee9d, 0xee9e, 0xee9f, 0xeea0, 0xef40, 0xef41,
+  0xef42, 0xef43, 0xef44, 0xef45, 0xef46, 0xef47, 0xef48, 0xef49,
+  0xef4a, 0xef4b, 0xef4c, 0xef4d, 0xef4e, 0xef4f, 0xef50, 0xef51,
+  0xef52, 0xef53, 0xef54, 0xef55, 0xef56, 0xef57, 0xef58, 0xef59,
+  0xef5a, 0xef5b, 0xef5c, 0xef5d, 0xef5e, 0xef5f, 0xef60, 0xef61,
+  0xef62, 0xef63, 0xef64, 0xef65, 0xef66, 0xef67, 0xef68, 0xef69,
+  0xef6a, 0xef6b, 0xef6c, 0xef6d, 0xef6e, 0xef6f, 0xef70, 0xef71,
+  0xef72, 0xef73, 0xef74, 0xef75, 0xef76, 0xef77, 0xef78, 0xef79,
+  0xef7a, 0xef7b, 0xef7c, 0xef7d, 0xef7e, 0xef80, 0xef81, 0xef82,
+  0xef83, 0xef84, 0xef85, 0xef86, 0xef87, 0xef88, 0xef89, 0xef8a,
+  0xef8b, 0xef8c, 0xef8d, 0xef8e, 0xef8f, 0xef90, 0xef91, 0xef92,
+  0xef93, 0xef94, 0xef95, 0xef96, 0xef97, 0xef98, 0xef99, 0xef9a,
+  0xef9b, 0xef9c, 0xef9d, 0xef9e, 0xef9f, 0xefa0, 0xf040, 0xf041,
+  0xf042, 0xf043, 0xf044, 0xf045, 0xf046, 0xf047, 0xf048, 0xf049,
+  0xf04a, 0xf04b, 0xf04c, 0xf04d, 0xf04e, 0xf04f, 0xf050, 0xf051,
+  0xf052, 0xf053, 0xf054, 0xf055, 0xf056, 0xf057, 0xf058, 0xf059,
+  0xf05a, 0xf05b, 0xf05c, 0xf05d, 0xf05e, 0xf05f, 0xf060, 0xf061,
+  0xf062, 0xf063, 0xf064, 0xf065, 0xf066, 0xf067, 0xf068, 0xf069,
+  0xf06a, 0xf06b, 0xf06c, 0xf06d, 0xf06e, 0xf06f, 0xf070, 0xf071,
+  0xf072, 0xf073, 0xf074, 0xf075, 0xf076, 0xf077, 0xf078, 0xf079,
+  0xf07a, 0xf07b, 0xf07c, 0xf07d, 0xf07e, 0xf080, 0xf081, 0xf082,
+  0xf083, 0xf084, 0xf085, 0xf086, 0xf087, 0xf088, 0xf089, 0xf08a,
+  0xf08b, 0xf08c, 0xf08d, 0xf08e, 0xf08f, 0xf090, 0xf091, 0xf092,
+  0xf093, 0xf094, 0xf095, 0xf096, 0xf097, 0xf098, 0xf099, 0xf09a,
+  0xf09b, 0xf09c, 0xf09d, 0xf09e, 0xf09f, 0xf0a0, 0xf140, 0xf141,
+  0xf142, 0xf143, 0xf144, 0xf145, 0xf146, 0xf147, 0xf148, 0xf149,
+  0xf14a, 0xf14b, 0xf14c, 0xf14d, 0xf14e, 0xf14f, 0xf150, 0xf151,
+  0xf152, 0xf153, 0xf154, 0xf155, 0xf156, 0xf157, 0xf158, 0xf159,
+  0xf15a, 0xf15b, 0xf15c, 0xf15d, 0xf15e, 0xf15f, 0xf160, 0xf161,
+  0xf162, 0xf163, 0xf164, 0xf165, 0xf166, 0xf167, 0xf168, 0xf169,
+  0xf16a, 0xf16b, 0xf16c, 0xf16d, 0xf16e, 0xf16f, 0xf170, 0xf171,
+  0xf172, 0xf173, 0xf174, 0xf175, 0xf176, 0xf177, 0xf178, 0xf179,
+  0xf17a, 0xf17b, 0xf17c, 0xf17d, 0xf17e, 0xf180, 0xf181, 0xf182,
+  0xf183, 0xf184, 0xf185, 0xf186, 0xf187, 0xf188, 0xf189, 0xf18a,
+  0xf18b, 0xf18c, 0xf18d, 0xf18e, 0xf18f, 0xf190, 0xf191, 0xf192,
+  0xf193, 0xf194, 0xf195, 0xf196, 0xf197, 0xf198, 0xf199, 0xf19a,
+  0xf19b, 0xf19c, 0xf19d, 0xf19e, 0xf19f, 0xf1a0, 0xf240, 0xf241,
+  0xf242, 0xf243, 0xf244, 0xf245, 0xf246, 0xf247, 0xf248, 0xf249,
+  0xf24a, 0xf24b, 0xf24c, 0xf24d, 0xf24e, 0xf24f, 0xf250, 0xf251,
+  0xf252, 0xf253, 0xf254, 0xf255, 0xf256, 0xf257, 0xf258, 0xf259,
+  0xf25a, 0xf25b, 0xf25c, 0xf25d, 0xf25e, 0xf25f, 0xf260, 0xf261,
+  0xf262, 0xf263, 0xf264, 0xf265, 0xf266, 0xf267, 0xf268, 0xf269,
+  0xf26a, 0xf26b, 0xf26c, 0xf26d, 0xf26e, 0xf26f, 0xf270, 0xf271,
+  0xf272, 0xf273, 0xf274, 0xf275, 0xf276, 0xf277, 0xf278, 0xf279,
+  0xf27a, 0xf27b, 0xf27c, 0xf27d, 0xf27e, 0xf280, 0xf281, 0xf282,
+  0xf283, 0xf284, 0xf285, 0xf286, 0xf287, 0xf288, 0xf289, 0xf28a,
+  0xf28b, 0xf28c, 0xf28d, 0xf28e, 0xf28f, 0xf290, 0xf291, 0xf292,
+  0xf293, 0xf294, 0xf295, 0xf296, 0xf297, 0xf298, 0xf299, 0xf29a,
+  0xf29b, 0xf29c, 0xf29d, 0xf29e, 0xf29f, 0xf2a0, 0xf340, 0xf341,
+  0xf342, 0xf343, 0xf344, 0xf345, 0xf346, 0xf347, 0xf348, 0xf349,
+  0xf34a, 0xf34b, 0xf34c, 0xf34d, 0xf34e, 0xf34f, 0xf350, 0xf351,
+  0xf352, 0xf353, 0xf354, 0xf355, 0xf356, 0xf357, 0xf358, 0xf359,
+  0xf35a, 0xf35b, 0xf35c, 0xf35d, 0xf35e, 0xf35f, 0xf360, 0xf361,
+  0xf362, 0xf363, 0xf364, 0xf365, 0xf366, 0xf367, 0xf368, 0xf369,
+  0xf36a, 0xf36b, 0xf36c, 0xf36d, 0xf36e, 0xf36f, 0xf370, 0xf371,
+  0xf372, 0xf373, 0xf374, 0xf375, 0xf376, 0xf377, 0xf378, 0xf379,
+  0xf37a, 0xf37b, 0xf37c, 0xf37d, 0xf37e, 0xf380, 0xf381, 0xf382,
+  0xf383, 0xf384, 0xf385, 0xf386, 0xf387, 0xf388, 0xf389, 0xf38a,
+  0xf38b, 0xf38c, 0xf38d, 0xf38e, 0xf38f, 0xf390, 0xf391, 0xf392,
+  0xf393, 0xf394, 0xf395, 0xf396, 0xf397, 0xf398, 0xf399, 0xf39a,
+  0xf39b, 0xf39c, 0xf39d, 0xf39e, 0xf39f, 0xf3a0, 0xf440, 0xf441,
+  0xf442, 0xf443, 0xf444, 0xf445, 0xf446, 0xf447, 0xf448, 0xf449,
+  0xf44a, 0xf44b, 0xf44c, 0xf44d, 0xf44e, 0xf44f, 0xf450, 0xf451,
+  0xf452, 0xf453, 0xf454, 0xf455, 0xf456, 0xf457, 0xf458, 0xf459,
+  0xf45a, 0xf45b, 0xf45c, 0xf45d, 0xf45e, 0xf45f, 0xf460, 0xf461,
+  0xf462, 0xf463, 0xf464, 0xf465, 0xf466, 0xf467, 0xf468, 0xf469,
+  0xf46a, 0xf46b, 0xf46c, 0xf46d, 0xf46e, 0xf46f, 0xf470, 0xf471,
+  0xf472, 0xf473, 0xf474, 0xf475, 0xf476, 0xf477, 0xf478, 0xf479,
+  0xf47a, 0xf47b, 0xf47c, 0xf47d, 0xf47e, 0xf480, 0xf481, 0xf482,
+  0xf483, 0xf484, 0xf485, 0xf486, 0xf487, 0xf488, 0xf489, 0xf48a,
+  0xf48b, 0xf48c, 0xf48d, 0xf48e, 0xf48f, 0xf490, 0xf491, 0xf492,
+  0xf493, 0xf494, 0xf495, 0xf496, 0xf497, 0xf498, 0xf499, 0xf49a,
+  0xf49b, 0xf49c, 0xf49d, 0xf49e, 0xf49f, 0xf4a0, 0xf540, 0xf541,
+  0xf542, 0xf543, 0xf544, 0xf545, 0xf546, 0xf547, 0xf548, 0xf549,
+  0xf54a, 0xf54b, 0xf54c, 0xf54d, 0xf54e, 0xf54f, 0xf550, 0xf551,
+  0xf552, 0xf553, 0xf554, 0xf555, 0xf556, 0xf557, 0xf558, 0xf559,
+  0xf55a, 0xf55b, 0xf55c, 0xf55d, 0xf55e, 0xf55f, 0xf560, 0xf561,
+  0xf562, 0xf563, 0xf564, 0xf565, 0xf566, 0xf567, 0xf568, 0xf569,
+  0xf56a, 0xf56b, 0xf56c, 0xf56d, 0xf56e, 0xf56f, 0xf570, 0xf571,
+  0xf572, 0xf573, 0xf574, 0xf575, 0xf576, 0xf577, 0xf578, 0xf579,
+  0xf57a, 0xf57b, 0xf57c, 0xf57d, 0xf57e, 0xf580, 0xf581, 0xf582,
+  0xf583, 0xf584, 0xf585, 0xf586, 0xf587, 0xf588, 0xf589, 0xf58a,
+  0xf58b, 0xf58c, 0xf58d, 0xf58e, 0xf58f, 0xf590, 0xf591, 0xf592,
+  0xf593, 0xf594, 0xf595, 0xf596, 0xf597, 0xf598, 0xf599, 0xf59a,
+  0xf59b, 0xf59c, 0xf59d, 0xf59e, 0xf59f, 0xf5a0, 0xf640, 0xf641,
+  0xf642, 0xf643, 0xf644, 0xf645, 0xf646, 0xf647, 0xf648, 0xf649,
+  0xf64a, 0xf64b, 0xf64c, 0xf64d, 0xf64e, 0xf64f, 0xf650, 0xf651,
+  0xf652, 0xf653, 0xf654, 0xf655, 0xf656, 0xf657, 0xf658, 0xf659,
+  0xf65a, 0xf65b, 0xf65c, 0xf65d, 0xf65e, 0xf65f, 0xf660, 0xf661,
+  0xf662, 0xf663, 0xf664, 0xf665, 0xf666, 0xf667, 0xf668, 0xf669,
+  0xf66a, 0xf66b, 0xf66c, 0xf66d, 0xf66e, 0xf66f, 0xf670, 0xf671,
+  0xf672, 0xf673, 0xf674, 0xf675, 0xf676, 0xf677, 0xf678, 0xf679,
+  0xf67a, 0xf67b, 0xf67c, 0xf67d, 0xf67e, 0xf680, 0xf681, 0xf682,
+  0xf683, 0xf684, 0xf685, 0xf686, 0xf687, 0xf688, 0xf689, 0xf68a,
+  0xf68b, 0xf68c, 0xf68d, 0xf68e, 0xf68f, 0xf690, 0xf691, 0xf692,
+  0xf693, 0xf694, 0xf695, 0xf696, 0xf697, 0xf698, 0xf699, 0xf69a,
+  0xf69b, 0xf69c, 0xf69d, 0xf69e, 0xf69f, 0xf6a0, 0xf740, 0xf741,
+  0xf742, 0xf743, 0xf744, 0xf745, 0xf746, 0xf747, 0xf748, 0xf749,
+  0xf74a, 0xf74b, 0xf74c, 0xf74d, 0xf74e, 0xf74f, 0xf750, 0xf751,
+  0xf752, 0xf753, 0xf754, 0xf755, 0xf756, 0xf757, 0xf758, 0xf759,
+  0xf75a, 0xf75b, 0xf75c, 0xf75d, 0xf75e, 0xf75f, 0xf760, 0xf761,
+  0xf762, 0xf763, 0xf764, 0xf765, 0xf766, 0xf767, 0xf768, 0xf769,
+  0xf76a, 0xf76b, 0xf76c, 0xf76d, 0xf76e, 0xf76f, 0xf770, 0xf771,
+  0xf772, 0xf773, 0xf774, 0xf775, 0xf776, 0xf777, 0xf778, 0xf779,
+  0xf77a, 0xf77b, 0xf77c, 0xf77d, 0xf77e, 0xf780, 0xf781, 0xf782,
+  0xf783, 0xf784, 0xf785, 0xf786, 0xf787, 0xf788, 0xf789, 0xf78a,
+  0xf78b, 0xf78c, 0xf78d, 0xf78e, 0xf78f, 0xf790, 0xf791, 0xf792,
+  0xf793, 0xf794, 0xf795, 0xf796, 0xf797, 0xf798, 0xf799, 0xf79a,
+  0xf79b, 0xf79c, 0xf79d, 0xf79e, 0xf79f, 0xf7a0, 0xf840, 0xf841,
+  0xf842, 0xf843, 0xf844, 0xf845, 0xf846, 0xf847, 0xf848, 0xf849,
+  0xf84a, 0xf84b, 0xf84c, 0xf84d, 0xf84e, 0xf84f, 0xf850, 0xf851,
+  0xf852, 0xf853, 0xf854, 0xf855, 0xf856, 0xf857, 0xf858, 0xf859,
+  0xf85a, 0xf85b, 0xf85c, 0xf85d, 0xf85e, 0xf85f, 0xf860, 0xf861,
+  0xf862, 0xf863, 0xf864, 0xf865, 0xf866, 0xf867, 0xf868, 0xf869,
+  0xf86a, 0xf86b, 0xf86c, 0xf86d, 0xf86e, 0xf86f, 0xf870, 0xf871,
+  0xf872, 0xf873, 0xf874, 0xf875, 0xf876, 0xf877, 0xf878, 0xf879,
+  0xf87a, 0xf87b, 0xf87c, 0xf87d, 0xf87e, 0xf880, 0xf881, 0xf882,
+  0xf883, 0xf884, 0xf885, 0xf886, 0xf887, 0xf888, 0xf889, 0xf88a,
+  0xf88b, 0xf88c, 0xf88d, 0xf88e, 0xf88f, 0xf890, 0xf891, 0xf892,
+  0xf893, 0xf894, 0xf895, 0xf896, 0xf897, 0xf898, 0xf899, 0xf89a,
+  0xf89b, 0xf89c, 0xf89d, 0xf89e, 0xf89f, 0xf8a0, 0xf940, 0xf941,
+  0xf942, 0xf943, 0xf944, 0xf945, 0xf946, 0xf947, 0xf948, 0xf949,
+  0xf94a, 0xf94b, 0xf94c, 0xf94d, 0xf94e, 0xf94f, 0xf950, 0xf951,
+  0xf952, 0xf953, 0xf954, 0xf955, 0xf956, 0xf957, 0xf958, 0xf959,
+  0xf95a, 0xf95b, 0xf95c, 0xf95d, 0xf95e, 0xf95f, 0xf960, 0xf961,
+  0xf962, 0xf963, 0xf964, 0xf965, 0xf966, 0xf967, 0xf968, 0xf969,
+  0xf96a, 0xf96b, 0xf96c, 0xf96d, 0xf96e, 0xf96f, 0xf970, 0xf971,
+  0xf972, 0xf973, 0xf974, 0xf975, 0xf976, 0xf977, 0xf978, 0xf979,
+  0xf97a, 0xf97b, 0xf97c, 0xf97d, 0xf97e, 0xf980, 0xf981, 0xf982,
+  0xf983, 0xf984, 0xf985, 0xf986, 0xf987, 0xf988, 0xf989, 0xf98a,
+  0xf98b, 0xf98c, 0xf98d, 0xf98e, 0xf98f, 0xf990, 0xf991, 0xf992,
+  0xf993, 0xf994, 0xf995, 0xf996, 0xf997, 0xf998, 0xf999, 0xf99a,
+  0xf99b, 0xf99c, 0xf99d, 0xf99e, 0xf99f, 0xf9a0, 0xfa40, 0xfa41,
+  0xfa42, 0xfa43, 0xfa44, 0xfa45, 0xfa46, 0xfa47, 0xfa48, 0xfa49,
+  0xfa4a, 0xfa4b, 0xfa4c, 0xfa4d, 0xfa4e, 0xfa4f, 0xfa50, 0xfa51,
+  0xfa52, 0xfa53, 0xfa54, 0xfa55, 0xfa56, 0xfa57, 0xfa58, 0xfa59,
+  0xfa5a, 0xfa5b, 0xfa5c, 0xfa5d, 0xfa5e, 0xfa5f, 0xfa60, 0xfa61,
+  0xfa62, 0xfa63, 0xfa64, 0xfa65, 0xfa66, 0xfa67, 0xfa68, 0xfa69,
+  0xfa6a, 0xfa6b, 0xfa6c, 0xfa6d, 0xfa6e, 0xfa6f, 0xfa70, 0xfa71,
+  0xfa72, 0xfa73, 0xfa74, 0xfa75, 0xfa76, 0xfa77, 0xfa78, 0xfa79,
+  0xfa7a, 0xfa7b, 0xfa7c, 0xfa7d, 0xfa7e, 0xfa80, 0xfa81, 0xfa82,
+  0xfa83, 0xfa84, 0xfa85, 0xfa86, 0xfa87, 0xfa88, 0xfa89, 0xfa8a,
+  0xfa8b, 0xfa8c, 0xfa8d, 0xfa8e, 0xfa8f, 0xfa90, 0xfa91, 0xfa92,
+  0xfa93, 0xfa94, 0xfa95, 0xfa96, 0xfa97, 0xfa98, 0xfa99, 0xfa9a,
+  0xfa9b, 0xfa9c, 0xfa9d, 0xfa9e, 0xfa9f, 0xfaa0, 0xfb40, 0xfb41,
+  0xfb42, 0xfb43, 0xfb44, 0xfb45, 0xfb46, 0xfb47, 0xfb48, 0xfb49,
+  0xfb4a, 0xfb4b, 0xfb4c, 0xfb4d, 0xfb4e, 0xfb4f, 0xfb50, 0xfb51,
+  0xfb52, 0xfb53, 0xfb54, 0xfb55, 0xfb56, 0xfb57, 0xfb58, 0xfb59,
+  0xfb5a, 0xfb5b, 0xfb5c, 0xfb5d, 0xfb5e, 0xfb5f, 0xfb60, 0xfb61,
+  0xfb62, 0xfb63, 0xfb64, 0xfb65, 0xfb66, 0xfb67, 0xfb68, 0xfb69,
+  0xfb6a, 0xfb6b, 0xfb6c, 0xfb6d, 0xfb6e, 0xfb6f, 0xfb70, 0xfb71,
+  0xfb72, 0xfb73, 0xfb74, 0xfb75, 0xfb76, 0xfb77, 0xfb78, 0xfb79,
+  0xfb7a, 0xfb7b, 0xfb7c, 0xfb7d, 0xfb7e, 0xfb80, 0xfb81, 0xfb82,
+  0xfb83, 0xfb84, 0xfb85, 0xfb86, 0xfb87, 0xfb88, 0xfb89, 0xfb8a,
+  0xfb8b, 0xfb8c, 0xfb8d, 0xfb8e, 0xfb8f, 0xfb90, 0xfb91, 0xfb92,
+  0xfb93, 0xfb94, 0xfb95, 0xfb96, 0xfb97, 0xfb98, 0xfb99, 0xfb9a,
+  0xfb9b, 0xfb9c, 0xfb9d, 0xfb9e, 0xfb9f, 0xfba0, 0xfc40, 0xfc41,
+  0xfc42, 0xfc43, 0xfc44, 0xfc45, 0xfc46, 0xfc47, 0xfc48, 0xfc49,
+  0xfc4a, 0xfc4b, 0xfc4c, 0xfc4d, 0xfc4e, 0xfc4f, 0xfc50, 0xfc51,
+  0xfc52, 0xfc53, 0xfc54, 0xfc55, 0xfc56, 0xfc57, 0xfc58, 0xfc59,
+  0xfc5a, 0xfc5b, 0xfc5c, 0xfc5d, 0xfc5e, 0xfc5f, 0xfc60, 0xfc61,
+  0xfc62, 0xfc63, 0xfc64, 0xfc65, 0xfc66, 0xfc67, 0xfc68, 0xfc69,
+  0xfc6a, 0xfc6b, 0xfc6c, 0xfc6d, 0xfc6e, 0xfc6f, 0xfc70, 0xfc71,
+  0xfc72, 0xfc73, 0xfc74, 0xfc75, 0xfc76, 0xfc77, 0xfc78, 0xfc79,
+  0xfc7a, 0xfc7b, 0xfc7c, 0xfc7d, 0xfc7e, 0xfc80, 0xfc81, 0xfc82,
+  0xfc83, 0xfc84, 0xfc85, 0xfc86, 0xfc87, 0xfc88, 0xfc89, 0xfc8a,
+  0xfc8b, 0xfc8c, 0xfc8d, 0xfc8e, 0xfc8f, 0xfc90, 0xfc91, 0xfc92,
+  0xfc93, 0xfc94, 0xfc95, 0xfc96, 0xfc97, 0xfc98, 0xfc99, 0xfc9a,
+  0xfc9b, 0xfc9c, 0xfc9d, 0xfc9e, 0xfc9f, 0xfca0, 0xfd40, 0xfd41,
+  0xfd42, 0xfd43, 0xfd44, 0xfd45, 0xfd46, 0xfd47, 0xfd48, 0xfd49,
+  0xfd4a, 0xfd4b, 0xfd4c, 0xfd4d, 0xfd4e, 0xfd4f, 0xfd50, 0xfd51,
+  0xfd52, 0xfd53, 0xfd54, 0xfd55, 0xfd56, 0xfd57, 0xfd58, 0xfd59,
+  0xfd5a, 0xfd5b, 0xfd5c, 0xfd5d, 0xfd5e, 0xfd5f, 0xfd60, 0xfd61,
+  0xfd62, 0xfd63, 0xfd64, 0xfd65, 0xfd66, 0xfd67, 0xfd68, 0xfd69,
+  0xfd6a, 0xfd6b, 0xfd6c, 0xfd6d, 0xfd6e, 0xfd6f, 0xfd70, 0xfd71,
+  0xfd72, 0xfd73, 0xfd74, 0xfd75, 0xfd76, 0xfd77, 0xfd78, 0xfd79,
+  0xfd7a, 0xfd7b, 0xfd7c, 0xfd7d, 0xfd7e, 0xfd80, 0xfd81, 0xfd82,
+  0xfd83, 0xfd84, 0xfd85, 0xfd86, 0xfd87, 0xfd88, 0xfd89, 0xfd8a,
+  0xfd8b, 0xfd8c, 0xfd8d, 0xfd8e, 0xfd8f, 0xfd90, 0xfd91, 0xfd92,
+  0xfd93, 0xfd94, 0xfd95, 0xfd96, 0xfd97, 0xfd98, 0xfd99, 0xfd9a,
+  0xfd9b, 0xfd9c, 0xfd9d, 0xfd9e, 0xfd9f, 0xfda0, 0xfe40, 0xfe41,
+  0xfe42, 0xfe43, 0xfe44, 0xfe45, 0xfe46, 0xfe47, 0xfe48, 0xfe49,
+  0xfe4a, 0xfe4b, 0xfe4c, 0xfe4d, 0xfe4e, 0xfe4f, 0xa955, 0xa968,
+  0xa969, 0xa96a, 0xa96b, 0xa96c, 0xa96d, 0xa96e, 0xa96f, 0xa970,
+  0xa971, 0xa972, 0xa973, 0xa974, 0xa975, 0xa976, 0xa977, 0xa978,
+  0xa979, 0xa97a, 0xa97b, 0xa97c, 0xa97d, 0xa97e, 0xa980, 0xa981,
+  0xa982, 0xa983, 0xa984, 0xa985, 0xa986, 0xa987, 0xa988, 0xa956,
+  0xa957,
+};
+
+static const Summary16 gbkext_inv_uni2indx_page02[14] = {
+  /* 0x0200 */
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0c00 }, {    2, 0x0200 },
+};
+static const Summary16 gbkext_inv_uni2indx_page20[44] = {
+  /* 0x2000 */
+  {    3, 0x0000 }, {    3, 0x0029 }, {    6, 0x0020 }, {    7, 0x0020 },
+  {    8, 0x0000 }, {    8, 0x0000 }, {    8, 0x0000 }, {    8, 0x0000 },
+  {    8, 0x0000 }, {    8, 0x0000 }, {    8, 0x0000 }, {    8, 0x0000 },
+  {    8, 0x0000 }, {    8, 0x0000 }, {    8, 0x0000 }, {    8, 0x0000 },
+  /* 0x2100 */
+  {    8, 0x0220 }, {   10, 0x0000 }, {   10, 0x0002 }, {   11, 0x0000 },
+  {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 },
+  {   11, 0x0000 }, {   11, 0x03c0 }, {   15, 0x0000 }, {   15, 0x0000 },
+  {   15, 0x0000 }, {   15, 0x0000 }, {   15, 0x0000 }, {   15, 0x0000 },
+  /* 0x2200 */
+  {   15, 0x0000 }, {   15, 0x8020 }, {   17, 0x0008 }, {   18, 0x0000 },
+  {   18, 0x0000 }, {   18, 0x0004 }, {   19, 0x00c0 }, {   21, 0x0000 },
+  {   21, 0x0000 }, {   21, 0x0020 }, {   22, 0x0000 }, {   22, 0x8000 },
+};
+static const Summary16 gbkext_inv_uni2indx_page25[17] = {
+  /* 0x2500 */
+  {   23, 0x0000 }, {   23, 0x0000 }, {   23, 0x0000 }, {   23, 0x0000 },
+  {   23, 0x0000 }, {   23, 0xffff }, {   39, 0xffff }, {   55, 0x000f },
+  {   59, 0xfffe }, {   74, 0x0038 }, {   77, 0x0000 }, {   77, 0x3000 },
+  {   79, 0x0000 }, {   79, 0x0000 }, {   79, 0x003c }, {   83, 0x0000 },
+  /* 0x2600 */
+  {   83, 0x0200 },
+};
+static const Summary16 gbkext_inv_uni2indx_page30[16] = {
+  /* 0x3000 */
+  {   84, 0x00c0 }, {   86, 0x6004 }, {   89, 0x03fe }, {   98, 0x0000 },
+  {   98, 0x0000 }, {   98, 0x0000 }, {   98, 0x0000 }, {   98, 0x0000 },
+  {   98, 0x0000 }, {   98, 0x7800 }, {  102, 0x0000 }, {  102, 0x0000 },
+  {  102, 0x0000 }, {  102, 0x0000 }, {  102, 0x0000 }, {  102, 0x7000 },
+};
+static const Summary16 gbkext_inv_uni2indx_page32[30] = {
+  /* 0x3200 */
+  {  105, 0x0000 }, {  105, 0x0000 }, {  105, 0x0000 }, {  105, 0x0002 },
+  {  106, 0x0000 }, {  106, 0x0000 }, {  106, 0x0000 }, {  106, 0x0000 },
+  {  106, 0x0000 }, {  106, 0x0000 }, {  106, 0x0008 }, {  107, 0x0000 },
+  {  107, 0x0000 }, {  107, 0x0000 }, {  107, 0x0000 }, {  107, 0x0000 },
+  /* 0x3300 */
+  {  107, 0x0000 }, {  107, 0x0000 }, {  107, 0x0000 }, {  107, 0x0000 },
+  {  107, 0x0000 }, {  107, 0x0000 }, {  107, 0x0000 }, {  107, 0x0000 },
+  {  107, 0xc000 }, {  109, 0x7000 }, {  112, 0x0002 }, {  113, 0x0000 },
+  {  113, 0x4010 }, {  115, 0x0026 },
+};
+static const Summary16 gbkext_inv_uni2indx_page4e[1307] = {
+  /* 0x4e00 */
+  {  118, 0x8074 }, {  123, 0x8084 }, {  126, 0xc24b }, {  133, 0x10aa },
+  {  138, 0x0457 }, {  144, 0x0ca2 }, {  149, 0xfdbc }, {  161, 0xbff4 },
+  {  173, 0x04bf }, {  181, 0x72c1 }, {  188, 0x8408 }, {  191, 0x73d3 },
+  {  201, 0x9100 }, {  204, 0x1c05 }, {  209, 0xe2c5 }, {  217, 0x5712 },
+  /* 0x4f00 */
+  {  224, 0x19fd }, {  234, 0x307c }, {  241, 0x730a }, {  248, 0xcaaa },
+  {  256, 0x1fb7 }, {  267, 0x0054 }, {  270, 0x6d46 }, {  278, 0x27a6 },
+  {  286, 0x54e7 }, {  295, 0xd76d }, {  306, 0x2816 }, {  311, 0x7fdf },
+  {  325, 0x3bc7 }, {  335, 0x0a7c }, {  342, 0x18b5 }, {  349, 0xbaf5 },
+  /* 0x5000 */
+  {  360, 0x4fff }, {  373, 0x68eb }, {  382, 0x889d }, {  389, 0xabff },
+  {  402, 0x2e77 }, {  412, 0xebdf }, {  425, 0xefdf }, {  439, 0x373f },
+  {  450, 0xdede }, {  462, 0xffff }, {  478, 0xec57 }, {  488, 0xf3fb },
+  {  501, 0x7fff }, {  516, 0xfbbf }, {  530, 0x8f3f }, {  541, 0xf7d7 },
+  /* 0x5100 */
+  {  554, 0xf73f }, {  567, 0xfffb }, {  582, 0xfffd }, {  597, 0x7fff },
+  {  612, 0xd484 }, {  618, 0xeb8d }, {  628, 0x86db }, {  637, 0xc404 },
+  {  641, 0xccd8 }, {  649, 0xe51b }, {  658, 0x67ca }, {  667, 0xc710 },
+  {  673, 0x652e }, {  681, 0xd7fd }, {  694, 0x57ec }, {  704, 0x4096 },
+  /* 0x5200 */
+  {  709, 0x9a30 }, {  715, 0xd039 }, {  722, 0x94ee }, {  731, 0x5036 },
+  {  737, 0xcbf0 }, {  746, 0xafac }, {  756, 0x795d }, {  766, 0x5ffb },
+  {  779, 0xfef9 }, {  792, 0x17f6 }, {  802, 0xc0f0 }, {  808, 0x3ff1 },
+  {  819, 0xf577 }, {  831, 0x7eba }, {  842, 0xffef }, {  857, 0x39fe },
+  /* 0x5300 */
+  {  868, 0x5e9e }, {  878, 0xd91e }, {  887, 0xbbb4 }, {  897, 0x31ff },
+  {  908, 0x3855 }, {  915, 0x2b11 }, {  921, 0x3520 }, {  926, 0x7a44 },
+  {  933, 0xc58b }, {  941, 0x5adf }, {  952, 0xbc93 }, {  961, 0x77bf },
+  {  974, 0xc0f9 }, {  982, 0x742d }, {  990, 0x0086 }, {  993, 0xc410 },
+  /* 0x5400 */
+  {  997, 0x08a5 }, { 1002, 0x1710 }, { 1007, 0x0434 }, { 1011, 0xa4c9 },
+  { 1018, 0xf2b6 }, { 1028, 0xe402 }, { 1033, 0xfeab }, { 1045, 0xc611 },
+  { 1051, 0x27aa }, { 1059, 0xd18a }, { 1066, 0x4027 }, { 1071, 0x56e5 },
+  { 1080, 0x0c28 }, { 1084, 0x0940 }, { 1087, 0x981f }, { 1095, 0x4bf3 },
+  /* 0x5500 */
+  { 1105, 0x7d3d }, { 1116, 0xf7ec }, { 1128, 0x2b62 }, { 1135, 0x2f74 },
+  { 1144, 0xf9a5 }, { 1154, 0xef9e }, { 1166, 0x8b0d }, { 1173, 0xa61f },
+  { 1182, 0x7060 }, { 1187, 0x4ced }, { 1196, 0xff7f }, { 1211, 0x9555 },
+  { 1219, 0xcdcf }, { 1230, 0x4fa1 }, { 1238, 0x6285 }, { 1244, 0x9f53 },
+  /* 0x5600 */
+  { 1254, 0x2cfc }, { 1263, 0x36ff }, { 1275, 0xcf67 }, { 1286, 0x75a9 },
+  { 1295, 0x8fff }, { 1308, 0xec6f }, { 1319, 0xe0eb }, { 1328, 0xe7bd },
+  { 1340, 0x3f9f }, { 1352, 0xfff7 }, { 1367, 0x7ff7 }, { 1381, 0xef7f },
+  { 1395, 0xfbff }, { 1410, 0x136f }, { 1419, 0xd7e8 }, { 1429, 0x19cc },
+  /* 0x5700 */
+  { 1436, 0xf8a7 }, { 1446, 0x6fff }, { 1460, 0x08f7 }, { 1468, 0xb1f6 },
+  { 1478, 0x0b7a }, { 1486, 0x037c }, { 1493, 0x50ac }, { 1499, 0xe737 },
+  { 1510, 0xe783 }, { 1519, 0xf7f3 }, { 1532, 0x9520 }, { 1537, 0xfeeb },
+  { 1550, 0x37f3 }, { 1561, 0x58cb }, { 1569, 0x5fee }, { 1581, 0xd8ef },
+  /* 0x5800 */
+  { 1592, 0xd73a }, { 1602, 0xbddd }, { 1614, 0xfbec }, { 1626, 0xffde },
+  { 1640, 0xcfef }, { 1653, 0xbeed }, { 1665, 0xe7df }, { 1678, 0xbfff },
+  { 1693, 0xfdd4 }, { 1704, 0x39f3 }, { 1714, 0xfcff }, { 1728, 0xefff },
+  { 1743, 0xffdd }, { 1757, 0xffdd }, { 1771, 0xa7ef }, { 1783, 0xfdb6 },
+  /* 0x5900 */
+  { 1795, 0x5f6b }, { 1806, 0x698f }, { 1815, 0x114f }, { 1822, 0xe86d },
+  { 1831, 0x3469 }, { 1838, 0xfa0d }, { 1847, 0xffda }, { 1860, 0xdca7 },
+  { 1870, 0xda21 }, { 1877, 0xbd33 }, { 1887, 0x30c7 }, { 1894, 0xb5fb },
+  { 1906, 0xf3bf }, { 1919, 0xca60 }, { 1925, 0xeed7 }, { 1937, 0x75ff },
+  /* 0x5a00 */
+  { 1950, 0xec05 }, { 1957, 0x6ef5 }, { 1968, 0xfdd6 }, { 1980, 0xefa9 },
+  { 1991, 0xf9be }, { 2003, 0xfbdf }, { 2017, 0xfb7b }, { 2030, 0x7b0f },
+  { 2040, 0xffff }, { 2056, 0xf3fb }, { 2069, 0xfbff }, { 2084, 0xbed3 },
+  { 2095, 0xedf9 }, { 2107, 0xeeab }, { 2118, 0xf5b4 }, { 2128, 0xfffd },
+  /* 0x5b00 */
+  { 2143, 0xfdff }, { 2158, 0xff3f }, { 2172, 0xffff }, { 2188, 0xff6b },
+  { 2201, 0xfffe }, { 2216, 0x4044 }, { 2219, 0xe983 }, { 2227, 0xdbd4 },
+  { 2237, 0x6444 }, { 2242, 0x8057 }, { 2248, 0xf380 }, { 2255, 0x1c86 },
+  { 2261, 0xef0b }, { 2271, 0x1ff2 }, { 2281, 0xbecd }, { 2292, 0x60fe },
+  /* 0x5c00 */
+  { 2301, 0x79ad }, { 2311, 0xca8d }, { 2319, 0xef4b }, { 2330, 0x00ed },
+  { 2336, 0x30d8 }, { 2342, 0xbddc }, { 2353, 0x3f94 }, { 2362, 0x79fd },
+  { 2374, 0xcef9 }, { 2385, 0xe02c }, { 2391, 0xc5f3 }, { 2401, 0x5e55 },
+  { 2410, 0xf7ed }, { 2423, 0xfdfb }, { 2437, 0xda8d }, { 2446, 0xf7fe },
+  /* 0x5d00 */
+  { 2460, 0xbf33 }, { 2471, 0xb7af }, { 2483, 0x9d2f }, { 2493, 0x9fef },
+  { 2506, 0xe37f }, { 2518, 0xd6ff }, { 2531, 0x65ff }, { 2543, 0xffef },
+  { 2558, 0xfffb }, { 2573, 0xddff }, { 2587, 0xffff }, { 2603, 0xff7f },
+  { 2618, 0xdfdf }, { 2632, 0x97ff }, { 2645, 0x3419 }, { 2651, 0x9f61 },
+  /* 0x5e00 */
+  { 2660, 0x6e91 }, { 2668, 0xc08c }, { 2673, 0x9f3f }, { 2685, 0xc67d },
+  { 2695, 0xefcb }, { 2707, 0xb7cf }, { 2719, 0xfff9 }, { 2733, 0x42a3 },
+  { 2739, 0x732e }, { 2748, 0x2904 }, { 2752, 0xdf1e }, { 2763, 0xbc17 },
+  { 2772, 0xf9ff }, { 2786, 0xf7b1 }, { 2797, 0xfaff }, { 2811, 0x3b2f },
+  /* 0x5f00 */
+  { 2821, 0x72e0 }, { 2828, 0x7655 }, { 2837, 0x591e }, { 2845, 0xe9fd },
+  { 2857, 0xfffe }, { 2872, 0xde12 }, { 2880, 0xc9a9 }, { 2888, 0xe574 },
+  { 2897, 0xe048 }, { 2902, 0xec5a }, { 2911, 0x9afd }, { 2922, 0xcf5f },
+  { 2934, 0x4d87 }, { 2942, 0xdc38 }, { 2950, 0x936c }, { 2958, 0x16dd },
+  /* 0x6000 */
+  { 2967, 0x1b80 }, { 2972, 0xc58b }, { 2980, 0x701c }, { 2986, 0x67df },
+  { 2998, 0xd7f1 }, { 3009, 0xd9da }, { 3019, 0x4063 }, { 3024, 0x40b6 },
+  { 3030, 0xcde7 }, { 3041, 0x53ab }, { 3050, 0x46b6 }, { 3058, 0xe6e9 },
+  { 3068, 0xf39f }, { 3080, 0x4add }, { 3089, 0x043e }, { 3095, 0xf9a6 },
+  /* 0x6100 */
+  { 3105, 0x1cbc }, { 3113, 0x7bdf }, { 3126, 0xf726 }, { 3136, 0x7fff },
+  { 3151, 0xaaff }, { 3163, 0xdfdd }, { 3176, 0xfe7b }, { 3189, 0xff5e },
+  { 3202, 0xb7ff }, { 3216, 0xdfef }, { 3230, 0xec7f }, { 3242, 0xbf7f },
+  { 3256, 0xf2fb }, { 3268, 0xffe9 }, { 3281, 0xffbf }, { 3296, 0x7fdf },
+  /* 0x6200 */
+  { 3310, 0x02bf }, { 3318, 0x7218 }, { 3324, 0xabc9 }, { 3333, 0x1f67 },
+  { 3343, 0x8474 }, { 3349, 0xf6e1 }, { 3359, 0x0137 }, { 3365, 0x2db6 },
+  { 3374, 0xf9ee }, { 3386, 0x7211 }, { 3392, 0xe6c8 }, { 3400, 0x45dd },
+  { 3409, 0x880b }, { 3414, 0x6022 }, { 3418, 0x0c13 }, { 3423, 0x0f25 },
+  /* 0x6300 */
+  { 3430, 0xbc79 }, { 3440, 0x13bd }, { 3449, 0x72c0 }, { 3455, 0xd9fb },
+  { 3467, 0x0593 }, { 3473, 0x3fde }, { 3485, 0x9d71 }, { 3494, 0xf33d },
+  { 3505, 0x287a }, { 3512, 0xfeba }, { 3524, 0x8852 }, { 3529, 0xaa66 },
+  { 3537, 0x1daf }, { 3547, 0xbfba }, { 3559, 0xd9f4 }, { 3569, 0x5eab },
+  /* 0x6400 */
+  { 3579, 0x67d8 }, { 3588, 0xa7e6 }, { 3598, 0xcbbc }, { 3608, 0x5bef },
+  { 3620, 0xfa0d }, { 3629, 0xbeeb }, { 3641, 0xdd7f }, { 3654, 0xf8ff },
+  { 3667, 0xff4b }, { 3679, 0xbd99 }, { 3689, 0x8def }, { 3700, 0xea5e },
+  { 3710, 0x9fda }, { 3721, 0xbe7a }, { 3732, 0xffab }, { 3745, 0xffff },
+  /* 0x6500 */
+  { 3761, 0xfdfe }, { 3775, 0xfefb }, { 3789, 0x37df }, { 3801, 0x348f },
+  { 3809, 0x6cdf }, { 3820, 0x959d }, { 3829, 0xe7b3 }, { 3840, 0xff6a },
+  { 3852, 0xe77f }, { 3865, 0x6574 }, { 3873, 0x554d }, { 3881, 0xcdfe },
+  { 3893, 0x2785 }, { 3900, 0xff3b }, { 3913, 0x0c1a }, { 3918, 0xfb3c },
+  /* 0x6600 */
+  { 3929, 0x2bb2 }, { 3937, 0x5dc7 }, { 3947, 0x5e5e }, { 3957, 0xaf8d },
+  { 3967, 0x67f5 }, { 3978, 0x7b03 }, { 3986, 0x3ead }, { 3996, 0xbb2e },
+  { 4006, 0xef6b }, { 4018, 0xdf3d }, { 4030, 0xbe7f }, { 4043, 0xbdef },
+  { 4056, 0xffff }, { 4072, 0xc5ff }, { 4084, 0xfdbf }, { 4098, 0x2d62 },
+  /* 0x6700 */
+  { 4105, 0xd0fe }, { 4115, 0x574e }, { 4124, 0x42bf }, { 4133, 0xdbcd },
+  { 4144, 0x2cb2 }, { 4151, 0x2fb4 }, { 4160, 0x58dc }, { 4168, 0x2f52 },
+  { 4176, 0xf56d }, { 4187, 0x8a5e }, { 4195, 0x5253 }, { 4202, 0xfe16 },
+  { 4212, 0x7fe5 }, { 4224, 0x88e0 }, { 4229, 0x6dda }, { 4239, 0x5fe4 },
+  /* 0x6800 */
+  { 4249, 0x205e }, { 4255, 0xdf35 }, { 4266, 0xf9fd }, { 4279, 0x8c73 },
+  { 4287, 0xa880 }, { 4291, 0xffc4 }, { 4302, 0xf400 }, { 4307, 0xff2f },
+  { 4320, 0x7f95 }, { 4331, 0xff77 }, { 4345, 0x5e3b }, { 4355, 0xffd6 },
+  { 4368, 0xd5fa }, { 4379, 0xfadb }, { 4391, 0xbff6 }, { 4404, 0xe9dc },
+  /* 0x6900 */
+  { 4414, 0x97dd }, { 4425, 0x7ffa }, { 4438, 0xdfee }, { 4451, 0x5dee },
+  { 4462, 0xfffb }, { 4477, 0x9b6f }, { 4488, 0xb7b6 }, { 4499, 0xec7d },
+  { 4510, 0xdc2a }, { 4518, 0xe6cf }, { 4529, 0xd67f }, { 4541, 0xf76d },
+  { 4553, 0xabfd }, { 4565, 0x77ee }, { 4577, 0xdffe }, { 4591, 0x5ffb },
+  /* 0x6a00 */
+  { 4604, 0xfbff }, { 4619, 0x7e7f }, { 4632, 0x7afd }, { 4644, 0x9fdd },
+  { 4656, 0xff6f }, { 4670, 0xf4fe }, { 4682, 0xffdd }, { 4696, 0xedfd },
+  { 4709, 0xbfee }, { 4722, 0xff7c }, { 4735, 0xe5fe }, { 4747, 0xffff },
+  { 4763, 0xffff }, { 4779, 0xffff }, { 4795, 0xffff }, { 4811, 0xffff },
+  /* 0x6b00 */
+  { 4827, 0xffff }, { 4843, 0xffff }, { 4859, 0xff60 }, { 4869, 0xb97b },
+  { 4880, 0xed37 }, { 4891, 0xfdff }, { 4906, 0xfb03 }, { 4915, 0xe5ff },
+  { 4928, 0xd121 }, { 4934, 0xf3b3 }, { 4945, 0xfbfd }, { 4959, 0x7f47 },
+  { 4970, 0x57d9 }, { 4980, 0xf503 }, { 4988, 0x73fd }, { 5000, 0xddd7 },
+  /* 0x6c00 */
+  { 5012, 0x5f1f }, { 5023, 0x7084 }, { 5028, 0x3829 }, { 5034, 0xdeca },
+  { 5044, 0xf938 }, { 5053, 0x074e }, { 5060, 0xf8ec }, { 5070, 0x9daa },
+  { 5079, 0x6c91 }, { 5086, 0x75e6 }, { 5096, 0x9105 }, { 5101, 0x04f1 },
+  { 5107, 0xe9cf }, { 5118, 0xb706 }, { 5126, 0x32d0 }, { 5132, 0x8214 },
+  /* 0x6d00 */
+  { 5136, 0xa76d }, { 5146, 0xb17b }, { 5156, 0xb35f }, { 5167, 0x85d1 },
+  { 5174, 0x1215 }, { 5179, 0xa9e1 }, { 5187, 0x39b6 }, { 5196, 0xee6f },
+  { 5208, 0xacdb }, { 5218, 0x17c5 }, { 5226, 0x3024 }, { 5230, 0x7edb },
+  { 5242, 0xe70e }, { 5251, 0x9cbd }, { 5261, 0xa7ac }, { 5270, 0xe575 },
+  /* 0x6e00 */
+  { 5280, 0x8bdf }, { 5291, 0xdb2c }, { 5300, 0x55c4 }, { 5307, 0xfaeb },
+  { 5319, 0x9fe7 }, { 5331, 0x76a7 }, { 5341, 0xb7ff }, { 5355, 0x3fff },
+  { 5369, 0x7d97 }, { 5380, 0x6efe }, { 5392, 0x7b5b }, { 5403, 0xd329 },
+  { 5411, 0x7779 }, { 5422, 0x3b45 }, { 5430, 0xfc88 }, { 5438, 0xfdef },
+  /* 0x6f00 */
+  { 5452, 0x7dbb }, { 5464, 0xffc7 }, { 5477, 0x51ee }, { 5486, 0xbfb5 },
+  { 5498, 0xd73f }, { 5510, 0xaeff }, { 5523, 0x9fbb }, { 5535, 0xeaeb },
+  { 5546, 0x8cef }, { 5556, 0xefff }, { 5571, 0xff7d }, { 5585, 0xfdb7 },
+  { 5598, 0xfdfa }, { 5611, 0xbff9 }, { 5624, 0x3ffc }, { 5636, 0xffff },
+  /* 0x7000 */
+  { 5652, 0xffff }, { 5668, 0xf3fd }, { 5681, 0xfff7 }, { 5696, 0xfddf },
+  { 5710, 0x6fff }, { 5724, 0xbfff }, { 5739, 0x47ff }, { 5751, 0x2e9e },
+  { 5760, 0xb9de }, { 5771, 0xcd8b }, { 5780, 0x07ff }, { 5791, 0xc475 },
+  { 5799, 0xfaf0 }, { 5809, 0x74ff }, { 5821, 0x442f }, { 5828, 0xdd7f },
+  /* 0x7100 */
+  { 5841, 0xf9ff }, { 5855, 0xf896 }, { 5864, 0x7fbf }, { 5878, 0xffbc },
+  { 5891, 0xabdf }, { 5903, 0xafff }, { 5917, 0xbe2f }, { 5928, 0xdaf3 },
+  { 5939, 0x7bef }, { 5952, 0x7cef }, { 5964, 0xeefe }, { 5977, 0xfdd7 },
+  { 5990, 0xbff7 }, { 6004, 0xffcf }, { 6018, 0xbf5e }, { 6030, 0xfdff },
+  /* 0x7200 */
+  { 6045, 0xffbf }, { 6060, 0xdfff }, { 6075, 0xeaff }, { 6088, 0x541c },
+  { 6094, 0xce7f }, { 6106, 0x55bb }, { 6116, 0x3d39 }, { 6125, 0x39db },
+  { 6135, 0x53ec }, { 6144, 0x7ffb }, { 6158, 0x4fff }, { 6171, 0xfc2e },
+  { 6181, 0x9ee1 }, { 6190, 0xbd7a }, { 6201, 0x0cfc }, { 6209, 0xe260 },
+  /* 0x7300 */
+  { 6215, 0xbbf5 }, { 6227, 0x8717 }, { 6235, 0xa1d9 }, { 6243, 0x3c6d },
+  { 6252, 0xdfff }, { 6267, 0xff7a }, { 6280, 0x4ffe }, { 6292, 0xbfff },
+  { 6307, 0xb56f }, { 6318, 0x77bd }, { 6330, 0x35fb }, { 6341, 0xf372 },
+  { 6351, 0x58fa }, { 6360, 0xbdfc }, { 6372, 0xdd5e }, { 6383, 0xfffb },
+  /* 0x7400 */
+  { 6398, 0x7997 }, { 6408, 0xf3fe }, { 6421, 0xaa9b }, { 6430, 0xef86 },
+  { 6440, 0xfffd }, { 6455, 0x215f }, { 6463, 0xdfff }, { 6478, 0xbf3e },
+  { 6490, 0xb774 }, { 6500, 0xaffe }, { 6513, 0xfc7f }, { 6526, 0xfbff },
+  { 6541, 0xffff }, { 6557, 0xaffb }, { 6570, 0x3fa2 }, { 6579, 0x7f2f },
+  /* 0x7500 */
+  { 6591, 0x5fef }, { 6604, 0x68f5 }, { 6613, 0x44df }, { 6622, 0xb250 },
+  { 6628, 0x26de }, { 6637, 0xe1ef }, { 6648, 0xfb9f }, { 6661, 0x7ceb },
+  { 6672, 0x77b7 }, { 6684, 0x5929 }, { 6691, 0x27c4 }, { 6698, 0x8cc0 },
+  { 6703, 0xd843 }, { 6710, 0xb68b }, { 6719, 0xf223 }, { 6727, 0x6dec },
+  /* 0x7600 */
+  { 6737, 0xebd4 }, { 6747, 0x745e }, { 6756, 0xd18a }, { 6763, 0x2ec6 },
+  { 6771, 0xcff6 }, { 6783, 0xafaf }, { 6795, 0x77f7 }, { 6808, 0x96ff },
+  { 6820, 0xb62b }, { 6829, 0xfdb5 }, { 6841, 0xbfef }, { 6855, 0x7fe9 },
+  { 6867, 0x1a9b }, { 6875, 0x7628 }, { 6882, 0x3fdf }, { 6895, 0xace9 },
+  /* 0x7700 */
+  { 6904, 0xd46d }, { 6913, 0x79ff }, { 6926, 0x5cba }, { 6935, 0xea1f },
+  { 6945, 0xff74 }, { 6957, 0xf3fc }, { 6969, 0xe691 }, { 6977, 0x1dff },
+  { 6989, 0x8fce }, { 6999, 0x7ff9 }, { 7012, 0xe95a }, { 7021, 0x57d6 },
+  { 7031, 0xdfff }, { 7046, 0xe77f }, { 7059, 0x8553 }, { 7066, 0x1eb7 },
+  /* 0x7800 */
+  { 7076, 0xcdf8 }, { 7086, 0x4a29 }, { 7092, 0xcd17 }, { 7101, 0xa06e },
+  { 7108, 0xaf5e }, { 7119, 0xdf1a }, { 7129, 0x83ff }, { 7140, 0xef7f },
+  { 7154, 0x8d7f }, { 7165, 0x6275 }, { 7173, 0xff55 }, { 7185, 0xbde0 },
+  { 7194, 0xf1dd }, { 7205, 0xfdce }, { 7217, 0xeeff }, { 7231, 0xfb6b },
+  /* 0x7900 */
+  { 7243, 0xffdd }, { 7257, 0xbff7 }, { 7271, 0xffef }, { 7286, 0xa3ef },
+  { 7297, 0xfcbc }, { 7308, 0x0337 }, { 7315, 0x5e5a }, { 7324, 0xfa7f },
+  { 7337, 0x7bcc }, { 7347, 0xfbff }, { 7362, 0xff7f }, { 7377, 0x91f7 },
+  { 7387, 0xd5b4 }, { 7396, 0x7ed9 }, { 7407, 0x5527 }, { 7415, 0xd6fe },
+  /* 0x7a00 */
+  { 7427, 0x97b2 }, { 7436, 0xbb6f }, { 7448, 0xfff6 }, { 7462, 0x4577 },
+  { 7471, 0xffbf }, { 7486, 0xff7d }, { 7500, 0xffff }, { 7516, 0x782e },
+  { 7524, 0xdea4 }, { 7533, 0x4e19 }, { 7540, 0xce9e }, { 7550, 0x7ff7 },
+  { 7564, 0xf7ff }, { 7579, 0x3dbf }, { 7591, 0x5f96 }, { 7601, 0x59ff },
+  /* 0x7b00 */
+  { 7613, 0x72a7 }, { 7622, 0xb5cd }, { 7632, 0xa28e }, { 7639, 0xaaf5 },
+  { 7649, 0x655f }, { 7659, 0xd2a8 }, { 7666, 0xbffa }, { 7679, 0xb559 },
+  { 7688, 0xdfde }, { 7701, 0xcf4e }, { 7711, 0xc039 }, { 7717, 0xfeed },
+  { 7730, 0xef3d }, { 7742, 0xd9f5 }, { 7753, 0xbb9d }, { 7764, 0xaf7d },
+  /* 0x7c00 */
+  { 7776, 0x677f }, { 7788, 0x7fbf }, { 7802, 0xfb3f }, { 7815, 0x7eff },
+  { 7829, 0xdffc }, { 7842, 0xffff }, { 7858, 0xffff }, { 7874, 0xc7e7 },
+  { 7885, 0xfdff }, { 7900, 0x0e59 }, { 7907, 0xbbcb }, { 7918, 0x8df1 },
+  { 7927, 0xca5d }, { 7936, 0x6d1f }, { 7946, 0x7efe }, { 7959, 0xf6ff },
+  /* 0x7d00 */
+  { 7973, 0xfbff }, { 7988, 0xffff }, { 8004, 0x777a }, { 8015, 0xffff },
+  { 8031, 0xffff }, { 8047, 0xffff }, { 8063, 0xbfff }, { 8078, 0xff7f },
+  { 8093, 0xffff }, { 8109, 0xffff }, { 8125, 0xbfbf }, { 8139, 0xffff },
+  { 8155, 0xffff }, { 8171, 0xffff }, { 8187, 0xffff }, { 8203, 0xffff },
+  /* 0x7e00 */
+  { 8219, 0xffff }, { 8235, 0xffff }, { 8251, 0xffff }, { 8267, 0xf7ff },
+  { 8282, 0xff7d }, { 8296, 0xffff }, { 8312, 0xffff }, { 8328, 0xffff },
+  { 8344, 0xfffb }, { 8359, 0x77ff }, { 8373, 0x4000 }, { 8374, 0x1810 },
+  { 8377, 0x0000 }, { 8377, 0x0040 }, { 8378, 0x1010 }, { 8380, 0x0200 },
+  /* 0x7f00 */
+  { 8381, 0x0400 }, { 8382, 0x4001 }, { 8384, 0x0000 }, { 8384, 0xfa80 },
+  { 8391, 0xffcb }, { 8404, 0x7a4c }, { 8412, 0xb8f9 }, { 8422, 0xbde9 },
+  { 8433, 0xabfd }, { 8445, 0x1bef }, { 8456, 0x7f6d }, { 8468, 0x4cfa },
+  { 8477, 0xabdd }, { 8488, 0x7ecf }, { 8500, 0xbd9c }, { 8510, 0xe7f4 },
+  /* 0x8000 */
+  { 8521, 0xc784 }, { 8528, 0xec0a }, { 8535, 0xf81a }, { 8543, 0x5615 },
+  { 8550, 0xc3b3 }, { 8559, 0xfaeb }, { 8571, 0xf9ff }, { 8585, 0x7ffd },
+  { 8599, 0xe526 }, { 8607, 0x42b7 }, { 8615, 0x11c8 }, { 8620, 0x0b69 },
+  { 8627, 0x8fa0 }, { 8634, 0x813f }, { 8642, 0x404d }, { 8647, 0xcaa0 },
+  /* 0x8100 */
+  { 8653, 0x19bb }, { 8662, 0xbaa0 }, { 8669, 0x6fff }, { 8683, 0xbeb9 },
+  { 8694, 0xe2bf }, { 8705, 0xf9c4 }, { 8714, 0x9d5e }, { 8724, 0x01ec },
+  { 8730, 0x7afa }, { 8741, 0xc6fd }, { 8752, 0xfab7 }, { 8764, 0xf3f7 },
+  { 8777, 0xebb0 }, { 8786, 0xffff }, { 8802, 0xcb77 }, { 8813, 0xa7e7 },
+  /* 0x8200 */
+  { 8824, 0xcf88 }, { 8832, 0x27ea }, { 8841, 0x42f1 }, { 8848, 0xb404 },
+  { 8853, 0x756f }, { 8864, 0x7aff }, { 8877, 0x3eff }, { 8890, 0x19e2 },
+  { 8897, 0x12eb }, { 8905, 0x4c79 }, { 8913, 0x008d }, { 8917, 0x9c64 },
+  { 8924, 0x026d }, { 8930, 0x2641 }, { 8935, 0x7784 }, { 8943, 0xf56d },
+  /* 0x8300 */
+  { 8954, 0x2c01 }, { 8958, 0xe34d }, { 8967, 0x467f }, { 8977, 0xe885 },
+  { 8984, 0x7d36 }, { 8994, 0x23e8 }, { 9001, 0x0004 }, { 9002, 0xc67f },
+  { 9013, 0xbd9f }, { 9025, 0xa6f3 }, { 9035, 0xf0fe }, { 9046, 0xc820 },
+  { 9050, 0x6b5c }, { 9059, 0x4eaf }, { 9069, 0xf9dc }, { 9080, 0xdcf8 },
+  /* 0x8400 */
+  { 9090, 0x07a5 }, { 9097, 0xcefd }, { 9109, 0xfe0f }, { 9120, 0xcefd },
+  { 9132, 0xffbf }, { 9147, 0xe17d }, { 9157, 0xc5f5 }, { 9167, 0xfa95 },
+  { 9177, 0xa47b }, { 9186, 0xed7f }, { 9199, 0x7ffd }, { 9213, 0x58eb },
+  { 9222, 0xd9ed }, { 9233, 0x5fb4 }, { 9243, 0xef96 }, { 9254, 0x6ffe },
+  /* 0x8500 */
+  { 9267, 0xefff }, { 9282, 0x7b75 }, { 9293, 0xe7fd }, { 9306, 0xc07f },
+  { 9315, 0xf8f7 }, { 9327, 0xbdbf }, { 9340, 0xfeef }, { 9354, 0xb1eb },
+  { 9364, 0x7f4f }, { 9376, 0xe7ff }, { 9390, 0x3aef }, { 9401, 0xfd7e },
+  { 9414, 0x7dfd }, { 9427, 0xefd6 }, { 9439, 0xfdef }, { 9453, 0x77ff },
+  /* 0x8600 */
+  { 9467, 0xffdf }, { 9482, 0xffbd }, { 9496, 0xfd7f }, { 9510, 0xeeff },
+  { 9524, 0x1fff }, { 9537, 0xbbec }, { 9548, 0xa7fb }, { 9560, 0x01fd },
+  { 9568, 0xc3f8 }, { 9577, 0xcfd7 }, { 9589, 0x6867 }, { 9597, 0xfb8c },
+  { 9607, 0x312e }, { 9614, 0x34ec }, { 9622, 0x9def }, { 9634, 0xbce0 },
+  /* 0x8700 */
+  { 9642, 0xd872 }, { 9650, 0xaa53 }, { 9658, 0xbdd1 }, { 9668, 0x376d },
+  { 9678, 0xac7f }, { 9689, 0xfd77 }, { 9702, 0xbfc6 }, { 9713, 0x87ae },
+  { 9722, 0xd6d3 }, { 9732, 0x7f77 }, { 9745, 0x46ff }, { 9756, 0xdbd7 },
+  { 9768, 0xf3be }, { 9780, 0xf7f1 }, { 9792, 0xbbde }, { 9804, 0xbdff },
+  /* 0x8800 */
+  { 9818, 0xfbf7 }, { 9832, 0xf797 }, { 9844, 0xfff9 }, { 9858, 0xedfb },
+  { 9871, 0xcfce }, { 9882, 0xfd6f }, { 9895, 0xa4c1 }, { 9901, 0x1f7a },
+  { 9911, 0xd6c9 }, { 9920, 0xefbb }, { 9933, 0xd7eb }, { 9945, 0xef7d },
+  { 9958, 0xbd99 }, { 9968, 0x7ccb }, { 9978, 0xfec3 }, { 9989, 0xace4 },
+  /* 0x8900 */
+  { 9997, 0xfbfb }, { 10011, 0xf1f2 }, { 10021, 0xf3dd }, { 10033, 0xffae },
+  { 10046, 0xffed }, { 10060, 0x3fff }, { 10074, 0xffbf }, { 10089, 0x77ff },
+  { 10103, 0xffb5 }, { 10116, 0xffff }, { 10132, 0xffff }, { 10148, 0xffff },
+  { 10164, 0x2009 }, { 10167, 0xabb8 }, { 10176, 0x7797 }, { 10187, 0xfff7 },
+  /* 0x8a00 */
+  { 10202, 0xff7e }, { 10216, 0xffff }, { 10232, 0xffff }, { 10248, 0xbfff },
+  { 10263, 0xfeff }, { 10278, 0xffff }, { 10294, 0xffff }, { 10310, 0xfdff },
+  { 10325, 0xf9ff }, { 10339, 0xfff7 }, { 10354, 0xffff }, { 10370, 0xffff },
+  { 10386, 0xffff }, { 10402, 0xffff }, { 10418, 0xffff }, { 10434, 0xffff },
+  /* 0x8b00 */
+  { 10450, 0xff7f }, { 10465, 0xffff }, { 10481, 0xffbf }, { 10496, 0xffff },
+  { 10512, 0xffff }, { 10528, 0xffff }, { 10544, 0xefbf }, { 10558, 0xffff },
+  { 10574, 0xffff }, { 10590, 0xffff }, { 10606, 0x1000 }, { 10607, 0x0802 },
+  { 10609, 0x0080 }, { 10610, 0x0001 }, { 10611, 0x0400 }, { 10612, 0x0000 },
+  /* 0x8c00 */
+  { 10612, 0x0200 }, { 10613, 0x4000 }, { 10614, 0x0000 }, { 10614, 0xff00 },
+  { 10622, 0xed3d }, { 10633, 0xfbdf }, { 10647, 0xf3f9 }, { 10659, 0xf8f7 },
+  { 10671, 0xe9db }, { 10682, 0xfeef }, { 10696, 0xffff }, { 10712, 0xffff },
+  { 10728, 0xffff }, { 10744, 0xffff }, { 10760, 0xffff }, { 10776, 0xffff },
+  /* 0x8d00 */
+  { 10792, 0xffff }, { 10808, 0x1fff }, { 10821, 0x0001 }, { 10822, 0x0000 },
+  { 10822, 0x0000 }, { 10822, 0x8086 }, { 10826, 0xd720 }, { 10833, 0xff06 },
+  { 10843, 0xf3cd }, { 10854, 0x7fed }, { 10867, 0xfff7 }, { 10882, 0x2ac5 },
+  { 10889, 0x27a7 }, { 10898, 0x133d }, { 10906, 0x62e7 }, { 10915, 0xd057 },
+  /* 0x8e00 */
+  { 10923, 0x69df }, { 10934, 0x1fef }, { 10946, 0x29f3 }, { 10955, 0xd9dd },
+  { 10966, 0xf068 }, { 10973, 0xfdf9 }, { 10986, 0x4dbf }, { 10997, 0x6faa },
+  { 11007, 0x7f5d }, { 11019, 0xafee }, { 11031, 0x67ff }, { 11044, 0xfbfb },
+  { 11058, 0xbfff }, { 11073, 0xffff }, { 11089, 0xffff }, { 11105, 0xffff },
+  /* 0x8f00 */
+  { 11121, 0xffff }, { 11137, 0xffff }, { 11153, 0xffff }, { 11169, 0xffff },
+  { 11185, 0xffff }, { 11201, 0xffff }, { 11217, 0x043f }, { 11224, 0x0000 },
+  { 11224, 0x1001 }, { 11226, 0x2004 }, { 11228, 0xf4f7 }, { 11240, 0x9dbc },
+  { 11250, 0xbe49 }, { 11259, 0x04c4 }, { 11263, 0x908b }, { 11269, 0xdc76 },
+  /* 0x9000 */
+  { 11279, 0x5180 }, { 11283, 0x1328 }, { 11288, 0x1fb8 }, { 11297, 0xa69f },
+  { 11307, 0x5f69 }, { 11317, 0xf670 }, { 11326, 0x9ed3 }, { 11336, 0x5fcf },
+  { 11348, 0xf6f2 }, { 11359, 0xd555 }, { 11368, 0x2bb1 }, { 11376, 0xb084 },
+  { 11381, 0x3b4d }, { 11390, 0xc774 }, { 11399, 0x5639 }, { 11407, 0x9eef },
+  /* 0x9100 */
+  { 11419, 0xffeb }, { 11433, 0xbdff }, { 11447, 0x7ff3 }, { 11460, 0xfdfd },
+  { 11474, 0x01b7 }, { 11481, 0x9b7a }, { 11491, 0x29c1 }, { 11497, 0x1c08 },
+  { 11501, 0xc55f }, { 11511, 0xf3f8 }, { 11522, 0x1bf3 }, { 11532, 0xfbcf },
+  { 11545, 0x097f }, { 11554, 0xeffd }, { 11568, 0xffff }, { 11584, 0xffff },
+  /* 0x9200 */
+  { 11600, 0xffff }, { 11616, 0xffff }, { 11632, 0xffff }, { 11648, 0xffff },
+  { 11664, 0xffff }, { 11680, 0xffff }, { 11696, 0xffff }, { 11712, 0xffef },
+  { 11727, 0xbfff }, { 11742, 0xffff }, { 11758, 0xbfff }, { 11773, 0xffff },
+  { 11789, 0xfeff }, { 11804, 0xffff }, { 11820, 0xffff }, { 11836, 0xffff },
+  /* 0x9300 */
+  { 11852, 0xffff }, { 11868, 0xffff }, { 11884, 0xffff }, { 11900, 0xbfff },
+  { 11915, 0xffff }, { 11931, 0xffff }, { 11947, 0xfbff }, { 11962, 0xffff },
+  { 11978, 0x7fff }, { 11993, 0xffff }, { 12009, 0xffff }, { 12025, 0xffff },
+  { 12041, 0xfbff }, { 12056, 0xffbf }, { 12071, 0xffff }, { 12087, 0xffff },
+  /* 0x9400 */
+  { 12103, 0xffff }, { 12119, 0xffff }, { 12135, 0xffff }, { 12151, 0xbfff },
+  { 12166, 0xffff }, { 12182, 0xffff }, { 12198, 0xf7ff }, { 12213, 0xffff },
+  { 12229, 0x001f }, { 12234, 0x0142 }, { 12237, 0x0000 }, { 12237, 0x0000 },
+  { 12237, 0x8080 }, { 12239, 0x0418 }, { 12242, 0x0040 }, { 12243, 0x0800 },
+  /* 0x9500 */
+  { 12244, 0x0000 }, { 12244, 0x1000 }, { 12245, 0x0081 }, { 12247, 0x2008 },
+  { 12249, 0x0908 }, { 12252, 0x0420 }, { 12254, 0x4001 }, { 12256, 0x7fb0 },
+  { 12266, 0xffff }, { 12282, 0xffff }, { 12298, 0xffff }, { 12314, 0xffff },
+  { 12330, 0xffff }, { 12346, 0xffff }, { 12362, 0x10ff }, { 12371, 0x8000 },
+  /* 0x9600 */
+  { 12372, 0x0080 }, { 12373, 0x4908 }, { 12377, 0xbbf9 }, { 12389, 0x4781 },
+  { 12395, 0xc40a }, { 12400, 0x77ce }, { 12411, 0xe869 }, { 12419, 0xff0b },
+  { 12430, 0x569f }, { 12440, 0xec6e }, { 12450, 0xff7f }, { 12465, 0x8db6 },
+  { 12474, 0x0d0c }, { 12479, 0xffdb }, { 12493, 0x78fe }, { 12504, 0xbd37 },
+  /* 0x9700 */
+  { 12515, 0x1c2c }, { 12521, 0xafb7 }, { 12533, 0xdbff }, { 12547, 0xbcfa },
+  { 12558, 0xffff }, { 12574, 0xb5b3 }, { 12584, 0xfdd8 }, { 12595, 0xefa7 },
+  { 12607, 0xd7df }, { 12620, 0xfee9 }, { 12632, 0x57f6 }, { 12643, 0xffeb },
+  { 12657, 0xffff }, { 12673, 0xffff }, { 12689, 0xc13f }, { 12698, 0xff97 },
+  /* 0x9800 */
+  { 12711, 0xffff }, { 12727, 0xffff }, { 12743, 0xffff }, { 12759, 0xffff },
+  { 12775, 0xffff }, { 12791, 0xffff }, { 12807, 0xffff }, { 12823, 0x001f },
+  { 12828, 0x4800 }, { 12830, 0x0224 }, { 12833, 0xff08 }, { 12842, 0xffff },
+  { 12858, 0xbfff }, { 12873, 0x38d1 }, { 12880, 0xfe7f }, { 12894, 0xffff },
+  /* 0x9900 */
+  { 12910, 0xdfff }, { 12925, 0xfffe }, { 12940, 0xbfff }, { 12955, 0xffff },
+  { 12971, 0xffff }, { 12987, 0xffcf }, { 13001, 0x0057 }, { 13006, 0x4b08 },
+  { 13011, 0x520c }, { 13016, 0xfc00 }, { 13022, 0xfedf }, { 13036, 0xffff },
+  { 13052, 0xffff }, { 13068, 0xffff }, { 13084, 0xffff }, { 13100, 0xffff },
+  /* 0x9a00 */
+  { 13116, 0xffff }, { 13132, 0xffff }, { 13148, 0xffff }, { 13164, 0xffff },
+  { 13180, 0xffff }, { 13196, 0xffff }, { 13212, 0x0fff }, { 13224, 0x0004 },
+  { 13225, 0x6208 }, { 13229, 0x0230 }, { 13232, 0xfe40 }, { 13240, 0xea3c },
+  { 13249, 0xe7d8 }, { 13259, 0x7ef5 }, { 13271, 0x57bd }, { 13282, 0xf5ff },
+  /* 0x9b00 */
+  { 13296, 0x7ef7 }, { 13309, 0x7ff7 }, { 13323, 0x7ff7 }, { 13337, 0xe7fb },
+  { 13350, 0x5c41 }, { 13356, 0xffed }, { 13370, 0xffff }, { 13386, 0xffff },
+  { 13402, 0xffff }, { 13418, 0xffff }, { 13434, 0xffff }, { 13450, 0xffff },
+  { 13466, 0xffff }, { 13482, 0xffff }, { 13498, 0xffff }, { 13514, 0xffff },
+  /* 0x9c00 */
+  { 13530, 0xffff }, { 13546, 0xffff }, { 13562, 0xffff }, { 13578, 0xffff },
+  { 13594, 0xffff }, { 13610, 0xffff }, { 13626, 0xffff }, { 13642, 0x6fff },
+  { 13656, 0x9619 }, { 13663, 0x23c8 }, { 13669, 0x9400 }, { 13672, 0xc200 },
+  { 13675, 0x0307 }, { 13680, 0x0c06 }, { 13684, 0xfffb }, { 13699, 0xffff },
+  /* 0x9d00 */
+  { 13715, 0xffff }, { 13731, 0xffff }, { 13747, 0xffff }, { 13763, 0xffff },
+  { 13779, 0xffff }, { 13795, 0xffff }, { 13811, 0xffff }, { 13827, 0xffff },
+  { 13843, 0xffff }, { 13859, 0xffff }, { 13875, 0xffff }, { 13891, 0xffff },
+  { 13907, 0xffff }, { 13923, 0xffff }, { 13939, 0xffff }, { 13955, 0xffff },
+  /* 0x9e00 */
+  { 13971, 0xffff }, { 13987, 0x7fff }, { 14002, 0x4090 }, { 14005, 0x1811 },
+  { 14009, 0x2001 }, { 14011, 0xa25d }, { 14019, 0xc027 }, { 14025, 0x3ff4 },
+  { 14036, 0xf67b }, { 14048, 0x5ff3 }, { 14060, 0xffbf }, { 14075, 0x96ef },
+  { 14086, 0x1def }, { 14097, 0x46ed }, { 14106, 0x795a }, { 14115, 0xa5ff },
+  /* 0x9f00 */
+  { 14127, 0x97ff }, { 14140, 0xfd76 }, { 14152, 0x6ffa }, { 14164, 0x957f },
+  { 14175, 0xffef }, { 14190, 0xfffc }, { 14204, 0xffff }, { 14220, 0x7fff },
+  { 14235, 0xe006 }, { 14240, 0x71ff }, { 14252, 0x003e },
+};
+static const Summary16 gbkext_inv_uni2indx_pagef9[19] = {
+  /* 0xf900 */
+  { 14257, 0x0000 }, { 14257, 0x0000 }, { 14257, 0x1000 }, { 14258, 0x0000 },
+  { 14258, 0x0000 }, { 14258, 0x0000 }, { 14258, 0x0000 }, { 14258, 0x0200 },
+  { 14259, 0x0000 }, { 14259, 0x0020 }, { 14260, 0x0000 }, { 14260, 0x0000 },
+  { 14260, 0x0000 }, { 14260, 0x0000 }, { 14260, 0x0080 }, { 14261, 0x0002 },
+  /* 0xfa00 */
+  { 14262, 0xf000 }, { 14266, 0x811a }, { 14271, 0x039b },
+};
+static const Summary16 gbkext_inv_uni2indx_pagefe[31] = {
+  /* 0xfe00 */
+  { 14278, 0x0000 }, { 14278, 0x0000 }, { 14278, 0x0000 }, { 14278, 0x0001 },
+  { 14279, 0xfe00 }, { 14286, 0xfef7 }, { 14300, 0x0f7f }, { 14311, 0x0000 },
+  { 14311, 0x0000 }, { 14311, 0x0000 }, { 14311, 0x0000 }, { 14311, 0x0000 },
+  { 14311, 0x0000 }, { 14311, 0x0000 }, { 14311, 0x0000 }, { 14311, 0x0000 },
+  /* 0xff00 */
+  { 14311, 0x0000 }, { 14311, 0x0000 }, { 14311, 0x0000 }, { 14311, 0x0000 },
+  { 14311, 0x0000 }, { 14311, 0x0000 }, { 14311, 0x0000 }, { 14311, 0x0000 },
+  { 14311, 0x0000 }, { 14311, 0x0000 }, { 14311, 0x0000 }, { 14311, 0x0000 },
+  { 14311, 0x0000 }, { 14311, 0x0000 }, { 14311, 0x0014 },
+};
+
+static int
+gbkext_inv_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 2) {
+    const Summary16 *summary = NULL;
+    if (wc >= 0x0200 && wc < 0x02e0)
+      summary = &gbkext_inv_uni2indx_page02[(wc>>4)-0x020];
+    else if (wc >= 0x2000 && wc < 0x22c0)
+      summary = &gbkext_inv_uni2indx_page20[(wc>>4)-0x200];
+    else if (wc >= 0x2500 && wc < 0x2610)
+      summary = &gbkext_inv_uni2indx_page25[(wc>>4)-0x250];
+    else if (wc >= 0x3000 && wc < 0x3100)
+      summary = &gbkext_inv_uni2indx_page30[(wc>>4)-0x300];
+    else if (wc >= 0x3200 && wc < 0x33e0)
+      summary = &gbkext_inv_uni2indx_page32[(wc>>4)-0x320];
+    else if (wc >= 0x4e00 && wc < 0x9fb0)
+      summary = &gbkext_inv_uni2indx_page4e[(wc>>4)-0x4e0];
+    else if (wc >= 0xf900 && wc < 0xfa30)
+      summary = &gbkext_inv_uni2indx_pagef9[(wc>>4)-0xf90];
+    else if (wc >= 0xfe00 && wc < 0xfff0)
+      summary = &gbkext_inv_uni2indx_pagefe[(wc>>4)-0xfe0];
+    if (summary) {
+      unsigned short used = summary->used;
+      unsigned int i = wc & 0x0f;
+      if (used & ((unsigned short) 1 << i)) {
+        unsigned short c;
+        /* Keep in `used' only the bits 0..i-1. */
+        used &= ((unsigned short) 1 << i) - 1;
+        /* Add `summary->indx' and the number of bits set in `used'. */
+        used = (used & 0x5555) + ((used & 0xaaaa) >> 1);
+        used = (used & 0x3333) + ((used & 0xcccc) >> 2);
+        used = (used & 0x0f0f) + ((used & 0xf0f0) >> 4);
+        used = (used & 0x00ff) + (used >> 8);
+        c = gbkext_inv_2charset[summary->indx + used];
+        r[0] = (c >> 8); r[1] = (c & 0xff);
+        return 2;
+      }
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/georgian_academy.h b/graf2d/win32gdk/gdk/src/iconv/georgian_academy.h
new file mode 100644
index 00000000000..ddbe57806d1
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/georgian_academy.h
@@ -0,0 +1,106 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * GEORGIAN-ACADEMY
+ */
+
+static const unsigned short georgian_academy_2uni[32] = {
+  /* 0x80 */
+  0x0080, 0x0081, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
+  0x02c6, 0x2030, 0x0160, 0x2039, 0x0152, 0x008d, 0x008e, 0x008f,
+  /* 0x90 */
+  0x0090, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+  0x02dc, 0x2122, 0x0161, 0x203a, 0x0153, 0x009d, 0x009e, 0x0178,
+};
+
+static int
+georgian_academy_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c >= 0x80 && c < 0xa0)
+    *pwc = (ucs4_t) georgian_academy_2uni[c-0x80];
+  else if (c >= 0xc0 && c < 0xe7)
+    *pwc = (ucs4_t) c + 0x1010;
+  else
+    *pwc = (ucs4_t) c;
+  return 1;
+}
+
+static const unsigned char georgian_academy_page00[32] = {
+  0x80, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x8d, 0x8e, 0x8f, /* 0x88-0x8f */
+  0x90, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x9d, 0x9e, 0x00, /* 0x98-0x9f */
+};
+static const unsigned char georgian_academy_page01[72] = {
+  0x00, 0x00, 0x8c, 0x9c, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x8a, 0x9a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x9f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0x83, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char georgian_academy_page02[32] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x98, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+};
+static const unsigned char georgian_academy_page20[48] = {
+  0x00, 0x00, 0x00, 0x96, 0x97, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x91, 0x92, 0x82, 0x00, 0x93, 0x94, 0x84, 0x00, /* 0x18-0x1f */
+  0x86, 0x87, 0x95, 0x00, 0x00, 0x00, 0x85, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x89, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x8b, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+};
+
+static int
+georgian_academy_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x0080 && wc < 0x00a0)
+    c = georgian_academy_page00[wc-0x0080];
+  else if ((wc >= 0x00a0 && wc < 0x00c0) || (wc >= 0x00e7 && wc < 0x0100))
+    c = wc;
+  else if (wc >= 0x0150 && wc < 0x0198)
+    c = georgian_academy_page01[wc-0x0150];
+  else if (wc >= 0x02c0 && wc < 0x02e0)
+    c = georgian_academy_page02[wc-0x02c0];
+  else if (wc >= 0x10d0 && wc < 0x10f7)
+    c = wc-0x1010;
+  else if (wc >= 0x2010 && wc < 0x2040)
+    c = georgian_academy_page20[wc-0x2010];
+  else if (wc == 0x2122)
+    c = 0x99;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/georgian_ps.h b/graf2d/win32gdk/gdk/src/iconv/georgian_ps.h
new file mode 100644
index 00000000000..e23dbae1cd0
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/georgian_ps.h
@@ -0,0 +1,123 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * GEORGIAN-PS
+ */
+
+static const unsigned short georgian_ps_2uni_1[32] = {
+  /* 0x80 */
+  0x0080, 0x0081, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
+  0x02c6, 0x2030, 0x0160, 0x2039, 0x0152, 0x008d, 0x008e, 0x008f,
+  /* 0x90 */
+  0x0090, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+  0x02dc, 0x2122, 0x0161, 0x203a, 0x0153, 0x009d, 0x009e, 0x0178,
+};
+static const unsigned short georgian_ps_2uni_2[39] = {
+  /* 0xc0 */
+  0x10d0, 0x10d1, 0x10d2, 0x10d3, 0x10d4, 0x10d5, 0x10d6, 0x10f1,
+  0x10d7, 0x10d8, 0x10d9, 0x10da, 0x10db, 0x10dc, 0x10f2, 0x10dd,
+  /* 0xd0 */
+  0x10de, 0x10df, 0x10e0, 0x10e1, 0x10e2, 0x10f3, 0x10e3, 0x10e4,
+  0x10e5, 0x10e6, 0x10e7, 0x10e8, 0x10e9, 0x10ea, 0x10eb, 0x10ec,
+  /* 0xe0 */
+  0x10ed, 0x10ee, 0x10f4, 0x10ef, 0x10f0, 0x10f5,
+};
+
+static int
+georgian_ps_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c >= 0x80 && c < 0xa0)
+    *pwc = (ucs4_t) georgian_ps_2uni_1[c-0x80];
+  else if (c >= 0xc0 && c < 0xe6)
+    *pwc = (ucs4_t) georgian_ps_2uni_2[c-0xc0];
+  else
+    *pwc = (ucs4_t) c;
+  return 1;
+}
+
+static const unsigned char georgian_ps_page00[32] = {
+  0x80, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x8d, 0x8e, 0x8f, /* 0x88-0x8f */
+  0x90, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x9d, 0x9e, 0x00, /* 0x98-0x9f */
+};
+static const unsigned char georgian_ps_page01[72] = {
+  0x00, 0x00, 0x8c, 0x9c, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x8a, 0x9a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x9f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0x83, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char georgian_ps_page02[32] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x98, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+};
+static const unsigned char georgian_ps_page10[40] = {
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc8, /* 0xd0-0xd7 */
+  0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xcf, 0xd0, 0xd1, /* 0xd8-0xdf */
+  0xd2, 0xd3, 0xd4, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, /* 0xe0-0xe7 */
+  0xdb, 0xdc, 0xdd, 0xde, 0xdf, 0xe0, 0xe1, 0xe3, /* 0xe8-0xef */
+  0xe4, 0xc7, 0xce, 0xd5, 0xe2, 0xe5, 0x00, 0x00, /* 0xf0-0xf7 */
+};
+static const unsigned char georgian_ps_page20[48] = {
+  0x00, 0x00, 0x00, 0x96, 0x97, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x91, 0x92, 0x82, 0x00, 0x93, 0x94, 0x84, 0x00, /* 0x18-0x1f */
+  0x86, 0x87, 0x95, 0x00, 0x00, 0x00, 0x85, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x89, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x8b, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+};
+
+static int
+georgian_ps_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x0080 && wc < 0x00a0)
+    c = georgian_ps_page00[wc-0x0080];
+  else if ((wc >= 0x00a0 && wc < 0x00c0) || (wc >= 0x00e6 && wc < 0x0100))
+    c = wc;
+  else if (wc >= 0x0150 && wc < 0x0198)
+    c = georgian_ps_page01[wc-0x0150];
+  else if (wc >= 0x02c0 && wc < 0x02e0)
+    c = georgian_ps_page02[wc-0x02c0];
+  else if (wc >= 0x10d0 && wc < 0x10f8)
+    c = georgian_ps_page10[wc-0x10d0];
+  else if (wc >= 0x2010 && wc < 0x2040)
+    c = georgian_ps_page20[wc-0x2010];
+  else if (wc == 0x2122)
+    c = 0x99;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/hkscs1999.h b/graf2d/win32gdk/gdk/src/iconv/hkscs1999.h
new file mode 100644
index 00000000000..37327633968
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/hkscs1999.h
@@ -0,0 +1,3005 @@
+/*
+ * Copyright (C) 1999-2006 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * HKSCS:1999
+ */
+
+static const unsigned short hkscs1999_2uni_page88[627] = {
+  /* 0x88 */
+  0x06c0, 0x06c1, 0x06c2, 0x06c3, 0x06c4, 0x720c, 0x06c5, 0x71d1,
+  0x71cd, 0x06c6, 0x06c7, 0x71cb, 0x8c68, 0x06c8, 0x71ca, 0x06c9,
+  0x06ca, 0x06cb, 0x06cc, 0x720e, 0x06cd, 0x06ce, 0x0080, 0x0041,
+  0x010d, 0x0040, 0x0092, 0x0049, 0x009a, 0x0048, 0x00cc, 0x0053,
+  0x0111, 0x0052, 0x70fd, 0x02be, 0x70fd, 0x02c0, 0x004a, 0x0081,
+  0x0061, 0x010e, 0x0060, 0x0151, 0x0093, 0x0069, 0x009b, 0x0068,
+  0x00ab, 0x006d, 0x0110, 0x006c, 0x00cd, 0x0073, 0x0112, 0x0072,
+  0x00eb, 0x007a, 0x0114, 0x0079, 0x0116, 0x0118, 0x011a, 0x011c,
+  0x007c, 0x70fd, 0x02bf, 0x70fd, 0x02c1, 0x006a, 0x0161, 0x041a,
+  0x041b, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  /* 0x89 */
+  0xf029, 0x8005, 0x70fd, 0x374a, 0x70fd, 0x70fd, 0x207d, 0x40dd,
+  0x6dce, 0x62df, 0x70fd, 0x70fd, 0xd275, 0x36d1, 0x215a, 0x2168,
+  0x21e8, 0x2396, 0x23b4, 0x23dc, 0x2424, 0x24e1, 0x24e8, 0x257b,
+  0x258e, 0x2611, 0x2618, 0x2922, 0x2b30, 0x2b44, 0x2b47, 0x2b72,
+  0x2b74, 0x2da6, 0x2dde, 0x2ddf, 0x2eda, 0x30c6, 0x327b, 0x37c9,
+  0x3a3e, 0x3a44, 0x3aa5, 0x3f8e, 0x42bc, 0x4735, 0x50a4, 0x50ac,
+  0x50ba, 0x50c7, 0x50cf, 0x50df, 0x5106, 0x5137, 0x547a, 0x54cf,
+  0x556f, 0x5b46, 0x5d3e, 0x5d62, 0x60a6, 0x60a7, 0x60ae, 0x4611,
+  0x4efc, 0x4fcd, 0x3b86, 0x4cc9, 0x2467, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x628c, 0x4ab8, 0x625e, 0x52bc, 0x70fd, 0x5e4b, 0x52f6,
+  0x78e7, 0x70fd, 0x70fd, 0x529f, 0x6f47, 0x1f8d, 0x6e49, 0x6e8c,
+  0x1efe, 0xebb6, 0xcd4e, 0x6e8a, 0xee73, 0x0901, 0x70fd, 0x409a,
+  0x543e, 0x4719, 0x70fd, 0x1c11, 0x6b6c, 0x6b8f, 0x7019, 0x4b87,
+  0xdcac, 0x8a8a, 0x7650, 0x9526, 0x2064, 0x20c1, 0x20c0, 0x20c7,
+  0x20ff, 0x212b, 0x2177, 0x078c, 0x21fd, 0x1148, 0x2243, 0x22c8,
+  0x07bd, 0x07d3, 0x07e5, 0x23c6, 0x2b45, 0x241b, 0x243c, 0x2445,
+  0x20c9, 0x24b9, 0x24d0, 0x2567, 0x0907, 0x25e9, 0x0891, 0x25f0,
+  0x0893, 0x2602, 0x2663, 0x08ad, 0x08b2, 0x09c1, 0x26d3, 0x26e3,
+  0x26f4, 0x26f9, 0x2710, 0x272f, 0x2758, 0x2763, 0x2768, 0x08d8,
+  0x277f, 0x08e5, 0x08ff, 0x2817, 0x0905,
+  /* 0x8a */
+  0xd784, 0x2765, 0x70fd, 0x7b02, 0x7bd5, 0xb42b, 0x27d0, 0x96c6,
+  0x0d2c, 0x7401, 0x5f86, 0xb138, 0xe665, 0x1353, 0xd97e, 0x497a,
+  0x9638, 0x0d74, 0x1ad5, 0xda1d, 0xc7b2, 0xb16a, 0x371d, 0x7c3c,
+  0x7e74, 0x7b95, 0x7fb4, 0x36cd, 0x5fbe, 0x7d56, 0x7acb, 0x7e24,
+  0x96a9, 0xdad6, 0xaa13, 0x70fd, 0x7c06, 0xe9cd, 0xd9a9, 0x1af4,
+  0xb227, 0x96c2, 0x6bb2, 0x0da7, 0xe6f4, 0x12ed, 0x0846, 0xb587,
+  0xe754, 0xd3c8, 0x9744, 0x6dee, 0x6915, 0x70fd, 0x16d9, 0xbfe5,
+  0x36f4, 0x2723, 0x974c, 0x95ca, 0x7f37, 0x0d3b, 0x7f2f, 0xc49a,
+  0xc4d6, 0xd4a0, 0x372a, 0xb392, 0x7b03, 0x5fa8, 0x8de1, 0xe14c,
+  0x7731, 0x70fd, 0x1b0b, 0x7269, 0x12fa, 0x2ab3, 0x978d, 0x70fd,
+  0xaac8, 0x75bc, 0xbfd7, 0x7e0c, 0x7c56, 0x27b9, 0x13bb, 0x16ba,
+  0x70fd, 0x1d74, 0x94e6, 0x7f5d, 0x53aa, 0x69f5, 0x7c5c, 0x35b9,
+  0x0d3e, 0x9275, 0x5f00, 0x28e1, 0x36bc, 0x1143, 0x70fd, 0xf101,
+  0x7cc9, 0x950f, 0x96c9, 0x70fd, 0x7f88, 0xa142, 0x0cd2, 0x0d46,
+  0xdb1b, 0x08b8, 0xbdc9, 0x8d07, 0x2892, 0x7df1, 0x96b2, 0xe720,
+  0x07fc, 0x3e7d, 0xb1bb, 0x70fd, 0x70fd, 0xd0f4, 0x988b, 0x8e48,
+  0xf15b, 0xe24d, 0x7d3a, 0x7af4, 0xc5dc, 0x5193, 0x7f8f, 0x9303,
+  0x9439, 0x093b, 0xb4a3, 0x7d4c, 0x7e4d, 0x7d6a, 0x1293, 0x7df0,
+  0x7c07, 0x800f, 0x7d0c, 0x70fd, 0x7d6b, 0x7a69, 0x7c08, 0x7f80,
+  0x7ffd, 0x12f9, 0x9196, 0x3672, 0x7e6d,
+  /* 0x8b */
+  0x9d34, 0xd1b9, 0x95ce, 0x7c3e, 0x7c3f, 0x9651, 0x9655, 0x0d58,
+  0x7d58, 0x7f87, 0x7dee, 0xf132, 0xc890, 0xe252, 0xe2d9, 0xe24a,
+  0x66aa, 0x270c, 0x54c4, 0x27f9, 0x70fd, 0xec83, 0x6d26, 0x6bb6,
+  0xd29e, 0x97ee, 0x4340, 0x536d, 0x52ec, 0x2e5c, 0xc3b2, 0x5334,
+  0x0ad7, 0x259f, 0xd97d, 0x62b6, 0x7dba, 0x7ccf, 0x7d37, 0x7dbb,
+  0x091d, 0xb16b, 0x0949, 0x7b96, 0x28ef, 0x92b5, 0x7f89, 0x7cd0,
+  0x7d38, 0x7f38, 0x8008, 0xda87, 0x8315, 0x7d39, 0xb1d0, 0x97a4,
+  0x2c94, 0x7edd, 0x7ede, 0x7fb5, 0x7fb6, 0x29dc, 0x7cd1, 0xd214,
+  0xdb4d, 0x7e75, 0x7d3b, 0xb47e, 0x0a43, 0x7e76, 0x8040, 0xb598,
+  0xefbd, 0xae5a, 0x867a, 0xa6b7, 0xdafc, 0x2ad9, 0x24a8, 0x095a,
+  0xb8bd, 0x4db2, 0x2da8, 0x1b00, 0x1dec, 0x6fa7, 0x1ce7, 0x6d1f,
+  0x6c8d, 0xbb74, 0x9abd, 0x283b, 0x0932, 0x28c9, 0x2068, 0x2b42,
+  0x8901, 0xf238, 0x6851, 0x7186, 0x209b, 0x20fb, 0x087e, 0x2e63,
+  0x3191, 0x3204, 0x0c3a, 0x348c, 0x3775, 0x3dba, 0x3e75, 0x3e7a,
+  0x426c, 0x442b, 0x206c, 0x44ad, 0xad69, 0x5152, 0x4b3b, 0x4ef9,
+  0x5153, 0xc12a, 0x0801, 0x70fd, 0xc1cb, 0x5202, 0x5280, 0xc412,
+  0xc711, 0x259d, 0x59e4, 0x5b41, 0xd3b2, 0x5d20, 0x5e5d, 0x6585,
+  0x6678, 0x667f, 0x66e8, 0xe30f, 0x68e6, 0x6975, 0x69ce, 0x69de,
+  0x6a63, 0xe790, 0x6d7c, 0x6e9f, 0x6f44, 0x3daf, 0x7047, 0x2077,
+  0x7187, 0x671d, 0x3477, 0x65a2,
+};
+static const unsigned short hkscs1999_2uni_page8d[3140] = {
+  /* 0x8d */
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x2f7e, 0x2f88, 0x2f96, 0x10fc, 0x0b4f, 0x2fe4, 0x2ff9, 0x0b60,
+  0x0b78, 0x3082, 0x30fd, 0x3165, 0x31c3, 0x0c48, 0x0c54, 0x0c7f,
+  0x0c8d, 0x3317, 0x337d, 0x2f25, 0x0cc9, 0x33f7, 0x33f9, 0x340f,
+  0x0cf8, 0x346c, 0x34d0, 0x3525, 0x3558, 0x0d38, 0x28f1, 0x0d43,
+  0x3622, 0x363b, 0x3647, 0x369a, 0x0d8b, 0x3700, 0x2f55, 0x2861,
+  0x701f, 0x0dd7, 0x37c6, 0x0dfd, 0x383f, 0x3893, 0x0e32, 0x38d2,
+  0x0e62, 0x3956, 0x0e82, 0x39e4, 0x3a40, 0x0e98, 0x3a8a, 0x3ac4,
+  0x0eb2, 0x0eb1, 0x0ebb, 0x3b49, 0x3b83, 0x445c, 0x3ba4, 0x3bdf,
+  0x3bc5, 0x0efc, 0x3c16, 0x0f1d, 0x3ca5, 0x3cb4, 0x3cb1, 0x3cc2,
+  0x0f2c, 0x3cd9, 0x0f32, 0x3ceb, 0x3cf5, 0x3d14, 0x3d36, 0x3dc1,
+  0x3e01, 0x3e2a, 0x3eb5, 0x3eea, 0x0fcb, 0x3f42, 0x3f46, 0x3f66,
+  0x3fc1, 0x0fef, 0x3fe4, 0x3ff1, 0x4015, 0x4018, 0x4029, 0x4086,
+  0xdfc0, 0x40bb, 0x40e2, 0x40da, 0x6fff, 0x40e8, 0x40e9, 0x4124,
+  0x4134, 0x1046, 0xa481, 0x4181, 0x41be, 0x106a, 0x1075, 0x43b7,
+  0x2ed9, 0x108a, 0x422c, 0x1091, 0x4250, 0x4254, 0x426f, 0x427f,
+  0x4289, 0x73e5, 0x16c1, 0x0931, 0x7d98,
+  /* 0x8e */
+  0xa417, 0x29fe, 0xcc13, 0x433e, 0xb920, 0x098e, 0x3be2, 0xe1e9,
+  0x2db4, 0x4c49, 0xb9a1, 0xe659, 0x4c65, 0x4c7d, 0xba6c, 0x4cbb,
+  0x4cb0, 0x4cc2, 0x4cc3, 0x43d1, 0xc30d, 0x14ca, 0x4cda, 0x4cdd,
+  0x4cea, 0x14ef, 0x26f2, 0xbc01, 0x4d0b, 0x4d55, 0x4d29, 0xb5ce,
+  0xbcfe, 0x4da2, 0x4d6f, 0x559c, 0xbbb4, 0xc9bf, 0x4dd0, 0x5621,
+  0x4d92, 0x70fd, 0xbd20, 0x10ad, 0xbc65, 0x5692, 0x4dfa, 0x70fd,
+  0x4e35, 0xbcc1, 0x4e44, 0x4e83, 0xad02, 0x4ea6, 0x38bd, 0xaab8,
+  0x4ec9, 0x4ec7, 0x4ee6, 0x4e74, 0x4ef3, 0x4ef5, 0x70fd, 0x5067,
+  0x181d, 0xcb84, 0x4f5d, 0xcc16, 0x468d, 0x4f89, 0x4fab, 0x4335,
+  0x4fb3, 0x70fd, 0xa597, 0xbf69, 0x4fe4, 0x1013, 0x4ff5, 0x8639,
+  0x4fe5, 0xdbed, 0x70fd, 0xc021, 0xc05a, 0x506e, 0x5092, 0x162b,
+  0x656c, 0x5027, 0x5140, 0x5141, 0x5147, 0x4b36, 0xc150, 0x6ae1,
+  0x5197, 0xc1d1, 0x51a3, 0x84a1, 0x7168, 0x185c, 0xa066, 0x1803,
+  0xdbba, 0x51fa, 0xc309, 0x70fd, 0x5208, 0x521d, 0x70fd, 0x522f,
+  0xedc7, 0xca03, 0x523b, 0x523c, 0x5261, 0x9214, 0x1c89, 0xc426,
+  0xa363, 0xc4a8, 0x3965, 0x52a7, 0xe048, 0x5307, 0x531a, 0x2af0,
+  0x91f6, 0x3ebf, 0xc318, 0xb2f8, 0x3727, 0x834a, 0x5418, 0x869e,
+  0x3c93, 0xaee5, 0xaf15, 0x177a, 0x5429, 0x7a0d, 0xc812, 0xa2fe,
+  0x2239, 0x83bd, 0x56e2, 0x5562, 0xc84a, 0xae27, 0x9e30, 0x85b3,
+  0xa378, 0x54aa, 0x3b5b, 0xf2d4, 0x14db,
+  /* 0x8f */
+  0x574b, 0x54d0, 0x551a, 0x7cd6, 0x85f4, 0x0a01, 0x9afd, 0x9e5a,
+  0x547b, 0x54e2, 0x5518, 0xa3cb, 0xcae3, 0xc845, 0xc8d7, 0x9ece,
+  0x10bf, 0x551d, 0x282c, 0x5585, 0x180b, 0xcae5, 0x55ac, 0x70fd,
+  0x55d3, 0x07be, 0xcc14, 0x3c97, 0x575a, 0x07d6, 0xcb82, 0x98ef,
+  0x5658, 0xbbe4, 0x5671, 0x10d3, 0x17e4, 0x3ce7, 0x564a, 0xa275,
+  0x4b58, 0x70fd, 0xc8d6, 0xcbb7, 0xcb83, 0x56de, 0x70fd, 0x5591,
+  0x17a0, 0x5693, 0x56e4, 0xbc91, 0x1540, 0xbcc0, 0x1843, 0x5734,
+  0x2d32, 0xcbd9, 0x1827, 0x5773, 0x1816, 0x39ff, 0x57d6, 0xdde5,
+  0xddfb, 0x5781, 0xcdc8, 0x57c2, 0x8402, 0xce0d, 0xf2f2, 0x186a,
+  0x57e8, 0x0988, 0x86e2, 0x2637, 0xcfda, 0x583e, 0x58f1, 0xee38,
+  0x596e, 0x9627, 0x5931, 0x595a, 0x598f, 0x28a1, 0x582c, 0x3a96,
+  0x190f, 0x59c5, 0x59c6, 0xd160, 0xa339, 0xd164, 0x59de, 0x5a1c,
+  0x195b, 0x5a34, 0x5a35, 0x3601, 0x5a45, 0x4977, 0xd24f, 0x5b07,
+  0x5b0a, 0x70fd, 0x70fd, 0x5b27, 0x5b3c, 0xe025, 0x5b67, 0xd424,
+  0xd5bd, 0x5c1c, 0x4993, 0x62fe, 0x5c10, 0xd559, 0x4ce9, 0xd63a,
+  0xa4cf, 0x1a13, 0xd638, 0x437c, 0x5c8c, 0x5c9f, 0xb630, 0xb6e5,
+  0x5cbf, 0x5ccc, 0x5ccd, 0x5c29, 0xaefa, 0x5d10, 0x5d1b, 0x5c2f,
+  0x851f, 0x1915, 0x59cf, 0x5ddb, 0xd754, 0xd78f, 0xf314, 0x0a65,
+  0xd753, 0x5e16, 0xd798, 0xd7bd, 0x5e52, 0x5e43, 0x8750, 0x5e1b,
+  0x425c, 0x5e51, 0xb089, 0x11d0, 0x70fd,
+  /* 0x90 */
+  0x5ee9, 0xd8c2, 0x7ed4, 0xae0a, 0x0ebc, 0xda7c, 0xce4c, 0x4ce7,
+  0x5fed, 0x5ff6, 0x6003, 0x63d4, 0x6059, 0x606d, 0xdbe5, 0xdc52,
+  0x60e5, 0x6403, 0xef9f, 0x7950, 0x60f3, 0x1c2a, 0xdfde, 0xdd3d,
+  0xa33b, 0x3138, 0x9be2, 0x6139, 0xed94, 0xde3c, 0xdd01, 0x8ee5,
+  0x0cc0, 0xcc17, 0x6177, 0xdd3c, 0xd5be, 0x61a1, 0xdd6c, 0xddcb,
+  0x61e8, 0xde93, 0x6204, 0xde66, 0x61ee, 0x70fd, 0x6267, 0x0e30,
+  0x62a9, 0x62c4, 0x4eac, 0xdf33, 0x8b09, 0x630e, 0x3edf, 0x6341,
+  0x6362, 0xb739, 0x70fd, 0xe0c6, 0xa25b, 0xe10c, 0xb75b, 0x7bf1,
+  0x642c, 0x646b, 0xe0e1, 0xe1eb, 0x428f, 0x2d03, 0xe0e2, 0xe0e5,
+  0x1c65, 0x6344, 0xe1ec, 0xe239, 0xe1ff, 0x6473, 0x655b, 0x5ffc,
+  0x6685, 0x66a6, 0x6526, 0x66a0, 0x41f6, 0x15b9, 0x917a, 0xde58,
+  0x813c, 0xa3ae, 0x1cdf, 0x3e5c, 0x677b, 0x6796, 0x146c, 0x67a3,
+  0xcc15, 0x341a, 0x67b6, 0x4af5, 0xe0e0, 0x67bd, 0x260c, 0x1ca1,
+  0xc9f8, 0x7334, 0xc290, 0xe46f, 0xe4a5, 0xaf51, 0x8755, 0x9c8a,
+  0x6831, 0x5802, 0x6836, 0x1d0f, 0x183d, 0x1885, 0xaf69, 0x4275,
+  0x2d81, 0x681b, 0x70fd, 0xe595, 0x6857, 0x2d8a, 0xe5ab, 0x685f,
+  0x6525, 0x2310, 0x9a37, 0x9a3c, 0x6889, 0x689f, 0x68b1, 0x68be,
+  0x68c0, 0x68d2, 0x68e0, 0xb66c, 0x68ee, 0x461c, 0xe5f3, 0x70fd,
+  0x68f5, 0xe5dd, 0xd47a, 0x1d91, 0x6934, 0x6933, 0x694b, 0x6966,
+  0x0e4e, 0xceb5, 0x1051, 0x76b0, 0xa69c,
+  /* 0x91 */
+  0xb886, 0x69ca, 0x69b7, 0x69c8, 0x69c7, 0x1dbf, 0xca67, 0x8513,
+  0x27f0, 0x69e1, 0x69e6, 0x69ec, 0x6478, 0x6a39, 0xaea9, 0x1e32,
+  0xe7d7, 0xe885, 0x6af5, 0x6b0c, 0x6b3b, 0x6b10, 0x6b58, 0xb8a5,
+  0x0a04, 0xe471, 0xea55, 0x6be0, 0x6be2, 0xea05, 0x6bf4, 0x1ece,
+  0x6c14, 0x6c2d, 0xddc0, 0x2274, 0x6c34, 0xc768, 0x0c03, 0x99fd,
+  0x6c50, 0x6c40, 0xeafe, 0x2c85, 0x86a3, 0x6c8e, 0xa78b, 0x6d02,
+  0x6cff, 0x6d0c, 0xec28, 0x6e54, 0xed37, 0xeed2, 0xeeeb, 0xee21,
+  0xee63, 0xef1f, 0x6dfe, 0x6e03, 0xee74, 0x6e8e, 0x3ac8, 0x6e44,
+  0x8d9b, 0xeed3, 0xef60, 0x877b, 0xef73, 0x6db9, 0xedf9, 0xefb4,
+  0x6f10, 0x6f15, 0x6f1e, 0x6f22, 0x1ff4, 0x6f2a, 0x6f2f, 0xa8a4,
+  0x6f41, 0x0ea0, 0x0d25, 0x101d, 0x2172, 0x0afe, 0xe22b, 0x6f82,
+  0x6f88, 0x1e56, 0x6524, 0xcae2, 0x6f97, 0x70fd, 0x6fb9, 0x28df,
+  0x28ca, 0x6fc5, 0x6ab8, 0xe44b, 0x68f2, 0x567f, 0x6fe2, 0x6fe9,
+  0x4cdc, 0x700e, 0x4416, 0x1e7e, 0xadf5, 0xae3b, 0x4377, 0xae78,
+  0xa888, 0xaed1, 0x459e, 0xe1da, 0x873a, 0x4b9f, 0xdf7e, 0xe336,
+  0x6469, 0x64f3, 0xe044, 0x63ec, 0x6481, 0x64cb, 0xdf6c, 0xa9f9,
+  0x4417, 0x11eb, 0x4972, 0x4c43, 0x42d0, 0xa9b3, 0xa938, 0x437e,
+  0x862f, 0x42a3, 0x86fe, 0x9e99, 0x11c7, 0x86c5, 0xb62f, 0x8638,
+  0x0a62, 0x853b, 0x8679, 0x0a21, 0x85b4, 0x8711, 0xbecb, 0x0a63,
+  0x8500, 0x299b, 0xaea5, 0x82be, 0x8168,
+  /* 0x92 */
+  0x8286, 0x8376, 0x5703, 0x9fa6, 0x70fd, 0x5655, 0xae14, 0xcea5,
+  0xa3b1, 0xb6dc, 0xa43b, 0xcd92, 0x17f4, 0x9fee, 0xe91d, 0xcc66,
+  0x3a39, 0x0a73, 0x0f55, 0x10e7, 0x2aac, 0x8762, 0x3a50, 0x1357,
+  0xa03f, 0xa621, 0xa5cb, 0xa64f, 0xc961, 0x270b, 0x28de, 0xc471,
+  0x28d2, 0x7e9f, 0x7a68, 0x7ccd, 0x64c6, 0xe113, 0x649c, 0x2138,
+  0x236b, 0x0b59, 0xa976, 0x20fc, 0x7525, 0x743f, 0x218b, 0x21ca,
+  0xb7d1, 0x2ca8, 0x726b, 0x748b, 0x0cd9, 0x73ca, 0x74d4, 0x0775,
+  0x2169, 0x7380, 0xe3b3, 0x7335, 0x5c5a, 0x72cc, 0x20d8, 0x230d,
+  0x234d, 0x21e2, 0x2143, 0xae8e, 0xa3ca, 0x2182, 0x226e, 0x22ac,
+  0x22c1, 0x220c, 0x2225, 0x2298, 0x233c, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x4076, 0x9e95, 0xa3b9, 0xa3ff, 0x3fb2, 0x86c4, 0xa3c9,
+  0x23e8, 0x2403, 0x7660, 0x17dd, 0x7563, 0x7552, 0x7551, 0x5eba,
+  0xe09c, 0x770e, 0x2499, 0x24e4, 0x77f3, 0x2521, 0x70fd, 0x197a,
+  0x438c, 0xa8cc, 0x7ae0, 0xae2c, 0x7fa4, 0x3c11, 0x7cdd, 0x70fd,
+  0x11de, 0x4699, 0x4614, 0x4656, 0x4598, 0x1e4e, 0xaf3c, 0xa5cd,
+  0x2610, 0x08c4, 0x440f, 0xa609, 0x27f4, 0x7405, 0x270d, 0x7a86,
+  0x295d, 0x635d, 0x67f4, 0x6466, 0x2a1d, 0x29cd, 0x29bf, 0x097e,
+  0x2b0b, 0x2cd9, 0xe046, 0x853a, 0x85af, 0x8550, 0x2c6c, 0x2bf8,
+  0x638f, 0x2cbe, 0x2d0f, 0x2c52, 0xba06, 0x8833, 0x86a1, 0xa7d5,
+  0x0a35, 0x3f45, 0x4643, 0x2c61, 0xbe03,
+  /* 0x93 */
+  0x2cc1, 0xe1d7, 0x74d3, 0x64e0, 0x468c, 0x81c3, 0x4305, 0x1c72,
+  0x6508, 0xdffb, 0x64bd, 0x0ae0, 0x2e5e, 0x2ede, 0x309e, 0x3088,
+  0x87d6, 0x87bc, 0xa1ee, 0x310d, 0x2d8f, 0x8743, 0x8744, 0x0a41,
+  0x86e0, 0x0a1d, 0x853e, 0x0a13, 0x532a, 0xe047, 0x8a7a, 0x9db2,
+  0xdfa8, 0x314c, 0x314e, 0x8767, 0x85eb, 0x2cab, 0x857b, 0x2d84,
+  0x57d4, 0xd17d, 0x59e0, 0x32be, 0x9360, 0x912b, 0x321b, 0x11b8,
+  0x90ef, 0x90fe, 0xe448, 0xccb3, 0x3400, 0x713e, 0x7146, 0x911b,
+  0x33d9, 0x33d8, 0x32b5, 0x969b, 0x9707, 0xabd4, 0xe50d, 0x36b1,
+  0xab65, 0x95aa, 0x0d69, 0x9562, 0x9d90, 0xe86a, 0x9878, 0x3577,
+  0xf09b, 0x36f6, 0x3571, 0x3611, 0xae63, 0x9767, 0x34e4, 0x96a1,
+  0x367b, 0x37ab, 0x3bb2, 0x0f34, 0x9a0e, 0x9c2d, 0xae09, 0x9c2b,
+  0x274d, 0x9c60, 0x8719, 0xe5ff, 0x390e, 0x9c09, 0x9b33, 0x0e20,
+  0x1490, 0xb704, 0xe122, 0xb70f, 0x853c, 0xb6db, 0xb625, 0x4aee,
+  0x9a83, 0x866a, 0x9bb4, 0x07a4, 0x9b8f, 0x9b02, 0xa809, 0x38ce,
+  0xca64, 0x38ab, 0x1e53, 0x3870, 0xd370, 0x8aab, 0x38a3, 0x9c52,
+  0x9c61, 0x385e, 0xb972, 0x0c11, 0xa13a, 0xa0bc, 0x0ed9, 0xa0a2,
+  0x9d3e, 0x46d0, 0x0ed6, 0x39cf, 0xab2a, 0x3af6, 0x3a5e, 0x0f04,
+  0x3cfe, 0x0ba3, 0xa0d5, 0xa9c7, 0x3c73, 0x3c92, 0x3d09, 0x3d45,
+  0x8752, 0x3751, 0x3ad8, 0x3c8c, 0x0f17, 0x3cba, 0x3d97, 0xa500,
+  0xa25a, 0x64a0, 0x63f2, 0xe1ea, 0xe0cb,
+  /* 0x94 */
+  0x6389, 0xd8de, 0xdfdc, 0x6567, 0x3fe5, 0x410b, 0xae6c, 0x70fd,
+  0xa4bf, 0x108f, 0x4004, 0xa57c, 0x2c7d, 0x400a, 0x2a87, 0x3f64,
+  0x4a42, 0x433b, 0xa85a, 0xa7b6, 0x42f1, 0x4450, 0x4487, 0x4494,
+  0xac4f, 0xac25, 0x23b9, 0xaf24, 0x766b, 0x467a, 0xa438, 0x9f5f,
+  0xaeca, 0xad97, 0xbf21, 0x1206, 0x11b1, 0xaf5f, 0xe223, 0xa475,
+  0x32e7, 0x11f3, 0x46cc, 0x463c, 0x6487, 0x4637, 0x179f, 0xcb2a,
+  0x1851, 0x4783, 0x1263, 0xb099, 0xb0c6, 0x1258, 0x4755, 0x4873,
+  0xf0c6, 0x0e59, 0x4668, 0xe0cc, 0xae2b, 0xae0e, 0x0e3b, 0x10cd,
+  0xaece, 0x11ff, 0xae45, 0xad73, 0x62fa, 0x2972, 0x6442, 0xe0e3,
+  0x86a4, 0x231f, 0xb4e1, 0xb4a7, 0x4978, 0x9bb2, 0x490e, 0x490f,
+  0x497b, 0xab97, 0xa081, 0x0d9e, 0xad70, 0x4638, 0x469b, 0x11bf,
+  0xaf3a, 0xaf47, 0x13c8, 0xaf16, 0xc0ae, 0x6407, 0xb701, 0x4a1e,
+  0x4a8d, 0x4a88, 0x4ad2, 0x45d0, 0x4b59, 0xd281, 0xb863, 0x140e,
+  0x70fd, 0x5696, 0x4ba5, 0x3c6d, 0xa43a, 0x4c3a, 0x4bf4, 0x146e,
+  0x8526, 0x1432, 0x6335, 0x4bf1, 0x7c0c, 0xae0c, 0x7359, 0xa33a,
+  0x85ae, 0x08d7, 0x27ab, 0x08b0, 0x09ea, 0x7294, 0x7acd, 0x4ce2,
+  0x2c99, 0x91f5, 0xbaef, 0xbadc, 0x2c4d, 0x731b, 0x4af0, 0x2c6a,
+  0xbbc6, 0x4cfe, 0x14f9, 0x4e5d, 0x4e6d, 0x1511, 0xbbb3, 0xbe3c,
+  0xbe26, 0x4ecd, 0xae79, 0x85f0, 0x4e8e, 0x4e7c, 0x4eae, 0x3cf2,
+  0x4fdc, 0x5007, 0x4fd3, 0x514e, 0xc121,
+  /* 0x95 */
+  0xc05c, 0xd648, 0x4f97, 0xbe02, 0x156a, 0xc8b5, 0x7856, 0x3a16,
+  0x714e, 0x9ecf, 0x2a04, 0xc292, 0xc278, 0xade2, 0x51dd, 0x4d27,
+  0x77ac, 0xbb29, 0xbd43, 0x4d0c, 0xbd8e, 0x6ae6, 0x5805, 0x6b63,
+  0x3c5c, 0x9d7f, 0x0d22, 0xae77, 0xc3ed, 0x6b1f, 0xc3e0, 0x5680,
+  0xce67, 0xca11, 0x17ea, 0x5337, 0x1702, 0x52c6, 0x5309, 0x5342,
+  0xc574, 0x69c3, 0xc802, 0x5462, 0x5465, 0xc811, 0x5653, 0xcae7,
+  0x57d0, 0xcf1b, 0x2cc6, 0x147f, 0x8680, 0x2d6b, 0x86e1, 0x2d24,
+  0x8718, 0x5860, 0xf2fc, 0xa30f, 0x59ad, 0xd022, 0x2c42, 0x59ee,
+  0x2185, 0x5a07, 0x5a3f, 0x5a66, 0x5ae5, 0x5acd, 0xb803, 0x5ad4,
+  0xd2c5, 0xd2c4, 0xe1f5, 0xe1d9, 0xe19c, 0xdff9, 0x11ad, 0x56a3,
+  0x19f5, 0x19cf, 0x0b32, 0x5bbd, 0x5b9c, 0xe608, 0x318d, 0x632b,
+  0xa7c4, 0x3814, 0x4329, 0x42c4, 0x8685, 0x6ded, 0x5ddf, 0x5e29,
+  0xd7dc, 0x2bda, 0x49c3, 0x2c30, 0x166e, 0x0a14, 0x5f6a, 0x5fe7,
+  0xb009, 0x6070, 0x608a, 0x15f4, 0x3e98, 0x41bb, 0x8ee1, 0x1b9b,
+  0x4179, 0x408b, 0x861a, 0x6ce9, 0x09f5, 0xadaf, 0x61fb, 0x70fd,
+  0x27b1, 0x1c06, 0x62bb, 0x6504, 0xe04b, 0x1362, 0xe0fc, 0x6527,
+  0xe21d, 0xe23b, 0x56e5, 0x5bab, 0x6699, 0x66a7, 0x6697, 0x6696,
+  0xe2b4, 0x4645, 0x11c2, 0xad7f, 0xaec2, 0xa92a, 0x11e7, 0x9ba5,
+  0x678f, 0xe3e7, 0xe366, 0xe365, 0x11cc, 0xae6d, 0xaef8, 0xa52e,
+  0x4612, 0x466b, 0x11fc, 0x6841, 0xe470,
+  /* 0x96 */
+  0x3a87, 0x1d1d, 0xe453, 0xb91f, 0x70fd, 0x6468, 0xdf89, 0xe226,
+  0xe12f, 0xc23e, 0x63ba, 0x2d51, 0x5ce9, 0x1c3c, 0x45f9, 0xa75b,
+  0x689b, 0x6871, 0x6a38, 0x7de6, 0x3001, 0xe1c5, 0xaf32, 0x691f,
+  0xe65a, 0x63f6, 0xe6d7, 0x62e5, 0x17c0, 0xe150, 0xaee7, 0xe164,
+  0x69dc, 0xe045, 0x1200, 0x632a, 0x1c25, 0x5614, 0x6a3b, 0x6a4d,
+  0xd606, 0x10fd, 0x6a9b, 0x1e2f, 0x6aaa, 0x6b5c, 0xe165, 0xb988,
+  0x3ccf, 0x6b21, 0x2d3e, 0x6b2f, 0xe871, 0x1e50, 0xe8c8, 0x6abc,
+  0x1e7d, 0x1e57, 0x647d, 0x2ab2, 0x81c2, 0x2a62, 0xae38, 0x83a8,
+  0x4a44, 0x921f, 0xa338, 0x3b05, 0x107d, 0x6558, 0x0c67, 0x3390,
+  0x9281, 0x946b, 0x3347, 0x6d4f, 0x6d53, 0x6d7b, 0x6d35, 0x6d10,
+  0x6c7f, 0x6ccf, 0xebed, 0x6c9f, 0xef35, 0xee3e, 0x6da1, 0x1f6e,
+  0xa644, 0x6e98, 0x1f70, 0x6d8c, 0xeef4, 0xee2d, 0xee33, 0xe8af,
+  0x6e25, 0x56bd, 0xcb52, 0xcd1f, 0xc8c2, 0x57bc, 0x1833, 0xcae4,
+  0xcbc4, 0xcb30, 0x5620, 0x57ae, 0xcb40, 0xa0d7, 0xbfa4, 0x4be2,
+  0x9e9c, 0x9f40, 0x1c2d, 0xae5e, 0x1062, 0x64db, 0x63be, 0x6448,
+  0x737f, 0x4ab9, 0x6377, 0x654d, 0x2224, 0x0780, 0x61a4, 0xb6dd,
+  0x4a3d, 0x4a54, 0x4ab6, 0x4a4b, 0x8597, 0x9b49, 0xadc1, 0x09da,
+  0x21b2, 0x41da, 0x41d9, 0x70fd, 0x421e, 0x2654, 0xa6f5, 0x29fb,
+  0x2b33, 0x29ca, 0x6d96, 0x2a17, 0x4334, 0x07ef, 0xa6ec, 0x43eb,
+  0xc980, 0xb2d7, 0x70fd, 0x85f5, 0xe049,
+  /* 0x97 */
+  0x334c, 0x2d0e, 0x2c4b, 0x15bc, 0xa9c8, 0x0a6c, 0x1e3b, 0xdffc,
+  0x64bb, 0x64b8, 0x8716, 0x7ddd, 0x5672, 0xca00, 0x82d3, 0xa83a,
+  0x9626, 0xa901, 0x2bd4, 0xa337, 0xc501, 0x4fa8, 0xc05b, 0xbfe4,
+  0xae39, 0xae0b, 0xdffa, 0x63e5, 0x45e2, 0x11e9, 0x46b4, 0xe163,
+  0x86df, 0x11e1, 0xaf33, 0x3d18, 0x45f3, 0x45fb, 0x11d6, 0xaebe,
+  0xaf14, 0x8619, 0xaee6, 0x7467, 0x82e4, 0xae65, 0x4648, 0xad96,
+  0x42a5, 0xadf6, 0x6384, 0x45e6, 0x645f, 0x75be, 0x6431, 0xe0ce,
+  0xe016, 0x6486, 0xe1e7, 0xb755, 0x1c35, 0xe082, 0x436b, 0xadc3,
+  0x7bbf, 0x28e4, 0x769a, 0x7aab, 0x7b78, 0x2742, 0x4bc4, 0x863a,
+  0x4ffe, 0x8502, 0xaed0, 0x8692, 0x182e, 0x6501, 0x0a4a, 0xe0c0,
+  0xae2d, 0x2bf0, 0x86ff, 0x86c3, 0xd084, 0x2ce1, 0x0a22, 0xa2db,
+  0x09f0, 0x635f, 0x2cb9, 0xe081, 0x86a2, 0x6474, 0x0fcd, 0x79b4,
+  0x1d56, 0x0cca, 0x2334, 0x1069, 0x104c, 0x825c, 0x4375, 0x15fb,
+  0xda98, 0x400f, 0xe4a4, 0x17eb, 0x3f97, 0xd80f, 0x4267, 0x3eef,
+  0x0fd6, 0xa52d, 0xa3ad, 0x4002, 0x410c, 0x106f, 0x74b5, 0x4751,
+  0x09fc, 0x0808, 0x1980, 0x11da, 0x1b71, 0x2c04, 0x636e, 0x1c3e,
+  0x6081, 0xe21c, 0xc900, 0x2a52, 0x2a08, 0x0a16, 0x8312, 0x42fe,
+  0xa8a2, 0xaef1, 0x9963, 0x8170, 0x8f3d, 0x3af9, 0x3ba7, 0x8258,
+  0x9de5, 0xd6b4, 0x9fdf, 0xe083, 0xa0d6, 0x9d3a, 0xb05f, 0x3c5a,
+  0x9fad, 0xc9f7, 0x563e, 0x17df, 0x17ce,
+  /* 0x98 */
+  0xca66, 0xca91, 0xc9c2, 0xcd1e, 0x4117, 0xce49, 0x553d, 0x857a,
+  0x55ed, 0xc9c0, 0xcd93, 0x861b, 0x2bc9, 0x2cc2, 0x85f3, 0x2ca1,
+  0x2cb1, 0x8745, 0xa73c, 0x0a6d, 0x2c2f, 0x857c, 0x0a07, 0x438e,
+  0x6490, 0x38da, 0xa7e5, 0x2cae, 0x2c6b, 0xa7d3, 0x3c6b, 0xa439,
+  0xd276, 0xa99b, 0xa80a, 0x431d, 0xa799, 0xdfe1, 0x21f0, 0xca68,
+  0x2f02, 0xaa0e, 0xd80d, 0xa8fd, 0x3c4c, 0xa796, 0x81c4, 0x42a6,
+  0x4333, 0xa929, 0x10a5, 0x3f1f, 0xf1e5, 0xaecf, 0x5065, 0x2c2b,
+  0x2f6f, 0x10f3, 0x319c, 0xaedd, 0x861f, 0x4fa4, 0x5626, 0x26c5,
+  0xa1fa, 0x9c80, 0x72d4, 0x29be, 0x7815, 0x7699, 0x12e5, 0x8c1e,
+  0xefb6, 0x4203, 0xe51b, 0x2fb0, 0x458f, 0x4ed3, 0xe059, 0xe5e0,
+  0x2208, 0x51e7, 0x44cd, 0x4510, 0xd5f4, 0x4538, 0x4539, 0xb876,
+  0x4541, 0x4548, 0x11a9, 0xd618, 0x61ac, 0x43f5, 0xad72, 0x45e1,
+  0x53f6, 0x11ca, 0x490c, 0x11d1, 0x3ee2, 0x293d, 0x4619, 0x461e,
+  0x461f, 0x11e2, 0x11f0, 0x11f4, 0x11fa, 0x46d3, 0x120e, 0x1253,
+  0x4742, 0x476d, 0x4772, 0x478d, 0x127c, 0x47c8, 0x47dc, 0x12c0,
+  0x484d, 0x12d7, 0x4874, 0x12dc, 0x487a, 0xb29c, 0x4388, 0x2863,
+  0x5b00, 0x2aa9, 0x131d, 0x4943, 0x1339, 0x39a1, 0x1345, 0x091b,
+  0x4998, 0x136a, 0x136f, 0x2e9e, 0x49be, 0x49cb, 0x2b32, 0x4a18,
+  0x42b9, 0x4a1c, 0x13a8, 0x4a39, 0x4a47, 0x4a51, 0x4a66, 0x5648,
+  0xb6b5, 0x4b33, 0x3a43, 0x4b32, 0x1403,
+  /* 0x99 */
+  0x1409, 0x4b91, 0x4b99, 0x60fb, 0x4c06, 0x60fc, 0x1467, 0x4c91,
+  0x14b2, 0x4cbc, 0x5479, 0x14c4, 0x4ccf, 0x4cdb, 0x14cf, 0x2061,
+  0x4d62, 0x4d6c, 0x4d7b, 0x4e12, 0x4e1b, 0x1560, 0x157a, 0x4e7b,
+  0x4e9c, 0x158c, 0x4eb8, 0x1594, 0x4eed, 0x60d3, 0x42c0, 0x7b8f,
+  0x4fcf, 0x4fd4, 0x4fd0, 0x4ffd, 0x51ae, 0x51b4, 0x449f, 0x1697,
+  0x5220, 0x5225, 0x4d39, 0x522e, 0x5231, 0x5254, 0x10cc, 0x29f4,
+  0x42a0, 0x52b7, 0x52e9, 0x16ed, 0x530c, 0x452a, 0x530e, 0x5312,
+  0x4760, 0x5314, 0x1701, 0x0e79, 0x5356, 0x5359, 0x535a, 0x1713,
+  0x2a7a, 0x537c, 0x5384, 0x1725, 0x5393, 0x172d, 0x53a5, 0x2a2f,
+  0x53c1, 0x53e4, 0x5454, 0x178f, 0x54a6, 0x5476, 0x54ca, 0x54d8,
+  0x54ff, 0x17b0, 0x5557, 0x6769, 0x3bca, 0x5605, 0x42f5, 0x5664,
+  0x3323, 0x5688, 0x1804, 0x56be, 0x56e1, 0x56f8, 0x5710, 0x5738,
+  0x5752, 0x183b, 0x576f, 0x5770, 0x57a0, 0x1877, 0x5832, 0x5852,
+  0x5872, 0x58af, 0x6745, 0x590b, 0x1906, 0x1917, 0x5a2e, 0x5a7f,
+  0x5aa4, 0x5ac7, 0x5b11, 0xd467, 0x5ba9, 0x5bb8, 0x5c14, 0x5c34,
+  0x5d91, 0x5e14, 0x5e32, 0x5e5c, 0x1a98, 0x2a9f, 0x5f03, 0x1aed,
+  0x212e, 0x5f7a, 0x2818, 0x2994, 0x5fb1, 0x2835, 0x5ff0, 0x1b37,
+  0x600e, 0x6022, 0x6024, 0x602d, 0x6032, 0x60f7, 0x6101, 0x610a,
+  0x610c, 0x6173, 0x6ac4, 0x1bad, 0x69e0, 0x6313, 0x1c1e, 0x6328,
+  0x6358, 0x636b, 0x63b1, 0x63ae, 0x63bf,
+  /* 0x9a */
+  0x63e3, 0x63eb, 0x63f3, 0x63f4, 0x63fd, 0x6443, 0x6484, 0x64ad,
+  0x1c45, 0x1c51, 0x6f3f, 0x6517, 0x2541, 0x651d, 0x652d, 0x653e,
+  0x1c6a, 0x6554, 0x6579, 0x662d, 0x66a2, 0x1ca7, 0x66f4, 0x6733,
+  0x1ce5, 0x39e0, 0x1d24, 0x6840, 0x1d35, 0x68b2, 0x68c2, 0x2894,
+  0x1da4, 0x3328, 0x69b9, 0x1dd9, 0x69f1, 0x2a84, 0x6a0e, 0x6a19,
+  0x23f4, 0x6a1c, 0x6a37, 0x6a42, 0x6a5d, 0x6a62, 0x1e30, 0x6ac5,
+  0x1e5d, 0x6b3c, 0x6c0f, 0x4c83, 0x6c69, 0x6c81, 0x6cdd, 0x6cf1,
+  0x6cf4, 0x1f2d, 0x6d20, 0x0aaf, 0x8902, 0x6dc9, 0x6d3a, 0x6f7e,
+  0x2890, 0x6e13, 0x6e3d, 0x6e40, 0x6e7c, 0x65f6, 0x60f6, 0x6efb,
+  0x6f2c, 0x6f31, 0x6f3d, 0x6f46, 0x65dc, 0x6f62, 0x6f71, 0x6f78,
+  0x4cc8, 0x6fc4, 0x7194, 0x7377, 0x7460, 0x3b5a, 0x65c3, 0x2bec,
+  0x7597, 0x2a80, 0x65c1, 0x0af9, 0x7655, 0x7695, 0x76f6, 0x84fa,
+  0x2997, 0x4373, 0x79c2, 0x79cd, 0x7a7f, 0x26aa, 0xf1fb, 0x7a8b,
+  0x26de, 0x7abb, 0x7afb, 0x7b13, 0x7b25, 0x7b3c, 0x3327, 0x7b4d,
+  0x28ba, 0x7b75, 0x7b9d, 0x7bad, 0x7c2f, 0x7c72, 0x7c88, 0x3b95,
+  0x6d2f, 0x5925, 0x7cc4, 0x7cce, 0x7d97, 0x7e50, 0x7ded, 0x7d33,
+  0x2e60, 0x7e7c, 0x304b, 0x7f1c, 0x7f0f, 0x7f36, 0x395e, 0x7f3b,
+  0x7f48, 0x7f56, 0x0987, 0x7f7f, 0x7f93, 0x7fef, 0x7ffb, 0x25a4,
+  0x56ad, 0x81a3, 0x8235, 0x81f6, 0x5d01, 0x83f7, 0x8459, 0x8603,
+  0x8607, 0x20b8, 0x42bb, 0x866d, 0x87aa,
+  /* 0x9b */
+  0x886d, 0x8885, 0x896a, 0x89b0, 0x89ec, 0x8b48, 0x3503, 0x8b55,
+  0x8b95, 0x4398, 0x3a95, 0x8c85, 0x3c29, 0x0a08, 0x8ebc, 0x8f57,
+  0x8f7a, 0x922a, 0x9371, 0x944f, 0x54fd, 0x9467, 0x9493, 0x9515,
+  0x5b25, 0x9528, 0x60e0, 0x954e, 0x68b8, 0x957f, 0x6947, 0x6bbd,
+  0x964c, 0x70fd, 0x9688, 0x96b7, 0xbbe8, 0x9708, 0x9712, 0x97b7,
+  0x9795, 0x9842, 0x9934, 0x994c, 0x99b3, 0x99e6, 0x9c9f, 0x9d1e,
+  0x31f1, 0x3888, 0x38ff, 0xd579, 0x9e67, 0x9ef3, 0x70fd, 0xae3a,
+  0x70fd, 0x9f1a, 0xa016, 0x70fd, 0x7406, 0x2af5, 0x394e, 0x3b58,
+  0xa1a7, 0xd1d7, 0xbf22, 0xa391, 0xa3f9, 0xd17e, 0x8cda, 0x1bd0,
+  0x1d78, 0xa659, 0xe09a, 0xa82e, 0xa84d, 0xa57b, 0xa874, 0xa8d6,
+  0xaec5, 0x764a, 0x2412, 0x7691, 0x2bdf, 0x8b28, 0x0efe, 0xa2bf,
+  0xa944, 0xaa16, 0x29c8, 0xab74, 0x0cdb, 0xac2f, 0xdda8, 0xe949,
+  0x0aa2, 0x8e03, 0x5cde, 0xe14e, 0x70fd, 0xacd2, 0xad7b, 0xae95,
+  0x4409, 0xaf40, 0x7b38, 0x2ba5, 0xb225, 0xb2c6, 0x7779, 0x601a,
+  0xb36c, 0x24cf, 0x297f, 0x4371, 0xb559, 0xb619, 0xa48a, 0xaf27,
+  0x27fc, 0xb646, 0xb66e, 0xc892, 0x70fd, 0x07b3, 0xb6bf, 0xd1b2,
+  0xb6de, 0x1a18, 0xb6e2, 0xb6e6, 0xb907, 0xadbf, 0xb95d, 0x22a6,
+  0x083b, 0x9d0c, 0x70fd, 0xb9c3, 0x1a7c, 0xdf48, 0xbaee, 0xbb89,
+  0xbc06, 0x8a50, 0x29e1, 0x4351, 0x70fd, 0xc002, 0xd6d2, 0x6196,
+  0xc0b2, 0xb2da, 0x5ce2, 0xc282, 0xc2ca,
+  /* 0x9c */
+  0x2f9b, 0xc937, 0x70fd, 0xc304, 0x875c, 0x5c6a, 0xae76, 0xc308,
+  0xa52f, 0xc352, 0x1e80, 0xc3ff, 0xc475, 0x921b, 0x6565, 0xb921,
+  0x33d5, 0x2c67, 0xf28d, 0x70fd, 0x28f9, 0xaa61, 0xc4bc, 0x20aa,
+  0xadb4, 0x6756, 0x3fcf, 0xc9fd, 0x0958, 0x5af7, 0xc559, 0xc62e,
+  0xc291, 0xc61e, 0x70fd, 0xc687, 0x4d42, 0xe480, 0x7911, 0xc6e6,
+  0x70fd, 0xc6f9, 0x4c45, 0x70fd, 0xc7ba, 0x6b26, 0xc7ed, 0x099f,
+  0xc2e9, 0x7121, 0x4b83, 0xc7f4, 0xc89b, 0x2f6c, 0x9e19, 0x70fd,
+  0xc8dd, 0x19d0, 0xc9e4, 0x473b, 0x59e5, 0xcaee, 0x2af6, 0x0a5c,
+  0x90cd, 0xcd8b, 0xcecd, 0x0f94, 0xcf40, 0xcf45, 0x6381, 0x8dba,
+  0xcf4b, 0x6430, 0xcfa6, 0xae50, 0x3e79, 0x659f, 0xd050, 0x7db8,
+  0x59a7, 0x5a75, 0x9426, 0xdcb3, 0x85f1, 0x40b8, 0xaeaa, 0x8660,
+  0x0ce4, 0x09f9, 0x70fd, 0x70fd, 0x183f, 0x38f6, 0xeaad, 0xe824,
+  0x5ac3, 0xd30c, 0xd358, 0x2916, 0x13df, 0x844a, 0x0ce1, 0xa02f,
+  0xd9a8, 0x8285, 0x43ad, 0x5566, 0xd4dd, 0xe568, 0x70fd, 0x1f77,
+  0xcdef, 0xdfab, 0xd4fd, 0xd50a, 0xd60b, 0xd766, 0xa6ba, 0x4d43,
+  0x4b7e, 0xd8c9, 0x41b5, 0xefdf, 0x3c43, 0xdb98, 0x25e2, 0xcb47,
+  0x64bf, 0x3a76, 0x685d, 0xda2f, 0xd8e3, 0xc775, 0x82ad, 0x9baf,
+  0xd908, 0x2fc5, 0xe230, 0xd943, 0x2955, 0x6923, 0xdf49, 0x2feb,
+  0xae08, 0x37fe, 0x3c15, 0x2612, 0xaf25, 0xa4c1, 0x0f51, 0x3976,
+  0xd950, 0xd9b4, 0xd9ee, 0x8c21, 0xda0f,
+  /* 0x9d */
+  0xda49, 0xda6f, 0xda9a, 0xdb86, 0xdbaf, 0xdc0a, 0x090a, 0xdca8,
+  0xde2a, 0x1bfa, 0x3626, 0xdf56, 0x4a08, 0x6355, 0xdfb8, 0x16f2,
+  0xdfe7, 0x16df, 0xdfe8, 0xe146, 0xe1d4, 0x2c38, 0xe209, 0x70fd,
+  0xe405, 0xe4ac, 0x70fd, 0xe4d0, 0xe4fc, 0x10f7, 0xe51e, 0xaf4a,
+  0x6110, 0x448f, 0x28cb, 0xe667, 0xe6e9, 0xe6b0, 0xe6b8, 0xe732,
+  0xe851, 0xe8c9, 0xe8ea, 0xe943, 0xe9a8, 0xea0e, 0xeb1a, 0xeb5b,
+  0x509f, 0xecb8, 0xece3, 0x1f64, 0x6647, 0xef93, 0x43a2, 0xefff,
+  0x2011, 0x6152, 0xf0cb, 0x201c, 0x7b5c, 0x60fe, 0x2801, 0x60fa,
+  0x8ff0, 0x60f9, 0xaf13, 0x1809, 0x507f, 0x4156, 0x3cf1, 0x212a,
+  0x0824, 0xe12c, 0xd39d, 0x0a7a, 0x5fc0, 0x8635, 0xd8e4, 0xe16c,
+  0xe199, 0xd53e, 0xc46f, 0x10eb, 0xd1d5, 0xa277, 0xb7b5, 0xba16,
+  0x20da, 0xbe01, 0xc118, 0x28ff, 0x7d2d, 0x5f4e, 0x2dad, 0xa3c8,
+  0xb05e, 0x361e, 0x70fd, 0x8636, 0x86bb, 0x3770, 0x286d, 0xbc4a,
+  0x265a, 0xb5d1, 0x10c6, 0xeb58, 0x1f3d, 0x2862, 0x285e, 0x5149,
+  0xbe58, 0x2bb5, 0xa2c0, 0x58f0, 0x205c, 0x7eaa, 0x7c09, 0x9fba,
+  0x5317, 0x6dde, 0x5e58, 0x483b, 0x6d45, 0x484e, 0x49b9, 0x6445,
+  0x2672, 0x5348, 0x54f7, 0x2865, 0x5332, 0x5618, 0x52bd, 0x282a,
+  0x4b62, 0x2883, 0x2656, 0x7d5d, 0x090e, 0x2845, 0x2831, 0x3931,
+  0xdb62, 0x096d, 0x4734, 0x2830, 0x27fa, 0x26d7, 0x27b2, 0x7b01,
+  0x7b56, 0x3110, 0xb448, 0x7d36, 0x9662,
+  /* 0x9e */
+  0x7d62, 0x6f2b, 0x4f5a, 0x281e, 0x7f35, 0x34dd, 0x686d, 0x26d4,
+  0x5e0d, 0x43f6, 0x6276, 0x363c, 0x35f9, 0x363e, 0x27a9, 0x9583,
+  0x6d72, 0x98b3, 0x23da, 0x081f, 0x7c67, 0x23e7, 0x268d, 0x275e,
+  0x2753, 0x4866, 0x5f6d, 0xc64a, 0x47b1, 0x52b6, 0x5984, 0x5906,
+  0x5a47, 0x53b6, 0x561c, 0x7f81, 0x17ec, 0x4504, 0xac06, 0x2dd0,
+  0x550b, 0xc653, 0x28bb, 0x91f4, 0xd72f, 0xa6e3, 0xd773, 0xcc10,
+  0xcf76, 0x6270, 0x8099, 0x6308, 0xa2bc, 0xf1a9, 0x7d6c, 0x7db9,
+  0x4466, 0x89e2, 0x1a4e, 0xb302, 0xd8b9, 0x7eab, 0x13fa, 0x6d5d,
+  0x375f, 0x97a0, 0x1bf3, 0xaca0, 0xeb3c, 0x7eac, 0x7cca, 0x70fd,
+  0xd123, 0x7ead, 0x70fd, 0xbf88, 0x8047, 0x43a3, 0x508e, 0x6dd0,
+  0x205a, 0x2044, 0x08b7, 0x2d4d, 0x3ef2, 0x25a7, 0x09ec, 0x0d1c,
+  0x25bd, 0x09e5, 0xab18, 0x2ada, 0xafae, 0x542d, 0x268b, 0x29ea,
+  0xbad5, 0x78b9, 0x70fd, 0x0d92, 0x8fa5, 0x4574, 0xec6c, 0x1fc9,
+  0x6ced, 0xa2be, 0xecf0, 0x1f1b, 0xb2e9, 0xe69e, 0xed5e, 0x565c,
+  0xa336, 0xcf72, 0xc573, 0xa020, 0x356e, 0x4f25, 0xa437, 0xa3ac,
+  0x0d6a, 0x6148, 0x250c, 0x1174, 0x09ba, 0x18e9, 0x754e, 0x4840,
+  0x2d30, 0x7d76, 0x4a7a, 0xd86e, 0x2ae7, 0x13bf, 0x28bc, 0x6c8b,
+  0x2fb4, 0x4854, 0xf074, 0x6f05, 0x1fa1, 0x70fd, 0x0b3b, 0x3359,
+  0x9a5a, 0xa932, 0x70fd, 0x289d, 0x8169, 0x29e7, 0xade3, 0xebc6,
+  0x2474, 0xcdee, 0x08ed, 0x70fd, 0x6dfc,
+  /* 0x9f */
+  0x4e56, 0x6c39, 0x2a1e, 0x85ac, 0x2e93, 0x3713, 0xe650, 0xc1b5,
+  0xcea4, 0x586d, 0x7be8, 0xca62, 0xaf62, 0x7c31, 0x70fd, 0x243e,
+  0x8b8f, 0x2fce, 0x6803, 0x8a91, 0x6f01, 0x618c, 0x4d1f, 0x6c02,
+  0x2f11, 0x4da3, 0x34a8, 0x3575, 0x6bff, 0x4dcf, 0x6c2a, 0x4e7e,
+  0x70fd, 0x4e42, 0x4e86, 0x6d15, 0x4dfc, 0x6c09, 0x70fd, 0x6d1b,
+  0xadbe, 0x6fda, 0x27b3, 0x2e03, 0x223d, 0x6f18, 0x2232, 0x24a0,
+  0x1106, 0x2511, 0x29a7, 0x2296, 0x2bf7, 0x3052, 0x68c8, 0x6e2b,
+  0x609c, 0x26a9, 0x68b4, 0x6a40, 0x68ba, 0x256c, 0x3370, 0x3b6c,
+  0x261a, 0x6d0a, 0x6d82, 0x1efb, 0x6741, 0x3bc0, 0x22e6, 0x4746,
+  0x85ad, 0x6ada, 0x24b3, 0x70fd, 0x6259, 0x6781, 0x625c, 0x70fd,
+  0x6251, 0xe397, 0x35bf, 0xca63, 0x3d0a, 0x2851, 0x628e, 0x477a,
+  0x34c5, 0x74bc, 0x454f, 0x4e70, 0xbc21, 0xa2bd, 0x70fd, 0xad99,
+  0x48d6, 0x6c9d, 0x206a, 0x7b94, 0x55be, 0x59c2, 0x70fd, 0x2e8a,
+  0x3c00, 0x70fd, 0x29ba, 0x245f, 0x3035, 0x210e, 0x3e71, 0x72b2,
+  0x2179, 0x26dc, 0x271a, 0x24da, 0x5ec2, 0x093e, 0x70fd, 0x0933,
+  0x70fd, 0x3d92, 0x627c, 0x7025, 0x6c97, 0x692e, 0x69b4, 0x6bba,
+  0x6f28, 0x6f04, 0x437a, 0x4d14, 0x70fd, 0x3e3a, 0x5998, 0x5178,
+  0x70fd, 0x2860, 0xf14a, 0x5fb7, 0x6fd3, 0x70fd, 0x5f14, 0x5f8f,
+  0x6e9c, 0x5f41, 0x34c2, 0xdbfd, 0x5f68, 0x5fb5, 0x4cd3, 0xaef7,
+  0x4c3e, 0x4ad8, 0x3f2a, 0x5be7, 0x4807,
+  /* 0xa0 */
+  0xe05a, 0x6fa6, 0x3f0e, 0x5956, 0x47c3, 0xefb2, 0x4a53, 0xf200,
+  0x5e4c, 0x44e2, 0x4571, 0x5cad, 0x4502, 0x46f1, 0x5e2b, 0xaf3b,
+  0x57ef, 0x31fa, 0x5a20, 0x17b7, 0x70fd, 0x867b, 0xcb45, 0x70fd,
+  0x5bfe, 0x905b, 0x70fd, 0x333d, 0x4867, 0x6bd7, 0x6dc4, 0x646e,
+  0x6c8f, 0x5975, 0x70fd, 0x70fd, 0x5e37, 0x452c, 0x6821, 0x6cb0,
+  0x0916, 0x44b2, 0x1ec7, 0x4e51, 0x6a4a, 0xc059, 0x3399, 0x1ec4,
+  0x6f16, 0x33bd, 0x70fd, 0x299f, 0x33af, 0x34e6, 0x3479, 0x70fd,
+  0x0d9c, 0x3422, 0x25ea, 0x9d35, 0x35a4, 0x3a42, 0x0912, 0x2f97,
+  0xe1c2, 0x611a, 0xe339, 0x70fd, 0x2319, 0x8a06, 0x4b06, 0x2572,
+  0x6738, 0x7dfb, 0x1365, 0x70fd, 0x49fe, 0x70fd, 0x4ec2, 0xbe9a,
+  0x4eda, 0x4c2d, 0x5266, 0x5263, 0x4f4d, 0x4705, 0x46f2, 0x5b14,
+  0x541a, 0x394c, 0x5262, 0xd086, 0x525b, 0x46f0, 0x5303, 0x4924,
+  0x5b09, 0xc58c, 0x4753, 0xcc11, 0x5929, 0x594e, 0x53c8, 0x590c,
+  0x5bc9, 0x5ded, 0x5cc3, 0x492b, 0x46f8, 0x56da, 0x0975, 0x3bf2,
+  0x5ee6, 0x70fd, 0x5b29, 0x70fd, 0x3ff9, 0x5941, 0xa551, 0x46e7,
+  0x10db, 0x4376, 0x32e4, 0x33dc, 0x0fd1, 0x70fd, 0x32b7, 0x70fd,
+  0x5171, 0xe12d, 0x70fd, 0x3329, 0x1e3e, 0x2460, 0x0f58, 0xa287,
+  0xbe57, 0xd1d6, 0xb6b1, 0x8784, 0x81be, 0xe883, 0xcb1c, 0xcded,
+  0x2f01, 0xc0ad, 0xe00f, 0x9f77, 0x71ee, 0xc606, 0xb24e, 0x1862,
+  0x2d5f, 0xc1cc, 0x6fd0, 0x6f26, 0xc12b,
+};
+static const unsigned short hkscs1999_2uni_pagec6[471] = {
+  /* 0xc6 */
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x0460,
+  0x0461, 0x0462, 0x0463, 0x0464, 0x0465, 0x0466, 0x0467, 0x0468,
+  0x0469, 0x0474, 0x0475, 0x0476, 0x0477, 0x0478, 0x0479, 0x047a,
+  0x047b, 0x047c, 0x047d, 0x0370, 0x0371, 0x0372, 0x0373, 0x0374,
+  0x0375, 0x0376, 0x0377, 0x0378, 0x0379, 0x2076, 0x207f, 0x20c5,
+  0x20e0, 0x23c2, 0x23d6, 0x23eb, 0x2539, 0x2578, 0x25a9, 0x25f6,
+  0x2b4a, 0x2dc0, 0x301b, 0x05b3, 0x30bf, 0x70fd, 0x3190, 0x31a1,
+  0x3774, 0x70fd, 0x4792, 0x70fd, 0x60f5, 0x70fd, 0x0028, 0x01c6,
+  0x06bd, 0x06be, 0x065d, 0x065e, 0x70fd, 0x70fd, 0x05c5, 0x05c6,
+  0x05c7, 0x06bc, 0x70bb, 0x70bd, 0x04fd, 0x0601, 0x0602, 0x0603,
+  0x0604, 0x0605, 0x0606, 0x0607, 0x0608, 0x0609, 0x060a, 0x060b,
+  0x060c, 0x060d, 0x060e, 0x060f, 0x0610, 0x0611, 0x0612, 0x0613,
+  0x0614, 0x0615, 0x0616, 0x0617, 0x0618,
+  /* 0xc7 */
+  0x0619, 0x061a, 0x061b, 0x061c, 0x061d, 0x061e, 0x061f, 0x0620,
+  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, 0x063b, 0x063c, 0x063d, 0x063e, 0x063f, 0x0640,
+  0x0641, 0x0642, 0x0643, 0x0644, 0x0645, 0x0646, 0x0647, 0x0648,
+  0x0649, 0x064a, 0x064b, 0x064c, 0x064d, 0x064e, 0x064f, 0x0650,
+  0x0651, 0x0652, 0x0653, 0x0661, 0x0662, 0x0663, 0x0664, 0x0665,
+  0x0666, 0x0667, 0x0668, 0x0669, 0x066a, 0x066b, 0x066c, 0x066d,
+  0x066e, 0x066f, 0x0670, 0x0671, 0x0672, 0x0673, 0x0674, 0x0675,
+  0x0676, 0x0677, 0x0678, 0x0679, 0x067a, 0x067b, 0x067c, 0x067d,
+  0x067e, 0x067f, 0x0680, 0x0681, 0x0682, 0x0683, 0x0684, 0x0685,
+  0x0686, 0x0687, 0x0688, 0x0689, 0x068a, 0x068b, 0x068c, 0x068d,
+  0x068e, 0x068f, 0x0690, 0x0691, 0x0692, 0x0693, 0x0694, 0x0695,
+  0x0696, 0x0697, 0x0698, 0x0699, 0x069a, 0x069b, 0x069c, 0x069d,
+  0x069e, 0x069f, 0x06a0, 0x06a1, 0x06a2, 0x06a3, 0x06a4, 0x06a5,
+  0x06a6, 0x06a7, 0x06a8, 0x06a9, 0x06aa, 0x06ab, 0x06ac, 0x06ad,
+  0x06ae, 0x06af, 0x06b0, 0x06b1, 0x06b2, 0x06b3, 0x06b4, 0x06b5,
+  0x06b6, 0x0210, 0x0211, 0x0212, 0x0213, 0x0214, 0x0215, 0x0201,
+  0x0216, 0x0217, 0x0218, 0x0219, 0x021a,
+  /* 0xc8 */
+  0x021b, 0x021c, 0x021d, 0x021e, 0x021f, 0x0220, 0x0221, 0x0222,
+  0x0223, 0x0224, 0x0225, 0x0226, 0x0227, 0x0228, 0x0229, 0x022a,
+  0x022b, 0x022c, 0x022d, 0x022e, 0x022f, 0x0230, 0x0231, 0x0232,
+  0x0233, 0x0234, 0x0235, 0x0251, 0x0236, 0x0237, 0x0238, 0x0239,
+  0x023a, 0x023b, 0x023c, 0x023d, 0x023e, 0x023f, 0x0240, 0x0241,
+  0x0242, 0x0243, 0x0244, 0x0245, 0x0246, 0x0247, 0x0248, 0x0249,
+  0x024a, 0x024b, 0x024c, 0x024d, 0x024e, 0x024f, 0x03e7, 0x03b8,
+  0x03b9, 0x06cf, 0x71cc, 0x209a, 0x718a, 0x2442, 0x1791, 0x7030,
+  0x23c8, 0x7031, 0xd187, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70e2, 0x70e4, 0x7087, 0x7082, 0x0731,
+  0x0316, 0x0321, 0x065b, 0x065c, 0x0500, 0x0504, 0x0506, 0x0507,
+  0x0508, 0x050a, 0x050c, 0x050d, 0x0515, 0x051c, 0x051d, 0x0525,
+  0x0527, 0x052a, 0x052c, 0x052e, 0x0536, 0x053c, 0x053e, 0x0546,
+  0x054a, 0x054c, 0x054d, 0x054f, 0x0556, 0x0557, 0x055e, 0x0563,
+  0x70fd, 0x70fd, 0x70fd, 0x0183, 0x0150, 0x015b, 0x0154, 0x0175,
+  0x00d3, 0x0078, 0x00cb, 0x018a, 0x016a,
+};
+static const unsigned short hkscs1999_2uni_pagef9[942] = {
+  /* 0xf9 */
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x70fd,
+  0x70fd, 0x70fd, 0x70fd, 0x70fd, 0x4a81, 0x63b9, 0x5a4f, 0x2afb,
+  0x3292, 0x4ea7, 0x2d3a, 0x0494, 0x04a6, 0x0497, 0x04a0, 0x04ac,
+  0x04a3, 0x049a, 0x04a9, 0x049d, 0x0492, 0x04a4, 0x0495, 0x049e,
+  0x04aa, 0x04a1, 0x0498, 0x04a7, 0x049b, 0x0493, 0x04a5, 0x0496,
+  0x049f, 0x04ab, 0x04a2, 0x0499, 0x04a8, 0x049c, 0x0491, 0x0490,
+  0x04ad, 0x04ae, 0x04b0, 0x04af, 0x70ed,
+  /* 0xfa */
+  0x75c7, 0x63db, 0x765f, 0xa505, 0x574c, 0x15b5, 0x45ef, 0x23f5,
+  0x0989, 0xadc2, 0xdfe4, 0x6444, 0x881b, 0x54ee, 0xa288, 0x4a3c,
+  0x3984, 0x351f, 0xadb3, 0xdfaa, 0x7360, 0xc8f3, 0x81c5, 0x21eb,
+  0x902d, 0x2248, 0xca69, 0xd584, 0x9f00, 0xaf31, 0x9053, 0x70fd,
+  0x743e, 0x31e4, 0x7440, 0x7407, 0x40db, 0x74df, 0x70fd, 0x2341,
+  0x07ba, 0x234e, 0x696c, 0x0a83, 0x5616, 0xae24, 0x7547, 0x23a0,
+  0x9cf4, 0x23aa, 0x7abf, 0x8d3c, 0x73a5, 0x9070, 0x760e, 0x9bb3,
+  0x87c3, 0x2dc2, 0x58fd, 0x7633, 0xa259, 0x23f2, 0x23f8, 0x6db4,
+  0x2409, 0x240f, 0x2411, 0x0fdc, 0x2413, 0xaf26, 0x23f3, 0x2422,
+  0x2582, 0x242d, 0x55cd, 0x3b7e, 0xa02d, 0x31bb, 0x244b, 0x2466,
+  0x247c, 0x24f5, 0x2497, 0x24d4, 0x24f9, 0x2505, 0x4e15, 0x5742,
+  0x2520, 0x57cd, 0xc853, 0x70fd, 0xe0de, 0x2789, 0x40d9, 0xa4c0,
+  0x7894, 0xa52c, 0x2573, 0x70fd, 0x7aa2, 0x3f0b, 0x8566, 0x3a5b,
+  0x45d5, 0x328a, 0x11aa, 0x0c0c, 0x8528, 0x43dd, 0x17a2, 0x25ad,
+  0x25b4, 0xde2b, 0x25be, 0x70fd, 0x8416, 0x8453, 0x49e6, 0x25d3,
+  0xe09b, 0x25e0, 0x25eb, 0x25ee, 0x45a7, 0xb8f2, 0x1259, 0x459c,
+  0x2601, 0x2605, 0x3e89, 0x2089, 0x2a3e, 0x2619, 0x0deb, 0x7a4f,
+  0x2620, 0xa52b, 0x97a3, 0x2636, 0x7b37, 0x2653, 0x4279, 0x276b,
+  0x3897, 0x3f9b, 0x26ad, 0xc893, 0x7c34, 0x279d, 0x26cf, 0x26e4,
+  0x1aa6, 0x854d, 0x7d9d, 0x10b4, 0x7c0d,
+  /* 0xfb */
+  0xdfbc, 0x9198, 0x2787, 0x1fad, 0x266f, 0x4617, 0x27c6, 0x27e9,
+  0x70fd, 0x8717, 0xa57a, 0x1852, 0xa975, 0x38f3, 0x7f74, 0x2877,
+  0x390d, 0x9c0a, 0x38e4, 0x38ed, 0x288d, 0x288f, 0x4af1, 0x2931,
+  0x6887, 0x263e, 0x2940, 0x292f, 0x292d, 0xe166, 0x0963, 0x810f,
+  0x2986, 0xa6e5, 0x3eae, 0x428b, 0x2982, 0x09f1, 0xc9be, 0x2a26,
+  0x82d6, 0x2a43, 0x8314, 0xa8a3, 0x2a66, 0xaff5, 0x2a9c, 0x2aea,
+  0x08a1, 0x2b20, 0x2b1c, 0x80fc, 0x2b3b, 0x2e3f, 0x2983, 0xee90,
+  0xa7b8, 0x64d3, 0x08e1, 0x2b5f, 0x3ae6, 0x0a03, 0x4059, 0x847e,
+  0x2c64, 0x2793, 0x84d2, 0x5705, 0x2c09, 0x7c0e, 0xc9c1, 0xca6a,
+  0x861c, 0x2c19, 0x863b, 0x85f2, 0xcae6, 0x3fb1, 0x8668, 0x8515,
+  0x2c39, 0xcb85, 0x2ceb, 0x2ca3, 0x0a26, 0xae29, 0x70fd, 0x0a48,
+  0x2cd6, 0x4665, 0x2d13, 0xcce1, 0x9094, 0x1085, 0x8751, 0x0a72,
+  0x84f8, 0x30c3, 0x2510, 0x2db6, 0x37c8, 0x2dbc, 0xd50e, 0x1304,
+  0x1b5d, 0x72c4, 0x2e15, 0x33a0, 0x8874, 0xba8c, 0x7625, 0x2e33,
+  0x2ddd, 0x1fd0, 0x2e45, 0x88c4, 0x2e53, 0x45ce, 0x2e54, 0x89e5,
+  0xc868, 0x2e89, 0x1bdd, 0x2ec5, 0x2f29, 0x2f2f, 0x2fcb, 0x8ab9,
+  0x8af7, 0x2f50, 0x2f58, 0x2f86, 0x8b24, 0x2efa, 0x3017, 0x54fc,
+  0x0b6d, 0xad81, 0x8c89, 0x8db3, 0x5487, 0x0b76, 0x0f02, 0x306e,
+  0x3cca, 0x70fd, 0x30ba, 0xa9fc, 0x7b93, 0x25e6, 0x20f7, 0x70fd,
+  0x25e8, 0x85b1, 0x3049, 0x3134, 0xdcc2,
+  /* 0xfc */
+  0x3139, 0x313b, 0x0be0, 0x313c, 0x3a7e, 0x651b, 0x314d, 0x7281,
+  0xf254, 0x0e1e, 0x1bae, 0x81fa, 0x317a, 0xc648, 0x8f50, 0x70fd,
+  0x8fb1, 0x31a3, 0x68bd, 0xcbae, 0x31b2, 0x6440, 0xe036, 0x31e7,
+  0x2ff6, 0x105f, 0xb510, 0x8bea, 0xce38, 0x9168, 0x62d6, 0x735e,
+  0xe029, 0x3271, 0x38c5, 0x86b7, 0x0ca3, 0x10c7, 0x0979, 0x29d0,
+  0x92b4, 0x4b71, 0x1140, 0x32de, 0x70fd, 0x32f3, 0xae02, 0xae0f,
+  0xd553, 0x46a4, 0x2321, 0x2ce0, 0x33a4, 0x5624, 0x3382, 0xf266,
+  0xcc12, 0x33c1, 0x2434, 0x76d6, 0x33c7, 0x2dea, 0xa4f7, 0x935f,
+  0x3413, 0xe19d, 0xe8dd, 0x3410, 0x0c72, 0x9480, 0x93c1, 0x3263,
+  0x339c, 0x375e, 0x35cb, 0x7218, 0x3505, 0x85b0, 0x3515, 0x980d,
+  0x35ac, 0xae5f, 0x0d57, 0x3678, 0x3638, 0x824e, 0x863c, 0x70fd,
+  0x418a, 0x9836, 0x6914, 0xa5cc, 0xb89d, 0x3721, 0x3725, 0x657b,
+  0x0da6, 0x367a, 0x0d97, 0x378d, 0x4116, 0xaea8, 0xaea3, 0x37c5,
+  0x37ad, 0x379f, 0x99fe, 0x37f5, 0xadc0, 0x1df7, 0x3811, 0x13d8,
+  0x8669, 0x3820, 0x3823, 0x321f, 0x9d40, 0x3858, 0x9b77, 0x9b78,
+  0x3884, 0x9b24, 0x9b25, 0x388b, 0x7d35, 0x38a7, 0xb4a6, 0x38b3,
+  0x70fd, 0x8afd, 0x9bb1, 0xddb4, 0x9b48, 0xb5d3, 0x49c5, 0x93f7,
+  0x6aa4, 0x3942, 0xa8dc, 0xaea1, 0x0e6b, 0x3c3a, 0xa0c2, 0x70fd,
+  0x39a7, 0x39a2, 0xa70d, 0xe4ad, 0x3a17, 0x17e9, 0x3a62, 0x4050,
+  0x633c, 0x3a41, 0x9d26, 0xcae0, 0x3a9d,
+  /* 0xfd */
+  0x9daf, 0x3c21, 0x3c4b, 0xe0df, 0x3bb3, 0x3b03, 0x9ecd, 0x3b41,
+  0x3b40, 0x1032, 0x0d41, 0x9f3c, 0x0ec0, 0x39ec, 0x3ba1, 0xe04a,
+  0x15fc, 0x3b76, 0x3bd8, 0x0ee1, 0x7489, 0x5563, 0x22d0, 0x3c39,
+  0x9f59, 0x8d6a, 0x3c85, 0xa003, 0x3cdd, 0x0f33, 0x39f1, 0x3d08,
+  0xe55c, 0x0f4d, 0x3d5d, 0x7863, 0x331e, 0x3d75, 0x3db4, 0x92cd,
+  0x40b5, 0xa1db, 0x7475, 0x8798, 0x0a80, 0x2661, 0xa21a, 0x3e21,
+  0xa43c, 0x3e1c, 0x3e77, 0x8fcb, 0xad71, 0xc891, 0x3e9a, 0x5426,
+  0x3eb9, 0xa33c, 0x17c5, 0xa33d, 0xa6e4, 0xad8c, 0xad80, 0xa289,
+  0x0a25, 0x0feb, 0x7bf2, 0x6c83, 0x9b79, 0x8fd1, 0x518f, 0x3a77,
+  0xca65, 0xcae1, 0xcb2b, 0x3fd6, 0x3f9c, 0x407c, 0x4104, 0xadff,
+  0xa5c5, 0xcbb2, 0x5733, 0xccb4, 0x2407, 0x70fd, 0x70fd, 0x562e,
+  0xe121, 0x70fd, 0xa3af, 0x4653, 0xa4c2, 0x4bcc, 0x404f, 0x2cd1,
+  0x99cb, 0x41f8, 0x0a4d, 0x419d, 0xa3b0, 0x40fa, 0x8357, 0xa57d,
+  0x1855, 0x64f0, 0x4144, 0x415c, 0x104e, 0x4174, 0xe530, 0x103b,
+  0x419f, 0xa684, 0x41d3, 0xa5d1, 0xa695, 0xa579, 0xa530, 0xa4f4,
+  0xa67f, 0x241f, 0xa696, 0xa697, 0xa680, 0xc0dd, 0x424b, 0x427e,
+  0x42a7, 0x4281, 0x42cc, 0x42d5, 0x42d6, 0x42df, 0x1404, 0x10e8,
+  0x43b4, 0x4396, 0xa7b7, 0x432b, 0x4345, 0x2cc8, 0x434a, 0x70fd,
+  0x2edc, 0xa8a5, 0x434f, 0x6462, 0xa801, 0x432c, 0xa99a, 0xaea7,
+  0xaea2, 0x43ba, 0xe1e8, 0x42bd, 0x440e,
+  /* 0xfe */
+  0x6542, 0x4415, 0x2b51, 0x6543, 0x4424, 0x6441, 0xb785, 0x442e,
+  0x4440, 0xadf4, 0x3afd, 0x4455, 0x4457, 0x1155, 0x99c4, 0x3a4d,
+  0x413d, 0x4482, 0x70fd, 0x452b, 0xace3, 0xdeeb, 0x1bed, 0xdec4,
+  0x4528, 0x452e, 0x45cf, 0x45aa, 0x7afa, 0xc7ee, 0x45c9, 0x4649,
+  0xa722, 0x8527, 0xaea4, 0x3863, 0x0a05, 0xae37, 0xae0d, 0xae7b,
+  0x45f7, 0x4615, 0x3b43, 0xaea6, 0x4639, 0x7643, 0x11d7, 0x70fd,
+  0x93ad, 0x4660, 0xe3b2, 0x4647, 0x45e4, 0x4676, 0x55b9, 0x466c,
+  0x0a70, 0x4674, 0x64f1, 0x3c6c, 0x4682, 0x1c53, 0xaf0c, 0xa69f,
+  0xaef9, 0xe18f, 0x2d86, 0xe203, 0x86de, 0x46c8, 0x87c8, 0x470e,
+  0x70fd, 0x471e, 0xe3d9, 0x888b, 0x2e17, 0xe3ac, 0x6485, 0x474d,
+  0x474a, 0x4767, 0x476e, 0xb2c2, 0x1204, 0xb0d3, 0x478e, 0x465d,
+  0x479e, 0x47b4, 0x4802, 0x482c, 0x4851, 0x484f, 0x486f, 0x4876,
+  0xc275, 0x4890, 0x53ef, 0x0b38, 0xc6d1, 0xc6ce, 0x48a1, 0x48a5,
+  0x48b7, 0x48cc, 0xccdf, 0x5662, 0xb3dd, 0xb47d, 0x8adc, 0x491e,
+  0x4926, 0x4940, 0x36ef, 0xb4e0, 0x4958, 0x9c2c, 0x49af, 0xdf64,
+  0xdf68, 0x8501, 0x49f4, 0x70fd, 0x8236, 0xae92, 0x3b0a, 0x4aaf,
+  0x4ac7, 0x4ad3, 0x67a5, 0x4b2e, 0xb760, 0x4ad7, 0x4b34, 0x4ab1,
+  0xd18c, 0x60f8, 0x5a04, 0xe12b, 0xbfc3, 0x911c, 0x4b86, 0x5a80,
+  0x3b42, 0x4b80, 0xb957, 0x4b9d, 0xd639, 0x4b3c, 0x4ba9, 0x402a,
+  0xce66, 0x11a8, 0x4bc6, 0xe4cd, 0x4bd4,
+};
+
+static const ucs4_t hkscs1999_2uni_upages[973] = {
+  0x00080, 0x000c0, 0x00100, 0x00140, 0x001c0, 0x00240, 0x00280, 0x002c0,
+  0x00400, 0x00440, 0x01e80, 0x01ec0, 0x02100, 0x02140, 0x02180, 0x021c0,
+  0x023c0, 0x02440, 0x02540, 0x02700, 0x02e80, 0x02ec0, 0x02f00, 0x03000,
+  0x03040, 0x03080, 0x030c0, 0x031c0, 0x03200, 0x03400, 0x03440, 0x03480,
+  0x034c0, 0x03500, 0x03540, 0x03580, 0x035c0, 0x03600, 0x03640, 0x03680,
+  0x036c0, 0x03700, 0x03740, 0x03780, 0x037c0, 0x03800, 0x03840, 0x03880,
+  0x038c0, 0x03900, 0x03940, 0x03980, 0x039c0, 0x03a00, 0x03a40, 0x03a80,
+  0x03ac0, 0x03b00, 0x03b40, 0x03b80, 0x03bc0, 0x03c00, 0x03c40, 0x03cc0,
+  0x03d00, 0x03d40, 0x03d80, 0x03dc0, 0x03e00, 0x03e40, 0x03e80, 0x03ec0,
+  0x03f00, 0x03f40, 0x03f80, 0x03fc0, 0x04000, 0x04040, 0x04080, 0x040c0,
+  0x04100, 0x04140, 0x04180, 0x041c0, 0x04200, 0x04240, 0x04280, 0x042c0,
+  0x04300, 0x04340, 0x04380, 0x043c0, 0x04400, 0x04440, 0x04480, 0x044c0,
+  0x04500, 0x04540, 0x04580, 0x045c0, 0x04600, 0x04640, 0x04680, 0x046c0,
+  0x04700, 0x04740, 0x04780, 0x047c0, 0x04800, 0x04840, 0x04880, 0x048c0,
+  0x04900, 0x04940, 0x04980, 0x049c0, 0x04a00, 0x04a80, 0x04ac0, 0x04b00,
+  0x04b40, 0x04b80, 0x04bc0, 0x04c00, 0x04c40, 0x04c80, 0x04cc0, 0x04d00,
+  0x04d80, 0x04e00, 0x04e40, 0x04e80, 0x04ec0, 0x04f00, 0x04f40, 0x04f80,
+  0x04fc0, 0x05000, 0x05040, 0x05080, 0x050c0, 0x05100, 0x05140, 0x05180,
+  0x051c0, 0x05200, 0x05240, 0x05280, 0x052c0, 0x05300, 0x05340, 0x05380,
+  0x053c0, 0x05400, 0x05440, 0x05480, 0x054c0, 0x05500, 0x05540, 0x05580,
+  0x055c0, 0x05600, 0x05640, 0x05680, 0x056c0, 0x05700, 0x05740, 0x05780,
+  0x057c0, 0x05800, 0x05840, 0x05880, 0x058c0, 0x05900, 0x05940, 0x05980,
+  0x059c0, 0x05a00, 0x05a40, 0x05a80, 0x05ac0, 0x05b00, 0x05b40, 0x05b80,
+  0x05bc0, 0x05c00, 0x05c40, 0x05c80, 0x05cc0, 0x05d00, 0x05d40, 0x05d80,
+  0x05dc0, 0x05e00, 0x05e40, 0x05e80, 0x05ec0, 0x05f00, 0x05f40, 0x05f80,
+  0x05fc0, 0x06000, 0x06040, 0x06080, 0x060c0, 0x06100, 0x06140, 0x06180,
+  0x061c0, 0x06200, 0x06240, 0x06280, 0x062c0, 0x06300, 0x06340, 0x06380,
+  0x063c0, 0x06400, 0x06440, 0x06480, 0x064c0, 0x06500, 0x06540, 0x06580,
+  0x065c0, 0x06600, 0x06640, 0x06680, 0x066c0, 0x06700, 0x06740, 0x06780,
+  0x067c0, 0x06800, 0x06840, 0x06880, 0x068c0, 0x06900, 0x06940, 0x06980,
+  0x069c0, 0x06a00, 0x06a40, 0x06a80, 0x06ac0, 0x06b00, 0x06b40, 0x06b80,
+  0x06bc0, 0x06c00, 0x06c40, 0x06c80, 0x06cc0, 0x06d00, 0x06d40, 0x06d80,
+  0x06e00, 0x06e40, 0x06e80, 0x06ec0, 0x06f00, 0x06f40, 0x06f80, 0x06fc0,
+  0x07000, 0x07040, 0x07080, 0x070c0, 0x07100, 0x07140, 0x07180, 0x071c0,
+  0x07200, 0x07240, 0x07280, 0x072c0, 0x07300, 0x07340, 0x07380, 0x073c0,
+  0x07400, 0x07440, 0x07480, 0x074c0, 0x07500, 0x07540, 0x07580, 0x075c0,
+  0x07600, 0x07640, 0x07680, 0x076c0, 0x07700, 0x07740, 0x07780, 0x077c0,
+  0x07800, 0x07840, 0x07880, 0x078c0, 0x07900, 0x07940, 0x07980, 0x079c0,
+  0x07a00, 0x07a40, 0x07a80, 0x07ac0, 0x07b00, 0x07b40, 0x07b80, 0x07bc0,
+  0x07c00, 0x07c40, 0x07c80, 0x07cc0, 0x07d00, 0x07d40, 0x07d80, 0x07dc0,
+  0x07e00, 0x07e40, 0x07e80, 0x07ec0, 0x07f00, 0x07f40, 0x07f80, 0x07fc0,
+  0x08000, 0x08040, 0x08080, 0x080c0, 0x08100, 0x08140, 0x08180, 0x081c0,
+  0x08200, 0x08240, 0x08280, 0x082c0, 0x08300, 0x08340, 0x08380, 0x083c0,
+  0x08400, 0x08440, 0x08480, 0x084c0, 0x08500, 0x08540, 0x085c0, 0x08600,
+  0x08640, 0x08680, 0x086c0, 0x08740, 0x08780, 0x087c0, 0x08800, 0x08840,
+  0x08880, 0x088c0, 0x08900, 0x08940, 0x08980, 0x089c0, 0x08a00, 0x08a40,
+  0x08a80, 0x08ac0, 0x08b00, 0x08b40, 0x08b80, 0x08bc0, 0x08c40, 0x08c80,
+  0x08cc0, 0x08d00, 0x08d40, 0x08d80, 0x08dc0, 0x08e00, 0x08e40, 0x08e80,
+  0x08ec0, 0x08f00, 0x08f40, 0x08f80, 0x08fc0, 0x09000, 0x09040, 0x09080,
+  0x090c0, 0x09140, 0x09180, 0x091c0, 0x09200, 0x09240, 0x09280, 0x092c0,
+  0x09300, 0x09340, 0x09380, 0x093c0, 0x09400, 0x09440, 0x09480, 0x094c0,
+  0x09500, 0x09540, 0x09580, 0x095c0, 0x09600, 0x09640, 0x09680, 0x096c0,
+  0x09700, 0x09740, 0x09780, 0x097c0, 0x09800, 0x09840, 0x09880, 0x098c0,
+  0x09900, 0x09940, 0x09980, 0x099c0, 0x09a00, 0x09a40, 0x09a80, 0x09ac0,
+  0x09b00, 0x09b40, 0x09b80, 0x09bc0, 0x09c00, 0x09c40, 0x09d00, 0x09d40,
+  0x09d80, 0x09dc0, 0x09e00, 0x09e40, 0x09e80, 0x09ec0, 0x09f00, 0x09f40,
+  0x09f80, 0x0f900, 0x0ff00, 0x0ffc0, 0x20000, 0x20040, 0x20080, 0x200c0,
+  0x20100, 0x20180, 0x201c0, 0x20200, 0x20240, 0x20280, 0x202c0, 0x20300,
+  0x20340, 0x20380, 0x203c0, 0x20400, 0x20440, 0x20480, 0x204c0, 0x20540,
+  0x20580, 0x205c0, 0x20600, 0x20640, 0x20700, 0x20740, 0x20800, 0x20840,
+  0x208c0, 0x20900, 0x20940, 0x209c0, 0x20a00, 0x20a40, 0x20a80, 0x20ac0,
+  0x20b00, 0x20b80, 0x20bc0, 0x20c00, 0x20c40, 0x20c80, 0x20cc0, 0x20d00,
+  0x20d40, 0x20d80, 0x20dc0, 0x20e00, 0x20e40, 0x20e80, 0x20ec0, 0x20f00,
+  0x20f40, 0x20f80, 0x20fc0, 0x21000, 0x21040, 0x21080, 0x210c0, 0x21100,
+  0x21140, 0x21180, 0x211c0, 0x21200, 0x21240, 0x21280, 0x212c0, 0x21300,
+  0x21340, 0x21380, 0x213c0, 0x21400, 0x21440, 0x21480, 0x214c0, 0x21540,
+  0x21580, 0x21600, 0x21640, 0x21680, 0x216c0, 0x21700, 0x21740, 0x21780,
+  0x217c0, 0x21800, 0x21840, 0x21880, 0x218c0, 0x21900, 0x21940, 0x21980,
+  0x219c0, 0x21a00, 0x21a40, 0x21b40, 0x21bc0, 0x21c00, 0x21c40, 0x21c80,
+  0x21d40, 0x21d80, 0x21dc0, 0x21e00, 0x21e80, 0x21ec0, 0x21f00, 0x21f40,
+  0x21f80, 0x21fc0, 0x22040, 0x22080, 0x220c0, 0x22100, 0x22140, 0x22180,
+  0x221c0, 0x22200, 0x22240, 0x22300, 0x22380, 0x223c0, 0x22440, 0x22480,
+  0x224c0, 0x22500, 0x22540, 0x22580, 0x22600, 0x22640, 0x22680, 0x226c0,
+  0x22700, 0x22740, 0x22780, 0x227c0, 0x22800, 0x22840, 0x22880, 0x228c0,
+  0x22900, 0x22940, 0x22980, 0x22a40, 0x22ac0, 0x22b00, 0x22b40, 0x22bc0,
+  0x22c00, 0x22c40, 0x22c80, 0x22cc0, 0x22d00, 0x22d40, 0x22d80, 0x22dc0,
+  0x22e00, 0x22e40, 0x22e80, 0x22ec0, 0x22f40, 0x22fc0, 0x23000, 0x23040,
+  0x23080, 0x230c0, 0x23100, 0x23140, 0x23180, 0x231c0, 0x23200, 0x23240,
+  0x23280, 0x232c0, 0x23300, 0x23380, 0x233c0, 0x23400, 0x23440, 0x234c0,
+  0x23500, 0x23540, 0x23580, 0x235c0, 0x23600, 0x23640, 0x23680, 0x236c0,
+  0x23700, 0x23740, 0x23780, 0x237c0, 0x23800, 0x239c0, 0x23a80, 0x23ac0,
+  0x23b40, 0x23c80, 0x23cc0, 0x23d40, 0x23d80, 0x23dc0, 0x23e00, 0x23e80,
+  0x23ec0, 0x23f00, 0x23f40, 0x23f80, 0x23fc0, 0x24000, 0x24040, 0x24080,
+  0x240c0, 0x24100, 0x24140, 0x24180, 0x241c0, 0x24200, 0x24240, 0x24280,
+  0x242c0, 0x24300, 0x24340, 0x24380, 0x243c0, 0x24400, 0x24440, 0x24480,
+  0x244c0, 0x24500, 0x24540, 0x245c0, 0x24600, 0x24640, 0x24680, 0x246c0,
+  0x24700, 0x24780, 0x247c0, 0x24800, 0x24880, 0x248c0, 0x24900, 0x24940,
+  0x24980, 0x249c0, 0x24a00, 0x24a40, 0x24a80, 0x24ac0, 0x24b40, 0x24bc0,
+  0x24c00, 0x24c80, 0x24cc0, 0x24d00, 0x24d80, 0x24dc0, 0x24e00, 0x24e40,
+  0x24e80, 0x24f00, 0x24f40, 0x24f80, 0x24fc0, 0x25000, 0x25040, 0x25080,
+  0x25100, 0x25140, 0x251c0, 0x25200, 0x25240, 0x25280, 0x252c0, 0x25300,
+  0x25400, 0x25440, 0x25500, 0x25540, 0x25580, 0x255c0, 0x25600, 0x25640,
+  0x25680, 0x256c0, 0x25700, 0x25740, 0x257c0, 0x25840, 0x258c0, 0x25900,
+  0x25940, 0x25980, 0x259c0, 0x25a80, 0x25ac0, 0x25b40, 0x25b80, 0x25bc0,
+  0x25c00, 0x25c40, 0x25c80, 0x25cc0, 0x25d00, 0x25d40, 0x25e00, 0x25e40,
+  0x25e80, 0x25ec0, 0x25f00, 0x25f40, 0x25fc0, 0x26000, 0x26040, 0x26080,
+  0x26100, 0x26140, 0x26180, 0x261c0, 0x26240, 0x262c0, 0x26300, 0x26340,
+  0x26380, 0x263c0, 0x26400, 0x26440, 0x26480, 0x26500, 0x26540, 0x26580,
+  0x26600, 0x26680, 0x266c0, 0x26700, 0x26740, 0x26780, 0x267c0, 0x26800,
+  0x26840, 0x26880, 0x268c0, 0x26900, 0x26940, 0x26980, 0x269c0, 0x26a00,
+  0x26a40, 0x26b00, 0x26b40, 0x26b80, 0x26bc0, 0x26c00, 0x26c40, 0x26c80,
+  0x26cc0, 0x26d00, 0x26d40, 0x26d80, 0x26dc0, 0x26e00, 0x26e40, 0x26e80,
+  0x26ec0, 0x26f00, 0x26f40, 0x26f80, 0x26fc0, 0x27000, 0x27040, 0x27080,
+  0x270c0, 0x27100, 0x27140, 0x271c0, 0x27200, 0x27280, 0x272c0, 0x27380,
+  0x27400, 0x27440, 0x27480, 0x27540, 0x27580, 0x275c0, 0x27600, 0x27640,
+  0x27680, 0x27700, 0x27740, 0x27780, 0x277c0, 0x27840, 0x27880, 0x278c0,
+  0x27900, 0x27940, 0x27980, 0x279c0, 0x27a00, 0x27a40, 0x27a80, 0x27ac0,
+  0x27b00, 0x27b40, 0x27bc0, 0x27c00, 0x27d00, 0x27d40, 0x27d80, 0x27dc0,
+  0x27e40, 0x27f00, 0x27fc0, 0x28000, 0x28040, 0x28080, 0x280c0, 0x28100,
+  0x28140, 0x28180, 0x28200, 0x28240, 0x28280, 0x282c0, 0x28300, 0x28340,
+  0x28380, 0x28400, 0x28440, 0x28480, 0x28500, 0x28540, 0x285c0, 0x28600,
+  0x28680, 0x286c0, 0x28700, 0x28800, 0x28900, 0x28940, 0x28980, 0x289c0,
+  0x28a00, 0x28a40, 0x28a80, 0x28ac0, 0x28b00, 0x28b40, 0x28b80, 0x28bc0,
+  0x28c00, 0x28cc0, 0x28d00, 0x28d80, 0x28e00, 0x28e40, 0x28e80, 0x28ec0,
+  0x28fc0, 0x29080, 0x290c0, 0x29100, 0x29140, 0x29180, 0x291c0, 0x29400,
+  0x29440, 0x294c0, 0x29580, 0x295c0, 0x29700, 0x297c0, 0x29800, 0x29840,
+  0x29880, 0x298c0, 0x29900, 0x29940, 0x29980, 0x299c0, 0x29a00, 0x29a40,
+  0x29b00, 0x29bc0, 0x29c80, 0x29d00, 0x29d40, 0x29d80, 0x29dc0, 0x29e00,
+  0x29e40, 0x29e80, 0x29ec0, 0x29f00, 0x29f80, 0x29fc0, 0x2a000, 0x2a080,
+  0x2a0c0, 0x2a100, 0x2a140, 0x2a180, 0x2a1c0, 0x2a200, 0x2a280, 0x2a2c0,
+  0x2a380, 0x2a400, 0x2a440, 0x2a5c0, 0x2a600, 0x2a640, 0x2a680, 0x2f800,
+  0x2f840, 0x2f880, 0x2f8c0, 0x2f980, 0x2f9c0,
+};
+
+static int
+hkscs1999_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 >= 0x88 && c1 <= 0x8b) || (c1 >= 0x8d && c1 <= 0xa0) || (c1 >= 0xc6 && c1 <= 0xc8) || (c1 >= 0xf9 && c1 <= 0xfe)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if ((c2 >= 0x40 && c2 < 0x7f) || (c2 >= 0xa1 && c2 < 0xff)) {
+        unsigned int i = 157 * (c1 - 0x80) + (c2 - (c2 >= 0xa1 ? 0x62 : 0x40));
+        ucs4_t wc = 0xfffd;
+        unsigned short swc;
+        if (i < 2041) {
+          if (i < 1883)
+            swc = hkscs1999_2uni_page88[i-1256],
+            wc = hkscs1999_2uni_upages[swc>>6] | (swc & 0x3f);
+        } else if (i < 10990) {
+          if (i < 5181)
+            swc = hkscs1999_2uni_page8d[i-2041],
+            wc = hkscs1999_2uni_upages[swc>>6] | (swc & 0x3f);
+        } else if (i < 18997) {
+          if (i < 11461)
+            swc = hkscs1999_2uni_pagec6[i-10990],
+            wc = hkscs1999_2uni_upages[swc>>6] | (swc & 0x3f);
+        } else {
+          if (i < 19939)
+            swc = hkscs1999_2uni_pagef9[i-18997],
+            wc = hkscs1999_2uni_upages[swc>>6] | (swc & 0x3f);
+        }
+        if (wc != 0xfffd) {
+          *pwc = wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned short hkscs1999_2charset[4698] = {
+  0xc6d8, 0x8859, 0x8857, 0x885d, 0x885b, 0x8866, 0x8861, 0x885f,
+  0x886a, 0x8868, 0x886f, 0x886d, 0x88a7, 0x8873, 0x8871, 0x8877,
+  0x8875, 0xc8fb, 0x887b, 0x8879, 0x88a2, 0x8856, 0x8867, 0x885a,
+  0x886c, 0x885c, 0x886e, 0x8870, 0xc8fc, 0x885e, 0x8874, 0xc8fa,
+  0x8878, 0x8858, 0x8869, 0x8872, 0x8860, 0x8876, 0x887a, 0x887c,
+  0x887d, 0x887e, 0x88a1, 0xc8f6, 0x886b, 0xc8f8, 0xc8f7, 0x88a8,
+  0xc8fe, 0xc8f9, 0xc8f5, 0xc8fd, 0xc6d9, 0xc7f9, 0xc7f3, 0xc7f4,
+  0xc7f5, 0xc7f6, 0xc7f7, 0xc7f8, 0xc7fa, 0xc7fb, 0xc7fc, 0xc7fd,
+  0xc7fe, 0xc840, 0xc841, 0xc842, 0xc843, 0xc844, 0xc845, 0xc846,
+  0xc847, 0xc848, 0xc849, 0xc84a, 0xc84b, 0xc84c, 0xc84d, 0xc84e,
+  0xc84f, 0xc850, 0xc851, 0xc852, 0xc853, 0xc854, 0xc855, 0xc856,
+  0xc857, 0xc858, 0xc859, 0xc85a, 0xc85c, 0xc85d, 0xc85e, 0xc85f,
+  0xc860, 0xc861, 0xc862, 0xc863, 0xc864, 0xc865, 0xc866, 0xc867,
+  0xc868, 0xc869, 0xc86a, 0xc86b, 0xc86c, 0xc86d, 0xc86e, 0xc86f,
+  0xc870, 0xc871, 0xc872, 0xc873, 0xc874, 0xc875, 0xc85b, 0x8863,
+  0x88a4, 0x8865, 0x88a6, 0xc8d2, 0xc8d3, 0xc6b5, 0xc6b6, 0xc6b7,
+  0xc6b8, 0xc6b9, 0xc6ba, 0xc6bb, 0xc6bc, 0xc6bd, 0xc6be, 0xc877,
+  0xc878, 0xc876, 0x88a9, 0x88aa, 0xc6a1, 0xc6a2, 0xc6a3, 0xc6a4,
+  0xc6a5, 0xc6a6, 0xc6a7, 0xc6a8, 0xc6a9, 0xc6aa, 0xc6ab, 0xc6ac,
+  0xc6ad, 0xc6ae, 0xc6af, 0xc6b0, 0xc6b1, 0xc6b2, 0xc6b3, 0xc6b4,
+  0xf9f9, 0xf9f8, 0xf9e6, 0xf9ef, 0xf9dd, 0xf9e8, 0xf9f1, 0xf9df,
+  0xf9ec, 0xf9f5, 0xf9e3, 0xf9ee, 0xf9f7, 0xf9e5, 0xf9e9, 0xf9f2,
+  0xf9e0, 0xf9eb, 0xf9f4, 0xf9e2, 0xf9e7, 0xf9f0, 0xf9de, 0xf9ed,
+  0xf9f6, 0xf9e4, 0xf9ea, 0xf9f3, 0xf9e1, 0xf9fa, 0xf9fb, 0xf9fd,
+  0xf9fc, 0xc6e6, 0xc8d6, 0xc8d7, 0xc8d8, 0xc8d9, 0xc8da, 0xc8db,
+  0xc8dc, 0xc8dd, 0xc8de, 0xc8df, 0xc8e0, 0xc8e1, 0xc8e2, 0xc8e3,
+  0xc8e4, 0xc8e5, 0xc8e6, 0xc8e7, 0xc8e8, 0xc8e9, 0xc8ea, 0xc8eb,
+  0xc8ec, 0xc8ed, 0xc8ee, 0xc8ef, 0xc8f0, 0xc8f1, 0xc6cd, 0xc6e0,
+  0xc6e1, 0xc6e2, 0xc6e7, 0xc6e8, 0xc6e9, 0xc6ea, 0xc6eb, 0xc6ec,
+  0xc6ed, 0xc6ee, 0xc6ef, 0xc6f0, 0xc6f1, 0xc6f2, 0xc6f3, 0xc6f4,
+  0xc6f5, 0xc6f6, 0xc6f7, 0xc6f8, 0xc6f9, 0xc6fa, 0xc6fb, 0xc6fc,
+  0xc6fd, 0xc6fe, 0xc740, 0xc741, 0xc742, 0xc743, 0xc744, 0xc745,
+  0xc746, 0xc747, 0xc748, 0xc749, 0xc74a, 0xc74b, 0xc74c, 0xc74d,
+  0xc74e, 0xc74f, 0xc750, 0xc751, 0xc752, 0xc753, 0xc754, 0xc755,
+  0xc756, 0xc757, 0xc758, 0xc759, 0xc75a, 0xc75b, 0xc75c, 0xc75d,
+  0xc75e, 0xc75f, 0xc760, 0xc761, 0xc762, 0xc763, 0xc764, 0xc765,
+  0xc766, 0xc767, 0xc768, 0xc769, 0xc76a, 0xc76b, 0xc76c, 0xc76d,
+  0xc76e, 0xc76f, 0xc770, 0xc771, 0xc772, 0xc773, 0xc774, 0xc775,
+  0xc776, 0xc777, 0xc778, 0xc779, 0xc77a, 0xc8d4, 0xc8d5, 0xc6dc,
+  0xc6dd, 0xc77b, 0xc77c, 0xc77d, 0xc77e, 0xc7a1, 0xc7a2, 0xc7a3,
+  0xc7a4, 0xc7a5, 0xc7a6, 0xc7a7, 0xc7a8, 0xc7a9, 0xc7aa, 0xc7ab,
+  0xc7ac, 0xc7ad, 0xc7ae, 0xc7af, 0xc7b0, 0xc7b1, 0xc7b2, 0xc7b3,
+  0xc7b4, 0xc7b5, 0xc7b6, 0xc7b7, 0xc7b8, 0xc7b9, 0xc7ba, 0xc7bb,
+  0xc7bc, 0xc7bd, 0xc7be, 0xc7bf, 0xc7c0, 0xc7c1, 0xc7c2, 0xc7c3,
+  0xc7c4, 0xc7c5, 0xc7c6, 0xc7c7, 0xc7c8, 0xc7c9, 0xc7ca, 0xc7cb,
+  0xc7cc, 0xc7cd, 0xc7ce, 0xc7cf, 0xc7d0, 0xc7d1, 0xc7d2, 0xc7d3,
+  0xc7d4, 0xc7d5, 0xc7d6, 0xc7d7, 0xc7d8, 0xc7d9, 0xc7da, 0xc7db,
+  0xc7dc, 0xc7dd, 0xc7de, 0xc7df, 0xc7e0, 0xc7e1, 0xc7e2, 0xc7e3,
+  0xc7e4, 0xc7e5, 0xc7e6, 0xc7e7, 0xc7e8, 0xc7e9, 0xc7ea, 0xc7eb,
+  0xc7ec, 0xc7ed, 0xc7ee, 0xc7ef, 0xc7f0, 0xc7f1, 0xc7f2, 0xc6e3,
+  0xc6da, 0xc6db, 0x8840, 0x8841, 0x8842, 0x8843, 0x8844, 0x8846,
+  0x8849, 0x884a, 0x884d, 0x884f, 0x8850, 0x8851, 0x8852, 0x8854,
+  0x8855, 0xc879, 0xc8d1, 0x9277, 0x96df, 0x89d5, 0x93cd, 0x9bdf,
+  0xfa68, 0x89da, 0x8f59, 0x89db, 0x8f5d, 0x89dc, 0x96f7, 0x8ada,
+  0x8bdc, 0x97db, 0x9e53, 0x9daa, 0x9bea, 0x8a6e, 0x8bc8, 0x89e8,
+  0x89ea, 0xfb70, 0x89ed, 0x94dd, 0x89ee, 0x9eb4, 0x8ad3, 0x92db,
+  0x94db, 0x89f9, 0xfb7a, 0x89fb, 0x9efc, 0x89fc, 0x89bf, 0x89fe,
+  0x89e6, 0x9d46, 0x9dee, 0xa07e, 0xa068, 0x98e9, 0x8b68, 0x8dfd,
+  0x8bbe, 0x9fd9, 0x8aeb, 0x9fd7, 0x8b6a, 0x9c5c, 0x8bb1, 0xfb5e,
+  0x9df3, 0xa0d0, 0xfc66, 0x92e9, 0x9aec, 0x8fab, 0xfa48, 0x8e45,
+  0x9c6f, 0x9ede, 0x89ef, 0x96e9, 0x9ebb, 0x94de, 0x9eb8, 0x97ba,
+  0xfb65, 0x95d6, 0x9cbb, 0x97da, 0x8f45, 0xfb7d, 0x9158, 0xfe64,
+  0x9856, 0x9b4d, 0x935b, 0x95c7, 0x97e7, 0x9359, 0x91f5, 0x97b8,
+  0xfda2, 0xfbb6, 0x92fa, 0x9357, 0x8ba6, 0xfbb9, 0x97b0, 0xfdc4,
+  0x9ca1, 0x91f2, 0x91f9, 0x8ff1, 0x9745, 0x9853, 0xfe78, 0xfbc1,
+  0x9251, 0x9dad, 0xfd6c, 0xfa6b, 0x9bc2, 0x9a7b, 0x8b60, 0x934b,
+  0x9abd, 0x91b7, 0x95b4, 0xfec5, 0x9ef0, 0x8d64, 0x9269, 0x8d67,
+  0xfbea, 0xfbef, 0x8d68, 0x93eb, 0xfc42, 0x9166, 0xfacd, 0x93dd,
+  0x8bcc, 0x8d6d, 0x8d6e, 0x96a8, 0xfca6, 0x8d6f, 0x8d70, 0xfc64,
+  0x9060, 0x8d74, 0x97c3, 0x8ad0, 0x9274, 0x9bbe, 0x9cc8, 0x9cba,
+  0x8d78, 0x9eb9, 0x955a, 0x91b4, 0x8a48, 0x8d7d, 0x8a7d, 0x8ac2,
+  0xfd4a, 0x8da1, 0x8ad1, 0xfcb4, 0x8b47, 0x93a4, 0x9eda, 0x8a51,
+  0x8da6, 0x9ec5, 0xfcc4, 0xa078, 0x94b5, 0xfcc2, 0x8a6b, 0x8dab,
+  0xfae8, 0x8dad, 0xfc49, 0x93c1, 0x906f, 0x8db0, 0x947e, 0x90fa,
+  0x9479, 0x8db2, 0xfcee, 0x997b, 0x8db4, 0x8db7, 0x91b3, 0x8dbb,
+  0x8dba, 0x8dbc, 0x9044, 0xfd4c, 0x93e4, 0x93e0, 0xfd53, 0x8dc3,
+  0x9bb8, 0xfbf0, 0x93e9, 0x93f6, 0x8dc5, 0x8dca, 0x8dcc, 0xfd5d,
+  0x93b5, 0xfd61, 0x9cf8, 0x9252, 0xa0e8, 0x9ca5, 0x8dd6, 0x97c0,
+  0xa0de, 0x97d2, 0xfaa5, 0xfda3, 0x8ddb, 0x8eaf, 0x91b5, 0xfd49,
+  0xfdd1, 0x8deb, 0x97c6, 0xfdce, 0x90fc, 0xfc59, 0x96d6, 0x97c5,
+  0x8def, 0x97d7, 0x8df0, 0x96a6, 0xfbbf, 0x8df3, 0x9449, 0x8df5,
+  0x9872, 0x8e6b, 0xfafd, 0x8f50, 0x9dcc, 0xfc65, 0x996e, 0x94a1,
+  0x8f63, 0xa0da, 0x9253, 0xfde9, 0x9db5, 0x9879, 0x9d5d, 0x8d63,
+  0x9669, 0x9f70, 0xfc6a, 0x8ac7, 0x89d7, 0xfe4d, 0x9edd, 0xfefb,
+  0x98bc, 0xfacc, 0x95b0, 0x9464, 0x936f, 0x94b9, 0x95ec, 0x91ee,
+  0x98c3, 0x95f6, 0x8ffd, 0x98c5, 0x9766, 0xfe6e, 0x97dd, 0x92d2,
+  0x9761, 0x98cb, 0x95f0, 0x975d, 0x91e3, 0x98cc, 0x9469, 0x98cd,
+  0x98ce, 0x95fc, 0x94a3, 0x9662, 0xfeb6, 0x9463, 0x98d0, 0x98d1,
+  0x9475, 0xfae0, 0x9472, 0x98d6, 0x8af0, 0x98d9, 0x98db, 0x98dd,
+  0x98a8, 0x8a6d, 0x8afb, 0x8aae, 0xfbc9, 0x98e4, 0x98e6, 0x98e8,
+  0x8a4d, 0x9257, 0x95df, 0xa0ac, 0x98eb, 0x98ec, 0x98f4, 0x8ab8,
+  0x9ee7, 0x94bc, 0xfcd1, 0x9cc6, 0x9e7e, 0x98fe, 0xfde8, 0x9940,
+  0x94c9, 0x94d3, 0x9946, 0x90c0, 0x94d1, 0x9573, 0x93c2, 0x9948,
+  0x994b, 0x8e55, 0x994e, 0x8efe, 0x8e59, 0x94ec, 0x94ef, 0x8f74,
+  0x9955, 0x9544, 0x9956, 0x9959, 0x995b, 0xfa45, 0x90b7, 0x9743,
+  0x95cd, 0x97c9, 0xfd50, 0x8eb9, 0x95c6, 0x9967, 0x8ab9, 0x8dfc,
+  0x8a76, 0x9d51, 0x9973, 0x9d4f, 0x997a, 0x9564, 0x99a1, 0x99a5,
+  0x99a7, 0x8eed, 0x99ad, 0xc87e, 0x946e, 0x8f70, 0xfad0, 0x99b3,
+  0xa053, 0x965c, 0xfd7a, 0x97fe, 0x92bd, 0x97fd, 0x8f64, 0xfcf7,
+  0x9562, 0x97cd, 0x9e64, 0x924c, 0x8ec9, 0x99bc, 0x9da5, 0x8f54,
+  0x8f7c, 0x8ea2, 0x8f7a, 0x97ae, 0x96c8, 0x99c3, 0x90d6, 0x9cbe,
+  0x8f76, 0x9470, 0xfb4b, 0xfdca, 0x8ec7, 0xa0f9, 0x8fa9, 0x99c7,
+  0x90d7, 0x9edf, 0x99ce, 0x8fba, 0x8feb, 0x99cf, 0x8fc2, 0x92c9,
+  0x97dc, 0x95b3, 0x9c79, 0x95b2, 0x8fdb, 0x9be3, 0x9e7a, 0x9bee,
+  0x99de, 0xfafa, 0x8a52, 0x99e1, 0x8a67, 0x8bb5, 0x8aac, 0x99e9,
+  0xfbca, 0x97de, 0x95d1, 0x99f5, 0xfc4a, 0x9ba9, 0xfbdc, 0xfe56,
+  0x9ea4, 0x9d49, 0x95db, 0x89c5, 0x99f8, 0x9664, 0x9055, 0x96d4,
+  0x977c, 0x964d, 0x97e1, 0x9a48, 0x9a49, 0xfe7d, 0x90aa, 0x9a50,
+  0x9347, 0x8ed8, 0x90c9, 0x9a55, 0x90bc, 0x9a58, 0x8bb8, 0x90d5,
+  0x9641, 0x9a5a, 0x9a5c, 0x97c2, 0x8abb, 0x9baa, 0x90f5, 0x9a60,
+  0x9145, 0x9a63, 0x8bb6, 0xfccf, 0x966b, 0x9a6e, 0x914f, 0x9746,
+  0xa0e6, 0x92d7, 0x9675, 0x93d4, 0x91bb, 0x9679, 0x9a70, 0x9678,
+  0x91cd, 0x9c4a, 0xa06f, 0xa06a, 0x915f, 0x9fa5, 0x89ba, 0x9ecd,
+  0x9a79, 0x9dce, 0x9d73, 0x96b9, 0x96bc, 0x9cd1, 0x89b7, 0x9eee,
+  0xfb43, 0x9ec9, 0xfbd3, 0x91ae, 0x9d78, 0x9d7b, 0x9eb3, 0x9eb2,
+  0x9dd6, 0x994f, 0x89ce, 0x8bc0, 0x9fc4, 0x8bd4, 0xc6bf, 0x8bf9,
+  0x8946, 0xc6c0, 0xfae5, 0xc87b, 0x8bc6, 0x9c57, 0x9afb, 0x89d0,
+  0x89cf, 0xc6c1, 0x89d1, 0x89e2, 0x927e, 0x9dba, 0xc6c2, 0xfbf8,
+  0x8bc7, 0x926b, 0x89d2, 0x9fcf, 0x9da9, 0x89d3, 0x99e2, 0x9267,
+  0x92a4, 0x894e, 0x894f, 0x9278, 0x91b6, 0x89d4, 0x9fd2, 0x92a7,
+  0x95a2, 0x926e, 0x96ea, 0x926f, 0x92a3, 0x8950, 0xfa57, 0x9866,
+  0x89d6, 0x98b2, 0x92ab, 0x96de, 0x92ac, 0x9f6e, 0x8ef2, 0x9f6c,
+  0x89d8, 0xfa59, 0x92a8, 0x9163, 0x9f73, 0x92ad, 0x9be9, 0x92a9,
+  0x92aa, 0x89d9, 0xfd56, 0x9fa8, 0x92a1, 0x90e3, 0xa0a6, 0x94ab,
+  0xfc72, 0x97c4, 0x92ae, 0xfa67, 0x92a2, 0xfa69, 0x9268, 0x8951,
+  0xfa6f, 0xfa71, 0x8952, 0x945a, 0xc6c3, 0x89dd, 0xc8a2, 0xc6c4,
+  0x9e52, 0x8953, 0x9e55, 0x92ba, 0xc6c5, 0xfa7d, 0xfaa8, 0x9a68,
+  0xfa47, 0xfa7e, 0x92bb, 0xfdb6, 0xfaa2, 0xfaa3, 0xfaa4, 0x9bb4,
+  0xfaa6, 0x89df, 0xfddb, 0xfaa9, 0x8954, 0xfaab, 0xfc7a, 0x89e0,
+  0x9f4f, 0xc87d, 0x89e1, 0xfab0, 0x9fcd, 0xa0e7, 0xfab1, 0x89a6,
+  0x9efa, 0xfab2, 0xfab4, 0x92c4, 0x9f6f, 0x8bb0, 0x9fac, 0x89e3,
+  0x9bd3, 0x89e4, 0xfab5, 0x9fd5, 0x8955, 0x92c5, 0x8956, 0xfab3,
+  0xfab6, 0xfab7, 0x9edc, 0xfbc4, 0x9f71, 0xfaba, 0x92c7, 0xc6c6,
+  0x9a4c, 0x89e5, 0x9f7d, 0xa0a9, 0xfac4, 0xc6c7, 0x8957, 0xfaaa,
+  0x8958, 0x8be3, 0x8b61, 0x9af1, 0x9eb7, 0xc6c8, 0xfad1, 0xfad2,
+  0x9eba, 0xfad4, 0xfad9, 0xfadb, 0x9ce0, 0xfbf7, 0xfbfa, 0x89e7,
+  0xa07a, 0xfadc, 0xfadd, 0x89e9, 0xc6c9, 0xfae2, 0x89eb, 0xfae3,
+  0x90c8, 0x92da, 0x8959, 0x9cf5, 0x895a, 0xfae7, 0x9fa2, 0xfaea,
+  0xfaed, 0x8fad, 0xfb59, 0xfaef, 0x96ef, 0x9dec, 0x9dca, 0xfd6d,
+  0x89ec, 0xfb44, 0x9de2, 0x9ec0, 0x9e56, 0x9f79, 0x9ac7, 0xfaf4,
+  0x98a1, 0xfaf8, 0x89f0, 0x9e47, 0x9df7, 0x9fd3, 0x9aca, 0x89f1,
+  0xfaf9, 0x8e5a, 0x89f2, 0x89f3, 0x925d, 0x8b51, 0x92e0, 0x89f4,
+  0x9fd4, 0x8a79, 0x89f5, 0x97a7, 0x93ba, 0x9e58, 0x89f6, 0x9e57,
+  0x89f7, 0x8a41, 0x89f8, 0xfaf1, 0x89fa, 0xfb42, 0xfabf, 0xfba3,
+  0xfaf7, 0x9e4e, 0x94dc, 0x95da, 0x9df8, 0x9f6a, 0x8ab7, 0xfb46,
+  0x8a46, 0xfb47, 0x9148, 0x92de, 0x8b53, 0x9df6, 0x9bda, 0x9d7e,
+  0x89fd, 0x99e4, 0x9e43, 0x9de9, 0x8f52, 0x9df5, 0x9df0, 0x99e7,
+  0x8bbd, 0x9def, 0x9fb7, 0x9dd0, 0x9feb, 0x8da9, 0x9dcf, 0x98e1,
+  0x9de5, 0x9dc8, 0xfb4f, 0x9deb, 0xfb54, 0xfb55, 0x9aa2, 0x8ad6,
+  0x9a5f, 0x9ef5, 0x8fb7, 0x9ad2, 0x9e6a, 0x9ee8, 0x8bbf, 0x91c2,
+  0x9d62, 0x9260, 0x925e, 0x91c1, 0x8ac5, 0x97a3, 0x8b6c, 0x8d7e,
+  0x9c54, 0x9dbd, 0x9cc5, 0x895b, 0xfb5c, 0xfb5b, 0xfb57, 0x98c7,
+  0xfb5a, 0x9cee, 0x92e2, 0x94a7, 0x9bd4, 0xfb64, 0xfb76, 0xfb60,
+  0x99e5, 0x9ac2, 0x91fb, 0xa073, 0x9f72, 0x9fcc, 0x98a5, 0x92e8,
+  0x9bbc, 0x96f3, 0x92e7, 0xfc67, 0x8b7d, 0x9bf4, 0x9ef7, 0x9ec1,
+  0x996f, 0x96f1, 0x8e41, 0x954a, 0x97e6, 0x96f5, 0x92e6, 0x9f42,
+  0xfb67, 0x99a9, 0xfae6, 0xfb69, 0x97e5, 0x967d, 0xfb6c, 0x99a2,
+  0x9abb, 0x9a65, 0x944e, 0xfb6e, 0x99df, 0x98e3, 0x9254, 0x967b,
+  0x8aaf, 0x8baf, 0x9ebd, 0x9ee6, 0xfb6f, 0x8ee1, 0x9b7d, 0x9c7e,
+  0xf9d9, 0x92ea, 0xfb72, 0xfb71, 0x895c, 0x98f0, 0x96f2, 0xfb74,
+  0x8bc1, 0x895d, 0x89de, 0x895e, 0xc6ca, 0xfe42, 0xfb7b, 0x895f,
+  0x8960, 0x9bcd, 0x9dd3, 0x984c, 0x9752, 0x95c3, 0x9bb6, 0x9ab9,
+  0x97b3, 0x9f74, 0x92f1, 0x97df, 0xfba6, 0xfbab, 0x9877, 0x9854,
+  0x95c5, 0x9d55, 0xfbb2, 0x957e, 0x9742, 0x94e6, 0x92f5, 0x92fd,
+  0xfba2, 0x9c51, 0x94e9, 0x985c, 0x92f0, 0x944c, 0x916b, 0x8b78,
+  0x94e2, 0x984f, 0xfbb5, 0x9271, 0x9365, 0x985b, 0x9850, 0x97bc,
+  0x92f3, 0x9340, 0x984d, 0x9572, 0xfdef, 0xfdc1, 0xfbba, 0x92eb,
+  0xfc73, 0x97b7, 0xfbb4, 0x90a7, 0x9741, 0x92f4, 0xfbbc, 0x9577,
+  0x9ee2, 0x8f78, 0xf9dc, 0x9672, 0x9eb5, 0x964b, 0xa0fa, 0x9575,
+  0x90da, 0x9367, 0xfea4, 0x90df, 0x9354, 0x8961, 0x8bb4, 0x9dc0,
+  0x8e48, 0xfbc5, 0xfbc7, 0xc6cb, 0xfa79, 0x9e67, 0xfbd2, 0x8962,
+  0x8963, 0xfc7d, 0x9f6b, 0xfbcc, 0xfeae, 0xfbd1, 0xfb75, 0xfbd4,
+  0xfbd6, 0xfbd8, 0x8b5d, 0x934c, 0x9ae2, 0x8bc9, 0xfbdb, 0x9fc9,
+  0x9f44, 0x98ed, 0xfbdd, 0x8df2, 0x8964, 0xfdf2, 0x934d, 0xfbe7,
+  0xa0f2, 0x9868, 0x9f58, 0x8d73, 0xfbde, 0xfbdf, 0xfbe3, 0x8da8,
+  0xfbe4, 0x9c75, 0x9878, 0x8d60, 0xfbe5, 0x8d61, 0x8d62, 0xa0a1,
+  0x9c40, 0x98ad, 0x9eea, 0x9ceb, 0xfbe0, 0x9f51, 0x8d65, 0x9cf1,
+  0xfc58, 0x8d66, 0x9654, 0xfbe8, 0xc6cc, 0x9fce, 0xfbfc, 0x9ae4,
+  0x9f75, 0xfbf1, 0x8d69, 0x934f, 0x934e, 0xfbf4, 0xc6ce, 0xfbc3,
+  0x8965, 0x8d6a, 0x9353, 0x9dfb, 0xfbfd, 0x9059, 0xfc40, 0xfc41,
+  0xfc43, 0x9361, 0xfc46, 0x9362, 0x8d6b, 0xfc4c, 0x95b8, 0xc6d0,
+  0x8bca, 0x987a, 0xc6d1, 0xfc51, 0xfc54, 0xfaaf, 0x8d6c, 0xfa61,
+  0xfc57, 0x9b70, 0xa051, 0x8bcb, 0x936e, 0xfcd5, 0xfca9, 0xfc61,
+  0x8966, 0xfacb, 0xf9da, 0x937a, 0xa0e0, 0x936b, 0xfc6b, 0xa0dc,
+  0x9468, 0xfc6d, 0x8d71, 0xfd64, 0x99ba, 0x9ad0, 0x9a61, 0xa0e5,
+  0xa05b, 0x96ac, 0x9740, 0x9ef1, 0x9f7e, 0x8d72, 0xfc76, 0x96a9,
+  0xa06e, 0xfcaa, 0xfbcd, 0xfc74, 0xa074, 0xa071, 0xfc79, 0xfc7c,
+  0x9c50, 0x9379, 0x9378, 0xa0dd, 0x8d75, 0x8d76, 0x9374, 0x8d77,
+  0xfca5, 0xfca2, 0x90c3, 0xa079, 0x8d79, 0x8bfc, 0xa076, 0x8bcd,
+  0x9f5a, 0x9ff4, 0x9fba, 0x8d7a, 0x9e45, 0x93b0, 0xa075, 0x9b46,
+  0xfcae, 0xfcb0, 0xfa51, 0x8d7b, 0x8d7c, 0x9ed6, 0x93ac, 0x9f5b,
+  0x93a9, 0xa07c, 0xfcb2, 0x8ac1, 0x9fb4, 0xfcac, 0x9e4c, 0x8fc5,
+  0x93ad, 0x9dc3, 0x8da2, 0x9d4a, 0xfcb6, 0x8da3, 0x9e4b, 0x9e4d,
+  0x8da4, 0x8afd, 0xfcb5, 0xfcc3, 0x93b2, 0x8da5, 0x93a1, 0x8ac6,
+  0x8a5b, 0x894d, 0xfed4, 0x8a78, 0x93ab, 0x8da7, 0x9f45, 0x8a56,
+  0xfcbf, 0xfcc0, 0x8ee6, 0x8aa4, 0x8943, 0x93f3, 0xfcab, 0x9ea2,
+  0x9dc7, 0xc6d2, 0x8bce, 0xfcc5, 0xfccb, 0x93b3, 0xfcca, 0xfcc9,
+  0x8dac, 0xfbc6, 0x8967, 0xfccd, 0x9cf3, 0xfcd0, 0x95bb, 0xfcd3,
+  0xfcd4, 0x8dae, 0xfcd7, 0x93db, 0xfe63, 0x93d5, 0xfcda, 0x9b71,
+  0xfcdd, 0x8daf, 0xfaf2, 0x93d8, 0xfcdf, 0x93d3, 0xfce1, 0x8e76,
+  0xfc62, 0x93d1, 0x8db1, 0x9859, 0xfb52, 0xfb53, 0xfb4d, 0x9cbf,
+  0x9b72, 0xfb50, 0x93be, 0x9df1, 0xfceb, 0xa0bb, 0x9b7e, 0x8db3,
+  0x9ae8, 0x8edc, 0x9cf9, 0xfa50, 0x98e7, 0xfcf3, 0xfcf2, 0x93e5,
+  0x9a59, 0x8db5, 0xfd4d, 0xfd5e, 0x8f7d, 0x9547, 0xfcf6, 0x9250,
+  0x8968, 0x8db6, 0xfcfb, 0xa07d, 0x98fc, 0x8969, 0xfe4f, 0x9256,
+  0xfac9, 0x93e8, 0xfcf8, 0x9ce3, 0xfda9, 0xfc44, 0x9640, 0x8db8,
+  0x9b4a, 0x8fb9, 0xfcfe, 0x896a, 0x8db9, 0x917e, 0x93f4, 0xfb7c,
+  0x93e7, 0x97ef, 0xfe4a, 0xfd45, 0x96a5, 0xfee0, 0xfd48, 0xfd47,
+  0xfef2, 0xfe6a, 0x8dbd, 0x9ba1, 0x9ab7, 0x8efc, 0x9fa1, 0xfd51,
+  0xfaad, 0x8dbe, 0x89a4, 0x9ad9, 0xfd4e, 0x8dc0, 0x97f0, 0x93b4,
+  0xfd44, 0x9fa7, 0x8dc2, 0x99b6, 0xfd52, 0x8dc1, 0x8e46, 0xa0d1,
+  0x9fca, 0x92cf, 0x9cf4, 0x8dc4, 0xfd41, 0x9b4c, 0xfd57, 0xfcef,
+  0x9cde, 0xfd42, 0x986c, 0x97f9, 0x9558, 0x985e, 0xfe7b, 0x94cd,
+  0x93ee, 0xfd5a, 0x93f5, 0x93ef, 0x8eea, 0x8f5b, 0x8dc6, 0x8dc8,
+  0x8dc7, 0x93f7, 0x8dc9, 0xfbf2, 0x9670, 0x8dcb, 0xfd5c, 0x8f65,
+  0x8dcd, 0x9da8, 0x94f9, 0x8dce, 0x93ea, 0xfd5f, 0x93f0, 0x9fb6,
+  0x8dcf, 0x9763, 0x8dd0, 0x93f1, 0xfd62, 0xfd65, 0x9fdb, 0x93f8,
+  0x8bf7, 0xfd66, 0x8bcf, 0x8dd1, 0x8dd2, 0xfd71, 0xfd6f, 0x8dd3,
+  0x9fe7, 0x90bd, 0x9fd0, 0x8bd0, 0xfd72, 0x9cae, 0x8bd1, 0x8adb,
+  0xfae4, 0x95ce, 0xfd76, 0xfb62, 0x8dd4, 0xfd78, 0x8ee3, 0x9076,
+  0x98c6, 0x8dd5, 0x97d1, 0x9eb6, 0xfac7, 0xa042, 0x9873, 0x9ffc,
+  0x8dd7, 0x92fb, 0x8dd8, 0x944f, 0x8dd9, 0x896b, 0x97ce, 0xfaf3,
+  0xfdae, 0xfbaf, 0x92b7, 0x8dda, 0x9c5a, 0xfdad, 0x8ddc, 0x9444,
+  0x8ddd, 0xa0d6, 0x97d5, 0x944a, 0x944d, 0x97cb, 0x8dde, 0x8ddf,
+  0x8de0, 0xfef9, 0xfdc0, 0xfcf9, 0xfb7e, 0x92b3, 0xfdaf, 0x8de1,
+  0x95d3, 0x89c1, 0xfd68, 0x9cb7, 0x8de3, 0xfac0, 0x8de5, 0xfa64,
+  0x8947, 0x8de4, 0x8de7, 0x8de8, 0xfdc7, 0xfdb0, 0x9445, 0x97d6,
+  0xfcc6, 0x9844, 0x8de9, 0x8dea, 0xfe50, 0xfdcc, 0x9da7, 0xfdcd,
+  0xfdcf, 0x95d2, 0x8ded, 0xfcba, 0xfdc5, 0xfdd2, 0x9cdc, 0x95cf,
+  0x8dee, 0xfdd4, 0x96ec, 0x96eb, 0x90b6, 0xfdc3, 0x98ab, 0x96ee,
+  0x8df4, 0xfde0, 0x8df6, 0x8df7, 0x8ffa, 0x97d0, 0x8bd2, 0x8df8,
+  0x90d9, 0xfaf0, 0xfde1, 0x8df9, 0xfde3, 0x8dfa, 0xfb63, 0x90a6,
+  0x9970, 0x91eb, 0x9770, 0x986f, 0xfde2, 0x98f2, 0x9afc, 0x896c,
+  0xfdfd, 0x995e, 0x95bd, 0xfde4, 0x91e6, 0xfde5, 0xfde6, 0xfde7,
+  0x9454, 0x99b8, 0x97e9, 0x9346, 0x9863, 0x95bc, 0xfded, 0xfdf7,
+  0x9870, 0x96f6, 0x8ea9, 0x9451, 0x8e43, 0x8b5a, 0xfdee, 0xfdf0,
+  0xfdf4, 0x9bf5, 0x977e, 0x9bd5, 0x9ac3, 0x97c8, 0xa0db, 0x91d0,
+  0x9fe4, 0x8fdd, 0x91e9, 0x98e0, 0x92ca, 0x9857, 0xfdeb, 0x9b49,
+  0x9d76, 0x9eaf, 0x9ccc, 0xfdea, 0x8df1, 0xfdfb, 0x8e53, 0xfacf,
+  0x96f9, 0x98bf, 0x9e49, 0x9bca, 0xfdfe, 0x92dc, 0xfe41, 0x91cc,
+  0x91e2, 0xfe44, 0x8bd3, 0xfe47, 0xfe48, 0x9455, 0xfe4b, 0xfe4c,
+  0x8dbf, 0x9e78, 0xfe51, 0x9456, 0x9d61, 0x9457, 0x9966, 0x8bd5,
+  0xa069, 0x98b4, 0xa049, 0xa04c, 0x9e65, 0x98b5, 0xfe58, 0x9975,
+  0xfe53, 0xa065, 0xfe59, 0x98b7, 0x98b8, 0x98ba, 0x98bb, 0x9fbc,
+  0xa04a, 0x9ec7, 0x98ae, 0x92d6, 0xfae1, 0x91d4, 0xfade, 0xfe5b,
+  0xfe5e, 0xfbd7, 0xfe5a, 0x94c5, 0xfaca, 0x98c1, 0x975c, 0xfe74,
+  0x9773, 0xfa46, 0x9764, 0xfe68, 0x964e, 0x9765, 0x89a1, 0x95fa,
+  0x92d4, 0xfe69, 0xfb45, 0x98c8, 0x90ef, 0x98c9, 0x98ca, 0x946d,
+  0x94b7, 0xfe6c, 0x946b, 0x92fc, 0x95eb, 0xfe73, 0x976e, 0xfe5f,
+  0xfdbd, 0x92d5, 0xfeb9, 0xfe71, 0xfbbb, 0x947a, 0x95fb, 0xfe77,
+  0xfe79, 0xfe75, 0x945d, 0xfe7c, 0x9344, 0x8ea6, 0x92d3, 0x94b8,
+  0xfc71, 0x975e, 0xfea7, 0x946a, 0x93e3, 0x98cf, 0xa0d9, 0xa0bf,
+  0xa04d, 0xa0b8, 0xa0ce, 0xa0b7, 0xfea9, 0x89c3, 0xfeab, 0x9df4,
+  0x896d, 0x9c7b, 0x98d2, 0x9fa9, 0xfeb2, 0xfeb1, 0x97d9, 0xa0c4,
+  0x9476, 0x9978, 0xfeb3, 0x98d3, 0xfeb4, 0x98d4, 0x9fb9, 0x9471,
+  0x98d5, 0xfeb8, 0xc6d4, 0xfeba, 0x9e5c, 0xfebb, 0xa044, 0x98d7,
+  0x98d8, 0xfebc, 0x9ffe, 0xfebd, 0x9ddd, 0x9ee1, 0x98da, 0x9ddf,
+  0xfebf, 0xfebe, 0x9eeb, 0x9e59, 0xa05c, 0xfec0, 0x9477, 0x98dc,
+  0xfec1, 0x98de, 0xfec3, 0xfec8, 0xfec9, 0xfeca, 0xfecb, 0x9fc2,
+  0x98c4, 0x94b0, 0x94b1, 0xfed1, 0xa0c1, 0xfed2, 0xa0cd, 0xfed3,
+  0x98e5, 0xfed6, 0x91e4, 0x8fc7, 0x94ae, 0x8a4f, 0x94b2, 0x8fd4,
+  0x98ea, 0xfed8, 0x9de0, 0x98ee, 0x95c4, 0xfce8, 0x98ef, 0xfad8,
+  0xfedc, 0xa0ae, 0x9d4c, 0x98f1, 0x98f3, 0x94c1, 0x98f5, 0xfa4f,
+  0x96e2, 0x9450, 0x96a2, 0x98f6, 0x96e5, 0x98f7, 0xa046, 0x96e3,
+  0x98f8, 0x9ee4, 0xf9d6, 0x94c3, 0x94c2, 0xfee1, 0xfee9, 0x96e4,
+  0x89ac, 0x96db, 0xfee2, 0x94c4, 0xfee3, 0xfee7, 0x9ffb, 0x93c9,
+  0x94e8, 0xfb56, 0x90c5, 0xa0a8, 0xfee5, 0x98fd, 0x98fb, 0xfee8,
+  0x8ebf, 0x8bd8, 0xfef7, 0x8f68, 0x94c6, 0x9dea, 0xfc69, 0x9cda,
+  0xfef3, 0x9c72, 0xfef0, 0x89c9, 0x9941, 0x9942, 0xfef5, 0x91d7,
+  0x94cc, 0xfef8, 0x97a8, 0xfefc, 0xfdbf, 0xfefe, 0x96d1, 0x94d5,
+  0x94d0, 0x9944, 0xa0b3, 0x94cf, 0x9ffa, 0x91e5, 0x9c6a, 0x8e49,
+  0x8e4c, 0x8e4d, 0x9a73, 0x9947, 0x8e50, 0x8e4f, 0x9949, 0x8e51,
+  0x8e52, 0x9ab2, 0x89a5, 0x994c, 0x9ff8, 0x8e56, 0x994d, 0x91ca,
+  0x8e57, 0x94e1, 0x9047, 0x8fd8, 0x8e58, 0x94eb, 0x8e5c, 0x9553,
+  0x9fe5, 0x9f56, 0x954f, 0x8e5e, 0x996a, 0x9c64, 0x9cd9, 0x8e5d,
+  0x9950, 0x9951, 0x8e62, 0x9952, 0x8e68, 0x8e61, 0x9f59, 0x8bb3,
+  0x9f5d, 0x8e66, 0x8e6e, 0x9f64, 0x9953, 0xfab8, 0x9954, 0x8e70,
+  0x9f61, 0x8e72, 0xa06b, 0x9f40, 0x94ed, 0x94ee, 0x9fbd, 0x8e7b,
+  0x9957, 0x94f7, 0x9f5f, 0x8e73, 0x9f62, 0x94f6, 0x9958, 0x8e75,
+  0xf9db, 0x9072, 0x94f8, 0x995a, 0xa0b0, 0x8e79, 0x8e78, 0x94f3,
+  0x98af, 0xa0b2, 0x8e7a, 0x995c, 0x8e7c, 0x8e7d, 0x8bd9, 0x89a2,
+  0x9ed7, 0xa0b6, 0x9e42, 0x8ea4, 0x8ea7, 0x9542, 0x987d, 0x9755,
+  0x8ea8, 0x8eaa, 0x89a3, 0x9960, 0x9962, 0x94fc, 0x9961, 0x94fa,
+  0x8eae, 0x8eb2, 0x8eb0, 0x9963, 0x97aa, 0x94fb, 0x8ebb, 0x9876,
+  0x8ea1, 0x8eb7, 0x9da6, 0x9eb0, 0x8eb8, 0x9d70, 0x896e, 0x896f,
+  0x8970, 0x8971, 0x8972, 0x8973, 0x8974, 0x8975, 0x8ebc, 0x8ebd,
+  0x8ebe, 0x9dd1, 0x94fd, 0x8bd7, 0x8bda, 0xa0e2, 0x9fe9, 0xfda8,
+  0x8ae7, 0x8ec2, 0x8ec4, 0x9964, 0x9965, 0x954e, 0x98b3, 0x8ecb,
+  0x8bdf, 0x8ece, 0x8ecf, 0x9968, 0x9969, 0x996b, 0x8ed1, 0x996c,
+  0x8ed4, 0x8ed5, 0x996d, 0xa0be, 0x8ed6, 0xa0bc, 0xa0b5, 0xa0b4,
+  0x8be0, 0x89b5, 0x8edd, 0x9e5d, 0x9971, 0x89ae, 0x9de8, 0x9565,
+  0x9972, 0x8b5c, 0x89b1, 0xa0c0, 0x8edf, 0x9566, 0x9974, 0x9976,
+  0x9977, 0x9979, 0x9dda, 0x8ee0, 0x935c, 0x9de6, 0x8b5f, 0x9563,
+  0x9567, 0x9de3, 0x997c, 0x997d, 0x997e, 0x8b5b, 0x99a3, 0x99a4,
+  0x99a6, 0x99a8, 0x8abe, 0x9e61, 0x99aa, 0xa0c8, 0x99ab, 0xfec4,
+  0x98c2, 0x8ee8, 0xa0ba, 0xfd77, 0x8eee, 0x9ebf, 0x89c2, 0x99ac,
+  0x956b, 0x956c, 0x99af, 0x994a, 0x8976, 0x8f48, 0xfbee, 0x99ae,
+  0x8efb, 0x8b52, 0x99b0, 0x8977, 0x8f41, 0x99b1, 0x8f49, 0xfa4d,
+  0x9de4, 0xfbe9, 0x9b54, 0x99b2, 0x9e68, 0x8f4a, 0x8f42, 0x8f51,
+  0x9846, 0x99b4, 0x8ef5, 0xfd55, 0x9ccd, 0x8978, 0x8f53, 0x8f6f,
+  0x8e63, 0x8f56, 0xfe76, 0x9fc6, 0xfaac, 0x8f58, 0x9848, 0x99b7,
+  0x9665, 0xfa6c, 0x9de7, 0x9e62, 0x96cc, 0x8e67, 0xfc75, 0x987e,
+  0xfdb9, 0x97fc, 0x98f9, 0x8f66, 0x956e, 0x9245, 0x8f60, 0x9ed1,
+  0xfecd, 0x99b9, 0x8f62, 0x974c, 0x91c7, 0x955f, 0x99bb, 0x8e6d,
+  0x8f71, 0x94cb, 0x95b1, 0x9af2, 0x96c3, 0x99bd, 0xa0cf, 0x8f6d,
+  0x99be, 0x8ef4, 0x8f72, 0x95e4, 0x99bf, 0x9242, 0xfba5, 0x99c0,
+  0xfdb4, 0x8f77, 0x99c1, 0xfab9, 0x8f40, 0xfa44, 0x99c2, 0x8f5c,
+  0x99c4, 0x99c5, 0x8f7b, 0x8fa3, 0x99c6, 0x96cd, 0x96c7, 0x8fa5,
+  0xfabb, 0x9570, 0x9368, 0x8f7e, 0x8faa, 0xa050, 0x90d3, 0x9556,
+  0x8fb8, 0x99c8, 0x8faf, 0x99c9, 0x9579, 0x9f49, 0x99ca, 0x99cb,
+  0x9dd5, 0x8fb0, 0xfa7a, 0x9e5f, 0x99cd, 0xa0c9, 0x9adb, 0xa0c6,
+  0x8fb4, 0xa0d7, 0xa0c7, 0xa043, 0x8fb5, 0x8fb2, 0xa061, 0x9e5e,
+  0x8fb6, 0x9fe8, 0x9cb2, 0x957c, 0x9fc7, 0x8fbb, 0x8fbc, 0x8fec,
+  0x8fc0, 0x936a, 0x8be4, 0x9c7c, 0x95a1, 0xfeec, 0x95a3, 0x8fc1,
+  0xa052, 0x99d0, 0x8fc3, 0x8fc4, 0x95a4, 0x8fc6, 0x9e60, 0xf9d8,
+  0x95a5, 0x9cb3, 0x99d1, 0xfef1, 0x99d2, 0x9cc2, 0x99d3, 0x95a7,
+  0x95a9, 0x95a6, 0x9c5d, 0x98e2, 0x8fc9, 0xa0c2, 0x8fca, 0x99d4,
+  0xa0b9, 0x9b58, 0x8fcd, 0xa0d4, 0x8fce, 0x8be5, 0x8979, 0x8fd0,
+  0x95b6, 0x99d6, 0x95e5, 0x99d7, 0x95b5, 0xa0ca, 0x9ffd, 0xa058,
+  0x8fd6, 0x99d8, 0x8fd3, 0x8fe5, 0x8fe9, 0x99d9, 0x927c, 0x9c45,
+  0x8fde, 0x8fdf, 0xa04b, 0x8fe2, 0xa0cc, 0x8fe3, 0x8fe4, 0x9bc4,
+  0x9bfc, 0x964c, 0x9af6, 0x8fe7, 0x8fe8, 0x8be7, 0x897a, 0x897b,
+  0x99da, 0x8fed, 0x95c0, 0xa0cb, 0x9e48, 0x99db, 0x8ff3, 0x8ff9,
+  0x95c1, 0xa04e, 0x99dc, 0xa064, 0x8ff7, 0x89b0, 0xa048, 0x8ffb,
+  0x8ff6, 0x9ddc, 0x99dd, 0x8be8, 0x92c1, 0x9fd6, 0xa0d2, 0x9040,
+  0x8ac4, 0x99e0, 0x9ff0, 0x9ff3, 0x9dbf, 0x9ff6, 0x95c8, 0x9e5a,
+  0x99e3, 0x8a4a, 0x9ff1, 0x8aa7, 0x99e6, 0x9ff7, 0x9fed, 0x8a5c,
+  0x9dae, 0x95c9, 0x9048, 0x99e8, 0x9049, 0x90b1, 0x904a, 0x99ea,
+  0x9bd1, 0x99eb, 0x99ec, 0x99ed, 0x99ee, 0x904c, 0x904d, 0x95cb,
+  0x97e2, 0x95cc, 0x9f78, 0x897c, 0x897d, 0x897e, 0x995d, 0x9b5a,
+  0x9050, 0x9054, 0xc6d6, 0x9aa8, 0x99ef, 0xfeeb, 0x9da3, 0x9da1,
+  0x9943, 0x9945, 0x9d7d, 0x99f0, 0x99f1, 0x99f2, 0x9d60, 0xa0a3,
+  0x905b, 0x9edb, 0x9d79, 0x99f3, 0x9062, 0x9f55, 0x9bf9, 0x9065,
+  0x96e0, 0x98be, 0x9068, 0x906c, 0x95d8, 0x906a, 0x9fb2, 0x9fae,
+  0x9fb0, 0x89ad, 0x906e, 0x9e71, 0x9e4a, 0x9fdc, 0x89ab, 0x9fb8,
+  0x9070, 0x8b63, 0x95dc, 0x9071, 0xfc5e, 0x8949, 0x965b, 0x94a6,
+  0x8fd5, 0x9e73, 0x9075, 0x99f7, 0x99f9, 0x9663, 0x95b9, 0x94d4,
+  0xfcfa, 0x9077, 0x90ab, 0x9d4d, 0x99fa, 0x92e3, 0x97bb, 0x9078,
+  0x99fb, 0x97e0, 0x96dc, 0x9ca8, 0x9772, 0x9440, 0x92f2, 0x99fd,
+  0x99fc, 0xf9d7, 0x964a, 0x96d8, 0x99fe, 0x904b, 0xfa41, 0x9a40,
+  0x975b, 0x9a41, 0x91dd, 0x93fc, 0x9a42, 0x9a43, 0x9659, 0x9a44,
+  0x9051, 0x94bf, 0x90a2, 0x9cab, 0x9776, 0xfc55, 0xfe45, 0x94a8,
+  0x9a45, 0xfa4b, 0x9de1, 0x96d9, 0x9774, 0xfdf5, 0x92e5, 0x9645,
+  0x91da, 0x90a3, 0xa05f, 0x90af, 0x97bf, 0x914c, 0x967a, 0x91de,
+  0x9a46, 0xfeb0, 0x9779, 0x946c, 0x9858, 0x9266, 0x93fb, 0x9a47,
+  0x9749, 0x9748, 0x934a, 0x9ce2, 0x9264, 0x91df, 0xfb79, 0x96d7,
+  0x9343, 0xfdcb, 0xfe7a, 0x91db, 0x97af, 0x95dd, 0x9348, 0x9a4b,
+  0xfc45, 0x9a4d, 0x91bc, 0x90e2, 0x90b4, 0x95e1, 0x9a4e, 0x9a4f,
+  0xfe40, 0xfe43, 0x96dd, 0x9a51, 0x96a7, 0x90b0, 0x9c4e, 0x9443,
+  0x8eba, 0x9a52, 0xfcc1, 0x8be9, 0x9caf, 0x8bfd, 0x9abc, 0x9ab8,
+  0x9aae, 0x9aa7, 0x9a53, 0x9d74, 0x8bea, 0x8beb, 0x90b2, 0x95e9,
+  0x95e8, 0x95e6, 0x90b5, 0x9a54, 0x90b3, 0x95e7, 0x8b50, 0x8bec,
+  0x9a56, 0x8bfb, 0x9a57, 0xa0aa, 0x9fa6, 0x99cc, 0x9c59, 0x99b5,
+  0x90be, 0x9faf, 0x95f2, 0x90bf, 0x90c1, 0xfee4, 0x90c4, 0x90c7,
+  0x92e4, 0x9f52, 0x90db, 0xa066, 0x90d2, 0x90d4, 0x9a5b, 0x95fd,
+  0x8bc4, 0x90de, 0x9ce4, 0x90e1, 0x9e46, 0x9651, 0xfb58, 0x90e6,
+  0x9650, 0x90e7, 0x90e8, 0x9a5d, 0x9f7a, 0x9b5c, 0x9f7c, 0xfc52,
+  0x90e9, 0x90ea, 0x9a5e, 0x9f76, 0x90eb, 0x90ec, 0x8bee, 0x90ee,
+  0x91c6, 0x90f2, 0xfcbc, 0x8a74, 0x9657, 0x9cef, 0x9fdf, 0x90f7,
+  0x90f6, 0x9b5e, 0x90f8, 0x90f9, 0xfa6a, 0x8bef, 0x9fe0, 0x9142,
+  0x9a62, 0x9569, 0x9144, 0x9143, 0x9141, 0x8bf0, 0x9660, 0x8bf1,
+  0x99f6, 0x9149, 0x914a, 0x914b, 0x9a64, 0x8abf, 0x9a66, 0x9a67,
+  0x9a69, 0x9a6a, 0x9652, 0x914d, 0x9666, 0x9f7b, 0x9a6b, 0xa06c,
+  0x9667, 0x9a6c, 0x9a6d, 0x8bf2, 0x966a, 0xfcea, 0x966c, 0x91c4,
+  0x9677, 0x99f4, 0x9a6f, 0x9fab, 0x8ec1, 0x9555, 0x9152, 0x9153,
+  0x9155, 0x955d, 0x9671, 0x9c6d, 0x9673, 0x9154, 0x9a71, 0x9156,
+  0x966d, 0x9557, 0x89c6, 0x89c7, 0x8a6a, 0x8b57, 0x9fe1, 0x9b5f,
+  0xa05d, 0x915b, 0x915c, 0x915e, 0x9f5c, 0x9f57, 0x9f65, 0x9a72,
+  0x9160, 0x9f5e, 0x9161, 0x9164, 0x9f41, 0x9169, 0x9168, 0x9a74,
+  0x96b2, 0x9a75, 0xfda5, 0x9ee9, 0x8bba, 0x916d, 0xa060, 0x9fde,
+  0x9fc3, 0x96b5, 0xa067, 0x96b3, 0x9a76, 0x95d5, 0x9eca, 0x9a77,
+  0x9a78, 0x9170, 0x916f, 0x9fa3, 0x9171, 0x96b1, 0x9f63, 0x9f67,
+  0x8bb9, 0x9a7a, 0x8b56, 0x9ada, 0x96b0, 0x9a7e, 0x9dde, 0x96ad,
+  0x96ae, 0x9ea1, 0x9e50, 0x96af, 0x8bf4, 0x9fa4, 0x96bd, 0x96f4,
+  0x96b8, 0xfaa1, 0x91a7, 0xa05e, 0x9a7d, 0x8948, 0x9eb1, 0x9ddb,
+  0x95bf, 0x8a73, 0x9efe, 0x917a, 0x917b, 0x9aa3, 0x96c2, 0x9f77,
+  0x9aa4, 0x9aa5, 0x91a1, 0x89b8, 0x9173, 0x9aa6, 0x89bd, 0x89b9,
+  0x917d, 0x96bb, 0x9ff2, 0x8bf5, 0x9aa9, 0x9f54, 0x9fe3, 0x9eed,
+  0x91aa, 0x91ab, 0xa070, 0x9f6d, 0x91ac, 0x91ad, 0xa0fd, 0x9fe2,
+  0x91af, 0x9e41, 0x9aaa, 0x91b0, 0x9aab, 0x9aac, 0x9a4a, 0x91b2,
+  0x8bf6, 0x9aad, 0x89b6, 0x9aaf, 0x9ab0, 0x9ab1, 0x9aa1, 0x91b9,
+  0x91ba, 0x91be, 0xa041, 0x8bb7, 0x91c0, 0x9ab3, 0x91c3, 0xa0fc,
+  0x9fee, 0x9f69, 0x91c8, 0x91c9, 0x8de6, 0x91cb, 0x89c8, 0x8daa,
+  0x9fdd, 0xc8a1, 0xc8a3, 0x8bf8, 0xc8d0, 0xc8cf, 0xc6e4, 0xc6e5,
+  0xc8cd, 0xc8ce, 0xf9fe, 0x9c71, 0x9375, 0x9376, 0x9548, 0x8ec6,
+  0x8bc5, 0x8bfa, 0xc87c, 0x9ab4, 0x884e, 0x884b, 0xc87a, 0x8848,
+  0x8847, 0xa0f6, 0x8845, 0x8853, 0xfcad, 0x8aad, 0x9272, 0xfc47,
+  0x94df, 0x9fd1, 0xfbcb, 0x927d, 0x98a4, 0x94e7, 0x90cb, 0x927b,
+  0x94d8, 0xfc5f, 0xfa54, 0x9ab5, 0x96da, 0x9279, 0xfa74, 0x9275,
+  0x8dfb, 0x8a49, 0x92df, 0x9b7c, 0xfa63, 0xfa60, 0x926d, 0xfa62,
+  0x9ab6, 0x976b, 0xfd6a, 0xfd54, 0x9273, 0x97d8, 0x9fbb, 0x9342,
+  0x9276, 0xfa65, 0x926c, 0xfa6e, 0x9ee0, 0x92c0, 0x92bf, 0x92be,
+  0x9aba, 0x8ab3, 0x9775, 0xfa40, 0xfa76, 0xfbd0, 0xfa7b, 0xfe6d,
+  0x9bb3, 0x89cc, 0x9abe, 0xfa42, 0x92bc, 0x945c, 0x9bb5, 0x9abf,
+  0x98a7, 0x97a4, 0x90fd, 0xfc7b, 0x9ac0, 0x92c3, 0x8aaa, 0x9bd0,
+  0x9550, 0x92c6, 0x98a6, 0x9546, 0xfd63, 0xfac2, 0x9ec3, 0x89b2,
+  0x9c66, 0x9053, 0x97c1, 0x9ac4, 0x9ac5, 0x8eef, 0xfae9, 0x9262,
+  0x8af7, 0x9ac6, 0x92e1, 0x9ac9, 0xfac6, 0x97a5, 0x9acb, 0xfa72,
+  0x8a5e, 0x94e0, 0x92cc, 0x8ae5, 0xfe5c, 0x9acc, 0x9df9, 0x8a43,
+  0x8aa6, 0x9acd, 0x9ace, 0xfaee, 0x9bcc, 0x9acf, 0x9ad1, 0x9dfa,
+  0x9d7c, 0x9ad3, 0x97a6, 0x995f, 0xfbf6, 0x9fc5, 0x8a59, 0x8b6b,
+  0x9ad4, 0x9ad5, 0x97a2, 0x8a44, 0x9f4a, 0x90a1, 0xfda4, 0x8a64,
+  0x8af2, 0x8af8, 0x9dd8, 0x94d6, 0xfafe, 0xfba7, 0x9ad6, 0x9f4d,
+  0xfaf6, 0x8a57, 0x8b43, 0x8b44, 0x8ab6, 0x8ac0, 0x9e54, 0x9ad7,
+  0x9ad8, 0x9adc, 0x8aca, 0x9ea8, 0x9263, 0x9add, 0x8b65, 0x8b6f,
+  0x8b7e, 0x8f43, 0x92d0, 0x8af4, 0x9dbe, 0x9ae1, 0xfcde, 0x9dfd,
+  0x8b66, 0x8b70, 0x8b75, 0x8ae4, 0x8ba4, 0x8aed, 0x8a5d, 0x8b48,
+  0x9ded, 0x9e40, 0x8aef, 0x8af6, 0x9e76, 0x9ee3, 0x9ade, 0x8dfe,
+  0xfafc, 0x9cb1, 0x9e77, 0x8b64, 0x8b67, 0x974b, 0x9653, 0x9ae0,
+  0x8b4a, 0x8af1, 0x8ad7, 0xa0ab, 0x8ab5, 0x8a5f, 0x8aee, 0x9adf,
+  0x8afe, 0x8a58, 0x8ba3, 0x8ba7, 0x9ae3, 0x9261, 0x9dd7, 0x9e7d,
+  0x9ea7, 0x9eab, 0x9042, 0x8b79, 0x8b7a, 0x9ae6, 0x9ae5, 0x8a7e,
+  0x9e44, 0x9ae7, 0x8a7c, 0x8b71, 0x9ae9, 0x9aea, 0x9aeb, 0x8abd,
+  0xfb4e, 0x9aed, 0x8af9, 0x9e63, 0x8b49, 0x8ace, 0x8b6e, 0x8ae8,
+  0x9aee, 0x92ce, 0x8a5a, 0x8b7b, 0x8b7c, 0x9aef, 0x9af0, 0x8afa,
+  0x8941, 0x8b72, 0x8af3, 0x8ba8, 0x9eae, 0x9e72, 0xfb73, 0xfb5f,
+  0x90ba, 0x91fe, 0x9ef6, 0x97ed, 0x9af3, 0xa0ee, 0x967c, 0x9345,
+  0x986e, 0xfa56, 0x9af5, 0xfc4b, 0x9af4, 0xfede, 0xfcb7, 0x97f1,
+  0x97c7, 0x9ccb, 0x9240, 0x9ce8, 0x91fd, 0x974e, 0xfb68, 0x976c,
+  0x97e8, 0xfb6a, 0x8b74, 0x8ee7, 0xfdc8, 0x9241, 0x96a1, 0x8ef3,
+  0x9af7, 0x8fa6, 0xfad6, 0x9cc7, 0xfad7, 0x9af8, 0xfba1, 0x8ec5,
+  0xfba4, 0xfbc2, 0x9ac1, 0x91fa, 0xfedb, 0x97ab, 0x9147, 0xfbb1,
+  0x8fea, 0x94d2, 0xfe61, 0xface, 0x92ed, 0x91f3, 0x93c6, 0x935a,
+  0xfafb, 0x92ef, 0xfac8, 0x9847, 0x9366, 0x9855, 0x96e6, 0x9f43,
+  0x9faa, 0x94da, 0x92ee, 0xfcaf, 0xfbfb, 0x8ef9, 0x91f6, 0x9364,
+  0x94f5, 0x9cb6, 0xfbad, 0x984e, 0x8f44, 0x96fd, 0x9af9, 0x9afa,
+  0x9769, 0x95d4, 0x984b, 0xfbaa, 0x987c, 0x91ea, 0x9daf, 0x9dc5,
+  0x91f1, 0x8eb1, 0x97a9, 0xfbac, 0xfcb8, 0x9cb9, 0xfbb0, 0xfcd2,
+  0x93cb, 0x9afd, 0x91f4, 0x8bac, 0xa055, 0x9574, 0x95be, 0x97ad,
+  0x8ee9, 0x92f8, 0x97be, 0x916c, 0x94aa, 0xfc63, 0x9dc6, 0x97b5,
+  0x92b8, 0x91ef, 0xfea6, 0x9760, 0x9358, 0x9576, 0x8fac, 0x91ec,
+  0x97b4, 0x91f7, 0x974a, 0xfb49, 0x9578, 0x93bc, 0x91d6, 0x9355,
+  0x9356, 0x9851, 0x8ff8, 0xfbc0, 0x93f2, 0x90d0, 0x9c44, 0x9255,
+  0x9363, 0x91a5, 0xa0ed, 0xfd6b, 0x9afe, 0x9351, 0xfa78, 0xfea8,
+  0x9350, 0xfa4c, 0x92f7, 0x9b40, 0xfbce, 0x9b41, 0xfead, 0xfbd5,
+  0x8bc2, 0x9a7c, 0x9b42, 0x9b43, 0x9e79, 0xfbd9, 0x9b44, 0xa0a7,
+  0x9bf3, 0x935e, 0x89cb, 0x9f53, 0x93d7, 0xfbe1, 0xfed0, 0xfbe2,
+  0xfce3, 0x9074, 0xfbe6, 0x9bb7, 0x9b45, 0x9b47, 0x9f50, 0x9b48,
+  0xfc5b, 0x98a9, 0x9cfd, 0x884c, 0x9b4b, 0xfbec, 0x9ba8, 0x8ad5,
+  0xfa73, 0xfd59, 0x91a2, 0xfbed, 0x9ca9, 0x8aa8, 0x9bc3, 0x8ae1,
+  0x9b4e, 0x95d0, 0x905f, 0x97ee, 0xfc4e, 0x9b4f, 0x9b50, 0x9ec6,
+  0xfc50, 0xfd73, 0xfda7, 0x9da2, 0xfa58, 0xfa5e, 0xa059, 0xfa75,
+  0xfbbe, 0x9ca2, 0x9370, 0x9371, 0x9377, 0xfeef, 0x936d, 0xfc5d,
+  0x90b8, 0x8afc, 0xfb41, 0x9e6b, 0x94e3, 0x8ee2, 0x8ed7, 0x9c4d,
+  0x96a3, 0x9b51, 0x8ac3, 0x96aa, 0xfc68, 0x8b6d, 0xfd67, 0x8ae9,
+  0xfca1, 0x936c, 0x9b52, 0xfe70, 0xfca8, 0xfce9, 0x9cb4, 0x8aea,
+  0x9b53, 0x9b55, 0x96ab, 0xfca7, 0x9b56, 0x8abc, 0x8acb, 0x9b57,
+  0x89cd, 0x9b59, 0x9b5b, 0x93a5, 0x9b5d, 0x9e4f, 0x93a3, 0x8a7b,
+  0x8b42, 0x9750, 0x8fb3, 0x8a50, 0x9b60, 0x8b45, 0x8b46, 0x9dfe,
+  0x9b62, 0x937b, 0x93b1, 0x8a60, 0x8ad8, 0x9b63, 0x8a69, 0x8a47,
+  0x8acc, 0x937c, 0x9b65, 0x9b66, 0x8a72, 0x8a7a, 0x93af, 0x8ab0,
+  0x9b68, 0x9ea3, 0xfaec, 0x8b77, 0x9b67, 0x8b59, 0xfcb1, 0xfcbb,
+  0x9b69, 0x93a8, 0x8ae0, 0x9e51, 0x8f5f, 0x9b6a, 0x9b6b, 0x97ec,
+  0x9b6c, 0xfe4e, 0xfdc2, 0x9b6d, 0x9167, 0xfccc, 0x93b6, 0x90e4,
+  0x90e5, 0x9ef2, 0x93ca, 0x8bbc, 0x8f46, 0x93cf, 0xfcdb, 0xfcdc,
+  0x93c0, 0xfce6, 0x96e7, 0xfcd8, 0xfcd9, 0xfda6, 0x93ce, 0x95f1,
+  0x9ce9, 0xfce4, 0x94af, 0xfa77, 0x93cc, 0x905a, 0x93bf, 0xfb51,
+  0x93b9, 0xfed7, 0x93b7, 0x93d9, 0x93bb, 0x93da, 0x98a3, 0x90d1,
+  0x9b6e, 0xfa70, 0x9beb, 0x9b6f, 0xfcfc, 0x8b40, 0xa07b, 0x97f7,
+  0x93e2, 0xfcd6, 0x9559, 0x93a6, 0xfd40, 0x935f, 0x97f2, 0x9c76,
+  0x8ef8, 0x8f47, 0x9b74, 0x92b4, 0x91ed, 0x96d2, 0xfd46, 0x8f4f,
+  0x9549, 0x9b75, 0xfa5c, 0x9b79, 0xfd4b, 0x96d3, 0xfd58, 0x945f,
+  0xa0f5, 0x9243, 0x97fa, 0x9dd9, 0x97f4, 0x924d, 0xfd5b, 0x9b7a,
+  0x9ed5, 0xfaae, 0x9cc9, 0x9258, 0x8ec8, 0x94b4, 0x93e1, 0x93df,
+  0xfcf0, 0x93ec, 0x97f6, 0x96cf, 0x93de, 0x8acf, 0x9ba2, 0xfd69,
+  0x9352, 0x98a2, 0xfd6e, 0xfa7c, 0x93fa, 0x907c, 0x8f67, 0x9db7,
+  0xa0e9, 0xfa4e, 0xfda1, 0x9e74, 0x9fbf, 0x9ecb, 0x9bb9, 0x9dd4,
+  0x97b9, 0x8ef1, 0x957b, 0x9ed2, 0x9753, 0x96a4, 0x8fbe, 0x94d9,
+  0x9058, 0xfd79, 0xfd7b, 0x8eda, 0x8efa, 0x9ba5, 0x9ed9, 0x97d4,
+  0x90bb, 0xfdbc, 0xfdc6, 0x9248, 0x92b5, 0x9dc1, 0x92b9, 0x92a6,
+  0x8f4b, 0x9ba6, 0x92b6, 0x8e40, 0x9ed8, 0x945e, 0x985f, 0x94ce,
+  0x924a, 0xfd70, 0x9467, 0x8dec, 0x9bd8, 0x9448, 0xfac1, 0x9cf7,
+  0xfdbe, 0x8fda, 0xfdd9, 0xfc7e, 0x93f9, 0xfa43, 0xfaeb, 0xfac3,
+  0x97d3, 0x95f9, 0x9c48, 0xfdd8, 0xa0d8, 0xfdd7, 0xfb4a, 0x9baf,
+  0x944b, 0xfdc9, 0x8eac, 0xfdb2, 0x925a, 0xfcbd, 0x92d9, 0xfdd5,
+  0x92dd, 0x9259, 0x96ba, 0x925b, 0x9bab, 0xfdda, 0xfdde, 0xfdd3,
+  0xfdd6, 0xfddc, 0xfddd, 0x90fe, 0xfea1, 0x8bad, 0x9cd8, 0x9e6d,
+  0xfd7c, 0xfb61, 0x96f8, 0x96f0, 0xfcf4, 0xfe60, 0x9852, 0x964f,
+  0x916e, 0x986d, 0x9864, 0x9453, 0xfdec, 0xfb78, 0x95ba, 0x985d,
+  0x92f9, 0x985a, 0xfdf6, 0x93d0, 0x9862, 0x9bad, 0x974f, 0x9bae,
+  0x9452, 0x9bb0, 0x91d2, 0x97ea, 0xfb6b, 0x91b1, 0xfdf3, 0x92cb,
+  0x9bb1, 0xfcec, 0x986b, 0x9751, 0x9871, 0x95ef, 0x9ef3, 0x91e8,
+  0x9bba, 0xfb4c, 0x926a, 0xfdf8, 0x9861, 0x91e7, 0x93ed, 0x9744,
+  0x91e1, 0xfbf5, 0x9869, 0x8a62, 0x9bbb, 0x9c55, 0x8e77, 0x8ab2,
+  0x9ebc, 0x93e6, 0x93a2, 0x9bbd, 0x94b3, 0x937d, 0x9e66, 0x9459,
+  0x9bbf, 0x9458, 0x9ea5, 0x9bc7, 0xfe54, 0x8e74, 0x8bd6, 0x94b6,
+  0xfd74, 0x98c0, 0x94a5, 0x9bc8, 0x95ed, 0xfd7e, 0xfbeb, 0xfd7d,
+  0x976f, 0x9461, 0x9fc1, 0x95d7, 0xfa52, 0x9c58, 0x9f68, 0x9be7,
+  0xfcce, 0x96e8, 0xfa49, 0x97a1, 0x954d, 0x9ef8, 0xfe49, 0x91ce,
+  0x9771, 0xfdb1, 0xfc6e, 0x9cf2, 0x93b8, 0x9043, 0x9759, 0x94d7,
+  0xfe66, 0x947d, 0xfc6f, 0x9246, 0xfa6d, 0x8ef7, 0xfbb7, 0x947c,
+  0x92cd, 0x97b2, 0xfe65, 0x967e, 0x9758, 0x9b77, 0x91cf, 0x94a4,
+  0x9cad, 0x8bab, 0x96d5, 0xfcb3, 0x93ae, 0x976d, 0x9446, 0x95f7,
+  0x9c46, 0x955b, 0x91d1, 0x94f4, 0xfe67, 0x92a5, 0xfedf, 0x9bc9,
+  0xfced, 0xfdfa, 0xfcc8, 0xfe62, 0x91fc, 0xfe6b, 0xfdf9, 0xfcc7,
+  0x914e, 0x9cb8, 0x9767, 0x95ee, 0x9bb2, 0x9460, 0x94a2, 0x9875,
+  0x97ac, 0x91d3, 0x987b, 0x8eeb, 0x976a, 0x965e, 0x97eb, 0x9ff9,
+  0x95f8, 0xfea2, 0x8fe6, 0xfe7e, 0x9da4, 0x9768, 0x8eec, 0x94bd,
+  0x945b, 0x9cf6, 0xfaa7, 0x9bd9, 0xfa5d, 0x9656, 0x9762, 0x94ba,
+  0xa04f, 0x92d8, 0x9bcb, 0x94bb, 0x9d5f, 0x90cf, 0x9465, 0x9f4c,
+  0x90d8, 0x9ebe, 0xfb6d, 0x95ca, 0x9dc2, 0x97f8, 0x8ffc, 0x9473,
+  0x9474, 0xfeb7, 0x8a4b, 0x8a55, 0x8b69, 0x8adc, 0x8b76, 0x9bce,
+  0x8a68, 0xa0f8, 0x98df, 0xfeb5, 0x9bcf, 0x96fb, 0x9bfb, 0x9ece,
+  0x8ee5, 0x9e7b, 0x9bd2, 0x8aa5, 0xfece, 0x8a45, 0x9dfc, 0xfecf,
+  0x8ba5, 0x8aec, 0xfce0, 0x94ad, 0xfed5, 0x94ac, 0xfc5a, 0x9bd6,
+  0x8a6f, 0x8ba9, 0x8e5f, 0x9dcb, 0xfce7, 0x9bd7, 0x93c8, 0x91f0,
+  0x8fe0, 0x9bdb, 0x90ed, 0x9bdc, 0xa0ec, 0x98fa, 0x9be0, 0x93c7,
+  0x9249, 0x96e1, 0x9be2, 0x9be4, 0x8fe1, 0x9be5, 0x94c0, 0x93c3,
+  0x93c5, 0x9079, 0x977b, 0x907e, 0xfee6, 0xfe46, 0x9db8, 0x9270,
+  0x95a8, 0x94c8, 0x98b9, 0x9140, 0xfcbe, 0x9157, 0x8bb2, 0xfadf,
+  0x9be6, 0x9643, 0x8e44, 0x9c4f, 0xfef4, 0x9be8, 0x93dc, 0x966f,
+  0x8e4a, 0x9bed, 0x92f6, 0x9db9, 0x8e4e, 0xfbcf, 0x9ec2, 0x94e5,
+  0x9bf0, 0x94e4, 0x9551, 0x8bbb, 0x9bf1, 0x94f0, 0x8e64, 0x94ea,
+  0x8f61, 0x9b64, 0x8e5b, 0x9bf2, 0x9fbe, 0x9dc9, 0x8e6c, 0x8f73,
+  0x8f75, 0x8e71, 0x8e60, 0x8e6a, 0x9552, 0x9554, 0x8ad4, 0x9dbb,
+  0x9543, 0x92fe, 0x94f2, 0x94f1, 0xa0ea, 0x9dd2, 0xa0b1, 0x91f8,
+  0x9462, 0x9ba4, 0x8ead, 0x9ead, 0x96d0, 0xfeee, 0x8ab4, 0x9757,
+  0x8a77, 0x9bf7, 0x8eb5, 0xa06d, 0x8eb6, 0x9756, 0x9540, 0xa0f3,
+  0x94be, 0x9bfa, 0xfddf, 0x9dbc, 0x94fe, 0x8bdb, 0xa0fe, 0x8ec0,
+  0x9f47, 0x8bde, 0xa0fb, 0x8ec3, 0x9649, 0xfec2, 0x954c, 0x9bfd,
+  0x90cc, 0x9c60, 0x954b, 0x9bfe, 0x9c70, 0x9c43, 0x9c47, 0x8ecc,
+  0x8e54, 0x8ee4, 0x9c49, 0x8b5e, 0x955e, 0x955c, 0x9c4b, 0x8be1,
+  0x8ed9, 0x9db4, 0x925f, 0x9c4c, 0x8aa1, 0x8edb, 0x9c56, 0x8aa2,
+  0x9754, 0x9c5e, 0x9ed4, 0x9568, 0xa0c3, 0x8ae6, 0xa0f7, 0x9c61,
+  0x9c5f, 0xfc4d, 0x9e5b, 0x9e69, 0x9c63, 0xfec7, 0xfec6, 0x9c67,
+  0x9c69, 0x8be2, 0x9165, 0x9ce7, 0x8a54, 0x9c6c, 0x9c6e, 0xfe5d,
+  0x9c73, 0x956a, 0x956d, 0x8ef0, 0x8f4d, 0x8ef6, 0xfabc, 0xfbda,
+  0x8b4c, 0xfd75, 0x9bdd, 0xfaf5, 0x9c74, 0x9545, 0x96c6, 0x8f6a,
+  0x8f4e, 0x9c78, 0xfa55, 0x97e4, 0x9c41, 0x925c, 0x96fa, 0xfb66,
+  0x8e65, 0x9849, 0xfba8, 0x9842, 0x9c7a, 0x97fb, 0x90ca, 0x9c5b,
+  0x974d, 0x8ed3, 0x9561, 0x9f4b, 0x9fb5, 0x93d2, 0xfdaa, 0x9840,
+  0x9146, 0x9867, 0xfa5a, 0xfba9, 0x9841, 0xfcfd, 0xfdab, 0x91bd,
+  0x8f4c, 0x96c9, 0x8f55, 0xfbae, 0x956f, 0x9c7d, 0xa0f0, 0x946f,
+  0xfdac, 0x96cb, 0x96ce, 0xa056, 0x9ce1, 0x96c4, 0x8f5e, 0x8f6c,
+  0x8ea3, 0xfbb3, 0xfc53, 0xfdb3, 0x8f6b, 0x96ca, 0x8f79, 0x9e6f,
+  0xa0c5, 0xfc78, 0x8e42, 0x8f5a, 0x90c2, 0x8ea5, 0x9061, 0x924f,
+  0x9373, 0xfdb5, 0xfecc, 0xfbbd, 0x9843, 0x96c5, 0x89bc, 0x9ca3,
+  0x924b, 0x984a, 0x8fa4, 0xa0f1, 0x9efb, 0x9cd2, 0x8fa7, 0xfc5c,
+  0x9845, 0x9046, 0xfefa, 0x9560, 0x9f48, 0x9247, 0x90fb, 0x9ca4,
+  0x9571, 0x9ca6, 0x9ca7, 0x9caa, 0x9ed3, 0x9e70, 0x9cac, 0x8fae,
+  0x957d, 0x9cb0, 0x97b6, 0xa0bd, 0x8adf, 0x9eaa, 0x8fbd, 0x8fbf,
+  0x9369, 0x9ba7, 0xc8a4, 0xfeea, 0x9be1, 0x8b41, 0x9db6, 0xa0eb,
+  0x9ba3, 0x8ba1, 0x8fc8, 0x894c, 0x9860, 0x94c7, 0x8b58, 0x95ab,
+  0x95aa, 0x9cc3, 0x9cc4, 0x93d6, 0x9dac, 0x8be6, 0x8a71, 0x8fd1,
+  0x99d5, 0x90f4, 0x8aa3, 0x9cce, 0x9cd4, 0x9cd5, 0xfbc8, 0x9db3,
+  0xfc70, 0x8fd7, 0x9b73, 0xfa5b, 0x8fd2, 0x9064, 0x98b6, 0x9668,
+  0x9cd6, 0x98bd, 0x8fdc, 0xfef6, 0x8fd9, 0x9541, 0x97f3, 0x9bf8,
+  0x9e6c, 0x8ff2, 0x8fee, 0x9cd7, 0x9e6e, 0x8a40, 0x8fef, 0x8ff4,
+  0x8ff5, 0x95c2, 0x986a, 0x97cf, 0x9ee5, 0x9e7c, 0x9041, 0x9cdb,
+  0x9441, 0x9ce6, 0x9db0, 0x9cea, 0x9ced, 0x9cfa, 0x8b62, 0x8a4e,
+  0x9cca, 0x8a66, 0x9cfb, 0x9cfc, 0x9cfe, 0x8a53, 0x9ce5, 0x9d40,
+  0x9d41, 0x9045, 0x8b73, 0x97ca, 0x9d42, 0x8a61, 0x8bae, 0x8ad2,
+  0x8ba2, 0x9df2, 0x9d43, 0x9cdf, 0x9d44, 0x8eca, 0x904e, 0x8eb3,
+  0x9ff5, 0x9d45, 0x904f, 0x9d47, 0x89ca, 0x9cb5, 0xfbfe, 0x905e,
+  0x9063, 0x9057, 0x9066, 0x9bc0, 0xfce5, 0x9162, 0x9067, 0x8fa1,
+  0x8fa2, 0x9d48, 0xfad3, 0x905d, 0x90b9, 0x906b, 0x9069, 0xfe57,
+  0xfe55, 0x9073, 0x9bef, 0x9cf0, 0x9d4b, 0xfed9, 0xfeda, 0x91e0,
+  0x91d8, 0x9646, 0x9360, 0xfa53, 0x9cd3, 0x9d4e, 0xfb40, 0x8de2,
+  0x9442, 0x9056, 0x9865, 0xfa4a, 0x9d50, 0x9d52, 0x95af, 0x975a,
+  0x9349, 0x9747, 0xa0f4, 0x9778, 0x8fcf, 0xfc60, 0xfc56, 0x91dc,
+  0x9661, 0x92ec, 0x935d, 0x8ede, 0x96fe, 0xfd4f, 0x95de, 0x98b0,
+  0xa040, 0x97bd, 0x977d, 0x97f5, 0x9bac, 0xfada, 0x92c2, 0x97b1,
+  0x907b, 0x93fe, 0x947b, 0x9777, 0xfabe, 0xfd43, 0x90c6, 0x90a4,
+  0x90a8, 0x94a9, 0x90a9, 0x95e0, 0x907d, 0x9265, 0xfdba, 0x93c4,
+  0xfeed, 0x9dab, 0xa0e3, 0x9648, 0x9d53, 0x8aa9, 0x9bc5, 0x965d,
+  0x975f, 0x965f, 0x966e, 0xfb5d, 0x9db1, 0xfea3, 0x9db2, 0x95ae,
+  0xfca3, 0xa0a2, 0x9655, 0x9d54, 0x9341, 0x95ad, 0x91d5, 0x977a,
+  0xfdfc, 0x8e47, 0x93fd, 0x90a5, 0x90ac, 0x95ac, 0x90ae, 0xfea5,
+  0x9d56, 0x97e3, 0x95e2, 0x9466, 0x9647, 0x91b8, 0x9cec, 0x90ad,
+  0x95e3, 0x8b4f, 0x8ae3, 0x8b4d, 0x95ea, 0x8b4e, 0x8bed, 0x91d9,
+  0xa0a4, 0x95f5, 0x95f4, 0x9fb3, 0xfeaf, 0xfe72, 0x927a, 0xfeac,
+  0x95f3, 0x9d58, 0x9372, 0x91c5, 0x9642, 0x90cd, 0x95fe, 0x9159,
+  0x9c65, 0x97cc, 0x90ce, 0x9d59, 0xfcf5, 0xfefd, 0x9d5b, 0x9d5c,
+  0x937e, 0x98ac, 0x9d5e, 0xfdd0, 0xfd60, 0x9ccf, 0x90dd, 0x90e0,
+  0x90f3, 0x98b1, 0x90f0, 0x93bd, 0x95b7, 0x9f46, 0x8e4b, 0x9658,
+  0x8a4c, 0x9d63, 0x9ecf, 0x9d65, 0x9d66, 0x965a, 0x9d64, 0x8a6c,
+  0x8ad9, 0x9d67, 0x8a70, 0x8bf3, 0x9150, 0x9cc1, 0x9d68, 0x93a7,
+  0x9674, 0xa0ef, 0x9151, 0x96c1, 0x9676, 0x9d69, 0xfca4, 0x9d6a,
+  0x924e, 0x9d6b, 0x9bc1, 0x9d6c, 0x8a65, 0x915d, 0x9d6d, 0x915a,
+  0x9cc0, 0x916a, 0x9d6e, 0x9ea6, 0x9dcd, 0x9d6f, 0x89bb, 0x9ef9,
+  0x96b4, 0x9172, 0x9ec8, 0x8b55, 0x9d71, 0x9d72, 0x9ecc, 0x9174,
+  0x9ed0, 0x905c, 0x8ed2, 0x91a8, 0x9177, 0x96bf, 0x96c0, 0x8fb1,
+  0x96b7, 0x9178, 0x89be, 0x917c, 0xfb77, 0x9175, 0x91a3, 0x9176,
+  0x96be, 0x9179, 0x96b6, 0x91a4, 0x91a6, 0x9d75, 0x9052, 0xa045,
+  0x91a9, 0x98aa, 0x8baa, 0x9cdd, 0x9d77, 0x8940, 0x9eec, 0x93aa,
+  0x9478, 0x9d7a, 0x8ac9, 0x8b4b, 0x9fec, 0x8ae2, 0x9e75, 0x9874,
+  0x9ac8, 0xa047, 0x8bc3, 0xfc48, 0xfc77, 0x9c52, 0x8efd, 0x8fa8,
+  0x957a, 0x8ff0,
+};
+
+static const Summary16 hkscs1999_uni2indx_page00[45] = {
+  /* 0x0000 */
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0100 }, {    1, 0x0000 },
+  {    1, 0x0703 }, {    6, 0x000c }, {    8, 0x3703 }, {   15, 0x170c },
+  /* 0x0100 */
+  {   21, 0x0003 }, {   23, 0x0c0c }, {   27, 0x0800 }, {   28, 0x0000 },
+  {   28, 0x3800 }, {   31, 0x0008 }, {   32, 0x0800 }, {   33, 0x0000 },
+  {   33, 0x0000 }, {   33, 0x0000 }, {   33, 0x0000 }, {   33, 0x0000 },
+  {   33, 0x6000 }, {   35, 0x1557 }, {   43, 0x0000 }, {   43, 0x0000 },
+  /* 0x0200 */
+  {   43, 0x0000 }, {   43, 0x0000 }, {   43, 0x0000 }, {   43, 0x0000 },
+  {   43, 0x0000 }, {   43, 0x0813 }, {   47, 0x0402 }, {   49, 0x0020 },
+  {   50, 0x0408 }, {   52, 0x0000 }, {   52, 0x0000 }, {   52, 0x0000 },
+  {   52, 0x0040 },
+};
+static const Summary16 hkscs1999_uni2indx_page04[6] = {
+  /* 0x0400 */
+  {   53, 0x0002 }, {   54, 0xffff }, {   70, 0xffff }, {   86, 0xffff },
+  {  102, 0xffff }, {  118, 0x0002 },
+};
+static const Summary16 hkscs1999_uni2indx_page1e[13] = {
+  /* 0x1e00 */
+  {  119, 0x0000 }, {  119, 0x0000 }, {  119, 0x0000 }, {  119, 0x0000 },
+  {  119, 0x0000 }, {  119, 0x0000 }, {  119, 0x0000 }, {  119, 0x0000 },
+  {  119, 0x0000 }, {  119, 0x0000 }, {  119, 0x0000 }, {  119, 0xc000 },
+  {  121, 0x0003 },
+};
+static const Summary16 hkscs1999_uni2indx_page21[15] = {
+  /* 0x2100 */
+  {  123, 0x0000 }, {  123, 0x0040 }, {  124, 0x0002 }, {  125, 0x0000 },
+  {  125, 0x0000 }, {  125, 0x0000 }, {  125, 0x0000 }, {  125, 0x03ff },
+  {  135, 0x0000 }, {  135, 0x0000 }, {  135, 0x0000 }, {  135, 0x0300 },
+  {  137, 0x0000 }, {  137, 0x0000 }, {  137, 0x0080 },
+};
+static const Summary16 hkscs1999_uni2indx_page23[40] = {
+  /* 0x2300 */
+  {  138, 0x0000 }, {  138, 0x0000 }, {  138, 0x0000 }, {  138, 0x0000 },
+  {  138, 0x0000 }, {  138, 0x0000 }, {  138, 0x0000 }, {  138, 0x0000 },
+  {  138, 0x0000 }, {  138, 0x0000 }, {  138, 0x0000 }, {  138, 0x0000 },
+  {  138, 0x0000 }, {  138, 0x0c00 }, {  140, 0x0000 }, {  140, 0x0000 },
+  /* 0x2400 */
+  {  140, 0x0000 }, {  140, 0x0000 }, {  140, 0x0000 }, {  140, 0x0000 },
+  {  140, 0x0000 }, {  140, 0x0000 }, {  140, 0x03ff }, {  150, 0x3ff0 },
+  {  160, 0x0000 }, {  160, 0x0000 }, {  160, 0x0000 }, {  160, 0x0000 },
+  {  160, 0x0000 }, {  160, 0x0000 }, {  160, 0x0000 }, {  160, 0x0000 },
+  /* 0x2500 */
+  {  160, 0x0000 }, {  160, 0x0000 }, {  160, 0x0000 }, {  160, 0x0000 },
+  {  160, 0x0000 }, {  160, 0xffff }, {  176, 0xffff }, {  192, 0x0001 },
+};
+static const Summary16 hkscs1999_uni2indx_page27[4] = {
+  /* 0x2700 */
+  {  193, 0x0000 }, {  193, 0x0000 }, {  193, 0x0000 }, {  193, 0x2000 },
+};
+static const Summary16 hkscs1999_uni2indx_page2e[68] = {
+  /* 0x2e00 */
+  {  194, 0x0000 }, {  194, 0x0000 }, {  194, 0x0000 }, {  194, 0x0000 },
+  {  194, 0x0000 }, {  194, 0x0000 }, {  194, 0x0000 }, {  194, 0x0000 },
+  {  194, 0x35d1 }, {  202, 0x3020 }, {  205, 0x54a0 }, {  210, 0x5040 },
+  {  213, 0xb440 }, {  218, 0x40c0 }, {  221, 0x0008 }, {  222, 0x0000 },
+  /* 0x2f00 */
+  {  222, 0x0000 }, {  222, 0x0000 }, {  222, 0x0000 }, {  222, 0x0008 },
+  {  223, 0x0000 }, {  223, 0x0000 }, {  223, 0x0000 }, {  223, 0x0000 },
+  {  223, 0x0000 }, {  223, 0x0000 }, {  223, 0x0000 }, {  223, 0x0000 },
+  {  223, 0x0000 }, {  223, 0x0000 }, {  223, 0x0000 }, {  223, 0x0000 },
+  /* 0x3000 */
+  {  223, 0x00e0 }, {  226, 0x0000 }, {  226, 0x0000 }, {  226, 0x0000 },
+  {  226, 0xfffe }, {  241, 0xffff }, {  257, 0xffff }, {  273, 0xffff },
+  {  289, 0xffff }, {  305, 0x780f }, {  313, 0xfffe }, {  328, 0xffff },
+  {  344, 0xffff }, {  360, 0xffff }, {  376, 0xffff }, {  392, 0x707f },
+  /* 0x3100 */
+  {  402, 0x0000 }, {  402, 0x0000 }, {  402, 0x0000 }, {  402, 0x0000 },
+  {  402, 0x0000 }, {  402, 0x0000 }, {  402, 0x0000 }, {  402, 0x0000 },
+  {  402, 0x0000 }, {  402, 0x0000 }, {  402, 0x0000 }, {  402, 0x0000 },
+  {  402, 0xffff }, {  418, 0x0000 }, {  418, 0x0000 }, {  418, 0x0000 },
+  /* 0x3200 */
+  {  418, 0x0000 }, {  418, 0x0000 }, {  418, 0x0000 }, {  418, 0x0002 },
+};
+static const Summary16 hkscs1999_uni2indx_page34[1724] = {
+  /* 0x3400 */
+  {  419, 0x0000 }, {  419, 0x0000 }, {  419, 0x0000 }, {  419, 0x0020 },
+  {  420, 0x1001 }, {  422, 0x0000 }, {  422, 0x0010 }, {  423, 0x6408 },
+  {  427, 0x0000 }, {  427, 0x0048 }, {  429, 0x8020 }, {  431, 0x1000 },
+  {  432, 0x0102 }, {  434, 0x8000 }, {  435, 0x0010 }, {  436, 0x0800 },
+  /* 0x3500 */
+  {  437, 0x0040 }, {  438, 0x0000 }, {  438, 0x0000 }, {  438, 0x4000 },
+  {  439, 0x0000 }, {  439, 0x000a }, {  441, 0x2002 }, {  443, 0x0185 },
+  {  447, 0x0010 }, {  448, 0x0180 }, {  450, 0x2022 }, {  453, 0x8000 },
+  {  454, 0x44a2 }, {  459, 0x2844 }, {  463, 0x0000 }, {  463, 0x480e },
+  /* 0x3600 */
+  {  468, 0x0200 }, {  469, 0x0500 }, {  471, 0x2008 }, {  473, 0x4220 },
+  {  476, 0x4380 }, {  480, 0x8000 }, {  481, 0x0000 }, {  481, 0x0400 },
+  {  482, 0x0002 }, {  483, 0x0400 }, {  484, 0x1420 }, {  487, 0x1223 },
+  {  492, 0x01ba }, {  498, 0x2058 }, {  502, 0x0066 }, {  506, 0x0020 },
+  /* 0x3700 */
+  {  507, 0x250a }, {  512, 0x1000 }, {  513, 0x302c }, {  518, 0x040d },
+  {  522, 0x0009 }, {  524, 0x0000 }, {  524, 0x8004 }, {  526, 0x0000 },
+  {  526, 0x0000 }, {  526, 0x0080 }, {  527, 0x0001 }, {  528, 0x4200 },
+  {  530, 0x0000 }, {  530, 0x0000 }, {  530, 0x0000 }, {  530, 0x0904 },
+  /* 0x3800 */
+  {  533, 0x8000 }, {  534, 0x0200 }, {  535, 0x2001 }, {  537, 0x0140 },
+  {  539, 0x0000 }, {  539, 0x0000 }, {  539, 0x0008 }, {  540, 0x0000 },
+  {  540, 0x0000 }, {  540, 0x0000 }, {  540, 0x0001 }, {  541, 0x0000 },
+  {  541, 0x1008 }, {  543, 0x0002 }, {  544, 0x0000 }, {  544, 0x0400 },
+  /* 0x3900 */
+  {  545, 0x0100 }, {  546, 0x0010 }, {  547, 0x0080 }, {  548, 0x8004 },
+  {  550, 0x2000 }, {  551, 0x0000 }, {  551, 0x0008 }, {  552, 0x0000 },
+  {  552, 0x0601 }, {  555, 0x0a04 }, {  558, 0x0012 }, {  560, 0x0100 },
+  {  561, 0x0000 }, {  561, 0x1000 }, {  562, 0x1024 }, {  565, 0x4900 },
+  /* 0x3a00 */
+  {  568, 0x004a }, {  571, 0x0180 }, {  573, 0x0600 }, {  575, 0x0010 },
+  {  576, 0x0800 }, {  577, 0x5084 }, {  581, 0x00c0 }, {  583, 0x0000 },
+  {  583, 0x0000 }, {  583, 0x0080 }, {  584, 0x0800 }, {  585, 0x2000 },
+  {  586, 0x0000 }, {  586, 0x4000 }, {  587, 0x0001 }, {  588, 0x0805 },
+  /* 0x3b00 */
+  {  591, 0x4000 }, {  592, 0x0200 }, {  593, 0x0804 }, {  595, 0x0200 },
+  {  596, 0x0004 }, {  597, 0x0100 }, {  598, 0x0001 }, {  599, 0x1806 },
+  {  603, 0x0001 }, {  604, 0x0240 }, {  606, 0x0002 }, {  607, 0x5000 },
+  {  609, 0x0014 }, {  611, 0x2080 }, {  613, 0x1000 }, {  614, 0x001c },
+  /* 0x3c00 */
+  {  617, 0x2000 }, {  618, 0x0122 }, {  621, 0x0000 }, {  621, 0x0000 },
+  {  621, 0x0000 }, {  621, 0x0010 }, {  622, 0x0000 }, {  622, 0x0000 },
+  {  622, 0x0000 }, {  622, 0x0000 }, {  622, 0x0000 }, {  622, 0x0000 },
+  {  622, 0x2800 }, {  624, 0x1042 }, {  627, 0x8800 }, {  629, 0x0000 },
+  /* 0x3d00 */
+  {  629, 0x0000 }, {  629, 0x2008 }, {  631, 0x0000 }, {  631, 0x0804 },
+  {  633, 0x5040 }, {  636, 0x8002 }, {  638, 0x8604 }, {  642, 0x2020 },
+  {  644, 0x8420 }, {  647, 0x0002 }, {  648, 0x2020 }, {  650, 0x8010 },
+  {  652, 0x30c0 }, {  656, 0x0808 }, {  658, 0x0980 }, {  661, 0x3088 },
+  /* 0x3e00 */
+  {  665, 0x0040 }, {  666, 0x0000 }, {  666, 0x0000 }, {  666, 0x0000 },
+  {  666, 0x0109 }, {  669, 0x0020 }, {  670, 0x0000 }, {  670, 0x0010 },
+  {  671, 0x0000 }, {  671, 0x0000 }, {  671, 0x2700 }, {  675, 0x8102 },
+  {  678, 0x1484 }, {  682, 0x44c3 }, {  688, 0x0a86 }, {  693, 0x9419 },
+  /* 0x3f00 */
+  {  699, 0x4051 }, {  703, 0x0000 }, {  703, 0x0000 }, {  703, 0x0000 },
+  {  703, 0x0000 }, {  703, 0x0308 }, {  706, 0x0008 }, {  707, 0x1000 },
+  {  708, 0x0000 }, {  708, 0x0008 }, {  709, 0x0000 }, {  709, 0x0000 },
+  {  709, 0x0001 }, {  710, 0x1080 }, {  712, 0x2020 }, {  714, 0x0600 },
+  /* 0x4000 */
+  {  716, 0x0010 }, {  717, 0x2000 }, {  718, 0x0000 }, {  718, 0x0200 },
+  {  719, 0x0020 }, {  720, 0x0088 }, {  722, 0x8424 }, {  726, 0x0000 },
+  {  726, 0x0000 }, {  726, 0x0000 }, {  726, 0x0100 }, {  727, 0x8800 },
+  {  729, 0x0100 }, {  730, 0x8100 }, {  732, 0x0000 }, {  732, 0x0400 },
+  /* 0x4100 */
+  {  733, 0x4218 }, {  737, 0x0000 }, {  737, 0x0000 }, {  737, 0x0004 },
+  {  738, 0x0000 }, {  738, 0x0000 }, {  738, 0x5080 }, {  741, 0x8000 },
+  {  742, 0x0000 }, {  742, 0x0001 }, {  743, 0x0000 }, {  743, 0x0004 },
+  {  744, 0x8410 }, {  747, 0x0800 }, {  748, 0x8000 }, {  749, 0x0200 },
+  /* 0x4200 */
+  {  750, 0x0000 }, {  750, 0x0002 }, {  751, 0x0000 }, {  751, 0x0000 },
+  {  751, 0x0001 }, {  752, 0x0000 }, {  752, 0x0401 }, {  754, 0x0400 },
+  {  755, 0x1000 }, {  756, 0x0010 }, {  757, 0x0000 }, {  757, 0x1220 },
+  {  760, 0x0000 }, {  760, 0x0000 }, {  760, 0x0000 }, {  760, 0x1810 },
+  /* 0x4300 */
+  {  763, 0x0000 }, {  763, 0x0000 }, {  763, 0x0800 }, {  764, 0x0000 },
+  {  764, 0x0000 }, {  764, 0x0000 }, {  764, 0x4000 }, {  765, 0x0000 },
+  {  765, 0x0000 }, {  765, 0x0080 }, {  766, 0x0000 }, {  766, 0x0400 },
+  {  767, 0x0002 }, {  768, 0x8200 }, {  770, 0x2000 }, {  771, 0x0004 },
+  /* 0x4400 */
+  {  772, 0x0006 }, {  774, 0x0008 }, {  775, 0x2020 }, {  777, 0x0000 },
+  {  777, 0x0000 }, {  777, 0x0000 }, {  777, 0x0000 }, {  777, 0x0400 },
+  {  778, 0x8000 }, {  779, 0x8002 }, {  781, 0x0005 }, {  783, 0x0081 },
+  {  785, 0x4021 }, {  788, 0xa000 }, {  790, 0x1e10 }, {  795, 0x0010 },
+  /* 0x4500 */
+  {  796, 0x0a18 }, {  800, 0x2040 }, {  802, 0x4080 }, {  804, 0xa808 },
+  {  808, 0x0008 }, {  809, 0x1026 }, {  813, 0x0404 }, {  815, 0x0080 },
+  {  816, 0x0020 }, {  817, 0x0000 }, {  817, 0x0000 }, {  817, 0x0000 },
+  {  817, 0x0000 }, {  817, 0x0000 }, {  817, 0x0200 }, {  818, 0x0000 },
+  /* 0x4600 */
+  {  818, 0x8040 }, {  820, 0x00a0 }, {  822, 0x0000 }, {  822, 0x0000 },
+  {  822, 0x0000 }, {  822, 0x0800 }, {  823, 0x0000 }, {  823, 0x0400 },
+  {  824, 0x0001 }, {  825, 0x0000 }, {  825, 0x0000 }, {  825, 0x0000 },
+  {  825, 0x8000 }, {  826, 0x0001 }, {  827, 0x0000 }, {  827, 0x0020 },
+  /* 0x4700 */
+  {  828, 0x0000 }, {  828, 0x0108 }, {  830, 0x0000 }, {  830, 0x0000 },
+  {  830, 0x4000 }, {  831, 0x0000 }, {  831, 0x0000 }, {  831, 0x1000 },
+  {  832, 0x0000 }, {  832, 0x0100 }, {  833, 0x0040 }, {  834, 0x0000 },
+  {  834, 0x0000 }, {  834, 0x0020 }, {  835, 0x2000 }, {  836, 0x0010 },
+  /* 0x4800 */
+  {  837, 0x0801 }, {  839, 0x0000 }, {  839, 0x0000 }, {  839, 0x0080 },
+  {  840, 0x0000 }, {  840, 0x2000 }, {  841, 0x0000 }, {  841, 0x0002 },
+  {  842, 0x0000 }, {  842, 0x0800 }, {  843, 0x6000 }, {  845, 0x0000 },
+  {  845, 0x0000 }, {  845, 0x2001 }, {  847, 0x2000 }, {  848, 0x0408 },
+  /* 0x4900 */
+  {  850, 0x0040 }, {  851, 0x4002 }, {  853, 0x2420 }, {  856, 0x5020 },
+  {  859, 0x0020 }, {  860, 0x000a }, {  862, 0x0420 }, {  864, 0x0004 },
+  {  865, 0x0200 }, {  866, 0x0000 }, {  866, 0x0082 }, {  868, 0x0000 },
+  {  868, 0x0000 }, {  868, 0x8000 }, {  869, 0x00a0 }, {  871, 0x0000 },
+  /* 0x4a00 */
+  {  871, 0x8000 }, {  872, 0x2000 }, {  873, 0x0010 }, {  874, 0x0020 },
+  {  875, 0x0000 }, {  875, 0x0000 }, {  875, 0x0000 }, {  875, 0x0000 },
+  {  875, 0x0000 }, {  875, 0x0040 }, {  876, 0x0000 }, {  876, 0x0110 },
+  {  878, 0x0000 }, {  878, 0x0002 }, {  879, 0x0010 }, {  880, 0x8000 },
+  /* 0x4b00 */
+  {  881, 0x0000 }, {  881, 0x0200 }, {  882, 0x1000 }, {  883, 0x0080 },
+  {  884, 0x0000 }, {  884, 0x0000 }, {  884, 0x8000 }, {  885, 0x4805 },
+  {  889, 0x4000 }, {  890, 0x20c9 }, {  895, 0x0000 }, {  895, 0x6000 },
+  {  897, 0x0001 }, {  898, 0x0000 }, {  898, 0x0000 }, {  898, 0x0000 },
+  /* 0x4c00 */
+  {  898, 0x4090 }, {  901, 0x0000 }, {  901, 0x0000 }, {  901, 0x4800 },
+  {  903, 0x0000 }, {  903, 0x0800 }, {  904, 0x2000 }, {  905, 0x2000 },
+  {  906, 0x0000 }, {  906, 0x0000 }, {  906, 0x4010 }, {  908, 0x0081 },
+  {  910, 0x2000 }, {  911, 0x0000 }, {  911, 0x2002 }, {  913, 0x0000 },
+  /* 0x4d00 */
+  {  913, 0x0200 }, {  914, 0x0001 }, {  915, 0x0000 }, {  915, 0x0010 },
+  {  916, 0x0000 }, {  916, 0x0000 }, {  916, 0x0000 }, {  916, 0x0000 },
+  {  916, 0x0000 }, {  916, 0x1002 }, {  918, 0x0000 }, {  918, 0x0000 },
+  {  918, 0x0000 }, {  918, 0x0000 }, {  918, 0x0000 }, {  918, 0x0000 },
+  /* 0x4e00 */
+  {  918, 0x0010 }, {  919, 0x1400 }, {  921, 0x1512 }, {  926, 0xa0c0 },
+  {  930, 0x0200 }, {  931, 0x0c00 }, {  933, 0x0400 }, {  934, 0x0100 },
+  {  935, 0x02a3 }, {  940, 0x0500 }, {  942, 0x0001 }, {  943, 0x9880 },
+  {  947, 0x4000 }, {  948, 0x0000 }, {  948, 0x4c00 }, {  951, 0x0100 },
+  /* 0x4f00 */
+  {  952, 0x0008 }, {  953, 0x0400 }, {  954, 0x0300 }, {  956, 0x0284 },
+  {  959, 0x0824 }, {  962, 0x0000 }, {  962, 0x0000 }, {  962, 0x0004 },
+  {  963, 0x0400 }, {  964, 0x0000 }, {  964, 0x0904 }, {  967, 0x2001 },
+  {  969, 0x1100 }, {  971, 0x0000 }, {  971, 0x0030 }, {  973, 0x2204 },
+  /* 0x5000 */
+  {  976, 0x0108 }, {  978, 0x0000 }, {  978, 0x4000 }, {  979, 0x0010 },
+  {  980, 0x0000 }, {  980, 0x0140 }, {  982, 0x1040 }, {  984, 0x0000 },
+  {  984, 0x0102 }, {  986, 0x0001 }, {  987, 0x0040 }, {  988, 0x0000 },
+  {  988, 0x2000 }, {  989, 0x8201 }, {  992, 0x0002 }, {  993, 0x1010 },
+  /* 0x5100 */
+  {  995, 0x6002 }, {  998, 0x0000 }, {  998, 0x0800 }, {  999, 0x0000 },
+  {  999, 0x0000 }, {  999, 0x0040 }, { 1000, 0x0401 }, { 1002, 0x0210 },
+  { 1004, 0x0144 }, { 1007, 0x1440 }, { 1010, 0x0980 }, { 1013, 0x013c },
+  { 1018, 0x8288 }, { 1022, 0x880e }, { 1027, 0x2014 }, { 1030, 0x5010 },
+  /* 0x5200 */
+  { 1033, 0x0824 }, { 1036, 0x8000 }, { 1037, 0x00c1 }, { 1040, 0x1010 },
+  { 1042, 0x0000 }, { 1042, 0x0280 }, { 1044, 0x0101 }, { 1046, 0x0208 },
+  { 1048, 0x8000 }, { 1049, 0x0411 }, { 1052, 0x0112 }, { 1055, 0x0220 },
+  { 1057, 0x1020 }, { 1059, 0x0003 }, { 1061, 0x0003 }, { 1063, 0x0200 },
+  /* 0x5300 */
+  { 1064, 0x0002 }, { 1065, 0x0000 }, { 1065, 0x1080 }, { 1067, 0x090c },
+  { 1071, 0x4004 }, { 1073, 0xa000 }, { 1075, 0x2290 }, { 1079, 0x6010 },
+  { 1082, 0x0000 }, { 1082, 0x0008 }, { 1083, 0x4f45 }, { 1091, 0x0041 },
+  { 1093, 0x1026 }, { 1097, 0x0707 }, { 1103, 0x0001 }, { 1104, 0x40c0 },
+  /* 0x5400 */
+  { 1107, 0x0000 }, { 1107, 0x0458 }, { 1111, 0x800a }, { 1114, 0x0004 },
+  { 1115, 0x2800 }, { 1117, 0x0000 }, { 1117, 0x2600 }, { 1120, 0x0000 },
+  { 1120, 0x8020 }, { 1122, 0x5098 }, { 1127, 0x0018 }, { 1129, 0x0214 },
+  { 1132, 0x3800 }, { 1135, 0x0401 }, { 1137, 0x8008 }, { 1139, 0x0000 },
+  /* 0x5500 */
+  { 1139, 0x2004 }, { 1141, 0x4108 }, { 1144, 0x0928 }, { 1148, 0x8000 },
+  { 1149, 0x0280 }, { 1151, 0x2008 }, { 1153, 0x0a00 }, { 1155, 0x020e },
+  { 1159, 0x0040 }, { 1160, 0x0001 }, { 1161, 0x0200 }, { 1162, 0x1611 },
+  { 1167, 0x0002 }, { 1168, 0x4180 }, { 1171, 0x1400 }, { 1173, 0x0823 },
+  /* 0x5600 */
+  { 1177, 0x0020 }, { 1178, 0x4002 }, { 1180, 0x202f }, { 1186, 0x0080 },
+  { 1187, 0xa008 }, { 1190, 0x2015 }, { 1194, 0x0002 }, { 1195, 0x1c00 },
+  { 1198, 0x0e00 }, { 1201, 0xc004 }, { 1204, 0x8012 }, { 1207, 0x8202 },
+  { 1210, 0x0000 }, { 1210, 0x0040 }, { 1211, 0xa004 }, { 1214, 0x2002 },
+  /* 0x5700 */
+  { 1216, 0x0001 }, { 1217, 0x2020 }, { 1219, 0x0000 }, { 1219, 0x8004 },
+  { 1221, 0x004c }, { 1224, 0x8890 }, { 1228, 0x0080 }, { 1229, 0xc400 },
+  { 1232, 0x2500 }, { 1235, 0x1001 }, { 1237, 0x0482 }, { 1240, 0x4810 },
+  { 1243, 0x0110 }, { 1245, 0x6080 }, { 1248, 0x8040 }, { 1250, 0x4000 },
+  /* 0x5800 */
+  { 1251, 0x0008 }, { 1252, 0x0004 }, { 1253, 0x0044 }, { 1255, 0x0400 },
+  { 1256, 0x0091 }, { 1259, 0x9000 }, { 1261, 0x1200 }, { 1263, 0x000c },
+  { 1265, 0x0000 }, { 1265, 0x0600 }, { 1267, 0x0480 }, { 1269, 0x0861 },
+  { 1273, 0x0800 }, { 1274, 0x1000 }, { 1275, 0x0001 }, { 1276, 0x080d },
+  /* 0x5900 */
+  { 1280, 0x04b4 }, { 1285, 0x8002 }, { 1287, 0x0000 }, { 1287, 0x0014 },
+  { 1289, 0x0000 }, { 1289, 0x0000 }, { 1289, 0x0020 }, { 1290, 0x0020 },
+  { 1291, 0x0200 }, { 1292, 0x8410 }, { 1295, 0x1000 }, { 1296, 0x0181 },
+  { 1299, 0x0210 }, { 1301, 0x0200 }, { 1302, 0x8800 }, { 1304, 0x0301 },
+  /* 0x5a00 */
+  { 1307, 0x2804 }, { 1310, 0x0004 }, { 1311, 0x1c92 }, { 1317, 0x2000 },
+  { 1318, 0x0020 }, { 1319, 0x0210 }, { 1321, 0x490a }, { 1326, 0x4202 },
+  { 1329, 0x0146 }, { 1333, 0x0242 }, { 1336, 0x0803 }, { 1339, 0x0000 },
+  { 1339, 0xc008 }, { 1342, 0x0008 }, { 1343, 0x0010 }, { 1344, 0x4405 },
+  /* 0x5b00 */
+  { 1348, 0x2000 }, { 1349, 0x8002 }, { 1351, 0x0800 }, { 1352, 0x0000 },
+  { 1352, 0x8452 }, { 1357, 0x0000 }, { 1357, 0x2140 }, { 1360, 0x1050 },
+  { 1363, 0x0005 }, { 1365, 0xe001 }, { 1369, 0x0400 }, { 1370, 0x0000 },
+  { 1370, 0x0008 }, { 1371, 0x00a0 }, { 1373, 0x0000 }, { 1373, 0x8008 },
+  /* 0x5c00 */
+  { 1375, 0x0020 }, { 1376, 0x5018 }, { 1380, 0x0009 }, { 1382, 0x0000 },
+  { 1382, 0x0600 }, { 1384, 0x4008 }, { 1386, 0x0000 }, { 1386, 0x0000 },
+  { 1386, 0x0020 }, { 1387, 0x5600 }, { 1391, 0x0000 }, { 1391, 0x0400 },
+  { 1392, 0x0006 }, { 1394, 0x0002 }, { 1395, 0x8220 }, { 1398, 0x0000 },
+  /* 0x5d00 */
+  { 1398, 0x0000 }, { 1398, 0x0121 }, { 1401, 0x9000 }, { 1403, 0x4000 },
+  { 1404, 0x0140 }, { 1406, 0x08c0 }, { 1409, 0x0000 }, { 1409, 0x0011 },
+  { 1411, 0x4820 }, { 1414, 0x0000 }, { 1414, 0x0810 }, { 1416, 0x0240 },
+  { 1418, 0x0002 }, { 1419, 0x0880 }, { 1421, 0x0000 }, { 1421, 0x0020 },
+  /* 0x5e00 */
+  { 1422, 0x0a00 }, { 1424, 0x0004 }, { 1425, 0x4000 }, { 1426, 0x0000 },
+  { 1426, 0x0104 }, { 1428, 0x4000 }, { 1429, 0x0000 }, { 1429, 0x8400 },
+  { 1431, 0x0048 }, { 1433, 0x0000 }, { 1433, 0x0000 }, { 1433, 0x2000 },
+  { 1434, 0x2000 }, { 1435, 0x0001 }, { 1436, 0x0000 }, { 1436, 0x1b10 },
+  /* 0x5f00 */
+  { 1441, 0x7000 }, { 1444, 0x0000 }, { 1444, 0x0020 }, { 1445, 0x0400 },
+  { 1446, 0x2000 }, { 1447, 0x1003 }, { 1450, 0x000a }, { 1452, 0x0804 },
+  { 1454, 0x0008 }, { 1455, 0x0000 }, { 1455, 0x0090 }, { 1457, 0x0402 },
+  { 1459, 0x0010 }, { 1460, 0x8800 }, { 1462, 0x0000 }, { 1462, 0x0000 },
+  /* 0x6000 */
+  { 1462, 0x0000 }, { 1462, 0x0000 }, { 1462, 0x0008 }, { 1463, 0x0802 },
+  { 1465, 0x0400 }, { 1466, 0x0004 }, { 1467, 0x0000 }, { 1467, 0x40a0 },
+  { 1470, 0x0000 }, { 1470, 0x4000 }, { 1471, 0x0090 }, { 1473, 0x0008 },
+  { 1474, 0x0000 }, { 1474, 0x4080 }, { 1476, 0x0388 }, { 1480, 0x2000 },
+  /* 0x6100 */
+  { 1481, 0x1080 }, { 1483, 0x0200 }, { 1484, 0x0000 }, { 1484, 0x2001 },
+  { 1486, 0x0004 }, { 1487, 0x1201 }, { 1490, 0x8011 }, { 1493, 0x2000 },
+  { 1494, 0x0082 }, { 1496, 0x1320 }, { 1500, 0x0000 }, { 1500, 0x0280 },
+  { 1502, 0x8001 }, { 1504, 0x0409 }, { 1507, 0x0004 }, { 1508, 0x0000 },
+  /* 0x6200 */
+  { 1508, 0x0000 }, { 1508, 0x0000 }, { 1508, 0x1000 }, { 1509, 0x0280 },
+  { 1511, 0x1000 }, { 1512, 0x0000 }, { 1512, 0x0100 }, { 1513, 0x0000 },
+  { 1513, 0x0024 }, { 1515, 0x2001 }, { 1517, 0x0050 }, { 1519, 0x0000 },
+  { 1519, 0x0028 }, { 1521, 0x8020 }, { 1523, 0x0020 }, { 1524, 0x0000 },
+  /* 0x6300 */
+  { 1524, 0x0000 }, { 1524, 0x0100 }, { 1525, 0x4000 }, { 1526, 0x00a2 },
+  { 1529, 0x0000 }, { 1529, 0x0000 }, { 1529, 0x1010 }, { 1531, 0x8200 },
+  { 1533, 0x0800 }, { 1534, 0x0000 }, { 1534, 0x0000 }, { 1534, 0x0200 },
+  { 1535, 0x0002 }, { 1536, 0x4002 }, { 1538, 0x0044 }, { 1540, 0x5900 },
+  /* 0x6400 */
+  { 1544, 0x0080 }, { 1545, 0x0000 }, { 1545, 0x0000 }, { 1545, 0x0d04 },
+  { 1549, 0x0000 }, { 1549, 0x0400 }, { 1550, 0x0000 }, { 1550, 0x1002 },
+  { 1552, 0x2000 }, { 1553, 0x0002 }, { 1554, 0x8000 }, { 1555, 0x0050 },
+  { 1557, 0x0001 }, { 1558, 0x2008 }, { 1560, 0x04a2 }, { 1564, 0x0000 },
+  /* 0x6500 */
+  { 1564, 0x0400 }, { 1565, 0xc002 }, { 1568, 0x0000 }, { 1568, 0x0031 },
+  { 1571, 0x2000 }, { 1572, 0x8000 }, { 1573, 0x2800 }, { 1575, 0x0000 },
+  { 1575, 0x0360 }, { 1579, 0x0000 }, { 1579, 0x0000 }, { 1579, 0x4020 },
+  { 1581, 0x0000 }, { 1581, 0x0012 }, { 1583, 0x0009 }, { 1585, 0x8000 },
+  /* 0x6600 */
+  { 1586, 0x0000 }, { 1586, 0x4100 }, { 1588, 0x0008 }, { 1589, 0x0001 },
+  { 1590, 0x0910 }, { 1593, 0x0088 }, { 1595, 0x0888 }, { 1598, 0x2008 },
+  { 1600, 0x4020 }, { 1602, 0x0404 }, { 1604, 0x2010 }, { 1606, 0x8048 },
+  { 1609, 0x6000 }, { 1611, 0x0000 }, { 1611, 0x0000 }, { 1611, 0x0002 },
+  /* 0x6700 */
+  { 1612, 0x5004 }, { 1615, 0x4040 }, { 1617, 0x0020 }, { 1618, 0x0040 },
+  { 1619, 0x0010 }, { 1620, 0x0000 }, { 1620, 0x0086 }, { 1623, 0x0000 },
+  { 1623, 0x8000 }, { 1624, 0x0000 }, { 1624, 0x1011 }, { 1627, 0x8002 },
+  { 1629, 0x0000 }, { 1629, 0x00c0 }, { 1631, 0x0000 }, { 1631, 0x4200 },
+  /* 0x6800 */
+  { 1633, 0x201f }, { 1639, 0x4801 }, { 1642, 0x0004 }, { 1643, 0x40c0 },
+  { 1646, 0x0480 }, { 1648, 0x2060 }, { 1651, 0x0020 }, { 1652, 0x0000 },
+  { 1652, 0x0110 }, { 1654, 0x0100 }, { 1655, 0x0040 }, { 1656, 0x2240 },
+  { 1659, 0x0428 }, { 1662, 0x0000 }, { 1662, 0x0000 }, { 1662, 0x0000 },
+  /* 0x6900 */
+  { 1662, 0x020f }, { 1667, 0x0d00 }, { 1670, 0x1000 }, { 1671, 0x4040 },
+  { 1673, 0x0048 }, { 1675, 0x0020 }, { 1676, 0x0092 }, { 1679, 0x000c },
+  { 1681, 0x0421 }, { 1684, 0x8100 }, { 1686, 0x0004 }, { 1687, 0x0004 },
+  { 1688, 0x0001 }, { 1689, 0x0062 }, { 1692, 0x0202 }, { 1694, 0x0600 },
+  /* 0x6a00 */
+  { 1696, 0x1808 }, { 1699, 0x1400 }, { 1701, 0x3800 }, { 1704, 0x0008 },
+  { 1705, 0x1020 }, { 1707, 0x008c }, { 1710, 0x0020 }, { 1711, 0x0412 },
+  { 1714, 0x8404 }, { 1717, 0x2200 }, { 1719, 0x0880 }, { 1721, 0x4026 },
+  { 1725, 0x0700 }, { 1728, 0x0110 }, { 1730, 0x0000 }, { 1730, 0x0040 },
+  /* 0x6b00 */
+  { 1731, 0x0020 }, { 1732, 0x2000 }, { 1733, 0x0000 }, { 1733, 0x0020 },
+  { 1734, 0x0000 }, { 1734, 0x0084 }, { 1736, 0x8000 }, { 1737, 0x0410 },
+  { 1739, 0x0002 }, { 1740, 0x0000 }, { 1740, 0x0000 }, { 1740, 0x0000 },
+  { 1740, 0x0002 }, { 1741, 0x1000 }, { 1742, 0x0402 }, { 1744, 0x0400 },
+  /* 0x6c00 */
+  { 1745, 0x0000 }, { 1745, 0x1000 }, { 1746, 0x0000 }, { 1746, 0x26a2 },
+  { 1752, 0x0200 }, { 1753, 0x0500 }, { 1755, 0x4000 }, { 1756, 0x8220 },
+  { 1759, 0x0000 }, { 1759, 0x8000 }, { 1760, 0x8404 }, { 1763, 0x0004 },
+  { 1764, 0x4800 }, { 1766, 0x8000 }, { 1767, 0x0400 }, { 1768, 0x0000 },
+  /* 0x6d00 */
+  { 1768, 0x0064 }, { 1771, 0x0000 }, { 1771, 0x0050 }, { 1773, 0x0000 },
+  { 1773, 0x4000 }, { 1774, 0x1880 }, { 1777, 0x0000 }, { 1777, 0x0006 },
+  { 1779, 0x8002 }, { 1781, 0x0040 }, { 1782, 0x0030 }, { 1784, 0x0202 },
+  { 1786, 0x0000 }, { 1786, 0x0000 }, { 1786, 0x0000 }, { 1786, 0x0000 },
+  /* 0x6e00 */
+  { 1786, 0x8414 }, { 1790, 0x0120 }, { 1792, 0x0600 }, { 1794, 0x0000 },
+  { 1794, 0x8000 }, { 1795, 0x0201 }, { 1797, 0x0000 }, { 1797, 0x1040 },
+  { 1799, 0x0840 }, { 1801, 0x0400 }, { 1802, 0x0000 }, { 1802, 0x0920 },
+  { 1805, 0x0000 }, { 1805, 0x2e00 }, { 1809, 0x0304 }, { 1812, 0x0400 },
+  /* 0x6f00 */
+  { 1813, 0x1810 }, { 1816, 0x00c0 }, { 1818, 0x0010 }, { 1819, 0x2010 },
+  { 1821, 0x0010 }, { 1822, 0x1040 }, { 1824, 0x0000 }, { 1824, 0x0210 },
+  { 1826, 0x0402 }, { 1828, 0xa000 }, { 1830, 0x0000 }, { 1830, 0x4820 },
+  { 1833, 0x0000 }, { 1833, 0x0608 }, { 1836, 0x0000 }, { 1836, 0x0140 },
+  /* 0x7000 */
+  { 1838, 0x0008 }, { 1839, 0x4000 }, { 1840, 0x1000 }, { 1841, 0x0000 },
+  { 1841, 0x0800 }, { 1842, 0x1011 }, { 1845, 0x9080 }, { 1848, 0xc220 },
+  { 1852, 0x8a02 }, { 1856, 0x0000 }, { 1856, 0x00e9 }, { 1861, 0x3a00 },
+  { 1865, 0x1011 }, { 1868, 0x8061 }, { 1872, 0x0000 }, { 1872, 0x4022 },
+  /* 0x7100 */
+  { 1875, 0x0020 }, { 1876, 0x2000 }, { 1877, 0x1a00 }, { 1880, 0x4838 },
+  { 1885, 0x8421 }, { 1889, 0x0002 }, { 1890, 0x0800 }, { 1891, 0x54ea },
+  { 1899, 0x5100 }, { 1902, 0x0140 }, { 1904, 0x200c }, { 1907, 0x0490 },
+  { 1910, 0x0000 }, { 1910, 0x2002 }, { 1912, 0x0800 }, { 1913, 0x0060 },
+  /* 0x7200 */
+  { 1915, 0xc200 }, { 1918, 0x00e0 }, { 1921, 0x4810 }, { 1924, 0x0000 },
+  { 1924, 0x0001 }, { 1925, 0x10a1 }, { 1929, 0x0040 }, { 1930, 0x0000 },
+  { 1930, 0x8084 }, { 1933, 0x8010 }, { 1935, 0x2000 }, { 1936, 0x0004 },
+  { 1937, 0x2000 }, { 1938, 0x0000 }, { 1938, 0x0004 }, { 1939, 0x0000 },
+  /* 0x7300 */
+  { 1939, 0x0014 }, { 1941, 0x0001 }, { 1942, 0x5d00 }, { 1947, 0x0300 },
+  { 1949, 0x8102 }, { 1952, 0x0000 }, { 1952, 0x0000 }, { 1952, 0x0012 },
+  { 1954, 0x8000 }, { 1955, 0x5100 }, { 1958, 0x0480 }, { 1960, 0x0000 },
+  { 1960, 0xc200 }, { 1963, 0x0021 }, { 1965, 0x8056 }, { 1970, 0x0a88 },
+  /* 0x7400 */
+  { 1974, 0x0000 }, { 1974, 0xd2b6 }, { 1983, 0x0000 }, { 1983, 0x1380 },
+  { 1987, 0x03a8 }, { 1992, 0x2048 }, { 1995, 0x1921 }, { 2000, 0x0450 },
+  { 2003, 0x3004 }, { 2006, 0x0a00 }, { 2008, 0x0010 }, { 2009, 0x0010 },
+  { 2010, 0x1100 }, { 2012, 0x0009 }, { 2014, 0x0080 }, { 2015, 0x0107 },
+  /* 0x7500 */
+  { 2019, 0x4020 }, { 2021, 0x4200 }, { 2023, 0x0000 }, { 2023, 0x0830 },
+  { 2026, 0x2444 }, { 2030, 0x002a }, { 2033, 0x6081 }, { 2037, 0x0404 },
+  { 2039, 0x6008 }, { 2042, 0x4004 }, { 2044, 0x0000 }, { 2044, 0x0012 },
+  { 2046, 0x0108 }, { 2048, 0x1000 }, { 2049, 0x0000 }, { 2049, 0x0000 },
+  /* 0x7600 */
+  { 2049, 0x0084 }, { 2051, 0x0000 }, { 2051, 0x1000 }, { 2052, 0x0800 },
+  { 2053, 0xe001 }, { 2057, 0x0012 }, { 2059, 0x80c0 }, { 2062, 0x0458 },
+  { 2066, 0x0000 }, { 2066, 0x0001 }, { 2067, 0x0022 }, { 2069, 0x0080 },
+  { 2070, 0x1000 }, { 2071, 0x0040 }, { 2072, 0x0000 }, { 2072, 0x0000 },
+  /* 0x7700 */
+  { 2072, 0xd000 }, { 2075, 0x4000 }, { 2076, 0x0850 }, { 2079, 0x0000 },
+  { 2079, 0x0009 }, { 2081, 0x0100 }, { 2082, 0x0000 }, { 2082, 0x0d84 },
+  { 2087, 0x0000 }, { 2087, 0x0108 }, { 2089, 0x8000 }, { 2090, 0x4200 },
+  { 2092, 0x0828 }, { 2095, 0x0000 }, { 2095, 0x0040 }, { 2096, 0x4010 },
+  /* 0x7800 */
+  { 2098, 0x0100 }, { 2099, 0x5100 }, { 2102, 0x0000 }, { 2102, 0x3200 },
+  { 2105, 0x0894 }, { 2109, 0x001a }, { 2112, 0x0040 }, { 2113, 0x0400 },
+  { 2114, 0x2102 }, { 2117, 0x0000 }, { 2117, 0x8000 }, { 2118, 0x0342 },
+  { 2122, 0x0080 }, { 2123, 0x018c }, { 2127, 0x4000 }, { 2128, 0x0023 },
+  /* 0x7900 */
+  { 2131, 0x0040 }, { 2132, 0x0000 }, { 2132, 0x4000 }, { 2133, 0x185c },
+  { 2139, 0x0000 }, { 2139, 0x0300 }, { 2141, 0x0004 }, { 2142, 0x4002 },
+  { 2144, 0x00c9 }, { 2148, 0xa202 }, { 2152, 0x0220 }, { 2154, 0x0000 },
+  { 2154, 0x1050 }, { 2157, 0x0010 }, { 2158, 0x0004 }, { 2159, 0x0012 },
+  /* 0x7a00 */
+  { 2161, 0x0040 }, { 2162, 0x0000 }, { 2162, 0x2000 }, { 2163, 0x4400 },
+  { 2165, 0x0228 }, { 2168, 0x0000 }, { 2168, 0x0020 }, { 2169, 0x2000 },
+  { 2170, 0x0008 }, { 2171, 0x0002 }, { 2172, 0x0000 }, { 2172, 0x1801 },
+  { 2175, 0x830c }, { 2180, 0x3c08 }, { 2185, 0x0684 }, { 2189, 0x4000 },
+  /* 0x7b00 */
+  { 2190, 0x1800 }, { 2192, 0x8010 }, { 2194, 0x0280 }, { 2196, 0x0200 },
+  { 2197, 0x000c }, { 2199, 0x0020 }, { 2200, 0x9004 }, { 2203, 0x0800 },
+  { 2204, 0x0000 }, { 2204, 0x0004 }, { 2205, 0x000c }, { 2207, 0x0004 },
+  { 2208, 0x8000 }, { 2209, 0x0001 }, { 2210, 0x0000 }, { 2210, 0x1400 },
+  /* 0x7c00 */
+  { 2212, 0x0000 }, { 2212, 0x0824 }, { 2215, 0x0000 }, { 2215, 0x0020 },
+  { 2216, 0x0014 }, { 2218, 0x2042 }, { 2221, 0x2000 }, { 2222, 0x5811 },
+  { 2227, 0x4048 }, { 2230, 0x1000 }, { 2231, 0x50c0 }, { 2235, 0x0100 },
+  { 2236, 0x2284 }, { 2240, 0x0408 }, { 2242, 0x2040 }, { 2244, 0x1228 },
+  /* 0x7d00 */
+  { 2248, 0x0000 }, { 2248, 0x0000 }, { 2248, 0x0020 }, { 2249, 0x0000 },
+  { 2249, 0x2000 }, { 2250, 0x2400 }, { 2252, 0x0000 }, { 2252, 0x0000 },
+  { 2252, 0x0200 }, { 2253, 0x0080 }, { 2254, 0x0910 }, { 2257, 0x0008 },
+  { 2258, 0xa000 }, { 2260, 0x1019 }, { 2264, 0x0030 }, { 2266, 0x6020 },
+  /* 0x7e00 */
+  { 2269, 0x0080 }, { 2270, 0x0000 }, { 2270, 0x0080 }, { 2271, 0x0000 },
+  { 2271, 0x0000 }, { 2271, 0x0000 }, { 2271, 0x40a0 }, { 2274, 0x8000 },
+  { 2275, 0x4000 }, { 2276, 0x8004 }, { 2278, 0x1010 }, { 2280, 0x0400 },
+  { 2281, 0x8080 }, { 2283, 0x8000 }, { 2284, 0x0000 }, { 2284, 0x0000 },
+  /* 0x7f00 */
+  { 2284, 0x0040 }, { 2285, 0x0000 }, { 2285, 0x0000 }, { 2285, 0x0080 },
+  { 2286, 0x4283 }, { 2291, 0x000c }, { 2293, 0x0000 }, { 2293, 0x0102 },
+  { 2295, 0x8000 }, { 2296, 0x0088 }, { 2298, 0x4008 }, { 2300, 0x0010 },
+  { 2301, 0x0000 }, { 2301, 0x2000 }, { 2302, 0x0080 }, { 2303, 0x0400 },
+  /* 0x8000 */
+  { 2304, 0x0104 }, { 2306, 0x2000 }, { 2307, 0xc021 }, { 2311, 0x1802 },
+  { 2314, 0x0000 }, { 2314, 0x0810 }, { 2316, 0x004e }, { 2320, 0x0000 },
+  { 2320, 0x0001 }, { 2321, 0x8000 }, { 2322, 0x0080 }, { 2323, 0x30c0 },
+  { 2327, 0x0040 }, { 2328, 0x0000 }, { 2328, 0x1200 }, { 2330, 0x0040 },
+  /* 0x8100 */
+  { 2331, 0x5288 }, { 2336, 0x0494 }, { 2340, 0x0400 }, { 2341, 0x0094 },
+  { 2344, 0x0104 }, { 2346, 0x0640 }, { 2349, 0x2000 }, { 2350, 0x1000 },
+  { 2351, 0x0010 }, { 2352, 0x0008 }, { 2353, 0x0420 }, { 2355, 0x0040 },
+  { 2356, 0x0102 }, { 2358, 0x0000 }, { 2358, 0x8010 }, { 2360, 0x0040 },
+  /* 0x8200 */
+  { 2361, 0x0000 }, { 2361, 0x0500 }, { 2363, 0x2240 }, { 2366, 0x4000 },
+  { 2367, 0x0000 }, { 2367, 0x0010 }, { 2368, 0x0024 }, { 2370, 0x0e40 },
+  { 2374, 0x0080 }, { 2375, 0x0000 }, { 2375, 0x0440 }, { 2377, 0x0000 },
+  { 2377, 0x8410 }, { 2380, 0x0101 }, { 2382, 0x4004 }, { 2384, 0xb080 },
+  /* 0x8300 */
+  { 2388, 0x0800 }, { 2389, 0x2500 }, { 2392, 0x0000 }, { 2392, 0x2000 },
+  { 2393, 0x0000 }, { 2393, 0x0080 }, { 2394, 0x804c }, { 2398, 0x0000 },
+  { 2398, 0x0020 }, { 2399, 0x1002 }, { 2401, 0x1000 }, { 2402, 0x4200 },
+  { 2404, 0x2000 }, { 2405, 0x0008 }, { 2406, 0x2000 }, { 2407, 0x0000 },
+  /* 0x8400 */
+  { 2407, 0x0020 }, { 2408, 0x1150 }, { 2412, 0x4053 }, { 2417, 0x4000 },
+  { 2418, 0x0500 }, { 2420, 0x1128 }, { 2424, 0x0014 }, { 2426, 0x8006 },
+  { 2429, 0x0101 }, { 2431, 0x004c }, { 2434, 0x2008 }, { 2436, 0x6000 },
+  { 2438, 0x0000 }, { 2438, 0x4400 }, { 2440, 0x0036 }, { 2444, 0x0100 },
+  /* 0x8500 */
+  { 2445, 0x0028 }, { 2447, 0x0001 }, { 2448, 0x0000 }, { 2448, 0x0118 },
+  { 2451, 0x1804 }, { 2454, 0x0404 }, { 2456, 0x8000 }, { 2457, 0x0009 },
+  { 2459, 0x0000 }, { 2459, 0x0000 }, { 2459, 0x0000 }, { 2459, 0x0000 },
+  { 2459, 0x0002 }, { 2460, 0x0000 }, { 2460, 0x4001 }, { 2462, 0x1000 },
+  /* 0x8600 */
+  { 2463, 0x2004 }, { 2465, 0x0051 }, { 2468, 0x8100 }, { 2470, 0x0000 },
+  { 2470, 0x0024 }, { 2472, 0x0000 }, { 2472, 0x1000 }, { 2473, 0x4004 },
+  { 2475, 0x0000 }, { 2475, 0x0004 }, { 2476, 0x2001 }, { 2478, 0x0004 },
+  { 2479, 0x0000 }, { 2479, 0x0000 }, { 2479, 0x8000 }, { 2480, 0x0000 },
+  /* 0x8700 */
+  { 2480, 0x0000 }, { 2480, 0x0000 }, { 2480, 0x0000 }, { 2480, 0x0000 },
+  { 2480, 0x0000 }, { 2480, 0x0000 }, { 2480, 0x0000 }, { 2480, 0x2003 },
+  { 2483, 0x1840 }, { 2486, 0x0000 }, { 2486, 0x0220 }, { 2488, 0x0002 },
+  { 2489, 0x4002 }, { 2491, 0x0440 }, { 2493, 0x4000 }, { 2494, 0x0020 },
+  /* 0x8800 */
+  { 2495, 0x8010 }, { 2497, 0x0100 }, { 2498, 0x2080 }, { 2500, 0x0000 },
+  { 2500, 0x8064 }, { 2504, 0x4000 }, { 2505, 0x4031 }, { 2509, 0x0000 },
+  { 2509, 0x0090 }, { 2511, 0x1000 }, { 2512, 0x4001 }, { 2514, 0x8030 },
+  { 2517, 0x80a0 }, { 2520, 0x0000 }, { 2520, 0x0040 }, { 2521, 0x8020 },
+  /* 0x8900 */
+  { 2523, 0x0001 }, { 2524, 0x0000 }, { 2524, 0x0010 }, { 2525, 0x0000 },
+  { 2525, 0x2088 }, { 2528, 0x0010 }, { 2529, 0x0020 }, { 2530, 0x0080 },
+  { 2531, 0x0681 }, { 2535, 0x0012 }, { 2537, 0x02a0 }, { 2540, 0x1000 },
+  { 2541, 0x0042 }, { 2543, 0x0000 }, { 2543, 0x0080 }, { 2544, 0x0000 },
+  /* 0x8a00 */
+  { 2544, 0x0000 }, { 2544, 0x1000 }, { 2545, 0x0a00 }, { 2547, 0x2100 },
+  { 2549, 0x0200 }, { 2550, 0x0000 }, { 2550, 0x0080 }, { 2551, 0x4000 },
+  { 2552, 0x0000 }, { 2552, 0x1011 }, { 2555, 0x8200 }, { 2557, 0x0010 },
+  { 2558, 0x0000 }, { 2558, 0x0400 }, { 2559, 0x0400 }, { 2560, 0x0000 },
+  /* 0x8b00 */
+  { 2560, 0x1000 }, { 2561, 0x8000 }, { 2562, 0x2000 }, { 2563, 0x8000 },
+  { 2564, 0x3008 }, { 2567, 0x4000 }, { 2568, 0x0204 }, { 2570, 0x0000 },
+  { 2570, 0x0002 }, { 2571, 0x0801 }, { 2573, 0x0001 }, { 2574, 0x4000 },
+  { 2575, 0x0000 }, { 2575, 0x0000 }, { 2575, 0x0004 }, { 2576, 0x0000 },
+  /* 0x8c00 */
+  { 2576, 0x0000 }, { 2576, 0x0000 }, { 2576, 0x0000 }, { 2576, 0x0000 },
+  { 2576, 0x0000 }, { 2576, 0x0002 }, { 2577, 0x0000 }, { 2577, 0x0000 },
+  { 2577, 0x0000 }, { 2577, 0x8800 }, { 2579, 0x2000 }, { 2580, 0x0000 },
+  { 2580, 0x2000 }, { 2581, 0x0850 }, { 2584, 0x0a00 }, { 2586, 0x0084 },
+  /* 0x8d00 */
+  { 2588, 0x1808 }, { 2591, 0x3106 }, { 2596, 0x0000 }, { 2596, 0x0000 },
+  { 2596, 0x0000 }, { 2596, 0x0000 }, { 2596, 0x0000 }, { 2596, 0x0400 },
+  { 2597, 0x0004 }, { 2598, 0x0000 }, { 2598, 0x0240 }, { 2600, 0x0000 },
+  { 2600, 0x0009 }, { 2602, 0x0010 }, { 2603, 0x0000 }, { 2603, 0x0000 },
+  /* 0x8e00 */
+  { 2603, 0x4002 }, { 2605, 0x0000 }, { 2605, 0x2500 }, { 2608, 0x0400 },
+  { 2609, 0x8040 }, { 2611, 0x0000 }, { 2611, 0x0100 }, { 2612, 0x40a2 },
+  { 2616, 0x0001 }, { 2617, 0x0000 }, { 2617, 0x2080 }, { 2619, 0x1041 },
+  { 2622, 0x4008 }, { 2624, 0x0400 }, { 2625, 0x2014 }, { 2628, 0x0004 },
+  /* 0x8f00 */
+  { 2629, 0x0000 }, { 2629, 0x0200 }, { 2630, 0x2000 }, { 2631, 0x0001 },
+  { 2632, 0x0402 }, { 2634, 0x1000 }, { 2635, 0x40c0 }, { 2638, 0x0000 },
+  { 2638, 0x0000 }, { 2638, 0x0008 }, { 2639, 0x0021 }, { 2641, 0x5fe8 },
+  { 2651, 0x1402 }, { 2654, 0x0401 }, { 2656, 0x0000 }, { 2656, 0x0200 },
+  /* 0x9000 */
+  { 2657, 0x0100 }, { 2658, 0x0004 }, { 2659, 0x0000 }, { 2659, 0x0088 },
+  { 2661, 0x1000 }, { 2662, 0x0040 }, { 2663, 0x1012 }, { 2666, 0x0000 },
+  { 2666, 0x0000 }, { 2666, 0x0000 }, { 2666, 0x4100 }, { 2668, 0x0800 },
+  { 2669, 0x0010 }, { 2670, 0x0000 }, { 2670, 0x0000 }, { 2670, 0x0000 },
+  /* 0x9100 */
+  { 2670, 0x0000 }, { 2670, 0x0000 }, { 2670, 0x0000 }, { 2670, 0x0000 },
+  { 2670, 0x0000 }, { 2670, 0x5202 }, { 2674, 0x0080 }, { 2675, 0x1041 },
+  { 2678, 0x5000 }, { 2680, 0x0000 }, { 2680, 0x0200 }, { 2681, 0x0840 },
+  { 2683, 0x0010 }, { 2684, 0x8040 }, { 2686, 0x0020 }, { 2687, 0x4400 },
+  /* 0x9200 */
+  { 2689, 0x4100 }, { 2691, 0x0008 }, { 2692, 0x0d00 }, { 2695, 0x1020 },
+  { 2697, 0x0012 }, { 2699, 0xa120 }, { 2703, 0x4804 }, { 2706, 0x0080 },
+  { 2707, 0x8212 }, { 2711, 0x0000 }, { 2711, 0x4000 }, { 2712, 0xc602 },
+  { 2717, 0x0000 }, { 2717, 0x0810 }, { 2719, 0x1828 }, { 2723, 0x205c },
+  /* 0x9300 */
+  { 2728, 0x0088 }, { 2730, 0x0000 }, { 2730, 0x1000 }, { 2731, 0x0003 },
+  { 2733, 0x013f }, { 2740, 0x8000 }, { 2741, 0x4b44 }, { 2747, 0x2118 },
+  { 2751, 0x00f2 }, { 2756, 0x1001 }, { 2758, 0x2001 }, { 2760, 0xa900 },
+  { 2764, 0x0840 }, { 2766, 0x0808 }, { 2768, 0x0001 }, { 2769, 0x000b },
+  /* 0x9400 */
+  { 2772, 0x0112 }, { 2775, 0x2880 }, { 2778, 0x20f0 }, { 2783, 0x4000 },
+  { 2784, 0x200c }, { 2787, 0x0910 }, { 2790, 0x10a0 }, { 2793, 0x0a00 },
+  { 2795, 0x0020 }, { 2796, 0x8000 }, { 2797, 0x0004 }, { 2798, 0x0000 },
+  { 2798, 0x000a }, { 2800, 0x1000 }, { 2801, 0x0000 }, { 2801, 0x0040 },
+  /* 0x9500 */
+  { 2802, 0x0000 }, { 2802, 0x0000 }, { 2802, 0x2000 }, { 2803, 0x0000 },
+  { 2803, 0x0080 }, { 2804, 0x0000 }, { 2804, 0x0000 }, { 2804, 0x8100 },
+  { 2806, 0x0020 }, { 2807, 0x02c0 }, { 2810, 0x04c5 }, { 2815, 0x0000 },
+  { 2815, 0x0000 }, { 2815, 0x0000 }, { 2815, 0x0100 }, { 2816, 0x0010 },
+  /* 0x9600 */
+  { 2817, 0x0000 }, { 2817, 0x2000 }, { 2818, 0x0000 }, { 2818, 0x0108 },
+  { 2820, 0x0022 }, { 2822, 0x0040 }, { 2823, 0x0200 }, { 2824, 0x0800 },
+  { 2825, 0x8002 }, { 2827, 0x0040 }, { 2828, 0x0028 }, { 2830, 0x2040 },
+  { 2832, 0x0000 }, { 2832, 0x0000 }, { 2832, 0x0000 }, { 2832, 0x0010 },
+  /* 0x9700 */
+  { 2833, 0x0008 }, { 2834, 0x0800 }, { 2835, 0x0002 }, { 2836, 0x0042 },
+  { 2838, 0x0003 }, { 2840, 0xa082 }, { 2844, 0x2000 }, { 2845, 0x0002 },
+  { 2846, 0x0280 }, { 2848, 0x8800 }, { 2850, 0x0000 }, { 2850, 0x6516 },
+  { 2857, 0x0105 }, { 2860, 0x0004 }, { 2861, 0x4041 }, { 2864, 0x0024 },
+  /* 0x9800 */
+  { 2866, 0x0000 }, { 2866, 0x8030 }, { 2869, 0x4008 }, { 2871, 0x0018 },
+  { 2873, 0x0880 }, { 2875, 0x0000 }, { 2875, 0x1040 }, { 2877, 0x0020 },
+  { 2878, 0x0000 }, { 2878, 0x0000 }, { 2878, 0x0000 }, { 2878, 0x0290 },
+  { 2881, 0x4588 }, { 2886, 0x5000 }, { 2888, 0x1043 }, { 2892, 0x0022 },
+  /* 0x9900 */
+  { 2894, 0x4000 }, { 2895, 0x1200 }, { 2897, 0x0000 }, { 2897, 0x0b80 },
+  { 2901, 0x2405 }, { 2905, 0x2000 }, { 2906, 0x000c }, { 2908, 0x0000 },
+  { 2908, 0x0000 }, { 2908, 0x0800 }, { 2909, 0x0410 }, { 2911, 0x1100 },
+  { 2913, 0x0030 }, { 2915, 0x0400 }, { 2916, 0x0042 }, { 2918, 0x0020 },
+  /* 0x9a00 */
+  { 2919, 0x1000 }, { 2920, 0x8001 }, { 2922, 0x8042 }, { 2925, 0x1800 },
+  { 2927, 0x0000 }, { 2927, 0x1100 }, { 2929, 0x1008 }, { 2931, 0x0000 },
+  { 2931, 0x8000 }, { 2932, 0x0000 }, { 2932, 0x0000 }, { 2932, 0x2444 },
+  { 2936, 0x0000 }, { 2936, 0x0080 }, { 2937, 0x0005 }, { 2939, 0x8010 },
+  /* 0x9b00 */
+  { 2941, 0x8204 }, { 2944, 0x0010 }, { 2945, 0x2400 }, { 2947, 0x0210 },
+  { 2949, 0x0001 }, { 2950, 0x0001 }, { 2951, 0x0200 }, { 2952, 0x8000 },
+  { 2953, 0xe80a }, { 2959, 0xa080 }, { 2962, 0x0000 }, { 2962, 0x0001 },
+  { 2963, 0x8000 }, { 2964, 0x2000 }, { 2965, 0x2200 }, { 2967, 0x8012 },
+  /* 0x9c00 */
+  { 2970, 0x1404 }, { 2973, 0x8821 }, { 2977, 0x8041 }, { 2980, 0x0420 },
+  { 2982, 0x8020 }, { 2984, 0x2008 }, { 2986, 0x0000 }, { 2986, 0x1804 },
+  { 2989, 0x0000 }, { 2989, 0x0000 }, { 2989, 0x0000 }, { 2989, 0x0000 },
+  { 2989, 0x0000 }, { 2989, 0x0000 }, { 2989, 0x0000 }, { 2989, 0x0000 },
+  /* 0x9d00 */
+  { 2989, 0x1004 }, { 2991, 0x0040 }, { 2992, 0x0002 }, { 2993, 0x0210 },
+  { 2995, 0x4210 }, { 2998, 0x4001 }, { 3000, 0x6000 }, { 3002, 0x5000 },
+  { 3004, 0x0008 }, { 3005, 0x0008 }, { 3006, 0x0820 }, { 3008, 0x2000 },
+  { 3009, 0x0211 }, { 3012, 0x0010 }, { 3013, 0x0000 }, { 3013, 0x1000 },
+  /* 0x9e00 */
+  { 3014, 0x5400 }, { 3017, 0x9100 }, { 3020, 0x0000 }, { 3020, 0x0000 },
+  { 3020, 0x0000 }, { 3020, 0x0000 }, { 3020, 0x0000 }, { 3020, 0x0800 },
+  { 3021, 0x0032 }, { 3024, 0x4161 }, { 3029, 0x9d44 }, { 3036, 0xa002 },
+  { 3039, 0x00d2 }, { 3043, 0x0000 }, { 3043, 0x0004 }, { 3044, 0x4102 },
+  /* 0x9f00 */
+  { 3047, 0x0104 }, { 3049, 0x0080 }, { 3050, 0x00c0 }, { 3052, 0x0200 },
+  { 3053, 0x0030 }, { 3055, 0x0409 }, { 3058, 0x0204 }, { 3060, 0x8000 },
+  { 3061, 0x4000 }, { 3062, 0x8200 }, { 3064, 0x0020 }, { 3065, 0x0003 },
+};
+static const Summary16 hkscs1999_uni2indx_pagef9[1] = {
+  /* 0xf900 */
+  { 3067, 0x0080 },
+};
+static const Summary16 hkscs1999_uni2indx_pageff[15] = {
+  /* 0xff00 */
+  { 3068, 0x0084 }, { 3070, 0x0000 }, { 3070, 0x0000 }, { 3070, 0x2800 },
+  { 3072, 0x0000 }, { 3072, 0x0000 }, { 3072, 0x0000 }, { 3072, 0x0000 },
+  { 3072, 0x0000 }, { 3072, 0x0000 }, { 3072, 0x0000 }, { 3072, 0x0000 },
+  { 3072, 0x0000 }, { 3072, 0x0000 }, { 3072, 0x2014 },
+};
+static const Summary16 hkscs1999_uni2indx_page200[2335] = {
+  /* 0x20000 */
+  { 3075, 0x0000 }, { 3075, 0x0000 }, { 3075, 0x0002 }, { 3076, 0x4000 },
+  { 3077, 0x4040 }, { 3079, 0x0000 }, { 3079, 0x0100 }, { 3080, 0x0000 },
+  { 3080, 0x04c0 }, { 3083, 0x0010 }, { 3084, 0x0000 }, { 3084, 0x0000 },
+  { 3084, 0x3c00 }, { 3088, 0x0002 }, { 3089, 0x4000 }, { 3090, 0x0000 },
+  /* 0x20100 */
+  { 3090, 0x5000 }, { 3092, 0x0100 }, { 3093, 0x0000 }, { 3093, 0x0000 },
+  { 3093, 0x0000 }, { 3093, 0x0000 }, { 3093, 0x0000 }, { 3093, 0x0000 },
+  { 3093, 0x0000 }, { 3093, 0x0000 }, { 3093, 0x0a00 }, { 3095, 0x0000 },
+  { 3095, 0x0002 }, { 3096, 0x0010 }, { 3097, 0x0000 }, { 3097, 0x0004 },
+  /* 0x20200 */
+  { 3098, 0x1010 }, { 3100, 0x0010 }, { 3101, 0x0000 }, { 3101, 0x0000 },
+  { 3101, 0x0000 }, { 3101, 0x0800 }, { 3102, 0x0000 }, { 3102, 0x0030 },
+  { 3104, 0x0000 }, { 3104, 0x4200 }, { 3106, 0x0001 }, { 3107, 0x8080 },
+  { 3109, 0x0001 }, { 3110, 0x0000 }, { 3110, 0x0020 }, { 3111, 0x0000 },
+  /* 0x20300 */
+  { 3111, 0x0400 }, { 3112, 0x0000 }, { 3112, 0x0020 }, { 3113, 0x0000 },
+  { 3113, 0x00e2 }, { 3117, 0x0000 }, { 3117, 0x0000 }, { 3117, 0xc000 },
+  { 3119, 0x0001 }, { 3120, 0x0000 }, { 3120, 0x0081 }, { 3122, 0x0020 },
+  { 3123, 0x0a00 }, { 3125, 0x0000 }, { 3125, 0x0000 }, { 3125, 0x1020 },
+  /* 0x20400 */
+  { 3127, 0x0000 }, { 3127, 0x8018 }, { 3130, 0x0000 }, { 3130, 0x0000 },
+  { 3130, 0x0000 }, { 3130, 0x0000 }, { 3130, 0x0020 }, { 3131, 0x0000 },
+  { 3131, 0x4080 }, { 3133, 0x0006 }, { 3135, 0x0008 }, { 3136, 0x0000 },
+  { 3136, 0x0000 }, { 3136, 0x0080 }, { 3137, 0x0000 }, { 3137, 0x5000 },
+  /* 0x20500 */
+  { 3139, 0x0000 }, { 3139, 0x0000 }, { 3139, 0x0000 }, { 3139, 0x0000 },
+  { 3139, 0x0080 }, { 3140, 0x0000 }, { 3140, 0x0000 }, { 3140, 0x0000 },
+  { 3140, 0x4000 }, { 3141, 0x0000 }, { 3141, 0x0020 }, { 3142, 0x0008 },
+  { 3143, 0x0408 }, { 3145, 0x8021 }, { 3148, 0x0801 }, { 3150, 0x0000 },
+  /* 0x20600 */
+  { 3150, 0x0000 }, { 3150, 0x0622 }, { 3154, 0x0000 }, { 3154, 0x0001 },
+  { 3155, 0x0000 }, { 3155, 0x0040 }, { 3156, 0x0000 }, { 3156, 0x0040 },
+  { 3157, 0x0000 }, { 3157, 0x0000 }, { 3157, 0x0000 }, { 3157, 0x0000 },
+  { 3157, 0x0000 }, { 3157, 0x0000 }, { 3157, 0x0000 }, { 3157, 0x0000 },
+  /* 0x20700 */
+  { 3157, 0x4000 }, { 3158, 0x0000 }, { 3158, 0x0000 }, { 3158, 0x0002 },
+  { 3159, 0x0000 }, { 3159, 0x0000 }, { 3159, 0x0000 }, { 3159, 0x0200 },
+  { 3160, 0x0000 }, { 3160, 0x0000 }, { 3160, 0x0000 }, { 3160, 0x0000 },
+  { 3160, 0x0000 }, { 3160, 0x0000 }, { 3160, 0x0000 }, { 3160, 0x0000 },
+  /* 0x20800 */
+  { 3160, 0x0000 }, { 3160, 0x0000 }, { 3160, 0x1000 }, { 3161, 0x0000 },
+  { 3161, 0x0000 }, { 3161, 0x0000 }, { 3161, 0x0000 }, { 3161, 0x0008 },
+  { 3162, 0x0000 }, { 3162, 0x0000 }, { 3162, 0x0000 }, { 3162, 0x0000 },
+  { 3162, 0x0000 }, { 3162, 0x0020 }, { 3163, 0x0000 }, { 3163, 0x0000 },
+  /* 0x20900 */
+  { 3163, 0x0000 }, { 3163, 0x0040 }, { 3164, 0x0008 }, { 3165, 0x0000 },
+  { 3165, 0x0000 }, { 3165, 0x0010 }, { 3166, 0x0000 }, { 3166, 0x0200 },
+  { 3167, 0x0000 }, { 3167, 0x0000 }, { 3167, 0x0000 }, { 3167, 0x0000 },
+  { 3167, 0x0000 }, { 3167, 0x0000 }, { 3167, 0x0080 }, { 3168, 0x0000 },
+  /* 0x20a00 */
+  { 3168, 0x0000 }, { 3168, 0x0002 }, { 3169, 0x0000 }, { 3169, 0x0000 },
+  { 3169, 0x0000 }, { 3169, 0x0001 }, { 3170, 0x0000 }, { 3170, 0x0000 },
+  { 3170, 0x0000 }, { 3170, 0x0000 }, { 3170, 0x0000 }, { 3170, 0x0010 },
+  { 3171, 0x2004 }, { 3173, 0x0000 }, { 3173, 0x0000 }, { 3173, 0x0000 },
+  /* 0x20b00 */
+  { 3173, 0x2000 }, { 3174, 0x0000 }, { 3174, 0x0000 }, { 3174, 0x0000 },
+  { 3174, 0x0000 }, { 3174, 0x0000 }, { 3174, 0x0000 }, { 3174, 0x0000 },
+  { 3174, 0x8000 }, { 3175, 0x0000 }, { 3175, 0x0300 }, { 3177, 0x8000 },
+  { 3178, 0x0840 }, { 3180, 0x0000 }, { 3180, 0x0804 }, { 3182, 0x8800 },
+  /* 0x20c00 */
+  { 3184, 0x2800 }, { 3186, 0x0000 }, { 3186, 0x0001 }, { 3187, 0x0c10 },
+  { 3190, 0x000e }, { 3193, 0x0008 }, { 3194, 0x0020 }, { 3195, 0x1180 },
+  { 3198, 0x2000 }, { 3199, 0x1040 }, { 3201, 0x0000 }, { 3201, 0x0120 },
+  { 3203, 0x8000 }, { 3204, 0x2078 }, { 3209, 0x2000 }, { 3210, 0x8000 },
+  /* 0x20d00 */
+  { 3211, 0x0000 }, { 3211, 0x0020 }, { 3212, 0x0100 }, { 3213, 0x0006 },
+  { 3215, 0x73c0 }, { 3222, 0x0000 }, { 3222, 0x8000 }, { 3223, 0xd012 },
+  { 3228, 0x0000 }, { 3228, 0x1040 }, { 3230, 0x0080 }, { 3231, 0x0004 },
+  { 3232, 0x0100 }, { 3233, 0x0000 }, { 3233, 0x0000 }, { 3233, 0x0000 },
+  /* 0x20e00 */
+  { 3233, 0xe610 }, { 3239, 0x2043 }, { 3243, 0x0000 }, { 3243, 0x0000 },
+  { 3243, 0x1000 }, { 3244, 0x0000 }, { 3244, 0x2000 }, { 3245, 0x0fe8 },
+  { 3253, 0x1000 }, { 3254, 0x2140 }, { 3257, 0x1c04 }, { 3261, 0x0040 },
+  { 3262, 0x0000 }, { 3262, 0x2180 }, { 3265, 0x0000 }, { 3265, 0x0f00 },
+  /* 0x20f00 */
+  { 3269, 0x0000 }, { 3269, 0x2000 }, { 3270, 0x6040 }, { 3273, 0x0803 },
+  { 3276, 0x1000 }, { 3277, 0x0000 }, { 3277, 0x0010 }, { 3278, 0x0000 },
+  { 3278, 0x2000 }, { 3279, 0x0001 }, { 3280, 0x2000 }, { 3281, 0x1070 },
+  { 3285, 0x0000 }, { 3285, 0x8000 }, { 3286, 0x3c00 }, { 3290, 0x0000 },
+  /* 0x21000 */
+  { 3290, 0x0000 }, { 3290, 0x6010 }, { 3293, 0x0000 }, { 3293, 0x0000 },
+  { 3293, 0x8000 }, { 3294, 0x1000 }, { 3295, 0x8000 }, { 3296, 0x09e0 },
+  { 3301, 0x0100 }, { 3302, 0x2040 }, { 3304, 0x0000 }, { 3304, 0x8010 },
+  { 3306, 0x8383 }, { 3312, 0x0008 }, { 3313, 0x0010 }, { 3314, 0x0070 },
+  /* 0x21100 */
+  { 3317, 0x0000 }, { 3317, 0x0000 }, { 3317, 0x8000 }, { 3318, 0x2800 },
+  { 3320, 0x8120 }, { 3323, 0x0000 }, { 3323, 0x0000 }, { 3323, 0x0000 },
+  { 3323, 0x0081 }, { 3325, 0x0000 }, { 3325, 0x0000 }, { 3325, 0x0000 },
+  { 3325, 0x0000 }, { 3325, 0x0200 }, { 3326, 0x0000 }, { 3326, 0x0000 },
+  /* 0x21200 */
+  { 3326, 0x0000 }, { 3326, 0x0000 }, { 3326, 0x0000 }, { 3326, 0x1000 },
+  { 3327, 0x8000 }, { 3328, 0x0000 }, { 3328, 0x0000 }, { 3328, 0x1000 },
+  { 3329, 0x0000 }, { 3329, 0x0000 }, { 3329, 0x0300 }, { 3331, 0x0001 },
+  { 3332, 0x0000 }, { 3332, 0x0000 }, { 3332, 0x0008 }, { 3333, 0x4000 },
+  /* 0x21300 */
+  { 3334, 0x003c }, { 3338, 0x0000 }, { 3338, 0x0000 }, { 3338, 0x0440 },
+  { 3340, 0x0000 }, { 3340, 0x0000 }, { 3340, 0x0000 }, { 3340, 0x0060 },
+  { 3342, 0x4000 }, { 3343, 0x1100 }, { 3345, 0x0000 }, { 3345, 0x0000 },
+  { 3345, 0x0060 }, { 3347, 0x0000 }, { 3347, 0x2000 }, { 3348, 0x4000 },
+  /* 0x21400 */
+  { 3349, 0x0000 }, { 3349, 0x0048 }, { 3351, 0x0010 }, { 3352, 0x0000 },
+  { 3352, 0x0000 }, { 3352, 0x0034 }, { 3355, 0x0000 }, { 3355, 0x0000 },
+  { 3355, 0x0400 }, { 3356, 0x0080 }, { 3357, 0x0000 }, { 3357, 0x0040 },
+  { 3358, 0x0000 }, { 3358, 0x0000 }, { 3358, 0x0100 }, { 3359, 0x2000 },
+  /* 0x21500 */
+  { 3360, 0x0000 }, { 3360, 0x0000 }, { 3360, 0x0000 }, { 3360, 0x0000 },
+  { 3360, 0x0000 }, { 3360, 0x0000 }, { 3360, 0x0000 }, { 3360, 0x0080 },
+  { 3361, 0x0004 }, { 3362, 0x0040 }, { 3363, 0x0000 }, { 3363, 0x0000 },
+  { 3363, 0x0000 }, { 3363, 0x0000 }, { 3363, 0x0000 }, { 3363, 0x0000 },
+  /* 0x21600 */
+  { 3363, 0x0400 }, { 3364, 0x0208 }, { 3366, 0x0000 }, { 3366, 0x4000 },
+  { 3367, 0x0000 }, { 3367, 0x0000 }, { 3367, 0x0002 }, { 3368, 0x0000 },
+  { 3368, 0x0000 }, { 3368, 0x0004 }, { 3369, 0x0000 }, { 3369, 0x0500 },
+  { 3371, 0x0007 }, { 3374, 0x8028 }, { 3377, 0x01c0 }, { 3380, 0x5c00 },
+  /* 0x21700 */
+  { 3384, 0x2000 }, { 3385, 0x0001 }, { 3386, 0x0040 }, { 3387, 0x1c00 },
+  { 3390, 0x0000 }, { 3390, 0x0080 }, { 3391, 0xf000 }, { 3395, 0x001b },
+  { 3399, 0x0000 }, { 3399, 0x0000 }, { 3399, 0x0800 }, { 3400, 0x003f },
+  { 3406, 0x0088 }, { 3408, 0x9e00 }, { 3413, 0x8000 }, { 3414, 0x1f60 },
+  /* 0x21800 */
+  { 3421, 0x0000 }, { 3421, 0x0000 }, { 3421, 0x2701 }, { 3426, 0x0e00 },
+  { 3429, 0x0021 }, { 3431, 0x4004 }, { 3433, 0x001e }, { 3437, 0x0880 },
+  { 3439, 0x0038 }, { 3442, 0xc000 }, { 3444, 0x0007 }, { 3447, 0xc000 },
+  { 3449, 0x0000 }, { 3449, 0x03c2 }, { 3454, 0x0000 }, { 3454, 0x0400 },
+  /* 0x21900 */
+  { 3455, 0x0038 }, { 3458, 0x1027 }, { 3463, 0x0084 }, { 3465, 0x0800 },
+  { 3466, 0x0010 }, { 3467, 0x0100 }, { 3468, 0x0400 }, { 3469, 0x1000 },
+  { 3470, 0x0108 }, { 3472, 0x0040 }, { 3473, 0x0000 }, { 3473, 0x0000 },
+  { 3473, 0x0000 }, { 3473, 0x0800 }, { 3474, 0x0000 }, { 3474, 0x0008 },
+  /* 0x21a00 */
+  { 3475, 0x0000 }, { 3475, 0x0000 }, { 3475, 0x2000 }, { 3476, 0x0010 },
+  { 3477, 0x0820 }, { 3479, 0x0000 }, { 3479, 0x0000 }, { 3479, 0x0000 },
+  { 3479, 0x0000 }, { 3479, 0x0000 }, { 3479, 0x0000 }, { 3479, 0x0000 },
+  { 3479, 0x0000 }, { 3479, 0x0000 }, { 3479, 0x0000 }, { 3479, 0x0000 },
+  /* 0x21b00 */
+  { 3479, 0x0000 }, { 3479, 0x0000 }, { 3479, 0x0000 }, { 3479, 0x0000 },
+  { 3479, 0x0010 }, { 3480, 0x0000 }, { 3480, 0x0000 }, { 3480, 0x0000 },
+  { 3480, 0x0000 }, { 3480, 0x0000 }, { 3480, 0x0000 }, { 3480, 0x0000 },
+  { 3480, 0x0006 }, { 3482, 0x0000 }, { 3482, 0x0000 }, { 3482, 0x0000 },
+  /* 0x21c00 */
+  { 3482, 0x0000 }, { 3482, 0x0000 }, { 3482, 0x0400 }, { 3483, 0x0000 },
+  { 3483, 0x0000 }, { 3483, 0x0000 }, { 3483, 0x0000 }, { 3483, 0x0001 },
+  { 3484, 0x0000 }, { 3484, 0x0000 }, { 3484, 0x1024 }, { 3487, 0x0000 },
+  { 3487, 0x0000 }, { 3487, 0x0000 }, { 3487, 0x0000 }, { 3487, 0x0000 },
+  /* 0x21d00 */
+  { 3487, 0x0000 }, { 3487, 0x0000 }, { 3487, 0x0000 }, { 3487, 0x0000 },
+  { 3487, 0x0040 }, { 3488, 0x0000 }, { 3488, 0x0000 }, { 3488, 0x0000 },
+  { 3488, 0x0000 }, { 3488, 0x0001 }, { 3489, 0x0000 }, { 3489, 0x0400 },
+  { 3490, 0x0400 }, { 3491, 0x0002 }, { 3492, 0x0800 }, { 3493, 0x0200 },
+  /* 0x21e00 */
+  { 3494, 0x0000 }, { 3494, 0x1000 }, { 3495, 0x0000 }, { 3495, 0x2080 },
+  { 3497, 0x0000 }, { 3497, 0x0000 }, { 3497, 0x0000 }, { 3497, 0x0000 },
+  { 3497, 0x0200 }, { 3498, 0x0000 }, { 3498, 0x0110 }, { 3500, 0x0000 },
+  { 3500, 0x0100 }, { 3501, 0x0020 }, { 3502, 0x0000 }, { 3502, 0x0000 },
+  /* 0x21f00 */
+  { 3502, 0x8000 }, { 3503, 0x0020 }, { 3504, 0x0000 }, { 3504, 0x0000 },
+  { 3504, 0x0000 }, { 3504, 0x0000 }, { 3504, 0x0400 }, { 3505, 0x0000 },
+  { 3505, 0x0000 }, { 3505, 0x4000 }, { 3506, 0x0002 }, { 3507, 0x0000 },
+  { 3507, 0x0000 }, { 3507, 0x0000 }, { 3507, 0x0100 }, { 3508, 0x0000 },
+  /* 0x22000 */
+  { 3508, 0x0000 }, { 3508, 0x0000 }, { 3508, 0x0000 }, { 3508, 0x0000 },
+  { 3508, 0x0220 }, { 3510, 0x0000 }, { 3510, 0x0000 }, { 3510, 0x0000 },
+  { 3510, 0x0000 }, { 3510, 0x0400 }, { 3511, 0x0000 }, { 3511, 0x0000 },
+  { 3511, 0x0080 }, { 3512, 0x0000 }, { 3512, 0x0000 }, { 3512, 0x1000 },
+  /* 0x22100 */
+  { 3513, 0x0000 }, { 3513, 0x0000 }, { 3513, 0x0400 }, { 3514, 0x0000 },
+  { 3514, 0x0000 }, { 3514, 0x0800 }, { 3515, 0x0000 }, { 3515, 0x0408 },
+  { 3517, 0x0000 }, { 3517, 0x0000 }, { 3517, 0x0002 }, { 3518, 0x0000 },
+  { 3518, 0x0008 }, { 3519, 0x0000 }, { 3519, 0x0000 }, { 3519, 0x0000 },
+  /* 0x22200 */
+  { 3519, 0x0100 }, { 3520, 0x0000 }, { 3520, 0x0000 }, { 3520, 0x0000 },
+  { 3520, 0x0000 }, { 3520, 0x0000 }, { 3520, 0x0000 }, { 3520, 0x1000 },
+  { 3521, 0x0000 }, { 3521, 0x0000 }, { 3521, 0x0000 }, { 3521, 0x0000 },
+  { 3521, 0x0000 }, { 3521, 0x0000 }, { 3521, 0x0000 }, { 3521, 0x0000 },
+  /* 0x22300 */
+  { 3521, 0x0000 }, { 3521, 0x0000 }, { 3521, 0x0022 }, { 3523, 0x0000 },
+  { 3523, 0x0000 }, { 3523, 0x0000 }, { 3523, 0x0000 }, { 3523, 0x0000 },
+  { 3523, 0x0000 }, { 3523, 0x0000 }, { 3523, 0x0000 }, { 3523, 0x2000 },
+  { 3524, 0x0000 }, { 3524, 0x0081 }, { 3526, 0x0000 }, { 3526, 0x0400 },
+  /* 0x22400 */
+  { 3527, 0x0000 }, { 3527, 0x0000 }, { 3527, 0x0000 }, { 3527, 0x0000 },
+  { 3527, 0x0000 }, { 3527, 0x0000 }, { 3527, 0x0020 }, { 3528, 0x0002 },
+  { 3529, 0x0800 }, { 3530, 0x0002 }, { 3531, 0x0000 }, { 3531, 0x0001 },
+  { 3532, 0x0000 }, { 3532, 0x0000 }, { 3532, 0x2000 }, { 3533, 0x0000 },
+  /* 0x22500 */
+  { 3533, 0x0000 }, { 3533, 0x0808 }, { 3535, 0x0000 }, { 3535, 0x0001 },
+  { 3536, 0x0000 }, { 3536, 0x0010 }, { 3537, 0x0000 }, { 3537, 0x0000 },
+  { 3537, 0x2000 }, { 3538, 0x0000 }, { 3538, 0x8000 }, { 3539, 0x4000 },
+  { 3540, 0x0000 }, { 3540, 0x0000 }, { 3540, 0x0000 }, { 3540, 0x0000 },
+  /* 0x22600 */
+  { 3540, 0x0000 }, { 3540, 0x1800 }, { 3542, 0x0800 }, { 3543, 0x0000 },
+  { 3543, 0x0000 }, { 3543, 0x0000 }, { 3543, 0x0100 }, { 3544, 0x0400 },
+  { 3545, 0x0000 }, { 3545, 0x0140 }, { 3547, 0x0000 }, { 3547, 0x0000 },
+  { 3547, 0x0000 }, { 3547, 0x0000 }, { 3547, 0x0000 }, { 3547, 0x0070 },
+  /* 0x22700 */
+  { 3550, 0x0000 }, { 3550, 0x8810 }, { 3553, 0x0400 }, { 3554, 0x0000 },
+  { 3554, 0x0000 }, { 3554, 0x0000 }, { 3554, 0x0000 }, { 3554, 0x0020 },
+  { 3555, 0x0002 }, { 3556, 0x0000 }, { 3556, 0x0000 }, { 3556, 0x0030 },
+  { 3558, 0x2000 }, { 3559, 0x0000 }, { 3559, 0x0000 }, { 3559, 0x0000 },
+  /* 0x22800 */
+  { 3559, 0x0008 }, { 3560, 0x0000 }, { 3560, 0x0000 }, { 3560, 0x0000 },
+  { 3560, 0x0000 }, { 3560, 0x8000 }, { 3561, 0x0001 }, { 3562, 0x0002 },
+  { 3563, 0x0000 }, { 3563, 0x0000 }, { 3563, 0x2000 }, { 3564, 0x0000 },
+  { 3564, 0x0002 }, { 3565, 0x0000 }, { 3565, 0x0000 }, { 3565, 0x0080 },
+  /* 0x22900 */
+  { 3566, 0x0000 }, { 3566, 0x0000 }, { 3566, 0x0040 }, { 3567, 0x0200 },
+  { 3568, 0x8000 }, { 3569, 0x0000 }, { 3569, 0x0880 }, { 3571, 0x0000 },
+  { 3571, 0x0001 }, { 3572, 0x0008 }, { 3573, 0x0000 }, { 3573, 0x0000 },
+  { 3573, 0x0000 }, { 3573, 0x0000 }, { 3573, 0x0000 }, { 3573, 0x0000 },
+  /* 0x22a00 */
+  { 3573, 0x0000 }, { 3573, 0x0000 }, { 3573, 0x0000 }, { 3573, 0x0000 },
+  { 3573, 0x0000 }, { 3573, 0x0000 }, { 3573, 0x0040 }, { 3574, 0x0000 },
+  { 3574, 0x0000 }, { 3574, 0x0000 }, { 3574, 0x0000 }, { 3574, 0x0000 },
+  { 3574, 0x8000 }, { 3575, 0x0020 }, { 3576, 0x0140 }, { 3578, 0x0000 },
+  /* 0x22b00 */
+  { 3578, 0x4000 }, { 3579, 0x0000 }, { 3579, 0x0004 }, { 3580, 0x8000 },
+  { 3581, 0x0008 }, { 3582, 0x0000 }, { 3582, 0x0400 }, { 3583, 0x0000 },
+  { 3583, 0x0000 }, { 3583, 0x0000 }, { 3583, 0x0000 }, { 3583, 0x0000 },
+  { 3583, 0x4400 }, { 3585, 0x0000 }, { 3585, 0x0000 }, { 3585, 0x0000 },
+  /* 0x22c00 */
+  { 3585, 0x0000 }, { 3585, 0x0000 }, { 3585, 0x00c0 }, { 3587, 0x0100 },
+  { 3588, 0x1000 }, { 3589, 0x0022 }, { 3591, 0x0004 }, { 3592, 0x0000 },
+  { 3592, 0x0100 }, { 3593, 0x0800 }, { 3594, 0x0202 }, { 3596, 0x0084 },
+  { 3598, 0x0244 }, { 3601, 0x0000 }, { 3601, 0x0000 }, { 3601, 0x0000 },
+  /* 0x22d00 */
+  { 3601, 0x0180 }, { 3603, 0x0004 }, { 3604, 0x0000 }, { 3604, 0x0000 },
+  { 3604, 0x1010 }, { 3606, 0x0000 }, { 3606, 0x0080 }, { 3607, 0x0000 },
+  { 3607, 0x2000 }, { 3608, 0x0020 }, { 3609, 0x0019 }, { 3612, 0x0080 },
+  { 3613, 0x0000 }, { 3613, 0x0000 }, { 3613, 0x4000 }, { 3614, 0x0000 },
+  /* 0x22e00 */
+  { 3614, 0x2000 }, { 3615, 0x0000 }, { 3615, 0x0000 }, { 3615, 0x0040 },
+  { 3616, 0x0004 }, { 3617, 0x0000 }, { 3617, 0x0000 }, { 3617, 0x0100 },
+  { 3618, 0x0800 }, { 3619, 0x0000 }, { 3619, 0x0000 }, { 3619, 0x0008 },
+  { 3620, 0x0000 }, { 3620, 0x0000 }, { 3620, 0x8000 }, { 3621, 0x0000 },
+  /* 0x22f00 */
+  { 3621, 0x0000 }, { 3621, 0x0000 }, { 3621, 0x0000 }, { 3621, 0x0000 },
+  { 3621, 0x0000 }, { 3621, 0x0000 }, { 3621, 0x0000 }, { 3621, 0x0010 },
+  { 3622, 0x0000 }, { 3622, 0x0000 }, { 3622, 0x0000 }, { 3622, 0x0000 },
+  { 3622, 0x1000 }, { 3623, 0x0000 }, { 3623, 0x0008 }, { 3624, 0x0000 },
+  /* 0x23000 */
+  { 3624, 0x0000 }, { 3624, 0x0000 }, { 3624, 0x0000 }, { 3624, 0x0008 },
+  { 3625, 0x0810 }, { 3627, 0x0000 }, { 3627, 0x0040 }, { 3628, 0x6000 },
+  { 3630, 0x4000 }, { 3631, 0x0000 }, { 3631, 0x0000 }, { 3631, 0x1080 },
+  { 3633, 0x0000 }, { 3633, 0x0400 }, { 3634, 0x0000 }, { 3634, 0x0000 },
+  /* 0x23100 */
+  { 3634, 0x0008 }, { 3635, 0x0000 }, { 3635, 0x0000 }, { 3635, 0x2000 },
+  { 3636, 0x0000 }, { 3636, 0x0000 }, { 3636, 0x0000 }, { 3636, 0x2000 },
+  { 3637, 0x0004 }, { 3638, 0x0000 }, { 3638, 0x0030 }, { 3640, 0x0008 },
+  { 3641, 0x0300 }, { 3643, 0x0000 }, { 3643, 0x0000 }, { 3643, 0x0380 },
+  /* 0x23200 */
+  { 3646, 0x8000 }, { 3647, 0x0000 }, { 3647, 0x8020 }, { 3649, 0x001e },
+  { 3653, 0x0000 }, { 3653, 0x0000 }, { 3653, 0x0004 }, { 3654, 0x0000 },
+  { 3654, 0x0600 }, { 3656, 0x0000 }, { 3656, 0x3800 }, { 3659, 0x0000 },
+  { 3659, 0x0000 }, { 3659, 0x0004 }, { 3660, 0x0003 }, { 3662, 0x0000 },
+  /* 0x23300 */
+  { 3662, 0x0401 }, { 3664, 0x8000 }, { 3665, 0x0000 }, { 3665, 0x0000 },
+  { 3665, 0x0000 }, { 3665, 0x0000 }, { 3665, 0x0000 }, { 3665, 0x0000 },
+  { 3665, 0x0000 }, { 3665, 0x0000 }, { 3665, 0x0000 }, { 3665, 0x0010 },
+  { 3666, 0x1000 }, { 3667, 0x4000 }, { 3668, 0x0040 }, { 3669, 0x4430 },
+  /* 0x23400 */
+  { 3673, 0x0001 }, { 3674, 0x0000 }, { 3674, 0x0000 }, { 3674, 0x8000 },
+  { 3675, 0x0000 }, { 3675, 0x0001 }, { 3676, 0x8000 }, { 3677, 0x0004 },
+  { 3678, 0x0000 }, { 3678, 0x0000 }, { 3678, 0x0000 }, { 3678, 0x0000 },
+  { 3678, 0x0000 }, { 3678, 0x0000 }, { 3678, 0x0020 }, { 3679, 0x0000 },
+  /* 0x23500 */
+  { 3679, 0x0000 }, { 3679, 0x0200 }, { 3680, 0x0000 }, { 3680, 0x0001 },
+  { 3681, 0x0000 }, { 3681, 0x0400 }, { 3682, 0x0080 }, { 3683, 0x0000 },
+  { 3683, 0x0000 }, { 3683, 0x1220 }, { 3686, 0x0000 }, { 3686, 0x0000 },
+  { 3686, 0xe000 }, { 3689, 0x0000 }, { 3689, 0x0000 }, { 3689, 0x0008 },
+  /* 0x23600 */
+  { 3690, 0x0001 }, { 3691, 0x0400 }, { 3692, 0x0000 }, { 3692, 0x1000 },
+  { 3693, 0x0001 }, { 3694, 0x8200 }, { 3696, 0x0000 }, { 3696, 0x0080 },
+  { 3697, 0x0000 }, { 3697, 0x0000 }, { 3697, 0x2040 }, { 3699, 0x0400 },
+  { 3700, 0x0000 }, { 3700, 0x8000 }, { 3701, 0x4000 }, { 3702, 0x0000 },
+  /* 0x23700 */
+  { 3702, 0x0008 }, { 3703, 0x0040 }, { 3704, 0xa001 }, { 3707, 0x8000 },
+  { 3708, 0x0000 }, { 3708, 0x0000 }, { 3708, 0x0040 }, { 3709, 0x0000 },
+  { 3709, 0x0002 }, { 3710, 0x0000 }, { 3710, 0x0004 }, { 3711, 0x1000 },
+  { 3712, 0x0004 }, { 3713, 0x00e0 }, { 3716, 0x0000 }, { 3716, 0x0000 },
+  /* 0x23800 */
+  { 3716, 0x0000 }, { 3716, 0x0000 }, { 3716, 0x0000 }, { 3716, 0x0400 },
+  { 3717, 0x0000 }, { 3717, 0x0000 }, { 3717, 0x0000 }, { 3717, 0x0000 },
+  { 3717, 0x0000 }, { 3717, 0x0000 }, { 3717, 0x0000 }, { 3717, 0x0000 },
+  { 3717, 0x0000 }, { 3717, 0x0000 }, { 3717, 0x0000 }, { 3717, 0x0000 },
+  /* 0x23900 */
+  { 3717, 0x0000 }, { 3717, 0x0000 }, { 3717, 0x0000 }, { 3717, 0x0000 },
+  { 3717, 0x0000 }, { 3717, 0x0000 }, { 3717, 0x0000 }, { 3717, 0x0000 },
+  { 3717, 0x0000 }, { 3717, 0x0000 }, { 3717, 0x0000 }, { 3717, 0x0000 },
+  { 3717, 0x0004 }, { 3718, 0x0000 }, { 3718, 0x0000 }, { 3718, 0x0000 },
+  /* 0x23a00 */
+  { 3718, 0x0000 }, { 3718, 0x0000 }, { 3718, 0x0000 }, { 3718, 0x0000 },
+  { 3718, 0x0000 }, { 3718, 0x0000 }, { 3718, 0x0000 }, { 3718, 0x0000 },
+  { 3718, 0x0000 }, { 3718, 0x0000 }, { 3718, 0x0080 }, { 3719, 0x0000 },
+  { 3719, 0x0000 }, { 3719, 0x0800 }, { 3720, 0x4000 }, { 3721, 0x0400 },
+  /* 0x23b00 */
+  { 3722, 0x0000 }, { 3722, 0x0000 }, { 3722, 0x0000 }, { 3722, 0x0000 },
+  { 3722, 0x0000 }, { 3722, 0x0400 }, { 3723, 0x0000 }, { 3723, 0x0000 },
+  { 3723, 0x0000 }, { 3723, 0x0000 }, { 3723, 0x0000 }, { 3723, 0x0000 },
+  { 3723, 0x0000 }, { 3723, 0x0000 }, { 3723, 0x0000 }, { 3723, 0x0000 },
+  /* 0x23c00 */
+  { 3723, 0x0000 }, { 3723, 0x0000 }, { 3723, 0x0000 }, { 3723, 0x0000 },
+  { 3723, 0x0000 }, { 3723, 0x0000 }, { 3723, 0x0000 }, { 3723, 0x0000 },
+  { 3723, 0x0000 }, { 3723, 0x0e00 }, { 3726, 0x0000 }, { 3726, 0x00a0 },
+  { 3728, 0x0380 }, { 3731, 0x0000 }, { 3731, 0x0000 }, { 3731, 0xf000 },
+  /* 0x23d00 */
+  { 3735, 0x0000 }, { 3735, 0x0000 }, { 3735, 0x0000 }, { 3735, 0x0000 },
+  { 3735, 0x0001 }, { 3736, 0x0800 }, { 3737, 0x0000 }, { 3737, 0x4000 },
+  { 3738, 0x8000 }, { 3739, 0x0000 }, { 3739, 0x0000 }, { 3739, 0x3fc0 },
+  { 3747, 0x0000 }, { 3747, 0x0000 }, { 3747, 0x0008 }, { 3748, 0x0100 },
+  /* 0x23e00 */
+  { 3749, 0x0000 }, { 3749, 0x0002 }, { 3750, 0xf000 }, { 3754, 0x0203 },
+  { 3757, 0x0000 }, { 3757, 0x0000 }, { 3757, 0x0000 }, { 3757, 0x0000 },
+  { 3757, 0x0f00 }, { 3761, 0x0000 }, { 3761, 0x0000 }, { 3761, 0x8200 },
+  { 3763, 0x0000 }, { 3763, 0x0080 }, { 3764, 0x0000 }, { 3764, 0x1f80 },
+  /* 0x23f00 */
+  { 3770, 0x0000 }, { 3770, 0x0000 }, { 3770, 0x0000 }, { 3770, 0x0020 },
+  { 3771, 0x0402 }, { 3773, 0x0000 }, { 3773, 0x0000 }, { 3773, 0x8000 },
+  { 3774, 0x8007 }, { 3778, 0x0000 }, { 3778, 0x0000 }, { 3778, 0x0090 },
+  { 3780, 0x0021 }, { 3782, 0x0000 }, { 3782, 0xf800 }, { 3787, 0x0001 },
+  /* 0x24000 */
+  { 3788, 0x0000 }, { 3788, 0x0002 }, { 3789, 0x0000 }, { 3789, 0x3e00 },
+  { 3794, 0x0000 }, { 3794, 0x0080 }, { 3795, 0x0000 }, { 3795, 0x0000 },
+  { 3795, 0x3820 }, { 3799, 0x0002 }, { 3800, 0x0000 }, { 3800, 0x0000 },
+  { 3800, 0x0200 }, { 3801, 0x0000 }, { 3801, 0x0002 }, { 3802, 0x0000 },
+  /* 0x24100 */
+  { 3802, 0x8010 }, { 3804, 0x0200 }, { 3805, 0x0000 }, { 3805, 0x8000 },
+  { 3806, 0x0011 }, { 3808, 0x90e0 }, { 3813, 0x0000 }, { 3813, 0x0480 },
+  { 3815, 0x0000 }, { 3815, 0x0000 }, { 3815, 0x1038 }, { 3819, 0x0020 },
+  { 3820, 0x2000 }, { 3821, 0x0000 }, { 3821, 0x0004 }, { 3822, 0x1000 },
+  /* 0x24200 */
+  { 3823, 0x0000 }, { 3823, 0x0800 }, { 3824, 0x0000 }, { 3824, 0x0000 },
+  { 3824, 0x0800 }, { 3825, 0x0240 }, { 3827, 0x0000 }, { 3827, 0x01c0 },
+  { 3830, 0x0010 }, { 3831, 0x0028 }, { 3833, 0x0020 }, { 3834, 0x0000 },
+  { 3834, 0x0602 }, { 3837, 0x0000 }, { 3837, 0x4000 }, { 3838, 0x0400 },
+  /* 0x24300 */
+  { 3839, 0x2000 }, { 3840, 0x0400 }, { 3841, 0x0000 }, { 3841, 0x0010 },
+  { 3842, 0x0100 }, { 3843, 0x0000 }, { 3843, 0x003c }, { 3847, 0x0000 },
+  { 3847, 0x1000 }, { 3848, 0x1040 }, { 3850, 0x0000 }, { 3850, 0x2000 },
+  { 3851, 0x0002 }, { 3852, 0x0000 }, { 3852, 0x0600 }, { 3854, 0x0104 },
+  /* 0x24400 */
+  { 3856, 0x0010 }, { 3857, 0x0000 }, { 3857, 0x0000 }, { 3857, 0x0060 },
+  { 3859, 0x0000 }, { 3859, 0x0c00 }, { 3861, 0x0000 }, { 3861, 0x0008 },
+  { 3862, 0x0180 }, { 3864, 0x0000 }, { 3864, 0x0000 }, { 3864, 0x1200 },
+  { 3866, 0x4000 }, { 3867, 0x0048 }, { 3869, 0x0000 }, { 3869, 0x0000 },
+  /* 0x24500 */
+  { 3869, 0x0000 }, { 3869, 0x0000 }, { 3869, 0x0002 }, { 3870, 0x0000 },
+  { 3870, 0x0000 }, { 3870, 0x0000 }, { 3870, 0x0000 }, { 3870, 0x0100 },
+  { 3871, 0x0000 }, { 3871, 0x0000 }, { 3871, 0x0000 }, { 3871, 0x0000 },
+  { 3871, 0x0100 }, { 3872, 0x0000 }, { 3872, 0x0000 }, { 3872, 0x0000 },
+  /* 0x24600 */
+  { 3872, 0x0000 }, { 3872, 0x0100 }, { 3873, 0x0400 }, { 3874, 0x0000 },
+  { 3874, 0x0000 }, { 3874, 0x0000 }, { 3874, 0x0020 }, { 3875, 0x0010 },
+  { 3876, 0x0000 }, { 3876, 0x0080 }, { 3877, 0x0000 }, { 3877, 0x0000 },
+  { 3877, 0x0000 }, { 3877, 0x0010 }, { 3878, 0x0000 }, { 3878, 0x0000 },
+  /* 0x24700 */
+  { 3878, 0x0040 }, { 3879, 0x0000 }, { 3879, 0x8020 }, { 3881, 0x0000 },
+  { 3881, 0x0000 }, { 3881, 0x0000 }, { 3881, 0x0000 }, { 3881, 0x0000 },
+  { 3881, 0x8000 }, { 3882, 0x0000 }, { 3882, 0x0000 }, { 3882, 0x0000 },
+  { 3882, 0x0000 }, { 3882, 0x0000 }, { 3882, 0x0001 }, { 3883, 0x0000 },
+  /* 0x24800 */
+  { 3883, 0x0000 }, { 3883, 0x0004 }, { 3884, 0x0008 }, { 3885, 0x0000 },
+  { 3885, 0x0000 }, { 3885, 0x0000 }, { 3885, 0x0000 }, { 3885, 0x0000 },
+  { 3885, 0x0004 }, { 3886, 0x0000 }, { 3886, 0x0000 }, { 3886, 0x0000 },
+  { 3886, 0x0000 }, { 3886, 0x0000 }, { 3886, 0x0200 }, { 3887, 0x880f },
+  /* 0x24900 */
+  { 3893, 0x1003 }, { 3896, 0x02c0 }, { 3899, 0x8000 }, { 3900, 0xc018 },
+  { 3904, 0x000f }, { 3908, 0x0000 }, { 3908, 0x000c }, { 3910, 0x8070 },
+  { 3914, 0xff04 }, { 3923, 0x0010 }, { 3924, 0x3a90 }, { 3930, 0x0f80 },
+  { 3935, 0x0020 }, { 3936, 0xc401 }, { 3940, 0x3028 }, { 3944, 0x0bc0 },
+  /* 0x24a00 */
+  { 3949, 0x4000 }, { 3950, 0x0024 }, { 3952, 0x07fe }, { 3962, 0x4000 },
+  { 3963, 0xc424 }, { 3968, 0x2003 }, { 3971, 0x00e0 }, { 3974, 0x0782 },
+  { 3979, 0x1000 }, { 3980, 0x0078 }, { 3984, 0x00f0 }, { 3988, 0x1c0e },
+  { 3994, 0x0481 }, { 3997, 0x8002 }, { 3999, 0x0204 }, { 4001, 0x0000 },
+  /* 0x24b00 */
+  { 4001, 0x0000 }, { 4001, 0x0000 }, { 4001, 0x0000 }, { 4001, 0x0000 },
+  { 4001, 0x0000 }, { 4001, 0x0000 }, { 4001, 0x4000 }, { 4002, 0x0000 },
+  { 4002, 0x0000 }, { 4002, 0x0000 }, { 4002, 0x0000 }, { 4002, 0x0000 },
+  { 4002, 0x0000 }, { 4002, 0x0000 }, { 4002, 0x0000 }, { 4002, 0x0020 },
+  /* 0x24c00 */
+  { 4003, 0x0200 }, { 4004, 0x0000 }, { 4004, 0x0000 }, { 4004, 0x0000 },
+  { 4004, 0x0000 }, { 4004, 0x0000 }, { 4004, 0x0000 }, { 4004, 0x0000 },
+  { 4004, 0x0000 }, { 4004, 0xc000 }, { 4006, 0x0000 }, { 4006, 0x0000 },
+  { 4006, 0x0200 }, { 4007, 0x0200 }, { 4008, 0x0000 }, { 4008, 0x0000 },
+  /* 0x24d00 */
+  { 4008, 0x0040 }, { 4009, 0x0008 }, { 4010, 0x0000 }, { 4010, 0x0000 },
+  { 4010, 0x0000 }, { 4010, 0x0000 }, { 4010, 0x0000 }, { 4010, 0x0000 },
+  { 4010, 0x0000 }, { 4010, 0x0000 }, { 4010, 0x0000 }, { 4010, 0x0100 },
+  { 4011, 0x0000 }, { 4011, 0x0000 }, { 4011, 0x0c00 }, { 4013, 0x0000 },
+  /* 0x24e00 */
+  { 4013, 0x0000 }, { 4013, 0x0000 }, { 4013, 0x0000 }, { 4013, 0x0800 },
+  { 4014, 0x0000 }, { 4014, 0x0001 }, { 4015, 0x0000 }, { 4015, 0x0000 },
+  { 4015, 0x0000 }, { 4015, 0x0000 }, { 4015, 0x00a0 }, { 4017, 0x0000 },
+  { 4017, 0x0000 }, { 4017, 0x0000 }, { 4017, 0x0000 }, { 4017, 0x0000 },
+  /* 0x24f00 */
+  { 4017, 0x4000 }, { 4018, 0x0000 }, { 4018, 0x0000 }, { 4018, 0x0000 },
+  { 4018, 0x0000 }, { 4018, 0x1000 }, { 4019, 0x0000 }, { 4019, 0x0000 },
+  { 4019, 0x0044 }, { 4021, 0x0480 }, { 4023, 0x0200 }, { 4024, 0x0100 },
+  { 4025, 0x0004 }, { 4026, 0x0000 }, { 4026, 0x0000 }, { 4026, 0x0000 },
+  /* 0x25000 */
+  { 4026, 0x0000 }, { 4026, 0x0000 }, { 4026, 0x1000 }, { 4027, 0x0000 },
+  { 4027, 0x0000 }, { 4027, 0x0004 }, { 4028, 0x0000 }, { 4028, 0x0000 },
+  { 4028, 0x0000 }, { 4028, 0x2000 }, { 4029, 0x0000 }, { 4029, 0x0000 },
+  { 4029, 0x0000 }, { 4029, 0x0000 }, { 4029, 0x0000 }, { 4029, 0x0000 },
+  /* 0x25100 */
+  { 4029, 0x0000 }, { 4029, 0x0000 }, { 4029, 0x0800 }, { 4030, 0x0000 },
+  { 4030, 0x0100 }, { 4031, 0x0000 }, { 4031, 0x0000 }, { 4031, 0x6000 },
+  { 4033, 0x0000 }, { 4033, 0x0000 }, { 4033, 0x0000 }, { 4033, 0x0000 },
+  { 4033, 0x0000 }, { 4033, 0x0000 }, { 4033, 0x00c8 }, { 4036, 0x0000 },
+  /* 0x25200 */
+  { 4036, 0x0000 }, { 4036, 0x0000 }, { 4036, 0x0003 }, { 4038, 0x0000 },
+  { 4038, 0x0000 }, { 4038, 0x0001 }, { 4039, 0x0000 }, { 4039, 0x0000 },
+  { 4039, 0x0000 }, { 4039, 0x0200 }, { 4040, 0x0000 }, { 4040, 0x0000 },
+  { 4040, 0x0080 }, { 4041, 0x0100 }, { 4042, 0x0000 }, { 4042, 0x0000 },
+  /* 0x25300 */
+  { 4042, 0x4000 }, { 4043, 0x000a }, { 4045, 0x0000 }, { 4045, 0x0000 },
+  { 4045, 0x0000 }, { 4045, 0x0000 }, { 4045, 0x0000 }, { 4045, 0x0000 },
+  { 4045, 0x0000 }, { 4045, 0x0000 }, { 4045, 0x0000 }, { 4045, 0x0000 },
+  { 4045, 0x0000 }, { 4045, 0x0000 }, { 4045, 0x0000 }, { 4045, 0x0000 },
+  /* 0x25400 */
+  { 4045, 0x0000 }, { 4045, 0x0200 }, { 4046, 0x8020 }, { 4048, 0x0001 },
+  { 4049, 0x0040 }, { 4050, 0x0000 }, { 4050, 0x5000 }, { 4052, 0x0000 },
+  { 4052, 0x0000 }, { 4052, 0x0000 }, { 4052, 0x0000 }, { 4052, 0x0000 },
+  { 4052, 0x0000 }, { 4052, 0x0000 }, { 4052, 0x0000 }, { 4052, 0x0000 },
+  /* 0x25500 */
+  { 4052, 0x0000 }, { 4052, 0x0000 }, { 4052, 0x0000 }, { 4052, 0x8022 },
+  { 4055, 0x0000 }, { 4055, 0x7800 }, { 4059, 0x0064 }, { 4062, 0x0000 },
+  { 4062, 0x8012 }, { 4065, 0x0000 }, { 4065, 0x0000 }, { 4065, 0x0200 },
+  { 4066, 0x0000 }, { 4066, 0x0820 }, { 4068, 0x0001 }, { 4069, 0x0000 },
+  /* 0x25600 */
+  { 4069, 0x0020 }, { 4070, 0x0000 }, { 4070, 0x0000 }, { 4070, 0x0020 },
+  { 4071, 0x0000 }, { 4071, 0x0002 }, { 4072, 0x0000 }, { 4072, 0x0000 },
+  { 4072, 0x0008 }, { 4073, 0x0000 }, { 4073, 0x0000 }, { 4073, 0x0000 },
+  { 4073, 0x0000 }, { 4073, 0x0000 }, { 4073, 0x0008 }, { 4074, 0x0040 },
+  /* 0x25700 */
+  { 4075, 0x0040 }, { 4076, 0x2000 }, { 4077, 0x0020 }, { 4078, 0x2000 },
+  { 4079, 0x0000 }, { 4079, 0x0000 }, { 4079, 0x0000 }, { 4079, 0x0004 },
+  { 4080, 0x0000 }, { 4080, 0x0000 }, { 4080, 0x0000 }, { 4080, 0x0000 },
+  { 4080, 0x0080 }, { 4081, 0x8000 }, { 4082, 0x0003 }, { 4084, 0x0000 },
+  /* 0x25800 */
+  { 4084, 0x0000 }, { 4084, 0x0000 }, { 4084, 0x0000 }, { 4084, 0x0000 },
+  { 4084, 0x0000 }, { 4084, 0x2080 }, { 4086, 0x0000 }, { 4086, 0x0004 },
+  { 4087, 0x0000 }, { 4087, 0x0000 }, { 4087, 0x0000 }, { 4087, 0x0000 },
+  { 4087, 0x0100 }, { 4088, 0x0000 }, { 4088, 0x0002 }, { 4089, 0x0000 },
+  /* 0x25900 */
+  { 4089, 0x0008 }, { 4090, 0x0000 }, { 4090, 0x0000 }, { 4090, 0x0000 },
+  { 4090, 0x0040 }, { 4091, 0x0040 }, { 4092, 0x0000 }, { 4092, 0x0000 },
+  { 4092, 0x0000 }, { 4092, 0x0000 }, { 4092, 0x1000 }, { 4093, 0x0000 },
+  { 4093, 0x1000 }, { 4094, 0x0000 }, { 4094, 0x0000 }, { 4094, 0x0000 },
+  /* 0x25a00 */
+  { 4094, 0x0000 }, { 4094, 0x0000 }, { 4094, 0x0000 }, { 4094, 0x0000 },
+  { 4094, 0x0000 }, { 4094, 0x0000 }, { 4094, 0x0000 }, { 4094, 0x0000 },
+  { 4094, 0x0000 }, { 4094, 0x1020 }, { 4096, 0xc000 }, { 4098, 0x0000 },
+  { 4098, 0x0000 }, { 4098, 0x0000 }, { 4098, 0x0200 }, { 4099, 0x0000 },
+  /* 0x25b00 */
+  { 4099, 0x0000 }, { 4099, 0x0000 }, { 4099, 0x0000 }, { 4099, 0x0000 },
+  { 4099, 0x0000 }, { 4099, 0x0000 }, { 4099, 0x0000 }, { 4099, 0x0010 },
+  { 4100, 0x0200 }, { 4101, 0x0000 }, { 4101, 0x0000 }, { 4101, 0x0018 },
+  { 4103, 0x0040 }, { 4104, 0x0000 }, { 4104, 0x0110 }, { 4106, 0x0000 },
+  /* 0x25c00 */
+  { 4106, 0x0042 }, { 4108, 0x0000 }, { 4108, 0x0002 }, { 4109, 0x0000 },
+  { 4109, 0x0400 }, { 4110, 0x0000 }, { 4110, 0x0020 }, { 4111, 0x0000 },
+  { 4111, 0x0000 }, { 4111, 0x0002 }, { 4112, 0x0000 }, { 4112, 0x0000 },
+  { 4112, 0x0003 }, { 4114, 0x0000 }, { 4114, 0x0000 }, { 4114, 0x4000 },
+  /* 0x25d00 */
+  { 4115, 0x0000 }, { 4115, 0x0000 }, { 4115, 0x0001 }, { 4116, 0x0000 },
+  { 4116, 0x0008 }, { 4117, 0x0000 }, { 4117, 0x0000 }, { 4117, 0x0000 },
+  { 4117, 0x0000 }, { 4117, 0x0000 }, { 4117, 0x0000 }, { 4117, 0x0000 },
+  { 4117, 0x0000 }, { 4117, 0x0000 }, { 4117, 0x0000 }, { 4117, 0x0000 },
+  /* 0x25e00 */
+  { 4117, 0x4000 }, { 4118, 0x0000 }, { 4118, 0x0000 }, { 4118, 0x0000 },
+  { 4118, 0x0200 }, { 4119, 0x0000 }, { 4119, 0x0000 }, { 4119, 0x0000 },
+  { 4119, 0x000e }, { 4122, 0x0000 }, { 4122, 0x0040 }, { 4123, 0x1000 },
+  { 4124, 0x0000 }, { 4124, 0x0180 }, { 4126, 0x0000 }, { 4126, 0x0000 },
+  /* 0x25f00 */
+  { 4126, 0x0000 }, { 4126, 0x0400 }, { 4127, 0x0000 }, { 4127, 0x0000 },
+  { 4127, 0x0800 }, { 4128, 0x0000 }, { 4128, 0x0000 }, { 4128, 0x0000 },
+  { 4128, 0x0000 }, { 4128, 0x0000 }, { 4128, 0x0000 }, { 4128, 0x0000 },
+  { 4128, 0x0000 }, { 4128, 0x0000 }, { 4128, 0x0006 }, { 4130, 0x0000 },
+  /* 0x26000 */
+  { 4130, 0x0000 }, { 4130, 0x0000 }, { 4130, 0x0200 }, { 4131, 0x0000 },
+  { 4131, 0x0100 }, { 4132, 0x0000 }, { 4132, 0x0010 }, { 4133, 0x0000 },
+  { 4133, 0x0008 }, { 4134, 0x0080 }, { 4135, 0x0030 }, { 4137, 0x0000 },
+  { 4137, 0x0000 }, { 4137, 0x0000 }, { 4137, 0x0000 }, { 4137, 0x0000 },
+  /* 0x26100 */
+  { 4137, 0x0004 }, { 4138, 0x0000 }, { 4138, 0x0002 }, { 4139, 0x0000 },
+  { 4139, 0x0000 }, { 4139, 0x1e00 }, { 4143, 0x0000 }, { 4143, 0x0000 },
+  { 4143, 0x0000 }, { 4143, 0x0000 }, { 4143, 0x6000 }, { 4145, 0x0004 },
+  { 4146, 0x0000 }, { 4146, 0x2000 }, { 4147, 0x0000 }, { 4147, 0x0000 },
+  /* 0x26200 */
+  { 4147, 0x0000 }, { 4147, 0x0000 }, { 4147, 0x0000 }, { 4147, 0x0000 },
+  { 4147, 0x0000 }, { 4147, 0x0100 }, { 4148, 0x0c02 }, { 4151, 0x0000 },
+  { 4151, 0x0000 }, { 4151, 0x0000 }, { 4151, 0x0000 }, { 4151, 0x0000 },
+  { 4151, 0x0000 }, { 4151, 0x0001 }, { 4152, 0x0000 }, { 4152, 0x0000 },
+  /* 0x26300 */
+  { 4152, 0x0000 }, { 4152, 0x0000 }, { 4152, 0x0000 }, { 4152, 0x0020 },
+  { 4153, 0x1800 }, { 4155, 0x0002 }, { 4156, 0x0000 }, { 4156, 0x0000 },
+  { 4156, 0x0000 }, { 4156, 0x0000 }, { 4156, 0x0000 }, { 4156, 0x4000 },
+  { 4157, 0x0000 }, { 4157, 0x0000 }, { 4157, 0x0000 }, { 4157, 0x0120 },
+  /* 0x26400 */
+  { 4159, 0x0004 }, { 4160, 0x0007 }, { 4163, 0x0000 }, { 4163, 0x0000 },
+  { 4163, 0x0400 }, { 4164, 0x0000 }, { 4164, 0x0200 }, { 4165, 0x0000 },
+  { 4165, 0x2310 }, { 4169, 0x0100 }, { 4170, 0x0000 }, { 4170, 0x0000 },
+  { 4170, 0x0000 }, { 4170, 0x0000 }, { 4170, 0x0000 }, { 4170, 0x0000 },
+  /* 0x26500 */
+  { 4170, 0x0000 }, { 4170, 0x0004 }, { 4171, 0x0000 }, { 4171, 0x0000 },
+  { 4171, 0x0000 }, { 4171, 0x0000 }, { 4171, 0x0000 }, { 4171, 0x0004 },
+  { 4172, 0x0000 }, { 4172, 0x0000 }, { 4172, 0x2001 }, { 4174, 0x8000 },
+  { 4175, 0x0000 }, { 4175, 0x0000 }, { 4175, 0x0000 }, { 4175, 0x0000 },
+  /* 0x26600 */
+  { 4175, 0x0000 }, { 4175, 0x0004 }, { 4176, 0x0040 }, { 4177, 0x0000 },
+  { 4177, 0x0000 }, { 4177, 0x0000 }, { 4177, 0x0000 }, { 4177, 0x0000 },
+  { 4177, 0x0000 }, { 4177, 0x0000 }, { 4177, 0x8000 }, { 4178, 0x0022 },
+  { 4180, 0x0000 }, { 4180, 0x0400 }, { 4181, 0x0100 }, { 4182, 0x1000 },
+  /* 0x26700 */
+  { 4183, 0x0000 }, { 4183, 0x0040 }, { 4184, 0x0000 }, { 4184, 0x0000 },
+  { 4184, 0x0002 }, { 4185, 0x0000 }, { 4185, 0x0000 }, { 4185, 0x0000 },
+  { 4185, 0x0000 }, { 4185, 0x0200 }, { 4186, 0x0000 }, { 4186, 0x0018 },
+  { 4188, 0x1000 }, { 4189, 0x0000 }, { 4189, 0x0000 }, { 4189, 0x0000 },
+  /* 0x26800 */
+  { 4189, 0x0000 }, { 4189, 0x1000 }, { 4190, 0x0000 }, { 4190, 0x0000 },
+  { 4190, 0x0040 }, { 4191, 0x4000 }, { 4192, 0x4000 }, { 4193, 0x0000 },
+  { 4193, 0x0500 }, { 4195, 0x0008 }, { 4196, 0x0000 }, { 4196, 0x0000 },
+  { 4196, 0x0080 }, { 4197, 0x0000 }, { 4197, 0x0000 }, { 4197, 0x0000 },
+  /* 0x26900 */
+  { 4197, 0x4000 }, { 4198, 0x0002 }, { 4199, 0x0040 }, { 4200, 0x0200 },
+  { 4201, 0x0000 }, { 4201, 0x0002 }, { 4202, 0x0000 }, { 4202, 0x0000 },
+  { 4202, 0x0000 }, { 4202, 0x0000 }, { 4202, 0x0100 }, { 4203, 0x0020 },
+  { 4204, 0x0000 }, { 4204, 0x0000 }, { 4204, 0x0000 }, { 4204, 0x0404 },
+  /* 0x26a00 */
+  { 4206, 0x0000 }, { 4206, 0x0000 }, { 4206, 0x6000 }, { 4208, 0x0010 },
+  { 4209, 0x0004 }, { 4210, 0x0006 }, { 4212, 0x0000 }, { 4212, 0x0000 },
+  { 4212, 0x0000 }, { 4212, 0x0000 }, { 4212, 0x0000 }, { 4212, 0x0000 },
+  { 4212, 0x0000 }, { 4212, 0x0000 }, { 4212, 0x0000 }, { 4212, 0x0000 },
+  /* 0x26b00 */
+  { 4212, 0x0420 }, { 4214, 0x0008 }, { 4215, 0x0100 }, { 4216, 0x0000 },
+  { 4216, 0x0000 }, { 4216, 0x080f }, { 4221, 0x0000 }, { 4221, 0x0020 },
+  { 4222, 0x0004 }, { 4223, 0x20c0 }, { 4226, 0x0000 }, { 4226, 0x0008 },
+  { 4227, 0x0001 }, { 4228, 0x0000 }, { 4228, 0x0000 }, { 4228, 0x0080 },
+  /* 0x26c00 */
+  { 4229, 0x0000 }, { 4229, 0x0000 }, { 4229, 0x0002 }, { 4230, 0x0000 },
+  { 4230, 0x0001 }, { 4231, 0x0000 }, { 4231, 0x0000 }, { 4231, 0xc000 },
+  { 4233, 0x0007 }, { 4236, 0x0000 }, { 4236, 0x0010 }, { 4237, 0x2180 },
+  { 4240, 0x0009 }, { 4242, 0x0002 }, { 4243, 0x0000 }, { 4243, 0x0000 },
+  /* 0x26d00 */
+  { 4243, 0x0000 }, { 4243, 0x0000 }, { 4243, 0x07fc }, { 4252, 0x0000 },
+  { 4252, 0x0000 }, { 4252, 0x0002 }, { 4253, 0x0000 }, { 4253, 0x0000 },
+  { 4253, 0x0000 }, { 4253, 0x0000 }, { 4253, 0x40ff }, { 4262, 0x0000 },
+  { 4262, 0x0000 }, { 4262, 0x1000 }, { 4263, 0x0c00 }, { 4265, 0x0001 },
+  /* 0x26e00 */
+  { 4266, 0x00a1 }, { 4269, 0x0004 }, { 4270, 0x0000 }, { 4270, 0x0000 },
+  { 4270, 0x003c }, { 4274, 0x0000 }, { 4274, 0x4000 }, { 4275, 0x0084 },
+  { 4277, 0x0010 }, { 4278, 0x0200 }, { 4279, 0x0000 }, { 4279, 0x0000 },
+  { 4279, 0x0000 }, { 4279, 0x00ff }, { 4287, 0x0000 }, { 4287, 0x0000 },
+  /* 0x26f00 */
+  { 4287, 0x0000 }, { 4287, 0x0000 }, { 4287, 0x0040 }, { 4288, 0x0000 },
+  { 4288, 0x0000 }, { 4288, 0x0000 }, { 4288, 0x0000 }, { 4288, 0x0018 },
+  { 4290, 0x0000 }, { 4290, 0x8000 }, { 4291, 0x0002 }, { 4292, 0x0000 },
+  { 4292, 0x0000 }, { 4292, 0xc000 }, { 4294, 0x0000 }, { 4294, 0x0000 },
+  /* 0x27000 */
+  { 4294, 0x4000 }, { 4295, 0x0000 }, { 4295, 0x0000 }, { 4295, 0x0000 },
+  { 4295, 0x0800 }, { 4296, 0x000c }, { 4298, 0x0000 }, { 4298, 0x0000 },
+  { 4298, 0x0100 }, { 4299, 0x0000 }, { 4299, 0xe000 }, { 4302, 0x0000 },
+  { 4302, 0x2000 }, { 4303, 0x0000 }, { 4303, 0x0000 }, { 4303, 0x0100 },
+  /* 0x27100 */
+  { 4304, 0x1200 }, { 4306, 0x0000 }, { 4306, 0x00c0 }, { 4308, 0x0000 },
+  { 4308, 0x0000 }, { 4308, 0x0000 }, { 4308, 0x0030 }, { 4310, 0x0020 },
+  { 4311, 0x0000 }, { 4311, 0x0000 }, { 4311, 0x0000 }, { 4311, 0x0000 },
+  { 4311, 0x2000 }, { 4312, 0x0000 }, { 4312, 0x0000 }, { 4312, 0x0000 },
+  /* 0x27200 */
+  { 4312, 0x0000 }, { 4312, 0x0800 }, { 4313, 0x0000 }, { 4313, 0x0000 },
+  { 4313, 0x0000 }, { 4313, 0x0000 }, { 4313, 0x0000 }, { 4313, 0x0000 },
+  { 4313, 0x0821 }, { 4316, 0x0000 }, { 4316, 0x0000 }, { 4316, 0x0044 },
+  { 4318, 0x0000 }, { 4318, 0x0000 }, { 4318, 0x0040 }, { 4319, 0x0000 },
+  /* 0x27300 */
+  { 4319, 0x0000 }, { 4319, 0x0000 }, { 4319, 0x0000 }, { 4319, 0x0000 },
+  { 4319, 0x0000 }, { 4319, 0x0000 }, { 4319, 0x0000 }, { 4319, 0x0000 },
+  { 4319, 0x0000 }, { 4319, 0x0400 }, { 4320, 0x0000 }, { 4320, 0x0000 },
+  { 4320, 0x0000 }, { 4320, 0x0000 }, { 4320, 0x0000 }, { 4320, 0x0000 },
+  /* 0x27400 */
+  { 4320, 0x0000 }, { 4320, 0x0000 }, { 4320, 0x0004 }, { 4321, 0x0000 },
+  { 4321, 0x0000 }, { 4321, 0x0001 }, { 4322, 0x0000 }, { 4322, 0x0000 },
+  { 4322, 0x0050 }, { 4324, 0x0000 }, { 4324, 0x0000 }, { 4324, 0x0000 },
+  { 4324, 0x0000 }, { 4324, 0x0000 }, { 4324, 0x0000 }, { 4324, 0x0000 },
+  /* 0x27500 */
+  { 4324, 0x0000 }, { 4324, 0x0000 }, { 4324, 0x0000 }, { 4324, 0x0000 },
+  { 4324, 0x0000 }, { 4324, 0x0000 }, { 4324, 0x0000 }, { 4324, 0x0010 },
+  { 4325, 0x0000 }, { 4325, 0x0000 }, { 4325, 0x0008 }, { 4326, 0x0000 },
+  { 4326, 0x0000 }, { 4326, 0x0000 }, { 4326, 0x0011 }, { 4328, 0x6000 },
+  /* 0x27600 */
+  { 4330, 0x1080 }, { 4332, 0x0000 }, { 4332, 0x0000 }, { 4332, 0x0204 },
+  { 4334, 0x0000 }, { 4334, 0x00e0 }, { 4337, 0x0000 }, { 4337, 0x0000 },
+  { 4337, 0x0000 }, { 4337, 0x0010 }, { 4338, 0x0000 }, { 4338, 0x0000 },
+  { 4338, 0x0000 }, { 4338, 0x0000 }, { 4338, 0x0000 }, { 4338, 0x0000 },
+  /* 0x27700 */
+  { 4338, 0x8000 }, { 4339, 0x0000 }, { 4339, 0x0000 }, { 4339, 0x0060 },
+  { 4341, 0x0002 }, { 4342, 0x4000 }, { 4343, 0x0000 }, { 4343, 0x0000 },
+  { 4343, 0x0030 }, { 4345, 0x0000 }, { 4345, 0x0000 }, { 4345, 0x0000 },
+  { 4345, 0x1000 }, { 4346, 0x0000 }, { 4346, 0x0000 }, { 4346, 0x0000 },
+  /* 0x27800 */
+  { 4346, 0x0000 }, { 4346, 0x0000 }, { 4346, 0x0000 }, { 4346, 0x0000 },
+  { 4346, 0x0000 }, { 4346, 0x0100 }, { 4347, 0x0000 }, { 4347, 0x0001 },
+  { 4348, 0x0000 }, { 4348, 0x2000 }, { 4349, 0x0000 }, { 4349, 0x0004 },
+  { 4350, 0x0100 }, { 4351, 0x0000 }, { 4351, 0x0000 }, { 4351, 0x0000 },
+  /* 0x27900 */
+  { 4351, 0x0000 }, { 4351, 0x0000 }, { 4351, 0x0010 }, { 4352, 0x0000 },
+  { 4352, 0x0000 }, { 4352, 0x0000 }, { 4352, 0x0080 }, { 4353, 0x0400 },
+  { 4354, 0x0000 }, { 4354, 0x0000 }, { 4354, 0x0001 }, { 4355, 0x0000 },
+  { 4355, 0x0000 }, { 4355, 0x2000 }, { 4356, 0x0000 }, { 4356, 0x2000 },
+  /* 0x27a00 */
+  { 4357, 0x4400 }, { 4359, 0x0000 }, { 4359, 0x0000 }, { 4359, 0x4000 },
+  { 4360, 0x0000 }, { 4360, 0x0208 }, { 4362, 0x0000 }, { 4362, 0x0200 },
+  { 4363, 0x0010 }, { 4364, 0x0000 }, { 4364, 0x0000 }, { 4364, 0x6000 },
+  { 4366, 0x0000 }, { 4366, 0x0000 }, { 4366, 0x0000 }, { 4366, 0x0010 },
+  /* 0x27b00 */
+  { 4367, 0x0840 }, { 4369, 0x0100 }, { 4370, 0x0000 }, { 4370, 0x0700 },
+  { 4373, 0x0100 }, { 4374, 0x0000 }, { 4374, 0x0000 }, { 4374, 0x0000 },
+  { 4374, 0x0000 }, { 4374, 0x0000 }, { 4374, 0x0000 }, { 4374, 0x0000 },
+  { 4374, 0x0000 }, { 4374, 0x0000 }, { 4374, 0x0000 }, { 4374, 0x0010 },
+  /* 0x27c00 */
+  { 4375, 0x0000 }, { 4375, 0x0004 }, { 4376, 0x0000 }, { 4376, 0x0000 },
+  { 4376, 0x0000 }, { 4376, 0x0000 }, { 4376, 0x0000 }, { 4376, 0x0000 },
+  { 4376, 0x0000 }, { 4376, 0x0000 }, { 4376, 0x0000 }, { 4376, 0x0000 },
+  { 4376, 0x0000 }, { 4376, 0x0000 }, { 4376, 0x0000 }, { 4376, 0x0000 },
+  /* 0x27d00 */
+  { 4376, 0x0000 }, { 4376, 0x0000 }, { 4376, 0x8000 }, { 4377, 0x0000 },
+  { 4377, 0x0000 }, { 4377, 0x0018 }, { 4379, 0x0040 }, { 4380, 0x0008 },
+  { 4381, 0x8010 }, { 4383, 0x0100 }, { 4384, 0x0000 }, { 4384, 0x2000 },
+  { 4385, 0x0000 }, { 4385, 0x1000 }, { 4386, 0x0000 }, { 4386, 0x0000 },
+  /* 0x27e00 */
+  { 4386, 0x0000 }, { 4386, 0x0000 }, { 4386, 0x0000 }, { 4386, 0x0000 },
+  { 4386, 0xa000 }, { 4388, 0x0000 }, { 4388, 0x0000 }, { 4388, 0x0000 },
+  { 4388, 0x0000 }, { 4388, 0x0000 }, { 4388, 0x0000 }, { 4388, 0x0000 },
+  { 4388, 0x0000 }, { 4388, 0x0000 }, { 4388, 0x0000 }, { 4388, 0x0000 },
+  /* 0x27f00 */
+  { 4388, 0x0000 }, { 4388, 0x0000 }, { 4388, 0x4000 }, { 4389, 0x0000 },
+  { 4389, 0x0000 }, { 4389, 0x0000 }, { 4389, 0x0000 }, { 4389, 0x0000 },
+  { 4389, 0x0000 }, { 4389, 0x0000 }, { 4389, 0x0000 }, { 4389, 0x0000 },
+  { 4389, 0x0000 }, { 4389, 0x0000 }, { 4389, 0x0000 }, { 4389, 0x0200 },
+  /* 0x28000 */
+  { 4390, 0x0204 }, { 4392, 0x4000 }, { 4393, 0x0018 }, { 4395, 0x0000 },
+  { 4395, 0x0100 }, { 4396, 0x0000 }, { 4396, 0x0000 }, { 4396, 0x0000 },
+  { 4396, 0x0008 }, { 4397, 0x0001 }, { 4398, 0x0000 }, { 4398, 0x6000 },
+  { 4400, 0x0000 }, { 4400, 0x0000 }, { 4400, 0x0300 }, { 4402, 0x0010 },
+  /* 0x28100 */
+  { 4403, 0x0000 }, { 4403, 0x0000 }, { 4403, 0x4000 }, { 4404, 0x0000 },
+  { 4404, 0x8000 }, { 4405, 0x2000 }, { 4406, 0x8000 }, { 4407, 0x0000 },
+  { 4407, 0x0200 }, { 4408, 0x0000 }, { 4408, 0x8000 }, { 4409, 0x1000 },
+  { 4410, 0x0000 }, { 4410, 0x0000 }, { 4410, 0x0000 }, { 4410, 0x0000 },
+  /* 0x28200 */
+  { 4410, 0x0080 }, { 4411, 0x0500 }, { 4413, 0x0000 }, { 4413, 0x0000 },
+  { 4413, 0x0000 }, { 4413, 0x0040 }, { 4414, 0x0000 }, { 4414, 0x1000 },
+  { 4415, 0x0000 }, { 4415, 0x0800 }, { 4416, 0x0000 }, { 4416, 0x0000 },
+  { 4416, 0x2000 }, { 4417, 0x0000 }, { 4417, 0x0004 }, { 4418, 0x0000 },
+  /* 0x28300 */
+  { 4418, 0x0040 }, { 4419, 0x0100 }, { 4420, 0x8000 }, { 4421, 0x0400 },
+  { 4422, 0x0000 }, { 4422, 0x0000 }, { 4422, 0x2020 }, { 4424, 0x2000 },
+  { 4425, 0x0400 }, { 4426, 0x0000 }, { 4426, 0x0000 }, { 4426, 0x0000 },
+  { 4426, 0x0000 }, { 4426, 0x0000 }, { 4426, 0x0000 }, { 4426, 0x0000 },
+  /* 0x28400 */
+  { 4426, 0x0000 }, { 4426, 0x0004 }, { 4427, 0x0000 }, { 4427, 0x0000 },
+  { 4427, 0x0000 }, { 4427, 0x0000 }, { 4427, 0x1100 }, { 4429, 0x0008 },
+  { 4430, 0x0004 }, { 4431, 0x0000 }, { 4431, 0x0000 }, { 4431, 0x0000 },
+  { 4431, 0x0000 }, { 4431, 0x0000 }, { 4431, 0x0000 }, { 4431, 0x0000 },
+  /* 0x28500 */
+  { 4431, 0x0002 }, { 4432, 0x0000 }, { 4432, 0x0000 }, { 4432, 0x3000 },
+  { 4434, 0x0000 }, { 4434, 0x0000 }, { 4434, 0x1000 }, { 4435, 0x0000 },
+  { 4435, 0x0000 }, { 4435, 0x0000 }, { 4435, 0x0000 }, { 4435, 0x0000 },
+  { 4435, 0x0000 }, { 4435, 0x0000 }, { 4435, 0x0100 }, { 4436, 0x0010 },
+  /* 0x28600 */
+  { 4437, 0x0801 }, { 4439, 0x0000 }, { 4439, 0x0020 }, { 4440, 0x0800 },
+  { 4441, 0x0000 }, { 4441, 0x0000 }, { 4441, 0x0000 }, { 4441, 0x0000 },
+  { 4441, 0x0000 }, { 4441, 0x0000 }, { 4441, 0x0c00 }, { 4443, 0x1000 },
+  { 4444, 0x0000 }, { 4444, 0x0100 }, { 4445, 0x0040 }, { 4446, 0x0000 },
+  /* 0x28700 */
+  { 4446, 0x0000 }, { 4446, 0x0008 }, { 4447, 0x0000 }, { 4447, 0x0000 },
+  { 4447, 0x0000 }, { 4447, 0x0000 }, { 4447, 0x0000 }, { 4447, 0x0000 },
+  { 4447, 0x0000 }, { 4447, 0x0000 }, { 4447, 0x0000 }, { 4447, 0x0000 },
+  { 4447, 0x0000 }, { 4447, 0x0000 }, { 4447, 0x0000 }, { 4447, 0x0000 },
+  /* 0x28800 */
+  { 4447, 0x0010 }, { 4448, 0x0000 }, { 4448, 0x0800 }, { 4449, 0x0000 },
+  { 4449, 0x0000 }, { 4449, 0x0000 }, { 4449, 0x0000 }, { 4449, 0x0000 },
+  { 4449, 0x0000 }, { 4449, 0x0000 }, { 4449, 0x0000 }, { 4449, 0x0000 },
+  { 4449, 0x0000 }, { 4449, 0x0000 }, { 4449, 0x0000 }, { 4449, 0x0000 },
+  /* 0x28900 */
+  { 4449, 0x0000 }, { 4449, 0x0000 }, { 4449, 0x0000 }, { 4449, 0x0008 },
+  { 4450, 0x0300 }, { 4452, 0x0040 }, { 4453, 0x1110 }, { 4456, 0x4000 },
+  { 4457, 0x0200 }, { 4458, 0x0000 }, { 4458, 0x0d00 }, { 4461, 0x1100 },
+  { 4463, 0x0001 }, { 4464, 0x5000 }, { 4466, 0x0192 }, { 4470, 0x1e00 },
+  /* 0x28a00 */
+  { 4474, 0x8000 }, { 4475, 0x0040 }, { 4476, 0x0220 }, { 4478, 0x0040 },
+  { 4479, 0x0ff0 }, { 4487, 0x0600 }, { 4489, 0x0000 }, { 4489, 0x0000 },
+  { 4489, 0x000e }, { 4492, 0x1c00 }, { 4495, 0x0000 }, { 4495, 0x0000 },
+  { 4495, 0x5841 }, { 4500, 0xc000 }, { 4502, 0x002f }, { 4507, 0x1000 },
+  /* 0x28b00 */
+  { 4508, 0x1000 }, { 4509, 0x0008 }, { 4510, 0xb806 }, { 4516, 0x0000 },
+  { 4516, 0x5040 }, { 4519, 0x0001 }, { 4520, 0x1078 }, { 4525, 0x0000 },
+  { 4525, 0x8000 }, { 4526, 0x3200 }, { 4529, 0x0000 }, { 4529, 0x0000 },
+  { 4529, 0x0024 }, { 4531, 0x0690 }, { 4535, 0x1f80 }, { 4541, 0x8020 },
+  /* 0x28c00 */
+  { 4543, 0x0208 }, { 4545, 0x3000 }, { 4547, 0x0848 }, { 4550, 0x0a01 },
+  { 4553, 0x0000 }, { 4553, 0x0000 }, { 4553, 0x0000 }, { 4553, 0x0000 },
+  { 4553, 0x0000 }, { 4553, 0x0000 }, { 4553, 0x0000 }, { 4553, 0x0000 },
+  { 4553, 0x2400 }, { 4555, 0x0004 }, { 4556, 0x0000 }, { 4556, 0x0000 },
+  /* 0x28d00 */
+  { 4556, 0x0000 }, { 4556, 0x0000 }, { 4556, 0x0000 }, { 4556, 0x0010 },
+  { 4557, 0x0000 }, { 4557, 0x0000 }, { 4557, 0x0000 }, { 4557, 0x0000 },
+  { 4557, 0x0000 }, { 4557, 0x0200 }, { 4558, 0x0000 }, { 4558, 0x0000 },
+  { 4558, 0x0000 }, { 4558, 0x0000 }, { 4558, 0x0000 }, { 4558, 0x0000 },
+  /* 0x28e00 */
+  { 4558, 0x8000 }, { 4559, 0x0000 }, { 4559, 0x0000 }, { 4559, 0x0240 },
+  { 4561, 0x0000 }, { 4561, 0x0000 }, { 4561, 0x0060 }, { 4563, 0x0000 },
+  { 4563, 0x0000 }, { 4563, 0x0080 }, { 4564, 0x1000 }, { 4565, 0x000c },
+  { 4567, 0x0000 }, { 4567, 0x0200 }, { 4568, 0x0080 }, { 4569, 0x0000 },
+  /* 0x28f00 */
+  { 4569, 0x0000 }, { 4569, 0x0000 }, { 4569, 0x0000 }, { 4569, 0x0000 },
+  { 4569, 0x0000 }, { 4569, 0x0000 }, { 4569, 0x0000 }, { 4569, 0x0000 },
+  { 4569, 0x0000 }, { 4569, 0x0000 }, { 4569, 0x0000 }, { 4569, 0x0000 },
+  { 4569, 0x0020 }, { 4570, 0x0000 }, { 4570, 0x0000 }, { 4570, 0x0000 },
+  /* 0x29000 */
+  { 4570, 0x0000 }, { 4570, 0x0000 }, { 4570, 0x0000 }, { 4570, 0x0000 },
+  { 4570, 0x0000 }, { 4570, 0x0000 }, { 4570, 0x0000 }, { 4570, 0x0000 },
+  { 4570, 0x0900 }, { 4572, 0x0008 }, { 4573, 0x8000 }, { 4574, 0x0003 },
+  { 4576, 0x0001 }, { 4577, 0x0000 }, { 4577, 0x3030 }, { 4581, 0x0000 },
+  /* 0x29100 */
+  { 4581, 0x2000 }, { 4582, 0x0001 }, { 4583, 0x0000 }, { 4583, 0x1000 },
+  { 4584, 0x2000 }, { 4585, 0x4800 }, { 4587, 0x0000 }, { 4587, 0x0001 },
+  { 4588, 0x0000 }, { 4588, 0x1000 }, { 4589, 0x0100 }, { 4590, 0x0000 },
+  { 4590, 0x0000 }, { 4590, 0x0020 }, { 4591, 0x0800 },
+};
+static const Summary16 hkscs1999_uni2indx_page294[32] = {
+  /* 0x29400 */
+  { 4592, 0x0000 }, { 4592, 0x2000 }, { 4593, 0x0001 }, { 4594, 0x8008 },
+  { 4596, 0x0100 }, { 4597, 0x0000 }, { 4597, 0x0000 }, { 4597, 0x0000 },
+  { 4597, 0x0000 }, { 4597, 0x0000 }, { 4597, 0x0000 }, { 4597, 0x0000 },
+  { 4597, 0x0000 }, { 4597, 0x0601 }, { 4600, 0x00a0 }, { 4602, 0x0000 },
+  /* 0x29500 */
+  { 4602, 0x0000 }, { 4602, 0x0000 }, { 4602, 0x0000 }, { 4602, 0x0000 },
+  { 4602, 0x0000 }, { 4602, 0x0000 }, { 4602, 0x0000 }, { 4602, 0x0000 },
+  { 4602, 0x0000 }, { 4602, 0x4000 }, { 4603, 0x0000 }, { 4603, 0x0101 },
+  { 4605, 0x0000 }, { 4605, 0x0080 }, { 4606, 0x0200 }, { 4607, 0x0010 },
+};
+static const Summary16 hkscs1999_uni2indx_page297[251] = {
+  /* 0x29700 */
+  { 4608, 0x0000 }, { 4608, 0x0000 }, { 4608, 0x0001 }, { 4609, 0x0004 },
+  { 4610, 0x0000 }, { 4610, 0x0000 }, { 4610, 0x0000 }, { 4610, 0x0000 },
+  { 4610, 0x0000 }, { 4610, 0x0000 }, { 4610, 0x0000 }, { 4610, 0x0000 },
+  { 4610, 0x0000 }, { 4610, 0x0010 }, { 4611, 0x0000 }, { 4611, 0x0000 },
+  /* 0x29800 */
+  { 4611, 0x0000 }, { 4611, 0x0001 }, { 4612, 0x0000 }, { 4612, 0x0000 },
+  { 4612, 0x0000 }, { 4612, 0x0080 }, { 4613, 0x0000 }, { 4613, 0x0000 },
+  { 4613, 0x0000 }, { 4613, 0x0000 }, { 4613, 0x0010 }, { 4614, 0x0000 },
+  { 4614, 0x0000 }, { 4614, 0x0002 }, { 4615, 0x0400 }, { 4616, 0x0002 },
+  /* 0x29900 */
+  { 4617, 0x0028 }, { 4619, 0x0000 }, { 4619, 0x8000 }, { 4620, 0x0000 },
+  { 4620, 0x0300 }, { 4622, 0x2000 }, { 4623, 0x0400 }, { 4624, 0x0000 },
+  { 4624, 0x0000 }, { 4624, 0x2000 }, { 4625, 0x0000 }, { 4625, 0x0000 },
+  { 4625, 0x0208 }, { 4627, 0x0000 }, { 4627, 0x0000 }, { 4627, 0x0000 },
+  /* 0x29a00 */
+  { 4627, 0x0000 }, { 4627, 0x0000 }, { 4627, 0x0100 }, { 4628, 0x0000 },
+  { 4628, 0x2000 }, { 4629, 0x0000 }, { 4629, 0x0000 }, { 4629, 0x0000 },
+  { 4629, 0x0000 }, { 4629, 0x0000 }, { 4629, 0x0000 }, { 4629, 0x0000 },
+  { 4629, 0x0000 }, { 4629, 0x0000 }, { 4629, 0x0000 }, { 4629, 0x0000 },
+  /* 0x29b00 */
+  { 4629, 0x4020 }, { 4631, 0x0000 }, { 4631, 0x0000 }, { 4631, 0x0000 },
+  { 4631, 0x0000 }, { 4631, 0x0000 }, { 4631, 0x0000 }, { 4631, 0x0000 },
+  { 4631, 0x0000 }, { 4631, 0x0000 }, { 4631, 0x0000 }, { 4631, 0x0000 },
+  { 4631, 0x0000 }, { 4631, 0x0020 }, { 4632, 0x0000 }, { 4632, 0x0000 },
+  /* 0x29c00 */
+  { 4632, 0x0000 }, { 4632, 0x0000 }, { 4632, 0x0000 }, { 4632, 0x0000 },
+  { 4632, 0x0000 }, { 4632, 0x0000 }, { 4632, 0x0000 }, { 4632, 0x0000 },
+  { 4632, 0x0000 }, { 4632, 0x0000 }, { 4632, 0x2000 }, { 4633, 0x0000 },
+  { 4633, 0x0000 }, { 4633, 0x0000 }, { 4633, 0x0000 }, { 4633, 0x0000 },
+  /* 0x29d00 */
+  { 4633, 0x0000 }, { 4633, 0x0000 }, { 4633, 0x0000 }, { 4633, 0x4000 },
+  { 4634, 0x0000 }, { 4634, 0x0400 }, { 4635, 0x0000 }, { 4635, 0x1000 },
+  { 4636, 0x0000 }, { 4636, 0x0900 }, { 4638, 0x0000 }, { 4638, 0x0000 },
+  { 4638, 0x0000 }, { 4638, 0x0000 }, { 4638, 0x0000 }, { 4638, 0x0040 },
+  /* 0x29e00 */
+  { 4639, 0x0040 }, { 4640, 0x0000 }, { 4640, 0x2000 }, { 4641, 0x0000 },
+  { 4641, 0x0000 }, { 4641, 0x0000 }, { 4641, 0x0100 }, { 4642, 0x0000 },
+  { 4642, 0x0000 }, { 4642, 0x0000 }, { 4642, 0x1000 }, { 4643, 0x0000 },
+  { 4643, 0x0008 }, { 4644, 0x0000 }, { 4644, 0x0000 }, { 4644, 0x0100 },
+  /* 0x29f00 */
+  { 4645, 0x0000 }, { 4645, 0x0000 }, { 4645, 0x0008 }, { 4646, 0x0001 },
+  { 4647, 0x0000 }, { 4647, 0x0000 }, { 4647, 0x0000 }, { 4647, 0x0000 },
+  { 4647, 0x0000 }, { 4647, 0x0000 }, { 4647, 0x0000 }, { 4647, 0x0080 },
+  { 4648, 0x0000 }, { 4648, 0x4000 }, { 4649, 0x0000 }, { 4649, 0x0000 },
+  /* 0x2a000 */
+  { 4649, 0x0000 }, { 4649, 0x0010 }, { 4650, 0x0000 }, { 4650, 0x0000 },
+  { 4650, 0x0000 }, { 4650, 0x0000 }, { 4650, 0x0000 }, { 4650, 0x0000 },
+  { 4650, 0x0080 }, { 4651, 0x0000 }, { 4651, 0x0000 }, { 4651, 0x0200 },
+  { 4652, 0x0000 }, { 4652, 0x0000 }, { 4652, 0x2002 }, { 4654, 0x4108 },
+  /* 0x2a100 */
+  { 4657, 0x0000 }, { 4657, 0x0000 }, { 4657, 0x0008 }, { 4658, 0x0018 },
+  { 4660, 0x0000 }, { 4660, 0x0001 }, { 4661, 0x0000 }, { 4661, 0x0000 },
+  { 4661, 0x0000 }, { 4661, 0x000c }, { 4663, 0x0800 }, { 4664, 0x0010 },
+  { 4665, 0x0000 }, { 4665, 0x8000 }, { 4666, 0x0000 }, { 4666, 0x0020 },
+  /* 0x2a200 */
+  { 4667, 0x0000 }, { 4667, 0x0000 }, { 4667, 0x0001 }, { 4668, 0x0008 },
+  { 4669, 0x0000 }, { 4669, 0x0000 }, { 4669, 0x0000 }, { 4669, 0x0000 },
+  { 4669, 0x0000 }, { 4669, 0x8008 }, { 4671, 0x0000 }, { 4671, 0x2054 },
+  { 4675, 0x0000 }, { 4675, 0x8000 }, { 4676, 0x0000 }, { 4676, 0x8000 },
+  /* 0x2a300 */
+  { 4677, 0x0000 }, { 4677, 0x0000 }, { 4677, 0x0000 }, { 4677, 0x0000 },
+  { 4677, 0x0000 }, { 4677, 0x0000 }, { 4677, 0x0000 }, { 4677, 0x0000 },
+  { 4677, 0x0000 }, { 4677, 0x0000 }, { 4677, 0x0200 }, { 4678, 0x0000 },
+  { 4678, 0x0000 }, { 4678, 0x0000 }, { 4678, 0x0000 }, { 4678, 0x0000 },
+  /* 0x2a400 */
+  { 4678, 0x0000 }, { 4678, 0x0000 }, { 4678, 0x0000 }, { 4678, 0x0010 },
+  { 4679, 0x0000 }, { 4679, 0x0800 }, { 4680, 0x0000 }, { 4680, 0x0000 },
+  { 4680, 0x0000 }, { 4680, 0x0000 }, { 4680, 0x0000 }, { 4680, 0x0000 },
+  { 4680, 0x0000 }, { 4680, 0x0000 }, { 4680, 0x0000 }, { 4680, 0x0000 },
+  /* 0x2a500 */
+  { 4680, 0x0000 }, { 4680, 0x0000 }, { 4680, 0x0000 }, { 4680, 0x0000 },
+  { 4680, 0x0000 }, { 4680, 0x0000 }, { 4680, 0x0000 }, { 4680, 0x0000 },
+  { 4680, 0x0000 }, { 4680, 0x0000 }, { 4680, 0x0000 }, { 4680, 0x0000 },
+  { 4680, 0x0840 }, { 4682, 0x0000 }, { 4682, 0x0000 }, { 4682, 0x0000 },
+  /* 0x2a600 */
+  { 4682, 0x0002 }, { 4683, 0x0000 }, { 4683, 0x0000 }, { 4683, 0x0004 },
+  { 4684, 0x0400 }, { 4685, 0x0800 }, { 4686, 0x0000 }, { 4686, 0x0000 },
+  { 4686, 0x0000 }, { 4686, 0x0000 }, { 4686, 0x0200 },
+};
+static const Summary16 hkscs1999_uni2indx_page2f8[30] = {
+  /* 0x2f800 */
+  { 4687, 0x0000 }, { 4687, 0x0000 }, { 4687, 0x0020 }, { 4688, 0x0800 },
+  { 4689, 0x0001 }, { 4690, 0x0000 }, { 4690, 0x0000 }, { 4690, 0x0100 },
+  { 4691, 0x0000 }, { 4691, 0x0010 }, { 4692, 0x0040 }, { 4693, 0x0000 },
+  { 4693, 0x2000 }, { 4694, 0x0000 }, { 4694, 0x0000 }, { 4694, 0x0000 },
+  /* 0x2f900 */
+  { 4694, 0x0000 }, { 4694, 0x0000 }, { 4694, 0x0000 }, { 4694, 0x0000 },
+  { 4694, 0x0000 }, { 4694, 0x0000 }, { 4694, 0x0000 }, { 4694, 0x0000 },
+  { 4694, 0x0000 }, { 4694, 0x0010 }, { 4695, 0x0000 }, { 4695, 0x1004 },
+  { 4697, 0x0000 }, { 4697, 0x0010 },
+};
+
+static int
+hkscs1999_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 2) {
+    const Summary16 *summary = NULL;
+    if (wc >= 0x0000 && wc < 0x02d0)
+      summary = &hkscs1999_uni2indx_page00[(wc>>4)];
+    else if (wc >= 0x0400 && wc < 0x0460)
+      summary = &hkscs1999_uni2indx_page04[(wc>>4)-0x040];
+    else if (wc >= 0x1e00 && wc < 0x1ed0)
+      summary = &hkscs1999_uni2indx_page1e[(wc>>4)-0x1e0];
+    else if (wc >= 0x2100 && wc < 0x21f0)
+      summary = &hkscs1999_uni2indx_page21[(wc>>4)-0x210];
+    else if (wc >= 0x2300 && wc < 0x2580)
+      summary = &hkscs1999_uni2indx_page23[(wc>>4)-0x230];
+    else if (wc >= 0x2700 && wc < 0x2740)
+      summary = &hkscs1999_uni2indx_page27[(wc>>4)-0x270];
+    else if (wc >= 0x2e00 && wc < 0x3240)
+      summary = &hkscs1999_uni2indx_page2e[(wc>>4)-0x2e0];
+    else if (wc >= 0x3400 && wc < 0x9fc0)
+      summary = &hkscs1999_uni2indx_page34[(wc>>4)-0x340];
+    else if (wc >= 0xf900 && wc < 0xf910)
+      summary = &hkscs1999_uni2indx_pagef9[(wc>>4)-0xf90];
+    else if (wc >= 0xff00 && wc < 0xfff0)
+      summary = &hkscs1999_uni2indx_pageff[(wc>>4)-0xff0];
+    else if (wc >= 0x20000 && wc < 0x291f0)
+      summary = &hkscs1999_uni2indx_page200[(wc>>4)-0x2000];
+    else if (wc >= 0x29400 && wc < 0x29600)
+      summary = &hkscs1999_uni2indx_page294[(wc>>4)-0x2940];
+    else if (wc >= 0x29700 && wc < 0x2a6b0)
+      summary = &hkscs1999_uni2indx_page297[(wc>>4)-0x2970];
+    else if (wc >= 0x2f800 && wc < 0x2f9e0)
+      summary = &hkscs1999_uni2indx_page2f8[(wc>>4)-0x2f80];
+    if (summary) {
+      unsigned short used = summary->used;
+      unsigned int i = wc & 0x0f;
+      if (used & ((unsigned short) 1 << i)) {
+        unsigned short c;
+        /* Keep in `used' only the bits 0..i-1. */
+        used &= ((unsigned short) 1 << i) - 1;
+        /* Add `summary->indx' and the number of bits set in `used'. */
+        used = (used & 0x5555) + ((used & 0xaaaa) >> 1);
+        used = (used & 0x3333) + ((used & 0xcccc) >> 2);
+        used = (used & 0x0f0f) + ((used & 0xf0f0) >> 4);
+        used = (used & 0x00ff) + (used >> 8);
+        c = hkscs1999_2charset[summary->indx + used];
+        r[0] = (c >> 8); r[1] = (c & 0xff);
+        return 2;
+      }
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/hkscs2001.h b/graf2d/win32gdk/gdk/src/iconv/hkscs2001.h
new file mode 100644
index 00000000000..66642cf9cc6
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/hkscs2001.h
@@ -0,0 +1,683 @@
+/*
+ * Copyright (C) 1999-2006 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * HKSCS:2001
+ */
+
+static const unsigned short hkscs2001_2uni_page8c[123] = {
+  /* 0x8c */
+  0x0a3b, 0x1cfe, 0x5273, 0x37a6, 0x02c9, 0x2d8f, 0x414e, 0x1d77,
+  0x12f5, 0x0620, 0x45cd, 0x0059, 0x4830, 0x1622, 0x4f32, 0x30a7,
+  0x31f6, 0x1e91, 0x1819, 0x20ba, 0x3e81, 0x5307, 0x018b, 0x3a80,
+  0x0610, 0x24e4, 0x2102, 0x0bae, 0x4d0f, 0x0409, 0x1a63, 0x54ba,
+  0x0523, 0x2c0f, 0x38fd, 0x252a, 0x5147, 0x4fea, 0x3455, 0x1d4d,
+  0x0c24, 0x3c7e, 0x33f4, 0x22d9, 0x4ee3, 0x37a7, 0x23dd, 0x08a3,
+  0x09f0, 0x0abc, 0x082f, 0x0917, 0x37a8, 0x0d34, 0x288b, 0x0f92,
+  0x0fd0, 0x3bb6, 0x1492, 0x1499, 0x15c2, 0x3d12, 0x178b, 0x3ff9,
+  0x1919, 0x1a43, 0x4063, 0x1bff, 0x38fd, 0x1f00, 0x4205, 0x208c,
+  0x03db, 0x4413, 0x1115, 0x21b9, 0x2e83, 0x47a4, 0x4695, 0x2593,
+  0x26ec, 0x27c3, 0x296c, 0x2af8, 0x2b97, 0x37a9, 0x2d90, 0x37aa,
+  0x2fb9, 0x37ab, 0x30cf, 0x2b5f, 0x36e0, 0x3221, 0x37ac, 0x50b9,
+  0x393f, 0x0471, 0x05a2, 0x101a, 0x38fd, 0x38fd, 0x38fd, 0x3568,
+  0x186b, 0x0576, 0x0e3d, 0x38fd, 0x2bd6, 0x437b, 0x2abf, 0x4c0d,
+  0x0781, 0x4a74, 0x137b, 0x4915, 0x4bbe, 0x37ad, 0x37ae, 0x1196,
+  0x37af, 0x38fd, 0x295b,
+};
+
+static const ucs4_t hkscs2001_2uni_upages[85] = {
+  0x03500, 0x03c00, 0x03d00, 0x03e00, 0x04000, 0x04200, 0x04b00, 0x04c00,
+  0x04e00, 0x04f00, 0x05000, 0x05100, 0x05300, 0x05400, 0x05700, 0x05800,
+  0x05a00, 0x05b00, 0x05c00, 0x05d00, 0x05e00, 0x05f00, 0x06100, 0x06500,
+  0x06700, 0x06900, 0x06a00, 0x06c00, 0x06d00, 0x07000, 0x07100, 0x07200,
+  0x07300, 0x07400, 0x07600, 0x07700, 0x07800, 0x07a00, 0x07b00, 0x07c00,
+  0x07d00, 0x07e00, 0x08200, 0x08500, 0x08600, 0x08800, 0x08b00, 0x08e00,
+  0x08f00, 0x09100, 0x09200, 0x09300, 0x09700, 0x09800, 0x09900, 0x09f00,
+  0x0ff00, 0x21400, 0x21900, 0x21d00, 0x22000, 0x22700, 0x23200, 0x23300,
+  0x23c00, 0x24100, 0x24500, 0x24900, 0x24a00, 0x25100, 0x25600, 0x25c00,
+  0x25d00, 0x26b00, 0x26d00, 0x26f00, 0x27100, 0x28700, 0x28900, 0x28a00,
+  0x28d00, 0x29900, 0x29c00, 0x2a100, 0x2a200,
+};
+
+static int
+hkscs2001_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 == 0x8c)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if ((c2 >= 0x40 && c2 < 0x7f) || (c2 >= 0xa1 && c2 < 0xff)) {
+        unsigned int i = 157 * (c1 - 0x80) + (c2 - (c2 >= 0xa1 ? 0x62 : 0x40));
+        ucs4_t wc = 0xfffd;
+        unsigned short swc;
+        {
+          if (i < 2007)
+            swc = hkscs2001_2uni_page8c[i-1884],
+            wc = hkscs2001_2uni_upages[swc>>8] | (swc & 0xff);
+        }
+        if (wc != 0xfffd) {
+          *pwc = wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned short hkscs2001_2charset[116] = {
+  0x8c4b, 0x8c56, 0x8c44, 0x8caa, 0x8c5d, 0x8cc3, 0x8c60, 0x8ccb,
+  0x8cc4, 0x8c58, 0x8c49, 0x8cd2, 0x8c72, 0x8c6f, 0x8c73, 0x8c70,
+  0x8c40, 0x8c71, 0x8c5b, 0x8c68, 0x8c75, 0x8ccc, 0x8c77, 0x8c78,
+  0x8cc5, 0x8cac, 0x8cd9, 0x8c48, 0x8cd4, 0x8c7a, 0x8c7b, 0x8c7c,
+  0x8c4d, 0x8c7e, 0x8c52, 0x8cca, 0x8ca2, 0x8ca3, 0x8c5e, 0x8ca5,
+  0x8c41, 0x8c67, 0x8c47, 0x8c51, 0x8ca7, 0x8ca9, 0x8c53, 0x8c5a,
+  0x8cad, 0x8c6b, 0x8c6e, 0x8c59, 0x8c63, 0x8cb1, 0x8cb2, 0x8cb3,
+  0x8c76, 0x8cdc, 0x8cb4, 0x8cd0, 0x8cb5, 0x8cbd, 0x8cb6, 0x8cce,
+  0x8c61, 0x8c45, 0x8cb8, 0x8cae, 0x8cba, 0x8c4f, 0x8cbc, 0x8c50,
+  0x8cbf, 0x8c6a, 0x8c66, 0x8cc9, 0x8cbe, 0x8c43, 0x8c6d, 0x8c74,
+  0x8cb7, 0x8cb9, 0x8cbb, 0x8cc0, 0x8cd7, 0x8cd8, 0x8cda, 0x8cc2,
+  0x8c57, 0x8c79, 0x8c69, 0x8c7d, 0x8c54, 0x8ca1, 0x8ca4, 0x8c46,
+  0x8ca8, 0x8ccf, 0x8cab, 0x8c4a, 0x8cb0, 0x8caf, 0x8c4c, 0x8cd5,
+  0x8cd3, 0x8cd6, 0x8cd1, 0x8c5c, 0x8c6c, 0x8c4e, 0x8c65, 0x8cc1,
+  0x8c64, 0x8c42, 0x8c55, 0x8c5f,
+};
+
+static const Summary16 hkscs2001_uni2indx_page35[6] = {
+  /* 0x3500 */
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0200 },
+};
+static const Summary16 hkscs2001_uni2indx_page3c[46] = {
+  /* 0x3c00 */
+  {    1, 0x0000 }, {    1, 0x0000 }, {    1, 0x0000 }, {    1, 0x0000 },
+  {    1, 0x0000 }, {    1, 0x0000 }, {    1, 0x0000 }, {    1, 0x0000 },
+  {    1, 0x0800 }, {    2, 0x0000 }, {    2, 0x0000 }, {    2, 0x0000 },
+  {    2, 0x0000 }, {    2, 0x0000 }, {    2, 0x0000 }, {    2, 0x0000 },
+  /* 0x3d00 */
+  {    2, 0x0000 }, {    2, 0x0000 }, {    2, 0x0000 }, {    2, 0x0000 },
+  {    2, 0x0000 }, {    2, 0x0000 }, {    2, 0x0000 }, {    2, 0x0000 },
+  {    2, 0x0000 }, {    2, 0x0000 }, {    2, 0x0000 }, {    2, 0x0000 },
+  {    2, 0x0200 }, {    3, 0x0000 }, {    3, 0x0000 }, {    3, 0x0000 },
+  /* 0x3e00 */
+  {    3, 0x0000 }, {    3, 0x0000 }, {    3, 0x0000 }, {    3, 0x0000 },
+  {    3, 0x0000 }, {    3, 0x0000 }, {    3, 0x0000 }, {    3, 0x0000 },
+  {    3, 0x0000 }, {    3, 0x0000 }, {    3, 0x0000 }, {    3, 0x0000 },
+  {    3, 0x0000 }, {    3, 0x0800 },
+};
+static const Summary16 hkscs2001_uni2indx_page40[8] = {
+  /* 0x4000 */
+  {    4, 0x0200 }, {    5, 0x0000 }, {    5, 0x0000 }, {    5, 0x0000 },
+  {    5, 0x0000 }, {    5, 0x0000 }, {    5, 0x0000 }, {    5, 0x0002 },
+};
+static const Summary16 hkscs2001_uni2indx_page42[11] = {
+  /* 0x4200 */
+  {    6, 0x0000 }, {    6, 0x0000 }, {    6, 0x0008 }, {    7, 0x0000 },
+  {    7, 0x0000 }, {    7, 0x0000 }, {    7, 0x0000 }, {    7, 0x0040 },
+  {    8, 0x0000 }, {    8, 0x0000 }, {    8, 0x0004 },
+};
+static const Summary16 hkscs2001_uni2indx_page4b[25] = {
+  /* 0x4b00 */
+  {    9, 0x0000 }, {    9, 0x0001 }, {   10, 0x0001 }, {   11, 0x0000 },
+  {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 },
+  {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 },
+  {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 },
+  /* 0x4c00 */
+  {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 },
+  {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 },
+  {   11, 0x0002 },
+};
+static const Summary16 hkscs2001_uni2indx_page4e[59] = {
+  /* 0x4e00 */
+  {   12, 0x0000 }, {   12, 0x0000 }, {   12, 0x8000 }, {   13, 0x0000 },
+  {   13, 0x0000 }, {   13, 0x0000 }, {   13, 0x0000 }, {   13, 0x0000 },
+  {   13, 0x0000 }, {   13, 0x0000 }, {   13, 0x0008 }, {   14, 0x0000 },
+  {   14, 0x0000 }, {   14, 0x0000 }, {   14, 0x0000 }, {   14, 0x0000 },
+  /* 0x4f00 */
+  {   14, 0x0000 }, {   14, 0x0080 }, {   15, 0x0000 }, {   15, 0x0000 },
+  {   15, 0x0000 }, {   15, 0x0000 }, {   15, 0x0000 }, {   15, 0x0000 },
+  {   15, 0x0000 }, {   15, 0x0000 }, {   15, 0x0000 }, {   15, 0x0000 },
+  {   15, 0x0000 }, {   15, 0x0000 }, {   15, 0x0000 }, {   15, 0x0001 },
+  /* 0x5000 */
+  {   16, 0x0000 }, {   16, 0x0000 }, {   16, 0x0000 }, {   16, 0x0800 },
+  {   17, 0x0000 }, {   17, 0x0000 }, {   17, 0x0000 }, {   17, 0x0000 },
+  {   17, 0x0000 }, {   17, 0x0000 }, {   17, 0x0000 }, {   17, 0x1000 },
+  {   18, 0x0000 }, {   18, 0x0000 }, {   18, 0x0000 }, {   18, 0x0000 },
+  /* 0x5100 */
+  {   18, 0x0000 }, {   18, 0x0000 }, {   18, 0x0000 }, {   18, 0x0000 },
+  {   18, 0x0000 }, {   18, 0x0000 }, {   18, 0x0000 }, {   18, 0x0000 },
+  {   18, 0x0000 }, {   18, 0x0000 }, {   18, 0x4000 },
+};
+static const Summary16 hkscs2001_uni2indx_page53[20] = {
+  /* 0x5300 */
+  {   19, 0x0000 }, {   19, 0x0000 }, {   19, 0x0010 }, {   20, 0x0000 },
+  {   20, 0x0000 }, {   20, 0x0000 }, {   20, 0x0000 }, {   20, 0x0000 },
+  {   20, 0x0000 }, {   20, 0x0000 }, {   20, 0x0000 }, {   20, 0x0000 },
+  {   20, 0x0000 }, {   20, 0x0000 }, {   20, 0x0000 }, {   20, 0x0000 },
+  /* 0x5400 */
+  {   20, 0x0000 }, {   20, 0x0000 }, {   20, 0x0000 }, {   20, 0x0010 },
+};
+static const Summary16 hkscs2001_uni2indx_page57[30] = {
+  /* 0x5700 */
+  {   21, 0x0000 }, {   21, 0x0000 }, {   21, 0x0000 }, {   21, 0x2000 },
+  {   22, 0x0000 }, {   22, 0x0000 }, {   22, 0x0000 }, {   22, 0x0000 },
+  {   22, 0x0000 }, {   22, 0x0000 }, {   22, 0x0000 }, {   22, 0x0000 },
+  {   22, 0x0000 }, {   22, 0x0000 }, {   22, 0x0000 }, {   22, 0x0000 },
+  /* 0x5800 */
+  {   22, 0x0000 }, {   22, 0x0000 }, {   22, 0x0000 }, {   22, 0x0000 },
+  {   22, 0x0000 }, {   22, 0x0000 }, {   22, 0x0000 }, {   22, 0x0000 },
+  {   22, 0x0000 }, {   22, 0x0004 }, {   23, 0x0000 }, {   23, 0x0000 },
+  {   23, 0x0000 }, {   23, 0x0001 },
+};
+static const Summary16 hkscs2001_uni2indx_page5a[93] = {
+  /* 0x5a00 */
+  {   24, 0x0000 }, {   24, 0x0400 }, {   25, 0x0000 }, {   25, 0x0000 },
+  {   25, 0x0000 }, {   25, 0x0000 }, {   25, 0x0000 }, {   25, 0x0000 },
+  {   25, 0x0000 }, {   25, 0x0000 }, {   25, 0x0000 }, {   25, 0x0000 },
+  {   25, 0x0000 }, {   25, 0x0000 }, {   25, 0x0000 }, {   25, 0x0000 },
+  /* 0x5b00 */
+  {   25, 0x0000 }, {   25, 0x0020 }, {   26, 0x0000 }, {   26, 0x0000 },
+  {   26, 0x0000 }, {   26, 0x0000 }, {   26, 0x0000 }, {   26, 0x0000 },
+  {   26, 0x0000 }, {   26, 0x0040 }, {   27, 0x0000 }, {   27, 0x0000 },
+  {   27, 0x0000 }, {   27, 0x0000 }, {   27, 0x0000 }, {   27, 0x0000 },
+  /* 0x5c00 */
+  {   27, 0x0000 }, {   27, 0x0000 }, {   27, 0x0000 }, {   27, 0x0000 },
+  {   27, 0x0000 }, {   27, 0x0000 }, {   27, 0x0000 }, {   27, 0x0000 },
+  {   27, 0x0000 }, {   27, 0x0000 }, {   27, 0x0000 }, {   27, 0x0000 },
+  {   27, 0x0000 }, {   27, 0x0000 }, {   27, 0x0000 }, {   27, 0x0020 },
+  /* 0x5d00 */
+  {   28, 0x0000 }, {   28, 0x0000 }, {   28, 0x0000 }, {   28, 0x0000 },
+  {   28, 0x0000 }, {   28, 0x0000 }, {   28, 0x0000 }, {   28, 0x0800 },
+  {   29, 0x0000 }, {   29, 0x0000 }, {   29, 0x0000 }, {   29, 0x0000 },
+  {   29, 0x0000 }, {   29, 0x0000 }, {   29, 0x0000 }, {   29, 0x0000 },
+  /* 0x5e00 */
+  {   29, 0x0000 }, {   29, 0x0000 }, {   29, 0x0000 }, {   29, 0x0000 },
+  {   29, 0x0000 }, {   29, 0x0000 }, {   29, 0x0000 }, {   29, 0x0000 },
+  {   29, 0x0000 }, {   29, 0x0204 }, {   31, 0x0000 }, {   31, 0x0000 },
+  {   31, 0x0000 }, {   31, 0x0000 }, {   31, 0x0000 }, {   31, 0x0000 },
+  /* 0x5f00 */
+  {   31, 0x0000 }, {   31, 0x0000 }, {   31, 0x0000 }, {   31, 0x0000 },
+  {   31, 0x0000 }, {   31, 0x0000 }, {   31, 0x0000 }, {   31, 0x0000 },
+  {   31, 0x0000 }, {   31, 0x0000 }, {   31, 0x0000 }, {   31, 0x0000 },
+  {   31, 0x0004 },
+};
+static const Summary16 hkscs2001_uni2indx_page61[3] = {
+  /* 0x6100 */
+  {   32, 0x0000 }, {   32, 0x0000 }, {   32, 0x0004 },
+};
+static const Summary16 hkscs2001_uni2indx_page65[9] = {
+  /* 0x6500 */
+  {   33, 0x0000 }, {   33, 0x0000 }, {   33, 0x0000 }, {   33, 0x0000 },
+  {   33, 0x0000 }, {   33, 0x0000 }, {   33, 0x0000 }, {   33, 0x0000 },
+  {   33, 0x0800 },
+};
+static const Summary16 hkscs2001_uni2indx_page67[7] = {
+  /* 0x6700 */
+  {   34, 0x0000 }, {   34, 0x0200 }, {   35, 0x0000 }, {   35, 0x0000 },
+  {   35, 0x0000 }, {   35, 0x0000 }, {   35, 0x0800 },
+};
+static const Summary16 hkscs2001_uni2indx_page69[23] = {
+  /* 0x6900 */
+  {   36, 0x0000 }, {   36, 0x0200 }, {   37, 0x0000 }, {   37, 0x0000 },
+  {   37, 0x0000 }, {   37, 0x0000 }, {   37, 0x0000 }, {   37, 0x0000 },
+  {   37, 0x0000 }, {   37, 0x0000 }, {   37, 0x0000 }, {   37, 0x0000 },
+  {   37, 0x0000 }, {   37, 0x0000 }, {   37, 0x0000 }, {   37, 0x0000 },
+  /* 0x6a00 */
+  {   37, 0x0000 }, {   37, 0x0000 }, {   37, 0x0000 }, {   37, 0x0000 },
+  {   37, 0x0008 }, {   38, 0x0000 }, {   38, 0x0008 },
+};
+static const Summary16 hkscs2001_uni2indx_page6c[32] = {
+  /* 0x6c00 */
+  {   39, 0x0000 }, {   39, 0x0000 }, {   39, 0x0000 }, {   39, 0x0000 },
+  {   39, 0x0000 }, {   39, 0x0000 }, {   39, 0x0000 }, {   39, 0x0000 },
+  {   39, 0x0000 }, {   39, 0x0000 }, {   39, 0x0000 }, {   39, 0x0000 },
+  {   39, 0x0000 }, {   39, 0x0000 }, {   39, 0x0000 }, {   39, 0x8000 },
+  /* 0x6d00 */
+  {   40, 0x0000 }, {   40, 0x0000 }, {   40, 0x0000 }, {   40, 0x0000 },
+  {   40, 0x0000 }, {   40, 0x0000 }, {   40, 0x0000 }, {   40, 0x0000 },
+  {   40, 0x0000 }, {   40, 0x0000 }, {   40, 0x0000 }, {   40, 0x0000 },
+  {   40, 0x0000 }, {   40, 0x0000 }, {   40, 0x0000 }, {   40, 0x4000 },
+};
+static const Summary16 hkscs2001_uni2indx_page70[76] = {
+  /* 0x7000 */
+  {   41, 0x0000 }, {   41, 0x0000 }, {   41, 0x0000 }, {   41, 0x0000 },
+  {   41, 0x2000 }, {   42, 0x0000 }, {   42, 0x0000 }, {   42, 0x0080 },
+  {   43, 0x0000 }, {   43, 0x0000 }, {   43, 0x0000 }, {   43, 0x0000 },
+  {   43, 0x0000 }, {   43, 0x0000 }, {   43, 0x0000 }, {   43, 0x0000 },
+  /* 0x7100 */
+  {   43, 0x0000 }, {   43, 0x0000 }, {   43, 0x0000 }, {   43, 0x0000 },
+  {   43, 0x0000 }, {   43, 0x0000 }, {   43, 0x0000 }, {   43, 0x0000 },
+  {   43, 0x0000 }, {   43, 0x0002 }, {   44, 0x0000 }, {   44, 0x0000 },
+  {   44, 0x0000 }, {   44, 0x0000 }, {   44, 0x0000 }, {   44, 0x0000 },
+  /* 0x7200 */
+  {   44, 0x0001 }, {   45, 0x0000 }, {   45, 0x0000 }, {   45, 0x0000 },
+  {   45, 0x0000 }, {   45, 0x0000 }, {   45, 0x0000 }, {   45, 0x0000 },
+  {   45, 0x0000 }, {   45, 0x0000 }, {   45, 0x0000 }, {   45, 0x0000 },
+  {   45, 0x0000 }, {   45, 0x0000 }, {   45, 0x0000 }, {   45, 0x0000 },
+  /* 0x7300 */
+  {   45, 0x0000 }, {   45, 0x0000 }, {   45, 0x0000 }, {   45, 0x0000 },
+  {   45, 0x0000 }, {   45, 0x0000 }, {   45, 0x0000 }, {   45, 0x0000 },
+  {   45, 0x1000 }, {   46, 0x0000 }, {   46, 0x0000 }, {   46, 0x0400 },
+  {   47, 0x0000 }, {   47, 0x0000 }, {   47, 0x0000 }, {   47, 0x0000 },
+  /* 0x7400 */
+  {   47, 0x0004 }, {   48, 0x0000 }, {   48, 0x0000 }, {   48, 0x0000 },
+  {   48, 0x0000 }, {   48, 0x0000 }, {   48, 0x0000 }, {   48, 0x0000 },
+  {   48, 0x0000 }, {   48, 0x0000 }, {   48, 0x0000 }, {   48, 0x0200 },
+};
+static const Summary16 hkscs2001_uni2indx_page76[47] = {
+  /* 0x7600 */
+  {   49, 0x0000 }, {   49, 0x0000 }, {   49, 0x0000 }, {   49, 0x0000 },
+  {   49, 0x0000 }, {   49, 0x0000 }, {   49, 0x0000 }, {   49, 0x0000 },
+  {   49, 0x0000 }, {   49, 0x0000 }, {   49, 0x0000 }, {   49, 0x0000 },
+  {   49, 0x0000 }, {   49, 0x0200 }, {   50, 0x0000 }, {   50, 0x0000 },
+  /* 0x7700 */
+  {   50, 0x0000 }, {   50, 0x0000 }, {   50, 0x0000 }, {   50, 0x0000 },
+  {   50, 0x0000 }, {   50, 0x0000 }, {   50, 0x0000 }, {   50, 0x0000 },
+  {   50, 0x0000 }, {   50, 0x0000 }, {   50, 0x0000 }, {   50, 0x0000 },
+  {   50, 0x0000 }, {   50, 0x2000 }, {   51, 0x0000 }, {   51, 0x0000 },
+  /* 0x7800 */
+  {   51, 0x0000 }, {   51, 0x0000 }, {   51, 0x0000 }, {   51, 0x0000 },
+  {   51, 0x0000 }, {   51, 0x0000 }, {   51, 0x0000 }, {   51, 0x0000 },
+  {   51, 0x0000 }, {   51, 0x0000 }, {   51, 0x0000 }, {   51, 0x0000 },
+  {   51, 0x0000 }, {   51, 0x0000 }, {   51, 0x0010 },
+};
+static const Summary16 hkscs2001_uni2indx_page7a[71] = {
+  /* 0x7a00 */
+  {   52, 0x0000 }, {   52, 0x0000 }, {   52, 0x0400 }, {   53, 0x0000 },
+  {   53, 0x0000 }, {   53, 0x0000 }, {   53, 0x0000 }, {   53, 0x0000 },
+  {   53, 0x0000 }, {   53, 0x0008 }, {   54, 0x0000 }, {   54, 0x0000 },
+  {   54, 0x0000 }, {   54, 0x0000 }, {   54, 0x0000 }, {   54, 0x0000 },
+  /* 0x7b00 */
+  {   54, 0x0000 }, {   54, 0x0000 }, {   54, 0x0000 }, {   54, 0x0000 },
+  {   54, 0x0000 }, {   54, 0x0000 }, {   54, 0x0000 }, {   54, 0x0000 },
+  {   54, 0x0000 }, {   54, 0x0000 }, {   54, 0x0000 }, {   54, 0x0000 },
+  {   54, 0x0000 }, {   54, 0x0000 }, {   54, 0x1000 }, {   55, 0x0000 },
+  /* 0x7c00 */
+  {   55, 0x0000 }, {   55, 0x0000 }, {   55, 0x0000 }, {   55, 0x0000 },
+  {   55, 0x0000 }, {   55, 0x0000 }, {   55, 0x0000 }, {   55, 0x0000 },
+  {   55, 0x0000 }, {   55, 0x0000 }, {   55, 0x0000 }, {   55, 0x0000 },
+  {   55, 0x0008 }, {   56, 0x0000 }, {   56, 0x0000 }, {   56, 0x0000 },
+  /* 0x7d00 */
+  {   56, 0x0000 }, {   56, 0x0000 }, {   56, 0x0000 }, {   56, 0x0000 },
+  {   56, 0x0000 }, {   56, 0x0000 }, {   56, 0x0000 }, {   56, 0x0000 },
+  {   56, 0x0800 }, {   57, 0x0000 }, {   57, 0x0000 }, {   57, 0x0000 },
+  {   57, 0x0000 }, {   57, 0x0000 }, {   57, 0x0000 }, {   57, 0x0000 },
+  /* 0x7e00 */
+  {   57, 0x0000 }, {   57, 0x0000 }, {   57, 0x0000 }, {   57, 0x0000 },
+  {   57, 0x0000 }, {   57, 0x0800 }, {   58, 0x1000 },
+};
+static const Summary16 hkscs2001_uni2indx_page82[16] = {
+  /* 0x8200 */
+  {   59, 0x0000 }, {   59, 0x0000 }, {   59, 0x0000 }, {   59, 0x0000 },
+  {   59, 0x0000 }, {   59, 0x0000 }, {   59, 0x0000 }, {   59, 0x0000 },
+  {   59, 0x0000 }, {   59, 0x0000 }, {   59, 0x0000 }, {   59, 0x8000 },
+  {   60, 0x0000 }, {   60, 0x0000 }, {   60, 0x0000 }, {   60, 0x0100 },
+};
+static const Summary16 hkscs2001_uni2indx_page85[17] = {
+  /* 0x8500 */
+  {   61, 0x0000 }, {   61, 0x0000 }, {   61, 0x0000 }, {   61, 0x0000 },
+  {   61, 0x0000 }, {   61, 0x8000 }, {   62, 0x0000 }, {   62, 0x0000 },
+  {   62, 0x0000 }, {   62, 0x0080 }, {   63, 0x0000 }, {   63, 0x0000 },
+  {   63, 0x0000 }, {   63, 0x0040 }, {   64, 0x0000 }, {   64, 0x0000 },
+  /* 0x8600 */
+  {   64, 0x8000 },
+};
+static const Summary16 hkscs2001_uni2indx_page88[10] = {
+  /* 0x8800 */
+  {   65, 0x0000 }, {   65, 0x0000 }, {   65, 0x0000 }, {   65, 0x0000 },
+  {   65, 0x0000 }, {   65, 0x0000 }, {   65, 0x0000 }, {   65, 0x0000 },
+  {   65, 0x8000 }, {   66, 0x0001 },
+};
+static const Summary16 hkscs2001_uni2indx_page8b[9] = {
+  /* 0x8b00 */
+  {   67, 0x0000 }, {   67, 0x0000 }, {   67, 0x0000 }, {   67, 0x0000 },
+  {   67, 0x0000 }, {   67, 0x0000 }, {   67, 0x0000 }, {   67, 0x0000 },
+  {   67, 0x0008 },
+};
+static const Summary16 hkscs2001_uni2indx_page8e[29] = {
+  /* 0x8e00 */
+  {   68, 0x0000 }, {   68, 0x0000 }, {   68, 0x0000 }, {   68, 0x0000 },
+  {   68, 0x0000 }, {   68, 0x0000 }, {   68, 0x0000 }, {   68, 0x0000 },
+  {   68, 0x0000 }, {   68, 0x0000 }, {   68, 0x0000 }, {   68, 0x0200 },
+  {   69, 0x0000 }, {   69, 0x0000 }, {   69, 0x0000 }, {   69, 0x0000 },
+  /* 0x8f00 */
+  {   69, 0x0000 }, {   69, 0x0000 }, {   69, 0x0000 }, {   69, 0x0000 },
+  {   69, 0x0000 }, {   69, 0x0000 }, {   69, 0x0000 }, {   69, 0x0000 },
+  {   69, 0x0000 }, {   69, 0x0000 }, {   69, 0x0080 }, {   70, 0x0000 },
+  {   70, 0x8000 },
+};
+static const Summary16 hkscs2001_uni2indx_page91[48] = {
+  /* 0x9100 */
+  {   71, 0x0000 }, {   71, 0x0000 }, {   71, 0x0000 }, {   71, 0x0000 },
+  {   71, 0x0000 }, {   71, 0x0000 }, {   71, 0x0000 }, {   71, 0x0000 },
+  {   71, 0x0000 }, {   71, 0x0000 }, {   71, 0x0000 }, {   71, 0x0000 },
+  {   71, 0x0000 }, {   71, 0x0000 }, {   71, 0x0000 }, {   71, 0x0040 },
+  /* 0x9200 */
+  {   72, 0x0000 }, {   72, 0x0000 }, {   72, 0x0002 }, {   73, 0x0000 },
+  {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0000 },
+  {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0000 },
+  {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0000 },
+  /* 0x9300 */
+  {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0000 },
+  {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0000 },
+  {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0000 },
+  {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0010 },
+};
+static const Summary16 hkscs2001_uni2indx_page97[47] = {
+  /* 0x9700 */
+  {   74, 0x0000 }, {   74, 0x0000 }, {   74, 0x0000 }, {   74, 0x0000 },
+  {   74, 0x0000 }, {   74, 0x0020 }, {   75, 0x0000 }, {   75, 0x0000 },
+  {   75, 0x0000 }, {   75, 0x0000 }, {   75, 0x0000 }, {   75, 0x0000 },
+  {   75, 0x0000 }, {   75, 0x0000 }, {   75, 0x0000 }, {   75, 0x0000 },
+  /* 0x9800 */
+  {   75, 0x0000 }, {   75, 0x0000 }, {   75, 0x0000 }, {   75, 0x0000 },
+  {   75, 0x0000 }, {   75, 0x0000 }, {   75, 0x0100 }, {   76, 0x0000 },
+  {   76, 0x0000 }, {   76, 0x0000 }, {   76, 0x0000 }, {   76, 0x0000 },
+  {   76, 0x0000 }, {   76, 0x0000 }, {   76, 0x0000 }, {   76, 0x0000 },
+  /* 0x9900 */
+  {   76, 0x0000 }, {   76, 0x0000 }, {   76, 0x0000 }, {   76, 0x0000 },
+  {   76, 0x0000 }, {   76, 0x0000 }, {   76, 0x0000 }, {   76, 0x0000 },
+  {   76, 0x0000 }, {   76, 0x0000 }, {   76, 0x0000 }, {   76, 0x0000 },
+  {   76, 0x0000 }, {   76, 0x0000 }, {   76, 0x0001 },
+};
+static const Summary16 hkscs2001_uni2indx_page9f[11] = {
+  /* 0x9f00 */
+  {   77, 0x0000 }, {   77, 0x0000 }, {   77, 0x0000 }, {   77, 0x0000 },
+  {   77, 0x0000 }, {   77, 0x0000 }, {   77, 0x0000 }, {   77, 0x0000 },
+  {   77, 0x0000 }, {   77, 0x0000 }, {   77, 0xffc0 },
+};
+static const Summary16 hkscs2001_uni2indx_page214[4] = {
+  /* 0x21400 */
+  {   87, 0x0000 }, {   87, 0x0000 }, {   87, 0x0000 }, {   87, 0x8000 },
+};
+static const Summary16 hkscs2001_uni2indx_page219[9] = {
+  /* 0x21900 */
+  {   88, 0x0000 }, {   88, 0x0000 }, {   88, 0x0000 }, {   88, 0x0000 },
+  {   88, 0x0000 }, {   88, 0x0000 }, {   88, 0x0000 }, {   88, 0x0000 },
+  {   88, 0x0001 },
+};
+static const Summary16 hkscs2001_uni2indx_page21d[12] = {
+  /* 0x21d00 */
+  {   89, 0x0000 }, {   89, 0x0000 }, {   89, 0x0000 }, {   89, 0x0000 },
+  {   89, 0x0000 }, {   89, 0x0000 }, {   89, 0x0000 }, {   89, 0x0000 },
+  {   89, 0x0000 }, {   89, 0x0000 }, {   89, 0x0000 }, {   89, 0x0040 },
+};
+static const Summary16 hkscs2001_uni2indx_page220[8] = {
+  /* 0x22000 */
+  {   90, 0x0000 }, {   90, 0x0000 }, {   90, 0x0000 }, {   90, 0x0000 },
+  {   90, 0x0000 }, {   90, 0x0000 }, {   90, 0x0000 }, {   90, 0x4000 },
+};
+static const Summary16 hkscs2001_uni2indx_page227[2] = {
+  /* 0x22700 */
+  {   91, 0x0000 }, {   91, 0x0004 },
+};
+static const Summary16 hkscs2001_uni2indx_page232[32] = {
+  /* 0x23200 */
+  {   92, 0x0000 }, {   92, 0x0000 }, {   92, 0x0000 }, {   92, 0x0000 },
+  {   92, 0x0000 }, {   92, 0x0000 }, {   92, 0x0000 }, {   92, 0x0000 },
+  {   92, 0x0002 }, {   93, 0x0000 }, {   93, 0x0000 }, {   93, 0x0000 },
+  {   93, 0x0000 }, {   93, 0x0000 }, {   93, 0x0000 }, {   93, 0x0000 },
+  /* 0x23300 */
+  {   93, 0x0000 }, {   93, 0x0000 }, {   93, 0x0000 }, {   93, 0x0000 },
+  {   93, 0x0000 }, {   93, 0x0000 }, {   93, 0x0000 }, {   93, 0x0000 },
+  {   93, 0x0000 }, {   93, 0x0000 }, {   93, 0x0000 }, {   93, 0x0000 },
+  {   93, 0x0000 }, {   93, 0x0000 }, {   93, 0x0000 }, {   93, 0x0200 },
+};
+static const Summary16 hkscs2001_uni2indx_page23c[7] = {
+  /* 0x23c00 */
+  {   94, 0x0000 }, {   94, 0x0000 }, {   94, 0x0000 }, {   94, 0x0000 },
+  {   94, 0x0000 }, {   94, 0x0000 }, {   94, 0x0008 },
+};
+static const Summary16 hkscs2001_uni2indx_page241[5] = {
+  /* 0x24100 */
+  {   95, 0x0000 }, {   95, 0x0000 }, {   95, 0x0000 }, {   95, 0x0000 },
+  {   95, 0x4000 },
+};
+static const Summary16 hkscs2001_uni2indx_page245[1] = {
+  /* 0x24500 */
+  {   96, 0x0020 },
+};
+static const Summary16 hkscs2001_uni2indx_page249[18] = {
+  /* 0x24900 */
+  {   97, 0x0000 }, {   97, 0x0000 }, {   97, 0x0000 }, {   97, 0x0000 },
+  {   97, 0x0000 }, {   97, 0x0000 }, {   97, 0x0000 }, {   97, 0x0800 },
+  {   98, 0x0000 }, {   98, 0x0000 }, {   98, 0x0000 }, {   98, 0x0000 },
+  {   98, 0x0000 }, {   98, 0x0000 }, {   98, 0x0000 }, {   98, 0x0000 },
+  /* 0x24a00 */
+  {   98, 0x0000 }, {   98, 0x0008 },
+};
+static const Summary16 hkscs2001_uni2indx_page251[13] = {
+  /* 0x25100 */
+  {   99, 0x0000 }, {   99, 0x0000 }, {   99, 0x0000 }, {   99, 0x0000 },
+  {   99, 0x0000 }, {   99, 0x0000 }, {   99, 0x0000 }, {   99, 0x0000 },
+  {   99, 0x0000 }, {   99, 0x0000 }, {   99, 0x0000 }, {   99, 0x0000 },
+  {   99, 0x2000 },
+};
+static const Summary16 hkscs2001_uni2indx_page256[10] = {
+  /* 0x25600 */
+  {  100, 0x0000 }, {  100, 0x0000 }, {  100, 0x0000 }, {  100, 0x0000 },
+  {  100, 0x0000 }, {  100, 0x0000 }, {  100, 0x0000 }, {  100, 0x0000 },
+  {  100, 0x0000 }, {  100, 0x0020 },
+};
+static const Summary16 hkscs2001_uni2indx_page25c[20] = {
+  /* 0x25c00 */
+  {  101, 0x0000 }, {  101, 0x0000 }, {  101, 0x0000 }, {  101, 0x0000 },
+  {  101, 0x0000 }, {  101, 0x0000 }, {  101, 0x0000 }, {  101, 0x0000 },
+  {  101, 0x0000 }, {  101, 0x0000 }, {  101, 0x0010 }, {  102, 0x0000 },
+  {  102, 0x0000 }, {  102, 0x0000 }, {  102, 0x0000 }, {  102, 0x0000 },
+  /* 0x25d00 */
+  {  102, 0x0000 }, {  102, 0x0000 }, {  102, 0x0000 }, {  102, 0x0001 },
+};
+static const Summary16 hkscs2001_uni2indx_page26b[2] = {
+  /* 0x26b00 */
+  {  103, 0x0000 }, {  103, 0x0020 },
+};
+static const Summary16 hkscs2001_uni2indx_page26d[8] = {
+  /* 0x26d00 */
+  {  104, 0x0000 }, {  104, 0x0000 }, {  104, 0x0000 }, {  104, 0x0000 },
+  {  104, 0x0000 }, {  104, 0x0000 }, {  104, 0x0000 }, {  104, 0x0010 },
+};
+static const Summary16 hkscs2001_uni2indx_page26f[12] = {
+  /* 0x26f00 */
+  {  105, 0x0000 }, {  105, 0x0000 }, {  105, 0x0000 }, {  105, 0x0000 },
+  {  105, 0x0000 }, {  105, 0x0000 }, {  105, 0x0000 }, {  105, 0x0000 },
+  {  105, 0x0000 }, {  105, 0x0000 }, {  105, 0x0000 }, {  105, 0x4000 },
+};
+static const Summary16 hkscs2001_uni2indx_page271[1] = {
+  /* 0x27100 */
+  {  106, 0x2000 },
+};
+static const Summary16 hkscs2001_uni2indx_page287[1] = {
+  /* 0x28700 */
+  {  107, 0x8000 },
+};
+static const Summary16 hkscs2001_uni2indx_page289[31] = {
+  /* 0x28900 */
+  {  108, 0x0000 }, {  108, 0x0000 }, {  108, 0x0000 }, {  108, 0x0000 },
+  {  108, 0x0000 }, {  108, 0x0000 }, {  108, 0x0000 }, {  108, 0x0000 },
+  {  108, 0x0000 }, {  108, 0x0000 }, {  108, 0x0000 }, {  108, 0x0000 },
+  {  108, 0x0000 }, {  108, 0x0000 }, {  108, 0x0008 }, {  109, 0x0000 },
+  /* 0x28a00 */
+  {  109, 0x0000 }, {  109, 0x0000 }, {  109, 0x0000 }, {  109, 0x0004 },
+  {  110, 0x0000 }, {  110, 0x0000 }, {  110, 0x0000 }, {  110, 0x0000 },
+  {  110, 0x0000 }, {  110, 0x0000 }, {  110, 0x0000 }, {  110, 0x0000 },
+  {  110, 0x0000 }, {  110, 0x0000 }, {  110, 0x0400 },
+};
+static const Summary16 hkscs2001_uni2indx_page28d[12] = {
+  /* 0x28d00 */
+  {  111, 0x0000 }, {  111, 0x0000 }, {  111, 0x0000 }, {  111, 0x0000 },
+  {  111, 0x0000 }, {  111, 0x0000 }, {  111, 0x0000 }, {  111, 0x0000 },
+  {  111, 0x0000 }, {  111, 0x0000 }, {  111, 0x0000 }, {  111, 0x0200 },
+};
+static const Summary16 hkscs2001_uni2indx_page299[5] = {
+  /* 0x29900 */
+  {  112, 0x0000 }, {  112, 0x0000 }, {  112, 0x0000 }, {  112, 0x0000 },
+  {  112, 0x0080 },
+};
+static const Summary16 hkscs2001_uni2indx_page29c[8] = {
+  /* 0x29c00 */
+  {  113, 0x0000 }, {  113, 0x0000 }, {  113, 0x0000 }, {  113, 0x0000 },
+  {  113, 0x0000 }, {  113, 0x0000 }, {  113, 0x0000 }, {  113, 0x0008 },
+};
+static const Summary16 hkscs2001_uni2indx_page2a1[28] = {
+  /* 0x2a100 */
+  {  114, 0x0080 }, {  115, 0x0000 }, {  115, 0x0000 }, {  115, 0x0000 },
+  {  115, 0x0000 }, {  115, 0x0000 }, {  115, 0x0000 }, {  115, 0x0000 },
+  {  115, 0x0000 }, {  115, 0x0000 }, {  115, 0x0000 }, {  115, 0x0000 },
+  {  115, 0x0000 }, {  115, 0x0000 }, {  115, 0x0000 }, {  115, 0x0000 },
+  /* 0x2a200 */
+  {  115, 0x0000 }, {  115, 0x0000 }, {  115, 0x0000 }, {  115, 0x0000 },
+  {  115, 0x0000 }, {  115, 0x0000 }, {  115, 0x0000 }, {  115, 0x0000 },
+  {  115, 0x0000 }, {  115, 0x0000 }, {  115, 0x0000 }, {  115, 0x0400 },
+};
+
+static int
+hkscs2001_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 2) {
+    const Summary16 *summary = NULL;
+    if (wc < 0x9f00) {
+      if (wc < 0x6900) {
+        if (wc >= 0x3500 && wc < 0x3560)
+          summary = &hkscs2001_uni2indx_page35[(wc>>4)-0x350];
+        else if (wc >= 0x3c00 && wc < 0x3ee0)
+          summary = &hkscs2001_uni2indx_page3c[(wc>>4)-0x3c0];
+        else if (wc >= 0x4000 && wc < 0x4080)
+          summary = &hkscs2001_uni2indx_page40[(wc>>4)-0x400];
+        else if (wc >= 0x4200 && wc < 0x42b0)
+          summary = &hkscs2001_uni2indx_page42[(wc>>4)-0x420];
+        else if (wc >= 0x4b00 && wc < 0x4c90)
+          summary = &hkscs2001_uni2indx_page4b[(wc>>4)-0x4b0];
+        else if (wc >= 0x4e00 && wc < 0x51b0)
+          summary = &hkscs2001_uni2indx_page4e[(wc>>4)-0x4e0];
+        else if (wc >= 0x5300 && wc < 0x5440)
+          summary = &hkscs2001_uni2indx_page53[(wc>>4)-0x530];
+        else if (wc >= 0x5700 && wc < 0x58e0)
+          summary = &hkscs2001_uni2indx_page57[(wc>>4)-0x570];
+        else if (wc >= 0x5a00 && wc < 0x5fd0)
+          summary = &hkscs2001_uni2indx_page5a[(wc>>4)-0x5a0];
+        else if (wc >= 0x6100 && wc < 0x6130)
+          summary = &hkscs2001_uni2indx_page61[(wc>>4)-0x610];
+        else if (wc >= 0x6500 && wc < 0x6590)
+          summary = &hkscs2001_uni2indx_page65[(wc>>4)-0x650];
+        else if (wc >= 0x6700 && wc < 0x6770)
+          summary = &hkscs2001_uni2indx_page67[(wc>>4)-0x670];
+      } else {
+        if (wc >= 0x6900 && wc < 0x6a70)
+          summary = &hkscs2001_uni2indx_page69[(wc>>4)-0x690];
+        else if (wc >= 0x6c00 && wc < 0x6e00)
+          summary = &hkscs2001_uni2indx_page6c[(wc>>4)-0x6c0];
+        else if (wc >= 0x7000 && wc < 0x74c0)
+          summary = &hkscs2001_uni2indx_page70[(wc>>4)-0x700];
+        else if (wc >= 0x7600 && wc < 0x78f0)
+          summary = &hkscs2001_uni2indx_page76[(wc>>4)-0x760];
+        else if (wc >= 0x7a00 && wc < 0x7e70)
+          summary = &hkscs2001_uni2indx_page7a[(wc>>4)-0x7a0];
+        else if (wc >= 0x8200 && wc < 0x8300)
+          summary = &hkscs2001_uni2indx_page82[(wc>>4)-0x820];
+        else if (wc >= 0x8500 && wc < 0x8610)
+          summary = &hkscs2001_uni2indx_page85[(wc>>4)-0x850];
+        else if (wc >= 0x8800 && wc < 0x88a0)
+          summary = &hkscs2001_uni2indx_page88[(wc>>4)-0x880];
+        else if (wc >= 0x8b00 && wc < 0x8b90)
+          summary = &hkscs2001_uni2indx_page8b[(wc>>4)-0x8b0];
+        else if (wc >= 0x8e00 && wc < 0x8fd0)
+          summary = &hkscs2001_uni2indx_page8e[(wc>>4)-0x8e0];
+        else if (wc >= 0x9100 && wc < 0x9400)
+          summary = &hkscs2001_uni2indx_page91[(wc>>4)-0x910];
+        else if (wc >= 0x9700 && wc < 0x99f0)
+          summary = &hkscs2001_uni2indx_page97[(wc>>4)-0x970];
+      }
+    } else {
+      if (wc < 0x25600) {
+        if (wc >= 0x9f00 && wc < 0x9fb0)
+          summary = &hkscs2001_uni2indx_page9f[(wc>>4)-0x9f0];
+        else if (wc >= 0x21400 && wc < 0x21440)
+          summary = &hkscs2001_uni2indx_page214[(wc>>4)-0x2140];
+        else if (wc >= 0x21900 && wc < 0x21990)
+          summary = &hkscs2001_uni2indx_page219[(wc>>4)-0x2190];
+        else if (wc >= 0x21d00 && wc < 0x21dc0)
+          summary = &hkscs2001_uni2indx_page21d[(wc>>4)-0x21d0];
+        else if (wc >= 0x22000 && wc < 0x22080)
+          summary = &hkscs2001_uni2indx_page220[(wc>>4)-0x2200];
+        else if (wc >= 0x22700 && wc < 0x22720)
+          summary = &hkscs2001_uni2indx_page227[(wc>>4)-0x2270];
+        else if (wc >= 0x23200 && wc < 0x23400)
+          summary = &hkscs2001_uni2indx_page232[(wc>>4)-0x2320];
+        else if (wc >= 0x23c00 && wc < 0x23c70)
+          summary = &hkscs2001_uni2indx_page23c[(wc>>4)-0x23c0];
+        else if (wc >= 0x24100 && wc < 0x24150)
+          summary = &hkscs2001_uni2indx_page241[(wc>>4)-0x2410];
+        else if (wc >= 0x24500 && wc < 0x24510)
+          summary = &hkscs2001_uni2indx_page245[(wc>>4)-0x2450];
+        else if (wc >= 0x24900 && wc < 0x24a20)
+          summary = &hkscs2001_uni2indx_page249[(wc>>4)-0x2490];
+        else if (wc >= 0x25100 && wc < 0x251d0)
+          summary = &hkscs2001_uni2indx_page251[(wc>>4)-0x2510];
+      } else {
+        if (wc >= 0x25600 && wc < 0x256a0)
+          summary = &hkscs2001_uni2indx_page256[(wc>>4)-0x2560];
+        else if (wc >= 0x25c00 && wc < 0x25d40)
+          summary = &hkscs2001_uni2indx_page25c[(wc>>4)-0x25c0];
+        else if (wc >= 0x26b00 && wc < 0x26b20)
+          summary = &hkscs2001_uni2indx_page26b[(wc>>4)-0x26b0];
+        else if (wc >= 0x26d00 && wc < 0x26d80)
+          summary = &hkscs2001_uni2indx_page26d[(wc>>4)-0x26d0];
+        else if (wc >= 0x26f00 && wc < 0x26fc0)
+          summary = &hkscs2001_uni2indx_page26f[(wc>>4)-0x26f0];
+        else if (wc >= 0x27100 && wc < 0x27110)
+          summary = &hkscs2001_uni2indx_page271[(wc>>4)-0x2710];
+        else if (wc >= 0x28700 && wc < 0x28710)
+          summary = &hkscs2001_uni2indx_page287[(wc>>4)-0x2870];
+        else if (wc >= 0x28900 && wc < 0x28af0)
+          summary = &hkscs2001_uni2indx_page289[(wc>>4)-0x2890];
+        else if (wc >= 0x28d00 && wc < 0x28dc0)
+          summary = &hkscs2001_uni2indx_page28d[(wc>>4)-0x28d0];
+        else if (wc >= 0x29900 && wc < 0x29950)
+          summary = &hkscs2001_uni2indx_page299[(wc>>4)-0x2990];
+        else if (wc >= 0x29c00 && wc < 0x29c80)
+          summary = &hkscs2001_uni2indx_page29c[(wc>>4)-0x29c0];
+        else if (wc >= 0x2a100 && wc < 0x2a2c0)
+          summary = &hkscs2001_uni2indx_page2a1[(wc>>4)-0x2a10];
+      }
+    }
+    if (summary) {
+      unsigned short used = summary->used;
+      unsigned int i = wc & 0x0f;
+      if (used & ((unsigned short) 1 << i)) {
+        unsigned short c;
+        /* Keep in `used' only the bits 0..i-1. */
+        used &= ((unsigned short) 1 << i) - 1;
+        /* Add `summary->indx' and the number of bits set in `used'. */
+        used = (used & 0x5555) + ((used & 0xaaaa) >> 1);
+        used = (used & 0x3333) + ((used & 0xcccc) >> 2);
+        used = (used & 0x0f0f) + ((used & 0xf0f0) >> 4);
+        used = (used & 0x00ff) + (used >> 8);
+        c = hkscs2001_2charset[summary->indx + used];
+        r[0] = (c >> 8); r[1] = (c & 0xff);
+        return 2;
+      }
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/hkscs2004.h b/graf2d/win32gdk/gdk/src/iconv/hkscs2004.h
new file mode 100644
index 00000000000..d5ab99748ca
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/hkscs2004.h
@@ -0,0 +1,679 @@
+/*
+ * Copyright (C) 1999-2006 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * HKSCS:2004
+ */
+
+static const unsigned short hkscs2004_2uni_page87[58] = {
+  /* 0x87 */
+  0x0af0, 0x1032, 0x0d03, 0x0ca6, 0x0c78, 0x4167, 0x1177, 0x0cb3,
+  0x44b1, 0x10e2, 0x44c5, 0x0595, 0x0e36, 0x0e44, 0x1047, 0x1040,
+  0x39bf, 0x3417, 0x4252, 0x3f8b, 0x40d2, 0x1057, 0x4d51, 0x0e4f,
+  0x0cda, 0x1085, 0x446c, 0x1107, 0x0fa4, 0x0da1, 0x3d23, 0x1e25,
+  0x3c54, 0x2d63, 0x3606, 0x3761, 0x1a4d, 0x13fb, 0x28fd, 0x2195,
+  0x141d, 0x47b9, 0x06f4, 0x2534, 0x43ef, 0x16db, 0x2e5e, 0x15a4,
+  0x0125, 0x4bb0, 0x15d1, 0x16b7, 0x17fc, 0x1b6e, 0x2393, 0x4a45,
+  0x1f61, 0x1f9d,
+};
+static const unsigned short hkscs2004_2uni_page8c[189] = {
+  /* 0x8c */
+  0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd,
+  0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd,
+  0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd,
+  0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd,
+  0x28fd, 0x28fd, 0x2b6f, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd,
+  0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd,
+  0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd,
+  0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd,
+  0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd,
+  0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd,
+  0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd,
+  0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd,
+  0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd,
+  0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd,
+  0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd, 0x28fd,
+  0x28fd, 0x1ae7, 0x28fd, 0x1c57, 0x20ca, 0x0688, 0x0bc3, 0x3256,
+  0x3196, 0x0a9a, 0x0c36, 0x28fd, 0x17d5, 0x351a, 0x24f9, 0x1778,
+  0x0612, 0x3351, 0x1878, 0x27b2, 0x1d57, 0x0c58, 0x38ec, 0x2f23,
+  0x1077, 0x0478, 0x004a, 0x29a4, 0x3e41, 0x24cc, 0x12b4, 0x2a39,
+  0x14bf, 0x226c, 0x2656, 0x49fa, 0x193b,
+  /* 0x8d */
+  0x2c9f, 0x28fd, 0x30c1, 0x466d, 0x0902, 0x0dbb, 0x4879, 0x0707,
+  0x27b3, 0x4cb5, 0x08f8, 0x02d6, 0x0df7, 0x3e46, 0x097c, 0x45b2,
+  0x42ff, 0x0c6d, 0x03d4, 0x3b9a, 0x0c61, 0x0c1b, 0x1189, 0x107b,
+  0x1176, 0x0cea, 0x07c8, 0x3a0f, 0x0161, 0x0bde, 0x0bbd, 0x09ed,
+};
+
+static const ucs4_t hkscs2004_2uni_upages[78] = {
+  0x03400, 0x03600, 0x03700, 0x03800, 0x03900, 0x03b00, 0x03d00, 0x03f00,
+  0x04000, 0x04100, 0x04300, 0x04400, 0x04500, 0x04600, 0x04700, 0x04a00,
+  0x04c00, 0x04d00, 0x04f00, 0x05600, 0x05900, 0x05a00, 0x05b00, 0x05c00,
+  0x05d00, 0x05f00, 0x06600, 0x06700, 0x06e00, 0x07100, 0x07200, 0x07400,
+  0x07900, 0x07d00, 0x08100, 0x08500, 0x08a00, 0x09700, 0x09800, 0x09f00,
+  0x0ff00, 0x20100, 0x20200, 0x20a00, 0x20b00, 0x21a00, 0x21d00, 0x21e00,
+  0x22100, 0x22700, 0x23200, 0x23500, 0x23600, 0x23b00, 0x23e00, 0x23f00,
+  0x24000, 0x24200, 0x24b00, 0x25400, 0x25a00, 0x26b00, 0x26c00, 0x26e00,
+  0x27000, 0x27200, 0x27300, 0x27b00, 0x27c00, 0x28600, 0x28900, 0x28b00,
+  0x29000, 0x29800, 0x29900, 0x29e00, 0x2a100, 0x2a300,
+};
+
+static int
+hkscs2004_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 == 0x87) || (c1 >= 0x8c && c1 <= 0x8d)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if ((c2 >= 0x40 && c2 < 0x7f) || (c2 >= 0xa1 && c2 < 0xff)) {
+        unsigned int i = 157 * (c1 - 0x80) + (c2 - (c2 >= 0xa1 ? 0x62 : 0x40));
+        ucs4_t wc = 0xfffd;
+        unsigned short swc;
+        if (i < 1884) {
+          if (i < 1157)
+            swc = hkscs2004_2uni_page87[i-1099],
+            wc = hkscs2004_2uni_upages[swc>>8] | (swc & 0xff);
+        } else {
+          if (i < 2073)
+            swc = hkscs2004_2uni_page8c[i-1884],
+            wc = hkscs2004_2uni_upages[swc>>8] | (swc & 0xff);
+        }
+        if (wc != 0xfffd) {
+          *pwc = wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned short hkscs2004_2charset[123] = {
+  0x8cf4, 0x8770, 0x8d5c, 0x8d4b, 0x8d52, 0x8cf3, 0x874b, 0x8cea,
+  0x8cdf, 0x876a, 0x8d47, 0x8d5a, 0x8d4a, 0x8d44, 0x8d4e, 0x8d5f,
+  0x8ce3, 0x8740, 0x8d5e, 0x8ce0, 0x8d5d, 0x8d55, 0x8ce4, 0x8cef,
+  0x8d54, 0x8d51, 0x8744, 0x8743, 0x8747, 0x8758, 0x8d59, 0x8742,
+  0x875d, 0x8d45, 0x8d4c, 0x874c, 0x874d, 0x8757, 0x875c, 0x8741,
+  0x874f, 0x874e, 0x8755, 0x8cf2, 0x8d57, 0x8759, 0x8749, 0x875b,
+  0x8d58, 0x8746, 0x8d56, 0x8cf8, 0x8765, 0x8768, 0x8cfa, 0x876f,
+  0x8772, 0x8773, 0x876d, 0x8ce9, 0x8ce6, 0x8774, 0x8cec, 0x8cfe,
+  0x8764, 0x8cdb, 0x8775, 0x8cdd, 0x8cee, 0x875f, 0x8778, 0x8779,
+  0x8cde, 0x8767, 0x8cfb, 0x8776, 0x8cf7, 0x8ce8, 0x876b, 0x8cfc,
+  0x8ced, 0x8d48, 0x8cf5, 0x8cf9, 0x8c62, 0x8d40, 0x8761, 0x876e,
+  0x8cf1, 0x8d42, 0x8ce2, 0x8ce1, 0x8ceb, 0x8751, 0x8ce7, 0x8762,
+  0x8763, 0x8cf0, 0x8750, 0x8d5b, 0x8d53, 0x8760, 0x875e, 0x8cf6,
+  0x8d4d, 0x8753, 0x8754, 0x8745, 0x8752, 0x8d50, 0x876c, 0x875a,
+  0x8748, 0x874a, 0x8d4f, 0x8d43, 0x8769, 0x8d46, 0x8cfd, 0x8777,
+  0x8771, 0x8d49, 0x8756,
+};
+
+static const Summary16 hkscs2004_uni2indx_page34[5] = {
+  /* 0x3400 */
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0400 },
+};
+static const Summary16 hkscs2004_uni2indx_page36[56] = {
+  /* 0x3600 */
+  {    1, 0x0000 }, {    1, 0x0000 }, {    1, 0x0020 }, {    2, 0x0000 },
+  {    2, 0x0000 }, {    2, 0x0000 }, {    2, 0x0002 }, {    3, 0x0000 },
+  {    3, 0x0000 }, {    3, 0x0000 }, {    3, 0x0000 }, {    3, 0x0000 },
+  {    3, 0x0000 }, {    3, 0x0000 }, {    3, 0x0000 }, {    3, 0x0000 },
+  /* 0x3700 */
+  {    3, 0x0000 }, {    3, 0x0000 }, {    3, 0x0000 }, {    3, 0x0000 },
+  {    3, 0x0000 }, {    3, 0x0000 }, {    3, 0x0000 }, {    3, 0x0000 },
+  {    3, 0x0000 }, {    3, 0x0000 }, {    3, 0x0000 }, {    3, 0x0000 },
+  {    3, 0x0000 }, {    3, 0x0040 }, {    4, 0x0000 }, {    4, 0x0000 },
+  /* 0x3800 */
+  {    4, 0x0000 }, {    4, 0x0000 }, {    4, 0x0000 }, {    4, 0x0000 },
+  {    4, 0x0000 }, {    4, 0x0000 }, {    4, 0x0000 }, {    4, 0x0000 },
+  {    4, 0x0000 }, {    4, 0x0000 }, {    4, 0x0000 }, {    4, 0x0000 },
+  {    4, 0x0000 }, {    4, 0x0010 }, {    5, 0x0000 }, {    5, 0x0000 },
+  /* 0x3900 */
+  {    5, 0x0000 }, {    5, 0x0000 }, {    5, 0x0000 }, {    5, 0x0000 },
+  {    5, 0x0000 }, {    5, 0x0000 }, {    5, 0x0000 }, {    5, 0x0100 },
+};
+static const Summary16 hkscs2004_uni2indx_page3b[10] = {
+  /* 0x3b00 */
+  {    6, 0x0000 }, {    6, 0x0000 }, {    6, 0x0000 }, {    6, 0x0000 },
+  {    6, 0x0000 }, {    6, 0x0000 }, {    6, 0x0000 }, {    6, 0x0000 },
+  {    6, 0x0000 }, {    6, 0x0020 },
+};
+static const Summary16 hkscs2004_uni2indx_page3d[16] = {
+  /* 0x3d00 */
+  {    7, 0x0000 }, {    7, 0x0004 }, {    8, 0x0000 }, {    8, 0x0000 },
+  {    8, 0x0000 }, {    8, 0x0000 }, {    8, 0x0000 }, {    8, 0x0000 },
+  {    8, 0x0100 }, {    9, 0x0000 }, {    9, 0x0000 }, {    9, 0x0000 },
+  {    9, 0x0000 }, {    9, 0x0000 }, {    9, 0x0000 }, {    9, 0x0010 },
+};
+static const Summary16 hkscs2004_uni2indx_page3f[47] = {
+  /* 0x3f00 */
+  {   10, 0x0080 }, {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 },
+  {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 },
+  {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 },
+  {   11, 0x0100 }, {   12, 0x0000 }, {   12, 0x0000 }, {   12, 0x0000 },
+  /* 0x4000 */
+  {   12, 0x0000 }, {   12, 0x0000 }, {   12, 0x0000 }, {   12, 0x0000 },
+  {   12, 0x0000 }, {   12, 0x0000 }, {   12, 0x0000 }, {   12, 0x0000 },
+  {   12, 0x0000 }, {   12, 0x0000 }, {   12, 0x0000 }, {   12, 0x0000 },
+  {   12, 0x0000 }, {   12, 0x0000 }, {   12, 0x0000 }, {   12, 0x0100 },
+  /* 0x4100 */
+  {   13, 0x0004 }, {   14, 0x0000 }, {   14, 0x0000 }, {   14, 0x0000 },
+  {   14, 0x0000 }, {   14, 0x0000 }, {   14, 0x0000 }, {   14, 0x1000 },
+  {   15, 0x0000 }, {   15, 0x0000 }, {   15, 0x0000 }, {   15, 0x0000 },
+  {   15, 0x0000 }, {   15, 0x0000 }, {   15, 0x2000 },
+};
+static const Summary16 hkscs2004_uni2indx_page43[69] = {
+  /* 0x4300 */
+  {   16, 0x0000 }, {   16, 0x0000 }, {   16, 0x0000 }, {   16, 0x0000 },
+  {   16, 0x0000 }, {   16, 0x0000 }, {   16, 0x0000 }, {   16, 0x0000 },
+  {   16, 0x0000 }, {   16, 0x0400 }, {   17, 0x0000 }, {   17, 0x0000 },
+  {   17, 0x0000 }, {   17, 0x0000 }, {   17, 0x0000 }, {   17, 0x0001 },
+  /* 0x4400 */
+  {   18, 0x0000 }, {   18, 0x0000 }, {   18, 0x0000 }, {   18, 0x0000 },
+  {   18, 0x0000 }, {   18, 0x0000 }, {   18, 0x0000 }, {   18, 0x0000 },
+  {   18, 0x0000 }, {   18, 0x0000 }, {   18, 0x0000 }, {   18, 0x2000 },
+  {   19, 0x0008 }, {   20, 0x4000 }, {   21, 0x0000 }, {   21, 0x0000 },
+  /* 0x4500 */
+  {   21, 0x0000 }, {   21, 0x0800 }, {   22, 0x0000 }, {   22, 0x0040 },
+  {   23, 0x0000 }, {   23, 0x0100 }, {   24, 0x2002 }, {   26, 0x0100 },
+  {   27, 0x0000 }, {   27, 0x0000 }, {   27, 0x0040 }, {   28, 0x0008 },
+  {   29, 0x0000 }, {   29, 0x0400 }, {   30, 0x0400 }, {   31, 0x0000 },
+  /* 0x4600 */
+  {   31, 0x0008 }, {   32, 0x0000 }, {   32, 0x0000 }, {   32, 0x0000 },
+  {   32, 0x0000 }, {   32, 0x0000 }, {   32, 0x0000 }, {   32, 0x0000 },
+  {   32, 0x0000 }, {   32, 0x0000 }, {   32, 0x0002 }, {   33, 0x0800 },
+  {   34, 0x0000 }, {   34, 0x0000 }, {   34, 0x0000 }, {   34, 0x0080 },
+  /* 0x4700 */
+  {   35, 0x0000 }, {   35, 0x0000 }, {   35, 0x0000 }, {   35, 0x0040 },
+  {   36, 0x8010 },
+};
+static const Summary16 hkscs2004_uni2indx_page4a[11] = {
+  /* 0x4a00 */
+  {   38, 0x0000 }, {   38, 0x0000 }, {   38, 0x0000 }, {   38, 0x0000 },
+  {   38, 0x0000 }, {   38, 0x0000 }, {   38, 0x0000 }, {   38, 0x0000 },
+  {   38, 0x0000 }, {   38, 0x0000 }, {   38, 0x0010 },
+};
+static const Summary16 hkscs2004_uni2indx_page4c[25] = {
+  /* 0x4c00 */
+  {   39, 0x0000 }, {   39, 0x0000 }, {   39, 0x0000 }, {   39, 0x0004 },
+  {   40, 0x0081 }, {   42, 0x0080 }, {   43, 0x0000 }, {   43, 0x0880 },
+  {   45, 0x0020 }, {   46, 0x0000 }, {   46, 0x0000 }, {   46, 0x0000 },
+  {   46, 0x0000 }, {   46, 0x0000 }, {   46, 0x0004 }, {   47, 0x0000 },
+  /* 0x4d00 */
+  {   47, 0x0080 }, {   48, 0x0000 }, {   48, 0x0000 }, {   48, 0x0000 },
+  {   48, 0x0000 }, {   48, 0x0000 }, {   48, 0x0000 }, {   48, 0x00c0 },
+  {   50, 0x0200 },
+};
+static const Summary16 hkscs2004_uni2indx_page4f[12] = {
+  /* 0x4f00 */
+  {   51, 0x0000 }, {   51, 0x0000 }, {   51, 0x0000 }, {   51, 0x0000 },
+  {   51, 0x0000 }, {   51, 0x0000 }, {   51, 0x0000 }, {   51, 0x0000 },
+  {   51, 0x0000 }, {   51, 0x0000 }, {   51, 0x0000 }, {   51, 0x0010 },
+};
+static const Summary16 hkscs2004_uni2indx_page56[16] = {
+  /* 0x5600 */
+  {   52, 0x0000 }, {   52, 0x0000 }, {   52, 0x0000 }, {   52, 0x0000 },
+  {   52, 0x0000 }, {   52, 0x0000 }, {   52, 0x0000 }, {   52, 0x0000 },
+  {   52, 0x0000 }, {   52, 0x0000 }, {   52, 0x0000 }, {   52, 0x0000 },
+  {   52, 0x0000 }, {   52, 0x0000 }, {   52, 0x0000 }, {   52, 0x0800 },
+};
+static const Summary16 hkscs2004_uni2indx_page59[72] = {
+  /* 0x5900 */
+  {   53, 0x0000 }, {   53, 0x2000 }, {   54, 0x0000 }, {   54, 0x0000 },
+  {   54, 0x0000 }, {   54, 0x0000 }, {   54, 0x0000 }, {   54, 0x0000 },
+  {   54, 0x0000 }, {   54, 0x0000 }, {   54, 0x0000 }, {   54, 0x8000 },
+  {   55, 0x0000 }, {   55, 0x0000 }, {   55, 0x0000 }, {   55, 0x0000 },
+  /* 0x5a00 */
+  {   55, 0x0000 }, {   55, 0x0000 }, {   55, 0x0000 }, {   55, 0x0000 },
+  {   55, 0x0000 }, {   55, 0x0000 }, {   55, 0x0000 }, {   55, 0x0000 },
+  {   55, 0x0000 }, {   55, 0x0000 }, {   55, 0x0010 }, {   56, 0x0000 },
+  {   56, 0x0000 }, {   56, 0x0002 }, {   57, 0x0000 }, {   57, 0x0000 },
+  /* 0x5b00 */
+  {   57, 0x0000 }, {   57, 0x0000 }, {   57, 0x0000 }, {   57, 0x0000 },
+  {   57, 0x0000 }, {   57, 0x0000 }, {   57, 0x0000 }, {   57, 0x0000 },
+  {   57, 0x0000 }, {   57, 0x0000 }, {   57, 0x0000 }, {   57, 0x0080 },
+  {   58, 0x0000 }, {   58, 0x0800 }, {   59, 0x0000 }, {   59, 0x0000 },
+  /* 0x5c00 */
+  {   59, 0x0000 }, {   59, 0x0000 }, {   59, 0x0000 }, {   59, 0x0000 },
+  {   59, 0x0000 }, {   59, 0x0000 }, {   59, 0x0000 }, {   59, 0x0100 },
+  {   60, 0x0000 }, {   60, 0x0000 }, {   60, 0x0000 }, {   60, 0x0000 },
+  {   60, 0x0000 }, {   60, 0x0020 }, {   61, 0x0000 }, {   61, 0x1000 },
+  /* 0x5d00 */
+  {   62, 0x0000 }, {   62, 0x0000 }, {   62, 0x0000 }, {   62, 0x0000 },
+  {   62, 0x0000 }, {   62, 0x0000 }, {   62, 0x0000 }, {   62, 0x0100 },
+};
+static const Summary16 hkscs2004_uni2indx_page5f[4] = {
+  /* 0x5f00 */
+  {   63, 0x0000 }, {   63, 0x0000 }, {   63, 0x0000 }, {   63, 0x0800 },
+};
+static const Summary16 hkscs2004_uni2indx_page66[23] = {
+  /* 0x6600 */
+  {   64, 0x0000 }, {   64, 0x0000 }, {   64, 0x0000 }, {   64, 0x0000 },
+  {   64, 0x2000 }, {   65, 0x0000 }, {   65, 0x0000 }, {   65, 0x0000 },
+  {   65, 0x0000 }, {   65, 0x0000 }, {   65, 0x0000 }, {   65, 0x0000 },
+  {   65, 0x0000 }, {   65, 0x0000 }, {   65, 0x0080 }, {   66, 0x0000 },
+  /* 0x6700 */
+  {   66, 0x0000 }, {   66, 0x0000 }, {   66, 0x0000 }, {   66, 0x0000 },
+  {   66, 0x0000 }, {   66, 0x0000 }, {   66, 0x4000 },
+};
+static const Summary16 hkscs2004_uni2indx_page6e[6] = {
+  /* 0x6e00 */
+  {   67, 0x0000 }, {   67, 0x0000 }, {   67, 0x0000 }, {   67, 0x0000 },
+  {   67, 0x0000 }, {   67, 0x0080 },
+};
+static const Summary16 hkscs2004_uni2indx_page71[19] = {
+  /* 0x7100 */
+  {   68, 0x0000 }, {   68, 0x0000 }, {   68, 0x0000 }, {   68, 0x0000 },
+  {   68, 0x0000 }, {   68, 0x0080 }, {   69, 0x0000 }, {   69, 0x0000 },
+  {   69, 0x0000 }, {   69, 0x0000 }, {   69, 0x0000 }, {   69, 0x0000 },
+  {   69, 0x0000 }, {   69, 0x0000 }, {   69, 0x0000 }, {   69, 0x0000 },
+  /* 0x7200 */
+  {   69, 0x0000 }, {   69, 0x0000 }, {   69, 0x0020 },
+};
+static const Summary16 hkscs2004_uni2indx_page74[10] = {
+  /* 0x7400 */
+  {   70, 0x0000 }, {   70, 0x0000 }, {   70, 0x0000 }, {   70, 0x0000 },
+  {   70, 0x0000 }, {   70, 0x0000 }, {   70, 0x0002 }, {   71, 0x0000 },
+  {   71, 0x0000 }, {   71, 0x2000 },
+};
+static const Summary16 hkscs2004_uni2indx_page79[13] = {
+  /* 0x7900 */
+  {   72, 0x0000 }, {   72, 0x0000 }, {   72, 0x0000 }, {   72, 0x0000 },
+  {   72, 0x0000 }, {   72, 0x0000 }, {   72, 0x0000 }, {   72, 0x0000 },
+  {   72, 0x0000 }, {   72, 0x0000 }, {   72, 0x0000 }, {   72, 0x0000 },
+  {   72, 0x0400 },
+};
+static const Summary16 hkscs2004_uni2indx_page7d[10] = {
+  /* 0x7d00 */
+  {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0000 },
+  {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0000 }, {   73, 0x0000 },
+  {   73, 0x0000 }, {   73, 0x0020 },
+};
+static const Summary16 hkscs2004_uni2indx_page81[7] = {
+  /* 0x8100 */
+  {   74, 0x0000 }, {   74, 0x0000 }, {   74, 0x0000 }, {   74, 0x0000 },
+  {   74, 0x0000 }, {   74, 0x0000 }, {   74, 0x1000 },
+};
+static const Summary16 hkscs2004_uni2indx_page85[10] = {
+  /* 0x8500 */
+  {   75, 0x0000 }, {   75, 0x0000 }, {   75, 0x0000 }, {   75, 0x0000 },
+  {   75, 0x0000 }, {   75, 0x0000 }, {   75, 0x0000 }, {   75, 0x0000 },
+  {   75, 0x0000 }, {   75, 0x0008 },
+};
+static const Summary16 hkscs2004_uni2indx_page8a[16] = {
+  /* 0x8a00 */
+  {   76, 0x0000 }, {   76, 0x0000 }, {   76, 0x0000 }, {   76, 0x0000 },
+  {   76, 0x0000 }, {   76, 0x0000 }, {   76, 0x0000 }, {   76, 0x0000 },
+  {   76, 0x0000 }, {   76, 0x0000 }, {   76, 0x0000 }, {   76, 0x0000 },
+  {   76, 0x1000 }, {   77, 0x0000 }, {   77, 0x0000 }, {   77, 0x0200 },
+};
+static const Summary16 hkscs2004_uni2indx_page97[22] = {
+  /* 0x9700 */
+  {   78, 0x0000 }, {   78, 0x0000 }, {   78, 0x0000 }, {   78, 0x0010 },
+  {   79, 0x0000 }, {   79, 0x0000 }, {   79, 0x0000 }, {   79, 0x0000 },
+  {   79, 0x0000 }, {   79, 0x0000 }, {   79, 0x0000 }, {   79, 0x0000 },
+  {   79, 0x0000 }, {   79, 0x0000 }, {   79, 0x0000 }, {   79, 0x0000 },
+  /* 0x9800 */
+  {   79, 0x0000 }, {   79, 0x0000 }, {   79, 0x0000 }, {   79, 0x0000 },
+  {   79, 0x0000 }, {   79, 0x0040 },
+};
+static const Summary16 hkscs2004_uni2indx_page9f[12] = {
+  /* 0x9f00 */
+  {   80, 0x0000 }, {   80, 0x0000 }, {   80, 0x0000 }, {   80, 0x0000 },
+  {   80, 0x0000 }, {   80, 0x0000 }, {   80, 0x0000 }, {   80, 0x0000 },
+  {   80, 0x0000 }, {   80, 0x0000 }, {   80, 0x0000 }, {   80, 0x000c },
+};
+static const Summary16 hkscs2004_uni2indx_page201[20] = {
+  /* 0x20100 */
+  {   82, 0x0000 }, {   82, 0x0000 }, {   82, 0x0000 }, {   82, 0x0000 },
+  {   82, 0x0000 }, {   82, 0x0000 }, {   82, 0x0000 }, {   82, 0x0000 },
+  {   82, 0x0000 }, {   82, 0x0000 }, {   82, 0x0010 }, {   83, 0x0000 },
+  {   83, 0x0000 }, {   83, 0x0000 }, {   83, 0x0000 }, {   83, 0x0000 },
+  /* 0x20200 */
+  {   83, 0x0000 }, {   83, 0x0000 }, {   83, 0x0000 }, {   83, 0x0200 },
+};
+static const Summary16 hkscs2004_uni2indx_page20a[26] = {
+  /* 0x20a00 */
+  {   84, 0x0000 }, {   84, 0x0000 }, {   84, 0x0000 }, {   84, 0x0000 },
+  {   84, 0x0000 }, {   84, 0x0000 }, {   84, 0x8000 }, {   85, 0x0000 },
+  {   85, 0x0000 }, {   85, 0x0000 }, {   85, 0x0000 }, {   85, 0x0000 },
+  {   85, 0x0000 }, {   85, 0x0000 }, {   85, 0x0000 }, {   85, 0x0000 },
+  /* 0x20b00 */
+  {   85, 0x0000 }, {   85, 0x0000 }, {   85, 0x0000 }, {   85, 0x0000 },
+  {   85, 0x0000 }, {   85, 0x0000 }, {   85, 0x0000 }, {   85, 0x0000 },
+  {   85, 0x0000 }, {   85, 0x8000 },
+};
+static const Summary16 hkscs2004_uni2indx_page21a[7] = {
+  /* 0x21a00 */
+  {   86, 0x0000 }, {   86, 0x0000 }, {   86, 0x0000 }, {   86, 0x0000 },
+  {   86, 0x0000 }, {   86, 0x0000 }, {   86, 0x0008 },
+};
+static const Summary16 hkscs2004_uni2indx_page21d[19] = {
+  /* 0x21d00 */
+  {   87, 0x0000 }, {   87, 0x0000 }, {   87, 0x0000 }, {   87, 0x0000 },
+  {   87, 0x0000 }, {   87, 0x4000 }, {   88, 0x0000 }, {   88, 0x0000 },
+  {   88, 0x0000 }, {   88, 0x0000 }, {   88, 0x0000 }, {   88, 0x0000 },
+  {   88, 0x0000 }, {   88, 0x0000 }, {   88, 0x0000 }, {   88, 0x0000 },
+  /* 0x21e00 */
+  {   88, 0x0000 }, {   88, 0x0000 }, {   88, 0x0008 },
+};
+static const Summary16 hkscs2004_uni2indx_page221[13] = {
+  /* 0x22100 */
+  {   89, 0x0000 }, {   89, 0x0000 }, {   89, 0x0000 }, {   89, 0x0000 },
+  {   89, 0x0000 }, {   89, 0x0000 }, {   89, 0x0000 }, {   89, 0x0000 },
+  {   89, 0x0000 }, {   89, 0x0000 }, {   89, 0x0000 }, {   89, 0x0000 },
+  {   89, 0x0002 },
+};
+static const Summary16 hkscs2004_uni2indx_page227[10] = {
+  /* 0x22700 */
+  {   90, 0x0000 }, {   90, 0x0000 }, {   90, 0x0000 }, {   90, 0x0000 },
+  {   90, 0x0000 }, {   90, 0x0000 }, {   90, 0x0000 }, {   90, 0x0000 },
+  {   90, 0x0000 }, {   90, 0x0040 },
+};
+static const Summary16 hkscs2004_uni2indx_page232[6] = {
+  /* 0x23200 */
+  {   91, 0x0000 }, {   91, 0x0000 }, {   91, 0x0000 }, {   91, 0x0000 },
+  {   91, 0x0000 }, {   91, 0x0040 },
+};
+static const Summary16 hkscs2004_uni2indx_page235[18] = {
+  /* 0x23500 */
+  {   92, 0x0000 }, {   92, 0x0000 }, {   92, 0x0000 }, {   92, 0x0000 },
+  {   92, 0x0000 }, {   92, 0x0002 }, {   93, 0x0000 }, {   93, 0x0000 },
+  {   93, 0x0000 }, {   93, 0x0000 }, {   93, 0x0000 }, {   93, 0x0000 },
+  {   93, 0x0000 }, {   93, 0x0000 }, {   93, 0x0000 }, {   93, 0x0000 },
+  /* 0x23600 */
+  {   93, 0x0000 }, {   93, 0x0080 },
+};
+static const Summary16 hkscs2004_uni2indx_page23b[2] = {
+  /* 0x23b00 */
+  {   94, 0x0000 }, {   94, 0x0400 },
+};
+static const Summary16 hkscs2004_uni2indx_page23e[47] = {
+  /* 0x23e00 */
+  {   95, 0x0040 }, {   96, 0x0000 }, {   96, 0x0000 }, {   96, 0x0000 },
+  {   96, 0x0000 }, {   96, 0x0000 }, {   96, 0x0000 }, {   96, 0x0000 },
+  {   96, 0x0000 }, {   96, 0x0000 }, {   96, 0x0000 }, {   96, 0x0000 },
+  {   96, 0x0000 }, {   96, 0x0000 }, {   96, 0x0000 }, {   96, 0x0000 },
+  /* 0x23f00 */
+  {   96, 0x0000 }, {   96, 0x0000 }, {   96, 0x0000 }, {   96, 0x0000 },
+  {   96, 0x0000 }, {   96, 0x0000 }, {   96, 0x0002 }, {   97, 0x0000 },
+  {   97, 0x0000 }, {   97, 0x0000 }, {   97, 0x0000 }, {   97, 0x0000 },
+  {   97, 0x0000 }, {   97, 0x0000 }, {   97, 0x0000 }, {   97, 0x0000 },
+  /* 0x24000 */
+  {   97, 0x0000 }, {   97, 0x0000 }, {   97, 0x0000 }, {   97, 0x0000 },
+  {   97, 0x0000 }, {   97, 0x0000 }, {   97, 0x0000 }, {   97, 0x0000 },
+  {   97, 0x0000 }, {   97, 0x0000 }, {   97, 0x0000 }, {   97, 0x0000 },
+  {   97, 0x0000 }, {   97, 0x0000 }, {   97, 0x1000 },
+};
+static const Summary16 hkscs2004_uni2indx_page242[12] = {
+  /* 0x24200 */
+  {   98, 0x0000 }, {   98, 0x0000 }, {   98, 0x0000 }, {   98, 0x0000 },
+  {   98, 0x0000 }, {   98, 0x0000 }, {   98, 0x0000 }, {   98, 0x0000 },
+  {   98, 0x0000 }, {   98, 0x0000 }, {   98, 0x0000 }, {   98, 0x8000 },
+};
+static const Summary16 hkscs2004_uni2indx_page24b[1] = {
+  /* 0x24b00 */
+  {   99, 0x8000 },
+};
+static const Summary16 hkscs2004_uni2indx_page254[10] = {
+  /* 0x25400 */
+  {  100, 0x0000 }, {  100, 0x0000 }, {  100, 0x0000 }, {  100, 0x0000 },
+  {  100, 0x0000 }, {  100, 0x0000 }, {  100, 0x0000 }, {  100, 0x0000 },
+  {  100, 0x0000 }, {  100, 0x0400 },
+};
+static const Summary16 hkscs2004_uni2indx_page25a[6] = {
+  /* 0x25a00 */
+  {  101, 0x0000 }, {  101, 0x0000 }, {  101, 0x0000 }, {  101, 0x0000 },
+  {  101, 0x0000 }, {  101, 0x0010 },
+};
+static const Summary16 hkscs2004_uni2indx_page26b[21] = {
+  /* 0x26b00 */
+  {  102, 0x0000 }, {  102, 0x0000 }, {  102, 0x0008 }, {  103, 0x0000 },
+  {  103, 0x0000 }, {  103, 0x0000 }, {  103, 0x0000 }, {  103, 0x0000 },
+  {  103, 0x0000 }, {  103, 0x0000 }, {  103, 0x0000 }, {  103, 0x0000 },
+  {  103, 0x0000 }, {  103, 0x0000 }, {  103, 0x0000 }, {  103, 0x0000 },
+  /* 0x26c00 */
+  {  103, 0x0000 }, {  103, 0x0000 }, {  103, 0x0000 }, {  103, 0x0000 },
+  {  103, 0x0042 },
+};
+static const Summary16 hkscs2004_uni2indx_page26e[9] = {
+  /* 0x26e00 */
+  {  105, 0x0000 }, {  105, 0x0000 }, {  105, 0x0000 }, {  105, 0x0000 },
+  {  105, 0x0000 }, {  105, 0x0000 }, {  105, 0x0000 }, {  105, 0x0000 },
+  {  105, 0x0800 },
+};
+static const Summary16 hkscs2004_uni2indx_page270[14] = {
+  /* 0x27000 */
+  {  106, 0x0000 }, {  106, 0x0000 }, {  106, 0x0000 }, {  106, 0x0000 },
+  {  106, 0x0000 }, {  106, 0x0000 }, {  106, 0x0000 }, {  106, 0x0000 },
+  {  106, 0x0000 }, {  106, 0x0000 }, {  106, 0x0000 }, {  106, 0x0000 },
+  {  106, 0x0000 }, {  106, 0x0004 },
+};
+static const Summary16 hkscs2004_uni2indx_page272[32] = {
+  /* 0x27200 */
+  {  107, 0x0000 }, {  107, 0x0000 }, {  107, 0x0000 }, {  107, 0x0000 },
+  {  107, 0x0000 }, {  107, 0x0000 }, {  107, 0x0080 }, {  108, 0x0000 },
+  {  108, 0x0000 }, {  108, 0x0000 }, {  108, 0x0000 }, {  108, 0x0000 },
+  {  108, 0x0000 }, {  108, 0x0000 }, {  108, 0x0000 }, {  108, 0x0000 },
+  /* 0x27300 */
+  {  108, 0x0000 }, {  108, 0x0000 }, {  108, 0x0000 }, {  108, 0x0000 },
+  {  108, 0x0000 }, {  108, 0x0004 }, {  109, 0x0000 }, {  109, 0x0000 },
+  {  109, 0x0000 }, {  109, 0x0000 }, {  109, 0x0000 }, {  109, 0x0000 },
+  {  109, 0x0000 }, {  109, 0x0000 }, {  109, 0x0000 }, {  109, 0x8000 },
+};
+static const Summary16 hkscs2004_uni2indx_page27b[29] = {
+  /* 0x27b00 */
+  {  110, 0x0000 }, {  110, 0x0000 }, {  110, 0x0000 }, {  110, 0x0000 },
+  {  110, 0x0000 }, {  110, 0x0000 }, {  110, 0x0000 }, {  110, 0x0000 },
+  {  110, 0x0000 }, {  110, 0x0000 }, {  110, 0x0000 }, {  110, 0x0000 },
+  {  110, 0x0000 }, {  110, 0x0000 }, {  110, 0x8000 }, {  111, 0x0000 },
+  /* 0x27c00 */
+  {  111, 0x0000 }, {  111, 0x0000 }, {  111, 0x0000 }, {  111, 0x0000 },
+  {  111, 0x0000 }, {  111, 0x0000 }, {  111, 0x1000 }, {  112, 0x0000 },
+  {  112, 0x0000 }, {  112, 0x0000 }, {  112, 0x0000 }, {  112, 0x0002 },
+  {  113, 0x0020 },
+};
+static const Summary16 hkscs2004_uni2indx_page286[12] = {
+  /* 0x28600 */
+  {  114, 0x0000 }, {  114, 0x0000 }, {  114, 0x0000 }, {  114, 0x0000 },
+  {  114, 0x0000 }, {  114, 0x0000 }, {  114, 0x0000 }, {  114, 0x0000 },
+  {  114, 0x0000 }, {  114, 0x0000 }, {  114, 0x0000 }, {  114, 0x0004 },
+};
+static const Summary16 hkscs2004_uni2indx_page289[7] = {
+  /* 0x28900 */
+  {  115, 0x0000 }, {  115, 0x0000 }, {  115, 0x0000 }, {  115, 0x0000 },
+  {  115, 0x0000 }, {  115, 0x0000 }, {  115, 0x2000 },
+};
+static const Summary16 hkscs2004_uni2indx_page28b[12] = {
+  /* 0x28b00 */
+  {  116, 0x0000 }, {  116, 0x0000 }, {  116, 0x0000 }, {  116, 0x0000 },
+  {  116, 0x0000 }, {  116, 0x0000 }, {  116, 0x0000 }, {  116, 0x0000 },
+  {  116, 0x0000 }, {  116, 0x0000 }, {  116, 0x0000 }, {  116, 0x0200 },
+};
+static const Summary16 hkscs2004_uni2indx_page290[8] = {
+  /* 0x29000 */
+  {  117, 0x0000 }, {  117, 0x0000 }, {  117, 0x0000 }, {  117, 0x0000 },
+  {  117, 0x0000 }, {  117, 0x0000 }, {  117, 0x0000 }, {  117, 0x0200 },
+};
+static const Summary16 hkscs2004_uni2indx_page298[21] = {
+  /* 0x29800 */
+  {  118, 0x0000 }, {  118, 0x0000 }, {  118, 0x0000 }, {  118, 0x0000 },
+  {  118, 0x0000 }, {  118, 0x0000 }, {  118, 0x0000 }, {  118, 0x0000 },
+  {  118, 0x0000 }, {  118, 0x0000 }, {  118, 0x0000 }, {  118, 0x0000 },
+  {  118, 0x0000 }, {  118, 0x0000 }, {  118, 0x0000 }, {  118, 0x0400 },
+  /* 0x29900 */
+  {  119, 0x0000 }, {  119, 0x0000 }, {  119, 0x0000 }, {  119, 0x0000 },
+  {  119, 0x0020 },
+};
+static const Summary16 hkscs2004_uni2indx_page29e[12] = {
+  /* 0x29e00 */
+  {  120, 0x0000 }, {  120, 0x0000 }, {  120, 0x0000 }, {  120, 0x0000 },
+  {  120, 0x0000 }, {  120, 0x0000 }, {  120, 0x0000 }, {  120, 0x0000 },
+  {  120, 0x0000 }, {  120, 0x0000 }, {  120, 0x0000 }, {  120, 0x0001 },
+};
+static const Summary16 hkscs2004_uni2indx_page2a1[12] = {
+  /* 0x2a100 */
+  {  121, 0x0000 }, {  121, 0x0000 }, {  121, 0x0000 }, {  121, 0x0000 },
+  {  121, 0x0000 }, {  121, 0x0000 }, {  121, 0x0000 }, {  121, 0x0000 },
+  {  121, 0x0000 }, {  121, 0x0000 }, {  121, 0x0000 }, {  121, 0x0020 },
+};
+static const Summary16 hkscs2004_uni2indx_page2a3[6] = {
+  /* 0x2a300 */
+  {  122, 0x0000 }, {  122, 0x0000 }, {  122, 0x0000 }, {  122, 0x0000 },
+  {  122, 0x0000 }, {  122, 0x0002 },
+};
+
+static int
+hkscs2004_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 2) {
+    const Summary16 *summary = NULL;
+    if (wc < 0x21a00) {
+      if (wc < 0x6e00) {
+        if (wc >= 0x3400 && wc < 0x3450)
+          summary = &hkscs2004_uni2indx_page34[(wc>>4)-0x340];
+        else if (wc >= 0x3600 && wc < 0x3980)
+          summary = &hkscs2004_uni2indx_page36[(wc>>4)-0x360];
+        else if (wc >= 0x3b00 && wc < 0x3ba0)
+          summary = &hkscs2004_uni2indx_page3b[(wc>>4)-0x3b0];
+        else if (wc >= 0x3d00 && wc < 0x3e00)
+          summary = &hkscs2004_uni2indx_page3d[(wc>>4)-0x3d0];
+        else if (wc >= 0x3f00 && wc < 0x41f0)
+          summary = &hkscs2004_uni2indx_page3f[(wc>>4)-0x3f0];
+        else if (wc >= 0x4300 && wc < 0x4750)
+          summary = &hkscs2004_uni2indx_page43[(wc>>4)-0x430];
+        else if (wc >= 0x4a00 && wc < 0x4ab0)
+          summary = &hkscs2004_uni2indx_page4a[(wc>>4)-0x4a0];
+        else if (wc >= 0x4c00 && wc < 0x4d90)
+          summary = &hkscs2004_uni2indx_page4c[(wc>>4)-0x4c0];
+        else if (wc >= 0x4f00 && wc < 0x4fc0)
+          summary = &hkscs2004_uni2indx_page4f[(wc>>4)-0x4f0];
+        else if (wc >= 0x5600 && wc < 0x5700)
+          summary = &hkscs2004_uni2indx_page56[(wc>>4)-0x560];
+        else if (wc >= 0x5900 && wc < 0x5d80)
+          summary = &hkscs2004_uni2indx_page59[(wc>>4)-0x590];
+        else if (wc >= 0x5f00 && wc < 0x5f40)
+          summary = &hkscs2004_uni2indx_page5f[(wc>>4)-0x5f0];
+        else if (wc >= 0x6600 && wc < 0x6770)
+          summary = &hkscs2004_uni2indx_page66[(wc>>4)-0x660];
+      } else {
+        if (wc >= 0x6e00 && wc < 0x6e60)
+          summary = &hkscs2004_uni2indx_page6e[(wc>>4)-0x6e0];
+        else if (wc >= 0x7100 && wc < 0x7230)
+          summary = &hkscs2004_uni2indx_page71[(wc>>4)-0x710];
+        else if (wc >= 0x7400 && wc < 0x74a0)
+          summary = &hkscs2004_uni2indx_page74[(wc>>4)-0x740];
+        else if (wc >= 0x7900 && wc < 0x79d0)
+          summary = &hkscs2004_uni2indx_page79[(wc>>4)-0x790];
+        else if (wc >= 0x7d00 && wc < 0x7da0)
+          summary = &hkscs2004_uni2indx_page7d[(wc>>4)-0x7d0];
+        else if (wc >= 0x8100 && wc < 0x8170)
+          summary = &hkscs2004_uni2indx_page81[(wc>>4)-0x810];
+        else if (wc >= 0x8500 && wc < 0x85a0)
+          summary = &hkscs2004_uni2indx_page85[(wc>>4)-0x850];
+        else if (wc >= 0x8a00 && wc < 0x8b00)
+          summary = &hkscs2004_uni2indx_page8a[(wc>>4)-0x8a0];
+        else if (wc >= 0x9700 && wc < 0x9860)
+          summary = &hkscs2004_uni2indx_page97[(wc>>4)-0x970];
+        else if (wc >= 0x9f00 && wc < 0x9fc0)
+          summary = &hkscs2004_uni2indx_page9f[(wc>>4)-0x9f0];
+        else if (wc >= 0x20100 && wc < 0x20240)
+          summary = &hkscs2004_uni2indx_page201[(wc>>4)-0x2010];
+        else if (wc >= 0x20a00 && wc < 0x20ba0)
+          summary = &hkscs2004_uni2indx_page20a[(wc>>4)-0x20a0];
+      }
+    } else {
+      if (wc < 0x26b00) {
+        if (wc >= 0x21a00 && wc < 0x21a70)
+          summary = &hkscs2004_uni2indx_page21a[(wc>>4)-0x21a0];
+        else if (wc >= 0x21d00 && wc < 0x21e30)
+          summary = &hkscs2004_uni2indx_page21d[(wc>>4)-0x21d0];
+        else if (wc >= 0x22100 && wc < 0x221d0)
+          summary = &hkscs2004_uni2indx_page221[(wc>>4)-0x2210];
+        else if (wc >= 0x22700 && wc < 0x227a0)
+          summary = &hkscs2004_uni2indx_page227[(wc>>4)-0x2270];
+        else if (wc >= 0x23200 && wc < 0x23260)
+          summary = &hkscs2004_uni2indx_page232[(wc>>4)-0x2320];
+        else if (wc >= 0x23500 && wc < 0x23620)
+          summary = &hkscs2004_uni2indx_page235[(wc>>4)-0x2350];
+        else if (wc >= 0x23b00 && wc < 0x23b20)
+          summary = &hkscs2004_uni2indx_page23b[(wc>>4)-0x23b0];
+        else if (wc >= 0x23e00 && wc < 0x240f0)
+          summary = &hkscs2004_uni2indx_page23e[(wc>>4)-0x23e0];
+        else if (wc >= 0x24200 && wc < 0x242c0)
+          summary = &hkscs2004_uni2indx_page242[(wc>>4)-0x2420];
+        else if (wc >= 0x24b00 && wc < 0x24b10)
+          summary = &hkscs2004_uni2indx_page24b[(wc>>4)-0x24b0];
+        else if (wc >= 0x25400 && wc < 0x254a0)
+          summary = &hkscs2004_uni2indx_page254[(wc>>4)-0x2540];
+        else if (wc >= 0x25a00 && wc < 0x25a60)
+          summary = &hkscs2004_uni2indx_page25a[(wc>>4)-0x25a0];
+      } else {
+        if (wc >= 0x26b00 && wc < 0x26c50)
+          summary = &hkscs2004_uni2indx_page26b[(wc>>4)-0x26b0];
+        else if (wc >= 0x26e00 && wc < 0x26e90)
+          summary = &hkscs2004_uni2indx_page26e[(wc>>4)-0x26e0];
+        else if (wc >= 0x27000 && wc < 0x270e0)
+          summary = &hkscs2004_uni2indx_page270[(wc>>4)-0x2700];
+        else if (wc >= 0x27200 && wc < 0x27400)
+          summary = &hkscs2004_uni2indx_page272[(wc>>4)-0x2720];
+        else if (wc >= 0x27b00 && wc < 0x27cd0)
+          summary = &hkscs2004_uni2indx_page27b[(wc>>4)-0x27b0];
+        else if (wc >= 0x28600 && wc < 0x286c0)
+          summary = &hkscs2004_uni2indx_page286[(wc>>4)-0x2860];
+        else if (wc >= 0x28900 && wc < 0x28970)
+          summary = &hkscs2004_uni2indx_page289[(wc>>4)-0x2890];
+        else if (wc >= 0x28b00 && wc < 0x28bc0)
+          summary = &hkscs2004_uni2indx_page28b[(wc>>4)-0x28b0];
+        else if (wc >= 0x29000 && wc < 0x29080)
+          summary = &hkscs2004_uni2indx_page290[(wc>>4)-0x2900];
+        else if (wc >= 0x29800 && wc < 0x29950)
+          summary = &hkscs2004_uni2indx_page298[(wc>>4)-0x2980];
+        else if (wc >= 0x29e00 && wc < 0x29ec0)
+          summary = &hkscs2004_uni2indx_page29e[(wc>>4)-0x29e0];
+        else if (wc >= 0x2a100 && wc < 0x2a1c0)
+          summary = &hkscs2004_uni2indx_page2a1[(wc>>4)-0x2a10];
+        else if (wc >= 0x2a300 && wc < 0x2a360)
+          summary = &hkscs2004_uni2indx_page2a3[(wc>>4)-0x2a30];
+      }
+    }
+    if (summary) {
+      unsigned short used = summary->used;
+      unsigned int i = wc & 0x0f;
+      if (used & ((unsigned short) 1 << i)) {
+        unsigned short c;
+        /* Keep in `used' only the bits 0..i-1. */
+        used &= ((unsigned short) 1 << i) - 1;
+        /* Add `summary->indx' and the number of bits set in `used'. */
+        used = (used & 0x5555) + ((used & 0xaaaa) >> 1);
+        used = (used & 0x3333) + ((used & 0xcccc) >> 2);
+        used = (used & 0x0f0f) + ((used & 0xf0f0) >> 4);
+        used = (used & 0x00ff) + (used >> 8);
+        c = hkscs2004_2charset[summary->indx + used];
+        r[0] = (c >> 8); r[1] = (c & 0xff);
+        return 2;
+      }
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/hp_roman8.h b/graf2d/win32gdk/gdk/src/iconv/hp_roman8.h
new file mode 100644
index 00000000000..da776ed0871
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/hp_roman8.h
@@ -0,0 +1,119 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * HP-ROMAN8
+ */
+
+static const unsigned short hp_roman8_2uni[96] = {
+  /* 0xa0 */
+  0x00a0, 0x00c0, 0x00c2, 0x00c8, 0x00ca, 0x00cb, 0x00ce, 0x00cf,
+  0x00b4, 0x02cb, 0x02c6, 0x00a8, 0x02dc, 0x00d9, 0x00db, 0x20a4,
+  /* 0xb0 */
+  0x00af, 0x00dd, 0x00fd, 0x00b0, 0x00c7, 0x00e7, 0x00d1, 0x00f1,
+  0x00a1, 0x00bf, 0x00a4, 0x00a3, 0x00a5, 0x00a7, 0x0192, 0x00a2,
+  /* 0xc0 */
+  0x00e2, 0x00ea, 0x00f4, 0x00fb, 0x00e1, 0x00e9, 0x00f3, 0x00fa,
+  0x00e0, 0x00e8, 0x00f2, 0x00f9, 0x00e4, 0x00eb, 0x00f6, 0x00fc,
+  /* 0xd0 */
+  0x00c5, 0x00ee, 0x00d8, 0x00c6, 0x00e5, 0x00ed, 0x00f8, 0x00e6,
+  0x00c4, 0x00ec, 0x00d6, 0x00dc, 0x00c9, 0x00ef, 0x00df, 0x00d4,
+  /* 0xe0 */
+  0x00c1, 0x00c3, 0x00e3, 0x00d0, 0x00f0, 0x00cd, 0x00cc, 0x00d3,
+  0x00d2, 0x00d5, 0x00f5, 0x0160, 0x0161, 0x00da, 0x0178, 0x00ff,
+  /* 0xf0 */
+  0x00de, 0x00fe, 0x00b7, 0x00b5, 0x00b6, 0x00be, 0x2014, 0x00bc,
+  0x00bd, 0x00aa, 0x00ba, 0x00ab, 0x25a0, 0x00bb, 0x00b1, 0xfffd,
+};
+
+static int
+hp_roman8_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0xa0) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = hp_roman8_2uni[c-0xa0];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char hp_roman8_page00[96] = {
+  0xa0, 0xb8, 0xbf, 0xbb, 0xba, 0xbc, 0x00, 0xbd, /* 0xa0-0xa7 */
+  0xab, 0x00, 0xf9, 0xfb, 0x00, 0x00, 0x00, 0xb0, /* 0xa8-0xaf */
+  0xb3, 0xfe, 0x00, 0x00, 0xa8, 0xf3, 0xf4, 0xf2, /* 0xb0-0xb7 */
+  0x00, 0x00, 0xfa, 0xfd, 0xf7, 0xf8, 0xf5, 0xb9, /* 0xb8-0xbf */
+  0xa1, 0xe0, 0xa2, 0xe1, 0xd8, 0xd0, 0xd3, 0xb4, /* 0xc0-0xc7 */
+  0xa3, 0xdc, 0xa4, 0xa5, 0xe6, 0xe5, 0xa6, 0xa7, /* 0xc8-0xcf */
+  0xe3, 0xb6, 0xe8, 0xe7, 0xdf, 0xe9, 0xda, 0x00, /* 0xd0-0xd7 */
+  0xd2, 0xad, 0xed, 0xae, 0xdb, 0xb1, 0xf0, 0xde, /* 0xd8-0xdf */
+  0xc8, 0xc4, 0xc0, 0xe2, 0xcc, 0xd4, 0xd7, 0xb5, /* 0xe0-0xe7 */
+  0xc9, 0xc5, 0xc1, 0xcd, 0xd9, 0xd5, 0xd1, 0xdd, /* 0xe8-0xef */
+  0xe4, 0xb7, 0xca, 0xc6, 0xc2, 0xea, 0xce, 0x00, /* 0xf0-0xf7 */
+  0xd6, 0xcb, 0xc7, 0xc3, 0xcf, 0xb2, 0xf1, 0xef, /* 0xf8-0xff */
+};
+static const unsigned char hp_roman8_page01[56] = {
+  0xeb, 0xec, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0xee, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0xbe, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char hp_roman8_page02[32] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0xa9, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0xac, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+};
+
+static int
+hp_roman8_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a0) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = hp_roman8_page00[wc-0x00a0];
+  else if (wc >= 0x0160 && wc < 0x0198)
+    c = hp_roman8_page01[wc-0x0160];
+  else if (wc >= 0x02c0 && wc < 0x02e0)
+    c = hp_roman8_page02[wc-0x02c0];
+  else if (wc == 0x2014)
+    c = 0xf6;
+  else if (wc == 0x20a4)
+    c = 0xaf;
+  else if (wc == 0x25a0)
+    c = 0xfc;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/hz.h b/graf2d/win32gdk/gdk/src/iconv/hz.h
new file mode 100644
index 00000000000..db0b4b11dc7
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/hz.h
@@ -0,0 +1,163 @@
+/*
+ * Copyright (C) 1999-2001, 2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * HZ
+ */
+
+/* Specification: RFC 1842, RFC 1843 */
+
+/*
+ * The state is 1 in GB mode, 0 in ASCII mode.
+ */
+
+static int
+hz_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  state_t state = conv->istate;
+  unsigned int count = 0;
+  unsigned char c;
+  for (;;) {
+    c = *s;
+    if (c == '~') {
+      if (n < count+2)
+        goto none;
+      c = s[1];
+      if (state == 0) {
+        if (c == '~') {
+          *pwc = (ucs4_t) '~';
+          conv->istate = state;
+          return count+2;
+        }
+        if (c == '{') {
+          state = 1;
+          s += 2; count += 2;
+          if (n < count+1)
+            goto none;
+          continue;
+        }
+        if (c == '\n') {
+          s += 2; count += 2;
+          if (n < count+1)
+            goto none;
+          continue;
+        }
+      } else {
+        if (c == '}') {
+          state = 0;
+          s += 2; count += 2;
+          if (n < count+1)
+            goto none;
+          continue;
+        }
+      }
+      goto ilseq;
+    }
+    break;
+  }
+  if (state == 0) {
+    *pwc = (ucs4_t) c;
+    conv->istate = state;
+    return count+1;
+  } else {
+    int ret;
+    if (n < count+2)
+      goto none;
+    ret = gb2312_mbtowc(conv,pwc,s,2);
+    if (ret == RET_ILSEQ)
+      goto ilseq;
+    if (ret != 2) abort();
+    conv->istate = state;
+    return count+2;
+  }
+
+none:
+  conv->istate = state;
+  return RET_TOOFEW(count);
+
+ilseq:
+  conv->istate = state;
+  return RET_SHIFT_ILSEQ(count);
+}
+
+static int
+hz_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  state_t state = conv->ostate;
+  unsigned char buf[2];
+  int ret;
+
+  /* Code set 0 (ASCII or GB 1988-89) */
+  ret = ascii_wctomb(conv,buf,wc,1);
+  if (ret != RET_ILUNI) {
+    if (ret != 1) abort();
+    if (buf[0] < 0x80) {
+      int count = (state ? 3 : 1);
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state) {
+        r[0] = '~';
+        r[1] = '}';
+        r += 2;
+        state = 0;
+      }
+      r[0] = buf[0];
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  /* Code set 1 (GB 2312-1980) */
+  ret = gb2312_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (buf[0] < 0x80 && buf[1] < 0x80) {
+      int count = (state ? 2 : 4);
+      if (n < count)
+        return RET_TOOSMALL;
+      if (!state) {
+        r[0] = '~';
+        r[1] = '{';
+        r += 2;
+        state = 1;
+      }
+      r[0] = buf[0];
+      r[1] = buf[1];
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  return RET_ILUNI;
+}
+
+static int
+hz_reset (conv_t conv, unsigned char *r, int n)
+{
+  state_t state = conv->ostate;
+  if (state) {
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = '~';
+    r[1] = '}';
+    /* conv->ostate = 0; will be done by the caller */
+    return 2;
+  } else
+    return 0;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/iconv.c b/graf2d/win32gdk/gdk/src/iconv/iconv.c
new file mode 100644
index 00000000000..a7f7aef7480
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iconv.c
@@ -0,0 +1,592 @@
+/*
+ * Copyright (C) 1999-2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <iconv.h>
+
+#include <stdlib.h>
+#include <string.h>
+#include "config.h"
+#include "localcharset.h"
+
+#if ENABLE_EXTRA
+/*
+ * Consider all system dependent encodings, for any system,
+ * and the extra encodings.
+ */
+#define USE_AIX
+#define USE_OSF1
+#define USE_DOS
+#define USE_EXTRA
+#else
+/*
+ * Consider those system dependent encodings that are needed for the
+ * current system.
+ */
+#ifdef _AIX
+#define USE_AIX
+#endif
+#if defined(__osf__) || defined(VMS)
+#define USE_OSF1
+#endif
+#if defined(__DJGPP__) || (defined(_WIN32) && (defined(_MSC_VER) || defined(__MINGW32__)))
+#define USE_DOS
+#endif
+#endif
+
+/*
+ * Data type for general conversion loop.
+ */
+struct loop_funcs {
+  size_t (*loop_convert) (iconv_t icd,
+                          const char* * inbuf, size_t *inbytesleft,
+                          char* * outbuf, size_t *outbytesleft);
+  size_t (*loop_reset) (iconv_t icd,
+                        char* * outbuf, size_t *outbytesleft);
+};
+
+/*
+ * Converters.
+ */
+#include "converters.h"
+
+/*
+ * Transliteration tables.
+ */
+#include "cjk_variants.h"
+#include "translit.h"
+
+/*
+ * Table of all supported encodings.
+ */
+struct encoding {
+  struct mbtowc_funcs ifuncs; /* conversion multibyte -> unicode */
+  struct wctomb_funcs ofuncs; /* conversion unicode -> multibyte */
+  int oflags;                 /* flags for unicode -> multibyte conversion */
+};
+#define DEFALIAS(xxx_alias,xxx) /* nothing */
+enum {
+#define DEFENCODING(xxx_names,xxx,xxx_ifuncs1,xxx_ifuncs2,xxx_ofuncs1,xxx_ofuncs2) \
+  ei_##xxx ,
+#include "encodings.def"
+#ifdef USE_AIX
+# include "encodings_aix.def"
+#endif
+#ifdef USE_OSF1
+# include "encodings_osf1.def"
+#endif
+#ifdef USE_DOS
+# include "encodings_dos.def"
+#endif
+#ifdef USE_EXTRA
+# include "encodings_extra.def"
+#endif
+#include "encodings_local.def"
+#undef DEFENCODING
+ei_for_broken_compilers_that_dont_like_trailing_commas
+};
+#include "flags.h"
+static struct encoding const all_encodings[] = {
+#define DEFENCODING(xxx_names,xxx,xxx_ifuncs1,xxx_ifuncs2,xxx_ofuncs1,xxx_ofuncs2) \
+  { xxx_ifuncs1,xxx_ifuncs2, xxx_ofuncs1,xxx_ofuncs2, ei_##xxx##_oflags },
+#include "encodings.def"
+#ifdef USE_AIX
+# include "encodings_aix.def"
+#endif
+#ifdef USE_OSF1
+# include "encodings_osf1.def"
+#endif
+#ifdef USE_DOS
+# include "encodings_dos.def"
+#endif
+#ifdef USE_EXTRA
+# include "encodings_extra.def"
+#endif
+#undef DEFENCODING
+#define DEFENCODING(xxx_names,xxx,xxx_ifuncs1,xxx_ifuncs2,xxx_ofuncs1,xxx_ofuncs2) \
+  { xxx_ifuncs1,xxx_ifuncs2, xxx_ofuncs1,xxx_ofuncs2, 0 },
+#include "encodings_local.def"
+#undef DEFENCODING
+};
+#undef DEFALIAS
+
+/*
+ * Conversion loops.
+ */
+#include "loops.h"
+
+/*
+ * Alias lookup function.
+ * Defines
+ *   struct alias { int name; unsigned int encoding_index; };
+ *   const struct alias * aliases_lookup (const char *str, unsigned int len);
+ *   #define MAX_WORD_LENGTH ...
+ */
+#if defined _AIX
+# include "aliases_sysaix.h"
+#elif defined hpux || defined __hpux
+# include "aliases_syshpux.h"
+#elif defined __osf__
+# include "aliases_sysosf1.h"
+#elif defined __sun
+# include "aliases_syssolaris.h"
+#else
+# include "aliases.h"
+#endif
+
+/*
+ * System dependent alias lookup function.
+ * Defines
+ *   const struct alias * aliases2_lookup (const char *str);
+ */
+#if defined(USE_AIX) || defined(USE_OSF1) || defined(USE_DOS) || defined(USE_EXTRA) /* || ... */
+struct stringpool2_t {
+#define S(tag,name,encoding_index) char stringpool_##tag[sizeof(name)];
+#include "aliases2.h"
+#undef S
+};
+static const struct stringpool2_t stringpool2_contents = {
+#define S(tag,name,encoding_index) name,
+#include "aliases2.h"
+#undef S
+};
+#define stringpool2 ((const char *) &stringpool2_contents)
+static const struct alias sysdep_aliases[] = {
+#define S(tag,name,encoding_index) { (int)(long)&((struct stringpool2_t *)0)->stringpool_##tag, encoding_index },
+#include "aliases2.h"
+#undef S
+};
+#ifdef __GNUC__
+__inline
+#endif
+const struct alias *
+aliases2_lookup (register const char *str)
+{
+  const struct alias * ptr;
+  unsigned int count;
+  for (ptr = sysdep_aliases, count = sizeof(sysdep_aliases)/sizeof(sysdep_aliases[0]); count > 0; ptr++, count--)
+    if (!strcmp(str, stringpool2 + ptr->name))
+      return ptr;
+  return NULL;
+}
+#else
+#define aliases2_lookup(str)  NULL
+#define stringpool2  NULL
+#endif
+
+#if 0
+/* Like !strcasecmp, except that the both strings can be assumed to be ASCII
+   and the first string can be assumed to be in uppercase. */
+static int strequal (const char* str1, const char* str2)
+{
+  unsigned char c1;
+  unsigned char c2;
+  for (;;) {
+    c1 = * (unsigned char *) str1++;
+    c2 = * (unsigned char *) str2++;
+    if (c1 == 0)
+      break;
+    if (c2 >= 'a' && c2 <= 'z')
+      c2 -= 'a'-'A';
+    if (c1 != c2)
+      break;
+  }
+  return (c1 == c2);
+}
+#endif
+
+iconv_t iconv_open (const char* tocode, const char* fromcode)
+{
+  struct conv_struct * cd;
+  unsigned int from_index;
+  int from_wchar;
+  unsigned int to_index;
+  int to_wchar;
+  int transliterate;
+  int discard_ilseq;
+
+#include "iconv_open1.h"
+
+  cd = (struct conv_struct *) malloc(from_wchar != to_wchar
+                                     ? sizeof(struct wchar_conv_struct)
+                                     : sizeof(struct conv_struct));
+  if (cd == NULL) {
+    errno = ENOMEM;
+    return (iconv_t)(-1);
+  }
+
+#include "iconv_open2.h"
+
+  return (iconv_t)cd;
+invalid:
+  errno = EINVAL;
+  return (iconv_t)(-1);
+}
+
+size_t iconv (iconv_t icd,
+              const char* * inbuf, size_t *inbytesleft,
+              char* * outbuf, size_t *outbytesleft)
+{
+  conv_t cd = (conv_t) icd;
+  if (inbuf == NULL || *inbuf == NULL)
+    return cd->lfuncs.loop_reset(icd,outbuf,outbytesleft);
+  else
+    return cd->lfuncs.loop_convert(icd,
+                                   (const char* *)inbuf,inbytesleft,
+                                   outbuf,outbytesleft);
+}
+
+int iconv_close (iconv_t icd)
+{
+  conv_t cd = (conv_t) icd;
+  free(cd);
+  return 0;
+}
+
+#ifndef LIBICONV_PLUG
+
+/*
+ * Verify that a 'struct conv_struct' and a 'struct wchar_conv_struct' each
+ * fit in an iconv_allocation_t.
+ * If this verification fails, iconv_allocation_t must be made larger and
+ * the major version in LIBICONV_VERSION_INFO must be bumped.
+ * Currently 'struct conv_struct' has 21 integer/pointer fields, and
+ * 'struct wchar_conv_struct' additionally has an 'mbstate_t' field.
+ */
+typedef int verify_size_1[2 * (sizeof (struct conv_struct) <= sizeof (iconv_allocation_t)) - 1];
+typedef int verify_size_2[2 * (sizeof (struct wchar_conv_struct) <= sizeof (iconv_allocation_t)) - 1];
+
+int iconv_open_into (const char* tocode, const char* fromcode,
+                     iconv_allocation_t* resultp)
+{
+  struct conv_struct * cd;
+  unsigned int from_index;
+  int from_wchar;
+  unsigned int to_index;
+  int to_wchar;
+  int transliterate;
+  int discard_ilseq;
+
+#include "iconv_open1.h"
+
+  cd = (struct conv_struct *) resultp;
+
+#include "iconv_open2.h"
+
+  return 0;
+invalid:
+  errno = EINVAL;
+  return -1;
+}
+
+int iconvctl (iconv_t icd, int request, void* argument)
+{
+  conv_t cd = (conv_t) icd;
+  switch (request) {
+    case ICONV_TRIVIALP:
+      *(int *)argument =
+        ((cd->lfuncs.loop_convert == unicode_loop_convert
+          && cd->iindex == cd->oindex)
+         || cd->lfuncs.loop_convert == wchar_id_loop_convert
+         ? 1 : 0);
+      return 0;
+    case ICONV_GET_TRANSLITERATE:
+      *(int *)argument = cd->transliterate;
+      return 0;
+    case ICONV_SET_TRANSLITERATE:
+      cd->transliterate = (*(const int *)argument ? 1 : 0);
+      return 0;
+    case ICONV_GET_DISCARD_ILSEQ:
+      *(int *)argument = cd->discard_ilseq;
+      return 0;
+    case ICONV_SET_DISCARD_ILSEQ:
+      cd->discard_ilseq = (*(const int *)argument ? 1 : 0);
+      return 0;
+    case ICONV_SET_HOOKS:
+      if (argument != NULL) {
+        cd->hooks = *(const struct iconv_hooks *)argument;
+      } else {
+        cd->hooks.uc_hook = NULL;
+        cd->hooks.wc_hook = NULL;
+        cd->hooks.data = NULL;
+      }
+      return 0;
+    case ICONV_SET_FALLBACKS:
+      if (argument != NULL) {
+        cd->fallbacks = *(const struct iconv_fallbacks *)argument;
+      } else {
+        cd->fallbacks.mb_to_uc_fallback = NULL;
+        cd->fallbacks.uc_to_mb_fallback = NULL;
+        cd->fallbacks.mb_to_wc_fallback = NULL;
+        cd->fallbacks.wc_to_mb_fallback = NULL;
+        cd->fallbacks.data = NULL;
+      }
+      return 0;
+    default:
+      errno = EINVAL;
+      return -1;
+  }
+}
+
+/* An alias after its name has been converted from 'int' to 'const char*'. */
+struct nalias { const char* name; unsigned int encoding_index; };
+
+static int compare_by_index (const void * arg1, const void * arg2)
+{
+  const struct nalias * alias1 = (const struct nalias *) arg1;
+  const struct nalias * alias2 = (const struct nalias *) arg2;
+  return (int)alias1->encoding_index - (int)alias2->encoding_index;
+}
+
+static int compare_by_name (const void * arg1, const void * arg2)
+{
+  const char * name1 = *(const char **)arg1;
+  const char * name2 = *(const char **)arg2;
+  /* Compare alphabetically, but put "CS" names at the end. */
+  int sign = strcmp(name1,name2);
+  if (sign != 0) {
+    sign = ((name1[0]=='C' && name1[1]=='S') - (name2[0]=='C' && name2[1]=='S'))
+           * 4 + (sign >= 0 ? 1 : -1);
+  }
+  return sign;
+}
+
+void iconvlist (int (*do_one) (unsigned int namescount,
+                               const char * const * names,
+                               void* data),
+                void* data)
+{
+#define aliascount1  sizeof(aliases)/sizeof(aliases[0])
+#ifndef aliases2_lookup
+#define aliascount2  sizeof(sysdep_aliases)/sizeof(sysdep_aliases[0])
+#else
+#define aliascount2  0
+#endif
+#define aliascount  (aliascount1+aliascount2)
+  struct nalias aliasbuf[aliascount];
+  const char * namesbuf[aliascount];
+  size_t num_aliases;
+  {
+    /* Put all existing aliases into a buffer. */
+    size_t i;
+    size_t j;
+    j = 0;
+    for (i = 0; i < aliascount1; i++) {
+      const struct alias * p = &aliases[i];
+      if (p->name >= 0
+          && p->encoding_index != ei_local_char
+          && p->encoding_index != ei_local_wchar_t) {
+        aliasbuf[j].name = stringpool + p->name;
+        aliasbuf[j].encoding_index = p->encoding_index;
+        j++;
+      }
+    }
+#ifndef aliases2_lookup
+    for (i = 0; i < aliascount2; i++) {
+      aliasbuf[j].name = stringpool2 + sysdep_aliases[i].name;
+      aliasbuf[j].encoding_index = sysdep_aliases[i].encoding_index;
+      j++;
+    }
+#endif
+    num_aliases = j;
+  }
+  /* Sort by encoding_index. */
+  if (num_aliases > 1)
+    qsort(aliasbuf, num_aliases, sizeof(struct nalias), compare_by_index);
+  {
+    /* Process all aliases with the same encoding_index together. */
+    size_t j;
+    j = 0;
+    while (j < num_aliases) {
+      unsigned int ei = aliasbuf[j].encoding_index;
+      size_t i = 0;
+      do
+        namesbuf[i++] = aliasbuf[j++].name;
+      while (j < num_aliases && aliasbuf[j].encoding_index == ei);
+      if (i > 1)
+        qsort((void *) namesbuf, i, sizeof(const char *), compare_by_name);
+      /* Call the callback. */
+      if (do_one(i,namesbuf,data))
+        break;
+    }
+  }
+#undef aliascount
+#undef aliascount2
+#undef aliascount1
+}
+
+/*
+ * Table of canonical names of encodings.
+ * Instead of strings, it contains offsets into stringpool and stringpool2.
+ */
+static const unsigned short all_canonical[] = {
+#if defined _AIX
+# include "canonical_sysaix.h"
+#elif defined hpux || defined __hpux
+# include "canonical_syshpux.h"
+#elif defined __osf__
+# include "canonical_sysosf1.h"
+#elif defined __sun
+# include "canonical_syssolaris.h"
+#else
+# include "canonical.h"
+#endif
+#ifdef USE_AIX
+# if defined _AIX
+#  include "canonical_aix_sysaix.h"
+# else
+#  include "canonical_aix.h"
+# endif
+#endif
+#ifdef USE_OSF1
+# if defined __osf__
+#  include "canonical_osf1_sysosf1.h"
+# else
+#  include "canonical_osf1.h"
+# endif
+#endif
+#ifdef USE_DOS
+# include "canonical_dos.h"
+#endif
+#ifdef USE_EXTRA
+# include "canonical_extra.h"
+#endif
+#if defined _AIX
+# include "canonical_local_sysaix.h"
+#elif defined hpux || defined __hpux
+# include "canonical_local_syshpux.h"
+#elif defined __osf__
+# include "canonical_local_sysosf1.h"
+#elif defined __sun
+# include "canonical_local_syssolaris.h"
+#else
+# include "canonical_local.h"
+#endif
+};
+
+const char * iconv_canonicalize (const char * name)
+{
+  const char* code;
+  char buf[MAX_WORD_LENGTH+10+1];
+  const char* cp;
+  char* bp;
+  const struct alias * ap;
+  unsigned int count;
+  unsigned int index;
+  const char* pool;
+
+  /* Before calling aliases_lookup, convert the input string to upper case,
+   * and check whether it's entirely ASCII (we call gperf with option "-7"
+   * to achieve a smaller table) and non-empty. If it's not entirely ASCII,
+   * or if it's too long, it is not a valid encoding name.
+   */
+  for (code = name;;) {
+    /* Search code in the table. */
+    for (cp = code, bp = buf, count = MAX_WORD_LENGTH+10+1; ; cp++, bp++) {
+      unsigned char c = * (unsigned char *) cp;
+      if (c >= 0x80)
+        goto invalid;
+      if (c >= 'a' && c <= 'z')
+        c -= 'a'-'A';
+      *bp = c;
+      if (c == '\0')
+        break;
+      if (--count == 0)
+        goto invalid;
+    }
+    for (;;) {
+      if (bp-buf >= 10 && memcmp(bp-10,"//TRANSLIT",10)==0) {
+        bp -= 10;
+        *bp = '\0';
+        continue;
+      }
+      if (bp-buf >= 8 && memcmp(bp-8,"//IGNORE",8)==0) {
+        bp -= 8;
+        *bp = '\0';
+        continue;
+      }
+      break;
+    }
+    if (buf[0] == '\0') {
+      code = locale_charset();
+      /* Avoid an endless loop that could occur when using an older version
+         of localcharset.c. */
+      if (code[0] == '\0')
+        goto invalid;
+      continue;
+    }
+    pool = stringpool;
+    ap = aliases_lookup(buf,bp-buf);
+    if (ap == NULL) {
+      pool = stringpool2;
+      ap = aliases2_lookup(buf);
+      if (ap == NULL)
+        goto invalid;
+    }
+    if (ap->encoding_index == ei_local_char) {
+      code = locale_charset();
+      /* Avoid an endless loop that could occur when using an older version
+         of localcharset.c. */
+      if (code[0] == '\0')
+        goto invalid;
+      continue;
+    }
+    if (ap->encoding_index == ei_local_wchar_t) {
+      /* On systems which define __STDC_ISO_10646__, wchar_t is Unicode.
+         This is also the case on native Woe32 systems.  */
+#if __STDC_ISO_10646__ || ((defined _WIN32 || defined __WIN32__) && !defined __CYGWIN__)
+      if (sizeof(wchar_t) == 4) {
+        index = ei_ucs4internal;
+        break;
+      }
+      if (sizeof(wchar_t) == 2) {
+        index = ei_ucs2internal;
+        break;
+      }
+      if (sizeof(wchar_t) == 1) {
+        index = ei_iso8859_1;
+        break;
+      }
+#endif
+    }
+    index = ap->encoding_index;
+    break;
+  }
+  return all_canonical[index] + pool;
+ invalid:
+  return name;
+}
+
+int _libiconv_version = _LIBICONV_VERSION;
+
+#if defined __FreeBSD__ && !defined __gnu_freebsd__
+/* GNU libiconv is the native FreeBSD iconv implementation since 2002.
+   It wants to define the symbols 'iconv_open', 'iconv', 'iconv_close'.  */
+#define strong_alias(name, aliasname) _strong_alias(name, aliasname)
+#define _strong_alias(name, aliasname) \
+  extern __typeof (name) aliasname __attribute__ ((alias (#name)));
+#undef iconv_open
+#undef iconv
+#undef iconv_close
+strong_alias (libiconv_open, iconv_open)
+strong_alias (libiconv, iconv)
+strong_alias (libiconv_close, iconv_close)
+#endif
+
+#endif
diff --git a/graf2d/win32gdk/gdk/src/iconv/iconv.h b/graf2d/win32gdk/gdk/src/iconv/iconv.h
new file mode 100644
index 00000000000..ef3e3e9c1e1
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iconv.h
@@ -0,0 +1,242 @@
+/* Copyright (C) 1999-2003, 2005-2006, 2008-2009 Free Software Foundation, Inc.
+   This file is part of the GNU LIBICONV Library.
+
+   The GNU LIBICONV Library is free software; you can redistribute it
+   and/or modify it under the terms of the GNU Library General Public
+   License as published by the Free Software Foundation; either version 2
+   of the License, or (at your option) any later version.
+
+   The GNU LIBICONV Library is distributed in the hope that it will be
+   useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Library General Public License for more details.
+
+   You should have received a copy of the GNU Library General Public
+   License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+   If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+   Fifth Floor, Boston, MA 02110-1301, USA.  */
+
+/* When installed, this file is called "iconv.h". */
+
+#ifndef _LIBICONV_H
+#define _LIBICONV_H
+
+#define _LIBICONV_VERSION 0x010D    /* version number: (major<<8) + minor */
+
+#if BUILDING_LIBICONV
+#define LIBICONV_DLL_EXPORTED __declspec(dllexport)
+#elif USING_STATIC_LIBICONV
+#define LIBICONV_DLL_EXPORTED
+#else
+#define LIBICONV_DLL_EXPORTED __declspec(dllimport)
+#endif
+extern LIBICONV_DLL_EXPORTED int _libiconv_version; /* Likewise */
+
+/* We would like to #include any system header file which could define
+   iconv_t, 1. in order to eliminate the risk that the user gets compilation
+   errors because some other system header file includes /usr/include/iconv.h
+   which defines iconv_t or declares iconv after this file, 2. when compiling
+   for LIBICONV_PLUG, we need the proper iconv_t type in order to produce
+   binary compatible code.
+   But gcc's #include_next is not portable. Thus, once libiconv's iconv.h
+   has been installed in /usr/local/include, there is no way any more to
+   include the original /usr/include/iconv.h. We simply have to get away
+   without it.
+   Ad 1. The risk that a system header file does
+   #include "iconv.h"  or  #include_next "iconv.h"
+   is small. They all do #include <iconv.h>.
+   Ad 2. The iconv_t type is a pointer type in all cases I have seen. (It
+   has to be a scalar type because (iconv_t)(-1) is a possible return value
+   from iconv_open().) */
+
+/* Define iconv_t ourselves. */
+#undef iconv_t
+#define iconv_t libiconv_t
+typedef void* iconv_t;
+
+/* Get size_t declaration.
+   Get wchar_t declaration if it exists. */
+#include <stddef.h>
+
+/* Get errno declaration and values. */
+#include <errno.h>
+/* Some systems, like SunOS 4, don't have EILSEQ. Some systems, like BSD/OS,
+   have EILSEQ in a different header.  On these systems, define EILSEQ
+   ourselves. */
+#ifndef EILSEQ
+#define EILSEQ @EILSEQ@
+#endif
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+/* Allocates descriptor for code conversion from encoding ‘fromcode’ to
+   encoding ‘tocode’. */
+#ifndef LIBICONV_PLUG
+#define iconv_open libiconv_open
+#endif
+extern LIBICONV_DLL_EXPORTED iconv_t iconv_open (const char* tocode, const char* fromcode);
+
+/* Converts, using conversion descriptor ‘cd’, at most ‘*inbytesleft’ bytes
+   starting at ‘*inbuf’, writing at most ‘*outbytesleft’ bytes starting at
+   ‘*outbuf’.
+   Decrements ‘*inbytesleft’ and increments ‘*inbuf’ by the same amount.
+   Decrements ‘*outbytesleft’ and increments ‘*outbuf’ by the same amount. */
+#ifndef LIBICONV_PLUG
+#define iconv libiconv
+#endif
+extern LIBICONV_DLL_EXPORTED size_t iconv (iconv_t cd, const char* * inbuf, size_t *inbytesleft, char* * outbuf, size_t *outbytesleft);
+
+/* Frees resources allocated for conversion descriptor ‘cd’. */
+#ifndef LIBICONV_PLUG
+#define iconv_close libiconv_close
+#endif
+extern LIBICONV_DLL_EXPORTED int iconv_close (iconv_t cd);
+
+
+#ifndef LIBICONV_PLUG
+
+/* Nonstandard extensions. */
+
+#if USE_MBSTATE_T
+#if BROKEN_WCHAR_H
+/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
+   <wchar.h>.
+   BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
+   included before <wchar.h>.  */
+#include <stddef.h>
+#include <stdio.h>
+#include <time.h>
+#endif
+#include <wchar.h>
+#endif
+
+/* A type that holds all memory needed by a conversion descriptor.
+   A pointer to such an object can be used as an iconv_t. */
+typedef struct {
+  void* dummy1[28];
+#if USE_MBSTATE_T
+  mbstate_t dummy2;
+#endif
+} iconv_allocation_t;
+
+/* Allocates descriptor for code conversion from encoding ‘fromcode’ to
+   encoding ‘tocode’ into preallocated memory. Returns an error indicator
+   (0 or -1 with errno set). */
+#define iconv_open_into libiconv_open_into
+extern LIBICONV_DLL_EXPORTED int iconv_open_into (const char* tocode, const char* fromcode,
+                            iconv_allocation_t* resultp);
+
+/* Control of attributes. */
+#define iconvctl libiconvctl
+extern LIBICONV_DLL_EXPORTED int iconvctl (iconv_t cd, int request, void* argument);
+
+/* Hook performed after every successful conversion of a Unicode character. */
+typedef void (*iconv_unicode_char_hook) (unsigned int uc, void* data);
+/* Hook performed after every successful conversion of a wide character. */
+typedef void (*iconv_wide_char_hook) (wchar_t wc, void* data);
+/* Set of hooks. */
+struct iconv_hooks {
+  iconv_unicode_char_hook uc_hook;
+  iconv_wide_char_hook wc_hook;
+  void* data;
+};
+
+/* Fallback function.  Invoked when a small number of bytes could not be
+   converted to a Unicode character.  This function should process all
+   bytes from inbuf and may produce replacement Unicode characters by calling
+   the write_replacement callback repeatedly.  */
+typedef void (*iconv_unicode_mb_to_uc_fallback)
+             (const char* inbuf, size_t inbufsize,
+              void (*write_replacement) (const unsigned int *buf, size_t buflen,
+                                         void* callback_arg),
+              void* callback_arg,
+              void* data);
+/* Fallback function.  Invoked when a Unicode character could not be converted
+   to the target encoding.  This function should process the character and
+   may produce replacement bytes (in the target encoding) by calling the
+   write_replacement callback repeatedly.  */
+typedef void (*iconv_unicode_uc_to_mb_fallback)
+             (unsigned int code,
+              void (*write_replacement) (const char *buf, size_t buflen,
+                                         void* callback_arg),
+              void* callback_arg,
+              void* data);
+#if HAVE_WCHAR_T
+/* Fallback function.  Invoked when a number of bytes could not be converted to
+   a wide character.  This function should process all bytes from inbuf and may
+   produce replacement wide characters by calling the write_replacement
+   callback repeatedly.  */
+typedef void (*iconv_wchar_mb_to_wc_fallback)
+             (const char* inbuf, size_t inbufsize,
+              void (*write_replacement) (const wchar_t *buf, size_t buflen,
+                                         void* callback_arg),
+              void* callback_arg,
+              void* data);
+/* Fallback function.  Invoked when a wide character could not be converted to
+   the target encoding.  This function should process the character and may
+   produce replacement bytes (in the target encoding) by calling the
+   write_replacement callback repeatedly.  */
+typedef void (*iconv_wchar_wc_to_mb_fallback)
+             (wchar_t code,
+              void (*write_replacement) (const char *buf, size_t buflen,
+                                         void* callback_arg),
+              void* callback_arg,
+              void* data);
+#else
+/* If the wchar_t type does not exist, these two fallback functions are never
+   invoked.  Their argument list therefore does not matter.  */
+typedef void (*iconv_wchar_mb_to_wc_fallback) ();
+typedef void (*iconv_wchar_wc_to_mb_fallback) ();
+#endif
+/* Set of fallbacks. */
+struct iconv_fallbacks {
+  iconv_unicode_mb_to_uc_fallback mb_to_uc_fallback;
+  iconv_unicode_uc_to_mb_fallback uc_to_mb_fallback;
+  iconv_wchar_mb_to_wc_fallback mb_to_wc_fallback;
+  iconv_wchar_wc_to_mb_fallback wc_to_mb_fallback;
+  void* data;
+};
+
+/* Requests for iconvctl. */
+#define ICONV_TRIVIALP            0  /* int *argument */
+#define ICONV_GET_TRANSLITERATE   1  /* int *argument */
+#define ICONV_SET_TRANSLITERATE   2  /* const int *argument */
+#define ICONV_GET_DISCARD_ILSEQ   3  /* int *argument */
+#define ICONV_SET_DISCARD_ILSEQ   4  /* const int *argument */
+#define ICONV_SET_HOOKS           5  /* const struct iconv_hooks *argument */
+#define ICONV_SET_FALLBACKS       6  /* const struct iconv_fallbacks *argument */
+
+/* Listing of locale independent encodings. */
+#define iconvlist libiconvlist
+extern LIBICONV_DLL_EXPORTED void iconvlist (int (*do_one) (unsigned int namescount,
+                                      const char * const * names,
+                                      void* data),
+                       void* data);
+
+/* Canonicalize an encoding name.
+   The result is either a canonical encoding name, or name itself. */
+extern LIBICONV_DLL_EXPORTED const char * iconv_canonicalize (const char * name);
+
+/* Support for relocatable packages.  */
+
+/* Sets the original and the current installation prefix of the package.
+   Relocation simply replaces a pathname starting with the original prefix
+   by the corresponding pathname with the current prefix instead.  Both
+   prefixes should be directory names without trailing slash (i.e. use ""
+   instead of "/").  */
+extern LIBICONV_DLL_EXPORTED void libiconv_set_relocation_prefix (const char *orig_prefix,
+					    const char *curr_prefix);
+
+#endif
+
+
+#ifdef __cplusplus
+}
+#endif
+
+
+#endif /* _LIBICONV_H */
diff --git a/graf2d/win32gdk/gdk/src/iconv/iconv_open1.h b/graf2d/win32gdk/gdk/src/iconv/iconv_open1.h
new file mode 100644
index 00000000000..8a77014c3db
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iconv_open1.h
@@ -0,0 +1,201 @@
+/*
+ * Copyright (C) 1999-2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/* Part 1 of iconv_open.
+   Input: const char* tocode, const char* fromcode.
+   Output:
+     unsigned int from_index;
+     int from_wchar;
+     unsigned int to_index;
+     int to_wchar;
+     int transliterate;
+     int discard_ilseq;
+   Jumps to 'invalid' in case of errror.
+ */
+{
+  char buf[MAX_WORD_LENGTH+10+1];
+  const char* cp;
+  char* bp;
+  const struct alias * ap;
+  unsigned int count;
+
+  transliterate = 0;
+  discard_ilseq = 0;
+
+  /* Before calling aliases_lookup, convert the input string to upper case,
+   * and check whether it's entirely ASCII (we call gperf with option "-7"
+   * to achieve a smaller table) and non-empty. If it's not entirely ASCII,
+   * or if it's too long, it is not a valid encoding name.
+   */
+  for (to_wchar = 0;;) {
+    /* Search tocode in the table. */
+    for (cp = tocode, bp = buf, count = MAX_WORD_LENGTH+10+1; ; cp++, bp++) {
+      unsigned char c = * (unsigned char *) cp;
+      if (c >= 0x80)
+        goto invalid;
+      if (c >= 'a' && c <= 'z')
+        c -= 'a'-'A';
+      *bp = c;
+      if (c == '\0')
+        break;
+      if (--count == 0)
+        goto invalid;
+    }
+    for (;;) {
+      if (bp-buf >= 10 && memcmp(bp-10,"//TRANSLIT",10)==0) {
+        bp -= 10;
+        *bp = '\0';
+        transliterate = 1;
+        continue;
+      }
+      if (bp-buf >= 8 && memcmp(bp-8,"//IGNORE",8)==0) {
+        bp -= 8;
+        *bp = '\0';
+        discard_ilseq = 1;
+        continue;
+      }
+      break;
+    }
+    if (buf[0] == '\0') {
+      tocode = locale_charset();
+      /* Avoid an endless loop that could occur when using an older version
+         of localcharset.c. */
+      if (tocode[0] == '\0')
+        goto invalid;
+      continue;
+    }
+    ap = aliases_lookup(buf,bp-buf);
+    if (ap == NULL) {
+      ap = aliases2_lookup(buf);
+      if (ap == NULL)
+        goto invalid;
+    }
+    if (ap->encoding_index == ei_local_char) {
+      tocode = locale_charset();
+      /* Avoid an endless loop that could occur when using an older version
+         of localcharset.c. */
+      if (tocode[0] == '\0')
+        goto invalid;
+      continue;
+    }
+    if (ap->encoding_index == ei_local_wchar_t) {
+      /* On systems which define __STDC_ISO_10646__, wchar_t is Unicode.
+         This is also the case on native Woe32 systems.  */
+#if __STDC_ISO_10646__ || ((defined _WIN32 || defined __WIN32__) && !defined __CYGWIN__)
+      if (sizeof(wchar_t) == 4) {
+        to_index = ei_ucs4internal;
+        break;
+      }
+      if (sizeof(wchar_t) == 2) {
+        to_index = ei_ucs2internal;
+        break;
+      }
+      if (sizeof(wchar_t) == 1) {
+        to_index = ei_iso8859_1;
+        break;
+      }
+#endif
+#if HAVE_MBRTOWC
+      to_wchar = 1;
+      tocode = locale_charset();
+      continue;
+#endif
+      goto invalid;
+    }
+    to_index = ap->encoding_index;
+    break;
+  }
+  for (from_wchar = 0;;) {
+    /* Search fromcode in the table. */
+    for (cp = fromcode, bp = buf, count = MAX_WORD_LENGTH+10+1; ; cp++, bp++) {
+      unsigned char c = * (unsigned char *) cp;
+      if (c >= 0x80)
+        goto invalid;
+      if (c >= 'a' && c <= 'z')
+        c -= 'a'-'A';
+      *bp = c;
+      if (c == '\0')
+        break;
+      if (--count == 0)
+        goto invalid;
+    }
+    for (;;) {
+      if (bp-buf >= 10 && memcmp(bp-10,"//TRANSLIT",10)==0) {
+        bp -= 10;
+        *bp = '\0';
+        continue;
+      }
+      if (bp-buf >= 8 && memcmp(bp-8,"//IGNORE",8)==0) {
+        bp -= 8;
+        *bp = '\0';
+        continue;
+      }
+      break;
+    }
+    if (buf[0] == '\0') {
+      fromcode = locale_charset();
+      /* Avoid an endless loop that could occur when using an older version
+         of localcharset.c. */
+      if (fromcode[0] == '\0')
+        goto invalid;
+      continue;
+    }
+    ap = aliases_lookup(buf,bp-buf);
+    if (ap == NULL) {
+      ap = aliases2_lookup(buf);
+      if (ap == NULL)
+        goto invalid;
+    }
+    if (ap->encoding_index == ei_local_char) {
+      fromcode = locale_charset();
+      /* Avoid an endless loop that could occur when using an older version
+         of localcharset.c. */
+      if (fromcode[0] == '\0')
+        goto invalid;
+      continue;
+    }
+    if (ap->encoding_index == ei_local_wchar_t) {
+      /* On systems which define __STDC_ISO_10646__, wchar_t is Unicode.
+         This is also the case on native Woe32 systems.  */
+#if __STDC_ISO_10646__ || ((defined _WIN32 || defined __WIN32__) && !defined __CYGWIN__)
+      if (sizeof(wchar_t) == 4) {
+        from_index = ei_ucs4internal;
+        break;
+      }
+      if (sizeof(wchar_t) == 2) {
+        from_index = ei_ucs2internal;
+        break;
+      }
+      if (sizeof(wchar_t) == 1) {
+        from_index = ei_iso8859_1;
+        break;
+      }
+#endif
+#if HAVE_WCRTOMB
+      from_wchar = 1;
+      fromcode = locale_charset();
+      continue;
+#endif
+      goto invalid;
+    }
+    from_index = ap->encoding_index;
+    break;
+  }
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/iconv_open2.h b/graf2d/win32gdk/gdk/src/iconv/iconv_open2.h
new file mode 100644
index 00000000000..6d6296f05b3
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iconv_open2.h
@@ -0,0 +1,89 @@
+/*
+ * Copyright (C) 1999-2009 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/* Part 2 of iconv_open.
+   Input:
+     struct conv_struct * cd;
+     unsigned int from_index;
+     int from_wchar;
+     unsigned int to_index;
+     int to_wchar;
+     int transliterate;
+     int discard_ilseq;
+   Output: none.
+   Side effects: Fills cd.
+ */
+
+  cd->iindex = from_index;
+  cd->ifuncs = all_encodings[from_index].ifuncs;
+  cd->oindex = to_index;
+  cd->ofuncs = all_encodings[to_index].ofuncs;
+  cd->oflags = all_encodings[to_index].oflags;
+  /* Initialize the loop functions. */
+#if HAVE_MBRTOWC
+  if (to_wchar) {
+#if HAVE_WCRTOMB
+    if (from_wchar) {
+      cd->lfuncs.loop_convert = wchar_id_loop_convert;
+      cd->lfuncs.loop_reset = wchar_id_loop_reset;
+    } else
+#endif
+    {
+      cd->lfuncs.loop_convert = wchar_to_loop_convert;
+      cd->lfuncs.loop_reset = wchar_to_loop_reset;
+    }
+  } else
+#endif
+  {
+#if HAVE_WCRTOMB
+    if (from_wchar) {
+      cd->lfuncs.loop_convert = wchar_from_loop_convert;
+      cd->lfuncs.loop_reset = wchar_from_loop_reset;
+    } else
+#endif
+    {
+      cd->lfuncs.loop_convert = unicode_loop_convert;
+      cd->lfuncs.loop_reset = unicode_loop_reset;
+    }
+  }
+  /* Initialize the states. */
+  memset(&cd->istate,'\0',sizeof(state_t));
+  memset(&cd->ostate,'\0',sizeof(state_t));
+  /* Initialize the operation flags. */
+  cd->transliterate = transliterate;
+  cd->discard_ilseq = discard_ilseq;
+  #ifndef LIBICONV_PLUG
+  cd->fallbacks.mb_to_uc_fallback = NULL;
+  cd->fallbacks.uc_to_mb_fallback = NULL;
+  cd->fallbacks.mb_to_wc_fallback = NULL;
+  cd->fallbacks.wc_to_mb_fallback = NULL;
+  cd->fallbacks.data = NULL;
+  cd->hooks.uc_hook = NULL;
+  cd->hooks.wc_hook = NULL;
+  cd->hooks.data = NULL;
+  #endif
+  /* Initialize additional fields. */
+  if (from_wchar != to_wchar) {
+    struct wchar_conv_struct * wcd = (struct wchar_conv_struct *) cd;
+#if HAVE_WCRTOMB || HAVE_MBRTOWC
+    memset(&wcd->state,'\0',sizeof(mbstate_t));
+#endif
+  }
+  /* Done. */
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso2022_cn.h b/graf2d/win32gdk/gdk/src/iconv/iso2022_cn.h
new file mode 100644
index 00000000000..d7e3e393a56
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso2022_cn.h
@@ -0,0 +1,324 @@
+/*
+ * Copyright (C) 1999-2001, 2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-2022-CN
+ */
+
+/* Specification: RFC 1922 */
+
+#define ESC 0x1b
+#define SO  0x0e
+#define SI  0x0f
+
+/*
+ * The state is composed of one of the following values
+ */
+#define STATE_ASCII          0
+#define STATE_TWOBYTE        1
+/*
+ * and one of the following values, << 8
+ */
+#define STATE2_NONE                   0
+#define STATE2_DESIGNATED_GB2312      1
+#define STATE2_DESIGNATED_CNS11643_1  2
+/*
+ * and one of the following values, << 16
+ */
+#define STATE3_NONE                   0
+#define STATE3_DESIGNATED_CNS11643_2  1
+
+#define SPLIT_STATE \
+  unsigned int state1 = state & 0xff, state2 = (state >> 8) & 0xff, state3 = state >> 16
+#define COMBINE_STATE \
+  state = (state3 << 16) | (state2 << 8) | state1
+
+static int
+iso2022_cn_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  state_t state = conv->istate;
+  SPLIT_STATE;
+  int count = 0;
+  unsigned char c;
+  for (;;) {
+    c = *s;
+    if (c == ESC) {
+      if (n < count+4)
+        goto none;
+      if (s[1] == '$') {
+        if (s[2] == ')') {
+          if (s[3] == 'A') {
+            state2 = STATE2_DESIGNATED_GB2312;
+            s += 4; count += 4;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+          if (s[3] == 'G') {
+            state2 = STATE2_DESIGNATED_CNS11643_1;
+            s += 4; count += 4;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+        }
+        if (s[2] == '*') {
+          if (s[3] == 'H') {
+            state3 = STATE3_DESIGNATED_CNS11643_2;
+            s += 4; count += 4;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+        }
+      }
+      if (s[1] == 'N') {
+        switch (state3) {
+          case STATE3_NONE:
+            goto ilseq;
+          case STATE3_DESIGNATED_CNS11643_2:
+            if (s[2] < 0x80 && s[3] < 0x80) {
+              int ret = cns11643_2_mbtowc(conv,pwc,s+2,2);
+              if (ret == RET_ILSEQ)
+                goto ilseq;
+              if (ret != 2) abort();
+              COMBINE_STATE;
+              conv->istate = state;
+              return count+4;
+            } else
+              goto ilseq;
+          default: abort();
+        }
+      }
+      goto ilseq;
+    }
+    if (c == SO) {
+      if (state2 != STATE2_DESIGNATED_GB2312 && state2 != STATE2_DESIGNATED_CNS11643_1)
+        goto ilseq;
+      state1 = STATE_TWOBYTE;
+      s++; count++;
+      if (n < count+1)
+        goto none;
+      continue;
+    }
+    if (c == SI) {
+      state1 = STATE_ASCII;
+      s++; count++;
+      if (n < count+1)
+        goto none;
+      continue;
+    }
+    break;
+  }
+  switch (state1) {
+    case STATE_ASCII:
+      if (c < 0x80) {
+        int ret = ascii_mbtowc(conv,pwc,s,1);
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 1) abort();
+        if (*pwc == 0x000a || *pwc == 0x000d) {
+          state2 = STATE2_NONE; state3 = STATE3_NONE;
+        }
+        COMBINE_STATE;
+        conv->istate = state;
+        return count+1;
+      } else
+        goto ilseq;
+    case STATE_TWOBYTE:
+      if (n < count+2)
+        goto none;
+      if (s[0] < 0x80 && s[1] < 0x80) {
+        int ret;
+        switch (state2) {
+          case STATE2_NONE:
+            goto ilseq;
+          case STATE2_DESIGNATED_GB2312:
+            ret = gb2312_mbtowc(conv,pwc,s,2); break;
+          case STATE2_DESIGNATED_CNS11643_1:
+            ret = cns11643_1_mbtowc(conv,pwc,s,2); break;
+          default: abort();
+        }
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 2) abort();
+        COMBINE_STATE;
+        conv->istate = state;
+        return count+2;
+      } else
+        goto ilseq;
+    default: abort();
+  }
+
+none:
+  COMBINE_STATE;
+  conv->istate = state;
+  return RET_TOOFEW(count);
+
+ilseq:
+  COMBINE_STATE;
+  conv->istate = state;
+  return RET_SHIFT_ILSEQ(count);
+}
+
+static int
+iso2022_cn_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  state_t state = conv->ostate;
+  SPLIT_STATE;
+  unsigned char buf[3];
+  int ret;
+
+  /* There is no need to handle Unicode 3.1 tag characters and to look for
+     "zh-CN" or "zh-TW" tags, because GB2312 and CNS11643 are disjoint. */
+
+  /* Try ASCII. */
+  ret = ascii_wctomb(conv,buf,wc,1);
+  if (ret != RET_ILUNI) {
+    if (ret != 1) abort();
+    if (buf[0] < 0x80) {
+      int count = (state1 == STATE_ASCII ? 1 : 2);
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state1 != STATE_ASCII) {
+        r[0] = SI;
+        r += 1;
+        state1 = STATE_ASCII;
+      }
+      r[0] = buf[0];
+      if (wc == 0x000a || wc == 0x000d) {
+        state2 = STATE2_NONE; state3 = STATE3_NONE;
+      }
+      COMBINE_STATE;
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  /* Try GB 2312-1980. */
+  ret = gb2312_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (buf[0] < 0x80 && buf[1] < 0x80) {
+      int count = (state2 == STATE2_DESIGNATED_GB2312 ? 0 : 4) + (state1 == STATE_TWOBYTE ? 0 : 1) + 2;
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state2 != STATE2_DESIGNATED_GB2312) {
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = ')';
+        r[3] = 'A';
+        r += 4;
+        state2 = STATE2_DESIGNATED_GB2312;
+      }
+      if (state1 != STATE_TWOBYTE) {
+        r[0] = SO;
+        r += 1;
+        state1 = STATE_TWOBYTE;
+      }
+      r[0] = buf[0];
+      r[1] = buf[1];
+      COMBINE_STATE;
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  ret = cns11643_wctomb(conv,buf,wc,3);
+  if (ret != RET_ILUNI) {
+    if (ret != 3) abort();
+
+    /* Try CNS 11643-1992 Plane 1. */
+    if (buf[0] == 1 && buf[1] < 0x80 && buf[2] < 0x80) {
+      int count = (state2 == STATE2_DESIGNATED_CNS11643_1 ? 0 : 4) + (state1 == STATE_TWOBYTE ? 0 : 1) + 2;
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state2 != STATE2_DESIGNATED_CNS11643_1) {
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = ')';
+        r[3] = 'G';
+        r += 4;
+        state2 = STATE2_DESIGNATED_CNS11643_1;
+      }
+      if (state1 != STATE_TWOBYTE) {
+        r[0] = SO;
+        r += 1;
+        state1 = STATE_TWOBYTE;
+      }
+      r[0] = buf[1];
+      r[1] = buf[2];
+      COMBINE_STATE;
+      conv->ostate = state;
+      return count;
+    }
+
+    /* Try CNS 11643-1992 Plane 2. */
+    if (buf[0] == 2 && buf[1] < 0x80 && buf[2] < 0x80) {
+      int count = (state3 == STATE3_DESIGNATED_CNS11643_2 ? 0 : 4) + 4;
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state3 != STATE3_DESIGNATED_CNS11643_2) {
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = '*';
+        r[3] = 'H';
+        r += 4;
+        state3 = STATE3_DESIGNATED_CNS11643_2;
+      }
+      r[0] = ESC;
+      r[1] = 'N';
+      r[2] = buf[1];
+      r[3] = buf[2];
+      COMBINE_STATE;
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  return RET_ILUNI;
+}
+
+static int
+iso2022_cn_reset (conv_t conv, unsigned char *r, int n)
+{
+  state_t state = conv->ostate;
+  SPLIT_STATE;
+  (void)state2;
+  (void)state3;
+  if (state1 != STATE_ASCII) {
+    if (n < 1)
+      return RET_TOOSMALL;
+    r[0] = SI;
+    /* conv->ostate = 0; will be done by the caller */
+    return 1;
+  } else
+    return 0;
+}
+
+#undef COMBINE_STATE
+#undef SPLIT_STATE
+#undef STATE3_DESIGNATED_CNS11643_2
+#undef STATE3_NONE
+#undef STATE2_DESIGNATED_CNS11643_1
+#undef STATE2_DESIGNATED_GB2312
+#undef STATE2_NONE
+#undef STATE_TWOBYTE
+#undef STATE_ASCII
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso2022_cnext.h b/graf2d/win32gdk/gdk/src/iconv/iso2022_cnext.h
new file mode 100644
index 00000000000..f8488709db0
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso2022_cnext.h
@@ -0,0 +1,590 @@
+/*
+ * Copyright (C) 1999-2001, 2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-2022-CN-EXT
+ */
+
+/* Specification: RFC 1922 */
+
+#define ESC 0x1b
+#define SO  0x0e
+#define SI  0x0f
+
+/*
+ * The state is composed of one of the following values
+ */
+#define STATE_ASCII          0
+#define STATE_TWOBYTE        1
+/*
+ * and one of the following values, << 8
+ */
+#define STATE2_NONE                   0
+#define STATE2_DESIGNATED_GB2312      1
+#define STATE2_DESIGNATED_CNS11643_1  2
+#define STATE2_DESIGNATED_ISO_IR_165  3
+/*
+ * and one of the following values, << 16
+ */
+#define STATE3_NONE                   0
+#define STATE3_DESIGNATED_CNS11643_2  1
+/*
+ * and one of the following values, << 24
+ */
+#define STATE4_NONE                   0
+#define STATE4_DESIGNATED_CNS11643_3  1
+#define STATE4_DESIGNATED_CNS11643_4  2
+#define STATE4_DESIGNATED_CNS11643_5  3
+#define STATE4_DESIGNATED_CNS11643_6  4
+#define STATE4_DESIGNATED_CNS11643_7  5
+
+#define SPLIT_STATE \
+  unsigned int state1 = state & 0xff, state2 = (state >> 8) & 0xff, state3 = (state >> 16) & 0xff, state4 = state >> 24
+#define COMBINE_STATE \
+  state = (state4 << 24) | (state3 << 16) | (state2 << 8) | state1
+
+static int
+iso2022_cn_ext_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  state_t state = conv->istate;
+  SPLIT_STATE;
+  int count = 0;
+  unsigned char c;
+  for (;;) {
+    c = *s;
+    if (c == ESC) {
+      if (n < count+4)
+        goto none;
+      if (s[1] == '$') {
+        if (s[2] == ')') {
+          if (s[3] == 'A') {
+            state2 = STATE2_DESIGNATED_GB2312;
+            s += 4; count += 4;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+          if (s[3] == 'G') {
+            state2 = STATE2_DESIGNATED_CNS11643_1;
+            s += 4; count += 4;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+          if (s[3] == 'E') {
+            state2 = STATE2_DESIGNATED_ISO_IR_165;
+            s += 4; count += 4;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+        }
+        if (s[2] == '*') {
+          if (s[3] == 'H') {
+            state3 = STATE3_DESIGNATED_CNS11643_2;
+            s += 4; count += 4;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+        }
+        if (s[2] == '+') {
+          if (s[3] == 'I') {
+            state4 = STATE4_DESIGNATED_CNS11643_3;
+            s += 4; count += 4;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+          if (s[3] == 'J') {
+            state4 = STATE4_DESIGNATED_CNS11643_4;
+            s += 4; count += 4;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+          if (s[3] == 'K') {
+            state4 = STATE4_DESIGNATED_CNS11643_5;
+            s += 4; count += 4;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+          if (s[3] == 'L') {
+            state4 = STATE4_DESIGNATED_CNS11643_6;
+            s += 4; count += 4;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+          if (s[3] == 'M') {
+            state4 = STATE4_DESIGNATED_CNS11643_7;
+            s += 4; count += 4;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+        }
+      }
+      if (s[1] == 'N') {
+        switch (state3) {
+          case STATE3_NONE:
+            goto ilseq;
+          case STATE3_DESIGNATED_CNS11643_2:
+            if (s[2] < 0x80 && s[3] < 0x80) {
+              int ret = cns11643_2_mbtowc(conv,pwc,s+2,2);
+              if (ret == RET_ILSEQ)
+                goto ilseq;
+              if (ret != 2) abort();
+              COMBINE_STATE;
+              conv->istate = state;
+              return count+4;
+            } else
+              goto ilseq;
+          default: abort();
+        }
+      }
+      if (s[1] == 'O') {
+        switch (state4) {
+          case STATE4_NONE:
+            goto ilseq;
+          case STATE4_DESIGNATED_CNS11643_3:
+            if (s[2] < 0x80 && s[3] < 0x80) {
+              int ret = cns11643_3_mbtowc(conv,pwc,s+2,2);
+              if (ret == RET_ILSEQ)
+                goto ilseq;
+              if (ret != 2) abort();
+              COMBINE_STATE;
+              conv->istate = state;
+              return count+4;
+            } else
+              goto ilseq;
+          case STATE4_DESIGNATED_CNS11643_4:
+            if (s[2] < 0x80 && s[3] < 0x80) {
+              int ret = cns11643_4_mbtowc(conv,pwc,s+2,2);
+              if (ret == RET_ILSEQ)
+                goto ilseq;
+              if (ret != 2) abort();
+              COMBINE_STATE;
+              conv->istate = state;
+              return count+4;
+            } else
+              goto ilseq;
+          case STATE4_DESIGNATED_CNS11643_5:
+            if (s[2] < 0x80 && s[3] < 0x80) {
+              int ret = cns11643_5_mbtowc(conv,pwc,s+2,2);
+              if (ret == RET_ILSEQ)
+                goto ilseq;
+              if (ret != 2) abort();
+              COMBINE_STATE;
+              conv->istate = state;
+              return count+4;
+            } else
+              goto ilseq;
+          case STATE4_DESIGNATED_CNS11643_6:
+            if (s[2] < 0x80 && s[3] < 0x80) {
+              int ret = cns11643_6_mbtowc(conv,pwc,s+2,2);
+              if (ret == RET_ILSEQ)
+                goto ilseq;
+              if (ret != 2) abort();
+              COMBINE_STATE;
+              conv->istate = state;
+              return count+4;
+            } else
+              goto ilseq;
+          case STATE4_DESIGNATED_CNS11643_7:
+            if (s[2] < 0x80 && s[3] < 0x80) {
+              int ret = cns11643_7_mbtowc(conv,pwc,s+2,2);
+              if (ret == RET_ILSEQ)
+                goto ilseq;
+              if (ret != 2) abort();
+              COMBINE_STATE;
+              conv->istate = state;
+              return count+4;
+            } else
+              goto ilseq;
+          default: abort();
+        }
+      }
+      goto ilseq;
+    }
+    if (c == SO) {
+      if (state2 != STATE2_DESIGNATED_GB2312 && state2 != STATE2_DESIGNATED_CNS11643_1 && state2 != STATE2_DESIGNATED_ISO_IR_165)
+        goto ilseq;
+      state1 = STATE_TWOBYTE;
+      s++; count++;
+      if (n < count+1)
+        goto none;
+      continue;
+    }
+    if (c == SI) {
+      state1 = STATE_ASCII;
+      s++; count++;
+      if (n < count+1)
+        goto none;
+      continue;
+    }
+    break;
+  }
+  switch (state1) {
+    case STATE_ASCII:
+      if (c < 0x80) {
+        int ret = ascii_mbtowc(conv,pwc,s,1);
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 1) abort();
+        if (*pwc == 0x000a || *pwc == 0x000d) {
+          state2 = STATE2_NONE; state3 = STATE3_NONE; state4 = STATE3_NONE;
+        }
+        COMBINE_STATE;
+        conv->istate = state;
+        return count+1;
+      } else
+        goto ilseq;
+    case STATE_TWOBYTE:
+      if (n < count+2)
+        goto none;
+      if (s[0] < 0x80 && s[1] < 0x80) {
+        int ret;
+        switch (state2) {
+          case STATE2_NONE:
+            goto ilseq;
+          case STATE2_DESIGNATED_GB2312:
+            ret = gb2312_mbtowc(conv,pwc,s,2); break;
+          case STATE2_DESIGNATED_CNS11643_1:
+            ret = cns11643_1_mbtowc(conv,pwc,s,2); break;
+          case STATE2_DESIGNATED_ISO_IR_165:
+            ret = isoir165_mbtowc(conv,pwc,s,2); break;
+          default: abort();
+        }
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 2) abort();
+        COMBINE_STATE;
+        conv->istate = state;
+        return count+2;
+      } else
+        goto ilseq;
+    default: abort();
+  }
+
+none:
+  COMBINE_STATE;
+  conv->istate = state;
+  return RET_TOOFEW(count);
+
+ilseq:
+  COMBINE_STATE;
+  conv->istate = state;
+  return RET_SHIFT_ILSEQ(count);
+}
+
+static int
+iso2022_cn_ext_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  state_t state = conv->ostate;
+  SPLIT_STATE;
+  unsigned char buf[3];
+  int ret;
+
+  /* There is no need to handle Unicode 3.1 tag characters and to look for
+     "zh-CN" or "zh-TW" tags, because GB2312 and CNS11643 are disjoint. */
+
+  /* Try ASCII. */
+  ret = ascii_wctomb(conv,buf,wc,1);
+  if (ret != RET_ILUNI) {
+    if (ret != 1) abort();
+    if (buf[0] < 0x80) {
+      int count = (state1 == STATE_ASCII ? 1 : 2);
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state1 != STATE_ASCII) {
+        r[0] = SI;
+        r += 1;
+        state1 = STATE_ASCII;
+      }
+      r[0] = buf[0];
+      if (wc == 0x000a || wc == 0x000d) {
+        state2 = STATE2_NONE; state3 = STATE3_NONE; state4 = STATE3_NONE;
+      }
+      COMBINE_STATE;
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  /* Try GB 2312-1980. */
+  ret = gb2312_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (buf[0] < 0x80 && buf[1] < 0x80) {
+      int count = (state2 == STATE2_DESIGNATED_GB2312 ? 0 : 4) + (state1 == STATE_TWOBYTE ? 0 : 1) + 2;
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state2 != STATE2_DESIGNATED_GB2312) {
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = ')';
+        r[3] = 'A';
+        r += 4;
+        state2 = STATE2_DESIGNATED_GB2312;
+      }
+      if (state1 != STATE_TWOBYTE) {
+        r[0] = SO;
+        r += 1;
+        state1 = STATE_TWOBYTE;
+      }
+      r[0] = buf[0];
+      r[1] = buf[1];
+      COMBINE_STATE;
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  ret = cns11643_wctomb(conv,buf,wc,3);
+  if (ret != RET_ILUNI) {
+    if (ret != 3) abort();
+
+    /* Try CNS 11643-1992 Plane 1. */
+    if (buf[0] == 1 && buf[1] < 0x80 && buf[2] < 0x80) {
+      int count = (state2 == STATE2_DESIGNATED_CNS11643_1 ? 0 : 4) + (state1 == STATE_TWOBYTE ? 0 : 1) + 2;
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state2 != STATE2_DESIGNATED_CNS11643_1) {
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = ')';
+        r[3] = 'G';
+        r += 4;
+        state2 = STATE2_DESIGNATED_CNS11643_1;
+      }
+      if (state1 != STATE_TWOBYTE) {
+        r[0] = SO;
+        r += 1;
+        state1 = STATE_TWOBYTE;
+      }
+      r[0] = buf[1];
+      r[1] = buf[2];
+      COMBINE_STATE;
+      conv->ostate = state;
+      return count;
+    }
+
+    /* Try CNS 11643-1992 Plane 2. */
+    if (buf[0] == 2 && buf[1] < 0x80 && buf[2] < 0x80) {
+      int count = (state3 == STATE3_DESIGNATED_CNS11643_2 ? 0 : 4) + 4;
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state3 != STATE3_DESIGNATED_CNS11643_2) {
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = '*';
+        r[3] = 'H';
+        r += 4;
+        state3 = STATE3_DESIGNATED_CNS11643_2;
+      }
+      r[0] = ESC;
+      r[1] = 'N';
+      r[2] = buf[1];
+      r[3] = buf[2];
+      COMBINE_STATE;
+      conv->ostate = state;
+      return count;
+    }
+
+    /* Try CNS 11643-1992 Plane 3. */
+    if (buf[0] == 3 && buf[1] < 0x80 && buf[2] < 0x80) {
+      int count = (state4 == STATE4_DESIGNATED_CNS11643_3 ? 0 : 4) + 4;
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state4 != STATE4_DESIGNATED_CNS11643_3) {
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = '+';
+        r[3] = 'I';
+        r += 4;
+        state4 = STATE4_DESIGNATED_CNS11643_3;
+      }
+      r[0] = ESC;
+      r[1] = 'O';
+      r[2] = buf[1];
+      r[3] = buf[2];
+      COMBINE_STATE;
+      conv->ostate = state;
+      return count;
+    }
+
+    /* Try CNS 11643-1992 Plane 4. */
+    if (buf[0] == 4 && buf[1] < 0x80 && buf[2] < 0x80) {
+      int count = (state4 == STATE4_DESIGNATED_CNS11643_4 ? 0 : 4) + 4;
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state4 != STATE4_DESIGNATED_CNS11643_4) {
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = '+';
+        r[3] = 'J';
+        r += 4;
+        state4 = STATE4_DESIGNATED_CNS11643_4;
+      }
+      r[0] = ESC;
+      r[1] = 'O';
+      r[2] = buf[1];
+      r[3] = buf[2];
+      COMBINE_STATE;
+      conv->ostate = state;
+      return count;
+    }
+
+    /* Try CNS 11643-1992 Plane 5. */
+    if (buf[0] == 5 && buf[1] < 0x80 && buf[2] < 0x80) {
+      int count = (state4 == STATE4_DESIGNATED_CNS11643_5 ? 0 : 4) + 4;
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state4 != STATE4_DESIGNATED_CNS11643_5) {
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = '+';
+        r[3] = 'K';
+        r += 4;
+        state4 = STATE4_DESIGNATED_CNS11643_5;
+      }
+      r[0] = ESC;
+      r[1] = 'O';
+      r[2] = buf[1];
+      r[3] = buf[2];
+      COMBINE_STATE;
+      conv->ostate = state;
+      return count;
+    }
+
+    /* Try CNS 11643-1992 Plane 6. */
+    if (buf[0] == 6 && buf[1] < 0x80 && buf[2] < 0x80) {
+      int count = (state4 == STATE4_DESIGNATED_CNS11643_6 ? 0 : 4) + 4;
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state4 != STATE4_DESIGNATED_CNS11643_6) {
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = '+';
+        r[3] = 'L';
+        r += 4;
+        state4 = STATE4_DESIGNATED_CNS11643_6;
+      }
+      r[0] = ESC;
+      r[1] = 'O';
+      r[2] = buf[1];
+      r[3] = buf[2];
+      COMBINE_STATE;
+      conv->ostate = state;
+      return count;
+    }
+
+    /* Try CNS 11643-1992 Plane 7. */
+    if (buf[0] == 7 && buf[1] < 0x80 && buf[2] < 0x80) {
+      int count = (state4 == STATE4_DESIGNATED_CNS11643_7 ? 0 : 4) + 4;
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state4 != STATE4_DESIGNATED_CNS11643_7) {
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = '+';
+        r[3] = 'M';
+        r += 4;
+        state4 = STATE4_DESIGNATED_CNS11643_7;
+      }
+      r[0] = ESC;
+      r[1] = 'O';
+      r[2] = buf[1];
+      r[3] = buf[2];
+      COMBINE_STATE;
+      conv->ostate = state;
+      return count;
+    }
+
+  }
+
+  /* Try ISO-IR-165. */
+  ret = isoir165_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (buf[0] < 0x80 && buf[1] < 0x80) {
+      int count = (state2 == STATE2_DESIGNATED_ISO_IR_165 ? 0 : 4) + (state1 == STATE_TWOBYTE ? 0 : 1) + 2;
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state2 != STATE2_DESIGNATED_ISO_IR_165) {
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = ')';
+        r[3] = 'E';
+        r += 4;
+        state2 = STATE2_DESIGNATED_ISO_IR_165;
+      }
+      if (state1 != STATE_TWOBYTE) {
+        r[0] = SO;
+        r += 1;
+        state1 = STATE_TWOBYTE;
+      }
+      r[0] = buf[0];
+      r[1] = buf[1];
+      COMBINE_STATE;
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  return RET_ILUNI;
+}
+
+static int
+iso2022_cn_ext_reset (conv_t conv, unsigned char *r, int n)
+{
+  state_t state = conv->ostate;
+  SPLIT_STATE;
+  (void)state2;
+  (void)state3;
+  (void)state4;
+  if (state1 != STATE_ASCII) {
+    if (n < 1)
+      return RET_TOOSMALL;
+    r[0] = SI;
+    /* conv->ostate = 0; will be done by the caller */
+    return 1;
+  } else
+    return 0;
+}
+
+#undef COMBINE_STATE
+#undef SPLIT_STATE
+#undef STATE4_DESIGNATED_CNS11643_7
+#undef STATE4_DESIGNATED_CNS11643_6
+#undef STATE4_DESIGNATED_CNS11643_5
+#undef STATE4_DESIGNATED_CNS11643_4
+#undef STATE4_DESIGNATED_CNS11643_3
+#undef STATE4_NONE
+#undef STATE3_DESIGNATED_CNS11643_2
+#undef STATE3_NONE
+#undef STATE2_DESIGNATED_ISO_IR_165
+#undef STATE2_DESIGNATED_CNS11643_1
+#undef STATE2_DESIGNATED_GB2312
+#undef STATE2_NONE
+#undef STATE_TWOBYTE
+#undef STATE_ASCII
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso2022_jp.h b/graf2d/win32gdk/gdk/src/iconv/iso2022_jp.h
new file mode 100644
index 00000000000..1c8abec1bb3
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso2022_jp.h
@@ -0,0 +1,216 @@
+/*
+ * Copyright (C) 1999-2001, 2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-2022-JP
+ */
+
+/* Specification: RFC 1468 */
+
+#define ESC 0x1b
+
+/*
+ * The state can be one of the following values.
+ */
+#define STATE_ASCII          0
+#define STATE_JISX0201ROMAN  1
+#define STATE_JISX0208       2
+
+static int
+iso2022_jp_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  state_t state = conv->istate;
+  int count = 0;
+  unsigned char c;
+  for (;;) {
+    c = *s;
+    if (c == ESC) {
+      if (n < count+3)
+        goto none;
+      if (s[1] == '(') {
+        if (s[2] == 'B') {
+          state = STATE_ASCII;
+          s += 3; count += 3;
+          if (n < count+1)
+            goto none;
+          continue;
+        }
+        if (s[2] == 'J') {
+          state = STATE_JISX0201ROMAN;
+          s += 3; count += 3;
+          if (n < count+1)
+            goto none;
+          continue;
+        }
+        goto ilseq;
+      }
+      if (s[1] == '$') {
+        if (s[2] == '@' || s[2] == 'B') {
+          /* We don't distinguish JIS X 0208-1978 and JIS X 0208-1983. */
+          state = STATE_JISX0208;
+          s += 3; count += 3;
+          if (n < count+1)
+            goto none;
+          continue;
+        }
+        goto ilseq;
+      }
+      goto ilseq;
+    }
+    break;
+  }
+  switch (state) {
+    case STATE_ASCII:
+      if (c < 0x80) {
+        int ret = ascii_mbtowc(conv,pwc,s,1);
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 1) abort();
+        conv->istate = state;
+        return count+1;
+      } else
+        goto ilseq;
+    case STATE_JISX0201ROMAN:
+      if (c < 0x80) {
+        int ret = jisx0201_mbtowc(conv,pwc,s,1);
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 1) abort();
+        conv->istate = state;
+        return count+1;
+      } else
+        goto ilseq;
+    case STATE_JISX0208:
+      if (n < count+2)
+        goto none;
+      if (s[0] < 0x80 && s[1] < 0x80) {
+        int ret = jisx0208_mbtowc(conv,pwc,s,2);
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 2) abort();
+        conv->istate = state;
+        return count+2;
+      } else
+        goto ilseq;
+    default: abort();
+  }
+
+none:
+  conv->istate = state;
+  return RET_TOOFEW(count);
+
+ilseq:
+  conv->istate = state;
+  return RET_SHIFT_ILSEQ(count);
+}
+
+static int
+iso2022_jp_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  state_t state = conv->ostate;
+  unsigned char buf[2];
+  int ret;
+
+  /* Try ASCII. */
+  ret = ascii_wctomb(conv,buf,wc,1);
+  if (ret != RET_ILUNI) {
+    if (ret != 1) abort();
+    if (buf[0] < 0x80) {
+      int count = (state == STATE_ASCII ? 1 : 4);
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state != STATE_ASCII) {
+        r[0] = ESC;
+        r[1] = '(';
+        r[2] = 'B';
+        r += 3;
+        state = STATE_ASCII;
+      }
+      r[0] = buf[0];
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  /* Try JIS X 0201-1976 Roman. */
+  ret = jisx0201_wctomb(conv,buf,wc,1);
+  if (ret != RET_ILUNI) {
+    if (ret != 1) abort();
+    if (buf[0] < 0x80) {
+      int count = (state == STATE_JISX0201ROMAN ? 1 : 4);
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state != STATE_JISX0201ROMAN) {
+        r[0] = ESC;
+        r[1] = '(';
+        r[2] = 'J';
+        r += 3;
+        state = STATE_JISX0201ROMAN;
+      }
+      r[0] = buf[0];
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  /* Try JIS X 0208-1990 in place of JIS X 0208-1978 and JIS X 0208-1983. */
+  ret = jisx0208_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (buf[0] < 0x80 && buf[1] < 0x80) {
+      int count = (state == STATE_JISX0208 ? 2 : 5);
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state != STATE_JISX0208) {
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = 'B';
+        r += 3;
+        state = STATE_JISX0208;
+      }
+      r[0] = buf[0];
+      r[1] = buf[1];
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  return RET_ILUNI;
+}
+
+static int
+iso2022_jp_reset (conv_t conv, unsigned char *r, int n)
+{
+  state_t state = conv->ostate;
+  if (state != STATE_ASCII) {
+    if (n < 3)
+      return RET_TOOSMALL;
+    r[0] = ESC;
+    r[1] = '(';
+    r[2] = 'B';
+    /* conv->ostate = 0; will be done by the caller */
+    return 3;
+  } else
+    return 0;
+}
+
+#undef STATE_JISX0208
+#undef STATE_JISX0201ROMAN
+#undef STATE_ASCII
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso2022_jp1.h b/graf2d/win32gdk/gdk/src/iconv/iso2022_jp1.h
new file mode 100644
index 00000000000..c3094740f9a
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso2022_jp1.h
@@ -0,0 +1,264 @@
+/*
+ * Copyright (C) 1999-2001, 2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-2022-JP-1
+ */
+
+/* Specification: RFC 2237 */
+
+#define ESC 0x1b
+
+/*
+ * The state can be one of the following values.
+ */
+#define STATE_ASCII          0
+#define STATE_JISX0201ROMAN  1
+#define STATE_JISX0208       2
+#define STATE_JISX0212       3
+
+static int
+iso2022_jp1_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  state_t state = conv->istate;
+  int count = 0;
+  unsigned char c;
+  for (;;) {
+    c = *s;
+    if (c == ESC) {
+      if (n < count+3)
+        goto none;
+      if (s[1] == '(') {
+        if (s[2] == 'B') {
+          state = STATE_ASCII;
+          s += 3; count += 3;
+          if (n < count+1)
+            goto none;
+          continue;
+        }
+        if (s[2] == 'J') {
+          state = STATE_JISX0201ROMAN;
+          s += 3; count += 3;
+          if (n < count+1)
+            goto none;
+          continue;
+        }
+        goto ilseq;
+      }
+      if (s[1] == '$') {
+        if (s[2] == '@' || s[2] == 'B') {
+          /* We don't distinguish JIS X 0208-1978 and JIS X 0208-1983. */
+          state = STATE_JISX0208;
+          s += 3; count += 3;
+          if (n < count+1)
+            goto none;
+          continue;
+        }
+        if (s[2] == '(') {
+          if (n < count+4)
+            goto none;
+          if (s[3] == 'D') {
+            state = STATE_JISX0212;
+            s += 4; count += 4;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+        }
+        goto ilseq;
+      }
+      goto ilseq;
+    }
+    break;
+  }
+  switch (state) {
+    case STATE_ASCII:
+      if (c < 0x80) {
+        int ret = ascii_mbtowc(conv,pwc,s,1);
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 1) abort();
+        conv->istate = state;
+        return count+1;
+      } else
+        goto ilseq;
+    case STATE_JISX0201ROMAN:
+      if (c < 0x80) {
+        int ret = jisx0201_mbtowc(conv,pwc,s,1);
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 1) abort();
+        conv->istate = state;
+        return count+1;
+      } else
+        goto ilseq;
+    case STATE_JISX0208:
+      if (n < count+2)
+        goto none;
+      if (s[0] < 0x80 && s[1] < 0x80) {
+        int ret = jisx0208_mbtowc(conv,pwc,s,2);
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 2) abort();
+        conv->istate = state;
+        return count+2;
+      } else
+        goto ilseq;
+    case STATE_JISX0212:
+      if (n < count+2)
+        goto none;
+      if (s[0] < 0x80 && s[1] < 0x80) {
+        int ret = jisx0212_mbtowc(conv,pwc,s,2);
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 2) abort();
+        conv->istate = state;
+        return count+2;
+      } else
+        goto ilseq;
+    default: abort();
+  }
+
+none:
+  conv->istate = state;
+  return RET_TOOFEW(count);
+
+ilseq:
+  conv->istate = state;
+  return RET_SHIFT_ILSEQ(count);
+}
+
+static int
+iso2022_jp1_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  state_t state = conv->ostate;
+  unsigned char buf[2];
+  int ret;
+
+  /* Try ASCII. */
+  ret = ascii_wctomb(conv,buf,wc,1);
+  if (ret != RET_ILUNI) {
+    if (ret != 1) abort();
+    if (buf[0] < 0x80) {
+      int count = (state == STATE_ASCII ? 1 : 4);
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state != STATE_ASCII) {
+        r[0] = ESC;
+        r[1] = '(';
+        r[2] = 'B';
+        r += 3;
+        state = STATE_ASCII;
+      }
+      r[0] = buf[0];
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  /* Try JIS X 0201-1976 Roman. */
+  ret = jisx0201_wctomb(conv,buf,wc,1);
+  if (ret != RET_ILUNI) {
+    if (ret != 1) abort();
+    if (buf[0] < 0x80) {
+      int count = (state == STATE_JISX0201ROMAN ? 1 : 4);
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state != STATE_JISX0201ROMAN) {
+        r[0] = ESC;
+        r[1] = '(';
+        r[2] = 'J';
+        r += 3;
+        state = STATE_JISX0201ROMAN;
+      }
+      r[0] = buf[0];
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  /* Try JIS X 0208-1990 in place of JIS X 0208-1978 and JIS X 0208-1983. */
+  ret = jisx0208_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (buf[0] < 0x80 && buf[1] < 0x80) {
+      int count = (state == STATE_JISX0208 ? 2 : 5);
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state != STATE_JISX0208) {
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = 'B';
+        r += 3;
+        state = STATE_JISX0208;
+      }
+      r[0] = buf[0];
+      r[1] = buf[1];
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  /* Try JIS X 0212-1990. */
+  ret = jisx0212_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (buf[0] < 0x80 && buf[1] < 0x80) {
+      int count = (state == STATE_JISX0212 ? 2 : 6);
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state != STATE_JISX0212) {
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = '(';
+        r[3] = 'D';
+        r += 4;
+        state = STATE_JISX0212;
+      }
+      r[0] = buf[0];
+      r[1] = buf[1];
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  return RET_ILUNI;
+}
+
+static int
+iso2022_jp1_reset (conv_t conv, unsigned char *r, int n)
+{
+  state_t state = conv->ostate;
+  if (state != STATE_ASCII) {
+    if (n < 3)
+      return RET_TOOSMALL;
+    r[0] = ESC;
+    r[1] = '(';
+    r[2] = 'B';
+    /* conv->ostate = 0; will be done by the caller */
+    return 3;
+  } else
+    return 0;
+}
+
+#undef STATE_JISX0212
+#undef STATE_JISX0208
+#undef STATE_JISX0201ROMAN
+#undef STATE_ASCII
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso2022_jp2.h b/graf2d/win32gdk/gdk/src/iconv/iso2022_jp2.h
new file mode 100644
index 00000000000..5e3ca41555a
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso2022_jp2.h
@@ -0,0 +1,693 @@
+/*
+ * Copyright (C) 1999-2001, 2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-2022-JP-2
+ */
+
+/* Specification: RFC 1554 */
+/* ESC '(' 'I' for JISX0201 Katakana is an extension not found in RFC 1554 or
+   CJK.INF, but implemented in glibc-2.1 and qt-2.0. */
+
+#define ESC 0x1b
+
+/*
+ * The state is composed of one of the following values
+ */
+#define STATE_ASCII             0
+#define STATE_JISX0201ROMAN     1
+#define STATE_JISX0201KATAKANA  2
+#define STATE_JISX0208          3
+#define STATE_JISX0212          4
+#define STATE_GB2312            5
+#define STATE_KSC5601           6
+/*
+ * and one of the following values, << 8
+ */
+#define STATE_G2_NONE           0
+#define STATE_G2_ISO8859_1      1
+#define STATE_G2_ISO8859_7      2
+
+#define SPLIT_STATE \
+  unsigned int state1 = state & 0xff, state2 = state >> 8
+#define COMBINE_STATE \
+  state = (state2 << 8) | state1
+
+static int
+iso2022_jp2_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  state_t state = conv->istate;
+  SPLIT_STATE;
+  int count = 0;
+  unsigned char c;
+  for (;;) {
+    c = *s;
+    if (c == ESC) {
+      if (n < count+3)
+        goto none;
+      if (s[1] == '(') {
+        if (s[2] == 'B') {
+          state1 = STATE_ASCII;
+          s += 3; count += 3;
+          if (n < count+1)
+            goto none;
+          continue;
+        }
+        if (s[2] == 'J') {
+          state1 = STATE_JISX0201ROMAN;
+          s += 3; count += 3;
+          if (n < count+1)
+            goto none;
+          continue;
+        }
+        if (s[2] == 'I') {
+          state1 = STATE_JISX0201KATAKANA;
+          s += 3; count += 3;
+          if (n < count+1)
+            goto none;
+          continue;
+        }
+        goto ilseq;
+      }
+      if (s[1] == '$') {
+        if (s[2] == '@' || s[2] == 'B') {
+          /* We don't distinguish JIS X 0208-1978 and JIS X 0208-1983. */
+          state1 = STATE_JISX0208;
+          s += 3; count += 3;
+          if (n < count+1)
+            goto none;
+          continue;
+        }
+        if (s[2] == 'A') {
+          state1 = STATE_GB2312;
+          s += 3; count += 3;
+          if (n < count+1)
+            goto none;
+          continue;
+        }
+        if (s[2] == '(') {
+          if (n < count+4)
+            goto none;
+          if (s[3] == 'D') {
+            state1 = STATE_JISX0212;
+            s += 4; count += 4;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+          if (s[3] == 'C') {
+            state1 = STATE_KSC5601;
+            s += 4; count += 4;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+          goto ilseq;
+        }
+        goto ilseq;
+      }
+      if (s[1] == '.') {
+        if (n < count+3)
+          goto none;
+        if (s[2] == 'A') {
+          state2 = STATE_G2_ISO8859_1;
+          s += 3; count += 3;
+          if (n < count+1)
+            goto none;
+          continue;
+        }
+        if (s[2] == 'F') {
+          state2 = STATE_G2_ISO8859_7;
+          s += 3; count += 3;
+          if (n < count+1)
+            goto none;
+          continue;
+        }
+        goto ilseq;
+      }
+      if (s[1] == 'N') {
+        switch (state2) {
+          case STATE_G2_NONE:
+            goto ilseq;
+          case STATE_G2_ISO8859_1:
+            if (s[2] < 0x80) {
+              unsigned char buf = s[2]+0x80;
+              int ret = iso8859_1_mbtowc(conv,pwc,&buf,1);
+              if (ret == RET_ILSEQ)
+                goto ilseq;
+              if (ret != 1) abort();
+              COMBINE_STATE;
+              conv->istate = state;
+              return count+3;
+            } else
+              goto ilseq;
+          case STATE_G2_ISO8859_7:
+            if (s[2] < 0x80) {
+              unsigned char buf = s[2]+0x80;
+              int ret = iso8859_7_mbtowc(conv,pwc,&buf,1);
+              if (ret == RET_ILSEQ)
+                goto ilseq;
+              if (ret != 1) abort();
+              COMBINE_STATE;
+              conv->istate = state;
+              return count+3;
+            } else
+              goto ilseq;
+          default: abort();
+        }
+      }
+      goto ilseq;
+    }
+    break;
+  }
+  switch (state1) {
+    case STATE_ASCII:
+      if (c < 0x80) {
+        int ret = ascii_mbtowc(conv,pwc,s,1);
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 1) abort();
+        if (*pwc == 0x000a || *pwc == 0x000d)
+          state2 = STATE_G2_NONE;
+        COMBINE_STATE;
+        conv->istate = state;
+        return count+1;
+      } else
+        goto ilseq;
+    case STATE_JISX0201ROMAN:
+      if (c < 0x80) {
+        int ret = jisx0201_mbtowc(conv,pwc,s,1);
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 1) abort();
+        if (*pwc == 0x000a || *pwc == 0x000d)
+          state2 = STATE_G2_NONE;
+        COMBINE_STATE;
+        conv->istate = state;
+        return count+1;
+      } else
+        goto ilseq;
+    case STATE_JISX0201KATAKANA:
+      if (c < 0x80) {
+        unsigned char buf = c+0x80;
+        int ret = jisx0201_mbtowc(conv,pwc,&buf,1);
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 1) abort();
+        COMBINE_STATE;
+        conv->istate = state;
+        return count+1;
+      } else
+        goto ilseq;
+    case STATE_JISX0208:
+      if (n < count+2)
+        goto none;
+      if (s[0] < 0x80 && s[1] < 0x80) {
+        int ret = jisx0208_mbtowc(conv,pwc,s,2);
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 2) abort();
+        COMBINE_STATE;
+        conv->istate = state;
+        return count+2;
+      } else
+        goto ilseq;
+    case STATE_JISX0212:
+      if (n < count+2)
+        goto none;
+      if (s[0] < 0x80 && s[1] < 0x80) {
+        int ret = jisx0212_mbtowc(conv,pwc,s,2);
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 2) abort();
+        COMBINE_STATE;
+        conv->istate = state;
+        return count+2;
+      } else
+        goto ilseq;
+    case STATE_GB2312:
+      if (n < count+2)
+        goto none;
+      if (s[0] < 0x80 && s[1] < 0x80) {
+        int ret = gb2312_mbtowc(conv,pwc,s,2);
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 2) abort();
+        COMBINE_STATE;
+        conv->istate = state;
+        return count+2;
+      } else
+        goto ilseq;
+    case STATE_KSC5601:
+      if (n < count+2)
+        goto none;
+      if (s[0] < 0x80 && s[1] < 0x80) {
+        int ret = ksc5601_mbtowc(conv,pwc,s,2);
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 2) abort();
+        COMBINE_STATE;
+        conv->istate = state;
+        return count+2;
+      } else
+        goto ilseq;
+    default: abort();
+  }
+
+none:
+  COMBINE_STATE;
+  conv->istate = state;
+  return RET_TOOFEW(count);
+
+ilseq:
+  COMBINE_STATE;
+  conv->istate = state;
+  return RET_SHIFT_ILSEQ(count);
+}
+
+#undef COMBINE_STATE
+#undef SPLIT_STATE
+
+/*
+ * The state can also contain one of the following values, << 16.
+ * Values >= STATE_TAG_LANGUAGE are temporary tag parsing states.
+ */
+#define STATE_TAG_NONE          0
+#define STATE_TAG_LANGUAGE      4
+#define STATE_TAG_LANGUAGE_j    5
+#define STATE_TAG_LANGUAGE_ja   1
+#define STATE_TAG_LANGUAGE_k    6
+#define STATE_TAG_LANGUAGE_ko   2
+#define STATE_TAG_LANGUAGE_z    7
+#define STATE_TAG_LANGUAGE_zh   3
+
+#define SPLIT_STATE \
+  unsigned int state1 = state & 0xff, state2 = (state >> 8) & 0xff, state3 = state >> 16
+#define COMBINE_STATE \
+  state = (state3 << 16) | (state2 << 8) | state1
+
+static int
+iso2022_jp2_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  state_t state = conv->ostate;
+  SPLIT_STATE;
+  unsigned char buf[2];
+  int ret;
+  /* This defines the conversion preferences depending on the current
+     langauge tag. */
+  enum conversion { none = 0, european, japanese, chinese, korean, other };
+  static const unsigned int conversion_lists[STATE_TAG_LANGUAGE] = {
+    /* STATE_TAG_NONE */
+    japanese + (european << 3) + (chinese << 6) + (korean << 9) + (other << 12),
+    /* STATE_TAG_LANGUAGE_ja */
+    japanese + (european << 3) + (chinese << 6) + (korean << 9) + (other << 12),
+    /* STATE_TAG_LANGUAGE_ko */
+    korean + (european << 3) + (japanese << 6) + (chinese << 9) + (other << 12),
+    /* STATE_TAG_LANGUAGE_zh */
+    chinese + (european << 3) + (japanese << 6) + (korean << 9) + (other << 12)
+  };
+  unsigned int conversion_list;
+
+  /* Handle Unicode tag characters (range U+E0000..U+E007F). */
+  if ((wc >> 7) == (0xe0000 >> 7)) {
+    char c = wc & 0x7f;
+    if (c >= 'A' && c <= 'Z')
+      c += 'a'-'A';
+    switch (c) {
+      case 0x01:
+        state3 = STATE_TAG_LANGUAGE;
+        COMBINE_STATE;
+        conv->ostate = state;
+        return 0;
+      case 'j':
+        if (state3 == STATE_TAG_LANGUAGE) {
+          state3 = STATE_TAG_LANGUAGE_j;
+          COMBINE_STATE;
+          conv->ostate = state;
+          return 0;
+        }
+        break;
+      case 'a':
+        if (state3 == STATE_TAG_LANGUAGE_j) {
+          state3 = STATE_TAG_LANGUAGE_ja;
+          COMBINE_STATE;
+          conv->ostate = state;
+          return 0;
+        }
+        break;
+      case 'k':
+        if (state3 == STATE_TAG_LANGUAGE) {
+          state3 = STATE_TAG_LANGUAGE_k;
+          COMBINE_STATE;
+          conv->ostate = state;
+          return 0;
+        }
+        break;
+      case 'o':
+        if (state3 == STATE_TAG_LANGUAGE_k) {
+          state3 = STATE_TAG_LANGUAGE_ko;
+          COMBINE_STATE;
+          conv->ostate = state;
+          return 0;
+        }
+        break;
+      case 'z':
+        if (state3 == STATE_TAG_LANGUAGE) {
+          state3 = STATE_TAG_LANGUAGE_z;
+          COMBINE_STATE;
+          conv->ostate = state;
+          return 0;
+        }
+        break;
+      case 'h':
+        if (state3 == STATE_TAG_LANGUAGE_z) {
+          state3 = STATE_TAG_LANGUAGE_zh;
+          COMBINE_STATE;
+          conv->ostate = state;
+          return 0;
+        }
+        break;
+      case 0x7f:
+        state3 = STATE_TAG_NONE;
+        COMBINE_STATE;
+        conv->ostate = state;
+        return 0;
+      default:
+        break;
+    }
+    /* Other tag characters reset the tag parsing state or are ignored. */
+    if (state3 >= STATE_TAG_LANGUAGE)
+      state3 = STATE_TAG_NONE;
+    COMBINE_STATE;
+    conv->ostate = state;
+    return 0;
+  }
+  if (state3 >= STATE_TAG_LANGUAGE)
+    state3 = STATE_TAG_NONE;
+
+  /* Try ASCII. */
+  ret = ascii_wctomb(conv,buf,wc,1);
+  if (ret != RET_ILUNI) {
+    if (ret != 1) abort();
+    if (buf[0] < 0x80) {
+      int count = (state1 == STATE_ASCII ? 1 : 4);
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state1 != STATE_ASCII) {
+        r[0] = ESC;
+        r[1] = '(';
+        r[2] = 'B';
+        r += 3;
+        state1 = STATE_ASCII;
+      }
+      r[0] = buf[0];
+      if (wc == 0x000a || wc == 0x000d)
+        state2 = STATE_G2_NONE;
+      COMBINE_STATE;
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  conversion_list = conversion_lists[state3];
+
+  do {
+    switch (conversion_list & ((1 << 3) - 1)) {
+
+      case european:
+
+        /* Try ISO-8859-1. */
+        ret = iso8859_1_wctomb(conv,buf,wc,1);
+        if (ret != RET_ILUNI) {
+          if (ret != 1) abort();
+          if (buf[0] >= 0x80) {
+            int count = (state2 == STATE_G2_ISO8859_1 ? 3 : 6);
+            if (n < count)
+              return RET_TOOSMALL;
+            if (state2 != STATE_G2_ISO8859_1) {
+              r[0] = ESC;
+              r[1] = '.';
+              r[2] = 'A';
+              r += 3;
+              state2 = STATE_G2_ISO8859_1;
+            }
+            r[0] = ESC;
+            r[1] = 'N';
+            r[2] = buf[0]-0x80;
+            COMBINE_STATE;
+            conv->ostate = state;
+            return count;
+          }
+        }
+
+        /* Try ISO-8859-7. */
+        ret = iso8859_7_wctomb(conv,buf,wc,1);
+        if (ret != RET_ILUNI) {
+          if (ret != 1) abort();
+          if (buf[0] >= 0x80) {
+            int count = (state2 == STATE_G2_ISO8859_7 ? 3 : 6);
+            if (n < count)
+              return RET_TOOSMALL;
+            if (state2 != STATE_G2_ISO8859_7) {
+              r[0] = ESC;
+              r[1] = '.';
+              r[2] = 'F';
+              r += 3;
+              state2 = STATE_G2_ISO8859_7;
+            }
+            r[0] = ESC;
+            r[1] = 'N';
+            r[2] = buf[0]-0x80;
+            COMBINE_STATE;
+            conv->ostate = state;
+            return count;
+          }
+        }
+
+        break;
+
+      case japanese:
+
+        /* Try JIS X 0201-1976 Roman. */
+        ret = jisx0201_wctomb(conv,buf,wc,1);
+        if (ret != RET_ILUNI) {
+          if (ret != 1) abort();
+          if (buf[0] < 0x80) {
+            int count = (state1 == STATE_JISX0201ROMAN ? 1 : 4);
+            if (n < count)
+              return RET_TOOSMALL;
+            if (state1 != STATE_JISX0201ROMAN) {
+              r[0] = ESC;
+              r[1] = '(';
+              r[2] = 'J';
+              r += 3;
+              state1 = STATE_JISX0201ROMAN;
+            }
+            r[0] = buf[0];
+            if (wc == 0x000a || wc == 0x000d)
+              state2 = STATE_G2_NONE;
+            COMBINE_STATE;
+            conv->ostate = state;
+            return count;
+          }
+        }
+
+        /* Try JIS X 0208-1990 in place of JIS X 0208-1978 and
+           JIS X 0208-1983. */
+        ret = jisx0208_wctomb(conv,buf,wc,2);
+        if (ret != RET_ILUNI) {
+          if (ret != 2) abort();
+          if (buf[0] < 0x80 && buf[1] < 0x80) {
+            int count = (state1 == STATE_JISX0208 ? 2 : 5);
+            if (n < count)
+              return RET_TOOSMALL;
+            if (state1 != STATE_JISX0208) {
+              r[0] = ESC;
+              r[1] = '$';
+              r[2] = 'B';
+              r += 3;
+              state1 = STATE_JISX0208;
+            }
+            r[0] = buf[0];
+            r[1] = buf[1];
+            COMBINE_STATE;
+            conv->ostate = state;
+            return count;
+          }
+        }
+
+        /* Try JIS X 0212-1990. */
+        ret = jisx0212_wctomb(conv,buf,wc,2);
+        if (ret != RET_ILUNI) {
+          if (ret != 2) abort();
+          if (buf[0] < 0x80 && buf[1] < 0x80) {
+            int count = (state1 == STATE_JISX0212 ? 2 : 6);
+            if (n < count)
+              return RET_TOOSMALL;
+            if (state1 != STATE_JISX0212) {
+              r[0] = ESC;
+              r[1] = '$';
+              r[2] = '(';
+              r[3] = 'D';
+              r += 4;
+              state1 = STATE_JISX0212;
+            }
+            r[0] = buf[0];
+            r[1] = buf[1];
+            COMBINE_STATE;
+            conv->ostate = state;
+            return count;
+          }
+        }
+
+        break;
+
+      case chinese:
+
+        /* Try GB 2312-1980. */
+        ret = gb2312_wctomb(conv,buf,wc,2);
+        if (ret != RET_ILUNI) {
+          if (ret != 2) abort();
+          if (buf[0] < 0x80 && buf[1] < 0x80) {
+            int count = (state1 == STATE_GB2312 ? 2 : 5);
+            if (n < count)
+              return RET_TOOSMALL;
+            if (state1 != STATE_GB2312) {
+              r[0] = ESC;
+              r[1] = '$';
+              r[2] = 'A';
+              r += 3;
+              state1 = STATE_GB2312;
+            }
+            r[0] = buf[0];
+            r[1] = buf[1];
+            COMBINE_STATE;
+            conv->ostate = state;
+            return count;
+          }
+        }
+
+        break;
+
+      case korean:
+
+        /* Try KS C 5601-1992. */
+        ret = ksc5601_wctomb(conv,buf,wc,2);
+        if (ret != RET_ILUNI) {
+          if (ret != 2) abort();
+          if (buf[0] < 0x80 && buf[1] < 0x80) {
+            int count = (state1 == STATE_KSC5601 ? 2 : 6);
+            if (n < count)
+              return RET_TOOSMALL;
+            if (state1 != STATE_KSC5601) {
+              r[0] = ESC;
+              r[1] = '$';
+              r[2] = '(';
+              r[3] = 'C';
+              r += 4;
+              state1 = STATE_KSC5601;
+            }
+            r[0] = buf[0];
+            r[1] = buf[1];
+            COMBINE_STATE;
+            conv->ostate = state;
+            return count;
+          }
+        }
+
+        break;
+
+      case other:
+
+        /* Try JIS X 0201-1976 Kana. This is not officially part of
+           ISO-2022-JP-2, according to RFC 1554. Therefore we try this
+           only after all other attempts. */
+        ret = jisx0201_wctomb(conv,buf,wc,1);
+        if (ret != RET_ILUNI) {
+          if (ret != 1) abort();
+          if (buf[0] >= 0x80) {
+            int count = (state1 == STATE_JISX0201KATAKANA ? 1 : 4);
+            if (n < count)
+              return RET_TOOSMALL;
+            if (state1 != STATE_JISX0201KATAKANA) {
+              r[0] = ESC;
+              r[1] = '(';
+              r[2] = 'I';
+              r += 3;
+              state1 = STATE_JISX0201KATAKANA;
+            }
+            r[0] = buf[0]-0x80;
+            COMBINE_STATE;
+            conv->ostate = state;
+            return count;
+          }
+        }
+
+        break;
+
+      default:
+        abort();
+    }
+
+    conversion_list = conversion_list >> 3;
+  } while (conversion_list != 0);
+
+  return RET_ILUNI;
+}
+
+static int
+iso2022_jp2_reset (conv_t conv, unsigned char *r, int n)
+{
+  state_t state = conv->ostate;
+  SPLIT_STATE;
+  (void)state2;
+  (void)state3;
+  if (state1 != STATE_ASCII) {
+    if (n < 3)
+      return RET_TOOSMALL;
+    r[0] = ESC;
+    r[1] = '(';
+    r[2] = 'B';
+    /* conv->ostate = 0; will be done by the caller */
+    return 3;
+  } else
+    return 0;
+}
+
+#undef COMBINE_STATE
+#undef SPLIT_STATE
+#undef STATE_TAG_LANGUAGE_zh
+#undef STATE_TAG_LANGUAGE_z
+#undef STATE_TAG_LANGUAGE_ko
+#undef STATE_TAG_LANGUAGE_k
+#undef STATE_TAG_LANGUAGE_ja
+#undef STATE_TAG_LANGUAGE_j
+#undef STATE_TAG_LANGUAGE
+#undef STATE_TAG_NONE
+#undef STATE_G2_ISO8859_7
+#undef STATE_G2_ISO8859_1
+#undef STATE_G2_NONE
+#undef STATE_KSC5601
+#undef STATE_GB2312
+#undef STATE_JISX0212
+#undef STATE_JISX0208
+#undef STATE_JISX0201KATAKANA
+#undef STATE_JISX0201ROMAN
+#undef STATE_ASCII
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso2022_jp3.h b/graf2d/win32gdk/gdk/src/iconv/iso2022_jp3.h
new file mode 100644
index 00000000000..58cea1bb348
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso2022_jp3.h
@@ -0,0 +1,538 @@
+/*
+ * Copyright (C) 1999-2004, 2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-2022-JP-3
+ */
+
+#include "jisx0213.h"
+
+#define ESC 0x1b
+
+/*
+ * The state is composed of one of the following values
+ */
+#define STATE_ASCII             0  /* Esc ( B */
+#define STATE_JISX0201ROMAN     1  /* Esc ( J */
+#define STATE_JISX0201KATAKANA  2  /* Esc ( I */
+#define STATE_JISX0208          3  /* Esc $ @ or Esc $ B */
+#define STATE_JISX02131         4  /* Esc $ ( O or Esc $ ( Q*/
+#define STATE_JISX02132         5  /* Esc $ ( P */
+
+/*
+ * In the ISO-2022-JP-3 to UCS-4 direction, the state also holds the last
+ * character to be output, shifted by 3 bits.
+ */
+
+static int
+iso2022_jp3_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  ucs4_t last_wc = conv->istate >> 3;
+  if (last_wc) {
+    /* Output the buffered character. */
+    conv->istate &= 7;
+    *pwc = last_wc;
+    return 0; /* Don't advance the input pointer. */
+  } else {
+    state_t state = conv->istate;
+    int count = 0;
+    unsigned char c;
+    for (;;) {
+      c = *s;
+      if (c == ESC) {
+        if (n < count+3)
+          goto none;
+        if (s[1] == '(') {
+          if (s[2] == 'B') {
+            state = STATE_ASCII;
+            s += 3; count += 3;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+          if (s[2] == 'J') {
+            state = STATE_JISX0201ROMAN;
+            s += 3; count += 3;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+          if (s[2] == 'I') {
+            state = STATE_JISX0201KATAKANA;
+            s += 3; count += 3;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+          goto ilseq;
+        }
+        if (s[1] == '$') {
+          if (s[2] == '@' || s[2] == 'B') {
+            /* We don't distinguish JIS X 0208-1978 and JIS X 0208-1983. */
+            state = STATE_JISX0208;
+            s += 3; count += 3;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+          if (s[2] == '(') {
+            if (n < count+4)
+              goto none;
+            if (s[3] == 'O' || s[3] == 'Q') {
+              state = STATE_JISX02131;
+              s += 4; count += 4;
+              if (n < count+1)
+                goto none;
+              continue;
+            }
+            if (s[3] == 'P') {
+              state = STATE_JISX02132;
+              s += 4; count += 4;
+              if (n < count+1)
+                goto none;
+              continue;
+            }
+          }
+          goto ilseq;
+        }
+        goto ilseq;
+      }
+      break;
+    }
+    switch (state) {
+      case STATE_ASCII:
+        if (c < 0x80) {
+          int ret = ascii_mbtowc(conv,pwc,s,1);
+          if (ret == RET_ILSEQ)
+            goto ilseq;
+          if (ret != 1) abort();
+          conv->istate = state;
+          return count+1;
+        } else
+          goto ilseq;
+      case STATE_JISX0201ROMAN:
+        if (c < 0x80) {
+          int ret = jisx0201_mbtowc(conv,pwc,s,1);
+          if (ret == RET_ILSEQ)
+            goto ilseq;
+          if (ret != 1) abort();
+          conv->istate = state;
+          return count+1;
+        } else
+          goto ilseq;
+      case STATE_JISX0201KATAKANA:
+        if (c < 0x80) {
+          unsigned char buf = c+0x80;
+          int ret = jisx0201_mbtowc(conv,pwc,&buf,1);
+          if (ret == RET_ILSEQ)
+            goto ilseq;
+          if (ret != 1) abort();
+          conv->istate = state;
+          return count+1;
+        } else
+          goto ilseq;
+      case STATE_JISX0208:
+        if (n < count+2)
+          goto none;
+        if (s[0] < 0x80 && s[1] < 0x80) {
+          int ret = jisx0208_mbtowc(conv,pwc,s,2);
+          if (ret == RET_ILSEQ)
+            goto ilseq;
+          if (ret != 2) abort();
+          conv->istate = state;
+          return count+2;
+        } else
+          goto ilseq;
+      case STATE_JISX02131:
+      case STATE_JISX02132:
+        if (n < count+2)
+          goto none;
+        if (s[0] < 0x80 && s[1] < 0x80) {
+          ucs4_t wc = jisx0213_to_ucs4(((state-STATE_JISX02131+1)<<8)+s[0],s[1]);
+          if (wc) {
+            if (wc < 0x80) {
+              /* It's a combining character. */
+              ucs4_t wc1 = jisx0213_to_ucs_combining[wc - 1][0];
+              ucs4_t wc2 = jisx0213_to_ucs_combining[wc - 1][1];
+              /* We cannot output two Unicode characters at once. So,
+                 output the first character and buffer the second one. */
+              *pwc = wc1;
+              conv->istate = (wc2 << 3) | state;
+            } else {
+              *pwc = wc;
+              conv->istate = state;
+            }
+            return count+2;
+          }
+        }
+        goto ilseq;
+      default: abort();
+    }
+  none:
+    conv->istate = state;
+    return RET_TOOFEW(count);
+
+  ilseq:
+    conv->istate = state;
+    return RET_SHIFT_ILSEQ(count);
+  }
+}
+
+static int
+iso2022_jp3_flushwc (conv_t conv, ucs4_t *pwc)
+{
+  ucs4_t last_wc = conv->istate >> 3;
+  if (last_wc) {
+    /* Output the buffered character. */
+    conv->istate &= 7;
+    *pwc = last_wc;
+    return 1;
+  } else
+    return 0;
+}
+
+/*
+ * In the UCS-4 to ISO-2022-JP-3 direction, the state also holds the last two
+ * bytes to be output, shifted by 3 bits, and the STATE_xxxxx value that was
+ * effective before this buffered character, shifted by 19 bits.
+ */
+
+/* Composition tables for each of the relevant combining characters.  */
+static const struct { unsigned short base; unsigned short composed; } iso2022_jp3_comp_table_data[] = {
+#define iso2022_jp3_comp_table02e5_idx 0
+#define iso2022_jp3_comp_table02e5_len 1
+  { 0x2b64, 0x2b65 }, /* 0x12B65 = 0x12B64 U+02E5 */
+#define iso2022_jp3_comp_table02e9_idx (iso2022_jp3_comp_table02e5_idx+iso2022_jp3_comp_table02e5_len)
+#define iso2022_jp3_comp_table02e9_len 1
+  { 0x2b60, 0x2b66 }, /* 0x12B66 = 0x12B60 U+02E9 */
+#define iso2022_jp3_comp_table0300_idx (iso2022_jp3_comp_table02e9_idx+iso2022_jp3_comp_table02e9_len)
+#define iso2022_jp3_comp_table0300_len 5
+  { 0x295c, 0x2b44 }, /* 0x12B44 = 0x1295C U+0300 */
+  { 0x2b38, 0x2b48 }, /* 0x12B48 = 0x12B38 U+0300 */
+  { 0x2b37, 0x2b4a }, /* 0x12B4A = 0x12B37 U+0300 */
+  { 0x2b30, 0x2b4c }, /* 0x12B4C = 0x12B30 U+0300 */
+  { 0x2b43, 0x2b4e }, /* 0x12B4E = 0x12B43 U+0300 */
+#define iso2022_jp3_comp_table0301_idx (iso2022_jp3_comp_table0300_idx+iso2022_jp3_comp_table0300_len)
+#define iso2022_jp3_comp_table0301_len 4
+  { 0x2b38, 0x2b49 }, /* 0x12B49 = 0x12B38 U+0301 */
+  { 0x2b37, 0x2b4b }, /* 0x12B4B = 0x12B37 U+0301 */
+  { 0x2b30, 0x2b4d }, /* 0x12B4D = 0x12B30 U+0301 */
+  { 0x2b43, 0x2b4f }, /* 0x12B4F = 0x12B43 U+0301 */
+#define iso2022_jp3_comp_table309a_idx (iso2022_jp3_comp_table0301_idx+iso2022_jp3_comp_table0301_len)
+#define iso2022_jp3_comp_table309a_len 14
+  { 0x242b, 0x2477 }, /* 0x12477 = 0x1242B U+309A */
+  { 0x242d, 0x2478 }, /* 0x12478 = 0x1242D U+309A */
+  { 0x242f, 0x2479 }, /* 0x12479 = 0x1242F U+309A */
+  { 0x2431, 0x247a }, /* 0x1247A = 0x12431 U+309A */
+  { 0x2433, 0x247b }, /* 0x1247B = 0x12433 U+309A */
+  { 0x252b, 0x2577 }, /* 0x12577 = 0x1252B U+309A */
+  { 0x252d, 0x2578 }, /* 0x12578 = 0x1252D U+309A */
+  { 0x252f, 0x2579 }, /* 0x12579 = 0x1252F U+309A */
+  { 0x2531, 0x257a }, /* 0x1257A = 0x12531 U+309A */
+  { 0x2533, 0x257b }, /* 0x1257B = 0x12533 U+309A */
+  { 0x253b, 0x257c }, /* 0x1257C = 0x1253B U+309A */
+  { 0x2544, 0x257d }, /* 0x1257D = 0x12544 U+309A */
+  { 0x2548, 0x257e }, /* 0x1257E = 0x12548 U+309A */
+  { 0x2675, 0x2678 }, /* 0x12678 = 0x12675 U+309A */
+};
+
+#define SPLIT_STATE \
+  unsigned short lasttwo = state >> 3; state_t prevstate = state >> 19; state &= 7
+#define COMBINE_STATE \
+  state |= (prevstate << 19) | (lasttwo << 3)
+#define COMBINE_STATE_NO_LASTTWO \
+  /* assume lasttwo == 0, then prevstate is ignored */
+
+static int
+iso2022_jp3_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  int count = 0;
+  unsigned char buf[2];
+  unsigned short jch;
+  int ret;
+  state_t state = conv->ostate;
+  SPLIT_STATE;
+
+  if (lasttwo) {
+    /* Attempt to combine the last character with this one. */
+    unsigned int idx;
+    unsigned int len;
+
+    if (wc == 0x02e5)
+      idx = iso2022_jp3_comp_table02e5_idx,
+      len = iso2022_jp3_comp_table02e5_len;
+    else if (wc == 0x02e9)
+      idx = iso2022_jp3_comp_table02e9_idx,
+      len = iso2022_jp3_comp_table02e9_len;
+    else if (wc == 0x0300)
+      idx = iso2022_jp3_comp_table0300_idx,
+      len = iso2022_jp3_comp_table0300_len;
+    else if (wc == 0x0301)
+      idx = iso2022_jp3_comp_table0301_idx,
+      len = iso2022_jp3_comp_table0301_len;
+    else if (wc == 0x309a)
+      idx = iso2022_jp3_comp_table309a_idx,
+      len = iso2022_jp3_comp_table309a_len;
+    else
+      goto not_combining;
+
+    do
+      if (iso2022_jp3_comp_table_data[idx].base == lasttwo)
+        break;
+    while (++idx, --len > 0);
+
+    if (len > 0) {
+      /* Output the combined character. */
+      /* We know the combined character is in JISX0213 plane 1, but
+         the buffered character may have been in JISX0208 or in
+         JISX0213 plane 1. */
+      count = (state != STATE_JISX02131 ? 4 : 0) + 2;
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state != STATE_JISX02131) {
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = '(';
+        r[3] = 'Q';
+        r += 4;
+        state = STATE_JISX02131;
+      }
+      lasttwo = iso2022_jp3_comp_table_data[idx].composed;
+      r[0] = (lasttwo >> 8) & 0xff;
+      r[1] = lasttwo & 0xff;
+      COMBINE_STATE_NO_LASTTWO;
+      conv->ostate = state;
+      return count;
+    }
+
+  not_combining:
+    /* Output the buffered character. */
+    /* We know it is in JISX0208 or in JISX0213 plane 1. */
+    count = (prevstate != state ? 3 : 0) + 2;
+    if (n < count)
+      return RET_TOOSMALL;
+    if (prevstate != state) {
+      if (state != STATE_JISX0208) abort();
+      r[0] = ESC;
+      r[1] = '$';
+      r[2] = 'B';
+      r += 3;
+    }
+    r[0] = (lasttwo >> 8) & 0xff;
+    r[1] = lasttwo & 0xff;
+    r += 2;
+  }
+
+  /* Try ASCII. */
+  ret = ascii_wctomb(conv,buf,wc,1);
+  if (ret != RET_ILUNI) {
+    if (ret != 1) abort();
+    if (buf[0] < 0x80) {
+      count += (state == STATE_ASCII ? 1 : 4);
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state != STATE_ASCII) {
+        r[0] = ESC;
+        r[1] = '(';
+        r[2] = 'B';
+        r += 3;
+        state = STATE_ASCII;
+      }
+      r[0] = buf[0];
+      COMBINE_STATE_NO_LASTTWO;
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  /* Try JIS X 0201-1976 Roman. */
+  ret = jisx0201_wctomb(conv,buf,wc,1);
+  if (ret != RET_ILUNI) {
+    if (ret != 1) abort();
+    if (buf[0] < 0x80) {
+      count += (state == STATE_JISX0201ROMAN ? 1 : 4);
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state != STATE_JISX0201ROMAN) {
+        r[0] = ESC;
+        r[1] = '(';
+        r[2] = 'J';
+        r += 3;
+        state = STATE_JISX0201ROMAN;
+      }
+      r[0] = buf[0];
+      COMBINE_STATE_NO_LASTTWO;
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  jch = ucs4_to_jisx0213(wc);
+
+  /* Try JIS X 0208-1990 in place of JIS X 0208-1978 and JIS X 0208-1983. */
+  ret = jisx0208_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (buf[0] < 0x80 && buf[1] < 0x80) {
+      if (jch & 0x0080) {
+        /* A possible match in comp_table_data. Buffer it. */
+        prevstate = state;
+        lasttwo = jch & 0x7f7f;
+        state = STATE_JISX0208;
+        COMBINE_STATE;
+        conv->ostate = state;
+        return count;
+      } else {
+        count += (state == STATE_JISX0208 ? 2 : 5);
+        if (n < count)
+          return RET_TOOSMALL;
+        if (state != STATE_JISX0208) {
+          r[0] = ESC;
+          r[1] = '$';
+          r[2] = 'B';
+          r += 3;
+          state = STATE_JISX0208;
+        }
+        r[0] = buf[0];
+        r[1] = buf[1];
+        COMBINE_STATE_NO_LASTTWO;
+        conv->ostate = state;
+        return count;
+      }
+    }
+  }
+
+  /* Try JISX 0213 plane 1 and JISX 0213 plane 2. */
+  if (jch != 0) {
+    if (jch & 0x8000) {
+      /* JISX 0213 plane 2. */
+      if (state != STATE_JISX02132) {
+        count += 4;
+        if (n < count)
+          return RET_TOOSMALL;
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = '(';
+        r[3] = 'P';
+        r += 4;
+        state = STATE_JISX02132;
+      }
+    } else {
+      /* JISX 0213 plane 1. */
+      if (state != STATE_JISX02131) {
+        count += 4;
+        if (n < count)
+          return RET_TOOSMALL;
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = '(';
+        r[3] = 'Q';
+        r += 4;
+        state = STATE_JISX02131;
+      }
+    }
+    if (jch & 0x0080) {
+      /* A possible match in comp_table_data. We have to buffer it. */
+      /* We know it's a JISX 0213 plane 1 character. */
+      if (jch & 0x8000) abort();
+      prevstate = state;
+      lasttwo = jch & 0x7f7f;
+      COMBINE_STATE;
+      conv->ostate = state;
+      return count;
+    }
+    count += 2;
+    if (n < count)
+      return RET_TOOSMALL;
+    r[0] = (jch >> 8) & 0x7f;
+    r[1] = jch & 0x7f;
+    COMBINE_STATE_NO_LASTTWO;
+    conv->ostate = state;
+    return count;
+  }
+
+  /* Try JIS X 0201-1976 Katakana. This is not officially part of
+     ISO-2022-JP-3. Therefore we try it after all other attempts. */
+  ret = jisx0201_wctomb(conv,buf,wc,1);
+  if (ret != RET_ILUNI) {
+    if (ret != 1) abort();
+    if (buf[0] >= 0x80) {
+      count += (state == STATE_JISX0201KATAKANA ? 1 : 4);
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state != STATE_JISX0201KATAKANA) {
+        r[0] = ESC;
+        r[1] = '(';
+        r[2] = 'I';
+        r += 3;
+        state = STATE_JISX0201KATAKANA;
+      }
+      r[0] = buf[0]-0x80;
+      COMBINE_STATE_NO_LASTTWO;
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  return RET_ILUNI;
+}
+
+static int
+iso2022_jp3_reset (conv_t conv, unsigned char *r, int n)
+{
+  state_t state = conv->ostate;
+  SPLIT_STATE;
+  {
+    int count =
+      (lasttwo ? (prevstate != state ? 3 : 0) + 2 : 0)
+      + (state != STATE_ASCII ? 3 : 0);
+    if (n < count)
+      return RET_TOOSMALL;
+    if (lasttwo) {
+      if (prevstate != state) {
+        if (state != STATE_JISX0208) abort();
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = 'B';
+        r += 3;
+      }
+      r[0] = (lasttwo >> 8) & 0xff;
+      r[1] = lasttwo & 0xff;
+      r += 2;
+    }
+    if (state != STATE_ASCII) {
+      r[0] = ESC;
+      r[1] = '(';
+      r[2] = 'B';
+    }
+    /* conv->ostate = 0; will be done by the caller */
+    return count;
+  }
+}
+
+#undef COMBINE_STATE_NO_LASTTWO
+#undef COMBINE_STATE
+#undef SPLIT_STATE
+#undef STATE_JISX02132
+#undef STATE_JISX02131
+#undef STATE_JISX0208
+#undef STATE_JISX0201KATAKANA
+#undef STATE_JISX0201ROMAN
+#undef STATE_ASCII
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso2022_kr.h b/graf2d/win32gdk/gdk/src/iconv/iso2022_kr.h
new file mode 100644
index 00000000000..8045d4e5e10
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso2022_kr.h
@@ -0,0 +1,222 @@
+/*
+ * Copyright (C) 1999-2001, 2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-2022-KR
+ */
+
+/* Specification: RFC 1557 */
+
+/* Note: CJK.INF says the SO designator needs to appear only once at the
+   beginning of a text, but to decrease the risk of ambiguities, when
+   producing ISO-2022-KR, we repeat the designator in every line containing
+   SO characters. RFC 1557 does not mandate this. */
+
+#define ESC 0x1b
+#define SO  0x0e
+#define SI  0x0f
+
+/*
+ * The state is composed of one of the following values
+ */
+#define STATE_ASCII          0
+#define STATE_TWOBYTE        1
+/*
+ * and one of the following values, << 8
+ */
+#define STATE2_NONE                0
+#define STATE2_DESIGNATED_KSC5601  1
+
+#define SPLIT_STATE \
+  unsigned int state1 = state & 0xff, state2 = state >> 8
+#define COMBINE_STATE \
+  state = (state2 << 8) | state1
+
+static int
+iso2022_kr_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  state_t state = conv->istate;
+  SPLIT_STATE;
+  int count = 0;
+  unsigned char c;
+  for (;;) {
+    c = *s;
+    if (c == ESC) {
+      if (n < count+4)
+        goto none;
+      if (s[1] == '$') {
+        if (s[2] == ')') {
+          if (s[3] == 'C') {
+            state2 = STATE2_DESIGNATED_KSC5601;
+            s += 4; count += 4;
+            if (n < count+1)
+              goto none;
+            continue;
+          }
+        }
+      }
+      goto ilseq;
+    }
+    if (c == SO) {
+      if (state2 != STATE2_DESIGNATED_KSC5601)
+        goto ilseq;
+      state1 = STATE_TWOBYTE;
+      s++; count++;
+      if (n < count+1)
+        goto none;
+      continue;
+    }
+    if (c == SI) {
+      state1 = STATE_ASCII;
+      s++; count++;
+      if (n < count+1)
+        goto none;
+      continue;
+    }
+    break;
+  }
+  switch (state1) {
+    case STATE_ASCII:
+      if (c < 0x80) {
+        int ret = ascii_mbtowc(conv,pwc,s,1);
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 1) abort();
+#if 0 /* Accept ISO-2022-KR according to CJK.INF. */
+        if (*pwc == 0x000a || *pwc == 0x000d)
+          state2 = STATE2_NONE;
+#endif
+        COMBINE_STATE;
+        conv->istate = state;
+        return count+1;
+      } else
+        goto ilseq;
+    case STATE_TWOBYTE:
+      if (n < count+2)
+        goto none;
+      if (state2 != STATE2_DESIGNATED_KSC5601) abort();
+      if (s[0] < 0x80 && s[1] < 0x80) {
+        int ret = ksc5601_mbtowc(conv,pwc,s,2);
+        if (ret == RET_ILSEQ)
+          goto ilseq;
+        if (ret != 2) abort();
+        COMBINE_STATE;
+        conv->istate = state;
+        return count+2;
+      } else
+        goto ilseq;
+    default: abort();
+  }
+
+none:
+  COMBINE_STATE;
+  conv->istate = state;
+  return RET_TOOFEW(count);
+
+ilseq:
+  COMBINE_STATE;
+  conv->istate = state;
+  return RET_SHIFT_ILSEQ(count);
+}
+
+static int
+iso2022_kr_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  state_t state = conv->ostate;
+  SPLIT_STATE;
+  unsigned char buf[2];
+  int ret;
+
+  /* Try ASCII. */
+  ret = ascii_wctomb(conv,buf,wc,1);
+  if (ret != RET_ILUNI) {
+    if (ret != 1) abort();
+    if (buf[0] < 0x80) {
+      int count = (state1 == STATE_ASCII ? 1 : 2);
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state1 != STATE_ASCII) {
+        r[0] = SI;
+        r += 1;
+        state1 = STATE_ASCII;
+      }
+      r[0] = buf[0];
+      if (wc == 0x000a || wc == 0x000d)
+        state2 = STATE2_NONE;
+      COMBINE_STATE;
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  /* Try KS C 5601-1992. */
+  ret = ksc5601_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (buf[0] < 0x80 && buf[1] < 0x80) {
+      int count = (state2 == STATE2_DESIGNATED_KSC5601 ? 0 : 4) + (state1 == STATE_TWOBYTE ? 0 : 1) + 2;
+      if (n < count)
+        return RET_TOOSMALL;
+      if (state2 != STATE2_DESIGNATED_KSC5601) {
+        r[0] = ESC;
+        r[1] = '$';
+        r[2] = ')';
+        r[3] = 'C';
+        r += 4;
+        state2 = STATE2_DESIGNATED_KSC5601;
+      }
+      if (state1 != STATE_TWOBYTE) {
+        r[0] = SO;
+        r += 1;
+        state1 = STATE_TWOBYTE;
+      }
+      r[0] = buf[0];
+      r[1] = buf[1];
+      COMBINE_STATE;
+      conv->ostate = state;
+      return count;
+    }
+  }
+
+  return RET_ILUNI;
+}
+
+static int
+iso2022_kr_reset (conv_t conv, unsigned char *r, int n)
+{
+  state_t state = conv->ostate;
+  SPLIT_STATE;
+  (void)state2;
+  if (state1 != STATE_ASCII) {
+    if (n < 1)
+      return RET_TOOSMALL;
+    r[0] = SI;
+    /* conv->ostate = 0; will be done by the caller */
+    return 1;
+  } else
+    return 0;
+}
+
+#undef COMBINE_STATE
+#undef SPLIT_STATE
+#undef STATE2_DESIGNATED_KSC5601
+#undef STATE2_NONE
+#undef STATE_TWOBYTE
+#undef STATE_ASCII
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso646_cn.h b/graf2d/win32gdk/gdk/src/iconv/iso646_cn.h
new file mode 100644
index 00000000000..a571ce713ac
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso646_cn.h
@@ -0,0 +1,58 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO646-CN
+ * also known as GB_1988-80
+ */
+
+static int
+iso646_cn_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    if (c == 0x24)
+      *pwc = (ucs4_t) 0x00a5;
+    else if (c == 0x7e)
+      *pwc = (ucs4_t) 0x203e;
+    else
+      *pwc = (ucs4_t) c;
+    return 1;
+  }
+  return RET_ILSEQ;
+}
+
+static int
+iso646_cn_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (wc < 0x0080 && !(wc == 0x0024 || wc == 0x007e)) {
+    *r = wc;
+    return 1;
+  }
+  if (wc == 0x00a5) {
+    *r = 0x24;
+    return 1;
+  }
+  if (wc == 0x203e) {
+    *r = 0x7e;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso646_jp.h b/graf2d/win32gdk/gdk/src/iconv/iso646_jp.h
new file mode 100644
index 00000000000..7cc3abd040e
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso646_jp.h
@@ -0,0 +1,60 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO646-JP
+ * also known as JIS_C6220-1969-RO
+ */
+
+/* This is the lower half of JIS_X0201. */
+
+static int
+iso646_jp_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    if (c == 0x5c)
+      *pwc = (ucs4_t) 0x00a5;
+    else if (c == 0x7e)
+      *pwc = (ucs4_t) 0x203e;
+    else
+      *pwc = (ucs4_t) c;
+    return 1;
+  }
+  return RET_ILSEQ;
+}
+
+static int
+iso646_jp_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (wc < 0x0080 && !(wc == 0x005c || wc == 0x007e)) {
+    *r = wc;
+    return 1;
+  }
+  if (wc == 0x00a5) {
+    *r = 0x5c;
+    return 1;
+  }
+  if (wc == 0x203e) {
+    *r = 0x7e;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso8859_1.h b/graf2d/win32gdk/gdk/src/iconv/iso8859_1.h
new file mode 100644
index 00000000000..53469164b17
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso8859_1.h
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-8859-1
+ */
+
+static int
+iso8859_1_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  *pwc = (ucs4_t) c;
+  return 1;
+}
+
+static int
+iso8859_1_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (wc < 0x0100) {
+    *r = wc;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso8859_10.h b/graf2d/win32gdk/gdk/src/iconv/iso8859_10.h
new file mode 100644
index 00000000000..49b3f6ad3d5
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso8859_10.h
@@ -0,0 +1,106 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-8859-10
+ */
+
+static const unsigned short iso8859_10_2uni[96] = {
+  /* 0xa0 */
+  0x00a0, 0x0104, 0x0112, 0x0122, 0x012a, 0x0128, 0x0136, 0x00a7,
+  0x013b, 0x0110, 0x0160, 0x0166, 0x017d, 0x00ad, 0x016a, 0x014a,
+  /* 0xb0 */
+  0x00b0, 0x0105, 0x0113, 0x0123, 0x012b, 0x0129, 0x0137, 0x00b7,
+  0x013c, 0x0111, 0x0161, 0x0167, 0x017e, 0x2015, 0x016b, 0x014b,
+  /* 0xc0 */
+  0x0100, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x012e,
+  0x010c, 0x00c9, 0x0118, 0x00cb, 0x0116, 0x00cd, 0x00ce, 0x00cf,
+  /* 0xd0 */
+  0x00d0, 0x0145, 0x014c, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x0168,
+  0x00d8, 0x0172, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df,
+  /* 0xe0 */
+  0x0101, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x012f,
+  0x010d, 0x00e9, 0x0119, 0x00eb, 0x0117, 0x00ed, 0x00ee, 0x00ef,
+  /* 0xf0 */
+  0x00f0, 0x0146, 0x014d, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x0169,
+  0x00f8, 0x0173, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x0138,
+};
+
+static int
+iso8859_10_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0xa0)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) iso8859_10_2uni[c-0xa0];
+  return 1;
+}
+
+static const unsigned char iso8859_10_page00[224] = {
+  0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa7, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0xad, 0x00, 0x00, /* 0xa8-0xaf */
+  0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb7, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0x00, /* 0xc0-0xc7 */
+  0x00, 0xc9, 0x00, 0xcb, 0x00, 0xcd, 0xce, 0xcf, /* 0xc8-0xcf */
+  0xd0, 0x00, 0x00, 0xd3, 0xd4, 0xd5, 0xd6, 0x00, /* 0xd0-0xd7 */
+  0xd8, 0x00, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, /* 0xd8-0xdf */
+  0x00, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0x00, /* 0xe0-0xe7 */
+  0x00, 0xe9, 0x00, 0xeb, 0x00, 0xed, 0xee, 0xef, /* 0xe8-0xef */
+  0xf0, 0x00, 0x00, 0xf3, 0xf4, 0xf5, 0xf6, 0x00, /* 0xf0-0xf7 */
+  0xf8, 0x00, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0x00, /* 0xf8-0xff */
+  /* 0x0100 */
+  0xc0, 0xe0, 0x00, 0x00, 0xa1, 0xb1, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xc8, 0xe8, 0x00, 0x00, /* 0x08-0x0f */
+  0xa9, 0xb9, 0xa2, 0xb2, 0x00, 0x00, 0xcc, 0xec, /* 0x10-0x17 */
+  0xca, 0xea, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0xa3, 0xb3, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0xa5, 0xb5, 0xa4, 0xb4, 0x00, 0x00, 0xc7, 0xe7, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa6, 0xb6, /* 0x30-0x37 */
+  0xff, 0x00, 0x00, 0xa8, 0xb8, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0xd1, 0xf1, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0xaf, 0xbf, 0xd2, 0xf2, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xaa, 0xba, 0x00, 0x00, 0x00, 0x00, 0xab, 0xbb, /* 0x60-0x67 */
+  0xd7, 0xf7, 0xae, 0xbe, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0xd9, 0xf9, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0xac, 0xbc, 0x00, /* 0x78-0x7f */
+};
+
+static int
+iso8859_10_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a0) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0180)
+    c = iso8859_10_page00[wc-0x00a0];
+  else if (wc == 0x2015)
+    c = 0xbd;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso8859_11.h b/graf2d/win32gdk/gdk/src/iconv/iso8859_11.h
new file mode 100644
index 00000000000..ef8b1a66c55
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso8859_11.h
@@ -0,0 +1,52 @@
+/*
+ * Copyright (C) 1999-2004 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-8859-11
+ */
+
+static int
+iso8859_11_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0xa1) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else if (c <= 0xfb && !(c >= 0xdb && c <= 0xde)) {
+    *pwc = (ucs4_t) (c + 0x0d60);
+    return 1;
+  }
+  return RET_ILSEQ;
+}
+
+static int
+iso8859_11_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (wc < 0x00a1) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x0e01 && wc <= 0x0e5b && !(wc >= 0x0e3b && wc <= 0x0e3e)) {
+    *r = wc-0x0d60;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso8859_13.h b/graf2d/win32gdk/gdk/src/iconv/iso8859_13.h
new file mode 100644
index 00000000000..2fadc7b8b41
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso8859_13.h
@@ -0,0 +1,109 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-8859-13
+ */
+
+static const unsigned short iso8859_13_2uni[96] = {
+  /* 0xa0 */
+  0x00a0, 0x201d, 0x00a2, 0x00a3, 0x00a4, 0x201e, 0x00a6, 0x00a7,
+  0x00d8, 0x00a9, 0x0156, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00c6,
+  /* 0xb0 */
+  0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x201c, 0x00b5, 0x00b6, 0x00b7,
+  0x00f8, 0x00b9, 0x0157, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00e6,
+  /* 0xc0 */
+  0x0104, 0x012e, 0x0100, 0x0106, 0x00c4, 0x00c5, 0x0118, 0x0112,
+  0x010c, 0x00c9, 0x0179, 0x0116, 0x0122, 0x0136, 0x012a, 0x013b,
+  /* 0xd0 */
+  0x0160, 0x0143, 0x0145, 0x00d3, 0x014c, 0x00d5, 0x00d6, 0x00d7,
+  0x0172, 0x0141, 0x015a, 0x016a, 0x00dc, 0x017b, 0x017d, 0x00df,
+  /* 0xe0 */
+  0x0105, 0x012f, 0x0101, 0x0107, 0x00e4, 0x00e5, 0x0119, 0x0113,
+  0x010d, 0x00e9, 0x017a, 0x0117, 0x0123, 0x0137, 0x012b, 0x013c,
+  /* 0xf0 */
+  0x0161, 0x0144, 0x0146, 0x00f3, 0x014d, 0x00f5, 0x00f6, 0x00f7,
+  0x0173, 0x0142, 0x015b, 0x016b, 0x00fc, 0x017c, 0x017e, 0x2019,
+};
+
+static int
+iso8859_13_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0xa0)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) iso8859_13_2uni[c-0xa0];
+  return 1;
+}
+
+static const unsigned char iso8859_13_page00[224] = {
+  0xa0, 0x00, 0xa2, 0xa3, 0xa4, 0x00, 0xa6, 0xa7, /* 0xa0-0xa7 */
+  0x00, 0xa9, 0x00, 0xab, 0xac, 0xad, 0xae, 0x00, /* 0xa8-0xaf */
+  0xb0, 0xb1, 0xb2, 0xb3, 0x00, 0xb5, 0xb6, 0xb7, /* 0xb0-0xb7 */
+  0x00, 0xb9, 0x00, 0xbb, 0xbc, 0xbd, 0xbe, 0x00, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0xc4, 0xc5, 0xaf, 0x00, /* 0xc0-0xc7 */
+  0x00, 0xc9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0xd3, 0x00, 0xd5, 0xd6, 0xd7, /* 0xd0-0xd7 */
+  0xa8, 0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0xdf, /* 0xd8-0xdf */
+  0x00, 0x00, 0x00, 0x00, 0xe4, 0xe5, 0xbf, 0x00, /* 0xe0-0xe7 */
+  0x00, 0xe9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0xf3, 0x00, 0xf5, 0xf6, 0xf7, /* 0xf0-0xf7 */
+  0xb8, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+  /* 0x0100 */
+  0xc2, 0xe2, 0x00, 0x00, 0xc0, 0xe0, 0xc3, 0xe3, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xc8, 0xe8, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0xc7, 0xe7, 0x00, 0x00, 0xcb, 0xeb, /* 0x10-0x17 */
+  0xc6, 0xe6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0xcc, 0xec, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0xce, 0xee, 0x00, 0x00, 0xc1, 0xe1, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcd, 0xed, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0xcf, 0xef, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0xd9, 0xf9, 0xd1, 0xf1, 0xd2, 0xf2, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0xd4, 0xf4, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xba, /* 0x50-0x57 */
+  0x00, 0x00, 0xda, 0xfa, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xd0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0xdb, 0xfb, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0xd8, 0xf8, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0xca, 0xea, 0xdd, 0xfd, 0xde, 0xfe, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char iso8859_13_page20[8] = {
+  0x00, 0xff, 0x00, 0x00, 0xb4, 0xa1, 0xa5, 0x00, /* 0x18-0x1f */
+};
+
+static int
+iso8859_13_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a0) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0180)
+    c = iso8859_13_page00[wc-0x00a0];
+  else if (wc >= 0x2018 && wc < 0x2020)
+    c = iso8859_13_page20[wc-0x2018];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso8859_14.h b/graf2d/win32gdk/gdk/src/iconv/iso8859_14.h
new file mode 100644
index 00000000000..01c9cdd9509
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso8859_14.h
@@ -0,0 +1,127 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-8859-14
+ */
+
+static const unsigned short iso8859_14_2uni[96] = {
+  /* 0xa0 */
+  0x00a0, 0x1e02, 0x1e03, 0x00a3, 0x010a, 0x010b, 0x1e0a, 0x00a7,
+  0x1e80, 0x00a9, 0x1e82, 0x1e0b, 0x1ef2, 0x00ad, 0x00ae, 0x0178,
+  /* 0xb0 */
+  0x1e1e, 0x1e1f, 0x0120, 0x0121, 0x1e40, 0x1e41, 0x00b6, 0x1e56,
+  0x1e81, 0x1e57, 0x1e83, 0x1e60, 0x1ef3, 0x1e84, 0x1e85, 0x1e61,
+  /* 0xc0 */
+  0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
+  0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
+  /* 0xd0 */
+  0x0174, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x1e6a,
+  0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x0176, 0x00df,
+  /* 0xe0 */
+  0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
+  0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
+  /* 0xf0 */
+  0x0175, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x1e6b,
+  0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x0177, 0x00ff,
+};
+
+static int
+iso8859_14_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c >= 0xa0)
+    *pwc = (ucs4_t) iso8859_14_2uni[c-0xa0];
+  else
+    *pwc = (ucs4_t) c;
+  return 1;
+}
+
+static const unsigned char iso8859_14_page00[96] = {
+  0xa0, 0x00, 0x00, 0xa3, 0x00, 0x00, 0x00, 0xa7, /* 0xa0-0xa7 */
+  0x00, 0xa9, 0x00, 0x00, 0x00, 0xad, 0xae, 0x00, /* 0xa8-0xaf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb6, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0xc0-0xc7 */
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0xc8-0xcf */
+  0x00, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0x00, /* 0xd0-0xd7 */
+  0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0x00, 0xdf, /* 0xd8-0xdf */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0xe0-0xe7 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0xe8-0xef */
+  0x00, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0x00, /* 0xf0-0xf7 */
+  0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0x00, 0xff, /* 0xf8-0xff */
+};
+static const unsigned char iso8859_14_page01_0[32] = {
+  0x00, 0x00, 0xa4, 0xa5, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0xb2, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char iso8859_14_page01_1[16] = {
+  0x00, 0x00, 0x00, 0x00, 0xd0, 0xf0, 0xde, 0xfe, /* 0x70-0x77 */
+  0xaf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char iso8859_14_page1e_0[136] = {
+  0x00, 0x00, 0xa1, 0xa2, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0xa6, 0xab, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0xb1, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0xb4, 0xb5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb7, 0xb9, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xbb, 0xbf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0xd7, 0xf7, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0xa8, 0xb8, 0xaa, 0xba, 0xbd, 0xbe, 0x00, 0x00, /* 0x80-0x87 */
+};
+static const unsigned char iso8859_14_page1e_1[8] = {
+  0x00, 0x00, 0xac, 0xbc, 0x00, 0x00, 0x00, 0x00, /* 0xf0-0xf7 */
+};
+
+static int
+iso8859_14_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a0) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = iso8859_14_page00[wc-0x00a0];
+  else if (wc >= 0x0108 && wc < 0x0128)
+    c = iso8859_14_page01_0[wc-0x0108];
+  else if (wc >= 0x0170 && wc < 0x0180)
+    c = iso8859_14_page01_1[wc-0x0170];
+  else if (wc >= 0x1e00 && wc < 0x1e88)
+    c = iso8859_14_page1e_0[wc-0x1e00];
+  else if (wc >= 0x1ef0 && wc < 0x1ef8)
+    c = iso8859_14_page1e_1[wc-0x1ef0];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso8859_15.h b/graf2d/win32gdk/gdk/src/iconv/iso8859_15.h
new file mode 100644
index 00000000000..24de90d7d31
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso8859_15.h
@@ -0,0 +1,81 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-8859-15
+ */
+
+static const unsigned short iso8859_15_2uni[32] = {
+  /* 0xa0 */
+  0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x20ac, 0x00a5, 0x0160, 0x00a7,
+  0x0161, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
+  /* 0xb0 */
+  0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x017d, 0x00b5, 0x00b6, 0x00b7,
+  0x017e, 0x00b9, 0x00ba, 0x00bb, 0x0152, 0x0153, 0x0178, 0x00bf,
+};
+
+static int
+iso8859_15_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c >= 0xa0 && c < 0xc0)
+    *pwc = (ucs4_t) iso8859_15_2uni[c-0xa0];
+  else
+    *pwc = (ucs4_t) c;
+  return 1;
+}
+
+static const unsigned char iso8859_15_page00[32] = {
+  0xa0, 0xa1, 0xa2, 0xa3, 0x00, 0xa5, 0x00, 0xa7, /* 0xa0-0xa7 */
+  0x00, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, /* 0xa8-0xaf */
+  0xb0, 0xb1, 0xb2, 0xb3, 0x00, 0xb5, 0xb6, 0xb7, /* 0xb0-0xb7 */
+  0x00, 0xb9, 0xba, 0xbb, 0x00, 0x00, 0x00, 0xbf, /* 0xb8-0xbf */
+};
+static const unsigned char iso8859_15_page01[48] = {
+  0x00, 0x00, 0xbc, 0xbd, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xa6, 0xa8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0xbe, 0x00, 0x00, 0x00, 0x00, 0xb4, 0xb8, 0x00, /* 0x78-0x7f */
+};
+
+static int
+iso8859_15_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a0) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00c0)
+    c = iso8859_15_page00[wc-0x00a0];
+  else if (wc >= 0x00c0 && wc < 0x0100)
+    c = wc;
+  else if (wc >= 0x0150 && wc < 0x0180)
+    c = iso8859_15_page01[wc-0x0150];
+  else if (wc == 0x20ac)
+    c = 0xa4;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso8859_16.h b/graf2d/win32gdk/gdk/src/iconv/iso8859_16.h
new file mode 100644
index 00000000000..200471840f4
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso8859_16.h
@@ -0,0 +1,116 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-8859-16
+ */
+
+static const unsigned short iso8859_16_2uni[96] = {
+  /* 0xa0 */
+  0x00a0, 0x0104, 0x0105, 0x0141, 0x20ac, 0x201e, 0x0160, 0x00a7,
+  0x0161, 0x00a9, 0x0218, 0x00ab, 0x0179, 0x00ad, 0x017a, 0x017b,
+  /* 0xb0 */
+  0x00b0, 0x00b1, 0x010c, 0x0142, 0x017d, 0x201d, 0x00b6, 0x00b7,
+  0x017e, 0x010d, 0x0219, 0x00bb, 0x0152, 0x0153, 0x0178, 0x017c,
+  /* 0xc0 */
+  0x00c0, 0x00c1, 0x00c2, 0x0102, 0x00c4, 0x0106, 0x00c6, 0x00c7,
+  0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
+  /* 0xd0 */
+  0x0110, 0x0143, 0x00d2, 0x00d3, 0x00d4, 0x0150, 0x00d6, 0x015a,
+  0x0170, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x0118, 0x021a, 0x00df,
+  /* 0xe0 */
+  0x00e0, 0x00e1, 0x00e2, 0x0103, 0x00e4, 0x0107, 0x00e6, 0x00e7,
+  0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
+  /* 0xf0 */
+  0x0111, 0x0144, 0x00f2, 0x00f3, 0x00f4, 0x0151, 0x00f6, 0x015b,
+  0x0171, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x0119, 0x021b, 0x00ff,
+};
+
+static int
+iso8859_16_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0xa0)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) iso8859_16_2uni[c-0xa0];
+  return 1;
+}
+
+static const unsigned char iso8859_16_page00[224] = {
+  0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa7, /* 0xa0-0xa7 */
+  0x00, 0xa9, 0x00, 0xab, 0x00, 0xad, 0x00, 0x00, /* 0xa8-0xaf */
+  0xb0, 0xb1, 0x00, 0x00, 0x00, 0x00, 0xb6, 0xb7, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0xbb, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0xc0, 0xc1, 0xc2, 0x00, 0xc4, 0x00, 0xc6, 0xc7, /* 0xc0-0xc7 */
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0xc8-0xcf */
+  0x00, 0x00, 0xd2, 0xd3, 0xd4, 0x00, 0xd6, 0x00, /* 0xd0-0xd7 */
+  0x00, 0xd9, 0xda, 0xdb, 0xdc, 0x00, 0x00, 0xdf, /* 0xd8-0xdf */
+  0xe0, 0xe1, 0xe2, 0x00, 0xe4, 0x00, 0xe6, 0xe7, /* 0xe0-0xe7 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0xe8-0xef */
+  0x00, 0x00, 0xf2, 0xf3, 0xf4, 0x00, 0xf6, 0x00, /* 0xf0-0xf7 */
+  0x00, 0xf9, 0xfa, 0xfb, 0xfc, 0x00, 0x00, 0xff, /* 0xf8-0xff */
+  /* 0x0100 */
+  0x00, 0x00, 0xc3, 0xe3, 0xa1, 0xa2, 0xc5, 0xe5, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xb2, 0xb9, 0x00, 0x00, /* 0x08-0x0f */
+  0xd0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xdd, 0xfd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0xa3, 0xb3, 0xd1, 0xf1, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xd5, 0xf5, 0xbc, 0xbd, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0xd7, 0xf7, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xa6, 0xa8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0xd8, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0xbe, 0xac, 0xae, 0xaf, 0xbf, 0xb4, 0xb8, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char iso8859_16_page02[8] = {
+  0xaa, 0xba, 0xde, 0xfe, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+};
+static const unsigned char iso8859_16_page20[8] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0xb5, 0xa5, 0x00, /* 0x18-0x1f */
+};
+
+static int
+iso8859_16_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a0) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0180)
+    c = iso8859_16_page00[wc-0x00a0];
+  else if (wc >= 0x0218 && wc < 0x0220)
+    c = iso8859_16_page02[wc-0x0218];
+  else if (wc >= 0x2018 && wc < 0x2020)
+    c = iso8859_16_page20[wc-0x2018];
+  else if (wc == 0x20ac)
+    c = 0xa4;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso8859_2.h b/graf2d/win32gdk/gdk/src/iconv/iso8859_2.h
new file mode 100644
index 00000000000..9ad4d4aa5de
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso8859_2.h
@@ -0,0 +1,112 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-8859-2
+ */
+
+static const unsigned short iso8859_2_2uni[96] = {
+  /* 0xa0 */
+  0x00a0, 0x0104, 0x02d8, 0x0141, 0x00a4, 0x013d, 0x015a, 0x00a7,
+  0x00a8, 0x0160, 0x015e, 0x0164, 0x0179, 0x00ad, 0x017d, 0x017b,
+  /* 0xb0 */
+  0x00b0, 0x0105, 0x02db, 0x0142, 0x00b4, 0x013e, 0x015b, 0x02c7,
+  0x00b8, 0x0161, 0x015f, 0x0165, 0x017a, 0x02dd, 0x017e, 0x017c,
+  /* 0xc0 */
+  0x0154, 0x00c1, 0x00c2, 0x0102, 0x00c4, 0x0139, 0x0106, 0x00c7,
+  0x010c, 0x00c9, 0x0118, 0x00cb, 0x011a, 0x00cd, 0x00ce, 0x010e,
+  /* 0xd0 */
+  0x0110, 0x0143, 0x0147, 0x00d3, 0x00d4, 0x0150, 0x00d6, 0x00d7,
+  0x0158, 0x016e, 0x00da, 0x0170, 0x00dc, 0x00dd, 0x0162, 0x00df,
+  /* 0xe0 */
+  0x0155, 0x00e1, 0x00e2, 0x0103, 0x00e4, 0x013a, 0x0107, 0x00e7,
+  0x010d, 0x00e9, 0x0119, 0x00eb, 0x011b, 0x00ed, 0x00ee, 0x010f,
+  /* 0xf0 */
+  0x0111, 0x0144, 0x0148, 0x00f3, 0x00f4, 0x0151, 0x00f6, 0x00f7,
+  0x0159, 0x016f, 0x00fa, 0x0171, 0x00fc, 0x00fd, 0x0163, 0x02d9,
+};
+
+static int
+iso8859_2_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0xa0)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) iso8859_2_2uni[c-0xa0];
+  return 1;
+}
+
+static const unsigned char iso8859_2_page00[224] = {
+  0xa0, 0x00, 0x00, 0x00, 0xa4, 0x00, 0x00, 0xa7, /* 0xa0-0xa7 */
+  0xa8, 0x00, 0x00, 0x00, 0x00, 0xad, 0x00, 0x00, /* 0xa8-0xaf */
+  0xb0, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+  0xb8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0xc1, 0xc2, 0x00, 0xc4, 0x00, 0x00, 0xc7, /* 0xc0-0xc7 */
+  0x00, 0xc9, 0x00, 0xcb, 0x00, 0xcd, 0xce, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0xd3, 0xd4, 0x00, 0xd6, 0xd7, /* 0xd0-0xd7 */
+  0x00, 0x00, 0xda, 0x00, 0xdc, 0xdd, 0x00, 0xdf, /* 0xd8-0xdf */
+  0x00, 0xe1, 0xe2, 0x00, 0xe4, 0x00, 0x00, 0xe7, /* 0xe0-0xe7 */
+  0x00, 0xe9, 0x00, 0xeb, 0x00, 0xed, 0xee, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0xf3, 0xf4, 0x00, 0xf6, 0xf7, /* 0xf0-0xf7 */
+  0x00, 0x00, 0xfa, 0x00, 0xfc, 0xfd, 0x00, 0x00, /* 0xf8-0xff */
+  /* 0x0100 */
+  0x00, 0x00, 0xc3, 0xe3, 0xa1, 0xb1, 0xc6, 0xe6, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xc8, 0xe8, 0xcf, 0xef, /* 0x08-0x0f */
+  0xd0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xca, 0xea, 0xcc, 0xec, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0xc5, 0xe5, 0x00, 0x00, 0xa5, 0xb5, 0x00, /* 0x38-0x3f */
+  0x00, 0xa3, 0xb3, 0xd1, 0xf1, 0x00, 0x00, 0xd2, /* 0x40-0x47 */
+  0xf2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xd5, 0xf5, 0x00, 0x00, 0xc0, 0xe0, 0x00, 0x00, /* 0x50-0x57 */
+  0xd8, 0xf8, 0xa6, 0xb6, 0x00, 0x00, 0xaa, 0xba, /* 0x58-0x5f */
+  0xa9, 0xb9, 0xde, 0xfe, 0xab, 0xbb, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd9, 0xf9, /* 0x68-0x6f */
+  0xdb, 0xfb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0xac, 0xbc, 0xaf, 0xbf, 0xae, 0xbe, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char iso8859_2_page02[32] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb7, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0xa2, 0xff, 0x00, 0xb2, 0x00, 0xbd, 0x00, 0x00, /* 0xd8-0xdf */
+};
+
+static int
+iso8859_2_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a0) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0180)
+    c = iso8859_2_page00[wc-0x00a0];
+  else if (wc >= 0x02c0 && wc < 0x02e0)
+    c = iso8859_2_page02[wc-0x02c0];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso8859_3.h b/graf2d/win32gdk/gdk/src/iconv/iso8859_3.h
new file mode 100644
index 00000000000..308e0b0d649
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso8859_3.h
@@ -0,0 +1,118 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-8859-3
+ */
+
+static const unsigned short iso8859_3_2uni[96] = {
+  /* 0xa0 */
+  0x00a0, 0x0126, 0x02d8, 0x00a3, 0x00a4, 0xfffd, 0x0124, 0x00a7,
+  0x00a8, 0x0130, 0x015e, 0x011e, 0x0134, 0x00ad, 0xfffd, 0x017b,
+  /* 0xb0 */
+  0x00b0, 0x0127, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x0125, 0x00b7,
+  0x00b8, 0x0131, 0x015f, 0x011f, 0x0135, 0x00bd, 0xfffd, 0x017c,
+  /* 0xc0 */
+  0x00c0, 0x00c1, 0x00c2, 0xfffd, 0x00c4, 0x010a, 0x0108, 0x00c7,
+  0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
+  /* 0xd0 */
+  0xfffd, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x0120, 0x00d6, 0x00d7,
+  0x011c, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x016c, 0x015c, 0x00df,
+  /* 0xe0 */
+  0x00e0, 0x00e1, 0x00e2, 0xfffd, 0x00e4, 0x010b, 0x0109, 0x00e7,
+  0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
+  /* 0xf0 */
+  0xfffd, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x0121, 0x00f6, 0x00f7,
+  0x011d, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x016d, 0x015d, 0x02d9,
+};
+
+static int
+iso8859_3_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0xa0) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = iso8859_3_2uni[c-0xa0];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char iso8859_3_page00[96] = {
+  0xa0, 0x00, 0x00, 0xa3, 0xa4, 0x00, 0x00, 0xa7, /* 0xa0-0xa7 */
+  0xa8, 0x00, 0x00, 0x00, 0x00, 0xad, 0x00, 0x00, /* 0xa8-0xaf */
+  0xb0, 0x00, 0xb2, 0xb3, 0xb4, 0xb5, 0x00, 0xb7, /* 0xb0-0xb7 */
+  0xb8, 0x00, 0x00, 0x00, 0x00, 0xbd, 0x00, 0x00, /* 0xb8-0xbf */
+  0xc0, 0xc1, 0xc2, 0x00, 0xc4, 0x00, 0x00, 0xc7, /* 0xc0-0xc7 */
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0xc8-0xcf */
+  0x00, 0xd1, 0xd2, 0xd3, 0xd4, 0x00, 0xd6, 0xd7, /* 0xd0-0xd7 */
+  0x00, 0xd9, 0xda, 0xdb, 0xdc, 0x00, 0x00, 0xdf, /* 0xd8-0xdf */
+  0xe0, 0xe1, 0xe2, 0x00, 0xe4, 0x00, 0x00, 0xe7, /* 0xe0-0xe7 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0xe8-0xef */
+  0x00, 0xf1, 0xf2, 0xf3, 0xf4, 0x00, 0xf6, 0xf7, /* 0xf0-0xf7 */
+  0x00, 0xf9, 0xfa, 0xfb, 0xfc, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+};
+static const unsigned char iso8859_3_page01[120] = {
+  0xc6, 0xe6, 0xc5, 0xe5, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0xd8, 0xf8, 0xab, 0xbb, /* 0x18-0x1f */
+  0xd5, 0xf5, 0x00, 0x00, 0xa6, 0xb6, 0xa1, 0xb1, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0xa9, 0xb9, 0x00, 0x00, 0xac, 0xbc, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0xde, 0xfe, 0xaa, 0xba, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0xdd, 0xfd, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0xaf, 0xbf, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char iso8859_3_page02[8] = {
+  0xa2, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+};
+
+static int
+iso8859_3_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a0) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = iso8859_3_page00[wc-0x00a0];
+  else if (wc >= 0x0108 && wc < 0x0180)
+    c = iso8859_3_page01[wc-0x0108];
+  else if (wc >= 0x02d8 && wc < 0x02e0)
+    c = iso8859_3_page02[wc-0x02d8];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso8859_4.h b/graf2d/win32gdk/gdk/src/iconv/iso8859_4.h
new file mode 100644
index 00000000000..51e17786563
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso8859_4.h
@@ -0,0 +1,112 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-8859-4
+ */
+
+static const unsigned short iso8859_4_2uni[96] = {
+  /* 0xa0 */
+  0x00a0, 0x0104, 0x0138, 0x0156, 0x00a4, 0x0128, 0x013b, 0x00a7,
+  0x00a8, 0x0160, 0x0112, 0x0122, 0x0166, 0x00ad, 0x017d, 0x00af,
+  /* 0xb0 */
+  0x00b0, 0x0105, 0x02db, 0x0157, 0x00b4, 0x0129, 0x013c, 0x02c7,
+  0x00b8, 0x0161, 0x0113, 0x0123, 0x0167, 0x014a, 0x017e, 0x014b,
+  /* 0xc0 */
+  0x0100, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x012e,
+  0x010c, 0x00c9, 0x0118, 0x00cb, 0x0116, 0x00cd, 0x00ce, 0x012a,
+  /* 0xd0 */
+  0x0110, 0x0145, 0x014c, 0x0136, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
+  0x00d8, 0x0172, 0x00da, 0x00db, 0x00dc, 0x0168, 0x016a, 0x00df,
+  /* 0xe0 */
+  0x0101, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x012f,
+  0x010d, 0x00e9, 0x0119, 0x00eb, 0x0117, 0x00ed, 0x00ee, 0x012b,
+  /* 0xf0 */
+  0x0111, 0x0146, 0x014d, 0x0137, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
+  0x00f8, 0x0173, 0x00fa, 0x00fb, 0x00fc, 0x0169, 0x016b, 0x02d9,
+};
+
+static int
+iso8859_4_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0xa0)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) iso8859_4_2uni[c-0xa0];
+  return 1;
+}
+
+static const unsigned char iso8859_4_page00[224] = {
+  0xa0, 0x00, 0x00, 0x00, 0xa4, 0x00, 0x00, 0xa7, /* 0xa0-0xa7 */
+  0xa8, 0x00, 0x00, 0x00, 0x00, 0xad, 0x00, 0xaf, /* 0xa8-0xaf */
+  0xb0, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+  0xb8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0x00, /* 0xc0-0xc7 */
+  0x00, 0xc9, 0x00, 0xcb, 0x00, 0xcd, 0xce, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0xd4, 0xd5, 0xd6, 0xd7, /* 0xd0-0xd7 */
+  0xd8, 0x00, 0xda, 0xdb, 0xdc, 0x00, 0x00, 0xdf, /* 0xd8-0xdf */
+  0x00, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0x00, /* 0xe0-0xe7 */
+  0x00, 0xe9, 0x00, 0xeb, 0x00, 0xed, 0xee, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0x00, 0xf4, 0xf5, 0xf6, 0xf7, /* 0xf0-0xf7 */
+  0xf8, 0x00, 0xfa, 0xfb, 0xfc, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+  /* 0x0100 */
+  0xc0, 0xe0, 0x00, 0x00, 0xa1, 0xb1, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xc8, 0xe8, 0x00, 0x00, /* 0x08-0x0f */
+  0xd0, 0xf0, 0xaa, 0xba, 0x00, 0x00, 0xcc, 0xec, /* 0x10-0x17 */
+  0xca, 0xea, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0xab, 0xbb, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0xa5, 0xb5, 0xcf, 0xef, 0x00, 0x00, 0xc7, 0xe7, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd3, 0xf3, /* 0x30-0x37 */
+  0xa2, 0x00, 0x00, 0xa6, 0xb6, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0xd1, 0xf1, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0xbd, 0xbf, 0xd2, 0xf2, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa3, 0xb3, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xa9, 0xb9, 0x00, 0x00, 0x00, 0x00, 0xac, 0xbc, /* 0x60-0x67 */
+  0xdd, 0xfd, 0xde, 0xfe, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0xd9, 0xf9, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0xae, 0xbe, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char iso8859_4_page02[32] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb7, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0xff, 0x00, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+};
+
+static int
+iso8859_4_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a0) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0180)
+    c = iso8859_4_page00[wc-0x00a0];
+  else if (wc >= 0x02c0 && wc < 0x02e0)
+    c = iso8859_4_page02[wc-0x02c0];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso8859_5.h b/graf2d/win32gdk/gdk/src/iconv/iso8859_5.h
new file mode 100644
index 00000000000..6b836055ac6
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso8859_5.h
@@ -0,0 +1,95 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-8859-5
+ */
+
+static const unsigned short iso8859_5_2uni[96] = {
+  /* 0xa0 */
+  0x00a0, 0x0401, 0x0402, 0x0403, 0x0404, 0x0405, 0x0406, 0x0407,
+  0x0408, 0x0409, 0x040a, 0x040b, 0x040c, 0x00ad, 0x040e, 0x040f,
+  /* 0xb0 */
+  0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417,
+  0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e, 0x041f,
+  /* 0xc0 */
+  0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427,
+  0x0428, 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e, 0x042f,
+  /* 0xd0 */
+  0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437,
+  0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f,
+  /* 0xe0 */
+  0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
+  0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x044f,
+  /* 0xf0 */
+  0x2116, 0x0451, 0x0452, 0x0453, 0x0454, 0x0455, 0x0456, 0x0457,
+  0x0458, 0x0459, 0x045a, 0x045b, 0x045c, 0x00a7, 0x045e, 0x045f,
+};
+
+static int
+iso8859_5_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0xa0)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) iso8859_5_2uni[c-0xa0];
+  return 1;
+}
+
+static const unsigned char iso8859_5_page00[16] = {
+  0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfd, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0xad, 0x00, 0x00, /* 0xa8-0xaf */
+};
+static const unsigned char iso8859_5_page04[96] = {
+  0x00, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, /* 0x00-0x07 */
+  0xa8, 0xa9, 0xaa, 0xab, 0xac, 0x00, 0xae, 0xaf, /* 0x08-0x0f */
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0x10-0x17 */
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, /* 0x18-0x1f */
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x20-0x27 */
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x28-0x2f */
+  0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0x30-0x37 */
+  0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, /* 0x38-0x3f */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x40-0x47 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x48-0x4f */
+  0x00, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0x50-0x57 */
+  0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0x00, 0xfe, 0xff, /* 0x58-0x5f */
+};
+
+static int
+iso8859_5_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a0) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00b0)
+    c = iso8859_5_page00[wc-0x00a0];
+  else if (wc >= 0x0400 && wc < 0x0460)
+    c = iso8859_5_page04[wc-0x0400];
+  else if (wc == 0x2116)
+    c = 0xf0;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso8859_6.h b/graf2d/win32gdk/gdk/src/iconv/iso8859_6.h
new file mode 100644
index 00000000000..8d311994093
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso8859_6.h
@@ -0,0 +1,98 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-8859-6
+ */
+
+static const unsigned short iso8859_6_2uni[96] = {
+  /* 0xa0 */
+  0x00a0, 0xfffd, 0xfffd, 0xfffd, 0x00a4, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x060c, 0x00ad, 0xfffd, 0xfffd,
+  /* 0xb0 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x061b, 0xfffd, 0xfffd, 0xfffd, 0x061f,
+  /* 0xc0 */
+  0xfffd, 0x0621, 0x0622, 0x0623, 0x0624, 0x0625, 0x0626, 0x0627,
+  0x0628, 0x0629, 0x062a, 0x062b, 0x062c, 0x062d, 0x062e, 0x062f,
+  /* 0xd0 */
+  0x0630, 0x0631, 0x0632, 0x0633, 0x0634, 0x0635, 0x0636, 0x0637,
+  0x0638, 0x0639, 0x063a, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0xe0 */
+  0x0640, 0x0641, 0x0642, 0x0643, 0x0644, 0x0645, 0x0646, 0x0647,
+  0x0648, 0x0649, 0x064a, 0x064b, 0x064c, 0x064d, 0x064e, 0x064f,
+  /* 0xf0 */
+  0x0650, 0x0651, 0x0652, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+};
+
+static int
+iso8859_6_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0xa0) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = iso8859_6_2uni[c-0xa0];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char iso8859_6_page00[16] = {
+  0xa0, 0x00, 0x00, 0x00, 0xa4, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0xad, 0x00, 0x00, /* 0xa8-0xaf */
+};
+static const unsigned char iso8859_6_page06[80] = {
+  0x00, 0x00, 0x00, 0x00, 0xac, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0xbb, 0x00, 0x00, 0x00, 0xbf, /* 0x18-0x1f */
+  0x00, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x20-0x27 */
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x28-0x2f */
+  0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0x30-0x37 */
+  0xd8, 0xd9, 0xda, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x40-0x47 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x48-0x4f */
+  0xf0, 0xf1, 0xf2, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+};
+
+static int
+iso8859_6_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a0) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00b0)
+    c = iso8859_6_page00[wc-0x00a0];
+  else if (wc >= 0x0608 && wc < 0x0658)
+    c = iso8859_6_page06[wc-0x0608];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso8859_7.h b/graf2d/win32gdk/gdk/src/iconv/iso8859_7.h
new file mode 100644
index 00000000000..0825ef5cd9e
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso8859_7.h
@@ -0,0 +1,111 @@
+/*
+ * Copyright (C) 1999-2004 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-8859-7
+ */
+
+static const unsigned short iso8859_7_2uni[96] = {
+  /* 0xa0 */
+  0x00a0, 0x2018, 0x2019, 0x00a3, 0x20ac, 0x20af, 0x00a6, 0x00a7,
+  0x00a8, 0x00a9, 0x037a, 0x00ab, 0x00ac, 0x00ad, 0xfffd, 0x2015,
+  /* 0xb0 */
+  0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x0384, 0x0385, 0x0386, 0x00b7,
+  0x0388, 0x0389, 0x038a, 0x00bb, 0x038c, 0x00bd, 0x038e, 0x038f,
+  /* 0xc0 */
+  0x0390, 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397,
+  0x0398, 0x0399, 0x039a, 0x039b, 0x039c, 0x039d, 0x039e, 0x039f,
+  /* 0xd0 */
+  0x03a0, 0x03a1, 0xfffd, 0x03a3, 0x03a4, 0x03a5, 0x03a6, 0x03a7,
+  0x03a8, 0x03a9, 0x03aa, 0x03ab, 0x03ac, 0x03ad, 0x03ae, 0x03af,
+  /* 0xe0 */
+  0x03b0, 0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7,
+  0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf,
+  /* 0xf0 */
+  0x03c0, 0x03c1, 0x03c2, 0x03c3, 0x03c4, 0x03c5, 0x03c6, 0x03c7,
+  0x03c8, 0x03c9, 0x03ca, 0x03cb, 0x03cc, 0x03cd, 0x03ce, 0xfffd,
+};
+
+static int
+iso8859_7_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0xa0) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = iso8859_7_2uni[c-0xa0];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char iso8859_7_page00[32] = {
+  0xa0, 0x00, 0x00, 0xa3, 0x00, 0x00, 0xa6, 0xa7, /* 0xa0-0xa7 */
+  0xa8, 0xa9, 0x00, 0xab, 0xac, 0xad, 0x00, 0x00, /* 0xa8-0xaf */
+  0xb0, 0xb1, 0xb2, 0xb3, 0x00, 0x00, 0x00, 0xb7, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0xbb, 0x00, 0xbd, 0x00, 0x00, /* 0xb8-0xbf */
+};
+static const unsigned char iso8859_7_page03[88] = {
+  0x00, 0x00, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0xb5, 0xb6, 0x00, /* 0x80-0x87 */
+  0xb8, 0xb9, 0xba, 0x00, 0xbc, 0x00, 0xbe, 0xbf, /* 0x88-0x8f */
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x90-0x97 */
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x98-0x9f */
+  0xd0, 0xd1, 0x00, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0xa0-0xa7 */
+  0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, /* 0xa8-0xaf */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0xb0-0xb7 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0xb8-0xbf */
+  0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0xc0-0xc7 */
+  0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0x00, /* 0xc8-0xcf */
+};
+static const unsigned char iso8859_7_page20[16] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0xaf, 0x00, 0x00, /* 0x10-0x17 */
+  0xa1, 0xa2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+};
+
+static int
+iso8859_7_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a0) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00c0)
+    c = iso8859_7_page00[wc-0x00a0];
+  else if (wc >= 0x0378 && wc < 0x03d0)
+    c = iso8859_7_page03[wc-0x0378];
+  else if (wc >= 0x2010 && wc < 0x2020)
+    c = iso8859_7_page20[wc-0x2010];
+  else if (wc == 0x20ac)
+    c = 0xa4;
+  else if (wc == 0x20af)
+    c = 0xa5;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso8859_8.h b/graf2d/win32gdk/gdk/src/iconv/iso8859_8.h
new file mode 100644
index 00000000000..6184846ea13
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso8859_8.h
@@ -0,0 +1,107 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-8859-8
+ */
+
+static const unsigned short iso8859_8_2uni[96] = {
+  /* 0xa0 */
+  0x00a0, 0xfffd, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+  0x00a8, 0x00a9, 0x00d7, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
+  /* 0xb0 */
+  0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+  0x00b8, 0x00b9, 0x00f7, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0xfffd,
+  /* 0xc0 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0xd0 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x2017,
+  /* 0xe0 */
+  0x05d0, 0x05d1, 0x05d2, 0x05d3, 0x05d4, 0x05d5, 0x05d6, 0x05d7,
+  0x05d8, 0x05d9, 0x05da, 0x05db, 0x05dc, 0x05dd, 0x05de, 0x05df,
+  /* 0xf0 */
+  0x05e0, 0x05e1, 0x05e2, 0x05e3, 0x05e4, 0x05e5, 0x05e6, 0x05e7,
+  0x05e8, 0x05e9, 0x05ea, 0xfffd, 0xfffd, 0x200e, 0x200f, 0xfffd,
+};
+
+static int
+iso8859_8_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c >= 0xa0) {
+    unsigned short wc = iso8859_8_2uni[c-0xa0];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  else {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char iso8859_8_page00[88] = {
+  0xa0, 0x00, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, /* 0xa0-0xa7 */
+  0xa8, 0xa9, 0x00, 0xab, 0xac, 0xad, 0xae, 0xaf, /* 0xa8-0xaf */
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0xb0-0xb7 */
+  0xb8, 0xb9, 0x00, 0xbb, 0xbc, 0xbd, 0xbe, 0x00, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xba, /* 0xf0-0xf7 */
+};
+static const unsigned char iso8859_8_page05[32] = {
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0xd0-0xd7 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0xd8-0xdf */
+  0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0xe0-0xe7 */
+  0xf8, 0xf9, 0xfa, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+};
+static const unsigned char iso8859_8_page20[16] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfd, 0xfe, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdf, /* 0x10-0x17 */
+};
+
+static int
+iso8859_8_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a0) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00f8)
+    c = iso8859_8_page00[wc-0x00a0];
+  else if (wc >= 0x05d0 && wc < 0x05f0)
+    c = iso8859_8_page05[wc-0x05d0];
+  else if (wc >= 0x2008 && wc < 0x2018)
+    c = iso8859_8_page20[wc-0x2008];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/iso8859_9.h b/graf2d/win32gdk/gdk/src/iconv/iso8859_9.h
new file mode 100644
index 00000000000..7dbd37d233c
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/iso8859_9.h
@@ -0,0 +1,85 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-8859-9
+ */
+
+static const unsigned short iso8859_9_2uni[48] = {
+  /* 0xd0 */
+  0x011e, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
+  0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x0130, 0x015e, 0x00df,
+  /* 0xe0 */
+  0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
+  0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
+  /* 0xf0 */
+  0x011f, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
+  0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x0131, 0x015f, 0x00ff,
+};
+
+static int
+iso8859_9_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c >= 0xd0)
+    *pwc = (ucs4_t) iso8859_9_2uni[c-0xd0];
+  else
+    *pwc = (ucs4_t) c;
+  return 1;
+}
+
+static const unsigned char iso8859_9_page00[48] = {
+  0x00, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0xd0-0xd7 */
+  0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0x00, 0x00, 0xdf, /* 0xd8-0xdf */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0xe0-0xe7 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0xe8-0xef */
+  0x00, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0xf0-0xf7 */
+  0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0x00, 0x00, 0xff, /* 0xf8-0xff */
+};
+static const unsigned char iso8859_9_page01[72] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0xf0, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0xdd, 0xfd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xde, 0xfe, /* 0x58-0x5f */
+};
+
+static int
+iso8859_9_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00d0) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00d0 && wc < 0x0100)
+    c = iso8859_9_page00[wc-0x00d0];
+  else if (wc >= 0x0118 && wc < 0x0160)
+    c = iso8859_9_page01[wc-0x0118];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/isoir165.h b/graf2d/win32gdk/gdk/src/iconv/isoir165.h
new file mode 100644
index 00000000000..4d6e9ffa030
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/isoir165.h
@@ -0,0 +1,159 @@
+/*
+ * Copyright (C) 1999-2001, 2005 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-IR-165
+ */
+
+/*
+ * ISO-IR-165 is an extension of GB 2312, consisting of:
+ * 1. GB 6345.1-86 corrections:
+ *    Two corrections to GB 2312, at 0x2367 and 0x6F71.
+ * 2. GB 6345.1-86 additions:
+ *    - 6 new full-width pinyin characters in row 0x28.
+ *    - ISO646-CN in row 0x2A.
+ *    - 32 half-width pinyin characters in row 0x2B.
+ * 3. GB 8565.2-88 additions:
+ *    - 50 characters in row 0x2D.
+ *    - 92 characters in row 0x2E.
+ *    - 93 characters in row 0x2F.
+ *    - 470 characters in rows 0x7A-0x7E.
+ * 4. ISO-IR-165 additions:
+ *    - 22 characters in row 0x26.
+ *    - 94 characters in row 0x2C.
+ *    - 44 new characters in row 0x2D.
+ *    - 1 new character in row 0x2F.
+ *
+ * The conversion table was created from the following sources:
+ * Ad 1. The 0x2367 correction is already integrated in the unicode.org
+ *       GB2312.TXT table. The 0x6F71 mapping is the same in the unicode.org
+ *       GB2312.TXT and UNIHAN.TXT table and in Koichi Yasuoka's Uni2GB table,
+ *       so we assume it's correct.
+ * The unicode.org UNIHAN.TXT table about GB 8565 is not usable: it has
+ * extraneous code points at rows 0x28, 0x2C, 0x2D. Note also that it does
+ * not list the 69 non-hanzi in row 0x2F. Moreover, it has the characters
+ * 0x2F7A-0x2F7D shifted down by one to 0x2F79-0x2F7C.
+ * Therefore we take the GB8565 and ISO-IR-165 data from Koichi Yasuoka's
+ * Uni2GB table.
+ * Ad 1. Yasuoka maps 0x2367 to U+0261 (small script g) and 0x2840 to U+FF47
+ *       (full-width small normal g). While coherent with ISO-IR's 165.pdf,
+ *       this disagrees with Ken Lunde's book: He says that ISO-IR-165
+ *       includes the GB6345 correction, i.e. maps 0x2367 to U+FF47 or U+0067
+ *       and _not_ to U+0261 (small script g).
+ *       To overcome the confusion, we just map both 0x2367 and 0x2840 to
+ *       U+FF47.
+ * Ad 2. Row 0x28: Add a mapping from 0x283F to U+01F9.
+ *       Row 0x2A: Mapping is well-known, also present in Koichi Yasuoka's
+ *                 table.
+ *       Row 0x2B: Typed in by hand from appendix E in Ken Lunde's book.
+ *       When converting from Unicode to ISO-IR-165, prefer the half-width
+ *       range 0x2B{21..40} to the full-width range 0x28{21..40}.
+ * Ad 3. Rows 0x2D, 0x2E: Both Koichi Yasuoka's Uni2GB table and the UNIHAN.TXT
+ *                 data for GB 8565 agree here.
+ *       Row 0x2F: Taken from Koichi Yasuoka's Uni2GB table.
+ *       Rows 0x7A-0x7E: Koichi Yasuoka's Uni2GB table and the UNIHAN.TXT
+ *                 data for GB 8565 agree here mostly. Differences:
+ *                 0x7C38 -> U+6F26 or U+527A ? We choose U+6F26.
+ *                 0x7C5A -> U+7A40 or U+6996 ? We choose U+6996.
+ * Ad 4. Row 0x26: Mapping unknown.
+ *       Rows 0x2C, 0x2D: Both Koichi Yasuoka's Uni2GB table and the UNIHAN.TXT
+ *                 data for GB 8565 (!) agree here.
+ *       Row 0x2F: Taken from Koichi Yasuoka's Uni2GB table.
+ */
+
+#include "isoir165ext.h"
+
+static int
+isoir165_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  int ret;
+
+  /* Map full-width pinyin (row 0x28) like half-width pinyin (row 0x2B). */
+  if (s[0] == 0x28) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if (c2 >= 0x21 && c2 <= 0x40) {
+        unsigned char buf[2];
+        buf[0] = 0x2b;
+        buf[1] = c2;
+        ret = isoir165ext_mbtowc(conv,pwc,buf,2);
+        if (ret != RET_ILSEQ)
+          return ret;
+      }
+    }
+  }
+  /* Try the GB2312 -> Unicode table. */
+  ret = gb2312_mbtowc(conv,pwc,s,n);
+  if (ret != RET_ILSEQ)
+    return ret;
+  /* Row 0x2A is GB_1988-80. */
+  if (s[0] == 0x2a) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if (c2 >= 0x21 && c2 < 0x7f) {
+        int ret = iso646_cn_mbtowc(conv,pwc,s+1,1);
+        if (ret != 1) abort();
+        return 2;
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  /* Try the ISO-IR-165 extensions -> Unicode table. */
+  ret = isoir165ext_mbtowc(conv,pwc,s,n);
+  return ret;
+}
+
+static int
+isoir165_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char buf[2];
+  int ret;
+
+  /* Try the Unicode -> GB2312 table. */
+  ret = gb2312_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (!(buf[0] == 0x28 && buf[1] >= 0x21 && buf[1] <= 0x40)) {
+      if (n >= 2) {
+        r[0] = buf[0];
+        r[1] = buf[1];
+        return 2;
+      }
+      return RET_TOOSMALL;
+    }
+  }
+  /* Row 0x2A is GB_1988-80. */
+  ret = iso646_cn_wctomb(conv,buf,wc,1);
+  if (ret != RET_ILUNI) {
+    if (ret != 1) abort();
+    if (buf[0] >= 0x21 && buf[0] < 0x7f) {
+      if (n >= 2) {
+        r[0] = 0x2a;
+        r[1] = buf[0];
+        return 2;
+      }
+      return RET_TOOSMALL;
+    }
+  }
+  /* Try the Unicode -> ISO-IR-165 extensions table. */
+  ret = isoir165ext_wctomb(conv,r,wc,n);
+  return ret;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/isoir165ext.h b/graf2d/win32gdk/gdk/src/iconv/isoir165ext.h
new file mode 100644
index 00000000000..0bc811ac301
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/isoir165ext.h
@@ -0,0 +1,800 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * ISO-IR-165 extensions
+ */
+
+static const unsigned short isoir165ext_2uni_page2b[470] = {
+  /* 0x2b */
+  0x1fb1, 0x03ac, 0x1fb0, 0x1f70, 0x0113, 0x00e9, 0x011b, 0x00e8,
+  0x012b, 0x00ed, 0x01d0, 0x00ec, 0x014d, 0x00f3, 0x01d2, 0x00f2,
+  0x016b, 0x00fa, 0x01d4, 0x00f9, 0x01d6, 0x01d8, 0x01da, 0x01dc,
+  0x00fc, 0x00ea, 0x03b1, 0x1e3f, 0x0144, 0x0148, 0x01f9, 0xff47,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x2c */
+  0x53be, 0x4eb8, 0x4f3e, 0x501e, 0x50c7, 0x9118, 0x6c98, 0x6cdc,
+  0x6cc3, 0x6e5d, 0x6ea6, 0x6eeb, 0x6fa5, 0x6165, 0x5ea4, 0x9618,
+  0x5848, 0x8453, 0x7cf5, 0x5f07, 0x6294, 0x647d, 0x725a, 0x5574,
+  0x55a4, 0x5640, 0x5684, 0x5d1f, 0x72c9, 0x998c, 0x59de, 0x59fd,
+  0x5a5e, 0x7ebb, 0x7ee4, 0x7ef9, 0x9a99, 0x71cf, 0x6245, 0x624a,
+  0x797c, 0x739a, 0x742b, 0x7488, 0x74aa, 0x74d8, 0x6767, 0x6ab5,
+  0x71ca, 0x6ba3, 0x8f80, 0x8f92, 0x8d5f, 0x9b36, 0x72a8, 0x87a3,
+  0x8152, 0x6b38, 0x98d0, 0x8897, 0x88af, 0x8955, 0x770a, 0x94da,
+  0x955a, 0x9560, 0x9e24, 0x9e40, 0x9e50, 0x9e5d, 0x9e60, 0x870e,
+  0x7b5c, 0x7fd9, 0x7fef, 0x7e44, 0x8e45, 0x8e36, 0x8e62, 0x8e5c,
+  0x9778, 0x9b46, 0x9f2b, 0x9f41, 0x7526, 0x4e26, 0x8bac, 0x8129,
+  0x5091, 0x50cd, 0x52b9, 0x89d4, 0x5557, 0x94c7,
+  /* 0x2d */
+  0x9496, 0x9498, 0x94cf, 0x94d3, 0x94d4, 0x94e6, 0x9533, 0x951c,
+  0x9520, 0x9527, 0x953d, 0x9543, 0x956e, 0x9574, 0x9c80, 0x9c84,
+  0x9c8a, 0x9c93, 0x9c96, 0x9c97, 0x9c98, 0x9c99, 0x9cbf, 0x9cc0,
+  0x9cc1, 0x9cd2, 0x9cdb, 0x9ce0, 0x9ce3, 0x9770, 0x977a, 0x97a1,
+  0x97ae, 0x97a8, 0x9964, 0x9966, 0x9978, 0x9979, 0x997b, 0x997e,
+  0x9982, 0x9983, 0x998e, 0x9b10, 0x9b18, 0x65a2, 0x9e80, 0x911c,
+  0x9e91, 0x9f12, 0x52f3, 0x6c96, 0x6d44, 0x6e1b, 0x6e67, 0x6f82,
+  0x6fec, 0x60ae, 0x5ec8, 0x8ffa, 0x577f, 0x5586, 0x849e, 0x8460,
+  0x5c05, 0x5e0b, 0x5d11, 0x5d19, 0x5dd6, 0x59b3, 0x5aae, 0x9a94,
+  0x658f, 0x709e, 0x7551, 0x71ff, 0x691d, 0x6a11, 0x68bf, 0x6607,
+  0x668e, 0x6673, 0x6c25, 0x7652, 0x778b, 0x76ea, 0x9895, 0x8780,
+  0x882d, 0x7b87, 0x7c50, 0x8ead, 0x9575, 0x65c2,
+  /* 0x2e */
+  0x5390, 0x79b8, 0x4f15, 0x4f21, 0x4f3b, 0x4fa2, 0x50a4, 0x5092,
+  0x530a, 0x51c3, 0x51a8, 0x8d20, 0x5787, 0x579a, 0x5795, 0x57eb,
+  0x585d, 0x585a, 0x5871, 0x5895, 0x5c30, 0x5f0c, 0x5f0d, 0x5f0e,
+  0x5c72, 0x5cc7, 0x5fac, 0x5f68, 0x5f5f, 0x5a12, 0x5a65, 0x5a84,
+  0x5ac4, 0x7394, 0x73ea, 0x73ee, 0x7437, 0x7415, 0x7454, 0x6799,
+  0x686c, 0x68f8, 0x69fe, 0x72e2, 0x6667, 0x8d52, 0x89c3, 0x89cd,
+  0x6427, 0x6477, 0x6c1d, 0x813f, 0x6b54, 0x98d6, 0x707a, 0x70f1,
+  0x7120, 0x6153, 0x6c87, 0x6dad, 0x6e81, 0x6eb5, 0x6f94, 0x6f9b,
+  0x793d, 0x794e, 0x7806, 0x7859, 0x7894, 0x78dc, 0x7903, 0x7a16,
+  0x7a5e, 0x75e0, 0x7adc, 0x7676, 0x9892, 0x7bf2, 0x7c30, 0x7c5d,
+  0x9c9d, 0x7cac, 0x8278, 0x83d1, 0x84ea, 0x7fc0, 0x7f1e, 0x8e21,
+  0x8e53, 0x9754, 0x9f0c, 0x94fb, 0xfffd, 0xfffd,
+  /* 0x2f */
+  0x32c0, 0x32c1, 0x32c2, 0x32c3, 0x32c4, 0x32c5, 0x32c6, 0x32c7,
+  0x32c8, 0x32c9, 0x32ca, 0x32cb, 0x33e0, 0x33e1, 0x33e2, 0x33e3,
+  0x33e4, 0x33e5, 0x33e6, 0x33e7, 0x33e8, 0x33e9, 0x33ea, 0x33eb,
+  0x33ec, 0x33ed, 0x33ee, 0x33ef, 0x33f0, 0x33f1, 0x33f2, 0x33f3,
+  0x33f4, 0x33f5, 0x33f6, 0x33f7, 0x33f8, 0x33f9, 0x33fa, 0x33fb,
+  0x33fc, 0x33fd, 0x33fe, 0x3358, 0x3359, 0x335a, 0x335b, 0x335c,
+  0x335d, 0x335e, 0x335f, 0x3360, 0x3361, 0x3362, 0x3363, 0x3364,
+  0x3365, 0x3366, 0x3367, 0x3368, 0x3369, 0x336a, 0x336b, 0x336c,
+  0x336d, 0x336e, 0x336f, 0x3370, 0x3037, 0x90a8, 0x965e, 0x5842,
+  0x5803, 0x6c3e, 0x6d29, 0x6ee7, 0x8534, 0x84c6, 0x633c, 0x5d05,
+  0x7f10, 0x7eec, 0x7287, 0x712e, 0x8218, 0x8216, 0x756c, 0x75f3,
+  0x9b25, 0x8980, 0x7ca6, 0x4e85, 0x5570, 0x91c6,
+};
+static const unsigned short isoir165ext_2uni_page7a[470] = {
+  /* 0x7a */
+  0x4e0f, 0x673f, 0x4e42, 0x752a, 0x592c, 0x9ee1, 0x8652, 0x531c,
+  0x5187, 0x518f, 0x50f0, 0x4f0b, 0x4f23, 0x4f03, 0x4f61, 0x4f7a,
+  0x4f6b, 0x4feb, 0x4ff5, 0x5034, 0x5022, 0x4ff6, 0x5072, 0x4eb6,
+  0x51ae, 0x5910, 0x6bda, 0x522c, 0x5232, 0x4fb4, 0x5298, 0x52bb,
+  0x52bc, 0x52cd, 0x52da, 0x52f7, 0x53c6, 0x53c7, 0x5770, 0x576c,
+  0x57b1, 0x579f, 0x579e, 0x57be, 0x57cc, 0x580e, 0x580c, 0x57f5,
+  0x5809, 0x583c, 0x5843, 0x5845, 0x5846, 0x583d, 0x5853, 0x5888,
+  0x5884, 0x58f8, 0x56ad, 0x5940, 0x5953, 0x596d, 0x5c2a, 0x54a5,
+  0x551d, 0x5536, 0x556f, 0x554d, 0x569a, 0x569c, 0x56f7, 0x5710,
+  0x5719, 0x5e17, 0x5e21, 0x5e28, 0x5e6a, 0x5c74, 0x5c7c, 0x5ca8,
+  0x5c9e, 0x5cc3, 0x5cd3, 0x5ce3, 0x5ce7, 0x5cff, 0x5d04, 0x5d00,
+  0x5d1a, 0x5d0c, 0x5d4e, 0x5d5a, 0x5d85, 0x5d93,
+  /* 0x7b */
+  0x5d92, 0x5dc2, 0x5dc9, 0x8852, 0x5faf, 0x5906, 0x65a8, 0x7241,
+  0x7242, 0x5ebc, 0x5ecb, 0x95ec, 0x95ff, 0x8a1a, 0x9607, 0x9613,
+  0x961b, 0x5bac, 0x5ba7, 0x5c5d, 0x5f22, 0x59ee, 0x5a7c, 0x5a96,
+  0x5a73, 0x5a9e, 0x5aad, 0x5ada, 0x5aea, 0x5b1b, 0x5b56, 0x9a72,
+  0x9a83, 0x9a89, 0x9a8d, 0x9a8e, 0x9a95, 0x9aa6, 0x7395, 0x7399,
+  0x73a0, 0x73b1, 0x73a5, 0x73a6, 0x73d6, 0x73f0, 0x73fd, 0x73e3,
+  0x7424, 0x740e, 0x7407, 0x73f6, 0x73fa, 0x7432, 0x742f, 0x7444,
+  0x7442, 0x7471, 0x7478, 0x7462, 0x7486, 0x749f, 0x74a0, 0x7498,
+  0x74b2, 0x97e8, 0x6745, 0x679f, 0x677b, 0x67c8, 0x67ee, 0x684b,
+  0x68a0, 0x6812, 0x681f, 0x686a, 0x68bc, 0x68fb, 0x686f, 0x68b1,
+  0x68c1, 0x68eb, 0x6913, 0x68d1, 0x6911, 0x68d3, 0x68ec, 0x692b,
+  0x68e8, 0x69be, 0x6969, 0x6940, 0x696f, 0x695f,
+  /* 0x7c */
+  0x6962, 0x6935, 0x6959, 0x69bc, 0x69c5, 0x69da, 0x69dc, 0x6a0b,
+  0x69e5, 0x6a66, 0x6a96, 0x6ab4, 0x72dd, 0x5cf1, 0x7314, 0x733a,
+  0x6b95, 0x5f67, 0x80fe, 0x74fb, 0x7503, 0x655c, 0x6569, 0x6f26,
+  0x65f8, 0x65fb, 0x6609, 0x663d, 0x6662, 0x665e, 0x666c, 0x668d,
+  0x668b, 0x8d51, 0x8d57, 0x7263, 0x7277, 0x63b1, 0x6261, 0x6260,
+  0x6283, 0x62e4, 0x62c3, 0x631c, 0x6326, 0x63af, 0x63fe, 0x6422,
+  0x6412, 0x64ed, 0x6713, 0x6718, 0x8158, 0x81d1, 0x98cf, 0x98d4,
+  0x98d7, 0x6996, 0x7098, 0x70dc, 0x70fa, 0x710c, 0x711c, 0x71cb,
+  0x721f, 0x70dd, 0x659d, 0x6246, 0x6017, 0x60c7, 0x60d3, 0x60b0,
+  0x60d9, 0x6114, 0x6c3f, 0x6c67, 0x6c84, 0x6c9a, 0x6c6d, 0x6ca8,
+  0x6cc6, 0x6cb5, 0x6d49, 0x6d38, 0x6d11, 0x6d3a, 0x6d28, 0x6d50,
+  0x6d34, 0x6d55, 0x6d61, 0x6da2, 0x6d65, 0x6d5b,
+  /* 0x7d */
+  0x6d64, 0x6db4, 0x6e9a, 0x6e5c, 0x6e72, 0x6ea0, 0x6e87, 0x6e8e,
+  0x6ec9, 0x6ec3, 0x6f37, 0x6ed8, 0x6eea, 0x6f56, 0x6f75, 0x6f5f,
+  0x6fb4, 0x6fbc, 0x7014, 0x700d, 0x700c, 0x703c, 0x7943, 0x7947,
+  0x794a, 0x7950, 0x7972, 0x7998, 0x79a0, 0x79a4, 0x77fc, 0x77fb,
+  0x7822, 0x7820, 0x7841, 0x785a, 0x7875, 0x78b6, 0x78e1, 0x7933,
+  0x8a5f, 0x76fb, 0x771b, 0x772c, 0x7786, 0x77ab, 0x77ad, 0x7564,
+  0x756f, 0x6983, 0x7f7d, 0x76dd, 0x76e6, 0x76ec, 0x7521, 0x79fe,
+  0x7a44, 0x767f, 0x769e, 0x9e27, 0x9e2e, 0x9e30, 0x9e34, 0x9e4d,
+  0x9e52, 0x9e53, 0x9e54, 0x9e56, 0x9e59, 0x9e61, 0x9e62, 0x9e65,
+  0x9e6f, 0x9e74, 0x75a2, 0x7604, 0x7608, 0x761d, 0x7ad1, 0x7a85,
+  0x7a8e, 0x7aa3, 0x7ab8, 0x7abe, 0x77de, 0x8030, 0x988b, 0x988e,
+  0x9899, 0x98a3, 0x8683, 0x8705, 0x8758, 0x87cf,
+  /* 0x7e */
+  0x87e2, 0x880b, 0x80d4, 0x7f4d, 0x7b4a, 0x7b4e, 0x7b7f, 0x7b93,
+  0x7bef, 0x7c09, 0x7bf0, 0x7c15, 0x7c03, 0x7c20, 0x823a, 0x8886,
+  0x88aa, 0x88c0, 0x88c8, 0x8926, 0x8976, 0x7f91, 0x8283, 0x82bc,
+  0x82a7, 0x8313, 0x82fe, 0x8300, 0x835d, 0x8345, 0x8344, 0x831d,
+  0x83a6, 0x8399, 0x83fe, 0x841a, 0x83fc, 0x8429, 0x8439, 0x84a8,
+  0x84cf, 0x849f, 0x84c2, 0x84f7, 0x8570, 0x85b3, 0x85a2, 0x96d8,
+  0x85b8, 0x85e0, 0x7fda, 0x7eae, 0x7eb4, 0x7ebc, 0x7ed6, 0x7f0a,
+  0x5b43, 0x8d6a, 0x5245, 0x8c68, 0x8c6e, 0x8c6d, 0x8e16, 0x8e26,
+  0x8e27, 0x8e50, 0x9098, 0x90a0, 0x90bd, 0x90c8, 0x90c3, 0x90da,
+  0x90ff, 0x911a, 0x910c, 0x9120, 0x9142, 0x8fb5, 0x90e4, 0x8c86,
+  0x89f1, 0x8bb1, 0x8bbb, 0x8bc7, 0x8bea, 0x8c09, 0x8c1e, 0x9702,
+  0x68d0, 0x7306, 0x9f81, 0x9f82, 0x92c6, 0x9491,
+};
+
+static int
+isoir165ext_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 >= 0x2b && c1 <= 0x2f) || (c1 >= 0x7a && c1 <= 0x7e)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if (c2 >= 0x21 && c2 < 0x7f) {
+        unsigned int i = 94 * (c1 - 0x21) + (c2 - 0x21);
+        unsigned short wc = 0xfffd;
+        if (i < 8366) {
+          if (i < 1410)
+            wc = isoir165ext_2uni_page2b[i-940];
+        } else {
+          if (i < 8836)
+            wc = isoir165ext_2uni_page7a[i-8366];
+        }
+        if (wc != 0xfffd) {
+          *pwc = (ucs4_t) wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned short isoir165ext_2charset[876] = {
+  0x2b28, 0x2b26, 0x2b3a, 0x2b2c, 0x2b2a, 0x2b30, 0x2b2e, 0x2b34,
+  0x2b32, 0x2b39, 0x2b25, 0x2b27, 0x2b29, 0x2b3d, 0x2b3e, 0x2b2d,
+  0x2b31, 0x2b2b, 0x2b2f, 0x2b33, 0x2b35, 0x2b36, 0x2b37, 0x2b38,
+  0x2b3f, 0x2b22, 0x2b3b, 0x2b3c, 0x2b24, 0x2b23, 0x2b21, 0x2f65,
+  0x2f21, 0x2f22, 0x2f23, 0x2f24, 0x2f25, 0x2f26, 0x2f27, 0x2f28,
+  0x2f29, 0x2f2a, 0x2f2b, 0x2f2c, 0x2f4c, 0x2f4d, 0x2f4e, 0x2f4f,
+  0x2f50, 0x2f51, 0x2f52, 0x2f53, 0x2f54, 0x2f55, 0x2f56, 0x2f57,
+  0x2f58, 0x2f59, 0x2f5a, 0x2f5b, 0x2f5c, 0x2f5d, 0x2f5e, 0x2f5f,
+  0x2f60, 0x2f61, 0x2f62, 0x2f63, 0x2f64, 0x2f2d, 0x2f2e, 0x2f2f,
+  0x2f30, 0x2f31, 0x2f32, 0x2f33, 0x2f34, 0x2f35, 0x2f36, 0x2f37,
+  0x2f38, 0x2f39, 0x2f3a, 0x2f3b, 0x2f3c, 0x2f3d, 0x2f3e, 0x2f3f,
+  0x2f40, 0x2f41, 0x2f42, 0x2f43, 0x2f44, 0x2f45, 0x2f46, 0x2f47,
+  0x2f48, 0x2f49, 0x2f4a, 0x2f4b, 0x7a21, 0x2c76, 0x7a23, 0x2f7c,
+  0x7a38, 0x2c22, 0x7a2e, 0x7a2c, 0x2e23, 0x2e24, 0x7a2d, 0x2e25,
+  0x2c23, 0x7a2f, 0x7a31, 0x7a30, 0x2e26, 0x7a3e, 0x7a32, 0x7a33,
+  0x7a36, 0x2c24, 0x7a35, 0x7a34, 0x7a37, 0x2c79, 0x2e28, 0x2e27,
+  0x2c25, 0x2c7a, 0x7a2b, 0x7a29, 0x7a2a, 0x2e2b, 0x7a39, 0x2e2a,
+  0x7a3c, 0x7a3d, 0x7e5b, 0x7a3f, 0x2c7b, 0x7a40, 0x7a41, 0x7a42,
+  0x7a43, 0x2d53, 0x7a44, 0x2e29, 0x7a28, 0x2e21, 0x2c21, 0x7a45,
+  0x7a46, 0x7a60, 0x7a61, 0x7a62, 0x7a64, 0x2c7d, 0x7a63, 0x2f7d,
+  0x2c38, 0x2d5e, 0x2c39, 0x2c3a, 0x2c3b, 0x7a65, 0x7a66, 0x7a5b,
+  0x7a67, 0x7a68, 0x7a69, 0x7a48, 0x7a47, 0x2d5d, 0x2e2d, 0x2e2f,
+  0x2e2e, 0x7a4b, 0x7a4a, 0x7a49, 0x7a4c, 0x7a4d, 0x2e30, 0x7a50,
+  0x2f69, 0x7a51, 0x7a4f, 0x7a4e, 0x7a52, 0x7a56, 0x2f68, 0x7a53,
+  0x7a54, 0x7a55, 0x2c31, 0x7a57, 0x2e32, 0x2e31, 0x2e33, 0x7a59,
+  0x7a58, 0x2e34, 0x7a5a, 0x7b26, 0x7a3a, 0x7a25, 0x7a5c, 0x7a5d,
+  0x7a5e, 0x2d66, 0x2c3f, 0x7b36, 0x2c40, 0x2e3e, 0x2c41, 0x2e3f,
+  0x7b39, 0x7b37, 0x2e40, 0x7b38, 0x7b3a, 0x7b3b, 0x2d67, 0x2e41,
+  0x7b3c, 0x7b3d, 0x7b3e, 0x7e59, 0x7b3f, 0x7b33, 0x7b32, 0x2d61,
+  0x7a5f, 0x2e35, 0x7b34, 0x2e39, 0x7a6e, 0x7a6f, 0x7a71, 0x7a70,
+  0x7a72, 0x2e3a, 0x7a73, 0x7a74, 0x7a75, 0x7c2e, 0x7a76, 0x7a78,
+  0x7a77, 0x2f70, 0x7a7a, 0x2d63, 0x2d64, 0x7a79, 0x2c3c, 0x7a7b,
+  0x7a7c, 0x7a7d, 0x7b21, 0x7a7e, 0x7b22, 0x7b23, 0x2d65, 0x2d62,
+  0x7a6a, 0x7a6b, 0x7a6c, 0x7a6d, 0x2c2f, 0x7b2a, 0x2d5b, 0x7b2b,
+  0x2c34, 0x2e36, 0x2e37, 0x2e38, 0x7b35, 0x2e3d, 0x7c32, 0x2e3c,
+  0x2e3b, 0x7b25, 0x7c65, 0x2d5a, 0x7c68, 0x7c66, 0x7c67, 0x7c69,
+  0x7c6a, 0x2e5a, 0x2c2e, 0x2c47, 0x7c64, 0x2c48, 0x7c48, 0x7c47,
+  0x7c49, 0x2c35, 0x7c4b, 0x7c4a, 0x7c4c, 0x7c4d, 0x2f6f, 0x7c4e,
+  0x7c46, 0x7c4f, 0x7c51, 0x7c50, 0x2e51, 0x2e52, 0x2c36, 0x7c52,
+  0x7c36, 0x7c37, 0x2d69, 0x7c63, 0x2d4e, 0x7b27, 0x2d7e, 0x7c39,
+  0x7c3a, 0x2d70, 0x7c3b, 0x7c3c, 0x7c3e, 0x7c3d, 0x2e4d, 0x7c3f,
+  0x2d72, 0x7c41, 0x7c40, 0x2d71, 0x7c53, 0x7c54, 0x7a22, 0x7b63,
+  0x2c4f, 0x7b65, 0x2e48, 0x7b64, 0x7b66, 0x7b67, 0x7b6a, 0x7b6b,
+  0x7b68, 0x7b6c, 0x2e49, 0x7b6f, 0x7b69, 0x7b70, 0x7b6d, 0x2d6f,
+  0x7b71, 0x7e79, 0x7b74, 0x7b76, 0x7b79, 0x7b72, 0x7b77, 0x2e4a,
+  0x7b6e, 0x7b75, 0x7b73, 0x2d6d, 0x7b78, 0x7c22, 0x7b7c, 0x7c23,
+  0x7b7e, 0x7c21, 0x7b7b, 0x7b7d, 0x7d52, 0x7c5a, 0x7c24, 0x7b7a,
+  0x7c25, 0x7c26, 0x7c27, 0x7c29, 0x2e4b, 0x7c28, 0x2d6e, 0x7c2a,
+  0x7c2b, 0x7c2c, 0x2c50, 0x2c5a, 0x2e55, 0x7c31, 0x2c52, 0x7a3b,
+  0x2e53, 0x2d73, 0x2f6a, 0x7c6b, 0x7c6c, 0x7c6f, 0x7c6d, 0x2e5b,
+  0x2d54, 0x2c27, 0x7c6e, 0x7c70, 0x7c72, 0x2c29, 0x7c71, 0x2c28,
+  0x7c75, 0x7c77, 0x2f6b, 0x7c79, 0x7c74, 0x7c76, 0x2d55, 0x7c73,
+  0x7c78, 0x7c7a, 0x7c7e, 0x7c7b, 0x7d21, 0x7c7d, 0x7c7c, 0x2e5c,
+  0x7d22, 0x2d56, 0x7d24, 0x2c2a, 0x2d57, 0x7d25, 0x2e5d, 0x7d27,
+  0x7d28, 0x7d23, 0x7d26, 0x2c2b, 0x2e5e, 0x7d2a, 0x7d29, 0x7d2c,
+  0x2f6c, 0x7d2d, 0x2c2c, 0x7c38, 0x7d2b, 0x7d2e, 0x7d30, 0x7d2f,
+  0x2d58, 0x2e5f, 0x2e60, 0x2c2d, 0x7d31, 0x7d32, 0x2d59, 0x7d35,
+  0x7d34, 0x7d33, 0x7d36, 0x2e57, 0x7c5b, 0x2d6a, 0x7c5c, 0x7c62,
+  0x2e58, 0x7c5d, 0x7c5e, 0x7c5f, 0x2e59, 0x2f74, 0x2c51, 0x7c60,
+  0x2c46, 0x2d6c, 0x7c61, 0x7b28, 0x7b29, 0x2c37, 0x7c44, 0x7c45,
+  0x2f73, 0x2c57, 0x2c3d, 0x7c2d, 0x2e4c, 0x7e7a, 0x7c2f, 0x7c30,
+  0x2e42, 0x7b47, 0x7b48, 0x2c4a, 0x7b49, 0x7b4b, 0x7b4c, 0x7b4a,
+  0x7b4d, 0x7b50, 0x2e43, 0x2e44, 0x7b4e, 0x7b54, 0x7b55, 0x7b4f,
+  0x7b53, 0x7b52, 0x2e46, 0x7b51, 0x2c4b, 0x7b57, 0x7b56, 0x2e45,
+  0x7b59, 0x7b58, 0x2e47, 0x7b5c, 0x7b5a, 0x7b5b, 0x7b5d, 0x2c4c,
+  0x7b60, 0x7b5e, 0x7b5f, 0x2c4d, 0x7b61, 0x2c4e, 0x7c34, 0x7c35,
+  0x7d57, 0x2c75, 0x7a24, 0x2d6b, 0x7d50, 0x2f77, 0x7d51, 0x7d6b,
+  0x2e6a, 0x2f78, 0x7d6c, 0x7d6d, 0x7d6e, 0x2d74, 0x2e6c, 0x7d5a,
+  0x7d5b, 0x7d54, 0x7d55, 0x2d76, 0x7d56, 0x7d4a, 0x2c5f, 0x7d4b,
+  0x7d4c, 0x7d4d, 0x2d75, 0x7d4e, 0x7d4f, 0x7d75, 0x7d40, 0x7d3f,
+  0x2e63, 0x7d42, 0x7d41, 0x7d43, 0x2e64, 0x7d44, 0x7d45, 0x2e65,
+  0x7d46, 0x2e66, 0x7d47, 0x2e67, 0x7d48, 0x2e61, 0x7d37, 0x7d38,
+  0x7d39, 0x2e62, 0x7d3a, 0x7d3b, 0x2c49, 0x7d3c, 0x7d3d, 0x7d3e,
+  0x2e22, 0x7d58, 0x2e68, 0x7d59, 0x2e69, 0x7d70, 0x7d71, 0x7d72,
+  0x7d73, 0x7d74, 0x7d6f, 0x2e6b, 0x7e25, 0x7e26, 0x2c69, 0x7e27,
+  0x2d7a, 0x7e28, 0x7e29, 0x7e2b, 0x2e6e, 0x7e2d, 0x7e2a, 0x7e2c,
+  0x7e2e, 0x2e6f, 0x2d7b, 0x2e70, 0x2f7b, 0x2e72, 0x2c33, 0x2c6c,
+  0x7e54, 0x7e55, 0x2c42, 0x7e56, 0x7e57, 0x2c43, 0x2f72, 0x2c44,
+  0x7e58, 0x2f71, 0x2e77, 0x7e24, 0x7d53, 0x7e36, 0x2e76, 0x2c6a,
+  0x7e53, 0x2c6b, 0x7d76, 0x7e23, 0x7c33, 0x2c78, 0x2e54, 0x2c59,
+  0x7c55, 0x7c56, 0x2f76, 0x2f75, 0x7e2f, 0x2e73, 0x7e37, 0x7e39,
+  0x7e38, 0x7e3b, 0x7e3c, 0x7e3a, 0x7e40, 0x7e3f, 0x7e3e, 0x7e3d,
+  0x7e42, 0x7e41, 0x2e74, 0x7e45, 0x7e43, 0x7e44, 0x7e46, 0x7e47,
+  0x2c32, 0x2d60, 0x2d5f, 0x7e4a, 0x7e48, 0x7e4b, 0x2f6e, 0x7e49,
+  0x2e75, 0x7e4c, 0x2f6d, 0x7e4d, 0x7e4f, 0x7e4e, 0x7e51, 0x7e52,
+  0x7a27, 0x7d7b, 0x7d7c, 0x2c68, 0x7d7d, 0x2d78, 0x2c58, 0x7d7e,
+  0x7e21, 0x7e22, 0x2d79, 0x7b24, 0x7e30, 0x2c5c, 0x7e31, 0x2c5d,
+  0x7e32, 0x7e33, 0x7e34, 0x2c5e, 0x7e35, 0x2f7a, 0x2e4f, 0x2e50,
+  0x2c7c, 0x7e71, 0x7b2e, 0x7d49, 0x2c77, 0x7e72, 0x7e73, 0x7e74,
+  0x7e75, 0x7e76, 0x7e77, 0x7e5c, 0x7e5e, 0x7e5d, 0x7e70, 0x2e2c,
+  0x7c42, 0x2e4e, 0x7c43, 0x2c55, 0x7e5a, 0x7e5f, 0x2e78, 0x7e60,
+  0x7e61, 0x2c6e, 0x2c6d, 0x7e62, 0x2e79, 0x2c70, 0x2c6f, 0x2d7c,
+  0x2c53, 0x2c54, 0x7e6e, 0x2d5c, 0x7e63, 0x7e64, 0x2f66, 0x7e65,
+  0x7e67, 0x7e66, 0x7e68, 0x7e6f, 0x7e69, 0x7e6b, 0x2c26, 0x7e6a,
+  0x2d50, 0x7e6c, 0x7e6d, 0x2f7e, 0x7e7d, 0x7e7e, 0x2d21, 0x2d22,
+  0x2c7e, 0x2d23, 0x2d24, 0x2d25, 0x2c60, 0x2d26, 0x2e7c, 0x2d28,
+  0x2d29, 0x2d2a, 0x2d27, 0x2d2b, 0x2d2c, 0x2c61, 0x2c62, 0x2d2d,
+  0x2d2e, 0x2d7d, 0x7b2c, 0x7b2d, 0x7b2f, 0x7b30, 0x2c30, 0x7b31,
+  0x2f67, 0x7e50, 0x7e78, 0x2e7a, 0x2d3e, 0x2c71, 0x2d3f, 0x2d40,
+  0x2d42, 0x2d41, 0x7b62, 0x7d77, 0x7d78, 0x2e6d, 0x2d77, 0x7d79,
+  0x7d7a, 0x7c57, 0x2c5b, 0x7c58, 0x2e56, 0x7c59, 0x2d43, 0x2d44,
+  0x2d45, 0x2d46, 0x2d47, 0x2d48, 0x2d49, 0x2d4a, 0x2c3e, 0x2d4b,
+  0x7b40, 0x7b41, 0x7b42, 0x7b43, 0x7b44, 0x2d68, 0x7b45, 0x2c45,
+  0x7b46, 0x2d4c, 0x2d4d, 0x2f79, 0x2c56, 0x2c72, 0x2d2f, 0x2d30,
+  0x2d31, 0x2d32, 0x2d33, 0x2d34, 0x2d35, 0x2d36, 0x2e71, 0x2d37,
+  0x2d38, 0x2d39, 0x2d3a, 0x2d3b, 0x2d3c, 0x2d3d, 0x2c63, 0x7d5c,
+  0x7d5d, 0x7d5e, 0x7d5f, 0x2c64, 0x7d60, 0x2c65, 0x7d61, 0x7d62,
+  0x7d63, 0x7d64, 0x7d65, 0x2c66, 0x2c67, 0x7d66, 0x7d67, 0x7d68,
+  0x7d69, 0x7d6a, 0x2d4f, 0x2d51, 0x7a26, 0x2e7b, 0x2d52, 0x2c73,
+  0x2c74, 0x7e7b, 0x7e7c, 0x2b40,
+};
+
+static const Summary16 isoir165ext_uni2indx_page00[32] = {
+  /* 0x0000 */
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x3700 }, {    5, 0x160c },
+  /* 0x0100 */
+  {   10, 0x0000 }, {   10, 0x0808 }, {   12, 0x0800 }, {   13, 0x0000 },
+  {   13, 0x2110 }, {   16, 0x0000 }, {   16, 0x0800 }, {   17, 0x0000 },
+  {   17, 0x0000 }, {   17, 0x0000 }, {   17, 0x0000 }, {   17, 0x0000 },
+  {   17, 0x0000 }, {   17, 0x1555 }, {   24, 0x0000 }, {   24, 0x0200 },
+};
+static const Summary16 isoir165ext_uni2indx_page03[12] = {
+  /* 0x0300 */
+  {   25, 0x0000 }, {   25, 0x0000 }, {   25, 0x0000 }, {   25, 0x0000 },
+  {   25, 0x0000 }, {   25, 0x0000 }, {   25, 0x0000 }, {   25, 0x0000 },
+  {   25, 0x0000 }, {   25, 0x0000 }, {   25, 0x1000 }, {   26, 0x0002 },
+};
+static const Summary16 isoir165ext_uni2indx_page1e[28] = {
+  /* 0x1e00 */
+  {   27, 0x0000 }, {   27, 0x0000 }, {   27, 0x0000 }, {   27, 0x8000 },
+  {   28, 0x0000 }, {   28, 0x0000 }, {   28, 0x0000 }, {   28, 0x0000 },
+  {   28, 0x0000 }, {   28, 0x0000 }, {   28, 0x0000 }, {   28, 0x0000 },
+  {   28, 0x0000 }, {   28, 0x0000 }, {   28, 0x0000 }, {   28, 0x0000 },
+  /* 0x1f00 */
+  {   28, 0x0000 }, {   28, 0x0000 }, {   28, 0x0000 }, {   28, 0x0000 },
+  {   28, 0x0000 }, {   28, 0x0000 }, {   28, 0x0000 }, {   28, 0x0001 },
+  {   29, 0x0000 }, {   29, 0x0000 }, {   29, 0x0000 }, {   29, 0x0003 },
+};
+static const Summary16 isoir165ext_uni2indx_page30[4] = {
+  /* 0x3000 */
+  {   31, 0x0000 }, {   31, 0x0000 }, {   31, 0x0000 }, {   31, 0x0080 },
+};
+static const Summary16 isoir165ext_uni2indx_page32[32] = {
+  /* 0x3200 */
+  {   32, 0x0000 }, {   32, 0x0000 }, {   32, 0x0000 }, {   32, 0x0000 },
+  {   32, 0x0000 }, {   32, 0x0000 }, {   32, 0x0000 }, {   32, 0x0000 },
+  {   32, 0x0000 }, {   32, 0x0000 }, {   32, 0x0000 }, {   32, 0x0000 },
+  {   32, 0x0fff }, {   44, 0x0000 }, {   44, 0x0000 }, {   44, 0x0000 },
+  /* 0x3300 */
+  {   44, 0x0000 }, {   44, 0x0000 }, {   44, 0x0000 }, {   44, 0x0000 },
+  {   44, 0x0000 }, {   44, 0xff00 }, {   52, 0xffff }, {   68, 0x0001 },
+  {   69, 0x0000 }, {   69, 0x0000 }, {   69, 0x0000 }, {   69, 0x0000 },
+  {   69, 0x0000 }, {   69, 0x0000 }, {   69, 0xffff }, {   85, 0x7fff },
+};
+static const Summary16 isoir165ext_uni2indx_page4e[752] = {
+  /* 0x4e00 */
+  {  100, 0x8000 }, {  101, 0x0000 }, {  101, 0x0040 }, {  102, 0x0000 },
+  {  102, 0x0004 }, {  103, 0x0000 }, {  103, 0x0000 }, {  103, 0x0000 },
+  {  103, 0x0020 }, {  104, 0x0000 }, {  104, 0x0000 }, {  104, 0x0140 },
+  {  106, 0x0000 }, {  106, 0x0000 }, {  106, 0x0000 }, {  106, 0x0000 },
+  /* 0x4f00 */
+  {  106, 0x0808 }, {  108, 0x0020 }, {  109, 0x000a }, {  111, 0x4800 },
+  {  113, 0x0000 }, {  113, 0x0000 }, {  113, 0x0802 }, {  115, 0x0400 },
+  {  116, 0x0000 }, {  116, 0x0000 }, {  116, 0x0004 }, {  117, 0x0010 },
+  {  118, 0x0000 }, {  118, 0x0000 }, {  118, 0x0800 }, {  119, 0x0060 },
+  /* 0x5000 */
+  {  121, 0x0000 }, {  121, 0x4000 }, {  122, 0x0004 }, {  123, 0x0010 },
+  {  124, 0x0000 }, {  124, 0x0000 }, {  124, 0x0000 }, {  124, 0x0004 },
+  {  125, 0x0000 }, {  125, 0x0006 }, {  127, 0x0010 }, {  128, 0x0000 },
+  {  128, 0x2080 }, {  130, 0x0000 }, {  130, 0x0000 }, {  130, 0x0001 },
+  /* 0x5100 */
+  {  131, 0x0000 }, {  131, 0x0000 }, {  131, 0x0000 }, {  131, 0x0000 },
+  {  131, 0x0000 }, {  131, 0x0000 }, {  131, 0x0000 }, {  131, 0x0000 },
+  {  131, 0x8080 }, {  133, 0x0000 }, {  133, 0x4100 }, {  135, 0x0000 },
+  {  135, 0x0008 }, {  136, 0x0000 }, {  136, 0x0000 }, {  136, 0x0000 },
+  /* 0x5200 */
+  {  136, 0x0000 }, {  136, 0x0000 }, {  136, 0x1000 }, {  137, 0x0004 },
+  {  138, 0x0020 }, {  139, 0x0000 }, {  139, 0x0000 }, {  139, 0x0000 },
+  {  139, 0x0000 }, {  139, 0x0100 }, {  140, 0x0000 }, {  140, 0x1a00 },
+  {  143, 0x2000 }, {  144, 0x0400 }, {  145, 0x0000 }, {  145, 0x0088 },
+  /* 0x5300 */
+  {  147, 0x0400 }, {  148, 0x1000 }, {  149, 0x0000 }, {  149, 0x0000 },
+  {  149, 0x0000 }, {  149, 0x0000 }, {  149, 0x0000 }, {  149, 0x0000 },
+  {  149, 0x0000 }, {  149, 0x0001 }, {  150, 0x0000 }, {  150, 0x4000 },
+  {  151, 0x00c0 }, {  153, 0x0000 }, {  153, 0x0000 }, {  153, 0x0000 },
+  /* 0x5400 */
+  {  153, 0x0000 }, {  153, 0x0000 }, {  153, 0x0000 }, {  153, 0x0000 },
+  {  153, 0x0000 }, {  153, 0x0000 }, {  153, 0x0000 }, {  153, 0x0000 },
+  {  153, 0x0000 }, {  153, 0x0000 }, {  153, 0x0020 }, {  154, 0x0000 },
+  {  154, 0x0000 }, {  154, 0x0000 }, {  154, 0x0000 }, {  154, 0x0000 },
+  /* 0x5500 */
+  {  154, 0x0000 }, {  154, 0x2000 }, {  155, 0x0000 }, {  155, 0x0040 },
+  {  156, 0x2000 }, {  157, 0x0080 }, {  158, 0x8000 }, {  159, 0x0011 },
+  {  161, 0x0040 }, {  162, 0x0000 }, {  162, 0x0010 }, {  163, 0x0000 },
+  {  163, 0x0000 }, {  163, 0x0000 }, {  163, 0x0000 }, {  163, 0x0000 },
+  /* 0x5600 */
+  {  163, 0x0000 }, {  163, 0x0000 }, {  163, 0x0000 }, {  163, 0x0000 },
+  {  163, 0x0001 }, {  164, 0x0000 }, {  164, 0x0000 }, {  164, 0x0000 },
+  {  164, 0x0010 }, {  165, 0x1400 }, {  167, 0x2000 }, {  168, 0x0000 },
+  {  168, 0x0000 }, {  168, 0x0000 }, {  168, 0x0000 }, {  168, 0x0080 },
+  /* 0x5700 */
+  {  169, 0x0000 }, {  169, 0x0201 }, {  171, 0x0000 }, {  171, 0x0000 },
+  {  171, 0x0000 }, {  171, 0x0000 }, {  171, 0x1000 }, {  172, 0x8001 },
+  {  174, 0x0080 }, {  175, 0xc420 }, {  179, 0x0000 }, {  179, 0x4002 },
+  {  181, 0x1000 }, {  182, 0x0000 }, {  182, 0x0800 }, {  183, 0x0020 },
+  /* 0x5800 */
+  {  184, 0x5208 }, {  188, 0x0000 }, {  188, 0x0000 }, {  188, 0x3000 },
+  {  190, 0x016c }, {  195, 0x2408 }, {  198, 0x0000 }, {  198, 0x0002 },
+  {  199, 0x0110 }, {  201, 0x0020 }, {  202, 0x0000 }, {  202, 0x0000 },
+  {  202, 0x0000 }, {  202, 0x0000 }, {  202, 0x0000 }, {  202, 0x0100 },
+  /* 0x5900 */
+  {  203, 0x0040 }, {  204, 0x0001 }, {  205, 0x1000 }, {  206, 0x0000 },
+  {  206, 0x0001 }, {  207, 0x0008 }, {  208, 0x2000 }, {  209, 0x0000 },
+  {  209, 0x0000 }, {  209, 0x0000 }, {  209, 0x0000 }, {  209, 0x0008 },
+  {  210, 0x0000 }, {  210, 0x4000 }, {  211, 0x4000 }, {  212, 0x2000 },
+  /* 0x5a00 */
+  {  213, 0x0000 }, {  213, 0x0004 }, {  214, 0x0000 }, {  214, 0x0000 },
+  {  214, 0x0000 }, {  214, 0x4000 }, {  215, 0x0020 }, {  216, 0x1008 },
+  {  218, 0x0010 }, {  219, 0x4040 }, {  221, 0x6000 }, {  223, 0x0000 },
+  {  223, 0x0010 }, {  224, 0x0400 }, {  225, 0x0400 }, {  226, 0x0000 },
+  /* 0x5b00 */
+  {  226, 0x0000 }, {  226, 0x0800 }, {  227, 0x0000 }, {  227, 0x0000 },
+  {  227, 0x0008 }, {  228, 0x0040 }, {  229, 0x0000 }, {  229, 0x0000 },
+  {  229, 0x0000 }, {  229, 0x0000 }, {  229, 0x1080 }, {  231, 0x0000 },
+  {  231, 0x0000 }, {  231, 0x0000 }, {  231, 0x0000 }, {  231, 0x0000 },
+  /* 0x5c00 */
+  {  231, 0x0020 }, {  232, 0x0000 }, {  232, 0x0400 }, {  233, 0x0001 },
+  {  234, 0x0000 }, {  234, 0x2000 }, {  235, 0x0000 }, {  235, 0x1014 },
+  {  238, 0x0000 }, {  238, 0x4000 }, {  239, 0x0100 }, {  240, 0x0000 },
+  {  240, 0x0088 }, {  242, 0x0008 }, {  243, 0x0088 }, {  245, 0x8002 },
+  /* 0x5d00 */
+  {  247, 0x1031 }, {  251, 0x8602 }, {  255, 0x0000 }, {  255, 0x0000 },
+  {  255, 0x4000 }, {  256, 0x0400 }, {  257, 0x0000 }, {  257, 0x0000 },
+  {  257, 0x0020 }, {  258, 0x000c }, {  260, 0x0000 }, {  260, 0x0000 },
+  {  260, 0x0204 }, {  262, 0x0040 }, {  263, 0x0000 }, {  263, 0x0000 },
+  /* 0x5e00 */
+  {  263, 0x0800 }, {  264, 0x0080 }, {  265, 0x0102 }, {  267, 0x0000 },
+  {  267, 0x0000 }, {  267, 0x0000 }, {  267, 0x0400 }, {  268, 0x0000 },
+  {  268, 0x0000 }, {  268, 0x0000 }, {  268, 0x0010 }, {  269, 0x1000 },
+  {  270, 0x0900 }, {  272, 0x0000 }, {  272, 0x0000 }, {  272, 0x0000 },
+  /* 0x5f00 */
+  {  272, 0x7080 }, {  276, 0x0000 }, {  276, 0x0004 }, {  277, 0x0000 },
+  {  277, 0x0000 }, {  277, 0x8000 }, {  278, 0x0180 }, {  280, 0x0000 },
+  {  280, 0x0000 }, {  280, 0x0000 }, {  280, 0x9000 }, {  282, 0x0000 },
+  {  282, 0x0000 }, {  282, 0x0000 }, {  282, 0x0000 }, {  282, 0x0000 },
+  /* 0x6000 */
+  {  282, 0x0000 }, {  282, 0x0080 }, {  283, 0x0000 }, {  283, 0x0000 },
+  {  283, 0x0000 }, {  283, 0x0000 }, {  283, 0x0000 }, {  283, 0x0000 },
+  {  283, 0x0000 }, {  283, 0x0000 }, {  283, 0x4000 }, {  284, 0x0001 },
+  {  285, 0x0080 }, {  286, 0x0208 }, {  288, 0x0000 }, {  288, 0x0000 },
+  /* 0x6100 */
+  {  288, 0x0000 }, {  288, 0x0010 }, {  289, 0x0000 }, {  289, 0x0000 },
+  {  289, 0x0000 }, {  289, 0x0008 }, {  290, 0x0020 }, {  291, 0x0000 },
+  {  291, 0x0000 }, {  291, 0x0000 }, {  291, 0x0000 }, {  291, 0x0000 },
+  {  291, 0x0000 }, {  291, 0x0000 }, {  291, 0x0000 }, {  291, 0x0000 },
+  /* 0x6200 */
+  {  291, 0x0000 }, {  291, 0x0000 }, {  291, 0x0000 }, {  291, 0x0000 },
+  {  291, 0x0460 }, {  294, 0x0000 }, {  294, 0x0003 }, {  296, 0x0000 },
+  {  296, 0x0008 }, {  297, 0x0010 }, {  298, 0x0000 }, {  298, 0x0000 },
+  {  298, 0x0008 }, {  299, 0x0000 }, {  299, 0x0010 }, {  300, 0x0000 },
+  /* 0x6300 */
+  {  300, 0x0000 }, {  300, 0x1000 }, {  301, 0x0040 }, {  302, 0x1000 },
+  {  303, 0x0000 }, {  303, 0x0000 }, {  303, 0x0000 }, {  303, 0x0000 },
+  {  303, 0x0000 }, {  303, 0x0000 }, {  303, 0x8000 }, {  304, 0x0002 },
+  {  305, 0x0000 }, {  305, 0x0000 }, {  305, 0x0000 }, {  305, 0x4000 },
+  /* 0x6400 */
+  {  306, 0x0000 }, {  306, 0x0004 }, {  307, 0x0084 }, {  309, 0x0000 },
+  {  309, 0x0000 }, {  309, 0x0000 }, {  309, 0x0000 }, {  309, 0x2080 },
+  {  311, 0x0000 }, {  311, 0x0000 }, {  311, 0x0000 }, {  311, 0x0000 },
+  {  311, 0x0000 }, {  311, 0x0000 }, {  311, 0x2000 }, {  312, 0x0000 },
+  /* 0x6500 */
+  {  312, 0x0000 }, {  312, 0x0000 }, {  312, 0x0000 }, {  312, 0x0000 },
+  {  312, 0x0000 }, {  312, 0x1000 }, {  313, 0x0200 }, {  314, 0x0000 },
+  {  314, 0x8000 }, {  315, 0x2000 }, {  316, 0x0104 }, {  318, 0x0000 },
+  {  318, 0x0004 }, {  319, 0x0000 }, {  319, 0x0000 }, {  319, 0x0900 },
+  /* 0x6600 */
+  {  321, 0x0280 }, {  323, 0x0000 }, {  323, 0x0000 }, {  323, 0x2000 },
+  {  324, 0x0000 }, {  324, 0x4000 }, {  325, 0x1084 }, {  328, 0x0008 },
+  {  329, 0x6800 }, {  332, 0x0000 }, {  332, 0x0000 }, {  332, 0x0000 },
+  {  332, 0x0000 }, {  332, 0x0000 }, {  332, 0x0000 }, {  332, 0x0000 },
+  /* 0x6700 */
+  {  332, 0x0000 }, {  332, 0x0108 }, {  334, 0x0000 }, {  334, 0x8000 },
+  {  335, 0x0020 }, {  336, 0x0000 }, {  336, 0x0080 }, {  337, 0x0800 },
+  {  338, 0x0000 }, {  338, 0x8200 }, {  340, 0x0000 }, {  340, 0x0000 },
+  {  340, 0x0100 }, {  341, 0x0000 }, {  341, 0x4000 }, {  342, 0x0000 },
+  /* 0x6800 */
+  {  342, 0x0000 }, {  342, 0x8004 }, {  344, 0x0000 }, {  344, 0x0000 },
+  {  344, 0x0800 }, {  345, 0x0000 }, {  345, 0x9400 }, {  348, 0x0000 },
+  {  348, 0x0000 }, {  348, 0x0000 }, {  348, 0x0001 }, {  349, 0x9002 },
+  {  352, 0x0002 }, {  353, 0x000b }, {  356, 0x1900 }, {  359, 0x0900 },
+  /* 0x6900 */
+  {  361, 0x0000 }, {  361, 0x200a }, {  364, 0x0800 }, {  365, 0x0020 },
+  {  366, 0x0001 }, {  367, 0x8200 }, {  369, 0x8204 }, {  372, 0x0000 },
+  {  372, 0x0008 }, {  373, 0x0040 }, {  374, 0x0000 }, {  374, 0x5000 },
+  {  376, 0x0020 }, {  377, 0x1400 }, {  379, 0x0020 }, {  380, 0x4000 },
+  /* 0x6a00 */
+  {  381, 0x0800 }, {  382, 0x0002 }, {  383, 0x0000 }, {  383, 0x0000 },
+  {  383, 0x0000 }, {  383, 0x0000 }, {  383, 0x0040 }, {  384, 0x0000 },
+  {  384, 0x0000 }, {  384, 0x0040 }, {  385, 0x0000 }, {  385, 0x0030 },
+  {  387, 0x0000 }, {  387, 0x0000 }, {  387, 0x0000 }, {  387, 0x0000 },
+  /* 0x6b00 */
+  {  387, 0x0000 }, {  387, 0x0000 }, {  387, 0x0000 }, {  387, 0x0100 },
+  {  388, 0x0000 }, {  388, 0x0010 }, {  389, 0x0000 }, {  389, 0x0000 },
+  {  389, 0x0000 }, {  389, 0x0020 }, {  390, 0x0008 }, {  391, 0x0000 },
+  {  391, 0x0000 }, {  391, 0x0400 }, {  392, 0x0000 }, {  392, 0x0000 },
+  /* 0x6c00 */
+  {  392, 0x0000 }, {  392, 0x2000 }, {  393, 0x0020 }, {  394, 0xc000 },
+  {  396, 0x0000 }, {  396, 0x0000 }, {  396, 0x2080 }, {  398, 0x0000 },
+  {  398, 0x0090 }, {  400, 0x0540 }, {  403, 0x0100 }, {  404, 0x0020 },
+  {  405, 0x0048 }, {  407, 0x1000 }, {  408, 0x0000 }, {  408, 0x0000 },
+  /* 0x6d00 */
+  {  408, 0x0000 }, {  408, 0x0002 }, {  409, 0x0300 }, {  411, 0x0510 },
+  {  414, 0x0210 }, {  416, 0x0821 }, {  419, 0x0032 }, {  422, 0x0000 },
+  {  422, 0x0000 }, {  422, 0x0000 }, {  422, 0x2004 }, {  424, 0x0010 },
+  {  425, 0x0000 }, {  425, 0x0000 }, {  425, 0x0000 }, {  425, 0x0000 },
+  /* 0x6e00 */
+  {  425, 0x0000 }, {  425, 0x0800 }, {  426, 0x0000 }, {  426, 0x0000 },
+  {  426, 0x0000 }, {  426, 0x3000 }, {  428, 0x0080 }, {  429, 0x0004 },
+  {  430, 0x4082 }, {  433, 0x0400 }, {  434, 0x0041 }, {  436, 0x0020 },
+  {  437, 0x0208 }, {  439, 0x0100 }, {  440, 0x0c80 }, {  443, 0x0000 },
+  /* 0x6f00 */
+  {  443, 0x0000 }, {  443, 0x0000 }, {  443, 0x0040 }, {  444, 0x0080 },
+  {  445, 0x0000 }, {  445, 0x8040 }, {  447, 0x0000 }, {  447, 0x0020 },
+  {  448, 0x0004 }, {  449, 0x0810 }, {  451, 0x0020 }, {  452, 0x1010 },
+  {  454, 0x0000 }, {  454, 0x0000 }, {  454, 0x1000 }, {  455, 0x0000 },
+  /* 0x7000 */
+  {  455, 0x3000 }, {  457, 0x0010 }, {  458, 0x0000 }, {  458, 0x1000 },
+  {  459, 0x0000 }, {  459, 0x0000 }, {  459, 0x0000 }, {  459, 0x0400 },
+  {  460, 0x0000 }, {  460, 0x4100 }, {  462, 0x0000 }, {  462, 0x0000 },
+  {  462, 0x0000 }, {  462, 0x3000 }, {  464, 0x0000 }, {  464, 0x0402 },
+  /* 0x7100 */
+  {  466, 0x1000 }, {  467, 0x1000 }, {  468, 0x4001 }, {  470, 0x0000 },
+  {  470, 0x0000 }, {  470, 0x0000 }, {  470, 0x0000 }, {  470, 0x0000 },
+  {  470, 0x0000 }, {  470, 0x0000 }, {  470, 0x0000 }, {  470, 0x0000 },
+  {  470, 0x8c00 }, {  473, 0x0000 }, {  473, 0x0000 }, {  473, 0x8000 },
+  /* 0x7200 */
+  {  474, 0x0000 }, {  474, 0x8000 }, {  475, 0x0000 }, {  475, 0x0000 },
+  {  475, 0x0006 }, {  477, 0x0400 }, {  478, 0x0008 }, {  479, 0x0080 },
+  {  480, 0x0080 }, {  481, 0x0000 }, {  481, 0x0100 }, {  482, 0x0000 },
+  {  482, 0x0200 }, {  483, 0x2000 }, {  484, 0x0004 }, {  485, 0x0000 },
+  /* 0x7300 */
+  {  485, 0x0040 }, {  486, 0x0010 }, {  487, 0x0000 }, {  487, 0x0400 },
+  {  488, 0x0000 }, {  488, 0x0000 }, {  488, 0x0000 }, {  488, 0x0000 },
+  {  488, 0x0000 }, {  488, 0x0630 }, {  492, 0x0061 }, {  495, 0x0002 },
+  {  496, 0x0000 }, {  496, 0x0040 }, {  497, 0x4408 }, {  500, 0x2441 },
+  /* 0x7400 */
+  {  504, 0x4080 }, {  506, 0x0020 }, {  507, 0x8810 }, {  510, 0x0084 },
+  {  512, 0x0014 }, {  514, 0x0010 }, {  515, 0x0004 }, {  516, 0x0102 },
+  {  518, 0x0140 }, {  520, 0x8100 }, {  522, 0x0401 }, {  524, 0x0004 },
+  {  525, 0x0000 }, {  525, 0x0100 }, {  526, 0x0000 }, {  526, 0x0800 },
+  /* 0x7500 */
+  {  527, 0x0008 }, {  528, 0x0000 }, {  528, 0x0442 }, {  531, 0x0000 },
+  {  531, 0x0000 }, {  531, 0x0002 }, {  532, 0x9010 }, {  535, 0x0000 },
+  {  535, 0x0000 }, {  535, 0x0000 }, {  535, 0x0004 }, {  536, 0x0000 },
+  {  536, 0x0000 }, {  536, 0x0000 }, {  536, 0x0001 }, {  537, 0x0008 },
+  /* 0x7600 */
+  {  538, 0x0110 }, {  540, 0x2000 }, {  541, 0x0000 }, {  541, 0x0000 },
+  {  541, 0x0000 }, {  541, 0x0004 }, {  542, 0x0000 }, {  542, 0x8040 },
+  {  544, 0x0000 }, {  544, 0x4000 }, {  545, 0x0000 }, {  545, 0x0000 },
+  {  545, 0x0000 }, {  545, 0x2000 }, {  546, 0x1440 }, {  549, 0x0800 },
+  /* 0x7700 */
+  {  550, 0x0400 }, {  551, 0x0800 }, {  552, 0x1000 }, {  553, 0x0000 },
+  {  553, 0x0000 }, {  553, 0x0000 }, {  553, 0x0000 }, {  553, 0x0000 },
+  {  553, 0x0840 }, {  555, 0x0000 }, {  555, 0x2800 }, {  557, 0x0000 },
+  {  557, 0x0000 }, {  557, 0x4000 }, {  558, 0x0000 }, {  558, 0x1800 },
+  /* 0x7800 */
+  {  560, 0x0040 }, {  561, 0x0000 }, {  561, 0x0005 }, {  563, 0x0000 },
+  {  563, 0x0002 }, {  564, 0x0600 }, {  566, 0x0000 }, {  566, 0x0020 },
+  {  567, 0x0000 }, {  567, 0x0010 }, {  568, 0x0000 }, {  568, 0x0040 },
+  {  569, 0x0000 }, {  569, 0x1000 }, {  570, 0x0002 }, {  571, 0x0000 },
+  /* 0x7900 */
+  {  571, 0x0008 }, {  572, 0x0000 }, {  572, 0x0000 }, {  572, 0x2008 },
+  {  574, 0x4488 }, {  578, 0x0001 }, {  579, 0x0000 }, {  579, 0x1004 },
+  {  581, 0x0000 }, {  581, 0x0100 }, {  582, 0x0011 }, {  584, 0x0100 },
+  {  585, 0x0000 }, {  585, 0x0000 }, {  585, 0x0000 }, {  585, 0x4000 },
+  /* 0x7a00 */
+  {  586, 0x0000 }, {  586, 0x0040 }, {  587, 0x0000 }, {  587, 0x0000 },
+  {  587, 0x0010 }, {  588, 0x4000 }, {  589, 0x0000 }, {  589, 0x0000 },
+  {  589, 0x4020 }, {  591, 0x0000 }, {  591, 0x0008 }, {  592, 0x4100 },
+  {  594, 0x0000 }, {  594, 0x1002 }, {  596, 0x0000 }, {  596, 0x0000 },
+  /* 0x7b00 */
+  {  596, 0x0000 }, {  596, 0x0000 }, {  596, 0x0000 }, {  596, 0x0000 },
+  {  596, 0x4400 }, {  598, 0x1000 }, {  599, 0x0000 }, {  599, 0x8000 },
+  {  600, 0x0080 }, {  601, 0x0008 }, {  602, 0x0000 }, {  602, 0x0000 },
+  {  602, 0x0000 }, {  602, 0x0000 }, {  602, 0x8000 }, {  603, 0x0005 },
+  /* 0x7c00 */
+  {  605, 0x0208 }, {  607, 0x0020 }, {  608, 0x0001 }, {  609, 0x0001 },
+  {  610, 0x0000 }, {  610, 0x2001 }, {  612, 0x0000 }, {  612, 0x0000 },
+  {  612, 0x0000 }, {  612, 0x0000 }, {  612, 0x1040 }, {  614, 0x0000 },
+  {  614, 0x0000 }, {  614, 0x0000 }, {  614, 0x0000 }, {  614, 0x0020 },
+};
+static const Summary16 isoir165ext_uni2indx_page7e[333] = {
+  /* 0x7e00 */
+  {  615, 0x0000 }, {  615, 0x0000 }, {  615, 0x0000 }, {  615, 0x0000 },
+  {  615, 0x0010 }, {  616, 0x0000 }, {  616, 0x0000 }, {  616, 0x0000 },
+  {  616, 0x0000 }, {  616, 0x0000 }, {  616, 0x4000 }, {  617, 0x1810 },
+  {  620, 0x0000 }, {  620, 0x0040 }, {  621, 0x1010 }, {  623, 0x0200 },
+  /* 0x7f00 */
+  {  624, 0x0400 }, {  625, 0x4001 }, {  627, 0x0000 }, {  627, 0x0000 },
+  {  627, 0x2000 }, {  628, 0x0000 }, {  628, 0x0000 }, {  628, 0x2000 },
+  {  629, 0x0000 }, {  629, 0x0002 }, {  630, 0x0000 }, {  630, 0x0000 },
+  {  630, 0x0001 }, {  631, 0x0600 }, {  633, 0x8000 }, {  634, 0x0000 },
+  /* 0x8000 */
+  {  634, 0x0000 }, {  634, 0x0000 }, {  634, 0x0000 }, {  634, 0x0001 },
+  {  635, 0x0000 }, {  635, 0x0000 }, {  635, 0x0000 }, {  635, 0x0000 },
+  {  635, 0x0000 }, {  635, 0x0000 }, {  635, 0x0000 }, {  635, 0x0000 },
+  {  635, 0x0000 }, {  635, 0x0010 }, {  636, 0x0000 }, {  636, 0x4000 },
+  /* 0x8100 */
+  {  637, 0x0000 }, {  637, 0x0000 }, {  637, 0x0200 }, {  638, 0x8000 },
+  {  639, 0x0000 }, {  639, 0x0104 }, {  641, 0x0000 }, {  641, 0x0000 },
+  {  641, 0x0000 }, {  641, 0x0000 }, {  641, 0x0000 }, {  641, 0x0000 },
+  {  641, 0x0000 }, {  641, 0x0002 }, {  642, 0x0000 }, {  642, 0x0000 },
+  /* 0x8200 */
+  {  642, 0x0000 }, {  642, 0x0140 }, {  644, 0x0000 }, {  644, 0x0400 },
+  {  645, 0x0000 }, {  645, 0x0000 }, {  645, 0x0000 }, {  645, 0x0100 },
+  {  646, 0x0008 }, {  647, 0x0000 }, {  647, 0x0080 }, {  648, 0x1000 },
+  {  649, 0x0000 }, {  649, 0x0000 }, {  649, 0x0000 }, {  649, 0x4000 },
+  /* 0x8300 */
+  {  650, 0x0001 }, {  651, 0x2008 }, {  653, 0x0000 }, {  653, 0x0000 },
+  {  653, 0x0030 }, {  655, 0x2000 }, {  656, 0x0000 }, {  656, 0x0000 },
+  {  656, 0x0000 }, {  656, 0x0200 }, {  657, 0x0040 }, {  658, 0x0000 },
+  {  658, 0x0000 }, {  658, 0x0002 }, {  659, 0x0000 }, {  659, 0x5000 },
+  /* 0x8400 */
+  {  661, 0x0000 }, {  661, 0x0400 }, {  662, 0x0200 }, {  663, 0x0200 },
+  {  664, 0x0000 }, {  664, 0x0008 }, {  665, 0x0001 }, {  666, 0x0000 },
+  {  666, 0x0000 }, {  666, 0xc000 }, {  668, 0x0100 }, {  669, 0x0000 },
+  {  669, 0x8044 }, {  672, 0x0000 }, {  672, 0x0400 }, {  673, 0x0080 },
+  /* 0x8500 */
+  {  674, 0x0000 }, {  674, 0x0000 }, {  674, 0x0000 }, {  674, 0x0010 },
+  {  675, 0x0000 }, {  675, 0x0000 }, {  675, 0x0000 }, {  675, 0x0001 },
+  {  676, 0x0000 }, {  676, 0x0000 }, {  676, 0x0004 }, {  677, 0x0108 },
+  {  679, 0x0000 }, {  679, 0x0000 }, {  679, 0x0001 }, {  680, 0x0000 },
+  /* 0x8600 */
+  {  680, 0x0000 }, {  680, 0x0000 }, {  680, 0x0000 }, {  680, 0x0000 },
+  {  680, 0x0000 }, {  680, 0x0004 }, {  681, 0x0000 }, {  681, 0x0000 },
+  {  681, 0x0008 }, {  682, 0x0000 }, {  682, 0x0000 }, {  682, 0x0000 },
+  {  682, 0x0000 }, {  682, 0x0000 }, {  682, 0x0000 }, {  682, 0x0000 },
+  /* 0x8700 */
+  {  682, 0x4020 }, {  684, 0x0000 }, {  684, 0x0000 }, {  684, 0x0000 },
+  {  684, 0x0000 }, {  684, 0x0100 }, {  685, 0x0000 }, {  685, 0x0000 },
+  {  685, 0x0001 }, {  686, 0x0000 }, {  686, 0x0008 }, {  687, 0x0000 },
+  {  687, 0x8000 }, {  688, 0x0000 }, {  688, 0x0004 }, {  689, 0x0000 },
+  /* 0x8800 */
+  {  689, 0x0800 }, {  690, 0x0000 }, {  690, 0x2000 }, {  691, 0x0000 },
+  {  691, 0x0000 }, {  691, 0x0004 }, {  692, 0x0000 }, {  692, 0x0000 },
+  {  692, 0x0040 }, {  693, 0x0080 }, {  694, 0x8400 }, {  696, 0x0000 },
+  {  696, 0x0101 }, {  698, 0x0000 }, {  698, 0x0000 }, {  698, 0x0000 },
+  /* 0x8900 */
+  {  698, 0x0000 }, {  698, 0x0000 }, {  698, 0x0040 }, {  699, 0x0000 },
+  {  699, 0x0000 }, {  699, 0x0020 }, {  700, 0x0000 }, {  700, 0x0040 },
+  {  701, 0x0001 }, {  702, 0x0000 }, {  702, 0x0000 }, {  702, 0x0000 },
+  {  702, 0x2008 }, {  704, 0x0010 }, {  705, 0x0000 }, {  705, 0x0002 },
+  /* 0x8a00 */
+  {  706, 0x0000 }, {  706, 0x0400 }, {  707, 0x0000 }, {  707, 0x0000 },
+  {  707, 0x0000 }, {  707, 0x8000 }, {  708, 0x0000 }, {  708, 0x0000 },
+  {  708, 0x0000 }, {  708, 0x0000 }, {  708, 0x0000 }, {  708, 0x0000 },
+  {  708, 0x0000 }, {  708, 0x0000 }, {  708, 0x0000 }, {  708, 0x0000 },
+  /* 0x8b00 */
+  {  708, 0x0000 }, {  708, 0x0000 }, {  708, 0x0000 }, {  708, 0x0000 },
+  {  708, 0x0000 }, {  708, 0x0000 }, {  708, 0x0000 }, {  708, 0x0000 },
+  {  708, 0x0000 }, {  708, 0x0000 }, {  708, 0x1000 }, {  709, 0x0802 },
+  {  711, 0x0080 }, {  712, 0x0000 }, {  712, 0x0400 }, {  713, 0x0000 },
+  /* 0x8c00 */
+  {  713, 0x0200 }, {  714, 0x4000 }, {  715, 0x0000 }, {  715, 0x0000 },
+  {  715, 0x0000 }, {  715, 0x0000 }, {  715, 0x6100 }, {  718, 0x0000 },
+  {  718, 0x0040 }, {  719, 0x0000 }, {  719, 0x0000 }, {  719, 0x0000 },
+  {  719, 0x0000 }, {  719, 0x0000 }, {  719, 0x0000 }, {  719, 0x0000 },
+  /* 0x8d00 */
+  {  719, 0x0000 }, {  719, 0x0000 }, {  719, 0x0001 }, {  720, 0x0000 },
+  {  720, 0x0000 }, {  720, 0x8086 }, {  724, 0x0400 }, {  725, 0x0000 },
+  {  725, 0x0000 }, {  725, 0x0000 }, {  725, 0x0000 }, {  725, 0x0000 },
+  {  725, 0x0000 }, {  725, 0x0000 }, {  725, 0x0000 }, {  725, 0x0000 },
+  /* 0x8e00 */
+  {  725, 0x0000 }, {  725, 0x0040 }, {  726, 0x00c2 }, {  729, 0x0040 },
+  {  730, 0x0020 }, {  731, 0x1009 }, {  734, 0x0004 }, {  735, 0x0000 },
+  {  735, 0x0000 }, {  735, 0x0000 }, {  735, 0x2000 }, {  736, 0x0000 },
+  {  736, 0x0000 }, {  736, 0x0000 }, {  736, 0x0000 }, {  736, 0x0000 },
+  /* 0x8f00 */
+  {  736, 0x0000 }, {  736, 0x0000 }, {  736, 0x0000 }, {  736, 0x0000 },
+  {  736, 0x0000 }, {  736, 0x0000 }, {  736, 0x0000 }, {  736, 0x0000 },
+  {  736, 0x0001 }, {  737, 0x0004 }, {  738, 0x0000 }, {  738, 0x0020 },
+  {  739, 0x0000 }, {  739, 0x0000 }, {  739, 0x0000 }, {  739, 0x0400 },
+  /* 0x9000 */
+  {  740, 0x0000 }, {  740, 0x0000 }, {  740, 0x0000 }, {  740, 0x0000 },
+  {  740, 0x0000 }, {  740, 0x0000 }, {  740, 0x0000 }, {  740, 0x0000 },
+  {  740, 0x0000 }, {  740, 0x0100 }, {  741, 0x0101 }, {  743, 0x2000 },
+  {  744, 0x0108 }, {  746, 0x0400 }, {  747, 0x0010 }, {  748, 0x8000 },
+  /* 0x9100 */
+  {  749, 0x1000 }, {  750, 0x1500 }, {  753, 0x0001 }, {  754, 0x0000 },
+  {  754, 0x0004 }, {  755, 0x0000 }, {  755, 0x0000 }, {  755, 0x0000 },
+  {  755, 0x0000 }, {  755, 0x0000 }, {  755, 0x0000 }, {  755, 0x0000 },
+  {  755, 0x0040 }, {  756, 0x0000 }, {  756, 0x0000 }, {  756, 0x0000 },
+  /* 0x9200 */
+  {  756, 0x0000 }, {  756, 0x0000 }, {  756, 0x0000 }, {  756, 0x0000 },
+  {  756, 0x0000 }, {  756, 0x0000 }, {  756, 0x0000 }, {  756, 0x0000 },
+  {  756, 0x0000 }, {  756, 0x0000 }, {  756, 0x0000 }, {  756, 0x0000 },
+  {  756, 0x0040 },
+};
+static const Summary16 isoir165ext_uni2indx_page94[143] = {
+  /* 0x9400 */
+  {  757, 0x0000 }, {  757, 0x0000 }, {  757, 0x0000 }, {  757, 0x0000 },
+  {  757, 0x0000 }, {  757, 0x0000 }, {  757, 0x0000 }, {  757, 0x0000 },
+  {  757, 0x0000 }, {  757, 0x0142 }, {  760, 0x0000 }, {  760, 0x0000 },
+  {  760, 0x8080 }, {  762, 0x0418 }, {  765, 0x0040 }, {  766, 0x0800 },
+  /* 0x9500 */
+  {  767, 0x0000 }, {  767, 0x1000 }, {  768, 0x0081 }, {  770, 0x2008 },
+  {  772, 0x0008 }, {  773, 0x0400 }, {  774, 0x4001 }, {  776, 0x0030 },
+  {  778, 0x0000 }, {  778, 0x0000 }, {  778, 0x0000 }, {  778, 0x0000 },
+  {  778, 0x0000 }, {  778, 0x0000 }, {  778, 0x1000 }, {  779, 0x8000 },
+  /* 0x9600 */
+  {  780, 0x0080 }, {  781, 0x0908 }, {  784, 0x0000 }, {  784, 0x0000 },
+  {  784, 0x0000 }, {  784, 0x4000 }, {  785, 0x0000 }, {  785, 0x0000 },
+  {  785, 0x0000 }, {  785, 0x0000 }, {  785, 0x0000 }, {  785, 0x0000 },
+  {  785, 0x0000 }, {  785, 0x0100 }, {  786, 0x0000 }, {  786, 0x0000 },
+  /* 0x9700 */
+  {  786, 0x0004 }, {  787, 0x0000 }, {  787, 0x0000 }, {  787, 0x0000 },
+  {  787, 0x0000 }, {  787, 0x0010 }, {  788, 0x0000 }, {  788, 0x0501 },
+  {  791, 0x0000 }, {  791, 0x0000 }, {  791, 0x4102 }, {  794, 0x0000 },
+  {  794, 0x0000 }, {  794, 0x0000 }, {  794, 0x0100 }, {  795, 0x0000 },
+  /* 0x9800 */
+  {  795, 0x0000 }, {  795, 0x0000 }, {  795, 0x0000 }, {  795, 0x0000 },
+  {  795, 0x0000 }, {  795, 0x0000 }, {  795, 0x0000 }, {  795, 0x0000 },
+  {  795, 0x4800 }, {  797, 0x0224 }, {  800, 0x0008 }, {  801, 0x0000 },
+  {  801, 0x8000 }, {  802, 0x00d1 }, {  806, 0x0000 }, {  806, 0x0000 },
+  /* 0x9900 */
+  {  806, 0x0000 }, {  806, 0x0000 }, {  806, 0x0000 }, {  806, 0x0000 },
+  {  806, 0x0000 }, {  806, 0x0000 }, {  806, 0x0050 }, {  808, 0x4b00 },
+  {  812, 0x500c }, {  816, 0x0000 }, {  816, 0x0000 }, {  816, 0x0000 },
+  {  816, 0x0000 }, {  816, 0x0000 }, {  816, 0x0000 }, {  816, 0x0000 },
+  /* 0x9a00 */
+  {  816, 0x0000 }, {  816, 0x0000 }, {  816, 0x0000 }, {  816, 0x0000 },
+  {  816, 0x0000 }, {  816, 0x0000 }, {  816, 0x0000 }, {  816, 0x0004 },
+  {  817, 0x6208 }, {  821, 0x0230 }, {  824, 0x0040 }, {  825, 0x0000 },
+  {  825, 0x0000 }, {  825, 0x0000 }, {  825, 0x0000 }, {  825, 0x0000 },
+  /* 0x9b00 */
+  {  825, 0x0000 }, {  825, 0x0101 }, {  827, 0x0020 }, {  828, 0x0040 },
+  {  829, 0x0040 }, {  830, 0x0000 }, {  830, 0x0000 }, {  830, 0x0000 },
+  {  830, 0x0000 }, {  830, 0x0000 }, {  830, 0x0000 }, {  830, 0x0000 },
+  {  830, 0x0000 }, {  830, 0x0000 }, {  830, 0x0000 }, {  830, 0x0000 },
+  /* 0x9c00 */
+  {  830, 0x0000 }, {  830, 0x0000 }, {  830, 0x0000 }, {  830, 0x0000 },
+  {  830, 0x0000 }, {  830, 0x0000 }, {  830, 0x0000 }, {  830, 0x0000 },
+  {  830, 0x0411 }, {  833, 0x23c8 }, {  839, 0x0000 }, {  839, 0x8000 },
+  {  840, 0x0003 }, {  842, 0x0804 }, {  844, 0x0009 },
+};
+static const Summary16 isoir165ext_uni2indx_page9e[25] = {
+  /* 0x9e00 */
+  {  846, 0x0000 }, {  846, 0x0000 }, {  846, 0x4090 }, {  849, 0x0011 },
+  {  851, 0x2001 }, {  853, 0x225d }, {  860, 0x8027 }, {  865, 0x0010 },
+  {  866, 0x0001 }, {  867, 0x0002 }, {  868, 0x0000 }, {  868, 0x0000 },
+  {  868, 0x0000 }, {  868, 0x0000 }, {  868, 0x0002 }, {  869, 0x0000 },
+  /* 0x9f00 */
+  {  869, 0x1000 }, {  870, 0x0004 }, {  871, 0x0800 }, {  872, 0x0000 },
+  {  872, 0x0002 }, {  873, 0x0000 }, {  873, 0x0000 }, {  873, 0x0000 },
+  {  873, 0x0006 },
+};
+static const Summary16 isoir165ext_uni2indx_pageff[5] = {
+  /* 0xff00 */
+  {  875, 0x0000 }, {  875, 0x0000 }, {  875, 0x0000 }, {  875, 0x0000 },
+  {  875, 0x0080 },
+};
+
+static int
+isoir165ext_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 2) {
+    const Summary16 *summary = NULL;
+    if (wc >= 0x0000 && wc < 0x0200)
+      summary = &isoir165ext_uni2indx_page00[(wc>>4)];
+    else if (wc >= 0x0300 && wc < 0x03c0)
+      summary = &isoir165ext_uni2indx_page03[(wc>>4)-0x030];
+    else if (wc >= 0x1e00 && wc < 0x1fc0)
+      summary = &isoir165ext_uni2indx_page1e[(wc>>4)-0x1e0];
+    else if (wc >= 0x3000 && wc < 0x3040)
+      summary = &isoir165ext_uni2indx_page30[(wc>>4)-0x300];
+    else if (wc >= 0x3200 && wc < 0x3400)
+      summary = &isoir165ext_uni2indx_page32[(wc>>4)-0x320];
+    else if (wc >= 0x4e00 && wc < 0x7d00)
+      summary = &isoir165ext_uni2indx_page4e[(wc>>4)-0x4e0];
+    else if (wc >= 0x7e00 && wc < 0x92d0)
+      summary = &isoir165ext_uni2indx_page7e[(wc>>4)-0x7e0];
+    else if (wc >= 0x9400 && wc < 0x9cf0)
+      summary = &isoir165ext_uni2indx_page94[(wc>>4)-0x940];
+    else if (wc >= 0x9e00 && wc < 0x9f90)
+      summary = &isoir165ext_uni2indx_page9e[(wc>>4)-0x9e0];
+    else if (wc >= 0xff00 && wc < 0xff50)
+      summary = &isoir165ext_uni2indx_pageff[(wc>>4)-0xff0];
+    if (summary) {
+      unsigned short used = summary->used;
+      unsigned int i = wc & 0x0f;
+      if (used & ((unsigned short) 1 << i)) {
+        unsigned short c;
+        /* Keep in `used' only the bits 0..i-1. */
+        used &= ((unsigned short) 1 << i) - 1;
+        /* Add `summary->indx' and the number of bits set in `used'. */
+        used = (used & 0x5555) + ((used & 0xaaaa) >> 1);
+        used = (used & 0x3333) + ((used & 0xcccc) >> 2);
+        used = (used & 0x0f0f) + ((used & 0xf0f0) >> 4);
+        used = (used & 0x00ff) + (used >> 8);
+        c = isoir165ext_2charset[summary->indx + used];
+        r[0] = (c >> 8); r[1] = (c & 0xff);
+        return 2;
+      }
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/java.h b/graf2d/win32gdk/gdk/src/iconv/java.h
new file mode 100644
index 00000000000..4d4485f54f1
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/java.h
@@ -0,0 +1,137 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * JAVA
+ * This is ISO 8859-1 with \uXXXX escape sequences, denoting Unicode BMP
+ * characters. Consecutive pairs of \uXXXX escape sequences in the surrogate
+ * range, as in UTF-16, denote Unicode characters outside the BMP.
+ */
+
+static int
+java_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c;
+  ucs4_t wc, wc2;
+  int i;
+
+  c = s[0];
+  if (c != '\\') {
+    *pwc = c;
+    return 1;
+  }
+  if (n < 2)
+    return RET_TOOFEW(0);
+  if (s[1] != 'u')
+    goto simply_backslash;
+  wc = 0;
+  for (i = 2; i < 6; i++) {
+    if (n <= i)
+      return RET_TOOFEW(0);
+    c = s[i];
+    if (c >= '0' && c <= '9')
+      c -= '0';
+    else if (c >= 'A' && c <= 'Z')
+      c -= 'A'-10;
+    else if (c >= 'a' && c <= 'z')
+      c -= 'a'-10;
+    else
+      goto simply_backslash;
+    wc |= (ucs4_t) c << (4 * (5-i));
+  }
+  if (!(wc >= 0xd800 && wc < 0xe000)) {
+    *pwc = wc;
+    return 6;
+  }
+  if (wc >= 0xdc00)
+    goto simply_backslash;
+  if (n < 7)
+    return RET_TOOFEW(0);
+  if (s[6] != '\\')
+    goto simply_backslash;
+  if (n < 8)
+    return RET_TOOFEW(0);
+  if (s[7] != 'u')
+    goto simply_backslash;
+  wc2 = 0;
+  for (i = 8; i < 12; i++) {
+    if (n <= i)
+      return RET_TOOFEW(0);
+    c = s[i];
+    if (c >= '0' && c <= '9')
+      c -= '0';
+    else if (c >= 'A' && c <= 'Z')
+      c -= 'A'-10;
+    else if (c >= 'a' && c <= 'z')
+      c -= 'a'-10;
+    else
+      goto simply_backslash;
+    wc2 |= (ucs4_t) c << (4 * (11-i));
+  }
+  if (!(wc2 >= 0xdc00 && wc2 < 0xe000))
+    goto simply_backslash;
+  *pwc = 0x10000 + ((wc - 0xd800) << 10) + (wc2 - 0xdc00);
+  return 12;
+simply_backslash:
+  *pwc = '\\';
+  return 1;
+}
+
+static int
+java_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (wc < 0x80) {
+    *r = wc;
+    return 1;
+  } else if (wc < 0x10000) {
+    if (n >= 6) {
+      unsigned int i;
+      r[0] = '\\';
+      r[1] = 'u';
+      i = (wc >> 12) & 0x0f; r[2] = (i < 10 ? '0'+i : 'a'-10+i);
+      i = (wc >> 8) & 0x0f;  r[3] = (i < 10 ? '0'+i : 'a'-10+i);
+      i = (wc >> 4) & 0x0f;  r[4] = (i < 10 ? '0'+i : 'a'-10+i);
+      i = wc & 0x0f;         r[5] = (i < 10 ? '0'+i : 'a'-10+i);
+      return 6;
+    } else
+      return RET_TOOSMALL;
+  } else if (wc < 0x110000) {
+    if (n >= 12) {
+      ucs4_t wc1 = 0xd800 + ((wc - 0x10000) >> 10);
+      ucs4_t wc2 = 0xdc00 + ((wc - 0x10000) & 0x3ff);
+      unsigned int i;
+      r[0] = '\\';
+      r[1] = 'u';
+      i = (wc1 >> 12) & 0x0f; r[2] = (i < 10 ? '0'+i : 'a'-10+i);
+      i = (wc1 >> 8) & 0x0f;  r[3] = (i < 10 ? '0'+i : 'a'-10+i);
+      i = (wc1 >> 4) & 0x0f;  r[4] = (i < 10 ? '0'+i : 'a'-10+i);
+      i = wc1 & 0x0f;         r[5] = (i < 10 ? '0'+i : 'a'-10+i);
+      r[6] = '\\';
+      r[7] = 'u';
+      i = (wc2 >> 12) & 0x0f; r[8] = (i < 10 ? '0'+i : 'a'-10+i);
+      i = (wc2 >> 8) & 0x0f;  r[9] = (i < 10 ? '0'+i : 'a'-10+i);
+      i = (wc2 >> 4) & 0x0f; r[10] = (i < 10 ? '0'+i : 'a'-10+i);
+      i = wc2 & 0x0f;        r[11] = (i < 10 ? '0'+i : 'a'-10+i);
+      return 12;
+    } else
+      return RET_TOOSMALL;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/jisx0201.h b/graf2d/win32gdk/gdk/src/iconv/jisx0201.h
new file mode 100644
index 00000000000..d58c1d59569
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/jisx0201.h
@@ -0,0 +1,66 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * JISX0201.1976-0
+ */
+
+static int
+jisx0201_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    if (c == 0x5c)
+      *pwc = (ucs4_t) 0x00a5;
+    else if (c == 0x7e)
+      *pwc = (ucs4_t) 0x203e;
+    else
+      *pwc = (ucs4_t) c;
+    return 1;
+  } else {
+    if (c >= 0xa1 && c < 0xe0) {
+      *pwc = (ucs4_t) c + 0xfec0;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static int
+jisx0201_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (wc < 0x0080 && !(wc == 0x005c || wc == 0x007e)) {
+    *r = wc;
+    return 1;
+  }
+  if (wc == 0x00a5) {
+    *r = 0x5c;
+    return 1;
+  }
+  if (wc == 0x203e) {
+    *r = 0x7e;
+    return 1;
+  }
+  if (wc >= 0xff61 && wc < 0xffa0) {
+    *r = wc - 0xfec0;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/jisx0208.h b/graf2d/win32gdk/gdk/src/iconv/jisx0208.h
new file mode 100644
index 00000000000..755b8ba6a5c
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/jisx0208.h
@@ -0,0 +1,2415 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * JISX0208.1990-0
+ */
+
+static const unsigned short jisx0208_2uni_page21[690] = {
+  /* 0x21 */
+  0x3000, 0x3001, 0x3002, 0xff0c, 0xff0e, 0x30fb, 0xff1a, 0xff1b,
+  0xff1f, 0xff01, 0x309b, 0x309c, 0x00b4, 0xff40, 0x00a8, 0xff3e,
+  0xffe3, 0xff3f, 0x30fd, 0x30fe, 0x309d, 0x309e, 0x3003, 0x4edd,
+  0x3005, 0x3006, 0x3007, 0x30fc, 0x2015, 0x2010, 0xff0f, 0xff3c,
+  0x301c, 0x2016, 0xff5c, 0x2026, 0x2025, 0x2018, 0x2019, 0x201c,
+  0x201d, 0xff08, 0xff09, 0x3014, 0x3015, 0xff3b, 0xff3d, 0xff5b,
+  0xff5d, 0x3008, 0x3009, 0x300a, 0x300b, 0x300c, 0x300d, 0x300e,
+  0x300f, 0x3010, 0x3011, 0xff0b, 0x2212, 0x00b1, 0x00d7, 0x00f7,
+  0xff1d, 0x2260, 0xff1c, 0xff1e, 0x2266, 0x2267, 0x221e, 0x2234,
+  0x2642, 0x2640, 0x00b0, 0x2032, 0x2033, 0x2103, 0xffe5, 0xff04,
+  0x00a2, 0x00a3, 0xff05, 0xff03, 0xff06, 0xff0a, 0xff20, 0x00a7,
+  0x2606, 0x2605, 0x25cb, 0x25cf, 0x25ce, 0x25c7,
+  /* 0x22 */
+  0x25c6, 0x25a1, 0x25a0, 0x25b3, 0x25b2, 0x25bd, 0x25bc, 0x203b,
+  0x3012, 0x2192, 0x2190, 0x2191, 0x2193, 0x3013, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x2208, 0x220b, 0x2286, 0x2287, 0x2282, 0x2283, 0x222a,
+  0x2229, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x2227, 0x2228, 0x00ac, 0x21d2, 0x21d4, 0x2200, 0x2203,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0x2220, 0x22a5, 0x2312, 0x2202, 0x2207,
+  0x2261, 0x2252, 0x226a, 0x226b, 0x221a, 0x223d, 0x221d, 0x2235,
+  0x222b, 0x222c, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x212b, 0x2030, 0x266f, 0x266d, 0x266a, 0x2020, 0x2021,
+  0x00b6, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x25ef,
+  /* 0x23 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xff10,
+  0xff11, 0xff12, 0xff13, 0xff14, 0xff15, 0xff16, 0xff17, 0xff18,
+  0xff19, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xff21, 0xff22, 0xff23, 0xff24, 0xff25, 0xff26, 0xff27, 0xff28,
+  0xff29, 0xff2a, 0xff2b, 0xff2c, 0xff2d, 0xff2e, 0xff2f, 0xff30,
+  0xff31, 0xff32, 0xff33, 0xff34, 0xff35, 0xff36, 0xff37, 0xff38,
+  0xff39, 0xff3a, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xff41, 0xff42, 0xff43, 0xff44, 0xff45, 0xff46, 0xff47, 0xff48,
+  0xff49, 0xff4a, 0xff4b, 0xff4c, 0xff4d, 0xff4e, 0xff4f, 0xff50,
+  0xff51, 0xff52, 0xff53, 0xff54, 0xff55, 0xff56, 0xff57, 0xff58,
+  0xff59, 0xff5a, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x24 */
+  0x3041, 0x3042, 0x3043, 0x3044, 0x3045, 0x3046, 0x3047, 0x3048,
+  0x3049, 0x304a, 0x304b, 0x304c, 0x304d, 0x304e, 0x304f, 0x3050,
+  0x3051, 0x3052, 0x3053, 0x3054, 0x3055, 0x3056, 0x3057, 0x3058,
+  0x3059, 0x305a, 0x305b, 0x305c, 0x305d, 0x305e, 0x305f, 0x3060,
+  0x3061, 0x3062, 0x3063, 0x3064, 0x3065, 0x3066, 0x3067, 0x3068,
+  0x3069, 0x306a, 0x306b, 0x306c, 0x306d, 0x306e, 0x306f, 0x3070,
+  0x3071, 0x3072, 0x3073, 0x3074, 0x3075, 0x3076, 0x3077, 0x3078,
+  0x3079, 0x307a, 0x307b, 0x307c, 0x307d, 0x307e, 0x307f, 0x3080,
+  0x3081, 0x3082, 0x3083, 0x3084, 0x3085, 0x3086, 0x3087, 0x3088,
+  0x3089, 0x308a, 0x308b, 0x308c, 0x308d, 0x308e, 0x308f, 0x3090,
+  0x3091, 0x3092, 0x3093, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x25 */
+  0x30a1, 0x30a2, 0x30a3, 0x30a4, 0x30a5, 0x30a6, 0x30a7, 0x30a8,
+  0x30a9, 0x30aa, 0x30ab, 0x30ac, 0x30ad, 0x30ae, 0x30af, 0x30b0,
+  0x30b1, 0x30b2, 0x30b3, 0x30b4, 0x30b5, 0x30b6, 0x30b7, 0x30b8,
+  0x30b9, 0x30ba, 0x30bb, 0x30bc, 0x30bd, 0x30be, 0x30bf, 0x30c0,
+  0x30c1, 0x30c2, 0x30c3, 0x30c4, 0x30c5, 0x30c6, 0x30c7, 0x30c8,
+  0x30c9, 0x30ca, 0x30cb, 0x30cc, 0x30cd, 0x30ce, 0x30cf, 0x30d0,
+  0x30d1, 0x30d2, 0x30d3, 0x30d4, 0x30d5, 0x30d6, 0x30d7, 0x30d8,
+  0x30d9, 0x30da, 0x30db, 0x30dc, 0x30dd, 0x30de, 0x30df, 0x30e0,
+  0x30e1, 0x30e2, 0x30e3, 0x30e4, 0x30e5, 0x30e6, 0x30e7, 0x30e8,
+  0x30e9, 0x30ea, 0x30eb, 0x30ec, 0x30ed, 0x30ee, 0x30ef, 0x30f0,
+  0x30f1, 0x30f2, 0x30f3, 0x30f4, 0x30f5, 0x30f6, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x26 */
+  0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, 0x0398,
+  0x0399, 0x039a, 0x039b, 0x039c, 0x039d, 0x039e, 0x039f, 0x03a0,
+  0x03a1, 0x03a3, 0x03a4, 0x03a5, 0x03a6, 0x03a7, 0x03a8, 0x03a9,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7, 0x03b8,
+  0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf, 0x03c0,
+  0x03c1, 0x03c3, 0x03c4, 0x03c5, 0x03c6, 0x03c7, 0x03c8, 0x03c9,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x27 */
+  0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0401, 0x0416,
+  0x0417, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+  0x041f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426,
+  0x0427, 0x0428, 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e,
+  0x042f, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0451, 0x0436,
+  0x0437, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+  0x043f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446,
+  0x0447, 0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e,
+  0x044f, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x28 */
+  0x2500, 0x2502, 0x250c, 0x2510, 0x2518, 0x2514, 0x251c, 0x252c,
+  0x2524, 0x2534, 0x253c, 0x2501, 0x2503, 0x250f, 0x2513, 0x251b,
+  0x2517, 0x2523, 0x2533, 0x252b, 0x253b, 0x254b, 0x2520, 0x252f,
+  0x2528, 0x2537, 0x253f, 0x251d, 0x2530, 0x2525, 0x2538, 0x2542,
+};
+static const unsigned short jisx0208_2uni_page30[6398] = {
+  /* 0x30 */
+  0x4e9c, 0x5516, 0x5a03, 0x963f, 0x54c0, 0x611b, 0x6328, 0x59f6,
+  0x9022, 0x8475, 0x831c, 0x7a50, 0x60aa, 0x63e1, 0x6e25, 0x65ed,
+  0x8466, 0x82a6, 0x9bf5, 0x6893, 0x5727, 0x65a1, 0x6271, 0x5b9b,
+  0x59d0, 0x867b, 0x98f4, 0x7d62, 0x7dbe, 0x9b8e, 0x6216, 0x7c9f,
+  0x88b7, 0x5b89, 0x5eb5, 0x6309, 0x6697, 0x6848, 0x95c7, 0x978d,
+  0x674f, 0x4ee5, 0x4f0a, 0x4f4d, 0x4f9d, 0x5049, 0x56f2, 0x5937,
+  0x59d4, 0x5a01, 0x5c09, 0x60df, 0x610f, 0x6170, 0x6613, 0x6905,
+  0x70ba, 0x754f, 0x7570, 0x79fb, 0x7dad, 0x7def, 0x80c3, 0x840e,
+  0x8863, 0x8b02, 0x9055, 0x907a, 0x533b, 0x4e95, 0x4ea5, 0x57df,
+  0x80b2, 0x90c1, 0x78ef, 0x4e00, 0x58f1, 0x6ea2, 0x9038, 0x7a32,
+  0x8328, 0x828b, 0x9c2f, 0x5141, 0x5370, 0x54bd, 0x54e1, 0x56e0,
+  0x59fb, 0x5f15, 0x98f2, 0x6deb, 0x80e4, 0x852d,
+  /* 0x31 */
+  0x9662, 0x9670, 0x96a0, 0x97fb, 0x540b, 0x53f3, 0x5b87, 0x70cf,
+  0x7fbd, 0x8fc2, 0x96e8, 0x536f, 0x9d5c, 0x7aba, 0x4e11, 0x7893,
+  0x81fc, 0x6e26, 0x5618, 0x5504, 0x6b1d, 0x851a, 0x9c3b, 0x59e5,
+  0x53a9, 0x6d66, 0x74dc, 0x958f, 0x5642, 0x4e91, 0x904b, 0x96f2,
+  0x834f, 0x990c, 0x53e1, 0x55b6, 0x5b30, 0x5f71, 0x6620, 0x66f3,
+  0x6804, 0x6c38, 0x6cf3, 0x6d29, 0x745b, 0x76c8, 0x7a4e, 0x9834,
+  0x82f1, 0x885b, 0x8a60, 0x92ed, 0x6db2, 0x75ab, 0x76ca, 0x99c5,
+  0x60a6, 0x8b01, 0x8d8a, 0x95b2, 0x698e, 0x53ad, 0x5186, 0x5712,
+  0x5830, 0x5944, 0x5bb4, 0x5ef6, 0x6028, 0x63a9, 0x63f4, 0x6cbf,
+  0x6f14, 0x708e, 0x7114, 0x7159, 0x71d5, 0x733f, 0x7e01, 0x8276,
+  0x82d1, 0x8597, 0x9060, 0x925b, 0x9d1b, 0x5869, 0x65bc, 0x6c5a,
+  0x7525, 0x51f9, 0x592e, 0x5965, 0x5f80, 0x5fdc,
+  /* 0x32 */
+  0x62bc, 0x65fa, 0x6a2a, 0x6b27, 0x6bb4, 0x738b, 0x7fc1, 0x8956,
+  0x9d2c, 0x9d0e, 0x9ec4, 0x5ca1, 0x6c96, 0x837b, 0x5104, 0x5c4b,
+  0x61b6, 0x81c6, 0x6876, 0x7261, 0x4e59, 0x4ffa, 0x5378, 0x6069,
+  0x6e29, 0x7a4f, 0x97f3, 0x4e0b, 0x5316, 0x4eee, 0x4f55, 0x4f3d,
+  0x4fa1, 0x4f73, 0x52a0, 0x53ef, 0x5609, 0x590f, 0x5ac1, 0x5bb6,
+  0x5be1, 0x79d1, 0x6687, 0x679c, 0x67b6, 0x6b4c, 0x6cb3, 0x706b,
+  0x73c2, 0x798d, 0x79be, 0x7a3c, 0x7b87, 0x82b1, 0x82db, 0x8304,
+  0x8377, 0x83ef, 0x83d3, 0x8766, 0x8ab2, 0x5629, 0x8ca8, 0x8fe6,
+  0x904e, 0x971e, 0x868a, 0x4fc4, 0x5ce8, 0x6211, 0x7259, 0x753b,
+  0x81e5, 0x82bd, 0x86fe, 0x8cc0, 0x96c5, 0x9913, 0x99d5, 0x4ecb,
+  0x4f1a, 0x89e3, 0x56de, 0x584a, 0x58ca, 0x5efb, 0x5feb, 0x602a,
+  0x6094, 0x6062, 0x61d0, 0x6212, 0x62d0, 0x6539,
+  /* 0x33 */
+  0x9b41, 0x6666, 0x68b0, 0x6d77, 0x7070, 0x754c, 0x7686, 0x7d75,
+  0x82a5, 0x87f9, 0x958b, 0x968e, 0x8c9d, 0x51f1, 0x52be, 0x5916,
+  0x54b3, 0x5bb3, 0x5d16, 0x6168, 0x6982, 0x6daf, 0x788d, 0x84cb,
+  0x8857, 0x8a72, 0x93a7, 0x9ab8, 0x6d6c, 0x99a8, 0x86d9, 0x57a3,
+  0x67ff, 0x86ce, 0x920e, 0x5283, 0x5687, 0x5404, 0x5ed3, 0x62e1,
+  0x64b9, 0x683c, 0x6838, 0x6bbb, 0x7372, 0x78ba, 0x7a6b, 0x899a,
+  0x89d2, 0x8d6b, 0x8f03, 0x90ed, 0x95a3, 0x9694, 0x9769, 0x5b66,
+  0x5cb3, 0x697d, 0x984d, 0x984e, 0x639b, 0x7b20, 0x6a2b, 0x6a7f,
+  0x68b6, 0x9c0d, 0x6f5f, 0x5272, 0x559d, 0x6070, 0x62ec, 0x6d3b,
+  0x6e07, 0x6ed1, 0x845b, 0x8910, 0x8f44, 0x4e14, 0x9c39, 0x53f6,
+  0x691b, 0x6a3a, 0x9784, 0x682a, 0x515c, 0x7ac3, 0x84b2, 0x91dc,
+  0x938c, 0x565b, 0x9d28, 0x6822, 0x8305, 0x8431,
+  /* 0x34 */
+  0x7ca5, 0x5208, 0x82c5, 0x74e6, 0x4e7e, 0x4f83, 0x51a0, 0x5bd2,
+  0x520a, 0x52d8, 0x52e7, 0x5dfb, 0x559a, 0x582a, 0x59e6, 0x5b8c,
+  0x5b98, 0x5bdb, 0x5e72, 0x5e79, 0x60a3, 0x611f, 0x6163, 0x61be,
+  0x63db, 0x6562, 0x67d1, 0x6853, 0x68fa, 0x6b3e, 0x6b53, 0x6c57,
+  0x6f22, 0x6f97, 0x6f45, 0x74b0, 0x7518, 0x76e3, 0x770b, 0x7aff,
+  0x7ba1, 0x7c21, 0x7de9, 0x7f36, 0x7ff0, 0x809d, 0x8266, 0x839e,
+  0x89b3, 0x8acc, 0x8cab, 0x9084, 0x9451, 0x9593, 0x9591, 0x95a2,
+  0x9665, 0x97d3, 0x9928, 0x8218, 0x4e38, 0x542b, 0x5cb8, 0x5dcc,
+  0x73a9, 0x764c, 0x773c, 0x5ca9, 0x7feb, 0x8d0b, 0x96c1, 0x9811,
+  0x9854, 0x9858, 0x4f01, 0x4f0e, 0x5371, 0x559c, 0x5668, 0x57fa,
+  0x5947, 0x5b09, 0x5bc4, 0x5c90, 0x5e0c, 0x5e7e, 0x5fcc, 0x63ee,
+  0x673a, 0x65d7, 0x65e2, 0x671f, 0x68cb, 0x68c4,
+  /* 0x35 */
+  0x6a5f, 0x5e30, 0x6bc5, 0x6c17, 0x6c7d, 0x757f, 0x7948, 0x5b63,
+  0x7a00, 0x7d00, 0x5fbd, 0x898f, 0x8a18, 0x8cb4, 0x8d77, 0x8ecc,
+  0x8f1d, 0x98e2, 0x9a0e, 0x9b3c, 0x4e80, 0x507d, 0x5100, 0x5993,
+  0x5b9c, 0x622f, 0x6280, 0x64ec, 0x6b3a, 0x72a0, 0x7591, 0x7947,
+  0x7fa9, 0x87fb, 0x8abc, 0x8b70, 0x63ac, 0x83ca, 0x97a0, 0x5409,
+  0x5403, 0x55ab, 0x6854, 0x6a58, 0x8a70, 0x7827, 0x6775, 0x9ecd,
+  0x5374, 0x5ba2, 0x811a, 0x8650, 0x9006, 0x4e18, 0x4e45, 0x4ec7,
+  0x4f11, 0x53ca, 0x5438, 0x5bae, 0x5f13, 0x6025, 0x6551, 0x673d,
+  0x6c42, 0x6c72, 0x6ce3, 0x7078, 0x7403, 0x7a76, 0x7aae, 0x7b08,
+  0x7d1a, 0x7cfe, 0x7d66, 0x65e7, 0x725b, 0x53bb, 0x5c45, 0x5de8,
+  0x62d2, 0x62e0, 0x6319, 0x6e20, 0x865a, 0x8a31, 0x8ddd, 0x92f8,
+  0x6f01, 0x79a6, 0x9b5a, 0x4ea8, 0x4eab, 0x4eac,
+  /* 0x36 */
+  0x4f9b, 0x4fa0, 0x50d1, 0x5147, 0x7af6, 0x5171, 0x51f6, 0x5354,
+  0x5321, 0x537f, 0x53eb, 0x55ac, 0x5883, 0x5ce1, 0x5f37, 0x5f4a,
+  0x602f, 0x6050, 0x606d, 0x631f, 0x6559, 0x6a4b, 0x6cc1, 0x72c2,
+  0x72ed, 0x77ef, 0x80f8, 0x8105, 0x8208, 0x854e, 0x90f7, 0x93e1,
+  0x97ff, 0x9957, 0x9a5a, 0x4ef0, 0x51dd, 0x5c2d, 0x6681, 0x696d,
+  0x5c40, 0x66f2, 0x6975, 0x7389, 0x6850, 0x7c81, 0x50c5, 0x52e4,
+  0x5747, 0x5dfe, 0x9326, 0x65a4, 0x6b23, 0x6b3d, 0x7434, 0x7981,
+  0x79bd, 0x7b4b, 0x7dca, 0x82b9, 0x83cc, 0x887f, 0x895f, 0x8b39,
+  0x8fd1, 0x91d1, 0x541f, 0x9280, 0x4e5d, 0x5036, 0x53e5, 0x533a,
+  0x72d7, 0x7396, 0x77e9, 0x82e6, 0x8eaf, 0x99c6, 0x99c8, 0x99d2,
+  0x5177, 0x611a, 0x865e, 0x55b0, 0x7a7a, 0x5076, 0x5bd3, 0x9047,
+  0x9685, 0x4e32, 0x6adb, 0x91e7, 0x5c51, 0x5c48,
+  /* 0x37 */
+  0x6398, 0x7a9f, 0x6c93, 0x9774, 0x8f61, 0x7aaa, 0x718a, 0x9688,
+  0x7c82, 0x6817, 0x7e70, 0x6851, 0x936c, 0x52f2, 0x541b, 0x85ab,
+  0x8a13, 0x7fa4, 0x8ecd, 0x90e1, 0x5366, 0x8888, 0x7941, 0x4fc2,
+  0x50be, 0x5211, 0x5144, 0x5553, 0x572d, 0x73ea, 0x578b, 0x5951,
+  0x5f62, 0x5f84, 0x6075, 0x6176, 0x6167, 0x61a9, 0x63b2, 0x643a,
+  0x656c, 0x666f, 0x6842, 0x6e13, 0x7566, 0x7a3d, 0x7cfb, 0x7d4c,
+  0x7d99, 0x7e4b, 0x7f6b, 0x830e, 0x834a, 0x86cd, 0x8a08, 0x8a63,
+  0x8b66, 0x8efd, 0x981a, 0x9d8f, 0x82b8, 0x8fce, 0x9be8, 0x5287,
+  0x621f, 0x6483, 0x6fc0, 0x9699, 0x6841, 0x5091, 0x6b20, 0x6c7a,
+  0x6f54, 0x7a74, 0x7d50, 0x8840, 0x8a23, 0x6708, 0x4ef6, 0x5039,
+  0x5026, 0x5065, 0x517c, 0x5238, 0x5263, 0x55a7, 0x570f, 0x5805,
+  0x5acc, 0x5efa, 0x61b2, 0x61f8, 0x62f3, 0x6372,
+  /* 0x38 */
+  0x691c, 0x6a29, 0x727d, 0x72ac, 0x732e, 0x7814, 0x786f, 0x7d79,
+  0x770c, 0x80a9, 0x898b, 0x8b19, 0x8ce2, 0x8ed2, 0x9063, 0x9375,
+  0x967a, 0x9855, 0x9a13, 0x9e78, 0x5143, 0x539f, 0x53b3, 0x5e7b,
+  0x5f26, 0x6e1b, 0x6e90, 0x7384, 0x73fe, 0x7d43, 0x8237, 0x8a00,
+  0x8afa, 0x9650, 0x4e4e, 0x500b, 0x53e4, 0x547c, 0x56fa, 0x59d1,
+  0x5b64, 0x5df1, 0x5eab, 0x5f27, 0x6238, 0x6545, 0x67af, 0x6e56,
+  0x72d0, 0x7cca, 0x88b4, 0x80a1, 0x80e1, 0x83f0, 0x864e, 0x8a87,
+  0x8de8, 0x9237, 0x96c7, 0x9867, 0x9f13, 0x4e94, 0x4e92, 0x4f0d,
+  0x5348, 0x5449, 0x543e, 0x5a2f, 0x5f8c, 0x5fa1, 0x609f, 0x68a7,
+  0x6a8e, 0x745a, 0x7881, 0x8a9e, 0x8aa4, 0x8b77, 0x9190, 0x4e5e,
+  0x9bc9, 0x4ea4, 0x4f7c, 0x4faf, 0x5019, 0x5016, 0x5149, 0x516c,
+  0x529f, 0x52b9, 0x52fe, 0x539a, 0x53e3, 0x5411,
+  /* 0x39 */
+  0x540e, 0x5589, 0x5751, 0x57a2, 0x597d, 0x5b54, 0x5b5d, 0x5b8f,
+  0x5de5, 0x5de7, 0x5df7, 0x5e78, 0x5e83, 0x5e9a, 0x5eb7, 0x5f18,
+  0x6052, 0x614c, 0x6297, 0x62d8, 0x63a7, 0x653b, 0x6602, 0x6643,
+  0x66f4, 0x676d, 0x6821, 0x6897, 0x69cb, 0x6c5f, 0x6d2a, 0x6d69,
+  0x6e2f, 0x6e9d, 0x7532, 0x7687, 0x786c, 0x7a3f, 0x7ce0, 0x7d05,
+  0x7d18, 0x7d5e, 0x7db1, 0x8015, 0x8003, 0x80af, 0x80b1, 0x8154,
+  0x818f, 0x822a, 0x8352, 0x884c, 0x8861, 0x8b1b, 0x8ca2, 0x8cfc,
+  0x90ca, 0x9175, 0x9271, 0x783f, 0x92fc, 0x95a4, 0x964d, 0x9805,
+  0x9999, 0x9ad8, 0x9d3b, 0x525b, 0x52ab, 0x53f7, 0x5408, 0x58d5,
+  0x62f7, 0x6fe0, 0x8c6a, 0x8f5f, 0x9eb9, 0x514b, 0x523b, 0x544a,
+  0x56fd, 0x7a40, 0x9177, 0x9d60, 0x9ed2, 0x7344, 0x6f09, 0x8170,
+  0x7511, 0x5ffd, 0x60da, 0x9aa8, 0x72db, 0x8fbc,
+  /* 0x3a */
+  0x6b64, 0x9803, 0x4eca, 0x56f0, 0x5764, 0x58be, 0x5a5a, 0x6068,
+  0x61c7, 0x660f, 0x6606, 0x6839, 0x68b1, 0x6df7, 0x75d5, 0x7d3a,
+  0x826e, 0x9b42, 0x4e9b, 0x4f50, 0x53c9, 0x5506, 0x5d6f, 0x5de6,
+  0x5dee, 0x67fb, 0x6c99, 0x7473, 0x7802, 0x8a50, 0x9396, 0x88df,
+  0x5750, 0x5ea7, 0x632b, 0x50b5, 0x50ac, 0x518d, 0x6700, 0x54c9,
+  0x585e, 0x59bb, 0x5bb0, 0x5f69, 0x624d, 0x63a1, 0x683d, 0x6b73,
+  0x6e08, 0x707d, 0x91c7, 0x7280, 0x7815, 0x7826, 0x796d, 0x658e,
+  0x7d30, 0x83dc, 0x88c1, 0x8f09, 0x969b, 0x5264, 0x5728, 0x6750,
+  0x7f6a, 0x8ca1, 0x51b4, 0x5742, 0x962a, 0x583a, 0x698a, 0x80b4,
+  0x54b2, 0x5d0e, 0x57fc, 0x7895, 0x9dfa, 0x4f5c, 0x524a, 0x548b,
+  0x643e, 0x6628, 0x6714, 0x67f5, 0x7a84, 0x7b56, 0x7d22, 0x932f,
+  0x685c, 0x9bad, 0x7b39, 0x5319, 0x518a, 0x5237,
+  /* 0x3b */
+  0x5bdf, 0x62f6, 0x64ae, 0x64e6, 0x672d, 0x6bba, 0x85a9, 0x96d1,
+  0x7690, 0x9bd6, 0x634c, 0x9306, 0x9bab, 0x76bf, 0x6652, 0x4e09,
+  0x5098, 0x53c2, 0x5c71, 0x60e8, 0x6492, 0x6563, 0x685f, 0x71e6,
+  0x73ca, 0x7523, 0x7b97, 0x7e82, 0x8695, 0x8b83, 0x8cdb, 0x9178,
+  0x9910, 0x65ac, 0x66ab, 0x6b8b, 0x4ed5, 0x4ed4, 0x4f3a, 0x4f7f,
+  0x523a, 0x53f8, 0x53f2, 0x55e3, 0x56db, 0x58eb, 0x59cb, 0x59c9,
+  0x59ff, 0x5b50, 0x5c4d, 0x5e02, 0x5e2b, 0x5fd7, 0x601d, 0x6307,
+  0x652f, 0x5b5c, 0x65af, 0x65bd, 0x65e8, 0x679d, 0x6b62, 0x6b7b,
+  0x6c0f, 0x7345, 0x7949, 0x79c1, 0x7cf8, 0x7d19, 0x7d2b, 0x80a2,
+  0x8102, 0x81f3, 0x8996, 0x8a5e, 0x8a69, 0x8a66, 0x8a8c, 0x8aee,
+  0x8cc7, 0x8cdc, 0x96cc, 0x98fc, 0x6b6f, 0x4e8b, 0x4f3c, 0x4f8d,
+  0x5150, 0x5b57, 0x5bfa, 0x6148, 0x6301, 0x6642,
+  /* 0x3c */
+  0x6b21, 0x6ecb, 0x6cbb, 0x723e, 0x74bd, 0x75d4, 0x78c1, 0x793a,
+  0x800c, 0x8033, 0x81ea, 0x8494, 0x8f9e, 0x6c50, 0x9e7f, 0x5f0f,
+  0x8b58, 0x9d2b, 0x7afa, 0x8ef8, 0x5b8d, 0x96eb, 0x4e03, 0x53f1,
+  0x57f7, 0x5931, 0x5ac9, 0x5ba4, 0x6089, 0x6e7f, 0x6f06, 0x75be,
+  0x8cea, 0x5b9f, 0x8500, 0x7be0, 0x5072, 0x67f4, 0x829d, 0x5c61,
+  0x854a, 0x7e1e, 0x820e, 0x5199, 0x5c04, 0x6368, 0x8d66, 0x659c,
+  0x716e, 0x793e, 0x7d17, 0x8005, 0x8b1d, 0x8eca, 0x906e, 0x86c7,
+  0x90aa, 0x501f, 0x52fa, 0x5c3a, 0x6753, 0x707c, 0x7235, 0x914c,
+  0x91c8, 0x932b, 0x82e5, 0x5bc2, 0x5f31, 0x60f9, 0x4e3b, 0x53d6,
+  0x5b88, 0x624b, 0x6731, 0x6b8a, 0x72e9, 0x73e0, 0x7a2e, 0x816b,
+  0x8da3, 0x9152, 0x9996, 0x5112, 0x53d7, 0x546a, 0x5bff, 0x6388,
+  0x6a39, 0x7dac, 0x9700, 0x56da, 0x53ce, 0x5468,
+  /* 0x3d */
+  0x5b97, 0x5c31, 0x5dde, 0x4fee, 0x6101, 0x62fe, 0x6d32, 0x79c0,
+  0x79cb, 0x7d42, 0x7e4d, 0x7fd2, 0x81ed, 0x821f, 0x8490, 0x8846,
+  0x8972, 0x8b90, 0x8e74, 0x8f2f, 0x9031, 0x914b, 0x916c, 0x96c6,
+  0x919c, 0x4ec0, 0x4f4f, 0x5145, 0x5341, 0x5f93, 0x620e, 0x67d4,
+  0x6c41, 0x6e0b, 0x7363, 0x7e26, 0x91cd, 0x9283, 0x53d4, 0x5919,
+  0x5bbf, 0x6dd1, 0x795d, 0x7e2e, 0x7c9b, 0x587e, 0x719f, 0x51fa,
+  0x8853, 0x8ff0, 0x4fca, 0x5cfb, 0x6625, 0x77ac, 0x7ae3, 0x821c,
+  0x99ff, 0x51c6, 0x5faa, 0x65ec, 0x696f, 0x6b89, 0x6df3, 0x6e96,
+  0x6f64, 0x76fe, 0x7d14, 0x5de1, 0x9075, 0x9187, 0x9806, 0x51e6,
+  0x521d, 0x6240, 0x6691, 0x66d9, 0x6e1a, 0x5eb6, 0x7dd2, 0x7f72,
+  0x66f8, 0x85af, 0x85f7, 0x8af8, 0x52a9, 0x53d9, 0x5973, 0x5e8f,
+  0x5f90, 0x6055, 0x92e4, 0x9664, 0x50b7, 0x511f,
+  /* 0x3e */
+  0x52dd, 0x5320, 0x5347, 0x53ec, 0x54e8, 0x5546, 0x5531, 0x5617,
+  0x5968, 0x59be, 0x5a3c, 0x5bb5, 0x5c06, 0x5c0f, 0x5c11, 0x5c1a,
+  0x5e84, 0x5e8a, 0x5ee0, 0x5f70, 0x627f, 0x6284, 0x62db, 0x638c,
+  0x6377, 0x6607, 0x660c, 0x662d, 0x6676, 0x677e, 0x68a2, 0x6a1f,
+  0x6a35, 0x6cbc, 0x6d88, 0x6e09, 0x6e58, 0x713c, 0x7126, 0x7167,
+  0x75c7, 0x7701, 0x785d, 0x7901, 0x7965, 0x79f0, 0x7ae0, 0x7b11,
+  0x7ca7, 0x7d39, 0x8096, 0x83d6, 0x848b, 0x8549, 0x885d, 0x88f3,
+  0x8a1f, 0x8a3c, 0x8a54, 0x8a73, 0x8c61, 0x8cde, 0x91a4, 0x9266,
+  0x937e, 0x9418, 0x969c, 0x9798, 0x4e0a, 0x4e08, 0x4e1e, 0x4e57,
+  0x5197, 0x5270, 0x57ce, 0x5834, 0x58cc, 0x5b22, 0x5e38, 0x60c5,
+  0x64fe, 0x6761, 0x6756, 0x6d44, 0x72b6, 0x7573, 0x7a63, 0x84b8,
+  0x8b72, 0x91b8, 0x9320, 0x5631, 0x57f4, 0x98fe,
+  /* 0x3f */
+  0x62ed, 0x690d, 0x6b96, 0x71ed, 0x7e54, 0x8077, 0x8272, 0x89e6,
+  0x98df, 0x8755, 0x8fb1, 0x5c3b, 0x4f38, 0x4fe1, 0x4fb5, 0x5507,
+  0x5a20, 0x5bdd, 0x5be9, 0x5fc3, 0x614e, 0x632f, 0x65b0, 0x664b,
+  0x68ee, 0x699b, 0x6d78, 0x6df1, 0x7533, 0x75b9, 0x771f, 0x795e,
+  0x79e6, 0x7d33, 0x81e3, 0x82af, 0x85aa, 0x89aa, 0x8a3a, 0x8eab,
+  0x8f9b, 0x9032, 0x91dd, 0x9707, 0x4eba, 0x4ec1, 0x5203, 0x5875,
+  0x58ec, 0x5c0b, 0x751a, 0x5c3d, 0x814e, 0x8a0a, 0x8fc5, 0x9663,
+  0x976d, 0x7b25, 0x8acf, 0x9808, 0x9162, 0x56f3, 0x53a8, 0x9017,
+  0x5439, 0x5782, 0x5e25, 0x63a8, 0x6c34, 0x708a, 0x7761, 0x7c8b,
+  0x7fe0, 0x8870, 0x9042, 0x9154, 0x9310, 0x9318, 0x968f, 0x745e,
+  0x9ac4, 0x5d07, 0x5d69, 0x6570, 0x67a2, 0x8da8, 0x96db, 0x636e,
+  0x6749, 0x6919, 0x83c5, 0x9817, 0x96c0, 0x88fe,
+  /* 0x40 */
+  0x6f84, 0x647a, 0x5bf8, 0x4e16, 0x702c, 0x755d, 0x662f, 0x51c4,
+  0x5236, 0x52e2, 0x59d3, 0x5f81, 0x6027, 0x6210, 0x653f, 0x6574,
+  0x661f, 0x6674, 0x68f2, 0x6816, 0x6b63, 0x6e05, 0x7272, 0x751f,
+  0x76db, 0x7cbe, 0x8056, 0x58f0, 0x88fd, 0x897f, 0x8aa0, 0x8a93,
+  0x8acb, 0x901d, 0x9192, 0x9752, 0x9759, 0x6589, 0x7a0e, 0x8106,
+  0x96bb, 0x5e2d, 0x60dc, 0x621a, 0x65a5, 0x6614, 0x6790, 0x77f3,
+  0x7a4d, 0x7c4d, 0x7e3e, 0x810a, 0x8cac, 0x8d64, 0x8de1, 0x8e5f,
+  0x78a9, 0x5207, 0x62d9, 0x63a5, 0x6442, 0x6298, 0x8a2d, 0x7a83,
+  0x7bc0, 0x8aac, 0x96ea, 0x7d76, 0x820c, 0x8749, 0x4ed9, 0x5148,
+  0x5343, 0x5360, 0x5ba3, 0x5c02, 0x5c16, 0x5ddd, 0x6226, 0x6247,
+  0x64b0, 0x6813, 0x6834, 0x6cc9, 0x6d45, 0x6d17, 0x67d3, 0x6f5c,
+  0x714e, 0x717d, 0x65cb, 0x7a7f, 0x7bad, 0x7dda,
+  /* 0x41 */
+  0x7e4a, 0x7fa8, 0x817a, 0x821b, 0x8239, 0x85a6, 0x8a6e, 0x8cce,
+  0x8df5, 0x9078, 0x9077, 0x92ad, 0x9291, 0x9583, 0x9bae, 0x524d,
+  0x5584, 0x6f38, 0x7136, 0x5168, 0x7985, 0x7e55, 0x81b3, 0x7cce,
+  0x564c, 0x5851, 0x5ca8, 0x63aa, 0x66fe, 0x66fd, 0x695a, 0x72d9,
+  0x758f, 0x758e, 0x790e, 0x7956, 0x79df, 0x7c97, 0x7d20, 0x7d44,
+  0x8607, 0x8a34, 0x963b, 0x9061, 0x9f20, 0x50e7, 0x5275, 0x53cc,
+  0x53e2, 0x5009, 0x55aa, 0x58ee, 0x594f, 0x723d, 0x5b8b, 0x5c64,
+  0x531d, 0x60e3, 0x60f3, 0x635c, 0x6383, 0x633f, 0x63bb, 0x64cd,
+  0x65e9, 0x66f9, 0x5de3, 0x69cd, 0x69fd, 0x6f15, 0x71e5, 0x4e89,
+  0x75e9, 0x76f8, 0x7a93, 0x7cdf, 0x7dcf, 0x7d9c, 0x8061, 0x8349,
+  0x8358, 0x846c, 0x84bc, 0x85fb, 0x88c5, 0x8d70, 0x9001, 0x906d,
+  0x9397, 0x971c, 0x9a12, 0x50cf, 0x5897, 0x618e,
+  /* 0x42 */
+  0x81d3, 0x8535, 0x8d08, 0x9020, 0x4fc3, 0x5074, 0x5247, 0x5373,
+  0x606f, 0x6349, 0x675f, 0x6e2c, 0x8db3, 0x901f, 0x4fd7, 0x5c5e,
+  0x8cca, 0x65cf, 0x7d9a, 0x5352, 0x8896, 0x5176, 0x63c3, 0x5b58,
+  0x5b6b, 0x5c0a, 0x640d, 0x6751, 0x905c, 0x4ed6, 0x591a, 0x592a,
+  0x6c70, 0x8a51, 0x553e, 0x5815, 0x59a5, 0x60f0, 0x6253, 0x67c1,
+  0x8235, 0x6955, 0x9640, 0x99c4, 0x9a28, 0x4f53, 0x5806, 0x5bfe,
+  0x8010, 0x5cb1, 0x5e2f, 0x5f85, 0x6020, 0x614b, 0x6234, 0x66ff,
+  0x6cf0, 0x6ede, 0x80ce, 0x817f, 0x82d4, 0x888b, 0x8cb8, 0x9000,
+  0x902e, 0x968a, 0x9edb, 0x9bdb, 0x4ee3, 0x53f0, 0x5927, 0x7b2c,
+  0x918d, 0x984c, 0x9df9, 0x6edd, 0x7027, 0x5353, 0x5544, 0x5b85,
+  0x6258, 0x629e, 0x62d3, 0x6ca2, 0x6fef, 0x7422, 0x8a17, 0x9438,
+  0x6fc1, 0x8afe, 0x8338, 0x51e7, 0x86f8, 0x53ea,
+  /* 0x43 */
+  0x53e9, 0x4f46, 0x9054, 0x8fb0, 0x596a, 0x8131, 0x5dfd, 0x7aea,
+  0x8fbf, 0x68da, 0x8c37, 0x72f8, 0x9c48, 0x6a3d, 0x8ab0, 0x4e39,
+  0x5358, 0x5606, 0x5766, 0x62c5, 0x63a2, 0x65e6, 0x6b4e, 0x6de1,
+  0x6e5b, 0x70ad, 0x77ed, 0x7aef, 0x7baa, 0x7dbb, 0x803d, 0x80c6,
+  0x86cb, 0x8a95, 0x935b, 0x56e3, 0x58c7, 0x5f3e, 0x65ad, 0x6696,
+  0x6a80, 0x6bb5, 0x7537, 0x8ac7, 0x5024, 0x77e5, 0x5730, 0x5f1b,
+  0x6065, 0x667a, 0x6c60, 0x75f4, 0x7a1a, 0x7f6e, 0x81f4, 0x8718,
+  0x9045, 0x99b3, 0x7bc9, 0x755c, 0x7af9, 0x7b51, 0x84c4, 0x9010,
+  0x79e9, 0x7a92, 0x8336, 0x5ae1, 0x7740, 0x4e2d, 0x4ef2, 0x5b99,
+  0x5fe0, 0x62bd, 0x663c, 0x67f1, 0x6ce8, 0x866b, 0x8877, 0x8a3b,
+  0x914e, 0x92f3, 0x99d0, 0x6a17, 0x7026, 0x732a, 0x82e7, 0x8457,
+  0x8caf, 0x4e01, 0x5146, 0x51cb, 0x558b, 0x5bf5,
+  /* 0x44 */
+  0x5e16, 0x5e33, 0x5e81, 0x5f14, 0x5f35, 0x5f6b, 0x5fb4, 0x61f2,
+  0x6311, 0x66a2, 0x671d, 0x6f6e, 0x7252, 0x753a, 0x773a, 0x8074,
+  0x8139, 0x8178, 0x8776, 0x8abf, 0x8adc, 0x8d85, 0x8df3, 0x929a,
+  0x9577, 0x9802, 0x9ce5, 0x52c5, 0x6357, 0x76f4, 0x6715, 0x6c88,
+  0x73cd, 0x8cc3, 0x93ae, 0x9673, 0x6d25, 0x589c, 0x690e, 0x69cc,
+  0x8ffd, 0x939a, 0x75db, 0x901a, 0x585a, 0x6802, 0x63b4, 0x69fb,
+  0x4f43, 0x6f2c, 0x67d8, 0x8fbb, 0x8526, 0x7db4, 0x9354, 0x693f,
+  0x6f70, 0x576a, 0x58f7, 0x5b2c, 0x7d2c, 0x722a, 0x540a, 0x91e3,
+  0x9db4, 0x4ead, 0x4f4e, 0x505c, 0x5075, 0x5243, 0x8c9e, 0x5448,
+  0x5824, 0x5b9a, 0x5e1d, 0x5e95, 0x5ead, 0x5ef7, 0x5f1f, 0x608c,
+  0x62b5, 0x633a, 0x63d0, 0x68af, 0x6c40, 0x7887, 0x798e, 0x7a0b,
+  0x7de0, 0x8247, 0x8a02, 0x8ae6, 0x8e44, 0x9013,
+  /* 0x45 */
+  0x90b8, 0x912d, 0x91d8, 0x9f0e, 0x6ce5, 0x6458, 0x64e2, 0x6575,
+  0x6ef4, 0x7684, 0x7b1b, 0x9069, 0x93d1, 0x6eba, 0x54f2, 0x5fb9,
+  0x64a4, 0x8f4d, 0x8fed, 0x9244, 0x5178, 0x586b, 0x5929, 0x5c55,
+  0x5e97, 0x6dfb, 0x7e8f, 0x751c, 0x8cbc, 0x8ee2, 0x985b, 0x70b9,
+  0x4f1d, 0x6bbf, 0x6fb1, 0x7530, 0x96fb, 0x514e, 0x5410, 0x5835,
+  0x5857, 0x59ac, 0x5c60, 0x5f92, 0x6597, 0x675c, 0x6e21, 0x767b,
+  0x83df, 0x8ced, 0x9014, 0x90fd, 0x934d, 0x7825, 0x783a, 0x52aa,
+  0x5ea6, 0x571f, 0x5974, 0x6012, 0x5012, 0x515a, 0x51ac, 0x51cd,
+  0x5200, 0x5510, 0x5854, 0x5858, 0x5957, 0x5b95, 0x5cf6, 0x5d8b,
+  0x60bc, 0x6295, 0x642d, 0x6771, 0x6843, 0x68bc, 0x68df, 0x76d7,
+  0x6dd8, 0x6e6f, 0x6d9b, 0x706f, 0x71c8, 0x5f53, 0x75d8, 0x7977,
+  0x7b49, 0x7b54, 0x7b52, 0x7cd6, 0x7d71, 0x5230,
+  /* 0x46 */
+  0x8463, 0x8569, 0x85e4, 0x8a0e, 0x8b04, 0x8c46, 0x8e0f, 0x9003,
+  0x900f, 0x9419, 0x9676, 0x982d, 0x9a30, 0x95d8, 0x50cd, 0x52d5,
+  0x540c, 0x5802, 0x5c0e, 0x61a7, 0x649e, 0x6d1e, 0x77b3, 0x7ae5,
+  0x80f4, 0x8404, 0x9053, 0x9285, 0x5ce0, 0x9d07, 0x533f, 0x5f97,
+  0x5fb3, 0x6d9c, 0x7279, 0x7763, 0x79bf, 0x7be4, 0x6bd2, 0x72ec,
+  0x8aad, 0x6803, 0x6a61, 0x51f8, 0x7a81, 0x6934, 0x5c4a, 0x9cf6,
+  0x82eb, 0x5bc5, 0x9149, 0x701e, 0x5678, 0x5c6f, 0x60c7, 0x6566,
+  0x6c8c, 0x8c5a, 0x9041, 0x9813, 0x5451, 0x66c7, 0x920d, 0x5948,
+  0x90a3, 0x5185, 0x4e4d, 0x51ea, 0x8599, 0x8b0e, 0x7058, 0x637a,
+  0x934b, 0x6962, 0x99b4, 0x7e04, 0x7577, 0x5357, 0x6960, 0x8edf,
+  0x96e3, 0x6c5d, 0x4e8c, 0x5c3c, 0x5f10, 0x8fe9, 0x5302, 0x8cd1,
+  0x8089, 0x8679, 0x5eff, 0x65e5, 0x4e73, 0x5165,
+  /* 0x47 */
+  0x5982, 0x5c3f, 0x97ee, 0x4efb, 0x598a, 0x5fcd, 0x8a8d, 0x6fe1,
+  0x79b0, 0x7962, 0x5be7, 0x8471, 0x732b, 0x71b1, 0x5e74, 0x5ff5,
+  0x637b, 0x649a, 0x71c3, 0x7c98, 0x4e43, 0x5efc, 0x4e4b, 0x57dc,
+  0x56a2, 0x60a9, 0x6fc3, 0x7d0d, 0x80fd, 0x8133, 0x81bf, 0x8fb2,
+  0x8997, 0x86a4, 0x5df4, 0x628a, 0x64ad, 0x8987, 0x6777, 0x6ce2,
+  0x6d3e, 0x7436, 0x7834, 0x5a46, 0x7f75, 0x82ad, 0x99ac, 0x4ff3,
+  0x5ec3, 0x62dd, 0x6392, 0x6557, 0x676f, 0x76c3, 0x724c, 0x80cc,
+  0x80ba, 0x8f29, 0x914d, 0x500d, 0x57f9, 0x5a92, 0x6885, 0x6973,
+  0x7164, 0x72fd, 0x8cb7, 0x58f2, 0x8ce0, 0x966a, 0x9019, 0x877f,
+  0x79e4, 0x77e7, 0x8429, 0x4f2f, 0x5265, 0x535a, 0x62cd, 0x67cf,
+  0x6cca, 0x767d, 0x7b94, 0x7c95, 0x8236, 0x8584, 0x8feb, 0x66dd,
+  0x6f20, 0x7206, 0x7e1b, 0x83ab, 0x99c1, 0x9ea6,
+  /* 0x48 */
+  0x51fd, 0x7bb1, 0x7872, 0x7bb8, 0x8087, 0x7b48, 0x6ae8, 0x5e61,
+  0x808c, 0x7551, 0x7560, 0x516b, 0x9262, 0x6e8c, 0x767a, 0x9197,
+  0x9aea, 0x4f10, 0x7f70, 0x629c, 0x7b4f, 0x95a5, 0x9ce9, 0x567a,
+  0x5859, 0x86e4, 0x96bc, 0x4f34, 0x5224, 0x534a, 0x53cd, 0x53db,
+  0x5e06, 0x642c, 0x6591, 0x677f, 0x6c3e, 0x6c4e, 0x7248, 0x72af,
+  0x73ed, 0x7554, 0x7e41, 0x822c, 0x85e9, 0x8ca9, 0x7bc4, 0x91c6,
+  0x7169, 0x9812, 0x98ef, 0x633d, 0x6669, 0x756a, 0x76e4, 0x78d0,
+  0x8543, 0x86ee, 0x532a, 0x5351, 0x5426, 0x5983, 0x5e87, 0x5f7c,
+  0x60b2, 0x6249, 0x6279, 0x62ab, 0x6590, 0x6bd4, 0x6ccc, 0x75b2,
+  0x76ae, 0x7891, 0x79d8, 0x7dcb, 0x7f77, 0x80a5, 0x88ab, 0x8ab9,
+  0x8cbb, 0x907f, 0x975e, 0x98db, 0x6a0b, 0x7c38, 0x5099, 0x5c3e,
+  0x5fae, 0x6787, 0x6bd8, 0x7435, 0x7709, 0x7f8e,
+  /* 0x49 */
+  0x9f3b, 0x67ca, 0x7a17, 0x5339, 0x758b, 0x9aed, 0x5f66, 0x819d,
+  0x83f1, 0x8098, 0x5f3c, 0x5fc5, 0x7562, 0x7b46, 0x903c, 0x6867,
+  0x59eb, 0x5a9b, 0x7d10, 0x767e, 0x8b2c, 0x4ff5, 0x5f6a, 0x6a19,
+  0x6c37, 0x6f02, 0x74e2, 0x7968, 0x8868, 0x8a55, 0x8c79, 0x5edf,
+  0x63cf, 0x75c5, 0x79d2, 0x82d7, 0x9328, 0x92f2, 0x849c, 0x86ed,
+  0x9c2d, 0x54c1, 0x5f6c, 0x658c, 0x6d5c, 0x7015, 0x8ca7, 0x8cd3,
+  0x983b, 0x654f, 0x74f6, 0x4e0d, 0x4ed8, 0x57e0, 0x592b, 0x5a66,
+  0x5bcc, 0x51a8, 0x5e03, 0x5e9c, 0x6016, 0x6276, 0x6577, 0x65a7,
+  0x666e, 0x6d6e, 0x7236, 0x7b26, 0x8150, 0x819a, 0x8299, 0x8b5c,
+  0x8ca0, 0x8ce6, 0x8d74, 0x961c, 0x9644, 0x4fae, 0x64ab, 0x6b66,
+  0x821e, 0x8461, 0x856a, 0x90e8, 0x5c01, 0x6953, 0x98a8, 0x847a,
+  0x8557, 0x4f0f, 0x526f, 0x5fa9, 0x5e45, 0x670d,
+  /* 0x4a */
+  0x798f, 0x8179, 0x8907, 0x8986, 0x6df5, 0x5f17, 0x6255, 0x6cb8,
+  0x4ecf, 0x7269, 0x9b92, 0x5206, 0x543b, 0x5674, 0x58b3, 0x61a4,
+  0x626e, 0x711a, 0x596e, 0x7c89, 0x7cde, 0x7d1b, 0x96f0, 0x6587,
+  0x805e, 0x4e19, 0x4f75, 0x5175, 0x5840, 0x5e63, 0x5e73, 0x5f0a,
+  0x67c4, 0x4e26, 0x853d, 0x9589, 0x965b, 0x7c73, 0x9801, 0x50fb,
+  0x58c1, 0x7656, 0x78a7, 0x5225, 0x77a5, 0x8511, 0x7b86, 0x504f,
+  0x5909, 0x7247, 0x7bc7, 0x7de8, 0x8fba, 0x8fd4, 0x904d, 0x4fbf,
+  0x52c9, 0x5a29, 0x5f01, 0x97ad, 0x4fdd, 0x8217, 0x92ea, 0x5703,
+  0x6355, 0x6b69, 0x752b, 0x88dc, 0x8f14, 0x7a42, 0x52df, 0x5893,
+  0x6155, 0x620a, 0x66ae, 0x6bcd, 0x7c3f, 0x83e9, 0x5023, 0x4ff8,
+  0x5305, 0x5446, 0x5831, 0x5949, 0x5b9d, 0x5cf0, 0x5cef, 0x5d29,
+  0x5e96, 0x62b1, 0x6367, 0x653e, 0x65b9, 0x670b,
+  /* 0x4b */
+  0x6cd5, 0x6ce1, 0x70f9, 0x7832, 0x7e2b, 0x80de, 0x82b3, 0x840c,
+  0x84ec, 0x8702, 0x8912, 0x8a2a, 0x8c4a, 0x90a6, 0x92d2, 0x98fd,
+  0x9cf3, 0x9d6c, 0x4e4f, 0x4ea1, 0x508d, 0x5256, 0x574a, 0x59a8,
+  0x5e3d, 0x5fd8, 0x5fd9, 0x623f, 0x66b4, 0x671b, 0x67d0, 0x68d2,
+  0x5192, 0x7d21, 0x80aa, 0x81a8, 0x8b00, 0x8c8c, 0x8cbf, 0x927e,
+  0x9632, 0x5420, 0x982c, 0x5317, 0x50d5, 0x535c, 0x58a8, 0x64b2,
+  0x6734, 0x7267, 0x7766, 0x7a46, 0x91e6, 0x52c3, 0x6ca1, 0x6b86,
+  0x5800, 0x5e4c, 0x5954, 0x672c, 0x7ffb, 0x51e1, 0x76c6, 0x6469,
+  0x78e8, 0x9b54, 0x9ebb, 0x57cb, 0x59b9, 0x6627, 0x679a, 0x6bce,
+  0x54e9, 0x69d9, 0x5e55, 0x819c, 0x6795, 0x9baa, 0x67fe, 0x9c52,
+  0x685d, 0x4ea6, 0x4fe3, 0x53c8, 0x62b9, 0x672b, 0x6cab, 0x8fc4,
+  0x4fad, 0x7e6d, 0x9ebf, 0x4e07, 0x6162, 0x6e80,
+  /* 0x4c */
+  0x6f2b, 0x8513, 0x5473, 0x672a, 0x9b45, 0x5df3, 0x7b95, 0x5cac,
+  0x5bc6, 0x871c, 0x6e4a, 0x84d1, 0x7a14, 0x8108, 0x5999, 0x7c8d,
+  0x6c11, 0x7720, 0x52d9, 0x5922, 0x7121, 0x725f, 0x77db, 0x9727,
+  0x9d61, 0x690b, 0x5a7f, 0x5a18, 0x51a5, 0x540d, 0x547d, 0x660e,
+  0x76df, 0x8ff7, 0x9298, 0x9cf4, 0x59ea, 0x725d, 0x6ec5, 0x514d,
+  0x68c9, 0x7dbf, 0x7dec, 0x9762, 0x9eba, 0x6478, 0x6a21, 0x8302,
+  0x5984, 0x5b5f, 0x6bdb, 0x731b, 0x76f2, 0x7db2, 0x8017, 0x8499,
+  0x5132, 0x6728, 0x9ed9, 0x76ee, 0x6762, 0x52ff, 0x9905, 0x5c24,
+  0x623b, 0x7c7e, 0x8cb0, 0x554f, 0x60b6, 0x7d0b, 0x9580, 0x5301,
+  0x4e5f, 0x51b6, 0x591c, 0x723a, 0x8036, 0x91ce, 0x5f25, 0x77e2,
+  0x5384, 0x5f79, 0x7d04, 0x85ac, 0x8a33, 0x8e8d, 0x9756, 0x67f3,
+  0x85ae, 0x9453, 0x6109, 0x6108, 0x6cb9, 0x7652,
+  /* 0x4d */
+  0x8aed, 0x8f38, 0x552f, 0x4f51, 0x512a, 0x52c7, 0x53cb, 0x5ba5,
+  0x5e7d, 0x60a0, 0x6182, 0x63d6, 0x6709, 0x67da, 0x6e67, 0x6d8c,
+  0x7336, 0x7337, 0x7531, 0x7950, 0x88d5, 0x8a98, 0x904a, 0x9091,
+  0x90f5, 0x96c4, 0x878d, 0x5915, 0x4e88, 0x4f59, 0x4e0e, 0x8a89,
+  0x8f3f, 0x9810, 0x50ad, 0x5e7c, 0x5996, 0x5bb9, 0x5eb8, 0x63da,
+  0x63fa, 0x64c1, 0x66dc, 0x694a, 0x69d8, 0x6d0b, 0x6eb6, 0x7194,
+  0x7528, 0x7aaf, 0x7f8a, 0x8000, 0x8449, 0x84c9, 0x8981, 0x8b21,
+  0x8e0a, 0x9065, 0x967d, 0x990a, 0x617e, 0x6291, 0x6b32, 0x6c83,
+  0x6d74, 0x7fcc, 0x7ffc, 0x6dc0, 0x7f85, 0x87ba, 0x88f8, 0x6765,
+  0x83b1, 0x983c, 0x96f7, 0x6d1b, 0x7d61, 0x843d, 0x916a, 0x4e71,
+  0x5375, 0x5d50, 0x6b04, 0x6feb, 0x85cd, 0x862d, 0x89a7, 0x5229,
+  0x540f, 0x5c65, 0x674e, 0x68a8, 0x7406, 0x7483,
+  /* 0x4e */
+  0x75e2, 0x88cf, 0x88e1, 0x91cc, 0x96e2, 0x9678, 0x5f8b, 0x7387,
+  0x7acb, 0x844e, 0x63a0, 0x7565, 0x5289, 0x6d41, 0x6e9c, 0x7409,
+  0x7559, 0x786b, 0x7c92, 0x9686, 0x7adc, 0x9f8d, 0x4fb6, 0x616e,
+  0x65c5, 0x865c, 0x4e86, 0x4eae, 0x50da, 0x4e21, 0x51cc, 0x5bee,
+  0x6599, 0x6881, 0x6dbc, 0x731f, 0x7642, 0x77ad, 0x7a1c, 0x7ce7,
+  0x826f, 0x8ad2, 0x907c, 0x91cf, 0x9675, 0x9818, 0x529b, 0x7dd1,
+  0x502b, 0x5398, 0x6797, 0x6dcb, 0x71d0, 0x7433, 0x81e8, 0x8f2a,
+  0x96a3, 0x9c57, 0x9e9f, 0x7460, 0x5841, 0x6d99, 0x7d2f, 0x985e,
+  0x4ee4, 0x4f36, 0x4f8b, 0x51b7, 0x52b1, 0x5dba, 0x601c, 0x73b2,
+  0x793c, 0x82d3, 0x9234, 0x96b7, 0x96f6, 0x970a, 0x9e97, 0x9f62,
+  0x66a6, 0x6b74, 0x5217, 0x52a3, 0x70c8, 0x88c2, 0x5ec9, 0x604b,
+  0x6190, 0x6f23, 0x7149, 0x7c3e, 0x7df4, 0x806f,
+  /* 0x4f */
+  0x84ee, 0x9023, 0x932c, 0x5442, 0x9b6f, 0x6ad3, 0x7089, 0x8cc2,
+  0x8def, 0x9732, 0x52b4, 0x5a41, 0x5eca, 0x5f04, 0x6717, 0x697c,
+  0x6994, 0x6d6a, 0x6f0f, 0x7262, 0x72fc, 0x7bed, 0x8001, 0x807e,
+  0x874b, 0x90ce, 0x516d, 0x9e93, 0x7984, 0x808b, 0x9332, 0x8ad6,
+  0x502d, 0x548c, 0x8a71, 0x6b6a, 0x8cc4, 0x8107, 0x60d1, 0x67a0,
+  0x9df2, 0x4e99, 0x4e98, 0x9c10, 0x8a6b, 0x85c1, 0x8568, 0x6900,
+  0x6e7e, 0x7897, 0x8155, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x50 */
+  0x5f0c, 0x4e10, 0x4e15, 0x4e2a, 0x4e31, 0x4e36, 0x4e3c, 0x4e3f,
+  0x4e42, 0x4e56, 0x4e58, 0x4e82, 0x4e85, 0x8c6b, 0x4e8a, 0x8212,
+  0x5f0d, 0x4e8e, 0x4e9e, 0x4e9f, 0x4ea0, 0x4ea2, 0x4eb0, 0x4eb3,
+  0x4eb6, 0x4ece, 0x4ecd, 0x4ec4, 0x4ec6, 0x4ec2, 0x4ed7, 0x4ede,
+  0x4eed, 0x4edf, 0x4ef7, 0x4f09, 0x4f5a, 0x4f30, 0x4f5b, 0x4f5d,
+  0x4f57, 0x4f47, 0x4f76, 0x4f88, 0x4f8f, 0x4f98, 0x4f7b, 0x4f69,
+  0x4f70, 0x4f91, 0x4f6f, 0x4f86, 0x4f96, 0x5118, 0x4fd4, 0x4fdf,
+  0x4fce, 0x4fd8, 0x4fdb, 0x4fd1, 0x4fda, 0x4fd0, 0x4fe4, 0x4fe5,
+  0x501a, 0x5028, 0x5014, 0x502a, 0x5025, 0x5005, 0x4f1c, 0x4ff6,
+  0x5021, 0x5029, 0x502c, 0x4ffe, 0x4fef, 0x5011, 0x5006, 0x5043,
+  0x5047, 0x6703, 0x5055, 0x5050, 0x5048, 0x505a, 0x5056, 0x506c,
+  0x5078, 0x5080, 0x509a, 0x5085, 0x50b4, 0x50b2,
+  /* 0x51 */
+  0x50c9, 0x50ca, 0x50b3, 0x50c2, 0x50d6, 0x50de, 0x50e5, 0x50ed,
+  0x50e3, 0x50ee, 0x50f9, 0x50f5, 0x5109, 0x5101, 0x5102, 0x5116,
+  0x5115, 0x5114, 0x511a, 0x5121, 0x513a, 0x5137, 0x513c, 0x513b,
+  0x513f, 0x5140, 0x5152, 0x514c, 0x5154, 0x5162, 0x7af8, 0x5169,
+  0x516a, 0x516e, 0x5180, 0x5182, 0x56d8, 0x518c, 0x5189, 0x518f,
+  0x5191, 0x5193, 0x5195, 0x5196, 0x51a4, 0x51a6, 0x51a2, 0x51a9,
+  0x51aa, 0x51ab, 0x51b3, 0x51b1, 0x51b2, 0x51b0, 0x51b5, 0x51bd,
+  0x51c5, 0x51c9, 0x51db, 0x51e0, 0x8655, 0x51e9, 0x51ed, 0x51f0,
+  0x51f5, 0x51fe, 0x5204, 0x520b, 0x5214, 0x520e, 0x5227, 0x522a,
+  0x522e, 0x5233, 0x5239, 0x524f, 0x5244, 0x524b, 0x524c, 0x525e,
+  0x5254, 0x526a, 0x5274, 0x5269, 0x5273, 0x527f, 0x527d, 0x528d,
+  0x5294, 0x5292, 0x5271, 0x5288, 0x5291, 0x8fa8,
+  /* 0x52 */
+  0x8fa7, 0x52ac, 0x52ad, 0x52bc, 0x52b5, 0x52c1, 0x52cd, 0x52d7,
+  0x52de, 0x52e3, 0x52e6, 0x98ed, 0x52e0, 0x52f3, 0x52f5, 0x52f8,
+  0x52f9, 0x5306, 0x5308, 0x7538, 0x530d, 0x5310, 0x530f, 0x5315,
+  0x531a, 0x5323, 0x532f, 0x5331, 0x5333, 0x5338, 0x5340, 0x5346,
+  0x5345, 0x4e17, 0x5349, 0x534d, 0x51d6, 0x535e, 0x5369, 0x536e,
+  0x5918, 0x537b, 0x5377, 0x5382, 0x5396, 0x53a0, 0x53a6, 0x53a5,
+  0x53ae, 0x53b0, 0x53b6, 0x53c3, 0x7c12, 0x96d9, 0x53df, 0x66fc,
+  0x71ee, 0x53ee, 0x53e8, 0x53ed, 0x53fa, 0x5401, 0x543d, 0x5440,
+  0x542c, 0x542d, 0x543c, 0x542e, 0x5436, 0x5429, 0x541d, 0x544e,
+  0x548f, 0x5475, 0x548e, 0x545f, 0x5471, 0x5477, 0x5470, 0x5492,
+  0x547b, 0x5480, 0x5476, 0x5484, 0x5490, 0x5486, 0x54c7, 0x54a2,
+  0x54b8, 0x54a5, 0x54ac, 0x54c4, 0x54c8, 0x54a8,
+  /* 0x53 */
+  0x54ab, 0x54c2, 0x54a4, 0x54be, 0x54bc, 0x54d8, 0x54e5, 0x54e6,
+  0x550f, 0x5514, 0x54fd, 0x54ee, 0x54ed, 0x54fa, 0x54e2, 0x5539,
+  0x5540, 0x5563, 0x554c, 0x552e, 0x555c, 0x5545, 0x5556, 0x5557,
+  0x5538, 0x5533, 0x555d, 0x5599, 0x5580, 0x54af, 0x558a, 0x559f,
+  0x557b, 0x557e, 0x5598, 0x559e, 0x55ae, 0x557c, 0x5583, 0x55a9,
+  0x5587, 0x55a8, 0x55da, 0x55c5, 0x55df, 0x55c4, 0x55dc, 0x55e4,
+  0x55d4, 0x5614, 0x55f7, 0x5616, 0x55fe, 0x55fd, 0x561b, 0x55f9,
+  0x564e, 0x5650, 0x71df, 0x5634, 0x5636, 0x5632, 0x5638, 0x566b,
+  0x5664, 0x562f, 0x566c, 0x566a, 0x5686, 0x5680, 0x568a, 0x56a0,
+  0x5694, 0x568f, 0x56a5, 0x56ae, 0x56b6, 0x56b4, 0x56c2, 0x56bc,
+  0x56c1, 0x56c3, 0x56c0, 0x56c8, 0x56ce, 0x56d1, 0x56d3, 0x56d7,
+  0x56ee, 0x56f9, 0x5700, 0x56ff, 0x5704, 0x5709,
+  /* 0x54 */
+  0x5708, 0x570b, 0x570d, 0x5713, 0x5718, 0x5716, 0x55c7, 0x571c,
+  0x5726, 0x5737, 0x5738, 0x574e, 0x573b, 0x5740, 0x574f, 0x5769,
+  0x57c0, 0x5788, 0x5761, 0x577f, 0x5789, 0x5793, 0x57a0, 0x57b3,
+  0x57a4, 0x57aa, 0x57b0, 0x57c3, 0x57c6, 0x57d4, 0x57d2, 0x57d3,
+  0x580a, 0x57d6, 0x57e3, 0x580b, 0x5819, 0x581d, 0x5872, 0x5821,
+  0x5862, 0x584b, 0x5870, 0x6bc0, 0x5852, 0x583d, 0x5879, 0x5885,
+  0x58b9, 0x589f, 0x58ab, 0x58ba, 0x58de, 0x58bb, 0x58b8, 0x58ae,
+  0x58c5, 0x58d3, 0x58d1, 0x58d7, 0x58d9, 0x58d8, 0x58e5, 0x58dc,
+  0x58e4, 0x58df, 0x58ef, 0x58fa, 0x58f9, 0x58fb, 0x58fc, 0x58fd,
+  0x5902, 0x590a, 0x5910, 0x591b, 0x68a6, 0x5925, 0x592c, 0x592d,
+  0x5932, 0x5938, 0x593e, 0x7ad2, 0x5955, 0x5950, 0x594e, 0x595a,
+  0x5958, 0x5962, 0x5960, 0x5967, 0x596c, 0x5969,
+  /* 0x55 */
+  0x5978, 0x5981, 0x599d, 0x4f5e, 0x4fab, 0x59a3, 0x59b2, 0x59c6,
+  0x59e8, 0x59dc, 0x598d, 0x59d9, 0x59da, 0x5a25, 0x5a1f, 0x5a11,
+  0x5a1c, 0x5a09, 0x5a1a, 0x5a40, 0x5a6c, 0x5a49, 0x5a35, 0x5a36,
+  0x5a62, 0x5a6a, 0x5a9a, 0x5abc, 0x5abe, 0x5acb, 0x5ac2, 0x5abd,
+  0x5ae3, 0x5ad7, 0x5ae6, 0x5ae9, 0x5ad6, 0x5afa, 0x5afb, 0x5b0c,
+  0x5b0b, 0x5b16, 0x5b32, 0x5ad0, 0x5b2a, 0x5b36, 0x5b3e, 0x5b43,
+  0x5b45, 0x5b40, 0x5b51, 0x5b55, 0x5b5a, 0x5b5b, 0x5b65, 0x5b69,
+  0x5b70, 0x5b73, 0x5b75, 0x5b78, 0x6588, 0x5b7a, 0x5b80, 0x5b83,
+  0x5ba6, 0x5bb8, 0x5bc3, 0x5bc7, 0x5bc9, 0x5bd4, 0x5bd0, 0x5be4,
+  0x5be6, 0x5be2, 0x5bde, 0x5be5, 0x5beb, 0x5bf0, 0x5bf6, 0x5bf3,
+  0x5c05, 0x5c07, 0x5c08, 0x5c0d, 0x5c13, 0x5c20, 0x5c22, 0x5c28,
+  0x5c38, 0x5c39, 0x5c41, 0x5c46, 0x5c4e, 0x5c53,
+  /* 0x56 */
+  0x5c50, 0x5c4f, 0x5b71, 0x5c6c, 0x5c6e, 0x4e62, 0x5c76, 0x5c79,
+  0x5c8c, 0x5c91, 0x5c94, 0x599b, 0x5cab, 0x5cbb, 0x5cb6, 0x5cbc,
+  0x5cb7, 0x5cc5, 0x5cbe, 0x5cc7, 0x5cd9, 0x5ce9, 0x5cfd, 0x5cfa,
+  0x5ced, 0x5d8c, 0x5cea, 0x5d0b, 0x5d15, 0x5d17, 0x5d5c, 0x5d1f,
+  0x5d1b, 0x5d11, 0x5d14, 0x5d22, 0x5d1a, 0x5d19, 0x5d18, 0x5d4c,
+  0x5d52, 0x5d4e, 0x5d4b, 0x5d6c, 0x5d73, 0x5d76, 0x5d87, 0x5d84,
+  0x5d82, 0x5da2, 0x5d9d, 0x5dac, 0x5dae, 0x5dbd, 0x5d90, 0x5db7,
+  0x5dbc, 0x5dc9, 0x5dcd, 0x5dd3, 0x5dd2, 0x5dd6, 0x5ddb, 0x5deb,
+  0x5df2, 0x5df5, 0x5e0b, 0x5e1a, 0x5e19, 0x5e11, 0x5e1b, 0x5e36,
+  0x5e37, 0x5e44, 0x5e43, 0x5e40, 0x5e4e, 0x5e57, 0x5e54, 0x5e5f,
+  0x5e62, 0x5e64, 0x5e47, 0x5e75, 0x5e76, 0x5e7a, 0x9ebc, 0x5e7f,
+  0x5ea0, 0x5ec1, 0x5ec2, 0x5ec8, 0x5ed0, 0x5ecf,
+  /* 0x57 */
+  0x5ed6, 0x5ee3, 0x5edd, 0x5eda, 0x5edb, 0x5ee2, 0x5ee1, 0x5ee8,
+  0x5ee9, 0x5eec, 0x5ef1, 0x5ef3, 0x5ef0, 0x5ef4, 0x5ef8, 0x5efe,
+  0x5f03, 0x5f09, 0x5f5d, 0x5f5c, 0x5f0b, 0x5f11, 0x5f16, 0x5f29,
+  0x5f2d, 0x5f38, 0x5f41, 0x5f48, 0x5f4c, 0x5f4e, 0x5f2f, 0x5f51,
+  0x5f56, 0x5f57, 0x5f59, 0x5f61, 0x5f6d, 0x5f73, 0x5f77, 0x5f83,
+  0x5f82, 0x5f7f, 0x5f8a, 0x5f88, 0x5f91, 0x5f87, 0x5f9e, 0x5f99,
+  0x5f98, 0x5fa0, 0x5fa8, 0x5fad, 0x5fbc, 0x5fd6, 0x5ffb, 0x5fe4,
+  0x5ff8, 0x5ff1, 0x5fdd, 0x60b3, 0x5fff, 0x6021, 0x6060, 0x6019,
+  0x6010, 0x6029, 0x600e, 0x6031, 0x601b, 0x6015, 0x602b, 0x6026,
+  0x600f, 0x603a, 0x605a, 0x6041, 0x606a, 0x6077, 0x605f, 0x604a,
+  0x6046, 0x604d, 0x6063, 0x6043, 0x6064, 0x6042, 0x606c, 0x606b,
+  0x6059, 0x6081, 0x608d, 0x60e7, 0x6083, 0x609a,
+  /* 0x58 */
+  0x6084, 0x609b, 0x6096, 0x6097, 0x6092, 0x60a7, 0x608b, 0x60e1,
+  0x60b8, 0x60e0, 0x60d3, 0x60b4, 0x5ff0, 0x60bd, 0x60c6, 0x60b5,
+  0x60d8, 0x614d, 0x6115, 0x6106, 0x60f6, 0x60f7, 0x6100, 0x60f4,
+  0x60fa, 0x6103, 0x6121, 0x60fb, 0x60f1, 0x610d, 0x610e, 0x6147,
+  0x613e, 0x6128, 0x6127, 0x614a, 0x613f, 0x613c, 0x612c, 0x6134,
+  0x613d, 0x6142, 0x6144, 0x6173, 0x6177, 0x6158, 0x6159, 0x615a,
+  0x616b, 0x6174, 0x616f, 0x6165, 0x6171, 0x615f, 0x615d, 0x6153,
+  0x6175, 0x6199, 0x6196, 0x6187, 0x61ac, 0x6194, 0x619a, 0x618a,
+  0x6191, 0x61ab, 0x61ae, 0x61cc, 0x61ca, 0x61c9, 0x61f7, 0x61c8,
+  0x61c3, 0x61c6, 0x61ba, 0x61cb, 0x7f79, 0x61cd, 0x61e6, 0x61e3,
+  0x61f6, 0x61fa, 0x61f4, 0x61ff, 0x61fd, 0x61fc, 0x61fe, 0x6200,
+  0x6208, 0x6209, 0x620d, 0x620c, 0x6214, 0x621b,
+  /* 0x59 */
+  0x621e, 0x6221, 0x622a, 0x622e, 0x6230, 0x6232, 0x6233, 0x6241,
+  0x624e, 0x625e, 0x6263, 0x625b, 0x6260, 0x6268, 0x627c, 0x6282,
+  0x6289, 0x627e, 0x6292, 0x6293, 0x6296, 0x62d4, 0x6283, 0x6294,
+  0x62d7, 0x62d1, 0x62bb, 0x62cf, 0x62ff, 0x62c6, 0x64d4, 0x62c8,
+  0x62dc, 0x62cc, 0x62ca, 0x62c2, 0x62c7, 0x629b, 0x62c9, 0x630c,
+  0x62ee, 0x62f1, 0x6327, 0x6302, 0x6308, 0x62ef, 0x62f5, 0x6350,
+  0x633e, 0x634d, 0x641c, 0x634f, 0x6396, 0x638e, 0x6380, 0x63ab,
+  0x6376, 0x63a3, 0x638f, 0x6389, 0x639f, 0x63b5, 0x636b, 0x6369,
+  0x63be, 0x63e9, 0x63c0, 0x63c6, 0x63e3, 0x63c9, 0x63d2, 0x63f6,
+  0x63c4, 0x6416, 0x6434, 0x6406, 0x6413, 0x6426, 0x6436, 0x651d,
+  0x6417, 0x6428, 0x640f, 0x6467, 0x646f, 0x6476, 0x644e, 0x652a,
+  0x6495, 0x6493, 0x64a5, 0x64a9, 0x6488, 0x64bc,
+  /* 0x5a */
+  0x64da, 0x64d2, 0x64c5, 0x64c7, 0x64bb, 0x64d8, 0x64c2, 0x64f1,
+  0x64e7, 0x8209, 0x64e0, 0x64e1, 0x62ac, 0x64e3, 0x64ef, 0x652c,
+  0x64f6, 0x64f4, 0x64f2, 0x64fa, 0x6500, 0x64fd, 0x6518, 0x651c,
+  0x6505, 0x6524, 0x6523, 0x652b, 0x6534, 0x6535, 0x6537, 0x6536,
+  0x6538, 0x754b, 0x6548, 0x6556, 0x6555, 0x654d, 0x6558, 0x655e,
+  0x655d, 0x6572, 0x6578, 0x6582, 0x6583, 0x8b8a, 0x659b, 0x659f,
+  0x65ab, 0x65b7, 0x65c3, 0x65c6, 0x65c1, 0x65c4, 0x65cc, 0x65d2,
+  0x65db, 0x65d9, 0x65e0, 0x65e1, 0x65f1, 0x6772, 0x660a, 0x6603,
+  0x65fb, 0x6773, 0x6635, 0x6636, 0x6634, 0x661c, 0x664f, 0x6644,
+  0x6649, 0x6641, 0x665e, 0x665d, 0x6664, 0x6667, 0x6668, 0x665f,
+  0x6662, 0x6670, 0x6683, 0x6688, 0x668e, 0x6689, 0x6684, 0x6698,
+  0x669d, 0x66c1, 0x66b9, 0x66c9, 0x66be, 0x66bc,
+  /* 0x5b */
+  0x66c4, 0x66b8, 0x66d6, 0x66da, 0x66e0, 0x663f, 0x66e6, 0x66e9,
+  0x66f0, 0x66f5, 0x66f7, 0x670f, 0x6716, 0x671e, 0x6726, 0x6727,
+  0x9738, 0x672e, 0x673f, 0x6736, 0x6741, 0x6738, 0x6737, 0x6746,
+  0x675e, 0x6760, 0x6759, 0x6763, 0x6764, 0x6789, 0x6770, 0x67a9,
+  0x677c, 0x676a, 0x678c, 0x678b, 0x67a6, 0x67a1, 0x6785, 0x67b7,
+  0x67ef, 0x67b4, 0x67ec, 0x67b3, 0x67e9, 0x67b8, 0x67e4, 0x67de,
+  0x67dd, 0x67e2, 0x67ee, 0x67b9, 0x67ce, 0x67c6, 0x67e7, 0x6a9c,
+  0x681e, 0x6846, 0x6829, 0x6840, 0x684d, 0x6832, 0x684e, 0x68b3,
+  0x682b, 0x6859, 0x6863, 0x6877, 0x687f, 0x689f, 0x688f, 0x68ad,
+  0x6894, 0x689d, 0x689b, 0x6883, 0x6aae, 0x68b9, 0x6874, 0x68b5,
+  0x68a0, 0x68ba, 0x690f, 0x688d, 0x687e, 0x6901, 0x68ca, 0x6908,
+  0x68d8, 0x6922, 0x6926, 0x68e1, 0x690c, 0x68cd,
+  /* 0x5c */
+  0x68d4, 0x68e7, 0x68d5, 0x6936, 0x6912, 0x6904, 0x68d7, 0x68e3,
+  0x6925, 0x68f9, 0x68e0, 0x68ef, 0x6928, 0x692a, 0x691a, 0x6923,
+  0x6921, 0x68c6, 0x6979, 0x6977, 0x695c, 0x6978, 0x696b, 0x6954,
+  0x697e, 0x696e, 0x6939, 0x6974, 0x693d, 0x6959, 0x6930, 0x6961,
+  0x695e, 0x695d, 0x6981, 0x696a, 0x69b2, 0x69ae, 0x69d0, 0x69bf,
+  0x69c1, 0x69d3, 0x69be, 0x69ce, 0x5be8, 0x69ca, 0x69dd, 0x69bb,
+  0x69c3, 0x69a7, 0x6a2e, 0x6991, 0x69a0, 0x699c, 0x6995, 0x69b4,
+  0x69de, 0x69e8, 0x6a02, 0x6a1b, 0x69ff, 0x6b0a, 0x69f9, 0x69f2,
+  0x69e7, 0x6a05, 0x69b1, 0x6a1e, 0x69ed, 0x6a14, 0x69eb, 0x6a0a,
+  0x6a12, 0x6ac1, 0x6a23, 0x6a13, 0x6a44, 0x6a0c, 0x6a72, 0x6a36,
+  0x6a78, 0x6a47, 0x6a62, 0x6a59, 0x6a66, 0x6a48, 0x6a38, 0x6a22,
+  0x6a90, 0x6a8d, 0x6aa0, 0x6a84, 0x6aa2, 0x6aa3,
+  /* 0x5d */
+  0x6a97, 0x8617, 0x6abb, 0x6ac3, 0x6ac2, 0x6ab8, 0x6ab3, 0x6aac,
+  0x6ade, 0x6ad1, 0x6adf, 0x6aaa, 0x6ada, 0x6aea, 0x6afb, 0x6b05,
+  0x8616, 0x6afa, 0x6b12, 0x6b16, 0x9b31, 0x6b1f, 0x6b38, 0x6b37,
+  0x76dc, 0x6b39, 0x98ee, 0x6b47, 0x6b43, 0x6b49, 0x6b50, 0x6b59,
+  0x6b54, 0x6b5b, 0x6b5f, 0x6b61, 0x6b78, 0x6b79, 0x6b7f, 0x6b80,
+  0x6b84, 0x6b83, 0x6b8d, 0x6b98, 0x6b95, 0x6b9e, 0x6ba4, 0x6baa,
+  0x6bab, 0x6baf, 0x6bb2, 0x6bb1, 0x6bb3, 0x6bb7, 0x6bbc, 0x6bc6,
+  0x6bcb, 0x6bd3, 0x6bdf, 0x6bec, 0x6beb, 0x6bf3, 0x6bef, 0x9ebe,
+  0x6c08, 0x6c13, 0x6c14, 0x6c1b, 0x6c24, 0x6c23, 0x6c5e, 0x6c55,
+  0x6c62, 0x6c6a, 0x6c82, 0x6c8d, 0x6c9a, 0x6c81, 0x6c9b, 0x6c7e,
+  0x6c68, 0x6c73, 0x6c92, 0x6c90, 0x6cc4, 0x6cf1, 0x6cd3, 0x6cbd,
+  0x6cd7, 0x6cc5, 0x6cdd, 0x6cae, 0x6cb1, 0x6cbe,
+  /* 0x5e */
+  0x6cba, 0x6cdb, 0x6cef, 0x6cd9, 0x6cea, 0x6d1f, 0x884d, 0x6d36,
+  0x6d2b, 0x6d3d, 0x6d38, 0x6d19, 0x6d35, 0x6d33, 0x6d12, 0x6d0c,
+  0x6d63, 0x6d93, 0x6d64, 0x6d5a, 0x6d79, 0x6d59, 0x6d8e, 0x6d95,
+  0x6fe4, 0x6d85, 0x6df9, 0x6e15, 0x6e0a, 0x6db5, 0x6dc7, 0x6de6,
+  0x6db8, 0x6dc6, 0x6dec, 0x6dde, 0x6dcc, 0x6de8, 0x6dd2, 0x6dc5,
+  0x6dfa, 0x6dd9, 0x6de4, 0x6dd5, 0x6dea, 0x6dee, 0x6e2d, 0x6e6e,
+  0x6e2e, 0x6e19, 0x6e72, 0x6e5f, 0x6e3e, 0x6e23, 0x6e6b, 0x6e2b,
+  0x6e76, 0x6e4d, 0x6e1f, 0x6e43, 0x6e3a, 0x6e4e, 0x6e24, 0x6eff,
+  0x6e1d, 0x6e38, 0x6e82, 0x6eaa, 0x6e98, 0x6ec9, 0x6eb7, 0x6ed3,
+  0x6ebd, 0x6eaf, 0x6ec4, 0x6eb2, 0x6ed4, 0x6ed5, 0x6e8f, 0x6ea5,
+  0x6ec2, 0x6e9f, 0x6f41, 0x6f11, 0x704c, 0x6eec, 0x6ef8, 0x6efe,
+  0x6f3f, 0x6ef2, 0x6f31, 0x6eef, 0x6f32, 0x6ecc,
+  /* 0x5f */
+  0x6f3e, 0x6f13, 0x6ef7, 0x6f86, 0x6f7a, 0x6f78, 0x6f81, 0x6f80,
+  0x6f6f, 0x6f5b, 0x6ff3, 0x6f6d, 0x6f82, 0x6f7c, 0x6f58, 0x6f8e,
+  0x6f91, 0x6fc2, 0x6f66, 0x6fb3, 0x6fa3, 0x6fa1, 0x6fa4, 0x6fb9,
+  0x6fc6, 0x6faa, 0x6fdf, 0x6fd5, 0x6fec, 0x6fd4, 0x6fd8, 0x6ff1,
+  0x6fee, 0x6fdb, 0x7009, 0x700b, 0x6ffa, 0x7011, 0x7001, 0x700f,
+  0x6ffe, 0x701b, 0x701a, 0x6f74, 0x701d, 0x7018, 0x701f, 0x7030,
+  0x703e, 0x7032, 0x7051, 0x7063, 0x7099, 0x7092, 0x70af, 0x70f1,
+  0x70ac, 0x70b8, 0x70b3, 0x70ae, 0x70df, 0x70cb, 0x70dd, 0x70d9,
+  0x7109, 0x70fd, 0x711c, 0x7119, 0x7165, 0x7155, 0x7188, 0x7166,
+  0x7162, 0x714c, 0x7156, 0x716c, 0x718f, 0x71fb, 0x7184, 0x7195,
+  0x71a8, 0x71ac, 0x71d7, 0x71b9, 0x71be, 0x71d2, 0x71c9, 0x71d4,
+  0x71ce, 0x71e0, 0x71ec, 0x71e7, 0x71f5, 0x71fc,
+  /* 0x60 */
+  0x71f9, 0x71ff, 0x720d, 0x7210, 0x721b, 0x7228, 0x722d, 0x722c,
+  0x7230, 0x7232, 0x723b, 0x723c, 0x723f, 0x7240, 0x7246, 0x724b,
+  0x7258, 0x7274, 0x727e, 0x7282, 0x7281, 0x7287, 0x7292, 0x7296,
+  0x72a2, 0x72a7, 0x72b9, 0x72b2, 0x72c3, 0x72c6, 0x72c4, 0x72ce,
+  0x72d2, 0x72e2, 0x72e0, 0x72e1, 0x72f9, 0x72f7, 0x500f, 0x7317,
+  0x730a, 0x731c, 0x7316, 0x731d, 0x7334, 0x732f, 0x7329, 0x7325,
+  0x733e, 0x734e, 0x734f, 0x9ed8, 0x7357, 0x736a, 0x7368, 0x7370,
+  0x7378, 0x7375, 0x737b, 0x737a, 0x73c8, 0x73b3, 0x73ce, 0x73bb,
+  0x73c0, 0x73e5, 0x73ee, 0x73de, 0x74a2, 0x7405, 0x746f, 0x7425,
+  0x73f8, 0x7432, 0x743a, 0x7455, 0x743f, 0x745f, 0x7459, 0x7441,
+  0x745c, 0x7469, 0x7470, 0x7463, 0x746a, 0x7476, 0x747e, 0x748b,
+  0x749e, 0x74a7, 0x74ca, 0x74cf, 0x74d4, 0x73f1,
+  /* 0x61 */
+  0x74e0, 0x74e3, 0x74e7, 0x74e9, 0x74ee, 0x74f2, 0x74f0, 0x74f1,
+  0x74f8, 0x74f7, 0x7504, 0x7503, 0x7505, 0x750c, 0x750e, 0x750d,
+  0x7515, 0x7513, 0x751e, 0x7526, 0x752c, 0x753c, 0x7544, 0x754d,
+  0x754a, 0x7549, 0x755b, 0x7546, 0x755a, 0x7569, 0x7564, 0x7567,
+  0x756b, 0x756d, 0x7578, 0x7576, 0x7586, 0x7587, 0x7574, 0x758a,
+  0x7589, 0x7582, 0x7594, 0x759a, 0x759d, 0x75a5, 0x75a3, 0x75c2,
+  0x75b3, 0x75c3, 0x75b5, 0x75bd, 0x75b8, 0x75bc, 0x75b1, 0x75cd,
+  0x75ca, 0x75d2, 0x75d9, 0x75e3, 0x75de, 0x75fe, 0x75ff, 0x75fc,
+  0x7601, 0x75f0, 0x75fa, 0x75f2, 0x75f3, 0x760b, 0x760d, 0x7609,
+  0x761f, 0x7627, 0x7620, 0x7621, 0x7622, 0x7624, 0x7634, 0x7630,
+  0x763b, 0x7647, 0x7648, 0x7646, 0x765c, 0x7658, 0x7661, 0x7662,
+  0x7668, 0x7669, 0x766a, 0x7667, 0x766c, 0x7670,
+  /* 0x62 */
+  0x7672, 0x7676, 0x7678, 0x767c, 0x7680, 0x7683, 0x7688, 0x768b,
+  0x768e, 0x7696, 0x7693, 0x7699, 0x769a, 0x76b0, 0x76b4, 0x76b8,
+  0x76b9, 0x76ba, 0x76c2, 0x76cd, 0x76d6, 0x76d2, 0x76de, 0x76e1,
+  0x76e5, 0x76e7, 0x76ea, 0x862f, 0x76fb, 0x7708, 0x7707, 0x7704,
+  0x7729, 0x7724, 0x771e, 0x7725, 0x7726, 0x771b, 0x7737, 0x7738,
+  0x7747, 0x775a, 0x7768, 0x776b, 0x775b, 0x7765, 0x777f, 0x777e,
+  0x7779, 0x778e, 0x778b, 0x7791, 0x77a0, 0x779e, 0x77b0, 0x77b6,
+  0x77b9, 0x77bf, 0x77bc, 0x77bd, 0x77bb, 0x77c7, 0x77cd, 0x77d7,
+  0x77da, 0x77dc, 0x77e3, 0x77ee, 0x77fc, 0x780c, 0x7812, 0x7926,
+  0x7820, 0x792a, 0x7845, 0x788e, 0x7874, 0x7886, 0x787c, 0x789a,
+  0x788c, 0x78a3, 0x78b5, 0x78aa, 0x78af, 0x78d1, 0x78c6, 0x78cb,
+  0x78d4, 0x78be, 0x78bc, 0x78c5, 0x78ca, 0x78ec,
+  /* 0x63 */
+  0x78e7, 0x78da, 0x78fd, 0x78f4, 0x7907, 0x7912, 0x7911, 0x7919,
+  0x792c, 0x792b, 0x7940, 0x7960, 0x7957, 0x795f, 0x795a, 0x7955,
+  0x7953, 0x797a, 0x797f, 0x798a, 0x799d, 0x79a7, 0x9f4b, 0x79aa,
+  0x79ae, 0x79b3, 0x79b9, 0x79ba, 0x79c9, 0x79d5, 0x79e7, 0x79ec,
+  0x79e1, 0x79e3, 0x7a08, 0x7a0d, 0x7a18, 0x7a19, 0x7a20, 0x7a1f,
+  0x7980, 0x7a31, 0x7a3b, 0x7a3e, 0x7a37, 0x7a43, 0x7a57, 0x7a49,
+  0x7a61, 0x7a62, 0x7a69, 0x9f9d, 0x7a70, 0x7a79, 0x7a7d, 0x7a88,
+  0x7a97, 0x7a95, 0x7a98, 0x7a96, 0x7aa9, 0x7ac8, 0x7ab0, 0x7ab6,
+  0x7ac5, 0x7ac4, 0x7abf, 0x9083, 0x7ac7, 0x7aca, 0x7acd, 0x7acf,
+  0x7ad5, 0x7ad3, 0x7ad9, 0x7ada, 0x7add, 0x7ae1, 0x7ae2, 0x7ae6,
+  0x7aed, 0x7af0, 0x7b02, 0x7b0f, 0x7b0a, 0x7b06, 0x7b33, 0x7b18,
+  0x7b19, 0x7b1e, 0x7b35, 0x7b28, 0x7b36, 0x7b50,
+  /* 0x64 */
+  0x7b7a, 0x7b04, 0x7b4d, 0x7b0b, 0x7b4c, 0x7b45, 0x7b75, 0x7b65,
+  0x7b74, 0x7b67, 0x7b70, 0x7b71, 0x7b6c, 0x7b6e, 0x7b9d, 0x7b98,
+  0x7b9f, 0x7b8d, 0x7b9c, 0x7b9a, 0x7b8b, 0x7b92, 0x7b8f, 0x7b5d,
+  0x7b99, 0x7bcb, 0x7bc1, 0x7bcc, 0x7bcf, 0x7bb4, 0x7bc6, 0x7bdd,
+  0x7be9, 0x7c11, 0x7c14, 0x7be6, 0x7be5, 0x7c60, 0x7c00, 0x7c07,
+  0x7c13, 0x7bf3, 0x7bf7, 0x7c17, 0x7c0d, 0x7bf6, 0x7c23, 0x7c27,
+  0x7c2a, 0x7c1f, 0x7c37, 0x7c2b, 0x7c3d, 0x7c4c, 0x7c43, 0x7c54,
+  0x7c4f, 0x7c40, 0x7c50, 0x7c58, 0x7c5f, 0x7c64, 0x7c56, 0x7c65,
+  0x7c6c, 0x7c75, 0x7c83, 0x7c90, 0x7ca4, 0x7cad, 0x7ca2, 0x7cab,
+  0x7ca1, 0x7ca8, 0x7cb3, 0x7cb2, 0x7cb1, 0x7cae, 0x7cb9, 0x7cbd,
+  0x7cc0, 0x7cc5, 0x7cc2, 0x7cd8, 0x7cd2, 0x7cdc, 0x7ce2, 0x9b3b,
+  0x7cef, 0x7cf2, 0x7cf4, 0x7cf6, 0x7cfa, 0x7d06,
+  /* 0x65 */
+  0x7d02, 0x7d1c, 0x7d15, 0x7d0a, 0x7d45, 0x7d4b, 0x7d2e, 0x7d32,
+  0x7d3f, 0x7d35, 0x7d46, 0x7d73, 0x7d56, 0x7d4e, 0x7d72, 0x7d68,
+  0x7d6e, 0x7d4f, 0x7d63, 0x7d93, 0x7d89, 0x7d5b, 0x7d8f, 0x7d7d,
+  0x7d9b, 0x7dba, 0x7dae, 0x7da3, 0x7db5, 0x7dc7, 0x7dbd, 0x7dab,
+  0x7e3d, 0x7da2, 0x7daf, 0x7ddc, 0x7db8, 0x7d9f, 0x7db0, 0x7dd8,
+  0x7ddd, 0x7de4, 0x7dde, 0x7dfb, 0x7df2, 0x7de1, 0x7e05, 0x7e0a,
+  0x7e23, 0x7e21, 0x7e12, 0x7e31, 0x7e1f, 0x7e09, 0x7e0b, 0x7e22,
+  0x7e46, 0x7e66, 0x7e3b, 0x7e35, 0x7e39, 0x7e43, 0x7e37, 0x7e32,
+  0x7e3a, 0x7e67, 0x7e5d, 0x7e56, 0x7e5e, 0x7e59, 0x7e5a, 0x7e79,
+  0x7e6a, 0x7e69, 0x7e7c, 0x7e7b, 0x7e83, 0x7dd5, 0x7e7d, 0x8fae,
+  0x7e7f, 0x7e88, 0x7e89, 0x7e8c, 0x7e92, 0x7e90, 0x7e93, 0x7e94,
+  0x7e96, 0x7e8e, 0x7e9b, 0x7e9c, 0x7f38, 0x7f3a,
+  /* 0x66 */
+  0x7f45, 0x7f4c, 0x7f4d, 0x7f4e, 0x7f50, 0x7f51, 0x7f55, 0x7f54,
+  0x7f58, 0x7f5f, 0x7f60, 0x7f68, 0x7f69, 0x7f67, 0x7f78, 0x7f82,
+  0x7f86, 0x7f83, 0x7f88, 0x7f87, 0x7f8c, 0x7f94, 0x7f9e, 0x7f9d,
+  0x7f9a, 0x7fa3, 0x7faf, 0x7fb2, 0x7fb9, 0x7fae, 0x7fb6, 0x7fb8,
+  0x8b71, 0x7fc5, 0x7fc6, 0x7fca, 0x7fd5, 0x7fd4, 0x7fe1, 0x7fe6,
+  0x7fe9, 0x7ff3, 0x7ff9, 0x98dc, 0x8006, 0x8004, 0x800b, 0x8012,
+  0x8018, 0x8019, 0x801c, 0x8021, 0x8028, 0x803f, 0x803b, 0x804a,
+  0x8046, 0x8052, 0x8058, 0x805a, 0x805f, 0x8062, 0x8068, 0x8073,
+  0x8072, 0x8070, 0x8076, 0x8079, 0x807d, 0x807f, 0x8084, 0x8086,
+  0x8085, 0x809b, 0x8093, 0x809a, 0x80ad, 0x5190, 0x80ac, 0x80db,
+  0x80e5, 0x80d9, 0x80dd, 0x80c4, 0x80da, 0x80d6, 0x8109, 0x80ef,
+  0x80f1, 0x811b, 0x8129, 0x8123, 0x812f, 0x814b,
+  /* 0x67 */
+  0x968b, 0x8146, 0x813e, 0x8153, 0x8151, 0x80fc, 0x8171, 0x816e,
+  0x8165, 0x8166, 0x8174, 0x8183, 0x8188, 0x818a, 0x8180, 0x8182,
+  0x81a0, 0x8195, 0x81a4, 0x81a3, 0x815f, 0x8193, 0x81a9, 0x81b0,
+  0x81b5, 0x81be, 0x81b8, 0x81bd, 0x81c0, 0x81c2, 0x81ba, 0x81c9,
+  0x81cd, 0x81d1, 0x81d9, 0x81d8, 0x81c8, 0x81da, 0x81df, 0x81e0,
+  0x81e7, 0x81fa, 0x81fb, 0x81fe, 0x8201, 0x8202, 0x8205, 0x8207,
+  0x820a, 0x820d, 0x8210, 0x8216, 0x8229, 0x822b, 0x8238, 0x8233,
+  0x8240, 0x8259, 0x8258, 0x825d, 0x825a, 0x825f, 0x8264, 0x8262,
+  0x8268, 0x826a, 0x826b, 0x822e, 0x8271, 0x8277, 0x8278, 0x827e,
+  0x828d, 0x8292, 0x82ab, 0x829f, 0x82bb, 0x82ac, 0x82e1, 0x82e3,
+  0x82df, 0x82d2, 0x82f4, 0x82f3, 0x82fa, 0x8393, 0x8303, 0x82fb,
+  0x82f9, 0x82de, 0x8306, 0x82dc, 0x8309, 0x82d9,
+  /* 0x68 */
+  0x8335, 0x8334, 0x8316, 0x8332, 0x8331, 0x8340, 0x8339, 0x8350,
+  0x8345, 0x832f, 0x832b, 0x8317, 0x8318, 0x8385, 0x839a, 0x83aa,
+  0x839f, 0x83a2, 0x8396, 0x8323, 0x838e, 0x8387, 0x838a, 0x837c,
+  0x83b5, 0x8373, 0x8375, 0x83a0, 0x8389, 0x83a8, 0x83f4, 0x8413,
+  0x83eb, 0x83ce, 0x83fd, 0x8403, 0x83d8, 0x840b, 0x83c1, 0x83f7,
+  0x8407, 0x83e0, 0x83f2, 0x840d, 0x8422, 0x8420, 0x83bd, 0x8438,
+  0x8506, 0x83fb, 0x846d, 0x842a, 0x843c, 0x855a, 0x8484, 0x8477,
+  0x846b, 0x84ad, 0x846e, 0x8482, 0x8469, 0x8446, 0x842c, 0x846f,
+  0x8479, 0x8435, 0x84ca, 0x8462, 0x84b9, 0x84bf, 0x849f, 0x84d9,
+  0x84cd, 0x84bb, 0x84da, 0x84d0, 0x84c1, 0x84c6, 0x84d6, 0x84a1,
+  0x8521, 0x84ff, 0x84f4, 0x8517, 0x8518, 0x852c, 0x851f, 0x8515,
+  0x8514, 0x84fc, 0x8540, 0x8563, 0x8558, 0x8548,
+  /* 0x69 */
+  0x8541, 0x8602, 0x854b, 0x8555, 0x8580, 0x85a4, 0x8588, 0x8591,
+  0x858a, 0x85a8, 0x856d, 0x8594, 0x859b, 0x85ea, 0x8587, 0x859c,
+  0x8577, 0x857e, 0x8590, 0x85c9, 0x85ba, 0x85cf, 0x85b9, 0x85d0,
+  0x85d5, 0x85dd, 0x85e5, 0x85dc, 0x85f9, 0x860a, 0x8613, 0x860b,
+  0x85fe, 0x85fa, 0x8606, 0x8622, 0x861a, 0x8630, 0x863f, 0x864d,
+  0x4e55, 0x8654, 0x865f, 0x8667, 0x8671, 0x8693, 0x86a3, 0x86a9,
+  0x86aa, 0x868b, 0x868c, 0x86b6, 0x86af, 0x86c4, 0x86c6, 0x86b0,
+  0x86c9, 0x8823, 0x86ab, 0x86d4, 0x86de, 0x86e9, 0x86ec, 0x86df,
+  0x86db, 0x86ef, 0x8712, 0x8706, 0x8708, 0x8700, 0x8703, 0x86fb,
+  0x8711, 0x8709, 0x870d, 0x86f9, 0x870a, 0x8734, 0x873f, 0x8737,
+  0x873b, 0x8725, 0x8729, 0x871a, 0x8760, 0x875f, 0x8778, 0x874c,
+  0x874e, 0x8774, 0x8757, 0x8768, 0x876e, 0x8759,
+  /* 0x6a */
+  0x8753, 0x8763, 0x876a, 0x8805, 0x87a2, 0x879f, 0x8782, 0x87af,
+  0x87cb, 0x87bd, 0x87c0, 0x87d0, 0x96d6, 0x87ab, 0x87c4, 0x87b3,
+  0x87c7, 0x87c6, 0x87bb, 0x87ef, 0x87f2, 0x87e0, 0x880f, 0x880d,
+  0x87fe, 0x87f6, 0x87f7, 0x880e, 0x87d2, 0x8811, 0x8816, 0x8815,
+  0x8822, 0x8821, 0x8831, 0x8836, 0x8839, 0x8827, 0x883b, 0x8844,
+  0x8842, 0x8852, 0x8859, 0x885e, 0x8862, 0x886b, 0x8881, 0x887e,
+  0x889e, 0x8875, 0x887d, 0x88b5, 0x8872, 0x8882, 0x8897, 0x8892,
+  0x88ae, 0x8899, 0x88a2, 0x888d, 0x88a4, 0x88b0, 0x88bf, 0x88b1,
+  0x88c3, 0x88c4, 0x88d4, 0x88d8, 0x88d9, 0x88dd, 0x88f9, 0x8902,
+  0x88fc, 0x88f4, 0x88e8, 0x88f2, 0x8904, 0x890c, 0x890a, 0x8913,
+  0x8943, 0x891e, 0x8925, 0x892a, 0x892b, 0x8941, 0x8944, 0x893b,
+  0x8936, 0x8938, 0x894c, 0x891d, 0x8960, 0x895e,
+  /* 0x6b */
+  0x8966, 0x8964, 0x896d, 0x896a, 0x896f, 0x8974, 0x8977, 0x897e,
+  0x8983, 0x8988, 0x898a, 0x8993, 0x8998, 0x89a1, 0x89a9, 0x89a6,
+  0x89ac, 0x89af, 0x89b2, 0x89ba, 0x89bd, 0x89bf, 0x89c0, 0x89da,
+  0x89dc, 0x89dd, 0x89e7, 0x89f4, 0x89f8, 0x8a03, 0x8a16, 0x8a10,
+  0x8a0c, 0x8a1b, 0x8a1d, 0x8a25, 0x8a36, 0x8a41, 0x8a5b, 0x8a52,
+  0x8a46, 0x8a48, 0x8a7c, 0x8a6d, 0x8a6c, 0x8a62, 0x8a85, 0x8a82,
+  0x8a84, 0x8aa8, 0x8aa1, 0x8a91, 0x8aa5, 0x8aa6, 0x8a9a, 0x8aa3,
+  0x8ac4, 0x8acd, 0x8ac2, 0x8ada, 0x8aeb, 0x8af3, 0x8ae7, 0x8ae4,
+  0x8af1, 0x8b14, 0x8ae0, 0x8ae2, 0x8af7, 0x8ade, 0x8adb, 0x8b0c,
+  0x8b07, 0x8b1a, 0x8ae1, 0x8b16, 0x8b10, 0x8b17, 0x8b20, 0x8b33,
+  0x97ab, 0x8b26, 0x8b2b, 0x8b3e, 0x8b28, 0x8b41, 0x8b4c, 0x8b4f,
+  0x8b4e, 0x8b49, 0x8b56, 0x8b5b, 0x8b5a, 0x8b6b,
+  /* 0x6c */
+  0x8b5f, 0x8b6c, 0x8b6f, 0x8b74, 0x8b7d, 0x8b80, 0x8b8c, 0x8b8e,
+  0x8b92, 0x8b93, 0x8b96, 0x8b99, 0x8b9a, 0x8c3a, 0x8c41, 0x8c3f,
+  0x8c48, 0x8c4c, 0x8c4e, 0x8c50, 0x8c55, 0x8c62, 0x8c6c, 0x8c78,
+  0x8c7a, 0x8c82, 0x8c89, 0x8c85, 0x8c8a, 0x8c8d, 0x8c8e, 0x8c94,
+  0x8c7c, 0x8c98, 0x621d, 0x8cad, 0x8caa, 0x8cbd, 0x8cb2, 0x8cb3,
+  0x8cae, 0x8cb6, 0x8cc8, 0x8cc1, 0x8ce4, 0x8ce3, 0x8cda, 0x8cfd,
+  0x8cfa, 0x8cfb, 0x8d04, 0x8d05, 0x8d0a, 0x8d07, 0x8d0f, 0x8d0d,
+  0x8d10, 0x9f4e, 0x8d13, 0x8ccd, 0x8d14, 0x8d16, 0x8d67, 0x8d6d,
+  0x8d71, 0x8d73, 0x8d81, 0x8d99, 0x8dc2, 0x8dbe, 0x8dba, 0x8dcf,
+  0x8dda, 0x8dd6, 0x8dcc, 0x8ddb, 0x8dcb, 0x8dea, 0x8deb, 0x8ddf,
+  0x8de3, 0x8dfc, 0x8e08, 0x8e09, 0x8dff, 0x8e1d, 0x8e1e, 0x8e10,
+  0x8e1f, 0x8e42, 0x8e35, 0x8e30, 0x8e34, 0x8e4a,
+  /* 0x6d */
+  0x8e47, 0x8e49, 0x8e4c, 0x8e50, 0x8e48, 0x8e59, 0x8e64, 0x8e60,
+  0x8e2a, 0x8e63, 0x8e55, 0x8e76, 0x8e72, 0x8e7c, 0x8e81, 0x8e87,
+  0x8e85, 0x8e84, 0x8e8b, 0x8e8a, 0x8e93, 0x8e91, 0x8e94, 0x8e99,
+  0x8eaa, 0x8ea1, 0x8eac, 0x8eb0, 0x8ec6, 0x8eb1, 0x8ebe, 0x8ec5,
+  0x8ec8, 0x8ecb, 0x8edb, 0x8ee3, 0x8efc, 0x8efb, 0x8eeb, 0x8efe,
+  0x8f0a, 0x8f05, 0x8f15, 0x8f12, 0x8f19, 0x8f13, 0x8f1c, 0x8f1f,
+  0x8f1b, 0x8f0c, 0x8f26, 0x8f33, 0x8f3b, 0x8f39, 0x8f45, 0x8f42,
+  0x8f3e, 0x8f4c, 0x8f49, 0x8f46, 0x8f4e, 0x8f57, 0x8f5c, 0x8f62,
+  0x8f63, 0x8f64, 0x8f9c, 0x8f9f, 0x8fa3, 0x8fad, 0x8faf, 0x8fb7,
+  0x8fda, 0x8fe5, 0x8fe2, 0x8fea, 0x8fef, 0x9087, 0x8ff4, 0x9005,
+  0x8ff9, 0x8ffa, 0x9011, 0x9015, 0x9021, 0x900d, 0x901e, 0x9016,
+  0x900b, 0x9027, 0x9036, 0x9035, 0x9039, 0x8ff8,
+  /* 0x6e */
+  0x904f, 0x9050, 0x9051, 0x9052, 0x900e, 0x9049, 0x903e, 0x9056,
+  0x9058, 0x905e, 0x9068, 0x906f, 0x9076, 0x96a8, 0x9072, 0x9082,
+  0x907d, 0x9081, 0x9080, 0x908a, 0x9089, 0x908f, 0x90a8, 0x90af,
+  0x90b1, 0x90b5, 0x90e2, 0x90e4, 0x6248, 0x90db, 0x9102, 0x9112,
+  0x9119, 0x9132, 0x9130, 0x914a, 0x9156, 0x9158, 0x9163, 0x9165,
+  0x9169, 0x9173, 0x9172, 0x918b, 0x9189, 0x9182, 0x91a2, 0x91ab,
+  0x91af, 0x91aa, 0x91b5, 0x91b4, 0x91ba, 0x91c0, 0x91c1, 0x91c9,
+  0x91cb, 0x91d0, 0x91d6, 0x91df, 0x91e1, 0x91db, 0x91fc, 0x91f5,
+  0x91f6, 0x921e, 0x91ff, 0x9214, 0x922c, 0x9215, 0x9211, 0x925e,
+  0x9257, 0x9245, 0x9249, 0x9264, 0x9248, 0x9295, 0x923f, 0x924b,
+  0x9250, 0x929c, 0x9296, 0x9293, 0x929b, 0x925a, 0x92cf, 0x92b9,
+  0x92b7, 0x92e9, 0x930f, 0x92fa, 0x9344, 0x932e,
+  /* 0x6f */
+  0x9319, 0x9322, 0x931a, 0x9323, 0x933a, 0x9335, 0x933b, 0x935c,
+  0x9360, 0x937c, 0x936e, 0x9356, 0x93b0, 0x93ac, 0x93ad, 0x9394,
+  0x93b9, 0x93d6, 0x93d7, 0x93e8, 0x93e5, 0x93d8, 0x93c3, 0x93dd,
+  0x93d0, 0x93c8, 0x93e4, 0x941a, 0x9414, 0x9413, 0x9403, 0x9407,
+  0x9410, 0x9436, 0x942b, 0x9435, 0x9421, 0x943a, 0x9441, 0x9452,
+  0x9444, 0x945b, 0x9460, 0x9462, 0x945e, 0x946a, 0x9229, 0x9470,
+  0x9475, 0x9477, 0x947d, 0x945a, 0x947c, 0x947e, 0x9481, 0x947f,
+  0x9582, 0x9587, 0x958a, 0x9594, 0x9596, 0x9598, 0x9599, 0x95a0,
+  0x95a8, 0x95a7, 0x95ad, 0x95bc, 0x95bb, 0x95b9, 0x95be, 0x95ca,
+  0x6ff6, 0x95c3, 0x95cd, 0x95cc, 0x95d5, 0x95d4, 0x95d6, 0x95dc,
+  0x95e1, 0x95e5, 0x95e2, 0x9621, 0x9628, 0x962e, 0x962f, 0x9642,
+  0x964c, 0x964f, 0x964b, 0x9677, 0x965c, 0x965e,
+  /* 0x70 */
+  0x965d, 0x965f, 0x9666, 0x9672, 0x966c, 0x968d, 0x9698, 0x9695,
+  0x9697, 0x96aa, 0x96a7, 0x96b1, 0x96b2, 0x96b0, 0x96b4, 0x96b6,
+  0x96b8, 0x96b9, 0x96ce, 0x96cb, 0x96c9, 0x96cd, 0x894d, 0x96dc,
+  0x970d, 0x96d5, 0x96f9, 0x9704, 0x9706, 0x9708, 0x9713, 0x970e,
+  0x9711, 0x970f, 0x9716, 0x9719, 0x9724, 0x972a, 0x9730, 0x9739,
+  0x973d, 0x973e, 0x9744, 0x9746, 0x9748, 0x9742, 0x9749, 0x975c,
+  0x9760, 0x9764, 0x9766, 0x9768, 0x52d2, 0x976b, 0x9771, 0x9779,
+  0x9785, 0x977c, 0x9781, 0x977a, 0x9786, 0x978b, 0x978f, 0x9790,
+  0x979c, 0x97a8, 0x97a6, 0x97a3, 0x97b3, 0x97b4, 0x97c3, 0x97c6,
+  0x97c8, 0x97cb, 0x97dc, 0x97ed, 0x9f4f, 0x97f2, 0x7adf, 0x97f6,
+  0x97f5, 0x980f, 0x980c, 0x9838, 0x9824, 0x9821, 0x9837, 0x983d,
+  0x9846, 0x984f, 0x984b, 0x986b, 0x986f, 0x9870,
+  /* 0x71 */
+  0x9871, 0x9874, 0x9873, 0x98aa, 0x98af, 0x98b1, 0x98b6, 0x98c4,
+  0x98c3, 0x98c6, 0x98e9, 0x98eb, 0x9903, 0x9909, 0x9912, 0x9914,
+  0x9918, 0x9921, 0x991d, 0x991e, 0x9924, 0x9920, 0x992c, 0x992e,
+  0x993d, 0x993e, 0x9942, 0x9949, 0x9945, 0x9950, 0x994b, 0x9951,
+  0x9952, 0x994c, 0x9955, 0x9997, 0x9998, 0x99a5, 0x99ad, 0x99ae,
+  0x99bc, 0x99df, 0x99db, 0x99dd, 0x99d8, 0x99d1, 0x99ed, 0x99ee,
+  0x99f1, 0x99f2, 0x99fb, 0x99f8, 0x9a01, 0x9a0f, 0x9a05, 0x99e2,
+  0x9a19, 0x9a2b, 0x9a37, 0x9a45, 0x9a42, 0x9a40, 0x9a43, 0x9a3e,
+  0x9a55, 0x9a4d, 0x9a5b, 0x9a57, 0x9a5f, 0x9a62, 0x9a65, 0x9a64,
+  0x9a69, 0x9a6b, 0x9a6a, 0x9aad, 0x9ab0, 0x9abc, 0x9ac0, 0x9acf,
+  0x9ad1, 0x9ad3, 0x9ad4, 0x9ade, 0x9adf, 0x9ae2, 0x9ae3, 0x9ae6,
+  0x9aef, 0x9aeb, 0x9aee, 0x9af4, 0x9af1, 0x9af7,
+  /* 0x72 */
+  0x9afb, 0x9b06, 0x9b18, 0x9b1a, 0x9b1f, 0x9b22, 0x9b23, 0x9b25,
+  0x9b27, 0x9b28, 0x9b29, 0x9b2a, 0x9b2e, 0x9b2f, 0x9b32, 0x9b44,
+  0x9b43, 0x9b4f, 0x9b4d, 0x9b4e, 0x9b51, 0x9b58, 0x9b74, 0x9b93,
+  0x9b83, 0x9b91, 0x9b96, 0x9b97, 0x9b9f, 0x9ba0, 0x9ba8, 0x9bb4,
+  0x9bc0, 0x9bca, 0x9bb9, 0x9bc6, 0x9bcf, 0x9bd1, 0x9bd2, 0x9be3,
+  0x9be2, 0x9be4, 0x9bd4, 0x9be1, 0x9c3a, 0x9bf2, 0x9bf1, 0x9bf0,
+  0x9c15, 0x9c14, 0x9c09, 0x9c13, 0x9c0c, 0x9c06, 0x9c08, 0x9c12,
+  0x9c0a, 0x9c04, 0x9c2e, 0x9c1b, 0x9c25, 0x9c24, 0x9c21, 0x9c30,
+  0x9c47, 0x9c32, 0x9c46, 0x9c3e, 0x9c5a, 0x9c60, 0x9c67, 0x9c76,
+  0x9c78, 0x9ce7, 0x9cec, 0x9cf0, 0x9d09, 0x9d08, 0x9ceb, 0x9d03,
+  0x9d06, 0x9d2a, 0x9d26, 0x9daf, 0x9d23, 0x9d1f, 0x9d44, 0x9d15,
+  0x9d12, 0x9d41, 0x9d3f, 0x9d3e, 0x9d46, 0x9d48,
+  /* 0x73 */
+  0x9d5d, 0x9d5e, 0x9d64, 0x9d51, 0x9d50, 0x9d59, 0x9d72, 0x9d89,
+  0x9d87, 0x9dab, 0x9d6f, 0x9d7a, 0x9d9a, 0x9da4, 0x9da9, 0x9db2,
+  0x9dc4, 0x9dc1, 0x9dbb, 0x9db8, 0x9dba, 0x9dc6, 0x9dcf, 0x9dc2,
+  0x9dd9, 0x9dd3, 0x9df8, 0x9de6, 0x9ded, 0x9def, 0x9dfd, 0x9e1a,
+  0x9e1b, 0x9e1e, 0x9e75, 0x9e79, 0x9e7d, 0x9e81, 0x9e88, 0x9e8b,
+  0x9e8c, 0x9e92, 0x9e95, 0x9e91, 0x9e9d, 0x9ea5, 0x9ea9, 0x9eb8,
+  0x9eaa, 0x9ead, 0x9761, 0x9ecc, 0x9ece, 0x9ecf, 0x9ed0, 0x9ed4,
+  0x9edc, 0x9ede, 0x9edd, 0x9ee0, 0x9ee5, 0x9ee8, 0x9eef, 0x9ef4,
+  0x9ef6, 0x9ef7, 0x9ef9, 0x9efb, 0x9efc, 0x9efd, 0x9f07, 0x9f08,
+  0x76b7, 0x9f15, 0x9f21, 0x9f2c, 0x9f3e, 0x9f4a, 0x9f52, 0x9f54,
+  0x9f63, 0x9f5f, 0x9f60, 0x9f61, 0x9f66, 0x9f67, 0x9f6c, 0x9f6a,
+  0x9f77, 0x9f72, 0x9f76, 0x9f95, 0x9f9c, 0x9fa0,
+  /* 0x74 */
+  0x582f, 0x69c7, 0x9059, 0x7464, 0x51dc, 0x7199,
+};
+
+static int
+jisx0208_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 >= 0x21 && c1 <= 0x28) || (c1 >= 0x30 && c1 <= 0x74)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if (c2 >= 0x21 && c2 < 0x7f) {
+        unsigned int i = 94 * (c1 - 0x21) + (c2 - 0x21);
+        unsigned short wc = 0xfffd;
+        if (i < 1410) {
+          if (i < 690)
+            wc = jisx0208_2uni_page21[i];
+        } else {
+          if (i < 7808)
+            wc = jisx0208_2uni_page30[i-1410];
+        }
+        if (wc != 0xfffd) {
+          *pwc = (ucs4_t) wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned short jisx0208_2charset[6879] = {
+  0x2171, 0x2172, 0x2178, 0x212f, 0x224c, 0x216b, 0x215e, 0x212d,
+  0x2279, 0x215f, 0x2160, 0x2621, 0x2622, 0x2623, 0x2624, 0x2625,
+  0x2626, 0x2627, 0x2628, 0x2629, 0x262a, 0x262b, 0x262c, 0x262d,
+  0x262e, 0x262f, 0x2630, 0x2631, 0x2632, 0x2633, 0x2634, 0x2635,
+  0x2636, 0x2637, 0x2638, 0x2641, 0x2642, 0x2643, 0x2644, 0x2645,
+  0x2646, 0x2647, 0x2648, 0x2649, 0x264a, 0x264b, 0x264c, 0x264d,
+  0x264e, 0x264f, 0x2650, 0x2651, 0x2652, 0x2653, 0x2654, 0x2655,
+  0x2656, 0x2657, 0x2658, 0x2727, 0x2721, 0x2722, 0x2723, 0x2724,
+  0x2725, 0x2726, 0x2728, 0x2729, 0x272a, 0x272b, 0x272c, 0x272d,
+  0x272e, 0x272f, 0x2730, 0x2731, 0x2732, 0x2733, 0x2734, 0x2735,
+  0x2736, 0x2737, 0x2738, 0x2739, 0x273a, 0x273b, 0x273c, 0x273d,
+  0x273e, 0x273f, 0x2740, 0x2741, 0x2751, 0x2752, 0x2753, 0x2754,
+  0x2755, 0x2756, 0x2758, 0x2759, 0x275a, 0x275b, 0x275c, 0x275d,
+  0x275e, 0x275f, 0x2760, 0x2761, 0x2762, 0x2763, 0x2764, 0x2765,
+  0x2766, 0x2767, 0x2768, 0x2769, 0x276a, 0x276b, 0x276c, 0x276d,
+  0x276e, 0x276f, 0x2770, 0x2771, 0x2757, 0x213e, 0x213d, 0x2142,
+  0x2146, 0x2147, 0x2148, 0x2149, 0x2277, 0x2278, 0x2145, 0x2144,
+  0x2273, 0x216c, 0x216d, 0x2228, 0x216e, 0x2272, 0x222b, 0x222c,
+  0x222a, 0x222d, 0x224d, 0x224e, 0x224f, 0x225f, 0x2250, 0x2260,
+  0x223a, 0x223b, 0x215d, 0x2265, 0x2267, 0x2167, 0x225c, 0x224a,
+  0x224b, 0x2241, 0x2240, 0x2269, 0x226a, 0x2168, 0x2268, 0x2266,
+  0x2262, 0x2162, 0x2261, 0x2165, 0x2166, 0x2263, 0x2264, 0x223e,
+  0x223f, 0x223c, 0x223d, 0x225d, 0x225e, 0x2821, 0x282c, 0x2822,
+  0x282d, 0x2823, 0x282e, 0x2824, 0x282f, 0x2826, 0x2831, 0x2825,
+  0x2830, 0x2827, 0x283c, 0x2837, 0x2832, 0x2829, 0x283e, 0x2839,
+  0x2834, 0x2828, 0x2838, 0x283d, 0x2833, 0x282a, 0x283a, 0x283f,
+  0x2835, 0x282b, 0x283b, 0x2840, 0x2836, 0x2223, 0x2222, 0x2225,
+  0x2224, 0x2227, 0x2226, 0x2221, 0x217e, 0x217b, 0x217d, 0x217c,
+  0x227e, 0x217a, 0x2179, 0x216a, 0x2169, 0x2276, 0x2275, 0x2274,
+  0x2121, 0x2122, 0x2123, 0x2137, 0x2139, 0x213a, 0x213b, 0x2152,
+  0x2153, 0x2154, 0x2155, 0x2156, 0x2157, 0x2158, 0x2159, 0x215a,
+  0x215b, 0x2229, 0x222e, 0x214c, 0x214d, 0x2141, 0x2421, 0x2422,
+  0x2423, 0x2424, 0x2425, 0x2426, 0x2427, 0x2428, 0x2429, 0x242a,
+  0x242b, 0x242c, 0x242d, 0x242e, 0x242f, 0x2430, 0x2431, 0x2432,
+  0x2433, 0x2434, 0x2435, 0x2436, 0x2437, 0x2438, 0x2439, 0x243a,
+  0x243b, 0x243c, 0x243d, 0x243e, 0x243f, 0x2440, 0x2441, 0x2442,
+  0x2443, 0x2444, 0x2445, 0x2446, 0x2447, 0x2448, 0x2449, 0x244a,
+  0x244b, 0x244c, 0x244d, 0x244e, 0x244f, 0x2450, 0x2451, 0x2452,
+  0x2453, 0x2454, 0x2455, 0x2456, 0x2457, 0x2458, 0x2459, 0x245a,
+  0x245b, 0x245c, 0x245d, 0x245e, 0x245f, 0x2460, 0x2461, 0x2462,
+  0x2463, 0x2464, 0x2465, 0x2466, 0x2467, 0x2468, 0x2469, 0x246a,
+  0x246b, 0x246c, 0x246d, 0x246e, 0x246f, 0x2470, 0x2471, 0x2472,
+  0x2473, 0x212b, 0x212c, 0x2135, 0x2136, 0x2521, 0x2522, 0x2523,
+  0x2524, 0x2525, 0x2526, 0x2527, 0x2528, 0x2529, 0x252a, 0x252b,
+  0x252c, 0x252d, 0x252e, 0x252f, 0x2530, 0x2531, 0x2532, 0x2533,
+  0x2534, 0x2535, 0x2536, 0x2537, 0x2538, 0x2539, 0x253a, 0x253b,
+  0x253c, 0x253d, 0x253e, 0x253f, 0x2540, 0x2541, 0x2542, 0x2543,
+  0x2544, 0x2545, 0x2546, 0x2547, 0x2548, 0x2549, 0x254a, 0x254b,
+  0x254c, 0x254d, 0x254e, 0x254f, 0x2550, 0x2551, 0x2552, 0x2553,
+  0x2554, 0x2555, 0x2556, 0x2557, 0x2558, 0x2559, 0x255a, 0x255b,
+  0x255c, 0x255d, 0x255e, 0x255f, 0x2560, 0x2561, 0x2562, 0x2563,
+  0x2564, 0x2565, 0x2566, 0x2567, 0x2568, 0x2569, 0x256a, 0x256b,
+  0x256c, 0x256d, 0x256e, 0x256f, 0x2570, 0x2571, 0x2572, 0x2573,
+  0x2574, 0x2575, 0x2576, 0x2126, 0x213c, 0x2133, 0x2134, 0x306c,
+  0x437a, 0x3c37, 0x4b7c, 0x3e66, 0x3b30, 0x3e65, 0x323c, 0x4954,
+  0x4d3f, 0x5022, 0x312f, 0x336e, 0x5023, 0x4024, 0x5242, 0x3556,
+  0x4a3a, 0x3e67, 0x4e3e, 0x4a42, 0x5024, 0x4366, 0x5025, 0x367a,
+  0x5026, 0x345d, 0x4330, 0x3c67, 0x5027, 0x5028, 0x5029, 0x4735,
+  0x3557, 0x4737, 0x4663, 0x3843, 0x4b33, 0x6949, 0x502a, 0x3e68,
+  0x502b, 0x3235, 0x3665, 0x3870, 0x4c69, 0x5626, 0x4d70, 0x467d,
+  0x3425, 0x3535, 0x502c, 0x502d, 0x4e3b, 0x4d3d, 0x4168, 0x502f,
+  0x3b76, 0x4673, 0x5032, 0x313e, 0x385f, 0x385e, 0x3066, 0x4f4b,
+  0x4f4a, 0x3a33, 0x3021, 0x5033, 0x5034, 0x5035, 0x4b34, 0x5036,
+  0x3872, 0x3067, 0x4b72, 0x357c, 0x357d, 0x357e, 0x4462, 0x4e3c,
+  0x5037, 0x5038, 0x5039, 0x3f4d, 0x3d3a, 0x3f4e, 0x503e, 0x503c,
+  0x503d, 0x3558, 0x3a23, 0x3270, 0x503b, 0x503a, 0x4a29, 0x3b46,
+  0x3b45, 0x423e, 0x503f, 0x4955, 0x4067, 0x2138, 0x5040, 0x5042,
+  0x4265, 0x4e61, 0x304a, 0x5041, 0x323e, 0x3644, 0x4367, 0x376f,
+  0x5043, 0x4724, 0x346b, 0x5044, 0x304b, 0x3860, 0x346c, 0x497a,
+  0x4832, 0x3559, 0x3271, 0x5067, 0x4541, 0x476c, 0x5046, 0x483c,
+  0x4e62, 0x3f2d, 0x3b47, 0x3b77, 0x3240, 0x4451, 0x4322, 0x504a,
+  0x304c, 0x4463, 0x3d3b, 0x3a34, 0x4d24, 0x424e, 0x323f, 0x5049,
+  0x4d3e, 0x5045, 0x5047, 0x3a6e, 0x5048, 0x5524, 0x5050, 0x5053,
+  0x5051, 0x3242, 0x4a3b, 0x504b, 0x504f, 0x3873, 0x3b48, 0x3426,
+  0x5054, 0x504c, 0x4e63, 0x3b78, 0x504d, 0x5052, 0x5055, 0x504e,
+  0x3621, 0x304d, 0x3622, 0x3241, 0x5525, 0x4b79, 0x496e, 0x3874,
+  0x3f2f, 0x4e37, 0x4a58, 0x3738, 0x4225, 0x3264, 0x3d53, 0x5059,
+  0x505e, 0x505c, 0x5057, 0x422f, 0x505a, 0x505d, 0x505b, 0x4a5d,
+  0x5058, 0x3f2e, 0x4b73, 0x505f, 0x5060, 0x3d24, 0x506d, 0x4750,
+  0x4936, 0x5068, 0x4a70, 0x3236, 0x506c, 0x5066, 0x506f, 0x4152,
+  0x3844, 0x475c, 0x6047, 0x506e, 0x455d, 0x5063, 0x3876, 0x3875,
+  0x5061, 0x3c5a, 0x5069, 0x4a6f, 0x434d, 0x5065, 0x3771, 0x5062,
+  0x506a, 0x5064, 0x4e51, 0x506b, 0x4f41, 0x3666, 0x3770, 0x5070,
+  0x5071, 0x5075, 0x304e, 0x4a50, 0x5074, 0x5073, 0x5077, 0x5076,
+  0x4464, 0x3772, 0x5078, 0x3c45, 0x4226, 0x4465, 0x3676, 0x5079,
+  0x3536, 0x507a, 0x507c, 0x4b35, 0x3766, 0x3b31, 0x4877, 0x507b,
+  0x3a45, 0x4d43, 0x507e, 0x5123, 0x507d, 0x3a44, 0x3d7d, 0x3739,
+  0x5124, 0x364f, 0x5121, 0x5122, 0x462f, 0x417c, 0x3623, 0x4b4d,
+  0x5125, 0x4e3d, 0x5126, 0x5129, 0x5127, 0x414e, 0x5128, 0x512a,
+  0x512c, 0x512b, 0x4a48, 0x3537, 0x512e, 0x512f, 0x322f, 0x512d,
+  0x3c74, 0x5132, 0x5131, 0x5130, 0x5056, 0x5133, 0x3d7e, 0x5134,
+  0x4d25, 0x4c59, 0x5136, 0x5135, 0x5138, 0x5137, 0x5139, 0x513a,
+  0x3074, 0x3835, 0x373b, 0x3d3c, 0x437b, 0x3624, 0x4068, 0x3877,
+  0x396e, 0x513c, 0x4c48, 0x4546, 0x3b79, 0x513b, 0x513d, 0x455e,
+  0x3375, 0x513e, 0x467e, 0x4134, 0x5140, 0x5141, 0x482c, 0x3878,
+  0x4f3b, 0x5142, 0x3626, 0x4a3c, 0x4236, 0x3671, 0x4535, 0x3773,
+  0x5143, 0x5144, 0x4662, 0x315f, 0x5147, 0x3a7d, 0x5146, 0x3a46,
+  0x5148, 0x666e, 0x5149, 0x4b41, 0x514a, 0x514b, 0x514c, 0x3e69,
+  0x3c4c, 0x3427, 0x514f, 0x514d, 0x4c3d, 0x514e, 0x495a, 0x5150,
+  0x5151, 0x5152, 0x455f, 0x5156, 0x5154, 0x5155, 0x5153, 0x3a63,
+  0x5157, 0x4c6a, 0x4e64, 0x5158, 0x4028, 0x5159, 0x3d5a, 0x515a,
+  0x437c, 0x4e3f, 0x4560, 0x5245, 0x515b, 0x7425, 0x3645, 0x515c,
+  0x4b5e, 0x3d68, 0x427c, 0x515e, 0x4664, 0x515f, 0x5160, 0x332e,
+  0x5161, 0x3627, 0x464c, 0x317a, 0x3d50, 0x4821, 0x5162, 0x4561,
+  0x3f4f, 0x5163, 0x4a2c, 0x405a, 0x3422, 0x3429, 0x5164, 0x5166,
+  0x373a, 0x5165, 0x4e73, 0x3d69, 0x483d, 0x4a4c, 0x5167, 0x4d78,
+  0x5168, 0x5169, 0x457e, 0x516a, 0x4029, 0x3a7e, 0x3774, 0x516b,
+  0x3b49, 0x396f, 0x4466, 0x516d, 0x4227, 0x3a6f, 0x516e, 0x516f,
+  0x4130, 0x516c, 0x5171, 0x4b36, 0x3964, 0x5170, 0x3775, 0x3a5e,
+  0x476d, 0x5174, 0x5172, 0x497b, 0x3e6a, 0x517b, 0x3364, 0x5175,
+  0x5173, 0x414f, 0x5177, 0x5176, 0x3344, 0x3760, 0x517c, 0x4e2d,
+  0x5178, 0x517d, 0x517a, 0x5179, 0x4e4f, 0x3879, 0x3243, 0x4e74,
+  0x3d75, 0x4558, 0x3965, 0x5222, 0x5223, 0x4e65, 0x4f2b, 0x5225,
+  0x387a, 0x5224, 0x332f, 0x5226, 0x4b56, 0x443c, 0x4d26, 0x4a59,
+  0x5227, 0x7055, 0x4630, 0x5228, 0x342a, 0x4c33, 0x3e21, 0x5229,
+  0x4a67, 0x522d, 0x402a, 0x522a, 0x3650, 0x522b, 0x342b, 0x372e,
+  0x522e, 0x522f, 0x5230, 0x5231, 0x3c5b, 0x387b, 0x4c5e, 0x4c68,
+  0x4677, 0x4a71, 0x5232, 0x5233, 0x5235, 0x5237, 0x5236, 0x5238,
+  0x323d, 0x4b4c, 0x3a7c, 0x5239, 0x4159, 0x3e22, 0x3629, 0x523a,
+  0x485b, 0x523b, 0x523c, 0x523d, 0x523e, 0x4924, 0x3668, 0x3065,
+  0x463f, 0x523f, 0x3d3d, 0x4069, 0x5241, 0x5240, 0x3e23, 0x3861,
+  0x5243, 0x483e, 0x5244, 0x485c, 0x4234, 0x426e, 0x3628, 0x466e,
+  0x4331, 0x476e, 0x4b4e, 0x5246, 0x406a, 0x3735, 0x5247, 0x5248,
+  0x312c, 0x3075, 0x346d, 0x4228, 0x3551, 0x4d71, 0x524b, 0x3237,
+  0x524a, 0x362a, 0x524c, 0x4c71, 0x524d, 0x4e52, 0x387c, 0x3836,
+  0x524e, 0x5250, 0x524f, 0x3f5f, 0x3139, 0x315e, 0x5251, 0x5252,
+  0x3837, 0x5253, 0x356e, 0x3b32, 0x5254, 0x4b74, 0x3a35, 0x355a,
+  0x4d27, 0x4150, 0x483f, 0x3c7d, 0x3d47, 0x3c68, 0x3c75, 0x3d76,
+  0x4840, 0x5257, 0x3143, 0x4151, 0x387d, 0x3845, 0x3667, 0x525b,
+  0x4321, 0x427e, 0x362b, 0x3e24, 0x525c, 0x525a, 0x3244, 0x4266,
+  0x3c38, 0x3b4b, 0x3126, 0x3370, 0x3966, 0x3b4a, 0x525d, 0x525e,
+  0x3549, 0x3346, 0x3967, 0x3548, 0x445f, 0x3125, 0x4631, 0x4c3e,
+  0x3921, 0x4d79, 0x4547, 0x387e, 0x372f, 0x5267, 0x3663, 0x4b4a,
+  0x485d, 0x5266, 0x345e, 0x5261, 0x5262, 0x5264, 0x5265, 0x355b,
+  0x3f61, 0x4a2d, 0x5263, 0x525f, 0x3863, 0x5260, 0x4f24, 0x4a72,
+  0x4468, 0x3862, 0x3970, 0x5268, 0x465d, 0x526c, 0x3c7e, 0x3c76,
+  0x526f, 0x526d, 0x4c23, 0x526a, 0x5273, 0x526e, 0x5271, 0x3846,
+  0x4c3f, 0x5272, 0x5274, 0x5276, 0x3a70, 0x4f42, 0x526b, 0x5269,
+  0x5275, 0x5270, 0x5278, 0x5323, 0x527a, 0x527e, 0x5321, 0x527b,
+  0x533e, 0x3a69, 0x3331, 0x5279, 0x5325, 0x3076, 0x5324, 0x3025,
+  0x494a, 0x5322, 0x527c, 0x5277, 0x527d, 0x3a48, 0x5326, 0x3077,
+  0x532f, 0x5327, 0x5328, 0x3e25, 0x4b69, 0x532d, 0x532c, 0x452f,
+  0x532e, 0x532b, 0x3134, 0x3a36, 0x3f30, 0x5329, 0x4562, 0x532a,
+  0x3022, 0x5334, 0x4d23, 0x3e27, 0x533a, 0x5339, 0x5330, 0x4243,
+  0x5331, 0x426f, 0x5336, 0x3e26, 0x5333, 0x4c64, 0x373c, 0x5337,
+  0x5338, 0x5335, 0x533b, 0x5332, 0x5341, 0x5346, 0x5342, 0x533d,
+  0x5347, 0x4131, 0x5349, 0x3922, 0x533f, 0x437d, 0x5343, 0x533c,
+  0x342d, 0x346e, 0x3365, 0x5344, 0x5340, 0x3776, 0x534a, 0x5348,
+  0x4153, 0x354a, 0x362c, 0x5345, 0x3674, 0x3144, 0x534e, 0x534c,
+  0x5427, 0x5351, 0x534b, 0x534f, 0x534d, 0x3b4c, 0x5350, 0x5353,
+  0x5358, 0x5356, 0x5355, 0x4332, 0x3245, 0x5352, 0x5354, 0x3e28,
+  0x3133, 0x5357, 0x325e, 0x5362, 0x3e7c, 0x535e, 0x535c, 0x535d,
+  0x535f, 0x313d, 0x4139, 0x5359, 0x535a, 0x337a, 0x5361, 0x346f,
+  0x5364, 0x5360, 0x5363, 0x4a2e, 0x4655, 0x4838, 0x5366, 0x5365,
+  0x3345, 0x5367, 0x536a, 0x5369, 0x5368, 0x4739, 0x536b, 0x536c,
+  0x536e, 0x536d, 0x5370, 0x5373, 0x5371, 0x536f, 0x5372, 0x5374,
+  0x5375, 0x5376, 0x5377, 0x5378, 0x5145, 0x3c7c, 0x3b4d, 0x3273,
+  0x3078, 0x4344, 0x5379, 0x3a24, 0x304f, 0x3f5e, 0x537a, 0x3847,
+  0x3971, 0x537c, 0x537b, 0x4a60, 0x537d, 0x5421, 0x537e, 0x5422,
+  0x5423, 0x3777, 0x3160, 0x5424, 0x5426, 0x5425, 0x5428, 0x455a,
+  0x5429, 0x3035, 0x3a5f, 0x373d, 0x434f, 0x542a, 0x542b, 0x542d,
+  0x542e, 0x3a64, 0x3651, 0x4b37, 0x542c, 0x542f, 0x3a41, 0x3923,
+  0x5433, 0x3a25, 0x4333, 0x5430, 0x445a, 0x5434, 0x3f62, 0x5432,
+  0x5435, 0x373f, 0x5436, 0x5437, 0x3924, 0x3340, 0x5439, 0x543a,
+  0x543b, 0x5438, 0x5431, 0x543c, 0x543d, 0x4b64, 0x3e6b, 0x543f,
+  0x5440, 0x543e, 0x5442, 0x4738, 0x3068, 0x4956, 0x5443, 0x3e7d,
+  0x3c39, 0x475d, 0x3470, 0x3a6b, 0x4b59, 0x4632, 0x3778, 0x424f,
+  0x5441, 0x5444, 0x4244, 0x5445, 0x5446, 0x5448, 0x4469, 0x342e,
+  0x7421, 0x3161, 0x4a73, 0x3e6c, 0x4548, 0x3a66, 0x544e, 0x4a3d,
+  0x4e5d, 0x3274, 0x544a, 0x413a, 0x544d, 0x4563, 0x4549, 0x4564,
+  0x4839, 0x444d, 0x3a49, 0x5449, 0x3176, 0x4536, 0x544b, 0x5447,
+  0x3f50, 0x544f, 0x3d4e, 0x362d, 0x5450, 0x4a68, 0x417d, 0x4446,
+  0x5452, 0x4b4f, 0x5453, 0x5458, 0x4a2f, 0x5457, 0x5451, 0x5454,
+  0x5456, 0x3a26, 0x4a49, 0x5459, 0x4345, 0x3275, 0x3e6d, 0x545b,
+  0x545a, 0x3968, 0x545c, 0x545e, 0x545d, 0x5460, 0x5455, 0x5462,
+  0x5461, 0x545f, 0x3b4e, 0x3f51, 0x4154, 0x5463, 0x403c, 0x306d,
+  0x4764, 0x445b, 0x5465, 0x5464, 0x5466, 0x5467, 0x5468, 0x5469,
+  0x4a51, 0x546a, 0x3246, 0x546b, 0x4d3c, 0x3330, 0x5249, 0x3d48,
+  0x423f, 0x546c, 0x4c6b, 0x4c34, 0x546e, 0x4267, 0x4537, 0x4240,
+  0x4957, 0x546f, 0x5470, 0x317b, 0x3c3a, 0x5471, 0x3050, 0x5472,
+  0x5473, 0x3162, 0x3471, 0x4660, 0x4a74, 0x5477, 0x4155, 0x5476,
+  0x3740, 0x4b5b, 0x5475, 0x4565, 0x5479, 0x5478, 0x547b, 0x547a,
+  0x317c, 0x547c, 0x3e29, 0x547e, 0x4325, 0x547d, 0x4a33, 0x3d77,
+  0x455b, 0x5521, 0x3925, 0x5522, 0x4721, 0x485e, 0x4c51, 0x4725,
+  0x552b, 0x3538, 0x4d45, 0x4c2f, 0x562c, 0x5523, 0x5526, 0x4245,
+  0x4b38, 0x454a, 0x5527, 0x4b65, 0x3a4a, 0x3e2a, 0x5528, 0x3b50,
+  0x3b4f, 0x3039, 0x3848, 0x402b, 0x3051, 0x552c, 0x552d, 0x552a,
+  0x3138, 0x342f, 0x5529, 0x4c45, 0x4931, 0x3028, 0x3079, 0x3b51,
+  0x3052, 0x3023, 0x5532, 0x5530, 0x4c3c, 0x5533, 0x5531, 0x552f,
+  0x3f31, 0x552e, 0x4a5a, 0x3864, 0x5537, 0x5538, 0x3e2b, 0x5534,
+  0x4f2c, 0x474c, 0x5536, 0x3a27, 0x5539, 0x4958, 0x553a, 0x5535,
+  0x4c3b, 0x475e, 0x553b, 0x4932, 0x553c, 0x5540, 0x553d, 0x3247,
+  0x553f, 0x3c3b, 0x553e, 0x3779, 0x554c, 0x5545, 0x5542, 0x4364,
+  0x5541, 0x5543, 0x5544, 0x5546, 0x5547, 0x3472, 0x5549, 0x5548,
+  0x554a, 0x3e6e, 0x554d, 0x445c, 0x3145, 0x554b, 0x554e, 0x554f,
+  0x5552, 0x5550, 0x5551, 0x3b52, 0x5553, 0x3926, 0x5554, 0x3b7a,
+  0x4238, 0x5555, 0x5556, 0x3b5a, 0x3927, 0x4c52, 0x3528, 0x3849,
+  0x5557, 0x3358, 0x5558, 0x4239, 0x5559, 0x5623, 0x555a, 0x555b,
+  0x555c, 0x555e, 0x555f, 0x5560, 0x4270, 0x3127, 0x3c69, 0x3042,
+  0x4157, 0x3430, 0x3c35, 0x3928, 0x4566, 0x3d21, 0x3431, 0x4368,
+  0x446a, 0x3038, 0x3539, 0x4a75, 0x3c42, 0x3552, 0x406b, 0x3c3c,
+  0x4d28, 0x5561, 0x355c, 0x3a4b, 0x3332, 0x3163, 0x3e2c, 0x3248,
+  0x5562, 0x4d46, 0x3d49, 0x3c64, 0x5563, 0x3473, 0x4652, 0x4c29,
+  0x5564, 0x5565, 0x4959, 0x5567, 0x3428, 0x3677, 0x5566, 0x3432,
+  0x3f32, 0x556b, 0x3b21, 0x3249, 0x556a, 0x5568, 0x556c, 0x5569,
+  0x472b, 0x5c4d, 0x3f33, 0x556d, 0x4e40, 0x556e, 0x5570, 0x437e,
+  0x556f, 0x4023, 0x3b7b, 0x4250, 0x3c77, 0x4975, 0x406c, 0x3c4d,
+  0x5571, 0x3e2d, 0x5572, 0x5573, 0x3053, 0x423a, 0x3f52, 0x5574,
+  0x4633, 0x3e2e, 0x3e2f, 0x5575, 0x406d, 0x3e30, 0x5576, 0x5577,
+  0x4c60, 0x5578, 0x3646, 0x3d22, 0x5579, 0x557a, 0x3c5c, 0x3f2c,
+  0x4674, 0x3f54, 0x4878, 0x4722, 0x3649, 0x557b, 0x356f, 0x557c,
+  0x367e, 0x464f, 0x3230, 0x3b53, 0x557d, 0x5622, 0x5621, 0x367d,
+  0x557e, 0x4538, 0x4230, 0x454b, 0x3c48, 0x4158, 0x4d7a, 0x5624,
+  0x5625, 0x4656, 0x3b33, 0x5627, 0x5628, 0x5629, 0x3474, 0x562a,
+  0x562b, 0x322c, 0x413b, 0x3464, 0x562d, 0x4c28, 0x4252, 0x3359,
+  0x562f, 0x5631, 0x345f, 0x562e, 0x5630, 0x5633, 0x5632, 0x5634,
+  0x5635, 0x463d, 0x362e, 0x3265, 0x5636, 0x563b, 0x5639, 0x4a77,
+  0x4a76, 0x4567, 0x5638, 0x3d54, 0x5637, 0x3f72, 0x563c, 0x3a6a,
+  0x5642, 0x5643, 0x563d, 0x3333, 0x563e, 0x5647, 0x5646, 0x5645,
+  0x5641, 0x5640, 0x5644, 0x4a78, 0x564b, 0x5648, 0x564a, 0x4d72,
+  0x5649, 0x563f, 0x3f73, 0x564c, 0x3a37, 0x564d, 0x564e, 0x5651,
+  0x5650, 0x564f, 0x4568, 0x563a, 0x5657, 0x5653, 0x5652, 0x5654,
+  0x5655, 0x5658, 0x4e66, 0x5659, 0x5656, 0x565a, 0x3460, 0x565b,
+  0x565d, 0x565c, 0x565e, 0x565f, 0x406e, 0x3d23, 0x3d64, 0x4163,
+  0x3929, 0x3a38, 0x392a, 0x3570, 0x5660, 0x3a39, 0x384a, 0x5661,
+  0x4c26, 0x4743, 0x5662, 0x392b, 0x342c, 0x4327, 0x3652, 0x3b54,
+  0x495b, 0x4841, 0x5663, 0x3475, 0x5666, 0x4421, 0x5665, 0x5664,
+  0x5667, 0x446b, 0x3f63, 0x3b55, 0x404a, 0x4253, 0x3522, 0x4422,
+  0x5668, 0x5669, 0x3e6f, 0x4b39, 0x566c, 0x566b, 0x566a, 0x497d,
+  0x5673, 0x4b5a, 0x566d, 0x566f, 0x4b6b, 0x566e, 0x5670, 0x4828,
+  0x5671, 0x4a3e, 0x5672, 0x3433, 0x4a3f, 0x472f, 0x5674, 0x5675,
+  0x392c, 0x3434, 0x5676, 0x3838, 0x4d44, 0x4d29, 0x3476, 0x5678,
+  0x4423, 0x392d, 0x3e31, 0x485f, 0x3e32, 0x3d78, 0x446c, 0x4a79,
+  0x4539, 0x392e, 0x495c, 0x5679, 0x4559, 0x3a42, 0x384b, 0x446d,
+  0x3043, 0x3d6e, 0x392f, 0x4d47, 0x567a, 0x567b, 0x4751, 0x567c,
+  0x4e77, 0x4f2d, 0x567e, 0x567d, 0x3347, 0x5721, 0x5724, 0x5725,
+  0x5723, 0x4940, 0x3e33, 0x5727, 0x5726, 0x5722, 0x5728, 0x5729,
+  0x572a, 0x572d, 0x572b, 0x572c, 0x572e, 0x3164, 0x446e, 0x572f,
+  0x377a, 0x3276, 0x4736, 0x5730, 0x467b, 0x4a5b, 0x5731, 0x4f2e,
+  0x5732, 0x4a40, 0x5735, 0x5021, 0x5031, 0x3c30, 0x4675, 0x5736,
+  0x355d, 0x4424, 0x307a, 0x5737, 0x4a26, 0x3930, 0x4350, 0x446f,
+  0x4c6f, 0x3839, 0x384c, 0x5738, 0x5739, 0x573f, 0x3c65, 0x4425,
+  0x362f, 0x573a, 0x492b, 0x4346, 0x573b, 0x573c, 0x3630, 0x573d,
+  0x573e, 0x5740, 0x4576, 0x5741, 0x5742, 0x5743, 0x5734, 0x5733,
+  0x5744, 0x3741, 0x4927, 0x3a4c, 0x4937, 0x4426, 0x494b, 0x5745,
+  0x3e34, 0x3146, 0x5746, 0x5747, 0x4c72, 0x4860, 0x574a, 0x317d,
+  0x402c, 0x5749, 0x5748, 0x3742, 0x4254, 0x574e, 0x574c, 0x574b,
+  0x4e27, 0x3865, 0x3d79, 0x574d, 0x454c, 0x3d3e, 0x4640, 0x5751,
+  0x5750, 0x574f, 0x5752, 0x3866, 0x5753, 0x497c, 0x3d5b, 0x5754,
+  0x4879, 0x4641, 0x4427, 0x4530, 0x5755, 0x352b, 0x3f34, 0x492c,
+  0x3477, 0x4726, 0x5756, 0x3b56, 0x4b3a, 0x4b3b, 0x317e, 0x575b,
+  0x4369, 0x5758, 0x3277, 0x582d, 0x575a, 0x4730, 0x5759, 0x5757,
+  0x397a, 0x575d, 0x5763, 0x5769, 0x5761, 0x455c, 0x5766, 0x495d,
+  0x5760, 0x5765, 0x4e67, 0x3b57, 0x4255, 0x575e, 0x355e, 0x5768,
+  0x402d, 0x3165, 0x5762, 0x3278, 0x5767, 0x3631, 0x5764, 0x576a,
+  0x576c, 0x5776, 0x5774, 0x5771, 0x5770, 0x4e78, 0x5772, 0x3632,
+  0x3931, 0x3d7a, 0x5779, 0x576b, 0x576f, 0x575f, 0x327a, 0x5773,
+  0x5775, 0x4351, 0x3a28, 0x3238, 0x576d, 0x5778, 0x5777, 0x3633,
+  0x4229, 0x3366, 0x3743, 0x576e, 0x577a, 0x577d, 0x5821, 0x3c3d,
+  0x5827, 0x4470, 0x577b, 0x5825, 0x3279, 0x5823, 0x5824, 0x577e,
+  0x5822, 0x3867, 0x4d2a, 0x3435, 0x3159, 0x5826, 0x473a, 0x302d,
+  0x4861, 0x575c, 0x582c, 0x5830, 0x4c65, 0x5829, 0x4569, 0x582e,
+  0x3e70, 0x582f, 0x4657, 0x4f47, 0x582b, 0x5831, 0x397b, 0x404b,
+  0x3054, 0x582a, 0x5828, 0x415a, 0x577c, 0x3b34, 0x4246, 0x583d,
+  0x415b, 0x5838, 0x5835, 0x5836, 0x3c66, 0x5839, 0x583c, 0x5837,
+  0x3d25, 0x583a, 0x5834, 0x4c7c, 0x4c7b, 0x583e, 0x583f, 0x3055,
+  0x5833, 0x3672, 0x3026, 0x3436, 0x583b, 0x5843, 0x5842, 0x5847,
+  0x5848, 0x5846, 0x5849, 0x5841, 0x5845, 0x584a, 0x584b, 0x5840,
+  0x3b7c, 0x5844, 0x4256, 0x3932, 0x5832, 0x3f35, 0x5858, 0x4a69,
+  0x584e, 0x584f, 0x5850, 0x5857, 0x5856, 0x4b7d, 0x3437, 0x5854,
+  0x3745, 0x3334, 0x5851, 0x4e38, 0x5853, 0x3056, 0x5855, 0x584c,
+  0x5852, 0x5859, 0x3744, 0x584d, 0x4d5d, 0x4d2b, 0x585c, 0x5860,
+  0x417e, 0x4e79, 0x5861, 0x585e, 0x585b, 0x585a, 0x585f, 0x4a30,
+  0x4634, 0x3746, 0x5862, 0x585d, 0x5863, 0x377b, 0x3231, 0x586b,
+  0x3438, 0x5869, 0x586a, 0x3a29, 0x5868, 0x5866, 0x5865, 0x586c,
+  0x5864, 0x586e, 0x327b, 0x5870, 0x586f, 0x4428, 0x5873, 0x5871,
+  0x5867, 0x377c, 0x5872, 0x5876, 0x5875, 0x5877, 0x5874, 0x5878,
+  0x5879, 0x587a, 0x4a6a, 0x587c, 0x587b, 0x3d3f, 0x402e, 0x3266,
+  0x327c, 0x587d, 0x303f, 0x404c, 0x587e, 0x6c43, 0x5921, 0x3761,
+  0x5922, 0x406f, 0x5923, 0x5924, 0x353a, 0x5925, 0x5926, 0x5927,
+  0x4257, 0x384d, 0x4c61, 0x4b3c, 0x3d6a, 0x5928, 0x4070, 0x6e3d,
+  0x4862, 0x3c6a, 0x3a4d, 0x5929, 0x4247, 0x4a27, 0x4271, 0x592c,
+  0x592a, 0x592d, 0x592b, 0x592e, 0x4a31, 0x3037, 0x495e, 0x4863,
+  0x592f, 0x5932, 0x3e35, 0x353b, 0x5930, 0x5937, 0x3e36, 0x5931,
+  0x4744, 0x4d5e, 0x5933, 0x5934, 0x5938, 0x456a, 0x5935, 0x3933,
+  0x405e, 0x5946, 0x4834, 0x4272, 0x4864, 0x5a2d, 0x4a7a, 0x4471,
+  0x4b75, 0x593b, 0x3221, 0x436a, 0x5944, 0x4334, 0x593e, 0x5945,
+  0x5940, 0x5947, 0x5943, 0x5942, 0x476f, 0x593c, 0x327d, 0x593a,
+  0x3571, 0x4273, 0x5936, 0x5939, 0x3934, 0x405b, 0x3e37, 0x5941,
+  0x4752, 0x3572, 0x3348, 0x3367, 0x3f21, 0x5949, 0x594e, 0x594a,
+  0x377d, 0x594f, 0x3b22, 0x3969, 0x3d26, 0x593d, 0x3b7d, 0x594c,
+  0x3b58, 0x594d, 0x3044, 0x5948, 0x4429, 0x3573, 0x3634, 0x594b,
+  0x3027, 0x3a43, 0x3f36, 0x4472, 0x4854, 0x5951, 0x415e, 0x422a,
+  0x3b2b, 0x5952, 0x5954, 0x5950, 0x4a61, 0x443d, 0x415c, 0x4a7b,
+  0x3c4e, 0x5960, 0x595f, 0x3f78, 0x377e, 0x5959, 0x3e39, 0x4668,
+  0x4731, 0x5957, 0x415d, 0x3c78, 0x595c, 0x3e38, 0x5956, 0x595b,
+  0x4753, 0x5955, 0x3721, 0x335d, 0x595d, 0x4e2b, 0x3a4e, 0x4335,
+  0x595a, 0x405c, 0x3935, 0x3f64, 0x3166, 0x413c, 0x5958, 0x3545,
+  0x3747, 0x444f, 0x595e, 0x415f, 0x5961, 0x5963, 0x4237, 0x5969,
+  0x5964, 0x5966, 0x4941, 0x4473, 0x5967, 0x4d2c, 0x4d48, 0x3439,
+  0x302e, 0x5965, 0x5962, 0x3478, 0x3167, 0x5968, 0x4d49, 0x596c,
+  0x423b, 0x5973, 0x596d, 0x596a, 0x5971, 0x5953, 0x596e, 0x5972,
+  0x4842, 0x456b, 0x596b, 0x596f, 0x3748, 0x3a71, 0x405d, 0x5977,
+  0x4526, 0x5974, 0x4b60, 0x5975, 0x5976, 0x4c4e, 0x4022, 0x3762,
+  0x597d, 0x3b35, 0x597a, 0x5979, 0x4732, 0x4635, 0x4531, 0x597b,
+  0x597c, 0x496f, 0x4745, 0x3b23, 0x4071, 0x4b50, 0x3349, 0x5a25,
+  0x597e, 0x4d4a, 0x5a27, 0x5a23, 0x5a24, 0x4160, 0x5a22, 0x593f,
+  0x5a26, 0x5a21, 0x5a2b, 0x5a2c, 0x4527, 0x5a2e, 0x3b24, 0x5a29,
+  0x353c, 0x5a2f, 0x5a28, 0x5a33, 0x5a32, 0x5a31, 0x5a34, 0x5a36,
+  0x3e71, 0x5a35, 0x5a39, 0x5a37, 0x5a38, 0x5970, 0x5a3b, 0x5a3a,
+  0x5978, 0x5a3c, 0x5a30, 0x3b59, 0x5a3d, 0x5a3e, 0x5a40, 0x5a3f,
+  0x5a41, 0x327e, 0x3936, 0x4a7c, 0x402f, 0x384e, 0x5a43, 0x5a46,
+  0x4952, 0x355f, 0x5a45, 0x5a44, 0x4754, 0x5a47, 0x3635, 0x5a49,
+  0x5a48, 0x343a, 0x3b36, 0x4658, 0x3749, 0x3f74, 0x5a4a, 0x4030,
+  0x4528, 0x495f, 0x5a4b, 0x5a4c, 0x5a4d, 0x4a38, 0x555d, 0x4046,
+  0x494c, 0x3a58, 0x4865, 0x4843, 0x454d, 0x4e41, 0x5a4f, 0x3c50,
+  0x5a50, 0x3036, 0x3654, 0x404d, 0x4960, 0x5a51, 0x3b42, 0x4347,
+  0x3b5b, 0x3f37, 0x5a52, 0x4a7d, 0x3177, 0x3b5c, 0x5a55, 0x5a53,
+  0x5a56, 0x4e39, 0x5a54, 0x407b, 0x5a57, 0x4232, 0x5a58, 0x347a,
+  0x5a5a, 0x5a59, 0x5a5b, 0x5a5c, 0x347b, 0x467c, 0x4336, 0x356c,
+  0x3b5d, 0x4161, 0x3d5c, 0x3030, 0x5a5d, 0x3222, 0x5a61, 0x3937,
+  0x5a60, 0x3a2b, 0x3e3a, 0x5a5f, 0x3e3b, 0x4c40, 0x3a2a, 0x3057,
+  0x404e, 0x5a66, 0x4031, 0x3147, 0x3d55, 0x4b66, 0x3a72, 0x3e3c,
+  0x4027, 0x5a65, 0x5a63, 0x5a64, 0x436b, 0x5b26, 0x5a6a, 0x3b7e,
+  0x3938, 0x5a68, 0x5a69, 0x3f38, 0x5a67, 0x3b2f, 0x5a6c, 0x5a6b,
+  0x5a70, 0x5a71, 0x5a6d, 0x3322, 0x5a6e, 0x5a6f, 0x4855, 0x4961,
+  0x374a, 0x5a72, 0x4032, 0x3e3d, 0x4352, 0x3647, 0x5a73, 0x5a77,
+  0x324b, 0x5a74, 0x5a76, 0x5a75, 0x3d6b, 0x4348, 0x3045, 0x5a78,
+  0x5a79, 0x442a, 0x4e71, 0x3b43, 0x4a6b, 0x4b3d, 0x5b22, 0x5a7b,
+  0x5a7e, 0x5a7d, 0x5a7a, 0x5b21, 0x465e, 0x5a7c, 0x5b23, 0x3d6c,
+  0x5b24, 0x4d4b, 0x4778, 0x5b25, 0x5b27, 0x5b28, 0x5b29, 0x364a,
+  0x3148, 0x3939, 0x5b2a, 0x5b2b, 0x3d71, 0x4162, 0x5258, 0x413e,
+  0x413d, 0x4258, 0x3a47, 0x5072, 0x376e, 0x4d2d, 0x4a7e, 0x497e,
+  0x5b2c, 0x3a73, 0x443f, 0x5b2d, 0x4f2f, 0x4b3e, 0x442b, 0x5b2e,
+  0x347c, 0x5b2f, 0x5b30, 0x4c5a, 0x4c24, 0x4b76, 0x4b5c, 0x3b25,
+  0x5b32, 0x3c6b, 0x4b51, 0x5b34, 0x5b37, 0x5b36, 0x3479, 0x3560,
+  0x5b33, 0x5b35, 0x5b38, 0x3f79, 0x4d7b, 0x3049, 0x3a60, 0x423c,
+  0x3c5d, 0x3e73, 0x5b3b, 0x454e, 0x5b39, 0x422b, 0x5b3a, 0x3e72,
+  0x4c5d, 0x5b3c, 0x5b3d, 0x4d68, 0x5b42, 0x393a, 0x4755, 0x5b3f,
+  0x456c, 0x5a5e, 0x5a62, 0x354f, 0x4747, 0x5b41, 0x3e3e, 0x4844,
+  0x5b47, 0x487a, 0x5b3e, 0x5b44, 0x5b43, 0x404f, 0x4b6d, 0x4e53,
+  0x4b67, 0x324c, 0x3b5e, 0x4f48, 0x5b46, 0x3f75, 0x5b45, 0x5b40,
+  0x384f, 0x5b4c, 0x5b4a, 0x324d, 0x5b48, 0x5b4e, 0x5b54, 0x4248,
+  0x4a41, 0x5b56, 0x4922, 0x5b55, 0x4770, 0x4b3f, 0x343b, 0x4077,
+  0x3d40, 0x4453, 0x4d2e, 0x5b51, 0x5b50, 0x5b52, 0x5b4f, 0x5b57,
+  0x5b4d, 0x5b4b, 0x5b53, 0x5b49, 0x436c, 0x4c78, 0x3c46, 0x3a74,
+  0x3a3a, 0x4b6f, 0x3341, 0x444e, 0x464a, 0x3149, 0x4072, 0x4034,
+  0x372a, 0x5b59, 0x393b, 0x337c, 0x5b5b, 0x3374, 0x5b61, 0x5b5e,
+  0x4073, 0x334b, 0x3a2c, 0x334a, 0x3a4f, 0x5b5c, 0x3765, 0x374b,
+  0x456d, 0x5b5a, 0x3046, 0x5b5d, 0x5b5f, 0x364d, 0x372c, 0x343c,
+  0x354b, 0x5b62, 0x3a79, 0x4b71, 0x3b37, 0x5b63, 0x4930, 0x5b6f,
+  0x3233, 0x5b64, 0x5b75, 0x5b65, 0x4e42, 0x5b6c, 0x475f, 0x5b74,
+  0x5b67, 0x3034, 0x5b69, 0x393c, 0x5b6b, 0x5b6a, 0x5b66, 0x5b71,
+  0x3e3f, 0x546d, 0x3868, 0x4d7c, 0x5b68, 0x4474, 0x3323, 0x3a2d,
+  0x5b60, 0x5b70, 0x3361, 0x5b6e, 0x5b72, 0x456e, 0x347e, 0x5c32,
+  0x4c49, 0x5b77, 0x347d, 0x5b7e, 0x4b40, 0x5c21, 0x5c23, 0x5c27,
+  0x5b79, 0x432a, 0x456f, 0x5c2b, 0x5b7c, 0x5c28, 0x5c22, 0x3f39,
+  0x5c2c, 0x4033, 0x5c2a, 0x343d, 0x4f50, 0x5b76, 0x5c26, 0x3058,
+  0x5b78, 0x4c3a, 0x5b7d, 0x3f22, 0x4447, 0x5b73, 0x5c25, 0x3f7a,
+  0x5c2f, 0x3371, 0x3821, 0x5c31, 0x5b7a, 0x5c30, 0x5c29, 0x5b7b,
+  0x5c2d, 0x5c2e, 0x5c3f, 0x464e, 0x5c24, 0x5c3b, 0x5c3d, 0x4458,
+  0x4d4c, 0x4976, 0x5c38, 0x424a, 0x5c3e, 0x413f, 0x5c35, 0x5c42,
+  0x5c41, 0x466f, 0x5c40, 0x466a, 0x5c44, 0x5c37, 0x3648, 0x5c3a,
+  0x3d5d, 0x4760, 0x5c3c, 0x364b, 0x5c34, 0x5c36, 0x5c33, 0x4f30,
+  0x335a, 0x5c39, 0x5c43, 0x3335, 0x3a67, 0x315d, 0x5c54, 0x4f31,
+  0x5c57, 0x3f3a, 0x5c56, 0x5c55, 0x5c52, 0x5c46, 0x5c63, 0x5c45,
+  0x5c58, 0x5c50, 0x5c4b, 0x5c48, 0x5c49, 0x5c51, 0x7422, 0x5c4e,
+  0x393d, 0x4448, 0x4164, 0x5c4c, 0x5c47, 0x5c4a, 0x4d4d, 0x4b6a,
+  0x5c4f, 0x5c59, 0x5c61, 0x5c5a, 0x5c67, 0x5c65, 0x5c60, 0x5c5f,
+  0x4450, 0x4165, 0x5c5d, 0x5c5b, 0x5c62, 0x5c68, 0x4875, 0x5c6e,
+  0x5c69, 0x5c6c, 0x5c66, 0x4374, 0x4938, 0x5c5c, 0x5c64, 0x3e40,
+  0x4c4f, 0x5c78, 0x5c6b, 0x3822, 0x3223, 0x335f, 0x5c53, 0x3e41,
+  0x5c70, 0x5c77, 0x3c79, 0x3372, 0x432e, 0x5c6d, 0x5c72, 0x5c76,
+  0x3636, 0x354c, 0x5c74, 0x3521, 0x464b, 0x5c73, 0x5c75, 0x5c6f,
+  0x5c71, 0x3360, 0x4349, 0x5c7c, 0x5c7a, 0x3869, 0x5c79, 0x5d21,
+  0x5b58, 0x5c7b, 0x5c7d, 0x5c7e, 0x5d2c, 0x5d28, 0x5b6d, 0x5d27,
+  0x5d26, 0x5d23, 0x5c6a, 0x5d25, 0x5d24, 0x5d2a, 0x4f26, 0x5d2d,
+  0x367b, 0x5d29, 0x5d2b, 0x4827, 0x5d2e, 0x5d32, 0x5d2f, 0x4d73,
+  0x5d30, 0x5c5e, 0x5d33, 0x5d34, 0x3135, 0x5d36, 0x3767, 0x3c21,
+  0x3655, 0x3224, 0x4d5f, 0x5d38, 0x5d37, 0x5d3a, 0x353d, 0x3656,
+  0x343e, 0x5d3d, 0x5d3c, 0x5d3e, 0x324e, 0x4337, 0x5d3f, 0x343f,
+  0x5d41, 0x5d40, 0x5d42, 0x5d43, 0x5d44, 0x3b5f, 0x4035, 0x3a21,
+  0x4970, 0x4a62, 0x4f44, 0x3b75, 0x3a50, 0x4e72, 0x5d45, 0x5d46,
+  0x3b60, 0x5d47, 0x5d48, 0x5d4a, 0x5d49, 0x4b58, 0x3d5e, 0x3c6c,
+  0x3b44, 0x5d4b, 0x5d4d, 0x3f23, 0x5d4c, 0x5d4e, 0x5d4f, 0x5d50,
+  0x5d51, 0x5d52, 0x5d54, 0x5d53, 0x5d55, 0x3225, 0x434a, 0x5d56,
+  0x3b26, 0x334c, 0x5d57, 0x4542, 0x544c, 0x3523, 0x5d58, 0x5d59,
+  0x4a6c, 0x4b68, 0x4647, 0x5d5a, 0x4866, 0x487b, 0x4c53, 0x5d5b,
+  0x5d5d, 0x5d5c, 0x5d5f, 0x5d5e, 0x5d61, 0x3b61, 0x4c31, 0x5d62,
+  0x5d63, 0x3524, 0x5d64, 0x5d66, 0x5d65, 0x3f65, 0x4939, 0x314a,
+  0x4845, 0x4475, 0x3d41, 0x3561, 0x4846, 0x3c2e, 0x5d68, 0x3440,
+  0x3178, 0x4672, 0x5d67, 0x393e, 0x4353, 0x5d69, 0x5d71, 0x5d6a,
+  0x4241, 0x3562, 0x5d72, 0x3768, 0x3525, 0x5d70, 0x5d6e, 0x5d6b,
+  0x4d60, 0x4440, 0x4659, 0x5d6c, 0x5d74, 0x5d73, 0x3723, 0x322d,
+  0x3a3b, 0x5d6d, 0x5d6f, 0x4b57, 0x4274, 0x4b77, 0x5d7c, 0x5d7d,
+  0x324f, 0x4a28, 0x4c7d, 0x5e21, 0x3c23, 0x3e42, 0x5d78, 0x5d7e,
+  0x3168, 0x3637, 0x5d75, 0x5d7a, 0x4074, 0x4771, 0x4867, 0x5d77,
+  0x4b21, 0x5d79, 0x5e24, 0x5e22, 0x5d7b, 0x4b22, 0x4748, 0x3563,
+  0x4525, 0x436d, 0x5e25, 0x5e23, 0x4259, 0x5d76, 0x314b, 0x4d4e,
+  0x5e30, 0x5e2f, 0x4076, 0x5e2c, 0x4d6c, 0x4636, 0x5e26, 0x4445,
+  0x314c, 0x393f, 0x5e29, 0x3d27, 0x5e2e, 0x5e2d, 0x5e28, 0x5e2b,
+  0x3368, 0x5e2a, 0x4749, 0x4e2e, 0x3e74, 0x4075, 0x5e36, 0x5e34,
+  0x494d, 0x5e31, 0x5e33, 0x313a, 0x3940, 0x4f32, 0x333d, 0x4962,
+  0x4d61, 0x3324, 0x3f3b, 0x5e35, 0x5e3a, 0x3e43, 0x4d30, 0x5e37,
+  0x5e32, 0x5e38, 0x4e5e, 0x4573, 0x4642, 0x3336, 0x3155, 0x5e3e,
+  0x5e41, 0x4e43, 0x4d64, 0x5e48, 0x5e42, 0x5e3f, 0x4e54, 0x5e45,
+  0x3d4a, 0x5e47, 0x5e4c, 0x4571, 0x5e4a, 0x5e44, 0x4338, 0x5e4b,
+  0x5e40, 0x5e46, 0x5e4d, 0x307c, 0x5e43, 0x5e4e, 0x3f3c, 0x3d5f,
+  0x4a25, 0x3a2e, 0x5e3b, 0x5e49, 0x453a, 0x4036, 0x3369, 0x3a51,
+  0x3e44, 0x5e3d, 0x3d42, 0x374c, 0x5e3c, 0x5e52, 0x3d6d, 0x383a,
+  0x5e61, 0x5e5b, 0x3574, 0x454f, 0x5e56, 0x5e5f, 0x302f, 0x3132,
+  0x3239, 0x5e58, 0x422c, 0x5e4f, 0x5e51, 0x3941, 0x5e62, 0x5e5d,
+  0x5e55, 0x5e5c, 0x4c2b, 0x5e5a, 0x5e5e, 0x3850, 0x3e45, 0x4339,
+  0x5e54, 0x4d2f, 0x5e57, 0x5e50, 0x4572, 0x5e53, 0x5e59, 0x4f51,
+  0x3c3e, 0x4b7e, 0x5e63, 0x482e, 0x5e6f, 0x383b, 0x3d60, 0x5e65,
+  0x4e2f, 0x3942, 0x5e72, 0x306e, 0x5e70, 0x5e64, 0x5e6a, 0x5e6c,
+  0x4d4f, 0x5e67, 0x452e, 0x5e69, 0x5e71, 0x5e6b, 0x4c47, 0x5e66,
+  0x3c22, 0x5e7e, 0x336a, 0x5e68, 0x5e6d, 0x5e6e, 0x426c, 0x425a,
+  0x5e76, 0x5e7c, 0x5e7a, 0x4529, 0x5f23, 0x5e77, 0x5e78, 0x5e60,
+  0x3579, 0x493a, 0x3c3f, 0x3977, 0x4f33, 0x5e74, 0x5f22, 0x3169,
+  0x4166, 0x4779, 0x3441, 0x4e7a, 0x4c21, 0x4452, 0x5e7b, 0x5e7d,
+  0x4132, 0x5f21, 0x5e79, 0x5e73, 0x3443, 0x3769, 0x5f2f, 0x5f2a,
+  0x4078, 0x3363, 0x3d61, 0x5f33, 0x5f2c, 0x442c, 0x5f29, 0x4459,
+  0x5f4c, 0x5f26, 0x5f25, 0x5f2e, 0x5f28, 0x5f27, 0x5f2d, 0x4021,
+  0x5f24, 0x5f30, 0x5f31, 0x3442, 0x5f36, 0x5f35, 0x5f37, 0x5f3a,
+  0x4543, 0x5f34, 0x5f38, 0x3763, 0x4279, 0x5f32, 0x473b, 0x5f39,
+  0x5f3e, 0x5f3c, 0x5f3f, 0x5f42, 0x5f3b, 0x396a, 0x4728, 0x5e39,
+  0x4d74, 0x5f3d, 0x5f41, 0x4275, 0x5f40, 0x5f2b, 0x6f69, 0x5f45,
+  0x5f49, 0x5f47, 0x5f43, 0x5f44, 0x5f48, 0x5f46, 0x494e, 0x5f4e,
+  0x5f4b, 0x5f4a, 0x5f4d, 0x4654, 0x5f4f, 0x4375, 0x426d, 0x4025,
+  0x5f50, 0x5f52, 0x5f51, 0x5e75, 0x5f53, 0x4667, 0x5f54, 0x3250,
+  0x4574, 0x3325, 0x3564, 0x3c5e, 0x3a52, 0x4f27, 0x3f66, 0x316a,
+  0x5f56, 0x5f55, 0x5f59, 0x433a, 0x5f5c, 0x5f57, 0x5f5b, 0x5f5a,
+  0x4540, 0x3059, 0x4e75, 0x5f5e, 0x3128, 0x5f60, 0x5f5f, 0x5f5d,
+  0x5f58, 0x4b23, 0x5f62, 0x5f61, 0x316b, 0x5f64, 0x4a32, 0x5f63,
+  0x4c35, 0x3e47, 0x4133, 0x3e46, 0x4e7b, 0x5f6a, 0x4079, 0x5f66,
+  0x5f6b, 0x316c, 0x5f69, 0x4761, 0x5f65, 0x5f68, 0x3e48, 0x4851,
+  0x5f6c, 0x3c51, 0x407a, 0x5f6f, 0x5f67, 0x3727, 0x5f6d, 0x4d50,
+  0x5f70, 0x7426, 0x3d4f, 0x5f71, 0x5f72, 0x472e, 0x5f74, 0x5f75,
+  0x4733, 0x4575, 0x5f77, 0x5f79, 0x4e55, 0x5f76, 0x5f78, 0x316d,
+  0x5f73, 0x535b, 0x5f7a, 0x4167, 0x3b38, 0x5f7c, 0x5f7b, 0x3f24,
+  0x5259, 0x5f7d, 0x6021, 0x5f6e, 0x5f7e, 0x6022, 0x477a, 0x6023,
+  0x6024, 0x6025, 0x6026, 0x445e, 0x6028, 0x6027, 0x6029, 0x602a,
+  0x3c5f, 0x4963, 0x4c6c, 0x602b, 0x602c, 0x4156, 0x3c24, 0x602d,
+  0x602e, 0x602f, 0x4a52, 0x4847, 0x6030, 0x4757, 0x442d, 0x6031,
+  0x3267, 0x356d, 0x4c46, 0x4c36, 0x3234, 0x4f34, 0x4b52, 0x4a2a,
+  0x4037, 0x6032, 0x4643, 0x3823, 0x6033, 0x3a54, 0x6035, 0x6034,
+  0x6036, 0x6037, 0x6038, 0x353e, 0x6039, 0x603a, 0x3824, 0x4848,
+  0x603c, 0x3e75, 0x603b, 0x3638, 0x603d, 0x603f, 0x603e, 0x6040,
+  0x3851, 0x6041, 0x3669, 0x4140, 0x397d, 0x6043, 0x6044, 0x6042,
+  0x3c6d, 0x4648, 0x3639, 0x6046, 0x432c, 0x6045, 0x4f35, 0x4762,
+  0x6049, 0x604b, 0x6048, 0x4c54, 0x604a, 0x604c, 0x4e44, 0x6050,
+  0x604f, 0x4376, 0x472d, 0x3825, 0x604e, 0x604d, 0x4d31, 0x4d32,
+  0x6051, 0x316e, 0x3976, 0x3b62, 0x6052, 0x6053, 0x6055, 0x3d43,
+  0x6057, 0x6056, 0x6058, 0x334d, 0x605a, 0x6059, 0x605c, 0x605b,
+  0x383c, 0x4e28, 0x364c, 0x3226, 0x366a, 0x3461, 0x4e68, 0x605e,
+  0x6060, 0x6061, 0x3251, 0x605d, 0x3b39, 0x4441, 0x605f, 0x6064,
+  0x3c6e, 0x6062, 0x373e, 0x4849, 0x6063, 0x607e, 0x6069, 0x383d,
+  0x3565, 0x6066, 0x4d7d, 0x4e30, 0x4276, 0x6068, 0x606a, 0x4e56,
+  0x3657, 0x487c, 0x474a, 0x606b, 0x606d, 0x6070, 0x606c, 0x606f,
+  0x386a, 0x314d, 0x6071, 0x3f70, 0x606e, 0x4e5c, 0x6074, 0x7424,
+  0x6072, 0x6075, 0x6067, 0x6073, 0x3a3c, 0x6076, 0x6077, 0x4d7e,
+  0x6078, 0x6079, 0x6065, 0x607a, 0x3444, 0x3c25, 0x607b, 0x607c,
+  0x607d, 0x313b, 0x6121, 0x493b, 0x6122, 0x3424, 0x6123, 0x6124,
+  0x6125, 0x6127, 0x6128, 0x6126, 0x4953, 0x612a, 0x6129, 0x612c,
+  0x612b, 0x612d, 0x612e, 0x6130, 0x612f, 0x3979, 0x6132, 0x6131,
+  0x3445, 0x3f53, 0x453c, 0x6133, 0x4038, 0x3b3a, 0x3179, 0x6134,
+  0x4d51, 0x4a63, 0x6135, 0x4544, 0x4d33, 0x3943, 0x3f3d, 0x434b,
+  0x5234, 0x442e, 0x3268, 0x6136, 0x6137, 0x613c, 0x613a, 0x6139,
+  0x5a42, 0x3326, 0x6138, 0x305a, 0x482a, 0x484a, 0x4e31, 0x613d,
+  0x613b, 0x435c, 0x4026, 0x482b, 0x492d, 0x613f, 0x4e2c, 0x374d,
+  0x6140, 0x613e, 0x4856, 0x6141, 0x6142, 0x305b, 0x3e76, 0x6147,
+  0x6144, 0x466d, 0x6143, 0x3526, 0x614a, 0x6145, 0x6146, 0x6149,
+  0x6148, 0x4925, 0x4142, 0x4141, 0x353f, 0x614b, 0x614c, 0x614d,
+  0x614f, 0x614e, 0x3156, 0x6157, 0x4868, 0x6151, 0x6153, 0x6155,
+  0x3f3e, 0x6156, 0x6154, 0x3c40, 0x6150, 0x6152, 0x4942, 0x3e49,
+  0x6159, 0x6158, 0x615a, 0x3c26, 0x3a2f, 0x4577, 0x615b, 0x444b,
+  0x615d, 0x4e21, 0x615c, 0x4169, 0x6162, 0x6164, 0x6165, 0x4354,
+  0x6163, 0x6160, 0x615e, 0x615f, 0x6161, 0x6168, 0x6166, 0x6167,
+  0x6169, 0x616b, 0x616c, 0x616d, 0x616e, 0x616a, 0x6170, 0x616f,
+  0x6171, 0x4e45, 0x6174, 0x6172, 0x6173, 0x3462, 0x4c7e, 0x4a4a,
+  0x6176, 0x6175, 0x6177, 0x6178, 0x617c, 0x6179, 0x617a, 0x617b,
+  0x617d, 0x617e, 0x6221, 0x6222, 0x6223, 0x482f, 0x4550, 0x6224,
+  0x4772, 0x4934, 0x6225, 0x6226, 0x452a, 0x3327, 0x3944, 0x6227,
+  0x6228, 0x6229, 0x3b29, 0x622b, 0x622a, 0x622c, 0x622d, 0x4869,
+  0x622e, 0x622f, 0x7369, 0x6230, 0x6231, 0x6232, 0x3b2e, 0x6233,
+  0x4756, 0x4b5f, 0x314e, 0x3157, 0x6234, 0x6236, 0x6235, 0x4570,
+  0x4039, 0x5d39, 0x6237, 0x4c41, 0x6238, 0x3446, 0x4857, 0x6239,
+  0x623a, 0x623b, 0x4c5c, 0x4c55, 0x443e, 0x416a, 0x623d, 0x3d62,
+  0x3e4a, 0x6240, 0x623f, 0x623e, 0x487d, 0x3447, 0x3829, 0x6246,
+  0x6243, 0x3f3f, 0x4c32, 0x6242, 0x6244, 0x6245, 0x6241, 0x6247,
+  0x6248, 0x442f, 0x3463, 0x4365, 0x6249, 0x624a, 0x624d, 0x3f67,
+  0x4644, 0x624e, 0x4b53, 0x624b, 0x624c, 0x6251, 0x6250, 0x624f,
+  0x6253, 0x6252, 0x6254, 0x6256, 0x6255, 0x4a4d, 0x3d56, 0x4e46,
+  0x6257, 0x4637, 0x6258, 0x6259, 0x625d, 0x625b, 0x625c, 0x625a,
+  0x625e, 0x625f, 0x6260, 0x6261, 0x4c37, 0x6262, 0x4c70, 0x6263,
+  0x434e, 0x476a, 0x366b, 0x433b, 0x6264, 0x363a, 0x4050, 0x6265,
+  0x3a3d, 0x6266, 0x6267, 0x3826, 0x3a55, 0x6269, 0x4556, 0x3a56,
+  0x354e, 0x4b24, 0x474b, 0x4557, 0x395c, 0x626b, 0x3e4b, 0x4e32,
+  0x3945, 0x3827, 0x4823, 0x626d, 0x626f, 0x386b, 0x626e, 0x4476,
+  0x6271, 0x3337, 0x626c, 0x486a, 0x3130, 0x3a6c, 0x4f52, 0x6270,
+  0x6272, 0x4a4b, 0x4059, 0x6274, 0x6275, 0x6273, 0x334e, 0x627b,
+  0x627a, 0x3c27, 0x627c, 0x6277, 0x627d, 0x6278, 0x4858, 0x6276,
+  0x6279, 0x6322, 0x6321, 0x4b61, 0x627e, 0x306b, 0x6324, 0x6323,
+  0x3e4c, 0x6325, 0x4143, 0x6327, 0x6326, 0x6328, 0x6268, 0x626a,
+  0x632a, 0x6329, 0x3c28, 0x4e69, 0x3c52, 0x632b, 0x3737, 0x3540,
+  0x3527, 0x3b63, 0x4d34, 0x6331, 0x6330, 0x4144, 0x632d, 0x632f,
+  0x3d4b, 0x3f40, 0x632e, 0x632c, 0x472a, 0x3e4d, 0x493c, 0x3a57,
+  0x4578, 0x6332, 0x6333, 0x6349, 0x3658, 0x4f3d, 0x4135, 0x6334,
+  0x3252, 0x4477, 0x4a21, 0x6335, 0x357a, 0x6336, 0x6338, 0x6339,
+  0x4729, 0x633a, 0x633b, 0x633c, 0x3659, 0x3253, 0x4645, 0x3d28,
+  0x3b64, 0x633d, 0x3d29, 0x324a, 0x4943, 0x633e, 0x486b, 0x4145,
+  0x6341, 0x6342, 0x4769, 0x3f41, 0x633f, 0x4361, 0x6340, 0x3e4e,
+  0x305c, 0x3529, 0x6343, 0x4478, 0x6344, 0x4047, 0x4c2d, 0x4923,
+  0x6345, 0x6346, 0x4355, 0x4e47, 0x6348, 0x6347, 0x3c6f, 0x634a,
+  0x3070, 0x634d, 0x634b, 0x3254, 0x374e, 0x634c, 0x3946, 0x3972,
+  0x4a66, 0x634e, 0x4b54, 0x6350, 0x4051, 0x314f, 0x323a, 0x302c,
+  0x634f, 0x6351, 0x6352, 0x3e77, 0x6353, 0x334f, 0x6355, 0x376a,
+  0x3566, 0x6356, 0x3675, 0x6357, 0x407c, 0x464d, 0x4060, 0x3a75,
+  0x6358, 0x4362, 0x416b, 0x635a, 0x635c, 0x6359, 0x635b, 0x3722,
+  0x635d, 0x3726, 0x3567, 0x4d52, 0x635f, 0x6360, 0x312e, 0x6363,
+  0x3376, 0x6362, 0x6361, 0x6365, 0x635e, 0x6366, 0x4e29, 0x6367,
+  0x6368, 0x5474, 0x636a, 0x6369, 0x636b, 0x636c, 0x4e35, 0x636d,
+  0x706f, 0x3e4f, 0x636e, 0x636f, 0x3d57, 0x4638, 0x6370, 0x4328,
+  0x6371, 0x433c, 0x6372, 0x3625, 0x513f, 0x435d, 0x3c33, 0x3448,
+  0x6373, 0x6422, 0x6376, 0x3568, 0x6375, 0x6424, 0x6374, 0x3e50,
+  0x6378, 0x6379, 0x452b, 0x637a, 0x335e, 0x3f5a, 0x4964, 0x637c,
+  0x4268, 0x6377, 0x637b, 0x637d, 0x3a7b, 0x6426, 0x492e, 0x4826,
+  0x4579, 0x365a, 0x6425, 0x6423, 0x4835, 0x637e, 0x435e, 0x457b,
+  0x457a, 0x3a76, 0x6438, 0x6428, 0x642a, 0x642d, 0x642e, 0x642b,
+  0x642c, 0x6429, 0x6427, 0x6421, 0x4a4f, 0x3255, 0x6435, 0x6432,
+  0x6437, 0x6436, 0x4773, 0x4c27, 0x3b3b, 0x6430, 0x6439, 0x6434,
+  0x6433, 0x642f, 0x6431, 0x3449, 0x433d, 0x407d, 0x4822, 0x643e,
+  0x4824, 0x4061, 0x643b, 0x484f, 0x643f, 0x4a53, 0x435b, 0x643a,
+  0x643c, 0x643d, 0x6440, 0x3c44, 0x4646, 0x6445, 0x6444, 0x6441,
+  0x4f36, 0x644a, 0x644e, 0x644b, 0x6447, 0x6448, 0x644d, 0x6442,
+  0x5255, 0x6449, 0x6443, 0x644c, 0x6452, 0x344a, 0x644f, 0x6450,
+  0x6451, 0x6454, 0x6453, 0x4876, 0x6455, 0x4e7c, 0x4a6d, 0x645a,
+  0x6457, 0x6456, 0x4052, 0x6459, 0x645b, 0x6458, 0x645f, 0x645c,
+  0x645d, 0x6446, 0x645e, 0x6460, 0x6461, 0x4a46, 0x6462, 0x4c62,
+  0x364e, 0x3729, 0x6463, 0x4a34, 0x3f68, 0x4c30, 0x6464, 0x4e33,
+  0x4774, 0x4146, 0x4734, 0x3d4d, 0x3040, 0x6469, 0x6467, 0x6465,
+  0x3421, 0x3e51, 0x646a, 0x6468, 0x6466, 0x646e, 0x646d, 0x646c,
+  0x646b, 0x646f, 0x6470, 0x403a, 0x6471, 0x6473, 0x6472, 0x3852,
+  0x4138, 0x6475, 0x457c, 0x6474, 0x6476, 0x4a35, 0x416c, 0x3947,
+  0x6477, 0x4e48, 0x6479, 0x647a, 0x647b, 0x647c, 0x3b65, 0x647d,
+  0x374f, 0x356a, 0x352a, 0x6521, 0x4c73, 0x3948, 0x647e, 0x6524,
+  0x4c66, 0x473c, 0x4933, 0x3d63, 0x6523, 0x3c53, 0x3949, 0x3b66,
+  0x3569, 0x4a36, 0x6522, 0x4147, 0x4b42, 0x3a77, 0x3b67, 0x445d,
+  0x6527, 0x4e5f, 0x3a59, 0x6528, 0x3f42, 0x652a, 0x3e52, 0x3a30,
+  0x6529, 0x3d2a, 0x383e, 0x4148, 0x6525, 0x652b, 0x6526, 0x3750,
+  0x652e, 0x6532, 0x376b, 0x652d, 0x6536, 0x394a, 0x4d6d, 0x303c,
+  0x6533, 0x356b, 0x6530, 0x6531, 0x457d, 0x652f, 0x652c, 0x3328,
+  0x4064, 0x3828, 0x6538, 0x6535, 0x6537, 0x6534, 0x3751, 0x4233,
+  0x6539, 0x416e, 0x6546, 0x6542, 0x653c, 0x6540, 0x3c7a, 0x305d,
+  0x653b, 0x6543, 0x6547, 0x394b, 0x4c56, 0x4456, 0x653d, 0x6545,
+  0x653a, 0x433e, 0x653f, 0x303d, 0x4c4a, 0x653e, 0x365b, 0x486c,
+  0x416d, 0x4e50, 0x3d6f, 0x656e, 0x6548, 0x407e, 0x6544, 0x6549,
+  0x654b, 0x4479, 0x654e, 0x654a, 0x4a54, 0x344b, 0x4c4b, 0x305e,
+  0x654d, 0x4e7d, 0x654c, 0x316f, 0x466c, 0x654f, 0x6556, 0x6550,
+  0x6557, 0x6553, 0x477b, 0x3c4a, 0x6555, 0x6552, 0x6558, 0x6551,
+  0x3d44, 0x4b25, 0x3d4c, 0x6554, 0x6560, 0x655c, 0x655f, 0x655d,
+  0x6561, 0x655b, 0x6541, 0x4053, 0x484b, 0x655e, 0x6559, 0x4121,
+  0x3752, 0x3d2b, 0x3f25, 0x4136, 0x6564, 0x6566, 0x6567, 0x6563,
+  0x6565, 0x655a, 0x6562, 0x656a, 0x6569, 0x4b7a, 0x372b, 0x6568,
+  0x656c, 0x656b, 0x656f, 0x6571, 0x3b3c, 0x656d, 0x6572, 0x6573,
+  0x6574, 0x657a, 0x453b, 0x6576, 0x6575, 0x6577, 0x6578, 0x6579,
+  0x657b, 0x657c, 0x344c, 0x657d, 0x657e, 0x6621, 0x6622, 0x6623,
+  0x6624, 0x6625, 0x6626, 0x6628, 0x6627, 0x6629, 0x662a, 0x662b,
+  0x662e, 0x662c, 0x662d, 0x3a61, 0x3753, 0x4356, 0x4833, 0x3d70,
+  0x474d, 0x486d, 0x662f, 0x586d, 0x6630, 0x6632, 0x4d65, 0x6631,
+  0x6634, 0x6633, 0x4d53, 0x6635, 0x487e, 0x6636, 0x6639, 0x6638,
+  0x6637, 0x663a, 0x3732, 0x4122, 0x3541, 0x663e, 0x663b, 0x663c,
+  0x663f, 0x6640, 0x663d, 0x3129, 0x3227, 0x6642, 0x6643, 0x6644,
+  0x4d62, 0x3d2c, 0x6646, 0x6645, 0x3f69, 0x6647, 0x6648, 0x6649,
+  0x3465, 0x344d, 0x664a, 0x664b, 0x4b5d, 0x4d63, 0x4d54, 0x4f37,
+  0x394d, 0x664e, 0x3c54, 0x664d, 0x664f, 0x3c29, 0x4251, 0x6650,
+  0x394c, 0x4c57, 0x6651, 0x6652, 0x6653, 0x6654, 0x6655, 0x3c2a,
+  0x4c6d, 0x6657, 0x433f, 0x6656, 0x6659, 0x6658, 0x665a, 0x403b,
+  0x665b, 0x665c, 0x4a39, 0x665d, 0x416f, 0x665e, 0x665f, 0x4e7e,
+  0x6662, 0x6661, 0x6660, 0x4430, 0x6663, 0x3f26, 0x6664, 0x6665,
+  0x4f38, 0x6666, 0x6667, 0x6669, 0x6668, 0x4825, 0x4679, 0x4f3e,
+  0x4829, 0x666b, 0x3e53, 0x492a, 0x666c, 0x666a, 0x344e, 0x3854,
+  0x3b68, 0x486e, 0x382a, 0x4b43, 0x666f, 0x666d, 0x394e, 0x394f,
+  0x3069, 0x3a68, 0x4759, 0x305f, 0x6674, 0x4340, 0x4758, 0x425b,
+  0x6676, 0x6672, 0x6675, 0x6670, 0x6673, 0x4b26, 0x3855, 0x307d,
+  0x6671, 0x6678, 0x6679, 0x4639, 0x363b, 0x6726, 0x473d, 0x3b69,
+  0x363c, 0x4048, 0x4f46, 0x4c2e, 0x6677, 0x4054, 0x3553, 0x667a,
+  0x667c, 0x667b, 0x667d, 0x4326, 0x473e, 0x4431, 0x6723, 0x6722,
+  0x667e, 0x3f55, 0x4965, 0x6725, 0x6724, 0x3950, 0x4f53, 0x6735,
+  0x6729, 0x672a, 0x3c70, 0x6728, 0x3978, 0x6727, 0x672b, 0x4432,
+  0x4a22, 0x4123, 0x425c, 0x672f, 0x6730, 0x672c, 0x672d, 0x672e,
+  0x3951, 0x6736, 0x6732, 0x4966, 0x4b6c, 0x4928, 0x6731, 0x6734,
+  0x6733, 0x4b44, 0x6737, 0x6738, 0x4137, 0x6739, 0x673b, 0x673f,
+  0x673c, 0x673a, 0x473f, 0x673d, 0x673e, 0x3232, 0x6745, 0x6740,
+  0x6741, 0x6742, 0x4221, 0x6744, 0x6743, 0x6746, 0x6747, 0x6748,
+  0x3f43, 0x3269, 0x6749, 0x4e57, 0x3c2b, 0x3d2d, 0x3b6a, 0x4357,
+  0x674a, 0x674b, 0x3131, 0x674c, 0x674d, 0x674e, 0x674f, 0x6750,
+  0x363d, 0x5a2a, 0x6751, 0x4065, 0x6752, 0x3c4b, 0x6753, 0x5030,
+  0x6754, 0x4a5e, 0x345c, 0x4124, 0x3d58, 0x4971, 0x3d2e, 0x6755,
+  0x3952, 0x6756, 0x484c, 0x6764, 0x6758, 0x4249, 0x4775, 0x383f,
+  0x6757, 0x4125, 0x6759, 0x447a, 0x675b, 0x675a, 0x675d, 0x675c,
+  0x675e, 0x6760, 0x675f, 0x344f, 0x6761, 0x6762, 0x6763, 0x3a31,
+  0x4e49, 0x6765, 0x3f27, 0x3170, 0x6766, 0x6767, 0x6768, 0x3072,
+  0x6769, 0x676a, 0x4967, 0x3c47, 0x676c, 0x3329, 0x3032, 0x676b,
+  0x676e, 0x474e, 0x3f44, 0x3256, 0x4b27, 0x375d, 0x365c, 0x676d,
+  0x326a, 0x3423, 0x3171, 0x6772, 0x4e6a, 0x425d, 0x4944, 0x677e,
+  0x3257, 0x677c, 0x677a, 0x6771, 0x676f, 0x6770, 0x3c63, 0x366c,
+  0x4377, 0x4651, 0x3151, 0x6774, 0x6773, 0x6779, 0x6775, 0x6778,
+  0x4c50, 0x6777, 0x3258, 0x337d, 0x677b, 0x677d, 0x3754, 0x6823,
+  0x682c, 0x682d, 0x302b, 0x6834, 0x3071, 0x682b, 0x682a, 0x6825,
+  0x6824, 0x6822, 0x6821, 0x4363, 0x427b, 0x6827, 0x6826, 0x6829,
+  0x4170, 0x3755, 0x3141, 0x6828, 0x3953, 0x4171, 0x683a, 0x683b,
+  0x3259, 0x322e, 0x6838, 0x682e, 0x6836, 0x683d, 0x6837, 0x6835,
+  0x6776, 0x6833, 0x682f, 0x3450, 0x6831, 0x683c, 0x6832, 0x683e,
+  0x6830, 0x477c, 0x4d69, 0x6839, 0x684f, 0x6847, 0x3f7b, 0x3546,
+  0x365d, 0x6842, 0x325b, 0x3e54, 0x6845, 0x3a5a, 0x4551, 0x684a,
+  0x4a6e, 0x6841, 0x325a, 0x3856, 0x4929, 0x684b, 0x683f, 0x6848,
+  0x6852, 0x6843, 0x6844, 0x463a, 0x6849, 0x6846, 0x4b28, 0x684c,
+  0x3060, 0x6840, 0x684e, 0x684d, 0x476b, 0x6854, 0x685f, 0x337e,
+  0x6862, 0x6850, 0x6855, 0x4d6e, 0x685e, 0x4d55, 0x4e2a, 0x4378,
+  0x336b, 0x4972, 0x6864, 0x4621, 0x3031, 0x685d, 0x6859, 0x4172,
+  0x6853, 0x685b, 0x6860, 0x472c, 0x302a, 0x6858, 0x6861, 0x4978,
+  0x685c, 0x6857, 0x3e55, 0x3d2f, 0x3c2c, 0x4c58, 0x4947, 0x6867,
+  0x6870, 0x685a, 0x3377, 0x3e78, 0x6865, 0x686a, 0x4173, 0x6866,
+  0x686d, 0x435f, 0x686e, 0x4d56, 0x6863, 0x3338, 0x6869, 0x686c,
+  0x4c2c, 0x686f, 0x6868, 0x686b, 0x4b29, 0x4f21, 0x6873, 0x687a,
+  0x6872, 0x3c43, 0x6851, 0x4a4e, 0x4c22, 0x6879, 0x6878, 0x6874,
+  0x6875, 0x3136, 0x6877, 0x6871, 0x4455, 0x6876, 0x307e, 0x4222,
+  0x4a43, 0x687b, 0x6921, 0x4859, 0x687e, 0x3e56, 0x3c49, 0x6923,
+  0x363e, 0x6924, 0x4979, 0x687d, 0x6856, 0x687c, 0x4f4f, 0x4622,
+  0x4973, 0x692b, 0x6931, 0x6932, 0x6925, 0x4776, 0x692f, 0x6927,
+  0x6929, 0x6933, 0x6928, 0x692c, 0x3172, 0x4665, 0x692d, 0x6930,
+  0x6926, 0x4126, 0x692a, 0x3b27, 0x3f45, 0x3730, 0x4c74, 0x4c79,
+  0x3d72, 0x6937, 0x6935, 0x4f4e, 0x6934, 0x4d75, 0x6936, 0x6938,
+  0x6939, 0x693c, 0x693a, 0x4623, 0x693b, 0x484d, 0x692e, 0x3d73,
+  0x693d, 0x6942, 0x4174, 0x6941, 0x6922, 0x6943, 0x4149, 0x693e,
+  0x6940, 0x693f, 0x5d31, 0x5d22, 0x6945, 0x6944, 0x4d76, 0x623c,
+  0x6946, 0x6947, 0x6948, 0x3857, 0x3554, 0x694a, 0x515d, 0x3575,
+  0x4e3a, 0x3673, 0x694b, 0x694c, 0x436e, 0x694d, 0x467a, 0x303a,
+  0x3263, 0x6952, 0x6953, 0x694e, 0x3b3d, 0x694f, 0x4742, 0x6950,
+  0x6951, 0x695b, 0x6955, 0x6958, 0x6954, 0x6956, 0x6957, 0x3c58,
+  0x6959, 0x4341, 0x3756, 0x3342, 0x695c, 0x333f, 0x6961, 0x695d,
+  0x6960, 0x483a, 0x695e, 0x695f, 0x4948, 0x485a, 0x6962, 0x427d,
+  0x696c, 0x6968, 0x326b, 0x6966, 0x4b2a, 0x6967, 0x6964, 0x6965,
+  0x696a, 0x696d, 0x696b, 0x6969, 0x6963, 0x4358, 0x6974, 0x4c2a,
+  0x6972, 0x6973, 0x696e, 0x6970, 0x6971, 0x696f, 0x4066, 0x4f39,
+  0x6978, 0x6979, 0x6a21, 0x3f2a, 0x697b, 0x697e, 0x6976, 0x6975,
+  0x6a22, 0x325c, 0x697c, 0x6a23, 0x697d, 0x697a, 0x4433, 0x6977,
+  0x4768, 0x6a27, 0x4d3b, 0x6a26, 0x6a25, 0x6a2e, 0x6a28, 0x6a30,
+  0x4d66, 0x6a33, 0x6a2a, 0x6a2b, 0x6a2f, 0x6a32, 0x6a31, 0x6a29,
+  0x6a2c, 0x6a3d, 0x6a36, 0x6a34, 0x6a35, 0x6a3a, 0x6a3b, 0x332a,
+  0x3542, 0x6a39, 0x6a24, 0x6a38, 0x6a3c, 0x6a37, 0x6a3e, 0x6a40,
+  0x6a3f, 0x6a42, 0x6a41, 0x695a, 0x6a46, 0x6a43, 0x6a44, 0x6a45,
+  0x6a47, 0x376c, 0x6a49, 0x6a48, 0x3d30, 0x3954, 0x5e27, 0x6a4a,
+  0x3d51, 0x3339, 0x6a4b, 0x3152, 0x3e57, 0x6a4c, 0x3955, 0x6a4d,
+  0x3061, 0x493d, 0x6a4e, 0x3f6a, 0x6a55, 0x6a52, 0x436f, 0x6a53,
+  0x6a50, 0x365e, 0x6a4f, 0x6a56, 0x3736, 0x425e, 0x6a5c, 0x6a58,
+  0x4235, 0x6a57, 0x6a5a, 0x6a51, 0x6a5b, 0x6a5d, 0x486f, 0x6a59,
+  0x6a5e, 0x6a60, 0x3853, 0x6a54, 0x3041, 0x6a5f, 0x3a5b, 0x4e76,
+  0x6a61, 0x6a62, 0x4175, 0x4e22, 0x6a63, 0x4d35, 0x6a64, 0x6a65,
+  0x4a64, 0x6a66, 0x3a40, 0x4e23, 0x6a6b, 0x6a6c, 0x3e58, 0x6a6a,
+  0x4d67, 0x6a67, 0x6a69, 0x403d, 0x3f7e, 0x6a68, 0x6a6d, 0x4a23,
+  0x6a6f, 0x6a6e, 0x336c, 0x4b2b, 0x6a70, 0x6a7c, 0x6a72, 0x6a73,
+  0x6a74, 0x6a75, 0x6a79, 0x6a7a, 0x6a78, 0x6a76, 0x6a71, 0x6a77,
+  0x6a7b, 0x7037, 0x3228, 0x6a7e, 0x365f, 0x6a7d, 0x6b22, 0x6b21,
+  0x6b24, 0x6b23, 0x6b25, 0x3d31, 0x6b26, 0x6b27, 0x6b28, 0x403e,
+  0x4d57, 0x6b29, 0x4a24, 0x4746, 0x6b2a, 0x6b2b, 0x382b, 0x352c,
+  0x6b2c, 0x3b6b, 0x4741, 0x6b2d, 0x3350, 0x6b2e, 0x6b30, 0x4d77,
+  0x6b2f, 0x3f46, 0x6b31, 0x6b32, 0x6b33, 0x3451, 0x6b34, 0x6b35,
+  0x6b36, 0x6b37, 0x3351, 0x6b38, 0x6b39, 0x6b3a, 0x3272, 0x3f28,
+  0x6b3b, 0x6b3c, 0x6b3d, 0x3840, 0x447b, 0x6b3e, 0x3757, 0x3f56,
+  0x6b41, 0x4624, 0x6b40, 0x3731, 0x6b3f, 0x4277, 0x352d, 0x6b42,
+  0x6b43, 0x3e59, 0x376d, 0x6b44, 0x4b2c, 0x405f, 0x3576, 0x4c75,
+  0x414a, 0x6b45, 0x3f47, 0x4370, 0x3e5a, 0x6b46, 0x6b49, 0x6b4a,
+  0x3a3e, 0x4242, 0x6b48, 0x3e5b, 0x493e, 0x6b47, 0x3b6c, 0x3153,
+  0x6b4e, 0x3758, 0x3b6e, 0x3b6d, 0x4f4d, 0x6b4d, 0x6b4c, 0x4127,
+  0x354d, 0x4f43, 0x333a, 0x3e5c, 0x6b4b, 0x6b50, 0x6b51, 0x6b4f,
+  0x3858, 0x4d40, 0x3b6f, 0x4727, 0x6b54, 0x4040, 0x4342, 0x4d36,
+  0x6b57, 0x386c, 0x403f, 0x6b53, 0x6b58, 0x386d, 0x6b55, 0x6b56,
+  0x6b52, 0x4062, 0x4649, 0x432f, 0x325d, 0x4870, 0x3543, 0x4434,
+  0x6b5b, 0x6b59, 0x434c, 0x4041, 0x3452, 0x6b5a, 0x3f5b, 0x4e4a,
+  0x4f40, 0x6b5c, 0x6b67, 0x4435, 0x6b66, 0x6b63, 0x6b6b, 0x6b64,
+  0x6b60, 0x447c, 0x6b5f, 0x6b5d, 0x4d21, 0x3b70, 0x6b61, 0x6b5e,
+  0x6b65, 0x3d74, 0x3841, 0x427a, 0x4b45, 0x315a, 0x3062, 0x4625,
+  0x6b69, 0x6b68, 0x4666, 0x6b6d, 0x6b62, 0x6b6c, 0x6b6e, 0x382c,
+  0x6b6a, 0x3956, 0x3c55, 0x6b6f, 0x4d58, 0x6b72, 0x6b75, 0x6b73,
+  0x4935, 0x6b70, 0x3660, 0x6b74, 0x6b76, 0x6b7a, 0x6b77, 0x6b79,
+  0x6b78, 0x6b7b, 0x3c31, 0x6b7d, 0x6b7c, 0x4968, 0x6c21, 0x3759,
+  0x6b7e, 0x6c22, 0x6c23, 0x3544, 0x6641, 0x3e79, 0x6c24, 0x386e,
+  0x6c25, 0x6c26, 0x3b3e, 0x5a4e, 0x6c27, 0x6c28, 0x3d32, 0x6c29,
+  0x6c2a, 0x6c2b, 0x6c2c, 0x6c2d, 0x432b, 0x6c2e, 0x6c30, 0x6c2f,
+  0x4626, 0x6c31, 0x4b2d, 0x6c32, 0x6c33, 0x6c34, 0x6c35, 0x465a,
+  0x3e5d, 0x6c36, 0x396b, 0x502e, 0x6c37, 0x6c38, 0x493f, 0x6c39,
+  0x6c41, 0x6c3a, 0x6c3c, 0x6c3b, 0x6c3d, 0x4b46, 0x6c3e, 0x6c3f,
+  0x6c40, 0x6c42, 0x332d, 0x4467, 0x4969, 0x3a62, 0x3957, 0x494f,
+  0x325f, 0x484e, 0x6c45, 0x3453, 0x4055, 0x6c44, 0x6c49, 0x4379,
+  0x4c63, 0x6c47, 0x6c48, 0x352e, 0x6c4a, 0x4763, 0x425f, 0x4871,
+  0x453d, 0x6c46, 0x4b47, 0x326c, 0x6c4c, 0x4f28, 0x4442, 0x4f45,
+  0x3b71, 0x6c4b, 0x4231, 0x6c5c, 0x4128, 0x4678, 0x4950, 0x6c4f,
+  0x3b3f, 0x3b72, 0x3e5e, 0x4765, 0x382d, 0x6c4e, 0x6c4d, 0x496a,
+  0x3c41, 0x4552, 0x6c51, 0x6c52, 0x3958, 0x6c50, 0x6c53, 0x6c54,
+  0x6c56, 0x4223, 0x6c55, 0x3466, 0x6c58, 0x6c57, 0x6c59, 0x6c5b,
+  0x6c5d, 0x6c5e, 0x4056, 0x3c4f, 0x6c5f, 0x3352, 0x6c60, 0x4176,
+  0x6c61, 0x6c62, 0x496b, 0x352f, 0x6c63, 0x4436, 0x315b, 0x6c64,
+  0x3c71, 0x3f76, 0x422d, 0x6c67, 0x6c66, 0x6c65, 0x6c6d, 0x6c6b,
+  0x6c68, 0x6c6a, 0x6c69, 0x6c6c, 0x3577, 0x6c70, 0x4057, 0x6c71,
+  0x3859, 0x6c6e, 0x6c6f, 0x4f29, 0x4437, 0x4129, 0x6c72, 0x6c75,
+  0x6c73, 0x6c74, 0x4d59, 0x4627, 0x6c78, 0x6c76, 0x6c77, 0x6c79,
+  0x6d29, 0x6c7c, 0x6c7d, 0x6c7b, 0x6c7a, 0x447d, 0x6d21, 0x6d25,
+  0x6d22, 0x6c7e, 0x6d23, 0x6d24, 0x6d2b, 0x6d26, 0x4058, 0x6d28,
+  0x6d2a, 0x6d27, 0x6d2d, 0x3d33, 0x6d2c, 0x6d2e, 0x6d2f, 0x6d32,
+  0x6d31, 0x6d30, 0x6d34, 0x6d33, 0x4c76, 0x6d36, 0x6d35, 0x6d37,
+  0x6d38, 0x6d3a, 0x6d39, 0x3f48, 0x6d3b, 0x366d, 0x6d3c, 0x6d3e,
+  0x6d3f, 0x6d40, 0x6d3d, 0x6d41, 0x3c56, 0x6d42, 0x3530, 0x3733,
+  0x382e, 0x6d43, 0x4670, 0x453e, 0x6d44, 0x6d47, 0x3c34, 0x6d46,
+  0x6d45, 0x375a, 0x6d48, 0x3353, 0x6d4a, 0x3a5c, 0x6d49, 0x6d52,
+  0x6d4c, 0x6d4e, 0x4a65, 0x6d4b, 0x6d4d, 0x6d51, 0x6d4f, 0x3531,
+  0x6d50, 0x6d53, 0x475a, 0x4e58, 0x3d34, 0x6d54, 0x4d22, 0x6d56,
+  0x6d55, 0x6d59, 0x4d41, 0x6d58, 0x336d, 0x6d57, 0x6d5c, 0x6d5b,
+  0x6d5a, 0x4532, 0x6d5d, 0x6d5e, 0x6d5f, 0x396c, 0x3725, 0x6d60,
+  0x6d61, 0x6d62, 0x3f49, 0x6d63, 0x3c2d, 0x6d64, 0x6d65, 0x5221,
+  0x517e, 0x6d66, 0x6570, 0x6d67, 0x4324, 0x3f2b, 0x4740, 0x6d68,
+  0x4a55, 0x4454, 0x397e, 0x4329, 0x312a, 0x4b78, 0x3f57, 0x375e,
+  0x3661, 0x4a56, 0x6d69, 0x6d6b, 0x6d6a, 0x3260, 0x4676, 0x6d6c,
+  0x4777, 0x4533, 0x6d6d, 0x3d52, 0x6d6f, 0x4c42, 0x6d7e, 0x6d71,
+  0x6d72, 0x4449, 0x4260, 0x4177, 0x4628, 0x6d70, 0x3555, 0x6d79,
+  0x6d76, 0x6e25, 0x4629, 0x4360, 0x6d73, 0x447e, 0x4553, 0x6d74,
+  0x6d78, 0x3f60, 0x4767, 0x444c, 0x4042, 0x6d77, 0x422e, 0x4224,
+  0x6d75, 0x3029, 0x4f22, 0x6d7a, 0x4261, 0x3d35, 0x3f4a, 0x6d7c,
+  0x6d7b, 0x306f, 0x6d7d, 0x492f, 0x6e27, 0x465b, 0x3f6b, 0x4359,
+  0x3678, 0x6e26, 0x4d37, 0x313f, 0x4a57, 0x3261, 0x6e21, 0x6e22,
+  0x6e23, 0x6e24, 0x463b, 0x4323, 0x3063, 0x6e28, 0x6e29, 0x7423,
+  0x423d, 0x6e2a, 0x3173, 0x414c, 0x382f, 0x4d5a, 0x6e2b, 0x452c,
+  0x4178, 0x3c57, 0x6e2c, 0x6e2f, 0x3d65, 0x6e2d, 0x412b, 0x412a,
+  0x3064, 0x4e4b, 0x6e31, 0x4872, 0x6e33, 0x6e32, 0x6e30, 0x6364,
+  0x3454, 0x6d6e, 0x6e35, 0x6e34, 0x6e36, 0x4d38, 0x4661, 0x4b2e,
+  0x6e37, 0x3c59, 0x6e38, 0x6e39, 0x6e3a, 0x4521, 0x306a, 0x3959,
+  0x4f3a, 0x6e3e, 0x3734, 0x6e3b, 0x6e3c, 0x4974, 0x3354, 0x4d39,
+  0x363f, 0x4554, 0x6e3f, 0x6e40, 0x6e41, 0x4522, 0x6e43, 0x6e42,
+  0x4653, 0x6e44, 0x3d36, 0x3c60, 0x475b, 0x4371, 0x3c72, 0x3f6c,
+  0x6e45, 0x6e46, 0x3f5d, 0x6e47, 0x6e48, 0x6e49, 0x4d6f, 0x3d37,
+  0x6e4b, 0x6e4a, 0x395a, 0x3973, 0x3b40, 0x6e4e, 0x3d66, 0x6e4d,
+  0x6e4c, 0x4269, 0x386f, 0x4043, 0x4830, 0x3d39, 0x6e4f, 0x3e5f,
+  0x6e52, 0x6e50, 0x6e51, 0x6e54, 0x6e53, 0x3e7a, 0x6e55, 0x6e56,
+  0x6e57, 0x4850, 0x3a53, 0x3c61, 0x6e58, 0x6e59, 0x4e24, 0x3d45,
+  0x4c6e, 0x4e4c, 0x6e5a, 0x3662, 0x6e5b, 0x4523, 0x6e5e, 0x3378,
+  0x3f4b, 0x6e5c, 0x6e5d, 0x4460, 0x4b55, 0x367c, 0x6e60, 0x6e61,
+  0x6e5f, 0x6e63, 0x465f, 0x3343, 0x6e67, 0x6e64, 0x6e66, 0x6e62,
+  0x6f4f, 0x6e65, 0x4e6b, 0x385a, 0x6e6f, 0x4534, 0x6e6a, 0x6e6d,
+  0x6e6b, 0x6e70, 0x6e71, 0x6e69, 0x6e76, 0x3174, 0x6e68, 0x482d,
+  0x6e6c, 0x3e60, 0x395b, 0x4b48, 0x3664, 0x3d46, 0x463c, 0x412d,
+  0x6e74, 0x6e6e, 0x6e73, 0x4c43, 0x4438, 0x6e75, 0x6e72, 0x412c,
+  0x6e79, 0x6e78, 0x6e77, 0x4b2f, 0x3d7b, 0x6e7a, 0x4a5f, 0x3154,
+  0x4946, 0x4372, 0x3578, 0x6e7c, 0x395d, 0x3b2c, 0x6e7b, 0x3f6d,
+  0x3f6e, 0x6f21, 0x6f23, 0x3e7b, 0x6f22, 0x6f24, 0x3653, 0x4945,
+  0x3c62, 0x4f23, 0x6e7e, 0x3a78, 0x4f3f, 0x6f26, 0x6f25, 0x6f27,
+  0x6e7d, 0x4669, 0x4555, 0x4457, 0x6f2c, 0x4343, 0x6f28, 0x6f29,
+  0x372d, 0x6f2b, 0x3830, 0x6f2a, 0x3e61, 0x3379, 0x6f30, 0x3a3f,
+  0x4179, 0x444a, 0x333b, 0x6f2e, 0x6f2f, 0x4443, 0x6f2d, 0x6f31,
+  0x6f37, 0x6f3a, 0x6f39, 0x452d, 0x6f32, 0x6f33, 0x6f36, 0x6f38,
+  0x3640, 0x6f3b, 0x6f35, 0x6f34, 0x6f3f, 0x6f40, 0x6f41, 0x6f3e,
+  0x6f3d, 0x3e62, 0x462a, 0x6f3c, 0x6f45, 0x6f43, 0x6f44, 0x6f42,
+  0x4278, 0x6f46, 0x6f47, 0x6f49, 0x3455, 0x6f48, 0x4c7a, 0x6f54,
+  0x6f4a, 0x6f4d, 0x6f4b, 0x6f4c, 0x6f4e, 0x6f50, 0x6f51, 0x6f52,
+  0x6f55, 0x6f53, 0x6f56, 0x6f58, 0x6f57, 0x4439, 0x4c67, 0x6f59,
+  0x412e, 0x6f5a, 0x4a44, 0x6f5b, 0x332b, 0x313c, 0x3457, 0x3456,
+  0x6f5c, 0x6f5d, 0x6f5e, 0x6f5f, 0x6f60, 0x3458, 0x3355, 0x395e,
+  0x4836, 0x6f62, 0x6f61, 0x6f63, 0x315c, 0x6f66, 0x6f65, 0x6f64,
+  0x6f67, 0x6f6a, 0x3047, 0x6f68, 0x6f6c, 0x6f6b, 0x6f6e, 0x6f6d,
+  0x6f6f, 0x462e, 0x6f70, 0x6f71, 0x6f73, 0x6f72, 0x496c, 0x6f74,
+  0x6f75, 0x3a65, 0x6f76, 0x6f77, 0x4b49, 0x414b, 0x3024, 0x424b,
+  0x6f78, 0x496d, 0x6f7b, 0x6f79, 0x395f, 0x6f7a, 0x3842, 0x4a45,
+  0x6f7d, 0x7021, 0x6f7e, 0x7022, 0x3121, 0x3f58, 0x3d7c, 0x3459,
+  0x7023, 0x4766, 0x7025, 0x3122, 0x7024, 0x4444, 0x4e4d, 0x462b,
+  0x6f7c, 0x4e26, 0x3831, 0x4d5b, 0x3679, 0x4e34, 0x3728, 0x4262,
+  0x6721, 0x7026, 0x332c, 0x3f6f, 0x3356, 0x7028, 0x7029, 0x7027,
+  0x3764, 0x3a5d, 0x3e63, 0x3123, 0x4e59, 0x702b, 0x6e2e, 0x702a,
+  0x702e, 0x702c, 0x702d, 0x702f, 0x7030, 0x4e6c, 0x7031, 0x7032,
+  0x4049, 0x483b, 0x3f7d, 0x3467, 0x4d3a, 0x326d, 0x3d38, 0x385b,
+  0x7035, 0x7034, 0x3b73, 0x7036, 0x7033, 0x3b28, 0x703a, 0x6a2d,
+  0x5256, 0x3f77, 0x7038, 0x4e25, 0x4671, 0x312b, 0x4063, 0x3c36,
+  0x4a37, 0x3140, 0x4e6d, 0x4d6b, 0x703b, 0x4545, 0x3c7b, 0x703c,
+  0x703d, 0x3f4c, 0x703e, 0x4e6e, 0x7039, 0x7040, 0x7042, 0x7041,
+  0x703f, 0x7043, 0x7044, 0x417a, 0x3262, 0x7045, 0x4c38, 0x7046,
+  0x7047, 0x4f2a, 0x5b31, 0x7048, 0x7049, 0x704a, 0x704e, 0x704b,
+  0x704c, 0x704d, 0x704f, 0x4044, 0x4c77, 0x4045, 0x7050, 0x4873,
+  0x7051, 0x7353, 0x4c4c, 0x7052, 0x7053, 0x7054, 0x3357, 0x7056,
+  0x3f59, 0x7057, 0x3724, 0x7058, 0x705c, 0x705a, 0x705b, 0x3373,
+  0x7059, 0x705d, 0x705e, 0x3048, 0x705f, 0x7060, 0x3e64, 0x7061,
+  0x3547, 0x7064, 0x7063, 0x7062, 0x6b71, 0x4a5c, 0x7065, 0x7066,
+  0x7067, 0x7068, 0x7069, 0x706a, 0x345a, 0x706b, 0x706c, 0x4723,
+  0x706e, 0x323b, 0x7071, 0x7070, 0x3124, 0x3641, 0x4a47, 0x443a,
+  0x3a22, 0x3960, 0x3d67, 0x3f5c, 0x7073, 0x7072, 0x4d42, 0x3468,
+  0x4852, 0x465c, 0x3f7c, 0x4e4e, 0x375b, 0x7076, 0x7075, 0x4b4b,
+  0x462c, 0x3150, 0x7077, 0x7074, 0x4951, 0x4d6a, 0x7078, 0x7079,
+  0x707b, 0x426a, 0x335b, 0x335c, 0x707a, 0x3469, 0x3832, 0x346a,
+  0x453f, 0x4e60, 0x385c, 0x707c, 0x707d, 0x707e, 0x7121, 0x7123,
+  0x7122, 0x4977, 0x7124, 0x7125, 0x7126, 0x7127, 0x7129, 0x7128,
+  0x712a, 0x4874, 0x664c, 0x3f29, 0x3532, 0x712b, 0x712c, 0x522c,
+  0x5d3b, 0x4853, 0x307b, 0x303b, 0x3b74, 0x4b30, 0x3e7e, 0x712d,
+  0x4c5f, 0x712e, 0x4d5c, 0x3142, 0x3b41, 0x712f, 0x326e, 0x7130,
+  0x7131, 0x7133, 0x7134, 0x7136, 0x7132, 0x7135, 0x345b, 0x7137,
+  0x7138, 0x7139, 0x713a, 0x713b, 0x713d, 0x713c, 0x713f, 0x7142,
+  0x713e, 0x7140, 0x7141, 0x7143, 0x3642, 0x3c73, 0x7144, 0x7145,
+  0x3961, 0x7146, 0x333e, 0x474f, 0x7147, 0x7148, 0x435a, 0x466b,
+  0x7149, 0x477d, 0x424c, 0x3158, 0x366e, 0x366f, 0x4373, 0x714e,
+  0x3670, 0x326f, 0x714d, 0x714b, 0x714c, 0x714a, 0x7158, 0x714f,
+  0x7150, 0x7151, 0x7152, 0x7154, 0x7153, 0x3d59, 0x7155, 0x7157,
+  0x3533, 0x7156, 0x417b, 0x3833, 0x7159, 0x424d, 0x715a, 0x462d,
+  0x715b, 0x7160, 0x715e, 0x715d, 0x715f, 0x715c, 0x7162, 0x7161,
+  0x7164, 0x3643, 0x7163, 0x7165, 0x7166, 0x7168, 0x7167, 0x7169,
+  0x716b, 0x716a, 0x397c, 0x716c, 0x716d, 0x333c, 0x716e, 0x716f,
+  0x3f71, 0x7170, 0x7171, 0x7172, 0x7173, 0x3962, 0x7174, 0x7175,
+  0x7176, 0x7177, 0x7178, 0x4831, 0x717a, 0x4926, 0x717b, 0x7179,
+  0x717d, 0x717c, 0x717e, 0x7221, 0x7222, 0x7223, 0x7224, 0x7225,
+  0x7226, 0x7227, 0x7228, 0x7229, 0x722a, 0x722b, 0x722c, 0x722d,
+  0x722e, 0x5d35, 0x722f, 0x6478, 0x3534, 0x3321, 0x3a32, 0x7231,
+  0x7230, 0x4c25, 0x7233, 0x7234, 0x7232, 0x7235, 0x4b62, 0x7236,
+  0x357b, 0x4f25, 0x7237, 0x7239, 0x303e, 0x723a, 0x4a2b, 0x7238,
+  0x723b, 0x723c, 0x723d, 0x723e, 0x723f, 0x4b6e, 0x3b2d, 0x3a7a,
+  0x412f, 0x7240, 0x7243, 0x7241, 0x7244, 0x3871, 0x7242, 0x7245,
+  0x7246, 0x7247, 0x724b, 0x3b2a, 0x4264, 0x724c, 0x7249, 0x7248,
+  0x724a, 0x375f, 0x7250, 0x724f, 0x724e, 0x3033, 0x725a, 0x7256,
+  0x7257, 0x7253, 0x7259, 0x7255, 0x3362, 0x4f4c, 0x7258, 0x7254,
+  0x7252, 0x7251, 0x725c, 0x725f, 0x725e, 0x725d, 0x4949, 0x725b,
+  0x3073, 0x7260, 0x7262, 0x336f, 0x724d, 0x3137, 0x7264, 0x7263,
+  0x7261, 0x432d, 0x4b70, 0x4e5a, 0x7265, 0x7266, 0x7267, 0x7268,
+  0x7269, 0x443b, 0x726a, 0x4837, 0x726f, 0x726b, 0x726c, 0x4b31,
+  0x4c44, 0x4650, 0x7270, 0x7271, 0x463e, 0x726e, 0x726d, 0x322a,
+  0x7279, 0x7278, 0x3175, 0x7276, 0x7275, 0x7273, 0x337b, 0x7272,
+  0x3c32, 0x3229, 0x3963, 0x727c, 0x727b, 0x727a, 0x7277, 0x727d,
+  0x727e, 0x7325, 0x7324, 0x7326, 0x312d, 0x7321, 0x7322, 0x3974,
+  0x4c39, 0x7323, 0x4b32, 0x732b, 0x7327, 0x732c, 0x7329, 0x7328,
+  0x375c, 0x732d, 0x732e, 0x732f, 0x732a, 0x7274, 0x7330, 0x4461,
+  0x7334, 0x7335, 0x7333, 0x7332, 0x7338, 0x7331, 0x7336, 0x7337,
+  0x733a, 0x7339, 0x733c, 0x733d, 0x733e, 0x4f49, 0x733b, 0x426b,
+  0x3a6d, 0x733f, 0x7340, 0x7341, 0x7342, 0x7343, 0x3834, 0x7344,
+  0x7345, 0x3c2f, 0x7346, 0x7347, 0x7348, 0x7349, 0x734c, 0x734a,
+  0x4f3c, 0x734b, 0x4e6f, 0x734d, 0x4e5b, 0x734e, 0x477e, 0x734f,
+  0x7351, 0x7352, 0x7350, 0x396d, 0x4c4d, 0x4b63, 0x5677, 0x5d60,
+  0x4b7b, 0x322b, 0x7354, 0x3550, 0x7355, 0x7356, 0x7357, 0x3975,
+  0x7358, 0x6054, 0x4c5b, 0x4263, 0x7359, 0x735b, 0x735a, 0x735c,
+  0x735d, 0x735e, 0x735f, 0x7360, 0x7361, 0x7362, 0x7363, 0x7364,
+  0x7365, 0x7366, 0x7367, 0x7368, 0x4524, 0x385d, 0x736a, 0x414d,
+  0x736b, 0x736c, 0x4921, 0x736d, 0x736e, 0x6337, 0x6c5a, 0x706d,
+  0x736f, 0x7370, 0x7372, 0x7373, 0x7374, 0x4e70, 0x7371, 0x7375,
+  0x7376, 0x7378, 0x7377, 0x737a, 0x737b, 0x7379, 0x4e36, 0x737c,
+  0x737d, 0x6354, 0x737e, 0x212a, 0x2174, 0x2170, 0x2173, 0x2175,
+  0x214a, 0x214b, 0x2176, 0x215c, 0x2124, 0x2125, 0x213f, 0x2330,
+  0x2331, 0x2332, 0x2333, 0x2334, 0x2335, 0x2336, 0x2337, 0x2338,
+  0x2339, 0x2127, 0x2128, 0x2163, 0x2161, 0x2164, 0x2129, 0x2177,
+  0x2341, 0x2342, 0x2343, 0x2344, 0x2345, 0x2346, 0x2347, 0x2348,
+  0x2349, 0x234a, 0x234b, 0x234c, 0x234d, 0x234e, 0x234f, 0x2350,
+  0x2351, 0x2352, 0x2353, 0x2354, 0x2355, 0x2356, 0x2357, 0x2358,
+  0x2359, 0x235a, 0x214e, 0x2140, 0x214f, 0x2130, 0x2132, 0x212e,
+  0x2361, 0x2362, 0x2363, 0x2364, 0x2365, 0x2366, 0x2367, 0x2368,
+  0x2369, 0x236a, 0x236b, 0x236c, 0x236d, 0x236e, 0x236f, 0x2370,
+  0x2371, 0x2372, 0x2373, 0x2374, 0x2375, 0x2376, 0x2377, 0x2378,
+  0x2379, 0x237a, 0x2150, 0x2143, 0x2151, 0x2131, 0x216f,
+};
+
+static const Summary16 jisx0208_uni2indx_page00[16] = {
+  /* 0x0000 */
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x118c }, {    5, 0x0053 },
+  {    9, 0x0000 }, {    9, 0x0080 }, {   10, 0x0000 }, {   10, 0x0080 },
+};
+static const Summary16 jisx0208_uni2indx_page03[22] = {
+  /* 0x0300 */
+  {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 },
+  {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 }, {   11, 0x0000 },
+  {   11, 0x0000 }, {   11, 0xfffe }, {   26, 0x03fb }, {   35, 0xfffe },
+  {   50, 0x03fb }, {   59, 0x0000 }, {   59, 0x0000 }, {   59, 0x0000 },
+  /* 0x0400 */
+  {   59, 0x0002 }, {   60, 0xffff }, {   76, 0xffff }, {   92, 0xffff },
+  {  108, 0xffff }, {  124, 0x0002 },
+};
+static const Summary16 jisx0208_uni2indx_page20[50] = {
+  /* 0x2000 */
+  {  125, 0x0000 }, {  125, 0x3361 }, {  132, 0x0063 }, {  136, 0x080d },
+  {  140, 0x0000 }, {  140, 0x0000 }, {  140, 0x0000 }, {  140, 0x0000 },
+  {  140, 0x0000 }, {  140, 0x0000 }, {  140, 0x0000 }, {  140, 0x0000 },
+  {  140, 0x0000 }, {  140, 0x0000 }, {  140, 0x0000 }, {  140, 0x0000 },
+  /* 0x2100 */
+  {  140, 0x0008 }, {  141, 0x0000 }, {  141, 0x0800 }, {  142, 0x0000 },
+  {  142, 0x0000 }, {  142, 0x0000 }, {  142, 0x0000 }, {  142, 0x0000 },
+  {  142, 0x0000 }, {  142, 0x000f }, {  146, 0x0000 }, {  146, 0x0000 },
+  {  146, 0x0000 }, {  146, 0x0014 }, {  148, 0x0000 }, {  148, 0x0000 },
+  /* 0x2200 */
+  {  148, 0x098d }, {  154, 0x6404 }, {  158, 0x1f81 }, {  165, 0x2030 },
+  {  168, 0x0000 }, {  168, 0x0004 }, {  169, 0x0cc3 }, {  175, 0x0000 },
+  {  175, 0x00cc }, {  179, 0x0000 }, {  179, 0x0020 }, {  180, 0x0000 },
+  {  180, 0x0000 }, {  180, 0x0000 }, {  180, 0x0000 }, {  180, 0x0000 },
+  /* 0x2300 */
+  {  180, 0x0000 }, {  180, 0x0004 },
+};
+static const Summary16 jisx0208_uni2indx_page25[23] = {
+  /* 0x2500 */
+  {  181, 0x900f }, {  187, 0x3999 }, {  195, 0x9939 }, {  203, 0x9999 },
+  {  211, 0x0804 }, {  213, 0x0000 }, {  213, 0x0000 }, {  213, 0x0000 },
+  {  213, 0x0000 }, {  213, 0x0000 }, {  213, 0x0003 }, {  215, 0x300c },
+  {  219, 0xc8c0 }, {  224, 0x0000 }, {  224, 0x8000 }, {  225, 0x0000 },
+  /* 0x2600 */
+  {  225, 0x0060 }, {  227, 0x0000 }, {  227, 0x0000 }, {  227, 0x0000 },
+  {  227, 0x0005 }, {  229, 0x0000 }, {  229, 0xa400 },
+};
+static const Summary16 jisx0208_uni2indx_page30[16] = {
+  /* 0x3000 */
+  {  232, 0xffef }, {  247, 0x103f }, {  254, 0x0000 }, {  254, 0x0000 },
+  {  254, 0xfffe }, {  269, 0xffff }, {  285, 0xffff }, {  301, 0xffff },
+  {  317, 0xffff }, {  333, 0x780f }, {  341, 0xfffe }, {  356, 0xffff },
+  {  372, 0xffff }, {  388, 0xffff }, {  404, 0xffff }, {  420, 0x787f },
+};
+static const Summary16 jisx0208_uni2indx_page4e[1307] = {
+  /* 0x4e00 */
+  {  431, 0x6f8b }, {  441, 0x43f3 }, {  450, 0x2442 }, {  454, 0x9b46 },
+  {  462, 0xe82c }, {  469, 0xe3e0 }, {  477, 0x0004 }, {  478, 0x400a },
+  {  481, 0x5f65 }, {  491, 0xdb36 }, {  501, 0x7977 }, {  512, 0x0449 },
+  {  516, 0xecd7 }, {  527, 0xe3f0 }, {  536, 0x6038 }, {  541, 0x08c5 },
+  /* 0x4f00 */
+  {  546, 0xe602 }, {  552, 0x3403 }, {  557, 0x8000 }, {  558, 0x3551 },
+  {  565, 0xe0c8 }, {  571, 0x7eab }, {  582, 0x8200 }, {  584, 0x9869 },
+  {  591, 0xa948 }, {  597, 0x2942 }, {  602, 0xe803 }, {  608, 0x8060 },
+  {  611, 0x441c }, {  616, 0xad93 }, {  625, 0xc03a }, {  631, 0x4568 },
+  /* 0x5000 */
+  {  637, 0xaa60 }, {  643, 0x8656 }, {  650, 0x3f7a }, {  661, 0x0240 },
+  {  663, 0x8388 }, {  668, 0x1461 }, {  673, 0x1020 }, {  675, 0x2174 },
+  {  681, 0x2021 }, {  684, 0x0702 }, {  688, 0x3000 }, {  690, 0x40bc },
+  {  696, 0xa624 }, {  702, 0x4462 }, {  707, 0x60a8 }, {  712, 0x0a20 },
+  /* 0x5100 */
+  {  715, 0x0217 }, {  720, 0x8574 }, {  727, 0x0402 }, {  729, 0x9c84 },
+  {  735, 0x7bfb }, {  748, 0x1415 }, {  753, 0x7f24 }, {  762, 0x11e2 },
+  {  768, 0xb665 }, {  777, 0x02ef }, {  785, 0x1f75 }, {  795, 0x20ff },
+  {  804, 0x3a70 }, {  811, 0x3840 }, {  815, 0x26c3 }, {  822, 0x6763 },
+  /* 0x5200 */
+  {  831, 0x4dd9 }, {  840, 0x2092 }, {  844, 0x46b0 }, {  850, 0x0fc9 },
+  {  858, 0xbc98 }, {  866, 0x4850 }, {  870, 0x8638 }, {  876, 0xa03f },
+  {  884, 0x2388 }, {  889, 0x8816 }, {  894, 0x3e09 }, {  901, 0x5232 },
+  {  907, 0x22aa }, {  913, 0xe3a4 }, {  921, 0x00dd }, {  927, 0xc72c },
+  /* 0x5300 */
+  {  935, 0xa166 }, {  942, 0x26e1 }, {  949, 0x840b }, {  954, 0x8f0a },
+  {  961, 0x27eb }, {  971, 0x559e }, {  980, 0xc241 }, {  985, 0x89bb },
+  {  994, 0x0014 }, {  996, 0x8540 }, { 1000, 0x6361 }, { 1007, 0x0849 },
+  { 1011, 0x7f0c }, { 1020, 0x8ad0 }, { 1026, 0xff3e }, { 1039, 0x05cf },
+  /* 0x5400 */
+  { 1047, 0xff1a }, { 1058, 0xa803 }, { 1063, 0x7a41 }, { 1070, 0x7b40 },
+  { 1077, 0x4745 }, { 1084, 0x8002 }, { 1086, 0x0500 }, { 1088, 0x38eb },
+  { 1097, 0xd851 }, { 1104, 0x0005 }, { 1106, 0x9934 }, { 1113, 0x710c },
+  { 1119, 0x0397 }, { 1126, 0x0100 }, { 1127, 0x6366 }, { 1135, 0x2404 },
+  /* 0x5500 */
+  { 1138, 0x80d0 }, { 1142, 0x0051 }, { 1145, 0xc000 }, { 1147, 0x430a },
+  { 1152, 0x9071 }, { 1158, 0x30c8 }, { 1163, 0x0008 }, { 1164, 0x5800 },
+  { 1167, 0x0e99 }, { 1174, 0xf700 }, { 1181, 0x5f80 }, { 1188, 0x0041 },
+  { 1190, 0x00b0 }, { 1193, 0x9410 }, { 1197, 0x0018 }, { 1199, 0x6280 },
+  /* 0x5600 */
+  { 1203, 0x0240 }, { 1205, 0x09d0 }, { 1210, 0x8200 }, { 1212, 0x0156 },
+  { 1217, 0x5004 }, { 1220, 0x0801 }, { 1222, 0x1d10 }, { 1227, 0x0510 },
+  { 1230, 0x84c1 }, { 1235, 0x0010 }, { 1236, 0x4025 }, { 1240, 0x1050 },
+  { 1243, 0x410f }, { 1249, 0x4d8a }, { 1256, 0x4009 }, { 1259, 0xa60d },
+  /* 0x5700 */
+  { 1266, 0xab19 }, { 1274, 0x914c }, { 1280, 0x21c0 }, { 1284, 0x0981 },
+  { 1288, 0xc485 }, { 1294, 0x0003 }, { 1296, 0x0652 }, { 1301, 0x8000 },
+  { 1302, 0x0b04 }, { 1306, 0x0008 }, { 1307, 0x041d }, { 1312, 0x0009 },
+  { 1314, 0x4849 }, { 1319, 0x905c }, { 1325, 0x0009 }, { 1327, 0x1690 },
+  /* 0x5800 */
+  { 1332, 0x0c65 }, { 1338, 0x2220 }, { 1341, 0x8412 }, { 1345, 0x2433 },
+  { 1351, 0x0c03 }, { 1355, 0x4796 }, { 1363, 0x0a04 }, { 1366, 0x4225 },
+  { 1371, 0x0028 }, { 1373, 0x9088 }, { 1377, 0x4900 }, { 1380, 0x4f08 },
+  { 1386, 0x14a2 }, { 1391, 0xd3aa }, { 1400, 0xd830 }, { 1406, 0x3e87 },
+  /* 0x5900 */
+  { 1415, 0x8604 }, { 1419, 0x1f61 }, { 1427, 0x7ea4 }, { 1436, 0x4186 },
+  { 1441, 0xc390 }, { 1447, 0x05b3 }, { 1454, 0x57a5 }, { 1463, 0x2118 },
+  { 1467, 0x241e }, { 1473, 0x2a48 }, { 1478, 0x1128 }, { 1482, 0x4a04 },
+  { 1486, 0x0a40 }, { 1489, 0x161b }, { 1496, 0x0d60 }, { 1501, 0x8840 },
+  /* 0x5a00 */
+  { 1504, 0x020a }, { 1507, 0x9502 }, { 1512, 0x8221 }, { 1516, 0x1060 },
+  { 1519, 0x0243 }, { 1523, 0x0400 }, { 1524, 0x1444 }, { 1528, 0x8000 },
+  { 1529, 0x0000 }, { 1529, 0x0c04 }, { 1532, 0x0000 }, { 1532, 0x7000 },
+  { 1535, 0x1a06 }, { 1540, 0x00c1 }, { 1543, 0x024a }, { 1547, 0x0c00 },
+  /* 0x5b00 */
+  { 1549, 0x1a00 }, { 1552, 0x0040 }, { 1553, 0x1404 }, { 1556, 0x4045 },
+  { 1560, 0x0029 }, { 1563, 0xbdb3 }, { 1574, 0x0a78 }, { 1580, 0x052b },
+  { 1586, 0xbba9 }, { 1596, 0xbfa0 }, { 1605, 0x407c }, { 1611, 0x8379 },
+  { 1619, 0x12fc }, { 1627, 0xe81d }, { 1635, 0x4bf6 }, { 1645, 0xc569 },
+  /* 0x5c00 */
+  { 1653, 0xeff6 }, { 1666, 0x044a }, { 1670, 0x2115 }, { 1675, 0xff02 },
+  { 1684, 0xed63 }, { 1694, 0x402b }, { 1699, 0xd033 }, { 1706, 0x0242 },
+  { 1709, 0x1000 }, { 1710, 0x0013 }, { 1713, 0x1b02 }, { 1718, 0x59ca },
+  { 1726, 0x00a0 }, { 1728, 0x0200 }, { 1729, 0xa703 }, { 1736, 0x2c41 },
+  /* 0x5d00 */
+  { 1741, 0x4880 }, { 1744, 0x8ff2 }, { 1754, 0x0204 }, { 1756, 0x0000 },
+  { 1756, 0x5800 }, { 1759, 0x1005 }, { 1762, 0x9200 }, { 1765, 0x0048 },
+  { 1767, 0x1894 }, { 1772, 0x2001 }, { 1774, 0x5004 }, { 1777, 0x3480 },
+  { 1781, 0x3200 }, { 1784, 0x684c }, { 1790, 0x49ea }, { 1798, 0x68be },
+  /* 0x5e00 */
+  { 1807, 0x184c }, { 1812, 0x2e42 }, { 1818, 0xa820 }, { 1822, 0x21c9 },
+  { 1828, 0x50b9 }, { 1835, 0x80b0 }, { 1839, 0x001e }, { 1843, 0xff7c },
+  { 1856, 0x849a }, { 1862, 0x14e0 }, { 1867, 0x28c1 }, { 1872, 0x01e0 },
+  { 1876, 0x870e }, { 1883, 0xac49 }, { 1890, 0x130f }, { 1897, 0xdddb },
+  /* 0x5f00 */
+  { 1909, 0xbe1a }, { 1918, 0x89fb }, { 1928, 0xa2e0 }, { 1934, 0x51a2 },
+  { 1940, 0x5502 }, { 1945, 0x32ca }, { 1952, 0x3e46 }, { 1960, 0x928b },
+  { 1967, 0x1dbf }, { 1978, 0x438f }, { 1986, 0x6703 }, { 1993, 0x3218 },
+  { 1998, 0x3028 }, { 2002, 0x33c0 }, { 2008, 0x0811 }, { 2011, 0xa923 },
+  /* 0x6000 */
+  { 2018, 0xc000 }, { 2020, 0x3a65 }, { 2028, 0x8fe3 }, { 2038, 0x0402 },
+  { 2040, 0x2c4e }, { 2047, 0x8625 }, { 2053, 0xbf3d }, { 2065, 0x00a1 },
+  { 2068, 0x3a1a }, { 2075, 0x8cd4 }, { 2082, 0x06c9 }, { 2088, 0x317c },
+  { 2096, 0x00e0 }, { 2099, 0x950a }, { 2105, 0x018b }, { 2110, 0x0edb },
+  /* 0x6100 */
+  { 2119, 0xe34b }, { 2128, 0x8c20 }, { 2132, 0x1182 }, { 2136, 0xf010 },
+  { 2141, 0x7d94 }, { 2150, 0xa728 }, { 2157, 0xc9ac }, { 2165, 0x40fb },
+  { 2173, 0x4484 }, { 2177, 0x0653 }, { 2183, 0x5a90 }, { 2189, 0x4444 },
+  { 2193, 0x3fc8 }, { 2202, 0x0001 }, { 2203, 0x0048 }, { 2205, 0xf5d4 },
+  /* 0x6200 */
+  { 2215, 0x7701 }, { 2222, 0xec57 }, { 2232, 0xc442 }, { 2237, 0x891d },
+  { 2244, 0x6b83 }, { 2252, 0x4928 }, { 2257, 0x4109 }, { 2261, 0xd242 },
+  { 2267, 0x061d }, { 2273, 0x59fe }, { 2284, 0x1800 }, { 2286, 0x3a22 },
+  { 2292, 0xb7e4 }, { 2302, 0x3b9f }, { 2313, 0xf003 }, { 2319, 0xc0ea },
+  /* 0x6300 */
+  { 2326, 0x1386 }, { 2332, 0x8202 }, { 2335, 0x8980 }, { 2339, 0xe400 },
+  { 2343, 0xb200 }, { 2347, 0x10a1 }, { 2351, 0x4b80 }, { 2356, 0x0cc4 },
+  { 2361, 0xd309 }, { 2368, 0x8944 }, { 2373, 0x1faf }, { 2384, 0x4834 },
+  { 2389, 0x8259 }, { 2395, 0x0c45 }, { 2400, 0x420a }, { 2404, 0x0450 },
+  /* 0x6400 */
+  { 2407, 0xa040 }, { 2410, 0x10c8 }, { 2414, 0x3140 }, { 2418, 0x4450 },
+  { 2422, 0x4004 }, { 2424, 0x0100 }, { 2425, 0x8280 }, { 2428, 0x0540 },
+  { 2431, 0x0108 }, { 2433, 0x442c }, { 2438, 0x6a30 }, { 2444, 0x1a05 },
+  { 2449, 0x20a6 }, { 2454, 0x0514 }, { 2458, 0x90cf }, { 2466, 0x6456 },
+  /* 0x6500 */
+  { 2473, 0x0021 }, { 2475, 0x3100 }, { 2478, 0x9c18 }, { 2484, 0xcbf0 },
+  { 2493, 0xa120 }, { 2497, 0x63e2 }, { 2505, 0x104c }, { 2509, 0x01b5 },
+  { 2515, 0x538c }, { 2522, 0x9a83 }, { 2529, 0xb8b2 }, { 2537, 0x3281 },
+  { 2542, 0x987a }, { 2550, 0x0a84 }, { 2554, 0x33e7 }, { 2564, 0x0c02 },
+  /* 0x6600 */
+  { 2567, 0xd4cc }, { 2575, 0x9018 }, { 2579, 0xa1a1 }, { 2585, 0x9070 },
+  { 2590, 0x8a1e }, { 2597, 0xe004 }, { 2601, 0xc3d4 }, { 2609, 0x0451 },
+  { 2613, 0x439a }, { 2620, 0x21c2 }, { 2625, 0x4844 }, { 2629, 0x5310 },
+  { 2634, 0x0292 }, { 2638, 0x3640 }, { 2643, 0x0241 }, { 2646, 0xf3bd },
+  /* 0x6700 */
+  { 2658, 0xab09 }, { 2665, 0xe8f0 }, { 2673, 0x7dc0 }, { 2681, 0xa5d2 },
+  { 2689, 0xc242 }, { 2694, 0xd24b }, { 2702, 0xa43f }, { 2711, 0xd0af },
+  { 2720, 0x1aa0 }, { 2725, 0x34a1 }, { 2731, 0x8247 }, { 2737, 0x03d8 },
+  { 2743, 0xc452 }, { 2749, 0x651b }, { 2757, 0xd294 }, { 2764, 0xc83a },
+  /* 0x6800 */
+  { 2771, 0x001c }, { 2774, 0x40c8 }, { 2778, 0x0e06 }, { 2783, 0x3314 },
+  { 2789, 0x614f }, { 2797, 0xb21b }, { 2805, 0x0088 }, { 2807, 0xc0d0 },
+  { 2812, 0xa02a }, { 2817, 0xa898 }, { 2823, 0xa1c5 }, { 2830, 0x166b },
+  { 2838, 0x2e50 }, { 2844, 0x85b4 }, { 2851, 0xc08b }, { 2857, 0x0604 },
+  /* 0x6900 */
+  { 2860, 0xf933 }, { 2870, 0x1e04 }, { 2875, 0x056e }, { 2882, 0xa251 },
+  { 2888, 0x0400 }, { 2889, 0x7638 }, { 2897, 0xec07 }, { 2905, 0x73b8 },
+  { 2914, 0x4406 }, { 2918, 0x1832 }, { 2923, 0x4081 }, { 2926, 0xc816 },
+  { 2932, 0x7c8a }, { 2940, 0x6309 }, { 2946, 0x2980 }, { 2950, 0xaa04 },
+  /* 0x6a00 */
+  { 2955, 0x1c24 }, { 2960, 0xca9c }, { 2968, 0x4e0e }, { 2975, 0x2760 },
+  { 2981, 0x0990 }, { 2985, 0x8300 }, { 2988, 0x0046 }, { 2991, 0x8104 },
+  { 2994, 0x6011 }, { 2998, 0x1081 }, { 3001, 0x540d }, { 3007, 0x0908 },
+  { 3010, 0x000e }, { 3013, 0xcc0a }, { 3019, 0x0500 }, { 3021, 0x0c00 },
+  /* 0x6b00 */
+  { 3023, 0x0430 }, { 3026, 0xa044 }, { 3030, 0x008b }, { 3034, 0x6784 },
+  { 3041, 0x5288 }, { 3046, 0x8a19 }, { 3052, 0x865e }, { 3060, 0x8b18 },
+  { 3066, 0x2e59 }, { 3074, 0x4160 }, { 3078, 0x8c10 }, { 3082, 0x9cbe },
+  { 3092, 0x6861 }, { 3098, 0x891c }, { 3104, 0x9800 }, { 3107, 0x0008 },
+  /* 0x6c00 */
+  { 3108, 0x8100 }, { 3110, 0x089a }, { 3115, 0x0018 }, { 3117, 0x4190 },
+  { 3121, 0x4007 }, { 3125, 0xe4a1 }, { 3132, 0x0505 }, { 3136, 0x640d },
+  { 3142, 0x310e }, { 3148, 0x0e4d }, { 3155, 0x4806 }, { 3159, 0xff0a },
+  { 3169, 0x1632 }, { 3175, 0x2aa8 }, { 3181, 0x852e }, { 3188, 0x000b },
+  /* 0x6d00 */
+  { 3191, 0x1800 }, { 3193, 0xca84 }, { 3199, 0x0e20 }, { 3203, 0x696c },
+  { 3211, 0x0032 }, { 3214, 0x1600 }, { 3217, 0x5658 }, { 3224, 0x0390 },
+  { 3228, 0x5120 }, { 3232, 0x1a28 }, { 3237, 0x8000 }, { 3238, 0x1124 },
+  { 3242, 0x18e1 }, { 3248, 0x4326 }, { 3254, 0x5d52 }, { 3262, 0x0eaa },
+  /* 0x6e00 */
+  { 3269, 0x0fa0 }, { 3275, 0xae28 }, { 3282, 0xfa7b }, { 3294, 0x4500 },
+  { 3297, 0x6408 }, { 3301, 0x8940 }, { 3305, 0xc880 }, { 3309, 0xc044 },
+  { 3313, 0x9005 }, { 3317, 0xb141 }, { 3323, 0x8424 }, { 3327, 0x24c4 },
+  { 3332, 0x1a34 }, { 3338, 0x603a }, { 3344, 0x9000 }, { 3346, 0xc194 },
+  /* 0x6f00 */
+  { 3352, 0x8246 }, { 3357, 0x003a }, { 3361, 0x180d }, { 3366, 0xc106 },
+  { 3371, 0x0022 }, { 3373, 0x9910 }, { 3378, 0xe050 }, { 3383, 0x1511 },
+  { 3388, 0x4057 }, { 3394, 0x0082 }, { 3396, 0x041a }, { 3400, 0x020a },
+  { 3403, 0x004f }, { 3408, 0x8930 }, { 3413, 0xd813 }, { 3420, 0x444a },
+  /* 0x7000 */
+  { 3425, 0x8a02 }, { 3429, 0xed22 }, { 3437, 0x10c0 }, { 3440, 0x4005 },
+  { 3443, 0x1000 }, { 3444, 0x0102 }, { 3446, 0x8808 }, { 3449, 0x3101 },
+  { 3453, 0x4600 }, { 3456, 0x0204 }, { 3458, 0xf000 }, { 3462, 0x0708 },
+  { 3466, 0x8900 }, { 3469, 0xa200 }, { 3472, 0x0000 }, { 3472, 0x2202 },
+  /* 0x7100 */
+  { 3475, 0x0200 }, { 3476, 0x1610 }, { 3480, 0x0042 }, { 3482, 0x1040 },
+  { 3484, 0x5200 }, { 3487, 0x0260 }, { 3490, 0x52f4 }, { 3498, 0x2000 },
+  { 3499, 0x8510 }, { 3503, 0x8230 }, { 3507, 0x1100 }, { 3509, 0x4202 },
+  { 3512, 0x4308 }, { 3516, 0x80b5 }, { 3522, 0x70e1 }, { 3529, 0x9a20 },
+  /* 0x7200 */
+  { 3534, 0x2040 }, { 3536, 0x0801 }, { 3538, 0x3500 }, { 3542, 0xfc65 },
+  { 3552, 0x19c1 }, { 3558, 0xab04 }, { 3564, 0x0286 }, { 3568, 0x6214 },
+  { 3573, 0x0087 }, { 3577, 0x0044 }, { 3579, 0x9085 }, { 3584, 0x0244 },
+  { 3587, 0x405c }, { 3592, 0x0a85 }, { 3597, 0x3207 }, { 3603, 0x3380 },
+  /* 0x7300 */
+  { 3608, 0x0400 }, { 3609, 0xb8c0 }, { 3615, 0xce20 }, { 3621, 0xc0d0 },
+  { 3626, 0xc030 }, { 3630, 0x0080 }, { 3631, 0x0508 }, { 3634, 0x0d25 },
+  { 3640, 0x0a90 }, { 3644, 0x0040 }, { 3645, 0x0200 }, { 3646, 0x080c },
+  { 3649, 0x6505 }, { 3655, 0x4000 }, { 3656, 0x6421 }, { 3661, 0x4102 },
+  /* 0x7400 */
+  { 3664, 0x0268 }, { 3668, 0x0000 }, { 3668, 0x0024 }, { 3670, 0x847c },
+  { 3677, 0x0002 }, { 3678, 0xde20 }, { 3685, 0x8619 }, { 3691, 0x4049 },
+  { 3695, 0x0808 }, { 3697, 0x4000 }, { 3698, 0x0084 }, { 3700, 0x2001 },
+  { 3702, 0x8400 }, { 3704, 0x1010 }, { 3706, 0x42cd }, { 3713, 0x01c7 },
+  /* 0x7500 */
+  { 3719, 0x7038 }, { 3725, 0xd52a }, { 3733, 0x1968 }, { 3739, 0x1d8f },
+  { 3748, 0xbe50 }, { 3756, 0x3e12 }, { 3763, 0x2ef5 }, { 3773, 0x81d9 },
+  { 3780, 0xcec4 }, { 3788, 0x2412 }, { 3792, 0x0828 }, { 3795, 0x732e },
+  { 3804, 0x24ac }, { 3810, 0x4b34 }, { 3817, 0x020c }, { 3820, 0xd41d },
+  /* 0x7600 */
+  { 3828, 0x2a02 }, { 3832, 0x8000 }, { 3833, 0x0097 }, { 3838, 0x0811 },
+  { 3841, 0x11c4 }, { 3846, 0x1144 }, { 3850, 0x1786 }, { 3857, 0x7d45 },
+  { 3866, 0x49d9 }, { 3874, 0x0649 }, { 3879, 0x4000 }, { 3880, 0x8791 },
+  { 3887, 0x254c }, { 3893, 0xd8c4 }, { 3900, 0x44ba }, { 3907, 0x4914 },
+  /* 0x7700 */
+  { 3912, 0x1b92 }, { 3919, 0xc800 }, { 3922, 0x0271 }, { 3927, 0x1580 },
+  { 3931, 0x0081 }, { 3933, 0x0c00 }, { 3935, 0x096a }, { 3941, 0xc200 },
+  { 3944, 0x4800 }, { 3946, 0x4002 }, { 3948, 0x3021 }, { 3952, 0xba49 },
+  { 3960, 0x2080 }, { 3962, 0x1c80 }, { 3966, 0xe2ac }, { 3974, 0x1008 },
+  /* 0x7800 */
+  { 3976, 0x1004 }, { 3978, 0x0034 }, { 3981, 0x00e1 }, { 3985, 0x8414 },
+  { 3989, 0x0020 }, { 3990, 0x2000 }, { 3991, 0x9800 }, { 3994, 0x1014 },
+  { 3997, 0x70c2 }, { 4003, 0x04aa }, { 4008, 0x8688 }, { 4013, 0x5420 },
+  { 4017, 0x0c62 }, { 4022, 0x0413 }, { 4026, 0x9180 }, { 4030, 0x2010 },
+  /* 0x7900 */
+  { 4032, 0x4082 }, { 4035, 0x0206 }, { 4038, 0x1c40 }, { 4042, 0x5400 },
+  { 4045, 0x0383 }, { 4050, 0xe4e9 }, { 4059, 0x2125 }, { 4064, 0x8480 },
+  { 4067, 0xe433 }, { 4075, 0x2000 }, { 4076, 0x44c0 }, { 4080, 0xe609 },
+  { 4087, 0x0a03 }, { 4091, 0x8126 }, { 4096, 0x12da }, { 4103, 0x0801 },
+  /* 0x7a00 */
+  { 4105, 0x6901 }, { 4110, 0x9790 }, { 4117, 0x4001 }, { 4119, 0xf886 },
+  { 4127, 0xe24d }, { 4135, 0x0081 }, { 4137, 0x0a0e }, { 4142, 0xa651 },
+  { 4149, 0x011a }, { 4153, 0x81ec }, { 4160, 0xc600 }, { 4164, 0x8441 },
+  { 4168, 0xadb8 }, { 4177, 0xb62c }, { 4185, 0xa46f }, { 4194, 0x8741 },
+  /* 0x7b00 */
+  { 4200, 0x8d54 }, { 4207, 0x4b02 }, { 4212, 0x1161 }, { 4217, 0x0268 },
+  { 4221, 0xbb60 }, { 4229, 0x2057 }, { 4235, 0x50a0 }, { 4239, 0x0433 },
+  { 4244, 0xa8c0 }, { 4249, 0xb7b4 }, { 4259, 0x2402 }, { 4262, 0x0112 },
+  { 4265, 0x9ad3 }, { 4274, 0x2000 }, { 4275, 0x2271 }, { 4281, 0x00c8 },
+  /* 0x7c00 */
+  { 4284, 0x2081 }, { 4287, 0x809e }, { 4293, 0x0c8a }, { 4298, 0xe180 },
+  { 4303, 0xb009 }, { 4308, 0x8151 }, { 4313, 0x1031 }, { 4317, 0x4028 },
+  { 4320, 0x2a0e }, { 4326, 0x89a5 }, { 4333, 0x69b6 }, { 4342, 0x620e },
+  { 4348, 0x4425 }, { 4353, 0xd144 }, { 4359, 0x8085 }, { 4363, 0x4d54 },
+  /* 0x7d00 */
+  { 4370, 0x2c75 }, { 4378, 0x1fb1 }, { 4387, 0xd807 }, { 4394, 0x862d },
+  { 4401, 0xd87c }, { 4410, 0x4841 }, { 4414, 0x414e }, { 4420, 0x226e },
+  { 4427, 0x8200 }, { 4429, 0x9e08 }, { 4435, 0xf80c }, { 4442, 0xed37 },
+  { 4453, 0x8c80 }, { 4457, 0x7526 }, { 4465, 0x9313 }, { 4472, 0x0814 },
+  /* 0x7e00 */
+  { 4475, 0x0e32 }, { 4481, 0xc804 }, { 4485, 0x484e }, { 4491, 0x6ea6 },
+  { 4500, 0x2c4a }, { 4506, 0x6670 }, { 4513, 0x26c0 }, { 4518, 0xba01 },
+  { 4524, 0xd30c }, { 4531, 0x185d }, { 4538, 0x0000 }, { 4538, 0x0000 },
+  { 4538, 0x0000 }, { 4538, 0x0000 }, { 4538, 0x0000 }, { 4538, 0x0000 },
+  /* 0x7f00 */
+  { 4538, 0x0000 }, { 4538, 0x0000 }, { 4538, 0x0000 }, { 4538, 0x0540 },
+  { 4541, 0x7020 }, { 4545, 0x8133 }, { 4551, 0x4f81 }, { 4558, 0x03a5 },
+  { 4564, 0x55ec }, { 4573, 0x6410 }, { 4577, 0xc318 }, { 4583, 0x2344 },
+  { 4588, 0x1462 }, { 4593, 0x0034 }, { 4596, 0x0a43 }, { 4601, 0x1a09 },
+  /* 0x8000 */
+  { 4606, 0x187b }, { 4614, 0x13a5 }, { 4621, 0x0102 }, { 4623, 0xa848 },
+  { 4628, 0x0440 }, { 4630, 0xc544 }, { 4636, 0x8106 }, { 4640, 0xe2dd },
+  { 4650, 0x1af0 }, { 4657, 0x2d48 }, { 4663, 0xb626 }, { 4671, 0x0416 },
+  { 4675, 0x5058 }, { 4680, 0x6e40 }, { 4686, 0x8032 }, { 4690, 0x3112 },
+  /* 0x8100 */
+  { 4695, 0x07e4 }, { 4702, 0x0c00 }, { 4704, 0x8208 }, { 4707, 0x420a },
+  { 4711, 0x4840 }, { 4714, 0x803b }, { 4720, 0x4860 }, { 4724, 0x8713 },
+  { 4731, 0x850d }, { 4737, 0x3428 }, { 4742, 0x0319 }, { 4747, 0xe529 },
+  { 4755, 0x2345 }, { 4761, 0x870a }, { 4767, 0x25a9 }, { 4774, 0x5c18 },
+  /* 0x8200 */
+  { 4780, 0x77a6 }, { 4790, 0xd9c5 }, { 4799, 0x5e00 }, { 4804, 0x03e8 },
+  { 4810, 0x0081 }, { 4812, 0xa700 }, { 4817, 0xcd54 }, { 4825, 0x41c6 },
+  { 4831, 0x2800 }, { 4833, 0xa204 }, { 4837, 0xb860 }, { 4843, 0x2b0a },
+  { 4849, 0x0020 }, { 4850, 0xda9e }, { 4860, 0x08ea }, { 4866, 0x0e1a },
+  /* 0x8300 */
+  { 4872, 0x427c }, { 4879, 0x11c0 }, { 4883, 0x8908 }, { 4887, 0x0376 },
+  { 4894, 0x8621 }, { 4899, 0x0105 }, { 4902, 0x0000 }, { 4902, 0x18a8 },
+  { 4907, 0x46a0 }, { 4912, 0xc448 }, { 4917, 0x0d05 }, { 4922, 0x2022 },
+  { 4925, 0x5422 }, { 4930, 0x9148 }, { 4935, 0x8a01 }, { 4939, 0x2897 },
+  /* 0x8400 */
+  { 4946, 0x7898 }, { 4953, 0x0008 }, { 4954, 0x1605 }, { 4959, 0x3122 },
+  { 4964, 0x4240 }, { 4967, 0x0880 }, { 4969, 0xfa4e }, { 4979, 0x06a2 },
+  { 4984, 0x0814 }, { 4987, 0x9211 }, { 4992, 0x2002 }, { 4994, 0x9b04 },
+  { 5000, 0x2e52 }, { 5007, 0x0643 }, { 5012, 0x5000 }, { 5014, 0x9010 },
+  /* 0x8500 */
+  { 5017, 0x0041 }, { 5019, 0x85ba }, { 5027, 0x3042 }, { 5031, 0x2020 },
+  { 5033, 0x4f0b }, { 5041, 0x05a0 }, { 5045, 0x2708 }, { 5050, 0x4080 },
+  { 5052, 0x0591 }, { 5057, 0x1a93 }, { 5064, 0xdf50 }, { 5073, 0x0600 },
+  { 5075, 0xa202 }, { 5079, 0x3021 }, { 5083, 0x0630 }, { 5087, 0x4e80 },
+  /* 0x8600 */
+  { 5092, 0x0cc4 }, { 5097, 0x04c8 }, { 5101, 0xa004 }, { 5104, 0x8001 },
+  { 5106, 0x6000 }, { 5108, 0xd431 }, { 5115, 0x0880 }, { 5117, 0x0a02 },
+  { 5120, 0x1c00 }, { 5123, 0x0028 }, { 5125, 0x8e18 }, { 5131, 0x0041 },
+  { 5133, 0x6ad0 }, { 5140, 0xca10 }, { 5145, 0xf210 }, { 5151, 0x4b00 },
+  /* 0x8700 */
+  { 5155, 0x274d }, { 5163, 0x1506 }, { 5168, 0x0220 }, { 5170, 0x8890 },
+  { 5174, 0x5a00 }, { 5178, 0x82a8 }, { 5183, 0x4549 }, { 5189, 0x8150 },
+  { 5193, 0x2004 }, { 5195, 0x8000 }, { 5196, 0x8804 }, { 5199, 0x2c08 },
+  { 5203, 0x08d1 }, { 5208, 0x0005 }, { 5210, 0x8001 }, { 5212, 0x4ac4 },
+  /* 0x8800 */
+  { 5218, 0xe020 }, { 5222, 0x0062 }, { 5225, 0x008e }, { 5229, 0x0a42 },
+  { 5233, 0x3055 }, { 5239, 0x6a8c }, { 5246, 0x090e }, { 5251, 0xe0a5 },
+  { 5258, 0x2906 }, { 5263, 0x42c4 }, { 5268, 0x4814 }, { 5272, 0x80b3 },
+  { 5278, 0x803e }, { 5284, 0xb330 }, { 5291, 0x0102 }, { 5293, 0x731c },
+  /* 0x8900 */
+  { 5301, 0x1494 }, { 5306, 0x600d }, { 5311, 0x0c20 }, { 5314, 0x0940 },
+  { 5317, 0x301a }, { 5322, 0xc040 }, { 5325, 0xa451 }, { 5331, 0xc094 },
+  { 5336, 0x8dca }, { 5344, 0x05c8 }, { 5349, 0x96c2 }, { 5356, 0xa40c },
+  { 5361, 0x0001 }, { 5362, 0x3404 }, { 5366, 0x00c8 }, { 5369, 0x0110 },
+  /* 0x8a00 */
+  { 5371, 0x550d }, { 5378, 0xa9c9 }, { 5386, 0x2428 }, { 5390, 0x1c5a },
+  { 5397, 0x0142 }, { 5400, 0x4837 }, { 5407, 0x7a4d }, { 5416, 0x100f },
+  { 5421, 0x32b4 }, { 5428, 0x452a }, { 5434, 0x317b }, { 5443, 0x9205 },
+  { 5448, 0xb894 }, { 5455, 0x5c44 }, { 5461, 0x68d7 }, { 5470, 0x458a },
+  /* 0x8b00 */
+  { 5476, 0x5097 }, { 5483, 0x2ed1 }, { 5491, 0x1943 }, { 5497, 0x4208 },
+  { 5500, 0xd202 }, { 5505, 0x9d40 }, { 5511, 0x9840 }, { 5515, 0x2097 },
+  { 5521, 0x5409 }, { 5526, 0x064d }, { 5532, 0x0000 }, { 5532, 0x0000 },
+  { 5532, 0x0000 }, { 5532, 0x0000 }, { 5532, 0x0000 }, { 5532, 0x0000 },
+  /* 0x8c00 */
+  { 5532, 0x0000 }, { 5532, 0x0000 }, { 5532, 0x0000 }, { 5532, 0x8480 },
+  { 5535, 0x5542 }, { 5541, 0x0421 }, { 5544, 0x1c06 }, { 5549, 0x1700 },
+  { 5553, 0x7624 }, { 5560, 0x6110 }, { 5564, 0xff87 }, { 5576, 0xb9dd },
+  { 5587, 0x659f }, { 5597, 0x5c0a }, { 5603, 0x245d }, { 5610, 0x3c00 },
+  /* 0x8d00 */
+  { 5614, 0xadb0 }, { 5622, 0x0059 }, { 5626, 0x0000 }, { 5626, 0x0000 },
+  { 5626, 0x0000 }, { 5626, 0x0000 }, { 5626, 0x28d0 }, { 5631, 0x009b },
+  { 5636, 0x0422 }, { 5639, 0x0200 }, { 5640, 0x0108 }, { 5642, 0x4408 },
+  { 5645, 0x9804 }, { 5649, 0xac40 }, { 5654, 0x8d0a }, { 5660, 0x9028 },
+  /* 0x8e00 */
+  { 5664, 0x8700 }, { 5668, 0xe001 }, { 5672, 0x0400 }, { 5673, 0x0031 },
+  { 5676, 0x1794 }, { 5683, 0x8221 }, { 5687, 0x0019 }, { 5690, 0x1054 },
+  { 5694, 0x2cb2 }, { 5701, 0x021a }, { 5705, 0x9c02 }, { 5710, 0x4003 },
+  { 5713, 0x3d60 }, { 5720, 0x8804 }, { 5723, 0x080c }, { 5726, 0x7900 },
+  /* 0x8f00 */
+  { 5731, 0x1628 }, { 5736, 0xba3c }, { 5745, 0x8640 }, { 5749, 0xcb08 },
+  { 5755, 0x7274 }, { 5763, 0x9080 }, { 5766, 0x001e }, { 5770, 0x0000 },
+  { 5770, 0x0000 }, { 5770, 0xd800 }, { 5774, 0xe188 }, { 5780, 0x9c87 },
+  { 5788, 0x4034 }, { 5792, 0x0412 }, { 5795, 0xae64 }, { 5803, 0x2791 },
+  /* 0x9000 */
+  { 5810, 0xe86b }, { 5819, 0xe6fb }, { 5831, 0x408f }, { 5837, 0x5366 },
+  { 5845, 0xeea6 }, { 5855, 0x537f }, { 5866, 0xe32b }, { 5875, 0xb5e4 },
+  { 5884, 0x869f }, { 5893, 0x0002 }, { 5894, 0x8548 }, { 5899, 0x0122 },
+  { 5902, 0x4402 }, { 5905, 0x0800 }, { 5906, 0x2116 }, { 5911, 0x20a0 },
+  /* 0x9100 */
+  { 5914, 0x0004 }, { 5915, 0x0204 }, { 5917, 0x2000 }, { 5918, 0x0005 },
+  { 5920, 0x7e00 }, { 5926, 0x0154 }, { 5930, 0x162c }, { 5936, 0x01ac },
+  { 5941, 0x2a84 }, { 5946, 0x1085 }, { 5950, 0x8c14 }, { 5955, 0x0530 },
+  { 5959, 0xfbc3 }, { 5970, 0xb943 }, { 5978, 0x00ca }, { 5982, 0x9060 },
+  /* 0x9200 */
+  { 5986, 0x6000 }, { 5988, 0x4032 }, { 5992, 0x1200 }, { 5994, 0x8090 },
+  { 5997, 0x0b30 }, { 6002, 0x4c81 }, { 6007, 0x0054 }, { 6010, 0x4002 },
+  { 6012, 0x0029 }, { 6015, 0x1d6a }, { 6023, 0x2000 }, { 6024, 0x0280 },
+  { 6026, 0x8000 }, { 6027, 0x0004 }, { 6028, 0x2610 }, { 6032, 0x150c },
+  /* 0x9300 */
+  { 6037, 0x8040 }, { 6039, 0x0701 }, { 6043, 0xd94d }, { 6052, 0x0c24 },
+  { 6056, 0x2810 }, { 6059, 0x1850 }, { 6063, 0x5001 }, { 6066, 0x5020 },
+  { 6069, 0x1000 }, { 6070, 0x04d0 }, { 6074, 0x7080 }, { 6078, 0x0201 },
+  { 6080, 0x0108 }, { 6082, 0x21c3 }, { 6088, 0x0132 }, { 6092, 0x0000 },
+  /* 0x9400 */
+  { 6092, 0x0088 }, { 6094, 0x0719 }, { 6100, 0x0802 }, { 6102, 0x0560 },
+  { 6106, 0x0012 }, { 6108, 0x4c0e }, { 6114, 0x0405 }, { 6117, 0xf0a1 },
+  { 6124, 0x0002 }, { 6125, 0x0000 }, { 6125, 0x0000 }, { 6125, 0x0000 },
+  { 6125, 0x0000 }, { 6125, 0x0000 }, { 6125, 0x0000 }, { 6125, 0x0000 },
+  /* 0x9500 */
+  { 6125, 0x0000 }, { 6125, 0x0000 }, { 6125, 0x0000 }, { 6125, 0x0000 },
+  { 6125, 0x0000 }, { 6125, 0x0000 }, { 6125, 0x0000 }, { 6125, 0x0080 },
+  { 6126, 0x8e8d }, { 6134, 0x035a }, { 6140, 0x21bd }, { 6148, 0x5a04 },
+  { 6153, 0x3488 }, { 6158, 0x1170 }, { 6163, 0x0026 }, { 6166, 0x0000 },
+  /* 0x9600 */
+  { 6166, 0x0000 }, { 6166, 0x1000 }, { 6167, 0xc502 }, { 6172, 0x8804 },
+  { 6175, 0xb815 }, { 6182, 0xf801 }, { 6188, 0x147c }, { 6195, 0x25ed },
+  { 6204, 0xed60 }, { 6212, 0x1bb0 }, { 6219, 0x0589 }, { 6224, 0x1bd7 },
+  { 6234, 0x7af3 }, { 6245, 0x1a62 }, { 6251, 0x0d0c }, { 6256, 0x0ac5 },
+  /* 0x9700 */
+  { 6262, 0xe5d1 }, { 6271, 0x524a }, { 6277, 0x0490 }, { 6280, 0x6305 },
+  { 6286, 0x0354 }, { 6291, 0x5244 }, { 6296, 0x2b57 }, { 6305, 0x1612 },
+  { 6310, 0xa872 }, { 6317, 0x1101 }, { 6320, 0x2949 }, { 6326, 0x0018 },
+  { 6328, 0x0948 }, { 6332, 0x1008 }, { 6334, 0x6000 }, { 6336, 0x886c },
+  /* 0x9800 */
+  { 6342, 0x916e }, { 6350, 0x058f }, { 6357, 0x3012 }, { 6361, 0x3990 },
+  { 6367, 0xf840 }, { 6373, 0x4930 }, { 6378, 0x8880 }, { 6381, 0x001b },
+  { 6385, 0x0000 }, { 6385, 0x0000 }, { 6385, 0x8500 }, { 6388, 0x0042 },
+  { 6390, 0x0058 }, { 6393, 0x9800 }, { 6396, 0xea04 }, { 6402, 0x7014 },
+  /* 0x9900 */
+  { 6407, 0x1628 }, { 6412, 0x611d }, { 6419, 0x5113 }, { 6425, 0x6000 },
+  { 6427, 0x1a24 }, { 6432, 0x00a7 }, { 6437, 0x0000 }, { 6437, 0x0000 },
+  { 6437, 0x0000 }, { 6437, 0x03c0 }, { 6441, 0x7120 }, { 6446, 0x1018 },
+  { 6449, 0x0172 }, { 6454, 0xa927 }, { 6462, 0x6004 }, { 6465, 0x8906 },
+  /* 0x9a00 */
+  { 6470, 0xc022 }, { 6474, 0x020c }, { 6477, 0x0900 }, { 6479, 0x4081 },
+  { 6482, 0x202d }, { 6487, 0x8ca0 }, { 6492, 0x0e34 }, { 6498, 0x0000 },
+  { 6498, 0x0000 }, { 6498, 0x0000 }, { 6498, 0x2100 }, { 6500, 0x1101 },
+  { 6503, 0x8011 }, { 6506, 0xc11a }, { 6512, 0xec4c }, { 6520, 0x0892 },
+  /* 0x9b00 */
+  { 6524, 0x0040 }, { 6525, 0x8500 }, { 6528, 0xc7ac }, { 6537, 0x1806 },
+  { 6541, 0xe03e }, { 6549, 0x0512 }, { 6553, 0x8000 }, { 6554, 0x0010 },
+  { 6555, 0x4008 }, { 6557, 0x80ce }, { 6563, 0x6d01 }, { 6569, 0x0210 },
+  { 6571, 0x8641 }, { 6576, 0x0856 }, { 6581, 0x011e }, { 6586, 0x0027 },
+  /* 0x9c00 */
+  { 6590, 0x3750 }, { 6597, 0x083d }, { 6603, 0xe032 }, { 6609, 0x4e05 },
+  { 6615, 0x01c0 }, { 6618, 0x0484 }, { 6621, 0x0081 }, { 6623, 0x0140 },
+  { 6625, 0x0000 }, { 6625, 0x0000 }, { 6625, 0x0000 }, { 6625, 0x0000 },
+  { 6625, 0x0000 }, { 6625, 0x0000 }, { 6625, 0x1aa0 }, { 6630, 0x0059 },
+  /* 0x9d00 */
+  { 6634, 0x43c8 }, { 6640, 0x8824 }, { 6644, 0x1d48 }, { 6650, 0xc800 },
+  { 6653, 0x0152 }, { 6657, 0x7203 }, { 6663, 0x9013 }, { 6668, 0x0404 },
+  { 6670, 0x8280 }, { 6673, 0x0400 }, { 6674, 0x8a10 }, { 6678, 0x0d14 },
+  { 6683, 0x8056 }, { 6688, 0x0208 }, { 6690, 0xa040 }, { 6693, 0x2704 },
+  /* 0x9e00 */
+  { 6698, 0x0000 }, { 6698, 0x4c00 }, { 6701, 0x0000 }, { 6701, 0x0000 },
+  { 6701, 0x0000 }, { 6701, 0x0000 }, { 6701, 0x0000 }, { 6701, 0xa320 },
+  { 6706, 0x1902 }, { 6710, 0xa0ae }, { 6717, 0x2660 }, { 6722, 0xdf00 },
+  { 6729, 0xf010 }, { 6734, 0x7b15 }, { 6743, 0x8121 }, { 6747, 0x3ad0 },
+  /* 0x9f00 */
+  { 6754, 0x4180 }, { 6757, 0x0028 }, { 6759, 0x1003 }, { 6762, 0x4800 },
+  { 6764, 0xcc00 }, { 6768, 0x8014 }, { 6771, 0x14cf }, { 6779, 0x00c4 },
+  { 6782, 0x2000 }, { 6783, 0x3020 }, { 6786, 0x0001 },
+};
+static const Summary16 jisx0208_uni2indx_pageff[15] = {
+  /* 0xff00 */
+  { 6787, 0xdf7a }, { 6799, 0xffff }, { 6815, 0xffff }, { 6831, 0xffff },
+  { 6847, 0xffff }, { 6863, 0x3fff }, { 6877, 0x0000 }, { 6877, 0x0000 },
+  { 6877, 0x0000 }, { 6877, 0x0000 }, { 6877, 0x0000 }, { 6877, 0x0000 },
+  { 6877, 0x0000 }, { 6877, 0x0000 }, { 6877, 0x0028 },
+};
+
+static int
+jisx0208_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 2) {
+    const Summary16 *summary = NULL;
+    if (wc >= 0x0000 && wc < 0x0100)
+      summary = &jisx0208_uni2indx_page00[(wc>>4)];
+    else if (wc >= 0x0300 && wc < 0x0460)
+      summary = &jisx0208_uni2indx_page03[(wc>>4)-0x030];
+    else if (wc >= 0x2000 && wc < 0x2320)
+      summary = &jisx0208_uni2indx_page20[(wc>>4)-0x200];
+    else if (wc >= 0x2500 && wc < 0x2670)
+      summary = &jisx0208_uni2indx_page25[(wc>>4)-0x250];
+    else if (wc >= 0x3000 && wc < 0x3100)
+      summary = &jisx0208_uni2indx_page30[(wc>>4)-0x300];
+    else if (wc >= 0x4e00 && wc < 0x9fb0)
+      summary = &jisx0208_uni2indx_page4e[(wc>>4)-0x4e0];
+    else if (wc >= 0xff00 && wc < 0xfff0)
+      summary = &jisx0208_uni2indx_pageff[(wc>>4)-0xff0];
+    if (summary) {
+      unsigned short used = summary->used;
+      unsigned int i = wc & 0x0f;
+      if (used & ((unsigned short) 1 << i)) {
+        unsigned short c;
+        /* Keep in `used' only the bits 0..i-1. */
+        used &= ((unsigned short) 1 << i) - 1;
+        /* Add `summary->indx' and the number of bits set in `used'. */
+        used = (used & 0x5555) + ((used & 0xaaaa) >> 1);
+        used = (used & 0x3333) + ((used & 0xcccc) >> 2);
+        used = (used & 0x0f0f) + ((used & 0xf0f0) >> 4);
+        used = (used & 0x00ff) + (used >> 8);
+        c = jisx0208_2charset[summary->indx + used];
+        r[0] = (c >> 8); r[1] = (c & 0xff);
+        return 2;
+      }
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/jisx0212.h b/graf2d/win32gdk/gdk/src/iconv/jisx0212.h
new file mode 100644
index 00000000000..371dbb152cc
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/jisx0212.h
@@ -0,0 +1,2189 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * JISX0212.1990-0
+ */
+
+static const unsigned short jisx0212_2uni_page22[81] = {
+  /* 0x22 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x02d8, 0x02c7,
+  0x00b8, 0x02d9, 0x02dd, 0x00af, 0x02db, 0x02da, 0xff5e, 0x0384,
+  0x0385, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x00a1, 0x00a6, 0x00bf, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0x00ba, 0x00aa, 0x00a9, 0x00ae, 0x2122, 0x00a4,
+  0x2116,
+};
+static const unsigned short jisx0212_2uni_page26[188] = {
+  /* 0x26 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x0386, 0x0388, 0x0389, 0x038a, 0x03aa, 0xfffd, 0x038c, 0xfffd,
+  0x038e, 0x03ab, 0xfffd, 0x038f, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x03ac, 0x03ad, 0x03ae, 0x03af, 0x03ca, 0x0390, 0x03cc, 0x03c2,
+  0x03cd, 0x03cb, 0x03b0, 0x03ce, 0xfffd, 0xfffd,
+  /* 0x27 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x0402, 0x0403, 0x0404, 0x0405, 0x0406, 0x0407, 0x0408,
+  0x0409, 0x040a, 0x040b, 0x040c, 0x040e, 0x040f, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0x0452, 0x0453, 0x0454, 0x0455, 0x0456, 0x0457, 0x0458,
+  0x0459, 0x045a, 0x045b, 0x045c, 0x045e, 0x045f,
+};
+static const unsigned short jisx0212_2uni_page29[275] = {
+  /* 0x29 */
+  0x00c6, 0x0110, 0xfffd, 0x0126, 0xfffd, 0x0132, 0xfffd, 0x0141,
+  0x013f, 0xfffd, 0x014a, 0x00d8, 0x0152, 0xfffd, 0x0166, 0x00de,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x00e6, 0x0111, 0x00f0, 0x0127, 0x0131, 0x0133, 0x0138, 0x0142,
+  0x0140, 0x0149, 0x014b, 0x00f8, 0x0153, 0x00df, 0x0167, 0x00fe,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x2a */
+  0x00c1, 0x00c0, 0x00c4, 0x00c2, 0x0102, 0x01cd, 0x0100, 0x0104,
+  0x00c5, 0x00c3, 0x0106, 0x0108, 0x010c, 0x00c7, 0x010a, 0x010e,
+  0x00c9, 0x00c8, 0x00cb, 0x00ca, 0x011a, 0x0116, 0x0112, 0x0118,
+  0xfffd, 0x011c, 0x011e, 0x0122, 0x0120, 0x0124, 0x00cd, 0x00cc,
+  0x00cf, 0x00ce, 0x01cf, 0x0130, 0x012a, 0x012e, 0x0128, 0x0134,
+  0x0136, 0x0139, 0x013d, 0x013b, 0x0143, 0x0147, 0x0145, 0x00d1,
+  0x00d3, 0x00d2, 0x00d6, 0x00d4, 0x01d1, 0x0150, 0x014c, 0x00d5,
+  0x0154, 0x0158, 0x0156, 0x015a, 0x015c, 0x0160, 0x015e, 0x0164,
+  0x0162, 0x00da, 0x00d9, 0x00dc, 0x00db, 0x016c, 0x01d3, 0x0170,
+  0x016a, 0x0172, 0x016e, 0x0168, 0x01d7, 0x01db, 0x01d9, 0x01d5,
+  0x0174, 0x00dd, 0x0178, 0x0176, 0x0179, 0x017d, 0x017b, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x2b */
+  0x00e1, 0x00e0, 0x00e4, 0x00e2, 0x0103, 0x01ce, 0x0101, 0x0105,
+  0x00e5, 0x00e3, 0x0107, 0x0109, 0x010d, 0x00e7, 0x010b, 0x010f,
+  0x00e9, 0x00e8, 0x00eb, 0x00ea, 0x011b, 0x0117, 0x0113, 0x0119,
+  0x01f5, 0x011d, 0x011f, 0xfffd, 0x0121, 0x0125, 0x00ed, 0x00ec,
+  0x00ef, 0x00ee, 0x01d0, 0xfffd, 0x012b, 0x012f, 0x0129, 0x0135,
+  0x0137, 0x013a, 0x013e, 0x013c, 0x0144, 0x0148, 0x0146, 0x00f1,
+  0x00f3, 0x00f2, 0x00f6, 0x00f4, 0x01d2, 0x0151, 0x014d, 0x00f5,
+  0x0155, 0x0159, 0x0157, 0x015b, 0x015d, 0x0161, 0x015f, 0x0165,
+  0x0163, 0x00fa, 0x00f9, 0x00fc, 0x00fb, 0x016d, 0x01d4, 0x0171,
+  0x016b, 0x0173, 0x016f, 0x0169, 0x01d8, 0x01dc, 0x01da, 0x01d6,
+  0x0175, 0x00fd, 0x00ff, 0x0177, 0x017a, 0x017e, 0x017c,
+};
+static const unsigned short jisx0212_2uni_page30[5801] = {
+  /* 0x30 */
+  0x4e02, 0x4e04, 0x4e05, 0x4e0c, 0x4e12, 0x4e1f, 0x4e23, 0x4e24,
+  0x4e28, 0x4e2b, 0x4e2e, 0x4e2f, 0x4e30, 0x4e35, 0x4e40, 0x4e41,
+  0x4e44, 0x4e47, 0x4e51, 0x4e5a, 0x4e5c, 0x4e63, 0x4e68, 0x4e69,
+  0x4e74, 0x4e75, 0x4e79, 0x4e7f, 0x4e8d, 0x4e96, 0x4e97, 0x4e9d,
+  0x4eaf, 0x4eb9, 0x4ec3, 0x4ed0, 0x4eda, 0x4edb, 0x4ee0, 0x4ee1,
+  0x4ee2, 0x4ee8, 0x4eef, 0x4ef1, 0x4ef3, 0x4ef5, 0x4efd, 0x4efe,
+  0x4eff, 0x4f00, 0x4f02, 0x4f03, 0x4f08, 0x4f0b, 0x4f0c, 0x4f12,
+  0x4f15, 0x4f16, 0x4f17, 0x4f19, 0x4f2e, 0x4f31, 0x4f60, 0x4f33,
+  0x4f35, 0x4f37, 0x4f39, 0x4f3b, 0x4f3e, 0x4f40, 0x4f42, 0x4f48,
+  0x4f49, 0x4f4b, 0x4f4c, 0x4f52, 0x4f54, 0x4f56, 0x4f58, 0x4f5f,
+  0x4f63, 0x4f6a, 0x4f6c, 0x4f6e, 0x4f71, 0x4f77, 0x4f78, 0x4f79,
+  0x4f7a, 0x4f7d, 0x4f7e, 0x4f81, 0x4f82, 0x4f84,
+  /* 0x31 */
+  0x4f85, 0x4f89, 0x4f8a, 0x4f8c, 0x4f8e, 0x4f90, 0x4f92, 0x4f93,
+  0x4f94, 0x4f97, 0x4f99, 0x4f9a, 0x4f9e, 0x4f9f, 0x4fb2, 0x4fb7,
+  0x4fb9, 0x4fbb, 0x4fbc, 0x4fbd, 0x4fbe, 0x4fc0, 0x4fc1, 0x4fc5,
+  0x4fc6, 0x4fc8, 0x4fc9, 0x4fcb, 0x4fcc, 0x4fcd, 0x4fcf, 0x4fd2,
+  0x4fdc, 0x4fe0, 0x4fe2, 0x4ff0, 0x4ff2, 0x4ffc, 0x4ffd, 0x4fff,
+  0x5000, 0x5001, 0x5004, 0x5007, 0x500a, 0x500c, 0x500e, 0x5010,
+  0x5013, 0x5017, 0x5018, 0x501b, 0x501c, 0x501d, 0x501e, 0x5022,
+  0x5027, 0x502e, 0x5030, 0x5032, 0x5033, 0x5035, 0x5040, 0x5041,
+  0x5042, 0x5045, 0x5046, 0x504a, 0x504c, 0x504e, 0x5051, 0x5052,
+  0x5053, 0x5057, 0x5059, 0x505f, 0x5060, 0x5062, 0x5063, 0x5066,
+  0x5067, 0x506a, 0x506d, 0x5070, 0x5071, 0x503b, 0x5081, 0x5083,
+  0x5084, 0x5086, 0x508a, 0x508e, 0x508f, 0x5090,
+  /* 0x32 */
+  0x5092, 0x5093, 0x5094, 0x5096, 0x509b, 0x509c, 0x509e, 0x509f,
+  0x50a0, 0x50a1, 0x50a2, 0x50aa, 0x50af, 0x50b0, 0x50b9, 0x50ba,
+  0x50bd, 0x50c0, 0x50c3, 0x50c4, 0x50c7, 0x50cc, 0x50ce, 0x50d0,
+  0x50d3, 0x50d4, 0x50d8, 0x50dc, 0x50dd, 0x50df, 0x50e2, 0x50e4,
+  0x50e6, 0x50e8, 0x50e9, 0x50ef, 0x50f1, 0x50f6, 0x50fa, 0x50fe,
+  0x5103, 0x5106, 0x5107, 0x5108, 0x510b, 0x510c, 0x510d, 0x510e,
+  0x50f2, 0x5110, 0x5117, 0x5119, 0x511b, 0x511c, 0x511d, 0x511e,
+  0x5123, 0x5127, 0x5128, 0x512c, 0x512d, 0x512f, 0x5131, 0x5133,
+  0x5134, 0x5135, 0x5138, 0x5139, 0x5142, 0x514a, 0x514f, 0x5153,
+  0x5155, 0x5157, 0x5158, 0x515f, 0x5164, 0x5166, 0x517e, 0x5183,
+  0x5184, 0x518b, 0x518e, 0x5198, 0x519d, 0x51a1, 0x51a3, 0x51ad,
+  0x51b8, 0x51ba, 0x51bc, 0x51be, 0x51bf, 0x51c2,
+  /* 0x33 */
+  0x51c8, 0x51cf, 0x51d1, 0x51d2, 0x51d3, 0x51d5, 0x51d8, 0x51de,
+  0x51e2, 0x51e5, 0x51ee, 0x51f2, 0x51f3, 0x51f4, 0x51f7, 0x5201,
+  0x5202, 0x5205, 0x5212, 0x5213, 0x5215, 0x5216, 0x5218, 0x5222,
+  0x5228, 0x5231, 0x5232, 0x5235, 0x523c, 0x5245, 0x5249, 0x5255,
+  0x5257, 0x5258, 0x525a, 0x525c, 0x525f, 0x5260, 0x5261, 0x5266,
+  0x526e, 0x5277, 0x5278, 0x5279, 0x5280, 0x5282, 0x5285, 0x528a,
+  0x528c, 0x5293, 0x5295, 0x5296, 0x5297, 0x5298, 0x529a, 0x529c,
+  0x52a4, 0x52a5, 0x52a6, 0x52a7, 0x52af, 0x52b0, 0x52b6, 0x52b7,
+  0x52b8, 0x52ba, 0x52bb, 0x52bd, 0x52c0, 0x52c4, 0x52c6, 0x52c8,
+  0x52cc, 0x52cf, 0x52d1, 0x52d4, 0x52d6, 0x52db, 0x52dc, 0x52e1,
+  0x52e5, 0x52e8, 0x52e9, 0x52ea, 0x52ec, 0x52f0, 0x52f1, 0x52f4,
+  0x52f6, 0x52f7, 0x5300, 0x5303, 0x530a, 0x530b,
+  /* 0x34 */
+  0x530c, 0x5311, 0x5313, 0x5318, 0x531b, 0x531c, 0x531e, 0x531f,
+  0x5325, 0x5327, 0x5328, 0x5329, 0x532b, 0x532c, 0x532d, 0x5330,
+  0x5332, 0x5335, 0x533c, 0x533d, 0x533e, 0x5342, 0x534c, 0x534b,
+  0x5359, 0x535b, 0x5361, 0x5363, 0x5365, 0x536c, 0x536d, 0x5372,
+  0x5379, 0x537e, 0x5383, 0x5387, 0x5388, 0x538e, 0x5393, 0x5394,
+  0x5399, 0x539d, 0x53a1, 0x53a4, 0x53aa, 0x53ab, 0x53af, 0x53b2,
+  0x53b4, 0x53b5, 0x53b7, 0x53b8, 0x53ba, 0x53bd, 0x53c0, 0x53c5,
+  0x53cf, 0x53d2, 0x53d3, 0x53d5, 0x53da, 0x53dd, 0x53de, 0x53e0,
+  0x53e6, 0x53e7, 0x53f5, 0x5402, 0x5413, 0x541a, 0x5421, 0x5427,
+  0x5428, 0x542a, 0x542f, 0x5431, 0x5434, 0x5435, 0x5443, 0x5444,
+  0x5447, 0x544d, 0x544f, 0x545e, 0x5462, 0x5464, 0x5466, 0x5467,
+  0x5469, 0x546b, 0x546d, 0x546e, 0x5474, 0x547f,
+  /* 0x35 */
+  0x5481, 0x5483, 0x5485, 0x5488, 0x5489, 0x548d, 0x5491, 0x5495,
+  0x5496, 0x549c, 0x549f, 0x54a1, 0x54a6, 0x54a7, 0x54a9, 0x54aa,
+  0x54ad, 0x54ae, 0x54b1, 0x54b7, 0x54b9, 0x54ba, 0x54bb, 0x54bf,
+  0x54c6, 0x54ca, 0x54cd, 0x54ce, 0x54e0, 0x54ea, 0x54ec, 0x54ef,
+  0x54f6, 0x54fc, 0x54fe, 0x54ff, 0x5500, 0x5501, 0x5505, 0x5508,
+  0x5509, 0x550c, 0x550d, 0x550e, 0x5515, 0x552a, 0x552b, 0x5532,
+  0x5535, 0x5536, 0x553b, 0x553c, 0x553d, 0x5541, 0x5547, 0x5549,
+  0x554a, 0x554d, 0x5550, 0x5551, 0x5558, 0x555a, 0x555b, 0x555e,
+  0x5560, 0x5561, 0x5564, 0x5566, 0x557f, 0x5581, 0x5582, 0x5586,
+  0x5588, 0x558e, 0x558f, 0x5591, 0x5592, 0x5593, 0x5594, 0x5597,
+  0x55a3, 0x55a4, 0x55ad, 0x55b2, 0x55bf, 0x55c1, 0x55c3, 0x55c6,
+  0x55c9, 0x55cb, 0x55cc, 0x55ce, 0x55d1, 0x55d2,
+  /* 0x36 */
+  0x55d3, 0x55d7, 0x55d8, 0x55db, 0x55de, 0x55e2, 0x55e9, 0x55f6,
+  0x55ff, 0x5605, 0x5608, 0x560a, 0x560d, 0x560e, 0x560f, 0x5610,
+  0x5611, 0x5612, 0x5619, 0x562c, 0x5630, 0x5633, 0x5635, 0x5637,
+  0x5639, 0x563b, 0x563c, 0x563d, 0x563f, 0x5640, 0x5641, 0x5643,
+  0x5644, 0x5646, 0x5649, 0x564b, 0x564d, 0x564f, 0x5654, 0x565e,
+  0x5660, 0x5661, 0x5662, 0x5663, 0x5666, 0x5669, 0x566d, 0x566f,
+  0x5671, 0x5672, 0x5675, 0x5684, 0x5685, 0x5688, 0x568b, 0x568c,
+  0x5695, 0x5699, 0x569a, 0x569d, 0x569e, 0x569f, 0x56a6, 0x56a7,
+  0x56a8, 0x56a9, 0x56ab, 0x56ac, 0x56ad, 0x56b1, 0x56b3, 0x56b7,
+  0x56be, 0x56c5, 0x56c9, 0x56ca, 0x56cb, 0x56cf, 0x56d0, 0x56cc,
+  0x56cd, 0x56d9, 0x56dc, 0x56dd, 0x56df, 0x56e1, 0x56e4, 0x56e5,
+  0x56e6, 0x56e7, 0x56e8, 0x56f1, 0x56eb, 0x56ed,
+  /* 0x37 */
+  0x56f6, 0x56f7, 0x5701, 0x5702, 0x5707, 0x570a, 0x570c, 0x5711,
+  0x5715, 0x571a, 0x571b, 0x571d, 0x5720, 0x5722, 0x5723, 0x5724,
+  0x5725, 0x5729, 0x572a, 0x572c, 0x572e, 0x572f, 0x5733, 0x5734,
+  0x573d, 0x573e, 0x573f, 0x5745, 0x5746, 0x574c, 0x574d, 0x5752,
+  0x5762, 0x5765, 0x5767, 0x5768, 0x576b, 0x576d, 0x576e, 0x576f,
+  0x5770, 0x5771, 0x5773, 0x5774, 0x5775, 0x5777, 0x5779, 0x577a,
+  0x577b, 0x577c, 0x577e, 0x5781, 0x5783, 0x578c, 0x5794, 0x5797,
+  0x5799, 0x579a, 0x579c, 0x579d, 0x579e, 0x579f, 0x57a1, 0x5795,
+  0x57a7, 0x57a8, 0x57a9, 0x57ac, 0x57b8, 0x57bd, 0x57c7, 0x57c8,
+  0x57cc, 0x57cf, 0x57d5, 0x57dd, 0x57de, 0x57e4, 0x57e6, 0x57e7,
+  0x57e9, 0x57ed, 0x57f0, 0x57f5, 0x57f6, 0x57f8, 0x57fd, 0x57fe,
+  0x57ff, 0x5803, 0x5804, 0x5808, 0x5809, 0x57e1,
+  /* 0x38 */
+  0x580c, 0x580d, 0x581b, 0x581e, 0x581f, 0x5820, 0x5826, 0x5827,
+  0x582d, 0x5832, 0x5839, 0x583f, 0x5849, 0x584c, 0x584d, 0x584f,
+  0x5850, 0x5855, 0x585f, 0x5861, 0x5864, 0x5867, 0x5868, 0x5878,
+  0x587c, 0x587f, 0x5880, 0x5881, 0x5887, 0x5888, 0x5889, 0x588a,
+  0x588c, 0x588d, 0x588f, 0x5890, 0x5894, 0x5896, 0x589d, 0x58a0,
+  0x58a1, 0x58a2, 0x58a6, 0x58a9, 0x58b1, 0x58b2, 0x58c4, 0x58bc,
+  0x58c2, 0x58c8, 0x58cd, 0x58ce, 0x58d0, 0x58d2, 0x58d4, 0x58d6,
+  0x58da, 0x58dd, 0x58e1, 0x58e2, 0x58e9, 0x58f3, 0x5905, 0x5906,
+  0x590b, 0x590c, 0x5912, 0x5913, 0x5914, 0x8641, 0x591d, 0x5921,
+  0x5923, 0x5924, 0x5928, 0x592f, 0x5930, 0x5933, 0x5935, 0x5936,
+  0x593f, 0x5943, 0x5946, 0x5952, 0x5953, 0x5959, 0x595b, 0x595d,
+  0x595e, 0x595f, 0x5961, 0x5963, 0x596b, 0x596d,
+  /* 0x39 */
+  0x596f, 0x5972, 0x5975, 0x5976, 0x5979, 0x597b, 0x597c, 0x598b,
+  0x598c, 0x598e, 0x5992, 0x5995, 0x5997, 0x599f, 0x59a4, 0x59a7,
+  0x59ad, 0x59ae, 0x59af, 0x59b0, 0x59b3, 0x59b7, 0x59ba, 0x59bc,
+  0x59c1, 0x59c3, 0x59c4, 0x59c8, 0x59ca, 0x59cd, 0x59d2, 0x59dd,
+  0x59de, 0x59df, 0x59e3, 0x59e4, 0x59e7, 0x59ee, 0x59ef, 0x59f1,
+  0x59f2, 0x59f4, 0x59f7, 0x5a00, 0x5a04, 0x5a0c, 0x5a0d, 0x5a0e,
+  0x5a12, 0x5a13, 0x5a1e, 0x5a23, 0x5a24, 0x5a27, 0x5a28, 0x5a2a,
+  0x5a2d, 0x5a30, 0x5a44, 0x5a45, 0x5a47, 0x5a48, 0x5a4c, 0x5a50,
+  0x5a55, 0x5a5e, 0x5a63, 0x5a65, 0x5a67, 0x5a6d, 0x5a77, 0x5a7a,
+  0x5a7b, 0x5a7e, 0x5a8b, 0x5a90, 0x5a93, 0x5a96, 0x5a99, 0x5a9c,
+  0x5a9e, 0x5a9f, 0x5aa0, 0x5aa2, 0x5aa7, 0x5aac, 0x5ab1, 0x5ab2,
+  0x5ab3, 0x5ab5, 0x5ab8, 0x5aba, 0x5abb, 0x5abf,
+  /* 0x3a */
+  0x5ac4, 0x5ac6, 0x5ac8, 0x5acf, 0x5ada, 0x5adc, 0x5ae0, 0x5ae5,
+  0x5aea, 0x5aee, 0x5af5, 0x5af6, 0x5afd, 0x5b00, 0x5b01, 0x5b08,
+  0x5b17, 0x5b34, 0x5b19, 0x5b1b, 0x5b1d, 0x5b21, 0x5b25, 0x5b2d,
+  0x5b38, 0x5b41, 0x5b4b, 0x5b4c, 0x5b52, 0x5b56, 0x5b5e, 0x5b68,
+  0x5b6e, 0x5b6f, 0x5b7c, 0x5b7d, 0x5b7e, 0x5b7f, 0x5b81, 0x5b84,
+  0x5b86, 0x5b8a, 0x5b8e, 0x5b90, 0x5b91, 0x5b93, 0x5b94, 0x5b96,
+  0x5ba8, 0x5ba9, 0x5bac, 0x5bad, 0x5baf, 0x5bb1, 0x5bb2, 0x5bb7,
+  0x5bba, 0x5bbc, 0x5bc0, 0x5bc1, 0x5bcd, 0x5bcf, 0x5bd6, 0x5bd7,
+  0x5bd8, 0x5bd9, 0x5bda, 0x5be0, 0x5bef, 0x5bf1, 0x5bf4, 0x5bfd,
+  0x5c0c, 0x5c17, 0x5c1e, 0x5c1f, 0x5c23, 0x5c26, 0x5c29, 0x5c2b,
+  0x5c2c, 0x5c2e, 0x5c30, 0x5c32, 0x5c35, 0x5c36, 0x5c59, 0x5c5a,
+  0x5c5c, 0x5c62, 0x5c63, 0x5c67, 0x5c68, 0x5c69,
+  /* 0x3b */
+  0x5c6d, 0x5c70, 0x5c74, 0x5c75, 0x5c7a, 0x5c7b, 0x5c7c, 0x5c7d,
+  0x5c87, 0x5c88, 0x5c8a, 0x5c8f, 0x5c92, 0x5c9d, 0x5c9f, 0x5ca0,
+  0x5ca2, 0x5ca3, 0x5ca6, 0x5caa, 0x5cb2, 0x5cb4, 0x5cb5, 0x5cba,
+  0x5cc9, 0x5ccb, 0x5cd2, 0x5cdd, 0x5cd7, 0x5cee, 0x5cf1, 0x5cf2,
+  0x5cf4, 0x5d01, 0x5d06, 0x5d0d, 0x5d12, 0x5d2b, 0x5d23, 0x5d24,
+  0x5d26, 0x5d27, 0x5d31, 0x5d34, 0x5d39, 0x5d3d, 0x5d3f, 0x5d42,
+  0x5d43, 0x5d46, 0x5d48, 0x5d55, 0x5d51, 0x5d59, 0x5d4a, 0x5d5f,
+  0x5d60, 0x5d61, 0x5d62, 0x5d64, 0x5d6a, 0x5d6d, 0x5d70, 0x5d79,
+  0x5d7a, 0x5d7e, 0x5d7f, 0x5d81, 0x5d83, 0x5d88, 0x5d8a, 0x5d92,
+  0x5d93, 0x5d94, 0x5d95, 0x5d99, 0x5d9b, 0x5d9f, 0x5da0, 0x5da7,
+  0x5dab, 0x5db0, 0x5db4, 0x5db8, 0x5db9, 0x5dc3, 0x5dc7, 0x5dcb,
+  0x5dd0, 0x5dce, 0x5dd8, 0x5dd9, 0x5de0, 0x5de4,
+  /* 0x3c */
+  0x5de9, 0x5df8, 0x5df9, 0x5e00, 0x5e07, 0x5e0d, 0x5e12, 0x5e14,
+  0x5e15, 0x5e18, 0x5e1f, 0x5e20, 0x5e2e, 0x5e28, 0x5e32, 0x5e35,
+  0x5e3e, 0x5e4b, 0x5e50, 0x5e49, 0x5e51, 0x5e56, 0x5e58, 0x5e5b,
+  0x5e5c, 0x5e5e, 0x5e68, 0x5e6a, 0x5e6b, 0x5e6c, 0x5e6d, 0x5e6e,
+  0x5e70, 0x5e80, 0x5e8b, 0x5e8e, 0x5ea2, 0x5ea4, 0x5ea5, 0x5ea8,
+  0x5eaa, 0x5eac, 0x5eb1, 0x5eb3, 0x5ebd, 0x5ebe, 0x5ebf, 0x5ec6,
+  0x5ecc, 0x5ecb, 0x5ece, 0x5ed1, 0x5ed2, 0x5ed4, 0x5ed5, 0x5edc,
+  0x5ede, 0x5ee5, 0x5eeb, 0x5f02, 0x5f06, 0x5f07, 0x5f08, 0x5f0e,
+  0x5f19, 0x5f1c, 0x5f1d, 0x5f21, 0x5f22, 0x5f23, 0x5f24, 0x5f28,
+  0x5f2b, 0x5f2c, 0x5f2e, 0x5f30, 0x5f34, 0x5f36, 0x5f3b, 0x5f3d,
+  0x5f3f, 0x5f40, 0x5f44, 0x5f45, 0x5f47, 0x5f4d, 0x5f50, 0x5f54,
+  0x5f58, 0x5f5b, 0x5f60, 0x5f63, 0x5f64, 0x5f67,
+  /* 0x3d */
+  0x5f6f, 0x5f72, 0x5f74, 0x5f75, 0x5f78, 0x5f7a, 0x5f7d, 0x5f7e,
+  0x5f89, 0x5f8d, 0x5f8f, 0x5f96, 0x5f9c, 0x5f9d, 0x5fa2, 0x5fa7,
+  0x5fab, 0x5fa4, 0x5fac, 0x5faf, 0x5fb0, 0x5fb1, 0x5fb8, 0x5fc4,
+  0x5fc7, 0x5fc8, 0x5fc9, 0x5fcb, 0x5fd0, 0x5fd1, 0x5fd2, 0x5fd3,
+  0x5fd4, 0x5fde, 0x5fe1, 0x5fe2, 0x5fe8, 0x5fe9, 0x5fea, 0x5fec,
+  0x5fed, 0x5fee, 0x5fef, 0x5ff2, 0x5ff3, 0x5ff6, 0x5ffa, 0x5ffc,
+  0x6007, 0x600a, 0x600d, 0x6013, 0x6014, 0x6017, 0x6018, 0x601a,
+  0x601f, 0x6024, 0x602d, 0x6033, 0x6035, 0x6040, 0x6047, 0x6048,
+  0x6049, 0x604c, 0x6051, 0x6054, 0x6056, 0x6057, 0x605d, 0x6061,
+  0x6067, 0x6071, 0x607e, 0x607f, 0x6082, 0x6086, 0x6088, 0x608a,
+  0x608e, 0x6091, 0x6093, 0x6095, 0x6098, 0x609d, 0x609e, 0x60a2,
+  0x60a4, 0x60a5, 0x60a8, 0x60b0, 0x60b1, 0x60b7,
+  /* 0x3e */
+  0x60bb, 0x60be, 0x60c2, 0x60c4, 0x60c8, 0x60c9, 0x60ca, 0x60cb,
+  0x60ce, 0x60cf, 0x60d4, 0x60d5, 0x60d9, 0x60db, 0x60dd, 0x60de,
+  0x60e2, 0x60e5, 0x60f2, 0x60f5, 0x60f8, 0x60fc, 0x60fd, 0x6102,
+  0x6107, 0x610a, 0x610c, 0x6110, 0x6111, 0x6112, 0x6113, 0x6114,
+  0x6116, 0x6117, 0x6119, 0x611c, 0x611e, 0x6122, 0x612a, 0x612b,
+  0x6130, 0x6131, 0x6135, 0x6136, 0x6137, 0x6139, 0x6141, 0x6145,
+  0x6146, 0x6149, 0x615e, 0x6160, 0x616c, 0x6172, 0x6178, 0x617b,
+  0x617c, 0x617f, 0x6180, 0x6181, 0x6183, 0x6184, 0x618b, 0x618d,
+  0x6192, 0x6193, 0x6197, 0x6198, 0x619c, 0x619d, 0x619f, 0x61a0,
+  0x61a5, 0x61a8, 0x61aa, 0x61ad, 0x61b8, 0x61b9, 0x61bc, 0x61c0,
+  0x61c1, 0x61c2, 0x61ce, 0x61cf, 0x61d5, 0x61dc, 0x61dd, 0x61de,
+  0x61df, 0x61e1, 0x61e2, 0x61e7, 0x61e9, 0x61e5,
+  /* 0x3f */
+  0x61ec, 0x61ed, 0x61ef, 0x6201, 0x6203, 0x6204, 0x6207, 0x6213,
+  0x6215, 0x621c, 0x6220, 0x6222, 0x6223, 0x6227, 0x6229, 0x622b,
+  0x6239, 0x623d, 0x6242, 0x6243, 0x6244, 0x6246, 0x624c, 0x6250,
+  0x6251, 0x6252, 0x6254, 0x6256, 0x625a, 0x625c, 0x6264, 0x626d,
+  0x626f, 0x6273, 0x627a, 0x627d, 0x628d, 0x628e, 0x628f, 0x6290,
+  0x62a6, 0x62a8, 0x62b3, 0x62b6, 0x62b7, 0x62ba, 0x62be, 0x62bf,
+  0x62c4, 0x62ce, 0x62d5, 0x62d6, 0x62da, 0x62ea, 0x62f2, 0x62f4,
+  0x62fc, 0x62fd, 0x6303, 0x6304, 0x630a, 0x630b, 0x630d, 0x6310,
+  0x6313, 0x6316, 0x6318, 0x6329, 0x632a, 0x632d, 0x6335, 0x6336,
+  0x6339, 0x633c, 0x6341, 0x6342, 0x6343, 0x6344, 0x6346, 0x634a,
+  0x634b, 0x634e, 0x6352, 0x6353, 0x6354, 0x6358, 0x635b, 0x6365,
+  0x6366, 0x636c, 0x636d, 0x6371, 0x6374, 0x6375,
+  /* 0x40 */
+  0x6378, 0x637c, 0x637d, 0x637f, 0x6382, 0x6384, 0x6387, 0x638a,
+  0x6390, 0x6394, 0x6395, 0x6399, 0x639a, 0x639e, 0x63a4, 0x63a6,
+  0x63ad, 0x63ae, 0x63af, 0x63bd, 0x63c1, 0x63c5, 0x63c8, 0x63ce,
+  0x63d1, 0x63d3, 0x63d4, 0x63d5, 0x63dc, 0x63e0, 0x63e5, 0x63ea,
+  0x63ec, 0x63f2, 0x63f3, 0x63f5, 0x63f8, 0x63f9, 0x6409, 0x640a,
+  0x6410, 0x6412, 0x6414, 0x6418, 0x641e, 0x6420, 0x6422, 0x6424,
+  0x6425, 0x6429, 0x642a, 0x642f, 0x6430, 0x6435, 0x643d, 0x643f,
+  0x644b, 0x644f, 0x6451, 0x6452, 0x6453, 0x6454, 0x645a, 0x645b,
+  0x645c, 0x645d, 0x645f, 0x6460, 0x6461, 0x6463, 0x646d, 0x6473,
+  0x6474, 0x647b, 0x647d, 0x6485, 0x6487, 0x648f, 0x6490, 0x6491,
+  0x6498, 0x6499, 0x649b, 0x649d, 0x649f, 0x64a1, 0x64a3, 0x64a6,
+  0x64a8, 0x64ac, 0x64b3, 0x64bd, 0x64be, 0x64bf,
+  /* 0x41 */
+  0x64c4, 0x64c9, 0x64ca, 0x64cb, 0x64cc, 0x64ce, 0x64d0, 0x64d1,
+  0x64d5, 0x64d7, 0x64e4, 0x64e5, 0x64e9, 0x64ea, 0x64ed, 0x64f0,
+  0x64f5, 0x64f7, 0x64fb, 0x64ff, 0x6501, 0x6504, 0x6508, 0x6509,
+  0x650a, 0x650f, 0x6513, 0x6514, 0x6516, 0x6519, 0x651b, 0x651e,
+  0x651f, 0x6522, 0x6526, 0x6529, 0x652e, 0x6531, 0x653a, 0x653c,
+  0x653d, 0x6543, 0x6547, 0x6549, 0x6550, 0x6552, 0x6554, 0x655f,
+  0x6560, 0x6567, 0x656b, 0x657a, 0x657d, 0x6581, 0x6585, 0x658a,
+  0x6592, 0x6595, 0x6598, 0x659d, 0x65a0, 0x65a3, 0x65a6, 0x65ae,
+  0x65b2, 0x65b3, 0x65b4, 0x65bf, 0x65c2, 0x65c8, 0x65c9, 0x65ce,
+  0x65d0, 0x65d4, 0x65d6, 0x65d8, 0x65df, 0x65f0, 0x65f2, 0x65f4,
+  0x65f5, 0x65f9, 0x65fe, 0x65ff, 0x6600, 0x6604, 0x6608, 0x6609,
+  0x660d, 0x6611, 0x6612, 0x6615, 0x6616, 0x661d,
+  /* 0x42 */
+  0x661e, 0x6621, 0x6622, 0x6623, 0x6624, 0x6626, 0x6629, 0x662a,
+  0x662b, 0x662c, 0x662e, 0x6630, 0x6631, 0x6633, 0x6639, 0x6637,
+  0x6640, 0x6645, 0x6646, 0x664a, 0x664c, 0x6651, 0x664e, 0x6657,
+  0x6658, 0x6659, 0x665b, 0x665c, 0x6660, 0x6661, 0x66fb, 0x666a,
+  0x666b, 0x666c, 0x667e, 0x6673, 0x6675, 0x667f, 0x6677, 0x6678,
+  0x6679, 0x667b, 0x6680, 0x667c, 0x668b, 0x668c, 0x668d, 0x6690,
+  0x6692, 0x6699, 0x669a, 0x669b, 0x669c, 0x669f, 0x66a0, 0x66a4,
+  0x66ad, 0x66b1, 0x66b2, 0x66b5, 0x66bb, 0x66bf, 0x66c0, 0x66c2,
+  0x66c3, 0x66c8, 0x66cc, 0x66ce, 0x66cf, 0x66d4, 0x66db, 0x66df,
+  0x66e8, 0x66eb, 0x66ec, 0x66ee, 0x66fa, 0x6705, 0x6707, 0x670e,
+  0x6713, 0x6719, 0x671c, 0x6720, 0x6722, 0x6733, 0x673e, 0x6745,
+  0x6747, 0x6748, 0x674c, 0x6754, 0x6755, 0x675d,
+  /* 0x43 */
+  0x6766, 0x676c, 0x676e, 0x6774, 0x6776, 0x677b, 0x6781, 0x6784,
+  0x678e, 0x678f, 0x6791, 0x6793, 0x6796, 0x6798, 0x6799, 0x679b,
+  0x67b0, 0x67b1, 0x67b2, 0x67b5, 0x67bb, 0x67bc, 0x67bd, 0x67f9,
+  0x67c0, 0x67c2, 0x67c3, 0x67c5, 0x67c8, 0x67c9, 0x67d2, 0x67d7,
+  0x67d9, 0x67dc, 0x67e1, 0x67e6, 0x67f0, 0x67f2, 0x67f6, 0x67f7,
+  0x6852, 0x6814, 0x6819, 0x681d, 0x681f, 0x6828, 0x6827, 0x682c,
+  0x682d, 0x682f, 0x6830, 0x6831, 0x6833, 0x683b, 0x683f, 0x6844,
+  0x6845, 0x684a, 0x684c, 0x6855, 0x6857, 0x6858, 0x685b, 0x686b,
+  0x686e, 0x686f, 0x6870, 0x6871, 0x6872, 0x6875, 0x6879, 0x687a,
+  0x687b, 0x687c, 0x6882, 0x6884, 0x6886, 0x6888, 0x6896, 0x6898,
+  0x689a, 0x689c, 0x68a1, 0x68a3, 0x68a5, 0x68a9, 0x68aa, 0x68ae,
+  0x68b2, 0x68bb, 0x68c5, 0x68c8, 0x68cc, 0x68cf,
+  /* 0x44 */
+  0x68d0, 0x68d1, 0x68d3, 0x68d6, 0x68d9, 0x68dc, 0x68dd, 0x68e5,
+  0x68e8, 0x68ea, 0x68eb, 0x68ec, 0x68ed, 0x68f0, 0x68f1, 0x68f5,
+  0x68f6, 0x68fb, 0x68fc, 0x68fd, 0x6906, 0x6909, 0x690a, 0x6910,
+  0x6911, 0x6913, 0x6916, 0x6917, 0x6931, 0x6933, 0x6935, 0x6938,
+  0x693b, 0x6942, 0x6945, 0x6949, 0x694e, 0x6957, 0x695b, 0x6963,
+  0x6964, 0x6965, 0x6966, 0x6968, 0x6969, 0x696c, 0x6970, 0x6971,
+  0x6972, 0x697a, 0x697b, 0x697f, 0x6980, 0x698d, 0x6992, 0x6996,
+  0x6998, 0x69a1, 0x69a5, 0x69a6, 0x69a8, 0x69ab, 0x69ad, 0x69af,
+  0x69b7, 0x69b8, 0x69ba, 0x69bc, 0x69c5, 0x69c8, 0x69d1, 0x69d6,
+  0x69d7, 0x69e2, 0x69e5, 0x69ee, 0x69ef, 0x69f1, 0x69f3, 0x69f5,
+  0x69fe, 0x6a00, 0x6a01, 0x6a03, 0x6a0f, 0x6a11, 0x6a15, 0x6a1a,
+  0x6a1d, 0x6a20, 0x6a24, 0x6a28, 0x6a30, 0x6a32,
+  /* 0x45 */
+  0x6a34, 0x6a37, 0x6a3b, 0x6a3e, 0x6a3f, 0x6a45, 0x6a46, 0x6a49,
+  0x6a4a, 0x6a4e, 0x6a50, 0x6a51, 0x6a52, 0x6a55, 0x6a56, 0x6a5b,
+  0x6a64, 0x6a67, 0x6a6a, 0x6a71, 0x6a73, 0x6a7e, 0x6a81, 0x6a83,
+  0x6a86, 0x6a87, 0x6a89, 0x6a8b, 0x6a91, 0x6a9b, 0x6a9d, 0x6a9e,
+  0x6a9f, 0x6aa5, 0x6aab, 0x6aaf, 0x6ab0, 0x6ab1, 0x6ab4, 0x6abd,
+  0x6abe, 0x6abf, 0x6ac6, 0x6ac9, 0x6ac8, 0x6acc, 0x6ad0, 0x6ad4,
+  0x6ad5, 0x6ad6, 0x6adc, 0x6add, 0x6ae4, 0x6ae7, 0x6aec, 0x6af0,
+  0x6af1, 0x6af2, 0x6afc, 0x6afd, 0x6b02, 0x6b03, 0x6b06, 0x6b07,
+  0x6b09, 0x6b0f, 0x6b10, 0x6b11, 0x6b17, 0x6b1b, 0x6b1e, 0x6b24,
+  0x6b28, 0x6b2b, 0x6b2c, 0x6b2f, 0x6b35, 0x6b36, 0x6b3b, 0x6b3f,
+  0x6b46, 0x6b4a, 0x6b4d, 0x6b52, 0x6b56, 0x6b58, 0x6b5d, 0x6b60,
+  0x6b67, 0x6b6b, 0x6b6e, 0x6b70, 0x6b75, 0x6b7d,
+  /* 0x46 */
+  0x6b7e, 0x6b82, 0x6b85, 0x6b97, 0x6b9b, 0x6b9f, 0x6ba0, 0x6ba2,
+  0x6ba3, 0x6ba8, 0x6ba9, 0x6bac, 0x6bad, 0x6bae, 0x6bb0, 0x6bb8,
+  0x6bb9, 0x6bbd, 0x6bbe, 0x6bc3, 0x6bc4, 0x6bc9, 0x6bcc, 0x6bd6,
+  0x6bda, 0x6be1, 0x6be3, 0x6be6, 0x6be7, 0x6bee, 0x6bf1, 0x6bf7,
+  0x6bf9, 0x6bff, 0x6c02, 0x6c04, 0x6c05, 0x6c09, 0x6c0d, 0x6c0e,
+  0x6c10, 0x6c12, 0x6c19, 0x6c1f, 0x6c26, 0x6c27, 0x6c28, 0x6c2c,
+  0x6c2e, 0x6c33, 0x6c35, 0x6c36, 0x6c3a, 0x6c3b, 0x6c3f, 0x6c4a,
+  0x6c4b, 0x6c4d, 0x6c4f, 0x6c52, 0x6c54, 0x6c59, 0x6c5b, 0x6c5c,
+  0x6c6b, 0x6c6d, 0x6c6f, 0x6c74, 0x6c76, 0x6c78, 0x6c79, 0x6c7b,
+  0x6c85, 0x6c86, 0x6c87, 0x6c89, 0x6c94, 0x6c95, 0x6c97, 0x6c98,
+  0x6c9c, 0x6c9f, 0x6cb0, 0x6cb2, 0x6cb4, 0x6cc2, 0x6cc6, 0x6ccd,
+  0x6ccf, 0x6cd0, 0x6cd1, 0x6cd2, 0x6cd4, 0x6cd6,
+  /* 0x47 */
+  0x6cda, 0x6cdc, 0x6ce0, 0x6ce7, 0x6ce9, 0x6ceb, 0x6cec, 0x6cee,
+  0x6cf2, 0x6cf4, 0x6d04, 0x6d07, 0x6d0a, 0x6d0e, 0x6d0f, 0x6d11,
+  0x6d13, 0x6d1a, 0x6d26, 0x6d27, 0x6d28, 0x6c67, 0x6d2e, 0x6d2f,
+  0x6d31, 0x6d39, 0x6d3c, 0x6d3f, 0x6d57, 0x6d5e, 0x6d5f, 0x6d61,
+  0x6d65, 0x6d67, 0x6d6f, 0x6d70, 0x6d7c, 0x6d82, 0x6d87, 0x6d91,
+  0x6d92, 0x6d94, 0x6d96, 0x6d97, 0x6d98, 0x6daa, 0x6dac, 0x6db4,
+  0x6db7, 0x6db9, 0x6dbd, 0x6dbf, 0x6dc4, 0x6dc8, 0x6dca, 0x6dce,
+  0x6dcf, 0x6dd6, 0x6ddb, 0x6ddd, 0x6ddf, 0x6de0, 0x6de2, 0x6de5,
+  0x6de9, 0x6def, 0x6df0, 0x6df4, 0x6df6, 0x6dfc, 0x6e00, 0x6e04,
+  0x6e1e, 0x6e22, 0x6e27, 0x6e32, 0x6e36, 0x6e39, 0x6e3b, 0x6e3c,
+  0x6e44, 0x6e45, 0x6e48, 0x6e49, 0x6e4b, 0x6e4f, 0x6e51, 0x6e52,
+  0x6e53, 0x6e54, 0x6e57, 0x6e5c, 0x6e5d, 0x6e5e,
+  /* 0x48 */
+  0x6e62, 0x6e63, 0x6e68, 0x6e73, 0x6e7b, 0x6e7d, 0x6e8d, 0x6e93,
+  0x6e99, 0x6ea0, 0x6ea7, 0x6ead, 0x6eae, 0x6eb1, 0x6eb3, 0x6ebb,
+  0x6ebf, 0x6ec0, 0x6ec1, 0x6ec3, 0x6ec7, 0x6ec8, 0x6eca, 0x6ecd,
+  0x6ece, 0x6ecf, 0x6eeb, 0x6eed, 0x6eee, 0x6ef9, 0x6efb, 0x6efd,
+  0x6f04, 0x6f08, 0x6f0a, 0x6f0c, 0x6f0d, 0x6f16, 0x6f18, 0x6f1a,
+  0x6f1b, 0x6f26, 0x6f29, 0x6f2a, 0x6f2f, 0x6f30, 0x6f33, 0x6f36,
+  0x6f3b, 0x6f3c, 0x6f2d, 0x6f4f, 0x6f51, 0x6f52, 0x6f53, 0x6f57,
+  0x6f59, 0x6f5a, 0x6f5d, 0x6f5e, 0x6f61, 0x6f62, 0x6f68, 0x6f6c,
+  0x6f7d, 0x6f7e, 0x6f83, 0x6f87, 0x6f88, 0x6f8b, 0x6f8c, 0x6f8d,
+  0x6f90, 0x6f92, 0x6f93, 0x6f94, 0x6f96, 0x6f9a, 0x6f9f, 0x6fa0,
+  0x6fa5, 0x6fa6, 0x6fa7, 0x6fa8, 0x6fae, 0x6faf, 0x6fb0, 0x6fb5,
+  0x6fb6, 0x6fbc, 0x6fc5, 0x6fc7, 0x6fc8, 0x6fca,
+  /* 0x49 */
+  0x6fda, 0x6fde, 0x6fe8, 0x6fe9, 0x6ff0, 0x6ff5, 0x6ff9, 0x6ffc,
+  0x6ffd, 0x7000, 0x7005, 0x7006, 0x7007, 0x700d, 0x7017, 0x7020,
+  0x7023, 0x702f, 0x7034, 0x7037, 0x7039, 0x703c, 0x7043, 0x7044,
+  0x7048, 0x7049, 0x704a, 0x704b, 0x7054, 0x7055, 0x705d, 0x705e,
+  0x704e, 0x7064, 0x7065, 0x706c, 0x706e, 0x7075, 0x7076, 0x707e,
+  0x7081, 0x7085, 0x7086, 0x7094, 0x7095, 0x7096, 0x7097, 0x7098,
+  0x709b, 0x70a4, 0x70ab, 0x70b0, 0x70b1, 0x70b4, 0x70b7, 0x70ca,
+  0x70d1, 0x70d3, 0x70d4, 0x70d5, 0x70d6, 0x70d8, 0x70dc, 0x70e4,
+  0x70fa, 0x7103, 0x7104, 0x7105, 0x7106, 0x7107, 0x710b, 0x710c,
+  0x710f, 0x711e, 0x7120, 0x712b, 0x712d, 0x712f, 0x7130, 0x7131,
+  0x7138, 0x7141, 0x7145, 0x7146, 0x7147, 0x714a, 0x714b, 0x7150,
+  0x7152, 0x7157, 0x715a, 0x715c, 0x715e, 0x7160,
+  /* 0x4a */
+  0x7168, 0x7179, 0x7180, 0x7185, 0x7187, 0x718c, 0x7192, 0x719a,
+  0x719b, 0x71a0, 0x71a2, 0x71af, 0x71b0, 0x71b2, 0x71b3, 0x71ba,
+  0x71bf, 0x71c0, 0x71c1, 0x71c4, 0x71cb, 0x71cc, 0x71d3, 0x71d6,
+  0x71d9, 0x71da, 0x71dc, 0x71f8, 0x71fe, 0x7200, 0x7207, 0x7208,
+  0x7209, 0x7213, 0x7217, 0x721a, 0x721d, 0x721f, 0x7224, 0x722b,
+  0x722f, 0x7234, 0x7238, 0x7239, 0x7241, 0x7242, 0x7243, 0x7245,
+  0x724e, 0x724f, 0x7250, 0x7253, 0x7255, 0x7256, 0x725a, 0x725c,
+  0x725e, 0x7260, 0x7263, 0x7268, 0x726b, 0x726e, 0x726f, 0x7271,
+  0x7277, 0x7278, 0x727b, 0x727c, 0x727f, 0x7284, 0x7289, 0x728d,
+  0x728e, 0x7293, 0x729b, 0x72a8, 0x72ad, 0x72ae, 0x72b1, 0x72b4,
+  0x72be, 0x72c1, 0x72c7, 0x72c9, 0x72cc, 0x72d5, 0x72d6, 0x72d8,
+  0x72df, 0x72e5, 0x72f3, 0x72f4, 0x72fa, 0x72fb,
+  /* 0x4b */
+  0x72fe, 0x7302, 0x7304, 0x7305, 0x7307, 0x730b, 0x730d, 0x7312,
+  0x7313, 0x7318, 0x7319, 0x731e, 0x7322, 0x7324, 0x7327, 0x7328,
+  0x732c, 0x7331, 0x7332, 0x7335, 0x733a, 0x733b, 0x733d, 0x7343,
+  0x734d, 0x7350, 0x7352, 0x7356, 0x7358, 0x735d, 0x735e, 0x735f,
+  0x7360, 0x7366, 0x7367, 0x7369, 0x736b, 0x736c, 0x736e, 0x736f,
+  0x7371, 0x7377, 0x7379, 0x737c, 0x7380, 0x7381, 0x7383, 0x7385,
+  0x7386, 0x738e, 0x7390, 0x7393, 0x7395, 0x7397, 0x7398, 0x739c,
+  0x739e, 0x739f, 0x73a0, 0x73a2, 0x73a5, 0x73a6, 0x73aa, 0x73ab,
+  0x73ad, 0x73b5, 0x73b7, 0x73b9, 0x73bc, 0x73bd, 0x73bf, 0x73c5,
+  0x73c6, 0x73c9, 0x73cb, 0x73cc, 0x73cf, 0x73d2, 0x73d3, 0x73d6,
+  0x73d9, 0x73dd, 0x73e1, 0x73e3, 0x73e6, 0x73e7, 0x73e9, 0x73f4,
+  0x73f5, 0x73f7, 0x73f9, 0x73fa, 0x73fb, 0x73fd,
+  /* 0x4c */
+  0x73ff, 0x7400, 0x7401, 0x7404, 0x7407, 0x740a, 0x7411, 0x741a,
+  0x741b, 0x7424, 0x7426, 0x7428, 0x7429, 0x742a, 0x742b, 0x742c,
+  0x742d, 0x742e, 0x742f, 0x7430, 0x7431, 0x7439, 0x7440, 0x7443,
+  0x7444, 0x7446, 0x7447, 0x744b, 0x744d, 0x7451, 0x7452, 0x7457,
+  0x745d, 0x7462, 0x7466, 0x7467, 0x7468, 0x746b, 0x746d, 0x746e,
+  0x7471, 0x7472, 0x7480, 0x7481, 0x7485, 0x7486, 0x7487, 0x7489,
+  0x748f, 0x7490, 0x7491, 0x7492, 0x7498, 0x7499, 0x749a, 0x749c,
+  0x749f, 0x74a0, 0x74a1, 0x74a3, 0x74a6, 0x74a8, 0x74a9, 0x74aa,
+  0x74ab, 0x74ae, 0x74af, 0x74b1, 0x74b2, 0x74b5, 0x74b9, 0x74bb,
+  0x74bf, 0x74c8, 0x74c9, 0x74cc, 0x74d0, 0x74d3, 0x74d8, 0x74da,
+  0x74db, 0x74de, 0x74df, 0x74e4, 0x74e8, 0x74ea, 0x74eb, 0x74ef,
+  0x74f4, 0x74fa, 0x74fb, 0x74fc, 0x74ff, 0x7506,
+  /* 0x4d */
+  0x7512, 0x7516, 0x7517, 0x7520, 0x7521, 0x7524, 0x7527, 0x7529,
+  0x752a, 0x752f, 0x7536, 0x7539, 0x753d, 0x753e, 0x753f, 0x7540,
+  0x7543, 0x7547, 0x7548, 0x754e, 0x7550, 0x7552, 0x7557, 0x755e,
+  0x755f, 0x7561, 0x756f, 0x7571, 0x7579, 0x757a, 0x757b, 0x757c,
+  0x757d, 0x757e, 0x7581, 0x7585, 0x7590, 0x7592, 0x7593, 0x7595,
+  0x7599, 0x759c, 0x75a2, 0x75a4, 0x75b4, 0x75ba, 0x75bf, 0x75c0,
+  0x75c1, 0x75c4, 0x75c6, 0x75cc, 0x75ce, 0x75cf, 0x75d7, 0x75dc,
+  0x75df, 0x75e0, 0x75e1, 0x75e4, 0x75e7, 0x75ec, 0x75ee, 0x75ef,
+  0x75f1, 0x75f9, 0x7600, 0x7602, 0x7603, 0x7604, 0x7607, 0x7608,
+  0x760a, 0x760c, 0x760f, 0x7612, 0x7613, 0x7615, 0x7616, 0x7619,
+  0x761b, 0x761c, 0x761d, 0x761e, 0x7623, 0x7625, 0x7626, 0x7629,
+  0x762d, 0x7632, 0x7633, 0x7635, 0x7638, 0x7639,
+  /* 0x4e */
+  0x763a, 0x763c, 0x764a, 0x7640, 0x7641, 0x7643, 0x7644, 0x7645,
+  0x7649, 0x764b, 0x7655, 0x7659, 0x765f, 0x7664, 0x7665, 0x766d,
+  0x766e, 0x766f, 0x7671, 0x7674, 0x7681, 0x7685, 0x768c, 0x768d,
+  0x7695, 0x769b, 0x769c, 0x769d, 0x769f, 0x76a0, 0x76a2, 0x76a3,
+  0x76a4, 0x76a5, 0x76a6, 0x76a7, 0x76a8, 0x76aa, 0x76ad, 0x76bd,
+  0x76c1, 0x76c5, 0x76c9, 0x76cb, 0x76cc, 0x76ce, 0x76d4, 0x76d9,
+  0x76e0, 0x76e6, 0x76e8, 0x76ec, 0x76f0, 0x76f1, 0x76f6, 0x76f9,
+  0x76fc, 0x7700, 0x7706, 0x770a, 0x770e, 0x7712, 0x7714, 0x7715,
+  0x7717, 0x7719, 0x771a, 0x771c, 0x7722, 0x7728, 0x772d, 0x772e,
+  0x772f, 0x7734, 0x7735, 0x7736, 0x7739, 0x773d, 0x773e, 0x7742,
+  0x7745, 0x7746, 0x774a, 0x774d, 0x774e, 0x774f, 0x7752, 0x7756,
+  0x7757, 0x775c, 0x775e, 0x775f, 0x7760, 0x7762,
+  /* 0x4f */
+  0x7764, 0x7767, 0x776a, 0x776c, 0x7770, 0x7772, 0x7773, 0x7774,
+  0x777a, 0x777d, 0x7780, 0x7784, 0x778c, 0x778d, 0x7794, 0x7795,
+  0x7796, 0x779a, 0x779f, 0x77a2, 0x77a7, 0x77aa, 0x77ae, 0x77af,
+  0x77b1, 0x77b5, 0x77be, 0x77c3, 0x77c9, 0x77d1, 0x77d2, 0x77d5,
+  0x77d9, 0x77de, 0x77df, 0x77e0, 0x77e4, 0x77e6, 0x77ea, 0x77ec,
+  0x77f0, 0x77f1, 0x77f4, 0x77f8, 0x77fb, 0x7805, 0x7806, 0x7809,
+  0x780d, 0x780e, 0x7811, 0x781d, 0x7821, 0x7822, 0x7823, 0x782d,
+  0x782e, 0x7830, 0x7835, 0x7837, 0x7843, 0x7844, 0x7847, 0x7848,
+  0x784c, 0x784e, 0x7852, 0x785c, 0x785e, 0x7860, 0x7861, 0x7863,
+  0x7864, 0x7868, 0x786a, 0x786e, 0x787a, 0x787e, 0x788a, 0x788f,
+  0x7894, 0x7898, 0x78a1, 0x789d, 0x789e, 0x789f, 0x78a4, 0x78a8,
+  0x78ac, 0x78ad, 0x78b0, 0x78b1, 0x78b2, 0x78b3,
+  /* 0x50 */
+  0x78bb, 0x78bd, 0x78bf, 0x78c7, 0x78c8, 0x78c9, 0x78cc, 0x78ce,
+  0x78d2, 0x78d3, 0x78d5, 0x78d6, 0x78e4, 0x78db, 0x78df, 0x78e0,
+  0x78e1, 0x78e6, 0x78ea, 0x78f2, 0x78f3, 0x7900, 0x78f6, 0x78f7,
+  0x78fa, 0x78fb, 0x78ff, 0x7906, 0x790c, 0x7910, 0x791a, 0x791c,
+  0x791e, 0x791f, 0x7920, 0x7925, 0x7927, 0x7929, 0x792d, 0x7931,
+  0x7934, 0x7935, 0x793b, 0x793d, 0x793f, 0x7944, 0x7945, 0x7946,
+  0x794a, 0x794b, 0x794f, 0x7951, 0x7954, 0x7958, 0x795b, 0x795c,
+  0x7967, 0x7969, 0x796b, 0x7972, 0x7979, 0x797b, 0x797c, 0x797e,
+  0x798b, 0x798c, 0x7991, 0x7993, 0x7994, 0x7995, 0x7996, 0x7998,
+  0x799b, 0x799c, 0x79a1, 0x79a8, 0x79a9, 0x79ab, 0x79af, 0x79b1,
+  0x79b4, 0x79b8, 0x79bb, 0x79c2, 0x79c4, 0x79c7, 0x79c8, 0x79ca,
+  0x79cf, 0x79d4, 0x79d6, 0x79da, 0x79dd, 0x79de,
+  /* 0x51 */
+  0x79e0, 0x79e2, 0x79e5, 0x79ea, 0x79eb, 0x79ed, 0x79f1, 0x79f8,
+  0x79fc, 0x7a02, 0x7a03, 0x7a07, 0x7a09, 0x7a0a, 0x7a0c, 0x7a11,
+  0x7a15, 0x7a1b, 0x7a1e, 0x7a21, 0x7a27, 0x7a2b, 0x7a2d, 0x7a2f,
+  0x7a30, 0x7a34, 0x7a35, 0x7a38, 0x7a39, 0x7a3a, 0x7a44, 0x7a45,
+  0x7a47, 0x7a48, 0x7a4c, 0x7a55, 0x7a56, 0x7a59, 0x7a5c, 0x7a5d,
+  0x7a5f, 0x7a60, 0x7a65, 0x7a67, 0x7a6a, 0x7a6d, 0x7a75, 0x7a78,
+  0x7a7e, 0x7a80, 0x7a82, 0x7a85, 0x7a86, 0x7a8a, 0x7a8b, 0x7a90,
+  0x7a91, 0x7a94, 0x7a9e, 0x7aa0, 0x7aa3, 0x7aac, 0x7ab3, 0x7ab5,
+  0x7ab9, 0x7abb, 0x7abc, 0x7ac6, 0x7ac9, 0x7acc, 0x7ace, 0x7ad1,
+  0x7adb, 0x7ae8, 0x7ae9, 0x7aeb, 0x7aec, 0x7af1, 0x7af4, 0x7afb,
+  0x7afd, 0x7afe, 0x7b07, 0x7b14, 0x7b1f, 0x7b23, 0x7b27, 0x7b29,
+  0x7b2a, 0x7b2b, 0x7b2d, 0x7b2e, 0x7b2f, 0x7b30,
+  /* 0x52 */
+  0x7b31, 0x7b34, 0x7b3d, 0x7b3f, 0x7b40, 0x7b41, 0x7b47, 0x7b4e,
+  0x7b55, 0x7b60, 0x7b64, 0x7b66, 0x7b69, 0x7b6a, 0x7b6d, 0x7b6f,
+  0x7b72, 0x7b73, 0x7b77, 0x7b84, 0x7b89, 0x7b8e, 0x7b90, 0x7b91,
+  0x7b96, 0x7b9b, 0x7b9e, 0x7ba0, 0x7ba5, 0x7bac, 0x7baf, 0x7bb0,
+  0x7bb2, 0x7bb5, 0x7bb6, 0x7bba, 0x7bbb, 0x7bbc, 0x7bbd, 0x7bc2,
+  0x7bc5, 0x7bc8, 0x7bca, 0x7bd4, 0x7bd6, 0x7bd7, 0x7bd9, 0x7bda,
+  0x7bdb, 0x7be8, 0x7bea, 0x7bf2, 0x7bf4, 0x7bf5, 0x7bf8, 0x7bf9,
+  0x7bfa, 0x7bfc, 0x7bfe, 0x7c01, 0x7c02, 0x7c03, 0x7c04, 0x7c06,
+  0x7c09, 0x7c0b, 0x7c0c, 0x7c0e, 0x7c0f, 0x7c19, 0x7c1b, 0x7c20,
+  0x7c25, 0x7c26, 0x7c28, 0x7c2c, 0x7c31, 0x7c33, 0x7c34, 0x7c36,
+  0x7c39, 0x7c3a, 0x7c46, 0x7c4a, 0x7c55, 0x7c51, 0x7c52, 0x7c53,
+  0x7c59, 0x7c5a, 0x7c5b, 0x7c5c, 0x7c5d, 0x7c5e,
+  /* 0x53 */
+  0x7c61, 0x7c63, 0x7c67, 0x7c69, 0x7c6d, 0x7c6e, 0x7c70, 0x7c72,
+  0x7c79, 0x7c7c, 0x7c7d, 0x7c86, 0x7c87, 0x7c8f, 0x7c94, 0x7c9e,
+  0x7ca0, 0x7ca6, 0x7cb0, 0x7cb6, 0x7cb7, 0x7cba, 0x7cbb, 0x7cbc,
+  0x7cbf, 0x7cc4, 0x7cc7, 0x7cc8, 0x7cc9, 0x7ccd, 0x7ccf, 0x7cd3,
+  0x7cd4, 0x7cd5, 0x7cd7, 0x7cd9, 0x7cda, 0x7cdd, 0x7ce6, 0x7ce9,
+  0x7ceb, 0x7cf5, 0x7d03, 0x7d07, 0x7d08, 0x7d09, 0x7d0f, 0x7d11,
+  0x7d12, 0x7d13, 0x7d16, 0x7d1d, 0x7d1e, 0x7d23, 0x7d26, 0x7d2a,
+  0x7d2d, 0x7d31, 0x7d3c, 0x7d3d, 0x7d3e, 0x7d40, 0x7d41, 0x7d47,
+  0x7d48, 0x7d4d, 0x7d51, 0x7d53, 0x7d57, 0x7d59, 0x7d5a, 0x7d5c,
+  0x7d5d, 0x7d65, 0x7d67, 0x7d6a, 0x7d70, 0x7d78, 0x7d7a, 0x7d7b,
+  0x7d7f, 0x7d81, 0x7d82, 0x7d83, 0x7d85, 0x7d86, 0x7d88, 0x7d8b,
+  0x7d8c, 0x7d8d, 0x7d91, 0x7d96, 0x7d97, 0x7d9d,
+  /* 0x54 */
+  0x7d9e, 0x7da6, 0x7da7, 0x7daa, 0x7db3, 0x7db6, 0x7db7, 0x7db9,
+  0x7dc2, 0x7dc3, 0x7dc4, 0x7dc5, 0x7dc6, 0x7dcc, 0x7dcd, 0x7dce,
+  0x7dd7, 0x7dd9, 0x7e00, 0x7de2, 0x7de5, 0x7de6, 0x7dea, 0x7deb,
+  0x7ded, 0x7df1, 0x7df5, 0x7df6, 0x7df9, 0x7dfa, 0x7e08, 0x7e10,
+  0x7e11, 0x7e15, 0x7e17, 0x7e1c, 0x7e1d, 0x7e20, 0x7e27, 0x7e28,
+  0x7e2c, 0x7e2d, 0x7e2f, 0x7e33, 0x7e36, 0x7e3f, 0x7e44, 0x7e45,
+  0x7e47, 0x7e4e, 0x7e50, 0x7e52, 0x7e58, 0x7e5f, 0x7e61, 0x7e62,
+  0x7e65, 0x7e6b, 0x7e6e, 0x7e6f, 0x7e73, 0x7e78, 0x7e7e, 0x7e81,
+  0x7e86, 0x7e87, 0x7e8a, 0x7e8d, 0x7e91, 0x7e95, 0x7e98, 0x7e9a,
+  0x7e9d, 0x7e9e, 0x7f3c, 0x7f3b, 0x7f3d, 0x7f3e, 0x7f3f, 0x7f43,
+  0x7f44, 0x7f47, 0x7f4f, 0x7f52, 0x7f53, 0x7f5b, 0x7f5c, 0x7f5d,
+  0x7f61, 0x7f63, 0x7f64, 0x7f65, 0x7f66, 0x7f6d,
+  /* 0x55 */
+  0x7f71, 0x7f7d, 0x7f7e, 0x7f7f, 0x7f80, 0x7f8b, 0x7f8d, 0x7f8f,
+  0x7f90, 0x7f91, 0x7f96, 0x7f97, 0x7f9c, 0x7fa1, 0x7fa2, 0x7fa6,
+  0x7faa, 0x7fad, 0x7fb4, 0x7fbc, 0x7fbf, 0x7fc0, 0x7fc3, 0x7fc8,
+  0x7fce, 0x7fcf, 0x7fdb, 0x7fdf, 0x7fe3, 0x7fe5, 0x7fe8, 0x7fec,
+  0x7fee, 0x7fef, 0x7ff2, 0x7ffa, 0x7ffd, 0x7ffe, 0x7fff, 0x8007,
+  0x8008, 0x800a, 0x800d, 0x800e, 0x800f, 0x8011, 0x8013, 0x8014,
+  0x8016, 0x801d, 0x801e, 0x801f, 0x8020, 0x8024, 0x8026, 0x802c,
+  0x802e, 0x8030, 0x8034, 0x8035, 0x8037, 0x8039, 0x803a, 0x803c,
+  0x803e, 0x8040, 0x8044, 0x8060, 0x8064, 0x8066, 0x806d, 0x8071,
+  0x8075, 0x8081, 0x8088, 0x808e, 0x809c, 0x809e, 0x80a6, 0x80a7,
+  0x80ab, 0x80b8, 0x80b9, 0x80c8, 0x80cd, 0x80cf, 0x80d2, 0x80d4,
+  0x80d5, 0x80d7, 0x80d8, 0x80e0, 0x80ed, 0x80ee,
+  /* 0x56 */
+  0x80f0, 0x80f2, 0x80f3, 0x80f6, 0x80f9, 0x80fa, 0x80fe, 0x8103,
+  0x810b, 0x8116, 0x8117, 0x8118, 0x811c, 0x811e, 0x8120, 0x8124,
+  0x8127, 0x812c, 0x8130, 0x8135, 0x813a, 0x813c, 0x8145, 0x8147,
+  0x814a, 0x814c, 0x8152, 0x8157, 0x8160, 0x8161, 0x8167, 0x8168,
+  0x8169, 0x816d, 0x816f, 0x8177, 0x8181, 0x8190, 0x8184, 0x8185,
+  0x8186, 0x818b, 0x818e, 0x8196, 0x8198, 0x819b, 0x819e, 0x81a2,
+  0x81ae, 0x81b2, 0x81b4, 0x81bb, 0x81cb, 0x81c3, 0x81c5, 0x81ca,
+  0x81ce, 0x81cf, 0x81d5, 0x81d7, 0x81db, 0x81dd, 0x81de, 0x81e1,
+  0x81e4, 0x81eb, 0x81ec, 0x81f0, 0x81f1, 0x81f2, 0x81f5, 0x81f6,
+  0x81f8, 0x81f9, 0x81fd, 0x81ff, 0x8200, 0x8203, 0x820f, 0x8213,
+  0x8214, 0x8219, 0x821a, 0x821d, 0x8221, 0x8222, 0x8228, 0x8232,
+  0x8234, 0x823a, 0x8243, 0x8244, 0x8245, 0x8246,
+  /* 0x57 */
+  0x824b, 0x824e, 0x824f, 0x8251, 0x8256, 0x825c, 0x8260, 0x8263,
+  0x8267, 0x826d, 0x8274, 0x827b, 0x827d, 0x827f, 0x8280, 0x8281,
+  0x8283, 0x8284, 0x8287, 0x8289, 0x828a, 0x828e, 0x8291, 0x8294,
+  0x8296, 0x8298, 0x829a, 0x829b, 0x82a0, 0x82a1, 0x82a3, 0x82a4,
+  0x82a7, 0x82a8, 0x82a9, 0x82aa, 0x82ae, 0x82b0, 0x82b2, 0x82b4,
+  0x82b7, 0x82ba, 0x82bc, 0x82be, 0x82bf, 0x82c6, 0x82d0, 0x82d5,
+  0x82da, 0x82e0, 0x82e2, 0x82e4, 0x82e8, 0x82ea, 0x82ed, 0x82ef,
+  0x82f6, 0x82f7, 0x82fd, 0x82fe, 0x8300, 0x8301, 0x8307, 0x8308,
+  0x830a, 0x830b, 0x8354, 0x831b, 0x831d, 0x831e, 0x831f, 0x8321,
+  0x8322, 0x832c, 0x832d, 0x832e, 0x8330, 0x8333, 0x8337, 0x833a,
+  0x833c, 0x833d, 0x8342, 0x8343, 0x8344, 0x8347, 0x834d, 0x834e,
+  0x8351, 0x8355, 0x8356, 0x8357, 0x8370, 0x8378,
+  /* 0x58 */
+  0x837d, 0x837f, 0x8380, 0x8382, 0x8384, 0x8386, 0x838d, 0x8392,
+  0x8394, 0x8395, 0x8398, 0x8399, 0x839b, 0x839c, 0x839d, 0x83a6,
+  0x83a7, 0x83a9, 0x83ac, 0x83be, 0x83bf, 0x83c0, 0x83c7, 0x83c9,
+  0x83cf, 0x83d0, 0x83d1, 0x83d4, 0x83dd, 0x8353, 0x83e8, 0x83ea,
+  0x83f6, 0x83f8, 0x83f9, 0x83fc, 0x8401, 0x8406, 0x840a, 0x840f,
+  0x8411, 0x8415, 0x8419, 0x83ad, 0x842f, 0x8439, 0x8445, 0x8447,
+  0x8448, 0x844a, 0x844d, 0x844f, 0x8451, 0x8452, 0x8456, 0x8458,
+  0x8459, 0x845a, 0x845c, 0x8460, 0x8464, 0x8465, 0x8467, 0x846a,
+  0x8470, 0x8473, 0x8474, 0x8476, 0x8478, 0x847c, 0x847d, 0x8481,
+  0x8485, 0x8492, 0x8493, 0x8495, 0x849e, 0x84a6, 0x84a8, 0x84a9,
+  0x84aa, 0x84af, 0x84b1, 0x84b4, 0x84ba, 0x84bd, 0x84be, 0x84c0,
+  0x84c2, 0x84c7, 0x84c8, 0x84cc, 0x84cf, 0x84d3,
+  /* 0x59 */
+  0x84dc, 0x84e7, 0x84ea, 0x84ef, 0x84f0, 0x84f1, 0x84f2, 0x84f7,
+  0x8532, 0x84fa, 0x84fb, 0x84fd, 0x8502, 0x8503, 0x8507, 0x850c,
+  0x850e, 0x8510, 0x851c, 0x851e, 0x8522, 0x8523, 0x8524, 0x8525,
+  0x8527, 0x852a, 0x852b, 0x852f, 0x8533, 0x8534, 0x8536, 0x853f,
+  0x8546, 0x854f, 0x8550, 0x8551, 0x8552, 0x8553, 0x8556, 0x8559,
+  0x855c, 0x855d, 0x855e, 0x855f, 0x8560, 0x8561, 0x8562, 0x8564,
+  0x856b, 0x856f, 0x8579, 0x857a, 0x857b, 0x857d, 0x857f, 0x8581,
+  0x8585, 0x8586, 0x8589, 0x858b, 0x858c, 0x858f, 0x8593, 0x8598,
+  0x859d, 0x859f, 0x85a0, 0x85a2, 0x85a5, 0x85a7, 0x85b4, 0x85b6,
+  0x85b7, 0x85b8, 0x85bc, 0x85bd, 0x85be, 0x85bf, 0x85c2, 0x85c7,
+  0x85ca, 0x85cb, 0x85ce, 0x85ad, 0x85d8, 0x85da, 0x85df, 0x85e0,
+  0x85e6, 0x85e8, 0x85ed, 0x85f3, 0x85f6, 0x85fc,
+  /* 0x5a */
+  0x85ff, 0x8600, 0x8604, 0x8605, 0x860d, 0x860e, 0x8610, 0x8611,
+  0x8612, 0x8618, 0x8619, 0x861b, 0x861e, 0x8621, 0x8627, 0x8629,
+  0x8636, 0x8638, 0x863a, 0x863c, 0x863d, 0x8640, 0x8642, 0x8646,
+  0x8652, 0x8653, 0x8656, 0x8657, 0x8658, 0x8659, 0x865d, 0x8660,
+  0x8661, 0x8662, 0x8663, 0x8664, 0x8669, 0x866c, 0x866f, 0x8675,
+  0x8676, 0x8677, 0x867a, 0x868d, 0x8691, 0x8696, 0x8698, 0x869a,
+  0x869c, 0x86a1, 0x86a6, 0x86a7, 0x86a8, 0x86ad, 0x86b1, 0x86b3,
+  0x86b4, 0x86b5, 0x86b7, 0x86b8, 0x86b9, 0x86bf, 0x86c0, 0x86c1,
+  0x86c3, 0x86c5, 0x86d1, 0x86d2, 0x86d5, 0x86d7, 0x86da, 0x86dc,
+  0x86e0, 0x86e3, 0x86e5, 0x86e7, 0x8688, 0x86fa, 0x86fc, 0x86fd,
+  0x8704, 0x8705, 0x8707, 0x870b, 0x870e, 0x870f, 0x8710, 0x8713,
+  0x8714, 0x8719, 0x871e, 0x871f, 0x8721, 0x8723,
+  /* 0x5b */
+  0x8728, 0x872e, 0x872f, 0x8731, 0x8732, 0x8739, 0x873a, 0x873c,
+  0x873d, 0x873e, 0x8740, 0x8743, 0x8745, 0x874d, 0x8758, 0x875d,
+  0x8761, 0x8764, 0x8765, 0x876f, 0x8771, 0x8772, 0x877b, 0x8783,
+  0x8784, 0x8785, 0x8786, 0x8787, 0x8788, 0x8789, 0x878b, 0x878c,
+  0x8790, 0x8793, 0x8795, 0x8797, 0x8798, 0x8799, 0x879e, 0x87a0,
+  0x87a3, 0x87a7, 0x87ac, 0x87ad, 0x87ae, 0x87b1, 0x87b5, 0x87be,
+  0x87bf, 0x87c1, 0x87c8, 0x87c9, 0x87ca, 0x87ce, 0x87d5, 0x87d6,
+  0x87d9, 0x87da, 0x87dc, 0x87df, 0x87e2, 0x87e3, 0x87e4, 0x87ea,
+  0x87eb, 0x87ed, 0x87f1, 0x87f3, 0x87f8, 0x87fa, 0x87ff, 0x8801,
+  0x8803, 0x8806, 0x8809, 0x880a, 0x880b, 0x8810, 0x8819, 0x8812,
+  0x8813, 0x8814, 0x8818, 0x881a, 0x881b, 0x881c, 0x881e, 0x881f,
+  0x8828, 0x882d, 0x882e, 0x8830, 0x8832, 0x8835,
+  /* 0x5c */
+  0x883a, 0x883c, 0x8841, 0x8843, 0x8845, 0x8848, 0x8849, 0x884a,
+  0x884b, 0x884e, 0x8851, 0x8855, 0x8856, 0x8858, 0x885a, 0x885c,
+  0x885f, 0x8860, 0x8864, 0x8869, 0x8871, 0x8879, 0x887b, 0x8880,
+  0x8898, 0x889a, 0x889b, 0x889c, 0x889f, 0x88a0, 0x88a8, 0x88aa,
+  0x88ba, 0x88bd, 0x88be, 0x88c0, 0x88ca, 0x88cb, 0x88cc, 0x88cd,
+  0x88ce, 0x88d1, 0x88d2, 0x88d3, 0x88db, 0x88de, 0x88e7, 0x88ef,
+  0x88f0, 0x88f1, 0x88f5, 0x88f7, 0x8901, 0x8906, 0x890d, 0x890e,
+  0x890f, 0x8915, 0x8916, 0x8918, 0x8919, 0x891a, 0x891c, 0x8920,
+  0x8926, 0x8927, 0x8928, 0x8930, 0x8931, 0x8932, 0x8935, 0x8939,
+  0x893a, 0x893e, 0x8940, 0x8942, 0x8945, 0x8946, 0x8949, 0x894f,
+  0x8952, 0x8957, 0x895a, 0x895b, 0x895c, 0x8961, 0x8962, 0x8963,
+  0x896b, 0x896e, 0x8970, 0x8973, 0x8975, 0x897a,
+  /* 0x5d */
+  0x897b, 0x897c, 0x897d, 0x8989, 0x898d, 0x8990, 0x8994, 0x8995,
+  0x899b, 0x899c, 0x899f, 0x89a0, 0x89a5, 0x89b0, 0x89b4, 0x89b5,
+  0x89b6, 0x89b7, 0x89bc, 0x89d4, 0x89d5, 0x89d6, 0x89d7, 0x89d8,
+  0x89e5, 0x89e9, 0x89eb, 0x89ed, 0x89f1, 0x89f3, 0x89f6, 0x89f9,
+  0x89fd, 0x89ff, 0x8a04, 0x8a05, 0x8a07, 0x8a0f, 0x8a11, 0x8a12,
+  0x8a14, 0x8a15, 0x8a1e, 0x8a20, 0x8a22, 0x8a24, 0x8a26, 0x8a2b,
+  0x8a2c, 0x8a2f, 0x8a35, 0x8a37, 0x8a3d, 0x8a3e, 0x8a40, 0x8a43,
+  0x8a45, 0x8a47, 0x8a49, 0x8a4d, 0x8a4e, 0x8a53, 0x8a56, 0x8a57,
+  0x8a58, 0x8a5c, 0x8a5d, 0x8a61, 0x8a65, 0x8a67, 0x8a75, 0x8a76,
+  0x8a77, 0x8a79, 0x8a7a, 0x8a7b, 0x8a7e, 0x8a7f, 0x8a80, 0x8a83,
+  0x8a86, 0x8a8b, 0x8a8f, 0x8a90, 0x8a92, 0x8a96, 0x8a97, 0x8a99,
+  0x8a9f, 0x8aa7, 0x8aa9, 0x8aae, 0x8aaf, 0x8ab3,
+  /* 0x5e */
+  0x8ab6, 0x8ab7, 0x8abb, 0x8abe, 0x8ac3, 0x8ac6, 0x8ac8, 0x8ac9,
+  0x8aca, 0x8ad1, 0x8ad3, 0x8ad4, 0x8ad5, 0x8ad7, 0x8add, 0x8adf,
+  0x8aec, 0x8af0, 0x8af4, 0x8af5, 0x8af6, 0x8afc, 0x8aff, 0x8b05,
+  0x8b06, 0x8b0b, 0x8b11, 0x8b1c, 0x8b1e, 0x8b1f, 0x8b0a, 0x8b2d,
+  0x8b30, 0x8b37, 0x8b3c, 0x8b42, 0x8b43, 0x8b44, 0x8b45, 0x8b46,
+  0x8b48, 0x8b52, 0x8b53, 0x8b54, 0x8b59, 0x8b4d, 0x8b5e, 0x8b63,
+  0x8b6d, 0x8b76, 0x8b78, 0x8b79, 0x8b7c, 0x8b7e, 0x8b81, 0x8b84,
+  0x8b85, 0x8b8b, 0x8b8d, 0x8b8f, 0x8b94, 0x8b95, 0x8b9c, 0x8b9e,
+  0x8b9f, 0x8c38, 0x8c39, 0x8c3d, 0x8c3e, 0x8c45, 0x8c47, 0x8c49,
+  0x8c4b, 0x8c4f, 0x8c51, 0x8c53, 0x8c54, 0x8c57, 0x8c58, 0x8c5b,
+  0x8c5d, 0x8c59, 0x8c63, 0x8c64, 0x8c66, 0x8c68, 0x8c69, 0x8c6d,
+  0x8c73, 0x8c75, 0x8c76, 0x8c7b, 0x8c7e, 0x8c86,
+  /* 0x5f */
+  0x8c87, 0x8c8b, 0x8c90, 0x8c92, 0x8c93, 0x8c99, 0x8c9b, 0x8c9c,
+  0x8ca4, 0x8cb9, 0x8cba, 0x8cc5, 0x8cc6, 0x8cc9, 0x8ccb, 0x8ccf,
+  0x8cd6, 0x8cd5, 0x8cd9, 0x8cdd, 0x8ce1, 0x8ce8, 0x8cec, 0x8cef,
+  0x8cf0, 0x8cf2, 0x8cf5, 0x8cf7, 0x8cf8, 0x8cfe, 0x8cff, 0x8d01,
+  0x8d03, 0x8d09, 0x8d12, 0x8d17, 0x8d1b, 0x8d65, 0x8d69, 0x8d6c,
+  0x8d6e, 0x8d7f, 0x8d82, 0x8d84, 0x8d88, 0x8d8d, 0x8d90, 0x8d91,
+  0x8d95, 0x8d9e, 0x8d9f, 0x8da0, 0x8da6, 0x8dab, 0x8dac, 0x8daf,
+  0x8db2, 0x8db5, 0x8db7, 0x8db9, 0x8dbb, 0x8dc0, 0x8dc5, 0x8dc6,
+  0x8dc7, 0x8dc8, 0x8dca, 0x8dce, 0x8dd1, 0x8dd4, 0x8dd5, 0x8dd7,
+  0x8dd9, 0x8de4, 0x8de5, 0x8de7, 0x8dec, 0x8df0, 0x8dbc, 0x8df1,
+  0x8df2, 0x8df4, 0x8dfd, 0x8e01, 0x8e04, 0x8e05, 0x8e06, 0x8e0b,
+  0x8e11, 0x8e14, 0x8e16, 0x8e20, 0x8e21, 0x8e22,
+  /* 0x60 */
+  0x8e23, 0x8e26, 0x8e27, 0x8e31, 0x8e33, 0x8e36, 0x8e37, 0x8e38,
+  0x8e39, 0x8e3d, 0x8e40, 0x8e41, 0x8e4b, 0x8e4d, 0x8e4e, 0x8e4f,
+  0x8e54, 0x8e5b, 0x8e5c, 0x8e5d, 0x8e5e, 0x8e61, 0x8e62, 0x8e69,
+  0x8e6c, 0x8e6d, 0x8e6f, 0x8e70, 0x8e71, 0x8e79, 0x8e7a, 0x8e7b,
+  0x8e82, 0x8e83, 0x8e89, 0x8e90, 0x8e92, 0x8e95, 0x8e9a, 0x8e9b,
+  0x8e9d, 0x8e9e, 0x8ea2, 0x8ea7, 0x8ea9, 0x8ead, 0x8eae, 0x8eb3,
+  0x8eb5, 0x8eba, 0x8ebb, 0x8ec0, 0x8ec1, 0x8ec3, 0x8ec4, 0x8ec7,
+  0x8ecf, 0x8ed1, 0x8ed4, 0x8edc, 0x8ee8, 0x8eee, 0x8ef0, 0x8ef1,
+  0x8ef7, 0x8ef9, 0x8efa, 0x8eed, 0x8f00, 0x8f02, 0x8f07, 0x8f08,
+  0x8f0f, 0x8f10, 0x8f16, 0x8f17, 0x8f18, 0x8f1e, 0x8f20, 0x8f21,
+  0x8f23, 0x8f25, 0x8f27, 0x8f28, 0x8f2c, 0x8f2d, 0x8f2e, 0x8f34,
+  0x8f35, 0x8f36, 0x8f37, 0x8f3a, 0x8f40, 0x8f41,
+  /* 0x61 */
+  0x8f43, 0x8f47, 0x8f4f, 0x8f51, 0x8f52, 0x8f53, 0x8f54, 0x8f55,
+  0x8f58, 0x8f5d, 0x8f5e, 0x8f65, 0x8f9d, 0x8fa0, 0x8fa1, 0x8fa4,
+  0x8fa5, 0x8fa6, 0x8fb5, 0x8fb6, 0x8fb8, 0x8fbe, 0x8fc0, 0x8fc1,
+  0x8fc6, 0x8fca, 0x8fcb, 0x8fcd, 0x8fd0, 0x8fd2, 0x8fd3, 0x8fd5,
+  0x8fe0, 0x8fe3, 0x8fe4, 0x8fe8, 0x8fee, 0x8ff1, 0x8ff5, 0x8ff6,
+  0x8ffb, 0x8ffe, 0x9002, 0x9004, 0x9008, 0x900c, 0x9018, 0x901b,
+  0x9028, 0x9029, 0x902f, 0x902a, 0x902c, 0x902d, 0x9033, 0x9034,
+  0x9037, 0x903f, 0x9043, 0x9044, 0x904c, 0x905b, 0x905d, 0x9062,
+  0x9066, 0x9067, 0x906c, 0x9070, 0x9074, 0x9079, 0x9085, 0x9088,
+  0x908b, 0x908c, 0x908e, 0x9090, 0x9095, 0x9097, 0x9098, 0x9099,
+  0x909b, 0x90a0, 0x90a1, 0x90a2, 0x90a5, 0x90b0, 0x90b2, 0x90b3,
+  0x90b4, 0x90b6, 0x90bd, 0x90cc, 0x90be, 0x90c3,
+  /* 0x62 */
+  0x90c4, 0x90c5, 0x90c7, 0x90c8, 0x90d5, 0x90d7, 0x90d8, 0x90d9,
+  0x90dc, 0x90dd, 0x90df, 0x90e5, 0x90d2, 0x90f6, 0x90eb, 0x90ef,
+  0x90f0, 0x90f4, 0x90fe, 0x90ff, 0x9100, 0x9104, 0x9105, 0x9106,
+  0x9108, 0x910d, 0x9110, 0x9114, 0x9116, 0x9117, 0x9118, 0x911a,
+  0x911c, 0x911e, 0x9120, 0x9125, 0x9122, 0x9123, 0x9127, 0x9129,
+  0x912e, 0x912f, 0x9131, 0x9134, 0x9136, 0x9137, 0x9139, 0x913a,
+  0x913c, 0x913d, 0x9143, 0x9147, 0x9148, 0x914f, 0x9153, 0x9157,
+  0x9159, 0x915a, 0x915b, 0x9161, 0x9164, 0x9167, 0x916d, 0x9174,
+  0x9179, 0x917a, 0x917b, 0x9181, 0x9183, 0x9185, 0x9186, 0x918a,
+  0x918e, 0x9191, 0x9193, 0x9194, 0x9195, 0x9198, 0x919e, 0x91a1,
+  0x91a6, 0x91a8, 0x91ac, 0x91ad, 0x91ae, 0x91b0, 0x91b1, 0x91b2,
+  0x91b3, 0x91b6, 0x91bb, 0x91bc, 0x91bd, 0x91bf,
+  /* 0x63 */
+  0x91c2, 0x91c3, 0x91c5, 0x91d3, 0x91d4, 0x91d7, 0x91d9, 0x91da,
+  0x91de, 0x91e4, 0x91e5, 0x91e9, 0x91ea, 0x91ec, 0x91ed, 0x91ee,
+  0x91ef, 0x91f0, 0x91f1, 0x91f7, 0x91f9, 0x91fb, 0x91fd, 0x9200,
+  0x9201, 0x9204, 0x9205, 0x9206, 0x9207, 0x9209, 0x920a, 0x920c,
+  0x9210, 0x9212, 0x9213, 0x9216, 0x9218, 0x921c, 0x921d, 0x9223,
+  0x9224, 0x9225, 0x9226, 0x9228, 0x922e, 0x922f, 0x9230, 0x9233,
+  0x9235, 0x9236, 0x9238, 0x9239, 0x923a, 0x923c, 0x923e, 0x9240,
+  0x9242, 0x9243, 0x9246, 0x9247, 0x924a, 0x924d, 0x924e, 0x924f,
+  0x9251, 0x9258, 0x9259, 0x925c, 0x925d, 0x9260, 0x9261, 0x9265,
+  0x9267, 0x9268, 0x9269, 0x926e, 0x926f, 0x9270, 0x9275, 0x9276,
+  0x9277, 0x9278, 0x9279, 0x927b, 0x927c, 0x927d, 0x927f, 0x9288,
+  0x9289, 0x928a, 0x928d, 0x928e, 0x9292, 0x9297,
+  /* 0x64 */
+  0x9299, 0x929f, 0x92a0, 0x92a4, 0x92a5, 0x92a7, 0x92a8, 0x92ab,
+  0x92af, 0x92b2, 0x92b6, 0x92b8, 0x92ba, 0x92bb, 0x92bc, 0x92bd,
+  0x92bf, 0x92c0, 0x92c1, 0x92c2, 0x92c3, 0x92c5, 0x92c6, 0x92c7,
+  0x92c8, 0x92cb, 0x92cc, 0x92cd, 0x92ce, 0x92d0, 0x92d3, 0x92d5,
+  0x92d7, 0x92d8, 0x92d9, 0x92dc, 0x92dd, 0x92df, 0x92e0, 0x92e1,
+  0x92e3, 0x92e5, 0x92e7, 0x92e8, 0x92ec, 0x92ee, 0x92f0, 0x92f9,
+  0x92fb, 0x92ff, 0x9300, 0x9302, 0x9308, 0x930d, 0x9311, 0x9314,
+  0x9315, 0x931c, 0x931d, 0x931e, 0x931f, 0x9321, 0x9324, 0x9325,
+  0x9327, 0x9329, 0x932a, 0x9333, 0x9334, 0x9336, 0x9337, 0x9347,
+  0x9348, 0x9349, 0x9350, 0x9351, 0x9352, 0x9355, 0x9357, 0x9358,
+  0x935a, 0x935e, 0x9364, 0x9365, 0x9367, 0x9369, 0x936a, 0x936d,
+  0x936f, 0x9370, 0x9371, 0x9373, 0x9374, 0x9376,
+  /* 0x65 */
+  0x937a, 0x937d, 0x937f, 0x9380, 0x9381, 0x9382, 0x9388, 0x938a,
+  0x938b, 0x938d, 0x938f, 0x9392, 0x9395, 0x9398, 0x939b, 0x939e,
+  0x93a1, 0x93a3, 0x93a4, 0x93a6, 0x93a8, 0x93ab, 0x93b4, 0x93b5,
+  0x93b6, 0x93ba, 0x93a9, 0x93c1, 0x93c4, 0x93c5, 0x93c6, 0x93c7,
+  0x93c9, 0x93ca, 0x93cb, 0x93cc, 0x93cd, 0x93d3, 0x93d9, 0x93dc,
+  0x93de, 0x93df, 0x93e2, 0x93e6, 0x93e7, 0x93f9, 0x93f7, 0x93f8,
+  0x93fa, 0x93fb, 0x93fd, 0x9401, 0x9402, 0x9404, 0x9408, 0x9409,
+  0x940d, 0x940e, 0x940f, 0x9415, 0x9416, 0x9417, 0x941f, 0x942e,
+  0x942f, 0x9431, 0x9432, 0x9433, 0x9434, 0x943b, 0x943f, 0x943d,
+  0x9443, 0x9445, 0x9448, 0x944a, 0x944c, 0x9455, 0x9459, 0x945c,
+  0x945f, 0x9461, 0x9463, 0x9468, 0x946b, 0x946d, 0x946e, 0x946f,
+  0x9471, 0x9472, 0x9484, 0x9483, 0x9578, 0x9579,
+  /* 0x66 */
+  0x957e, 0x9584, 0x9588, 0x958c, 0x958d, 0x958e, 0x959d, 0x959e,
+  0x959f, 0x95a1, 0x95a6, 0x95a9, 0x95ab, 0x95ac, 0x95b4, 0x95b6,
+  0x95ba, 0x95bd, 0x95bf, 0x95c6, 0x95c8, 0x95c9, 0x95cb, 0x95d0,
+  0x95d1, 0x95d2, 0x95d3, 0x95d9, 0x95da, 0x95dd, 0x95de, 0x95df,
+  0x95e0, 0x95e4, 0x95e6, 0x961d, 0x961e, 0x9622, 0x9624, 0x9625,
+  0x9626, 0x962c, 0x9631, 0x9633, 0x9637, 0x9638, 0x9639, 0x963a,
+  0x963c, 0x963d, 0x9641, 0x9652, 0x9654, 0x9656, 0x9657, 0x9658,
+  0x9661, 0x966e, 0x9674, 0x967b, 0x967c, 0x967e, 0x967f, 0x9681,
+  0x9682, 0x9683, 0x9684, 0x9689, 0x9691, 0x9696, 0x969a, 0x969d,
+  0x969f, 0x96a4, 0x96a5, 0x96a6, 0x96a9, 0x96ae, 0x96af, 0x96b3,
+  0x96ba, 0x96ca, 0x96d2, 0x5db2, 0x96d8, 0x96da, 0x96dd, 0x96de,
+  0x96df, 0x96e9, 0x96ef, 0x96f1, 0x96fa, 0x9702,
+  /* 0x67 */
+  0x9703, 0x9705, 0x9709, 0x971a, 0x971b, 0x971d, 0x9721, 0x9722,
+  0x9723, 0x9728, 0x9731, 0x9733, 0x9741, 0x9743, 0x974a, 0x974e,
+  0x974f, 0x9755, 0x9757, 0x9758, 0x975a, 0x975b, 0x9763, 0x9767,
+  0x976a, 0x976e, 0x9773, 0x9776, 0x9777, 0x9778, 0x977b, 0x977d,
+  0x977f, 0x9780, 0x9789, 0x9795, 0x9796, 0x9797, 0x9799, 0x979a,
+  0x979e, 0x979f, 0x97a2, 0x97ac, 0x97ae, 0x97b1, 0x97b2, 0x97b5,
+  0x97b6, 0x97b8, 0x97b9, 0x97ba, 0x97bc, 0x97be, 0x97bf, 0x97c1,
+  0x97c4, 0x97c5, 0x97c7, 0x97c9, 0x97ca, 0x97cc, 0x97cd, 0x97ce,
+  0x97d0, 0x97d1, 0x97d4, 0x97d7, 0x97d8, 0x97d9, 0x97dd, 0x97de,
+  0x97e0, 0x97db, 0x97e1, 0x97e4, 0x97ef, 0x97f1, 0x97f4, 0x97f7,
+  0x97f8, 0x97fa, 0x9807, 0x980a, 0x9819, 0x980d, 0x980e, 0x9814,
+  0x9816, 0x981c, 0x981e, 0x9820, 0x9823, 0x9826,
+  /* 0x68 */
+  0x982b, 0x982e, 0x982f, 0x9830, 0x9832, 0x9833, 0x9835, 0x9825,
+  0x983e, 0x9844, 0x9847, 0x984a, 0x9851, 0x9852, 0x9853, 0x9856,
+  0x9857, 0x9859, 0x985a, 0x9862, 0x9863, 0x9865, 0x9866, 0x986a,
+  0x986c, 0x98ab, 0x98ad, 0x98ae, 0x98b0, 0x98b4, 0x98b7, 0x98b8,
+  0x98ba, 0x98bb, 0x98bf, 0x98c2, 0x98c5, 0x98c8, 0x98cc, 0x98e1,
+  0x98e3, 0x98e5, 0x98e6, 0x98e7, 0x98ea, 0x98f3, 0x98f6, 0x9902,
+  0x9907, 0x9908, 0x9911, 0x9915, 0x9916, 0x9917, 0x991a, 0x991b,
+  0x991c, 0x991f, 0x9922, 0x9926, 0x9927, 0x992b, 0x9931, 0x9932,
+  0x9933, 0x9934, 0x9935, 0x9939, 0x993a, 0x993b, 0x993c, 0x9940,
+  0x9941, 0x9946, 0x9947, 0x9948, 0x994d, 0x994e, 0x9954, 0x9958,
+  0x9959, 0x995b, 0x995c, 0x995e, 0x995f, 0x9960, 0x999b, 0x999d,
+  0x999f, 0x99a6, 0x99b0, 0x99b1, 0x99b2, 0x99b5,
+  /* 0x69 */
+  0x99b9, 0x99ba, 0x99bd, 0x99bf, 0x99c3, 0x99c9, 0x99d3, 0x99d4,
+  0x99d9, 0x99da, 0x99dc, 0x99de, 0x99e7, 0x99ea, 0x99eb, 0x99ec,
+  0x99f0, 0x99f4, 0x99f5, 0x99f9, 0x99fd, 0x99fe, 0x9a02, 0x9a03,
+  0x9a04, 0x9a0b, 0x9a0c, 0x9a10, 0x9a11, 0x9a16, 0x9a1e, 0x9a20,
+  0x9a22, 0x9a23, 0x9a24, 0x9a27, 0x9a2d, 0x9a2e, 0x9a33, 0x9a35,
+  0x9a36, 0x9a38, 0x9a47, 0x9a41, 0x9a44, 0x9a4a, 0x9a4b, 0x9a4c,
+  0x9a4e, 0x9a51, 0x9a54, 0x9a56, 0x9a5d, 0x9aaa, 0x9aac, 0x9aae,
+  0x9aaf, 0x9ab2, 0x9ab4, 0x9ab5, 0x9ab6, 0x9ab9, 0x9abb, 0x9abe,
+  0x9abf, 0x9ac1, 0x9ac3, 0x9ac6, 0x9ac8, 0x9ace, 0x9ad0, 0x9ad2,
+  0x9ad5, 0x9ad6, 0x9ad7, 0x9adb, 0x9adc, 0x9ae0, 0x9ae4, 0x9ae5,
+  0x9ae7, 0x9ae9, 0x9aec, 0x9af2, 0x9af3, 0x9af5, 0x9af9, 0x9afa,
+  0x9afd, 0x9aff, 0x9b00, 0x9b01, 0x9b02, 0x9b03,
+  /* 0x6a */
+  0x9b04, 0x9b05, 0x9b08, 0x9b09, 0x9b0b, 0x9b0c, 0x9b0d, 0x9b0e,
+  0x9b10, 0x9b12, 0x9b16, 0x9b19, 0x9b1b, 0x9b1c, 0x9b20, 0x9b26,
+  0x9b2b, 0x9b2d, 0x9b33, 0x9b34, 0x9b35, 0x9b37, 0x9b39, 0x9b3a,
+  0x9b3d, 0x9b48, 0x9b4b, 0x9b4c, 0x9b55, 0x9b56, 0x9b57, 0x9b5b,
+  0x9b5e, 0x9b61, 0x9b63, 0x9b65, 0x9b66, 0x9b68, 0x9b6a, 0x9b6b,
+  0x9b6c, 0x9b6d, 0x9b6e, 0x9b73, 0x9b75, 0x9b77, 0x9b78, 0x9b79,
+  0x9b7f, 0x9b80, 0x9b84, 0x9b85, 0x9b86, 0x9b87, 0x9b89, 0x9b8a,
+  0x9b8b, 0x9b8d, 0x9b8f, 0x9b90, 0x9b94, 0x9b9a, 0x9b9d, 0x9b9e,
+  0x9ba6, 0x9ba7, 0x9ba9, 0x9bac, 0x9bb0, 0x9bb1, 0x9bb2, 0x9bb7,
+  0x9bb8, 0x9bbb, 0x9bbc, 0x9bbe, 0x9bbf, 0x9bc1, 0x9bc7, 0x9bc8,
+  0x9bce, 0x9bd0, 0x9bd7, 0x9bd8, 0x9bdd, 0x9bdf, 0x9be5, 0x9be7,
+  0x9bea, 0x9beb, 0x9bef, 0x9bf3, 0x9bf7, 0x9bf8,
+  /* 0x6b */
+  0x9bf9, 0x9bfa, 0x9bfd, 0x9bff, 0x9c00, 0x9c02, 0x9c0b, 0x9c0f,
+  0x9c11, 0x9c16, 0x9c18, 0x9c19, 0x9c1a, 0x9c1c, 0x9c1e, 0x9c22,
+  0x9c23, 0x9c26, 0x9c27, 0x9c28, 0x9c29, 0x9c2a, 0x9c31, 0x9c35,
+  0x9c36, 0x9c37, 0x9c3d, 0x9c41, 0x9c43, 0x9c44, 0x9c45, 0x9c49,
+  0x9c4a, 0x9c4e, 0x9c4f, 0x9c50, 0x9c53, 0x9c54, 0x9c56, 0x9c58,
+  0x9c5b, 0x9c5d, 0x9c5e, 0x9c5f, 0x9c63, 0x9c69, 0x9c6a, 0x9c5c,
+  0x9c6b, 0x9c68, 0x9c6e, 0x9c70, 0x9c72, 0x9c75, 0x9c77, 0x9c7b,
+  0x9ce6, 0x9cf2, 0x9cf7, 0x9cf9, 0x9d0b, 0x9d02, 0x9d11, 0x9d17,
+  0x9d18, 0x9d1c, 0x9d1d, 0x9d1e, 0x9d2f, 0x9d30, 0x9d32, 0x9d33,
+  0x9d34, 0x9d3a, 0x9d3c, 0x9d45, 0x9d3d, 0x9d42, 0x9d43, 0x9d47,
+  0x9d4a, 0x9d53, 0x9d54, 0x9d5f, 0x9d63, 0x9d62, 0x9d65, 0x9d69,
+  0x9d6a, 0x9d6b, 0x9d70, 0x9d76, 0x9d77, 0x9d7b,
+  /* 0x6c */
+  0x9d7c, 0x9d7e, 0x9d83, 0x9d84, 0x9d86, 0x9d8a, 0x9d8d, 0x9d8e,
+  0x9d92, 0x9d93, 0x9d95, 0x9d96, 0x9d97, 0x9d98, 0x9da1, 0x9daa,
+  0x9dac, 0x9dae, 0x9db1, 0x9db5, 0x9db9, 0x9dbc, 0x9dbf, 0x9dc3,
+  0x9dc7, 0x9dc9, 0x9dca, 0x9dd4, 0x9dd5, 0x9dd6, 0x9dd7, 0x9dda,
+  0x9dde, 0x9ddf, 0x9de0, 0x9de5, 0x9de7, 0x9de9, 0x9deb, 0x9dee,
+  0x9df0, 0x9df3, 0x9df4, 0x9dfe, 0x9e0a, 0x9e02, 0x9e07, 0x9e0e,
+  0x9e10, 0x9e11, 0x9e12, 0x9e15, 0x9e16, 0x9e19, 0x9e1c, 0x9e1d,
+  0x9e7a, 0x9e7b, 0x9e7c, 0x9e80, 0x9e82, 0x9e83, 0x9e84, 0x9e85,
+  0x9e87, 0x9e8e, 0x9e8f, 0x9e96, 0x9e98, 0x9e9b, 0x9e9e, 0x9ea4,
+  0x9ea8, 0x9eac, 0x9eae, 0x9eaf, 0x9eb0, 0x9eb3, 0x9eb4, 0x9eb5,
+  0x9ec6, 0x9ec8, 0x9ecb, 0x9ed5, 0x9edf, 0x9ee4, 0x9ee7, 0x9eec,
+  0x9eed, 0x9eee, 0x9ef0, 0x9ef1, 0x9ef2, 0x9ef5,
+  /* 0x6d */
+  0x9ef8, 0x9eff, 0x9f02, 0x9f03, 0x9f09, 0x9f0f, 0x9f10, 0x9f11,
+  0x9f12, 0x9f14, 0x9f16, 0x9f17, 0x9f19, 0x9f1a, 0x9f1b, 0x9f1f,
+  0x9f22, 0x9f26, 0x9f2a, 0x9f2b, 0x9f2f, 0x9f31, 0x9f32, 0x9f34,
+  0x9f37, 0x9f39, 0x9f3a, 0x9f3c, 0x9f3d, 0x9f3f, 0x9f41, 0x9f43,
+  0x9f44, 0x9f45, 0x9f46, 0x9f47, 0x9f53, 0x9f55, 0x9f56, 0x9f57,
+  0x9f58, 0x9f5a, 0x9f5d, 0x9f5e, 0x9f68, 0x9f69, 0x9f6d, 0x9f6e,
+  0x9f6f, 0x9f70, 0x9f71, 0x9f73, 0x9f75, 0x9f7a, 0x9f7d, 0x9f8f,
+  0x9f90, 0x9f91, 0x9f92, 0x9f94, 0x9f96, 0x9f97, 0x9f9e, 0x9fa1,
+  0x9fa2, 0x9fa3, 0x9fa5,
+};
+
+static int
+jisx0212_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 == 0x22) || (c1 >= 0x26 && c1 <= 0x27) || (c1 >= 0x29 && c1 <= 0x2b) || (c1 >= 0x30 && c1 <= 0x6d)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if (c2 >= 0x21 && c2 < 0x7f) {
+        unsigned int i = 94 * (c1 - 0x21) + (c2 - 0x21);
+        unsigned short wc = 0xfffd;
+        if (i < 470) {
+          if (i < 175)
+            wc = jisx0212_2uni_page22[i-94];
+        } else if (i < 752) {
+          if (i < 658)
+            wc = jisx0212_2uni_page26[i-470];
+        } else if (i < 1410) {
+          if (i < 1027)
+            wc = jisx0212_2uni_page29[i-752];
+        } else {
+          if (i < 7211)
+            wc = jisx0212_2uni_page30[i-1410];
+        }
+        if (wc != 0xfffd) {
+          *pwc = (ucs4_t) wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned short jisx0212_2charset[6067] = {
+  0x2242, 0x2270, 0x2243, 0x226d, 0x226c, 0x226e, 0x2234, 0x2231,
+  0x226b, 0x2244, 0x2a22, 0x2a21, 0x2a24, 0x2a2a, 0x2a23, 0x2a29,
+  0x2921, 0x2a2e, 0x2a32, 0x2a31, 0x2a34, 0x2a33, 0x2a40, 0x2a3f,
+  0x2a42, 0x2a41, 0x2a50, 0x2a52, 0x2a51, 0x2a54, 0x2a58, 0x2a53,
+  0x292c, 0x2a63, 0x2a62, 0x2a65, 0x2a64, 0x2a72, 0x2930, 0x294e,
+  0x2b22, 0x2b21, 0x2b24, 0x2b2a, 0x2b23, 0x2b29, 0x2941, 0x2b2e,
+  0x2b32, 0x2b31, 0x2b34, 0x2b33, 0x2b40, 0x2b3f, 0x2b42, 0x2b41,
+  0x2943, 0x2b50, 0x2b52, 0x2b51, 0x2b54, 0x2b58, 0x2b53, 0x294c,
+  0x2b63, 0x2b62, 0x2b65, 0x2b64, 0x2b72, 0x2950, 0x2b73, 0x2a27,
+  0x2b27, 0x2a25, 0x2b25, 0x2a28, 0x2b28, 0x2a2b, 0x2b2b, 0x2a2c,
+  0x2b2c, 0x2a2f, 0x2b2f, 0x2a2d, 0x2b2d, 0x2a30, 0x2b30, 0x2922,
+  0x2942, 0x2a37, 0x2b37, 0x2a36, 0x2b36, 0x2a38, 0x2b38, 0x2a35,
+  0x2b35, 0x2a3a, 0x2b3a, 0x2a3b, 0x2b3b, 0x2a3d, 0x2b3d, 0x2a3c,
+  0x2a3e, 0x2b3e, 0x2924, 0x2944, 0x2a47, 0x2b47, 0x2a45, 0x2b45,
+  0x2a46, 0x2b46, 0x2a44, 0x2945, 0x2926, 0x2946, 0x2a48, 0x2b48,
+  0x2a49, 0x2b49, 0x2947, 0x2a4a, 0x2b4a, 0x2a4c, 0x2b4c, 0x2a4b,
+  0x2b4b, 0x2929, 0x2949, 0x2928, 0x2948, 0x2a4d, 0x2b4d, 0x2a4f,
+  0x2b4f, 0x2a4e, 0x2b4e, 0x294a, 0x292b, 0x294b, 0x2a57, 0x2b57,
+  0x2a56, 0x2b56, 0x292d, 0x294d, 0x2a59, 0x2b59, 0x2a5b, 0x2b5b,
+  0x2a5a, 0x2b5a, 0x2a5c, 0x2b5c, 0x2a5d, 0x2b5d, 0x2a5f, 0x2b5f,
+  0x2a5e, 0x2b5e, 0x2a61, 0x2b61, 0x2a60, 0x2b60, 0x292f, 0x294f,
+  0x2a6c, 0x2b6c, 0x2a69, 0x2b69, 0x2a66, 0x2b66, 0x2a6b, 0x2b6b,
+  0x2a68, 0x2b68, 0x2a6a, 0x2b6a, 0x2a71, 0x2b71, 0x2a74, 0x2b74,
+  0x2a73, 0x2a75, 0x2b75, 0x2a77, 0x2b77, 0x2a76, 0x2b76, 0x2a26,
+  0x2b26, 0x2a43, 0x2b43, 0x2a55, 0x2b55, 0x2a67, 0x2b67, 0x2a70,
+  0x2b70, 0x2a6d, 0x2b6d, 0x2a6f, 0x2b6f, 0x2a6e, 0x2b6e, 0x2b39,
+  0x2230, 0x222f, 0x2232, 0x2236, 0x2235, 0x2233, 0x2238, 0x2239,
+  0x2661, 0x2662, 0x2663, 0x2664, 0x2667, 0x2669, 0x266c, 0x2676,
+  0x2665, 0x266a, 0x2671, 0x2672, 0x2673, 0x2674, 0x267b, 0x2678,
+  0x2675, 0x267a, 0x2677, 0x2679, 0x267c, 0x2742, 0x2743, 0x2744,
+  0x2745, 0x2746, 0x2747, 0x2748, 0x2749, 0x274a, 0x274b, 0x274c,
+  0x274d, 0x274e, 0x2772, 0x2773, 0x2774, 0x2775, 0x2776, 0x2777,
+  0x2778, 0x2779, 0x277a, 0x277b, 0x277c, 0x277d, 0x277e, 0x2271,
+  0x226f, 0x3021, 0x3022, 0x3023, 0x3024, 0x3025, 0x3026, 0x3027,
+  0x3028, 0x3029, 0x302a, 0x302b, 0x302c, 0x302d, 0x302e, 0x302f,
+  0x3030, 0x3031, 0x3032, 0x3033, 0x3034, 0x3035, 0x3036, 0x3037,
+  0x3038, 0x3039, 0x303a, 0x303b, 0x303c, 0x303d, 0x303e, 0x303f,
+  0x3040, 0x3041, 0x3042, 0x3043, 0x3044, 0x3045, 0x3046, 0x3047,
+  0x3048, 0x3049, 0x304a, 0x304b, 0x304c, 0x304d, 0x304e, 0x304f,
+  0x3050, 0x3051, 0x3052, 0x3053, 0x3054, 0x3055, 0x3056, 0x3057,
+  0x3058, 0x3059, 0x305a, 0x305b, 0x305c, 0x305d, 0x305e, 0x3060,
+  0x3061, 0x3062, 0x3063, 0x3064, 0x3065, 0x3066, 0x3067, 0x3068,
+  0x3069, 0x306a, 0x306b, 0x306c, 0x306d, 0x306e, 0x306f, 0x3070,
+  0x305f, 0x3071, 0x3072, 0x3073, 0x3074, 0x3075, 0x3076, 0x3077,
+  0x3078, 0x3079, 0x307a, 0x307b, 0x307c, 0x307d, 0x307e, 0x3121,
+  0x3122, 0x3123, 0x3124, 0x3125, 0x3126, 0x3127, 0x3128, 0x3129,
+  0x312a, 0x312b, 0x312c, 0x312d, 0x312e, 0x312f, 0x3130, 0x3131,
+  0x3132, 0x3133, 0x3134, 0x3135, 0x3136, 0x3137, 0x3138, 0x3139,
+  0x313a, 0x313b, 0x313c, 0x313d, 0x313e, 0x313f, 0x3140, 0x3141,
+  0x3142, 0x3143, 0x3144, 0x3145, 0x3146, 0x3147, 0x3148, 0x3149,
+  0x314a, 0x314b, 0x314c, 0x314d, 0x314e, 0x314f, 0x3150, 0x3151,
+  0x3152, 0x3153, 0x3154, 0x3155, 0x3156, 0x3157, 0x3158, 0x3159,
+  0x315a, 0x315b, 0x315c, 0x315d, 0x315e, 0x3176, 0x315f, 0x3160,
+  0x3161, 0x3162, 0x3163, 0x3164, 0x3165, 0x3166, 0x3167, 0x3168,
+  0x3169, 0x316a, 0x316b, 0x316c, 0x316d, 0x316e, 0x316f, 0x3170,
+  0x3171, 0x3172, 0x3173, 0x3174, 0x3175, 0x3177, 0x3178, 0x3179,
+  0x317a, 0x317b, 0x317c, 0x317d, 0x317e, 0x3221, 0x3222, 0x3223,
+  0x3224, 0x3225, 0x3226, 0x3227, 0x3228, 0x3229, 0x322a, 0x322b,
+  0x322c, 0x322d, 0x322e, 0x322f, 0x3230, 0x3231, 0x3232, 0x3233,
+  0x3234, 0x3235, 0x3236, 0x3237, 0x3238, 0x3239, 0x323a, 0x323b,
+  0x323c, 0x323d, 0x323e, 0x323f, 0x3240, 0x3241, 0x3242, 0x3243,
+  0x3244, 0x3245, 0x3251, 0x3246, 0x3247, 0x3248, 0x3249, 0x324a,
+  0x324b, 0x324c, 0x324d, 0x324e, 0x324f, 0x3250, 0x3252, 0x3253,
+  0x3254, 0x3255, 0x3256, 0x3257, 0x3258, 0x3259, 0x325a, 0x325b,
+  0x325c, 0x325d, 0x325e, 0x325f, 0x3260, 0x3261, 0x3262, 0x3263,
+  0x3264, 0x3265, 0x3266, 0x3267, 0x3268, 0x3269, 0x326a, 0x326b,
+  0x326c, 0x326d, 0x326e, 0x326f, 0x3270, 0x3271, 0x3272, 0x3273,
+  0x3274, 0x3275, 0x3276, 0x3277, 0x3278, 0x3279, 0x327a, 0x327b,
+  0x327c, 0x327d, 0x327e, 0x3321, 0x3322, 0x3323, 0x3324, 0x3325,
+  0x3326, 0x3327, 0x3328, 0x3329, 0x332a, 0x332b, 0x332c, 0x332d,
+  0x332e, 0x332f, 0x3330, 0x3331, 0x3332, 0x3333, 0x3334, 0x3335,
+  0x3336, 0x3337, 0x3338, 0x3339, 0x333a, 0x333b, 0x333c, 0x333d,
+  0x333e, 0x333f, 0x3340, 0x3341, 0x3342, 0x3343, 0x3344, 0x3345,
+  0x3346, 0x3347, 0x3348, 0x3349, 0x334a, 0x334b, 0x334c, 0x334d,
+  0x334e, 0x334f, 0x3350, 0x3351, 0x3352, 0x3353, 0x3354, 0x3355,
+  0x3356, 0x3357, 0x3358, 0x3359, 0x335a, 0x335b, 0x335c, 0x335d,
+  0x335e, 0x335f, 0x3360, 0x3361, 0x3362, 0x3363, 0x3364, 0x3365,
+  0x3366, 0x3367, 0x3368, 0x3369, 0x336a, 0x336b, 0x336c, 0x336d,
+  0x336e, 0x336f, 0x3370, 0x3371, 0x3372, 0x3373, 0x3374, 0x3375,
+  0x3376, 0x3377, 0x3378, 0x3379, 0x337a, 0x337b, 0x337c, 0x337d,
+  0x337e, 0x3421, 0x3422, 0x3423, 0x3424, 0x3425, 0x3426, 0x3427,
+  0x3428, 0x3429, 0x342a, 0x342b, 0x342c, 0x342d, 0x342e, 0x342f,
+  0x3430, 0x3431, 0x3432, 0x3433, 0x3434, 0x3435, 0x3436, 0x3438,
+  0x3437, 0x3439, 0x343a, 0x343b, 0x343c, 0x343d, 0x343e, 0x343f,
+  0x3440, 0x3441, 0x3442, 0x3443, 0x3444, 0x3445, 0x3446, 0x3447,
+  0x3448, 0x3449, 0x344a, 0x344b, 0x344c, 0x344d, 0x344e, 0x344f,
+  0x3450, 0x3451, 0x3452, 0x3453, 0x3454, 0x3455, 0x3456, 0x3457,
+  0x3458, 0x3459, 0x345a, 0x345b, 0x345c, 0x345d, 0x345e, 0x345f,
+  0x3460, 0x3461, 0x3462, 0x3463, 0x3464, 0x3465, 0x3466, 0x3467,
+  0x3468, 0x3469, 0x346a, 0x346b, 0x346c, 0x346d, 0x346e, 0x346f,
+  0x3470, 0x3471, 0x3472, 0x3473, 0x3474, 0x3475, 0x3476, 0x3477,
+  0x3478, 0x3479, 0x347a, 0x347b, 0x347c, 0x347d, 0x347e, 0x3521,
+  0x3522, 0x3523, 0x3524, 0x3525, 0x3526, 0x3527, 0x3528, 0x3529,
+  0x352a, 0x352b, 0x352c, 0x352d, 0x352e, 0x352f, 0x3530, 0x3531,
+  0x3532, 0x3533, 0x3534, 0x3535, 0x3536, 0x3537, 0x3538, 0x3539,
+  0x353a, 0x353b, 0x353c, 0x353d, 0x353e, 0x353f, 0x3540, 0x3541,
+  0x3542, 0x3543, 0x3544, 0x3545, 0x3546, 0x3547, 0x3548, 0x3549,
+  0x354a, 0x354b, 0x354c, 0x354d, 0x354e, 0x354f, 0x3550, 0x3551,
+  0x3552, 0x3553, 0x3554, 0x3555, 0x3556, 0x3557, 0x3558, 0x3559,
+  0x355a, 0x355b, 0x355c, 0x355d, 0x355e, 0x355f, 0x3560, 0x3561,
+  0x3562, 0x3563, 0x3564, 0x3565, 0x3566, 0x3567, 0x3568, 0x3569,
+  0x356a, 0x356b, 0x356c, 0x356d, 0x356e, 0x356f, 0x3570, 0x3571,
+  0x3572, 0x3573, 0x3574, 0x3575, 0x3576, 0x3577, 0x3578, 0x3579,
+  0x357a, 0x357b, 0x357c, 0x357d, 0x357e, 0x3621, 0x3622, 0x3623,
+  0x3624, 0x3625, 0x3626, 0x3627, 0x3628, 0x3629, 0x362a, 0x362b,
+  0x362c, 0x362d, 0x362e, 0x362f, 0x3630, 0x3631, 0x3632, 0x3633,
+  0x3634, 0x3635, 0x3636, 0x3637, 0x3638, 0x3639, 0x363a, 0x363b,
+  0x363c, 0x363d, 0x363e, 0x363f, 0x3640, 0x3641, 0x3642, 0x3643,
+  0x3644, 0x3645, 0x3646, 0x3647, 0x3648, 0x3649, 0x364a, 0x364b,
+  0x364c, 0x364d, 0x364e, 0x364f, 0x3650, 0x3651, 0x3652, 0x3653,
+  0x3654, 0x3655, 0x3656, 0x3657, 0x3658, 0x3659, 0x365a, 0x365b,
+  0x365c, 0x365d, 0x365e, 0x365f, 0x3660, 0x3661, 0x3662, 0x3663,
+  0x3664, 0x3665, 0x3666, 0x3667, 0x3668, 0x3669, 0x366a, 0x366b,
+  0x366c, 0x366d, 0x3670, 0x3671, 0x366e, 0x366f, 0x3672, 0x3673,
+  0x3674, 0x3675, 0x3676, 0x3677, 0x3678, 0x3679, 0x367a, 0x367b,
+  0x367d, 0x367e, 0x367c, 0x3721, 0x3722, 0x3723, 0x3724, 0x3725,
+  0x3726, 0x3727, 0x3728, 0x3729, 0x372a, 0x372b, 0x372c, 0x372d,
+  0x372e, 0x372f, 0x3730, 0x3731, 0x3732, 0x3733, 0x3734, 0x3735,
+  0x3736, 0x3737, 0x3738, 0x3739, 0x373a, 0x373b, 0x373c, 0x373d,
+  0x373e, 0x373f, 0x3740, 0x3741, 0x3742, 0x3743, 0x3744, 0x3745,
+  0x3746, 0x3747, 0x3748, 0x3749, 0x374a, 0x374b, 0x374c, 0x374d,
+  0x374e, 0x374f, 0x3750, 0x3751, 0x3752, 0x3753, 0x3754, 0x3755,
+  0x3756, 0x3757, 0x3760, 0x3758, 0x3759, 0x375a, 0x375b, 0x375c,
+  0x375d, 0x375e, 0x375f, 0x3761, 0x3762, 0x3763, 0x3764, 0x3765,
+  0x3766, 0x3767, 0x3768, 0x3769, 0x376a, 0x376b, 0x376c, 0x376d,
+  0x377e, 0x376e, 0x376f, 0x3770, 0x3771, 0x3772, 0x3773, 0x3774,
+  0x3775, 0x3776, 0x3777, 0x3778, 0x3779, 0x377a, 0x377b, 0x377c,
+  0x377d, 0x3821, 0x3822, 0x3823, 0x3824, 0x3825, 0x3826, 0x3827,
+  0x3828, 0x3829, 0x382a, 0x382b, 0x382c, 0x382d, 0x382e, 0x382f,
+  0x3830, 0x3831, 0x3832, 0x3833, 0x3834, 0x3835, 0x3836, 0x3837,
+  0x3838, 0x3839, 0x383a, 0x383b, 0x383c, 0x383d, 0x383e, 0x383f,
+  0x3840, 0x3841, 0x3842, 0x3843, 0x3844, 0x3845, 0x3846, 0x3847,
+  0x3848, 0x3849, 0x384a, 0x384b, 0x384c, 0x384d, 0x384e, 0x3850,
+  0x3851, 0x384f, 0x3852, 0x3853, 0x3854, 0x3855, 0x3856, 0x3857,
+  0x3858, 0x3859, 0x385a, 0x385b, 0x385c, 0x385d, 0x385e, 0x385f,
+  0x3860, 0x3861, 0x3862, 0x3863, 0x3864, 0x3865, 0x3867, 0x3868,
+  0x3869, 0x386a, 0x386b, 0x386c, 0x386d, 0x386e, 0x386f, 0x3870,
+  0x3871, 0x3872, 0x3873, 0x3874, 0x3875, 0x3876, 0x3877, 0x3878,
+  0x3879, 0x387a, 0x387b, 0x387c, 0x387d, 0x387e, 0x3921, 0x3922,
+  0x3923, 0x3924, 0x3925, 0x3926, 0x3927, 0x3928, 0x3929, 0x392a,
+  0x392b, 0x392c, 0x392d, 0x392e, 0x392f, 0x3930, 0x3931, 0x3932,
+  0x3933, 0x3934, 0x3935, 0x3936, 0x3937, 0x3938, 0x3939, 0x393a,
+  0x393b, 0x393c, 0x393d, 0x393e, 0x393f, 0x3940, 0x3941, 0x3942,
+  0x3943, 0x3944, 0x3945, 0x3946, 0x3947, 0x3948, 0x3949, 0x394a,
+  0x394b, 0x394c, 0x394d, 0x394e, 0x394f, 0x3950, 0x3951, 0x3952,
+  0x3953, 0x3954, 0x3955, 0x3956, 0x3957, 0x3958, 0x3959, 0x395a,
+  0x395b, 0x395c, 0x395d, 0x395e, 0x395f, 0x3960, 0x3961, 0x3962,
+  0x3963, 0x3964, 0x3965, 0x3966, 0x3967, 0x3968, 0x3969, 0x396a,
+  0x396b, 0x396c, 0x396d, 0x396e, 0x396f, 0x3970, 0x3971, 0x3972,
+  0x3973, 0x3974, 0x3975, 0x3976, 0x3977, 0x3978, 0x3979, 0x397a,
+  0x397b, 0x397c, 0x397d, 0x397e, 0x3a21, 0x3a22, 0x3a23, 0x3a24,
+  0x3a25, 0x3a26, 0x3a27, 0x3a28, 0x3a29, 0x3a2a, 0x3a2b, 0x3a2c,
+  0x3a2d, 0x3a2e, 0x3a2f, 0x3a30, 0x3a31, 0x3a33, 0x3a34, 0x3a35,
+  0x3a36, 0x3a37, 0x3a38, 0x3a32, 0x3a39, 0x3a3a, 0x3a3b, 0x3a3c,
+  0x3a3d, 0x3a3e, 0x3a3f, 0x3a40, 0x3a41, 0x3a42, 0x3a43, 0x3a44,
+  0x3a45, 0x3a46, 0x3a47, 0x3a48, 0x3a49, 0x3a4a, 0x3a4b, 0x3a4c,
+  0x3a4d, 0x3a4e, 0x3a4f, 0x3a50, 0x3a51, 0x3a52, 0x3a53, 0x3a54,
+  0x3a55, 0x3a56, 0x3a57, 0x3a58, 0x3a59, 0x3a5a, 0x3a5b, 0x3a5c,
+  0x3a5d, 0x3a5e, 0x3a5f, 0x3a60, 0x3a61, 0x3a62, 0x3a63, 0x3a64,
+  0x3a65, 0x3a66, 0x3a67, 0x3a68, 0x3a69, 0x3a6a, 0x3a6b, 0x3a6c,
+  0x3a6d, 0x3a6e, 0x3a6f, 0x3a70, 0x3a71, 0x3a72, 0x3a73, 0x3a74,
+  0x3a75, 0x3a76, 0x3a77, 0x3a78, 0x3a79, 0x3a7a, 0x3a7b, 0x3a7c,
+  0x3a7d, 0x3a7e, 0x3b21, 0x3b22, 0x3b23, 0x3b24, 0x3b25, 0x3b26,
+  0x3b27, 0x3b28, 0x3b29, 0x3b2a, 0x3b2b, 0x3b2c, 0x3b2d, 0x3b2e,
+  0x3b2f, 0x3b30, 0x3b31, 0x3b32, 0x3b33, 0x3b34, 0x3b35, 0x3b36,
+  0x3b37, 0x3b38, 0x3b39, 0x3b3a, 0x3b3b, 0x3b3d, 0x3b3c, 0x3b3e,
+  0x3b3f, 0x3b40, 0x3b41, 0x3b42, 0x3b43, 0x3b44, 0x3b45, 0x3b47,
+  0x3b48, 0x3b49, 0x3b4a, 0x3b46, 0x3b4b, 0x3b4c, 0x3b4d, 0x3b4e,
+  0x3b4f, 0x3b50, 0x3b51, 0x3b52, 0x3b53, 0x3b57, 0x3b55, 0x3b54,
+  0x3b56, 0x3b58, 0x3b59, 0x3b5a, 0x3b5b, 0x3b5c, 0x3b5d, 0x3b5e,
+  0x3b5f, 0x3b60, 0x3b61, 0x3b62, 0x3b63, 0x3b64, 0x3b65, 0x3b66,
+  0x3b67, 0x3b68, 0x3b69, 0x3b6a, 0x3b6b, 0x3b6c, 0x3b6d, 0x3b6e,
+  0x3b6f, 0x3b70, 0x3b71, 0x3b72, 0x6674, 0x3b73, 0x3b74, 0x3b75,
+  0x3b76, 0x3b77, 0x3b78, 0x3b7a, 0x3b79, 0x3b7b, 0x3b7c, 0x3b7d,
+  0x3b7e, 0x3c21, 0x3c22, 0x3c23, 0x3c24, 0x3c25, 0x3c26, 0x3c27,
+  0x3c28, 0x3c29, 0x3c2a, 0x3c2b, 0x3c2c, 0x3c2e, 0x3c2d, 0x3c2f,
+  0x3c30, 0x3c31, 0x3c34, 0x3c32, 0x3c33, 0x3c35, 0x3c36, 0x3c37,
+  0x3c38, 0x3c39, 0x3c3a, 0x3c3b, 0x3c3c, 0x3c3d, 0x3c3e, 0x3c3f,
+  0x3c40, 0x3c41, 0x3c42, 0x3c43, 0x3c44, 0x3c45, 0x3c46, 0x3c47,
+  0x3c48, 0x3c49, 0x3c4a, 0x3c4b, 0x3c4c, 0x3c4d, 0x3c4e, 0x3c4f,
+  0x3c50, 0x3c52, 0x3c51, 0x3c53, 0x3c54, 0x3c55, 0x3c56, 0x3c57,
+  0x3c58, 0x3c59, 0x3c5a, 0x3c5b, 0x3c5c, 0x3c5d, 0x3c5e, 0x3c5f,
+  0x3c60, 0x3c61, 0x3c62, 0x3c63, 0x3c64, 0x3c65, 0x3c66, 0x3c67,
+  0x3c68, 0x3c69, 0x3c6a, 0x3c6b, 0x3c6c, 0x3c6d, 0x3c6e, 0x3c6f,
+  0x3c70, 0x3c71, 0x3c72, 0x3c73, 0x3c74, 0x3c75, 0x3c76, 0x3c77,
+  0x3c78, 0x3c79, 0x3c7a, 0x3c7b, 0x3c7c, 0x3c7d, 0x3c7e, 0x3d21,
+  0x3d22, 0x3d23, 0x3d24, 0x3d25, 0x3d26, 0x3d27, 0x3d28, 0x3d29,
+  0x3d2a, 0x3d2b, 0x3d2c, 0x3d2d, 0x3d2e, 0x3d2f, 0x3d32, 0x3d30,
+  0x3d31, 0x3d33, 0x3d34, 0x3d35, 0x3d36, 0x3d37, 0x3d38, 0x3d39,
+  0x3d3a, 0x3d3b, 0x3d3c, 0x3d3d, 0x3d3e, 0x3d3f, 0x3d40, 0x3d41,
+  0x3d42, 0x3d43, 0x3d44, 0x3d45, 0x3d46, 0x3d47, 0x3d48, 0x3d49,
+  0x3d4a, 0x3d4b, 0x3d4c, 0x3d4d, 0x3d4e, 0x3d4f, 0x3d50, 0x3d51,
+  0x3d52, 0x3d53, 0x3d54, 0x3d55, 0x3d56, 0x3d57, 0x3d58, 0x3d59,
+  0x3d5a, 0x3d5b, 0x3d5c, 0x3d5d, 0x3d5e, 0x3d5f, 0x3d60, 0x3d61,
+  0x3d62, 0x3d63, 0x3d64, 0x3d65, 0x3d66, 0x3d67, 0x3d68, 0x3d69,
+  0x3d6a, 0x3d6b, 0x3d6c, 0x3d6d, 0x3d6e, 0x3d6f, 0x3d70, 0x3d71,
+  0x3d72, 0x3d73, 0x3d74, 0x3d75, 0x3d76, 0x3d77, 0x3d78, 0x3d79,
+  0x3d7a, 0x3d7b, 0x3d7c, 0x3d7d, 0x3d7e, 0x3e21, 0x3e22, 0x3e23,
+  0x3e24, 0x3e25, 0x3e26, 0x3e27, 0x3e28, 0x3e29, 0x3e2a, 0x3e2b,
+  0x3e2c, 0x3e2d, 0x3e2e, 0x3e2f, 0x3e30, 0x3e31, 0x3e32, 0x3e33,
+  0x3e34, 0x3e35, 0x3e36, 0x3e37, 0x3e38, 0x3e39, 0x3e3a, 0x3e3b,
+  0x3e3c, 0x3e3d, 0x3e3e, 0x3e3f, 0x3e40, 0x3e41, 0x3e42, 0x3e43,
+  0x3e44, 0x3e45, 0x3e46, 0x3e47, 0x3e48, 0x3e49, 0x3e4a, 0x3e4b,
+  0x3e4c, 0x3e4d, 0x3e4e, 0x3e4f, 0x3e50, 0x3e51, 0x3e52, 0x3e53,
+  0x3e54, 0x3e55, 0x3e56, 0x3e57, 0x3e58, 0x3e59, 0x3e5a, 0x3e5b,
+  0x3e5c, 0x3e5d, 0x3e5e, 0x3e5f, 0x3e60, 0x3e61, 0x3e62, 0x3e63,
+  0x3e64, 0x3e65, 0x3e66, 0x3e67, 0x3e68, 0x3e69, 0x3e6a, 0x3e6b,
+  0x3e6c, 0x3e6d, 0x3e6e, 0x3e6f, 0x3e70, 0x3e71, 0x3e72, 0x3e73,
+  0x3e74, 0x3e75, 0x3e76, 0x3e77, 0x3e78, 0x3e79, 0x3e7a, 0x3e7b,
+  0x3e7e, 0x3e7c, 0x3e7d, 0x3f21, 0x3f22, 0x3f23, 0x3f24, 0x3f25,
+  0x3f26, 0x3f27, 0x3f28, 0x3f29, 0x3f2a, 0x3f2b, 0x3f2c, 0x3f2d,
+  0x3f2e, 0x3f2f, 0x3f30, 0x3f31, 0x3f32, 0x3f33, 0x3f34, 0x3f35,
+  0x3f36, 0x3f37, 0x3f38, 0x3f39, 0x3f3a, 0x3f3b, 0x3f3c, 0x3f3d,
+  0x3f3e, 0x3f3f, 0x3f40, 0x3f41, 0x3f42, 0x3f43, 0x3f44, 0x3f45,
+  0x3f46, 0x3f47, 0x3f48, 0x3f49, 0x3f4a, 0x3f4b, 0x3f4c, 0x3f4d,
+  0x3f4e, 0x3f4f, 0x3f50, 0x3f51, 0x3f52, 0x3f53, 0x3f54, 0x3f55,
+  0x3f56, 0x3f57, 0x3f58, 0x3f59, 0x3f5a, 0x3f5b, 0x3f5c, 0x3f5d,
+  0x3f5e, 0x3f5f, 0x3f60, 0x3f61, 0x3f62, 0x3f63, 0x3f64, 0x3f65,
+  0x3f66, 0x3f67, 0x3f68, 0x3f69, 0x3f6a, 0x3f6b, 0x3f6c, 0x3f6d,
+  0x3f6e, 0x3f6f, 0x3f70, 0x3f71, 0x3f72, 0x3f73, 0x3f74, 0x3f75,
+  0x3f76, 0x3f77, 0x3f78, 0x3f79, 0x3f7a, 0x3f7b, 0x3f7c, 0x3f7d,
+  0x3f7e, 0x4021, 0x4022, 0x4023, 0x4024, 0x4025, 0x4026, 0x4027,
+  0x4028, 0x4029, 0x402a, 0x402b, 0x402c, 0x402d, 0x402e, 0x402f,
+  0x4030, 0x4031, 0x4032, 0x4033, 0x4034, 0x4035, 0x4036, 0x4037,
+  0x4038, 0x4039, 0x403a, 0x403b, 0x403c, 0x403d, 0x403e, 0x403f,
+  0x4040, 0x4041, 0x4042, 0x4043, 0x4044, 0x4045, 0x4046, 0x4047,
+  0x4048, 0x4049, 0x404a, 0x404b, 0x404c, 0x404d, 0x404e, 0x404f,
+  0x4050, 0x4051, 0x4052, 0x4053, 0x4054, 0x4055, 0x4056, 0x4057,
+  0x4058, 0x4059, 0x405a, 0x405b, 0x405c, 0x405d, 0x405e, 0x405f,
+  0x4060, 0x4061, 0x4062, 0x4063, 0x4064, 0x4065, 0x4066, 0x4067,
+  0x4068, 0x4069, 0x406a, 0x406b, 0x406c, 0x406d, 0x406e, 0x406f,
+  0x4070, 0x4071, 0x4072, 0x4073, 0x4074, 0x4075, 0x4076, 0x4077,
+  0x4078, 0x4079, 0x407a, 0x407b, 0x407c, 0x407d, 0x407e, 0x4121,
+  0x4122, 0x4123, 0x4124, 0x4125, 0x4126, 0x4127, 0x4128, 0x4129,
+  0x412a, 0x412b, 0x412c, 0x412d, 0x412e, 0x412f, 0x4130, 0x4131,
+  0x4132, 0x4133, 0x4134, 0x4135, 0x4136, 0x4137, 0x4138, 0x4139,
+  0x413a, 0x413b, 0x413c, 0x413d, 0x413e, 0x413f, 0x4140, 0x4141,
+  0x4142, 0x4143, 0x4144, 0x4145, 0x4146, 0x4147, 0x4148, 0x4149,
+  0x414a, 0x414b, 0x414c, 0x414d, 0x414e, 0x414f, 0x4150, 0x4151,
+  0x4152, 0x4153, 0x4154, 0x4155, 0x4156, 0x4157, 0x4158, 0x4159,
+  0x415a, 0x415b, 0x415c, 0x415d, 0x415e, 0x415f, 0x4160, 0x4161,
+  0x4162, 0x4163, 0x4164, 0x4165, 0x4166, 0x4167, 0x4168, 0x4169,
+  0x416a, 0x416b, 0x416c, 0x416d, 0x416e, 0x416f, 0x4170, 0x4171,
+  0x4172, 0x4173, 0x4174, 0x4175, 0x4176, 0x4177, 0x4178, 0x4179,
+  0x417a, 0x417b, 0x417c, 0x417d, 0x417e, 0x4221, 0x4222, 0x4223,
+  0x4224, 0x4225, 0x4226, 0x4227, 0x4228, 0x4229, 0x422a, 0x422b,
+  0x422c, 0x422d, 0x422e, 0x4230, 0x422f, 0x4231, 0x4232, 0x4233,
+  0x4234, 0x4235, 0x4237, 0x4236, 0x4238, 0x4239, 0x423a, 0x423b,
+  0x423c, 0x423d, 0x423e, 0x4240, 0x4241, 0x4242, 0x4244, 0x4245,
+  0x4247, 0x4248, 0x4249, 0x424a, 0x424c, 0x4243, 0x4246, 0x424b,
+  0x424d, 0x424e, 0x424f, 0x4250, 0x4251, 0x4252, 0x4253, 0x4254,
+  0x4255, 0x4256, 0x4257, 0x4258, 0x4259, 0x425a, 0x425b, 0x425c,
+  0x425d, 0x425e, 0x425f, 0x4260, 0x4261, 0x4262, 0x4263, 0x4264,
+  0x4265, 0x4266, 0x4267, 0x4268, 0x4269, 0x426a, 0x426b, 0x426c,
+  0x426d, 0x423f, 0x426e, 0x426f, 0x4270, 0x4271, 0x4272, 0x4273,
+  0x4274, 0x4275, 0x4276, 0x4277, 0x4278, 0x4279, 0x427a, 0x427b,
+  0x427c, 0x427d, 0x427e, 0x4321, 0x4322, 0x4323, 0x4324, 0x4325,
+  0x4326, 0x4327, 0x4328, 0x4329, 0x432a, 0x432b, 0x432c, 0x432d,
+  0x432e, 0x432f, 0x4330, 0x4331, 0x4332, 0x4333, 0x4334, 0x4335,
+  0x4336, 0x4337, 0x4339, 0x433a, 0x433b, 0x433c, 0x433d, 0x433e,
+  0x433f, 0x4340, 0x4341, 0x4342, 0x4343, 0x4344, 0x4345, 0x4346,
+  0x4347, 0x4348, 0x4338, 0x434a, 0x434b, 0x434c, 0x434d, 0x434f,
+  0x434e, 0x4350, 0x4351, 0x4352, 0x4353, 0x4354, 0x4355, 0x4356,
+  0x4357, 0x4358, 0x4359, 0x435a, 0x435b, 0x4349, 0x435c, 0x435d,
+  0x435e, 0x435f, 0x4360, 0x4361, 0x4362, 0x4363, 0x4364, 0x4365,
+  0x4366, 0x4367, 0x4368, 0x4369, 0x436a, 0x436b, 0x436c, 0x436d,
+  0x436e, 0x436f, 0x4370, 0x4371, 0x4372, 0x4373, 0x4374, 0x4375,
+  0x4376, 0x4377, 0x4378, 0x4379, 0x437a, 0x437b, 0x437c, 0x437d,
+  0x437e, 0x4421, 0x4422, 0x4423, 0x4424, 0x4425, 0x4426, 0x4427,
+  0x4428, 0x4429, 0x442a, 0x442b, 0x442c, 0x442d, 0x442e, 0x442f,
+  0x4430, 0x4431, 0x4432, 0x4433, 0x4434, 0x4435, 0x4436, 0x4437,
+  0x4438, 0x4439, 0x443a, 0x443b, 0x443c, 0x443d, 0x443e, 0x443f,
+  0x4440, 0x4441, 0x4442, 0x4443, 0x4444, 0x4445, 0x4446, 0x4447,
+  0x4448, 0x4449, 0x444a, 0x444b, 0x444c, 0x444d, 0x444e, 0x444f,
+  0x4450, 0x4451, 0x4452, 0x4453, 0x4454, 0x4455, 0x4456, 0x4457,
+  0x4458, 0x4459, 0x445a, 0x445b, 0x445c, 0x445d, 0x445e, 0x445f,
+  0x4460, 0x4461, 0x4462, 0x4463, 0x4464, 0x4465, 0x4466, 0x4467,
+  0x4468, 0x4469, 0x446a, 0x446b, 0x446c, 0x446d, 0x446e, 0x446f,
+  0x4470, 0x4471, 0x4472, 0x4473, 0x4474, 0x4475, 0x4476, 0x4477,
+  0x4478, 0x4479, 0x447a, 0x447b, 0x447c, 0x447d, 0x447e, 0x4521,
+  0x4522, 0x4523, 0x4524, 0x4525, 0x4526, 0x4527, 0x4528, 0x4529,
+  0x452a, 0x452b, 0x452c, 0x452d, 0x452e, 0x452f, 0x4530, 0x4531,
+  0x4532, 0x4533, 0x4534, 0x4535, 0x4536, 0x4537, 0x4538, 0x4539,
+  0x453a, 0x453b, 0x453c, 0x453d, 0x453e, 0x453f, 0x4540, 0x4541,
+  0x4542, 0x4543, 0x4544, 0x4545, 0x4546, 0x4547, 0x4548, 0x4549,
+  0x454a, 0x454b, 0x454d, 0x454c, 0x454e, 0x454f, 0x4550, 0x4551,
+  0x4552, 0x4553, 0x4554, 0x4555, 0x4556, 0x4557, 0x4558, 0x4559,
+  0x455a, 0x455b, 0x455c, 0x455d, 0x455e, 0x455f, 0x4560, 0x4561,
+  0x4562, 0x4563, 0x4564, 0x4565, 0x4566, 0x4567, 0x4568, 0x4569,
+  0x456a, 0x456b, 0x456c, 0x456d, 0x456e, 0x456f, 0x4570, 0x4571,
+  0x4572, 0x4573, 0x4574, 0x4575, 0x4576, 0x4577, 0x4578, 0x4579,
+  0x457a, 0x457b, 0x457c, 0x457d, 0x457e, 0x4621, 0x4622, 0x4623,
+  0x4624, 0x4625, 0x4626, 0x4627, 0x4628, 0x4629, 0x462a, 0x462b,
+  0x462c, 0x462d, 0x462e, 0x462f, 0x4630, 0x4631, 0x4632, 0x4633,
+  0x4634, 0x4635, 0x4636, 0x4637, 0x4638, 0x4639, 0x463a, 0x463b,
+  0x463c, 0x463d, 0x463e, 0x463f, 0x4640, 0x4641, 0x4642, 0x4643,
+  0x4644, 0x4645, 0x4646, 0x4647, 0x4648, 0x4649, 0x464a, 0x464b,
+  0x464c, 0x464d, 0x464e, 0x464f, 0x4650, 0x4651, 0x4652, 0x4653,
+  0x4654, 0x4655, 0x4656, 0x4657, 0x4658, 0x4659, 0x465a, 0x465b,
+  0x465c, 0x465d, 0x465e, 0x465f, 0x4660, 0x4736, 0x4661, 0x4662,
+  0x4663, 0x4664, 0x4665, 0x4666, 0x4667, 0x4668, 0x4669, 0x466a,
+  0x466b, 0x466c, 0x466d, 0x466e, 0x466f, 0x4670, 0x4671, 0x4672,
+  0x4673, 0x4674, 0x4675, 0x4676, 0x4677, 0x4678, 0x4679, 0x467a,
+  0x467b, 0x467c, 0x467d, 0x467e, 0x4721, 0x4722, 0x4723, 0x4724,
+  0x4725, 0x4726, 0x4727, 0x4728, 0x4729, 0x472a, 0x472b, 0x472c,
+  0x472d, 0x472e, 0x472f, 0x4730, 0x4731, 0x4732, 0x4733, 0x4734,
+  0x4735, 0x4737, 0x4738, 0x4739, 0x473a, 0x473b, 0x473c, 0x473d,
+  0x473e, 0x473f, 0x4740, 0x4741, 0x4742, 0x4743, 0x4744, 0x4745,
+  0x4746, 0x4747, 0x4748, 0x4749, 0x474a, 0x474b, 0x474c, 0x474d,
+  0x474e, 0x474f, 0x4750, 0x4751, 0x4752, 0x4753, 0x4754, 0x4755,
+  0x4756, 0x4757, 0x4758, 0x4759, 0x475a, 0x475b, 0x475c, 0x475d,
+  0x475e, 0x475f, 0x4760, 0x4761, 0x4762, 0x4763, 0x4764, 0x4765,
+  0x4766, 0x4767, 0x4768, 0x4769, 0x476a, 0x476b, 0x476c, 0x476d,
+  0x476e, 0x476f, 0x4770, 0x4771, 0x4772, 0x4773, 0x4774, 0x4775,
+  0x4776, 0x4777, 0x4778, 0x4779, 0x477a, 0x477b, 0x477c, 0x477d,
+  0x477e, 0x4821, 0x4822, 0x4823, 0x4824, 0x4825, 0x4826, 0x4827,
+  0x4828, 0x4829, 0x482a, 0x482b, 0x482c, 0x482d, 0x482e, 0x482f,
+  0x4830, 0x4831, 0x4832, 0x4833, 0x4834, 0x4835, 0x4836, 0x4837,
+  0x4838, 0x4839, 0x483a, 0x483b, 0x483c, 0x483d, 0x483e, 0x483f,
+  0x4840, 0x4841, 0x4842, 0x4843, 0x4844, 0x4845, 0x4846, 0x4847,
+  0x4848, 0x4849, 0x484a, 0x484b, 0x484c, 0x4853, 0x484d, 0x484e,
+  0x484f, 0x4850, 0x4851, 0x4852, 0x4854, 0x4855, 0x4856, 0x4857,
+  0x4858, 0x4859, 0x485a, 0x485b, 0x485c, 0x485d, 0x485e, 0x485f,
+  0x4860, 0x4861, 0x4862, 0x4863, 0x4864, 0x4865, 0x4866, 0x4867,
+  0x4868, 0x4869, 0x486a, 0x486b, 0x486c, 0x486d, 0x486e, 0x486f,
+  0x4870, 0x4871, 0x4872, 0x4873, 0x4874, 0x4875, 0x4876, 0x4877,
+  0x4878, 0x4879, 0x487a, 0x487b, 0x487c, 0x487d, 0x487e, 0x4921,
+  0x4922, 0x4923, 0x4924, 0x4925, 0x4926, 0x4927, 0x4928, 0x4929,
+  0x492a, 0x492b, 0x492c, 0x492d, 0x492e, 0x492f, 0x4930, 0x4931,
+  0x4932, 0x4933, 0x4934, 0x4935, 0x4936, 0x4937, 0x4938, 0x4939,
+  0x493a, 0x493b, 0x493c, 0x4941, 0x493d, 0x493e, 0x493f, 0x4940,
+  0x4942, 0x4943, 0x4944, 0x4945, 0x4946, 0x4947, 0x4948, 0x4949,
+  0x494a, 0x494b, 0x494c, 0x494d, 0x494e, 0x494f, 0x4950, 0x4951,
+  0x4952, 0x4953, 0x4954, 0x4955, 0x4956, 0x4957, 0x4958, 0x4959,
+  0x495a, 0x495b, 0x495c, 0x495d, 0x495e, 0x495f, 0x4960, 0x4961,
+  0x4962, 0x4963, 0x4964, 0x4965, 0x4966, 0x4967, 0x4968, 0x4969,
+  0x496a, 0x496b, 0x496c, 0x496d, 0x496e, 0x496f, 0x4970, 0x4971,
+  0x4972, 0x4973, 0x4974, 0x4975, 0x4976, 0x4977, 0x4978, 0x4979,
+  0x497a, 0x497b, 0x497c, 0x497d, 0x497e, 0x4a21, 0x4a22, 0x4a23,
+  0x4a24, 0x4a25, 0x4a26, 0x4a27, 0x4a28, 0x4a29, 0x4a2a, 0x4a2b,
+  0x4a2c, 0x4a2d, 0x4a2e, 0x4a2f, 0x4a30, 0x4a31, 0x4a32, 0x4a33,
+  0x4a34, 0x4a35, 0x4a36, 0x4a37, 0x4a38, 0x4a39, 0x4a3a, 0x4a3b,
+  0x4a3c, 0x4a3d, 0x4a3e, 0x4a3f, 0x4a40, 0x4a41, 0x4a42, 0x4a43,
+  0x4a44, 0x4a45, 0x4a46, 0x4a47, 0x4a48, 0x4a49, 0x4a4a, 0x4a4b,
+  0x4a4c, 0x4a4d, 0x4a4e, 0x4a4f, 0x4a50, 0x4a51, 0x4a52, 0x4a53,
+  0x4a54, 0x4a55, 0x4a56, 0x4a57, 0x4a58, 0x4a59, 0x4a5a, 0x4a5b,
+  0x4a5c, 0x4a5d, 0x4a5e, 0x4a5f, 0x4a60, 0x4a61, 0x4a62, 0x4a63,
+  0x4a64, 0x4a65, 0x4a66, 0x4a67, 0x4a68, 0x4a69, 0x4a6a, 0x4a6b,
+  0x4a6c, 0x4a6d, 0x4a6e, 0x4a6f, 0x4a70, 0x4a71, 0x4a72, 0x4a73,
+  0x4a74, 0x4a75, 0x4a76, 0x4a77, 0x4a78, 0x4a79, 0x4a7a, 0x4a7b,
+  0x4a7c, 0x4a7d, 0x4a7e, 0x4b21, 0x4b22, 0x4b23, 0x4b24, 0x4b25,
+  0x4b26, 0x4b27, 0x4b28, 0x4b29, 0x4b2a, 0x4b2b, 0x4b2c, 0x4b2d,
+  0x4b2e, 0x4b2f, 0x4b30, 0x4b31, 0x4b32, 0x4b33, 0x4b34, 0x4b35,
+  0x4b36, 0x4b37, 0x4b38, 0x4b39, 0x4b3a, 0x4b3b, 0x4b3c, 0x4b3d,
+  0x4b3e, 0x4b3f, 0x4b40, 0x4b41, 0x4b42, 0x4b43, 0x4b44, 0x4b45,
+  0x4b46, 0x4b47, 0x4b48, 0x4b49, 0x4b4a, 0x4b4b, 0x4b4c, 0x4b4d,
+  0x4b4e, 0x4b4f, 0x4b50, 0x4b51, 0x4b52, 0x4b53, 0x4b54, 0x4b55,
+  0x4b56, 0x4b57, 0x4b58, 0x4b59, 0x4b5a, 0x4b5b, 0x4b5c, 0x4b5d,
+  0x4b5e, 0x4b5f, 0x4b60, 0x4b61, 0x4b62, 0x4b63, 0x4b64, 0x4b65,
+  0x4b66, 0x4b67, 0x4b68, 0x4b69, 0x4b6a, 0x4b6b, 0x4b6c, 0x4b6d,
+  0x4b6e, 0x4b6f, 0x4b70, 0x4b71, 0x4b72, 0x4b73, 0x4b74, 0x4b75,
+  0x4b76, 0x4b77, 0x4b78, 0x4b79, 0x4b7a, 0x4b7b, 0x4b7c, 0x4b7d,
+  0x4b7e, 0x4c21, 0x4c22, 0x4c23, 0x4c24, 0x4c25, 0x4c26, 0x4c27,
+  0x4c28, 0x4c29, 0x4c2a, 0x4c2b, 0x4c2c, 0x4c2d, 0x4c2e, 0x4c2f,
+  0x4c30, 0x4c31, 0x4c32, 0x4c33, 0x4c34, 0x4c35, 0x4c36, 0x4c37,
+  0x4c38, 0x4c39, 0x4c3a, 0x4c3b, 0x4c3c, 0x4c3d, 0x4c3e, 0x4c3f,
+  0x4c40, 0x4c41, 0x4c42, 0x4c43, 0x4c44, 0x4c45, 0x4c46, 0x4c47,
+  0x4c48, 0x4c49, 0x4c4a, 0x4c4b, 0x4c4c, 0x4c4d, 0x4c4e, 0x4c4f,
+  0x4c50, 0x4c51, 0x4c52, 0x4c53, 0x4c54, 0x4c55, 0x4c56, 0x4c57,
+  0x4c58, 0x4c59, 0x4c5a, 0x4c5b, 0x4c5c, 0x4c5d, 0x4c5e, 0x4c5f,
+  0x4c60, 0x4c61, 0x4c62, 0x4c63, 0x4c64, 0x4c65, 0x4c66, 0x4c67,
+  0x4c68, 0x4c69, 0x4c6a, 0x4c6b, 0x4c6c, 0x4c6d, 0x4c6e, 0x4c6f,
+  0x4c70, 0x4c71, 0x4c72, 0x4c73, 0x4c74, 0x4c75, 0x4c76, 0x4c77,
+  0x4c78, 0x4c79, 0x4c7a, 0x4c7b, 0x4c7c, 0x4c7d, 0x4c7e, 0x4d21,
+  0x4d22, 0x4d23, 0x4d24, 0x4d25, 0x4d26, 0x4d27, 0x4d28, 0x4d29,
+  0x4d2a, 0x4d2b, 0x4d2c, 0x4d2d, 0x4d2e, 0x4d2f, 0x4d30, 0x4d31,
+  0x4d32, 0x4d33, 0x4d34, 0x4d35, 0x4d36, 0x4d37, 0x4d38, 0x4d39,
+  0x4d3a, 0x4d3b, 0x4d3c, 0x4d3d, 0x4d3e, 0x4d3f, 0x4d40, 0x4d41,
+  0x4d42, 0x4d43, 0x4d44, 0x4d45, 0x4d46, 0x4d47, 0x4d48, 0x4d49,
+  0x4d4a, 0x4d4b, 0x4d4c, 0x4d4d, 0x4d4e, 0x4d4f, 0x4d50, 0x4d51,
+  0x4d52, 0x4d53, 0x4d54, 0x4d55, 0x4d56, 0x4d57, 0x4d58, 0x4d59,
+  0x4d5a, 0x4d5b, 0x4d5c, 0x4d5d, 0x4d5e, 0x4d5f, 0x4d60, 0x4d61,
+  0x4d62, 0x4d63, 0x4d64, 0x4d65, 0x4d66, 0x4d67, 0x4d68, 0x4d69,
+  0x4d6a, 0x4d6b, 0x4d6c, 0x4d6d, 0x4d6e, 0x4d6f, 0x4d70, 0x4d71,
+  0x4d72, 0x4d73, 0x4d74, 0x4d75, 0x4d76, 0x4d77, 0x4d78, 0x4d79,
+  0x4d7a, 0x4d7b, 0x4d7c, 0x4d7d, 0x4d7e, 0x4e21, 0x4e22, 0x4e24,
+  0x4e25, 0x4e26, 0x4e27, 0x4e28, 0x4e29, 0x4e23, 0x4e2a, 0x4e2b,
+  0x4e2c, 0x4e2d, 0x4e2e, 0x4e2f, 0x4e30, 0x4e31, 0x4e32, 0x4e33,
+  0x4e34, 0x4e35, 0x4e36, 0x4e37, 0x4e38, 0x4e39, 0x4e3a, 0x4e3b,
+  0x4e3c, 0x4e3d, 0x4e3e, 0x4e3f, 0x4e40, 0x4e41, 0x4e42, 0x4e43,
+  0x4e44, 0x4e45, 0x4e46, 0x4e47, 0x4e48, 0x4e49, 0x4e4a, 0x4e4b,
+  0x4e4c, 0x4e4d, 0x4e4e, 0x4e4f, 0x4e50, 0x4e51, 0x4e52, 0x4e53,
+  0x4e54, 0x4e55, 0x4e56, 0x4e57, 0x4e58, 0x4e59, 0x4e5a, 0x4e5b,
+  0x4e5c, 0x4e5d, 0x4e5e, 0x4e5f, 0x4e60, 0x4e61, 0x4e62, 0x4e63,
+  0x4e64, 0x4e65, 0x4e66, 0x4e67, 0x4e68, 0x4e69, 0x4e6a, 0x4e6b,
+  0x4e6c, 0x4e6d, 0x4e6e, 0x4e6f, 0x4e70, 0x4e71, 0x4e72, 0x4e73,
+  0x4e74, 0x4e75, 0x4e76, 0x4e77, 0x4e78, 0x4e79, 0x4e7a, 0x4e7b,
+  0x4e7c, 0x4e7d, 0x4e7e, 0x4f21, 0x4f22, 0x4f23, 0x4f24, 0x4f25,
+  0x4f26, 0x4f27, 0x4f28, 0x4f29, 0x4f2a, 0x4f2b, 0x4f2c, 0x4f2d,
+  0x4f2e, 0x4f2f, 0x4f30, 0x4f31, 0x4f32, 0x4f33, 0x4f34, 0x4f35,
+  0x4f36, 0x4f37, 0x4f38, 0x4f39, 0x4f3a, 0x4f3b, 0x4f3c, 0x4f3d,
+  0x4f3e, 0x4f3f, 0x4f40, 0x4f41, 0x4f42, 0x4f43, 0x4f44, 0x4f45,
+  0x4f46, 0x4f47, 0x4f48, 0x4f49, 0x4f4a, 0x4f4b, 0x4f4c, 0x4f4d,
+  0x4f4e, 0x4f4f, 0x4f50, 0x4f51, 0x4f52, 0x4f53, 0x4f54, 0x4f55,
+  0x4f56, 0x4f57, 0x4f58, 0x4f59, 0x4f5a, 0x4f5b, 0x4f5c, 0x4f5d,
+  0x4f5e, 0x4f5f, 0x4f60, 0x4f61, 0x4f62, 0x4f63, 0x4f64, 0x4f65,
+  0x4f66, 0x4f67, 0x4f68, 0x4f69, 0x4f6a, 0x4f6b, 0x4f6c, 0x4f6d,
+  0x4f6e, 0x4f6f, 0x4f70, 0x4f71, 0x4f72, 0x4f74, 0x4f75, 0x4f76,
+  0x4f73, 0x4f77, 0x4f78, 0x4f79, 0x4f7a, 0x4f7b, 0x4f7c, 0x4f7d,
+  0x4f7e, 0x5021, 0x5022, 0x5023, 0x5024, 0x5025, 0x5026, 0x5027,
+  0x5028, 0x5029, 0x502a, 0x502b, 0x502c, 0x502e, 0x502f, 0x5030,
+  0x5031, 0x502d, 0x5032, 0x5033, 0x5034, 0x5035, 0x5037, 0x5038,
+  0x5039, 0x503a, 0x503b, 0x5036, 0x503c, 0x503d, 0x503e, 0x503f,
+  0x5040, 0x5041, 0x5042, 0x5043, 0x5044, 0x5045, 0x5046, 0x5047,
+  0x5048, 0x5049, 0x504a, 0x504b, 0x504c, 0x504d, 0x504e, 0x504f,
+  0x5050, 0x5051, 0x5052, 0x5053, 0x5054, 0x5055, 0x5056, 0x5057,
+  0x5058, 0x5059, 0x505a, 0x505b, 0x505c, 0x505d, 0x505e, 0x505f,
+  0x5060, 0x5061, 0x5062, 0x5063, 0x5064, 0x5065, 0x5066, 0x5067,
+  0x5068, 0x5069, 0x506a, 0x506b, 0x506c, 0x506d, 0x506e, 0x506f,
+  0x5070, 0x5071, 0x5072, 0x5073, 0x5074, 0x5075, 0x5076, 0x5077,
+  0x5078, 0x5079, 0x507a, 0x507b, 0x507c, 0x507d, 0x507e, 0x5121,
+  0x5122, 0x5123, 0x5124, 0x5125, 0x5126, 0x5127, 0x5128, 0x5129,
+  0x512a, 0x512b, 0x512c, 0x512d, 0x512e, 0x512f, 0x5130, 0x5131,
+  0x5132, 0x5133, 0x5134, 0x5135, 0x5136, 0x5137, 0x5138, 0x5139,
+  0x513a, 0x513b, 0x513c, 0x513d, 0x513e, 0x513f, 0x5140, 0x5141,
+  0x5142, 0x5143, 0x5144, 0x5145, 0x5146, 0x5147, 0x5148, 0x5149,
+  0x514a, 0x514b, 0x514c, 0x514d, 0x514e, 0x514f, 0x5150, 0x5151,
+  0x5152, 0x5153, 0x5154, 0x5155, 0x5156, 0x5157, 0x5158, 0x5159,
+  0x515a, 0x515b, 0x515c, 0x515d, 0x515e, 0x515f, 0x5160, 0x5161,
+  0x5162, 0x5163, 0x5164, 0x5165, 0x5166, 0x5167, 0x5168, 0x5169,
+  0x516a, 0x516b, 0x516c, 0x516d, 0x516e, 0x516f, 0x5170, 0x5171,
+  0x5172, 0x5173, 0x5174, 0x5175, 0x5176, 0x5177, 0x5178, 0x5179,
+  0x517a, 0x517b, 0x517c, 0x517d, 0x517e, 0x5221, 0x5222, 0x5223,
+  0x5224, 0x5225, 0x5226, 0x5227, 0x5228, 0x5229, 0x522a, 0x522b,
+  0x522c, 0x522d, 0x522e, 0x522f, 0x5230, 0x5231, 0x5232, 0x5233,
+  0x5234, 0x5235, 0x5236, 0x5237, 0x5238, 0x5239, 0x523a, 0x523b,
+  0x523c, 0x523d, 0x523e, 0x523f, 0x5240, 0x5241, 0x5242, 0x5243,
+  0x5244, 0x5245, 0x5246, 0x5247, 0x5248, 0x5249, 0x524a, 0x524b,
+  0x524c, 0x524d, 0x524e, 0x524f, 0x5250, 0x5251, 0x5252, 0x5253,
+  0x5254, 0x5255, 0x5256, 0x5257, 0x5258, 0x5259, 0x525a, 0x525b,
+  0x525c, 0x525d, 0x525e, 0x525f, 0x5260, 0x5261, 0x5262, 0x5263,
+  0x5264, 0x5265, 0x5266, 0x5267, 0x5268, 0x5269, 0x526a, 0x526b,
+  0x526c, 0x526d, 0x526e, 0x526f, 0x5270, 0x5271, 0x5272, 0x5273,
+  0x5274, 0x5276, 0x5277, 0x5278, 0x5275, 0x5279, 0x527a, 0x527b,
+  0x527c, 0x527d, 0x527e, 0x5321, 0x5322, 0x5323, 0x5324, 0x5325,
+  0x5326, 0x5327, 0x5328, 0x5329, 0x532a, 0x532b, 0x532c, 0x532d,
+  0x532e, 0x532f, 0x5330, 0x5331, 0x5332, 0x5333, 0x5334, 0x5335,
+  0x5336, 0x5337, 0x5338, 0x5339, 0x533a, 0x533b, 0x533c, 0x533d,
+  0x533e, 0x533f, 0x5340, 0x5341, 0x5342, 0x5343, 0x5344, 0x5345,
+  0x5346, 0x5347, 0x5348, 0x5349, 0x534a, 0x534b, 0x534c, 0x534d,
+  0x534e, 0x534f, 0x5350, 0x5351, 0x5352, 0x5353, 0x5354, 0x5355,
+  0x5356, 0x5357, 0x5358, 0x5359, 0x535a, 0x535b, 0x535c, 0x535d,
+  0x535e, 0x535f, 0x5360, 0x5361, 0x5362, 0x5363, 0x5364, 0x5365,
+  0x5366, 0x5367, 0x5368, 0x5369, 0x536a, 0x536b, 0x536c, 0x536d,
+  0x536e, 0x536f, 0x5370, 0x5371, 0x5372, 0x5373, 0x5374, 0x5375,
+  0x5376, 0x5377, 0x5378, 0x5379, 0x537a, 0x537b, 0x537c, 0x537d,
+  0x537e, 0x5421, 0x5422, 0x5423, 0x5424, 0x5425, 0x5426, 0x5427,
+  0x5428, 0x5429, 0x542a, 0x542b, 0x542c, 0x542d, 0x542e, 0x542f,
+  0x5430, 0x5431, 0x5432, 0x5434, 0x5435, 0x5436, 0x5437, 0x5438,
+  0x5439, 0x543a, 0x543b, 0x543c, 0x543d, 0x543e, 0x5433, 0x543f,
+  0x5440, 0x5441, 0x5442, 0x5443, 0x5444, 0x5445, 0x5446, 0x5447,
+  0x5448, 0x5449, 0x544a, 0x544b, 0x544c, 0x544d, 0x544e, 0x544f,
+  0x5450, 0x5451, 0x5452, 0x5453, 0x5454, 0x5455, 0x5456, 0x5457,
+  0x5458, 0x5459, 0x545a, 0x545b, 0x545c, 0x545d, 0x545e, 0x545f,
+  0x5460, 0x5461, 0x5462, 0x5463, 0x5464, 0x5465, 0x5466, 0x5467,
+  0x5468, 0x5469, 0x546a, 0x546c, 0x546b, 0x546d, 0x546e, 0x546f,
+  0x5470, 0x5471, 0x5472, 0x5473, 0x5474, 0x5475, 0x5476, 0x5477,
+  0x5478, 0x5479, 0x547a, 0x547b, 0x547c, 0x547d, 0x547e, 0x5521,
+  0x5522, 0x5523, 0x5524, 0x5525, 0x5526, 0x5527, 0x5528, 0x5529,
+  0x552a, 0x552b, 0x552c, 0x552d, 0x552e, 0x552f, 0x5530, 0x5531,
+  0x5532, 0x5533, 0x5534, 0x5535, 0x5536, 0x5537, 0x5538, 0x5539,
+  0x553a, 0x553b, 0x553c, 0x553d, 0x553e, 0x553f, 0x5540, 0x5541,
+  0x5542, 0x5543, 0x5544, 0x5545, 0x5546, 0x5547, 0x5548, 0x5549,
+  0x554a, 0x554b, 0x554c, 0x554d, 0x554e, 0x554f, 0x5550, 0x5551,
+  0x5552, 0x5553, 0x5554, 0x5555, 0x5556, 0x5557, 0x5558, 0x5559,
+  0x555a, 0x555b, 0x555c, 0x555d, 0x555e, 0x555f, 0x5560, 0x5561,
+  0x5562, 0x5563, 0x5564, 0x5565, 0x5566, 0x5567, 0x5568, 0x5569,
+  0x556a, 0x556b, 0x556c, 0x556d, 0x556e, 0x556f, 0x5570, 0x5571,
+  0x5572, 0x5573, 0x5574, 0x5575, 0x5576, 0x5577, 0x5578, 0x5579,
+  0x557a, 0x557b, 0x557c, 0x557d, 0x557e, 0x5621, 0x5622, 0x5623,
+  0x5624, 0x5625, 0x5626, 0x5627, 0x5628, 0x5629, 0x562a, 0x562b,
+  0x562c, 0x562d, 0x562e, 0x562f, 0x5630, 0x5631, 0x5632, 0x5633,
+  0x5634, 0x5635, 0x5636, 0x5637, 0x5638, 0x5639, 0x563a, 0x563b,
+  0x563c, 0x563d, 0x563e, 0x563f, 0x5640, 0x5641, 0x5642, 0x5643,
+  0x5644, 0x5645, 0x5647, 0x5648, 0x5649, 0x564a, 0x564b, 0x5646,
+  0x564c, 0x564d, 0x564e, 0x564f, 0x5650, 0x5651, 0x5652, 0x5653,
+  0x5654, 0x5656, 0x5657, 0x5658, 0x5655, 0x5659, 0x565a, 0x565b,
+  0x565c, 0x565d, 0x565e, 0x565f, 0x5660, 0x5661, 0x5662, 0x5663,
+  0x5664, 0x5665, 0x5666, 0x5667, 0x5668, 0x5669, 0x566a, 0x566b,
+  0x566c, 0x566d, 0x566e, 0x566f, 0x5670, 0x5671, 0x5672, 0x5673,
+  0x5674, 0x5675, 0x5676, 0x5677, 0x5678, 0x5679, 0x567a, 0x567b,
+  0x567c, 0x567d, 0x567e, 0x5721, 0x5722, 0x5723, 0x5724, 0x5725,
+  0x5726, 0x5727, 0x5728, 0x5729, 0x572a, 0x572b, 0x572c, 0x572d,
+  0x572e, 0x572f, 0x5730, 0x5731, 0x5732, 0x5733, 0x5734, 0x5735,
+  0x5736, 0x5737, 0x5738, 0x5739, 0x573a, 0x573b, 0x573c, 0x573d,
+  0x573e, 0x573f, 0x5740, 0x5741, 0x5742, 0x5743, 0x5744, 0x5745,
+  0x5746, 0x5747, 0x5748, 0x5749, 0x574a, 0x574b, 0x574c, 0x574d,
+  0x574e, 0x574f, 0x5750, 0x5751, 0x5752, 0x5753, 0x5754, 0x5755,
+  0x5756, 0x5757, 0x5758, 0x5759, 0x575a, 0x575b, 0x575c, 0x575d,
+  0x575e, 0x575f, 0x5760, 0x5761, 0x5762, 0x5764, 0x5765, 0x5766,
+  0x5767, 0x5768, 0x5769, 0x576a, 0x576b, 0x576c, 0x576d, 0x576e,
+  0x576f, 0x5770, 0x5771, 0x5772, 0x5773, 0x5774, 0x5775, 0x5776,
+  0x5777, 0x5778, 0x5779, 0x583e, 0x5763, 0x577a, 0x577b, 0x577c,
+  0x577d, 0x577e, 0x5821, 0x5822, 0x5823, 0x5824, 0x5825, 0x5826,
+  0x5827, 0x5828, 0x5829, 0x582a, 0x582b, 0x582c, 0x582d, 0x582e,
+  0x582f, 0x5830, 0x5831, 0x5832, 0x5833, 0x584c, 0x5834, 0x5835,
+  0x5836, 0x5837, 0x5838, 0x5839, 0x583a, 0x583b, 0x583c, 0x583d,
+  0x583f, 0x5840, 0x5841, 0x5842, 0x5843, 0x5844, 0x5845, 0x5846,
+  0x5847, 0x5848, 0x5849, 0x584a, 0x584b, 0x584d, 0x584e, 0x584f,
+  0x5850, 0x5851, 0x5852, 0x5853, 0x5854, 0x5855, 0x5856, 0x5857,
+  0x5858, 0x5859, 0x585a, 0x585b, 0x585c, 0x585d, 0x585e, 0x585f,
+  0x5860, 0x5861, 0x5862, 0x5863, 0x5864, 0x5865, 0x5866, 0x5867,
+  0x5868, 0x5869, 0x586a, 0x586b, 0x586c, 0x586d, 0x586e, 0x586f,
+  0x5870, 0x5871, 0x5872, 0x5873, 0x5874, 0x5875, 0x5876, 0x5877,
+  0x5878, 0x5879, 0x587a, 0x587b, 0x587c, 0x587d, 0x587e, 0x5921,
+  0x5922, 0x5923, 0x5924, 0x5925, 0x5926, 0x5927, 0x5928, 0x592a,
+  0x592b, 0x592c, 0x592d, 0x592e, 0x592f, 0x5930, 0x5931, 0x5932,
+  0x5933, 0x5934, 0x5935, 0x5936, 0x5937, 0x5938, 0x5939, 0x593a,
+  0x593b, 0x593c, 0x5929, 0x593d, 0x593e, 0x593f, 0x5940, 0x5941,
+  0x5942, 0x5943, 0x5944, 0x5945, 0x5946, 0x5947, 0x5948, 0x5949,
+  0x594a, 0x594b, 0x594c, 0x594d, 0x594e, 0x594f, 0x5950, 0x5951,
+  0x5952, 0x5953, 0x5954, 0x5955, 0x5956, 0x5957, 0x5958, 0x5959,
+  0x595a, 0x595b, 0x595c, 0x595d, 0x595e, 0x595f, 0x5960, 0x5961,
+  0x5962, 0x5963, 0x5964, 0x5965, 0x5966, 0x5974, 0x5967, 0x5968,
+  0x5969, 0x596a, 0x596b, 0x596c, 0x596d, 0x596e, 0x596f, 0x5970,
+  0x5971, 0x5972, 0x5973, 0x5975, 0x5976, 0x5977, 0x5978, 0x5979,
+  0x597a, 0x597b, 0x597c, 0x597d, 0x597e, 0x5a21, 0x5a22, 0x5a23,
+  0x5a24, 0x5a25, 0x5a26, 0x5a27, 0x5a28, 0x5a29, 0x5a2a, 0x5a2b,
+  0x5a2c, 0x5a2d, 0x5a2e, 0x5a2f, 0x5a30, 0x5a31, 0x5a32, 0x5a33,
+  0x5a34, 0x5a35, 0x5a36, 0x3866, 0x5a37, 0x5a38, 0x5a39, 0x5a3a,
+  0x5a3b, 0x5a3c, 0x5a3d, 0x5a3e, 0x5a3f, 0x5a40, 0x5a41, 0x5a42,
+  0x5a43, 0x5a44, 0x5a45, 0x5a46, 0x5a47, 0x5a48, 0x5a49, 0x5a4a,
+  0x5a4b, 0x5a6d, 0x5a4c, 0x5a4d, 0x5a4e, 0x5a4f, 0x5a50, 0x5a51,
+  0x5a52, 0x5a53, 0x5a54, 0x5a55, 0x5a56, 0x5a57, 0x5a58, 0x5a59,
+  0x5a5a, 0x5a5b, 0x5a5c, 0x5a5d, 0x5a5e, 0x5a5f, 0x5a60, 0x5a61,
+  0x5a62, 0x5a63, 0x5a64, 0x5a65, 0x5a66, 0x5a67, 0x5a68, 0x5a69,
+  0x5a6a, 0x5a6b, 0x5a6c, 0x5a6e, 0x5a6f, 0x5a70, 0x5a71, 0x5a72,
+  0x5a73, 0x5a74, 0x5a75, 0x5a76, 0x5a77, 0x5a78, 0x5a79, 0x5a7a,
+  0x5a7b, 0x5a7c, 0x5a7d, 0x5a7e, 0x5b21, 0x5b22, 0x5b23, 0x5b24,
+  0x5b25, 0x5b26, 0x5b27, 0x5b28, 0x5b29, 0x5b2a, 0x5b2b, 0x5b2c,
+  0x5b2d, 0x5b2e, 0x5b2f, 0x5b30, 0x5b31, 0x5b32, 0x5b33, 0x5b34,
+  0x5b35, 0x5b36, 0x5b37, 0x5b38, 0x5b39, 0x5b3a, 0x5b3b, 0x5b3c,
+  0x5b3d, 0x5b3e, 0x5b3f, 0x5b40, 0x5b41, 0x5b42, 0x5b43, 0x5b44,
+  0x5b45, 0x5b46, 0x5b47, 0x5b48, 0x5b49, 0x5b4a, 0x5b4b, 0x5b4c,
+  0x5b4d, 0x5b4e, 0x5b4f, 0x5b50, 0x5b51, 0x5b52, 0x5b53, 0x5b54,
+  0x5b55, 0x5b56, 0x5b57, 0x5b58, 0x5b59, 0x5b5a, 0x5b5b, 0x5b5c,
+  0x5b5d, 0x5b5e, 0x5b5f, 0x5b60, 0x5b61, 0x5b62, 0x5b63, 0x5b64,
+  0x5b65, 0x5b66, 0x5b67, 0x5b68, 0x5b69, 0x5b6a, 0x5b6b, 0x5b6c,
+  0x5b6d, 0x5b6e, 0x5b70, 0x5b71, 0x5b72, 0x5b73, 0x5b6f, 0x5b74,
+  0x5b75, 0x5b76, 0x5b77, 0x5b78, 0x5b79, 0x5b7a, 0x5b7b, 0x5b7c,
+  0x5b7d, 0x5b7e, 0x5c21, 0x5c22, 0x5c23, 0x5c24, 0x5c25, 0x5c26,
+  0x5c27, 0x5c28, 0x5c29, 0x5c2a, 0x5c2b, 0x5c2c, 0x5c2d, 0x5c2e,
+  0x5c2f, 0x5c30, 0x5c31, 0x5c32, 0x5c33, 0x5c34, 0x5c35, 0x5c36,
+  0x5c37, 0x5c38, 0x5c39, 0x5c3a, 0x5c3b, 0x5c3c, 0x5c3d, 0x5c3e,
+  0x5c3f, 0x5c40, 0x5c41, 0x5c42, 0x5c43, 0x5c44, 0x5c45, 0x5c46,
+  0x5c47, 0x5c48, 0x5c49, 0x5c4a, 0x5c4b, 0x5c4c, 0x5c4d, 0x5c4e,
+  0x5c4f, 0x5c50, 0x5c51, 0x5c52, 0x5c53, 0x5c54, 0x5c55, 0x5c56,
+  0x5c57, 0x5c58, 0x5c59, 0x5c5a, 0x5c5b, 0x5c5c, 0x5c5d, 0x5c5e,
+  0x5c5f, 0x5c60, 0x5c61, 0x5c62, 0x5c63, 0x5c64, 0x5c65, 0x5c66,
+  0x5c67, 0x5c68, 0x5c69, 0x5c6a, 0x5c6b, 0x5c6c, 0x5c6d, 0x5c6e,
+  0x5c6f, 0x5c70, 0x5c71, 0x5c72, 0x5c73, 0x5c74, 0x5c75, 0x5c76,
+  0x5c77, 0x5c78, 0x5c79, 0x5c7a, 0x5c7b, 0x5c7c, 0x5c7d, 0x5c7e,
+  0x5d21, 0x5d22, 0x5d23, 0x5d24, 0x5d25, 0x5d26, 0x5d27, 0x5d28,
+  0x5d29, 0x5d2a, 0x5d2b, 0x5d2c, 0x5d2d, 0x5d2e, 0x5d2f, 0x5d30,
+  0x5d31, 0x5d32, 0x5d33, 0x5d34, 0x5d35, 0x5d36, 0x5d37, 0x5d38,
+  0x5d39, 0x5d3a, 0x5d3b, 0x5d3c, 0x5d3d, 0x5d3e, 0x5d3f, 0x5d40,
+  0x5d41, 0x5d42, 0x5d43, 0x5d44, 0x5d45, 0x5d46, 0x5d47, 0x5d48,
+  0x5d49, 0x5d4a, 0x5d4b, 0x5d4c, 0x5d4d, 0x5d4e, 0x5d4f, 0x5d50,
+  0x5d51, 0x5d52, 0x5d53, 0x5d54, 0x5d55, 0x5d56, 0x5d57, 0x5d58,
+  0x5d59, 0x5d5a, 0x5d5b, 0x5d5c, 0x5d5d, 0x5d5e, 0x5d5f, 0x5d60,
+  0x5d61, 0x5d62, 0x5d63, 0x5d64, 0x5d65, 0x5d66, 0x5d67, 0x5d68,
+  0x5d69, 0x5d6a, 0x5d6b, 0x5d6c, 0x5d6d, 0x5d6e, 0x5d6f, 0x5d70,
+  0x5d71, 0x5d72, 0x5d73, 0x5d74, 0x5d75, 0x5d76, 0x5d77, 0x5d78,
+  0x5d79, 0x5d7a, 0x5d7b, 0x5d7c, 0x5d7d, 0x5d7e, 0x5e21, 0x5e22,
+  0x5e23, 0x5e24, 0x5e25, 0x5e26, 0x5e27, 0x5e28, 0x5e29, 0x5e2a,
+  0x5e2b, 0x5e2c, 0x5e2d, 0x5e2e, 0x5e2f, 0x5e30, 0x5e31, 0x5e32,
+  0x5e33, 0x5e34, 0x5e35, 0x5e36, 0x5e37, 0x5e38, 0x5e39, 0x5e3f,
+  0x5e3a, 0x5e3b, 0x5e3c, 0x5e3d, 0x5e3e, 0x5e40, 0x5e41, 0x5e42,
+  0x5e43, 0x5e44, 0x5e45, 0x5e46, 0x5e47, 0x5e48, 0x5e49, 0x5e4e,
+  0x5e4a, 0x5e4b, 0x5e4c, 0x5e4d, 0x5e4f, 0x5e50, 0x5e51, 0x5e52,
+  0x5e53, 0x5e54, 0x5e55, 0x5e56, 0x5e57, 0x5e58, 0x5e59, 0x5e5a,
+  0x5e5b, 0x5e5c, 0x5e5d, 0x5e5e, 0x5e5f, 0x5e60, 0x5e61, 0x5e62,
+  0x5e63, 0x5e64, 0x5e65, 0x5e66, 0x5e67, 0x5e68, 0x5e69, 0x5e6a,
+  0x5e6b, 0x5e6c, 0x5e6d, 0x5e6e, 0x5e6f, 0x5e72, 0x5e70, 0x5e71,
+  0x5e73, 0x5e74, 0x5e75, 0x5e76, 0x5e77, 0x5e78, 0x5e79, 0x5e7a,
+  0x5e7b, 0x5e7c, 0x5e7d, 0x5e7e, 0x5f21, 0x5f22, 0x5f23, 0x5f24,
+  0x5f25, 0x5f26, 0x5f27, 0x5f28, 0x5f29, 0x5f2a, 0x5f2b, 0x5f2c,
+  0x5f2d, 0x5f2e, 0x5f2f, 0x5f30, 0x5f32, 0x5f31, 0x5f33, 0x5f34,
+  0x5f35, 0x5f36, 0x5f37, 0x5f38, 0x5f39, 0x5f3a, 0x5f3b, 0x5f3c,
+  0x5f3d, 0x5f3e, 0x5f3f, 0x5f40, 0x5f41, 0x5f42, 0x5f43, 0x5f44,
+  0x5f45, 0x5f46, 0x5f47, 0x5f48, 0x5f49, 0x5f4a, 0x5f4b, 0x5f4c,
+  0x5f4d, 0x5f4e, 0x5f4f, 0x5f50, 0x5f51, 0x5f52, 0x5f53, 0x5f54,
+  0x5f55, 0x5f56, 0x5f57, 0x5f58, 0x5f59, 0x5f5a, 0x5f5b, 0x5f5c,
+  0x5f5d, 0x5f6f, 0x5f5e, 0x5f5f, 0x5f60, 0x5f61, 0x5f62, 0x5f63,
+  0x5f64, 0x5f65, 0x5f66, 0x5f67, 0x5f68, 0x5f69, 0x5f6a, 0x5f6b,
+  0x5f6c, 0x5f6d, 0x5f6e, 0x5f70, 0x5f71, 0x5f72, 0x5f73, 0x5f74,
+  0x5f75, 0x5f76, 0x5f77, 0x5f78, 0x5f79, 0x5f7a, 0x5f7b, 0x5f7c,
+  0x5f7d, 0x5f7e, 0x6021, 0x6022, 0x6023, 0x6024, 0x6025, 0x6026,
+  0x6027, 0x6028, 0x6029, 0x602a, 0x602b, 0x602c, 0x602d, 0x602e,
+  0x602f, 0x6030, 0x6031, 0x6032, 0x6033, 0x6034, 0x6035, 0x6036,
+  0x6037, 0x6038, 0x6039, 0x603a, 0x603b, 0x603c, 0x603d, 0x603e,
+  0x603f, 0x6040, 0x6041, 0x6042, 0x6043, 0x6044, 0x6045, 0x6046,
+  0x6047, 0x6048, 0x6049, 0x604a, 0x604b, 0x604c, 0x604d, 0x604e,
+  0x604f, 0x6050, 0x6051, 0x6052, 0x6053, 0x6054, 0x6055, 0x6056,
+  0x6057, 0x6058, 0x6059, 0x605a, 0x605b, 0x605c, 0x605d, 0x6064,
+  0x605e, 0x605f, 0x6060, 0x6061, 0x6062, 0x6063, 0x6065, 0x6066,
+  0x6067, 0x6068, 0x6069, 0x606a, 0x606b, 0x606c, 0x606d, 0x606e,
+  0x606f, 0x6070, 0x6071, 0x6072, 0x6073, 0x6074, 0x6075, 0x6076,
+  0x6077, 0x6078, 0x6079, 0x607a, 0x607b, 0x607c, 0x607d, 0x607e,
+  0x6121, 0x6122, 0x6123, 0x6124, 0x6125, 0x6126, 0x6127, 0x6128,
+  0x6129, 0x612a, 0x612b, 0x612c, 0x612d, 0x612e, 0x612f, 0x6130,
+  0x6131, 0x6132, 0x6133, 0x6134, 0x6135, 0x6136, 0x6137, 0x6138,
+  0x6139, 0x613a, 0x613b, 0x613c, 0x613d, 0x613e, 0x613f, 0x6140,
+  0x6141, 0x6142, 0x6143, 0x6144, 0x6145, 0x6146, 0x6147, 0x6148,
+  0x6149, 0x614a, 0x614b, 0x614c, 0x614d, 0x614e, 0x614f, 0x6150,
+  0x6151, 0x6152, 0x6154, 0x6155, 0x6156, 0x6153, 0x6157, 0x6158,
+  0x6159, 0x615a, 0x615b, 0x615c, 0x615d, 0x615e, 0x615f, 0x6160,
+  0x6161, 0x6162, 0x6163, 0x6164, 0x6165, 0x6166, 0x6167, 0x6168,
+  0x6169, 0x616a, 0x616b, 0x616c, 0x616d, 0x616e, 0x616f, 0x6170,
+  0x6171, 0x6172, 0x6173, 0x6174, 0x6175, 0x6176, 0x6177, 0x6178,
+  0x6179, 0x617a, 0x617b, 0x617d, 0x617e, 0x6221, 0x6222, 0x6223,
+  0x6224, 0x617c, 0x622d, 0x6225, 0x6226, 0x6227, 0x6228, 0x6229,
+  0x622a, 0x622b, 0x622c, 0x622f, 0x6230, 0x6231, 0x6232, 0x622e,
+  0x6233, 0x6234, 0x6235, 0x6236, 0x6237, 0x6238, 0x6239, 0x623a,
+  0x623b, 0x623c, 0x623d, 0x623e, 0x623f, 0x6240, 0x6241, 0x6242,
+  0x6243, 0x6245, 0x6246, 0x6244, 0x6247, 0x6248, 0x6249, 0x624a,
+  0x624b, 0x624c, 0x624d, 0x624e, 0x624f, 0x6250, 0x6251, 0x6252,
+  0x6253, 0x6254, 0x6255, 0x6256, 0x6257, 0x6258, 0x6259, 0x625a,
+  0x625b, 0x625c, 0x625d, 0x625e, 0x625f, 0x6260, 0x6261, 0x6262,
+  0x6263, 0x6264, 0x6265, 0x6266, 0x6267, 0x6268, 0x6269, 0x626a,
+  0x626b, 0x626c, 0x626d, 0x626e, 0x626f, 0x6270, 0x6271, 0x6272,
+  0x6273, 0x6274, 0x6275, 0x6276, 0x6277, 0x6278, 0x6279, 0x627a,
+  0x627b, 0x627c, 0x627d, 0x627e, 0x6321, 0x6322, 0x6323, 0x6324,
+  0x6325, 0x6326, 0x6327, 0x6328, 0x6329, 0x632a, 0x632b, 0x632c,
+  0x632d, 0x632e, 0x632f, 0x6330, 0x6331, 0x6332, 0x6333, 0x6334,
+  0x6335, 0x6336, 0x6337, 0x6338, 0x6339, 0x633a, 0x633b, 0x633c,
+  0x633d, 0x633e, 0x633f, 0x6340, 0x6341, 0x6342, 0x6343, 0x6344,
+  0x6345, 0x6346, 0x6347, 0x6348, 0x6349, 0x634a, 0x634b, 0x634c,
+  0x634d, 0x634e, 0x634f, 0x6350, 0x6351, 0x6352, 0x6353, 0x6354,
+  0x6355, 0x6356, 0x6357, 0x6358, 0x6359, 0x635a, 0x635b, 0x635c,
+  0x635d, 0x635e, 0x635f, 0x6360, 0x6361, 0x6362, 0x6363, 0x6364,
+  0x6365, 0x6366, 0x6367, 0x6368, 0x6369, 0x636a, 0x636b, 0x636c,
+  0x636d, 0x636e, 0x636f, 0x6370, 0x6371, 0x6372, 0x6373, 0x6374,
+  0x6375, 0x6376, 0x6377, 0x6378, 0x6379, 0x637a, 0x637b, 0x637c,
+  0x637d, 0x637e, 0x6421, 0x6422, 0x6423, 0x6424, 0x6425, 0x6426,
+  0x6427, 0x6428, 0x6429, 0x642a, 0x642b, 0x642c, 0x642d, 0x642e,
+  0x642f, 0x6430, 0x6431, 0x6432, 0x6433, 0x6434, 0x6435, 0x6436,
+  0x6437, 0x6438, 0x6439, 0x643a, 0x643b, 0x643c, 0x643d, 0x643e,
+  0x643f, 0x6440, 0x6441, 0x6442, 0x6443, 0x6444, 0x6445, 0x6446,
+  0x6447, 0x6448, 0x6449, 0x644a, 0x644b, 0x644c, 0x644d, 0x644e,
+  0x644f, 0x6450, 0x6451, 0x6452, 0x6453, 0x6454, 0x6455, 0x6456,
+  0x6457, 0x6458, 0x6459, 0x645a, 0x645b, 0x645c, 0x645d, 0x645e,
+  0x645f, 0x6460, 0x6461, 0x6462, 0x6463, 0x6464, 0x6465, 0x6466,
+  0x6467, 0x6468, 0x6469, 0x646a, 0x646b, 0x646c, 0x646d, 0x646e,
+  0x646f, 0x6470, 0x6471, 0x6472, 0x6473, 0x6474, 0x6475, 0x6476,
+  0x6477, 0x6478, 0x6479, 0x647a, 0x647b, 0x647c, 0x647d, 0x647e,
+  0x6521, 0x6522, 0x6523, 0x6524, 0x6525, 0x6526, 0x6527, 0x6528,
+  0x6529, 0x652a, 0x652b, 0x652c, 0x652d, 0x652e, 0x652f, 0x6530,
+  0x6531, 0x6532, 0x6533, 0x6534, 0x6535, 0x653b, 0x6536, 0x6537,
+  0x6538, 0x6539, 0x653a, 0x653c, 0x653d, 0x653e, 0x653f, 0x6540,
+  0x6541, 0x6542, 0x6543, 0x6544, 0x6545, 0x6546, 0x6547, 0x6548,
+  0x6549, 0x654a, 0x654b, 0x654c, 0x654d, 0x654f, 0x6550, 0x654e,
+  0x6551, 0x6552, 0x6553, 0x6554, 0x6555, 0x6556, 0x6557, 0x6558,
+  0x6559, 0x655a, 0x655b, 0x655c, 0x655d, 0x655e, 0x655f, 0x6560,
+  0x6561, 0x6562, 0x6563, 0x6564, 0x6565, 0x6566, 0x6568, 0x6567,
+  0x6569, 0x656a, 0x656b, 0x656c, 0x656d, 0x656e, 0x656f, 0x6570,
+  0x6571, 0x6572, 0x6573, 0x6574, 0x6575, 0x6576, 0x6577, 0x6578,
+  0x6579, 0x657a, 0x657c, 0x657b, 0x657d, 0x657e, 0x6621, 0x6622,
+  0x6623, 0x6624, 0x6625, 0x6626, 0x6627, 0x6628, 0x6629, 0x662a,
+  0x662b, 0x662c, 0x662d, 0x662e, 0x662f, 0x6630, 0x6631, 0x6632,
+  0x6633, 0x6634, 0x6635, 0x6636, 0x6637, 0x6638, 0x6639, 0x663a,
+  0x663b, 0x663c, 0x663d, 0x663e, 0x663f, 0x6640, 0x6641, 0x6642,
+  0x6643, 0x6644, 0x6645, 0x6646, 0x6647, 0x6648, 0x6649, 0x664a,
+  0x664b, 0x664c, 0x664d, 0x664e, 0x664f, 0x6650, 0x6651, 0x6652,
+  0x6653, 0x6654, 0x6655, 0x6656, 0x6657, 0x6658, 0x6659, 0x665a,
+  0x665b, 0x665c, 0x665d, 0x665e, 0x665f, 0x6660, 0x6661, 0x6662,
+  0x6663, 0x6664, 0x6665, 0x6666, 0x6667, 0x6668, 0x6669, 0x666a,
+  0x666b, 0x666c, 0x666d, 0x666e, 0x666f, 0x6670, 0x6671, 0x6672,
+  0x6673, 0x6675, 0x6676, 0x6677, 0x6678, 0x6679, 0x667a, 0x667b,
+  0x667c, 0x667d, 0x667e, 0x6721, 0x6722, 0x6723, 0x6724, 0x6725,
+  0x6726, 0x6727, 0x6728, 0x6729, 0x672a, 0x672b, 0x672c, 0x672d,
+  0x672e, 0x672f, 0x6730, 0x6731, 0x6732, 0x6733, 0x6734, 0x6735,
+  0x6736, 0x6737, 0x6738, 0x6739, 0x673a, 0x673b, 0x673c, 0x673d,
+  0x673e, 0x673f, 0x6740, 0x6741, 0x6742, 0x6743, 0x6744, 0x6745,
+  0x6746, 0x6747, 0x6748, 0x6749, 0x674a, 0x674b, 0x674c, 0x674d,
+  0x674e, 0x674f, 0x6750, 0x6751, 0x6752, 0x6753, 0x6754, 0x6755,
+  0x6756, 0x6757, 0x6758, 0x6759, 0x675a, 0x675b, 0x675c, 0x675d,
+  0x675e, 0x675f, 0x6760, 0x6761, 0x6762, 0x6763, 0x6764, 0x6765,
+  0x6766, 0x676a, 0x6767, 0x6768, 0x6769, 0x676b, 0x676c, 0x676d,
+  0x676e, 0x676f, 0x6770, 0x6771, 0x6772, 0x6773, 0x6774, 0x6776,
+  0x6777, 0x6778, 0x6779, 0x6775, 0x677a, 0x677b, 0x677c, 0x677d,
+  0x6828, 0x677e, 0x6821, 0x6822, 0x6823, 0x6824, 0x6825, 0x6826,
+  0x6827, 0x6829, 0x682a, 0x682b, 0x682c, 0x682d, 0x682e, 0x682f,
+  0x6830, 0x6831, 0x6832, 0x6833, 0x6834, 0x6835, 0x6836, 0x6837,
+  0x6838, 0x6839, 0x683a, 0x683b, 0x683c, 0x683d, 0x683e, 0x683f,
+  0x6840, 0x6841, 0x6842, 0x6843, 0x6844, 0x6845, 0x6846, 0x6847,
+  0x6848, 0x6849, 0x684a, 0x684b, 0x684c, 0x684d, 0x684e, 0x684f,
+  0x6850, 0x6851, 0x6852, 0x6853, 0x6854, 0x6855, 0x6856, 0x6857,
+  0x6858, 0x6859, 0x685a, 0x685b, 0x685c, 0x685d, 0x685e, 0x685f,
+  0x6860, 0x6861, 0x6862, 0x6863, 0x6864, 0x6865, 0x6866, 0x6867,
+  0x6868, 0x6869, 0x686a, 0x686b, 0x686c, 0x686d, 0x686e, 0x686f,
+  0x6870, 0x6871, 0x6872, 0x6873, 0x6874, 0x6875, 0x6876, 0x6877,
+  0x6878, 0x6879, 0x687a, 0x687b, 0x687c, 0x687d, 0x687e, 0x6921,
+  0x6922, 0x6923, 0x6924, 0x6925, 0x6926, 0x6927, 0x6928, 0x6929,
+  0x692a, 0x692b, 0x692c, 0x692d, 0x692e, 0x692f, 0x6930, 0x6931,
+  0x6932, 0x6933, 0x6934, 0x6935, 0x6936, 0x6937, 0x6938, 0x6939,
+  0x693a, 0x693b, 0x693c, 0x693d, 0x693e, 0x693f, 0x6940, 0x6941,
+  0x6942, 0x6943, 0x6944, 0x6945, 0x6946, 0x6947, 0x6948, 0x6949,
+  0x694a, 0x694c, 0x694d, 0x694b, 0x694e, 0x694f, 0x6950, 0x6951,
+  0x6952, 0x6953, 0x6954, 0x6955, 0x6956, 0x6957, 0x6958, 0x6959,
+  0x695a, 0x695b, 0x695c, 0x695d, 0x695e, 0x695f, 0x6960, 0x6961,
+  0x6962, 0x6963, 0x6964, 0x6965, 0x6966, 0x6967, 0x6968, 0x6969,
+  0x696a, 0x696b, 0x696c, 0x696d, 0x696e, 0x696f, 0x6970, 0x6971,
+  0x6972, 0x6973, 0x6974, 0x6975, 0x6976, 0x6977, 0x6978, 0x6979,
+  0x697a, 0x697b, 0x697c, 0x697d, 0x697e, 0x6a21, 0x6a22, 0x6a23,
+  0x6a24, 0x6a25, 0x6a26, 0x6a27, 0x6a28, 0x6a29, 0x6a2a, 0x6a2b,
+  0x6a2c, 0x6a2d, 0x6a2e, 0x6a2f, 0x6a30, 0x6a31, 0x6a32, 0x6a33,
+  0x6a34, 0x6a35, 0x6a36, 0x6a37, 0x6a38, 0x6a39, 0x6a3a, 0x6a3b,
+  0x6a3c, 0x6a3d, 0x6a3e, 0x6a3f, 0x6a40, 0x6a41, 0x6a42, 0x6a43,
+  0x6a44, 0x6a45, 0x6a46, 0x6a47, 0x6a48, 0x6a49, 0x6a4a, 0x6a4b,
+  0x6a4c, 0x6a4d, 0x6a4e, 0x6a4f, 0x6a50, 0x6a51, 0x6a52, 0x6a53,
+  0x6a54, 0x6a55, 0x6a56, 0x6a57, 0x6a58, 0x6a59, 0x6a5a, 0x6a5b,
+  0x6a5c, 0x6a5d, 0x6a5e, 0x6a5f, 0x6a60, 0x6a61, 0x6a62, 0x6a63,
+  0x6a64, 0x6a65, 0x6a66, 0x6a67, 0x6a68, 0x6a69, 0x6a6a, 0x6a6b,
+  0x6a6c, 0x6a6d, 0x6a6e, 0x6a6f, 0x6a70, 0x6a71, 0x6a72, 0x6a73,
+  0x6a74, 0x6a75, 0x6a76, 0x6a77, 0x6a78, 0x6a79, 0x6a7a, 0x6a7b,
+  0x6a7c, 0x6a7d, 0x6a7e, 0x6b21, 0x6b22, 0x6b23, 0x6b24, 0x6b25,
+  0x6b26, 0x6b27, 0x6b28, 0x6b29, 0x6b2a, 0x6b2b, 0x6b2c, 0x6b2d,
+  0x6b2e, 0x6b2f, 0x6b30, 0x6b31, 0x6b32, 0x6b33, 0x6b34, 0x6b35,
+  0x6b36, 0x6b37, 0x6b38, 0x6b39, 0x6b3a, 0x6b3b, 0x6b3c, 0x6b3d,
+  0x6b3e, 0x6b3f, 0x6b40, 0x6b41, 0x6b42, 0x6b43, 0x6b44, 0x6b45,
+  0x6b46, 0x6b47, 0x6b48, 0x6b49, 0x6b50, 0x6b4a, 0x6b4b, 0x6b4c,
+  0x6b4d, 0x6b52, 0x6b4e, 0x6b4f, 0x6b51, 0x6b53, 0x6b54, 0x6b55,
+  0x6b56, 0x6b57, 0x6b58, 0x6b59, 0x6b5a, 0x6b5b, 0x6b5c, 0x6b5e,
+  0x6b5d, 0x6b5f, 0x6b60, 0x6b61, 0x6b62, 0x6b63, 0x6b64, 0x6b65,
+  0x6b66, 0x6b67, 0x6b68, 0x6b69, 0x6b6a, 0x6b6b, 0x6b6d, 0x6b6e,
+  0x6b6f, 0x6b6c, 0x6b70, 0x6b71, 0x6b72, 0x6b73, 0x6b74, 0x6b76,
+  0x6b75, 0x6b77, 0x6b78, 0x6b79, 0x6b7a, 0x6b7b, 0x6b7c, 0x6b7d,
+  0x6b7e, 0x6c21, 0x6c22, 0x6c23, 0x6c24, 0x6c25, 0x6c26, 0x6c27,
+  0x6c28, 0x6c29, 0x6c2a, 0x6c2b, 0x6c2c, 0x6c2d, 0x6c2e, 0x6c2f,
+  0x6c30, 0x6c31, 0x6c32, 0x6c33, 0x6c34, 0x6c35, 0x6c36, 0x6c37,
+  0x6c38, 0x6c39, 0x6c3a, 0x6c3b, 0x6c3c, 0x6c3d, 0x6c3e, 0x6c3f,
+  0x6c40, 0x6c41, 0x6c42, 0x6c43, 0x6c44, 0x6c45, 0x6c46, 0x6c47,
+  0x6c48, 0x6c49, 0x6c4a, 0x6c4b, 0x6c4c, 0x6c4e, 0x6c4f, 0x6c4d,
+  0x6c50, 0x6c51, 0x6c52, 0x6c53, 0x6c54, 0x6c55, 0x6c56, 0x6c57,
+  0x6c58, 0x6c59, 0x6c5a, 0x6c5b, 0x6c5c, 0x6c5d, 0x6c5e, 0x6c5f,
+  0x6c60, 0x6c61, 0x6c62, 0x6c63, 0x6c64, 0x6c65, 0x6c66, 0x6c67,
+  0x6c68, 0x6c69, 0x6c6a, 0x6c6b, 0x6c6c, 0x6c6d, 0x6c6e, 0x6c6f,
+  0x6c70, 0x6c71, 0x6c72, 0x6c73, 0x6c74, 0x6c75, 0x6c76, 0x6c77,
+  0x6c78, 0x6c79, 0x6c7a, 0x6c7b, 0x6c7c, 0x6c7d, 0x6c7e, 0x6d21,
+  0x6d22, 0x6d23, 0x6d24, 0x6d25, 0x6d26, 0x6d27, 0x6d28, 0x6d29,
+  0x6d2a, 0x6d2b, 0x6d2c, 0x6d2d, 0x6d2e, 0x6d2f, 0x6d30, 0x6d31,
+  0x6d32, 0x6d33, 0x6d34, 0x6d35, 0x6d36, 0x6d37, 0x6d38, 0x6d39,
+  0x6d3a, 0x6d3b, 0x6d3c, 0x6d3d, 0x6d3e, 0x6d3f, 0x6d40, 0x6d41,
+  0x6d42, 0x6d43, 0x6d44, 0x6d45, 0x6d46, 0x6d47, 0x6d48, 0x6d49,
+  0x6d4a, 0x6d4b, 0x6d4c, 0x6d4d, 0x6d4e, 0x6d4f, 0x6d50, 0x6d51,
+  0x6d52, 0x6d53, 0x6d54, 0x6d55, 0x6d56, 0x6d57, 0x6d58, 0x6d59,
+  0x6d5a, 0x6d5b, 0x6d5c, 0x6d5d, 0x6d5e, 0x6d5f, 0x6d60, 0x6d61,
+  0x6d62, 0x6d63, 0x2237,
+};
+
+static const Summary16 jisx0212_uni2indx_page00[70] = {
+  /* 0x0000 */
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0xc652 }, {    7, 0x8500 },
+  {   10, 0xffff }, {   26, 0xff7e }, {   40, 0xffff }, {   56, 0xff7f },
+  /* 0x0100 */
+  {   71, 0xffff }, {   87, 0xffcf }, {  101, 0xcff7 }, {  114, 0xffff },
+  {  130, 0x3fff }, {  144, 0xffff }, {  160, 0xffff }, {  176, 0x7fff },
+  {  191, 0x0000 }, {  191, 0x0000 }, {  191, 0x0000 }, {  191, 0x0000 },
+  {  191, 0xe000 }, {  194, 0x1fff }, {  207, 0x0000 }, {  207, 0x0020 },
+  /* 0x0200 */
+  {  208, 0x0000 }, {  208, 0x0000 }, {  208, 0x0000 }, {  208, 0x0000 },
+  {  208, 0x0000 }, {  208, 0x0000 }, {  208, 0x0000 }, {  208, 0x0000 },
+  {  208, 0x0000 }, {  208, 0x0000 }, {  208, 0x0000 }, {  208, 0x0000 },
+  {  208, 0x0080 }, {  209, 0x2f00 }, {  214, 0x0000 }, {  214, 0x0000 },
+  /* 0x0300 */
+  {  214, 0x0000 }, {  214, 0x0000 }, {  214, 0x0000 }, {  214, 0x0000 },
+  {  214, 0x0000 }, {  214, 0x0000 }, {  214, 0x0000 }, {  214, 0x0000 },
+  {  214, 0xd770 }, {  223, 0x0001 }, {  224, 0xfc00 }, {  230, 0x0001 },
+  {  231, 0x7c04 }, {  237, 0x0000 }, {  237, 0x0000 }, {  237, 0x0000 },
+  /* 0x0400 */
+  {  237, 0xdffc }, {  250, 0x0000 }, {  250, 0x0000 }, {  250, 0x0000 },
+  {  250, 0x0000 }, {  250, 0xdffc },
+};
+static const Summary16 jisx0212_uni2indx_page21[3] = {
+  /* 0x2100 */
+  {  263, 0x0000 }, {  263, 0x0040 }, {  264, 0x0004 },
+};
+static const Summary16 jisx0212_uni2indx_page4e[1307] = {
+  /* 0x4e00 */
+  {  265, 0x1034 }, {  269, 0x8004 }, {  271, 0xc918 }, {  277, 0x0021 },
+  {  279, 0x0093 }, {  283, 0x1402 }, {  286, 0x0308 }, {  289, 0x8230 },
+  {  293, 0x2000 }, {  294, 0x20c0 }, {  297, 0x8000 }, {  298, 0x0200 },
+  {  299, 0x0008 }, {  300, 0x0c01 }, {  303, 0x8107 }, {  308, 0xe02a },
+  /* 0x4f00 */
+  {  314, 0x190d }, {  320, 0x02e4 }, {  325, 0x4000 }, {  326, 0x4aaa },
+  {  333, 0x1b05 }, {  339, 0x8154 }, {  344, 0x5409 }, {  349, 0x6782 },
+  {  356, 0x5636 }, {  364, 0xc69d }, {  373, 0x0000 }, {  373, 0x7a84 },
+  {  380, 0xbb63 }, {  390, 0x1004 }, {  392, 0x0005 }, {  394, 0xb005 },
+  /* 0x5000 */
+  {  399, 0x5493 }, {  406, 0x7989 }, {  414, 0x4084 }, {  417, 0x082d },
+  {  422, 0x5467 }, {  430, 0x828e }, {  436, 0x24cd }, {  443, 0x0003 },
+  {  445, 0xc45a }, {  452, 0xd85d }, {  461, 0x8407 }, {  466, 0x2601 },
+  {  470, 0x5099 }, {  476, 0xb119 }, {  483, 0x8354 }, {  489, 0x4446 },
+  /* 0x5100 */
+  {  494, 0x79c8 }, {  502, 0x7a81 }, {  509, 0xb188 }, {  515, 0x033a },
+  {  521, 0x8404 }, {  524, 0x81a8 }, {  529, 0x0050 }, {  531, 0x4000 },
+  {  532, 0x4818 }, {  536, 0x2100 }, {  538, 0x200a }, {  541, 0xd500 },
+  {  546, 0x8104 }, {  549, 0x412e }, {  555, 0x4024 }, {  558, 0x009c },
+  /* 0x5200 */
+  {  562, 0x0026 }, {  565, 0x016c }, {  570, 0x0104 }, {  572, 0x1026 },
+  {  576, 0x0220 }, {  578, 0x95a0 }, {  584, 0x4043 }, {  588, 0x0380 },
+  {  591, 0x1425 }, {  596, 0x15e8 }, {  603, 0x80f0 }, {  608, 0x2dc1 },
+  {  615, 0x9151 }, {  621, 0x1852 }, {  626, 0x1722 }, {  632, 0x00d3 },
+  /* 0x5300 */
+  {  637, 0x1c09 }, {  642, 0xd90a }, {  649, 0x3ba0 }, {  656, 0x7025 },
+  {  662, 0x1804 }, {  665, 0x0a00 }, {  667, 0x302a }, {  672, 0x4204 },
+  {  675, 0x4188 }, {  679, 0x2218 }, {  683, 0x8c12 }, {  688, 0x25b4 },
+  {  695, 0x8021 }, {  698, 0x642c }, {  704, 0x00c1 }, {  707, 0x0020 },
+  /* 0x5400 */
+  {  708, 0x0004 }, {  709, 0x0408 }, {  711, 0x8582 }, {  716, 0x0032 },
+  {  719, 0xa098 }, {  724, 0x4000 }, {  725, 0x6ad4 }, {  733, 0x8010 },
+  {  735, 0x232a }, {  741, 0x9062 }, {  746, 0x66c2 }, {  753, 0x8e82 },
+  {  759, 0x6440 }, {  763, 0x0000 }, {  763, 0x9401 }, {  767, 0xd040 },
+  /* 0x5500 */
+  {  771, 0x7323 }, {  779, 0x0020 }, {  780, 0x0c00 }, {  782, 0x3864 },
+  {  788, 0x2682 }, {  793, 0x4d03 }, {  799, 0x0053 }, {  803, 0x8000 },
+  {  804, 0xc146 }, {  810, 0x009e }, {  815, 0x2018 }, {  818, 0x8004 },
+  {  820, 0x5a4a }, {  827, 0x498e }, {  834, 0x0204 }, {  836, 0x8040 },
+  /* 0x5600 */
+  {  838, 0xe520 }, {  844, 0x0207 }, {  848, 0x1000 }, {  849, 0xbaa9 },
+  {  858, 0xaa5b }, {  867, 0x4010 }, {  869, 0xa24f }, {  877, 0x0026 },
+  {  880, 0x1930 }, {  885, 0xe620 }, {  891, 0x3bc0 }, {  898, 0x408a },
+  {  902, 0xbe20 }, {  909, 0xb201 }, {  914, 0x29f2 }, {  922, 0x00c2 },
+  /* 0x5700 */
+  {  925, 0x1486 }, {  930, 0x2c22 }, {  935, 0xd63d }, {  945, 0xe018 },
+  {  950, 0x3060 }, {  954, 0x0004 }, {  955, 0xe9a4 }, {  963, 0x5ebb },
+  {  974, 0x100a }, {  977, 0xf6b0 }, {  986, 0x1382 }, {  991, 0x2100 },
+  {  993, 0x9180 }, {  997, 0x6020 }, { 1000, 0x22d2 }, { 1006, 0xe161 },
+  /* 0x5800 */
+  { 1013, 0x3318 }, { 1019, 0xc800 }, { 1022, 0x20c1 }, { 1026, 0x8204 },
+  { 1029, 0xb200 }, { 1033, 0x8021 }, { 1036, 0x0192 }, { 1040, 0x9100 },
+  { 1043, 0xb783 }, { 1052, 0x2051 }, { 1056, 0x0247 }, { 1061, 0x1006 },
+  { 1064, 0x6114 }, { 1069, 0x2455 }, { 1075, 0x0206 }, { 1078, 0x0008 },
+  /* 0x5900 */
+  { 1079, 0x1860 }, { 1083, 0x201c }, { 1087, 0x811a }, { 1092, 0x8069 },
+  { 1097, 0x0048 }, { 1099, 0xea0c }, { 1106, 0xa80a }, { 1111, 0x1a64 },
+  { 1117, 0x5800 }, { 1120, 0x80a4 }, { 1124, 0xe090 }, { 1129, 0x1489 },
+  { 1134, 0x251a }, { 1140, 0xe004 }, { 1144, 0xc098 }, { 1149, 0x0096 },
+  /* 0x5a00 */
+  { 1153, 0x7011 }, { 1158, 0x400c }, { 1161, 0x2598 }, { 1167, 0x0001 },
+  { 1168, 0x11b0 }, { 1173, 0x4021 }, { 1176, 0x20a8 }, { 1180, 0x4c80 },
+  { 1184, 0x0800 }, { 1185, 0xd249 }, { 1192, 0x1085 }, { 1196, 0x8d2e },
+  { 1204, 0x8150 }, { 1208, 0x1400 }, { 1210, 0x4421 }, { 1214, 0x2060 },
+  /* 0x5b00 */
+  { 1217, 0x0103 }, { 1220, 0x2a80 }, { 1224, 0x2022 }, { 1227, 0x0110 },
+  { 1229, 0x1802 }, { 1232, 0x4044 }, { 1235, 0xc100 }, { 1238, 0xf000 },
+  { 1242, 0x4452 }, { 1247, 0x005b }, { 1252, 0xb300 }, { 1257, 0x1486 },
+  { 1262, 0xa003 }, { 1266, 0x07c0 }, { 1271, 0x8001 }, { 1273, 0x2012 },
+  /* 0x5c00 */
+  { 1276, 0x1000 }, { 1277, 0xc080 }, { 1280, 0x5a48 }, { 1286, 0x0065 },
+  { 1290, 0x0000 }, { 1290, 0x1600 }, { 1293, 0x238c }, { 1299, 0x3c31 },
+  { 1306, 0x8580 }, { 1310, 0xa004 }, { 1313, 0x044d }, { 1318, 0x0434 },
+  { 1322, 0x0a00 }, { 1324, 0x2084 }, { 1327, 0x4000 }, { 1328, 0x0016 },
+  /* 0x5d00 */
+  { 1331, 0x2042 }, { 1334, 0x0004 }, { 1335, 0x08d8 }, { 1340, 0xa212 },
+  { 1345, 0x054c }, { 1350, 0x8222 }, { 1354, 0x2417 }, { 1360, 0xc601 },
+  { 1365, 0x050a }, { 1369, 0x8a3c }, { 1376, 0x0881 }, { 1379, 0x0315 },
+  { 1384, 0x4888 }, { 1388, 0x0301 }, { 1391, 0x0211 }, { 1394, 0x0300 },
+  /* 0x5e00 */
+  { 1396, 0x2081 }, { 1399, 0x8134 }, { 1404, 0x4101 }, { 1407, 0x4024 },
+  { 1410, 0x0a00 }, { 1412, 0x5943 }, { 1419, 0x7d00 }, { 1425, 0x0001 },
+  { 1426, 0x4801 }, { 1429, 0x0000 }, { 1429, 0x1534 }, { 1435, 0xe00a },
+  { 1440, 0x5840 }, { 1444, 0x5036 }, { 1450, 0x0820 }, { 1452, 0x0000 },
+  /* 0x5f00 */
+  { 1452, 0x41c4 }, { 1457, 0x3200 }, { 1460, 0x591e }, { 1468, 0xa851 },
+  { 1474, 0x20b1 }, { 1479, 0x0911 }, { 1483, 0x8099 }, { 1488, 0x6534 },
+  { 1495, 0xa200 }, { 1498, 0x3040 }, { 1501, 0x9894 }, { 1507, 0x0103 },
+  { 1510, 0x0b90 }, { 1515, 0x401f }, { 1521, 0xf706 }, { 1530, 0x144c },
+  /* 0x6000 */
+  { 1535, 0x2480 }, { 1538, 0x8598 }, { 1544, 0x2010 }, { 1546, 0x0028 },
+  { 1548, 0x1381 }, { 1553, 0x20d2 }, { 1558, 0x0082 }, { 1560, 0xc002 },
+  { 1563, 0x4544 }, { 1568, 0x612a }, { 1574, 0x0134 }, { 1578, 0x4883 },
+  { 1583, 0xcf14 }, { 1591, 0x6a30 }, { 1597, 0x0024 }, { 1599, 0x3124 },
+  /* 0x6100 */
+  { 1604, 0x1484 }, { 1608, 0x52df }, { 1618, 0x0c04 }, { 1621, 0x02e3 },
+  { 1627, 0x0262 }, { 1631, 0x4000 }, { 1632, 0x1001 }, { 1634, 0x9904 },
+  { 1639, 0x281b }, { 1645, 0xb18c }, { 1652, 0x2521 }, { 1657, 0x1300 },
+  { 1660, 0xc007 }, { 1665, 0xf020 }, { 1670, 0xb2a6 }, { 1678, 0x0000 },
+  /* 0x6200 */
+  { 1678, 0x009a }, { 1682, 0x1028 }, { 1685, 0x0a8d }, { 1691, 0x2200 },
+  { 1693, 0x105c }, { 1698, 0x1457 }, { 1705, 0xa010 }, { 1708, 0x2408 },
+  { 1711, 0xe000 }, { 1714, 0x0001 }, { 1715, 0x0140 }, { 1717, 0xc4c8 },
+  { 1723, 0x4010 }, { 1725, 0x0460 }, { 1728, 0x0400 }, { 1729, 0x3014 },
+  /* 0x6300 */
+  { 1733, 0x2c18 }, { 1738, 0x0149 }, { 1742, 0x2600 }, { 1745, 0x1260 },
+  { 1749, 0x4c5e }, { 1757, 0x091c }, { 1762, 0x3060 }, { 1766, 0xb132 },
+  { 1773, 0x0494 }, { 1777, 0x4631 }, { 1783, 0xe050 }, { 1788, 0x2000 },
+  { 1789, 0x4122 }, { 1793, 0x103a }, { 1798, 0x1421 }, { 1802, 0x032c },
+  /* 0x6400 */
+  { 1807, 0x0600 }, { 1809, 0x4115 }, { 1814, 0x8635 }, { 1821, 0xa021 },
+  { 1825, 0x8800 }, { 1827, 0xbc1e }, { 1836, 0x200b }, { 1840, 0x2818 },
+  { 1844, 0x80a0 }, { 1847, 0xab03 }, { 1854, 0x114a }, { 1859, 0xe008 },
+  { 1863, 0x5e10 }, { 1869, 0x00a3 }, { 1873, 0x2630 }, { 1878, 0x88a1 },
+  /* 0x6500 */
+  { 1883, 0x8712 }, { 1889, 0xca58 }, { 1896, 0x4244 }, { 1900, 0x3402 },
+  { 1904, 0x0288 }, { 1907, 0x8015 }, { 1911, 0x0881 }, { 1914, 0x2400 },
+  { 1916, 0x0422 }, { 1919, 0x2124 }, { 1923, 0x4049 }, { 1927, 0x801c },
+  { 1931, 0x4304 }, { 1935, 0x8151 }, { 1940, 0x0000 }, { 1940, 0xc235 },
+  /* 0x6600 */
+  { 1947, 0x2311 }, { 1952, 0x6066 }, { 1958, 0x5e5e }, { 1968, 0x028b },
+  { 1973, 0x5461 }, { 1979, 0x1b82 }, { 1985, 0x1c03 }, { 1990, 0xdba8 },
+  { 1999, 0x3801 }, { 2003, 0x9e05 }, { 2010, 0x2011 }, { 2013, 0x8826 },
+  { 2018, 0xd10d }, { 2025, 0x8810 }, { 2028, 0x5900 }, { 2032, 0x0c00 },
+  /* 0x6700 */
+  { 2034, 0x40a0 }, { 2037, 0x1208 }, { 2040, 0x0005 }, { 2042, 0x4008 },
+  { 2044, 0x11a0 }, { 2048, 0x2030 }, { 2051, 0x5040 }, { 2054, 0x0850 },
+  { 2057, 0xc012 }, { 2061, 0x0b4a }, { 2067, 0x0000 }, { 2067, 0x3827 },
+  { 2074, 0x032d }, { 2080, 0x1284 }, { 2084, 0x0042 }, { 2086, 0x02c5 },
+  /* 0x6800 */
+  { 2091, 0x0000 }, { 2091, 0xa210 }, { 2095, 0xb180 }, { 2100, 0x880b },
+  { 2105, 0x1430 }, { 2109, 0x09a4 }, { 2114, 0xc800 }, { 2117, 0x1e27 },
+  { 2125, 0x0154 }, { 2129, 0x1540 }, { 2133, 0x462a }, { 2139, 0x0804 },
+  { 2141, 0x9120 }, { 2145, 0x324b }, { 2152, 0x3d20 }, { 2158, 0x3863 },
+  /* 0x6900 */
+  { 2165, 0x0640 }, { 2168, 0x00cb }, { 2173, 0x0000 }, { 2173, 0x092a },
+  { 2178, 0x4224 }, { 2182, 0x0880 }, { 2184, 0x1378 }, { 2191, 0x8c07 },
+  { 2197, 0x2001 }, { 2199, 0x0144 }, { 2202, 0xa962 }, { 2209, 0x1580 },
+  { 2213, 0x0120 }, { 2215, 0x00c2 }, { 2218, 0xc024 }, { 2222, 0x402a },
+  /* 0x6a00 */
+  { 2226, 0x800b }, { 2230, 0x2422 }, { 2234, 0x0111 }, { 2237, 0xc895 },
+  { 2244, 0x4660 }, { 2249, 0x0867 }, { 2255, 0x0490 }, { 2258, 0x400a },
+  { 2261, 0x0aca }, { 2267, 0xe802 }, { 2272, 0x8820 }, { 2275, 0xe013 },
+  { 2281, 0x1340 }, { 2285, 0x3071 }, { 2291, 0x1090 }, { 2294, 0x3007 },
+  /* 0x6b00 */
+  { 2299, 0x82cc }, { 2305, 0x4883 }, { 2310, 0x9910 }, { 2315, 0x8860 },
+  { 2319, 0x2440 }, { 2322, 0x2144 }, { 2326, 0x4881 }, { 2330, 0x6021 },
+  { 2334, 0x0024 }, { 2336, 0x8880 }, { 2339, 0x730d }, { 2347, 0x6301 },
+  { 2352, 0x1218 }, { 2356, 0x0440 }, { 2358, 0x40ca }, { 2363, 0x8282 },
+  /* 0x6c00 */
+  { 2367, 0x6234 }, { 2373, 0x8205 }, { 2377, 0x51c0 }, { 2382, 0x8c68 },
+  { 2388, 0xac00 }, { 2392, 0x1a14 }, { 2397, 0xa880 }, { 2401, 0x0b50 },
+  { 2406, 0x02e0 }, { 2410, 0x91b0 }, { 2416, 0x0000 }, { 2416, 0x0015 },
+  { 2419, 0xa044 }, { 2423, 0x1457 }, { 2430, 0x5a81 }, { 2436, 0x0014 },
+  /* 0x6d00 */
+  { 2438, 0xc490 }, { 2443, 0x040a }, { 2446, 0xc1c0 }, { 2451, 0x9202 },
+  { 2455, 0x0000 }, { 2455, 0xc080 }, { 2458, 0x80a2 }, { 2462, 0x1001 },
+  { 2464, 0x0084 }, { 2466, 0x01d6 }, { 2472, 0x1400 }, { 2474, 0xa290 },
+  { 2479, 0xc510 }, { 2484, 0xa840 }, { 2488, 0x8225 }, { 2493, 0x1051 },
+  /* 0x6e00 */
+  { 2497, 0x0011 }, { 2499, 0x4000 }, { 2500, 0x0084 }, { 2502, 0x1a44 },
+  { 2507, 0x8b30 }, { 2513, 0x709e }, { 2521, 0x010c }, { 2524, 0x2808 },
+  { 2527, 0x2000 }, { 2528, 0x0208 }, { 2530, 0x6081 }, { 2534, 0x880a },
+  { 2538, 0xe58b }, { 2547, 0x0000 }, { 2547, 0x6800 }, { 2550, 0x2a00 },
+  /* 0x6f00 */
+  { 2553, 0x3510 }, { 2558, 0x0d40 }, { 2562, 0xa640 }, { 2567, 0x1849 },
+  { 2572, 0x8000 }, { 2573, 0x668e }, { 2581, 0x1106 }, { 2585, 0x6000 },
+  { 2587, 0x3988 }, { 2593, 0x845d }, { 2600, 0xc1e1 }, { 2607, 0x1061 },
+  { 2611, 0x05a0 }, { 2615, 0x4400 }, { 2617, 0x0300 }, { 2619, 0x3221 },
+  /* 0x7000 */
+  { 2624, 0x20e1 }, { 2629, 0x0080 }, { 2630, 0x8009 }, { 2633, 0x1290 },
+  { 2637, 0x4f18 }, { 2644, 0x6030 }, { 2648, 0x5030 }, { 2652, 0x4060 },
+  { 2655, 0x0062 }, { 2658, 0x09f0 }, { 2664, 0x0810 }, { 2666, 0x0093 },
+  { 2670, 0x0400 }, { 2671, 0x117a }, { 2678, 0x0010 }, { 2679, 0x0400 },
+  /* 0x7100 */
+  { 2680, 0x98f8 }, { 2688, 0x4000 }, { 2689, 0xa801 }, { 2693, 0x0103 },
+  { 2696, 0x0ce2 }, { 2702, 0x5485 }, { 2708, 0x0101 }, { 2710, 0x0200 },
+  { 2711, 0x10a1 }, { 2715, 0x0c04 }, { 2718, 0x8005 }, { 2721, 0x840d },
+  { 2726, 0x1813 }, { 2731, 0x1648 }, { 2736, 0x0000 }, { 2736, 0x4100 },
+  /* 0x7200 */
+  { 2738, 0x0381 }, { 2742, 0xa488 }, { 2747, 0x8810 }, { 2750, 0x0310 },
+  { 2753, 0xc02e }, { 2759, 0x5469 }, { 2766, 0xc909 }, { 2772, 0x9982 },
+  { 2778, 0x6210 }, { 2782, 0x0808 }, { 2784, 0x6100 }, { 2787, 0x4012 },
+  { 2790, 0x1282 }, { 2794, 0x8160 }, { 2798, 0x0020 }, { 2799, 0x4c18 },
+  /* 0x7300 */
+  { 2804, 0x28b4 }, { 2810, 0x430c }, { 2815, 0x1194 }, { 2820, 0x2c26 },
+  { 2826, 0x2008 }, { 2828, 0xe145 }, { 2835, 0xdac1 }, { 2843, 0x1282 },
+  { 2847, 0x406b }, { 2853, 0xd1a9 }, { 2861, 0x2c65 }, { 2868, 0xb2a0 },
+  { 2874, 0x9a60 }, { 2880, 0x224c }, { 2885, 0x02ca }, { 2890, 0xaeb0 },
+  /* 0x7400 */
+  { 2898, 0x0493 }, { 2903, 0x0c02 }, { 2906, 0xff50 }, { 2916, 0x0203 },
+  { 2919, 0x28d9 }, { 2926, 0x2086 }, { 2930, 0x69c4 }, { 2937, 0x0006 },
+  { 2939, 0x82e3 }, { 2946, 0x9707 }, { 2954, 0xcf4b }, { 2964, 0x8a26 },
+  { 2970, 0x1300 }, { 2973, 0xcd09 }, { 2980, 0x8d10 }, { 2985, 0x9c10 },
+  /* 0x7500 */
+  { 2990, 0x0040 }, { 2991, 0x00c4 }, { 2994, 0x8693 }, { 3001, 0xe240 },
+  { 3006, 0x4189 }, { 3011, 0xc085 }, { 3016, 0x8002 }, { 3018, 0x7e02 },
+  { 3025, 0x0022 }, { 3027, 0x122d }, { 3033, 0x0014 }, { 3035, 0x8410 },
+  { 3038, 0xd053 }, { 3045, 0x9080 }, { 3048, 0xd093 }, { 3055, 0x0202 },
+  /* 0x7600 */
+  { 3057, 0x959d }, { 3066, 0x7a6c }, { 3075, 0x2268 }, { 3080, 0x172c },
+  { 3087, 0x0e3b }, { 3095, 0x8220 }, { 3098, 0xe030 }, { 3103, 0x0012 },
+  { 3105, 0x3022 }, { 3109, 0xb820 }, { 3114, 0x25fd }, { 3124, 0x2000 },
+  { 3125, 0x5a22 }, { 3131, 0x0210 }, { 3133, 0x1141 }, { 3137, 0x1243 },
+  /* 0x7700 */
+  { 3142, 0x4441 }, { 3146, 0x16b4 }, { 3153, 0xe104 }, { 3158, 0x6270 },
+  { 3164, 0xe464 }, { 3171, 0xd0c4 }, { 3177, 0x1495 }, { 3183, 0x241d },
+  { 3189, 0x3011 }, { 3193, 0x8470 }, { 3198, 0xc484 }, { 3203, 0x4022 },
+  { 3206, 0x0208 }, { 3208, 0xc226 }, { 3214, 0x1451 }, { 3219, 0x0913 },
+  /* 0x7800 */
+  { 3224, 0x6260 }, { 3229, 0x2002 }, { 3231, 0x600e }, { 3236, 0x00a1 },
+  { 3239, 0x5198 }, { 3245, 0x5004 }, { 3248, 0x451b }, { 3255, 0x4400 },
+  { 3257, 0x8400 }, { 3259, 0xe110 }, { 3264, 0x3112 }, { 3269, 0xa80f },
+  { 3276, 0x5380 }, { 3281, 0x886c }, { 3287, 0x0453 }, { 3292, 0x8ccc },
+  /* 0x7900 */
+  { 3299, 0x1041 }, { 3302, 0xd401 }, { 3307, 0x22a1 }, { 3312, 0xa832 },
+  { 3318, 0x8c70 }, { 3324, 0x1912 }, { 3329, 0x0a80 }, { 3332, 0x5a04 },
+  { 3337, 0x1800 }, { 3339, 0x197a }, { 3347, 0x8b02 }, { 3352, 0x0912 },
+  { 3356, 0x8594 }, { 3362, 0x6450 }, { 3367, 0x2c25 }, { 3373, 0x1102 },
+  /* 0x7a00 */
+  { 3376, 0x168c }, { 3382, 0x4822 }, { 3386, 0xa882 }, { 3391, 0x0731 },
+  { 3397, 0x11b0 }, { 3402, 0xb260 }, { 3408, 0x24a1 }, { 3413, 0x4120 },
+  { 3416, 0x0c65 }, { 3422, 0x4013 }, { 3426, 0x1009 }, { 3429, 0x1a28 },
+  { 3434, 0x5240 }, { 3438, 0x0802 }, { 3440, 0x1b00 }, { 3444, 0x6812 },
+  /* 0x7b00 */
+  { 3449, 0x0080 }, { 3450, 0x8010 }, { 3452, 0xee88 }, { 3460, 0xa013 },
+  { 3465, 0x4083 }, { 3469, 0x0020 }, { 3470, 0xa651 }, { 3477, 0x008c },
+  { 3480, 0x4210 }, { 3483, 0x4843 }, { 3488, 0x9021 }, { 3492, 0x3c65 },
+  { 3500, 0x0524 }, { 3504, 0x0ed0 }, { 3510, 0x0500 }, { 3512, 0x5734 },
+  /* 0x7c00 */
+  { 3520, 0xda5e }, { 3530, 0x0a00 }, { 3532, 0x1161 }, { 3537, 0x065a },
+  { 3543, 0x0440 }, { 3545, 0x7e2e }, { 3555, 0x628a }, { 3561, 0x3205 },
+  { 3566, 0x80c0 }, { 3569, 0x4010 }, { 3571, 0x0041 }, { 3573, 0x9cc1 },
+  { 3580, 0xa390 }, { 3586, 0x26b8 }, { 3593, 0x0a40 }, { 3596, 0x0020 },
+  /* 0x7d00 */
+  { 3597, 0x8388 }, { 3602, 0x604e }, { 3608, 0x2448 }, { 3612, 0x7002 },
+  { 3616, 0x2183 }, { 3621, 0x368a }, { 3628, 0x04a0 }, { 3631, 0x8d01 },
+  { 3636, 0x396e }, { 3645, 0x60c2 }, { 3650, 0x04c0 }, { 3653, 0x02c8 },
+  { 3657, 0x707c }, { 3665, 0x0280 }, { 3667, 0x2c64 }, { 3673, 0x0662 },
+  /* 0x7e00 */
+  { 3678, 0x0101 }, { 3680, 0x30a3 }, { 3686, 0xb181 }, { 3692, 0x8048 },
+  { 3695, 0x40b0 }, { 3699, 0x8105 }, { 3703, 0xc826 }, { 3709, 0x4108 },
+  { 3712, 0x24c2 }, { 3717, 0x6522 }, { 3723, 0x0000 }, { 3723, 0x0000 },
+  { 3723, 0x0000 }, { 3723, 0x0000 }, { 3723, 0x0000 }, { 3723, 0x0000 },
+  /* 0x7f00 */
+  { 3723, 0x0000 }, { 3723, 0x0000 }, { 3723, 0x0000 }, { 3723, 0xf800 },
+  { 3728, 0x8098 }, { 3732, 0x380c }, { 3737, 0x207a }, { 3743, 0xe002 },
+  { 3747, 0xa801 }, { 3751, 0x10c3 }, { 3756, 0x2446 }, { 3761, 0x9010 },
+  { 3764, 0xc109 }, { 3769, 0x8800 }, { 3771, 0xd128 }, { 3777, 0xe404 },
+  /* 0x8000 */
+  { 3782, 0xe580 }, { 3788, 0xe05a }, { 3795, 0x5051 }, { 3800, 0x56b1 },
+  { 3808, 0x0011 }, { 3810, 0x0000 }, { 3810, 0x2051 }, { 3814, 0x0022 },
+  { 3816, 0x4102 }, { 3819, 0x5000 }, { 3821, 0x08c0 }, { 3824, 0x0300 },
+  { 3826, 0xa100 }, { 3829, 0x01b4 }, { 3834, 0x6001 }, { 3837, 0x464d },
+  /* 0x8100 */
+  { 3844, 0x0808 }, { 3846, 0x51c0 }, { 3851, 0x1091 }, { 3855, 0x1421 },
+  { 3859, 0x14a0 }, { 3863, 0x0084 }, { 3865, 0xa383 }, { 3872, 0x0080 },
+  { 3873, 0x4872 }, { 3879, 0x4941 }, { 3884, 0x4004 }, { 3886, 0x0814 },
+  { 3889, 0xcc28 }, { 3895, 0x68a0 }, { 3900, 0x1812 }, { 3904, 0xa367 },
+  /* 0x8200 */
+  { 3913, 0x8009 }, { 3916, 0x2618 }, { 3921, 0x0106 }, { 3924, 0x0414 },
+  { 3927, 0xc878 }, { 3934, 0x1042 }, { 3937, 0x2089 }, { 3941, 0xa810 },
+  { 3945, 0x469b }, { 3953, 0x0d52 }, { 3959, 0x479b }, { 3968, 0xd495 },
+  { 3976, 0x0040 }, { 3977, 0x0421 }, { 3980, 0xa515 }, { 3987, 0x60c0 },
+  /* 0x8300 */
+  { 3991, 0x0d83 }, { 3997, 0xe800 }, { 4001, 0x7006 }, { 4006, 0x3489 },
+  { 4012, 0x609c }, { 4018, 0x00fa }, { 4024, 0x0000 }, { 4024, 0xa101 },
+  { 4028, 0x2055 }, { 4033, 0x3b34 }, { 4041, 0x32c0 }, { 4046, 0xc000 },
+  { 4048, 0x8281 }, { 4052, 0x2013 }, { 4056, 0x0500 }, { 4058, 0x1340 },
+  /* 0x8400 */
+  { 4062, 0x8442 }, { 4066, 0x0222 }, { 4069, 0x8000 }, { 4070, 0x0200 },
+  { 4071, 0xa5a0 }, { 4077, 0x1746 }, { 4084, 0x04b1 }, { 4089, 0x3159 },
+  { 4096, 0x0022 }, { 4098, 0x402c }, { 4102, 0x8740 }, { 4107, 0x6412 },
+  { 4112, 0x9185 }, { 4118, 0x1008 }, { 4120, 0x8480 }, { 4123, 0x2c87 },
+  /* 0x8500 */
+  { 4130, 0x508c }, { 4135, 0x5001 }, { 4138, 0x8cbc }, { 4146, 0x805c },
+  { 4151, 0x8040 }, { 4153, 0xf24f }, { 4163, 0x8817 }, { 4169, 0xae00 },
+  { 4174, 0x9a62 }, { 4181, 0xa108 }, { 4185, 0x20a5 }, { 4190, 0xf1d0 },
+  { 4198, 0x4c84 }, { 4203, 0x8500 }, { 4206, 0x2141 }, { 4210, 0x9048 },
+  /* 0x8600 */
+  { 4214, 0x6031 }, { 4219, 0x4b07 }, { 4226, 0x0282 }, { 4229, 0x3540 },
+  { 4234, 0x0047 }, { 4238, 0x23cc }, { 4245, 0x921f }, { 4253, 0x04e0 },
+  { 4257, 0x2100 }, { 4259, 0x1542 }, { 4264, 0x21c2 }, { 4269, 0x83ba },
+  { 4277, 0x002b }, { 4281, 0x14a6 }, { 4287, 0x00a9 }, { 4291, 0x3400 },
+  /* 0x8700 */
+  { 4294, 0xc8b0 }, { 4300, 0xc219 }, { 4306, 0xc10a }, { 4311, 0x7606 },
+  { 4318, 0x2029 }, { 4322, 0x2100 }, { 4324, 0x8032 }, { 4328, 0x0806 },
+  { 4331, 0x1bf8 }, { 4340, 0x43a9 }, { 4347, 0x7089 }, { 4353, 0xc022 },
+  { 4357, 0x4702 }, { 4362, 0x9660 }, { 4368, 0x2c1c }, { 4374, 0x850a },
+  /* 0x8800 */
+  { 4379, 0x0e4a }, { 4385, 0xdf1d }, { 4396, 0x6100 }, { 4399, 0x1425 },
+  { 4404, 0x4f2a }, { 4412, 0x9562 }, { 4419, 0x0211 }, { 4422, 0x0a02 },
+  { 4425, 0x0001 }, { 4426, 0x9d00 }, { 4431, 0x0501 }, { 4434, 0x6400 },
+  { 4437, 0x7c01 }, { 4443, 0x480e }, { 4448, 0x8080 }, { 4450, 0x00a3 },
+  /* 0x8900 */
+  { 4454, 0xe042 }, { 4459, 0x1760 }, { 4465, 0x01c1 }, { 4469, 0x4627 },
+  { 4476, 0x8265 }, { 4482, 0x1c84 }, { 4487, 0x480e }, { 4492, 0x3c29 },
+  { 4499, 0x2200 }, { 4501, 0x9831 }, { 4507, 0x0021 }, { 4509, 0x10f1 },
+  { 4515, 0x0000 }, { 4515, 0x01f0 }, { 4520, 0x2a20 }, { 4524, 0xa24a },
+  /* 0x8a00 */
+  { 4530, 0x80b0 }, { 4534, 0x4036 }, { 4539, 0x9855 }, { 4546, 0x60a0 },
+  { 4550, 0x62a9 }, { 4557, 0x31c8 }, { 4563, 0x00a2 }, { 4566, 0xcee0 },
+  { 4574, 0x8849 }, { 4579, 0x82c5 }, { 4585, 0xc280 }, { 4589, 0x48c8 },
+  { 4594, 0x0748 }, { 4599, 0xa0ba }, { 4606, 0x1000 }, { 4607, 0x9071 },
+  /* 0x8b00 */
+  { 4613, 0x0c60 }, { 4617, 0xd002 }, { 4621, 0x2000 }, { 4622, 0x1081 },
+  { 4625, 0x217c }, { 4632, 0x421c }, { 4637, 0x2008 }, { 4639, 0x5340 },
+  { 4644, 0xa832 }, { 4650, 0xd030 }, { 4655, 0x0000 }, { 4655, 0x0000 },
+  { 4655, 0x0000 }, { 4655, 0x0000 }, { 4655, 0x0000 }, { 4655, 0x0000 },
+  /* 0x8c00 */
+  { 4655, 0x0000 }, { 4655, 0x0000 }, { 4655, 0x0000 }, { 4655, 0x6300 },
+  { 4659, 0x8aa0 }, { 4664, 0x2b9a }, { 4672, 0x2358 }, { 4678, 0x4868 },
+  { 4683, 0x08c0 }, { 4686, 0x1a0d }, { 4692, 0x0010 }, { 4693, 0x0600 },
+  { 4695, 0x8a60 }, { 4700, 0x2260 }, { 4704, 0x9102 }, { 4708, 0xc1a5 },
+  /* 0x8d00 */
+  { 4715, 0x020a }, { 4718, 0x0884 }, { 4721, 0x0000 }, { 4721, 0x0000 },
+  { 4721, 0x0000 }, { 4721, 0x0000 }, { 4721, 0x5220 }, { 4725, 0x8000 },
+  { 4726, 0x2114 }, { 4730, 0xc023 }, { 4735, 0x9841 }, { 4740, 0x1aa4 },
+  { 4746, 0x45e1 }, { 4753, 0x02b2 }, { 4758, 0x10b0 }, { 4762, 0x2017 },
+  /* 0x8e00 */
+  { 4767, 0x0872 }, { 4772, 0x0052 }, { 4775, 0x00cf }, { 4781, 0x23ca },
+  { 4788, 0xe803 }, { 4794, 0x7810 }, { 4799, 0xb206 }, { 4805, 0x0e03 },
+  { 4810, 0x020c }, { 4813, 0x6c25 }, { 4820, 0x6284 }, { 4825, 0x0c28 },
+  { 4829, 0x809b }, { 4835, 0x1012 }, { 4838, 0x6100 }, { 4841, 0x0683 },
+  /* 0x8f00 */
+  { 4846, 0x8185 }, { 4851, 0x41c1 }, { 4856, 0x71ab }, { 4865, 0x04f0 },
+  { 4870, 0x808b }, { 4875, 0x613e }, { 4883, 0x0020 }, { 4884, 0x0000 },
+  { 4884, 0x0000 }, { 4884, 0x2000 }, { 4885, 0x0073 }, { 4890, 0x4160 },
+  { 4894, 0x2c43 }, { 4900, 0x002d }, { 4904, 0x4119 }, { 4909, 0x4862 },
+  /* 0x9000 */
+  { 4914, 0x1114 }, { 4918, 0x0900 }, { 4920, 0xb700 }, { 4926, 0x8098 },
+  { 4930, 0x1018 }, { 4933, 0x2800 }, { 4935, 0x10c4 }, { 4939, 0x0211 },
+  { 4942, 0x5920 }, { 4947, 0x0ba1 }, { 4953, 0x0027 }, { 4957, 0x605d },
+  { 4964, 0x11b8 }, { 4970, 0xb3a4 }, { 4978, 0x8820 }, { 4981, 0xc051 },
+  /* 0x9100 */
+  { 4986, 0x2171 }, { 4992, 0x55d1 }, { 5000, 0xc2ad }, { 5008, 0x36d2 },
+  { 5016, 0x8188 }, { 5020, 0x0e88 }, { 5025, 0x2092 }, { 5029, 0x0e10 },
+  { 5033, 0x446a }, { 5039, 0x413a }, { 5045, 0x7142 }, { 5051, 0xb84f },
+  { 5060, 0x002c }, { 5063, 0x4698 }, { 5069, 0xf630 }, { 5077, 0x2a83 },
+  /* 0x9200 */
+  { 5083, 0x16f3 }, { 5092, 0x314d }, { 5099, 0xc178 }, { 5106, 0x5769 },
+  { 5115, 0xe4cd }, { 5124, 0x3302 }, { 5129, 0xc3a3 }, { 5137, 0xbbe1 },
+  { 5147, 0x6700 }, { 5152, 0x8284 }, { 5156, 0x89b1 }, { 5163, 0xbd44 },
+  { 5171, 0x79ef }, { 5183, 0xb3a9 }, { 5192, 0x51ab }, { 5200, 0x8a01 },
+  /* 0x9300 */
+  { 5204, 0x2105 }, { 5208, 0xf032 }, { 5215, 0x06b2 }, { 5221, 0x00d8 },
+  { 5225, 0x0380 }, { 5228, 0x45a7 }, { 5236, 0xa6b0 }, { 5243, 0xa45b },
+  { 5251, 0xad07 }, { 5259, 0x4924 }, { 5264, 0x0b5a }, { 5271, 0x0470 },
+  { 5275, 0x3ef2 }, { 5285, 0xd208 }, { 5290, 0x00c4 }, { 5293, 0x2f80 },
+  /* 0x9400 */
+  { 5299, 0xe316 }, { 5307, 0x80e0 }, { 5311, 0xc000 }, { 5313, 0xa81e },
+  { 5320, 0x1528 }, { 5325, 0x9220 }, { 5329, 0xe90a }, { 5336, 0x0006 },
+  { 5338, 0x0018 }, { 5340, 0x0000 }, { 5340, 0x0000 }, { 5340, 0x0000 },
+  { 5340, 0x0000 }, { 5340, 0x0000 }, { 5340, 0x0000 }, { 5340, 0x0000 },
+  /* 0x9500 */
+  { 5340, 0x0000 }, { 5340, 0x0000 }, { 5340, 0x0000 }, { 5340, 0x0000 },
+  { 5340, 0x0000 }, { 5340, 0x0000 }, { 5340, 0x0000 }, { 5340, 0x4300 },
+  { 5343, 0x7110 }, { 5348, 0xe000 }, { 5351, 0x1a42 }, { 5356, 0xa450 },
+  { 5361, 0x0b40 }, { 5365, 0xe60f }, { 5374, 0x0051 }, { 5377, 0x0000 },
+  /* 0x9600 */
+  { 5377, 0x0000 }, { 5377, 0x6000 }, { 5379, 0x1074 }, { 5384, 0x378a },
+  { 5392, 0x0002 }, { 5393, 0x01d4 }, { 5398, 0x4002 }, { 5400, 0xd810 },
+  { 5405, 0x021e }, { 5410, 0xa442 }, { 5415, 0xc270 }, { 5421, 0x0408 },
+  { 5423, 0x0400 }, { 5424, 0xe504 }, { 5430, 0x8200 }, { 5432, 0x0402 },
+  /* 0x9700 */
+  { 5434, 0x022c }, { 5438, 0x2c00 }, { 5441, 0x010e }, { 5445, 0x000a },
+  { 5447, 0xc40a }, { 5452, 0x0da0 }, { 5457, 0x4488 }, { 5461, 0xa9c8 },
+  { 5468, 0x0201 }, { 5470, 0xc6e0 }, { 5477, 0x5004 }, { 5480, 0xd766 },
+  { 5490, 0x76b2 }, { 5499, 0x6b93 }, { 5508, 0x8013 }, { 5512, 0x0592 },
+  /* 0x9800 */
+  { 5517, 0x6480 }, { 5521, 0x5250 }, { 5526, 0xc869 }, { 5533, 0x402d },
+  { 5538, 0x0490 }, { 5541, 0x06ce }, { 5548, 0x146c }, { 5554, 0x0000 },
+  { 5554, 0x0000 }, { 5554, 0x0000 }, { 5554, 0x6800 }, { 5557, 0x8d91 },
+  { 5564, 0x1124 }, { 5568, 0x0000 }, { 5568, 0x04ea }, { 5574, 0x0048 },
+  /* 0x9900 */
+  { 5576, 0x0184 }, { 5579, 0x9ce2 }, { 5587, 0x08c4 }, { 5591, 0x1e3e },
+  { 5600, 0x61c3 }, { 5607, 0xdb10 }, { 5614, 0x0001 }, { 5615, 0x0000 },
+  { 5615, 0x0000 }, { 5615, 0xa800 }, { 5618, 0x0040 }, { 5619, 0xa627 },
+  { 5627, 0x0208 }, { 5629, 0x5618 }, { 5635, 0x1c80 }, { 5639, 0x6231 },
+  /* 0x9a00 */
+  { 5645, 0x181c }, { 5650, 0x4043 }, { 5654, 0x609d }, { 5661, 0x0168 },
+  { 5665, 0x5c92 }, { 5672, 0x2052 }, { 5676, 0x0000 }, { 5676, 0x0000 },
+  { 5676, 0x0000 }, { 5676, 0x0000 }, { 5676, 0xd400 }, { 5680, 0xca74 },
+  { 5688, 0x414a }, { 5693, 0x18e5 }, { 5700, 0x12b1 }, { 5706, 0xa62c },
+  /* 0x9b00 */
+  { 5713, 0x7b3f }, { 5725, 0x1a45 }, { 5731, 0x2841 }, { 5735, 0x26b8 },
+  { 5742, 0x1900 }, { 5745, 0x48e0 }, { 5750, 0x7d6a }, { 5760, 0x83a8 },
+  { 5766, 0xaef1 }, { 5776, 0x6411 }, { 5781, 0x12c0 }, { 5785, 0xd987 },
+  { 5794, 0x4182 }, { 5798, 0xa181 }, { 5803, 0x8ca0 }, { 5808, 0xa788 },
+  /* 0x9c00 */
+  { 5815, 0x8805 }, { 5819, 0x5742 }, { 5826, 0x07cc }, { 5833, 0x20e2 },
+  { 5838, 0xc63a }, { 5846, 0xf959 }, { 5856, 0x4f08 }, { 5862, 0x08a5 },
+  { 5867, 0x0000 }, { 5867, 0x0000 }, { 5867, 0x0000 }, { 5867, 0x0000 },
+  { 5867, 0x0000 }, { 5867, 0x0000 }, { 5867, 0x0040 }, { 5868, 0x0284 },
+  /* 0x9d00 */
+  { 5871, 0x0804 }, { 5873, 0x7182 }, { 5879, 0x8000 }, { 5880, 0x341d },
+  { 5887, 0x04ac }, { 5892, 0x8018 }, { 5895, 0x0e2c }, { 5901, 0x58c1 },
+  { 5907, 0x6458 }, { 5913, 0x01ec }, { 5919, 0x5402 }, { 5923, 0x9222 },
+  { 5928, 0x0688 }, { 5932, 0xc4f0 }, { 5939, 0x4aa1 }, { 5945, 0x4019 },
+  /* 0x9e00 */
+  { 5949, 0x4484 }, { 5953, 0x3267 }, { 5961, 0x0000 }, { 5961, 0x0000 },
+  { 5961, 0x0000 }, { 5961, 0x0000 }, { 5961, 0x0000 }, { 5961, 0x1c00 },
+  { 5964, 0xc0bd }, { 5972, 0x4940 }, { 5976, 0xd110 }, { 5981, 0x0039 },
+  { 5985, 0x0940 }, { 5988, 0x8020 }, { 5990, 0x7090 }, { 5995, 0x8127 },
+  /* 0x9f00 */
+  { 6001, 0x820c }, { 6005, 0x8ed7 }, { 6015, 0x8c44 }, { 6020, 0xb696 },
+  { 6029, 0x00fa }, { 6035, 0x65e8 }, { 6043, 0xe300 }, { 6048, 0x242b },
+  { 6054, 0x8000 }, { 6055, 0x40d7 }, { 6062, 0x002e },
+};
+static const Summary16 jisx0212_uni2indx_pageff[6] = {
+  /* 0xff00 */
+  { 6066, 0x0000 }, { 6066, 0x0000 }, { 6066, 0x0000 }, { 6066, 0x0000 },
+  { 6066, 0x0000 }, { 6066, 0x4000 },
+};
+
+static int
+jisx0212_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 2) {
+    const Summary16 *summary = NULL;
+    if (wc >= 0x0000 && wc < 0x0460)
+      summary = &jisx0212_uni2indx_page00[(wc>>4)];
+    else if (wc >= 0x2100 && wc < 0x2130)
+      summary = &jisx0212_uni2indx_page21[(wc>>4)-0x210];
+    else if (wc >= 0x4e00 && wc < 0x9fb0)
+      summary = &jisx0212_uni2indx_page4e[(wc>>4)-0x4e0];
+    else if (wc >= 0xff00 && wc < 0xff60)
+      summary = &jisx0212_uni2indx_pageff[(wc>>4)-0xff0];
+    if (summary) {
+      unsigned short used = summary->used;
+      unsigned int i = wc & 0x0f;
+      if (used & ((unsigned short) 1 << i)) {
+        unsigned short c;
+        /* Keep in `used' only the bits 0..i-1. */
+        used &= ((unsigned short) 1 << i) - 1;
+        /* Add `summary->indx' and the number of bits set in `used'. */
+        used = (used & 0x5555) + ((used & 0xaaaa) >> 1);
+        used = (used & 0x3333) + ((used & 0xcccc) >> 2);
+        used = (used & 0x0f0f) + ((used & 0xf0f0) >> 4);
+        used = (used & 0x00ff) + (used >> 8);
+        c = jisx0212_2charset[summary->indx + used];
+        r[0] = (c >> 8); r[1] = (c & 0xff);
+        return 2;
+      }
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/jisx0213.h b/graf2d/win32gdk/gdk/src/iconv/jisx0213.h
new file mode 100644
index 00000000000..98468c46449
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/jisx0213.h
@@ -0,0 +1,5924 @@
+/*
+ * Copyright (C) 1999-2004 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * JISX0213:2000
+ */
+
+#ifndef _JISX0213_H
+#define _JISX0213_H
+
+/* JISX0213 plane 1 (= ISO-IR-233) characters are in the range
+   0x{21..7E}{21..7E}.
+   JISX0213 plane 2 (= ISO-IR-229) characters are in the range
+   0x{21,23..25,28,2C..2F,6E..7E}{21..7E}.
+   Together this makes 120 rows of 94 characters.
+*/
+
+static const unsigned short jisx0213_to_ucs_combining[][2] = {
+  { 0x304b, 0x309a },
+  { 0x304d, 0x309a },
+  { 0x304f, 0x309a },
+  { 0x3051, 0x309a },
+  { 0x3053, 0x309a },
+  { 0x30ab, 0x309a },
+  { 0x30ad, 0x309a },
+  { 0x30af, 0x309a },
+  { 0x30b1, 0x309a },
+  { 0x30b3, 0x309a },
+  { 0x30bb, 0x309a },
+  { 0x30c4, 0x309a },
+  { 0x30c8, 0x309a },
+  { 0x31f7, 0x309a },
+  { 0x00e6, 0x0300 },
+  { 0x0254, 0x0300 },
+  { 0x0254, 0x0301 },
+  { 0x028c, 0x0300 },
+  { 0x028c, 0x0301 },
+  { 0x0259, 0x0300 },
+  { 0x0259, 0x0301 },
+  { 0x025a, 0x0300 },
+  { 0x025a, 0x0301 },
+  { 0x02e9, 0x02e5 },
+  { 0x02e5, 0x02e9 },
+};
+
+static const unsigned short jisx0213_to_ucs_main[120 * 94] = {
+  /* 0x12121..0x1217E */
+  0x1000, 0x1001, 0x1002, 0x830c, 0x830e, 0x10fb, 0x831a, 0x831b,
+  0x831f, 0x8301, 0x109b, 0x109c, 0x00b4, 0x8340, 0x00a8, 0x833e,
+  0x83e3, 0x833f, 0x10fd, 0x10fe, 0x109d, 0x109e, 0x1003, 0x2edd,
+  0x1005, 0x1006, 0x1007, 0x10fc, 0x0714, 0x0710, 0x830f, 0x833c,
+  0x101c, 0x0716, 0x835c, 0x0726, 0x0725, 0x0718, 0x0719, 0x071c,
+  0x071d, 0x8308, 0x8309, 0x1014, 0x1015, 0x833b, 0x833d, 0x835b,
+  0x835d, 0x1008, 0x1009, 0x100a, 0x100b, 0x100c, 0x100d, 0x100e,
+  0x100f, 0x1010, 0x1011, 0x830b, 0x0912, 0x00b1, 0x00d7, 0x00f7,
+  0x831d, 0x0960, 0x831c, 0x831e, 0x0966, 0x0967, 0x091e, 0x0934,
+  0x0d42, 0x0d40, 0x00b0, 0x0732, 0x0733, 0x0803, 0x83e5, 0x8304,
+  0x00a2, 0x00a3, 0x8305, 0x8303, 0x8306, 0x830a, 0x8320, 0x00a7,
+  0x0d06, 0x0d05, 0x0ccb, 0x0ccf, 0x0cce, 0x0cc7,
+  /* 0x12221..0x1227E */
+  0x0cc6, 0x0ca1, 0x0ca0, 0x0cb3, 0x0cb2, 0x0cbd, 0x0cbc, 0x073b,
+  0x1012, 0x0892, 0x0890, 0x0891, 0x0893, 0x1013, 0x8307, 0x8302,
+  0x830d, 0x835e, 0x1033, 0x1034, 0x1035, 0x103b, 0x103c, 0x10ff,
+  0x109f, 0x0908, 0x090b, 0x0986, 0x0987, 0x0982, 0x0983, 0x092a,
+  0x0929, 0x0984, 0x0985, 0x098a, 0x098b, 0x0909, 0x0905, 0x0a05,
+  0x0a06, 0x0927, 0x0928, 0x00ac, 0x08d2, 0x08d4, 0x0900, 0x0903,
+  0x0995, 0x0996, 0x0997, 0x0925, 0x0926, 0x835f, 0x8360, 0x1018,
+  0x1019, 0x1016, 0x1017, 0x0920, 0x09a5, 0x0a12, 0x0902, 0x0907,
+  0x0961, 0x0952, 0x096a, 0x096b, 0x091a, 0x093d, 0x091d, 0x0935,
+  0x092b, 0x092c, 0x0962, 0x0943, 0x0945, 0x0948, 0x0976, 0x0977,
+  0x0894, 0x082b, 0x0730, 0x0d6f, 0x0d6d, 0x0d6a, 0x0720, 0x0721,
+  0x00b6, 0x0d6e, 0x0d6b, 0x0d6c, 0x0d69, 0x0cef,
+  /* 0x12321..0x1237E */
+  0x0cb7, 0x0cb6, 0x0cc1, 0x0cc0, 0x0897, 0x0898, 0x0896, 0x0899,
+  0x08c4, 0x08e8, 0x08e6, 0x08e7, 0x08e9, 0x0f34, 0x0f35, 0x8310,
+  0x8311, 0x8312, 0x8313, 0x8314, 0x8315, 0x8316, 0x8317, 0x8318,
+  0x8319, 0x0fbf, 0x0cc9, 0x103d, 0x8246, 0x8245, 0x0ce6, 0x0722,
+  0x8321, 0x8322, 0x8323, 0x8324, 0x8325, 0x8326, 0x8327, 0x8328,
+  0x8329, 0x832a, 0x832b, 0x832c, 0x832d, 0x832e, 0x832f, 0x8330,
+  0x8331, 0x8332, 0x8333, 0x8334, 0x8335, 0x8336, 0x8337, 0x8338,
+  0x8339, 0x833a, 0x0913, 0x0835, 0x080f, 0x13cb, 0x0813, 0x0827,
+  0x8341, 0x8342, 0x8343, 0x8344, 0x8345, 0x8346, 0x8347, 0x8348,
+  0x8349, 0x834a, 0x834b, 0x834c, 0x834d, 0x834e, 0x834f, 0x8350,
+  0x8351, 0x8352, 0x8353, 0x8354, 0x8355, 0x8356, 0x8357, 0x8358,
+  0x8359, 0x835a, 0x10a0, 0x0713, 0x0ffa, 0x0ffb,
+  /* 0x12421..0x1247E */
+  0x1041, 0x1042, 0x1043, 0x1044, 0x1045, 0x1046, 0x1047, 0x1048,
+  0x1049, 0x104a, 0x104b, 0x104c, 0x104d, 0x104e, 0x104f, 0x1050,
+  0x1051, 0x1052, 0x1053, 0x1054, 0x1055, 0x1056, 0x1057, 0x1058,
+  0x1059, 0x105a, 0x105b, 0x105c, 0x105d, 0x105e, 0x105f, 0x1060,
+  0x1061, 0x1062, 0x1063, 0x1064, 0x1065, 0x1066, 0x1067, 0x1068,
+  0x1069, 0x106a, 0x106b, 0x106c, 0x106d, 0x106e, 0x106f, 0x1070,
+  0x1071, 0x1072, 0x1073, 0x1074, 0x1075, 0x1076, 0x1077, 0x1078,
+  0x1079, 0x107a, 0x107b, 0x107c, 0x107d, 0x107e, 0x107f, 0x1080,
+  0x1081, 0x1082, 0x1083, 0x1084, 0x1085, 0x1086, 0x1087, 0x1088,
+  0x1089, 0x108a, 0x108b, 0x108c, 0x108d, 0x108e, 0x108f, 0x1090,
+  0x1091, 0x1092, 0x1093, 0x1094, 0x1095, 0x1096, 0x0001, 0x0002,
+  0x0003, 0x0004, 0x0005, 0x0000, 0x0000, 0x0000,
+  /* 0x12521..0x1257E */
+  0x10a1, 0x10a2, 0x10a3, 0x10a4, 0x10a5, 0x10a6, 0x10a7, 0x10a8,
+  0x10a9, 0x10aa, 0x10ab, 0x10ac, 0x10ad, 0x10ae, 0x10af, 0x10b0,
+  0x10b1, 0x10b2, 0x10b3, 0x10b4, 0x10b5, 0x10b6, 0x10b7, 0x10b8,
+  0x10b9, 0x10ba, 0x10bb, 0x10bc, 0x10bd, 0x10be, 0x10bf, 0x10c0,
+  0x10c1, 0x10c2, 0x10c3, 0x10c4, 0x10c5, 0x10c6, 0x10c7, 0x10c8,
+  0x10c9, 0x10ca, 0x10cb, 0x10cc, 0x10cd, 0x10ce, 0x10cf, 0x10d0,
+  0x10d1, 0x10d2, 0x10d3, 0x10d4, 0x10d5, 0x10d6, 0x10d7, 0x10d8,
+  0x10d9, 0x10da, 0x10db, 0x10dc, 0x10dd, 0x10de, 0x10df, 0x10e0,
+  0x10e1, 0x10e2, 0x10e3, 0x10e4, 0x10e5, 0x10e6, 0x10e7, 0x10e8,
+  0x10e9, 0x10ea, 0x10eb, 0x10ec, 0x10ed, 0x10ee, 0x10ef, 0x10f0,
+  0x10f1, 0x10f2, 0x10f3, 0x10f4, 0x10f5, 0x10f6, 0x0006, 0x0007,
+  0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d,
+  /* 0x12621..0x1267E */
+  0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, 0x0398,
+  0x0399, 0x039a, 0x039b, 0x039c, 0x039d, 0x039e, 0x039f, 0x03a0,
+  0x03a1, 0x03a3, 0x03a4, 0x03a5, 0x03a6, 0x03a7, 0x03a8, 0x03a9,
+  0x0d64, 0x0d60, 0x0d62, 0x0d66, 0x0d61, 0x0d65, 0x0d67, 0x0d63,
+  0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7, 0x03b8,
+  0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf, 0x03c0,
+  0x03c1, 0x03c3, 0x03c4, 0x03c5, 0x03c6, 0x03c7, 0x03c8, 0x03c9,
+  0x03c2, 0x0bf5, 0x0bf6, 0x0bf7, 0x0bf8, 0x0bf9, 0x0bfa, 0x0bfb,
+  0x0bfc, 0x0bfd, 0x0bfe, 0x0d16, 0x0d17, 0x1020, 0x0d0e, 0x0d00,
+  0x0d01, 0x0d02, 0x0d03, 0x0d68, 0x0cb1, 0x11f0, 0x11f1, 0x11f2,
+  0x11f3, 0x11f4, 0x11f5, 0x11f6, 0x11f7, 0x11f8, 0x11f9, 0x000e,
+  0x11fa, 0x11fb, 0x11fc, 0x11fd, 0x11fe, 0x11ff,
+  /* 0x12721..0x1277E */
+  0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0401, 0x0416,
+  0x0417, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+  0x041f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426,
+  0x0427, 0x0428, 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e,
+  0x042f, 0x0abe, 0x0abf, 0x0ac0, 0x0ac1, 0x0ac2, 0x0ac3, 0x0ac4,
+  0x0ac5, 0x0ac6, 0x0ac7, 0x0ac8, 0x0ac9, 0x0aca, 0x0acb, 0x0acc,
+  0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0451, 0x0436,
+  0x0437, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+  0x043f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446,
+  0x0447, 0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e,
+  0x044f, 0x10f7, 0x10f8, 0x10f9, 0x10fa, 0x09da, 0x09db, 0x0853,
+  0x0854, 0x0855, 0x0e13, 0x0a18, 0x0b23, 0x0ace,
+  /* 0x12821..0x1287E */
+  0x0c00, 0x0c02, 0x0c0c, 0x0c10, 0x0c18, 0x0c14, 0x0c1c, 0x0c2c,
+  0x0c24, 0x0c34, 0x0c3c, 0x0c01, 0x0c03, 0x0c0f, 0x0c13, 0x0c1b,
+  0x0c17, 0x0c23, 0x0c33, 0x0c2b, 0x0c3b, 0x0c4b, 0x0c20, 0x0c2f,
+  0x0c28, 0x0c37, 0x0c3f, 0x0c1d, 0x0c30, 0x0c25, 0x0c38, 0x0c42,
+  0x1251, 0x1252, 0x1253, 0x1254, 0x1255, 0x1256, 0x1257, 0x1258,
+  0x1259, 0x125a, 0x125b, 0x125c, 0x125d, 0x125e, 0x125f, 0x12b1,
+  0x12b2, 0x12b3, 0x12b4, 0x12b5, 0x12b6, 0x12b7, 0x12b8, 0x12b9,
+  0x12ba, 0x12bb, 0x12bc, 0x12bd, 0x12be, 0x12bf, 0x0000, 0x0000,
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0cd0, 0x0cd1,
+  0x0cd2, 0x0cd3, 0x073c, 0x0747, 0x0748, 0x0749, 0x01cd, 0x01ce,
+  0x01d0, 0x053e, 0x053f, 0x01f8, 0x01f9, 0x01d1, 0x01d2, 0x01d4,
+  0x01d6, 0x01d8, 0x01da, 0x01dc, 0x0000, 0x0000,
+  /* 0x12921..0x1297E */
+  0x07ac, 0x00a0, 0x00a1, 0x00a4, 0x00a6, 0x00a9, 0x00aa, 0x00ab,
+  0x00ad, 0x00ae, 0x00af, 0x00b2, 0x00b3, 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, 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, 0x00f8, 0x00f9, 0x00fa, 0x00fb,
+  0x00fc, 0x00fd, 0x00fe, 0x00ff, 0x0100, 0x012a, 0x016a, 0x0112,
+  0x014c, 0x0101, 0x012b, 0x016b, 0x0113, 0x014d,
+  /* 0x12A21..0x12A7E */
+  0x0104, 0x02d8, 0x0141, 0x013d, 0x015a, 0x0160, 0x015e, 0x0164,
+  0x0179, 0x017d, 0x017b, 0x0105, 0x02db, 0x0142, 0x013e, 0x015b,
+  0x02c7, 0x0161, 0x015f, 0x0165, 0x017a, 0x02dd, 0x017e, 0x017c,
+  0x0154, 0x0102, 0x0139, 0x0106, 0x010c, 0x0118, 0x011a, 0x010e,
+  0x0143, 0x0147, 0x0150, 0x0158, 0x016e, 0x0170, 0x0162, 0x0155,
+  0x0103, 0x013a, 0x0107, 0x010d, 0x0119, 0x011b, 0x010f, 0x0111,
+  0x0144, 0x0148, 0x0151, 0x0159, 0x016f, 0x0171, 0x0163, 0x02d9,
+  0x0108, 0x011c, 0x0124, 0x0134, 0x015c, 0x016c, 0x0109, 0x011d,
+  0x0125, 0x0135, 0x015d, 0x016d, 0x0271, 0x028b, 0x027e, 0x0283,
+  0x0292, 0x026c, 0x026e, 0x0279, 0x0288, 0x0256, 0x0273, 0x027d,
+  0x0282, 0x0290, 0x027b, 0x026d, 0x025f, 0x0272, 0x029d, 0x028e,
+  0x0261, 0x014b, 0x0270, 0x0281, 0x0127, 0x0295,
+  /* 0x12B21..0x12B7E */
+  0x0294, 0x0266, 0x0298, 0x01c2, 0x0253, 0x0257, 0x0284, 0x0260,
+  0x0193, 0x0153, 0x0152, 0x0268, 0x0289, 0x0258, 0x0275, 0x0259,
+  0x025c, 0x025e, 0x0250, 0x026f, 0x028a, 0x0264, 0x028c, 0x0254,
+  0x0251, 0x0252, 0x028d, 0x0265, 0x02a2, 0x02a1, 0x0255, 0x0291,
+  0x027a, 0x0267, 0x025a, 0x000f, 0x01fd, 0x0670, 0x0671, 0x0010,
+  0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017, 0x0672,
+  0x0673, 0x0361, 0x02c8, 0x02cc, 0x02d0, 0x02d1, 0x0306, 0x073f,
+  0x030b, 0x0301, 0x0304, 0x0300, 0x030f, 0x030c, 0x0302, 0x02e5,
+  0x02e6, 0x02e7, 0x02e8, 0x02e9, 0x0018, 0x0019, 0x0325, 0x032c,
+  0x0339, 0x031c, 0x031f, 0x0320, 0x0308, 0x033d, 0x0329, 0x032f,
+  0x02de, 0x0324, 0x0330, 0x033c, 0x0334, 0x031d, 0x031e, 0x0318,
+  0x0319, 0x032a, 0x033a, 0x033b, 0x0303, 0x031a,
+  /* 0x12C21..0x12C7E */
+  0x0e76, 0x0e77, 0x0e78, 0x0e79, 0x0e7a, 0x0e7b, 0x0e7c, 0x0e7d,
+  0x0e7e, 0x0e7f, 0x0beb, 0x0bec, 0x0bed, 0x0bee, 0x0bef, 0x0bf0,
+  0x0bf1, 0x0bf2, 0x0bf3, 0x0bf4, 0x0870, 0x0871, 0x0872, 0x0873,
+  0x0874, 0x0875, 0x0876, 0x0877, 0x0878, 0x0879, 0x087a, 0x087b,
+  0x0bd0, 0x0bd1, 0x0bd2, 0x0bd3, 0x0bd4, 0x0bd5, 0x0bd6, 0x0bd7,
+  0x0bd8, 0x0bd9, 0x0bda, 0x0bdb, 0x0bdc, 0x0bdd, 0x0bde, 0x0bdf,
+  0x0be0, 0x0be1, 0x0be2, 0x0be3, 0x0be4, 0x0be5, 0x0be6, 0x0be7,
+  0x0be8, 0x0be9, 0x12d0, 0x12d1, 0x12d2, 0x12d3, 0x12d4, 0x12d5,
+  0x12d6, 0x12d7, 0x12d8, 0x12d9, 0x12da, 0x12db, 0x12dc, 0x12dd,
+  0x12de, 0x12df, 0x12e0, 0x12e1, 0x12e2, 0x12e3, 0x12fa, 0x12e9,
+  0x12e5, 0x12ed, 0x12ec, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0751, 0x0742,
+  /* 0x12D21..0x12D7E */
+  0x0b60, 0x0b61, 0x0b62, 0x0b63, 0x0b64, 0x0b65, 0x0b66, 0x0b67,
+  0x0b68, 0x0b69, 0x0b6a, 0x0b6b, 0x0b6c, 0x0b6d, 0x0b6e, 0x0b6f,
+  0x0b70, 0x0b71, 0x0b72, 0x0b73, 0x0860, 0x0861, 0x0862, 0x0863,
+  0x0864, 0x0865, 0x0866, 0x0867, 0x0868, 0x0869, 0x086a, 0x1349,
+  0x1314, 0x1322, 0x134d, 0x1318, 0x1327, 0x1303, 0x1336, 0x1351,
+  0x1357, 0x130d, 0x1326, 0x1323, 0x132b, 0x134a, 0x133b, 0x139c,
+  0x139d, 0x139e, 0x138e, 0x138f, 0x13c4, 0x13a1, 0x086b, 0x0000,
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x137b, 0x101d,
+  0x101f, 0x0816, 0x13cd, 0x0821, 0x12a4, 0x12a5, 0x12a6, 0x12a7,
+  0x12a8, 0x1231, 0x1232, 0x1239, 0x137e, 0x137d, 0x137c, 0x0000,
+  0x0000, 0x0000, 0x092e, 0x0000, 0x0000, 0x0000, 0x0000, 0x091f,
+  0x09bf, 0x0000, 0x0000, 0x0000, 0x0e56, 0x0d1e,
+  /* 0x12E21..0x12E7E */
+  0x2ff1, 0x840b, 0x1402, 0x2e28, 0x2e2f, 0x2e30, 0x2e8d, 0x2ee1,
+  0x2efd, 0x2eff, 0x2f03, 0x2f0b, 0x2f60, 0x2f48, 0x2f49, 0x2f56,
+  0x2f5f, 0x2f6a, 0x2f6c, 0x2f7e, 0x2f8a, 0x2f94, 0x2f97, 0x8130,
+  0x2fc9, 0x2fe0, 0x3001, 0x3002, 0x300e, 0x3018, 0x3027, 0x302e,
+  0x3040, 0x303b, 0x3041, 0x3094, 0x30cc, 0x30f2, 0x30d0, 0x30e6,
+  0x8131, 0x3106, 0x3103, 0x310b, 0x311e, 0x3135, 0x314a, 0x8132,
+  0x3155, 0x3157, 0x14b5, 0x319d, 0x31c3, 0x31ca, 0x31de, 0x31e2,
+  0x31ee, 0x3201, 0x14db, 0x3213, 0x3215, 0x3249, 0x3257, 0x3261,
+  0x3293, 0x32c8, 0x8133, 0x32cc, 0x32d0, 0x32d6, 0x32db, 0x8134,
+  0x32f0, 0x32fb, 0x3300, 0x3307, 0x331c, 0x8135, 0x3361, 0x3363,
+  0x337d, 0x3393, 0x339d, 0x33b2, 0x3412, 0x3427, 0x344d, 0x349c,
+  0x346b, 0x3474, 0x347f, 0x3488, 0x3496, 0x34a1,
+  /* 0x12F21..0x12F7E */
+  0x34a9, 0x34c6, 0x34ff, 0x350e, 0x352b, 0x3535, 0x3550, 0x355e,
+  0x3581, 0x3586, 0x358e, 0x8136, 0x35ad, 0x35ce, 0x8137, 0x3608,
+  0x360e, 0x363b, 0x3649, 0x3676, 0x3666, 0x8138, 0x366f, 0x3671,
+  0x3672, 0x3699, 0x369e, 0x36a9, 0x36ac, 0x36b3, 0x36c9, 0x36ca,
+  0x370a, 0x923d, 0x3721, 0x372f, 0x3733, 0x3734, 0x3770, 0x3777,
+  0x377c, 0x379c, 0x810f, 0x931b, 0x37b8, 0x37c7, 0x37c8, 0x37cf,
+  0x37e4, 0x37ed, 0x37f5, 0x37f6, 0x37ff, 0x3809, 0x8110, 0x3861,
+  0x3864, 0x8139, 0x387c, 0x3889, 0x389e, 0x813a, 0x38a9, 0x946e,
+  0x38d2, 0x38ce, 0x38d4, 0x38da, 0x38e0, 0x38e9, 0x390c, 0x6641,
+  0x395d, 0x396d, 0x398b, 0x3992, 0x39a4, 0x39c3, 0x39d2, 0x39dd,
+  0x3a13, 0x3a23, 0x3a67, 0x3a6d, 0x3a77, 0x3a7e, 0x3a84, 0x3a9e,
+  0x3aa7, 0x3ac4, 0x98bd, 0x3b19, 0x3b25, 0x325d,
+  /* 0x13021..0x1307E */
+  0x2e9c, 0x3516, 0x3a03, 0x763f, 0x34c0, 0x411b, 0x4328, 0x39f6,
+  0x7022, 0x6475, 0x631c, 0x5a50, 0x40aa, 0x43e1, 0x4e25, 0x45ed,
+  0x6466, 0x62a6, 0x7bf5, 0x4893, 0x3727, 0x45a1, 0x4271, 0x3b9b,
+  0x39d0, 0x667b, 0x78f4, 0x5d62, 0x5dbe, 0x7b8e, 0x4216, 0x5c9f,
+  0x68b7, 0x3b89, 0x3eb5, 0x4309, 0x4697, 0x4848, 0x75c7, 0x778d,
+  0x474f, 0x2ee5, 0x2f0a, 0x2f4d, 0x2f9d, 0x3049, 0x36f2, 0x3937,
+  0x39d4, 0x3a01, 0x3c09, 0x40df, 0x410f, 0x4170, 0x4613, 0x4905,
+  0x50ba, 0x554f, 0x5570, 0x59fb, 0x5dad, 0x5def, 0x60c3, 0x640e,
+  0x6863, 0x6b02, 0x7055, 0x707a, 0x333b, 0x2e95, 0x2ea5, 0x37df,
+  0x60b2, 0x70c1, 0x58ef, 0x2e00, 0x38f1, 0x4ea2, 0x7038, 0x5a32,
+  0x6328, 0x628b, 0x7c2f, 0x3141, 0x3370, 0x34bd, 0x34e1, 0x36e0,
+  0x39fb, 0x3f15, 0x78f2, 0x4deb, 0x60e4, 0x652d,
+  /* 0x13121..0x1317E */
+  0x7662, 0x7670, 0x76a0, 0x77fb, 0x340b, 0x33f3, 0x3b87, 0x50cf,
+  0x5fbd, 0x6fc2, 0x76e8, 0x336f, 0x7d5c, 0x5aba, 0x2e11, 0x5893,
+  0x61fc, 0x4e26, 0x3618, 0x3504, 0x4b1d, 0x651a, 0x7c3b, 0x39e5,
+  0x33a9, 0x4d66, 0x54dc, 0x758f, 0x3642, 0x2e91, 0x704b, 0x76f2,
+  0x634f, 0x790c, 0x33e1, 0x35b6, 0x3b30, 0x3f71, 0x4620, 0x46f3,
+  0x4804, 0x4c38, 0x4cf3, 0x4d29, 0x545b, 0x56c8, 0x5a4e, 0x7834,
+  0x62f1, 0x685b, 0x6a60, 0x72ed, 0x4db2, 0x55ab, 0x56ca, 0x79c5,
+  0x40a6, 0x6b01, 0x6d8a, 0x75b2, 0x498e, 0x33ad, 0x3186, 0x3712,
+  0x3830, 0x3944, 0x3bb4, 0x3ef6, 0x4028, 0x43a9, 0x43f4, 0x4cbf,
+  0x4f14, 0x508e, 0x5114, 0x5159, 0x51d5, 0x533f, 0x5e01, 0x6276,
+  0x62d1, 0x6597, 0x7060, 0x725b, 0x7d1b, 0x3869, 0x45bc, 0x4c5a,
+  0x5525, 0x31f9, 0x392e, 0x3965, 0x3f80, 0x3fdc,
+  /* 0x13221..0x1327E */
+  0x42bc, 0x45fa, 0x4a2a, 0x4b27, 0x4bb4, 0x538b, 0x5fc1, 0x6956,
+  0x7d2c, 0x7d0e, 0x7ec4, 0x3ca1, 0x4c96, 0x637b, 0x3104, 0x3c4b,
+  0x41b6, 0x61c6, 0x4876, 0x5261, 0x2e59, 0x2ffa, 0x3378, 0x4069,
+  0x4e29, 0x5a4f, 0x77f3, 0x2e0b, 0x3316, 0x2eee, 0x2f55, 0x2f3d,
+  0x2fa1, 0x2f73, 0x32a0, 0x33ef, 0x3609, 0x390f, 0x3ac1, 0x3bb6,
+  0x3be1, 0x59d1, 0x4687, 0x479c, 0x47b6, 0x4b4c, 0x4cb3, 0x506b,
+  0x53c2, 0x598d, 0x59be, 0x5a3c, 0x5b87, 0x62b1, 0x62db, 0x6304,
+  0x6377, 0x63ef, 0x63d3, 0x6766, 0x6ab2, 0x3629, 0x6ca8, 0x6fe6,
+  0x704e, 0x771e, 0x668a, 0x2fc4, 0x3ce8, 0x4211, 0x5259, 0x553b,
+  0x61e5, 0x62bd, 0x66fe, 0x6cc0, 0x76c5, 0x7913, 0x79d5, 0x2ecb,
+  0x2f1a, 0x69e3, 0x36de, 0x384a, 0x38ca, 0x3efb, 0x3feb, 0x402a,
+  0x4094, 0x4062, 0x41d0, 0x4212, 0x42d0, 0x4539,
+  /* 0x13321..0x1337E */
+  0x7b41, 0x4666, 0x48b0, 0x4d77, 0x5070, 0x554c, 0x5686, 0x5d75,
+  0x62a5, 0x67f9, 0x758b, 0x768e, 0x6c9d, 0x31f1, 0x32be, 0x3916,
+  0x34b3, 0x3bb3, 0x3d16, 0x4168, 0x4982, 0x4daf, 0x588d, 0x64cb,
+  0x6857, 0x6a72, 0x73a7, 0x7ab8, 0x4d6c, 0x79a8, 0x66d9, 0x37a3,
+  0x47ff, 0x66ce, 0x720e, 0x3283, 0x3687, 0x3404, 0x3ed3, 0x42e1,
+  0x44b9, 0x483c, 0x4838, 0x4bbb, 0x5372, 0x58ba, 0x5a6b, 0x699a,
+  0x69d2, 0x6d6b, 0x6f03, 0x70ed, 0x75a3, 0x7694, 0x7769, 0x3b66,
+  0x3cb3, 0x497d, 0x784d, 0x784e, 0x439b, 0x5b20, 0x4a2b, 0x4a7f,
+  0x48b6, 0x7c0d, 0x4f5f, 0x3272, 0x359d, 0x4070, 0x42ec, 0x4d3b,
+  0x4e07, 0x4ed1, 0x645b, 0x6910, 0x6f44, 0x2e14, 0x7c39, 0x33f6,
+  0x491b, 0x4a3a, 0x7784, 0x482a, 0x315c, 0x5ac3, 0x64b2, 0x71dc,
+  0x738c, 0x365b, 0x7d28, 0x4822, 0x6305, 0x6431,
+  /* 0x13421..0x1347E */
+  0x5ca5, 0x3208, 0x62c5, 0x54e6, 0x2e7e, 0x2f83, 0x31a0, 0x3bd2,
+  0x320a, 0x32d8, 0x32e7, 0x3dfb, 0x359a, 0x382a, 0x39e6, 0x3b8c,
+  0x3b98, 0x3bdb, 0x3e72, 0x3e79, 0x40a3, 0x411f, 0x4163, 0x41be,
+  0x43db, 0x4562, 0x47d1, 0x4853, 0x48fa, 0x4b3e, 0x4b53, 0x4c57,
+  0x4f22, 0x4f97, 0x4f45, 0x54b0, 0x5518, 0x56e3, 0x570b, 0x5aff,
+  0x5ba1, 0x5c21, 0x5de9, 0x5f36, 0x5ff0, 0x609d, 0x6266, 0x639e,
+  0x69b3, 0x6acc, 0x6cab, 0x7084, 0x7451, 0x7593, 0x7591, 0x75a2,
+  0x7665, 0x77d3, 0x7928, 0x6218, 0x2e38, 0x342b, 0x3cb8, 0x3dcc,
+  0x53a9, 0x564c, 0x573c, 0x3ca9, 0x5feb, 0x6d0b, 0x76c1, 0x7811,
+  0x7854, 0x7858, 0x2f01, 0x2f0e, 0x3371, 0x359c, 0x3668, 0x37fa,
+  0x3947, 0x3b09, 0x3bc4, 0x3c90, 0x3e0c, 0x3e7e, 0x3fcc, 0x43ee,
+  0x473a, 0x45d7, 0x45e2, 0x471f, 0x48cb, 0x48c4,
+  /* 0x13521..0x1357E */
+  0x4a5f, 0x3e30, 0x4bc5, 0x4c17, 0x4c7d, 0x557f, 0x5948, 0x3b63,
+  0x5a00, 0x5d00, 0x3fbd, 0x698f, 0x6a18, 0x6cb4, 0x6d77, 0x6ecc,
+  0x6f1d, 0x78e2, 0x7a0e, 0x7b3c, 0x2e80, 0x307d, 0x3100, 0x3993,
+  0x3b9c, 0x422f, 0x4280, 0x44ec, 0x4b3a, 0x52a0, 0x5591, 0x5947,
+  0x5fa9, 0x67fb, 0x6abc, 0x6b70, 0x43ac, 0x63ca, 0x77a0, 0x3409,
+  0x3403, 0x35ab, 0x4854, 0x4a58, 0x6a70, 0x5827, 0x4775, 0x7ecd,
+  0x3374, 0x3ba2, 0x611a, 0x6650, 0x7006, 0x2e18, 0x2e45, 0x2ec7,
+  0x2f11, 0x33ca, 0x3438, 0x3bae, 0x3f13, 0x4025, 0x4551, 0x473d,
+  0x4c42, 0x4c72, 0x4ce3, 0x5078, 0x5403, 0x5a76, 0x5aae, 0x5b08,
+  0x5d1a, 0x5cfe, 0x5d66, 0x45e7, 0x525b, 0x33bb, 0x3c45, 0x3de8,
+  0x42d2, 0x42e0, 0x4319, 0x4e20, 0x665a, 0x6a31, 0x6ddd, 0x72f8,
+  0x4f01, 0x59a6, 0x7b5a, 0x2ea8, 0x2eab, 0x2eac,
+  /* 0x13621..0x1367E */
+  0x2f9b, 0x2fa0, 0x30d1, 0x3147, 0x5af6, 0x3171, 0x31f6, 0x3354,
+  0x3321, 0x337f, 0x33eb, 0x35ac, 0x3883, 0x3ce1, 0x3f37, 0x3f4a,
+  0x402f, 0x4050, 0x406d, 0x431f, 0x4559, 0x4a4b, 0x4cc1, 0x52c2,
+  0x52ed, 0x57ef, 0x60f8, 0x6105, 0x6208, 0x654e, 0x70f7, 0x73e1,
+  0x77ff, 0x7957, 0x7a5a, 0x2ef0, 0x31dd, 0x3c2d, 0x4681, 0x496d,
+  0x3c40, 0x46f2, 0x4975, 0x5389, 0x4850, 0x5c81, 0x30c5, 0x32e4,
+  0x3747, 0x3dfe, 0x7326, 0x45a4, 0x4b23, 0x4b3d, 0x5434, 0x5981,
+  0x59bd, 0x5b4b, 0x5dca, 0x62b9, 0x63cc, 0x687f, 0x695f, 0x6b39,
+  0x6fd1, 0x71d1, 0x341f, 0x7280, 0x2e5d, 0x3036, 0x33e5, 0x333a,
+  0x52d7, 0x5396, 0x57e9, 0x62e6, 0x6eaf, 0x79c6, 0x79c8, 0x79d2,
+  0x3177, 0x411a, 0x665e, 0x35b0, 0x5a7a, 0x3076, 0x3bd3, 0x7047,
+  0x7685, 0x2e32, 0x4adb, 0x71e7, 0x3c51, 0x3c48,
+  /* 0x13721..0x1377E */
+  0x4398, 0x5a9f, 0x4c93, 0x7774, 0x6f61, 0x5aaa, 0x518a, 0x7688,
+  0x5c82, 0x4817, 0x5e70, 0x4851, 0x736c, 0x32f2, 0x341b, 0x65ab,
+  0x6a13, 0x5fa4, 0x6ecd, 0x70e1, 0x3366, 0x6888, 0x5941, 0x2fc2,
+  0x30be, 0x3211, 0x3144, 0x3553, 0x372d, 0x53ea, 0x378b, 0x3951,
+  0x3f62, 0x3f84, 0x4075, 0x4176, 0x4167, 0x41a9, 0x43b2, 0x443a,
+  0x456c, 0x466f, 0x4842, 0x4e13, 0x5566, 0x5a3d, 0x5cfb, 0x5d4c,
+  0x5d99, 0x5e4b, 0x5f6b, 0x630e, 0x634a, 0x66cd, 0x6a08, 0x6a63,
+  0x6b66, 0x6efd, 0x781a, 0x7d8f, 0x62b8, 0x6fce, 0x7be8, 0x3287,
+  0x421f, 0x4483, 0x4fc0, 0x7699, 0x4841, 0x3091, 0x4b20, 0x4c7a,
+  0x4f54, 0x5a74, 0x5d50, 0x6840, 0x6a23, 0x4708, 0x2ef6, 0x3039,
+  0x3026, 0x3065, 0x317c, 0x3238, 0x3263, 0x35a7, 0x370f, 0x3805,
+  0x3acc, 0x3efa, 0x41b2, 0x41f8, 0x42f3, 0x4372,
+  /* 0x13821..0x1387E */
+  0x491c, 0x4a29, 0x527d, 0x52ac, 0x532e, 0x5814, 0x586f, 0x5d79,
+  0x570c, 0x60a9, 0x698b, 0x6b19, 0x6ce2, 0x6ed2, 0x7063, 0x7375,
+  0x767a, 0x7855, 0x7a13, 0x7e78, 0x3143, 0x339f, 0x33b3, 0x3e7b,
+  0x3f26, 0x4e1b, 0x4e90, 0x5384, 0x53fe, 0x5d43, 0x6237, 0x6a00,
+  0x6afa, 0x7650, 0x2e4e, 0x300b, 0x33e4, 0x347c, 0x36fa, 0x39d1,
+  0x3b64, 0x3df1, 0x3eab, 0x3f27, 0x4238, 0x4545, 0x47af, 0x4e56,
+  0x52d0, 0x5cca, 0x68b4, 0x60a1, 0x60e1, 0x63f0, 0x664e, 0x6a87,
+  0x6de8, 0x7237, 0x76c7, 0x7867, 0x7f13, 0x2e94, 0x2e92, 0x2f0d,
+  0x3348, 0x3449, 0x343e, 0x3a2f, 0x3f8c, 0x3fa1, 0x409f, 0x48a7,
+  0x4a8e, 0x545a, 0x5881, 0x6a9e, 0x6aa4, 0x6b77, 0x7190, 0x2e5e,
+  0x7bc9, 0x2ea4, 0x2f7c, 0x2faf, 0x3019, 0x3016, 0x3149, 0x316c,
+  0x329f, 0x32b9, 0x32fe, 0x339a, 0x33e3, 0x3411,
+  /* 0x13921..0x1397E */
+  0x340e, 0x3589, 0x3751, 0x37a2, 0x397d, 0x3b54, 0x3b5d, 0x3b8f,
+  0x3de5, 0x3de7, 0x3df7, 0x3e78, 0x3e83, 0x3e9a, 0x3eb7, 0x3f18,
+  0x4052, 0x414c, 0x4297, 0x42d8, 0x43a7, 0x453b, 0x4602, 0x4643,
+  0x46f4, 0x476d, 0x4821, 0x4897, 0x49cb, 0x4c5f, 0x4d2a, 0x4d69,
+  0x4e2f, 0x4e9d, 0x5532, 0x5687, 0x586c, 0x5a3f, 0x5ce0, 0x5d05,
+  0x5d18, 0x5d5e, 0x5db1, 0x6015, 0x6003, 0x60af, 0x60b1, 0x6154,
+  0x618f, 0x622a, 0x6352, 0x684c, 0x6861, 0x6b1b, 0x6ca2, 0x6cfc,
+  0x70ca, 0x7175, 0x7271, 0x583f, 0x72fc, 0x75a4, 0x764d, 0x7805,
+  0x7999, 0x7ad8, 0x7d3b, 0x325b, 0x32ab, 0x33f7, 0x3408, 0x38d5,
+  0x42f7, 0x4fe0, 0x6c6a, 0x6f5f, 0x7eb9, 0x314b, 0x323b, 0x344a,
+  0x36fd, 0x5a40, 0x7177, 0x7d60, 0x7ed2, 0x5344, 0x4f09, 0x6170,
+  0x5511, 0x3ffd, 0x40da, 0x7aa8, 0x52db, 0x6fbc,
+  /* 0x13A21..0x13A7E */
+  0x4b64, 0x7803, 0x2eca, 0x36f0, 0x3764, 0x38be, 0x3a5a, 0x4068,
+  0x41c7, 0x460f, 0x4606, 0x4839, 0x48b1, 0x4df7, 0x55d5, 0x5d3a,
+  0x626e, 0x7b42, 0x2e9b, 0x2f50, 0x33c9, 0x3506, 0x3d6f, 0x3de6,
+  0x3dee, 0x47fb, 0x4c99, 0x5473, 0x5802, 0x6a50, 0x7396, 0x68df,
+  0x3750, 0x3ea7, 0x432b, 0x30b5, 0x30ac, 0x318d, 0x4700, 0x34c9,
+  0x385e, 0x39bb, 0x3bb0, 0x3f69, 0x424d, 0x43a1, 0x483d, 0x4b73,
+  0x4e08, 0x507d, 0x71c7, 0x5280, 0x5815, 0x5826, 0x596d, 0x458e,
+  0x5d30, 0x63dc, 0x68c1, 0x6f09, 0x769b, 0x3264, 0x3728, 0x4750,
+  0x5f6a, 0x6ca1, 0x31b4, 0x3742, 0x762a, 0x383a, 0x498a, 0x60b4,
+  0x34b2, 0x3d0e, 0x37fc, 0x5895, 0x7dfa, 0x2f5c, 0x324a, 0x348b,
+  0x443e, 0x4628, 0x4714, 0x47f5, 0x5a84, 0x5b56, 0x5d22, 0x732f,
+  0x485c, 0x7bad, 0x5b39, 0x3319, 0x318a, 0x3237,
+  /* 0x13B21..0x13B7E */
+  0x3bdf, 0x42f6, 0x44ae, 0x44e6, 0x472d, 0x4bba, 0x65a9, 0x76d1,
+  0x5690, 0x7bd6, 0x434c, 0x7306, 0x7bab, 0x56bf, 0x4652, 0x2e09,
+  0x3098, 0x33c2, 0x3c71, 0x40e8, 0x4492, 0x4563, 0x485f, 0x51e6,
+  0x53ca, 0x5523, 0x5b97, 0x5e82, 0x6695, 0x6b83, 0x6cdb, 0x7178,
+  0x7910, 0x45ac, 0x46ab, 0x4b8b, 0x2ed5, 0x2ed4, 0x2f3a, 0x2f7f,
+  0x323a, 0x33f8, 0x33f2, 0x35e3, 0x36db, 0x38eb, 0x39cb, 0x39c9,
+  0x39ff, 0x3b50, 0x3c4d, 0x3e02, 0x3e2b, 0x3fd7, 0x401d, 0x4307,
+  0x452f, 0x3b5c, 0x45af, 0x45bd, 0x45e8, 0x479d, 0x4b62, 0x4b7b,
+  0x4c0f, 0x5345, 0x5949, 0x59c1, 0x5cf8, 0x5d19, 0x5d2b, 0x60a2,
+  0x6102, 0x61f3, 0x6996, 0x6a5e, 0x6a69, 0x6a66, 0x6a8c, 0x6aee,
+  0x6cc7, 0x6cdc, 0x76cc, 0x78fc, 0x4b6f, 0x2e8b, 0x2f3c, 0x2f8d,
+  0x3150, 0x3b57, 0x3bfa, 0x4148, 0x4301, 0x4642,
+  /* 0x13C21..0x13C7E */
+  0x4b21, 0x4ecb, 0x4cbb, 0x523e, 0x54bd, 0x55d4, 0x58c1, 0x593a,
+  0x600c, 0x6033, 0x61ea, 0x6494, 0x6f9e, 0x4c50, 0x7e7f, 0x3f0f,
+  0x6b58, 0x7d2b, 0x5afa, 0x6ef8, 0x3b8d, 0x76eb, 0x2e03, 0x33f1,
+  0x37f7, 0x3931, 0x3ac9, 0x3ba4, 0x4089, 0x4e7f, 0x4f06, 0x55be,
+  0x6cea, 0x3b9f, 0x6500, 0x5be0, 0x3072, 0x47f4, 0x629d, 0x3c61,
+  0x654a, 0x5e1e, 0x620e, 0x3199, 0x3c04, 0x4368, 0x6d66, 0x459c,
+  0x516e, 0x593e, 0x5d17, 0x6005, 0x6b1d, 0x6eca, 0x706e, 0x66c7,
+  0x70aa, 0x301f, 0x32fa, 0x3c3a, 0x4753, 0x507c, 0x5235, 0x714c,
+  0x71c8, 0x732b, 0x62e5, 0x3bc2, 0x3f31, 0x40f9, 0x2e3b, 0x33d6,
+  0x3b88, 0x424b, 0x4731, 0x4b8a, 0x52e9, 0x53e0, 0x5a2e, 0x616b,
+  0x6da3, 0x7152, 0x7996, 0x3112, 0x33d7, 0x346a, 0x3bff, 0x4388,
+  0x4a39, 0x5dac, 0x7700, 0x36da, 0x33ce, 0x3468,
+  /* 0x13D21..0x13D7E */
+  0x3b97, 0x3c31, 0x3dde, 0x2fee, 0x4101, 0x42fe, 0x4d32, 0x59c0,
+  0x59cb, 0x5d42, 0x5e4d, 0x5fd2, 0x61ed, 0x621f, 0x6490, 0x6846,
+  0x6972, 0x6b90, 0x6e74, 0x6f2f, 0x7031, 0x714b, 0x716c, 0x76c6,
+  0x719c, 0x2ec0, 0x2f4f, 0x3145, 0x3341, 0x3f93, 0x420e, 0x47d4,
+  0x4c41, 0x4e0b, 0x5363, 0x5e26, 0x71cd, 0x7283, 0x33d4, 0x3919,
+  0x3bbf, 0x4dd1, 0x595d, 0x5e2e, 0x5c9b, 0x387e, 0x519f, 0x31fa,
+  0x6853, 0x6ff0, 0x2fca, 0x3cfb, 0x4625, 0x57ac, 0x5ae3, 0x621c,
+  0x79ff, 0x31c6, 0x3faa, 0x45ec, 0x496f, 0x4b89, 0x4df3, 0x4e96,
+  0x4f64, 0x56fe, 0x5d14, 0x3de1, 0x7075, 0x7187, 0x7806, 0x31e6,
+  0x321d, 0x4240, 0x4691, 0x46d9, 0x4e1a, 0x3eb6, 0x5dd2, 0x5f72,
+  0x46f8, 0x65af, 0x65f7, 0x6af8, 0x32a9, 0x33d9, 0x3973, 0x3e8f,
+  0x3f90, 0x4055, 0x72e4, 0x7664, 0x30b7, 0x311f,
+  /* 0x13E21..0x13E7E */
+  0x32dd, 0x3320, 0x3347, 0x33ec, 0x34e8, 0x3546, 0x3531, 0x3617,
+  0x3968, 0x39be, 0x3a3c, 0x3bb5, 0x3c06, 0x3c0f, 0x3c11, 0x3c1a,
+  0x3e84, 0x3e8a, 0x3ee0, 0x3f70, 0x427f, 0x4284, 0x42db, 0x438c,
+  0x4377, 0x4607, 0x460c, 0x462d, 0x4676, 0x477e, 0x48a2, 0x4a1f,
+  0x4a35, 0x4cbc, 0x4d88, 0x4e09, 0x4e58, 0x513c, 0x5126, 0x5167,
+  0x55c7, 0x5701, 0x585d, 0x5901, 0x5965, 0x59f0, 0x5ae0, 0x5b11,
+  0x5ca7, 0x5d39, 0x6096, 0x63d6, 0x648b, 0x6549, 0x685d, 0x68f3,
+  0x6a1f, 0x6a3c, 0x6a54, 0x6a73, 0x6c61, 0x6cde, 0x71a4, 0x7266,
+  0x737e, 0x7418, 0x769c, 0x7798, 0x2e0a, 0x2e08, 0x2e1e, 0x2e57,
+  0x3197, 0x3270, 0x37ce, 0x3834, 0x38cc, 0x3b22, 0x3e38, 0x40c5,
+  0x44fe, 0x4761, 0x4756, 0x4d44, 0x52b6, 0x5573, 0x5a63, 0x64b8,
+  0x6b72, 0x71b8, 0x7320, 0x3631, 0x37f4, 0x78fe,
+  /* 0x13F21..0x13F7E */
+  0x42ed, 0x490d, 0x4b96, 0x51ed, 0x5e54, 0x6077, 0x6272, 0x69e6,
+  0x78df, 0x6755, 0x6fb1, 0x3c3b, 0x2f38, 0x2fe1, 0x2fb5, 0x3507,
+  0x3a20, 0x3bdd, 0x3be9, 0x3fc3, 0x414e, 0x432f, 0x45b0, 0x464b,
+  0x48ee, 0x499b, 0x4d78, 0x4df1, 0x5533, 0x55b9, 0x571f, 0x595e,
+  0x59e6, 0x5d33, 0x61e3, 0x62af, 0x65aa, 0x69aa, 0x6a3a, 0x6eab,
+  0x6f9b, 0x7032, 0x71dd, 0x7707, 0x2eba, 0x2ec1, 0x3203, 0x3875,
+  0x38ec, 0x3c0b, 0x551a, 0x3c3d, 0x614e, 0x6a0a, 0x6fc5, 0x7663,
+  0x776d, 0x5b25, 0x6acf, 0x7808, 0x7162, 0x36f3, 0x33a8, 0x7017,
+  0x3439, 0x3782, 0x3e25, 0x43a8, 0x4c34, 0x508a, 0x5761, 0x5c8b,
+  0x5fe0, 0x6870, 0x7042, 0x7154, 0x7310, 0x7318, 0x768f, 0x545e,
+  0x7ac4, 0x3d07, 0x3d69, 0x4570, 0x47a2, 0x6da8, 0x76db, 0x436e,
+  0x4749, 0x4919, 0x63c5, 0x7817, 0x76c0, 0x68fe,
+  /* 0x14021..0x1407E */
+  0x4f84, 0x447a, 0x3bf8, 0x2e16, 0x502c, 0x555d, 0x462f, 0x31c4,
+  0x3236, 0x32e2, 0x39d3, 0x3f81, 0x4027, 0x4210, 0x453f, 0x4574,
+  0x461f, 0x4674, 0x48f2, 0x4816, 0x4b63, 0x4e05, 0x5272, 0x551f,
+  0x56db, 0x5cbe, 0x6056, 0x38f0, 0x68fd, 0x697f, 0x6aa0, 0x6a93,
+  0x6acb, 0x701d, 0x7192, 0x7752, 0x7759, 0x4589, 0x5a0e, 0x6106,
+  0x76bb, 0x3e2d, 0x40dc, 0x421a, 0x45a5, 0x4614, 0x4790, 0x57f3,
+  0x5a4d, 0x5c4d, 0x5e3e, 0x610a, 0x6cac, 0x6d64, 0x6de1, 0x6e5f,
+  0x58a9, 0x3207, 0x42d9, 0x43a5, 0x4442, 0x4298, 0x6a2d, 0x5a83,
+  0x5bc0, 0x6aac, 0x76ea, 0x5d76, 0x620c, 0x6749, 0x2ed9, 0x3148,
+  0x3343, 0x3360, 0x3ba3, 0x3c02, 0x3c16, 0x3ddd, 0x4226, 0x4247,
+  0x44b0, 0x4813, 0x4834, 0x4cc9, 0x4d45, 0x4d17, 0x47d3, 0x4f5c,
+  0x514e, 0x517d, 0x45cb, 0x5a7f, 0x5bad, 0x5dda,
+  /* 0x14121..0x1417E */
+  0x5e4a, 0x5fa8, 0x617a, 0x621b, 0x6239, 0x65a6, 0x6a6e, 0x6cce,
+  0x6df5, 0x7078, 0x7077, 0x72ad, 0x7291, 0x7583, 0x7bae, 0x324d,
+  0x3584, 0x4f38, 0x5136, 0x3168, 0x5985, 0x5e55, 0x61b3, 0x5cce,
+  0x364c, 0x3851, 0x3ca8, 0x43aa, 0x46fe, 0x46fd, 0x495a, 0x52d9,
+  0x558f, 0x558e, 0x590e, 0x5956, 0x59df, 0x5c97, 0x5d20, 0x5d44,
+  0x6607, 0x6a34, 0x763b, 0x7061, 0x7f20, 0x30e7, 0x3275, 0x33cc,
+  0x33e2, 0x3009, 0x35aa, 0x38ee, 0x394f, 0x523d, 0x3b8b, 0x3c64,
+  0x331d, 0x40e3, 0x40f3, 0x435c, 0x4383, 0x433f, 0x43bb, 0x44cd,
+  0x45e9, 0x46f9, 0x3de3, 0x49cd, 0x49fd, 0x4f15, 0x51e5, 0x2e89,
+  0x55e9, 0x56f8, 0x5a93, 0x5cdf, 0x5dcf, 0x5d9c, 0x6061, 0x6349,
+  0x6358, 0x646c, 0x64bc, 0x65fb, 0x68c5, 0x6d70, 0x7001, 0x706d,
+  0x7397, 0x771c, 0x7a12, 0x30cf, 0x3897, 0x418e,
+  /* 0x14221..0x1427E */
+  0x61d3, 0x6535, 0x6d08, 0x7020, 0x2fc3, 0x3074, 0x3247, 0x3373,
+  0x406f, 0x4349, 0x475f, 0x4e2c, 0x6db3, 0x701f, 0x2fd7, 0x3c5e,
+  0x6cca, 0x45cf, 0x5d9a, 0x3352, 0x6896, 0x3176, 0x43c3, 0x3b58,
+  0x3b6b, 0x3c0a, 0x440d, 0x4751, 0x705c, 0x2ed6, 0x391a, 0x392a,
+  0x4c70, 0x6a51, 0x353e, 0x3815, 0x39a5, 0x40f0, 0x4253, 0x47c1,
+  0x6235, 0x4955, 0x7640, 0x79c4, 0x7a28, 0x2f53, 0x3806, 0x3bfe,
+  0x6010, 0x3cb1, 0x3e2f, 0x3f85, 0x4020, 0x414b, 0x4234, 0x46ff,
+  0x4cf0, 0x4ede, 0x60ce, 0x617f, 0x62d4, 0x688b, 0x6cb8, 0x7000,
+  0x702e, 0x768a, 0x7edb, 0x7bdb, 0x2ee3, 0x33f0, 0x3927, 0x5b2c,
+  0x718d, 0x784c, 0x7df9, 0x4edd, 0x5027, 0x3353, 0x3544, 0x3b85,
+  0x4258, 0x429e, 0x42d3, 0x4ca2, 0x4fef, 0x5422, 0x6a17, 0x7438,
+  0x4fc1, 0x6afe, 0x6338, 0x31e7, 0x66f8, 0x33ea,
+  /* 0x14321..0x1437E */
+  0x33e9, 0x2f46, 0x7054, 0x6fb0, 0x396a, 0x6131, 0x3dfd, 0x5aea,
+  0x6fbf, 0x48da, 0x6c37, 0x52f8, 0x7c48, 0x4a3d, 0x6ab0, 0x2e39,
+  0x3358, 0x3606, 0x3766, 0x42c5, 0x43a2, 0x45e6, 0x4b4e, 0x4de1,
+  0x4e5b, 0x50ad, 0x57ed, 0x5aef, 0x5baa, 0x5dbb, 0x603d, 0x60c6,
+  0x66cb, 0x6a95, 0x735b, 0x36e3, 0x38c7, 0x3f3e, 0x45ad, 0x4696,
+  0x4a80, 0x4bb5, 0x5537, 0x6ac7, 0x3024, 0x57e5, 0x3730, 0x3f1b,
+  0x4065, 0x467a, 0x4c60, 0x55f4, 0x5a1a, 0x5f6e, 0x61f4, 0x6718,
+  0x7045, 0x79b3, 0x5bc9, 0x555c, 0x5af9, 0x5b51, 0x64c4, 0x7010,
+  0x59e9, 0x5a92, 0x6336, 0x3ae1, 0x5740, 0x2e2d, 0x2ef2, 0x3b99,
+  0x3fe0, 0x42bd, 0x463c, 0x47f1, 0x4ce8, 0x666b, 0x6877, 0x6a3b,
+  0x714e, 0x72f3, 0x79d0, 0x4a17, 0x5026, 0x532a, 0x62e7, 0x6457,
+  0x6caf, 0x2e01, 0x3146, 0x31cb, 0x358b, 0x3bf5,
+  /* 0x14421..0x1447E */
+  0x3e16, 0x3e33, 0x3e81, 0x3f14, 0x3f35, 0x3f6b, 0x3fb4, 0x41f2,
+  0x4311, 0x46a2, 0x471d, 0x4f6e, 0x5252, 0x553a, 0x573a, 0x6074,
+  0x6139, 0x6178, 0x6776, 0x6abf, 0x6adc, 0x6d85, 0x6df3, 0x729a,
+  0x7577, 0x7802, 0x7ce5, 0x32c5, 0x4357, 0x56f4, 0x4715, 0x4c88,
+  0x53cd, 0x6cc3, 0x73ae, 0x7673, 0x4d25, 0x389c, 0x490e, 0x49cc,
+  0x6ffd, 0x739a, 0x55db, 0x701a, 0x385a, 0x4802, 0x43b4, 0x49fb,
+  0x2f43, 0x4f2c, 0x47d8, 0x6fbb, 0x6526, 0x5db4, 0x7354, 0x493f,
+  0x4f70, 0x376a, 0x38f7, 0x3b2c, 0x5d2c, 0x522a, 0x340a, 0x71e3,
+  0x7db4, 0x2ead, 0x2f4e, 0x305c, 0x3075, 0x3243, 0x6c9e, 0x3448,
+  0x3824, 0x3b9a, 0x3e1d, 0x3e95, 0x3ead, 0x3ef7, 0x3f1f, 0x408c,
+  0x42b5, 0x433a, 0x43d0, 0x48af, 0x4c40, 0x5887, 0x598e, 0x5a0b,
+  0x5de0, 0x6247, 0x6a02, 0x6ae6, 0x6e44, 0x7013,
+  /* 0x14521..0x1457E */
+  0x70b8, 0x712d, 0x71d8, 0x7f0e, 0x4ce5, 0x4458, 0x44e2, 0x4575,
+  0x4ef4, 0x5684, 0x5b1b, 0x7069, 0x73d1, 0x4eba, 0x34f2, 0x3fb9,
+  0x44a4, 0x6f4d, 0x6fed, 0x7244, 0x3178, 0x386b, 0x3929, 0x3c55,
+  0x3e97, 0x4dfb, 0x5e8f, 0x551c, 0x6cbc, 0x6ee2, 0x785b, 0x50b9,
+  0x2f1d, 0x4bbf, 0x4fb1, 0x5530, 0x76fb, 0x314e, 0x3410, 0x3835,
+  0x3857, 0x39ac, 0x3c60, 0x3f92, 0x4597, 0x475c, 0x4e21, 0x567b,
+  0x63df, 0x6ced, 0x7014, 0x70fd, 0x734d, 0x5825, 0x583a, 0x32aa,
+  0x3ea6, 0x371f, 0x3974, 0x4012, 0x3012, 0x315a, 0x31ac, 0x31cd,
+  0x3200, 0x3510, 0x3854, 0x3858, 0x3957, 0x3b95, 0x3cf6, 0x3d8b,
+  0x40bc, 0x4295, 0x442d, 0x4771, 0x4843, 0x48bc, 0x48df, 0x56d7,
+  0x4dd8, 0x4e6f, 0x4d9b, 0x506f, 0x51c8, 0x3f53, 0x55d8, 0x5977,
+  0x5b49, 0x5b54, 0x5b52, 0x5cd6, 0x5d71, 0x3230,
+  /* 0x14621..0x1467E */
+  0x6463, 0x6569, 0x65e4, 0x6a0e, 0x6b04, 0x6c46, 0x6e0f, 0x7003,
+  0x700f, 0x7419, 0x7676, 0x782d, 0x7a30, 0x75d8, 0x30cd, 0x32d5,
+  0x340c, 0x3802, 0x3c0e, 0x41a7, 0x449e, 0x4d1e, 0x57b3, 0x5ae5,
+  0x60f4, 0x6404, 0x7053, 0x7285, 0x3ce0, 0x7d07, 0x333f, 0x3f97,
+  0x3fb3, 0x4d9c, 0x5279, 0x5763, 0x59bf, 0x5be4, 0x4bd2, 0x52ec,
+  0x6aad, 0x4803, 0x4a61, 0x31f8, 0x5a81, 0x4934, 0x3c4a, 0x7cf6,
+  0x62eb, 0x3bc5, 0x7149, 0x501e, 0x3678, 0x3c6f, 0x40c7, 0x4566,
+  0x4c8c, 0x6c5a, 0x7041, 0x7813, 0x3451, 0x46c7, 0x720d, 0x3948,
+  0x70a3, 0x3185, 0x2e4d, 0x31ea, 0x6599, 0x6b0e, 0x5058, 0x437a,
+  0x734b, 0x4962, 0x79b4, 0x5e04, 0x5577, 0x3357, 0x4960, 0x6edf,
+  0x76e3, 0x4c5d, 0x2e8c, 0x3c3c, 0x3f10, 0x6fe9, 0x3302, 0x6cd1,
+  0x6089, 0x6679, 0x3eff, 0x45e5, 0x2e73, 0x3165,
+  /* 0x14721..0x1477E */
+  0x3982, 0x3c3f, 0x77ee, 0x2efb, 0x398a, 0x3fcd, 0x6a8d, 0x4fe1,
+  0x59b0, 0x5962, 0x3be7, 0x6471, 0x532b, 0x51b1, 0x3e74, 0x3ff5,
+  0x437b, 0x449a, 0x51c3, 0x5c98, 0x2e43, 0x3efc, 0x2e4b, 0x37dc,
+  0x36a2, 0x40a9, 0x4fc3, 0x5d0d, 0x60fd, 0x6133, 0x61bf, 0x6fb2,
+  0x6997, 0x66a4, 0x3df4, 0x428a, 0x44ad, 0x6987, 0x4777, 0x4ce2,
+  0x4d3e, 0x5436, 0x5834, 0x3a46, 0x5f75, 0x62ad, 0x79ac, 0x2ff3,
+  0x3ec3, 0x42dd, 0x4392, 0x4557, 0x476f, 0x56c3, 0x524c, 0x60cc,
+  0x60ba, 0x6f29, 0x714d, 0x300d, 0x37f9, 0x3a92, 0x4885, 0x4973,
+  0x5164, 0x52fd, 0x6cb7, 0x38f2, 0x6ce0, 0x766a, 0x7019, 0x677f,
+  0x59e4, 0x57e7, 0x6429, 0x2f2f, 0x3265, 0x335a, 0x42cd, 0x47cf,
+  0x4cca, 0x567d, 0x5b94, 0x5c95, 0x6236, 0x6584, 0x6feb, 0x46dd,
+  0x4f20, 0x5206, 0x5e1b, 0x63ab, 0x79c1, 0x7ea6,
+  /* 0x14821..0x1487E */
+  0x31fd, 0x5bb1, 0x5872, 0x5bb8, 0x6087, 0x5b48, 0x4ae8, 0x3e61,
+  0x608c, 0x5551, 0x5560, 0x316b, 0x7262, 0x4e8c, 0x567a, 0x7197,
+  0x7aea, 0x2f10, 0x5f70, 0x429c, 0x5b4f, 0x75a5, 0x7ce9, 0x367a,
+  0x3859, 0x66e4, 0x76bc, 0x2f34, 0x3224, 0x334a, 0x33cd, 0x33db,
+  0x3e06, 0x442c, 0x4591, 0x477f, 0x4c3e, 0x4c4e, 0x5248, 0x52af,
+  0x53ed, 0x5554, 0x5e41, 0x622c, 0x65e9, 0x6ca9, 0x5bc4, 0x71c6,
+  0x5169, 0x7812, 0x78ef, 0x433d, 0x4669, 0x556a, 0x56e4, 0x58d0,
+  0x6543, 0x66ee, 0x332a, 0x3351, 0x3426, 0x3983, 0x3e87, 0x3f7c,
+  0x40b2, 0x4249, 0x4279, 0x42ab, 0x4590, 0x4bd4, 0x4ccc, 0x55b2,
+  0x56ae, 0x5891, 0x59d8, 0x5dcb, 0x5f77, 0x60a5, 0x68ab, 0x6ab9,
+  0x6cbb, 0x707f, 0x775e, 0x78db, 0x4a0b, 0x5c38, 0x3099, 0x3c3e,
+  0x3fae, 0x4787, 0x4bd8, 0x5435, 0x5709, 0x5f8e,
+  /* 0x14921..0x1497E */
+  0x7f3b, 0x47ca, 0x5a17, 0x3339, 0x558b, 0x7aed, 0x3f66, 0x619d,
+  0x63f1, 0x6098, 0x3f3c, 0x3fc5, 0x5562, 0x5b46, 0x703c, 0x4867,
+  0x39eb, 0x3a9b, 0x5d10, 0x567e, 0x6b2c, 0x2ff5, 0x3f6a, 0x4a19,
+  0x4c37, 0x4f02, 0x54e2, 0x5968, 0x6868, 0x6a55, 0x6c79, 0x3edf,
+  0x43cf, 0x55c5, 0x59d2, 0x62d7, 0x7328, 0x72f2, 0x649c, 0x66ed,
+  0x7c2d, 0x34c1, 0x3f6c, 0x458c, 0x4d5c, 0x5015, 0x6ca7, 0x6cd3,
+  0x783b, 0x454f, 0x54f6, 0x2e0d, 0x2ed8, 0x37e0, 0x392b, 0x3a66,
+  0x3bcc, 0x31a8, 0x3e03, 0x3e9c, 0x4016, 0x4276, 0x4577, 0x45a7,
+  0x466e, 0x4d6e, 0x5236, 0x5b26, 0x6150, 0x619a, 0x6299, 0x6b5c,
+  0x6ca0, 0x6ce6, 0x6d74, 0x761c, 0x7644, 0x2fae, 0x44ab, 0x4b66,
+  0x621e, 0x6461, 0x656a, 0x70e8, 0x3c01, 0x4953, 0x78a8, 0x647a,
+  0x6557, 0x2f0f, 0x326f, 0x3fa9, 0x3e45, 0x470d,
+  /* 0x14A21..0x14A7E */
+  0x598f, 0x6179, 0x6907, 0x6986, 0x4df5, 0x3f17, 0x4255, 0x4cb8,
+  0x2ecf, 0x5269, 0x7b92, 0x3206, 0x343b, 0x3674, 0x38b3, 0x41a4,
+  0x426e, 0x511a, 0x396e, 0x5c89, 0x5cde, 0x5d1b, 0x76f0, 0x4587,
+  0x605e, 0x2e19, 0x2f75, 0x3175, 0x3840, 0x3e63, 0x3e73, 0x3f0a,
+  0x47c4, 0x2e26, 0x653d, 0x7589, 0x765b, 0x5c73, 0x7801, 0x30fb,
+  0x38c1, 0x5656, 0x58a7, 0x3225, 0x57a5, 0x6511, 0x5b86, 0x304f,
+  0x3909, 0x5247, 0x5bc7, 0x5de8, 0x6fba, 0x6fd4, 0x704d, 0x2fbf,
+  0x32c9, 0x3a29, 0x3f01, 0x77ad, 0x2fdd, 0x6217, 0x72ea, 0x3703,
+  0x4355, 0x4b69, 0x552b, 0x68dc, 0x6f14, 0x5a42, 0x32df, 0x3893,
+  0x4155, 0x420a, 0x46ae, 0x4bcd, 0x5c3f, 0x63e9, 0x3023, 0x2ff8,
+  0x3305, 0x3446, 0x3831, 0x3949, 0x3b9d, 0x3cf0, 0x3cef, 0x3d29,
+  0x3e96, 0x42b1, 0x4367, 0x453e, 0x45b9, 0x470b,
+  /* 0x14B21..0x14B7E */
+  0x4cd5, 0x4ce1, 0x50f9, 0x5832, 0x5e2b, 0x60de, 0x62b3, 0x640c,
+  0x64ec, 0x6702, 0x6912, 0x6a2a, 0x6c4a, 0x70a6, 0x72d2, 0x78fd,
+  0x7cf3, 0x7d6c, 0x2e4f, 0x2ea1, 0x308d, 0x3256, 0x374a, 0x39a8,
+  0x3e3d, 0x3fd8, 0x3fd9, 0x423f, 0x46b4, 0x471b, 0x47d0, 0x48d2,
+  0x3192, 0x5d21, 0x60aa, 0x61a8, 0x6b00, 0x6c8c, 0x6cbf, 0x727e,
+  0x7632, 0x3420, 0x782c, 0x3317, 0x30d5, 0x335c, 0x38a8, 0x44b2,
+  0x4734, 0x5267, 0x5766, 0x5a46, 0x71e6, 0x32c3, 0x4ca1, 0x4b86,
+  0x3800, 0x3e4c, 0x3954, 0x472c, 0x5ffb, 0x31e1, 0x56c6, 0x4469,
+  0x58e8, 0x7b54, 0x7ebb, 0x37cb, 0x39b9, 0x4627, 0x479a, 0x4bce,
+  0x34e9, 0x49d9, 0x3e55, 0x619c, 0x4795, 0x7baa, 0x47fe, 0x7c52,
+  0x485d, 0x2ea6, 0x2fe3, 0x33c8, 0x42b9, 0x472b, 0x4cab, 0x6fc4,
+  0x2fad, 0x5e6d, 0x7ebf, 0x2e07, 0x4162, 0x4e80,
+  /* 0x14C21..0x14C7E */
+  0x4f2b, 0x6513, 0x3473, 0x472a, 0x7b45, 0x3df3, 0x5b95, 0x3cac,
+  0x3bc6, 0x671c, 0x4e4a, 0x64d1, 0x5a14, 0x6108, 0x3999, 0x5c8d,
+  0x4c11, 0x5720, 0x32d9, 0x3922, 0x5121, 0x525f, 0x57db, 0x7727,
+  0x7d61, 0x490b, 0x3a7f, 0x3a18, 0x31a5, 0x340d, 0x347d, 0x460e,
+  0x56df, 0x6ff7, 0x7298, 0x7cf4, 0x39ea, 0x525d, 0x4ec5, 0x314d,
+  0x48c9, 0x5dbf, 0x5dec, 0x7762, 0x7eba, 0x4478, 0x4a21, 0x6302,
+  0x3984, 0x3b5f, 0x4bdb, 0x531b, 0x56f2, 0x5db2, 0x6017, 0x6499,
+  0x3132, 0x4728, 0x7ed9, 0x56ee, 0x4762, 0x32ff, 0x7905, 0x3c24,
+  0x423b, 0x5c7e, 0x6cb0, 0x354f, 0x40b6, 0x5d0b, 0x7580, 0x3301,
+  0x2e5f, 0x31b6, 0x391c, 0x523a, 0x6036, 0x71ce, 0x3f25, 0x57e2,
+  0x3384, 0x3f79, 0x5d04, 0x65ac, 0x6a33, 0x6e8d, 0x7756, 0x47f3,
+  0x65ae, 0x7453, 0x4109, 0x4108, 0x4cb9, 0x5652,
+  /* 0x14D21..0x14D7E */
+  0x6aed, 0x6f38, 0x352f, 0x2f51, 0x312a, 0x32c7, 0x33cb, 0x3ba5,
+  0x3e7d, 0x40a0, 0x4182, 0x43d6, 0x4709, 0x47da, 0x4e67, 0x4d8c,
+  0x5336, 0x5337, 0x5531, 0x5950, 0x68d5, 0x6a98, 0x704a, 0x7091,
+  0x70f5, 0x76c4, 0x678d, 0x3915, 0x2e88, 0x2f59, 0x2e0e, 0x6a89,
+  0x6f3f, 0x7810, 0x30ad, 0x3e7c, 0x3996, 0x3bb9, 0x3eb8, 0x43da,
+  0x43fa, 0x44c1, 0x46dc, 0x494a, 0x49d8, 0x4d0b, 0x4eb6, 0x5194,
+  0x5528, 0x5aaf, 0x5f8a, 0x6000, 0x6449, 0x64c9, 0x6981, 0x6b21,
+  0x6e0a, 0x7065, 0x767d, 0x790a, 0x417e, 0x4291, 0x4b32, 0x4c83,
+  0x4d74, 0x5fcc, 0x5ffc, 0x4dc0, 0x5f85, 0x67ba, 0x68f8, 0x4765,
+  0x63b1, 0x783c, 0x76f7, 0x4d1b, 0x5d61, 0x643d, 0x716a, 0x2e71,
+  0x3375, 0x3d50, 0x4b04, 0x4feb, 0x65cd, 0x662d, 0x69a7, 0x3229,
+  0x340f, 0x3c65, 0x474e, 0x48a8, 0x5406, 0x5483,
+  /* 0x14E21..0x14E7E */
+  0x55e2, 0x68cf, 0x68e1, 0x71cc, 0x76e2, 0x7678, 0x3f8b, 0x5387,
+  0x5acb, 0x644e, 0x43a0, 0x5565, 0x3289, 0x4d41, 0x4e9c, 0x5409,
+  0x5559, 0x586b, 0x5c92, 0x7686, 0x5adc, 0x7f8d, 0x2fb6, 0x416e,
+  0x45c5, 0x665c, 0x2e86, 0x2eae, 0x30da, 0x2e21, 0x31cc, 0x3bee,
+  0x4599, 0x4881, 0x4dbc, 0x531f, 0x5642, 0x57ad, 0x5a1c, 0x5ce7,
+  0x626f, 0x6ad2, 0x707c, 0x71cf, 0x7675, 0x7818, 0x329b, 0x5dd1,
+  0x302b, 0x3398, 0x4797, 0x4dcb, 0x51d0, 0x5433, 0x61e8, 0x6f2a,
+  0x76a3, 0x7c57, 0x7e9f, 0x5460, 0x3841, 0x4d99, 0x5d2f, 0x785e,
+  0x2ee4, 0x2f36, 0x2f8b, 0x31b7, 0x32b1, 0x3dba, 0x401c, 0x53b2,
+  0x593c, 0x62d3, 0x7234, 0x76b7, 0x76f6, 0x770a, 0x7e97, 0x7f62,
+  0x46a6, 0x4b74, 0x3217, 0x32a3, 0x50c8, 0x68c2, 0x3ec9, 0x404b,
+  0x4190, 0x4f23, 0x5149, 0x5c3e, 0x5df4, 0x606f,
+  /* 0x14F21..0x14F7E */
+  0x64ee, 0x7023, 0x732c, 0x3442, 0x7b6f, 0x4ad3, 0x5089, 0x6cc2,
+  0x6def, 0x7732, 0x32b4, 0x3a41, 0x3eca, 0x3f04, 0x4717, 0x497c,
+  0x4994, 0x4d6a, 0x4f0f, 0x5262, 0x52fc, 0x5bed, 0x6001, 0x607e,
+  0x674b, 0x70ce, 0x316d, 0x7e93, 0x5984, 0x608b, 0x7332, 0x6ad6,
+  0x302d, 0x348c, 0x6a71, 0x4b6a, 0x6cc4, 0x6107, 0x40d1, 0x47a0,
+  0x7df2, 0x2e99, 0x2e98, 0x7c10, 0x6a6b, 0x65c1, 0x6568, 0x4900,
+  0x4e7e, 0x5897, 0x6155, 0x8e9f, 0x3b41, 0x3b56, 0x3b7d, 0x3b93,
+  0x3bd8, 0x3bec, 0x3c12, 0x3c1e, 0x3c23, 0x3c2b, 0x178d, 0x3c62,
+  0x813b, 0x813c, 0x96b4, 0x3c7a, 0x3c8f, 0x3c9f, 0x3ca3, 0x3caa,
+  0x3cba, 0x3ccb, 0x3cd0, 0x3cd2, 0x3cf4, 0x9c34, 0x17e2, 0x3d0d,
+  0x3d27, 0x8111, 0x3d46, 0x3d47, 0x3d53, 0x3d4a, 0x3d6d, 0x3d81,
+  0x3da0, 0x3da4, 0x3da7, 0x3db8, 0x3dcb, 0x341e,
+  /* 0x15021..0x1507E */
+  0x3f0c, 0x2e10, 0x2e15, 0x2e2a, 0x2e31, 0x2e36, 0x2e3c, 0x2e3f,
+  0x2e42, 0x2e56, 0x2e58, 0x2e82, 0x2e85, 0x6c6b, 0x2e8a, 0x6212,
+  0x3f0d, 0x2e8e, 0x2e9e, 0x2e9f, 0x2ea0, 0x2ea2, 0x2eb0, 0x2eb3,
+  0x2eb6, 0x2ece, 0x2ecd, 0x2ec4, 0x2ec6, 0x2ec2, 0x2ed7, 0x2ede,
+  0x2eed, 0x2edf, 0x2ef7, 0x2f09, 0x2f5a, 0x2f30, 0x2f5b, 0x2f5d,
+  0x2f57, 0x2f47, 0x2f76, 0x2f88, 0x2f8f, 0x2f98, 0x2f7b, 0x2f69,
+  0x2f70, 0x2f91, 0x2f6f, 0x2f86, 0x2f96, 0x3118, 0x2fd4, 0x2fdf,
+  0x2fce, 0x2fd8, 0x2fdb, 0x2fd1, 0x2fda, 0x2fd0, 0x2fe4, 0x2fe5,
+  0x301a, 0x3028, 0x3014, 0x302a, 0x3025, 0x3005, 0x2f1c, 0x2ff6,
+  0x3021, 0x3029, 0x302c, 0x2ffe, 0x2fef, 0x3011, 0x3006, 0x3043,
+  0x3047, 0x4703, 0x3055, 0x3050, 0x3048, 0x305a, 0x3056, 0x306c,
+  0x3078, 0x3080, 0x309a, 0x3085, 0x30b4, 0x30b2,
+  /* 0x15121..0x1517E */
+  0x30c9, 0x30ca, 0x30b3, 0x30c2, 0x30d6, 0x30de, 0x30e5, 0x30ed,
+  0x30e3, 0x30ee, 0x30f9, 0x30f5, 0x3109, 0x3101, 0x3102, 0x3116,
+  0x3115, 0x3114, 0x311a, 0x3121, 0x313a, 0x3137, 0x313c, 0x313b,
+  0x313f, 0x3140, 0x3152, 0x314c, 0x3154, 0x3162, 0x5af8, 0x3169,
+  0x316a, 0x316e, 0x3180, 0x3182, 0x36d8, 0x318c, 0x3189, 0x318f,
+  0x3191, 0x3193, 0x3195, 0x3196, 0x31a4, 0x31a6, 0x31a2, 0x31a9,
+  0x31aa, 0x31ab, 0x31b3, 0x31b1, 0x31b2, 0x31b0, 0x31b5, 0x31bd,
+  0x31c5, 0x31c9, 0x31db, 0x31e0, 0x6655, 0x31e9, 0x31ed, 0x31f0,
+  0x31f5, 0x31fe, 0x3204, 0x320b, 0x3214, 0x320e, 0x3227, 0x322a,
+  0x322e, 0x3233, 0x3239, 0x324f, 0x3244, 0x324b, 0x324c, 0x325e,
+  0x3254, 0x326a, 0x3274, 0x3269, 0x3273, 0x327f, 0x327d, 0x328d,
+  0x3294, 0x3292, 0x3271, 0x3288, 0x3291, 0x6fa8,
+  /* 0x15221..0x1527E */
+  0x6fa7, 0x32ac, 0x32ad, 0x32bc, 0x32b5, 0x32c1, 0x32cd, 0x32d7,
+  0x32de, 0x32e3, 0x32e6, 0x78ed, 0x32e0, 0x32f3, 0x32f5, 0x32f8,
+  0x32f9, 0x3306, 0x3308, 0x5538, 0x330d, 0x3310, 0x330f, 0x3315,
+  0x331a, 0x3323, 0x332f, 0x3331, 0x3333, 0x3338, 0x3340, 0x3346,
+  0x3345, 0x2e17, 0x3349, 0x334d, 0x31d6, 0x335e, 0x3369, 0x336e,
+  0x3918, 0x337b, 0x3377, 0x3382, 0x3396, 0x33a0, 0x33a6, 0x33a5,
+  0x33ae, 0x33b0, 0x33b6, 0x33c3, 0x5c12, 0x76d9, 0x33df, 0x46fc,
+  0x51ee, 0x33ee, 0x33e8, 0x33ed, 0x33fa, 0x3401, 0x343d, 0x3440,
+  0x342c, 0x342d, 0x343c, 0x342e, 0x3436, 0x3429, 0x341d, 0x344e,
+  0x348f, 0x3475, 0x348e, 0x345f, 0x3471, 0x3477, 0x3470, 0x3492,
+  0x347b, 0x3480, 0x3476, 0x3484, 0x3490, 0x3486, 0x34c7, 0x34a2,
+  0x34b8, 0x34a5, 0x34ac, 0x34c4, 0x34c8, 0x34a8,
+  /* 0x15321..0x1537E */
+  0x34ab, 0x34c2, 0x34a4, 0x34be, 0x34bc, 0x34d8, 0x34e5, 0x34e6,
+  0x350f, 0x3514, 0x34fd, 0x34ee, 0x34ed, 0x34fa, 0x34e2, 0x3539,
+  0x3540, 0x3563, 0x354c, 0x352e, 0x355c, 0x3545, 0x3556, 0x3557,
+  0x3538, 0x3533, 0x355d, 0x3599, 0x3580, 0x34af, 0x358a, 0x359f,
+  0x357b, 0x357e, 0x3598, 0x359e, 0x35ae, 0x357c, 0x3583, 0x35a9,
+  0x3587, 0x35a8, 0x35da, 0x35c5, 0x35df, 0x35c4, 0x35dc, 0x35e4,
+  0x35d4, 0x3614, 0x35f7, 0x3616, 0x35fe, 0x35fd, 0x361b, 0x35f9,
+  0x364e, 0x3650, 0x51df, 0x3634, 0x3636, 0x3632, 0x3638, 0x366b,
+  0x3664, 0x362f, 0x366c, 0x366a, 0x3686, 0x3680, 0x368a, 0x36a0,
+  0x3694, 0x368f, 0x36a5, 0x36ae, 0x36b6, 0x36b4, 0x36c2, 0x36bc,
+  0x36c1, 0x36c3, 0x36c0, 0x36c8, 0x36ce, 0x36d1, 0x36d3, 0x36d7,
+  0x36ee, 0x36f9, 0x3700, 0x36ff, 0x3704, 0x3709,
+  /* 0x15421..0x1547E */
+  0x3708, 0x370b, 0x370d, 0x3713, 0x3718, 0x3716, 0x35c7, 0x371c,
+  0x3726, 0x3737, 0x3738, 0x374e, 0x373b, 0x3740, 0x374f, 0x3769,
+  0x37c0, 0x3788, 0x3761, 0x377f, 0x3789, 0x3793, 0x37a0, 0x37b3,
+  0x37a4, 0x37aa, 0x37b0, 0x37c3, 0x37c6, 0x37d4, 0x37d2, 0x37d3,
+  0x380a, 0x37d6, 0x37e3, 0x380b, 0x3819, 0x381d, 0x3872, 0x3821,
+  0x3862, 0x384b, 0x3870, 0x4bc0, 0x3852, 0x383d, 0x3879, 0x3885,
+  0x38b9, 0x389f, 0x38ab, 0x38ba, 0x38de, 0x38bb, 0x38b8, 0x38ae,
+  0x38c5, 0x38d3, 0x38d1, 0x38d7, 0x38d9, 0x38d8, 0x38e5, 0x38dc,
+  0x38e4, 0x38df, 0x38ef, 0x38fa, 0x38f9, 0x38fb, 0x38fc, 0x38fd,
+  0x3902, 0x390a, 0x3910, 0x391b, 0x48a6, 0x3925, 0x392c, 0x392d,
+  0x3932, 0x3938, 0x393e, 0x5ad2, 0x3955, 0x3950, 0x394e, 0x395a,
+  0x3958, 0x3962, 0x3960, 0x3967, 0x396c, 0x3969,
+  /* 0x15521..0x1557E */
+  0x3978, 0x3981, 0x399d, 0x2f5e, 0x2fab, 0x39a3, 0x39b2, 0x39c6,
+  0x39e8, 0x39dc, 0x398d, 0x39d9, 0x39da, 0x3a25, 0x3a1f, 0x3a11,
+  0x3a1c, 0x3a09, 0x3a1a, 0x3a40, 0x3a6c, 0x3a49, 0x3a35, 0x3a36,
+  0x3a62, 0x3a6a, 0x3a9a, 0x3abc, 0x3abe, 0x3acb, 0x3ac2, 0x3abd,
+  0x3ae3, 0x3ad7, 0x3ae6, 0x3ae9, 0x3ad6, 0x3afa, 0x3afb, 0x3b0c,
+  0x3b0b, 0x3b16, 0x3b32, 0x3ad0, 0x3b2a, 0x3b36, 0x3b3e, 0x3b43,
+  0x3b45, 0x3b40, 0x3b51, 0x3b55, 0x3b5a, 0x3b5b, 0x3b65, 0x3b69,
+  0x3b70, 0x3b73, 0x3b75, 0x3b78, 0x4588, 0x3b7a, 0x3b80, 0x3b83,
+  0x3ba6, 0x3bb8, 0x3bc3, 0x3bc7, 0x3bc9, 0x3bd4, 0x3bd0, 0x3be4,
+  0x3be6, 0x3be2, 0x3bde, 0x3be5, 0x3beb, 0x3bf0, 0x3bf6, 0x3bf3,
+  0x3c05, 0x3c07, 0x3c08, 0x3c0d, 0x3c13, 0x3c20, 0x3c22, 0x3c28,
+  0x3c38, 0x3c39, 0x3c41, 0x3c46, 0x3c4e, 0x3c53,
+  /* 0x15621..0x1567E */
+  0x3c50, 0x3c4f, 0x3b71, 0x3c6c, 0x3c6e, 0x2e62, 0x3c76, 0x3c79,
+  0x3c8c, 0x3c91, 0x3c94, 0x399b, 0x3cab, 0x3cbb, 0x3cb6, 0x3cbc,
+  0x3cb7, 0x3cc5, 0x3cbe, 0x3cc7, 0x3cd9, 0x3ce9, 0x3cfd, 0x3cfa,
+  0x3ced, 0x3d8c, 0x3cea, 0x3d0b, 0x3d15, 0x3d17, 0x3d5c, 0x3d1f,
+  0x3d1b, 0x3d11, 0x3d14, 0x3d22, 0x3d1a, 0x3d19, 0x3d18, 0x3d4c,
+  0x3d52, 0x3d4e, 0x3d4b, 0x3d6c, 0x3d73, 0x3d76, 0x3d87, 0x3d84,
+  0x3d82, 0x3da2, 0x3d9d, 0x3dac, 0x3dae, 0x3dbd, 0x3d90, 0x3db7,
+  0x3dbc, 0x3dc9, 0x3dcd, 0x3dd3, 0x3dd2, 0x3dd6, 0x3ddb, 0x3deb,
+  0x3df2, 0x3df5, 0x3e0b, 0x3e1a, 0x3e19, 0x3e11, 0x3e1b, 0x3e36,
+  0x3e37, 0x3e44, 0x3e43, 0x3e40, 0x3e4e, 0x3e57, 0x3e54, 0x3e5f,
+  0x3e62, 0x3e64, 0x3e47, 0x3e75, 0x3e76, 0x3e7a, 0x7ebc, 0x3e7f,
+  0x3ea0, 0x3ec1, 0x3ec2, 0x3ec8, 0x3ed0, 0x3ecf,
+  /* 0x15721..0x1577E */
+  0x3ed6, 0x3ee3, 0x3edd, 0x3eda, 0x3edb, 0x3ee2, 0x3ee1, 0x3ee8,
+  0x3ee9, 0x3eec, 0x3ef1, 0x3ef3, 0x3ef0, 0x3ef4, 0x3ef8, 0x3efe,
+  0x3f03, 0x3f09, 0x3f5d, 0x3f5c, 0x3f0b, 0x3f11, 0x3f16, 0x3f29,
+  0x3f2d, 0x3f38, 0x3f41, 0x3f48, 0x3f4c, 0x3f4e, 0x3f2f, 0x3f51,
+  0x3f56, 0x3f57, 0x3f59, 0x3f61, 0x3f6d, 0x3f73, 0x3f77, 0x3f83,
+  0x3f82, 0x3f7f, 0x3f8a, 0x3f88, 0x3f91, 0x3f87, 0x3f9e, 0x3f99,
+  0x3f98, 0x3fa0, 0x3fa8, 0x3fad, 0x3fbc, 0x3fd6, 0x3ffb, 0x3fe4,
+  0x3ff8, 0x3ff1, 0x3fdd, 0x40b3, 0x3fff, 0x4021, 0x4060, 0x4019,
+  0x4010, 0x4029, 0x400e, 0x4031, 0x401b, 0x4015, 0x402b, 0x4026,
+  0x400f, 0x403a, 0x405a, 0x4041, 0x406a, 0x4077, 0x405f, 0x404a,
+  0x4046, 0x404d, 0x4063, 0x4043, 0x4064, 0x4042, 0x406c, 0x406b,
+  0x4059, 0x4081, 0x408d, 0x40e7, 0x4083, 0x409a,
+  /* 0x15821..0x1587E */
+  0x4084, 0x409b, 0x4096, 0x4097, 0x4092, 0x40a7, 0x408b, 0x40e1,
+  0x40b8, 0x40e0, 0x40d3, 0x40b4, 0x3ff0, 0x40bd, 0x40c6, 0x40b5,
+  0x40d8, 0x414d, 0x4115, 0x4106, 0x40f6, 0x40f7, 0x4100, 0x40f4,
+  0x40fa, 0x4103, 0x4121, 0x40fb, 0x40f1, 0x410d, 0x410e, 0x4147,
+  0x413e, 0x4128, 0x4127, 0x414a, 0x413f, 0x413c, 0x412c, 0x4134,
+  0x413d, 0x4142, 0x4144, 0x4173, 0x4177, 0x4158, 0x4159, 0x415a,
+  0x416b, 0x4174, 0x416f, 0x4165, 0x4171, 0x415f, 0x415d, 0x4153,
+  0x4175, 0x4199, 0x4196, 0x4187, 0x41ac, 0x4194, 0x419a, 0x418a,
+  0x4191, 0x41ab, 0x41ae, 0x41cc, 0x41ca, 0x41c9, 0x41f7, 0x41c8,
+  0x41c3, 0x41c6, 0x41ba, 0x41cb, 0x5f79, 0x41cd, 0x41e6, 0x41e3,
+  0x41f6, 0x41fa, 0x41f4, 0x41ff, 0x41fd, 0x41fc, 0x41fe, 0x4200,
+  0x4208, 0x4209, 0x420d, 0x420c, 0x4214, 0x421b,
+  /* 0x15921..0x1597E */
+  0x421e, 0x4221, 0x422a, 0x422e, 0x4230, 0x4232, 0x4233, 0x4241,
+  0x424e, 0x425e, 0x4263, 0x425b, 0x4260, 0x4268, 0x427c, 0x4282,
+  0x4289, 0x427e, 0x4292, 0x4293, 0x4296, 0x42d4, 0x4283, 0x4294,
+  0x42d7, 0x42d1, 0x42bb, 0x42cf, 0x42ff, 0x42c6, 0x44d4, 0x42c8,
+  0x42dc, 0x42cc, 0x42ca, 0x42c2, 0x42c7, 0x429b, 0x42c9, 0x430c,
+  0x42ee, 0x42f1, 0x4327, 0x4302, 0x4308, 0x42ef, 0x42f5, 0x4350,
+  0x433e, 0x434d, 0x441c, 0x434f, 0x4396, 0x438e, 0x4380, 0x43ab,
+  0x4376, 0x43a3, 0x438f, 0x4389, 0x439f, 0x43b5, 0x436b, 0x4369,
+  0x43be, 0x43e9, 0x43c0, 0x43c6, 0x43e3, 0x43c9, 0x43d2, 0x43f6,
+  0x43c4, 0x4416, 0x4434, 0x4406, 0x4413, 0x4426, 0x4436, 0x451d,
+  0x4417, 0x4428, 0x440f, 0x4467, 0x446f, 0x4476, 0x444e, 0x452a,
+  0x4495, 0x4493, 0x44a5, 0x44a9, 0x4488, 0x44bc,
+  /* 0x15A21..0x15A7E */
+  0x44da, 0x44d2, 0x44c5, 0x44c7, 0x44bb, 0x44d8, 0x44c2, 0x44f1,
+  0x44e7, 0x6209, 0x44e0, 0x44e1, 0x42ac, 0x44e3, 0x44ef, 0x452c,
+  0x44f6, 0x44f4, 0x44f2, 0x44fa, 0x4500, 0x44fd, 0x4518, 0x451c,
+  0x4505, 0x4524, 0x4523, 0x452b, 0x4534, 0x4535, 0x4537, 0x4536,
+  0x4538, 0x554b, 0x4548, 0x4556, 0x4555, 0x454d, 0x4558, 0x455e,
+  0x455d, 0x4572, 0x4578, 0x4582, 0x4583, 0x6b8a, 0x459b, 0x459f,
+  0x45ab, 0x45b7, 0x45c3, 0x45c6, 0x45c1, 0x45c4, 0x45cc, 0x45d2,
+  0x45db, 0x45d9, 0x45e0, 0x45e1, 0x45f1, 0x4772, 0x460a, 0x4603,
+  0x45fb, 0x4773, 0x4635, 0x4636, 0x4634, 0x461c, 0x464f, 0x4644,
+  0x4649, 0x4641, 0x465e, 0x465d, 0x4664, 0x4667, 0x4668, 0x465f,
+  0x4662, 0x4670, 0x4683, 0x4688, 0x468e, 0x4689, 0x4684, 0x4698,
+  0x469d, 0x46c1, 0x46b9, 0x46c9, 0x46be, 0x46bc,
+  /* 0x15B21..0x15B7E */
+  0x46c4, 0x46b8, 0x46d6, 0x46da, 0x46e0, 0x463f, 0x46e6, 0x46e9,
+  0x46f0, 0x46f5, 0x46f7, 0x470f, 0x4716, 0x471e, 0x4726, 0x4727,
+  0x7738, 0x472e, 0x473f, 0x4736, 0x4741, 0x4738, 0x4737, 0x4746,
+  0x475e, 0x4760, 0x4759, 0x4763, 0x4764, 0x4789, 0x4770, 0x47a9,
+  0x477c, 0x476a, 0x478c, 0x478b, 0x47a6, 0x47a1, 0x4785, 0x47b7,
+  0x47ef, 0x47b4, 0x47ec, 0x47b3, 0x47e9, 0x47b8, 0x47e4, 0x47de,
+  0x47dd, 0x47e2, 0x47ee, 0x47b9, 0x47ce, 0x47c6, 0x47e7, 0x4a9c,
+  0x481e, 0x4846, 0x4829, 0x4840, 0x484d, 0x4832, 0x484e, 0x48b3,
+  0x482b, 0x4859, 0x4863, 0x4877, 0x487f, 0x489f, 0x488f, 0x48ad,
+  0x4894, 0x489d, 0x489b, 0x4883, 0x4aae, 0x48b9, 0x4874, 0x48b5,
+  0x48a0, 0x48ba, 0x490f, 0x488d, 0x487e, 0x4901, 0x48ca, 0x4908,
+  0x48d8, 0x4922, 0x4926, 0x48e1, 0x490c, 0x48cd,
+  /* 0x15C21..0x15C7E */
+  0x48d4, 0x48e7, 0x48d5, 0x4936, 0x4912, 0x4904, 0x48d7, 0x48e3,
+  0x4925, 0x48f9, 0x48e0, 0x48ef, 0x4928, 0x492a, 0x491a, 0x4923,
+  0x4921, 0x48c6, 0x4979, 0x4977, 0x495c, 0x4978, 0x496b, 0x4954,
+  0x497e, 0x496e, 0x4939, 0x4974, 0x493d, 0x4959, 0x4930, 0x4961,
+  0x495e, 0x495d, 0x4981, 0x496a, 0x49b2, 0x49ae, 0x49d0, 0x49bf,
+  0x49c1, 0x49d3, 0x49be, 0x49ce, 0x3be8, 0x49ca, 0x49dd, 0x49bb,
+  0x49c3, 0x49a7, 0x4a2e, 0x4991, 0x49a0, 0x499c, 0x4995, 0x49b4,
+  0x49de, 0x49e8, 0x4a02, 0x4a1b, 0x49ff, 0x4b0a, 0x49f9, 0x49f2,
+  0x49e7, 0x4a05, 0x49b1, 0x4a1e, 0x49ed, 0x4a14, 0x49eb, 0x4a0a,
+  0x4a12, 0x4ac1, 0x4a23, 0x4a13, 0x4a44, 0x4a0c, 0x4a72, 0x4a36,
+  0x4a78, 0x4a47, 0x4a62, 0x4a59, 0x4a66, 0x4a48, 0x4a38, 0x4a22,
+  0x4a90, 0x4a8d, 0x4aa0, 0x4a84, 0x4aa2, 0x4aa3,
+  /* 0x15D21..0x15D7E */
+  0x4a97, 0x6617, 0x4abb, 0x4ac3, 0x4ac2, 0x4ab8, 0x4ab3, 0x4aac,
+  0x4ade, 0x4ad1, 0x4adf, 0x4aaa, 0x4ada, 0x4aea, 0x4afb, 0x4b05,
+  0x6616, 0x4afa, 0x4b12, 0x4b16, 0x7b31, 0x4b1f, 0x4b38, 0x4b37,
+  0x56dc, 0x4b39, 0x78ee, 0x4b47, 0x4b43, 0x4b49, 0x4b50, 0x4b59,
+  0x4b54, 0x4b5b, 0x4b5f, 0x4b61, 0x4b78, 0x4b79, 0x4b7f, 0x4b80,
+  0x4b84, 0x4b83, 0x4b8d, 0x4b98, 0x4b95, 0x4b9e, 0x4ba4, 0x4baa,
+  0x4bab, 0x4baf, 0x4bb2, 0x4bb1, 0x4bb3, 0x4bb7, 0x4bbc, 0x4bc6,
+  0x4bcb, 0x4bd3, 0x4bdf, 0x4bec, 0x4beb, 0x4bf3, 0x4bef, 0x7ebe,
+  0x4c08, 0x4c13, 0x4c14, 0x4c1b, 0x4c24, 0x4c23, 0x4c5e, 0x4c55,
+  0x4c62, 0x4c6a, 0x4c82, 0x4c8d, 0x4c9a, 0x4c81, 0x4c9b, 0x4c7e,
+  0x4c68, 0x4c73, 0x4c92, 0x4c90, 0x4cc4, 0x4cf1, 0x4cd3, 0x4cbd,
+  0x4cd7, 0x4cc5, 0x4cdd, 0x4cae, 0x4cb1, 0x4cbe,
+  /* 0x15E21..0x15E7E */
+  0x4cba, 0x4cdb, 0x4cef, 0x4cd9, 0x4cea, 0x4d1f, 0x684d, 0x4d36,
+  0x4d2b, 0x4d3d, 0x4d38, 0x4d19, 0x4d35, 0x4d33, 0x4d12, 0x4d0c,
+  0x4d63, 0x4d93, 0x4d64, 0x4d5a, 0x4d79, 0x4d59, 0x4d8e, 0x4d95,
+  0x4fe4, 0x4d85, 0x4df9, 0x4e15, 0x4e0a, 0x4db5, 0x4dc7, 0x4de6,
+  0x4db8, 0x4dc6, 0x4dec, 0x4dde, 0x4dcc, 0x4de8, 0x4dd2, 0x4dc5,
+  0x4dfa, 0x4dd9, 0x4de4, 0x4dd5, 0x4dea, 0x4dee, 0x4e2d, 0x4e6e,
+  0x4e2e, 0x4e19, 0x4e72, 0x4e5f, 0x4e3e, 0x4e23, 0x4e6b, 0x4e2b,
+  0x4e76, 0x4e4d, 0x4e1f, 0x4e43, 0x4e3a, 0x4e4e, 0x4e24, 0x4eff,
+  0x4e1d, 0x4e38, 0x4e82, 0x4eaa, 0x4e98, 0x4ec9, 0x4eb7, 0x4ed3,
+  0x4ebd, 0x4eaf, 0x4ec4, 0x4eb2, 0x4ed4, 0x4ed5, 0x4e8f, 0x4ea5,
+  0x4ec2, 0x4e9f, 0x4f41, 0x4f11, 0x504c, 0x4eec, 0x4ef8, 0x4efe,
+  0x4f3f, 0x4ef2, 0x4f31, 0x4eef, 0x4f32, 0x4ecc,
+  /* 0x15F21..0x15F7E */
+  0x4f3e, 0x4f13, 0x4ef7, 0x4f86, 0x4f7a, 0x4f78, 0x4f81, 0x4f80,
+  0x4f6f, 0x4f5b, 0x4ff3, 0x4f6d, 0x4f82, 0x4f7c, 0x4f58, 0x4f8e,
+  0x4f91, 0x4fc2, 0x4f66, 0x4fb3, 0x4fa3, 0x4fa1, 0x4fa4, 0x4fb9,
+  0x4fc6, 0x4faa, 0x4fdf, 0x4fd5, 0x4fec, 0x4fd4, 0x4fd8, 0x4ff1,
+  0x4fee, 0x4fdb, 0x5009, 0x500b, 0x4ffa, 0x5011, 0x5001, 0x500f,
+  0x4ffe, 0x501b, 0x501a, 0x4f74, 0x501d, 0x5018, 0x501f, 0x5030,
+  0x503e, 0x5032, 0x5051, 0x5063, 0x5099, 0x5092, 0x50af, 0x50f1,
+  0x50ac, 0x50b8, 0x50b3, 0x50ae, 0x50df, 0x50cb, 0x50dd, 0x50d9,
+  0x5109, 0x50fd, 0x511c, 0x5119, 0x5165, 0x5155, 0x5188, 0x5166,
+  0x5162, 0x514c, 0x5156, 0x516c, 0x518f, 0x51fb, 0x5184, 0x5195,
+  0x51a8, 0x51ac, 0x51d7, 0x51b9, 0x51be, 0x51d2, 0x51c9, 0x51d4,
+  0x51ce, 0x51e0, 0x51ec, 0x51e7, 0x51f5, 0x51fc,
+  /* 0x16021..0x1607E */
+  0x51f9, 0x51ff, 0x520d, 0x5210, 0x521b, 0x5228, 0x522d, 0x522c,
+  0x5230, 0x5232, 0x523b, 0x523c, 0x523f, 0x5240, 0x5246, 0x524b,
+  0x5258, 0x5274, 0x527e, 0x5282, 0x5281, 0x5287, 0x5292, 0x5296,
+  0x52a2, 0x52a7, 0x52b9, 0x52b2, 0x52c3, 0x52c6, 0x52c4, 0x52ce,
+  0x52d2, 0x52e2, 0x52e0, 0x52e1, 0x52f9, 0x52f7, 0x300f, 0x5317,
+  0x530a, 0x531c, 0x5316, 0x531d, 0x5334, 0x532f, 0x5329, 0x5325,
+  0x533e, 0x534e, 0x534f, 0x7ed8, 0x5357, 0x536a, 0x5368, 0x5370,
+  0x5378, 0x5375, 0x537b, 0x537a, 0x53c8, 0x53b3, 0x53ce, 0x53bb,
+  0x53c0, 0x53e5, 0x53ee, 0x53de, 0x54a2, 0x5405, 0x546f, 0x5425,
+  0x53f8, 0x5432, 0x543a, 0x5455, 0x543f, 0x545f, 0x5459, 0x5441,
+  0x545c, 0x5469, 0x5470, 0x5463, 0x546a, 0x5476, 0x547e, 0x548b,
+  0x549e, 0x54a7, 0x54ca, 0x54cf, 0x54d4, 0x53f1,
+  /* 0x16121..0x1617E */
+  0x54e0, 0x54e3, 0x54e7, 0x54e9, 0x54ee, 0x54f2, 0x54f0, 0x54f1,
+  0x54f8, 0x54f7, 0x5504, 0x5503, 0x5505, 0x550c, 0x550e, 0x550d,
+  0x5515, 0x5513, 0x551e, 0x5526, 0x552c, 0x553c, 0x5544, 0x554d,
+  0x554a, 0x5549, 0x555b, 0x5546, 0x555a, 0x5569, 0x5564, 0x5567,
+  0x556b, 0x556d, 0x5578, 0x5576, 0x5586, 0x5587, 0x5574, 0x558a,
+  0x5589, 0x5582, 0x5594, 0x559a, 0x559d, 0x55a5, 0x55a3, 0x55c2,
+  0x55b3, 0x55c3, 0x55b5, 0x55bd, 0x55b8, 0x55bc, 0x55b1, 0x55cd,
+  0x55ca, 0x55d2, 0x55d9, 0x55e3, 0x55de, 0x55fe, 0x55ff, 0x55fc,
+  0x5601, 0x55f0, 0x55fa, 0x55f2, 0x55f3, 0x560b, 0x560d, 0x5609,
+  0x561f, 0x5627, 0x5620, 0x5621, 0x5622, 0x5624, 0x5634, 0x5630,
+  0x563b, 0x5647, 0x5648, 0x5646, 0x565c, 0x5658, 0x5661, 0x5662,
+  0x5668, 0x5669, 0x566a, 0x5667, 0x566c, 0x5670,
+  /* 0x16221..0x1627E */
+  0x5672, 0x5676, 0x5678, 0x567c, 0x5680, 0x5683, 0x5688, 0x568b,
+  0x568e, 0x5696, 0x5693, 0x5699, 0x569a, 0x56b0, 0x56b4, 0x56b8,
+  0x56b9, 0x56ba, 0x56c2, 0x56cd, 0x56d6, 0x56d2, 0x56de, 0x56e1,
+  0x56e5, 0x56e7, 0x56ea, 0x662f, 0x56fb, 0x5708, 0x5707, 0x5704,
+  0x5729, 0x5724, 0x571e, 0x5725, 0x5726, 0x571b, 0x5737, 0x5738,
+  0x5747, 0x575a, 0x5768, 0x576b, 0x575b, 0x5765, 0x577f, 0x577e,
+  0x5779, 0x578e, 0x578b, 0x5791, 0x57a0, 0x579e, 0x57b0, 0x57b6,
+  0x57b9, 0x57bf, 0x57bc, 0x57bd, 0x57bb, 0x57c7, 0x57cd, 0x57d7,
+  0x57da, 0x57dc, 0x57e3, 0x57ee, 0x57fc, 0x580c, 0x5812, 0x5926,
+  0x5820, 0x592a, 0x5845, 0x588e, 0x5874, 0x5886, 0x587c, 0x589a,
+  0x588c, 0x58a3, 0x58b5, 0x58aa, 0x58af, 0x58d1, 0x58c6, 0x58cb,
+  0x58d4, 0x58be, 0x58bc, 0x58c5, 0x58ca, 0x58ec,
+  /* 0x16321..0x1637E */
+  0x58e7, 0x58da, 0x58fd, 0x58f4, 0x5907, 0x5912, 0x5911, 0x5919,
+  0x592c, 0x592b, 0x5940, 0x5960, 0x5957, 0x595f, 0x595a, 0x5955,
+  0x5953, 0x597a, 0x597f, 0x598a, 0x599d, 0x59a7, 0x7f4b, 0x59aa,
+  0x59ae, 0x59b3, 0x59b9, 0x59ba, 0x59c9, 0x59d5, 0x59e7, 0x59ec,
+  0x59e1, 0x59e3, 0x5a08, 0x5a0d, 0x5a18, 0x5a19, 0x5a20, 0x5a1f,
+  0x5980, 0x5a31, 0x5a3b, 0x5a3e, 0x5a37, 0x5a43, 0x5a57, 0x5a49,
+  0x5a61, 0x5a62, 0x5a69, 0x7f9d, 0x5a70, 0x5a79, 0x5a7d, 0x5a88,
+  0x5a97, 0x5a95, 0x5a98, 0x5a96, 0x5aa9, 0x5ac8, 0x5ab0, 0x5ab6,
+  0x5ac5, 0x5ac4, 0x5abf, 0x7083, 0x5ac7, 0x5aca, 0x5acd, 0x5acf,
+  0x5ad5, 0x5ad3, 0x5ad9, 0x5ada, 0x5add, 0x5ae1, 0x5ae2, 0x5ae6,
+  0x5aed, 0x5af0, 0x5b02, 0x5b0f, 0x5b0a, 0x5b06, 0x5b33, 0x5b18,
+  0x5b19, 0x5b1e, 0x5b35, 0x5b28, 0x5b36, 0x5b50,
+  /* 0x16421..0x1647E */
+  0x5b7a, 0x5b04, 0x5b4d, 0x5b0b, 0x5b4c, 0x5b45, 0x5b75, 0x5b65,
+  0x5b74, 0x5b67, 0x5b70, 0x5b71, 0x5b6c, 0x5b6e, 0x5b9d, 0x5b98,
+  0x5b9f, 0x5b8d, 0x5b9c, 0x5b9a, 0x5b8b, 0x5b92, 0x5b8f, 0x5b5d,
+  0x5b99, 0x5bcb, 0x5bc1, 0x5bcc, 0x5bcf, 0x5bb4, 0x5bc6, 0x5bdd,
+  0x5be9, 0x5c11, 0x5c14, 0x5be6, 0x5be5, 0x5c60, 0x5c00, 0x5c07,
+  0x5c13, 0x5bf3, 0x5bf7, 0x5c17, 0x5c0d, 0x5bf6, 0x5c23, 0x5c27,
+  0x5c2a, 0x5c1f, 0x5c37, 0x5c2b, 0x5c3d, 0x5c4c, 0x5c43, 0x5c54,
+  0x5c4f, 0x5c40, 0x5c50, 0x5c58, 0x5c5f, 0x5c64, 0x5c56, 0x5c65,
+  0x5c6c, 0x5c75, 0x5c83, 0x5c90, 0x5ca4, 0x5cad, 0x5ca2, 0x5cab,
+  0x5ca1, 0x5ca8, 0x5cb3, 0x5cb2, 0x5cb1, 0x5cae, 0x5cb9, 0x5cbd,
+  0x5cc0, 0x5cc5, 0x5cc2, 0x5cd8, 0x5cd2, 0x5cdc, 0x5ce2, 0x7b3b,
+  0x5cef, 0x5cf2, 0x5cf4, 0x5cf6, 0x5cfa, 0x5d06,
+  /* 0x16521..0x1657E */
+  0x5d02, 0x5d1c, 0x5d15, 0x5d0a, 0x5d45, 0x5d4b, 0x5d2e, 0x5d32,
+  0x5d3f, 0x5d35, 0x5d46, 0x5d73, 0x5d56, 0x5d4e, 0x5d72, 0x5d68,
+  0x5d6e, 0x5d4f, 0x5d63, 0x5d93, 0x5d89, 0x5d5b, 0x5d8f, 0x5d7d,
+  0x5d9b, 0x5dba, 0x5dae, 0x5da3, 0x5db5, 0x5dc7, 0x5dbd, 0x5dab,
+  0x5e3d, 0x5da2, 0x5daf, 0x5ddc, 0x5db8, 0x5d9f, 0x5db0, 0x5dd8,
+  0x5ddd, 0x5de4, 0x5dde, 0x5dfb, 0x5df2, 0x5de1, 0x5e05, 0x5e0a,
+  0x5e23, 0x5e21, 0x5e12, 0x5e31, 0x5e1f, 0x5e09, 0x5e0b, 0x5e22,
+  0x5e46, 0x5e66, 0x5e3b, 0x5e35, 0x5e39, 0x5e43, 0x5e37, 0x5e32,
+  0x5e3a, 0x5e67, 0x5e5d, 0x5e56, 0x5e5e, 0x5e59, 0x5e5a, 0x5e79,
+  0x5e6a, 0x5e69, 0x5e7c, 0x5e7b, 0x5e83, 0x5dd5, 0x5e7d, 0x6fae,
+  0x5e7f, 0x5e88, 0x5e89, 0x5e8c, 0x5e92, 0x5e90, 0x5e93, 0x5e94,
+  0x5e96, 0x5e8e, 0x5e9b, 0x5e9c, 0x5f38, 0x5f3a,
+  /* 0x16621..0x1667E */
+  0x5f45, 0x5f4c, 0x5f4d, 0x5f4e, 0x5f50, 0x5f51, 0x5f55, 0x5f54,
+  0x5f58, 0x5f5f, 0x5f60, 0x5f68, 0x5f69, 0x5f67, 0x5f78, 0x5f82,
+  0x5f86, 0x5f83, 0x5f88, 0x5f87, 0x5f8c, 0x5f94, 0x5f9e, 0x5f9d,
+  0x5f9a, 0x5fa3, 0x5faf, 0x5fb2, 0x5fb9, 0x5fae, 0x5fb6, 0x5fb8,
+  0x6b71, 0x5fc5, 0x5fc6, 0x5fca, 0x5fd5, 0x5fd4, 0x5fe1, 0x5fe6,
+  0x5fe9, 0x5ff3, 0x5ff9, 0x78dc, 0x6006, 0x6004, 0x600b, 0x6012,
+  0x6018, 0x6019, 0x601c, 0x6021, 0x6028, 0x603f, 0x603b, 0x604a,
+  0x6046, 0x6052, 0x6058, 0x605a, 0x605f, 0x6062, 0x6068, 0x6073,
+  0x6072, 0x6070, 0x6076, 0x6079, 0x607d, 0x607f, 0x6084, 0x6086,
+  0x6085, 0x609b, 0x6093, 0x609a, 0x60ad, 0x3190, 0x60ac, 0x60db,
+  0x60e5, 0x60d9, 0x60dd, 0x60c4, 0x60da, 0x60d6, 0x6109, 0x60ef,
+  0x60f1, 0x611b, 0x6129, 0x6123, 0x612f, 0x614b,
+  /* 0x16721..0x1677E */
+  0x768b, 0x6146, 0x613e, 0x6153, 0x6151, 0x60fc, 0x6171, 0x616e,
+  0x6165, 0x6166, 0x6174, 0x6183, 0x6188, 0x618a, 0x6180, 0x6182,
+  0x61a0, 0x6195, 0x61a4, 0x61a3, 0x615f, 0x6193, 0x61a9, 0x61b0,
+  0x61b5, 0x61be, 0x61b8, 0x61bd, 0x61c0, 0x61c2, 0x61ba, 0x61c9,
+  0x61cd, 0x61d1, 0x61d9, 0x61d8, 0x61c8, 0x61da, 0x61df, 0x61e0,
+  0x61e7, 0x61fa, 0x61fb, 0x61fe, 0x6201, 0x6202, 0x6205, 0x6207,
+  0x620a, 0x620d, 0x6210, 0x6216, 0x6229, 0x622b, 0x6238, 0x6233,
+  0x6240, 0x6259, 0x6258, 0x625d, 0x625a, 0x625f, 0x6264, 0x6262,
+  0x6268, 0x626a, 0x626b, 0x622e, 0x6271, 0x6277, 0x6278, 0x627e,
+  0x628d, 0x6292, 0x62ab, 0x629f, 0x62bb, 0x62ac, 0x62e1, 0x62e3,
+  0x62df, 0x62d2, 0x62f4, 0x62f3, 0x62fa, 0x6393, 0x6303, 0x62fb,
+  0x62f9, 0x62de, 0x6306, 0x62dc, 0x6309, 0x62d9,
+  /* 0x16821..0x1687E */
+  0x6335, 0x6334, 0x6316, 0x6332, 0x6331, 0x6340, 0x6339, 0x6350,
+  0x6345, 0x632f, 0x632b, 0x6317, 0x6318, 0x6385, 0x639a, 0x63aa,
+  0x639f, 0x63a2, 0x6396, 0x6323, 0x638e, 0x6387, 0x638a, 0x637c,
+  0x63b5, 0x6373, 0x6375, 0x63a0, 0x6389, 0x63a8, 0x63f4, 0x6413,
+  0x63eb, 0x63ce, 0x63fd, 0x6403, 0x63d8, 0x640b, 0x63c1, 0x63f7,
+  0x6407, 0x63e0, 0x63f2, 0x640d, 0x6422, 0x6420, 0x63bd, 0x6438,
+  0x6506, 0x63fb, 0x646d, 0x642a, 0x643c, 0x655a, 0x6484, 0x6477,
+  0x646b, 0x64ad, 0x646e, 0x6482, 0x6469, 0x6446, 0x642c, 0x646f,
+  0x6479, 0x6435, 0x64ca, 0x6462, 0x64b9, 0x64bf, 0x649f, 0x64d9,
+  0x64cd, 0x64bb, 0x64da, 0x64d0, 0x64c1, 0x64c6, 0x64d6, 0x64a1,
+  0x6521, 0x64ff, 0x64f4, 0x6517, 0x6518, 0x652c, 0x651f, 0x6515,
+  0x6514, 0x64fc, 0x6540, 0x6563, 0x6558, 0x6548,
+  /* 0x16921..0x1697E */
+  0x6541, 0x6602, 0x654b, 0x6555, 0x6580, 0x65a4, 0x6588, 0x6591,
+  0x658a, 0x65a8, 0x656d, 0x6594, 0x659b, 0x65ea, 0x6587, 0x659c,
+  0x6577, 0x657e, 0x6590, 0x65c9, 0x65ba, 0x65cf, 0x65b9, 0x65d0,
+  0x65d5, 0x65dd, 0x65e5, 0x65dc, 0x65f9, 0x660a, 0x6613, 0x660b,
+  0x65fe, 0x65fa, 0x6606, 0x6622, 0x661a, 0x6630, 0x663f, 0x664d,
+  0x2e55, 0x6654, 0x665f, 0x6667, 0x6671, 0x6693, 0x66a3, 0x66a9,
+  0x66aa, 0x668b, 0x668c, 0x66b6, 0x66af, 0x66c4, 0x66c6, 0x66b0,
+  0x66c9, 0x6823, 0x66ab, 0x66d4, 0x66de, 0x66e9, 0x66ec, 0x66df,
+  0x66db, 0x66ef, 0x6712, 0x6706, 0x6708, 0x6700, 0x6703, 0x66fb,
+  0x6711, 0x6709, 0x670d, 0x66f9, 0x670a, 0x6734, 0x673f, 0x6737,
+  0x673b, 0x6725, 0x6729, 0x671a, 0x6760, 0x675f, 0x6778, 0x674c,
+  0x674e, 0x6774, 0x6757, 0x6768, 0x676e, 0x6759,
+  /* 0x16A21..0x16A7E */
+  0x6753, 0x6763, 0x676a, 0x6805, 0x67a2, 0x679f, 0x6782, 0x67af,
+  0x67cb, 0x67bd, 0x67c0, 0x67d0, 0x76d6, 0x67ab, 0x67c4, 0x67b3,
+  0x67c7, 0x67c6, 0x67bb, 0x67ef, 0x67f2, 0x67e0, 0x680f, 0x680d,
+  0x67fe, 0x67f6, 0x67f7, 0x680e, 0x67d2, 0x6811, 0x6816, 0x6815,
+  0x6822, 0x6821, 0x6831, 0x6836, 0x6839, 0x6827, 0x683b, 0x6844,
+  0x6842, 0x6852, 0x6859, 0x685e, 0x6862, 0x686b, 0x6881, 0x687e,
+  0x689e, 0x6875, 0x687d, 0x68b5, 0x6872, 0x6882, 0x6897, 0x6892,
+  0x68ae, 0x6899, 0x68a2, 0x688d, 0x68a4, 0x68b0, 0x68bf, 0x68b1,
+  0x68c3, 0x68c4, 0x68d4, 0x68d8, 0x68d9, 0x68dd, 0x68f9, 0x6902,
+  0x68fc, 0x68f4, 0x68e8, 0x68f2, 0x6904, 0x690c, 0x690a, 0x6913,
+  0x6943, 0x691e, 0x6925, 0x692a, 0x692b, 0x6941, 0x6944, 0x693b,
+  0x6936, 0x6938, 0x694c, 0x691d, 0x6960, 0x695e,
+  /* 0x16B21..0x16B7E */
+  0x6966, 0x6964, 0x696d, 0x696a, 0x696f, 0x6974, 0x6977, 0x697e,
+  0x6983, 0x6988, 0x698a, 0x6993, 0x6998, 0x69a1, 0x69a9, 0x69a6,
+  0x69ac, 0x69af, 0x69b2, 0x69ba, 0x69bd, 0x69bf, 0x69c0, 0x69da,
+  0x69dc, 0x69dd, 0x69e7, 0x69f4, 0x69f8, 0x6a03, 0x6a16, 0x6a10,
+  0x6a0c, 0x6a1b, 0x6a1d, 0x6a25, 0x6a36, 0x6a41, 0x6a5b, 0x6a52,
+  0x6a46, 0x6a48, 0x6a7c, 0x6a6d, 0x6a6c, 0x6a62, 0x6a85, 0x6a82,
+  0x6a84, 0x6aa8, 0x6aa1, 0x6a91, 0x6aa5, 0x6aa6, 0x6a9a, 0x6aa3,
+  0x6ac4, 0x6acd, 0x6ac2, 0x6ada, 0x6aeb, 0x6af3, 0x6ae7, 0x6ae4,
+  0x6af1, 0x6b14, 0x6ae0, 0x6ae2, 0x6af7, 0x6ade, 0x6adb, 0x6b0c,
+  0x6b07, 0x6b1a, 0x6ae1, 0x6b16, 0x6b10, 0x6b17, 0x6b20, 0x6b33,
+  0x77ab, 0x6b26, 0x6b2b, 0x6b3e, 0x6b28, 0x6b41, 0x6b4c, 0x6b4f,
+  0x6b4e, 0x6b49, 0x6b56, 0x6b5b, 0x6b5a, 0x6b6b,
+  /* 0x16C21..0x16C7E */
+  0x6b5f, 0x6b6c, 0x6b6f, 0x6b74, 0x6b7d, 0x6b80, 0x6b8c, 0x6b8e,
+  0x6b92, 0x6b93, 0x6b96, 0x6b99, 0x6b9a, 0x6c3a, 0x6c41, 0x6c3f,
+  0x6c48, 0x6c4c, 0x6c4e, 0x6c50, 0x6c55, 0x6c62, 0x6c6c, 0x6c78,
+  0x6c7a, 0x6c82, 0x6c89, 0x6c85, 0x6c8a, 0x6c8d, 0x6c8e, 0x6c94,
+  0x6c7c, 0x6c98, 0x421d, 0x6cad, 0x6caa, 0x6cbd, 0x6cb2, 0x6cb3,
+  0x6cae, 0x6cb6, 0x6cc8, 0x6cc1, 0x6ce4, 0x6ce3, 0x6cda, 0x6cfd,
+  0x6cfa, 0x6cfb, 0x6d04, 0x6d05, 0x6d0a, 0x6d07, 0x6d0f, 0x6d0d,
+  0x6d10, 0x7f4e, 0x6d13, 0x6ccd, 0x6d14, 0x6d16, 0x6d67, 0x6d6d,
+  0x6d71, 0x6d73, 0x6d81, 0x6d99, 0x6dc2, 0x6dbe, 0x6dba, 0x6dcf,
+  0x6dda, 0x6dd6, 0x6dcc, 0x6ddb, 0x6dcb, 0x6dea, 0x6deb, 0x6ddf,
+  0x6de3, 0x6dfc, 0x6e08, 0x6e09, 0x6dff, 0x6e1d, 0x6e1e, 0x6e10,
+  0x6e1f, 0x6e42, 0x6e35, 0x6e30, 0x6e34, 0x6e4a,
+  /* 0x16D21..0x16D7E */
+  0x6e47, 0x6e49, 0x6e4c, 0x6e50, 0x6e48, 0x6e59, 0x6e64, 0x6e60,
+  0x6e2a, 0x6e63, 0x6e55, 0x6e76, 0x6e72, 0x6e7c, 0x6e81, 0x6e87,
+  0x6e85, 0x6e84, 0x6e8b, 0x6e8a, 0x6e93, 0x6e91, 0x6e94, 0x6e99,
+  0x6eaa, 0x6ea1, 0x6eac, 0x6eb0, 0x6ec6, 0x6eb1, 0x6ebe, 0x6ec5,
+  0x6ec8, 0x6ecb, 0x6edb, 0x6ee3, 0x6efc, 0x6efb, 0x6eeb, 0x6efe,
+  0x6f0a, 0x6f05, 0x6f15, 0x6f12, 0x6f19, 0x6f13, 0x6f1c, 0x6f1f,
+  0x6f1b, 0x6f0c, 0x6f26, 0x6f33, 0x6f3b, 0x6f39, 0x6f45, 0x6f42,
+  0x6f3e, 0x6f4c, 0x6f49, 0x6f46, 0x6f4e, 0x6f57, 0x6f5c, 0x6f62,
+  0x6f63, 0x6f64, 0x6f9c, 0x6f9f, 0x6fa3, 0x6fad, 0x6faf, 0x6fb7,
+  0x6fda, 0x6fe5, 0x6fe2, 0x6fea, 0x6fef, 0x7087, 0x6ff4, 0x7005,
+  0x6ff9, 0x6ffa, 0x7011, 0x7015, 0x7021, 0x700d, 0x701e, 0x7016,
+  0x700b, 0x7027, 0x7036, 0x7035, 0x7039, 0x6ff8,
+  /* 0x16E21..0x16E7E */
+  0x704f, 0x7050, 0x7051, 0x7052, 0x700e, 0x7049, 0x703e, 0x7056,
+  0x7058, 0x705e, 0x7068, 0x706f, 0x7076, 0x76a8, 0x7072, 0x7082,
+  0x707d, 0x7081, 0x7080, 0x708a, 0x7089, 0x708f, 0x70a8, 0x70af,
+  0x70b1, 0x70b5, 0x70e2, 0x70e4, 0x4248, 0x70db, 0x7102, 0x7112,
+  0x7119, 0x7132, 0x7130, 0x714a, 0x7156, 0x7158, 0x7163, 0x7165,
+  0x7169, 0x7173, 0x7172, 0x718b, 0x7189, 0x7182, 0x71a2, 0x71ab,
+  0x71af, 0x71aa, 0x71b5, 0x71b4, 0x71ba, 0x71c0, 0x71c1, 0x71c9,
+  0x71cb, 0x71d0, 0x71d6, 0x71df, 0x71e1, 0x71db, 0x71fc, 0x71f5,
+  0x71f6, 0x721e, 0x71ff, 0x7214, 0x722c, 0x7215, 0x7211, 0x725e,
+  0x7257, 0x7245, 0x7249, 0x7264, 0x7248, 0x7295, 0x723f, 0x724b,
+  0x7250, 0x729c, 0x7296, 0x7293, 0x729b, 0x725a, 0x72cf, 0x72b9,
+  0x72b7, 0x72e9, 0x730f, 0x72fa, 0x7344, 0x732e,
+  /* 0x16F21..0x16F7E */
+  0x7319, 0x7322, 0x731a, 0x7323, 0x733a, 0x7335, 0x733b, 0x735c,
+  0x7360, 0x737c, 0x736e, 0x7356, 0x73b0, 0x73ac, 0x73ad, 0x7394,
+  0x73b9, 0x73d6, 0x73d7, 0x73e8, 0x73e5, 0x73d8, 0x73c3, 0x73dd,
+  0x73d0, 0x73c8, 0x73e4, 0x741a, 0x7414, 0x7413, 0x7403, 0x7407,
+  0x7410, 0x7436, 0x742b, 0x7435, 0x7421, 0x743a, 0x7441, 0x7452,
+  0x7444, 0x745b, 0x7460, 0x7462, 0x745e, 0x746a, 0x7229, 0x7470,
+  0x7475, 0x7477, 0x747d, 0x745a, 0x747c, 0x747e, 0x7481, 0x747f,
+  0x7582, 0x7587, 0x758a, 0x7594, 0x7596, 0x7598, 0x7599, 0x75a0,
+  0x75a8, 0x75a7, 0x75ad, 0x75bc, 0x75bb, 0x75b9, 0x75be, 0x75ca,
+  0x4ff6, 0x75c3, 0x75cd, 0x75cc, 0x75d5, 0x75d4, 0x75d6, 0x75dc,
+  0x75e1, 0x75e5, 0x75e2, 0x7621, 0x7628, 0x762e, 0x762f, 0x7642,
+  0x764c, 0x764f, 0x764b, 0x7677, 0x765c, 0x765e,
+  /* 0x17021..0x1707E */
+  0x765d, 0x765f, 0x7666, 0x7672, 0x766c, 0x768d, 0x7698, 0x7695,
+  0x7697, 0x76aa, 0x76a7, 0x76b1, 0x76b2, 0x76b0, 0x76b4, 0x76b6,
+  0x76b8, 0x76b9, 0x76ce, 0x76cb, 0x76c9, 0x76cd, 0x694d, 0x76dc,
+  0x770d, 0x76d5, 0x76f9, 0x7704, 0x7706, 0x7708, 0x7713, 0x770e,
+  0x7711, 0x770f, 0x7716, 0x7719, 0x7724, 0x772a, 0x7730, 0x7739,
+  0x773d, 0x773e, 0x7744, 0x7746, 0x7748, 0x7742, 0x7749, 0x775c,
+  0x7760, 0x7764, 0x7766, 0x7768, 0x32d2, 0x776b, 0x7771, 0x7779,
+  0x7785, 0x777c, 0x7781, 0x777a, 0x7786, 0x778b, 0x778f, 0x7790,
+  0x779c, 0x77a8, 0x77a6, 0x77a3, 0x77b3, 0x77b4, 0x77c3, 0x77c6,
+  0x77c8, 0x77cb, 0x77dc, 0x77ed, 0x7f4f, 0x77f2, 0x5adf, 0x77f6,
+  0x77f5, 0x780f, 0x780c, 0x7838, 0x7824, 0x7821, 0x7837, 0x783d,
+  0x7846, 0x784f, 0x784b, 0x786b, 0x786f, 0x7870,
+  /* 0x17121..0x1717E */
+  0x7871, 0x7874, 0x7873, 0x78aa, 0x78af, 0x78b1, 0x78b6, 0x78c4,
+  0x78c3, 0x78c6, 0x78e9, 0x78eb, 0x7903, 0x7909, 0x7912, 0x7914,
+  0x7918, 0x7921, 0x791d, 0x791e, 0x7924, 0x7920, 0x792c, 0x792e,
+  0x793d, 0x793e, 0x7942, 0x7949, 0x7945, 0x7950, 0x794b, 0x7951,
+  0x7952, 0x794c, 0x7955, 0x7997, 0x7998, 0x79a5, 0x79ad, 0x79ae,
+  0x79bc, 0x79df, 0x79db, 0x79dd, 0x79d8, 0x79d1, 0x79ed, 0x79ee,
+  0x79f1, 0x79f2, 0x79fb, 0x79f8, 0x7a01, 0x7a0f, 0x7a05, 0x79e2,
+  0x7a19, 0x7a2b, 0x7a37, 0x7a45, 0x7a42, 0x7a40, 0x7a43, 0x7a3e,
+  0x7a55, 0x7a4d, 0x7a5b, 0x7a57, 0x7a5f, 0x7a62, 0x7a65, 0x7a64,
+  0x7a69, 0x7a6b, 0x7a6a, 0x7aad, 0x7ab0, 0x7abc, 0x7ac0, 0x7acf,
+  0x7ad1, 0x7ad3, 0x7ad4, 0x7ade, 0x7adf, 0x7ae2, 0x7ae3, 0x7ae6,
+  0x7aef, 0x7aeb, 0x7aee, 0x7af4, 0x7af1, 0x7af7,
+  /* 0x17221..0x1727E */
+  0x7afb, 0x7b06, 0x7b18, 0x7b1a, 0x7b1f, 0x7b22, 0x7b23, 0x7b25,
+  0x7b27, 0x7b28, 0x7b29, 0x7b2a, 0x7b2e, 0x7b2f, 0x7b32, 0x7b44,
+  0x7b43, 0x7b4f, 0x7b4d, 0x7b4e, 0x7b51, 0x7b58, 0x7b74, 0x7b93,
+  0x7b83, 0x7b91, 0x7b96, 0x7b97, 0x7b9f, 0x7ba0, 0x7ba8, 0x7bb4,
+  0x7bc0, 0x7bca, 0x7bb9, 0x7bc6, 0x7bcf, 0x7bd1, 0x7bd2, 0x7be3,
+  0x7be2, 0x7be4, 0x7bd4, 0x7be1, 0x7c3a, 0x7bf2, 0x7bf1, 0x7bf0,
+  0x7c15, 0x7c14, 0x7c09, 0x7c13, 0x7c0c, 0x7c06, 0x7c08, 0x7c12,
+  0x7c0a, 0x7c04, 0x7c2e, 0x7c1b, 0x7c25, 0x7c24, 0x7c21, 0x7c30,
+  0x7c47, 0x7c32, 0x7c46, 0x7c3e, 0x7c5a, 0x7c60, 0x7c67, 0x7c76,
+  0x7c78, 0x7ce7, 0x7cec, 0x7cf0, 0x7d09, 0x7d08, 0x7ceb, 0x7d03,
+  0x7d06, 0x7d2a, 0x7d26, 0x7daf, 0x7d23, 0x7d1f, 0x7d44, 0x7d15,
+  0x7d12, 0x7d41, 0x7d3f, 0x7d3e, 0x7d46, 0x7d48,
+  /* 0x17321..0x1737E */
+  0x7d5d, 0x7d5e, 0x7d64, 0x7d51, 0x7d50, 0x7d59, 0x7d72, 0x7d89,
+  0x7d87, 0x7dab, 0x7d6f, 0x7d7a, 0x7d9a, 0x7da4, 0x7da9, 0x7db2,
+  0x7dc4, 0x7dc1, 0x7dbb, 0x7db8, 0x7dba, 0x7dc6, 0x7dcf, 0x7dc2,
+  0x7dd9, 0x7dd3, 0x7df8, 0x7de6, 0x7ded, 0x7def, 0x7dfd, 0x7e1a,
+  0x7e1b, 0x7e1e, 0x7e75, 0x7e79, 0x7e7d, 0x7e81, 0x7e88, 0x7e8b,
+  0x7e8c, 0x7e92, 0x7e95, 0x7e91, 0x7e9d, 0x7ea5, 0x7ea9, 0x7eb8,
+  0x7eaa, 0x7ead, 0x7761, 0x7ecc, 0x7ece, 0x7ecf, 0x7ed0, 0x7ed4,
+  0x7edc, 0x7ede, 0x7edd, 0x7ee0, 0x7ee5, 0x7ee8, 0x7eef, 0x7ef4,
+  0x7ef6, 0x7ef7, 0x7ef9, 0x7efb, 0x7efc, 0x7efd, 0x7f07, 0x7f08,
+  0x56b7, 0x7f15, 0x7f21, 0x7f2c, 0x7f3e, 0x7f4a, 0x7f52, 0x7f54,
+  0x7f63, 0x7f5f, 0x7f60, 0x7f61, 0x7f66, 0x7f67, 0x7f6c, 0x7f6a,
+  0x7f77, 0x7f72, 0x7f76, 0x7f95, 0x7f9c, 0x7fa0,
+  /* 0x17421..0x1747E */
+  0x382f, 0x49c7, 0x7059, 0x5464, 0x31dc, 0x5199, 0x3653, 0x3de2,
+  0x3e14, 0x3e18, 0x3e58, 0x3e5e, 0x3ebe, 0x8028, 0x3ecb, 0x3ef9,
+  0x3f00, 0x3f02, 0x3f07, 0x3f1d, 0x3f23, 0x3f34, 0x3f36, 0x3f3d,
+  0x3f40, 0x3f45, 0x3f54, 0x3f58, 0x3f64, 0x3f67, 0x3f7d, 0x3f89,
+  0x3f9c, 0x3fa7, 0x3faf, 0x3fb5, 0x3fb7, 0x3fc9, 0x3fde, 0x3fe1,
+  0x3fe9, 0x400d, 0x4014, 0x4018, 0x4033, 0x4035, 0x4047, 0x813d,
+  0x409d, 0x409e, 0x40cb, 0x40d4, 0x40d5, 0x40dd, 0x40f8, 0x411c,
+  0x412b, 0x4130, 0x4137, 0x813e, 0x418d, 0x813f, 0x41bc, 0x41b9,
+  0x8140, 0x4222, 0x423e, 0x4243, 0x4256, 0x425a, 0x426f, 0x4285,
+  0x42c4, 0x42d6, 0x42fc, 0x430a, 0x4318, 0x4339, 0x4343, 0x4365,
+  0x437c, 0x43e5, 0x43ed, 0x43f5, 0x4410, 0x4414, 0x4422, 0x4479,
+  0x4451, 0x4460, 0x446d, 0x44ce, 0x44be, 0x44bf,
+  /* 0x17521..0x1757E */
+  0x44c4, 0x44ca, 0x44d0, 0x44f7, 0x44fb, 0x4522, 0x4529, 0x8141,
+  0x4567, 0x459d, 0x8142, 0x4600, 0x4609, 0x4615, 0x461e, 0x463a,
+  0x4622, 0x4624, 0x462b, 0x4630, 0x4631, 0x4633, 0x46fb, 0x4648,
+  0x464c, 0xa8c4, 0x4659, 0x465a, 0x4661, 0x4665, 0x4673, 0x4677,
+  0x4678, 0x468d, 0x8143, 0x46a0, 0x46b2, 0x46bb, 0x46c6, 0x46c8,
+  0x1b22, 0x46db, 0x46e8, 0x46fa, 0x4713, 0x8029, 0x4733, 0x4766,
+  0x4747, 0x4748, 0x477b, 0x4781, 0x4793, 0x4798, 0x479b, 0x47bb,
+  0x47f9, 0x47c0, 0x47d7, 0x47fc, 0x4801, 0x4852, 0x481d, 0x482c,
+  0x4831, 0x485b, 0x4872, 0x4875, 0x8144, 0x48a3, 0x48a5, 0x48b2,
+  0x48c8, 0x48d0, 0x48e8, 0x48ed, 0x48f0, 0x48f1, 0x48fc, 0x490a,
+  0x4949, 0xabc4, 0x4935, 0x4942, 0x4957, 0x4963, 0x4964, 0x4968,
+  0x4980, 0x8114, 0x49a5, 0x49ad, 0x49cf, 0x1bb6,
+  /* 0x17621..0x1767E */
+  0x1bc3, 0x49e2, 0x49e9, 0x49ea, 0x49f5, 0x49f6, 0x4a0f, 0x4a15,
+  0xad3f, 0x4a3b, 0x4a3e, 0x4a45, 0x4a50, 0x4a56, 0x4a5b, 0x4a6b,
+  0x4a73, 0xad63, 0x4a89, 0x4a94, 0x4a9d, 0x4a9e, 0x4aa5, 0x4ae4,
+  0x4ae7, 0x1c0f, 0x801d, 0x4b1b, 0x4b1e, 0x4b2c, 0x4b35, 0x4b46,
+  0x4b56, 0x4b60, 0x4b65, 0x4b67, 0x4b77, 0x4b82, 0x4ba9, 0x4bad,
+  0x8070, 0x4bcf, 0x4bd6, 0x4bd7, 0x4bff, 0x4c05, 0x4c10, 0x4c33,
+  0x4c59, 0x4c5c, 0x4caa, 0x4c74, 0x4c76, 0x4c85, 0x4c86, 0x4c98,
+  0x4c9c, 0x4cfb, 0x4cc6, 0x4cd4, 0x4ce0, 0x4ceb, 0x4cee, 0xb0fe,
+  0x4d04, 0x4d0e, 0x4d2e, 0x4d31, 0x4d39, 0x4d3f, 0x4d58, 0x4d65,
+  0x8145, 0x4d82, 0x4d87, 0x4d89, 0x4d94, 0x4daa, 0x4dac, 0x4dbf,
+  0x4dc4, 0x4dd6, 0x4dda, 0x4ddb, 0x4ddd, 0x4dfc, 0x8146, 0x4e34,
+  0x4e44, 0x4e5c, 0x4e5e, 0x4eab, 0x4eb1, 0x4ec1,
+  /* 0x17721..0x1777E */
+  0x4ec7, 0x4ece, 0x4f10, 0x4f1a, 0x8147, 0x4f2a, 0x4f2f, 0x4f33,
+  0x4f51, 0x4f59, 0x4f5e, 0x4f61, 0x4f62, 0x4f7e, 0x4f88, 0x4f8c,
+  0x4f8d, 0x4f94, 0x4fa0, 0x4fa7, 0x4fb6, 0x4fbc, 0x4fc7, 0x4fca,
+  0x4ff9, 0x4ff0, 0x4ff5, 0x5005, 0x5006, 0x5028, 0x504a, 0x505d,
+  0x505e, 0x504e, 0x5064, 0x5075, 0x5085, 0x50a4, 0x50ab, 0x50b7,
+  0x50d4, 0x50d8, 0x50e4, 0x510f, 0x512b, 0x511e, 0x5120, 0x512e,
+  0x5130, 0x5146, 0x5147, 0x5151, 0x8148, 0x5152, 0x515c, 0x5160,
+  0x5168, 0x8115, 0x5185, 0x5187, 0x5192, 0x51c1, 0x51ba, 0x51c4,
+  0x51fe, 0x5200, 0x5215, 0x5255, 0x5256, 0x1e3f, 0x528d, 0x529b,
+  0x52be, 0x52c0, 0x52fb, 0xb7f1, 0x5327, 0x5328, 0x8116, 0x5350,
+  0x5366, 0x537c, 0x5395, 0x539f, 0x53a0, 0x53a2, 0x53a6, 0x53ab,
+  0x53c9, 0x53cf, 0x53d6, 0x53d9, 0x53e3, 0x53e9,
+  /* 0x17821..0x1787E */
+  0x5407, 0x540a, 0x541a, 0x541b, 0x814a, 0x5426, 0x5428, 0x542a,
+  0x542b, 0x542c, 0x542e, 0x542f, 0x5430, 0x5444, 0x5446, 0x5447,
+  0x544b, 0x5457, 0x5462, 0x546b, 0x546d, 0x5486, 0x5487, 0x5489,
+  0x5498, 0x549c, 0x549f, 0x54a3, 0x5490, 0x54a6, 0x54a8, 0x54a9,
+  0x54b5, 0x54bf, 0x54c8, 0x54c9, 0x54da, 0x54ff, 0x5501, 0x5517,
+  0x552f, 0x556f, 0x5579, 0x5592, 0x1f72, 0x55ce, 0x55e4, 0x5600,
+  0x5602, 0x5608, 0x5615, 0x5616, 0x5619, 0x561e, 0x562d, 0x5635,
+  0x5643, 0x564b, 0x5664, 0x5665, 0x566d, 0x566f, 0x5671, 0x5681,
+  0x569b, 0x569d, 0x569e, 0x56a6, 0x56aa, 0x56b6, 0x56c5, 0x56cc,
+  0x56ce, 0x56d4, 0x56e6, 0x56f1, 0x56fc, 0x570a, 0x5719, 0x5734,
+  0x5736, 0x5746, 0x574d, 0x574e, 0x575c, 0x575f, 0x5762, 0x577a,
+  0x5780, 0x5794, 0x57aa, 0x57e0, 0x582d, 0xc18e,
+  /* 0x17921..0x1797E */
+  0x5843, 0x584e, 0x584f, 0x5851, 0x5868, 0x586e, 0x814b, 0x58b0,
+  0xc20e, 0x58ad, 0x58e4, 0x58f2, 0x5900, 0x58f7, 0x591c, 0x592e,
+  0x5931, 0x5934, 0x814c, 0x814d, 0x5945, 0x5946, 0x814e, 0x814f,
+  0x8150, 0x595c, 0x8151, 0x8119, 0x811a, 0x5979, 0x8152, 0x8153,
+  0x811b, 0x5998, 0x59b1, 0x59b8, 0x59c8, 0x59ca, 0xc371, 0x59d4,
+  0x59de, 0x59eb, 0x59ed, 0x5a03, 0x8154, 0x5a39, 0x5a5d, 0x5a6d,
+  0x8155, 0x5a85, 0x5aa0, 0xc4c4, 0x5ab3, 0x5abb, 0x5ace, 0x5aeb,
+  0x5afd, 0x5b12, 0x5b2d, 0x5b3b, 0x5b47, 0x5b4e, 0x5b60, 0x5b6d,
+  0x5b6f, 0x5b72, 0x5b9e, 0x8156, 0x5bd7, 0x5bd9, 0x5c01, 0x5c31,
+  0x5c1e, 0x5c20, 0x5c33, 0x5c36, 0x2264, 0xc7a1, 0x5c59, 0x5c6d,
+  0x5c79, 0x5c8f, 0x5c94, 0x5ca0, 0x5cbc, 0x5cd5, 0x5cd9, 0x5cdd,
+  0x5d07, 0x5d08, 0x5d13, 0x5d1d, 0x5d23, 0x5d31,
+  /* 0x17A21..0x17A7E */
+  0x5d41, 0x5d48, 0x5d53, 0x5d5c, 0x5d7a, 0x5d83, 0x5d8b, 0x5da0,
+  0x5da6, 0x5dc2, 0x5dcc, 0x5dd6, 0x5de3, 0x8157, 0x5e28, 0x5e08,
+  0x5e11, 0x5e15, 0x8159, 0x5e47, 0x5e52, 0x5e61, 0x5e8a, 0x5e8d,
+  0x5f47, 0x815a, 0x5f91, 0x5f97, 0x5fbf, 0x5fce, 0x5fdb, 0x5fdf,
+  0x5fec, 0x5fee, 0x5ffa, 0x815b, 0x6014, 0x6026, 0x6035, 0x6037,
+  0x603c, 0x60ca, 0x60d7, 0x60e0, 0x60f3, 0x6118, 0x614a, 0x6160,
+  0x6167, 0x6168, 0x616d, 0x61bb, 0x61ca, 0x61cf, 0x61d7, 0x815c,
+  0x2453, 0x245b, 0x6260, 0x6274, 0xd2ff, 0x628e, 0x62a1, 0x62a3,
+  0x62a4, 0x62a9, 0x62ae, 0x62b7, 0x62be, 0x62bf, 0x62c6, 0x62d5,
+  0x62fd, 0x62fe, 0x6300, 0x6301, 0x6362, 0x6322, 0x632d, 0x633a,
+  0x6343, 0x6347, 0x6351, 0x6355, 0x637d, 0x6386, 0x6392, 0x6398,
+  0x63a7, 0x63a9, 0x63bf, 0x63c0, 0x63c7, 0x63cf,
+  /* 0x17B21..0x17B7E */
+  0x63d1, 0x63e1, 0x63ea, 0x6401, 0x6406, 0x640a, 0x815f, 0x6448,
+  0x645f, 0x6470, 0x6473, 0x6485, 0x649e, 0x64af, 0x64b4, 0x64ba,
+  0x64c0, 0x64c2, 0xd440, 0x6532, 0x651e, 0x6523, 0x652f, 0x6559,
+  0x6564, 0x811f, 0x65ad, 0x657a, 0x658c, 0x658f, 0x65a2, 0x65b0,
+  0x65cb, 0x65ce, 0x65ed, 0x6612, 0x65ff, 0x6604, 0x6605, 0x6610,
+  0xd674, 0x6618, 0x6629, 0x6638, 0x6657, 0x665b, 0x8036, 0x6662,
+  0x259d, 0x666c, 0x6675, 0x6698, 0x66b8, 0x66fa, 0x66fc, 0x66fd,
+  0x670b, 0x6771, 0x6787, 0x6788, 0x67ac, 0x67ad, 0x67b5, 0x25ea,
+  0x67d6, 0x67ec, 0x6806, 0x680a, 0x6810, 0x6814, 0x681f, 0x6898,
+  0x68aa, 0x68ca, 0x68ce, 0xd884, 0x68f5, 0x691c, 0x8160, 0x6918,
+  0x6919, 0x691a, 0x6927, 0x6930, 0x6932, 0x6939, 0x6940, 0x6994,
+  0x8161, 0x69d4, 0x69e5, 0x69f6, 0x6a12, 0x6a15,
+  /* 0x17C21..0x17C7E */
+  0x6a22, 0x6a37, 0x6a47, 0x6a4e, 0x6a5d, 0x6a61, 0x6a75, 0x6a79,
+  0x6aa7, 0x6ad0, 0x6adf, 0x6af4, 0x6af6, 0x8122, 0x8162, 0x8163,
+  0x6b46, 0x6b54, 0x6b59, 0x6b69, 0x6b9d, 0x6c49, 0x6c68, 0x8164,
+  0x6ce1, 0x6cf4, 0x6cf8, 0x6cfe, 0x8165, 0x6d12, 0x6d1b, 0x6daf,
+  0x6dce, 0x6dd1, 0x6dd7, 0x6e20, 0x6e23, 0x6e3d, 0x6e70, 0x6e7b,
+  0xe177, 0x6ec0, 0x2844, 0x6efa, 0x6f1e, 0x6f2d, 0x6f36, 0x6f54,
+  0xe24d, 0x6fa6, 0x6fb5, 0x6fe4, 0x6fe8, 0x6fee, 0x7008, 0x702d,
+  0x8167, 0x7088, 0x7095, 0x7097, 0x7099, 0x709b, 0x70a2, 0x70b3,
+  0x70be, 0x70c4, 0x70c5, 0x70c7, 0x70d7, 0x70dd, 0x70de, 0x70ef,
+  0x70f4, 0x8126, 0x7114, 0x7115, 0x7116, 0x7122, 0x7123, 0x7127,
+  0x712f, 0x7131, 0x7134, 0x713d, 0x7148, 0x715b, 0x7183, 0x719e,
+  0x71ac, 0x71b1, 0x71bc, 0x71d7, 0x71fb, 0x71e4,
+  /* 0x17D21..0x17D7E */
+  0x71e5, 0x71ed, 0x71f1, 0x7207, 0x7210, 0x7238, 0x7239, 0x723a,
+  0x723c, 0x7240, 0x7243, 0x724f, 0x7278, 0x7288, 0x72c2, 0x72cb,
+  0x72cc, 0x72d3, 0x72e0, 0x72ff, 0x7304, 0x731f, 0x7321, 0x7325,
+  0x7348, 0x7349, 0x734a, 0x7364, 0x7365, 0x736a, 0x7370, 0x739b,
+  0x73a3, 0x73ba, 0x73c6, 0x73de, 0x73df, 0x7404, 0x73fd, 0x7433,
+  0x744a, 0x7463, 0x746b, 0x7471, 0x7472, 0x758e, 0x759f, 0x75a6,
+  0x75a9, 0x75ac, 0x75b6, 0x75bd, 0x75cb, 0x75d0, 0x75d3, 0x29b0,
+  0x75da, 0x75de, 0x7658, 0x7684, 0x80dc, 0x769d, 0x76a4, 0x76a5,
+  0x76d2, 0x76de, 0x8168, 0x76e9, 0x76ef, 0x7733, 0x773b, 0x774d,
+  0x774e, 0x774f, 0x775a, 0x776e, 0x7773, 0x7795, 0x77ae, 0x77ba,
+  0x77c1, 0x77c9, 0x77de, 0x77db, 0x77f4, 0x8169, 0x780a, 0x781e,
+  0x782b, 0x7830, 0x816a, 0x7852, 0x7853, 0x7856,
+  /* 0x17E21..0x17E7E */
+  0x7857, 0x7859, 0x785a, 0x80d0, 0x7865, 0x786c, 0x78ba, 0x78c8,
+  0x78e7, 0x7958, 0x799e, 0x7a02, 0x7a03, 0x7a24, 0x7a2d, 0x7a2e,
+  0x7a38, 0x7a4a, 0x7a4e, 0x7a52, 0x7ab6, 0x7ac1, 0x7ac3, 0x7ace,
+  0x7ad6, 0x7af9, 0x7b02, 0x7b08, 0x7b20, 0x2c17, 0x7b2d, 0x7b5e,
+  0x7b79, 0x7b66, 0x7b72, 0x7b75, 0x7b84, 0x7b8a, 0x7b8f, 0x7b9e,
+  0x7ba7, 0x7bc1, 0x7bce, 0x7be5, 0x7bf8, 0x7bfd, 0x7c00, 0x7c23,
+  0x7c41, 0x7c4f, 0x7c50, 0x7c53, 0x7c63, 0x7c65, 0x7c77, 0x7d1d,
+  0x7d1e, 0x7d43, 0x7d47, 0x7d52, 0x7d63, 0x7d70, 0x7d7c, 0x7d8a,
+  0x7d96, 0x7dc0, 0x7dac, 0x7dbc, 0x7dd7, 0xf690, 0x7de7, 0x7e07,
+  0x7e15, 0x7e7c, 0x7e9e, 0x7ea4, 0x7eac, 0x7eaf, 0x7eb4, 0x7eb5,
+  0x7ec3, 0x7ed1, 0x7f10, 0x7f39, 0x7f57, 0x7f90, 0x7f94, 0x7f97,
+  0x7fa2, 0x39f8, 0x3c5b, 0x3e77, 0x5626, 0x5e6b,
+  /* 0x22121..0x2217E */
+  0x8489, 0x2e02, 0x2e0f, 0x2e12, 0x2e29, 0x2e2b, 0x2e2e, 0x2e40,
+  0x2e47, 0x2e48, 0x84a2, 0x2e51, 0x1406, 0x84a4, 0x2e5a, 0x2e69,
+  0x2e9d, 0x142c, 0x142e, 0x2eb9, 0x2ebb, 0x8522, 0x2ebc, 0x2ec3,
+  0x2ec8, 0x2ed0, 0x2eeb, 0x2eda, 0x2ef1, 0x2ef5, 0x2f00, 0x2f16,
+  0x2f64, 0x2f37, 0x2f3e, 0x2f54, 0x2f58, 0x8593, 0x2f77, 0x2f78,
+  0x2f7a, 0x2f7d, 0x2f82, 0x2f85, 0x2f92, 0x2f9a, 0x2fe6, 0x2fb2,
+  0x2fbe, 0x2fc5, 0x2fcb, 0x2fcf, 0x2fd2, 0x146a, 0x2ff2, 0x3000,
+  0x3010, 0x3013, 0x301c, 0x301e, 0x3022, 0x1468, 0x3042, 0x3046,
+  0x304e, 0x3053, 0x3057, 0x3063, 0x3066, 0x306a, 0x3070, 0x30a3,
+  0x3088, 0x3092, 0x3093, 0x3095, 0x3096, 0x309c, 0x30aa, 0x862b,
+  0x30b1, 0x30ba, 0x30bb, 0x30c4, 0x30c7, 0x30f3, 0x8681, 0x30ce,
+  0x8671, 0x30d4, 0x30d9, 0x30e1, 0x30e9, 0x1492,
+  /* 0x22321..0x2237E */
+  0x3108, 0x86f9, 0x3117, 0x311b, 0x874a, 0x3160, 0x8809, 0x3173,
+  0x3183, 0x318b, 0x14bc, 0x3198, 0x31a3, 0x31ad, 0x14c7, 0x31bc,
+  0x88d6, 0x8928, 0x31f3, 0x31f4, 0x3202, 0x3212, 0x3216, 0x8a4f,
+  0x3255, 0x325c, 0x326c, 0x3277, 0x3284, 0x3282, 0x8b07, 0x3298,
+  0x8b3a, 0x32a4, 0x32a6, 0x32af, 0x32ba, 0x32bb, 0x32ca, 0x151f,
+  0x32d1, 0x8bb9, 0x32f7, 0x330a, 0x330b, 0x3324, 0x3335, 0x333e,
+  0x3342, 0x8c7c, 0x8c9d, 0x3367, 0x336c, 0x337a, 0x33a4, 0x33b4,
+  0x8dd3, 0x33b7, 0x33c0, 0x8e1d, 0x155d, 0x155e, 0x33d5, 0x33da,
+  0x1563, 0x33f4, 0x33f5, 0x3455, 0x3424, 0x3428, 0x156e, 0x3443,
+  0x3462, 0x3466, 0x346c, 0x348a, 0x348d, 0x3495, 0x34a0, 0x34a6,
+  0x34ad, 0x34ae, 0x34b7, 0x34ba, 0x34bf, 0x34c3, 0x8f45, 0x34ec,
+  0x34ef, 0x34f1, 0x34f3, 0x3500, 0x3501, 0x3509,
+  /* 0x22421..0x2247E */
+  0x353c, 0x3541, 0x15a6, 0x3547, 0x354a, 0x15a8, 0x3560, 0x3561,
+  0x3564, 0x8fe1, 0x357d, 0x3582, 0x3588, 0x3591, 0x15c5, 0x35d2,
+  0x9095, 0x906d, 0x35bf, 0x35c9, 0x35cc, 0x35d1, 0x35dd, 0x15da,
+  0x35e2, 0x9064, 0x35e9, 0x3628, 0x915f, 0x3607, 0x3610, 0x3630,
+  0x3637, 0x15f4, 0x363d, 0x363f, 0x3640, 0x3647, 0x365e, 0x3660,
+  0x366d, 0x1605, 0x3688, 0x368c, 0x3695, 0x369a, 0x369d, 0x36a8,
+  0x36ad, 0x36b2, 0x36c5, 0x36cd, 0x36df, 0x36e8, 0x36f6, 0x36f7,
+  0x9201, 0x3715, 0x3723, 0x9255, 0x3729, 0x927b, 0x3745, 0x3746,
+  0x374c, 0x374d, 0x9274, 0x3768, 0x376f, 0x3773, 0x3774, 0x3775,
+  0x377b, 0x92e4, 0x92d7, 0x37ac, 0x379a, 0x379d, 0x379e, 0x37a8,
+  0x37d7, 0x92fd, 0x37cc, 0x9336, 0x9344, 0x37de, 0x37e6, 0x37f0,
+  0x164a, 0x37f8, 0x37fb, 0x37fd, 0x3804, 0x381e,
+  /* 0x22521..0x2257E */
+  0x3820, 0x3827, 0x3832, 0x3839, 0x93c4, 0x3849, 0x384c, 0x3867,
+  0x388a, 0x388b, 0x388d, 0x388f, 0x3890, 0x3894, 0x389d, 0x38aa,
+  0x38b1, 0x946d, 0x38c3, 0x38cd, 0x38e2, 0x38f3, 0x38f4, 0x3905,
+  0x3906, 0x390b, 0x390d, 0x3914, 0x3924, 0x95d7, 0x1691, 0x393d,
+  0x1699, 0x3946, 0x1696, 0xd329, 0x395b, 0x395f, 0x9647, 0x3975,
+  0x3976, 0x397c, 0x399f, 0x39ae, 0x39bc, 0x39c8, 0x39cd, 0x39de,
+  0x39e3, 0x39e4, 0x39e7, 0x39ee, 0x9706, 0x9742, 0x16cf, 0x3a0c,
+  0x3a0d, 0x3a17, 0x3a27, 0x3a2d, 0x3a55, 0x3a65, 0x3a7a, 0x3a8b,
+  0x3a9c, 0x3a9f, 0x3aa0, 0x3aa2, 0x3ab1, 0x3ab3, 0x3ab5, 0x3aba,
+  0x3abf, 0x3ada, 0x3adc, 0x3ae0, 0x3ae5, 0x3af0, 0x3aee, 0x3af5,
+  0x3b00, 0x3b08, 0x3b17, 0x3b34, 0x3b2d, 0x3b4c, 0x3b52, 0x3b68,
+  0x3b6f, 0x3b7c, 0x3b7f, 0x3b81, 0x3b84, 0x99c3,
+  /* 0x22821..0x2287E */
+  0x3b96, 0x3bac, 0x1761, 0x3bc0, 0x1762, 0x3bce, 0x3bd6, 0x176c,
+  0x176b, 0x3bf1, 0x3bfd, 0x1775, 0x3c03, 0x3c29, 0x3c30, 0x9a56,
+  0x3c5f, 0x3c63, 0x3c67, 0x3c68, 0x3c69, 0x3c70, 0x9b2d, 0x9b45,
+  0x3c7c, 0x9b78, 0x9b62, 0x3c88, 0x3c8a, 0x17c1, 0x9ba1, 0x9b9c,
+  0x3ca0, 0x3ca2, 0x3ca6, 0x3ca7, 0x9b92, 0x3cad, 0x3cb5, 0x9bb7,
+  0x3cc9, 0x9be0, 0x9c33, 0x3d06, 0x3d10, 0x3d2b, 0x3d1d, 0x3d20,
+  0x3d24, 0x3d26, 0x3d31, 0x3d39, 0x3d42, 0x17e8, 0x3d61, 0x3d6a,
+  0x17f4, 0x3d70, 0x9d1e, 0x17fd, 0x3d88, 0x1800, 0x3d92, 0x3d94,
+  0x3d97, 0x3d99, 0x3db0, 0x3db2, 0x3db4, 0x9d76, 0x3db9, 0x3dd1,
+  0x3dd7, 0x3dd8, 0x3de0, 0x9dfa, 0x3de4, 0x3de9, 0x182f, 0x3e00,
+  0x1836, 0x3e12, 0x3e15, 0x1840, 0x3e1f, 0x3e2e, 0x3e3e, 0x3e49,
+  0x185c, 0x3e56, 0x1861, 0x3e6b, 0x3e6c, 0x3e6d,
+  /* 0x22C21..0x22C7E */
+  0x3e6e, 0x9e7b, 0x3ea5, 0x3eaa, 0x3eac, 0x3eb9, 0x3ebf, 0x3ec6,
+  0x3ed2, 0x3ed9, 0xa01e, 0x3efd, 0x3f08, 0x3f0e, 0x3f1c, 0xa0ad,
+  0x3f1e, 0x3f47, 0x3f63, 0x3f72, 0x3f7e, 0x3f8f, 0x3fa2, 0x3fa4,
+  0x3fb8, 0x3fc4, 0x18fa, 0x3fc7, 0x3fcb, 0x3fd2, 0x3fd3, 0x3fd4,
+  0x3fe2, 0x3fee, 0x3fef, 0x3ff3, 0x3ffc, 0x1917, 0x4017, 0x4022,
+  0x4024, 0x191a, 0x404c, 0x407f, 0x408a, 0x4095, 0x40a8, 0xa1f3,
+  0x40b0, 0x40b1, 0x40be, 0x40c8, 0x40d9, 0x40db, 0x40ee, 0x40f2,
+  0x40f5, 0x4110, 0x4112, 0x4113, 0x4119, 0x411e, 0x413a, 0x196f,
+  0x4141, 0x4146, 0x4160, 0x417c, 0xa25b, 0x4192, 0x4193, 0x4197,
+  0x4198, 0x41a5, 0x41a8, 0x41ad, 0xa2ab, 0x41d5, 0x41dd, 0x41df,
+  0x41f5, 0xa38f, 0x4215, 0x4223, 0x4229, 0x4246, 0x424c, 0x4251,
+  0x4252, 0x4261, 0x4264, 0x427b, 0x426d, 0x4273,
+  /* 0x22D21..0x22D7E */
+  0x4299, 0x42a6, 0x42d5, 0xa4b8, 0x42fd, 0x4303, 0x430d, 0x4310,
+  0xa54f, 0xa550, 0x4332, 0x4335, 0x433b, 0x433c, 0x4341, 0x4344,
+  0x434e, 0xa546, 0x4359, 0xa61d, 0xa5a6, 0x436c, 0x4384, 0x4399,
+  0xa624, 0x4394, 0x43bd, 0x43f7, 0x43d4, 0x43d5, 0x43dc, 0x43e0,
+  0x43eb, 0x43ec, 0x43f2, 0x4409, 0x441e, 0x4425, 0x4429, 0x442f,
+  0x445a, 0x445b, 0x445d, 0x4473, 0x447d, 0x4487, 0x4491, 0x449d,
+  0x449f, 0x44cb, 0x44cc, 0x44d5, 0x44d7, 0xa7e1, 0x44e4, 0x44e5,
+  0x44ff, 0x4504, 0x1a6e, 0x450f, 0x4514, 0x4516, 0x1a73, 0x451e,
+  0x4532, 0x4544, 0x4554, 0x456b, 0x457a, 0x4581, 0x4584, 0x4585,
+  0x458a, 0x45b2, 0x45b5, 0x45b8, 0x45bf, 0x45c2, 0x45c9, 0x45d4,
+  0x1ad6, 0x45f2, 0x45f9, 0x45fc, 0x4604, 0x4608, 0x4621, 0x462a,
+  0x4645, 0x4651, 0x464e, 0x1aea, 0xa8c3, 0x4657,
+  /* 0x22E21..0x22E7E */
+  0x465b, 0x4663, 0xa8f5, 0xa8b6, 0x466a, 0x466b, 0x466c, 0x466d,
+  0x467b, 0x4680, 0x4690, 0x4692, 0x4699, 0x1b0e, 0x46ad, 0x46b1,
+  0x46b5, 0x1b1a, 0x46bf, 0x1b1c, 0x46ec, 0x1ad7, 0x4701, 0x4705,
+  0x4712, 0xa972, 0x4719, 0xa9d3, 0xa9d2, 0x474c, 0x474d, 0x4754,
+  0x475d, 0xa9d0, 0xa9e4, 0xa9d5, 0x4774, 0x4776, 0xa9da, 0x4792,
+  0xa9df, 0x6363, 0x4810, 0x47b0, 0x47b2, 0x47c3, 0x47c8, 0x47d2,
+  0x47d9, 0x47db, 0x47f0, 0x47f7, 0xaa4a, 0xaa51, 0xaa4b, 0x4818,
+  0x481f, 0x482d, 0xaa65, 0x4833, 0x483b, 0x483e, 0x4844, 0x4845,
+  0x4849, 0x484c, 0x4855, 0x4857, 0x1b77, 0x486b, 0x486e, 0x487a,
+  0x487c, 0x4882, 0x4890, 0x4896, 0x1b6d, 0x4898, 0x4899, 0x489a,
+  0x489c, 0x48aa, 0x48ab, 0x48b4, 0x48bb, 0x48fb, 0xaae4, 0xab5a,
+  0x8113, 0x48c3, 0x48c5, 0x48cc, 0x48cf, 0x48d6,
+  /* 0x22F21..0x22F7E */
+  0x48d9, 0x48e4, 0x48e5, 0x48ec, 0x48f7, 0x4903, 0x4907, 0x1b87,
+  0x1b88, 0xab94, 0x493b, 0x1b8d, 0x4946, 0x4969, 0x496c, 0x4972,
+  0x497a, 0x497f, 0x4992, 0x1ba4, 0x4996, 0x4998, 0x49a6, 0x49b0,
+  0x49b7, 0x49ba, 0x49bc, 0x49c0, 0x49d1, 0x49d6, 0xac39, 0xac47,
+  0x4a30, 0xac38, 0xac3a, 0x49e3, 0x49ee, 0x49ef, 0x49f3, 0x1bcd,
+  0x49f4, 0x49fe, 0x4a11, 0x4a1a, 0x4a1d, 0xad1c, 0x4a32, 0x4a33,
+  0x4a34, 0x4a3f, 0x4a46, 0x4a49, 0x4a7a, 0x4a4e, 0x4a52, 0x4a64,
+  0xad0c, 0x4a7e, 0x4a83, 0x4a8b, 0x1bf0, 0x4a91, 0x4a9f, 0x4aa1,
+  0xad64, 0x4aab, 0x4abd, 0x4ac6, 0x4ad4, 0x4ad0, 0x4adc, 0x4add,
+  0xadff, 0xade7, 0x4aec, 0x4af1, 0x4af2, 0x4af3, 0x4afd, 0xae24,
+  0x4b0b, 0x4b0f, 0x4b10, 0x4b11, 0xae3d, 0x4b17, 0x1c26, 0x4b2f,
+  0x4b4a, 0x4b58, 0x4b6c, 0x4b75, 0x4b7a, 0x4b81,
+  /* 0x26E21..0x26E7E */
+  0x4b9b, 0x4bae, 0xaf98, 0x4bbd, 0x4bbe, 0x4bc7, 0x4bc8, 0x4bc9,
+  0x4bda, 0x4be6, 0x4be7, 0x4bee, 0x4bf1, 0x4c02, 0x4c0a, 0x4c0e,
+  0x4c35, 0x4c36, 0x4c3a, 0xb07f, 0x4c3f, 0x4c4d, 0x4c5b, 0x4c6d,
+  0x4c84, 0x4c89, 0x1cc3, 0x4c94, 0x4c95, 0x4c97, 0x4cad, 0x4cc2,
+  0x4cd0, 0x1cd2, 0x4cd6, 0x4cda, 0x4cdc, 0x4ce9, 0x4cec, 0x4ced,
+  0xb100, 0x4d00, 0x4d0a, 0x4d24, 0x4d26, 0x4d27, 0x4c67, 0x4d2f,
+  0x4d3c, 0x4d5b, 0x4d5e, 0x4d60, 0x4d70, 0x4d80, 0x4d81, 0x4d8a,
+  0x4d8d, 0x4d91, 0x4d98, 0xb140, 0x4e17, 0xb1fa, 0xb1f9, 0xb1d3,
+  0x4dab, 0x4dae, 0x4db4, 0x4dc2, 0x4d34, 0x4dc8, 0x4dce, 0x4dcf,
+  0x4dd0, 0x4ddf, 0x4de9, 0x4df6, 0x4e36, 0x4e1e, 0x4e22, 0x4e27,
+  0x1d11, 0x4e32, 0x4e3c, 0x4e48, 0x4e49, 0x4e4b, 0x4e4c, 0x4e4f,
+  0x4e51, 0x4e53, 0x4e54, 0x4e57, 0x4e63, 0x1d1e,
+  /* 0x26F21..0x26F7E */
+  0x4e93, 0x4ea7, 0x4eb4, 0x4ebf, 0x4ec3, 0x4eca, 0x4ed9, 0x4f35,
+  0x4eeb, 0x4ef9, 0x4efb, 0x4f0a, 0x4f0c, 0x4f18, 0x4f25, 0x4f36,
+  0x4f3c, 0xb27e, 0x4f52, 0x4f57, 0x4f5a, 0x4f60, 0x4f68, 0x4f98,
+  0x4f7d, 0x4f90, 0x4f96, 0x4fbe, 0x4f9f, 0x4fa5, 0x4faf, 0x1d64,
+  0x4fb5, 0x4fc8, 0x4fc9, 0x4fda, 0x4fde, 0x4fe9, 0xb396, 0x4ffc,
+  0x5000, 0x5007, 0x500a, 0x5023, 0xb403, 0x5039, 0x503a, 0x503c,
+  0x5043, 0x5047, 0x504b, 0x1d9a, 0x5054, 0x5065, 0x5069, 0x506c,
+  0x506e, 0x5076, 0x507e, 0x5081, 0x5086, 0x5095, 0x5097, 0x50bb,
+  0xb4c6, 0x509f, 0x50b1, 0xb4fe, 0x50ec, 0x50ca, 0x50d1, 0x50d3,
+  0x50dc, 0x5103, 0x5104, 0x5106, 0x5107, 0x5108, 0x510c, 0x1dc0,
+  0x512f, 0x5131, 0x5150, 0x514a, 0x5153, 0x515e, 0x1dd4, 0x5196,
+  0x5180, 0x519b, 0x51a0, 0x51a2, 0x51ae, 0x51af,
+  /* 0x27021..0x2707E */
+  0x51b3, 0xb5bc, 0x51cb, 0x51d3, 0x51d9, 0x51dc, 0x5207, 0x1e05,
+  0x8149, 0x522b, 0x5234, 0x5238, 0x5239, 0x2e2c, 0x5242, 0x5253,
+  0x5257, 0x5263, 0xb629, 0x526e, 0x526f, 0x5278, 0x527f, 0x528e,
+  0xb6a5, 0x52ad, 0x52ae, 0x52b0, 0x52b1, 0x52c1, 0x1e60, 0x52cc,
+  0x1e66, 0x1e68, 0x52f3, 0x52fa, 0x5307, 0x5312, 0x5318, 0x5319,
+  0x1e83, 0x5339, 0x532c, 0x5331, 0x5333, 0x533d, 0x5352, 0x1e94,
+  0x536b, 0x536c, 0xb896, 0x536e, 0x536f, 0x5371, 0x5377, 0x5381,
+  0x5385, 0x538a, 0x5394, 0x5398, 0x539c, 0x539e, 0x53a5, 0x53a8,
+  0x53b5, 0x53b7, 0x53b9, 0x53bc, 0x53bf, 0x53c5, 0x53cb, 0x53e1,
+  0x53e7, 0x53f9, 0x5413, 0x53fa, 0x5401, 0x5424, 0x5431, 0x5439,
+  0x5453, 0x5440, 0x5443, 0x544d, 0x5452, 0x545d, 0x5471, 0x5481,
+  0x5485, 0x5488, 0xb94d, 0x5492, 0x5497, 0x5499,
+  /* 0x27121..0x2717E */
+  0x54a0, 0x54a1, 0x54a5, 0x54aa, 0x54ab, 0x54b9, 0x54bb, 0x54ba,
+  0x54d6, 0x54d8, 0x54de, 0x54ef, 0x54eb, 0xba56, 0x54fa, 0xba6f,
+  0x5520, 0x5524, 0x552a, 0x1f57, 0xbb16, 0x553d, 0x553e, 0x5540,
+  0x5548, 0x554e, 0x5550, 0x5552, 0x556c, 0x5572, 0x5571, 0x557a,
+  0x557d, 0x557e, 0x5581, 0xbc14, 0x558c, 0x1f75, 0x55a2, 0x1f77,
+  0x55b0, 0x55b7, 0x55bf, 0x55c0, 0x55c6, 0x55cf, 0x55d3, 0x55dd,
+  0x55df, 0x55e0, 0x55e7, 0x55ec, 0x55ee, 0x55f1, 0x55f9, 0x5603,
+  0x5618, 0x5607, 0x560f, 0x1fae, 0xbd0e, 0x5613, 0x561b, 0x561c,
+  0xbd37, 0x5625, 0x5628, 0x563c, 0x5633, 0xbd6a, 0x1fc9, 0x5641,
+  0xbd8b, 0x5649, 0x5655, 0x1fd7, 0x566e, 0x5695, 0x569c, 0x56a1,
+  0x56a0, 0x56a7, 0x56a8, 0x56af, 0xbe4a, 0x56c9, 0xbe55, 0x56e8,
+  0x56ec, 0xbf22, 0x5717, 0x571a, 0x572d, 0x5735,
+  /* 0x27221..0x2727E */
+  0xbfa9, 0x2039, 0xbfe5, 0xbfcd, 0x5758, 0x5760, 0x576a, 0xc01e,
+  0x5772, 0x577c, 0x577d, 0xc04c, 0x2058, 0x579a, 0x579f, 0x57a2,
+  0x57a4, 0x57a9, 0x57de, 0x57df, 0x57e4, 0x57e6, 0x57ea, 0x57ec,
+  0x2093, 0x57f0, 0x57f4, 0x57fb, 0xc12e, 0x5805, 0x5806, 0x5809,
+  0x580d, 0x5819, 0x5821, 0x582c, 0x5847, 0x5864, 0x586a, 0xc1d9,
+  0x588a, 0x5894, 0x58a4, 0x589d, 0x589e, 0x589f, 0x58bb, 0x58c8,
+  0x58cc, 0x58ce, 0x58d5, 0x58e0, 0x58e1, 0x58e6, 0x58f9, 0x58fa,
+  0x58fb, 0x58fe, 0xc2a7, 0x5910, 0x591b, 0x5930, 0x5925, 0x593b,
+  0x594a, 0x5958, 0x595b, 0x2105, 0x5967, 0x5972, 0x5994, 0x5995,
+  0x5996, 0x599b, 0x59a1, 0x59a9, 0x59b4, 0x59bb, 0x59c2, 0x59c7,
+  0x59cc, 0x59cd, 0x59d6, 0x2148, 0xc3a9, 0xc3b4, 0x214f, 0x5a0a,
+  0x5a11, 0x5a15, 0x5a1b, 0x5a1e, 0x2163, 0x5a2d,
+  /* 0x27321..0x2737E */
+  0x5a38, 0x5a47, 0x5a4c, 0x5a56, 0x5a59, 0x5a5c, 0x5a5f, 0x5a60,
+  0x5a67, 0x5a6a, 0x5a75, 0x5a78, 0x5a82, 0x5a8a, 0x5a90, 0x5aa3,
+  0x5aac, 0xc4d4, 0x21b4, 0x5ab9, 0x5abc, 0x5abe, 0x21bf, 0x5acc,
+  0x5ad1, 0x5ae7, 0x5ae8, 0x5af4, 0xc5e4, 0xc5e3, 0x5b07, 0xc5f1,
+  0x5b3d, 0x5b27, 0x5b2a, 0x5b2e, 0x5b2f, 0x5b31, 0x21e6, 0x21f3,
+  0x5b7f, 0x5b41, 0x21ee, 0x5b55, 0x5b79, 0x5b64, 0x5b66, 0x5b69,
+  0x5b73, 0xc632, 0x2207, 0x5b90, 0x5b91, 0x5b9b, 0x220e, 0x5baf,
+  0x5bb5, 0x5bbc, 0x5bc5, 0x5bca, 0xc6cb, 0xc6e4, 0x5bd4, 0x5bd6,
+  0x5bda, 0x5bea, 0x5bf0, 0x5c03, 0x5c0b, 0x5c0e, 0x5c0f, 0x5c26,
+  0x5c45, 0x5c4a, 0x5c51, 0x5c57, 0x5c5e, 0x5c61, 0x5c69, 0x5c6e,
+  0x5c6f, 0x5c70, 0xc82e, 0xc856, 0xc865, 0x5ca6, 0xc862, 0x5cb6,
+  0x5cb7, 0x5cbf, 0xc8d8, 0x5cc4, 0xc8c2, 0x5cc8,
+  /* 0x27421..0x2747E */
+  0x5ccd, 0xc8e8, 0x5cd7, 0xc923, 0x5ce6, 0x5ceb, 0xc95c, 0x5cf5,
+  0x5d03, 0x5d09, 0x22c6, 0x5d12, 0x5d1e, 0xc9e0, 0xc9d4, 0x5d3d,
+  0x5d3e, 0x5d40, 0x5d47, 0xca0c, 0xc9fb, 0x22d6, 0x5d59, 0x5d5a,
+  0x5d6a, 0x5d70, 0x22dd, 0x5d7f, 0xca17, 0x5d86, 0x5d88, 0x5d8c,
+  0x5d97, 0xca60, 0x5d9d, 0x5da7, 0x5daa, 0x5db6, 0x5db7, 0x5dc0,
+  0x5dd7, 0x5dd9, 0x5de6, 0x5df1, 0x5df9, 0x2302, 0xcaed, 0x8158,
+  0x5e10, 0x5e17, 0x5e1d, 0x5e20, 0x5e27, 0x5e2c, 0x5e45, 0x5e73,
+  0x5e75, 0x5e7e, 0x5e86, 0x5e87, 0x232b, 0x5e91, 0x5e98, 0x5e9a,
+  0x2343, 0x5f3c, 0x5f3b, 0x5f3e, 0x5f43, 0x5f44, 0x5f4f, 0x14c1,
+  0xcb70, 0x5f52, 0xcb86, 0x5f61, 0x5f63, 0x5f64, 0x5f6d, 0x5f7d,
+  0x5f7e, 0xcc4c, 0x5f90, 0x317b, 0xb10e, 0x5f96, 0x5f9c, 0x5fad,
+  0xcd02, 0x5fc3, 0x5fcf, 0x5fe3, 0x5fe5, 0x5fef,
+  /* 0x27521..0x2757E */
+  0x5ff2, 0x6002, 0x600a, 0x6008, 0x600e, 0x6011, 0x6016, 0x6024,
+  0x602c, 0x6030, 0x6043, 0x6066, 0x6071, 0x6075, 0x607b, 0x6099,
+  0x609c, 0x60a4, 0x60a7, 0x60b8, 0xce7e, 0x60c5, 0x60d5, 0x60d8,
+  0x60e6, 0xceb0, 0x610d, 0x60f5, 0x60fb, 0x23ee, 0x6135, 0x6116,
+  0x611e, 0x23f0, 0x6124, 0x6127, 0x612c, 0xcf1d, 0x613d, 0x2408,
+  0x6169, 0x2417, 0x6181, 0x241c, 0x6184, 0x6185, 0x2422, 0x6198,
+  0x61b2, 0x61c1, 0x61c3, 0x61d6, 0x61db, 0xd0dd, 0x61e4, 0xd0ea,
+  0x61ec, 0xd151, 0x61fd, 0x61ff, 0xd16f, 0x6204, 0xd1dd, 0x6219,
+  0x6221, 0x6222, 0xd21e, 0x6232, 0x6234, 0x623c, 0x6246, 0x6249,
+  0x6245, 0xd258, 0x624b, 0x2476, 0x624f, 0x247a, 0x6257, 0xd28c,
+  0x625c, 0x6263, 0xd2b7, 0x815d, 0x815e, 0x6279, 0x2491, 0x627d,
+  0x627f, 0x6283, 0x628a, 0x6293, 0x62a7, 0x62a8,
+  /* 0x27621..0x2767E */
+  0x62b2, 0x62b4, 0x62ba, 0x62bc, 0x62e2, 0x62e8, 0x62f7, 0x6307,
+  0x6308, 0x630c, 0x6354, 0x631b, 0x631d, 0x6330, 0x633c, 0x6344,
+  0x6357, 0x24be, 0x637f, 0x24d4, 0x24b3, 0x638d, 0x6394, 0x6395,
+  0x639b, 0x639d, 0x63c9, 0x63d0, 0x63d4, 0x63dd, 0x63e5, 0x63f9,
+  0x640f, 0x6411, 0x6415, 0xd373, 0x6417, 0x6439, 0x644a, 0x644f,
+  0x6451, 0x6452, 0x6459, 0x645a, 0x645c, 0xd3dd, 0x6465, 0x6476,
+  0x6478, 0x647c, 0x6481, 0x250d, 0x64dc, 0x6497, 0x64a6, 0x64be,
+  0x2508, 0x64ce, 0x64cf, 0x64d3, 0xd465, 0x64e7, 0x64ea, 0x64ef,
+  0x64f0, 0x64f1, 0x64fa, 0x64fd, 0x650c, 0x651b, 0x6524, 0x6525,
+  0x652b, 0x6534, 0x654f, 0x656f, 0x2525, 0x2543, 0x653e, 0x6551,
+  0x6553, 0x655e, 0x6561, 0x6562, 0xd594, 0x657b, 0x657d, 0x657f,
+  0x6581, 0x6586, 0x6593, 0x659d, 0x659f, 0xd5f8,
+  /* 0x27721..0x2777E */
+  0xd5f6, 0xd5f7, 0x65b7, 0x65bc, 0x65c7, 0x65ca, 0x65d8, 0x65d9,
+  0x65df, 0x65e1, 0x65e6, 0x65f6, 0x6600, 0x6611, 0x661e, 0x6621,
+  0x6624, 0x6627, 0xd68d, 0x6639, 0x663c, 0xd6b9, 0x6640, 0x8120,
+  0x6653, 0x6656, 0x666f, 0x6677, 0x667a, 0x6687, 0x6689, 0x668d,
+  0x6691, 0x669c, 0x669d, 0x66a8, 0x8121, 0x66b1, 0x66b3, 0x66c1,
+  0x66c3, 0x66d1, 0x66d5, 0x66d7, 0x66e3, 0x66e6, 0x25b8, 0x6705,
+  0x6707, 0x670e, 0x6710, 0x6713, 0x6719, 0x671f, 0x6721, 0x6723,
+  0x6731, 0x673a, 0x673e, 0x6740, 0x6743, 0x6751, 0x6758, 0x6764,
+  0x6765, 0x6772, 0x677c, 0xd75b, 0xd75a, 0x67a7, 0x6789, 0x678b,
+  0x6793, 0x67a0, 0xd77e, 0x25e5, 0x67be, 0xd790, 0x67c1, 0x67ce,
+  0x67f5, 0x67df, 0xd7c9, 0x67e3, 0x67e5, 0x67e6, 0x67ea, 0x67eb,
+  0x67ed, 0x6801, 0x6803, 0x680b, 0x6813, 0x6828,
+  /* 0x27821..0x2787E */
+  0x682e, 0x6832, 0x683c, 0x260f, 0x684a, 0x6858, 0x685f, 0x6864,
+  0xd815, 0xd814, 0x6869, 0xd831, 0x686f, 0x68a0, 0x68bc, 0x68bd,
+  0x68be, 0x68c0, 0x68d2, 0xd893, 0x68d1, 0x68d3, 0x68db, 0x68f0,
+  0x68f1, 0x2641, 0x6901, 0xd90e, 0x6937, 0xd923, 0x6942, 0x6945,
+  0x6949, 0xd952, 0x2665, 0x6962, 0x6980, 0x6989, 0x6990, 0x699f,
+  0x69b0, 0x69b7, 0x69d6, 0x69d8, 0x69eb, 0x26a1, 0x69f1, 0x69f3,
+  0x69fd, 0x69ff, 0x26af, 0x6a11, 0x6a14, 0xda85, 0x6a21, 0x6a35,
+  0x6a3e, 0x6a45, 0x6a4d, 0x6a58, 0x6aae, 0x6a90, 0x6ab7, 0x6abe,
+  0x6ad7, 0x6afc, 0xdb84, 0x6b0a, 0x6b05, 0x6b0d, 0x6b1c, 0x6b1f,
+  0x6b2d, 0x6b43, 0x270c, 0x6b51, 0x6b5e, 0x6b76, 0x6b7f, 0x6b81,
+  0x6b8b, 0x6b94, 0x6b95, 0x6b9c, 0x6b9e, 0x6c39, 0xdcb3, 0x6c3d,
+  0xdcbe, 0xdcc7, 0x6c45, 0x6c47, 0x6c4f, 0x6c54,
+  /* 0x27921..0x2797E */
+  0x6c57, 0x6c69, 0x6c6d, 0x6c73, 0xddb8, 0x6c93, 0x6c92, 0x6c99,
+  0x2764, 0x6c9b, 0x6ca4, 0x6cd6, 0x6cd5, 0x6cd9, 0xde20, 0x6cf0,
+  0x6cf1, 0xde90, 0x6d09, 0x6d0e, 0x6d6c, 0x6d84, 0x6d95, 0x6da6,
+  0xdfb7, 0x6dc6, 0x6dc8, 0x6dd9, 0x6dec, 0x6e0c, 0x27fd, 0x6dfd,
+  0x6e06, 0xe08a, 0x6e14, 0x6e16, 0x6e21, 0x6e22, 0x6e27, 0xe0bb,
+  0x2816, 0x6e36, 0x6e39, 0x6e4b, 0x6e54, 0x6e62, 0x6e6c, 0x6e6d,
+  0x6e6f, 0x6e98, 0x6e9e, 0x6eae, 0x6eb3, 0x6eb5, 0x6eb6, 0x6ebb,
+  0xe182, 0x6ed1, 0x6ed4, 0x284e, 0x6ef9, 0xe1f3, 0x6f00, 0x6f08,
+  0x6f17, 0x6f2b, 0x6f40, 0x6f4a, 0x6f58, 0xe28c, 0x6fa4, 0x6fb4,
+  0x8166, 0x6fb6, 0xe2d5, 0x6fc1, 0x6fc6, 0x8124, 0x6fca, 0x6fcd,
+  0x6fd3, 0x6fd5, 0x6fe0, 0x6ff1, 0x6ff5, 0x6ffb, 0x7002, 0x700c,
+  0x7037, 0xe36b, 0x7043, 0x7044, 0x705d, 0xe3c8,
+  /* 0x27A21..0x27A7E */
+  0xe3c9, 0x7085, 0x708c, 0x7090, 0x761d, 0x70a1, 0x28b5, 0x70b0,
+  0x70b6, 0x70c3, 0x70c8, 0xe4d7, 0x70dc, 0x70df, 0xe4fa, 0x70f6,
+  0x70f2, 0x7100, 0x70eb, 0x70fe, 0x70ff, 0x7104, 0x7106, 0x7118,
+  0x711c, 0x711e, 0x7137, 0x7139, 0x713a, 0x7146, 0x7147, 0x7157,
+  0x7159, 0x7161, 0x7164, 0x7174, 0x7179, 0x7185, 0x718e, 0x71a8,
+  0x71ae, 0x71b3, 0x71b6, 0x71c3, 0x71c4, 0x71da, 0xe549, 0xe546,
+  0x71ec, 0x71ee, 0x7201, 0x720a, 0x7216, 0x7217, 0xe56b, 0x7233,
+  0x7242, 0x7247, 0x724a, 0x724e, 0x7251, 0x7256, 0x7259, 0x7260,
+  0x7261, 0x7265, 0x7267, 0x7268, 0xe587, 0xe588, 0x727c, 0x727d,
+  0x727f, 0x7289, 0x728d, 0x7297, 0x7299, 0x729f, 0x72a7, 0x72ab,
+  0xe5ba, 0xe5bb, 0x72b2, 0x72bf, 0x72c0, 0x72c6, 0x72ce, 0x72d0,
+  0x72d7, 0x72d9, 0x72e5, 0x72e7, 0x7311, 0xe61e,
+  /* 0x27B21..0x27B7E */
+  0xe629, 0x72f7, 0x72f9, 0x72fb, 0x7302, 0x730d, 0x7315, 0x731d,
+  0x731e, 0x7327, 0x7329, 0xe671, 0xe643, 0x7347, 0x7351, 0x7357,
+  0x735a, 0x736b, 0x7371, 0x7373, 0x73a1, 0xe699, 0xe6cd, 0x7388,
+  0x738b, 0x738f, 0x739e, 0x73f5, 0xe6e4, 0xe6dd, 0x73f1, 0x73c1,
+  0x73c7, 0x73dc, 0x73e2, 0x73e7, 0x7409, 0x740f, 0x7416, 0x7417,
+  0x73fb, 0x7432, 0x7434, 0x743b, 0x7445, 0xe7c1, 0xe7ef, 0x746d,
+  0x746f, 0x7578, 0x7579, 0x7586, 0x758c, 0x758d, 0xe810, 0x75ab,
+  0x75b4, 0xe871, 0x75c8, 0xe8fb, 0xe91f, 0x762c, 0x7633, 0x7634,
+  0xe936, 0x763c, 0x7641, 0x7661, 0xe989, 0x7682, 0xe9eb, 0x769a,
+  0xea32, 0x29e7, 0x76a9, 0x76af, 0x76b3, 0x76ba, 0x76bd, 0x29fa,
+  0xeaf8, 0x76d8, 0x76da, 0x76dd, 0x2a04, 0x7714, 0x7723, 0x2a29,
+  0x7736, 0x7741, 0x7747, 0x7755, 0x7757, 0x775b,
+  /* 0x27C21..0x27C7E */
+  0x776a, 0xeba0, 0xebb1, 0x7796, 0x779a, 0x779e, 0x77a2, 0x77b1,
+  0x77b2, 0x77be, 0x77cc, 0x77d1, 0x77d4, 0x77d8, 0x77d9, 0x77e1,
+  0x77f1, 0x7804, 0x780d, 0x780e, 0x7814, 0x7816, 0x2abc, 0xec90,
+  0x7823, 0x7832, 0x7833, 0x7825, 0x7847, 0x7866, 0x78ab, 0x78ad,
+  0x78b0, 0xedcf, 0x78b7, 0x78b8, 0x78bb, 0x78bc, 0x78bf, 0x78c2,
+  0x78c7, 0x78cb, 0x78e0, 0xee7f, 0x78e1, 0x78e3, 0x78e5, 0x78ea,
+  0x78f0, 0x78f1, 0x78f3, 0x7908, 0x2b3b, 0xeef0, 0x7916, 0x7917,
+  0xef19, 0x791a, 0x791b, 0x791c, 0xef50, 0x7931, 0x7932, 0x7933,
+  0x793a, 0x793b, 0x793c, 0x7940, 0x7941, 0x7946, 0x794d, 0x794e,
+  0x795c, 0x795f, 0x7960, 0x79a3, 0x79a6, 0x79b9, 0x79bd, 0x79bf,
+  0x79c3, 0x79c9, 0x79d4, 0x79d9, 0x79de, 0xf0c6, 0x79f0, 0x79f9,
+  0x79fc, 0x7a0a, 0x7a11, 0x7a16, 0x7a1a, 0x7a20,
+  /* 0x27D21..0x27D7E */
+  0x7a31, 0x7a36, 0x7a44, 0x7a4c, 0x7a58, 0x2bc2, 0x7aaf, 0x2bca,
+  0x7ab7, 0x2bd2, 0x7ab9, 0xf172, 0x7ac6, 0x7ad0, 0x7ad2, 0x7ad5,
+  0x2be8, 0x7adc, 0x7ae0, 0x7ae5, 0x7ae9, 0x7b03, 0x7b0c, 0x7b10,
+  0x7b12, 0x7b16, 0x7b1c, 0x7b2b, 0x7b33, 0x7b3d, 0x2c20, 0x7b4b,
+  0x7b63, 0x7b65, 0x7b6b, 0x7b6c, 0x7b73, 0x7b76, 0x7b77, 0x7ba6,
+  0x7bac, 0x7bb1, 0xf2db, 0xf33d, 0x7bb2, 0x7bb8, 0x7bbe, 0x7bc7,
+  0x7bf3, 0x7bd8, 0x7bdd, 0x7be7, 0x7bea, 0x7beb, 0x7bef, 0x7bee,
+  0xf315, 0x7bfa, 0xf38a, 0x7bf7, 0xf349, 0x7c16, 0x7c18, 0x7c19,
+  0x7c1a, 0x7c1d, 0x7c22, 0x7c27, 0x7c29, 0x7c2a, 0xf3c4, 0x7c31,
+  0x7c36, 0x7c37, 0x7c45, 0x7c5c, 0xf3e9, 0x7c49, 0x7c4a, 0xf3db,
+  0x7c54, 0x7c58, 0x7c5b, 0x7c5d, 0x7c5f, 0x7c69, 0x7c6a, 0x7c6b,
+  0x7c6d, 0x7c6e, 0x7c70, 0x7c72, 0x7c75, 0x7c7a,
+  /* 0x27E21..0x27E7E */
+  0x7ce6, 0x7cf2, 0x7d0b, 0x7d02, 0xf4ce, 0x7d11, 0x7d17, 0x7d18,
+  0xf52f, 0x2cc4, 0xf51a, 0x7d32, 0x2cd1, 0x7d42, 0x7d4a, 0x7d5f,
+  0x7d62, 0xf5f9, 0x7d69, 0x7d6b, 0xf582, 0x7d73, 0x7d76, 0x7d77,
+  0x7d7e, 0x7d84, 0x7d8d, 0x7d99, 0x7da1, 0x7dbf, 0x7db5, 0x7db9,
+  0x7dbd, 0x7dc3, 0x7dc7, 0x7dc9, 0x7dd6, 0x7dda, 0x7ddf, 0x7de0,
+  0x7de3, 0x7df4, 0x2d07, 0x7e0a, 0x7e02, 0x7e0d, 0x7e19, 0x7e1c,
+  0x7e1d, 0x7e7b, 0x9f18, 0x7e80, 0x7e85, 0x7e9b, 0x7ea8, 0xf70c,
+  0x7ebd, 0xf7b7, 0x7edf, 0x7ee7, 0x7eee, 0x7eff, 0x7f02, 0x2d77,
+  0x7f03, 0x7f17, 0x7f19, 0x7f2f, 0x7f37, 0x7f3a, 0x7f3d, 0x7f41,
+  0x7f45, 0x7f46, 0x7f53, 0x7f55, 0x7f58, 0xf8f1, 0x7f5d, 0xf902,
+  0x7f69, 0xf91a, 0x7f6d, 0x7f70, 0x7f75, 0xf9b2, 0x0000, 0x0000,
+  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+};
+
+static const ucs4_t jisx0213_to_ucs_pagestart[] = {
+   0x0000,  0x0100,  0x0200,  0x0300,  0x0400,  0x1e00,  0x1f00,  0x2000,
+   0x2100,  0x2200,  0x2300,  0x2400,  0x2500,  0x2600,  0x2700,  0x2900,
+   0x3000,  0x3100,  0x3200,  0x3300,  0x3400,  0x3500,  0x3600,  0x3700,
+   0x3800,  0x3900,  0x3a00,  0x3b00,  0x3c00,  0x3d00,  0x3e00,  0x3f00,
+   0x4000,  0x4100,  0x4200,  0x4300,  0x4400,  0x4500,  0x4600,  0x4700,
+   0x4800,  0x4900,  0x4a00,  0x4b00,  0x4c00,  0x4d00,  0x4e00,  0x4f00,
+   0x5000,  0x5100,  0x5200,  0x5300,  0x5400,  0x5500,  0x5600,  0x5700,
+   0x5800,  0x5900,  0x5a00,  0x5b00,  0x5c00,  0x5d00,  0x5e00,  0x5f00,
+   0x6000,  0x6100,  0x6200,  0x6300,  0x6400,  0x6500,  0x6600,  0x6700,
+   0x6800,  0x6900,  0x6a00,  0x6b00,  0x6c00,  0x6d00,  0x6e00,  0x6f00,
+   0x7000,  0x7100,  0x7200,  0x7300,  0x7400,  0x7500,  0x7600,  0x7700,
+   0x7800,  0x7900,  0x7a00,  0x7b00,  0x7c00,  0x7d00,  0x7e00,  0x7f00,
+   0x8000,  0x8100,  0x8200,  0x8300,  0x8400,  0x8500,  0x8600,  0x8700,
+   0x8800,  0x8900,  0x8a00,  0x8b00,  0x8c00,  0x8d00,  0x8e00,  0x8f00,
+   0x9000,  0x9100,  0x9200,  0x9300,  0x9400,  0x9500,  0x9600,  0x9700,
+   0x9800,  0x9900,  0x9a00,  0x9b00,  0x9c00,  0x9d00,  0x9e00,  0x9f00,
+   0xf900,  0xfa00,  0xfe00,  0xff00, 0x20000, 0x20180, 0x20300, 0x20400,
+  0x20500, 0x20600, 0x20700, 0x20800, 0x20900, 0x20a00, 0x20b00, 0x20d00,
+  0x20e00, 0x20f00, 0x21200, 0x21300, 0x21400, 0x21500, 0x21600, 0x21700,
+  0x21800, 0x21900, 0x21c00, 0x21d00, 0x21e00, 0x21f00, 0x22100, 0x22200,
+  0x22300, 0x22600, 0x22800, 0x22900, 0x22a00, 0x22b00, 0x22c00, 0x22d00,
+  0x23100, 0x23300, 0x23400, 0x23500, 0x23600, 0x23700, 0x23800, 0x23a00,
+  0x23c00, 0x23d00, 0x23f00, 0x24000, 0x24100, 0x24300, 0x24600, 0x24700,
+  0x24800, 0x24a00, 0x24b00, 0x24c00, 0x24d00, 0x24e00, 0x25000, 0x25100,
+  0x25200, 0x25400, 0x25500, 0x25700, 0x25900, 0x25a00, 0x25b80, 0x25d00,
+  0x25e00, 0x25f00, 0x26000, 0x26200, 0x26300, 0x26400, 0x26600, 0x26700,
+  0x26800, 0x26900, 0x26a00, 0x26c00, 0x26e00, 0x26f00, 0x27080, 0x27380,
+  0x27600, 0x27700, 0x27900, 0x27a00, 0x27b00, 0x27c00, 0x27d80, 0x27f00,
+  0x28000, 0x28200, 0x28380, 0x28500, 0x28600, 0x28900, 0x28a00, 0x28b00,
+  0x28d00, 0x28e00, 0x28f00, 0x29200, 0x29400, 0x29500, 0x29600, 0x29700,
+  0x29800, 0x29a00, 0x29d00, 0x29e00, 0x29f00, 0x2a000, 0x2a100, 0x2a380,
+  0x2a500, 0x2a600,
+};
+
+static const short jisx0213_from_ucs_level1[2715] = {
+   -1,  -1,   0,   1,   2,   3,   4,   5,
+   -1,   6,   7,   8,   9,  10,  11,  12,
+   13,  14,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   15,  -1,  -1,  -1,  -1,  16,  -1,  -1,
+   17,  18,  19,  -1,  20,  21,  22,  23,
+   24,  25,  26,  27,  28,  -1,  29,  30,
+   31,  32,  -1,  33,  34,  35,  36,  37,
+   38,  39,  -1,  -1,  40,  41,  -1,  -1,
+   -1,  -1,  -1,  -1,  42,  -1,  43,  44,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   45,  46,  47,  48,  -1,  -1,  -1,  49,
+   50,  51,  52,  53,  54,  55,  56,  57,
+   58,  59,  60,  61,  62,  63,  64,  65,
+   66,  67,  68,  69,  -1,  70,  71,  72,
+   73,  74,  -1,  75,  76,  77,  -1,  -1,
+   -1,  78,  -1,  79,  80,  81,  82,  83,
+   84,  -1,  -1,  85,  86,  87,  88,  89,
+   90,  91,  92,  -1,  -1,  93,  94,  95,
+   96,  97,  98,  -1,  99, 100, 101, 102,
+  103, 104,  -1, 105, 106, 107,  -1, 108,
+  109, 110, 111, 112, 113, 114, 115, 116,
+  117, 118, 119,  -1, 120, 121,  -1, 122,
+  123, 124, 125,  -1,  -1,  -1, 126, 127,
+  128,  -1, 129,  -1, 130,  -1,  -1, 131,
+  132,  -1,  -1, 133, 134, 135,  -1,  -1,
+  136, 137, 138, 139, 140, 141, 142, 143,
+  144, 145, 146, 147, 148, 149, 150, 151,
+  152, 153, 154, 155, 156, 157, 158, 159,
+  160, 161, 162, 163, 164, 165, 166, 167,
+  168, 169, 170, 171, 172, 173, 174, 175,
+  176, 177, 178, 179, 180, 181, 182, 183,
+  184, 185, 186, 187, 188, 189, 190, 191,
+  192, 193, 194, 195, 196, 197, 198, 199,
+  200, 201, 202, 203, 204, 205, 206, 207,
+  208, 209, 210, 211, 212, 213, 214, 215,
+  216, 217, 218, 219, 220, 221, 222, 223,
+  224, 225, 226, 227, 228, 229, 230, 231,
+  232, 233, 234, 235, 236, 237, 238, 239,
+  240, 241, 242, 243, 244, 245, 246, 247,
+  248, 249, 250, 251, 252, 253, 254, 255,
+  256, 257, 258, 259, 260, 261, 262, 263,
+  264, 265, 266, 267, 268, 269, 270, 271,
+  272, 273, 274, 275, 276, 277, 278, 279,
+  280, 281, 282, 283, 284, 285, 286, 287,
+  288, 289, 290, 291, 292, 293, 294, 295,
+  296, 297, 298, 299, 300, 301, 302, 303,
+  304, 305, 306, 307, 308, 309, 310, 311,
+  312, 313, 314, 315, 316, 317, 318, 319,
+  320, 321, 322, 323, 324, 325, 326, 327,
+  328, 329, 330,  -1, 331, 332, 333, 334,
+  335, 336, 337, 338, 339, 340, 341, 342,
+  343, 344, 345, 346, 347, 348, 349, 350,
+  351, 352, 353, 354, 355, 356, 357, 358,
+  359, 360, 361, 362, 363, 364, 365, 366,
+  367, 368, 369, 370, 371, 372, 373, 374,
+  375, 376, 377, 378, 379, 380, 381,  -1,
+  382, 383, 384, 385, 386, 387, 388, 389,
+  390, 391, 392, 393, 394, 395, 396, 397,
+  398, 399, 400, 401, 402, 403, 404, 405,
+  406, 407, 408, 409, 410, 411, 412, 413,
+  414, 415, 416,  -1,  -1, 417, 418, 419,
+  420, 421, 422, 423, 424, 425, 426, 427,
+  428, 429, 430, 431, 432, 433, 434, 435,
+  436, 437, 438, 439, 440, 441, 442, 443,
+  444, 445,  -1, 446, 447, 448, 449, 450,
+  451, 452, 453, 454, 455, 456, 457,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1, 458, 459,  -1, 460,
+  461, 462,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1, 463,  -1,  -1, 464, 465,  -1, 466,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+  467,  -1, 468,  -1,  -1,  -1, 469,  -1,
+  470,  -1,  -1,  -1, 471, 472, 473, 474,
+   -1, 475,  -1,  -1, 476,  -1,  -1, 477,
+  478,  -1,  -1,  -1,  -1, 479,  -1,  -1,
+  480,  -1, 481,  -1,  -1, 482, 483,  -1,
+   -1,  -1,  -1, 484, 485,  -1, 486,  -1,
+   -1,  -1,  -1,  -1,  -1, 487,  -1, 488,
+   -1, 489, 490,  -1,  -1, 491,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+  492, 493,  -1, 494, 495, 496,  -1, 497,
+   -1, 498,  -1,  -1,  -1,  -1,  -1, 499,
+   -1, 500, 501,  -1, 502, 503,  -1,  -1,
+   -1,  -1, 504,  -1,  -1,  -1,  -1, 505,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1, 506,  -1,  -1, 507, 508, 509, 510,
+  511,  -1,  -1,  -1, 512, 513,  -1, 514,
+   -1,  -1,  -1,  -1,  -1, 515,  -1,  -1,
+  516,  -1,  -1,  -1, 517,  -1, 518,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1, 519,  -1,  -1,  -1,  -1,
+   -1, 520, 521,  -1,  -1,  -1, 522,  -1,
+   -1,  -1, 523,  -1,  -1, 524, 525,  -1,
+  526,  -1,  -1,  -1,  -1,  -1,  -1, 527,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1, 528, 529,
+   -1,  -1,  -1,  -1,  -1, 530,  -1, 531,
+   -1, 532,  -1, 533,  -1, 534, 535, 536,
+  537, 538,  -1,  -1, 539, 540,  -1, 541,
+  542,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1, 543,  -1,  -1,  -1,  -1,  -1,
+   -1, 544,  -1, 545, 546, 547,  -1, 548,
+   -1,  -1,  -1,  -1,  -1, 549,  -1,  -1,
+   -1,  -1, 550,  -1, 551,  -1,  -1, 552,
+   -1,  -1,  -1,  -1,  -1,  -1, 553,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+  554,  -1, 555,  -1,  -1,  -1,  -1, 556,
+   -1,  -1, 557,  -1,  -1,  -1,  -1,  -1,
+   -1, 558,  -1,  -1,  -1, 559,  -1,  -1,
+  560,  -1,  -1,  -1, 561,  -1,  -1,  -1,
+  562, 563, 564,  -1,  -1,  -1,  -1,  -1,
+   -1, 565,  -1,  -1, 566,  -1, 567, 568,
+  569, 570,  -1,  -1,  -1,  -1,  -1,  -1,
+  571,  -1, 572, 573, 574,  -1, 575,  -1,
+   -1,  -1,  -1,  -1,  -1, 576, 577,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1, 578,
+   -1,  -1,  -1, 579,  -1,  -1, 580,  -1,
+   -1, 581,  -1,  -1,  -1,  -1, 582,  -1,
+  583, 584,  -1, 585, 586, 587,  -1, 588,
+  589, 590,  -1, 591,  -1,  -1,  -1,  -1,
+   -1, 592, 593,  -1,  -1, 594,  -1,  -1,
+  595,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1, 596, 597,  -1, 598,  -1,  -1,  -1,
+   -1,  -1,  -1, 599,  -1, 600,  -1, 601,
+  602, 603, 604, 605,  -1,  -1,  -1,  -1,
+  606, 607,  -1, 608,  -1,  -1,  -1,  -1,
+   -1, 609,  -1,  -1,  -1,  -1, 610, 611,
+   -1,  -1,  -1, 612, 613,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1, 614,
+  615, 616,  -1,  -1,  -1,  -1,  -1,  -1,
+  617,  -1, 618,  -1, 619, 620,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1, 621,  -1,
+   -1,  -1, 622,  -1,  -1,  -1, 623, 624,
+   -1,  -1, 625,  -1,  -1,  -1, 626,  -1,
+  627,  -1,  -1,  -1,  -1,  -1, 628,  -1,
+   -1,  -1, 629,  -1,  -1,  -1,  -1,  -1,
+   -1, 630, 631, 632,  -1,  -1,  -1, 633,
+  634, 635,  -1,  -1,  -1, 636,  -1, 637,
+   -1,  -1,  -1, 638,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1, 639, 640,  -1,
+  641, 642, 643, 644,  -1,  -1,  -1, 645,
+   -1,  -1,  -1,  -1, 646, 647,  -1, 648,
+  649,  -1, 650, 651, 652,  -1,  -1, 653,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1, 654,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1, 655,  -1,  -1,  -1,  -1, 656,
+   -1, 657,  -1, 658, 659, 660,  -1,  -1,
+   -1,  -1,  -1, 661,  -1,  -1,  -1,  -1,
+   -1, 662,  -1,  -1,  -1,  -1,  -1,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1,  -1, 663,
+  664, 665, 666, 667,  -1,  -1,  -1, 668,
+  669,  -1, 670, 671,  -1,  -1, 672,  -1,
+   -1,  -1,  -1,  -1,  -1,  -1, 673,  -1,
+  674,  -1,  -1,  -1,  -1,  -1,  -1, 675,
+  676,  -1, 677,
+};
+
+static const unsigned short jisx0213_from_ucs_level2_data[] = {
+  /* 0x0080 */
+  0x2922, 0x2923, 0x2171, 0x2172, 0x2924, 0x2925, 0x2178, 0x212f,
+  0x2926, 0x2927, 0x2928, 0x224c, 0x2929, 0x292a, 0x292b, 0x216b,
+  0x215e, 0x292c, 0x292d, 0x212d, 0x2279, 0x292e, 0x292f, 0x2930,
+  0x2931, 0x2932, 0x2933, 0x2934, 0x2935, 0x2936,
+  /* 0x00C0 */
+  0x2937, 0x2938, 0x2939, 0x293a, 0x293b, 0x293c, 0x293d, 0x293e,
+  0x293f, 0x2940, 0x2941, 0x2942, 0x2943, 0x2944, 0x2945, 0x2946,
+  0x2947, 0x2948, 0x2949, 0x294a, 0x294b, 0x294c, 0x294d, 0x215f,
+  0x294e, 0x294f, 0x2950, 0x2951, 0x2952, 0x2953, 0x2954, 0x2955,
+  0x2956, 0x2957, 0x2958, 0x2959, 0x295a, 0x295b, 0x29dc, 0x295d,
+  0x295e, 0x295f, 0x2960, 0x2961, 0x2962, 0x2963, 0x2964, 0x2965,
+  0x2966, 0x2967, 0x2968, 0x2969, 0x296a, 0x296b, 0x296c, 0x2160,
+  0x296d, 0x296e, 0x296f, 0x2970, 0x2971, 0x2972, 0x2973, 0x2974,
+  /* 0x0100 */
+  0x2975, 0x297a, 0x2a3a, 0x2a49, 0x2a21, 0x2a2c, 0x2a3c, 0x2a4b,
+  0x2a59, 0x2a5f, 0x2a3d, 0x2a4c, 0x2a40, 0x2a4f, 0x2a50, 0x2978,
+  0x297d, 0x2a3e, 0x2a4d, 0x2a3f, 0x2a4e, 0x2a5a, 0x2a60, 0x2a5b,
+  0x2a61, 0x2a7d, 0x2976, 0x297b, 0x2a5c, 0x2a62, 0x2a3b, 0x2a4a,
+  0x2a24, 0x2a2f,
+  /* 0x0140 */
+  0x2a23, 0x2a2e, 0x2a41, 0x2a51, 0x2a42, 0x2a52, 0x2a7a, 0x2979,
+  0x297e, 0x2a43, 0x2a53, 0x2b2b, 0x2b2a, 0x2a39, 0x2a48, 0x2a44,
+  0x2a54, 0x2a25, 0x2a30, 0x2a5d, 0x2a63, 0x2a27, 0x2a33, 0x2a26,
+  0x2a32, 0x2a47, 0x2a57, 0x2a28, 0x2a34, 0x2977, 0x297c, 0x2a5e,
+  0x2a64, 0x2a45, 0x2a55, 0x2a46, 0x2a56, 0x2a29, 0x2a35, 0x2a2b,
+  0x2a38, 0x2a2a, 0x2a37,
+  /* 0x0180 */
+  0x2b29,
+  /* 0x01C0 */
+  0x2b24, 0x286f, 0x2870, 0x2871, 0x2876, 0x2877, 0x2878, 0x2879,
+  0x287a, 0x287b, 0x287c, 0x2874, 0x2875, 0x2b45,
+  /* 0x0240 */
+  0x2b33, 0x2b39, 0x2b3a, 0x2b25, 0x2bb8, 0x2b3f, 0x2a6e, 0x2b26,
+  0x2b2e, 0x2bb0, 0x2bc3, 0x2b31, 0x2b32, 0x2a75, 0x2b28, 0x2a79,
+  0x2b36, 0x2b3c, 0x2b22, 0x2b42, 0x2b2c, 0x2a6a, 0x2a74, 0x2a6b,
+  0x2b34, 0x2a7b, 0x2a65, 0x2a76, 0x2a6f, 0x2b2f, 0x2a6c, 0x2b41,
+  0x2a73, 0x2a70, 0x2a67,
+  /* 0x0280 */
+  0x2a7c, 0x2a71, 0x2a68, 0x2b27, 0x2a6d, 0x2b2d, 0x2b35, 0x2a66,
+  0x2bb7, 0x2b3b, 0x2a78, 0x2a72, 0x2b40, 0x2a69, 0x2b21, 0x2a7e,
+  0x2b23, 0x2a77, 0x2b3e, 0x2b3d,
+  /* 0x02C0 */
+  0x2a31, 0x2b53, 0x2b54, 0x2b55, 0x2b56, 0x2a22, 0x2a58, 0x2a2d,
+  0x2a36, 0x2b71, 0x2be0, 0x2b61, 0x2b62, 0x2b63, 0x2be4,
+  /* 0x0300 */
+  0x2b5c, 0x2b5a, 0x2b5f, 0x2b7d, 0x2b5b, 0x2b57, 0x2b6d, 0x2b59,
+  0x2b5e, 0x2b5d, 0x2b78, 0x2b79, 0x2b7e, 0x2b6a, 0x2b76, 0x2b77,
+  0x2b6b, 0x2b6c, 0x2b72, 0x2b67, 0x2b6f, 0x2b7a, 0x2b68, 0x2b70,
+  0x2b73, 0x2b75, 0x2b69, 0x2b7b, 0x2b7c, 0x2b74, 0x2b6e,
+  /* 0x0340 */
+  0x2b52,
+  /* 0x0380 */
+  0x2621, 0x2622, 0x2623, 0x2624, 0x2625, 0x2626, 0x2627, 0x2628,
+  0x2629, 0x262a, 0x262b, 0x262c, 0x262d, 0x262e, 0x262f, 0x2630,
+  0x2631, 0x2632, 0x2633, 0x2634, 0x2635, 0x2636, 0x2637, 0x2638,
+  0x2641, 0x2642, 0x2643, 0x2644, 0x2645, 0x2646, 0x2647, 0x2648,
+  0x2649, 0x264a, 0x264b, 0x264c, 0x264d, 0x264e, 0x264f,
+  /* 0x03C0 */
+  0x2650, 0x2651, 0x2659, 0x2652, 0x2653, 0x2654, 0x2655, 0x2656,
+  0x2657, 0x2658,
+  /* 0x0400 */
+  0x2727, 0x2721, 0x2722, 0x2723, 0x2724, 0x2725, 0x2726, 0x2728,
+  0x2729, 0x272a, 0x272b, 0x272c, 0x272d, 0x272e, 0x272f, 0x2730,
+  0x2731, 0x2732, 0x2733, 0x2734, 0x2735, 0x2736, 0x2737, 0x2738,
+  0x2739, 0x273a, 0x273b, 0x273c, 0x273d, 0x273e, 0x273f, 0x2740,
+  0x2741, 0x2751, 0x2752, 0x2753, 0x2754, 0x2755, 0x2756, 0x2758,
+  0x2759, 0x275a, 0x275b, 0x275c, 0x275d, 0x275e, 0x275f, 0x2760,
+  0x2761,
+  /* 0x0440 */
+  0x2762, 0x2763, 0x2764, 0x2765, 0x2766, 0x2767, 0x2768, 0x2769,
+  0x276a, 0x276b, 0x276c, 0x276d, 0x276e, 0x276f, 0x2770, 0x2771,
+  0x2757,
+  /* 0x1E00 */
+  0x2872, 0x2873,
+  /* 0x1F40 */
+  0x2b46, 0x2b47, 0x2b50, 0x2b51,
+  /* 0x2000 */
+  0x213e, 0x237c, 0x213d, 0x2142, 0x2146, 0x2147, 0x2148, 0x2149,
+  0x2277, 0x2278, 0x2340, 0x2145, 0x2144, 0x2273, 0x216c, 0x216d,
+  0x2228, 0x286b, 0x2b58,
+  /* 0x2040 */
+  0x2c7e, 0x286c, 0x286d, 0x286e, 0x2c7d,
+  /* 0x2080 */
+  0x2921,
+  /* 0x2100 */
+  0x216e, 0x235d, 0x235f, 0x2d62, 0x2d64, 0x2360, 0x2272, 0x235c,
+  /* 0x2140 */
+  0x2778, 0x2779, 0x277a, 0x2d35, 0x2d36, 0x2d37, 0x2d38, 0x2d39,
+  0x2d3a, 0x2d3b, 0x2d3c, 0x2d3d, 0x2d3e, 0x2d3f, 0x2d57, 0x2c35,
+  0x2c36, 0x2c37, 0x2c38, 0x2c39, 0x2c3a, 0x2c3b, 0x2c3c, 0x2c3d,
+  0x2c3e, 0x2c3f, 0x2c40,
+  /* 0x2180 */
+  0x222b, 0x222c, 0x222a, 0x222d, 0x2271, 0x2327, 0x2325, 0x2326,
+  0x2328,
+  /* 0x21C0 */
+  0x2329, 0x224d, 0x224e, 0x232b, 0x232c, 0x232a, 0x232d,
+  /* 0x2200 */
+  0x224f, 0x225f, 0x2250, 0x2247, 0x2260, 0x223a, 0x2246, 0x223b,
+  0x215d, 0x235b, 0x2265, 0x2267, 0x2167, 0x2d78, 0x225c, 0x2254,
+  0x2255, 0x224a, 0x224b, 0x2241, 0x2240, 0x2269, 0x226a, 0x2d73,
+  0x2168, 0x2268, 0x2266,
+  /* 0x2240 */
+  0x226c, 0x226d, 0x226e, 0x2262, 0x2162, 0x2261, 0x226b, 0x2165,
+  0x2166, 0x2263, 0x2264, 0x226f, 0x2270,
+  /* 0x2280 */
+  0x223e, 0x223f, 0x2242, 0x2243, 0x223c, 0x223d, 0x2244, 0x2245,
+  0x2251, 0x2252, 0x2253, 0x225d, 0x2d79,
+  /* 0x22C0 */
+  0x2776, 0x2777,
+  /* 0x2300 */
+  0x2248, 0x2249, 0x225e, 0x277c,
+  /* 0x2380 */
+  0x2742, 0x2743,
+  /* 0x23C0 */
+  0x2744, 0x2745, 0x2746, 0x2747, 0x2748, 0x2749, 0x274a, 0x274b,
+  0x274c, 0x274d, 0x274e, 0x274f, 0x2750, 0x277e,
+  /* 0x2400 */
+  0x277d,
+  /* 0x2440 */
+  0x2d21, 0x2d22, 0x2d23, 0x2d24, 0x2d25, 0x2d26, 0x2d27, 0x2d28,
+  0x2d29, 0x2d2a, 0x2d2b, 0x2d2c, 0x2d2d, 0x2d2e, 0x2d2f, 0x2d30,
+  0x2d31, 0x2d32, 0x2d33, 0x2d34,
+  /* 0x24C0 */
+  0x2c41, 0x2c42, 0x2c43, 0x2c44, 0x2c45, 0x2c46, 0x2c47, 0x2c48,
+  0x2c49, 0x2c4a, 0x2c4b, 0x2c4c, 0x2c4d, 0x2c4e, 0x2c4f, 0x2c50,
+  0x2c51, 0x2c52, 0x2c53, 0x2c54, 0x2c55, 0x2c56, 0x2c57, 0x2c58,
+  0x2c59, 0x2c5a, 0x2c2b, 0x2c2c, 0x2c2d, 0x2c2e, 0x2c2f, 0x2c30,
+  0x2c31, 0x2c32, 0x2c33, 0x2c34, 0x265a, 0x265b, 0x265c, 0x265d,
+  0x265e, 0x265f, 0x2660, 0x2661, 0x2662, 0x2663,
+  /* 0x2500 */
+  0x2821, 0x282c, 0x2822, 0x282d, 0x2823, 0x282e, 0x2824, 0x282f,
+  0x2826, 0x2831, 0x2825, 0x2830, 0x2827, 0x283c, 0x2837, 0x2832,
+  0x2829, 0x283e, 0x2839, 0x2834, 0x2828, 0x2838, 0x283d, 0x2833,
+  0x282a, 0x283a, 0x283f, 0x2835, 0x282b, 0x283b,
+  /* 0x2540 */
+  0x2840, 0x2836,
+  /* 0x2580 */
+  0x2223, 0x2222, 0x266d, 0x2225, 0x2224, 0x2322, 0x2321, 0x2227,
+  0x2226,
+  /* 0x25C0 */
+  0x2324, 0x2323, 0x2221, 0x217e, 0x233b, 0x217b, 0x217d, 0x217c,
+  0x2867, 0x2868, 0x2869, 0x286a, 0x233f, 0x227e,
+  /* 0x2600 */
+  0x2668, 0x2669, 0x266a, 0x266b, 0x217a, 0x2179, 0x2667, 0x2664,
+  0x2665, 0x2d7e,
+  /* 0x2640 */
+  0x216a, 0x2169, 0x263a, 0x263d, 0x263b, 0x2640, 0x2639, 0x263e,
+  0x263c, 0x263f, 0x266c, 0x227d, 0x2276, 0x227b, 0x227c, 0x2275,
+  0x227a, 0x2274,
+  /* 0x2700 */
+  0x277b,
+  /* 0x2740 */
+  0x2d7d, 0x2c21, 0x2c22, 0x2c23, 0x2c24, 0x2c25, 0x2c26, 0x2c27,
+  0x2c28, 0x2c29, 0x2c2a,
+  /* 0x2900 */
+  0x232e, 0x232f,
+  /* 0x2980 */
+  0x233a,
+  /* 0x29C0 */
+  0x237d, 0x237e,
+  /* 0x3000 */
+  0x2121, 0x2122, 0x2123, 0x2137, 0x2139, 0x213a, 0x213b, 0x2152,
+  0x2153, 0x2154, 0x2155, 0x2156, 0x2157, 0x2158, 0x2159, 0x215a,
+  0x215b, 0x2229, 0x222e, 0x214c, 0x214d, 0x225a, 0x225b, 0x2258,
+  0x2259, 0x2141, 0x2d60, 0x2d61, 0x2666, 0x2233, 0x2234, 0x2235,
+  0x2236, 0x2237, 0x233c,
+  /* 0x3040 */
+  0x2421, 0x2422, 0x2423, 0x2424, 0x2425, 0x2426, 0x2427, 0x2428,
+  0x2429, 0x242a, 0x24ab, 0x242c, 0x24ad, 0x242e, 0x24af, 0x2430,
+  0x24b1, 0x2432, 0x24b3, 0x2434, 0x2435, 0x2436, 0x2437, 0x2438,
+  0x2439, 0x243a, 0x243b, 0x243c, 0x243d, 0x243e, 0x243f, 0x2440,
+  0x2441, 0x2442, 0x2443, 0x2444, 0x2445, 0x2446, 0x2447, 0x2448,
+  0x2449, 0x244a, 0x244b, 0x244c, 0x244d, 0x244e, 0x244f, 0x2450,
+  0x2451, 0x2452, 0x2453, 0x2454, 0x2455, 0x2456, 0x2457, 0x2458,
+  0x2459, 0x245a, 0x245b, 0x245c, 0x245d, 0x245e, 0x245f,
+  /* 0x3080 */
+  0x2460, 0x2461, 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, 0x2467,
+  0x2468, 0x2469, 0x246a, 0x246b, 0x246c, 0x246d, 0x246e, 0x246f,
+  0x2470, 0x2471, 0x2472, 0x2473, 0x2474, 0x2475, 0x2476, 0x212b,
+  0x212c, 0x2135, 0x2136, 0x2239, 0x237b, 0x2521, 0x2522, 0x2523,
+  0x2524, 0x2525, 0x2526, 0x2527, 0x2528, 0x2529, 0x252a, 0x25ab,
+  0x252c, 0x25ad, 0x252e, 0x25af, 0x2530, 0x25b1, 0x2532, 0x25b3,
+  0x2534, 0x2535, 0x2536, 0x2537, 0x2538, 0x2539, 0x253a, 0x25bb,
+  0x253c, 0x253d, 0x253e, 0x253f,
+  /* 0x30C0 */
+  0x2540, 0x2541, 0x2542, 0x2543, 0x25c4, 0x2545, 0x2546, 0x2547,
+  0x25c8, 0x2549, 0x254a, 0x254b, 0x254c, 0x254d, 0x254e, 0x254f,
+  0x2550, 0x2551, 0x2552, 0x2553, 0x2554, 0x2555, 0x2556, 0x2557,
+  0x2558, 0x2559, 0x255a, 0x255b, 0x255c, 0x255d, 0x255e, 0x255f,
+  0x2560, 0x2561, 0x2562, 0x2563, 0x2564, 0x2565, 0x2566, 0x2567,
+  0x2568, 0x2569, 0x256a, 0x256b, 0x256c, 0x256d, 0x256e, 0x256f,
+  0x2570, 0x2571, 0x2572, 0x2573, 0x2574, 0x2575, 0x2576, 0x2772,
+  0x2773, 0x2774, 0x2775, 0x2126, 0x213c, 0x2133, 0x2134, 0x2238,
+  /* 0x31C0 */
+  0x266e, 0x266f, 0x2670, 0x2671, 0x2672, 0x2673, 0x2674, 0x26f5,
+  0x2676, 0x2677, 0x2679, 0x267a, 0x267b, 0x267c, 0x267d, 0x267e,
+  /* 0x3200 */
+  0x2d6a, 0x2d6b, 0x2d6c,
+  /* 0x3240 */
+  0x2841, 0x2842, 0x2843, 0x2844, 0x2845, 0x2846, 0x2847, 0x2848,
+  0x2849, 0x284a, 0x284b, 0x284c, 0x284d, 0x284e, 0x284f,
+  /* 0x3280 */
+  0x2d65, 0x2d66, 0x2d67, 0x2d68, 0x2d69, 0x2850, 0x2851, 0x2852,
+  0x2853, 0x2854, 0x2855, 0x2856, 0x2857, 0x2858, 0x2859, 0x285a,
+  0x285b, 0x285c, 0x285d, 0x285e,
+  /* 0x32C0 */
+  0x2c5b, 0x2c5c, 0x2c5d, 0x2c5e, 0x2c5f, 0x2c60, 0x2c61, 0x2c62,
+  0x2c63, 0x2c64, 0x2c65, 0x2c66, 0x2c67, 0x2c68, 0x2c69, 0x2c6a,
+  0x2c6b, 0x2c6c, 0x2c6d, 0x2c6e, 0x2c71, 0x2c70, 0x2c73, 0x2c72,
+  0x2c6f,
+  /* 0x3300 */
+  0x2d46, 0x2d4a, 0x2d41, 0x2d44, 0x2d42, 0x2d4c, 0x2d4b, 0x2d45,
+  0x2d4d, 0x2d47, 0x2d4f,
+  /* 0x3340 */
+  0x2d40, 0x2d4e, 0x2d43, 0x2d48, 0x2d49, 0x2d5f, 0x2d6f, 0x2d6e,
+  0x2d6d,
+  /* 0x3380 */
+  0x2d53, 0x2d54, 0x2d50, 0x2d51, 0x2d52, 0x2d56,
+  /* 0x33C0 */
+  0x2d55, 0x235e, 0x2d63,
+  /* 0x3400 */
+  0x2e23, 0xa12d, 0xa132, 0xa133,
+  /* 0x3440 */
+  0xa15e, 0xa156,
+  /* 0x3480 */
+  0xa17e, 0x2e53, 0xa32b,
+  /* 0x34C0 */
+  0xf468, 0xa32f, 0x2e5b,
+  /* 0x3500 */
+  0xa348,
+  /* 0x3540 */
+  0xa35d, 0xa35e, 0xa361, 0xa367,
+  /* 0x3580 */
+  0xa423, 0xa426,
+  /* 0x35C0 */
+  0xa42f, 0xa438, 0xa442,
+  /* 0x3600 */
+  0xa44a,
+  /* 0x3640 */
+  0xa479,
+  /* 0x3680 */
+  0xa53f, 0xa543, 0xa541,
+  /* 0x36C0 */
+  0xa557,
+  /* 0x3740 */
+  0xa823, 0xa825, 0xa829, 0xa828, 0xa82c,
+  /* 0x3780 */
+  0x4f5f,
+  /* 0x37C0 */
+  0xa83e, 0x4f6f, 0xa856, 0xa859, 0xa85c,
+  /* 0x3800 */
+  0xa85e, 0xa86f, 0xa871,
+  /* 0x3840 */
+  0xa874, 0xa879, 0xa87b,
+  /* 0x38C0 */
+  0xac3b,
+  /* 0x3900 */
+  0xac46, 0xac4a,
+  /* 0x3940 */
+  0xac60,
+  /* 0x3A40 */
+  0xad5b, 0xad5f,
+  /* 0x3AC0 */
+  0xad71, 0xae36, 0xad7c,
+  /* 0x3B00 */
+  0xae2e, 0xae32, 0xae34, 0x7549,
+  /* 0x3B40 */
+  0xae6d, 0xae65,
+  /* 0x3B80 */
+  0xaf28, 0xaf29, 0xaf2c, 0xaf34, 0x757e,
+  /* 0x3BC0 */
+  0x7621, 0xaf48, 0xaf5d,
+  /* 0x3C00 */
+  0x763a, 0xaf77,
+  /* 0x3CC0 */
+  0xee3b, 0xee42,
+  /* 0x3D00 */
+  0xee71, 0xee7e,
+  /* 0x3D40 */
+  0xef40,
+  /* 0x3D80 */
+  0xef54,
+  /* 0x3DC0 */
+  0xef70, 0xef77,
+  /* 0x3E00 */
+  0xf028, 0x7766,
+  /* 0x3E40 */
+  0xf03f, 0xf041, 0xf042,
+  /* 0x3E80 */
+  0xf049, 0xf050,
+  /* 0x3F40 */
+  0xf134, 0x784d, 0xf146, 0xf148,
+  /* 0x3F80 */
+  0xf15c,
+  /* 0x3FC0 */
+  0xf167, 0xf16c,
+  /* 0x4000 */
+  0xf222,
+  /* 0x4040 */
+  0xf22d,
+  /* 0x4080 */
+  0xf239,
+  /* 0x4100 */
+  0xf264,
+  /* 0x4140 */
+  0xf274, 0xf277, 0xf27d,
+  /* 0x4180 */
+  0xf333, 0xf337,
+  /* 0x41C0 */
+  0xf347, 0xf34b, 0xf348,
+  /* 0x4200 */
+  0xf353, 0xf357,
+  /* 0x4240 */
+  0x796d,
+  /* 0x42C0 */
+  0xf42b, 0xf436, 0xf43b,
+  /* 0x4300 */
+  0xf44e, 0xf45d,
+  /* 0x4340 */
+  0xf461,
+  /* 0x43C0 */
+  0xf53e, 0xf542,
+  /* 0x4400 */
+  0xf548, 0xf54a, 0xf54c, 0xf54f,
+  /* 0x4440 */
+  0x7a59, 0x7a5a, 0xf56c, 0xf56e,
+  /* 0x4480 */
+  0xf577, 0xf635, 0xf632,
+  /* 0x44C0 */
+  0xf634,
+  /* 0x4500 */
+  0xf659, 0xf654, 0xf66d,
+  /* 0x4540 */
+  0xf66e,
+  /* 0x4580 */
+  0x7b51, 0xf74f,
+  /* 0x45C0 */
+  0xf76c, 0x7b60,
+  /* 0x4600 */
+  0xf824,
+  /* 0x4640 */
+  0xf83a, 0xf843,
+  /* 0x4680 */
+  0xf84e, 0xf853,
+  /* 0x4700 */
+  0xf86b,
+  /* 0x4740 */
+  0xf929,
+  /* 0x47C0 */
+  0xf93f,
+  /* 0x4800 */
+  0xf949,
+  /* 0x4840 */
+  0x7c4b, 0xf95c,
+  /* 0x4880 */
+  0xfa27,
+  /* 0x4980 */
+  0x7d58,
+  /* 0x49C0 */
+  0xfb6a, 0xfb70,
+  /* 0x4A00 */
+  0xfb75, 0xfb78,
+  /* 0x4A80 */
+  0xfc37,
+  /* 0x4B00 */
+  0xfc55,
+  /* 0x4BC0 */
+  0xfd26, 0xfd28, 0xfd2a, 0xfd31,
+  /* 0x4C00 */
+  0x7e3e, 0xfd3f,
+  /* 0x4CC0 */
+  0xfe2a, 0xfe2d,
+  /* 0x4D00 */
+  0xfe4b,
+  /* 0x4D40 */
+  0xfe60,
+  /* 0x4E00 */
+  0x306c, 0x437a, 0xa122, 0x3c37, 0x4b7c, 0x3e66, 0x3b30, 0x3e65,
+  0x323c, 0x4954, 0x4d3f, 0xa123, 0x5022, 0x312f, 0xa124, 0x336e,
+  0x5023, 0x4024, 0x5242, 0x3556, 0x4a3a, 0x3e67, 0x4e3e, 0x4a42,
+  0x2e24, 0xa125, 0x5024, 0xa126, 0xf02e, 0x4366, 0xa127, 0x2e25,
+  0x2e26, 0x5025, 0x367a, 0x5026, 0x345d, 0x4330, 0x3c67, 0x5027,
+  0x5028,
+  /* 0x4E40 */
+  0xa128, 0x5029, 0x4735, 0x3557, 0xa129, 0xa12a, 0x4737, 0x4663,
+  0x3843, 0x4b33, 0xa12c, 0x6949, 0x502a, 0x3e68, 0x502b, 0x3235,
+  0xa12f, 0x3665, 0x3870, 0x4c69, 0x5626, 0xa130, 0x4d70, 0x467d,
+  0x3425,
+  /* 0x4E80 */
+  0x3535, 0x502c, 0x502d, 0x4e3b, 0x4d3d, 0x4168, 0x502f, 0x3b76,
+  0x4673, 0x2e27, 0x5032, 0x313e, 0x385f, 0x385e, 0x3066, 0x4f4b,
+  0x4f4a, 0x3a33, 0x3021, 0xa131, 0x5033, 0x5034, 0x5035, 0x4b34,
+  0x5036, 0x3872, 0x3067, 0x4b72, 0x357c, 0x357d, 0x357e, 0x4462,
+  0x4e3c, 0x5037, 0x5038, 0x5039, 0xa134, 0x3f4d, 0xa135, 0xa137,
+  /* 0x4EC0 */
+  0x3d3a, 0x3f4e, 0x503e, 0xa138, 0x503c, 0x503d, 0x3558, 0xa139,
+  0x3a23, 0x3270, 0x503b, 0x503a, 0x4a29, 0xa13a, 0x3b46, 0x3b45,
+  0x423e, 0x503f, 0x4955, 0x4067, 0xa13c, 0x2138, 0x5040, 0x5042,
+  0x2e28, 0x4265, 0x4e61, 0x304a, 0xa13b, 0x5041, 0x323e, 0x3644,
+  0xa13d, 0x4367, 0xa13e, 0x376f, 0x5043, 0x4724, 0x2e29, 0x2e2a,
+  /* 0x4F00 */
+  0xa13f, 0x346b, 0x2e2b, 0x5044, 0x304b, 0x2e2c, 0x3860, 0x346c,
+  0x497a, 0x4832, 0x3559, 0xa140, 0x3271, 0x5067, 0x4541, 0x476c,
+  0x5046, 0x483c, 0x4e62, 0xa142, 0x3f2d, 0x3b47, 0x3b77, 0x3240,
+  0xa143,
+  /* 0x4F40 */
+  0x4451, 0x4322, 0x504a, 0x2e2e, 0x2e2f, 0x304c, 0x4463, 0x3d3b,
+  0x3a34, 0x4d24, 0x424e, 0xa144, 0x323f, 0x2e30, 0x5049, 0xa145,
+  0x4d3e, 0x5045, 0x5047, 0x3a6e, 0x5048, 0x5524, 0x2e31, 0x2e2d,
+  0xa141, 0x5050, 0x2e32, 0x2e33, 0x5053, 0x5051, 0x3242, 0x4a3b,
+  0x504b, 0xa147, 0xa148, 0xa149, 0x504f, 0x3873, 0xa14a, 0x2e34,
+  0x3b48,
+  /* 0x4F80 */
+  0xa14b, 0x3426, 0xa14c, 0x5054, 0x504c, 0x2e35, 0x4e63, 0x3b78,
+  0x504d, 0x5052, 0xa14d, 0x2e36, 0x5055, 0x2e37, 0x504e, 0xa14e,
+  0x3621, 0x304d, 0x3622, 0x3241, 0x5525, 0x4b79, 0x496e, 0x3874,
+  0xa150, 0x3f2f, 0x4e37, 0xa151, 0x4a58,
+  /* 0x4FC0 */
+  0x3738, 0x4225, 0x3264, 0xa152, 0x2e39, 0x3d53, 0xa153, 0x5059,
+  0xa154, 0x505e, 0x505c, 0xa155, 0x5057, 0x422f, 0x505a, 0x505d,
+  0x505b, 0x4a5d, 0x5058, 0x2e3a, 0x3f2e, 0x4b73, 0x505f, 0x5060,
+  0xa14f, 0x3d24, 0x506d, 0x2e21, 0xa157, 0x4750, 0x4936, 0x5068,
+  0x4a70, 0x3236, 0x506c,
+  /* 0x5000 */
+  0xa158, 0x2e3b, 0x2e3c, 0x5066, 0x506f, 0x4152, 0x3844, 0x475c,
+  0x2e3d, 0x6047, 0xa159, 0x506e, 0x455d, 0xa15a, 0x5063, 0x3876,
+  0x2e3e, 0x3875, 0x5061, 0xa15b, 0xa15c, 0x3c5a, 0x5069, 0xa15d,
+  0x4a6f, 0x434d, 0x5065, 0x3771, 0x2e3f, 0x5062, 0x506a, 0x5064,
+  0x4e51, 0x506b, 0x4f41, 0x2e40, 0x3666, 0x3770, 0x2e42,
+  /* 0x5040 */
+  0x2e41, 0x2e43, 0xa15f, 0x5070, 0xa160, 0x5071, 0x5075, 0x304e,
+  0xa161, 0x4a50, 0x5074, 0xa162, 0x5073, 0x5077, 0xa163, 0x5076,
+  0x4464, 0xa164, 0x3772, 0xa165, 0xa166, 0x5078, 0xa167, 0x3c45,
+  0x4226, 0x4465, 0x3676, 0x5079, 0x3536,
+  /* 0x5080 */
+  0x507a, 0x507c, 0xa169, 0x4b35, 0x3766, 0xa16a, 0xa16b, 0x2e44,
+  0xa16c, 0xa16d, 0x3b31, 0x4877, 0x507b, 0xa16e, 0xa168, 0xa16f,
+  0x3a45, 0x4d43, 0xa171, 0x507e, 0x5123, 0x507d, 0x3a44, 0x3d7d,
+  0xa172, 0xa173, 0x3739,
+  /* 0x50C0 */
+  0x5124, 0xa174, 0x364f, 0xa175, 0x5121, 0x5122, 0x2e45, 0x462f,
+  0xa178, 0x417c, 0x2e47, 0x3623, 0xa17a, 0x4b4d, 0x5125, 0xa17b,
+  0x4e3d, 0x5126, 0xa17c, 0x5129, 0x5127, 0x2e48, 0x414e, 0xa17d,
+  0x5128, 0x512a, 0x2e46, 0xa176, 0x512c, 0x512b, 0x4a48,
+  /* 0x5100 */
+  0x3537, 0x512e, 0x512f, 0x2e4b, 0x322f, 0x2e4a, 0xa321, 0x512d,
+  0x2e4c, 0x3c74, 0x5132, 0x5131, 0x5130, 0xa323, 0x5056, 0x5133,
+  0xa324, 0x2e4d, 0x3d7e, 0x5134, 0x4d25, 0x4c59, 0x2e4e, 0x5136,
+  0x5135, 0x5138, 0x5137, 0x5139,
+  /* 0x5140 */
+  0x513a, 0x3074, 0x3835, 0x373b, 0x3d3c, 0x437b, 0x3624, 0x4068,
+  0x3877, 0x2e4f, 0x396e, 0x513c, 0x4c48, 0x4546, 0x3b79, 0x513b,
+  0x513d, 0x2e51, 0x2e52, 0x455e, 0x3375, 0xa326, 0x513e, 0x467e,
+  0x4134, 0x5140, 0x5141, 0x482c, 0x3878, 0x4f3b, 0x5142, 0x3626,
+  0xa328, 0x4a3c, 0x4236, 0x3671, 0x4535, 0xf474, 0x3773,
+  /* 0x5180 */
+  0x5143, 0x5144, 0xa329, 0x4662, 0x315f, 0x5147, 0x3a7d, 0xa32a,
+  0x5146, 0x3a46, 0x5148, 0x666e, 0x5149, 0x4b41, 0x514a, 0x514b,
+  0x514c, 0x3e69, 0xa32c, 0x3c4c, 0x2e54, 0x3427, 0x514f, 0xa32d,
+  0x514d, 0x4c3d, 0x514e, 0x495a, 0x5150, 0x5151, 0x5152, 0x455f,
+  0xa32e, 0x5156, 0x5154, 0x5155, 0x5153, 0x3a63, 0x5157, 0x4c6a,
+  0x4e64, 0xa330, 0x5158,
+  /* 0x51C0 */
+  0x2e55, 0x4028, 0x5159, 0x3d5a, 0x515a, 0x2e56, 0x437c, 0x4e3f,
+  0x4560, 0x5245, 0x515b, 0x7425, 0x3645, 0x2e57, 0x515c, 0x4b5e,
+  0x2e58, 0x3d68, 0x427c, 0x515e, 0x4664, 0x515f, 0x2e59, 0x5160,
+  0x332e, 0xa333, 0xa334, 0x5161, 0x3627, 0x464c, 0x317a, 0x3d50,
+  0x4821, 0x5162,
+  /* 0x5200 */
+  0x4561, 0x2e5a, 0xa335, 0x3f4f, 0x5163, 0x4a2c, 0x405a, 0x3422,
+  0x3429, 0x5164, 0x5166, 0x373a, 0xa336, 0x2e5c, 0x5165, 0x2e5d,
+  0xa337, 0x4e73, 0x3d69, 0x483d, 0x4a4c, 0x5167, 0x4d78, 0x5168,
+  0x5169, 0x457e, 0x516a, 0x4029, 0x3a7e, 0x3774, 0x516b, 0x3b49,
+  0x396f,
+  /* 0x5240 */
+  0x4466, 0x516d, 0x4227, 0x2e5e, 0x3a6f, 0x516e, 0x516f, 0x4130,
+  0x516c, 0x5171, 0xa339, 0x4b36, 0x2e5f, 0x3964, 0xa33a, 0x2f7e,
+  0x5170, 0x2e60, 0x3775, 0x3a5e, 0x476d, 0x5174, 0x5172, 0xa33b,
+  0x497b, 0x3e6a, 0x517b, 0x3364, 0x5175, 0x5173, 0x414f, 0xa33c,
+  0x5177, 0x5176,
+  /* 0x5280 */
+  0xa33e, 0x3344, 0xa33d, 0x3760, 0x517c, 0x4e2d, 0x5178, 0x517d,
+  0x517a, 0x2e61, 0x5179, 0xa340, 0x4e4f, 0x3879, 0x3243, 0x4e74,
+  0xa342, 0xa343, 0x3d75, 0x4558, 0x3965, 0x5222, 0x5223, 0xa344,
+  0x4e65, 0x4f2b, 0x5225, 0x387a, 0xa345, 0xa346, 0x5224, 0x332f,
+  /* 0x52C0 */
+  0x5226, 0x4b56, 0x443c, 0x4d26, 0x2e62, 0x4a59, 0xa347, 0x2e64,
+  0x5227, 0x2e65, 0xa349, 0x7055, 0x4630, 0x2e66, 0x5228, 0x342a,
+  0x4c33, 0x2e67, 0x3e21, 0x5229, 0x4a67, 0x522d, 0x402a, 0x522a,
+  0x3650, 0x522b, 0x342b, 0x2e69, 0x372e, 0x522e, 0x522f, 0xa34b,
+  0x5230, 0x5231, 0x3c5b, 0x2e6a, 0x387b, 0x4c5e,
+  /* 0x5300 */
+  0x2e6b, 0x4c68, 0x4677, 0x4a71, 0x5232, 0x2e6c, 0x5233, 0xa34c,
+  0xa34d, 0x5235, 0x5237, 0x5236, 0x5238, 0x323d, 0x4b4c, 0x3a7c,
+  0x5239, 0x2e6d, 0x4159, 0x3e22, 0x3629, 0x523a, 0xa34e, 0x485b,
+  0x523b, 0x523c, 0x523d, 0xa34f, 0x523e, 0x4924, 0x3668, 0x3065,
+  0xa350, 0x463f,
+  /* 0x5340 */
+  0x523f, 0x3d3d, 0xa351, 0x4069, 0x5241, 0x5240, 0x3e23, 0x3861,
+  0x5243, 0x483e, 0x5244, 0x485c, 0x4234, 0x426e, 0x3628, 0x466e,
+  0x4331, 0x476e, 0x4b4e, 0x5246, 0x406a, 0x2e6f, 0x2e70, 0x3735,
+  0xa354, 0x5247, 0xa355, 0x5248, 0x312c, 0x3075, 0x346d, 0x4228,
+  0x3551, 0x4d71, 0x524b, 0x3237, 0xa356, 0x524a, 0x2e71, 0x362a,
+  /* 0x5380 */
+  0x524c, 0x4c71, 0x2e72, 0x524d, 0x4e52, 0x387c, 0x2e73, 0x3836,
+  0x524e, 0xa357, 0x5250, 0x524f, 0x3f5f, 0x3139, 0x315e, 0x5251,
+  0x5252, 0x2e74, 0x3837, 0xa358, 0x5253, 0xa35a, 0x356e,
+  /* 0x53C0 */
+  0xa35b, 0x3b32, 0x5254, 0x4b74, 0x3a35, 0x355a, 0x4d27, 0x4150,
+  0x483f, 0x3c7d, 0x3d47, 0xa35f, 0x3c68, 0x3c75, 0x3d76, 0xa360,
+  0x4840, 0x5257, 0x3143, 0x4151, 0x387d, 0x3845, 0x3667, 0x525b,
+  0x4321, 0x427e, 0x362b, 0x3e24, 0x525c, 0x525a, 0x3244, 0x4266,
+  0x3c38, 0x3b4b, 0x3126, 0xa362, 0xa363, 0x3370, 0x3966, 0x3b4a,
+  0x525d,
+  /* 0x5400 */
+  0x525e, 0x3549, 0x3346, 0x3967, 0x3548, 0x445f, 0x3125, 0x4631,
+  0x4c3e, 0x3921, 0x4d79, 0x4547, 0x387e, 0x2e75, 0x372f, 0x5267,
+  0x4f7e, 0x3663, 0x4b4a, 0xa365, 0x485d, 0x2e76, 0xa366, 0x5266,
+  0x345e, 0x5261, 0x5262, 0x5264, 0x5265, 0x355b, 0x3f61, 0x4a2d,
+  0x5263, 0x525f, 0x3863,
+  /* 0x5440 */
+  0x5260, 0x4f24, 0xa368, 0x4a72, 0x4468, 0x3862, 0x3970, 0x2e77,
+  0x5268, 0x465d, 0xa364, 0x526c, 0xa369, 0xa36a, 0x3c7e, 0x3c76,
+  0x2e79, 0xa36b, 0x526f, 0x526d, 0x4c23, 0x2e7a, 0x526a, 0x5273,
+  0x526e, 0x5271, 0x3846, 0x4c3f, 0x2e7b,
+  /* 0x5480 */
+  0x5272, 0x5274, 0x5276, 0x2e7c, 0xa36c, 0x3a70, 0x4f42, 0xa36d,
+  0x526b, 0x5269, 0x5275, 0x5270, 0xa36e, 0x2e7d, 0x2e78, 0xa36f,
+  0x2e7e, 0x5278, 0x5323, 0x527a, 0xa370, 0x527e, 0x2f21, 0x5321,
+  0x527b, 0xa371, 0xa372, 0x533e, 0x3a69, 0x3331, 0xa373, 0x5279,
+  0xa374, 0x5325, 0x3076, 0x5324, 0xa375,
+  /* 0x54C0 */
+  0x3025, 0x494a, 0x5322, 0xa376, 0x527c, 0x2f22, 0x5277, 0x527d,
+  0x3a48, 0x5326, 0x3077, 0x532f, 0x5327, 0x5328, 0x3e25, 0x4b69,
+  0xa378, 0x532d, 0x532c, 0xa379, 0xa37a, 0x452f, 0xa37b, 0x532e,
+  0x532b, 0x2f23,
+  /* 0x5500 */
+  0xa37c, 0xa37d, 0x3134, 0x3a36, 0x3f30, 0xa37e, 0x2f24, 0x5329,
+  0x4562, 0x532a, 0x3022, 0x2f25, 0x5334, 0x4d23, 0x3e27, 0x533a,
+  0x2f26, 0x5339, 0x5330, 0xa421, 0x4243,
+  /* 0x5540 */
+  0x5331, 0xa422, 0x426f, 0x5336, 0x3e26, 0xa424, 0xa425, 0x5333,
+  0x4c64, 0x2f27, 0x373c, 0x5337, 0x5338, 0x5335, 0x533b, 0x2f28,
+  0xa427, 0xa428, 0x5332, 0xa429, 0x5341, 0x5346, 0xa42b, 0x5342,
+  /* 0x5580 */
+  0x533d, 0x2f29, 0xa42c, 0x5347, 0x4131, 0x2f2a, 0x5349, 0xa42d,
+  0x3922, 0x533f, 0x437d, 0x2f2b, 0xa42e, 0x5343, 0x533c, 0x342d,
+  0x346e, 0x3365, 0x5344, 0x5340, 0x3776, 0x534a, 0x5348, 0x4153,
+  0x354a, 0x362c, 0x2f2d, 0x5345, 0x3674, 0x3144, 0xa433,
+  /* 0x55C0 */
+  0x534e, 0x534c, 0x5427, 0xa434, 0xa435, 0x2f2e, 0xa436, 0xa430,
+  0x5351, 0x534b, 0x534f, 0xa437, 0x534d, 0xa439, 0x3b4c, 0x5350,
+  0xa43b, 0x5353, 0x5358, 0x5356, 0x5355,
+  /* 0x5600 */
+  0x4332, 0xa43e, 0x2f30, 0x3245, 0x2f31, 0xa43f, 0x5352, 0x5354,
+  0x3e28, 0x3133, 0x5357, 0xa43c, 0x325e, 0x5362, 0xa440, 0x3e7c,
+  0x535e, 0x535c, 0x535d, 0xa441, 0x535f, 0x2f32, 0xa443, 0xa444,
+  /* 0x5640 */
+  0xa445, 0x313d, 0xa446, 0x2f33, 0x4139, 0x5359, 0x535a, 0x7427,
+  0x337a, 0xa447, 0xa448, 0x5361, 0x2f35, 0x346f, 0x5364, 0x5360,
+  0x5363, 0xa449, 0x2f37, 0x2f38, 0x2f39, 0x4a2e, 0x2f34, 0x4655,
+  0x4838,
+  /* 0x5680 */
+  0x5366, 0x5365, 0x3345, 0xa44b, 0x5367, 0xa44c, 0x536a, 0x5369,
+  0xa44d, 0x2f3a, 0xa44e, 0xa44f, 0x2f3b, 0x5368, 0x4739, 0x536b,
+  0xa450, 0x2f3c, 0x2f3d, 0xa451, 0x536c, 0xa452, 0x2f3e, 0x536e,
+  0x536d, 0x5370,
+  /* 0x56C0 */
+  0x5373, 0x5371, 0x536f, 0x5372, 0xa453, 0x5374, 0x2f3f, 0x2f40,
+  0xa454, 0x5375, 0x5376, 0x5377, 0x5378, 0x5145, 0x3c7c, 0x3b4d,
+  0x3273, 0xa455, 0x3078, 0x4344, 0xa456, 0x5379, 0x3a24, 0x304f,
+  0x3f5e, 0xa457, 0xa458, 0x537a, 0x3847, 0x3971, 0x537c,
+  /* 0x5700 */
+  0x537b, 0x4a60, 0x537d, 0x5421, 0x537e, 0x2f41, 0x5422, 0x5423,
+  0x3777, 0x3160, 0x5424, 0xa45a, 0x5426, 0x5425, 0x5428, 0x455a,
+  0x2f43, 0xa45b, 0x5429, 0x3035, 0x3a5f, 0xa45d, 0x373d, 0x2f44,
+  0x434f, 0x2f45, 0x2f46, 0x542a, 0x542b, 0x542d,
+  /* 0x5740 */
+  0x542e, 0x3a64, 0xa45f, 0xa460, 0x3651, 0x4b37, 0xa461, 0xa462,
+  0x542c, 0x542f, 0x3a41, 0x3923, 0x5433, 0x3a25, 0x4333, 0xa464,
+  0x5430, 0x445a, 0xa465, 0x2f47, 0xa466, 0xa467, 0xa468, 0x2f48,
+  0xa469, 0x2f49, 0x5434,
+  /* 0x5780 */
+  0x3f62, 0x5432, 0x5435, 0x373f, 0x5436, 0xa46d, 0x2f4a, 0xa46e,
+  0xa46f, 0x5437, 0x3924, 0x3340, 0x5439, 0xa470, 0x543a, 0xa46c,
+  0x543b, 0x5438, 0x2f4d,
+  /* 0x57C0 */
+  0x5431, 0x543c, 0x543d, 0x2f4e, 0x2f4f, 0x4b64, 0xa473, 0x3e6b,
+  0x2f50, 0x543f, 0x5440, 0x543e, 0x5442, 0xa471, 0x4738, 0xa476,
+  0x3068, 0x4956, 0x5443, 0x2f51, 0xa477, 0x2f52, 0xa478, 0x3e7d,
+  0x2f53, 0x2f54, 0x3c39, 0xa47a, 0x475d, 0x3470, 0xa47b, 0x3a6b,
+  0xa47c, 0x2f55,
+  /* 0x5800 */
+  0x4b59, 0x4632, 0xa47d, 0x3778, 0x424f, 0x2f56, 0x5441, 0x5444,
+  0x4244, 0x5445, 0x5446, 0xa47e, 0xa521, 0x5448, 0x4469, 0xa522,
+  0x342e, 0x7421, 0x3161, 0x4a73, 0xa523, 0x3e6c, 0x4548, 0xa524,
+  0x3a66, 0x544e,
+  /* 0x5840 */
+  0x4a3d, 0x4e5d, 0xa526, 0x3274, 0x544a, 0xa527, 0x413a, 0x544d,
+  0x4563, 0x4549, 0x4564, 0x4839, 0x444d, 0x3a49, 0x2f58, 0x5449,
+  0x2f59, 0xa528, 0x3176, 0x4536, 0x544b, 0x5447, 0x3f50, 0x544f,
+  0x2f5b, 0x3d4e,
+  /* 0x5880 */
+  0x362d, 0x5450, 0x2f5c, 0xa529, 0xa52a, 0xa52b, 0xa52c, 0xa52d,
+  0x4a68, 0xa52e, 0x417d, 0x4446, 0xa52f, 0x2f5d, 0x5452, 0x4b4f,
+  0x2f5f, 0xa530, 0x5453, 0x5458, 0xa531, 0x4a2f, 0x5457, 0x5451,
+  0x5454, 0x5456, 0x3a26,
+  /* 0x58C0 */
+  0x4a49, 0xa533, 0x5459, 0x4345, 0x3275, 0x3e6d, 0xa534, 0x2f62,
+  0x545b, 0x2f61, 0x545a, 0x2f63, 0x3968, 0x545c, 0x545e, 0x545d,
+  0x2f64, 0x5460, 0x5455, 0x5462, 0x2f65, 0xa535, 0x5461, 0x545f,
+  0x2f66, 0x3b4e, 0x3f51, 0x4154, 0x5463, 0x403c, 0x306d, 0x4764,
+  0xa536, 0xa537, 0x445b, 0x5465, 0x5464, 0x5466, 0x5467, 0x5468,
+  /* 0x5900 */
+  0x5469, 0xa538, 0xa539, 0x4a51, 0x546a, 0xa53a, 0x2f67, 0xa53b,
+  0x3246, 0x546b, 0xa53c, 0x4d3c, 0x3330, 0x5249, 0x3d48, 0x423f,
+  0x546c, 0x4c6b, 0x4c34, 0xa53d, 0x546e, 0x4267, 0x4537, 0x4240,
+  0x4957, 0x546f, 0x5470, 0x317b, 0x3c3a, 0x5471, 0x3050, 0x5472,
+  0xa540, 0x5473,
+  /* 0x5940 */
+  0x3162, 0xa542, 0x3471, 0x4660, 0x4a74, 0x5477, 0x4155, 0x5476,
+  0x3740, 0x4b5b, 0x5475, 0x4565, 0x5479, 0x5478, 0xa545, 0x2f69,
+  0xa546, 0x547b, 0x547a, 0x317c, 0x547c, 0x3e29, 0x547e, 0x4325,
+  0x547d, 0x2f6a, 0x4a33, 0x3d77, 0x455b, 0xa548, 0xa549, 0x5521,
+  0xa54a, 0x3925,
+  /* 0x5980 */
+  0x5522, 0x4721, 0x485e, 0x4c51, 0x4725, 0x2f6b, 0x552b, 0x2f6c,
+  0x3538, 0x4d45, 0x4c2f, 0x562c, 0x5523, 0xa54b, 0x5526, 0x2f6d,
+  0x4245, 0x4b38, 0x454a, 0xa54c, 0x5527, 0x4b65, 0x3a4a, 0xa54d,
+  0x3e2a,
+  /* 0x59C0 */
+  0x2f6e, 0x5528, 0xa54e, 0x3b50, 0x3b4f, 0xa54f, 0x3039, 0x3848,
+  0x2f6f, 0x402b, 0x3051, 0x552c, 0x552d, 0x552a, 0x2f70, 0xa550,
+  0xa551, 0xa552, 0x3138, 0x342f, 0xa553, 0x5529, 0x4c45, 0x4931,
+  0xa554, 0x3028, 0x7e7a, 0x3079, 0x3b51,
+  /* 0x5A00 */
+  0x3052, 0x3023, 0x5532, 0xa558, 0xa559, 0x5530, 0x2f71, 0xa55a,
+  0x4c3c, 0x5533, 0x5531, 0x552f, 0x3f31, 0x2f72, 0x552e, 0xa55b,
+  0x4a5a, 0xa55c, 0x3864, 0x5537, 0x5538, 0x3e2b,
+  /* 0x5A40 */
+  0x5534, 0x4f2c, 0x474c, 0x5536, 0xa55d, 0x3a27, 0x5539, 0xa55e,
+  0x4958, 0x2f73, 0x553a, 0x5535, 0x2f74, 0x2f75, 0xa55f, 0x2f76,
+  0x4c3b,
+  /* 0x5A80 */
+  0x2f77, 0xa560, 0x475e, 0x553b, 0x4932, 0xa561, 0x2f78, 0xa562,
+  0xa563, 0xa564, 0x2f79, 0xa565, 0xa566, 0xa567, 0xa568, 0x553c,
+  0x5540, 0x553d, 0xa569,
+  /* 0x5AC0 */
+  0x3247, 0x553f, 0x2f7a, 0x3c3b, 0x553e, 0x3779, 0x554c, 0x5545,
+  0x5542, 0xa56a, 0xa56b, 0xa56c, 0x4364, 0x5541, 0xa56d, 0x5543,
+  0x5544, 0xa56f, 0xa56e, 0xa570, 0x5546, 0x5547,
+  /* 0x5B00 */
+  0xa571, 0xa572, 0x3472, 0x5549, 0x5548, 0x554a, 0xa573, 0x2f7c,
+  0x3e6e, 0x2f7d, 0x554d, 0x445c, 0xa575, 0x3145, 0x554b, 0xa574,
+  0x554e, 0x554f,
+  /* 0x5B40 */
+  0x5552, 0x4f55, 0x5550, 0x5551, 0xa576, 0x3b52, 0x5553, 0xa577,
+  0x3926, 0x5554, 0x4f56, 0x3b7a, 0x4238, 0x5555, 0x5556, 0x3b5a,
+  0x3927, 0x4c52, 0x3528, 0x3849, 0x5557, 0x3358, 0xa578, 0x5558,
+  0x4239, 0xa579, 0x5559, 0x5623, 0x555a, 0x555b, 0x555c, 0x555e,
+  0xa57a, 0x4f57, 0xa57b,
+  /* 0x5B80 */
+  0x555f, 0xa57c, 0x5560, 0xa57d, 0x4270, 0x3127, 0x3c69, 0x3042,
+  0x4157, 0x3430, 0x3c35, 0x3928, 0x4f58, 0x4566, 0xa821, 0x3d21,
+  0x3431, 0x4368, 0x446a, 0x3038, 0x3539, 0x4a75, 0x3c42, 0x3552,
+  0x406b, 0x3c3c, 0x4d28, 0x5561, 0xa822, 0x355c, 0x3a4b, 0x3332,
+  0x3163, 0x3e2c, 0x3248, 0x5562, 0x4d46, 0x3d49,
+  /* 0x5BC0 */
+  0xa824, 0x3c64, 0x5563, 0x3473, 0x4652, 0x4c29, 0x5564, 0x5565,
+  0x4959, 0xa826, 0x5567, 0x3428, 0x3677, 0x5566, 0xa827, 0x4f59,
+  0x3432, 0x3f32, 0x556b, 0x3b21, 0x3249, 0x556a, 0x5568, 0x556c,
+  0x5569, 0x472b, 0x5c4d, 0x3f33, 0x556d, 0x4f5a, 0x4e40, 0x556e,
+  0xa82a, 0x5570, 0x437e, 0x556f, 0x4023, 0x3b7b, 0xa82b, 0x4250,
+  0x3c77,
+  /* 0x5C00 */
+  0x4975, 0x406c, 0xa82d, 0x3c4d, 0x5571, 0x3e2d, 0x5572, 0x5573,
+  0x3053, 0x423a, 0x3f52, 0x5574, 0x4633, 0x3e2e, 0x3e2f, 0x4f5b,
+  0x5575, 0x406d, 0x3e30, 0x4f5c, 0x5576, 0x5577, 0x4f5d, 0x4c60,
+  0x5578, 0xa82e, 0x4f5e, 0x3646, 0xa82f, 0x3d22, 0x5579, 0x557a,
+  0x3c5c, 0x3f2c, 0x4674, 0x3f54, 0x4878, 0x4722,
+  /* 0x5C40 */
+  0x3649, 0x557b, 0x356f, 0x557c, 0x367e, 0x464f, 0x3230, 0x3b53,
+  0x557d, 0x5622, 0x5621, 0x367d, 0x557e, 0x4538, 0x7e7b, 0x4230,
+  0xa831, 0x454b, 0x3c48, 0x4f60, 0xa832, 0x4158, 0x4d7a, 0xa833,
+  0xa834, 0xa835, 0x5624, 0x5625, 0x4656, 0xa836, 0x3b33, 0x5627,
+  0x5628, 0x4f64, 0xa839,
+  /* 0x5C80 */
+  0xa83c, 0xa83d, 0x5629, 0x4f65, 0x3474, 0x562a, 0x562b, 0x4f66,
+  0xa841, 0x322c, 0xa842, 0x4f67, 0xa843, 0xa844, 0x413b, 0x3464,
+  0x4f68, 0x562d, 0x4c28, 0xa846, 0x4252, 0x3359, 0xa847, 0x562f,
+  0x5631, 0x345f, 0x4f69, 0x562e, 0x5630, 0x5633,
+  /* 0x5CC0 */
+  0x5632, 0x5634, 0xa849, 0x4f6a, 0x4f6b, 0x4f6c, 0x5635, 0x463d,
+  0x362e, 0x3265, 0x5636, 0x563b, 0x5639, 0x4a77, 0x4a76, 0x4f6d,
+  0x4567, 0x5638, 0x3d54, 0x5637,
+  /* 0x5D00 */
+  0xa84c, 0x3f72, 0x563c, 0x4f70, 0x3a6a, 0xa84d, 0x5642, 0x5643,
+  0x563d, 0x3333, 0x563e, 0x5647, 0x5646, 0x5645, 0x5641, 0xa84f,
+  0x5640, 0xa850, 0x5644, 0xa851, 0xa852, 0x4f71, 0x4a78, 0xa84e,
+  0xa853, 0xa854,
+  /* 0x5D40 */
+  0xa855, 0x4f73, 0x4f74, 0x4f76, 0x564b, 0x5648, 0x564a, 0x4d72,
+  0x5649, 0x4f75, 0x563f, 0xa857, 0x3f73, 0xa858, 0x564c, 0x4f77,
+  0x3a37, 0xa85a, 0x564d, 0x564e,
+  /* 0x5D80 */
+  0x4f78, 0x5651, 0x5650, 0x564f, 0xa85d, 0x4568, 0x563a, 0x5657,
+  0xa85f, 0xa860, 0xa861, 0xa862, 0x5653, 0x4f79, 0x5652, 0x4f7a,
+  0x4f7b, 0x5654, 0x5655, 0xa863, 0xa864, 0xa865, 0x5658, 0x4f7c,
+  0xa867, 0x4e66, 0x5659, 0x5656,
+  /* 0x5DC0 */
+  0x565a, 0x4f7d, 0x3460, 0x565b, 0xa868, 0x565d, 0x565c, 0x565e,
+  0xa869, 0xa86a, 0x565f, 0x406e, 0x3d23, 0xa86b, 0x3d64, 0x7428,
+  0x4163, 0xa86d, 0x3929, 0x3a38, 0x392a, 0x3570, 0xa86e, 0x5660,
+  0x3a39, 0x384a, 0x5661, 0x4c26, 0x4743, 0x5662, 0x392b, 0x342c,
+  0x4327, 0x3652,
+  /* 0x5E00 */
+  0xa870, 0x3b54, 0x495b, 0x4841, 0x5663, 0x3475, 0x5666, 0xa872,
+  0x7429, 0xa873, 0x4421, 0x742a, 0x5665, 0x5664, 0x5667, 0x446b,
+  0xa875, 0x3f63, 0x3b55, 0x404a, 0xa876, 0x4253, 0x3522, 0x4422,
+  0x5668, 0x5669, 0x3e6f, 0x4b39, 0xa877,
+  /* 0x5E40 */
+  0x566c, 0x566b, 0x566a, 0x497d, 0x5673, 0xa878, 0x4b5a, 0x566d,
+  0x566f, 0x4b6b, 0xa87a, 0x566e, 0x742b, 0x742c, 0x5670, 0x4828,
+  0x5671, 0x4a3e, 0x5672, 0xa87c, 0xa87d, 0xa87e, 0xac21, 0x3433,
+  0x4a3f, 0x472f, 0x5674, 0x5675, 0x7e7c, 0x392c, 0x3434, 0x5676,
+  0x3838, 0x4d44, 0x4d29, 0x3476, 0x5678,
+  /* 0x5E80 */
+  0x4423, 0x392d, 0x3e31, 0x485f, 0x3e32, 0x3d78, 0x446c, 0x4a79,
+  0x4539, 0x392e, 0x495c, 0x5679, 0xac23, 0x4559, 0x3a42, 0xac24,
+  0x384b, 0xac25, 0x446d, 0x3043, 0x3d6e, 0x392f, 0x4d47, 0xac26,
+  0x742d, 0xac27,
+  /* 0x5EC0 */
+  0x567a, 0x567b, 0x4751, 0xac28, 0x567c, 0x4e77, 0x4f2d, 0x742f,
+  0x567e, 0x567d, 0xac29, 0x3347, 0x5721, 0xac2a, 0x5724, 0x5725,
+  0x5723, 0x4940, 0x3e33, 0x5727, 0x5726, 0x5722, 0x5728, 0x5729,
+  0x572a, 0x572d, 0x572b, 0x572c, 0x572e, 0x3164, 0x446e, 0x572f,
+  0x7430, 0x377a, 0x3276, 0x4736, 0xac2c, 0x5730, 0x467b,
+  /* 0x5F00 */
+  0x7431, 0x4a5b, 0x7432, 0x5731, 0x4f2e, 0x7433, 0xac2d, 0x5732,
+  0x4a40, 0x5735, 0x5021, 0x5031, 0xac2e, 0x3c30, 0x4675, 0x5736,
+  0x355d, 0x4424, 0x307a, 0x5737, 0x4a26, 0x3930, 0x4350, 0xac2f,
+  0x7434, 0xac31, 0x446f, 0x7435, 0x4c6f, 0x3839, 0x384c, 0x5738,
+  0x5739, 0x573f, 0x3c65, 0x7436, 0x4425, 0x7437, 0x362f, 0x573a,
+  0x492b, 0x7438, 0x4346,
+  /* 0x5F40 */
+  0x7439, 0x573b, 0x743a, 0xac32, 0x573c, 0x3630, 0x573d, 0x573e,
+  0x5740, 0x4576, 0x743b, 0x5741, 0x5742, 0x743c, 0x5743, 0x5734,
+  0x5733, 0x5744, 0x3741, 0xac33, 0x743d, 0x4927, 0x743e, 0x3a4c,
+  0x4937, 0x4426, 0x494b, 0x5745, 0x3e34, 0x3146, 0xac34, 0x5746,
+  0x5747, 0x4c72, 0x4860, 0x743f, 0xac35, 0x574a,
+  /* 0x5F80 */
+  0x317d, 0x402c, 0x5749, 0x5748, 0x3742, 0x4254, 0x574e, 0x574c,
+  0x7440, 0x574b, 0x4e27, 0x3865, 0xac36, 0x3d79, 0x574d, 0x454c,
+  0x3d3e, 0x4640, 0x5751, 0x5750, 0x7441, 0x574f, 0x5752, 0x3866,
+  0xac37, 0xac38, 0x7442, 0x5753, 0x497c, 0x3d5b, 0x5754, 0x4879,
+  0x7443, 0x4641, 0x4427, 0x7444, 0x7445, 0xac39, 0x4530, 0x5755,
+  0x352b,
+  /* 0x5FC0 */
+  0x3f34, 0xac3a, 0x492c, 0xac3c, 0x7446, 0xac3d, 0x3477, 0x4726,
+  0xac3e, 0xac3f, 0xac40, 0x5756, 0x3b56, 0x4b3a, 0x4b3b, 0x317e,
+  0x575b, 0x7447, 0x4369, 0x7448, 0xac41, 0x5758, 0x7449, 0x3277,
+  0xac42, 0xac43, 0x582d, 0x575a, 0xac44, 0x4730, 0x5759, 0x5757,
+  0xac45, 0x397a, 0x575d,
+  /* 0x6000 */
+  0x744a, 0x5763, 0x5769, 0x5761, 0x455c, 0x744b, 0x5766, 0x495d,
+  0xac47, 0x744c, 0x5760, 0x5765, 0x4e67, 0x3b57, 0x4255, 0x575e,
+  0xac48, 0xac49, 0x355e, 0x5768, 0x402d, 0x3165, 0x5762, 0x3278,
+  0x5767, 0x3631, 0x5764, 0x744d, 0x744e, 0x576a,
+  /* 0x6040 */
+  0x576c, 0x5776, 0x5774, 0x5771, 0x744f, 0x5770, 0x4e78, 0xac4b,
+  0x5772, 0x3632, 0x3931, 0x3d7a, 0x5779, 0x576b, 0x576f, 0x575f,
+  0x327a, 0x5773, 0x5775, 0x4351, 0x3a28, 0x3238, 0x576d, 0x5778,
+  0x5777, 0x3633, 0x4229, 0x3366, 0x3743, 0x576e, 0xac4c,
+  /* 0x6080 */
+  0x577a, 0x577d, 0x5821, 0x3c3d, 0xac4d, 0x5827, 0x4470, 0x577b,
+  0x5825, 0x3279, 0xac4e, 0x5823, 0x5824, 0x577e, 0x5822, 0x7451,
+  0x7452, 0x3867, 0x4d2a, 0x3435, 0x3159, 0x5826, 0xac4f, 0x473a,
+  0x302d, 0xac51, 0xac52, 0x4861, 0x575c, 0x582c, 0x5830, 0x4c65,
+  0x5829, 0x4569, 0x582e, 0xac53,
+  /* 0x60C0 */
+  0x3e70, 0x582f, 0x4657, 0xac54, 0x7453, 0x4f47, 0x582b, 0x7454,
+  0x7455, 0x5831, 0xac55, 0x397b, 0xac56, 0x404b, 0x7456, 0x3054,
+  0x582a, 0x5828, 0x415a, 0x577c, 0x3b34, 0xac57, 0x4246, 0x583d,
+  0xac58, 0x415b, 0x5838, 0xac59, 0x5835, 0x5836, 0x7457, 0x3c66,
+  0x5839, 0x583c,
+  /* 0x6100 */
+  0x5837, 0x3d25, 0x583a, 0x5834, 0x4c7c, 0x4c7b, 0x583e, 0x583f,
+  0x3055, 0xac5a, 0xac5b, 0xac5c, 0x5833, 0xac5d, 0x3672, 0x3026,
+  0x7458, 0xac5e, 0x3436, 0x583b, 0x5843, 0x5842, 0x7459, 0x5847,
+  0x745a, 0x5848, 0x745b, 0xac5f, 0x5846, 0x5849, 0x5841, 0x5845,
+  /* 0x6140 */
+  0xac61, 0x584a, 0x584b, 0xac62, 0x5840, 0x3b7c, 0x5844, 0x4256,
+  0x3932, 0x5832, 0x3f35, 0x5858, 0x4a69, 0x584e, 0x584f, 0x5850,
+  0x5857, 0x5856, 0xac63, 0x4b7d, 0x3437, 0x5854, 0x3745, 0x3334,
+  0x5851, 0x4e38, 0x5853, 0x3056, 0x5855, 0x584c, 0x5852, 0x5859,
+  0x3744, 0x584d, 0xac64, 0x4d5d,
+  /* 0x6180 */
+  0x4d2b, 0x585c, 0x5860, 0x745d, 0x417e, 0x4e79, 0x5861, 0xac66,
+  0xac67, 0x585e, 0x585b, 0xac68, 0xac69, 0x585a, 0x585f, 0x4a30,
+  0xac6a, 0x4634, 0xac6b, 0x3746, 0x5862, 0x585d, 0xac6c, 0x5863,
+  0x377b, 0x3231, 0x7460, 0x586b, 0x745f, 0x3438,
+  /* 0x61C0 */
+  0x5869, 0x586a, 0x3a29, 0x5868, 0x5866, 0x5865, 0x586c, 0x5864,
+  0x586e, 0x327b, 0xac6e, 0xac6f, 0xac70, 0x5870, 0x586f, 0x4428,
+  0x5873, 0xac71, 0x5871, 0x5867, 0x377c, 0x5872, 0x5876, 0x5875,
+  0x5877, 0x5874,
+  /* 0x6200 */
+  0x5878, 0x5879, 0x587a, 0x4a6a, 0x587c, 0x587b, 0x3d3f, 0x402e,
+  0x3266, 0x327c, 0x587d, 0xac73, 0x303f, 0x404c, 0x587e, 0x6c43,
+  0x5921, 0x3761, 0x5922, 0x7462, 0xac74, 0x406f, 0xac75, 0x5923,
+  0x5924, 0x353a, 0x5925, 0x5926, 0x5927, 0x4257, 0x384d, 0x4c61,
+  0x7463, 0x4b3c,
+  /* 0x6240 */
+  0x3d6a, 0x5928, 0x7464, 0xac76, 0x4070, 0x6e3d, 0x4862, 0x3c6a,
+  0xac77, 0x3a4d, 0x5929, 0xac78, 0xac79, 0x4247, 0x4a27, 0x7465,
+  0x4271, 0x7466, 0x592c, 0x592a, 0x592d, 0xac7a, 0x592b, 0xac7b,
+  0x592e, 0xac7d, 0x4a31, 0x7467, 0x3037, 0xac7e, 0x495e, 0x4863,
+  0xac7c, 0x592f, 0x5932, 0x3e35,
+  /* 0x6280 */
+  0x353b, 0x5930, 0x5937, 0x3e36, 0x7468, 0x5931, 0x4744, 0x4d5e,
+  0x5933, 0x5934, 0x5938, 0x456a, 0x5935, 0x3933, 0x405e, 0xad21,
+  0x5946, 0x4834, 0x4272, 0xad22, 0x4864, 0x5a2d, 0x4a7a, 0x4471,
+  0x4b75, 0x593b, 0x3221, 0x436a,
+  /* 0x62C0 */
+  0x5944, 0x7469, 0x4334, 0x593e, 0x5945, 0x5940, 0x5947, 0x5943,
+  0x5942, 0x476f, 0x593c, 0x327d, 0x593a, 0x3571, 0x4273, 0x5936,
+  0xad23, 0x746a, 0x5939, 0x3934, 0x405b, 0x3e37, 0x5941, 0x4752,
+  0x3572, 0x3348, 0x3367, 0x3f21, 0x5949, 0x594e, 0x594a, 0x377d,
+  0x594f, 0x3b22, 0x3969, 0x746b, 0xad25, 0x3d26, 0x593d,
+  /* 0x6300 */
+  0x3b7d, 0x594c, 0xad26, 0x3b58, 0x594d, 0x3044, 0x746c, 0x5948,
+  0xad27, 0xad28, 0x4429, 0x746d, 0x3573, 0x3634, 0x594b, 0x3027,
+  0x3a43, 0x3f36, 0xad2b, 0xad2c, 0x746e, 0x4472, 0xad2d, 0xad2e,
+  0x4854, 0x5951, 0x415e,
+  /* 0x6340 */
+  0xad2f, 0x746f, 0xad30, 0x422a, 0x3b2b, 0x5952, 0xad31, 0x5954,
+  0x5950, 0x4a61, 0x443d, 0xad33, 0x415c, 0x7470, 0x4a7b, 0x3c4e,
+  0x5960, 0x595f, 0xad36, 0x3f78, 0x377e, 0x5959, 0x3e39, 0x4668,
+  0x4731, 0x7471,
+  /* 0x6380 */
+  0x5957, 0x415d, 0xad37, 0x3c78, 0x595c, 0x3e38, 0x5956, 0x595b,
+  0x4753, 0xad3a, 0x5955, 0x3721, 0xad38, 0x335d, 0x595d, 0x4e2b,
+  0x3a4e, 0x4335, 0x595a, 0x405c, 0x3935, 0x3f64, 0x3166, 0x413c,
+  0x5958, 0x3545, 0x3747, 0x444f, 0x595e, 0x415f, 0xad3b, 0x5961,
+  /* 0x63C0 */
+  0x5963, 0x4237, 0x5969, 0x5964, 0x5966, 0x4941, 0x4473, 0x5967,
+  0xad3d, 0xad3e, 0x4d2c, 0x4d48, 0x3439, 0xad3f, 0xad40, 0x302e,
+  0x5965, 0x7472, 0x5962, 0xad41, 0xad42, 0x7473, 0x3478, 0xad43,
+  0x3167, 0x7474, 0x5968, 0xad3c, 0x4d49,
+  /* 0x6400 */
+  0x596c, 0xad44, 0x423b, 0x5973, 0x7475, 0x596d, 0x7476, 0x596a,
+  0x5971, 0x5953, 0xad45, 0x7477, 0xad46, 0x596e, 0x5972, 0xad47,
+  0x4842, 0x456b, 0xad48, 0x596b, 0x596f, 0x3748, 0x3a71,
+  /* 0x6440 */
+  0x405d, 0x5977, 0x7479, 0x4526, 0xad49, 0xad4a, 0xad4b, 0x747a,
+  0x5974, 0x4b60, 0x747b, 0x5975, 0xad4c, 0x5976, 0x4c4e, 0x7478,
+  0x4022, 0xad4d,
+  /* 0x6480 */
+  0x3762, 0xad4e, 0x597d, 0xad4f, 0x3b35, 0x597a, 0x5979, 0x4732,
+  0xad50, 0x4635, 0xad51, 0x4531, 0x597b, 0x597c, 0x496f, 0x4745,
+  0x3b23, 0x4071, 0x4b50, 0x3349, 0x5a25, 0x597e, 0x747d, 0x747e,
+  /* 0x64C0 */
+  0x4d4a, 0x5a27, 0x7521, 0x5a23, 0x5a24, 0x7522, 0xad52, 0xad53,
+  0x4160, 0x747c, 0x7523, 0x5a22, 0x593f, 0xad54, 0xad55, 0x5a26,
+  0x5a21, 0x5a2b, 0x5a2c, 0x4527, 0x5a2e, 0xad57, 0xad58, 0x3b24,
+  0x5a29, 0x353c, 0x5a2f, 0x5a28, 0x5a33, 0x5a32, 0x5a31, 0x7524,
+  0x5a34, 0x7525, 0x5a36, 0x3e71, 0xad59,
+  /* 0x6500 */
+  0x5a35, 0xad5a, 0x5a39, 0xad5c, 0xad5d, 0xad5e, 0x5a37, 0x5a38,
+  0x5970, 0xad60, 0x7526, 0x5a3b, 0x5a3a, 0x7527, 0x5978, 0x5a3c,
+  0x5a30, 0x3b59, 0xad61, 0x5a3d, 0x5a3e, 0x5a40, 0x5a3f, 0x5a41,
+  0x327e, 0x3936, 0x4a7c, 0x402f,
+  /* 0x6540 */
+  0xad62, 0x384e, 0x5a43, 0x5a46, 0x4952, 0x355f, 0xad63, 0x5a45,
+  0x5a44, 0x4754, 0x5a47, 0x3635, 0x5a49, 0x5a48, 0x343a, 0x3b36,
+  0x4658, 0x7529, 0xad64, 0x3749, 0x3f74, 0x5a4a, 0x4030, 0x4528,
+  0x495f, 0x5a4b, 0xad65,
+  /* 0x6580 */
+  0xad66, 0x5a4c, 0x5a4d, 0xad67, 0xad68, 0x4a38, 0x555d, 0x4046,
+  0xad69, 0x494c, 0x3a58, 0x4865, 0x4843, 0x454d, 0x4e41, 0x5a4f,
+  0x3c50, 0x752a, 0x5a50, 0x3036, 0x3654, 0x404d, 0x4960, 0x5a51,
+  0x3b42, 0x4347, 0x3b5b, 0x3f37, 0xad6a, 0xad6b, 0x5a52, 0xad6c,
+  0x4a7d, 0x3177, 0x3b5c, 0xad6d,
+  /* 0x65C0 */
+  0x5a55, 0xad6e, 0x5a53, 0x5a56, 0x4e39, 0x5a54, 0xad6f, 0x407b,
+  0x5a57, 0x4232, 0x5a58, 0xad70, 0x347a, 0x5a5a, 0x5a59, 0x5a5b,
+  0x5a5c, 0x347b, 0x467c, 0x4336, 0x356c, 0x3b5d, 0x4161, 0x3d5c,
+  0x3030, 0x5a5d, 0xad72, 0xad73, 0x3222, 0x5a61, 0xad74,
+  /* 0x6600 */
+  0x752c, 0x3937, 0x5a60, 0xad75, 0x3a2b, 0x3e3a, 0xad76, 0x752d,
+  0x5a5f, 0x3e3b, 0x4c40, 0x3a2a, 0x3057, 0x404e, 0x752e, 0x5a66,
+  0x752f, 0x4031, 0x3147, 0xad77, 0x7531, 0x7532, 0x3d55, 0x4b66,
+  0x3a72, 0xad78, 0x7533, 0x3e3c, 0x4027, 0x7534, 0x7535, 0x7536,
+  0x5a65, 0x5a63, 0x5a64, 0x7530, 0x436b, 0x5b26,
+  /* 0x6640 */
+  0x5a6a, 0x3b7e, 0x3938, 0x5a68, 0xad79, 0x7538, 0x5a69, 0x3f38,
+  0x7539, 0xad7b, 0x5a67, 0xad7a, 0x3b2f, 0xad7e, 0x753b, 0x753c,
+  0xae21, 0x5a6c, 0x5a6b, 0x5a70, 0x753d, 0x5a71, 0xae22, 0x5a6d,
+  0x753e, 0x3322, 0x5a6e, 0x5a6f, 0x4855, 0xae25, 0xae26, 0xae27,
+  0xae28, 0x4961, 0x374a, 0x5a72, 0x753f, 0x4032, 0x3e3d, 0x7540,
+  0x7541, 0x4352, 0xae29,
+  /* 0x6680 */
+  0xae2a, 0x3647, 0x5a73, 0x5a77, 0x324b, 0x5a74, 0x5a76, 0x7542,
+  0x5a75, 0xae2b, 0x3d6b, 0xae2c, 0x4348, 0x3045, 0x5a78, 0xae2d,
+  0x5a79, 0x7544, 0x442a, 0x4e71, 0x3b43, 0xae2f, 0x4a6b, 0xae30,
+  0x7545, 0x4b3d, 0xae31, 0x5b22, 0x5a7b, 0x7546, 0x5a7e, 0x5a7d,
+  0xae33,
+  /* 0x66C0 */
+  0x5a7a, 0x5b21, 0x7547, 0x465e, 0x7548, 0x5a7c, 0x5b23, 0x3d6c,
+  0x5b24, 0x754a, 0x4d4b, 0x4778, 0x5b25, 0x5b27, 0x754b, 0x5b28,
+  0xae35, 0x5b29, 0x364a, 0x3148, 0x3939, 0x5b2a, 0x5b2b, 0x3d71,
+  0x4162, 0x754c, 0x7537, 0x5258, 0x413e, 0x413d, 0x4258,
+  /* 0x6700 */
+  0x3a47, 0xae37, 0x5072, 0xae38, 0x376e, 0x4d2d, 0x4a7e, 0x497e,
+  0x5b2c, 0xae39, 0x754d, 0x3a73, 0x443f, 0x5b2d, 0x4f2f, 0xae3b,
+  0x4b3e, 0x442b, 0x5b2e, 0x347c, 0x5b2f, 0x5b30, 0x4c5a, 0x4c24,
+  0x4b76, 0x4b5c, 0x3b25, 0x5b32, 0x3c6b, 0x754f, 0x4b51, 0x5b34,
+  0x5b37, 0x5b36, 0x3479, 0x3560, 0x5b33,
+  /* 0x6740 */
+  0x5b35, 0x5b38, 0x7551, 0x7552, 0x3f79, 0xae3e, 0xae3f, 0x4d7b,
+  0x3049, 0x3a60, 0x423c, 0x3c5d, 0xae40, 0x3e73, 0x5b3b, 0x454e,
+  0xae41, 0x5b39, 0x422b, 0x5b3a, 0x3e72, 0x4c5d, 0x5b3c, 0x5b3d,
+  0x4d68, 0x7550, 0x5b42, 0x393a, 0x4755, 0x5b3f, 0x456c, 0x5a5e,
+  0x5a62, 0xae45, 0x354f, 0xae46, 0x4747, 0x7553, 0x5b41, 0x3e3e,
+  0x4844,
+  /* 0x6780 */
+  0x7554, 0x5b47, 0x487a, 0x5b3e, 0x5b44, 0x5b43, 0x404f, 0xae48,
+  0x7555, 0x4b6d, 0x4e53, 0x7556, 0x4b67, 0x7557, 0x324c, 0x3b5e,
+  0x4f48, 0x5b46, 0x3f75, 0x5b45, 0x5b40, 0x384f, 0xae4c, 0xae4d,
+  0x5b4c, 0x5b4a, 0x324d, 0x5b48, 0x5b4e, 0x5b54, 0x7558,
+  /* 0x67C0 */
+  0x755a, 0x4248, 0xae4e, 0x4a41, 0x5b56, 0xae4f, 0x4922, 0x5b55,
+  0x4770, 0x4b3f, 0x343b, 0xae50, 0x4077, 0x3d40, 0x755b, 0x4453,
+  0xae51, 0x4d2e, 0xae52, 0x5b51, 0x5b50, 0x5b52, 0x5b4f, 0x5b57,
+  0x5b4d, 0x5b4b, 0x5b53, 0x5b49, 0xae53, 0x436c, 0x4c78, 0x3c46,
+  0x3a74, 0xae54, 0x7559, 0x3a3a, 0x755c, 0x4b6f, 0x3341,
+  /* 0x6800 */
+  0x755d, 0x444e, 0x464a, 0x3149, 0xae4b, 0x4072, 0x4034, 0x372a,
+  0xae58, 0x755f, 0x5b59, 0xae59, 0x393b, 0x337c, 0x5b5b, 0x3374,
+  0x5b61, 0x7560, 0xae5a, 0x7561, 0x5b5e, 0xae5c, 0x4073, 0x334b,
+  0x3a2c, 0xae5d, 0x334a, 0x3a4f, 0xae5e,
+  /* 0x6840 */
+  0x5b5c, 0x3765, 0x374b, 0x456d, 0xae5f, 0xae60, 0x5b5a, 0x3046,
+  0xae61, 0xae62, 0x5b5d, 0x5b5f, 0x364d, 0x372c, 0x755e, 0x343c,
+  0x354b, 0xae63, 0xae64, 0x5b62, 0x7562, 0x3a79, 0x4b71, 0x3b37,
+  0x5b63, 0x4930, 0xae66, 0xae67, 0x7563, 0x5b6f, 0x7564, 0x3233,
+  0x5b64, 0xae68, 0xae69, 0x5b75, 0x5b65,
+  /* 0x6880 */
+  0x4e42, 0xae6a, 0x5b6c, 0x475f, 0x5b74, 0x5b67, 0xae6b, 0x3034,
+  0x5b69, 0xae6c, 0x393c, 0xae6e, 0xae6f, 0xae70, 0x5b6b, 0xae71,
+  0x5b6a, 0x5b66, 0x5b71, 0x3e3f, 0x7566, 0x7567, 0x546d, 0x3868,
+  0x4d7c, 0xae72, 0xae73, 0x5b68, 0x4474, 0x3323, 0x3a2d, 0x7568,
+  0x5b60, 0xae74, 0x5b70, 0x3361, 0x5b6e, 0x5b72, 0xae75, 0x456e,
+  /* 0x68C0 */
+  0xae7a, 0x347e, 0xae7b, 0x5c32, 0x7569, 0x4c49, 0x5b77, 0x347d,
+  0xae7c, 0x5b7e, 0xae7d, 0x756a, 0x4b40, 0x5c21, 0x5c23, 0xae7e,
+  0x5c27, 0x5b79, 0xaf21, 0x432a, 0x456f, 0x5c2b, 0x5b7c, 0x5c28,
+  0xaf22, 0xaf23, 0x5c22, 0x756b, 0xaf24, 0x756c, 0x3f39, 0x5c2c,
+  0x756d, 0x756e, 0x4033, 0xaf25, 0x5c2a, 0x343d, 0xae76, 0x756f,
+  /* 0x6900 */
+  0x4f50, 0x5b76, 0xaf26, 0x5c26, 0x3058, 0xaf27, 0x5b78, 0x7570,
+  0x4c3a, 0x5b7d, 0x3f22, 0x4447, 0x5b73, 0x5c25, 0x3f7a, 0x5c2f,
+  0x3371, 0x3821, 0x5c31, 0x5b7a, 0x5c30, 0x5c29, 0x5b7b, 0x5c2d,
+  0x5c2e, 0x5c3f, 0x464e, 0x7573, 0x5c24, 0x5c3b, 0xaf2b, 0x5c3d,
+  0x4458,
+  /* 0x6940 */
+  0x7574, 0xaf2d, 0x7571, 0x4d4c, 0x4976, 0x5c38, 0x424a, 0x7575,
+  0x5c3e, 0x413f, 0x5c35, 0x5c42, 0x5c41, 0x466f, 0x5c40, 0x466a,
+  0x7576, 0x7577, 0x7578, 0xaf2e, 0x5c44, 0x5c37, 0xaf2f, 0x3648,
+  0x5c3a, 0x3d5d, 0xaf30, 0x4760, 0x5c3c, 0x364b, 0x5c34, 0x5c36,
+  0x5c33, 0xaf31, 0x4f30, 0x335a, 0x5c39, 0xaf32,
+  /* 0x6980 */
+  0x7579, 0x5c43, 0x3335, 0x3a67, 0x315d, 0x5c54, 0xaf33, 0x4f31,
+  0x5c57, 0xaf35, 0xaf36, 0x3f3a, 0x5c56, 0x5c55, 0x757b, 0xaf37,
+  0x5c52, 0x757c, 0x5c46, 0xaf38, 0x5c63, 0x5c45, 0x5c58, 0xaf39,
+  0xaf3a, 0x5c50, 0xaf3b, 0x5c4b, 0x5c48,
+  /* 0x69C0 */
+  0xaf3c, 0x5c49, 0x5c51, 0x7422, 0x5c4e, 0x393d, 0x4448, 0x4164,
+  0x5c4c, 0x757d, 0x5c47, 0xaf3d, 0x5c4a, 0xaf3e, 0x4d4d, 0x4b6a,
+  0x5c4f, 0x5c59, 0x7622, 0xaf44, 0x5c61, 0x5c5a, 0x7623, 0x7624,
+  0x5c67, 0x5c65, 0xaf45, 0xaf46, 0x5c60, 0xaf47, 0xaf49, 0x7625,
+  0x7626, 0x5c5f, 0x4450, 0x4165, 0xaf4a, 0x5c5d,
+  /* 0x6A00 */
+  0x5c5b, 0x5c62, 0x5c68, 0x4875, 0x5c6e, 0x7627, 0xaf4b, 0x5c69,
+  0x5c6c, 0x5c66, 0x7628, 0x4374, 0x4938, 0xaf4c, 0x5c5c, 0xaf4d,
+  0x5c64, 0x3e40, 0x4c4f, 0x5c78, 0x5c6b, 0x3822, 0x3223, 0x335f,
+  0x5c53, 0xaf41, 0xaf4f, 0xaf50, 0xaf51, 0x3e41, 0x5c70, 0x5c77,
+  0x3c79, 0x3372, 0x762a, 0x432e, 0x762b, 0xaf52,
+  /* 0x6A40 */
+  0x5c6d, 0x762c, 0xaf53, 0x5c72, 0x5c76, 0xaf54, 0x3636, 0xaf56,
+  0x762d, 0xaf57, 0x762e, 0x354c, 0x5c74, 0x762f, 0x3521, 0x464b,
+  0x5c73, 0xaf58, 0x5c75, 0x7630, 0x5c6f, 0x7631, 0x5c71, 0xaf55,
+  0xaf5a, 0x3360,
+  /* 0x6A80 */
+  0x4349, 0xaf5b, 0x5c7c, 0x7633, 0xaf5c, 0x5c7a, 0x3869, 0x5c79,
+  0xaf5e, 0x7634, 0x5d21, 0x5b58, 0x7635, 0x7636, 0xaf5f, 0x5c7b,
+  0xaf60, 0x5c7d, 0x5c7e, 0x7637, 0x5d2c, 0xaf62, 0x5d28, 0x5b6d,
+  0x5d27, 0x5d26, 0x5d23, 0xaf63,
+  /* 0x6AC0 */
+  0x5c6a, 0x5d25, 0x5d24, 0xaf64, 0xaf66, 0x5d2a, 0x4f26, 0xaf65,
+  0x5d2d, 0x367b, 0xaf67, 0xaf68, 0x5d29, 0x5d2b, 0x7638, 0x7639,
+  0x4827, 0x5d2e, 0xaf6b, 0xaf6c, 0xaf6d, 0xaf6e, 0x5d32, 0x5d2f,
+  0xaf6f,
+  /* 0x6B00 */
+  0x4d73, 0x5d30, 0x5c5e, 0xaf71, 0xaf72, 0xaf73, 0xaf74, 0x5d33,
+  0x5d34, 0xaf76, 0x763c, 0x3135, 0x763d, 0x5d36, 0x3767, 0x3c21,
+  0x3655, 0x3224, 0x763e, 0xaf78, 0x4d5f, 0x763f, 0x5d38, 0x5d37,
+  0x5d3a, 0x353d, 0x3656, 0x343e,
+  /* 0x6B40 */
+  0x5d3d, 0x7640, 0x5d3c, 0x5d3e, 0xaf79, 0x324e, 0x4337, 0x5d3f,
+  0x343f, 0x5d41, 0x7641, 0xaf7a, 0x5d40, 0x5d42, 0x5d43, 0x7642,
+  0x5d44, 0x3b5f, 0x4035, 0x3a21, 0x7643, 0x4970, 0x7644, 0x4a62,
+  0x4f44, 0xaf7b, 0x3b75, 0x3a50, 0x4e72, 0xaf7c, 0x7645, 0x5d45,
+  0x5d46, 0xaf7d, 0x3b60, 0x5d47,
+  /* 0x6B80 */
+  0x5d48, 0xaf7e, 0x7646, 0x5d4a, 0x5d49, 0x4b58, 0x3d5e, 0x3c6c,
+  0x3b44, 0x5d4b, 0x5d4d, 0x3f23, 0x5d4c, 0xee21, 0x5d4e, 0x5d4f,
+  0x7647, 0x5d50, 0x5d51, 0x7648, 0xee22, 0x5d52, 0x5d54, 0x5d53,
+  0x5d55, 0x3225, 0x434a, 0x5d56, 0x3b26, 0x334c, 0x5d57, 0xee24,
+  0xee25, 0x4542,
+  /* 0x6BC0 */
+  0x544c, 0x3523, 0x5d58, 0xee26, 0xee27, 0xee28, 0x5d59, 0x4a6c,
+  0x4b68, 0x764a, 0x4647, 0x5d5a, 0x4866, 0x764b, 0x764c, 0x487b,
+  0xee29, 0x4c53, 0x5d5b, 0xee2a, 0xee2b, 0x5d5d, 0x5d5c, 0xee2c,
+  0x5d5f, 0xee2d, 0x5d5e, 0x764d,
+  /* 0x6C00 */
+  0xee2e, 0x764e, 0x5d61, 0xee2f, 0xee30, 0x3b61, 0x764f, 0x4c31,
+  0x5d62, 0x5d63, 0x3524, 0x5d64, 0x5d66, 0x5d65, 0x7650, 0x3f65,
+  0xee31, 0xee32, 0x4939, 0x314a, 0xee33, 0x4845, 0xee35,
+  /* 0x6C40 */
+  0x4475, 0x3d41, 0x3561, 0xee36, 0x4846, 0x3c2e, 0x5d68, 0x3440,
+  0x7651, 0x3178, 0xee37, 0x7652, 0x4672, 0x5d67, 0x393e, 0x4353,
+  0x5d69, 0xee4f, 0x5d71, 0x5d6a, 0xee38, 0x4241, 0x3562, 0x5d72,
+  0x7654, 0x7655, 0x3768, 0x3525, 0x5d70,
+  /* 0x6C80 */
+  0x5d6e, 0x5d6b, 0x4d60, 0xee39, 0x7656, 0x7657, 0x4440, 0xee3a,
+  0x4659, 0x5d6c, 0x5d74, 0x5d73, 0x3723, 0xee3c, 0xee3d, 0x322d,
+  0xee3e, 0x7658, 0x3a3b, 0x5d6d, 0x5d6f, 0x7659, 0x4b57, 0x4274,
+  0x7653, 0x4b77, 0xee3f, 0x5d7c, 0x5d7d, 0x324f, 0x4a28, 0x4c7d,
+  0x5e21, 0x3c23, 0x3e42, 0x5d78, 0x5d7e, 0x3168,
+  /* 0x6CC0 */
+  0x3637, 0xee40, 0x5d75, 0x5d7a, 0x765b, 0x4074, 0x4771, 0x4867,
+  0xee41, 0x5d77, 0x765c, 0x4b21, 0xee43, 0x5d79, 0x5e24, 0xee44,
+  0x5e22, 0xee45, 0x5d7b, 0x765d, 0x4b22, 0x4748, 0x3563, 0x4525,
+  0x436d, 0xee46, 0x5e25, 0x765e, 0xee47, 0xee48, 0x765f, 0x5e23,
+  0x4259, 0x5d76, 0x314b, 0x765a,
+  /* 0x6D00 */
+  0xee4a, 0x7661, 0xee4b, 0x4d4e, 0x5e30, 0x7662, 0x5e2f, 0x4076,
+  0x5e2c, 0x4d6c, 0x4636, 0x5e26, 0xee4c, 0x4445, 0xee4d, 0xee4e,
+  0x314c, 0x393f, 0x5e29, 0x7663, 0xee50, 0x7664, 0x3d27, 0x5e2e,
+  0xee65, 0x5e2d, 0x5e28, 0x5e2b, 0x7665, 0x3368, 0xee51, 0x5e2a,
+  0x4749, 0x7666,
+  /* 0x6D40 */
+  0x4e2e, 0x3e74, 0x4075, 0x7667, 0x5e36, 0x5e34, 0xee52, 0x494d,
+  0xee53, 0xee54, 0x5e31, 0x5e33, 0x7668, 0x313a, 0x3940, 0x4f32,
+  0x333d, 0x4962, 0xee55, 0x4d61, 0x3324, 0x3f3b, 0x5e35,
+  /* 0x6D80 */
+  0xee56, 0xee57, 0x766a, 0x5e3a, 0x766b, 0x3e43, 0x766c, 0xee58,
+  0x4d30, 0xee59, 0x5e37, 0xee5a, 0x5e32, 0x766d, 0x5e38, 0xee5b,
+  0x4e5e, 0x4573, 0x4642, 0x766e, 0xee61, 0x766f, 0xee62, 0x3336,
+  0x3155, 0xee63, 0x5e3e, 0x5e41, 0x4e43, 0x7670,
+  /* 0x6DC0 */
+  0x4d64, 0xee64, 0x7671, 0x5e48, 0x5e42, 0x5e3f, 0xee66, 0x4e54,
+  0x5e45, 0xee67, 0xee68, 0xee69, 0x3d4a, 0x5e47, 0x5e4c, 0x7672,
+  0x4571, 0x5e4a, 0x7673, 0x7674, 0x7675, 0x5e44, 0xee6a, 0x4338,
+  0x5e4b, 0x5e40, 0x5e46, 0xee6b, 0x5e4d, 0x307c, 0x5e43, 0x5e4e,
+  0x3f3c, 0x3d5f, 0x4a25, 0xee6c, 0x3a2e, 0x5e3b, 0x5e49, 0x453a,
+  0x7676,
+  /* 0x6E00 */
+  0x4036, 0x3369, 0x3a51, 0x3e44, 0x5e3d, 0x3d42, 0x374c, 0x5e3c,
+  0xee5d, 0x5e52, 0x3d6d, 0x383a, 0x5e61, 0xee6e, 0x5e5b, 0x3574,
+  0x454f, 0xee6f, 0x5e56, 0x5e5f, 0x302f, 0x3132, 0xee70, 0x3239,
+  0x5e58, 0x422c, 0x5e4f, 0x5e51, 0x3941, 0xee72, 0x7678, 0xee6d,
+  0x5e62, 0x5e5d, 0xee73, 0x5e55,
+  /* 0x6E40 */
+  0x5e5c, 0x7679, 0xee74, 0xee75, 0x4c2b, 0xee76, 0xee77, 0x5e5a,
+  0x5e5e, 0xee78, 0xee79, 0xee7a, 0xee7b, 0x3850, 0xee7c, 0x3e45,
+  0x4339, 0x767a, 0x767b, 0x5e54, 0xee7d, 0x4d2f, 0x5e57, 0x5e50,
+  0x4572, 0x5e53, 0x5e59, 0x4f51, 0x3c3e,
+  /* 0x6E80 */
+  0x4b7e, 0x5e63, 0x482e, 0x5e6f, 0x383b, 0xef21, 0x3d60, 0x5e65,
+  0x4e2f, 0x3942, 0x5e72, 0x306e, 0x5e70, 0xef22, 0x5e64, 0x767c,
+  0x5e6a, 0x767d, 0x5e6c, 0xef23, 0x4d4f, 0x5e67, 0x452e, 0x5e69,
+  0xef24,
+  /* 0x6EC0 */
+  0x767e, 0x5e71, 0xef25, 0x5e6b, 0x4c47, 0x7721, 0x5e66, 0xef26,
+  0x3c22, 0x5e7e, 0x7722, 0x336a, 0x5e68, 0x5e6d, 0x5e6e, 0xef27,
+  0x426c, 0x425a, 0xef29, 0x5e76, 0x5e7c, 0x5e7a, 0x4529, 0x5f23,
+  0x5e77, 0xef2a, 0xef2b, 0x5e78, 0x5e60,
+  /* 0x6F00 */
+  0x3579, 0x493a, 0x3c3f, 0x3977, 0xef2c, 0xef2d, 0x4f33, 0x7723,
+  0x5e74, 0x5f22, 0x3169, 0x4166, 0xef2e, 0x7724, 0x4779, 0x3441,
+  0x4e7a, 0xef2f, 0x7726, 0x4c21, 0x4452, 0x7727, 0x5e7b, 0x5e7d,
+  0x7728, 0xef28, 0xef30, 0x4132, 0xef31, 0x5f21, 0x5e79,
+  /* 0x6F40 */
+  0x5e73, 0x3443, 0x7729, 0xef33, 0x3769, 0xef34, 0x5f2f, 0x772a,
+  0xef35, 0x5f2a, 0x4078, 0x772b, 0x3363, 0xef36, 0x772c, 0x772d,
+  0x3d61, 0x5f33, 0xef37, 0x5f2c, 0x442c, 0x5f29, 0x4459, 0x5f4c,
+  0x5f26, 0x5f25, 0x5f2e, 0xef39, 0x772e,
+  /* 0x6F80 */
+  0x5f28, 0x5f27, 0x5f2d, 0x4021, 0x5f24, 0x772f, 0x7730, 0x7731,
+  0x5f30, 0xef3a, 0x5f31, 0x7732, 0xef3b, 0x3442, 0xef38, 0xef3d,
+  0x7733, 0x5f36, 0x5f35, 0x5f37, 0xef3e, 0x7734, 0x5f3a, 0xef3f,
+  0x4543, 0x5f34, 0xef41, 0x7735, 0x5f38, 0x7736, 0xef3c,
+  /* 0x6FC0 */
+  0x3763, 0x4279, 0x5f32, 0x473b, 0x5f39, 0x7737, 0xef42, 0xef43,
+  0x7738, 0x5f3e, 0x5f3c, 0x5f3f, 0xef44, 0x5f42, 0xef45, 0x5f3b,
+  0x396a, 0x4728, 0x5e39, 0xef46, 0x4d74, 0x5f3d, 0x5f41, 0x4275,
+  0x773a, 0x5f40, 0x5f2b, 0x773b, 0x6f69, 0x7739, 0x5f45, 0xef48,
+  0x5f49,
+  /* 0x7000 */
+  0xef49, 0x5f47, 0x773c, 0x773d, 0xef4a, 0x5f43, 0xef4b, 0x5f44,
+  0x5f48, 0x5f46, 0x494e, 0x5f4e, 0x5f4b, 0x5f4a, 0x5f4d, 0x4654,
+  0x5f4f, 0xef4c, 0x4375, 0x426d, 0x773e, 0x4025, 0x5f50, 0x5f52,
+  0xef4e, 0xef4f, 0xef50, 0x5f51,
+  /* 0x7040 */
+  0xef51, 0xef52, 0x773f, 0xef53, 0x5e75, 0x7742, 0x5f53, 0xef55,
+  0x4667, 0x7740, 0x7741, 0x5f54, 0x7743, 0xef56, 0xef57, 0x3250,
+  0xef58, 0xef59, 0x4574, 0x3325, 0x7744, 0xef5a, 0x3564, 0x3c5e,
+  0x3a52, 0xef5b,
+  /* 0x7080 */
+  0xef5c, 0x7745, 0xef5d, 0x4f27, 0x3f66, 0x316a, 0x5f56, 0xef5e,
+  0xef5f, 0x5f55, 0xef62, 0x7746, 0x7747, 0x5f59, 0x433a, 0x5f5c,
+  0x5f57, 0xef63, 0x5f5b, 0x7748, 0x5f5a, 0x4540, 0x3059, 0xef60,
+  /* 0x70C0 */
+  0x4e75, 0xef66, 0x5f5e, 0x3128, 0xef67, 0xef68, 0x7749, 0x774a,
+  0x5f60, 0xef69, 0x5f5f, 0x5f5d, 0x774b, 0xef65, 0x5f58, 0x4b23,
+  0x5f62,
+  /* 0x7100 */
+  0xef6a, 0xef6b, 0xef6c, 0xef6d, 0xef6e, 0x5f61, 0xef6f, 0x774c,
+  0x316b, 0x5f64, 0x4a32, 0x5f63, 0x774e, 0x774f, 0x4c35, 0x3e47,
+  0x774d, 0x7750, 0xef71, 0x7751, 0xef72, 0x4133, 0x3e46,
+  /* 0x7140 */
+  0x7752, 0x7753, 0x4e7b, 0xef74, 0x5f6a, 0x4079, 0xef73, 0x7754,
+  0x7756, 0xef75, 0x5f66, 0x5f6b, 0x316c, 0x7757, 0xef76, 0x7758,
+  0x5f69, 0x4761, 0x5f65, 0x5f68, 0x3e48, 0x7759, 0x4851, 0x5f6c,
+  0x3c51, 0x407a,
+  /* 0x7180 */
+  0xef79, 0x5f6f, 0x775b, 0x775c, 0x5f67, 0x3727, 0x5f6d, 0x775d,
+  0x4d50, 0x5f70, 0xef78, 0x7426, 0xef7a, 0x3d4f, 0xef7b, 0xef7c,
+  0x5f71, 0x5f72, 0xef7d, 0xef7e, 0x472e, 0xf021, 0x5f74, 0x775f,
+  0x5f75,
+  /* 0x71C0 */
+  0x775e, 0x4733, 0x7760, 0x4575, 0x5f77, 0xf023, 0x5f79, 0x4e55,
+  0x5f76, 0xf024, 0x5f78, 0x316d, 0x5f73, 0xf025, 0xf026, 0x535b,
+  0x5f7a, 0x4167, 0x3b38, 0x5f7c, 0x5f7b, 0x3f24, 0x5259, 0x5f7d,
+  0x6021, 0x5f6e, 0x5f7e, 0x7761, 0x6022,
+  /* 0x7200 */
+  0x7762, 0x477a, 0xf027, 0x6023, 0x6024, 0x7763, 0x6025, 0x6026,
+  0x445e, 0xf02a, 0x6028, 0x6027, 0x6029, 0x602a, 0xf02b, 0x3c5f,
+  0x4963, 0xf02c, 0xf02d, 0x4c6c, 0x602b, 0x602c, 0x4156, 0x3c24,
+  0x602d,
+  /* 0x7240 */
+  0x602e, 0xf02f, 0x602f, 0x4a52, 0x4847, 0x6030, 0x4757, 0x442d,
+  0xf030, 0x7764, 0x7765, 0xf031, 0x6031, 0x3267, 0x356d, 0x4c46,
+  0x4c36, 0x3234, 0x4f34, 0xf032, 0x4b52, 0x4a2a, 0xf034, 0xf035,
+  0x4037, 0x6032, 0xf036, 0x4643, 0x3823, 0x6033, 0xf037,
+  /* 0x7280 */
+  0x3a54, 0x6035, 0x6034, 0x6036, 0x7767, 0xf038, 0x6037, 0x6038,
+  0x7768, 0x353e, 0x6039, 0x603a, 0x3824, 0xf03a, 0xf03b, 0x4848,
+  0xf03c, 0xf03d, 0x603c, 0x3e75, 0x603b, 0x7769,
+  /* 0x72C0 */
+  0x776a, 0xf03e, 0x3638, 0x603d, 0x603f, 0x603e, 0xf040, 0x6040,
+  0x3851, 0x6041, 0x3669, 0x4140, 0x397d, 0x6043, 0x6044, 0x6042,
+  0x3c6d, 0x4648, 0x3639, 0xf043, 0x6046, 0x432c, 0x6045, 0xf044,
+  0x776b, 0x4f35, 0x4762,
+  /* 0x7300 */
+  0xf045, 0x6049, 0xf046, 0x604b, 0x6048, 0xf047, 0xf048, 0x4c54,
+  0x604a, 0x604c, 0x4e44, 0x6050, 0x776d, 0x776e, 0x604f, 0x4376,
+  0x472d, 0xf04b, 0x3825, 0x604e, 0xf04c, 0xf04d, 0x604d, 0x4d31,
+  0x4d32, 0xf04a, 0xf04e, 0x6051, 0x316e,
+  /* 0x7340 */
+  0x3976, 0x3b62, 0x6052, 0x6053, 0x7770, 0xf04f, 0x6055, 0x3d43,
+  0x7771, 0x6057, 0x6056, 0xf051, 0xf052, 0xf054, 0xf055, 0x6058,
+  0xf056, 0x334d, 0x605a, 0xf057, 0x6059, 0x605c, 0x605b, 0x7772,
+  /* 0x7380 */
+  0xf058, 0x383c, 0xf059, 0x4e28, 0x364c, 0xf05a, 0x3226, 0xf05b,
+  0x7773, 0x366a, 0xf05c, 0xf05d, 0xf05e, 0x7774, 0x7775, 0x7776,
+  0xf05f, 0x7777, 0xf060, 0x3461, 0x7778, 0x4e68, 0x605e, 0xf061,
+  0xf062, 0xf063, 0x6060, 0xf064, 0xf065,
+  /* 0x73C0 */
+  0x6061, 0x3251, 0xf066, 0x605d, 0x7779, 0x3b39, 0xf067, 0x4441,
+  0x605f, 0x777a, 0x777b, 0x777c, 0x6064, 0x3c6e, 0xf068, 0x777d,
+  0x6062, 0xf069, 0x777e, 0x373e, 0x4849, 0x6063, 0x607e, 0x6069,
+  0xf06a, 0xf06c, 0x383d,
+  /* 0x7400 */
+  0xf06d, 0x3565, 0x6066, 0x4d7d, 0x7821, 0x4e30, 0x7822, 0xf06b,
+  0x7823, 0x7824, 0x4276, 0xf06e, 0x6068, 0x7826, 0x7827, 0x7828,
+  0x7829, 0x782a, 0x782b, 0x782c, 0x782d, 0xf06f, 0x606a, 0x4e56,
+  0x3657, 0x487c, 0x474a, 0xf070, 0x606b, 0x606d,
+  /* 0x7440 */
+  0xf072, 0x6070, 0xf073, 0x782e, 0x782f, 0x7830, 0x7831, 0xf074,
+  0xf075, 0xf071, 0x606c, 0x7832, 0x606f, 0x386a, 0x314d, 0x6071,
+  0xf076, 0x3f70, 0x606e, 0x4e5c, 0x7833, 0x6074, 0x7424, 0x6072,
+  0x6075, 0x7834, 0x7835, 0x6067, 0x6073, 0xf077, 0x3a3c, 0x6076,
+  0x6077,
+  /* 0x7480 */
+  0xf078, 0x4d7e, 0xf079, 0x7836, 0x7837, 0xf07a, 0x7838, 0x6078,
+  0x783d, 0xf07c, 0xf07d, 0x7839, 0xf07e, 0x783a, 0x6079, 0x783b,
+  0xf121, 0xf122, 0x6065, 0x783c, 0xf123, 0x783e, 0x607a, 0x783f,
+  0x7840, 0xf124, 0xf125, 0x3444, 0x7841, 0xf126, 0xf128, 0xf127,
+  0x3c25, 0x7842,
+  /* 0x74C0 */
+  0x7843, 0x7844, 0x607b, 0x607c, 0x607d, 0xf129, 0xf12a, 0x7845,
+  0x313b, 0xf12b, 0x6121, 0x493b, 0x6122, 0x3424, 0x6123, 0x6124,
+  0xf12d, 0x6125, 0xf12c, 0x6127, 0x6128, 0x6126, 0x4953, 0x612a,
+  0x6129, 0xf12f, 0x7846,
+  /* 0x7500 */
+  0x7847, 0x612c, 0x612b, 0x612d, 0x612e, 0x6130, 0x612f, 0x3979,
+  0x6132, 0x6131, 0x7848, 0x3445, 0x3f53, 0x453c, 0x6133, 0x4038,
+  0xf131, 0x3b3a, 0xf132, 0x3179, 0x6134, 0x4d51, 0xf133, 0x4a63,
+  0x6135, 0x7849, 0x4544, 0x4d33, 0x3943, 0x3f3d, 0x434b, 0x5234,
+  0x442e, 0x3268, 0x6136, 0xf136, 0xf137,
+  /* 0x7540 */
+  0xf138, 0x6137, 0x613c, 0xf139, 0x613a, 0x6139, 0x5a42, 0x3326,
+  0x6138, 0xf13a, 0x305a, 0xf13b, 0x482a, 0xf13c, 0x484a, 0x4e31,
+  0x613d, 0x613b, 0x435c, 0x4026, 0x482b, 0x492d, 0x613f, 0x4e2c,
+  0x374d, 0x6140, 0x613e, 0x4856, 0x6141, 0xf13d, 0x6142, 0x784a,
+  0x305b, 0xf13f, 0xf13e, 0x3e76, 0x6147, 0x6144, 0x466d, 0x6143,
+  0x784b, 0xf140, 0xf141, 0xf142, 0x3526,
+  /* 0x7580 */
+  0xf143, 0x614a, 0x6145, 0x6146, 0x6149, 0x6148, 0x4925, 0xf145,
+  0x4142, 0x4141, 0x353f, 0x784c, 0x614b, 0x614c, 0x614d, 0xf147,
+  0x614f, 0x614e, 0x3156, 0xf149, 0x6157, 0x4868, 0x6151, 0x6153,
+  0xf14a, 0x6155, 0x3f3e, 0x6156, 0x6154, 0x3c40, 0xf14b,
+  /* 0x75C0 */
+  0xf14c, 0x6150, 0x6152, 0x4942, 0xf14d, 0x3e49, 0x6159, 0x6158,
+  0x784e, 0xf14e, 0x615a, 0xf14f, 0x3c26, 0x3a2f, 0x4577, 0x615b,
+  0x444b, 0xf150, 0x615d, 0xf151, 0xf152, 0x4e21, 0x615c, 0x784f,
+  0xf153, 0x4169, 0xf154, 0xf155, 0x6162, 0xf156, 0x6164, 0x6165,
+  0x4354, 0xf157, 0x6163, 0x6160, 0x615e, 0x615f,
+  /* 0x7600 */
+  0x7850, 0x6161, 0x7851, 0xf158, 0xf15a, 0x7852, 0x6168, 0x6166,
+  0x6167, 0xf15b, 0xf15e, 0x7853, 0x7854, 0xf159, 0x7855, 0xf15f,
+  0xf160, 0x7856, 0x6169, 0x616b, 0x616c, 0x616d, 0x616e, 0xf162,
+  0x7e7d, 0x616a, 0xf163, 0x7857, 0x6170, 0xf165, 0x616f, 0x7858,
+  0x6171, 0xf164,
+  /* 0x7640 */
+  0xf168, 0x4e45, 0x7859, 0x6174, 0x6172, 0x6173, 0xf16a, 0x785a,
+  0x3462, 0x4c7e, 0xf16b, 0x4a4a, 0x6176, 0x6175, 0x6177, 0x6178,
+  0x785b, 0x785c, 0x617c, 0x6179, 0x617a, 0x617b, 0x617d, 0x785d,
+  0xf16d, 0x785e, 0x617e, 0x785f, 0x6221, 0x6222, 0x6223, 0x482f,
+  0x4550, 0x6224, 0x4772, 0x4934,
+  /* 0x7680 */
+  0x6225, 0x7860, 0x6226, 0x452a, 0x3327, 0x3944, 0x6227, 0x6228,
+  0x6229, 0x3b29, 0x622b, 0xf16e, 0x622a, 0x622c, 0x622d, 0x7861,
+  0xf16f, 0x7862, 0x7863, 0xf171, 0xf170, 0x7864, 0xf172, 0xf173,
+  0x7865, 0x4869, 0xf174, 0x622e, 0x622f, 0x7866, 0x7369, 0x6230,
+  0x6231, 0x6232, 0x3b2e,
+  /* 0x76C0 */
+  0x6233, 0x4756, 0x7867, 0x4b5f, 0x314e, 0xf176, 0x3157, 0x7868,
+  0x6234, 0x7869, 0x6236, 0x786a, 0x6235, 0x4570, 0x4039, 0x5d39,
+  0x6237, 0x4c41, 0x6238, 0x3446, 0x4857, 0x6239, 0x786b, 0x623a,
+  0xf178, 0x623b, 0xf179, 0x4c5c, 0x786c, 0x4c55, 0x443e, 0x416a,
+  0x623d, 0x786d, 0x3d62,
+  /* 0x7700 */
+  0x3e4a, 0x6240, 0x623f, 0x623e, 0x487d, 0x786e, 0x3447, 0x3829,
+  0xf17b, 0x786f, 0xf17c, 0x6246, 0x6243, 0x3f3f, 0x4c32, 0x6242,
+  0x6244, 0x6245, 0x6241, 0xf17d, 0x7870, 0xf17e, 0x7871, 0x6247,
+  0x6248, 0x442f, 0x3463,
+  /* 0x7740 */
+  0x4365, 0x7872, 0x6249, 0x7873, 0x7874, 0xf225, 0x624a, 0x624d,
+  0x7875, 0x7876, 0xf226, 0x3f67, 0x7877, 0x4644, 0x624e, 0x4b53,
+  0x624b, 0xf227, 0x624c, 0xf229, 0x6251, 0x7878, 0xf22a, 0xf22b,
+  0x6250, 0x624f,
+  /* 0x7780 */
+  0x7879, 0x6253, 0x6252, 0x6254, 0x787a, 0xf22e, 0x6256, 0xf22f,
+  0x6255, 0xf230, 0xf231, 0x4a4d, 0xf232, 0x787b, 0x3d56, 0x4e46,
+  0x6257, 0x4637, 0x6258, 0x6259, 0x625d, 0x625b, 0x625c, 0x625a,
+  /* 0x77C0 */
+  0x625e, 0x625f, 0x6260, 0x6261, 0x4c37, 0x6262, 0xf233, 0xf234,
+  0x787c, 0x4c70, 0x6263, 0xf235, 0x434e, 0xf236, 0x476a, 0x366b,
+  0xf237, 0xf238, 0x433b, 0x6264, 0x363a, 0xf23a, 0x4050, 0xf23b,
+  0xf23c, 0x6265,
+  /* 0x7800 */
+  0x3a3d, 0xf23e, 0xf23f, 0xf240, 0x6266, 0xf241, 0x6267, 0x3826,
+  0x3a55, 0xf242, 0x6269, 0xf243, 0x4556, 0x3a56, 0x354e, 0xf244,
+  0x787d, 0x4b24, 0x474b, 0x4557, 0x395c,
+  /* 0x7840 */
+  0x7921, 0x626b, 0xf245, 0x7922, 0x7923, 0x7924, 0x3e4b, 0xf246,
+  0x7925, 0xf247, 0x4e32, 0x3945, 0x7926, 0x3827, 0x4823, 0x626d,
+  0x626f,
+  /* 0x7880 */
+  0x386b, 0x626e, 0x4476, 0xf249, 0x6271, 0x3337, 0x626c, 0x486a,
+  0x3130, 0xf24a, 0x3a6c, 0x4f52, 0x6270, 0xf24c, 0xf24d, 0xf24e,
+  0x6272, 0xf24b, 0x4a4b, 0x4059, 0x6274, 0x792a, 0x6275, 0x7928,
+  0x6273, 0x334e, 0xf24f, 0x627b, 0x627a,
+  /* 0x78C0 */
+  0x3c27, 0x627c, 0x6277, 0xf250, 0x627d, 0x6278, 0xf251, 0xf252,
+  0x4858, 0x6276, 0x6279, 0xf253, 0x6322, 0xf254, 0xf255, 0x792b,
+  0xf256, 0x6321, 0x4b61, 0x627e, 0x306b, 0x792c, 0x6324, 0x792e,
+  0xf257, 0xf258, 0xf259, 0x6323, 0xf25a,
+  /* 0x7900 */
+  0x792d, 0x3e4c, 0x6325, 0x4143, 0xf25c, 0x6327, 0x6326, 0x6328,
+  0xf25d, 0x792f, 0xf25f, 0x6268, 0x626a, 0x632a, 0x6329, 0x7930,
+  0xf25e, 0x7931, 0x7932, 0x3c28, 0xf260, 0x4e69, 0x3c52,
+  /* 0x7940 */
+  0x632b, 0x3737, 0x7935, 0x7936, 0x3540, 0x3527, 0x3b63, 0xf261,
+  0x4d34, 0x6331, 0x6330, 0x4144, 0x632d, 0xf262, 0x632f, 0xf263,
+  0x793a, 0x3d4b, 0x3f40, 0x632e, 0x632c, 0x472a, 0x3e4d, 0xf265,
+  0x493c, 0x3a57, 0xf266, 0x4578, 0x793e, 0x6332, 0x6333,
+  /* 0x7980 */
+  0x6349, 0x3658, 0x4f3d, 0x4135, 0x6334, 0x3252, 0x4477, 0x4a21,
+  0xf267, 0xf268, 0xf269, 0x7942, 0xf26a, 0x6335, 0xf26b, 0x357a,
+  0x6336, 0xf26c, 0x6338, 0x6339, 0x4729, 0x7943, 0x633a, 0xf26d,
+  0x7944, 0x633b, 0x633c, 0xf26e, 0x3659, 0x3253, 0x4645,
+  /* 0x79C0 */
+  0x3d28, 0x3b64, 0xf26f, 0xf270, 0x7945, 0x633d, 0x7946, 0x3d29,
+  0xf271, 0xf272, 0x324a, 0x4943, 0x7948, 0x633e, 0xf273, 0x486b,
+  0x7949, 0x4145, 0x6341, 0x6342, 0x4769, 0x3f41, 0x633f, 0x4361,
+  0x794a, 0x6340, 0x794b, 0x3e4e, 0x305c,
+  /* 0x7A00 */
+  0x3529, 0x794c, 0x6343, 0xf278, 0x4478, 0x6344, 0x4047, 0xf279,
+  0x4c2d, 0xf27a, 0x4923, 0x6345, 0x6346, 0x4355, 0xf27b, 0x4e47,
+  0xf27c, 0x6348, 0x6347, 0xf27e, 0x3c6f, 0x634a, 0x3070, 0x634d,
+  0xf321, 0x794e, 0x634b, 0x3254, 0x374e, 0x634c, 0x3946,
+  /* 0x7A40 */
+  0x3972, 0x4a66, 0x634e, 0x4b54, 0xf322, 0x6350, 0xf323, 0x4051,
+  0x314f, 0x323a, 0x302c, 0xf324, 0x634f, 0xf325, 0xf326, 0x794f,
+  0xf327, 0xf328, 0x6351, 0x6352, 0x3e77, 0xf329, 0x6353, 0xf32a,
+  0x334f, 0x7950, 0x6355, 0x376a, 0xf32b, 0x3566, 0xf32c, 0x6356,
+  0x3675, 0x6357, 0x407c,
+  /* 0x7A80 */
+  0x464d, 0xf32d, 0x4060, 0x3a75, 0x7952, 0x6358, 0xf32e, 0xf32f,
+  0x4362, 0x416b, 0x635a, 0x635c, 0x6359, 0x635b, 0x3722, 0x7953,
+  0xf330, 0x635d, 0x3726, 0xf331, 0x3567, 0x4d52, 0x635f, 0x7955,
+  0x6360, 0xf334, 0x312e, 0x7956, 0xf335, 0xf336, 0x6363,
+  /* 0x7AC0 */
+  0x3376, 0x6362, 0x6361, 0x6365, 0x635e, 0x6366, 0x4e29, 0xf338,
+  0x6367, 0x7957, 0x6368, 0xf339, 0x5474, 0x636a, 0x6369, 0x636b,
+  0x636c, 0x4e35, 0x636d, 0x706f, 0x3e4f, 0x636e, 0x636f, 0x3d57,
+  0x4638, 0x6370, 0xf33a, 0xf33b, 0x4328, 0x7958, 0x6371, 0x433c,
+  0x6372, 0xf33c, 0x3625, 0x513f, 0x435d, 0x3c33, 0x7959, 0x3448,
+  /* 0x7B00 */
+  0x6373, 0x6422, 0x6376, 0xf33f, 0x3568, 0x6375, 0x6424, 0x6374,
+  0x3e50, 0x795a, 0x6378, 0x6379, 0x452b, 0x637a, 0x335e, 0x3f5a,
+  0x4964, 0xf342, 0x637c, 0xf343, 0x4268, 0x795b, 0xf344, 0xf345,
+  0xf346, 0x6377, 0x637b, 0x637d, 0x3a7b, 0x795c, 0xf341,
+  /* 0x7B40 */
+  0xf34a, 0x6426, 0x492e, 0x795d, 0x4826, 0x4579, 0x365a, 0x6425,
+  0x6423, 0x795e, 0x4835, 0x637e, 0x435e, 0x457b, 0x457a, 0xf34c,
+  0x3a76, 0x6438, 0x795f, 0xf34e, 0x6428, 0xf34f, 0x642a, 0xf350,
+  0x642d, 0x7960, 0x642e, 0x7961, 0x642b, 0x642c, 0x7962, 0xf351,
+  0x6429, 0x6427, 0xf34d, 0x6421, 0xf349,
+  /* 0x7B80 */
+  0x4a4f, 0x3255, 0x6435, 0x6432, 0x6437, 0xf354, 0xf355, 0x6436,
+  0x4773, 0x4c27, 0x3b3b, 0x6430, 0x6439, 0x6434, 0xf356, 0x6433,
+  0x642f, 0x7963, 0x6431, 0x3449, 0x433d, 0x407d, 0xf358, 0x4822,
+  0x643e, 0xf359, 0x4824, 0xf35a,
+  /* 0x7BC0 */
+  0x4061, 0x643b, 0x484f, 0xf35b, 0x643f, 0x4a53, 0x435b, 0xf35c,
+  0x643a, 0x643c, 0x643d, 0xf35f, 0xf360, 0x7965, 0x7966, 0xf361,
+  0x6440, 0x3c44, 0x4646, 0x6445, 0x6444, 0x6441, 0xf362, 0x4f36,
+  0xf363, 0x644a, 0x644e, 0x644b,
+  /* 0x7C00 */
+  0x6447, 0x7967, 0xf364, 0x6448, 0xf365, 0x644d, 0xf366, 0xf367,
+  0x6442, 0x5255, 0x6449, 0x6443, 0x644c, 0x7969, 0x6452, 0x796a,
+  0x344a, 0x644f, 0xf368, 0x6450, 0x6451, 0x6454, 0x7968, 0x796b,
+  0x796c, 0x6453, 0x4876, 0x6455, 0x4e7c, 0x4a6d,
+  /* 0x7C40 */
+  0x645a, 0x6457, 0xf369, 0xf36a, 0x6456, 0x4052, 0x6459, 0x645b,
+  0xf36b, 0x6458, 0x645f, 0xf36c, 0x645c, 0x796f, 0xf36d, 0x645d,
+  0x6446, 0xf36e, 0x645e, 0x6460, 0xf36f, 0x6461, 0x7970, 0xf370,
+  0xf371, 0xf372, 0x4a46, 0x6462, 0x7971, 0x4c62,
+  /* 0x7C80 */
+  0x364e, 0x3729, 0x6463, 0x4a34, 0x3f68, 0x4c30, 0x7972, 0x6464,
+  0x4e33, 0x7973, 0x4774, 0x4146, 0x4734, 0x3d4d, 0x3040, 0x7974,
+  0x6469, 0x6467, 0x6465, 0x3421, 0xf376, 0x3e51, 0x646a, 0x6468,
+  0x6466, 0x646e, 0x646d, 0x646c, 0x646b, 0xf378, 0xf379, 0x646f,
+  0x7975, 0x6470, 0x403a, 0xf37a,
+  /* 0x7CC0 */
+  0x6471, 0x6473, 0xf37c, 0x6472, 0xf37e, 0x3852, 0xf421, 0x4138,
+  0x6475, 0x7976, 0x457c, 0xf423, 0x6474, 0x7977, 0x6476, 0x7978,
+  0x4a35, 0x416c, 0x3947, 0x6477, 0xf425, 0x4e48, 0xf426, 0x6479,
+  0x647a, 0x647b, 0xf428, 0x647c, 0x3b65, 0x647d, 0x374f, 0x356a,
+  /* 0x7D00 */
+  0x352a, 0x6521, 0xf429, 0x4c73, 0x3948, 0x647e, 0x7979, 0x797a,
+  0xf42a, 0x6524, 0x4c66, 0x473c, 0x4933, 0xf42c, 0x797b, 0x3d63,
+  0x6523, 0x3c53, 0x3949, 0x3b66, 0x3569, 0x4a36, 0x6522, 0x797c,
+  0xf42d, 0x4147, 0x4b42, 0x3a77, 0x797d, 0x3b67, 0x445d, 0x6527,
+  0x4e5f, 0x3a59, 0x797e, 0x6528, 0x3f42, 0x652a, 0x3e52, 0x3a30,
+  0xf430, 0xf431, 0x6529,
+  /* 0x7D40 */
+  0xf432, 0x7a21, 0x3d2a, 0x383e, 0x4148, 0x6525, 0x652b, 0xf433,
+  0x7a22, 0x6526, 0x3750, 0x652e, 0x6532, 0x376b, 0x7a23, 0x652d,
+  0xf437, 0xf438, 0x6536, 0x7a24, 0x394a, 0x4d6d, 0x303c, 0x6533,
+  0x356b, 0x6530, 0xf439, 0x6531, 0xf43a, 0x457d, 0x652f, 0x652c,
+  0x3328, 0x4064, 0x3828, 0x7a25, 0x6538, 0xf43c,
+  /* 0x7D80 */
+  0x7a26, 0xf43e, 0xf43f, 0x6535, 0x7a27, 0xf440, 0x6537, 0x6534,
+  0xf441, 0x3751, 0x4233, 0x6539, 0x416e, 0xf443, 0x6546, 0x7a28,
+  0x6542, 0x653c, 0x7a29, 0xf444, 0xf445, 0x6540, 0x3c7a, 0x305d,
+  0x653b, 0x6543, 0x6547, 0x394b, 0x4c56, 0x4456, 0x653d, 0xf446,
+  0xf447, 0x6545, 0x653a, 0x433e, 0x653f, 0x303d, 0x4c4a,
+  /* 0x7DC0 */
+  0xf448, 0x7a2a, 0x653e, 0x365b, 0x486c, 0x7a2b, 0x416d, 0x4e50,
+  0x3d6f, 0x656e, 0x7a2c, 0xf449, 0x6548, 0xf44a, 0x407e, 0x6544,
+  0x6549, 0x654b, 0x4479, 0x654e, 0x7a2d, 0x654a, 0xf44b, 0x4a54,
+  0x344b, 0x4c4b, 0x305e, 0xf44c, 0x654d, 0x4e7d, 0xf44d, 0x654c,
+  /* 0x7E00 */
+  0x316f, 0x466c, 0x654f, 0x7a30, 0x6556, 0x6550, 0x6557, 0xf451,
+  0x7a31, 0x6553, 0x7a32, 0xf452, 0x477b, 0xf453, 0x3c4a, 0x6555,
+  0xf454, 0x6552, 0x6558, 0x6551, 0x3d44, 0xf455, 0x7a2f, 0x4b25,
+  0xf456, 0x3d4c, 0x6554, 0x6560, 0x655c, 0x655f, 0x655d, 0x6561,
+  0x655b, 0x6541, 0x4053,
+  /* 0x7E40 */
+  0x484b, 0x655e, 0xf457, 0x6559, 0x7a34, 0x4121, 0x3752, 0x3d2b,
+  0x7a35, 0x3f25, 0x4136, 0x6564, 0x6566, 0x6567, 0x6563, 0x6565,
+  0x7a36, 0x655a, 0x6562, 0x656a, 0x6569, 0x7e7e, 0x4b7a, 0x372b,
+  0xf458, 0xf459, 0x6568, 0x656c, 0x656b, 0x656f, 0xf45a, 0x6571,
+  /* 0x7E80 */
+  0x3b3c, 0x656d, 0xf45b, 0xf45c, 0x6572, 0x6573, 0x7a37, 0x6574,
+  0x7a38, 0x657a, 0x453b, 0x6576, 0xf45e, 0x6575, 0x6577, 0x6578,
+  0x6579, 0xf45f, 0xf460, 0x657b, 0x657c,
+  /* 0x7F00 */
+  0x344c, 0x657d, 0x657e, 0xf463, 0xf462, 0xf464,
+  /* 0x7F40 */
+  0xf465, 0xf466, 0x6621, 0x7a39, 0x6622, 0x6623, 0x6624, 0xf467,
+  0x6625, 0x6626, 0xf46a, 0x6628, 0x6627, 0x6629, 0x662a, 0x662b,
+  0xf46c, 0xf46d, 0xf46e, 0x662e, 0x662c, 0x662d, 0x3a61, 0x3753,
+  0xf46f, 0x4356, 0x4833, 0x3d70, 0x474d, 0x486d, 0x662f, 0x586d,
+  0xf470, 0xf471,
+  /* 0x7F80 */
+  0x6630, 0x6632, 0x4d65, 0x6631, 0x6634, 0x6633, 0x4d53, 0x6635,
+  0x487e, 0xf473, 0x7a3b, 0x6636, 0xf476, 0x7a3c, 0x6639, 0xf477,
+  0x6638, 0x6637, 0x663a, 0x3732, 0x4122, 0x3541, 0xf478, 0x663e,
+  0x663b, 0x663c, 0x663f, 0x6640, 0x663d, 0x3129, 0x7a3d,
+  /* 0x7FC0 */
+  0x3227, 0xf47a, 0x6642, 0x6643, 0x6644, 0x4d62, 0x7a3e, 0xf47b,
+  0x3d2c, 0x6646, 0x6645, 0x7a3f, 0x7a40, 0x3f69, 0x6647, 0xf47c,
+  0xf47d, 0x6648, 0x6649, 0x3465, 0x7a41, 0x7a42, 0xf47e, 0x344d,
+  0xf521, 0x664a, 0x664b, 0x7a43, 0x4b5d, 0x4d63,
+  /* 0x8000 */
+  0x4d54, 0x4f37, 0xf522, 0x394d, 0x664e, 0x3c54, 0x664d, 0xf524,
+  0xf523, 0x664f, 0x3c29, 0xf525, 0x4251, 0xf526, 0x6650, 0x7a45,
+  0x394c, 0xf527, 0x4c57, 0x6651, 0x6652, 0x6653, 0x6654, 0xf528,
+  0x7a46, 0x6655, 0xf529, 0xf52a, 0x3c2a, 0x7a47, 0x4c6d, 0x7a48,
+  0x6657, 0x7a49, 0x433f, 0x6656,
+  /* 0x8040 */
+  0xf52b, 0x6659, 0x6658, 0x665a, 0x403b, 0x665b, 0x665c, 0x4a39,
+  0x665d, 0x416f, 0x665e, 0xf52c, 0x665f, 0x4e7e, 0x6662, 0xf52d,
+  0x6661, 0x6660, 0x4430, 0xf52e, 0x6663, 0x3f26, 0x6664, 0xf52f,
+  0x6665, 0x4f38, 0x6666,
+  /* 0x8080 */
+  0x6667, 0x6669, 0x6668, 0x4825, 0x4679, 0x4f3e, 0x4829, 0x666b,
+  0x3e53, 0x492a, 0xf530, 0x666c, 0x666a, 0xf531, 0x344e, 0x3854,
+  0x3b68, 0xf532, 0x486e, 0xf533, 0x382a, 0x4b43, 0x666f, 0x666d,
+  0x394e, 0x394f, 0x3069, 0x3a68, 0xf534, 0x4759,
+  /* 0x80C0 */
+  0x305f, 0x6674, 0xf536, 0x4340, 0x7a4a, 0x4758, 0x425b, 0xf537,
+  0x6676, 0x7a4b, 0xf538, 0x6672, 0x6675, 0x6670, 0x6673, 0x4b26,
+  0x7a4c, 0x3855, 0x307d, 0x6671, 0xf539, 0x6678, 0x6679, 0x7a4d,
+  0x4639, 0xf53c, 0x363b, 0xf53d, 0x6726, 0x473d,
+  /* 0x8100 */
+  0x3b69, 0x363c, 0x4048, 0x4f46, 0x4c2e, 0x6677, 0x4054, 0xf53b,
+  0xf540, 0x7a4e, 0x3553, 0x667a, 0xf541, 0x667c, 0xf543, 0xf544,
+  0x667b, 0xf545, 0x667d, 0x4326, 0x473e, 0xf53f, 0x4431, 0xf547,
+  0x6723,
+  /* 0x8140 */
+  0x6722, 0x7a4f, 0x667e, 0x3f55, 0x4965, 0x6725, 0x6724, 0x3950,
+  0x4f53, 0x6735, 0x7a50, 0x6729, 0x672a, 0x7a51, 0x7a52, 0xf549,
+  0x3c70, 0x7a53, 0x6728, 0x3978, 0x6727, 0x672b, 0x4432, 0x4a22,
+  0x4123, 0x425c,
+  /* 0x8180 */
+  0x672f, 0xf54b, 0x6730, 0x672c, 0xf54d, 0xf54e, 0x672d, 0x672e,
+  0x3951, 0x6736, 0x6732, 0xf550, 0x4966, 0x4b6c, 0x4928, 0x6731,
+  0x6734, 0x6733, 0x4b44, 0x6737, 0x6738, 0xf551, 0x4137, 0x6739,
+  0x673b, 0x673f, 0x7a54, 0x673c, 0x673a, 0x473f,
+  /* 0x81C0 */
+  0x673d, 0xf552, 0x673e, 0xf553, 0x3232, 0x6745, 0x6740, 0x7a55,
+  0x6741, 0x7a56, 0x6742, 0x4221, 0xf554, 0x7a57, 0x6744, 0x6743,
+  0x6746, 0xf555, 0x6747, 0x6748, 0x3f43, 0xf557, 0x3269, 0x6749,
+  0x4e57, 0x3c2b, 0xf559, 0x3d2d, 0x3b6a, 0x4357, 0x674a, 0x674b,
+  0x3131, 0xf55b, 0x674c, 0xf55c,
+  /* 0x8200 */
+  0x674d, 0x674e, 0xf55e, 0x674f, 0x6750, 0x363d, 0x5a2a, 0x6751,
+  0x4065, 0x6752, 0x3c4b, 0x6753, 0x5030, 0x6754, 0x4a5e, 0x345c,
+  0xf560, 0x4124, 0x3d58, 0x4971, 0x3d2e, 0xf561, 0xf562, 0x6755,
+  0x3952, 0x6756, 0x484c, 0x6764, 0xf564, 0x6758, 0xf565, 0x4249,
+  0x4775, 0x383f, 0x6757, 0x4125, 0xf566,
+  /* 0x8240 */
+  0x6759, 0xf569, 0xf567, 0x447a, 0xf568, 0xf56b, 0xf56d, 0xf56f,
+  0x675b, 0x675a, 0x675d, 0xf571, 0x675c, 0x675e, 0x7a5b, 0x6760,
+  0xf572, 0x675f, 0x344f, 0x6761, 0x6762, 0x6763, 0x3a31, 0x4e49,
+  0x6765, 0x3f27, 0x7a5c, 0x3170, 0x6766, 0x6767, 0xf576, 0xf578,
+  0x6768, 0xf579,
+  /* 0x8280 */
+  0xf57a, 0xf57b, 0x3072, 0x6769, 0x7a5e, 0x676a, 0xf57c, 0x4967,
+  0x3c47, 0x676c, 0x7a5f, 0x7a60, 0x7a61, 0x3329, 0x3032, 0xf57d,
+  0xf57e, 0x7a62, 0x676b, 0x676e, 0x474e, 0x7a63, 0x3f44, 0x3256,
+  0xf621, 0x4b27, 0xf622, 0x7a64, 0x375d, 0x365c, 0xf623, 0x676d,
+  0xf624, 0x326a, 0x7a65, 0x7a66,
+  /* 0x82C0 */
+  0x3423, 0x7a67, 0x3171, 0x6772, 0x4e6a, 0x425d, 0x7a68, 0x4944,
+  0x677e, 0x3257, 0x677c, 0x677a, 0x6771, 0x676f, 0xf625, 0x6770,
+  0x3c63, 0x366c, 0x4377, 0xf626, 0x4651, 0x3151, 0x6774, 0x6773,
+  0xf627, 0x6779, 0x6775, 0x6778, 0x7a69, 0x7a6a,
+  /* 0x8300 */
+  0x7a6b, 0x7a6c, 0x4c50, 0x6777, 0x3258, 0x337d, 0x677b, 0xf628,
+  0xf629, 0x677d, 0xf62a, 0x3754, 0x6823, 0x682c, 0x682d, 0xf62c,
+  0x302b, 0xf62d, 0x7a6e, 0x6834, 0x3071, 0x682b, 0x7a6f, 0x682a,
+  0xf62e, 0x6825, 0x6824, 0x6822, 0x6821, 0x4363, 0x427b, 0x6827,
+  0x7a70, 0xf62f,
+  /* 0x8340 */
+  0x6826, 0x7a71, 0xf630, 0x6829, 0x7a72, 0x4170, 0x3755, 0x3141,
+  0x6828, 0x7a73, 0x3953, 0xf62b, 0x7a74, 0xf631, 0x4171, 0x7a6d,
+  0xae4a, 0x683a, 0x683b, 0x3259, 0x322e, 0x6838, 0x7a75, 0xf633,
+  /* 0x8380 */
+  0x682e, 0x7a76, 0x6836, 0x683d, 0x6837, 0xf636, 0x6835, 0x7a77,
+  0x6776, 0xf637, 0xf638, 0x6833, 0x7a78, 0x682f, 0xf639, 0xf63a,
+  0x3450, 0x6831, 0x683c, 0x6832, 0x7a79, 0x683e, 0x7a7a, 0x6830,
+  0x477c, 0x4d69, 0x6839, 0x684f, 0x7a7b,
+  /* 0x83C0 */
+  0x7a7c, 0x6847, 0x3f7b, 0x7a7d, 0xf63b, 0x3546, 0x365d, 0x6842,
+  0x7a7e, 0xf63c, 0x7b21, 0x325b, 0xf63d, 0x3e54, 0x6845, 0x3a5a,
+  0xf63e, 0x4551, 0x684a, 0x7b22, 0xf63f, 0x4a6e, 0x7b23, 0x6841,
+  0x325a, 0x3856, 0x4929, 0x684b, 0x683f, 0x6848, 0xf640, 0x6852,
+  0x6843,
+  /* 0x8400 */
+  0x7b24, 0x6844, 0x463a, 0x7b25, 0x6849, 0x7b26, 0x6846, 0x4b28,
+  0x684c, 0x3060, 0xf641, 0xf642, 0x6840, 0xf643, 0xf645, 0x684e,
+  0x684d, 0x476b, 0x6854, 0x685f, 0x337e, 0x6862, 0x6850, 0xf646,
+  0x6855, 0x4d6e,
+  /* 0x8440 */
+  0x685e, 0x7b28, 0x4d55, 0xf647, 0x4e2a, 0xf648, 0xf649, 0xf64a,
+  0x4378, 0xf64b, 0xf64c, 0x336b, 0xf64d, 0x7b29, 0x4972, 0x6864,
+  0x4621, 0xf64f, 0x3031, 0x685d, 0x6859, 0x4172, 0x6853, 0x685b,
+  0x6860, 0x7b2a, 0x472c, 0x7b2b, 0x302a, 0xf650, 0x6858, 0xf651,
+  0x6861, 0x4978, 0xf652,
+  /* 0x8480 */
+  0xf653, 0x685c, 0x6857, 0x7b2c, 0x3e55, 0x3d2f, 0x3c2c, 0xf656,
+  0x4c58, 0x4947, 0x7b2d, 0x6867, 0x6870, 0xf657, 0x685a, 0x7b2e,
+  0x3377, 0x7b2f, 0x3e78, 0x6865, 0x7b30, 0x686a, 0x4173, 0xf658,
+  0x6866,
+  /* 0x84C0 */
+  0x7b31, 0x686d, 0x7b32, 0x435f, 0x686e, 0x4d56, 0x6863, 0x3338,
+  0x6869, 0xf65a, 0xf65b, 0x686c, 0x4c2c, 0xf65c, 0x686f, 0x6868,
+  0x686b, 0xf655, 0xf65e, 0xf65f, 0x4b29, 0x4f21, 0xf660, 0xf661,
+  0xf662, 0x6873, 0xf663, 0x687a, 0xf664, 0x6872,
+  /* 0x8500 */
+  0x3c43, 0x6851, 0xf665, 0x4a4e, 0x4c22, 0x6879, 0x6878, 0x6874,
+  0x6875, 0x3136, 0xf666, 0x7b35, 0x6877, 0x6871, 0x7b36, 0xf667,
+  0xf668, 0x4455, 0xf669, 0x6876, 0x307e, 0x7b37, 0x7b34, 0xf66a,
+  0x4222, 0x4a43, 0xf66f,
+  /* 0x8540 */
+  0x687b, 0x6921, 0x4859, 0x687e, 0x3e56, 0x3c49, 0x6923, 0x363e,
+  0xf66b, 0xf670, 0xf671, 0x6924, 0x4979, 0x687d, 0x7b38, 0x6856,
+  0xf672, 0xf673, 0xf674, 0x687c, 0x7b39, 0x4f4f, 0x4622, 0x4973,
+  0x692b, 0xf66c, 0x6931, 0x7b3c, 0xf676, 0xf677, 0x6932, 0xf678,
+  /* 0x8580 */
+  0x6925, 0xf679, 0x4776, 0xf67a, 0x692f, 0x6927, 0x6929, 0x7b3d,
+  0x7b3e, 0x6933, 0x6928, 0xf67b, 0x692c, 0x3172, 0x4665, 0x692d,
+  0x6930, 0xf67c, 0xf67d, 0x7b3f, 0x6926, 0x4126, 0x692a, 0x3b27,
+  0x3f45, 0x3730, 0x4c74, 0x7b3b, 0x4c79, 0x3d72, 0x7b40, 0xf723,
+  0x6937, 0x6935, 0xf724,
+  /* 0x85C0 */
+  0x4f4e, 0xf725, 0x6934, 0xf726, 0x7b41, 0x4d75, 0x7b42, 0x6936,
+  0x6938, 0x6939, 0xf727, 0xf728, 0x693c, 0x693a, 0xf729, 0xf72a,
+  0x4623, 0x693b, 0xf72b, 0x484d, 0x692e, 0x7b43, 0xf72c, 0x3d73,
+  0x693d, 0x6942, 0x4174, 0x6941, 0x7b45,
+  /* 0x8600 */
+  0xf72d, 0x6922, 0x7b46, 0x7b47, 0x6943, 0x4149, 0x693e, 0x6940,
+  0x7b48, 0xf72e, 0x7b44, 0x693f, 0x5d31, 0x5d22, 0x7b4a, 0x6945,
+  0xf72f, 0xf730, 0x6944, 0xf731, 0xf732, 0x7b4b, 0x4d76, 0x623c,
+  0x6946, 0x7b4c, 0xf734, 0xf735, 0x6947,
+  /* 0x8640 */
+  0xf737, 0x2f68, 0x6948, 0x3857, 0x3554, 0xf739, 0x694a, 0x515d,
+  0xf73a, 0x7b4d, 0x3575, 0x7b4e, 0x4e3a, 0x3673, 0x694b, 0x7b50,
+  0x694c, 0x436e, 0x7b52, 0xf73b, 0x694d, 0x7b53, 0xf73c, 0x467a,
+  0xf73d, 0x303a,
+  /* 0x8680 */
+  0xf73e, 0xf73f, 0x3263, 0x6952, 0x6953, 0xf740, 0xf741, 0x694e,
+  0x3b3d, 0x7b54, 0xf742, 0xf743, 0x694f, 0x4742, 0xf744, 0x6950,
+  0x6951, 0x695b, 0x6955, 0x6958, 0xf746, 0xf747, 0x6954, 0x7b55,
+  /* 0x86C0 */
+  0xf748, 0xf749, 0x6956, 0x6957, 0x3c58, 0x6959, 0x4341, 0x3756,
+  0x3342, 0xf74a, 0x695c, 0xf74b, 0xf74c, 0x333f, 0x6961, 0x695d,
+  0x6960, 0xf74d, 0x483a, 0xf74e, 0x695e, 0x695f, 0x4948, 0x485a,
+  0x6962, 0x427d, 0x696c, 0x7b56, 0x6968, 0x7b57, 0x7b58, 0x326b,
+  /* 0x8700 */
+  0x6966, 0x4b2a, 0x6967, 0xf750, 0x6964, 0xf751, 0x6965, 0x696a,
+  0x696d, 0x7b59, 0x696b, 0xf752, 0xf753, 0x6969, 0x6963, 0xf754,
+  0x4358, 0xf755, 0x6974, 0x4c2a, 0xf756, 0xf757, 0xf758, 0x6972,
+  0x6973, 0xf759, 0x696e, 0x6970, 0xf75a, 0x6971, 0xf75b, 0x696f,
+  /* 0x8740 */
+  0xf75c, 0xf75d, 0x4066, 0x4f39, 0x6978, 0x6979, 0xf75e, 0x6a21,
+  0x3f2a, 0x697b, 0xf75f, 0x697e, 0x6976, 0x6975, 0x6a22, 0xf760,
+  0xf761, 0x325c, 0x697c, 0x6a23, 0x697d, 0x7b5a, 0xf762, 0x697a,
+  0x4433, 0x6977, 0xf763, 0x4768,
+  /* 0x8780 */
+  0x6a27, 0x7b5b, 0x7b5c, 0xf767, 0xf768, 0x4d3b, 0xf769, 0x6a26,
+  0xf76a, 0x6a25, 0xf766, 0x6a2e, 0x7b5d, 0x7b5e, 0x6a28, 0x6a30,
+  0x7b5f, 0x4d66, 0x6a33, 0x6a2a, 0xf76d,
+  /* 0x87C0 */
+  0x6a2b, 0xf76f, 0x6a2f, 0x6a32, 0x6a31, 0x6a29, 0xf770, 0x6a2c,
+  0x6a3d, 0x7b61, 0xf772, 0x6a36, 0xf774, 0xf775, 0xf776, 0xf777,
+  0xf778, 0x7b62, 0xf779, 0x6a34, 0x6a35, 0xf771, 0x6a3a, 0x6a3b,
+  0x332a, 0x3542, 0x6a39,
+  /* 0x8800 */
+  0xf77a, 0xf77b, 0x6a24, 0x7b63, 0x7b64, 0xf77c, 0x6a38, 0x6a3c,
+  0x6a37, 0x7b65, 0x6a3e, 0xf77d, 0x7b66, 0x6a40, 0x6a3f, 0x7b67,
+  0x6a42, 0x6a41, 0x695a, 0x6a46, 0xf77e, 0xf821, 0x6a43, 0xf822,
+  0x6a44, 0x6a45, 0x6a47, 0xf823,
+  /* 0x8840 */
+  0x376c, 0x6a49, 0x6a48, 0x3d30, 0xf825, 0x3954, 0x5e27, 0x6a4a,
+  0x3d51, 0x3339, 0xf826, 0x6a4b, 0x3152, 0x3e57, 0x6a4c, 0xf827,
+  0x3955, 0x6a4d, 0x3061, 0xf828, 0x493d, 0xf82b, 0x6a4e, 0xf82d,
+  0x3f6a, 0x6a55, 0x6a52, 0x436f, 0x6a53, 0x6a50, 0x365e,
+  /* 0x8880 */
+  0x6a4f, 0x6a56, 0x3736, 0x425e, 0x6a5c, 0x6a58, 0x4235, 0x6a57,
+  0x7b68, 0x6a5a, 0x6a51, 0xf82e, 0x6a5b, 0x6a5d, 0x7b69, 0x486f,
+  0x6a59, 0x6a5e, 0x6a60, 0x3853, 0x6a54, 0x3041, 0xf82f, 0xf830,
+  0xf831, 0x6a5f,
+  /* 0x88C0 */
+  0xf832, 0x3a5b, 0x4e76, 0x6a61, 0x6a62, 0x4175, 0x7b6a, 0x7b6b,
+  0x4e22, 0xf835, 0xf833, 0xf836, 0x6a63, 0x4d35, 0x6a64, 0x6a65,
+  0xf837, 0x4a64, 0x6a66, 0x3a40, 0x4e23, 0x6a6b, 0xf838, 0xf839,
+  0x6a6c, 0x3e58, 0x6a6a, 0x7b6d, 0x4d67, 0x6a67, 0x6a69, 0x403d,
+  0x3f7e,
+  /* 0x8900 */
+  0xf83b, 0x6a68, 0x6a6d, 0x4a23, 0x6a6f, 0x6a6e, 0x336c, 0x4b2b,
+  0x6a70, 0x7b70, 0x7b71, 0x7b72, 0x7b6e, 0x6a7c, 0x6a72, 0x6a73,
+  0x7b73, 0x6a74, 0x6a75, 0x7b74, 0x7b75, 0x6a79, 0xf83d, 0x6a7a,
+  0x7b76, 0x6a78,
+  /* 0x8940 */
+  0x7b77, 0x6a76, 0xf83f, 0x6a71, 0x6a77, 0xf840, 0xf841, 0x6a7b,
+  0x7037, 0x3228, 0x6a7e, 0x365f, 0x6a7d, 0xf844, 0x6b22, 0x6b21,
+  0x6b24, 0x6b23, 0x6b25, 0x3d31, 0x6b26, 0x6b27, 0x6b28, 0x403e,
+  /* 0x8980 */
+  0xf845, 0x4d57, 0x6b29, 0x4a24, 0x4746, 0x6b2a, 0xf846, 0x6b2b,
+  0x382b, 0x352c, 0xf847, 0x6b2c, 0x7b78, 0x3b6b, 0x4741, 0x6b2d,
+  0x3350, 0xf848, 0x6b2e, 0x6b30, 0x4d77, 0x6b2f, 0x3f46, 0x6b31,
+  0x6b32, 0xf849, 0x6b33, 0x3451, 0xf84a, 0x6b34, 0x6b35, 0x6b36,
+  /* 0x89C0 */
+  0x6b37, 0x3351, 0x7b7a, 0xf84b, 0xf84c, 0x6b38, 0x6b39, 0x6b3a,
+  0x3272, 0x7b7b, 0x3f28, 0x6b3b, 0xf84d, 0xf84f, 0xf850, 0x6b3c,
+  0x7b7c, 0x6b3d, 0xf851, 0xf852,
+  /* 0x8A00 */
+  0x3840, 0x447b, 0x6b3e, 0x3757, 0x3f56, 0x6b41, 0x4624, 0x6b40,
+  0xf854, 0x7b7d, 0x3731, 0xf855, 0x7b7e, 0x6b3f, 0x4277, 0x352d,
+  0x6b42, 0x6b43, 0x3e59, 0xf857, 0x7c21, 0x376d, 0x6b44, 0x4b2c,
+  0x405f, 0x3576, 0x4c75, 0x414a, 0xf858, 0x6b45, 0x7c22, 0x3f47,
+  0x4370, 0x3e5a, 0xf859,
+  /* 0x8A40 */
+  0x6b46, 0xf85a, 0x6b49, 0x7c23, 0x6b4a, 0xf85b, 0x7c24, 0x3a3e,
+  0x4242, 0x6b48, 0x3e5b, 0x493e, 0xf85c, 0x6b47, 0x7c25, 0x3b6c,
+  0x3153, 0x7c26, 0x6b4e, 0x3758, 0x3b6e, 0x3b6d, 0x4f4d, 0x6b4d,
+  0x6b4c, 0x4127, 0x354d, 0x4f43, 0x333a, 0x3e5c, 0x7c27, 0x7c28,
+  0x6b4b,
+  /* 0x8A80 */
+  0x6b50, 0x6b51, 0x6b4f, 0x3858, 0x4d40, 0x3b6f, 0x4727, 0xf85e,
+  0x6b54, 0x4040, 0x4342, 0x4d36, 0x6b57, 0x386c, 0x403f, 0x6b53,
+  0x6b58, 0x386d, 0x6b55, 0x6b56, 0x7c29, 0x6b52, 0x4062, 0x4649,
+  0xf85d, 0x432f, 0x325d, 0xf85f, 0x4870, 0x3543, 0xf860, 0x4434,
+  /* 0x8AC0 */
+  0x6b5b, 0x6b59, 0x434c, 0x4041, 0x3452, 0x6b5a, 0x3f5b, 0x7c2a,
+  0x4e4a, 0x4f40, 0xf861, 0x6b5c, 0x6b67, 0x4435, 0x6b66, 0x7c2b,
+  0x6b63, 0x6b6b, 0x6b64, 0x6b60, 0x447c, 0x6b5f, 0x6b5d, 0x4d21,
+  0x3b70, 0x6b61, 0x6b5e, 0x7c2c, 0x7c2d, 0x6b65, 0x3d74, 0x3841,
+  0xf862, 0x427a,
+  /* 0x8B00 */
+  0x4b45, 0x315a, 0x3062, 0x4625, 0xf865, 0x6b69, 0xf864, 0x6b68,
+  0xf866, 0x4666, 0x6b6d, 0x6b62, 0x6b6c, 0x6b6e, 0x382c, 0x6b6a,
+  0x3956, 0xf867, 0x3c55, 0xf868, 0x6b6f, 0x4d58, 0x6b72, 0x6b75,
+  0x6b73, 0x4935, 0xf869, 0x6b70, 0x3660, 0x6b74,
+  /* 0x8B40 */
+  0x6b76, 0xf86a, 0x7c31, 0x6b7a, 0x6b77, 0x6b79, 0x6b78, 0xf86c,
+  0x7c32, 0x6b7b, 0x3c31, 0x7c33, 0x6b7d, 0x6b7c, 0x4968, 0xf86d,
+  0x6c21, 0x3759, 0x7c34, 0x6b7e, 0x6c22, 0x6c23, 0x3544, 0x6641,
+  0x3e79, 0x6c24, 0xf86e, 0x386e, 0x6c25, 0xf86f,
+  /* 0x8B80 */
+  0x6c26, 0xf870, 0x3b3e, 0x5a4e, 0xf871, 0x6c27, 0x6c28, 0x3d32,
+  0x6c29, 0x6c2a, 0xf872, 0xf873, 0x6c2b, 0x6c2c, 0x6c2d, 0xf874,
+  0x7c35, 0xf875,
+  /* 0x8C00 */
+  0x432b, 0xf876, 0x6c2e, 0xf878, 0x6c30,
+  /* 0x8C40 */
+  0x6c2f, 0xf87b, 0x4626, 0xf87c, 0x6c31, 0x7c36, 0x4b2d, 0x6c32,
+  0x6c33, 0xf87d, 0x6c34, 0xf87e, 0x6c35, 0xf921, 0x465a, 0x3e5d,
+  0x6c36, 0x7c37, 0xf922, 0x396b, 0x502e, 0x6c37, 0xf923, 0xf924,
+  0x6c38, 0x493f, 0x6c39, 0x6c41,
+  /* 0x8C80 */
+  0x6c3a, 0x6c3c, 0x6c3b, 0x6c3d, 0x4b46, 0x6c3e, 0x6c3f, 0xf927,
+  0xf926, 0x6c40, 0x6c42, 0xf928, 0xf92a, 0x332d, 0x4467, 0x4969,
+  0x3a62, 0x3957, 0xf92b, 0x494f, 0x325f, 0x484e, 0x6c45, 0x3453,
+  0x4055, 0x6c44, 0x6c49, 0x4379, 0x4c63, 0x6c47, 0x6c48, 0x352e,
+  0x6c4a, 0x4763, 0x425f, 0x4871, 0x453d, 0x6c46, 0x4b47,
+  /* 0x8CC0 */
+  0x326c, 0x6c4c, 0x4f28, 0x4442, 0x4f45, 0x3b71, 0x6c4b, 0x4231,
+  0x6c5c, 0x4128, 0x4678, 0x4950, 0xf92d, 0xf92c, 0xf92e, 0x6c4f,
+  0x3b3f, 0x3b72, 0x3e5e, 0x4765, 0x7c39, 0x382d, 0x6c4e, 0x6c4d,
+  0x496a, 0x3c41, 0x4552, 0xf930, 0xf931, 0x7c3a, 0x7c3b, 0x6c51,
+  0x6c52, 0x3958, 0x6c50, 0x7c3c,
+  /* 0x8D00 */
+  0x6c53, 0x6c54, 0x6c56, 0x4223, 0xf933, 0x6c55, 0x3466, 0x6c58,
+  0xf934, 0x6c57, 0x6c59, 0x7c3e, 0x6c5b, 0x6c5d, 0x6c5e, 0x7c3f,
+  /* 0x8D40 */
+  0x4056, 0x3c4f, 0x6c5f, 0x3352, 0xf935, 0x6c60, 0x4176, 0x6c61,
+  0x6c62, 0x496b, 0x352f,
+  /* 0x8D80 */
+  0x6c63, 0xf936, 0x4436, 0x315b, 0xf937, 0x6c64, 0x3c71, 0xf938,
+  0x3f76, 0x7c40, 0x422d, 0x6c67, 0x6c66,
+  /* 0x8DC0 */
+  0x6c65, 0xf93a, 0xf93b, 0x6c6d, 0x6c6b, 0x7c41, 0x6c68, 0x7c42,
+  0x6c6a, 0x7c43, 0xf93c, 0x6c69, 0x6c6c, 0x3577, 0x6c70, 0x4057,
+  0x6c71, 0x3859, 0x6c6e, 0x6c6f, 0xf93d, 0x4f29, 0x4437, 0x4129,
+  0x6c72, 0xf940, 0x6c75,
+  /* 0x8E00 */
+  0xf941, 0x6c73, 0x6c74, 0x4d59, 0xf93e, 0x4627, 0x6c78, 0xf943,
+  0xf944, 0x6c76, 0x6c77, 0x6c79, 0x7c44, 0xf945, 0xf946, 0x7c45,
+  0xf947, 0x6d29, 0x6c7c, 0x6c7d, 0x6c7b, 0xf94a, 0xf94b, 0x7c46,
+  /* 0x8E40 */
+  0x6c7a, 0x447d, 0x6d21, 0x6d25, 0x6d22, 0x6c7e, 0xf94c, 0x6d23,
+  0x6d24, 0xf94d, 0x6d2b, 0x6d26, 0x4058, 0x6d28, 0xf94e, 0x6d2a,
+  0x6d27, 0xf94f, 0xf950, 0xf951, 0x7c47, 0x6d2d, 0x3d33, 0x6d2c,
+  0x7c48, 0x6d2e,
+  /* 0x8E80 */
+  0x6d2f, 0x6d32, 0x6d31, 0x6d30, 0x6d34, 0x6d33, 0x4c76, 0x6d36,
+  0x6d35, 0x6d37, 0xf952, 0x6d38, 0xf953, 0x6d3a, 0x6d39, 0x3f48,
+  0x6d3b, 0xf954, 0x366d, 0x6d3c, 0x6d3e, 0xf955, 0xf956, 0xf957,
+  0xf958, 0x6d3f,
+  /* 0x8EC0 */
+  0x7c4a, 0x6d40, 0x6d3d, 0x6d41, 0x3c56, 0x6d42, 0x3530, 0x3733,
+  0xf95a, 0x382e, 0xf95b, 0x6d43, 0x4670, 0x453e, 0x6d44, 0x6d47,
+  0x3c34, 0xf95d, 0x7c4c, 0x6d46, 0x6d45, 0x375a, 0x6d48,
+  /* 0x8F00 */
+  0xf95f, 0x3353, 0x6d4a, 0xf960, 0x3a5c, 0x6d49, 0x6d52, 0x6d4c,
+  0x6d4e, 0x4a65, 0x6d4b, 0xf961, 0x6d4d, 0x6d51, 0x6d4f, 0x3531,
+  0x7c4d, 0x6d50, 0x6d53, 0x475a, 0x4e58, 0xf962, 0x7c4e, 0x3d34,
+  0x6d54, 0x7c4f, 0x4d22, 0x6d56, 0x6d55, 0x6d59, 0x4d41,
+  /* 0x8F40 */
+  0xf963, 0x6d58, 0x336d, 0x6d57, 0x6d5c, 0x6d5b, 0xf964, 0x6d5a,
+  0x4532, 0x6d5d, 0x7c50, 0x6d5e, 0xf965, 0x6d5f, 0x396c, 0x3725,
+  0x6d60, 0x6d61, 0x6d62,
+  /* 0x8F80 */
+  0x3f49, 0x6d63, 0x3c2d, 0x6d64, 0x6d65, 0xf967, 0x7c52, 0x5221,
+  0x517e, 0x6d66, 0x6570, 0x6d67, 0x4324, 0x3f2b, 0x4740, 0xf968,
+  0x7c53, 0xf96a, 0x6d68, 0x4a55, 0x4454, 0x397e, 0x4329,
+  /* 0x8FC0 */
+  0xf96c, 0x312a, 0x4b78, 0x3f57, 0xf96d, 0xf96f, 0xf970, 0x375e,
+  0x3661, 0xf971, 0x4a56, 0xf972, 0x6d69, 0xf973, 0x6d6b, 0x7c54,
+  0x6d6a, 0x3260, 0x7c55, 0x4676, 0x6d6c, 0x4777, 0x4533, 0x7c56,
+  0x6d6d, 0x3d52, 0xf974, 0x6d6f, 0xf975, 0x4c42, 0x6d7e, 0x6d71,
+  0x6d72, 0xf976, 0x4449,
+  /* 0x9000 */
+  0x4260, 0x4177, 0xf977, 0x4628, 0x6d70, 0x3555, 0x7c57, 0x6d79,
+  0xf978, 0x6d76, 0x6e25, 0x4629, 0x4360, 0x6d73, 0x447e, 0x4553,
+  0x6d74, 0x6d78, 0x3f60, 0x4767, 0x444c, 0x4042, 0x6d77, 0x422e,
+  0x4224, 0x6d75, 0x3029, 0x4f22, 0x6d7a, 0x7c58, 0x4261, 0x3d35,
+  0x3f4a, 0x6d7c, 0x6d7b, 0xf979, 0x306f, 0x6d7d, 0x492f, 0x6e27,
+  /* 0x9040 */
+  0x465b, 0x3f6b, 0xf97b, 0xf97c, 0x4359, 0x3678, 0x6e26, 0x4d37,
+  0x313f, 0x4a57, 0x3261, 0x6e21, 0x6e22, 0x6e23, 0x6e24, 0x463b,
+  0x4323, 0x3063, 0x6e28, 0x6e29, 0x7423, 0x423d, 0xf97d, 0x6e2a,
+  0x3173, 0x414c, 0x382f, 0x4d5a, 0x6e2b, 0x452c, 0x4178, 0x3c57,
+  0x6e2c, 0x6e2f, 0x3d65, 0x6e2d, 0x412b, 0x412a, 0x3064, 0x4e4b,
+  0x6e31, 0x4872,
+  /* 0x9080 */
+  0x6e33, 0x6e32, 0x6e30, 0x6364, 0x3454, 0xfa22, 0x6d6e, 0x7c5a,
+  0x6e35, 0x6e34, 0xfa23, 0x6e36, 0xfa24, 0x4d38, 0x7c5b, 0x7c5c,
+  0x7c5d, 0x7c5e, 0xfa26, 0x7c5f, 0x4661, 0x4b2e, 0x6e37, 0x3c59,
+  0x6e38, 0xfa28, 0x6e39, 0x7c60, 0x6e3a, 0xfa29, 0x4521, 0x7c61,
+  /* 0x90C0 */
+  0x306a, 0xfa2a, 0x7c62, 0x7c63, 0x7c64, 0xfa2b, 0x3959, 0x4f3a,
+  0x7c65, 0x6e3e, 0xfa2d, 0x7c66, 0x7c67, 0xfa2e, 0x3734, 0x6e3b,
+  0x6e3c, 0x4974, 0xfa33, 0x3354, 0x7c68, 0xfa31, 0x7c69, 0x4d39,
+  0xfa30, 0x363f, 0x4554, 0xfa34, 0xfa35,
+  /* 0x9100 */
+  0xfa32, 0x6e3f, 0xfa36, 0xfa37, 0x6e40, 0x7c6b, 0x7c6c, 0x7c6d,
+  0xfa38, 0x6e41, 0xfa39, 0xfa3a, 0x7c6e, 0x7c6f, 0x7c70, 0x4522,
+  0x7c71, 0x6e43, 0x7c72, 0x6e42, 0x7c73, 0xfa3b, 0xfa3c, 0xfa3d,
+  0x7c74,
+  /* 0x9140 */
+  0xfa3e, 0xfa3f, 0x7c75, 0x4653, 0x6e44, 0x3d36, 0x3c60, 0x475b,
+  0x4371, 0x3c72, 0x3f6c, 0x6e45, 0xfa40, 0x6e46, 0xfa41, 0x7c76,
+  0xfa42, 0x3f5d, 0x6e47, 0xfa43, 0x6e48, 0x6e49, 0x4d6f, 0x3d37,
+  0x6e4b, 0x6e4a, 0xfa44, 0x395a, 0x3973, 0x3b40, 0xfa45,
+  /* 0x9180 */
+  0x6e4e, 0x7c77, 0xfa46, 0x3d66, 0x6e4d, 0x6e4c, 0x4269, 0xfa47,
+  0x386f, 0x4043, 0x4830, 0x3d39, 0x7c78, 0x6e4f, 0x3e5f, 0xfa48,
+  0x6e52, 0x6e50, 0x7c79, 0xfa49, 0x6e51, 0x7c7a, 0xfa4a, 0x6e54,
+  0x6e53, 0xfa4b, 0x3e7a, 0x6e55, 0x7c7b,
+  /* 0x91C0 */
+  0x6e56, 0x6e57, 0xfa4c, 0xfa4d, 0x4850, 0x3a53, 0x3c61, 0x6e58,
+  0x6e59, 0x4e24, 0x3d45, 0x4c6e, 0x4e4c, 0x6e5a, 0x3662, 0x6e5b,
+  0x7c7c, 0x4523, 0xfa4e, 0x6e5e, 0x3378, 0x3f4b, 0x6e5c, 0x6e5d,
+  0x4460, 0x7c7e, 0x7d21, 0x4b55, 0x367c, 0xfa51, 0x7d22, 0xfa52,
+  0x7d23, 0x6e60, 0x6e61, 0x7c7d, 0x6e5f, 0x6e63,
+  /* 0x9200 */
+  0xfa53, 0x7d24, 0xfa54, 0x465f, 0x3343, 0x7d25, 0x6e67, 0x6e64,
+  0x6e66, 0xfa55, 0xfa56, 0x6e62, 0x6f4f, 0x6e65, 0xfa58, 0x4e6b,
+  0x385a, 0x7d26, 0x7d27, 0x7d28, 0x7d29, 0x6e6f,
+  /* 0x9240 */
+  0x7d2a, 0xfa59, 0x7d2b, 0x4534, 0x6e6a, 0xfa5a, 0x6e6d, 0x6e6b,
+  0xfa5b, 0x6e70, 0xfa5c, 0x7d2c, 0x6e71, 0xfa5d, 0xfa5e, 0x6e69,
+  0xfa5f, 0x6e76, 0x3174, 0x6e68, 0xfa60, 0xfa61, 0x482d, 0x6e6c,
+  0xfa62, 0x3e60, 0xfa63, 0xfa64, 0x395b, 0x7d2d, 0xfa67, 0xfa68,
+  0x4b48, 0xfa69,
+  /* 0x9280 */
+  0x3664, 0x3d46, 0x463c, 0x7d2e, 0xfa6a, 0xfa6b, 0x412d, 0x6e74,
+  0x6e6e, 0x6e73, 0xfa6c, 0x4c43, 0xfa6d, 0x4438, 0x6e75, 0x6e72,
+  0xfa6e, 0xfa6f, 0xfa70, 0x412c, 0xfa73, 0x6e79, 0x6e78, 0xfa74,
+  /* 0x92C0 */
+  0xfa75, 0x7d2f, 0xfa76, 0x7d30, 0x7d31, 0xfa77, 0x6e77, 0xfa78,
+  0x4b2f, 0x7d32, 0xfa79, 0xfa7a, 0x7d33, 0x3d7b, 0xfa7b, 0xfa7c,
+  0x6e7a, 0x4a5f, 0x3154, 0x4946, 0x4372, 0xfb22, 0x3578, 0xfb23,
+  0x6e7c, 0xfb24, 0x395d, 0x7d34,
+  /* 0x9300 */
+  0xfb25, 0x7d35, 0x3b2c, 0xfb26, 0x6e7b, 0x3f6d, 0xfa7d, 0xfb27,
+  0x3f6e, 0x6f21, 0x6f23, 0xfb28, 0xfb29, 0x7d36, 0x3e7b, 0x7d37,
+  0x6f22, 0x6f24, 0x7d38, 0x3653, 0xfb2a, 0x4945, 0xfb2b, 0x3c62,
+  0x4f23, 0x6e7e, 0x3a78, 0x4f3f, 0x6f26, 0x6f25, 0x6f27,
+  /* 0x9340 */
+  0x6e7d, 0xfb2e, 0x7d39, 0x7d3a, 0x7d3b, 0x4669, 0x4555, 0xfb2f,
+  0x4457, 0x6f2c, 0xfb30, 0xfb31, 0x4343, 0x6f28, 0x6f29, 0x7d3c,
+  0x7d3d, 0x7d3e, 0xfb32, 0x372d, 0x6f2b, 0x7d3f, 0xfb33, 0xfb34,
+  0x3830, 0x6f2a, 0x3e61,
+  /* 0x9380 */
+  0xfb38, 0xfb39, 0x3379, 0xfb3a, 0x6f30, 0x3a3f, 0x4179, 0x444a,
+  0x7d40, 0xfb3b, 0xfb35, 0x7d41, 0x333b, 0x6f2e, 0x6f2f, 0x4443,
+  0x6f2d, 0x6f31, 0x7d42,
+  /* 0x93C0 */
+  0xfb40, 0x6f37, 0x7d43, 0xfb41, 0x6f3a, 0x6f39, 0x452d, 0x6f32,
+  0x6f33, 0x6f36, 0xfb42, 0x6f38, 0x7d44, 0x7d45, 0x3640, 0xfb43,
+  0x6f3b, 0x6f35, 0xfb44, 0x6f34, 0xfb3f, 0xfb3c, 0xfb49, 0x7d47,
+  /* 0x9400 */
+  0x6f3f, 0x7d46, 0x6f40, 0xfb45, 0xfb46, 0x6f41, 0x6f3e, 0x6f3d,
+  0xfb47, 0xfb48, 0x3e62, 0x462a, 0x6f3c, 0x6f45, 0x6f43, 0xfb4a,
+  0x7d48, 0xfb4b, 0x6f44, 0x6f42, 0x4278, 0x6f46, 0xfb4c,
+  /* 0x9440 */
+  0x6f47, 0x6f49, 0xfb4d, 0x7d49, 0x3455, 0x6f48, 0x4c7a, 0x6f54,
+  0x6f4a, 0x6f4d, 0x6f4b, 0x6f4c, 0x7d4a, 0x6f4e, 0x7d4b, 0xfb50,
+  0xfb51, 0x6f50, 0x7d4c, 0x7d4d, 0x6f51, 0x6f52, 0x6f55, 0x6f53,
+  0x6f56, 0x6f58,
+  /* 0x9480 */
+  0x6f57,
+  /* 0x9540 */
+  0x4439, 0xfb52, 0xfb53,
+  /* 0x9580 */
+  0x4c67, 0x6f59, 0x412e, 0xfb54, 0x6f5a, 0x4a44, 0x6f5b, 0x332b,
+  0xfb55, 0xfb56, 0x7d4e, 0x313c, 0x3457, 0x3456, 0x6f5c, 0x6f5d,
+  0x6f5e, 0x6f5f, 0x7d4f, 0x6f60, 0x3458, 0x3355, 0x395e, 0x4836,
+  0x7d50, 0x6f62, 0x6f61, 0x7d51, 0xfb58, 0x7d52, 0x6f63, 0x315c,
+  0xfb59, 0x7d53, 0x6f66, 0x6f65, 0x6f64, 0x7d54, 0x6f67,
+  /* 0x95C0 */
+  0x6f6a, 0x3047, 0xfb5b, 0x6f68, 0x7d55, 0x6f6c, 0x6f6b, 0x7d56,
+  0x7d57, 0x6f6e, 0x6f6d, 0x6f6f, 0x462e, 0x7d59, 0x6f70, 0x7d5a,
+  0x6f71, 0x6f73, 0x6f72,
+  /* 0x9600 */
+  0x496c, 0xfa25, 0x6f74, 0x6f75, 0x3a65, 0xfb5e, 0x6f76, 0x6f77,
+  0x4b49, 0xfb5f, 0xfb60, 0x414b, 0xfb62, 0x3024,
+  /* 0x9640 */
+  0x424b, 0xfb63, 0x6f78, 0x496d, 0x6f7b, 0x6f79, 0x395f, 0x6f7a,
+  0x3842, 0x7d5b, 0x4a45, 0x6f7d, 0x7021, 0x6f7e, 0x7022, 0xfb64,
+  0x3121, 0x3f58, 0x3d7c, 0x3459, 0x7023, 0x4766, 0x7025, 0x3122,
+  0x7024, 0x4444, 0x4e4d, 0x462b, 0x6f7c, 0x4e26, 0x3831, 0x4d5b,
+  /* 0x9680 */
+  0xfb66, 0x7d5c, 0x3679, 0x4e34, 0x3728, 0x4262, 0x6721, 0x7026,
+  0x332c, 0x3f6f, 0x3356, 0x7028, 0x7029, 0x7027, 0x3764, 0xfb68,
+  0x3a5d, 0x3e63, 0x7d5e, 0x3123, 0x4e59, 0x7d5f, 0x7d60, 0x702b,
+  0x6e2e, 0xfb6b, 0x702a, 0xfb6c, 0x702e, 0x702c, 0x702d, 0xfb6d,
+  0x702f, 0x7030, 0x4e6c, 0x7031, 0x7032, 0xfb6e, 0x4049, 0x483b,
+  0xfb6f,
+  /* 0x96C0 */
+  0x3f7d, 0x3467, 0x4d3a, 0x326d, 0x3d38, 0x385b, 0x7035, 0x7034,
+  0x3b73, 0x7036, 0x7033, 0x3b28, 0x7d61, 0x703a, 0x6a2d, 0xfb72,
+  0x5256, 0xfb73, 0x3f77, 0x7038, 0xfb74, 0x7d62, 0x4e25, 0x4671,
+  0x312b, 0x7d64, 0x4063, 0x3c36, 0x7d65, 0x4a37, 0x3140, 0x4e6d,
+  0x4d6b, 0x703b, 0x4545,
+  /* 0x9700 */
+  0x3c7b, 0x703c, 0x703d, 0x3f4c, 0x703e, 0x4e6e, 0x7039, 0x7040,
+  0x7042, 0x7041, 0x703f, 0xfb76, 0x7043, 0x7044, 0x417a, 0x3262,
+  0xfb77, 0x7045, 0x4c38, 0x7046, 0x7047, 0x4f2a, 0x7d66, 0xfb79,
+  0x5b31, 0x7048, 0x7d67, 0x7049, 0x704a,
+  /* 0x9740 */
+  0xfb7a, 0x704e, 0x704b, 0x704c, 0xfb7b, 0x704d, 0x704f, 0x7d68,
+  0x7d69, 0x7d6a, 0x4044, 0xfb7c, 0x4c77, 0xfb7d, 0x4045, 0x7d6b,
+  0xfb7e, 0x7050, 0x4873, 0x7051, 0x7353, 0x4c4c, 0x7052, 0x7053,
+  0x7054, 0x3357, 0xfc21, 0x7056, 0x3f59, 0x7d6c, 0x7057, 0x7d6d,
+  0x3724, 0x7058, 0x705c, 0x705a,
+  /* 0x9780 */
+  0x705b, 0x3373, 0x7059, 0x705d, 0x705e, 0x3048, 0x705f, 0x7060,
+  0x7d6e, 0xfc24, 0x3e64, 0xfc25, 0x7061, 0xfc26, 0x3547, 0xfc27,
+  0x7064, 0x7063, 0x7062, 0x6b71, 0x4a5c, 0x7d6f, 0xfc28, 0xfc29,
+  0x7065, 0x7066, 0x7d70, 0xfc2a,
+  /* 0x97C0 */
+  0x7d71, 0x7067, 0x7068, 0x7069, 0x7d72, 0x706a, 0xfc2b, 0xfc2c,
+  0x345a, 0xfc2d, 0xfc2e, 0xfc2f, 0x7d74, 0x706b, 0x7d73, 0xfc30,
+  0x706c, 0x4723, 0xfc31, 0x706e, 0x323b, 0x7d75, 0x7071, 0x7070,
+  0x3124, 0x3641,
+  /* 0x9800 */
+  0x4a47, 0x443a, 0x3a22, 0xfc32, 0x3960, 0x3d67, 0x3f5c, 0x7d77,
+  0x7073, 0xfc33, 0xfc34, 0x7072, 0x4d42, 0x3468, 0x4852, 0x465c,
+  0xfc35, 0xfc36, 0x3f7c, 0x4e4e, 0x375b, 0x7d78, 0x7076, 0xfc39,
+  0x7075, 0xfc3c, 0x7d79, 0x4b4b, 0x462c, 0x7d7a, 0xfc3a, 0xfc3b,
+  0x3150, 0x7077, 0x7074, 0x4951, 0x4d6a, 0x7078,
+  /* 0x9840 */
+  0x7079, 0xfc3d, 0x707b, 0x426a, 0x335b, 0x335c, 0x707a, 0x7d7c,
+  0x7d7d, 0x3469, 0x3832, 0x7d7e, 0x7e21, 0x346a, 0x7e22, 0x7e23,
+  0x453f, 0x4e60, 0x7e25, 0xfc3e, 0x385c, 0x707c, 0x7e26, 0x707d,
+  0x707e, 0x7121, 0x7123, 0x7122,
+  /* 0x9880 */
+  0x4977, 0x7124, 0xfc3f, 0xfc40, 0x7125, 0xfc41, 0x7126, 0x7127,
+  0xfc43, 0xfc44, 0x7e27, 0xfc45, 0xfc46, 0xfc47,
+  /* 0x98C0 */
+  0xfc48, 0x7129, 0x7128, 0x712a, 0xfc49, 0x7e28, 0xfc4a, 0x4874,
+  0x664c, 0x3f29, 0xfc4b, 0xfc4d, 0x3532, 0xfc4e, 0xfc4f, 0x7e29,
+  0x712b, 0xfc50, 0x712c, 0x522c, 0x5d3b, 0x4853, 0xfc51, 0xfc52,
+  0x307b, 0xfc53, 0x303b, 0x3b74, 0x4b30, 0x3e7e,
+  /* 0x9900 */
+  0x712d, 0x4c5f, 0xfc54, 0x712e, 0x4d5c, 0x3142, 0x3b41, 0x712f,
+  0x326e, 0x7130, 0xfc57, 0xfc58, 0x7131, 0xfc5a, 0xfc5b, 0xfc5c,
+  0x7133, 0x7134, 0x7136, 0x7132, 0x7135, 0x345b, 0x7137, 0x7138,
+  0xfc5e, 0xfc5f, 0xfc60, 0xfc61, 0xfc62, 0xfc63, 0x7139, 0x713a,
+  /* 0x9940 */
+  0xfc64, 0xfc65, 0x713b, 0x713d, 0xfc66, 0x713c, 0x713f, 0x7142,
+  0xfc67, 0xfc68, 0x713e, 0x7140, 0x7141, 0x7143, 0x3642, 0x7e2a,
+  0xfc69, 0xfc6a, 0xfc6b,
+  /* 0x9980 */
+  0x3c73, 0x7144, 0x7145, 0x3961, 0x7e2b, 0xfc6c, 0x7146, 0xfc6d,
+  0x333e, 0x474f, 0x7147, 0x7148, 0x435a, 0x466b, 0xfc6e, 0x7149,
+  0xfc6f, 0xfc70,
+  /* 0x99C0 */
+  0x477d, 0xfc71, 0x424c, 0x3158, 0x366e, 0x366f, 0xfc72, 0x4373,
+  0x714e, 0x3670, 0xfc73, 0x326f, 0x714d, 0xfc74, 0x714b, 0x714c,
+  0xfc75, 0x714a, 0x7158, 0x714f, 0x7150, 0xfc77, 0x7151, 0x7152,
+  0x7154, 0xfc78, 0x7153, 0xfc79, 0x3d59,
+  /* 0x9A00 */
+  0x7155, 0x7e2c, 0x7e2d, 0x7157, 0xfc7a, 0x3533, 0x7156, 0xfc7b,
+  0x417b, 0x3833, 0xfc7c, 0x7159, 0xfc7d, 0xfc7e, 0x7e2e, 0x424d,
+  0x715a, 0x7e2f, 0x7e30, 0x462d, 0xfd21, 0xfd22, 0x715b, 0x7e31,
+  0x7160,
+  /* 0x9A40 */
+  0x715e, 0x715d, 0x715f, 0xfd23, 0x715c, 0x7e32, 0xfd24, 0x7162,
+  0x7e33, 0x7e34, 0x7161, 0x7164, 0xfd25, 0x3643, 0x7163, 0x7165,
+  0x7166, 0x7168, 0x7167, 0x7169, 0x716b, 0x716a,
+  /* 0x9A80 */
+  0x397c, 0x716c, 0xfd27, 0x716d, 0x7e35, 0xfd29, 0x333c, 0xfd2b,
+  0x716e,
+  /* 0x9AC0 */
+  0x716f, 0x7e36, 0x7e37, 0x3f71, 0xfd2d, 0x7e38, 0x7170, 0xfd2e,
+  0x7171, 0xfd2f, 0x7172, 0x7173, 0xfd30, 0x7e39, 0x3962, 0xfd32,
+  0x7174, 0x7175, 0xfd33, 0x7176, 0x7177, 0xfd34, 0x7178, 0xfd35,
+  0x4831, 0x717a, 0x4926, 0x717b, 0x7179, 0x717d, 0x717c, 0x717e,
+  0x7e3a, 0x7221,
+  /* 0x9B00 */
+  0x7e3b, 0xfd36, 0x7222, 0x7e3c, 0xfd37, 0xfd38, 0xfd39, 0xfd3a,
+  0x7223, 0x7224, 0xfd3b, 0x7225, 0x7e3d, 0x7226, 0x7227, 0x7228,
+  0x7229, 0x722a, 0x722b, 0x722c, 0xfd3c, 0x7e3f, 0x722d, 0x722e,
+  0x5d35, 0x722f, 0xfd3d, 0x6478, 0x3534, 0xfd3e,
+  /* 0x9B40 */
+  0x3321, 0x3a32, 0x7231, 0x7230, 0x4c25, 0xfd40, 0x7233, 0x7234,
+  0x7232, 0x7235, 0x4b62, 0x7236, 0x357b, 0x7e40, 0xfd41, 0xfd42,
+  0x7e42, 0xfd43, 0xfd44, 0x4f25, 0x7e43, 0xfd45, 0x7237, 0x7e44,
+  0xfd46, 0xfd47, 0x7e41,
+  /* 0x9B80 */
+  0x7239, 0x7e45, 0x7e46, 0x303e, 0x7e47, 0x723a, 0x4a2b, 0x7238,
+  0x723b, 0x723c, 0x7e48, 0x723d, 0x723e, 0xfd48, 0x7e49, 0x723f,
+  0x4b6e, 0x3b2d, 0xfd49, 0x3a7a, 0x412f, 0xfd4a, 0xfd4d, 0x7240,
+  0xfd4e, 0x7243, 0xfd4f,
+  /* 0x9BC0 */
+  0x7241, 0x7e4a, 0x7244, 0xfd50, 0x3871, 0x7242, 0x7e4b, 0x7245,
+  0x7246, 0x7247, 0x724b, 0x3b2a, 0xfd52, 0x4264, 0xfd53, 0x724c,
+  0x7249, 0x7248, 0x724a, 0x7e4c, 0xfd54, 0x375f, 0xfd55, 0xfd56,
+  0xfd58, 0xfd57, 0x7250, 0x724f, 0x724e, 0xfd51, 0x3033, 0xfd5c,
+  0x7e4d, 0xfd5a, 0x7e4e,
+  /* 0x9C00 */
+  0x7e4f, 0x725a, 0x7256, 0x7257, 0x7253, 0x7259, 0x7255, 0x3362,
+  0x4f4c, 0x7258, 0x7254, 0x7252, 0x7251, 0xfd5e, 0xfd5f, 0xfd60,
+  0xfd61, 0x725c, 0xfd62, 0x725f, 0xfd63, 0x7e50, 0x725e, 0x725d,
+  0xfd64, 0xfd65, 0xfd66, 0x4949, 0x725b, 0x3073, 0x7260, 0xfd68,
+  0x7262, 0xfd69, 0xfd6a, 0x336f, 0x724d, 0x3137, 0x7264,
+  /* 0x9C40 */
+  0x7e51, 0xfd6b, 0x7263, 0x7261, 0x432d, 0xfd6e, 0xfd6f, 0x7e52,
+  0x7e53, 0x4b70, 0x7e54, 0xfd71, 0x4e5a, 0xfd72, 0x7265, 0xfd73,
+  0xfd6c, 0xfd74, 0xfd75, 0x7266, 0x7e55, 0x7e56, 0x7267, 0xfd76,
+  0xfd77, 0xfd78, 0xfd79, 0xfd7a, 0xfd7b, 0xfd7c, 0xfd7d, 0x7268,
+  0x7e57, 0x7269, 0xfd7e,
+  /* 0x9CC0 */
+  0x443b, 0xfe21, 0x726a, 0x4837, 0x726f, 0x726b, 0x726c, 0xfe22,
+  0x4b31, 0x4c44, 0x4650,
+  /* 0x9D00 */
+  0xfe24, 0x7270, 0x7271, 0x463e, 0x726e, 0x726d, 0xfe23, 0x322a,
+  0xfe26, 0x7279, 0x7278, 0xfe27, 0xfe28, 0x3175, 0x7e58, 0x7e59,
+  0x7276, 0x7275, 0x7273, 0x337b, 0x7272, 0x3c32, 0x3229, 0xfe2c,
+  0x3963, 0x727c, 0x727b,
+  /* 0x9D40 */
+  0x727a, 0xfe2e, 0x7e5a, 0x7277, 0x727d, 0x7e5b, 0x727e, 0xfe2f,
+  0x7325, 0x7324, 0x7e5c, 0x7326, 0x312d, 0x7321, 0x7322, 0xfe30,
+  0x3974, 0x4c39, 0xfe31, 0x7e5d, 0x7323, 0xfe33, 0xfe34, 0x4b32,
+  0x732b, 0x7e5e, 0x7327, 0xfe36, 0xfe37, 0xfe38, 0x732c, 0x7e5f,
+  0xfe39,
+  /* 0x9D80 */
+  0xfe3a, 0x7329, 0x7328, 0x7e60, 0xfe3b, 0x375c, 0x7e61, 0xfe3c,
+  0x732d, 0xfe3d, 0x732e, 0x732f, 0x732a, 0x7e63, 0x7274, 0x7330,
+  0x4461, 0xfe3f, 0x7334, 0xfe40, 0x7335, 0x7333, 0x7e64, 0xfe41,
+  0xfe3e,
+  /* 0x9DC0 */
+  0x7e62, 0x7332, 0x7338, 0xfe42, 0x7331, 0x7336, 0xfe43, 0xfe44,
+  0x7337, 0x733a, 0xfe45, 0x7e65, 0x7339, 0xfe46, 0xfe47, 0xfe48,
+  0xfe49, 0x733c, 0x7e67, 0x733d, 0x733e, 0x4f49, 0xfe4a, 0x733b,
+  0x426b, 0x3a6d, 0x733f,
+  /* 0x9E00 */
+  0xfe4d, 0x7e68, 0xfe4c, 0xfe4e, 0x7e69, 0xfe4f, 0x7340, 0x7341,
+  0xfe50, 0xfe51, 0x7342,
+  /* 0x9E40 */
+  0x7343, 0x3834, 0x7344, 0xfe52, 0x7e6a, 0x7345, 0x3c2f,
+  /* 0x9E80 */
+  0xfe54, 0x7346, 0xfe55, 0x7347, 0x7348, 0x7349, 0x734c, 0x734a,
+  0x4f3c, 0x734b, 0x4e6f, 0xfe56, 0x734d, 0x7e6b, 0x4e5b, 0x7e6c,
+  0x734e, 0x477e, 0xfe57, 0x734f, 0x7351, 0x7e6d, 0x7352, 0x7e6e,
+  0x7e6f, 0x7e70, 0x7350, 0x396d, 0x4c4d, 0x4b63, 0x5677, 0xfe59,
+  0x5d60, 0x4b7b,
+  /* 0x9EC0 */
+  0x7e71, 0x322b, 0x7354, 0x3550, 0x7355, 0x7356, 0x7357, 0x7e72,
+  0x3975, 0x7358, 0x6054, 0x4c5b, 0x4263, 0x7359, 0x735b, 0x735a,
+  0xfe5b, 0x735c, 0x735d, 0xfe5c, 0x735e, 0xfe5d, 0x735f, 0x7360,
+  0x7361, 0x7362, 0x7363, 0x7364, 0x7365, 0x7366, 0xfe5e,
+  /* 0x9F00 */
+  0xfe5f, 0xfe61, 0x7367, 0x7368, 0x4524, 0x7e73, 0x385d, 0x736a,
+  0xfe62, 0xfe63, 0x414d, 0x736b, 0x736c, 0xfe64, 0xfe65, 0x7e74,
+  0xfe66, 0x4921, 0xfe67, 0x736d,
+  /* 0x9F40 */
+  0xfe68, 0xfe69, 0xfe6a, 0x736e, 0x6337, 0x6c5a, 0x706d, 0x736f,
+  0xfe6b, 0x7370, 0xfe6c, 0x7e75, 0xfe6d, 0xfe6f, 0x7372, 0x7373,
+  0x7374, 0x4e70, 0x7371, 0x7375, 0x7376, 0xfe71, 0x7378, 0x7377,
+  0xfe73, 0xfe74, 0x737a, 0xfe75, 0x737b, 0x7379,
+  /* 0x9F80 */
+  0x4e36, 0x7e76, 0x7e77, 0x737c, 0x7e78, 0x737d, 0x6354, 0x737e,
+  0x7e79,
+  /* 0xF900 */
+  0x763b, 0x742e, 0x754e, 0x7b4f,
+  /* 0xF940 */
+  0x7649,
+  /* 0xF9C0 */
+  0x7e24, 0x7d5d,
+  /* 0xFA00 */
+  0x2f4b, 0x2f57, 0x4f72, 0xae79, 0x757a, 0x775a, 0x776f, 0x793c,
+  0x793d, 0x7941, 0x7b3a, 0xf738, 0xf745, 0x7c2e, 0xf96e, 0x7c6a,
+  0x2e38, 0x2e49, 0x2e50, 0x2e63, 0x2e68, 0x2e6e, 0x2f2c, 0x2f2f,
+  0x2f36, 0x2f5a, 0x2f5e, 0x4f61, 0x4f62, 0x7450, 0x745c, 0x745e,
+  /* 0xFA40 */
+  0x7461, 0x7528, 0x752b, 0x7543, 0x7565, 0x7669, 0x7677, 0x7725,
+  0x7755, 0xf029, 0x7825, 0x7927, 0x7933, 0x7934, 0x7937, 0x7938,
+  0x7939, 0x793b, 0x793f, 0x7940, 0x794d, 0x7951, 0x7964, 0x7a2e,
+  0xf450, 0x7a33, 0x7a3a, 0x7a44, 0x7a58, 0xf574, 0xf575, 0x7b27,
+  0x7b6f, 0x7b79, 0x7c2f, 0x7c30, 0x7c38, 0x7c3d, 0xf969, 0x7c59,
+  0x7d63, 0x7d76, 0x7d7b,
+  /* 0xFE40 */
+  0x233e, 0x233d,
+  /* 0xFF00 */
+  0x212a, 0x2230, 0x2174, 0x2170, 0x2173, 0x2175, 0x222f, 0x214a,
+  0x214b, 0x2176, 0x215c, 0x2124, 0x2231, 0x2125, 0x213f, 0x2330,
+  0x2331, 0x2332, 0x2333, 0x2334, 0x2335, 0x2336, 0x2337, 0x2338,
+  0x2339, 0x2127, 0x2128, 0x2163, 0x2161, 0x2164, 0x2129, 0x2177,
+  0x2341, 0x2342, 0x2343, 0x2344, 0x2345, 0x2346, 0x2347, 0x2348,
+  0x2349, 0x234a, 0x234b, 0x234c, 0x234d, 0x234e, 0x234f, 0x2350,
+  0x2351, 0x2352, 0x2353, 0x2354, 0x2355, 0x2356, 0x2357, 0x2358,
+  0x2359, 0x235a, 0x214e, 0x2140, 0x214f, 0x2130, 0x2132,
+  /* 0xFF40 */
+  0x212e, 0x2361, 0x2362, 0x2363, 0x2364, 0x2365, 0x2366, 0x2367,
+  0x2368, 0x2369, 0x236a, 0x236b, 0x236c, 0x236d, 0x236e, 0x236f,
+  0x2370, 0x2371, 0x2372, 0x2373, 0x2374, 0x2375, 0x2376, 0x2377,
+  0x2378, 0x2379, 0x237a, 0x2150, 0x2143, 0x2151, 0x2232, 0x2256,
+  0x2257,
+  /* 0xFFC0 */
+  0x2131, 0x216f,
+  /* 0x20000 */
+  0x2e22,
+  /* 0x20080 */
+  0xa121, 0xa12b, 0xa12e,
+  /* 0x20180 */
+  0xa136,
+  /* 0x20200 */
+  0xa146,
+  /* 0x20300 */
+  0xa170,
+  /* 0x20340 */
+  0xa179,
+  /* 0x20380 */
+  0xa177,
+  /* 0x203C0 */
+  0xa322,
+  /* 0x20440 */
+  0xa325,
+  /* 0x20500 */
+  0xa327,
+  /* 0x205C0 */
+  0xa331,
+  /* 0x20600 */
+  0xa332,
+  /* 0x20740 */
+  0xa338,
+  /* 0x20800 */
+  0xa33f, 0xa341,
+  /* 0x20880 */
+  0xa34a,
+  /* 0x20940 */
+  0xa352,
+  /* 0x20980 */
+  0xa353,
+  /* 0x20AC0 */
+  0xa359,
+  /* 0x20B00 */
+  0xa35c,
+  /* 0x20B80 */
+  0x4f54,
+  /* 0x20D40 */
+  0xa377,
+  /* 0x20DC0 */
+  0xa42a,
+  /* 0x20E40 */
+  0xa43a, 0xa432,
+  /* 0x20E80 */
+  0xa431,
+  /* 0x20F40 */
+  0xa43d,
+  /* 0x21200 */
+  0xa459, 0x2f42,
+  /* 0x21240 */
+  0xa45c, 0xa463, 0xa45e,
+  /* 0x212C0 */
+  0xa46b, 0xa46a, 0xa472,
+  /* 0x21300 */
+  0x2f4c, 0xa474,
+  /* 0x21340 */
+  0xa475,
+  /* 0x213C0 */
+  0xa525,
+  /* 0x21440 */
+  0xa532, 0x2f60,
+  /* 0x215C0 */
+  0xa53e,
+  /* 0x21640 */
+  0xa547,
+  /* 0x21680 */
+  0x4f63,
+  /* 0x21700 */
+  0xa555,
+  /* 0x21740 */
+  0xa556,
+  /* 0x21880 */
+  0x2f7b,
+  /* 0x219C0 */
+  0xa57e,
+  /* 0x21C40 */
+  0xa830,
+  /* 0x21D00 */
+  0xa837,
+  /* 0x21D40 */
+  0xa838, 0xa83b, 0xa83a,
+  /* 0x21D80 */
+  0xa845, 0xa840, 0xa83f, 0xa848,
+  /* 0x21DC0 */
+  0xa84a,
+  /* 0x21E00 */
+  0xa84b, 0x4f6e,
+  /* 0x21F00 */
+  0xa85b,
+  /* 0x21F40 */
+  0xa866,
+  /* 0x21FC0 */
+  0xa86c,
+  /* 0x22140 */
+  0xac22,
+  /* 0x22200 */
+  0xfe53,
+  /* 0x22300 */
+  0xac2b,
+  /* 0x22380 */
+  0xac30,
+  /* 0x226C0 */
+  0xac50,
+  /* 0x22840 */
+  0xac65,
+  /* 0x22880 */
+  0xac6d,
+  /* 0x22980 */
+  0xac72,
+  /* 0x22A80 */
+  0xad24,
+  /* 0x22B40 */
+  0xad32, 0xad29, 0xad2a,
+  /* 0x22B80 */
+  0xad35,
+  /* 0x22C00 */
+  0xad34, 0xad39,
+  /* 0x22DC0 */
+  0xad56,
+  /* 0x23180 */
+  0xae24,
+  /* 0x231C0 */
+  0xad7d, 0x753a, 0xae23,
+  /* 0x23340 */
+  0xae3a,
+  /* 0x233C0 */
+  0xae42, 0xae3d, 0xae3c, 0xae44, 0xae47, 0xae49, 0xae43,
+  /* 0x23440 */
+  0xae55, 0xae57, 0xae56, 0xae5b,
+  /* 0x234C0 */
+  0xae77,
+  /* 0x23540 */
+  0xae78,
+  /* 0x23580 */
+  0xaf2a,
+  /* 0x235C0 */
+  0x7572,
+  /* 0x23600 */
+  0xaf42, 0xaf3f, 0xaf43,
+  /* 0x23640 */
+  0xaf40,
+  /* 0x23700 */
+  0xaf59, 0xaf4e, 0x7629,
+  /* 0x23740 */
+  0x7632, 0xaf61,
+  /* 0x237C0 */
+  0xaf6a, 0xaf69,
+  /* 0x23800 */
+  0xaf70, 0xaf75,
+  /* 0x23A80 */
+  0xee23,
+  /* 0x23C40 */
+  0xee34,
+  /* 0x23CC0 */
+  0x7660,
+  /* 0x23D00 */
+  0xee49, 0xf475,
+  /* 0x23D40 */
+  0xee5c,
+  /* 0x23DC0 */
+  0xee60, 0xee5f, 0xee5e,
+  /* 0x23F40 */
+  0xef32,
+  /* 0x24080 */
+  0xef47,
+  /* 0x24100 */
+  0xef4d,
+  /* 0x241C0 */
+  0xef61, 0xef64,
+  /* 0x24380 */
+  0xf022,
+  /* 0x24600 */
+  0xf033,
+  /* 0x24680 */
+  0xf039,
+  /* 0x247C0 */
+  0x776c,
+  /* 0x24880 */
+  0xf053,
+  /* 0x24A40 */
+  0xf07b,
+  /* 0x24B40 */
+  0xf12e, 0xf130,
+  /* 0x24C00 */
+  0xf135,
+  /* 0x24D00 */
+  0xf144,
+  /* 0x24E00 */
+  0xf15d, 0xf161,
+  /* 0x24E40 */
+  0xf166,
+  /* 0x24E80 */
+  0xf169,
+  /* 0x25040 */
+  0xf175, 0xf177,
+  /* 0x25100 */
+  0xf17a,
+  /* 0x25180 */
+  0xf221,
+  /* 0x251C0 */
+  0xf224, 0xf223,
+  /* 0x25200 */
+  0xf228,
+  /* 0x25240 */
+  0xf22c,
+  /* 0x25400 */
+  0xf23d,
+  /* 0x25480 */
+  0x787e,
+  /* 0x254C0 */
+  0xf248,
+  /* 0x25500 */
+  0x7929,
+  /* 0x25580 */
+  0xf25b,
+  /* 0x25740 */
+  0x7947,
+  /* 0x25780 */
+  0xf275, 0xf276,
+  /* 0x259C0 */
+  0x7954, 0xf332,
+  /* 0x25AC0 */
+  0xf33e, 0xf33d, 0xf340,
+  /* 0x25B80 */
+  0xf352,
+  /* 0x25C40 */
+  0xf35d, 0xf35e,
+  /* 0x25D80 */
+  0x796e,
+  /* 0x25E00 */
+  0xf373,
+  /* 0x25E40 */
+  0xf374, 0xf377, 0xf375,
+  /* 0x25EC0 */
+  0xf37d, 0xf37b, 0xf422,
+  /* 0x25F00 */
+  0xf424,
+  /* 0x25F40 */
+  0xf427,
+  /* 0x25FC0 */
+  0xf42f, 0xf42e, 0xf435,
+  /* 0x26000 */
+  0xf434, 0xf43d,
+  /* 0x26040 */
+  0xf442,
+  /* 0x260C0 */
+  0xf44f,
+  /* 0x26240 */
+  0xf469,
+  /* 0x26280 */
+  0xf46b,
+  /* 0x26340 */
+  0xf472,
+  /* 0x26400 */
+  0xf479,
+  /* 0x26640 */
+  0xf535,
+  /* 0x26680 */
+  0xf53a,
+  /* 0x26700 */
+  0xf546,
+  /* 0x268C0 */
+  0xf556, 0xf558,
+  /* 0x26940 */
+  0xf55a, 0xf55d,
+  /* 0x269C0 */
+  0xf55f,
+  /* 0x26A00 */
+  0xf563,
+  /* 0x26A40 */
+  0xf56a,
+  /* 0x26A80 */
+  0xf570, 0xf573,
+  /* 0x26AC0 */
+  0x7a5d,
+  /* 0x26C00 */
+  0xa544,
+  /* 0x26C40 */
+  0xf644,
+  /* 0x26CC0 */
+  0xf64e,
+  /* 0x26E40 */
+  0x7b33, 0xf65d,
+  /* 0x26F80 */
+  0xf675,
+  /* 0x26FC0 */
+  0xf721, 0xf722, 0xf67e,
+  /* 0x270C0 */
+  0x7b49,
+  /* 0x27100 */
+  0xf733, 0xf736,
+  /* 0x273C0 */
+  0xf765, 0xf764, 0xf76b,
+  /* 0x27400 */
+  0xf76e,
+  /* 0x27440 */
+  0xf773,
+  /* 0x27600 */
+  0xf82a, 0xf829, 0xf82c,
+  /* 0x27680 */
+  0x7b6c, 0xf834,
+  /* 0x27700 */
+  0xf83c, 0xf83e,
+  /* 0x27740 */
+  0xf842,
+  /* 0x27980 */
+  0xf856,
+  /* 0x27A80 */
+  0xf863,
+  /* 0x27B80 */
+  0xf877, 0xf879,
+  /* 0x27BC0 */
+  0xf87a,
+  /* 0x27C80 */
+  0xf925,
+  /* 0x27D80 */
+  0xf92f,
+  /* 0x27E00 */
+  0xf932,
+  /* 0x27F80 */
+  0xf939,
+  /* 0x28080 */
+  0xf942, 0xf948,
+  /* 0x28240 */
+  0x7c49,
+  /* 0x28280 */
+  0xf959,
+  /* 0x282C0 */
+  0xf95e,
+  /* 0x283C0 */
+  0x7c51,
+  /* 0x28400 */
+  0xf966,
+  /* 0x28440 */
+  0xf96b,
+  /* 0x28540 */
+  0xf97a,
+  /* 0x285C0 */
+  0xf97e, 0xfa21,
+  /* 0x286C0 */
+  0xfa2c, 0xfa2f,
+  /* 0x28940 */
+  0xfa50, 0xfa4f, 0xfa57,
+  /* 0x28980 */
+  0xfa65, 0xfa66, 0xfa71, 0xfa72,
+  /* 0x28A00 */
+  0xfa7e, 0xfb21,
+  /* 0x28A40 */
+  0xfb2d, 0xfb2c,
+  /* 0x28A80 */
+  0xfb36,
+  /* 0x28AC0 */
+  0xfb37, 0xfb3e, 0xfb3d,
+  /* 0x28BC0 */
+  0xfb4e, 0xfb4f,
+  /* 0x28D00 */
+  0xfb57,
+  /* 0x28D40 */
+  0xfb5a,
+  /* 0x28DC0 */
+  0xfb5c,
+  /* 0x28E00 */
+  0xfb5d, 0xfb61,
+  /* 0x28E80 */
+  0xfb65,
+  /* 0x28EC0 */
+  0xfb67,
+  /* 0x28F00 */
+  0xfb69,
+  /* 0x28FC0 */
+  0xfb71,
+  /* 0x29280 */
+  0xfc22, 0xfc23,
+  /* 0x29480 */
+  0xfc38,
+  /* 0x295C0 */
+  0xfc42,
+  /* 0x29640 */
+  0xfc4c,
+  /* 0x296C0 */
+  0xfc56,
+  /* 0x29700 */
+  0xfc59,
+  /* 0x29740 */
+  0xfc5d,
+  /* 0x298C0 */
+  0xfc76,
+  /* 0x29A40 */
+  0xfd2c,
+  /* 0x29DC0 */
+  0xfd4b,
+  /* 0x29E00 */
+  0xfd59, 0xfd4c,
+  /* 0x29E40 */
+  0xfd5d,
+  /* 0x29E80 */
+  0xfd5b,
+  /* 0x29EC0 */
+  0xfd67, 0xfd70, 0xfd6d,
+  /* 0x29FC0 */
+  0xfe25,
+  /* 0x2A000 */
+  0xfe2b, 0xfe29,
+  /* 0x2A080 */
+  0xfe35,
+  /* 0x2A0C0 */
+  0xfe32,
+  /* 0x2A180 */
+  0x7e66,
+  /* 0x2A380 */
+  0xfe58,
+  /* 0x2A400 */
+  0xfe5a,
+  /* 0x2A5C0 */
+  0xfe6e,
+  /* 0x2A600 */
+  0xfe70, 0xfe72,
+  /* 0x2A680 */
+  0xfe76,
+};
+
+static const Summary16 jisx0213_from_ucs_level2_2indx[] = {
+  /* 0x0080 */
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0xffdf }, {   15, 0xffdf },
+  /* 0x00C0 */
+  {   30, 0xffff }, {   46, 0xffff }, {   62, 0xffff }, {   78, 0xffff },
+  /* 0x0100 */
+  {   94, 0xf3ff }, {  108, 0x3f0e }, {  117, 0x0cb0 }, {  122, 0x6630 },
+  /* 0x0140 */
+  {  128, 0x399e }, {  137, 0xff3f }, {  151, 0xfc3f }, {  163, 0x7e03 },
+  /* 0x0180 */
+  {  171, 0x0000 }, {  171, 0x0008 }, {  172, 0x0000 }, {  172, 0x0000 },
+  /* 0x01C0 */
+  {  172, 0x6004 }, {  175, 0x1557 }, {  183, 0x0000 }, {  183, 0x2300 },
+  /* 0x0240 */
+  {  186, 0x0000 }, {  186, 0xd7ff }, {  200, 0xf1f3 }, {  211, 0x6e2f },
+  /* 0x0280 */
+  {  221, 0x7f1e }, {  232, 0x2137 }, {  239, 0x0006 }, {  241, 0x0000 },
+  /* 0x02C0 */
+  {  241, 0x1180 }, {  244, 0x6b03 }, {  251, 0x03e0 }, {  256, 0x0000 },
+  /* 0x0300 */
+  {  256, 0x995f }, {  266, 0xf700 }, {  273, 0x9631 }, {  280, 0x3e11 },
+  /* 0x0340 */
+  {  287, 0x0000 }, {  287, 0x0000 }, {  287, 0x0002 }, {  288, 0x0000 },
+  /* 0x0380 */
+  {  288, 0x0000 }, {  288, 0xfffe }, {  303, 0x03fb }, {  312, 0xfffe },
+  /* 0x03C0 */
+  {  327, 0x03ff }, {  337, 0x0000 }, {  337, 0x0000 }, {  337, 0x0000 },
+  /* 0x0400 */
+  {  337, 0x0002 }, {  338, 0xffff }, {  354, 0xffff }, {  370, 0xffff },
+  /* 0x0440 */
+  {  386, 0xffff }, {  402, 0x0002 }, {  403, 0x0000 }, {  403, 0x0000 },
+  /* 0x1E00 */
+  {  403, 0x0000 }, {  403, 0x0000 }, {  403, 0x0000 }, {  403, 0xc000 },
+  /* 0x1F40 */
+  {  405, 0x0000 }, {  405, 0x0000 }, {  405, 0x0000 }, {  405, 0x000f },
+  /* 0x2000 */
+  {  409, 0x0000 }, {  409, 0x3359 }, {  417, 0x0067 }, {  422, 0x980d },
+  /* 0x2040 */
+  {  428, 0x0384 }, {  432, 0x0002 }, {  433, 0x0000 }, {  433, 0x0000 },
+  /* 0x2080 */
+  {  433, 0x0000 }, {  433, 0x0000 }, {  433, 0x1000 }, {  434, 0x0000 },
+  /* 0x2100 */
+  {  434, 0x8008 }, {  436, 0x0048 }, {  438, 0x0882 }, {  441, 0x0020 },
+  /* 0x2140 */
+  {  442, 0x0000 }, {  442, 0x0038 }, {  445, 0x0fff }, {  457, 0x0fff },
+  /* 0x2180 */
+  {  469, 0x0000 }, {  469, 0x03df }, {  478, 0x0000 }, {  478, 0x0000 },
+  /* 0x21C0 */
+  {  478, 0x0010 }, {  479, 0x0014 }, {  481, 0x03c0 }, {  485, 0x0000 },
+  /* 0x2200 */
+  {  485, 0x0bad }, {  493, 0xe40c }, {  499, 0x5fe1 }, {  509, 0x2030 },
+  /* 0x2240 */
+  {  512, 0x0128 }, {  515, 0x0004 }, {  516, 0x0cc7 }, {  523, 0x00c0 },
+  /* 0x2280 */
+  {  525, 0x0cfc }, {  533, 0x00e0 }, {  536, 0x0020 }, {  537, 0x8000 },
+  /* 0x22C0 */
+  {  538, 0x0000 }, {  538, 0x0c00 }, {  540, 0x0000 }, {  540, 0x0000 },
+  /* 0x2300 */
+  {  540, 0x0060 }, {  542, 0x0104 }, {  544, 0x0000 }, {  544, 0x0000 },
+  /* 0x2380 */
+  {  544, 0x0000 }, {  544, 0x0000 }, {  544, 0x0000 }, {  544, 0xc000 },
+  /* 0x23C0 */
+  {  546, 0x5fff }, {  560, 0x0000 }, {  560, 0x0000 }, {  560, 0x0000 },
+  /* 0x2400 */
+  {  560, 0x0000 }, {  560, 0x0000 }, {  560, 0x0008 }, {  561, 0x0000 },
+  /* 0x2440 */
+  {  561, 0x0000 }, {  561, 0x0000 }, {  561, 0xffff }, {  577, 0x000f },
+  /* 0x24C0 */
+  {  581, 0x0000 }, {  581, 0xffff }, {  597, 0xfbff }, {  612, 0x7fff },
+  /* 0x2500 */
+  {  627, 0x900f }, {  633, 0x3999 }, {  641, 0x9939 }, {  649, 0x9999 },
+  /* 0x2540 */
+  {  657, 0x0804 }, {  659, 0x0000 }, {  659, 0x0000 }, {  659, 0x0000 },
+  /* 0x2580 */
+  {  659, 0x0000 }, {  659, 0x0000 }, {  659, 0x0003 }, {  661, 0x30ce },
+  /* 0x25C0 */
+  {  668, 0xcac3 }, {  676, 0x000f }, {  680, 0x8040 }, {  682, 0x0000 },
+  /* 0x2600 */
+  {  682, 0x406f }, {  689, 0x40c0 }, {  692, 0x0000 }, {  692, 0x0000 },
+  /* 0x2640 */
+  {  692, 0x0005 }, {  694, 0x0000 }, {  694, 0xffff }, {  710, 0x0000 },
+  /* 0x2700 */
+  {  710, 0x0000 }, {  710, 0x0008 }, {  711, 0x0000 }, {  711, 0x0000 },
+  /* 0x2740 */
+  {  711, 0x0000 }, {  711, 0x0040 }, {  712, 0x0000 }, {  712, 0xffc0 },
+  /* 0x2900 */
+  {  722, 0x0000 }, {  722, 0x0000 }, {  722, 0x0000 }, {  722, 0x0030 },
+  /* 0x2980 */
+  {  724, 0x0000 }, {  724, 0x0000 }, {  724, 0x0000 }, {  724, 0x8000 },
+  /* 0x29C0 */
+  {  725, 0x0000 }, {  725, 0x0000 }, {  725, 0x0000 }, {  725, 0x0c00 },
+  /* 0x3000 */
+  {  727, 0xffef }, {  742, 0xb3ff }, {  755, 0x0001 }, {  756, 0x3838 },
+  /* 0x3040 */
+  {  762, 0xfffe }, {  777, 0xffff }, {  793, 0xffff }, {  809, 0xffff },
+  /* 0x3080 */
+  {  825, 0xffff }, {  841, 0xf87f }, {  853, 0xffff }, {  869, 0xffff },
+  /* 0x30C0 */
+  {  885, 0xffff }, {  901, 0xffff }, {  917, 0xffff }, {  933, 0xffff },
+  /* 0x31C0 */
+  {  949, 0x0000 }, {  949, 0x0000 }, {  949, 0x0000 }, {  949, 0xffff },
+  /* 0x3200 */
+  {  965, 0x0000 }, {  965, 0x0000 }, {  965, 0x0000 }, {  965, 0x0206 },
+  /* 0x3240 */
+  {  968, 0x0000 }, {  968, 0xfffe }, {  983, 0x0000 }, {  983, 0x0000 },
+  /* 0x3280 */
+  {  983, 0x0000 }, {  983, 0x0000 }, {  983, 0x01f0 }, {  988, 0xfffe },
+  /* 0x32C0 */
+  { 1003, 0x0000 }, { 1003, 0xffff }, { 1019, 0x322f }, { 1027, 0x0400 },
+  /* 0x3300 */
+  { 1028, 0x2008 }, { 1030, 0x0110 }, { 1032, 0x08cc }, { 1037, 0x0840 },
+  /* 0x3340 */
+  { 1039, 0x2600 }, { 1042, 0x0082 }, { 1044, 0x0000 }, { 1044, 0x7800 },
+  /* 0x3380 */
+  { 1048, 0xc000 }, { 1050, 0x7000 }, { 1053, 0x0002 }, { 1054, 0x0000 },
+  /* 0x33C0 */
+  { 1054, 0x2810 }, { 1057, 0x0000 }, { 1057, 0x0000 }, { 1057, 0x0000 },
+  /* 0x3400 */
+  { 1057, 0x0044 }, { 1059, 0x0000 }, { 1059, 0x5000 }, { 1061, 0x0000 },
+  /* 0x3440 */
+  { 1061, 0x0000 }, { 1061, 0x0000 }, { 1061, 0x0500 }, { 1063, 0x0000 },
+  /* 0x3480 */
+  { 1063, 0x0000 }, { 1063, 0x0004 }, { 1064, 0x0000 }, { 1064, 0x1020 },
+  /* 0x34C0 */
+  { 1066, 0x0082 }, { 1068, 0x0800 }, { 1069, 0x0000 }, { 1069, 0x0000 },
+  /* 0x3500 */
+  { 1069, 0x0000 }, { 1069, 0x8000 }, { 1070, 0x0000 }, { 1070, 0x0000 },
+  /* 0x3540 */
+  { 1070, 0x0000 }, { 1070, 0x6000 }, { 1072, 0x4008 }, { 1074, 0x0000 },
+  /* 0x3580 */
+  { 1074, 0x0000 }, { 1074, 0x0000 }, { 1074, 0x0140 }, { 1076, 0x0000 },
+  /* 0x35C0 */
+  { 1076, 0x0020 }, { 1077, 0x0400 }, { 1078, 0x0000 }, { 1078, 0x0010 },
+  /* 0x3600 */
+  { 1079, 0x0020 }, { 1080, 0x0000 }, { 1080, 0x0000 }, { 1080, 0x0000 },
+  /* 0x3640 */
+  { 1080, 0x0400 }, { 1081, 0x0000 }, { 1081, 0x0000 }, { 1081, 0x0000 },
+  /* 0x3680 */
+  { 1081, 0x0000 }, { 1081, 0x0242 }, { 1084, 0x0000 }, { 1084, 0x0000 },
+  /* 0x36C0 */
+  { 1084, 0x8000 }, { 1085, 0x0000 }, { 1085, 0x0000 }, { 1085, 0x0000 },
+  /* 0x3740 */
+  { 1085, 0x0000 }, { 1085, 0x0000 }, { 1085, 0x1806 }, { 1089, 0x0020 },
+  /* 0x3780 */
+  { 1090, 0x2000 }, { 1091, 0x0000 }, { 1091, 0x0000 }, { 1091, 0x0000 },
+  /* 0x37C0 */
+  { 1091, 0x0002 }, { 1092, 0x0000 }, { 1092, 0x0104 }, { 1094, 0x2010 },
+  /* 0x3800 */
+  { 1096, 0x0001 }, { 1097, 0x0000 }, { 1097, 0x8000 }, { 1098, 0x0040 },
+  /* 0x3840 */
+  { 1099, 0x0001 }, { 1100, 0x1000 }, { 1101, 0x0002 }, { 1102, 0x0000 },
+  /* 0x38C0 */
+  { 1102, 0x0000 }, { 1102, 0x0000 }, { 1102, 0x0000 }, { 1102, 0x0400 },
+  /* 0x3900 */
+  { 1103, 0x0000 }, { 1103, 0x0480 }, { 1105, 0x0000 }, { 1105, 0x0000 },
+  /* 0x3940 */
+  { 1105, 0x0000 }, { 1105, 0x0000 }, { 1105, 0x8000 }, { 1106, 0x0000 },
+  /* 0x3A40 */
+  { 1106, 0x0000 }, { 1106, 0x0000 }, { 1106, 0x4000 }, { 1107, 0x0008 },
+  /* 0x3AC0 */
+  { 1108, 0x0000 }, { 1108, 0x00c0 }, { 1110, 0x0400 }, { 1111, 0x0000 },
+  /* 0x3B00 */
+  { 1111, 0x4000 }, { 1112, 0x1400 }, { 1114, 0x0004 }, { 1115, 0x0000 },
+  /* 0x3B40 */
+  { 1115, 0x0000 }, { 1115, 0x0000 }, { 1115, 0x2000 }, { 1116, 0x0080 },
+  /* 0x3B80 */
+  { 1117, 0x2180 }, { 1120, 0x0000 }, { 1120, 0x0010 }, { 1121, 0x0040 },
+  /* 0x3BC0 */
+  { 1122, 0x2008 }, { 1124, 0x0000 }, { 1124, 0x0000 }, { 1124, 0x0001 },
+  /* 0x3C00 */
+  { 1125, 0x8000 }, { 1126, 0x0000 }, { 1126, 0x0040 }, { 1127, 0x0000 },
+  /* 0x3CC0 */
+  { 1127, 0x0008 }, { 1128, 0x0004 }, { 1129, 0x0000 }, { 1129, 0x0000 },
+  /* 0x3D00 */
+  { 1129, 0x0000 }, { 1129, 0x4002 }, { 1131, 0x0000 }, { 1131, 0x0000 },
+  /* 0x3D40 */
+  { 1131, 0x0000 }, { 1131, 0x0000 }, { 1131, 0x0010 }, { 1132, 0x0000 },
+  /* 0x3D80 */
+  { 1132, 0x0000 }, { 1132, 0x0400 }, { 1133, 0x0000 }, { 1133, 0x0000 },
+  /* 0x3DC0 */
+  { 1133, 0x0001 }, { 1134, 0x0010 }, { 1135, 0x0000 }, { 1135, 0x0000 },
+  /* 0x3E00 */
+  { 1135, 0x0020 }, { 1136, 0x0000 }, { 1136, 0x0000 }, { 1136, 0x8000 },
+  /* 0x3E40 */
+  { 1137, 0x0000 }, { 1137, 0x0000 }, { 1137, 0x0141 }, { 1140, 0x0000 },
+  /* 0x3E80 */
+  { 1140, 0x0008 }, { 1141, 0x0010 }, { 1142, 0x0000 }, { 1142, 0x0000 },
+  /* 0x3F40 */
+  { 1142, 0x0000 }, { 1142, 0x0080 }, { 1143, 0x0000 }, { 1143, 0x00a4 },
+  /* 0x3F80 */
+  { 1146, 0x0000 }, { 1146, 0x0000 }, { 1146, 0x4000 }, { 1147, 0x0000 },
+  /* 0x3FC0 */
+  { 1147, 0x0200 }, { 1148, 0x0080 }, { 1149, 0x0000 }, { 1149, 0x0000 },
+  /* 0x4000 */
+  { 1149, 0x0000 }, { 1149, 0x0000 }, { 1149, 0x0000 }, { 1149, 0x0200 },
+  /* 0x4040 */
+  { 1150, 0x0000 }, { 1150, 0x0100 }, { 1151, 0x0000 }, { 1151, 0x0000 },
+  /* 0x4080 */
+  { 1151, 0x0000 }, { 1151, 0x0008 }, { 1152, 0x0000 }, { 1152, 0x0000 },
+  /* 0x4100 */
+  { 1152, 0x0020 }, { 1153, 0x0000 }, { 1153, 0x0000 }, { 1153, 0x0000 },
+  /* 0x4140 */
+  { 1153, 0x8100 }, { 1155, 0x0000 }, { 1155, 0x0008 }, { 1156, 0x0000 },
+  /* 0x4180 */
+  { 1156, 0x0000 }, { 1156, 0x0000 }, { 1156, 0x0000 }, { 1156, 0x8010 },
+  /* 0x41C0 */
+  { 1158, 0x0000 }, { 1158, 0x0000 }, { 1158, 0x4040 }, { 1160, 0x0008 },
+  /* 0x4200 */
+  { 1161, 0x4080 }, { 1163, 0x0000 }, { 1163, 0x0000 }, { 1163, 0x0000 },
+  /* 0x4240 */
+  { 1163, 0x0000 }, { 1163, 0x0000 }, { 1163, 0x0010 }, { 1164, 0x0000 },
+  /* 0x42C0 */
+  { 1164, 0x0040 }, { 1165, 0x2040 }, { 1167, 0x0000 }, { 1167, 0x0000 },
+  /* 0x4300 */
+  { 1167, 0x0004 }, { 1168, 0x0000 }, { 1168, 0x0800 }, { 1169, 0x0000 },
+  /* 0x4340 */
+  { 1169, 0x0008 }, { 1170, 0x0000 }, { 1170, 0x0000 }, { 1170, 0x0000 },
+  /* 0x43C0 */
+  { 1170, 0x0000 }, { 1170, 0x0000 }, { 1170, 0x4000 }, { 1171, 0x0001 },
+  /* 0x4400 */
+  { 1172, 0x0100 }, { 1173, 0x1080 }, { 1175, 0x0004 }, { 1176, 0x0000 },
+  /* 0x4440 */
+  { 1176, 0x0000 }, { 1176, 0x0808 }, { 1178, 0x0000 }, { 1178, 0x0440 },
+  /* 0x4480 */
+  { 1180, 0x0000 }, { 1180, 0x0002 }, { 1181, 0x0000 }, { 1181, 0x4008 },
+  /* 0x44C0 */
+  { 1183, 0x0000 }, { 1183, 0x0010 }, { 1184, 0x0000 }, { 1184, 0x0000 },
+  /* 0x4500 */
+  { 1184, 0x2100 }, { 1186, 0x0000 }, { 1186, 0x0020 }, { 1187, 0x0000 },
+  /* 0x4540 */
+  { 1187, 0x0008 }, { 1188, 0x0000 }, { 1188, 0x0000 }, { 1188, 0x0000 },
+  /* 0x4580 */
+  { 1188, 0x0000 }, { 1188, 0x2000 }, { 1189, 0x0000 }, { 1189, 0x0100 },
+  /* 0x45C0 */
+  { 1190, 0x0000 }, { 1190, 0x0000 }, { 1190, 0x0420 }, { 1192, 0x0000 },
+  /* 0x4600 */
+  { 1192, 0x8000 }, { 1193, 0x0000 }, { 1193, 0x0000 }, { 1193, 0x0000 },
+  /* 0x4640 */
+  { 1193, 0x0002 }, { 1194, 0x0000 }, { 1194, 0x0020 }, { 1195, 0x0000 },
+  /* 0x4680 */
+  { 1195, 0x0000 }, { 1195, 0x0000 }, { 1195, 0x8002 }, { 1197, 0x0000 },
+  /* 0x4700 */
+  { 1197, 0x1000 }, { 1198, 0x0000 }, { 1198, 0x0000 }, { 1198, 0x0000 },
+  /* 0x4740 */
+  { 1198, 0x0000 }, { 1198, 0x0000 }, { 1198, 0x0010 }, { 1199, 0x0000 },
+  /* 0x47C0 */
+  { 1199, 0x0000 }, { 1199, 0x0000 }, { 1199, 0x0000 }, { 1199, 0x2000 },
+  /* 0x4800 */
+  { 1200, 0x0000 }, { 1200, 0x0040 }, { 1201, 0x0000 }, { 1201, 0x0000 },
+  /* 0x4840 */
+  { 1201, 0x4010 }, { 1203, 0x0000 }, { 1203, 0x0000 }, { 1203, 0x0000 },
+  /* 0x4880 */
+  { 1203, 0x0000 }, { 1203, 0x0000 }, { 1203, 0x0000 }, { 1203, 0x0020 },
+  /* 0x4980 */
+  { 1204, 0x0000 }, { 1204, 0x0000 }, { 1204, 0x0000 }, { 1204, 0x0001 },
+  /* 0x49C0 */
+  { 1205, 0x0000 }, { 1205, 0x0000 }, { 1205, 0x0080 }, { 1206, 0x0400 },
+  /* 0x4A00 */
+  { 1207, 0x0010 }, { 1208, 0x0000 }, { 1208, 0x0200 }, { 1209, 0x0000 },
+  /* 0x4A80 */
+  { 1209, 0x0000 }, { 1209, 0x0000 }, { 1209, 0x0000 }, { 1209, 0x1000 },
+  /* 0x4B00 */
+  { 1210, 0x0000 }, { 1210, 0x0000 }, { 1210, 0x0000 }, { 1210, 0x0800 },
+  /* 0x4BC0 */
+  { 1211, 0x0404 }, { 1213, 0x0004 }, { 1214, 0x0100 }, { 1215, 0x0000 },
+  /* 0x4C00 */
+  { 1215, 0x0000 }, { 1215, 0x0080 }, { 1216, 0x0001 }, { 1217, 0x0000 },
+  /* 0x4CC0 */
+  { 1217, 0x0010 }, { 1218, 0x0002 }, { 1219, 0x0000 }, { 1219, 0x0000 },
+  /* 0x4D00 */
+  { 1219, 0x0080 }, { 1220, 0x0000 }, { 1220, 0x0000 }, { 1220, 0x0000 },
+  /* 0x4D40 */
+  { 1220, 0x0000 }, { 1220, 0x0000 }, { 1220, 0x0000 }, { 1220, 0x0080 },
+  /* 0x4E00 */
+  { 1221, 0xef8f }, { 1233, 0x43f7 }, { 1243, 0xff42 }, { 1253, 0x9b47 },
+  /* 0x4E40 */
+  { 1262, 0xe9ad }, { 1272, 0xe7e2 }, { 1282, 0x0204 }, { 1284, 0x400a },
+  /* 0x4E80 */
+  { 1287, 0x7f65 }, { 1298, 0xfb36 }, { 1309, 0x7977 }, { 1320, 0x1e49 },
+  /* 0x4EC0 */
+  { 1327, 0xeddf }, { 1340, 0xe7f1 }, { 1351, 0x683a }, { 1358, 0xa8e7 },
+  /* 0x4F00 */
+  { 1367, 0xee0b }, { 1376, 0x3443 }, { 1382, 0x8000 }, { 1383, 0x75d1 },
+  /* 0x4F40 */
+  { 1392, 0xe3c8 }, { 1400, 0xfffb }, { 1415, 0x9611 }, { 1421, 0xfde9 },
+  /* 0x4F80 */
+  { 1433, 0xad6c }, { 1442, 0x2dd6 }, { 1451, 0xe803 }, { 1457, 0xc064 },
+  /* 0x4FC0 */
+  { 1462, 0xce3c }, { 1471, 0xad97 }, { 1481, 0xc07b }, { 1489, 0x456e },
+  /* 0x5000 */
+  { 1497, 0xea67 }, { 1507, 0xd75f }, { 1519, 0x7ffe }, { 1533, 0x0a40 },
+  /* 0x5040 */
+  { 1536, 0xc3cf }, { 1546, 0x14e9 }, { 1553, 0x1468 }, { 1558, 0x2175 },
+  /* 0x5080 */
+  { 1565, 0x2121 }, { 1569, 0x177e }, { 1579, 0x3408 }, { 1583, 0x4cbe },
+  /* 0x50C0 */
+  { 1592, 0xf6b4 }, { 1602, 0x4673 }, { 1610, 0x62ea }, { 1618, 0x0a2c },
+  /* 0x5100 */
+  { 1623, 0x0b5f }, { 1632, 0xcdf4 }, { 1642, 0x0402 }, { 1644, 0x9ca4 },
+  /* 0x5140 */
+  { 1651, 0x7ffb }, { 1665, 0x14b5 }, { 1672, 0x7f25 }, { 1682, 0x19ea },
+  /* 0x5180 */
+  { 1690, 0xbe6d }, { 1701, 0x23ef }, { 1711, 0x3f7d }, { 1723, 0x30ff },
+  /* 0x51C0 */
+  { 1733, 0x3e78 }, { 1742, 0x7840 }, { 1747, 0x66c7 }, { 1756, 0x677b },
+  /* 0x5200 */
+  { 1767, 0x4ddf }, { 1778, 0x20fe }, { 1786, 0x46b0 }, { 1792, 0x0fc9 },
+  /* 0x5240 */
+  { 1800, 0xbe98 }, { 1809, 0x78f0 }, { 1817, 0x963a }, { 1825, 0xa0bf },
+  /* 0x5280 */
+  { 1834, 0x239c }, { 1841, 0x891e }, { 1848, 0xbe59 }, { 1858, 0x5e32 },
+  /* 0x52C0 */
+  { 1866, 0x37aa }, { 1875, 0xebe7 }, { 1887, 0x00dd }, { 1893, 0xcfad },
+  /* 0x5300 */
+  { 1904, 0xade7 }, { 1915, 0x36e1 }, { 1923, 0x841b }, { 1929, 0xcf2a },
+  /* 0x5340 */
+  { 1938, 0x27ef }, { 1949, 0x559e }, { 1958, 0xd2cb }, { 1967, 0xadbb },
+  /* 0x5380 */
+  { 1978, 0x0014 }, { 1980, 0xa548 }, { 1986, 0x6371 }, { 1994, 0x08dd },
+  /* 0x53C0 */
+  { 2001, 0x7f0d }, { 2011, 0x8ef0 }, { 2019, 0xff3e }, { 2032, 0x05ff },
+  /* 0x5400 */
+  { 2042, 0xff1a }, { 2053, 0xe807 }, { 2060, 0x7bd1 }, { 2070, 0x7b40 },
+  /* 0x5440 */
+  { 2077, 0x674d }, { 2086, 0x8022 }, { 2089, 0x1d44 }, { 2095, 0xb8fb },
+  /* 0x5480 */
+  { 2106, 0xfd51 }, { 2116, 0x1065 }, { 2121, 0xfb77 }, { 2134, 0xf58c },
+  /* 0x54C0 */
+  { 2143, 0x03df }, { 2152, 0x0100 }, { 2153, 0xf366 }, { 2163, 0xa40e },
+  /* 0x5500 */
+  { 2169, 0xc2d3 }, { 2177, 0x0051 }, { 2180, 0xc800 }, { 2183, 0x532a },
+  /* 0x5540 */
+  { 2190, 0x94f3 }, { 2199, 0x70c9 }, { 2206, 0x001b }, { 2210, 0x7800 },
+  /* 0x5580 */
+  { 2214, 0x4fdf }, { 2226, 0xf702 }, { 2234, 0x7f80 }, { 2242, 0x8041 },
+  /* 0x55C0 */
+  { 2245, 0x52b0 }, { 2251, 0xb416 }, { 2258, 0x021c }, { 2262, 0x6280 },
+  /* 0x5600 */
+  { 2266, 0x43c0 }, { 2271, 0x09d1 }, { 2277, 0x8300 }, { 2280, 0xa9d7 },
+  /* 0x5640 */
+  { 2290, 0x5285 }, { 2296, 0x4809 }, { 2300, 0xbd51 }, { 2309, 0x0556 },
+  /* 0x5680 */
+  { 2315, 0x95c1 }, { 2322, 0x6630 }, { 2328, 0x7325 }, { 2336, 0x105c },
+  /* 0x56C0 */
+  { 2341, 0x672f }, { 2351, 0xcd8a }, { 2359, 0x4109 }, { 2363, 0xa6cd },
+  /* 0x5700 */
+  { 2372, 0xaf19 }, { 2381, 0x916c }, { 2388, 0xa3ca }, { 2396, 0x0999 },
+  /* 0x5740 */
+  { 2402, 0xf4e5 }, { 2412, 0x0003 }, { 2414, 0x8752 }, { 2421, 0x98b9 },
+  /* 0x5780 */
+  { 2429, 0x0b04 }, { 2433, 0x7408 }, { 2438, 0x151d }, { 2445, 0x0109 },
+  /* 0x57C0 */
+  { 2448, 0xd9c9 }, { 2457, 0xd0dc }, { 2465, 0x2059 }, { 2470, 0xbff1 },
+  /* 0x5800 */
+  { 2482, 0x0e75 }, { 2490, 0x6220 }, { 2494, 0x8493 }, { 2500, 0x2637 },
+  /* 0x5840 */
+  { 2508, 0x1e03 }, { 2514, 0x4796 }, { 2522, 0x0a96 }, { 2528, 0x5225 },
+  /* 0x5880 */
+  { 2534, 0xae28 }, { 2541, 0xf099 }, { 2549, 0x4f00 }, { 2554, 0x4f0a },
+  /* 0x58C0 */
+  { 2561, 0x74aa }, { 2569, 0xd7be }, { 2581, 0xda35 }, { 2590, 0x3e9f },
+  /* 0x5900 */
+  { 2601, 0xbe64 }, { 2610, 0x1f71 }, { 2619, 0x7eb4 }, { 2629, 0x6186 },
+  /* 0x5940 */
+  { 2635, 0xc3d0 }, { 2642, 0xadb3 }, { 2652, 0x77a5 }, { 2662, 0x3178 },
+  /* 0x5980 */
+  { 2669, 0x2c1e }, { 2676, 0xaa4c }, { 2683, 0x5138 }, { 2689, 0x5a04 },
+  /* 0x59C0 */
+  { 2694, 0x2b48 }, { 2700, 0x761f }, { 2710, 0x4df8 }, { 2719, 0x8940 },
+  /* 0x5A00 */
+  { 2723, 0x320a }, { 2728, 0x958a }, { 2735, 0xa2a9 }, { 2742, 0x1060 },
+  /* 0x5A40 */
+  { 2745, 0x0243 }, { 2749, 0x0420 }, { 2751, 0x34e4 }, { 2758, 0xc480 },
+  /* 0x5A80 */
+  { 2762, 0x0810 }, { 2764, 0xdc04 }, { 2770, 0x0085 }, { 2773, 0xf42a },
+  /* 0x5AC0 */
+  { 2781, 0x1a16 }, { 2787, 0x14c1 }, { 2792, 0x426b }, { 2799, 0x0c21 },
+  /* 0x5B00 */
+  { 2803, 0x1b01 }, { 2808, 0x02c0 }, { 2811, 0x3424 }, { 2816, 0x4055 },
+  /* 0x5B40 */
+  { 2821, 0x102b }, { 2826, 0xbdf7 }, { 2839, 0x8b78 }, { 2847, 0xb52b },
+  /* 0x5B80 */
+  { 2856, 0xbbbb }, { 2868, 0xbfe8 }, { 2879, 0x507c }, { 2886, 0x8379 },
+  /* 0x5BC0 */
+  { 2894, 0x52fd }, { 2904, 0xe95d }, { 2914, 0x5bf6 }, { 2925, 0xe56b },
+  /* 0x5C00 */
+  { 2935, 0xeffe }, { 2949, 0x444e }, { 2955, 0x2b1d }, { 2963, 0xff03 },
+  /* 0x5C40 */
+  { 2973, 0xed63 }, { 2983, 0xc82b }, { 2990, 0xd3bf }, { 3002, 0x1643 },
+  /* 0x5C80 */
+  { 3008, 0x9500 }, { 3012, 0x8013 }, { 3016, 0x3fcf }, { 3028, 0x5dea },
+  /* 0x5CC0 */
+  { 3038, 0x0aa0 }, { 3042, 0x0205 }, { 3045, 0xa703 }, { 3052, 0x2c51 },
+  /* 0x5D00 */
+  { 3058, 0x68c0 }, { 3063, 0xaff3 }, { 3075, 0x0ad5 }, { 3082, 0x0202 },
+  /* 0x5D40 */
+  { 3084, 0x5cc4 }, { 3091, 0x100d }, { 3095, 0xb602 }, { 3101, 0x0049 },
+  /* 0x5D80 */
+  { 3104, 0x1996 }, { 3111, 0x2295 }, { 3117, 0x5095 }, { 3123, 0x3795 },
+  /* 0x5DC0 */
+  { 3132, 0x3a00 }, { 3136, 0x69ce }, { 3145, 0x4bff }, { 3157, 0x68be },
+  /* 0x5E00 */
+  { 3166, 0x184d }, { 3172, 0xaf76 }, { 3183, 0xe820 }, { 3188, 0x61c9 },
+  /* 0x5E40 */
+  { 3195, 0x52b9 }, { 3203, 0xc1f0 }, { 3210, 0x781e }, { 3218, 0xfffc },
+  /* 0x5E80 */
+  { 3232, 0x849a }, { 3238, 0x14e0 }, { 3243, 0x3ce1 }, { 3251, 0xc3e0 },
+  /* 0x5EC0 */
+  { 3258, 0x8f4e }, { 3267, 0xae4d }, { 3276, 0x130f }, { 3283, 0xffdb },
+  /* 0x5F00 */
+  { 3297, 0xff9f }, { 3311, 0xf9fb }, { 3324, 0xa2e8 }, { 3331, 0x71f2 },
+  /* 0x5F40 */
+  { 3340, 0x55a3 }, { 3348, 0x33da }, { 3357, 0x3ede }, { 3368, 0xf28f },
+  /* 0x5F80 */
+  { 3378, 0x9fbf }, { 3391, 0x538f }, { 3400, 0xe797 }, { 3411, 0x33b8 },
+  /* 0x5FC0 */
+  { 3419, 0x3ab8 }, { 3427, 0x73dc }, { 3437, 0xca17 }, { 3445, 0xb92b },
+  /* 0x6000 */
+  { 3454, 0xe000 }, { 3457, 0x3bf5 }, { 3468, 0x8ff7 }, { 3480, 0x042a },
+  /* 0x6040 */
+  { 3484, 0x3cce }, { 3493, 0x8625 }, { 3499, 0xbf3d }, { 3511, 0x80a1 },
+  /* 0x6080 */
+  { 3515, 0x3e1a }, { 3523, 0xecf4 }, { 3533, 0x07c9 }, { 3540, 0x717f },
+  /* 0x60C0 */
+  { 3551, 0x09e0 }, { 3556, 0xbf3a }, { 3567, 0x418b }, { 3573, 0x0fff },
+  /* 0x6100 */
+  { 3585, 0xe34b }, { 3594, 0xde2d }, { 3604, 0x1982 }, { 3609, 0xf491 },
+  /* 0x6140 */
+  { 3617, 0x7dd6 }, { 3628, 0xa728 }, { 3635, 0xc9ad }, { 3644, 0x50fb },
+  /* 0x6180 */
+  { 3653, 0x6484 }, { 3658, 0x07df }, { 3668, 0x7bb0 }, { 3677, 0x5644 },
+  /* 0x61C0 */
+  { 3683, 0x3fc8 }, { 3692, 0xa021 }, { 3696, 0x0048 }, { 3698, 0xf5f4 },
+  /* 0x6200 */
+  { 3709, 0x7701 }, { 3716, 0xec77 }, { 3727, 0xc64e }, { 3735, 0xc91d },
+  /* 0x6240 */
+  { 3743, 0x7bcb }, { 3754, 0x4d6e }, { 3763, 0xe11b }, { 3771, 0xda4a },
+  /* 0x6280 */
+  { 3779, 0x063d }, { 3786, 0x5bfe }, { 3798, 0x1840 }, { 3801, 0x3a22 },
+  /* 0x62C0 */
+  { 3807, 0xb7f4 }, { 3818, 0x3bff }, { 3831, 0xf003 }, { 3837, 0xf0ea },
+  /* 0x6300 */
+  { 3846, 0x378e }, { 3855, 0x8303 }, { 3860, 0x8980 }, { 3864, 0xfe24 },
+  /* 0x6340 */
+  { 3873, 0xf21a }, { 3881, 0x12a1 }, { 3886, 0x5ba0 }, { 3893, 0x1cc4 },
+  /* 0x6380 */
+  { 3899, 0xd319 }, { 3907, 0x8b54 }, { 3914, 0x1faf }, { 3925, 0x6834 },
+  /* 0x63C0 */
+  { 3931, 0x8259 }, { 3937, 0x1c75 }, { 3945, 0x7a2b }, { 3954, 0x04f4 },
+  /* 0x6400 */
+  { 3960, 0xa240 }, { 3964, 0x50d9 }, { 3971, 0xb364 }, { 3979, 0x4450 },
+  /* 0x6440 */
+  { 3983, 0x4004 }, { 3985, 0x2d02 }, { 3990, 0xa281 }, { 3995, 0x2748 },
+  /* 0x6480 */
+  { 4001, 0x0188 }, { 4004, 0xe42e }, { 4012, 0x6a30 }, { 4018, 0xda05 },
+  /* 0x64C0 */
+  { 4025, 0x7cb6 }, { 4035, 0x05b5 }, { 4042, 0x90ff }, { 4052, 0xecd6 },
+  /* 0x6500 */
+  { 4062, 0x8031 }, { 4066, 0x7150 }, { 4072, 0x9e1c }, { 4080, 0xcbf4 },
+  /* 0x6540 */
+  { 4090, 0xa130 }, { 4095, 0x63f2 }, { 4104, 0x18cc }, { 4110, 0x05b5 },
+  /* 0x6580 */
+  { 4117, 0x57be }, { 4128, 0xba83 }, { 4136, 0xb8b2 }, { 4144, 0xb3a5 },
+  /* 0x65C0 */
+  { 4153, 0x9a7e }, { 4163, 0x0a94 }, { 4168, 0x33e7 }, { 4178, 0x1e06 },
+  /* 0x6600 */
+  { 4184, 0xd7dd }, { 4196, 0xd038 }, { 4202, 0xadb7 }, { 4213, 0x947b },
+  /* 0x6640 */
+  { 4222, 0xdb3e }, { 4233, 0xee86 }, { 4242, 0xfffe }, { 4257, 0x0dd9 },
+  /* 0x6680 */
+  { 4265, 0x639b }, { 4274, 0x23c7 }, { 4282, 0x6845 }, { 4288, 0xdb36 },
+  /* 0x66C0 */
+  { 4298, 0x03d2 }, { 4304, 0x3e40 }, { 4310, 0x1341 }, { 4315, 0xffbd },
+  /* 0x6700 */
+  { 4329, 0xab2b }, { 4338, 0xeafc }, { 4349, 0x7dc0 }, { 4357, 0xa5da },
+  /* 0x6740 */
+  { 4366, 0xf3c2 }, { 4375, 0xf25b }, { 4385, 0xa47f }, { 4395, 0xd8ff },
+  /* 0x6780 */
+  { 4407, 0x1aa2 }, { 4413, 0x3dad }, { 4423, 0x8247 }, { 4429, 0x0bdd },
+  /* 0x67C0 */
+  { 4438, 0xc55b }, { 4447, 0x6f9f }, { 4459, 0xd294 }, { 4466, 0xdabb },
+  /* 0x6800 */
+  { 4477, 0x001e }, { 4481, 0xe1c9 }, { 4489, 0x3e06 }, { 4496, 0x7b1e },
+  /* 0x6840 */
+  { 4506, 0x737f }, { 4518, 0xbabf }, { 4530, 0x4888 }, { 4534, 0xd4f4 },
+  /* 0x6880 */
+  { 4543, 0xa02e }, { 4549, 0xbfd9 }, { 4561, 0xaded }, { 4572, 0x1e7f },
+  /* 0x68C0 */
+  { 4583, 0xbf78 }, { 4594, 0x87f5 }, { 4604, 0xf1bb }, { 4615, 0x1e87 },
+  /* 0x6900 */
+  { 4623, 0xfdbb }, { 4636, 0x1e04 }, { 4641, 0x056e }, { 4648, 0xaa71 },
+  /* 0x6940 */
+  { 4656, 0x0644 }, { 4660, 0x76b8 }, { 4669, 0xff1f }, { 4682, 0xf7bc },
+  /* 0x6980 */
+  { 4694, 0x4407 }, { 4699, 0x1976 }, { 4707, 0x60e1 }, { 4713, 0xdc97 },
+  /* 0x69C0 */
+  { 4723, 0xfc8b }, { 4733, 0x634b }, { 4741, 0xef8c }, { 4751, 0xea7c },
+  /* 0x6A00 */
+  { 4761, 0x9c24 }, { 4767, 0xeebe }, { 4779, 0x4e0e }, { 4786, 0xef7d },
+  /* 0x6A40 */
+  { 4799, 0x4bf0 }, { 4807, 0x8b45 }, { 4814, 0x0856 }, { 4819, 0xc50c },
+  /* 0x6A80 */
+  { 4825, 0x6a19 }, { 4832, 0xf093 }, { 4840, 0x5c2f }, { 4849, 0x2908 },
+  /* 0x6AC0 */
+  { 4853, 0x004e }, { 4857, 0xfc1b }, { 4867, 0x1590 }, { 4872, 0x2c0e },
+  /* 0x6B00 */
+  { 4878, 0x8c30 }, { 4883, 0xe8c7 }, { 4892, 0x908b }, { 4898, 0x67a4 },
+  /* 0x6B40 */
+  { 4906, 0x56c8 }, { 4913, 0x8b59 }, { 4921, 0x96ff }, { 4933, 0x8fb8 },
+  /* 0x6B80 */
+  { 4942, 0x2e5f }, { 4952, 0x4960 }, { 4957, 0xee10 }, { 4964, 0xfcbe },
+  /* 0x6BC0 */
+  { 4976, 0xebe1 }, { 4986, 0x8ddc }, { 4995, 0xd8c0 }, { 5001, 0x800a },
+  /* 0x6C00 */
+  { 5004, 0xc524 }, { 5010, 0x089b }, { 5016, 0x0018 }, { 5018, 0xc5f8 },
+  /* 0x6C40 */
+  { 5027, 0x6007 }, { 5032, 0xfea1 }, { 5042, 0x2585 }, { 5048, 0x645d },
+  /* 0x6C80 */
+  { 5056, 0x337e }, { 5066, 0x1ffd }, { 5078, 0x6c06 }, { 5084, 0xff0a },
+  /* 0x6CC0 */
+  { 5094, 0x1676 }, { 5102, 0x3ef9 }, { 5113, 0xff2f }, { 5126, 0x080b },
+  /* 0x6D00 */
+  { 5130, 0x5c11 }, { 5136, 0xca84 }, { 5142, 0xcef0 }, { 5151, 0xfb7e },
+  /* 0x6D40 */
+  { 5164, 0x0032 }, { 5167, 0x5f00 }, { 5173, 0x5679 }, { 5182, 0x0391 },
+  /* 0x6D80 */
+  { 5187, 0x77a7 }, { 5198, 0x1b3a }, { 5206, 0xdc00 }, { 5211, 0x9134 },
+  /* 0x6DC0 */
+  { 5217, 0xd9f5 }, { 5228, 0xef67 }, { 5240, 0x5f52 }, { 5249, 0x1eea },
+  /* 0x6E00 */
+  { 5258, 0x0fa0 }, { 5264, 0xeea8 }, { 5273, 0xfaff }, { 5287, 0x5554 },
+  /* 0x6E40 */
+  { 5294, 0xff18 }, { 5304, 0xd9da }, { 5314, 0xc888 }, { 5319, 0xc044 },
+  /* 0x6E80 */
+  { 5323, 0x9005 }, { 5327, 0xb149 }, { 5334, 0x8ca4 }, { 5340, 0xa4d6 },
+  /* 0x6EC0 */
+  { 5348, 0x5ebe }, { 5359, 0x623a }, { 5366, 0x9800 }, { 5369, 0xcb94 },
+  /* 0x6F00 */
+  { 5377, 0x9646 }, { 5384, 0x053b }, { 5391, 0x9c2d }, { 5399, 0xd16e },
+  /* 0x6F40 */
+  { 5408, 0x0022 }, { 5410, 0xdf96 }, { 5421, 0xe157 }, { 5430, 0x7511 },
+  /* 0x6F80 */
+  { 5437, 0x7157 }, { 5446, 0x81d3 }, { 5453, 0x84bb }, { 5461, 0x526a },
+  /* 0x6FC0 */
+  { 5468, 0x07cf }, { 5477, 0xcd30 }, { 5484, 0xda13 }, { 5492, 0x566b },
+  /* 0x7000 */
+  { 5501, 0x8ee3 }, { 5510, 0xed22 }, { 5518, 0x11c8 }, { 5523, 0x5605 },
+  /* 0x7040 */
+  { 5529, 0x5c88 }, { 5535, 0x6112 }, { 5540, 0xda38 }, { 5548, 0x7161 },
+  /* 0x7080 */
+  { 5555, 0x4662 }, { 5561, 0x82a4 }, { 5566, 0xf810 }, { 5572, 0x0f8a },
+  /* 0x70C0 */
+  { 5579, 0x8d00 }, { 5583, 0xb31a }, { 5591, 0x1010 }, { 5593, 0x2202 },
+  /* 0x7100 */
+  { 5596, 0x93d8 }, { 5604, 0x5610 }, { 5609, 0xc843 }, { 5615, 0x1043 },
+  /* 0x7140 */
+  { 5619, 0x56c0 }, { 5625, 0x526f }, { 5634, 0x53f5 }, { 5644, 0x2000 },
+  /* 0x7180 */
+  { 5645, 0x85b1 }, { 5652, 0x8a74 }, { 5659, 0xd105 }, { 5665, 0x460a },
+  /* 0x71C0 */
+  { 5670, 0x4b1a }, { 5677, 0x92bd }, { 5686, 0x70e1 }, { 5693, 0xda20 },
+  /* 0x7200 */
+  { 5699, 0x20c1 }, { 5703, 0x0821 }, { 5706, 0x3d00 }, { 5711, 0xff75 },
+  /* 0x7240 */
+  { 5724, 0x19c5 }, { 5731, 0xabec }, { 5741, 0xc28e }, { 5748, 0xe314 },
+  /* 0x7280 */
+  { 5755, 0x6087 }, { 5761, 0x0844 }, { 5764, 0xf085 }, { 5771, 0x4247 },
+  /* 0x72C0 */
+  { 5777, 0x505f }, { 5785, 0x0a85 }, { 5790, 0x3207 }, { 5796, 0x3f88 },
+  /* 0x7300 */
+  { 5804, 0x0480 }, { 5806, 0xbbc4 }, { 5815, 0xdfa0 }, { 5824, 0xe2da },
+  /* 0x7340 */
+  { 5833, 0xc030 }, { 5837, 0x0085 }, { 5840, 0xdd48 }, { 5848, 0x1da7 },
+  /* 0x7380 */
+  { 5857, 0x0eb2 }, { 5864, 0xd170 }, { 5871, 0x0b65 }, { 5878, 0x9aac },
+  /* 0x73C0 */
+  { 5886, 0xef25 }, { 5896, 0x4240 }, { 5899, 0x66ab }, { 5908, 0x4702 },
+  /* 0x7400 */
+  { 5913, 0x06ea }, { 5920, 0x0c08 }, { 5923, 0xdd74 }, { 5933, 0x867f },
+  /* 0x7440 */
+  { 5943, 0x28db }, { 5951, 0xfeac }, { 5962, 0xae1d }, { 5971, 0x404b },
+  /* 0x7480 */
+  { 5976, 0x0bea }, { 5984, 0xd385 }, { 5992, 0x0fef }, { 6003, 0xae21 },
+  /* 0x74C0 */
+  { 6010, 0x8700 }, { 6014, 0x5550 }, { 6020, 0xcacd }, { 6029, 0x85c7 },
+  /* 0x7500 */
+  { 6037, 0x703a }, { 6044, 0xd5aa }, { 6053, 0x9d79 }, { 6063, 0x7d8f },
+  /* 0x7540 */
+  { 6074, 0xff51 }, { 6085, 0x3e17 }, { 6094, 0xbef5 }, { 6106, 0xe7df },
+  /* 0x7580 */
+  { 6119, 0xdec6 }, { 6129, 0x2416 }, { 6134, 0x082c }, { 6138, 0xf3af },
+  /* 0x75C0 */
+  { 6150, 0xe4ed }, { 6160, 0xeb3c }, { 6170, 0x529d }, { 6178, 0xd61f },
+  /* 0x7600 */
+  { 6188, 0xab8f }, { 6198, 0xdb68 }, { 6207, 0x21f7 }, { 6216, 0x1839 },
+  /* 0x7640 */
+  { 6222, 0x1bce }, { 6231, 0x1164 }, { 6236, 0xf7b6 }, { 6248, 0x7d47 },
+  /* 0x7680 */
+  { 6258, 0x49db }, { 6267, 0x7e69 }, { 6277, 0xc5c3 }, { 6285, 0x87d1 },
+  /* 0x76C0 */
+  { 6293, 0x776c }, { 6303, 0xd8d4 }, { 6311, 0x55fa }, { 6321, 0x5916 },
+  /* 0x7700 */
+  { 6328, 0x1f92 }, { 6336, 0xce80 }, { 6342, 0x2271 }, { 6348, 0x15f0 },
+  /* 0x7740 */
+  { 6355, 0x60c1 }, { 6360, 0x9d00 }, { 6365, 0x0d6f }, { 6374, 0xf604 },
+  /* 0x7780 */
+  { 6381, 0x4801 }, { 6384, 0xc412 }, { 6389, 0x3635 }, { 6397, 0xba49 },
+  /* 0x77C0 */
+  { 6405, 0x2080 }, { 6407, 0xdc80 }, { 6413, 0xf6fd }, { 6426, 0x1819 },
+  /* 0x7800 */
+  { 6431, 0x3264 }, { 6437, 0x0234 }, { 6441, 0x30e3 }, { 6448, 0x8414 },
+  /* 0x7840 */
+  { 6452, 0xc0a8 }, { 6457, 0x2002 }, { 6459, 0xdd10 }, { 6466, 0x1014 },
+  /* 0x7880 */
+  { 6469, 0x74c2 }, { 6476, 0xe4ba }, { 6485, 0xa698 }, { 6492, 0x5c21 },
+  /* 0x78C0 */
+  { 6498, 0x5d62 }, { 6506, 0x0433 }, { 6511, 0x91d3 }, { 6519, 0x6e94 },
+  /* 0x7900 */
+  { 6527, 0x4083 }, { 6531, 0x1a07 }, { 6537, 0x5c60 }, { 6543, 0x5c13 },
+  /* 0x7940 */
+  { 6550, 0x07e3 }, { 6558, 0xfde9 }, { 6570, 0x21a5 }, { 6576, 0x8684 },
+  /* 0x7980 */
+  { 6581, 0xe433 }, { 6589, 0x2970 }, { 6595, 0x46c2 }, { 6601, 0xef1b },
+  /* 0x79C0 */
+  { 6612, 0x3f87 }, { 6622, 0xc176 }, { 6630, 0x3ada }, { 6639, 0x0801 },
+  /* 0x7A00 */
+  { 6641, 0x6d09 }, { 6648, 0xdfb2 }, { 6659, 0x6001 }, { 6662, 0xfb86 },
+  /* 0x7A40 */
+  { 6672, 0xf2cd }, { 6682, 0xb2c1 }, { 6689, 0x2e8f }, { 6698, 0xa771 },
+  /* 0x7A80 */
+  { 6707, 0x053e }, { 6714, 0x81ed }, { 6722, 0xd609 }, { 6729, 0xde49 },
+  /* 0x7AC0 */
+  { 6738, 0xfdb8 }, { 6749, 0xb62e }, { 6758, 0xadef }, { 6770, 0xa751 },
+  /* 0x7B00 */
+  { 6778, 0x8dd4 }, { 6786, 0x4b06 }, { 6792, 0xf5e1 }, { 6802, 0x2a6a },
+  /* 0x7B40 */
+  { 6809, 0xfbe2 }, { 6820, 0x2077 }, { 6827, 0xf2f1 }, { 6837, 0x863f },
+  /* 0x7B80 */
+  { 6846, 0xa8c0 }, { 6851, 0xffb7 }, { 6865, 0xa402 }, { 6869, 0x1132 },
+  /* 0x7BC0 */
+  { 6874, 0x9ef3 }, { 6885, 0x26d0 }, { 6891, 0x2671 }, { 6898, 0x00c9 },
+  /* 0x7C00 */
+  { 6902, 0xe88b }, { 6910, 0xc09e }, { 6917, 0x0ccb }, { 6924, 0xe1ca },
+  /* 0x7C40 */
+  { 6932, 0xb429 }, { 6939, 0xc3d3 }, { 6948, 0xf233 }, { 6957, 0x4229 },
+  /* 0x7C80 */
+  { 6962, 0xaa0e }, { 6969, 0x89b5 }, { 6977, 0x69f7 }, { 6988, 0xf2ce },
+  /* 0x7CC0 */
+  { 6998, 0x6535 }, { 7006, 0xf3e4 }, { 7016, 0x88c5 }, { 7022, 0x4d74 },
+  /* 0x7D00 */
+  { 7030, 0x2ffd }, { 7042, 0x7fbd }, { 7055, 0xd80f }, { 7063, 0xe62f },
+  /* 0x7D40 */
+  { 7073, 0xd9ff }, { 7086, 0x5e49 }, { 7094, 0x454e }, { 7101, 0xa66f },
+  /* 0x7D80 */
+  { 7111, 0x9b48 }, { 7118, 0xbe88 }, { 7126, 0xfccd }, { 7137, 0xedf7 },
+  /* 0x7DC0 */
+  { 7150, 0x9c85 }, { 7157, 0x77e6 }, { 7168, 0x935b }, { 7177, 0x0a16 },
+  /* 0x7E00 */
+  { 7182, 0x0f32 }, { 7189, 0xe8a7 }, { 7198, 0x59cf }, { 7208, 0x6ea6 },
+  /* 0x7E40 */
+  { 7217, 0x2cea }, { 7225, 0x6674 }, { 7233, 0x2ec2 }, { 7240, 0xfa29 },
+  /* 0x7E80 */
+  { 7249, 0xf7cc }, { 7260, 0x1d5f }, { 7270, 0x0000 }, { 7270, 0x0000 },
+  /* 0x7F00 */
+  { 7270, 0x0000 }, { 7270, 0x0000 }, { 7270, 0x0000 }, { 7270, 0x5d40 },
+  /* 0x7F40 */
+  { 7276, 0xf0b8 }, { 7284, 0x8137 }, { 7291, 0x6f9b }, { 7302, 0x63a5 },
+  /* 0x7F80 */
+  { 7310, 0x55ec }, { 7319, 0x74d3 }, { 7328, 0xe318 }, { 7335, 0xa344 },
+  /* 0x7FC0 */
+  { 7341, 0xd46a }, { 7349, 0x8834 }, { 7354, 0xda6b }, { 7364, 0x1e0d },
+  /* 0x8000 */
+  { 7371, 0x5d7f }, { 7383, 0x13f7 }, { 7393, 0x1152 }, { 7398, 0xb8e9 },
+  /* 0x8040 */
+  { 7407, 0x0448 }, { 7410, 0xc544 }, { 7416, 0x8146 }, { 7421, 0xeaff },
+  /* 0x8080 */
+  { 7434, 0x1af0 }, { 7441, 0x3f48 }, { 7449, 0xb6b6 }, { 7459, 0x0516 },
+  /* 0x80C0 */
+  { 7464, 0x5478 }, { 7471, 0x6fe0 }, { 7480, 0x8073 }, { 7486, 0x393a },
+  /* 0x8100 */
+  { 7494, 0x27e4 }, { 7502, 0x4d40 }, { 7507, 0x9298 }, { 7513, 0x622a },
+  /* 0x8140 */
+  { 7519, 0x4c40 }, { 7523, 0x803b }, { 7529, 0x6be1 }, { 7538, 0x8713 },
+  /* 0x8180 */
+  { 7545, 0x853f }, { 7554, 0x3528 }, { 7560, 0x0319 }, { 7565, 0xed2d },
+  /* 0x81C0 */
+  { 7575, 0xa74f }, { 7585, 0x8fca }, { 7594, 0x35b9 }, { 7603, 0xfc18 },
+  /* 0x8200 */
+  { 7611, 0x77b6 }, { 7622, 0xdbc5 }, { 7632, 0x5e06 }, { 7639, 0x13fc },
+  /* 0x8240 */
+  { 7648, 0x8ae1 }, { 7655, 0xb780 }, { 7662, 0xcd5d }, { 7672, 0xe3d6 },
+  /* 0x8280 */
+  { 7682, 0x6c08 }, { 7687, 0xa20c }, { 7692, 0xfbfa }, { 7705, 0xff9e },
+  /* 0x82C0 */
+  { 7718, 0x0060 }, { 7720, 0xdabe }, { 7731, 0x09ee }, { 7739, 0x6e9a },
+  /* 0x8300 */
+  { 7748, 0x53ff }, { 7760, 0x39c0 }, { 7766, 0xa90c }, { 7772, 0x1777 },
+  /* 0x8340 */
+  { 7782, 0x86b9 }, { 7790, 0x01b7 }, { 7797, 0x000c }, { 7799, 0xb8a8 },
+  /* 0x8380 */
+  { 7806, 0x66e0 }, { 7813, 0xed7c }, { 7824, 0x0f85 }, { 7831, 0xa022 },
+  /* 0x83C0 */
+  { 7835, 0xd6a3 }, { 7844, 0xb15b }, { 7853, 0x8e23 }, { 7860, 0x2a97 },
+  /* 0x8400 */
+  { 7868, 0xfcda }, { 7879, 0x00aa }, { 7883, 0x1605 }, { 7888, 0x3322 },
+  /* 0x8440 */
+  { 7894, 0xc740 }, { 7900, 0x9e86 }, { 7908, 0xfa6e }, { 7919, 0x17eb },
+  /* 0x8480 */
+  { 7929, 0x0836 }, { 7934, 0xd291 }, { 7941, 0xa042 }, { 7945, 0xdf14 },
+  /* 0x84C0 */
+  { 7954, 0xee57 }, { 7965, 0x164b }, { 7972, 0xd480 }, { 7977, 0xb413 },
+  /* 0x8500 */
+  { 7984, 0x1041 }, { 7987, 0xcdba }, { 7997, 0xb87a }, { 8006, 0x6034 },
+  /* 0x8540 */
+  { 8011, 0xcf0b }, { 8020, 0x47aa }, { 8028, 0xa71e }, { 8037, 0xec80 },
+  /* 0x8580 */
+  { 8043, 0x95d3 }, { 8052, 0xba9b }, { 8062, 0xff54 }, { 8073, 0x1681 },
+  /* 0x85C0 */
+  { 8078, 0xee82 }, { 8086, 0xb321 }, { 8093, 0x2672 }, { 8100, 0xcec0 },
+  /* 0x8600 */
+  { 8107, 0x0cf5 }, { 8115, 0x45cf }, { 8124, 0xa296 }, { 8131, 0x9301 },
+  /* 0x8640 */
+  { 8136, 0x6003 }, { 8140, 0xdcf9 }, { 8151, 0x9884 }, { 8156, 0x0ea2 },
+  /* 0x8680 */
+  { 8162, 0x3e80 }, { 8168, 0x312a }, { 8174, 0x8f18 }, { 8181, 0x014b },
+  /* 0x86C0 */
+  { 8186, 0x6ada }, { 8195, 0xcab2 }, { 8203, 0xf258 }, { 8211, 0x7f00 },
+  /* 0x8700 */
+  { 8218, 0x6fed }, { 8230, 0x970f }, { 8239, 0x022a }, { 8243, 0xcc92 },
+  /* 0x8740 */
+  { 8250, 0x5a09 }, { 8256, 0x83aa }, { 8263, 0x4579 }, { 8271, 0x9156 },
+  /* 0x8780 */
+  { 8278, 0x2b84 }, { 8284, 0x8008 }, { 8286, 0xb885 }, { 8293, 0x6c28 },
+  /* 0x87C0 */
+  { 8299, 0x48d3 }, { 8306, 0x8045 }, { 8310, 0xbc69 }, { 8319, 0x4ae4 },
+  /* 0x8800 */
+  { 8326, 0xec6a }, { 8335, 0x807b }, { 8342, 0x418e }, { 8348, 0x1a46 },
+  /* 0x8840 */
+  { 8354, 0x3455 }, { 8361, 0xeb8c }, { 8370, 0x8b1e }, { 8378, 0xe0a5 },
+  /* 0x8880 */
+  { 8385, 0x2906 }, { 8390, 0x43c4 }, { 8396, 0x4c15 }, { 8402, 0xf0b3 },
+  /* 0x88C0 */
+  { 8411, 0xc43f }, { 8420, 0xbb3e }, { 8431, 0x0102 }, { 8433, 0x733f },
+  /* 0x8900 */
+  { 8444, 0x1496 }, { 8450, 0x770d }, { 8459, 0x0ca0 }, { 8463, 0x0bc5 },
+  /* 0x8940 */
+  { 8470, 0x323f }, { 8479, 0xc040 }, { 8482, 0xa455 }, { 8489, 0xc094 },
+  /* 0x8980 */
+  { 8494, 0x8fcb }, { 8504, 0x85d9 }, { 8512, 0x96c2 }, { 8519, 0xa48d },
+  /* 0x89C0 */
+  { 8526, 0x0001 }, { 8527, 0x3554 }, { 8534, 0x08e8 }, { 8539, 0xa15a },
+  /* 0x8A00 */
+  { 8546, 0x550d }, { 8553, 0xa9ff }, { 8565, 0x242e }, { 8571, 0x5cfa },
+  /* 0x8A40 */
+  { 8581, 0x61e2 }, { 8588, 0x6937 }, { 8597, 0x7a4f }, { 8607, 0x122f },
+  /* 0x8A80 */
+  { 8614, 0x32b4 }, { 8621, 0x452b }, { 8628, 0x71fb }, { 8639, 0xd285 },
+  /* 0x8AC0 */
+  { 8646, 0xb894 }, { 8653, 0xdcc5 }, { 8662, 0x68d7 }, { 8671, 0x55da },
+  /* 0x8B00 */
+  { 8680, 0x74b7 }, { 8690, 0xbed1 }, { 8700, 0x3943 }, { 8707, 0x4208 },
+  /* 0x8B40 */
+  { 8710, 0xd24a }, { 8717, 0xdf52 }, { 8727, 0x9a40 }, { 8732, 0xa0d7 },
+  /* 0x8B80 */
+  { 8740, 0x5c0b }, { 8747, 0x767d }, { 8758, 0x0000 }, { 8758, 0x0000 },
+  /* 0x8C00 */
+  { 8758, 0x0000 }, { 8758, 0x0000 }, { 8758, 0x0000 }, { 8758, 0xa680 },
+  /* 0x8C40 */
+  { 8763, 0xd7e2 }, { 8773, 0x04b1 }, { 8778, 0x3f06 }, { 8786, 0x1708 },
+  /* 0x8C80 */
+  { 8791, 0x7624 }, { 8798, 0x6b1c }, { 8806, 0xff97 }, { 8819, 0xb9dd },
+  /* 0x8CC0 */
+  { 8830, 0x659f }, { 8840, 0x5e6a }, { 8849, 0x245f }, { 8857, 0x7d13 },
+  /* 0x8D00 */
+  { 8866, 0xefb0 }, { 8876, 0x085d }, { 8882, 0x0000 }, { 8882, 0x0000 },
+  /* 0x8D40 */
+  { 8882, 0x0000 }, { 8882, 0x0000 }, { 8882, 0x38d0 }, { 8888, 0x009b },
+  /* 0x8D80 */
+  { 8893, 0x0432 }, { 8897, 0x0220 }, { 8899, 0x8148 }, { 8903, 0x4408 },
+  /* 0x8DC0 */
+  { 8906, 0xd944 }, { 8913, 0xaec2 }, { 8921, 0x9d0a }, { 8928, 0xb028 },
+  /* 0x8E00 */
+  { 8933, 0x9740 }, { 8939, 0xe051 }, { 8945, 0x048f }, { 8951, 0x2271 },
+  /* 0x8E40 */
+  { 8957, 0x1f94 }, { 8965, 0x8231 }, { 8970, 0xb01d }, { 8977, 0x1855 },
+  /* 0x8E80 */
+  { 8983, 0x2cb2 }, { 8990, 0x431a }, { 8996, 0xdc02 }, { 9002, 0x486b },
+  /* 0x8EC0 */
+  { 9009, 0x3d61 }, { 9017, 0x8816 }, { 9022, 0x080c }, { 9025, 0x7f00 },
+  /* 0x8F00 */
+  { 9032, 0x1729 }, { 9039, 0xfabc }, { 9050, 0xae40 }, { 9056, 0xcb48 },
+  /* 0x8F40 */
+  { 9063, 0x7675 }, { 9073, 0x9190 }, { 9078, 0x001e }, { 9082, 0x0000 },
+  /* 0x8F80 */
+  { 9082, 0x0000 }, { 9082, 0xd800 }, { 9086, 0xe1d8 }, { 9094, 0x9cf7 },
+  /* 0x8FC0 */
+  { 9105, 0x6476 }, { 9113, 0x043a }, { 9118, 0xef75 }, { 9130, 0x2fb3 },
+  /* 0x9000 */
+  { 9140, 0xf96f }, { 9152, 0xe6fb }, { 9164, 0x608f }, { 9171, 0x53e6 },
+  /* 0x9040 */
+  { 9180, 0xeebe }, { 9192, 0x737f }, { 9204, 0xe32b }, { 9213, 0xb5e4 },
+  /* 0x9080 */
+  { 9222, 0x97bf }, { 9234, 0x0aa3 }, { 9240, 0x854e }, { 9247, 0x416b },
+  /* 0x90C0 */
+  { 9254, 0x45ba }, { 9262, 0xf880 }, { 9268, 0xa916 }, { 9275, 0xe0f4 },
+  /* 0x9100 */
+  { 9283, 0x0055 }, { 9287, 0x5374 }, { 9295, 0xa08c }, { 9300, 0x2697 },
+  /* 0x9140 */
+  { 9308, 0x7fc0 }, { 9317, 0x0bd4 }, { 9324, 0x163e }, { 9332, 0x03bc },
+  /* 0x9180 */
+  { 9339, 0x6aac }, { 9347, 0x5085 }, { 9352, 0xdd14 }, { 9360, 0x157a },
+  /* 0x91C0 */
+  { 9368, 0xfbdb }, { 9381, 0xbdc3 }, { 9391, 0x70fa }, { 9400, 0x9862 },
+  /* 0x9200 */
+  { 9406, 0x6482 }, { 9411, 0x40f3 }, { 9418, 0x1200 }, { 9420, 0x9798 },
+  /* 0x9240 */
+  { 9428, 0xcfbd }, { 9440, 0x4ec3 }, { 9448, 0x01f7 }, { 9456, 0xf102 },
+  /* 0x9280 */
+  { 9462, 0x2329 }, { 9468, 0x9fea }, { 9479, 0x2880 }, { 9482, 0x8284 },
+  /* 0x92C0 */
+  { 9486, 0xd845 }, { 9493, 0x028d }, { 9498, 0x26b1 }, { 9505, 0x9f8c },
+  /* 0x9300 */
+  { 9514, 0xa054 }, { 9519, 0xe723 }, { 9528, 0xdbef }, { 9541, 0x0c24 },
+  /* 0x9340 */
+  { 9545, 0x2f90 }, { 9552, 0x1cd2 }, { 9559, 0x5c31 }, { 9566, 0x502b },
+  /* 0x9380 */
+  { 9572, 0x9900 }, { 9576, 0x4cd0 }, { 9582, 0x708a }, { 9588, 0x0601 },
+  /* 0x93C0 */
+  { 9591, 0x01ca }, { 9596, 0xf1c3 }, { 9605, 0x01b6 }, { 9611, 0x2822 },
+  /* 0x9400 */
+  { 9615, 0x8298 }, { 9620, 0x07d9 }, { 9628, 0x0802 }, { 9630, 0x0d7c },
+  /* 0x9440 */
+  { 9638, 0x0432 }, { 9642, 0x4c0e }, { 9648, 0xac0d }, { 9655, 0xf0a7 },
+  /* 0x9480 */
+  { 9664, 0x0002 }, { 9665, 0x0000 }, { 9665, 0x0000 }, { 9665, 0x0000 },
+  /* 0x9540 */
+  { 9665, 0x0000 }, { 9665, 0x0000 }, { 9665, 0x0000 }, { 9665, 0x0380 },
+  /* 0x9580 */
+  { 9668, 0xfecd }, { 9680, 0x835a }, { 9687, 0x3bfd }, { 9699, 0x7a54 },
+  /* 0x95C0 */
+  { 9707, 0x3d88 }, { 9714, 0x5579 }, { 9723, 0x0026 }, { 9726, 0x0000 },
+  /* 0x9600 */
+  { 9726, 0x0000 }, { 9726, 0x3000 }, { 9728, 0xd502 }, { 9734, 0x981c },
+  /* 0x9640 */
+  { 9740, 0xb817 }, { 9748, 0xf901 }, { 9755, 0x147e }, { 9763, 0x25ed },
+  /* 0x9680 */
+  { 9772, 0xed74 }, { 9782, 0x3fb0 }, { 9791, 0x87b9 }, { 9800, 0x3fdf },
+  /* 0x96C0 */
+  { 9813, 0x7af3 }, { 9824, 0x7f66 }, { 9835, 0x8f0c }, { 9842, 0x0ac5 },
+  /* 0x9700 */
+  { 9848, 0xe5d1 }, { 9857, 0x525a }, { 9864, 0x0498 }, { 9868, 0x6b4d },
+  /* 0x9740 */
+  { 9877, 0xe3d6 }, { 9887, 0x5ee4 }, { 9896, 0x6f57 }, { 9907, 0x161a },
+  /* 0x9780 */
+  { 9913, 0xa872 }, { 9920, 0x5561 }, { 9927, 0x694d }, { 9935, 0x441e },
+  /* 0x97C0 */
+  { 9941, 0x1b4a }, { 9948, 0x5b1a }, { 9956, 0x6002 }, { 9959, 0x887e },
+  /* 0x9800 */
+  { 9967, 0xf57e }, { 9979, 0x45df }, { 9989, 0x383a }, { 9996, 0x399d },
+  /* 0x9840 */
+  { 10005, 0xf8c0 }, { 10012, 0x4ffc }, { 10023, 0x98e0 }, { 10029, 0x001b },
+  /* 0x9880 */
+  { 10033, 0x0000 }, { 10033, 0x0000 }, { 10033, 0xad00 }, { 10038, 0x9dc3 },
+  /* 0x98C0 */
+  { 10047, 0x09dc }, { 10054, 0x9800 }, { 10057, 0xeeaf }, { 10069, 0x701f },
+  /* 0x9900 */
+  { 10077, 0x1728 }, { 10083, 0x7ddd }, { 10095, 0x5113 }, { 10101, 0x7c0e },
+  /* 0x9940 */
+  { 10109, 0x7a67 }, { 10119, 0x91a7 }, { 10127, 0x0001 }, { 10128, 0x0000 },
+  /* 0x9980 */
+  { 10128, 0x0000 }, { 10128, 0x43c0 }, { 10133, 0x7168 }, { 10140, 0xb218 },
+  /* 0x99C0 */
+  { 10146, 0x037a }, { 10153, 0xeb37 }, { 10164, 0x6004 }, { 10167, 0x9b07 },
+  /* 0x9A00 */
+  { 10175, 0xc42e }, { 10182, 0x064e }, { 10188, 0x6911 }, { 10194, 0x41c3 },
+  /* 0x9A40 */
+  { 10200, 0x743d }, { 10209, 0x8da4 }, { 10216, 0x0e34 }, { 10222, 0x0000 },
+  /* 0x9A80 */
+  { 10222, 0x0000 }, { 10222, 0x0000 }, { 10222, 0xa100 }, { 10225, 0x13c1 },
+  /* 0x9AC0 */
+  { 10231, 0xc05b }, { 10238, 0xd17f }, { 10249, 0xee6d }, { 10260, 0x0a92 },
+  /* 0x9B00 */
+  { 10265, 0x114c }, { 10270, 0x9545 }, { 10277, 0xefad }, { 10289, 0x380e },
+  /* 0x9B40 */
+  { 10295, 0xe83e }, { 10304, 0x4512 }, { 10309, 0x9868 }, { 10315, 0x02fc },
+  /* 0x9B80 */
+  { 10322, 0xc418 }, { 10327, 0xc0ce }, { 10334, 0x7dc1 }, { 10343, 0x4316 },
+  /* 0x9BC0 */
+  { 10349, 0xc6c3 }, { 10357, 0x2956 }, { 10364, 0xcdbe }, { 10375, 0x25af },
+  /* 0x9C00 */
+  { 10384, 0x3751 }, { 10392, 0x2f7d }, { 10403, 0xe6be }, { 10414, 0x4ec7 },
+  /* 0x9C40 */
+  { 10423, 0x87e2 }, { 10431, 0xbd9d }, { 10442, 0x6ea9 }, { 10451, 0x05e5 },
+  /* 0x9CC0 */
+  { 10458, 0x0000 }, { 10458, 0x0000 }, { 10458, 0x1ae0 }, { 10464, 0x005d },
+  /* 0x9D00 */
+  { 10469, 0x4bcc }, { 10477, 0xe9a6 }, { 10486, 0x1d48 }, { 10492, 0xc804 },
+  /* 0x9D40 */
+  { 10496, 0x05de }, { 10504, 0xf207 }, { 10512, 0x9a1f }, { 10521, 0x54cd },
+  /* 0x9D80 */
+  { 10529, 0xa690 }, { 10535, 0x0640 }, { 10538, 0x9a12 }, { 10544, 0xbf34 },
+  /* 0x9DC0 */
+  { 10554, 0x82df }, { 10563, 0x86c8 }, { 10569, 0xa0c9 }, { 10575, 0x2714 },
+  /* 0x9E00 */
+  { 10581, 0x2484 }, { 10585, 0x7e20 }, { 10592, 0x0000 }, { 10592, 0x0000 },
+  /* 0x9E40 */
+  { 10592, 0x0000 }, { 10592, 0x0000 }, { 10592, 0x0000 }, { 10592, 0xbb20 },
+  /* 0x9E80 */
+  { 10599, 0x1923 }, { 10605, 0xe8ae }, { 10614, 0xb770 }, { 10623, 0xff30 },
+  /* 0x9EC0 */
+  { 10633, 0xf018 }, { 10639, 0xfb17 }, { 10650, 0xc1a1 }, { 10656, 0xbad0 },
+  /* 0x9F00 */
+  { 10664, 0x418c }, { 10669, 0x02a9 }, { 10674, 0x9003 }, { 10678, 0x6e80 },
+  /* 0x9F40 */
+  { 10684, 0xcc62 }, { 10691, 0xa1bc }, { 10699, 0x36cf }, { 10709, 0x00e5 },
+  /* 0x9F80 */
+  { 10714, 0x2000 }, { 10715, 0x30b1 }, { 10721, 0x0005 }, { 10723, 0x0000 },
+  /* 0xF900 */
+  { 10723, 0x0000 }, { 10723, 0x2000 }, { 10724, 0x0300 }, { 10726, 0x0040 },
+  /* 0xF940 */
+  { 10727, 0x0000 }, { 10727, 0x0000 }, { 10727, 0x0000 }, { 10727, 0x0001 },
+  /* 0xF9C0 */
+  { 10728, 0x0000 }, { 10728, 0x1001 }, { 10730, 0x0000 }, { 10730, 0x0000 },
+  /* 0xFA00 */
+  { 10730, 0x8000 }, { 10731, 0x8e7b }, { 10741, 0x0057 }, { 10746, 0xffff },
+  /* 0xFA40 */
+  { 10762, 0xffff }, { 10778, 0xffff }, { 10794, 0x07ff }, { 10805, 0x0000 },
+  /* 0xFE40 */
+  { 10805, 0x0060 }, { 10807, 0x0000 }, { 10807, 0x0000 }, { 10807, 0x0000 },
+  /* 0xFF00 */
+  { 10807, 0xfffe }, { 10822, 0xffff }, { 10838, 0xffff }, { 10854, 0xffff },
+  /* 0xFF40 */
+  { 10870, 0xffff }, { 10886, 0xffff }, { 10902, 0x0001 }, { 10903, 0x0000 },
+  /* 0xFFC0 */
+  { 10903, 0x0000 }, { 10903, 0x0000 }, { 10903, 0x0028 }, { 10905, 0x0000 },
+  /* 0x20000 */
+  { 10905, 0x0800 }, { 10906, 0x0000 }, { 10906, 0x0000 }, { 10906, 0x0000 },
+  /* 0x20080 */
+  { 10906, 0x0200 }, { 10907, 0x0000 }, { 10907, 0x0014 }, { 10909, 0x0000 },
+  /* 0x20180 */
+  { 10909, 0x0000 }, { 10909, 0x0000 }, { 10909, 0x0004 }, { 10910, 0x0000 },
+  /* 0x20200 */
+  { 10910, 0x0000 }, { 10910, 0x0008 }, { 10911, 0x0000 }, { 10911, 0x0000 },
+  /* 0x20300 */
+  { 10911, 0x0000 }, { 10911, 0x0000 }, { 10911, 0x0800 }, { 10912, 0x0000 },
+  /* 0x20340 */
+  { 10912, 0x0000 }, { 10912, 0x0000 }, { 10912, 0x0000 }, { 10912, 0x0002 },
+  /* 0x20380 */
+  { 10913, 0x0002 }, { 10914, 0x0000 }, { 10914, 0x0000 }, { 10914, 0x0000 },
+  /* 0x203C0 */
+  { 10914, 0x0000 }, { 10914, 0x0000 }, { 10914, 0x0000 }, { 10914, 0x0200 },
+  /* 0x20440 */
+  { 10915, 0x0400 }, { 10916, 0x0000 }, { 10916, 0x0000 }, { 10916, 0x0000 },
+  /* 0x20500 */
+  { 10916, 0x0200 }, { 10917, 0x0000 }, { 10917, 0x0000 }, { 10917, 0x0000 },
+  /* 0x205C0 */
+  { 10917, 0x0000 }, { 10917, 0x0040 }, { 10918, 0x0000 }, { 10918, 0x0000 },
+  /* 0x20600 */
+  { 10918, 0x0000 }, { 10918, 0x0000 }, { 10918, 0x0100 }, { 10919, 0x0000 },
+  /* 0x20740 */
+  { 10919, 0x8000 }, { 10920, 0x0000 }, { 10920, 0x0000 }, { 10920, 0x0000 },
+  /* 0x20800 */
+  { 10920, 0x0080 }, { 10921, 0x0000 }, { 10921, 0x0000 }, { 10921, 0x0400 },
+  /* 0x20880 */
+  { 10922, 0x0000 }, { 10922, 0x0000 }, { 10922, 0x0000 }, { 10922, 0x0200 },
+  /* 0x20940 */
+  { 10923, 0x0000 }, { 10923, 0x0000 }, { 10923, 0x0000 }, { 10923, 0x1000 },
+  /* 0x20980 */
+  { 10924, 0x0000 }, { 10924, 0x2000 }, { 10925, 0x0000 }, { 10925, 0x0000 },
+  /* 0x20AC0 */
+  { 10925, 0x0000 }, { 10925, 0x0008 }, { 10926, 0x0000 }, { 10926, 0x0000 },
+  /* 0x20B00 */
+  { 10926, 0x0000 }, { 10926, 0x2000 }, { 10927, 0x0000 }, { 10927, 0x0000 },
+  /* 0x20B80 */
+  { 10927, 0x0000 }, { 10927, 0x8000 }, { 10928, 0x0000 }, { 10928, 0x0000 },
+  /* 0x20D40 */
+  { 10928, 0x0020 }, { 10929, 0x0000 }, { 10929, 0x0000 }, { 10929, 0x0000 },
+  /* 0x20DC0 */
+  { 10929, 0x0000 }, { 10929, 0x0000 }, { 10929, 0x0002 }, { 10930, 0x0000 },
+  /* 0x20E40 */
+  { 10930, 0x0000 }, { 10930, 0x0000 }, { 10930, 0x2010 }, { 10932, 0x0000 },
+  /* 0x20E80 */
+  { 10932, 0x0000 }, { 10932, 0x0020 }, { 10933, 0x0000 }, { 10933, 0x0000 },
+  /* 0x20F40 */
+  { 10933, 0x0000 }, { 10933, 0x8000 }, { 10934, 0x0000 }, { 10934, 0x0000 },
+  /* 0x21200 */
+  { 10934, 0x0002 }, { 10935, 0x0000 }, { 10935, 0x0000 }, { 10935, 0x2000 },
+  /* 0x21240 */
+  { 10936, 0x0000 }, { 10936, 0x0020 }, { 10937, 0x0000 }, { 10937, 0x0810 },
+  /* 0x212C0 */
+  { 10939, 0x0000 }, { 10939, 0x0080 }, { 10940, 0x0010 }, { 10941, 0x2000 },
+  /* 0x21300 */
+  { 10942, 0x0000 }, { 10942, 0x0800 }, { 10943, 0x0000 }, { 10943, 0x0040 },
+  /* 0x21340 */
+  { 10944, 0x0010 }, { 10945, 0x0000 }, { 10945, 0x0000 }, { 10945, 0x0000 },
+  /* 0x213C0 */
+  { 10945, 0x0010 }, { 10946, 0x0000 }, { 10946, 0x0000 }, { 10946, 0x0000 },
+  /* 0x21440 */
+  { 10946, 0x0000 }, { 10946, 0x0000 }, { 10946, 0x6000 }, { 10948, 0x0000 },
+  /* 0x215C0 */
+  { 10948, 0x0000 }, { 10948, 0x0080 }, { 10949, 0x0000 }, { 10949, 0x0000 },
+  /* 0x21640 */
+  { 10949, 0x0080 }, { 10950, 0x0000 }, { 10950, 0x0000 }, { 10950, 0x0000 },
+  /* 0x21680 */
+  { 10950, 0x0000 }, { 10950, 0x0000 }, { 10950, 0x0000 }, { 10950, 0x0010 },
+  /* 0x21700 */
+  { 10951, 0x0040 }, { 10952, 0x0000 }, { 10952, 0x0000 }, { 10952, 0x0000 },
+  /* 0x21740 */
+  { 10952, 0x0004 }, { 10953, 0x0000 }, { 10953, 0x0000 }, { 10953, 0x0000 },
+  /* 0x21880 */
+  { 10953, 0x0000 }, { 10953, 0x0000 }, { 10953, 0x0000 }, { 10953, 0x2000 },
+  /* 0x219C0 */
+  { 10954, 0x0008 }, { 10955, 0x0000 }, { 10955, 0x0000 }, { 10955, 0x0000 },
+  /* 0x21C40 */
+  { 10955, 0x0000 }, { 10955, 0x0040 }, { 10956, 0x0000 }, { 10956, 0x0000 },
+  /* 0x21D00 */
+  { 10956, 0x0000 }, { 10956, 0x0000 }, { 10956, 0x2000 }, { 10957, 0x0000 },
+  /* 0x21D40 */
+  { 10957, 0x0020 }, { 10958, 0x0000 }, { 10958, 0x0004 }, { 10959, 0x0100 },
+  /* 0x21D80 */
+  { 10960, 0x0000 }, { 10960, 0x1004 }, { 10962, 0x0002 }, { 10963, 0x0080 },
+  /* 0x21DC0 */
+  { 10964, 0x0000 }, { 10964, 0x0000 }, { 10964, 0x0001 }, { 10965, 0x0000 },
+  /* 0x21E00 */
+  { 10965, 0x0000 }, { 10965, 0x0000 }, { 10965, 0x0000 }, { 10965, 0x0018 },
+  /* 0x21F00 */
+  { 10967, 0x0000 }, { 10967, 0x4000 }, { 10968, 0x0000 }, { 10968, 0x0000 },
+  /* 0x21F40 */
+  { 10968, 0x0000 }, { 10968, 0x0000 }, { 10968, 0x0000 }, { 10968, 0x0040 },
+  /* 0x21FC0 */
+  { 10969, 0x0000 }, { 10969, 0x0000 }, { 10969, 0x0000 }, { 10969, 0x0400 },
+  /* 0x22140 */
+  { 10970, 0x0000 }, { 10970, 0x0000 }, { 10970, 0x0000 }, { 10970, 0x0800 },
+  /* 0x22200 */
+  { 10971, 0x0000 }, { 10971, 0x0100 }, { 10972, 0x0000 }, { 10972, 0x0000 },
+  /* 0x22300 */
+  { 10972, 0x0000 }, { 10972, 0x4000 }, { 10973, 0x0000 }, { 10973, 0x0000 },
+  /* 0x22380 */
+  { 10973, 0x0000 }, { 10973, 0x0000 }, { 10973, 0x2000 }, { 10974, 0x0000 },
+  /* 0x226C0 */
+  { 10974, 0x0000 }, { 10974, 0x0000 }, { 10974, 0x0000 }, { 10974, 0x0008 },
+  /* 0x22840 */
+  { 10975, 0x0000 }, { 10975, 0x0800 }, { 10976, 0x0000 }, { 10976, 0x0000 },
+  /* 0x22880 */
+  { 10976, 0x0000 }, { 10976, 0x0000 }, { 10976, 0x0800 }, { 10977, 0x0000 },
+  /* 0x22980 */
+  { 10977, 0x8000 }, { 10978, 0x0000 }, { 10978, 0x0000 }, { 10978, 0x0000 },
+  /* 0x22A80 */
+  { 10978, 0x0000 }, { 10978, 0x0000 }, { 10978, 0x0000 }, { 10978, 0x0100 },
+  /* 0x22B40 */
+  { 10979, 0x8040 }, { 10981, 0x0001 }, { 10982, 0x0000 }, { 10982, 0x0000 },
+  /* 0x22B80 */
+  { 10982, 0x0000 }, { 10982, 0x0000 }, { 10982, 0x0040 }, { 10983, 0x0000 },
+  /* 0x22C00 */
+  { 10983, 0x0000 }, { 10983, 0x2000 }, { 10984, 0x0010 }, { 10985, 0x0000 },
+  /* 0x22DC0 */
+  { 10985, 0x0000 }, { 10985, 0x0000 }, { 10985, 0x0002 }, { 10986, 0x0000 },
+  /* 0x23180 */
+  { 10986, 0x0000 }, { 10986, 0x0000 }, { 10986, 0x0000 }, { 10986, 0x0040 },
+  /* 0x231C0 */
+  { 10987, 0x0018 }, { 10989, 0x0000 }, { 10989, 0x0000 }, { 10989, 0x0020 },
+  /* 0x23340 */
+  { 10990, 0x0000 }, { 10990, 0x0000 }, { 10990, 0x0000 }, { 10990, 0x0004 },
+  /* 0x233C0 */
+  { 10991, 0x0000 }, { 10991, 0x842d }, { 10997, 0x0010 }, { 10998, 0x0000 },
+  /* 0x23440 */
+  { 10998, 0x0c00 }, { 11000, 0x0002 }, { 11001, 0x0020 }, { 11002, 0x0000 },
+  /* 0x234C0 */
+  { 11002, 0x0000 }, { 11002, 0x0000 }, { 11002, 0x0010 }, { 11003, 0x0000 },
+  /* 0x23540 */
+  { 11003, 0x0000 }, { 11003, 0x0400 }, { 11004, 0x0000 }, { 11004, 0x0000 },
+  /* 0x23580 */
+  { 11004, 0x0000 }, { 11004, 0x0010 }, { 11005, 0x0000 }, { 11005, 0x0000 },
+  /* 0x235C0 */
+  { 11005, 0x0010 }, { 11006, 0x0000 }, { 11006, 0x0000 }, { 11006, 0x0000 },
+  /* 0x23600 */
+  { 11006, 0x0000 }, { 11006, 0x0000 }, { 11006, 0x0000 }, { 11006, 0x0700 },
+  /* 0x23640 */
+  { 11009, 0x0080 }, { 11010, 0x0000 }, { 11010, 0x0000 }, { 11010, 0x0000 },
+  /* 0x23700 */
+  { 11010, 0x1000 }, { 11011, 0x1000 }, { 11012, 0x0000 }, { 11012, 0x8000 },
+  /* 0x23740 */
+  { 11013, 0x0000 }, { 11013, 0x0000 }, { 11013, 0x0018 }, { 11015, 0x0000 },
+  /* 0x237C0 */
+  { 11015, 0x0000 }, { 11015, 0x0000 }, { 11015, 0x0080 }, { 11016, 0x8000 },
+  /* 0x23800 */
+  { 11017, 0x0000 }, { 11017, 0x0000 }, { 11017, 0x0010 }, { 11018, 0x2000 },
+  /* 0x23A80 */
+  { 11019, 0x0000 }, { 11019, 0x0100 }, { 11020, 0x0000 }, { 11020, 0x0000 },
+  /* 0x23C40 */
+  { 11020, 0x0000 }, { 11020, 0x0000 }, { 11020, 0x0000 }, { 11020, 0x8000 },
+  /* 0x23CC0 */
+  { 11021, 0x0000 }, { 11021, 0x0000 }, { 11021, 0x0000 }, { 11021, 0x4000 },
+  /* 0x23D00 */
+  { 11022, 0x4001 }, { 11024, 0x0000 }, { 11024, 0x0000 }, { 11024, 0x0000 },
+  /* 0x23D40 */
+  { 11024, 0x0001 }, { 11025, 0x0000 }, { 11025, 0x0000 }, { 11025, 0x0000 },
+  /* 0x23DC0 */
+  { 11025, 0x0000 }, { 11025, 0x0008 }, { 11026, 0x0000 }, { 11026, 0x0600 },
+  /* 0x23F40 */
+  { 11028, 0x0000 }, { 11028, 0x0000 }, { 11028, 0x0000 }, { 11028, 0x4000 },
+  /* 0x24080 */
+  { 11029, 0x0000 }, { 11029, 0x0040 }, { 11030, 0x0000 }, { 11030, 0x0000 },
+  /* 0x24100 */
+  { 11030, 0x0008 }, { 11031, 0x0000 }, { 11031, 0x0000 }, { 11031, 0x0000 },
+  /* 0x241C0 */
+  { 11031, 0x0040 }, { 11032, 0x0000 }, { 11032, 0x0000 }, { 11032, 0x4000 },
+  /* 0x24380 */
+  { 11033, 0x0000 }, { 11033, 0x0000 }, { 11033, 0x0000 }, { 11033, 0x1000 },
+  /* 0x24600 */
+  { 11034, 0x0000 }, { 11034, 0x0000 }, { 11034, 0x0200 }, { 11035, 0x0000 },
+  /* 0x24680 */
+  { 11035, 0x0000 }, { 11035, 0x0000 }, { 11035, 0x0020 }, { 11036, 0x0000 },
+  /* 0x247C0 */
+  { 11036, 0x0000 }, { 11036, 0x0000 }, { 11036, 0x0000 }, { 11036, 0x0002 },
+  /* 0x24880 */
+  { 11037, 0x0000 }, { 11037, 0x0040 }, { 11038, 0x0000 }, { 11038, 0x0000 },
+  /* 0x24A40 */
+  { 11038, 0x2000 }, { 11039, 0x0000 }, { 11039, 0x0000 }, { 11039, 0x0000 },
+  /* 0x24B40 */
+  { 11039, 0x0000 }, { 11039, 0x0040 }, { 11040, 0x8000 }, { 11041, 0x0000 },
+  /* 0x24C00 */
+  { 11041, 0x0000 }, { 11041, 0x0040 }, { 11042, 0x0000 }, { 11042, 0x0000 },
+  /* 0x24D00 */
+  { 11042, 0x0000 }, { 11042, 0x0010 }, { 11043, 0x0000 }, { 11043, 0x0000 },
+  /* 0x24E00 */
+  { 11043, 0x4000 }, { 11044, 0x0000 }, { 11044, 0x0000 }, { 11044, 0x0080 },
+  /* 0x24E40 */
+  { 11045, 0x0000 }, { 11045, 0x0000 }, { 11045, 0x0400 }, { 11046, 0x0000 },
+  /* 0x24E80 */
+  { 11046, 0x0800 }, { 11047, 0x0000 }, { 11047, 0x0000 }, { 11047, 0x0000 },
+  /* 0x25040 */
+  { 11047, 0x0400 }, { 11048, 0x0020 }, { 11049, 0x0000 }, { 11049, 0x0000 },
+  /* 0x25100 */
+  { 11049, 0x0000 }, { 11049, 0x0000 }, { 11049, 0x0004 }, { 11050, 0x0000 },
+  /* 0x25180 */
+  { 11050, 0x0000 }, { 11050, 0x0000 }, { 11050, 0x0200 }, { 11051, 0x0000 },
+  /* 0x251C0 */
+  { 11051, 0x2000 }, { 11052, 0x0000 }, { 11052, 0x0020 }, { 11053, 0x0000 },
+  /* 0x25200 */
+  { 11053, 0x0000 }, { 11053, 0x4000 }, { 11054, 0x0000 }, { 11054, 0x0000 },
+  /* 0x25240 */
+  { 11054, 0x1000 }, { 11055, 0x0000 }, { 11055, 0x0000 }, { 11055, 0x0000 },
+  /* 0x25400 */
+  { 11055, 0x0000 }, { 11055, 0x0000 }, { 11055, 0x4000 }, { 11056, 0x0000 },
+  /* 0x25480 */
+  { 11056, 0x4000 }, { 11057, 0x0000 }, { 11057, 0x0000 }, { 11057, 0x0000 },
+  /* 0x254C0 */
+  { 11057, 0x0000 }, { 11057, 0x0200 }, { 11058, 0x0000 }, { 11058, 0x0000 },
+  /* 0x25500 */
+  { 11058, 0x4000 }, { 11059, 0x0000 }, { 11059, 0x0000 }, { 11059, 0x0000 },
+  /* 0x25580 */
+  { 11059, 0x0000 }, { 11059, 0x0000 }, { 11059, 0x0080 }, { 11060, 0x0000 },
+  /* 0x25740 */
+  { 11060, 0x0000 }, { 11060, 0x0000 }, { 11060, 0x0000 }, { 11060, 0x0002 },
+  /* 0x25780 */
+  { 11061, 0x0000 }, { 11061, 0x0000 }, { 11061, 0x0200 }, { 11062, 0x0010 },
+  /* 0x259C0 */
+  { 11063, 0x0010 }, { 11064, 0x0010 }, { 11065, 0x0000 }, { 11065, 0x0000 },
+  /* 0x25AC0 */
+  { 11065, 0x0000 }, { 11065, 0x0000 }, { 11065, 0x0018 }, { 11067, 0x0002 },
+  /* 0x25B80 */
+  { 11068, 0x0000 }, { 11068, 0x0000 }, { 11068, 0x0000 }, { 11068, 0x0004 },
+  /* 0x25C40 */
+  { 11069, 0x0800 }, { 11070, 0x0000 }, { 11070, 0x0010 }, { 11071, 0x0000 },
+  /* 0x25D80 */
+  { 11071, 0x0000 }, { 11071, 0x0000 }, { 11071, 0x0002 }, { 11072, 0x0000 },
+  /* 0x25E00 */
+  { 11072, 0x0000 }, { 11072, 0x0000 }, { 11072, 0x4000 }, { 11073, 0x0000 },
+  /* 0x25E40 */
+  { 11073, 0x0000 }, { 11073, 0x0040 }, { 11074, 0x0024 }, { 11076, 0x0000 },
+  /* 0x25EC0 */
+  { 11076, 0x0004 }, { 11077, 0x0100 }, { 11078, 0x0100 }, { 11079, 0x0000 },
+  /* 0x25F00 */
+  { 11079, 0x0000 }, { 11079, 0x0000 }, { 11079, 0x0008 }, { 11080, 0x0000 },
+  /* 0x25F40 */
+  { 11080, 0x0000 }, { 11080, 0x1000 }, { 11081, 0x0000 }, { 11081, 0x0000 },
+  /* 0x25FC0 */
+  { 11081, 0x0000 }, { 11081, 0x0010 }, { 11082, 0x0001 }, { 11083, 0x0800 },
+  /* 0x26000 */
+  { 11084, 0x1000 }, { 11085, 0x0080 }, { 11086, 0x0000 }, { 11086, 0x0000 },
+  /* 0x26040 */
+  { 11086, 0x0000 }, { 11086, 0x0000 }, { 11086, 0x0001 }, { 11087, 0x0000 },
+  /* 0x260C0 */
+  { 11087, 0x0000 }, { 11087, 0x0000 }, { 11087, 0x2000 }, { 11088, 0x0000 },
+  /* 0x26240 */
+  { 11088, 0x0000 }, { 11088, 0x0000 }, { 11088, 0x0000 }, { 11088, 0x0001 },
+  /* 0x26280 */
+  { 11089, 0x0040 }, { 11090, 0x0000 }, { 11090, 0x0000 }, { 11090, 0x0000 },
+  /* 0x26340 */
+  { 11090, 0x1000 }, { 11091, 0x0000 }, { 11091, 0x0000 }, { 11091, 0x0000 },
+  /* 0x26400 */
+  { 11091, 0x0004 }, { 11092, 0x0000 }, { 11092, 0x0000 }, { 11092, 0x0000 },
+  /* 0x26640 */
+  { 11092, 0x0000 }, { 11092, 0x0000 }, { 11092, 0x0000 }, { 11092, 0x4000 },
+  /* 0x26680 */
+  { 11093, 0x0000 }, { 11093, 0x0000 }, { 11093, 0x0000 }, { 11093, 0x0001 },
+  /* 0x26700 */
+  { 11094, 0x0000 }, { 11094, 0x2000 }, { 11095, 0x0000 }, { 11095, 0x0000 },
+  /* 0x268C0 */
+  { 11095, 0x0000 }, { 11095, 0x2000 }, { 11096, 0x0400 }, { 11097, 0x0000 },
+  /* 0x26940 */
+  { 11097, 0x0000 }, { 11097, 0x0002 }, { 11098, 0x8000 }, { 11099, 0x0000 },
+  /* 0x269C0 */
+  { 11099, 0x0000 }, { 11099, 0x2000 }, { 11100, 0x0000 }, { 11100, 0x0000 },
+  /* 0x26A00 */
+  { 11100, 0x0000 }, { 11100, 0x4000 }, { 11101, 0x0000 }, { 11101, 0x0000 },
+  /* 0x26A40 */
+  { 11101, 0x0000 }, { 11101, 0x0100 }, { 11102, 0x0000 }, { 11102, 0x0000 },
+  /* 0x26A80 */
+  { 11102, 0x1000 }, { 11103, 0x0000 }, { 11103, 0x0000 }, { 11103, 0x0080 },
+  /* 0x26AC0 */
+  { 11104, 0x0000 }, { 11104, 0x0000 }, { 11104, 0x0000 }, { 11104, 0x8000 },
+  /* 0x26C00 */
+  { 11105, 0x0000 }, { 11105, 0x0000 }, { 11105, 0x0200 }, { 11106, 0x0000 },
+  /* 0x26C40 */
+  { 11106, 0x0000 }, { 11106, 0x0000 }, { 11106, 0x0000 }, { 11106, 0x0008 },
+  /* 0x26CC0 */
+  { 11107, 0x0000 }, { 11107, 0x2000 }, { 11108, 0x0000 }, { 11108, 0x0000 },
+  /* 0x26E40 */
+  { 11108, 0x0001 }, { 11109, 0x0000 }, { 11109, 0x0020 }, { 11110, 0x0000 },
+  /* 0x26F80 */
+  { 11110, 0x0000 }, { 11110, 0x0010 }, { 11111, 0x0000 }, { 11111, 0x0000 },
+  /* 0x26FC0 */
+  { 11111, 0x0000 }, { 11111, 0x0000 }, { 11111, 0x0000 }, { 11111, 0x01c0 },
+  /* 0x270C0 */
+  { 11114, 0x0000 }, { 11114, 0x0000 }, { 11114, 0x0000 }, { 11114, 0x0010 },
+  /* 0x27100 */
+  { 11115, 0x2000 }, { 11116, 0x0000 }, { 11116, 0x0000 }, { 11116, 0x0200 },
+  /* 0x273C0 */
+  { 11117, 0x0000 }, { 11117, 0x0c00 }, { 11119, 0x0000 }, { 11119, 0x4000 },
+  /* 0x27400 */
+  { 11120, 0x0000 }, { 11120, 0x0001 }, { 11121, 0x0000 }, { 11121, 0x0000 },
+  /* 0x27440 */
+  { 11121, 0x0200 }, { 11122, 0x0000 }, { 11122, 0x0000 }, { 11122, 0x0000 },
+  /* 0x27600 */
+  { 11122, 0x0000 }, { 11122, 0x0030 }, { 11124, 0x0000 }, { 11124, 0x0002 },
+  /* 0x27680 */
+  { 11125, 0x0010 }, { 11126, 0x0008 }, { 11127, 0x0000 }, { 11127, 0x0000 },
+  /* 0x27700 */
+  { 11127, 0x4000 }, { 11128, 0x0000 }, { 11128, 0x0008 }, { 11129, 0x0000 },
+  /* 0x27740 */
+  { 11129, 0x0000 }, { 11129, 0x0004 }, { 11130, 0x0000 }, { 11130, 0x0000 },
+  /* 0x27980 */
+  { 11130, 0x0020 }, { 11131, 0x0000 }, { 11131, 0x0000 }, { 11131, 0x0000 },
+  /* 0x27A80 */
+  { 11131, 0x0010 }, { 11132, 0x0000 }, { 11132, 0x0000 }, { 11132, 0x0000 },
+  /* 0x27B80 */
+  { 11132, 0x0000 }, { 11132, 0x0000 }, { 11132, 0x0000 }, { 11132, 0x4008 },
+  /* 0x27BC0 */
+  { 11134, 0x0080 }, { 11135, 0x0000 }, { 11135, 0x0000 }, { 11135, 0x0000 },
+  /* 0x27C80 */
+  { 11135, 0x0000 }, { 11135, 0x0000 }, { 11135, 0x0000 }, { 11135, 0x0100 },
+  /* 0x27D80 */
+  { 11136, 0x0000 }, { 11136, 0x0000 }, { 11136, 0x0001 }, { 11137, 0x0000 },
+  /* 0x27E00 */
+  { 11137, 0x0000 }, { 11137, 0x0001 }, { 11138, 0x0000 }, { 11138, 0x0000 },
+  /* 0x27F80 */
+  { 11138, 0x0000 }, { 11138, 0x0000 }, { 11138, 0x0000 }, { 11138, 0x0080 },
+  /* 0x28080 */
+  { 11139, 0x0400 }, { 11140, 0x0000 }, { 11140, 0x0000 }, { 11140, 0x0800 },
+  /* 0x28240 */
+  { 11141, 0x0000 }, { 11141, 0x0000 }, { 11141, 0x0000 }, { 11141, 0x0080 },
+  /* 0x28280 */
+  { 11142, 0x0004 }, { 11143, 0x0000 }, { 11143, 0x0000 }, { 11143, 0x0000 },
+  /* 0x282C0 */
+  { 11143, 0x0000 }, { 11143, 0x0000 }, { 11143, 0x0000 }, { 11143, 0x0008 },
+  /* 0x283C0 */
+  { 11144, 0x2000 }, { 11145, 0x0000 }, { 11145, 0x0000 }, { 11145, 0x0000 },
+  /* 0x28400 */
+  { 11145, 0x1000 }, { 11146, 0x0000 }, { 11146, 0x0000 }, { 11146, 0x0000 },
+  /* 0x28440 */
+  { 11146, 0x0000 }, { 11146, 0x0020 }, { 11147, 0x0000 }, { 11147, 0x0000 },
+  /* 0x28540 */
+  { 11147, 0x0000 }, { 11147, 0x0000 }, { 11147, 0x0800 }, { 11148, 0x0000 },
+  /* 0x285C0 */
+  { 11148, 0x0300 }, { 11150, 0x0000 }, { 11150, 0x0000 }, { 11150, 0x0000 },
+  /* 0x286C0 */
+  { 11150, 0x0000 }, { 11150, 0x0080 }, { 11151, 0x0000 }, { 11151, 0x0400 },
+  /* 0x28940 */
+  { 11152, 0x0240 }, { 11154, 0x0000 }, { 11154, 0x0800 }, { 11155, 0x0000 },
+  /* 0x28980 */
+  { 11155, 0x0180 }, { 11157, 0x0000 }, { 11157, 0x0000 }, { 11157, 0x0c00 },
+  /* 0x28A00 */
+  { 11159, 0x0000 }, { 11159, 0x4000 }, { 11160, 0x0200 }, { 11161, 0x0000 },
+  /* 0x28A40 */
+  { 11161, 0x0008 }, { 11162, 0x0000 }, { 11162, 0x0000 }, { 11162, 0x0002 },
+  /* 0x28A80 */
+  { 11163, 0x0000 }, { 11163, 0x0200 }, { 11164, 0x0000 }, { 11164, 0x0000 },
+  /* 0x28AC0 */
+  { 11164, 0x2000 }, { 11165, 0x2000 }, { 11166, 0x0010 }, { 11167, 0x0000 },
+  /* 0x28BC0 */
+  { 11167, 0x0002 }, { 11168, 0x0000 }, { 11168, 0x8000 }, { 11169, 0x0000 },
+  /* 0x28D00 */
+  { 11169, 0x0000 }, { 11169, 0x0001 }, { 11170, 0x0000 }, { 11170, 0x0000 },
+  /* 0x28D40 */
+  { 11170, 0x0000 }, { 11170, 0x0000 }, { 11170, 0x0000 }, { 11170, 0x0002 },
+  /* 0x28DC0 */
+  { 11171, 0x0000 }, { 11171, 0x0000 }, { 11171, 0x0000 }, { 11171, 0x0800 },
+  /* 0x28E00 */
+  { 11172, 0x0000 }, { 11172, 0x8000 }, { 11173, 0x0000 }, { 11173, 0x0040 },
+  /* 0x28E80 */
+  { 11174, 0x0200 }, { 11175, 0x0000 }, { 11175, 0x0000 }, { 11175, 0x0000 },
+  /* 0x28EC0 */
+  { 11175, 0x0000 }, { 11175, 0x0000 }, { 11175, 0x0800 }, { 11176, 0x0000 },
+  /* 0x28F00 */
+  { 11176, 0x0000 }, { 11176, 0x0000 }, { 11176, 0x0000 }, { 11176, 0x0004 },
+  /* 0x28FC0 */
+  { 11177, 0x0000 }, { 11177, 0x0000 }, { 11177, 0x0000 }, { 11177, 0x0100 },
+  /* 0x29280 */
+  { 11178, 0x0000 }, { 11178, 0x0000 }, { 11178, 0x0001 }, { 11179, 0x0002 },
+  /* 0x29480 */
+  { 11180, 0x0000 }, { 11180, 0x0001 }, { 11181, 0x0000 }, { 11181, 0x0000 },
+  /* 0x295C0 */
+  { 11181, 0x8000 }, { 11182, 0x0000 }, { 11182, 0x0000 }, { 11182, 0x0000 },
+  /* 0x29640 */
+  { 11182, 0x0000 }, { 11182, 0x0000 }, { 11182, 0x0000 }, { 11182, 0x8000 },
+  /* 0x296C0 */
+  { 11183, 0x0000 }, { 11183, 0x0000 }, { 11183, 0x0000 }, { 11183, 0x0001 },
+  /* 0x29700 */
+  { 11184, 0x0000 }, { 11184, 0x0200 }, { 11185, 0x0000 }, { 11185, 0x0000 },
+  /* 0x29740 */
+  { 11185, 0x0000 }, { 11185, 0x0001 }, { 11186, 0x0000 }, { 11186, 0x0000 },
+  /* 0x298C0 */
+  { 11186, 0x0040 }, { 11187, 0x0000 }, { 11187, 0x0000 }, { 11187, 0x0000 },
+  /* 0x29A40 */
+  { 11187, 0x0000 }, { 11187, 0x0000 }, { 11187, 0x0000 }, { 11187, 0x0004 },
+  /* 0x29DC0 */
+  { 11188, 0x0000 }, { 11188, 0x0800 }, { 11189, 0x0000 }, { 11189, 0x0000 },
+  /* 0x29E00 */
+  { 11189, 0x0000 }, { 11189, 0x0020 }, { 11190, 0x0000 }, { 11190, 0x2000 },
+  /* 0x29E40 */
+  { 11191, 0x0200 }, { 11192, 0x0000 }, { 11192, 0x0000 }, { 11192, 0x0000 },
+  /* 0x29E80 */
+  { 11192, 0x0400 }, { 11193, 0x0000 }, { 11193, 0x0000 }, { 11193, 0x0000 },
+  /* 0x29EC0 */
+  { 11193, 0x0010 }, { 11194, 0x0800 }, { 11195, 0x0200 }, { 11196, 0x0000 },
+  /* 0x29FC0 */
+  { 11196, 0x4000 }, { 11197, 0x0000 }, { 11197, 0x0000 }, { 11197, 0x0000 },
+  /* 0x2A000 */
+  { 11197, 0x0000 }, { 11197, 0x0400 }, { 11198, 0x8000 }, { 11199, 0x0000 },
+  /* 0x2A080 */
+  { 11199, 0x0004 }, { 11200, 0x0000 }, { 11200, 0x0000 }, { 11200, 0x0000 },
+  /* 0x2A0C0 */
+  { 11200, 0x0000 }, { 11200, 0x0000 }, { 11200, 0x0000 }, { 11200, 0x0200 },
+  /* 0x2A180 */
+  { 11201, 0x0000 }, { 11201, 0x0001 }, { 11202, 0x0000 }, { 11202, 0x0000 },
+  /* 0x2A380 */
+  { 11202, 0x1000 }, { 11203, 0x0000 }, { 11203, 0x0000 }, { 11203, 0x0000 },
+  /* 0x2A400 */
+  { 11203, 0x0000 }, { 11203, 0x0000 }, { 11203, 0x0000 }, { 11203, 0x0080 },
+  /* 0x2A5C0 */
+  { 11204, 0x0000 }, { 11204, 0x0000 }, { 11204, 0x0000 }, { 11204, 0x0002 },
+  /* 0x2A600 */
+  { 11205, 0x0004 }, { 11206, 0x0400 }, { 11207, 0x0000 }, { 11207, 0x0000 },
+  /* 0x2A680 */
+  { 11207, 0x0000 }, { 11207, 0x0000 }, { 11207, 0x0000 }, { 11207, 0x0004 },
+};
+
+#ifdef __GNUC__
+__inline
+#else
+#ifdef __cplusplus
+inline
+#endif
+#endif
+static ucs4_t jisx0213_to_ucs4 (unsigned int row, unsigned int col)
+{
+  ucs4_t val;
+
+  if (row >= 0x121 && row <= 0x17e)
+    row -= 289;
+  else if (row == 0x221)
+    row -= 451;
+  else if (row >= 0x223 && row <= 0x225)
+    row -= 452;
+  else if (row == 0x228)
+    row -= 454;
+  else if (row >= 0x22c && row <= 0x22f)
+    row -= 457;
+  else if (row >= 0x26e && row <= 0x27e)
+    row -= 519;
+  else
+    return 0x0000;
+
+  if (col >= 0x21 && col <= 0x7e)
+    col -= 0x21;
+  else
+    return 0x0000;
+
+  val = jisx0213_to_ucs_main[row * 94 + col];
+  val = jisx0213_to_ucs_pagestart[val >> 8] + (val & 0xff);
+  if (val == 0xfffd)
+    val = 0x0000;
+  return val;
+}
+
+#ifdef __GNUC__
+__inline
+#else
+#ifdef __cplusplus
+inline
+#endif
+#endif
+static unsigned short ucs4_to_jisx0213 (ucs4_t ucs)
+{
+  if (ucs < (sizeof(jisx0213_from_ucs_level1)/sizeof(jisx0213_from_ucs_level1[0])) << 6) {
+    int index1 = jisx0213_from_ucs_level1[ucs >> 6];
+    if (index1 >= 0) {
+      const Summary16 *summary = &jisx0213_from_ucs_level2_2indx[((index1 << 6) + (ucs & 0x3f)) >> 4];
+      unsigned short used = summary->used;
+      unsigned int i = ucs & 0x0f;
+      if (used & ((unsigned short) 1 << i)) {
+        /* Keep in `used' only the bits 0..i-1. */
+        used &= ((unsigned short) 1 << i) - 1;
+        /* Add `summary->indx' and the number of bits set in `used'. */
+        used = (used & 0x5555) + ((used & 0xaaaa) >> 1);
+        used = (used & 0x3333) + ((used & 0xcccc) >> 2);
+        used = (used & 0x0f0f) + ((used & 0xf0f0) >> 4);
+        used = (used & 0x00ff) + (used >> 8);
+        return jisx0213_from_ucs_level2_data[summary->indx + used];
+      };
+    };
+  }
+  return 0x0000;
+}
+
+#endif /* _JISX0213_H */
diff --git a/graf2d/win32gdk/gdk/src/iconv/johab.h b/graf2d/win32gdk/gdk/src/iconv/johab.h
new file mode 100644
index 00000000000..fb2c17f59e2
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/johab.h
@@ -0,0 +1,139 @@
+/*
+ * Copyright (C) 1999-2001, 2007 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * JOHAB
+ */
+
+/*
+   Conversion between JOHAB codes (s1,s2) and KSX1001 codes (c1,c2):
+   Example. (s1,s2) = 0xD931, (c1,c2) = 0x2121.
+            (s1,s2) = 0xDEF1, (c1,c2) = 0x2C71.
+            (s1,s2) = 0xE031, (c1,c2) = 0x4A21.
+            (s1,s2) = 0xF9FE, (c1,c2) = 0x7D7E.
+   0xD9 <= s1 <= 0xDE || 0xE0 <= s1 <= 0xF9,
+   0x31 <= s2 <= 0x7E || 0x91 <= s2 <= 0xFE,
+   0x21 <= c1 <= 0x2C || 0x4A <= c1 <= 0x7D,
+   0x21 <= c2 <= 0x7E.
+   Invariant:
+     94*(s1 < 0xE0 ? 2*s1-0x1B2 : 2*s1-0x197) + (s2 < 0x91 ? s2-0x31 : s2-0x43)
+     = 94*(c1-0x21)+(c2-0x21)
+   Conversion (s1,s2) -> (c1,c2):
+     t1 := (s1 < 0xE0 ? 2*s1-0x1B2 : 2*s1-0x197)
+     t2 := (s2 < 0x91 ? s2-0x31 : s2-0x43)
+     c1 := t1 + (t2 < 0x5E ? 0 : 1) + 0x21
+     c2 := (t2 < 0x5E ? t2 : t2-0x5E) + 0x21
+   Conversion (c1,c2) -> (s1,s2):
+     t := (c1 < 0x4A ? (c1-0x21+0x1B2) : (c1-0x21+0x197))
+     s1 := t >> 1
+     t2 := (t & 1) * 0x5E + (c2 - 0x21)
+     s2 := (t2 < 0x4E ? t2+0x31 : t2+0x43)
+ */
+
+static int
+johab_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    if (c == 0x5c)
+      *pwc = (ucs4_t) 0x20a9;
+    else
+      *pwc = (ucs4_t) c;
+    return 1;
+  } else if (c < 0xd8) {
+    return johab_hangul_mbtowc(conv,pwc,s,n);
+  } else {
+    unsigned char s1, s2;
+    s1 = c;
+    if ((s1 >= 0xd9 && s1 <= 0xde) || (s1 >= 0xe0 && s1 <= 0xf9)) {
+      if (n < 2)
+        return RET_TOOFEW(0);
+      s2 = s[1];
+      if ((s2 >= 0x31 && s2 <= 0x7e) || (s2 >= 0x91 && s2 <= 0xfe)) {
+        /* In KSC 5601, now KS X 1001, the region s1 = 0xDA, 0xA1 <= s2 <= 0xD3
+           contains the 51 Jamo (Hangul letters). But in the Johab encoding,
+           they have been moved to the Hangul section, see
+           johab_hangul_page31. */
+        if (!(s1 == 0xda && (s2 >= 0xa1 && s2 <= 0xd3))) {
+          unsigned char t1 = (s1 < 0xe0 ? 2*(s1-0xd9) : 2*s1-0x197);
+          unsigned char t2 = (s2 < 0x91 ? s2-0x31 : s2-0x43);
+          unsigned char buf[2];
+          buf[0] = t1 + (t2 < 0x5e ? 0 : 1) + 0x21;
+          buf[1] = (t2 < 0x5e ? t2 : t2-0x5e) + 0x21;
+          return ksc5601_mbtowc(conv,pwc,buf,2);
+        }
+      }
+    }
+    return RET_ILSEQ;
+  }
+}
+
+static int
+johab_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char buf[2];
+  int ret;
+
+  /* Try ASCII variation. */
+  if (wc < 0x0080 && wc != 0x005c) {
+    *r = wc;
+    return 1;
+  }
+  if (wc == 0x20a9) {
+    *r = 0x5c;
+    return 1;
+  }
+
+  /* Try JOHAB Hangul table before KSC5601 table, because the KSC5601 table
+     contains some (2350 out of 11172) Hangul syllables (rows 0x30XX..0x48XX),
+     and we want the search to return the JOHAB Hangul table entry. */
+
+  /* Try JOHAB Hangul. */
+  ret = johab_hangul_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    if (ret != 2) abort();
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = buf[0];
+    r[1] = buf[1];
+    return 2;
+  }
+
+  /* Try KSC5601, now KS X 1001. */
+  ret = ksc5601_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    unsigned char c1, c2;
+    if (ret != 2) abort();
+    if (n < 2)
+      return RET_TOOSMALL;
+    c1 = buf[0];
+    c2 = buf[1];
+    if (((c1 >= 0x21 && c1 <= 0x2c) || (c1 >= 0x4a && c1 <= 0x7d))
+        && (c2 >= 0x21 && c2 <= 0x7e)) {
+      unsigned int t = (c1 < 0x4A ? (c1-0x21+0x1B2) : (c1-0x21+0x197));
+      unsigned char t2 = ((t & 1) ? 0x5e : 0) + (c2 - 0x21);
+      r[0] = t >> 1;
+      r[1] = (t2 < 0x4e ? t2+0x31 : t2+0x43);
+      return 2;
+    }
+  }
+
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/johab_hangul.h b/graf2d/win32gdk/gdk/src/iconv/johab_hangul.h
new file mode 100644
index 00000000000..68368dff1e7
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/johab_hangul.h
@@ -0,0 +1,262 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * JOHAB Hangul
+ *
+ * Ken Lunde writes in his "CJKV Information Processing" book, p. 114:
+ * "Hangul can be composed of two or three jamo (some jamo are considered
+ *  compound). Johab uses 19 initial jamo (consonants), 21 medial jamo (vowels)
+ *  and 27 final jamo (consonants; 28 when you include the "fill" character
+ *  for Hangul containing only two jamo). Multiplying these numbers results in
+ *  11172."
+ *
+ * Structure of the Johab encoding (see p. 181-184):
+ *   bit 15 = 1
+ *   bit 14..10 = initial jamo, only 19+1 out of 32 possible values are used
+ *   bit 9..5 = medial jamo, only 21+1 out of 32 possible values are used
+ *   bit 4..0 = final jamo, only 27+1 out of 32 possible values are used
+ * 
+ * Structure of the Unicode encoding:
+ * grep '^0x\([8-C]...\|D[0-7]..\)' unicode.org-mappings/EASTASIA/KSC/JOHAB.TXT
+ * You see that all characters there are marked "HANGUL LETTER" or "HANGUL
+ * SYLLABLE". If you eliminate the "HANGUL LETTER"s, the table is sorted
+ * in ascending order according to Johab encoding and according to the Unicode
+ * encoding. Now look a little more carefully, and you see that the following
+ * formula holds:
+ *     unicode == 0xAC00
+ *                + 21 * 28 * (jamo_initial_index[(johab >> 10) & 31] - 1)
+ *                + 28 * (jamo_medial_index[(johab >> 5) & 31] - 1)
+ *                + jamo_final_index[johab & 31]
+ * where the index tables are defined as below.
+ */
+
+/* Tables mapping 5-bit groups to jamo letters. */
+/* Note that Jamo XX = UHC 0xA4A0+XX = Unicode 0x3130+XX */
+#define NONE 0xfd
+#define FILL 0xff
+static const unsigned char jamo_initial[32] = {
+  NONE, FILL, 0x01, 0x02, 0x04, 0x07, 0x08, 0x09,
+  0x11, 0x12, 0x13, 0x15, 0x16, 0x17, 0x18, 0x19,
+  0x1a, 0x1b, 0x1c, 0x1d, 0x1e, NONE, NONE, NONE,
+  NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE,
+};
+static const unsigned char jamo_medial[32] = {
+  NONE, NONE, FILL, 0x1f, 0x20, 0x21, 0x22, 0x23,
+  NONE, NONE, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29,
+  NONE, NONE, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  NONE, NONE, 0x30, 0x31, 0x32, 0x33, NONE, NONE,
+};
+static const unsigned char jamo_final[32] = {
+  NONE, FILL, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06,
+  0x07, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, NONE, 0x12, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, NONE, NONE,
+};
+/* Same as jamo_final, except that it excludes characters already
+   contained in jamo_initial. 11 characters instead of 27. */
+static const unsigned char jamo_final_notinitial[32] = {
+  NONE, NONE, NONE, NONE, 0x03, NONE, 0x05, 0x06,
+  NONE, NONE, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, NONE, NONE, NONE, 0x14, NONE, NONE, NONE,
+  NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE,
+};
+
+/* Tables mapping 5-bit groups to packed indices. */
+#define none -1
+#define fill 0
+static const signed char jamo_initial_index[32] = {
+  none, fill, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06,
+  0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e,
+  0x0f, 0x10, 0x11, 0x12, 0x13, none, none, none,
+  none, none, none, none, none, none, none, none,
+};
+static const signed char jamo_medial_index[32] = {
+  none, none, fill, 0x01, 0x02, 0x03, 0x04, 0x05,
+  none, none, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b,
+  none, none, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11,
+  none, none, 0x12, 0x13, 0x14, 0x15, none, none,
+};
+static const signed char jamo_final_index[32] = {
+  none, fill, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06,
+  0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e,
+  0x0f, 0x10, none, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, none, none,
+};
+
+static int
+johab_hangul_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 >= 0x84 && c1 <= 0xd3)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if ((c2 >= 0x41 && c2 < 0x7f) || (c2 >= 0x81 && c2 < 0xff)) {
+        unsigned int johab = (c1 << 8) | c2;
+        unsigned int bitspart1 = (johab >> 10) & 31;
+        unsigned int bitspart2 = (johab >> 5) & 31;
+        unsigned int bitspart3 = johab & 31;
+        int index1 = jamo_initial_index[bitspart1];
+        int index2 = jamo_medial_index[bitspart2];
+        int index3 = jamo_final_index[bitspart3];
+        /* Exclude "none" values. */
+        if (index1 >= 0 && index2 >= 0 && index3 >= 0) {
+          /* Deal with "fill" values in initial or medial position. */
+          if (index1 == fill) {
+            if (index2 == fill) {
+              unsigned char jamo3 = jamo_final_notinitial[bitspart3];
+              if (jamo3 != NONE) {
+                *pwc = (ucs4_t) 0x3130 + jamo3;
+                return 2;
+              }
+            } else if (index3 == fill) {
+              unsigned char jamo2 = jamo_medial[bitspart2];
+              if (jamo2 != NONE && jamo2 != FILL) {
+                *pwc = (ucs4_t) 0x3130 + jamo2;
+                return 2;
+              }
+            }
+            /* Syllables composed only of medial and final don't exist. */
+          } else if (index2 == fill) {
+            if (index3 == fill) {
+              unsigned char jamo1 = jamo_initial[bitspart1];
+              if (jamo1 != NONE && jamo1 != FILL) {
+                *pwc = (ucs4_t) 0x3130 + jamo1;
+                return 2;
+              }
+            }
+            /* Syllables composed only of initial and final don't exist. */
+          } else {
+             /* index1 and index2 are not fill, but index3 may be fill. */
+             /* Nothing more to exclude. All 11172 code points are valid. */
+             *pwc = 0xac00 + ((index1 - 1) * 21 + (index2 - 1)) * 28 + index3;
+             return 2;
+          }
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
+/* 51 Jamo: 19 initial, 21 medial, 11 final not initial. */
+static const unsigned short johab_hangul_page31[51] = {
+          0x8841, 0x8c41, 0x8444, 0x9041, 0x8446, 0x8447, 0x9441, /*0x30-0x37*/
+  0x9841, 0x9c41, 0x844a, 0x844b, 0x844c, 0x844d, 0x844e, 0x844f, /*0x38-0x3f*/
+  0x8450, 0xa041, 0xa441, 0xa841, 0x8454, 0xac41, 0xb041, 0xb441, /*0x40-0x47*/
+  0xb841, 0xbc41, 0xc041, 0xc441, 0xc841, 0xcc41, 0xd041, 0x8461, /*0x48-0x4f*/
+  0x8481, 0x84a1, 0x84c1, 0x84e1, 0x8541, 0x8561, 0x8581, 0x85a1, /*0x50-0x57*/
+  0x85c1, 0x85e1, 0x8641, 0x8661, 0x8681, 0x86a1, 0x86c1, 0x86e1, /*0x58-0x5f*/
+  0x8741, 0x8761, 0x8781, 0x87a1,                                 /*0x60-0x67*/
+};
+
+/* Tables mapping packed indices to 5-bit groups. */
+/* index1+1 = jamo_initial_index[bitspart1]  <==>
+   bitspart1 = jamo_initial_index_inverse[index1] */
+static const char jamo_initial_index_inverse[19] = {
+              0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14,
+};
+/* index2+1 = jamo_medial_index[bitspart2]  <==>
+   bitspart2 = jamo_medial_index_inverse[index2] */
+static const char jamo_medial_index_inverse[21] = {
+                    0x03, 0x04, 0x05, 0x06, 0x07,
+              0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+              0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+              0x1a, 0x1b, 0x1c, 0x1d,
+};
+/* index3 = jamo_final_index[bitspart3]  <==>
+   bitspart3 = jamo_final_index_inverse[index3] */
+static const char jamo_final_index_inverse[28] = {
+        0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11,       0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+};
+
+static int
+johab_hangul_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 2) {
+    if (wc >= 0x3131 && wc < 0x3164) {
+      unsigned short c = johab_hangul_page31[wc-0x3131];
+      r[0] = (c >> 8); r[1] = (c & 0xff);
+      return 2;
+    } else if (wc >= 0xac00 && wc < 0xd7a4) {
+      unsigned int index1;
+      unsigned int index2;
+      unsigned int index3;
+      unsigned short c;
+      unsigned int tmp = wc - 0xac00;
+      index3 = tmp % 28; tmp = tmp / 28;
+      index2 = tmp % 21; tmp = tmp / 21;
+      index1 = tmp;
+      c = (((((1 << 5)
+              | jamo_initial_index_inverse[index1]) << 5)
+            | jamo_medial_index_inverse[index2]) << 5)
+          | jamo_final_index_inverse[index3];
+      r[0] = (c >> 8); r[1] = (c & 0xff);
+      return 2;
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
+
+/*
+ * Decomposition of JOHAB Hangul in one to three Johab Jamo elements.
+ */
+
+/* Decompose wc into r[0..2], and return the number of resulting Jamo elements.
+   Return RET_ILUNI if decomposition is not possible. */
+
+static int johab_hangul_decompose (conv_t conv, ucs4_t* r, ucs4_t wc)
+{
+  unsigned char buf[2];
+  int ret = johab_hangul_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    unsigned int hangul = (buf[0] << 8) | buf[1];
+    unsigned char jamo1 = jamo_initial[(hangul >> 10) & 31];
+    unsigned char jamo2 = jamo_medial[(hangul >> 5) & 31];
+    unsigned char jamo3 = jamo_final[hangul & 31];
+    if ((hangul >> 15) != 1) abort();
+    if (jamo1 != NONE && jamo2 != NONE && jamo3 != NONE) {
+      /* They are not all three == FILL because that would correspond to
+         johab = 0x8441, which doesn't exist. */
+      ucs4_t* p = r;
+      if (jamo1 != FILL)
+        *p++ = 0x3130 + jamo1;
+      if (jamo2 != FILL)
+        *p++ = 0x3130 + jamo2;
+      if (jamo3 != FILL)
+        *p++ = 0x3130 + jamo3;
+      return p-r;
+    }
+  }
+  return RET_ILUNI;
+}
+
+#undef fill
+#undef none
+#undef FILL
+#undef NONE
diff --git a/graf2d/win32gdk/gdk/src/iconv/koi8_r.h b/graf2d/win32gdk/gdk/src/iconv/koi8_r.h
new file mode 100644
index 00000000000..3e435368f19
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/koi8_r.h
@@ -0,0 +1,153 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * KOI8-R
+ */
+
+/* Specification: RFC 1489 */
+
+static const unsigned short koi8_r_2uni[128] = {
+  /* 0x80 */
+  0x2500, 0x2502, 0x250c, 0x2510, 0x2514, 0x2518, 0x251c, 0x2524,
+  0x252c, 0x2534, 0x253c, 0x2580, 0x2584, 0x2588, 0x258c, 0x2590,
+  /* 0x90 */
+  0x2591, 0x2592, 0x2593, 0x2320, 0x25a0, 0x2219, 0x221a, 0x2248,
+  0x2264, 0x2265, 0x00a0, 0x2321, 0x00b0, 0x00b2, 0x00b7, 0x00f7,
+  /* 0xa0 */
+  0x2550, 0x2551, 0x2552, 0x0451, 0x2553, 0x2554, 0x2555, 0x2556,
+  0x2557, 0x2558, 0x2559, 0x255a, 0x255b, 0x255c, 0x255d, 0x255e,
+  /* 0xb0 */
+  0x255f, 0x2560, 0x2561, 0x0401, 0x2562, 0x2563, 0x2564, 0x2565,
+  0x2566, 0x2567, 0x2568, 0x2569, 0x256a, 0x256b, 0x256c, 0x00a9,
+  /* 0xc0 */
+  0x044e, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
+  0x0445, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+  /* 0xd0 */
+  0x043f, 0x044f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0436, 0x0432,
+  0x044c, 0x044b, 0x0437, 0x0448, 0x044d, 0x0449, 0x0447, 0x044a,
+  /* 0xe0 */
+  0x042e, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
+  0x0425, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+  /* 0xf0 */
+  0x041f, 0x042f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0416, 0x0412,
+  0x042c, 0x042b, 0x0417, 0x0428, 0x042d, 0x0429, 0x0427, 0x042a,
+};
+
+static int
+koi8_r_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) koi8_r_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char koi8_r_page00[88] = {
+  0x9a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0xbf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x9c, 0x00, 0x9d, 0x00, 0x00, 0x00, 0x00, 0x9e, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9f, /* 0xf0-0xf7 */
+};
+static const unsigned char koi8_r_page04[88] = {
+  0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xe1, 0xe2, 0xf7, 0xe7, 0xe4, 0xe5, 0xf6, 0xfa, /* 0x10-0x17 */
+  0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, 0xf0, /* 0x18-0x1f */
+  0xf2, 0xf3, 0xf4, 0xf5, 0xe6, 0xe8, 0xe3, 0xfe, /* 0x20-0x27 */
+  0xfb, 0xfd, 0xff, 0xf9, 0xf8, 0xfc, 0xe0, 0xf1, /* 0x28-0x2f */
+  0xc1, 0xc2, 0xd7, 0xc7, 0xc4, 0xc5, 0xd6, 0xda, /* 0x30-0x37 */
+  0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, /* 0x38-0x3f */
+  0xd2, 0xd3, 0xd4, 0xd5, 0xc6, 0xc8, 0xc3, 0xde, /* 0x40-0x47 */
+  0xdb, 0xdd, 0xdf, 0xd9, 0xd8, 0xdc, 0xc0, 0xd1, /* 0x48-0x4f */
+  0x00, 0xa3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+};
+static const unsigned char koi8_r_page22[80] = {
+  0x00, 0x95, 0x96, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x97, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x98, 0x99, 0x00, 0x00, /* 0x60-0x67 */
+};
+static const unsigned char koi8_r_page23[8] = {
+  0x93, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char koi8_r_page25[168] = {
+  0x80, 0x00, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x82, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x83, 0x00, 0x00, 0x00, 0x84, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x85, 0x00, 0x00, 0x00, 0x86, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x87, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x88, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x89, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x8a, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xa0, 0xa1, 0xa2, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, /* 0x50-0x57 */
+  0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, /* 0x58-0x5f */
+  0xb1, 0xb2, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9, /* 0x60-0x67 */
+  0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x8b, 0x00, 0x00, 0x00, 0x8c, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x8d, 0x00, 0x00, 0x00, 0x8e, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x8f, 0x90, 0x91, 0x92, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0x94, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+koi8_r_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00f8)
+    c = koi8_r_page00[wc-0x00a0];
+  else if (wc >= 0x0400 && wc < 0x0458)
+    c = koi8_r_page04[wc-0x0400];
+  else if (wc >= 0x2218 && wc < 0x2268)
+    c = koi8_r_page22[wc-0x2218];
+  else if (wc >= 0x2320 && wc < 0x2328)
+    c = koi8_r_page23[wc-0x2320];
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = koi8_r_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/koi8_ru.h b/graf2d/win32gdk/gdk/src/iconv/koi8_ru.h
new file mode 100644
index 00000000000..e43ae720322
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/koi8_ru.h
@@ -0,0 +1,159 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * KOI8-RU
+ */
+
+static const unsigned short koi8_ru_2uni[128] = {
+  /* 0x80 */
+  0x2500, 0x2502, 0x250c, 0x2510, 0x2514, 0x2518, 0x251c, 0x2524,
+  0x252c, 0x2534, 0x253c, 0x2580, 0x2584, 0x2588, 0x258c, 0x2590,
+  /* 0x90 */
+  0x2591, 0x2592, 0x2593, 0x2320, 0x25a0, 0x2219, 0x221a, 0x2248,
+  0x2264, 0x2265, 0x00a0, 0x2321, 0x00b0, 0x00b2, 0x00b7, 0x00f7,
+  /* 0xa0 */
+  0x2550, 0x2551, 0x2552, 0x0451, 0x0454, 0x2554, 0x0456, 0x0457,
+  0x2557, 0x2558, 0x2559, 0x255a, 0x255b, 0x0491, 0x045e, 0x255e,
+  /* 0xb0 */
+  0x255f, 0x2560, 0x2561, 0x0401, 0x0404, 0x2563, 0x0406, 0x0407,
+  0x2566, 0x2567, 0x2568, 0x2569, 0x256a, 0x0490, 0x040e, 0x00a9,
+  /* 0xc0 */
+  0x044e, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
+  0x0445, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+  /* 0xd0 */
+  0x043f, 0x044f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0436, 0x0432,
+  0x044c, 0x044b, 0x0437, 0x0448, 0x044d, 0x0449, 0x0447, 0x044a,
+  /* 0xe0 */
+  0x042e, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
+  0x0425, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+  /* 0xf0 */
+  0x041f, 0x042f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0416, 0x0412,
+  0x042c, 0x042b, 0x0417, 0x0428, 0x042d, 0x0429, 0x0427, 0x042a,
+};
+
+static int
+koi8_ru_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) koi8_ru_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char koi8_ru_page00[88] = {
+  0x9a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0xbf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x9c, 0x00, 0x9d, 0x00, 0x00, 0x00, 0x00, 0x9e, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9f, /* 0xf0-0xf7 */
+};
+static const unsigned char koi8_ru_page04[152] = {
+  0x00, 0xb3, 0x00, 0x00, 0xb4, 0x00, 0xb6, 0xb7, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbe, 0x00, /* 0x08-0x0f */
+  0xe1, 0xe2, 0xf7, 0xe7, 0xe4, 0xe5, 0xf6, 0xfa, /* 0x10-0x17 */
+  0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, 0xf0, /* 0x18-0x1f */
+  0xf2, 0xf3, 0xf4, 0xf5, 0xe6, 0xe8, 0xe3, 0xfe, /* 0x20-0x27 */
+  0xfb, 0xfd, 0xff, 0xf9, 0xf8, 0xfc, 0xe0, 0xf1, /* 0x28-0x2f */
+  0xc1, 0xc2, 0xd7, 0xc7, 0xc4, 0xc5, 0xd6, 0xda, /* 0x30-0x37 */
+  0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, /* 0x38-0x3f */
+  0xd2, 0xd3, 0xd4, 0xd5, 0xc6, 0xc8, 0xc3, 0xde, /* 0x40-0x47 */
+  0xdb, 0xdd, 0xdf, 0xd9, 0xd8, 0xdc, 0xc0, 0xd1, /* 0x48-0x4f */
+  0x00, 0xa3, 0x00, 0x00, 0xa4, 0x00, 0xa6, 0xa7, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xae, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0xbd, 0xad, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char koi8_ru_page22[80] = {
+  0x00, 0x95, 0x96, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x97, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x98, 0x99, 0x00, 0x00, /* 0x60-0x67 */
+};
+static const unsigned char koi8_ru_page23[8] = {
+  0x93, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char koi8_ru_page25[168] = {
+  0x80, 0x00, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x82, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x83, 0x00, 0x00, 0x00, 0x84, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x85, 0x00, 0x00, 0x00, 0x86, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x87, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x88, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x89, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x8a, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xa0, 0xa1, 0xa2, 0x00, 0xa5, 0x00, 0x00, 0xa8, /* 0x50-0x57 */
+  0xa9, 0xaa, 0xab, 0xac, 0x00, 0x00, 0xaf, 0xb0, /* 0x58-0x5f */
+  0xb1, 0xb2, 0x00, 0xb5, 0x00, 0x00, 0xb8, 0xb9, /* 0x60-0x67 */
+  0xba, 0xbb, 0xbc, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x8b, 0x00, 0x00, 0x00, 0x8c, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x8d, 0x00, 0x00, 0x00, 0x8e, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x8f, 0x90, 0x91, 0x92, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0x94, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+koi8_ru_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00f8)
+    c = koi8_ru_page00[wc-0x00a0];
+  else if (wc >= 0x0400 && wc < 0x0498)
+    c = koi8_ru_page04[wc-0x0400];
+  else if (wc >= 0x2218 && wc < 0x2268)
+    c = koi8_ru_page22[wc-0x2218];
+  else if (wc >= 0x2320 && wc < 0x2328)
+    c = koi8_ru_page23[wc-0x2320];
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = koi8_ru_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/koi8_t.h b/graf2d/win32gdk/gdk/src/iconv/koi8_t.h
new file mode 100644
index 00000000000..0f7a5685294
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/koi8_t.h
@@ -0,0 +1,143 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * KOI8-T
+ */
+
+static const unsigned short koi8_t_2uni[128] = {
+  /* 0x80 */
+  0x049b, 0x0493, 0x201a, 0x0492, 0x201e, 0x2026, 0x2020, 0x2021,
+  0xfffd, 0x2030, 0x04b3, 0x2039, 0x04b2, 0x04b7, 0x04b6, 0xfffd,
+  /* 0x90 */
+  0x049a, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+  0xfffd, 0x2122, 0xfffd, 0x203a, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0xa0 */
+  0xfffd, 0x04ef, 0x04ee, 0x0451, 0x00a4, 0x04e3, 0x00a6, 0x00a7,
+  0xfffd, 0xfffd, 0xfffd, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0xfffd,
+  /* 0xb0 */
+  0x00b0, 0x00b1, 0x00b2, 0x0401, 0xfffd, 0x04e2, 0x00b6, 0x00b7,
+  0xfffd, 0x2116, 0xfffd, 0x00bb, 0xfffd, 0xfffd, 0xfffd, 0x00a9,
+  /* 0xc0 */
+  0x044e, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
+  0x0445, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+  /* 0xd0 */
+  0x043f, 0x044f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0436, 0x0432,
+  0x044c, 0x044b, 0x0437, 0x0448, 0x044d, 0x0449, 0x0447, 0x044a,
+  /* 0xe0 */
+  0x042e, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
+  0x0425, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+  /* 0xf0 */
+  0x041f, 0x042f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0416, 0x0412,
+  0x042c, 0x042b, 0x0417, 0x0428, 0x042d, 0x0429, 0x0427, 0x042a,
+};
+
+static int
+koi8_t_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = koi8_t_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char koi8_t_page00[32] = {
+  0x00, 0x00, 0x00, 0x00, 0xa4, 0x00, 0xa6, 0xa7, /* 0xa0-0xa7 */
+  0x00, 0xbf, 0x00, 0xab, 0xac, 0xad, 0xae, 0x00, /* 0xa8-0xaf */
+  0xb0, 0xb1, 0xb2, 0x00, 0x00, 0x00, 0xb6, 0xb7, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0xbb, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+};
+static const unsigned char koi8_t_page04[240] = {
+  0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xe1, 0xe2, 0xf7, 0xe7, 0xe4, 0xe5, 0xf6, 0xfa, /* 0x10-0x17 */
+  0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, 0xf0, /* 0x18-0x1f */
+  0xf2, 0xf3, 0xf4, 0xf5, 0xe6, 0xe8, 0xe3, 0xfe, /* 0x20-0x27 */
+  0xfb, 0xfd, 0xff, 0xf9, 0xf8, 0xfc, 0xe0, 0xf1, /* 0x28-0x2f */
+  0xc1, 0xc2, 0xd7, 0xc7, 0xc4, 0xc5, 0xd6, 0xda, /* 0x30-0x37 */
+  0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, /* 0x38-0x3f */
+  0xd2, 0xd3, 0xd4, 0xd5, 0xc6, 0xc8, 0xc3, 0xde, /* 0x40-0x47 */
+  0xdb, 0xdd, 0xdf, 0xd9, 0xd8, 0xdc, 0xc0, 0xd1, /* 0x48-0x4f */
+  0x00, 0xa3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0x83, 0x81, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x00, 0x00, 0x8c, 0x8a, 0x00, 0x00, 0x8e, 0x8d, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+  0x00, 0x00, 0xb5, 0xa5, 0x00, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa2, 0xa1, /* 0xe8-0xef */
+};
+static const unsigned char koi8_t_page20[48] = {
+  0x00, 0x00, 0x00, 0x96, 0x97, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x91, 0x92, 0x82, 0x00, 0x93, 0x94, 0x84, 0x00, /* 0x18-0x1f */
+  0x86, 0x87, 0x95, 0x00, 0x00, 0x00, 0x85, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x89, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x8b, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+};
+static const unsigned char koi8_t_page21[24] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb9, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x99, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+};
+
+static int
+koi8_t_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00c0)
+    c = koi8_t_page00[wc-0x00a0];
+  else if (wc >= 0x0400 && wc < 0x04f0)
+    c = koi8_t_page04[wc-0x0400];
+  else if (wc >= 0x2010 && wc < 0x2040)
+    c = koi8_t_page20[wc-0x2010];
+  else if (wc >= 0x2110 && wc < 0x2128)
+    c = koi8_t_page21[wc-0x2110];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/koi8_u.h b/graf2d/win32gdk/gdk/src/iconv/koi8_u.h
new file mode 100644
index 00000000000..0637d5854f4
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/koi8_u.h
@@ -0,0 +1,161 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * KOI8-U
+ */
+
+/* Specification: RFC 2319 */
+
+static const unsigned short koi8_u_2uni[128] = {
+  /* 0x80 */
+  0x2500, 0x2502, 0x250c, 0x2510, 0x2514, 0x2518, 0x251c, 0x2524,
+  0x252c, 0x2534, 0x253c, 0x2580, 0x2584, 0x2588, 0x258c, 0x2590,
+  /* 0x90 */
+  0x2591, 0x2592, 0x2593, 0x2320, 0x25a0, 0x2219, 0x221a, 0x2248,
+  0x2264, 0x2265, 0x00a0, 0x2321, 0x00b0, 0x00b2, 0x00b7, 0x00f7,
+  /* 0xa0 */
+  0x2550, 0x2551, 0x2552, 0x0451, 0x0454, 0x2554, 0x0456, 0x0457,
+  0x2557, 0x2558, 0x2559, 0x255a, 0x255b, 0x0491, 0x255d, 0x255e,
+  /* 0xb0 */
+  0x255f, 0x2560, 0x2561, 0x0401, 0x0404, 0x2563, 0x0406, 0x0407,
+  0x2566, 0x2567, 0x2568, 0x2569, 0x256a, 0x0490, 0x256c, 0x00a9,
+  /* 0xc0 */
+  0x044e, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
+  0x0445, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+  /* 0xd0 */
+  0x043f, 0x044f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0436, 0x0432,
+  0x044c, 0x044b, 0x0437, 0x0448, 0x044d, 0x0449, 0x0447, 0x044a,
+  /* 0xe0 */
+  0x042e, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
+  0x0425, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+  /* 0xf0 */
+  0x041f, 0x042f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0416, 0x0412,
+  0x042c, 0x042b, 0x0417, 0x0428, 0x042d, 0x0429, 0x0427, 0x042a,
+};
+
+static int
+koi8_u_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) koi8_u_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char koi8_u_page00[88] = {
+  0x9a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0xbf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x9c, 0x00, 0x9d, 0x00, 0x00, 0x00, 0x00, 0x9e, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9f, /* 0xf0-0xf7 */
+};
+static const unsigned char koi8_u_page04[152] = {
+  0x00, 0xb3, 0x00, 0x00, 0xb4, 0x00, 0xb6, 0xb7, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xe1, 0xe2, 0xf7, 0xe7, 0xe4, 0xe5, 0xf6, 0xfa, /* 0x10-0x17 */
+  0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, 0xf0, /* 0x18-0x1f */
+  0xf2, 0xf3, 0xf4, 0xf5, 0xe6, 0xe8, 0xe3, 0xfe, /* 0x20-0x27 */
+  0xfb, 0xfd, 0xff, 0xf9, 0xf8, 0xfc, 0xe0, 0xf1, /* 0x28-0x2f */
+  0xc1, 0xc2, 0xd7, 0xc7, 0xc4, 0xc5, 0xd6, 0xda, /* 0x30-0x37 */
+  0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, /* 0x38-0x3f */
+  0xd2, 0xd3, 0xd4, 0xd5, 0xc6, 0xc8, 0xc3, 0xde, /* 0x40-0x47 */
+  0xdb, 0xdd, 0xdf, 0xd9, 0xd8, 0xdc, 0xc0, 0xd1, /* 0x48-0x4f */
+  0x00, 0xa3, 0x00, 0x00, 0xa4, 0x00, 0xa6, 0xa7, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0xbd, 0xad, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char koi8_u_page22[80] = {
+  0x00, 0x95, 0x96, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x97, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x98, 0x99, 0x00, 0x00, /* 0x60-0x67 */
+};
+static const unsigned char koi8_u_page23[8] = {
+  0x93, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char koi8_u_page25[168] = {
+  0x80, 0x00, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x82, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x83, 0x00, 0x00, 0x00, 0x84, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x85, 0x00, 0x00, 0x00, 0x86, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x87, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x88, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x89, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x8a, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0xa0, 0xa1, 0xa2, 0x00, 0xa5, 0x00, 0x00, 0xa8, /* 0x50-0x57 */
+  0xa9, 0xaa, 0xab, 0xac, 0x00, 0xae, 0xaf, 0xb0, /* 0x58-0x5f */
+  0xb1, 0xb2, 0x00, 0xb5, 0x00, 0x00, 0xb8, 0xb9, /* 0x60-0x67 */
+  0xba, 0xbb, 0xbc, 0x00, 0xbe, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x8b, 0x00, 0x00, 0x00, 0x8c, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x8d, 0x00, 0x00, 0x00, 0x8e, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x8f, 0x90, 0x91, 0x92, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0x94, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+};
+
+static int
+koi8_u_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00f8)
+    c = koi8_u_page00[wc-0x00a0];
+  else if (wc >= 0x0400 && wc < 0x0498)
+    c = koi8_u_page04[wc-0x0400];
+  else if (wc >= 0x2218 && wc < 0x2268)
+    c = koi8_u_page22[wc-0x2218];
+  else if (wc >= 0x2320 && wc < 0x2328)
+    c = koi8_u_page23[wc-0x2320];
+  else if (wc >= 0x2500 && wc < 0x25a8)
+    c = koi8_u_page25[wc-0x2500];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/ksc5601.h b/graf2d/win32gdk/gdk/src/iconv/ksc5601.h
new file mode 100644
index 00000000000..fd166232176
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/ksc5601.h
@@ -0,0 +1,3022 @@
+/*
+ * Copyright (C) 1999-2007 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * KSC5601.1987-0, now KS X 1001:2002
+ */
+
+static const unsigned short ksc5601_2uni_page21[1115] = {
+  /* 0x21 */
+  0x3000, 0x3001, 0x3002, 0x00b7, 0x2025, 0x2026, 0x00a8, 0x3003,
+  0x00ad, 0x2015, 0x2225, 0xff3c, 0x223c, 0x2018, 0x2019, 0x201c,
+  0x201d, 0x3014, 0x3015, 0x3008, 0x3009, 0x300a, 0x300b, 0x300c,
+  0x300d, 0x300e, 0x300f, 0x3010, 0x3011, 0x00b1, 0x00d7, 0x00f7,
+  0x2260, 0x2264, 0x2265, 0x221e, 0x2234, 0x00b0, 0x2032, 0x2033,
+  0x2103, 0x212b, 0xffe0, 0xffe1, 0xffe5, 0x2642, 0x2640, 0x2220,
+  0x22a5, 0x2312, 0x2202, 0x2207, 0x2261, 0x2252, 0x00a7, 0x203b,
+  0x2606, 0x2605, 0x25cb, 0x25cf, 0x25ce, 0x25c7, 0x25c6, 0x25a1,
+  0x25a0, 0x25b3, 0x25b2, 0x25bd, 0x25bc, 0x2192, 0x2190, 0x2191,
+  0x2193, 0x2194, 0x3013, 0x226a, 0x226b, 0x221a, 0x223d, 0x221d,
+  0x2235, 0x222b, 0x222c, 0x2208, 0x220b, 0x2286, 0x2287, 0x2282,
+  0x2283, 0x222a, 0x2229, 0x2227, 0x2228, 0xffe2,
+  /* 0x22 */
+  0x21d2, 0x21d4, 0x2200, 0x2203, 0x00b4, 0xff5e, 0x02c7, 0x02d8,
+  0x02dd, 0x02da, 0x02d9, 0x00b8, 0x02db, 0x00a1, 0x00bf, 0x02d0,
+  0x222e, 0x2211, 0x220f, 0x00a4, 0x2109, 0x2030, 0x25c1, 0x25c0,
+  0x25b7, 0x25b6, 0x2664, 0x2660, 0x2661, 0x2665, 0x2667, 0x2663,
+  0x2299, 0x25c8, 0x25a3, 0x25d0, 0x25d1, 0x2592, 0x25a4, 0x25a5,
+  0x25a8, 0x25a7, 0x25a6, 0x25a9, 0x2668, 0x260f, 0x260e, 0x261c,
+  0x261e, 0x00b6, 0x2020, 0x2021, 0x2195, 0x2197, 0x2199, 0x2196,
+  0x2198, 0x266d, 0x2669, 0x266a, 0x266c, 0x327f, 0x321c, 0x2116,
+  0x33c7, 0x2122, 0x33c2, 0x33d8, 0x2121, 0x20ac, 0x00ae, 0x327e,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x23 */
+  0xff01, 0xff02, 0xff03, 0xff04, 0xff05, 0xff06, 0xff07, 0xff08,
+  0xff09, 0xff0a, 0xff0b, 0xff0c, 0xff0d, 0xff0e, 0xff0f, 0xff10,
+  0xff11, 0xff12, 0xff13, 0xff14, 0xff15, 0xff16, 0xff17, 0xff18,
+  0xff19, 0xff1a, 0xff1b, 0xff1c, 0xff1d, 0xff1e, 0xff1f, 0xff20,
+  0xff21, 0xff22, 0xff23, 0xff24, 0xff25, 0xff26, 0xff27, 0xff28,
+  0xff29, 0xff2a, 0xff2b, 0xff2c, 0xff2d, 0xff2e, 0xff2f, 0xff30,
+  0xff31, 0xff32, 0xff33, 0xff34, 0xff35, 0xff36, 0xff37, 0xff38,
+  0xff39, 0xff3a, 0xff3b, 0xffe6, 0xff3d, 0xff3e, 0xff3f, 0xff40,
+  0xff41, 0xff42, 0xff43, 0xff44, 0xff45, 0xff46, 0xff47, 0xff48,
+  0xff49, 0xff4a, 0xff4b, 0xff4c, 0xff4d, 0xff4e, 0xff4f, 0xff50,
+  0xff51, 0xff52, 0xff53, 0xff54, 0xff55, 0xff56, 0xff57, 0xff58,
+  0xff59, 0xff5a, 0xff5b, 0xff5c, 0xff5d, 0xffe3,
+  /* 0x24 */
+  0x3131, 0x3132, 0x3133, 0x3134, 0x3135, 0x3136, 0x3137, 0x3138,
+  0x3139, 0x313a, 0x313b, 0x313c, 0x313d, 0x313e, 0x313f, 0x3140,
+  0x3141, 0x3142, 0x3143, 0x3144, 0x3145, 0x3146, 0x3147, 0x3148,
+  0x3149, 0x314a, 0x314b, 0x314c, 0x314d, 0x314e, 0x314f, 0x3150,
+  0x3151, 0x3152, 0x3153, 0x3154, 0x3155, 0x3156, 0x3157, 0x3158,
+  0x3159, 0x315a, 0x315b, 0x315c, 0x315d, 0x315e, 0x315f, 0x3160,
+  0x3161, 0x3162, 0x3163, 0x3164, 0x3165, 0x3166, 0x3167, 0x3168,
+  0x3169, 0x316a, 0x316b, 0x316c, 0x316d, 0x316e, 0x316f, 0x3170,
+  0x3171, 0x3172, 0x3173, 0x3174, 0x3175, 0x3176, 0x3177, 0x3178,
+  0x3179, 0x317a, 0x317b, 0x317c, 0x317d, 0x317e, 0x317f, 0x3180,
+  0x3181, 0x3182, 0x3183, 0x3184, 0x3185, 0x3186, 0x3187, 0x3188,
+  0x3189, 0x318a, 0x318b, 0x318c, 0x318d, 0x318e,
+  /* 0x25 */
+  0x2170, 0x2171, 0x2172, 0x2173, 0x2174, 0x2175, 0x2176, 0x2177,
+  0x2178, 0x2179, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x2160,
+  0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, 0x2167, 0x2168,
+  0x2169, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, 0x0398,
+  0x0399, 0x039a, 0x039b, 0x039c, 0x039d, 0x039e, 0x039f, 0x03a0,
+  0x03a1, 0x03a3, 0x03a4, 0x03a5, 0x03a6, 0x03a7, 0x03a8, 0x03a9,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7, 0x03b8,
+  0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf, 0x03c0,
+  0x03c1, 0x03c3, 0x03c4, 0x03c5, 0x03c6, 0x03c7, 0x03c8, 0x03c9,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x26 */
+  0x2500, 0x2502, 0x250c, 0x2510, 0x2518, 0x2514, 0x251c, 0x252c,
+  0x2524, 0x2534, 0x253c, 0x2501, 0x2503, 0x250f, 0x2513, 0x251b,
+  0x2517, 0x2523, 0x2533, 0x252b, 0x253b, 0x254b, 0x2520, 0x252f,
+  0x2528, 0x2537, 0x253f, 0x251d, 0x2530, 0x2525, 0x2538, 0x2542,
+  0x2512, 0x2511, 0x251a, 0x2519, 0x2516, 0x2515, 0x250e, 0x250d,
+  0x251e, 0x251f, 0x2521, 0x2522, 0x2526, 0x2527, 0x2529, 0x252a,
+  0x252d, 0x252e, 0x2531, 0x2532, 0x2535, 0x2536, 0x2539, 0x253a,
+  0x253d, 0x253e, 0x2540, 0x2541, 0x2543, 0x2544, 0x2545, 0x2546,
+  0x2547, 0x2548, 0x2549, 0x254a, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x27 */
+  0x3395, 0x3396, 0x3397, 0x2113, 0x3398, 0x33c4, 0x33a3, 0x33a4,
+  0x33a5, 0x33a6, 0x3399, 0x339a, 0x339b, 0x339c, 0x339d, 0x339e,
+  0x339f, 0x33a0, 0x33a1, 0x33a2, 0x33ca, 0x338d, 0x338e, 0x338f,
+  0x33cf, 0x3388, 0x3389, 0x33c8, 0x33a7, 0x33a8, 0x33b0, 0x33b1,
+  0x33b2, 0x33b3, 0x33b4, 0x33b5, 0x33b6, 0x33b7, 0x33b8, 0x33b9,
+  0x3380, 0x3381, 0x3382, 0x3383, 0x3384, 0x33ba, 0x33bb, 0x33bc,
+  0x33bd, 0x33be, 0x33bf, 0x3390, 0x3391, 0x3392, 0x3393, 0x3394,
+  0x2126, 0x33c0, 0x33c1, 0x338a, 0x338b, 0x338c, 0x33d6, 0x33c5,
+  0x33ad, 0x33ae, 0x33af, 0x33db, 0x33a9, 0x33aa, 0x33ab, 0x33ac,
+  0x33dd, 0x33d0, 0x33d3, 0x33c3, 0x33c9, 0x33dc, 0x33c6, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x28 */
+  0x00c6, 0x00d0, 0x00aa, 0x0126, 0xfffd, 0x0132, 0xfffd, 0x013f,
+  0x0141, 0x00d8, 0x0152, 0x00ba, 0x00de, 0x0166, 0x014a, 0xfffd,
+  0x3260, 0x3261, 0x3262, 0x3263, 0x3264, 0x3265, 0x3266, 0x3267,
+  0x3268, 0x3269, 0x326a, 0x326b, 0x326c, 0x326d, 0x326e, 0x326f,
+  0x3270, 0x3271, 0x3272, 0x3273, 0x3274, 0x3275, 0x3276, 0x3277,
+  0x3278, 0x3279, 0x327a, 0x327b, 0x24d0, 0x24d1, 0x24d2, 0x24d3,
+  0x24d4, 0x24d5, 0x24d6, 0x24d7, 0x24d8, 0x24d9, 0x24da, 0x24db,
+  0x24dc, 0x24dd, 0x24de, 0x24df, 0x24e0, 0x24e1, 0x24e2, 0x24e3,
+  0x24e4, 0x24e5, 0x24e6, 0x24e7, 0x24e8, 0x24e9, 0x2460, 0x2461,
+  0x2462, 0x2463, 0x2464, 0x2465, 0x2466, 0x2467, 0x2468, 0x2469,
+  0x246a, 0x246b, 0x246c, 0x246d, 0x246e, 0x00bd, 0x2153, 0x2154,
+  0x00bc, 0x00be, 0x215b, 0x215c, 0x215d, 0x215e,
+  /* 0x29 */
+  0x00e6, 0x0111, 0x00f0, 0x0127, 0x0131, 0x0133, 0x0138, 0x0140,
+  0x0142, 0x00f8, 0x0153, 0x00df, 0x00fe, 0x0167, 0x014b, 0x0149,
+  0x3200, 0x3201, 0x3202, 0x3203, 0x3204, 0x3205, 0x3206, 0x3207,
+  0x3208, 0x3209, 0x320a, 0x320b, 0x320c, 0x320d, 0x320e, 0x320f,
+  0x3210, 0x3211, 0x3212, 0x3213, 0x3214, 0x3215, 0x3216, 0x3217,
+  0x3218, 0x3219, 0x321a, 0x321b, 0x249c, 0x249d, 0x249e, 0x249f,
+  0x24a0, 0x24a1, 0x24a2, 0x24a3, 0x24a4, 0x24a5, 0x24a6, 0x24a7,
+  0x24a8, 0x24a9, 0x24aa, 0x24ab, 0x24ac, 0x24ad, 0x24ae, 0x24af,
+  0x24b0, 0x24b1, 0x24b2, 0x24b3, 0x24b4, 0x24b5, 0x2474, 0x2475,
+  0x2476, 0x2477, 0x2478, 0x2479, 0x247a, 0x247b, 0x247c, 0x247d,
+  0x247e, 0x247f, 0x2480, 0x2481, 0x2482, 0x00b9, 0x00b2, 0x00b3,
+  0x2074, 0x207f, 0x2081, 0x2082, 0x2083, 0x2084,
+  /* 0x2a */
+  0x3041, 0x3042, 0x3043, 0x3044, 0x3045, 0x3046, 0x3047, 0x3048,
+  0x3049, 0x304a, 0x304b, 0x304c, 0x304d, 0x304e, 0x304f, 0x3050,
+  0x3051, 0x3052, 0x3053, 0x3054, 0x3055, 0x3056, 0x3057, 0x3058,
+  0x3059, 0x305a, 0x305b, 0x305c, 0x305d, 0x305e, 0x305f, 0x3060,
+  0x3061, 0x3062, 0x3063, 0x3064, 0x3065, 0x3066, 0x3067, 0x3068,
+  0x3069, 0x306a, 0x306b, 0x306c, 0x306d, 0x306e, 0x306f, 0x3070,
+  0x3071, 0x3072, 0x3073, 0x3074, 0x3075, 0x3076, 0x3077, 0x3078,
+  0x3079, 0x307a, 0x307b, 0x307c, 0x307d, 0x307e, 0x307f, 0x3080,
+  0x3081, 0x3082, 0x3083, 0x3084, 0x3085, 0x3086, 0x3087, 0x3088,
+  0x3089, 0x308a, 0x308b, 0x308c, 0x308d, 0x308e, 0x308f, 0x3090,
+  0x3091, 0x3092, 0x3093, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x2b */
+  0x30a1, 0x30a2, 0x30a3, 0x30a4, 0x30a5, 0x30a6, 0x30a7, 0x30a8,
+  0x30a9, 0x30aa, 0x30ab, 0x30ac, 0x30ad, 0x30ae, 0x30af, 0x30b0,
+  0x30b1, 0x30b2, 0x30b3, 0x30b4, 0x30b5, 0x30b6, 0x30b7, 0x30b8,
+  0x30b9, 0x30ba, 0x30bb, 0x30bc, 0x30bd, 0x30be, 0x30bf, 0x30c0,
+  0x30c1, 0x30c2, 0x30c3, 0x30c4, 0x30c5, 0x30c6, 0x30c7, 0x30c8,
+  0x30c9, 0x30ca, 0x30cb, 0x30cc, 0x30cd, 0x30ce, 0x30cf, 0x30d0,
+  0x30d1, 0x30d2, 0x30d3, 0x30d4, 0x30d5, 0x30d6, 0x30d7, 0x30d8,
+  0x30d9, 0x30da, 0x30db, 0x30dc, 0x30dd, 0x30de, 0x30df, 0x30e0,
+  0x30e1, 0x30e2, 0x30e3, 0x30e4, 0x30e5, 0x30e6, 0x30e7, 0x30e8,
+  0x30e9, 0x30ea, 0x30eb, 0x30ec, 0x30ed, 0x30ee, 0x30ef, 0x30f0,
+  0x30f1, 0x30f2, 0x30f3, 0x30f4, 0x30f5, 0x30f6, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0x2c */
+  0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0401, 0x0416,
+  0x0417, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+  0x041f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426,
+  0x0427, 0x0428, 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e,
+  0x042f, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0451, 0x0436,
+  0x0437, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+  0x043f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446,
+  0x0447, 0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e,
+  0x044f,
+};
+static const unsigned short ksc5601_2uni_page30[2350] = {
+  /* 0x30 */
+  0xac00, 0xac01, 0xac04, 0xac07, 0xac08, 0xac09, 0xac0a, 0xac10,
+  0xac11, 0xac12, 0xac13, 0xac14, 0xac15, 0xac16, 0xac17, 0xac19,
+  0xac1a, 0xac1b, 0xac1c, 0xac1d, 0xac20, 0xac24, 0xac2c, 0xac2d,
+  0xac2f, 0xac30, 0xac31, 0xac38, 0xac39, 0xac3c, 0xac40, 0xac4b,
+  0xac4d, 0xac54, 0xac58, 0xac5c, 0xac70, 0xac71, 0xac74, 0xac77,
+  0xac78, 0xac7a, 0xac80, 0xac81, 0xac83, 0xac84, 0xac85, 0xac86,
+  0xac89, 0xac8a, 0xac8b, 0xac8c, 0xac90, 0xac94, 0xac9c, 0xac9d,
+  0xac9f, 0xaca0, 0xaca1, 0xaca8, 0xaca9, 0xacaa, 0xacac, 0xacaf,
+  0xacb0, 0xacb8, 0xacb9, 0xacbb, 0xacbc, 0xacbd, 0xacc1, 0xacc4,
+  0xacc8, 0xaccc, 0xacd5, 0xacd7, 0xace0, 0xace1, 0xace4, 0xace7,
+  0xace8, 0xacea, 0xacec, 0xacef, 0xacf0, 0xacf1, 0xacf3, 0xacf5,
+  0xacf6, 0xacfc, 0xacfd, 0xad00, 0xad04, 0xad06,
+  /* 0x31 */
+  0xad0c, 0xad0d, 0xad0f, 0xad11, 0xad18, 0xad1c, 0xad20, 0xad29,
+  0xad2c, 0xad2d, 0xad34, 0xad35, 0xad38, 0xad3c, 0xad44, 0xad45,
+  0xad47, 0xad49, 0xad50, 0xad54, 0xad58, 0xad61, 0xad63, 0xad6c,
+  0xad6d, 0xad70, 0xad73, 0xad74, 0xad75, 0xad76, 0xad7b, 0xad7c,
+  0xad7d, 0xad7f, 0xad81, 0xad82, 0xad88, 0xad89, 0xad8c, 0xad90,
+  0xad9c, 0xad9d, 0xada4, 0xadb7, 0xadc0, 0xadc1, 0xadc4, 0xadc8,
+  0xadd0, 0xadd1, 0xadd3, 0xaddc, 0xade0, 0xade4, 0xadf8, 0xadf9,
+  0xadfc, 0xadff, 0xae00, 0xae01, 0xae08, 0xae09, 0xae0b, 0xae0d,
+  0xae14, 0xae30, 0xae31, 0xae34, 0xae37, 0xae38, 0xae3a, 0xae40,
+  0xae41, 0xae43, 0xae45, 0xae46, 0xae4a, 0xae4c, 0xae4d, 0xae4e,
+  0xae50, 0xae54, 0xae56, 0xae5c, 0xae5d, 0xae5f, 0xae60, 0xae61,
+  0xae65, 0xae68, 0xae69, 0xae6c, 0xae70, 0xae78,
+  /* 0x32 */
+  0xae79, 0xae7b, 0xae7c, 0xae7d, 0xae84, 0xae85, 0xae8c, 0xaebc,
+  0xaebd, 0xaebe, 0xaec0, 0xaec4, 0xaecc, 0xaecd, 0xaecf, 0xaed0,
+  0xaed1, 0xaed8, 0xaed9, 0xaedc, 0xaee8, 0xaeeb, 0xaeed, 0xaef4,
+  0xaef8, 0xaefc, 0xaf07, 0xaf08, 0xaf0d, 0xaf10, 0xaf2c, 0xaf2d,
+  0xaf30, 0xaf32, 0xaf34, 0xaf3c, 0xaf3d, 0xaf3f, 0xaf41, 0xaf42,
+  0xaf43, 0xaf48, 0xaf49, 0xaf50, 0xaf5c, 0xaf5d, 0xaf64, 0xaf65,
+  0xaf79, 0xaf80, 0xaf84, 0xaf88, 0xaf90, 0xaf91, 0xaf95, 0xaf9c,
+  0xafb8, 0xafb9, 0xafbc, 0xafc0, 0xafc7, 0xafc8, 0xafc9, 0xafcb,
+  0xafcd, 0xafce, 0xafd4, 0xafdc, 0xafe8, 0xafe9, 0xaff0, 0xaff1,
+  0xaff4, 0xaff8, 0xb000, 0xb001, 0xb004, 0xb00c, 0xb010, 0xb014,
+  0xb01c, 0xb01d, 0xb028, 0xb044, 0xb045, 0xb048, 0xb04a, 0xb04c,
+  0xb04e, 0xb053, 0xb054, 0xb055, 0xb057, 0xb059,
+  /* 0x33 */
+  0xb05d, 0xb07c, 0xb07d, 0xb080, 0xb084, 0xb08c, 0xb08d, 0xb08f,
+  0xb091, 0xb098, 0xb099, 0xb09a, 0xb09c, 0xb09f, 0xb0a0, 0xb0a1,
+  0xb0a2, 0xb0a8, 0xb0a9, 0xb0ab, 0xb0ac, 0xb0ad, 0xb0ae, 0xb0af,
+  0xb0b1, 0xb0b3, 0xb0b4, 0xb0b5, 0xb0b8, 0xb0bc, 0xb0c4, 0xb0c5,
+  0xb0c7, 0xb0c8, 0xb0c9, 0xb0d0, 0xb0d1, 0xb0d4, 0xb0d8, 0xb0e0,
+  0xb0e5, 0xb108, 0xb109, 0xb10b, 0xb10c, 0xb110, 0xb112, 0xb113,
+  0xb118, 0xb119, 0xb11b, 0xb11c, 0xb11d, 0xb123, 0xb124, 0xb125,
+  0xb128, 0xb12c, 0xb134, 0xb135, 0xb137, 0xb138, 0xb139, 0xb140,
+  0xb141, 0xb144, 0xb148, 0xb150, 0xb151, 0xb154, 0xb155, 0xb158,
+  0xb15c, 0xb160, 0xb178, 0xb179, 0xb17c, 0xb180, 0xb182, 0xb188,
+  0xb189, 0xb18b, 0xb18d, 0xb192, 0xb193, 0xb194, 0xb198, 0xb19c,
+  0xb1a8, 0xb1cc, 0xb1d0, 0xb1d4, 0xb1dc, 0xb1dd,
+  /* 0x34 */
+  0xb1df, 0xb1e8, 0xb1e9, 0xb1ec, 0xb1f0, 0xb1f9, 0xb1fb, 0xb1fd,
+  0xb204, 0xb205, 0xb208, 0xb20b, 0xb20c, 0xb214, 0xb215, 0xb217,
+  0xb219, 0xb220, 0xb234, 0xb23c, 0xb258, 0xb25c, 0xb260, 0xb268,
+  0xb269, 0xb274, 0xb275, 0xb27c, 0xb284, 0xb285, 0xb289, 0xb290,
+  0xb291, 0xb294, 0xb298, 0xb299, 0xb29a, 0xb2a0, 0xb2a1, 0xb2a3,
+  0xb2a5, 0xb2a6, 0xb2aa, 0xb2ac, 0xb2b0, 0xb2b4, 0xb2c8, 0xb2c9,
+  0xb2cc, 0xb2d0, 0xb2d2, 0xb2d8, 0xb2d9, 0xb2db, 0xb2dd, 0xb2e2,
+  0xb2e4, 0xb2e5, 0xb2e6, 0xb2e8, 0xb2eb, 0xb2ec, 0xb2ed, 0xb2ee,
+  0xb2ef, 0xb2f3, 0xb2f4, 0xb2f5, 0xb2f7, 0xb2f8, 0xb2f9, 0xb2fa,
+  0xb2fb, 0xb2ff, 0xb300, 0xb301, 0xb304, 0xb308, 0xb310, 0xb311,
+  0xb313, 0xb314, 0xb315, 0xb31c, 0xb354, 0xb355, 0xb356, 0xb358,
+  0xb35b, 0xb35c, 0xb35e, 0xb35f, 0xb364, 0xb365,
+  /* 0x35 */
+  0xb367, 0xb369, 0xb36b, 0xb36e, 0xb370, 0xb371, 0xb374, 0xb378,
+  0xb380, 0xb381, 0xb383, 0xb384, 0xb385, 0xb38c, 0xb390, 0xb394,
+  0xb3a0, 0xb3a1, 0xb3a8, 0xb3ac, 0xb3c4, 0xb3c5, 0xb3c8, 0xb3cb,
+  0xb3cc, 0xb3ce, 0xb3d0, 0xb3d4, 0xb3d5, 0xb3d7, 0xb3d9, 0xb3db,
+  0xb3dd, 0xb3e0, 0xb3e4, 0xb3e8, 0xb3fc, 0xb410, 0xb418, 0xb41c,
+  0xb420, 0xb428, 0xb429, 0xb42b, 0xb434, 0xb450, 0xb451, 0xb454,
+  0xb458, 0xb460, 0xb461, 0xb463, 0xb465, 0xb46c, 0xb480, 0xb488,
+  0xb49d, 0xb4a4, 0xb4a8, 0xb4ac, 0xb4b5, 0xb4b7, 0xb4b9, 0xb4c0,
+  0xb4c4, 0xb4c8, 0xb4d0, 0xb4d5, 0xb4dc, 0xb4dd, 0xb4e0, 0xb4e3,
+  0xb4e4, 0xb4e6, 0xb4ec, 0xb4ed, 0xb4ef, 0xb4f1, 0xb4f8, 0xb514,
+  0xb515, 0xb518, 0xb51b, 0xb51c, 0xb524, 0xb525, 0xb527, 0xb528,
+  0xb529, 0xb52a, 0xb530, 0xb531, 0xb534, 0xb538,
+  /* 0x36 */
+  0xb540, 0xb541, 0xb543, 0xb544, 0xb545, 0xb54b, 0xb54c, 0xb54d,
+  0xb550, 0xb554, 0xb55c, 0xb55d, 0xb55f, 0xb560, 0xb561, 0xb5a0,
+  0xb5a1, 0xb5a4, 0xb5a8, 0xb5aa, 0xb5ab, 0xb5b0, 0xb5b1, 0xb5b3,
+  0xb5b4, 0xb5b5, 0xb5bb, 0xb5bc, 0xb5bd, 0xb5c0, 0xb5c4, 0xb5cc,
+  0xb5cd, 0xb5cf, 0xb5d0, 0xb5d1, 0xb5d8, 0xb5ec, 0xb610, 0xb611,
+  0xb614, 0xb618, 0xb625, 0xb62c, 0xb634, 0xb648, 0xb664, 0xb668,
+  0xb69c, 0xb69d, 0xb6a0, 0xb6a4, 0xb6ab, 0xb6ac, 0xb6b1, 0xb6d4,
+  0xb6f0, 0xb6f4, 0xb6f8, 0xb700, 0xb701, 0xb705, 0xb728, 0xb729,
+  0xb72c, 0xb72f, 0xb730, 0xb738, 0xb739, 0xb73b, 0xb744, 0xb748,
+  0xb74c, 0xb754, 0xb755, 0xb760, 0xb764, 0xb768, 0xb770, 0xb771,
+  0xb773, 0xb775, 0xb77c, 0xb77d, 0xb780, 0xb784, 0xb78c, 0xb78d,
+  0xb78f, 0xb790, 0xb791, 0xb792, 0xb796, 0xb797,
+  /* 0x37 */
+  0xb798, 0xb799, 0xb79c, 0xb7a0, 0xb7a8, 0xb7a9, 0xb7ab, 0xb7ac,
+  0xb7ad, 0xb7b4, 0xb7b5, 0xb7b8, 0xb7c7, 0xb7c9, 0xb7ec, 0xb7ed,
+  0xb7f0, 0xb7f4, 0xb7fc, 0xb7fd, 0xb7ff, 0xb800, 0xb801, 0xb807,
+  0xb808, 0xb809, 0xb80c, 0xb810, 0xb818, 0xb819, 0xb81b, 0xb81d,
+  0xb824, 0xb825, 0xb828, 0xb82c, 0xb834, 0xb835, 0xb837, 0xb838,
+  0xb839, 0xb840, 0xb844, 0xb851, 0xb853, 0xb85c, 0xb85d, 0xb860,
+  0xb864, 0xb86c, 0xb86d, 0xb86f, 0xb871, 0xb878, 0xb87c, 0xb88d,
+  0xb8a8, 0xb8b0, 0xb8b4, 0xb8b8, 0xb8c0, 0xb8c1, 0xb8c3, 0xb8c5,
+  0xb8cc, 0xb8d0, 0xb8d4, 0xb8dd, 0xb8df, 0xb8e1, 0xb8e8, 0xb8e9,
+  0xb8ec, 0xb8f0, 0xb8f8, 0xb8f9, 0xb8fb, 0xb8fd, 0xb904, 0xb918,
+  0xb920, 0xb93c, 0xb93d, 0xb940, 0xb944, 0xb94c, 0xb94f, 0xb951,
+  0xb958, 0xb959, 0xb95c, 0xb960, 0xb968, 0xb969,
+  /* 0x38 */
+  0xb96b, 0xb96d, 0xb974, 0xb975, 0xb978, 0xb97c, 0xb984, 0xb985,
+  0xb987, 0xb989, 0xb98a, 0xb98d, 0xb98e, 0xb9ac, 0xb9ad, 0xb9b0,
+  0xb9b4, 0xb9bc, 0xb9bd, 0xb9bf, 0xb9c1, 0xb9c8, 0xb9c9, 0xb9cc,
+  0xb9ce, 0xb9cf, 0xb9d0, 0xb9d1, 0xb9d2, 0xb9d8, 0xb9d9, 0xb9db,
+  0xb9dd, 0xb9de, 0xb9e1, 0xb9e3, 0xb9e4, 0xb9e5, 0xb9e8, 0xb9ec,
+  0xb9f4, 0xb9f5, 0xb9f7, 0xb9f8, 0xb9f9, 0xb9fa, 0xba00, 0xba01,
+  0xba08, 0xba15, 0xba38, 0xba39, 0xba3c, 0xba40, 0xba42, 0xba48,
+  0xba49, 0xba4b, 0xba4d, 0xba4e, 0xba53, 0xba54, 0xba55, 0xba58,
+  0xba5c, 0xba64, 0xba65, 0xba67, 0xba68, 0xba69, 0xba70, 0xba71,
+  0xba74, 0xba78, 0xba83, 0xba84, 0xba85, 0xba87, 0xba8c, 0xbaa8,
+  0xbaa9, 0xbaab, 0xbaac, 0xbab0, 0xbab2, 0xbab8, 0xbab9, 0xbabb,
+  0xbabd, 0xbac4, 0xbac8, 0xbad8, 0xbad9, 0xbafc,
+  /* 0x39 */
+  0xbb00, 0xbb04, 0xbb0d, 0xbb0f, 0xbb11, 0xbb18, 0xbb1c, 0xbb20,
+  0xbb29, 0xbb2b, 0xbb34, 0xbb35, 0xbb36, 0xbb38, 0xbb3b, 0xbb3c,
+  0xbb3d, 0xbb3e, 0xbb44, 0xbb45, 0xbb47, 0xbb49, 0xbb4d, 0xbb4f,
+  0xbb50, 0xbb54, 0xbb58, 0xbb61, 0xbb63, 0xbb6c, 0xbb88, 0xbb8c,
+  0xbb90, 0xbba4, 0xbba8, 0xbbac, 0xbbb4, 0xbbb7, 0xbbc0, 0xbbc4,
+  0xbbc8, 0xbbd0, 0xbbd3, 0xbbf8, 0xbbf9, 0xbbfc, 0xbbff, 0xbc00,
+  0xbc02, 0xbc08, 0xbc09, 0xbc0b, 0xbc0c, 0xbc0d, 0xbc0f, 0xbc11,
+  0xbc14, 0xbc15, 0xbc16, 0xbc17, 0xbc18, 0xbc1b, 0xbc1c, 0xbc1d,
+  0xbc1e, 0xbc1f, 0xbc24, 0xbc25, 0xbc27, 0xbc29, 0xbc2d, 0xbc30,
+  0xbc31, 0xbc34, 0xbc38, 0xbc40, 0xbc41, 0xbc43, 0xbc44, 0xbc45,
+  0xbc49, 0xbc4c, 0xbc4d, 0xbc50, 0xbc5d, 0xbc84, 0xbc85, 0xbc88,
+  0xbc8b, 0xbc8c, 0xbc8e, 0xbc94, 0xbc95, 0xbc97,
+  /* 0x3a */
+  0xbc99, 0xbc9a, 0xbca0, 0xbca1, 0xbca4, 0xbca7, 0xbca8, 0xbcb0,
+  0xbcb1, 0xbcb3, 0xbcb4, 0xbcb5, 0xbcbc, 0xbcbd, 0xbcc0, 0xbcc4,
+  0xbccd, 0xbccf, 0xbcd0, 0xbcd1, 0xbcd5, 0xbcd8, 0xbcdc, 0xbcf4,
+  0xbcf5, 0xbcf6, 0xbcf8, 0xbcfc, 0xbd04, 0xbd05, 0xbd07, 0xbd09,
+  0xbd10, 0xbd14, 0xbd24, 0xbd2c, 0xbd40, 0xbd48, 0xbd49, 0xbd4c,
+  0xbd50, 0xbd58, 0xbd59, 0xbd64, 0xbd68, 0xbd80, 0xbd81, 0xbd84,
+  0xbd87, 0xbd88, 0xbd89, 0xbd8a, 0xbd90, 0xbd91, 0xbd93, 0xbd95,
+  0xbd99, 0xbd9a, 0xbd9c, 0xbda4, 0xbdb0, 0xbdb8, 0xbdd4, 0xbdd5,
+  0xbdd8, 0xbddc, 0xbde9, 0xbdf0, 0xbdf4, 0xbdf8, 0xbe00, 0xbe03,
+  0xbe05, 0xbe0c, 0xbe0d, 0xbe10, 0xbe14, 0xbe1c, 0xbe1d, 0xbe1f,
+  0xbe44, 0xbe45, 0xbe48, 0xbe4c, 0xbe4e, 0xbe54, 0xbe55, 0xbe57,
+  0xbe59, 0xbe5a, 0xbe5b, 0xbe60, 0xbe61, 0xbe64,
+  /* 0x3b */
+  0xbe68, 0xbe6a, 0xbe70, 0xbe71, 0xbe73, 0xbe74, 0xbe75, 0xbe7b,
+  0xbe7c, 0xbe7d, 0xbe80, 0xbe84, 0xbe8c, 0xbe8d, 0xbe8f, 0xbe90,
+  0xbe91, 0xbe98, 0xbe99, 0xbea8, 0xbed0, 0xbed1, 0xbed4, 0xbed7,
+  0xbed8, 0xbee0, 0xbee3, 0xbee4, 0xbee5, 0xbeec, 0xbf01, 0xbf08,
+  0xbf09, 0xbf18, 0xbf19, 0xbf1b, 0xbf1c, 0xbf1d, 0xbf40, 0xbf41,
+  0xbf44, 0xbf48, 0xbf50, 0xbf51, 0xbf55, 0xbf94, 0xbfb0, 0xbfc5,
+  0xbfcc, 0xbfcd, 0xbfd0, 0xbfd4, 0xbfdc, 0xbfdf, 0xbfe1, 0xc03c,
+  0xc051, 0xc058, 0xc05c, 0xc060, 0xc068, 0xc069, 0xc090, 0xc091,
+  0xc094, 0xc098, 0xc0a0, 0xc0a1, 0xc0a3, 0xc0a5, 0xc0ac, 0xc0ad,
+  0xc0af, 0xc0b0, 0xc0b3, 0xc0b4, 0xc0b5, 0xc0b6, 0xc0bc, 0xc0bd,
+  0xc0bf, 0xc0c0, 0xc0c1, 0xc0c5, 0xc0c8, 0xc0c9, 0xc0cc, 0xc0d0,
+  0xc0d8, 0xc0d9, 0xc0db, 0xc0dc, 0xc0dd, 0xc0e4,
+  /* 0x3c */
+  0xc0e5, 0xc0e8, 0xc0ec, 0xc0f4, 0xc0f5, 0xc0f7, 0xc0f9, 0xc100,
+  0xc104, 0xc108, 0xc110, 0xc115, 0xc11c, 0xc11d, 0xc11e, 0xc11f,
+  0xc120, 0xc123, 0xc124, 0xc126, 0xc127, 0xc12c, 0xc12d, 0xc12f,
+  0xc130, 0xc131, 0xc136, 0xc138, 0xc139, 0xc13c, 0xc140, 0xc148,
+  0xc149, 0xc14b, 0xc14c, 0xc14d, 0xc154, 0xc155, 0xc158, 0xc15c,
+  0xc164, 0xc165, 0xc167, 0xc168, 0xc169, 0xc170, 0xc174, 0xc178,
+  0xc185, 0xc18c, 0xc18d, 0xc18e, 0xc190, 0xc194, 0xc196, 0xc19c,
+  0xc19d, 0xc19f, 0xc1a1, 0xc1a5, 0xc1a8, 0xc1a9, 0xc1ac, 0xc1b0,
+  0xc1bd, 0xc1c4, 0xc1c8, 0xc1cc, 0xc1d4, 0xc1d7, 0xc1d8, 0xc1e0,
+  0xc1e4, 0xc1e8, 0xc1f0, 0xc1f1, 0xc1f3, 0xc1fc, 0xc1fd, 0xc200,
+  0xc204, 0xc20c, 0xc20d, 0xc20f, 0xc211, 0xc218, 0xc219, 0xc21c,
+  0xc21f, 0xc220, 0xc228, 0xc229, 0xc22b, 0xc22d,
+  /* 0x3d */
+  0xc22f, 0xc231, 0xc232, 0xc234, 0xc248, 0xc250, 0xc251, 0xc254,
+  0xc258, 0xc260, 0xc265, 0xc26c, 0xc26d, 0xc270, 0xc274, 0xc27c,
+  0xc27d, 0xc27f, 0xc281, 0xc288, 0xc289, 0xc290, 0xc298, 0xc29b,
+  0xc29d, 0xc2a4, 0xc2a5, 0xc2a8, 0xc2ac, 0xc2ad, 0xc2b4, 0xc2b5,
+  0xc2b7, 0xc2b9, 0xc2dc, 0xc2dd, 0xc2e0, 0xc2e3, 0xc2e4, 0xc2eb,
+  0xc2ec, 0xc2ed, 0xc2ef, 0xc2f1, 0xc2f6, 0xc2f8, 0xc2f9, 0xc2fb,
+  0xc2fc, 0xc300, 0xc308, 0xc309, 0xc30c, 0xc30d, 0xc313, 0xc314,
+  0xc315, 0xc318, 0xc31c, 0xc324, 0xc325, 0xc328, 0xc329, 0xc345,
+  0xc368, 0xc369, 0xc36c, 0xc370, 0xc372, 0xc378, 0xc379, 0xc37c,
+  0xc37d, 0xc384, 0xc388, 0xc38c, 0xc3c0, 0xc3d8, 0xc3d9, 0xc3dc,
+  0xc3df, 0xc3e0, 0xc3e2, 0xc3e8, 0xc3e9, 0xc3ed, 0xc3f4, 0xc3f5,
+  0xc3f8, 0xc408, 0xc410, 0xc424, 0xc42c, 0xc430,
+  /* 0x3e */
+  0xc434, 0xc43c, 0xc43d, 0xc448, 0xc464, 0xc465, 0xc468, 0xc46c,
+  0xc474, 0xc475, 0xc479, 0xc480, 0xc494, 0xc49c, 0xc4b8, 0xc4bc,
+  0xc4e9, 0xc4f0, 0xc4f1, 0xc4f4, 0xc4f8, 0xc4fa, 0xc4ff, 0xc500,
+  0xc501, 0xc50c, 0xc510, 0xc514, 0xc51c, 0xc528, 0xc529, 0xc52c,
+  0xc530, 0xc538, 0xc539, 0xc53b, 0xc53d, 0xc544, 0xc545, 0xc548,
+  0xc549, 0xc54a, 0xc54c, 0xc54d, 0xc54e, 0xc553, 0xc554, 0xc555,
+  0xc557, 0xc558, 0xc559, 0xc55d, 0xc55e, 0xc560, 0xc561, 0xc564,
+  0xc568, 0xc570, 0xc571, 0xc573, 0xc574, 0xc575, 0xc57c, 0xc57d,
+  0xc580, 0xc584, 0xc587, 0xc58c, 0xc58d, 0xc58f, 0xc591, 0xc595,
+  0xc597, 0xc598, 0xc59c, 0xc5a0, 0xc5a9, 0xc5b4, 0xc5b5, 0xc5b8,
+  0xc5b9, 0xc5bb, 0xc5bc, 0xc5bd, 0xc5be, 0xc5c4, 0xc5c5, 0xc5c6,
+  0xc5c7, 0xc5c8, 0xc5c9, 0xc5ca, 0xc5cc, 0xc5ce,
+  /* 0x3f */
+  0xc5d0, 0xc5d1, 0xc5d4, 0xc5d8, 0xc5e0, 0xc5e1, 0xc5e3, 0xc5e5,
+  0xc5ec, 0xc5ed, 0xc5ee, 0xc5f0, 0xc5f4, 0xc5f6, 0xc5f7, 0xc5fc,
+  0xc5fd, 0xc5fe, 0xc5ff, 0xc600, 0xc601, 0xc605, 0xc606, 0xc607,
+  0xc608, 0xc60c, 0xc610, 0xc618, 0xc619, 0xc61b, 0xc61c, 0xc624,
+  0xc625, 0xc628, 0xc62c, 0xc62d, 0xc62e, 0xc630, 0xc633, 0xc634,
+  0xc635, 0xc637, 0xc639, 0xc63b, 0xc640, 0xc641, 0xc644, 0xc648,
+  0xc650, 0xc651, 0xc653, 0xc654, 0xc655, 0xc65c, 0xc65d, 0xc660,
+  0xc66c, 0xc66f, 0xc671, 0xc678, 0xc679, 0xc67c, 0xc680, 0xc688,
+  0xc689, 0xc68b, 0xc68d, 0xc694, 0xc695, 0xc698, 0xc69c, 0xc6a4,
+  0xc6a5, 0xc6a7, 0xc6a9, 0xc6b0, 0xc6b1, 0xc6b4, 0xc6b8, 0xc6b9,
+  0xc6ba, 0xc6c0, 0xc6c1, 0xc6c3, 0xc6c5, 0xc6cc, 0xc6cd, 0xc6d0,
+  0xc6d4, 0xc6dc, 0xc6dd, 0xc6e0, 0xc6e1, 0xc6e8,
+  /* 0x40 */
+  0xc6e9, 0xc6ec, 0xc6f0, 0xc6f8, 0xc6f9, 0xc6fd, 0xc704, 0xc705,
+  0xc708, 0xc70c, 0xc714, 0xc715, 0xc717, 0xc719, 0xc720, 0xc721,
+  0xc724, 0xc728, 0xc730, 0xc731, 0xc733, 0xc735, 0xc737, 0xc73c,
+  0xc73d, 0xc740, 0xc744, 0xc74a, 0xc74c, 0xc74d, 0xc74f, 0xc751,
+  0xc752, 0xc753, 0xc754, 0xc755, 0xc756, 0xc757, 0xc758, 0xc75c,
+  0xc760, 0xc768, 0xc76b, 0xc774, 0xc775, 0xc778, 0xc77c, 0xc77d,
+  0xc77e, 0xc783, 0xc784, 0xc785, 0xc787, 0xc788, 0xc789, 0xc78a,
+  0xc78e, 0xc790, 0xc791, 0xc794, 0xc796, 0xc797, 0xc798, 0xc79a,
+  0xc7a0, 0xc7a1, 0xc7a3, 0xc7a4, 0xc7a5, 0xc7a6, 0xc7ac, 0xc7ad,
+  0xc7b0, 0xc7b4, 0xc7bc, 0xc7bd, 0xc7bf, 0xc7c0, 0xc7c1, 0xc7c8,
+  0xc7c9, 0xc7cc, 0xc7ce, 0xc7d0, 0xc7d8, 0xc7dd, 0xc7e4, 0xc7e8,
+  0xc7ec, 0xc800, 0xc801, 0xc804, 0xc808, 0xc80a,
+  /* 0x41 */
+  0xc810, 0xc811, 0xc813, 0xc815, 0xc816, 0xc81c, 0xc81d, 0xc820,
+  0xc824, 0xc82c, 0xc82d, 0xc82f, 0xc831, 0xc838, 0xc83c, 0xc840,
+  0xc848, 0xc849, 0xc84c, 0xc84d, 0xc854, 0xc870, 0xc871, 0xc874,
+  0xc878, 0xc87a, 0xc880, 0xc881, 0xc883, 0xc885, 0xc886, 0xc887,
+  0xc88b, 0xc88c, 0xc88d, 0xc894, 0xc89d, 0xc89f, 0xc8a1, 0xc8a8,
+  0xc8bc, 0xc8bd, 0xc8c4, 0xc8c8, 0xc8cc, 0xc8d4, 0xc8d5, 0xc8d7,
+  0xc8d9, 0xc8e0, 0xc8e1, 0xc8e4, 0xc8f5, 0xc8fc, 0xc8fd, 0xc900,
+  0xc904, 0xc905, 0xc906, 0xc90c, 0xc90d, 0xc90f, 0xc911, 0xc918,
+  0xc92c, 0xc934, 0xc950, 0xc951, 0xc954, 0xc958, 0xc960, 0xc961,
+  0xc963, 0xc96c, 0xc970, 0xc974, 0xc97c, 0xc988, 0xc989, 0xc98c,
+  0xc990, 0xc998, 0xc999, 0xc99b, 0xc99d, 0xc9c0, 0xc9c1, 0xc9c4,
+  0xc9c7, 0xc9c8, 0xc9ca, 0xc9d0, 0xc9d1, 0xc9d3,
+  /* 0x42 */
+  0xc9d5, 0xc9d6, 0xc9d9, 0xc9da, 0xc9dc, 0xc9dd, 0xc9e0, 0xc9e2,
+  0xc9e4, 0xc9e7, 0xc9ec, 0xc9ed, 0xc9ef, 0xc9f0, 0xc9f1, 0xc9f8,
+  0xc9f9, 0xc9fc, 0xca00, 0xca08, 0xca09, 0xca0b, 0xca0c, 0xca0d,
+  0xca14, 0xca18, 0xca29, 0xca4c, 0xca4d, 0xca50, 0xca54, 0xca5c,
+  0xca5d, 0xca5f, 0xca60, 0xca61, 0xca68, 0xca7d, 0xca84, 0xca98,
+  0xcabc, 0xcabd, 0xcac0, 0xcac4, 0xcacc, 0xcacd, 0xcacf, 0xcad1,
+  0xcad3, 0xcad8, 0xcad9, 0xcae0, 0xcaec, 0xcaf4, 0xcb08, 0xcb10,
+  0xcb14, 0xcb18, 0xcb20, 0xcb21, 0xcb41, 0xcb48, 0xcb49, 0xcb4c,
+  0xcb50, 0xcb58, 0xcb59, 0xcb5d, 0xcb64, 0xcb78, 0xcb79, 0xcb9c,
+  0xcbb8, 0xcbd4, 0xcbe4, 0xcbe7, 0xcbe9, 0xcc0c, 0xcc0d, 0xcc10,
+  0xcc14, 0xcc1c, 0xcc1d, 0xcc21, 0xcc22, 0xcc27, 0xcc28, 0xcc29,
+  0xcc2c, 0xcc2e, 0xcc30, 0xcc38, 0xcc39, 0xcc3b,
+  /* 0x43 */
+  0xcc3c, 0xcc3d, 0xcc3e, 0xcc44, 0xcc45, 0xcc48, 0xcc4c, 0xcc54,
+  0xcc55, 0xcc57, 0xcc58, 0xcc59, 0xcc60, 0xcc64, 0xcc66, 0xcc68,
+  0xcc70, 0xcc75, 0xcc98, 0xcc99, 0xcc9c, 0xcca0, 0xcca8, 0xcca9,
+  0xccab, 0xccac, 0xccad, 0xccb4, 0xccb5, 0xccb8, 0xccbc, 0xccc4,
+  0xccc5, 0xccc7, 0xccc9, 0xccd0, 0xccd4, 0xcce4, 0xccec, 0xccf0,
+  0xcd01, 0xcd08, 0xcd09, 0xcd0c, 0xcd10, 0xcd18, 0xcd19, 0xcd1b,
+  0xcd1d, 0xcd24, 0xcd28, 0xcd2c, 0xcd39, 0xcd5c, 0xcd60, 0xcd64,
+  0xcd6c, 0xcd6d, 0xcd6f, 0xcd71, 0xcd78, 0xcd88, 0xcd94, 0xcd95,
+  0xcd98, 0xcd9c, 0xcda4, 0xcda5, 0xcda7, 0xcda9, 0xcdb0, 0xcdc4,
+  0xcdcc, 0xcdd0, 0xcde8, 0xcdec, 0xcdf0, 0xcdf8, 0xcdf9, 0xcdfb,
+  0xcdfd, 0xce04, 0xce08, 0xce0c, 0xce14, 0xce19, 0xce20, 0xce21,
+  0xce24, 0xce28, 0xce30, 0xce31, 0xce33, 0xce35,
+  /* 0x44 */
+  0xce58, 0xce59, 0xce5c, 0xce5f, 0xce60, 0xce61, 0xce68, 0xce69,
+  0xce6b, 0xce6d, 0xce74, 0xce75, 0xce78, 0xce7c, 0xce84, 0xce85,
+  0xce87, 0xce89, 0xce90, 0xce91, 0xce94, 0xce98, 0xcea0, 0xcea1,
+  0xcea3, 0xcea4, 0xcea5, 0xceac, 0xcead, 0xcec1, 0xcee4, 0xcee5,
+  0xcee8, 0xceeb, 0xceec, 0xcef4, 0xcef5, 0xcef7, 0xcef8, 0xcef9,
+  0xcf00, 0xcf01, 0xcf04, 0xcf08, 0xcf10, 0xcf11, 0xcf13, 0xcf15,
+  0xcf1c, 0xcf20, 0xcf24, 0xcf2c, 0xcf2d, 0xcf2f, 0xcf30, 0xcf31,
+  0xcf38, 0xcf54, 0xcf55, 0xcf58, 0xcf5c, 0xcf64, 0xcf65, 0xcf67,
+  0xcf69, 0xcf70, 0xcf71, 0xcf74, 0xcf78, 0xcf80, 0xcf85, 0xcf8c,
+  0xcfa1, 0xcfa8, 0xcfb0, 0xcfc4, 0xcfe0, 0xcfe1, 0xcfe4, 0xcfe8,
+  0xcff0, 0xcff1, 0xcff3, 0xcff5, 0xcffc, 0xd000, 0xd004, 0xd011,
+  0xd018, 0xd02d, 0xd034, 0xd035, 0xd038, 0xd03c,
+  /* 0x45 */
+  0xd044, 0xd045, 0xd047, 0xd049, 0xd050, 0xd054, 0xd058, 0xd060,
+  0xd06c, 0xd06d, 0xd070, 0xd074, 0xd07c, 0xd07d, 0xd081, 0xd0a4,
+  0xd0a5, 0xd0a8, 0xd0ac, 0xd0b4, 0xd0b5, 0xd0b7, 0xd0b9, 0xd0c0,
+  0xd0c1, 0xd0c4, 0xd0c8, 0xd0c9, 0xd0d0, 0xd0d1, 0xd0d3, 0xd0d4,
+  0xd0d5, 0xd0dc, 0xd0dd, 0xd0e0, 0xd0e4, 0xd0ec, 0xd0ed, 0xd0ef,
+  0xd0f0, 0xd0f1, 0xd0f8, 0xd10d, 0xd130, 0xd131, 0xd134, 0xd138,
+  0xd13a, 0xd140, 0xd141, 0xd143, 0xd144, 0xd145, 0xd14c, 0xd14d,
+  0xd150, 0xd154, 0xd15c, 0xd15d, 0xd15f, 0xd161, 0xd168, 0xd16c,
+  0xd17c, 0xd184, 0xd188, 0xd1a0, 0xd1a1, 0xd1a4, 0xd1a8, 0xd1b0,
+  0xd1b1, 0xd1b3, 0xd1b5, 0xd1ba, 0xd1bc, 0xd1c0, 0xd1d8, 0xd1f4,
+  0xd1f8, 0xd207, 0xd209, 0xd210, 0xd22c, 0xd22d, 0xd230, 0xd234,
+  0xd23c, 0xd23d, 0xd23f, 0xd241, 0xd248, 0xd25c,
+  /* 0x46 */
+  0xd264, 0xd280, 0xd281, 0xd284, 0xd288, 0xd290, 0xd291, 0xd295,
+  0xd29c, 0xd2a0, 0xd2a4, 0xd2ac, 0xd2b1, 0xd2b8, 0xd2b9, 0xd2bc,
+  0xd2bf, 0xd2c0, 0xd2c2, 0xd2c8, 0xd2c9, 0xd2cb, 0xd2d4, 0xd2d8,
+  0xd2dc, 0xd2e4, 0xd2e5, 0xd2f0, 0xd2f1, 0xd2f4, 0xd2f8, 0xd300,
+  0xd301, 0xd303, 0xd305, 0xd30c, 0xd30d, 0xd30e, 0xd310, 0xd314,
+  0xd316, 0xd31c, 0xd31d, 0xd31f, 0xd320, 0xd321, 0xd325, 0xd328,
+  0xd329, 0xd32c, 0xd330, 0xd338, 0xd339, 0xd33b, 0xd33c, 0xd33d,
+  0xd344, 0xd345, 0xd37c, 0xd37d, 0xd380, 0xd384, 0xd38c, 0xd38d,
+  0xd38f, 0xd390, 0xd391, 0xd398, 0xd399, 0xd39c, 0xd3a0, 0xd3a8,
+  0xd3a9, 0xd3ab, 0xd3ad, 0xd3b4, 0xd3b8, 0xd3bc, 0xd3c4, 0xd3c5,
+  0xd3c8, 0xd3c9, 0xd3d0, 0xd3d8, 0xd3e1, 0xd3e3, 0xd3ec, 0xd3ed,
+  0xd3f0, 0xd3f4, 0xd3fc, 0xd3fd, 0xd3ff, 0xd401,
+  /* 0x47 */
+  0xd408, 0xd41d, 0xd440, 0xd444, 0xd45c, 0xd460, 0xd464, 0xd46d,
+  0xd46f, 0xd478, 0xd479, 0xd47c, 0xd47f, 0xd480, 0xd482, 0xd488,
+  0xd489, 0xd48b, 0xd48d, 0xd494, 0xd4a9, 0xd4cc, 0xd4d0, 0xd4d4,
+  0xd4dc, 0xd4df, 0xd4e8, 0xd4ec, 0xd4f0, 0xd4f8, 0xd4fb, 0xd4fd,
+  0xd504, 0xd508, 0xd50c, 0xd514, 0xd515, 0xd517, 0xd53c, 0xd53d,
+  0xd540, 0xd544, 0xd54c, 0xd54d, 0xd54f, 0xd551, 0xd558, 0xd559,
+  0xd55c, 0xd560, 0xd565, 0xd568, 0xd569, 0xd56b, 0xd56d, 0xd574,
+  0xd575, 0xd578, 0xd57c, 0xd584, 0xd585, 0xd587, 0xd588, 0xd589,
+  0xd590, 0xd5a5, 0xd5c8, 0xd5c9, 0xd5cc, 0xd5d0, 0xd5d2, 0xd5d8,
+  0xd5d9, 0xd5db, 0xd5dd, 0xd5e4, 0xd5e5, 0xd5e8, 0xd5ec, 0xd5f4,
+  0xd5f5, 0xd5f7, 0xd5f9, 0xd600, 0xd601, 0xd604, 0xd608, 0xd610,
+  0xd611, 0xd613, 0xd614, 0xd615, 0xd61c, 0xd620,
+  /* 0x48 */
+  0xd624, 0xd62d, 0xd638, 0xd639, 0xd63c, 0xd640, 0xd645, 0xd648,
+  0xd649, 0xd64b, 0xd64d, 0xd651, 0xd654, 0xd655, 0xd658, 0xd65c,
+  0xd667, 0xd669, 0xd670, 0xd671, 0xd674, 0xd683, 0xd685, 0xd68c,
+  0xd68d, 0xd690, 0xd694, 0xd69d, 0xd69f, 0xd6a1, 0xd6a8, 0xd6ac,
+  0xd6b0, 0xd6b9, 0xd6bb, 0xd6c4, 0xd6c5, 0xd6c8, 0xd6cc, 0xd6d1,
+  0xd6d4, 0xd6d7, 0xd6d9, 0xd6e0, 0xd6e4, 0xd6e8, 0xd6f0, 0xd6f5,
+  0xd6fc, 0xd6fd, 0xd700, 0xd704, 0xd711, 0xd718, 0xd719, 0xd71c,
+  0xd720, 0xd728, 0xd729, 0xd72b, 0xd72d, 0xd734, 0xd735, 0xd738,
+  0xd73c, 0xd744, 0xd747, 0xd749, 0xd750, 0xd751, 0xd754, 0xd756,
+  0xd757, 0xd758, 0xd759, 0xd760, 0xd761, 0xd763, 0xd765, 0xd769,
+  0xd76c, 0xd770, 0xd774, 0xd77c, 0xd77d, 0xd781, 0xd788, 0xd789,
+  0xd78c, 0xd790, 0xd798, 0xd799, 0xd79b, 0xd79d,
+};
+static const unsigned short ksc5601_2uni_page4a[4888] = {
+  /* 0x4a */
+  0x4f3d, 0x4f73, 0x5047, 0x50f9, 0x52a0, 0x53ef, 0x5475, 0x54e5,
+  0x5609, 0x5ac1, 0x5bb6, 0x6687, 0x67b6, 0x67b7, 0x67ef, 0x6b4c,
+  0x73c2, 0x75c2, 0x7a3c, 0x82db, 0x8304, 0x8857, 0x8888, 0x8a36,
+  0x8cc8, 0x8dcf, 0x8efb, 0x8fe6, 0x99d5, 0x523b, 0x5374, 0x5404,
+  0x606a, 0x6164, 0x6bbc, 0x73cf, 0x811a, 0x89ba, 0x89d2, 0x95a3,
+  0x4f83, 0x520a, 0x58be, 0x5978, 0x59e6, 0x5e72, 0x5e79, 0x61c7,
+  0x63c0, 0x6746, 0x67ec, 0x687f, 0x6f97, 0x764e, 0x770b, 0x78f5,
+  0x7a08, 0x7aff, 0x7c21, 0x809d, 0x826e, 0x8271, 0x8aeb, 0x9593,
+  0x4e6b, 0x559d, 0x66f7, 0x6e34, 0x78a3, 0x7aed, 0x845b, 0x8910,
+  0x874e, 0x97a8, 0x52d8, 0x574e, 0x582a, 0x5d4c, 0x611f, 0x61be,
+  0x6221, 0x6562, 0x67d1, 0x6a44, 0x6e1b, 0x7518, 0x75b3, 0x76e3,
+  0x77b0, 0x7d3a, 0x90af, 0x9451, 0x9452, 0x9f95,
+  /* 0x4b */
+  0x5323, 0x5cac, 0x7532, 0x80db, 0x9240, 0x9598, 0x525b, 0x5808,
+  0x59dc, 0x5ca1, 0x5d17, 0x5eb7, 0x5f3a, 0x5f4a, 0x6177, 0x6c5f,
+  0x757a, 0x7586, 0x7ce0, 0x7d73, 0x7db1, 0x7f8c, 0x8154, 0x8221,
+  0x8591, 0x8941, 0x8b1b, 0x92fc, 0x964d, 0x9c47, 0x4ecb, 0x4ef7,
+  0x500b, 0x51f1, 0x584f, 0x6137, 0x613e, 0x6168, 0x6539, 0x69ea,
+  0x6f11, 0x75a5, 0x7686, 0x76d6, 0x7b87, 0x82a5, 0x84cb, 0xf900,
+  0x93a7, 0x958b, 0x5580, 0x5ba2, 0x5751, 0xf901, 0x7cb3, 0x7fb9,
+  0x91b5, 0x5028, 0x53bb, 0x5c45, 0x5de8, 0x62d2, 0x636e, 0x64da,
+  0x64e7, 0x6e20, 0x70ac, 0x795b, 0x8ddd, 0x8e1e, 0xf902, 0x907d,
+  0x9245, 0x92f8, 0x4e7e, 0x4ef6, 0x5065, 0x5dfe, 0x5efa, 0x6106,
+  0x6957, 0x8171, 0x8654, 0x8e47, 0x9375, 0x9a2b, 0x4e5e, 0x5091,
+  0x6770, 0x6840, 0x5109, 0x528d, 0x5292, 0x6aa2,
+  /* 0x4c */
+  0x77bc, 0x9210, 0x9ed4, 0x52ab, 0x602f, 0x8ff2, 0x5048, 0x61a9,
+  0x63ed, 0x64ca, 0x683c, 0x6a84, 0x6fc0, 0x8188, 0x89a1, 0x9694,
+  0x5805, 0x727d, 0x72ac, 0x7504, 0x7d79, 0x7e6d, 0x80a9, 0x898b,
+  0x8b74, 0x9063, 0x9d51, 0x6289, 0x6c7a, 0x6f54, 0x7d50, 0x7f3a,
+  0x8a23, 0x517c, 0x614a, 0x7b9d, 0x8b19, 0x9257, 0x938c, 0x4eac,
+  0x4fd3, 0x501e, 0x50be, 0x5106, 0x52c1, 0x52cd, 0x537f, 0x5770,
+  0x5883, 0x5e9a, 0x5f91, 0x6176, 0x61ac, 0x64ce, 0x656c, 0x666f,
+  0x66bb, 0x66f4, 0x6897, 0x6d87, 0x7085, 0x70f1, 0x749f, 0x74a5,
+  0x74ca, 0x75d9, 0x786c, 0x78ec, 0x7adf, 0x7af6, 0x7d45, 0x7d93,
+  0x8015, 0x803f, 0x811b, 0x8396, 0x8b66, 0x8f15, 0x9015, 0x93e1,
+  0x9803, 0x9838, 0x9a5a, 0x9be8, 0x4fc2, 0x5553, 0x583a, 0x5951,
+  0x5b63, 0x5c46, 0x60b8, 0x6212, 0x6842, 0x68b0,
+  /* 0x4d */
+  0x68e8, 0x6eaa, 0x754c, 0x7678, 0x78ce, 0x7a3d, 0x7cfb, 0x7e6b,
+  0x7e7c, 0x8a08, 0x8aa1, 0x8c3f, 0x968e, 0x9dc4, 0x53e4, 0x53e9,
+  0x544a, 0x5471, 0x56fa, 0x59d1, 0x5b64, 0x5c3b, 0x5eab, 0x62f7,
+  0x6537, 0x6545, 0x6572, 0x66a0, 0x67af, 0x69c1, 0x6cbd, 0x75fc,
+  0x7690, 0x777e, 0x7a3f, 0x7f94, 0x8003, 0x80a1, 0x818f, 0x82e6,
+  0x82fd, 0x83f0, 0x85c1, 0x8831, 0x88b4, 0x8aa5, 0xf903, 0x8f9c,
+  0x932e, 0x96c7, 0x9867, 0x9ad8, 0x9f13, 0x54ed, 0x659b, 0x66f2,
+  0x688f, 0x7a40, 0x8c37, 0x9d60, 0x56f0, 0x5764, 0x5d11, 0x6606,
+  0x68b1, 0x68cd, 0x6efe, 0x7428, 0x889e, 0x9be4, 0x6c68, 0xf904,
+  0x9aa8, 0x4f9b, 0x516c, 0x5171, 0x529f, 0x5b54, 0x5de5, 0x6050,
+  0x606d, 0x62f1, 0x63a7, 0x653b, 0x73d9, 0x7a7a, 0x86a3, 0x8ca2,
+  0x978f, 0x4e32, 0x5be1, 0x6208, 0x679c, 0x74dc,
+  /* 0x4e */
+  0x79d1, 0x83d3, 0x8a87, 0x8ab2, 0x8de8, 0x904e, 0x934b, 0x9846,
+  0x5ed3, 0x69e8, 0x85ff, 0x90ed, 0xf905, 0x51a0, 0x5b98, 0x5bec,
+  0x6163, 0x68fa, 0x6b3e, 0x704c, 0x742f, 0x74d8, 0x7ba1, 0x7f50,
+  0x83c5, 0x89c0, 0x8cab, 0x95dc, 0x9928, 0x522e, 0x605d, 0x62ec,
+  0x9002, 0x4f8a, 0x5149, 0x5321, 0x58d9, 0x5ee3, 0x66e0, 0x6d38,
+  0x709a, 0x72c2, 0x73d6, 0x7b50, 0x80f1, 0x945b, 0x5366, 0x639b,
+  0x7f6b, 0x4e56, 0x5080, 0x584a, 0x58de, 0x602a, 0x6127, 0x62d0,
+  0x69d0, 0x9b41, 0x5b8f, 0x7d18, 0x80b1, 0x8f5f, 0x4ea4, 0x50d1,
+  0x54ac, 0x55ac, 0x5b0c, 0x5da0, 0x5de7, 0x652a, 0x654e, 0x6821,
+  0x6a4b, 0x72e1, 0x768e, 0x77ef, 0x7d5e, 0x7ff9, 0x81a0, 0x854e,
+  0x86df, 0x8f03, 0x8f4e, 0x90ca, 0x9903, 0x9a55, 0x9bab, 0x4e18,
+  0x4e45, 0x4e5d, 0x4ec7, 0x4ff1, 0x5177, 0x52fe,
+  /* 0x4f */
+  0x5340, 0x53e3, 0x53e5, 0x548e, 0x5614, 0x5775, 0x57a2, 0x5bc7,
+  0x5d87, 0x5ed0, 0x61fc, 0x62d8, 0x6551, 0x67b8, 0x67e9, 0x69cb,
+  0x6b50, 0x6bc6, 0x6bec, 0x6c42, 0x6e9d, 0x7078, 0x72d7, 0x7396,
+  0x7403, 0x77bf, 0x77e9, 0x7a76, 0x7d7f, 0x8009, 0x81fc, 0x8205,
+  0x820a, 0x82df, 0x8862, 0x8b33, 0x8cfc, 0x8ec0, 0x9011, 0x90b1,
+  0x9264, 0x92b6, 0x99d2, 0x9a45, 0x9ce9, 0x9dd7, 0x9f9c, 0x570b,
+  0x5c40, 0x83ca, 0x97a0, 0x97ab, 0x9eb4, 0x541b, 0x7a98, 0x7fa4,
+  0x88d9, 0x8ecd, 0x90e1, 0x5800, 0x5c48, 0x6398, 0x7a9f, 0x5bae,
+  0x5f13, 0x7a79, 0x7aae, 0x828e, 0x8eac, 0x5026, 0x5238, 0x52f8,
+  0x5377, 0x5708, 0x62f3, 0x6372, 0x6b0a, 0x6dc3, 0x7737, 0x53a5,
+  0x7357, 0x8568, 0x8e76, 0x95d5, 0x673a, 0x6ac3, 0x6f70, 0x8a6d,
+  0x8ecc, 0x994b, 0xf906, 0x6677, 0x6b78, 0x8cb4,
+  /* 0x50 */
+  0x9b3c, 0xf907, 0x53eb, 0x572d, 0x594e, 0x63c6, 0x69fb, 0x73ea,
+  0x7845, 0x7aba, 0x7ac5, 0x7cfe, 0x8475, 0x898f, 0x8d73, 0x9035,
+  0x95a8, 0x52fb, 0x5747, 0x7547, 0x7b60, 0x83cc, 0x921e, 0xf908,
+  0x6a58, 0x514b, 0x524b, 0x5287, 0x621f, 0x68d8, 0x6975, 0x9699,
+  0x50c5, 0x52a4, 0x52e4, 0x61c3, 0x65a4, 0x6839, 0x69ff, 0x747e,
+  0x7b4b, 0x82b9, 0x83eb, 0x89b2, 0x8b39, 0x8fd1, 0x9949, 0xf909,
+  0x4eca, 0x5997, 0x64d2, 0x6611, 0x6a8e, 0x7434, 0x7981, 0x79bd,
+  0x82a9, 0x887e, 0x887f, 0x895f, 0xf90a, 0x9326, 0x4f0b, 0x53ca,
+  0x6025, 0x6271, 0x6c72, 0x7d1a, 0x7d66, 0x4e98, 0x5162, 0x77dc,
+  0x80af, 0x4f01, 0x4f0e, 0x5176, 0x5180, 0x55dc, 0x5668, 0x573b,
+  0x57fa, 0x57fc, 0x5914, 0x5947, 0x5993, 0x5bc4, 0x5c90, 0x5d0e,
+  0x5df1, 0x5e7e, 0x5fcc, 0x6280, 0x65d7, 0x65e3,
+  /* 0x51 */
+  0x671e, 0x671f, 0x675e, 0x68cb, 0x68c4, 0x6a5f, 0x6b3a, 0x6c23,
+  0x6c7d, 0x6c82, 0x6dc7, 0x7398, 0x7426, 0x742a, 0x7482, 0x74a3,
+  0x7578, 0x757f, 0x7881, 0x78ef, 0x7941, 0x7947, 0x7948, 0x797a,
+  0x7b95, 0x7d00, 0x7dba, 0x7f88, 0x8006, 0x802d, 0x808c, 0x8a18,
+  0x8b4f, 0x8c48, 0x8d77, 0x9321, 0x9324, 0x98e2, 0x9951, 0x9a0e,
+  0x9a0f, 0x9a65, 0x9e92, 0x7dca, 0x4f76, 0x5409, 0x62ee, 0x6854,
+  0x91d1, 0x55ab, 0x513a, 0xf90b, 0xf90c, 0x5a1c, 0x61e6, 0xf90d,
+  0x62cf, 0x62ff, 0xf90e, 0xf90f, 0xf910, 0xf911, 0xf912, 0xf913,
+  0x90a3, 0xf914, 0xf915, 0xf916, 0xf917, 0xf918, 0x8afe, 0xf919,
+  0xf91a, 0xf91b, 0xf91c, 0x6696, 0xf91d, 0x7156, 0xf91e, 0xf91f,
+  0x96e3, 0xf920, 0x634f, 0x637a, 0x5357, 0xf921, 0x678f, 0x6960,
+  0x6e73, 0xf922, 0x7537, 0xf923, 0xf924, 0xf925,
+  /* 0x52 */
+  0x7d0d, 0xf926, 0xf927, 0x8872, 0x56ca, 0x5a18, 0xf928, 0xf929,
+  0xf92a, 0xf92b, 0xf92c, 0x4e43, 0xf92d, 0x5167, 0x5948, 0x67f0,
+  0x8010, 0xf92e, 0x5973, 0x5e74, 0x649a, 0x79ca, 0x5ff5, 0x606c,
+  0x62c8, 0x637b, 0x5be7, 0x5bd7, 0x52aa, 0xf92f, 0x5974, 0x5f29,
+  0x6012, 0xf930, 0xf931, 0xf932, 0x7459, 0xf933, 0xf934, 0xf935,
+  0xf936, 0xf937, 0xf938, 0x99d1, 0xf939, 0xf93a, 0xf93b, 0xf93c,
+  0xf93d, 0xf93e, 0xf93f, 0xf940, 0xf941, 0xf942, 0xf943, 0x6fc3,
+  0xf944, 0xf945, 0x81bf, 0x8fb2, 0x60f1, 0xf946, 0xf947, 0x8166,
+  0xf948, 0xf949, 0x5c3f, 0xf94a, 0xf94b, 0xf94c, 0xf94d, 0xf94e,
+  0xf94f, 0xf950, 0xf951, 0x5ae9, 0x8a25, 0x677b, 0x7d10, 0xf952,
+  0xf953, 0xf954, 0xf955, 0xf956, 0xf957, 0x80fd, 0xf958, 0xf959,
+  0x5c3c, 0x6ce5, 0x533f, 0x6eba, 0x591a, 0x8336,
+  /* 0x53 */
+  0x4e39, 0x4eb6, 0x4f46, 0x55ae, 0x5718, 0x58c7, 0x5f56, 0x65b7,
+  0x65e6, 0x6a80, 0x6bb5, 0x6e4d, 0x77ed, 0x7aef, 0x7c1e, 0x7dde,
+  0x86cb, 0x8892, 0x9132, 0x935b, 0x64bb, 0x6fbe, 0x737a, 0x75b8,
+  0x9054, 0x5556, 0x574d, 0x61ba, 0x64d4, 0x66c7, 0x6de1, 0x6e5b,
+  0x6f6d, 0x6fb9, 0x75f0, 0x8043, 0x81bd, 0x8541, 0x8983, 0x8ac7,
+  0x8b5a, 0x931f, 0x6c93, 0x7553, 0x7b54, 0x8e0f, 0x905d, 0x5510,
+  0x5802, 0x5858, 0x5e62, 0x6207, 0x649e, 0x68e0, 0x7576, 0x7cd6,
+  0x87b3, 0x9ee8, 0x4ee3, 0x5788, 0x576e, 0x5927, 0x5c0d, 0x5cb1,
+  0x5e36, 0x5f85, 0x6234, 0x64e1, 0x73b3, 0x81fa, 0x888b, 0x8cb8,
+  0x968a, 0x9edb, 0x5b85, 0x5fb7, 0x60b3, 0x5012, 0x5200, 0x5230,
+  0x5716, 0x5835, 0x5857, 0x5c0e, 0x5c60, 0x5cf6, 0x5d8b, 0x5ea6,
+  0x5f92, 0x60bc, 0x6311, 0x6389, 0x6417, 0x6843,
+  /* 0x54 */
+  0x68f9, 0x6ac2, 0x6dd8, 0x6e21, 0x6ed4, 0x6fe4, 0x71fe, 0x76dc,
+  0x7779, 0x79b1, 0x7a3b, 0x8404, 0x89a9, 0x8ced, 0x8df3, 0x8e48,
+  0x9003, 0x9014, 0x9053, 0x90fd, 0x934d, 0x9676, 0x97dc, 0x6bd2,
+  0x7006, 0x7258, 0x72a2, 0x7368, 0x7763, 0x79bf, 0x7be4, 0x7e9b,
+  0x8b80, 0x58a9, 0x60c7, 0x6566, 0x65fd, 0x66be, 0x6c8c, 0x711e,
+  0x71c9, 0x8c5a, 0x9813, 0x4e6d, 0x7a81, 0x4edd, 0x51ac, 0x51cd,
+  0x52d5, 0x540c, 0x61a7, 0x6771, 0x6850, 0x68df, 0x6d1e, 0x6f7c,
+  0x75bc, 0x77b3, 0x7ae5, 0x80f4, 0x8463, 0x9285, 0x515c, 0x6597,
+  0x675c, 0x6793, 0x75d8, 0x7ac7, 0x8373, 0xf95a, 0x8c46, 0x9017,
+  0x982d, 0x5c6f, 0x81c0, 0x829a, 0x9041, 0x906f, 0x920d, 0x5f97,
+  0x5d9d, 0x6a59, 0x71c8, 0x767b, 0x7b49, 0x85e4, 0x8b04, 0x9127,
+  0x9a30, 0x5587, 0x61f6, 0xf95b, 0x7669, 0x7f85,
+  /* 0x55 */
+  0x863f, 0x87ba, 0x88f8, 0x908f, 0xf95c, 0x6d1b, 0x70d9, 0x73de,
+  0x7d61, 0x843d, 0xf95d, 0x916a, 0x99f1, 0xf95e, 0x4e82, 0x5375,
+  0x6b04, 0x6b12, 0x703e, 0x721b, 0x862d, 0x9e1e, 0x524c, 0x8fa3,
+  0x5d50, 0x64e5, 0x652c, 0x6b16, 0x6feb, 0x7c43, 0x7e9c, 0x85cd,
+  0x8964, 0x89bd, 0x62c9, 0x81d8, 0x881f, 0x5eca, 0x6717, 0x6d6a,
+  0x72fc, 0x7405, 0x746f, 0x8782, 0x90de, 0x4f86, 0x5d0d, 0x5fa0,
+  0x840a, 0x51b7, 0x63a0, 0x7565, 0x4eae, 0x5006, 0x5169, 0x51c9,
+  0x6881, 0x6a11, 0x7cae, 0x7cb1, 0x7ce7, 0x826f, 0x8ad2, 0x8f1b,
+  0x91cf, 0x4fb6, 0x5137, 0x52f5, 0x5442, 0x5eec, 0x616e, 0x623e,
+  0x65c5, 0x6ada, 0x6ffe, 0x792a, 0x85dc, 0x8823, 0x95ad, 0x9a62,
+  0x9a6a, 0x9e97, 0x9ece, 0x529b, 0x66c6, 0x6b77, 0x701d, 0x792b,
+  0x8f62, 0x9742, 0x6190, 0x6200, 0x6523, 0x6f23,
+  /* 0x56 */
+  0x7149, 0x7489, 0x7df4, 0x806f, 0x84ee, 0x8f26, 0x9023, 0x934a,
+  0x51bd, 0x5217, 0x52a3, 0x6d0c, 0x70c8, 0x88c2, 0x5ec9, 0x6582,
+  0x6bae, 0x6fc2, 0x7c3e, 0x7375, 0x4ee4, 0x4f36, 0x56f9, 0xf95f,
+  0x5cba, 0x5dba, 0x601c, 0x73b2, 0x7b2d, 0x7f9a, 0x7fce, 0x8046,
+  0x901e, 0x9234, 0x96f6, 0x9748, 0x9818, 0x9f61, 0x4f8b, 0x6fa7,
+  0x79ae, 0x91b4, 0x96b7, 0x52de, 0xf960, 0x6488, 0x64c4, 0x6ad3,
+  0x6f5e, 0x7018, 0x7210, 0x76e7, 0x8001, 0x8606, 0x865c, 0x8def,
+  0x8f05, 0x9732, 0x9b6f, 0x9dfa, 0x9e75, 0x788c, 0x797f, 0x7da0,
+  0x83c9, 0x9304, 0x9e7f, 0x9e93, 0x8ad6, 0x58df, 0x5f04, 0x6727,
+  0x7027, 0x74cf, 0x7c60, 0x807e, 0x5121, 0x7028, 0x7262, 0x78ca,
+  0x8cc2, 0x8cda, 0x8cf4, 0x96f7, 0x4e86, 0x50da, 0x5bee, 0x5ed6,
+  0x6599, 0x71ce, 0x7642, 0x77ad, 0x804a, 0x84fc,
+  /* 0x57 */
+  0x907c, 0x9b27, 0x9f8d, 0x58d8, 0x5a41, 0x5c62, 0x6a13, 0x6dda,
+  0x6f0f, 0x763b, 0x7d2f, 0x7e37, 0x851e, 0x8938, 0x93e4, 0x964b,
+  0x5289, 0x65d2, 0x67f3, 0x69b4, 0x6d41, 0x6e9c, 0x700f, 0x7409,
+  0x7460, 0x7559, 0x7624, 0x786b, 0x8b2c, 0x985e, 0x516d, 0x622e,
+  0x9678, 0x4f96, 0x502b, 0x5d19, 0x6dea, 0x7db8, 0x8f2a, 0x5f8b,
+  0x6144, 0x6817, 0xf961, 0x9686, 0x52d2, 0x808b, 0x51dc, 0x51cc,
+  0x695e, 0x7a1c, 0x7dbe, 0x83f1, 0x9675, 0x4fda, 0x5229, 0x5398,
+  0x540f, 0x550e, 0x5c65, 0x60a7, 0x674e, 0x68a8, 0x6d6c, 0x7281,
+  0x72f8, 0x7406, 0x7483, 0xf962, 0x75e2, 0x7c6c, 0x7f79, 0x7fb8,
+  0x8389, 0x88cf, 0x88e1, 0x91cc, 0x91d0, 0x96e2, 0x9bc9, 0x541d,
+  0x6f7e, 0x71d0, 0x7498, 0x85fa, 0x8eaa, 0x96a3, 0x9c57, 0x9e9f,
+  0x6797, 0x6dcb, 0x7433, 0x81e8, 0x9716, 0x782c,
+  /* 0x58 */
+  0x7acb, 0x7b20, 0x7c92, 0x6469, 0x746a, 0x75f2, 0x78bc, 0x78e8,
+  0x99ac, 0x9b54, 0x9ebb, 0x5bde, 0x5e55, 0x6f20, 0x819c, 0x83ab,
+  0x9088, 0x4e07, 0x534d, 0x5a29, 0x5dd2, 0x5f4e, 0x6162, 0x633d,
+  0x6669, 0x66fc, 0x6eff, 0x6f2b, 0x7063, 0x779e, 0x842c, 0x8513,
+  0x883b, 0x8f13, 0x9945, 0x9c3b, 0x551c, 0x62b9, 0x672b, 0x6cab,
+  0x8309, 0x896a, 0x977a, 0x4ea1, 0x5984, 0x5fd8, 0x5fd9, 0x671b,
+  0x7db2, 0x7f54, 0x8292, 0x832b, 0x83bd, 0x8f1e, 0x9099, 0x57cb,
+  0x59b9, 0x5a92, 0x5bd0, 0x6627, 0x679a, 0x6885, 0x6bcf, 0x7164,
+  0x7f75, 0x8cb7, 0x8ce3, 0x9081, 0x9b45, 0x8108, 0x8c8a, 0x964c,
+  0x9a40, 0x9ea5, 0x5b5f, 0x6c13, 0x731b, 0x76f2, 0x76df, 0x840c,
+  0x51aa, 0x8993, 0x514d, 0x5195, 0x52c9, 0x68c9, 0x6c94, 0x7704,
+  0x7720, 0x7dbf, 0x7dec, 0x9762, 0x9eb5, 0x6ec5,
+  /* 0x59 */
+  0x8511, 0x51a5, 0x540d, 0x547d, 0x660e, 0x669d, 0x6927, 0x6e9f,
+  0x76bf, 0x7791, 0x8317, 0x84c2, 0x879f, 0x9169, 0x9298, 0x9cf4,
+  0x8882, 0x4fae, 0x5192, 0x52df, 0x59c6, 0x5e3d, 0x6155, 0x6478,
+  0x6479, 0x66ae, 0x67d0, 0x6a21, 0x6bcd, 0x6bdb, 0x725f, 0x7261,
+  0x7441, 0x7738, 0x77db, 0x8017, 0x82bc, 0x8305, 0x8b00, 0x8b28,
+  0x8c8c, 0x6728, 0x6c90, 0x7267, 0x76ee, 0x7766, 0x7a46, 0x9da9,
+  0x6b7f, 0x6c92, 0x5922, 0x6726, 0x8499, 0x536f, 0x5893, 0x5999,
+  0x5edf, 0x63cf, 0x6634, 0x6773, 0x6e3a, 0x732b, 0x7ad7, 0x82d7,
+  0x9328, 0x52d9, 0x5deb, 0x61ae, 0x61cb, 0x620a, 0x62c7, 0x64ab,
+  0x65e0, 0x6959, 0x6b66, 0x6bcb, 0x7121, 0x73f7, 0x755d, 0x7e46,
+  0x821e, 0x8302, 0x856a, 0x8aa3, 0x8cbf, 0x9727, 0x9d61, 0x58a8,
+  0x9ed8, 0x5011, 0x520e, 0x543b, 0x554f, 0x6587,
+  /* 0x5a */
+  0x6c76, 0x7d0a, 0x7d0b, 0x805e, 0x868a, 0x9580, 0x96ef, 0x52ff,
+  0x6c95, 0x7269, 0x5473, 0x5a9a, 0x5c3e, 0x5d4b, 0x5f4c, 0x5fae,
+  0x672a, 0x68b6, 0x6963, 0x6e3c, 0x6e44, 0x7709, 0x7c73, 0x7f8e,
+  0x8587, 0x8b0e, 0x8ff7, 0x9761, 0x9ef4, 0x5cb7, 0x60b6, 0x610d,
+  0x61ab, 0x654f, 0x65fb, 0x65fc, 0x6c11, 0x6cef, 0x739f, 0x73c9,
+  0x7de1, 0x9594, 0x5bc6, 0x871c, 0x8b10, 0x525d, 0x535a, 0x62cd,
+  0x640f, 0x64b2, 0x6734, 0x6a38, 0x6cca, 0x73c0, 0x749e, 0x7b94,
+  0x7c95, 0x7e1b, 0x818a, 0x8236, 0x8584, 0x8feb, 0x96f9, 0x99c1,
+  0x4f34, 0x534a, 0x53cd, 0x53db, 0x62cc, 0x642c, 0x6500, 0x6591,
+  0x69c3, 0x6cee, 0x6f58, 0x73ed, 0x7554, 0x7622, 0x76e4, 0x76fc,
+  0x78d0, 0x78fb, 0x792c, 0x7d46, 0x822c, 0x87e0, 0x8fd4, 0x9812,
+  0x98ef, 0x52c3, 0x62d4, 0x64a5, 0x6e24, 0x6f51,
+  /* 0x5b */
+  0x767c, 0x8dcb, 0x91b1, 0x9262, 0x9aee, 0x9b43, 0x5023, 0x508d,
+  0x574a, 0x59a8, 0x5c28, 0x5e47, 0x5f77, 0x623f, 0x653e, 0x65b9,
+  0x65c1, 0x6609, 0x678b, 0x699c, 0x6ec2, 0x78c5, 0x7d21, 0x80aa,
+  0x8180, 0x822b, 0x82b3, 0x84a1, 0x868c, 0x8a2a, 0x8b17, 0x90a6,
+  0x9632, 0x9f90, 0x500d, 0x4ff3, 0xf963, 0x57f9, 0x5f98, 0x62dc,
+  0x6392, 0x676f, 0x6e43, 0x7119, 0x76c3, 0x80cc, 0x80da, 0x88f4,
+  0x88f5, 0x8919, 0x8ce0, 0x8f29, 0x914d, 0x966a, 0x4f2f, 0x4f70,
+  0x5e1b, 0x67cf, 0x6822, 0x767d, 0x767e, 0x9b44, 0x5e61, 0x6a0a,
+  0x7169, 0x71d4, 0x756a, 0xf964, 0x7e41, 0x8543, 0x85e9, 0x98dc,
+  0x4f10, 0x7b4f, 0x7f70, 0x95a5, 0x51e1, 0x5e06, 0x68b5, 0x6c3e,
+  0x6c4e, 0x6cdb, 0x72af, 0x7bc4, 0x8303, 0x6cd5, 0x743a, 0x50fb,
+  0x5288, 0x58c1, 0x64d8, 0x6a97, 0x74a7, 0x7656,
+  /* 0x5c */
+  0x78a7, 0x8617, 0x95e2, 0x9739, 0xf965, 0x535e, 0x5f01, 0x8b8a,
+  0x8fa8, 0x8faf, 0x908a, 0x5225, 0x77a5, 0x9c49, 0x9f08, 0x4e19,
+  0x5002, 0x5175, 0x5c5b, 0x5e77, 0x661e, 0x663a, 0x67c4, 0x68c5,
+  0x70b3, 0x7501, 0x75c5, 0x79c9, 0x7add, 0x8f27, 0x9920, 0x9a08,
+  0x4fdd, 0x5821, 0x5831, 0x5bf6, 0x666e, 0x6b65, 0x6d11, 0x6e7a,
+  0x6f7d, 0x73e4, 0x752b, 0x83e9, 0x88dc, 0x8913, 0x8b5c, 0x8f14,
+  0x4f0f, 0x50d5, 0x5310, 0x535c, 0x5b93, 0x5fa9, 0x670d, 0x798f,
+  0x8179, 0x832f, 0x8514, 0x8907, 0x8986, 0x8f39, 0x8f3b, 0x99a5,
+  0x9c12, 0x672c, 0x4e76, 0x4ff8, 0x5949, 0x5c01, 0x5cef, 0x5cf0,
+  0x6367, 0x68d2, 0x70fd, 0x71a2, 0x742b, 0x7e2b, 0x84ec, 0x8702,
+  0x9022, 0x92d2, 0x9cf3, 0x4e0d, 0x4ed8, 0x4fef, 0x5085, 0x5256,
+  0x526f, 0x5426, 0x5490, 0x57e0, 0x592b, 0x5a66,
+  /* 0x5d */
+  0x5b5a, 0x5b75, 0x5bcc, 0x5e9c, 0xf966, 0x6276, 0x6577, 0x65a7,
+  0x6d6e, 0x6ea5, 0x7236, 0x7b26, 0x7c3f, 0x7f36, 0x8150, 0x8151,
+  0x819a, 0x8240, 0x8299, 0x83a9, 0x8a03, 0x8ca0, 0x8ce6, 0x8cfb,
+  0x8d74, 0x8dba, 0x90e8, 0x91dc, 0x961c, 0x9644, 0x99d9, 0x9ce7,
+  0x5317, 0x5206, 0x5429, 0x5674, 0x58b3, 0x5954, 0x596e, 0x5fff,
+  0x61a4, 0x626e, 0x6610, 0x6c7e, 0x711a, 0x76c6, 0x7c89, 0x7cde,
+  0x7d1b, 0x82ac, 0x8cc1, 0x96f0, 0xf967, 0x4f5b, 0x5f17, 0x5f7f,
+  0x62c2, 0x5d29, 0x670b, 0x68da, 0x787c, 0x7e43, 0x9d6c, 0x4e15,
+  0x5099, 0x5315, 0x532a, 0x5351, 0x5983, 0x5a62, 0x5e87, 0x60b2,
+  0x618a, 0x6249, 0x6279, 0x6590, 0x6787, 0x69a7, 0x6bd4, 0x6bd6,
+  0x6bd7, 0x6bd8, 0x6cb8, 0xf968, 0x7435, 0x75fa, 0x7812, 0x7891,
+  0x79d5, 0x79d8, 0x7c83, 0x7dcb, 0x7fe1, 0x80a5,
+  /* 0x5e */
+  0x813e, 0x81c2, 0x83f2, 0x871a, 0x88e8, 0x8ab9, 0x8b6c, 0x8cbb,
+  0x9119, 0x975e, 0x98db, 0x9f3b, 0x56ac, 0x5b2a, 0x5f6c, 0x658c,
+  0x6ab3, 0x6baf, 0x6d5c, 0x6ff1, 0x7015, 0x725d, 0x73ad, 0x8ca7,
+  0x8cd3, 0x983b, 0x6191, 0x6c37, 0x8058, 0x9a01, 0x4e4d, 0x4e8b,
+  0x4e9b, 0x4ed5, 0x4f3a, 0x4f3c, 0x4f7f, 0x4fdf, 0x50ff, 0x53f2,
+  0x53f8, 0x5506, 0x55e3, 0x56db, 0x58eb, 0x5962, 0x5a11, 0x5beb,
+  0x5bfa, 0x5c04, 0x5df3, 0x5e2b, 0x5f99, 0x601d, 0x6368, 0x659c,
+  0x65af, 0x67f6, 0x67fb, 0x68ad, 0x6b7b, 0x6c99, 0x6cd7, 0x6e23,
+  0x7009, 0x7345, 0x7802, 0x793e, 0x7940, 0x7960, 0x79c1, 0x7be9,
+  0x7d17, 0x7d72, 0x8086, 0x820d, 0x838e, 0x84d1, 0x86c7, 0x88df,
+  0x8a50, 0x8a5e, 0x8b1d, 0x8cdc, 0x8d66, 0x8fad, 0x90aa, 0x98fc,
+  0x99df, 0x9e9d, 0x524a, 0xf969, 0x6714, 0xf96a,
+  /* 0x5f */
+  0x5098, 0x522a, 0x5c71, 0x6563, 0x6c55, 0x73ca, 0x7523, 0x759d,
+  0x7b97, 0x849c, 0x9178, 0x9730, 0x4e77, 0x6492, 0x6bba, 0x715e,
+  0x85a9, 0x4e09, 0xf96b, 0x6749, 0x68ee, 0x6e17, 0x829f, 0x8518,
+  0x886b, 0x63f7, 0x6f81, 0x9212, 0x98af, 0x4e0a, 0x50b7, 0x50cf,
+  0x511f, 0x5546, 0x55aa, 0x5617, 0x5b40, 0x5c19, 0x5ce0, 0x5e38,
+  0x5e8a, 0x5ea0, 0x5ec2, 0x60f3, 0x6851, 0x6a61, 0x6e58, 0x723d,
+  0x7240, 0x72c0, 0x76f8, 0x7965, 0x7bb1, 0x7fd4, 0x88f3, 0x89f4,
+  0x8a73, 0x8c61, 0x8cde, 0x971c, 0x585e, 0x74bd, 0x8cfd, 0x55c7,
+  0xf96c, 0x7a61, 0x7d22, 0x8272, 0x7272, 0x751f, 0x7525, 0xf96d,
+  0x7b19, 0x5885, 0x58fb, 0x5dbc, 0x5e8f, 0x5eb6, 0x5f90, 0x6055,
+  0x6292, 0x637f, 0x654d, 0x6691, 0x66d9, 0x66f8, 0x6816, 0x68f2,
+  0x7280, 0x745e, 0x7b6e, 0x7d6e, 0x7dd6, 0x7f72,
+  /* 0x60 */
+  0x80e5, 0x8212, 0x85af, 0x897f, 0x8a93, 0x901d, 0x92e4, 0x9ecd,
+  0x9f20, 0x5915, 0x596d, 0x5e2d, 0x60dc, 0x6614, 0x6673, 0x6790,
+  0x6c50, 0x6dc5, 0x6f5f, 0x77f3, 0x78a9, 0x84c6, 0x91cb, 0x932b,
+  0x4ed9, 0x50ca, 0x5148, 0x5584, 0x5b0b, 0x5ba3, 0x6247, 0x657e,
+  0x65cb, 0x6e32, 0x717d, 0x7401, 0x7444, 0x7487, 0x74bf, 0x766c,
+  0x79aa, 0x7dda, 0x7e55, 0x7fa8, 0x817a, 0x81b3, 0x8239, 0x861a,
+  0x87ec, 0x8a75, 0x8de3, 0x9078, 0x9291, 0x9425, 0x994d, 0x9bae,
+  0x5368, 0x5c51, 0x6954, 0x6cc4, 0x6d29, 0x6e2b, 0x820c, 0x859b,
+  0x893b, 0x8a2d, 0x8aaa, 0x96ea, 0x9f67, 0x5261, 0x66b9, 0x6bb2,
+  0x7e96, 0x87fe, 0x8d0d, 0x9583, 0x965d, 0x651d, 0x6d89, 0x71ee,
+  0xf96e, 0x57ce, 0x59d3, 0x5bac, 0x6027, 0x60fa, 0x6210, 0x661f,
+  0x665f, 0x7329, 0x73f9, 0x76db, 0x7701, 0x7b6c,
+  /* 0x61 */
+  0x8056, 0x8072, 0x8165, 0x8aa0, 0x9192, 0x4e16, 0x52e2, 0x6b72,
+  0x6d17, 0x7a05, 0x7b39, 0x7d30, 0xf96f, 0x8cb0, 0x53ec, 0x562f,
+  0x5851, 0x5bb5, 0x5c0f, 0x5c11, 0x5de2, 0x6240, 0x6383, 0x6414,
+  0x662d, 0x68b3, 0x6cbc, 0x6d88, 0x6eaf, 0x701f, 0x70a4, 0x71d2,
+  0x7526, 0x758f, 0x758e, 0x7619, 0x7b11, 0x7be0, 0x7c2b, 0x7d20,
+  0x7d39, 0x852c, 0x856d, 0x8607, 0x8a34, 0x900d, 0x9061, 0x90b5,
+  0x92b7, 0x97f6, 0x9a37, 0x4fd7, 0x5c6c, 0x675f, 0x6d91, 0x7c9f,
+  0x7e8c, 0x8b16, 0x8d16, 0x901f, 0x5b6b, 0x5dfd, 0x640d, 0x84c0,
+  0x905c, 0x98e1, 0x7387, 0x5b8b, 0x609a, 0x677e, 0x6dde, 0x8a1f,
+  0x8aa6, 0x9001, 0x980c, 0x5237, 0xf970, 0x7051, 0x788e, 0x9396,
+  0x8870, 0x91d7, 0x4fee, 0x53d7, 0x55fd, 0x56da, 0x5782, 0x58fd,
+  0x5ac2, 0x5b88, 0x5cab, 0x5cc0, 0x5e25, 0x6101,
+  /* 0x62 */
+  0x620d, 0x624b, 0x6388, 0x641c, 0x6536, 0x6578, 0x6a39, 0x6b8a,
+  0x6c34, 0x6d19, 0x6f31, 0x71e7, 0x72e9, 0x7378, 0x7407, 0x74b2,
+  0x7626, 0x7761, 0x79c0, 0x7a57, 0x7aea, 0x7cb9, 0x7d8f, 0x7dac,
+  0x7e61, 0x7f9e, 0x8129, 0x8331, 0x8490, 0x84da, 0x85ea, 0x8896,
+  0x8ab0, 0x8b90, 0x8f38, 0x9042, 0x9083, 0x916c, 0x9296, 0x92b9,
+  0x968b, 0x96a7, 0x96a8, 0x96d6, 0x9700, 0x9808, 0x9996, 0x9ad3,
+  0x9b1a, 0x53d4, 0x587e, 0x5919, 0x5b70, 0x5bbf, 0x6dd1, 0x6f5a,
+  0x719f, 0x7421, 0x74b9, 0x8085, 0x83fd, 0x5de1, 0x5f87, 0x5faa,
+  0x6042, 0x65ec, 0x6812, 0x696f, 0x6a53, 0x6b89, 0x6d35, 0x6df3,
+  0x73e3, 0x76fe, 0x77ac, 0x7b4d, 0x7d14, 0x8123, 0x821c, 0x8340,
+  0x84f4, 0x8563, 0x8a62, 0x8ac4, 0x9187, 0x931e, 0x9806, 0x99b4,
+  0x620c, 0x8853, 0x8ff0, 0x9265, 0x5d07, 0x5d27,
+  /* 0x63 */
+  0x5d69, 0x745f, 0x819d, 0x8768, 0x6fd5, 0x62fe, 0x7fd2, 0x8936,
+  0x8972, 0x4e1e, 0x4e58, 0x50e7, 0x52dd, 0x5347, 0x627f, 0x6607,
+  0x7e69, 0x8805, 0x965e, 0x4f8d, 0x5319, 0x5636, 0x59cb, 0x5aa4,
+  0x5c38, 0x5c4e, 0x5c4d, 0x5e02, 0x5f11, 0x6043, 0x65bd, 0x662f,
+  0x6642, 0x67be, 0x67f4, 0x731c, 0x77e2, 0x793a, 0x7fc5, 0x8494,
+  0x84cd, 0x8996, 0x8a66, 0x8a69, 0x8ae1, 0x8c55, 0x8c7a, 0x57f4,
+  0x5bd4, 0x5f0f, 0x606f, 0x62ed, 0x690d, 0x6b96, 0x6e5c, 0x7184,
+  0x7bd2, 0x8755, 0x8b58, 0x8efe, 0x98df, 0x98fe, 0x4f38, 0x4f81,
+  0x4fe1, 0x547b, 0x5a20, 0x5bb8, 0x613c, 0x65b0, 0x6668, 0x71fc,
+  0x7533, 0x795e, 0x7d33, 0x814e, 0x81e3, 0x8398, 0x85aa, 0x85ce,
+  0x8703, 0x8a0a, 0x8eab, 0x8f9b, 0xf971, 0x8fc5, 0x5931, 0x5ba4,
+  0x5be6, 0x6089, 0x5be9, 0x5c0b, 0x5fc3, 0x6c81,
+  /* 0x64 */
+  0xf972, 0x6df1, 0x700b, 0x751a, 0x82af, 0x8af6, 0x4ec0, 0x5341,
+  0xf973, 0x96d9, 0x6c0f, 0x4e9e, 0x4fc4, 0x5152, 0x555e, 0x5a25,
+  0x5ce8, 0x6211, 0x7259, 0x82bd, 0x83aa, 0x86fe, 0x8859, 0x8a1d,
+  0x963f, 0x96c5, 0x9913, 0x9d09, 0x9d5d, 0x580a, 0x5cb3, 0x5dbd,
+  0x5e44, 0x60e1, 0x6115, 0x63e1, 0x6a02, 0x6e25, 0x9102, 0x9354,
+  0x984e, 0x9c10, 0x9f77, 0x5b89, 0x5cb8, 0x6309, 0x664f, 0x6848,
+  0x773c, 0x96c1, 0x978d, 0x9854, 0x9b9f, 0x65a1, 0x8b01, 0x8ecb,
+  0x95bc, 0x5535, 0x5ca9, 0x5dd6, 0x5eb5, 0x6697, 0x764c, 0x83f4,
+  0x95c7, 0x58d3, 0x62bc, 0x72ce, 0x9d28, 0x4ef0, 0x592e, 0x600f,
+  0x663b, 0x6b83, 0x79e7, 0x9d26, 0x5393, 0x54c0, 0x57c3, 0x5d16,
+  0x611b, 0x66d6, 0x6daf, 0x788d, 0x827e, 0x9698, 0x9744, 0x5384,
+  0x627c, 0x6396, 0x6db2, 0x7e0a, 0x814b, 0x984d,
+  /* 0x65 */
+  0x6afb, 0x7f4c, 0x9daf, 0x9e1a, 0x4e5f, 0x503b, 0x51b6, 0x591c,
+  0x60f9, 0x63f6, 0x6930, 0x723a, 0x8036, 0xf974, 0x91ce, 0x5f31,
+  0xf975, 0xf976, 0x7d04, 0x82e5, 0x846f, 0x84bb, 0x85e5, 0x8e8d,
+  0xf977, 0x4f6f, 0xf978, 0xf979, 0x58e4, 0x5b43, 0x6059, 0x63da,
+  0x6518, 0x656d, 0x6698, 0xf97a, 0x694a, 0x6a23, 0x6d0b, 0x7001,
+  0x716c, 0x75d2, 0x760d, 0x79b3, 0x7a70, 0xf97b, 0x7f8a, 0xf97c,
+  0x8944, 0xf97d, 0x8b93, 0x91c0, 0x967d, 0xf97e, 0x990a, 0x5704,
+  0x5fa1, 0x65bc, 0x6f01, 0x7600, 0x79a6, 0x8a9e, 0x99ad, 0x9b5a,
+  0x9f6c, 0x5104, 0x61b6, 0x6291, 0x6a8d, 0x81c6, 0x5043, 0x5830,
+  0x5f66, 0x7109, 0x8a00, 0x8afa, 0x5b7c, 0x8616, 0x4ffa, 0x513c,
+  0x56b4, 0x5944, 0x63a9, 0x6df9, 0x5daa, 0x696d, 0x5186, 0x4e88,
+  0x4f59, 0xf97f, 0xf980, 0xf981, 0x5982, 0xf982,
+  /* 0x66 */
+  0xf983, 0x6b5f, 0x6c5d, 0xf984, 0x74b5, 0x7916, 0xf985, 0x8207,
+  0x8245, 0x8339, 0x8f3f, 0x8f5d, 0xf986, 0x9918, 0xf987, 0xf988,
+  0xf989, 0x4ea6, 0xf98a, 0x57df, 0x5f79, 0x6613, 0xf98b, 0xf98c,
+  0x75ab, 0x7e79, 0x8b6f, 0xf98d, 0x9006, 0x9a5b, 0x56a5, 0x5827,
+  0x59f8, 0x5a1f, 0x5bb4, 0xf98e, 0x5ef6, 0xf98f, 0xf990, 0x6350,
+  0x633b, 0xf991, 0x693d, 0x6c87, 0x6cbf, 0x6d8e, 0x6d93, 0x6df5,
+  0x6f14, 0xf992, 0x70df, 0x7136, 0x7159, 0xf993, 0x71c3, 0x71d5,
+  0xf994, 0x784f, 0x786f, 0xf995, 0x7b75, 0x7de3, 0xf996, 0x7e2f,
+  0xf997, 0x884d, 0x8edf, 0xf998, 0xf999, 0xf99a, 0x925b, 0xf99b,
+  0x9cf6, 0xf99c, 0xf99d, 0xf99e, 0x6085, 0x6d85, 0xf99f, 0x71b1,
+  0xf9a0, 0xf9a1, 0x95b1, 0x53ad, 0xf9a2, 0xf9a3, 0xf9a4, 0x67d3,
+  0xf9a5, 0x708e, 0x7130, 0x7430, 0x8276, 0x82d2,
+  /* 0x67 */
+  0xf9a6, 0x95bb, 0x9ae5, 0x9e7d, 0x66c4, 0xf9a7, 0x71c1, 0x8449,
+  0xf9a8, 0xf9a9, 0x584b, 0xf9aa, 0xf9ab, 0x5db8, 0x5f71, 0xf9ac,
+  0x6620, 0x668e, 0x6979, 0x69ae, 0x6c38, 0x6cf3, 0x6e36, 0x6f41,
+  0x6fda, 0x701b, 0x702f, 0x7150, 0x71df, 0x7370, 0xf9ad, 0x745b,
+  0xf9ae, 0x74d4, 0x76c8, 0x7a4e, 0x7e93, 0xf9af, 0xf9b0, 0x82f1,
+  0x8a60, 0x8fce, 0xf9b1, 0x9348, 0xf9b2, 0x9719, 0xf9b3, 0xf9b4,
+  0x4e42, 0x502a, 0xf9b5, 0x5208, 0x53e1, 0x66f3, 0x6c6d, 0x6fca,
+  0x730a, 0x777f, 0x7a62, 0x82ae, 0x85dd, 0x8602, 0xf9b6, 0x88d4,
+  0x8a63, 0x8b7d, 0x8c6b, 0xf9b7, 0x92b3, 0xf9b8, 0x9713, 0x9810,
+  0x4e94, 0x4f0d, 0x4fc9, 0x50b2, 0x5348, 0x543e, 0x5433, 0x55da,
+  0x5862, 0x58ba, 0x5967, 0x5a1b, 0x5be4, 0x609f, 0xf9b9, 0x61ca,
+  0x6556, 0x65ff, 0x6664, 0x68a7, 0x6c5a, 0x6fb3,
+  /* 0x68 */
+  0x70cf, 0x71ac, 0x7352, 0x7b7d, 0x8708, 0x8aa4, 0x9c32, 0x9f07,
+  0x5c4b, 0x6c83, 0x7344, 0x7389, 0x923a, 0x6eab, 0x7465, 0x761f,
+  0x7a69, 0x7e15, 0x860a, 0x5140, 0x58c5, 0x64c1, 0x74ee, 0x7515,
+  0x7670, 0x7fc1, 0x9095, 0x96cd, 0x9954, 0x6e26, 0x74e6, 0x7aa9,
+  0x7aaa, 0x81e5, 0x86d9, 0x8778, 0x8a1b, 0x5a49, 0x5b8c, 0x5b9b,
+  0x68a1, 0x6900, 0x6d63, 0x73a9, 0x7413, 0x742c, 0x7897, 0x7de9,
+  0x7feb, 0x8118, 0x8155, 0x839e, 0x8c4c, 0x962e, 0x9811, 0x66f0,
+  0x5f80, 0x65fa, 0x6789, 0x6c6a, 0x738b, 0x502d, 0x5a03, 0x6b6a,
+  0x77ee, 0x5916, 0x5d6c, 0x5dcd, 0x7325, 0x754f, 0xf9ba, 0xf9bb,
+  0x50e5, 0x51f9, 0x582f, 0x592d, 0x5996, 0x59da, 0x5be5, 0xf9bc,
+  0xf9bd, 0x5da2, 0x62d7, 0x6416, 0x6493, 0x64fe, 0xf9be, 0x66dc,
+  0xf9bf, 0x6a48, 0xf9c0, 0x71ff, 0x7464, 0xf9c1,
+  /* 0x69 */
+  0x7a88, 0x7aaf, 0x7e47, 0x7e5e, 0x8000, 0x8170, 0xf9c2, 0x87ef,
+  0x8981, 0x8b20, 0x9059, 0xf9c3, 0x9080, 0x9952, 0x617e, 0x6b32,
+  0x6d74, 0x7e1f, 0x8925, 0x8fb1, 0x4fd1, 0x50ad, 0x5197, 0x52c7,
+  0x57c7, 0x5889, 0x5bb9, 0x5eb8, 0x6142, 0x6995, 0x6d8c, 0x6e67,
+  0x6eb6, 0x7194, 0x7462, 0x7528, 0x752c, 0x8073, 0x8338, 0x84c9,
+  0x8e0a, 0x9394, 0x93de, 0xf9c4, 0x4e8e, 0x4f51, 0x5076, 0x512a,
+  0x53c8, 0x53cb, 0x53f3, 0x5b87, 0x5bd3, 0x5c24, 0x611a, 0x6182,
+  0x65f4, 0x725b, 0x7397, 0x7440, 0x76c2, 0x7950, 0x7991, 0x79b9,
+  0x7d06, 0x7fbd, 0x828b, 0x85d5, 0x865e, 0x8fc2, 0x9047, 0x90f5,
+  0x91ea, 0x9685, 0x96e8, 0x96e9, 0x52d6, 0x5f67, 0x65ed, 0x6631,
+  0x682f, 0x715c, 0x7a36, 0x90c1, 0x980a, 0x4e91, 0xf9c5, 0x6a52,
+  0x6b9e, 0x6f90, 0x7189, 0x8018, 0x82b8, 0x8553,
+  /* 0x6a */
+  0x904b, 0x9695, 0x96f2, 0x97fb, 0x851a, 0x9b31, 0x4e90, 0x718a,
+  0x96c4, 0x5143, 0x539f, 0x54e1, 0x5713, 0x5712, 0x57a3, 0x5a9b,
+  0x5ac4, 0x5bc3, 0x6028, 0x613f, 0x63f4, 0x6c85, 0x6d39, 0x6e72,
+  0x6e90, 0x7230, 0x733f, 0x7457, 0x82d1, 0x8881, 0x8f45, 0x9060,
+  0xf9c6, 0x9662, 0x9858, 0x9d1b, 0x6708, 0x8d8a, 0x925e, 0x4f4d,
+  0x5049, 0x50de, 0x5371, 0x570d, 0x59d4, 0x5a01, 0x5c09, 0x6170,
+  0x6690, 0x6e2d, 0x7232, 0x744b, 0x7def, 0x80c3, 0x840e, 0x8466,
+  0x853f, 0x875f, 0x885b, 0x8918, 0x8b02, 0x9055, 0x97cb, 0x9b4f,
+  0x4e73, 0x4f91, 0x5112, 0x516a, 0xf9c7, 0x552f, 0x55a9, 0x5b7a,
+  0x5ba5, 0x5e7c, 0x5e7d, 0x5ebe, 0x60a0, 0x60df, 0x6108, 0x6109,
+  0x63c4, 0x6538, 0x6709, 0xf9c8, 0x67d4, 0x67da, 0xf9c9, 0x6961,
+  0x6962, 0x6cb9, 0x6d27, 0xf9ca, 0x6e38, 0xf9cb,
+  /* 0x6b */
+  0x6fe1, 0x7336, 0x7337, 0xf9cc, 0x745c, 0x7531, 0xf9cd, 0x7652,
+  0xf9ce, 0xf9cf, 0x7dad, 0x81fe, 0x8438, 0x88d5, 0x8a98, 0x8adb,
+  0x8aed, 0x8e30, 0x8e42, 0x904a, 0x903e, 0x907a, 0x9149, 0x91c9,
+  0x936e, 0xf9d0, 0xf9d1, 0x5809, 0xf9d2, 0x6bd3, 0x8089, 0x80b2,
+  0xf9d3, 0xf9d4, 0x5141, 0x596b, 0x5c39, 0xf9d5, 0xf9d6, 0x6f64,
+  0x73a7, 0x80e4, 0x8d07, 0xf9d7, 0x9217, 0x958f, 0xf9d8, 0xf9d9,
+  0xf9da, 0xf9db, 0x807f, 0x620e, 0x701c, 0x7d68, 0x878d, 0xf9dc,
+  0x57a0, 0x6069, 0x6147, 0x6bb7, 0x8abe, 0x9280, 0x96b1, 0x4e59,
+  0x541f, 0x6deb, 0x852d, 0x9670, 0x97f3, 0x98ee, 0x63d6, 0x6ce3,
+  0x9091, 0x51dd, 0x61c9, 0x81ba, 0x9df9, 0x4f9d, 0x501a, 0x5100,
+  0x5b9c, 0x610f, 0x61ff, 0x64ec, 0x6905, 0x6bc5, 0x7591, 0x77e3,
+  0x7fa9, 0x8264, 0x858f, 0x87fb, 0x8863, 0x8abc,
+  /* 0x6c */
+  0x8b70, 0x91ab, 0x4e8c, 0x4ee5, 0x4f0a, 0xf9dd, 0xf9de, 0x5937,
+  0x59e8, 0xf9df, 0x5df2, 0x5f1b, 0x5f5b, 0x6021, 0xf9e0, 0xf9e1,
+  0xf9e2, 0xf9e3, 0x723e, 0x73e5, 0xf9e4, 0x7570, 0x75cd, 0xf9e5,
+  0x79fb, 0xf9e6, 0x800c, 0x8033, 0x8084, 0x82e1, 0x8351, 0xf9e7,
+  0xf9e8, 0x8cbd, 0x8cb3, 0x9087, 0xf9e9, 0xf9ea, 0x98f4, 0x990c,
+  0xf9eb, 0xf9ec, 0x7037, 0x76ca, 0x7fca, 0x7fcc, 0x7ffc, 0x8b1a,
+  0x4eba, 0x4ec1, 0x5203, 0x5370, 0xf9ed, 0x54bd, 0x56e0, 0x59fb,
+  0x5bc5, 0x5f15, 0x5fcd, 0x6e6e, 0xf9ee, 0xf9ef, 0x7d6a, 0x8335,
+  0xf9f0, 0x8693, 0x8a8d, 0xf9f1, 0x976d, 0x9777, 0xf9f2, 0xf9f3,
+  0x4e00, 0x4f5a, 0x4f7e, 0x58f9, 0x65e5, 0x6ea2, 0x9038, 0x93b0,
+  0x99b9, 0x4efb, 0x58ec, 0x598a, 0x59d9, 0x6041, 0xf9f4, 0xf9f5,
+  0x7a14, 0xf9f6, 0x834f, 0x8cc3, 0x5165, 0x5344,
+  /* 0x6d */
+  0xf9f7, 0xf9f8, 0xf9f9, 0x4ecd, 0x5269, 0x5b55, 0x82bf, 0x4ed4,
+  0x523a, 0x54a8, 0x59c9, 0x59ff, 0x5b50, 0x5b57, 0x5b5c, 0x6063,
+  0x6148, 0x6ecb, 0x7099, 0x716e, 0x7386, 0x74f7, 0x75b5, 0x78c1,
+  0x7d2b, 0x8005, 0x81ea, 0x8328, 0x8517, 0x85c9, 0x8aee, 0x8cc7,
+  0x96cc, 0x4f5c, 0x52fa, 0x56bc, 0x65ab, 0x6628, 0x707c, 0x70b8,
+  0x7235, 0x7dbd, 0x828d, 0x914c, 0x96c0, 0x9d72, 0x5b71, 0x68e7,
+  0x6b98, 0x6f7a, 0x76de, 0x5c91, 0x66ab, 0x6f5b, 0x7bb4, 0x7c2a,
+  0x8836, 0x96dc, 0x4e08, 0x4ed7, 0x5320, 0x5834, 0x58bb, 0x58ef,
+  0x596c, 0x5c07, 0x5e33, 0x5e84, 0x5f35, 0x638c, 0x66b2, 0x6756,
+  0x6a1f, 0x6aa3, 0x6b0c, 0x6f3f, 0x7246, 0xf9fa, 0x7350, 0x748b,
+  0x7ae0, 0x7ca7, 0x8178, 0x81df, 0x81e7, 0x838a, 0x846c, 0x8523,
+  0x8594, 0x85cf, 0x88dd, 0x8d13, 0x91ac, 0x9577,
+  /* 0x6e */
+  0x969c, 0x518d, 0x54c9, 0x5728, 0x5bb0, 0x624d, 0x6750, 0x683d,
+  0x6893, 0x6e3d, 0x6ed3, 0x707d, 0x7e21, 0x88c1, 0x8ca1, 0x8f09,
+  0x9f4b, 0x9f4e, 0x722d, 0x7b8f, 0x8acd, 0x931a, 0x4f47, 0x4f4e,
+  0x5132, 0x5480, 0x59d0, 0x5e95, 0x62b5, 0x6775, 0x696e, 0x6a17,
+  0x6cae, 0x6e1a, 0x72d9, 0x732a, 0x75bd, 0x7bb8, 0x7d35, 0x82e7,
+  0x83f9, 0x8457, 0x85f7, 0x8a5b, 0x8caf, 0x8e87, 0x9019, 0x90b8,
+  0x96ce, 0x9f5f, 0x52e3, 0x540a, 0x5ae1, 0x5bc2, 0x6458, 0x6575,
+  0x6ef4, 0x72c4, 0xf9fb, 0x7684, 0x7a4d, 0x7b1b, 0x7c4d, 0x7e3e,
+  0x7fdf, 0x837b, 0x8b2b, 0x8cca, 0x8d64, 0x8de1, 0x8e5f, 0x8fea,
+  0x8ff9, 0x9069, 0x93d1, 0x4f43, 0x4f7a, 0x50b3, 0x5168, 0x5178,
+  0x524d, 0x526a, 0x5861, 0x587c, 0x5960, 0x5c08, 0x5c55, 0x5edb,
+  0x609b, 0x6230, 0x6813, 0x6bbf, 0x6c08, 0x6fb1,
+  /* 0x6f */
+  0x714e, 0x7420, 0x7530, 0x7538, 0x7551, 0x7672, 0x7b4c, 0x7b8b,
+  0x7bad, 0x7bc6, 0x7e8f, 0x8a6e, 0x8f3e, 0x8f49, 0x923f, 0x9293,
+  0x9322, 0x942b, 0x96fb, 0x985a, 0x986b, 0x991e, 0x5207, 0x622a,
+  0x6298, 0x6d59, 0x7664, 0x7aca, 0x7bc0, 0x7d76, 0x5360, 0x5cbe,
+  0x5e97, 0x6f38, 0x70b9, 0x7c98, 0x9711, 0x9b8e, 0x9ede, 0x63a5,
+  0x647a, 0x8776, 0x4e01, 0x4e95, 0x4ead, 0x505c, 0x5075, 0x5448,
+  0x59c3, 0x5b9a, 0x5e40, 0x5ead, 0x5ef7, 0x5f81, 0x60c5, 0x633a,
+  0x653f, 0x6574, 0x65cc, 0x6676, 0x6678, 0x67fe, 0x6968, 0x6a89,
+  0x6b63, 0x6c40, 0x6dc0, 0x6de8, 0x6e1f, 0x6e5e, 0x701e, 0x70a1,
+  0x738e, 0x73fd, 0x753a, 0x775b, 0x7887, 0x798e, 0x7a0b, 0x7a7d,
+  0x7cbe, 0x7d8e, 0x8247, 0x8a02, 0x8aea, 0x8c9e, 0x912d, 0x914a,
+  0x91d8, 0x9266, 0x92cc, 0x9320, 0x9706, 0x9756,
+  /* 0x70 */
+  0x975c, 0x9802, 0x9f0e, 0x5236, 0x5291, 0x557c, 0x5824, 0x5e1d,
+  0x5f1f, 0x608c, 0x63d0, 0x68af, 0x6fdf, 0x796d, 0x7b2c, 0x81cd,
+  0x85ba, 0x88fd, 0x8af8, 0x8e44, 0x918d, 0x9664, 0x969b, 0x973d,
+  0x984c, 0x9f4a, 0x4fce, 0x5146, 0x51cb, 0x52a9, 0x5632, 0x5f14,
+  0x5f6b, 0x63aa, 0x64cd, 0x65e9, 0x6641, 0x66fa, 0x66f9, 0x671d,
+  0x689d, 0x68d7, 0x69fd, 0x6f15, 0x6f6e, 0x7167, 0x71e5, 0x722a,
+  0x74aa, 0x773a, 0x7956, 0x795a, 0x79df, 0x7a20, 0x7a95, 0x7c97,
+  0x7cdf, 0x7d44, 0x7e70, 0x8087, 0x85fb, 0x86a4, 0x8a54, 0x8abf,
+  0x8d99, 0x8e81, 0x9020, 0x906d, 0x91e3, 0x963b, 0x96d5, 0x9ce5,
+  0x65cf, 0x7c07, 0x8db3, 0x93c3, 0x5b58, 0x5c0a, 0x5352, 0x62d9,
+  0x731d, 0x5027, 0x5b97, 0x5f9e, 0x60b0, 0x616b, 0x68d5, 0x6dd9,
+  0x742e, 0x7a2e, 0x7d42, 0x7d9c, 0x7e31, 0x816b,
+  /* 0x71 */
+  0x8e2a, 0x8e35, 0x937e, 0x9418, 0x4f50, 0x5750, 0x5de6, 0x5ea7,
+  0x632b, 0x7f6a, 0x4e3b, 0x4f4f, 0x4f8f, 0x505a, 0x59dd, 0x80c4,
+  0x546a, 0x5468, 0x55fe, 0x594f, 0x5b99, 0x5dde, 0x5eda, 0x665d,
+  0x6731, 0x67f1, 0x682a, 0x6ce8, 0x6d32, 0x6e4a, 0x6f8d, 0x70b7,
+  0x73e0, 0x7587, 0x7c4c, 0x7d02, 0x7d2c, 0x7da2, 0x821f, 0x86db,
+  0x8a3b, 0x8a85, 0x8d70, 0x8e8a, 0x8f33, 0x9031, 0x914e, 0x9152,
+  0x9444, 0x99d0, 0x7af9, 0x7ca5, 0x4fca, 0x5101, 0x51c6, 0x57c8,
+  0x5bef, 0x5cfb, 0x6659, 0x6a3d, 0x6d5a, 0x6e96, 0x6fec, 0x710c,
+  0x756f, 0x7ae3, 0x8822, 0x9021, 0x9075, 0x96cb, 0x99ff, 0x8301,
+  0x4e2d, 0x4ef2, 0x8846, 0x91cd, 0x537d, 0x6adb, 0x696b, 0x6c41,
+  0x847a, 0x589e, 0x618e, 0x66fe, 0x62ef, 0x70dd, 0x7511, 0x75c7,
+  0x7e52, 0x84b8, 0x8b49, 0x8d08, 0x4e4b, 0x53ea,
+  /* 0x72 */
+  0x54ab, 0x5730, 0x5740, 0x5fd7, 0x6301, 0x6307, 0x646f, 0x652f,
+  0x65e8, 0x667a, 0x679d, 0x67b3, 0x6b62, 0x6c60, 0x6c9a, 0x6f2c,
+  0x77e5, 0x7825, 0x7949, 0x7957, 0x7d19, 0x80a2, 0x8102, 0x81f3,
+  0x829d, 0x82b7, 0x8718, 0x8a8c, 0xf9fc, 0x8d04, 0x8dbe, 0x9072,
+  0x76f4, 0x7a19, 0x7a37, 0x7e54, 0x8077, 0x5507, 0x55d4, 0x5875,
+  0x632f, 0x6422, 0x6649, 0x664b, 0x686d, 0x699b, 0x6b84, 0x6d25,
+  0x6eb1, 0x73cd, 0x7468, 0x74a1, 0x755b, 0x75b9, 0x76e1, 0x771e,
+  0x778b, 0x79e6, 0x7e09, 0x7e1d, 0x81fb, 0x852f, 0x8897, 0x8a3a,
+  0x8cd1, 0x8eeb, 0x8fb0, 0x9032, 0x93ad, 0x9663, 0x9673, 0x9707,
+  0x4f84, 0x53f1, 0x59ea, 0x5ac9, 0x5e19, 0x684e, 0x74c6, 0x75be,
+  0x79e9, 0x7a92, 0x81a3, 0x86ed, 0x8cea, 0x8dcc, 0x8fed, 0x659f,
+  0x6715, 0xf9fd, 0x57f7, 0x6f57, 0x7ddd, 0x8f2f,
+  /* 0x73 */
+  0x93f6, 0x96c6, 0x5fb5, 0x61f2, 0x6f84, 0x4e14, 0x4f98, 0x501f,
+  0x53c9, 0x55df, 0x5d6f, 0x5dee, 0x6b21, 0x6b64, 0x78cb, 0x7b9a,
+  0xf9fe, 0x8e49, 0x8eca, 0x906e, 0x6349, 0x643e, 0x7740, 0x7a84,
+  0x932f, 0x947f, 0x9f6a, 0x64b0, 0x6faf, 0x71e6, 0x74a8, 0x74da,
+  0x7ac4, 0x7c12, 0x7e82, 0x7cb2, 0x7e98, 0x8b9a, 0x8d0a, 0x947d,
+  0x9910, 0x994c, 0x5239, 0x5bdf, 0x64e6, 0x672d, 0x7d2e, 0x50ed,
+  0x53c3, 0x5879, 0x6158, 0x6159, 0x61fa, 0x65ac, 0x7ad9, 0x8b92,
+  0x8b96, 0x5009, 0x5021, 0x5275, 0x5531, 0x5a3c, 0x5ee0, 0x5f70,
+  0x6134, 0x655e, 0x660c, 0x6636, 0x66a2, 0x69cd, 0x6ec4, 0x6f32,
+  0x7316, 0x7621, 0x7a93, 0x8139, 0x8259, 0x83d6, 0x84bc, 0x50b5,
+  0x57f0, 0x5bc0, 0x5be8, 0x5f69, 0x63a1, 0x7826, 0x7db5, 0x83dc,
+  0x8521, 0x91c7, 0x91f5, 0x518a, 0x67f5, 0x7b56,
+  /* 0x74 */
+  0x8cac, 0x51c4, 0x59bb, 0x60bd, 0x8655, 0x501c, 0xf9ff, 0x5254,
+  0x5c3a, 0x617d, 0x621a, 0x62d3, 0x64f2, 0x65a5, 0x6ecc, 0x7620,
+  0x810a, 0x8e60, 0x965f, 0x96bb, 0x4edf, 0x5343, 0x5598, 0x5929,
+  0x5ddd, 0x64c5, 0x6cc9, 0x6dfa, 0x7394, 0x7a7f, 0x821b, 0x85a6,
+  0x8ce4, 0x8e10, 0x9077, 0x91e7, 0x95e1, 0x9621, 0x97c6, 0x51f8,
+  0x54f2, 0x5586, 0x5fb9, 0x64a4, 0x6f88, 0x7db4, 0x8f1f, 0x8f4d,
+  0x9435, 0x50c9, 0x5c16, 0x6cbe, 0x6dfb, 0x751b, 0x77bb, 0x7c3d,
+  0x7c64, 0x8a79, 0x8ac2, 0x581e, 0x59be, 0x5e16, 0x6377, 0x7252,
+  0x758a, 0x776b, 0x8adc, 0x8cbc, 0x8f12, 0x5ef3, 0x6674, 0x6df8,
+  0x807d, 0x83c1, 0x8acb, 0x9751, 0x9bd6, 0xfa00, 0x5243, 0x66ff,
+  0x6d95, 0x6eef, 0x7de0, 0x8ae6, 0x902e, 0x905e, 0x9ad4, 0x521d,
+  0x527f, 0x54e8, 0x6194, 0x6284, 0x62db, 0x68a2,
+  /* 0x75 */
+  0x6912, 0x695a, 0x6a35, 0x7092, 0x7126, 0x785d, 0x7901, 0x790e,
+  0x79d2, 0x7a0d, 0x8096, 0x8278, 0x82d5, 0x8349, 0x8549, 0x8c82,
+  0x8d85, 0x9162, 0x918b, 0x91ae, 0x4fc3, 0x56d1, 0x71ed, 0x77d7,
+  0x8700, 0x89f8, 0x5bf8, 0x5fd6, 0x6751, 0x90a8, 0x53e2, 0x585a,
+  0x5bf5, 0x60a4, 0x6181, 0x6460, 0x7e3d, 0x8070, 0x8525, 0x9283,
+  0x64ae, 0x50ac, 0x5d14, 0x6700, 0x589c, 0x62bd, 0x63a8, 0x690e,
+  0x6978, 0x6a1e, 0x6e6b, 0x76ba, 0x79cb, 0x82bb, 0x8429, 0x8acf,
+  0x8da8, 0x8ffd, 0x9112, 0x914b, 0x919c, 0x9310, 0x9318, 0x939a,
+  0x96db, 0x9a36, 0x9c0d, 0x4e11, 0x755c, 0x795d, 0x7afa, 0x7b51,
+  0x7bc9, 0x7e2e, 0x84c4, 0x8e59, 0x8e74, 0x8ef8, 0x9010, 0x6625,
+  0x693f, 0x7443, 0x51fa, 0x672e, 0x9edc, 0x5145, 0x5fe0, 0x6c96,
+  0x87f2, 0x885d, 0x8877, 0x60b4, 0x81b5, 0x8403,
+  /* 0x76 */
+  0x8d05, 0x53d6, 0x5439, 0x5634, 0x5a36, 0x5c31, 0x708a, 0x7fe0,
+  0x805a, 0x8106, 0x81ed, 0x8da3, 0x9189, 0x9a5f, 0x9df2, 0x5074,
+  0x4ec4, 0x53a0, 0x60fb, 0x6e2c, 0x5c64, 0x4f88, 0x5024, 0x55e4,
+  0x5cd9, 0x5e5f, 0x6065, 0x6894, 0x6cbb, 0x6dc4, 0x71be, 0x75d4,
+  0x75f4, 0x7661, 0x7a1a, 0x7a49, 0x7dc7, 0x7dfb, 0x7f6e, 0x81f4,
+  0x86a9, 0x8f1c, 0x96c9, 0x99b3, 0x9f52, 0x5247, 0x52c5, 0x98ed,
+  0x89aa, 0x4e03, 0x67d2, 0x6f06, 0x4fb5, 0x5be2, 0x6795, 0x6c88,
+  0x6d78, 0x741b, 0x7827, 0x91dd, 0x937c, 0x87c4, 0x79e4, 0x7a31,
+  0x5feb, 0x4ed6, 0x54a4, 0x553e, 0x58ae, 0x59a5, 0x60f0, 0x6253,
+  0x62d6, 0x6736, 0x6955, 0x8235, 0x9640, 0x99b1, 0x99dd, 0x502c,
+  0x5353, 0x5544, 0x577c, 0xfa01, 0x6258, 0xfa02, 0x64e2, 0x666b,
+  0x67dd, 0x6fc1, 0x6fef, 0x7422, 0x7438, 0x8a17,
+  /* 0x77 */
+  0x9438, 0x5451, 0x5606, 0x5766, 0x5f48, 0x619a, 0x6b4e, 0x7058,
+  0x70ad, 0x7dbb, 0x8a95, 0x596a, 0x812b, 0x63a2, 0x7708, 0x803d,
+  0x8caa, 0x5854, 0x642d, 0x69bb, 0x5b95, 0x5e11, 0x6e6f, 0xfa03,
+  0x8569, 0x514c, 0x53f0, 0x592a, 0x6020, 0x614b, 0x6b86, 0x6c70,
+  0x6cf0, 0x7b1e, 0x80ce, 0x82d4, 0x8dc6, 0x90b0, 0x98b1, 0xfa04,
+  0x64c7, 0x6fa4, 0x6491, 0x6504, 0x514e, 0x5410, 0x571f, 0x8a0e,
+  0x615f, 0x6876, 0xfa05, 0x75db, 0x7b52, 0x7d71, 0x901a, 0x5806,
+  0x69cc, 0x817f, 0x892a, 0x9000, 0x9839, 0x5078, 0x5957, 0x59ac,
+  0x6295, 0x900f, 0x9b2a, 0x615d, 0x7279, 0x95d6, 0x5761, 0x5a46,
+  0x5df4, 0x628a, 0x64ad, 0x64fa, 0x6777, 0x6ce2, 0x6d3e, 0x722c,
+  0x7436, 0x7834, 0x7f77, 0x82ad, 0x8ddb, 0x9817, 0x5224, 0x5742,
+  0x677f, 0x7248, 0x74e3, 0x8ca9, 0x8fa6, 0x9211,
+  /* 0x78 */
+  0x962a, 0x516b, 0x53ed, 0x634c, 0x4f69, 0x5504, 0x6096, 0x6557,
+  0x6c9b, 0x6d7f, 0x724c, 0x72fd, 0x7a17, 0x8987, 0x8c9d, 0x5f6d,
+  0x6f8e, 0x70f9, 0x81a8, 0x610e, 0x4fbf, 0x504f, 0x6241, 0x7247,
+  0x7bc7, 0x7de8, 0x7fe9, 0x904d, 0x97ad, 0x9a19, 0x8cb6, 0x576a,
+  0x5e73, 0x67b0, 0x840d, 0x8a55, 0x5420, 0x5b16, 0x5e63, 0x5ee2,
+  0x5f0a, 0x6583, 0x80ba, 0x853d, 0x9589, 0x965b, 0x4f48, 0x5305,
+  0x530d, 0x530f, 0x5486, 0x54fa, 0x5703, 0x5e03, 0x6016, 0x629b,
+  0x62b1, 0x6355, 0xfa06, 0x6ce1, 0x6d66, 0x75b1, 0x7832, 0x80de,
+  0x812f, 0x82de, 0x8461, 0x84b2, 0x888d, 0x8912, 0x900b, 0x92ea,
+  0x98fd, 0x9b91, 0x5e45, 0x66b4, 0x66dd, 0x7011, 0x7206, 0xfa07,
+  0x4ff5, 0x527d, 0x5f6a, 0x6153, 0x6753, 0x6a19, 0x6f02, 0x74e2,
+  0x7968, 0x8868, 0x8c79, 0x98c7, 0x98c4, 0x9a43,
+  /* 0x79 */
+  0x54c1, 0x7a1f, 0x6953, 0x8af7, 0x8c4a, 0x98a8, 0x99ae, 0x5f7c,
+  0x62ab, 0x75b2, 0x76ae, 0x88ab, 0x907f, 0x9642, 0x5339, 0x5f3c,
+  0x5fc5, 0x6ccc, 0x73cc, 0x7562, 0x758b, 0x7b46, 0x82fe, 0x999d,
+  0x4e4f, 0x903c, 0x4e0b, 0x4f55, 0x53a6, 0x590f, 0x5ec8, 0x6630,
+  0x6cb3, 0x7455, 0x8377, 0x8766, 0x8cc0, 0x9050, 0x971e, 0x9c15,
+  0x58d1, 0x5b78, 0x8650, 0x8b14, 0x9db4, 0x5bd2, 0x6068, 0x608d,
+  0x65f1, 0x6c57, 0x6f22, 0x6fa3, 0x701a, 0x7f55, 0x7ff0, 0x9591,
+  0x9592, 0x9650, 0x97d3, 0x5272, 0x8f44, 0x51fd, 0x542b, 0x54b8,
+  0x5563, 0x558a, 0x6abb, 0x6db5, 0x7dd8, 0x8266, 0x929c, 0x9677,
+  0x9e79, 0x5408, 0x54c8, 0x76d2, 0x86e4, 0x95a4, 0x95d4, 0x965c,
+  0x4ea2, 0x4f09, 0x59ee, 0x5ae6, 0x5df7, 0x6052, 0x6297, 0x676d,
+  0x6841, 0x6c86, 0x6e2f, 0x7f38, 0x809b, 0x822a,
+  /* 0x7a */
+  0xfa08, 0xfa09, 0x9805, 0x4ea5, 0x5055, 0x54b3, 0x5793, 0x595a,
+  0x5b69, 0x5bb3, 0x61c8, 0x6977, 0x6d77, 0x7023, 0x87f9, 0x89e3,
+  0x8a72, 0x8ae7, 0x9082, 0x99ed, 0x9ab8, 0x52be, 0x6838, 0x5016,
+  0x5e78, 0x674f, 0x8347, 0x884c, 0x4eab, 0x5411, 0x56ae, 0x73e6,
+  0x9115, 0x97ff, 0x9909, 0x9957, 0x9999, 0x5653, 0x589f, 0x865b,
+  0x8a31, 0x61b2, 0x6af6, 0x737b, 0x8ed2, 0x6b47, 0x96aa, 0x9a57,
+  0x5955, 0x7200, 0x8d6b, 0x9769, 0x4fd4, 0x5cf4, 0x5f26, 0x61f8,
+  0x665b, 0x6ceb, 0x70ab, 0x7384, 0x73b9, 0x73fe, 0x7729, 0x774d,
+  0x7d43, 0x7d62, 0x7e23, 0x8237, 0x8852, 0xfa0a, 0x8ce2, 0x9249,
+  0x986f, 0x5b51, 0x7a74, 0x8840, 0x9801, 0x5acc, 0x4fe0, 0x5354,
+  0x593e, 0x5cfd, 0x633e, 0x6d79, 0x72f9, 0x8105, 0x8107, 0x83a2,
+  0x92cf, 0x9830, 0x4ea8, 0x5144, 0x5211, 0x578b,
+  /* 0x7b */
+  0x5f62, 0x6cc2, 0x6ece, 0x7005, 0x7050, 0x70af, 0x7192, 0x73e9,
+  0x7469, 0x834a, 0x87a2, 0x8861, 0x9008, 0x90a2, 0x93a3, 0x99a8,
+  0x516e, 0x5f57, 0x60e0, 0x6167, 0x66b3, 0x8559, 0x8e4a, 0x91af,
+  0x978b, 0x4e4e, 0x4e92, 0x547c, 0x58d5, 0x58fa, 0x597d, 0x5cb5,
+  0x5f27, 0x6236, 0x6248, 0x660a, 0x6667, 0x6beb, 0x6d69, 0x6dcf,
+  0x6e56, 0x6ef8, 0x6f94, 0x6fe0, 0x6fe9, 0x705d, 0x72d0, 0x7425,
+  0x745a, 0x74e0, 0x7693, 0x795c, 0x7cca, 0x7e1e, 0x80e1, 0x82a6,
+  0x846b, 0x84bf, 0x864e, 0x865f, 0x8774, 0x8b77, 0x8c6a, 0x93ac,
+  0x9800, 0x9865, 0x60d1, 0x6216, 0x9177, 0x5a5a, 0x660f, 0x6df7,
+  0x6e3e, 0x743f, 0x9b42, 0x5ffd, 0x60da, 0x7b0f, 0x54c4, 0x5f18,
+  0x6c5e, 0x6cd3, 0x6d2a, 0x70d8, 0x7d05, 0x8679, 0x8a0c, 0x9d3b,
+  0x5316, 0x548c, 0x5b05, 0x6a3a, 0x706b, 0x7575,
+  /* 0x7c */
+  0x798d, 0x79be, 0x82b1, 0x83ef, 0x8a71, 0x8b41, 0x8ca8, 0x9774,
+  0xfa0b, 0x64f4, 0x652b, 0x78ba, 0x78bb, 0x7a6b, 0x4e38, 0x559a,
+  0x5950, 0x5ba6, 0x5e7b, 0x60a3, 0x63db, 0x6b61, 0x6665, 0x6853,
+  0x6e19, 0x7165, 0x74b0, 0x7d08, 0x9084, 0x9a69, 0x9c25, 0x6d3b,
+  0x6ed1, 0x733e, 0x8c41, 0x95ca, 0x51f0, 0x5e4c, 0x5fa8, 0x604d,
+  0x60f6, 0x6130, 0x614c, 0x6643, 0x6644, 0x69a5, 0x6cc1, 0x6e5f,
+  0x6ec9, 0x6f62, 0x714c, 0x749c, 0x7687, 0x7bc1, 0x7c27, 0x8352,
+  0x8757, 0x9051, 0x968d, 0x9ec3, 0x532f, 0x56de, 0x5efb, 0x5f8a,
+  0x6062, 0x6094, 0x61f7, 0x6666, 0x6703, 0x6a9c, 0x6dee, 0x6fae,
+  0x7070, 0x736a, 0x7e6a, 0x81be, 0x8334, 0x86d4, 0x8aa8, 0x8cc4,
+  0x5283, 0x7372, 0x5b96, 0x6a6b, 0x9404, 0x54ee, 0x5686, 0x5b5d,
+  0x6548, 0x6585, 0x66c9, 0x689f, 0x6d8d, 0x6dc6,
+  /* 0x7d */
+  0x723b, 0x80b4, 0x9175, 0x9a4d, 0x4faf, 0x5019, 0x539a, 0x540e,
+  0x543c, 0x5589, 0x55c5, 0x5e3f, 0x5f8c, 0x673d, 0x7166, 0x73dd,
+  0x9005, 0x52db, 0x52f3, 0x5864, 0x58ce, 0x7104, 0x718f, 0x71fb,
+  0x85b0, 0x8a13, 0x6688, 0x85a8, 0x55a7, 0x6684, 0x714a, 0x8431,
+  0x5349, 0x5599, 0x6bc1, 0x5f59, 0x5fbd, 0x63ee, 0x6689, 0x7147,
+  0x8af1, 0x8f1d, 0x9ebe, 0x4f11, 0x643a, 0x70cb, 0x7566, 0x8667,
+  0x6064, 0x8b4e, 0x9df8, 0x5147, 0x51f6, 0x5308, 0x6d36, 0x80f8,
+  0x9ed1, 0x6615, 0x6b23, 0x7098, 0x75d5, 0x5403, 0x5c79, 0x7d07,
+  0x8a16, 0x6b20, 0x6b3d, 0x6b46, 0x5438, 0x6070, 0x6d3d, 0x7fd5,
+  0x8208, 0x50d6, 0x51de, 0x559c, 0x566b, 0x56cd, 0x59ec, 0x5b09,
+  0x5e0c, 0x6199, 0x6198, 0x6231, 0x665e, 0x66e6, 0x7199, 0x71b9,
+  0x71ba, 0x72a7, 0x79a7, 0x7a00, 0x7fb2, 0x8a70,
+};
+
+static int
+ksc5601_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 >= 0x21 && c1 <= 0x2c) || (c1 >= 0x30 && c1 <= 0x48) || (c1 >= 0x4a && c1 <= 0x7d)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if (c2 >= 0x21 && c2 < 0x7f) {
+        unsigned int i = 94 * (c1 - 0x21) + (c2 - 0x21);
+        unsigned short wc = 0xfffd;
+        if (i < 1410) {
+          if (i < 1115)
+            wc = ksc5601_2uni_page21[i];
+        } else if (i < 3854) {
+          if (i < 3760)
+            wc = ksc5601_2uni_page30[i-1410];
+        } else {
+          if (i < 8742)
+            wc = ksc5601_2uni_page4a[i-3854];
+        }
+        if (wc != 0xfffd) {
+          *pwc = (ucs4_t) wc;
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned short ksc5601_2charset[8227] = {
+  0x222e, 0x2234, 0x2157, 0x2127, 0x2823, 0x2129, 0x2267, 0x2146,
+  0x213e, 0x2977, 0x2978, 0x2225, 0x2252, 0x2124, 0x222c, 0x2976,
+  0x282c, 0x2879, 0x2876, 0x287a, 0x222f, 0x2821, 0x2822, 0x213f,
+  0x282a, 0x282d, 0x292c, 0x2921, 0x2923, 0x2140, 0x292a, 0x292d,
+  0x2922, 0x2824, 0x2924, 0x2925, 0x2826, 0x2926, 0x2927, 0x2828,
+  0x2928, 0x2829, 0x2929, 0x2930, 0x282f, 0x292f, 0x282b, 0x292b,
+  0x282e, 0x292e, 0x2227, 0x2230, 0x2228, 0x222b, 0x222a, 0x222d,
+  0x2229, 0x2541, 0x2542, 0x2543, 0x2544, 0x2545, 0x2546, 0x2547,
+  0x2548, 0x2549, 0x254a, 0x254b, 0x254c, 0x254d, 0x254e, 0x254f,
+  0x2550, 0x2551, 0x2552, 0x2553, 0x2554, 0x2555, 0x2556, 0x2557,
+  0x2558, 0x2561, 0x2562, 0x2563, 0x2564, 0x2565, 0x2566, 0x2567,
+  0x2568, 0x2569, 0x256a, 0x256b, 0x256c, 0x256d, 0x256e, 0x256f,
+  0x2570, 0x2571, 0x2572, 0x2573, 0x2574, 0x2575, 0x2576, 0x2577,
+  0x2578, 0x2c27, 0x2c21, 0x2c22, 0x2c23, 0x2c24, 0x2c25, 0x2c26,
+  0x2c28, 0x2c29, 0x2c2a, 0x2c2b, 0x2c2c, 0x2c2d, 0x2c2e, 0x2c2f,
+  0x2c30, 0x2c31, 0x2c32, 0x2c33, 0x2c34, 0x2c35, 0x2c36, 0x2c37,
+  0x2c38, 0x2c39, 0x2c3a, 0x2c3b, 0x2c3c, 0x2c3d, 0x2c3e, 0x2c3f,
+  0x2c40, 0x2c41, 0x2c51, 0x2c52, 0x2c53, 0x2c54, 0x2c55, 0x2c56,
+  0x2c58, 0x2c59, 0x2c5a, 0x2c5b, 0x2c5c, 0x2c5d, 0x2c5e, 0x2c5f,
+  0x2c60, 0x2c61, 0x2c62, 0x2c63, 0x2c64, 0x2c65, 0x2c66, 0x2c67,
+  0x2c68, 0x2c69, 0x2c6a, 0x2c6b, 0x2c6c, 0x2c6d, 0x2c6e, 0x2c6f,
+  0x2c70, 0x2c71, 0x2c57, 0x212a, 0x212e, 0x212f, 0x2130, 0x2131,
+  0x2253, 0x2254, 0x2125, 0x2126, 0x2236, 0x2147, 0x2148, 0x2158,
+  0x2979, 0x297a, 0x297b, 0x297c, 0x297d, 0x297e, 0x2266, 0x2149,
+  0x2235, 0x2724, 0x2260, 0x2265, 0x2262, 0x2759, 0x214a, 0x2877,
+  0x2878, 0x287b, 0x287c, 0x287d, 0x287e, 0x2530, 0x2531, 0x2532,
+  0x2533, 0x2534, 0x2535, 0x2536, 0x2537, 0x2538, 0x2539, 0x2521,
+  0x2522, 0x2523, 0x2524, 0x2525, 0x2526, 0x2527, 0x2528, 0x2529,
+  0x252a, 0x2167, 0x2168, 0x2166, 0x2169, 0x216a, 0x2255, 0x2258,
+  0x2256, 0x2259, 0x2257, 0x2221, 0x2222, 0x2223, 0x2153, 0x2224,
+  0x2154, 0x2174, 0x2175, 0x2233, 0x2232, 0x216e, 0x2170, 0x2144,
+  0x2150, 0x212b, 0x217c, 0x217d, 0x217b, 0x217a, 0x2172, 0x2173,
+  0x2231, 0x2145, 0x2171, 0x212d, 0x216f, 0x2156, 0x2141, 0x2155,
+  0x2142, 0x2143, 0x216c, 0x216d, 0x2178, 0x2179, 0x2176, 0x2177,
+  0x2241, 0x2151, 0x2152, 0x2867, 0x2868, 0x2869, 0x286a, 0x286b,
+  0x286c, 0x286d, 0x286e, 0x286f, 0x2870, 0x2871, 0x2872, 0x2873,
+  0x2874, 0x2875, 0x2967, 0x2968, 0x2969, 0x296a, 0x296b, 0x296c,
+  0x296d, 0x296e, 0x296f, 0x2970, 0x2971, 0x2972, 0x2973, 0x2974,
+  0x2975, 0x294d, 0x294e, 0x294f, 0x2950, 0x2951, 0x2952, 0x2953,
+  0x2954, 0x2955, 0x2956, 0x2957, 0x2958, 0x2959, 0x295a, 0x295b,
+  0x295c, 0x295d, 0x295e, 0x295f, 0x2960, 0x2961, 0x2962, 0x2963,
+  0x2964, 0x2965, 0x2966, 0x284d, 0x284e, 0x284f, 0x2850, 0x2851,
+  0x2852, 0x2853, 0x2854, 0x2855, 0x2856, 0x2857, 0x2858, 0x2859,
+  0x285a, 0x285b, 0x285c, 0x285d, 0x285e, 0x285f, 0x2860, 0x2861,
+  0x2862, 0x2863, 0x2864, 0x2865, 0x2866, 0x2621, 0x262c, 0x2622,
+  0x262d, 0x2623, 0x2648, 0x2647, 0x262e, 0x2624, 0x2642, 0x2641,
+  0x262f, 0x2626, 0x2646, 0x2645, 0x2631, 0x2625, 0x2644, 0x2643,
+  0x2630, 0x2627, 0x263c, 0x2649, 0x264a, 0x2637, 0x264b, 0x264c,
+  0x2632, 0x2629, 0x263e, 0x264d, 0x264e, 0x2639, 0x264f, 0x2650,
+  0x2634, 0x2628, 0x2651, 0x2652, 0x2638, 0x263d, 0x2653, 0x2654,
+  0x2633, 0x262a, 0x2655, 0x2656, 0x263a, 0x263f, 0x2657, 0x2658,
+  0x2635, 0x262b, 0x2659, 0x265a, 0x263b, 0x265b, 0x265c, 0x2640,
+  0x265d, 0x265e, 0x265f, 0x2660, 0x2661, 0x2662, 0x2663, 0x2664,
+  0x2636, 0x2246, 0x2161, 0x2160, 0x2243, 0x2247, 0x2248, 0x224b,
+  0x224a, 0x2249, 0x224c, 0x2163, 0x2162, 0x223a, 0x2239, 0x2165,
+  0x2164, 0x2238, 0x2237, 0x215f, 0x215e, 0x2242, 0x215b, 0x215d,
+  0x215c, 0x2244, 0x2245, 0x215a, 0x2159, 0x224f, 0x224e, 0x2250,
+  0x2251, 0x214f, 0x214e, 0x223c, 0x223d, 0x2240, 0x223b, 0x223e,
+  0x223f, 0x224d, 0x225b, 0x225c, 0x225d, 0x225a, 0x2121, 0x2122,
+  0x2123, 0x2128, 0x2134, 0x2135, 0x2136, 0x2137, 0x2138, 0x2139,
+  0x213a, 0x213b, 0x213c, 0x213d, 0x216b, 0x2132, 0x2133, 0x2a21,
+  0x2a22, 0x2a23, 0x2a24, 0x2a25, 0x2a26, 0x2a27, 0x2a28, 0x2a29,
+  0x2a2a, 0x2a2b, 0x2a2c, 0x2a2d, 0x2a2e, 0x2a2f, 0x2a30, 0x2a31,
+  0x2a32, 0x2a33, 0x2a34, 0x2a35, 0x2a36, 0x2a37, 0x2a38, 0x2a39,
+  0x2a3a, 0x2a3b, 0x2a3c, 0x2a3d, 0x2a3e, 0x2a3f, 0x2a40, 0x2a41,
+  0x2a42, 0x2a43, 0x2a44, 0x2a45, 0x2a46, 0x2a47, 0x2a48, 0x2a49,
+  0x2a4a, 0x2a4b, 0x2a4c, 0x2a4d, 0x2a4e, 0x2a4f, 0x2a50, 0x2a51,
+  0x2a52, 0x2a53, 0x2a54, 0x2a55, 0x2a56, 0x2a57, 0x2a58, 0x2a59,
+  0x2a5a, 0x2a5b, 0x2a5c, 0x2a5d, 0x2a5e, 0x2a5f, 0x2a60, 0x2a61,
+  0x2a62, 0x2a63, 0x2a64, 0x2a65, 0x2a66, 0x2a67, 0x2a68, 0x2a69,
+  0x2a6a, 0x2a6b, 0x2a6c, 0x2a6d, 0x2a6e, 0x2a6f, 0x2a70, 0x2a71,
+  0x2a72, 0x2a73, 0x2b21, 0x2b22, 0x2b23, 0x2b24, 0x2b25, 0x2b26,
+  0x2b27, 0x2b28, 0x2b29, 0x2b2a, 0x2b2b, 0x2b2c, 0x2b2d, 0x2b2e,
+  0x2b2f, 0x2b30, 0x2b31, 0x2b32, 0x2b33, 0x2b34, 0x2b35, 0x2b36,
+  0x2b37, 0x2b38, 0x2b39, 0x2b3a, 0x2b3b, 0x2b3c, 0x2b3d, 0x2b3e,
+  0x2b3f, 0x2b40, 0x2b41, 0x2b42, 0x2b43, 0x2b44, 0x2b45, 0x2b46,
+  0x2b47, 0x2b48, 0x2b49, 0x2b4a, 0x2b4b, 0x2b4c, 0x2b4d, 0x2b4e,
+  0x2b4f, 0x2b50, 0x2b51, 0x2b52, 0x2b53, 0x2b54, 0x2b55, 0x2b56,
+  0x2b57, 0x2b58, 0x2b59, 0x2b5a, 0x2b5b, 0x2b5c, 0x2b5d, 0x2b5e,
+  0x2b5f, 0x2b60, 0x2b61, 0x2b62, 0x2b63, 0x2b64, 0x2b65, 0x2b66,
+  0x2b67, 0x2b68, 0x2b69, 0x2b6a, 0x2b6b, 0x2b6c, 0x2b6d, 0x2b6e,
+  0x2b6f, 0x2b70, 0x2b71, 0x2b72, 0x2b73, 0x2b74, 0x2b75, 0x2b76,
+  0x2421, 0x2422, 0x2423, 0x2424, 0x2425, 0x2426, 0x2427, 0x2428,
+  0x2429, 0x242a, 0x242b, 0x242c, 0x242d, 0x242e, 0x242f, 0x2430,
+  0x2431, 0x2432, 0x2433, 0x2434, 0x2435, 0x2436, 0x2437, 0x2438,
+  0x2439, 0x243a, 0x243b, 0x243c, 0x243d, 0x243e, 0x243f, 0x2440,
+  0x2441, 0x2442, 0x2443, 0x2444, 0x2445, 0x2446, 0x2447, 0x2448,
+  0x2449, 0x244a, 0x244b, 0x244c, 0x244d, 0x244e, 0x244f, 0x2450,
+  0x2451, 0x2452, 0x2453, 0x2454, 0x2455, 0x2456, 0x2457, 0x2458,
+  0x2459, 0x245a, 0x245b, 0x245c, 0x245d, 0x245e, 0x245f, 0x2460,
+  0x2461, 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, 0x2467, 0x2468,
+  0x2469, 0x246a, 0x246b, 0x246c, 0x246d, 0x246e, 0x246f, 0x2470,
+  0x2471, 0x2472, 0x2473, 0x2474, 0x2475, 0x2476, 0x2477, 0x2478,
+  0x2479, 0x247a, 0x247b, 0x247c, 0x247d, 0x247e, 0x2931, 0x2932,
+  0x2933, 0x2934, 0x2935, 0x2936, 0x2937, 0x2938, 0x2939, 0x293a,
+  0x293b, 0x293c, 0x293d, 0x293e, 0x293f, 0x2940, 0x2941, 0x2942,
+  0x2943, 0x2944, 0x2945, 0x2946, 0x2947, 0x2948, 0x2949, 0x294a,
+  0x294b, 0x294c, 0x225f, 0x2831, 0x2832, 0x2833, 0x2834, 0x2835,
+  0x2836, 0x2837, 0x2838, 0x2839, 0x283a, 0x283b, 0x283c, 0x283d,
+  0x283e, 0x283f, 0x2840, 0x2841, 0x2842, 0x2843, 0x2844, 0x2845,
+  0x2846, 0x2847, 0x2848, 0x2849, 0x284a, 0x284b, 0x284c, 0x2268,
+  0x225e, 0x2749, 0x274a, 0x274b, 0x274c, 0x274d, 0x273a, 0x273b,
+  0x275c, 0x275d, 0x275e, 0x2736, 0x2737, 0x2738, 0x2754, 0x2755,
+  0x2756, 0x2757, 0x2758, 0x2721, 0x2722, 0x2723, 0x2725, 0x272b,
+  0x272c, 0x272d, 0x272e, 0x272f, 0x2730, 0x2731, 0x2732, 0x2733,
+  0x2734, 0x2727, 0x2728, 0x2729, 0x272a, 0x273d, 0x273e, 0x2765,
+  0x2766, 0x2767, 0x2768, 0x2761, 0x2762, 0x2763, 0x273f, 0x2740,
+  0x2741, 0x2742, 0x2743, 0x2744, 0x2745, 0x2746, 0x2747, 0x2748,
+  0x274e, 0x274f, 0x2750, 0x2751, 0x2752, 0x2753, 0x275a, 0x275b,
+  0x2263, 0x276c, 0x2726, 0x2760, 0x276f, 0x2261, 0x273c, 0x276d,
+  0x2735, 0x2739, 0x276a, 0x276b, 0x275f, 0x2264, 0x2764, 0x276e,
+  0x2769, 0x6c69, 0x6f4b, 0x7652, 0x5832, 0x6d5b, 0x5f32, 0x5f3e,
+  0x793b, 0x5c74, 0x7564, 0x7326, 0x5d60, 0x6126, 0x4e78, 0x5c30,
+  0x632a, 0x7169, 0x4d7a, 0x7c2f, 0x5321, 0x712b, 0x6751, 0x522c,
+  0x4e79, 0x717d, 0x5e3f, 0x7b3a, 0x7939, 0x4e52, 0x632b, 0x6b60,
+  0x4e7a, 0x4b77, 0x6525, 0x4a61, 0x544c, 0x6a61, 0x5c63, 0x5f2d,
+  0x4b6b, 0x552f, 0x5675, 0x6578, 0x5e40, 0x6c23, 0x694d, 0x6a27,
+  0x6976, 0x7b3b, 0x6769, 0x6f4c, 0x5066, 0x5e41, 0x642c, 0x584c,
+  0x7971, 0x4e5f, 0x7a24, 0x6632, 0x7a7b, 0x7a3d, 0x4c48, 0x6f4d,
+  0x5555, 0x5322, 0x6c51, 0x6427, 0x6c52, 0x7631, 0x4e7b, 0x5051,
+  0x4b3f, 0x6d24, 0x6d28, 0x5e42, 0x7662, 0x6d5c, 0x5c75, 0x6039,
+  0x544e, 0x7435, 0x535b, 0x5635, 0x6c24, 0x6466, 0x716a, 0x4b6c,
+  0x4b40, 0x6c72, 0x506a, 0x7972, 0x6c25, 0x505f, 0x676a, 0x506b,
+  0x5c51, 0x5b69, 0x7d4c, 0x5b57, 0x5a61, 0x5636, 0x635f, 0x5e43,
+  0x5e44, 0x4a21, 0x6e6c, 0x5323, 0x6e37, 0x784f, 0x6a48, 0x6e38,
+  0x712c, 0x7125, 0x694e, 0x793c, 0x6579, 0x6c6a, 0x5d56, 0x6d42,
+  0x7825, 0x653a, 0x5b58, 0x4a22, 0x514d, 0x6e6d, 0x6c6b, 0x5e45,
+  0x6360, 0x4a49, 0x7269, 0x554e, 0x7636, 0x4e42, 0x5647, 0x6334,
+  0x712d, 0x6a62, 0x5742, 0x7327, 0x4d6a, 0x6b6e, 0x5932, 0x7d25,
+  0x7655, 0x5562, 0x7835, 0x4c75, 0x7535, 0x642d, 0x676b, 0x7155,
+  0x703b, 0x6935, 0x4c49, 0x7a55, 0x6154, 0x5756, 0x5c41, 0x5e46,
+  0x7a6f, 0x6361, 0x6173, 0x5c76, 0x4e7c, 0x5b44, 0x7871, 0x5c64,
+  0x656f, 0x5c31, 0x5556, 0x735a, 0x4b41, 0x5b43, 0x597a, 0x536e,
+  0x7a38, 0x7d26, 0x6b6f, 0x7426, 0x4c4a, 0x7328, 0x735b, 0x5b27,
+  0x7637, 0x4f66, 0x7072, 0x4b5a, 0x6752, 0x5743, 0x7670, 0x685e,
+  0x6526, 0x6567, 0x4a23, 0x4c27, 0x6a49, 0x7836, 0x7a25, 0x712e,
+  0x6f4e, 0x4b6d, 0x7630, 0x6f4f, 0x694f, 0x775e, 0x4e53, 0x5c77,
+  0x5b28, 0x4b78, 0x5f21, 0x5d61, 0x754a, 0x6936, 0x676c, 0x6e6e,
+  0x7370, 0x5f3f, 0x4c4b, 0x5041, 0x7452, 0x603a, 0x5f40, 0x4e60,
+  0x5c52, 0x7d6a, 0x5676, 0x6a4a, 0x6869, 0x632c, 0x7350, 0x4a24,
+  0x5b78, 0x5e47, 0x6b70, 0x7156, 0x6562, 0x4c4c, 0x4b7b, 0x6a63,
+  0x5f41, 0x566d, 0x6950, 0x6e39, 0x5563, 0x5153, 0x6570, 0x6834,
+  0x6b43, 0x6a2a, 0x7a7c, 0x7576, 0x703c, 0x7d54, 0x603b, 0x4e43,
+  0x503a, 0x773a, 0x5873, 0x774d, 0x642e, 0x545f, 0x5067, 0x6c7d,
+  0x522e, 0x6e6f, 0x5557, 0x6a64, 0x7822, 0x4d6b, 0x573f, 0x7b31,
+  0x4d6c, 0x5c32, 0x506c, 0x4e7d, 0x6e70, 0x4c42, 0x506d, 0x6577,
+  0x737c, 0x6e22, 0x5933, 0x5874, 0x6937, 0x4e2e, 0x5922, 0x5871,
+  0x544f, 0x6527, 0x5552, 0x5629, 0x7422, 0x7157, 0x5558, 0x703d,
+  0x5750, 0x5450, 0x574f, 0x6b6a, 0x7d6b, 0x5b6d, 0x7c45, 0x4b42,
+  0x7d55, 0x7448, 0x686a, 0x7573, 0x795e, 0x536f, 0x6c53, 0x5d42,
+  0x6f37, 0x6754, 0x4a4a, 0x597b, 0x7a7d, 0x562a, 0x7478, 0x7777,
+  0x5c2c, 0x5757, 0x5f22, 0x4e3e, 0x5370, 0x7024, 0x616c, 0x4f67,
+  0x734b, 0x6d29, 0x4a3e, 0x746f, 0x764e, 0x5e7b, 0x503b, 0x5537,
+  0x6e71, 0x7428, 0x5c78, 0x4b27, 0x5a4e, 0x6066, 0x6d25, 0x6e72,
+  0x5c79, 0x795c, 0x735c, 0x7872, 0x7479, 0x7c71, 0x503c, 0x5b79,
+  0x5731, 0x4b7c, 0x7025, 0x4b7d, 0x5574, 0x4d6d, 0x4a25, 0x562b,
+  0x5042, 0x703e, 0x523d, 0x4c24, 0x7a36, 0x4c4d, 0x5a7a, 0x764f,
+  0x6938, 0x5875, 0x4c4e, 0x574d, 0x5451, 0x696d, 0x4a6b, 0x5962,
+  0x7d32, 0x632d, 0x564c, 0x5934, 0x6127, 0x6e53, 0x5043, 0x7d33,
+  0x5564, 0x4f68, 0x6d43, 0x5032, 0x4e7e, 0x5a28, 0x7850, 0x7d56,
+  0x7851, 0x7852, 0x5c53, 0x5d62, 0x7b79, 0x5d41, 0x6335, 0x6d5d,
+  0x4e44, 0x4b21, 0x5d63, 0x7c5d, 0x792f, 0x527b, 0x4f21, 0x6428,
+  0x7436, 0x6c7e, 0x632e, 0x676d, 0x7d41, 0x5a62, 0x5833, 0x5d64,
+  0x706f, 0x7671, 0x7a70, 0x5175, 0x5a4f, 0x5c54, 0x5c26, 0x6f3f,
+  0x4e4f, 0x6059, 0x5956, 0x6c54, 0x6a4b, 0x4a3f, 0x5530, 0x4f69,
+  0x716d, 0x4c4f, 0x6478, 0x646d, 0x5758, 0x7d27, 0x6a2b, 0x7632,
+  0x4f70, 0x793d, 0x6674, 0x4b5b, 0x7351, 0x6951, 0x7329, 0x5060,
+  0x6952, 0x5a63, 0x6252, 0x7622, 0x6174, 0x5a64, 0x6755, 0x753f,
+  0x4f22, 0x4d2f, 0x4f23, 0x4d30, 0x717e, 0x5023, 0x612f, 0x7823,
+  0x4a26, 0x773b, 0x726a, 0x5e48, 0x6953, 0x5e49, 0x7d5e, 0x4a40,
+  0x796a, 0x514e, 0x6e54, 0x5452, 0x5923, 0x7d28, 0x5759, 0x774e,
+  0x7a3e, 0x4f56, 0x5770, 0x6b61, 0x7845, 0x5c7a, 0x5d43, 0x795f,
+  0x676f, 0x7d65, 0x7623, 0x597c, 0x7d29, 0x676e, 0x5565, 0x6f50,
+  0x4d31, 0x7722, 0x7132, 0x7131, 0x4d32, 0x5a2b, 0x4a27, 0x6362,
+  0x7b3c, 0x5924, 0x6e3a, 0x7853, 0x7b7a, 0x4f24, 0x5c7b, 0x7663,
+  0x6d2a, 0x7221, 0x4e61, 0x7a26, 0x7960, 0x6c56, 0x646e, 0x7921,
+  0x7b6f, 0x796b, 0x6e23, 0x6a2c, 0x4a28, 0x747a, 0x4d56, 0x7c76,
+  0x7449, 0x7854, 0x7826, 0x5e4a, 0x7246, 0x575a, 0x5350, 0x5845,
+  0x6a66, 0x735d, 0x645a, 0x7664, 0x7672, 0x5f42, 0x597d, 0x4c76,
+  0x533a, 0x642f, 0x7961, 0x7026, 0x4b53, 0x603c, 0x744a, 0x547a,
+  0x7d2a, 0x7962, 0x7437, 0x7d42, 0x7c30, 0x7d6c, 0x4a62, 0x7d3d,
+  0x6a67, 0x5f43, 0x5152, 0x4e62, 0x5324, 0x7d2b, 0x5f60, 0x7247,
+  0x6770, 0x506e, 0x732a, 0x5e4b, 0x7638, 0x6175, 0x7133, 0x7723,
+  0x4a29, 0x4f25, 0x5f44, 0x6130, 0x703f, 0x7624, 0x6336, 0x7a46,
+  0x506f, 0x7d6d, 0x5d44, 0x7c77, 0x663f, 0x5e2d, 0x7a3f, 0x6571,
+  0x6d44, 0x5225, 0x7d6e, 0x7536, 0x6176, 0x5e4c, 0x7c5e, 0x6c57,
+  0x4d5d, 0x5637, 0x4d33, 0x7855, 0x6558, 0x4f6a, 0x4f50, 0x6a4c,
+  0x6a2e, 0x6a2d, 0x5371, 0x5325, 0x774f, 0x6e24, 0x5024, 0x7222,
+  0x5070, 0x7223, 0x7778, 0x5033, 0x5b29, 0x533b, 0x4a6c, 0x7126,
+  0x4b55, 0x7767, 0x4d5e, 0x7724, 0x7840, 0x535d, 0x4c50, 0x4f26,
+  0x7673, 0x6177, 0x535c, 0x7a7e, 0x7a27, 0x6b59, 0x4f27, 0x6a2f,
+  0x646f, 0x6939, 0x7158, 0x5858, 0x6072, 0x6634, 0x5c7c, 0x7371,
+  0x6350, 0x727b, 0x5b46, 0x5071, 0x5072, 0x4f5c, 0x5351, 0x4c31,
+  0x7758, 0x4b28, 0x6b3c, 0x643e, 0x745c, 0x5c42, 0x7027, 0x6640,
+  0x4a6d, 0x686b, 0x6568, 0x5c43, 0x6d5e, 0x5372, 0x4c77, 0x4e54,
+  0x672b, 0x4b43, 0x6131, 0x7732, 0x5373, 0x5352, 0x7540, 0x5f5d,
+  0x6e73, 0x6771, 0x7d34, 0x7248, 0x7352, 0x6e74, 0x6253, 0x4c51,
+  0x5f6a, 0x693a, 0x5957, 0x754d, 0x7172, 0x7a47, 0x5978, 0x5442,
+  0x7665, 0x5d45, 0x6772, 0x6d5f, 0x4a4b, 0x5b7a, 0x6835, 0x5326,
+  0x7d35, 0x7949, 0x6462, 0x7b3d, 0x5724, 0x4e45, 0x4e55, 0x5666,
+  0x653d, 0x5e4d, 0x6c73, 0x6d60, 0x6c6c, 0x7b3e, 0x5f6b, 0x6178,
+  0x793e, 0x5073, 0x602a, 0x6862, 0x6254, 0x527d, 0x6528, 0x5953,
+  0x535e, 0x7438, 0x773c, 0x5c7d, 0x686c, 0x6467, 0x6377, 0x6c28,
+  0x7a71, 0x6572, 0x5074, 0x522f, 0x5c65, 0x5025, 0x7134, 0x7c31,
+  0x4c78, 0x5d46, 0x7a51, 0x775f, 0x7a28, 0x6e75, 0x5e4e, 0x6773,
+  0x772c, 0x6b44, 0x6d61, 0x602b, 0x5d47, 0x5233, 0x523f, 0x4a4c,
+  0x7b3f, 0x657d, 0x5d65, 0x584d, 0x6c74, 0x5075, 0x686d, 0x5052,
+  0x5958, 0x7666, 0x5b2a, 0x7760, 0x5859, 0x7423, 0x745d, 0x6f51,
+  0x5935, 0x6d2b, 0x6337, 0x6e3b, 0x4d34, 0x6073, 0x6a4d, 0x6c75,
+  0x686e, 0x4b29, 0x712f, 0x4a4d, 0x6c29, 0x726b, 0x7d6f, 0x7973,
+  0x6641, 0x6c58, 0x6d2c, 0x6a4e, 0x685f, 0x5e4f, 0x5226, 0x6774,
+  0x5156, 0x6642, 0x6363, 0x6430, 0x5834, 0x7625, 0x735e, 0x5725,
+  0x7768, 0x6846, 0x7b66, 0x5d66, 0x5c7e, 0x585a, 0x5a2c, 0x6a30,
+  0x6338, 0x4a2a, 0x6179, 0x6a31, 0x726c, 0x7a6e, 0x6e55, 0x7974,
+  0x526c, 0x7b7b, 0x7d70, 0x603d, 0x4e63, 0x7846, 0x5e2e, 0x5f45,
+  0x653e, 0x6d2d, 0x7a6a, 0x4d6e, 0x6d26, 0x6d2e, 0x706d, 0x5d21,
+  0x6d2f, 0x7c78, 0x586b, 0x4c79, 0x4d35, 0x7a29, 0x615d, 0x6255,
+  0x6d4f, 0x5d22, 0x794a, 0x6a68, 0x656d, 0x536b, 0x6954, 0x617a,
+  0x644c, 0x6164, 0x6847, 0x4e5b, 0x5c55, 0x7735, 0x7c73, 0x7073,
+  0x4e2f, 0x7135, 0x6f52, 0x6848, 0x6b71, 0x4b54, 0x603e, 0x6378,
+  0x6a69, 0x7c32, 0x6074, 0x4f60, 0x6e25, 0x7a2a, 0x6643, 0x6132,
+  0x4a2b, 0x6364, 0x693b, 0x6256, 0x7372, 0x6e56, 0x6a32, 0x5076,
+  0x6c59, 0x5a4b, 0x4f28, 0x5d23, 0x585b, 0x794e, 0x6955, 0x6351,
+  0x523c, 0x582c, 0x734c, 0x4d7b, 0x7656, 0x6775, 0x686f, 0x6379,
+  0x523b, 0x7373, 0x637b, 0x5e50, 0x4e30, 0x5677, 0x7159, 0x7541,
+  0x5c44, 0x753b, 0x5e51, 0x5c66, 0x5e52, 0x6d62, 0x6e76, 0x6a4f,
+  0x706e, 0x637c, 0x535f, 0x5374, 0x6133, 0x6134, 0x7453, 0x5f46,
+  0x6956, 0x5b2b, 0x7626, 0x6339, 0x6b45, 0x7429, 0x4d36, 0x5279,
+  0x5a2d, 0x5263, 0x4f51, 0x4b5c, 0x4c7a, 0x4f5d, 0x6829, 0x633b,
+  0x633a, 0x605a, 0x6e77, 0x5c33, 0x5375, 0x5726, 0x7635, 0x575b,
+  0x6155, 0x546a, 0x5f23, 0x7d5f, 0x5077, 0x6d54, 0x4b2a, 0x645b,
+  0x617b, 0x4b22, 0x5360, 0x643f, 0x7b40, 0x5a3e, 0x644d, 0x5639,
+  0x6f40, 0x617c, 0x7639, 0x5f47, 0x6431, 0x5c67, 0x5c68, 0x7a56,
+  0x5376, 0x715a, 0x7a72, 0x627d, 0x554f, 0x5078, 0x4d5f, 0x754b,
+  0x6470, 0x4b2b, 0x5744, 0x627e, 0x5d5a, 0x5a2e, 0x4a6e, 0x5539,
+  0x6321, 0x6863, 0x732b, 0x4f29, 0x5377, 0x5471, 0x4e64, 0x6872,
+  0x6575, 0x672e, 0x563a, 0x5f6c, 0x6440, 0x6864, 0x5835, 0x645c,
+  0x7439, 0x7136, 0x625e, 0x6135, 0x4d6f, 0x7127, 0x4e65, 0x4b5d,
+  0x5963, 0x732c, 0x5079, 0x6c2b, 0x5e53, 0x7769, 0x7975, 0x615e,
+  0x4b6e, 0x633c, 0x7856, 0x5b6e, 0x7d71, 0x7736, 0x745e, 0x726d,
+  0x5b59, 0x7028, 0x617d, 0x5e54, 0x602c, 0x6d63, 0x5361, 0x5f48,
+  0x5936, 0x7d2c, 0x6f53, 0x6441, 0x786b, 0x5b2c, 0x7c46, 0x582d,
+  0x763a, 0x5b5f, 0x5353, 0x7847, 0x4a4e, 0x7841, 0x5234, 0x5c34,
+  0x7a39, 0x4a4f, 0x7c33, 0x6a6a, 0x6a6b, 0x507a, 0x6d64, 0x5d67,
+  0x5f49, 0x5f6d, 0x6e3c, 0x6f41, 0x4c52, 0x5d24, 0x5f4a, 0x5378,
+  0x7128, 0x4d37, 0x6f54, 0x645d, 0x5f6e, 0x4b2c, 0x693c, 0x6a6c,
+  0x5f4b, 0x793f, 0x562f, 0x5546, 0x4f2a, 0x4e29, 0x5678, 0x7137,
+  0x6e78, 0x5959, 0x735f, 0x7848, 0x4e46, 0x5566, 0x7466, 0x6645,
+  0x6f55, 0x4b6f, 0x7c5f, 0x5c27, 0x5667, 0x7849, 0x6352, 0x633d,
+  0x4f61, 0x7040, 0x6c5a, 0x5d57, 0x7b70, 0x6c2c, 0x7029, 0x7a57,
+  0x7b41, 0x5240, 0x6530, 0x6d65, 0x4b2d, 0x7930, 0x7725, 0x4b2e,
+  0x5a2f, 0x5836, 0x5327, 0x7b32, 0x7d44, 0x6c2d, 0x7b21, 0x6569,
+  0x696e, 0x7374, 0x7873, 0x7041, 0x5e2f, 0x7830, 0x7360, 0x672f,
+  0x5b2d, 0x6635, 0x7928, 0x5d58, 0x6859, 0x6f56, 0x5362, 0x625f,
+  0x7c60, 0x5748, 0x7d2d, 0x5f6f, 0x4c53, 0x5379, 0x5470, 0x5b47,
+  0x5e55, 0x7074, 0x5550, 0x6559, 0x7c47, 0x5c56, 0x6260, 0x5a30,
+  0x7323, 0x536c, 0x744b, 0x7d45, 0x637d, 0x7931, 0x507b, 0x6c5b,
+  0x753c, 0x7224, 0x584e, 0x584f, 0x7577, 0x7661, 0x5237, 0x7b6c,
+  0x5d48, 0x6468, 0x5241, 0x7857, 0x563b, 0x5e56, 0x773d, 0x6c2e,
+  0x5061, 0x6075, 0x6a33, 0x4e56, 0x4c25, 0x6c76, 0x6261, 0x633e,
+  0x7c48, 0x4d70, 0x7976, 0x5f70, 0x653f, 0x4e3f, 0x7c61, 0x6d30,
+  0x7d51, 0x763b, 0x794f, 0x6b5a, 0x4a41, 0x5238, 0x4d71, 0x6353,
+  0x7d66, 0x666d, 0x637a, 0x702a, 0x7950, 0x7c62, 0x7827, 0x6165,
+  0x6e79, 0x6776, 0x6a6d, 0x7c34, 0x7542, 0x575c, 0x7075, 0x5d68,
+  0x536d, 0x757c, 0x5a3f, 0x4c7b, 0x537a, 0x7424, 0x6f57, 0x5443,
+  0x7b63, 0x7b6d, 0x602d, 0x6a6e, 0x7b33, 0x6442, 0x7667, 0x525d,
+  0x5f4c, 0x7c49, 0x6529, 0x6076, 0x7633, 0x617e, 0x4b70, 0x6a6f,
+  0x6a70, 0x5a40, 0x7834, 0x6b72, 0x6443, 0x6957, 0x6471, 0x4a6f,
+  0x4e57, 0x7c4a, 0x7361, 0x4b44, 0x6365, 0x4b45, 0x6a34, 0x693d,
+  0x5749, 0x6b5b, 0x6d31, 0x4c43, 0x773e, 0x7c4b, 0x7874, 0x5937,
+  0x7353, 0x7354, 0x7764, 0x7751, 0x5837, 0x4e31, 0x4a42, 0x7b34,
+  0x4b46, 0x7076, 0x5567, 0x6a50, 0x4c54, 0x4b2f, 0x742a, 0x692f,
+  0x7543, 0x6958, 0x5d69, 0x7173, 0x557b, 0x5e3b, 0x747b, 0x7d73,
+  0x7d72, 0x7726, 0x5d49, 0x5453, 0x4c28, 0x5a41, 0x4c55, 0x5964,
+  0x7a4a, 0x6563, 0x533c, 0x4a70, 0x5044, 0x4a50, 0x7a2b, 0x6b6b,
+  0x6778, 0x5965, 0x5157, 0x7324, 0x547b, 0x7c63, 0x7a58, 0x7355,
+  0x4f2b, 0x6b73, 0x557c, 0x5354, 0x4d7c, 0x5966, 0x6279, 0x6221,
+  0x6b54, 0x6077, 0x6432, 0x4c7c, 0x7b64, 0x742b, 0x503d, 0x4a71,
+  0x6f38, 0x5740, 0x6e7a, 0x7d74, 0x5363, 0x7b42, 0x5568, 0x5b2e,
+  0x6136, 0x7837, 0x603f, 0x7b43, 0x5d6a, 0x6222, 0x6e26, 0x7668,
+  0x7675, 0x5d4a, 0x5062, 0x5d26, 0x5d6b, 0x6479, 0x632f, 0x507c,
+  0x747c, 0x4c3c, 0x776a, 0x6564, 0x5f71, 0x7761, 0x7977, 0x6f39,
+  0x7858, 0x7929, 0x7859, 0x6e3d, 0x5846, 0x6463, 0x754e, 0x5d59,
+  0x5967, 0x5239, 0x5543, 0x5a65, 0x5a50, 0x5159, 0x4e58, 0x4b5e,
+  0x742c, 0x5a7b, 0x7669, 0x6873, 0x4f2c, 0x7070, 0x747d, 0x5b48,
+  0x4e40, 0x6354, 0x514f, 0x7175, 0x4d72, 0x4f6b, 0x4d38, 0x6326,
+  0x515a, 0x7225, 0x7226, 0x644e, 0x537b, 0x7129, 0x7249, 0x6f58,
+  0x6649, 0x5838, 0x7a73, 0x7335, 0x7824, 0x5173, 0x6648, 0x785a,
+  0x5c69, 0x5e57, 0x4b5f, 0x4f6c, 0x745f, 0x5174, 0x523a, 0x5f72,
+  0x6137, 0x6223, 0x537c, 0x6d66, 0x5b49, 0x647a, 0x4f5e, 0x4e50,
+  0x5553, 0x7375, 0x772e, 0x6f48, 0x4d73, 0x754f, 0x6573, 0x7042,
+  0x4a51, 0x6a71, 0x5026, 0x595a, 0x702b, 0x6b67, 0x6540, 0x7c35,
+  0x6444, 0x4c29, 0x7d46, 0x6a35, 0x652a, 0x5f3a, 0x615f, 0x5a51,
+  0x6138, 0x6874, 0x537d, 0x6224, 0x724a, 0x5a66, 0x7733, 0x7d4d,
+  0x7336, 0x6e57, 0x7544, 0x5824, 0x7227, 0x5938, 0x5939, 0x6f49,
+  0x564e, 0x774b, 0x5f2e, 0x6875, 0x5235, 0x5355, 0x744c, 0x5a7c,
+  0x5968, 0x776b, 0x7549, 0x733c, 0x5a52, 0x5335, 0x6836, 0x564f,
+  0x743a, 0x7749, 0x4c2a, 0x7043, 0x4c56, 0x5053, 0x533d, 0x5b7b,
+  0x4b60, 0x5364, 0x7677, 0x553a, 0x734d, 0x4b61, 0x6b74, 0x742d,
+  0x7c2a, 0x776c, 0x6876, 0x5a67, 0x774c, 0x6541, 0x606e, 0x557d,
+  0x4e66, 0x7c2b, 0x553b, 0x7228, 0x6225, 0x4d39, 0x6a72, 0x4b47,
+  0x4d74, 0x5b2f, 0x6f59, 0x4d3a, 0x7c79, 0x5f73, 0x4e67, 0x5a42,
+  0x4f2d, 0x6779, 0x7828, 0x7362, 0x4a72, 0x5f24, 0x5444, 0x4c57,
+  0x6542, 0x4d3b, 0x6f5a, 0x6e58, 0x5d27, 0x6226, 0x6040, 0x5630,
+  0x784a, 0x7c7a, 0x597e, 0x5e30, 0x5d6c, 0x5a68, 0x5460, 0x5679,
+  0x4d57, 0x5e58, 0x7278, 0x6456, 0x5045, 0x742e, 0x5d28, 0x6d45,
+  0x7356, 0x5e59, 0x6366, 0x5328, 0x5b30, 0x655a, 0x633f, 0x5b31,
+  0x5569, 0x6041, 0x6f5b, 0x7069, 0x5732, 0x507d, 0x5969, 0x507e,
+  0x6c6d, 0x5329, 0x7229, 0x7044, 0x6262, 0x696f, 0x7951, 0x6959,
+  0x685a, 0x5a43, 0x5a44, 0x5445, 0x677a, 0x4d60, 0x6330, 0x5b32,
+  0x7b44, 0x7363, 0x5925, 0x7b67, 0x5d4b, 0x5054, 0x6636, 0x602e,
+  0x7d5a, 0x5c35, 0x6078, 0x6731, 0x7570, 0x585c, 0x6d46, 0x6139,
+  0x6340, 0x7940, 0x6970, 0x595b, 0x7364, 0x5c36, 0x6469, 0x7045,
+  0x6341, 0x7c4c, 0x7c4d, 0x724b, 0x724c, 0x644f, 0x715b, 0x7a59,
+  0x7138, 0x7d75, 0x6079, 0x677b, 0x7c37, 0x7c64, 0x7b45, 0x6367,
+  0x5839, 0x7678, 0x5c45, 0x4c58, 0x602f, 0x7467, 0x6f5c, 0x4f7c,
+  0x6f5d, 0x722a, 0x7d3e, 0x4a2c, 0x7d3b, 0x7d47, 0x6732, 0x6a51,
+  0x5f74, 0x516c, 0x645e, 0x6543, 0x5926, 0x4d3c, 0x7365, 0x6d55,
+  0x593a, 0x6d67, 0x7b35, 0x786c, 0x6067, 0x4c59, 0x5446, 0x6725,
+  0x5575, 0x533e, 0x7c7b, 0x6472, 0x5f75, 0x6878, 0x786d, 0x4e47,
+  0x7d76, 0x6858, 0x4d58, 0x6756, 0x4c5a, 0x4a63, 0x5f76, 0x7047,
+  0x7046, 0x583a, 0x7174, 0x7470, 0x754c, 0x7c65, 0x6a45, 0x6a73,
+  0x5d5b, 0x5c57, 0x5e7d, 0x7279, 0x5547, 0x5850, 0x7048, 0x5121,
+  0x5122, 0x5954, 0x5668, 0x594a, 0x5a31, 0x5847, 0x5c62, 0x734e,
+  0x7574, 0x7139, 0x5a53, 0x766a, 0x4f75, 0x7d2e, 0x4a52, 0x5f34,
+  0x575d, 0x7a3a, 0x6e27, 0x753d, 0x7875, 0x6d68, 0x5461, 0x5123,
+  0x6156, 0x7978, 0x5b4a, 0x4b79, 0x5454, 0x595c, 0x6e3e, 0x776d,
+  0x526e, 0x6166, 0x7779, 0x5d6d, 0x685b, 0x5b33, 0x5177, 0x6030,
+  0x5462, 0x7657, 0x5779, 0x585d, 0x4d7d, 0x722b, 0x4d3d, 0x7842,
+  0x722c, 0x4a2d, 0x4a2e, 0x4f2e, 0x6342, 0x5c37, 0x5b5a, 0x593b,
+  0x4a73, 0x7653, 0x6678, 0x6a75, 0x6a76, 0x7679, 0x4f2f, 0x4a53,
+  0x4a2f, 0x5230, 0x713a, 0x5733, 0x6343, 0x737d, 0x5e5a, 0x5e5b,
+  0x6f5e, 0x6263, 0x6e7b, 0x5f77, 0x574a, 0x4e68, 0x5b5b, 0x713b,
+  0x6971, 0x7a37, 0x5046, 0x4c2b, 0x6e28, 0x4b7a, 0x7979, 0x4c7d,
+  0x537e, 0x6450, 0x726e, 0x5455, 0x5f4d, 0x7c38, 0x5150, 0x724d,
+  0x7752, 0x4a54, 0x5559, 0x585e, 0x4d59, 0x6e29, 0x763c, 0x4c5b,
+  0x7049, 0x7c7c, 0x6849, 0x747e, 0x677c, 0x575e, 0x5e5c, 0x702c,
+  0x4c7e, 0x4d61, 0x613a, 0x5b6f, 0x5a32, 0x5125, 0x5c38, 0x5876,
+  0x5124, 0x4d62, 0x5c6a, 0x7077, 0x704a, 0x503e, 0x5d5c, 0x5456,
+  0x5356, 0x6d50, 0x4d21, 0x5f35, 0x5f78, 0x5421, 0x4e32, 0x684a,
+  0x6b75, 0x6355, 0x7550, 0x7521, 0x5927, 0x652b, 0x664b, 0x7571,
+  0x6545, 0x7923, 0x605b, 0x766b, 0x4b71, 0x596a, 0x7522, 0x5751,
+  0x5178, 0x6a78, 0x6a79, 0x5a33, 0x6f5f, 0x716f, 0x6576, 0x6e3f,
+  0x6264, 0x503f, 0x7a2c, 0x7551, 0x6733, 0x693e, 0x724e, 0x5b34,
+  0x7c4e, 0x5d6e, 0x6734, 0x5734, 0x7734, 0x4d3e, 0x5a69, 0x4f30,
+  0x7759, 0x7366, 0x4e59, 0x4e2a, 0x4b48, 0x5027, 0x704b, 0x5047,
+  0x6445, 0x5b60, 0x555a, 0x5727, 0x6e40, 0x7876, 0x7552, 0x6d69,
+  0x593c, 0x6546, 0x7523, 0x5a54, 0x6227, 0x7b7c, 0x715c, 0x4a74,
+  0x687a, 0x4e69, 0x6978, 0x6265, 0x5039, 0x5472, 0x5126, 0x5f4e,
+  0x7c74, 0x532a, 0x4c2c, 0x6f60, 0x6565, 0x5055, 0x5b7c, 0x7c66,
+  0x4b7e, 0x6d6a, 0x5e31, 0x7963, 0x5422, 0x4f76, 0x5650, 0x556a,
+  0x716e, 0x7a4b, 0x6521, 0x5531, 0x4f6d, 0x6d6b, 0x5532, 0x553c,
+  0x7d62, 0x732d, 0x7d5b, 0x6930, 0x5127, 0x7d63, 0x4e33, 0x7d64,
+  0x7a4e, 0x4a30, 0x7727, 0x4f31, 0x6622, 0x7c36, 0x722d, 0x6f61,
+  0x732e, 0x5c46, 0x596b, 0x6860, 0x6128, 0x5576, 0x4f7d, 0x5e5d,
+  0x5951, 0x646a, 0x724f, 0x773f, 0x6266, 0x6228, 0x6356, 0x6d51,
+  0x6979, 0x5631, 0x5e32, 0x6068, 0x532b, 0x6b5c, 0x5f2f, 0x4a43,
+  0x6e7c, 0x7d43, 0x6b76, 0x4f32, 0x596c, 0x593d, 0x585f, 0x5438,
+  0x6b3e, 0x5d6f, 0x5d70, 0x5d71, 0x5d72, 0x593e, 0x7b46, 0x4f33,
+  0x6e7d, 0x642b, 0x5a45, 0x586c, 0x5128, 0x6229, 0x5e3c, 0x6735,
+  0x5b70, 0x6f62, 0x7170, 0x4f34, 0x5b71, 0x6031, 0x5f25, 0x7952,
+  0x677d, 0x6623, 0x7b71, 0x4b30, 0x722e, 0x4d67, 0x685c, 0x6757,
+  0x7740, 0x5063, 0x5a21, 0x4c3d, 0x5129, 0x5d4c, 0x637e, 0x512a,
+  0x682a, 0x6a36, 0x797a, 0x664c, 0x7658, 0x5447, 0x594b, 0x5952,
+  0x534b, 0x5877, 0x5a29, 0x7578, 0x5e5e, 0x722f, 0x7829, 0x5848,
+  0x6e41, 0x7941, 0x5d73, 0x6a7a, 0x763d, 0x613b, 0x4d3f, 0x7454,
+  0x664d, 0x7c4f, 0x7b22, 0x605c, 0x743b, 0x5a55, 0x7932, 0x7b72,
+  0x5b76, 0x5e5f, 0x5b72, 0x785c, 0x776e, 0x6b68, 0x527a, 0x713c,
+  0x7a5a, 0x5a6a, 0x5a46, 0x7741, 0x6736, 0x6547, 0x562c, 0x5c47,
+  0x6129, 0x622a, 0x5526, 0x5457, 0x7250, 0x6a7b, 0x605d, 0x7b73,
+  0x713d, 0x6267, 0x7d57, 0x4e48, 0x6a37, 0x7c40, 0x7d67, 0x776f,
+  0x5735, 0x6f3a, 0x715d, 0x5e33, 0x684b, 0x785d, 0x7b47, 0x5548,
+  0x575f, 0x5d29, 0x6931, 0x7a2d, 0x7659, 0x7a74, 0x782a, 0x666e,
+  0x4c5c, 0x613c, 0x606f, 0x693f, 0x7c7d, 0x664e, 0x6157, 0x664f,
+  0x7471, 0x6473, 0x647b, 0x7964, 0x6f63, 0x4f6e, 0x763e, 0x6032,
+  0x7c7e, 0x512b, 0x577a, 0x7b48, 0x6257, 0x5423, 0x7078, 0x5728,
+  0x6167, 0x533f, 0x6f64, 0x5745, 0x6b62, 0x7c67, 0x6422, 0x6268,
+  0x6650, 0x7b68, 0x7468, 0x6574, 0x743c, 0x7455, 0x5f36, 0x7c39,
+  0x6e42, 0x4a75, 0x6f65, 0x4b62, 0x5424, 0x5e60, 0x5a7d, 0x6446,
+  0x683e, 0x605e, 0x7634, 0x6a52, 0x797b, 0x6042, 0x4a64, 0x6737,
+  0x6a7d, 0x595d, 0x5a34, 0x6e2a, 0x7b69, 0x5b4b, 0x5a35, 0x713e,
+  0x532c, 0x7b49, 0x5f4f, 0x5340, 0x6357, 0x6f66, 0x7c50, 0x6940,
+  0x7553, 0x6c5c, 0x7737, 0x6a38, 0x5179, 0x5c48, 0x6a39, 0x715e,
+  0x5736, 0x4f35, 0x5928, 0x6c6e, 0x5d2a, 0x4d22, 0x682e, 0x613d,
+  0x7251, 0x6941, 0x527c, 0x5b35, 0x7367, 0x587e, 0x7c51, 0x6d32,
+  0x742f, 0x7b23, 0x7c41, 0x6e2b, 0x5425, 0x7472, 0x6e59, 0x7b4a,
+  0x4d63, 0x583b, 0x655b, 0x7877, 0x7654, 0x5729, 0x4b49, 0x6651,
+  0x704c, 0x582e, 0x7953, 0x557e, 0x583c, 0x7230, 0x622b, 0x7368,
+  0x6f42, 0x6d6c, 0x6738, 0x5a7e, 0x4c3e, 0x727c, 0x5a6b, 0x6258,
+  0x6d56, 0x5651, 0x6033, 0x7c52, 0x6b48, 0x5341, 0x704d, 0x4f77,
+  0x6d52, 0x5458, 0x5c49, 0x5771, 0x5f3b, 0x7325, 0x744d, 0x713f,
+  0x7831, 0x697a, 0x7b4b, 0x4a55, 0x7954, 0x774a, 0x5648, 0x7c68,
+  0x733d, 0x6e7e, 0x677e, 0x5342, 0x5336, 0x4c2d, 0x767a, 0x5632,
+  0x5258, 0x6758, 0x6325, 0x6739, 0x702d, 0x7b4c, 0x6b21, 0x5426,
+  0x7b4d, 0x553d, 0x715f, 0x767b, 0x5e34, 0x556b, 0x6548, 0x7b24,
+  0x5439, 0x5e61, 0x6423, 0x5737, 0x786e, 0x5e35, 0x5652, 0x7955,
+  0x673a, 0x6b55, 0x5577, 0x6f67, 0x613e, 0x7a2e, 0x5669, 0x566e,
+  0x673b, 0x6c4b, 0x5533, 0x4e34, 0x7b25, 0x616e, 0x7728, 0x7b4e,
+  0x583d, 0x7b7d, 0x7c69, 0x4f36, 0x6d47, 0x6e2c, 0x4c5d, 0x7627,
+  0x667a, 0x7524, 0x7d5c, 0x6d33, 0x4e49, 0x6f68, 0x613f, 0x7a5b,
+  0x4b63, 0x7729, 0x7b26, 0x5c39, 0x7140, 0x6d48, 0x6f43, 0x562d,
+  0x7d4e, 0x6821, 0x7b74, 0x5527, 0x7176, 0x6653, 0x4c5e, 0x7832,
+  0x5c6b, 0x7d36, 0x656a, 0x7160, 0x5b4c, 0x5d4d, 0x5448, 0x596d,
+  0x7525, 0x667b, 0x6654, 0x7d48, 0x5621, 0x7d3f, 0x7c53, 0x6f21,
+  0x673c, 0x516e, 0x6655, 0x6972, 0x5f30, 0x5860, 0x7c3a, 0x7d2f,
+  0x704e, 0x5b61, 0x6549, 0x6d34, 0x6043, 0x6358, 0x697b, 0x6a28,
+  0x7d37, 0x7b27, 0x6942, 0x7d77, 0x6259, 0x5c6c, 0x6822, 0x6670,
+  0x7d78, 0x7d79, 0x763f, 0x6727, 0x6657, 0x5473, 0x5449, 0x567a,
+  0x5772, 0x6140, 0x5b62, 0x6658, 0x673d, 0x704f, 0x733e, 0x622c,
+  0x7537, 0x6070, 0x7d38, 0x6368, 0x5427, 0x687c, 0x7a52, 0x786f,
+  0x5653, 0x5534, 0x7050, 0x7770, 0x6e33, 0x6a3a, 0x6a53, 0x6d49,
+  0x5d2b, 0x652c, 0x7d21, 0x5f50, 0x6c33, 0x5f51, 0x6d6d, 0x7838,
+  0x777a, 0x782b, 0x7460, 0x543a, 0x6433, 0x695a, 0x5e36, 0x593f,
+  0x5940, 0x566f, 0x594c, 0x5a2a, 0x5f65, 0x7765, 0x4c32, 0x5f79,
+  0x5760, 0x543b, 0x7d7a, 0x4c33, 0x5b73, 0x5f52, 0x4e4a, 0x6e5a,
+  0x6464, 0x7b4f, 0x4f37, 0x6e43, 0x4e6a, 0x622d, 0x5761, 0x7a75,
+  0x5549, 0x782c, 0x6759, 0x7369, 0x586d, 0x6344, 0x7071, 0x6865,
+  0x607a, 0x6e44, 0x595e, 0x6b22, 0x6b23, 0x7c42, 0x6a3b, 0x682b,
+  0x5e62, 0x6d6f, 0x6823, 0x4f71, 0x543c, 0x7c6a, 0x673e, 0x7c72,
+  0x5634, 0x622e, 0x5337, 0x7a4c, 0x7a5c, 0x6d35, 0x6163, 0x682c,
+  0x685d, 0x6f69, 0x743d, 0x4f38, 0x695b, 0x512c, 0x5a47, 0x6b49,
+  0x684c, 0x5e37, 0x563c, 0x5365, 0x7a5d, 0x5a56, 0x4a31, 0x5a48,
+  0x5f26, 0x7933, 0x7252, 0x4a44, 0x4e4b, 0x4d75, 0x7d30, 0x5528,
+  0x7141, 0x6269, 0x5c4a, 0x6c34, 0x7a40, 0x7b28, 0x5028, 0x5a6c,
+  0x596e, 0x607b, 0x6f6a, 0x7a5e, 0x6044, 0x4f39, 0x554a, 0x5762,
+  0x622f, 0x5738, 0x684d, 0x765a, 0x6f22, 0x625a, 0x767c, 0x7b50,
+  0x512d, 0x4d64, 0x512e, 0x5c6d, 0x684e, 0x7079, 0x4e35, 0x667c,
+  0x577b, 0x5056, 0x5d75, 0x7771, 0x767d, 0x5b77, 0x7b6a, 0x695c,
+  0x5941, 0x7572, 0x6045, 0x6a54, 0x7942, 0x6a3c, 0x5245, 0x7b51,
+  0x6740, 0x6b25, 0x5f7a, 0x6322, 0x5739, 0x6943, 0x687d, 0x682f,
+  0x7253, 0x7b29, 0x5825, 0x554b, 0x5048, 0x512f, 0x5763, 0x6046,
+  0x5622, 0x6d70, 0x5773, 0x7c54, 0x5a57, 0x4c5f, 0x7254, 0x5130,
+  0x4c60, 0x5b7d, 0x733f, 0x7051, 0x7c3b, 0x6230, 0x6625, 0x625b,
+  0x5f5e, 0x6047, 0x726f, 0x4c61, 0x566a, 0x6742, 0x4e36, 0x7340,
+  0x4d7e, 0x7b52, 0x7878, 0x777b, 0x683f, 0x6837, 0x6d36, 0x5c3a,
+  0x4c34, 0x7177, 0x6838, 0x4a76, 0x6424, 0x7456, 0x5f66, 0x5f27,
+  0x5f67, 0x6141, 0x6944, 0x5c4b, 0x6945, 0x6f23, 0x6b26, 0x4b23,
+  0x6369, 0x517b, 0x6f24, 0x6f6b, 0x5034, 0x4d23, 0x6866, 0x6f25,
+  0x534c, 0x5a6d, 0x573a, 0x7255, 0x7565, 0x596f, 0x7934, 0x5554,
+  0x7d4f, 0x5b63, 0x7161, 0x6c36, 0x7b7e, 0x5357, 0x5131, 0x4b31,
+  0x5132, 0x4b32, 0x7142, 0x7461, 0x7935, 0x6143, 0x6142, 0x6b77,
+  0x5f28, 0x4b4a, 0x6639, 0x785e, 0x792a, 0x4a77, 0x6d37, 0x5338,
+  0x7256, 0x5459, 0x6e45, 0x7270, 0x4a32, 0x5c3b, 0x7178, 0x6c37,
+  0x654a, 0x7640, 0x7d5d, 0x5463, 0x4c62, 0x7754, 0x5765, 0x5343,
+  0x5826, 0x7641, 0x5d76, 0x4d40, 0x655c, 0x654b, 0x6144, 0x6830,
+  0x7430, 0x736a, 0x5a6e, 0x573b, 0x6231, 0x572a, 0x567b, 0x645f,
+  0x4a56, 0x6b28, 0x5b7e, 0x7642, 0x6f3b, 0x547d, 0x6048, 0x6839,
+  0x6f26, 0x4d24, 0x5474, 0x5b21, 0x5b5c, 0x5b5d, 0x6e5c, 0x4b4b,
+  0x7c55, 0x4e6b, 0x4d41, 0x7b53, 0x792b, 0x7554, 0x5929, 0x695d,
+  0x5b4d, 0x5d4e, 0x6743, 0x6c4c, 0x796c, 0x4b4c, 0x607c, 0x5428,
+  0x6d53, 0x586f, 0x7257, 0x4a78, 0x5a6f, 0x5654, 0x594d, 0x586e,
+  0x7241, 0x5f53, 0x5a70, 0x626a, 0x607d, 0x5878, 0x772f, 0x5a36,
+  0x4a57, 0x7258, 0x5879, 0x7a5f, 0x4f6f, 0x5942, 0x7052, 0x6451,
+  0x7337, 0x7a60, 0x6f6c, 0x6232, 0x543d, 0x594e, 0x7462, 0x5429,
+  0x4d42, 0x675a, 0x7259, 0x592a, 0x583e, 0x5c2d, 0x626b, 0x567c,
+  0x4a79, 0x545a, 0x7457, 0x4c21, 0x4f3a, 0x7538, 0x5943, 0x5068,
+  0x6345, 0x6b78, 0x7231, 0x4f3b, 0x532d, 0x6861, 0x4e6c, 0x6034,
+  0x5e63, 0x5d77, 0x7232, 0x7376, 0x765b, 0x577e, 0x785f, 0x7772,
+  0x5029, 0x665a, 0x7526, 0x573c, 0x4c63, 0x665b, 0x5d5d, 0x5133,
+  0x6f6d, 0x565e, 0x6474, 0x616f, 0x5d78, 0x684f, 0x4a65, 0x5c21,
+  0x6035, 0x7c2c, 0x7c2d, 0x5827, 0x6d38, 0x5b36, 0x5670, 0x732f,
+  0x4d25, 0x5a71, 0x5828, 0x4c64, 0x5134, 0x4a58, 0x5a72, 0x7527,
+  0x7528, 0x6626, 0x556c, 0x5578, 0x5a73, 0x6346, 0x5e64, 0x5e65,
+  0x5135, 0x5136, 0x5137, 0x7233, 0x695e, 0x7053, 0x7234, 0x7054,
+  0x4b64, 0x7b54, 0x7566, 0x636a, 0x5e66, 0x5f54, 0x7879, 0x702e,
+  0x5138, 0x565f, 0x5057, 0x7c21, 0x6f6e, 0x5c58, 0x695f, 0x655d,
+  0x7d7b, 0x6049, 0x5649, 0x542a, 0x654c, 0x6960, 0x5058, 0x7c22,
+  0x543e, 0x6233, 0x5e67, 0x5c3c, 0x5236, 0x7555, 0x4e21, 0x7529,
+  0x5d79, 0x5d7a, 0x7055, 0x765f, 0x725a, 0x646b, 0x7271, 0x6c39,
+  0x7d7c, 0x612a, 0x4a59, 0x6f6f, 0x752a, 0x6c79, 0x782d, 0x7242,
+  0x7643, 0x5752, 0x7922, 0x7056, 0x707a, 0x7660, 0x6973, 0x7243,
+  0x542b, 0x4a33, 0x4d26, 0x4d43, 0x4d5a, 0x594f, 0x7644, 0x6e5d,
+  0x6744, 0x6234, 0x5f62, 0x675b, 0x6831, 0x7c2e, 0x654d, 0x7a6b,
+  0x4f3c, 0x4f62, 0x4d76, 0x6f70, 0x743e, 0x544d, 0x7338, 0x6921,
+  0x7272, 0x736b, 0x7057, 0x4f57, 0x4f5f, 0x6840, 0x6841, 0x4f63,
+  0x6922, 0x502a, 0x7341, 0x502b, 0x5464, 0x6f3c, 0x5821, 0x595f,
+  0x7357, 0x5c3d, 0x4c65, 0x6d71, 0x7162, 0x545b, 0x6235, 0x4a66,
+  0x532e, 0x4c66, 0x7153, 0x7567, 0x4a5a, 0x7b6e, 0x6145, 0x5f69,
+  0x6e5e, 0x7742, 0x5822, 0x5d2c, 0x702f, 0x563d, 0x612b, 0x7936,
+  0x5475, 0x5049, 0x6f27, 0x626c, 0x5b6a, 0x4e4c, 0x7568, 0x7755,
+  0x534d, 0x737e, 0x5035, 0x607e, 0x5f7b, 0x665d, 0x6824, 0x4b4d,
+  0x6f28, 0x6e34, 0x5a58, 0x5139, 0x5f29, 0x7330, 0x4c44, 0x4e37,
+  0x6f29, 0x5f55, 0x6d57, 0x6e46, 0x6f3d, 0x7c56, 0x5b74, 0x6f2a,
+  0x7839, 0x7569, 0x6359, 0x6146, 0x543f, 0x5e68, 0x706a, 0x7342,
+  0x532f, 0x4a5b, 0x7c57, 0x6d58, 0x6147, 0x7458, 0x5633, 0x5d2d,
+  0x553e, 0x7143, 0x6e5f, 0x566b, 0x7459, 0x5766, 0x5a37, 0x5d7b,
+  0x5d4f, 0x5823, 0x5a59, 0x7058, 0x6f44, 0x6158, 0x7154, 0x6d72,
+  0x555b, 0x555c, 0x7344, 0x4b57, 0x6236, 0x6f71, 0x7b55, 0x5358,
+  0x5d50, 0x7059, 0x4b33, 0x555d, 0x4d27, 0x502c, 0x513a, 0x7144,
+  0x6533, 0x7b75, 0x6961, 0x7d60, 0x7c3c, 0x5a22, 0x5a23, 0x5221,
+  0x526f, 0x626d, 0x5e69, 0x4e5c, 0x7235, 0x5064, 0x5d51, 0x6148,
+  0x5b37, 0x5f63, 0x6d39, 0x7145, 0x734f, 0x572b, 0x612c, 0x636b,
+  0x6e47, 0x6149, 0x4a7a, 0x707b, 0x7a61, 0x705a, 0x4c67, 0x5a74,
+  0x4c3f, 0x4e6d, 0x5529, 0x7a62, 0x5065, 0x6b56, 0x6c5f, 0x5f7c,
+  0x7756, 0x5e6a, 0x4b34, 0x6f3e, 0x4c35, 0x4f3d, 0x6f72, 0x6237,
+  0x4c68, 0x707c, 0x5660, 0x7146, 0x6238, 0x6b2b, 0x4b35, 0x5851,
+  0x744e, 0x7377, 0x5746, 0x513b, 0x772a, 0x6d4a, 0x5753, 0x587a,
+  0x7645, 0x514c, 0x5d7c, 0x5f7d, 0x7965, 0x604a, 0x727d, 0x5330,
+  0x7473, 0x5a49, 0x665e, 0x783a, 0x6850, 0x587b, 0x6a55, 0x5623,
+  0x7646, 0x725b, 0x647c, 0x6832, 0x5a5a, 0x725c, 0x7b56, 0x6932,
+  0x6e2d, 0x7a63, 0x5c6e, 0x756a, 0x6660, 0x707d, 0x572c, 0x7545,
+  0x6e60, 0x5b65, 0x5d5e, 0x5970, 0x6923, 0x7179, 0x7244, 0x604b,
+  0x6924, 0x6239, 0x6331, 0x7c6b, 0x4d28, 0x4c36, 0x705b, 0x663a,
+  0x4d29, 0x7343, 0x6159, 0x6f2b, 0x6745, 0x6069, 0x7345, 0x5440,
+  0x553f, 0x5d2e, 0x797c, 0x4c40, 0x6522, 0x4e38, 0x5852, 0x7956,
+  0x712a, 0x4e51, 0x7647, 0x5b6b, 0x5f7e, 0x5861, 0x7773, 0x5767,
+  0x547e, 0x513c, 0x654f, 0x4b36, 0x5a38, 0x4d44, 0x563e, 0x623a,
+  0x4f58, 0x604c, 0x6b79, 0x7d7d, 0x5768, 0x4b58, 0x6962, 0x683a,
+  0x6347, 0x6c4d, 0x6c4e, 0x563f, 0x6327, 0x5f56, 0x7d68, 0x6e61,
+  0x7628, 0x5d7d, 0x783b, 0x6851, 0x7957, 0x4e6e, 0x6c4f, 0x6925,
+  0x5655, 0x4d45, 0x6d3a, 0x513d, 0x4f3e, 0x6c3b, 0x5231, 0x4c69,
+  0x5944, 0x697c, 0x513e, 0x6c3c, 0x652d, 0x7730, 0x4c6a, 0x5344,
+  0x5640, 0x567d, 0x6121, 0x5e3d, 0x7629, 0x5a24, 0x5624, 0x7546,
+  0x6122, 0x6946, 0x7245, 0x7469, 0x566c, 0x6b53, 0x6c3d, 0x625c,
+  0x5e6b, 0x705c, 0x6b3f, 0x574e, 0x513f, 0x752b, 0x797d, 0x4a5c,
+  0x4d46, 0x7236, 0x5d7e, 0x4c37, 0x5b38, 0x5069, 0x4e5d, 0x6b40,
+  0x7d22, 0x784b, 0x6a56, 0x7130, 0x5b4e, 0x7743, 0x5b4f, 0x4b24,
+  0x7860, 0x7b57, 0x6b4a, 0x6021, 0x4e4d, 0x545c, 0x7d58, 0x5276,
+  0x7237, 0x7a76, 0x762a, 0x7a77, 0x5866, 0x7431, 0x6852, 0x4a45,
+  0x4c6b, 0x626e, 0x623b, 0x772d, 0x7861, 0x736c, 0x5e21, 0x647d,
+  0x636c, 0x5d2f, 0x5d30, 0x4b37, 0x6853, 0x6123, 0x5260, 0x707e,
+  0x6926, 0x4b72, 0x6d73, 0x5c59, 0x604d, 0x775a, 0x5b39, 0x4c2e,
+  0x5a5b, 0x4d47, 0x5d31, 0x582f, 0x6323, 0x4e6f, 0x7273, 0x7833,
+  0x604e, 0x757d, 0x6b6c, 0x5345, 0x7c6c, 0x525b, 0x546b, 0x5e22,
+  0x6566, 0x7030, 0x5544, 0x6d74, 0x636d, 0x6842, 0x6d75, 0x577c,
+  0x6d3b, 0x762b, 0x7238, 0x7648, 0x5366, 0x725d, 0x4f3f, 0x6b2c,
+  0x4f40, 0x6628, 0x7d69, 0x4f41, 0x605f, 0x5e6c, 0x6022, 0x743f,
+  0x626f, 0x5971, 0x7147, 0x4b38, 0x797e, 0x5b3a, 0x5a75, 0x766c,
+  0x5a5c, 0x7a64, 0x604f, 0x5d32, 0x6629, 0x6f73, 0x736d, 0x6b7a,
+  0x7966, 0x4a5d, 0x555e, 0x4a5e, 0x5f64, 0x667d, 0x752c, 0x6475,
+  0x6963, 0x6d4b, 0x4f64, 0x5853, 0x5d33, 0x546c, 0x7239, 0x5f37,
+  0x4b4e, 0x7b58, 0x5059, 0x5d52, 0x7774, 0x675c, 0x6425, 0x7c23,
+  0x5b3b, 0x723a, 0x697d, 0x504a, 0x7556, 0x5945, 0x6434, 0x6d27,
+  0x6a3d, 0x667e, 0x7744, 0x752d, 0x5960, 0x4a34, 0x7862, 0x4f42,
+  0x6c3e, 0x6534, 0x4d48, 0x6e48, 0x6748, 0x4d49, 0x7937, 0x7168,
+  0x5972, 0x5b75, 0x4a35, 0x5946, 0x5849, 0x592b, 0x6d3c, 0x5854,
+  0x5c5a, 0x623c, 0x7c6d, 0x6c60, 0x527e, 0x6947, 0x662a, 0x6270,
+  0x7a3b, 0x752e, 0x7b2a, 0x6c7b, 0x6c3f, 0x7c58, 0x5465, 0x7943,
+  0x6e62, 0x5769, 0x6d76, 0x5e6d, 0x4c6c, 0x636e, 0x6854, 0x7a78,
+  0x5d34, 0x6435, 0x5830, 0x5855, 0x746a, 0x4e39, 0x5661, 0x4f52,
+  0x5036, 0x4e22, 0x736e, 0x7378, 0x5c4c, 0x504b, 0x7c24, 0x4d4a,
+  0x5754, 0x5e23, 0x6460, 0x6e49, 0x625d, 0x757e, 0x542c, 0x5551,
+  0x5870, 0x7843, 0x6a57, 0x7557, 0x583f, 0x7d40, 0x6b2d, 0x552a,
+  0x6728, 0x6e4a, 0x4a67, 0x7863, 0x545d, 0x6a58, 0x7b59, 0x6d77,
+  0x6535, 0x502d, 0x7171, 0x623d, 0x6348, 0x5955, 0x5f2a, 0x5b3c,
+  0x7864, 0x717a, 0x6536, 0x736f, 0x7b5a, 0x6160, 0x592c, 0x756b,
+  0x6036, 0x6948, 0x4b4f, 0x6349, 0x5e6e, 0x623e, 0x5c6f, 0x5625,
+  0x6271, 0x567e, 0x5921, 0x5840, 0x5c5b, 0x6d3d, 0x5f38, 0x6a25,
+  0x572d, 0x7379, 0x6d78, 0x7547, 0x614a, 0x6b63, 0x725e, 0x784c,
+  0x6a59, 0x5346, 0x5b66, 0x752f, 0x4e70, 0x697e, 0x7b36, 0x6272,
+  0x4f72, 0x7739, 0x5973, 0x614b, 0x5a5d, 0x5a39, 0x6b7b, 0x4b39,
+  0x6d79, 0x6060, 0x7440, 0x7d3c, 0x5f31, 0x636f, 0x6023, 0x7d39,
+  0x7031, 0x4d4b, 0x6d3e, 0x5540, 0x6370, 0x6d7a, 0x6964, 0x556d,
+  0x675d, 0x5476, 0x6537, 0x5b67, 0x623f, 0x6e4b, 0x5774, 0x705d,
+  0x4e2b, 0x675e, 0x5656, 0x614c, 0x6833, 0x656e, 0x5c22, 0x6050,
+  0x5535, 0x5521, 0x7b5b, 0x794b, 0x4b73, 0x7425, 0x7a48, 0x5657,
+  0x6965, 0x7b5c, 0x7d50, 0x7b76, 0x5a25, 0x5b3d, 0x6c62, 0x4d77,
+  0x705e, 0x7649, 0x5e6f, 0x5331, 0x7c6e, 0x6843, 0x7148, 0x4e71,
+  0x796d, 0x7274, 0x6436, 0x7539, 0x5c70, 0x6371, 0x6825, 0x723b,
+  0x5e24, 0x5a4c, 0x4a69, 0x635a, 0x7c59, 0x6a5a, 0x7944, 0x6324,
+  0x7b5d, 0x6f4a, 0x6844, 0x554c, 0x6b57, 0x592d, 0x7b2b, 0x5359,
+  0x5522, 0x765e, 0x5a76, 0x6051, 0x6928, 0x7579, 0x7a2f, 0x6b7c,
+  0x606a, 0x6332, 0x5545, 0x7163, 0x556e, 0x4d4c, 0x6d59, 0x5841,
+  0x7a6c, 0x716b, 0x7a3c, 0x6662, 0x7a65, 0x627a, 0x4a36, 0x6437,
+  0x6a5b, 0x757a, 0x7b2c, 0x4f43, 0x6b7d, 0x787a, 0x5f39, 0x6171,
+  0x5224, 0x757b, 0x505a, 0x505b, 0x6a3e, 0x5931, 0x4a37, 0x5367,
+  0x7865, 0x5332, 0x6240, 0x725f, 0x4d65, 0x792c, 0x4d4d, 0x6e2e,
+  0x562e, 0x576a, 0x6760, 0x6b2e, 0x4f59, 0x5c4d, 0x6d7b, 0x5e70,
+  0x576b, 0x5e25, 0x5f57, 0x5b50, 0x5b51, 0x5523, 0x7032, 0x5c5c,
+  0x4a68, 0x7866, 0x5c4e, 0x6a5c, 0x5b52, 0x6933, 0x775b, 0x6328,
+  0x572e, 0x6061, 0x4b3a, 0x6551, 0x505c, 0x5541, 0x584a, 0x6329,
+  0x6024, 0x6929, 0x5347, 0x5c5d, 0x782e, 0x4c38, 0x502e, 0x5872,
+  0x634a, 0x4c2f, 0x542d, 0x7651, 0x504c, 0x4a46, 0x5542, 0x4e3a,
+  0x4a47, 0x7a30, 0x5f58, 0x753a, 0x656b, 0x6f74, 0x5d35, 0x4d2a,
+  0x6372, 0x7b77, 0x7750, 0x7d3a, 0x7d61, 0x767e, 0x5140, 0x6845,
+  0x6438, 0x6168, 0x4c41, 0x526d, 0x5b3e, 0x6062, 0x7a49, 0x614d,
+  0x4a38, 0x7260, 0x7149, 0x5e71, 0x705f, 0x7844, 0x6e4c, 0x5e72,
+  0x6749, 0x6273, 0x6761, 0x634b, 0x634c, 0x4f78, 0x6f2c, 0x7d7e,
+  0x7c25, 0x7a31, 0x5f59, 0x6052, 0x745a, 0x714a, 0x4e23, 0x723c,
+  0x6c63, 0x6025, 0x772b, 0x6b2f, 0x655e, 0x6124, 0x4d2b, 0x5974,
+  0x6826, 0x4d4e, 0x6169, 0x7c6f, 0x6063, 0x6241, 0x4e24, 0x5e26,
+  0x6b7e, 0x6b5d, 0x7060, 0x745b, 0x6274, 0x5348, 0x746b, 0x6e35,
+  0x7558, 0x555f, 0x5665, 0x6b30, 0x7463, 0x634d, 0x7474, 0x7a32,
+  0x6f75, 0x4a5f, 0x6b31, 0x6d3f, 0x7d49, 0x6426, 0x7924, 0x7033,
+  0x656c, 0x5167, 0x5947, 0x6457, 0x6a5d, 0x5477, 0x5a3a, 0x5a4d,
+  0x794c, 0x615a, 0x5b3f, 0x4c45, 0x6c50, 0x4b3b, 0x5e73, 0x692a,
+  0x5948, 0x6e63, 0x573d, 0x4f44, 0x504d, 0x7c26, 0x717b, 0x7d52,
+  0x5141, 0x635b, 0x5349, 0x5c4f, 0x4c6d, 0x5e27, 0x663b, 0x6c21,
+  0x4c39, 0x7b5e, 0x6762, 0x5441, 0x5c28, 0x6242, 0x7358, 0x6553,
+  0x7359, 0x7346, 0x4d5b, 0x4d2c, 0x7c43, 0x5467, 0x5142, 0x7925,
+  0x6855, 0x634e, 0x544a, 0x5f5a, 0x7b5f, 0x6763, 0x787b, 0x634f,
+  0x7530, 0x5867, 0x5949, 0x782f, 0x6f76, 0x5d36, 0x6e2f, 0x4d78,
+  0x5e38, 0x7c27, 0x777c, 0x7731, 0x4e3b, 0x7421, 0x6e4d, 0x612e,
+  0x6c43, 0x4f7e, 0x783f, 0x5862, 0x5368, 0x5e28, 0x7464, 0x6c42,
+  0x5975, 0x7945, 0x5d53, 0x5671, 0x6c7c, 0x7c70, 0x6d40, 0x4a39,
+  0x6e64, 0x7261, 0x5e39, 0x5672, 0x5e74, 0x5f5b, 0x5b53, 0x7a67,
+  0x5863, 0x7441, 0x5d37, 0x7275, 0x542e, 0x5673, 0x5d38, 0x4f45,
+  0x5f5f, 0x723e, 0x7621, 0x6b4b, 0x717c, 0x7347, 0x606b, 0x6d7c,
+  0x615b, 0x6e65, 0x5e75, 0x7a53, 0x714b, 0x502f, 0x5d39, 0x5143,
+  0x7531, 0x6a46, 0x7061, 0x762c, 0x7559, 0x706b, 0x5d3a, 0x723f,
+  0x7745, 0x5b22, 0x7276, 0x4a3a, 0x7775, 0x4b65, 0x6e66, 0x6053,
+  0x4e25, 0x5658, 0x542f, 0x6949, 0x534e, 0x7442, 0x4b66, 0x7121,
+  0x6b32, 0x7122, 0x6b33, 0x7034, 0x4b74, 0x5430, 0x7332, 0x7b37,
+  0x756c, 0x6e67, 0x7432, 0x756d, 0x4f73, 0x7062, 0x6e4e, 0x714c,
+  0x6538, 0x5775, 0x6373, 0x4f65, 0x4f46, 0x7333, 0x6458, 0x4f79,
+  0x4f5a, 0x7a4d, 0x6663, 0x7262, 0x756e, 0x4a3b, 0x635c, 0x4e72,
+  0x5659, 0x6e30, 0x7465, 0x5842, 0x5c50, 0x4c6e, 0x5560, 0x764a,
+  0x7d4a, 0x5856, 0x744f, 0x5626, 0x5c3e, 0x5b54, 0x5747, 0x727e,
+  0x714d, 0x6243, 0x5c5e, 0x5c5f, 0x6f2d, 0x662b, 0x795d, 0x6a3f,
+  0x6f2e, 0x7450, 0x4e73, 0x662c, 0x4e5e, 0x5579, 0x6374, 0x4d50,
+  0x5538, 0x777d, 0x5c29, 0x5e76, 0x5c2a, 0x7263, 0x6934, 0x525c,
+  0x6966, 0x6376, 0x674a, 0x504e, 0x5a77, 0x4a3c, 0x6e68, 0x5a5e,
+  0x7277, 0x627b, 0x4c26, 0x5a3b, 0x6e69, 0x755a, 0x775c, 0x616a,
+  0x4e41, 0x5431, 0x7d31, 0x663d, 0x7b2d, 0x7867, 0x614e, 0x7762,
+  0x756f, 0x4f47, 0x5432, 0x4c6f, 0x5468, 0x6e4f, 0x7757, 0x6026,
+  0x5641, 0x615c, 0x7063, 0x7164, 0x5c71, 0x5627, 0x7475, 0x714e,
+  0x7264, 0x5030, 0x6c6f, 0x793a, 0x6b35, 0x546d, 0x6244, 0x6967,
+  0x6b34, 0x6a21, 0x783c, 0x4e26, 0x7946, 0x7c5a, 0x5433, 0x5339,
+  0x6a5e, 0x692b, 0x6161, 0x534f, 0x7476, 0x6a40, 0x614f, 0x4c3a,
+  0x6e6a, 0x7064, 0x7334, 0x546e, 0x7240, 0x7165, 0x7443, 0x6054,
+  0x6b36, 0x5721, 0x4b68, 0x792d, 0x692d, 0x5864, 0x7a33, 0x6245,
+  0x7c3d, 0x6c44, 0x5831, 0x5c2b, 0x5524, 0x6b69, 0x683b, 0x5857,
+  0x7b2e, 0x5161, 0x5b40, 0x753e, 0x5e77, 0x4a7b, 0x7746, 0x4f48,
+  0x6150, 0x6e50, 0x6974, 0x4e74, 0x554d, 0x4f5b, 0x5d3b, 0x4e2c,
+  0x6968, 0x5434, 0x6447, 0x755b, 0x7a41, 0x5e29, 0x5478, 0x6f77,
+  0x5333, 0x6b37, 0x6f78, 0x755c, 0x6d4c, 0x5b55, 0x714f, 0x7150,
+  0x7532, 0x592e, 0x552c, 0x6246, 0x7d23, 0x7b65, 0x5f2b, 0x6275,
+  0x762d, 0x7533, 0x7035, 0x6125, 0x755d, 0x6c22, 0x6d7d, 0x7534,
+  0x7b38, 0x5b23, 0x564a, 0x4b59, 0x6554, 0x737a, 0x6b38, 0x6037,
+  0x576c, 0x716c, 0x652f, 0x5561, 0x576d, 0x5151, 0x6172, 0x6f79,
+  0x5d3c, 0x765c, 0x7065, 0x7444, 0x6969, 0x737b, 0x546f, 0x4c22,
+  0x777e, 0x5f3c, 0x6b4d, 0x5037, 0x5642, 0x682d, 0x6f2f, 0x4b25,
+  0x4b69, 0x7a68, 0x4c46, 0x6667, 0x6a47, 0x5b24, 0x4f49, 0x627c,
+  0x6f7a, 0x6b5e, 0x7548, 0x545e, 0x6055, 0x6f30, 0x6247, 0x592f,
+  0x7967, 0x6765, 0x4f4a, 0x6151, 0x6248, 0x6f7b, 0x7a79, 0x5c72,
+  0x6027, 0x7868, 0x4b6a, 0x4b3c, 0x5662, 0x755e, 0x755f, 0x6e36,
+  0x6276, 0x534a, 0x6f7c, 0x5144, 0x6f31, 0x5145, 0x505e, 0x5961,
+  0x6038, 0x4d51, 0x7339, 0x674c, 0x5628, 0x4e27, 0x5435, 0x6448,
+  0x5334, 0x6b39, 0x4b75, 0x765d, 0x7123, 0x4c47, 0x694a, 0x6170,
+  0x7560, 0x7b2f, 0x4b51, 0x7b60, 0x7265, 0x6c70, 0x706c, 0x6e6b,
+  0x694b, 0x4c70, 0x572f, 0x7321, 0x7c75, 0x7124, 0x6056, 0x6f32,
+  0x7451, 0x7721, 0x7151, 0x4a7c, 0x4a7d, 0x4e4e, 0x7348, 0x733a,
+  0x6d7e, 0x5a26, 0x606c, 0x784d, 0x4b52, 0x6b4e, 0x7958, 0x7959,
+  0x4a60, 0x5a4a, 0x4b26, 0x4a48, 0x796e, 0x5b6c, 0x5031, 0x556f,
+  0x6673, 0x6722, 0x6459, 0x6461, 0x7c44, 0x796f, 0x4f74, 0x7766,
+  0x4e3c, 0x7445, 0x5c23, 0x5d3d, 0x7446, 0x7821, 0x6856, 0x5b41,
+  0x7066, 0x6439, 0x766d, 0x792e, 0x5d3e, 0x5730, 0x5868, 0x4b3d,
+  0x795a, 0x784e, 0x7970, 0x606d, 0x6333, 0x7433, 0x6a42, 0x7266,
+  0x7036, 0x5b56, 0x6b64, 0x7267, 0x5755, 0x5436, 0x7968, 0x5741,
+  0x6555, 0x696a, 0x574c, 0x5369, 0x6249, 0x7c5b, 0x4d2d, 0x4c30,
+  0x6a22, 0x6476, 0x5040, 0x7037, 0x6e21, 0x5776, 0x624a, 0x624b,
+  0x7a4f, 0x6b5f, 0x564b, 0x7434, 0x6d4d, 0x6452, 0x6a29, 0x643a,
+  0x7322, 0x4d52, 0x764b, 0x7166, 0x6d41, 0x683c, 0x6e51, 0x7067,
+  0x624c, 0x642a, 0x7561, 0x6d5a, 0x576e, 0x5171, 0x696b, 0x696c,
+  0x6064, 0x5a27, 0x5d54, 0x6a23, 0x5643, 0x5674, 0x5a5f, 0x6f33,
+  0x624d, 0x6f7d, 0x7268, 0x6f45, 0x6767, 0x577d, 0x674e, 0x5f5c,
+  0x7947, 0x5976, 0x5f2c, 0x565a, 0x5c24, 0x7038, 0x557a, 0x6477,
+  0x5644, 0x746c, 0x6f7e, 0x7021, 0x5e2a, 0x5a3c, 0x587c, 0x7a54,
+  0x6c65, 0x7c28, 0x6c66, 0x584b, 0x7b39, 0x6453, 0x4d79, 0x4f53,
+  0x4a6a, 0x4f54, 0x783d, 0x7447, 0x6a5f, 0x795b, 0x5437, 0x6b65,
+  0x6152, 0x6a24, 0x7a42, 0x7b61, 0x7a6d, 0x7022, 0x4c71, 0x7a23,
+  0x6277, 0x624e, 0x6975, 0x616b, 0x6768, 0x6857, 0x5a78, 0x544b,
+  0x7776, 0x5645, 0x5469, 0x7a7a, 0x4c72, 0x775d, 0x5e3a, 0x4e28,
+  0x7039, 0x647e, 0x6449, 0x6454, 0x6a43, 0x6f34, 0x573e, 0x7b62,
+  0x4d53, 0x6f35, 0x7a69, 0x7926, 0x5f3d, 0x7747, 0x787d, 0x787c,
+  0x5e2b, 0x5b68, 0x635d, 0x6162, 0x5146, 0x7650, 0x6b66, 0x5a79,
+  0x6c47, 0x5e78, 0x7869, 0x635e, 0x4e75, 0x7a43, 0x6557, 0x6c48,
+  0x7349, 0x643b, 0x662e, 0x6f36, 0x5c3f, 0x4e3d, 0x5843, 0x504f,
+  0x4f7a, 0x734a, 0x6057, 0x5147, 0x692e, 0x683d, 0x7a44, 0x624f,
+  0x7a45, 0x7938, 0x5c60, 0x7b30, 0x5829, 0x655f, 0x7927, 0x766e,
+  0x764c, 0x6278, 0x6c71, 0x5a60, 0x7152, 0x524c, 0x4f4b, 0x4a3d,
+  0x5d3f, 0x766f, 0x5e79, 0x7a34, 0x552d, 0x7167, 0x5e3e, 0x5c40,
+  0x5148, 0x5149, 0x783e, 0x4b76, 0x5479, 0x7562, 0x6153, 0x5869,
+  0x787e, 0x4f4c, 0x7d24, 0x4e76, 0x7a50, 0x4c73, 0x663e, 0x762e,
+  0x5570, 0x514a, 0x7c3e, 0x5571, 0x4d69, 0x7a35, 0x6250, 0x7477,
+  0x4d54, 0x6723, 0x5b25, 0x6251, 0x5722, 0x7763, 0x6a26, 0x5021,
+  0x4e5a, 0x7b6b, 0x5b26, 0x5b5e, 0x5865, 0x6a60, 0x582a, 0x6560,
+  0x565b, 0x6f46, 0x786a, 0x6455, 0x4e77, 0x6058, 0x576f, 0x746d,
+  0x4d66, 0x4c74, 0x7563, 0x644a, 0x5c61, 0x7948, 0x7c3f, 0x6827,
+  0x5844, 0x4b3e, 0x5c2e, 0x5777, 0x7068, 0x5d40, 0x4f4d, 0x5c73,
+  0x5930, 0x6669, 0x643c, 0x6a44, 0x646c, 0x6465, 0x7b78, 0x4c3b,
+  0x643d, 0x4d5c, 0x5977, 0x5d5f, 0x6d4e, 0x5950, 0x6523, 0x794d,
+  0x4d2e, 0x4f4e, 0x762f, 0x7d53, 0x6b6d, 0x565c, 0x6524, 0x5536,
+  0x565d, 0x7969, 0x6724, 0x5663, 0x514b, 0x5664, 0x5572, 0x5e7a,
+  0x5778, 0x586a, 0x4f55, 0x587d, 0x582b, 0x7d4b, 0x7c5c, 0x6028,
+  0x5573, 0x7d59, 0x4c23, 0x5979, 0x536a, 0x7575, 0x6f47, 0x535a,
+  0x5a3d, 0x6828, 0x5c2f, 0x7023, 0x4d55, 0x6029, 0x5e2c, 0x703a,
+  0x6e31, 0x6e32, 0x764d, 0x6e52, 0x5646, 0x6065, 0x733b, 0x6561,
+  0x644b, 0x5723, 0x5b42, 0x4a7e, 0x4f4f, 0x3021, 0x3022, 0x3023,
+  0x3024, 0x3025, 0x3026, 0x3027, 0x3028, 0x3029, 0x302a, 0x302b,
+  0x302c, 0x302d, 0x302e, 0x302f, 0x3030, 0x3031, 0x3032, 0x3033,
+  0x3034, 0x3035, 0x3036, 0x3037, 0x3038, 0x3039, 0x303a, 0x303b,
+  0x303c, 0x303d, 0x303e, 0x303f, 0x3040, 0x3041, 0x3042, 0x3043,
+  0x3044, 0x3045, 0x3046, 0x3047, 0x3048, 0x3049, 0x304a, 0x304b,
+  0x304c, 0x304d, 0x304e, 0x304f, 0x3050, 0x3051, 0x3052, 0x3053,
+  0x3054, 0x3055, 0x3056, 0x3057, 0x3058, 0x3059, 0x305a, 0x305b,
+  0x305c, 0x305d, 0x305e, 0x305f, 0x3060, 0x3061, 0x3062, 0x3063,
+  0x3064, 0x3065, 0x3066, 0x3067, 0x3068, 0x3069, 0x306a, 0x306b,
+  0x306c, 0x306d, 0x306e, 0x306f, 0x3070, 0x3071, 0x3072, 0x3073,
+  0x3074, 0x3075, 0x3076, 0x3077, 0x3078, 0x3079, 0x307a, 0x307b,
+  0x307c, 0x307d, 0x307e, 0x3121, 0x3122, 0x3123, 0x3124, 0x3125,
+  0x3126, 0x3127, 0x3128, 0x3129, 0x312a, 0x312b, 0x312c, 0x312d,
+  0x312e, 0x312f, 0x3130, 0x3131, 0x3132, 0x3133, 0x3134, 0x3135,
+  0x3136, 0x3137, 0x3138, 0x3139, 0x313a, 0x313b, 0x313c, 0x313d,
+  0x313e, 0x313f, 0x3140, 0x3141, 0x3142, 0x3143, 0x3144, 0x3145,
+  0x3146, 0x3147, 0x3148, 0x3149, 0x314a, 0x314b, 0x314c, 0x314d,
+  0x314e, 0x314f, 0x3150, 0x3151, 0x3152, 0x3153, 0x3154, 0x3155,
+  0x3156, 0x3157, 0x3158, 0x3159, 0x315a, 0x315b, 0x315c, 0x315d,
+  0x315e, 0x315f, 0x3160, 0x3161, 0x3162, 0x3163, 0x3164, 0x3165,
+  0x3166, 0x3167, 0x3168, 0x3169, 0x316a, 0x316b, 0x316c, 0x316d,
+  0x316e, 0x316f, 0x3170, 0x3171, 0x3172, 0x3173, 0x3174, 0x3175,
+  0x3176, 0x3177, 0x3178, 0x3179, 0x317a, 0x317b, 0x317c, 0x317d,
+  0x317e, 0x3221, 0x3222, 0x3223, 0x3224, 0x3225, 0x3226, 0x3227,
+  0x3228, 0x3229, 0x322a, 0x322b, 0x322c, 0x322d, 0x322e, 0x322f,
+  0x3230, 0x3231, 0x3232, 0x3233, 0x3234, 0x3235, 0x3236, 0x3237,
+  0x3238, 0x3239, 0x323a, 0x323b, 0x323c, 0x323d, 0x323e, 0x323f,
+  0x3240, 0x3241, 0x3242, 0x3243, 0x3244, 0x3245, 0x3246, 0x3247,
+  0x3248, 0x3249, 0x324a, 0x324b, 0x324c, 0x324d, 0x324e, 0x324f,
+  0x3250, 0x3251, 0x3252, 0x3253, 0x3254, 0x3255, 0x3256, 0x3257,
+  0x3258, 0x3259, 0x325a, 0x325b, 0x325c, 0x325d, 0x325e, 0x325f,
+  0x3260, 0x3261, 0x3262, 0x3263, 0x3264, 0x3265, 0x3266, 0x3267,
+  0x3268, 0x3269, 0x326a, 0x326b, 0x326c, 0x326d, 0x326e, 0x326f,
+  0x3270, 0x3271, 0x3272, 0x3273, 0x3274, 0x3275, 0x3276, 0x3277,
+  0x3278, 0x3279, 0x327a, 0x327b, 0x327c, 0x327d, 0x327e, 0x3321,
+  0x3322, 0x3323, 0x3324, 0x3325, 0x3326, 0x3327, 0x3328, 0x3329,
+  0x332a, 0x332b, 0x332c, 0x332d, 0x332e, 0x332f, 0x3330, 0x3331,
+  0x3332, 0x3333, 0x3334, 0x3335, 0x3336, 0x3337, 0x3338, 0x3339,
+  0x333a, 0x333b, 0x333c, 0x333d, 0x333e, 0x333f, 0x3340, 0x3341,
+  0x3342, 0x3343, 0x3344, 0x3345, 0x3346, 0x3347, 0x3348, 0x3349,
+  0x334a, 0x334b, 0x334c, 0x334d, 0x334e, 0x334f, 0x3350, 0x3351,
+  0x3352, 0x3353, 0x3354, 0x3355, 0x3356, 0x3357, 0x3358, 0x3359,
+  0x335a, 0x335b, 0x335c, 0x335d, 0x335e, 0x335f, 0x3360, 0x3361,
+  0x3362, 0x3363, 0x3364, 0x3365, 0x3366, 0x3367, 0x3368, 0x3369,
+  0x336a, 0x336b, 0x336c, 0x336d, 0x336e, 0x336f, 0x3370, 0x3371,
+  0x3372, 0x3373, 0x3374, 0x3375, 0x3376, 0x3377, 0x3378, 0x3379,
+  0x337a, 0x337b, 0x337c, 0x337d, 0x337e, 0x3421, 0x3422, 0x3423,
+  0x3424, 0x3425, 0x3426, 0x3427, 0x3428, 0x3429, 0x342a, 0x342b,
+  0x342c, 0x342d, 0x342e, 0x342f, 0x3430, 0x3431, 0x3432, 0x3433,
+  0x3434, 0x3435, 0x3436, 0x3437, 0x3438, 0x3439, 0x343a, 0x343b,
+  0x343c, 0x343d, 0x343e, 0x343f, 0x3440, 0x3441, 0x3442, 0x3443,
+  0x3444, 0x3445, 0x3446, 0x3447, 0x3448, 0x3449, 0x344a, 0x344b,
+  0x344c, 0x344d, 0x344e, 0x344f, 0x3450, 0x3451, 0x3452, 0x3453,
+  0x3454, 0x3455, 0x3456, 0x3457, 0x3458, 0x3459, 0x345a, 0x345b,
+  0x345c, 0x345d, 0x345e, 0x345f, 0x3460, 0x3461, 0x3462, 0x3463,
+  0x3464, 0x3465, 0x3466, 0x3467, 0x3468, 0x3469, 0x346a, 0x346b,
+  0x346c, 0x346d, 0x346e, 0x346f, 0x3470, 0x3471, 0x3472, 0x3473,
+  0x3474, 0x3475, 0x3476, 0x3477, 0x3478, 0x3479, 0x347a, 0x347b,
+  0x347c, 0x347d, 0x347e, 0x3521, 0x3522, 0x3523, 0x3524, 0x3525,
+  0x3526, 0x3527, 0x3528, 0x3529, 0x352a, 0x352b, 0x352c, 0x352d,
+  0x352e, 0x352f, 0x3530, 0x3531, 0x3532, 0x3533, 0x3534, 0x3535,
+  0x3536, 0x3537, 0x3538, 0x3539, 0x353a, 0x353b, 0x353c, 0x353d,
+  0x353e, 0x353f, 0x3540, 0x3541, 0x3542, 0x3543, 0x3544, 0x3545,
+  0x3546, 0x3547, 0x3548, 0x3549, 0x354a, 0x354b, 0x354c, 0x354d,
+  0x354e, 0x354f, 0x3550, 0x3551, 0x3552, 0x3553, 0x3554, 0x3555,
+  0x3556, 0x3557, 0x3558, 0x3559, 0x355a, 0x355b, 0x355c, 0x355d,
+  0x355e, 0x355f, 0x3560, 0x3561, 0x3562, 0x3563, 0x3564, 0x3565,
+  0x3566, 0x3567, 0x3568, 0x3569, 0x356a, 0x356b, 0x356c, 0x356d,
+  0x356e, 0x356f, 0x3570, 0x3571, 0x3572, 0x3573, 0x3574, 0x3575,
+  0x3576, 0x3577, 0x3578, 0x3579, 0x357a, 0x357b, 0x357c, 0x357d,
+  0x357e, 0x3621, 0x3622, 0x3623, 0x3624, 0x3625, 0x3626, 0x3627,
+  0x3628, 0x3629, 0x362a, 0x362b, 0x362c, 0x362d, 0x362e, 0x362f,
+  0x3630, 0x3631, 0x3632, 0x3633, 0x3634, 0x3635, 0x3636, 0x3637,
+  0x3638, 0x3639, 0x363a, 0x363b, 0x363c, 0x363d, 0x363e, 0x363f,
+  0x3640, 0x3641, 0x3642, 0x3643, 0x3644, 0x3645, 0x3646, 0x3647,
+  0x3648, 0x3649, 0x364a, 0x364b, 0x364c, 0x364d, 0x364e, 0x364f,
+  0x3650, 0x3651, 0x3652, 0x3653, 0x3654, 0x3655, 0x3656, 0x3657,
+  0x3658, 0x3659, 0x365a, 0x365b, 0x365c, 0x365d, 0x365e, 0x365f,
+  0x3660, 0x3661, 0x3662, 0x3663, 0x3664, 0x3665, 0x3666, 0x3667,
+  0x3668, 0x3669, 0x366a, 0x366b, 0x366c, 0x366d, 0x366e, 0x366f,
+  0x3670, 0x3671, 0x3672, 0x3673, 0x3674, 0x3675, 0x3676, 0x3677,
+  0x3678, 0x3679, 0x367a, 0x367b, 0x367c, 0x367d, 0x367e, 0x3721,
+  0x3722, 0x3723, 0x3724, 0x3725, 0x3726, 0x3727, 0x3728, 0x3729,
+  0x372a, 0x372b, 0x372c, 0x372d, 0x372e, 0x372f, 0x3730, 0x3731,
+  0x3732, 0x3733, 0x3734, 0x3735, 0x3736, 0x3737, 0x3738, 0x3739,
+  0x373a, 0x373b, 0x373c, 0x373d, 0x373e, 0x373f, 0x3740, 0x3741,
+  0x3742, 0x3743, 0x3744, 0x3745, 0x3746, 0x3747, 0x3748, 0x3749,
+  0x374a, 0x374b, 0x374c, 0x374d, 0x374e, 0x374f, 0x3750, 0x3751,
+  0x3752, 0x3753, 0x3754, 0x3755, 0x3756, 0x3757, 0x3758, 0x3759,
+  0x375a, 0x375b, 0x375c, 0x375d, 0x375e, 0x375f, 0x3760, 0x3761,
+  0x3762, 0x3763, 0x3764, 0x3765, 0x3766, 0x3767, 0x3768, 0x3769,
+  0x376a, 0x376b, 0x376c, 0x376d, 0x376e, 0x376f, 0x3770, 0x3771,
+  0x3772, 0x3773, 0x3774, 0x3775, 0x3776, 0x3777, 0x3778, 0x3779,
+  0x377a, 0x377b, 0x377c, 0x377d, 0x377e, 0x3821, 0x3822, 0x3823,
+  0x3824, 0x3825, 0x3826, 0x3827, 0x3828, 0x3829, 0x382a, 0x382b,
+  0x382c, 0x382d, 0x382e, 0x382f, 0x3830, 0x3831, 0x3832, 0x3833,
+  0x3834, 0x3835, 0x3836, 0x3837, 0x3838, 0x3839, 0x383a, 0x383b,
+  0x383c, 0x383d, 0x383e, 0x383f, 0x3840, 0x3841, 0x3842, 0x3843,
+  0x3844, 0x3845, 0x3846, 0x3847, 0x3848, 0x3849, 0x384a, 0x384b,
+  0x384c, 0x384d, 0x384e, 0x384f, 0x3850, 0x3851, 0x3852, 0x3853,
+  0x3854, 0x3855, 0x3856, 0x3857, 0x3858, 0x3859, 0x385a, 0x385b,
+  0x385c, 0x385d, 0x385e, 0x385f, 0x3860, 0x3861, 0x3862, 0x3863,
+  0x3864, 0x3865, 0x3866, 0x3867, 0x3868, 0x3869, 0x386a, 0x386b,
+  0x386c, 0x386d, 0x386e, 0x386f, 0x3870, 0x3871, 0x3872, 0x3873,
+  0x3874, 0x3875, 0x3876, 0x3877, 0x3878, 0x3879, 0x387a, 0x387b,
+  0x387c, 0x387d, 0x387e, 0x3921, 0x3922, 0x3923, 0x3924, 0x3925,
+  0x3926, 0x3927, 0x3928, 0x3929, 0x392a, 0x392b, 0x392c, 0x392d,
+  0x392e, 0x392f, 0x3930, 0x3931, 0x3932, 0x3933, 0x3934, 0x3935,
+  0x3936, 0x3937, 0x3938, 0x3939, 0x393a, 0x393b, 0x393c, 0x393d,
+  0x393e, 0x393f, 0x3940, 0x3941, 0x3942, 0x3943, 0x3944, 0x3945,
+  0x3946, 0x3947, 0x3948, 0x3949, 0x394a, 0x394b, 0x394c, 0x394d,
+  0x394e, 0x394f, 0x3950, 0x3951, 0x3952, 0x3953, 0x3954, 0x3955,
+  0x3956, 0x3957, 0x3958, 0x3959, 0x395a, 0x395b, 0x395c, 0x395d,
+  0x395e, 0x395f, 0x3960, 0x3961, 0x3962, 0x3963, 0x3964, 0x3965,
+  0x3966, 0x3967, 0x3968, 0x3969, 0x396a, 0x396b, 0x396c, 0x396d,
+  0x396e, 0x396f, 0x3970, 0x3971, 0x3972, 0x3973, 0x3974, 0x3975,
+  0x3976, 0x3977, 0x3978, 0x3979, 0x397a, 0x397b, 0x397c, 0x397d,
+  0x397e, 0x3a21, 0x3a22, 0x3a23, 0x3a24, 0x3a25, 0x3a26, 0x3a27,
+  0x3a28, 0x3a29, 0x3a2a, 0x3a2b, 0x3a2c, 0x3a2d, 0x3a2e, 0x3a2f,
+  0x3a30, 0x3a31, 0x3a32, 0x3a33, 0x3a34, 0x3a35, 0x3a36, 0x3a37,
+  0x3a38, 0x3a39, 0x3a3a, 0x3a3b, 0x3a3c, 0x3a3d, 0x3a3e, 0x3a3f,
+  0x3a40, 0x3a41, 0x3a42, 0x3a43, 0x3a44, 0x3a45, 0x3a46, 0x3a47,
+  0x3a48, 0x3a49, 0x3a4a, 0x3a4b, 0x3a4c, 0x3a4d, 0x3a4e, 0x3a4f,
+  0x3a50, 0x3a51, 0x3a52, 0x3a53, 0x3a54, 0x3a55, 0x3a56, 0x3a57,
+  0x3a58, 0x3a59, 0x3a5a, 0x3a5b, 0x3a5c, 0x3a5d, 0x3a5e, 0x3a5f,
+  0x3a60, 0x3a61, 0x3a62, 0x3a63, 0x3a64, 0x3a65, 0x3a66, 0x3a67,
+  0x3a68, 0x3a69, 0x3a6a, 0x3a6b, 0x3a6c, 0x3a6d, 0x3a6e, 0x3a6f,
+  0x3a70, 0x3a71, 0x3a72, 0x3a73, 0x3a74, 0x3a75, 0x3a76, 0x3a77,
+  0x3a78, 0x3a79, 0x3a7a, 0x3a7b, 0x3a7c, 0x3a7d, 0x3a7e, 0x3b21,
+  0x3b22, 0x3b23, 0x3b24, 0x3b25, 0x3b26, 0x3b27, 0x3b28, 0x3b29,
+  0x3b2a, 0x3b2b, 0x3b2c, 0x3b2d, 0x3b2e, 0x3b2f, 0x3b30, 0x3b31,
+  0x3b32, 0x3b33, 0x3b34, 0x3b35, 0x3b36, 0x3b37, 0x3b38, 0x3b39,
+  0x3b3a, 0x3b3b, 0x3b3c, 0x3b3d, 0x3b3e, 0x3b3f, 0x3b40, 0x3b41,
+  0x3b42, 0x3b43, 0x3b44, 0x3b45, 0x3b46, 0x3b47, 0x3b48, 0x3b49,
+  0x3b4a, 0x3b4b, 0x3b4c, 0x3b4d, 0x3b4e, 0x3b4f, 0x3b50, 0x3b51,
+  0x3b52, 0x3b53, 0x3b54, 0x3b55, 0x3b56, 0x3b57, 0x3b58, 0x3b59,
+  0x3b5a, 0x3b5b, 0x3b5c, 0x3b5d, 0x3b5e, 0x3b5f, 0x3b60, 0x3b61,
+  0x3b62, 0x3b63, 0x3b64, 0x3b65, 0x3b66, 0x3b67, 0x3b68, 0x3b69,
+  0x3b6a, 0x3b6b, 0x3b6c, 0x3b6d, 0x3b6e, 0x3b6f, 0x3b70, 0x3b71,
+  0x3b72, 0x3b73, 0x3b74, 0x3b75, 0x3b76, 0x3b77, 0x3b78, 0x3b79,
+  0x3b7a, 0x3b7b, 0x3b7c, 0x3b7d, 0x3b7e, 0x3c21, 0x3c22, 0x3c23,
+  0x3c24, 0x3c25, 0x3c26, 0x3c27, 0x3c28, 0x3c29, 0x3c2a, 0x3c2b,
+  0x3c2c, 0x3c2d, 0x3c2e, 0x3c2f, 0x3c30, 0x3c31, 0x3c32, 0x3c33,
+  0x3c34, 0x3c35, 0x3c36, 0x3c37, 0x3c38, 0x3c39, 0x3c3a, 0x3c3b,
+  0x3c3c, 0x3c3d, 0x3c3e, 0x3c3f, 0x3c40, 0x3c41, 0x3c42, 0x3c43,
+  0x3c44, 0x3c45, 0x3c46, 0x3c47, 0x3c48, 0x3c49, 0x3c4a, 0x3c4b,
+  0x3c4c, 0x3c4d, 0x3c4e, 0x3c4f, 0x3c50, 0x3c51, 0x3c52, 0x3c53,
+  0x3c54, 0x3c55, 0x3c56, 0x3c57, 0x3c58, 0x3c59, 0x3c5a, 0x3c5b,
+  0x3c5c, 0x3c5d, 0x3c5e, 0x3c5f, 0x3c60, 0x3c61, 0x3c62, 0x3c63,
+  0x3c64, 0x3c65, 0x3c66, 0x3c67, 0x3c68, 0x3c69, 0x3c6a, 0x3c6b,
+  0x3c6c, 0x3c6d, 0x3c6e, 0x3c6f, 0x3c70, 0x3c71, 0x3c72, 0x3c73,
+  0x3c74, 0x3c75, 0x3c76, 0x3c77, 0x3c78, 0x3c79, 0x3c7a, 0x3c7b,
+  0x3c7c, 0x3c7d, 0x3c7e, 0x3d21, 0x3d22, 0x3d23, 0x3d24, 0x3d25,
+  0x3d26, 0x3d27, 0x3d28, 0x3d29, 0x3d2a, 0x3d2b, 0x3d2c, 0x3d2d,
+  0x3d2e, 0x3d2f, 0x3d30, 0x3d31, 0x3d32, 0x3d33, 0x3d34, 0x3d35,
+  0x3d36, 0x3d37, 0x3d38, 0x3d39, 0x3d3a, 0x3d3b, 0x3d3c, 0x3d3d,
+  0x3d3e, 0x3d3f, 0x3d40, 0x3d41, 0x3d42, 0x3d43, 0x3d44, 0x3d45,
+  0x3d46, 0x3d47, 0x3d48, 0x3d49, 0x3d4a, 0x3d4b, 0x3d4c, 0x3d4d,
+  0x3d4e, 0x3d4f, 0x3d50, 0x3d51, 0x3d52, 0x3d53, 0x3d54, 0x3d55,
+  0x3d56, 0x3d57, 0x3d58, 0x3d59, 0x3d5a, 0x3d5b, 0x3d5c, 0x3d5d,
+  0x3d5e, 0x3d5f, 0x3d60, 0x3d61, 0x3d62, 0x3d63, 0x3d64, 0x3d65,
+  0x3d66, 0x3d67, 0x3d68, 0x3d69, 0x3d6a, 0x3d6b, 0x3d6c, 0x3d6d,
+  0x3d6e, 0x3d6f, 0x3d70, 0x3d71, 0x3d72, 0x3d73, 0x3d74, 0x3d75,
+  0x3d76, 0x3d77, 0x3d78, 0x3d79, 0x3d7a, 0x3d7b, 0x3d7c, 0x3d7d,
+  0x3d7e, 0x3e21, 0x3e22, 0x3e23, 0x3e24, 0x3e25, 0x3e26, 0x3e27,
+  0x3e28, 0x3e29, 0x3e2a, 0x3e2b, 0x3e2c, 0x3e2d, 0x3e2e, 0x3e2f,
+  0x3e30, 0x3e31, 0x3e32, 0x3e33, 0x3e34, 0x3e35, 0x3e36, 0x3e37,
+  0x3e38, 0x3e39, 0x3e3a, 0x3e3b, 0x3e3c, 0x3e3d, 0x3e3e, 0x3e3f,
+  0x3e40, 0x3e41, 0x3e42, 0x3e43, 0x3e44, 0x3e45, 0x3e46, 0x3e47,
+  0x3e48, 0x3e49, 0x3e4a, 0x3e4b, 0x3e4c, 0x3e4d, 0x3e4e, 0x3e4f,
+  0x3e50, 0x3e51, 0x3e52, 0x3e53, 0x3e54, 0x3e55, 0x3e56, 0x3e57,
+  0x3e58, 0x3e59, 0x3e5a, 0x3e5b, 0x3e5c, 0x3e5d, 0x3e5e, 0x3e5f,
+  0x3e60, 0x3e61, 0x3e62, 0x3e63, 0x3e64, 0x3e65, 0x3e66, 0x3e67,
+  0x3e68, 0x3e69, 0x3e6a, 0x3e6b, 0x3e6c, 0x3e6d, 0x3e6e, 0x3e6f,
+  0x3e70, 0x3e71, 0x3e72, 0x3e73, 0x3e74, 0x3e75, 0x3e76, 0x3e77,
+  0x3e78, 0x3e79, 0x3e7a, 0x3e7b, 0x3e7c, 0x3e7d, 0x3e7e, 0x3f21,
+  0x3f22, 0x3f23, 0x3f24, 0x3f25, 0x3f26, 0x3f27, 0x3f28, 0x3f29,
+  0x3f2a, 0x3f2b, 0x3f2c, 0x3f2d, 0x3f2e, 0x3f2f, 0x3f30, 0x3f31,
+  0x3f32, 0x3f33, 0x3f34, 0x3f35, 0x3f36, 0x3f37, 0x3f38, 0x3f39,
+  0x3f3a, 0x3f3b, 0x3f3c, 0x3f3d, 0x3f3e, 0x3f3f, 0x3f40, 0x3f41,
+  0x3f42, 0x3f43, 0x3f44, 0x3f45, 0x3f46, 0x3f47, 0x3f48, 0x3f49,
+  0x3f4a, 0x3f4b, 0x3f4c, 0x3f4d, 0x3f4e, 0x3f4f, 0x3f50, 0x3f51,
+  0x3f52, 0x3f53, 0x3f54, 0x3f55, 0x3f56, 0x3f57, 0x3f58, 0x3f59,
+  0x3f5a, 0x3f5b, 0x3f5c, 0x3f5d, 0x3f5e, 0x3f5f, 0x3f60, 0x3f61,
+  0x3f62, 0x3f63, 0x3f64, 0x3f65, 0x3f66, 0x3f67, 0x3f68, 0x3f69,
+  0x3f6a, 0x3f6b, 0x3f6c, 0x3f6d, 0x3f6e, 0x3f6f, 0x3f70, 0x3f71,
+  0x3f72, 0x3f73, 0x3f74, 0x3f75, 0x3f76, 0x3f77, 0x3f78, 0x3f79,
+  0x3f7a, 0x3f7b, 0x3f7c, 0x3f7d, 0x3f7e, 0x4021, 0x4022, 0x4023,
+  0x4024, 0x4025, 0x4026, 0x4027, 0x4028, 0x4029, 0x402a, 0x402b,
+  0x402c, 0x402d, 0x402e, 0x402f, 0x4030, 0x4031, 0x4032, 0x4033,
+  0x4034, 0x4035, 0x4036, 0x4037, 0x4038, 0x4039, 0x403a, 0x403b,
+  0x403c, 0x403d, 0x403e, 0x403f, 0x4040, 0x4041, 0x4042, 0x4043,
+  0x4044, 0x4045, 0x4046, 0x4047, 0x4048, 0x4049, 0x404a, 0x404b,
+  0x404c, 0x404d, 0x404e, 0x404f, 0x4050, 0x4051, 0x4052, 0x4053,
+  0x4054, 0x4055, 0x4056, 0x4057, 0x4058, 0x4059, 0x405a, 0x405b,
+  0x405c, 0x405d, 0x405e, 0x405f, 0x4060, 0x4061, 0x4062, 0x4063,
+  0x4064, 0x4065, 0x4066, 0x4067, 0x4068, 0x4069, 0x406a, 0x406b,
+  0x406c, 0x406d, 0x406e, 0x406f, 0x4070, 0x4071, 0x4072, 0x4073,
+  0x4074, 0x4075, 0x4076, 0x4077, 0x4078, 0x4079, 0x407a, 0x407b,
+  0x407c, 0x407d, 0x407e, 0x4121, 0x4122, 0x4123, 0x4124, 0x4125,
+  0x4126, 0x4127, 0x4128, 0x4129, 0x412a, 0x412b, 0x412c, 0x412d,
+  0x412e, 0x412f, 0x4130, 0x4131, 0x4132, 0x4133, 0x4134, 0x4135,
+  0x4136, 0x4137, 0x4138, 0x4139, 0x413a, 0x413b, 0x413c, 0x413d,
+  0x413e, 0x413f, 0x4140, 0x4141, 0x4142, 0x4143, 0x4144, 0x4145,
+  0x4146, 0x4147, 0x4148, 0x4149, 0x414a, 0x414b, 0x414c, 0x414d,
+  0x414e, 0x414f, 0x4150, 0x4151, 0x4152, 0x4153, 0x4154, 0x4155,
+  0x4156, 0x4157, 0x4158, 0x4159, 0x415a, 0x415b, 0x415c, 0x415d,
+  0x415e, 0x415f, 0x4160, 0x4161, 0x4162, 0x4163, 0x4164, 0x4165,
+  0x4166, 0x4167, 0x4168, 0x4169, 0x416a, 0x416b, 0x416c, 0x416d,
+  0x416e, 0x416f, 0x4170, 0x4171, 0x4172, 0x4173, 0x4174, 0x4175,
+  0x4176, 0x4177, 0x4178, 0x4179, 0x417a, 0x417b, 0x417c, 0x417d,
+  0x417e, 0x4221, 0x4222, 0x4223, 0x4224, 0x4225, 0x4226, 0x4227,
+  0x4228, 0x4229, 0x422a, 0x422b, 0x422c, 0x422d, 0x422e, 0x422f,
+  0x4230, 0x4231, 0x4232, 0x4233, 0x4234, 0x4235, 0x4236, 0x4237,
+  0x4238, 0x4239, 0x423a, 0x423b, 0x423c, 0x423d, 0x423e, 0x423f,
+  0x4240, 0x4241, 0x4242, 0x4243, 0x4244, 0x4245, 0x4246, 0x4247,
+  0x4248, 0x4249, 0x424a, 0x424b, 0x424c, 0x424d, 0x424e, 0x424f,
+  0x4250, 0x4251, 0x4252, 0x4253, 0x4254, 0x4255, 0x4256, 0x4257,
+  0x4258, 0x4259, 0x425a, 0x425b, 0x425c, 0x425d, 0x425e, 0x425f,
+  0x4260, 0x4261, 0x4262, 0x4263, 0x4264, 0x4265, 0x4266, 0x4267,
+  0x4268, 0x4269, 0x426a, 0x426b, 0x426c, 0x426d, 0x426e, 0x426f,
+  0x4270, 0x4271, 0x4272, 0x4273, 0x4274, 0x4275, 0x4276, 0x4277,
+  0x4278, 0x4279, 0x427a, 0x427b, 0x427c, 0x427d, 0x427e, 0x4321,
+  0x4322, 0x4323, 0x4324, 0x4325, 0x4326, 0x4327, 0x4328, 0x4329,
+  0x432a, 0x432b, 0x432c, 0x432d, 0x432e, 0x432f, 0x4330, 0x4331,
+  0x4332, 0x4333, 0x4334, 0x4335, 0x4336, 0x4337, 0x4338, 0x4339,
+  0x433a, 0x433b, 0x433c, 0x433d, 0x433e, 0x433f, 0x4340, 0x4341,
+  0x4342, 0x4343, 0x4344, 0x4345, 0x4346, 0x4347, 0x4348, 0x4349,
+  0x434a, 0x434b, 0x434c, 0x434d, 0x434e, 0x434f, 0x4350, 0x4351,
+  0x4352, 0x4353, 0x4354, 0x4355, 0x4356, 0x4357, 0x4358, 0x4359,
+  0x435a, 0x435b, 0x435c, 0x435d, 0x435e, 0x435f, 0x4360, 0x4361,
+  0x4362, 0x4363, 0x4364, 0x4365, 0x4366, 0x4367, 0x4368, 0x4369,
+  0x436a, 0x436b, 0x436c, 0x436d, 0x436e, 0x436f, 0x4370, 0x4371,
+  0x4372, 0x4373, 0x4374, 0x4375, 0x4376, 0x4377, 0x4378, 0x4379,
+  0x437a, 0x437b, 0x437c, 0x437d, 0x437e, 0x4421, 0x4422, 0x4423,
+  0x4424, 0x4425, 0x4426, 0x4427, 0x4428, 0x4429, 0x442a, 0x442b,
+  0x442c, 0x442d, 0x442e, 0x442f, 0x4430, 0x4431, 0x4432, 0x4433,
+  0x4434, 0x4435, 0x4436, 0x4437, 0x4438, 0x4439, 0x443a, 0x443b,
+  0x443c, 0x443d, 0x443e, 0x443f, 0x4440, 0x4441, 0x4442, 0x4443,
+  0x4444, 0x4445, 0x4446, 0x4447, 0x4448, 0x4449, 0x444a, 0x444b,
+  0x444c, 0x444d, 0x444e, 0x444f, 0x4450, 0x4451, 0x4452, 0x4453,
+  0x4454, 0x4455, 0x4456, 0x4457, 0x4458, 0x4459, 0x445a, 0x445b,
+  0x445c, 0x445d, 0x445e, 0x445f, 0x4460, 0x4461, 0x4462, 0x4463,
+  0x4464, 0x4465, 0x4466, 0x4467, 0x4468, 0x4469, 0x446a, 0x446b,
+  0x446c, 0x446d, 0x446e, 0x446f, 0x4470, 0x4471, 0x4472, 0x4473,
+  0x4474, 0x4475, 0x4476, 0x4477, 0x4478, 0x4479, 0x447a, 0x447b,
+  0x447c, 0x447d, 0x447e, 0x4521, 0x4522, 0x4523, 0x4524, 0x4525,
+  0x4526, 0x4527, 0x4528, 0x4529, 0x452a, 0x452b, 0x452c, 0x452d,
+  0x452e, 0x452f, 0x4530, 0x4531, 0x4532, 0x4533, 0x4534, 0x4535,
+  0x4536, 0x4537, 0x4538, 0x4539, 0x453a, 0x453b, 0x453c, 0x453d,
+  0x453e, 0x453f, 0x4540, 0x4541, 0x4542, 0x4543, 0x4544, 0x4545,
+  0x4546, 0x4547, 0x4548, 0x4549, 0x454a, 0x454b, 0x454c, 0x454d,
+  0x454e, 0x454f, 0x4550, 0x4551, 0x4552, 0x4553, 0x4554, 0x4555,
+  0x4556, 0x4557, 0x4558, 0x4559, 0x455a, 0x455b, 0x455c, 0x455d,
+  0x455e, 0x455f, 0x4560, 0x4561, 0x4562, 0x4563, 0x4564, 0x4565,
+  0x4566, 0x4567, 0x4568, 0x4569, 0x456a, 0x456b, 0x456c, 0x456d,
+  0x456e, 0x456f, 0x4570, 0x4571, 0x4572, 0x4573, 0x4574, 0x4575,
+  0x4576, 0x4577, 0x4578, 0x4579, 0x457a, 0x457b, 0x457c, 0x457d,
+  0x457e, 0x4621, 0x4622, 0x4623, 0x4624, 0x4625, 0x4626, 0x4627,
+  0x4628, 0x4629, 0x462a, 0x462b, 0x462c, 0x462d, 0x462e, 0x462f,
+  0x4630, 0x4631, 0x4632, 0x4633, 0x4634, 0x4635, 0x4636, 0x4637,
+  0x4638, 0x4639, 0x463a, 0x463b, 0x463c, 0x463d, 0x463e, 0x463f,
+  0x4640, 0x4641, 0x4642, 0x4643, 0x4644, 0x4645, 0x4646, 0x4647,
+  0x4648, 0x4649, 0x464a, 0x464b, 0x464c, 0x464d, 0x464e, 0x464f,
+  0x4650, 0x4651, 0x4652, 0x4653, 0x4654, 0x4655, 0x4656, 0x4657,
+  0x4658, 0x4659, 0x465a, 0x465b, 0x465c, 0x465d, 0x465e, 0x465f,
+  0x4660, 0x4661, 0x4662, 0x4663, 0x4664, 0x4665, 0x4666, 0x4667,
+  0x4668, 0x4669, 0x466a, 0x466b, 0x466c, 0x466d, 0x466e, 0x466f,
+  0x4670, 0x4671, 0x4672, 0x4673, 0x4674, 0x4675, 0x4676, 0x4677,
+  0x4678, 0x4679, 0x467a, 0x467b, 0x467c, 0x467d, 0x467e, 0x4721,
+  0x4722, 0x4723, 0x4724, 0x4725, 0x4726, 0x4727, 0x4728, 0x4729,
+  0x472a, 0x472b, 0x472c, 0x472d, 0x472e, 0x472f, 0x4730, 0x4731,
+  0x4732, 0x4733, 0x4734, 0x4735, 0x4736, 0x4737, 0x4738, 0x4739,
+  0x473a, 0x473b, 0x473c, 0x473d, 0x473e, 0x473f, 0x4740, 0x4741,
+  0x4742, 0x4743, 0x4744, 0x4745, 0x4746, 0x4747, 0x4748, 0x4749,
+  0x474a, 0x474b, 0x474c, 0x474d, 0x474e, 0x474f, 0x4750, 0x4751,
+  0x4752, 0x4753, 0x4754, 0x4755, 0x4756, 0x4757, 0x4758, 0x4759,
+  0x475a, 0x475b, 0x475c, 0x475d, 0x475e, 0x475f, 0x4760, 0x4761,
+  0x4762, 0x4763, 0x4764, 0x4765, 0x4766, 0x4767, 0x4768, 0x4769,
+  0x476a, 0x476b, 0x476c, 0x476d, 0x476e, 0x476f, 0x4770, 0x4771,
+  0x4772, 0x4773, 0x4774, 0x4775, 0x4776, 0x4777, 0x4778, 0x4779,
+  0x477a, 0x477b, 0x477c, 0x477d, 0x477e, 0x4821, 0x4822, 0x4823,
+  0x4824, 0x4825, 0x4826, 0x4827, 0x4828, 0x4829, 0x482a, 0x482b,
+  0x482c, 0x482d, 0x482e, 0x482f, 0x4830, 0x4831, 0x4832, 0x4833,
+  0x4834, 0x4835, 0x4836, 0x4837, 0x4838, 0x4839, 0x483a, 0x483b,
+  0x483c, 0x483d, 0x483e, 0x483f, 0x4840, 0x4841, 0x4842, 0x4843,
+  0x4844, 0x4845, 0x4846, 0x4847, 0x4848, 0x4849, 0x484a, 0x484b,
+  0x484c, 0x484d, 0x484e, 0x484f, 0x4850, 0x4851, 0x4852, 0x4853,
+  0x4854, 0x4855, 0x4856, 0x4857, 0x4858, 0x4859, 0x485a, 0x485b,
+  0x485c, 0x485d, 0x485e, 0x485f, 0x4860, 0x4861, 0x4862, 0x4863,
+  0x4864, 0x4865, 0x4866, 0x4867, 0x4868, 0x4869, 0x486a, 0x486b,
+  0x486c, 0x486d, 0x486e, 0x486f, 0x4870, 0x4871, 0x4872, 0x4873,
+  0x4874, 0x4875, 0x4876, 0x4877, 0x4878, 0x4879, 0x487a, 0x487b,
+  0x487c, 0x487d, 0x487e, 0x4b50, 0x4b56, 0x4b67, 0x4d4f, 0x4d68,
+  0x4e2d, 0x4f7b, 0x5022, 0x5038, 0x5050, 0x505d, 0x5154, 0x5155,
+  0x5158, 0x515b, 0x515c, 0x515d, 0x515e, 0x515f, 0x5160, 0x5162,
+  0x5163, 0x5164, 0x5165, 0x5166, 0x5168, 0x5169, 0x516a, 0x516b,
+  0x516d, 0x516f, 0x5170, 0x5172, 0x5176, 0x517a, 0x517c, 0x517d,
+  0x517e, 0x5222, 0x5223, 0x5227, 0x5228, 0x5229, 0x522a, 0x522b,
+  0x522d, 0x5232, 0x523e, 0x5242, 0x5243, 0x5244, 0x5246, 0x5247,
+  0x5248, 0x5249, 0x524a, 0x524b, 0x524d, 0x524e, 0x524f, 0x5250,
+  0x5251, 0x5252, 0x5253, 0x5254, 0x5255, 0x5256, 0x5257, 0x5259,
+  0x525a, 0x525e, 0x525f, 0x5261, 0x5262, 0x5264, 0x5265, 0x5266,
+  0x5267, 0x5268, 0x5269, 0x526a, 0x526b, 0x5270, 0x5271, 0x5272,
+  0x5273, 0x5274, 0x5275, 0x5277, 0x5278, 0x5466, 0x547c, 0x5525,
+  0x552b, 0x552e, 0x5638, 0x564d, 0x574b, 0x5764, 0x5b45, 0x5b64,
+  0x5c25, 0x5d25, 0x5d55, 0x5d74, 0x5e7c, 0x5e7e, 0x5f33, 0x5f61,
+  0x5f68, 0x6071, 0x612d, 0x616d, 0x6375, 0x6421, 0x6429, 0x652e,
+  0x6531, 0x6532, 0x6539, 0x653b, 0x653c, 0x6544, 0x654e, 0x6550,
+  0x6552, 0x6556, 0x657a, 0x657b, 0x657c, 0x657e, 0x6621, 0x6624,
+  0x6627, 0x662d, 0x662f, 0x6630, 0x6631, 0x6633, 0x6637, 0x6638,
+  0x663c, 0x6644, 0x6646, 0x6647, 0x664a, 0x6652, 0x6656, 0x6659,
+  0x665c, 0x665f, 0x6661, 0x6664, 0x6665, 0x6666, 0x6668, 0x666a,
+  0x666b, 0x666c, 0x666f, 0x6671, 0x6672, 0x6675, 0x6676, 0x6677,
+  0x6679, 0x6721, 0x6726, 0x6729, 0x672a, 0x672c, 0x672d, 0x6730,
+  0x673f, 0x6741, 0x6746, 0x6747, 0x674b, 0x674d, 0x674f, 0x6750,
+  0x6753, 0x675f, 0x6764, 0x6766, 0x6777, 0x6867, 0x6868, 0x6870,
+  0x6871, 0x6877, 0x6879, 0x687b, 0x687e, 0x6927, 0x692c, 0x694c,
+  0x6977, 0x6a41, 0x6a65, 0x6a74, 0x6a77, 0x6a7c, 0x6a7e, 0x6b24,
+  0x6b27, 0x6b29, 0x6b2a, 0x6b3a, 0x6b3b, 0x6b3d, 0x6b41, 0x6b42,
+  0x6b46, 0x6b47, 0x6b4c, 0x6b4f, 0x6b50, 0x6b51, 0x6b52, 0x6b58,
+  0x6c26, 0x6c27, 0x6c2a, 0x6c2f, 0x6c30, 0x6c31, 0x6c32, 0x6c35,
+  0x6c38, 0x6c3a, 0x6c40, 0x6c41, 0x6c45, 0x6c46, 0x6c49, 0x6c4a,
+  0x6c55, 0x6c5d, 0x6c5e, 0x6c61, 0x6c64, 0x6c67, 0x6c68, 0x6c77,
+  0x6c78, 0x6c7a, 0x6d21, 0x6d22, 0x6d23, 0x6d6e, 0x6e5b, 0x723d,
+  0x727a, 0x7331, 0x7427, 0x746e, 0x7674, 0x7676, 0x7738, 0x7748,
+  0x7753, 0x785b, 0x7870, 0x7a21, 0x7a22, 0x7a66, 0x7c29, 0x2321,
+  0x2322, 0x2323, 0x2324, 0x2325, 0x2326, 0x2327, 0x2328, 0x2329,
+  0x232a, 0x232b, 0x232c, 0x232d, 0x232e, 0x232f, 0x2330, 0x2331,
+  0x2332, 0x2333, 0x2334, 0x2335, 0x2336, 0x2337, 0x2338, 0x2339,
+  0x233a, 0x233b, 0x233c, 0x233d, 0x233e, 0x233f, 0x2340, 0x2341,
+  0x2342, 0x2343, 0x2344, 0x2345, 0x2346, 0x2347, 0x2348, 0x2349,
+  0x234a, 0x234b, 0x234c, 0x234d, 0x234e, 0x234f, 0x2350, 0x2351,
+  0x2352, 0x2353, 0x2354, 0x2355, 0x2356, 0x2357, 0x2358, 0x2359,
+  0x235a, 0x235b, 0x212c, 0x235d, 0x235e, 0x235f, 0x2360, 0x2361,
+  0x2362, 0x2363, 0x2364, 0x2365, 0x2366, 0x2367, 0x2368, 0x2369,
+  0x236a, 0x236b, 0x236c, 0x236d, 0x236e, 0x236f, 0x2370, 0x2371,
+  0x2372, 0x2373, 0x2374, 0x2375, 0x2376, 0x2377, 0x2378, 0x2379,
+  0x237a, 0x237b, 0x237c, 0x237d, 0x2226, 0x214b, 0x214c, 0x217e,
+  0x237e, 0x214d, 0x235c,
+};
+
+static const Summary16 ksc5601_uni2indx_page00[70] = {
+  /* 0x0000 */
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x6592 }, {    7, 0xf7df },
+  {   21, 0x0040 }, {   22, 0xc181 }, {   27, 0x0040 }, {   28, 0x4181 },
+  /* 0x0100 */
+  {   32, 0x0000 }, {   32, 0x0002 }, {   33, 0x00c0 }, {   35, 0x810e },
+  {   40, 0x0e07 }, {   46, 0x000c }, {   48, 0x00c0 }, {   50, 0x0000 },
+  {   50, 0x0000 }, {   50, 0x0000 }, {   50, 0x0000 }, {   50, 0x0000 },
+  {   50, 0x0000 }, {   50, 0x0000 }, {   50, 0x0000 }, {   50, 0x0000 },
+  /* 0x0200 */
+  {   50, 0x0000 }, {   50, 0x0000 }, {   50, 0x0000 }, {   50, 0x0000 },
+  {   50, 0x0000 }, {   50, 0x0000 }, {   50, 0x0000 }, {   50, 0x0000 },
+  {   50, 0x0000 }, {   50, 0x0000 }, {   50, 0x0000 }, {   50, 0x0000 },
+  {   50, 0x0080 }, {   51, 0x2f01 }, {   57, 0x0000 }, {   57, 0x0000 },
+  /* 0x0300 */
+  {   57, 0x0000 }, {   57, 0x0000 }, {   57, 0x0000 }, {   57, 0x0000 },
+  {   57, 0x0000 }, {   57, 0x0000 }, {   57, 0x0000 }, {   57, 0x0000 },
+  {   57, 0x0000 }, {   57, 0xfffe }, {   72, 0x03fb }, {   81, 0xfffe },
+  {   96, 0x03fb }, {  105, 0x0000 }, {  105, 0x0000 }, {  105, 0x0000 },
+  /* 0x0400 */
+  {  105, 0x0002 }, {  106, 0xffff }, {  122, 0xffff }, {  138, 0xffff },
+  {  154, 0xffff }, {  170, 0x0002 },
+};
+static const Summary16 ksc5601_uni2indx_page20[103] = {
+  /* 0x2000 */
+  {  171, 0x0000 }, {  171, 0x3320 }, {  176, 0x0063 }, {  180, 0x080d },
+  {  184, 0x0000 }, {  184, 0x0000 }, {  184, 0x0000 }, {  184, 0x8010 },
+  {  186, 0x001e }, {  190, 0x0000 }, {  190, 0x1000 }, {  191, 0x0000 },
+  {  191, 0x0000 }, {  191, 0x0000 }, {  191, 0x0000 }, {  191, 0x0000 },
+  /* 0x2100 */
+  {  191, 0x0208 }, {  193, 0x0048 }, {  195, 0x0846 }, {  199, 0x0000 },
+  {  199, 0x0000 }, {  199, 0x7818 }, {  205, 0x03ff }, {  215, 0x03ff },
+  {  225, 0x0000 }, {  225, 0x03ff }, {  235, 0x0000 }, {  235, 0x0000 },
+  {  235, 0x0000 }, {  235, 0x0014 }, {  237, 0x0000 }, {  237, 0x0000 },
+  /* 0x2200 */
+  {  237, 0x898d }, {  244, 0x6402 }, {  248, 0x5fa1 }, {  257, 0x3030 },
+  {  261, 0x0000 }, {  261, 0x0004 }, {  262, 0x0c33 }, {  268, 0x0000 },
+  {  268, 0x00cc }, {  272, 0x0200 }, {  273, 0x0020 }, {  274, 0x0000 },
+  {  274, 0x0000 }, {  274, 0x0000 }, {  274, 0x0000 }, {  274, 0x0000 },
+  /* 0x2300 */
+  {  274, 0x0000 }, {  274, 0x0004 }, {  275, 0x0000 }, {  275, 0x0000 },
+  {  275, 0x0000 }, {  275, 0x0000 }, {  275, 0x0000 }, {  275, 0x0000 },
+  {  275, 0x0000 }, {  275, 0x0000 }, {  275, 0x0000 }, {  275, 0x0000 },
+  {  275, 0x0000 }, {  275, 0x0000 }, {  275, 0x0000 }, {  275, 0x0000 },
+  /* 0x2400 */
+  {  275, 0x0000 }, {  275, 0x0000 }, {  275, 0x0000 }, {  275, 0x0000 },
+  {  275, 0x0000 }, {  275, 0x0000 }, {  275, 0x7fff }, {  290, 0xfff0 },
+  {  302, 0x0007 }, {  305, 0xf000 }, {  309, 0xffff }, {  325, 0x003f },
+  {  331, 0x0000 }, {  331, 0xffff }, {  347, 0x03ff }, {  357, 0x0000 },
+  /* 0x2500 */
+  {  357, 0xf00f }, {  365, 0xffff }, {  381, 0xffff }, {  397, 0xffff },
+  {  413, 0x0fff }, {  425, 0x0000 }, {  425, 0x0000 }, {  425, 0x0000 },
+  {  425, 0x0000 }, {  425, 0x0004 }, {  426, 0x03fb }, {  435, 0x30cc },
+  {  441, 0xc9c3 }, {  449, 0x0003 }, {  451, 0x0000 }, {  451, 0x0000 },
+  /* 0x2600 */
+  {  451, 0xc060 }, {  455, 0x5000 }, {  457, 0x0000 }, {  457, 0x0000 },
+  {  457, 0x0005 }, {  459, 0x0000 }, {  459, 0x37bb },
+};
+static const Summary16 ksc5601_uni2indx_page30[62] = {
+  /* 0x3000 */
+  {  470, 0xff0f }, {  482, 0x003b }, {  487, 0x0000 }, {  487, 0x0000 },
+  {  487, 0xfffe }, {  502, 0xffff }, {  518, 0xffff }, {  534, 0xffff },
+  {  550, 0xffff }, {  566, 0x000f }, {  570, 0xfffe }, {  585, 0xffff },
+  {  601, 0xffff }, {  617, 0xffff }, {  633, 0xffff }, {  649, 0x007f },
+  /* 0x3100 */
+  {  656, 0x0000 }, {  656, 0x0000 }, {  656, 0x0000 }, {  656, 0xfffe },
+  {  671, 0xffff }, {  687, 0xffff }, {  703, 0xffff }, {  719, 0xffff },
+  {  735, 0x7fff }, {  750, 0x0000 }, {  750, 0x0000 }, {  750, 0x0000 },
+  {  750, 0x0000 }, {  750, 0x0000 }, {  750, 0x0000 }, {  750, 0x0000 },
+  /* 0x3200 */
+  {  750, 0xffff }, {  766, 0x1fff }, {  779, 0x0000 }, {  779, 0x0000 },
+  {  779, 0x0000 }, {  779, 0x0000 }, {  779, 0xffff }, {  795, 0xcfff },
+  {  809, 0x0000 }, {  809, 0x0000 }, {  809, 0x0000 }, {  809, 0x0000 },
+  {  809, 0x0000 }, {  809, 0x0000 }, {  809, 0x0000 }, {  809, 0x0000 },
+  /* 0x3300 */
+  {  809, 0x0000 }, {  809, 0x0000 }, {  809, 0x0000 }, {  809, 0x0000 },
+  {  809, 0x0000 }, {  809, 0x0000 }, {  809, 0x0000 }, {  809, 0x0000 },
+  {  809, 0xff1f }, {  822, 0xffff }, {  838, 0xffff }, {  854, 0xffff },
+  {  870, 0x87ff }, {  882, 0x3949 },
+};
+static const Summary16 ksc5601_uni2indx_page4e[1306] = {
+  /* 0x4e00 */
+  {  889, 0x2f8b }, {  898, 0x4372 }, {  905, 0x2000 }, {  906, 0x0b04 },
+  {  910, 0xe82c }, {  917, 0xe340 }, {  923, 0x2800 }, {  925, 0x40c8 },
+  {  929, 0x5944 }, {  935, 0x4937 }, {  943, 0x7976 }, {  953, 0x0440 },
+  {  955, 0x2c93 }, {  962, 0xa3f0 }, {  970, 0x0038 }, {  973, 0x08c5 },
+  /* 0x4f00 */
+  {  978, 0xee02 }, {  985, 0x0003 }, {  987, 0x8000 }, {  988, 0x3550 },
+  {  994, 0xe1c8 }, { 1001, 0x1e23 }, { 1008, 0x8200 }, { 1010, 0xc449 },
+  { 1016, 0xad5a }, { 1025, 0x2942 }, { 1030, 0xc000 }, { 1032, 0x8060 },
+  { 1035, 0x461c }, { 1041, 0xa49a }, { 1048, 0xc003 }, { 1052, 0x052a },
+  /* 0x5000 */
+  { 1057, 0x2a44 }, { 1062, 0xd646 }, { 1070, 0x3dda }, { 1080, 0x0800 },
+  { 1081, 0x8388 }, { 1086, 0x1420 }, { 1089, 0x0020 }, { 1090, 0x0170 },
+  { 1094, 0x2021 }, { 1097, 0x0302 }, { 1100, 0x3000 }, { 1102, 0x40ac },
+  { 1107, 0x8620 }, { 1111, 0x4462 }, { 1116, 0x20a0 }, { 1119, 0x8a00 },
+  /* 0x5100 */
+  { 1122, 0x0253 }, { 1127, 0x8004 }, { 1129, 0x0402 }, { 1131, 0x1484 },
+  { 1135, 0x7bfb }, { 1148, 0x1004 }, { 1150, 0x7fa4 }, { 1160, 0x11e2 },
+  { 1166, 0x2441 }, { 1170, 0x00a4 }, { 1173, 0x1421 }, { 1177, 0x20c0 },
+  { 1180, 0x3a50 }, { 1186, 0x7000 }, { 1189, 0x0002 }, { 1190, 0x2743 },
+  /* 0x5200 */
+  { 1197, 0x45c9 }, { 1204, 0x2082 }, { 1207, 0x4630 }, { 1212, 0x0fc1 },
+  { 1219, 0x3c88 }, { 1225, 0x2850 }, { 1229, 0x8602 }, { 1233, 0xa024 },
+  { 1237, 0x2388 }, { 1242, 0x8806 }, { 1246, 0x0e19 }, { 1252, 0x4000 },
+  { 1253, 0x22aa }, { 1259, 0xeb64 }, { 1268, 0x001c }, { 1271, 0xcd28 },
+  /* 0x5300 */
+  { 1278, 0xa120 }, { 1282, 0x02e1 }, { 1287, 0x840b }, { 1292, 0x8200 },
+  { 1294, 0x279b }, { 1303, 0x549e }, { 1311, 0x8141 }, { 1315, 0xa0b3 },
+  { 1322, 0x0010 }, { 1323, 0x8508 }, { 1327, 0x2061 }, { 1331, 0x0800 },
+  { 1332, 0x2f08 }, { 1338, 0x08d0 }, { 1342, 0xbe3e }, { 1353, 0x010f },
+  /* 0x5400 */
+  { 1358, 0xf718 }, { 1367, 0xa803 }, { 1372, 0x0a41 }, { 1376, 0x5b08 },
+  { 1382, 0x0504 }, { 1385, 0x0002 }, { 1386, 0x0500 }, { 1388, 0x382a },
+  { 1394, 0x5041 }, { 1398, 0x0001 }, { 1399, 0x1910 }, { 1403, 0x2108 },
+  { 1406, 0x0313 }, { 1411, 0x0000 }, { 1411, 0x6122 }, { 1416, 0x0404 },
+  /* 0x5500 */
+  { 1418, 0x40d0 }, { 1422, 0x1001 }, { 1424, 0x8000 }, { 1425, 0x4022 },
+  { 1428, 0x8050 }, { 1431, 0x4048 }, { 1434, 0x0008 }, { 1435, 0x1000 },
+  { 1436, 0x06d1 }, { 1442, 0x3700 }, { 1447, 0x5e80 }, { 1453, 0x0000 },
+  { 1453, 0x00a0 }, { 1455, 0x9410 }, { 1459, 0x0018 }, { 1461, 0x6000 },
+  /* 0x5600 */
+  { 1463, 0x0240 }, { 1465, 0x0090 }, { 1467, 0x8000 }, { 1468, 0x0054 },
+  { 1471, 0x0000 }, { 1471, 0x0008 }, { 1472, 0x0900 }, { 1474, 0x0010 },
+  { 1475, 0x0040 }, { 1476, 0x0000 }, { 1476, 0x5020 }, { 1479, 0x1010 },
+  { 1481, 0x2400 }, { 1483, 0x4c02 }, { 1487, 0x0001 }, { 1488, 0x0601 },
+  /* 0x5700 */
+  { 1491, 0x2918 }, { 1496, 0x814c }, { 1501, 0x2100 }, { 1503, 0x0801 },
+  { 1505, 0x6485 }, { 1511, 0x0003 }, { 1513, 0x4452 }, { 1518, 0x1021 },
+  { 1521, 0x0904 }, { 1524, 0x0008 }, { 1525, 0x000d }, { 1528, 0x0000 },
+  { 1528, 0x4988 }, { 1533, 0x8000 }, { 1534, 0x0001 }, { 1535, 0x1691 },
+  /* 0x5800 */
+  { 1541, 0x0765 }, { 1548, 0x4000 }, { 1549, 0x8492 }, { 1554, 0x0433 },
+  { 1559, 0x8c00 }, { 1562, 0x4592 }, { 1568, 0x0016 }, { 1571, 0x5220 },
+  { 1575, 0x0228 }, { 1578, 0xd008 }, { 1582, 0x4300 }, { 1585, 0x4c08 },
+  { 1589, 0x40a2 }, { 1593, 0xc32a }, { 1600, 0x9810 }, { 1604, 0x2e00 },
+  /* 0x5900 */
+  { 1608, 0x8000 }, { 1609, 0x1670 }, { 1615, 0x6e84 }, { 1622, 0x4082 },
+  { 1625, 0xc390 }, { 1631, 0x04b3 }, { 1637, 0x7c85 }, { 1645, 0x2118 },
+  { 1649, 0x041c }, { 1653, 0x02c8 }, { 1657, 0x1120 }, { 1660, 0x4a00 },
+  { 1663, 0x0a48 }, { 1667, 0x361b }, { 1675, 0x5540 }, { 1680, 0x8900 },
+  /* 0x5a00 */
+  { 1683, 0x000a }, { 1685, 0x9902 }, { 1690, 0x0221 }, { 1693, 0x1040 },
+  { 1695, 0x0242 }, { 1698, 0x0400 }, { 1699, 0x0044 }, { 1701, 0x0000 },
+  { 1701, 0x0000 }, { 1701, 0x0c04 }, { 1704, 0x0010 }, { 1705, 0x0000 },
+  { 1705, 0x1216 }, { 1710, 0x0000 }, { 1710, 0x0242 }, { 1713, 0x0000 },
+  /* 0x5b00 */
+  { 1713, 0x1a20 }, { 1717, 0x0040 }, { 1718, 0x0400 }, { 1719, 0x0000 },
+  { 1719, 0x0009 }, { 1721, 0xb5b3 }, { 1731, 0x0a18 }, { 1735, 0x1523 },
+  { 1741, 0x9ba0 }, { 1748, 0x1fe8 }, { 1757, 0x507c }, { 1764, 0x8379 },
+  { 1772, 0x10fd }, { 1780, 0xc09d }, { 1787, 0xdbf6 }, { 1799, 0x0560 },
+  /* 0x5c00 */
+  { 1803, 0xef92 }, { 1813, 0x0242 }, { 1816, 0x0110 }, { 1818, 0xdf02 },
+  { 1826, 0x6961 }, { 1833, 0x0822 }, { 1836, 0x9035 }, { 1842, 0x0202 },
+  { 1844, 0x0000 }, { 1844, 0x0003 }, { 1846, 0x1a02 }, { 1850, 0x45aa },
+  { 1857, 0x0001 }, { 1858, 0x0200 }, { 1859, 0x8101 }, { 1862, 0x2851 },
+  /* 0x5d00 */
+  { 1867, 0x6080 }, { 1870, 0x02d2 }, { 1875, 0x0280 }, { 1877, 0x0000 },
+  { 1877, 0x1800 }, { 1879, 0x0001 }, { 1880, 0x9200 }, { 1883, 0x0000 },
+  { 1883, 0x0880 }, { 1885, 0x2000 }, { 1886, 0x0405 }, { 1889, 0x3500 },
+  { 1893, 0x2000 }, { 1894, 0x6044 }, { 1898, 0x49e6 }, { 1906, 0x609e },
+  /* 0x5e00 */
+  { 1913, 0x104c }, { 1917, 0x2a42 }, { 1922, 0x2820 }, { 1925, 0xa148 },
+  { 1930, 0x10b1 }, { 1935, 0x8020 }, { 1937, 0x000e }, { 1940, 0x7b9c },
+  { 1950, 0x8490 }, { 1954, 0x14a0 }, { 1958, 0x28c1 }, { 1963, 0x41e0 },
+  { 1968, 0x0704 }, { 1972, 0x8c49 }, { 1978, 0x100d }, { 1982, 0x0cc8 },
+  /* 0x5f00 */
+  { 1987, 0x8412 }, { 1991, 0x89ba }, { 1999, 0x02c0 }, { 2002, 0x1422 },
+  { 2006, 0x5500 }, { 2010, 0x0ac0 }, { 2014, 0x3ec4 }, { 2022, 0x9283 },
+  { 2028, 0x1ca3 }, { 2035, 0x4387 }, { 2042, 0x4703 }, { 2048, 0x22a0 },
+  { 2052, 0x3028 }, { 2056, 0x03c0 }, { 2060, 0x0801 }, { 2062, 0xa020 },
+  /* 0x6000 */
+  { 2065, 0x8000 }, { 2066, 0x3044 }, { 2070, 0x85a3 }, { 2077, 0x0000 },
+  { 2077, 0x200e }, { 2081, 0x2225 }, { 2086, 0xb73c }, { 2096, 0x0001 },
+  { 2097, 0x3220 }, { 2101, 0x8c50 }, { 2106, 0x0099 }, { 2110, 0x315d },
+  { 2118, 0x00a0 }, { 2120, 0x9402 }, { 2124, 0x0003 }, { 2126, 0x0e4b },
+  /* 0x6100 */
+  { 2133, 0xe342 }, { 2140, 0x8c20 }, { 2144, 0x0080 }, { 2145, 0xd091 },
+  { 2151, 0x1d94 }, { 2158, 0xa328 }, { 2164, 0x499c }, { 2171, 0x60c1 },
+  { 2176, 0x4406 }, { 2180, 0x0713 }, { 2186, 0x5a90 }, { 2192, 0x4444 },
+  { 2196, 0x0f88 }, { 2202, 0x0000 }, { 2202, 0x0040 }, { 2203, 0x95c4 },
+  /* 0x6200 */
+  { 2210, 0x7581 }, { 2217, 0x8447 }, { 2223, 0x4402 }, { 2226, 0xc053 },
+  { 2232, 0x2b83 }, { 2239, 0x0108 }, { 2241, 0x4000 }, { 2242, 0x9242 },
+  { 2247, 0x0611 }, { 2251, 0x09a6 }, { 2257, 0x0800 }, { 2258, 0x3222 },
+  { 2263, 0xb384 }, { 2270, 0x1bdd }, { 2280, 0xf000 }, { 2284, 0xc08a },
+  /* 0x6300 */
+  { 2289, 0x0282 }, { 2292, 0x0002 }, { 2293, 0x8800 }, { 2295, 0x6c00 },
+  { 2299, 0x9200 }, { 2302, 0x0021 }, { 2304, 0x4180 }, { 2307, 0x8c84 },
+  { 2312, 0x1308 }, { 2316, 0x0944 }, { 2320, 0x07a7 }, { 2328, 0x0000 },
+  { 2328, 0x8051 }, { 2332, 0x0c41 }, { 2336, 0x6002 }, { 2339, 0x00d0 },
+  /* 0x6400 */
+  { 2342, 0xa000 }, { 2344, 0x10d0 }, { 2348, 0x3004 }, { 2351, 0x4400 },
+  { 2353, 0x0000 }, { 2353, 0x0100 }, { 2354, 0x8201 }, { 2357, 0x0700 },
+  { 2360, 0x0100 }, { 2361, 0x440e }, { 2366, 0x6830 }, { 2371, 0x0805 },
+  { 2374, 0x64b2 }, { 2381, 0x0514 }, { 2385, 0x10e6 }, { 2391, 0x4414 },
+  /* 0x6500 */
+  { 2395, 0x0011 }, { 2397, 0x2100 }, { 2399, 0x9c08 }, { 2404, 0xcbc0 },
+  { 2411, 0xe120 }, { 2416, 0x40c2 }, { 2420, 0x304c }, { 2425, 0x41b4 },
+  { 2431, 0x10ac }, { 2436, 0x9a83 }, { 2443, 0x98b2 }, { 2450, 0x3281 },
+  { 2455, 0x9822 }, { 2460, 0x0084 }, { 2462, 0x3369 }, { 2470, 0xbc12 },
+  /* 0x6600 */
+  { 2477, 0xd6c0 }, { 2484, 0xc03b }, { 2491, 0xa1a1 }, { 2497, 0x0c53 },
+  { 2503, 0x8a1e }, { 2510, 0xea00 }, { 2515, 0xcbf0 }, { 2524, 0x05d8 },
+  { 2530, 0x4390 }, { 2535, 0x21c3 }, { 2541, 0x4805 }, { 2545, 0x4a1c },
+  { 2551, 0x02d0 }, { 2555, 0x3240 }, { 2559, 0x0041 }, { 2561, 0xd79d },
+  /* 0x6700 */
+  { 2572, 0x2b09 }, { 2578, 0xe8b0 }, { 2585, 0x7dc0 }, { 2593, 0x2452 },
+  { 2598, 0xc240 }, { 2602, 0xd04b }, { 2609, 0xa000 }, { 2611, 0xc8ab },
+  { 2619, 0x8a80 }, { 2623, 0x34a9 }, { 2630, 0x8000 }, { 2631, 0x41c9 },
+  { 2637, 0x8010 }, { 2639, 0x241f }, { 2646, 0x9200 }, { 2649, 0x487b },
+  /* 0x6800 */
+  { 2657, 0x0000 }, { 2657, 0x00cc }, { 2661, 0x8406 }, { 2665, 0x3300 },
+  { 2669, 0x410f }, { 2675, 0x001b }, { 2679, 0x2000 }, { 2680, 0x8040 },
+  { 2682, 0x8022 }, { 2685, 0xa098 }, { 2690, 0xa186 }, { 2696, 0x006b },
+  { 2701, 0x2a30 }, { 2706, 0x85a4 }, { 2712, 0x4181 }, { 2716, 0x0604 },
+  /* 0x6900 */
+  { 2719, 0x6021 }, { 2723, 0x0004 }, { 2724, 0x0080 }, { 2725, 0xa001 },
+  { 2728, 0x0400 }, { 2729, 0x46b8 }, { 2736, 0xe90f }, { 2745, 0x03a0 },
+  { 2749, 0x0000 }, { 2749, 0x1820 }, { 2752, 0x40a0 }, { 2755, 0x0810 },
+  { 2757, 0x380a }, { 2762, 0x0001 }, { 2763, 0x0500 }, { 2765, 0xa800 },
+  /* 0x6a00 */
+  { 2768, 0x0404 }, { 2770, 0xc28a }, { 2776, 0x000a }, { 2778, 0x2720 },
+  { 2783, 0x0910 }, { 2786, 0x830c }, { 2791, 0x0802 }, { 2793, 0x0000 },
+  { 2793, 0x6211 }, { 2798, 0x1080 }, { 2800, 0x000c }, { 2802, 0x0808 },
+  { 2804, 0x000c }, { 2806, 0x0c08 }, { 2809, 0x0000 }, { 2809, 0x0840 },
+  /* 0x6b00 */
+  { 2811, 0x1410 }, { 2814, 0x0044 }, { 2816, 0x000b }, { 2819, 0x6404 },
+  { 2823, 0x50c0 }, { 2827, 0x8001 }, { 2829, 0x047e }, { 2836, 0x8984 },
+  { 2841, 0x0658 }, { 2846, 0x4140 }, { 2849, 0xc000 }, { 2851, 0x94a4 },
+  { 2857, 0xa862 }, { 2863, 0x09dc }, { 2870, 0x1800 }, { 2872, 0x0000 },
+  /* 0x6c00 */
+  { 2872, 0x8100 }, { 2874, 0x000a }, { 2876, 0x0008 }, { 2877, 0x4190 },
+  { 2881, 0x4007 }, { 2885, 0xe4a1 }, { 2892, 0x2501 }, { 2896, 0x6445 },
+  { 2902, 0x11ee }, { 2910, 0x0e7d }, { 2919, 0x4800 }, { 2921, 0xfb08 },
+  { 2929, 0x1616 }, { 2935, 0x08a8 }, { 2939, 0xc92e }, { 2947, 0x0009 },
+  /* 0x6d00 */
+  { 2949, 0x1800 }, { 2951, 0x4a82 }, { 2956, 0x06a0 }, { 2960, 0x6b64 },
+  { 2968, 0x0002 }, { 2969, 0x1600 }, { 2972, 0x5648 }, { 2978, 0x8390 },
+  { 2983, 0x73a0 }, { 2990, 0x002a }, { 2993, 0x8000 }, { 2994, 0x0024 },
+  { 2996, 0x88f9 }, { 3004, 0x4702 }, { 3009, 0x4d02 }, { 3014, 0x0faa },
+  /* 0x6e00 */
+  { 3022, 0x0000 }, { 3022, 0x8e80 }, { 3027, 0xb87b }, { 3037, 0x7554 },
+  { 3045, 0x2418 }, { 3049, 0xd940 }, { 3055, 0xc880 }, { 3059, 0x040c },
+  { 3062, 0x0000 }, { 3062, 0xb041 }, { 3067, 0x8c24 }, { 3072, 0x0442 },
+  { 3075, 0x5a34 }, { 3082, 0x001a }, { 3085, 0x8000 }, { 3086, 0xc110 },
+  /* 0x6f00 */
+  { 3090, 0x8046 }, { 3094, 0x0032 }, { 3097, 0x180d }, { 3102, 0x8106 },
+  { 3106, 0x0002 }, { 3107, 0xcd92 }, { 3115, 0x6014 }, { 3119, 0x7401 },
+  { 3124, 0x6112 }, { 3129, 0x0091 }, { 3132, 0xc098 }, { 3137, 0x420a },
+  { 3141, 0x040f }, { 3146, 0x8420 }, { 3149, 0x9a13 }, { 3156, 0x4002 },
+  /* 0x7000 */
+  { 3158, 0x8a62 }, { 3164, 0xfd22 }, { 3173, 0x8188 }, { 3177, 0x4080 },
+  { 3179, 0x1000 }, { 3180, 0x2103 }, { 3184, 0x0808 }, { 3186, 0x3101 },
+  { 3190, 0x4420 }, { 3193, 0x0704 }, { 3197, 0xb812 }, { 3203, 0x0388 },
+  { 3207, 0x8900 }, { 3210, 0xa300 }, { 3214, 0x0000 }, { 3214, 0x2202 },
+  /* 0x7100 */
+  { 3217, 0x1210 }, { 3220, 0x4600 }, { 3223, 0x0042 }, { 3225, 0x0041 },
+  { 3227, 0x5680 }, { 3232, 0x5241 }, { 3237, 0x52f0 }, { 3244, 0x2000 },
+  { 3245, 0x8610 }, { 3249, 0x8214 }, { 3253, 0x1004 }, { 3255, 0x4602 },
+  { 3259, 0x430a }, { 3264, 0x8035 }, { 3269, 0x60e0 }, { 3274, 0xd800 },
+  /* 0x7200 */
+  { 3278, 0x0041 }, { 3280, 0x0801 }, { 3282, 0x3400 }, { 3285, 0x6c65 },
+  { 3293, 0x11c1 }, { 3298, 0xab04 }, { 3304, 0x0286 }, { 3308, 0x2204 },
+  { 3311, 0x0003 }, { 3313, 0x0000 }, { 3313, 0x9084 }, { 3317, 0x0000 },
+  { 3317, 0x4015 }, { 3321, 0x0281 }, { 3324, 0x0202 }, { 3326, 0x3300 },
+  /* 0x7300 */
+  { 3330, 0x0400 }, { 3331, 0x3840 }, { 3335, 0x0e20 }, { 3339, 0xc0c0 },
+  { 3343, 0x0030 }, { 3345, 0x0085 }, { 3348, 0x0500 }, { 3350, 0x0d25 },
+  { 3356, 0x4ad0 }, { 3362, 0x81d0 }, { 3367, 0x2280 }, { 3370, 0x020c },
+  { 3373, 0xb605 }, { 3380, 0x6240 }, { 3384, 0x2679 }, { 3392, 0x6280 },
+  /* 0x7400 */
+  { 3396, 0x02ea }, { 3402, 0x0808 }, { 3404, 0xdd67 }, { 3415, 0x8579 },
+  { 3423, 0x081b }, { 3428, 0xdea0 }, { 3436, 0x8735 }, { 3444, 0x4000 },
+  { 3445, 0x0a8c }, { 3450, 0xd100 }, { 3454, 0x05aa }, { 3460, 0xa225 },
+  { 3466, 0x8440 }, { 3469, 0x1510 }, { 3473, 0x404d }, { 3478, 0x0080 },
+  /* 0x7500 */
+  { 3479, 0x0012 }, { 3481, 0x8d22 }, { 3487, 0x1968 }, { 3493, 0x058f },
+  { 3500, 0x9080 }, { 3503, 0x3a1a }, { 3510, 0x8464 }, { 3515, 0x8561 },
+  { 3521, 0xccc0 }, { 3527, 0x2002 }, { 3529, 0x0820 }, { 3531, 0x732e },
+  { 3540, 0x20a4 }, { 3544, 0x0b34 }, { 3550, 0x0004 }, { 3551, 0x1415 },
+  /* 0x7600 */
+  { 3556, 0x2001 }, { 3558, 0x8200 }, { 3560, 0x0057 }, { 3565, 0x0800 },
+  { 3566, 0x5004 }, { 3569, 0x0044 }, { 3571, 0x1212 }, { 3575, 0x7905 },
+  { 3582, 0x40d0 }, { 3586, 0x0009 }, { 3588, 0x4000 }, { 3589, 0x8400 },
+  { 3591, 0x054c }, { 3596, 0xd844 }, { 3602, 0x409a }, { 3607, 0x5114 },
+  /* 0x7700 */
+  { 3612, 0x0b12 }, { 3617, 0x4000 }, { 3618, 0x0201 }, { 3620, 0x1580 },
+  { 3624, 0x2001 }, { 3626, 0x0800 }, { 3627, 0x084a }, { 3631, 0xc200 },
+  { 3634, 0x0800 }, { 3635, 0x4002 }, { 3637, 0x3020 }, { 3640, 0x9809 },
+  { 3645, 0x0000 }, { 3645, 0x1880 }, { 3648, 0xe22c }, { 3655, 0x0008 },
+  /* 0x7800 */
+  { 3656, 0x0004 }, { 3657, 0x0004 }, { 3658, 0x10e0 }, { 3662, 0x0014 },
+  { 3664, 0x8020 }, { 3666, 0x2000 }, { 3667, 0x9800 }, { 3670, 0x1000 },
+  { 3671, 0x7082 }, { 3676, 0x0082 }, { 3678, 0x0288 }, { 3681, 0x1c00 },
+  { 3684, 0x4c22 }, { 3689, 0x0001 }, { 3690, 0x9100 }, { 3693, 0x0820 },
+  /* 0x7900 */
+  { 3695, 0x4002 }, { 3697, 0x0040 }, { 3698, 0x1c00 }, { 3701, 0x4400 },
+  { 3703, 0x0383 }, { 3708, 0x7cc1 }, { 3716, 0x2121 }, { 3720, 0x8400 },
+  { 3722, 0xe002 }, { 3726, 0x0002 }, { 3727, 0x44c0 }, { 3731, 0xe20a },
+  { 3737, 0x0e03 }, { 3742, 0x8126 }, { 3747, 0x02d0 }, { 3751, 0x0800 },
+  /* 0x7a00 */
+  { 3752, 0x2921 }, { 3757, 0x9690 }, { 3763, 0x4001 }, { 3765, 0xb8c2 },
+  { 3772, 0x6241 }, { 3777, 0x0080 }, { 3778, 0x0a06 }, { 3782, 0xa651 },
+  { 3789, 0x0112 }, { 3792, 0x812c }, { 3797, 0xc600 }, { 3801, 0x0400 },
+  { 3802, 0x0cb0 }, { 3807, 0xa280 }, { 3811, 0xa429 }, { 3817, 0x8640 },
+  /* 0x7b00 */
+  { 3821, 0x8000 }, { 3822, 0x4a02 }, { 3826, 0x3041 }, { 3830, 0x0200 },
+  { 3831, 0xba40 }, { 3837, 0x0057 }, { 3842, 0x5001 }, { 3845, 0x2020 },
+  { 3847, 0x8880 }, { 3850, 0x24b0 }, { 3855, 0x2002 }, { 3857, 0x0112 },
+  { 3860, 0x02d3 }, { 3866, 0x0004 }, { 3867, 0x0211 }, { 3870, 0x0000 },
+  /* 0x7c00 */
+  { 3870, 0x0080 }, { 3871, 0x4004 }, { 3873, 0x0c82 }, { 3877, 0xe000 },
+  { 3880, 0x3008 }, { 3883, 0x0000 }, { 3883, 0x1011 }, { 3886, 0x0008 },
+  { 3887, 0x0208 }, { 3889, 0x81a4 }, { 3894, 0x40a0 }, { 3897, 0x420e },
+  { 3902, 0x0400 }, { 3903, 0xc040 }, { 3906, 0x0081 }, { 3908, 0x4800 },
+  /* 0x7d00 */
+  { 3910, 0x2df5 }, { 3920, 0x0f91 }, { 3927, 0xd807 }, { 3934, 0x0629 },
+  { 3939, 0x007c }, { 3944, 0x4001 }, { 3946, 0x4546 }, { 3952, 0x824e },
+  { 3958, 0xc000 }, { 3960, 0x1008 }, { 3962, 0x3005 }, { 3966, 0xed36 },
+  { 3976, 0x0c80 }, { 3979, 0x6540 }, { 3984, 0x930b }, { 3991, 0x0810 },
+  /* 0x7e00 */
+  { 3993, 0x0600 }, { 3995, 0xe820 }, { 4000, 0xc80a }, { 4005, 0x6082 },
+  { 4009, 0x00ca }, { 4013, 0x4034 }, { 4017, 0x2e02 }, { 4022, 0x1201 },
+  { 4025, 0x9004 }, { 4028, 0x1948 }, { 4033, 0x0000 }, { 4033, 0x0000 },
+  { 4033, 0x0000 }, { 4033, 0x0000 }, { 4033, 0x0000 }, { 4033, 0x0000 },
+  /* 0x7f00 */
+  { 4033, 0x0000 }, { 4033, 0x0000 }, { 4033, 0x0000 }, { 4033, 0x0540 },
+  { 4036, 0x1000 }, { 4037, 0x0031 }, { 4040, 0x4c00 }, { 4043, 0x02a5 },
+  { 4048, 0x5520 }, { 4053, 0x4410 }, { 4056, 0x0310 }, { 4059, 0x2304 },
+  { 4063, 0x5422 }, { 4068, 0x8034 }, { 4072, 0x0a03 }, { 4076, 0x1201 },
+  /* 0x8000 */
+  { 4079, 0x126b }, { 4086, 0x01a1 }, { 4090, 0x2000 }, { 4091, 0xa048 },
+  { 4095, 0x0448 }, { 4098, 0x4540 }, { 4102, 0x8000 }, { 4103, 0xe08d },
+  { 4110, 0x1af0 }, { 4117, 0x2840 }, { 4120, 0x8626 }, { 4126, 0x0416 },
+  { 4130, 0x5018 }, { 4134, 0x4c00 }, { 4137, 0x0032 }, { 4140, 0x2112 },
+  /* 0x8100 */
+  { 4144, 0x05e4 }, { 4150, 0x0d00 }, { 4153, 0x8a08 }, { 4157, 0x4200 },
+  { 4159, 0x4800 }, { 4161, 0x0033 }, { 4165, 0x0860 }, { 4168, 0x8703 },
+  { 4174, 0x8501 }, { 4178, 0x3400 }, { 4181, 0x0109 }, { 4184, 0xe428 },
+  { 4190, 0x2045 }, { 4194, 0x8100 }, { 4196, 0x25a8 }, { 4202, 0x5c18 },
+  /* 0x8200 */
+  { 4208, 0x35a0 }, { 4214, 0xd804 }, { 4219, 0x1c02 }, { 4223, 0x02e0 },
+  { 4227, 0x00a1 }, { 4230, 0x0200 }, { 4231, 0xc050 }, { 4235, 0x4146 },
+  { 4240, 0x6800 }, { 4243, 0xa604 }, { 4248, 0xf260 }, { 4255, 0xbb8a },
+  { 4264, 0x0000 }, { 4264, 0xc8b6 }, { 4272, 0x00e2 }, { 4276, 0x6002 },
+  /* 0x8300 */
+  { 4279, 0x023e }, { 4285, 0x0080 }, { 4286, 0x8900 }, { 4289, 0x0372 },
+  { 4295, 0x8681 }, { 4300, 0x0006 }, { 4302, 0x0000 }, { 4302, 0x0888 },
+  { 4305, 0x4600 }, { 4308, 0x4140 }, { 4311, 0x0e04 }, { 4315, 0x2000 },
+  { 4316, 0x1622 }, { 4321, 0x1048 }, { 4324, 0x8a00 }, { 4327, 0x2217 },
+  /* 0x8400 */
+  { 4333, 0x7418 }, { 4339, 0x0000 }, { 4339, 0x1200 }, { 4341, 0x2102 },
+  { 4344, 0x0200 }, { 4345, 0x0880 }, { 4347, 0x984a }, { 4353, 0x0420 },
+  { 4355, 0x0000 }, { 4355, 0x1211 }, { 4359, 0x0002 }, { 4360, 0x9904 },
+  { 4365, 0x2a55 }, { 4372, 0x0402 }, { 4374, 0x5000 }, { 4376, 0x1010 },
+  /* 0x8500 */
+  { 4378, 0x0000 }, { 4378, 0x459a }, { 4385, 0xb02a }, { 4391, 0xa000 },
+  { 4393, 0x420a }, { 4397, 0x0208 }, { 4399, 0x2708 }, { 4404, 0x0000 },
+  { 4404, 0x8090 }, { 4407, 0x0812 }, { 4410, 0x8740 }, { 4415, 0x0401 },
+  { 4417, 0xe202 }, { 4422, 0x3020 }, { 4425, 0x0630 }, { 4429, 0x8c80 },
+  /* 0x8600 */
+  { 4433, 0x04c4 }, { 4437, 0x04c0 }, { 4440, 0x2000 }, { 4441, 0x8000 },
+  { 4442, 0x4000 }, { 4443, 0xd831 }, { 4450, 0x0080 }, { 4451, 0x0200 },
+  { 4452, 0x1400 }, { 4454, 0x0008 }, { 4455, 0x0218 }, { 4458, 0x0000 },
+  { 4458, 0x0880 }, { 4460, 0x8a10 }, { 4464, 0x2010 }, { 4466, 0x4000 },
+  /* 0x8700 */
+  { 4467, 0x010d }, { 4471, 0x1500 }, { 4474, 0x0000 }, { 4474, 0x0000 },
+  { 4474, 0x4000 }, { 4475, 0x80a0 }, { 4478, 0x0140 }, { 4480, 0x0150 },
+  { 4483, 0x2004 }, { 4485, 0x8000 }, { 4486, 0x0004 }, { 4487, 0x0408 },
+  { 4489, 0x0010 }, { 4490, 0x0000 }, { 4490, 0x9001 }, { 4493, 0x4a04 },
+  /* 0x8800 */
+  { 4497, 0x0020 }, { 4498, 0x8000 }, { 4499, 0x000c }, { 4501, 0x0842 },
+  { 4504, 0x3041 }, { 4508, 0x2a8c }, { 4514, 0x090e }, { 4519, 0xc085 },
+  { 4524, 0x2906 }, { 4529, 0x40c4 }, { 4533, 0x0800 }, { 4534, 0x0010 },
+  { 4535, 0x8006 }, { 4538, 0xb230 }, { 4544, 0x0102 }, { 4546, 0x2138 },
+  /* 0x8900 */
+  { 4551, 0x0080 }, { 4552, 0x030d }, { 4557, 0x0420 }, { 4559, 0x0940 },
+  { 4562, 0x0012 }, { 4564, 0x8000 }, { 4565, 0x0410 }, { 4567, 0x8004 },
+  { 4569, 0x88ca }, { 4575, 0x0048 }, { 4577, 0x0602 }, { 4580, 0x2404 },
+  { 4583, 0x0001 }, { 4584, 0x0004 }, { 4585, 0x0008 }, { 4586, 0x0110 },
+  /* 0x8a00 */
+  { 4588, 0x550d }, { 4595, 0xa9c8 }, { 4602, 0x2428 }, { 4606, 0x0c52 },
+  { 4611, 0x0000 }, { 4611, 0x4831 }, { 4616, 0x624d }, { 4623, 0x022f },
+  { 4629, 0x30a0 }, { 4633, 0x4128 }, { 4637, 0x057b }, { 4645, 0xd205 },
+  { 4651, 0xa894 }, { 4657, 0x1844 }, { 4661, 0x6cc2 }, { 4668, 0x45c2 },
+  /* 0x8b00 */
+  { 4674, 0x4017 }, { 4679, 0x2ed1 }, { 4687, 0x1901 }, { 4691, 0x0208 },
+  { 4693, 0xc202 }, { 4697, 0x1500 }, { 4700, 0x9040 }, { 4703, 0x2091 },
+  { 4707, 0x0401 }, { 4709, 0x044d }, { 4714, 0x0000 }, { 4714, 0x0000 },
+  { 4714, 0x0000 }, { 4714, 0x0000 }, { 4714, 0x0000 }, { 4714, 0x0000 },
+  /* 0x8c00 */
+  { 4714, 0x0000 }, { 4714, 0x0000 }, { 4714, 0x0000 }, { 4714, 0x8080 },
+  { 4716, 0x1542 }, { 4721, 0x0420 }, { 4723, 0x0c02 }, { 4726, 0x0600 },
+  { 4728, 0x1404 }, { 4731, 0x6000 }, { 4733, 0x9f87 }, { 4743, 0xb9d9 },
+  { 4753, 0x059f }, { 4761, 0x540a }, { 4766, 0x245d }, { 4773, 0x3810 },
+  /* 0x8d00 */
+  { 4777, 0x25b0 }, { 4783, 0x0048 }, { 4785, 0x0000 }, { 4785, 0x0000 },
+  { 4785, 0x0000 }, { 4785, 0x0000 }, { 4785, 0x0850 }, { 4788, 0x0099 },
+  { 4792, 0x0420 }, { 4794, 0x0200 }, { 4795, 0x0108 }, { 4797, 0x4408 },
+  { 4800, 0x9840 }, { 4804, 0x2800 }, { 4806, 0x810a }, { 4810, 0x0008 },
+  /* 0x8e00 */
+  { 4811, 0x8400 }, { 4813, 0x4001 }, { 4815, 0x0400 }, { 4816, 0x0021 },
+  { 4818, 0x0794 }, { 4824, 0x8200 }, { 4826, 0x0001 }, { 4827, 0x0050 },
+  { 4829, 0x2482 }, { 4833, 0x0000 }, { 4833, 0x1c00 }, { 4836, 0x0000 },
+  { 4836, 0x3c01 }, { 4841, 0x8004 }, { 4843, 0x0800 }, { 4844, 0x4900 },
+  /* 0x8f00 */
+  { 4847, 0x0228 }, { 4850, 0xf83c }, { 4859, 0x86c0 }, { 4864, 0xcb08 },
+  { 4870, 0x6230 }, { 4875, 0xa000 }, { 4877, 0x0004 }, { 4878, 0x0000 },
+  { 4878, 0x0000 }, { 4878, 0x1800 }, { 4880, 0xa148 }, { 4885, 0x0007 },
+  { 4888, 0x4024 }, { 4891, 0x0012 }, { 4893, 0x2c40 }, { 4897, 0x2285 },
+  /* 0x9000 */
+  { 4902, 0xa96f }, { 4912, 0xe6b3 }, { 4922, 0x400f }, { 4927, 0x5126 },
+  { 4933, 0x6c86 }, { 4940, 0x723b }, { 4949, 0xe20b }, { 4956, 0xb5a4 },
+  { 4964, 0x859f }, { 4973, 0x0222 }, { 4976, 0x854c }, { 4982, 0x0123 },
+  { 4986, 0x0402 }, { 4988, 0x4000 }, { 4989, 0x2102 }, { 4992, 0x2020 },
+  /* 0x9100 */
+  { 4994, 0x0004 }, { 4995, 0x0224 }, { 4998, 0x2080 }, { 5000, 0x0004 },
+  { 5001, 0x7e00 }, { 5007, 0x0004 }, { 5008, 0x1604 }, { 5012, 0x01a0 },
+  { 5015, 0x2a80 }, { 5019, 0x1004 }, { 5021, 0xd800 }, { 5025, 0x0032 },
+  { 5028, 0xfa81 }, { 5036, 0x3183 }, { 5042, 0x0488 }, { 5045, 0x0020 },
+  /* 0x9200 */
+  { 5046, 0x2000 }, { 5047, 0x4087 }, { 5052, 0x0000 }, { 5052, 0x8410 },
+  { 5055, 0x0221 }, { 5058, 0x4880 }, { 5061, 0x0074 }, { 5065, 0x0000 },
+  { 5065, 0x0029 }, { 5068, 0x114a }, { 5073, 0x0000 }, { 5073, 0x02c8 },
+  { 5077, 0x9000 }, { 5079, 0x0004 }, { 5080, 0x0410 }, { 5082, 0x1100 },
+  /* 0x9300 */
+  { 5084, 0x0010 }, { 5085, 0xc501 }, { 5090, 0xc957 }, { 5099, 0x0000 },
+  { 5099, 0x2d00 }, { 5103, 0x0810 }, { 5105, 0x4000 }, { 5106, 0x5020 },
+  { 5109, 0x1000 }, { 5110, 0x0450 }, { 5113, 0x3088 }, { 5117, 0x0001 },
+  { 5118, 0x0008 }, { 5119, 0x4002 }, { 5121, 0x0012 }, { 5123, 0x0040 },
+  /* 0x9400 */
+  { 5124, 0x0010 }, { 5125, 0x0100 }, { 5126, 0x0820 }, { 5128, 0x0120 },
+  { 5130, 0x0010 }, { 5131, 0x0806 }, { 5134, 0x0000 }, { 5134, 0xa000 },
+  { 5136, 0x0000 }, { 5136, 0x0000 }, { 5136, 0x0000 }, { 5136, 0x0000 },
+  { 5136, 0x0000 }, { 5136, 0x0000 }, { 5136, 0x0000 }, { 5136, 0x0000 },
+  /* 0x9500 */
+  { 5136, 0x0000 }, { 5136, 0x0000 }, { 5136, 0x0000 }, { 5136, 0x0000 },
+  { 5136, 0x0000 }, { 5136, 0x0000 }, { 5136, 0x0000 }, { 5136, 0x0080 },
+  { 5137, 0x8a09 }, { 5142, 0x011e }, { 5147, 0x2138 }, { 5152, 0x1802 },
+  { 5155, 0x0480 }, { 5157, 0x1070 }, { 5161, 0x0006 }, { 5163, 0x0000 },
+  /* 0x9600 */
+  { 5163, 0x0000 }, { 5163, 0x1000 }, { 5164, 0x4402 }, { 5167, 0x8804 },
+  { 5170, 0x3815 }, { 5176, 0xf801 }, { 5182, 0x041c }, { 5186, 0x21e9 },
+  { 5193, 0x6c60 }, { 5199, 0x1b30 }, { 5205, 0x0588 }, { 5209, 0x0882 },
+  { 5212, 0x7af3 }, { 5223, 0x1a60 }, { 5228, 0x870c }, { 5234, 0x0ac5 },
+  /* 0x9700 */
+  { 5240, 0x00c1 }, { 5243, 0x524a }, { 5249, 0x0080 }, { 5250, 0x2205 },
+  { 5254, 0x0114 }, { 5257, 0x5042 }, { 5261, 0x2206 }, { 5265, 0x0490 },
+  { 5268, 0xa800 }, { 5271, 0x0000 }, { 5271, 0x2901 }, { 5275, 0x0000 },
+  { 5275, 0x0840 }, { 5277, 0x1008 }, { 5279, 0x0000 }, { 5279, 0x8848 },
+  /* 0x9800 */
+  { 5283, 0x156f }, { 5292, 0x018f }, { 5298, 0x2000 }, { 5299, 0x0b01 },
+  { 5303, 0x7040 }, { 5307, 0x4510 }, { 5311, 0x88a0 }, { 5315, 0x0000 },
+  { 5315, 0x0000 }, { 5315, 0x0000 }, { 5315, 0x8100 }, { 5317, 0x0002 },
+  { 5318, 0x0090 }, { 5320, 0x9800 }, { 5323, 0xe006 }, { 5328, 0x7010 },
+  /* 0x9900 */
+  { 5332, 0x1608 }, { 5336, 0x4109 }, { 5340, 0x0101 }, { 5342, 0x0000 },
+  { 5342, 0x3a20 }, { 5347, 0x0096 }, { 5351, 0x0000 }, { 5351, 0x0000 },
+  { 5351, 0x0000 }, { 5351, 0x2240 }, { 5354, 0x7120 }, { 5359, 0x021a },
+  { 5363, 0x0002 }, { 5364, 0xa227 }, { 5371, 0x2000 }, { 5372, 0x8002 },
+  /* 0x9a00 */
+  { 5374, 0xc102 }, { 5378, 0x0200 }, { 5379, 0x0800 }, { 5380, 0x00c1 },
+  { 5383, 0x2029 }, { 5387, 0x8ca0 }, { 5392, 0x0624 }, { 5396, 0x0000 },
+  { 5396, 0x0000 }, { 5396, 0x0000 }, { 5396, 0x0100 }, { 5397, 0x0100 },
+  { 5398, 0x0000 }, { 5398, 0x0118 }, { 5401, 0x4020 }, { 5403, 0x0000 },
+  /* 0x9b00 */
+  { 5403, 0x0000 }, { 5403, 0x0400 }, { 5404, 0x0480 }, { 5406, 0x1002 },
+  { 5408, 0x803e }, { 5414, 0x0410 }, { 5416, 0x8000 }, { 5417, 0x0000 },
+  { 5417, 0x4000 }, { 5418, 0x8002 }, { 5420, 0x4800 }, { 5422, 0x0000 },
+  { 5422, 0x0200 }, { 5423, 0x0040 }, { 5424, 0x0110 }, { 5426, 0x0000 },
+  /* 0x9c00 */
+  { 5426, 0x2000 }, { 5427, 0x0025 }, { 5430, 0x0020 }, { 5431, 0x0804 },
+  { 5433, 0x0280 }, { 5435, 0x0080 }, { 5436, 0x0000 }, { 5436, 0x0000 },
+  { 5436, 0x0000 }, { 5436, 0x0000 }, { 5436, 0x0000 }, { 5436, 0x0000 },
+  { 5436, 0x0000 }, { 5436, 0x0000 }, { 5436, 0x02a0 }, { 5439, 0x0058 },
+  /* 0x9d00 */
+  { 5442, 0x0200 }, { 5443, 0x0800 }, { 5444, 0x0140 }, { 5446, 0x0800 },
+  { 5447, 0x0000 }, { 5447, 0x2002 }, { 5449, 0x1003 }, { 5452, 0x0004 },
+  { 5453, 0x0000 }, { 5453, 0x0000 }, { 5453, 0x8200 }, { 5455, 0x0010 },
+  { 5456, 0x0010 }, { 5457, 0x0080 }, { 5458, 0x0000 }, { 5458, 0x0704 },
+  /* 0x9e00 */
+  { 5462, 0x0000 }, { 5462, 0x4400 }, { 5464, 0x0000 }, { 5464, 0x0000 },
+  { 5464, 0x0000 }, { 5464, 0x0000 }, { 5464, 0x0000 }, { 5464, 0xa220 },
+  { 5468, 0x0000 }, { 5468, 0xa08c }, { 5473, 0x0020 }, { 5474, 0x4830 },
+  { 5478, 0x6008 }, { 5481, 0x5912 }, { 5487, 0x0100 }, { 5488, 0x0010 },
+  /* 0x9f00 */
+  { 5489, 0x4180 }, { 5492, 0x0008 }, { 5493, 0x0001 }, { 5494, 0x0800 },
+  { 5495, 0x4c00 }, { 5498, 0x8004 }, { 5500, 0x1482 }, { 5504, 0x0080 },
+  { 5505, 0x2000 }, { 5506, 0x1021 },
+};
+static const Summary16 ksc5601_uni2indx_pageac[698] = {
+  /* 0xac00 */
+  { 5509, 0x0793 }, { 5516, 0x3eff }, { 5529, 0xb011 }, { 5534, 0x1303 },
+  { 5539, 0x2801 }, { 5542, 0x1110 }, { 5545, 0x0000 }, { 5545, 0x0593 },
+  { 5551, 0x1e7b }, { 5561, 0xb011 }, { 5566, 0x9703 }, { 5573, 0x3b01 },
+  { 5579, 0x1112 }, { 5583, 0x00a0 }, { 5585, 0x9593 }, { 5593, 0x306b },
+  /* 0xad00 */
+  { 5600, 0xb051 }, { 5606, 0x1102 }, { 5609, 0x3201 }, { 5613, 0x1130 },
+  { 5617, 0x02b0 }, { 5621, 0x0111 }, { 5624, 0x300a }, { 5628, 0xb879 },
+  { 5637, 0x1306 }, { 5642, 0x3001 }, { 5645, 0x0010 }, { 5646, 0x0080 },
+  { 5647, 0x0113 }, { 5651, 0x100b }, { 5655, 0x0011 }, { 5657, 0x9300 },
+  /* 0xae00 */
+  { 5661, 0x2b03 }, { 5667, 0x0010 }, { 5668, 0x0000 }, { 5668, 0x0593 },
+  { 5674, 0x746b }, { 5683, 0xb051 }, { 5689, 0x1323 }, { 5695, 0x3b01 },
+  { 5701, 0x1030 }, { 5704, 0x0000 }, { 5704, 0x0000 }, { 5704, 0x7000 },
+  { 5707, 0xb011 }, { 5712, 0x1303 }, { 5717, 0x2900 }, { 5720, 0x1110 },
+  /* 0xaf00 */
+  { 5723, 0x2180 }, { 5726, 0x0001 }, { 5727, 0x3000 }, { 5729, 0xb015 },
+  { 5735, 0x030e }, { 5740, 0x3001 }, { 5743, 0x0030 }, { 5745, 0x0200 },
+  { 5746, 0x0111 }, { 5749, 0x1023 }, { 5753, 0x0000 }, { 5753, 0x1300 },
+  { 5756, 0x6b81 }, { 5763, 0x1010 }, { 5765, 0x0300 }, { 5767, 0x0113 },
+  /* 0xb000 */
+  { 5771, 0x1013 }, { 5775, 0x3011 }, { 5779, 0x0100 }, { 5780, 0x0000 },
+  { 5780, 0x5530 }, { 5786, 0x22b8 }, { 5792, 0x0000 }, { 5792, 0x3000 },
+  { 5794, 0xb011 }, { 5799, 0x9702 }, { 5805, 0xfb07 }, { 5815, 0x113a },
+  { 5821, 0x03b0 }, { 5826, 0x0113 }, { 5830, 0x0021 }, { 5832, 0x0000 },
+  /* 0xb100 */
+  { 5832, 0x1b00 }, { 5836, 0x3b0d }, { 5844, 0x1138 }, { 5849, 0x03b0 },
+  { 5854, 0x0113 }, { 5858, 0x1133 }, { 5864, 0x0001 }, { 5865, 0x1300 },
+  { 5868, 0x2b05 }, { 5874, 0x111c }, { 5879, 0x0100 }, { 5880, 0x0000 },
+  { 5880, 0x1000 }, { 5881, 0xb011 }, { 5886, 0x1300 }, { 5889, 0x2a01 },
+  /* 0xb200 */
+  { 5893, 0x1930 }, { 5898, 0x02b0 }, { 5902, 0x0001 }, { 5903, 0x1010 },
+  { 5905, 0x0000 }, { 5905, 0x1100 }, { 5907, 0x0301 }, { 5910, 0x1030 },
+  { 5913, 0x0230 }, { 5916, 0x0713 }, { 5922, 0x146b }, { 5929, 0x0011 },
+  { 5931, 0x1300 }, { 5934, 0x2b05 }, { 5940, 0xf974 }, { 5950, 0x8fb8 },
+  /* 0xb300 */
+  { 5959, 0x0113 }, { 5963, 0x103b }, { 5969, 0x0000 }, { 5969, 0x0000 },
+  { 5969, 0x0000 }, { 5969, 0xd970 }, { 5977, 0x4ab0 }, { 5983, 0x0113 },
+  { 5987, 0x103b }, { 5993, 0x0011 }, { 5995, 0x1103 }, { 5999, 0x0000 },
+  { 5999, 0x5930 }, { 6005, 0x2ab1 }, { 6012, 0x0111 }, { 6015, 0x1000 },
+  /* 0xb400 */
+  { 6016, 0x0000 }, { 6016, 0x1101 }, { 6019, 0x0b01 }, { 6023, 0x0010 },
+  { 6024, 0x0000 }, { 6024, 0x0113 }, { 6028, 0x102b }, { 6033, 0x0000 },
+  { 6033, 0x0101 }, { 6035, 0x2000 }, { 6036, 0x1110 }, { 6039, 0x02a0 },
+  { 6042, 0x0111 }, { 6045, 0x3021 }, { 6049, 0xb059 }, { 6056, 0x0102 },
+  /* 0xb500 */
+  { 6058, 0x0000 }, { 6058, 0x1930 }, { 6063, 0x07b0 }, { 6069, 0x0113 },
+  { 6073, 0x383b }, { 6081, 0xb011 }, { 6086, 0x0003 }, { 6088, 0x0000 },
+  { 6088, 0x0000 }, { 6088, 0x0000 }, { 6088, 0x0d13 }, { 6094, 0x383b },
+  { 6102, 0xb011 }, { 6107, 0x0103 }, { 6110, 0x1000 }, { 6111, 0x0000 },
+  /* 0xb600 */
+  { 6111, 0x0000 }, { 6111, 0x0113 }, { 6115, 0x1020 }, { 6117, 0x0010 },
+  { 6118, 0x0100 }, { 6119, 0x0000 }, { 6119, 0x0110 }, { 6121, 0x0000 },
+  { 6121, 0x0000 }, { 6121, 0x3000 }, { 6123, 0x1811 }, { 6127, 0x0002 },
+  { 6128, 0x0000 }, { 6128, 0x0010 }, { 6129, 0x0000 }, { 6129, 0x0111 },
+  /* 0xb700 */
+  { 6132, 0x0023 }, { 6135, 0x0000 }, { 6135, 0x9300 }, { 6139, 0x0b01 },
+  { 6143, 0x1110 }, { 6146, 0x0030 }, { 6148, 0x0111 }, { 6151, 0x302b },
+  { 6157, 0xb011 }, { 6162, 0x13c7 }, { 6170, 0x3b01 }, { 6176, 0x0130 },
+  { 6179, 0x0280 }, { 6181, 0x0000 }, { 6181, 0x3000 }, { 6183, 0xb011 },
+  /* 0xb800 */
+  { 6188, 0x1383 }, { 6194, 0x2b01 }, { 6199, 0x1130 }, { 6203, 0x03b0 },
+  { 6208, 0x0011 }, { 6210, 0x300a }, { 6214, 0xb011 }, { 6219, 0x1102 },
+  { 6222, 0x2000 }, { 6223, 0x0000 }, { 6223, 0x0100 }, { 6224, 0x0111 },
+  { 6227, 0x102b }, { 6232, 0xa011 }, { 6236, 0x1302 }, { 6240, 0x2b01 },
+  /* 0xb900 */
+  { 6245, 0x0010 }, { 6246, 0x0100 }, { 6247, 0x0001 }, { 6248, 0x3000 },
+  { 6250, 0x9011 }, { 6254, 0x1302 }, { 6258, 0x2b01 }, { 6263, 0x1130 },
+  { 6267, 0x66b0 }, { 6274, 0x0000 }, { 6274, 0x3000 }, { 6276, 0xb011 },
+  { 6281, 0xd302 }, { 6287, 0x6b07 }, { 6295, 0x113a }, { 6301, 0x07b0 },
+  /* 0xba00 */
+  { 6307, 0x0103 }, { 6310, 0x0020 }, { 6311, 0x0000 }, { 6311, 0x1300 },
+  { 6314, 0x6b05 }, { 6321, 0x1138 }, { 6326, 0x03b0 }, { 6331, 0x0113 },
+  { 6335, 0x10b8 }, { 6340, 0x0000 }, { 6340, 0x1b00 }, { 6344, 0x2b05 },
+  { 6350, 0x0110 }, { 6352, 0x0300 }, { 6354, 0x0000 }, { 6354, 0x1000 },
+  /* 0xbb00 */
+  { 6355, 0xa011 }, { 6359, 0x1102 }, { 6362, 0x0a01 }, { 6365, 0x7970 },
+  { 6373, 0xa2b0 }, { 6379, 0x0111 }, { 6382, 0x100a }, { 6385, 0x0000 },
+  { 6385, 0x1100 }, { 6387, 0x0001 }, { 6388, 0x1110 }, { 6391, 0x0090 },
+  { 6393, 0x0111 }, { 6396, 0x0009 }, { 6398, 0x0000 }, { 6398, 0x9300 },
+  /* 0xbc00 */
+  { 6402, 0xbb05 }, { 6410, 0xf9f2 }, { 6421, 0x22b0 }, { 6426, 0x0113 },
+  { 6430, 0x323b }, { 6438, 0x2001 }, { 6440, 0x0000 }, { 6440, 0x0000 },
+  { 6440, 0x5930 }, { 6446, 0x06b0 }, { 6451, 0x0193 }, { 6456, 0x303b },
+  { 6463, 0xa011 }, { 6467, 0x1123 }, { 6472, 0x0000 }, { 6472, 0x1170 },
+  /* 0xbd00 */
+  { 6477, 0x02b0 }, { 6481, 0x0011 }, { 6483, 0x1010 }, { 6485, 0x0000 },
+  { 6485, 0x1301 }, { 6489, 0x0301 }, { 6492, 0x0110 }, { 6494, 0x0000 },
+  { 6494, 0x0793 }, { 6501, 0x162b }, { 6508, 0x0010 }, { 6509, 0x0101 },
+  { 6511, 0x0000 }, { 6511, 0x1130 }, { 6515, 0x0200 }, { 6516, 0x0111 },
+  /* 0xbe00 */
+  { 6519, 0x3029 }, { 6524, 0xb011 }, { 6529, 0x0000 }, { 6529, 0x0000 },
+  { 6529, 0x5130 }, { 6534, 0x0eb0 }, { 6540, 0x0513 }, { 6545, 0x383b },
+  { 6553, 0xb011 }, { 6558, 0x0303 }, { 6562, 0x0100 }, { 6563, 0x0000 },
+  { 6563, 0x0000 }, { 6563, 0x0193 }, { 6568, 0x1039 }, { 6573, 0x0000 },
+  /* 0xbf00 */
+  { 6573, 0x0302 }, { 6576, 0x3b00 }, { 6581, 0x0000 }, { 6581, 0x0000 },
+  { 6581, 0x0113 }, { 6585, 0x0023 }, { 6588, 0x0000 }, { 6588, 0x0000 },
+  { 6588, 0x0000 }, { 6588, 0x0010 }, { 6589, 0x0000 }, { 6589, 0x0001 },
+  { 6590, 0x3020 }, { 6593, 0x9011 }, { 6597, 0x0002 }, { 6598, 0x0000 },
+  /* 0xc000 */
+  { 6598, 0x0000 }, { 6598, 0x0000 }, { 6598, 0x0000 }, { 6598, 0x1000 },
+  { 6599, 0x0000 }, { 6599, 0x1102 }, { 6602, 0x0301 }, { 6605, 0x0000 },
+  { 6605, 0x0000 }, { 6605, 0x0113 }, { 6609, 0xb02b }, { 6616, 0xb079 },
+  { 6624, 0x1323 }, { 6630, 0x3b01 }, { 6636, 0x1130 }, { 6640, 0x02b0 },
+  /* 0xc100 */
+  { 6644, 0x0111 }, { 6647, 0xf021 }, { 6653, 0xb0d9 }, { 6661, 0x1343 },
+  { 6667, 0x3b01 }, { 6673, 0x1130 }, { 6677, 0x03b0 }, { 6682, 0x0111 },
+  { 6685, 0x7020 }, { 6689, 0xb051 }, { 6695, 0x1322 }, { 6700, 0x2001 },
+  { 6702, 0x1110 }, { 6705, 0x0190 }, { 6708, 0x0111 }, { 6711, 0x300b },
+  /* 0xc200 */
+  { 6716, 0xb011 }, { 6721, 0x9302 }, { 6726, 0xab01 }, { 6732, 0x0016 },
+  { 6735, 0x0100 }, { 6736, 0x0113 }, { 6740, 0x3021 }, { 6744, 0xb011 },
+  { 6749, 0x0302 }, { 6752, 0x2901 }, { 6756, 0x3130 }, { 6761, 0x02b0 },
+  { 6765, 0x0000 }, { 6765, 0x3000 }, { 6767, 0xb819 }, { 6774, 0x1b42 },
+  /* 0xc300 */
+  { 6780, 0x3301 }, { 6785, 0x1138 }, { 6790, 0x0330 }, { 6794, 0x0000 },
+  { 6794, 0x0020 }, { 6795, 0x0000 }, { 6795, 0x1300 }, { 6798, 0x3305 },
+  { 6804, 0x1110 }, { 6807, 0x0000 }, { 6807, 0x0000 }, { 6807, 0x0000 },
+  { 6807, 0x0001 }, { 6808, 0x9300 }, { 6812, 0x2305 }, { 6817, 0x0130 },
+  /* 0xc400 */
+  { 6820, 0x0100 }, { 6821, 0x0001 }, { 6822, 0x1010 }, { 6824, 0x3011 },
+  { 6828, 0x0100 }, { 6829, 0x0000 }, { 6829, 0x1130 }, { 6833, 0x0230 },
+  { 6836, 0x0001 }, { 6837, 0x1010 }, { 6839, 0x0000 }, { 6839, 0x1100 },
+  { 6841, 0x0000 }, { 6841, 0x0000 }, { 6841, 0x0200 }, { 6842, 0x8513 },
+  /* 0xc500 */
+  { 6848, 0x1003 }, { 6851, 0x1011 }, { 6854, 0x1300 }, { 6857, 0x2b01 },
+  { 6862, 0x7730 }, { 6870, 0x63b8 }, { 6878, 0x0113 }, { 6882, 0x303b },
+  { 6889, 0xb091 }, { 6895, 0x11a2 }, { 6900, 0x0201 }, { 6902, 0x7b30 },
+  { 6910, 0x57f0 }, { 6919, 0x0113 }, { 6923, 0x702b }, { 6930, 0xf0d1 },
+  /* 0xc600 */
+  { 6938, 0x11e3 }, { 6945, 0x1b01 }, { 6950, 0x7130 }, { 6956, 0x0ab9 },
+  { 6963, 0x0113 }, { 6967, 0x303b }, { 6974, 0x9001 }, { 6977, 0x1302 },
+  { 6981, 0x2b01 }, { 6986, 0x1130 }, { 6990, 0x02b0 }, { 6994, 0x0713 },
+  { 7000, 0x302b }, { 7006, 0x3011 }, { 7010, 0x1303 }, { 7015, 0x2301 },
+  /* 0xc700 */
+  { 7019, 0x1130 }, { 7023, 0x02b0 }, { 7027, 0x0113 }, { 7031, 0x30ab },
+  { 7038, 0xb411 }, { 7044, 0x11fe }, { 7053, 0x0901 }, { 7056, 0x7130 },
+  { 7062, 0x47b8 }, { 7070, 0x05d3 }, { 7077, 0x307b }, { 7085, 0xb011 },
+  { 7090, 0x5303 }, { 7096, 0x2101 }, { 7099, 0x1110 }, { 7102, 0x0000 },
+  /* 0xc800 */
+  { 7102, 0x0513 }, { 7107, 0x306b }, { 7114, 0xb011 }, { 7119, 0x1102 },
+  { 7122, 0x3301 }, { 7127, 0x0010 }, { 7128, 0x0000 }, { 7128, 0x0513 },
+  { 7133, 0x38eb }, { 7142, 0xa010 }, { 7145, 0x0102 }, { 7147, 0x3000 },
+  { 7149, 0x1110 }, { 7152, 0x02b0 }, { 7156, 0x0013 }, { 7159, 0x3020 },
+  /* 0xc900 */
+  { 7162, 0xb071 }, { 7169, 0x0102 }, { 7171, 0x1000 }, { 7172, 0x0010 },
+  { 7173, 0x0000 }, { 7173, 0x0113 }, { 7177, 0x100b }, { 7181, 0x1011 },
+  { 7184, 0x1300 }, { 7187, 0x2b01 }, { 7192, 0x0000 }, { 7192, 0x0000 },
+  { 7192, 0x0593 }, { 7198, 0x366b }, { 7207, 0xb095 }, { 7214, 0x1303 },
+  /* 0xca00 */
+  { 7219, 0x3b01 }, { 7225, 0x0110 }, { 7227, 0x0200 }, { 7228, 0x0000 },
+  { 7228, 0x3000 }, { 7230, 0xb011 }, { 7235, 0x0103 }, { 7238, 0x2000 },
+  { 7239, 0x0010 }, { 7240, 0x0100 }, { 7241, 0x0000 }, { 7241, 0x3000 },
+  { 7243, 0xb011 }, { 7248, 0x030a }, { 7252, 0x1001 }, { 7254, 0x0010 },
+  /* 0xcb00 */
+  { 7255, 0x0100 }, { 7256, 0x0111 }, { 7259, 0x0003 }, { 7261, 0x0000 },
+  { 7261, 0x1302 }, { 7265, 0x2301 }, { 7269, 0x0010 }, { 7270, 0x0300 },
+  { 7272, 0x0000 }, { 7272, 0x1000 }, { 7273, 0x0000 }, { 7273, 0x0100 },
+  { 7274, 0x0000 }, { 7274, 0x0010 }, { 7275, 0x0290 }, { 7278, 0x0000 },
+  /* 0xcc00 */
+  { 7278, 0x3000 }, { 7280, 0x3011 }, { 7284, 0x5386 }, { 7291, 0x7b01 },
+  { 7298, 0x1130 }, { 7302, 0x03b0 }, { 7307, 0x0151 }, { 7311, 0x0021 },
+  { 7313, 0x0000 }, { 7313, 0x1300 }, { 7316, 0x3b01 }, { 7322, 0x1130 },
+  { 7326, 0x02b0 }, { 7330, 0x0011 }, { 7332, 0x1010 }, { 7334, 0x0001 },
+  /* 0xcd00 */
+  { 7335, 0x1302 }, { 7339, 0x2b01 }, { 7344, 0x1110 }, { 7347, 0x0200 },
+  { 7348, 0x0000 }, { 7348, 0x1000 }, { 7349, 0xb011 }, { 7354, 0x0102 },
+  { 7356, 0x0100 }, { 7357, 0x1130 }, { 7361, 0x02b0 }, { 7365, 0x0001 },
+  { 7366, 0x1010 }, { 7368, 0x0001 }, { 7369, 0x1100 }, { 7371, 0x2b01 },
+  /* 0xce00 */
+  { 7376, 0x1110 }, { 7379, 0x0210 }, { 7381, 0x0113 }, { 7385, 0x002b },
+  { 7389, 0x0000 }, { 7389, 0x9300 }, { 7393, 0x2b03 }, { 7399, 0x1130 },
+  { 7403, 0x02b0 }, { 7407, 0x0113 }, { 7411, 0x303b }, { 7418, 0x0000 },
+  { 7418, 0x0002 }, { 7419, 0x0000 }, { 7419, 0x1930 }, { 7424, 0x03b0 },
+  /* 0xcf00 */
+  { 7429, 0x0113 }, { 7433, 0x102b }, { 7438, 0xb011 }, { 7443, 0x0103 },
+  { 7446, 0x0000 }, { 7446, 0x1130 }, { 7450, 0x02b0 }, { 7454, 0x0113 },
+  { 7458, 0x1021 }, { 7461, 0x0000 }, { 7461, 0x0102 }, { 7463, 0x0001 },
+  { 7464, 0x0010 }, { 7465, 0x0000 }, { 7465, 0x0113 }, { 7469, 0x102b },
+  /* 0xd000 */
+  { 7474, 0x0011 }, { 7476, 0x0102 }, { 7478, 0x2000 }, { 7479, 0x1130 },
+  { 7483, 0x02b0 }, { 7487, 0x0111 }, { 7490, 0x3001 }, { 7493, 0x3011 },
+  { 7497, 0x0002 }, { 7498, 0x0000 }, { 7498, 0x1130 }, { 7502, 0x02b0 },
+  { 7506, 0x0313 }, { 7511, 0x303b }, { 7518, 0xb011 }, { 7523, 0x0103 },
+  /* 0xd100 */
+  { 7526, 0x2000 }, { 7527, 0x0000 }, { 7527, 0x0000 }, { 7527, 0x0513 },
+  { 7532, 0x303b }, { 7539, 0xb011 }, { 7544, 0x1102 }, { 7547, 0x1000 },
+  { 7548, 0x0110 }, { 7550, 0x0000 }, { 7550, 0x0113 }, { 7554, 0x142b },
+  { 7560, 0x0001 }, { 7561, 0x0100 }, { 7562, 0x0000 }, { 7562, 0x0110 },
+  /* 0xd200 */
+  { 7564, 0x0280 }, { 7566, 0x0001 }, { 7567, 0x3000 }, { 7569, 0xb011 },
+  { 7574, 0x0102 }, { 7576, 0x1000 }, { 7577, 0x0010 }, { 7578, 0x0000 },
+  { 7578, 0x0113 }, { 7582, 0x1023 }, { 7586, 0x1011 }, { 7589, 0x9302 },
+  { 7594, 0x0b05 }, { 7599, 0x1110 }, { 7602, 0x0030 }, { 7604, 0x0113 },
+  /* 0xd300 */
+  { 7608, 0x702b }, { 7615, 0xb051 }, { 7621, 0x1323 }, { 7627, 0x3b01 },
+  { 7633, 0x0030 }, { 7635, 0x0000 }, { 7635, 0x0000 }, { 7635, 0x3000 },
+  { 7637, 0xb011 }, { 7642, 0x1303 }, { 7647, 0x2b01 }, { 7652, 0x1110 },
+  { 7655, 0x0330 }, { 7659, 0x0101 }, { 7661, 0x300a }, { 7665, 0xb011 },
+  /* 0xd400 */
+  { 7670, 0x0102 }, { 7672, 0x2000 }, { 7673, 0x0000 }, { 7673, 0x0000 },
+  { 7673, 0x0011 }, { 7675, 0x1000 }, { 7676, 0xa011 }, { 7680, 0x9300 },
+  { 7684, 0x2b05 }, { 7690, 0x0010 }, { 7691, 0x0200 }, { 7692, 0x0000 },
+  { 7692, 0x1000 }, { 7693, 0x9011 }, { 7697, 0x1100 }, { 7699, 0x2901 },
+  /* 0xd500 */
+  { 7703, 0x1110 }, { 7706, 0x00b0 }, { 7709, 0x0000 }, { 7709, 0x3000 },
+  { 7711, 0xb011 }, { 7716, 0x1302 }, { 7720, 0x2b21 }, { 7726, 0x1130 },
+  { 7730, 0x03b0 }, { 7735, 0x0001 }, { 7736, 0x0020 }, { 7737, 0x0000 },
+  { 7737, 0x1300 }, { 7740, 0x2b05 }, { 7746, 0x1130 }, { 7750, 0x02b0 },
+  /* 0xd600 */
+  { 7754, 0x0113 }, { 7758, 0x103b }, { 7764, 0x2011 }, { 7767, 0x1300 },
+  { 7770, 0x2b21 }, { 7776, 0x1132 }, { 7781, 0x0280 }, { 7783, 0x0013 },
+  { 7786, 0x3028 }, { 7790, 0xa011 }, { 7794, 0x1102 }, { 7797, 0x0a01 },
+  { 7800, 0x1130 }, { 7804, 0x0292 }, { 7808, 0x0111 }, { 7811, 0x3021 },
+  /* 0xd700 */
+  { 7815, 0x0011 }, { 7817, 0x1302 }, { 7821, 0x2b01 }, { 7826, 0x1130 },
+  { 7830, 0x0290 }, { 7833, 0x03d3 }, { 7840, 0x122b }, { 7846, 0x3011 },
+  { 7850, 0x1302 }, { 7854, 0x2b01 },
+};
+static const Summary16 ksc5601_uni2indx_pagef9[17] = {
+  /* 0xf900 */
+  { 7859, 0xffff }, { 7875, 0xffff }, { 7891, 0xffff }, { 7907, 0xffff },
+  { 7923, 0xffff }, { 7939, 0xffff }, { 7955, 0xffff }, { 7971, 0xffff },
+  { 7987, 0xffff }, { 8003, 0xffff }, { 8019, 0xffff }, { 8035, 0xffff },
+  { 8051, 0xffff }, { 8067, 0xffff }, { 8083, 0xffff }, { 8099, 0xffff },
+  /* 0xfa00 */
+  { 8115, 0x0fff },
+};
+static const Summary16 ksc5601_uni2indx_pageff[15] = {
+  /* 0xff00 */
+  { 8127, 0xfffe }, { 8142, 0xffff }, { 8158, 0xffff }, { 8174, 0xffff },
+  { 8190, 0xffff }, { 8206, 0x7fff }, { 8221, 0x0000 }, { 8221, 0x0000 },
+  { 8221, 0x0000 }, { 8221, 0x0000 }, { 8221, 0x0000 }, { 8221, 0x0000 },
+  { 8221, 0x0000 }, { 8221, 0x0000 }, { 8221, 0x006f },
+};
+
+static int
+ksc5601_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 2) {
+    const Summary16 *summary = NULL;
+    if (wc >= 0x0000 && wc < 0x0460)
+      summary = &ksc5601_uni2indx_page00[(wc>>4)];
+    else if (wc >= 0x2000 && wc < 0x2670)
+      summary = &ksc5601_uni2indx_page20[(wc>>4)-0x200];
+    else if (wc >= 0x3000 && wc < 0x33e0)
+      summary = &ksc5601_uni2indx_page30[(wc>>4)-0x300];
+    else if (wc >= 0x4e00 && wc < 0x9fa0)
+      summary = &ksc5601_uni2indx_page4e[(wc>>4)-0x4e0];
+    else if (wc >= 0xac00 && wc < 0xd7a0)
+      summary = &ksc5601_uni2indx_pageac[(wc>>4)-0xac0];
+    else if (wc >= 0xf900 && wc < 0xfa10)
+      summary = &ksc5601_uni2indx_pagef9[(wc>>4)-0xf90];
+    else if (wc >= 0xff00 && wc < 0xfff0)
+      summary = &ksc5601_uni2indx_pageff[(wc>>4)-0xff0];
+    if (summary) {
+      unsigned short used = summary->used;
+      unsigned int i = wc & 0x0f;
+      if (used & ((unsigned short) 1 << i)) {
+        unsigned short c;
+        /* Keep in `used' only the bits 0..i-1. */
+        used &= ((unsigned short) 1 << i) - 1;
+        /* Add `summary->indx' and the number of bits set in `used'. */
+        used = (used & 0x5555) + ((used & 0xaaaa) >> 1);
+        used = (used & 0x3333) + ((used & 0xcccc) >> 2);
+        used = (used & 0x0f0f) + ((used & 0xf0f0) >> 4);
+        used = (used & 0x00ff) + (used >> 8);
+        c = ksc5601_2charset[summary->indx + used];
+        r[0] = (c >> 8); r[1] = (c & 0xff);
+        return 2;
+      }
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/libiconv.rc b/graf2d/win32gdk/gdk/src/iconv/libiconv.rc
new file mode 100644
index 00000000000..effdb1eff2c
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/libiconv.rc
@@ -0,0 +1,38 @@
+/* Resources for iconv.dll */
+
+#include <winver.h>
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION 1,14,0,0
+ PRODUCTVERSION 1,14,0,0
+ FILEFLAGSMASK 0x3fL /* VS_FFI_FILEFLAGSMASK */
+#ifdef _DEBUG
+ FILEFLAGS 0x1L  /* VS_FF_DEBUG */
+#else
+ FILEFLAGS 0x0L
+#endif
+ FILEOS 0x10004L  /* VOS_DOS_WINDOWS32 */
+ FILETYPE 0x2L  /* VFT_DLL */
+ FILESUBTYPE 0x0L  /* VFT2_UNKNOWN */
+BEGIN
+    BLOCK "StringFileInfo"
+    BEGIN
+        BLOCK "04090000"  /* Lang = US English, Charset = ASCII */
+        BEGIN
+            VALUE "Comments", "This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License. You should have received a copy of the GNU Library General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA\0"
+            VALUE "CompanyName", "Free Software Foundation\0"
+            VALUE "FileDescription", "LGPLed libiconv for Windows NT/2000/XP/Vista and Windows 95/98/ME\0"
+            VALUE "FileVersion", PACKAGE_VERSION_STRING "\0"
+            VALUE "InternalName", "iconv.dll\0"
+            VALUE "LegalCopyright", "Copyright (C) 1999-2007\0"
+            VALUE "LegalTrademarks", "\0"
+            VALUE "OriginalFilename", "iconv.dll\0"
+            VALUE "ProductName", "libiconv: character set conversion library\0"
+            VALUE "ProductVersion", PACKAGE_VERSION_STRING "\0"
+        END
+    END
+    BLOCK "VarFileInfo"
+    BEGIN
+        VALUE "Translation", 0x0409, 0  /* US English, ASCII */
+    END
+END
diff --git a/graf2d/win32gdk/gdk/src/iconv/localcharset.c b/graf2d/win32gdk/gdk/src/iconv/localcharset.c
new file mode 100644
index 00000000000..31b0e93a369
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/localcharset.c
@@ -0,0 +1,502 @@
+/* Determine a canonical name for the current locale's character encoding.
+
+   Copyright (C) 2000-2006, 2008-2009 Free Software Foundation, Inc.
+
+   This program is free software; you can redistribute it and/or modify it
+   under the terms of the GNU Library General Public License as published
+   by the Free Software Foundation; either version 2, or (at your option)
+   any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Library General Public License for more details.
+
+   You should have received a copy of the GNU Library General Public
+   License along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+   USA.  */
+
+/* Written by Bruno Haible <bruno@clisp.org>.  */
+
+#include <config.h>
+
+/* Specification.  */
+#include "localcharset.h"
+
+#include <stddef.h>
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+
+#if defined __APPLE__ && defined __MACH__ && HAVE_LANGINFO_CODESET
+# define DARWIN7 /* Darwin 7 or newer, i.e. MacOS X 10.3 or newer */
+#endif
+
+#if defined _WIN32 || defined __WIN32__
+# define WIN32_NATIVE
+#endif
+
+#if defined __EMX__
+/* Assume EMX program runs on OS/2, even if compiled under DOS.  */
+# ifndef OS2
+#  define OS2
+# endif
+#endif
+
+#if !defined WIN32_NATIVE
+# if HAVE_LANGINFO_CODESET
+#  include <langinfo.h>
+# else
+#  if 0 /* see comment below */
+#   include <locale.h>
+#  endif
+# endif
+# ifdef __CYGWIN__
+#  define WIN32_LEAN_AND_MEAN
+#  include <windows.h>
+# endif
+#elif defined WIN32_NATIVE
+# define WIN32_LEAN_AND_MEAN
+# include <windows.h>
+#endif
+#if defined OS2
+# define INCL_DOS
+# include <os2.h>
+#endif
+
+#if ENABLE_RELOCATABLE
+# include "relocatable.h"
+#else
+# define relocate(pathname) (pathname)
+#endif
+
+#if NOT_FOR_MSVC
+/* Get LIBDIR.  */
+#ifndef LIBDIR
+# include "configmake.h"
+#endif
+#endif
+
+#if defined _WIN32 || defined __WIN32__ || defined __CYGWIN__ || defined __EMX__ || defined __DJGPP__
+  /* Win32, Cygwin, OS/2, DOS */
+# define ISSLASH(C) ((C) == '/' || (C) == '\\')
+#endif
+
+#ifndef DIRECTORY_SEPARATOR
+# define DIRECTORY_SEPARATOR '/'
+#endif
+
+#ifndef ISSLASH
+# define ISSLASH(C) ((C) == DIRECTORY_SEPARATOR)
+#endif
+
+#if HAVE_DECL_GETC_UNLOCKED
+# undef getc
+# define getc getc_unlocked
+#endif
+
+/* The following static variable is declared 'volatile' to avoid a
+   possible multithread problem in the function get_charset_aliases. If we
+   are running in a threaded environment, and if two threads initialize
+   'charset_aliases' simultaneously, both will produce the same value,
+   and everything will be ok if the two assignments to 'charset_aliases'
+   are atomic. But I don't know what will happen if the two assignments mix.  */
+#if __STDC__ != 1
+# define volatile /* empty */
+#endif
+/* Pointer to the contents of the charset.alias file, if it has already been
+   read, else NULL.  Its format is:
+   ALIAS_1 '\0' CANONICAL_1 '\0' ... ALIAS_n '\0' CANONICAL_n '\0' '\0'  */
+static const char * volatile charset_aliases;
+
+/* Return a pointer to the contents of the charset.alias file.  */
+static const char *
+get_charset_aliases (void)
+{
+  const char *cp;
+
+  cp = charset_aliases;
+  if (cp == NULL)
+    {
+#if !(defined DARWIN7 || defined VMS || defined WIN32_NATIVE || defined __CYGWIN__)
+      FILE *fp;
+      const char *dir;
+      const char *base = "charset.alias";
+      char *file_name;
+
+      /* Make it possible to override the charset.alias location.  This is
+	 necessary for running the testsuite before "make install".  */
+      dir = getenv ("CHARSETALIASDIR");
+      if (dir == NULL || dir[0] == '\0')
+	dir = relocate (LIBDIR);
+
+      /* Concatenate dir and base into freshly allocated file_name.  */
+      {
+	size_t dir_len = strlen (dir);
+	size_t base_len = strlen (base);
+	int add_slash = (dir_len > 0 && !ISSLASH (dir[dir_len - 1]));
+	file_name = (char *) malloc (dir_len + add_slash + base_len + 1);
+	if (file_name != NULL)
+	  {
+	    memcpy (file_name, dir, dir_len);
+	    if (add_slash)
+	      file_name[dir_len] = DIRECTORY_SEPARATOR;
+	    memcpy (file_name + dir_len + add_slash, base, base_len + 1);
+	  }
+      }
+
+      if (file_name == NULL || (fp = fopen (file_name, "r")) == NULL)
+	/* Out of memory or file not found, treat it as empty.  */
+	cp = "";
+      else
+	{
+	  /* Parse the file's contents.  */
+	  char *res_ptr = NULL;
+	  size_t res_size = 0;
+
+	  for (;;)
+	    {
+	      int c;
+	      char buf1[50+1];
+	      char buf2[50+1];
+	      size_t l1, l2;
+	      char *old_res_ptr;
+
+	      c = getc (fp);
+	      if (c == EOF)
+		break;
+	      if (c == '\n' || c == ' ' || c == '\t')
+		continue;
+	      if (c == '#')
+		{
+		  /* Skip comment, to end of line.  */
+		  do
+		    c = getc (fp);
+		  while (!(c == EOF || c == '\n'));
+		  if (c == EOF)
+		    break;
+		  continue;
+		}
+	      ungetc (c, fp);
+	      if (fscanf (fp, "%50s %50s", buf1, buf2) < 2)
+		break;
+	      l1 = strlen (buf1);
+	      l2 = strlen (buf2);
+	      old_res_ptr = res_ptr;
+	      if (res_size == 0)
+		{
+		  res_size = l1 + 1 + l2 + 1;
+		  res_ptr = (char *) malloc (res_size + 1);
+		}
+	      else
+		{
+		  res_size += l1 + 1 + l2 + 1;
+		  res_ptr = (char *) realloc (res_ptr, res_size + 1);
+		}
+	      if (res_ptr == NULL)
+		{
+		  /* Out of memory. */
+		  res_size = 0;
+		  if (old_res_ptr != NULL)
+		    free (old_res_ptr);
+		  break;
+		}
+	      strcpy (res_ptr + res_size - (l2 + 1) - (l1 + 1), buf1);
+	      strcpy (res_ptr + res_size - (l2 + 1), buf2);
+	    }
+	  fclose (fp);
+	  if (res_size == 0)
+	    cp = "";
+	  else
+	    {
+	      *(res_ptr + res_size) = '\0';
+	      cp = res_ptr;
+	    }
+	}
+
+      if (file_name != NULL)
+	free (file_name);
+
+#else
+
+# if defined DARWIN7
+      /* To avoid the trouble of installing a file that is shared by many
+	 GNU packages -- many packaging systems have problems with this --,
+	 simply inline the aliases here.  */
+      cp = "ISO8859-1" "\0" "ISO-8859-1" "\0"
+	   "ISO8859-2" "\0" "ISO-8859-2" "\0"
+	   "ISO8859-4" "\0" "ISO-8859-4" "\0"
+	   "ISO8859-5" "\0" "ISO-8859-5" "\0"
+	   "ISO8859-7" "\0" "ISO-8859-7" "\0"
+	   "ISO8859-9" "\0" "ISO-8859-9" "\0"
+	   "ISO8859-13" "\0" "ISO-8859-13" "\0"
+	   "ISO8859-15" "\0" "ISO-8859-15" "\0"
+	   "KOI8-R" "\0" "KOI8-R" "\0"
+	   "KOI8-U" "\0" "KOI8-U" "\0"
+	   "CP866" "\0" "CP866" "\0"
+	   "CP949" "\0" "CP949" "\0"
+	   "CP1131" "\0" "CP1131" "\0"
+	   "CP1251" "\0" "CP1251" "\0"
+	   "eucCN" "\0" "GB2312" "\0"
+	   "GB2312" "\0" "GB2312" "\0"
+	   "eucJP" "\0" "EUC-JP" "\0"
+	   "eucKR" "\0" "EUC-KR" "\0"
+	   "Big5" "\0" "BIG5" "\0"
+	   "Big5HKSCS" "\0" "BIG5-HKSCS" "\0"
+	   "GBK" "\0" "GBK" "\0"
+	   "GB18030" "\0" "GB18030" "\0"
+	   "SJIS" "\0" "SHIFT_JIS" "\0"
+	   "ARMSCII-8" "\0" "ARMSCII-8" "\0"
+	   "PT154" "\0" "PT154" "\0"
+	 /*"ISCII-DEV" "\0" "?" "\0"*/
+	   "*" "\0" "UTF-8" "\0";
+# endif
+
+# if defined VMS
+      /* To avoid the troubles of an extra file charset.alias_vms in the
+	 sources of many GNU packages, simply inline the aliases here.  */
+      /* The list of encodings is taken from the OpenVMS 7.3-1 documentation
+	 "Compaq C Run-Time Library Reference Manual for OpenVMS systems"
+	 section 10.7 "Handling Different Character Sets".  */
+      cp = "ISO8859-1" "\0" "ISO-8859-1" "\0"
+	   "ISO8859-2" "\0" "ISO-8859-2" "\0"
+	   "ISO8859-5" "\0" "ISO-8859-5" "\0"
+	   "ISO8859-7" "\0" "ISO-8859-7" "\0"
+	   "ISO8859-8" "\0" "ISO-8859-8" "\0"
+	   "ISO8859-9" "\0" "ISO-8859-9" "\0"
+	   /* Japanese */
+	   "eucJP" "\0" "EUC-JP" "\0"
+	   "SJIS" "\0" "SHIFT_JIS" "\0"
+	   "DECKANJI" "\0" "DEC-KANJI" "\0"
+	   "SDECKANJI" "\0" "EUC-JP" "\0"
+	   /* Chinese */
+	   "eucTW" "\0" "EUC-TW" "\0"
+	   "DECHANYU" "\0" "DEC-HANYU" "\0"
+	   "DECHANZI" "\0" "GB2312" "\0"
+	   /* Korean */
+	   "DECKOREAN" "\0" "EUC-KR" "\0";
+# endif
+
+# if defined WIN32_NATIVE || defined __CYGWIN__
+      /* To avoid the troubles of installing a separate file in the same
+	 directory as the DLL and of retrieving the DLL's directory at
+	 runtime, simply inline the aliases here.  */
+
+      cp = "CP936" "\0" "GBK" "\0"
+	   "CP1361" "\0" "JOHAB" "\0"
+	   "CP20127" "\0" "ASCII" "\0"
+	   "CP20866" "\0" "KOI8-R" "\0"
+	   "CP20936" "\0" "GB2312" "\0"
+	   "CP21866" "\0" "KOI8-RU" "\0"
+	   "CP28591" "\0" "ISO-8859-1" "\0"
+	   "CP28592" "\0" "ISO-8859-2" "\0"
+	   "CP28593" "\0" "ISO-8859-3" "\0"
+	   "CP28594" "\0" "ISO-8859-4" "\0"
+	   "CP28595" "\0" "ISO-8859-5" "\0"
+	   "CP28596" "\0" "ISO-8859-6" "\0"
+	   "CP28597" "\0" "ISO-8859-7" "\0"
+	   "CP28598" "\0" "ISO-8859-8" "\0"
+	   "CP28599" "\0" "ISO-8859-9" "\0"
+	   "CP28605" "\0" "ISO-8859-15" "\0"
+	   "CP38598" "\0" "ISO-8859-8" "\0"
+	   "CP51932" "\0" "EUC-JP" "\0"
+	   "CP51936" "\0" "GB2312" "\0"
+	   "CP51949" "\0" "EUC-KR" "\0"
+	   "CP51950" "\0" "EUC-TW" "\0"
+	   "CP54936" "\0" "GB18030" "\0"
+	   "CP65001" "\0" "UTF-8" "\0";
+# endif
+#endif
+
+      charset_aliases = cp;
+    }
+
+  return cp;
+}
+
+/* Determine the current locale's character encoding, and canonicalize it
+   into one of the canonical names listed in config.charset.
+   The result must not be freed; it is statically allocated.
+   If the canonical name cannot be determined, the result is a non-canonical
+   name.  */
+
+#ifdef STATIC
+STATIC
+#endif
+const char *
+locale_charset (void)
+{
+  const char *codeset;
+  const char *aliases;
+
+#if !(defined WIN32_NATIVE || defined OS2)
+
+# if HAVE_LANGINFO_CODESET
+
+  /* Most systems support nl_langinfo (CODESET) nowadays.  */
+  codeset = nl_langinfo (CODESET);
+
+#  ifdef __CYGWIN__
+  /* Cygwin 2006 does not have locales.  nl_langinfo (CODESET) always
+     returns "US-ASCII".  As long as this is not fixed, return the suffix
+     of the locale name from the environment variables (if present) or
+     the codepage as a number.  */
+  if (codeset != NULL && strcmp (codeset, "US-ASCII") == 0)
+    {
+      const char *locale;
+      static char buf[2 + 10 + 1];
+
+      locale = getenv ("LC_ALL");
+      if (locale == NULL || locale[0] == '\0')
+	{
+	  locale = getenv ("LC_CTYPE");
+	  if (locale == NULL || locale[0] == '\0')
+	    locale = getenv ("LANG");
+	}
+      if (locale != NULL && locale[0] != '\0')
+	{
+	  /* If the locale name contains an encoding after the dot, return
+	     it.  */
+	  const char *dot = strchr (locale, '.');
+
+	  if (dot != NULL)
+	    {
+	      const char *modifier;
+
+	      dot++;
+	      /* Look for the possible @... trailer and remove it, if any.  */
+	      modifier = strchr (dot, '@');
+	      if (modifier == NULL)
+		return dot;
+	      if (modifier - dot < sizeof (buf))
+		{
+		  memcpy (buf, dot, modifier - dot);
+		  buf [modifier - dot] = '\0';
+		  return buf;
+		}
+	    }
+	}
+
+      /* Woe32 has a function returning the locale's codepage as a number.  */
+      sprintf (buf, "CP%u", GetACP ());
+      codeset = buf;
+    }
+#  endif
+
+# else
+
+  /* On old systems which lack it, use setlocale or getenv.  */
+  const char *locale = NULL;
+
+  /* But most old systems don't have a complete set of locales.  Some
+     (like SunOS 4 or DJGPP) have only the C locale.  Therefore we don't
+     use setlocale here; it would return "C" when it doesn't support the
+     locale name the user has set.  */
+#  if 0
+  locale = setlocale (LC_CTYPE, NULL);
+#  endif
+  if (locale == NULL || locale[0] == '\0')
+    {
+      locale = getenv ("LC_ALL");
+      if (locale == NULL || locale[0] == '\0')
+	{
+	  locale = getenv ("LC_CTYPE");
+	  if (locale == NULL || locale[0] == '\0')
+	    locale = getenv ("LANG");
+	}
+    }
+
+  /* On some old systems, one used to set locale = "iso8859_1". On others,
+     you set it to "language_COUNTRY.charset". In any case, we resolve it
+     through the charset.alias file.  */
+  codeset = locale;
+
+# endif
+
+#elif defined WIN32_NATIVE
+
+  static char buf[2 + 10 + 1];
+
+  /* Woe32 has a function returning the locale's codepage as a number.  */
+  sprintf (buf, "CP%u", GetACP ());
+  codeset = buf;
+
+#elif defined OS2
+
+  const char *locale;
+  static char buf[2 + 10 + 1];
+  ULONG cp[3];
+  ULONG cplen;
+
+  /* Allow user to override the codeset, as set in the operating system,
+     with standard language environment variables.  */
+  locale = getenv ("LC_ALL");
+  if (locale == NULL || locale[0] == '\0')
+    {
+      locale = getenv ("LC_CTYPE");
+      if (locale == NULL || locale[0] == '\0')
+	locale = getenv ("LANG");
+    }
+  if (locale != NULL && locale[0] != '\0')
+    {
+      /* If the locale name contains an encoding after the dot, return it.  */
+      const char *dot = strchr (locale, '.');
+
+      if (dot != NULL)
+	{
+	  const char *modifier;
+
+	  dot++;
+	  /* Look for the possible @... trailer and remove it, if any.  */
+	  modifier = strchr (dot, '@');
+	  if (modifier == NULL)
+	    return dot;
+	  if (modifier - dot < sizeof (buf))
+	    {
+	      memcpy (buf, dot, modifier - dot);
+	      buf [modifier - dot] = '\0';
+	      return buf;
+	    }
+	}
+
+      /* Resolve through the charset.alias file.  */
+      codeset = locale;
+    }
+  else
+    {
+      /* OS/2 has a function returning the locale's codepage as a number.  */
+      if (DosQueryCp (sizeof (cp), cp, &cplen))
+	codeset = "";
+      else
+	{
+	  sprintf (buf, "CP%u", cp[0]);
+	  codeset = buf;
+	}
+    }
+
+#endif
+
+  if (codeset == NULL)
+    /* The canonical name cannot be determined.  */
+    codeset = "";
+
+  /* Resolve alias. */
+  for (aliases = get_charset_aliases ();
+       *aliases != '\0';
+       aliases += strlen (aliases) + 1, aliases += strlen (aliases) + 1)
+    if (strcmp (codeset, aliases) == 0
+	|| (aliases[0] == '*' && aliases[1] == '\0'))
+      {
+	codeset = aliases + strlen (aliases) + 1;
+	break;
+      }
+
+  /* Don't return an empty string.  GNU libc and GNU libiconv interpret
+     the empty string as denoting "the locale's character encoding",
+     thus GNU libiconv would call this function a second time.  */
+  if (codeset[0] == '\0')
+    codeset = "ASCII";
+
+  return codeset;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/localcharset.h b/graf2d/win32gdk/gdk/src/iconv/localcharset.h
new file mode 100644
index 00000000000..32faedacdf4
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/localcharset.h
@@ -0,0 +1,49 @@
+/* Determine a canonical name for the current locale's character encoding.
+   Copyright (C) 2000-2003 Free Software Foundation, Inc.
+   This file is part of the GNU CHARSET Library.
+
+   This program is free software; you can redistribute it and/or modify it
+   under the terms of the GNU Library General Public License as published
+   by the Free Software Foundation; either version 2, or (at your option)
+   any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Library General Public License for more details.
+
+   You should have received a copy of the GNU Library General Public
+   License along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+   USA.  */
+
+#ifndef _LOCALCHARSET_H
+#define _LOCALCHARSET_H
+
+#ifdef BUILDING_LIBCHARSET
+#define LIBCHARSET_DLL_EXPORTED __declspec(dllexport)
+#elif USING_STATIC_LIBICONV
+#define LIBCHARSET_DLL_EXPORTED
+#else
+#define LIBCHARSET_DLL_EXPORTED __declspec(dllimport)
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+/* Determine the current locale's character encoding, and canonicalize it
+   into one of the canonical names listed in config.charset.
+   The result must not be freed; it is statically allocated.
+   If the canonical name cannot be determined, the result is a non-canonical
+   name.  */
+extern LIBCHARSET_DLL_EXPORTED const char * locale_charset (void);
+
+
+#ifdef __cplusplus
+}
+#endif
+
+
+#endif /* _LOCALCHARSET_H */
diff --git a/graf2d/win32gdk/gdk/src/iconv/loop_unicode.h b/graf2d/win32gdk/gdk/src/iconv/loop_unicode.h
new file mode 100644
index 00000000000..1c787b5f7d5
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/loop_unicode.h
@@ -0,0 +1,527 @@
+/*
+ * Copyright (C) 1999-2003, 2005-2006, 2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/* This file defines the conversion loop via Unicode as a pivot encoding. */
+
+/* Attempt to transliterate wc. Return code as in xxx_wctomb. */
+static int unicode_transliterate (conv_t cd, ucs4_t wc,
+                                  unsigned char* outptr, size_t outleft)
+{
+  if (cd->oflags & HAVE_HANGUL_JAMO) {
+    /* Decompose Hangul into Jamo. Use double-width Jamo (contained
+       in all Korean encodings and ISO-2022-JP-2), not half-width Jamo
+       (contained in Unicode only). */
+    ucs4_t buf[3];
+    int ret = johab_hangul_decompose(cd,buf,wc);
+    if (ret != RET_ILUNI) {
+      /* we know 1 <= ret <= 3 */
+      state_t backup_state = cd->ostate;
+      unsigned char* backup_outptr = outptr;
+      size_t backup_outleft = outleft;
+      int i, sub_outcount;
+      for (i = 0; i < ret; i++) {
+        if (outleft == 0) {
+          sub_outcount = RET_TOOSMALL;
+          goto johab_hangul_failed;
+        }
+        sub_outcount = cd->ofuncs.xxx_wctomb(cd,outptr,buf[i],outleft);
+        if (sub_outcount <= RET_ILUNI)
+          goto johab_hangul_failed;
+        if (!(sub_outcount <= outleft)) abort();
+        outptr += sub_outcount; outleft -= sub_outcount;
+      }
+      return outptr-backup_outptr;
+    johab_hangul_failed:
+      cd->ostate = backup_state;
+      outptr = backup_outptr;
+      outleft = backup_outleft;
+      if (sub_outcount != RET_ILUNI)
+        return RET_TOOSMALL;
+    }
+  }
+  {
+    /* Try to use a variant, but postfix it with
+       U+303E IDEOGRAPHIC VARIATION INDICATOR
+       (cf. Ken Lunde's "CJKV information processing", p. 188). */
+    int indx = -1;
+    if (wc == 0x3006)
+      indx = 0;
+    else if (wc == 0x30f6)
+      indx = 1;
+    else if (wc >= 0x4e00 && wc < 0xa000)
+      indx = cjk_variants_indx[wc-0x4e00];
+    if (indx >= 0) {
+      for (;; indx++) {
+        ucs4_t buf[2];
+        unsigned short variant = cjk_variants[indx];
+        unsigned short last = variant & 0x8000;
+        variant &= 0x7fff;
+        variant += 0x3000;
+        buf[0] = variant; buf[1] = 0x303e;
+        {
+          state_t backup_state = cd->ostate;
+          unsigned char* backup_outptr = outptr;
+          size_t backup_outleft = outleft;
+          int i, sub_outcount;
+          for (i = 0; i < 2; i++) {
+            if (outleft == 0) {
+              sub_outcount = RET_TOOSMALL;
+              goto variant_failed;
+            }
+            sub_outcount = cd->ofuncs.xxx_wctomb(cd,outptr,buf[i],outleft);
+            if (sub_outcount <= RET_ILUNI)
+              goto variant_failed;
+            if (!(sub_outcount <= outleft)) abort();
+            outptr += sub_outcount; outleft -= sub_outcount;
+          }
+          return outptr-backup_outptr;
+        variant_failed:
+          cd->ostate = backup_state;
+          outptr = backup_outptr;
+          outleft = backup_outleft;
+          if (sub_outcount != RET_ILUNI)
+            return RET_TOOSMALL;
+        }
+        if (last)
+          break;
+      }
+    }
+  }
+  if (wc >= 0x2018 && wc <= 0x201a) {
+    /* Special case for quotation marks 0x2018, 0x2019, 0x201a */
+    ucs4_t substitute =
+      (cd->oflags & HAVE_QUOTATION_MARKS
+       ? (wc == 0x201a ? 0x2018 : wc)
+       : (cd->oflags & HAVE_ACCENTS
+          ? (wc==0x2019 ? 0x00b4 : 0x0060) /* use accents */
+          : 0x0027 /* use apostrophe */
+      )  );
+    int outcount = cd->ofuncs.xxx_wctomb(cd,outptr,substitute,outleft);
+    if (outcount != RET_ILUNI)
+      return outcount;
+  }
+  {
+    /* Use the transliteration table. */
+    int indx = translit_index(wc);
+    if (indx >= 0) {
+      const unsigned int * cp = &translit_data[indx];
+      unsigned int num = *cp++;
+      state_t backup_state = cd->ostate;
+      unsigned char* backup_outptr = outptr;
+      size_t backup_outleft = outleft;
+      unsigned int i;
+      int sub_outcount;
+      for (i = 0; i < num; i++) {
+        if (outleft == 0) {
+          sub_outcount = RET_TOOSMALL;
+          goto translit_failed;
+        }
+        sub_outcount = cd->ofuncs.xxx_wctomb(cd,outptr,cp[i],outleft);
+        if (sub_outcount == RET_ILUNI)
+          /* Recursive transliteration. */
+          sub_outcount = unicode_transliterate(cd,cp[i],outptr,outleft);
+        if (sub_outcount <= RET_ILUNI)
+          goto translit_failed;
+        if (!(sub_outcount <= outleft)) abort();
+        outptr += sub_outcount; outleft -= sub_outcount;
+      }
+      return outptr-backup_outptr;
+    translit_failed:
+      cd->ostate = backup_state;
+      outptr = backup_outptr;
+      outleft = backup_outleft;
+      if (sub_outcount != RET_ILUNI)
+        return RET_TOOSMALL;
+    }
+  }
+  return RET_ILUNI;
+}
+
+#ifndef LIBICONV_PLUG
+
+struct uc_to_mb_fallback_locals {
+  unsigned char* l_outbuf;
+  size_t l_outbytesleft;
+  int l_errno;
+};
+
+static void uc_to_mb_write_replacement (const char *buf, size_t buflen,
+                                        void* callback_arg)
+{
+  struct uc_to_mb_fallback_locals * plocals =
+    (struct uc_to_mb_fallback_locals *) callback_arg;
+  /* Do nothing if already encountered an error in a previous call. */
+  if (plocals->l_errno == 0) {
+    /* Attempt to copy the passed buffer to the output buffer. */
+    if (plocals->l_outbytesleft < buflen)
+      plocals->l_errno = E2BIG;
+    else {
+      memcpy(plocals->l_outbuf, buf, buflen);
+      plocals->l_outbuf += buflen;
+      plocals->l_outbytesleft -= buflen;
+    }
+  }
+}
+
+struct mb_to_uc_fallback_locals {
+  conv_t l_cd;
+  unsigned char* l_outbuf;
+  size_t l_outbytesleft;
+  int l_errno;
+};
+
+static void mb_to_uc_write_replacement (const unsigned int *buf, size_t buflen,
+                                        void* callback_arg)
+{
+  struct mb_to_uc_fallback_locals * plocals =
+    (struct mb_to_uc_fallback_locals *) callback_arg;
+  /* Do nothing if already encountered an error in a previous call. */
+  if (plocals->l_errno == 0) {
+    /* Attempt to convert the passed buffer to the target encoding. */
+    conv_t cd = plocals->l_cd;
+    unsigned char* outptr = plocals->l_outbuf;
+    size_t outleft = plocals->l_outbytesleft;
+    for (; buflen > 0; buf++, buflen--) {
+      ucs4_t wc = *buf;
+      int outcount;
+      if (outleft == 0) {
+        plocals->l_errno = E2BIG;
+        break;
+      }
+      outcount = cd->ofuncs.xxx_wctomb(cd,outptr,wc,outleft);
+      if (outcount != RET_ILUNI)
+        goto outcount_ok;
+      /* Handle Unicode tag characters (range U+E0000..U+E007F). */
+      if ((wc >> 7) == (0xe0000 >> 7))
+        goto outcount_zero;
+      /* Try transliteration. */
+      if (cd->transliterate) {
+        outcount = unicode_transliterate(cd,wc,outptr,outleft);
+        if (outcount != RET_ILUNI)
+          goto outcount_ok;
+      }
+      if (cd->discard_ilseq) {
+        outcount = 0;
+        goto outcount_ok;
+      }
+      #ifndef LIBICONV_PLUG
+      else if (cd->fallbacks.uc_to_mb_fallback != NULL) {
+        struct uc_to_mb_fallback_locals locals;
+        locals.l_outbuf = outptr;
+        locals.l_outbytesleft = outleft;
+        locals.l_errno = 0;
+        cd->fallbacks.uc_to_mb_fallback(wc,
+                                        uc_to_mb_write_replacement,
+                                        &locals,
+                                        cd->fallbacks.data);
+        if (locals.l_errno != 0) {
+          plocals->l_errno = locals.l_errno;
+          break;
+        }
+        outptr = locals.l_outbuf;
+        outleft = locals.l_outbytesleft;
+        outcount = 0;
+        goto outcount_ok;
+      }
+      #endif
+      outcount = cd->ofuncs.xxx_wctomb(cd,outptr,0xFFFD,outleft);
+      if (outcount != RET_ILUNI)
+        goto outcount_ok;
+      plocals->l_errno = EILSEQ;
+      break;
+    outcount_ok:
+      if (outcount < 0) {
+        plocals->l_errno = E2BIG;
+        break;
+      }
+      #ifndef LIBICONV_PLUG
+      if (cd->hooks.uc_hook)
+        (*cd->hooks.uc_hook)(wc, cd->hooks.data);
+      #endif
+      if (!(outcount <= outleft)) abort();
+      outptr += outcount; outleft -= outcount;
+    outcount_zero: ;
+    }
+    plocals->l_outbuf = outptr;
+    plocals->l_outbytesleft = outleft;
+  }
+}
+
+#endif /* !LIBICONV_PLUG */
+
+static size_t unicode_loop_convert (iconv_t icd,
+                                    const char* * inbuf, size_t *inbytesleft,
+                                    char* * outbuf, size_t *outbytesleft)
+{
+  conv_t cd = (conv_t) icd;
+  size_t result = 0;
+  const unsigned char* inptr = (const unsigned char*) *inbuf;
+  size_t inleft = *inbytesleft;
+  unsigned char* outptr = (unsigned char*) *outbuf;
+  size_t outleft = *outbytesleft;
+  while (inleft > 0) {
+    state_t last_istate = cd->istate;
+    ucs4_t wc;
+    int incount;
+    int outcount;
+    incount = cd->ifuncs.xxx_mbtowc(cd,&wc,inptr,inleft);
+    if (incount < 0) {
+      if ((unsigned int)(-1-incount) % 2 == (unsigned int)(-1-RET_ILSEQ) % 2) {
+        /* Case 1: invalid input, possibly after a shift sequence */
+        incount = DECODE_SHIFT_ILSEQ(incount);
+        if (cd->discard_ilseq) {
+          switch (cd->iindex) {
+            case ei_ucs4: case ei_ucs4be: case ei_ucs4le:
+            case ei_utf32: case ei_utf32be: case ei_utf32le:
+            case ei_ucs4internal: case ei_ucs4swapped:
+              incount += 4; break;
+            case ei_ucs2: case ei_ucs2be: case ei_ucs2le:
+            case ei_utf16: case ei_utf16be: case ei_utf16le:
+            case ei_ucs2internal: case ei_ucs2swapped:
+              incount += 2; break;
+            default:
+              incount += 1; break;
+          }
+          goto outcount_zero;
+        }
+        #ifndef LIBICONV_PLUG
+        else if (cd->fallbacks.mb_to_uc_fallback != NULL) {
+          unsigned int incount2;
+          struct mb_to_uc_fallback_locals locals;
+          switch (cd->iindex) {
+            case ei_ucs4: case ei_ucs4be: case ei_ucs4le:
+            case ei_utf32: case ei_utf32be: case ei_utf32le:
+            case ei_ucs4internal: case ei_ucs4swapped:
+              incount2 = 4; break;
+            case ei_ucs2: case ei_ucs2be: case ei_ucs2le:
+            case ei_utf16: case ei_utf16be: case ei_utf16le:
+            case ei_ucs2internal: case ei_ucs2swapped:
+              incount2 = 2; break;
+            default:
+              incount2 = 1; break;
+          }
+          locals.l_cd = cd;
+          locals.l_outbuf = outptr;
+          locals.l_outbytesleft = outleft;
+          locals.l_errno = 0;
+          cd->fallbacks.mb_to_uc_fallback((const char*)inptr+incount, incount2,
+                                          mb_to_uc_write_replacement,
+                                          &locals,
+                                          cd->fallbacks.data);
+          if (locals.l_errno != 0) {
+            inptr += incount; inleft -= incount;
+            errno = locals.l_errno;
+            result = -1;
+            break;
+          }
+          incount += incount2;
+          outptr = locals.l_outbuf;
+          outleft = locals.l_outbytesleft;
+          result += 1;
+          goto outcount_zero;
+        }
+        #endif
+        inptr += incount; inleft -= incount;
+        errno = EILSEQ;
+        result = -1;
+        break;
+      }
+      if (incount == RET_TOOFEW(0)) {
+        /* Case 2: not enough bytes available to detect anything */
+        errno = EINVAL;
+        result = -1;
+        break;
+      }
+      /* Case 3: k bytes read, but only a shift sequence */
+      incount = DECODE_TOOFEW(incount);
+    } else {
+      /* Case 4: k bytes read, making up a wide character */
+      if (outleft == 0) {
+        cd->istate = last_istate;
+        errno = E2BIG;
+        result = -1;
+        break;
+      }
+      outcount = cd->ofuncs.xxx_wctomb(cd,outptr,wc,outleft);
+      if (outcount != RET_ILUNI)
+        goto outcount_ok;
+      /* Handle Unicode tag characters (range U+E0000..U+E007F). */
+      if ((wc >> 7) == (0xe0000 >> 7))
+        goto outcount_zero;
+      /* Try transliteration. */
+      result++;
+      if (cd->transliterate) {
+        outcount = unicode_transliterate(cd,wc,outptr,outleft);
+        if (outcount != RET_ILUNI)
+          goto outcount_ok;
+      }
+      if (cd->discard_ilseq) {
+        outcount = 0;
+        goto outcount_ok;
+      }
+      #ifndef LIBICONV_PLUG
+      else if (cd->fallbacks.uc_to_mb_fallback != NULL) {
+        struct uc_to_mb_fallback_locals locals;
+        locals.l_outbuf = outptr;
+        locals.l_outbytesleft = outleft;
+        locals.l_errno = 0;
+        cd->fallbacks.uc_to_mb_fallback(wc,
+                                        uc_to_mb_write_replacement,
+                                        &locals,
+                                        cd->fallbacks.data);
+        if (locals.l_errno != 0) {
+          cd->istate = last_istate;
+          errno = locals.l_errno;
+          return -1;
+        }
+        outptr = locals.l_outbuf;
+        outleft = locals.l_outbytesleft;
+        outcount = 0;
+        goto outcount_ok;
+      }
+      #endif
+      outcount = cd->ofuncs.xxx_wctomb(cd,outptr,0xFFFD,outleft);
+      if (outcount != RET_ILUNI)
+        goto outcount_ok;
+      cd->istate = last_istate;
+      errno = EILSEQ;
+      result = -1;
+      break;
+    outcount_ok:
+      if (outcount < 0) {
+        cd->istate = last_istate;
+        errno = E2BIG;
+        result = -1;
+        break;
+      }
+      #ifndef LIBICONV_PLUG
+      if (cd->hooks.uc_hook)
+        (*cd->hooks.uc_hook)(wc, cd->hooks.data);
+      #endif
+      if (!(outcount <= outleft)) abort();
+      outptr += outcount; outleft -= outcount;
+    }
+  outcount_zero:
+    if (!(incount <= inleft)) abort();
+    inptr += incount; inleft -= incount;
+  }
+  *inbuf = (const char*) inptr;
+  *inbytesleft = inleft;
+  *outbuf = (char*) outptr;
+  *outbytesleft = outleft;
+  return result;
+}
+
+static size_t unicode_loop_reset (iconv_t icd,
+                                  char* * outbuf, size_t *outbytesleft)
+{
+  conv_t cd = (conv_t) icd;
+  if (outbuf == NULL || *outbuf == NULL) {
+    /* Reset the states. */
+    memset(&cd->istate,'\0',sizeof(state_t));
+    memset(&cd->ostate,'\0',sizeof(state_t));
+    return 0;
+  } else {
+    size_t result = 0;
+    if (cd->ifuncs.xxx_flushwc) {
+      state_t last_istate = cd->istate;
+      ucs4_t wc;
+      if (cd->ifuncs.xxx_flushwc(cd, &wc)) {
+        unsigned char* outptr = (unsigned char*) *outbuf;
+        size_t outleft = *outbytesleft;
+        int outcount = cd->ofuncs.xxx_wctomb(cd,outptr,wc,outleft);
+        if (outcount != RET_ILUNI)
+          goto outcount_ok;
+        /* Handle Unicode tag characters (range U+E0000..U+E007F). */
+        if ((wc >> 7) == (0xe0000 >> 7))
+          goto outcount_zero;
+        /* Try transliteration. */
+        result++;
+        if (cd->transliterate) {
+          outcount = unicode_transliterate(cd,wc,outptr,outleft);
+          if (outcount != RET_ILUNI)
+            goto outcount_ok;
+        }
+        if (cd->discard_ilseq) {
+          outcount = 0;
+          goto outcount_ok;
+        }
+        #ifndef LIBICONV_PLUG
+        else if (cd->fallbacks.uc_to_mb_fallback != NULL) {
+          struct uc_to_mb_fallback_locals locals;
+          locals.l_outbuf = outptr;
+          locals.l_outbytesleft = outleft;
+          locals.l_errno = 0;
+          cd->fallbacks.uc_to_mb_fallback(wc,
+                                          uc_to_mb_write_replacement,
+                                          &locals,
+                                          cd->fallbacks.data);
+          if (locals.l_errno != 0) {
+            cd->istate = last_istate;
+            errno = locals.l_errno;
+            return -1;
+          }
+          outptr = locals.l_outbuf;
+          outleft = locals.l_outbytesleft;
+          outcount = 0;
+          goto outcount_ok;
+        }
+        #endif
+        outcount = cd->ofuncs.xxx_wctomb(cd,outptr,0xFFFD,outleft);
+        if (outcount != RET_ILUNI)
+          goto outcount_ok;
+        cd->istate = last_istate;
+        errno = EILSEQ;
+        return -1;
+      outcount_ok:
+        if (outcount < 0) {
+          cd->istate = last_istate;
+          errno = E2BIG;
+          return -1;
+        }
+        #ifndef LIBICONV_PLUG
+        if (cd->hooks.uc_hook)
+          (*cd->hooks.uc_hook)(wc, cd->hooks.data);
+        #endif
+        if (!(outcount <= outleft)) abort();
+        outptr += outcount;
+        outleft -= outcount;
+      outcount_zero:
+        *outbuf = (char*) outptr;
+        *outbytesleft = outleft;
+      }
+    }
+    if (cd->ofuncs.xxx_reset) {
+      unsigned char* outptr = (unsigned char*) *outbuf;
+      size_t outleft = *outbytesleft;
+      int outcount = cd->ofuncs.xxx_reset(cd,outptr,outleft);
+      if (outcount < 0) {
+        errno = E2BIG;
+        return -1;
+      }
+      if (!(outcount <= outleft)) abort();
+      *outbuf = (char*) (outptr + outcount);
+      *outbytesleft = outleft - outcount;
+    }
+    memset(&cd->istate,'\0',sizeof(state_t));
+    memset(&cd->ostate,'\0',sizeof(state_t));
+    return result;
+  }
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/loop_wchar.h b/graf2d/win32gdk/gdk/src/iconv/loop_wchar.h
new file mode 100644
index 00000000000..30d5dbd0764
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/loop_wchar.h
@@ -0,0 +1,458 @@
+/*
+ * Copyright (C) 2000-2002, 2005-2006, 2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/* This file defines three conversion loops:
+     - from wchar_t to anything else,
+     - from anything else to wchar_t,
+     - from wchar_t to wchar_t.
+ */
+
+#if HAVE_WCRTOMB || HAVE_MBRTOWC
+# include <wchar.h>
+# define BUF_SIZE 64  /* assume MB_LEN_MAX <= 64 */
+  /* Some systems, like BeOS, have multibyte encodings but lack mbstate_t.  */
+  extern size_t mbrtowc ();
+# ifdef mbstate_t
+#  define mbrtowc(pwc, s, n, ps) (mbrtowc)(pwc, s, n, 0)
+#  define mbsinit(ps) 1
+# endif
+# ifndef mbsinit
+#  if !HAVE_MBSINIT
+#   define mbsinit(ps) 1
+#  endif
+# endif
+#endif
+
+/*
+ * The first two conversion loops have an extended conversion descriptor.
+ */
+struct wchar_conv_struct {
+  struct conv_struct parent;
+#if HAVE_WCRTOMB || HAVE_MBRTOWC
+  mbstate_t state;
+#endif
+};
+
+
+#if HAVE_WCRTOMB
+
+/* From wchar_t to anything else. */
+
+#ifndef LIBICONV_PLUG
+
+#if 0
+
+struct wc_to_mb_fallback_locals {
+  struct wchar_conv_struct * l_wcd;
+  char* l_outbuf;
+  size_t l_outbytesleft;
+  int l_errno;
+};
+
+/* A callback that writes a string given in the locale encoding. */
+static void wc_to_mb_write_replacement (const char *buf, size_t buflen,
+                                        void* callback_arg)
+{
+  struct wc_to_mb_fallback_locals * plocals =
+    (struct wc_to_mb_fallback_locals *) callback_arg;
+  /* Do nothing if already encountered an error in a previous call. */
+  if (plocals->l_errno == 0) {
+    /* Attempt to convert the passed buffer to the target encoding.
+       Here we don't support characters split across multiple calls. */
+    const char* bufptr = buf;
+    size_t bufleft = buflen;
+    size_t res = unicode_loop_convert(&plocals->l_wcd->parent,
+                                      &bufptr,&bufleft,
+                                      &plocals->l_outbuf,&plocals->l_outbytesleft);
+    if (res == (size_t)(-1)) {
+      if (errno == EILSEQ || errno == EINVAL)
+        /* Invalid buf contents. */
+        plocals->l_errno = EILSEQ;
+      else if (errno == E2BIG)
+        /* Output buffer too small. */
+        plocals->l_errno = E2BIG;
+      else 
+        abort();
+    } else {
+      /* Successful conversion. */
+      if (bufleft > 0)
+        abort();
+    }
+  }
+}
+
+#else
+
+struct wc_to_mb_fallback_locals {
+  char* l_outbuf;
+  size_t l_outbytesleft;
+  int l_errno;
+};
+
+/* A callback that writes a string given in the target encoding. */
+static void wc_to_mb_write_replacement (const char *buf, size_t buflen,
+                                        void* callback_arg)
+{
+  struct wc_to_mb_fallback_locals * plocals =
+    (struct wc_to_mb_fallback_locals *) callback_arg;
+  /* Do nothing if already encountered an error in a previous call. */
+  if (plocals->l_errno == 0) {
+    /* Attempt to copy the passed buffer to the output buffer. */
+    if (plocals->l_outbytesleft < buflen)
+      plocals->l_errno = E2BIG;
+    else {
+      memcpy(plocals->l_outbuf, buf, buflen);
+      plocals->l_outbuf += buflen;
+      plocals->l_outbytesleft -= buflen;
+    }
+  }
+}
+
+#endif
+
+#endif /* !LIBICONV_PLUG */
+
+static size_t wchar_from_loop_convert (iconv_t icd,
+                                       const char* * inbuf, size_t *inbytesleft,
+                                       char* * outbuf, size_t *outbytesleft)
+{
+  struct wchar_conv_struct * wcd = (struct wchar_conv_struct *) icd;
+  size_t result = 0;
+  while (*inbytesleft >= sizeof(wchar_t)) {
+    const wchar_t * inptr = (const wchar_t *) *inbuf;
+    size_t inleft = *inbytesleft;
+    char buf[BUF_SIZE];
+    mbstate_t state = wcd->state;
+    size_t bufcount = 0;
+    while (inleft >= sizeof(wchar_t)) {
+      /* Convert one wchar_t to multibyte representation. */
+      size_t count = wcrtomb(buf+bufcount,*inptr,&state);
+      if (count == (size_t)(-1)) {
+        /* Invalid input. */
+        if (wcd->parent.discard_ilseq) {
+          count = 0;
+        }
+        #ifndef LIBICONV_PLUG
+        else if (wcd->parent.fallbacks.wc_to_mb_fallback != NULL) {
+          /* Drop the contents of buf[] accumulated so far, and instead
+             pass all queued wide characters to the fallback handler. */
+          struct wc_to_mb_fallback_locals locals;
+          const wchar_t * fallback_inptr;
+          #if 0
+          locals.l_wcd = wcd;
+          #endif
+          locals.l_outbuf = *outbuf;
+          locals.l_outbytesleft = *outbytesleft;
+          locals.l_errno = 0;
+          for (fallback_inptr = (const wchar_t *) *inbuf;
+               fallback_inptr <= inptr;
+               fallback_inptr++)
+            wcd->parent.fallbacks.wc_to_mb_fallback(*fallback_inptr,
+                                                    wc_to_mb_write_replacement,
+                                                    &locals,
+                                                    wcd->parent.fallbacks.data);
+          if (locals.l_errno != 0) {
+            errno = locals.l_errno;
+            return -1;
+          }
+          wcd->state = state;
+          *inbuf = (const char *) (inptr + 1);
+          *inbytesleft = inleft - sizeof(wchar_t);
+          *outbuf = locals.l_outbuf;
+          *outbytesleft = locals.l_outbytesleft;
+          result += 1;
+          break;
+        }
+        #endif
+        else {
+          errno = EILSEQ;
+          return -1;
+        }
+      }
+      inptr++;
+      inleft -= sizeof(wchar_t);
+      bufcount += count;
+      if (count == 0) {
+        /* Continue, append next wchar_t. */
+      } else {
+        /* Attempt to convert the accumulated multibyte representations
+           to the target encoding. */
+        const char* bufptr = buf;
+        size_t bufleft = bufcount;
+        char* outptr = *outbuf;
+        size_t outleft = *outbytesleft;
+        size_t res = unicode_loop_convert(&wcd->parent,
+                                          &bufptr,&bufleft,
+                                          &outptr,&outleft);
+        if (res == (size_t)(-1)) {
+          if (errno == EILSEQ)
+            /* Invalid input. */
+            return -1;
+          else if (errno == E2BIG)
+            /* Output buffer too small. */
+            return -1;
+          else if (errno == EINVAL) {
+            /* Continue, append next wchar_t, but avoid buffer overrun. */
+            if (bufcount + MB_CUR_MAX > BUF_SIZE)
+              abort();
+          } else
+            abort();
+        } else {
+          /* Successful conversion. */
+          wcd->state = state;
+          *inbuf = (const char *) inptr;
+          *inbytesleft = inleft;
+          *outbuf = outptr;
+          *outbytesleft = outleft;
+          result += res;
+          break;
+        }
+      }
+    }
+  }
+  return result;
+}
+
+static size_t wchar_from_loop_reset (iconv_t icd,
+                                     char* * outbuf, size_t *outbytesleft)
+{
+  struct wchar_conv_struct * wcd = (struct wchar_conv_struct *) icd;
+  if (outbuf == NULL || *outbuf == NULL) {
+    /* Reset the states. */
+    memset(&wcd->state,'\0',sizeof(mbstate_t));
+    return unicode_loop_reset(&wcd->parent,NULL,NULL);
+  } else {
+    if (!mbsinit(&wcd->state)) {
+      mbstate_t state = wcd->state;
+      char buf[BUF_SIZE];
+      size_t bufcount = wcrtomb(buf,(wchar_t)0,&state);
+      if (bufcount == (size_t)(-1) || bufcount == 0 || buf[bufcount-1] != '\0')
+        abort();
+      else {
+        const char* bufptr = buf;
+        size_t bufleft = bufcount-1;
+        char* outptr = *outbuf;
+        size_t outleft = *outbytesleft;
+        size_t res = unicode_loop_convert(&wcd->parent,
+                                          &bufptr,&bufleft,
+                                          &outptr,&outleft);
+        if (res == (size_t)(-1)) {
+          if (errno == E2BIG)
+            return -1;
+          else
+            abort();
+        } else {
+          res = unicode_loop_reset(&wcd->parent,&outptr,&outleft);
+          if (res == (size_t)(-1))
+            return res;
+          else {
+            /* Successful. */
+            wcd->state = state;
+            *outbuf = outptr;
+            *outbytesleft = outleft;
+            return 0;
+          }
+        }
+      }
+    } else
+      return unicode_loop_reset(&wcd->parent,outbuf,outbytesleft);
+  }
+}
+
+#endif
+
+
+#if HAVE_MBRTOWC
+
+/* From anything else to wchar_t. */
+
+#ifndef LIBICONV_PLUG
+
+struct mb_to_wc_fallback_locals {
+  char* l_outbuf;
+  size_t l_outbytesleft;
+  int l_errno;
+};
+
+static void mb_to_wc_write_replacement (const wchar_t *buf, size_t buflen,
+                                        void* callback_arg)
+{
+  struct mb_to_wc_fallback_locals * plocals =
+    (struct mb_to_wc_fallback_locals *) callback_arg;
+  /* Do nothing if already encountered an error in a previous call. */
+  if (plocals->l_errno == 0) {
+    /* Attempt to copy the passed buffer to the output buffer. */
+    if (plocals->l_outbytesleft < sizeof(wchar_t)*buflen)
+      plocals->l_errno = E2BIG;
+    else {
+      for (; buflen > 0; buf++, buflen--) {
+        *(wchar_t*) plocals->l_outbuf = *buf;
+        plocals->l_outbuf += sizeof(wchar_t);
+        plocals->l_outbytesleft -= sizeof(wchar_t);
+      }
+    }
+  }
+}
+
+#endif /* !LIBICONV_PLUG */
+
+static size_t wchar_to_loop_convert (iconv_t icd,
+                                     const char* * inbuf, size_t *inbytesleft,
+                                     char* * outbuf, size_t *outbytesleft)
+{
+  struct wchar_conv_struct * wcd = (struct wchar_conv_struct *) icd;
+  size_t result = 0;
+  while (*inbytesleft > 0) {
+    size_t incount;
+    for (incount = 1; incount <= *inbytesleft; incount++) {
+      char buf[BUF_SIZE];
+      const char* inptr = *inbuf;
+      size_t inleft = incount;
+      char* bufptr = buf;
+      size_t bufleft = BUF_SIZE;
+      size_t res = unicode_loop_convert(&wcd->parent,
+                                        &inptr,&inleft,
+                                        &bufptr,&bufleft);
+      if (res == (size_t)(-1)) {
+        if (errno == EILSEQ)
+          /* Invalid input. */
+          return -1;
+        else if (errno == EINVAL) {
+          /* Incomplete input. Next try with one more input byte. */
+        } else
+          /* E2BIG shouldn't occur. */
+          abort();
+      } else {
+        /* Successful conversion. */
+        size_t bufcount = bufptr-buf; /* = BUF_SIZE-bufleft */
+        mbstate_t state = wcd->state;
+        wchar_t wc;
+        res = mbrtowc(&wc,buf,bufcount,&state);
+        if (res == (size_t)(-2)) {
+          /* Next try with one more input byte. */
+        } else {
+          if (res == (size_t)(-1)) {
+            /* Invalid input. */
+            if (wcd->parent.discard_ilseq) {
+            }
+            #ifndef LIBICONV_PLUG
+            else if (wcd->parent.fallbacks.mb_to_wc_fallback != NULL) {
+              /* Drop the contents of buf[] accumulated so far, and instead
+                 pass all queued chars to the fallback handler. */
+              struct mb_to_wc_fallback_locals locals;
+              locals.l_outbuf = *outbuf;
+              locals.l_outbytesleft = *outbytesleft;
+              locals.l_errno = 0;
+              wcd->parent.fallbacks.mb_to_wc_fallback(*inbuf, incount,
+                                                      mb_to_wc_write_replacement,
+                                                      &locals,
+                                                      wcd->parent.fallbacks.data);
+              if (locals.l_errno != 0) {
+                errno = locals.l_errno;
+                return -1;
+              }
+              /* Restoring the state is not needed because it is the initial
+                 state anyway: For all known locale encodings, the multibyte
+                 to wchar_t conversion doesn't have shift state, and we have
+                 excluded partial accumulated characters. */
+              /* wcd->state = state; */
+              *inbuf += incount;
+              *inbytesleft -= incount;
+              *outbuf = locals.l_outbuf;
+              *outbytesleft = locals.l_outbytesleft;
+              result += 1;
+              break;
+            }
+            #endif
+            else
+              return -1;
+          } else {
+            if (*outbytesleft < sizeof(wchar_t)) {
+              errno = E2BIG;
+              return -1;
+            }
+            *(wchar_t*) *outbuf = wc;
+            /* Restoring the state is not needed because it is the initial
+               state anyway: For all known locale encodings, the multibyte
+               to wchar_t conversion doesn't have shift state, and we have
+               excluded partial accumulated characters. */
+            /* wcd->state = state; */
+            *outbuf += sizeof(wchar_t);
+            *outbytesleft -= sizeof(wchar_t);
+          }
+          *inbuf += incount;
+          *inbytesleft -= incount;
+          result += res;
+          break;
+        }
+      }
+    }
+  }
+  return result;
+}
+
+static size_t wchar_to_loop_reset (iconv_t icd,
+                                   char* * outbuf, size_t *outbytesleft)
+{
+  struct wchar_conv_struct * wcd = (struct wchar_conv_struct *) icd;
+  size_t res = unicode_loop_reset(&wcd->parent,outbuf,outbytesleft);
+  if (res == (size_t)(-1))
+    return res;
+  memset(&wcd->state,0,sizeof(mbstate_t));
+  return 0;
+}
+
+#endif
+
+
+/* From wchar_t to wchar_t. */
+
+static size_t wchar_id_loop_convert (iconv_t icd,
+                                     const char* * inbuf, size_t *inbytesleft,
+                                     char* * outbuf, size_t *outbytesleft)
+{
+  struct conv_struct * cd = (struct conv_struct *) icd;
+  const wchar_t* inptr = (const wchar_t*) *inbuf;
+  size_t inleft = *inbytesleft / sizeof(wchar_t);
+  wchar_t* outptr = (wchar_t*) *outbuf;
+  size_t outleft = *outbytesleft / sizeof(wchar_t);
+  size_t count = (inleft <= outleft ? inleft : outleft);
+  if (count > 0) {
+    *inbytesleft -= count * sizeof(wchar_t);
+    *outbytesleft -= count * sizeof(wchar_t);
+    do {
+      wchar_t wc = *inptr++;
+      *outptr++ = wc;
+      #ifndef LIBICONV_PLUG
+      if (cd->hooks.wc_hook)
+        (*cd->hooks.wc_hook)(wc, cd->hooks.data);
+      #endif
+    } while (--count > 0);
+    *inbuf = (const char*) inptr;
+    *outbuf = (char*) outptr;
+  }
+  return 0;
+}
+
+static size_t wchar_id_loop_reset (iconv_t icd,
+                                   char* * outbuf, size_t *outbytesleft)
+{
+  return 0;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/loops.h b/graf2d/win32gdk/gdk/src/iconv/loops.h
new file mode 100644
index 00000000000..782cc0926d9
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/loops.h
@@ -0,0 +1,25 @@
+/*
+ * Copyright (C) 2000 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/* This file defines all the loops. */
+
+#include "loop_unicode.h"
+#include "loop_wchar.h"
+
diff --git a/graf2d/win32gdk/gdk/src/iconv/mac_arabic.h b/graf2d/win32gdk/gdk/src/iconv/mac_arabic.h
new file mode 100644
index 00000000000..9d05a1ab63b
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/mac_arabic.h
@@ -0,0 +1,132 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * MacArabic
+ */
+
+static const unsigned short mac_arabic_2uni[128] = {
+  /* 0x80 */
+  0x00c4, 0x00a0, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
+  0x00e0, 0x00e2, 0x00e4, 0x06ba, 0x00ab, 0x00e7, 0x00e9, 0x00e8,
+  /* 0x90 */
+  0x00ea, 0x00eb, 0x00ed, 0x2026, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
+  0x00bb, 0x00f4, 0x00f6, 0x00f7, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
+  /* 0xa0 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x066a, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x060c, 0xfffd, 0xfffd, 0xfffd,
+  /* 0xb0 */
+  0x0660, 0x0661, 0x0662, 0x0663, 0x0664, 0x0665, 0x0666, 0x0667,
+  0x0668, 0x0669, 0xfffd, 0x061b, 0xfffd, 0xfffd, 0xfffd, 0x061f,
+  /* 0xc0 */
+  0x066d, 0x0621, 0x0622, 0x0623, 0x0624, 0x0625, 0x0626, 0x0627,
+  0x0628, 0x0629, 0x062a, 0x062b, 0x062c, 0x062d, 0x062e, 0x062f,
+  /* 0xd0 */
+  0x0630, 0x0631, 0x0632, 0x0633, 0x0634, 0x0635, 0x0636, 0x0637,
+  0x0638, 0x0639, 0x063a, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0xe0 */
+  0x0640, 0x0641, 0x0642, 0x0643, 0x0644, 0x0645, 0x0646, 0x0647,
+  0x0648, 0x0649, 0x064a, 0x064b, 0x064c, 0x064d, 0x064e, 0x064f,
+  /* 0xf0 */
+  0x0650, 0x0651, 0x0652, 0x067e, 0x0679, 0x0686, 0x06d5, 0x06a4,
+  0x06af, 0x0688, 0x0691, 0xfffd, 0xfffd, 0xfffd, 0x0698, 0x06d2,
+};
+
+static int
+mac_arabic_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = mac_arabic_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char mac_arabic_page00[96] = {
+  0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x8c, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x98, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x82, /* 0xc0-0xc7 */
+  0x00, 0x83, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x84, 0x00, 0x00, 0x00, 0x00, 0x85, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x86, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+  0x88, 0x87, 0x89, 0x00, 0x8a, 0x00, 0x00, 0x8d, /* 0xe0-0xe7 */
+  0x8f, 0x8e, 0x90, 0x91, 0x00, 0x92, 0x94, 0x95, /* 0xe8-0xef */
+  0x00, 0x96, 0x00, 0x97, 0x99, 0x00, 0x9a, 0x9b, /* 0xf0-0xf7 */
+  0x00, 0x9d, 0x9c, 0x9e, 0x9f, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+};
+static const unsigned char mac_arabic_page06[208] = {
+  0x00, 0x00, 0x00, 0x00, 0xac, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0xbb, 0x00, 0x00, 0x00, 0xbf, /* 0x18-0x1f */
+  0x00, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x20-0x27 */
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x28-0x2f */
+  0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0x30-0x37 */
+  0xd8, 0xd9, 0xda, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x40-0x47 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x48-0x4f */
+  0xf0, 0xf1, 0xf2, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0x60-0x67 */
+  0xb8, 0xb9, 0xa5, 0x00, 0x00, 0xc0, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0xf4, 0x00, 0x00, 0x00, 0x00, 0xf3, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf5, 0x00, /* 0x80-0x87 */
+  0xf9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0xfa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0x00, 0x00, 0x00, 0x00, 0xf7, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, /* 0xa8-0xaf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x8b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0xff, 0x00, 0x00, 0xf6, 0x00, 0x00, /* 0xd0-0xd7 */
+};
+
+static int
+mac_arabic_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = mac_arabic_page00[wc-0x00a0];
+  else if (wc >= 0x0608 && wc < 0x06d8)
+    c = mac_arabic_page06[wc-0x0608];
+  else if (wc == 0x2026)
+    c = 0x93;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/mac_centraleurope.h b/graf2d/win32gdk/gdk/src/iconv/mac_centraleurope.h
new file mode 100644
index 00000000000..be030cfc81d
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/mac_centraleurope.h
@@ -0,0 +1,139 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * MacCentralEurope
+ */
+
+static const unsigned short mac_centraleurope_2uni[128] = {
+  /* 0x80 */
+  0x00c4, 0x0100, 0x0101, 0x00c9, 0x0104, 0x00d6, 0x00dc, 0x00e1,
+  0x0105, 0x010c, 0x00e4, 0x010d, 0x0106, 0x0107, 0x00e9, 0x0179,
+  /* 0x90 */
+  0x017a, 0x010e, 0x00ed, 0x010f, 0x0112, 0x0113, 0x0116, 0x00f3,
+  0x0117, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x011a, 0x011b, 0x00fc,
+  /* 0xa0 */
+  0x2020, 0x00b0, 0x0118, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df,
+  0x00ae, 0x00a9, 0x2122, 0x0119, 0x00a8, 0x2260, 0x0123, 0x012e,
+  /* 0xb0 */
+  0x012f, 0x012a, 0x2264, 0x2265, 0x012b, 0x0136, 0x2202, 0x2211,
+  0x0142, 0x013b, 0x013c, 0x013d, 0x013e, 0x0139, 0x013a, 0x0145,
+  /* 0xc0 */
+  0x0146, 0x0143, 0x00ac, 0x221a, 0x0144, 0x0147, 0x2206, 0x00ab,
+  0x00bb, 0x2026, 0x00a0, 0x0148, 0x0150, 0x00d5, 0x0151, 0x014c,
+  /* 0xd0 */
+  0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25ca,
+  0x014d, 0x0154, 0x0155, 0x0158, 0x2039, 0x203a, 0x0159, 0x0156,
+  /* 0xe0 */
+  0x0157, 0x0160, 0x201a, 0x201e, 0x0161, 0x015a, 0x015b, 0x00c1,
+  0x0164, 0x0165, 0x00cd, 0x017d, 0x017e, 0x016a, 0x00d3, 0x00d4,
+  /* 0xf0 */
+  0x016b, 0x016e, 0x00da, 0x016f, 0x0170, 0x0171, 0x0172, 0x0173,
+  0x00dd, 0x00fd, 0x0137, 0x017b, 0x0141, 0x017c, 0x0122, 0x02c7,
+};
+
+static int
+mac_centraleurope_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) mac_centraleurope_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char mac_centraleurope_page00[224] = {
+  0xca, 0x00, 0x00, 0xa3, 0x00, 0x00, 0x00, 0xa4, /* 0xa0-0xa7 */
+  0xac, 0xa9, 0x00, 0xc7, 0xc2, 0x00, 0xa8, 0x00, /* 0xa8-0xaf */
+  0xa1, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa6, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0xc8, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0xe7, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x83, 0x00, 0x00, 0x00, 0xea, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0xee, 0xef, 0xcd, 0x85, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0xf2, 0x00, 0x86, 0xf8, 0x00, 0xa7, /* 0xd8-0xdf */
+  0x00, 0x87, 0x00, 0x00, 0x8a, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */
+  0x00, 0x8e, 0x00, 0x00, 0x00, 0x92, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0x97, 0x99, 0x9b, 0x9a, 0xd6, /* 0xf0-0xf7 */
+  0x00, 0x00, 0x9c, 0x00, 0x9f, 0xf9, 0x00, 0x00, /* 0xf8-0xff */
+  /* 0x0100 */
+  0x81, 0x82, 0x00, 0x00, 0x84, 0x88, 0x8c, 0x8d, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x89, 0x8b, 0x91, 0x93, /* 0x08-0x0f */
+  0x00, 0x00, 0x94, 0x95, 0x00, 0x00, 0x96, 0x98, /* 0x10-0x17 */
+  0xa2, 0xab, 0x9d, 0x9e, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0xfe, 0xae, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0xb1, 0xb4, 0x00, 0x00, 0xaf, 0xb0, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb5, 0xfa, /* 0x30-0x37 */
+  0x00, 0xbd, 0xbe, 0xb9, 0xba, 0xbb, 0xbc, 0x00, /* 0x38-0x3f */
+  0x00, 0xfc, 0xb8, 0xc1, 0xc4, 0xbf, 0xc0, 0xc5, /* 0x40-0x47 */
+  0xcb, 0x00, 0x00, 0x00, 0xcf, 0xd8, 0x00, 0x00, /* 0x48-0x4f */
+  0xcc, 0xce, 0x00, 0x00, 0xd9, 0xda, 0xdf, 0xe0, /* 0x50-0x57 */
+  0xdb, 0xde, 0xe5, 0xe6, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xe1, 0xe4, 0x00, 0x00, 0xe8, 0xe9, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0xed, 0xf0, 0x00, 0x00, 0xf1, 0xf3, /* 0x68-0x6f */
+  0xf4, 0xf5, 0xf6, 0xf7, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x8f, 0x90, 0xfb, 0xfd, 0xeb, 0xec, 0x00, /* 0x78-0x7f */
+};
+static const unsigned char mac_centraleurope_page20[48] = {
+  0x00, 0x00, 0x00, 0xd0, 0xd1, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd4, 0xd5, 0xe2, 0x00, 0xd2, 0xd3, 0xe3, 0x00, /* 0x18-0x1f */
+  0xa0, 0x00, 0xa5, 0x00, 0x00, 0x00, 0xc9, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0xdc, 0xdd, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+};
+static const unsigned char mac_centraleurope_page22[32] = {
+  0x00, 0x00, 0xb6, 0x00, 0x00, 0x00, 0xc6, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0xb7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+};
+static const unsigned char mac_centraleurope_page22_1[8] = {
+  0xad, 0x00, 0x00, 0x00, 0xb2, 0xb3, 0x00, 0x00, /* 0x60-0x67 */
+};
+
+static int
+mac_centraleurope_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0180)
+    c = mac_centraleurope_page00[wc-0x00a0];
+  else if (wc == 0x02c7)
+    c = 0xff;
+  else if (wc >= 0x2010 && wc < 0x2040)
+    c = mac_centraleurope_page20[wc-0x2010];
+  else if (wc == 0x2122)
+    c = 0xaa;
+  else if (wc >= 0x2200 && wc < 0x2220)
+    c = mac_centraleurope_page22[wc-0x2200];
+  else if (wc >= 0x2260 && wc < 0x2268)
+    c = mac_centraleurope_page22_1[wc-0x2260];
+  else if (wc == 0x25ca)
+    c = 0xd7;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/mac_croatian.h b/graf2d/win32gdk/gdk/src/iconv/mac_croatian.h
new file mode 100644
index 00000000000..582f3e05c00
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/mac_croatian.h
@@ -0,0 +1,165 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * MacCroatian
+ */
+
+static const unsigned short mac_croatian_2uni[128] = {
+  /* 0x80 */
+  0x00c4, 0x00c5, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
+  0x00e0, 0x00e2, 0x00e4, 0x00e3, 0x00e5, 0x00e7, 0x00e9, 0x00e8,
+  /* 0x90 */
+  0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
+  0x00f2, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
+  /* 0xa0 */
+  0x2020, 0x00b0, 0x00a2, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df,
+  0x00ae, 0x0160, 0x2122, 0x00b4, 0x00a8, 0x2260, 0x017d, 0x00d8,
+  /* 0xb0 */
+  0x221e, 0x00b1, 0x2264, 0x2265, 0x2206, 0x00b5, 0x2202, 0x2211,
+  0x220f, 0x0161, 0x222b, 0x00aa, 0x00ba, 0x2126, 0x017e, 0x00f8,
+  /* 0xc0 */
+  0x00bf, 0x00a1, 0x00ac, 0x221a, 0x0192, 0x2248, 0x0106, 0x00ab,
+  0x010c, 0x2026, 0x00a0, 0x00c0, 0x00c3, 0x00d5, 0x0152, 0x0153,
+  /* 0xd0 */
+  0x0110, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25ca,
+  0xfffd, 0x00a9, 0x2044, 0x00a4, 0x2039, 0x203a, 0x00c6, 0x00bb,
+  /* 0xe0 */
+  0x2013, 0x00b7, 0x201a, 0x201e, 0x2030, 0x00c2, 0x0107, 0x00c1,
+  0x010d, 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00d3, 0x00d4,
+  /* 0xf0 */
+  0x0111, 0x00d2, 0x00da, 0x00db, 0x00d9, 0x0131, 0x02c6, 0x02dc,
+  0x00af, 0x03c0, 0x00cb, 0x02da, 0x00b8, 0x00ca, 0x00e6, 0x02c7,
+};
+
+static int
+mac_croatian_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = mac_croatian_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char mac_croatian_page00[248] = {
+  0xca, 0xc1, 0xa2, 0xa3, 0xdb, 0x00, 0x00, 0xa4, /* 0xa0-0xa7 */
+  0xac, 0xd9, 0xbb, 0xc7, 0xc2, 0x00, 0xa8, 0xf8, /* 0xa8-0xaf */
+  0xa1, 0xb1, 0x00, 0x00, 0xab, 0xb5, 0xa6, 0xe1, /* 0xb0-0xb7 */
+  0xfc, 0x00, 0xbc, 0xdf, 0x00, 0x00, 0x00, 0xc0, /* 0xb8-0xbf */
+  0xcb, 0xe7, 0xe5, 0xcc, 0x80, 0x81, 0xde, 0x82, /* 0xc0-0xc7 */
+  0xe9, 0x83, 0xfd, 0xfa, 0xed, 0xea, 0xeb, 0xec, /* 0xc8-0xcf */
+  0x00, 0x84, 0xf1, 0xee, 0xef, 0xcd, 0x85, 0x00, /* 0xd0-0xd7 */
+  0xaf, 0xf4, 0xf2, 0xf3, 0x86, 0x00, 0x00, 0xa7, /* 0xd8-0xdf */
+  0x88, 0x87, 0x89, 0x8b, 0x8a, 0x8c, 0xfe, 0x8d, /* 0xe0-0xe7 */
+  0x8f, 0x8e, 0x90, 0x91, 0x93, 0x92, 0x94, 0x95, /* 0xe8-0xef */
+  0x00, 0x96, 0x98, 0x97, 0x99, 0x9b, 0x9a, 0xd6, /* 0xf0-0xf7 */
+  0xbf, 0x9d, 0x9c, 0x9e, 0x9f, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+  /* 0x0100 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0xe6, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0xc8, 0xe8, 0x00, 0x00, /* 0x08-0x0f */
+  0xd0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0xf5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0xce, 0xcf, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xa9, 0xb9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0xae, 0xbe, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0xc4, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char mac_croatian_page02[32] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf6, 0xff, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0xfb, 0x00, 0xf7, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+};
+static const unsigned char mac_croatian_page20[56] = {
+  0x00, 0x00, 0x00, 0xe0, 0xd1, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd4, 0xd5, 0xe2, 0x00, 0xd2, 0xd3, 0xe3, 0x00, /* 0x18-0x1f */
+  0xa0, 0x00, 0xa5, 0x00, 0x00, 0x00, 0xc9, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0xe4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0xdc, 0xdd, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+};
+static const unsigned char mac_croatian_page21[8] = {
+  0x00, 0x00, 0xaa, 0x00, 0x00, 0x00, 0xbd, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char mac_croatian_page22[104] = {
+  0x00, 0x00, 0xb6, 0x00, 0x00, 0x00, 0xb4, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb8, /* 0x08-0x0f */
+  0x00, 0xb7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, 0xb0, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0xba, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0xc5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xad, 0x00, 0x00, 0x00, 0xb2, 0xb3, 0x00, 0x00, /* 0x60-0x67 */
+};
+
+static int
+mac_croatian_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0198)
+    c = mac_croatian_page00[wc-0x00a0];
+  else if (wc >= 0x02c0 && wc < 0x02e0)
+    c = mac_croatian_page02[wc-0x02c0];
+  else if (wc == 0x03c0)
+    c = 0xf9;
+  else if (wc >= 0x2010 && wc < 0x2048)
+    c = mac_croatian_page20[wc-0x2010];
+  else if (wc >= 0x2120 && wc < 0x2128)
+    c = mac_croatian_page21[wc-0x2120];
+  else if (wc >= 0x2200 && wc < 0x2268)
+    c = mac_croatian_page22[wc-0x2200];
+  else if (wc == 0x25ca)
+    c = 0xd7;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/mac_cyrillic.h b/graf2d/win32gdk/gdk/src/iconv/mac_cyrillic.h
new file mode 100644
index 00000000000..a5b5972f287
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/mac_cyrillic.h
@@ -0,0 +1,136 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * MacCyrillic
+ */
+
+static const unsigned short mac_cyrillic_2uni[128] = {
+  /* 0x80 */
+  0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417,
+  0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e, 0x041f,
+  /* 0x90 */
+  0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427,
+  0x0428, 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e, 0x042f,
+  /* 0xa0 */
+  0x2020, 0x00b0, 0x00a2, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x0406,
+  0x00ae, 0x00a9, 0x2122, 0x0402, 0x0452, 0x2260, 0x0403, 0x0453,
+  /* 0xb0 */
+  0x221e, 0x00b1, 0x2264, 0x2265, 0x0456, 0x00b5, 0x2202, 0x0408,
+  0x0404, 0x0454, 0x0407, 0x0457, 0x0409, 0x0459, 0x040a, 0x045a,
+  /* 0xc0 */
+  0x0458, 0x0405, 0x00ac, 0x221a, 0x0192, 0x2248, 0x2206, 0x00ab,
+  0x00bb, 0x2026, 0x00a0, 0x040b, 0x045b, 0x040c, 0x045c, 0x0455,
+  /* 0xd0 */
+  0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x201e,
+  0x040e, 0x045e, 0x040f, 0x045f, 0x2116, 0x0401, 0x0451, 0x044f,
+  /* 0xe0 */
+  0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437,
+  0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f,
+  /* 0xf0 */
+  0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
+  0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x00a4,
+};
+
+static int
+mac_cyrillic_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c >= 0x80)
+    *pwc = (ucs4_t) mac_cyrillic_2uni[c-0x80];
+  else
+    *pwc = (ucs4_t) c;
+  return 1;
+}
+
+static const unsigned char mac_cyrillic_page00[32] = {
+  0xca, 0x00, 0xa2, 0xa3, 0xff, 0x00, 0x00, 0xa4, /* 0xa0-0xa7 */
+  0x00, 0xa9, 0x00, 0xc7, 0xc2, 0x00, 0xa8, 0x00, /* 0xa8-0xaf */
+  0xa1, 0xb1, 0x00, 0x00, 0x00, 0xb5, 0xa6, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0xc8, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+};
+static const unsigned char mac_cyrillic_page04[96] = {
+  0x00, 0xdd, 0xab, 0xae, 0xb8, 0xc1, 0xa7, 0xba, /* 0x00-0x07 */
+  0xb7, 0xbc, 0xbe, 0xcb, 0xcd, 0x00, 0xd8, 0xda, /* 0x08-0x0f */
+  0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, /* 0x10-0x17 */
+  0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, /* 0x18-0x1f */
+  0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, /* 0x20-0x27 */
+  0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, /* 0x28-0x2f */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x30-0x37 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x38-0x3f */
+  0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0x40-0x47 */
+  0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xdf, /* 0x48-0x4f */
+  0x00, 0xde, 0xac, 0xaf, 0xb9, 0xcf, 0xb4, 0xbb, /* 0x50-0x57 */
+  0xc0, 0xbd, 0xbf, 0xcc, 0xce, 0x00, 0xd9, 0xdb, /* 0x58-0x5f */
+};
+static const unsigned char mac_cyrillic_page20[24] = {
+  0x00, 0x00, 0x00, 0xd0, 0xd1, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd4, 0xd5, 0x00, 0x00, 0xd2, 0xd3, 0xd7, 0x00, /* 0x18-0x1f */
+  0xa0, 0x00, 0xa5, 0x00, 0x00, 0x00, 0xc9, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char mac_cyrillic_page21[24] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdc, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char mac_cyrillic_page22[104] = {
+  0x00, 0x00, 0xb6, 0x00, 0x00, 0x00, 0xc6, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, 0xb0, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0xc5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xad, 0x00, 0x00, 0x00, 0xb2, 0xb3, 0x00, 0x00, /* 0x60-0x67 */
+};
+
+static int
+mac_cyrillic_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00c0)
+    c = mac_cyrillic_page00[wc-0x00a0];
+  else if (wc == 0x00f7)
+    c = 0xd6;
+  else if (wc == 0x0192)
+    c = 0xc4;
+  else if (wc >= 0x0400 && wc < 0x0460)
+    c = mac_cyrillic_page04[wc-0x0400];
+  else if (wc >= 0x2010 && wc < 0x2028)
+    c = mac_cyrillic_page20[wc-0x2010];
+  else if (wc >= 0x2110 && wc < 0x2128)
+    c = mac_cyrillic_page21[wc-0x2110];
+  else if (wc >= 0x2200 && wc < 0x2268)
+    c = mac_cyrillic_page22[wc-0x2200];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/mac_greek.h b/graf2d/win32gdk/gdk/src/iconv/mac_greek.h
new file mode 100644
index 00000000000..3cc4ac29f86
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/mac_greek.h
@@ -0,0 +1,135 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * MacGreek
+ */
+
+static const unsigned short mac_greek_2uni[128] = {
+  /* 0x80 */
+  0x00c4, 0x00b9, 0x00b2, 0x00c9, 0x00b3, 0x00d6, 0x00dc, 0x0385,
+  0x00e0, 0x00e2, 0x00e4, 0x0384, 0x00a8, 0x00e7, 0x00e9, 0x00e8,
+  /* 0x90 */
+  0x00ea, 0x00eb, 0x00a3, 0x2122, 0x00ee, 0x00ef, 0x2022, 0x00bd,
+  0x2030, 0x00f4, 0x00f6, 0x00a6, 0x00ad, 0x00f9, 0x00fb, 0x00fc,
+  /* 0xa0 */
+  0x2020, 0x0393, 0x0394, 0x0398, 0x039b, 0x039e, 0x03a0, 0x00df,
+  0x00ae, 0x00a9, 0x03a3, 0x03aa, 0x00a7, 0x2260, 0x00b0, 0x0387,
+  /* 0xb0 */
+  0x0391, 0x00b1, 0x2264, 0x2265, 0x00a5, 0x0392, 0x0395, 0x0396,
+  0x0397, 0x0399, 0x039a, 0x039c, 0x03a6, 0x03ab, 0x03a8, 0x03a9,
+  /* 0xc0 */
+  0x03ac, 0x039d, 0x00ac, 0x039f, 0x03a1, 0x2248, 0x03a4, 0x00ab,
+  0x00bb, 0x2026, 0x00a0, 0x03a5, 0x03a7, 0x0386, 0x0388, 0x0153,
+  /* 0xd0 */
+  0x2013, 0x2015, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x0389,
+  0x038a, 0x038c, 0x038e, 0x03ad, 0x03ae, 0x03af, 0x03cc, 0x038f,
+  /* 0xe0 */
+  0x03cd, 0x03b1, 0x03b2, 0x03c8, 0x03b4, 0x03b5, 0x03c6, 0x03b3,
+  0x03b7, 0x03b9, 0x03be, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03bf,
+  /* 0xf0 */
+  0x03c0, 0x03ce, 0x03c1, 0x03c3, 0x03c4, 0x03b8, 0x03c9, 0x03c2,
+  0x03c7, 0x03c5, 0x03b6, 0x03ca, 0x03cb, 0x0390, 0x03b0, 0xfffd,
+};
+
+static int
+mac_greek_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = mac_greek_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char mac_greek_page00[96] = {
+  0xca, 0x00, 0x00, 0x92, 0x00, 0xb4, 0x9b, 0xac, /* 0xa0-0xa7 */
+  0x8c, 0xa9, 0x00, 0xc7, 0xc2, 0x9c, 0xa8, 0x00, /* 0xa8-0xaf */
+  0xae, 0xb1, 0x82, 0x84, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x81, 0x00, 0xc8, 0x00, 0x97, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x83, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x85, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x86, 0x00, 0x00, 0xa7, /* 0xd8-0xdf */
+  0x88, 0x00, 0x89, 0x00, 0x8a, 0x00, 0x00, 0x8d, /* 0xe0-0xe7 */
+  0x8f, 0x8e, 0x90, 0x91, 0x00, 0x00, 0x94, 0x95, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0x00, 0x99, 0x00, 0x9a, 0xd6, /* 0xf0-0xf7 */
+  0x00, 0x9d, 0x00, 0x9e, 0x9f, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+};
+static const unsigned char mac_greek_page03[80] = {
+  0x00, 0x00, 0x00, 0x00, 0x8b, 0x87, 0xcd, 0xaf, /* 0x80-0x87 */
+  0xce, 0xd7, 0xd8, 0x00, 0xd9, 0x00, 0xda, 0xdf, /* 0x88-0x8f */
+  0xfd, 0xb0, 0xb5, 0xa1, 0xa2, 0xb6, 0xb7, 0xb8, /* 0x90-0x97 */
+  0xa3, 0xb9, 0xba, 0xa4, 0xbb, 0xc1, 0xa5, 0xc3, /* 0x98-0x9f */
+  0xa6, 0xc4, 0x00, 0xaa, 0xc6, 0xcb, 0xbc, 0xcc, /* 0xa0-0xa7 */
+  0xbe, 0xbf, 0xab, 0xbd, 0xc0, 0xdb, 0xdc, 0xdd, /* 0xa8-0xaf */
+  0xfe, 0xe1, 0xe2, 0xe7, 0xe4, 0xe5, 0xfa, 0xe8, /* 0xb0-0xb7 */
+  0xf5, 0xe9, 0xeb, 0xec, 0xed, 0xee, 0xea, 0xef, /* 0xb8-0xbf */
+  0xf0, 0xf2, 0xf7, 0xf3, 0xf4, 0xf9, 0xe6, 0xf8, /* 0xc0-0xc7 */
+  0xe3, 0xf6, 0xfb, 0xfc, 0xde, 0xe0, 0xf1, 0x00, /* 0xc8-0xcf */
+};
+static const unsigned char mac_greek_page20[40] = {
+  0x00, 0x00, 0x00, 0xd0, 0x00, 0xd1, 0x00, 0x00, /* 0x10-0x17 */
+  0xd4, 0xd5, 0x00, 0x00, 0xd2, 0xd3, 0x00, 0x00, /* 0x18-0x1f */
+  0xa0, 0x00, 0x96, 0x00, 0x00, 0x00, 0xc9, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x98, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+};
+static const unsigned char mac_greek_page22[32] = {
+  0xc5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xad, 0x00, 0x00, 0x00, 0xb2, 0xb3, 0x00, 0x00, /* 0x60-0x67 */
+};
+
+static int
+mac_greek_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = mac_greek_page00[wc-0x00a0];
+  else if (wc == 0x0153)
+    c = 0xcf;
+  else if (wc >= 0x0380 && wc < 0x03d0)
+    c = mac_greek_page03[wc-0x0380];
+  else if (wc >= 0x2010 && wc < 0x2038)
+    c = mac_greek_page20[wc-0x2010];
+  else if (wc == 0x2122)
+    c = 0x93;
+  else if (wc >= 0x2248 && wc < 0x2268)
+    c = mac_greek_page22[wc-0x2248];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/mac_hebrew.h b/graf2d/win32gdk/gdk/src/iconv/mac_hebrew.h
new file mode 100644
index 00000000000..c7f97bb6b1d
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/mac_hebrew.h
@@ -0,0 +1,132 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * MacHebrew
+ */
+
+static const unsigned short mac_hebrew_2uni[128] = {
+  /* 0x80 */
+  0x00c4, 0xfb1f, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
+  0x00e0, 0x00e2, 0x00e4, 0x00e3, 0x00e5, 0x00e7, 0x00e9, 0x00e8,
+  /* 0x90 */
+  0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
+  0x00f2, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
+  /* 0xa0 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x20aa, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0xb0 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+  /* 0xc0 */
+  0xfffd, 0x201e, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x05bc, 0xfb4b,
+  0xfb35, 0x2026, 0x00a0, 0x05b8, 0x05b7, 0x05b5, 0x05b6, 0x05b4,
+  /* 0xd0 */
+  0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0xfb2a, 0xfb2b,
+  0x05bf, 0x05b0, 0x05b2, 0x05b1, 0x05bb, 0x05b9, 0xfffd, 0x05b3,
+  /* 0xe0 */
+  0x05d0, 0x05d1, 0x05d2, 0x05d3, 0x05d4, 0x05d5, 0x05d6, 0x05d7,
+  0x05d8, 0x05d9, 0x05da, 0x05db, 0x05dc, 0x05dd, 0x05de, 0x05df,
+  /* 0xf0 */
+  0x05e0, 0x05e1, 0x05e2, 0x05e3, 0x05e4, 0x05e5, 0x05e6, 0x05e7,
+  0x05e8, 0x05e9, 0x05ea, 0xfffd, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+};
+
+static int
+mac_hebrew_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else if (c >= 0x80) {
+    unsigned short wc = mac_hebrew_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char mac_hebrew_page00[96] = {
+  0xca, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x82, /* 0xc0-0xc7 */
+  0x00, 0x83, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x84, 0x00, 0x00, 0x00, 0x00, 0x85, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x86, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+  0x88, 0x87, 0x89, 0x8b, 0x8a, 0x8c, 0x00, 0x8d, /* 0xe0-0xe7 */
+  0x8f, 0x8e, 0x90, 0x91, 0x93, 0x92, 0x94, 0x95, /* 0xe8-0xef */
+  0x00, 0x96, 0x98, 0x97, 0x99, 0x9b, 0x9a, 0x00, /* 0xf0-0xf7 */
+  0x00, 0x9d, 0x9c, 0x9e, 0x9f, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+};
+static const unsigned char mac_hebrew_page05[64] = {
+  0xd9, 0xdb, 0xda, 0xdf, 0xcf, 0xcd, 0xce, 0xcc, /* 0xb0-0xb7 */
+  0xcb, 0xdd, 0x00, 0xdc, 0xc6, 0x00, 0x00, 0xd8, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0xd0-0xd7 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0xd8-0xdf */
+  0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0xe0-0xe7 */
+  0xf8, 0xf9, 0xfa, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+};
+static const unsigned char mac_hebrew_page20[24] = {
+  0x00, 0x00, 0x00, 0xd0, 0xd1, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd4, 0xd5, 0x00, 0x00, 0xd2, 0xd3, 0xc1, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc9, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char mac_hebrew_pagefb[56] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0xd6, 0xd7, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0xc7, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+};
+
+static int
+mac_hebrew_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = mac_hebrew_page00[wc-0x00a0];
+  else if (wc >= 0x05b0 && wc < 0x05f0)
+    c = mac_hebrew_page05[wc-0x05b0];
+  else if (wc >= 0x2010 && wc < 0x2028)
+    c = mac_hebrew_page20[wc-0x2010];
+  else if (wc == 0x20aa)
+    c = 0xa6;
+  else if (wc >= 0xfb18 && wc < 0xfb50)
+    c = mac_hebrew_pagefb[wc-0xfb18];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/mac_iceland.h b/graf2d/win32gdk/gdk/src/iconv/mac_iceland.h
new file mode 100644
index 00000000000..b49f1642aff
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/mac_iceland.h
@@ -0,0 +1,162 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * MacIceland
+ */
+
+static const unsigned short mac_iceland_2uni[128] = {
+  /* 0x80 */
+  0x00c4, 0x00c5, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
+  0x00e0, 0x00e2, 0x00e4, 0x00e3, 0x00e5, 0x00e7, 0x00e9, 0x00e8,
+  /* 0x90 */
+  0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
+  0x00f2, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
+  /* 0xa0 */
+  0x00dd, 0x00b0, 0x00a2, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df,
+  0x00ae, 0x00a9, 0x2122, 0x00b4, 0x00a8, 0x2260, 0x00c6, 0x00d8,
+  /* 0xb0 */
+  0x221e, 0x00b1, 0x2264, 0x2265, 0x00a5, 0x00b5, 0x2202, 0x2211,
+  0x220f, 0x03c0, 0x222b, 0x00aa, 0x00ba, 0x2126, 0x00e6, 0x00f8,
+  /* 0xc0 */
+  0x00bf, 0x00a1, 0x00ac, 0x221a, 0x0192, 0x2248, 0x2206, 0x00ab,
+  0x00bb, 0x2026, 0x00a0, 0x00c0, 0x00c3, 0x00d5, 0x0152, 0x0153,
+  /* 0xd0 */
+  0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25ca,
+  0x00ff, 0x0178, 0x2044, 0x00a4, 0x00d0, 0x00f0, 0x00de, 0x00fe,
+  /* 0xe0 */
+  0x00fd, 0x00b7, 0x201a, 0x201e, 0x2030, 0x00c2, 0x00ca, 0x00c1,
+  0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00d3, 0x00d4,
+  /* 0xf0 */
+  0xfffd, 0x00d2, 0x00da, 0x00db, 0x00d9, 0x0131, 0x02c6, 0x02dc,
+  0x00af, 0x02d8, 0x02d9, 0x02da, 0x00b8, 0x02dd, 0x02db, 0x02c7,
+};
+
+static int
+mac_iceland_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = mac_iceland_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char mac_iceland_page00[96] = {
+  0xca, 0xc1, 0xa2, 0xa3, 0xdb, 0xb4, 0x00, 0xa4, /* 0xa0-0xa7 */
+  0xac, 0xa9, 0xbb, 0xc7, 0xc2, 0x00, 0xa8, 0xf8, /* 0xa8-0xaf */
+  0xa1, 0xb1, 0x00, 0x00, 0xab, 0xb5, 0xa6, 0xe1, /* 0xb0-0xb7 */
+  0xfc, 0x00, 0xbc, 0xc8, 0x00, 0x00, 0x00, 0xc0, /* 0xb8-0xbf */
+  0xcb, 0xe7, 0xe5, 0xcc, 0x80, 0x81, 0xae, 0x82, /* 0xc0-0xc7 */
+  0xe9, 0x83, 0xe6, 0xe8, 0xed, 0xea, 0xeb, 0xec, /* 0xc8-0xcf */
+  0xdc, 0x84, 0xf1, 0xee, 0xef, 0xcd, 0x85, 0x00, /* 0xd0-0xd7 */
+  0xaf, 0xf4, 0xf2, 0xf3, 0x86, 0xa0, 0xde, 0xa7, /* 0xd8-0xdf */
+  0x88, 0x87, 0x89, 0x8b, 0x8a, 0x8c, 0xbe, 0x8d, /* 0xe0-0xe7 */
+  0x8f, 0x8e, 0x90, 0x91, 0x93, 0x92, 0x94, 0x95, /* 0xe8-0xef */
+  0xdd, 0x96, 0x98, 0x97, 0x99, 0x9b, 0x9a, 0xd6, /* 0xf0-0xf7 */
+  0xbf, 0x9d, 0x9c, 0x9e, 0x9f, 0xe0, 0xdf, 0xd8, /* 0xf8-0xff */
+};
+static const unsigned char mac_iceland_page01[104] = {
+  0x00, 0xf5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0xce, 0xcf, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0xd9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0xc4, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char mac_iceland_page02[32] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf6, 0xff, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0xf9, 0xfa, 0xfb, 0xfe, 0xf7, 0xfd, 0x00, 0x00, /* 0xd8-0xdf */
+};
+static const unsigned char mac_iceland_page20[56] = {
+  0x00, 0x00, 0x00, 0xd0, 0xd1, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd4, 0xd5, 0xe2, 0x00, 0xd2, 0xd3, 0xe3, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0xa5, 0x00, 0x00, 0x00, 0xc9, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0xe4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+};
+static const unsigned char mac_iceland_page21[8] = {
+  0x00, 0x00, 0xaa, 0x00, 0x00, 0x00, 0xbd, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char mac_iceland_page22[104] = {
+  0x00, 0x00, 0xb6, 0x00, 0x00, 0x00, 0xc6, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb8, /* 0x08-0x0f */
+  0x00, 0xb7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, 0xb0, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0xba, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0xc5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xad, 0x00, 0x00, 0x00, 0xb2, 0xb3, 0x00, 0x00, /* 0x60-0x67 */
+};
+
+static int
+mac_iceland_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = mac_iceland_page00[wc-0x00a0];
+  else if (wc >= 0x0130 && wc < 0x0198)
+    c = mac_iceland_page01[wc-0x0130];
+  else if (wc >= 0x02c0 && wc < 0x02e0)
+    c = mac_iceland_page02[wc-0x02c0];
+  else if (wc == 0x03c0)
+    c = 0xb9;
+  else if (wc >= 0x2010 && wc < 0x2048)
+    c = mac_iceland_page20[wc-0x2010];
+  else if (wc >= 0x2120 && wc < 0x2128)
+    c = mac_iceland_page21[wc-0x2120];
+  else if (wc >= 0x2200 && wc < 0x2268)
+    c = mac_iceland_page22[wc-0x2200];
+  else if (wc == 0x25ca)
+    c = 0xd7;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/mac_roman.h b/graf2d/win32gdk/gdk/src/iconv/mac_roman.h
new file mode 100644
index 00000000000..7a6d51aa0bc
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/mac_roman.h
@@ -0,0 +1,167 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * MacRoman
+ */
+
+static const unsigned short mac_roman_2uni[128] = {
+  /* 0x80 */
+  0x00c4, 0x00c5, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
+  0x00e0, 0x00e2, 0x00e4, 0x00e3, 0x00e5, 0x00e7, 0x00e9, 0x00e8,
+  /* 0x90 */
+  0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
+  0x00f2, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
+  /* 0xa0 */
+  0x2020, 0x00b0, 0x00a2, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df,
+  0x00ae, 0x00a9, 0x2122, 0x00b4, 0x00a8, 0x2260, 0x00c6, 0x00d8,
+  /* 0xb0 */
+  0x221e, 0x00b1, 0x2264, 0x2265, 0x00a5, 0x00b5, 0x2202, 0x2211,
+  0x220f, 0x03c0, 0x222b, 0x00aa, 0x00ba, 0x2126, 0x00e6, 0x00f8,
+  /* 0xc0 */
+  0x00bf, 0x00a1, 0x00ac, 0x221a, 0x0192, 0x2248, 0x2206, 0x00ab,
+  0x00bb, 0x2026, 0x00a0, 0x00c0, 0x00c3, 0x00d5, 0x0152, 0x0153,
+  /* 0xd0 */
+  0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25ca,
+  0x00ff, 0x0178, 0x2044, 0x00a4, 0x2039, 0x203a, 0xfb01, 0xfb02,
+  /* 0xe0 */
+  0x2021, 0x00b7, 0x201a, 0x201e, 0x2030, 0x00c2, 0x00ca, 0x00c1,
+  0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00d3, 0x00d4,
+  /* 0xf0 */
+  0xfffd, 0x00d2, 0x00da, 0x00db, 0x00d9, 0x0131, 0x02c6, 0x02dc,
+  0x00af, 0x02d8, 0x02d9, 0x02da, 0x00b8, 0x02dd, 0x02db, 0x02c7,
+};
+
+static int
+mac_roman_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = mac_roman_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char mac_roman_page00[96] = {
+  0xca, 0xc1, 0xa2, 0xa3, 0xdb, 0xb4, 0x00, 0xa4, /* 0xa0-0xa7 */
+  0xac, 0xa9, 0xbb, 0xc7, 0xc2, 0x00, 0xa8, 0xf8, /* 0xa8-0xaf */
+  0xa1, 0xb1, 0x00, 0x00, 0xab, 0xb5, 0xa6, 0xe1, /* 0xb0-0xb7 */
+  0xfc, 0x00, 0xbc, 0xc8, 0x00, 0x00, 0x00, 0xc0, /* 0xb8-0xbf */
+  0xcb, 0xe7, 0xe5, 0xcc, 0x80, 0x81, 0xae, 0x82, /* 0xc0-0xc7 */
+  0xe9, 0x83, 0xe6, 0xe8, 0xed, 0xea, 0xeb, 0xec, /* 0xc8-0xcf */
+  0x00, 0x84, 0xf1, 0xee, 0xef, 0xcd, 0x85, 0x00, /* 0xd0-0xd7 */
+  0xaf, 0xf4, 0xf2, 0xf3, 0x86, 0x00, 0x00, 0xa7, /* 0xd8-0xdf */
+  0x88, 0x87, 0x89, 0x8b, 0x8a, 0x8c, 0xbe, 0x8d, /* 0xe0-0xe7 */
+  0x8f, 0x8e, 0x90, 0x91, 0x93, 0x92, 0x94, 0x95, /* 0xe8-0xef */
+  0x00, 0x96, 0x98, 0x97, 0x99, 0x9b, 0x9a, 0xd6, /* 0xf0-0xf7 */
+  0xbf, 0x9d, 0x9c, 0x9e, 0x9f, 0x00, 0x00, 0xd8, /* 0xf8-0xff */
+};
+static const unsigned char mac_roman_page01[104] = {
+  0x00, 0xf5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0xce, 0xcf, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0xd9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0xc4, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char mac_roman_page02[32] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf6, 0xff, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0xf9, 0xfa, 0xfb, 0xfe, 0xf7, 0xfd, 0x00, 0x00, /* 0xd8-0xdf */
+};
+static const unsigned char mac_roman_page20[56] = {
+  0x00, 0x00, 0x00, 0xd0, 0xd1, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd4, 0xd5, 0xe2, 0x00, 0xd2, 0xd3, 0xe3, 0x00, /* 0x18-0x1f */
+  0xa0, 0xe0, 0xa5, 0x00, 0x00, 0x00, 0xc9, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0xe4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0xdc, 0xdd, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+};
+static const unsigned char mac_roman_page21[8] = {
+  0x00, 0x00, 0xaa, 0x00, 0x00, 0x00, 0xbd, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char mac_roman_page22[104] = {
+  0x00, 0x00, 0xb6, 0x00, 0x00, 0x00, 0xc6, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb8, /* 0x08-0x0f */
+  0x00, 0xb7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, 0xb0, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0xba, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0xc5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xad, 0x00, 0x00, 0x00, 0xb2, 0xb3, 0x00, 0x00, /* 0x60-0x67 */
+};
+static const unsigned char mac_roman_pagefb[8] = {
+  0x00, 0xde, 0xdf, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+};
+
+static int
+mac_roman_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = mac_roman_page00[wc-0x00a0];
+  else if (wc >= 0x0130 && wc < 0x0198)
+    c = mac_roman_page01[wc-0x0130];
+  else if (wc >= 0x02c0 && wc < 0x02e0)
+    c = mac_roman_page02[wc-0x02c0];
+  else if (wc == 0x03c0)
+    c = 0xb9;
+  else if (wc >= 0x2010 && wc < 0x2048)
+    c = mac_roman_page20[wc-0x2010];
+  else if (wc >= 0x2120 && wc < 0x2128)
+    c = mac_roman_page21[wc-0x2120];
+  else if (wc >= 0x2200 && wc < 0x2268)
+    c = mac_roman_page22[wc-0x2200];
+  else if (wc == 0x25ca)
+    c = 0xd7;
+  else if (wc >= 0xfb00 && wc < 0xfb08)
+    c = mac_roman_pagefb[wc-0xfb00];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/mac_romania.h b/graf2d/win32gdk/gdk/src/iconv/mac_romania.h
new file mode 100644
index 00000000000..2d35562d897
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/mac_romania.h
@@ -0,0 +1,165 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * MacRomania
+ */
+
+static const unsigned short mac_romania_2uni[128] = {
+  /* 0x80 */
+  0x00c4, 0x00c5, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
+  0x00e0, 0x00e2, 0x00e4, 0x00e3, 0x00e5, 0x00e7, 0x00e9, 0x00e8,
+  /* 0x90 */
+  0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
+  0x00f2, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
+  /* 0xa0 */
+  0x2020, 0x00b0, 0x00a2, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df,
+  0x00ae, 0x00a9, 0x2122, 0x00b4, 0x00a8, 0x2260, 0x0102, 0x015e,
+  /* 0xb0 */
+  0x221e, 0x00b1, 0x2264, 0x2265, 0x00a5, 0x00b5, 0x2202, 0x2211,
+  0x220f, 0x03c0, 0x222b, 0x00aa, 0x00ba, 0x2126, 0x0103, 0x015f,
+  /* 0xc0 */
+  0x00bf, 0x00a1, 0x00ac, 0x221a, 0x0192, 0x2248, 0x2206, 0x00ab,
+  0x00bb, 0x2026, 0x00a0, 0x00c0, 0x00c3, 0x00d5, 0x0152, 0x0153,
+  /* 0xd0 */
+  0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25ca,
+  0x00ff, 0x0178, 0x2044, 0x00a4, 0x2039, 0x203a, 0x0162, 0x0163,
+  /* 0xe0 */
+  0x2021, 0x00b7, 0x201a, 0x201e, 0x2030, 0x00c2, 0x00ca, 0x00c1,
+  0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00d3, 0x00d4,
+  /* 0xf0 */
+  0xfffd, 0x00d2, 0x00da, 0x00db, 0x00d9, 0x0131, 0x02c6, 0x02dc,
+  0x00af, 0x02d8, 0x02d9, 0x02da, 0x00b8, 0x02dd, 0x02db, 0x02c7,
+};
+
+static int
+mac_romania_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = mac_romania_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char mac_romania_page00[248] = {
+  0xca, 0xc1, 0xa2, 0xa3, 0xdb, 0xb4, 0x00, 0xa4, /* 0xa0-0xa7 */
+  0xac, 0xa9, 0xbb, 0xc7, 0xc2, 0x00, 0xa8, 0xf8, /* 0xa8-0xaf */
+  0xa1, 0xb1, 0x00, 0x00, 0xab, 0xb5, 0xa6, 0xe1, /* 0xb0-0xb7 */
+  0xfc, 0x00, 0xbc, 0xc8, 0x00, 0x00, 0x00, 0xc0, /* 0xb8-0xbf */
+  0xcb, 0xe7, 0xe5, 0xcc, 0x80, 0x81, 0x00, 0x82, /* 0xc0-0xc7 */
+  0xe9, 0x83, 0xe6, 0xe8, 0xed, 0xea, 0xeb, 0xec, /* 0xc8-0xcf */
+  0x00, 0x84, 0xf1, 0xee, 0xef, 0xcd, 0x85, 0x00, /* 0xd0-0xd7 */
+  0x00, 0xf4, 0xf2, 0xf3, 0x86, 0x00, 0x00, 0xa7, /* 0xd8-0xdf */
+  0x88, 0x87, 0x89, 0x8b, 0x8a, 0x8c, 0x00, 0x8d, /* 0xe0-0xe7 */
+  0x8f, 0x8e, 0x90, 0x91, 0x93, 0x92, 0x94, 0x95, /* 0xe8-0xef */
+  0x00, 0x96, 0x98, 0x97, 0x99, 0x9b, 0x9a, 0xd6, /* 0xf0-0xf7 */
+  0x00, 0x9d, 0x9c, 0x9e, 0x9f, 0x00, 0x00, 0xd8, /* 0xf8-0xff */
+  /* 0x0100 */
+  0x00, 0x00, 0xae, 0xbe, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0xf5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0xce, 0xcf, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaf, 0xbf, /* 0x58-0x5f */
+  0x00, 0x00, 0xde, 0xdf, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0xd9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0xc4, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char mac_romania_page02[32] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf6, 0xff, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0xf9, 0xfa, 0xfb, 0xfe, 0xf7, 0xfd, 0x00, 0x00, /* 0xd8-0xdf */
+};
+static const unsigned char mac_romania_page20[56] = {
+  0x00, 0x00, 0x00, 0xd0, 0xd1, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd4, 0xd5, 0xe2, 0x00, 0xd2, 0xd3, 0xe3, 0x00, /* 0x18-0x1f */
+  0xa0, 0xe0, 0xa5, 0x00, 0x00, 0x00, 0xc9, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0xe4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0xdc, 0xdd, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+};
+static const unsigned char mac_romania_page21[8] = {
+  0x00, 0x00, 0xaa, 0x00, 0x00, 0x00, 0xbd, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char mac_romania_page22[104] = {
+  0x00, 0x00, 0xb6, 0x00, 0x00, 0x00, 0xc6, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb8, /* 0x08-0x0f */
+  0x00, 0xb7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, 0xb0, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0xba, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0xc5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xad, 0x00, 0x00, 0x00, 0xb2, 0xb3, 0x00, 0x00, /* 0x60-0x67 */
+};
+
+static int
+mac_romania_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0198)
+    c = mac_romania_page00[wc-0x00a0];
+  else if (wc >= 0x02c0 && wc < 0x02e0)
+    c = mac_romania_page02[wc-0x02c0];
+  else if (wc == 0x03c0)
+    c = 0xb9;
+  else if (wc >= 0x2010 && wc < 0x2048)
+    c = mac_romania_page20[wc-0x2010];
+  else if (wc >= 0x2120 && wc < 0x2128)
+    c = mac_romania_page21[wc-0x2120];
+  else if (wc >= 0x2200 && wc < 0x2268)
+    c = mac_romania_page22[wc-0x2200];
+  else if (wc == 0x25ca)
+    c = 0xd7;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/mac_thai.h b/graf2d/win32gdk/gdk/src/iconv/mac_thai.h
new file mode 100644
index 00000000000..74d15aaf7f5
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/mac_thai.h
@@ -0,0 +1,128 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * MacThai
+ */
+
+static const unsigned short mac_thai_2uni[128] = {
+  /* 0x80 */
+  0x00ab, 0x00bb, 0x2026, 0xf88c, 0xf88f, 0xf892, 0xf895, 0xf898,
+  0xf88b, 0xf88e, 0xf891, 0xf894, 0xf897, 0x201c, 0x201d, 0xf899,
+  /* 0x90 */
+  0xfffd, 0x2022, 0xf884, 0xf889, 0xf885, 0xf886, 0xf887, 0xf888,
+  0xf88a, 0xf88d, 0xf890, 0xf893, 0xf896, 0x2018, 0x2019, 0xfffd,
+  /* 0xa0 */
+  0x00a0, 0x0e01, 0x0e02, 0x0e03, 0x0e04, 0x0e05, 0x0e06, 0x0e07,
+  0x0e08, 0x0e09, 0x0e0a, 0x0e0b, 0x0e0c, 0x0e0d, 0x0e0e, 0x0e0f,
+  /* 0xb0 */
+  0x0e10, 0x0e11, 0x0e12, 0x0e13, 0x0e14, 0x0e15, 0x0e16, 0x0e17,
+  0x0e18, 0x0e19, 0x0e1a, 0x0e1b, 0x0e1c, 0x0e1d, 0x0e1e, 0x0e1f,
+  /* 0xc0 */
+  0x0e20, 0x0e21, 0x0e22, 0x0e23, 0x0e24, 0x0e25, 0x0e26, 0x0e27,
+  0x0e28, 0x0e29, 0x0e2a, 0x0e2b, 0x0e2c, 0x0e2d, 0x0e2e, 0x0e2f,
+  /* 0xd0 */
+  0x0e30, 0x0e31, 0x0e32, 0x0e33, 0x0e34, 0x0e35, 0x0e36, 0x0e37,
+  0x0e38, 0x0e39, 0x0e3a, 0xfeff, 0x200b, 0x2013, 0x2014, 0x0e3f,
+  /* 0xe0 */
+  0x0e40, 0x0e41, 0x0e42, 0x0e43, 0x0e44, 0x0e45, 0x0e46, 0x0e47,
+  0x0e48, 0x0e49, 0x0e4a, 0x0e4b, 0x0e4c, 0x0e4d, 0x2122, 0x0e4f,
+  /* 0xf0 */
+  0x0e50, 0x0e51, 0x0e52, 0x0e53, 0x0e54, 0x0e55, 0x0e56, 0x0e57,
+  0x0e58, 0x0e59, 0x00ae, 0x00a9, 0xfffd, 0xfffd, 0xfffd, 0xfffd,
+};
+
+static int
+mac_thai_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = mac_thai_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char mac_thai_page00[32] = {
+  0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0xfb, 0x00, 0x80, 0x00, 0x00, 0xfa, 0x00, /* 0xa8-0xaf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+};
+static const unsigned char mac_thai_page0e[96] = {
+  0x00, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, /* 0x00-0x07 */
+  0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, /* 0x08-0x0f */
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, /* 0x10-0x17 */
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, /* 0x18-0x1f */
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x20-0x27 */
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x28-0x2f */
+  0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0x30-0x37 */
+  0xd8, 0xd9, 0xda, 0x00, 0x00, 0x00, 0x00, 0xdf, /* 0x38-0x3f */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x40-0x47 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0x00, 0xef, /* 0x48-0x4f */
+  0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0x50-0x57 */
+  0xf8, 0xf9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+};
+static const unsigned char mac_thai_page20[32] = {
+  0x00, 0x00, 0x00, 0xdc, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0xdd, 0xde, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x9d, 0x9e, 0x00, 0x00, 0x8d, 0x8e, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x91, 0x00, 0x00, 0x00, 0x82, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char mac_thai_pagef8[32] = {
+  0x00, 0x00, 0x00, 0x00, 0x92, 0x94, 0x95, 0x96, /* 0x80-0x87 */
+  0x97, 0x93, 0x98, 0x88, 0x83, 0x99, 0x89, 0x84, /* 0x88-0x8f */
+  0x9a, 0x8a, 0x85, 0x9b, 0x8b, 0x86, 0x9c, 0x8c, /* 0x90-0x97 */
+  0x87, 0x8f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+};
+
+static int
+mac_thai_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00c0)
+    c = mac_thai_page00[wc-0x00a0];
+  else if (wc >= 0x0e00 && wc < 0x0e60)
+    c = mac_thai_page0e[wc-0x0e00];
+  else if (wc >= 0x2008 && wc < 0x2028)
+    c = mac_thai_page20[wc-0x2008];
+  else if (wc == 0x2122)
+    c = 0xee;
+  else if (wc >= 0xf880 && wc < 0xf8a0)
+    c = mac_thai_pagef8[wc-0xf880];
+  else if (wc == 0xfeff)
+    c = 0xdb;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/mac_turkish.h b/graf2d/win32gdk/gdk/src/iconv/mac_turkish.h
new file mode 100644
index 00000000000..94f7d376b93
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/mac_turkish.h
@@ -0,0 +1,163 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * MacTurkish
+ */
+
+static const unsigned short mac_turkish_2uni[128] = {
+  /* 0x80 */
+  0x00c4, 0x00c5, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
+  0x00e0, 0x00e2, 0x00e4, 0x00e3, 0x00e5, 0x00e7, 0x00e9, 0x00e8,
+  /* 0x90 */
+  0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
+  0x00f2, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
+  /* 0xa0 */
+  0x2020, 0x00b0, 0x00a2, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df,
+  0x00ae, 0x00a9, 0x2122, 0x00b4, 0x00a8, 0x2260, 0x00c6, 0x00d8,
+  /* 0xb0 */
+  0x221e, 0x00b1, 0x2264, 0x2265, 0x00a5, 0x00b5, 0x2202, 0x2211,
+  0x220f, 0x03c0, 0x222b, 0x00aa, 0x00ba, 0x2126, 0x00e6, 0x00f8,
+  /* 0xc0 */
+  0x00bf, 0x00a1, 0x00ac, 0x221a, 0x0192, 0x2248, 0x2206, 0x00ab,
+  0x00bb, 0x2026, 0x00a0, 0x00c0, 0x00c3, 0x00d5, 0x0152, 0x0153,
+  /* 0xd0 */
+  0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25ca,
+  0x00ff, 0x0178, 0x011e, 0x011f, 0x0130, 0x0131, 0x015e, 0x015f,
+  /* 0xe0 */
+  0x2021, 0x00b7, 0x201a, 0x201e, 0x2030, 0x00c2, 0x00ca, 0x00c1,
+  0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00d3, 0x00d4,
+  /* 0xf0 */
+  0xfffd, 0x00d2, 0x00da, 0x00db, 0x00d9, 0xfffd, 0x02c6, 0x02dc,
+  0x00af, 0x02d8, 0x02d9, 0x02da, 0x00b8, 0x02dd, 0x02db, 0x02c7,
+};
+
+static int
+mac_turkish_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = mac_turkish_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char mac_turkish_page00[96] = {
+  0xca, 0xc1, 0xa2, 0xa3, 0x00, 0xb4, 0x00, 0xa4, /* 0xa0-0xa7 */
+  0xac, 0xa9, 0xbb, 0xc7, 0xc2, 0x00, 0xa8, 0xf8, /* 0xa8-0xaf */
+  0xa1, 0xb1, 0x00, 0x00, 0xab, 0xb5, 0xa6, 0xe1, /* 0xb0-0xb7 */
+  0xfc, 0x00, 0xbc, 0xc8, 0x00, 0x00, 0x00, 0xc0, /* 0xb8-0xbf */
+  0xcb, 0xe7, 0xe5, 0xcc, 0x80, 0x81, 0xae, 0x82, /* 0xc0-0xc7 */
+  0xe9, 0x83, 0xe6, 0xe8, 0xed, 0xea, 0xeb, 0xec, /* 0xc8-0xcf */
+  0x00, 0x84, 0xf1, 0xee, 0xef, 0xcd, 0x85, 0x00, /* 0xd0-0xd7 */
+  0xaf, 0xf4, 0xf2, 0xf3, 0x86, 0x00, 0x00, 0xa7, /* 0xd8-0xdf */
+  0x88, 0x87, 0x89, 0x8b, 0x8a, 0x8c, 0xbe, 0x8d, /* 0xe0-0xe7 */
+  0x8f, 0x8e, 0x90, 0x91, 0x93, 0x92, 0x94, 0x95, /* 0xe8-0xef */
+  0x00, 0x96, 0x98, 0x97, 0x99, 0x9b, 0x9a, 0xd6, /* 0xf0-0xf7 */
+  0xbf, 0x9d, 0x9c, 0x9e, 0x9f, 0x00, 0x00, 0xd8, /* 0xf8-0xff */
+};
+static const unsigned char mac_turkish_page01[128] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xda, 0xdb, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0xdc, 0xdd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0xce, 0xcf, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xde, 0xdf, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0xd9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0xc4, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char mac_turkish_page02[32] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf6, 0xff, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0xf9, 0xfa, 0xfb, 0xfe, 0xf7, 0xfd, 0x00, 0x00, /* 0xd8-0xdf */
+};
+static const unsigned char mac_turkish_page20[40] = {
+  0x00, 0x00, 0x00, 0xd0, 0xd1, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd4, 0xd5, 0xe2, 0x00, 0xd2, 0xd3, 0xe3, 0x00, /* 0x18-0x1f */
+  0xa0, 0xe0, 0xa5, 0x00, 0x00, 0x00, 0xc9, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0xe4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+};
+static const unsigned char mac_turkish_page21[8] = {
+  0x00, 0x00, 0xaa, 0x00, 0x00, 0x00, 0xbd, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char mac_turkish_page22[104] = {
+  0x00, 0x00, 0xb6, 0x00, 0x00, 0x00, 0xc6, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb8, /* 0x08-0x0f */
+  0x00, 0xb7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, 0xb0, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0xba, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0xc5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xad, 0x00, 0x00, 0x00, 0xb2, 0xb3, 0x00, 0x00, /* 0x60-0x67 */
+};
+
+static int
+mac_turkish_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = mac_turkish_page00[wc-0x00a0];
+  else if (wc >= 0x0118 && wc < 0x0198)
+    c = mac_turkish_page01[wc-0x0118];
+  else if (wc >= 0x02c0 && wc < 0x02e0)
+    c = mac_turkish_page02[wc-0x02c0];
+  else if (wc == 0x03c0)
+    c = 0xb9;
+  else if (wc >= 0x2010 && wc < 0x2038)
+    c = mac_turkish_page20[wc-0x2010];
+  else if (wc >= 0x2120 && wc < 0x2128)
+    c = mac_turkish_page21[wc-0x2120];
+  else if (wc >= 0x2200 && wc < 0x2268)
+    c = mac_turkish_page22[wc-0x2200];
+  else if (wc == 0x25ca)
+    c = 0xd7;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/mac_ukraine.h b/graf2d/win32gdk/gdk/src/iconv/mac_ukraine.h
new file mode 100644
index 00000000000..8ea17b09c9a
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/mac_ukraine.h
@@ -0,0 +1,143 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * MacUkraine
+ */
+
+static const unsigned short mac_ukraine_2uni[128] = {
+  /* 0x80 */
+  0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417,
+  0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e, 0x041f,
+  /* 0x90 */
+  0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427,
+  0x0428, 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e, 0x042f,
+  /* 0xa0 */
+  0x2020, 0x00b0, 0x0490, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x0406,
+  0x00ae, 0x00a9, 0x2122, 0x0402, 0x0452, 0x2260, 0x0403, 0x0453,
+  /* 0xb0 */
+  0x221e, 0x00b1, 0x2264, 0x2265, 0x0456, 0x00b5, 0x0491, 0x0408,
+  0x0404, 0x0454, 0x0407, 0x0457, 0x0409, 0x0459, 0x040a, 0x045a,
+  /* 0xc0 */
+  0x0458, 0x0405, 0x00ac, 0x221a, 0x0192, 0x2248, 0x2206, 0x00ab,
+  0x00bb, 0x2026, 0x00a0, 0x040b, 0x045b, 0x040c, 0x045c, 0x0455,
+  /* 0xd0 */
+  0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x201e,
+  0x040e, 0x045e, 0x040f, 0x045f, 0x2116, 0x0401, 0x0451, 0x044f,
+  /* 0xe0 */
+  0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437,
+  0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f,
+  /* 0xf0 */
+  0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
+  0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x00a4,
+};
+
+static int
+mac_ukraine_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c >= 0x80)
+    *pwc = (ucs4_t) mac_ukraine_2uni[c-0x80];
+  else
+    *pwc = (ucs4_t) c;
+  return 1;
+}
+
+static const unsigned char mac_ukraine_page00[32] = {
+  0xca, 0x00, 0x00, 0xa3, 0xff, 0x00, 0x00, 0xa4, /* 0xa0-0xa7 */
+  0x00, 0xa9, 0x00, 0xc7, 0xc2, 0x00, 0xa8, 0x00, /* 0xa8-0xaf */
+  0xa1, 0xb1, 0x00, 0x00, 0x00, 0xb5, 0xa6, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0xc8, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+};
+static const unsigned char mac_ukraine_page04[152] = {
+  0x00, 0xdd, 0xab, 0xae, 0xb8, 0xc1, 0xa7, 0xba, /* 0x00-0x07 */
+  0xb7, 0xbc, 0xbe, 0xcb, 0xcd, 0x00, 0xd8, 0xda, /* 0x08-0x0f */
+  0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, /* 0x10-0x17 */
+  0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, /* 0x18-0x1f */
+  0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, /* 0x20-0x27 */
+  0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, /* 0x28-0x2f */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x30-0x37 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x38-0x3f */
+  0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0x40-0x47 */
+  0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xdf, /* 0x48-0x4f */
+  0x00, 0xde, 0xac, 0xaf, 0xb9, 0xcf, 0xb4, 0xbb, /* 0x50-0x57 */
+  0xc0, 0xbd, 0xbf, 0xcc, 0xce, 0x00, 0xd9, 0xdb, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0xa2, 0xb6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char mac_ukraine_page20[24] = {
+  0x00, 0x00, 0x00, 0xd0, 0xd1, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0xd4, 0xd5, 0x00, 0x00, 0xd2, 0xd3, 0xd7, 0x00, /* 0x18-0x1f */
+  0xa0, 0x00, 0xa5, 0x00, 0x00, 0x00, 0xc9, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char mac_ukraine_page21[24] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdc, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char mac_ukraine_page22[104] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, 0xb0, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0xc5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0xad, 0x00, 0x00, 0x00, 0xb2, 0xb3, 0x00, 0x00, /* 0x60-0x67 */
+};
+
+static int
+mac_ukraine_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00c0)
+    c = mac_ukraine_page00[wc-0x00a0];
+  else if (wc == 0x00f7)
+    c = 0xd6;
+  else if (wc == 0x0192)
+    c = 0xc4;
+  else if (wc >= 0x0400 && wc < 0x0498)
+    c = mac_ukraine_page04[wc-0x0400];
+  else if (wc >= 0x2010 && wc < 0x2028)
+    c = mac_ukraine_page20[wc-0x2010];
+  else if (wc >= 0x2110 && wc < 0x2128)
+    c = mac_ukraine_page21[wc-0x2110];
+  else if (wc >= 0x2200 && wc < 0x2268)
+    c = mac_ukraine_page22[wc-0x2200];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/makefile.msc b/graf2d/win32gdk/gdk/src/iconv/makefile.msc
new file mode 100644
index 00000000000..756ecf6d1c8
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/makefile.msc
@@ -0,0 +1,83 @@
+## Makefile for building the iconv dlls with Microsoft C
+## Use: nmake -f makefile.msc
+
+##
+## Used a writeup on the web to guide me:
+##
+##  http://www.codeproject.com/Articles/302012/How-to-Build-libiconv-with-Microsoft-Visual-Studio
+##
+
+ICONV_VER=1.3
+
+################################################################
+# Flags
+# See if debug is defined
+
+!IFNDEF DEBUG
+# Full optimization:
+OPTIMIZE = -O2 -MD
+!ELSE
+# Debugging:
+OPTIMIZE = -Z7 -MDd
+LINKDEBUG = /debug
+!ENDIF
+
+# The CC flags depend if NMCXXFLAGS was passed in. If so, it overrides everything.
+
+# cl -? describes the options
+#CC = cl -G5 -GF $(OPTIMIZE) -W3 -nologo
+!if "$(NMCXXFLAGS)" == ""
+CC = cl -GR $(OPTIMIZE) -W3 -nologo
+!else
+CC = cl -nologo $(NMCXXFLAGS)
+!endif
+
+LDFLAGS = /link $(LINKDEBUG)
+
+# Check if nmake version is 8.xx or 9.xx
+!if ([nmake /? 2>&1 | findstr /c:"Version 8\." > nul ] == 0) || \
+	([nmake /? 2>&1 | findstr /c:"Version 9\." > nul ] == 0)
+MT_DLL   = mt -nologo -manifest $@.manifest -outputresource:$@;2
+CLEAN_MT = -@erase /q $@.manifest >nul 2>&1
+!else
+MT_DLL   = 
+CLEAN_MT = 
+!endif
+
+#
+# Basic C++ flags
+#
+
+CFLAGS = -I. -DBUILDING_LIBICONV -DBUILDING_LIBCHARSET
+#-DG_ENABLE_DEBUG -DHAVE_CONFIG_H -DGDK_VERSION=\"$(GTK_VER)\"
+######################
+
+all :				\
+	iconv-$(GLIB_VER).dll
+
+iconv_OBJECTS =			\
+	relocatable.obj		\
+	localcharset.obj		\
+	iconv.obj		\
+
+################ glib
+
+iconv-$(GLIB_VER).dll : $(iconv_OBJECTS)
+	$(CC) $(CFLAGS) -LD -Feiconv-$(ICONV_VER).dll $(iconv_OBJECTS) $(LIBICONV_LIBS) $(INTL_LIBS) user32.lib advapi32.lib wsock32.lib $(LDFLAGS)
+	$(MT_DLL)
+	$(CLEAN_MT)
+
+.c.obj :
+	$(CC) $(CFLAGS) -c $<
+
+################ other stuff
+
+clean::
+	-@erase /q *.dll >nul 2>&1
+	-@erase /q *.obj >nul 2>&1
+	-@erase /q *.lib >nul 2>&1
+	-@erase /q *.err >nul 2>&1
+	-@erase /q *.res >nul 2>&1
+	-@erase /q *.exp >nul 2>&1
+	-@erase /q *.pdb >nul 2>&1
+	-@erase /q *.ilk >nul 2>&1
diff --git a/graf2d/win32gdk/gdk/src/iconv/mulelao.h b/graf2d/win32gdk/gdk/src/iconv/mulelao.h
new file mode 100644
index 00000000000..abfb5cf0ee2
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/mulelao.h
@@ -0,0 +1,96 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * MULELAO-1
+ */
+
+static const unsigned short mulelao_2uni[96] = {
+  /* 0xa0 */
+  0x00a0, 0x0e81, 0x0e82, 0xfffd, 0x0e84, 0xfffd, 0xfffd, 0x0e87,
+  0x0e88, 0xfffd, 0x0e8a, 0xfffd, 0xfffd, 0x0e8d, 0xfffd, 0xfffd,
+  /* 0xb0 */
+  0xfffd, 0xfffd, 0xfffd, 0xfffd, 0x0e94, 0x0e95, 0x0e96, 0x0e97,
+  0xfffd, 0x0e99, 0x0e9a, 0x0e9b, 0x0e9c, 0x0e9d, 0x0e9e, 0x0e9f,
+  /* 0xc0 */
+  0xfffd, 0x0ea1, 0x0ea2, 0x0ea3, 0xfffd, 0x0ea5, 0xfffd, 0x0ea7,
+  0xfffd, 0xfffd, 0x0eaa, 0x0eab, 0xfffd, 0x0ead, 0x0eae, 0x0eaf,
+  /* 0xd0 */
+  0x0eb0, 0x0eb1, 0x0eb2, 0x0eb3, 0x0eb4, 0x0eb5, 0x0eb6, 0x0eb7,
+  0x0eb8, 0x0eb9, 0xfffd, 0x0ebb, 0x0ebc, 0x0ebd, 0xfffd, 0xfffd,
+  /* 0xe0 */
+  0x0ec0, 0x0ec1, 0x0ec2, 0x0ec3, 0x0ec4, 0xfffd, 0x0ec6, 0xfffd,
+  0x0ec8, 0x0ec9, 0x0eca, 0x0ecb, 0x0ecc, 0x0ecd, 0xfffd, 0xfffd,
+  /* 0xf0 */
+  0x0ed0, 0x0ed1, 0x0ed2, 0x0ed3, 0x0ed4, 0x0ed5, 0x0ed6, 0x0ed7,
+  0x0ed8, 0x0ed9, 0xfffd, 0xfffd, 0x0edc, 0x0edd, 0xfffd, 0xfffd,
+};
+
+static int
+mulelao_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0xa0) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = mulelao_2uni[c-0xa0];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char mulelao_page0e[96] = {
+  0x00, 0xa1, 0xa2, 0x00, 0xa4, 0x00, 0x00, 0xa7, /* 0x80-0x87 */
+  0xa8, 0x00, 0xaa, 0x00, 0x00, 0xad, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0x00, 0x00, 0xb4, 0xb5, 0xb6, 0xb7, /* 0x90-0x97 */
+  0x00, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, /* 0x98-0x9f */
+  0x00, 0xc1, 0xc2, 0xc3, 0x00, 0xc5, 0x00, 0xc7, /* 0xa0-0xa7 */
+  0x00, 0x00, 0xca, 0xcb, 0x00, 0xcd, 0xce, 0xcf, /* 0xa8-0xaf */
+  0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0xb0-0xb7 */
+  0xd8, 0xd9, 0x00, 0xdb, 0xdc, 0xdd, 0x00, 0x00, /* 0xb8-0xbf */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0x00, 0xe6, 0x00, /* 0xc0-0xc7 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0x00, 0x00, /* 0xc8-0xcf */
+  0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0xd0-0xd7 */
+  0xf8, 0xf9, 0x00, 0x00, 0xfc, 0xfd, 0x00, 0x00, /* 0xd8-0xdf */
+};
+
+static int
+mulelao_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x00a0) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc == 0x00a0)
+    c = 0xa0;
+  else if (wc >= 0x0e80 && wc < 0x0ee0)
+    c = mulelao_page0e[wc-0x0e80];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/nextstep.h b/graf2d/win32gdk/gdk/src/iconv/nextstep.h
new file mode 100644
index 00000000000..ffe41b91700
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/nextstep.h
@@ -0,0 +1,141 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * NEXTSTEP
+ */
+
+static const unsigned short nextstep_2uni[128] = {
+  /* 0x80 */
+  0x00a0, 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c7,
+  0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
+  /* 0x90 */
+  0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d9,
+  0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00b5, 0x00d7, 0x00f7,
+  /* 0xa0 */
+  0x00a9, 0x00a1, 0x00a2, 0x00a3, 0x2044, 0x00a5, 0x0192, 0x00a7,
+  0x00a4, 0x2019, 0x201c, 0x00ab, 0x2039, 0x203a, 0xfb01, 0xfb02,
+  /* 0xb0 */
+  0x00ae, 0x2013, 0x2020, 0x2021, 0x00b7, 0x00a6, 0x00b6, 0x2022,
+  0x201a, 0x201e, 0x201d, 0x00bb, 0x2026, 0x2030, 0x00ac, 0x00bf,
+  /* 0xc0 */
+  0x00b9, 0x02cb, 0x00b4, 0x02c6, 0x02dc, 0x00af, 0x02d8, 0x02d9,
+  0x00a8, 0x00b2, 0x02da, 0x00b8, 0x00b3, 0x02dd, 0x02db, 0x02c7,
+  /* 0xd0 */
+  0x2014, 0x00b1, 0x00bc, 0x00bd, 0x00be, 0x00e0, 0x00e1, 0x00e2,
+  0x00e3, 0x00e4, 0x00e5, 0x00e7, 0x00e8, 0x00e9, 0x00ea, 0x00eb,
+  /* 0xe0 */
+  0x00ec, 0x00c6, 0x00ed, 0x00aa, 0x00ee, 0x00ef, 0x00f0, 0x00f1,
+  0x0141, 0x00d8, 0x0152, 0x00ba, 0x00f2, 0x00f3, 0x00f4, 0x00f5,
+  /* 0xf0 */
+  0x00f6, 0x00e6, 0x00f9, 0x00fa, 0x00fb, 0x0131, 0x00fc, 0x00fd,
+  0x0142, 0x00f8, 0x0153, 0x00df, 0x00fe, 0x00ff, 0xfffd, 0xfffd,
+};
+
+static int
+nextstep_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = nextstep_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char nextstep_page00[96] = {
+  0x80, 0xa1, 0xa2, 0xa3, 0xa8, 0xa5, 0xb5, 0xa7, /* 0xa0-0xa7 */
+  0xc8, 0xa0, 0xe3, 0xab, 0xbe, 0x00, 0xb0, 0xc5, /* 0xa8-0xaf */
+  0x00, 0xd1, 0xc9, 0xcc, 0xc2, 0x9d, 0xb6, 0xb4, /* 0xb0-0xb7 */
+  0xcb, 0xc0, 0xeb, 0xbb, 0xd2, 0xd3, 0xd4, 0xbf, /* 0xb8-0xbf */
+  0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0xe1, 0x87, /* 0xc0-0xc7 */
+  0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, /* 0xc8-0xcf */
+  0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x9e, /* 0xd0-0xd7 */
+  0xe9, 0x97, 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0xfb, /* 0xd8-0xdf */
+  0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xf1, 0xdb, /* 0xe0-0xe7 */
+  0xdc, 0xdd, 0xde, 0xdf, 0xe0, 0xe2, 0xe4, 0xe5, /* 0xe8-0xef */
+  0xe6, 0xe7, 0xec, 0xed, 0xee, 0xef, 0xf0, 0x9f, /* 0xf0-0xf7 */
+  0xf9, 0xf2, 0xf3, 0xf4, 0xf6, 0xf7, 0xfc, 0xfd, /* 0xf8-0xff */
+};
+static const unsigned char nextstep_page01[104] = {
+  0x00, 0xf5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0xe8, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0xea, 0xfa, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0xa6, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+};
+static const unsigned char nextstep_page02[32] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc3, 0xcf, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0xc1, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0xc6, 0xc7, 0xca, 0xce, 0xc4, 0xcd, 0x00, 0x00, /* 0xd8-0xdf */
+};
+static const unsigned char nextstep_page20[56] = {
+  0x00, 0x00, 0x00, 0xb1, 0xd0, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0xa9, 0xb8, 0x00, 0xaa, 0xba, 0xb9, 0x00, /* 0x18-0x1f */
+  0xb2, 0xb3, 0xb7, 0x00, 0x00, 0x00, 0xbc, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0xbd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0xac, 0xad, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0xa4, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+};
+static const unsigned char nextstep_pagefb[8] = {
+  0x00, 0xae, 0xaf, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+};
+
+static int
+nextstep_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x0100)
+    c = nextstep_page00[wc-0x00a0];
+  else if (wc >= 0x0130 && wc < 0x0198)
+    c = nextstep_page01[wc-0x0130];
+  else if (wc >= 0x02c0 && wc < 0x02e0)
+    c = nextstep_page02[wc-0x02c0];
+  else if (wc >= 0x2010 && wc < 0x2048)
+    c = nextstep_page20[wc-0x2010];
+  else if (wc >= 0xfb00 && wc < 0xfb08)
+    c = nextstep_pagefb[wc-0xfb00];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/pt154.h b/graf2d/win32gdk/gdk/src/iconv/pt154.h
new file mode 100644
index 00000000000..36a5d84fc24
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/pt154.h
@@ -0,0 +1,118 @@
+/*
+ * Copyright (C) 1999-2005 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * PT154
+ */
+
+static const unsigned short pt154_2uni[64] = {
+  /* 0x80 */
+  0x0496, 0x0492, 0x04ee, 0x0493, 0x201e, 0x2026, 0x04b6, 0x04ae,
+  0x04b2, 0x04af, 0x04a0, 0x04e2, 0x04a2, 0x049a, 0x04ba, 0x04b8,
+  /* 0x90 */
+  0x0497, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+  0x04b3, 0x04b7, 0x04a1, 0x04e3, 0x04a3, 0x049b, 0x04bb, 0x04b9,
+  /* 0xa0 */
+  0x00a0, 0x040e, 0x045e, 0x0408, 0x04e8, 0x0498, 0x04b0, 0x00a7,
+  0x0401, 0x00a9, 0x04d8, 0x00ab, 0x00ac, 0x04ef, 0x00ae, 0x049c,
+  /* 0xb0 */
+  0x00b0, 0x04b1, 0x0406, 0x0456, 0x0499, 0x04e9, 0x00b6, 0x00b7,
+  0x0451, 0x2116, 0x04d9, 0x00bb, 0x0458, 0x04aa, 0x04ab, 0x049d,
+};
+
+static int
+pt154_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else if (c >= 0xc0)
+    *pwc = (ucs4_t) c + 0x0350;
+  else
+    *pwc = (ucs4_t) pt154_2uni[c-0x80];
+  return 1;
+}
+
+static const unsigned char pt154_page00[32] = {
+  0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa7, /* 0xa0-0xa7 */
+  0x00, 0xa9, 0x00, 0xab, 0xac, 0x00, 0xae, 0x00, /* 0xa8-0xaf */
+  0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb6, 0xb7, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0xbb, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+};
+static const unsigned char pt154_page04[240] = {
+  0x00, 0xa8, 0x00, 0x00, 0x00, 0x00, 0xb2, 0x00, /* 0x00-0x07 */
+  0xa3, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa1, 0x00, /* 0x08-0x0f */
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x10-0x17 */
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x18-0x1f */
+  0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0x20-0x27 */
+  0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, /* 0x28-0x2f */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x30-0x37 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x38-0x3f */
+  0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0x40-0x47 */
+  0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff, /* 0x48-0x4f */
+  0x00, 0xb8, 0x00, 0x00, 0x00, 0x00, 0xb3, 0x00, /* 0x50-0x57 */
+  0xbc, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa2, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0x81, 0x83, 0x00, 0x00, 0x80, 0x90, /* 0x90-0x97 */
+  0xa5, 0xb4, 0x8d, 0x9d, 0xaf, 0xbf, 0x00, 0x00, /* 0x98-0x9f */
+  0x8a, 0x9a, 0x8c, 0x9c, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0xbd, 0xbe, 0x00, 0x00, 0x87, 0x89, /* 0xa8-0xaf */
+  0xa6, 0xb1, 0x88, 0x98, 0x00, 0x00, 0x86, 0x99, /* 0xb0-0xb7 */
+  0x8f, 0x9f, 0x8e, 0x9e, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0xaa, 0xba, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+  0x00, 0x00, 0x8b, 0x9b, 0x00, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */
+  0xa4, 0xb5, 0x00, 0x00, 0x00, 0x00, 0x82, 0xad, /* 0xe8-0xef */
+};
+static const unsigned char pt154_page20[24] = {
+  0x00, 0x00, 0x00, 0x96, 0x97, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x91, 0x92, 0x00, 0x00, 0x93, 0x94, 0x84, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0x85, 0x00, /* 0x20-0x27 */
+};
+
+static int
+pt154_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00c0)
+    c = pt154_page00[wc-0x00a0];
+  else if (wc >= 0x0400 && wc < 0x04f0)
+    c = pt154_page04[wc-0x0400];
+  else if (wc >= 0x2010 && wc < 0x2028)
+    c = pt154_page20[wc-0x2010];
+  else if (wc == 0x2116)
+    c = 0xb9;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/relocatable.c b/graf2d/win32gdk/gdk/src/iconv/relocatable.c
new file mode 100644
index 00000000000..bfbaaaca22d
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/relocatable.c
@@ -0,0 +1,493 @@
+/* Provide relocatable packages.
+   Copyright (C) 2003-2006, 2008 Free Software Foundation, Inc.
+   Written by Bruno Haible <bruno@clisp.org>, 2003.
+
+   This program is free software; you can redistribute it and/or modify it
+   under the terms of the GNU General Public License as published
+   by the Free Software Foundation; either version 3, or (at your option)
+   any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Library General Public License for more details.
+
+   You should have received a copy of the GNU General Public
+   License along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+   USA.  */
+
+
+/* Tell glibc's <stdio.h> to provide a prototype for getline().
+   This must come before <config.h> because <config.h> may include
+   <features.h>, and once <features.h> has been included, it's too late.  */
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE	1
+#endif
+
+#include <config.h>
+
+/* Specification.  */
+#include "relocatable.h"
+
+#if ENABLE_RELOCATABLE
+
+#include <stddef.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#ifdef NO_XMALLOC
+# define xmalloc malloc
+#else
+# include "xalloc.h"
+#endif
+
+#if defined _WIN32 || defined __WIN32__ || defined __CYGWIN__
+# define WIN32_LEAN_AND_MEAN
+# include <windows.h>
+#endif
+
+#if DEPENDS_ON_LIBCHARSET
+# include <libcharset.h>
+#endif
+#if DEPENDS_ON_LIBICONV && HAVE_ICONV
+# include <iconv.h>
+#endif
+#if DEPENDS_ON_LIBINTL && ENABLE_NLS
+# include <libintl.h>
+#endif
+
+/* Faked cheap 'bool'.  */
+#undef bool
+#undef false
+#undef true
+#define bool int
+#define false 0
+#define true 1
+
+/* Pathname support.
+   ISSLASH(C)           tests whether C is a directory separator character.
+   IS_PATH_WITH_DIR(P)  tests whether P contains a directory specification.
+ */
+#if defined _WIN32 || defined __WIN32__ || defined __CYGWIN__ || defined __EMX__ || defined __DJGPP__
+  /* Win32, Cygwin, OS/2, DOS */
+# define ISSLASH(C) ((C) == '/' || (C) == '\\')
+# define HAS_DEVICE(P) \
+    ((((P)[0] >= 'A' && (P)[0] <= 'Z') || ((P)[0] >= 'a' && (P)[0] <= 'z')) \
+     && (P)[1] == ':')
+# define IS_PATH_WITH_DIR(P) \
+    (strchr (P, '/') != NULL || strchr (P, '\\') != NULL || HAS_DEVICE (P))
+# define FILE_SYSTEM_PREFIX_LEN(P) (HAS_DEVICE (P) ? 2 : 0)
+#else
+  /* Unix */
+# define ISSLASH(C) ((C) == '/')
+# define IS_PATH_WITH_DIR(P) (strchr (P, '/') != NULL)
+# define FILE_SYSTEM_PREFIX_LEN(P) 0
+#endif
+
+/* Original installation prefix.  */
+static char *orig_prefix;
+static size_t orig_prefix_len;
+/* Current installation prefix.  */
+static char *curr_prefix;
+static size_t curr_prefix_len;
+/* These prefixes do not end in a slash.  Anything that will be concatenated
+   to them must start with a slash.  */
+
+/* Sets the original and the current installation prefix of this module.
+   Relocation simply replaces a pathname starting with the original prefix
+   by the corresponding pathname with the current prefix instead.  Both
+   prefixes should be directory names without trailing slash (i.e. use ""
+   instead of "/").  */
+static void
+set_this_relocation_prefix (const char *orig_prefix_arg,
+			    const char *curr_prefix_arg)
+{
+  if (orig_prefix_arg != NULL && curr_prefix_arg != NULL
+      /* Optimization: if orig_prefix and curr_prefix are equal, the
+	 relocation is a nop.  */
+      && strcmp (orig_prefix_arg, curr_prefix_arg) != 0)
+    {
+      /* Duplicate the argument strings.  */
+      char *memory;
+
+      orig_prefix_len = strlen (orig_prefix_arg);
+      curr_prefix_len = strlen (curr_prefix_arg);
+      memory = (char *) xmalloc (orig_prefix_len + 1 + curr_prefix_len + 1);
+#ifdef NO_XMALLOC
+      if (memory != NULL)
+#endif
+	{
+	  memcpy (memory, orig_prefix_arg, orig_prefix_len + 1);
+	  orig_prefix = memory;
+	  memory += orig_prefix_len + 1;
+	  memcpy (memory, curr_prefix_arg, curr_prefix_len + 1);
+	  curr_prefix = memory;
+	  return;
+	}
+    }
+  orig_prefix = NULL;
+  curr_prefix = NULL;
+  /* Don't worry about wasted memory here - this function is usually only
+     called once.  */
+}
+
+/* Sets the original and the current installation prefix of the package.
+   Relocation simply replaces a pathname starting with the original prefix
+   by the corresponding pathname with the current prefix instead.  Both
+   prefixes should be directory names without trailing slash (i.e. use ""
+   instead of "/").  */
+void
+set_relocation_prefix (const char *orig_prefix_arg, const char *curr_prefix_arg)
+{
+  set_this_relocation_prefix (orig_prefix_arg, curr_prefix_arg);
+
+  /* Now notify all dependent libraries.  */
+#if DEPENDS_ON_LIBCHARSET
+  libcharset_set_relocation_prefix (orig_prefix_arg, curr_prefix_arg);
+#endif
+#if DEPENDS_ON_LIBICONV && HAVE_ICONV && _LIBICONV_VERSION >= 0x0109
+  libiconv_set_relocation_prefix (orig_prefix_arg, curr_prefix_arg);
+#endif
+#if DEPENDS_ON_LIBINTL && ENABLE_NLS && defined libintl_set_relocation_prefix
+  libintl_set_relocation_prefix (orig_prefix_arg, curr_prefix_arg);
+#endif
+}
+
+#if !defined IN_LIBRARY || (defined PIC && defined INSTALLDIR)
+
+/* Convenience function:
+   Computes the current installation prefix, based on the original
+   installation prefix, the original installation directory of a particular
+   file, and the current pathname of this file.
+   Returns it, freshly allocated.  Returns NULL upon failure.  */
+#ifdef IN_LIBRARY
+#define compute_curr_prefix local_compute_curr_prefix
+static
+#endif
+char *
+compute_curr_prefix (const char *orig_installprefix,
+		     const char *orig_installdir,
+		     const char *curr_pathname)
+{
+  char *curr_installdir;
+  const char *rel_installdir;
+
+  if (curr_pathname == NULL)
+    return NULL;
+
+  /* Determine the relative installation directory, relative to the prefix.
+     This is simply the difference between orig_installprefix and
+     orig_installdir.  */
+  if (strncmp (orig_installprefix, orig_installdir, strlen (orig_installprefix))
+      != 0)
+    /* Shouldn't happen - nothing should be installed outside $(prefix).  */
+    return NULL;
+  rel_installdir = orig_installdir + strlen (orig_installprefix);
+
+  /* Determine the current installation directory.  */
+  {
+    const char *p_base = curr_pathname + FILE_SYSTEM_PREFIX_LEN (curr_pathname);
+    const char *p = curr_pathname + strlen (curr_pathname);
+    char *q;
+
+    while (p > p_base)
+      {
+	p--;
+	if (ISSLASH (*p))
+	  break;
+      }
+
+    q = (char *) xmalloc (p - curr_pathname + 1);
+#ifdef NO_XMALLOC
+    if (q == NULL)
+      return NULL;
+#endif
+    memcpy (q, curr_pathname, p - curr_pathname);
+    q[p - curr_pathname] = '\0';
+    curr_installdir = q;
+  }
+
+  /* Compute the current installation prefix by removing the trailing
+     rel_installdir from it.  */
+  {
+    const char *rp = rel_installdir + strlen (rel_installdir);
+    const char *cp = curr_installdir + strlen (curr_installdir);
+    const char *cp_base =
+      curr_installdir + FILE_SYSTEM_PREFIX_LEN (curr_installdir);
+
+    while (rp > rel_installdir && cp > cp_base)
+      {
+	bool same = false;
+	const char *rpi = rp;
+	const char *cpi = cp;
+
+	while (rpi > rel_installdir && cpi > cp_base)
+	  {
+	    rpi--;
+	    cpi--;
+	    if (ISSLASH (*rpi) || ISSLASH (*cpi))
+	      {
+		if (ISSLASH (*rpi) && ISSLASH (*cpi))
+		  same = true;
+		break;
+	      }
+	    /* Do case-insensitive comparison if the filesystem is always or
+	       often case-insensitive.  It's better to accept the comparison
+	       if the difference is only in case, rather than to fail.  */
+#if defined _WIN32 || defined __WIN32__ || defined __CYGWIN__ || defined __EMX__ || defined __DJGPP__
+	    /* Win32, Cygwin, OS/2, DOS - case insignificant filesystem */
+	    if ((*rpi >= 'a' && *rpi <= 'z' ? *rpi - 'a' + 'A' : *rpi)
+		!= (*cpi >= 'a' && *cpi <= 'z' ? *cpi - 'a' + 'A' : *cpi))
+	      break;
+#else
+	    if (*rpi != *cpi)
+	      break;
+#endif
+	  }
+	if (!same)
+	  break;
+	/* The last pathname component was the same.  opi and cpi now point
+	   to the slash before it.  */
+	rp = rpi;
+	cp = cpi;
+      }
+
+    if (rp > rel_installdir)
+      {
+	/* Unexpected: The curr_installdir does not end with rel_installdir.  */
+	free (curr_installdir);
+	return NULL;
+      }
+
+    {
+      size_t curr_prefix_len = cp - curr_installdir;
+      char *curr_prefix;
+
+      curr_prefix = (char *) xmalloc (curr_prefix_len + 1);
+#ifdef NO_XMALLOC
+      if (curr_prefix == NULL)
+	{
+	  free (curr_installdir);
+	  return NULL;
+	}
+#endif
+      memcpy (curr_prefix, curr_installdir, curr_prefix_len);
+      curr_prefix[curr_prefix_len] = '\0';
+
+      free (curr_installdir);
+
+      return curr_prefix;
+    }
+  }
+}
+
+#endif /* !IN_LIBRARY || PIC */
+
+#if defined PIC && defined INSTALLDIR
+
+/* Full pathname of shared library, or NULL.  */
+static char *shared_library_fullname;
+
+#if defined _WIN32 || defined __WIN32__ || defined __CYGWIN__
+
+/* Determine the full pathname of the shared library when it is loaded.  */
+
+BOOL WINAPI
+DllMain (HINSTANCE module_handle, DWORD event, LPVOID reserved)
+{
+  (void) reserved;
+
+  if (event == DLL_PROCESS_ATTACH)
+    {
+      /* The DLL is being loaded into an application's address range.  */
+      static char location[MAX_PATH];
+
+      if (!GetModuleFileName (module_handle, location, sizeof (location)))
+	/* Shouldn't happen.  */
+	return FALSE;
+
+      if (!IS_PATH_WITH_DIR (location))
+	/* Shouldn't happen.  */
+	return FALSE;
+
+      {
+#if defined __CYGWIN__
+	/* On Cygwin, we need to convert paths coming from Win32 system calls
+	   to the Unix-like slashified notation.  */
+	static char location_as_posix_path[2 * MAX_PATH];
+	/* There's no error return defined for cygwin_conv_to_posix_path.
+	   See cygwin-api/func-cygwin-conv-to-posix-path.html.
+	   Does it overflow the buffer of expected size MAX_PATH or does it
+	   truncate the path?  I don't know.  Let's catch both.  */
+	cygwin_conv_to_posix_path (location, location_as_posix_path);
+	location_as_posix_path[MAX_PATH - 1] = '\0';
+	if (strlen (location_as_posix_path) >= MAX_PATH - 1)
+	  /* A sign of buffer overflow or path truncation.  */
+	  return FALSE;
+	shared_library_fullname = strdup (location_as_posix_path);
+#else
+	shared_library_fullname = strdup (location);
+#endif
+      }
+    }
+
+  return TRUE;
+}
+
+#else /* Unix except Cygwin */
+
+static void
+find_shared_library_fullname ()
+{
+#if defined __linux__ && __GLIBC__ >= 2
+  /* Linux has /proc/self/maps. glibc 2 has the getline() function.  */
+  FILE *fp;
+
+  /* Open the current process' maps file.  It describes one VMA per line.  */
+  fp = fopen ("/proc/self/maps", "r");
+  if (fp)
+    {
+      unsigned long address = (unsigned long) &find_shared_library_fullname;
+      for (;;)
+	{
+	  unsigned long start, end;
+	  int c;
+
+	  if (fscanf (fp, "%lx-%lx", &start, &end) != 2)
+	    break;
+	  if (address >= start && address <= end - 1)
+	    {
+	      /* Found it.  Now see if this line contains a filename.  */
+	      while (c = getc (fp), c != EOF && c != '\n' && c != '/')
+		continue;
+	      if (c == '/')
+		{
+		  size_t size;
+		  int len;
+
+		  ungetc (c, fp);
+		  shared_library_fullname = NULL; size = 0;
+		  len = getline (&shared_library_fullname, &size, fp);
+		  if (len >= 0)
+		    {
+		      /* Success: filled shared_library_fullname.  */
+		      if (len > 0 && shared_library_fullname[len - 1] == '\n')
+			shared_library_fullname[len - 1] = '\0';
+		    }
+		}
+	      break;
+	    }
+	  while (c = getc (fp), c != EOF && c != '\n')
+	    continue;
+	}
+      fclose (fp);
+    }
+#endif
+}
+
+#endif /* (WIN32 or Cygwin) / (Unix except Cygwin) */
+
+/* Return the full pathname of the current shared library.
+   Return NULL if unknown.
+   Guaranteed to work only on Linux, Cygwin and Woe32.  */
+static char *
+get_shared_library_fullname ()
+{
+#if !(defined _WIN32 || defined __WIN32__ || defined __CYGWIN__)
+  static bool tried_find_shared_library_fullname;
+  if (!tried_find_shared_library_fullname)
+    {
+      find_shared_library_fullname ();
+      tried_find_shared_library_fullname = true;
+    }
+#endif
+  return shared_library_fullname;
+}
+
+#endif /* PIC */
+
+/* Returns the pathname, relocated according to the current installation
+   directory.
+   The returned string is either PATHNAME unmodified or a freshly allocated
+   string that you can free with free() after casting it to 'char *'.  */
+const char *
+relocate (const char *pathname)
+{
+#if defined PIC && defined INSTALLDIR
+  static int initialized;
+
+  /* Initialization code for a shared library.  */
+  if (!initialized)
+    {
+      /* At this point, orig_prefix and curr_prefix likely have already been
+	 set through the main program's set_program_name_and_installdir
+	 function.  This is sufficient in the case that the library has
+	 initially been installed in the same orig_prefix.  But we can do
+	 better, to also cover the cases that 1. it has been installed
+	 in a different prefix before being moved to orig_prefix and (later)
+	 to curr_prefix, 2. unlike the program, it has not moved away from
+	 orig_prefix.  */
+      const char *orig_installprefix = INSTALLPREFIX;
+      const char *orig_installdir = INSTALLDIR;
+      char *curr_prefix_better;
+
+      curr_prefix_better =
+	compute_curr_prefix (orig_installprefix, orig_installdir,
+			     get_shared_library_fullname ());
+
+      set_relocation_prefix (orig_installprefix,
+			     curr_prefix_better != NULL
+			     ? curr_prefix_better
+			     : curr_prefix);
+
+      if (curr_prefix_better != NULL)
+	free (curr_prefix_better);
+
+      initialized = 1;
+    }
+#endif
+
+  /* Note: It is not necessary to perform case insensitive comparison here,
+     even for DOS-like filesystems, because the pathname argument was
+     typically created from the same Makefile variable as orig_prefix came
+     from.  */
+  if (orig_prefix != NULL && curr_prefix != NULL
+      && strncmp (pathname, orig_prefix, orig_prefix_len) == 0)
+    {
+      if (pathname[orig_prefix_len] == '\0')
+	{
+	  /* pathname equals orig_prefix.  */
+	  char *result = (char *) xmalloc (strlen (curr_prefix) + 1);
+
+#ifdef NO_XMALLOC
+	  if (result != NULL)
+#endif
+	    {
+	      strcpy (result, curr_prefix);
+	      return result;
+	    }
+	}
+      else if (ISSLASH (pathname[orig_prefix_len]))
+	{
+	  /* pathname starts with orig_prefix.  */
+	  const char *pathname_tail = &pathname[orig_prefix_len];
+	  char *result =
+	    (char *) xmalloc (curr_prefix_len + strlen (pathname_tail) + 1);
+
+#ifdef NO_XMALLOC
+	  if (result != NULL)
+#endif
+	    {
+	      memcpy (result, curr_prefix, curr_prefix_len);
+	      strcpy (result + curr_prefix_len, pathname_tail);
+	      return result;
+	    }
+	}
+    }
+  /* Nothing to relocate.  */
+  return pathname;
+}
+
+#endif
diff --git a/graf2d/win32gdk/gdk/src/iconv/relocatable.h b/graf2d/win32gdk/gdk/src/iconv/relocatable.h
new file mode 100644
index 00000000000..9d975b9d88d
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/relocatable.h
@@ -0,0 +1,83 @@
+/* Provide relocatable packages.
+   Copyright (C) 2003, 2005, 2008 Free Software Foundation, Inc.
+   Written by Bruno Haible <bruno@clisp.org>, 2003.
+
+   This program is free software; you can redistribute it and/or modify it
+   under the terms of the GNU General Public License as published
+   by the Free Software Foundation; either version 3, or (at your option)
+   any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Library General Public License for more details.
+
+   You should have received a copy of the GNU General Public
+   License along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+   USA.  */
+
+#ifndef _RELOCATABLE_H
+#define _RELOCATABLE_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+/* This can be enabled through the configure --enable-relocatable option.  */
+#if ENABLE_RELOCATABLE
+
+/* When building a DLL, we must export some functions.  Note that because
+   this is a private .h file, we don't need to use __declspec(dllimport)
+   in any case.  */
+#if HAVE_VISIBILITY && BUILDING_DLL
+# define RELOCATABLE_DLL_EXPORTED __attribute__((__visibility__("default")))
+#elif defined _MSC_VER && BUILDING_DLL
+# define RELOCATABLE_DLL_EXPORTED __declspec(dllexport)
+#else
+# define RELOCATABLE_DLL_EXPORTED
+#endif
+
+/* Sets the original and the current installation prefix of the package.
+   Relocation simply replaces a pathname starting with the original prefix
+   by the corresponding pathname with the current prefix instead.  Both
+   prefixes should be directory names without trailing slash (i.e. use ""
+   instead of "/").  */
+extern RELOCATABLE_DLL_EXPORTED void
+       set_relocation_prefix (const char *orig_prefix,
+			      const char *curr_prefix);
+
+/* Returns the pathname, relocated according to the current installation
+   directory.
+   The returned string is either PATHNAME unmodified or a freshly allocated
+   string that you can free with free() after casting it to 'char *'.  */
+extern const char * relocate (const char *pathname);
+
+/* Memory management: relocate() potentially allocates memory, because it has
+   to construct a fresh pathname.  If this is a problem because your program
+   calls relocate() frequently, think about caching the result.  Or free the
+   return value if it was different from the argument pathname.  */
+
+/* Convenience function:
+   Computes the current installation prefix, based on the original
+   installation prefix, the original installation directory of a particular
+   file, and the current pathname of this file.
+   Returns it, freshly allocated.  Returns NULL upon failure.  */
+extern char * compute_curr_prefix (const char *orig_installprefix,
+				   const char *orig_installdir,
+				   const char *curr_pathname);
+
+#else
+
+/* By default, we use the hardwired pathnames.  */
+#define relocate(pathname) (pathname)
+
+#endif
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _RELOCATABLE_H */
diff --git a/graf2d/win32gdk/gdk/src/iconv/riscos1.h b/graf2d/win32gdk/gdk/src/iconv/riscos1.h
new file mode 100644
index 00000000000..2ebc7513419
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/riscos1.h
@@ -0,0 +1,96 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * RISCOS-LATIN1
+ */
+
+static const unsigned short riscos1_2uni[32] = {
+  /* 0x80 */
+  0x221a, 0x0174, 0x0175, 0x0083, 0x2573, 0x0176, 0x0177, 0x0087,
+  0x21e6, 0x21e8, 0x21e9, 0x21e7, 0x2026, 0x2122, 0x2030, 0x2022,
+  /* 0x90 */
+  0x2018, 0x2019, 0x2039, 0x203a, 0x201c, 0x201d, 0x201e, 0x2013,
+  0x2014, 0x2212, 0x0152, 0x0153, 0x2020, 0x2021, 0xfb01, 0xfb02,
+};
+
+static int
+riscos1_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c >= 0x80 && c < 0xa0)
+    *pwc = (ucs4_t) riscos1_2uni[c-0x80];
+  else
+    *pwc = (ucs4_t) c;
+  return 1;
+}
+
+static const unsigned char riscos1_page01[40] = {
+  0x00, 0x00, 0x9a, 0x9b, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x81, 0x82, 0x85, 0x86, /* 0x70-0x77 */
+};
+static const unsigned char riscos1_page20[48] = {
+  0x00, 0x00, 0x00, 0x97, 0x98, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x90, 0x91, 0x00, 0x00, 0x94, 0x95, 0x96, 0x00, /* 0x18-0x1f */
+  0x9c, 0x9d, 0x8f, 0x00, 0x00, 0x00, 0x8c, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x8e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x92, 0x93, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+};
+static const unsigned char riscos1_page21[16] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x8b, /* 0xe0-0xe7 */
+  0x89, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+};
+static const unsigned char riscos1_page22[16] = {
+  0x00, 0x00, 0x99, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+};
+
+static int
+riscos1_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080 || wc == 0x0083 || wc == 0x0087 || (wc >= 0x00a0 && wc < 0x0100)) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x0150 && wc < 0x0178)
+    c = riscos1_page01[wc-0x0150];
+  else if (wc >= 0x2010 && wc < 0x2040)
+    c = riscos1_page20[wc-0x2010];
+  else if (wc == 0x2122)
+    c = 0x8d;
+  else if (wc >= 0x21e0 && wc < 0x21f0)
+    c = riscos1_page21[wc-0x21e0];
+  else if (wc >= 0x2210 && wc < 0x2220)
+    c = riscos1_page22[wc-0x2210];
+  else if (wc == 0x2573)
+    c = 0x84;
+  else if (wc >= 0xfb01 && wc < 0xfb03)
+    c = wc-0xfa63;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/rk1048.h b/graf2d/win32gdk/gdk/src/iconv/rk1048.h
new file mode 100644
index 00000000000..0e1fde89713
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/rk1048.h
@@ -0,0 +1,145 @@
+/*
+ * Copyright (C) 1999-2007 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * RK1048
+ */
+
+static const unsigned short rk1048_2uni[128] = {
+  /* 0x80 */
+  0x0402, 0x0403, 0x201a, 0x0453, 0x201e, 0x2026, 0x2020, 0x2021,
+  0x20ac, 0x2030, 0x0409, 0x2039, 0x040a, 0x049a, 0x04ba, 0x040f,
+  /* 0x90 */
+  0x0452, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+  0xfffd, 0x2122, 0x0459, 0x203a, 0x045a, 0x049b, 0x04bb, 0x045f,
+  /* 0xa0 */
+  0x00a0, 0x04b0, 0x04b1, 0x04d8, 0x00a4, 0x04e8, 0x00a6, 0x00a7,
+  0x0401, 0x00a9, 0x0492, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x04ae,
+  /* 0xb0 */
+  0x00b0, 0x00b1, 0x0406, 0x0456, 0x04e9, 0x00b5, 0x00b6, 0x00b7,
+  0x0451, 0x2116, 0x0493, 0x00bb, 0x04d9, 0x04a2, 0x04a3, 0x04af,
+  /* 0xc0 */
+  0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417,
+  0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e, 0x041f,
+  /* 0xd0 */
+  0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427,
+  0x0428, 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e, 0x042f,
+  /* 0xe0 */
+  0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437,
+  0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f,
+  /* 0xf0 */
+  0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
+  0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x044f,
+};
+
+static int
+rk1048_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else {
+    unsigned short wc = rk1048_2uni[c-0x80];
+    if (wc != 0xfffd) {
+      *pwc = (ucs4_t) wc;
+      return 1;
+    }
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char rk1048_page00[32] = {
+  0xa0, 0x00, 0x00, 0x00, 0xa4, 0x00, 0xa6, 0xa7, /* 0xa0-0xa7 */
+  0x00, 0xa9, 0x00, 0xab, 0xac, 0xad, 0xae, 0x00, /* 0xa8-0xaf */
+  0xb0, 0xb1, 0x00, 0x00, 0x00, 0xb5, 0xb6, 0xb7, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0xbb, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+};
+static const unsigned char rk1048_page04[240] = {
+  0x00, 0xa8, 0x80, 0x81, 0x00, 0x00, 0xb2, 0x00, /* 0x00-0x07 */
+  0x00, 0x8a, 0x8c, 0x00, 0x00, 0x00, 0x00, 0x8f, /* 0x08-0x0f */
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, /* 0x10-0x17 */
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, /* 0x18-0x1f */
+  0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, /* 0x20-0x27 */
+  0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, /* 0x28-0x2f */
+  0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, /* 0x30-0x37 */
+  0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, /* 0x38-0x3f */
+  0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, /* 0x40-0x47 */
+  0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff, /* 0x48-0x4f */
+  0x00, 0xb8, 0x90, 0x83, 0x00, 0x00, 0xb3, 0x00, /* 0x50-0x57 */
+  0x00, 0x9a, 0x9c, 0x00, 0x00, 0x00, 0x00, 0x9f, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0xaa, 0xba, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x8d, 0x9d, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0x00, 0x00, 0xbd, 0xbe, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaf, 0xbf, /* 0xa8-0xaf */
+  0xa1, 0xa2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x8e, 0x9e, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd0-0xd7 */
+  0xa3, 0xbc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd8-0xdf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */
+  0xa5, 0xb4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+};
+static const unsigned char rk1048_page20[48] = {
+  0x00, 0x00, 0x00, 0x96, 0x97, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x91, 0x92, 0x82, 0x00, 0x93, 0x94, 0x84, 0x00, /* 0x18-0x1f */
+  0x86, 0x87, 0x95, 0x00, 0x00, 0x00, 0x85, 0x00, /* 0x20-0x27 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x89, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x8b, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+};
+static const unsigned char rk1048_page21[24] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb9, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x99, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+};
+
+static int
+rk1048_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x00c0)
+    c = rk1048_page00[wc-0x00a0];
+  else if (wc >= 0x0400 && wc < 0x04f0)
+    c = rk1048_page04[wc-0x0400];
+  else if (wc >= 0x2010 && wc < 0x2040)
+    c = rk1048_page20[wc-0x2010];
+  else if (wc == 0x20ac)
+    c = 0x88;
+  else if (wc >= 0x2110 && wc < 0x2128)
+    c = rk1048_page21[wc-0x2110];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/shift_jisx0213.h b/graf2d/win32gdk/gdk/src/iconv/shift_jisx0213.h
new file mode 100644
index 00000000000..05f00b00b00
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/shift_jisx0213.h
@@ -0,0 +1,310 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * SHIFT_JISX0213
+ */
+
+/* The structure of Shift_JISX0213 is as follows:
+
+   0x00..0x7F: ISO646-JP, an ASCII variant
+
+   0x{A1..DF}: JISX0201 Katakana.
+
+   0x{81..9F,E0..EF}{40..7E,80..FC}: JISX0213 plane 1.
+
+   0x{F0..FC}{40..7E,80..FC}: JISX0213 plane 2, with irregular row mapping.
+
+   Note that some JISX0213 characters are not contained in Unicode 3.2
+   and are therefore best represented as sequences of Unicode characters.
+*/
+
+#include "jisx0213.h"
+#include "flushwc.h"
+
+static int
+shift_jisx0213_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  ucs4_t last_wc = conv->istate;
+  if (last_wc) {
+    /* Output the buffered character. */
+    conv->istate = 0;
+    *pwc = last_wc;
+    return 0; /* Don't advance the input pointer. */
+  } else {
+    unsigned char c = *s;
+    if (c < 0x80) {
+      /* Plain ISO646-JP character. */
+      if (c == 0x5c)
+        *pwc = (ucs4_t) 0x00a5;
+      else if (c == 0x7e)
+        *pwc = (ucs4_t) 0x203e;
+      else
+        *pwc = (ucs4_t) c;
+      return 1;
+    } else if (c >= 0xa1 && c <= 0xdf) {
+      *pwc = c + 0xfec0;
+      return 1;
+    } else {
+      if ((c >= 0x81 && c <= 0x9f) || (c >= 0xe0 && c <= 0xfc)) {
+        /* Two byte character. */
+        if (n >= 2) {
+          unsigned char c2 = s[1];
+          if ((c2 >= 0x40 && c2 <= 0x7e) || (c2 >= 0x80 && c2 <= 0xfc)) {
+            unsigned int c1;
+            ucs4_t wc;
+            /* Convert to row and column. */
+            if (c < 0xe0)
+              c -= 0x81;
+            else
+              c -= 0xc1;
+            if (c2 < 0x80)
+              c2 -= 0x40;
+            else
+              c2 -= 0x41;
+            /* Now 0 <= c <= 0x3b, 0 <= c2 <= 0xbb. */
+            c1 = 2 * c;
+            if (c2 >= 0x5e)
+              c2 -= 0x5e, c1++;
+            c2 += 0x21;
+            if (c1 >= 0x5e) {
+              /* Handling of JISX 0213 plane 2 rows. */
+              if (c1 >= 0x67)
+                c1 += 230;
+              else if (c1 >= 0x63 || c1 == 0x5f)
+                c1 += 168;
+              else
+                c1 += 162;
+            }
+            wc = jisx0213_to_ucs4(0x121+c1,c2);
+            if (wc) {
+              if (wc < 0x80) {
+                /* It's a combining character. */
+                ucs4_t wc1 = jisx0213_to_ucs_combining[wc - 1][0];
+                ucs4_t wc2 = jisx0213_to_ucs_combining[wc - 1][1];
+                /* We cannot output two Unicode characters at once. So,
+                   output the first character and buffer the second one. */
+                *pwc = wc1;
+                conv->istate = wc2;
+              } else
+                *pwc = wc;
+              return 2;
+            }
+          }
+        } else
+          return RET_TOOFEW(0);
+      }
+      return RET_ILSEQ;
+    }
+  }
+}
+
+#define shift_jisx0213_flushwc normal_flushwc
+
+/* Composition tables for each of the relevant combining characters.  */
+static const struct { unsigned short base; unsigned short composed; } shift_jisx0213_comp_table_data[] = {
+#define shift_jisx0213_comp_table02e5_idx 0
+#define shift_jisx0213_comp_table02e5_len 1
+  { 0x8684, 0x8685 }, /* 0x12B65 = 0x12B64 U+02E5 */
+#define shift_jisx0213_comp_table02e9_idx (shift_jisx0213_comp_table02e5_idx+shift_jisx0213_comp_table02e5_len)
+#define shift_jisx0213_comp_table02e9_len 1
+  { 0x8680, 0x8686 }, /* 0x12B66 = 0x12B60 U+02E9 */
+#define shift_jisx0213_comp_table0300_idx (shift_jisx0213_comp_table02e9_idx+shift_jisx0213_comp_table02e9_len)
+#define shift_jisx0213_comp_table0300_len 5
+  { 0x857b, 0x8663 }, /* 0x12B44 = 0x1295C U+0300 */
+  { 0x8657, 0x8667 }, /* 0x12B48 = 0x12B38 U+0300 */
+  { 0x8656, 0x8669 }, /* 0x12B4A = 0x12B37 U+0300 */
+  { 0x864f, 0x866b }, /* 0x12B4C = 0x12B30 U+0300 */
+  { 0x8662, 0x866d }, /* 0x12B4E = 0x12B43 U+0300 */
+#define shift_jisx0213_comp_table0301_idx (shift_jisx0213_comp_table0300_idx+shift_jisx0213_comp_table0300_len)
+#define shift_jisx0213_comp_table0301_len 4
+  { 0x8657, 0x8668 }, /* 0x12B49 = 0x12B38 U+0301 */
+  { 0x8656, 0x866a }, /* 0x12B4B = 0x12B37 U+0301 */
+  { 0x864f, 0x866c }, /* 0x12B4D = 0x12B30 U+0301 */
+  { 0x8662, 0x866e }, /* 0x12B4F = 0x12B43 U+0301 */
+#define shift_jisx0213_comp_table309a_idx (shift_jisx0213_comp_table0301_idx+shift_jisx0213_comp_table0301_len)
+#define shift_jisx0213_comp_table309a_len 14
+  { 0x82a9, 0x82f5 }, /* 0x12477 = 0x1242B U+309A */
+  { 0x82ab, 0x82f6 }, /* 0x12478 = 0x1242D U+309A */
+  { 0x82ad, 0x82f7 }, /* 0x12479 = 0x1242F U+309A */
+  { 0x82af, 0x82f8 }, /* 0x1247A = 0x12431 U+309A */
+  { 0x82b1, 0x82f9 }, /* 0x1247B = 0x12433 U+309A */
+  { 0x834a, 0x8397 }, /* 0x12577 = 0x1252B U+309A */
+  { 0x834c, 0x8398 }, /* 0x12578 = 0x1252D U+309A */
+  { 0x834e, 0x8399 }, /* 0x12579 = 0x1252F U+309A */
+  { 0x8350, 0x839a }, /* 0x1257A = 0x12531 U+309A */
+  { 0x8352, 0x839b }, /* 0x1257B = 0x12533 U+309A */
+  { 0x835a, 0x839c }, /* 0x1257C = 0x1253B U+309A */
+  { 0x8363, 0x839d }, /* 0x1257D = 0x12544 U+309A */
+  { 0x8367, 0x839e }, /* 0x1257E = 0x12548 U+309A */
+  { 0x83f3, 0x83f6 }, /* 0x12678 = 0x12675 U+309A */
+};
+
+static int
+shift_jisx0213_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  int count = 0;
+  unsigned short lasttwo = conv->ostate;
+
+  if (lasttwo) {
+    /* Attempt to combine the last character with this one. */
+    unsigned int idx;
+    unsigned int len;
+
+    if (wc == 0x02e5)
+      idx = shift_jisx0213_comp_table02e5_idx,
+      len = shift_jisx0213_comp_table02e5_len;
+    else if (wc == 0x02e9)
+      idx = shift_jisx0213_comp_table02e9_idx,
+      len = shift_jisx0213_comp_table02e9_len;
+    else if (wc == 0x0300)
+      idx = shift_jisx0213_comp_table0300_idx,
+      len = shift_jisx0213_comp_table0300_len;
+    else if (wc == 0x0301)
+      idx = shift_jisx0213_comp_table0301_idx,
+      len = shift_jisx0213_comp_table0301_len;
+    else if (wc == 0x309a)
+      idx = shift_jisx0213_comp_table309a_idx,
+      len = shift_jisx0213_comp_table309a_len;
+    else
+      goto not_combining;
+
+    do
+      if (shift_jisx0213_comp_table_data[idx].base == lasttwo)
+        break;
+    while (++idx, --len > 0);
+
+    if (len > 0) {
+      /* Output the combined character. */
+      if (n >= 2) {
+        lasttwo = shift_jisx0213_comp_table_data[idx].composed;
+        r[0] = (lasttwo >> 8) & 0xff;
+        r[1] = lasttwo & 0xff;
+        conv->ostate = 0;
+        return 2;
+      } else
+        return RET_TOOSMALL;
+    }
+
+  not_combining:
+    /* Output the buffered character. */
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = (lasttwo >> 8) & 0xff;
+    r[1] = lasttwo & 0xff;
+    r += 2;
+    count = 2;
+  }
+
+  if (wc < 0x80 && wc != 0x5c && wc != 0x7e) {
+    /* Plain ISO646-JP character. */
+    if (n > count) {
+      r[0] = (unsigned char) wc;
+      conv->ostate = 0;
+      return count+1;
+    } else
+      return RET_TOOSMALL;
+  } else if (wc == 0x00a5) {
+    if (n > count) {
+      r[0] = 0x5c;
+      conv->ostate = 0;
+      return count+1;
+    } else
+      return RET_TOOSMALL;
+  } else if (wc == 0x203e) {
+    if (n > count) {
+      r[0] = 0x7e;
+      conv->ostate = 0;
+      return count+1;
+    } else
+      return RET_TOOSMALL;
+  } else if (wc >= 0xff61 && wc <= 0xff9f) {
+    /* Half-width katakana. */
+    if (n > count) {
+      r[0] = wc - 0xfec0;
+      conv->ostate = 0;
+      return count+1;
+    } else
+      return RET_TOOSMALL;
+  } else {
+    unsigned int s1, s2;
+    unsigned short jch = ucs4_to_jisx0213(wc);
+    if (jch != 0) {
+      /* Convert it to shifted representation. */
+      s1 = jch >> 8;
+      s2 = jch & 0x7f;
+      s1 -= 0x21;
+      s2 -= 0x21;
+      if (s1 >= 0x5e) {
+        /* Handling of JISX 0213 plane 2 rows. */
+        if (s1 >= 0xcd) /* rows 0x26E..0x27E */
+          s1 -= 102;
+        else if (s1 >= 0x8b || s1 == 0x87) /* rows 0x228, 0x22C..0x22F */
+          s1 -= 40;
+        else /* rows 0x221, 0x223..0x225 */
+          s1 -= 34;
+        /* Now 0x5e <= s1 <= 0x77. */
+      }
+      if (s1 & 1)
+        s2 += 0x5e;
+      s1 = s1 >> 1;
+      if (s1 < 0x1f)
+        s1 += 0x81;
+      else
+        s1 += 0xc1;
+      if (s2 < 0x3f)
+        s2 += 0x40;
+      else
+        s2 += 0x41;
+      if (jch & 0x0080) {
+        /* A possible match in comp_table_data. We have to buffer it. */
+        /* We know it's a JISX 0213 plane 1 character. */
+        if (jch & 0x8000) abort();
+        conv->ostate = (s1 << 8) | s2;
+        return count+0;
+      }
+      /* Output the shifted representation. */
+      if (n >= count+2) {
+        r[0] = s1;
+        r[1] = s2;
+        conv->ostate = 0;
+        return count+2;
+      } else
+        return RET_TOOSMALL;
+    }
+    return RET_ILUNI;
+  }
+}
+
+static int
+shift_jisx0213_reset (conv_t conv, unsigned char *r, int n)
+{
+  state_t lasttwo = conv->ostate;
+
+  if (lasttwo) {
+    if (n < 2)
+      return RET_TOOSMALL;
+    r[0] = (lasttwo >> 8) & 0xff;
+    r[1] = lasttwo & 0xff;
+    /* conv->ostate = 0; will be done by the caller */
+    return 2;
+  } else
+    return 0;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/sjis.h b/graf2d/win32gdk/gdk/src/iconv/sjis.h
new file mode 100644
index 00000000000..8244e3a87c3
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/sjis.h
@@ -0,0 +1,132 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * SHIFT_JIS
+ */
+
+/*
+   Conversion between SJIS codes (s1,s2) and JISX0208 codes (c1,c2):
+   Example. (s1,s2) = 0x8140, (c1,c2) = 0x2121.
+   0x81 <= s1 <= 0x9F || 0xE0 <= s1 <= 0xEA,
+   0x40 <= s2 <= 0x7E || 0x80 <= s2 <= 0xFC,
+   0x21 <= c1 <= 0x74, 0x21 <= c2 <= 0x7E.
+   Invariant:
+     94*2*(s1 < 0xE0 ? s1-0x81 : s1-0xC1) + (s2 < 0x80 ? s2-0x40 : s2-0x41)
+     = 94*(c1-0x21)+(c2-0x21)
+   Conversion (s1,s2) -> (c1,c2):
+     t1 := (s1 < 0xE0 ? s1-0x81 : s1-0xC1)
+     t2 := (s2 < 0x80 ? s2-0x40 : s2-0x41)
+     c1 := 2*t1 + (t2 < 0x5E ? 0 : 1) + 0x21
+     c2 := (t2 < 0x5E ? t2 : t2-0x5E) + 0x21
+   Conversion (c1,c2) -> (s1,s2):
+     t1 := (c1 - 0x21) >> 1
+     t2 := ((c1 - 0x21) & 1) * 0x5E + (c2 - 0x21)
+     s1 := (t1 < 0x1F ? t1+0x81 : t1+0xC1)
+     s2 := (t2 < 0x3F ? t2+0x40 : t2+0x41)
+ */
+
+static int
+sjis_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80 || (c >= 0xa1 && c <= 0xdf))
+    return jisx0201_mbtowc(conv,pwc,s,n);
+  else {
+    unsigned char s1, s2;
+    s1 = c;
+    if ((s1 >= 0x81 && s1 <= 0x9f) || (s1 >= 0xe0 && s1 <= 0xea)) {
+      if (n < 2)
+        return RET_TOOFEW(0);
+      s2 = s[1];
+      if ((s2 >= 0x40 && s2 <= 0x7e) || (s2 >= 0x80 && s2 <= 0xfc)) {
+        unsigned char t1 = (s1 < 0xe0 ? s1-0x81 : s1-0xc1);
+        unsigned char t2 = (s2 < 0x80 ? s2-0x40 : s2-0x41);
+        unsigned char buf[2];
+        buf[0] = 2*t1 + (t2 < 0x5e ? 0 : 1) + 0x21;
+        buf[1] = (t2 < 0x5e ? t2 : t2-0x5e) + 0x21;
+        return jisx0208_mbtowc(conv,pwc,buf,2);
+      }
+    } else if (s1 >= 0xf0 && s1 <= 0xf9) {
+      /* User-defined range. See
+       * Ken Lunde's "CJKV Information Processing", table 4-66, p. 206. */
+      if (n < 2)
+        return RET_TOOFEW(0);
+      s2 = s[1];
+      if ((s2 >= 0x40 && s2 <= 0x7e) || (s2 >= 0x80 && s2 <= 0xfc)) {
+        *pwc = 0xe000 + 188*(s1 - 0xf0) + (s2 < 0x80 ? s2-0x40 : s2-0x41);
+        return 2;
+      }
+    }
+    return RET_ILSEQ;
+  }
+}
+
+static int
+sjis_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char buf[2];
+  int ret;
+
+  /* Try JIS X 0201-1976. */
+  ret = jisx0201_wctomb(conv,buf,wc,1);
+  if (ret != RET_ILUNI) {
+    unsigned char c;
+    if (ret != 1) abort();
+    c = buf[0];
+    if (c < 0x80 || (c >= 0xa1 && c <= 0xdf)) {
+      r[0] = c;
+      return 1;
+    }
+  }
+
+  /* Try JIS X 0208-1990. */
+  ret = jisx0208_wctomb(conv,buf,wc,2);
+  if (ret != RET_ILUNI) {
+    unsigned char c1, c2;
+    if (ret != 2) abort();
+    if (n < 2)
+      return RET_TOOSMALL;
+    c1 = buf[0];
+    c2 = buf[1];
+    if ((c1 >= 0x21 && c1 <= 0x74) && (c2 >= 0x21 && c2 <= 0x7e)) {
+      unsigned char t1 = (c1 - 0x21) >> 1;
+      unsigned char t2 = (((c1 - 0x21) & 1) ? 0x5e : 0) + (c2 - 0x21);
+      r[0] = (t1 < 0x1f ? t1+0x81 : t1+0xc1);
+      r[1] = (t2 < 0x3f ? t2+0x40 : t2+0x41);
+      return 2;
+    }
+  }
+
+  /* User-defined range. See
+   * Ken Lunde's "CJKV Information Processing", table 4-66, p. 206. */
+  if (wc >= 0xe000 && wc < 0xe758) {
+    unsigned char c1, c2;
+    if (n < 2)
+      return RET_TOOSMALL;
+    c1 = (unsigned int) (wc - 0xe000) / 188;
+    c2 = (unsigned int) (wc - 0xe000) % 188;
+    r[0] = c1+0xf0;
+    r[1] = (c2 < 0x3f ? c2+0x40 : c2+0x41);
+    return 2;
+  }
+
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/tcvn.h b/graf2d/win32gdk/gdk/src/iconv/tcvn.h
new file mode 100644
index 00000000000..abd5def22c5
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/tcvn.h
@@ -0,0 +1,291 @@
+/*
+ * Copyright (C) 1999-2002, 2004 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * TCVN-5712
+ */
+
+#include "flushwc.h"
+#include "vietcomb.h"
+
+static const unsigned char tcvn_comb_table[] = {
+  0xb0, 0xb3, 0xb2, 0xb1, 0xb4,
+};
+
+/* The possible bases in viet_comp_table_data:
+   0x0041..0x0045, 0x0047..0x0049, 0x004B..0x0050, 0x0052..0x0057,
+   0x0059..0x005A, 0x0061..0x0065, 0x0067..0x0069, 0x006B..0x0070,
+   0x0072..0x0077, 0x0079..0x007A, 0x00A5, 0x00C2, 0x00CA, 0x00D3..0x00D6,
+   0x00DA, 0x00E2, 0x00EA, 0x00F3..0x00F6, 0x00FA, 0x0102..0x0103,
+   0x0168..0x0169, 0x01A0..0x01A1, 0x01AF..0x01B0. */
+static const unsigned int tcvn_comp_bases[] = {
+  0x06fdfbbe, 0x06fdfbbe, 0x00000000, 0x00000020, 0x04780404, 0x04780404,
+  0x0000000c, 0x00000000, 0x00000000, 0x00000300, 0x00000000, 0x00018003
+};
+
+static const unsigned short tcvn_2uni_1[24] = {
+  /* 0x00 */
+  0x0000, 0x00da, 0x1ee4, 0x0003, 0x1eea, 0x1eec, 0x1eee, 0x0007,
+  0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+  /* 0x10 */
+  0x0010, 0x1ee8, 0x1ef0, 0x1ef2, 0x1ef6, 0x1ef8, 0x00dd, 0x1ef4,
+};
+static const unsigned short tcvn_2uni_2[128] = {
+  /* 0x80 */
+  0x00c0, 0x1ea2, 0x00c3, 0x00c1, 0x1ea0, 0x1eb6, 0x1eac, 0x00c8,
+  0x1eba, 0x1ebc, 0x00c9, 0x1eb8, 0x1ec6, 0x00cc, 0x1ec8, 0x0128,
+  /* 0x90 */
+  0x00cd, 0x1eca, 0x00d2, 0x1ece, 0x00d5, 0x00d3, 0x1ecc, 0x1ed8,
+  0x1edc, 0x1ede, 0x1ee0, 0x1eda, 0x1ee2, 0x00d9, 0x1ee6, 0x0168,
+  /* 0xa0 */
+  0x00a0, 0x0102, 0x00c2, 0x00ca, 0x00d4, 0x01a0, 0x01af, 0x0110,
+  0x0103, 0x00e2, 0x00ea, 0x00f4, 0x01a1, 0x01b0, 0x0111, 0x1eb0,
+  /* 0xb0 */
+  0x0300, 0x0309, 0x0303, 0x0301, 0x0323, 0x00e0, 0x1ea3, 0x00e3,
+  0x00e1, 0x1ea1, 0x1eb2, 0x1eb1, 0x1eb3, 0x1eb5, 0x1eaf, 0x1eb4,
+  /* 0xc0 */
+  0x1eae, 0x1ea6, 0x1ea8, 0x1eaa, 0x1ea4, 0x1ec0, 0x1eb7, 0x1ea7,
+  0x1ea9, 0x1eab, 0x1ea5, 0x1ead, 0x00e8, 0x1ec2, 0x1ebb, 0x1ebd,
+  /* 0xd0 */
+  0x00e9, 0x1eb9, 0x1ec1, 0x1ec3, 0x1ec5, 0x1ebf, 0x1ec7, 0x00ec,
+  0x1ec9, 0x1ec4, 0x1ebe, 0x1ed2, 0x0129, 0x00ed, 0x1ecb, 0x00f2,
+  /* 0xe0 */
+  0x1ed4, 0x1ecf, 0x00f5, 0x00f3, 0x1ecd, 0x1ed3, 0x1ed5, 0x1ed7,
+  0x1ed1, 0x1ed9, 0x1edd, 0x1edf, 0x1ee1, 0x1edb, 0x1ee3, 0x00f9,
+  /* 0xf0 */
+  0x1ed6, 0x1ee7, 0x0169, 0x00fa, 0x1ee5, 0x1eeb, 0x1eed, 0x1eef,
+  0x1ee9, 0x1ef1, 0x1ef3, 0x1ef7, 0x1ef9, 0x00fd, 0x1ef5, 0x1ed0,
+};
+
+/* In the TCVN to Unicode direction, the state contains a buffered
+   character, or 0 if none. */
+
+static int
+tcvn_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  unsigned short wc;
+  unsigned short last_wc;
+  if (c < 0x18)
+    wc = tcvn_2uni_1[c];
+  else if (c < 0x80)
+    wc = c;
+  else
+    wc = tcvn_2uni_2[c-0x80];
+  last_wc = conv->istate;
+  if (last_wc) {
+    if (wc >= 0x0300 && wc < 0x0340) {
+      /* See whether last_wc and wc can be combined. */
+      unsigned int k;
+      unsigned int i1, i2;
+      switch (wc) {
+        case 0x0300: k = 0; break;
+        case 0x0301: k = 1; break;
+        case 0x0303: k = 2; break;
+        case 0x0309: k = 3; break;
+        case 0x0323: k = 4; break;
+        default: abort();
+      }
+      i1 = viet_comp_table[k].idx;
+      i2 = i1 + viet_comp_table[k].len-1;
+      if (last_wc >= viet_comp_table_data[i1].base
+          && last_wc <= viet_comp_table_data[i2].base) {
+        unsigned int i;
+        for (;;) {
+          i = (i1+i2)>>1;
+          if (last_wc == viet_comp_table_data[i].base)
+            break;
+          if (last_wc < viet_comp_table_data[i].base) {
+            if (i1 == i)
+              goto not_combining;
+            i2 = i;
+          } else {
+            if (i1 != i)
+              i1 = i;
+            else {
+              i = i2;
+              if (last_wc == viet_comp_table_data[i].base)
+                break;
+              goto not_combining;
+            }
+          }
+        }
+        last_wc = viet_comp_table_data[i].composed;
+        /* Output the combined character. */
+        conv->istate = 0;
+        *pwc = (ucs4_t) last_wc;
+        return 1;
+      }
+    }
+  not_combining:
+    /* Output the buffered character. */
+    conv->istate = 0;
+    *pwc = (ucs4_t) last_wc;
+    return 0; /* Don't advance the input pointer. */
+  }
+  if (wc >= 0x0041 && wc <= 0x01b0
+      && ((tcvn_comp_bases[(wc - 0x0040) >> 5] >> (wc & 0x1f)) & 1)) {
+    /* wc is a possible match in viet_comp_table_data. Buffer it. */
+    conv->istate = wc;
+    return RET_TOOFEW(1);
+  } else {
+    /* Output wc immediately. */
+    *pwc = (ucs4_t) wc;
+    return 1;
+  }
+}
+
+#define tcvn_flushwc normal_flushwc
+
+static const unsigned char tcvn_page00[96+184] = {
+  0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa8-0xaf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb8-0xbf */
+  0x80, 0x83, 0xa2, 0x82, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0x87, 0x8a, 0xa3, 0x00, 0x8d, 0x90, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x92, 0x95, 0xa4, 0x94, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x9d, 0x01, 0x00, 0x00, 0x16, 0x00, 0x00, /* 0xd8-0xdf */
+  0xb5, 0xb8, 0xa9, 0xb7, 0x00, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */
+  0xcc, 0xd0, 0xaa, 0x00, 0xd7, 0xdd, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0xdf, 0xe3, 0xab, 0xe2, 0x00, 0x00, /* 0xf0-0xf7 */
+  0x00, 0xef, 0xf3, 0x00, 0x00, 0xfd, 0x00, 0x00, /* 0xf8-0xff */
+  /* 0x0100 */
+  0x00, 0x00, 0xa1, 0xa8, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xa7, 0xae, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0x8f, 0xdc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x9f, 0xf2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xa5, 0xac, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa6, /* 0xa8-0xaf */
+  0xad, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+};
+static const unsigned char tcvn_page03[40] = {
+  0xb0, 0xb3, 0x00, 0xb2, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0xb1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+};
+static const unsigned char tcvn_page1e[96] = {
+  0x84, 0xb9, 0x81, 0xb6, 0xc4, 0xca, 0xc1, 0xc7, /* 0xa0-0xa7 */
+  0xc2, 0xc8, 0xc3, 0xc9, 0x86, 0xcb, 0xc0, 0xbe, /* 0xa8-0xaf */
+  0xaf, 0xbb, 0xba, 0xbc, 0xbf, 0xbd, 0x85, 0xc6, /* 0xb0-0xb7 */
+  0x8b, 0xd1, 0x88, 0xce, 0x89, 0xcf, 0xda, 0xd5, /* 0xb8-0xbf */
+  0xc5, 0xd2, 0xcd, 0xd3, 0xd9, 0xd4, 0x8c, 0xd6, /* 0xc0-0xc7 */
+  0x8e, 0xd8, 0x91, 0xde, 0x96, 0xe4, 0x93, 0xe1, /* 0xc8-0xcf */
+  0xff, 0xe8, 0xdb, 0xe5, 0xe0, 0xe6, 0xf0, 0xe7, /* 0xd0-0xd7 */
+  0x97, 0xe9, 0x9b, 0xed, 0x98, 0xea, 0x99, 0xeb, /* 0xd8-0xdf */
+  0x9a, 0xec, 0x9c, 0xee, 0x02, 0xf4, 0x9e, 0xf1, /* 0xe0-0xe7 */
+  0x11, 0xf8, 0x04, 0xf5, 0x05, 0xf6, 0x06, 0xf7, /* 0xe8-0xef */
+  0x12, 0xf9, 0x13, 0xfa, 0x17, 0xfe, 0x14, 0xfb, /* 0xf0-0xf7 */
+  0x15, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+};
+
+static int
+tcvn_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080 && (wc >= 0x0020 || (0x00fe0076 & (1 << wc)) == 0)) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00a0 && wc < 0x01b8)
+    c = tcvn_page00[wc-0x00a0];
+  else if (wc >= 0x0300 && wc < 0x0328)
+    c = tcvn_page03[wc-0x0300];
+  else if (wc >= 0x0340 && wc < 0x0342) /* deprecated Vietnamese tone marks */
+    c = tcvn_page03[wc-0x0340];
+  else if (wc >= 0x1ea0 && wc < 0x1f00)
+    c = tcvn_page1e[wc-0x1ea0];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  /* Try compatibility or canonical decomposition. */
+  {
+    /* Binary search through viet_decomp_table. */
+    unsigned int i1 = 0;
+    unsigned int i2 = sizeof(viet_decomp_table)/sizeof(viet_decomp_table[0])-1;
+    if (wc >= viet_decomp_table[i1].composed
+        && wc <= viet_decomp_table[i2].composed) {
+      unsigned int i;
+      for (;;) {
+        /* Here i2 - i1 > 0. */
+        i = (i1+i2)>>1;
+        if (wc == viet_decomp_table[i].composed)
+          break;
+        if (wc < viet_decomp_table[i].composed) {
+          if (i1 == i)
+            return RET_ILUNI;
+          /* Here i1 < i < i2. */
+          i2 = i;
+        } else {
+          /* Here i1 <= i < i2. */
+          if (i1 != i)
+            i1 = i;
+          else {
+            /* Here i2 - i1 = 1. */
+            i = i2;
+            if (wc == viet_decomp_table[i].composed)
+              break;
+            else
+              return RET_ILUNI;
+          }
+        }
+      }
+      /* Found a compatibility or canonical decomposition. */
+      wc = viet_decomp_table[i].base;
+      /* wc is one of 0x0020, 0x0041..0x005a, 0x0061..0x007a, 0x00a5, 0x00a8,
+         0x00c2, 0x00c5..0x00c7, 0x00ca, 0x00cf, 0x00d3, 0x00d4, 0x00d6,
+         0x00d8, 0x00da, 0x00dc, 0x00e2, 0x00e5..0x00e7, 0x00ea, 0x00ef,
+         0x00f3, 0x00f4, 0x00f6, 0x00f8, 0x00fc, 0x0102, 0x0103, 0x01a0,
+         0x01a1, 0x01af, 0x01b0. */
+      if (wc < 0x0080)
+        c = wc;
+      else {
+        c = tcvn_page00[wc-0x00a0];
+        if (c == 0)
+          return RET_ILUNI;
+      }
+      if (n < 2)
+        return RET_TOOSMALL;
+      r[0] = c;
+      r[1] = tcvn_comb_table[viet_decomp_table[i].comb1];
+      return 2;
+    }
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/tds565.h b/graf2d/win32gdk/gdk/src/iconv/tds565.h
new file mode 100644
index 00000000000..479513fedf9
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/tds565.h
@@ -0,0 +1,107 @@
+/*
+ * Copyright (C) 1999-2002 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * TDS565
+ */
+
+static const unsigned short tds565_2uni[64] = {
+  /* 0x40 */
+  0x0040, 0x0041, 0x0042, 0x00c7, 0x0044, 0x0045, 0x00c4, 0x0046,
+  0x0047, 0x0048, 0x0049, 0x004a, 0x017d, 0x004b, 0x004c, 0x004d,
+  /* 0x50 */
+  0x004e, 0x0147, 0x004f, 0x00d6, 0x0050, 0x0052, 0x0053, 0x015e,
+  0x0054, 0x0055, 0x00dc, 0x0057, 0x0059, 0x00dd, 0x005a, 0x005f,
+  /* 0x60 */
+  0x2116, 0x0061, 0x0062, 0x00e7, 0x0064, 0x0065, 0x00e4, 0x0066,
+  0x0067, 0x0068, 0x0069, 0x006a, 0x017e, 0x006b, 0x006c, 0x006d,
+  /* 0x70 */
+  0x006e, 0x0148, 0x006f, 0x00f6, 0x0070, 0x0072, 0x0073, 0x015f,
+  0x0074, 0x0075, 0x00fc, 0x0077, 0x0079, 0x00fd, 0x007a, 0x007f,
+};
+
+static int
+tds565_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x40) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else if (c < 0x80) {
+    *pwc = (ucs4_t) tds565_2uni[c-0x40];
+    return 1;
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned char tds565_page00[64] = {
+  0x40, 0x41, 0x42, 0x00, 0x44, 0x45, 0x47, 0x48, /* 0x40-0x47 */
+  0x49, 0x4a, 0x4b, 0x4d, 0x4e, 0x4f, 0x50, 0x52, /* 0x48-0x4f */
+  0x54, 0x00, 0x55, 0x56, 0x58, 0x59, 0x00, 0x5b, /* 0x50-0x57 */
+  0x00, 0x5c, 0x5e, 0x00, 0x00, 0x00, 0x00, 0x5f, /* 0x58-0x5f */
+  0x00, 0x61, 0x62, 0x00, 0x64, 0x65, 0x67, 0x68, /* 0x60-0x67 */
+  0x69, 0x6a, 0x6b, 0x6d, 0x6e, 0x6f, 0x70, 0x72, /* 0x68-0x6f */
+  0x74, 0x00, 0x75, 0x76, 0x78, 0x79, 0x00, 0x7b, /* 0x70-0x77 */
+  0x00, 0x7c, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x7f, /* 0x78-0x7f */
+};
+static const unsigned char tds565_page00_1[64] = {
+  0x00, 0x00, 0x00, 0x00, 0x46, 0x00, 0x00, 0x43, /* 0xc0-0xc7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x53, 0x00, /* 0xd0-0xd7 */
+  0x00, 0x00, 0x00, 0x00, 0x5a, 0x5d, 0x00, 0x00, /* 0xd8-0xdf */
+  0x00, 0x00, 0x00, 0x00, 0x66, 0x00, 0x00, 0x63, /* 0xe0-0xe7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x73, 0x00, /* 0xf0-0xf7 */
+  0x00, 0x00, 0x00, 0x00, 0x7a, 0x7d, 0x00, 0x00, /* 0xf8-0xff */
+};
+static const unsigned char tds565_page01[64] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x51, /* 0x40-0x47 */
+  0x71, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x57, 0x77, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x6c, 0x00, /* 0x78-0x7f */
+};
+
+static int
+tds565_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0040) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x0040 && wc < 0x0080)
+    c = tds565_page00[wc-0x0040];
+  else if (wc >= 0x00c0 && wc < 0x0100)
+    c = tds565_page00_1[wc-0x00c0];
+  else if (wc >= 0x0140 && wc < 0x0180)
+    c = tds565_page01[wc-0x0140];
+  else if (wc == 0x2116)
+    c = 0x60;
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/tis620.h b/graf2d/win32gdk/gdk/src/iconv/tis620.h
new file mode 100644
index 00000000000..125e6dc80e7
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/tis620.h
@@ -0,0 +1,52 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * TIS620.2533-1
+ */
+
+static int
+tis620_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x80) {
+    *pwc = (ucs4_t) c;
+    return 1;
+  }
+  else if (c >= 0xa1 && c <= 0xfb && !(c >= 0xdb && c <= 0xde)) {
+    *pwc = (ucs4_t) (c + 0x0d60);
+    return 1;
+  }
+  return RET_ILSEQ;
+}
+
+static int
+tis620_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (wc < 0x0080) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x0e01 && wc <= 0x0e5b && !(wc >= 0x0e3b && wc <= 0x0e3e)) {
+    *r = wc-0x0d60;
+    return 1;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/translit.def b/graf2d/win32gdk/gdk/src/iconv/translit.def
new file mode 100644
index 00000000000..cbd329ee536
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/translit.def
@@ -0,0 +1,3918 @@
+# Copyright (C) 1999-2003 Free Software Foundation, Inc.
+# This file is part of the GNU LIBICONV Library.
+#
+# The GNU LIBICONV Library is free software; you can redistribute it
+# and/or modify it under the terms of the GNU Library General Public
+# License as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# The GNU LIBICONV Library is distributed in the hope that it will be
+# useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Library General Public License for more details.
+#
+# You should have received a copy of the GNU Library General Public
+# License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+# If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+# Fifth Floor, Boston, MA 02110-1301, USA.
+#
+#
+# Definition of transliteration from Unicode to poorer character sets.
+#
+# This covers all of Markus Kuhn's TARGET1.
+#
+# The second column gives the transliteration. It is enclosed between tabs!
+#
+00A0	 	# NO-BREAK SPACE
+00A1	!	# INVERTED EXCLAMATION MARK
+00A2	c	# CENT SIGN
+00A3	lb	# POUND SIGN
+00A4		# CURRENCY SIGN
+00A5	yen	# YEN SIGN
+00A6	|	# BROKEN BAR
+00A7	SS	# SECTION SIGN
+00A8	"	# DIAERESIS
+00A9	(c)	# COPYRIGHT SIGN
+00AA	a	# FEMININE ORDINAL INDICATOR
+00AB	<<	# LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
+00AC	not	# NOT SIGN
+00AD	-	# SOFT HYPHEN
+00AE	(R)	# REGISTERED SIGN
+00AF		# MACRON
+00B0	^0	# DEGREE SIGN
+00B1	+/-	# PLUS-MINUS SIGN
+00B2	^2	# SUPERSCRIPT TWO
+00B3	^3	# SUPERSCRIPT THREE
+00B4	'	# ACUTE ACCENT
+00B5	u	# MICRO SIGN
+00B6	P	# PILCROW SIGN
+00B7	.	# MIDDLE DOT
+00B8	,	# CEDILLA
+00B9	^1	# SUPERSCRIPT ONE
+00BA	o	# MASCULINE ORDINAL INDICATOR
+00BB	>>	# RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
+00BC	 1⁄4 	# VULGAR FRACTION ONE QUARTER
+00BD	 1⁄2 	# VULGAR FRACTION ONE HALF
+00BE	 3⁄4 	# VULGAR FRACTION THREE QUARTERS
+00BF	?	# INVERTED QUESTION MARK
+00C0	`A	# LATIN CAPITAL LETTER A WITH GRAVE
+00C1	´A	# LATIN CAPITAL LETTER A WITH ACUTE
+00C2	^A	# LATIN CAPITAL LETTER A WITH CIRCUMFLEX
+00C3	~A	# LATIN CAPITAL LETTER A WITH TILDE
+00C4	"A	# LATIN CAPITAL LETTER A WITH DIAERESIS
+00C5	A	# LATIN CAPITAL LETTER A WITH RING ABOVE
+00C6	AE	# LATIN CAPITAL LETTER AE
+00C7	C	# LATIN CAPITAL LETTER C WITH CEDILLA
+00C8	`E	# LATIN CAPITAL LETTER E WITH GRAVE
+00C9	´E	# LATIN CAPITAL LETTER E WITH ACUTE
+00CA	^E	# LATIN CAPITAL LETTER E WITH CIRCUMFLEX
+00CB	"E	# LATIN CAPITAL LETTER E WITH DIAERESIS
+00CC	`I	# LATIN CAPITAL LETTER I WITH GRAVE
+00CD	´I	# LATIN CAPITAL LETTER I WITH ACUTE
+00CE	^I	# LATIN CAPITAL LETTER I WITH CIRCUMFLEX
+00CF	"I	# LATIN CAPITAL LETTER I WITH DIAERESIS
+00D0	D	# LATIN CAPITAL LETTER ETH
+00D1	~N	# LATIN CAPITAL LETTER N WITH TILDE
+00D2	`O	# LATIN CAPITAL LETTER O WITH GRAVE
+00D3	´O	# LATIN CAPITAL LETTER O WITH ACUTE
+00D4	^O	# LATIN CAPITAL LETTER O WITH CIRCUMFLEX
+00D5	~O	# LATIN CAPITAL LETTER O WITH TILDE
+00D6	"O	# LATIN CAPITAL LETTER O WITH DIAERESIS
+00D7	x	# MULTIPLICATION SIGN
+00D8	O	# LATIN CAPITAL LETTER O WITH STROKE
+00D9	`U	# LATIN CAPITAL LETTER U WITH GRAVE
+00DA	´U	# LATIN CAPITAL LETTER U WITH ACUTE
+00DB	^U	# LATIN CAPITAL LETTER U WITH CIRCUMFLEX
+00DC	"U	# LATIN CAPITAL LETTER U WITH DIAERESIS
+00DD	´Y	# LATIN CAPITAL LETTER Y WITH ACUTE
+00DE	Th	# LATIN CAPITAL LETTER THORN
+00DF	ss	# LATIN SMALL LETTER SHARP S
+00E0	`a	# LATIN SMALL LETTER A WITH GRAVE
+00E1	´a	# LATIN SMALL LETTER A WITH ACUTE
+00E2	^a	# LATIN SMALL LETTER A WITH CIRCUMFLEX
+00E3	~a	# LATIN SMALL LETTER A WITH TILDE
+00E4	"a	# LATIN SMALL LETTER A WITH DIAERESIS
+00E5	a	# LATIN SMALL LETTER A WITH RING ABOVE
+00E6	ae	# LATIN SMALL LETTER AE
+00E7	c	# LATIN SMALL LETTER C WITH CEDILLA
+00E8	`e	# LATIN SMALL LETTER E WITH GRAVE
+00E9	´e	# LATIN SMALL LETTER E WITH ACUTE
+00EA	^e	# LATIN SMALL LETTER E WITH CIRCUMFLEX
+00EB	"e	# LATIN SMALL LETTER E WITH DIAERESIS
+00EC	`i	# LATIN SMALL LETTER I WITH GRAVE
+00ED	´i	# LATIN SMALL LETTER I WITH ACUTE
+00EE	^i	# LATIN SMALL LETTER I WITH CIRCUMFLEX
+00EF	"i	# LATIN SMALL LETTER I WITH DIAERESIS
+00F0	d	# LATIN SMALL LETTER ETH
+00F1	~n	# LATIN SMALL LETTER N WITH TILDE
+00F2	`o	# LATIN SMALL LETTER O WITH GRAVE
+00F3	´o	# LATIN SMALL LETTER O WITH ACUTE
+00F4	^o	# LATIN SMALL LETTER O WITH CIRCUMFLEX
+00F5	~o	# LATIN SMALL LETTER O WITH TILDE
+00F6	"o	# LATIN SMALL LETTER O WITH DIAERESIS
+00F7	:	# DIVISION SIGN
+00F8	o	# LATIN SMALL LETTER O WITH STROKE
+00F9	`u	# LATIN SMALL LETTER U WITH GRAVE
+00FA	´u	# LATIN SMALL LETTER U WITH ACUTE
+00FB	^u	# LATIN SMALL LETTER U WITH CIRCUMFLEX
+00FC	"u	# LATIN SMALL LETTER U WITH DIAERESIS
+00FD	´y	# LATIN SMALL LETTER Y WITH ACUTE
+00FE	th	# LATIN SMALL LETTER THORN
+00FF	"y	# LATIN SMALL LETTER Y WITH DIAERESIS
+0100	A	# LATIN CAPITAL LETTER A WITH MACRON
+0101	a	# LATIN SMALL LETTER A WITH MACRON
+0102	A	# LATIN CAPITAL LETTER A WITH BREVE
+0103	a	# LATIN SMALL LETTER A WITH BREVE
+0104	A	# LATIN CAPITAL LETTER A WITH OGONEK
+0105	a	# LATIN SMALL LETTER A WITH OGONEK
+0106	´C	# LATIN CAPITAL LETTER C WITH ACUTE
+0107	´c	# LATIN SMALL LETTER C WITH ACUTE
+0108	^C	# LATIN CAPITAL LETTER C WITH CIRCUMFLEX
+0109	^c	# LATIN SMALL LETTER C WITH CIRCUMFLEX
+010A	C	# LATIN CAPITAL LETTER C WITH DOT ABOVE
+010B	c	# LATIN SMALL LETTER C WITH DOT ABOVE
+010C	C	# LATIN CAPITAL LETTER C WITH CARON
+010D	c	# LATIN SMALL LETTER C WITH CARON
+010E	D	# LATIN CAPITAL LETTER D WITH CARON
+010F	d	# LATIN SMALL LETTER D WITH CARON
+0110	D	# LATIN CAPITAL LETTER D WITH STROKE
+0111	d	# LATIN SMALL LETTER D WITH STROKE
+0112	E	# LATIN CAPITAL LETTER E WITH MACRON
+0113	e	# LATIN SMALL LETTER E WITH MACRON
+0114	E	# LATIN CAPITAL LETTER E WITH BREVE
+0115	e	# LATIN SMALL LETTER E WITH BREVE
+0116	E	# LATIN CAPITAL LETTER E WITH DOT ABOVE
+0117	e	# LATIN SMALL LETTER E WITH DOT ABOVE
+0118	E	# LATIN CAPITAL LETTER E WITH OGONEK
+0119	e	# LATIN SMALL LETTER E WITH OGONEK
+011A	E	# LATIN CAPITAL LETTER E WITH CARON
+011B	e	# LATIN SMALL LETTER E WITH CARON
+011C	^G	# LATIN CAPITAL LETTER G WITH CIRCUMFLEX
+011D	^g	# LATIN SMALL LETTER G WITH CIRCUMFLEX
+011E	G	# LATIN CAPITAL LETTER G WITH BREVE
+011F	g	# LATIN SMALL LETTER G WITH BREVE
+0120	G	# LATIN CAPITAL LETTER G WITH DOT ABOVE
+0121	g	# LATIN SMALL LETTER G WITH DOT ABOVE
+0122	G	# LATIN CAPITAL LETTER G WITH CEDILLA
+0123	g	# LATIN SMALL LETTER G WITH CEDILLA
+0124	^H	# LATIN CAPITAL LETTER H WITH CIRCUMFLEX
+0125	^h	# LATIN SMALL LETTER H WITH CIRCUMFLEX
+0126	H	# LATIN CAPITAL LETTER H WITH STROKE
+0127	h	# LATIN SMALL LETTER H WITH STROKE
+0128	~I	# LATIN CAPITAL LETTER I WITH TILDE
+0129	~i	# LATIN SMALL LETTER I WITH TILDE
+012A	I	# LATIN CAPITAL LETTER I WITH MACRON
+012B	i	# LATIN SMALL LETTER I WITH MACRON
+012C	I	# LATIN CAPITAL LETTER I WITH BREVE
+012D	i	# LATIN SMALL LETTER I WITH BREVE
+012E	I	# LATIN CAPITAL LETTER I WITH OGONEK
+012F	i	# LATIN SMALL LETTER I WITH OGONEK
+0130	I	# LATIN CAPITAL LETTER I WITH DOT ABOVE
+0131	i	# LATIN SMALL LETTER DOTLESS I
+0132	IJ	# LATIN CAPITAL LIGATURE IJ
+0133	ij	# LATIN SMALL LIGATURE IJ
+0134	^J	# LATIN CAPITAL LETTER J WITH CIRCUMFLEX
+0135	^j	# LATIN SMALL LETTER J WITH CIRCUMFLEX
+0136	K	# LATIN CAPITAL LETTER K WITH CEDILLA
+0137	k	# LATIN SMALL LETTER K WITH CEDILLA
+0138		# LATIN SMALL LETTER KRA
+0139	L	# LATIN CAPITAL LETTER L WITH ACUTE
+013A	l	# LATIN SMALL LETTER L WITH ACUTE
+013B	L	# LATIN CAPITAL LETTER L WITH CEDILLA
+013C	l	# LATIN SMALL LETTER L WITH CEDILLA
+013D	L	# LATIN CAPITAL LETTER L WITH CARON
+013E	l	# LATIN SMALL LETTER L WITH CARON
+013F	L	# LATIN CAPITAL LETTER L WITH MIDDLE DOT
+0140	l	# LATIN SMALL LETTER L WITH MIDDLE DOT
+0141	L	# LATIN CAPITAL LETTER L WITH STROKE
+0142	l	# LATIN SMALL LETTER L WITH STROKE
+0143	´N	# LATIN CAPITAL LETTER N WITH ACUTE
+0144	´n	# LATIN SMALL LETTER N WITH ACUTE
+0145	N	# LATIN CAPITAL LETTER N WITH CEDILLA
+0146	n	# LATIN SMALL LETTER N WITH CEDILLA
+0147	N	# LATIN CAPITAL LETTER N WITH CARON
+0148	n	# LATIN SMALL LETTER N WITH CARON
+0149	'n	# LATIN SMALL LETTER N PRECEDED BY APOSTROPHE
+014A		# LATIN CAPITAL LETTER ENG
+014B		# LATIN SMALL LETTER ENG
+014C	O	# LATIN CAPITAL LETTER O WITH MACRON
+014D	o	# LATIN SMALL LETTER O WITH MACRON
+014E	O	# LATIN CAPITAL LETTER O WITH BREVE
+014F	o	# LATIN SMALL LETTER O WITH BREVE
+0150	"O	# LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
+0151	"o	# LATIN SMALL LETTER O WITH DOUBLE ACUTE
+0152	OE	# LATIN CAPITAL LIGATURE OE
+0153	oe	# LATIN SMALL LIGATURE OE
+0154	´R	# LATIN CAPITAL LETTER R WITH ACUTE
+0155	´r	# LATIN SMALL LETTER R WITH ACUTE
+0156	R	# LATIN CAPITAL LETTER R WITH CEDILLA
+0157	r	# LATIN SMALL LETTER R WITH CEDILLA
+0158	R	# LATIN CAPITAL LETTER R WITH CARON
+0159	r	# LATIN SMALL LETTER R WITH CARON
+015A	´S	# LATIN CAPITAL LETTER S WITH ACUTE
+015B	´s	# LATIN SMALL LETTER S WITH ACUTE
+015C	^S	# LATIN CAPITAL LETTER S WITH CIRCUMFLEX
+015D	^s	# LATIN SMALL LETTER S WITH CIRCUMFLEX
+015E	S	# LATIN CAPITAL LETTER S WITH CEDILLA
+015F	s	# LATIN SMALL LETTER S WITH CEDILLA
+0160	S	# LATIN CAPITAL LETTER S WITH CARON
+0161	s	# LATIN SMALL LETTER S WITH CARON
+0162	T	# LATIN CAPITAL LETTER T WITH CEDILLA
+0163	t	# LATIN SMALL LETTER T WITH CEDILLA
+0164	T	# LATIN CAPITAL LETTER T WITH CARON
+0165	t	# LATIN SMALL LETTER T WITH CARON
+0166	T	# LATIN CAPITAL LETTER T WITH STROKE
+0167	t	# LATIN SMALL LETTER T WITH STROKE
+0168	~U	# LATIN CAPITAL LETTER U WITH TILDE
+0169	~u	# LATIN SMALL LETTER U WITH TILDE
+016A	U	# LATIN CAPITAL LETTER U WITH MACRON
+016B	u	# LATIN SMALL LETTER U WITH MACRON
+016C	U	# LATIN CAPITAL LETTER U WITH BREVE
+016D	u	# LATIN SMALL LETTER U WITH BREVE
+016E	U	# LATIN CAPITAL LETTER U WITH RING ABOVE
+016F	u	# LATIN SMALL LETTER U WITH RING ABOVE
+0170	"U	# LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
+0171	"u	# LATIN SMALL LETTER U WITH DOUBLE ACUTE
+0172	U	# LATIN CAPITAL LETTER U WITH OGONEK
+0173	u	# LATIN SMALL LETTER U WITH OGONEK
+0174	^W	# LATIN CAPITAL LETTER W WITH CIRCUMFLEX
+0175	^w	# LATIN SMALL LETTER W WITH CIRCUMFLEX
+0176	^Y	# LATIN CAPITAL LETTER Y WITH CIRCUMFLEX
+0177	^y	# LATIN SMALL LETTER Y WITH CIRCUMFLEX
+0178	"Y	# LATIN CAPITAL LETTER Y WITH DIAERESIS
+0179	´Z	# LATIN CAPITAL LETTER Z WITH ACUTE
+017A	´z	# LATIN SMALL LETTER Z WITH ACUTE
+017B	Z	# LATIN CAPITAL LETTER Z WITH DOT ABOVE
+017C	z	# LATIN SMALL LETTER Z WITH DOT ABOVE
+017D	Z	# LATIN CAPITAL LETTER Z WITH CARON
+017E	z	# LATIN SMALL LETTER Z WITH CARON
+017F	s	# LATIN SMALL LETTER LONG S
+018F		# LATIN CAPITAL LETTER SCHWA
+0192	f	# LATIN SMALL LETTER F WITH HOOK
+01C4	DŽ	# LATIN CAPITAL LETTER DZ WITH CARON
+01C5	Dž	# LATIN CAPITAL LETTER D WITH SMALL LETTER Z WITH CARON
+01C6	dž	# LATIN SMALL LETTER DZ WITH CARON
+01C7	LJ	# LATIN CAPITAL LETTER LJ
+01C8	Lj	# LATIN CAPITAL LETTER L WITH SMALL LETTER J
+01C9	lj	# LATIN SMALL LETTER LJ
+01CA	NJ	# LATIN CAPITAL LETTER NJ
+01CB	Nj	# LATIN CAPITAL LETTER N WITH SMALL LETTER J
+01CC	nj	# LATIN SMALL LETTER NJ
+01F1	DZ	# LATIN CAPITAL LETTER DZ
+01F2	Dz	# LATIN CAPITAL LETTER D WITH SMALL LETTER Z
+01F3	dz	# LATIN SMALL LETTER DZ
+0218	S	# LATIN CAPITAL LETTER S WITH COMMA BELOW
+0219	s	# LATIN SMALL LETTER S WITH COMMA BELOW
+021A	T	# LATIN CAPITAL LETTER T WITH COMMA BELOW
+021B	t	# LATIN SMALL LETTER T WITH COMMA BELOW
+0259		# LATIN SMALL LETTER SCHWA
+02B9	′	# MODIFIER LETTER PRIME
+02BA	″	# MODIFIER LETTER DOUBLE PRIME
+02BB	‘	# MODIFIER LETTER TURNED COMMA
+02BC	’	# MODIFIER LETTER APOSTROPHE
+02BD	‛	# MODIFIER LETTER REVERSED COMMA
+02C6	^	# MODIFIER LETTER CIRCUMFLEX ACCENT
+02C7		# CARON
+02C8	'	# MODIFIER LETTER VERTICAL LINE
+02C9	¯	# MODIFIER LETTER MACRON
+02CA	´	# MODIFIER LETTER ACUTE ACCENT
+02CB	`	# MODIFIER LETTER GRAVE ACCENT
+02CD	_	# MODIFIER LETTER LOW MACRON
+02D8		# BREVE
+02D9		# DOT ABOVE
+02DA		# RING ABOVE
+02DB		# OGONEK
+02DC	~	# SMALL TILDE
+02DD	"	# DOUBLE ACUTE ACCENT
+0374		# GREEK NUMERAL SIGN
+0375		# GREEK LOWER NUMERAL SIGN
+037A		# GREEK YPOGEGRAMMENI
+037E		# GREEK QUESTION MARK
+0384		# GREEK TONOS
+0385		# GREEK DIALYTIKA TONOS
+0386		# GREEK CAPITAL LETTER ALPHA WITH TONOS
+0387		# GREEK ANO TELEIA
+0388		# GREEK CAPITAL LETTER EPSILON WITH TONOS
+0389		# GREEK CAPITAL LETTER ETA WITH TONOS
+038A		# GREEK CAPITAL LETTER IOTA WITH TONOS
+038C		# GREEK CAPITAL LETTER OMICRON WITH TONOS
+038E		# GREEK CAPITAL LETTER UPSILON WITH TONOS
+038F		# GREEK CAPITAL LETTER OMEGA WITH TONOS
+0390		# GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
+0391		# GREEK CAPITAL LETTER ALPHA
+0392		# GREEK CAPITAL LETTER BETA
+0393		# GREEK CAPITAL LETTER GAMMA
+0394		# GREEK CAPITAL LETTER DELTA
+0395		# GREEK CAPITAL LETTER EPSILON
+0396		# GREEK CAPITAL LETTER ZETA
+0397		# GREEK CAPITAL LETTER ETA
+0398		# GREEK CAPITAL LETTER THETA
+0399		# GREEK CAPITAL LETTER IOTA
+039A		# GREEK CAPITAL LETTER KAPPA
+039B		# GREEK CAPITAL LETTER LAMDA
+039C		# GREEK CAPITAL LETTER MU
+039D		# GREEK CAPITAL LETTER NU
+039E		# GREEK CAPITAL LETTER XI
+039F		# GREEK CAPITAL LETTER OMICRON
+03A0		# GREEK CAPITAL LETTER PI
+03A1		# GREEK CAPITAL LETTER RHO
+03A3		# GREEK CAPITAL LETTER SIGMA
+03A4		# GREEK CAPITAL LETTER TAU
+03A5		# GREEK CAPITAL LETTER UPSILON
+03A6		# GREEK CAPITAL LETTER PHI
+03A7		# GREEK CAPITAL LETTER CHI
+03A8		# GREEK CAPITAL LETTER PSI
+03A9		# GREEK CAPITAL LETTER OMEGA
+03AA		# GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
+03AB		# GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
+03AC		# GREEK SMALL LETTER ALPHA WITH TONOS
+03AD		# GREEK SMALL LETTER EPSILON WITH TONOS
+03AE		# GREEK SMALL LETTER ETA WITH TONOS
+03AF		# GREEK SMALL LETTER IOTA WITH TONOS
+03B0		# GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
+03B1		# GREEK SMALL LETTER ALPHA
+03B2		# GREEK SMALL LETTER BETA
+03B3		# GREEK SMALL LETTER GAMMA
+03B4		# GREEK SMALL LETTER DELTA
+03B5		# GREEK SMALL LETTER EPSILON
+03B6		# GREEK SMALL LETTER ZETA
+03B7		# GREEK SMALL LETTER ETA
+03B8		# GREEK SMALL LETTER THETA
+03B9		# GREEK SMALL LETTER IOTA
+03BA		# GREEK SMALL LETTER KAPPA
+03BB		# GREEK SMALL LETTER LAMDA
+03BC		# GREEK SMALL LETTER MU
+03BD		# GREEK SMALL LETTER NU
+03BE		# GREEK SMALL LETTER XI
+03BF		# GREEK SMALL LETTER OMICRON
+03C0		# GREEK SMALL LETTER PI
+03C1		# GREEK SMALL LETTER RHO
+03C2		# GREEK SMALL LETTER FINAL SIGMA
+03C3		# GREEK SMALL LETTER SIGMA
+03C4		# GREEK SMALL LETTER TAU
+03C5		# GREEK SMALL LETTER UPSILON
+03C6		# GREEK SMALL LETTER PHI
+03C7		# GREEK SMALL LETTER CHI
+03C8		# GREEK SMALL LETTER PSI
+03C9		# GREEK SMALL LETTER OMEGA
+03CA		# GREEK SMALL LETTER IOTA WITH DIALYTIKA
+03CB		# GREEK SMALL LETTER UPSILON WITH DIALYTIKA
+03CC		# GREEK SMALL LETTER OMICRON WITH TONOS
+03CD		# GREEK SMALL LETTER UPSILON WITH TONOS
+03CE		# GREEK SMALL LETTER OMEGA WITH TONOS
+03D0	β	# GREEK BETA SYMBOL
+03D1	θ	# GREEK THETA SYMBOL
+03D2	Υ	# GREEK UPSILON WITH HOOK SYMBOL
+03D5	φ	# GREEK PHI SYMBOL
+03D6	π	# GREEK PI SYMBOL
+03F0	κ	# GREEK KAPPA SYMBOL
+03F1	ρ	# GREEK RHO SYMBOL
+03F2	ς	# GREEK LUNATE SIGMA SYMBOL
+03F4	Θ	# GREEK CAPITAL THETA SYMBOL
+03F5	ε	# GREEK LUNATE EPSILON SYMBOL
+03F9	Σ	# GREEK CAPITAL LUNATE SIGMA SYMBOL
+0401		# CYRILLIC CAPITAL LETTER IO
+0402		# CYRILLIC CAPITAL LETTER DJE
+0403		# CYRILLIC CAPITAL LETTER GJE
+0404		# CYRILLIC CAPITAL LETTER UKRAINIAN IE
+0405		# CYRILLIC CAPITAL LETTER DZE
+0406		# CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I
+0407		# CYRILLIC CAPITAL LETTER YI
+0408		# CYRILLIC CAPITAL LETTER JE
+0409		# CYRILLIC CAPITAL LETTER LJE
+040A		# CYRILLIC CAPITAL LETTER NJE
+040B		# CYRILLIC CAPITAL LETTER TSHE
+040C		# CYRILLIC CAPITAL LETTER KJE
+040E		# CYRILLIC CAPITAL LETTER SHORT U
+040F		# CYRILLIC CAPITAL LETTER DZHE
+0410		# CYRILLIC CAPITAL LETTER A
+0411		# CYRILLIC CAPITAL LETTER BE
+0412		# CYRILLIC CAPITAL LETTER VE
+0413		# CYRILLIC CAPITAL LETTER GHE
+0414		# CYRILLIC CAPITAL LETTER DE
+0415		# CYRILLIC CAPITAL LETTER IE
+0416		# CYRILLIC CAPITAL LETTER ZHE
+0417		# CYRILLIC CAPITAL LETTER ZE
+0418		# CYRILLIC CAPITAL LETTER I
+0419		# CYRILLIC CAPITAL LETTER SHORT I
+041A		# CYRILLIC CAPITAL LETTER KA
+041B		# CYRILLIC CAPITAL LETTER EL
+041C		# CYRILLIC CAPITAL LETTER EM
+041D		# CYRILLIC CAPITAL LETTER EN
+041E		# CYRILLIC CAPITAL LETTER O
+041F		# CYRILLIC CAPITAL LETTER PE
+0420		# CYRILLIC CAPITAL LETTER ER
+0421		# CYRILLIC CAPITAL LETTER ES
+0422		# CYRILLIC CAPITAL LETTER TE
+0423		# CYRILLIC CAPITAL LETTER U
+0424		# CYRILLIC CAPITAL LETTER EF
+0425		# CYRILLIC CAPITAL LETTER HA
+0426		# CYRILLIC CAPITAL LETTER TSE
+0427		# CYRILLIC CAPITAL LETTER CHE
+0428		# CYRILLIC CAPITAL LETTER SHA
+0429		# CYRILLIC CAPITAL LETTER SHCHA
+042A		# CYRILLIC CAPITAL LETTER HARD SIGN
+042B		# CYRILLIC CAPITAL LETTER YERU
+042C		# CYRILLIC CAPITAL LETTER SOFT SIGN
+042D		# CYRILLIC CAPITAL LETTER E
+042E		# CYRILLIC CAPITAL LETTER YU
+042F		# CYRILLIC CAPITAL LETTER YA
+0430		# CYRILLIC SMALL LETTER A
+0431		# CYRILLIC SMALL LETTER BE
+0432		# CYRILLIC SMALL LETTER VE
+0433		# CYRILLIC SMALL LETTER GHE
+0434		# CYRILLIC SMALL LETTER DE
+0435		# CYRILLIC SMALL LETTER IE
+0436		# CYRILLIC SMALL LETTER ZHE
+0437		# CYRILLIC SMALL LETTER ZE
+0438		# CYRILLIC SMALL LETTER I
+0439		# CYRILLIC SMALL LETTER SHORT I
+043A		# CYRILLIC SMALL LETTER KA
+043B		# CYRILLIC SMALL LETTER EL
+043C		# CYRILLIC SMALL LETTER EM
+043D		# CYRILLIC SMALL LETTER EN
+043E		# CYRILLIC SMALL LETTER O
+043F		# CYRILLIC SMALL LETTER PE
+0440		# CYRILLIC SMALL LETTER ER
+0441		# CYRILLIC SMALL LETTER ES
+0442		# CYRILLIC SMALL LETTER TE
+0443		# CYRILLIC SMALL LETTER U
+0444		# CYRILLIC SMALL LETTER EF
+0445		# CYRILLIC SMALL LETTER HA
+0446		# CYRILLIC SMALL LETTER TSE
+0447		# CYRILLIC SMALL LETTER CHE
+0448		# CYRILLIC SMALL LETTER SHA
+0449		# CYRILLIC SMALL LETTER SHCHA
+044A		# CYRILLIC SMALL LETTER HARD SIGN
+044B		# CYRILLIC SMALL LETTER YERU
+044C		# CYRILLIC SMALL LETTER SOFT SIGN
+044D		# CYRILLIC SMALL LETTER E
+044E		# CYRILLIC SMALL LETTER YU
+044F		# CYRILLIC SMALL LETTER YA
+0451		# CYRILLIC SMALL LETTER IO
+0452		# CYRILLIC SMALL LETTER DJE
+0453		# CYRILLIC SMALL LETTER GJE
+0454		# CYRILLIC SMALL LETTER UKRAINIAN IE
+0455		# CYRILLIC SMALL LETTER DZE
+0456		# CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
+0457		# CYRILLIC SMALL LETTER YI
+0458		# CYRILLIC SMALL LETTER JE
+0459		# CYRILLIC SMALL LETTER LJE
+045A		# CYRILLIC SMALL LETTER NJE
+045B		# CYRILLIC SMALL LETTER TSHE
+045C		# CYRILLIC SMALL LETTER KJE
+045E		# CYRILLIC SMALL LETTER SHORT U
+045F		# CYRILLIC SMALL LETTER DZHE
+0490		# CYRILLIC CAPITAL LETTER GHE WITH UPTURN
+0491		# CYRILLIC SMALL LETTER GHE WITH UPTURN
+0587	եւ	# ARMENIAN SMALL LIGATURE ECH YIWN
+05D0		# HEBREW LETTER ALEF
+05D1		# HEBREW LETTER BET
+05D2		# HEBREW LETTER GIMEL
+05D3		# HEBREW LETTER DALET
+05D4		# HEBREW LETTER HE
+05D5		# HEBREW LETTER VAV
+05D6		# HEBREW LETTER ZAYIN
+05D7		# HEBREW LETTER HET
+05D8		# HEBREW LETTER TET
+05D9		# HEBREW LETTER YOD
+05DA		# HEBREW LETTER FINAL KAF
+05DB		# HEBREW LETTER KAF
+05DC		# HEBREW LETTER LAMED
+05DD		# HEBREW LETTER FINAL MEM
+05DE		# HEBREW LETTER MEM
+05DF		# HEBREW LETTER FINAL NUN
+05E0		# HEBREW LETTER NUN
+05E1		# HEBREW LETTER SAMEKH
+05E2		# HEBREW LETTER AYIN
+05E3		# HEBREW LETTER FINAL PE
+05E4		# HEBREW LETTER PE
+05E5		# HEBREW LETTER FINAL TSADI
+05E6		# HEBREW LETTER TSADI
+05E7		# HEBREW LETTER QOF
+05E8		# HEBREW LETTER RESH
+05E9		# HEBREW LETTER SHIN
+05EA		# HEBREW LETTER TAV
+05F0	וו	# HEBREW LIGATURE YIDDISH DOUBLE VAV
+05F1	וי	# HEBREW LIGATURE YIDDISH VAV YOD
+05F2	יי	# HEBREW LIGATURE YIDDISH DOUBLE YOD
+0675	اٴ	# ARABIC LETTER HIGH HAMZA ALEF
+0676	وٴ	# ARABIC LETTER HIGH HAMZA WAW
+0677	ۇٴ	# ARABIC LETTER U WITH HAMZA ABOVE
+0678	يٴ	# ARABIC LETTER HIGH HAMZA YEH
+0E33	ํา	# THAI CHARACTER SARA AM
+0EB3	ໍາ	# LAO VOWEL SIGN AM
+0EDC	ຫນ	# LAO HO NO
+0EDD	ຫມ	# LAO HO MO
+0F77	ྲཱྀ	# TIBETAN VOWEL SIGN VOCALIC RR
+0F79	ླཱྀ	# TIBETAN VOWEL SIGN VOCALIC LL
+1E02	B	# LATIN CAPITAL LETTER B WITH DOT ABOVE
+1E03	b	# LATIN SMALL LETTER B WITH DOT ABOVE
+1E0A	D	# LATIN CAPITAL LETTER D WITH DOT ABOVE
+1E0B	d	# LATIN SMALL LETTER D WITH DOT ABOVE
+1E1E	F	# LATIN CAPITAL LETTER F WITH DOT ABOVE
+1E1F	f	# LATIN SMALL LETTER F WITH DOT ABOVE
+1E40	M	# LATIN CAPITAL LETTER M WITH DOT ABOVE
+1E41	m	# LATIN SMALL LETTER M WITH DOT ABOVE
+1E56	P	# LATIN CAPITAL LETTER P WITH DOT ABOVE
+1E57	p	# LATIN SMALL LETTER P WITH DOT ABOVE
+1E60	S	# LATIN CAPITAL LETTER S WITH DOT ABOVE
+1E61	s	# LATIN SMALL LETTER S WITH DOT ABOVE
+1E6A	T	# LATIN CAPITAL LETTER T WITH DOT ABOVE
+1E6B	t	# LATIN SMALL LETTER T WITH DOT ABOVE
+1E80	`W	# LATIN CAPITAL LETTER W WITH GRAVE
+1E81	`w	# LATIN SMALL LETTER W WITH GRAVE
+1E82	´W	# LATIN CAPITAL LETTER W WITH ACUTE
+1E83	´w	# LATIN SMALL LETTER W WITH ACUTE
+1E84	"W	# LATIN CAPITAL LETTER W WITH DIAERESIS
+1E85	"w	# LATIN SMALL LETTER W WITH DIAERESIS
+1E9A	aʾ	# LATIN SMALL LETTER A WITH RIGHT HALF RING
+1EF2	`Y	# LATIN CAPITAL LETTER Y WITH GRAVE
+1EF3	`y	# LATIN SMALL LETTER Y WITH GRAVE
+2002	 	# EN SPACE
+2003	 	# EM SPACE
+2004	 	# THREE-PER-EM SPACE
+2005	 	# FOUR-PER-EM SPACE
+2006	 	# SIX-PER-EM SPACE
+2008	 	# PUNCTUATION SPACE
+2009	 	# THIN SPACE
+200A	 	# HAIR SPACE
+2010	-	# HYPHEN
+2011	-	# NON-BREAKING HYPHEN
+2012	-	# FIGURE DASH
+2013	-	# EN DASH
+2014	-	# EM DASH
+2015	-	# HORIZONTAL BAR
+2016		# DOUBLE VERTICAL LINE
+2017		# DOUBLE LOW LINE
+2018	'	# LEFT SINGLE QUOTATION MARK
+2019	'	# RIGHT SINGLE QUOTATION MARK
+201A	,	# SINGLE LOW-9 QUOTATION MARK
+201B	'	# SINGLE HIGH-REVERSED-9 QUOTATION MARK
+201C	"	# LEFT DOUBLE QUOTATION MARK
+201D	"	# RIGHT DOUBLE QUOTATION MARK
+201E	"	# DOUBLE LOW-9 QUOTATION MARK
+201F	"	# DOUBLE HIGH-REVERSED-9 QUOTATION MARK
+2020	+	# DAGGER
+2021		# DOUBLE DAGGER
+2022	o	# BULLET
+2024	.	# ONE DOT LEADER
+2025	..	# TWO DOT LEADER
+2026	...	# HORIZONTAL ELLIPSIS
+2030	o/oo	# PER MILLE SIGN
+2032	´	# PRIME
+2033	´´	# DOUBLE PRIME
+2034	´´´	# TRIPLE PRIME
+2036	‵‵	# REVERSED DOUBLE PRIME
+2037	‵‵‵	# REVERSED TRIPLE PRIME
+2039	<	# SINGLE LEFT-POINTING ANGLE QUOTATION MARK
+203A	>	# SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
+203C	!!	# DOUBLE EXCLAMATION MARK
+203E		# OVERLINE
+2044	/	# FRACTION SLASH
+2047	??	# DOUBLE QUESTION MARK
+2048	?!	# QUESTION EXCLAMATION MARK
+2049	!?	# EXCLAMATION QUESTION MARK
+2057	´´´´	# QUADRUPLE PRIME
+20A8	Rs	# RUPEE SIGN
+20AB	Đồng	# DONG SIGN
+20AC	EUR	# EURO SIGN
+2100	a/c	# ACCOUNT OF
+2101	a/s	# ADDRESSED TO THE SUBJECT
+2102	C	# DOUBLE-STRUCK CAPITAL C
+2103	°C	# DEGREE CELSIUS
+2105	c/o	# CARE OF
+2106	c/u	# CADA UNA
+2107	Ɛ	# EULER CONSTANT
+2109	°F	# DEGREE FAHRENHEIT
+210A	g	# SCRIPT SMALL G
+210B	H	# SCRIPT CAPITAL H
+210C	H	# BLACK-LETTER CAPITAL H
+210D	H	# DOUBLE-STRUCK CAPITAL H
+210E	h	# PLANCK CONSTANT
+210F	ħ	# PLANCK CONSTANT OVER TWO PI
+2110	I	# SCRIPT CAPITAL I
+2111	I	# BLACK-LETTER CAPITAL I
+2112	L	# SCRIPT CAPITAL L
+2113	l	# SCRIPT SMALL L
+2115	N	# DOUBLE-STRUCK CAPITAL N
+2116	No	# NUMERO SIGN
+2119	P	# DOUBLE-STRUCK CAPITAL P
+211A	Q	# DOUBLE-STRUCK CAPITAL Q
+211B	R	# SCRIPT CAPITAL R
+211C	R	# BLACK-LETTER CAPITAL R
+211D	R	# DOUBLE-STRUCK CAPITAL R
+2121	TEL	# TELEPHONE SIGN
+2122	TM	# TRADE MARK SIGN
+2124	Z	# DOUBLE-STRUCK CAPITAL Z
+2126	Ohm	# OHM SIGN
+2128	Z	# BLACK-LETTER CAPITAL Z
+212C	B	# SCRIPT CAPITAL B
+212D	C	# BLACK-LETTER CAPITAL C
+212E	e	# ESTIMATED SYMBOL
+212F	e	# SCRIPT SMALL E
+2130	E	# SCRIPT CAPITAL E
+2131	F	# SCRIPT CAPITAL F
+2133	M	# SCRIPT CAPITAL M
+2134	o	# SCRIPT SMALL O
+2135	א	# ALEF SYMBOL
+2136	ב	# BET SYMBOL
+2137	ג	# GIMEL SYMBOL
+2138	ד	# DALET SYMBOL
+2139	i	# INFORMATION SOURCE
+213B	FAX	# FACSIMILE SIGN
+213D	γ	# DOUBLE-STRUCK SMALL GAMMA
+213E	Γ	# DOUBLE-STRUCK CAPITAL GAMMA
+213F	Π	# DOUBLE-STRUCK CAPITAL PI
+2140	∑	# DOUBLE-STRUCK N-ARY SUMMATION
+2145	D	# DOUBLE-STRUCK ITALIC CAPITAL D
+2146	d	# DOUBLE-STRUCK ITALIC SMALL D
+2147	e	# DOUBLE-STRUCK ITALIC SMALL E
+2148	i	# DOUBLE-STRUCK ITALIC SMALL I
+2149	j	# DOUBLE-STRUCK ITALIC SMALL J
+2153	 1⁄3 	# VULGAR FRACTION ONE THIRD
+2154	 2⁄3 	# VULGAR FRACTION TWO THIRDS
+2155	 1⁄5 	# VULGAR FRACTION ONE FIFTH
+2156	 2⁄5 	# VULGAR FRACTION TWO FIFTHS
+2157	 3⁄5 	# VULGAR FRACTION THREE FIFTHS
+2158	 4⁄5 	# VULGAR FRACTION FOUR FIFTHS
+2159	 1⁄6 	# VULGAR FRACTION ONE SIXTH
+215A	 5⁄6 	# VULGAR FRACTION FIVE SIXTHS
+215B	 1⁄8 	# VULGAR FRACTION ONE EIGHTH
+215C	 3⁄8 	# VULGAR FRACTION THREE EIGHTHS
+215D	 5⁄8 	# VULGAR FRACTION FIVE EIGHTHS
+215E	 7⁄8 	# VULGAR FRACTION SEVEN EIGHTHS
+215F	 1⁄	# FRACTION NUMERATOR ONE
+2160	I	# ROMAN NUMERAL ONE
+2161	II	# ROMAN NUMERAL TWO
+2162	III	# ROMAN NUMERAL THREE
+2163	IV	# ROMAN NUMERAL FOUR
+2164	V	# ROMAN NUMERAL FIVE
+2165	VI	# ROMAN NUMERAL SIX
+2166	VII	# ROMAN NUMERAL SEVEN
+2167	VIII	# ROMAN NUMERAL EIGHT
+2168	IX	# ROMAN NUMERAL NINE
+2169	X	# ROMAN NUMERAL TEN
+216A	XI	# ROMAN NUMERAL ELEVEN
+216B	XII	# ROMAN NUMERAL TWELVE
+216C	L	# ROMAN NUMERAL FIFTY
+216D	C	# ROMAN NUMERAL ONE HUNDRED
+216E	D	# ROMAN NUMERAL FIVE HUNDRED
+216F	M	# ROMAN NUMERAL ONE THOUSAND
+2170	i	# SMALL ROMAN NUMERAL ONE
+2171	ii	# SMALL ROMAN NUMERAL TWO
+2172	iii	# SMALL ROMAN NUMERAL THREE
+2173	iv	# SMALL ROMAN NUMERAL FOUR
+2174	v	# SMALL ROMAN NUMERAL FIVE
+2175	vi	# SMALL ROMAN NUMERAL SIX
+2176	vii	# SMALL ROMAN NUMERAL SEVEN
+2177	viii	# SMALL ROMAN NUMERAL EIGHT
+2178	ix	# SMALL ROMAN NUMERAL NINE
+2179	x	# SMALL ROMAN NUMERAL TEN
+217A	xi	# SMALL ROMAN NUMERAL ELEVEN
+217B	xii	# SMALL ROMAN NUMERAL TWELVE
+217C	l	# SMALL ROMAN NUMERAL FIFTY
+217D	c	# SMALL ROMAN NUMERAL ONE HUNDRED
+217E	d	# SMALL ROMAN NUMERAL FIVE HUNDRED
+217F	m	# SMALL ROMAN NUMERAL ONE THOUSAND
+2190	<-	# LEFTWARDS ARROW
+2191	^	# UPWARDS ARROW
+2192	->	# RIGHTWARDS ARROW
+2193	V	# DOWNWARDS ARROW
+2194	<->	# LEFT RIGHT ARROW
+21D0	<=	# LEFTWARDS DOUBLE ARROW
+21D2	=>	# RIGHTWARDS DOUBLE ARROW
+21D4	<=>	# LEFT RIGHT DOUBLE ARROW
+2212	-	# MINUS SIGN
+2215	/	# DIVISION SLASH
+2216	\	# SET MINUS
+2217	*	# ASTERISK OPERATOR
+2219	•	# BULLET OPERATOR
+2223	|	# DIVIDES
+222C	∫∫	# DOUBLE INTEGRAL
+222D	∫∫∫	# TRIPLE INTEGRAL
+222F	∮∮	# SURFACE INTEGRAL
+2230	∮∮∮	# VOLUME INTEGRAL
+2236	:	# RATIO
+223C	~	# TILDE OPERATOR
+2260	/=	# NOT EQUAL TO
+2264	<=	# LESS-THAN OR EQUAL TO
+2265	>=	# GREATER-THAN OR EQUAL TO
+226A	<<	# MUCH LESS-THAN
+226B	>>	# MUCH GREATER-THAN
+22C5	·	# DOT OPERATOR
+22D8	<<<	# VERY MUCH LESS-THAN
+22D9	>>>	# VERY MUCH GREATER-THAN
+22EF	···	# MIDLINE HORIZONTAL ELLIPSIS
+2400	[NUL]	# SYMBOL FOR NULL
+2401	[SOH]	# SYMBOL FOR START OF HEADING
+2402	[STX]	# SYMBOL FOR START OF TEXT
+2403	[ETX]	# SYMBOL FOR END OF TEXT
+2404	[EOT]	# SYMBOL FOR END OF TRANSMISSION
+2405	[ENQ]	# SYMBOL FOR ENQUIRY
+2406	[ACK]	# SYMBOL FOR ACKNOWLEDGE
+2407	[BEL]	# SYMBOL FOR BELL
+2408	[BS]	# SYMBOL FOR BACKSPACE
+2409	[HT]	# SYMBOL FOR HORIZONTAL TABULATION
+240A	[LF]	# SYMBOL FOR LINE FEED
+240B	[VT]	# SYMBOL FOR VERTICAL TABULATION
+240C	[FF]	# SYMBOL FOR FORM FEED
+240D	[CR]	# SYMBOL FOR CARRIAGE RETURN
+240E	[SO]	# SYMBOL FOR SHIFT OUT
+240F	[SI]	# SYMBOL FOR SHIFT IN
+2410	[DLE]	# SYMBOL FOR DATA LINK ESCAPE
+2411	[DC1]	# SYMBOL FOR DEVICE CONTROL ONE
+2412	[DC2]	# SYMBOL FOR DEVICE CONTROL TWO
+2413	[DC3]	# SYMBOL FOR DEVICE CONTROL THREE
+2414	[DC4]	# SYMBOL FOR DEVICE CONTROL FOUR
+2415	[NAK]	# SYMBOL FOR NEGATIVE ACKNOWLEDGE
+2416	[SYN]	# SYMBOL FOR SYNCHRONOUS IDLE
+2417	[ETB]	# SYMBOL FOR END OF TRANSMISSION BLOCK
+2418	[CAN]	# SYMBOL FOR CANCEL
+2419	[EM]	# SYMBOL FOR END OF MEDIUM
+241A	[SUB]	# SYMBOL FOR SUBSTITUTE
+241B	[ESC]	# SYMBOL FOR ESCAPE
+241C	[FS]	# SYMBOL FOR FILE SEPARATOR
+241D	[GS]	# SYMBOL FOR GROUP SEPARATOR
+241E	[RS]	# SYMBOL FOR RECORD SEPARATOR
+241F	[US]	# SYMBOL FOR UNIT SEPARATOR
+2420	[SP]	# SYMBOL FOR SPACE
+2421	[DEL]	# SYMBOL FOR DELETE
+2424	[NL]	# SYMBOL FOR NEWLINE
+2460	(1)	# CIRCLED DIGIT ONE
+2461	(2)	# CIRCLED DIGIT TWO
+2462	(3)	# CIRCLED DIGIT THREE
+2463	(4)	# CIRCLED DIGIT FOUR
+2464	(5)	# CIRCLED DIGIT FIVE
+2465	(6)	# CIRCLED DIGIT SIX
+2466	(7)	# CIRCLED DIGIT SEVEN
+2467	(8)	# CIRCLED DIGIT EIGHT
+2468	(9)	# CIRCLED DIGIT NINE
+2469	(10)	# CIRCLED NUMBER TEN
+246A	(11)	# CIRCLED NUMBER ELEVEN
+246B	(12)	# CIRCLED NUMBER TWELVE
+246C	(13)	# CIRCLED NUMBER THIRTEEN
+246D	(14)	# CIRCLED NUMBER FOURTEEN
+246E	(15)	# CIRCLED NUMBER FIFTEEN
+246F	(16)	# CIRCLED NUMBER SIXTEEN
+2470	(17)	# CIRCLED NUMBER SEVENTEEN
+2471	(18)	# CIRCLED NUMBER EIGHTEEN
+2472	(19)	# CIRCLED NUMBER NINETEEN
+2473	(20)	# CIRCLED NUMBER TWENTY
+2474	(1)	# PARENTHESIZED DIGIT ONE
+2475	(2)	# PARENTHESIZED DIGIT TWO
+2476	(3)	# PARENTHESIZED DIGIT THREE
+2477	(4)	# PARENTHESIZED DIGIT FOUR
+2478	(5)	# PARENTHESIZED DIGIT FIVE
+2479	(6)	# PARENTHESIZED DIGIT SIX
+247A	(7)	# PARENTHESIZED DIGIT SEVEN
+247B	(8)	# PARENTHESIZED DIGIT EIGHT
+247C	(9)	# PARENTHESIZED DIGIT NINE
+247D	(10)	# PARENTHESIZED NUMBER TEN
+247E	(11)	# PARENTHESIZED NUMBER ELEVEN
+247F	(12)	# PARENTHESIZED NUMBER TWELVE
+2480	(13)	# PARENTHESIZED NUMBER THIRTEEN
+2481	(14)	# PARENTHESIZED NUMBER FOURTEEN
+2482	(15)	# PARENTHESIZED NUMBER FIFTEEN
+2483	(16)	# PARENTHESIZED NUMBER SIXTEEN
+2484	(17)	# PARENTHESIZED NUMBER SEVENTEEN
+2485	(18)	# PARENTHESIZED NUMBER EIGHTEEN
+2486	(19)	# PARENTHESIZED NUMBER NINETEEN
+2487	(20)	# PARENTHESIZED NUMBER TWENTY
+2488	1.	# DIGIT ONE FULL STOP
+2489	2.	# DIGIT TWO FULL STOP
+248A	3.	# DIGIT THREE FULL STOP
+248B	4.	# DIGIT FOUR FULL STOP
+248C	5.	# DIGIT FIVE FULL STOP
+248D	6.	# DIGIT SIX FULL STOP
+248E	7.	# DIGIT SEVEN FULL STOP
+248F	8.	# DIGIT EIGHT FULL STOP
+2490	9.	# DIGIT NINE FULL STOP
+2491	10.	# NUMBER TEN FULL STOP
+2492	11.	# NUMBER ELEVEN FULL STOP
+2493	12.	# NUMBER TWELVE FULL STOP
+2494	13.	# NUMBER THIRTEEN FULL STOP
+2495	14.	# NUMBER FOURTEEN FULL STOP
+2496	15.	# NUMBER FIFTEEN FULL STOP
+2497	16.	# NUMBER SIXTEEN FULL STOP
+2498	17.	# NUMBER SEVENTEEN FULL STOP
+2499	18.	# NUMBER EIGHTEEN FULL STOP
+249A	19.	# NUMBER NINETEEN FULL STOP
+249B	20.	# NUMBER TWENTY FULL STOP
+249C	(a)	# PARENTHESIZED LATIN SMALL LETTER A
+249D	(b)	# PARENTHESIZED LATIN SMALL LETTER B
+249E	(c)	# PARENTHESIZED LATIN SMALL LETTER C
+249F	(d)	# PARENTHESIZED LATIN SMALL LETTER D
+24A0	(e)	# PARENTHESIZED LATIN SMALL LETTER E
+24A1	(f)	# PARENTHESIZED LATIN SMALL LETTER F
+24A2	(g)	# PARENTHESIZED LATIN SMALL LETTER G
+24A3	(h)	# PARENTHESIZED LATIN SMALL LETTER H
+24A4	(i)	# PARENTHESIZED LATIN SMALL LETTER I
+24A5	(j)	# PARENTHESIZED LATIN SMALL LETTER J
+24A6	(k)	# PARENTHESIZED LATIN SMALL LETTER K
+24A7	(l)	# PARENTHESIZED LATIN SMALL LETTER L
+24A8	(m)	# PARENTHESIZED LATIN SMALL LETTER M
+24A9	(n)	# PARENTHESIZED LATIN SMALL LETTER N
+24AA	(o)	# PARENTHESIZED LATIN SMALL LETTER O
+24AB	(p)	# PARENTHESIZED LATIN SMALL LETTER P
+24AC	(q)	# PARENTHESIZED LATIN SMALL LETTER Q
+24AD	(r)	# PARENTHESIZED LATIN SMALL LETTER R
+24AE	(s)	# PARENTHESIZED LATIN SMALL LETTER S
+24AF	(t)	# PARENTHESIZED LATIN SMALL LETTER T
+24B0	(u)	# PARENTHESIZED LATIN SMALL LETTER U
+24B1	(v)	# PARENTHESIZED LATIN SMALL LETTER V
+24B2	(w)	# PARENTHESIZED LATIN SMALL LETTER W
+24B3	(x)	# PARENTHESIZED LATIN SMALL LETTER X
+24B4	(y)	# PARENTHESIZED LATIN SMALL LETTER Y
+24B5	(z)	# PARENTHESIZED LATIN SMALL LETTER Z
+24B6	(A)	# CIRCLED LATIN CAPITAL LETTER A
+24B7	(B)	# CIRCLED LATIN CAPITAL LETTER B
+24B8	(C)	# CIRCLED LATIN CAPITAL LETTER C
+24B9	(D)	# CIRCLED LATIN CAPITAL LETTER D
+24BA	(E)	# CIRCLED LATIN CAPITAL LETTER E
+24BB	(F)	# CIRCLED LATIN CAPITAL LETTER F
+24BC	(G)	# CIRCLED LATIN CAPITAL LETTER G
+24BD	(H)	# CIRCLED LATIN CAPITAL LETTER H
+24BE	(I)	# CIRCLED LATIN CAPITAL LETTER I
+24BF	(J)	# CIRCLED LATIN CAPITAL LETTER J
+24C0	(K)	# CIRCLED LATIN CAPITAL LETTER K
+24C1	(L)	# CIRCLED LATIN CAPITAL LETTER L
+24C2	(M)	# CIRCLED LATIN CAPITAL LETTER M
+24C3	(N)	# CIRCLED LATIN CAPITAL LETTER N
+24C4	(O)	# CIRCLED LATIN CAPITAL LETTER O
+24C5	(P)	# CIRCLED LATIN CAPITAL LETTER P
+24C6	(Q)	# CIRCLED LATIN CAPITAL LETTER Q
+24C7	(R)	# CIRCLED LATIN CAPITAL LETTER R
+24C8	(S)	# CIRCLED LATIN CAPITAL LETTER S
+24C9	(T)	# CIRCLED LATIN CAPITAL LETTER T
+24CA	(U)	# CIRCLED LATIN CAPITAL LETTER U
+24CB	(V)	# CIRCLED LATIN CAPITAL LETTER V
+24CC	(W)	# CIRCLED LATIN CAPITAL LETTER W
+24CD	(X)	# CIRCLED LATIN CAPITAL LETTER X
+24CE	(Y)	# CIRCLED LATIN CAPITAL LETTER Y
+24CF	(Z)	# CIRCLED LATIN CAPITAL LETTER Z
+24D0	(a)	# CIRCLED LATIN SMALL LETTER A
+24D1	(b)	# CIRCLED LATIN SMALL LETTER B
+24D2	(c)	# CIRCLED LATIN SMALL LETTER C
+24D3	(d)	# CIRCLED LATIN SMALL LETTER D
+24D4	(e)	# CIRCLED LATIN SMALL LETTER E
+24D5	(f)	# CIRCLED LATIN SMALL LETTER F
+24D6	(g)	# CIRCLED LATIN SMALL LETTER G
+24D7	(h)	# CIRCLED LATIN SMALL LETTER H
+24D8	(i)	# CIRCLED LATIN SMALL LETTER I
+24D9	(j)	# CIRCLED LATIN SMALL LETTER J
+24DA	(k)	# CIRCLED LATIN SMALL LETTER K
+24DB	(l)	# CIRCLED LATIN SMALL LETTER L
+24DC	(m)	# CIRCLED LATIN SMALL LETTER M
+24DD	(n)	# CIRCLED LATIN SMALL LETTER N
+24DE	(o)	# CIRCLED LATIN SMALL LETTER O
+24DF	(p)	# CIRCLED LATIN SMALL LETTER P
+24E0	(q)	# CIRCLED LATIN SMALL LETTER Q
+24E1	(r)	# CIRCLED LATIN SMALL LETTER R
+24E2	(s)	# CIRCLED LATIN SMALL LETTER S
+24E3	(t)	# CIRCLED LATIN SMALL LETTER T
+24E4	(u)	# CIRCLED LATIN SMALL LETTER U
+24E5	(v)	# CIRCLED LATIN SMALL LETTER V
+24E6	(w)	# CIRCLED LATIN SMALL LETTER W
+24E7	(x)	# CIRCLED LATIN SMALL LETTER X
+24E8	(y)	# CIRCLED LATIN SMALL LETTER Y
+24E9	(z)	# CIRCLED LATIN SMALL LETTER Z
+24EA	(0)	# CIRCLED DIGIT ZERO
+2500	-	# BOX DRAWINGS LIGHT HORIZONTAL
+2502	|	# BOX DRAWINGS LIGHT VERTICAL
+250C	+	# BOX DRAWINGS LIGHT DOWN AND RIGHT
+2510	+	# BOX DRAWINGS LIGHT DOWN AND LEFT
+2514	+	# BOX DRAWINGS LIGHT UP AND RIGHT
+2518	+	# BOX DRAWINGS LIGHT UP AND LEFT
+251C	+	# BOX DRAWINGS LIGHT VERTICAL AND RIGHT
+2524	+	# BOX DRAWINGS LIGHT VERTICAL AND LEFT
+252C	+	# BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
+2534	+	# BOX DRAWINGS LIGHT UP AND HORIZONTAL
+253C	+	# BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
+2592		# MEDIUM SHADE
+25AE		# BLACK VERTICAL RECTANGLE
+25C6		# BLACK DIAMOND
+25E6	o	# WHITE BULLET
+266A		# EIGHTH NOTE
+2A0C	∫∫∫∫	# QUADRUPLE INTEGRAL OPERATOR
+2A74	::=	# DOUBLE COLON EQUAL
+2A75	==	# TWO CONSECUTIVE EQUALS SIGNS
+2A76	===	# THREE CONSECUTIVE EQUALS SIGNS
+2E9F	母	# CJK RADICAL MOTHER
+2EF3	龟	# CJK RADICAL C-SIMPLIFIED TURTLE
+2F00	一	# KANGXI RADICAL ONE
+2F01	丨	# KANGXI RADICAL LINE
+2F02	丶	# KANGXI RADICAL DOT
+2F03	丿	# KANGXI RADICAL SLASH
+2F04	乙	# KANGXI RADICAL SECOND
+2F05	亅	# KANGXI RADICAL HOOK
+2F06	二	# KANGXI RADICAL TWO
+2F07	亠	# KANGXI RADICAL LID
+2F08	人	# KANGXI RADICAL MAN
+2F09	儿	# KANGXI RADICAL LEGS
+2F0A	入	# KANGXI RADICAL ENTER
+2F0B	八	# KANGXI RADICAL EIGHT
+2F0C	冂	# KANGXI RADICAL DOWN BOX
+2F0D	冖	# KANGXI RADICAL COVER
+2F0E	冫	# KANGXI RADICAL ICE
+2F0F	几	# KANGXI RADICAL TABLE
+2F10	凵	# KANGXI RADICAL OPEN BOX
+2F11	刀	# KANGXI RADICAL KNIFE
+2F12	力	# KANGXI RADICAL POWER
+2F13	勹	# KANGXI RADICAL WRAP
+2F14	匕	# KANGXI RADICAL SPOON
+2F15	匚	# KANGXI RADICAL RIGHT OPEN BOX
+2F16	匸	# KANGXI RADICAL HIDING ENCLOSURE
+2F17	十	# KANGXI RADICAL TEN
+2F18	卜	# KANGXI RADICAL DIVINATION
+2F19	卩	# KANGXI RADICAL SEAL
+2F1A	厂	# KANGXI RADICAL CLIFF
+2F1B	厶	# KANGXI RADICAL PRIVATE
+2F1C	又	# KANGXI RADICAL AGAIN
+2F1D	口	# KANGXI RADICAL MOUTH
+2F1E	囗	# KANGXI RADICAL ENCLOSURE
+2F1F	土	# KANGXI RADICAL EARTH
+2F20	士	# KANGXI RADICAL SCHOLAR
+2F21	夂	# KANGXI RADICAL GO
+2F22	夊	# KANGXI RADICAL GO SLOWLY
+2F23	夕	# KANGXI RADICAL EVENING
+2F24	大	# KANGXI RADICAL BIG
+2F25	女	# KANGXI RADICAL WOMAN
+2F26	子	# KANGXI RADICAL CHILD
+2F27	宀	# KANGXI RADICAL ROOF
+2F28	寸	# KANGXI RADICAL INCH
+2F29	小	# KANGXI RADICAL SMALL
+2F2A	尢	# KANGXI RADICAL LAME
+2F2B	尸	# KANGXI RADICAL CORPSE
+2F2C	屮	# KANGXI RADICAL SPROUT
+2F2D	山	# KANGXI RADICAL MOUNTAIN
+2F2E	巛	# KANGXI RADICAL RIVER
+2F2F	工	# KANGXI RADICAL WORK
+2F30	己	# KANGXI RADICAL ONESELF
+2F31	巾	# KANGXI RADICAL TURBAN
+2F32	干	# KANGXI RADICAL DRY
+2F33	幺	# KANGXI RADICAL SHORT THREAD
+2F34	广	# KANGXI RADICAL DOTTED CLIFF
+2F35	廴	# KANGXI RADICAL LONG STRIDE
+2F36	廾	# KANGXI RADICAL TWO HANDS
+2F37	弋	# KANGXI RADICAL SHOOT
+2F38	弓	# KANGXI RADICAL BOW
+2F39	彐	# KANGXI RADICAL SNOUT
+2F3A	彡	# KANGXI RADICAL BRISTLE
+2F3B	彳	# KANGXI RADICAL STEP
+2F3C	心	# KANGXI RADICAL HEART
+2F3D	戈	# KANGXI RADICAL HALBERD
+2F3E	戶	# KANGXI RADICAL DOOR
+2F3F	手	# KANGXI RADICAL HAND
+2F40	支	# KANGXI RADICAL BRANCH
+2F41	攴	# KANGXI RADICAL RAP
+2F42	文	# KANGXI RADICAL SCRIPT
+2F43	斗	# KANGXI RADICAL DIPPER
+2F44	斤	# KANGXI RADICAL AXE
+2F45	方	# KANGXI RADICAL SQUARE
+2F46	无	# KANGXI RADICAL NOT
+2F47	日	# KANGXI RADICAL SUN
+2F48	曰	# KANGXI RADICAL SAY
+2F49	月	# KANGXI RADICAL MOON
+2F4A	木	# KANGXI RADICAL TREE
+2F4B	欠	# KANGXI RADICAL LACK
+2F4C	止	# KANGXI RADICAL STOP
+2F4D	歹	# KANGXI RADICAL DEATH
+2F4E	殳	# KANGXI RADICAL WEAPON
+2F4F	毋	# KANGXI RADICAL DO NOT
+2F50	比	# KANGXI RADICAL COMPARE
+2F51	毛	# KANGXI RADICAL FUR
+2F52	氏	# KANGXI RADICAL CLAN
+2F53	气	# KANGXI RADICAL STEAM
+2F54	水	# KANGXI RADICAL WATER
+2F55	火	# KANGXI RADICAL FIRE
+2F56	爪	# KANGXI RADICAL CLAW
+2F57	父	# KANGXI RADICAL FATHER
+2F58	爻	# KANGXI RADICAL DOUBLE X
+2F59	爿	# KANGXI RADICAL HALF TREE TRUNK
+2F5A	片	# KANGXI RADICAL SLICE
+2F5B	牙	# KANGXI RADICAL FANG
+2F5C	牛	# KANGXI RADICAL COW
+2F5D	犬	# KANGXI RADICAL DOG
+2F5E	玄	# KANGXI RADICAL PROFOUND
+2F5F	玉	# KANGXI RADICAL JADE
+2F60	瓜	# KANGXI RADICAL MELON
+2F61	瓦	# KANGXI RADICAL TILE
+2F62	甘	# KANGXI RADICAL SWEET
+2F63	生	# KANGXI RADICAL LIFE
+2F64	用	# KANGXI RADICAL USE
+2F65	田	# KANGXI RADICAL FIELD
+2F66	疋	# KANGXI RADICAL BOLT OF CLOTH
+2F67	疒	# KANGXI RADICAL SICKNESS
+2F68	癶	# KANGXI RADICAL DOTTED TENT
+2F69	白	# KANGXI RADICAL WHITE
+2F6A	皮	# KANGXI RADICAL SKIN
+2F6B	皿	# KANGXI RADICAL DISH
+2F6C	目	# KANGXI RADICAL EYE
+2F6D	矛	# KANGXI RADICAL SPEAR
+2F6E	矢	# KANGXI RADICAL ARROW
+2F6F	石	# KANGXI RADICAL STONE
+2F70	示	# KANGXI RADICAL SPIRIT
+2F71	禸	# KANGXI RADICAL TRACK
+2F72	禾	# KANGXI RADICAL GRAIN
+2F73	穴	# KANGXI RADICAL CAVE
+2F74	立	# KANGXI RADICAL STAND
+2F75	竹	# KANGXI RADICAL BAMBOO
+2F76	米	# KANGXI RADICAL RICE
+2F77	糸	# KANGXI RADICAL SILK
+2F78	缶	# KANGXI RADICAL JAR
+2F79	网	# KANGXI RADICAL NET
+2F7A	羊	# KANGXI RADICAL SHEEP
+2F7B	羽	# KANGXI RADICAL FEATHER
+2F7C	老	# KANGXI RADICAL OLD
+2F7D	而	# KANGXI RADICAL AND
+2F7E	耒	# KANGXI RADICAL PLOW
+2F7F	耳	# KANGXI RADICAL EAR
+2F80	聿	# KANGXI RADICAL BRUSH
+2F81	肉	# KANGXI RADICAL MEAT
+2F82	臣	# KANGXI RADICAL MINISTER
+2F83	自	# KANGXI RADICAL SELF
+2F84	至	# KANGXI RADICAL ARRIVE
+2F85	臼	# KANGXI RADICAL MORTAR
+2F86	舌	# KANGXI RADICAL TONGUE
+2F87	舛	# KANGXI RADICAL OPPOSE
+2F88	舟	# KANGXI RADICAL BOAT
+2F89	艮	# KANGXI RADICAL STOPPING
+2F8A	色	# KANGXI RADICAL COLOR
+2F8B	艸	# KANGXI RADICAL GRASS
+2F8C	虍	# KANGXI RADICAL TIGER
+2F8D	虫	# KANGXI RADICAL INSECT
+2F8E	血	# KANGXI RADICAL BLOOD
+2F8F	行	# KANGXI RADICAL WALK ENCLOSURE
+2F90	衣	# KANGXI RADICAL CLOTHES
+2F91	襾	# KANGXI RADICAL WEST
+2F92	見	# KANGXI RADICAL SEE
+2F93	角	# KANGXI RADICAL HORN
+2F94	言	# KANGXI RADICAL SPEECH
+2F95	谷	# KANGXI RADICAL VALLEY
+2F96	豆	# KANGXI RADICAL BEAN
+2F97	豕	# KANGXI RADICAL PIG
+2F98	豸	# KANGXI RADICAL BADGER
+2F99	貝	# KANGXI RADICAL SHELL
+2F9A	赤	# KANGXI RADICAL RED
+2F9B	走	# KANGXI RADICAL RUN
+2F9C	足	# KANGXI RADICAL FOOT
+2F9D	身	# KANGXI RADICAL BODY
+2F9E	車	# KANGXI RADICAL CART
+2F9F	辛	# KANGXI RADICAL BITTER
+2FA0	辰	# KANGXI RADICAL MORNING
+2FA1	辵	# KANGXI RADICAL WALK
+2FA2	邑	# KANGXI RADICAL CITY
+2FA3	酉	# KANGXI RADICAL WINE
+2FA4	釆	# KANGXI RADICAL DISTINGUISH
+2FA5	里	# KANGXI RADICAL VILLAGE
+2FA6	金	# KANGXI RADICAL GOLD
+2FA7	長	# KANGXI RADICAL LONG
+2FA8	門	# KANGXI RADICAL GATE
+2FA9	阜	# KANGXI RADICAL MOUND
+2FAA	隶	# KANGXI RADICAL SLAVE
+2FAB	隹	# KANGXI RADICAL SHORT TAILED BIRD
+2FAC	雨	# KANGXI RADICAL RAIN
+2FAD	靑	# KANGXI RADICAL BLUE
+2FAE	非	# KANGXI RADICAL WRONG
+2FAF	面	# KANGXI RADICAL FACE
+2FB0	革	# KANGXI RADICAL LEATHER
+2FB1	韋	# KANGXI RADICAL TANNED LEATHER
+2FB2	韭	# KANGXI RADICAL LEEK
+2FB3	音	# KANGXI RADICAL SOUND
+2FB4	頁	# KANGXI RADICAL LEAF
+2FB5	風	# KANGXI RADICAL WIND
+2FB6	飛	# KANGXI RADICAL FLY
+2FB7	食	# KANGXI RADICAL EAT
+2FB8	首	# KANGXI RADICAL HEAD
+2FB9	香	# KANGXI RADICAL FRAGRANT
+2FBA	馬	# KANGXI RADICAL HORSE
+2FBB	骨	# KANGXI RADICAL BONE
+2FBC	高	# KANGXI RADICAL TALL
+2FBD	髟	# KANGXI RADICAL HAIR
+2FBE	鬥	# KANGXI RADICAL FIGHT
+2FBF	鬯	# KANGXI RADICAL SACRIFICIAL WINE
+2FC0	鬲	# KANGXI RADICAL CAULDRON
+2FC1	鬼	# KANGXI RADICAL GHOST
+2FC2	魚	# KANGXI RADICAL FISH
+2FC3	鳥	# KANGXI RADICAL BIRD
+2FC4	鹵	# KANGXI RADICAL SALT
+2FC5	鹿	# KANGXI RADICAL DEER
+2FC6	麥	# KANGXI RADICAL WHEAT
+2FC7	麻	# KANGXI RADICAL HEMP
+2FC8	黃	# KANGXI RADICAL YELLOW
+2FC9	黍	# KANGXI RADICAL MILLET
+2FCA	黑	# KANGXI RADICAL BLACK
+2FCB	黹	# KANGXI RADICAL EMBROIDERY
+2FCC	黽	# KANGXI RADICAL FROG
+2FCD	鼎	# KANGXI RADICAL TRIPOD
+2FCE	鼓	# KANGXI RADICAL DRUM
+2FCF	鼠	# KANGXI RADICAL RAT
+2FD0	鼻	# KANGXI RADICAL NOSE
+2FD1	齊	# KANGXI RADICAL EVEN
+2FD2	齒	# KANGXI RADICAL TOOTH
+2FD3	龍	# KANGXI RADICAL DRAGON
+2FD4	龜	# KANGXI RADICAL TURTLE
+2FD5	龠	# KANGXI RADICAL FLUTE
+3000	 	# IDEOGRAPHIC SPACE
+3036	〒	# CIRCLED POSTAL MARK
+3038	十	# HANGZHOU NUMERAL TEN
+3039	卄	# HANGZHOU NUMERAL TWENTY
+303A	卅	# HANGZHOU NUMERAL THIRTY
+3041	あ	# HIRAGANA LETTER SMALL A
+3043	い	# HIRAGANA LETTER SMALL I
+3045	う	# HIRAGANA LETTER SMALL U
+3047	え	# HIRAGANA LETTER SMALL E
+3049	お	# HIRAGANA LETTER SMALL O
+3063	つ	# HIRAGANA LETTER SMALL TU
+3083	や	# HIRAGANA LETTER SMALL YA
+3085	ゆ	# HIRAGANA LETTER SMALL YU
+3087	よ	# HIRAGANA LETTER SMALL YO
+308E	わ	# HIRAGANA LETTER SMALL WA
+3095	か	# HIRAGANA LETTER SMALL KA
+3096	け	# HIRAGANA LETTER SMALL KE
+309B	 ゙	# KATAKANA-HIRAGANA VOICED SOUND MARK
+309C	 ゚	# KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
+30A0	=	# KATAKANA-HIRAGANA DOUBLE HYPHEN
+30A1	ア	# KATAKANA LETTER SMALL A
+30A3	イ	# KATAKANA LETTER SMALL I
+30A5	ウ	# KATAKANA LETTER SMALL U
+30A7	エ	# KATAKANA LETTER SMALL E
+30A9	オ	# KATAKANA LETTER SMALL O
+30C3	ツ	# KATAKANA LETTER SMALL TU
+30E3	ヤ	# KATAKANA LETTER SMALL YA
+30E5	ユ	# KATAKANA LETTER SMALL YU
+30E7	ヨ	# KATAKANA LETTER SMALL YO
+30EE	ワ	# KATAKANA LETTER SMALL WA
+30F5	カ	# KATAKANA LETTER SMALL KA
+30F6	ケ	# KATAKANA LETTER SMALL KE
+3131	ᄀ	# HANGUL LETTER KIYEOK
+3132	ᄁ	# HANGUL LETTER SSANGKIYEOK
+3133	ᆪ	# HANGUL LETTER KIYEOK-SIOS
+3134	ᄂ	# HANGUL LETTER NIEUN
+3135	ᆬ	# HANGUL LETTER NIEUN-CIEUC
+3136	ᆭ	# HANGUL LETTER NIEUN-HIEUH
+3137	ᄃ	# HANGUL LETTER TIKEUT
+3138	ᄄ	# HANGUL LETTER SSANGTIKEUT
+3139	ᄅ	# HANGUL LETTER RIEUL
+313A	ᆰ	# HANGUL LETTER RIEUL-KIYEOK
+313B	ᆱ	# HANGUL LETTER RIEUL-MIEUM
+313C	ᆲ	# HANGUL LETTER RIEUL-PIEUP
+313D	ᆳ	# HANGUL LETTER RIEUL-SIOS
+313E	ᆴ	# HANGUL LETTER RIEUL-THIEUTH
+313F	ᆵ	# HANGUL LETTER RIEUL-PHIEUPH
+3140	ᄚ	# HANGUL LETTER RIEUL-HIEUH
+3141	ᄆ	# HANGUL LETTER MIEUM
+3142	ᄇ	# HANGUL LETTER PIEUP
+3143	ᄈ	# HANGUL LETTER SSANGPIEUP
+3144	ᄡ	# HANGUL LETTER PIEUP-SIOS
+3145	ᄉ	# HANGUL LETTER SIOS
+3146	ᄊ	# HANGUL LETTER SSANGSIOS
+3147	ᄋ	# HANGUL LETTER IEUNG
+3148	ᄌ	# HANGUL LETTER CIEUC
+3149	ᄍ	# HANGUL LETTER SSANGCIEUC
+314A	ᄎ	# HANGUL LETTER CHIEUCH
+314B	ᄏ	# HANGUL LETTER KHIEUKH
+314C	ᄐ	# HANGUL LETTER THIEUTH
+314D	ᄑ	# HANGUL LETTER PHIEUPH
+314E	ᄒ	# HANGUL LETTER HIEUH
+314F	ᅡ	# HANGUL LETTER A
+3150	ᅢ	# HANGUL LETTER AE
+3151	ᅣ	# HANGUL LETTER YA
+3152	ᅤ	# HANGUL LETTER YAE
+3153	ᅥ	# HANGUL LETTER EO
+3154	ᅦ	# HANGUL LETTER E
+3155	ᅧ	# HANGUL LETTER YEO
+3156	ᅨ	# HANGUL LETTER YE
+3157	ᅩ	# HANGUL LETTER O
+3158	ᅪ	# HANGUL LETTER WA
+3159	ᅫ	# HANGUL LETTER WAE
+315A	ᅬ	# HANGUL LETTER OE
+315B	ᅭ	# HANGUL LETTER YO
+315C	ᅮ	# HANGUL LETTER U
+315D	ᅯ	# HANGUL LETTER WEO
+315E	ᅰ	# HANGUL LETTER WE
+315F	ᅱ	# HANGUL LETTER WI
+3160	ᅲ	# HANGUL LETTER YU
+3161	ᅳ	# HANGUL LETTER EU
+3162	ᅴ	# HANGUL LETTER YI
+3163	ᅵ	# HANGUL LETTER I
+3164	ᅠ	# HANGUL FILLER
+3165	ᄔ	# HANGUL LETTER SSANGNIEUN
+3166	ᄕ	# HANGUL LETTER NIEUN-TIKEUT
+3167	ᇇ	# HANGUL LETTER NIEUN-SIOS
+3168	ᇈ	# HANGUL LETTER NIEUN-PANSIOS
+3169	ᇌ	# HANGUL LETTER RIEUL-KIYEOK-SIOS
+316A	ᇎ	# HANGUL LETTER RIEUL-TIKEUT
+316B	ᇓ	# HANGUL LETTER RIEUL-PIEUP-SIOS
+316C	ᇗ	# HANGUL LETTER RIEUL-PANSIOS
+316D	ᇙ	# HANGUL LETTER RIEUL-YEORINHIEUH
+316E	ᄜ	# HANGUL LETTER MIEUM-PIEUP
+316F	ᇝ	# HANGUL LETTER MIEUM-SIOS
+3170	ᇟ	# HANGUL LETTER MIEUM-PANSIOS
+3171	ᄝ	# HANGUL LETTER KAPYEOUNMIEUM
+3172	ᄞ	# HANGUL LETTER PIEUP-KIYEOK
+3173	ᄠ	# HANGUL LETTER PIEUP-TIKEUT
+3174	ᄢ	# HANGUL LETTER PIEUP-SIOS-KIYEOK
+3175	ᄣ	# HANGUL LETTER PIEUP-SIOS-TIKEUT
+3176	ᄧ	# HANGUL LETTER PIEUP-CIEUC
+3177	ᄩ	# HANGUL LETTER PIEUP-THIEUTH
+3178	ᄫ	# HANGUL LETTER KAPYEOUNPIEUP
+3179	ᄬ	# HANGUL LETTER KAPYEOUNSSANGPIEUP
+317A	ᄭ	# HANGUL LETTER SIOS-KIYEOK
+317B	ᄮ	# HANGUL LETTER SIOS-NIEUN
+317C	ᄯ	# HANGUL LETTER SIOS-TIKEUT
+317D	ᄲ	# HANGUL LETTER SIOS-PIEUP
+317E	ᄶ	# HANGUL LETTER SIOS-CIEUC
+317F	ᅀ	# HANGUL LETTER PANSIOS
+3180	ᅇ	# HANGUL LETTER SSANGIEUNG
+3181	ᅌ	# HANGUL LETTER YESIEUNG
+3182	ᇱ	# HANGUL LETTER YESIEUNG-SIOS
+3183	ᇲ	# HANGUL LETTER YESIEUNG-PANSIOS
+3184	ᅗ	# HANGUL LETTER KAPYEOUNPHIEUPH
+3185	ᅘ	# HANGUL LETTER SSANGHIEUH
+3186	ᅙ	# HANGUL LETTER YEORINHIEUH
+3187	ᆄ	# HANGUL LETTER YO-YA
+3188	ᆅ	# HANGUL LETTER YO-YAE
+3189	ᆈ	# HANGUL LETTER YO-I
+318A	ᆑ	# HANGUL LETTER YU-YEO
+318B	ᆒ	# HANGUL LETTER YU-YE
+318C	ᆔ	# HANGUL LETTER YU-I
+318D	ᆞ	# HANGUL LETTER ARAEA
+318E	ᆡ	# HANGUL LETTER ARAEAE
+31F0	ク	# KATAKANA LETTER SMALL KU
+31F1	シ	# KATAKANA LETTER SMALL SI
+31F2	ス	# KATAKANA LETTER SMALL SU
+31F3	ト	# KATAKANA LETTER SMALL TO
+31F4	ヌ	# KATAKANA LETTER SMALL NU
+31F5	ハ	# KATAKANA LETTER SMALL HA
+31F6	ヒ	# KATAKANA LETTER SMALL HI
+31F7	フ	# KATAKANA LETTER SMALL HU
+31F8	ヘ	# KATAKANA LETTER SMALL HE
+31F9	ホ	# KATAKANA LETTER SMALL HO
+31FA	ム	# KATAKANA LETTER SMALL MU
+31FB	ラ	# KATAKANA LETTER SMALL RA
+31FC	リ	# KATAKANA LETTER SMALL RI
+31FD	ル	# KATAKANA LETTER SMALL RU
+31FE	レ	# KATAKANA LETTER SMALL RE
+31FF	ロ	# KATAKANA LETTER SMALL RO
+3200	(ᄀ)	# PARENTHESIZED HANGUL KIYEOK
+3201	(ᄂ)	# PARENTHESIZED HANGUL NIEUN
+3202	(ᄃ)	# PARENTHESIZED HANGUL TIKEUT
+3203	(ᄅ)	# PARENTHESIZED HANGUL RIEUL
+3204	(ᄆ)	# PARENTHESIZED HANGUL MIEUM
+3205	(ᄇ)	# PARENTHESIZED HANGUL PIEUP
+3206	(ᄉ)	# PARENTHESIZED HANGUL SIOS
+3207	(ᄋ)	# PARENTHESIZED HANGUL IEUNG
+3208	(ᄌ)	# PARENTHESIZED HANGUL CIEUC
+3209	(ᄎ)	# PARENTHESIZED HANGUL CHIEUCH
+320A	(ᄏ)	# PARENTHESIZED HANGUL KHIEUKH
+320B	(ᄐ)	# PARENTHESIZED HANGUL THIEUTH
+320C	(ᄑ)	# PARENTHESIZED HANGUL PHIEUPH
+320D	(ᄒ)	# PARENTHESIZED HANGUL HIEUH
+320E	(가)	# PARENTHESIZED HANGUL KIYEOK A
+320F	(나)	# PARENTHESIZED HANGUL NIEUN A
+3210	(다)	# PARENTHESIZED HANGUL TIKEUT A
+3211	(라)	# PARENTHESIZED HANGUL RIEUL A
+3212	(마)	# PARENTHESIZED HANGUL MIEUM A
+3213	(바)	# PARENTHESIZED HANGUL PIEUP A
+3214	(사)	# PARENTHESIZED HANGUL SIOS A
+3215	(아)	# PARENTHESIZED HANGUL IEUNG A
+3216	(자)	# PARENTHESIZED HANGUL CIEUC A
+3217	(차)	# PARENTHESIZED HANGUL CHIEUCH A
+3218	(카)	# PARENTHESIZED HANGUL KHIEUKH A
+3219	(타)	# PARENTHESIZED HANGUL THIEUTH A
+321A	(파)	# PARENTHESIZED HANGUL PHIEUPH A
+321B	(하)	# PARENTHESIZED HANGUL HIEUH A
+321C	(주)	# PARENTHESIZED HANGUL CIEUC U
+321D	(오전)	# PARENTHESIZED KOREAN CHARACTER OJEON
+321E	(오후)	# PARENTHESIZED KOREAN CHARACTER O HU
+3220	(一)	# PARENTHESIZED IDEOGRAPH ONE
+3221	(二)	# PARENTHESIZED IDEOGRAPH TWO
+3222	(三)	# PARENTHESIZED IDEOGRAPH THREE
+3223	(四)	# PARENTHESIZED IDEOGRAPH FOUR
+3224	(五)	# PARENTHESIZED IDEOGRAPH FIVE
+3225	(六)	# PARENTHESIZED IDEOGRAPH SIX
+3226	(七)	# PARENTHESIZED IDEOGRAPH SEVEN
+3227	(八)	# PARENTHESIZED IDEOGRAPH EIGHT
+3228	(九)	# PARENTHESIZED IDEOGRAPH NINE
+3229	(十)	# PARENTHESIZED IDEOGRAPH TEN
+322A	(月)	# PARENTHESIZED IDEOGRAPH MOON
+322B	(火)	# PARENTHESIZED IDEOGRAPH FIRE
+322C	(水)	# PARENTHESIZED IDEOGRAPH WATER
+322D	(木)	# PARENTHESIZED IDEOGRAPH WOOD
+322E	(金)	# PARENTHESIZED IDEOGRAPH METAL
+322F	(土)	# PARENTHESIZED IDEOGRAPH EARTH
+3230	(日)	# PARENTHESIZED IDEOGRAPH SUN
+3231	(株)	# PARENTHESIZED IDEOGRAPH STOCK
+3232	(有)	# PARENTHESIZED IDEOGRAPH HAVE
+3233	(社)	# PARENTHESIZED IDEOGRAPH SOCIETY
+3234	(名)	# PARENTHESIZED IDEOGRAPH NAME
+3235	(特)	# PARENTHESIZED IDEOGRAPH SPECIAL
+3236	(財)	# PARENTHESIZED IDEOGRAPH FINANCIAL
+3237	(祝)	# PARENTHESIZED IDEOGRAPH CONGRATULATION
+3238	(労)	# PARENTHESIZED IDEOGRAPH LABOR
+3239	(代)	# PARENTHESIZED IDEOGRAPH REPRESENT
+323A	(呼)	# PARENTHESIZED IDEOGRAPH CALL
+323B	(学)	# PARENTHESIZED IDEOGRAPH STUDY
+323C	(監)	# PARENTHESIZED IDEOGRAPH SUPERVISE
+323D	(企)	# PARENTHESIZED IDEOGRAPH ENTERPRISE
+323E	(資)	# PARENTHESIZED IDEOGRAPH RESOURCE
+323F	(協)	# PARENTHESIZED IDEOGRAPH ALLIANCE
+3240	(祭)	# PARENTHESIZED IDEOGRAPH FESTIVAL
+3241	(休)	# PARENTHESIZED IDEOGRAPH REST
+3242	(自)	# PARENTHESIZED IDEOGRAPH SELF
+3243	(至)	# PARENTHESIZED IDEOGRAPH REACH
+3250	PTE	# PARTNERSHIP SIGN
+3251	(21)	# CIRCLED NUMBER TWENTY ONE
+3252	(22)	# CIRCLED NUMBER TWENTY TWO
+3253	(23)	# CIRCLED NUMBER TWENTY THREE
+3254	(24)	# CIRCLED NUMBER TWENTY FOUR
+3255	(25)	# CIRCLED NUMBER TWENTY FIVE
+3256	(26)	# CIRCLED NUMBER TWENTY SIX
+3257	(27)	# CIRCLED NUMBER TWENTY SEVEN
+3258	(28)	# CIRCLED NUMBER TWENTY EIGHT
+3259	(29)	# CIRCLED NUMBER TWENTY NINE
+325A	(30)	# CIRCLED NUMBER THIRTY
+325B	(31)	# CIRCLED NUMBER THIRTY ONE
+325C	(32)	# CIRCLED NUMBER THIRTY TWO
+325D	(33)	# CIRCLED NUMBER THIRTY THREE
+325E	(34)	# CIRCLED NUMBER THIRTY FOUR
+325F	(35)	# CIRCLED NUMBER THIRTY FIVE
+3260	(ᄀ)	# CIRCLED HANGUL KIYEOK
+3261	(ᄂ)	# CIRCLED HANGUL NIEUN
+3262	(ᄃ)	# CIRCLED HANGUL TIKEUT
+3263	(ᄅ)	# CIRCLED HANGUL RIEUL
+3264	(ᄆ)	# CIRCLED HANGUL MIEUM
+3265	(ᄇ)	# CIRCLED HANGUL PIEUP
+3266	(ᄉ)	# CIRCLED HANGUL SIOS
+3267	(ᄋ)	# CIRCLED HANGUL IEUNG
+3268	(ᄌ)	# CIRCLED HANGUL CIEUC
+3269	(ᄎ)	# CIRCLED HANGUL CHIEUCH
+326A	(ᄏ)	# CIRCLED HANGUL KHIEUKH
+326B	(ᄐ)	# CIRCLED HANGUL THIEUTH
+326C	(ᄑ)	# CIRCLED HANGUL PHIEUPH
+326D	(ᄒ)	# CIRCLED HANGUL HIEUH
+326E	(가)	# CIRCLED HANGUL KIYEOK A
+326F	(나)	# CIRCLED HANGUL NIEUN A
+3270	(다)	# CIRCLED HANGUL TIKEUT A
+3271	(라)	# CIRCLED HANGUL RIEUL A
+3272	(마)	# CIRCLED HANGUL MIEUM A
+3273	(바)	# CIRCLED HANGUL PIEUP A
+3274	(사)	# CIRCLED HANGUL SIOS A
+3275	(아)	# CIRCLED HANGUL IEUNG A
+3276	(자)	# CIRCLED HANGUL CIEUC A
+3277	(차)	# CIRCLED HANGUL CHIEUCH A
+3278	(카)	# CIRCLED HANGUL KHIEUKH A
+3279	(타)	# CIRCLED HANGUL THIEUTH A
+327A	(파)	# CIRCLED HANGUL PHIEUPH A
+327B	(하)	# CIRCLED HANGUL HIEUH A
+327C	(참고)	# CIRCLED KOREAN CHARACTER CHAMKO
+327D	(주의)	# CIRCLED KOREAN CHARACTER JUEUI
+3280	(一)	# CIRCLED IDEOGRAPH ONE
+3281	(二)	# CIRCLED IDEOGRAPH TWO
+3282	(三)	# CIRCLED IDEOGRAPH THREE
+3283	(四)	# CIRCLED IDEOGRAPH FOUR
+3284	(五)	# CIRCLED IDEOGRAPH FIVE
+3285	(六)	# CIRCLED IDEOGRAPH SIX
+3286	(七)	# CIRCLED IDEOGRAPH SEVEN
+3287	(八)	# CIRCLED IDEOGRAPH EIGHT
+3288	(九)	# CIRCLED IDEOGRAPH NINE
+3289	(十)	# CIRCLED IDEOGRAPH TEN
+328A	(月)	# CIRCLED IDEOGRAPH MOON
+328B	(火)	# CIRCLED IDEOGRAPH FIRE
+328C	(水)	# CIRCLED IDEOGRAPH WATER
+328D	(木)	# CIRCLED IDEOGRAPH WOOD
+328E	(金)	# CIRCLED IDEOGRAPH METAL
+328F	(土)	# CIRCLED IDEOGRAPH EARTH
+3290	(日)	# CIRCLED IDEOGRAPH SUN
+3291	(株)	# CIRCLED IDEOGRAPH STOCK
+3292	(有)	# CIRCLED IDEOGRAPH HAVE
+3293	(社)	# CIRCLED IDEOGRAPH SOCIETY
+3294	(名)	# CIRCLED IDEOGRAPH NAME
+3295	(特)	# CIRCLED IDEOGRAPH SPECIAL
+3296	(財)	# CIRCLED IDEOGRAPH FINANCIAL
+3297	(祝)	# CIRCLED IDEOGRAPH CONGRATULATION
+3298	(労)	# CIRCLED IDEOGRAPH LABOR
+3299	(秘)	# CIRCLED IDEOGRAPH SECRET
+329A	(男)	# CIRCLED IDEOGRAPH MALE
+329B	(女)	# CIRCLED IDEOGRAPH FEMALE
+329C	(適)	# CIRCLED IDEOGRAPH SUITABLE
+329D	(優)	# CIRCLED IDEOGRAPH EXCELLENT
+329E	(印)	# CIRCLED IDEOGRAPH PRINT
+329F	(注)	# CIRCLED IDEOGRAPH ATTENTION
+32A0	(項)	# CIRCLED IDEOGRAPH ITEM
+32A1	(休)	# CIRCLED IDEOGRAPH REST
+32A2	(写)	# CIRCLED IDEOGRAPH COPY
+32A3	(正)	# CIRCLED IDEOGRAPH CORRECT
+32A4	(上)	# CIRCLED IDEOGRAPH HIGH
+32A5	(中)	# CIRCLED IDEOGRAPH CENTRE
+32A6	(下)	# CIRCLED IDEOGRAPH LOW
+32A7	(左)	# CIRCLED IDEOGRAPH LEFT
+32A8	(右)	# CIRCLED IDEOGRAPH RIGHT
+32A9	(医)	# CIRCLED IDEOGRAPH MEDICINE
+32AA	(宗)	# CIRCLED IDEOGRAPH RELIGION
+32AB	(学)	# CIRCLED IDEOGRAPH STUDY
+32AC	(監)	# CIRCLED IDEOGRAPH SUPERVISE
+32AD	(企)	# CIRCLED IDEOGRAPH ENTERPRISE
+32AE	(資)	# CIRCLED IDEOGRAPH RESOURCE
+32AF	(協)	# CIRCLED IDEOGRAPH ALLIANCE
+32B0	(夜)	# CIRCLED IDEOGRAPH NIGHT
+32B1	(36)	# CIRCLED NUMBER THIRTY SIX
+32B2	(37)	# CIRCLED NUMBER THIRTY SEVEN
+32B3	(38)	# CIRCLED NUMBER THIRTY EIGHT
+32B4	(39)	# CIRCLED NUMBER THIRTY NINE
+32B5	(40)	# CIRCLED NUMBER FORTY
+32B6	(41)	# CIRCLED NUMBER FORTY ONE
+32B7	(42)	# CIRCLED NUMBER FORTY TWO
+32B8	(43)	# CIRCLED NUMBER FORTY THREE
+32B9	(44)	# CIRCLED NUMBER FORTY FOUR
+32BA	(45)	# CIRCLED NUMBER FORTY FIVE
+32BB	(46)	# CIRCLED NUMBER FORTY SIX
+32BC	(47)	# CIRCLED NUMBER FORTY SEVEN
+32BD	(48)	# CIRCLED NUMBER FORTY EIGHT
+32BE	(49)	# CIRCLED NUMBER FORTY NINE
+32BF	(50)	# CIRCLED NUMBER FIFTY
+32C0	1月	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR JANUARY
+32C1	2月	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR FEBRUARY
+32C2	3月	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR MARCH
+32C3	4月	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR APRIL
+32C4	5月	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR MAY
+32C5	6月	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR JUNE
+32C6	7月	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR JULY
+32C7	8月	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR AUGUST
+32C8	9月	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR SEPTEMBER
+32C9	10月	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR OCTOBER
+32CA	11月	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR NOVEMBER
+32CB	12月	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DECEMBER
+32CC	Hg	# SQUARE HG
+32CD	erg	# SQUARE ERG
+32CE	eV	# SQUARE EV
+32CF	LTD	# LIMITED LIABILITY SIGN
+32D0	(ア)	# CIRCLED KATAKANA A
+32D1	(イ)	# CIRCLED KATAKANA I
+32D2	(ウ)	# CIRCLED KATAKANA U
+32D3	(エ)	# CIRCLED KATAKANA E
+32D4	(オ)	# CIRCLED KATAKANA O
+32D5	(カ)	# CIRCLED KATAKANA KA
+32D6	(キ)	# CIRCLED KATAKANA KI
+32D7	(ク)	# CIRCLED KATAKANA KU
+32D8	(ケ)	# CIRCLED KATAKANA KE
+32D9	(コ)	# CIRCLED KATAKANA KO
+32DA	(サ)	# CIRCLED KATAKANA SA
+32DB	(シ)	# CIRCLED KATAKANA SI
+32DC	(ス)	# CIRCLED KATAKANA SU
+32DD	(セ)	# CIRCLED KATAKANA SE
+32DE	(ソ)	# CIRCLED KATAKANA SO
+32DF	(タ)	# CIRCLED KATAKANA TA
+32E0	(チ)	# CIRCLED KATAKANA TI
+32E1	(ツ)	# CIRCLED KATAKANA TU
+32E2	(テ)	# CIRCLED KATAKANA TE
+32E3	(ト)	# CIRCLED KATAKANA TO
+32E4	(ナ)	# CIRCLED KATAKANA NA
+32E5	(ニ)	# CIRCLED KATAKANA NI
+32E6	(ヌ)	# CIRCLED KATAKANA NU
+32E7	(ネ)	# CIRCLED KATAKANA NE
+32E8	(ノ)	# CIRCLED KATAKANA NO
+32E9	(ハ)	# CIRCLED KATAKANA HA
+32EA	(ヒ)	# CIRCLED KATAKANA HI
+32EB	(フ)	# CIRCLED KATAKANA HU
+32EC	(ヘ)	# CIRCLED KATAKANA HE
+32ED	(ホ)	# CIRCLED KATAKANA HO
+32EE	(マ)	# CIRCLED KATAKANA MA
+32EF	(ミ)	# CIRCLED KATAKANA MI
+32F0	(ム)	# CIRCLED KATAKANA MU
+32F1	(メ)	# CIRCLED KATAKANA ME
+32F2	(モ)	# CIRCLED KATAKANA MO
+32F3	(ヤ)	# CIRCLED KATAKANA YA
+32F4	(ユ)	# CIRCLED KATAKANA YU
+32F5	(ヨ)	# CIRCLED KATAKANA YO
+32F6	(ラ)	# CIRCLED KATAKANA RA
+32F7	(リ)	# CIRCLED KATAKANA RI
+32F8	(ル)	# CIRCLED KATAKANA RU
+32F9	(レ)	# CIRCLED KATAKANA RE
+32FA	(ロ)	# CIRCLED KATAKANA RO
+32FB	(ワ)	# CIRCLED KATAKANA WA
+32FC	(ヰ)	# CIRCLED KATAKANA WI
+32FD	(ヱ)	# CIRCLED KATAKANA WE
+32FE	(ヲ)	# CIRCLED KATAKANA WO
+3300	アパート	# SQUARE APAATO
+3301	アルファ	# SQUARE ARUHUA
+3302	アンペア	# SQUARE ANPEA
+3303	アール	# SQUARE AARU
+3304	イニング	# SQUARE ININGU
+3305	インチ	# SQUARE INTI
+3306	ウォン	# SQUARE UON
+3307	エスクード	# SQUARE ESUKUUDO
+3308	エーカー	# SQUARE EEKAA
+3309	オンス	# SQUARE ONSU
+330A	オーム	# SQUARE OOMU
+330B	カイリ	# SQUARE KAIRI
+330C	カラット	# SQUARE KARATTO
+330D	カロリー	# SQUARE KARORII
+330E	ガロン	# SQUARE GARON
+330F	ガンマ	# SQUARE GANMA
+3310	ギガ	# SQUARE GIGA
+3311	ギニー	# SQUARE GINII
+3312	キュリー	# SQUARE KYURII
+3313	ギルダー	# SQUARE GIRUDAA
+3314	キロ	# SQUARE KIRO
+3315	キログラム	# SQUARE KIROGURAMU
+3316	キロメートル	# SQUARE KIROMEETORU
+3317	キロワット	# SQUARE KIROWATTO
+3318	グラム	# SQUARE GURAMU
+3319	グラムトン	# SQUARE GURAMUTON
+331A	クルゼイロ	# SQUARE KURUZEIRO
+331B	クローネ	# SQUARE KUROONE
+331C	ケース	# SQUARE KEESU
+331D	コルナ	# SQUARE KORUNA
+331E	コーポ	# SQUARE KOOPO
+331F	サイクル	# SQUARE SAIKURU
+3320	サンチーム	# SQUARE SANTIIMU
+3321	シリング	# SQUARE SIRINGU
+3322	センチ	# SQUARE SENTI
+3323	セント	# SQUARE SENTO
+3324	ダース	# SQUARE DAASU
+3325	デシ	# SQUARE DESI
+3326	ドル	# SQUARE DORU
+3327	トン	# SQUARE TON
+3328	ナノ	# SQUARE NANO
+3329	ノット	# SQUARE NOTTO
+332A	ハイツ	# SQUARE HAITU
+332B	パーセント	# SQUARE PAASENTO
+332C	パーツ	# SQUARE PAATU
+332D	バーレル	# SQUARE BAARERU
+332E	ピアストル	# SQUARE PIASUTORU
+332F	ピクル	# SQUARE PIKURU
+3330	ピコ	# SQUARE PIKO
+3331	ビル	# SQUARE BIRU
+3332	ファラッド	# SQUARE HUARADDO
+3333	フィート	# SQUARE HUIITO
+3334	ブッシェル	# SQUARE BUSSYERU
+3335	フラン	# SQUARE HURAN
+3336	ヘクタール	# SQUARE HEKUTAARU
+3337	ペソ	# SQUARE PESO
+3338	ペニヒ	# SQUARE PENIHI
+3339	ヘルツ	# SQUARE HERUTU
+333A	ペンス	# SQUARE PENSU
+333B	ページ	# SQUARE PEEZI
+333C	ベータ	# SQUARE BEETA
+333D	ポイント	# SQUARE POINTO
+333E	ボルト	# SQUARE BORUTO
+333F	ホン	# SQUARE HON
+3340	ポンド	# SQUARE PONDO
+3341	ホール	# SQUARE HOORU
+3342	ホーン	# SQUARE HOON
+3343	マイクロ	# SQUARE MAIKURO
+3344	マイル	# SQUARE MAIRU
+3345	マッハ	# SQUARE MAHHA
+3346	マルク	# SQUARE MARUKU
+3347	マンション	# SQUARE MANSYON
+3348	ミクロン	# SQUARE MIKURON
+3349	ミリ	# SQUARE MIRI
+334A	ミリバール	# SQUARE MIRIBAARU
+334B	メガ	# SQUARE MEGA
+334C	メガトン	# SQUARE MEGATON
+334D	メートル	# SQUARE MEETORU
+334E	ヤード	# SQUARE YAADO
+334F	ヤール	# SQUARE YAARU
+3350	ユアン	# SQUARE YUAN
+3351	リットル	# SQUARE RITTORU
+3352	リラ	# SQUARE RIRA
+3353	ルピー	# SQUARE RUPII
+3354	ルーブル	# SQUARE RUUBURU
+3355	レム	# SQUARE REMU
+3356	レントゲン	# SQUARE RENTOGEN
+3357	ワット	# SQUARE WATTO
+3358	0点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ZERO
+3359	1点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ONE
+335A	2点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWO
+335B	3点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR THREE
+335C	4点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FOUR
+335D	5点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FIVE
+335E	6点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SIX
+335F	7点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SEVEN
+3360	8点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR EIGHT
+3361	9点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR NINE
+3362	10点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TEN
+3363	11点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ELEVEN
+3364	12点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWELVE
+3365	13点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR THIRTEEN
+3366	14点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FOURTEEN
+3367	15点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FIFTEEN
+3368	16点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SIXTEEN
+3369	17点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SEVENTEEN
+336A	18点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR EIGHTEEN
+336B	19点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR NINETEEN
+336C	20点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY
+336D	21点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-ONE
+336E	22点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-TWO
+336F	23点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-THREE
+3370	24点	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-FOUR
+3371	hPa	# SQUARE HPA
+3372	da	# SQUARE DA
+3373	AU	# SQUARE AU
+3374	bar	# SQUARE BAR
+3375	oV	# SQUARE OV
+3376	pc	# SQUARE PC
+3377	dm	# SQUARE DM
+3378	dm^2	# SQUARE DM SQUARED
+3379	dm^3	# SQUARE DM CUBED
+337A	IU	# SQUARE IU
+337B	平成	# SQUARE ERA NAME HEISEI
+337C	昭和	# SQUARE ERA NAME SYOUWA
+337D	大正	# SQUARE ERA NAME TAISYOU
+337E	明治	# SQUARE ERA NAME MEIZI
+337F	株式会社	# SQUARE CORPORATION
+3380	pA	# SQUARE PA AMPS
+3381	nA	# SQUARE NA
+3382	μA	# SQUARE MU A
+3383	mA	# SQUARE MA
+3384	kA	# SQUARE KA
+3385	KB	# SQUARE KB
+3386	MB	# SQUARE MB
+3387	GB	# SQUARE GB
+3388	cal	# SQUARE CAL
+3389	kcal	# SQUARE KCAL
+338A	pF	# SQUARE PF
+338B	nF	# SQUARE NF
+338C	μF	# SQUARE MU F
+338D	μg	# SQUARE MU G
+338E	mg	# SQUARE MG
+338F	kg	# SQUARE KG
+3390	Hz	# SQUARE HZ
+3391	kHz	# SQUARE KHZ
+3392	MHz	# SQUARE MHZ
+3393	GHz	# SQUARE GHZ
+3394	THz	# SQUARE THZ
+3395	μl	# SQUARE MU L
+3396	ml	# SQUARE ML
+3397	dl	# SQUARE DL
+3398	kl	# SQUARE KL
+3399	fm	# SQUARE FM
+339A	nm	# SQUARE NM
+339B	μm	# SQUARE MU M
+339C	mm	# SQUARE MM
+339D	cm	# SQUARE CM
+339E	km	# SQUARE KM
+339F	mm^2	# SQUARE MM SQUARED
+33A0	cm^2	# SQUARE CM SQUARED
+33A1	m^2	# SQUARE M SQUARED
+33A2	km^2	# SQUARE KM SQUARED
+33A3	mm^3	# SQUARE MM CUBED
+33A4	cm^3	# SQUARE CM CUBED
+33A5	m^3	# SQUARE M CUBED
+33A6	km^3	# SQUARE KM CUBED
+33A7	m/s	# SQUARE M OVER S
+33A8	m/s^2	# SQUARE M OVER S SQUARED
+33A9	Pa	# SQUARE PA
+33AA	kPa	# SQUARE KPA
+33AB	MPa	# SQUARE MPA
+33AC	GPa	# SQUARE GPA
+33AD	rad	# SQUARE RAD
+33AE	rad/s	# SQUARE RAD OVER S
+33AF	rad/s^2	# SQUARE RAD OVER S SQUARED
+33B0	ps	# SQUARE PS
+33B1	ns	# SQUARE NS
+33B2	μs	# SQUARE MU S
+33B3	ms	# SQUARE MS
+33B4	pV	# SQUARE PV
+33B5	nV	# SQUARE NV
+33B6	μV	# SQUARE MU V
+33B7	mV	# SQUARE MV
+33B8	kV	# SQUARE KV
+33B9	MV	# SQUARE MV MEGA
+33BA	pW	# SQUARE PW
+33BB	nW	# SQUARE NW
+33BC	μW	# SQUARE MU W
+33BD	mW	# SQUARE MW
+33BE	kW	# SQUARE KW
+33BF	MW	# SQUARE MW MEGA
+33C0	kΩ	# SQUARE K OHM
+33C1	MΩ	# SQUARE M OHM
+33C2	a.m.	# SQUARE AM
+33C3	Bq	# SQUARE BQ
+33C4	cc	# SQUARE CC
+33C5	cd	# SQUARE CD
+33C6	C/kg	# SQUARE C OVER KG
+33C7	Co.	# SQUARE CO
+33C8	dB	# SQUARE DB
+33C9	Gy	# SQUARE GY
+33CA	ha	# SQUARE HA
+33CB	HP	# SQUARE HP
+33CC	in	# SQUARE IN
+33CD	KK	# SQUARE KK
+33CE	KM	# SQUARE KM CAPITAL
+33CF	kt	# SQUARE KT
+33D0	lm	# SQUARE LM
+33D1	ln	# SQUARE LN
+33D2	log	# SQUARE LOG
+33D3	lx	# SQUARE LX
+33D4	mb	# SQUARE MB SMALL
+33D5	mil	# SQUARE MIL
+33D6	mol	# SQUARE MOL
+33D7	PH	# SQUARE PH
+33D8	p.m.	# SQUARE PM
+33D9	PPM	# SQUARE PPM
+33DA	PR	# SQUARE PR
+33DB	sr	# SQUARE SR
+33DC	Sv	# SQUARE SV
+33DD	Wb	# SQUARE WB
+33DE	V/m	# SQUARE V OVER M
+33DF	A/m	# SQUARE A OVER M
+33FF	gal	# SQUARE GAL
+33E0	1日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY ONE
+33E1	2日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWO
+33E2	3日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THREE
+33E3	4日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FOUR
+33E4	5日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FIVE
+33E5	6日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SIX
+33E6	7日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SEVEN
+33E7	8日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY EIGHT
+33E8	9日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY NINE
+33E9	10日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TEN
+33EA	11日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY ELEVEN
+33EB	12日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWELVE
+33EC	13日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTEEN
+33ED	14日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FOURTEEN
+33EE	15日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FIFTEEN
+33EF	16日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SIXTEEN
+33F0	17日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SEVENTEEN
+33F1	18日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY EIGHTEEN
+33F2	19日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY NINETEEN
+33F3	20日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY
+33F4	21日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-ONE
+33F5	22日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-TWO
+33F6	23日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-THREE
+33F7	24日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-FOUR
+33F8	25日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-FIVE
+33F9	26日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-SIX
+33FA	27日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-SEVEN
+33FB	28日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-EIGHT
+33FC	29日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-NINE
+33FD	30日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY
+33FE	31日	# IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY-ONE
+F900	豈	# CJK COMPATIBILITY IDEOGRAPH-F900
+F901	更	# CJK COMPATIBILITY IDEOGRAPH-F901
+F902	車	# CJK COMPATIBILITY IDEOGRAPH-F902
+F903	賈	# CJK COMPATIBILITY IDEOGRAPH-F903
+F904	滑	# CJK COMPATIBILITY IDEOGRAPH-F904
+F905	串	# CJK COMPATIBILITY IDEOGRAPH-F905
+F906	句	# CJK COMPATIBILITY IDEOGRAPH-F906
+F907	龜	# CJK COMPATIBILITY IDEOGRAPH-F907
+F908	龜	# CJK COMPATIBILITY IDEOGRAPH-F908
+F909	契	# CJK COMPATIBILITY IDEOGRAPH-F909
+F90A	金	# CJK COMPATIBILITY IDEOGRAPH-F90A
+F90B	喇	# CJK COMPATIBILITY IDEOGRAPH-F90B
+F90C	奈	# CJK COMPATIBILITY IDEOGRAPH-F90C
+F90D	懶	# CJK COMPATIBILITY IDEOGRAPH-F90D
+F90E	癩	# CJK COMPATIBILITY IDEOGRAPH-F90E
+F90F	羅	# CJK COMPATIBILITY IDEOGRAPH-F90F
+F910	蘿	# CJK COMPATIBILITY IDEOGRAPH-F910
+F911	螺	# CJK COMPATIBILITY IDEOGRAPH-F911
+F912	裸	# CJK COMPATIBILITY IDEOGRAPH-F912
+F913	邏	# CJK COMPATIBILITY IDEOGRAPH-F913
+F914	樂	# CJK COMPATIBILITY IDEOGRAPH-F914
+F915	洛	# CJK COMPATIBILITY IDEOGRAPH-F915
+F916	烙	# CJK COMPATIBILITY IDEOGRAPH-F916
+F917	珞	# CJK COMPATIBILITY IDEOGRAPH-F917
+F918	落	# CJK COMPATIBILITY IDEOGRAPH-F918
+F919	酪	# CJK COMPATIBILITY IDEOGRAPH-F919
+F91A	駱	# CJK COMPATIBILITY IDEOGRAPH-F91A
+F91B	亂	# CJK COMPATIBILITY IDEOGRAPH-F91B
+F91C	卵	# CJK COMPATIBILITY IDEOGRAPH-F91C
+F91D	欄	# CJK COMPATIBILITY IDEOGRAPH-F91D
+F91E	爛	# CJK COMPATIBILITY IDEOGRAPH-F91E
+F91F	蘭	# CJK COMPATIBILITY IDEOGRAPH-F91F
+F920	鸞	# CJK COMPATIBILITY IDEOGRAPH-F920
+F921	嵐	# CJK COMPATIBILITY IDEOGRAPH-F921
+F922	濫	# CJK COMPATIBILITY IDEOGRAPH-F922
+F923	藍	# CJK COMPATIBILITY IDEOGRAPH-F923
+F924	襤	# CJK COMPATIBILITY IDEOGRAPH-F924
+F925	拉	# CJK COMPATIBILITY IDEOGRAPH-F925
+F926	臘	# CJK COMPATIBILITY IDEOGRAPH-F926
+F927	蠟	# CJK COMPATIBILITY IDEOGRAPH-F927
+F928	廊	# CJK COMPATIBILITY IDEOGRAPH-F928
+F929	朗	# CJK COMPATIBILITY IDEOGRAPH-F929
+F92A	浪	# CJK COMPATIBILITY IDEOGRAPH-F92A
+F92B	狼	# CJK COMPATIBILITY IDEOGRAPH-F92B
+F92C	郎	# CJK COMPATIBILITY IDEOGRAPH-F92C
+F92D	來	# CJK COMPATIBILITY IDEOGRAPH-F92D
+F92E	冷	# CJK COMPATIBILITY IDEOGRAPH-F92E
+F92F	勞	# CJK COMPATIBILITY IDEOGRAPH-F92F
+F930	擄	# CJK COMPATIBILITY IDEOGRAPH-F930
+F931	櫓	# CJK COMPATIBILITY IDEOGRAPH-F931
+F932	爐	# CJK COMPATIBILITY IDEOGRAPH-F932
+F933	盧	# CJK COMPATIBILITY IDEOGRAPH-F933
+F934	老	# CJK COMPATIBILITY IDEOGRAPH-F934
+F935	蘆	# CJK COMPATIBILITY IDEOGRAPH-F935
+F936	虜	# CJK COMPATIBILITY IDEOGRAPH-F936
+F937	路	# CJK COMPATIBILITY IDEOGRAPH-F937
+F938	露	# CJK COMPATIBILITY IDEOGRAPH-F938
+F939	魯	# CJK COMPATIBILITY IDEOGRAPH-F939
+F93A	鷺	# CJK COMPATIBILITY IDEOGRAPH-F93A
+F93B	碌	# CJK COMPATIBILITY IDEOGRAPH-F93B
+F93C	祿	# CJK COMPATIBILITY IDEOGRAPH-F93C
+F93D	綠	# CJK COMPATIBILITY IDEOGRAPH-F93D
+F93E	菉	# CJK COMPATIBILITY IDEOGRAPH-F93E
+F93F	錄	# CJK COMPATIBILITY IDEOGRAPH-F93F
+F940	鹿	# CJK COMPATIBILITY IDEOGRAPH-F940
+F941	論	# CJK COMPATIBILITY IDEOGRAPH-F941
+F942	壟	# CJK COMPATIBILITY IDEOGRAPH-F942
+F943	弄	# CJK COMPATIBILITY IDEOGRAPH-F943
+F944	籠	# CJK COMPATIBILITY IDEOGRAPH-F944
+F945	聾	# CJK COMPATIBILITY IDEOGRAPH-F945
+F946	牢	# CJK COMPATIBILITY IDEOGRAPH-F946
+F947	磊	# CJK COMPATIBILITY IDEOGRAPH-F947
+F948	賂	# CJK COMPATIBILITY IDEOGRAPH-F948
+F949	雷	# CJK COMPATIBILITY IDEOGRAPH-F949
+F94A	壘	# CJK COMPATIBILITY IDEOGRAPH-F94A
+F94B	屢	# CJK COMPATIBILITY IDEOGRAPH-F94B
+F94C	樓	# CJK COMPATIBILITY IDEOGRAPH-F94C
+F94D	淚	# CJK COMPATIBILITY IDEOGRAPH-F94D
+F94E	漏	# CJK COMPATIBILITY IDEOGRAPH-F94E
+F94F	累	# CJK COMPATIBILITY IDEOGRAPH-F94F
+F950	縷	# CJK COMPATIBILITY IDEOGRAPH-F950
+F951	陋	# CJK COMPATIBILITY IDEOGRAPH-F951
+F952	勒	# CJK COMPATIBILITY IDEOGRAPH-F952
+F953	肋	# CJK COMPATIBILITY IDEOGRAPH-F953
+F954	凜	# CJK COMPATIBILITY IDEOGRAPH-F954
+F955	凌	# CJK COMPATIBILITY IDEOGRAPH-F955
+F956	稜	# CJK COMPATIBILITY IDEOGRAPH-F956
+F957	綾	# CJK COMPATIBILITY IDEOGRAPH-F957
+F958	菱	# CJK COMPATIBILITY IDEOGRAPH-F958
+F959	陵	# CJK COMPATIBILITY IDEOGRAPH-F959
+F95A	讀	# CJK COMPATIBILITY IDEOGRAPH-F95A
+F95B	拏	# CJK COMPATIBILITY IDEOGRAPH-F95B
+F95C	樂	# CJK COMPATIBILITY IDEOGRAPH-F95C
+F95D	諾	# CJK COMPATIBILITY IDEOGRAPH-F95D
+F95E	丹	# CJK COMPATIBILITY IDEOGRAPH-F95E
+F95F	寧	# CJK COMPATIBILITY IDEOGRAPH-F95F
+F960	怒	# CJK COMPATIBILITY IDEOGRAPH-F960
+F961	率	# CJK COMPATIBILITY IDEOGRAPH-F961
+F962	異	# CJK COMPATIBILITY IDEOGRAPH-F962
+F963	北	# CJK COMPATIBILITY IDEOGRAPH-F963
+F964	磻	# CJK COMPATIBILITY IDEOGRAPH-F964
+F965	便	# CJK COMPATIBILITY IDEOGRAPH-F965
+F966	復	# CJK COMPATIBILITY IDEOGRAPH-F966
+F967	不	# CJK COMPATIBILITY IDEOGRAPH-F967
+F968	泌	# CJK COMPATIBILITY IDEOGRAPH-F968
+F969	數	# CJK COMPATIBILITY IDEOGRAPH-F969
+F96A	索	# CJK COMPATIBILITY IDEOGRAPH-F96A
+F96B	參	# CJK COMPATIBILITY IDEOGRAPH-F96B
+F96C	塞	# CJK COMPATIBILITY IDEOGRAPH-F96C
+F96D	省	# CJK COMPATIBILITY IDEOGRAPH-F96D
+F96E	葉	# CJK COMPATIBILITY IDEOGRAPH-F96E
+F96F	說	# CJK COMPATIBILITY IDEOGRAPH-F96F
+F970	殺	# CJK COMPATIBILITY IDEOGRAPH-F970
+F971	辰	# CJK COMPATIBILITY IDEOGRAPH-F971
+F972	沈	# CJK COMPATIBILITY IDEOGRAPH-F972
+F973	拾	# CJK COMPATIBILITY IDEOGRAPH-F973
+F974	若	# CJK COMPATIBILITY IDEOGRAPH-F974
+F975	掠	# CJK COMPATIBILITY IDEOGRAPH-F975
+F976	略	# CJK COMPATIBILITY IDEOGRAPH-F976
+F977	亮	# CJK COMPATIBILITY IDEOGRAPH-F977
+F978	兩	# CJK COMPATIBILITY IDEOGRAPH-F978
+F979	凉	# CJK COMPATIBILITY IDEOGRAPH-F979
+F97A	梁	# CJK COMPATIBILITY IDEOGRAPH-F97A
+F97B	糧	# CJK COMPATIBILITY IDEOGRAPH-F97B
+F97C	良	# CJK COMPATIBILITY IDEOGRAPH-F97C
+F97D	諒	# CJK COMPATIBILITY IDEOGRAPH-F97D
+F97E	量	# CJK COMPATIBILITY IDEOGRAPH-F97E
+F97F	勵	# CJK COMPATIBILITY IDEOGRAPH-F97F
+F980	呂	# CJK COMPATIBILITY IDEOGRAPH-F980
+F981	女	# CJK COMPATIBILITY IDEOGRAPH-F981
+F982	廬	# CJK COMPATIBILITY IDEOGRAPH-F982
+F983	旅	# CJK COMPATIBILITY IDEOGRAPH-F983
+F984	濾	# CJK COMPATIBILITY IDEOGRAPH-F984
+F985	礪	# CJK COMPATIBILITY IDEOGRAPH-F985
+F986	閭	# CJK COMPATIBILITY IDEOGRAPH-F986
+F987	驪	# CJK COMPATIBILITY IDEOGRAPH-F987
+F988	麗	# CJK COMPATIBILITY IDEOGRAPH-F988
+F989	黎	# CJK COMPATIBILITY IDEOGRAPH-F989
+F98A	力	# CJK COMPATIBILITY IDEOGRAPH-F98A
+F98B	曆	# CJK COMPATIBILITY IDEOGRAPH-F98B
+F98C	歷	# CJK COMPATIBILITY IDEOGRAPH-F98C
+F98D	轢	# CJK COMPATIBILITY IDEOGRAPH-F98D
+F98E	年	# CJK COMPATIBILITY IDEOGRAPH-F98E
+F98F	憐	# CJK COMPATIBILITY IDEOGRAPH-F98F
+F990	戀	# CJK COMPATIBILITY IDEOGRAPH-F990
+F991	撚	# CJK COMPATIBILITY IDEOGRAPH-F991
+F992	漣	# CJK COMPATIBILITY IDEOGRAPH-F992
+F993	煉	# CJK COMPATIBILITY IDEOGRAPH-F993
+F994	璉	# CJK COMPATIBILITY IDEOGRAPH-F994
+F995	秊	# CJK COMPATIBILITY IDEOGRAPH-F995
+F996	練	# CJK COMPATIBILITY IDEOGRAPH-F996
+F997	聯	# CJK COMPATIBILITY IDEOGRAPH-F997
+F998	輦	# CJK COMPATIBILITY IDEOGRAPH-F998
+F999	蓮	# CJK COMPATIBILITY IDEOGRAPH-F999
+F99A	連	# CJK COMPATIBILITY IDEOGRAPH-F99A
+F99B	鍊	# CJK COMPATIBILITY IDEOGRAPH-F99B
+F99C	列	# CJK COMPATIBILITY IDEOGRAPH-F99C
+F99D	劣	# CJK COMPATIBILITY IDEOGRAPH-F99D
+F99E	咽	# CJK COMPATIBILITY IDEOGRAPH-F99E
+F99F	烈	# CJK COMPATIBILITY IDEOGRAPH-F99F
+F9A0	裂	# CJK COMPATIBILITY IDEOGRAPH-F9A0
+F9A1	說	# CJK COMPATIBILITY IDEOGRAPH-F9A1
+F9A2	廉	# CJK COMPATIBILITY IDEOGRAPH-F9A2
+F9A3	念	# CJK COMPATIBILITY IDEOGRAPH-F9A3
+F9A4	捻	# CJK COMPATIBILITY IDEOGRAPH-F9A4
+F9A5	殮	# CJK COMPATIBILITY IDEOGRAPH-F9A5
+F9A6	簾	# CJK COMPATIBILITY IDEOGRAPH-F9A6
+F9A7	獵	# CJK COMPATIBILITY IDEOGRAPH-F9A7
+F9A8	令	# CJK COMPATIBILITY IDEOGRAPH-F9A8
+F9A9	囹	# CJK COMPATIBILITY IDEOGRAPH-F9A9
+F9AA	寧	# CJK COMPATIBILITY IDEOGRAPH-F9AA
+F9AB	嶺	# CJK COMPATIBILITY IDEOGRAPH-F9AB
+F9AC	怜	# CJK COMPATIBILITY IDEOGRAPH-F9AC
+F9AD	玲	# CJK COMPATIBILITY IDEOGRAPH-F9AD
+F9AE	瑩	# CJK COMPATIBILITY IDEOGRAPH-F9AE
+F9AF	羚	# CJK COMPATIBILITY IDEOGRAPH-F9AF
+F9B0	聆	# CJK COMPATIBILITY IDEOGRAPH-F9B0
+F9B1	鈴	# CJK COMPATIBILITY IDEOGRAPH-F9B1
+F9B2	零	# CJK COMPATIBILITY IDEOGRAPH-F9B2
+F9B3	靈	# CJK COMPATIBILITY IDEOGRAPH-F9B3
+F9B4	領	# CJK COMPATIBILITY IDEOGRAPH-F9B4
+F9B5	例	# CJK COMPATIBILITY IDEOGRAPH-F9B5
+F9B6	禮	# CJK COMPATIBILITY IDEOGRAPH-F9B6
+F9B7	醴	# CJK COMPATIBILITY IDEOGRAPH-F9B7
+F9B8	隸	# CJK COMPATIBILITY IDEOGRAPH-F9B8
+F9B9	惡	# CJK COMPATIBILITY IDEOGRAPH-F9B9
+F9BA	了	# CJK COMPATIBILITY IDEOGRAPH-F9BA
+F9BB	僚	# CJK COMPATIBILITY IDEOGRAPH-F9BB
+F9BC	寮	# CJK COMPATIBILITY IDEOGRAPH-F9BC
+F9BD	尿	# CJK COMPATIBILITY IDEOGRAPH-F9BD
+F9BE	料	# CJK COMPATIBILITY IDEOGRAPH-F9BE
+F9BF	樂	# CJK COMPATIBILITY IDEOGRAPH-F9BF
+F9C0	燎	# CJK COMPATIBILITY IDEOGRAPH-F9C0
+F9C1	療	# CJK COMPATIBILITY IDEOGRAPH-F9C1
+F9C2	蓼	# CJK COMPATIBILITY IDEOGRAPH-F9C2
+F9C3	遼	# CJK COMPATIBILITY IDEOGRAPH-F9C3
+F9C4	龍	# CJK COMPATIBILITY IDEOGRAPH-F9C4
+F9C5	暈	# CJK COMPATIBILITY IDEOGRAPH-F9C5
+F9C6	阮	# CJK COMPATIBILITY IDEOGRAPH-F9C6
+F9C7	劉	# CJK COMPATIBILITY IDEOGRAPH-F9C7
+F9C8	杻	# CJK COMPATIBILITY IDEOGRAPH-F9C8
+F9C9	柳	# CJK COMPATIBILITY IDEOGRAPH-F9C9
+F9CA	流	# CJK COMPATIBILITY IDEOGRAPH-F9CA
+F9CB	溜	# CJK COMPATIBILITY IDEOGRAPH-F9CB
+F9CC	琉	# CJK COMPATIBILITY IDEOGRAPH-F9CC
+F9CD	留	# CJK COMPATIBILITY IDEOGRAPH-F9CD
+F9CE	硫	# CJK COMPATIBILITY IDEOGRAPH-F9CE
+F9CF	紐	# CJK COMPATIBILITY IDEOGRAPH-F9CF
+F9D0	類	# CJK COMPATIBILITY IDEOGRAPH-F9D0
+F9D1	六	# CJK COMPATIBILITY IDEOGRAPH-F9D1
+F9D2	戮	# CJK COMPATIBILITY IDEOGRAPH-F9D2
+F9D3	陸	# CJK COMPATIBILITY IDEOGRAPH-F9D3
+F9D4	倫	# CJK COMPATIBILITY IDEOGRAPH-F9D4
+F9D5	崙	# CJK COMPATIBILITY IDEOGRAPH-F9D5
+F9D6	淪	# CJK COMPATIBILITY IDEOGRAPH-F9D6
+F9D7	輪	# CJK COMPATIBILITY IDEOGRAPH-F9D7
+F9D8	律	# CJK COMPATIBILITY IDEOGRAPH-F9D8
+F9D9	慄	# CJK COMPATIBILITY IDEOGRAPH-F9D9
+F9DA	栗	# CJK COMPATIBILITY IDEOGRAPH-F9DA
+F9DB	率	# CJK COMPATIBILITY IDEOGRAPH-F9DB
+F9DC	隆	# CJK COMPATIBILITY IDEOGRAPH-F9DC
+F9DD	利	# CJK COMPATIBILITY IDEOGRAPH-F9DD
+F9DE	吏	# CJK COMPATIBILITY IDEOGRAPH-F9DE
+F9DF	履	# CJK COMPATIBILITY IDEOGRAPH-F9DF
+F9E0	易	# CJK COMPATIBILITY IDEOGRAPH-F9E0
+F9E1	李	# CJK COMPATIBILITY IDEOGRAPH-F9E1
+F9E2	梨	# CJK COMPATIBILITY IDEOGRAPH-F9E2
+F9E3	泥	# CJK COMPATIBILITY IDEOGRAPH-F9E3
+F9E4	理	# CJK COMPATIBILITY IDEOGRAPH-F9E4
+F9E5	痢	# CJK COMPATIBILITY IDEOGRAPH-F9E5
+F9E6	罹	# CJK COMPATIBILITY IDEOGRAPH-F9E6
+F9E7	裏	# CJK COMPATIBILITY IDEOGRAPH-F9E7
+F9E8	裡	# CJK COMPATIBILITY IDEOGRAPH-F9E8
+F9E9	里	# CJK COMPATIBILITY IDEOGRAPH-F9E9
+F9EA	離	# CJK COMPATIBILITY IDEOGRAPH-F9EA
+F9EB	匿	# CJK COMPATIBILITY IDEOGRAPH-F9EB
+F9EC	溺	# CJK COMPATIBILITY IDEOGRAPH-F9EC
+F9ED	吝	# CJK COMPATIBILITY IDEOGRAPH-F9ED
+F9EE	燐	# CJK COMPATIBILITY IDEOGRAPH-F9EE
+F9EF	璘	# CJK COMPATIBILITY IDEOGRAPH-F9EF
+F9F0	藺	# CJK COMPATIBILITY IDEOGRAPH-F9F0
+F9F1	隣	# CJK COMPATIBILITY IDEOGRAPH-F9F1
+F9F2	鱗	# CJK COMPATIBILITY IDEOGRAPH-F9F2
+F9F3	麟	# CJK COMPATIBILITY IDEOGRAPH-F9F3
+F9F4	林	# CJK COMPATIBILITY IDEOGRAPH-F9F4
+F9F5	淋	# CJK COMPATIBILITY IDEOGRAPH-F9F5
+F9F6	臨	# CJK COMPATIBILITY IDEOGRAPH-F9F6
+F9F7	立	# CJK COMPATIBILITY IDEOGRAPH-F9F7
+F9F8	笠	# CJK COMPATIBILITY IDEOGRAPH-F9F8
+F9F9	粒	# CJK COMPATIBILITY IDEOGRAPH-F9F9
+F9FA	狀	# CJK COMPATIBILITY IDEOGRAPH-F9FA
+F9FB	炙	# CJK COMPATIBILITY IDEOGRAPH-F9FB
+F9FC	識	# CJK COMPATIBILITY IDEOGRAPH-F9FC
+F9FD	什	# CJK COMPATIBILITY IDEOGRAPH-F9FD
+F9FE	茶	# CJK COMPATIBILITY IDEOGRAPH-F9FE
+F9FF	刺	# CJK COMPATIBILITY IDEOGRAPH-F9FF
+FA00	切	# CJK COMPATIBILITY IDEOGRAPH-FA00
+FA01	度	# CJK COMPATIBILITY IDEOGRAPH-FA01
+FA02	拓	# CJK COMPATIBILITY IDEOGRAPH-FA02
+FA03	糖	# CJK COMPATIBILITY IDEOGRAPH-FA03
+FA04	宅	# CJK COMPATIBILITY IDEOGRAPH-FA04
+FA05	洞	# CJK COMPATIBILITY IDEOGRAPH-FA05
+FA06	暴	# CJK COMPATIBILITY IDEOGRAPH-FA06
+FA07	輻	# CJK COMPATIBILITY IDEOGRAPH-FA07
+FA08	行	# CJK COMPATIBILITY IDEOGRAPH-FA08
+FA09	降	# CJK COMPATIBILITY IDEOGRAPH-FA09
+FA0A	見	# CJK COMPATIBILITY IDEOGRAPH-FA0A
+FA0B	廓	# CJK COMPATIBILITY IDEOGRAPH-FA0B
+FA0C	兀	# CJK COMPATIBILITY IDEOGRAPH-FA0C
+FA0D	嗀	# CJK COMPATIBILITY IDEOGRAPH-FA0D
+FA10	塚	# CJK COMPATIBILITY IDEOGRAPH-FA10
+FA12	晴	# CJK COMPATIBILITY IDEOGRAPH-FA12
+FA15	凞	# CJK COMPATIBILITY IDEOGRAPH-FA15
+FA16	猪	# CJK COMPATIBILITY IDEOGRAPH-FA16
+FA17	益	# CJK COMPATIBILITY IDEOGRAPH-FA17
+FA18	礼	# CJK COMPATIBILITY IDEOGRAPH-FA18
+FA19	神	# CJK COMPATIBILITY IDEOGRAPH-FA19
+FA1A	祥	# CJK COMPATIBILITY IDEOGRAPH-FA1A
+FA1B	福	# CJK COMPATIBILITY IDEOGRAPH-FA1B
+FA1C	靖	# CJK COMPATIBILITY IDEOGRAPH-FA1C
+FA1D	精	# CJK COMPATIBILITY IDEOGRAPH-FA1D
+FA1E	羽	# CJK COMPATIBILITY IDEOGRAPH-FA1E
+FA20	蘒	# CJK COMPATIBILITY IDEOGRAPH-FA20
+FA22	諸	# CJK COMPATIBILITY IDEOGRAPH-FA22
+FA25	逸	# CJK COMPATIBILITY IDEOGRAPH-FA25
+FA26	都	# CJK COMPATIBILITY IDEOGRAPH-FA26
+FA2A	飯	# CJK COMPATIBILITY IDEOGRAPH-FA2A
+FA2B	飼	# CJK COMPATIBILITY IDEOGRAPH-FA2B
+FA2C	館	# CJK COMPATIBILITY IDEOGRAPH-FA2C
+FA2D	鶴	# CJK COMPATIBILITY IDEOGRAPH-FA2D
+FA30	侮	# CJK COMPATIBILITY IDEOGRAPH-FA30
+FA31	僧	# CJK COMPATIBILITY IDEOGRAPH-FA31
+FA32	免	# CJK COMPATIBILITY IDEOGRAPH-FA32
+FA33	勉	# CJK COMPATIBILITY IDEOGRAPH-FA33
+FA34	勤	# CJK COMPATIBILITY IDEOGRAPH-FA34
+FA35	卑	# CJK COMPATIBILITY IDEOGRAPH-FA35
+FA36	喝	# CJK COMPATIBILITY IDEOGRAPH-FA36
+FA37	嘆	# CJK COMPATIBILITY IDEOGRAPH-FA37
+FA38	器	# CJK COMPATIBILITY IDEOGRAPH-FA38
+FA39	塀	# CJK COMPATIBILITY IDEOGRAPH-FA39
+FA3A	墨	# CJK COMPATIBILITY IDEOGRAPH-FA3A
+FA3B	層	# CJK COMPATIBILITY IDEOGRAPH-FA3B
+FA3C	屮	# CJK COMPATIBILITY IDEOGRAPH-FA3C
+FA3D	悔	# CJK COMPATIBILITY IDEOGRAPH-FA3D
+FA3E	慨	# CJK COMPATIBILITY IDEOGRAPH-FA3E
+FA3F	憎	# CJK COMPATIBILITY IDEOGRAPH-FA3F
+FA40	懲	# CJK COMPATIBILITY IDEOGRAPH-FA40
+FA41	敏	# CJK COMPATIBILITY IDEOGRAPH-FA41
+FA42	既	# CJK COMPATIBILITY IDEOGRAPH-FA42
+FA43	暑	# CJK COMPATIBILITY IDEOGRAPH-FA43
+FA44	梅	# CJK COMPATIBILITY IDEOGRAPH-FA44
+FA45	海	# CJK COMPATIBILITY IDEOGRAPH-FA45
+FA46	渚	# CJK COMPATIBILITY IDEOGRAPH-FA46
+FA47	漢	# CJK COMPATIBILITY IDEOGRAPH-FA47
+FA48	煮	# CJK COMPATIBILITY IDEOGRAPH-FA48
+FA49	爫	# CJK COMPATIBILITY IDEOGRAPH-FA49
+FA4A	琢	# CJK COMPATIBILITY IDEOGRAPH-FA4A
+FA4B	碑	# CJK COMPATIBILITY IDEOGRAPH-FA4B
+FA4C	社	# CJK COMPATIBILITY IDEOGRAPH-FA4C
+FA4D	祉	# CJK COMPATIBILITY IDEOGRAPH-FA4D
+FA4E	祈	# CJK COMPATIBILITY IDEOGRAPH-FA4E
+FA4F	祐	# CJK COMPATIBILITY IDEOGRAPH-FA4F
+FA50	祖	# CJK COMPATIBILITY IDEOGRAPH-FA50
+FA51	祝	# CJK COMPATIBILITY IDEOGRAPH-FA51
+FA52	禍	# CJK COMPATIBILITY IDEOGRAPH-FA52
+FA53	禎	# CJK COMPATIBILITY IDEOGRAPH-FA53
+FA54	穀	# CJK COMPATIBILITY IDEOGRAPH-FA54
+FA55	突	# CJK COMPATIBILITY IDEOGRAPH-FA55
+FA56	節	# CJK COMPATIBILITY IDEOGRAPH-FA56
+FA57	練	# CJK COMPATIBILITY IDEOGRAPH-FA57
+FA58	縉	# CJK COMPATIBILITY IDEOGRAPH-FA58
+FA59	繁	# CJK COMPATIBILITY IDEOGRAPH-FA59
+FA5A	署	# CJK COMPATIBILITY IDEOGRAPH-FA5A
+FA5B	者	# CJK COMPATIBILITY IDEOGRAPH-FA5B
+FA5C	臭	# CJK COMPATIBILITY IDEOGRAPH-FA5C
+FA5D	艹	# CJK COMPATIBILITY IDEOGRAPH-FA5D
+FA5E	艹	# CJK COMPATIBILITY IDEOGRAPH-FA5E
+FA5F	著	# CJK COMPATIBILITY IDEOGRAPH-FA5F
+FA60	褐	# CJK COMPATIBILITY IDEOGRAPH-FA60
+FA61	視	# CJK COMPATIBILITY IDEOGRAPH-FA61
+FA62	謁	# CJK COMPATIBILITY IDEOGRAPH-FA62
+FA63	謹	# CJK COMPATIBILITY IDEOGRAPH-FA63
+FA64	賓	# CJK COMPATIBILITY IDEOGRAPH-FA64
+FA65	贈	# CJK COMPATIBILITY IDEOGRAPH-FA65
+FA66	辶	# CJK COMPATIBILITY IDEOGRAPH-FA66
+FA67	逸	# CJK COMPATIBILITY IDEOGRAPH-FA67
+FA68	難	# CJK COMPATIBILITY IDEOGRAPH-FA68
+FA69	響	# CJK COMPATIBILITY IDEOGRAPH-FA69
+FA6A	頻	# CJK COMPATIBILITY IDEOGRAPH-FA6A
+FB00	ff	# LATIN SMALL LIGATURE FF
+FB01	fi	# LATIN SMALL LIGATURE FI
+FB02	fl	# LATIN SMALL LIGATURE FL
+FB03	ffi	# LATIN SMALL LIGATURE FFI
+FB04	ffl	# LATIN SMALL LIGATURE FFL
+FB05	ſt	# LATIN SMALL LIGATURE LONG S T
+FB06	st	# LATIN SMALL LIGATURE ST
+FB13	մն	# ARMENIAN SMALL LIGATURE MEN NOW
+FB14	մե	# ARMENIAN SMALL LIGATURE MEN ECH
+FB15	մի	# ARMENIAN SMALL LIGATURE MEN INI
+FB16	վն	# ARMENIAN SMALL LIGATURE VEW NOW
+FB17	մխ	# ARMENIAN SMALL LIGATURE MEN XEH
+FB20	ע	# HEBREW LETTER ALTERNATIVE AYIN
+FB21	א	# HEBREW LETTER WIDE ALEF
+FB22	ד	# HEBREW LETTER WIDE DALET
+FB23	ה	# HEBREW LETTER WIDE HE
+FB24	כ	# HEBREW LETTER WIDE KAF
+FB25	ל	# HEBREW LETTER WIDE LAMED
+FB26	ם	# HEBREW LETTER WIDE FINAL MEM
+FB27	ר	# HEBREW LETTER WIDE RESH
+FB28	ת	# HEBREW LETTER WIDE TAV
+FB29	+	# HEBREW LETTER ALTERNATIVE PLUS SIGN
+FB4F	אל	# HEBREW LIGATURE ALEF LAMED
+FE49	‾	# DASHED OVERLINE
+FE4A	‾	# CENTRELINE OVERLINE
+FE4B	‾	# WAVY OVERLINE
+FE4C	‾	# DOUBLE WAVY OVERLINE
+FE4D	_	# DASHED LOW LINE
+FE4E	_	# CENTRELINE LOW LINE
+FE4F	_	# WAVY LOW LINE
+FE50	,	# SMALL COMMA
+FE51	、	# SMALL IDEOGRAPHIC COMMA
+FE52	.	# SMALL FULL STOP
+FE54	;	# SMALL SEMICOLON
+FE55	:	# SMALL COLON
+FE56	?	# SMALL QUESTION MARK
+FE57	!	# SMALL EXCLAMATION MARK
+FE58	—	# SMALL EM DASH
+FE59	(	# SMALL LEFT PARENTHESIS
+FE5A	)	# SMALL RIGHT PARENTHESIS
+FE5B	{	# SMALL LEFT CURLY BRACKET
+FE5C	}	# SMALL RIGHT CURLY BRACKET
+FE5D	〔	# SMALL LEFT TORTOISE SHELL BRACKET
+FE5E	〕	# SMALL RIGHT TORTOISE SHELL BRACKET
+FE5F	#	# SMALL NUMBER SIGN
+FE60	&	# SMALL AMPERSAND
+FE61	*	# SMALL ASTERISK
+FE62	+	# SMALL PLUS SIGN
+FE63	-	# SMALL HYPHEN-MINUS
+FE64	<	# SMALL LESS-THAN SIGN
+FE65	>	# SMALL GREATER-THAN SIGN
+FE66	=	# SMALL EQUALS SIGN
+FE68	\	# SMALL REVERSE SOLIDUS
+FE69	$	# SMALL DOLLAR SIGN
+FE6A	%	# SMALL PERCENT SIGN
+FE6B	@	# SMALL COMMERCIAL AT
+FF01	!	# FULLWIDTH EXCLAMATION MARK
+FF02	"	# FULLWIDTH QUOTATION MARK
+FF03	#	# FULLWIDTH NUMBER SIGN
+FF04	$	# FULLWIDTH DOLLAR SIGN
+FF05	%	# FULLWIDTH PERCENT SIGN
+FF06	&	# FULLWIDTH AMPERSAND
+FF07	'	# FULLWIDTH APOSTROPHE
+FF08	(	# FULLWIDTH LEFT PARENTHESIS
+FF09	)	# FULLWIDTH RIGHT PARENTHESIS
+FF0A	*	# FULLWIDTH ASTERISK
+FF0B	+	# FULLWIDTH PLUS SIGN
+FF0C	,	# FULLWIDTH COMMA
+FF0D	-	# FULLWIDTH HYPHEN-MINUS
+FF0E	.	# FULLWIDTH FULL STOP
+FF0F	/	# FULLWIDTH SOLIDUS
+FF10	0	# FULLWIDTH DIGIT ZERO
+FF11	1	# FULLWIDTH DIGIT ONE
+FF12	2	# FULLWIDTH DIGIT TWO
+FF13	3	# FULLWIDTH DIGIT THREE
+FF14	4	# FULLWIDTH DIGIT FOUR
+FF15	5	# FULLWIDTH DIGIT FIVE
+FF16	6	# FULLWIDTH DIGIT SIX
+FF17	7	# FULLWIDTH DIGIT SEVEN
+FF18	8	# FULLWIDTH DIGIT EIGHT
+FF19	9	# FULLWIDTH DIGIT NINE
+FF1A	:	# FULLWIDTH COLON
+FF1B	;	# FULLWIDTH SEMICOLON
+FF1C	<	# FULLWIDTH LESS-THAN SIGN
+FF1D	=	# FULLWIDTH EQUALS SIGN
+FF1E	>	# FULLWIDTH GREATER-THAN SIGN
+FF1F	?	# FULLWIDTH QUESTION MARK
+FF20	@	# FULLWIDTH COMMERCIAL AT
+FF21	A	# FULLWIDTH LATIN CAPITAL LETTER A
+FF22	B	# FULLWIDTH LATIN CAPITAL LETTER B
+FF23	C	# FULLWIDTH LATIN CAPITAL LETTER C
+FF24	D	# FULLWIDTH LATIN CAPITAL LETTER D
+FF25	E	# FULLWIDTH LATIN CAPITAL LETTER E
+FF26	F	# FULLWIDTH LATIN CAPITAL LETTER F
+FF27	G	# FULLWIDTH LATIN CAPITAL LETTER G
+FF28	H	# FULLWIDTH LATIN CAPITAL LETTER H
+FF29	I	# FULLWIDTH LATIN CAPITAL LETTER I
+FF2A	J	# FULLWIDTH LATIN CAPITAL LETTER J
+FF2B	K	# FULLWIDTH LATIN CAPITAL LETTER K
+FF2C	L	# FULLWIDTH LATIN CAPITAL LETTER L
+FF2D	M	# FULLWIDTH LATIN CAPITAL LETTER M
+FF2E	N	# FULLWIDTH LATIN CAPITAL LETTER N
+FF2F	O	# FULLWIDTH LATIN CAPITAL LETTER O
+FF30	P	# FULLWIDTH LATIN CAPITAL LETTER P
+FF31	Q	# FULLWIDTH LATIN CAPITAL LETTER Q
+FF32	R	# FULLWIDTH LATIN CAPITAL LETTER R
+FF33	S	# FULLWIDTH LATIN CAPITAL LETTER S
+FF34	T	# FULLWIDTH LATIN CAPITAL LETTER T
+FF35	U	# FULLWIDTH LATIN CAPITAL LETTER U
+FF36	V	# FULLWIDTH LATIN CAPITAL LETTER V
+FF37	W	# FULLWIDTH LATIN CAPITAL LETTER W
+FF38	X	# FULLWIDTH LATIN CAPITAL LETTER X
+FF39	Y	# FULLWIDTH LATIN CAPITAL LETTER Y
+FF3A	Z	# FULLWIDTH LATIN CAPITAL LETTER Z
+FF3B	[	# FULLWIDTH LEFT SQUARE BRACKET
+FF3C	\	# FULLWIDTH REVERSE SOLIDUS
+FF3D	]	# FULLWIDTH RIGHT SQUARE BRACKET
+FF3E	^	# FULLWIDTH CIRCUMFLEX ACCENT
+FF3F	_	# FULLWIDTH LOW LINE
+FF40	`	# FULLWIDTH GRAVE ACCENT
+FF41	a	# FULLWIDTH LATIN SMALL LETTER A
+FF42	b	# FULLWIDTH LATIN SMALL LETTER B
+FF43	c	# FULLWIDTH LATIN SMALL LETTER C
+FF44	d	# FULLWIDTH LATIN SMALL LETTER D
+FF45	e	# FULLWIDTH LATIN SMALL LETTER E
+FF46	f	# FULLWIDTH LATIN SMALL LETTER F
+FF47	g	# FULLWIDTH LATIN SMALL LETTER G
+FF48	h	# FULLWIDTH LATIN SMALL LETTER H
+FF49	i	# FULLWIDTH LATIN SMALL LETTER I
+FF4A	j	# FULLWIDTH LATIN SMALL LETTER J
+FF4B	k	# FULLWIDTH LATIN SMALL LETTER K
+FF4C	l	# FULLWIDTH LATIN SMALL LETTER L
+FF4D	m	# FULLWIDTH LATIN SMALL LETTER M
+FF4E	n	# FULLWIDTH LATIN SMALL LETTER N
+FF4F	o	# FULLWIDTH LATIN SMALL LETTER O
+FF50	p	# FULLWIDTH LATIN SMALL LETTER P
+FF51	q	# FULLWIDTH LATIN SMALL LETTER Q
+FF52	r	# FULLWIDTH LATIN SMALL LETTER R
+FF53	s	# FULLWIDTH LATIN SMALL LETTER S
+FF54	t	# FULLWIDTH LATIN SMALL LETTER T
+FF55	u	# FULLWIDTH LATIN SMALL LETTER U
+FF56	v	# FULLWIDTH LATIN SMALL LETTER V
+FF57	w	# FULLWIDTH LATIN SMALL LETTER W
+FF58	x	# FULLWIDTH LATIN SMALL LETTER X
+FF59	y	# FULLWIDTH LATIN SMALL LETTER Y
+FF5A	z	# FULLWIDTH LATIN SMALL LETTER Z
+FF5B	{	# FULLWIDTH LEFT CURLY BRACKET
+FF5C	|	# FULLWIDTH VERTICAL LINE
+FF5D	}	# FULLWIDTH RIGHT CURLY BRACKET
+FF5E	~	# FULLWIDTH TILDE
+FF5F	⦅	# FULLWIDTH LEFT WHITE PARENTHESIS
+FF60	⦆	# FULLWIDTH RIGHT WHITE PARENTHESIS
+FF61	。	# HALFWIDTH IDEOGRAPHIC FULL STOP
+FF62	「	# HALFWIDTH LEFT CORNER BRACKET
+FF63	」	# HALFWIDTH RIGHT CORNER BRACKET
+FF64	、	# HALFWIDTH IDEOGRAPHIC COMMA
+FF65	・	# HALFWIDTH KATAKANA MIDDLE DOT
+FF66	ヲ	# HALFWIDTH KATAKANA LETTER WO
+FF67	ァ	# HALFWIDTH KATAKANA LETTER SMALL A
+FF68	ィ	# HALFWIDTH KATAKANA LETTER SMALL I
+FF69	ゥ	# HALFWIDTH KATAKANA LETTER SMALL U
+FF6A	ェ	# HALFWIDTH KATAKANA LETTER SMALL E
+FF6B	ォ	# HALFWIDTH KATAKANA LETTER SMALL O
+FF6C	ャ	# HALFWIDTH KATAKANA LETTER SMALL YA
+FF6D	ュ	# HALFWIDTH KATAKANA LETTER SMALL YU
+FF6E	ョ	# HALFWIDTH KATAKANA LETTER SMALL YO
+FF6F	ッ	# HALFWIDTH KATAKANA LETTER SMALL TU
+FF70	ー	# HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK
+FF71	ア	# HALFWIDTH KATAKANA LETTER A
+FF72	イ	# HALFWIDTH KATAKANA LETTER I
+FF73	ウ	# HALFWIDTH KATAKANA LETTER U
+FF74	エ	# HALFWIDTH KATAKANA LETTER E
+FF75	オ	# HALFWIDTH KATAKANA LETTER O
+FF76	カ	# HALFWIDTH KATAKANA LETTER KA
+FF77	キ	# HALFWIDTH KATAKANA LETTER KI
+FF78	ク	# HALFWIDTH KATAKANA LETTER KU
+FF79	ケ	# HALFWIDTH KATAKANA LETTER KE
+FF7A	コ	# HALFWIDTH KATAKANA LETTER KO
+FF7B	サ	# HALFWIDTH KATAKANA LETTER SA
+FF7C	シ	# HALFWIDTH KATAKANA LETTER SI
+FF7D	ス	# HALFWIDTH KATAKANA LETTER SU
+FF7E	セ	# HALFWIDTH KATAKANA LETTER SE
+FF7F	ソ	# HALFWIDTH KATAKANA LETTER SO
+FF80	タ	# HALFWIDTH KATAKANA LETTER TA
+FF81	チ	# HALFWIDTH KATAKANA LETTER TI
+FF82	ツ	# HALFWIDTH KATAKANA LETTER TU
+FF83	テ	# HALFWIDTH KATAKANA LETTER TE
+FF84	ト	# HALFWIDTH KATAKANA LETTER TO
+FF85	ナ	# HALFWIDTH KATAKANA LETTER NA
+FF86	ニ	# HALFWIDTH KATAKANA LETTER NI
+FF87	ヌ	# HALFWIDTH KATAKANA LETTER NU
+FF88	ネ	# HALFWIDTH KATAKANA LETTER NE
+FF89	ノ	# HALFWIDTH KATAKANA LETTER NO
+FF8A	ハ	# HALFWIDTH KATAKANA LETTER HA
+FF8B	ヒ	# HALFWIDTH KATAKANA LETTER HI
+FF8C	フ	# HALFWIDTH KATAKANA LETTER HU
+FF8D	ヘ	# HALFWIDTH KATAKANA LETTER HE
+FF8E	ホ	# HALFWIDTH KATAKANA LETTER HO
+FF8F	マ	# HALFWIDTH KATAKANA LETTER MA
+FF90	ミ	# HALFWIDTH KATAKANA LETTER MI
+FF91	ム	# HALFWIDTH KATAKANA LETTER MU
+FF92	メ	# HALFWIDTH KATAKANA LETTER ME
+FF93	モ	# HALFWIDTH KATAKANA LETTER MO
+FF94	ヤ	# HALFWIDTH KATAKANA LETTER YA
+FF95	ユ	# HALFWIDTH KATAKANA LETTER YU
+FF96	ヨ	# HALFWIDTH KATAKANA LETTER YO
+FF97	ラ	# HALFWIDTH KATAKANA LETTER RA
+FF98	リ	# HALFWIDTH KATAKANA LETTER RI
+FF99	ル	# HALFWIDTH KATAKANA LETTER RU
+FF9A	レ	# HALFWIDTH KATAKANA LETTER RE
+FF9B	ロ	# HALFWIDTH KATAKANA LETTER RO
+FF9C	ワ	# HALFWIDTH KATAKANA LETTER WA
+FF9D	ン	# HALFWIDTH KATAKANA LETTER N
+FF9E	゙	# HALFWIDTH KATAKANA VOICED SOUND MARK
+FF9F	゚	# HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK
+FFA0	ㅤ	# HALFWIDTH HANGUL FILLER
+FFA1	ㄱ	# HALFWIDTH HANGUL LETTER KIYEOK
+FFA2	ㄲ	# HALFWIDTH HANGUL LETTER SSANGKIYEOK
+FFA3	ㄳ	# HALFWIDTH HANGUL LETTER KIYEOK-SIOS
+FFA4	ㄴ	# HALFWIDTH HANGUL LETTER NIEUN
+FFA5	ㄵ	# HALFWIDTH HANGUL LETTER NIEUN-CIEUC
+FFA6	ㄶ	# HALFWIDTH HANGUL LETTER NIEUN-HIEUH
+FFA7	ㄷ	# HALFWIDTH HANGUL LETTER TIKEUT
+FFA8	ㄸ	# HALFWIDTH HANGUL LETTER SSANGTIKEUT
+FFA9	ㄹ	# HALFWIDTH HANGUL LETTER RIEUL
+FFAA	ㄺ	# HALFWIDTH HANGUL LETTER RIEUL-KIYEOK
+FFAB	ㄻ	# HALFWIDTH HANGUL LETTER RIEUL-MIEUM
+FFAC	ㄼ	# HALFWIDTH HANGUL LETTER RIEUL-PIEUP
+FFAD	ㄽ	# HALFWIDTH HANGUL LETTER RIEUL-SIOS
+FFAE	ㄾ	# HALFWIDTH HANGUL LETTER RIEUL-THIEUTH
+FFAF	ㄿ	# HALFWIDTH HANGUL LETTER RIEUL-PHIEUPH
+FFB0	ㅀ	# HALFWIDTH HANGUL LETTER RIEUL-HIEUH
+FFB1	ㅁ	# HALFWIDTH HANGUL LETTER MIEUM
+FFB2	ㅂ	# HALFWIDTH HANGUL LETTER PIEUP
+FFB3	ㅃ	# HALFWIDTH HANGUL LETTER SSANGPIEUP
+FFB4	ㅄ	# HALFWIDTH HANGUL LETTER PIEUP-SIOS
+FFB5	ㅅ	# HALFWIDTH HANGUL LETTER SIOS
+FFB6	ㅆ	# HALFWIDTH HANGUL LETTER SSANGSIOS
+FFB7	ㅇ	# HALFWIDTH HANGUL LETTER IEUNG
+FFB8	ㅈ	# HALFWIDTH HANGUL LETTER CIEUC
+FFB9	ㅉ	# HALFWIDTH HANGUL LETTER SSANGCIEUC
+FFBA	ㅊ	# HALFWIDTH HANGUL LETTER CHIEUCH
+FFBB	ㅋ	# HALFWIDTH HANGUL LETTER KHIEUKH
+FFBC	ㅌ	# HALFWIDTH HANGUL LETTER THIEUTH
+FFBD	ㅍ	# HALFWIDTH HANGUL LETTER PHIEUPH
+FFBE	ㅎ	# HALFWIDTH HANGUL LETTER HIEUH
+FFC2	ㅏ	# HALFWIDTH HANGUL LETTER A
+FFC3	ㅐ	# HALFWIDTH HANGUL LETTER AE
+FFC4	ㅑ	# HALFWIDTH HANGUL LETTER YA
+FFC5	ㅒ	# HALFWIDTH HANGUL LETTER YAE
+FFC6	ㅓ	# HALFWIDTH HANGUL LETTER EO
+FFC7	ㅔ	# HALFWIDTH HANGUL LETTER E
+FFCA	ㅕ	# HALFWIDTH HANGUL LETTER YEO
+FFCB	ㅖ	# HALFWIDTH HANGUL LETTER YE
+FFCC	ㅗ	# HALFWIDTH HANGUL LETTER O
+FFCD	ㅘ	# HALFWIDTH HANGUL LETTER WA
+FFCE	ㅙ	# HALFWIDTH HANGUL LETTER WAE
+FFCF	ㅚ	# HALFWIDTH HANGUL LETTER OE
+FFD2	ㅛ	# HALFWIDTH HANGUL LETTER YO
+FFD3	ㅜ	# HALFWIDTH HANGUL LETTER U
+FFD4	ㅝ	# HALFWIDTH HANGUL LETTER WEO
+FFD5	ㅞ	# HALFWIDTH HANGUL LETTER WE
+FFD6	ㅟ	# HALFWIDTH HANGUL LETTER WI
+FFD7	ㅠ	# HALFWIDTH HANGUL LETTER YU
+FFDA	ㅡ	# HALFWIDTH HANGUL LETTER EU
+FFDB	ㅢ	# HALFWIDTH HANGUL LETTER YI
+FFDC	ㅣ	# HALFWIDTH HANGUL LETTER I
+FFE0	¢	# FULLWIDTH CENT SIGN
+FFE1	£	# FULLWIDTH POUND SIGN
+FFE2	¬	# FULLWIDTH NOT SIGN
+FFE3	¯	# FULLWIDTH MACRON
+FFE4	¦	# FULLWIDTH BROKEN BAR
+FFE5	¥	# FULLWIDTH YEN SIGN
+FFE6	₩	# FULLWIDTH WON SIGN
+FFE8	│	# HALFWIDTH FORMS LIGHT VERTICAL
+FFE9	←	# HALFWIDTH LEFTWARDS ARROW
+FFEA	↑	# HALFWIDTH UPWARDS ARROW
+FFEB	→	# HALFWIDTH RIGHTWARDS ARROW
+FFEC	↓	# HALFWIDTH DOWNWARDS ARROW
+FFED	■	# HALFWIDTH BLACK SQUARE
+FFEE	○	# HALFWIDTH WHITE CIRCLE
+1D400	A	# MATHEMATICAL BOLD CAPITAL A
+1D401	B	# MATHEMATICAL BOLD CAPITAL B
+1D402	C	# MATHEMATICAL BOLD CAPITAL C
+1D403	D	# MATHEMATICAL BOLD CAPITAL D
+1D404	E	# MATHEMATICAL BOLD CAPITAL E
+1D405	F	# MATHEMATICAL BOLD CAPITAL F
+1D406	G	# MATHEMATICAL BOLD CAPITAL G
+1D407	H	# MATHEMATICAL BOLD CAPITAL H
+1D408	I	# MATHEMATICAL BOLD CAPITAL I
+1D409	J	# MATHEMATICAL BOLD CAPITAL J
+1D40A	K	# MATHEMATICAL BOLD CAPITAL K
+1D40B	L	# MATHEMATICAL BOLD CAPITAL L
+1D40C	M	# MATHEMATICAL BOLD CAPITAL M
+1D40D	N	# MATHEMATICAL BOLD CAPITAL N
+1D40E	O	# MATHEMATICAL BOLD CAPITAL O
+1D40F	P	# MATHEMATICAL BOLD CAPITAL P
+1D410	Q	# MATHEMATICAL BOLD CAPITAL Q
+1D411	R	# MATHEMATICAL BOLD CAPITAL R
+1D412	S	# MATHEMATICAL BOLD CAPITAL S
+1D413	T	# MATHEMATICAL BOLD CAPITAL T
+1D414	U	# MATHEMATICAL BOLD CAPITAL U
+1D415	V	# MATHEMATICAL BOLD CAPITAL V
+1D416	W	# MATHEMATICAL BOLD CAPITAL W
+1D417	X	# MATHEMATICAL BOLD CAPITAL X
+1D418	Y	# MATHEMATICAL BOLD CAPITAL Y
+1D419	Z	# MATHEMATICAL BOLD CAPITAL Z
+1D41A	a	# MATHEMATICAL BOLD SMALL A
+1D41B	b	# MATHEMATICAL BOLD SMALL B
+1D41C	c	# MATHEMATICAL BOLD SMALL C
+1D41D	d	# MATHEMATICAL BOLD SMALL D
+1D41E	e	# MATHEMATICAL BOLD SMALL E
+1D41F	f	# MATHEMATICAL BOLD SMALL F
+1D420	g	# MATHEMATICAL BOLD SMALL G
+1D421	h	# MATHEMATICAL BOLD SMALL H
+1D422	i	# MATHEMATICAL BOLD SMALL I
+1D423	j	# MATHEMATICAL BOLD SMALL J
+1D424	k	# MATHEMATICAL BOLD SMALL K
+1D425	l	# MATHEMATICAL BOLD SMALL L
+1D426	m	# MATHEMATICAL BOLD SMALL M
+1D427	n	# MATHEMATICAL BOLD SMALL N
+1D428	o	# MATHEMATICAL BOLD SMALL O
+1D429	p	# MATHEMATICAL BOLD SMALL P
+1D42A	q	# MATHEMATICAL BOLD SMALL Q
+1D42B	r	# MATHEMATICAL BOLD SMALL R
+1D42C	s	# MATHEMATICAL BOLD SMALL S
+1D42D	t	# MATHEMATICAL BOLD SMALL T
+1D42E	u	# MATHEMATICAL BOLD SMALL U
+1D42F	v	# MATHEMATICAL BOLD SMALL V
+1D430	w	# MATHEMATICAL BOLD SMALL W
+1D431	x	# MATHEMATICAL BOLD SMALL X
+1D432	y	# MATHEMATICAL BOLD SMALL Y
+1D433	z	# MATHEMATICAL BOLD SMALL Z
+1D434	A	# MATHEMATICAL ITALIC CAPITAL A
+1D435	B	# MATHEMATICAL ITALIC CAPITAL B
+1D436	C	# MATHEMATICAL ITALIC CAPITAL C
+1D437	D	# MATHEMATICAL ITALIC CAPITAL D
+1D438	E	# MATHEMATICAL ITALIC CAPITAL E
+1D439	F	# MATHEMATICAL ITALIC CAPITAL F
+1D43A	G	# MATHEMATICAL ITALIC CAPITAL G
+1D43B	H	# MATHEMATICAL ITALIC CAPITAL H
+1D43C	I	# MATHEMATICAL ITALIC CAPITAL I
+1D43D	J	# MATHEMATICAL ITALIC CAPITAL J
+1D43E	K	# MATHEMATICAL ITALIC CAPITAL K
+1D43F	L	# MATHEMATICAL ITALIC CAPITAL L
+1D440	M	# MATHEMATICAL ITALIC CAPITAL M
+1D441	N	# MATHEMATICAL ITALIC CAPITAL N
+1D442	O	# MATHEMATICAL ITALIC CAPITAL O
+1D443	P	# MATHEMATICAL ITALIC CAPITAL P
+1D444	Q	# MATHEMATICAL ITALIC CAPITAL Q
+1D445	R	# MATHEMATICAL ITALIC CAPITAL R
+1D446	S	# MATHEMATICAL ITALIC CAPITAL S
+1D447	T	# MATHEMATICAL ITALIC CAPITAL T
+1D448	U	# MATHEMATICAL ITALIC CAPITAL U
+1D449	V	# MATHEMATICAL ITALIC CAPITAL V
+1D44A	W	# MATHEMATICAL ITALIC CAPITAL W
+1D44B	X	# MATHEMATICAL ITALIC CAPITAL X
+1D44C	Y	# MATHEMATICAL ITALIC CAPITAL Y
+1D44D	Z	# MATHEMATICAL ITALIC CAPITAL Z
+1D44E	a	# MATHEMATICAL ITALIC SMALL A
+1D44F	b	# MATHEMATICAL ITALIC SMALL B
+1D450	c	# MATHEMATICAL ITALIC SMALL C
+1D451	d	# MATHEMATICAL ITALIC SMALL D
+1D452	e	# MATHEMATICAL ITALIC SMALL E
+1D453	f	# MATHEMATICAL ITALIC SMALL F
+1D454	g	# MATHEMATICAL ITALIC SMALL G
+1D456	i	# MATHEMATICAL ITALIC SMALL I
+1D457	j	# MATHEMATICAL ITALIC SMALL J
+1D458	k	# MATHEMATICAL ITALIC SMALL K
+1D459	l	# MATHEMATICAL ITALIC SMALL L
+1D45A	m	# MATHEMATICAL ITALIC SMALL M
+1D45B	n	# MATHEMATICAL ITALIC SMALL N
+1D45C	o	# MATHEMATICAL ITALIC SMALL O
+1D45D	p	# MATHEMATICAL ITALIC SMALL P
+1D45E	q	# MATHEMATICAL ITALIC SMALL Q
+1D45F	r	# MATHEMATICAL ITALIC SMALL R
+1D460	s	# MATHEMATICAL ITALIC SMALL S
+1D461	t	# MATHEMATICAL ITALIC SMALL T
+1D462	u	# MATHEMATICAL ITALIC SMALL U
+1D463	v	# MATHEMATICAL ITALIC SMALL V
+1D464	w	# MATHEMATICAL ITALIC SMALL W
+1D465	x	# MATHEMATICAL ITALIC SMALL X
+1D466	y	# MATHEMATICAL ITALIC SMALL Y
+1D467	z	# MATHEMATICAL ITALIC SMALL Z
+1D468	A	# MATHEMATICAL BOLD ITALIC CAPITAL A
+1D469	B	# MATHEMATICAL BOLD ITALIC CAPITAL B
+1D46A	C	# MATHEMATICAL BOLD ITALIC CAPITAL C
+1D46B	D	# MATHEMATICAL BOLD ITALIC CAPITAL D
+1D46C	E	# MATHEMATICAL BOLD ITALIC CAPITAL E
+1D46D	F	# MATHEMATICAL BOLD ITALIC CAPITAL F
+1D46E	G	# MATHEMATICAL BOLD ITALIC CAPITAL G
+1D46F	H	# MATHEMATICAL BOLD ITALIC CAPITAL H
+1D470	I	# MATHEMATICAL BOLD ITALIC CAPITAL I
+1D471	J	# MATHEMATICAL BOLD ITALIC CAPITAL J
+1D472	K	# MATHEMATICAL BOLD ITALIC CAPITAL K
+1D473	L	# MATHEMATICAL BOLD ITALIC CAPITAL L
+1D474	M	# MATHEMATICAL BOLD ITALIC CAPITAL M
+1D475	N	# MATHEMATICAL BOLD ITALIC CAPITAL N
+1D476	O	# MATHEMATICAL BOLD ITALIC CAPITAL O
+1D477	P	# MATHEMATICAL BOLD ITALIC CAPITAL P
+1D478	Q	# MATHEMATICAL BOLD ITALIC CAPITAL Q
+1D479	R	# MATHEMATICAL BOLD ITALIC CAPITAL R
+1D47A	S	# MATHEMATICAL BOLD ITALIC CAPITAL S
+1D47B	T	# MATHEMATICAL BOLD ITALIC CAPITAL T
+1D47C	U	# MATHEMATICAL BOLD ITALIC CAPITAL U
+1D47D	V	# MATHEMATICAL BOLD ITALIC CAPITAL V
+1D47E	W	# MATHEMATICAL BOLD ITALIC CAPITAL W
+1D47F	X	# MATHEMATICAL BOLD ITALIC CAPITAL X
+1D480	Y	# MATHEMATICAL BOLD ITALIC CAPITAL Y
+1D481	Z	# MATHEMATICAL BOLD ITALIC CAPITAL Z
+1D482	a	# MATHEMATICAL BOLD ITALIC SMALL A
+1D483	b	# MATHEMATICAL BOLD ITALIC SMALL B
+1D484	c	# MATHEMATICAL BOLD ITALIC SMALL C
+1D485	d	# MATHEMATICAL BOLD ITALIC SMALL D
+1D486	e	# MATHEMATICAL BOLD ITALIC SMALL E
+1D487	f	# MATHEMATICAL BOLD ITALIC SMALL F
+1D488	g	# MATHEMATICAL BOLD ITALIC SMALL G
+1D489	h	# MATHEMATICAL BOLD ITALIC SMALL H
+1D48A	i	# MATHEMATICAL BOLD ITALIC SMALL I
+1D48B	j	# MATHEMATICAL BOLD ITALIC SMALL J
+1D48C	k	# MATHEMATICAL BOLD ITALIC SMALL K
+1D48D	l	# MATHEMATICAL BOLD ITALIC SMALL L
+1D48E	m	# MATHEMATICAL BOLD ITALIC SMALL M
+1D48F	n	# MATHEMATICAL BOLD ITALIC SMALL N
+1D490	o	# MATHEMATICAL BOLD ITALIC SMALL O
+1D491	p	# MATHEMATICAL BOLD ITALIC SMALL P
+1D492	q	# MATHEMATICAL BOLD ITALIC SMALL Q
+1D493	r	# MATHEMATICAL BOLD ITALIC SMALL R
+1D494	s	# MATHEMATICAL BOLD ITALIC SMALL S
+1D495	t	# MATHEMATICAL BOLD ITALIC SMALL T
+1D496	u	# MATHEMATICAL BOLD ITALIC SMALL U
+1D497	v	# MATHEMATICAL BOLD ITALIC SMALL V
+1D498	w	# MATHEMATICAL BOLD ITALIC SMALL W
+1D499	x	# MATHEMATICAL BOLD ITALIC SMALL X
+1D49A	y	# MATHEMATICAL BOLD ITALIC SMALL Y
+1D49B	z	# MATHEMATICAL BOLD ITALIC SMALL Z
+1D49C	A	# MATHEMATICAL SCRIPT CAPITAL A
+1D49E	C	# MATHEMATICAL SCRIPT CAPITAL C
+1D49F	D	# MATHEMATICAL SCRIPT CAPITAL D
+1D4A2	G	# MATHEMATICAL SCRIPT CAPITAL G
+1D4A5	J	# MATHEMATICAL SCRIPT CAPITAL J
+1D4A6	K	# MATHEMATICAL SCRIPT CAPITAL K
+1D4A9	N	# MATHEMATICAL SCRIPT CAPITAL N
+1D4AA	O	# MATHEMATICAL SCRIPT CAPITAL O
+1D4AB	P	# MATHEMATICAL SCRIPT CAPITAL P
+1D4AC	Q	# MATHEMATICAL SCRIPT CAPITAL Q
+1D4AE	S	# MATHEMATICAL SCRIPT CAPITAL S
+1D4AF	T	# MATHEMATICAL SCRIPT CAPITAL T
+1D4B0	U	# MATHEMATICAL SCRIPT CAPITAL U
+1D4B1	V	# MATHEMATICAL SCRIPT CAPITAL V
+1D4B2	W	# MATHEMATICAL SCRIPT CAPITAL W
+1D4B3	X	# MATHEMATICAL SCRIPT CAPITAL X
+1D4B4	Y	# MATHEMATICAL SCRIPT CAPITAL Y
+1D4B5	Z	# MATHEMATICAL SCRIPT CAPITAL Z
+1D4B6	a	# MATHEMATICAL SCRIPT SMALL A
+1D4B7	b	# MATHEMATICAL SCRIPT SMALL B
+1D4B8	c	# MATHEMATICAL SCRIPT SMALL C
+1D4B9	d	# MATHEMATICAL SCRIPT SMALL D
+1D4BB	f	# MATHEMATICAL SCRIPT SMALL F
+1D4BD	h	# MATHEMATICAL SCRIPT SMALL H
+1D4BE	i	# MATHEMATICAL SCRIPT SMALL I
+1D4BF	j	# MATHEMATICAL SCRIPT SMALL J
+1D4C0	k	# MATHEMATICAL SCRIPT SMALL K
+1D4C1	l	# MATHEMATICAL SCRIPT SMALL L
+1D4C2	m	# MATHEMATICAL SCRIPT SMALL M
+1D4C3	n	# MATHEMATICAL SCRIPT SMALL N
+1D4C5	p	# MATHEMATICAL SCRIPT SMALL P
+1D4C6	q	# MATHEMATICAL SCRIPT SMALL Q
+1D4C7	r	# MATHEMATICAL SCRIPT SMALL R
+1D4C8	s	# MATHEMATICAL SCRIPT SMALL S
+1D4C9	t	# MATHEMATICAL SCRIPT SMALL T
+1D4CA	u	# MATHEMATICAL SCRIPT SMALL U
+1D4CB	v	# MATHEMATICAL SCRIPT SMALL V
+1D4CC	w	# MATHEMATICAL SCRIPT SMALL W
+1D4CD	x	# MATHEMATICAL SCRIPT SMALL X
+1D4CE	y	# MATHEMATICAL SCRIPT SMALL Y
+1D4CF	z	# MATHEMATICAL SCRIPT SMALL Z
+1D4D0	A	# MATHEMATICAL BOLD SCRIPT CAPITAL A
+1D4D1	B	# MATHEMATICAL BOLD SCRIPT CAPITAL B
+1D4D2	C	# MATHEMATICAL BOLD SCRIPT CAPITAL C
+1D4D3	D	# MATHEMATICAL BOLD SCRIPT CAPITAL D
+1D4D4	E	# MATHEMATICAL BOLD SCRIPT CAPITAL E
+1D4D5	F	# MATHEMATICAL BOLD SCRIPT CAPITAL F
+1D4D6	G	# MATHEMATICAL BOLD SCRIPT CAPITAL G
+1D4D7	H	# MATHEMATICAL BOLD SCRIPT CAPITAL H
+1D4D8	I	# MATHEMATICAL BOLD SCRIPT CAPITAL I
+1D4D9	J	# MATHEMATICAL BOLD SCRIPT CAPITAL J
+1D4DA	K	# MATHEMATICAL BOLD SCRIPT CAPITAL K
+1D4DB	L	# MATHEMATICAL BOLD SCRIPT CAPITAL L
+1D4DC	M	# MATHEMATICAL BOLD SCRIPT CAPITAL M
+1D4DD	N	# MATHEMATICAL BOLD SCRIPT CAPITAL N
+1D4DE	O	# MATHEMATICAL BOLD SCRIPT CAPITAL O
+1D4DF	P	# MATHEMATICAL BOLD SCRIPT CAPITAL P
+1D4E0	Q	# MATHEMATICAL BOLD SCRIPT CAPITAL Q
+1D4E1	R	# MATHEMATICAL BOLD SCRIPT CAPITAL R
+1D4E2	S	# MATHEMATICAL BOLD SCRIPT CAPITAL S
+1D4E3	T	# MATHEMATICAL BOLD SCRIPT CAPITAL T
+1D4E4	U	# MATHEMATICAL BOLD SCRIPT CAPITAL U
+1D4E5	V	# MATHEMATICAL BOLD SCRIPT CAPITAL V
+1D4E6	W	# MATHEMATICAL BOLD SCRIPT CAPITAL W
+1D4E7	X	# MATHEMATICAL BOLD SCRIPT CAPITAL X
+1D4E8	Y	# MATHEMATICAL BOLD SCRIPT CAPITAL Y
+1D4E9	Z	# MATHEMATICAL BOLD SCRIPT CAPITAL Z
+1D4EA	a	# MATHEMATICAL BOLD SCRIPT SMALL A
+1D4EB	b	# MATHEMATICAL BOLD SCRIPT SMALL B
+1D4EC	c	# MATHEMATICAL BOLD SCRIPT SMALL C
+1D4ED	d	# MATHEMATICAL BOLD SCRIPT SMALL D
+1D4EE	e	# MATHEMATICAL BOLD SCRIPT SMALL E
+1D4EF	f	# MATHEMATICAL BOLD SCRIPT SMALL F
+1D4F0	g	# MATHEMATICAL BOLD SCRIPT SMALL G
+1D4F1	h	# MATHEMATICAL BOLD SCRIPT SMALL H
+1D4F2	i	# MATHEMATICAL BOLD SCRIPT SMALL I
+1D4F3	j	# MATHEMATICAL BOLD SCRIPT SMALL J
+1D4F4	k	# MATHEMATICAL BOLD SCRIPT SMALL K
+1D4F5	l	# MATHEMATICAL BOLD SCRIPT SMALL L
+1D4F6	m	# MATHEMATICAL BOLD SCRIPT SMALL M
+1D4F7	n	# MATHEMATICAL BOLD SCRIPT SMALL N
+1D4F8	o	# MATHEMATICAL BOLD SCRIPT SMALL O
+1D4F9	p	# MATHEMATICAL BOLD SCRIPT SMALL P
+1D4FA	q	# MATHEMATICAL BOLD SCRIPT SMALL Q
+1D4FB	r	# MATHEMATICAL BOLD SCRIPT SMALL R
+1D4FC	s	# MATHEMATICAL BOLD SCRIPT SMALL S
+1D4FD	t	# MATHEMATICAL BOLD SCRIPT SMALL T
+1D4FE	u	# MATHEMATICAL BOLD SCRIPT SMALL U
+1D4FF	v	# MATHEMATICAL BOLD SCRIPT SMALL V
+1D500	w	# MATHEMATICAL BOLD SCRIPT SMALL W
+1D501	x	# MATHEMATICAL BOLD SCRIPT SMALL X
+1D502	y	# MATHEMATICAL BOLD SCRIPT SMALL Y
+1D503	z	# MATHEMATICAL BOLD SCRIPT SMALL Z
+1D504	A	# MATHEMATICAL FRAKTUR CAPITAL A
+1D505	B	# MATHEMATICAL FRAKTUR CAPITAL B
+1D507	D	# MATHEMATICAL FRAKTUR CAPITAL D
+1D508	E	# MATHEMATICAL FRAKTUR CAPITAL E
+1D509	F	# MATHEMATICAL FRAKTUR CAPITAL F
+1D50A	G	# MATHEMATICAL FRAKTUR CAPITAL G
+1D50D	J	# MATHEMATICAL FRAKTUR CAPITAL J
+1D50E	K	# MATHEMATICAL FRAKTUR CAPITAL K
+1D50F	L	# MATHEMATICAL FRAKTUR CAPITAL L
+1D510	M	# MATHEMATICAL FRAKTUR CAPITAL M
+1D511	N	# MATHEMATICAL FRAKTUR CAPITAL N
+1D512	O	# MATHEMATICAL FRAKTUR CAPITAL O
+1D513	P	# MATHEMATICAL FRAKTUR CAPITAL P
+1D514	Q	# MATHEMATICAL FRAKTUR CAPITAL Q
+1D516	S	# MATHEMATICAL FRAKTUR CAPITAL S
+1D517	T	# MATHEMATICAL FRAKTUR CAPITAL T
+1D518	U	# MATHEMATICAL FRAKTUR CAPITAL U
+1D519	V	# MATHEMATICAL FRAKTUR CAPITAL V
+1D51A	W	# MATHEMATICAL FRAKTUR CAPITAL W
+1D51B	X	# MATHEMATICAL FRAKTUR CAPITAL X
+1D51C	Y	# MATHEMATICAL FRAKTUR CAPITAL Y
+1D51E	a	# MATHEMATICAL FRAKTUR SMALL A
+1D51F	b	# MATHEMATICAL FRAKTUR SMALL B
+1D520	c	# MATHEMATICAL FRAKTUR SMALL C
+1D521	d	# MATHEMATICAL FRAKTUR SMALL D
+1D522	e	# MATHEMATICAL FRAKTUR SMALL E
+1D523	f	# MATHEMATICAL FRAKTUR SMALL F
+1D524	g	# MATHEMATICAL FRAKTUR SMALL G
+1D525	h	# MATHEMATICAL FRAKTUR SMALL H
+1D526	i	# MATHEMATICAL FRAKTUR SMALL I
+1D527	j	# MATHEMATICAL FRAKTUR SMALL J
+1D528	k	# MATHEMATICAL FRAKTUR SMALL K
+1D529	l	# MATHEMATICAL FRAKTUR SMALL L
+1D52A	m	# MATHEMATICAL FRAKTUR SMALL M
+1D52B	n	# MATHEMATICAL FRAKTUR SMALL N
+1D52C	o	# MATHEMATICAL FRAKTUR SMALL O
+1D52D	p	# MATHEMATICAL FRAKTUR SMALL P
+1D52E	q	# MATHEMATICAL FRAKTUR SMALL Q
+1D52F	r	# MATHEMATICAL FRAKTUR SMALL R
+1D530	s	# MATHEMATICAL FRAKTUR SMALL S
+1D531	t	# MATHEMATICAL FRAKTUR SMALL T
+1D532	u	# MATHEMATICAL FRAKTUR SMALL U
+1D533	v	# MATHEMATICAL FRAKTUR SMALL V
+1D534	w	# MATHEMATICAL FRAKTUR SMALL W
+1D535	x	# MATHEMATICAL FRAKTUR SMALL X
+1D536	y	# MATHEMATICAL FRAKTUR SMALL Y
+1D537	z	# MATHEMATICAL FRAKTUR SMALL Z
+1D538	A	# MATHEMATICAL DOUBLE-STRUCK CAPITAL A
+1D539	B	# MATHEMATICAL DOUBLE-STRUCK CAPITAL B
+1D53B	D	# MATHEMATICAL DOUBLE-STRUCK CAPITAL D
+1D53C	E	# MATHEMATICAL DOUBLE-STRUCK CAPITAL E
+1D53D	F	# MATHEMATICAL DOUBLE-STRUCK CAPITAL F
+1D53E	G	# MATHEMATICAL DOUBLE-STRUCK CAPITAL G
+1D540	I	# MATHEMATICAL DOUBLE-STRUCK CAPITAL I
+1D541	J	# MATHEMATICAL DOUBLE-STRUCK CAPITAL J
+1D542	K	# MATHEMATICAL DOUBLE-STRUCK CAPITAL K
+1D543	L	# MATHEMATICAL DOUBLE-STRUCK CAPITAL L
+1D544	M	# MATHEMATICAL DOUBLE-STRUCK CAPITAL M
+1D546	O	# MATHEMATICAL DOUBLE-STRUCK CAPITAL O
+1D54A	S	# MATHEMATICAL DOUBLE-STRUCK CAPITAL S
+1D54B	T	# MATHEMATICAL DOUBLE-STRUCK CAPITAL T
+1D54C	U	# MATHEMATICAL DOUBLE-STRUCK CAPITAL U
+1D54D	V	# MATHEMATICAL DOUBLE-STRUCK CAPITAL V
+1D54E	W	# MATHEMATICAL DOUBLE-STRUCK CAPITAL W
+1D54F	X	# MATHEMATICAL DOUBLE-STRUCK CAPITAL X
+1D550	Y	# MATHEMATICAL DOUBLE-STRUCK CAPITAL Y
+1D552	a	# MATHEMATICAL DOUBLE-STRUCK SMALL A
+1D553	b	# MATHEMATICAL DOUBLE-STRUCK SMALL B
+1D554	c	# MATHEMATICAL DOUBLE-STRUCK SMALL C
+1D555	d	# MATHEMATICAL DOUBLE-STRUCK SMALL D
+1D556	e	# MATHEMATICAL DOUBLE-STRUCK SMALL E
+1D557	f	# MATHEMATICAL DOUBLE-STRUCK SMALL F
+1D558	g	# MATHEMATICAL DOUBLE-STRUCK SMALL G
+1D559	h	# MATHEMATICAL DOUBLE-STRUCK SMALL H
+1D55A	i	# MATHEMATICAL DOUBLE-STRUCK SMALL I
+1D55B	j	# MATHEMATICAL DOUBLE-STRUCK SMALL J
+1D55C	k	# MATHEMATICAL DOUBLE-STRUCK SMALL K
+1D55D	l	# MATHEMATICAL DOUBLE-STRUCK SMALL L
+1D55E	m	# MATHEMATICAL DOUBLE-STRUCK SMALL M
+1D55F	n	# MATHEMATICAL DOUBLE-STRUCK SMALL N
+1D560	o	# MATHEMATICAL DOUBLE-STRUCK SMALL O
+1D561	p	# MATHEMATICAL DOUBLE-STRUCK SMALL P
+1D562	q	# MATHEMATICAL DOUBLE-STRUCK SMALL Q
+1D563	r	# MATHEMATICAL DOUBLE-STRUCK SMALL R
+1D564	s	# MATHEMATICAL DOUBLE-STRUCK SMALL S
+1D565	t	# MATHEMATICAL DOUBLE-STRUCK SMALL T
+1D566	u	# MATHEMATICAL DOUBLE-STRUCK SMALL U
+1D567	v	# MATHEMATICAL DOUBLE-STRUCK SMALL V
+1D568	w	# MATHEMATICAL DOUBLE-STRUCK SMALL W
+1D569	x	# MATHEMATICAL DOUBLE-STRUCK SMALL X
+1D56A	y	# MATHEMATICAL DOUBLE-STRUCK SMALL Y
+1D56B	z	# MATHEMATICAL DOUBLE-STRUCK SMALL Z
+1D56C	A	# MATHEMATICAL BOLD FRAKTUR CAPITAL A
+1D56D	B	# MATHEMATICAL BOLD FRAKTUR CAPITAL B
+1D56E	C	# MATHEMATICAL BOLD FRAKTUR CAPITAL C
+1D56F	D	# MATHEMATICAL BOLD FRAKTUR CAPITAL D
+1D570	E	# MATHEMATICAL BOLD FRAKTUR CAPITAL E
+1D571	F	# MATHEMATICAL BOLD FRAKTUR CAPITAL F
+1D572	G	# MATHEMATICAL BOLD FRAKTUR CAPITAL G
+1D573	H	# MATHEMATICAL BOLD FRAKTUR CAPITAL H
+1D574	I	# MATHEMATICAL BOLD FRAKTUR CAPITAL I
+1D575	J	# MATHEMATICAL BOLD FRAKTUR CAPITAL J
+1D576	K	# MATHEMATICAL BOLD FRAKTUR CAPITAL K
+1D577	L	# MATHEMATICAL BOLD FRAKTUR CAPITAL L
+1D578	M	# MATHEMATICAL BOLD FRAKTUR CAPITAL M
+1D579	N	# MATHEMATICAL BOLD FRAKTUR CAPITAL N
+1D57A	O	# MATHEMATICAL BOLD FRAKTUR CAPITAL O
+1D57B	P	# MATHEMATICAL BOLD FRAKTUR CAPITAL P
+1D57C	Q	# MATHEMATICAL BOLD FRAKTUR CAPITAL Q
+1D57D	R	# MATHEMATICAL BOLD FRAKTUR CAPITAL R
+1D57E	S	# MATHEMATICAL BOLD FRAKTUR CAPITAL S
+1D57F	T	# MATHEMATICAL BOLD FRAKTUR CAPITAL T
+1D580	U	# MATHEMATICAL BOLD FRAKTUR CAPITAL U
+1D581	V	# MATHEMATICAL BOLD FRAKTUR CAPITAL V
+1D582	W	# MATHEMATICAL BOLD FRAKTUR CAPITAL W
+1D583	X	# MATHEMATICAL BOLD FRAKTUR CAPITAL X
+1D584	Y	# MATHEMATICAL BOLD FRAKTUR CAPITAL Y
+1D585	Z	# MATHEMATICAL BOLD FRAKTUR CAPITAL Z
+1D586	a	# MATHEMATICAL BOLD FRAKTUR SMALL A
+1D587	b	# MATHEMATICAL BOLD FRAKTUR SMALL B
+1D588	c	# MATHEMATICAL BOLD FRAKTUR SMALL C
+1D589	d	# MATHEMATICAL BOLD FRAKTUR SMALL D
+1D58A	e	# MATHEMATICAL BOLD FRAKTUR SMALL E
+1D58B	f	# MATHEMATICAL BOLD FRAKTUR SMALL F
+1D58C	g	# MATHEMATICAL BOLD FRAKTUR SMALL G
+1D58D	h	# MATHEMATICAL BOLD FRAKTUR SMALL H
+1D58E	i	# MATHEMATICAL BOLD FRAKTUR SMALL I
+1D58F	j	# MATHEMATICAL BOLD FRAKTUR SMALL J
+1D590	k	# MATHEMATICAL BOLD FRAKTUR SMALL K
+1D591	l	# MATHEMATICAL BOLD FRAKTUR SMALL L
+1D592	m	# MATHEMATICAL BOLD FRAKTUR SMALL M
+1D593	n	# MATHEMATICAL BOLD FRAKTUR SMALL N
+1D594	o	# MATHEMATICAL BOLD FRAKTUR SMALL O
+1D595	p	# MATHEMATICAL BOLD FRAKTUR SMALL P
+1D596	q	# MATHEMATICAL BOLD FRAKTUR SMALL Q
+1D597	r	# MATHEMATICAL BOLD FRAKTUR SMALL R
+1D598	s	# MATHEMATICAL BOLD FRAKTUR SMALL S
+1D599	t	# MATHEMATICAL BOLD FRAKTUR SMALL T
+1D59A	u	# MATHEMATICAL BOLD FRAKTUR SMALL U
+1D59B	v	# MATHEMATICAL BOLD FRAKTUR SMALL V
+1D59C	w	# MATHEMATICAL BOLD FRAKTUR SMALL W
+1D59D	x	# MATHEMATICAL BOLD FRAKTUR SMALL X
+1D59E	y	# MATHEMATICAL BOLD FRAKTUR SMALL Y
+1D59F	z	# MATHEMATICAL BOLD FRAKTUR SMALL Z
+1D5A0	A	# MATHEMATICAL SANS-SERIF CAPITAL A
+1D5A1	B	# MATHEMATICAL SANS-SERIF CAPITAL B
+1D5A2	C	# MATHEMATICAL SANS-SERIF CAPITAL C
+1D5A3	D	# MATHEMATICAL SANS-SERIF CAPITAL D
+1D5A4	E	# MATHEMATICAL SANS-SERIF CAPITAL E
+1D5A5	F	# MATHEMATICAL SANS-SERIF CAPITAL F
+1D5A6	G	# MATHEMATICAL SANS-SERIF CAPITAL G
+1D5A7	H	# MATHEMATICAL SANS-SERIF CAPITAL H
+1D5A8	I	# MATHEMATICAL SANS-SERIF CAPITAL I
+1D5A9	J	# MATHEMATICAL SANS-SERIF CAPITAL J
+1D5AA	K	# MATHEMATICAL SANS-SERIF CAPITAL K
+1D5AB	L	# MATHEMATICAL SANS-SERIF CAPITAL L
+1D5AC	M	# MATHEMATICAL SANS-SERIF CAPITAL M
+1D5AD	N	# MATHEMATICAL SANS-SERIF CAPITAL N
+1D5AE	O	# MATHEMATICAL SANS-SERIF CAPITAL O
+1D5AF	P	# MATHEMATICAL SANS-SERIF CAPITAL P
+1D5B0	Q	# MATHEMATICAL SANS-SERIF CAPITAL Q
+1D5B1	R	# MATHEMATICAL SANS-SERIF CAPITAL R
+1D5B2	S	# MATHEMATICAL SANS-SERIF CAPITAL S
+1D5B3	T	# MATHEMATICAL SANS-SERIF CAPITAL T
+1D5B4	U	# MATHEMATICAL SANS-SERIF CAPITAL U
+1D5B5	V	# MATHEMATICAL SANS-SERIF CAPITAL V
+1D5B6	W	# MATHEMATICAL SANS-SERIF CAPITAL W
+1D5B7	X	# MATHEMATICAL SANS-SERIF CAPITAL X
+1D5B8	Y	# MATHEMATICAL SANS-SERIF CAPITAL Y
+1D5B9	Z	# MATHEMATICAL SANS-SERIF CAPITAL Z
+1D5BA	a	# MATHEMATICAL SANS-SERIF SMALL A
+1D5BB	b	# MATHEMATICAL SANS-SERIF SMALL B
+1D5BC	c	# MATHEMATICAL SANS-SERIF SMALL C
+1D5BD	d	# MATHEMATICAL SANS-SERIF SMALL D
+1D5BE	e	# MATHEMATICAL SANS-SERIF SMALL E
+1D5BF	f	# MATHEMATICAL SANS-SERIF SMALL F
+1D5C0	g	# MATHEMATICAL SANS-SERIF SMALL G
+1D5C1	h	# MATHEMATICAL SANS-SERIF SMALL H
+1D5C2	i	# MATHEMATICAL SANS-SERIF SMALL I
+1D5C3	j	# MATHEMATICAL SANS-SERIF SMALL J
+1D5C4	k	# MATHEMATICAL SANS-SERIF SMALL K
+1D5C5	l	# MATHEMATICAL SANS-SERIF SMALL L
+1D5C6	m	# MATHEMATICAL SANS-SERIF SMALL M
+1D5C7	n	# MATHEMATICAL SANS-SERIF SMALL N
+1D5C8	o	# MATHEMATICAL SANS-SERIF SMALL O
+1D5C9	p	# MATHEMATICAL SANS-SERIF SMALL P
+1D5CA	q	# MATHEMATICAL SANS-SERIF SMALL Q
+1D5CB	r	# MATHEMATICAL SANS-SERIF SMALL R
+1D5CC	s	# MATHEMATICAL SANS-SERIF SMALL S
+1D5CD	t	# MATHEMATICAL SANS-SERIF SMALL T
+1D5CE	u	# MATHEMATICAL SANS-SERIF SMALL U
+1D5CF	v	# MATHEMATICAL SANS-SERIF SMALL V
+1D5D0	w	# MATHEMATICAL SANS-SERIF SMALL W
+1D5D1	x	# MATHEMATICAL SANS-SERIF SMALL X
+1D5D2	y	# MATHEMATICAL SANS-SERIF SMALL Y
+1D5D3	z	# MATHEMATICAL SANS-SERIF SMALL Z
+1D5D4	A	# MATHEMATICAL SANS-SERIF BOLD CAPITAL A
+1D5D5	B	# MATHEMATICAL SANS-SERIF BOLD CAPITAL B
+1D5D6	C	# MATHEMATICAL SANS-SERIF BOLD CAPITAL C
+1D5D7	D	# MATHEMATICAL SANS-SERIF BOLD CAPITAL D
+1D5D8	E	# MATHEMATICAL SANS-SERIF BOLD CAPITAL E
+1D5D9	F	# MATHEMATICAL SANS-SERIF BOLD CAPITAL F
+1D5DA	G	# MATHEMATICAL SANS-SERIF BOLD CAPITAL G
+1D5DB	H	# MATHEMATICAL SANS-SERIF BOLD CAPITAL H
+1D5DC	I	# MATHEMATICAL SANS-SERIF BOLD CAPITAL I
+1D5DD	J	# MATHEMATICAL SANS-SERIF BOLD CAPITAL J
+1D5DE	K	# MATHEMATICAL SANS-SERIF BOLD CAPITAL K
+1D5DF	L	# MATHEMATICAL SANS-SERIF BOLD CAPITAL L
+1D5E0	M	# MATHEMATICAL SANS-SERIF BOLD CAPITAL M
+1D5E1	N	# MATHEMATICAL SANS-SERIF BOLD CAPITAL N
+1D5E2	O	# MATHEMATICAL SANS-SERIF BOLD CAPITAL O
+1D5E3	P	# MATHEMATICAL SANS-SERIF BOLD CAPITAL P
+1D5E4	Q	# MATHEMATICAL SANS-SERIF BOLD CAPITAL Q
+1D5E5	R	# MATHEMATICAL SANS-SERIF BOLD CAPITAL R
+1D5E6	S	# MATHEMATICAL SANS-SERIF BOLD CAPITAL S
+1D5E7	T	# MATHEMATICAL SANS-SERIF BOLD CAPITAL T
+1D5E8	U	# MATHEMATICAL SANS-SERIF BOLD CAPITAL U
+1D5E9	V	# MATHEMATICAL SANS-SERIF BOLD CAPITAL V
+1D5EA	W	# MATHEMATICAL SANS-SERIF BOLD CAPITAL W
+1D5EB	X	# MATHEMATICAL SANS-SERIF BOLD CAPITAL X
+1D5EC	Y	# MATHEMATICAL SANS-SERIF BOLD CAPITAL Y
+1D5ED	Z	# MATHEMATICAL SANS-SERIF BOLD CAPITAL Z
+1D5EE	a	# MATHEMATICAL SANS-SERIF BOLD SMALL A
+1D5EF	b	# MATHEMATICAL SANS-SERIF BOLD SMALL B
+1D5F0	c	# MATHEMATICAL SANS-SERIF BOLD SMALL C
+1D5F1	d	# MATHEMATICAL SANS-SERIF BOLD SMALL D
+1D5F2	e	# MATHEMATICAL SANS-SERIF BOLD SMALL E
+1D5F3	f	# MATHEMATICAL SANS-SERIF BOLD SMALL F
+1D5F4	g	# MATHEMATICAL SANS-SERIF BOLD SMALL G
+1D5F5	h	# MATHEMATICAL SANS-SERIF BOLD SMALL H
+1D5F6	i	# MATHEMATICAL SANS-SERIF BOLD SMALL I
+1D5F7	j	# MATHEMATICAL SANS-SERIF BOLD SMALL J
+1D5F8	k	# MATHEMATICAL SANS-SERIF BOLD SMALL K
+1D5F9	l	# MATHEMATICAL SANS-SERIF BOLD SMALL L
+1D5FA	m	# MATHEMATICAL SANS-SERIF BOLD SMALL M
+1D5FB	n	# MATHEMATICAL SANS-SERIF BOLD SMALL N
+1D5FC	o	# MATHEMATICAL SANS-SERIF BOLD SMALL O
+1D5FD	p	# MATHEMATICAL SANS-SERIF BOLD SMALL P
+1D5FE	q	# MATHEMATICAL SANS-SERIF BOLD SMALL Q
+1D5FF	r	# MATHEMATICAL SANS-SERIF BOLD SMALL R
+1D600	s	# MATHEMATICAL SANS-SERIF BOLD SMALL S
+1D601	t	# MATHEMATICAL SANS-SERIF BOLD SMALL T
+1D602	u	# MATHEMATICAL SANS-SERIF BOLD SMALL U
+1D603	v	# MATHEMATICAL SANS-SERIF BOLD SMALL V
+1D604	w	# MATHEMATICAL SANS-SERIF BOLD SMALL W
+1D605	x	# MATHEMATICAL SANS-SERIF BOLD SMALL X
+1D606	y	# MATHEMATICAL SANS-SERIF BOLD SMALL Y
+1D607	z	# MATHEMATICAL SANS-SERIF BOLD SMALL Z
+1D608	A	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL A
+1D609	B	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL B
+1D60A	C	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL C
+1D60B	D	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL D
+1D60C	E	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL E
+1D60D	F	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL F
+1D60E	G	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL G
+1D60F	H	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL H
+1D610	I	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL I
+1D611	J	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL J
+1D612	K	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL K
+1D613	L	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL L
+1D614	M	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL M
+1D615	N	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL N
+1D616	O	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL O
+1D617	P	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL P
+1D618	Q	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL Q
+1D619	R	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL R
+1D61A	S	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL S
+1D61B	T	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL T
+1D61C	U	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL U
+1D61D	V	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL V
+1D61E	W	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL W
+1D61F	X	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL X
+1D620	Y	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL Y
+1D621	Z	# MATHEMATICAL SANS-SERIF ITALIC CAPITAL Z
+1D622	a	# MATHEMATICAL SANS-SERIF ITALIC SMALL A
+1D623	b	# MATHEMATICAL SANS-SERIF ITALIC SMALL B
+1D624	c	# MATHEMATICAL SANS-SERIF ITALIC SMALL C
+1D625	d	# MATHEMATICAL SANS-SERIF ITALIC SMALL D
+1D626	e	# MATHEMATICAL SANS-SERIF ITALIC SMALL E
+1D627	f	# MATHEMATICAL SANS-SERIF ITALIC SMALL F
+1D628	g	# MATHEMATICAL SANS-SERIF ITALIC SMALL G
+1D629	h	# MATHEMATICAL SANS-SERIF ITALIC SMALL H
+1D62A	i	# MATHEMATICAL SANS-SERIF ITALIC SMALL I
+1D62B	j	# MATHEMATICAL SANS-SERIF ITALIC SMALL J
+1D62C	k	# MATHEMATICAL SANS-SERIF ITALIC SMALL K
+1D62D	l	# MATHEMATICAL SANS-SERIF ITALIC SMALL L
+1D62E	m	# MATHEMATICAL SANS-SERIF ITALIC SMALL M
+1D62F	n	# MATHEMATICAL SANS-SERIF ITALIC SMALL N
+1D630	o	# MATHEMATICAL SANS-SERIF ITALIC SMALL O
+1D631	p	# MATHEMATICAL SANS-SERIF ITALIC SMALL P
+1D632	q	# MATHEMATICAL SANS-SERIF ITALIC SMALL Q
+1D633	r	# MATHEMATICAL SANS-SERIF ITALIC SMALL R
+1D634	s	# MATHEMATICAL SANS-SERIF ITALIC SMALL S
+1D635	t	# MATHEMATICAL SANS-SERIF ITALIC SMALL T
+1D636	u	# MATHEMATICAL SANS-SERIF ITALIC SMALL U
+1D637	v	# MATHEMATICAL SANS-SERIF ITALIC SMALL V
+1D638	w	# MATHEMATICAL SANS-SERIF ITALIC SMALL W
+1D639	x	# MATHEMATICAL SANS-SERIF ITALIC SMALL X
+1D63A	y	# MATHEMATICAL SANS-SERIF ITALIC SMALL Y
+1D63B	z	# MATHEMATICAL SANS-SERIF ITALIC SMALL Z
+1D63C	A	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL A
+1D63D	B	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL B
+1D63E	C	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL C
+1D63F	D	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL D
+1D640	E	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL E
+1D641	F	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL F
+1D642	G	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL G
+1D643	H	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL H
+1D644	I	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL I
+1D645	J	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL J
+1D646	K	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL K
+1D647	L	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL L
+1D648	M	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL M
+1D649	N	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL N
+1D64A	O	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL O
+1D64B	P	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL P
+1D64C	Q	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL Q
+1D64D	R	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL R
+1D64E	S	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL S
+1D64F	T	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL T
+1D650	U	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL U
+1D651	V	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL V
+1D652	W	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL W
+1D653	X	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL X
+1D654	Y	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL Y
+1D655	Z	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL Z
+1D656	a	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL A
+1D657	b	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL B
+1D658	c	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL C
+1D659	d	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL D
+1D65A	e	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL E
+1D65B	f	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL F
+1D65C	g	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL G
+1D65D	h	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL H
+1D65E	i	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL I
+1D65F	j	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL J
+1D660	k	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL K
+1D661	l	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL L
+1D662	m	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL M
+1D663	n	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL N
+1D664	o	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL O
+1D665	p	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL P
+1D666	q	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL Q
+1D667	r	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL R
+1D668	s	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL S
+1D669	t	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL T
+1D66A	u	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL U
+1D66B	v	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL V
+1D66C	w	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL W
+1D66D	x	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL X
+1D66E	y	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL Y
+1D66F	z	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL Z
+1D670	A	# MATHEMATICAL MONOSPACE CAPITAL A
+1D671	B	# MATHEMATICAL MONOSPACE CAPITAL B
+1D672	C	# MATHEMATICAL MONOSPACE CAPITAL C
+1D673	D	# MATHEMATICAL MONOSPACE CAPITAL D
+1D674	E	# MATHEMATICAL MONOSPACE CAPITAL E
+1D675	F	# MATHEMATICAL MONOSPACE CAPITAL F
+1D676	G	# MATHEMATICAL MONOSPACE CAPITAL G
+1D677	H	# MATHEMATICAL MONOSPACE CAPITAL H
+1D678	I	# MATHEMATICAL MONOSPACE CAPITAL I
+1D679	J	# MATHEMATICAL MONOSPACE CAPITAL J
+1D67A	K	# MATHEMATICAL MONOSPACE CAPITAL K
+1D67B	L	# MATHEMATICAL MONOSPACE CAPITAL L
+1D67C	M	# MATHEMATICAL MONOSPACE CAPITAL M
+1D67D	N	# MATHEMATICAL MONOSPACE CAPITAL N
+1D67E	O	# MATHEMATICAL MONOSPACE CAPITAL O
+1D67F	P	# MATHEMATICAL MONOSPACE CAPITAL P
+1D680	Q	# MATHEMATICAL MONOSPACE CAPITAL Q
+1D681	R	# MATHEMATICAL MONOSPACE CAPITAL R
+1D682	S	# MATHEMATICAL MONOSPACE CAPITAL S
+1D683	T	# MATHEMATICAL MONOSPACE CAPITAL T
+1D684	U	# MATHEMATICAL MONOSPACE CAPITAL U
+1D685	V	# MATHEMATICAL MONOSPACE CAPITAL V
+1D686	W	# MATHEMATICAL MONOSPACE CAPITAL W
+1D687	X	# MATHEMATICAL MONOSPACE CAPITAL X
+1D688	Y	# MATHEMATICAL MONOSPACE CAPITAL Y
+1D689	Z	# MATHEMATICAL MONOSPACE CAPITAL Z
+1D68A	a	# MATHEMATICAL MONOSPACE SMALL A
+1D68B	b	# MATHEMATICAL MONOSPACE SMALL B
+1D68C	c	# MATHEMATICAL MONOSPACE SMALL C
+1D68D	d	# MATHEMATICAL MONOSPACE SMALL D
+1D68E	e	# MATHEMATICAL MONOSPACE SMALL E
+1D68F	f	# MATHEMATICAL MONOSPACE SMALL F
+1D690	g	# MATHEMATICAL MONOSPACE SMALL G
+1D691	h	# MATHEMATICAL MONOSPACE SMALL H
+1D692	i	# MATHEMATICAL MONOSPACE SMALL I
+1D693	j	# MATHEMATICAL MONOSPACE SMALL J
+1D694	k	# MATHEMATICAL MONOSPACE SMALL K
+1D695	l	# MATHEMATICAL MONOSPACE SMALL L
+1D696	m	# MATHEMATICAL MONOSPACE SMALL M
+1D697	n	# MATHEMATICAL MONOSPACE SMALL N
+1D698	o	# MATHEMATICAL MONOSPACE SMALL O
+1D699	p	# MATHEMATICAL MONOSPACE SMALL P
+1D69A	q	# MATHEMATICAL MONOSPACE SMALL Q
+1D69B	r	# MATHEMATICAL MONOSPACE SMALL R
+1D69C	s	# MATHEMATICAL MONOSPACE SMALL S
+1D69D	t	# MATHEMATICAL MONOSPACE SMALL T
+1D69E	u	# MATHEMATICAL MONOSPACE SMALL U
+1D69F	v	# MATHEMATICAL MONOSPACE SMALL V
+1D6A0	w	# MATHEMATICAL MONOSPACE SMALL W
+1D6A1	x	# MATHEMATICAL MONOSPACE SMALL X
+1D6A2	y	# MATHEMATICAL MONOSPACE SMALL Y
+1D6A3	z	# MATHEMATICAL MONOSPACE SMALL Z
+1D6A8	Α	# MATHEMATICAL BOLD CAPITAL ALPHA
+1D6A9	Β	# MATHEMATICAL BOLD CAPITAL BETA
+1D6AA	Γ	# MATHEMATICAL BOLD CAPITAL GAMMA
+1D6AB	Δ	# MATHEMATICAL BOLD CAPITAL DELTA
+1D6AC	Ε	# MATHEMATICAL BOLD CAPITAL EPSILON
+1D6AD	Ζ	# MATHEMATICAL BOLD CAPITAL ZETA
+1D6AE	Η	# MATHEMATICAL BOLD CAPITAL ETA
+1D6AF	Θ	# MATHEMATICAL BOLD CAPITAL THETA
+1D6B0	Ι	# MATHEMATICAL BOLD CAPITAL IOTA
+1D6B1	Κ	# MATHEMATICAL BOLD CAPITAL KAPPA
+1D6B2	Λ	# MATHEMATICAL BOLD CAPITAL LAMDA
+1D6B3	Μ	# MATHEMATICAL BOLD CAPITAL MU
+1D6B4	Ν	# MATHEMATICAL BOLD CAPITAL NU
+1D6B5	Ξ	# MATHEMATICAL BOLD CAPITAL XI
+1D6B6	Ο	# MATHEMATICAL BOLD CAPITAL OMICRON
+1D6B7	Π	# MATHEMATICAL BOLD CAPITAL PI
+1D6B8	Ρ	# MATHEMATICAL BOLD CAPITAL RHO
+1D6B9	ϴ	# MATHEMATICAL BOLD CAPITAL THETA SYMBOL
+1D6BA	Σ	# MATHEMATICAL BOLD CAPITAL SIGMA
+1D6BB	Τ	# MATHEMATICAL BOLD CAPITAL TAU
+1D6BC	Υ	# MATHEMATICAL BOLD CAPITAL UPSILON
+1D6BD	Φ	# MATHEMATICAL BOLD CAPITAL PHI
+1D6BE	Χ	# MATHEMATICAL BOLD CAPITAL CHI
+1D6BF	Ψ	# MATHEMATICAL BOLD CAPITAL PSI
+1D6C0	Ω	# MATHEMATICAL BOLD CAPITAL OMEGA
+1D6C1	∇	# MATHEMATICAL BOLD NABLA
+1D6C2	α	# MATHEMATICAL BOLD SMALL ALPHA
+1D6C3	β	# MATHEMATICAL BOLD SMALL BETA
+1D6C4	γ	# MATHEMATICAL BOLD SMALL GAMMA
+1D6C5	δ	# MATHEMATICAL BOLD SMALL DELTA
+1D6C6	ε	# MATHEMATICAL BOLD SMALL EPSILON
+1D6C7	ζ	# MATHEMATICAL BOLD SMALL ZETA
+1D6C8	η	# MATHEMATICAL BOLD SMALL ETA
+1D6C9	θ	# MATHEMATICAL BOLD SMALL THETA
+1D6CA	ι	# MATHEMATICAL BOLD SMALL IOTA
+1D6CB	κ	# MATHEMATICAL BOLD SMALL KAPPA
+1D6CC	λ	# MATHEMATICAL BOLD SMALL LAMDA
+1D6CD	μ	# MATHEMATICAL BOLD SMALL MU
+1D6CE	ν	# MATHEMATICAL BOLD SMALL NU
+1D6CF	ξ	# MATHEMATICAL BOLD SMALL XI
+1D6D0	ο	# MATHEMATICAL BOLD SMALL OMICRON
+1D6D1	π	# MATHEMATICAL BOLD SMALL PI
+1D6D2	ρ	# MATHEMATICAL BOLD SMALL RHO
+1D6D3	ς	# MATHEMATICAL BOLD SMALL FINAL SIGMA
+1D6D4	σ	# MATHEMATICAL BOLD SMALL SIGMA
+1D6D5	τ	# MATHEMATICAL BOLD SMALL TAU
+1D6D6	υ	# MATHEMATICAL BOLD SMALL UPSILON
+1D6D7	φ	# MATHEMATICAL BOLD SMALL PHI
+1D6D8	χ	# MATHEMATICAL BOLD SMALL CHI
+1D6D9	ψ	# MATHEMATICAL BOLD SMALL PSI
+1D6DA	ω	# MATHEMATICAL BOLD SMALL OMEGA
+1D6DB	∂	# MATHEMATICAL BOLD PARTIAL DIFFERENTIAL
+1D6DC	ϵ	# MATHEMATICAL BOLD EPSILON SYMBOL
+1D6DD	ϑ	# MATHEMATICAL BOLD THETA SYMBOL
+1D6DE	ϰ	# MATHEMATICAL BOLD KAPPA SYMBOL
+1D6DF	ϕ	# MATHEMATICAL BOLD PHI SYMBOL
+1D6E0	ϱ	# MATHEMATICAL BOLD RHO SYMBOL
+1D6E1	ϖ	# MATHEMATICAL BOLD PI SYMBOL
+1D6E2	Α	# MATHEMATICAL ITALIC CAPITAL ALPHA
+1D6E3	Β	# MATHEMATICAL ITALIC CAPITAL BETA
+1D6E4	Γ	# MATHEMATICAL ITALIC CAPITAL GAMMA
+1D6E5	Δ	# MATHEMATICAL ITALIC CAPITAL DELTA
+1D6E6	Ε	# MATHEMATICAL ITALIC CAPITAL EPSILON
+1D6E7	Ζ	# MATHEMATICAL ITALIC CAPITAL ZETA
+1D6E8	Η	# MATHEMATICAL ITALIC CAPITAL ETA
+1D6E9	Θ	# MATHEMATICAL ITALIC CAPITAL THETA
+1D6EA	Ι	# MATHEMATICAL ITALIC CAPITAL IOTA
+1D6EB	Κ	# MATHEMATICAL ITALIC CAPITAL KAPPA
+1D6EC	Λ	# MATHEMATICAL ITALIC CAPITAL LAMDA
+1D6ED	Μ	# MATHEMATICAL ITALIC CAPITAL MU
+1D6EE	Ν	# MATHEMATICAL ITALIC CAPITAL NU
+1D6EF	Ξ	# MATHEMATICAL ITALIC CAPITAL XI
+1D6F0	Ο	# MATHEMATICAL ITALIC CAPITAL OMICRON
+1D6F1	Π	# MATHEMATICAL ITALIC CAPITAL PI
+1D6F2	Ρ	# MATHEMATICAL ITALIC CAPITAL RHO
+1D6F3	ϴ	# MATHEMATICAL ITALIC CAPITAL THETA SYMBOL
+1D6F4	Σ	# MATHEMATICAL ITALIC CAPITAL SIGMA
+1D6F5	Τ	# MATHEMATICAL ITALIC CAPITAL TAU
+1D6F6	Υ	# MATHEMATICAL ITALIC CAPITAL UPSILON
+1D6F7	Φ	# MATHEMATICAL ITALIC CAPITAL PHI
+1D6F8	Χ	# MATHEMATICAL ITALIC CAPITAL CHI
+1D6F9	Ψ	# MATHEMATICAL ITALIC CAPITAL PSI
+1D6FA	Ω	# MATHEMATICAL ITALIC CAPITAL OMEGA
+1D6FB	∇	# MATHEMATICAL ITALIC NABLA
+1D6FC	α	# MATHEMATICAL ITALIC SMALL ALPHA
+1D6FD	β	# MATHEMATICAL ITALIC SMALL BETA
+1D6FE	γ	# MATHEMATICAL ITALIC SMALL GAMMA
+1D6FF	δ	# MATHEMATICAL ITALIC SMALL DELTA
+1D700	ε	# MATHEMATICAL ITALIC SMALL EPSILON
+1D701	ζ	# MATHEMATICAL ITALIC SMALL ZETA
+1D702	η	# MATHEMATICAL ITALIC SMALL ETA
+1D703	θ	# MATHEMATICAL ITALIC SMALL THETA
+1D704	ι	# MATHEMATICAL ITALIC SMALL IOTA
+1D705	κ	# MATHEMATICAL ITALIC SMALL KAPPA
+1D706	λ	# MATHEMATICAL ITALIC SMALL LAMDA
+1D707	μ	# MATHEMATICAL ITALIC SMALL MU
+1D708	ν	# MATHEMATICAL ITALIC SMALL NU
+1D709	ξ	# MATHEMATICAL ITALIC SMALL XI
+1D70A	ο	# MATHEMATICAL ITALIC SMALL OMICRON
+1D70B	π	# MATHEMATICAL ITALIC SMALL PI
+1D70C	ρ	# MATHEMATICAL ITALIC SMALL RHO
+1D70D	ς	# MATHEMATICAL ITALIC SMALL FINAL SIGMA
+1D70E	σ	# MATHEMATICAL ITALIC SMALL SIGMA
+1D70F	τ	# MATHEMATICAL ITALIC SMALL TAU
+1D710	υ	# MATHEMATICAL ITALIC SMALL UPSILON
+1D711	φ	# MATHEMATICAL ITALIC SMALL PHI
+1D712	χ	# MATHEMATICAL ITALIC SMALL CHI
+1D713	ψ	# MATHEMATICAL ITALIC SMALL PSI
+1D714	ω	# MATHEMATICAL ITALIC SMALL OMEGA
+1D715	∂	# MATHEMATICAL ITALIC PARTIAL DIFFERENTIAL
+1D716	ϵ	# MATHEMATICAL ITALIC EPSILON SYMBOL
+1D717	ϑ	# MATHEMATICAL ITALIC THETA SYMBOL
+1D718	ϰ	# MATHEMATICAL ITALIC KAPPA SYMBOL
+1D719	ϕ	# MATHEMATICAL ITALIC PHI SYMBOL
+1D71A	ϱ	# MATHEMATICAL ITALIC RHO SYMBOL
+1D71B	ϖ	# MATHEMATICAL ITALIC PI SYMBOL
+1D71C	Α	# MATHEMATICAL BOLD ITALIC CAPITAL ALPHA
+1D71D	Β	# MATHEMATICAL BOLD ITALIC CAPITAL BETA
+1D71E	Γ	# MATHEMATICAL BOLD ITALIC CAPITAL GAMMA
+1D71F	Δ	# MATHEMATICAL BOLD ITALIC CAPITAL DELTA
+1D720	Ε	# MATHEMATICAL BOLD ITALIC CAPITAL EPSILON
+1D721	Ζ	# MATHEMATICAL BOLD ITALIC CAPITAL ZETA
+1D722	Η	# MATHEMATICAL BOLD ITALIC CAPITAL ETA
+1D723	Θ	# MATHEMATICAL BOLD ITALIC CAPITAL THETA
+1D724	Ι	# MATHEMATICAL BOLD ITALIC CAPITAL IOTA
+1D725	Κ	# MATHEMATICAL BOLD ITALIC CAPITAL KAPPA
+1D726	Λ	# MATHEMATICAL BOLD ITALIC CAPITAL LAMDA
+1D727	Μ	# MATHEMATICAL BOLD ITALIC CAPITAL MU
+1D728	Ν	# MATHEMATICAL BOLD ITALIC CAPITAL NU
+1D729	Ξ	# MATHEMATICAL BOLD ITALIC CAPITAL XI
+1D72A	Ο	# MATHEMATICAL BOLD ITALIC CAPITAL OMICRON
+1D72B	Π	# MATHEMATICAL BOLD ITALIC CAPITAL PI
+1D72C	Ρ	# MATHEMATICAL BOLD ITALIC CAPITAL RHO
+1D72D	ϴ	# MATHEMATICAL BOLD ITALIC CAPITAL THETA SYMBOL
+1D72E	Σ	# MATHEMATICAL BOLD ITALIC CAPITAL SIGMA
+1D72F	Τ	# MATHEMATICAL BOLD ITALIC CAPITAL TAU
+1D730	Υ	# MATHEMATICAL BOLD ITALIC CAPITAL UPSILON
+1D731	Φ	# MATHEMATICAL BOLD ITALIC CAPITAL PHI
+1D732	Χ	# MATHEMATICAL BOLD ITALIC CAPITAL CHI
+1D733	Ψ	# MATHEMATICAL BOLD ITALIC CAPITAL PSI
+1D734	Ω	# MATHEMATICAL BOLD ITALIC CAPITAL OMEGA
+1D735	∇	# MATHEMATICAL BOLD ITALIC NABLA
+1D736	α	# MATHEMATICAL BOLD ITALIC SMALL ALPHA
+1D737	β	# MATHEMATICAL BOLD ITALIC SMALL BETA
+1D738	γ	# MATHEMATICAL BOLD ITALIC SMALL GAMMA
+1D739	δ	# MATHEMATICAL BOLD ITALIC SMALL DELTA
+1D73A	ε	# MATHEMATICAL BOLD ITALIC SMALL EPSILON
+1D73B	ζ	# MATHEMATICAL BOLD ITALIC SMALL ZETA
+1D73C	η	# MATHEMATICAL BOLD ITALIC SMALL ETA
+1D73D	θ	# MATHEMATICAL BOLD ITALIC SMALL THETA
+1D73E	ι	# MATHEMATICAL BOLD ITALIC SMALL IOTA
+1D73F	κ	# MATHEMATICAL BOLD ITALIC SMALL KAPPA
+1D740	λ	# MATHEMATICAL BOLD ITALIC SMALL LAMDA
+1D741	μ	# MATHEMATICAL BOLD ITALIC SMALL MU
+1D742	ν	# MATHEMATICAL BOLD ITALIC SMALL NU
+1D743	ξ	# MATHEMATICAL BOLD ITALIC SMALL XI
+1D744	ο	# MATHEMATICAL BOLD ITALIC SMALL OMICRON
+1D745	π	# MATHEMATICAL BOLD ITALIC SMALL PI
+1D746	ρ	# MATHEMATICAL BOLD ITALIC SMALL RHO
+1D747	ς	# MATHEMATICAL BOLD ITALIC SMALL FINAL SIGMA
+1D748	σ	# MATHEMATICAL BOLD ITALIC SMALL SIGMA
+1D749	τ	# MATHEMATICAL BOLD ITALIC SMALL TAU
+1D74A	υ	# MATHEMATICAL BOLD ITALIC SMALL UPSILON
+1D74B	φ	# MATHEMATICAL BOLD ITALIC SMALL PHI
+1D74C	χ	# MATHEMATICAL BOLD ITALIC SMALL CHI
+1D74D	ψ	# MATHEMATICAL BOLD ITALIC SMALL PSI
+1D74E	ω	# MATHEMATICAL BOLD ITALIC SMALL OMEGA
+1D74F	∂	# MATHEMATICAL BOLD ITALIC PARTIAL DIFFERENTIAL
+1D750	ϵ	# MATHEMATICAL BOLD ITALIC EPSILON SYMBOL
+1D751	ϑ	# MATHEMATICAL BOLD ITALIC THETA SYMBOL
+1D752	ϰ	# MATHEMATICAL BOLD ITALIC KAPPA SYMBOL
+1D753	ϕ	# MATHEMATICAL BOLD ITALIC PHI SYMBOL
+1D754	ϱ	# MATHEMATICAL BOLD ITALIC RHO SYMBOL
+1D755	ϖ	# MATHEMATICAL BOLD ITALIC PI SYMBOL
+1D756	Α	# MATHEMATICAL SANS-SERIF BOLD CAPITAL ALPHA
+1D757	Β	# MATHEMATICAL SANS-SERIF BOLD CAPITAL BETA
+1D758	Γ	# MATHEMATICAL SANS-SERIF BOLD CAPITAL GAMMA
+1D759	Δ	# MATHEMATICAL SANS-SERIF BOLD CAPITAL DELTA
+1D75A	Ε	# MATHEMATICAL SANS-SERIF BOLD CAPITAL EPSILON
+1D75B	Ζ	# MATHEMATICAL SANS-SERIF BOLD CAPITAL ZETA
+1D75C	Η	# MATHEMATICAL SANS-SERIF BOLD CAPITAL ETA
+1D75D	Θ	# MATHEMATICAL SANS-SERIF BOLD CAPITAL THETA
+1D75E	Ι	# MATHEMATICAL SANS-SERIF BOLD CAPITAL IOTA
+1D75F	Κ	# MATHEMATICAL SANS-SERIF BOLD CAPITAL KAPPA
+1D760	Λ	# MATHEMATICAL SANS-SERIF BOLD CAPITAL LAMDA
+1D761	Μ	# MATHEMATICAL SANS-SERIF BOLD CAPITAL MU
+1D762	Ν	# MATHEMATICAL SANS-SERIF BOLD CAPITAL NU
+1D763	Ξ	# MATHEMATICAL SANS-SERIF BOLD CAPITAL XI
+1D764	Ο	# MATHEMATICAL SANS-SERIF BOLD CAPITAL OMICRON
+1D765	Π	# MATHEMATICAL SANS-SERIF BOLD CAPITAL PI
+1D766	Ρ	# MATHEMATICAL SANS-SERIF BOLD CAPITAL RHO
+1D767	ϴ	# MATHEMATICAL SANS-SERIF BOLD CAPITAL THETA SYMBOL
+1D768	Σ	# MATHEMATICAL SANS-SERIF BOLD CAPITAL SIGMA
+1D769	Τ	# MATHEMATICAL SANS-SERIF BOLD CAPITAL TAU
+1D76A	Υ	# MATHEMATICAL SANS-SERIF BOLD CAPITAL UPSILON
+1D76B	Φ	# MATHEMATICAL SANS-SERIF BOLD CAPITAL PHI
+1D76C	Χ	# MATHEMATICAL SANS-SERIF BOLD CAPITAL CHI
+1D76D	Ψ	# MATHEMATICAL SANS-SERIF BOLD CAPITAL PSI
+1D76E	Ω	# MATHEMATICAL SANS-SERIF BOLD CAPITAL OMEGA
+1D76F	∇	# MATHEMATICAL SANS-SERIF BOLD NABLA
+1D770	α	# MATHEMATICAL SANS-SERIF BOLD SMALL ALPHA
+1D771	β	# MATHEMATICAL SANS-SERIF BOLD SMALL BETA
+1D772	γ	# MATHEMATICAL SANS-SERIF BOLD SMALL GAMMA
+1D773	δ	# MATHEMATICAL SANS-SERIF BOLD SMALL DELTA
+1D774	ε	# MATHEMATICAL SANS-SERIF BOLD SMALL EPSILON
+1D775	ζ	# MATHEMATICAL SANS-SERIF BOLD SMALL ZETA
+1D776	η	# MATHEMATICAL SANS-SERIF BOLD SMALL ETA
+1D777	θ	# MATHEMATICAL SANS-SERIF BOLD SMALL THETA
+1D778	ι	# MATHEMATICAL SANS-SERIF BOLD SMALL IOTA
+1D779	κ	# MATHEMATICAL SANS-SERIF BOLD SMALL KAPPA
+1D77A	λ	# MATHEMATICAL SANS-SERIF BOLD SMALL LAMDA
+1D77B	μ	# MATHEMATICAL SANS-SERIF BOLD SMALL MU
+1D77C	ν	# MATHEMATICAL SANS-SERIF BOLD SMALL NU
+1D77D	ξ	# MATHEMATICAL SANS-SERIF BOLD SMALL XI
+1D77E	ο	# MATHEMATICAL SANS-SERIF BOLD SMALL OMICRON
+1D77F	π	# MATHEMATICAL SANS-SERIF BOLD SMALL PI
+1D780	ρ	# MATHEMATICAL SANS-SERIF BOLD SMALL RHO
+1D781	ς	# MATHEMATICAL SANS-SERIF BOLD SMALL FINAL SIGMA
+1D782	σ	# MATHEMATICAL SANS-SERIF BOLD SMALL SIGMA
+1D783	τ	# MATHEMATICAL SANS-SERIF BOLD SMALL TAU
+1D784	υ	# MATHEMATICAL SANS-SERIF BOLD SMALL UPSILON
+1D785	φ	# MATHEMATICAL SANS-SERIF BOLD SMALL PHI
+1D786	χ	# MATHEMATICAL SANS-SERIF BOLD SMALL CHI
+1D787	ψ	# MATHEMATICAL SANS-SERIF BOLD SMALL PSI
+1D788	ω	# MATHEMATICAL SANS-SERIF BOLD SMALL OMEGA
+1D789	∂	# MATHEMATICAL SANS-SERIF BOLD PARTIAL DIFFERENTIAL
+1D78A	ϵ	# MATHEMATICAL SANS-SERIF BOLD EPSILON SYMBOL
+1D78B	ϑ	# MATHEMATICAL SANS-SERIF BOLD THETA SYMBOL
+1D78C	ϰ	# MATHEMATICAL SANS-SERIF BOLD KAPPA SYMBOL
+1D78D	ϕ	# MATHEMATICAL SANS-SERIF BOLD PHI SYMBOL
+1D78E	ϱ	# MATHEMATICAL SANS-SERIF BOLD RHO SYMBOL
+1D78F	ϖ	# MATHEMATICAL SANS-SERIF BOLD PI SYMBOL
+1D790	Α	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL ALPHA
+1D791	Β	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL BETA
+1D792	Γ	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL GAMMA
+1D793	Δ	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL DELTA
+1D794	Ε	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL EPSILON
+1D795	Ζ	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL ZETA
+1D796	Η	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL ETA
+1D797	Θ	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL THETA
+1D798	Ι	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL IOTA
+1D799	Κ	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL KAPPA
+1D79A	Λ	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL LAMDA
+1D79B	Μ	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL MU
+1D79C	Ν	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL NU
+1D79D	Ξ	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL XI
+1D79E	Ο	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL OMICRON
+1D79F	Π	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL PI
+1D7A0	Ρ	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL RHO
+1D7A1	ϴ	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL THETA SYMBOL
+1D7A2	Σ	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL SIGMA
+1D7A3	Τ	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL TAU
+1D7A4	Υ	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL UPSILON
+1D7A5	Φ	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL PHI
+1D7A6	Χ	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL CHI
+1D7A7	Ψ	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL PSI
+1D7A8	Ω	# MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL OMEGA
+1D7A9	∇	# MATHEMATICAL SANS-SERIF BOLD ITALIC NABLA
+1D7AA	α	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL ALPHA
+1D7AB	β	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL BETA
+1D7AC	γ	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL GAMMA
+1D7AD	δ	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL DELTA
+1D7AE	ε	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL EPSILON
+1D7AF	ζ	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL ZETA
+1D7B0	η	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL ETA
+1D7B1	θ	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL THETA
+1D7B2	ι	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL IOTA
+1D7B3	κ	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL KAPPA
+1D7B4	λ	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL LAMDA
+1D7B5	μ	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL MU
+1D7B6	ν	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL NU
+1D7B7	ξ	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL XI
+1D7B8	ο	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL OMICRON
+1D7B9	π	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL PI
+1D7BA	ρ	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL RHO
+1D7BB	ς	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL FINAL SIGMA
+1D7BC	σ	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL SIGMA
+1D7BD	τ	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL TAU
+1D7BE	υ	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL UPSILON
+1D7BF	φ	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL PHI
+1D7C0	χ	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL CHI
+1D7C1	ψ	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL PSI
+1D7C2	ω	# MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL OMEGA
+1D7C3	∂	# MATHEMATICAL SANS-SERIF BOLD ITALIC PARTIAL DIFFERENTIAL
+1D7C4	ϵ	# MATHEMATICAL SANS-SERIF BOLD ITALIC EPSILON SYMBOL
+1D7C5	ϑ	# MATHEMATICAL SANS-SERIF BOLD ITALIC THETA SYMBOL
+1D7C6	ϰ	# MATHEMATICAL SANS-SERIF BOLD ITALIC KAPPA SYMBOL
+1D7C7	ϕ	# MATHEMATICAL SANS-SERIF BOLD ITALIC PHI SYMBOL
+1D7C8	ϱ	# MATHEMATICAL SANS-SERIF BOLD ITALIC RHO SYMBOL
+1D7C9	ϖ	# MATHEMATICAL SANS-SERIF BOLD ITALIC PI SYMBOL
+1D7CE	0	# MATHEMATICAL BOLD DIGIT ZERO
+1D7CF	1	# MATHEMATICAL BOLD DIGIT ONE
+1D7D0	2	# MATHEMATICAL BOLD DIGIT TWO
+1D7D1	3	# MATHEMATICAL BOLD DIGIT THREE
+1D7D2	4	# MATHEMATICAL BOLD DIGIT FOUR
+1D7D3	5	# MATHEMATICAL BOLD DIGIT FIVE
+1D7D4	6	# MATHEMATICAL BOLD DIGIT SIX
+1D7D5	7	# MATHEMATICAL BOLD DIGIT SEVEN
+1D7D6	8	# MATHEMATICAL BOLD DIGIT EIGHT
+1D7D7	9	# MATHEMATICAL BOLD DIGIT NINE
+1D7D8	0	# MATHEMATICAL DOUBLE-STRUCK DIGIT ZERO
+1D7D9	1	# MATHEMATICAL DOUBLE-STRUCK DIGIT ONE
+1D7DA	2	# MATHEMATICAL DOUBLE-STRUCK DIGIT TWO
+1D7DB	3	# MATHEMATICAL DOUBLE-STRUCK DIGIT THREE
+1D7DC	4	# MATHEMATICAL DOUBLE-STRUCK DIGIT FOUR
+1D7DD	5	# MATHEMATICAL DOUBLE-STRUCK DIGIT FIVE
+1D7DE	6	# MATHEMATICAL DOUBLE-STRUCK DIGIT SIX
+1D7DF	7	# MATHEMATICAL DOUBLE-STRUCK DIGIT SEVEN
+1D7E0	8	# MATHEMATICAL DOUBLE-STRUCK DIGIT EIGHT
+1D7E1	9	# MATHEMATICAL DOUBLE-STRUCK DIGIT NINE
+1D7E2	0	# MATHEMATICAL SANS-SERIF DIGIT ZERO
+1D7E3	1	# MATHEMATICAL SANS-SERIF DIGIT ONE
+1D7E4	2	# MATHEMATICAL SANS-SERIF DIGIT TWO
+1D7E5	3	# MATHEMATICAL SANS-SERIF DIGIT THREE
+1D7E6	4	# MATHEMATICAL SANS-SERIF DIGIT FOUR
+1D7E7	5	# MATHEMATICAL SANS-SERIF DIGIT FIVE
+1D7E8	6	# MATHEMATICAL SANS-SERIF DIGIT SIX
+1D7E9	7	# MATHEMATICAL SANS-SERIF DIGIT SEVEN
+1D7EA	8	# MATHEMATICAL SANS-SERIF DIGIT EIGHT
+1D7EB	9	# MATHEMATICAL SANS-SERIF DIGIT NINE
+1D7EC	0	# MATHEMATICAL SANS-SERIF BOLD DIGIT ZERO
+1D7ED	1	# MATHEMATICAL SANS-SERIF BOLD DIGIT ONE
+1D7EE	2	# MATHEMATICAL SANS-SERIF BOLD DIGIT TWO
+1D7EF	3	# MATHEMATICAL SANS-SERIF BOLD DIGIT THREE
+1D7F0	4	# MATHEMATICAL SANS-SERIF BOLD DIGIT FOUR
+1D7F1	5	# MATHEMATICAL SANS-SERIF BOLD DIGIT FIVE
+1D7F2	6	# MATHEMATICAL SANS-SERIF BOLD DIGIT SIX
+1D7F3	7	# MATHEMATICAL SANS-SERIF BOLD DIGIT SEVEN
+1D7F4	8	# MATHEMATICAL SANS-SERIF BOLD DIGIT EIGHT
+1D7F5	9	# MATHEMATICAL SANS-SERIF BOLD DIGIT NINE
+1D7F6	0	# MATHEMATICAL MONOSPACE DIGIT ZERO
+1D7F7	1	# MATHEMATICAL MONOSPACE DIGIT ONE
+1D7F8	2	# MATHEMATICAL MONOSPACE DIGIT TWO
+1D7F9	3	# MATHEMATICAL MONOSPACE DIGIT THREE
+1D7FA	4	# MATHEMATICAL MONOSPACE DIGIT FOUR
+1D7FB	5	# MATHEMATICAL MONOSPACE DIGIT FIVE
+1D7FC	6	# MATHEMATICAL MONOSPACE DIGIT SIX
+1D7FD	7	# MATHEMATICAL MONOSPACE DIGIT SEVEN
+1D7FE	8	# MATHEMATICAL MONOSPACE DIGIT EIGHT
+1D7FF	9	# MATHEMATICAL MONOSPACE DIGIT NINE
+2F800	丽	# CJK COMPATIBILITY IDEOGRAPH-2F800
+2F801	丸	# CJK COMPATIBILITY IDEOGRAPH-2F801
+2F802	乁	# CJK COMPATIBILITY IDEOGRAPH-2F802
+2F803	𠄢	# CJK COMPATIBILITY IDEOGRAPH-2F803
+2F804	你	# CJK COMPATIBILITY IDEOGRAPH-2F804
+2F805	侮	# CJK COMPATIBILITY IDEOGRAPH-2F805
+2F806	侻	# CJK COMPATIBILITY IDEOGRAPH-2F806
+2F807	倂	# CJK COMPATIBILITY IDEOGRAPH-2F807
+2F808	偺	# CJK COMPATIBILITY IDEOGRAPH-2F808
+2F809	備	# CJK COMPATIBILITY IDEOGRAPH-2F809
+2F80A	僧	# CJK COMPATIBILITY IDEOGRAPH-2F80A
+2F80B	像	# CJK COMPATIBILITY IDEOGRAPH-2F80B
+2F80C	㒞	# CJK COMPATIBILITY IDEOGRAPH-2F80C
+2F80D	𠘺	# CJK COMPATIBILITY IDEOGRAPH-2F80D
+2F80E	免	# CJK COMPATIBILITY IDEOGRAPH-2F80E
+2F80F	兔	# CJK COMPATIBILITY IDEOGRAPH-2F80F
+2F810	兤	# CJK COMPATIBILITY IDEOGRAPH-2F810
+2F811	具	# CJK COMPATIBILITY IDEOGRAPH-2F811
+2F812	𠔜	# CJK COMPATIBILITY IDEOGRAPH-2F812
+2F813	㒹	# CJK COMPATIBILITY IDEOGRAPH-2F813
+2F814	內	# CJK COMPATIBILITY IDEOGRAPH-2F814
+2F815	再	# CJK COMPATIBILITY IDEOGRAPH-2F815
+2F816	𠕋	# CJK COMPATIBILITY IDEOGRAPH-2F816
+2F817	冗	# CJK COMPATIBILITY IDEOGRAPH-2F817
+2F818	冤	# CJK COMPATIBILITY IDEOGRAPH-2F818
+2F819	仌	# CJK COMPATIBILITY IDEOGRAPH-2F819
+2F81A	冬	# CJK COMPATIBILITY IDEOGRAPH-2F81A
+2F81B	况	# CJK COMPATIBILITY IDEOGRAPH-2F81B
+2F81C	𩇟	# CJK COMPATIBILITY IDEOGRAPH-2F81C
+2F81D	凵	# CJK COMPATIBILITY IDEOGRAPH-2F81D
+2F81E	刃	# CJK COMPATIBILITY IDEOGRAPH-2F81E
+2F81F	㓟	# CJK COMPATIBILITY IDEOGRAPH-2F81F
+2F820	刻	# CJK COMPATIBILITY IDEOGRAPH-2F820
+2F821	剆	# CJK COMPATIBILITY IDEOGRAPH-2F821
+2F822	割	# CJK COMPATIBILITY IDEOGRAPH-2F822
+2F823	剷	# CJK COMPATIBILITY IDEOGRAPH-2F823
+2F824	㔕	# CJK COMPATIBILITY IDEOGRAPH-2F824
+2F825	勇	# CJK COMPATIBILITY IDEOGRAPH-2F825
+2F826	勉	# CJK COMPATIBILITY IDEOGRAPH-2F826
+2F827	勤	# CJK COMPATIBILITY IDEOGRAPH-2F827
+2F828	勺	# CJK COMPATIBILITY IDEOGRAPH-2F828
+2F829	包	# CJK COMPATIBILITY IDEOGRAPH-2F829
+2F82A	匆	# CJK COMPATIBILITY IDEOGRAPH-2F82A
+2F82B	北	# CJK COMPATIBILITY IDEOGRAPH-2F82B
+2F82C	卉	# CJK COMPATIBILITY IDEOGRAPH-2F82C
+2F82D	卑	# CJK COMPATIBILITY IDEOGRAPH-2F82D
+2F82E	博	# CJK COMPATIBILITY IDEOGRAPH-2F82E
+2F82F	即	# CJK COMPATIBILITY IDEOGRAPH-2F82F
+2F830	卽	# CJK COMPATIBILITY IDEOGRAPH-2F830
+2F831	卿	# CJK COMPATIBILITY IDEOGRAPH-2F831
+2F832	卿	# CJK COMPATIBILITY IDEOGRAPH-2F832
+2F833	卿	# CJK COMPATIBILITY IDEOGRAPH-2F833
+2F834	𠨬	# CJK COMPATIBILITY IDEOGRAPH-2F834
+2F835	灰	# CJK COMPATIBILITY IDEOGRAPH-2F835
+2F836	及	# CJK COMPATIBILITY IDEOGRAPH-2F836
+2F837	叟	# CJK COMPATIBILITY IDEOGRAPH-2F837
+2F838	𠭣	# CJK COMPATIBILITY IDEOGRAPH-2F838
+2F839	叫	# CJK COMPATIBILITY IDEOGRAPH-2F839
+2F83A	叱	# CJK COMPATIBILITY IDEOGRAPH-2F83A
+2F83B	吆	# CJK COMPATIBILITY IDEOGRAPH-2F83B
+2F83C	咞	# CJK COMPATIBILITY IDEOGRAPH-2F83C
+2F83D	吸	# CJK COMPATIBILITY IDEOGRAPH-2F83D
+2F83E	呈	# CJK COMPATIBILITY IDEOGRAPH-2F83E
+2F83F	周	# CJK COMPATIBILITY IDEOGRAPH-2F83F
+2F840	咢	# CJK COMPATIBILITY IDEOGRAPH-2F840
+2F841	哶	# CJK COMPATIBILITY IDEOGRAPH-2F841
+2F842	唐	# CJK COMPATIBILITY IDEOGRAPH-2F842
+2F843	啓	# CJK COMPATIBILITY IDEOGRAPH-2F843
+2F844	啣	# CJK COMPATIBILITY IDEOGRAPH-2F844
+2F845	善	# CJK COMPATIBILITY IDEOGRAPH-2F845
+2F846	善	# CJK COMPATIBILITY IDEOGRAPH-2F846
+2F847	喙	# CJK COMPATIBILITY IDEOGRAPH-2F847
+2F848	喫	# CJK COMPATIBILITY IDEOGRAPH-2F848
+2F849	喳	# CJK COMPATIBILITY IDEOGRAPH-2F849
+2F84A	嗂	# CJK COMPATIBILITY IDEOGRAPH-2F84A
+2F84B	圖	# CJK COMPATIBILITY IDEOGRAPH-2F84B
+2F84C	嘆	# CJK COMPATIBILITY IDEOGRAPH-2F84C
+2F84D	圗	# CJK COMPATIBILITY IDEOGRAPH-2F84D
+2F84E	噑	# CJK COMPATIBILITY IDEOGRAPH-2F84E
+2F84F	噴	# CJK COMPATIBILITY IDEOGRAPH-2F84F
+2F850	切	# CJK COMPATIBILITY IDEOGRAPH-2F850
+2F851	壮	# CJK COMPATIBILITY IDEOGRAPH-2F851
+2F852	城	# CJK COMPATIBILITY IDEOGRAPH-2F852
+2F853	埴	# CJK COMPATIBILITY IDEOGRAPH-2F853
+2F854	堍	# CJK COMPATIBILITY IDEOGRAPH-2F854
+2F855	型	# CJK COMPATIBILITY IDEOGRAPH-2F855
+2F856	堲	# CJK COMPATIBILITY IDEOGRAPH-2F856
+2F857	報	# CJK COMPATIBILITY IDEOGRAPH-2F857
+2F858	墬	# CJK COMPATIBILITY IDEOGRAPH-2F858
+2F859	𡓤	# CJK COMPATIBILITY IDEOGRAPH-2F859
+2F85A	売	# CJK COMPATIBILITY IDEOGRAPH-2F85A
+2F85B	壷	# CJK COMPATIBILITY IDEOGRAPH-2F85B
+2F85C	夆	# CJK COMPATIBILITY IDEOGRAPH-2F85C
+2F85D	多	# CJK COMPATIBILITY IDEOGRAPH-2F85D
+2F85E	夢	# CJK COMPATIBILITY IDEOGRAPH-2F85E
+2F85F	奢	# CJK COMPATIBILITY IDEOGRAPH-2F85F
+2F860	𡚨	# CJK COMPATIBILITY IDEOGRAPH-2F860
+2F861	𡛪	# CJK COMPATIBILITY IDEOGRAPH-2F861
+2F862	姬	# CJK COMPATIBILITY IDEOGRAPH-2F862
+2F863	娛	# CJK COMPATIBILITY IDEOGRAPH-2F863
+2F864	娧	# CJK COMPATIBILITY IDEOGRAPH-2F864
+2F865	姘	# CJK COMPATIBILITY IDEOGRAPH-2F865
+2F866	婦	# CJK COMPATIBILITY IDEOGRAPH-2F866
+2F867	㛮	# CJK COMPATIBILITY IDEOGRAPH-2F867
+2F868	㛼	# CJK COMPATIBILITY IDEOGRAPH-2F868
+2F869	嬈	# CJK COMPATIBILITY IDEOGRAPH-2F869
+2F86A	嬾	# CJK COMPATIBILITY IDEOGRAPH-2F86A
+2F86B	嬾	# CJK COMPATIBILITY IDEOGRAPH-2F86B
+2F86C	𡧈	# CJK COMPATIBILITY IDEOGRAPH-2F86C
+2F86D	寃	# CJK COMPATIBILITY IDEOGRAPH-2F86D
+2F86E	寘	# CJK COMPATIBILITY IDEOGRAPH-2F86E
+2F86F	寧	# CJK COMPATIBILITY IDEOGRAPH-2F86F
+2F870	寳	# CJK COMPATIBILITY IDEOGRAPH-2F870
+2F871	𡬘	# CJK COMPATIBILITY IDEOGRAPH-2F871
+2F872	寿	# CJK COMPATIBILITY IDEOGRAPH-2F872
+2F873	将	# CJK COMPATIBILITY IDEOGRAPH-2F873
+2F874	当	# CJK COMPATIBILITY IDEOGRAPH-2F874
+2F875	尢	# CJK COMPATIBILITY IDEOGRAPH-2F875
+2F876	㞁	# CJK COMPATIBILITY IDEOGRAPH-2F876
+2F877	屠	# CJK COMPATIBILITY IDEOGRAPH-2F877
+2F878	屮	# CJK COMPATIBILITY IDEOGRAPH-2F878
+2F879	峀	# CJK COMPATIBILITY IDEOGRAPH-2F879
+2F87A	岍	# CJK COMPATIBILITY IDEOGRAPH-2F87A
+2F87B	𡷤	# CJK COMPATIBILITY IDEOGRAPH-2F87B
+2F87C	嵃	# CJK COMPATIBILITY IDEOGRAPH-2F87C
+2F87D	𡷦	# CJK COMPATIBILITY IDEOGRAPH-2F87D
+2F87E	嵮	# CJK COMPATIBILITY IDEOGRAPH-2F87E
+2F87F	嵫	# CJK COMPATIBILITY IDEOGRAPH-2F87F
+2F880	嵼	# CJK COMPATIBILITY IDEOGRAPH-2F880
+2F881	巡	# CJK COMPATIBILITY IDEOGRAPH-2F881
+2F882	巢	# CJK COMPATIBILITY IDEOGRAPH-2F882
+2F883	㠯	# CJK COMPATIBILITY IDEOGRAPH-2F883
+2F884	巽	# CJK COMPATIBILITY IDEOGRAPH-2F884
+2F885	帨	# CJK COMPATIBILITY IDEOGRAPH-2F885
+2F886	帽	# CJK COMPATIBILITY IDEOGRAPH-2F886
+2F887	幩	# CJK COMPATIBILITY IDEOGRAPH-2F887
+2F888	㡢	# CJK COMPATIBILITY IDEOGRAPH-2F888
+2F889	𢆃	# CJK COMPATIBILITY IDEOGRAPH-2F889
+2F88A	㡼	# CJK COMPATIBILITY IDEOGRAPH-2F88A
+2F88B	庰	# CJK COMPATIBILITY IDEOGRAPH-2F88B
+2F88C	庳	# CJK COMPATIBILITY IDEOGRAPH-2F88C
+2F88D	庶	# CJK COMPATIBILITY IDEOGRAPH-2F88D
+2F88E	廊	# CJK COMPATIBILITY IDEOGRAPH-2F88E
+2F88F	𪎒	# CJK COMPATIBILITY IDEOGRAPH-2F88F
+2F890	廾	# CJK COMPATIBILITY IDEOGRAPH-2F890
+2F891	𢌱	# CJK COMPATIBILITY IDEOGRAPH-2F891
+2F892	𢌱	# CJK COMPATIBILITY IDEOGRAPH-2F892
+2F893	舁	# CJK COMPATIBILITY IDEOGRAPH-2F893
+2F894	弢	# CJK COMPATIBILITY IDEOGRAPH-2F894
+2F895	弢	# CJK COMPATIBILITY IDEOGRAPH-2F895
+2F896	㣇	# CJK COMPATIBILITY IDEOGRAPH-2F896
+2F897	𣊸	# CJK COMPATIBILITY IDEOGRAPH-2F897
+2F898	𦇚	# CJK COMPATIBILITY IDEOGRAPH-2F898
+2F899	形	# CJK COMPATIBILITY IDEOGRAPH-2F899
+2F89A	彫	# CJK COMPATIBILITY IDEOGRAPH-2F89A
+2F89B	㣣	# CJK COMPATIBILITY IDEOGRAPH-2F89B
+2F89C	徚	# CJK COMPATIBILITY IDEOGRAPH-2F89C
+2F89D	忍	# CJK COMPATIBILITY IDEOGRAPH-2F89D
+2F89E	志	# CJK COMPATIBILITY IDEOGRAPH-2F89E
+2F89F	忹	# CJK COMPATIBILITY IDEOGRAPH-2F89F
+2F8A0	悁	# CJK COMPATIBILITY IDEOGRAPH-2F8A0
+2F8A1	㤺	# CJK COMPATIBILITY IDEOGRAPH-2F8A1
+2F8A2	㤜	# CJK COMPATIBILITY IDEOGRAPH-2F8A2
+2F8A3	悔	# CJK COMPATIBILITY IDEOGRAPH-2F8A3
+2F8A4	𢛔	# CJK COMPATIBILITY IDEOGRAPH-2F8A4
+2F8A5	惇	# CJK COMPATIBILITY IDEOGRAPH-2F8A5
+2F8A6	慈	# CJK COMPATIBILITY IDEOGRAPH-2F8A6
+2F8A7	慌	# CJK COMPATIBILITY IDEOGRAPH-2F8A7
+2F8A8	慎	# CJK COMPATIBILITY IDEOGRAPH-2F8A8
+2F8A9	慌	# CJK COMPATIBILITY IDEOGRAPH-2F8A9
+2F8AA	慺	# CJK COMPATIBILITY IDEOGRAPH-2F8AA
+2F8AB	憎	# CJK COMPATIBILITY IDEOGRAPH-2F8AB
+2F8AC	憲	# CJK COMPATIBILITY IDEOGRAPH-2F8AC
+2F8AD	憤	# CJK COMPATIBILITY IDEOGRAPH-2F8AD
+2F8AE	憯	# CJK COMPATIBILITY IDEOGRAPH-2F8AE
+2F8AF	懞	# CJK COMPATIBILITY IDEOGRAPH-2F8AF
+2F8B0	懲	# CJK COMPATIBILITY IDEOGRAPH-2F8B0
+2F8B1	懶	# CJK COMPATIBILITY IDEOGRAPH-2F8B1
+2F8B2	成	# CJK COMPATIBILITY IDEOGRAPH-2F8B2
+2F8B3	戛	# CJK COMPATIBILITY IDEOGRAPH-2F8B3
+2F8B4	扝	# CJK COMPATIBILITY IDEOGRAPH-2F8B4
+2F8B5	抱	# CJK COMPATIBILITY IDEOGRAPH-2F8B5
+2F8B6	拔	# CJK COMPATIBILITY IDEOGRAPH-2F8B6
+2F8B7	捐	# CJK COMPATIBILITY IDEOGRAPH-2F8B7
+2F8B8	𢬌	# CJK COMPATIBILITY IDEOGRAPH-2F8B8
+2F8B9	挽	# CJK COMPATIBILITY IDEOGRAPH-2F8B9
+2F8BA	拼	# CJK COMPATIBILITY IDEOGRAPH-2F8BA
+2F8BB	捨	# CJK COMPATIBILITY IDEOGRAPH-2F8BB
+2F8BC	掃	# CJK COMPATIBILITY IDEOGRAPH-2F8BC
+2F8BD	揤	# CJK COMPATIBILITY IDEOGRAPH-2F8BD
+2F8BE	𢯱	# CJK COMPATIBILITY IDEOGRAPH-2F8BE
+2F8BF	搢	# CJK COMPATIBILITY IDEOGRAPH-2F8BF
+2F8C0	揅	# CJK COMPATIBILITY IDEOGRAPH-2F8C0
+2F8C1	掩	# CJK COMPATIBILITY IDEOGRAPH-2F8C1
+2F8C2	㨮	# CJK COMPATIBILITY IDEOGRAPH-2F8C2
+2F8C3	摩	# CJK COMPATIBILITY IDEOGRAPH-2F8C3
+2F8C4	摾	# CJK COMPATIBILITY IDEOGRAPH-2F8C4
+2F8C5	撝	# CJK COMPATIBILITY IDEOGRAPH-2F8C5
+2F8C6	摷	# CJK COMPATIBILITY IDEOGRAPH-2F8C6
+2F8C7	㩬	# CJK COMPATIBILITY IDEOGRAPH-2F8C7
+2F8C8	敏	# CJK COMPATIBILITY IDEOGRAPH-2F8C8
+2F8C9	敬	# CJK COMPATIBILITY IDEOGRAPH-2F8C9
+2F8CA	𣀊	# CJK COMPATIBILITY IDEOGRAPH-2F8CA
+2F8CB	旣	# CJK COMPATIBILITY IDEOGRAPH-2F8CB
+2F8CC	書	# CJK COMPATIBILITY IDEOGRAPH-2F8CC
+2F8CD	晉	# CJK COMPATIBILITY IDEOGRAPH-2F8CD
+2F8CE	㬙	# CJK COMPATIBILITY IDEOGRAPH-2F8CE
+2F8CF	暑	# CJK COMPATIBILITY IDEOGRAPH-2F8CF
+2F8D0	㬈	# CJK COMPATIBILITY IDEOGRAPH-2F8D0
+2F8D1	㫤	# CJK COMPATIBILITY IDEOGRAPH-2F8D1
+2F8D2	冒	# CJK COMPATIBILITY IDEOGRAPH-2F8D2
+2F8D3	冕	# CJK COMPATIBILITY IDEOGRAPH-2F8D3
+2F8D4	最	# CJK COMPATIBILITY IDEOGRAPH-2F8D4
+2F8D5	暜	# CJK COMPATIBILITY IDEOGRAPH-2F8D5
+2F8D6	肭	# CJK COMPATIBILITY IDEOGRAPH-2F8D6
+2F8D7	䏙	# CJK COMPATIBILITY IDEOGRAPH-2F8D7
+2F8D8	朗	# CJK COMPATIBILITY IDEOGRAPH-2F8D8
+2F8D9	望	# CJK COMPATIBILITY IDEOGRAPH-2F8D9
+2F8DA	朡	# CJK COMPATIBILITY IDEOGRAPH-2F8DA
+2F8DB	杞	# CJK COMPATIBILITY IDEOGRAPH-2F8DB
+2F8DC	杓	# CJK COMPATIBILITY IDEOGRAPH-2F8DC
+2F8DD	𣏃	# CJK COMPATIBILITY IDEOGRAPH-2F8DD
+2F8DE	㭉	# CJK COMPATIBILITY IDEOGRAPH-2F8DE
+2F8DF	柺	# CJK COMPATIBILITY IDEOGRAPH-2F8DF
+2F8E0	枅	# CJK COMPATIBILITY IDEOGRAPH-2F8E0
+2F8E1	桒	# CJK COMPATIBILITY IDEOGRAPH-2F8E1
+2F8E2	梅	# CJK COMPATIBILITY IDEOGRAPH-2F8E2
+2F8E3	𣑭	# CJK COMPATIBILITY IDEOGRAPH-2F8E3
+2F8E4	梎	# CJK COMPATIBILITY IDEOGRAPH-2F8E4
+2F8E5	栟	# CJK COMPATIBILITY IDEOGRAPH-2F8E5
+2F8E6	椔	# CJK COMPATIBILITY IDEOGRAPH-2F8E6
+2F8E7	㮝	# CJK COMPATIBILITY IDEOGRAPH-2F8E7
+2F8E8	楂	# CJK COMPATIBILITY IDEOGRAPH-2F8E8
+2F8E9	榣	# CJK COMPATIBILITY IDEOGRAPH-2F8E9
+2F8EA	槪	# CJK COMPATIBILITY IDEOGRAPH-2F8EA
+2F8EB	檨	# CJK COMPATIBILITY IDEOGRAPH-2F8EB
+2F8EC	𣚣	# CJK COMPATIBILITY IDEOGRAPH-2F8EC
+2F8ED	櫛	# CJK COMPATIBILITY IDEOGRAPH-2F8ED
+2F8EE	㰘	# CJK COMPATIBILITY IDEOGRAPH-2F8EE
+2F8EF	次	# CJK COMPATIBILITY IDEOGRAPH-2F8EF
+2F8F0	𣢧	# CJK COMPATIBILITY IDEOGRAPH-2F8F0
+2F8F1	歔	# CJK COMPATIBILITY IDEOGRAPH-2F8F1
+2F8F2	㱎	# CJK COMPATIBILITY IDEOGRAPH-2F8F2
+2F8F3	歲	# CJK COMPATIBILITY IDEOGRAPH-2F8F3
+2F8F4	殟	# CJK COMPATIBILITY IDEOGRAPH-2F8F4
+2F8F5	殺	# CJK COMPATIBILITY IDEOGRAPH-2F8F5
+2F8F6	殻	# CJK COMPATIBILITY IDEOGRAPH-2F8F6
+2F8F7	𣪍	# CJK COMPATIBILITY IDEOGRAPH-2F8F7
+2F8F8	𡴋	# CJK COMPATIBILITY IDEOGRAPH-2F8F8
+2F8F9	𣫺	# CJK COMPATIBILITY IDEOGRAPH-2F8F9
+2F8FA	汎	# CJK COMPATIBILITY IDEOGRAPH-2F8FA
+2F8FB	𣲼	# CJK COMPATIBILITY IDEOGRAPH-2F8FB
+2F8FC	沿	# CJK COMPATIBILITY IDEOGRAPH-2F8FC
+2F8FD	泍	# CJK COMPATIBILITY IDEOGRAPH-2F8FD
+2F8FE	汧	# CJK COMPATIBILITY IDEOGRAPH-2F8FE
+2F8FF	洖	# CJK COMPATIBILITY IDEOGRAPH-2F8FF
+2F900	派	# CJK COMPATIBILITY IDEOGRAPH-2F900
+2F901	海	# CJK COMPATIBILITY IDEOGRAPH-2F901
+2F902	流	# CJK COMPATIBILITY IDEOGRAPH-2F902
+2F903	浩	# CJK COMPATIBILITY IDEOGRAPH-2F903
+2F904	浸	# CJK COMPATIBILITY IDEOGRAPH-2F904
+2F905	涅	# CJK COMPATIBILITY IDEOGRAPH-2F905
+2F906	𣴞	# CJK COMPATIBILITY IDEOGRAPH-2F906
+2F907	洴	# CJK COMPATIBILITY IDEOGRAPH-2F907
+2F908	港	# CJK COMPATIBILITY IDEOGRAPH-2F908
+2F909	湮	# CJK COMPATIBILITY IDEOGRAPH-2F909
+2F90A	㴳	# CJK COMPATIBILITY IDEOGRAPH-2F90A
+2F90B	滋	# CJK COMPATIBILITY IDEOGRAPH-2F90B
+2F90C	滇	# CJK COMPATIBILITY IDEOGRAPH-2F90C
+2F90D	𣻑	# CJK COMPATIBILITY IDEOGRAPH-2F90D
+2F90E	淹	# CJK COMPATIBILITY IDEOGRAPH-2F90E
+2F90F	潮	# CJK COMPATIBILITY IDEOGRAPH-2F90F
+2F910	𣽞	# CJK COMPATIBILITY IDEOGRAPH-2F910
+2F911	𣾎	# CJK COMPATIBILITY IDEOGRAPH-2F911
+2F912	濆	# CJK COMPATIBILITY IDEOGRAPH-2F912
+2F913	瀹	# CJK COMPATIBILITY IDEOGRAPH-2F913
+2F914	瀞	# CJK COMPATIBILITY IDEOGRAPH-2F914
+2F915	瀛	# CJK COMPATIBILITY IDEOGRAPH-2F915
+2F916	㶖	# CJK COMPATIBILITY IDEOGRAPH-2F916
+2F917	灊	# CJK COMPATIBILITY IDEOGRAPH-2F917
+2F918	災	# CJK COMPATIBILITY IDEOGRAPH-2F918
+2F919	灷	# CJK COMPATIBILITY IDEOGRAPH-2F919
+2F91A	炭	# CJK COMPATIBILITY IDEOGRAPH-2F91A
+2F91B	𠔥	# CJK COMPATIBILITY IDEOGRAPH-2F91B
+2F91C	煅	# CJK COMPATIBILITY IDEOGRAPH-2F91C
+2F91D	𤉣	# CJK COMPATIBILITY IDEOGRAPH-2F91D
+2F91E	熜	# CJK COMPATIBILITY IDEOGRAPH-2F91E
+2F91F	𤎫	# CJK COMPATIBILITY IDEOGRAPH-2F91F
+2F920	爨	# CJK COMPATIBILITY IDEOGRAPH-2F920
+2F921	爵	# CJK COMPATIBILITY IDEOGRAPH-2F921
+2F922	牐	# CJK COMPATIBILITY IDEOGRAPH-2F922
+2F923	𤘈	# CJK COMPATIBILITY IDEOGRAPH-2F923
+2F924	犀	# CJK COMPATIBILITY IDEOGRAPH-2F924
+2F925	犕	# CJK COMPATIBILITY IDEOGRAPH-2F925
+2F926	𤜵	# CJK COMPATIBILITY IDEOGRAPH-2F926
+2F927	𤠔	# CJK COMPATIBILITY IDEOGRAPH-2F927
+2F928	獺	# CJK COMPATIBILITY IDEOGRAPH-2F928
+2F929	王	# CJK COMPATIBILITY IDEOGRAPH-2F929
+2F92A	㺬	# CJK COMPATIBILITY IDEOGRAPH-2F92A
+2F92B	玥	# CJK COMPATIBILITY IDEOGRAPH-2F92B
+2F92C	㺸	# CJK COMPATIBILITY IDEOGRAPH-2F92C
+2F92D	㺸	# CJK COMPATIBILITY IDEOGRAPH-2F92D
+2F92E	瑇	# CJK COMPATIBILITY IDEOGRAPH-2F92E
+2F92F	瑜	# CJK COMPATIBILITY IDEOGRAPH-2F92F
+2F930	瑱	# CJK COMPATIBILITY IDEOGRAPH-2F930
+2F931	璅	# CJK COMPATIBILITY IDEOGRAPH-2F931
+2F932	瓊	# CJK COMPATIBILITY IDEOGRAPH-2F932
+2F933	㼛	# CJK COMPATIBILITY IDEOGRAPH-2F933
+2F934	甤	# CJK COMPATIBILITY IDEOGRAPH-2F934
+2F935	𤰶	# CJK COMPATIBILITY IDEOGRAPH-2F935
+2F936	甾	# CJK COMPATIBILITY IDEOGRAPH-2F936
+2F937	𤲒	# CJK COMPATIBILITY IDEOGRAPH-2F937
+2F938	異	# CJK COMPATIBILITY IDEOGRAPH-2F938
+2F939	𢆟	# CJK COMPATIBILITY IDEOGRAPH-2F939
+2F93A	瘐	# CJK COMPATIBILITY IDEOGRAPH-2F93A
+2F93B	𤾡	# CJK COMPATIBILITY IDEOGRAPH-2F93B
+2F93C	𤾸	# CJK COMPATIBILITY IDEOGRAPH-2F93C
+2F93D	𥁄	# CJK COMPATIBILITY IDEOGRAPH-2F93D
+2F93E	㿼	# CJK COMPATIBILITY IDEOGRAPH-2F93E
+2F93F	䀈	# CJK COMPATIBILITY IDEOGRAPH-2F93F
+2F940	直	# CJK COMPATIBILITY IDEOGRAPH-2F940
+2F941	𥃳	# CJK COMPATIBILITY IDEOGRAPH-2F941
+2F942	𥃲	# CJK COMPATIBILITY IDEOGRAPH-2F942
+2F943	𥄙	# CJK COMPATIBILITY IDEOGRAPH-2F943
+2F944	𥄳	# CJK COMPATIBILITY IDEOGRAPH-2F944
+2F945	眞	# CJK COMPATIBILITY IDEOGRAPH-2F945
+2F946	真	# CJK COMPATIBILITY IDEOGRAPH-2F946
+2F947	真	# CJK COMPATIBILITY IDEOGRAPH-2F947
+2F948	睊	# CJK COMPATIBILITY IDEOGRAPH-2F948
+2F949	䀹	# CJK COMPATIBILITY IDEOGRAPH-2F949
+2F94A	瞋	# CJK COMPATIBILITY IDEOGRAPH-2F94A
+2F94B	䁆	# CJK COMPATIBILITY IDEOGRAPH-2F94B
+2F94C	䂖	# CJK COMPATIBILITY IDEOGRAPH-2F94C
+2F94D	𥐝	# CJK COMPATIBILITY IDEOGRAPH-2F94D
+2F94E	硎	# CJK COMPATIBILITY IDEOGRAPH-2F94E
+2F94F	碌	# CJK COMPATIBILITY IDEOGRAPH-2F94F
+2F950	磌	# CJK COMPATIBILITY IDEOGRAPH-2F950
+2F951	䃣	# CJK COMPATIBILITY IDEOGRAPH-2F951
+2F952	𥘦	# CJK COMPATIBILITY IDEOGRAPH-2F952
+2F953	祖	# CJK COMPATIBILITY IDEOGRAPH-2F953
+2F954	𥚚	# CJK COMPATIBILITY IDEOGRAPH-2F954
+2F955	𥛅	# CJK COMPATIBILITY IDEOGRAPH-2F955
+2F956	福	# CJK COMPATIBILITY IDEOGRAPH-2F956
+2F957	秫	# CJK COMPATIBILITY IDEOGRAPH-2F957
+2F958	䄯	# CJK COMPATIBILITY IDEOGRAPH-2F958
+2F959	穀	# CJK COMPATIBILITY IDEOGRAPH-2F959
+2F95A	穊	# CJK COMPATIBILITY IDEOGRAPH-2F95A
+2F95B	穏	# CJK COMPATIBILITY IDEOGRAPH-2F95B
+2F95C	𥥼	# CJK COMPATIBILITY IDEOGRAPH-2F95C
+2F95D	𥪧	# CJK COMPATIBILITY IDEOGRAPH-2F95D
+2F95E	𥪧	# CJK COMPATIBILITY IDEOGRAPH-2F95E
+2F95F	竮	# CJK COMPATIBILITY IDEOGRAPH-2F95F
+2F960	䈂	# CJK COMPATIBILITY IDEOGRAPH-2F960
+2F961	𥮫	# CJK COMPATIBILITY IDEOGRAPH-2F961
+2F962	篆	# CJK COMPATIBILITY IDEOGRAPH-2F962
+2F963	築	# CJK COMPATIBILITY IDEOGRAPH-2F963
+2F964	䈧	# CJK COMPATIBILITY IDEOGRAPH-2F964
+2F965	𥲀	# CJK COMPATIBILITY IDEOGRAPH-2F965
+2F966	糒	# CJK COMPATIBILITY IDEOGRAPH-2F966
+2F967	䊠	# CJK COMPATIBILITY IDEOGRAPH-2F967
+2F968	糨	# CJK COMPATIBILITY IDEOGRAPH-2F968
+2F969	糣	# CJK COMPATIBILITY IDEOGRAPH-2F969
+2F96A	紀	# CJK COMPATIBILITY IDEOGRAPH-2F96A
+2F96B	𥾆	# CJK COMPATIBILITY IDEOGRAPH-2F96B
+2F96C	絣	# CJK COMPATIBILITY IDEOGRAPH-2F96C
+2F96D	䌁	# CJK COMPATIBILITY IDEOGRAPH-2F96D
+2F96E	緇	# CJK COMPATIBILITY IDEOGRAPH-2F96E
+2F96F	縂	# CJK COMPATIBILITY IDEOGRAPH-2F96F
+2F970	繅	# CJK COMPATIBILITY IDEOGRAPH-2F970
+2F971	䌴	# CJK COMPATIBILITY IDEOGRAPH-2F971
+2F972	𦈨	# CJK COMPATIBILITY IDEOGRAPH-2F972
+2F973	𦉇	# CJK COMPATIBILITY IDEOGRAPH-2F973
+2F974	䍙	# CJK COMPATIBILITY IDEOGRAPH-2F974
+2F975	𦋙	# CJK COMPATIBILITY IDEOGRAPH-2F975
+2F976	罺	# CJK COMPATIBILITY IDEOGRAPH-2F976
+2F977	𦌾	# CJK COMPATIBILITY IDEOGRAPH-2F977
+2F978	羕	# CJK COMPATIBILITY IDEOGRAPH-2F978
+2F979	翺	# CJK COMPATIBILITY IDEOGRAPH-2F979
+2F97A	者	# CJK COMPATIBILITY IDEOGRAPH-2F97A
+2F97B	𦓚	# CJK COMPATIBILITY IDEOGRAPH-2F97B
+2F97C	𦔣	# CJK COMPATIBILITY IDEOGRAPH-2F97C
+2F97D	聠	# CJK COMPATIBILITY IDEOGRAPH-2F97D
+2F97E	𦖨	# CJK COMPATIBILITY IDEOGRAPH-2F97E
+2F97F	聰	# CJK COMPATIBILITY IDEOGRAPH-2F97F
+2F980	𣍟	# CJK COMPATIBILITY IDEOGRAPH-2F980
+2F981	䏕	# CJK COMPATIBILITY IDEOGRAPH-2F981
+2F982	育	# CJK COMPATIBILITY IDEOGRAPH-2F982
+2F983	脃	# CJK COMPATIBILITY IDEOGRAPH-2F983
+2F984	䐋	# CJK COMPATIBILITY IDEOGRAPH-2F984
+2F985	脾	# CJK COMPATIBILITY IDEOGRAPH-2F985
+2F986	媵	# CJK COMPATIBILITY IDEOGRAPH-2F986
+2F987	𦞧	# CJK COMPATIBILITY IDEOGRAPH-2F987
+2F988	𦞵	# CJK COMPATIBILITY IDEOGRAPH-2F988
+2F989	𣎓	# CJK COMPATIBILITY IDEOGRAPH-2F989
+2F98A	𣎜	# CJK COMPATIBILITY IDEOGRAPH-2F98A
+2F98B	舁	# CJK COMPATIBILITY IDEOGRAPH-2F98B
+2F98C	舄	# CJK COMPATIBILITY IDEOGRAPH-2F98C
+2F98D	辞	# CJK COMPATIBILITY IDEOGRAPH-2F98D
+2F98E	䑫	# CJK COMPATIBILITY IDEOGRAPH-2F98E
+2F98F	芑	# CJK COMPATIBILITY IDEOGRAPH-2F98F
+2F990	芋	# CJK COMPATIBILITY IDEOGRAPH-2F990
+2F991	芝	# CJK COMPATIBILITY IDEOGRAPH-2F991
+2F992	劳	# CJK COMPATIBILITY IDEOGRAPH-2F992
+2F993	花	# CJK COMPATIBILITY IDEOGRAPH-2F993
+2F994	芳	# CJK COMPATIBILITY IDEOGRAPH-2F994
+2F995	芽	# CJK COMPATIBILITY IDEOGRAPH-2F995
+2F996	苦	# CJK COMPATIBILITY IDEOGRAPH-2F996
+2F997	𦬼	# CJK COMPATIBILITY IDEOGRAPH-2F997
+2F998	若	# CJK COMPATIBILITY IDEOGRAPH-2F998
+2F999	茝	# CJK COMPATIBILITY IDEOGRAPH-2F999
+2F99A	荣	# CJK COMPATIBILITY IDEOGRAPH-2F99A
+2F99B	莭	# CJK COMPATIBILITY IDEOGRAPH-2F99B
+2F99C	茣	# CJK COMPATIBILITY IDEOGRAPH-2F99C
+2F99D	莽	# CJK COMPATIBILITY IDEOGRAPH-2F99D
+2F99E	菧	# CJK COMPATIBILITY IDEOGRAPH-2F99E
+2F99F	著	# CJK COMPATIBILITY IDEOGRAPH-2F99F
+2F9A0	荓	# CJK COMPATIBILITY IDEOGRAPH-2F9A0
+2F9A1	菊	# CJK COMPATIBILITY IDEOGRAPH-2F9A1
+2F9A2	菌	# CJK COMPATIBILITY IDEOGRAPH-2F9A2
+2F9A3	菜	# CJK COMPATIBILITY IDEOGRAPH-2F9A3
+2F9A4	𦰶	# CJK COMPATIBILITY IDEOGRAPH-2F9A4
+2F9A5	𦵫	# CJK COMPATIBILITY IDEOGRAPH-2F9A5
+2F9A6	𦳕	# CJK COMPATIBILITY IDEOGRAPH-2F9A6
+2F9A7	䔫	# CJK COMPATIBILITY IDEOGRAPH-2F9A7
+2F9A8	蓱	# CJK COMPATIBILITY IDEOGRAPH-2F9A8
+2F9A9	蓳	# CJK COMPATIBILITY IDEOGRAPH-2F9A9
+2F9AA	蔖	# CJK COMPATIBILITY IDEOGRAPH-2F9AA
+2F9AB	𧏊	# CJK COMPATIBILITY IDEOGRAPH-2F9AB
+2F9AC	蕤	# CJK COMPATIBILITY IDEOGRAPH-2F9AC
+2F9AD	𦼬	# CJK COMPATIBILITY IDEOGRAPH-2F9AD
+2F9AE	䕝	# CJK COMPATIBILITY IDEOGRAPH-2F9AE
+2F9AF	䕡	# CJK COMPATIBILITY IDEOGRAPH-2F9AF
+2F9B0	𦾱	# CJK COMPATIBILITY IDEOGRAPH-2F9B0
+2F9B1	𧃒	# CJK COMPATIBILITY IDEOGRAPH-2F9B1
+2F9B2	䕫	# CJK COMPATIBILITY IDEOGRAPH-2F9B2
+2F9B3	虐	# CJK COMPATIBILITY IDEOGRAPH-2F9B3
+2F9B4	虜	# CJK COMPATIBILITY IDEOGRAPH-2F9B4
+2F9B5	虧	# CJK COMPATIBILITY IDEOGRAPH-2F9B5
+2F9B6	虩	# CJK COMPATIBILITY IDEOGRAPH-2F9B6
+2F9B7	蚩	# CJK COMPATIBILITY IDEOGRAPH-2F9B7
+2F9B8	蚈	# CJK COMPATIBILITY IDEOGRAPH-2F9B8
+2F9B9	蜎	# CJK COMPATIBILITY IDEOGRAPH-2F9B9
+2F9BA	蛢	# CJK COMPATIBILITY IDEOGRAPH-2F9BA
+2F9BB	蝹	# CJK COMPATIBILITY IDEOGRAPH-2F9BB
+2F9BC	蜨	# CJK COMPATIBILITY IDEOGRAPH-2F9BC
+2F9BD	蝫	# CJK COMPATIBILITY IDEOGRAPH-2F9BD
+2F9BE	螆	# CJK COMPATIBILITY IDEOGRAPH-2F9BE
+2F9BF	䗗	# CJK COMPATIBILITY IDEOGRAPH-2F9BF
+2F9C0	蟡	# CJK COMPATIBILITY IDEOGRAPH-2F9C0
+2F9C1	蠁	# CJK COMPATIBILITY IDEOGRAPH-2F9C1
+2F9C2	䗹	# CJK COMPATIBILITY IDEOGRAPH-2F9C2
+2F9C3	衠	# CJK COMPATIBILITY IDEOGRAPH-2F9C3
+2F9C4	衣	# CJK COMPATIBILITY IDEOGRAPH-2F9C4
+2F9C5	𧙧	# CJK COMPATIBILITY IDEOGRAPH-2F9C5
+2F9C6	裗	# CJK COMPATIBILITY IDEOGRAPH-2F9C6
+2F9C7	裞	# CJK COMPATIBILITY IDEOGRAPH-2F9C7
+2F9C8	䘵	# CJK COMPATIBILITY IDEOGRAPH-2F9C8
+2F9C9	裺	# CJK COMPATIBILITY IDEOGRAPH-2F9C9
+2F9CA	㒻	# CJK COMPATIBILITY IDEOGRAPH-2F9CA
+2F9CB	𧢮	# CJK COMPATIBILITY IDEOGRAPH-2F9CB
+2F9CC	𧥦	# CJK COMPATIBILITY IDEOGRAPH-2F9CC
+2F9CD	䚾	# CJK COMPATIBILITY IDEOGRAPH-2F9CD
+2F9CE	䛇	# CJK COMPATIBILITY IDEOGRAPH-2F9CE
+2F9CF	誠	# CJK COMPATIBILITY IDEOGRAPH-2F9CF
+2F9D0	諭	# CJK COMPATIBILITY IDEOGRAPH-2F9D0
+2F9D1	變	# CJK COMPATIBILITY IDEOGRAPH-2F9D1
+2F9D2	豕	# CJK COMPATIBILITY IDEOGRAPH-2F9D2
+2F9D3	𧲨	# CJK COMPATIBILITY IDEOGRAPH-2F9D3
+2F9D4	貫	# CJK COMPATIBILITY IDEOGRAPH-2F9D4
+2F9D5	賁	# CJK COMPATIBILITY IDEOGRAPH-2F9D5
+2F9D6	贛	# CJK COMPATIBILITY IDEOGRAPH-2F9D6
+2F9D7	起	# CJK COMPATIBILITY IDEOGRAPH-2F9D7
+2F9D8	𧼯	# CJK COMPATIBILITY IDEOGRAPH-2F9D8
+2F9D9	𠠄	# CJK COMPATIBILITY IDEOGRAPH-2F9D9
+2F9DA	跋	# CJK COMPATIBILITY IDEOGRAPH-2F9DA
+2F9DB	趼	# CJK COMPATIBILITY IDEOGRAPH-2F9DB
+2F9DC	跰	# CJK COMPATIBILITY IDEOGRAPH-2F9DC
+2F9DD	𠣞	# CJK COMPATIBILITY IDEOGRAPH-2F9DD
+2F9DE	軔	# CJK COMPATIBILITY IDEOGRAPH-2F9DE
+2F9DF	輸	# CJK COMPATIBILITY IDEOGRAPH-2F9DF
+2F9E0	𨗒	# CJK COMPATIBILITY IDEOGRAPH-2F9E0
+2F9E1	𨗭	# CJK COMPATIBILITY IDEOGRAPH-2F9E1
+2F9E2	邔	# CJK COMPATIBILITY IDEOGRAPH-2F9E2
+2F9E3	郱	# CJK COMPATIBILITY IDEOGRAPH-2F9E3
+2F9E4	鄑	# CJK COMPATIBILITY IDEOGRAPH-2F9E4
+2F9E5	𨜮	# CJK COMPATIBILITY IDEOGRAPH-2F9E5
+2F9E6	鄛	# CJK COMPATIBILITY IDEOGRAPH-2F9E6
+2F9E7	鈸	# CJK COMPATIBILITY IDEOGRAPH-2F9E7
+2F9E8	鋗	# CJK COMPATIBILITY IDEOGRAPH-2F9E8
+2F9E9	鋘	# CJK COMPATIBILITY IDEOGRAPH-2F9E9
+2F9EA	鉼	# CJK COMPATIBILITY IDEOGRAPH-2F9EA
+2F9EB	鏹	# CJK COMPATIBILITY IDEOGRAPH-2F9EB
+2F9EC	鐕	# CJK COMPATIBILITY IDEOGRAPH-2F9EC
+2F9ED	𨯺	# CJK COMPATIBILITY IDEOGRAPH-2F9ED
+2F9EE	開	# CJK COMPATIBILITY IDEOGRAPH-2F9EE
+2F9EF	䦕	# CJK COMPATIBILITY IDEOGRAPH-2F9EF
+2F9F0	閷	# CJK COMPATIBILITY IDEOGRAPH-2F9F0
+2F9F1	𨵷	# CJK COMPATIBILITY IDEOGRAPH-2F9F1
+2F9F2	䧦	# CJK COMPATIBILITY IDEOGRAPH-2F9F2
+2F9F3	雃	# CJK COMPATIBILITY IDEOGRAPH-2F9F3
+2F9F4	嶲	# CJK COMPATIBILITY IDEOGRAPH-2F9F4
+2F9F5	霣	# CJK COMPATIBILITY IDEOGRAPH-2F9F5
+2F9F6	𩅅	# CJK COMPATIBILITY IDEOGRAPH-2F9F6
+2F9F7	𩈚	# CJK COMPATIBILITY IDEOGRAPH-2F9F7
+2F9F8	䩮	# CJK COMPATIBILITY IDEOGRAPH-2F9F8
+2F9F9	䩶	# CJK COMPATIBILITY IDEOGRAPH-2F9F9
+2F9FA	韠	# CJK COMPATIBILITY IDEOGRAPH-2F9FA
+2F9FB	𩐊	# CJK COMPATIBILITY IDEOGRAPH-2F9FB
+2F9FC	䪲	# CJK COMPATIBILITY IDEOGRAPH-2F9FC
+2F9FD	𩒖	# CJK COMPATIBILITY IDEOGRAPH-2F9FD
+2F9FE	頋	# CJK COMPATIBILITY IDEOGRAPH-2F9FE
+2F9FF	頋	# CJK COMPATIBILITY IDEOGRAPH-2F9FF
+2FA00	頩	# CJK COMPATIBILITY IDEOGRAPH-2FA00
+2FA01	𩖶	# CJK COMPATIBILITY IDEOGRAPH-2FA01
+2FA02	飢	# CJK COMPATIBILITY IDEOGRAPH-2FA02
+2FA03	䬳	# CJK COMPATIBILITY IDEOGRAPH-2FA03
+2FA04	餩	# CJK COMPATIBILITY IDEOGRAPH-2FA04
+2FA05	馧	# CJK COMPATIBILITY IDEOGRAPH-2FA05
+2FA06	駂	# CJK COMPATIBILITY IDEOGRAPH-2FA06
+2FA07	駾	# CJK COMPATIBILITY IDEOGRAPH-2FA07
+2FA08	䯎	# CJK COMPATIBILITY IDEOGRAPH-2FA08
+2FA09	𩬰	# CJK COMPATIBILITY IDEOGRAPH-2FA09
+2FA0A	鬒	# CJK COMPATIBILITY IDEOGRAPH-2FA0A
+2FA0B	鱀	# CJK COMPATIBILITY IDEOGRAPH-2FA0B
+2FA0C	鳽	# CJK COMPATIBILITY IDEOGRAPH-2FA0C
+2FA0D	䳎	# CJK COMPATIBILITY IDEOGRAPH-2FA0D
+2FA0E	䳭	# CJK COMPATIBILITY IDEOGRAPH-2FA0E
+2FA0F	鵧	# CJK COMPATIBILITY IDEOGRAPH-2FA0F
+2FA10	𪃎	# CJK COMPATIBILITY IDEOGRAPH-2FA10
+2FA11	䳸	# CJK COMPATIBILITY IDEOGRAPH-2FA11
+2FA12	𪄅	# CJK COMPATIBILITY IDEOGRAPH-2FA12
+2FA13	𪈎	# CJK COMPATIBILITY IDEOGRAPH-2FA13
+2FA14	𪊑	# CJK COMPATIBILITY IDEOGRAPH-2FA14
+2FA15	麻	# CJK COMPATIBILITY IDEOGRAPH-2FA15
+2FA16	䵖	# CJK COMPATIBILITY IDEOGRAPH-2FA16
+2FA17	黹	# CJK COMPATIBILITY IDEOGRAPH-2FA17
+2FA18	黾	# CJK COMPATIBILITY IDEOGRAPH-2FA18
+2FA19	鼅	# CJK COMPATIBILITY IDEOGRAPH-2FA19
+2FA1A	鼏	# CJK COMPATIBILITY IDEOGRAPH-2FA1A
+2FA1B	鼖	# CJK COMPATIBILITY IDEOGRAPH-2FA1B
+2FA1C	鼻	# CJK COMPATIBILITY IDEOGRAPH-2FA1C
+2FA1D	𪘀	# CJK COMPATIBILITY IDEOGRAPH-2FA1D
diff --git a/graf2d/win32gdk/gdk/src/iconv/translit.h b/graf2d/win32gdk/gdk/src/iconv/translit.h
new file mode 100644
index 00000000000..15aa4472641
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/translit.h
@@ -0,0 +1,4411 @@
+/*
+ * Copyright (C) 1999-2003 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * Transliteration table
+ */
+
+static const unsigned int translit_data[9116] = {
+   1, ' ',
+   1, '!',
+   1, 'c',
+   2, 'l', 'b',
+   3, 'y', 'e', 'n',
+   1, '|',
+   2, 'S', 'S',
+   1, '"',
+   3, '(', 'c', ')',
+   1, 'a',
+   2, '<', '<',
+   3, 'n', 'o', 't',
+   1, '-',
+   3, '(', 'R', ')',
+   2, '^', '0',
+   3, '+', '/', '-',
+   2, '^', '2',
+   2, '^', '3',
+   1,'\'',
+   1, 'u',
+   1, 'P',
+   1, '.',
+   1, ',',
+   2, '^', '1',
+   1, 'o',
+   2, '>', '>',
+   5, ' ', '1',0x2044, '4', ' ',
+   5, ' ', '1',0x2044, '2', ' ',
+   5, ' ', '3',0x2044, '4', ' ',
+   1, '?',
+   2, '`', 'A',
+   2,0xB4, 'A',
+   2, '^', 'A',
+   2, '~', 'A',
+   2, '"', 'A',
+   1, 'A',
+   2, 'A', 'E',
+   1, 'C',
+   2, '`', 'E',
+   2,0xB4, 'E',
+   2, '^', 'E',
+   2, '"', 'E',
+   2, '`', 'I',
+   2,0xB4, 'I',
+   2, '^', 'I',
+   2, '"', 'I',
+   1, 'D',
+   2, '~', 'N',
+   2, '`', 'O',
+   2,0xB4, 'O',
+   2, '^', 'O',
+   2, '~', 'O',
+   2, '"', 'O',
+   1, 'x',
+   1, 'O',
+   2, '`', 'U',
+   2,0xB4, 'U',
+   2, '^', 'U',
+   2, '"', 'U',
+   2,0xB4, 'Y',
+   2, 'T', 'h',
+   2, 's', 's',
+   2, '`', 'a',
+   2,0xB4, 'a',
+   2, '^', 'a',
+   2, '~', 'a',
+   2, '"', 'a',
+   1, 'a',
+   2, 'a', 'e',
+   1, 'c',
+   2, '`', 'e',
+   2,0xB4, 'e',
+   2, '^', 'e',
+   2, '"', 'e',
+   2, '`', 'i',
+   2,0xB4, 'i',
+   2, '^', 'i',
+   2, '"', 'i',
+   1, 'd',
+   2, '~', 'n',
+   2, '`', 'o',
+   2,0xB4, 'o',
+   2, '^', 'o',
+   2, '~', 'o',
+   2, '"', 'o',
+   1, ':',
+   1, 'o',
+   2, '`', 'u',
+   2,0xB4, 'u',
+   2, '^', 'u',
+   2, '"', 'u',
+   2,0xB4, 'y',
+   2, 't', 'h',
+   2, '"', 'y',
+   1, 'A',
+   1, 'a',
+   1, 'A',
+   1, 'a',
+   1, 'A',
+   1, 'a',
+   2,0xB4, 'C',
+   2,0xB4, 'c',
+   2, '^', 'C',
+   2, '^', 'c',
+   1, 'C',
+   1, 'c',
+   1, 'C',
+   1, 'c',
+   1, 'D',
+   1, 'd',
+   1, 'D',
+   1, 'd',
+   1, 'E',
+   1, 'e',
+   1, 'E',
+   1, 'e',
+   1, 'E',
+   1, 'e',
+   1, 'E',
+   1, 'e',
+   1, 'E',
+   1, 'e',
+   2, '^', 'G',
+   2, '^', 'g',
+   1, 'G',
+   1, 'g',
+   1, 'G',
+   1, 'g',
+   1, 'G',
+   1, 'g',
+   2, '^', 'H',
+   2, '^', 'h',
+   1, 'H',
+   1, 'h',
+   2, '~', 'I',
+   2, '~', 'i',
+   1, 'I',
+   1, 'i',
+   1, 'I',
+   1, 'i',
+   1, 'I',
+   1, 'i',
+   1, 'I',
+   1, 'i',
+   2, 'I', 'J',
+   2, 'i', 'j',
+   2, '^', 'J',
+   2, '^', 'j',
+   1, 'K',
+   1, 'k',
+   1, 'L',
+   1, 'l',
+   1, 'L',
+   1, 'l',
+   1, 'L',
+   1, 'l',
+   1, 'L',
+   1, 'l',
+   1, 'L',
+   1, 'l',
+   2,0xB4, 'N',
+   2,0xB4, 'n',
+   1, 'N',
+   1, 'n',
+   1, 'N',
+   1, 'n',
+   2,'\'', 'n',
+   1, 'O',
+   1, 'o',
+   1, 'O',
+   1, 'o',
+   2, '"', 'O',
+   2, '"', 'o',
+   2, 'O', 'E',
+   2, 'o', 'e',
+   2,0xB4, 'R',
+   2,0xB4, 'r',
+   1, 'R',
+   1, 'r',
+   1, 'R',
+   1, 'r',
+   2,0xB4, 'S',
+   2,0xB4, 's',
+   2, '^', 'S',
+   2, '^', 's',
+   1, 'S',
+   1, 's',
+   1, 'S',
+   1, 's',
+   1, 'T',
+   1, 't',
+   1, 'T',
+   1, 't',
+   1, 'T',
+   1, 't',
+   2, '~', 'U',
+   2, '~', 'u',
+   1, 'U',
+   1, 'u',
+   1, 'U',
+   1, 'u',
+   1, 'U',
+   1, 'u',
+   2, '"', 'U',
+   2, '"', 'u',
+   1, 'U',
+   1, 'u',
+   2, '^', 'W',
+   2, '^', 'w',
+   2, '^', 'Y',
+   2, '^', 'y',
+   2, '"', 'Y',
+   2,0xB4, 'Z',
+   2,0xB4, 'z',
+   1, 'Z',
+   1, 'z',
+   1, 'Z',
+   1, 'z',
+   1, 's',
+   1, 'f',
+   2, 'D',0x017D,
+   2, 'D',0x017E,
+   2, 'd',0x017E,
+   2, 'L', 'J',
+   2, 'L', 'j',
+   2, 'l', 'j',
+   2, 'N', 'J',
+   2, 'N', 'j',
+   2, 'n', 'j',
+   2, 'D', 'Z',
+   2, 'D', 'z',
+   2, 'd', 'z',
+   1, 'S',
+   1, 's',
+   1, 'T',
+   1, 't',
+   1,0x2032,
+   1,0x2033,
+   1,0x2018,
+   1,0x2019,
+   1,0x201B,
+   1, '^',
+   1,'\'',
+   1,0xAF,
+   1,0xB4,
+   1, '`',
+   1, '_',
+   1, '~',
+   1, '"',
+   1,0x03B2,
+   1,0x03B8,
+   1,0x03A5,
+   1,0x03C6,
+   1,0x03C0,
+   1,0x03BA,
+   1,0x03C1,
+   1,0x03C2,
+   1,0x0398,
+   1,0x03B5,
+   1,0x03A3,
+   2,0x0565,0x0582,
+   2,0x05D5,0x05D5,
+   2,0x05D5,0x05D9,
+   2,0x05D9,0x05D9,
+   2,0x0627,0x0674,
+   2,0x0648,0x0674,
+   2,0x06C7,0x0674,
+   2,0x064A,0x0674,
+   2,0x0E4D,0x0E32,
+   2,0x0ECD,0x0EB2,
+   2,0x0EAB,0x0E99,
+   2,0x0EAB,0x0EA1,
+   2,0x0FB2,0x0F81,
+   2,0x0FB3,0x0F81,
+   1, 'B',
+   1, 'b',
+   1, 'D',
+   1, 'd',
+   1, 'F',
+   1, 'f',
+   1, 'M',
+   1, 'm',
+   1, 'P',
+   1, 'p',
+   1, 'S',
+   1, 's',
+   1, 'T',
+   1, 't',
+   2, '`', 'W',
+   2, '`', 'w',
+   2,0xB4, 'W',
+   2,0xB4, 'w',
+   2, '"', 'W',
+   2, '"', 'w',
+   2, 'a',0x02BE,
+   2, '`', 'Y',
+   2, '`', 'y',
+   1, ' ',
+   1, ' ',
+   1, ' ',
+   1, ' ',
+   1, ' ',
+   1, ' ',
+   1, ' ',
+   1, ' ',
+   1, '-',
+   1, '-',
+   1, '-',
+   1, '-',
+   1, '-',
+   1, '-',
+   1,'\'',
+   1,'\'',
+   1, ',',
+   1,'\'',
+   1, '"',
+   1, '"',
+   1, '"',
+   1, '"',
+   1, '+',
+   1, 'o',
+   1, '.',
+   2, '.', '.',
+   3, '.', '.', '.',
+   4, 'o', '/', 'o', 'o',
+   1,0xB4,
+   2,0xB4,0xB4,
+   3,0xB4,0xB4,0xB4,
+   2,0x2035,0x2035,
+   3,0x2035,0x2035,0x2035,
+   1, '<',
+   1, '>',
+   2, '!', '!',
+   1, '/',
+   2, '?', '?',
+   2, '?', '!',
+   2, '!', '?',
+   4,0xB4,0xB4,0xB4,0xB4,
+   2, 'R', 's',
+   4,0x0110,0x1ED3, 'n', 'g',
+   3, 'E', 'U', 'R',
+   3, 'a', '/', 'c',
+   3, 'a', '/', 's',
+   1, 'C',
+   2,0xB0, 'C',
+   3, 'c', '/', 'o',
+   3, 'c', '/', 'u',
+   1,0x0190,
+   2,0xB0, 'F',
+   1, 'g',
+   1, 'H',
+   1, 'H',
+   1, 'H',
+   1, 'h',
+   1,0x0127,
+   1, 'I',
+   1, 'I',
+   1, 'L',
+   1, 'l',
+   1, 'N',
+   2, 'N', 'o',
+   1, 'P',
+   1, 'Q',
+   1, 'R',
+   1, 'R',
+   1, 'R',
+   3, 'T', 'E', 'L',
+   2, 'T', 'M',
+   1, 'Z',
+   3, 'O', 'h', 'm',
+   1, 'Z',
+   1, 'B',
+   1, 'C',
+   1, 'e',
+   1, 'e',
+   1, 'E',
+   1, 'F',
+   1, 'M',
+   1, 'o',
+   1,0x05D0,
+   1,0x05D1,
+   1,0x05D2,
+   1,0x05D3,
+   1, 'i',
+   3, 'F', 'A', 'X',
+   1,0x03B3,
+   1,0x0393,
+   1,0x03A0,
+   1,0x2211,
+   1, 'D',
+   1, 'd',
+   1, 'e',
+   1, 'i',
+   1, 'j',
+   5, ' ', '1',0x2044, '3', ' ',
+   5, ' ', '2',0x2044, '3', ' ',
+   5, ' ', '1',0x2044, '5', ' ',
+   5, ' ', '2',0x2044, '5', ' ',
+   5, ' ', '3',0x2044, '5', ' ',
+   5, ' ', '4',0x2044, '5', ' ',
+   5, ' ', '1',0x2044, '6', ' ',
+   5, ' ', '5',0x2044, '6', ' ',
+   5, ' ', '1',0x2044, '8', ' ',
+   5, ' ', '3',0x2044, '8', ' ',
+   5, ' ', '5',0x2044, '8', ' ',
+   5, ' ', '7',0x2044, '8', ' ',
+   3, ' ', '1',0x2044,
+   1, 'I',
+   2, 'I', 'I',
+   3, 'I', 'I', 'I',
+   2, 'I', 'V',
+   1, 'V',
+   2, 'V', 'I',
+   3, 'V', 'I', 'I',
+   4, 'V', 'I', 'I', 'I',
+   2, 'I', 'X',
+   1, 'X',
+   2, 'X', 'I',
+   3, 'X', 'I', 'I',
+   1, 'L',
+   1, 'C',
+   1, 'D',
+   1, 'M',
+   1, 'i',
+   2, 'i', 'i',
+   3, 'i', 'i', 'i',
+   2, 'i', 'v',
+   1, 'v',
+   2, 'v', 'i',
+   3, 'v', 'i', 'i',
+   4, 'v', 'i', 'i', 'i',
+   2, 'i', 'x',
+   1, 'x',
+   2, 'x', 'i',
+   3, 'x', 'i', 'i',
+   1, 'l',
+   1, 'c',
+   1, 'd',
+   1, 'm',
+   2, '<', '-',
+   1, '^',
+   2, '-', '>',
+   1, 'V',
+   3, '<', '-', '>',
+   2, '<', '=',
+   2, '=', '>',
+   3, '<', '=', '>',
+   1, '-',
+   1, '/',
+   1,'\\',
+   1, '*',
+   1,0x2022,
+   1, '|',
+   2,0x222B,0x222B,
+   3,0x222B,0x222B,0x222B,
+   2,0x222E,0x222E,
+   3,0x222E,0x222E,0x222E,
+   1, ':',
+   1, '~',
+   2, '/', '=',
+   2, '<', '=',
+   2, '>', '=',
+   2, '<', '<',
+   2, '>', '>',
+   1,0xB7,
+   3, '<', '<', '<',
+   3, '>', '>', '>',
+   3,0xB7,0xB7,0xB7,
+   5, '[', 'N', 'U', 'L', ']',
+   5, '[', 'S', 'O', 'H', ']',
+   5, '[', 'S', 'T', 'X', ']',
+   5, '[', 'E', 'T', 'X', ']',
+   5, '[', 'E', 'O', 'T', ']',
+   5, '[', 'E', 'N', 'Q', ']',
+   5, '[', 'A', 'C', 'K', ']',
+   5, '[', 'B', 'E', 'L', ']',
+   4, '[', 'B', 'S', ']',
+   4, '[', 'H', 'T', ']',
+   4, '[', 'L', 'F', ']',
+   4, '[', 'V', 'T', ']',
+   4, '[', 'F', 'F', ']',
+   4, '[', 'C', 'R', ']',
+   4, '[', 'S', 'O', ']',
+   4, '[', 'S', 'I', ']',
+   5, '[', 'D', 'L', 'E', ']',
+   5, '[', 'D', 'C', '1', ']',
+   5, '[', 'D', 'C', '2', ']',
+   5, '[', 'D', 'C', '3', ']',
+   5, '[', 'D', 'C', '4', ']',
+   5, '[', 'N', 'A', 'K', ']',
+   5, '[', 'S', 'Y', 'N', ']',
+   5, '[', 'E', 'T', 'B', ']',
+   5, '[', 'C', 'A', 'N', ']',
+   4, '[', 'E', 'M', ']',
+   5, '[', 'S', 'U', 'B', ']',
+   5, '[', 'E', 'S', 'C', ']',
+   4, '[', 'F', 'S', ']',
+   4, '[', 'G', 'S', ']',
+   4, '[', 'R', 'S', ']',
+   4, '[', 'U', 'S', ']',
+   4, '[', 'S', 'P', ']',
+   5, '[', 'D', 'E', 'L', ']',
+   4, '[', 'N', 'L', ']',
+   3, '(', '1', ')',
+   3, '(', '2', ')',
+   3, '(', '3', ')',
+   3, '(', '4', ')',
+   3, '(', '5', ')',
+   3, '(', '6', ')',
+   3, '(', '7', ')',
+   3, '(', '8', ')',
+   3, '(', '9', ')',
+   4, '(', '1', '0', ')',
+   4, '(', '1', '1', ')',
+   4, '(', '1', '2', ')',
+   4, '(', '1', '3', ')',
+   4, '(', '1', '4', ')',
+   4, '(', '1', '5', ')',
+   4, '(', '1', '6', ')',
+   4, '(', '1', '7', ')',
+   4, '(', '1', '8', ')',
+   4, '(', '1', '9', ')',
+   4, '(', '2', '0', ')',
+   3, '(', '1', ')',
+   3, '(', '2', ')',
+   3, '(', '3', ')',
+   3, '(', '4', ')',
+   3, '(', '5', ')',
+   3, '(', '6', ')',
+   3, '(', '7', ')',
+   3, '(', '8', ')',
+   3, '(', '9', ')',
+   4, '(', '1', '0', ')',
+   4, '(', '1', '1', ')',
+   4, '(', '1', '2', ')',
+   4, '(', '1', '3', ')',
+   4, '(', '1', '4', ')',
+   4, '(', '1', '5', ')',
+   4, '(', '1', '6', ')',
+   4, '(', '1', '7', ')',
+   4, '(', '1', '8', ')',
+   4, '(', '1', '9', ')',
+   4, '(', '2', '0', ')',
+   2, '1', '.',
+   2, '2', '.',
+   2, '3', '.',
+   2, '4', '.',
+   2, '5', '.',
+   2, '6', '.',
+   2, '7', '.',
+   2, '8', '.',
+   2, '9', '.',
+   3, '1', '0', '.',
+   3, '1', '1', '.',
+   3, '1', '2', '.',
+   3, '1', '3', '.',
+   3, '1', '4', '.',
+   3, '1', '5', '.',
+   3, '1', '6', '.',
+   3, '1', '7', '.',
+   3, '1', '8', '.',
+   3, '1', '9', '.',
+   3, '2', '0', '.',
+   3, '(', 'a', ')',
+   3, '(', 'b', ')',
+   3, '(', 'c', ')',
+   3, '(', 'd', ')',
+   3, '(', 'e', ')',
+   3, '(', 'f', ')',
+   3, '(', 'g', ')',
+   3, '(', 'h', ')',
+   3, '(', 'i', ')',
+   3, '(', 'j', ')',
+   3, '(', 'k', ')',
+   3, '(', 'l', ')',
+   3, '(', 'm', ')',
+   3, '(', 'n', ')',
+   3, '(', 'o', ')',
+   3, '(', 'p', ')',
+   3, '(', 'q', ')',
+   3, '(', 'r', ')',
+   3, '(', 's', ')',
+   3, '(', 't', ')',
+   3, '(', 'u', ')',
+   3, '(', 'v', ')',
+   3, '(', 'w', ')',
+   3, '(', 'x', ')',
+   3, '(', 'y', ')',
+   3, '(', 'z', ')',
+   3, '(', 'A', ')',
+   3, '(', 'B', ')',
+   3, '(', 'C', ')',
+   3, '(', 'D', ')',
+   3, '(', 'E', ')',
+   3, '(', 'F', ')',
+   3, '(', 'G', ')',
+   3, '(', 'H', ')',
+   3, '(', 'I', ')',
+   3, '(', 'J', ')',
+   3, '(', 'K', ')',
+   3, '(', 'L', ')',
+   3, '(', 'M', ')',
+   3, '(', 'N', ')',
+   3, '(', 'O', ')',
+   3, '(', 'P', ')',
+   3, '(', 'Q', ')',
+   3, '(', 'R', ')',
+   3, '(', 'S', ')',
+   3, '(', 'T', ')',
+   3, '(', 'U', ')',
+   3, '(', 'V', ')',
+   3, '(', 'W', ')',
+   3, '(', 'X', ')',
+   3, '(', 'Y', ')',
+   3, '(', 'Z', ')',
+   3, '(', 'a', ')',
+   3, '(', 'b', ')',
+   3, '(', 'c', ')',
+   3, '(', 'd', ')',
+   3, '(', 'e', ')',
+   3, '(', 'f', ')',
+   3, '(', 'g', ')',
+   3, '(', 'h', ')',
+   3, '(', 'i', ')',
+   3, '(', 'j', ')',
+   3, '(', 'k', ')',
+   3, '(', 'l', ')',
+   3, '(', 'm', ')',
+   3, '(', 'n', ')',
+   3, '(', 'o', ')',
+   3, '(', 'p', ')',
+   3, '(', 'q', ')',
+   3, '(', 'r', ')',
+   3, '(', 's', ')',
+   3, '(', 't', ')',
+   3, '(', 'u', ')',
+   3, '(', 'v', ')',
+   3, '(', 'w', ')',
+   3, '(', 'x', ')',
+   3, '(', 'y', ')',
+   3, '(', 'z', ')',
+   3, '(', '0', ')',
+   1, '-',
+   1, '|',
+   1, '+',
+   1, '+',
+   1, '+',
+   1, '+',
+   1, '+',
+   1, '+',
+   1, '+',
+   1, '+',
+   1, '+',
+   1, 'o',
+   4,0x222B,0x222B,0x222B,0x222B,
+   3, ':', ':', '=',
+   2, '=', '=',
+   3, '=', '=', '=',
+   1,0x6BCD,
+   1,0x9F9F,
+   1,0x4E00,
+   1,0x4E28,
+   1,0x4E36,
+   1,0x4E3F,
+   1,0x4E59,
+   1,0x4E85,
+   1,0x4E8C,
+   1,0x4EA0,
+   1,0x4EBA,
+   1,0x513F,
+   1,0x5165,
+   1,0x516B,
+   1,0x5182,
+   1,0x5196,
+   1,0x51AB,
+   1,0x51E0,
+   1,0x51F5,
+   1,0x5200,
+   1,0x529B,
+   1,0x52F9,
+   1,0x5315,
+   1,0x531A,
+   1,0x5338,
+   1,0x5341,
+   1,0x535C,
+   1,0x5369,
+   1,0x5382,
+   1,0x53B6,
+   1,0x53C8,
+   1,0x53E3,
+   1,0x56D7,
+   1,0x571F,
+   1,0x58EB,
+   1,0x5902,
+   1,0x590A,
+   1,0x5915,
+   1,0x5927,
+   1,0x5973,
+   1,0x5B50,
+   1,0x5B80,
+   1,0x5BF8,
+   1,0x5C0F,
+   1,0x5C22,
+   1,0x5C38,
+   1,0x5C6E,
+   1,0x5C71,
+   1,0x5DDB,
+   1,0x5DE5,
+   1,0x5DF1,
+   1,0x5DFE,
+   1,0x5E72,
+   1,0x5E7A,
+   1,0x5E7F,
+   1,0x5EF4,
+   1,0x5EFE,
+   1,0x5F0B,
+   1,0x5F13,
+   1,0x5F50,
+   1,0x5F61,
+   1,0x5F73,
+   1,0x5FC3,
+   1,0x6208,
+   1,0x6236,
+   1,0x624B,
+   1,0x652F,
+   1,0x6534,
+   1,0x6587,
+   1,0x6597,
+   1,0x65A4,
+   1,0x65B9,
+   1,0x65E0,
+   1,0x65E5,
+   1,0x66F0,
+   1,0x6708,
+   1,0x6728,
+   1,0x6B20,
+   1,0x6B62,
+   1,0x6B79,
+   1,0x6BB3,
+   1,0x6BCB,
+   1,0x6BD4,
+   1,0x6BDB,
+   1,0x6C0F,
+   1,0x6C14,
+   1,0x6C34,
+   1,0x706B,
+   1,0x722A,
+   1,0x7236,
+   1,0x723B,
+   1,0x723F,
+   1,0x7247,
+   1,0x7259,
+   1,0x725B,
+   1,0x72AC,
+   1,0x7384,
+   1,0x7389,
+   1,0x74DC,
+   1,0x74E6,
+   1,0x7518,
+   1,0x751F,
+   1,0x7528,
+   1,0x7530,
+   1,0x758B,
+   1,0x7592,
+   1,0x7676,
+   1,0x767D,
+   1,0x76AE,
+   1,0x76BF,
+   1,0x76EE,
+   1,0x77DB,
+   1,0x77E2,
+   1,0x77F3,
+   1,0x793A,
+   1,0x79B8,
+   1,0x79BE,
+   1,0x7A74,
+   1,0x7ACB,
+   1,0x7AF9,
+   1,0x7C73,
+   1,0x7CF8,
+   1,0x7F36,
+   1,0x7F51,
+   1,0x7F8A,
+   1,0x7FBD,
+   1,0x8001,
+   1,0x800C,
+   1,0x8012,
+   1,0x8033,
+   1,0x807F,
+   1,0x8089,
+   1,0x81E3,
+   1,0x81EA,
+   1,0x81F3,
+   1,0x81FC,
+   1,0x820C,
+   1,0x821B,
+   1,0x821F,
+   1,0x826E,
+   1,0x8272,
+   1,0x8278,
+   1,0x864D,
+   1,0x866B,
+   1,0x8840,
+   1,0x884C,
+   1,0x8863,
+   1,0x897E,
+   1,0x898B,
+   1,0x89D2,
+   1,0x8A00,
+   1,0x8C37,
+   1,0x8C46,
+   1,0x8C55,
+   1,0x8C78,
+   1,0x8C9D,
+   1,0x8D64,
+   1,0x8D70,
+   1,0x8DB3,
+   1,0x8EAB,
+   1,0x8ECA,
+   1,0x8F9B,
+   1,0x8FB0,
+   1,0x8FB5,
+   1,0x9091,
+   1,0x9149,
+   1,0x91C6,
+   1,0x91CC,
+   1,0x91D1,
+   1,0x9577,
+   1,0x9580,
+   1,0x961C,
+   1,0x96B6,
+   1,0x96B9,
+   1,0x96E8,
+   1,0x9751,
+   1,0x975E,
+   1,0x9762,
+   1,0x9769,
+   1,0x97CB,
+   1,0x97ED,
+   1,0x97F3,
+   1,0x9801,
+   1,0x98A8,
+   1,0x98DB,
+   1,0x98DF,
+   1,0x9996,
+   1,0x9999,
+   1,0x99AC,
+   1,0x9AA8,
+   1,0x9AD8,
+   1,0x9ADF,
+   1,0x9B25,
+   1,0x9B2F,
+   1,0x9B32,
+   1,0x9B3C,
+   1,0x9B5A,
+   1,0x9CE5,
+   1,0x9E75,
+   1,0x9E7F,
+   1,0x9EA5,
+   1,0x9EBB,
+   1,0x9EC3,
+   1,0x9ECD,
+   1,0x9ED1,
+   1,0x9EF9,
+   1,0x9EFD,
+   1,0x9F0E,
+   1,0x9F13,
+   1,0x9F20,
+   1,0x9F3B,
+   1,0x9F4A,
+   1,0x9F52,
+   1,0x9F8D,
+   1,0x9F9C,
+   1,0x9FA0,
+   1, ' ',
+   1,0x3012,
+   1,0x5341,
+   1,0x5344,
+   1,0x5345,
+   1,0x3042,
+   1,0x3044,
+   1,0x3046,
+   1,0x3048,
+   1,0x304A,
+   1,0x3064,
+   1,0x3084,
+   1,0x3086,
+   1,0x3088,
+   1,0x308F,
+   1,0x304B,
+   1,0x3051,
+   2, ' ',0x3099,
+   2, ' ',0x309A,
+   1, '=',
+   1,0x30A2,
+   1,0x30A4,
+   1,0x30A6,
+   1,0x30A8,
+   1,0x30AA,
+   1,0x30C4,
+   1,0x30E4,
+   1,0x30E6,
+   1,0x30E8,
+   1,0x30EF,
+   1,0x30AB,
+   1,0x30B1,
+   1,0x1100,
+   1,0x1101,
+   1,0x11AA,
+   1,0x1102,
+   1,0x11AC,
+   1,0x11AD,
+   1,0x1103,
+   1,0x1104,
+   1,0x1105,
+   1,0x11B0,
+   1,0x11B1,
+   1,0x11B2,
+   1,0x11B3,
+   1,0x11B4,
+   1,0x11B5,
+   1,0x111A,
+   1,0x1106,
+   1,0x1107,
+   1,0x1108,
+   1,0x1121,
+   1,0x1109,
+   1,0x110A,
+   1,0x110B,
+   1,0x110C,
+   1,0x110D,
+   1,0x110E,
+   1,0x110F,
+   1,0x1110,
+   1,0x1111,
+   1,0x1112,
+   1,0x1161,
+   1,0x1162,
+   1,0x1163,
+   1,0x1164,
+   1,0x1165,
+   1,0x1166,
+   1,0x1167,
+   1,0x1168,
+   1,0x1169,
+   1,0x116A,
+   1,0x116B,
+   1,0x116C,
+   1,0x116D,
+   1,0x116E,
+   1,0x116F,
+   1,0x1170,
+   1,0x1171,
+   1,0x1172,
+   1,0x1173,
+   1,0x1174,
+   1,0x1175,
+   1,0x1160,
+   1,0x1114,
+   1,0x1115,
+   1,0x11C7,
+   1,0x11C8,
+   1,0x11CC,
+   1,0x11CE,
+   1,0x11D3,
+   1,0x11D7,
+   1,0x11D9,
+   1,0x111C,
+   1,0x11DD,
+   1,0x11DF,
+   1,0x111D,
+   1,0x111E,
+   1,0x1120,
+   1,0x1122,
+   1,0x1123,
+   1,0x1127,
+   1,0x1129,
+   1,0x112B,
+   1,0x112C,
+   1,0x112D,
+   1,0x112E,
+   1,0x112F,
+   1,0x1132,
+   1,0x1136,
+   1,0x1140,
+   1,0x1147,
+   1,0x114C,
+   1,0x11F1,
+   1,0x11F2,
+   1,0x1157,
+   1,0x1158,
+   1,0x1159,
+   1,0x1184,
+   1,0x1185,
+   1,0x1188,
+   1,0x1191,
+   1,0x1192,
+   1,0x1194,
+   1,0x119E,
+   1,0x11A1,
+   1,0x30AF,
+   1,0x30B7,
+   1,0x30B9,
+   1,0x30C8,
+   1,0x30CC,
+   1,0x30CF,
+   1,0x30D2,
+   1,0x30D5,
+   1,0x30D8,
+   1,0x30DB,
+   1,0x30E0,
+   1,0x30E9,
+   1,0x30EA,
+   1,0x30EB,
+   1,0x30EC,
+   1,0x30ED,
+   3, '(',0x1100, ')',
+   3, '(',0x1102, ')',
+   3, '(',0x1103, ')',
+   3, '(',0x1105, ')',
+   3, '(',0x1106, ')',
+   3, '(',0x1107, ')',
+   3, '(',0x1109, ')',
+   3, '(',0x110B, ')',
+   3, '(',0x110C, ')',
+   3, '(',0x110E, ')',
+   3, '(',0x110F, ')',
+   3, '(',0x1110, ')',
+   3, '(',0x1111, ')',
+   3, '(',0x1112, ')',
+   4, '(',0x1100,0x1161, ')',
+   4, '(',0x1102,0x1161, ')',
+   4, '(',0x1103,0x1161, ')',
+   4, '(',0x1105,0x1161, ')',
+   4, '(',0x1106,0x1161, ')',
+   4, '(',0x1107,0x1161, ')',
+   4, '(',0x1109,0x1161, ')',
+   4, '(',0x110B,0x1161, ')',
+   4, '(',0x110C,0x1161, ')',
+   4, '(',0x110E,0x1161, ')',
+   4, '(',0x110F,0x1161, ')',
+   4, '(',0x1110,0x1161, ')',
+   4, '(',0x1111,0x1161, ')',
+   4, '(',0x1112,0x1161, ')',
+   4, '(',0x110C,0x116E, ')',
+   7, '(',0x110B,0x1169,0x110C,0x1165,0x11AB, ')',
+   6, '(',0x110B,0x1169,0x1112,0x116E, ')',
+   3, '(',0x4E00, ')',
+   3, '(',0x4E8C, ')',
+   3, '(',0x4E09, ')',
+   3, '(',0x56DB, ')',
+   3, '(',0x4E94, ')',
+   3, '(',0x516D, ')',
+   3, '(',0x4E03, ')',
+   3, '(',0x516B, ')',
+   3, '(',0x4E5D, ')',
+   3, '(',0x5341, ')',
+   3, '(',0x6708, ')',
+   3, '(',0x706B, ')',
+   3, '(',0x6C34, ')',
+   3, '(',0x6728, ')',
+   3, '(',0x91D1, ')',
+   3, '(',0x571F, ')',
+   3, '(',0x65E5, ')',
+   3, '(',0x682A, ')',
+   3, '(',0x6709, ')',
+   3, '(',0x793E, ')',
+   3, '(',0x540D, ')',
+   3, '(',0x7279, ')',
+   3, '(',0x8CA1, ')',
+   3, '(',0x795D, ')',
+   3, '(',0x52B4, ')',
+   3, '(',0x4EE3, ')',
+   3, '(',0x547C, ')',
+   3, '(',0x5B66, ')',
+   3, '(',0x76E3, ')',
+   3, '(',0x4F01, ')',
+   3, '(',0x8CC7, ')',
+   3, '(',0x5354, ')',
+   3, '(',0x796D, ')',
+   3, '(',0x4F11, ')',
+   3, '(',0x81EA, ')',
+   3, '(',0x81F3, ')',
+   3, 'P', 'T', 'E',
+   4, '(', '2', '1', ')',
+   4, '(', '2', '2', ')',
+   4, '(', '2', '3', ')',
+   4, '(', '2', '4', ')',
+   4, '(', '2', '5', ')',
+   4, '(', '2', '6', ')',
+   4, '(', '2', '7', ')',
+   4, '(', '2', '8', ')',
+   4, '(', '2', '9', ')',
+   4, '(', '3', '0', ')',
+   4, '(', '3', '1', ')',
+   4, '(', '3', '2', ')',
+   4, '(', '3', '3', ')',
+   4, '(', '3', '4', ')',
+   4, '(', '3', '5', ')',
+   3, '(',0x1100, ')',
+   3, '(',0x1102, ')',
+   3, '(',0x1103, ')',
+   3, '(',0x1105, ')',
+   3, '(',0x1106, ')',
+   3, '(',0x1107, ')',
+   3, '(',0x1109, ')',
+   3, '(',0x110B, ')',
+   3, '(',0x110C, ')',
+   3, '(',0x110E, ')',
+   3, '(',0x110F, ')',
+   3, '(',0x1110, ')',
+   3, '(',0x1111, ')',
+   3, '(',0x1112, ')',
+   4, '(',0x1100,0x1161, ')',
+   4, '(',0x1102,0x1161, ')',
+   4, '(',0x1103,0x1161, ')',
+   4, '(',0x1105,0x1161, ')',
+   4, '(',0x1106,0x1161, ')',
+   4, '(',0x1107,0x1161, ')',
+   4, '(',0x1109,0x1161, ')',
+   4, '(',0x110B,0x1161, ')',
+   4, '(',0x110C,0x1161, ')',
+   4, '(',0x110E,0x1161, ')',
+   4, '(',0x110F,0x1161, ')',
+   4, '(',0x1110,0x1161, ')',
+   4, '(',0x1111,0x1161, ')',
+   4, '(',0x1112,0x1161, ')',
+   7, '(',0x110E,0x1161,0x11B7,0x1100,0x1169, ')',
+   6, '(',0x110C,0x116E,0x110B,0x1174, ')',
+   3, '(',0x4E00, ')',
+   3, '(',0x4E8C, ')',
+   3, '(',0x4E09, ')',
+   3, '(',0x56DB, ')',
+   3, '(',0x4E94, ')',
+   3, '(',0x516D, ')',
+   3, '(',0x4E03, ')',
+   3, '(',0x516B, ')',
+   3, '(',0x4E5D, ')',
+   3, '(',0x5341, ')',
+   3, '(',0x6708, ')',
+   3, '(',0x706B, ')',
+   3, '(',0x6C34, ')',
+   3, '(',0x6728, ')',
+   3, '(',0x91D1, ')',
+   3, '(',0x571F, ')',
+   3, '(',0x65E5, ')',
+   3, '(',0x682A, ')',
+   3, '(',0x6709, ')',
+   3, '(',0x793E, ')',
+   3, '(',0x540D, ')',
+   3, '(',0x7279, ')',
+   3, '(',0x8CA1, ')',
+   3, '(',0x795D, ')',
+   3, '(',0x52B4, ')',
+   3, '(',0x79D8, ')',
+   3, '(',0x7537, ')',
+   3, '(',0x5973, ')',
+   3, '(',0x9069, ')',
+   3, '(',0x512A, ')',
+   3, '(',0x5370, ')',
+   3, '(',0x6CE8, ')',
+   3, '(',0x9805, ')',
+   3, '(',0x4F11, ')',
+   3, '(',0x5199, ')',
+   3, '(',0x6B63, ')',
+   3, '(',0x4E0A, ')',
+   3, '(',0x4E2D, ')',
+   3, '(',0x4E0B, ')',
+   3, '(',0x5DE6, ')',
+   3, '(',0x53F3, ')',
+   3, '(',0x533B, ')',
+   3, '(',0x5B97, ')',
+   3, '(',0x5B66, ')',
+   3, '(',0x76E3, ')',
+   3, '(',0x4F01, ')',
+   3, '(',0x8CC7, ')',
+   3, '(',0x5354, ')',
+   3, '(',0x591C, ')',
+   4, '(', '3', '6', ')',
+   4, '(', '3', '7', ')',
+   4, '(', '3', '8', ')',
+   4, '(', '3', '9', ')',
+   4, '(', '4', '0', ')',
+   4, '(', '4', '1', ')',
+   4, '(', '4', '2', ')',
+   4, '(', '4', '3', ')',
+   4, '(', '4', '4', ')',
+   4, '(', '4', '5', ')',
+   4, '(', '4', '6', ')',
+   4, '(', '4', '7', ')',
+   4, '(', '4', '8', ')',
+   4, '(', '4', '9', ')',
+   4, '(', '5', '0', ')',
+   2, '1',0x6708,
+   2, '2',0x6708,
+   2, '3',0x6708,
+   2, '4',0x6708,
+   2, '5',0x6708,
+   2, '6',0x6708,
+   2, '7',0x6708,
+   2, '8',0x6708,
+   2, '9',0x6708,
+   3, '1', '0',0x6708,
+   3, '1', '1',0x6708,
+   3, '1', '2',0x6708,
+   2, 'H', 'g',
+   3, 'e', 'r', 'g',
+   2, 'e', 'V',
+   3, 'L', 'T', 'D',
+   3, '(',0x30A2, ')',
+   3, '(',0x30A4, ')',
+   3, '(',0x30A6, ')',
+   3, '(',0x30A8, ')',
+   3, '(',0x30AA, ')',
+   3, '(',0x30AB, ')',
+   3, '(',0x30AD, ')',
+   3, '(',0x30AF, ')',
+   3, '(',0x30B1, ')',
+   3, '(',0x30B3, ')',
+   3, '(',0x30B5, ')',
+   3, '(',0x30B7, ')',
+   3, '(',0x30B9, ')',
+   3, '(',0x30BB, ')',
+   3, '(',0x30BD, ')',
+   3, '(',0x30BF, ')',
+   3, '(',0x30C1, ')',
+   3, '(',0x30C4, ')',
+   3, '(',0x30C6, ')',
+   3, '(',0x30C8, ')',
+   3, '(',0x30CA, ')',
+   3, '(',0x30CB, ')',
+   3, '(',0x30CC, ')',
+   3, '(',0x30CD, ')',
+   3, '(',0x30CE, ')',
+   3, '(',0x30CF, ')',
+   3, '(',0x30D2, ')',
+   3, '(',0x30D5, ')',
+   3, '(',0x30D8, ')',
+   3, '(',0x30DB, ')',
+   3, '(',0x30DE, ')',
+   3, '(',0x30DF, ')',
+   3, '(',0x30E0, ')',
+   3, '(',0x30E1, ')',
+   3, '(',0x30E2, ')',
+   3, '(',0x30E4, ')',
+   3, '(',0x30E6, ')',
+   3, '(',0x30E8, ')',
+   3, '(',0x30E9, ')',
+   3, '(',0x30EA, ')',
+   3, '(',0x30EB, ')',
+   3, '(',0x30EC, ')',
+   3, '(',0x30ED, ')',
+   3, '(',0x30EF, ')',
+   3, '(',0x30F0, ')',
+   3, '(',0x30F1, ')',
+   3, '(',0x30F2, ')',
+   4,0x30A2,0x30D1,0x30FC,0x30C8,
+   4,0x30A2,0x30EB,0x30D5,0x30A1,
+   4,0x30A2,0x30F3,0x30DA,0x30A2,
+   3,0x30A2,0x30FC,0x30EB,
+   4,0x30A4,0x30CB,0x30F3,0x30B0,
+   3,0x30A4,0x30F3,0x30C1,
+   3,0x30A6,0x30A9,0x30F3,
+   5,0x30A8,0x30B9,0x30AF,0x30FC,0x30C9,
+   4,0x30A8,0x30FC,0x30AB,0x30FC,
+   3,0x30AA,0x30F3,0x30B9,
+   3,0x30AA,0x30FC,0x30E0,
+   3,0x30AB,0x30A4,0x30EA,
+   4,0x30AB,0x30E9,0x30C3,0x30C8,
+   4,0x30AB,0x30ED,0x30EA,0x30FC,
+   3,0x30AC,0x30ED,0x30F3,
+   3,0x30AC,0x30F3,0x30DE,
+   2,0x30AE,0x30AC,
+   3,0x30AE,0x30CB,0x30FC,
+   4,0x30AD,0x30E5,0x30EA,0x30FC,
+   4,0x30AE,0x30EB,0x30C0,0x30FC,
+   2,0x30AD,0x30ED,
+   5,0x30AD,0x30ED,0x30B0,0x30E9,0x30E0,
+   6,0x30AD,0x30ED,0x30E1,0x30FC,0x30C8,0x30EB,
+   5,0x30AD,0x30ED,0x30EF,0x30C3,0x30C8,
+   3,0x30B0,0x30E9,0x30E0,
+   5,0x30B0,0x30E9,0x30E0,0x30C8,0x30F3,
+   5,0x30AF,0x30EB,0x30BC,0x30A4,0x30ED,
+   4,0x30AF,0x30ED,0x30FC,0x30CD,
+   3,0x30B1,0x30FC,0x30B9,
+   3,0x30B3,0x30EB,0x30CA,
+   3,0x30B3,0x30FC,0x30DD,
+   4,0x30B5,0x30A4,0x30AF,0x30EB,
+   5,0x30B5,0x30F3,0x30C1,0x30FC,0x30E0,
+   4,0x30B7,0x30EA,0x30F3,0x30B0,
+   3,0x30BB,0x30F3,0x30C1,
+   3,0x30BB,0x30F3,0x30C8,
+   3,0x30C0,0x30FC,0x30B9,
+   2,0x30C7,0x30B7,
+   2,0x30C9,0x30EB,
+   2,0x30C8,0x30F3,
+   2,0x30CA,0x30CE,
+   3,0x30CE,0x30C3,0x30C8,
+   3,0x30CF,0x30A4,0x30C4,
+   5,0x30D1,0x30FC,0x30BB,0x30F3,0x30C8,
+   3,0x30D1,0x30FC,0x30C4,
+   4,0x30D0,0x30FC,0x30EC,0x30EB,
+   5,0x30D4,0x30A2,0x30B9,0x30C8,0x30EB,
+   3,0x30D4,0x30AF,0x30EB,
+   2,0x30D4,0x30B3,
+   2,0x30D3,0x30EB,
+   5,0x30D5,0x30A1,0x30E9,0x30C3,0x30C9,
+   4,0x30D5,0x30A3,0x30FC,0x30C8,
+   5,0x30D6,0x30C3,0x30B7,0x30A7,0x30EB,
+   3,0x30D5,0x30E9,0x30F3,
+   5,0x30D8,0x30AF,0x30BF,0x30FC,0x30EB,
+   2,0x30DA,0x30BD,
+   3,0x30DA,0x30CB,0x30D2,
+   3,0x30D8,0x30EB,0x30C4,
+   3,0x30DA,0x30F3,0x30B9,
+   3,0x30DA,0x30FC,0x30B8,
+   3,0x30D9,0x30FC,0x30BF,
+   4,0x30DD,0x30A4,0x30F3,0x30C8,
+   3,0x30DC,0x30EB,0x30C8,
+   2,0x30DB,0x30F3,
+   3,0x30DD,0x30F3,0x30C9,
+   3,0x30DB,0x30FC,0x30EB,
+   3,0x30DB,0x30FC,0x30F3,
+   4,0x30DE,0x30A4,0x30AF,0x30ED,
+   3,0x30DE,0x30A4,0x30EB,
+   3,0x30DE,0x30C3,0x30CF,
+   3,0x30DE,0x30EB,0x30AF,
+   5,0x30DE,0x30F3,0x30B7,0x30E7,0x30F3,
+   4,0x30DF,0x30AF,0x30ED,0x30F3,
+   2,0x30DF,0x30EA,
+   5,0x30DF,0x30EA,0x30D0,0x30FC,0x30EB,
+   2,0x30E1,0x30AC,
+   4,0x30E1,0x30AC,0x30C8,0x30F3,
+   4,0x30E1,0x30FC,0x30C8,0x30EB,
+   3,0x30E4,0x30FC,0x30C9,
+   3,0x30E4,0x30FC,0x30EB,
+   3,0x30E6,0x30A2,0x30F3,
+   4,0x30EA,0x30C3,0x30C8,0x30EB,
+   2,0x30EA,0x30E9,
+   3,0x30EB,0x30D4,0x30FC,
+   4,0x30EB,0x30FC,0x30D6,0x30EB,
+   2,0x30EC,0x30E0,
+   5,0x30EC,0x30F3,0x30C8,0x30B2,0x30F3,
+   3,0x30EF,0x30C3,0x30C8,
+   2, '0',0x70B9,
+   2, '1',0x70B9,
+   2, '2',0x70B9,
+   2, '3',0x70B9,
+   2, '4',0x70B9,
+   2, '5',0x70B9,
+   2, '6',0x70B9,
+   2, '7',0x70B9,
+   2, '8',0x70B9,
+   2, '9',0x70B9,
+   3, '1', '0',0x70B9,
+   3, '1', '1',0x70B9,
+   3, '1', '2',0x70B9,
+   3, '1', '3',0x70B9,
+   3, '1', '4',0x70B9,
+   3, '1', '5',0x70B9,
+   3, '1', '6',0x70B9,
+   3, '1', '7',0x70B9,
+   3, '1', '8',0x70B9,
+   3, '1', '9',0x70B9,
+   3, '2', '0',0x70B9,
+   3, '2', '1',0x70B9,
+   3, '2', '2',0x70B9,
+   3, '2', '3',0x70B9,
+   3, '2', '4',0x70B9,
+   3, 'h', 'P', 'a',
+   2, 'd', 'a',
+   2, 'A', 'U',
+   3, 'b', 'a', 'r',
+   2, 'o', 'V',
+   2, 'p', 'c',
+   2, 'd', 'm',
+   4, 'd', 'm', '^', '2',
+   4, 'd', 'm', '^', '3',
+   2, 'I', 'U',
+   2,0x5E73,0x6210,
+   2,0x662D,0x548C,
+   2,0x5927,0x6B63,
+   2,0x660E,0x6CBB,
+   4,0x682A,0x5F0F,0x4F1A,0x793E,
+   2, 'p', 'A',
+   2, 'n', 'A',
+   2,0x03BC, 'A',
+   2, 'm', 'A',
+   2, 'k', 'A',
+   2, 'K', 'B',
+   2, 'M', 'B',
+   2, 'G', 'B',
+   3, 'c', 'a', 'l',
+   4, 'k', 'c', 'a', 'l',
+   2, 'p', 'F',
+   2, 'n', 'F',
+   2,0x03BC, 'F',
+   2,0x03BC, 'g',
+   2, 'm', 'g',
+   2, 'k', 'g',
+   2, 'H', 'z',
+   3, 'k', 'H', 'z',
+   3, 'M', 'H', 'z',
+   3, 'G', 'H', 'z',
+   3, 'T', 'H', 'z',
+   2,0x03BC, 'l',
+   2, 'm', 'l',
+   2, 'd', 'l',
+   2, 'k', 'l',
+   2, 'f', 'm',
+   2, 'n', 'm',
+   2,0x03BC, 'm',
+   2, 'm', 'm',
+   2, 'c', 'm',
+   2, 'k', 'm',
+   4, 'm', 'm', '^', '2',
+   4, 'c', 'm', '^', '2',
+   3, 'm', '^', '2',
+   4, 'k', 'm', '^', '2',
+   4, 'm', 'm', '^', '3',
+   4, 'c', 'm', '^', '3',
+   3, 'm', '^', '3',
+   4, 'k', 'm', '^', '3',
+   3, 'm', '/', 's',
+   5, 'm', '/', 's', '^', '2',
+   2, 'P', 'a',
+   3, 'k', 'P', 'a',
+   3, 'M', 'P', 'a',
+   3, 'G', 'P', 'a',
+   3, 'r', 'a', 'd',
+   5, 'r', 'a', 'd', '/', 's',
+   7, 'r', 'a', 'd', '/', 's', '^', '2',
+   2, 'p', 's',
+   2, 'n', 's',
+   2,0x03BC, 's',
+   2, 'm', 's',
+   2, 'p', 'V',
+   2, 'n', 'V',
+   2,0x03BC, 'V',
+   2, 'm', 'V',
+   2, 'k', 'V',
+   2, 'M', 'V',
+   2, 'p', 'W',
+   2, 'n', 'W',
+   2,0x03BC, 'W',
+   2, 'm', 'W',
+   2, 'k', 'W',
+   2, 'M', 'W',
+   2, 'k',0x03A9,
+   2, 'M',0x03A9,
+   4, 'a', '.', 'm', '.',
+   2, 'B', 'q',
+   2, 'c', 'c',
+   2, 'c', 'd',
+   4, 'C', '/', 'k', 'g',
+   3, 'C', 'o', '.',
+   2, 'd', 'B',
+   2, 'G', 'y',
+   2, 'h', 'a',
+   2, 'H', 'P',
+   2, 'i', 'n',
+   2, 'K', 'K',
+   2, 'K', 'M',
+   2, 'k', 't',
+   2, 'l', 'm',
+   2, 'l', 'n',
+   3, 'l', 'o', 'g',
+   2, 'l', 'x',
+   2, 'm', 'b',
+   3, 'm', 'i', 'l',
+   3, 'm', 'o', 'l',
+   2, 'P', 'H',
+   4, 'p', '.', 'm', '.',
+   3, 'P', 'P', 'M',
+   2, 'P', 'R',
+   2, 's', 'r',
+   2, 'S', 'v',
+   2, 'W', 'b',
+   3, 'V', '/', 'm',
+   3, 'A', '/', 'm',
+   3, 'g', 'a', 'l',
+   2, '1',0x65E5,
+   2, '2',0x65E5,
+   2, '3',0x65E5,
+   2, '4',0x65E5,
+   2, '5',0x65E5,
+   2, '6',0x65E5,
+   2, '7',0x65E5,
+   2, '8',0x65E5,
+   2, '9',0x65E5,
+   3, '1', '0',0x65E5,
+   3, '1', '1',0x65E5,
+   3, '1', '2',0x65E5,
+   3, '1', '3',0x65E5,
+   3, '1', '4',0x65E5,
+   3, '1', '5',0x65E5,
+   3, '1', '6',0x65E5,
+   3, '1', '7',0x65E5,
+   3, '1', '8',0x65E5,
+   3, '1', '9',0x65E5,
+   3, '2', '0',0x65E5,
+   3, '2', '1',0x65E5,
+   3, '2', '2',0x65E5,
+   3, '2', '3',0x65E5,
+   3, '2', '4',0x65E5,
+   3, '2', '5',0x65E5,
+   3, '2', '6',0x65E5,
+   3, '2', '7',0x65E5,
+   3, '2', '8',0x65E5,
+   3, '2', '9',0x65E5,
+   3, '3', '0',0x65E5,
+   3, '3', '1',0x65E5,
+   1,0x8C48,
+   1,0x66F4,
+   1,0x8ECA,
+   1,0x8CC8,
+   1,0x6ED1,
+   1,0x4E32,
+   1,0x53E5,
+   1,0x9F9C,
+   1,0x9F9C,
+   1,0x5951,
+   1,0x91D1,
+   1,0x5587,
+   1,0x5948,
+   1,0x61F6,
+   1,0x7669,
+   1,0x7F85,
+   1,0x863F,
+   1,0x87BA,
+   1,0x88F8,
+   1,0x908F,
+   1,0x6A02,
+   1,0x6D1B,
+   1,0x70D9,
+   1,0x73DE,
+   1,0x843D,
+   1,0x916A,
+   1,0x99F1,
+   1,0x4E82,
+   1,0x5375,
+   1,0x6B04,
+   1,0x721B,
+   1,0x862D,
+   1,0x9E1E,
+   1,0x5D50,
+   1,0x6FEB,
+   1,0x85CD,
+   1,0x8964,
+   1,0x62C9,
+   1,0x81D8,
+   1,0x881F,
+   1,0x5ECA,
+   1,0x6717,
+   1,0x6D6A,
+   1,0x72FC,
+   1,0x90CE,
+   1,0x4F86,
+   1,0x51B7,
+   1,0x52DE,
+   1,0x64C4,
+   1,0x6AD3,
+   1,0x7210,
+   1,0x76E7,
+   1,0x8001,
+   1,0x8606,
+   1,0x865C,
+   1,0x8DEF,
+   1,0x9732,
+   1,0x9B6F,
+   1,0x9DFA,
+   1,0x788C,
+   1,0x797F,
+   1,0x7DA0,
+   1,0x83C9,
+   1,0x9304,
+   1,0x9E7F,
+   1,0x8AD6,
+   1,0x58DF,
+   1,0x5F04,
+   1,0x7C60,
+   1,0x807E,
+   1,0x7262,
+   1,0x78CA,
+   1,0x8CC2,
+   1,0x96F7,
+   1,0x58D8,
+   1,0x5C62,
+   1,0x6A13,
+   1,0x6DDA,
+   1,0x6F0F,
+   1,0x7D2F,
+   1,0x7E37,
+   1,0x964B,
+   1,0x52D2,
+   1,0x808B,
+   1,0x51DC,
+   1,0x51CC,
+   1,0x7A1C,
+   1,0x7DBE,
+   1,0x83F1,
+   1,0x9675,
+   1,0x8B80,
+   1,0x62CF,
+   1,0x6A02,
+   1,0x8AFE,
+   1,0x4E39,
+   1,0x5BE7,
+   1,0x6012,
+   1,0x7387,
+   1,0x7570,
+   1,0x5317,
+   1,0x78FB,
+   1,0x4FBF,
+   1,0x5FA9,
+   1,0x4E0D,
+   1,0x6CCC,
+   1,0x6578,
+   1,0x7D22,
+   1,0x53C3,
+   1,0x585E,
+   1,0x7701,
+   1,0x8449,
+   1,0x8AAA,
+   1,0x6BBA,
+   1,0x8FB0,
+   1,0x6C88,
+   1,0x62FE,
+   1,0x82E5,
+   1,0x63A0,
+   1,0x7565,
+   1,0x4EAE,
+   1,0x5169,
+   1,0x51C9,
+   1,0x6881,
+   1,0x7CE7,
+   1,0x826F,
+   1,0x8AD2,
+   1,0x91CF,
+   1,0x52F5,
+   1,0x5442,
+   1,0x5973,
+   1,0x5EEC,
+   1,0x65C5,
+   1,0x6FFE,
+   1,0x792A,
+   1,0x95AD,
+   1,0x9A6A,
+   1,0x9E97,
+   1,0x9ECE,
+   1,0x529B,
+   1,0x66C6,
+   1,0x6B77,
+   1,0x8F62,
+   1,0x5E74,
+   1,0x6190,
+   1,0x6200,
+   1,0x649A,
+   1,0x6F23,
+   1,0x7149,
+   1,0x7489,
+   1,0x79CA,
+   1,0x7DF4,
+   1,0x806F,
+   1,0x8F26,
+   1,0x84EE,
+   1,0x9023,
+   1,0x934A,
+   1,0x5217,
+   1,0x52A3,
+   1,0x54BD,
+   1,0x70C8,
+   1,0x88C2,
+   1,0x8AAA,
+   1,0x5EC9,
+   1,0x5FF5,
+   1,0x637B,
+   1,0x6BAE,
+   1,0x7C3E,
+   1,0x7375,
+   1,0x4EE4,
+   1,0x56F9,
+   1,0x5BE7,
+   1,0x5DBA,
+   1,0x601C,
+   1,0x73B2,
+   1,0x7469,
+   1,0x7F9A,
+   1,0x8046,
+   1,0x9234,
+   1,0x96F6,
+   1,0x9748,
+   1,0x9818,
+   1,0x4F8B,
+   1,0x79AE,
+   1,0x91B4,
+   1,0x96B8,
+   1,0x60E1,
+   1,0x4E86,
+   1,0x50DA,
+   1,0x5BEE,
+   1,0x5C3F,
+   1,0x6599,
+   1,0x6A02,
+   1,0x71CE,
+   1,0x7642,
+   1,0x84FC,
+   1,0x907C,
+   1,0x9F8D,
+   1,0x6688,
+   1,0x962E,
+   1,0x5289,
+   1,0x677B,
+   1,0x67F3,
+   1,0x6D41,
+   1,0x6E9C,
+   1,0x7409,
+   1,0x7559,
+   1,0x786B,
+   1,0x7D10,
+   1,0x985E,
+   1,0x516D,
+   1,0x622E,
+   1,0x9678,
+   1,0x502B,
+   1,0x5D19,
+   1,0x6DEA,
+   1,0x8F2A,
+   1,0x5F8B,
+   1,0x6144,
+   1,0x6817,
+   1,0x7387,
+   1,0x9686,
+   1,0x5229,
+   1,0x540F,
+   1,0x5C65,
+   1,0x6613,
+   1,0x674E,
+   1,0x68A8,
+   1,0x6CE5,
+   1,0x7406,
+   1,0x75E2,
+   1,0x7F79,
+   1,0x88CF,
+   1,0x88E1,
+   1,0x91CC,
+   1,0x96E2,
+   1,0x533F,
+   1,0x6EBA,
+   1,0x541D,
+   1,0x71D0,
+   1,0x7498,
+   1,0x85FA,
+   1,0x96A3,
+   1,0x9C57,
+   1,0x9E9F,
+   1,0x6797,
+   1,0x6DCB,
+   1,0x81E8,
+   1,0x7ACB,
+   1,0x7B20,
+   1,0x7C92,
+   1,0x72C0,
+   1,0x7099,
+   1,0x8B58,
+   1,0x4EC0,
+   1,0x8336,
+   1,0x523A,
+   1,0x5207,
+   1,0x5EA6,
+   1,0x62D3,
+   1,0x7CD6,
+   1,0x5B85,
+   1,0x6D1E,
+   1,0x66B4,
+   1,0x8F3B,
+   1,0x884C,
+   1,0x964D,
+   1,0x898B,
+   1,0x5ED3,
+   1,0x5140,
+   1,0x55C0,
+   1,0x585A,
+   1,0x6674,
+   1,0x51DE,
+   1,0x732A,
+   1,0x76CA,
+   1,0x793C,
+   1,0x795E,
+   1,0x7965,
+   1,0x798F,
+   1,0x9756,
+   1,0x7CBE,
+   1,0x7FBD,
+   1,0x8612,
+   1,0x8AF8,
+   1,0x9038,
+   1,0x90FD,
+   1,0x98EF,
+   1,0x98FC,
+   1,0x9928,
+   1,0x9DB4,
+   1,0x4FAE,
+   1,0x50E7,
+   1,0x514D,
+   1,0x52C9,
+   1,0x52E4,
+   1,0x5351,
+   1,0x559D,
+   1,0x5606,
+   1,0x5668,
+   1,0x5840,
+   1,0x58A8,
+   1,0x5C64,
+   1,0x5C6E,
+   1,0x6094,
+   1,0x6168,
+   1,0x618E,
+   1,0x61F2,
+   1,0x654F,
+   1,0x65E2,
+   1,0x6691,
+   1,0x6885,
+   1,0x6D77,
+   1,0x6E1A,
+   1,0x6F22,
+   1,0x716E,
+   1,0x722B,
+   1,0x7422,
+   1,0x7891,
+   1,0x793E,
+   1,0x7949,
+   1,0x7948,
+   1,0x7950,
+   1,0x7956,
+   1,0x795D,
+   1,0x798D,
+   1,0x798E,
+   1,0x7A40,
+   1,0x7A81,
+   1,0x7BC0,
+   1,0x7DF4,
+   1,0x7E09,
+   1,0x7E41,
+   1,0x7F72,
+   1,0x8005,
+   1,0x81ED,
+   1,0x8279,
+   1,0x8279,
+   1,0x8457,
+   1,0x8910,
+   1,0x8996,
+   1,0x8B01,
+   1,0x8B39,
+   1,0x8CD3,
+   1,0x8D08,
+   1,0x8FB6,
+   1,0x9038,
+   1,0x96E3,
+   1,0x97FF,
+   1,0x983B,
+   2, 'f', 'f',
+   2, 'f', 'i',
+   2, 'f', 'l',
+   3, 'f', 'f', 'i',
+   3, 'f', 'f', 'l',
+   2,0x017F, 't',
+   2, 's', 't',
+   2,0x0574,0x0576,
+   2,0x0574,0x0565,
+   2,0x0574,0x056B,
+   2,0x057E,0x0576,
+   2,0x0574,0x056D,
+   1,0x05E2,
+   1,0x05D0,
+   1,0x05D3,
+   1,0x05D4,
+   1,0x05DB,
+   1,0x05DC,
+   1,0x05DD,
+   1,0x05E8,
+   1,0x05EA,
+   1, '+',
+   2,0x05D0,0x05DC,
+   1,0x203E,
+   1,0x203E,
+   1,0x203E,
+   1,0x203E,
+   1, '_',
+   1, '_',
+   1, '_',
+   1, ',',
+   1,0x3001,
+   1, '.',
+   1, ';',
+   1, ':',
+   1, '?',
+   1, '!',
+   1,0x2014,
+   1, '(',
+   1, ')',
+   1, '{',
+   1, '}',
+   1,0x3014,
+   1,0x3015,
+   1, '#',
+   1, '&',
+   1, '*',
+   1, '+',
+   1, '-',
+   1, '<',
+   1, '>',
+   1, '=',
+   1,'\\',
+   1, '$',
+   1, '%',
+   1, '@',
+   1, '!',
+   1, '"',
+   1, '#',
+   1, '$',
+   1, '%',
+   1, '&',
+   1,'\'',
+   1, '(',
+   1, ')',
+   1, '*',
+   1, '+',
+   1, ',',
+   1, '-',
+   1, '.',
+   1, '/',
+   1, '0',
+   1, '1',
+   1, '2',
+   1, '3',
+   1, '4',
+   1, '5',
+   1, '6',
+   1, '7',
+   1, '8',
+   1, '9',
+   1, ':',
+   1, ';',
+   1, '<',
+   1, '=',
+   1, '>',
+   1, '?',
+   1, '@',
+   1, 'A',
+   1, 'B',
+   1, 'C',
+   1, 'D',
+   1, 'E',
+   1, 'F',
+   1, 'G',
+   1, 'H',
+   1, 'I',
+   1, 'J',
+   1, 'K',
+   1, 'L',
+   1, 'M',
+   1, 'N',
+   1, 'O',
+   1, 'P',
+   1, 'Q',
+   1, 'R',
+   1, 'S',
+   1, 'T',
+   1, 'U',
+   1, 'V',
+   1, 'W',
+   1, 'X',
+   1, 'Y',
+   1, 'Z',
+   1, '[',
+   1,'\\',
+   1, ']',
+   1, '^',
+   1, '_',
+   1, '`',
+   1, 'a',
+   1, 'b',
+   1, 'c',
+   1, 'd',
+   1, 'e',
+   1, 'f',
+   1, 'g',
+   1, 'h',
+   1, 'i',
+   1, 'j',
+   1, 'k',
+   1, 'l',
+   1, 'm',
+   1, 'n',
+   1, 'o',
+   1, 'p',
+   1, 'q',
+   1, 'r',
+   1, 's',
+   1, 't',
+   1, 'u',
+   1, 'v',
+   1, 'w',
+   1, 'x',
+   1, 'y',
+   1, 'z',
+   1, '{',
+   1, '|',
+   1, '}',
+   1, '~',
+   1,0x2985,
+   1,0x2986,
+   1,0x3002,
+   1,0x300C,
+   1,0x300D,
+   1,0x3001,
+   1,0x30FB,
+   1,0x30F2,
+   1,0x30A1,
+   1,0x30A3,
+   1,0x30A5,
+   1,0x30A7,
+   1,0x30A9,
+   1,0x30E3,
+   1,0x30E5,
+   1,0x30E7,
+   1,0x30C3,
+   1,0x30FC,
+   1,0x30A2,
+   1,0x30A4,
+   1,0x30A6,
+   1,0x30A8,
+   1,0x30AA,
+   1,0x30AB,
+   1,0x30AD,
+   1,0x30AF,
+   1,0x30B1,
+   1,0x30B3,
+   1,0x30B5,
+   1,0x30B7,
+   1,0x30B9,
+   1,0x30BB,
+   1,0x30BD,
+   1,0x30BF,
+   1,0x30C1,
+   1,0x30C4,
+   1,0x30C6,
+   1,0x30C8,
+   1,0x30CA,
+   1,0x30CB,
+   1,0x30CC,
+   1,0x30CD,
+   1,0x30CE,
+   1,0x30CF,
+   1,0x30D2,
+   1,0x30D5,
+   1,0x30D8,
+   1,0x30DB,
+   1,0x30DE,
+   1,0x30DF,
+   1,0x30E0,
+   1,0x30E1,
+   1,0x30E2,
+   1,0x30E4,
+   1,0x30E6,
+   1,0x30E8,
+   1,0x30E9,
+   1,0x30EA,
+   1,0x30EB,
+   1,0x30EC,
+   1,0x30ED,
+   1,0x30EF,
+   1,0x30F3,
+   1,0x3099,
+   1,0x309A,
+   1,0x3164,
+   1,0x3131,
+   1,0x3132,
+   1,0x3133,
+   1,0x3134,
+   1,0x3135,
+   1,0x3136,
+   1,0x3137,
+   1,0x3138,
+   1,0x3139,
+   1,0x313A,
+   1,0x313B,
+   1,0x313C,
+   1,0x313D,
+   1,0x313E,
+   1,0x313F,
+   1,0x3140,
+   1,0x3141,
+   1,0x3142,
+   1,0x3143,
+   1,0x3144,
+   1,0x3145,
+   1,0x3146,
+   1,0x3147,
+   1,0x3148,
+   1,0x3149,
+   1,0x314A,
+   1,0x314B,
+   1,0x314C,
+   1,0x314D,
+   1,0x314E,
+   1,0x314F,
+   1,0x3150,
+   1,0x3151,
+   1,0x3152,
+   1,0x3153,
+   1,0x3154,
+   1,0x3155,
+   1,0x3156,
+   1,0x3157,
+   1,0x3158,
+   1,0x3159,
+   1,0x315A,
+   1,0x315B,
+   1,0x315C,
+   1,0x315D,
+   1,0x315E,
+   1,0x315F,
+   1,0x3160,
+   1,0x3161,
+   1,0x3162,
+   1,0x3163,
+   1,0xA2,
+   1,0xA3,
+   1,0xAC,
+   1,0xAF,
+   1,0xA6,
+   1,0xA5,
+   1,0x20A9,
+   1,0x2502,
+   1,0x2190,
+   1,0x2191,
+   1,0x2192,
+   1,0x2193,
+   1,0x25A0,
+   1,0x25CB,
+   1, 'A',
+   1, 'B',
+   1, 'C',
+   1, 'D',
+   1, 'E',
+   1, 'F',
+   1, 'G',
+   1, 'H',
+   1, 'I',
+   1, 'J',
+   1, 'K',
+   1, 'L',
+   1, 'M',
+   1, 'N',
+   1, 'O',
+   1, 'P',
+   1, 'Q',
+   1, 'R',
+   1, 'S',
+   1, 'T',
+   1, 'U',
+   1, 'V',
+   1, 'W',
+   1, 'X',
+   1, 'Y',
+   1, 'Z',
+   1, 'a',
+   1, 'b',
+   1, 'c',
+   1, 'd',
+   1, 'e',
+   1, 'f',
+   1, 'g',
+   1, 'h',
+   1, 'i',
+   1, 'j',
+   1, 'k',
+   1, 'l',
+   1, 'm',
+   1, 'n',
+   1, 'o',
+   1, 'p',
+   1, 'q',
+   1, 'r',
+   1, 's',
+   1, 't',
+   1, 'u',
+   1, 'v',
+   1, 'w',
+   1, 'x',
+   1, 'y',
+   1, 'z',
+   1, 'A',
+   1, 'B',
+   1, 'C',
+   1, 'D',
+   1, 'E',
+   1, 'F',
+   1, 'G',
+   1, 'H',
+   1, 'I',
+   1, 'J',
+   1, 'K',
+   1, 'L',
+   1, 'M',
+   1, 'N',
+   1, 'O',
+   1, 'P',
+   1, 'Q',
+   1, 'R',
+   1, 'S',
+   1, 'T',
+   1, 'U',
+   1, 'V',
+   1, 'W',
+   1, 'X',
+   1, 'Y',
+   1, 'Z',
+   1, 'a',
+   1, 'b',
+   1, 'c',
+   1, 'd',
+   1, 'e',
+   1, 'f',
+   1, 'g',
+   1, 'i',
+   1, 'j',
+   1, 'k',
+   1, 'l',
+   1, 'm',
+   1, 'n',
+   1, 'o',
+   1, 'p',
+   1, 'q',
+   1, 'r',
+   1, 's',
+   1, 't',
+   1, 'u',
+   1, 'v',
+   1, 'w',
+   1, 'x',
+   1, 'y',
+   1, 'z',
+   1, 'A',
+   1, 'B',
+   1, 'C',
+   1, 'D',
+   1, 'E',
+   1, 'F',
+   1, 'G',
+   1, 'H',
+   1, 'I',
+   1, 'J',
+   1, 'K',
+   1, 'L',
+   1, 'M',
+   1, 'N',
+   1, 'O',
+   1, 'P',
+   1, 'Q',
+   1, 'R',
+   1, 'S',
+   1, 'T',
+   1, 'U',
+   1, 'V',
+   1, 'W',
+   1, 'X',
+   1, 'Y',
+   1, 'Z',
+   1, 'a',
+   1, 'b',
+   1, 'c',
+   1, 'd',
+   1, 'e',
+   1, 'f',
+   1, 'g',
+   1, 'h',
+   1, 'i',
+   1, 'j',
+   1, 'k',
+   1, 'l',
+   1, 'm',
+   1, 'n',
+   1, 'o',
+   1, 'p',
+   1, 'q',
+   1, 'r',
+   1, 's',
+   1, 't',
+   1, 'u',
+   1, 'v',
+   1, 'w',
+   1, 'x',
+   1, 'y',
+   1, 'z',
+   1, 'A',
+   1, 'C',
+   1, 'D',
+   1, 'G',
+   1, 'J',
+   1, 'K',
+   1, 'N',
+   1, 'O',
+   1, 'P',
+   1, 'Q',
+   1, 'S',
+   1, 'T',
+   1, 'U',
+   1, 'V',
+   1, 'W',
+   1, 'X',
+   1, 'Y',
+   1, 'Z',
+   1, 'a',
+   1, 'b',
+   1, 'c',
+   1, 'd',
+   1, 'f',
+   1, 'h',
+   1, 'i',
+   1, 'j',
+   1, 'k',
+   1, 'l',
+   1, 'm',
+   1, 'n',
+   1, 'p',
+   1, 'q',
+   1, 'r',
+   1, 's',
+   1, 't',
+   1, 'u',
+   1, 'v',
+   1, 'w',
+   1, 'x',
+   1, 'y',
+   1, 'z',
+   1, 'A',
+   1, 'B',
+   1, 'C',
+   1, 'D',
+   1, 'E',
+   1, 'F',
+   1, 'G',
+   1, 'H',
+   1, 'I',
+   1, 'J',
+   1, 'K',
+   1, 'L',
+   1, 'M',
+   1, 'N',
+   1, 'O',
+   1, 'P',
+   1, 'Q',
+   1, 'R',
+   1, 'S',
+   1, 'T',
+   1, 'U',
+   1, 'V',
+   1, 'W',
+   1, 'X',
+   1, 'Y',
+   1, 'Z',
+   1, 'a',
+   1, 'b',
+   1, 'c',
+   1, 'd',
+   1, 'e',
+   1, 'f',
+   1, 'g',
+   1, 'h',
+   1, 'i',
+   1, 'j',
+   1, 'k',
+   1, 'l',
+   1, 'm',
+   1, 'n',
+   1, 'o',
+   1, 'p',
+   1, 'q',
+   1, 'r',
+   1, 's',
+   1, 't',
+   1, 'u',
+   1, 'v',
+   1, 'w',
+   1, 'x',
+   1, 'y',
+   1, 'z',
+   1, 'A',
+   1, 'B',
+   1, 'D',
+   1, 'E',
+   1, 'F',
+   1, 'G',
+   1, 'J',
+   1, 'K',
+   1, 'L',
+   1, 'M',
+   1, 'N',
+   1, 'O',
+   1, 'P',
+   1, 'Q',
+   1, 'S',
+   1, 'T',
+   1, 'U',
+   1, 'V',
+   1, 'W',
+   1, 'X',
+   1, 'Y',
+   1, 'a',
+   1, 'b',
+   1, 'c',
+   1, 'd',
+   1, 'e',
+   1, 'f',
+   1, 'g',
+   1, 'h',
+   1, 'i',
+   1, 'j',
+   1, 'k',
+   1, 'l',
+   1, 'm',
+   1, 'n',
+   1, 'o',
+   1, 'p',
+   1, 'q',
+   1, 'r',
+   1, 's',
+   1, 't',
+   1, 'u',
+   1, 'v',
+   1, 'w',
+   1, 'x',
+   1, 'y',
+   1, 'z',
+   1, 'A',
+   1, 'B',
+   1, 'D',
+   1, 'E',
+   1, 'F',
+   1, 'G',
+   1, 'I',
+   1, 'J',
+   1, 'K',
+   1, 'L',
+   1, 'M',
+   1, 'O',
+   1, 'S',
+   1, 'T',
+   1, 'U',
+   1, 'V',
+   1, 'W',
+   1, 'X',
+   1, 'Y',
+   1, 'a',
+   1, 'b',
+   1, 'c',
+   1, 'd',
+   1, 'e',
+   1, 'f',
+   1, 'g',
+   1, 'h',
+   1, 'i',
+   1, 'j',
+   1, 'k',
+   1, 'l',
+   1, 'm',
+   1, 'n',
+   1, 'o',
+   1, 'p',
+   1, 'q',
+   1, 'r',
+   1, 's',
+   1, 't',
+   1, 'u',
+   1, 'v',
+   1, 'w',
+   1, 'x',
+   1, 'y',
+   1, 'z',
+   1, 'A',
+   1, 'B',
+   1, 'C',
+   1, 'D',
+   1, 'E',
+   1, 'F',
+   1, 'G',
+   1, 'H',
+   1, 'I',
+   1, 'J',
+   1, 'K',
+   1, 'L',
+   1, 'M',
+   1, 'N',
+   1, 'O',
+   1, 'P',
+   1, 'Q',
+   1, 'R',
+   1, 'S',
+   1, 'T',
+   1, 'U',
+   1, 'V',
+   1, 'W',
+   1, 'X',
+   1, 'Y',
+   1, 'Z',
+   1, 'a',
+   1, 'b',
+   1, 'c',
+   1, 'd',
+   1, 'e',
+   1, 'f',
+   1, 'g',
+   1, 'h',
+   1, 'i',
+   1, 'j',
+   1, 'k',
+   1, 'l',
+   1, 'm',
+   1, 'n',
+   1, 'o',
+   1, 'p',
+   1, 'q',
+   1, 'r',
+   1, 's',
+   1, 't',
+   1, 'u',
+   1, 'v',
+   1, 'w',
+   1, 'x',
+   1, 'y',
+   1, 'z',
+   1, 'A',
+   1, 'B',
+   1, 'C',
+   1, 'D',
+   1, 'E',
+   1, 'F',
+   1, 'G',
+   1, 'H',
+   1, 'I',
+   1, 'J',
+   1, 'K',
+   1, 'L',
+   1, 'M',
+   1, 'N',
+   1, 'O',
+   1, 'P',
+   1, 'Q',
+   1, 'R',
+   1, 'S',
+   1, 'T',
+   1, 'U',
+   1, 'V',
+   1, 'W',
+   1, 'X',
+   1, 'Y',
+   1, 'Z',
+   1, 'a',
+   1, 'b',
+   1, 'c',
+   1, 'd',
+   1, 'e',
+   1, 'f',
+   1, 'g',
+   1, 'h',
+   1, 'i',
+   1, 'j',
+   1, 'k',
+   1, 'l',
+   1, 'm',
+   1, 'n',
+   1, 'o',
+   1, 'p',
+   1, 'q',
+   1, 'r',
+   1, 's',
+   1, 't',
+   1, 'u',
+   1, 'v',
+   1, 'w',
+   1, 'x',
+   1, 'y',
+   1, 'z',
+   1, 'A',
+   1, 'B',
+   1, 'C',
+   1, 'D',
+   1, 'E',
+   1, 'F',
+   1, 'G',
+   1, 'H',
+   1, 'I',
+   1, 'J',
+   1, 'K',
+   1, 'L',
+   1, 'M',
+   1, 'N',
+   1, 'O',
+   1, 'P',
+   1, 'Q',
+   1, 'R',
+   1, 'S',
+   1, 'T',
+   1, 'U',
+   1, 'V',
+   1, 'W',
+   1, 'X',
+   1, 'Y',
+   1, 'Z',
+   1, 'a',
+   1, 'b',
+   1, 'c',
+   1, 'd',
+   1, 'e',
+   1, 'f',
+   1, 'g',
+   1, 'h',
+   1, 'i',
+   1, 'j',
+   1, 'k',
+   1, 'l',
+   1, 'm',
+   1, 'n',
+   1, 'o',
+   1, 'p',
+   1, 'q',
+   1, 'r',
+   1, 's',
+   1, 't',
+   1, 'u',
+   1, 'v',
+   1, 'w',
+   1, 'x',
+   1, 'y',
+   1, 'z',
+   1, 'A',
+   1, 'B',
+   1, 'C',
+   1, 'D',
+   1, 'E',
+   1, 'F',
+   1, 'G',
+   1, 'H',
+   1, 'I',
+   1, 'J',
+   1, 'K',
+   1, 'L',
+   1, 'M',
+   1, 'N',
+   1, 'O',
+   1, 'P',
+   1, 'Q',
+   1, 'R',
+   1, 'S',
+   1, 'T',
+   1, 'U',
+   1, 'V',
+   1, 'W',
+   1, 'X',
+   1, 'Y',
+   1, 'Z',
+   1, 'a',
+   1, 'b',
+   1, 'c',
+   1, 'd',
+   1, 'e',
+   1, 'f',
+   1, 'g',
+   1, 'h',
+   1, 'i',
+   1, 'j',
+   1, 'k',
+   1, 'l',
+   1, 'm',
+   1, 'n',
+   1, 'o',
+   1, 'p',
+   1, 'q',
+   1, 'r',
+   1, 's',
+   1, 't',
+   1, 'u',
+   1, 'v',
+   1, 'w',
+   1, 'x',
+   1, 'y',
+   1, 'z',
+   1, 'A',
+   1, 'B',
+   1, 'C',
+   1, 'D',
+   1, 'E',
+   1, 'F',
+   1, 'G',
+   1, 'H',
+   1, 'I',
+   1, 'J',
+   1, 'K',
+   1, 'L',
+   1, 'M',
+   1, 'N',
+   1, 'O',
+   1, 'P',
+   1, 'Q',
+   1, 'R',
+   1, 'S',
+   1, 'T',
+   1, 'U',
+   1, 'V',
+   1, 'W',
+   1, 'X',
+   1, 'Y',
+   1, 'Z',
+   1, 'a',
+   1, 'b',
+   1, 'c',
+   1, 'd',
+   1, 'e',
+   1, 'f',
+   1, 'g',
+   1, 'h',
+   1, 'i',
+   1, 'j',
+   1, 'k',
+   1, 'l',
+   1, 'm',
+   1, 'n',
+   1, 'o',
+   1, 'p',
+   1, 'q',
+   1, 'r',
+   1, 's',
+   1, 't',
+   1, 'u',
+   1, 'v',
+   1, 'w',
+   1, 'x',
+   1, 'y',
+   1, 'z',
+   1, 'A',
+   1, 'B',
+   1, 'C',
+   1, 'D',
+   1, 'E',
+   1, 'F',
+   1, 'G',
+   1, 'H',
+   1, 'I',
+   1, 'J',
+   1, 'K',
+   1, 'L',
+   1, 'M',
+   1, 'N',
+   1, 'O',
+   1, 'P',
+   1, 'Q',
+   1, 'R',
+   1, 'S',
+   1, 'T',
+   1, 'U',
+   1, 'V',
+   1, 'W',
+   1, 'X',
+   1, 'Y',
+   1, 'Z',
+   1, 'a',
+   1, 'b',
+   1, 'c',
+   1, 'd',
+   1, 'e',
+   1, 'f',
+   1, 'g',
+   1, 'h',
+   1, 'i',
+   1, 'j',
+   1, 'k',
+   1, 'l',
+   1, 'm',
+   1, 'n',
+   1, 'o',
+   1, 'p',
+   1, 'q',
+   1, 'r',
+   1, 's',
+   1, 't',
+   1, 'u',
+   1, 'v',
+   1, 'w',
+   1, 'x',
+   1, 'y',
+   1, 'z',
+   1,0x0391,
+   1,0x0392,
+   1,0x0393,
+   1,0x0394,
+   1,0x0395,
+   1,0x0396,
+   1,0x0397,
+   1,0x0398,
+   1,0x0399,
+   1,0x039A,
+   1,0x039B,
+   1,0x039C,
+   1,0x039D,
+   1,0x039E,
+   1,0x039F,
+   1,0x03A0,
+   1,0x03A1,
+   1,0x03F4,
+   1,0x03A3,
+   1,0x03A4,
+   1,0x03A5,
+   1,0x03A6,
+   1,0x03A7,
+   1,0x03A8,
+   1,0x03A9,
+   1,0x2207,
+   1,0x03B1,
+   1,0x03B2,
+   1,0x03B3,
+   1,0x03B4,
+   1,0x03B5,
+   1,0x03B6,
+   1,0x03B7,
+   1,0x03B8,
+   1,0x03B9,
+   1,0x03BA,
+   1,0x03BB,
+   1,0x03BC,
+   1,0x03BD,
+   1,0x03BE,
+   1,0x03BF,
+   1,0x03C0,
+   1,0x03C1,
+   1,0x03C2,
+   1,0x03C3,
+   1,0x03C4,
+   1,0x03C5,
+   1,0x03C6,
+   1,0x03C7,
+   1,0x03C8,
+   1,0x03C9,
+   1,0x2202,
+   1,0x03F5,
+   1,0x03D1,
+   1,0x03F0,
+   1,0x03D5,
+   1,0x03F1,
+   1,0x03D6,
+   1,0x0391,
+   1,0x0392,
+   1,0x0393,
+   1,0x0394,
+   1,0x0395,
+   1,0x0396,
+   1,0x0397,
+   1,0x0398,
+   1,0x0399,
+   1,0x039A,
+   1,0x039B,
+   1,0x039C,
+   1,0x039D,
+   1,0x039E,
+   1,0x039F,
+   1,0x03A0,
+   1,0x03A1,
+   1,0x03F4,
+   1,0x03A3,
+   1,0x03A4,
+   1,0x03A5,
+   1,0x03A6,
+   1,0x03A7,
+   1,0x03A8,
+   1,0x03A9,
+   1,0x2207,
+   1,0x03B1,
+   1,0x03B2,
+   1,0x03B3,
+   1,0x03B4,
+   1,0x03B5,
+   1,0x03B6,
+   1,0x03B7,
+   1,0x03B8,
+   1,0x03B9,
+   1,0x03BA,
+   1,0x03BB,
+   1,0x03BC,
+   1,0x03BD,
+   1,0x03BE,
+   1,0x03BF,
+   1,0x03C0,
+   1,0x03C1,
+   1,0x03C2,
+   1,0x03C3,
+   1,0x03C4,
+   1,0x03C5,
+   1,0x03C6,
+   1,0x03C7,
+   1,0x03C8,
+   1,0x03C9,
+   1,0x2202,
+   1,0x03F5,
+   1,0x03D1,
+   1,0x03F0,
+   1,0x03D5,
+   1,0x03F1,
+   1,0x03D6,
+   1,0x0391,
+   1,0x0392,
+   1,0x0393,
+   1,0x0394,
+   1,0x0395,
+   1,0x0396,
+   1,0x0397,
+   1,0x0398,
+   1,0x0399,
+   1,0x039A,
+   1,0x039B,
+   1,0x039C,
+   1,0x039D,
+   1,0x039E,
+   1,0x039F,
+   1,0x03A0,
+   1,0x03A1,
+   1,0x03F4,
+   1,0x03A3,
+   1,0x03A4,
+   1,0x03A5,
+   1,0x03A6,
+   1,0x03A7,
+   1,0x03A8,
+   1,0x03A9,
+   1,0x2207,
+   1,0x03B1,
+   1,0x03B2,
+   1,0x03B3,
+   1,0x03B4,
+   1,0x03B5,
+   1,0x03B6,
+   1,0x03B7,
+   1,0x03B8,
+   1,0x03B9,
+   1,0x03BA,
+   1,0x03BB,
+   1,0x03BC,
+   1,0x03BD,
+   1,0x03BE,
+   1,0x03BF,
+   1,0x03C0,
+   1,0x03C1,
+   1,0x03C2,
+   1,0x03C3,
+   1,0x03C4,
+   1,0x03C5,
+   1,0x03C6,
+   1,0x03C7,
+   1,0x03C8,
+   1,0x03C9,
+   1,0x2202,
+   1,0x03F5,
+   1,0x03D1,
+   1,0x03F0,
+   1,0x03D5,
+   1,0x03F1,
+   1,0x03D6,
+   1,0x0391,
+   1,0x0392,
+   1,0x0393,
+   1,0x0394,
+   1,0x0395,
+   1,0x0396,
+   1,0x0397,
+   1,0x0398,
+   1,0x0399,
+   1,0x039A,
+   1,0x039B,
+   1,0x039C,
+   1,0x039D,
+   1,0x039E,
+   1,0x039F,
+   1,0x03A0,
+   1,0x03A1,
+   1,0x03F4,
+   1,0x03A3,
+   1,0x03A4,
+   1,0x03A5,
+   1,0x03A6,
+   1,0x03A7,
+   1,0x03A8,
+   1,0x03A9,
+   1,0x2207,
+   1,0x03B1,
+   1,0x03B2,
+   1,0x03B3,
+   1,0x03B4,
+   1,0x03B5,
+   1,0x03B6,
+   1,0x03B7,
+   1,0x03B8,
+   1,0x03B9,
+   1,0x03BA,
+   1,0x03BB,
+   1,0x03BC,
+   1,0x03BD,
+   1,0x03BE,
+   1,0x03BF,
+   1,0x03C0,
+   1,0x03C1,
+   1,0x03C2,
+   1,0x03C3,
+   1,0x03C4,
+   1,0x03C5,
+   1,0x03C6,
+   1,0x03C7,
+   1,0x03C8,
+   1,0x03C9,
+   1,0x2202,
+   1,0x03F5,
+   1,0x03D1,
+   1,0x03F0,
+   1,0x03D5,
+   1,0x03F1,
+   1,0x03D6,
+   1,0x0391,
+   1,0x0392,
+   1,0x0393,
+   1,0x0394,
+   1,0x0395,
+   1,0x0396,
+   1,0x0397,
+   1,0x0398,
+   1,0x0399,
+   1,0x039A,
+   1,0x039B,
+   1,0x039C,
+   1,0x039D,
+   1,0x039E,
+   1,0x039F,
+   1,0x03A0,
+   1,0x03A1,
+   1,0x03F4,
+   1,0x03A3,
+   1,0x03A4,
+   1,0x03A5,
+   1,0x03A6,
+   1,0x03A7,
+   1,0x03A8,
+   1,0x03A9,
+   1,0x2207,
+   1,0x03B1,
+   1,0x03B2,
+   1,0x03B3,
+   1,0x03B4,
+   1,0x03B5,
+   1,0x03B6,
+   1,0x03B7,
+   1,0x03B8,
+   1,0x03B9,
+   1,0x03BA,
+   1,0x03BB,
+   1,0x03BC,
+   1,0x03BD,
+   1,0x03BE,
+   1,0x03BF,
+   1,0x03C0,
+   1,0x03C1,
+   1,0x03C2,
+   1,0x03C3,
+   1,0x03C4,
+   1,0x03C5,
+   1,0x03C6,
+   1,0x03C7,
+   1,0x03C8,
+   1,0x03C9,
+   1,0x2202,
+   1,0x03F5,
+   1,0x03D1,
+   1,0x03F0,
+   1,0x03D5,
+   1,0x03F1,
+   1,0x03D6,
+   1, '0',
+   1, '1',
+   1, '2',
+   1, '3',
+   1, '4',
+   1, '5',
+   1, '6',
+   1, '7',
+   1, '8',
+   1, '9',
+   1, '0',
+   1, '1',
+   1, '2',
+   1, '3',
+   1, '4',
+   1, '5',
+   1, '6',
+   1, '7',
+   1, '8',
+   1, '9',
+   1, '0',
+   1, '1',
+   1, '2',
+   1, '3',
+   1, '4',
+   1, '5',
+   1, '6',
+   1, '7',
+   1, '8',
+   1, '9',
+   1, '0',
+   1, '1',
+   1, '2',
+   1, '3',
+   1, '4',
+   1, '5',
+   1, '6',
+   1, '7',
+   1, '8',
+   1, '9',
+   1, '0',
+   1, '1',
+   1, '2',
+   1, '3',
+   1, '4',
+   1, '5',
+   1, '6',
+   1, '7',
+   1, '8',
+   1, '9',
+   1,0x4E3D,
+   1,0x4E38,
+   1,0x4E41,
+   1,0x20122,
+   1,0x4F60,
+   1,0x4FAE,
+   1,0x4FBB,
+   1,0x5002,
+   1,0x507A,
+   1,0x5099,
+   1,0x50E7,
+   1,0x50CF,
+   1,0x349E,
+   1,0x2063A,
+   1,0x514D,
+   1,0x5154,
+   1,0x5164,
+   1,0x5177,
+   1,0x2051C,
+   1,0x34B9,
+   1,0x5167,
+   1,0x518D,
+   1,0x2054B,
+   1,0x5197,
+   1,0x51A4,
+   1,0x4ECC,
+   1,0x51AC,
+   1,0x51B5,
+   1,0x291DF,
+   1,0x51F5,
+   1,0x5203,
+   1,0x34DF,
+   1,0x523B,
+   1,0x5246,
+   1,0x5272,
+   1,0x5277,
+   1,0x3515,
+   1,0x52C7,
+   1,0x52C9,
+   1,0x52E4,
+   1,0x52FA,
+   1,0x5305,
+   1,0x5306,
+   1,0x5317,
+   1,0x5349,
+   1,0x5351,
+   1,0x535A,
+   1,0x5373,
+   1,0x537D,
+   1,0x537F,
+   1,0x537F,
+   1,0x537F,
+   1,0x20A2C,
+   1,0x7070,
+   1,0x53CA,
+   1,0x53DF,
+   1,0x20B63,
+   1,0x53EB,
+   1,0x53F1,
+   1,0x5406,
+   1,0x549E,
+   1,0x5438,
+   1,0x5448,
+   1,0x5468,
+   1,0x54A2,
+   1,0x54F6,
+   1,0x5510,
+   1,0x5553,
+   1,0x5563,
+   1,0x5584,
+   1,0x5584,
+   1,0x5599,
+   1,0x55AB,
+   1,0x55B3,
+   1,0x55C2,
+   1,0x5716,
+   1,0x5606,
+   1,0x5717,
+   1,0x5651,
+   1,0x5674,
+   1,0x5207,
+   1,0x58EE,
+   1,0x57CE,
+   1,0x57F4,
+   1,0x580D,
+   1,0x578B,
+   1,0x5832,
+   1,0x5831,
+   1,0x58AC,
+   1,0x214E4,
+   1,0x58F2,
+   1,0x58F7,
+   1,0x5906,
+   1,0x591A,
+   1,0x5922,
+   1,0x5962,
+   1,0x216A8,
+   1,0x216EA,
+   1,0x59EC,
+   1,0x5A1B,
+   1,0x5A27,
+   1,0x59D8,
+   1,0x5A66,
+   1,0x36EE,
+   1,0x36FC,
+   1,0x5B08,
+   1,0x5B3E,
+   1,0x5B3E,
+   1,0x219C8,
+   1,0x5BC3,
+   1,0x5BD8,
+   1,0x5BE7,
+   1,0x5BF3,
+   1,0x21B18,
+   1,0x5BFF,
+   1,0x5C06,
+   1,0x5F53,
+   1,0x5C22,
+   1,0x3781,
+   1,0x5C60,
+   1,0x5C6E,
+   1,0x5CC0,
+   1,0x5C8D,
+   1,0x21DE4,
+   1,0x5D43,
+   1,0x21DE6,
+   1,0x5D6E,
+   1,0x5D6B,
+   1,0x5D7C,
+   1,0x5DE1,
+   1,0x5DE2,
+   1,0x382F,
+   1,0x5DFD,
+   1,0x5E28,
+   1,0x5E3D,
+   1,0x5E69,
+   1,0x3862,
+   1,0x22183,
+   1,0x387C,
+   1,0x5EB0,
+   1,0x5EB3,
+   1,0x5EB6,
+   1,0x5ECA,
+   1,0x2A392,
+   1,0x5EFE,
+   1,0x22331,
+   1,0x22331,
+   1,0x8201,
+   1,0x5F22,
+   1,0x5F22,
+   1,0x38C7,
+   1,0x232B8,
+   1,0x261DA,
+   1,0x5F62,
+   1,0x5F6B,
+   1,0x38E3,
+   1,0x5F9A,
+   1,0x5FCD,
+   1,0x5FD7,
+   1,0x5FF9,
+   1,0x6081,
+   1,0x393A,
+   1,0x391C,
+   1,0x6094,
+   1,0x226D4,
+   1,0x60C7,
+   1,0x6148,
+   1,0x614C,
+   1,0x614E,
+   1,0x614C,
+   1,0x617A,
+   1,0x618E,
+   1,0x61B2,
+   1,0x61A4,
+   1,0x61AF,
+   1,0x61DE,
+   1,0x61F2,
+   1,0x61F6,
+   1,0x6210,
+   1,0x621B,
+   1,0x625D,
+   1,0x62B1,
+   1,0x62D4,
+   1,0x6350,
+   1,0x22B0C,
+   1,0x633D,
+   1,0x62FC,
+   1,0x6368,
+   1,0x6383,
+   1,0x63E4,
+   1,0x22BF1,
+   1,0x6422,
+   1,0x63C5,
+   1,0x63A9,
+   1,0x3A2E,
+   1,0x6469,
+   1,0x647E,
+   1,0x649D,
+   1,0x6477,
+   1,0x3A6C,
+   1,0x654F,
+   1,0x656C,
+   1,0x2300A,
+   1,0x65E3,
+   1,0x66F8,
+   1,0x6649,
+   1,0x3B19,
+   1,0x6691,
+   1,0x3B08,
+   1,0x3AE4,
+   1,0x5192,
+   1,0x5195,
+   1,0x6700,
+   1,0x669C,
+   1,0x80AD,
+   1,0x43D9,
+   1,0x6717,
+   1,0x671B,
+   1,0x6721,
+   1,0x675E,
+   1,0x6753,
+   1,0x233C3,
+   1,0x3B49,
+   1,0x67FA,
+   1,0x6785,
+   1,0x6852,
+   1,0x6885,
+   1,0x2346D,
+   1,0x688E,
+   1,0x681F,
+   1,0x6914,
+   1,0x3B9D,
+   1,0x6942,
+   1,0x69A3,
+   1,0x69EA,
+   1,0x6AA8,
+   1,0x236A3,
+   1,0x6ADB,
+   1,0x3C18,
+   1,0x6B21,
+   1,0x238A7,
+   1,0x6B54,
+   1,0x3C4E,
+   1,0x6B72,
+   1,0x6B9F,
+   1,0x6BBA,
+   1,0x6BBB,
+   1,0x23A8D,
+   1,0x21D0B,
+   1,0x23AFA,
+   1,0x6C4E,
+   1,0x23CBC,
+   1,0x6CBF,
+   1,0x6CCD,
+   1,0x6C67,
+   1,0x6D16,
+   1,0x6D3E,
+   1,0x6D77,
+   1,0x6D41,
+   1,0x6D69,
+   1,0x6D78,
+   1,0x6D85,
+   1,0x23D1E,
+   1,0x6D34,
+   1,0x6E2F,
+   1,0x6E6E,
+   1,0x3D33,
+   1,0x6ECB,
+   1,0x6EC7,
+   1,0x23ED1,
+   1,0x6DF9,
+   1,0x6F6E,
+   1,0x23F5E,
+   1,0x23F8E,
+   1,0x6FC6,
+   1,0x7039,
+   1,0x701E,
+   1,0x701B,
+   1,0x3D96,
+   1,0x704A,
+   1,0x707D,
+   1,0x7077,
+   1,0x70AD,
+   1,0x20525,
+   1,0x7145,
+   1,0x24263,
+   1,0x719C,
+   1,0x243AB,
+   1,0x7228,
+   1,0x7235,
+   1,0x7250,
+   1,0x24608,
+   1,0x7280,
+   1,0x7295,
+   1,0x24735,
+   1,0x24814,
+   1,0x737A,
+   1,0x738B,
+   1,0x3EAC,
+   1,0x73A5,
+   1,0x3EB8,
+   1,0x3EB8,
+   1,0x7447,
+   1,0x745C,
+   1,0x7471,
+   1,0x7485,
+   1,0x74CA,
+   1,0x3F1B,
+   1,0x7524,
+   1,0x24C36,
+   1,0x753E,
+   1,0x24C92,
+   1,0x7570,
+   1,0x2219F,
+   1,0x7610,
+   1,0x24FA1,
+   1,0x24FB8,
+   1,0x25044,
+   1,0x3FFC,
+   1,0x4008,
+   1,0x76F4,
+   1,0x250F3,
+   1,0x250F2,
+   1,0x25119,
+   1,0x25133,
+   1,0x771E,
+   1,0x771F,
+   1,0x771F,
+   1,0x774A,
+   1,0x4039,
+   1,0x778B,
+   1,0x4046,
+   1,0x4096,
+   1,0x2541D,
+   1,0x784E,
+   1,0x788C,
+   1,0x78CC,
+   1,0x40E3,
+   1,0x25626,
+   1,0x7956,
+   1,0x2569A,
+   1,0x256C5,
+   1,0x798F,
+   1,0x79EB,
+   1,0x412F,
+   1,0x7A40,
+   1,0x7A4A,
+   1,0x7A4F,
+   1,0x2597C,
+   1,0x25AA7,
+   1,0x25AA7,
+   1,0x7AEE,
+   1,0x4202,
+   1,0x25BAB,
+   1,0x7BC6,
+   1,0x7BC9,
+   1,0x4227,
+   1,0x25C80,
+   1,0x7CD2,
+   1,0x42A0,
+   1,0x7CE8,
+   1,0x7CE3,
+   1,0x7D00,
+   1,0x25F86,
+   1,0x7D63,
+   1,0x4301,
+   1,0x7DC7,
+   1,0x7E02,
+   1,0x7E45,
+   1,0x4334,
+   1,0x26228,
+   1,0x26247,
+   1,0x4359,
+   1,0x262D9,
+   1,0x7F7A,
+   1,0x2633E,
+   1,0x7F95,
+   1,0x7FFA,
+   1,0x8005,
+   1,0x264DA,
+   1,0x26523,
+   1,0x8060,
+   1,0x265A8,
+   1,0x8070,
+   1,0x2335F,
+   1,0x43D5,
+   1,0x80B2,
+   1,0x8103,
+   1,0x440B,
+   1,0x813E,
+   1,0x5AB5,
+   1,0x267A7,
+   1,0x267B5,
+   1,0x23393,
+   1,0x2339C,
+   1,0x8201,
+   1,0x8204,
+   1,0x8F9E,
+   1,0x446B,
+   1,0x8291,
+   1,0x828B,
+   1,0x829D,
+   1,0x52B3,
+   1,0x82B1,
+   1,0x82B3,
+   1,0x82BD,
+   1,0x82E6,
+   1,0x26B3C,
+   1,0x82E5,
+   1,0x831D,
+   1,0x8363,
+   1,0x83AD,
+   1,0x8323,
+   1,0x83BD,
+   1,0x83E7,
+   1,0x8457,
+   1,0x8353,
+   1,0x83CA,
+   1,0x83CC,
+   1,0x83DC,
+   1,0x26C36,
+   1,0x26D6B,
+   1,0x26CD5,
+   1,0x452B,
+   1,0x84F1,
+   1,0x84F3,
+   1,0x8516,
+   1,0x273CA,
+   1,0x8564,
+   1,0x26F2C,
+   1,0x455D,
+   1,0x4561,
+   1,0x26FB1,
+   1,0x270D2,
+   1,0x456B,
+   1,0x8650,
+   1,0x865C,
+   1,0x8667,
+   1,0x8669,
+   1,0x86A9,
+   1,0x8688,
+   1,0x870E,
+   1,0x86E2,
+   1,0x8779,
+   1,0x8728,
+   1,0x876B,
+   1,0x8786,
+   1,0x45D7,
+   1,0x87E1,
+   1,0x8801,
+   1,0x45F9,
+   1,0x8860,
+   1,0x8863,
+   1,0x27667,
+   1,0x88D7,
+   1,0x88DE,
+   1,0x4635,
+   1,0x88FA,
+   1,0x34BB,
+   1,0x278AE,
+   1,0x27966,
+   1,0x46BE,
+   1,0x46C7,
+   1,0x8AA0,
+   1,0x8AED,
+   1,0x8B8A,
+   1,0x8C55,
+   1,0x27CA8,
+   1,0x8CAB,
+   1,0x8CC1,
+   1,0x8D1B,
+   1,0x8D77,
+   1,0x27F2F,
+   1,0x20804,
+   1,0x8DCB,
+   1,0x8DBC,
+   1,0x8DF0,
+   1,0x208DE,
+   1,0x8ED4,
+   1,0x8F38,
+   1,0x285D2,
+   1,0x285ED,
+   1,0x9094,
+   1,0x90F1,
+   1,0x9111,
+   1,0x2872E,
+   1,0x911B,
+   1,0x9238,
+   1,0x92D7,
+   1,0x92D8,
+   1,0x927C,
+   1,0x93F9,
+   1,0x9415,
+   1,0x28BFA,
+   1,0x958B,
+   1,0x4995,
+   1,0x95B7,
+   1,0x28D77,
+   1,0x49E6,
+   1,0x96C3,
+   1,0x5DB2,
+   1,0x9723,
+   1,0x29145,
+   1,0x2921A,
+   1,0x4A6E,
+   1,0x4A76,
+   1,0x97E0,
+   1,0x2940A,
+   1,0x4AB2,
+   1,0x29496,
+   1,0x980B,
+   1,0x980B,
+   1,0x9829,
+   1,0x295B6,
+   1,0x98E2,
+   1,0x4B33,
+   1,0x9929,
+   1,0x99A7,
+   1,0x99C2,
+   1,0x99FE,
+   1,0x4BCE,
+   1,0x29B30,
+   1,0x9B12,
+   1,0x9C40,
+   1,0x9CFD,
+   1,0x4CCE,
+   1,0x4CED,
+   1,0x9D67,
+   1,0x2A0CE,
+   1,0x4CF8,
+   1,0x2A105,
+   1,0x2A20E,
+   1,0x2A291,
+   1,0x9EBB,
+   1,0x4D56,
+   1,0x9EF9,
+   1,0x9EFE,
+   1,0x9F05,
+   1,0x9F0F,
+   1,0x9F16,
+   1,0x9F3B,
+   1,0x2A600,
+};
+
+static const short translit_page00[344] = {
+     0,    2,    4,    6,   -1,    9,   13,   15, /* 0xa0-0xa7 */
+    18,   20,   24,   26,   29,   33,   35,   -1, /* 0xa8-0xaf */
+    39,   42,   46,   49,   52,   54,   56,   58, /* 0xb0-0xb7 */
+    60,   62,   65,   67,   70,   76,   82,   88, /* 0xb8-0xbf */
+    90,   93,   96,   99,  102,  105,  107,  110, /* 0xc0-0xc7 */
+   112,  115,  118,  121,  124,  127,  130,  133, /* 0xc8-0xcf */
+   136,  138,  141,  144,  147,  150,  153,  156, /* 0xd0-0xd7 */
+   158,  160,  163,  166,  169,  172,  175,  178, /* 0xd8-0xdf */
+   181,  184,  187,  190,  193,  196,  198,  201, /* 0xe0-0xe7 */
+   203,  206,  209,  212,  215,  218,  221,  224, /* 0xe8-0xef */
+   227,  229,  232,  235,  238,  241,  244,  247, /* 0xf0-0xf7 */
+   249,  251,  254,  257,  260,  263,  266,  269, /* 0xf8-0xff */
+  /* 0x0100 */
+   272,  274,  276,  278,  280,  282,  284,  287, /* 0x00-0x07 */
+   290,  293,  296,  298,  300,  302,  304,  306, /* 0x08-0x0f */
+   308,  310,  312,  314,  316,  318,  320,  322, /* 0x10-0x17 */
+   324,  326,  328,  330,  332,  335,  338,  340, /* 0x18-0x1f */
+   342,  344,  346,  348,  350,  353,  356,  358, /* 0x20-0x27 */
+   360,  363,  366,  368,  370,  372,  374,  376, /* 0x28-0x2f */
+   378,  380,  382,  385,  388,  391,  394,  396, /* 0x30-0x37 */
+    -1,  398,  400,  402,  404,  406,  408,  410, /* 0x38-0x3f */
+   412,  414,  416,  418,  421,  424,  426,  428, /* 0x40-0x47 */
+   430,  432,   -1,   -1,  435,  437,  439,  441, /* 0x48-0x4f */
+   443,  446,  449,  452,  455,  458,  461,  463, /* 0x50-0x57 */
+   465,  467,  469,  472,  475,  478,  481,  483, /* 0x58-0x5f */
+   485,  487,  489,  491,  493,  495,  497,  499, /* 0x60-0x67 */
+   501,  504,  507,  509,  511,  513,  515,  517, /* 0x68-0x6f */
+   519,  522,  525,  527,  529,  532,  535,  538, /* 0x70-0x77 */
+   541,  544,  547,  550,  552,  554,  556,  558, /* 0x78-0x7f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x80-0x87 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x88-0x8f */
+    -1,   -1,  560,   -1,   -1,   -1,   -1,   -1, /* 0x90-0x97 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x98-0x9f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xa0-0xa7 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xa8-0xaf */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xb0-0xb7 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xb8-0xbf */
+    -1,   -1,   -1,   -1,  562,  565,  568,  571, /* 0xc0-0xc7 */
+   574,  577,  580,  583,  586,   -1,   -1,   -1, /* 0xc8-0xcf */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xd0-0xd7 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xd8-0xdf */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xe0-0xe7 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xe8-0xef */
+    -1,  589,  592,  595,   -1,   -1,   -1,   -1, /* 0xf0-0xf7 */
+};
+static const short translit_page02[8] = {
+   598,  600,  602,  604,   -1,   -1,   -1,   -1, /* 0x18-0x1f */
+};
+static const short translit_page02_1[40] = {
+    -1,  606,  608,  610,  612,  614,   -1,   -1, /* 0xb8-0xbf */
+    -1,   -1,   -1,   -1,   -1,   -1,  616,   -1, /* 0xc0-0xc7 */
+   618,  620,  622,  624,   -1,  626,   -1,   -1, /* 0xc8-0xcf */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xd0-0xd7 */
+    -1,   -1,   -1,   -1,  628,  630,   -1,   -1, /* 0xd8-0xdf */
+};
+static const short translit_page03[48] = {
+   632,  634,  636,   -1,   -1,  638,  640,   -1, /* 0xd0-0xd7 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xd8-0xdf */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xe0-0xe7 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xe8-0xef */
+   642,  644,  646,   -1,  648,  650,   -1,   -1, /* 0xf0-0xf7 */
+    -1,  652,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xf8-0xff */
+};
+static const short translit_page05[8] = {
+   657,  660,  663,   -1,   -1,   -1,   -1,   -1, /* 0xf0-0xf7 */
+};
+static const short translit_page06[16] = {
+    -1,   -1,   -1,   -1,   -1,  666,  669,  672, /* 0x70-0x77 */
+   675,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x78-0x7f */
+};
+static const short translit_page0e[48] = {
+    -1,   -1,   -1,  681,   -1,   -1,   -1,   -1, /* 0xb0-0xb7 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xb8-0xbf */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xc0-0xc7 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xc8-0xcf */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xd0-0xd7 */
+    -1,   -1,   -1,   -1,  684,  687,   -1,   -1, /* 0xd8-0xdf */
+};
+static const short translit_page0f[16] = {
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,  690, /* 0x70-0x77 */
+    -1,  693,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x78-0x7f */
+};
+static const short translit_page1e[160] = {
+    -1,   -1,  696,  698,   -1,   -1,   -1,   -1, /* 0x00-0x07 */
+    -1,   -1,  700,  702,   -1,   -1,   -1,   -1, /* 0x08-0x0f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x10-0x17 */
+    -1,   -1,   -1,   -1,   -1,   -1,  704,  706, /* 0x18-0x1f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x20-0x27 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x28-0x2f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x30-0x37 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x38-0x3f */
+   708,  710,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x40-0x47 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x48-0x4f */
+    -1,   -1,   -1,   -1,   -1,   -1,  712,  714, /* 0x50-0x57 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x58-0x5f */
+   716,  718,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x60-0x67 */
+    -1,   -1,  720,  722,   -1,   -1,   -1,   -1, /* 0x68-0x6f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x70-0x77 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x78-0x7f */
+   724,  727,  730,  733,  736,  739,   -1,   -1, /* 0x80-0x87 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x88-0x8f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x90-0x97 */
+    -1,   -1,  742,   -1,   -1,   -1,   -1,   -1, /* 0x98-0x9f */
+};
+static const short translit_page1e_2[8] = {
+    -1,   -1,  745,  748,   -1,   -1,   -1,   -1, /* 0xf0-0xf7 */
+};
+static const short translit_page20[88] = {
+    -1,   -1,  751,  753,  755,  757,  759,   -1, /* 0x00-0x07 */
+   761,  763,  765,   -1,   -1,   -1,   -1,   -1, /* 0x08-0x0f */
+   767,  769,  771,  773,  775,  777,   -1,   -1, /* 0x10-0x17 */
+   779,  781,  783,  785,  787,  789,  791,  793, /* 0x18-0x1f */
+   795,   -1,  797,   -1,  799,  801,  804,   -1, /* 0x20-0x27 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x28-0x2f */
+   808,   -1,  813,  815,  818,   -1,  822,  825, /* 0x30-0x37 */
+    -1,  829,  831,   -1,  833,   -1,   -1,   -1, /* 0x38-0x3f */
+    -1,   -1,   -1,   -1,  836,   -1,   -1,  838, /* 0x40-0x47 */
+   841,  844,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x48-0x4f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,  847, /* 0x50-0x57 */
+};
+static const short translit_page20_3[8] = {
+   852,   -1,   -1,  855,  860,   -1,   -1,   -1, /* 0xa8-0xaf */
+};
+static const short translit_page21[216] = {
+   864,  868,  872,  874,   -1,  877,  881,  885, /* 0x00-0x07 */
+    -1,  887,  890,  892,  894,  896,  898,  900, /* 0x08-0x0f */
+   902,  904,  906,  908,   -1,  910,  912,   -1, /* 0x10-0x17 */
+    -1,  915,  917,  919,  921,  923,   -1,   -1, /* 0x18-0x1f */
+    -1,  925,  929,   -1,  932,   -1,  934,   -1, /* 0x20-0x27 */
+   938,   -1,   -1,   -1,  940,  942,  944,  946, /* 0x28-0x2f */
+   948,  950,   -1,  952,  954,  956,  958,  960, /* 0x30-0x37 */
+   962,  964,   -1,  966,   -1,  970,  972,  974, /* 0x38-0x3f */
+   976,   -1,   -1,   -1,   -1,  978,  980,  982, /* 0x40-0x47 */
+   984,  986,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x48-0x4f */
+    -1,   -1,   -1,  988,  994, 1000, 1006, 1012, /* 0x50-0x57 */
+  1018, 1024, 1030, 1036, 1042, 1048, 1054, 1060, /* 0x58-0x5f */
+  1064, 1066, 1069, 1073, 1076, 1078, 1081, 1085, /* 0x60-0x67 */
+  1090, 1093, 1095, 1098, 1102, 1104, 1106, 1108, /* 0x68-0x6f */
+  1110, 1112, 1115, 1119, 1122, 1124, 1127, 1131, /* 0x70-0x77 */
+  1136, 1139, 1141, 1144, 1148, 1150, 1152, 1154, /* 0x78-0x7f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x80-0x87 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x88-0x8f */
+  1156, 1159, 1161, 1164, 1166,   -1,   -1,   -1, /* 0x90-0x97 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x98-0x9f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xa0-0xa7 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xa8-0xaf */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xb0-0xb7 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xb8-0xbf */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xc0-0xc7 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xc8-0xcf */
+  1170,   -1, 1173,   -1, 1176,   -1,   -1,   -1, /* 0xd0-0xd7 */
+};
+static const short translit_page22[96] = {
+    -1,   -1, 1180,   -1,   -1, 1182, 1184, 1186, /* 0x10-0x17 */
+    -1, 1188,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x18-0x1f */
+    -1,   -1,   -1, 1190,   -1,   -1,   -1,   -1, /* 0x20-0x27 */
+    -1,   -1,   -1,   -1, 1192, 1195,   -1, 1199, /* 0x28-0x2f */
+  1202,   -1,   -1,   -1,   -1,   -1, 1206,   -1, /* 0x30-0x37 */
+    -1,   -1,   -1,   -1, 1208,   -1,   -1,   -1, /* 0x38-0x3f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x40-0x47 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x48-0x4f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x50-0x57 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x58-0x5f */
+  1210,   -1,   -1,   -1, 1213, 1216,   -1,   -1, /* 0x60-0x67 */
+    -1,   -1, 1219, 1222,   -1,   -1,   -1,   -1, /* 0x68-0x6f */
+};
+static const short translit_page22_4[48] = {
+    -1,   -1,   -1,   -1,   -1, 1225,   -1,   -1, /* 0xc0-0xc7 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xc8-0xcf */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xd0-0xd7 */
+  1227, 1231,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xd8-0xdf */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xe0-0xe7 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1, 1235, /* 0xe8-0xef */
+};
+static const short translit_page24[240] = {
+  1239, 1245, 1251, 1257, 1263, 1269, 1275, 1281, /* 0x00-0x07 */
+  1287, 1292, 1297, 1302, 1307, 1312, 1317, 1322, /* 0x08-0x0f */
+  1327, 1333, 1339, 1345, 1351, 1357, 1363, 1369, /* 0x10-0x17 */
+  1375, 1381, 1386, 1392, 1398, 1403, 1408, 1413, /* 0x18-0x1f */
+  1418, 1423,   -1,   -1, 1429,   -1,   -1,   -1, /* 0x20-0x27 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x28-0x2f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x30-0x37 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x38-0x3f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x40-0x47 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x48-0x4f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x50-0x57 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x58-0x5f */
+  1434, 1438, 1442, 1446, 1450, 1454, 1458, 1462, /* 0x60-0x67 */
+  1466, 1470, 1475, 1480, 1485, 1490, 1495, 1500, /* 0x68-0x6f */
+  1505, 1510, 1515, 1520, 1525, 1529, 1533, 1537, /* 0x70-0x77 */
+  1541, 1545, 1549, 1553, 1557, 1561, 1566, 1571, /* 0x78-0x7f */
+  1576, 1581, 1586, 1591, 1596, 1601, 1606, 1611, /* 0x80-0x87 */
+  1616, 1619, 1622, 1625, 1628, 1631, 1634, 1637, /* 0x88-0x8f */
+  1640, 1643, 1647, 1651, 1655, 1659, 1663, 1667, /* 0x90-0x97 */
+  1671, 1675, 1679, 1683, 1687, 1691, 1695, 1699, /* 0x98-0x9f */
+  1703, 1707, 1711, 1715, 1719, 1723, 1727, 1731, /* 0xa0-0xa7 */
+  1735, 1739, 1743, 1747, 1751, 1755, 1759, 1763, /* 0xa8-0xaf */
+  1767, 1771, 1775, 1779, 1783, 1787, 1791, 1795, /* 0xb0-0xb7 */
+  1799, 1803, 1807, 1811, 1815, 1819, 1823, 1827, /* 0xb8-0xbf */
+  1831, 1835, 1839, 1843, 1847, 1851, 1855, 1859, /* 0xc0-0xc7 */
+  1863, 1867, 1871, 1875, 1879, 1883, 1887, 1891, /* 0xc8-0xcf */
+  1895, 1899, 1903, 1907, 1911, 1915, 1919, 1923, /* 0xd0-0xd7 */
+  1927, 1931, 1935, 1939, 1943, 1947, 1951, 1955, /* 0xd8-0xdf */
+  1959, 1963, 1967, 1971, 1975, 1979, 1983, 1987, /* 0xe0-0xe7 */
+  1991, 1995, 1999,   -1,   -1,   -1,   -1,   -1, /* 0xe8-0xef */
+};
+static const short translit_page25[64] = {
+  2003,   -1, 2005,   -1,   -1,   -1,   -1,   -1, /* 0x00-0x07 */
+    -1,   -1,   -1,   -1, 2007,   -1,   -1,   -1, /* 0x08-0x0f */
+  2009,   -1,   -1,   -1, 2011,   -1,   -1,   -1, /* 0x10-0x17 */
+  2013,   -1,   -1,   -1, 2015,   -1,   -1,   -1, /* 0x18-0x1f */
+    -1,   -1,   -1,   -1, 2017,   -1,   -1,   -1, /* 0x20-0x27 */
+    -1,   -1,   -1,   -1, 2019,   -1,   -1,   -1, /* 0x28-0x2f */
+    -1,   -1,   -1,   -1, 2021,   -1,   -1,   -1, /* 0x30-0x37 */
+    -1,   -1,   -1,   -1, 2023,   -1,   -1,   -1, /* 0x38-0x3f */
+};
+static const short translit_page2a[8] = {
+    -1,   -1,   -1,   -1, 2032, 2036, 2039,   -1, /* 0x70-0x77 */
+};
+static const short translit_page2f[216] = {
+  2047, 2049, 2051, 2053, 2055, 2057, 2059, 2061, /* 0x00-0x07 */
+  2063, 2065, 2067, 2069, 2071, 2073, 2075, 2077, /* 0x08-0x0f */
+  2079, 2081, 2083, 2085, 2087, 2089, 2091, 2093, /* 0x10-0x17 */
+  2095, 2097, 2099, 2101, 2103, 2105, 2107, 2109, /* 0x18-0x1f */
+  2111, 2113, 2115, 2117, 2119, 2121, 2123, 2125, /* 0x20-0x27 */
+  2127, 2129, 2131, 2133, 2135, 2137, 2139, 2141, /* 0x28-0x2f */
+  2143, 2145, 2147, 2149, 2151, 2153, 2155, 2157, /* 0x30-0x37 */
+  2159, 2161, 2163, 2165, 2167, 2169, 2171, 2173, /* 0x38-0x3f */
+  2175, 2177, 2179, 2181, 2183, 2185, 2187, 2189, /* 0x40-0x47 */
+  2191, 2193, 2195, 2197, 2199, 2201, 2203, 2205, /* 0x48-0x4f */
+  2207, 2209, 2211, 2213, 2215, 2217, 2219, 2221, /* 0x50-0x57 */
+  2223, 2225, 2227, 2229, 2231, 2233, 2235, 2237, /* 0x58-0x5f */
+  2239, 2241, 2243, 2245, 2247, 2249, 2251, 2253, /* 0x60-0x67 */
+  2255, 2257, 2259, 2261, 2263, 2265, 2267, 2269, /* 0x68-0x6f */
+  2271, 2273, 2275, 2277, 2279, 2281, 2283, 2285, /* 0x70-0x77 */
+  2287, 2289, 2291, 2293, 2295, 2297, 2299, 2301, /* 0x78-0x7f */
+  2303, 2305, 2307, 2309, 2311, 2313, 2315, 2317, /* 0x80-0x87 */
+  2319, 2321, 2323, 2325, 2327, 2329, 2331, 2333, /* 0x88-0x8f */
+  2335, 2337, 2339, 2341, 2343, 2345, 2347, 2349, /* 0x90-0x97 */
+  2351, 2353, 2355, 2357, 2359, 2361, 2363, 2365, /* 0x98-0x9f */
+  2367, 2369, 2371, 2373, 2375, 2377, 2379, 2381, /* 0xa0-0xa7 */
+  2383, 2385, 2387, 2389, 2391, 2393, 2395, 2397, /* 0xa8-0xaf */
+  2399, 2401, 2403, 2405, 2407, 2409, 2411, 2413, /* 0xb0-0xb7 */
+  2415, 2417, 2419, 2421, 2423, 2425, 2427, 2429, /* 0xb8-0xbf */
+  2431, 2433, 2435, 2437, 2439, 2441, 2443, 2445, /* 0xc0-0xc7 */
+  2447, 2449, 2451, 2453, 2455, 2457, 2459, 2461, /* 0xc8-0xcf */
+  2463, 2465, 2467, 2469, 2471, 2473,   -1,   -1, /* 0xd0-0xd7 */
+};
+static const short translit_page30[248] = {
+  2475,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x00-0x07 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x08-0x0f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x10-0x17 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x18-0x1f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x20-0x27 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x28-0x2f */
+    -1,   -1,   -1,   -1,   -1,   -1, 2477,   -1, /* 0x30-0x37 */
+  2479, 2481, 2483,   -1,   -1,   -1,   -1,   -1, /* 0x38-0x3f */
+    -1, 2485,   -1, 2487,   -1, 2489,   -1, 2491, /* 0x40-0x47 */
+    -1, 2493,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x48-0x4f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x50-0x57 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x58-0x5f */
+    -1,   -1,   -1, 2495,   -1,   -1,   -1,   -1, /* 0x60-0x67 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x68-0x6f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x70-0x77 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x78-0x7f */
+    -1,   -1,   -1, 2497,   -1, 2499,   -1, 2501, /* 0x80-0x87 */
+    -1,   -1,   -1,   -1,   -1,   -1, 2503,   -1, /* 0x88-0x8f */
+    -1,   -1,   -1,   -1,   -1, 2505, 2507,   -1, /* 0x90-0x97 */
+    -1,   -1,   -1, 2509, 2512,   -1,   -1,   -1, /* 0x98-0x9f */
+  2515, 2517,   -1, 2519,   -1, 2521,   -1, 2523, /* 0xa0-0xa7 */
+    -1, 2525,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xa8-0xaf */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xb0-0xb7 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xb8-0xbf */
+    -1,   -1,   -1, 2527,   -1,   -1,   -1,   -1, /* 0xc0-0xc7 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xc8-0xcf */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xd0-0xd7 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xd8-0xdf */
+    -1,   -1,   -1, 2529,   -1, 2531,   -1, 2533, /* 0xe0-0xe7 */
+    -1,   -1,   -1,   -1,   -1,   -1, 2535,   -1, /* 0xe8-0xef */
+    -1,   -1,   -1,   -1,   -1, 2537, 2539,   -1, /* 0xf0-0xf7 */
+};
+static const short translit_page31[96] = {
+    -1, 2541, 2543, 2545, 2547, 2549, 2551, 2553, /* 0x30-0x37 */
+  2555, 2557, 2559, 2561, 2563, 2565, 2567, 2569, /* 0x38-0x3f */
+  2571, 2573, 2575, 2577, 2579, 2581, 2583, 2585, /* 0x40-0x47 */
+  2587, 2589, 2591, 2593, 2595, 2597, 2599, 2601, /* 0x48-0x4f */
+  2603, 2605, 2607, 2609, 2611, 2613, 2615, 2617, /* 0x50-0x57 */
+  2619, 2621, 2623, 2625, 2627, 2629, 2631, 2633, /* 0x58-0x5f */
+  2635, 2637, 2639, 2641, 2643, 2645, 2647, 2649, /* 0x60-0x67 */
+  2651, 2653, 2655, 2657, 2659, 2661, 2663, 2665, /* 0x68-0x6f */
+  2667, 2669, 2671, 2673, 2675, 2677, 2679, 2681, /* 0x70-0x77 */
+  2683, 2685, 2687, 2689, 2691, 2693, 2695, 2697, /* 0x78-0x7f */
+  2699, 2701, 2703, 2705, 2707, 2709, 2711, 2713, /* 0x80-0x87 */
+  2715, 2717, 2719, 2721, 2723, 2725, 2727,   -1, /* 0x88-0x8f */
+};
+static const short translit_page31_5[528] = {
+  2729, 2731, 2733, 2735, 2737, 2739, 2741, 2743, /* 0xf0-0xf7 */
+  2745, 2747, 2749, 2751, 2753, 2755, 2757, 2759, /* 0xf8-0xff */
+  /* 0x3200 */
+  2761, 2765, 2769, 2773, 2777, 2781, 2785, 2789, /* 0x00-0x07 */
+  2793, 2797, 2801, 2805, 2809, 2813, 2817, 2822, /* 0x08-0x0f */
+  2827, 2832, 2837, 2842, 2847, 2852, 2857, 2862, /* 0x10-0x17 */
+  2867, 2872, 2877, 2882, 2887, 2892, 2900,   -1, /* 0x18-0x1f */
+  2907, 2911, 2915, 2919, 2923, 2927, 2931, 2935, /* 0x20-0x27 */
+  2939, 2943, 2947, 2951, 2955, 2959, 2963, 2967, /* 0x28-0x2f */
+  2971, 2975, 2979, 2983, 2987, 2991, 2995, 2999, /* 0x30-0x37 */
+  3003, 3007, 3011, 3015, 3019, 3023, 3027, 3031, /* 0x38-0x3f */
+  3035, 3039, 3043, 3047,   -1,   -1,   -1,   -1, /* 0x40-0x47 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x48-0x4f */
+  3051, 3055, 3060, 3065, 3070, 3075, 3080, 3085, /* 0x50-0x57 */
+  3090, 3095, 3100, 3105, 3110, 3115, 3120, 3125, /* 0x58-0x5f */
+  3130, 3134, 3138, 3142, 3146, 3150, 3154, 3158, /* 0x60-0x67 */
+  3162, 3166, 3170, 3174, 3178, 3182, 3186, 3191, /* 0x68-0x6f */
+  3196, 3201, 3206, 3211, 3216, 3221, 3226, 3231, /* 0x70-0x77 */
+  3236, 3241, 3246, 3251, 3256, 3264,   -1,   -1, /* 0x78-0x7f */
+  3271, 3275, 3279, 3283, 3287, 3291, 3295, 3299, /* 0x80-0x87 */
+  3303, 3307, 3311, 3315, 3319, 3323, 3327, 3331, /* 0x88-0x8f */
+  3335, 3339, 3343, 3347, 3351, 3355, 3359, 3363, /* 0x90-0x97 */
+  3367, 3371, 3375, 3379, 3383, 3387, 3391, 3395, /* 0x98-0x9f */
+  3399, 3403, 3407, 3411, 3415, 3419, 3423, 3427, /* 0xa0-0xa7 */
+  3431, 3435, 3439, 3443, 3447, 3451, 3455, 3459, /* 0xa8-0xaf */
+  3463, 3467, 3472, 3477, 3482, 3487, 3492, 3497, /* 0xb0-0xb7 */
+  3502, 3507, 3512, 3517, 3522, 3527, 3532, 3537, /* 0xb8-0xbf */
+  3542, 3545, 3548, 3551, 3554, 3557, 3560, 3563, /* 0xc0-0xc7 */
+  3566, 3569, 3573, 3577, 3581, 3584, 3588, 3591, /* 0xc8-0xcf */
+  3595, 3599, 3603, 3607, 3611, 3615, 3619, 3623, /* 0xd0-0xd7 */
+  3627, 3631, 3635, 3639, 3643, 3647, 3651, 3655, /* 0xd8-0xdf */
+  3659, 3663, 3667, 3671, 3675, 3679, 3683, 3687, /* 0xe0-0xe7 */
+  3691, 3695, 3699, 3703, 3707, 3711, 3715, 3719, /* 0xe8-0xef */
+  3723, 3727, 3731, 3735, 3739, 3743, 3747, 3751, /* 0xf0-0xf7 */
+  3755, 3759, 3763, 3767, 3771, 3775, 3779,   -1, /* 0xf8-0xff */
+  /* 0x3300 */
+  3783, 3788, 3793, 3798, 3802, 3807, 3811, 3815, /* 0x00-0x07 */
+  3821, 3826, 3830, 3834, 3838, 3843, 3848, 3852, /* 0x08-0x0f */
+  3856, 3859, 3863, 3868, 3873, 3876, 3882, 3889, /* 0x10-0x17 */
+  3895, 3899, 3905, 3911, 3916, 3920, 3924, 3928, /* 0x18-0x1f */
+  3933, 3939, 3944, 3948, 3952, 3956, 3959, 3962, /* 0x20-0x27 */
+  3965, 3968, 3972, 3976, 3982, 3986, 3991, 3997, /* 0x28-0x2f */
+  4001, 4004, 4007, 4013, 4018, 4024, 4028, 4034, /* 0x30-0x37 */
+  4037, 4041, 4045, 4049, 4053, 4057, 4062, 4066, /* 0x38-0x3f */
+  4069, 4073, 4077, 4081, 4086, 4090, 4094, 4098, /* 0x40-0x47 */
+  4104, 4109, 4112, 4118, 4121, 4126, 4131, 4135, /* 0x48-0x4f */
+  4139, 4143, 4148, 4151, 4155, 4160, 4163, 4169, /* 0x50-0x57 */
+  4173, 4176, 4179, 4182, 4185, 4188, 4191, 4194, /* 0x58-0x5f */
+  4197, 4200, 4203, 4207, 4211, 4215, 4219, 4223, /* 0x60-0x67 */
+  4227, 4231, 4235, 4239, 4243, 4247, 4251, 4255, /* 0x68-0x6f */
+  4259, 4263, 4267, 4270, 4273, 4277, 4280, 4283, /* 0x70-0x77 */
+  4286, 4291, 4296, 4299, 4302, 4305, 4308, 4311, /* 0x78-0x7f */
+  4316, 4319, 4322, 4325, 4328, 4331, 4334, 4337, /* 0x80-0x87 */
+  4340, 4344, 4349, 4352, 4355, 4358, 4361, 4364, /* 0x88-0x8f */
+  4367, 4370, 4374, 4378, 4382, 4386, 4389, 4392, /* 0x90-0x97 */
+  4395, 4398, 4401, 4404, 4407, 4410, 4413, 4416, /* 0x98-0x9f */
+  4421, 4426, 4430, 4435, 4440, 4445, 4449, 4454, /* 0xa0-0xa7 */
+  4458, 4464, 4467, 4471, 4475, 4479, 4483, 4489, /* 0xa8-0xaf */
+  4497, 4500, 4503, 4506, 4509, 4512, 4515, 4518, /* 0xb0-0xb7 */
+  4521, 4524, 4527, 4530, 4533, 4536, 4539, 4542, /* 0xb8-0xbf */
+  4545, 4548, 4551, 4556, 4559, 4562, 4565, 4570, /* 0xc0-0xc7 */
+  4574, 4577, 4580, 4583, 4586, 4589, 4592, 4595, /* 0xc8-0xcf */
+  4598, 4601, 4604, 4608, 4611, 4614, 4618, 4622, /* 0xd0-0xd7 */
+  4625, 4630, 4634, 4637, 4640, 4643, 4646, 4650, /* 0xd8-0xdf */
+  4658, 4661, 4664, 4667, 4670, 4673, 4676, 4679, /* 0xe0-0xe7 */
+  4682, 4685, 4689, 4693, 4697, 4701, 4705, 4709, /* 0xe8-0xef */
+  4713, 4717, 4721, 4725, 4729, 4733, 4737, 4741, /* 0xf0-0xf7 */
+  4745, 4749, 4753, 4757, 4761, 4765, 4769, 4654, /* 0xf8-0xff */
+};
+static const short translit_pagef9[368] = {
+  4773, 4775, 4777, 4779, 4781, 4783, 4785, 4787, /* 0x00-0x07 */
+  4789, 4791, 4793, 4795, 4797, 4799, 4801, 4803, /* 0x08-0x0f */
+  4805, 4807, 4809, 4811, 4813, 4815, 4817, 4819, /* 0x10-0x17 */
+  4821, 4823, 4825, 4827, 4829, 4831, 4833, 4835, /* 0x18-0x1f */
+  4837, 4839, 4841, 4843, 4845, 4847, 4849, 4851, /* 0x20-0x27 */
+  4853, 4855, 4857, 4859, 4861, 4863, 4865, 4867, /* 0x28-0x2f */
+  4869, 4871, 4873, 4875, 4877, 4879, 4881, 4883, /* 0x30-0x37 */
+  4885, 4887, 4889, 4891, 4893, 4895, 4897, 4899, /* 0x38-0x3f */
+  4901, 4903, 4905, 4907, 4909, 4911, 4913, 4915, /* 0x40-0x47 */
+  4917, 4919, 4921, 4923, 4925, 4927, 4929, 4931, /* 0x48-0x4f */
+  4933, 4935, 4937, 4939, 4941, 4943, 4945, 4947, /* 0x50-0x57 */
+  4949, 4951, 4953, 4955, 4957, 4959, 4961, 4963, /* 0x58-0x5f */
+  4965, 4967, 4969, 4971, 4973, 4975, 4977, 4979, /* 0x60-0x67 */
+  4981, 4983, 4985, 4987, 4989, 4991, 4993, 4995, /* 0x68-0x6f */
+  4997, 4999, 5001, 5003, 5005, 5007, 5009, 5011, /* 0x70-0x77 */
+  5013, 5015, 5017, 5019, 5021, 5023, 5025, 5027, /* 0x78-0x7f */
+  5029, 5031, 5033, 5035, 5037, 5039, 5041, 5043, /* 0x80-0x87 */
+  5045, 5047, 5049, 5051, 5053, 5055, 5057, 5059, /* 0x88-0x8f */
+  5061, 5063, 5065, 5067, 5069, 5071, 5073, 5075, /* 0x90-0x97 */
+  5077, 5079, 5081, 5083, 5085, 5087, 5089, 5091, /* 0x98-0x9f */
+  5093, 5095, 5097, 5099, 5101, 5103, 5105, 5107, /* 0xa0-0xa7 */
+  5109, 5111, 5113, 5115, 5117, 5119, 5121, 5123, /* 0xa8-0xaf */
+  5125, 5127, 5129, 5131, 5133, 5135, 5137, 5139, /* 0xb0-0xb7 */
+  5141, 5143, 5145, 5147, 5149, 5151, 5153, 5155, /* 0xb8-0xbf */
+  5157, 5159, 5161, 5163, 5165, 5167, 5169, 5171, /* 0xc0-0xc7 */
+  5173, 5175, 5177, 5179, 5181, 5183, 5185, 5187, /* 0xc8-0xcf */
+  5189, 5191, 5193, 5195, 5197, 5199, 5201, 5203, /* 0xd0-0xd7 */
+  5205, 5207, 5209, 5211, 5213, 5215, 5217, 5219, /* 0xd8-0xdf */
+  5221, 5223, 5225, 5227, 5229, 5231, 5233, 5235, /* 0xe0-0xe7 */
+  5237, 5239, 5241, 5243, 5245, 5247, 5249, 5251, /* 0xe8-0xef */
+  5253, 5255, 5257, 5259, 5261, 5263, 5265, 5267, /* 0xf0-0xf7 */
+  5269, 5271, 5273, 5275, 5277, 5279, 5281, 5283, /* 0xf8-0xff */
+  /* 0xfa00 */
+  5285, 5287, 5289, 5291, 5293, 5295, 5297, 5299, /* 0x00-0x07 */
+  5301, 5303, 5305, 5307, 5309, 5311,   -1,   -1, /* 0x08-0x0f */
+  5313,   -1, 5315,   -1,   -1, 5317, 5319, 5321, /* 0x10-0x17 */
+  5323, 5325, 5327, 5329, 5331, 5333, 5335,   -1, /* 0x18-0x1f */
+  5337,   -1, 5339,   -1,   -1, 5341, 5343,   -1, /* 0x20-0x27 */
+    -1,   -1, 5345, 5347, 5349, 5351,   -1,   -1, /* 0x28-0x2f */
+  5353, 5355, 5357, 5359, 5361, 5363, 5365, 5367, /* 0x30-0x37 */
+  5369, 5371, 5373, 5375, 5377, 5379, 5381, 5383, /* 0x38-0x3f */
+  5385, 5387, 5389, 5391, 5393, 5395, 5397, 5399, /* 0x40-0x47 */
+  5401, 5403, 5405, 5407, 5409, 5411, 5413, 5415, /* 0x48-0x4f */
+  5417, 5419, 5421, 5423, 5425, 5427, 5429, 5431, /* 0x50-0x57 */
+  5433, 5435, 5437, 5439, 5441, 5443, 5445, 5447, /* 0x58-0x5f */
+  5449, 5451, 5453, 5455, 5457, 5459, 5461, 5463, /* 0x60-0x67 */
+  5465, 5467, 5469,   -1,   -1,   -1,   -1,   -1, /* 0x68-0x6f */
+};
+static const short translit_pagefb[80] = {
+  5471, 5474, 5477, 5480, 5484, 5488, 5491,   -1, /* 0x00-0x07 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x08-0x0f */
+    -1,   -1,   -1, 5494, 5497, 5500, 5503, 5506, /* 0x10-0x17 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x18-0x1f */
+  5509, 5511, 5513, 5515, 5517, 5519, 5521, 5523, /* 0x20-0x27 */
+  5525, 5527,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x28-0x2f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x30-0x37 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x38-0x3f */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x40-0x47 */
+    -1,   -1,   -1,   -1,   -1,   -1,   -1, 5529, /* 0x48-0x4f */
+};
+static const short translit_pagefe[40] = {
+    -1, 5532, 5534, 5536, 5538, 5540, 5542, 5544, /* 0x48-0x4f */
+  5546, 5548, 5550,   -1, 5552, 5554, 5556, 5558, /* 0x50-0x57 */
+  5560, 5562, 5564, 5566, 5568, 5570, 5572, 5574, /* 0x58-0x5f */
+  5576, 5578, 5580, 5582, 5584, 5586, 5588,   -1, /* 0x60-0x67 */
+  5590, 5592, 5594, 5596,   -1,   -1,   -1,   -1, /* 0x68-0x6f */
+};
+static const short translit_pageff[240] = {
+    -1, 5598, 5600, 5602, 5604, 5606, 5608, 5610, /* 0x00-0x07 */
+  5612, 5614, 5616, 5618, 5620, 5622, 5624, 5626, /* 0x08-0x0f */
+  5628, 5630, 5632, 5634, 5636, 5638, 5640, 5642, /* 0x10-0x17 */
+  5644, 5646, 5648, 5650, 5652, 5654, 5656, 5658, /* 0x18-0x1f */
+  5660, 5662, 5664, 5666, 5668, 5670, 5672, 5674, /* 0x20-0x27 */
+  5676, 5678, 5680, 5682, 5684, 5686, 5688, 5690, /* 0x28-0x2f */
+  5692, 5694, 5696, 5698, 5700, 5702, 5704, 5706, /* 0x30-0x37 */
+  5708, 5710, 5712, 5714, 5716, 5718, 5720, 5722, /* 0x38-0x3f */
+  5724, 5726, 5728, 5730, 5732, 5734, 5736, 5738, /* 0x40-0x47 */
+  5740, 5742, 5744, 5746, 5748, 5750, 5752, 5754, /* 0x48-0x4f */
+  5756, 5758, 5760, 5762, 5764, 5766, 5768, 5770, /* 0x50-0x57 */
+  5772, 5774, 5776, 5778, 5780, 5782, 5784, 5786, /* 0x58-0x5f */
+  5788, 5790, 5792, 5794, 5796, 5798, 5800, 5802, /* 0x60-0x67 */
+  5804, 5806, 5808, 5810, 5812, 5814, 5816, 5818, /* 0x68-0x6f */
+  5820, 5822, 5824, 5826, 5828, 5830, 5832, 5834, /* 0x70-0x77 */
+  5836, 5838, 5840, 5842, 5844, 5846, 5848, 5850, /* 0x78-0x7f */
+  5852, 5854, 5856, 5858, 5860, 5862, 5864, 5866, /* 0x80-0x87 */
+  5868, 5870, 5872, 5874, 5876, 5878, 5880, 5882, /* 0x88-0x8f */
+  5884, 5886, 5888, 5890, 5892, 5894, 5896, 5898, /* 0x90-0x97 */
+  5900, 5902, 5904, 5906, 5908, 5910, 5912, 5914, /* 0x98-0x9f */
+  5916, 5918, 5920, 5922, 5924, 5926, 5928, 5930, /* 0xa0-0xa7 */
+  5932, 5934, 5936, 5938, 5940, 5942, 5944, 5946, /* 0xa8-0xaf */
+  5948, 5950, 5952, 5954, 5956, 5958, 5960, 5962, /* 0xb0-0xb7 */
+  5964, 5966, 5968, 5970, 5972, 5974, 5976,   -1, /* 0xb8-0xbf */
+    -1,   -1, 5978, 5980, 5982, 5984, 5986, 5988, /* 0xc0-0xc7 */
+    -1,   -1, 5990, 5992, 5994, 5996, 5998, 6000, /* 0xc8-0xcf */
+    -1,   -1, 6002, 6004, 6006, 6008, 6010, 6012, /* 0xd0-0xd7 */
+    -1,   -1, 6014, 6016, 6018,   -1,   -1,   -1, /* 0xd8-0xdf */
+  6020, 6022, 6024, 6026, 6028, 6030, 6032,   -1, /* 0xe0-0xe7 */
+  6034, 6036, 6038, 6040, 6042, 6044, 6046,   -1, /* 0xe8-0xef */
+};
+static const short translit_page1d4[1024] = {
+  6048, 6050, 6052, 6054, 6056, 6058, 6060, 6062, /* 0x00-0x07 */
+  6064, 6066, 6068, 6070, 6072, 6074, 6076, 6078, /* 0x08-0x0f */
+  6080, 6082, 6084, 6086, 6088, 6090, 6092, 6094, /* 0x10-0x17 */
+  6096, 6098, 6100, 6102, 6104, 6106, 6108, 6110, /* 0x18-0x1f */
+  6112, 6114, 6116, 6118, 6120, 6122, 6124, 6126, /* 0x20-0x27 */
+  6128, 6130, 6132, 6134, 6136, 6138, 6140, 6142, /* 0x28-0x2f */
+  6144, 6146, 6148, 6150, 6152, 6154, 6156, 6158, /* 0x30-0x37 */
+  6160, 6162, 6164, 6166, 6168, 6170, 6172, 6174, /* 0x38-0x3f */
+  6176, 6178, 6180, 6182, 6184, 6186, 6188, 6190, /* 0x40-0x47 */
+  6192, 6194, 6196, 6198, 6200, 6202, 6204, 6206, /* 0x48-0x4f */
+  6208, 6210, 6212, 6214, 6216,   -1, 6218, 6220, /* 0x50-0x57 */
+  6222, 6224, 6226, 6228, 6230, 6232, 6234, 6236, /* 0x58-0x5f */
+  6238, 6240, 6242, 6244, 6246, 6248, 6250, 6252, /* 0x60-0x67 */
+  6254, 6256, 6258, 6260, 6262, 6264, 6266, 6268, /* 0x68-0x6f */
+  6270, 6272, 6274, 6276, 6278, 6280, 6282, 6284, /* 0x70-0x77 */
+  6286, 6288, 6290, 6292, 6294, 6296, 6298, 6300, /* 0x78-0x7f */
+  6302, 6304, 6306, 6308, 6310, 6312, 6314, 6316, /* 0x80-0x87 */
+  6318, 6320, 6322, 6324, 6326, 6328, 6330, 6332, /* 0x88-0x8f */
+  6334, 6336, 6338, 6340, 6342, 6344, 6346, 6348, /* 0x90-0x97 */
+  6350, 6352, 6354, 6356, 6358,   -1, 6360, 6362, /* 0x98-0x9f */
+    -1,   -1, 6364,   -1,   -1, 6366, 6368,   -1, /* 0xa0-0xa7 */
+    -1, 6370, 6372, 6374, 6376,   -1, 6378, 6380, /* 0xa8-0xaf */
+  6382, 6384, 6386, 6388, 6390, 6392, 6394, 6396, /* 0xb0-0xb7 */
+  6398, 6400,   -1, 6402,   -1, 6404, 6406, 6408, /* 0xb8-0xbf */
+  6410, 6412, 6414, 6416,   -1, 6418, 6420, 6422, /* 0xc0-0xc7 */
+  6424, 6426, 6428, 6430, 6432, 6434, 6436, 6438, /* 0xc8-0xcf */
+  6440, 6442, 6444, 6446, 6448, 6450, 6452, 6454, /* 0xd0-0xd7 */
+  6456, 6458, 6460, 6462, 6464, 6466, 6468, 6470, /* 0xd8-0xdf */
+  6472, 6474, 6476, 6478, 6480, 6482, 6484, 6486, /* 0xe0-0xe7 */
+  6488, 6490, 6492, 6494, 6496, 6498, 6500, 6502, /* 0xe8-0xef */
+  6504, 6506, 6508, 6510, 6512, 6514, 6516, 6518, /* 0xf0-0xf7 */
+  6520, 6522, 6524, 6526, 6528, 6530, 6532, 6534, /* 0xf8-0xff */
+  /* 0x1d500 */
+  6536, 6538, 6540, 6542, 6544, 6546,   -1, 6548, /* 0x00-0x07 */
+  6550, 6552, 6554,   -1,   -1, 6556, 6558, 6560, /* 0x08-0x0f */
+  6562, 6564, 6566, 6568, 6570,   -1, 6572, 6574, /* 0x10-0x17 */
+  6576, 6578, 6580, 6582, 6584,   -1, 6586, 6588, /* 0x18-0x1f */
+  6590, 6592, 6594, 6596, 6598, 6600, 6602, 6604, /* 0x20-0x27 */
+  6606, 6608, 6610, 6612, 6614, 6616, 6618, 6620, /* 0x28-0x2f */
+  6622, 6624, 6626, 6628, 6630, 6632, 6634, 6636, /* 0x30-0x37 */
+  6638, 6640,   -1, 6642, 6644, 6646, 6648,   -1, /* 0x38-0x3f */
+  6650, 6652, 6654, 6656, 6658,   -1, 6660,   -1, /* 0x40-0x47 */
+    -1,   -1, 6662, 6664, 6666, 6668, 6670, 6672, /* 0x48-0x4f */
+  6674,   -1, 6676, 6678, 6680, 6682, 6684, 6686, /* 0x50-0x57 */
+  6688, 6690, 6692, 6694, 6696, 6698, 6700, 6702, /* 0x58-0x5f */
+  6704, 6706, 6708, 6710, 6712, 6714, 6716, 6718, /* 0x60-0x67 */
+  6720, 6722, 6724, 6726, 6728, 6730, 6732, 6734, /* 0x68-0x6f */
+  6736, 6738, 6740, 6742, 6744, 6746, 6748, 6750, /* 0x70-0x77 */
+  6752, 6754, 6756, 6758, 6760, 6762, 6764, 6766, /* 0x78-0x7f */
+  6768, 6770, 6772, 6774, 6776, 6778, 6780, 6782, /* 0x80-0x87 */
+  6784, 6786, 6788, 6790, 6792, 6794, 6796, 6798, /* 0x88-0x8f */
+  6800, 6802, 6804, 6806, 6808, 6810, 6812, 6814, /* 0x90-0x97 */
+  6816, 6818, 6820, 6822, 6824, 6826, 6828, 6830, /* 0x98-0x9f */
+  6832, 6834, 6836, 6838, 6840, 6842, 6844, 6846, /* 0xa0-0xa7 */
+  6848, 6850, 6852, 6854, 6856, 6858, 6860, 6862, /* 0xa8-0xaf */
+  6864, 6866, 6868, 6870, 6872, 6874, 6876, 6878, /* 0xb0-0xb7 */
+  6880, 6882, 6884, 6886, 6888, 6890, 6892, 6894, /* 0xb8-0xbf */
+  6896, 6898, 6900, 6902, 6904, 6906, 6908, 6910, /* 0xc0-0xc7 */
+  6912, 6914, 6916, 6918, 6920, 6922, 6924, 6926, /* 0xc8-0xcf */
+  6928, 6930, 6932, 6934, 6936, 6938, 6940, 6942, /* 0xd0-0xd7 */
+  6944, 6946, 6948, 6950, 6952, 6954, 6956, 6958, /* 0xd8-0xdf */
+  6960, 6962, 6964, 6966, 6968, 6970, 6972, 6974, /* 0xe0-0xe7 */
+  6976, 6978, 6980, 6982, 6984, 6986, 6988, 6990, /* 0xe8-0xef */
+  6992, 6994, 6996, 6998, 7000, 7002, 7004, 7006, /* 0xf0-0xf7 */
+  7008, 7010, 7012, 7014, 7016, 7018, 7020, 7022, /* 0xf8-0xff */
+  /* 0x1d600 */
+  7024, 7026, 7028, 7030, 7032, 7034, 7036, 7038, /* 0x00-0x07 */
+  7040, 7042, 7044, 7046, 7048, 7050, 7052, 7054, /* 0x08-0x0f */
+  7056, 7058, 7060, 7062, 7064, 7066, 7068, 7070, /* 0x10-0x17 */
+  7072, 7074, 7076, 7078, 7080, 7082, 7084, 7086, /* 0x18-0x1f */
+  7088, 7090, 7092, 7094, 7096, 7098, 7100, 7102, /* 0x20-0x27 */
+  7104, 7106, 7108, 7110, 7112, 7114, 7116, 7118, /* 0x28-0x2f */
+  7120, 7122, 7124, 7126, 7128, 7130, 7132, 7134, /* 0x30-0x37 */
+  7136, 7138, 7140, 7142, 7144, 7146, 7148, 7150, /* 0x38-0x3f */
+  7152, 7154, 7156, 7158, 7160, 7162, 7164, 7166, /* 0x40-0x47 */
+  7168, 7170, 7172, 7174, 7176, 7178, 7180, 7182, /* 0x48-0x4f */
+  7184, 7186, 7188, 7190, 7192, 7194, 7196, 7198, /* 0x50-0x57 */
+  7200, 7202, 7204, 7206, 7208, 7210, 7212, 7214, /* 0x58-0x5f */
+  7216, 7218, 7220, 7222, 7224, 7226, 7228, 7230, /* 0x60-0x67 */
+  7232, 7234, 7236, 7238, 7240, 7242, 7244, 7246, /* 0x68-0x6f */
+  7248, 7250, 7252, 7254, 7256, 7258, 7260, 7262, /* 0x70-0x77 */
+  7264, 7266, 7268, 7270, 7272, 7274, 7276, 7278, /* 0x78-0x7f */
+  7280, 7282, 7284, 7286, 7288, 7290, 7292, 7294, /* 0x80-0x87 */
+  7296, 7298, 7300, 7302, 7304, 7306, 7308, 7310, /* 0x88-0x8f */
+  7312, 7314, 7316, 7318, 7320, 7322, 7324, 7326, /* 0x90-0x97 */
+  7328, 7330, 7332, 7334, 7336, 7338, 7340, 7342, /* 0x98-0x9f */
+  7344, 7346, 7348, 7350,   -1,   -1,   -1,   -1, /* 0xa0-0xa7 */
+  7352, 7354, 7356, 7358, 7360, 7362, 7364, 7366, /* 0xa8-0xaf */
+  7368, 7370, 7372, 7374, 7376, 7378, 7380, 7382, /* 0xb0-0xb7 */
+  7384, 7386, 7388, 7390, 7392, 7394, 7396, 7398, /* 0xb8-0xbf */
+  7400, 7402, 7404, 7406, 7408, 7410, 7412, 7414, /* 0xc0-0xc7 */
+  7416, 7418, 7420, 7422, 7424, 7426, 7428, 7430, /* 0xc8-0xcf */
+  7432, 7434, 7436, 7438, 7440, 7442, 7444, 7446, /* 0xd0-0xd7 */
+  7448, 7450, 7452, 7454, 7456, 7458, 7460, 7462, /* 0xd8-0xdf */
+  7464, 7466, 7468, 7470, 7472, 7474, 7476, 7478, /* 0xe0-0xe7 */
+  7480, 7482, 7484, 7486, 7488, 7490, 7492, 7494, /* 0xe8-0xef */
+  7496, 7498, 7500, 7502, 7504, 7506, 7508, 7510, /* 0xf0-0xf7 */
+  7512, 7514, 7516, 7518, 7520, 7522, 7524, 7526, /* 0xf8-0xff */
+  /* 0x1d700 */
+  7528, 7530, 7532, 7534, 7536, 7538, 7540, 7542, /* 0x00-0x07 */
+  7544, 7546, 7548, 7550, 7552, 7554, 7556, 7558, /* 0x08-0x0f */
+  7560, 7562, 7564, 7566, 7568, 7570, 7572, 7574, /* 0x10-0x17 */
+  7576, 7578, 7580, 7582, 7584, 7586, 7588, 7590, /* 0x18-0x1f */
+  7592, 7594, 7596, 7598, 7600, 7602, 7604, 7606, /* 0x20-0x27 */
+  7608, 7610, 7612, 7614, 7616, 7618, 7620, 7622, /* 0x28-0x2f */
+  7624, 7626, 7628, 7630, 7632, 7634, 7636, 7638, /* 0x30-0x37 */
+  7640, 7642, 7644, 7646, 7648, 7650, 7652, 7654, /* 0x38-0x3f */
+  7656, 7658, 7660, 7662, 7664, 7666, 7668, 7670, /* 0x40-0x47 */
+  7672, 7674, 7676, 7678, 7680, 7682, 7684, 7686, /* 0x48-0x4f */
+  7688, 7690, 7692, 7694, 7696, 7698, 7700, 7702, /* 0x50-0x57 */
+  7704, 7706, 7708, 7710, 7712, 7714, 7716, 7718, /* 0x58-0x5f */
+  7720, 7722, 7724, 7726, 7728, 7730, 7732, 7734, /* 0x60-0x67 */
+  7736, 7738, 7740, 7742, 7744, 7746, 7748, 7750, /* 0x68-0x6f */
+  7752, 7754, 7756, 7758, 7760, 7762, 7764, 7766, /* 0x70-0x77 */
+  7768, 7770, 7772, 7774, 7776, 7778, 7780, 7782, /* 0x78-0x7f */
+  7784, 7786, 7788, 7790, 7792, 7794, 7796, 7798, /* 0x80-0x87 */
+  7800, 7802, 7804, 7806, 7808, 7810, 7812, 7814, /* 0x88-0x8f */
+  7816, 7818, 7820, 7822, 7824, 7826, 7828, 7830, /* 0x90-0x97 */
+  7832, 7834, 7836, 7838, 7840, 7842, 7844, 7846, /* 0x98-0x9f */
+  7848, 7850, 7852, 7854, 7856, 7858, 7860, 7862, /* 0xa0-0xa7 */
+  7864, 7866, 7868, 7870, 7872, 7874, 7876, 7878, /* 0xa8-0xaf */
+  7880, 7882, 7884, 7886, 7888, 7890, 7892, 7894, /* 0xb0-0xb7 */
+  7896, 7898, 7900, 7902, 7904, 7906, 7908, 7910, /* 0xb8-0xbf */
+  7912, 7914, 7916, 7918, 7920, 7922, 7924, 7926, /* 0xc0-0xc7 */
+  7928, 7930,   -1,   -1,   -1,   -1, 7932, 7934, /* 0xc8-0xcf */
+  7936, 7938, 7940, 7942, 7944, 7946, 7948, 7950, /* 0xd0-0xd7 */
+  7952, 7954, 7956, 7958, 7960, 7962, 7964, 7966, /* 0xd8-0xdf */
+  7968, 7970, 7972, 7974, 7976, 7978, 7980, 7982, /* 0xe0-0xe7 */
+  7984, 7986, 7988, 7990, 7992, 7994, 7996, 7998, /* 0xe8-0xef */
+  8000, 8002, 8004, 8006, 8008, 8010, 8012, 8014, /* 0xf0-0xf7 */
+  8016, 8018, 8020, 8022, 8024, 8026, 8028, 8030, /* 0xf8-0xff */
+};
+static const short translit_page2f8[544] = {
+  8032, 8034, 8036, 8038, 8040, 8042, 8044, 8046, /* 0x00-0x07 */
+  8048, 8050, 8052, 8054, 8056, 8058, 8060, 8062, /* 0x08-0x0f */
+  8064, 8066, 8068, 8070, 8072, 8074, 8076, 8078, /* 0x10-0x17 */
+  8080, 8082, 8084, 8086, 8088, 8090, 8092, 8094, /* 0x18-0x1f */
+  8096, 8098, 8100, 8102, 8104, 8106, 8108, 8110, /* 0x20-0x27 */
+  8112, 8114, 8116, 8118, 8120, 8122, 8124, 8126, /* 0x28-0x2f */
+  8128, 8130, 8132, 8134, 8136, 8138, 8140, 8142, /* 0x30-0x37 */
+  8144, 8146, 8148, 8150, 8152, 8154, 8156, 8158, /* 0x38-0x3f */
+  8160, 8162, 8164, 8166, 8168, 8170, 8172, 8174, /* 0x40-0x47 */
+  8176, 8178, 8180, 8182, 8184, 8186, 8188, 8190, /* 0x48-0x4f */
+  8192, 8194, 8196, 8198, 8200, 8202, 8204, 8206, /* 0x50-0x57 */
+  8208, 8210, 8212, 8214, 8216, 8218, 8220, 8222, /* 0x58-0x5f */
+  8224, 8226, 8228, 8230, 8232, 8234, 8236, 8238, /* 0x60-0x67 */
+  8240, 8242, 8244, 8246, 8248, 8250, 8252, 8254, /* 0x68-0x6f */
+  8256, 8258, 8260, 8262, 8264, 8266, 8268, 8270, /* 0x70-0x77 */
+  8272, 8274, 8276, 8278, 8280, 8282, 8284, 8286, /* 0x78-0x7f */
+  8288, 8290, 8292, 8294, 8296, 8298, 8300, 8302, /* 0x80-0x87 */
+  8304, 8306, 8308, 8310, 8312, 8314, 8316, 8318, /* 0x88-0x8f */
+  8320, 8322, 8324, 8326, 8328, 8330, 8332, 8334, /* 0x90-0x97 */
+  8336, 8338, 8340, 8342, 8344, 8346, 8348, 8350, /* 0x98-0x9f */
+  8352, 8354, 8356, 8358, 8360, 8362, 8364, 8366, /* 0xa0-0xa7 */
+  8368, 8370, 8372, 8374, 8376, 8378, 8380, 8382, /* 0xa8-0xaf */
+  8384, 8386, 8388, 8390, 8392, 8394, 8396, 8398, /* 0xb0-0xb7 */
+  8400, 8402, 8404, 8406, 8408, 8410, 8412, 8414, /* 0xb8-0xbf */
+  8416, 8418, 8420, 8422, 8424, 8426, 8428, 8430, /* 0xc0-0xc7 */
+  8432, 8434, 8436, 8438, 8440, 8442, 8444, 8446, /* 0xc8-0xcf */
+  8448, 8450, 8452, 8454, 8456, 8458, 8460, 8462, /* 0xd0-0xd7 */
+  8464, 8466, 8468, 8470, 8472, 8474, 8476, 8478, /* 0xd8-0xdf */
+  8480, 8482, 8484, 8486, 8488, 8490, 8492, 8494, /* 0xe0-0xe7 */
+  8496, 8498, 8500, 8502, 8504, 8506, 8508, 8510, /* 0xe8-0xef */
+  8512, 8514, 8516, 8518, 8520, 8522, 8524, 8526, /* 0xf0-0xf7 */
+  8528, 8530, 8532, 8534, 8536, 8538, 8540, 8542, /* 0xf8-0xff */
+  /* 0x2f900 */
+  8544, 8546, 8548, 8550, 8552, 8554, 8556, 8558, /* 0x00-0x07 */
+  8560, 8562, 8564, 8566, 8568, 8570, 8572, 8574, /* 0x08-0x0f */
+  8576, 8578, 8580, 8582, 8584, 8586, 8588, 8590, /* 0x10-0x17 */
+  8592, 8594, 8596, 8598, 8600, 8602, 8604, 8606, /* 0x18-0x1f */
+  8608, 8610, 8612, 8614, 8616, 8618, 8620, 8622, /* 0x20-0x27 */
+  8624, 8626, 8628, 8630, 8632, 8634, 8636, 8638, /* 0x28-0x2f */
+  8640, 8642, 8644, 8646, 8648, 8650, 8652, 8654, /* 0x30-0x37 */
+  8656, 8658, 8660, 8662, 8664, 8666, 8668, 8670, /* 0x38-0x3f */
+  8672, 8674, 8676, 8678, 8680, 8682, 8684, 8686, /* 0x40-0x47 */
+  8688, 8690, 8692, 8694, 8696, 8698, 8700, 8702, /* 0x48-0x4f */
+  8704, 8706, 8708, 8710, 8712, 8714, 8716, 8718, /* 0x50-0x57 */
+  8720, 8722, 8724, 8726, 8728, 8730, 8732, 8734, /* 0x58-0x5f */
+  8736, 8738, 8740, 8742, 8744, 8746, 8748, 8750, /* 0x60-0x67 */
+  8752, 8754, 8756, 8758, 8760, 8762, 8764, 8766, /* 0x68-0x6f */
+  8768, 8770, 8772, 8774, 8776, 8778, 8780, 8782, /* 0x70-0x77 */
+  8784, 8786, 8788, 8790, 8792, 8794, 8796, 8798, /* 0x78-0x7f */
+  8800, 8802, 8804, 8806, 8808, 8810, 8812, 8814, /* 0x80-0x87 */
+  8816, 8818, 8820, 8822, 8824, 8826, 8828, 8830, /* 0x88-0x8f */
+  8832, 8834, 8836, 8838, 8840, 8842, 8844, 8846, /* 0x90-0x97 */
+  8848, 8850, 8852, 8854, 8856, 8858, 8860, 8862, /* 0x98-0x9f */
+  8864, 8866, 8868, 8870, 8872, 8874, 8876, 8878, /* 0xa0-0xa7 */
+  8880, 8882, 8884, 8886, 8888, 8890, 8892, 8894, /* 0xa8-0xaf */
+  8896, 8898, 8900, 8902, 8904, 8906, 8908, 8910, /* 0xb0-0xb7 */
+  8912, 8914, 8916, 8918, 8920, 8922, 8924, 8926, /* 0xb8-0xbf */
+  8928, 8930, 8932, 8934, 8936, 8938, 8940, 8942, /* 0xc0-0xc7 */
+  8944, 8946, 8948, 8950, 8952, 8954, 8956, 8958, /* 0xc8-0xcf */
+  8960, 8962, 8964, 8966, 8968, 8970, 8972, 8974, /* 0xd0-0xd7 */
+  8976, 8978, 8980, 8982, 8984, 8986, 8988, 8990, /* 0xd8-0xdf */
+  8992, 8994, 8996, 8998, 9000, 9002, 9004, 9006, /* 0xe0-0xe7 */
+  9008, 9010, 9012, 9014, 9016, 9018, 9020, 9022, /* 0xe8-0xef */
+  9024, 9026, 9028, 9030, 9032, 9034, 9036, 9038, /* 0xf0-0xf7 */
+  9040, 9042, 9044, 9046, 9048, 9050, 9052, 9054, /* 0xf8-0xff */
+  /* 0x2fa00 */
+  9056, 9058, 9060, 9062, 9064, 9066, 9068, 9070, /* 0x00-0x07 */
+  9072, 9074, 9076, 9078, 9080, 9082, 9084, 9086, /* 0x08-0x0f */
+  9088, 9090, 9092, 9094, 9096, 9098, 9100, 9102, /* 0x10-0x17 */
+  9104, 9106, 9108, 9110, 9112, 9114,   -1,   -1, /* 0x18-0x1f */
+};
+
+#define translit_index(wc) \
+  (wc >= 0x00a0 && wc < 0x01f8 ? translit_page00[wc-0x00a0] : \
+   wc >= 0x0218 && wc < 0x0220 ? translit_page02[wc-0x0218] : \
+   wc >= 0x02b8 && wc < 0x02e0 ? translit_page02_1[wc-0x02b8] : \
+   wc >= 0x03d0 && wc < 0x0400 ? translit_page03[wc-0x03d0] : \
+   wc == 0x0587 ? 654 : \
+   wc >= 0x05f0 && wc < 0x05f8 ? translit_page05[wc-0x05f0] : \
+   wc >= 0x0670 && wc < 0x0680 ? translit_page06[wc-0x0670] : \
+   wc == 0x0e33 ? 678 : \
+   wc >= 0x0eb0 && wc < 0x0ee0 ? translit_page0e[wc-0x0eb0] : \
+   wc >= 0x0f70 && wc < 0x0f80 ? translit_page0f[wc-0x0f70] : \
+   wc >= 0x1e00 && wc < 0x1ea0 ? translit_page1e[wc-0x1e00] : \
+   wc >= 0x1ef0 && wc < 0x1ef8 ? translit_page1e_2[wc-0x1ef0] : \
+   wc >= 0x2000 && wc < 0x2058 ? translit_page20[wc-0x2000] : \
+   wc >= 0x20a8 && wc < 0x20b0 ? translit_page20_3[wc-0x20a8] : \
+   wc >= 0x2100 && wc < 0x21d8 ? translit_page21[wc-0x2100] : \
+   wc >= 0x2210 && wc < 0x2270 ? translit_page22[wc-0x2210] : \
+   wc >= 0x22c0 && wc < 0x22f0 ? translit_page22_4[wc-0x22c0] : \
+   wc >= 0x2400 && wc < 0x24f0 ? translit_page24[wc-0x2400] : \
+   wc >= 0x2500 && wc < 0x2540 ? translit_page25[wc-0x2500] : \
+   wc == 0x25e6 ? 2025 : \
+   wc == 0x2a0c ? 2027 : \
+   wc >= 0x2a70 && wc < 0x2a78 ? translit_page2a[wc-0x2a70] : \
+   wc == 0x2e9f ? 2043 : \
+   wc == 0x2ef3 ? 2045 : \
+   wc >= 0x2f00 && wc < 0x2fd8 ? translit_page2f[wc-0x2f00] : \
+   wc >= 0x3000 && wc < 0x30f8 ? translit_page30[wc-0x3000] : \
+   wc >= 0x3130 && wc < 0x3190 ? translit_page31[wc-0x3130] : \
+   wc >= 0x31f0 && wc < 0x3400 ? translit_page31_5[wc-0x31f0] : \
+   wc >= 0xf900 && wc < 0xfa70 ? translit_pagef9[wc-0xf900] : \
+   wc >= 0xfb00 && wc < 0xfb50 ? translit_pagefb[wc-0xfb00] : \
+   wc >= 0xfe48 && wc < 0xfe70 ? translit_pagefe[wc-0xfe48] : \
+   wc >= 0xff00 && wc < 0xfff0 ? translit_pageff[wc-0xff00] : \
+   wc >= 0x1d400 && wc < 0x1d800 ? translit_page1d4[wc-0x1d400] : \
+   wc >= 0x2f800 && wc < 0x2fa20 ? translit_page2f8[wc-0x2f800] : \
+   -1)
diff --git a/graf2d/win32gdk/gdk/src/iconv/ucs2.h b/graf2d/win32gdk/gdk/src/iconv/ucs2.h
new file mode 100644
index 00000000000..206b8ccaeae
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/ucs2.h
@@ -0,0 +1,68 @@
+/*
+ * Copyright (C) 1999-2001, 2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * UCS-2
+ */
+
+/* Here we accept FFFE/FEFF marks as endianness indicators everywhere
+   in the stream, not just at the beginning. The default is big-endian. */
+/* The state is 0 if big-endian, 1 if little-endian. */
+static int
+ucs2_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  state_t state = conv->istate;
+  int count = 0;
+  for (; n >= 2;) {
+    ucs4_t wc = (state ? s[0] + (s[1] << 8) : (s[0] << 8) + s[1]);
+    s += 2; n -= 2; count += 2;
+    if (wc == 0xfeff) {
+    } else if (wc == 0xfffe) {
+      state ^= 1;
+    } else if (wc >= 0xd800 && wc < 0xe000) {
+      conv->istate = state;
+      return RET_SHIFT_ILSEQ(count);
+    } else {
+      *pwc = wc;
+      conv->istate = state;
+      return count;
+    }
+  }
+  conv->istate = state;
+  return RET_TOOFEW(count);
+}
+
+/* But we output UCS-2 in big-endian order, without byte-order mark. */
+/* RFC 2152 says:
+   "ISO/IEC 10646-1:1993(E) specifies that when characters the UCS-2 form are
+    serialized as octets, that the most significant octet appear first." */
+static int
+ucs2_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (wc < 0x10000 && wc != 0xfffe && !(wc >= 0xd800 && wc < 0xe000)) {
+    if (n >= 2) {
+      r[0] = (unsigned char) (wc >> 8);
+      r[1] = (unsigned char) wc;
+      return 2;
+    } else
+      return RET_TOOSMALL;
+  } else
+    return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/ucs2be.h b/graf2d/win32gdk/gdk/src/iconv/ucs2be.h
new file mode 100644
index 00000000000..150c0a36ba4
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/ucs2be.h
@@ -0,0 +1,51 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * UCS-2BE = UCS-2 big endian
+ */
+
+static int
+ucs2be_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  if (n >= 2) {
+    if (s[0] >= 0xd8 && s[0] < 0xe0) {
+      return RET_ILSEQ;
+    } else {
+      *pwc = (s[0] << 8) + s[1];
+      return 2;
+    }
+  }
+  return RET_TOOFEW(0);
+}
+
+static int
+ucs2be_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (wc < 0x10000 && !(wc >= 0xd800 && wc < 0xe000)) {
+    if (n >= 2) {
+      r[0] = (unsigned char) (wc >> 8);
+      r[1] = (unsigned char) wc;
+      return 2;
+    } else
+      return RET_TOOSMALL;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/ucs2internal.h b/graf2d/win32gdk/gdk/src/iconv/ucs2internal.h
new file mode 100644
index 00000000000..d482aeac40b
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/ucs2internal.h
@@ -0,0 +1,51 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * UCS-2-INTERNAL = UCS-2 with machine dependent endianness and alignment
+ */
+
+static int
+ucs2internal_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  if (n >= 2) {
+    unsigned short x = *(const unsigned short *)s;
+    if (x >= 0xd800 && x < 0xe000) {
+      return RET_ILSEQ;
+    } else {
+      *pwc = x;
+      return 2;
+    }
+  }
+  return RET_TOOFEW(0);
+}
+
+static int
+ucs2internal_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (wc < 0x10000 && !(wc >= 0xd800 && wc < 0xe000)) {
+    if (n >= 2) {
+      *(unsigned short *)r = wc;
+      return 2;
+    } else
+      return RET_TOOSMALL;
+  } else
+    return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/ucs2le.h b/graf2d/win32gdk/gdk/src/iconv/ucs2le.h
new file mode 100644
index 00000000000..49018612b5d
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/ucs2le.h
@@ -0,0 +1,51 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * UCS-2LE = UCS-2 little endian
+ */
+
+static int
+ucs2le_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  if (n >= 2) {
+    if (s[1] >= 0xd8 && s[1] < 0xe0) {
+      return RET_ILSEQ;
+    } else {
+      *pwc = s[0] + (s[1] << 8);
+      return 2;
+    }
+  }
+  return RET_TOOFEW(0);
+}
+
+static int
+ucs2le_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (wc < 0x10000 && !(wc >= 0xd800 && wc < 0xe000)) {
+    if (n >= 2) {
+      r[0] = (unsigned char) wc;
+      r[1] = (unsigned char) (wc >> 8);
+      return 2;
+    } else
+      return RET_TOOSMALL;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/ucs2swapped.h b/graf2d/win32gdk/gdk/src/iconv/ucs2swapped.h
new file mode 100644
index 00000000000..f426f406f12
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/ucs2swapped.h
@@ -0,0 +1,60 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * UCS-2-SWAPPED = UCS-2-INTERNAL with inverted endianness
+ */
+
+static int
+ucs2swapped_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  /* This function assumes that 'unsigned short' has exactly 16 bits. */
+  if (sizeof(unsigned short) != 2) abort();
+
+  if (n >= 2) {
+    unsigned short x = *(const unsigned short *)s;
+    x = (x >> 8) | (x << 8);
+    if (x >= 0xd800 && x < 0xe000) {
+      return RET_ILSEQ;
+    } else {
+      *pwc = x;
+      return 2;
+    }
+  }
+  return RET_TOOFEW(0);
+}
+
+static int
+ucs2swapped_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  /* This function assumes that 'unsigned short' has exactly 16 bits. */
+  if (sizeof(unsigned short) != 2) abort();
+
+  if (wc < 0x10000 && !(wc >= 0xd800 && wc < 0xe000)) {
+    if (n >= 2) {
+      unsigned short x = wc;
+      x = (x >> 8) | (x << 8);
+      *(unsigned short *)r = x;
+      return 2;
+    } else
+      return RET_TOOSMALL;
+  } else
+    return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/ucs4.h b/graf2d/win32gdk/gdk/src/iconv/ucs4.h
new file mode 100644
index 00000000000..00d08d2517a
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/ucs4.h
@@ -0,0 +1,69 @@
+/*
+ * Copyright (C) 1999-2001, 2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * UCS-4
+ */
+
+/* Here we accept FFFE0000/0000FEFF marks as endianness indicators everywhere
+   in the stream, not just at the beginning. The default is big-endian. */
+/* The state is 0 if big-endian, 1 if little-endian. */
+static int
+ucs4_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  state_t state = conv->istate;
+  int count = 0;
+  for (; n >= 4;) {
+    ucs4_t wc = (state
+                  ? s[0] + (s[1] << 8) + (s[2] << 16) + (s[3] << 24)
+                  : (s[0] << 24) + (s[1] << 16) + (s[2] << 8) + s[3]);
+    s += 4; n -= 4; count += 4;
+    if (wc == 0x0000feff) {
+    } else if (wc == 0xfffe0000u) {
+      state ^= 1;
+    } else if (wc <= 0x7fffffff) {
+      *pwc = wc;
+      conv->istate = state;
+      return count;
+    } else {
+      conv->istate = state;
+      return RET_SHIFT_ILSEQ(count);
+    }
+  }
+  conv->istate = state;
+  return RET_TOOFEW(count);
+}
+
+/* But we output UCS-4 in big-endian order, without byte-order mark. */
+static int
+ucs4_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (wc <= 0x7fffffff) {
+    if (n >= 4) {
+      r[0] = (unsigned char) (wc >> 24);
+      r[1] = (unsigned char) (wc >> 16);
+      r[2] = (unsigned char) (wc >> 8);
+      r[3] = (unsigned char) wc;
+      return 4;
+    } else
+      return RET_TOOSMALL;
+  } else
+    return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/ucs4be.h b/graf2d/win32gdk/gdk/src/iconv/ucs4be.h
new file mode 100644
index 00000000000..241bc158dcf
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/ucs4be.h
@@ -0,0 +1,46 @@
+/*
+ * Copyright (C) 1999-2000 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * UCS-4BE = UCS-4 big endian
+ */
+
+static int
+ucs4be_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  if (n >= 4) {
+    *pwc = (s[0] << 24) + (s[1] << 16) + (s[2] << 8) + s[3];
+    return 4;
+  }
+  return RET_TOOFEW(0);
+}
+
+static int
+ucs4be_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 4) {
+    r[0] = (unsigned char) (wc >> 24);
+    r[1] = (unsigned char) (wc >> 16);
+    r[2] = (unsigned char) (wc >> 8);
+    r[3] = (unsigned char) wc;
+    return 4;
+  } else
+    return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/ucs4internal.h b/graf2d/win32gdk/gdk/src/iconv/ucs4internal.h
new file mode 100644
index 00000000000..bd793a3f0af
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/ucs4internal.h
@@ -0,0 +1,43 @@
+/*
+ * Copyright (C) 1999-2000 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * UCS-4-INTERNAL = UCS-4 with machine dependent endianness and alignment
+ */
+
+static int
+ucs4internal_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  if (n >= 4) {
+    *pwc = *(const unsigned int *)s;
+    return 4;
+  }
+  return RET_TOOFEW(0);
+}
+
+static int
+ucs4internal_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 4) {
+    *(unsigned int *)r = wc;
+    return 4;
+  } else
+    return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/ucs4le.h b/graf2d/win32gdk/gdk/src/iconv/ucs4le.h
new file mode 100644
index 00000000000..0c762fec59e
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/ucs4le.h
@@ -0,0 +1,46 @@
+/*
+ * Copyright (C) 1999-2000 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * UCS-4LE = UCS-4 little endian
+ */
+
+static int
+ucs4le_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  if (n >= 4) {
+    *pwc = s[0] + (s[1] << 8) + (s[2] << 16) + (s[3] << 24);
+    return 4;
+  }
+  return RET_TOOFEW(0);
+}
+
+static int
+ucs4le_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 4) {
+    r[0] = (unsigned char) wc;
+    r[1] = (unsigned char) (wc >> 8);
+    r[2] = (unsigned char) (wc >> 16);
+    r[3] = (unsigned char) (wc >> 24);
+    return 4;
+  } else
+    return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/ucs4swapped.h b/graf2d/win32gdk/gdk/src/iconv/ucs4swapped.h
new file mode 100644
index 00000000000..6a292ecda69
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/ucs4swapped.h
@@ -0,0 +1,53 @@
+/*
+ * Copyright (C) 1999-2000 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * UCS-4-SWAPPED = UCS-4-INTERNAL with inverted endianness
+ */
+
+static int
+ucs4swapped_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  /* This function assumes that 'unsigned int' has exactly 32 bits. */
+  if (sizeof(unsigned int) != 4) abort();
+
+  if (n >= 4) {
+    unsigned int x = *(const unsigned int *)s;
+    x = (x >> 24) | ((x >> 8) & 0xff00) | ((x & 0xff00) << 8) | (x << 24);
+    *pwc = x;
+    return 4;
+  }
+  return RET_TOOFEW(0);
+}
+
+static int
+ucs4swapped_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  /* This function assumes that 'unsigned int' has exactly 32 bits. */
+  if (sizeof(unsigned int) != 4) abort();
+
+  if (n >= 4) {
+    unsigned int x = wc;
+    x = (x >> 24) | ((x >> 8) & 0xff00) | ((x & 0xff00) << 8) | (x << 24);
+    *(unsigned int *)r = x;
+    return 4;
+  } else
+    return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/uhc_1.h b/graf2d/win32gdk/gdk/src/iconv/uhc_1.h
new file mode 100644
index 00000000000..7b0c725819f
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/uhc_1.h
@@ -0,0 +1,1725 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * Unified Hangul Code part 1
+ */
+
+static const unsigned short uhc_1_2uni_main_page81[64] = {
+  0xac02, 0xac8d, 0xad14, 0xad91, 0xadfa, 0xae7a, 0xaee6, 0xaf57,
+  0xafbf, 0xb030, 0xb0a5, 0xb122, 0xb19e, 0xb207, 0xb26f, 0xb2f0,
+  0xb366, 0xb3e1, 0xb445, 0xb4ad, 0xb51e, 0xb590, 0xb600, 0xb661,
+  0xb6c3, 0xb723, 0xb79f, 0xb811, 0xb885, 0xb8f1, 0xb95a, 0xb9d4,
+  0xba47, 0xbac2, 0xbb28, 0xbb9a, 0xbc03, 0xbc80, 0xbcfe, 0xbd67,
+  0xbdd2, 0xbe3d, 0xbeb8, 0xbf23, 0xbf83, 0xbfe6, 0xc040, 0xc0a7,
+  0xc132, 0xc1b1, 0xc224, 0xc297, 0xc310, 0xc37a, 0xc3db, 0xc446,
+  0xc4aa, 0xc50f, 0xc596, 0xc626, 0xc6a8, 0xc726, 0xc7b8, 0xc832,
+};
+static const unsigned char uhc_1_2uni_page81[5696] = {
+  /* 0x81 */
+  0x00, 0x01, 0x03, 0x04, 0x09, 0x0a, 0x0b, 0x0c,
+  0x0d, 0x16, 0x1c, 0x1d, 0x1f, 0x20, 0x21, 0x23,
+  0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2c, 0x30,
+  0x31, 0x32, 0x33, 0x34, 0x35, 0x38, 0x39, 0x3b,
+  0x3c, 0x3d, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44,
+  0x45, 0x46, 0x47, 0x48, 0x4a, 0x4c, 0x4d, 0x4e,
+  0x4f, 0x50, 0x51, 0x53, 0x54, 0x55, 0x57, 0x58,
+  0x59, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61,
+  0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69,
+  0x6a, 0x6b, 0x6c, 0x6d, 0x70, 0x71, 0x73, 0x74,
+  0x77, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x80, 0x85,
+  0x86, 0x00, 0x01, 0x02, 0x04, 0x05, 0x06, 0x08,
+  0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x11, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1e, 0x20, 0x21,
+  0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2d,
+  0x31, 0x32, 0x33, 0x35, 0x36, 0x38, 0x39, 0x3a,
+  0x3c, 0x3d, 0x3e, 0x40, 0x41, 0x42, 0x43, 0x44,
+  0x45, 0x46, 0x47, 0x49, 0x4b, 0x4c, 0x4d, 0x4e,
+  0x4f, 0x50, 0x51, 0x52, 0x55, 0x56, 0x58, 0x59,
+  0x5c, 0x5e, 0x60, 0x61, 0x65, 0x67, 0x6a, 0x6b,
+  0x6c, 0x6d, 0x6e, 0x71, 0x72, 0x74, 0x75, 0x76,
+  0x78, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x81, 0x83,
+  0x85, 0x86,
+  /* 0x82 */
+  0x00, 0x01, 0x02, 0x03, 0x05, 0x06, 0x07, 0x09,
+  0x0a, 0x0b, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12,
+  0x13, 0x14, 0x16, 0x17, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x22, 0x23, 0x25, 0x26, 0x27, 0x29,
+  0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x32, 0x34,
+  0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3d, 0x3e,
+  0x3f, 0x41, 0x42, 0x43, 0x45, 0x46, 0x47, 0x48,
+  0x49, 0x4a, 0x4b, 0x4c, 0x4e, 0x50, 0x51, 0x52,
+  0x53, 0x54, 0x55, 0x56, 0x57, 0x5a, 0x5b, 0x5d,
+  0x5e, 0x63, 0x64, 0x65, 0x66, 0x6a, 0x6c, 0x6f,
+  0x70, 0x71, 0x72, 0x73, 0x76, 0x77, 0x79, 0x7a,
+  0x7b, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06,
+  0x07, 0x08, 0x09, 0x0a, 0x0d, 0x0e, 0x0f, 0x10,
+  0x11, 0x12, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19,
+  0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21,
+  0x22, 0x23, 0x24, 0x25, 0x27, 0x28, 0x29, 0x2a,
+  0x2b, 0x2c, 0x2d, 0x2e, 0x31, 0x32, 0x34, 0x35,
+  0x36, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e,
+  0x41, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49,
+  0x4a, 0x4c, 0x4d, 0x4e, 0x50, 0x51, 0x52, 0x54,
+  0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c,
+  0x5d, 0x5e, 0x5f, 0x60, 0x61, 0x62, 0x63, 0x64,
+  0x65, 0x66,
+  /* 0x83 */
+  0x00, 0x01, 0x03, 0x04, 0x08, 0x09, 0x0a, 0x0b,
+  0x0c, 0x0d, 0x10, 0x12, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20,
+  0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
+  0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30,
+  0x31, 0x32, 0x33, 0x34, 0x35, 0x38, 0x39, 0x3b,
+  0x3c, 0x3f, 0x41, 0x42, 0x43, 0x44, 0x45, 0x48,
+  0x4a, 0x4d, 0x4e, 0x4f, 0x51, 0x55, 0x57, 0x58,
+  0x59, 0x5b, 0x5d, 0x5e, 0x5f, 0x60, 0x61, 0x64,
+  0x68, 0x69, 0x6a, 0x6c, 0x6d, 0x70, 0x71, 0x73,
+  0x74, 0x75, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c,
+  0x7d, 0x00, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09,
+  0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x13, 0x14,
+  0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c,
+  0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24,
+  0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c,
+  0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34,
+  0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c,
+  0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x45, 0x47, 0x48,
+  0x49, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51,
+  0x54, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x60,
+  0x61, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69,
+  0x6a, 0x6b,
+  /* 0x84 */
+  0x00, 0x01, 0x03, 0x04, 0x06, 0x08, 0x09, 0x0a,
+  0x0b, 0x0c, 0x0d, 0x0f, 0x10, 0x11, 0x13, 0x14,
+  0x15, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x23, 0x24, 0x25, 0x26, 0x28,
+  0x29, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31,
+  0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39,
+  0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41,
+  0x42, 0x43, 0x44, 0x45, 0x48, 0x49, 0x4b, 0x4d,
+  0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x58,
+  0x5a, 0x5e, 0x5f, 0x60, 0x61, 0x64, 0x65, 0x66,
+  0x67, 0x68, 0x69, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
+  0x70, 0x00, 0x01, 0x02, 0x03, 0x04, 0x07, 0x08,
+  0x09, 0x0a, 0x0b, 0x0c, 0x0f, 0x10, 0x11, 0x12,
+  0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a,
+  0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x23,
+  0x24, 0x25, 0x26, 0x27, 0x28, 0x2a, 0x2b, 0x2c,
+  0x2e, 0x2f, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36,
+  0x37, 0x38, 0x3b, 0x3c, 0x3d, 0x3f, 0x40, 0x41,
+  0x42, 0x43, 0x44, 0x46, 0x47, 0x48, 0x49, 0x4a,
+  0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52,
+  0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a,
+  0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x63, 0x64,
+  0x66, 0x67,
+  /* 0x85 */
+  0x00, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x0b,
+  0x0d, 0x10, 0x11, 0x12, 0x13, 0x14, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1e, 0x1f, 0x20,
+  0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
+  0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x33, 0x34,
+  0x36, 0x37, 0x38, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e,
+  0x3f, 0x40, 0x43, 0x44, 0x46, 0x47, 0x48, 0x49,
+  0x4a, 0x4b, 0x4c, 0x4e, 0x4f, 0x50, 0x52, 0x53,
+  0x54, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c,
+  0x5f, 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66,
+  0x67, 0x68, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
+  0x70, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06,
+  0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e,
+  0x0f, 0x10, 0x11, 0x12, 0x13, 0x16, 0x17, 0x19,
+  0x1b, 0x1d, 0x1f, 0x20, 0x21, 0x22, 0x26, 0x28,
+  0x2a, 0x2b, 0x2c, 0x2e, 0x2f, 0x30, 0x31, 0x32,
+  0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a,
+  0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42,
+  0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a,
+  0x4b, 0x4e, 0x4f, 0x51, 0x52, 0x53, 0x55, 0x56,
+  0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5e, 0x60, 0x62,
+  0x63, 0x64, 0x65, 0x66, 0x67, 0x6b, 0x6d, 0x6e,
+  0x73, 0x74,
+  /* 0x86 */
+  0x00, 0x01, 0x02, 0x05, 0x0b, 0x0d, 0x11, 0x12,
+  0x14, 0x15, 0x16, 0x18, 0x19, 0x1a, 0x1b, 0x1c,
+  0x1d, 0x1e, 0x21, 0x25, 0x26, 0x27, 0x28, 0x29,
+  0x2a, 0x2d, 0x2e, 0x30, 0x31, 0x32, 0x34, 0x35,
+  0x36, 0x37, 0x38, 0x39, 0x3a, 0x3c, 0x3d, 0x3e,
+  0x3f, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
+  0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
+  0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
+  0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
+  0x60, 0x61, 0x62, 0x65, 0x68, 0x69, 0x6a, 0x6c,
+  0x6f, 0x70, 0x71, 0x72, 0x75, 0x79, 0x7a, 0x7b,
+  0x7c, 0x00, 0x04, 0x05, 0x07, 0x08, 0x09, 0x0b,
+  0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x14, 0x18,
+  0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x20, 0x21, 0x23,
+  0x24, 0x25, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c,
+  0x2d, 0x30, 0x31, 0x34, 0x35, 0x37, 0x38, 0x39,
+  0x3b, 0x3c, 0x3d, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53,
+  0x54, 0x55, 0x58, 0x59, 0x5b, 0x5c, 0x5d, 0x5f,
+  0x61, 0x62, 0x63, 0x64, 0x65, 0x68, 0x6a, 0x6c,
+  0x6d, 0x6e, 0x6f, 0x73, 0x74, 0x75, 0x77, 0x78,
+  0x79, 0x7b,
+  /* 0x87 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10,
+  0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
+  0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20,
+  0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
+  0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2f, 0x30, 0x31,
+  0x33, 0x34, 0x35, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x40, 0x42, 0x43, 0x44, 0x45, 0x46,
+  0x47, 0x48, 0x49, 0x4c, 0x4d, 0x4f, 0x50, 0x51,
+  0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a,
+  0x5c, 0x5e, 0x60, 0x61, 0x62, 0x63, 0x64, 0x65,
+  0x68, 0x00, 0x02, 0x03, 0x06, 0x07, 0x08, 0x09,
+  0x0a, 0x0b, 0x0c, 0x0f, 0x11, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e,
+  0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26,
+  0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x36, 0x37, 0x38,
+  0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40,
+  0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48,
+  0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50,
+  0x52, 0x53, 0x54, 0x56, 0x57, 0x58, 0x5a, 0x5b,
+  0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x63, 0x64, 0x65,
+  0x66, 0x67,
+  /* 0x88 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x07, 0x08, 0x09,
+  0x0a, 0x0b, 0x0c, 0x0e, 0x0f, 0x10, 0x11, 0x12,
+  0x13, 0x14, 0x17, 0x18, 0x19, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x23, 0x24, 0x26, 0x27, 0x28,
+  0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x33, 0x35, 0x38,
+  0x39, 0x3a, 0x3c, 0x3e, 0x3f, 0x40, 0x42, 0x43,
+  0x44, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c,
+  0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54,
+  0x55, 0x56, 0x57, 0x58, 0x5b, 0x5c, 0x5e, 0x5f,
+  0x60, 0x62, 0x64, 0x65, 0x66, 0x67, 0x68, 0x6b,
+  0x6d, 0x6f, 0x70, 0x71, 0x72, 0x74, 0x78, 0x7a,
+  0x7b, 0x00, 0x01, 0x02, 0x06, 0x0c, 0x0d, 0x0e,
+  0x12, 0x13, 0x15, 0x16, 0x17, 0x19, 0x1a, 0x1b,
+  0x1c, 0x1d, 0x1e, 0x1f, 0x22, 0x26, 0x27, 0x28,
+  0x29, 0x2a, 0x2b, 0x2d, 0x2e, 0x2f, 0x30, 0x31,
+  0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39,
+  0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41,
+  0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49,
+  0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51,
+  0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59,
+  0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61,
+  0x62, 0x63, 0x67, 0x69, 0x6a, 0x6d, 0x70, 0x71,
+  0x72, 0x73,
+  /* 0x89 */
+  0x00, 0x02, 0x04, 0x06, 0x07, 0x09, 0x0c, 0x0d,
+  0x0f, 0x10, 0x11, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1c, 0x20, 0x21, 0x22, 0x23, 0x24,
+  0x25, 0x27, 0x28, 0x29, 0x2b, 0x2c, 0x2d, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41,
+  0x43, 0x44, 0x45, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53,
+  0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b,
+  0x5c, 0x5d, 0x60, 0x61, 0x63, 0x64, 0x67, 0x69,
+  0x6b, 0x6c, 0x6d, 0x70, 0x72, 0x74, 0x76, 0x78,
+  0x79, 0x00, 0x01, 0x02, 0x04, 0x05, 0x06, 0x08,
+  0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10,
+  0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
+  0x19, 0x1a, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21,
+  0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29,
+  0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x30, 0x31, 0x32,
+  0x33, 0x34, 0x35, 0x36, 0x38, 0x39, 0x3a, 0x3c,
+  0x3d, 0x3e, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45,
+  0x46, 0x49, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50,
+  0x51, 0x52, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59,
+  0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61,
+  0x62, 0x63,
+  /* 0x8a */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0d, 0x0e, 0x10, 0x11, 0x12,
+  0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1d,
+  0x1f, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x28,
+  0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30,
+  0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38,
+  0x39, 0x3a, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41,
+  0x42, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a,
+  0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52,
+  0x53, 0x54, 0x55, 0x56, 0x57, 0x59, 0x5a, 0x5b,
+  0x5c, 0x5d, 0x5e, 0x60, 0x61, 0x62, 0x64, 0x65,
+  0x66, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06,
+  0x07, 0x09, 0x0b, 0x0d, 0x0e, 0x0f, 0x10, 0x11,
+  0x12, 0x14, 0x15, 0x16, 0x18, 0x19, 0x1a, 0x1c,
+  0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x24, 0x25,
+  0x26, 0x27, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e,
+  0x31, 0x32, 0x34, 0x35, 0x38, 0x3a, 0x3b, 0x3c,
+  0x3d, 0x3e, 0x41, 0x43, 0x45, 0x46, 0x47, 0x48,
+  0x49, 0x4a, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51,
+  0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59,
+  0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61,
+  0x62, 0x63, 0x64, 0x65, 0x66, 0x69, 0x6a, 0x6c,
+  0x6d, 0x70,
+  /* 0x8b */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x08, 0x0d,
+  0x0e, 0x0f, 0x10, 0x11, 0x14, 0x15, 0x17, 0x18,
+  0x19, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21,
+  0x24, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x30, 0x31,
+  0x33, 0x34, 0x35, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x40, 0x44, 0x45, 0x46, 0x47, 0x48,
+  0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50,
+  0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58,
+  0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60,
+  0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68,
+  0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, 0x70,
+  0x71, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06,
+  0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e,
+  0x0f, 0x12, 0x13, 0x15, 0x16, 0x17, 0x19, 0x1c,
+  0x1d, 0x1e, 0x1f, 0x22, 0x26, 0x27, 0x28, 0x29,
+  0x2a, 0x2e, 0x2f, 0x31, 0x32, 0x33, 0x35, 0x36,
+  0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3e, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x49, 0x4a, 0x4b, 0x4c,
+  0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54,
+  0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5d,
+  0x5e, 0x5f, 0x60, 0x61, 0x62, 0x63, 0x64, 0x65,
+  0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d,
+  0x6e, 0x6f,
+  /* 0x8c */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x12, 0x13, 0x15, 0x16, 0x17, 0x19, 0x1a, 0x1b,
+  0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23,
+  0x24, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x35, 0x36,
+  0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e,
+  0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46,
+  0x47, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
+  0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
+  0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
+  0x60, 0x00, 0x01, 0x02, 0x04, 0x05, 0x06, 0x08,
+  0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10,
+  0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
+  0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20,
+  0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
+  0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30,
+  0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38,
+  0x39, 0x3a, 0x3d, 0x3e, 0x40, 0x41, 0x42, 0x44,
+  0x45, 0x46, 0x47, 0x48, 0x49, 0x4c, 0x4d, 0x4e,
+  0x4f, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
+  0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
+  0x60, 0x61,
+  /* 0x8d */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
+  0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20,
+  0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
+  0x29, 0x2a, 0x2b, 0x2c, 0x2e, 0x2f, 0x30, 0x32,
+  0x33, 0x34, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3f, 0x40, 0x41, 0x43, 0x44, 0x45, 0x46,
+  0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e,
+  0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56,
+  0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e,
+  0x5f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x07, 0x08,
+  0x0a, 0x0b, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13,
+  0x14, 0x17, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e,
+  0x1f, 0x20, 0x22, 0x23, 0x24, 0x26, 0x27, 0x28,
+  0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x33,
+  0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3e, 0x3f, 0x40, 0x42, 0x43, 0x44, 0x46,
+  0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4f, 0x51,
+  0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x5b, 0x5c,
+  0x5e, 0x5f, 0x60, 0x62, 0x63, 0x64, 0x65, 0x66,
+  0x67, 0x68, 0x6b, 0x70, 0x71, 0x72, 0x77, 0x78,
+  0x7a, 0x7b,
+  /* 0x8e */
+  0x00, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
+  0x0b, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x17,
+  0x18, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20,
+  0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x29,
+  0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32,
+  0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a,
+  0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42,
+  0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a,
+  0x4b, 0x4c, 0x4f, 0x50, 0x52, 0x53, 0x54, 0x56,
+  0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5f, 0x63,
+  0x64, 0x65, 0x66, 0x67, 0x6b, 0x6c, 0x6e, 0x6f,
+  0x70, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06,
+  0x09, 0x0b, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12,
+  0x15, 0x16, 0x18, 0x19, 0x1a, 0x1c, 0x1d, 0x1e,
+  0x1f, 0x20, 0x21, 0x22, 0x25, 0x29, 0x2a, 0x2b,
+  0x2c, 0x2d, 0x2e, 0x30, 0x31, 0x32, 0x34, 0x35,
+  0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d,
+  0x3e, 0x3f, 0x41, 0x43, 0x44, 0x45, 0x46, 0x47,
+  0x48, 0x49, 0x4a, 0x4d, 0x4e, 0x50, 0x51, 0x52,
+  0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5d,
+  0x5f, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x68,
+  0x69, 0x6a, 0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71,
+  0x72, 0x73,
+  /* 0x8f */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10,
+  0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
+  0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20,
+  0x21, 0x22, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29,
+  0x2a, 0x2c, 0x2d, 0x2e, 0x30, 0x31, 0x32, 0x34,
+  0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3d, 0x3f,
+  0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x48, 0x49,
+  0x4a, 0x4c, 0x4d, 0x4e, 0x50, 0x51, 0x52, 0x53,
+  0x54, 0x55, 0x56, 0x57, 0x59, 0x5b, 0x5d, 0x5e,
+  0x5f, 0x60, 0x61, 0x62, 0x65, 0x66, 0x68, 0x69,
+  0x6a, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06,
+  0x09, 0x0b, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12,
+  0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b,
+  0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23,
+  0x24, 0x25, 0x26, 0x28, 0x29, 0x2a, 0x2b, 0x2c,
+  0x2d, 0x2e, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d,
+  0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45,
+  0x46, 0x47, 0x48, 0x49, 0x4a, 0x4d, 0x4e, 0x50,
+  0x51, 0x52, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59,
+  0x5a, 0x5c, 0x5d, 0x5f, 0x61, 0x62, 0x63, 0x64,
+  0x65, 0x66,
+  /* 0x90 */
+  0x00, 0x01, 0x03, 0x04, 0x05, 0x07, 0x08, 0x09,
+  0x0a, 0x0b, 0x0c, 0x0d, 0x10, 0x12, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1c, 0x1d, 0x1f, 0x20,
+  0x21, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29,
+  0x2c, 0x2e, 0x31, 0x32, 0x35, 0x36, 0x37, 0x38,
+  0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40,
+  0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48,
+  0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50,
+  0x51, 0x54, 0x55, 0x57, 0x58, 0x59, 0x5b, 0x5c,
+  0x5d, 0x5e, 0x5f, 0x60, 0x61, 0x64, 0x66, 0x68,
+  0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x70, 0x71, 0x73,
+  0x79, 0x00, 0x01, 0x02, 0x03, 0x06, 0x08, 0x0b,
+  0x0c, 0x0e, 0x12, 0x13, 0x15, 0x16, 0x17, 0x19,
+  0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x22, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2e, 0x2f, 0x30, 0x31,
+  0x32, 0x33, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a,
+  0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53,
+  0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b,
+  0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61, 0x62, 0x63,
+  0x66, 0x67, 0x69, 0x6a, 0x6b, 0x6d, 0x6f, 0x70,
+  0x71, 0x72,
+  /* 0x91 */
+  0x00, 0x03, 0x05, 0x08, 0x09, 0x0a, 0x0b, 0x0f,
+  0x10, 0x12, 0x13, 0x14, 0x16, 0x17, 0x18, 0x19,
+  0x1a, 0x1b, 0x1c, 0x1f, 0x23, 0x24, 0x25, 0x26,
+  0x27, 0x28, 0x2b, 0x2c, 0x2e, 0x2f, 0x30, 0x32,
+  0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a,
+  0x3b, 0x3f, 0x41, 0x42, 0x43, 0x44, 0x46, 0x47,
+  0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
+  0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
+  0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
+  0x60, 0x63, 0x66, 0x67, 0x68, 0x6a, 0x6c, 0x6d,
+  0x6e, 0x6f, 0x70, 0x73, 0x75, 0x77, 0x78, 0x79,
+  0x7a, 0x00, 0x01, 0x03, 0x04, 0x05, 0x07, 0x08,
+  0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10,
+  0x11, 0x12, 0x13, 0x14, 0x15, 0x18, 0x19, 0x1a,
+  0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22,
+  0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a,
+  0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32,
+  0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3b,
+  0x3c, 0x3d, 0x3f, 0x40, 0x41, 0x43, 0x44, 0x45,
+  0x46, 0x47, 0x48, 0x49, 0x4a, 0x4c, 0x4e, 0x50,
+  0x51, 0x52, 0x53, 0x54, 0x55, 0x57, 0x58, 0x59,
+  0x5b, 0x5c, 0x5d, 0x5f, 0x60, 0x61, 0x62, 0x63,
+  0x64, 0x65,
+  /* 0x92 */
+  0x00, 0x02, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09,
+  0x0a, 0x0b, 0x0f, 0x11, 0x12, 0x17, 0x18, 0x19,
+  0x1a, 0x1b, 0x1e, 0x20, 0x22, 0x23, 0x24, 0x26,
+  0x29, 0x2a, 0x2b, 0x2d, 0x2e, 0x2f, 0x31, 0x32,
+  0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x3a, 0x3c,
+  0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x45,
+  0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d,
+  0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55,
+  0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d,
+  0x5e, 0x5f, 0x61, 0x62, 0x63, 0x65, 0x66, 0x67,
+  0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, 0x70,
+  0x71, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06,
+  0x07, 0x08, 0x09, 0x0b, 0x0c, 0x0d, 0x0f, 0x10,
+  0x11, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19,
+  0x1b, 0x1c, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23,
+  0x24, 0x25, 0x27, 0x28, 0x29, 0x2b, 0x2c, 0x2d,
+  0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x37,
+  0x38, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40,
+  0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48,
+  0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50,
+  0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58,
+  0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x60, 0x61, 0x63,
+  0x64, 0x67,
+  /* 0x93 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x07, 0x0b, 0x0d,
+  0x0f, 0x10, 0x16, 0x17, 0x1d, 0x1e, 0x1f, 0x20,
+  0x23, 0x25, 0x27, 0x28, 0x29, 0x2b, 0x2c, 0x2f,
+  0x30, 0x32, 0x33, 0x34, 0x36, 0x37, 0x38, 0x39,
+  0x3a, 0x3b, 0x3c, 0x3f, 0x43, 0x44, 0x45, 0x47,
+  0x48, 0x4b, 0x4c, 0x4e, 0x4f, 0x50, 0x51, 0x52,
+  0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5b,
+  0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61, 0x62, 0x63,
+  0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b,
+  0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73,
+  0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b,
+  0x7c, 0x00, 0x01, 0x02, 0x03, 0x06, 0x07, 0x09,
+  0x0a, 0x0d, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x16,
+  0x18, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x22, 0x23,
+  0x25, 0x26, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e,
+  0x2f, 0x32, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3e, 0x3f, 0x41, 0x42, 0x43, 0x45, 0x46, 0x47,
+  0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4e, 0x52, 0x53,
+  0x54, 0x56, 0x57, 0x59, 0x5a, 0x5b, 0x5d, 0x5e,
+  0x5f, 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66,
+  0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e,
+  0x6f, 0x70, 0x71, 0x72, 0x73, 0x77, 0x79, 0x7a,
+  0x7b, 0x7d,
+  /* 0x94 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x08, 0x0a,
+  0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x13, 0x14,
+  0x15, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+  0x40, 0x41, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48,
+  0x49, 0x4c, 0x4d, 0x4f, 0x50, 0x51, 0x53, 0x54,
+  0x55, 0x56, 0x57, 0x58, 0x59, 0x5c, 0x5d, 0x5e,
+  0x5f, 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x67,
+  0x68, 0x00, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x1b, 0x1c, 0x1e, 0x1f, 0x24, 0x25, 0x26,
+  0x27, 0x28, 0x2b, 0x2d, 0x2f, 0x30, 0x31, 0x34,
+  0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3e,
+  0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46,
+  0x47, 0x48, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
+  0x50, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58,
+  0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60,
+  0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68,
+  0x69, 0x6a,
+  /* 0x95 */
+  0x00, 0x01, 0x04, 0x05, 0x07, 0x08, 0x09, 0x0b,
+  0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13,
+  0x14, 0x15, 0x16, 0x18, 0x19, 0x1a, 0x1b, 0x1c,
+  0x1d, 0x1f, 0x20, 0x21, 0x23, 0x24, 0x25, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2f, 0x30,
+  0x32, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3c,
+  0x3d, 0x3f, 0x40, 0x41, 0x43, 0x44, 0x45, 0x46,
+  0x47, 0x48, 0x49, 0x4c, 0x4e, 0x4f, 0x50, 0x51,
+  0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59,
+  0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61,
+  0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69,
+  0x6a, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06,
+  0x09, 0x0a, 0x0c, 0x0d, 0x0e, 0x10, 0x12, 0x13,
+  0x14, 0x15, 0x16, 0x19, 0x1b, 0x1f, 0x20, 0x21,
+  0x22, 0x25, 0x26, 0x28, 0x29, 0x2a, 0x2c, 0x2e,
+  0x2f, 0x30, 0x31, 0x32, 0x35, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x41, 0x42, 0x44, 0x45, 0x46, 0x48,
+  0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x51, 0x55,
+  0x56, 0x57, 0x58, 0x59, 0x5a, 0x5d, 0x5e, 0x5f,
+  0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
+  0x68, 0x69, 0x6a, 0x6c, 0x6d, 0x6e, 0x6f, 0x70,
+  0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78,
+  0x79, 0x7a,
+  /* 0x96 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x1a, 0x1b, 0x1d, 0x1e, 0x21, 0x22, 0x23, 0x24,
+  0x25, 0x26, 0x27, 0x29, 0x2a, 0x2e, 0x2f, 0x30,
+  0x31, 0x32, 0x33, 0x35, 0x36, 0x37, 0x38, 0x39,
+  0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41,
+  0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x4a,
+  0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x52, 0x53, 0x54,
+  0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c,
+  0x5d, 0x5e, 0x5f, 0x62, 0x66, 0x67, 0x68, 0x69,
+  0x6a, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06,
+  0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e,
+  0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16,
+  0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1f, 0x20,
+  0x22, 0x23, 0x24, 0x26, 0x27, 0x28, 0x29, 0x2a,
+  0x2b, 0x2c, 0x2f, 0x30, 0x31, 0x33, 0x34, 0x35,
+  0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d,
+  0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45,
+  0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d,
+  0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55,
+  0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d,
+  0x5e, 0x5f,
+  /* 0x97 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
+  0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20,
+  0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
+  0x29, 0x2a, 0x2b, 0x2c, 0x2e, 0x2f, 0x30, 0x31,
+  0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39,
+  0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41,
+  0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x4b, 0x4c,
+  0x4e, 0x4f, 0x50, 0x52, 0x53, 0x54, 0x55, 0x56,
+  0x57, 0x58, 0x5a, 0x5b, 0x5d, 0x5f, 0x60, 0x61,
+  0x62, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06,
+  0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e,
+  0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16,
+  0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e,
+  0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26,
+  0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e,
+  0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36,
+  0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e,
+  0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46,
+  0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e,
+  0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x57,
+  0x58, 0x59,
+  /* 0x98 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x19,
+  0x1a, 0x1b, 0x1d, 0x1e, 0x1f, 0x21, 0x22, 0x23,
+  0x24, 0x25, 0x26, 0x27, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d,
+  0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45,
+  0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d,
+  0x4e, 0x4f, 0x52, 0x53, 0x55, 0x56, 0x57, 0x59,
+  0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x62, 0x64,
+  0x66, 0x00, 0x01, 0x02, 0x03, 0x04, 0x07, 0x0a,
+  0x0b, 0x10, 0x11, 0x12, 0x13, 0x14, 0x17, 0x1b,
+  0x1c, 0x1d, 0x1f, 0x20, 0x23, 0x24, 0x26, 0x27,
+  0x28, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30,
+  0x33, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3f,
+  0x40, 0x42, 0x43, 0x44, 0x46, 0x47, 0x48, 0x49,
+  0x4a, 0x4b, 0x4c, 0x4f, 0x51, 0x53, 0x54, 0x55,
+  0x56, 0x57, 0x58, 0x5a, 0x5b, 0x5c, 0x5e, 0x5f,
+  0x60, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68,
+  0x6a, 0x6b, 0x6c, 0x6d, 0x6f, 0x70, 0x71, 0x72,
+  0x73, 0x74, 0x7a, 0x7b, 0x7e, 0x81, 0x82, 0x83,
+  0x84, 0x87,
+  /* 0x99 */
+  0x00, 0x01, 0x02, 0x03, 0x05, 0x08, 0x09, 0x0b,
+  0x0c, 0x0d, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14,
+  0x15, 0x18, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21,
+  0x24, 0x25, 0x27, 0x28, 0x29, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x34, 0x38, 0x39, 0x3a,
+  0x3b, 0x3c, 0x3d, 0x3f, 0x40, 0x41, 0x43, 0x44,
+  0x45, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d,
+  0x4e, 0x4f, 0x50, 0x51, 0x52, 0x54, 0x55, 0x56,
+  0x57, 0x58, 0x59, 0x5d, 0x5f, 0x60, 0x61, 0x63,
+  0x65, 0x66, 0x67, 0x68, 0x69, 0x6c, 0x6e, 0x70,
+  0x71, 0x72, 0x74, 0x75, 0x78, 0x79, 0x7b, 0x7c,
+  0x7d, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06,
+  0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x14, 0x15, 0x16, 0x18, 0x19,
+  0x1a, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22,
+  0x24, 0x25, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x30, 0x31, 0x32, 0x34, 0x35, 0x36, 0x38,
+  0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x41, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4d,
+  0x4e, 0x50, 0x51, 0x52, 0x54, 0x55, 0x56, 0x57,
+  0x58, 0x59, 0x5a, 0x5d, 0x5f, 0x61, 0x62, 0x63,
+  0x64, 0x65, 0x66, 0x69, 0x6a, 0x6c, 0x6d, 0x70,
+  0x71, 0x72,
+  /* 0x9a */
+  0x00, 0x01, 0x02, 0x03, 0x06, 0x08, 0x0a, 0x0c,
+  0x0f, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x25, 0x26, 0x27, 0x28,
+  0x29, 0x2a, 0x2b, 0x2e, 0x2f, 0x31, 0x32, 0x33,
+  0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3d,
+  0x3e, 0x3f, 0x40, 0x42, 0x43, 0x44, 0x45, 0x46,
+  0x47, 0x4a, 0x4b, 0x4d, 0x4e, 0x4f, 0x51, 0x52,
+  0x53, 0x54, 0x55, 0x56, 0x57, 0x5a, 0x5c, 0x5e,
+  0x5f, 0x60, 0x61, 0x62, 0x63, 0x66, 0x67, 0x68,
+  0x69, 0x6a, 0x6b, 0x6d, 0x6e, 0x6f, 0x70, 0x71,
+  0x72, 0x00, 0x02, 0x03, 0x05, 0x07, 0x08, 0x09,
+  0x0a, 0x0b, 0x0c, 0x0f, 0x10, 0x12, 0x13, 0x14,
+  0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1f, 0x21,
+  0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a,
+  0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32,
+  0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a,
+  0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42,
+  0x43, 0x44, 0x47, 0x48, 0x4a, 0x4b, 0x4e, 0x4f,
+  0x50, 0x51, 0x52, 0x53, 0x57, 0x59, 0x5b, 0x5c,
+  0x5d, 0x5e, 0x60, 0x63, 0x66, 0x67, 0x68, 0x6a,
+  0x6b, 0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x73, 0x74,
+  0x77, 0x78,
+  /* 0x9b */
+  0x00, 0x01, 0x02, 0x06, 0x07, 0x09, 0x0a, 0x0b,
+  0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x16,
+  0x17, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20,
+  0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
+  0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30,
+  0x31, 0x32, 0x33, 0x34, 0x36, 0x37, 0x38, 0x39,
+  0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41,
+  0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49,
+  0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51,
+  0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x5a, 0x5b,
+  0x5d, 0x5e, 0x5f, 0x61, 0x63, 0x64, 0x65, 0x66,
+  0x67, 0x00, 0x01, 0x04, 0x05, 0x06, 0x07, 0x08,
+  0x09, 0x0b, 0x0c, 0x0d, 0x0f, 0x10, 0x11, 0x13,
+  0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b,
+  0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23,
+  0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b,
+  0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33,
+  0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c,
+  0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54,
+  0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c,
+  0x5d, 0x60,
+  /* 0x9c */
+  0x00, 0x02, 0x03, 0x06, 0x08, 0x09, 0x0a, 0x0b,
+  0x0c, 0x0f, 0x10, 0x11, 0x13, 0x14, 0x15, 0x16,
+  0x17, 0x18, 0x1b, 0x1c, 0x1e, 0x1f, 0x20, 0x21,
+  0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29,
+  0x2a, 0x2b, 0x2c, 0x2e, 0x2f, 0x30, 0x31, 0x32,
+  0x33, 0x34, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x4a, 0x4b, 0x4c,
+  0x4d, 0x4e, 0x4f, 0x50, 0x52, 0x53, 0x54, 0x56,
+  0x57, 0x58, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
+  0x60, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69,
+  0x6a, 0x00, 0x01, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x20, 0x21,
+  0x23, 0x24, 0x25, 0x27, 0x28, 0x29, 0x2a, 0x2b,
+  0x2c, 0x2d, 0x30, 0x31, 0x32, 0x34, 0x35, 0x36,
+  0x37, 0x38, 0x39, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+  0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
+  0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4f, 0x50,
+  0x51, 0x52, 0x53, 0x54, 0x55, 0x57, 0x58, 0x59,
+  0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61,
+  0x62, 0x63,
+  /* 0x9d */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0f, 0x10,
+  0x11, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19,
+  0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21,
+  0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29,
+  0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31,
+  0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39,
+  0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x40, 0x41, 0x42,
+  0x43, 0x44, 0x45, 0x48, 0x49, 0x4b, 0x4c, 0x4d,
+  0x4f, 0x51, 0x52, 0x53, 0x54, 0x58, 0x59, 0x5a,
+  0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61, 0x63,
+  0x64, 0x00, 0x02, 0x03, 0x04, 0x06, 0x07, 0x08,
+  0x09, 0x0a, 0x0b, 0x0c, 0x0e, 0x0f, 0x10, 0x11,
+  0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x1b,
+  0x1c, 0x1e, 0x1f, 0x20, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x2b, 0x2d, 0x2f, 0x30, 0x31,
+  0x32, 0x33, 0x34, 0x37, 0x38, 0x3c, 0x40, 0x41,
+  0x42, 0x43, 0x47, 0x4b, 0x4c, 0x4d, 0x50, 0x53,
+  0x54, 0x56, 0x57, 0x58, 0x5a, 0x5b, 0x5c, 0x5d,
+  0x5e, 0x5f, 0x60, 0x63, 0x67, 0x68, 0x69, 0x6a,
+  0x6b, 0x6c, 0x6f, 0x70, 0x72, 0x73, 0x74, 0x76,
+  0x77, 0x79, 0x7a, 0x7b, 0x7c, 0x7f, 0x81, 0x83,
+  0x84, 0x85,
+  /* 0x9e */
+  0x00, 0x03, 0x04, 0x05, 0x07, 0x08, 0x09, 0x0b,
+  0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x14,
+  0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c,
+  0x1d, 0x20, 0x21, 0x24, 0x29, 0x2a, 0x2b, 0x2c,
+  0x2d, 0x35, 0x37, 0x39, 0x3c, 0x3d, 0x3f, 0x40,
+  0x41, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49,
+  0x4c, 0x4e, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55,
+  0x59, 0x5b, 0x5c, 0x5d, 0x5f, 0x62, 0x63, 0x64,
+  0x65, 0x6c, 0x6d, 0x6e, 0x73, 0x74, 0x75, 0x77,
+  0x78, 0x79, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f, 0x80,
+  0x81, 0x84, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c,
+  0x8d, 0x00, 0x01, 0x03, 0x04, 0x05, 0x09, 0x0b,
+  0x0c, 0x10, 0x12, 0x14, 0x16, 0x17, 0x18, 0x19,
+  0x1c, 0x1d, 0x1f, 0x20, 0x21, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2c, 0x30, 0x31, 0x32,
+  0x33, 0x34, 0x35, 0x38, 0x39, 0x3b, 0x3c, 0x3d,
+  0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45,
+  0x47, 0x48, 0x4a, 0x4c, 0x4d, 0x4e, 0x4f, 0x50,
+  0x51, 0x54, 0x55, 0x57, 0x58, 0x59, 0x5b, 0x5c,
+  0x5d, 0x5e, 0x5f, 0x60, 0x61, 0x64, 0x66, 0x68,
+  0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x70, 0x71, 0x73,
+  0x74, 0x75, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c,
+  0x7d, 0x80,
+  /* 0x9f */
+  0x00, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x0a,
+  0x0b, 0x0d, 0x0e, 0x0f, 0x13, 0x14, 0x15, 0x16,
+  0x17, 0x1a, 0x1c, 0x1e, 0x1f, 0x20, 0x21, 0x22,
+  0x23, 0x26, 0x27, 0x29, 0x2a, 0x2b, 0x2d, 0x2e,
+  0x2f, 0x30, 0x31, 0x32, 0x33, 0x36, 0x37, 0x3a,
+  0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x42, 0x43, 0x45,
+  0x46, 0x47, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e,
+  0x4f, 0x52, 0x53, 0x54, 0x56, 0x57, 0x58, 0x59,
+  0x5a, 0x5b, 0x5e, 0x5f, 0x61, 0x62, 0x63, 0x65,
+  0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6e, 0x70,
+  0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x7a, 0x7b,
+  0x7d, 0x00, 0x01, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0c, 0x0e, 0x10, 0x12, 0x13, 0x14,
+  0x15, 0x18, 0x19, 0x1b, 0x1c, 0x1d, 0x1f, 0x20,
+  0x21, 0x22, 0x23, 0x25, 0x28, 0x2a, 0x33, 0x34,
+  0x35, 0x37, 0x38, 0x39, 0x3b, 0x3c, 0x3d, 0x3e,
+  0x3f, 0x40, 0x41, 0x43, 0x44, 0x46, 0x47, 0x48,
+  0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x50, 0x51, 0x53,
+  0x54, 0x55, 0x59, 0x5a, 0x5b, 0x5c, 0x60, 0x65,
+  0x66, 0x67, 0x69, 0x6c, 0x6d, 0x6f, 0x73, 0x75,
+  0x76, 0x77, 0x78, 0x79, 0x7c, 0x81, 0x82, 0x83,
+  0x84, 0x85, 0x88, 0x89, 0x8b, 0x8c, 0x8d, 0x8f,
+  0x90, 0x91,
+  /* 0xa0 */
+  0x00, 0x01, 0x02, 0x03, 0x06, 0x0a, 0x0b, 0x0c,
+  0x0d, 0x0e, 0x0f, 0x12, 0x13, 0x15, 0x17, 0x19,
+  0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x21, 0x22,
+  0x23, 0x24, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b,
+  0x2d, 0x2e, 0x2f, 0x31, 0x32, 0x33, 0x35, 0x36,
+  0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e,
+  0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46,
+  0x47, 0x4a, 0x4b, 0x4d, 0x4e, 0x4f, 0x51, 0x53,
+  0x54, 0x55, 0x56, 0x57, 0x5a, 0x5c, 0x5f, 0x60,
+  0x61, 0x62, 0x63, 0x66, 0x67, 0x69, 0x6a, 0x6b,
+  0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73, 0x76,
+  0x78, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07,
+  0x08, 0x09, 0x0b, 0x0c, 0x0d, 0x0f, 0x10, 0x11,
+  0x12, 0x13, 0x14, 0x15, 0x18, 0x19, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x23, 0x24, 0x25, 0x26,
+  0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e,
+  0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36,
+  0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x40,
+  0x41, 0x43, 0x44, 0x45, 0x47, 0x49, 0x4a, 0x4b,
+  0x4c, 0x4d, 0x50, 0x52, 0x56, 0x57, 0x58, 0x5c,
+  0x5d, 0x5e, 0x5f, 0x60, 0x61, 0x63, 0x64, 0x65,
+  0x66, 0x67, 0x68, 0x69, 0x6a, 0x6c, 0x6e, 0x70,
+  0x71, 0x72,
+};
+
+static int
+uhc_1_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 >= 0x81 && c1 <= 0xa0)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if ((c2 >= 0x41 && c2 < 0x5b) || (c2 >= 0x61 && c2 < 0x7b) || (c2 >= 0x81 && c2 < 0xff)) {
+        unsigned int row = c1 - 0x81;
+        unsigned int col = c2 - (c2 >= 0x81 ? 0x4d : c2 >= 0x61 ? 0x47 : 0x41);
+        unsigned int i = 178 * row + col;
+        if (i < 5696) {
+          *pwc = (ucs4_t) (uhc_1_2uni_main_page81[2*row+(col>=89?1:0)] + uhc_1_2uni_page81[i]);
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned short uhc_1_2charset_main[45] = {
+  0x8141, 0x81cd, 0x829b, 0x8363, 0x83e9, 0x84b7, 0x8585, 0x8647,
+  0x86d3, 0x87a1, 0x8869, 0x88ef, 0x89bd, 0x8a8b, 0x8b4d, 0x8bd9,
+  0x8ca7, 0x8d6f, 0x8df5, 0x8ec3, 0x8f91, 0x9053, 0x90df, 0x91ad,
+  0x9275, 0x92fb, 0x93c9, 0x9497, 0x9559, 0x95e5, 0x96b3, 0x9781,
+  0x9843, 0x98cf, 0x999d, 0x9a65, 0x9aeb, 0x9bb9, 0x9c87, 0x9d49,
+  0x9dd5, 0x9ea3, 0x9f6b, 0x9ff1, 0xa0bf,
+};
+static const unsigned char uhc_1_2charset[5696] = {
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x36, 0x37, 0x38, 0x39, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53,
+  0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b,
+  0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61, 0x62, 0x63,
+  0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b,
+  0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73,
+  0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b,
+  0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x81, 0x82, 0x83,
+  0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79,
+  0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x81,
+  0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89,
+  0x8a, 0x8b, 0x8c, 0x8d, 0x94, 0x95, 0x96, 0x97,
+  0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
+  0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
+  0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xb4, 0xb5,
+  0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd,
+  0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5,
+  0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+  0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
+  0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
+  0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
+  0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
+  0x60, 0x61, 0x62, 0x63, 0xa6, 0xa7, 0xa8, 0xa9,
+  0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1,
+  0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9,
+  0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, 0xc6, 0xc7,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d,
+  0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45,
+  0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d,
+  0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55,
+  0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d,
+  0x5e, 0x5f, 0x60, 0x61, 0x62, 0x63, 0x64, 0x65,
+  0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d,
+  0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75,
+  0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d,
+  0x7e, 0x7f, 0x80, 0x81, 0x82, 0x83, 0x84, 0x85,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x58, 0x59,
+  0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61,
+  0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69,
+  0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71,
+  0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
+  0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
+  0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
+  0x90, 0x91, 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d,
+  0x9e, 0x9f, 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5,
+  0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad,
+  0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5,
+  0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd,
+  0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5,
+  0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+  0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
+  0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91,
+  0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99,
+  0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, 0xa0, 0xa1,
+  0xa2, 0xa3, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xca, 0xcb, 0xcc, 0xcd,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+  0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
+  0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
+  0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
+  0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
+  0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
+  0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
+  0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
+  0x78, 0x79, 0xbc, 0xbd, 0xbe, 0xbf, 0xc0, 0xc1,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53,
+  0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b,
+  0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61, 0x62, 0x63,
+  0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b,
+  0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73,
+  0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b,
+  0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x81, 0x82, 0x83,
+  0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x6e, 0x6f, 0x70, 0x71,
+  0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79,
+  0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x81,
+  0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x8e, 0x8f,
+  0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
+  0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
+  0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
+  0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5,
+  0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd,
+  0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5,
+  0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+  0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
+  0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
+  0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
+  0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0xa0, 0xa1,
+  0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9,
+  0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1,
+  0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d,
+  0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45,
+  0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d,
+  0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55,
+  0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d,
+  0x5e, 0x5f, 0x60, 0x61, 0x62, 0x63, 0x64, 0x65,
+  0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d,
+  0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75,
+  0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d,
+  0x7e, 0x7f, 0x80, 0x81, 0x82, 0x83, 0x84, 0x85,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59,
+  0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61,
+  0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69,
+  0x6a, 0x6b, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
+  0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
+  0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
+  0x88, 0x89, 0x8a, 0x8b, 0x92, 0x93, 0x94, 0x95,
+  0x96, 0x97, 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d,
+  0x9e, 0x9f, 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5,
+  0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad,
+  0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5,
+  0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd,
+  0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5,
+  0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+  0x40, 0x41, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89,
+  0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91,
+  0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99,
+  0x9a, 0x9b, 0x9c, 0x9d, 0xa4, 0xa5, 0xa6, 0xa7,
+  0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xc4, 0xc5,
+  0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+  0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
+  0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
+  0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
+  0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
+  0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
+  0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
+  0x70, 0x71, 0x72, 0x73, 0xb6, 0xb7, 0xb8, 0xb9,
+  0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, 0xc0, 0xc1,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53,
+  0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b,
+  0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61, 0x62, 0x63,
+  0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b,
+  0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73,
+  0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b,
+  0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x81, 0x82, 0x83,
+  0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x68, 0x69,
+  0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71,
+  0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79,
+  0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x81,
+  0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
+  0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
+  0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
+  0xa0, 0xa1, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad,
+  0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5,
+  0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd,
+  0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5,
+  0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+  0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
+  0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
+  0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
+  0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, 0xa0, 0xa1,
+  0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9,
+  0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1,
+  0xb2, 0xb3, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d,
+  0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45,
+  0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d,
+  0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55,
+  0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d,
+  0x5e, 0x5f, 0x60, 0x61, 0x62, 0x63, 0x64, 0x65,
+  0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d,
+  0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75,
+  0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d,
+  0x7e, 0x7f, 0x80, 0x81, 0x82, 0x83, 0x84, 0x85,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51,
+  0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59,
+  0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61,
+  0x62, 0x63, 0x64, 0x65, 0x6c, 0x6d, 0x6e, 0x6f,
+  0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
+  0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
+  0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x8c, 0x8d,
+  0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94, 0x95,
+  0x96, 0x97, 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d,
+  0x9e, 0x9f, 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5,
+  0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad,
+  0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5,
+  0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd,
+  0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5,
+  0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3a, 0x3b, 0x7e, 0x7f, 0x80, 0x81,
+  0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89,
+  0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91,
+  0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x9e, 0x9f,
+  0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
+  0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
+  0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5,
+  0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+  0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
+  0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
+  0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
+  0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
+  0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
+  0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0xb0, 0xb1,
+  0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9,
+  0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, 0xc0, 0xc1,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33,
+  0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53,
+  0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b,
+  0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61, 0x62, 0x63,
+  0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b,
+  0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73,
+  0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b,
+  0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x81, 0x82, 0x83,
+  0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69,
+  0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71,
+  0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79,
+  0x7a, 0x7b, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
+  0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
+  0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
+  0x98, 0x99, 0x9a, 0x9b, 0xa2, 0xa3, 0xa4, 0xa5,
+  0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad,
+  0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5,
+  0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd,
+  0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5,
+  0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+  0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
+  0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
+  0x50, 0x51, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99,
+  0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, 0xa0, 0xa1,
+  0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9,
+  0xaa, 0xab, 0xac, 0xad, 0xb4, 0xb5, 0xb6, 0xb7,
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x0c, 0x0d,
+  0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d,
+  0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45,
+  0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d,
+  0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55,
+  0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d,
+  0x5e, 0x5f, 0x60, 0x61, 0x62, 0x63, 0x64, 0x65,
+  0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d,
+  0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75,
+  0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d,
+  0x7e, 0x7f, 0x80, 0x81, 0x82, 0x83, 0x84, 0x85,
+  0x00, 0x01, 0x02, 0x03, 0x46, 0x47, 0x48, 0x49,
+  0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51,
+  0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59,
+  0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x66, 0x67,
+  0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
+  0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
+  0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
+  0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d,
+  0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94, 0x95,
+  0x96, 0x97, 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d,
+  0x9e, 0x9f, 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5,
+  0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad,
+  0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5,
+  0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd,
+  0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5,
+  0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x78, 0x79,
+  0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x81,
+  0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89,
+  0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91,
+  0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
+  0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
+  0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
+  0xb0, 0xb1, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd,
+  0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5,
+  0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+  0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
+  0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
+  0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
+  0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
+  0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
+  0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1,
+  0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9,
+  0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, 0xc0, 0xc1,
+  0x00, 0x01, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d,
+  0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x28, 0x29, 0x2a, 0x2b,
+  0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33,
+  0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53,
+  0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b,
+  0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61, 0x62, 0x63,
+  0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b,
+  0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73,
+  0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b,
+  0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x81, 0x82, 0x83,
+  0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61,
+  0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69,
+  0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71,
+  0x72, 0x73, 0x74, 0x75, 0x7c, 0x7d, 0x7e, 0x7f,
+  0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
+  0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
+  0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x9c, 0x9d,
+  0x9e, 0x9f, 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5,
+  0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad,
+  0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5,
+  0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd,
+  0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5,
+  0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+  0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
+  0x48, 0x49, 0x4a, 0x4b, 0x8e, 0x8f, 0x90, 0x91,
+  0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99,
+  0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, 0xa0, 0xa1,
+  0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xae, 0xaf,
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+  0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
+  0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
+  0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
+  0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
+  0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
+  0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
+  0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
+  0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0xc0, 0xc1,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x36, 0x37, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53,
+  0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b,
+  0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61, 0x62, 0x63,
+  0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b,
+  0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73,
+  0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b,
+  0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x81, 0x82, 0x83,
+  0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79,
+  0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x81,
+  0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89,
+  0x8a, 0x8b, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
+  0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
+  0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
+  0xa8, 0xa9, 0xaa, 0xab, 0xb2, 0xb3, 0xb4, 0xb5,
+  0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd,
+  0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5,
+  0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+  0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
+  0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
+  0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
+  0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
+  0x60, 0x61, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9,
+  0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1,
+  0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9,
+  0xba, 0xbb, 0xbc, 0xbd, 0xc4, 0xc5, 0xc6, 0xc7,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d,
+  0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45,
+  0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d,
+  0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55,
+  0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d,
+  0x5e, 0x5f, 0x60, 0x61, 0x62, 0x63, 0x64, 0x65,
+  0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d,
+  0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75,
+  0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d,
+  0x7e, 0x7f, 0x80, 0x81, 0x82, 0x83, 0x84, 0x85,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x56, 0x57, 0x58, 0x59,
+  0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61,
+  0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69,
+  0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, 0x76, 0x77,
+  0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
+  0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
+  0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
+  0x96, 0x97, 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d,
+  0x9e, 0x9f, 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5,
+  0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad,
+  0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5,
+  0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd,
+  0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5,
+  0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+  0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x88, 0x89,
+  0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91,
+  0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99,
+  0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, 0xa0, 0xa1,
+  0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+  0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
+  0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
+  0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
+  0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
+  0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
+  0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
+  0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
+  0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, 0xc0, 0xc1,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53,
+  0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b,
+  0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61, 0x62, 0x63,
+  0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b,
+  0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73,
+  0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b,
+  0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x81, 0x82, 0x83,
+  0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71,
+  0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79,
+  0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x81,
+  0x82, 0x83, 0x84, 0x85, 0x8c, 0x8d, 0x8e, 0x8f,
+  0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
+  0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
+  0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xac, 0xad,
+  0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5,
+  0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd,
+  0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5,
+  0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+  0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
+  0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
+  0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
+  0x58, 0x59, 0x5a, 0x5b, 0x9e, 0x9f, 0xa0, 0xa1,
+  0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9,
+  0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1,
+  0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d,
+  0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45,
+  0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d,
+  0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55,
+  0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d,
+  0x5e, 0x5f, 0x60, 0x61, 0x62, 0x63, 0x64, 0x65,
+  0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d,
+  0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75,
+  0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d,
+  0x7e, 0x7f, 0x80, 0x81, 0x82, 0x83, 0x84, 0x85,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x50, 0x51,
+  0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59,
+  0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61,
+  0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69,
+  0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
+  0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
+  0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
+  0x88, 0x89, 0x90, 0x91, 0x92, 0x93, 0x94, 0x95,
+  0x96, 0x97, 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d,
+  0x9e, 0x9f, 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5,
+  0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad,
+  0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5,
+  0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd,
+  0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5,
+  0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+};
+
+static const Summary16 uhc_1_uni2indx_pageac[459] = {
+  /* 0xac00 */
+  {    0, 0xf86c }, {    9, 0xc100 }, {   12, 0x4fee }, {   23, 0xecfc },
+  {   34, 0xd7fe }, {   47, 0xeeef }, {   60, 0xffff }, {   76, 0xfa6c },
+  {   86, 0xe184 }, {   92, 0x4fee }, {  103, 0x68fc }, {  112, 0xc4fe },
+  {  122, 0xeeed }, {  134, 0xff5f }, {  148, 0x6a6c }, {  156, 0xcf94 },
+  /* 0xad00 */
+  {  165, 0x4fae }, {  175, 0xeefd }, {  188, 0xcdfe }, {  200, 0xeecf },
+  {  212, 0xfd4f }, {  224, 0xfeee }, {  237, 0xcff5 }, {  249, 0x4786 },
+  {  256, 0xecf9 }, {  267, 0xcffe }, {  280, 0xffef }, {  295, 0xff7f },
+  {  310, 0xfeec }, {  322, 0xeff4 }, {  334, 0xffee }, {  348, 0x6cff },
+  /* 0xae00 */
+  {  360, 0xd4fc }, {  370, 0xffef }, {  385, 0xffff }, {  401, 0xfa6c },
+  {  411, 0x8b94 }, {  418, 0x4fae }, {  428, 0xecdc }, {  438, 0xc4fe },
+  {  448, 0xefcf }, {  461, 0xffff }, {  477, 0xffff }, {  493, 0x8fff },
+  {  506, 0x4fee }, {  517, 0xecfc }, {  528, 0xd6ff }, {  541, 0xeeef },
+  /* 0xaf00 */
+  {  554, 0xde7f }, {  567, 0xfffe }, {  582, 0xcfff }, {  596, 0x4fea },
+  {  606, 0xfcf1 }, {  617, 0xcffe }, {  630, 0xffcf }, {  644, 0xfdff },
+  {  659, 0xfeee }, {  672, 0xefdc }, {  684, 0xffff }, {  700, 0xecff },
+  {  713, 0x947e }, {  722, 0xefef }, {  736, 0xfcff }, {  750, 0xfeec },
+  /* 0xb000 */
+  {  762, 0xefec }, {  774, 0xcfee }, {  786, 0xfeff }, {  801, 0xffff },
+  {  817, 0xaacf }, {  827, 0xdd47 }, {  837, 0xffff }, {  853, 0xcfff },
+  {  867, 0x4fee }, {  878, 0x68fd }, {  888, 0x04f8 }, {  894, 0xeec5 },
+  {  904, 0xfc4f }, {  915, 0xfeec }, {  927, 0xffde }, {  941, 0xffff },
+  /* 0xb100 */
+  {  957, 0xe4ff }, {  969, 0xc4f2 }, {  977, 0xeec7 }, {  988, 0xfc4f },
+  {  999, 0xfeec }, { 1011, 0xeecc }, { 1021, 0xfffe }, { 1036, 0xecff },
+  { 1049, 0xd4fa }, { 1059, 0xeee3 }, { 1070, 0xfeff }, { 1085, 0xffff },
+  { 1101, 0xefff }, { 1116, 0x4fee }, { 1127, 0xecff }, { 1140, 0xd5fe },
+  /* 0xb200 */
+  { 1152, 0xe6cf }, { 1163, 0xfd4f }, { 1175, 0xfffe }, { 1190, 0xefef },
+  { 1204, 0xffff }, { 1220, 0xeeff }, { 1234, 0xfcfe }, { 1247, 0xefcf },
+  { 1260, 0xfdcf }, { 1273, 0xf8ec }, { 1283, 0xeb94 }, { 1292, 0xffee },
+  { 1306, 0xecff }, { 1319, 0xd4fa }, { 1329, 0x068b }, { 1335, 0x7047 },
+  /* 0xb300 */
+  { 1342, 0xfeec }, { 1354, 0xefc4 }, { 1364, 0xffff }, { 1380, 0xffff },
+  { 1396, 0xffff }, { 1412, 0x268f }, { 1420, 0xb54f }, { 1430, 0xfeec },
+  { 1442, 0xefc4 }, { 1452, 0xffee }, { 1466, 0xeefc }, { 1478, 0xffff },
+  { 1494, 0xa6cf }, { 1504, 0xd54e }, { 1513, 0xfeee }, { 1526, 0xefff },
+  /* 0xb400 */
+  { 1541, 0xffff }, { 1557, 0xeefe }, { 1570, 0xf4fe }, { 1582, 0xffef },
+  { 1597, 0xffff }, { 1613, 0xfeec }, { 1625, 0xefd4 }, { 1636, 0xffff },
+  { 1652, 0xfefe }, { 1666, 0xdfff }, { 1681, 0xeeef }, { 1694, 0xfd5f },
+  { 1707, 0xfeee }, { 1720, 0xcfde }, { 1732, 0x4fa6 }, { 1741, 0xfefd },
+  /* 0xb500 */
+  { 1755, 0xffff }, { 1771, 0xe6cf }, { 1782, 0xf84f }, { 1792, 0xfeec },
+  { 1804, 0xc7c4 }, { 1812, 0x4fee }, { 1823, 0xfffc }, { 1837, 0xffff },
+  { 1853, 0xffff }, { 1869, 0xffff }, { 1885, 0xf2ec }, { 1895, 0xc7c4 },
+  { 1903, 0x4fee }, { 1914, 0xfefc }, { 1927, 0xefff }, { 1942, 0xffff },
+  /* 0xb600 */
+  { 1958, 0xffff }, { 1974, 0xfeec }, { 1986, 0xefdf }, { 2000, 0xffef },
+  { 2015, 0xfeff }, { 2030, 0xffff }, { 2046, 0xfeef }, { 2060, 0xffff },
+  { 2076, 0xffff }, { 2092, 0xcfff }, { 2106, 0xe7ee }, { 2118, 0xfffd },
+  { 2133, 0xffff }, { 2149, 0xffef }, { 2164, 0xffff }, { 2180, 0xfeee },
+  /* 0xb700 */
+  { 2193, 0xffdc }, { 2206, 0xffff }, { 2222, 0x6cff }, { 2234, 0xf4fe },
+  { 2246, 0xeeef }, { 2259, 0xffcf }, { 2273, 0xfeee }, { 2286, 0xcfd4 },
+  { 2296, 0x4fee }, { 2307, 0xec38 }, { 2315, 0xc4fe }, { 2325, 0xfecf },
+  { 2338, 0xfd7f }, { 2352, 0xffff }, { 2368, 0xcfff }, { 2382, 0x4fee },
+  /* 0xb800 */
+  { 2393, 0xec7c }, { 2403, 0xd4fe }, { 2414, 0xeecf }, { 2426, 0xfc4f },
+  { 2437, 0xffee }, { 2451, 0xcff5 }, { 2463, 0x4fee }, { 2474, 0xeefd },
+  { 2487, 0xdfff }, { 2502, 0xffff }, { 2518, 0xfeff }, { 2533, 0xfeee },
+  { 2546, 0xefd4 }, { 2557, 0x5fee }, { 2569, 0xecfd }, { 2581, 0xd4fe },
+  /* 0xb900 */
+  { 2592, 0xffef }, { 2607, 0xfeff }, { 2622, 0xfffe }, { 2637, 0xcfff },
+  { 2651, 0x6fee }, { 2663, 0xecfd }, { 2675, 0xd4fe }, { 2686, 0xeecf },
+  { 2698, 0x994f }, { 2707, 0xffff }, { 2723, 0xcfff }, { 2737, 0x4fee },
+  { 2748, 0x2cfd }, { 2758, 0x94f8 }, { 2766, 0xeec5 }, { 2776, 0xf84f },
+  /* 0xba00 */
+  { 2786, 0xfefc }, { 2799, 0xffdf }, { 2814, 0xffff }, { 2830, 0xecff },
+  { 2843, 0x94fa }, { 2852, 0xeec7 }, { 2863, 0xfc4f }, { 2874, 0xfeec },
+  { 2886, 0xef47 }, { 2897, 0xffff }, { 2913, 0xe4ff }, { 2925, 0xd4fa },
+  { 2935, 0xfeef }, { 2949, 0xfcff }, { 2963, 0xffff }, { 2979, 0xefff },
+  /* 0xbb00 */
+  { 2994, 0x5fee }, { 3006, 0xeefd }, { 3019, 0xf5fe }, { 3032, 0x868f },
+  { 3040, 0x5d4f }, { 3050, 0xfeee }, { 3063, 0xeff5 }, { 3076, 0xffff },
+  { 3092, 0xeeff }, { 3106, 0xfffe }, { 3121, 0xeeef }, { 3134, 0xff6f },
+  { 3148, 0xfeee }, { 3161, 0xfff6 }, { 3175, 0xffff }, { 3191, 0x6cff },
+  /* 0xbc00 */
+  { 3203, 0x44fa }, { 3211, 0x060d }, { 3216, 0xdd4f }, { 3227, 0xfeec },
+  { 3239, 0xcdc4 }, { 3247, 0xdffe }, { 3261, 0xffff }, { 3277, 0xffff },
+  { 3293, 0xa6cf }, { 3303, 0xf94f }, { 3314, 0xfe6c }, { 3325, 0xcfc4 },
+  { 3334, 0x5fee }, { 3346, 0xeedc }, { 3357, 0xffff }, { 3373, 0xee8f },
+  /* 0xbd00 */
+  { 3384, 0xfd4f }, { 3396, 0xffee }, { 3410, 0xefef }, { 3424, 0xffff },
+  { 3440, 0xecfe }, { 3452, 0xfcfe }, { 3465, 0xfeef }, { 3479, 0xffff },
+  { 3495, 0xf86c }, { 3504, 0xe9d4 }, { 3513, 0xffef }, { 3528, 0xfefe },
+  { 3542, 0xffff }, { 3558, 0xeecf }, { 3570, 0xfdff }, { 3585, 0xfeee },
+  /* 0xbe00 */
+  { 3598, 0xcfd6 }, { 3609, 0x4fee }, { 3620, 0xffff }, { 3636, 0xffff },
+  { 3652, 0xaecf }, { 3663, 0xf14f }, { 3673, 0xfaec }, { 3684, 0xc7c4 },
+  { 3692, 0x4fee }, { 3703, 0xfcfc }, { 3715, 0xfeff }, { 3730, 0xffff },
+  { 3746, 0xffff }, { 3762, 0xfe6c }, { 3773, 0xefc6 }, { 3784, 0xffff },
+  /* 0xbf00 */
+  { 3800, 0xfcfd }, { 3813, 0xc4ff }, { 3824, 0xffff }, { 3840, 0xffff },
+  { 3856, 0xfeec }, { 3868, 0xffdc }, { 3881, 0xffff }, { 3897, 0xffff },
+  { 3913, 0xffff }, { 3929, 0xffef }, { 3944, 0xffff }, { 3960, 0xfffe },
+  { 3975, 0xcfdf }, { 3988, 0x6fee }, { 4000, 0xfffd }, { 4015, 0xffff },
+  /* 0xc000 */
+  { 4031, 0xffff }, { 4047, 0xffff }, { 4063, 0xffff }, { 4079, 0xefff },
+  { 4094, 0xffff }, { 4110, 0xeefd }, { 4123, 0xfcfe }, { 4136, 0xffff },
+  { 4152, 0xffff }, { 4168, 0xfeec }, { 4180, 0x4fd4 }, { 4189, 0x4f86 },
+  { 4197, 0xecdc }, { 4207, 0xc4fe }, { 4217, 0xeecf }, { 4229, 0xfd4f },
+  /* 0xc100 */
+  { 4241, 0xfeee }, { 4254, 0x0fde }, { 4264, 0x4f26 }, { 4272, 0xecbc },
+  { 4282, 0xc4fe }, { 4292, 0xeecf }, { 4304, 0xfc4f }, { 4315, 0xfeee },
+  { 4328, 0x8fdf }, { 4340, 0x4fae }, { 4350, 0xecdd }, { 4361, 0xdffe },
+  { 4375, 0xeeef }, { 4388, 0xfe6f }, { 4401, 0xfeee }, { 4414, 0xcff4 },
+  /* 0xc200 */
+  { 4425, 0x4fee }, { 4436, 0x6cfd }, { 4447, 0x54fe }, { 4457, 0xffe9 },
+  { 4470, 0xfeff }, { 4485, 0xfeec }, { 4497, 0xcfde }, { 4509, 0x4fee },
+  { 4520, 0xfcfd }, { 4533, 0xd6fe }, { 4545, 0xcecf }, { 4556, 0xfd4f },
+  { 4568, 0xffff }, { 4584, 0xcfff }, { 4598, 0x47e6 }, { 4607, 0xe4bd },
+  /* 0xc300 */
+  { 4617, 0xccfe }, { 4628, 0xeec7 }, { 4639, 0xfccf }, { 4651, 0xffff },
+  { 4667, 0xffdf }, { 4682, 0xffff }, { 4698, 0xecff }, { 4711, 0xccfa },
+  { 4721, 0xeeef }, { 4734, 0xffff }, { 4750, 0xffff }, { 4766, 0xffff },
+  { 4782, 0xfffe }, { 4797, 0x6cff }, { 4809, 0xdcfa }, { 4820, 0xfecf },
+  /* 0xc400 */
+  { 4833, 0xfeff }, { 4848, 0xfffe }, { 4863, 0xefef }, { 4877, 0xcfee },
+  { 4889, 0xfeff }, { 4904, 0xffff }, { 4920, 0xeecf }, { 4932, 0xfdcf },
+  { 4945, 0xfffe }, { 4960, 0xefef }, { 4974, 0xffff }, { 4990, 0xeeff },
+  { 5004, 0xffff }, { 5020, 0xffff }, { 5036, 0xfdff }, { 5051, 0x7aec },
+  /* 0xc500 */
+  { 5061, 0xeffc }, { 5074, 0xefee }, { 5087, 0xecff }, { 5100, 0xd4fe },
+  { 5111, 0x88cf }, { 5119, 0x9c47 }, { 5127, 0xfeec }, { 5139, 0xcfc4 },
+  { 5148, 0x4f6e }, { 5158, 0xee5d }, { 5169, 0xfdfe }, { 5183, 0x84cf },
+  { 5191, 0xa80f }, { 5198, 0xfeec }, { 5210, 0x8fd4 }, { 5219, 0x0f2e },
+  /* 0xc600 */
+  { 5227, 0xee1c }, { 5236, 0xe4fe }, { 5247, 0x8ecf }, { 5257, 0xf546 },
+  { 5266, 0xfeec }, { 5278, 0xcfc4 }, { 5287, 0x6ffe }, { 5300, 0xecfd },
+  { 5312, 0xd4fe }, { 5323, 0xeecf }, { 5335, 0xfd4f }, { 5347, 0xf8ec },
+  { 5357, 0xcfd4 }, { 5367, 0xcfee }, { 5379, 0xecfc }, { 5390, 0xdcfe },
+  /* 0xc700 */
+  { 5402, 0xeecf }, { 5414, 0xfd4f }, { 5426, 0xfeec }, { 5438, 0xcf54 },
+  { 5447, 0x4bee }, { 5457, 0xee01 }, { 5464, 0xf6fe }, { 5477, 0x8ecf },
+  { 5487, 0xb847 }, { 5495, 0xfa2c }, { 5504, 0xcf84 }, { 5512, 0x4fee },
+  { 5523, 0xacfc }, { 5533, 0xdefe }, { 5546, 0xeeef }, { 5559, 0xffff },
+  /* 0xc800 */
+  { 5575, 0xfaec }, { 5586, 0xcf94 }, { 5595, 0x4fee }, { 5606, 0xeefd },
+  { 5619, 0xccfe }, { 5630, 0xffef }, { 5645, 0xffff }, { 5661, 0xfaec },
+  { 5672, 0xc714 }, { 5679, 0x5fef }, { 5692, 0x001d },
+};
+
+static int
+uhc_1_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 2) {
+    if (wc >= 0xac00 && wc < 0xc8b0) {
+      const Summary16 *summary = &uhc_1_uni2indx_pageac[(wc>>4)-0xac0];
+      unsigned short used = summary->used;
+      unsigned int i = wc & 0x0f;
+      if (used & ((unsigned short) 1 << i)) {
+        unsigned short c;
+        /* Keep in `used' only the bits 0..i-1. */
+        used &= ((unsigned short) 1 << i) - 1;
+        /* Add `summary->indx' and the number of bits set in `used'. */
+        used = (used & 0x5555) + ((used & 0xaaaa) >> 1);
+        used = (used & 0x3333) + ((used & 0xcccc) >> 2);
+        used = (used & 0x0f0f) + ((used & 0xf0f0) >> 4);
+        used = (used & 0x00ff) + (used >> 8);
+        used += summary->indx;
+        c = uhc_1_2charset_main[used>>7] + uhc_1_2charset[used];
+        r[0] = (c >> 8); r[1] = (c & 0xff);
+        return 2;
+      }
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/uhc_2.h b/graf2d/win32gdk/gdk/src/iconv/uhc_2.h
new file mode 100644
index 00000000000..4aa290a943b
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/uhc_2.h
@@ -0,0 +1,1022 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * Unified Hangul Code part 2
+ */
+
+static const unsigned short uhc_2_2uni_main_pagea1[76] = {
+  0xc8a5, 0xc8d8, 0xc910, 0xc93e, 0xc971, 0xc9a5, 0xc9de, 0xca1c,
+  0xca47, 0xca7b, 0xcaa8, 0xcadd, 0xcb0b, 0xcb3a, 0xcb6d, 0xcb99,
+  0xcbc5, 0xcbf3, 0xcc25, 0xcc67, 0xcc94, 0xcccf, 0xccfe, 0xcd34,
+  0xcd61, 0xcd92, 0xcdc6, 0xcdf5, 0xce2c, 0xce5d, 0xce9a, 0xcecc,
+  0xcf02, 0xcf3b, 0xcf6d, 0xcf9e, 0xcfcc, 0xcfff, 0xd02e, 0xd064,
+  0xd095, 0xd0cc, 0xd105, 0xd132, 0xd16e, 0xd19b, 0xd1d0, 0xd1fd,
+  0xd22a, 0xd25e, 0xd28d, 0xd2c5, 0xd2fb, 0xd33e, 0xd36a, 0xd3a1,
+  0xd3d7, 0xd40d, 0xd438, 0xd467, 0xd49e, 0xd4c9, 0xd4fe, 0xd52e,
+  0xd564, 0xd59d, 0xd5ca, 0xd606, 0xd63d, 0xd677, 0xd6ab, 0xd6e2,
+  0xd715, 0xd74e, 0xd78d, 0xfffd,
+};
+static const unsigned char uhc_2_2uni_pagea1[3126] = {
+  /* 0xa1 */
+  0x00, 0x01, 0x02, 0x04, 0x05, 0x06, 0x07, 0x08,
+  0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10,
+  0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x19, 0x1a,
+  0x1b, 0x1c, 0x1d, 0x1e, 0x20, 0x21, 0x22, 0x24,
+  0x25, 0x26, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x31, 0x00, 0x02, 0x03, 0x04, 0x05, 0x06,
+  0x07, 0x0a, 0x0b, 0x0d, 0x0e, 0x0f, 0x10, 0x11,
+  0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19,
+  0x1a, 0x1b, 0x1c, 0x1e, 0x1f, 0x20, 0x21, 0x22,
+  0x23, 0x26, 0x27, 0x29, 0x2a, 0x2b, 0x2f, 0x30,
+  0x31, 0x32, 0x33, 0x36,
+  /* 0xa2 */
+  0x00, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x09,
+  0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11,
+  0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19,
+  0x1a, 0x1b, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22,
+  0x23, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b,
+  0x2c, 0x2d, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+  0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d,
+  0x0e, 0x0f, 0x10, 0x11, 0x14, 0x15, 0x17, 0x18,
+  0x19, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21,
+  0x24, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c,
+  0x2d, 0x2f, 0x30, 0x31,
+  /* 0xa3 */
+  0x00, 0x01, 0x02, 0x04, 0x05, 0x06, 0x07, 0x08,
+  0x09, 0x0a, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11,
+  0x12, 0x13, 0x14, 0x15, 0x16, 0x19, 0x1a, 0x1c,
+  0x1d, 0x1e, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x29, 0x2b, 0x2d, 0x2e, 0x2f, 0x30, 0x31,
+  0x32, 0x33, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+  0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d,
+  0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1d, 0x1e, 0x20,
+  0x21, 0x24, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2d,
+  0x2f, 0x32, 0x33, 0x36,
+  /* 0xa4 */
+  0x00, 0x01, 0x03, 0x05, 0x07, 0x08, 0x0a, 0x0b,
+  0x0c, 0x0d, 0x10, 0x14, 0x15, 0x16, 0x17, 0x18,
+  0x19, 0x1c, 0x1d, 0x1f, 0x20, 0x21, 0x23, 0x24,
+  0x25, 0x26, 0x27, 0x28, 0x29, 0x2c, 0x30, 0x31,
+  0x32, 0x33, 0x34, 0x35, 0x37, 0x38, 0x39, 0x3b,
+  0x3c, 0x3d, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+  0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0e,
+  0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16,
+  0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e,
+  0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26,
+  0x27, 0x28, 0x29, 0x2a,
+  /* 0xa5 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x07, 0x08, 0x0a,
+  0x0b, 0x0c, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13,
+  0x14, 0x17, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20,
+  0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29,
+  0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31,
+  0x32, 0x33, 0x00, 0x01, 0x03, 0x04, 0x05, 0x06,
+  0x07, 0x08, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1e, 0x1f, 0x20,
+  0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
+  0x29, 0x2a, 0x2b, 0x2c,
+  /* 0xa6 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x16, 0x17, 0x19, 0x1a,
+  0x1b, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23,
+  0x26, 0x28, 0x2a, 0x2c, 0x2d, 0x2e, 0x2f, 0x32,
+  0x33, 0x34, 0x00, 0x01, 0x02, 0x04, 0x05, 0x06,
+  0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x18,
+  0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20,
+  0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
+  0x29, 0x2a, 0x2c, 0x2d,
+  /* 0xa7 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x06, 0x07, 0x08,
+  0x0a, 0x0b, 0x0c, 0x0e, 0x0f, 0x10, 0x11, 0x12,
+  0x13, 0x14, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c,
+  0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24,
+  0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c,
+  0x2d, 0x2e, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+  0x06, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x10,
+  0x11, 0x13, 0x14, 0x15, 0x17, 0x18, 0x19, 0x1a,
+  0x1b, 0x1c, 0x1d, 0x20, 0x21, 0x22, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2b, 0x2c, 0x2d, 0x2e,
+  0x2f, 0x30, 0x31, 0x32,
+  /* 0xa8 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0d, 0x0e, 0x0f, 0x10, 0x11,
+  0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19,
+  0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21,
+  0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29,
+  0x2a, 0x2b, 0x00, 0x01, 0x02, 0x04, 0x05, 0x06,
+  0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e,
+  0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16,
+  0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b,
+  /* 0xa9 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x10,
+  0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
+  0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x20, 0x21,
+  0x23, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b,
+  0x2c, 0x2d, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+  0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d,
+  0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x1b, 0x1c, 0x1e, 0x1f, 0x20,
+  0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x2b,
+  0x2c, 0x2d, 0x30, 0x31,
+  /* 0xaa */
+  0x00, 0x01, 0x05, 0x06, 0x08, 0x0a, 0x0c, 0x0d,
+  0x0e, 0x0f, 0x10, 0x11, 0x12, 0x15, 0x1a, 0x1b,
+  0x1c, 0x1d, 0x1e, 0x21, 0x22, 0x24, 0x25, 0x26,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x31,
+  0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3c, 0x3d,
+  0x3e, 0x40, 0x00, 0x02, 0x03, 0x04, 0x05, 0x06,
+  0x07, 0x08, 0x0a, 0x0b, 0x0c, 0x0d, 0x0f, 0x10,
+  0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
+  0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20,
+  0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
+  0x29, 0x2a, 0x2b, 0x2c,
+  /* 0xab */
+  0x00, 0x01, 0x02, 0x03, 0x06, 0x07, 0x09, 0x0a,
+  0x0b, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13,
+  0x16, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x22,
+  0x23, 0x25, 0x26, 0x27, 0x29, 0x2a, 0x2b, 0x2c,
+  0x2d, 0x2e, 0x2f, 0x32, 0x34, 0x36, 0x37, 0x38,
+  0x39, 0x3a, 0x00, 0x02, 0x03, 0x04, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x16, 0x17, 0x18,
+  0x19, 0x1a, 0x1b, 0x1c, 0x1e, 0x1f, 0x20, 0x22,
+  0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a,
+  0x2b, 0x2c, 0x2d, 0x2e,
+  /* 0xac */
+  0x00, 0x01, 0x02, 0x04, 0x05, 0x06, 0x07, 0x08,
+  0x09, 0x0c, 0x0d, 0x0f, 0x10, 0x11, 0x13, 0x14,
+  0x15, 0x16, 0x17, 0x18, 0x19, 0x1c, 0x1e, 0x20,
+  0x21, 0x22, 0x23, 0x24, 0x25, 0x27, 0x28, 0x29,
+  0x2b, 0x2c, 0x2d, 0x2f, 0x30, 0x31, 0x32, 0x33,
+  0x34, 0x35, 0x00, 0x01, 0x02, 0x03, 0x04, 0x06,
+  0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e,
+  0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16,
+  0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e,
+  0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26,
+  0x27, 0x29, 0x2a, 0x2b,
+  /* 0xad */
+  0x00, 0x01, 0x02, 0x04, 0x05, 0x06, 0x07, 0x08,
+  0x09, 0x0a, 0x0d, 0x0f, 0x11, 0x12, 0x13, 0x14,
+  0x15, 0x16, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e,
+  0x2f, 0x30, 0x00, 0x01, 0x04, 0x05, 0x07, 0x08,
+  0x09, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11,
+  0x14, 0x16, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26,
+  0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e,
+  0x2f, 0x30, 0x31, 0x33,
+  /* 0xae */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
+  0x09, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11,
+  0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19,
+  0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21,
+  0x23, 0x24, 0x25, 0x27, 0x28, 0x29, 0x2b, 0x2c,
+  0x2d, 0x2e, 0x00, 0x01, 0x02, 0x05, 0x07, 0x09,
+  0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x10, 0x11, 0x12,
+  0x14, 0x15, 0x16, 0x18, 0x19, 0x1a, 0x1b, 0x1c,
+  0x1d, 0x1e, 0x20, 0x21, 0x22, 0x23, 0x25, 0x26,
+  0x27, 0x28, 0x29, 0x2a, 0x2d, 0x2e, 0x30, 0x31,
+  0x32, 0x34, 0x35, 0x36,
+  /* 0xaf */
+  0x00, 0x01, 0x02, 0x03, 0x06, 0x08, 0x0a, 0x0b,
+  0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13,
+  0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b,
+  0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23,
+  0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b,
+  0x2e, 0x2f, 0x00, 0x01, 0x05, 0x06, 0x07, 0x08,
+  0x09, 0x0a, 0x0d, 0x0f, 0x11, 0x12, 0x13, 0x14,
+  0x15, 0x16, 0x19, 0x1a, 0x1c, 0x1d, 0x1e, 0x20,
+  0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x29, 0x2b,
+  0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x35, 0x36,
+  0x38, 0x39, 0x3a, 0x3c,
+  /* 0xb0 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x08, 0x0c,
+  0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x14, 0x15, 0x16,
+  0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e,
+  0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+  0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d,
+  0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x1a, 0x1b, 0x1d, 0x1e, 0x21, 0x22,
+  0x23, 0x24, 0x25, 0x26, 0x27, 0x2a, 0x2e, 0x2f,
+  0x30, 0x31, 0x32, 0x33,
+  /* 0xb1 */
+  0x00, 0x01, 0x03, 0x04, 0x05, 0x07, 0x08, 0x09,
+  0x0a, 0x0b, 0x0c, 0x0d, 0x10, 0x12, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1b, 0x1c, 0x1d, 0x1f,
+  0x20, 0x21, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
+  0x29, 0x2c, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x37, 0x38, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+  0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d,
+  0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x1b, 0x1c, 0x1e, 0x1f, 0x20,
+  0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x2b,
+  0x2d, 0x2f, 0x30, 0x31,
+  /* 0xb2 */
+  0x00, 0x01, 0x02, 0x05, 0x06, 0x08, 0x09, 0x0a,
+  0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x14,
+  0x15, 0x16, 0x17, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26,
+  0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e,
+  0x2f, 0x30, 0x00, 0x01, 0x02, 0x04, 0x05, 0x06,
+  0x07, 0x08, 0x09, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
+  0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20,
+  0x21, 0x22, 0x23, 0x24, 0x25, 0x27, 0x28, 0x29,
+  0x2a, 0x2b, 0x2c, 0x2d,
+  /* 0xb3 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x16, 0x17, 0x19, 0x1a,
+  0x1b, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23,
+  0x26, 0x28, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x31, 0x32, 0x00, 0x02, 0x03, 0x04, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
+  0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21,
+  0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29,
+  0x2a, 0x2b, 0x2c, 0x2d,
+  /* 0xb4 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x08, 0x09,
+  0x0b, 0x0c, 0x0d, 0x0f, 0x10, 0x11, 0x12, 0x13,
+  0x14, 0x15, 0x18, 0x1a, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x23, 0x24, 0x25, 0x27, 0x28, 0x29,
+  0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x33,
+  0x34, 0x35, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+  0x06, 0x07, 0x0a, 0x0b, 0x0d, 0x0e, 0x0f, 0x11,
+  0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x1a, 0x1b,
+  0x1c, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24,
+  0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c,
+  0x2d, 0x2e, 0x2f, 0x30,
+  /* 0xb5 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x11,
+  0x12, 0x14, 0x15, 0x16, 0x18, 0x19, 0x1a, 0x1b,
+  0x1c, 0x1d, 0x1e, 0x21, 0x23, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2d, 0x2e, 0x30, 0x31, 0x32,
+  0x35, 0x36, 0x00, 0x01, 0x02, 0x03, 0x06, 0x0a,
+  0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x12, 0x13, 0x15,
+  0x16, 0x17, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e,
+  0x1f, 0x22, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b,
+  0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34,
+  0x35, 0x36, 0x37, 0x38,
+  /* 0xb6 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10,
+  0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
+  0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20,
+  0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
+  0x29, 0x2a, 0x00, 0x01, 0x03, 0x04, 0x05, 0x07,
+  0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x10, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1c, 0x1d, 0x1f, 0x20,
+  0x21, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29,
+  0x2c, 0x2e, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x37, 0x38, 0x39, 0x3b,
+  /* 0xb7 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0f, 0x10,
+  0x11, 0x12, 0x13, 0x14, 0x15, 0x17, 0x18, 0x19,
+  0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22,
+  0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a,
+  0x2b, 0x2c, 0x00, 0x01, 0x02, 0x03, 0x04, 0x07,
+  0x08, 0x0a, 0x0b, 0x0c, 0x0e, 0x0f, 0x10, 0x11,
+  0x12, 0x13, 0x14, 0x17, 0x19, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x20, 0x22, 0x23, 0x24, 0x26, 0x27, 0x28,
+  0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30,
+  0x31, 0x32, 0x33, 0x34,
+  /* 0xb8 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10,
+  0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
+  0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20,
+  0x21, 0x22, 0x23, 0x25, 0x26, 0x27, 0x29, 0x2a,
+  0x2b, 0x2c, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+  0x06, 0x07, 0x08, 0x09, 0x0b, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x14, 0x15, 0x16, 0x17, 0x18,
+  0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20,
+  0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
+  0x29, 0x2a, 0x2b, 0x2c,
+  /* 0xb9 */
+  0x00, 0x01, 0x04, 0x05, 0x07, 0x08, 0x09, 0x0b,
+  0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x14, 0x16,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1f, 0x20,
+  0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
+  0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30,
+  0x31, 0x33, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+  0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e,
+  0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16,
+  0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e,
+  0x1f, 0x20, 0x21, 0x24, 0x25, 0x27, 0x28, 0x29,
+  0x2b, 0x2c, 0x2d, 0x2e,
+  /* 0xba */
+  0x00, 0x01, 0x02, 0x05, 0x06, 0x07, 0x09, 0x0a,
+  0x0b, 0x0c, 0x0d, 0x0e, 0x10, 0x11, 0x12, 0x14,
+  0x15, 0x16, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x20, 0x21, 0x22, 0x23, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2d, 0x2e, 0x30, 0x31, 0x34,
+  0x36, 0x37, 0x00, 0x01, 0x02, 0x05, 0x07, 0x08,
+  0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x10, 0x11,
+  0x12, 0x14, 0x15, 0x16, 0x18, 0x19, 0x1a, 0x1b,
+  0x1c, 0x1d, 0x1e, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2d, 0x2e, 0x30,
+  0x31, 0x32, 0x34, 0x35,
+  /* 0xbb */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x07, 0x09, 0x0b,
+  0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x14, 0x16, 0x17,
+  0x18, 0x1a, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x23,
+  0x27, 0x28, 0x29, 0x2b, 0x2c, 0x2f, 0x30, 0x32,
+  0x33, 0x34, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+  0x28, 0x29, 0x2a, 0x2b,
+  /* 0xbc */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x14, 0x15, 0x17, 0x18, 0x19, 0x1b,
+  0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x24, 0x28,
+  0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x30, 0x31, 0x33,
+  0x34, 0x35, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+  0x06, 0x09, 0x0b, 0x0d, 0x0e, 0x0f, 0x10, 0x11,
+  0x12, 0x14, 0x15, 0x16, 0x18, 0x19, 0x1a, 0x1c,
+  0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x25, 0x26,
+  0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x30, 0x31,
+  0x32, 0x33, 0x34, 0x35,
+  /* 0xbd */
+  0x00, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
+  0x09, 0x0b, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12,
+  0x13, 0x14, 0x17, 0x18, 0x1a, 0x1b, 0x1c, 0x1e,
+  0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x27, 0x29,
+  0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x32, 0x33,
+  0x34, 0x35, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+  0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d,
+  0x0e, 0x0f, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16,
+  0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e,
+  0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26,
+  0x27, 0x28, 0x29, 0x2a,
+  /* 0xbe */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x09, 0x0a, 0x0b, 0x0d, 0x0e, 0x0f, 0x10, 0x11,
+  0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19,
+  0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21,
+  0x22, 0x23, 0x25, 0x26, 0x27, 0x29, 0x2a, 0x2b,
+  0x2d, 0x2e, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+  0x07, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x13, 0x14, 0x16, 0x17, 0x1a, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x23, 0x25, 0x27, 0x28, 0x29,
+  0x2a, 0x2b, 0x2c, 0x2e, 0x2f, 0x30, 0x31, 0x32,
+  0x33, 0x34, 0x35, 0x36,
+  /* 0xbf */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0c, 0x0d, 0x0e, 0x0f, 0x10,
+  0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
+  0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20,
+  0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
+  0x29, 0x2a, 0x00, 0x01, 0x02, 0x04, 0x05, 0x06,
+  0x08, 0x09, 0x0a, 0x0c, 0x0d, 0x0e, 0x0f, 0x10,
+  0x11, 0x12, 0x14, 0x15, 0x17, 0x18, 0x19, 0x1a,
+  0x1b, 0x1c, 0x1d, 0x1e, 0x20, 0x21, 0x22, 0x24,
+  0x25, 0x26, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x30, 0x31, 0x33,
+  /* 0xc0 */
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
+  0x09, 0x0b, 0x0c, 0x0d, 0x0f, 0x10, 0x11, 0x12,
+  0x13, 0x14, 0x15, 0x18, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+  0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d,
+  0x10, 0x11, 0x13, 0x14, 0x15, 0x17, 0x18, 0x19,
+  0x1a, 0x1b, 0x1c, 0x1d, 0x20, 0x22, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2c, 0x2d, 0x2f, 0x30,
+  0x31, 0x33, 0x34, 0x35,
+  /* 0xc1 */
+  0x00, 0x02, 0x03, 0x06, 0x08, 0x0a, 0x0b, 0x0c,
+  0x0d, 0x0e, 0x0f, 0x12, 0x13, 0x15, 0x16, 0x17,
+  0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x22,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2d, 0x2e,
+  0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36,
+  0x37, 0x38, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+  0x06, 0x07, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e,
+  0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16,
+  0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e,
+  0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26,
+  0x27, 0x28, 0x29, 0x2a,
+  /* 0xc2 */
+  0x00, 0x01, 0x03, 0x04, 0x05, 0x07, 0x09, 0x0a,
+  0x0b, 0x0c, 0x0d, 0x10, 0x12, 0x14, 0x15, 0x16,
+  0x17, 0x18, 0x19, 0x1c, 0x1d, 0x1f, 0x20, 0x21,
+  0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2c,
+  0x2e, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x38,
+  0x39, 0x3b, 0x00, 0x01, 0x03, 0x04, 0x05, 0x06,
+  0x07, 0x08, 0x09, 0x0c, 0x10, 0x11, 0x12, 0x13,
+  0x14, 0x15, 0x17, 0x18, 0x19, 0x1b, 0x1c, 0x1d,
+  0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26,
+  0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+  0x30, 0x31, 0x34, 0x35,
+  /* 0xc3 */
+  0x00, 0x01, 0x02, 0x04, 0x05, 0x06, 0x07, 0x09,
+  0x0a, 0x0d, 0x0f, 0x11, 0x12, 0x13, 0x15, 0x16,
+  0x19, 0x1a, 0x1c, 0x1d, 0x1e, 0x20, 0x21, 0x22,
+  0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2b,
+  0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x35, 0x36,
+  0x38, 0x39, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+  0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0d, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x17, 0x18, 0x1a,
+  0x1b, 0x1c, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23,
+  0x24, 0x25, 0x27, 0x29, 0x2b, 0x2c, 0x2d, 0x2e,
+  0x2f, 0x30, 0x32, 0x33,
+  /* 0xc4 */
+  0x00, 0x02, 0x03, 0x04, 0x06, 0x07, 0x08, 0x09,
+  0x0a, 0x0b, 0x0c, 0x0d, 0x0f, 0x11, 0x12, 0x13,
+  0x14, 0x15, 0x16, 0x17, 0x18, 0x1b, 0x1c, 0x1e,
+  0x1f, 0x20, 0x22, 0x23, 0x24, 0x25, 0x27, 0x28,
+  0x2a, 0x2b, 0x2d, 0x2f, 0x30, 0x31, 0x32, 0x33,
+  0x34, 0x36, 0x00, 0x01, 0x03, 0x04, 0x05, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0f, 0x10,
+  0x11, 0x12, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19,
+  0x1c, 0x1d, 0x1f, 0x20, 0x21, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x30, 0x31, 0x32,
+  /* 0xc5 */
+  0x00, 0x01, 0x02, 0x05, 0x06, 0x08, 0x09, 0x0a,
+  0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x15,
+  0x17, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x21,
+  0x22, 0x24, 0x25, 0x26, 0x28, 0x29, 0x2a, 0x2b,
+  0x2c, 0x2d, 0x2e, 0x30, 0x31, 0x33, 0x35, 0x36,
+  0x37, 0x38, 0x00, 0x01, 0x04, 0x05, 0x07, 0x0c,
+  0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x14, 0x16, 0x18,
+  0x19, 0x1a, 0x1c, 0x1d, 0x1f, 0x20, 0x21, 0x23,
+  0x24, 0x25, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c,
+  0x2d, 0x30, 0x31, 0x32, 0x34, 0x35, 0x36, 0x37,
+  0x38, 0x39, 0x3c, 0x3d,
+  /* 0xc6 */
+  0x00, 0x01, 0x02, 0x04, 0x05, 0x06, 0x07, 0x08,
+  0x09, 0x0a, 0x0d, 0x0f, 0x11, 0x12, 0x13, 0x14,
+  0x15, 0x16,
+};
+
+static int
+uhc_2_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c1 = s[0];
+  if ((c1 >= 0xa1 && c1 <= 0xc6)) {
+    if (n >= 2) {
+      unsigned char c2 = s[1];
+      if ((c2 >= 0x41 && c2 < 0x5b) || (c2 >= 0x61 && c2 < 0x7b) || (c2 >= 0x81 && c2 < 0xa1)) {
+        unsigned int row = c1 - 0xa1;
+        unsigned int col = c2 - (c2 >= 0x81 ? 0x4d : c2 >= 0x61 ? 0x47 : 0x41);
+        unsigned int i = 84 * row + col;
+        if (i < 3126) {
+          *pwc = (ucs4_t) (uhc_2_2uni_main_pagea1[2*row+(col>=42?1:0)] + uhc_2_2uni_pagea1[i]);
+          return 2;
+        }
+      }
+      return RET_ILSEQ;
+    }
+    return RET_TOOFEW(0);
+  }
+  return RET_ILSEQ;
+}
+
+static const unsigned short uhc_2_2charset_main[49] = {
+  0xa141, 0xa18d, 0xa273, 0xa359, 0xa445, 0xa491, 0xa577, 0xa663,
+  0xa749, 0xa795, 0xa881, 0xa967, 0xaa4d, 0xaa99, 0xab85, 0xac6b,
+  0xad51, 0xad9d, 0xae89, 0xaf6f, 0xb055, 0xb141, 0xb18d, 0xb273,
+  0xb359, 0xb445, 0xb491, 0xb577, 0xb663, 0xb749, 0xb795, 0xb881,
+  0xb967, 0xba4d, 0xba99, 0xbb85, 0xbc6b, 0xbd51, 0xbd9d, 0xbe89,
+  0xbf6f, 0xc055, 0xc141, 0xc18d, 0xc273, 0xc359, 0xc445, 0xc491,
+  0xc577,
+};
+static const unsigned char uhc_2_2charset[3126] = {
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x36, 0x37, 0x38, 0x39, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0xb4, 0xb5, 0xb6, 0xb7,
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d,
+  0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x28, 0x29, 0x2a, 0x2b,
+  0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33,
+  0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0xe8, 0xe9, 0xea, 0xeb,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
+  0xc8, 0xc9, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x0a, 0x0b, 0x0c, 0x0d,
+  0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0xca, 0xcb, 0xcc, 0xcd,
+  0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xea, 0xeb,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0xac, 0xad, 0xae, 0xaf,
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xcc, 0xcd,
+  0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
+  0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7,
+  0xd8, 0xd9, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x36, 0x37, 0x38, 0x39, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe8, 0xe9, 0xea, 0xeb,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0xbc, 0xbd, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
+  0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x30, 0x31, 0x32, 0x33,
+  0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x00, 0x01, 0x02, 0x03, 0xa4, 0xa5, 0xa6, 0xa7,
+  0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xc4, 0xc5,
+  0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xeb,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
+  0xd0, 0xd1, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0xd2, 0xd3, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x0c, 0x0d,
+  0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33,
+  0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x36, 0x37, 0x38, 0x39, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0xb4, 0xb5, 0xb6, 0xb7,
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d,
+  0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x28, 0x29, 0x2a, 0x2b,
+  0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33,
+  0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0xe8, 0xe9, 0xea, 0xeb,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
+  0xc8, 0xc9, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x0a, 0x0b, 0x0c, 0x0d,
+  0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0xca, 0xcb, 0xcc, 0xcd,
+  0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xea, 0xeb,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0xac, 0xad, 0xae, 0xaf,
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xcc, 0xcd,
+  0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
+  0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7,
+  0xd8, 0xd9, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x36, 0x37, 0x38, 0x39, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe8, 0xe9, 0xea, 0xeb,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x1a, 0x1b, 0xbc, 0xbd, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
+  0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x30, 0x31, 0x32, 0x33,
+  0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x00, 0x01, 0x02, 0x03, 0xa4, 0xa5, 0xa6, 0xa7,
+  0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xc4, 0xc5,
+  0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd,
+  0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xeb,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
+  0xd0, 0xd1, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0xd2, 0xd3, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x0c, 0x0d,
+  0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33,
+  0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+  0x18, 0x19, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x36, 0x37, 0x38, 0x39, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0xb4, 0xb5, 0xb6, 0xb7,
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
+  0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d,
+  0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x28, 0x29, 0x2a, 0x2b,
+  0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33,
+  0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0xe8, 0xe9, 0xea, 0xeb,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
+  0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35,
+  0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43,
+  0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b,
+  0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+  0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+  0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
+  0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
+  0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
+  0xc8, 0xc9, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd,
+  0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5,
+  0x00, 0x01, 0x02, 0x03, 0x0a, 0x0b, 0x0c, 0x0d,
+  0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+  0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
+  0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
+  0x26, 0x27, 0x28, 0x29, 0xca, 0xcb, 0xcc, 0xcd,
+  0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5,
+  0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb,
+};
+
+static const Summary16 uhc_2_uni2indx_pagec8[251] = {
+  /* 0xc800 */
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0x0000 },
+  {    0, 0x0000 }, {    0, 0x0000 }, {    0, 0xfee0 }, {   10, 0xcfff },
+  {   24, 0xeeef }, {   37, 0xfd4f }, {   49, 0xffec }, {   62, 0xcfdf },
+  /* 0xc900 */
+  {   75, 0x4f8e }, {   84, 0xfefd }, {   98, 0xefff }, {  113, 0xffef },
+  {  128, 0xffff }, {  144, 0xfeec }, {  156, 0xeff4 }, {  168, 0xefee },
+  {  181, 0xecff }, {  194, 0xd4fe }, {  205, 0xffff }, {  221, 0xffff },
+  {  237, 0xfa6c }, {  247, 0xc994 }, {  254, 0x4f6a }, {  263, 0xecfc },
+  /* 0xca00 */
+  {  274, 0xc4fe }, {  284, 0xfeef }, {  298, 0xfdff }, {  313, 0xffff },
+  {  329, 0xcfff }, {  343, 0x4fee }, {  354, 0xfefc }, {  367, 0xdfff },
+  {  382, 0xffef }, {  397, 0xfeff }, {  412, 0xffff }, {  428, 0xcfff },
+  {  442, 0x4fee }, {  453, 0xfcf5 }, {  465, 0xeffe }, {  479, 0xffef },
+  /* 0xcb00 */
+  {  494, 0xfeff }, {  509, 0xfeee }, {  522, 0xfffc }, {  536, 0xffff },
+  {  552, 0xecfd }, {  564, 0xdcfe }, {  576, 0xffef }, {  591, 0xfcff },
+  {  605, 0xffff }, {  621, 0xefff }, {  636, 0xffff }, {  652, 0xfeff },
+  {  667, 0xffff }, {  683, 0xffef }, {  698, 0xfd6f }, {  711, 0xffff },
+  /* 0xcc00 */
+  {  727, 0xcfff }, {  741, 0xcfee }, {  753, 0xac79 }, {  762, 0x84fe },
+  {  771, 0xeecf }, {  783, 0xfc4f }, {  794, 0xfeae }, {  806, 0xffde },
+  {  820, 0xffff }, {  836, 0xecff }, {  849, 0xc4fe }, {  859, 0xeecf },
+  {  871, 0xfd4f }, {  883, 0xffee }, {  897, 0xefef }, {  911, 0xfffe },
+  /* 0xcd00 */
+  {  926, 0xecfd }, {  938, 0xd4fe }, {  949, 0xeeef }, {  962, 0xfdff },
+  {  977, 0xffff }, {  993, 0xefff }, { 1008, 0x4fee }, { 1019, 0xfefd },
+  { 1033, 0xfeff }, { 1048, 0xeecf }, { 1060, 0xfd4f }, { 1072, 0xfffe },
+  { 1087, 0xefef }, { 1101, 0xfffe }, { 1116, 0xeeff }, { 1130, 0xd4fe },
+  /* 0xce00 */
+  { 1141, 0xeeef }, { 1154, 0xfdef }, { 1168, 0xfeec }, { 1180, 0xffd4 },
+  { 1192, 0xffff }, { 1208, 0x6cff }, { 1220, 0xd4fc }, { 1230, 0xeecf },
+  { 1242, 0xfd4f }, { 1254, 0xfeec }, { 1266, 0xcfc4 }, { 1275, 0xffff },
+  { 1291, 0xfffd }, { 1306, 0xffff }, { 1322, 0xe6cf }, { 1333, 0xfc4f },
+  /* 0xcf00 */
+  { 1344, 0xfeec }, { 1356, 0xefd4 }, { 1367, 0x4fee }, { 1378, 0xfefc },
+  { 1391, 0xffff }, { 1407, 0xeecf }, { 1419, 0xfd4f }, { 1431, 0xfeec },
+  { 1443, 0xefde }, { 1456, 0xffff }, { 1472, 0xfefd }, { 1486, 0xfffe },
+  { 1501, 0xffef }, { 1516, 0xffff }, { 1532, 0xfeec }, { 1544, 0xefd4 },
+  /* 0xd000 */
+  { 1555, 0xffee }, { 1569, 0xfefd }, { 1583, 0xdfff }, { 1598, 0xeecf },
+  { 1610, 0xfd4f }, { 1622, 0xfeee }, { 1635, 0xcffe }, { 1648, 0xcfee },
+  { 1660, 0xfffd }, { 1675, 0xffff }, { 1691, 0xeecf }, { 1703, 0xfd4f },
+  { 1715, 0xfcec }, { 1726, 0xcfc4 }, { 1735, 0x4fee }, { 1746, 0xfefc },
+  /* 0xd100 */
+  { 1759, 0xdfff }, { 1774, 0xffff }, { 1790, 0xffff }, { 1806, 0xfaec },
+  { 1817, 0xcfc4 }, { 1826, 0x4fee }, { 1837, 0xeefd }, { 1850, 0xefff },
+  { 1865, 0xfeef }, { 1879, 0xffff }, { 1895, 0xfeec }, { 1907, 0xebd4 },
+  { 1917, 0xfffe }, { 1932, 0xfeff }, { 1947, 0xffff }, { 1963, 0xfeef },
+  /* 0xd200 */
+  { 1977, 0xfd7f }, { 1991, 0xfffe }, { 2006, 0xcfff }, { 2020, 0x4fee },
+  { 2031, 0xfefd }, { 2045, 0xefff }, { 2060, 0xffef }, { 2075, 0xffff },
+  { 2091, 0xfeec }, { 2103, 0xefdc }, { 2115, 0xefee }, { 2128, 0x6cfd },
+  { 2139, 0xf4fa }, { 2150, 0xeeef }, { 2163, 0xffcf }, { 2177, 0xfeec },
+  /* 0xd300 */
+  { 2189, 0x8fd4 }, { 2198, 0x4fae }, { 2208, 0xecdc }, { 2218, 0xc4fe },
+  { 2228, 0xffcf }, { 2242, 0xffff }, { 2258, 0xffff }, { 2274, 0xcfff },
+  { 2288, 0x4fee }, { 2299, 0xecfc }, { 2310, 0xd4fe }, { 2321, 0xeeef },
+  { 2334, 0xfccf }, { 2346, 0xfefe }, { 2360, 0xcff5 }, { 2372, 0x4fee },
+  /* 0xd400 */
+  { 2383, 0xfefd }, { 2397, 0xdfff }, { 2412, 0xffff }, { 2428, 0xffff },
+  { 2444, 0xffee }, { 2458, 0xefff }, { 2473, 0x5fee }, { 2485, 0x6cff },
+  { 2497, 0xd4fa }, { 2507, 0xffef }, { 2522, 0xfdff }, { 2537, 0xffff },
+  { 2553, 0xefff }, { 2568, 0x6fee }, { 2580, 0xeeff }, { 2594, 0xd6fe },
+  /* 0xd500 */
+  { 2606, 0xeeef }, { 2619, 0xff4f }, { 2632, 0xffff }, { 2648, 0xcfff },
+  { 2662, 0x4fee }, { 2673, 0xecfd }, { 2685, 0xd4de }, { 2695, 0xeecf },
+  { 2707, 0xfc4f }, { 2718, 0xfffe }, { 2733, 0xffdf }, { 2748, 0xffff },
+  { 2764, 0xecff }, { 2777, 0xd4fa }, { 2787, 0xeecf }, { 2799, 0xfd4f },
+  /* 0xd600 */
+  { 2811, 0xfeec }, { 2823, 0xefc4 }, { 2833, 0xdfee }, { 2846, 0xecff },
+  { 2859, 0xd4de }, { 2869, 0xeecd }, { 2880, 0xfd7f }, { 2894, 0xffec },
+  { 2907, 0xcfd7 }, { 2919, 0x5fee }, { 2931, 0xeefd }, { 2944, 0xf5fe },
+  { 2957, 0xeecf }, { 2969, 0xfd6d }, { 2981, 0xfeee }, { 2994, 0xcfde },
+  /* 0xd700 */
+  { 3006, 0xffee }, { 3020, 0xecfd }, { 3032, 0xd4fe }, { 3043, 0xeecf },
+  { 3055, 0xfd6f }, { 3068, 0xfc2c }, { 3077, 0xedd4 }, { 3087, 0xcfee },
+  { 3099, 0xecfd }, { 3111, 0xd4fe }, { 3122, 0x000f },
+};
+
+static int
+uhc_2_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (n >= 2) {
+    if (wc >= 0xc800 && wc < 0xd7b0) {
+      const Summary16 *summary = &uhc_2_uni2indx_pagec8[(wc>>4)-0xc80];
+      unsigned short used = summary->used;
+      unsigned int i = wc & 0x0f;
+      if (used & ((unsigned short) 1 << i)) {
+        unsigned short c;
+        /* Keep in `used' only the bits 0..i-1. */
+        used &= ((unsigned short) 1 << i) - 1;
+        /* Add `summary->indx' and the number of bits set in `used'. */
+        used = (used & 0x5555) + ((used & 0xaaaa) >> 1);
+        used = (used & 0x3333) + ((used & 0xcccc) >> 2);
+        used = (used & 0x0f0f) + ((used & 0xf0f0) >> 4);
+        used = (used & 0x00ff) + (used >> 8);
+        used += summary->indx;
+        c = uhc_2_2charset_main[used>>6] + uhc_2_2charset[used];
+        r[0] = (c >> 8); r[1] = (c & 0xff);
+        return 2;
+      }
+    }
+    return RET_ILUNI;
+  }
+  return RET_TOOSMALL;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/utf16.h b/graf2d/win32gdk/gdk/src/iconv/utf16.h
new file mode 100644
index 00000000000..99b5e2c2d85
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/utf16.h
@@ -0,0 +1,113 @@
+/*
+ * Copyright (C) 1999-2001, 2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * UTF-16
+ */
+
+/* Specification: RFC 2781 */
+
+/* Here we accept FFFE/FEFF marks as endianness indicators everywhere
+   in the stream, not just at the beginning. (This is contrary to what
+   RFC 2781 section 3.2 specifies, but it allows concatenation of byte
+   sequences to work flawlessly, while disagreeing with the RFC behaviour
+   only for strings containing U+FEFF characters, which is quite rare.)
+   The default is big-endian. */
+/* The state is 0 if big-endian, 1 if little-endian. */
+static int
+utf16_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  state_t state = conv->istate;
+  int count = 0;
+  for (; n >= 2;) {
+    ucs4_t wc = (state ? s[0] + (s[1] << 8) : (s[0] << 8) + s[1]);
+    if (wc == 0xfeff) {
+    } else if (wc == 0xfffe) {
+      state ^= 1;
+    } else if (wc >= 0xd800 && wc < 0xdc00) {
+      if (n >= 4) {
+        ucs4_t wc2 = (state ? s[2] + (s[3] << 8) : (s[2] << 8) + s[3]);
+        if (!(wc2 >= 0xdc00 && wc2 < 0xe000))
+          goto ilseq;
+        *pwc = 0x10000 + ((wc - 0xd800) << 10) + (wc2 - 0xdc00);
+        conv->istate = state;
+        return count+4;
+      } else
+        break;
+    } else if (wc >= 0xdc00 && wc < 0xe000) {
+      goto ilseq;
+    } else {
+      *pwc = wc;
+      conv->istate = state;
+      return count+2;
+    }
+    s += 2; n -= 2; count += 2;
+  }
+  conv->istate = state;
+  return RET_TOOFEW(count);
+
+ilseq:
+  conv->istate = state;
+  return RET_SHIFT_ILSEQ(count);
+}
+
+/* We output UTF-16 in big-endian order, with byte-order mark.
+   See RFC 2781 section 3.3 for a rationale: Some document formats
+   mandate a BOM; the file concatenation issue is not so severe as
+   long as the above utf16_mbtowc function is used. */
+/* The state is 0 at the beginning, 1 after the BOM has been written. */
+static int
+utf16_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (wc != 0xfffe && !(wc >= 0xd800 && wc < 0xe000)) {
+    int count = 0;
+    if (!conv->ostate) {
+      if (n >= 2) {
+        r[0] = 0xFE;
+        r[1] = 0xFF;
+        r += 2; n -= 2; count += 2;
+      } else
+        return RET_TOOSMALL;
+    }
+    if (wc < 0x10000) {
+      if (n >= 2) {
+        r[0] = (unsigned char) (wc >> 8);
+        r[1] = (unsigned char) wc;
+        conv->ostate = 1;
+        return count+2;
+      } else
+        return RET_TOOSMALL;
+    }
+    else if (wc < 0x110000) {
+      if (n >= 4) {
+        ucs4_t wc1 = 0xd800 + ((wc - 0x10000) >> 10);
+        ucs4_t wc2 = 0xdc00 + ((wc - 0x10000) & 0x3ff);
+        r[0] = (unsigned char) (wc1 >> 8);
+        r[1] = (unsigned char) wc1;
+        r[2] = (unsigned char) (wc2 >> 8);
+        r[3] = (unsigned char) wc2;
+        conv->ostate = 1;
+        return count+4;
+      } else
+        return RET_TOOSMALL;
+    }
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/utf16be.h b/graf2d/win32gdk/gdk/src/iconv/utf16be.h
new file mode 100644
index 00000000000..a6d90ffb916
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/utf16be.h
@@ -0,0 +1,80 @@
+/*
+ * Copyright (C) 1999-2001, 2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * UTF-16BE
+ */
+
+/* Specification: RFC 2781 */
+
+static int
+utf16be_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  int count = 0;
+  if (n >= 2) {
+    ucs4_t wc = (s[0] << 8) + s[1];
+    if (wc >= 0xd800 && wc < 0xdc00) {
+      if (n >= 4) {
+        ucs4_t wc2 = (s[2] << 8) + s[3];
+        if (!(wc2 >= 0xdc00 && wc2 < 0xe000))
+          goto ilseq;
+        *pwc = 0x10000 + ((wc - 0xd800) << 10) + (wc2 - 0xdc00);
+        return count+4;
+      }
+    } else if (wc >= 0xdc00 && wc < 0xe000) {
+      goto ilseq;
+    } else {
+      *pwc = wc;
+      return count+2;
+    }
+  }
+  return RET_TOOFEW(count);
+
+ilseq:
+  return RET_SHIFT_ILSEQ(count);
+}
+
+static int
+utf16be_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (!(wc >= 0xd800 && wc < 0xe000)) {
+    if (wc < 0x10000) {
+      if (n >= 2) {
+        r[0] = (unsigned char) (wc >> 8);
+        r[1] = (unsigned char) wc;
+        return 2;
+      } else
+        return RET_TOOSMALL;
+    }
+    else if (wc < 0x110000) {
+      if (n >= 4) {
+        ucs4_t wc1 = 0xd800 + ((wc - 0x10000) >> 10);
+        ucs4_t wc2 = 0xdc00 + ((wc - 0x10000) & 0x3ff);
+        r[0] = (unsigned char) (wc1 >> 8);
+        r[1] = (unsigned char) wc1;
+        r[2] = (unsigned char) (wc2 >> 8);
+        r[3] = (unsigned char) wc2;
+        return 4;
+      } else
+        return RET_TOOSMALL;
+    }
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/utf16le.h b/graf2d/win32gdk/gdk/src/iconv/utf16le.h
new file mode 100644
index 00000000000..5bb2b026966
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/utf16le.h
@@ -0,0 +1,80 @@
+/*
+ * Copyright (C) 1999-2001, 2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * UTF-16LE
+ */
+
+/* Specification: RFC 2781 */
+
+static int
+utf16le_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  int count = 0;
+  if (n >= 2) {
+    ucs4_t wc = s[0] + (s[1] << 8);
+    if (wc >= 0xd800 && wc < 0xdc00) {
+      if (n >= 4) {
+        ucs4_t wc2 = s[2] + (s[3] << 8);
+        if (!(wc2 >= 0xdc00 && wc2 < 0xe000))
+          goto ilseq;
+        *pwc = 0x10000 + ((wc - 0xd800) << 10) + (wc2 - 0xdc00);
+        return count+4;
+      }
+    } else if (wc >= 0xdc00 && wc < 0xe000) {
+      goto ilseq;
+    } else {
+      *pwc = wc;
+      return count+2;
+    }
+  }
+  return RET_TOOFEW(count);
+
+ilseq:
+  return RET_SHIFT_ILSEQ(count);
+}
+
+static int
+utf16le_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (!(wc >= 0xd800 && wc < 0xe000)) {
+    if (wc < 0x10000) {
+      if (n >= 2) {
+        r[0] = (unsigned char) wc;
+        r[1] = (unsigned char) (wc >> 8);
+        return 2;
+      } else
+        return RET_TOOSMALL;
+    }
+    else if (wc < 0x110000) {
+      if (n >= 4) {
+        ucs4_t wc1 = 0xd800 + ((wc - 0x10000) >> 10);
+        ucs4_t wc2 = 0xdc00 + ((wc - 0x10000) & 0x3ff);
+        r[0] = (unsigned char) wc1;
+        r[1] = (unsigned char) (wc1 >> 8);
+        r[2] = (unsigned char) wc2;
+        r[3] = (unsigned char) (wc2 >> 8);
+        return 4;
+      } else
+        return RET_TOOSMALL;
+    }
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/utf32.h b/graf2d/win32gdk/gdk/src/iconv/utf32.h
new file mode 100644
index 00000000000..bc579ae0b8b
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/utf32.h
@@ -0,0 +1,93 @@
+/*
+ * Copyright (C) 1999-2001, 2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * UTF-32
+ */
+
+/* Specification: Unicode 3.1 Standard Annex #19 */
+
+/* Here we accept FFFE0000/0000FEFF marks as endianness indicators
+   everywhere in the stream, not just at the beginning. (This is contrary
+   to what #19 D36c specifies, but it allows concatenation of byte
+   sequences to work flawlessly, while disagreeing with #19 behaviour
+   only for strings containing U+FEFF characters, which is quite rare.)
+   The default is big-endian. */
+/* The state is 0 if big-endian, 1 if little-endian. */
+static int
+utf32_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  state_t state = conv->istate;
+  int count = 0;
+  for (; n >= 4;) {
+    ucs4_t wc = (state
+                  ? s[0] + (s[1] << 8) + (s[2] << 16) + (s[3] << 24)
+                  : (s[0] << 24) + (s[1] << 16) + (s[2] << 8) + s[3]);
+    count += 4;
+    if (wc == 0x0000feff) {
+    } else if (wc == 0xfffe0000u) {
+      state ^= 1;
+    } else {
+      if (wc < 0x110000 && !(wc >= 0xd800 && wc < 0xe000)) {
+        *pwc = wc;
+        conv->istate = state;
+        return count;
+      } else {
+        conv->istate = state;
+        return RET_SHIFT_ILSEQ(count);
+      }
+    }
+    s += 4; n -= 4;
+  }
+  conv->istate = state;
+  return RET_TOOFEW(count);
+}
+
+/* We output UTF-32 in big-endian order, with byte-order mark. */
+/* The state is 0 at the beginning, 1 after the BOM has been written. */
+static int
+utf32_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (wc < 0x110000 && !(wc >= 0xd800 && wc < 0xe000)) {
+    int count = 0;
+    if (!conv->ostate) {
+      if (n >= 4) {
+        r[0] = 0x00;
+        r[1] = 0x00;
+        r[2] = 0xFE;
+        r[3] = 0xFF;
+        r += 4; n -= 4; count += 4;
+      } else
+        return RET_TOOSMALL;
+    }
+    if (wc < 0x110000) {
+      if (n >= 4) {
+        r[0] = 0;
+        r[1] = (unsigned char) (wc >> 16);
+        r[2] = (unsigned char) (wc >> 8);
+        r[3] = (unsigned char) wc;
+        conv->ostate = 1;
+        return count+4;
+      } else
+        return RET_TOOSMALL;
+    }
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/utf32be.h b/graf2d/win32gdk/gdk/src/iconv/utf32be.h
new file mode 100644
index 00000000000..50811298d63
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/utf32be.h
@@ -0,0 +1,55 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * UTF-32BE
+ */
+
+/* Specification: Unicode 3.1 Standard Annex #19 */
+
+static int
+utf32be_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  if (n >= 4) {
+    ucs4_t wc = (s[0] << 24) + (s[1] << 16) + (s[2] << 8) + s[3];
+    if (wc < 0x110000 && !(wc >= 0xd800 && wc < 0xe000)) {
+      *pwc = wc;
+      return 4;
+    } else
+      return RET_ILSEQ;
+  }
+  return RET_TOOFEW(0);
+}
+
+static int
+utf32be_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (wc < 0x110000 && !(wc >= 0xd800 && wc < 0xe000)) {
+    if (n >= 4) {
+      r[0] = 0;
+      r[1] = (unsigned char) (wc >> 16);
+      r[2] = (unsigned char) (wc >> 8);
+      r[3] = (unsigned char) wc;
+      return 4;
+    } else
+      return RET_TOOSMALL;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/utf32le.h b/graf2d/win32gdk/gdk/src/iconv/utf32le.h
new file mode 100644
index 00000000000..9d3699bc98d
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/utf32le.h
@@ -0,0 +1,55 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * UTF-32LE
+ */
+
+/* Specification: Unicode 3.1 Standard Annex #19 */
+
+static int
+utf32le_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  if (n >= 4) {
+    ucs4_t wc = s[0] + (s[1] << 8) + (s[2] << 16) + (s[3] << 24);
+    if (wc < 0x110000 && !(wc >= 0xd800 && wc < 0xe000)) {
+      *pwc = wc;
+      return 4;
+    } else
+      return RET_ILSEQ;
+  }
+  return RET_TOOFEW(0);
+}
+
+static int
+utf32le_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  if (wc < 0x110000 && !(wc >= 0xd800 && wc < 0xe000)) {
+    if (n >= 4) {
+      r[0] = (unsigned char) wc;
+      r[1] = (unsigned char) (wc >> 8);
+      r[2] = (unsigned char) (wc >> 16);
+      r[3] = 0;
+      return 4;
+    } else
+      return RET_TOOSMALL;
+  }
+  return RET_ILUNI;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/utf7.h b/graf2d/win32gdk/gdk/src/iconv/utf7.h
new file mode 100644
index 00000000000..888bfb4d650
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/utf7.h
@@ -0,0 +1,355 @@
+/*
+ * Copyright (C) 1999-2001, 2008 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * UTF-7
+ */
+
+/* Specification: RFC 2152 (and old RFC 1641, RFC 1642) */
+/* The original Base64 encoding is defined in RFC 2045. */
+
+/* Set of direct characters:
+ *   A-Z a-z 0-9 ' ( ) , - . / : ? space tab lf cr
+ */
+static const unsigned char direct_tab[128/8] = {
+  0x00, 0x26, 0x00, 0x00, 0x81, 0xf3, 0xff, 0x87,
+  0xfe, 0xff, 0xff, 0x07, 0xfe, 0xff, 0xff, 0x07,
+};
+#define isdirect(ch) ((ch) < 128 && ((direct_tab[(ch)>>3] >> (ch & 7)) & 1))
+
+/* Set of direct and optional direct characters:
+ *   A-Z a-z 0-9 ' ( ) , - . / : ? space tab lf cr
+ *   ! " # $ % & * ; < = > @ [ ] ^ _ ` { | }
+ */
+static const unsigned char xdirect_tab[128/8] = {
+  0x00, 0x26, 0x00, 0x00, 0xff, 0xf7, 0xff, 0xff,
+  0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0x3f,
+};
+#define isxdirect(ch) ((ch) < 128 && ((xdirect_tab[(ch)>>3] >> (ch & 7)) & 1))
+
+/* Set of base64 characters, extended:
+ *   A-Z a-z 0-9 + / -
+ */
+static const unsigned char xbase64_tab[128/8] = {
+  0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0xff, 0x03,
+  0xfe, 0xff, 0xff, 0x07, 0xfe, 0xff, 0xff, 0x07,
+};
+#define isxbase64(ch) ((ch) < 128 && ((xbase64_tab[(ch)>>3] >> (ch & 7)) & 1))
+
+/*
+ * The state is structured as follows:
+ * bit 1..0: shift
+ * bit 7..2: data
+ * Precise meaning:
+ *   shift      data
+ *     0         0           not inside base64 encoding
+ *     1         0           inside base64, no pending bits
+ *     2      XXXX00         inside base64, 4 bits remain from 2nd byte
+ *     3      XX0000         inside base64, 2 bits remain from 3rd byte
+ */
+
+static int
+utf7_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  state_t state = conv->istate;
+  int count = 0; /* number of input bytes already read */
+  if (state & 3)
+    goto active;
+  else
+    goto inactive;
+
+inactive:
+  {
+    /* Here (state & 3) == 0 */
+    if (n < count+1)
+      goto none;
+    {
+      unsigned char c = *s;
+      if (isxdirect(c)) {
+        *pwc = (ucs4_t) c;
+        conv->istate = state;
+        return count+1;
+      }
+      if (c == '+') {
+        if (n < count+2)
+          goto none;
+        if (s[1] == '-') {
+          *pwc = (ucs4_t) '+';
+          conv->istate = state;
+          return count+2;
+        }
+        s++; count++;
+        state = 1;
+        goto active;
+      }
+      goto ilseq;
+    }
+  }
+
+active:
+  {
+    /* base64 encoding active */
+    unsigned int wc = 0;
+    state_t base64state = state;
+    unsigned int kmax = 2; /* number of payload bytes to read */
+    unsigned int k = 0; /* number of payload bytes already read */
+    unsigned int base64count = 0; /* number of base64 bytes already read */
+    for (;;) {
+      unsigned char c = *s;
+      unsigned int i;
+      if (c >= 'A' && c <= 'Z')
+        i = c-'A';
+      else if (c >= 'a' && c <= 'z')
+        i = c-'a'+26;
+      else if (c >= '0' && c <= '9')
+        i = c-'0'+52;
+      else if (c == '+')
+        i = 62;
+      else if (c == '/')
+        i = 63;
+      else {
+        /* c terminates base64 encoding */
+        if (base64state & -4)
+          goto ilseq; /* data must be 0, otherwise illegal */
+        if (base64count)
+          goto ilseq; /* partial UTF-16 characters are invalid */
+        if (c == '-') {
+          s++; count++;
+        }
+        state = 0;
+        goto inactive;
+      }
+      s++; base64count++;
+      /* read 6 bits: 0 <= i < 64 */
+      switch (base64state & 3) {
+        case 1: /* inside base64, no pending bits */
+          base64state = (i << 2) | 0; break;
+        case 0: /* inside base64, 6 bits remain from 1st byte */
+          wc = (wc << 8) | (base64state & -4) | (i >> 4); k++;
+          base64state = ((i & 15) << 4) | 2; break;
+        case 2: /* inside base64, 4 bits remain from 2nd byte */
+          wc = (wc << 8) | (base64state & -4) | (i >> 2); k++;
+          base64state = ((i & 3) << 6) | 3; break;
+        case 3: /* inside base64, 2 bits remain from 3rd byte */
+          wc = (wc << 8) | (base64state & -4) | i; k++;
+          base64state = 1; break;
+      }
+      if (k == kmax) {
+        /* UTF-16: When we see a High Surrogate, we must also decode
+           the following Low Surrogate. */
+        if (kmax == 2 && (wc >= 0xd800 && wc < 0xdc00))
+          kmax = 4;
+        else
+          break;
+      }
+      if (n < count+base64count+1)
+        goto none;
+    }
+    /* Here k = kmax > 0, hence base64count > 0. */
+    if ((base64state & 3) == 0) abort();
+    if (kmax == 4) {
+      ucs4_t wc1 = wc >> 16;
+      ucs4_t wc2 = wc & 0xffff;
+      if (!(wc1 >= 0xd800 && wc1 < 0xdc00)) abort();
+      if (!(wc2 >= 0xdc00 && wc2 < 0xe000)) goto ilseq;
+      *pwc = 0x10000 + ((wc1 - 0xd800) << 10) + (wc2 - 0xdc00);
+    } else {
+      *pwc = wc;
+    }
+    conv->istate = base64state;
+    return count+base64count;
+  }
+
+none:
+  conv->istate = state;
+  return RET_TOOFEW(count);
+
+ilseq:
+  conv->istate = state;
+  return RET_SHIFT_ILSEQ(count);
+}
+
+/*
+ * The state is structured as follows:
+ * bit 1..0: shift
+ * bit 7..2: data
+ * Precise meaning:
+ *   shift      data
+ *     0         0           not inside base64 encoding
+ *     1         0           inside base64, no pending bits
+ *     2       XX00          inside base64, 2 bits known for 2nd byte
+ *     3       XXXX          inside base64, 4 bits known for 3rd byte
+ */
+
+/* Define this to 1 if you want the so-called "optional direct" characters
+      ! " # $ % & * ; < = > @ [ ] ^ _ ` { | }
+   to be encoded. Define to 0 if you want them to be passed straight through,
+   like the so-called "direct" characters.
+   We set this to 1 because it's safer.
+ */
+#define UTF7_ENCODE_OPTIONAL_CHARS 1
+
+static int
+utf7_wctomb (conv_t conv, unsigned char *r, ucs4_t iwc, int n)
+{
+  state_t state = conv->ostate;
+  unsigned int wc = iwc;
+  int count = 0;
+  if (state & 3)
+    goto active;
+
+/*inactive:*/
+  {
+    if (UTF7_ENCODE_OPTIONAL_CHARS ? isdirect(wc) : isxdirect(wc)) {
+      r[0] = (unsigned char) wc;
+      /*conv->ostate = state;*/
+      return 1;
+    } else {
+      *r++ = '+';
+      if (wc == '+') {
+        if (n < 2)
+          return RET_TOOSMALL;
+        *r = '-';
+        /*conv->ostate = state;*/
+        return 2;
+      }
+      count = 1;
+      state = 1;
+      goto active;
+    }
+  }
+
+active:
+  {
+    /* base64 encoding active */
+    if (UTF7_ENCODE_OPTIONAL_CHARS ? isdirect(wc) : isxdirect(wc)) {
+      /* deactivate base64 encoding */
+      count += ((state & 3) >= 2 ? 1 : 0) + (isxbase64(wc) ? 1 : 0) + 1;
+      if (n < count)
+        return RET_TOOSMALL;
+      if ((state & 3) >= 2) {
+        unsigned int i = state & -4;
+        unsigned char c;
+        if (i < 26)
+          c = i+'A';
+        else if (i < 52)
+          c = i-26+'a';
+        else if (i < 62)
+          c = i-52+'0';
+        else if (i == 62)
+          c = '+';
+        else if (i == 63)
+          c = '/';
+        else
+          abort();
+        *r++ = c;
+      }
+      if (isxbase64(wc))
+        *r++ = '-';
+      state = 0;
+      *r++ = (unsigned char) wc;
+      conv->ostate = state;
+      return count;
+    } else {
+      unsigned int k; /* number of payload bytes to write */
+      if (wc < 0x10000) {
+        k = 2;
+        count += ((state & 3) >= 2 ? 3 : 2);
+      } else if (wc < 0x110000) {
+        unsigned int wc1 = 0xd800 + ((wc - 0x10000) >> 10);
+        unsigned int wc2 = 0xdc00 + ((wc - 0x10000) & 0x3ff);
+        wc = (wc1 << 16) | wc2;
+        k = 4;
+        count += ((state & 3) >= 3 ? 6 : 5);
+      } else
+        return RET_ILUNI;
+      if (n < count)
+        return RET_TOOSMALL;
+      for (;;) {
+        unsigned int i;
+        unsigned char c;
+        switch (state & 3) {
+          case 0: /* inside base64, 6 bits known for 4th byte */
+            c = (state & -4) >> 2; state = 1; break;
+          case 1: /* inside base64, no pending bits */
+            i = (wc >> (8 * --k)) & 0xff;
+            c = i >> 2; state = ((i & 3) << 4) | 2; break;
+          case 2: /* inside base64, 2 bits known for 2nd byte */
+            i = (wc >> (8 * --k)) & 0xff;
+            c = (state & -4) | (i >> 4); state = ((i & 15) << 2) | 3; break;
+          case 3: /* inside base64, 4 bits known for 3rd byte */
+            i = (wc >> (8 * --k)) & 0xff;
+            c = (state & -4) | (i >> 6); state = ((i & 63) << 2) | 0; break;
+          default: abort(); /* stupid gcc */
+        }
+        if (c < 26)
+          c = c+'A';
+        else if (c < 52)
+          c = c-26+'a';
+        else if (c < 62)
+          c = c-52+'0';
+        else if (c == 62)
+          c = '+';
+        else if (c == 63)
+          c = '/';
+        else
+          abort();
+        *r++ = c;
+        if ((state & 3) && (k == 0))
+          break;
+      }
+      conv->ostate = state;
+      return count;
+    }
+  }
+}
+
+static int
+utf7_reset (conv_t conv, unsigned char *r, int n)
+{
+  state_t state = conv->ostate;
+  if (state & 3) {
+    /* deactivate base64 encoding */
+    unsigned int count = ((state & 3) >= 2 ? 1 : 0) + 1;
+    if (n < count)
+      return RET_TOOSMALL;
+    if ((state & 3) >= 2) {
+      unsigned int i = state & -4;
+      unsigned char c;
+      if (i < 26)
+        c = i+'A';
+      else if (i < 52)
+        c = i-26+'a';
+      else if (i < 62)
+        c = i-52+'0';
+      else if (i == 62)
+        c = '+';
+      else if (i == 63)
+        c = '/';
+      else
+        abort();
+      *r++ = c;
+    }
+    *r++ = '-';
+    /* conv->ostate = 0; will be done by the caller */
+    return count;
+  } else
+    return 0;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/utf8.h b/graf2d/win32gdk/gdk/src/iconv/utf8.h
new file mode 100644
index 00000000000..9d07219c8ad
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/utf8.h
@@ -0,0 +1,128 @@
+/*
+ * Copyright (C) 1999-2001, 2004 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * UTF-8
+ */
+
+/* Specification: RFC 3629 */
+
+static int
+utf8_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = s[0];
+
+  if (c < 0x80) {
+    *pwc = c;
+    return 1;
+  } else if (c < 0xc2) {
+    return RET_ILSEQ;
+  } else if (c < 0xe0) {
+    if (n < 2)
+      return RET_TOOFEW(0);
+    if (!((s[1] ^ 0x80) < 0x40))
+      return RET_ILSEQ;
+    *pwc = ((ucs4_t) (c & 0x1f) << 6)
+           | (ucs4_t) (s[1] ^ 0x80);
+    return 2;
+  } else if (c < 0xf0) {
+    if (n < 3)
+      return RET_TOOFEW(0);
+    if (!((s[1] ^ 0x80) < 0x40 && (s[2] ^ 0x80) < 0x40
+          && (c >= 0xe1 || s[1] >= 0xa0)))
+      return RET_ILSEQ;
+    *pwc = ((ucs4_t) (c & 0x0f) << 12)
+           | ((ucs4_t) (s[1] ^ 0x80) << 6)
+           | (ucs4_t) (s[2] ^ 0x80);
+    return 3;
+  } else if (c < 0xf8 && sizeof(ucs4_t)*8 >= 32) {
+    if (n < 4)
+      return RET_TOOFEW(0);
+    if (!((s[1] ^ 0x80) < 0x40 && (s[2] ^ 0x80) < 0x40
+          && (s[3] ^ 0x80) < 0x40
+          && (c >= 0xf1 || s[1] >= 0x90)))
+      return RET_ILSEQ;
+    *pwc = ((ucs4_t) (c & 0x07) << 18)
+           | ((ucs4_t) (s[1] ^ 0x80) << 12)
+           | ((ucs4_t) (s[2] ^ 0x80) << 6)
+           | (ucs4_t) (s[3] ^ 0x80);
+    return 4;
+  } else if (c < 0xfc && sizeof(ucs4_t)*8 >= 32) {
+    if (n < 5)
+      return RET_TOOFEW(0);
+    if (!((s[1] ^ 0x80) < 0x40 && (s[2] ^ 0x80) < 0x40
+          && (s[3] ^ 0x80) < 0x40 && (s[4] ^ 0x80) < 0x40
+          && (c >= 0xf9 || s[1] >= 0x88)))
+      return RET_ILSEQ;
+    *pwc = ((ucs4_t) (c & 0x03) << 24)
+           | ((ucs4_t) (s[1] ^ 0x80) << 18)
+           | ((ucs4_t) (s[2] ^ 0x80) << 12)
+           | ((ucs4_t) (s[3] ^ 0x80) << 6)
+           | (ucs4_t) (s[4] ^ 0x80);
+    return 5;
+  } else if (c < 0xfe && sizeof(ucs4_t)*8 >= 32) {
+    if (n < 6)
+      return RET_TOOFEW(0);
+    if (!((s[1] ^ 0x80) < 0x40 && (s[2] ^ 0x80) < 0x40
+          && (s[3] ^ 0x80) < 0x40 && (s[4] ^ 0x80) < 0x40
+          && (s[5] ^ 0x80) < 0x40
+          && (c >= 0xfd || s[1] >= 0x84)))
+      return RET_ILSEQ;
+    *pwc = ((ucs4_t) (c & 0x01) << 30)
+           | ((ucs4_t) (s[1] ^ 0x80) << 24)
+           | ((ucs4_t) (s[2] ^ 0x80) << 18)
+           | ((ucs4_t) (s[3] ^ 0x80) << 12)
+           | ((ucs4_t) (s[4] ^ 0x80) << 6)
+           | (ucs4_t) (s[5] ^ 0x80);
+    return 6;
+  } else
+    return RET_ILSEQ;
+}
+
+static int
+utf8_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n) /* n == 0 is acceptable */
+{
+  int count;
+  if (wc < 0x80)
+    count = 1;
+  else if (wc < 0x800)
+    count = 2;
+  else if (wc < 0x10000)
+    count = 3;
+  else if (wc < 0x200000)
+    count = 4;
+  else if (wc < 0x4000000)
+    count = 5;
+  else if (wc <= 0x7fffffff)
+    count = 6;
+  else
+    return RET_ILUNI;
+  if (n < count)
+    return RET_TOOSMALL;
+  switch (count) { /* note: code falls through cases! */
+    case 6: r[5] = 0x80 | (wc & 0x3f); wc = wc >> 6; wc |= 0x4000000;
+    case 5: r[4] = 0x80 | (wc & 0x3f); wc = wc >> 6; wc |= 0x200000;
+    case 4: r[3] = 0x80 | (wc & 0x3f); wc = wc >> 6; wc |= 0x10000;
+    case 3: r[2] = 0x80 | (wc & 0x3f); wc = wc >> 6; wc |= 0x800;
+    case 2: r[1] = 0x80 | (wc & 0x3f); wc = wc >> 6; wc |= 0xc0;
+    case 1: r[0] = wc;
+  }
+  return count;
+}
diff --git a/graf2d/win32gdk/gdk/src/iconv/vietcomb.h b/graf2d/win32gdk/gdk/src/iconv/vietcomb.h
new file mode 100644
index 00000000000..34892cd440b
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/vietcomb.h
@@ -0,0 +1,467 @@
+/*
+ * Copyright (C) 2001, 2004 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/* Combining characters used in Vietnamese encodings CP1258, TCVN. */
+
+#ifndef _VIETCOMB_H
+#define _VIETCOMB_H
+
+/* Relevant combining characters:
+   0x0300, 0x0301, 0x0303, 0x0309, 0x0323. */
+
+/* Composition tables for each of the relevant combining characters. */
+static const struct { unsigned short base; unsigned short composed; } viet_comp_table_data[] = {
+#define viet_comp_table0300_idx 0
+#define viet_comp_table0300_len 31
+  { 0x0041, 0x00C0 },
+  { 0x0045, 0x00C8 },
+  { 0x0049, 0x00CC },
+  { 0x004E, 0x01F8 },
+  { 0x004F, 0x00D2 },
+  { 0x0055, 0x00D9 },
+  { 0x0057, 0x1E80 },
+  { 0x0059, 0x1EF2 },
+  { 0x0061, 0x00E0 },
+  { 0x0065, 0x00E8 },
+  { 0x0069, 0x00EC },
+  { 0x006E, 0x01F9 },
+  { 0x006F, 0x00F2 },
+  { 0x0075, 0x00F9 },
+  { 0x0077, 0x1E81 },
+  { 0x0079, 0x1EF3 },
+  { 0x00A8, 0x1FED },
+  { 0x00C2, 0x1EA6 },
+  { 0x00CA, 0x1EC0 },
+  { 0x00D4, 0x1ED2 },
+  { 0x00DC, 0x01DB },
+  { 0x00E2, 0x1EA7 },
+  { 0x00EA, 0x1EC1 },
+  { 0x00F4, 0x1ED3 },
+  { 0x00FC, 0x01DC },
+  { 0x0102, 0x1EB0 },
+  { 0x0103, 0x1EB1 },
+/*{ 0x0112, 0x1E14 },*/
+/*{ 0x0113, 0x1E15 },*/
+/*{ 0x014C, 0x1E50 },*/
+/*{ 0x014D, 0x1E51 },*/
+  { 0x01A0, 0x1EDC },
+  { 0x01A1, 0x1EDD },
+  { 0x01AF, 0x1EEA },
+  { 0x01B0, 0x1EEB },
+#define viet_comp_table0301_idx (viet_comp_table0300_idx+viet_comp_table0300_len)
+#define viet_comp_table0301_len 64
+  { 0x0041, 0x00C1 },
+  { 0x0043, 0x0106 },
+  { 0x0045, 0x00C9 },
+  { 0x0047, 0x01F4 },
+  { 0x0049, 0x00CD },
+  { 0x004B, 0x1E30 },
+  { 0x004C, 0x0139 },
+  { 0x004D, 0x1E3E },
+  { 0x004E, 0x0143 },
+  { 0x004F, 0x00D3 },
+  { 0x0050, 0x1E54 },
+  { 0x0052, 0x0154 },
+  { 0x0053, 0x015A },
+  { 0x0055, 0x00DA },
+  { 0x0057, 0x1E82 },
+  { 0x0059, 0x00DD },
+  { 0x005A, 0x0179 },
+  { 0x0061, 0x00E1 },
+  { 0x0063, 0x0107 },
+  { 0x0065, 0x00E9 },
+  { 0x0067, 0x01F5 },
+  { 0x0069, 0x00ED },
+  { 0x006B, 0x1E31 },
+  { 0x006C, 0x013A },
+  { 0x006D, 0x1E3F },
+  { 0x006E, 0x0144 },
+  { 0x006F, 0x00F3 },
+  { 0x0070, 0x1E55 },
+  { 0x0072, 0x0155 },
+  { 0x0073, 0x015B },
+  { 0x0075, 0x00FA },
+  { 0x0077, 0x1E83 },
+  { 0x0079, 0x00FD },
+  { 0x007A, 0x017A },
+  { 0x00A5, 0x0385 },
+  { 0x00A8, 0x1FEE },
+  { 0x00C2, 0x1EA4 },
+  { 0x00C5, 0x01FA },
+  { 0x00C6, 0x01FC },
+  { 0x00C7, 0x1E08 },
+  { 0x00CA, 0x1EBE },
+  { 0x00CF, 0x1E2E },
+  { 0x00D4, 0x1ED0 },
+  { 0x00D5, 0x1E4C },
+  { 0x00D8, 0x01FE },
+  { 0x00DC, 0x01D7 },
+  { 0x00E2, 0x1EA5 },
+  { 0x00E5, 0x01FB },
+  { 0x00E6, 0x01FD },
+  { 0x00E7, 0x1E09 },
+  { 0x00EA, 0x1EBF },
+  { 0x00EF, 0x1E2F },
+  { 0x00F4, 0x1ED1 },
+  { 0x00F5, 0x1E4D },
+  { 0x00F8, 0x01FF },
+  { 0x00FC, 0x01D8 },
+  { 0x0102, 0x1EAE },
+  { 0x0103, 0x1EAF },
+/*{ 0x0112, 0x1E16 },*/
+/*{ 0x0113, 0x1E17 },*/
+/*{ 0x014C, 0x1E52 },*/
+/*{ 0x014D, 0x1E53 },*/
+  { 0x0168, 0x1E78 },
+  { 0x0169, 0x1E79 },
+  { 0x01A0, 0x1EDA },
+  { 0x01A1, 0x1EDB },
+  { 0x01AF, 0x1EE8 },
+  { 0x01B0, 0x1EE9 },
+#define viet_comp_table0303_idx (viet_comp_table0301_idx+viet_comp_table0301_len)
+#define viet_comp_table0303_len 34
+  { 0x0041, 0x00C3 },
+  { 0x0045, 0x1EBC },
+  { 0x0049, 0x0128 },
+  { 0x004E, 0x00D1 },
+  { 0x004F, 0x00D5 },
+  { 0x0055, 0x0168 },
+  { 0x0056, 0x1E7C },
+  { 0x0059, 0x1EF8 },
+  { 0x0061, 0x00E3 },
+  { 0x0065, 0x1EBD },
+  { 0x0069, 0x0129 },
+  { 0x006E, 0x00F1 },
+  { 0x006F, 0x00F5 },
+  { 0x0075, 0x0169 },
+  { 0x0076, 0x1E7D },
+  { 0x0079, 0x1EF9 },
+  { 0x00C2, 0x1EAA },
+  { 0x00CA, 0x1EC4 },
+  { 0x00D3, 0x1E4C },
+  { 0x00D4, 0x1ED6 },
+  { 0x00D6, 0x1E4E },
+  { 0x00DA, 0x1E78 },
+  { 0x00E2, 0x1EAB },
+  { 0x00EA, 0x1EC5 },
+  { 0x00F3, 0x1E4D },
+  { 0x00F4, 0x1ED7 },
+  { 0x00F6, 0x1E4F },
+  { 0x00FA, 0x1E79 },
+  { 0x0102, 0x1EB4 },
+  { 0x0103, 0x1EB5 },
+  { 0x01A0, 0x1EE0 },
+  { 0x01A1, 0x1EE1 },
+  { 0x01AF, 0x1EEE },
+  { 0x01B0, 0x1EEF },
+#define viet_comp_table0309_idx (viet_comp_table0303_idx+viet_comp_table0303_len)
+#define viet_comp_table0309_len 24
+  { 0x0041, 0x1EA2 },
+  { 0x0045, 0x1EBA },
+  { 0x0049, 0x1EC8 },
+  { 0x004F, 0x1ECE },
+  { 0x0055, 0x1EE6 },
+  { 0x0059, 0x1EF6 },
+  { 0x0061, 0x1EA3 },
+  { 0x0065, 0x1EBB },
+  { 0x0069, 0x1EC9 },
+  { 0x006F, 0x1ECF },
+  { 0x0075, 0x1EE7 },
+  { 0x0079, 0x1EF7 },
+  { 0x00C2, 0x1EA8 },
+  { 0x00CA, 0x1EC2 },
+  { 0x00D4, 0x1ED4 },
+  { 0x00E2, 0x1EA9 },
+  { 0x00EA, 0x1EC3 },
+  { 0x00F4, 0x1ED5 },
+  { 0x0102, 0x1EB2 },
+  { 0x0103, 0x1EB3 },
+  { 0x01A0, 0x1EDE },
+  { 0x01A1, 0x1EDF },
+  { 0x01AF, 0x1EEC },
+  { 0x01B0, 0x1EED },
+#define viet_comp_table0323_idx (viet_comp_table0309_idx+viet_comp_table0309_len)
+#define viet_comp_table0323_len 50
+  { 0x0041, 0x1EA0 },
+  { 0x0042, 0x1E04 },
+  { 0x0044, 0x1E0C },
+  { 0x0045, 0x1EB8 },
+  { 0x0048, 0x1E24 },
+  { 0x0049, 0x1ECA },
+  { 0x004B, 0x1E32 },
+  { 0x004C, 0x1E36 },
+  { 0x004D, 0x1E42 },
+  { 0x004E, 0x1E46 },
+  { 0x004F, 0x1ECC },
+  { 0x0052, 0x1E5A },
+  { 0x0053, 0x1E62 },
+  { 0x0054, 0x1E6C },
+  { 0x0055, 0x1EE4 },
+  { 0x0056, 0x1E7E },
+  { 0x0057, 0x1E88 },
+  { 0x0059, 0x1EF4 },
+  { 0x005A, 0x1E92 },
+  { 0x0061, 0x1EA1 },
+  { 0x0062, 0x1E05 },
+  { 0x0064, 0x1E0D },
+  { 0x0065, 0x1EB9 },
+  { 0x0068, 0x1E25 },
+  { 0x0069, 0x1ECB },
+  { 0x006B, 0x1E33 },
+  { 0x006C, 0x1E37 },
+  { 0x006D, 0x1E43 },
+  { 0x006E, 0x1E47 },
+  { 0x006F, 0x1ECD },
+  { 0x0072, 0x1E5B },
+  { 0x0073, 0x1E63 },
+  { 0x0074, 0x1E6D },
+  { 0x0075, 0x1EE5 },
+  { 0x0076, 0x1E7F },
+  { 0x0077, 0x1E89 },
+  { 0x0079, 0x1EF5 },
+  { 0x007A, 0x1E93 },
+  { 0x00C2, 0x1EAC },
+  { 0x00CA, 0x1EC6 },
+  { 0x00D4, 0x1ED8 },
+  { 0x00E2, 0x1EAD },
+  { 0x00EA, 0x1EC7 },
+  { 0x00F4, 0x1ED9 },
+  { 0x0102, 0x1EB6 },
+  { 0x0103, 0x1EB7 },
+  { 0x01A0, 0x1EE2 },
+  { 0x01A1, 0x1EE3 },
+  { 0x01AF, 0x1EF0 },
+  { 0x01B0, 0x1EF1 },
+};
+static const struct { unsigned int len; unsigned int idx; } viet_comp_table[] = {
+  { viet_comp_table0300_len, viet_comp_table0300_idx },
+  { viet_comp_table0301_len, viet_comp_table0301_idx },
+  { viet_comp_table0303_len, viet_comp_table0303_idx },
+  { viet_comp_table0309_len, viet_comp_table0309_idx },
+  { viet_comp_table0323_len, viet_comp_table0323_idx },
+};
+
+/* Decomposition table for the relevant Unicode characters. */
+struct viet_decomp { unsigned short composed; unsigned int base : 12; int comb1 : 4; };
+static const struct viet_decomp viet_decomp_table[] = {
+  { 0x00B4, 0x0020, 1 }, /* compatibility decomposition - for TCVN only */
+  { 0x00C0, 0x0041, 0 },
+  { 0x00C1, 0x0041, 1 },
+  { 0x00C3, 0x0041, 2 },
+  { 0x00C8, 0x0045, 0 },
+  { 0x00C9, 0x0045, 1 },
+  { 0x00CC, 0x0049, 0 },
+  { 0x00CD, 0x0049, 1 },
+  { 0x00D1, 0x004E, 2 },
+  { 0x00D2, 0x004F, 0 },
+  { 0x00D3, 0x004F, 1 },
+  { 0x00D5, 0x004F, 2 },
+  { 0x00D9, 0x0055, 0 },
+  { 0x00DA, 0x0055, 1 },
+  { 0x00DD, 0x0059, 1 },
+  { 0x00E0, 0x0061, 0 },
+  { 0x00E1, 0x0061, 1 },
+  { 0x00E3, 0x0061, 2 },
+  { 0x00E8, 0x0065, 0 },
+  { 0x00E9, 0x0065, 1 },
+  { 0x00EC, 0x0069, 0 },
+  { 0x00ED, 0x0069, 1 },
+  { 0x00F1, 0x006E, 2 },
+  { 0x00F2, 0x006F, 0 },
+  { 0x00F3, 0x006F, 1 },
+  { 0x00F5, 0x006F, 2 },
+  { 0x00F9, 0x0075, 0 },
+  { 0x00FA, 0x0075, 1 },
+  { 0x00FD, 0x0079, 1 },
+  { 0x0106, 0x0043, 1 },
+  { 0x0107, 0x0063, 1 },
+  { 0x0128, 0x0049, 2 },
+  { 0x0129, 0x0069, 2 },
+  { 0x0139, 0x004C, 1 },
+  { 0x013A, 0x006C, 1 },
+  { 0x0143, 0x004E, 1 },
+  { 0x0144, 0x006E, 1 },
+  { 0x0154, 0x0052, 1 },
+  { 0x0155, 0x0072, 1 },
+  { 0x015A, 0x0053, 1 },
+  { 0x015B, 0x0073, 1 },
+  { 0x0168, 0x0055, 2 },
+  { 0x0169, 0x0075, 2 },
+  { 0x0179, 0x005A, 1 },
+  { 0x017A, 0x007A, 1 },
+  { 0x01D7, 0x00DC, 1 },
+  { 0x01D8, 0x00FC, 1 },
+  { 0x01DB, 0x00DC, 0 },
+  { 0x01DC, 0x00FC, 0 },
+  { 0x01F4, 0x0047, 1 },
+  { 0x01F5, 0x0067, 1 },
+  { 0x01F8, 0x004E, 0 },
+  { 0x01F9, 0x006E, 0 },
+  { 0x01FA, 0x00C5, 1 },
+  { 0x01FB, 0x00E5, 1 },
+  { 0x01FC, 0x00C6, 1 },
+  { 0x01FD, 0x00E6, 1 },
+  { 0x01FE, 0x00D8, 1 },
+  { 0x01FF, 0x00F8, 1 },
+  { 0x02DC, 0x0020, 2 }, /* compatibility decomposition - for TCVN only */
+  { 0x0385, 0x00A5, 1 },
+  { 0x1E04, 0x0042, 4 },
+  { 0x1E05, 0x0062, 4 },
+  { 0x1E08, 0x00C7, 1 },
+  { 0x1E09, 0x00E7, 1 },
+  { 0x1E0C, 0x0044, 4 },
+  { 0x1E0D, 0x0064, 4 },
+  { 0x1E24, 0x0048, 4 },
+  { 0x1E25, 0x0068, 4 },
+  { 0x1E2E, 0x00CF, 1 },
+  { 0x1E2F, 0x00EF, 1 },
+  { 0x1E30, 0x004B, 1 },
+  { 0x1E31, 0x006B, 1 },
+  { 0x1E32, 0x004B, 4 },
+  { 0x1E33, 0x006B, 4 },
+  { 0x1E36, 0x004C, 4 },
+  { 0x1E37, 0x006C, 4 },
+  { 0x1E3E, 0x004D, 1 },
+  { 0x1E3F, 0x006D, 1 },
+  { 0x1E42, 0x004D, 4 },
+  { 0x1E43, 0x006D, 4 },
+  { 0x1E46, 0x004E, 4 },
+  { 0x1E47, 0x006E, 4 },
+  { 0x1E4C, 0x00D3, 2 }, /*{ 0x1E4C, 0x00D5, 1 },*/ /*{ 0x1E4C, 0x004F, 1, 2 },*/
+  { 0x1E4D, 0x00F3, 2 }, /*{ 0x1E4D, 0x00F5, 1 },*/ /*{ 0x1E4D, 0x006F, 1, 2 },*/
+  { 0x1E4E, 0x00D6, 2 },
+  { 0x1E4F, 0x00F6, 2 },
+  { 0x1E54, 0x0050, 1 },
+  { 0x1E55, 0x0070, 1 },
+  { 0x1E5A, 0x0052, 4 },
+  { 0x1E5B, 0x0072, 4 },
+  { 0x1E62, 0x0053, 4 },
+  { 0x1E63, 0x0073, 4 },
+  { 0x1E6C, 0x0054, 4 },
+  { 0x1E6D, 0x0074, 4 },
+  { 0x1E78, 0x00DA, 2 }, /*{ 0x1E78, 0x0168, 1 },*/ /*{ 0x1E78, 0x0055, 1, 2 },*/
+  { 0x1E79, 0x00FA, 2 }, /*{ 0x1E79, 0x0169, 1 },*/ /*{ 0x1E79, 0x0075, 1, 2 },*/
+  { 0x1E7C, 0x0056, 2 },
+  { 0x1E7D, 0x0076, 2 },
+  { 0x1E7E, 0x0056, 4 },
+  { 0x1E7F, 0x0076, 4 },
+  { 0x1E80, 0x0057, 0 },
+  { 0x1E81, 0x0077, 0 },
+  { 0x1E82, 0x0057, 1 },
+  { 0x1E83, 0x0077, 1 },
+  { 0x1E88, 0x0057, 4 },
+  { 0x1E89, 0x0077, 4 },
+  { 0x1E92, 0x005A, 4 },
+  { 0x1E93, 0x007A, 4 },
+  { 0x1EA0, 0x0041, 4 },
+  { 0x1EA1, 0x0061, 4 },
+  { 0x1EA2, 0x0041, 3 },
+  { 0x1EA3, 0x0061, 3 },
+  { 0x1EA4, 0x00C2, 1 },
+  { 0x1EA5, 0x00E2, 1 },
+  { 0x1EA6, 0x00C2, 0 },
+  { 0x1EA7, 0x00E2, 0 },
+  { 0x1EA8, 0x00C2, 3 },
+  { 0x1EA9, 0x00E2, 3 },
+  { 0x1EAA, 0x00C2, 2 },
+  { 0x1EAB, 0x00E2, 2 },
+  { 0x1EAC, 0x00C2, 4 },
+  { 0x1EAD, 0x00E2, 4 },
+  { 0x1EAE, 0x0102, 1 },
+  { 0x1EAF, 0x0103, 1 },
+  { 0x1EB0, 0x0102, 0 },
+  { 0x1EB1, 0x0103, 0 },
+  { 0x1EB2, 0x0102, 3 },
+  { 0x1EB3, 0x0103, 3 },
+  { 0x1EB4, 0x0102, 2 },
+  { 0x1EB5, 0x0103, 2 },
+  { 0x1EB6, 0x0102, 4 },
+  { 0x1EB7, 0x0103, 4 },
+  { 0x1EB8, 0x0045, 4 },
+  { 0x1EB9, 0x0065, 4 },
+  { 0x1EBA, 0x0045, 3 },
+  { 0x1EBB, 0x0065, 3 },
+  { 0x1EBC, 0x0045, 2 },
+  { 0x1EBD, 0x0065, 2 },
+  { 0x1EBE, 0x00CA, 1 },
+  { 0x1EBF, 0x00EA, 1 },
+  { 0x1EC0, 0x00CA, 0 },
+  { 0x1EC1, 0x00EA, 0 },
+  { 0x1EC2, 0x00CA, 3 },
+  { 0x1EC3, 0x00EA, 3 },
+  { 0x1EC4, 0x00CA, 2 },
+  { 0x1EC5, 0x00EA, 2 },
+  { 0x1EC6, 0x00CA, 4 },
+  { 0x1EC7, 0x00EA, 4 },
+  { 0x1EC8, 0x0049, 3 },
+  { 0x1EC9, 0x0069, 3 },
+  { 0x1ECA, 0x0049, 4 },
+  { 0x1ECB, 0x0069, 4 },
+  { 0x1ECC, 0x004F, 4 },
+  { 0x1ECD, 0x006F, 4 },
+  { 0x1ECE, 0x004F, 3 },
+  { 0x1ECF, 0x006F, 3 },
+  { 0x1ED0, 0x00D4, 1 },
+  { 0x1ED1, 0x00F4, 1 },
+  { 0x1ED2, 0x00D4, 0 },
+  { 0x1ED3, 0x00F4, 0 },
+  { 0x1ED4, 0x00D4, 3 },
+  { 0x1ED5, 0x00F4, 3 },
+  { 0x1ED6, 0x00D4, 2 },
+  { 0x1ED7, 0x00F4, 2 },
+  { 0x1ED8, 0x00D4, 4 },
+  { 0x1ED9, 0x00F4, 4 },
+  { 0x1EDA, 0x01A0, 1 },
+  { 0x1EDB, 0x01A1, 1 },
+  { 0x1EDC, 0x01A0, 0 },
+  { 0x1EDD, 0x01A1, 0 },
+  { 0x1EDE, 0x01A0, 3 },
+  { 0x1EDF, 0x01A1, 3 },
+  { 0x1EE0, 0x01A0, 2 },
+  { 0x1EE1, 0x01A1, 2 },
+  { 0x1EE2, 0x01A0, 4 },
+  { 0x1EE3, 0x01A1, 4 },
+  { 0x1EE4, 0x0055, 4 },
+  { 0x1EE5, 0x0075, 4 },
+  { 0x1EE6, 0x0055, 3 },
+  { 0x1EE7, 0x0075, 3 },
+  { 0x1EE8, 0x01AF, 1 },
+  { 0x1EE9, 0x01B0, 1 },
+  { 0x1EEA, 0x01AF, 0 },
+  { 0x1EEB, 0x01B0, 0 },
+  { 0x1EEC, 0x01AF, 3 },
+  { 0x1EED, 0x01B0, 3 },
+  { 0x1EEE, 0x01AF, 2 },
+  { 0x1EEF, 0x01B0, 2 },
+  { 0x1EF0, 0x01AF, 4 },
+  { 0x1EF1, 0x01B0, 4 },
+  { 0x1EF2, 0x0059, 0 },
+  { 0x1EF3, 0x0079, 0 },
+  { 0x1EF4, 0x0059, 4 },
+  { 0x1EF5, 0x0079, 4 },
+  { 0x1EF6, 0x0059, 3 },
+  { 0x1EF7, 0x0079, 3 },
+  { 0x1EF8, 0x0059, 2 },
+  { 0x1EF9, 0x0079, 2 },
+  { 0x1FED, 0x00A8, 0 },
+  { 0x1FEE, 0x00A8, 1 },
+};
+
+#endif /* _VIETCOMB_H */
diff --git a/graf2d/win32gdk/gdk/src/iconv/viscii.h b/graf2d/win32gdk/gdk/src/iconv/viscii.h
new file mode 100644
index 00000000000..04e68fa8153
--- /dev/null
+++ b/graf2d/win32gdk/gdk/src/iconv/viscii.h
@@ -0,0 +1,141 @@
+/*
+ * Copyright (C) 1999-2001 Free Software Foundation, Inc.
+ * This file is part of the GNU LIBICONV Library.
+ *
+ * The GNU LIBICONV Library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * The GNU LIBICONV Library is distributed in the hope that it will be
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
+ * If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * VISCII1.1-1
+ */
+
+/* Specification: RFC 1456 */
+
+static const unsigned short viscii_2uni_1[32] = {
+  /* 0x00 */
+  0x0000, 0x0001, 0x1eb2, 0x0003, 0x0004, 0x1eb4, 0x1eaa, 0x0007,
+  0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+  /* 0x10 */
+  0x0010, 0x0011, 0x0012, 0x0013, 0x1ef6, 0x0015, 0x0016, 0x0017,
+  0x0018, 0x1ef8, 0x001a, 0x001b, 0x001c, 0x001d, 0x1ef4, 0x001f,
+};
+static const unsigned short viscii_2uni_2[128] = {
+  /* 0x80 */
+  0x1ea0, 0x1eae, 0x1eb0, 0x1eb6, 0x1ea4, 0x1ea6, 0x1ea8, 0x1eac,
+  0x1ebc, 0x1eb8, 0x1ebe, 0x1ec0, 0x1ec2, 0x1ec4, 0x1ec6, 0x1ed0,
+  /* 0x90 */
+  0x1ed2, 0x1ed4, 0x1ed6, 0x1ed8, 0x1ee2, 0x1eda, 0x1edc, 0x1ede,
+  0x1eca, 0x1ece, 0x1ecc, 0x1ec8, 0x1ee6, 0x0168, 0x1ee4, 0x1ef2,
+  /* 0xa0 */
+  0x00d5, 0x1eaf, 0x1eb1, 0x1eb7, 0x1ea5, 0x1ea7, 0x1ea9, 0x1ead,
+  0x1ebd, 0x1eb9, 0x1ebf, 0x1ec1, 0x1ec3, 0x1ec5, 0x1ec7, 0x1ed1,
+  /* 0xb0 */
+  0x1ed3, 0x1ed5, 0x1ed7, 0x1ee0, 0x01a0, 0x1ed9, 0x1edd, 0x1edf,
+  0x1ecb, 0x1ef0, 0x1ee8, 0x1eea, 0x1eec, 0x01a1, 0x1edb, 0x01af,
+  /* 0xc0 */
+  0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x1ea2, 0x0102, 0x1eb3, 0x1eb5,
+  0x00c8, 0x00c9, 0x00ca, 0x1eba, 0x00cc, 0x00cd, 0x0128, 0x1ef3,
+  /* 0xd0 */
+  0x0110, 0x1ee9, 0x00d2, 0x00d3, 0x00d4, 0x1ea1, 0x1ef7, 0x1eeb,
+  0x1eed, 0x00d9, 0x00da, 0x1ef9, 0x1ef5, 0x00dd, 0x1ee1, 0x01b0,
+  /* 0xe0 */
+  0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x1ea3, 0x0103, 0x1eef, 0x1eab,
+  0x00e8, 0x00e9, 0x00ea, 0x1ebb, 0x00ec, 0x00ed, 0x0129, 0x1ec9,
+  /* 0xf0 */
+  0x0111, 0x1ef1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x1ecf, 0x1ecd,
+  0x1ee5, 0x00f9, 0x00fa, 0x0169, 0x1ee7, 0x00fd, 0x1ee3, 0x1eee,
+};
+
+static int
+viscii_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
+{
+  unsigned char c = *s;
+  if (c < 0x20)
+    *pwc = (ucs4_t) viscii_2uni_1[c];
+  else if (c < 0x80)
+    *pwc = (ucs4_t) c;
+  else
+    *pwc = (ucs4_t) viscii_2uni_2[c-0x80];
+  return 1;
+}
+
+static const unsigned char viscii_page00[64+184] = {
+  0xc0, 0xc1, 0xc2, 0xc3, 0x00, 0x00, 0x00, 0x00, /* 0xc0-0xc7 */
+  0xc8, 0xc9, 0xca, 0x00, 0xcc, 0xcd, 0x00, 0x00, /* 0xc8-0xcf */
+  0x00, 0x00, 0xd2, 0xd3, 0xd4, 0xa0, 0x00, 0x00, /* 0xd0-0xd7 */
+  0x00, 0xd9, 0xda, 0x00, 0x00, 0xdd, 0x00, 0x00, /* 0xd8-0xdf */
+  0xe0, 0xe1, 0xe2, 0xe3, 0x00, 0x00, 0x00, 0x00, /* 0xe0-0xe7 */
+  0xe8, 0xe9, 0xea, 0x00, 0xec, 0xed, 0x00, 0x00, /* 0xe8-0xef */
+  0x00, 0x00, 0xf2, 0xf3, 0xf4, 0xf5, 0x00, 0x00, /* 0xf0-0xf7 */
+  0x00, 0xf9, 0xfa, 0x00, 0x00, 0xfd, 0x00, 0x00, /* 0xf8-0xff */
+  /* 0x0100 */
+  0x00, 0x00, 0xc5, 0xe5, 0x00, 0x00, 0x00, 0x00, /* 0x00-0x07 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08-0x0f */
+  0xd0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10-0x17 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18-0x1f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x20-0x27 */
+  0xce, 0xee, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x28-0x2f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30-0x37 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x38-0x3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x40-0x47 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x48-0x4f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x50-0x57 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x58-0x5f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x60-0x67 */
+  0x9d, 0xfb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x68-0x6f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x70-0x77 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x78-0x7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x80-0x87 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x88-0x8f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x90-0x97 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x98-0x9f */
+  0xb4, 0xbd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa0-0xa7 */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbf, /* 0xa8-0xaf */
+  0xdf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xb0-0xb7 */
+};
+static const unsigned char viscii_page1e[96] = {
+  0x80, 0xd5, 0xc4, 0xe4, 0x84, 0xa4, 0x85, 0xa5, /* 0xa0-0xa7 */
+  0x86, 0xa6, 0x06, 0xe7, 0x87, 0xa7, 0x81, 0xa1, /* 0xa8-0xaf */
+  0x82, 0xa2, 0x02, 0xc6, 0x05, 0xc7, 0x83, 0xa3, /* 0xb0-0xb7 */
+  0x89, 0xa9, 0xcb, 0xeb, 0x88, 0xa8, 0x8a, 0xaa, /* 0xb8-0xbf */
+  0x8b, 0xab, 0x8c, 0xac, 0x8d, 0xad, 0x8e, 0xae, /* 0xc0-0xc7 */
+  0x9b, 0xef, 0x98, 0xb8, 0x9a, 0xf7, 0x99, 0xf6, /* 0xc8-0xcf */
+  0x8f, 0xaf, 0x90, 0xb0, 0x91, 0xb1, 0x92, 0xb2, /* 0xd0-0xd7 */
+  0x93, 0xb5, 0x95, 0xbe, 0x96, 0xb6, 0x97, 0xb7, /* 0xd8-0xdf */
+  0xb3, 0xde, 0x94, 0xfe, 0x9e, 0xf8, 0x9c, 0xfc, /* 0xe0-0xe7 */
+  0xba, 0xd1, 0xbb, 0xd7, 0xbc, 0xd8, 0xff, 0xe6, /* 0xe8-0xef */
+  0xb9, 0xf1, 0x9f, 0xcf, 0x1e, 0xdc, 0x14, 0xd6, /* 0xf0-0xf7 */
+  0x19, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xf8-0xff */
+};
+
+static int
+viscii_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n)
+{
+  unsigned char c = 0;
+  if (wc < 0x0080 && (wc >= 0x0020 || (0x42100064 & (1 << wc)) == 0)) {
+    *r = wc;
+    return 1;
+  }
+  else if (wc >= 0x00c0 && wc < 0x01b8)
+    c = viscii_page00[wc-0x00c0];
+  else if (wc >= 0x1ea0 && wc < 0x1f00)
+    c = viscii_page1e[wc-0x1ea0];
+  if (c != 0) {
+    *r = c;
+    return 1;
+  }
+  return RET_ILUNI;
+}
-- 
GitLab